diff --git a/.dockerignore b/.dockerignore new file mode 100644 index 000000000..e0a57b287 --- /dev/null +++ b/.dockerignore @@ -0,0 +1,2 @@ +**/node_modules +**/dist diff --git a/.github/workflows/aws_dev.deploy.yaml b/.github/workflows/aws_dev.deploy.yaml new file mode 100644 index 000000000..310b12755 --- /dev/null +++ b/.github/workflows/aws_dev.deploy.yaml @@ -0,0 +1,53 @@ +name: AWS Dev Deployment + +on: + push: + branches: + - '**' + workflow_dispatch: + +permissions: + id-token: write + contents: read + +jobs: + build-and-push: + runs-on: ubuntu-latest + steps: + - name: Checkout Repo + uses: actions/checkout@v4 + + - name: Set IMAGE_TAG + run: | + if [[ "${{ github.ref_name }}" == "test" ]]; then + echo "IMAGE_TAG=test" >> $GITHUB_ENV + else + echo "IMAGE_TAG=dev" >> $GITHUB_ENV + fi + + - name: AWS config + uses: aws-actions/configure-aws-credentials@v3 + with: + role-to-assume: ${{ secrets.AWS_DEV_ROLE }} + role-session-name: GithubNGAGeointSession + aws-region: ${{ secrets.AWS_DEV_REGION }} + + - name: AWS ECR Login + id: ecr-login + uses: aws-actions/amazon-ecr-login@v2 + + - name: Build Docker image + env: + REGISTRY: ${{ steps.ecr-login.outputs.registry }} + REPOSITORY: "/mage/server" + IMAGE_TAG: ${{ env.IMAGE_TAG }} + run: | + docker build -t $REGISTRY$REPOSITORY:$IMAGE_TAG . + + - name: Push Image and ReDeploy ECS Service + if: github.ref =='refs/heads/test' || github.ref =='refs/heads/develop' + env: + SERVICE: "mage${{ env.IMAGE_TAG }}" + run: | + docker push $REGISTRY$REPOSITORY:$IMAGE_TAG + aws ecs update-service --cluster magedev --service $SERVICE --force-new-deployment \ No newline at end of file diff --git a/.github/workflows/buildAndTest.yml b/.github/workflows/buildAndTest.yml deleted file mode 100644 index 071e9d07e..000000000 --- a/.github/workflows/buildAndTest.yml +++ /dev/null @@ -1,53 +0,0 @@ -name: Build and Run Tests - -on: - push: - branches-ignore: - - 'no-ci-*' - - 'wip-*' - - 'x-*' - -jobs: - build: - - runs-on: ubuntu-latest - - strategy: - matrix: - node-version: [12.x, 14.x] - - steps: - - uses: actions/checkout@v1 - - name: Use Node.js ${{ matrix.node-version }} - uses: actions/setup-node@v1 - with: - node-version: ${{ matrix.node-version }} - - name: Install dev tools - run: | - sudo apt-get install build-essential libcairo2-dev libpango1.0-dev libjpeg-dev libgif-dev librsvg2-dev - - name: Server install, build, and test - run: | - npm install - npm run build --if-present - npm test - env: - CI: true - - name: Web install, build, and test - run: | - cd web-app - npm install - npm run build --if-present - npm run test-headless - env: - CI: true - NODE_OPTIONS: "--max_old_space_size=4096" - - name: Dump job context - env: - JOB_CONTEXT: ${{ toJson(matrix) }} - run: echo "$JOB_CONTEXT" - - name: Coveralls - if: matrix.node-version == '14.x' - uses: coverallsapp/github-action@master - with: - github-token: ${{ secrets.GITHUB_TOKEN }} - path-to-lcov: ./docs/coverage/lcov.info \ No newline at end of file diff --git a/.github/workflows/build_test.arcgis.service.yaml b/.github/workflows/build_test.arcgis.service.yaml new file mode 100644 index 000000000..66b4925c6 --- /dev/null +++ b/.github/workflows/build_test.arcgis.service.yaml @@ -0,0 +1,75 @@ +name: test and package arcgis service plugin + +on: + workflow_dispatch: + workflow_call: + pull_request: + paths: + - .github/workflows/build_test.arcgis.service.yaml + - .github/workflows/config.yaml + - plugins/arcgis/service/** + +jobs: + config: + uses: ./.github/workflows/config.yaml + + test: + name: test plugin arcgis.service + needs: [config] + runs-on: ubuntu-latest + strategy: + matrix: + node: ${{ fromJSON(needs.config.outputs.node_versions-all-json) }} + steps: + - name: checkout + uses: actions/checkout@v3 + - name: setup node + uses: actions/setup-node@v3 + with: + node-version: ${{ matrix.node }} + cache: npm + cache-dependency-path: | + plugins/arcgis/service/package-lock.json + - name: build mage service + run: | + cd service + npm ci + npm run build + - name: test with node ${{ matrix.node }} + run: | + cd plugins/arcgis/service + npm ci --force + npm test + + package: + name: package plugin arcgis.service + needs: [config, test] + runs-on: ubuntu-latest + steps: + - name: checkout + uses: actions/checkout@v3 + - name: setup node + uses: actions/setup-node@v3 + with: + node-version: ${{ needs.config.outputs.node_versions-lts }} + cache: npm + cache-dependency-path: | + plugins/arcgis/service/package-lock.json + - name: build mage service + run: | + cd service + npm ci + npm run build + - name: build service for plugin + run: | + cd plugins/arcgis/service + npm ci --force + npm run build + - name: package for plugin + run: npm pack ./plugins/arcgis/service + - name: upload package + uses: actions/upload-artifact@v4 + with: + name: arcgis.service-artifacts + path: | + ngageoint-mage.*.tgz diff --git a/.github/workflows/build_test.arcgis.web-app.yaml b/.github/workflows/build_test.arcgis.web-app.yaml new file mode 100644 index 000000000..d4d02ad02 --- /dev/null +++ b/.github/workflows/build_test.arcgis.web-app.yaml @@ -0,0 +1,48 @@ +name: test and package arcgis web plugin + +on: + workflow_dispatch: + workflow_call: + pull_request: + paths: + - .github/workflows/build_test.arcgis.web-app.yaml + - .github/workflows/config.yaml + - plugins/arcgis/web-app/** + +jobs: + config: + uses: ./.github/workflows/config.yaml + + build: + name: build plugin mage.arcgis.web-app + needs: config + runs-on: ubuntu-latest + steps: + - name: checkout + uses: actions/checkout@v3 + - name: setup node + uses: actions/setup-node@v3 + with: + node-version: ${{ needs.config.outputs.node_versions-lts }} + cache: npm + cache-dependency-path: plugins/arcgis/web-app/package-lock.json + - name: build + run: | + cd plugins/arcgis/web-app + npm ci + npm run build + env: + NODE_OPTIONS: "--max_old_space_size=4096" + - name: test + run: | + cd plugins/arcgis/web-app + npm run test-headless + - name: pack + run: | + npm pack ./plugins/arcgis/web-app/dist/main + - name: upload packages + uses: actions/upload-artifact@v4 + with: + name: arcgis.web-app-artifacts + path: | + ngageoint-mage.arcgis.web-app-*.tgz diff --git a/.github/workflows/build_test.image.service.yaml b/.github/workflows/build_test.image.service.yaml new file mode 100644 index 000000000..687d49b77 --- /dev/null +++ b/.github/workflows/build_test.image.service.yaml @@ -0,0 +1,79 @@ +name: test and package image service plugin + +on: + workflow_dispatch: + workflow_call: + pull_request: + paths: + - .github/workflows/build_test.image.service.yaml + - .github/workflows/config.yaml + - plugins/image/service/** + +jobs: + config: + uses: ./.github/workflows/config.yaml + + test: + name: test plugin image.service + needs: [config] + runs-on: ubuntu-latest + strategy: + matrix: + node: ${{ fromJSON(needs.config.outputs.node_versions-all-json) }} + steps: + - name: checkout + uses: actions/checkout@v3 + - name: setup node + uses: actions/setup-node@v3 + with: + node-version: ${{ matrix.node }} + cache: npm + cache-dependency-path: | + plugins/image/service/package-lock.json + - name: build mage service + run: | + cd service + npm ci --force + npm run build + - name: test with node ${{ matrix.node }} + run: | + cd plugins/image/service + npm ci --force + npm install --os=linux --cpu=x64 sharp + rm -rf node_modules/mongoose + npm test + + package: + name: package plugin image.service + needs: [config, test] + runs-on: ubuntu-latest + steps: + - name: checkout + uses: actions/checkout@v3 + - name: setup node + uses: actions/setup-node@v3 + with: + node-version: ${{ needs.config.outputs.node_versions-lts }} + cache: npm + cache-dependency-path: | + plugins/image/service/package-lock.json + - name: build mage service + run: | + cd service + npm ci + npm run build + - name: build image service + run: | + cd plugins/image/service + npm ci --force + npm install --os=linux --cpu=x64 sharp + rm -rf node_modules/mongoose + npm run build + - name: pack + run: npm pack ./plugins/image/service + - name: upload package + uses: actions/upload-artifact@v4 + with: + name: image.service-artifacts + path: | + ngageoint-mage.*.tgz diff --git a/.github/workflows/build_test.nga-msi.yaml b/.github/workflows/build_test.nga-msi.yaml new file mode 100644 index 000000000..ee6c6e3cc --- /dev/null +++ b/.github/workflows/build_test.nga-msi.yaml @@ -0,0 +1,75 @@ +name: test and package nga-msi plugin + +on: + workflow_dispatch: + workflow_call: + pull_request: + paths: + - .github/workflows/build_test.nga-msi.yaml + - .github/workflows/config.yaml + - plugins/nga-msi/** + +jobs: + config: + uses: ./.github/workflows/config.yaml + + test: + name: test plugin nga-msi + needs: [config] + runs-on: ubuntu-latest + strategy: + matrix: + node: ${{ fromJSON(needs.config.outputs.node_versions-all-json) }} + steps: + - name: checkout + uses: actions/checkout@v3 + - name: setup node + uses: actions/setup-node@v3 + with: + node-version: ${{ matrix.node }} + cache: npm + cache-dependency-path: | + plugins/nga-msi/package-lock.json + - name: build mage service + run: | + cd service + npm ci + npm run build + - name: test with node ${{ matrix.node }} + run: | + cd plugins/nga-msi + npm ci --force + npm test + + package: + name: package plugin nga-msi + needs: [config, test] + runs-on: ubuntu-latest + steps: + - name: checkout + uses: actions/checkout@v3 + - name: setup node + uses: actions/setup-node@v3 + with: + node-version: ${{ needs.config.outputs.node_versions-lts }} + cache: npm + cache-dependency-path: | + plugins/nga-msi/package-lock.json + - name: build mage service + run: | + cd service + npm ci + npm run build + - name: build + run: | + cd plugins/nga-msi + npm ci --force + npm run build + - name: pack + run: npm pack ./plugins/nga-msi + - name: upload package + uses: actions/upload-artifact@v4 + with: + name: nga-msi-artifacts + path: | + ngageoint-mage.*.tgz diff --git a/.github/workflows/build_test.service.yaml b/.github/workflows/build_test.service.yaml index 01fd330fc..4b1d53c04 100644 --- a/.github/workflows/build_test.service.yaml +++ b/.github/workflows/build_test.service.yaml @@ -3,12 +3,11 @@ name: build and test service on: workflow_dispatch: workflow_call: - push: + pull_request: paths: - - service/** - - plugins/** - .github/workflows/build_test.service.yaml - .github/workflows/config.yaml + - service/** jobs: config: @@ -16,7 +15,7 @@ jobs: build: name: build mage service needs: config - runs-on: ubuntu-latest + runs-on: ubuntu-22.04 steps: - name: install system libs run: | @@ -26,46 +25,30 @@ jobs: - name: setup node uses: actions/setup-node@v3 with: - node-version: ${{ needs.config.outputs.node_versions-latest }} + node-version: ${{ needs.config.outputs.node_versions-lts }} cache: npm - cache-dependency-path: | - service/npm-shrinkwrap.json - plugins/nga-msi/package-lock.json - plugins/image/service/package-lock.json - - name: build service + cache-dependency-path: service/npm-shrinkwrap.json + - name: build run: | cd service npm ci - npm run build - - name: pack service - run: npm pack ./service - - name: build plugin nga-msi + - name: run tests run: | - cd plugins/nga-msi - npm ci - npm run build - npm test - - name: pack nga-msi - run: npm pack ./plugins/nga-msi - - name: build plugin image.service - run: | - cd plugins/image/service - npm ci - npm run build + cd service npm test - - name: pack plugin image.service - run: npm pack ./plugins/image/service - - name: upload packages - uses: actions/upload-artifact@v3 + - name: package + run: npm pack ./service + - name: upload package + uses: actions/upload-artifact@v4 with: - name: mage_service_packages + name: mage.service-artifacts path: | - ngageoint-mage.*.tgz + ngageoint-mage.service-*.tgz test: name: test mage service - needs: [ config, build ] - runs-on: ubuntu-latest + needs: [config, build] + runs-on: ubuntu-22.04 strategy: matrix: node: ${{ fromJSON(needs.config.outputs.node_versions-all-json) }} @@ -81,18 +64,19 @@ jobs: service/npm-shrinkwrap.json - name: install service dependencies run: | - npm ci --prefix service + cd service + npm ci - name: download service package - uses: actions/download-artifact@v3 + uses: actions/download-artifact@v4 with: - name: mage_service_packages + name: mage.service-artifacts - name: extract service lib run: | tar xzf $(ls -1 ngageoint-mage.service-*.tgz) package/lib - mv package/lib ./service + mv package/lib ./service/ rmdir package - name: test service with node ${{ matrix.node }} run: | cd service npm run ci:test - # TODO: restore coveralls test coverage report - see buildAndTest.yml \ No newline at end of file + # TODO: restore coveralls test coverage report - see buildAndTest.yml diff --git a/.github/workflows/build_test.sftp.service.yaml b/.github/workflows/build_test.sftp.service.yaml new file mode 100644 index 000000000..7b91eff7d --- /dev/null +++ b/.github/workflows/build_test.sftp.service.yaml @@ -0,0 +1,68 @@ +name: test and package sftp service plugin + +on: + workflow_dispatch: + workflow_call: + push: + paths: + - .github/workflows/build_test.sftp.service.yaml + - .github/workflows/config.yaml + - plugins/sftp/service/** + +jobs: + + config: + uses: ./.github/workflows/config.yaml + + test: + name: test plugin sftp.service + needs: [ config ] + runs-on: ubuntu-latest + strategy: + matrix: + node: ${{ fromJSON(needs.config.outputs.node_versions-all-json) }} + steps: + - name: checkout + uses: actions/checkout@v4 + - name: setup node + uses: actions/setup-node@v4 + with: + node-version: ${{ matrix.node }} + cache: npm + cache-dependency-path: | + plugins/sftp/service/package-lock.json + - name: test with node ${{ matrix.node }} + run: | + cd plugins/sftp/service + npm ci --force + rm -rf node_modules/@ngageoint/mage.service/node_modules/mongoose + npm test + + package: + name: package plugin sftp.service + needs: [ config, test ] + runs-on: ubuntu-latest + steps: + - name: checkout + uses: actions/checkout@v4 + - name: setup node + uses: actions/setup-node@v4 + with: + node-version: ${{ needs.config.outputs.node_versions-lts }} + cache: npm + cache-dependency-path: | + plugins/sftp/service/package-lock.json + - name: build + run: | + cd plugins/sftp/service + npm ci --force + rm -rf node_modules/@ngageoint/mage.service/node_modules/mongoose + npm run build + - name: pack + run: npm pack ./plugins/sftp/service + - name: upload package + uses: actions/upload-artifact@v4 + with: + name: sftp.service-artifacts + path: | + ngageoint-mage.*.tgz diff --git a/.github/workflows/build_test.sftp.web-app.yaml b/.github/workflows/build_test.sftp.web-app.yaml new file mode 100644 index 000000000..afe91cb8e --- /dev/null +++ b/.github/workflows/build_test.sftp.web-app.yaml @@ -0,0 +1,51 @@ +name: test and package sftp web plugin + +on: + workflow_dispatch: + workflow_call: + push: + paths: + - .github/workflows/build_test.sftp.web.yaml + - .github/workflows/config.yaml + - plugins/sftp/web/** + +jobs: + + config: + uses: ./.github/workflows/config.yaml + + build: + name: build plugin mage.sftp.web + needs: config + runs-on: ubuntu-latest + steps: + - name: checkout + uses: actions/checkout@v4 + - name: setup node + uses: actions/setup-node@v4 + with: + node-version: ${{ needs.config.outputs.node_versions-lts }} + cache: npm + cache-dependency-path: plugins/sftp/web/package-lock.json + - name: build + run: | + cd plugins/sftp/web + npm ci + npm run build + env: + NODE_OPTIONS: "--max_old_space_size=4096" + # Tests for the web app are currently just generic spec files generated from the angular cli. + # need to revisit this after we can write some practical tests. + # - name: test + # run: | + # cd plugins/sftp/web + # npm run test-headless + - name: pack + run: | + npm pack ./plugins/sftp/web/dist/main + - name: upload packages + uses: actions/upload-artifact@v4 + with: + name: sftp.web-artifacts + path: | + ngageoint-mage.sftp.web-*.tgz \ No newline at end of file diff --git a/.github/workflows/build_test.web-app.yaml b/.github/workflows/build_test.web-app.yaml index 807a3fd08..9413bbd82 100644 --- a/.github/workflows/build_test.web-app.yaml +++ b/.github/workflows/build_test.web-app.yaml @@ -3,11 +3,11 @@ name: build and test web-app on: workflow_dispatch: workflow_call: - push: + pull_request: paths: - - web-app/** - .github/workflows/build_test.web-app.yaml - .github/workflows/config.yaml + - web-app/** jobs: config: @@ -22,26 +22,27 @@ jobs: - name: setup node uses: actions/setup-node@v3 with: - # TODO: angular 9 build does not run on node > 14 - node-version: 14 + node-version: ${{ needs.config.outputs.node_versions-lts }} cache: npm cache-dependency-path: web-app/package-lock.json - name: build run: | cd web-app npm ci - npm run build + npm run build:prod env: NODE_OPTIONS: "--max_old_space_size=4096" - name: test - run: npm run --prefix web-app ci:test + run: | + cd web-app + npm run ci:test - name: pack run: | npm pack ./web-app/dist/core-lib - npm pack ./web-app/dist/app + npm pack ./web-app/dist - name: upload packages - uses: actions/upload-artifact@v3 + uses: actions/upload-artifact@v4 with: - name: mage_web-app_packages + name: mage.web-app-artifacts path: | - ngageoint-mage.*.tgz \ No newline at end of file + ngageoint-mage.*.tgz diff --git a/.github/workflows/config.yaml b/.github/workflows/config.yaml index 6220fb5cd..4419357b9 100644 --- a/.github/workflows/config.yaml +++ b/.github/workflows/config.yaml @@ -9,13 +9,17 @@ on: value: ${{ jobs.main.outputs.node_versions-all-json }} node_versions-latest: value: ${{ jobs.main.outputs.node_versions-latest }} - node_versions-pre_latest: - value: ${{ jobs.main.outputs.node_versions-pre_latest }} - node_versions-pre_latest-json: - value: ${{ jobs.main.outputs.node_versions-pre_latest-json }} + node_versions-lts: + value: ${{ jobs.main.outputs.node_versions-lts }} env: - MAGE_NODE_VERSIONS: 16 18 20 + # space-separated list of node versions to use for testing + # order the versions as follows + # the first version in the list should be the active LTS version + # see https://nodejs.org/en/about/previous-releases + # additional versions in ascending order, latest version last + # e.g. 20 18 22 + MAGE_NODE_VERSIONS: 20 18 22 jobs: @@ -24,34 +28,28 @@ jobs: outputs: node_versions-all: ${{ steps.node_versions.outputs.all }} node_versions-all-json: ${{ steps.node_versions.outputs.all-json }} + node_versions-lts: ${{ steps.node_versions.outputs.lts }} node_versions-latest: ${{ steps.node_versions.outputs.latest }} - node_versions-pre_latest: ${{ steps.node_versions.outputs.pre_latest }} - node_versions-pre_latest-json: ${{ steps.node_versions.outputs.pre_latest-json }} steps: - - id: sort_node_versions - name: sort versions + - id: node_versions_array + name: build node versions array run: | echo 'node_versions_lines<> $GITHUB_ENV - echo ${MAGE_NODE_VERSIONS} | tr ' ' '\n' | sort -V >> $GITHUB_ENV + echo ${MAGE_NODE_VERSIONS} | tr ' ' '\n' >> $GITHUB_ENV echo 'EOF' >> $GITHUB_ENV - id: node_versions name: main run: | node_versions_arr=($(echo "${node_versions_lines}")) + node_versions_lts=${node_versions_arr} node_versions_latest=${node_versions_arr[-1]} - node_versions_pre_latest=${node_versions_arr[@]:0:${#node_versions_arr[@]}-1} - node_versions_pre_latest=(${node_versions_arr[@]:0:-1}) node_versions_json=$(printf '"%s",' ${node_versions_arr[@]}) node_versions_json="[ ${node_versions_json:0:-1} ]" - node_versions_pre_latest_json=$(printf '"%s",' ${node_versions_pre_latest[@]}) - node_versions_pre_latest_json="[ ${node_versions_pre_latest_json:0:-1} ]" echo "node versions arr: ${node_versions_arr[@]}" echo "node versions json: ${node_versions_json}" + echo "node versions lts: ${node_versions_lts}" echo "node versions latest: ${node_versions_latest}" - echo "node versions pre_latest: ${node_versions_pre_latest}" - echo "node versions pre_latest json: ${node_versions_pre_latest_json}" echo all=${node_versions_arr} >> $GITHUB_OUTPUT echo all-json=${node_versions_json} >> $GITHUB_OUTPUT + echo lts=${node_versions_lts} >> $GITHUB_OUTPUT echo latest=${node_versions_latest} >> $GITHUB_OUTPUT - echo pre_latest=${node_versions_pre_latest} >> $GITHUB_OUTPUT - echo pre_latest-json=${node_versions_pre_latest_json} >> $GITHUB_OUTPUT diff --git a/.github/workflows/createRelease.yml b/.github/workflows/createRelease.yml deleted file mode 100644 index fdefae7f4..000000000 --- a/.github/workflows/createRelease.yml +++ /dev/null @@ -1,66 +0,0 @@ -on: - push: - tags: - - '*' - -name: Create Release - -jobs: - build: - name: Upload Release Asset - runs-on: ${{ matrix.os }} - - strategy: - matrix: - node: [12.x, 14.x] - os: [ubuntu-latest] - - steps: - - name: Set Friendly OS Name - id: friendly_os_name - run: | - if [ "${{ matrix.os }}" == "ubuntu-latest" ]; then - echo "Setting friendly os to linux" - echo "FRIENDLY_OS=linux" >> $GITHUB_ENV - fi - if [ "${{ matrix.os }}" == "macos-latest" ]; then - echo "Setting friendly os to mac" - echo "FRIENDLY_OS=mac" >> $GITHUB_ENV - fi - shell: bash - - uses: actions/checkout@v1 - - name: Install dev tools - run: | - sudo apt-get install build-essential libcairo2-dev libpango1.0-dev libjpeg-dev libgif-dev librsvg2-dev - - name: Use Node.js ${{ matrix.node }} - uses: actions/setup-node@v1 - with: - node-version: ${{ matrix.node }} - - name: Server test and build - run: | - npm install - npm test - env: - CI: true - - name: Web test and build - run: | - cd web-app - npm install - npm run test-headless - npm run build - env: - CI: true - NODE_OPTIONS: "--max_old_space_size=4096" - - name: Version - id: get_version - run: echo ::set-output name=VERSION::${GITHUB_REF/refs\/tags\//} - - name: Archive - run: | - cd .. - tar czf mage_${{steps.get_version.outputs.VERSION}}_node${{matrix.node}}_${{env.FRIENDLY_OS}}.tar.gz --exclude-vcs --transform s/mage-server/mage_${{steps.get_version.outputs.VERSION}}_node${{matrix.node}}_${{env.FRIENDLY_OS}}/ mage-server - - name: Release - uses: softprops/action-gh-release@v1 - with: - files: ../mage_${{steps.get_version.outputs.VERSION}}_node${{matrix.node}}_${{env.FRIENDLY_OS}}.tar.gz - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} diff --git a/.github/workflows/release.arcgis_plugin.yaml b/.github/workflows/release.arcgis_plugin.yaml new file mode 100644 index 000000000..d1acda933 --- /dev/null +++ b/.github/workflows/release.arcgis_plugin.yaml @@ -0,0 +1,76 @@ +name: release arcgis plugin + +on: + workflow_dispatch: + inputs: + version: + description: The version you want to assign to the release + type: string + required: true + + # TODO: possibly use release branches to perform the release process + # push: + # branches: + # - release/* + # - prerelease/* + # TODO: possibly use release event to perform the release process + # release: + +jobs: + config: + uses: ./.github/workflows/config.yaml + + check_release_version: + needs: [config] + runs-on: ubuntu-latest + steps: + - name: checkout + uses: actions/checkout@v3 + - name: setup node + uses: actions/setup-node@v3 + with: + node-version: ${{ needs.config.outputs.node_versions-lts }} + - name: install json util + run: npm i -g json + - name: check service + run: | + [[ $(json version < ./plugins/arcgis/service/package.json) = ${{ inputs.version }} ]] || exit 1 + - name: check web-app + run: | + [[ $(json version < ./plugins/arcgis/web-app/package.json) = ${{ inputs.version }} ]] || exit 1 + + build_and_test-service: + needs: [check_release_version] + uses: ./.github/workflows/build_test.arcgis.service.yaml + + build_and_test-web-app: + needs: [check_release_version] + uses: ./.github/workflows/build_test.arcgis.web-app.yaml + + publish_packages: + name: publish packages + needs: [config, build_and_test-service] + runs-on: ubuntu-latest + steps: + - name: setup node + uses: actions/setup-node@v3 + with: + node-version: ${{ needs.config.outputs.node_versions-lts }} + - name: install json util + run: npm i -g json + - name: download service packages + uses: actions/download-artifact@v4 + with: + name: arcgis.service-artifacts + - name: download web-app packages + uses: actions/download-artifact@v4 + with: + name: arcgis.web-app-artifacts + - name: publish arcgis service + run: | + npm config set -- '//registry.npmjs.org/:_authToken' ${{ secrets.NPM_TOKEN }} + npm publish --access public $(ls -1 ngageoint-mage.arcgis.service-*.tgz) || echo "skipping arcgis service plugin publish..." + - name: publish arcgis web + run: | + npm config set -- '//registry.npmjs.org/:_authToken' ${{ secrets.NPM_TOKEN }} + npm publish --access public $(ls -1 ngageoint-mage.arcgis.web-app-*.tgz) || echo "skipping arcgis web plugin publish..." diff --git a/.github/workflows/release.image_plugin.yaml b/.github/workflows/release.image_plugin.yaml new file mode 100644 index 000000000..837ddd60e --- /dev/null +++ b/.github/workflows/release.image_plugin.yaml @@ -0,0 +1,68 @@ +name: release image plugin + +on: + workflow_dispatch: + inputs: + version: + description: The version you want to assign to the release + type: string + required: true + + # TODO: possibly use release branches to perform the release process + # push: + # branches: + # - release/* + # - prerelease/* + # TODO: possibly use release event to perform the release process + # release: + +jobs: + config: + uses: ./.github/workflows/config.yaml + + check_release_version: + needs: [config] + runs-on: ubuntu-latest + steps: + - name: checkout + uses: actions/checkout@v3 + - name: setup node + uses: actions/setup-node@v3 + with: + node-version: ${{ needs.config.outputs.node_versions-lts }} + - name: install json util + run: npm i -g json + - name: check service + run: | + [[ $(json version < ./plugins/image/service/package.json) = ${{ inputs.version }} ]] || exit 1 + # - name: check web-app + # run: | + # [[ $(json version < ./web-app/package.json) = ${{ inputs.version }} ]] || exit 1 + + build_and_test-service: + needs: [check_release_version] + uses: ./.github/workflows/build_test.image.service.yaml + + # build_and_test-web-app: + # needs: [ check_release_version ] + # uses: ./.github/workflows/build_test.image.web-app.yaml + + publish_packages: + name: publish packages + needs: [config, build_and_test-service] + runs-on: ubuntu-latest + steps: + - name: setup node + uses: actions/setup-node@v3 + with: + node-version: ${{ needs.config.outputs.node_versions-lts }} + - name: install json util + run: npm i -g json + - name: download service packages + uses: actions/download-artifact@v4 + with: + name: image.service-artifacts + - name: publish to package registry + run: | + npm config set -- '//registry.npmjs.org/:_authToken' ${{ secrets.NPM_TOKEN }} + npm publish --access public $(ls -1 ngageoint-mage.image.service-*.tgz) diff --git a/.github/workflows/release.nga-msi_plugin.yaml b/.github/workflows/release.nga-msi_plugin.yaml new file mode 100644 index 000000000..35c6b3880 --- /dev/null +++ b/.github/workflows/release.nga-msi_plugin.yaml @@ -0,0 +1,61 @@ +name: release nga-msi plugin + +on: + workflow_dispatch: + inputs: + version: + description: The version you want to assign to the release + type: string + required: true + + # TODO: possibly use release branches to perform the release process + # push: + # branches: + # - release/* + # - prerelease/* + # TODO: possibly use release event to perform the release process + # release: + +jobs: + config: + uses: ./.github/workflows/config.yaml + + check_release_version: + needs: [config] + runs-on: ubuntu-latest + steps: + - name: checkout + uses: actions/checkout@v3 + - name: setup node + uses: actions/setup-node@v3 + with: + node-version: ${{ needs.config.outputs.node_versions-lts }} + - name: install json util + run: npm i -g json + - name: check service + run: | + [[ $(json version < ./plugins/nga-msi/package.json) = ${{ inputs.version }} ]] || exit 1 + + build_and_test-service: + needs: [check_release_version] + uses: ./.github/workflows/build_test.nga-msi.yaml + + publish_packages: + name: publish packages + needs: [config, build_and_test-service] + runs-on: ubuntu-latest + steps: + - name: setup node + uses: actions/setup-node@v3 + with: + node-version: ${{ needs.config.outputs.node_versions-lts }} + - name: install json util + run: npm i -g json + - name: download service packages + uses: actions/download-artifact@v4 + with: + name: nga-msi-artifacts + - name: publish to package registry + run: | + npm config set -- '//registry.npmjs.org/:_authToken' ${{ secrets.NPM_TOKEN }} + npm publish --access public $(ls -1 ngageoint-mage.nga-msi-*.tgz) diff --git a/.github/workflows/release.sftp_plugin.yaml b/.github/workflows/release.sftp_plugin.yaml new file mode 100644 index 000000000..d4bc2af64 --- /dev/null +++ b/.github/workflows/release.sftp_plugin.yaml @@ -0,0 +1,76 @@ +name: release sftp plugin + +on: + workflow_dispatch: + inputs: + version: + description: The version you want to assign to the release + type: string + required: true + + # TODO: possibly use release branches to perform the release process + # push: + # branches: + # - release/* + # - prerelease/* + # TODO: possibly use release event to perform the release process + # release: + +jobs: + + config: + uses: ./.github/workflows/config.yaml + + check_release_version: + needs: [ config ] + runs-on: ubuntu-latest + steps: + - name: checkout + uses: actions/checkout@v4 + - name: setup node + uses: actions/setup-node@v4 + with: + node-version: ${{ needs.config.outputs.node_versions-lts }} + - name: install json util + run: npm i -g json + - name: check service + run: | + [[ $(json version < ./plugins/sftp/service/package.json) = ${{ inputs.version }} ]] || exit 1 + - name: check web + run: | + [[ $(json version < ./plugins/sftp/web/package.json) = ${{ inputs.version }} ]] || exit 1 + build_and_test-service: + needs: [ check_release_version ] + uses: ./.github/workflows/build_test.sftp.service.yaml + + build_and_test-web: + needs: [ check_release_version ] + uses: ./.github/workflows/build_test.sftp.web-app.yaml + + publish_packages: + name: publish packages + needs: [ config, build_and_test-service ] + runs-on: ubuntu-latest + steps: + - name: setup node + uses: actions/setup-node@v4 + with: + node-version: ${{ needs.config.outputs.node_versions-lts }} + - name: install json util + run: npm i -g json + - name: download service packages + uses: actions/download-artifact@v4 + with: + name: sftp.service-artifacts + - name: download web packages + uses: actions/download-artifact@v4 + with: + name: sftp.web-artifacts + - name: publish sftp service + run: | + npm config set -- '//registry.npmjs.org/:_authToken' ${{ secrets.NPM_TOKEN }} + npm publish --access public $(ls -1 ngageoint-mage.sftp.service-*.tgz) || echo "skipping sftp service plugin publish..." + - name: publish sftp web + run: | + npm config set -- '//registry.npmjs.org/:_authToken' ${{ secrets.NPM_TOKEN }} + npm publish --access public $(ls -1 ngageoint-mage.sftp.web-*.tgz) || echo "skipping sftp web plugin publish" \ No newline at end of file diff --git a/.github/workflows/release.yaml b/.github/workflows/release.yaml index 4be94a072..d969d1c28 100644 --- a/.github/workflows/release.yaml +++ b/.github/workflows/release.yaml @@ -27,12 +27,11 @@ on: # release: jobs: - config: uses: ./.github/workflows/config.yaml check_release_version: - needs: [ config ] + needs: [config] runs-on: ubuntu-latest steps: - name: checkout @@ -40,7 +39,7 @@ jobs: - name: setup node uses: actions/setup-node@v3 with: - node-version: ${{ needs.config.outputs.node_versions-latest }} + node-version: ${{ needs.config.outputs.node_versions-lts }} - name: install json util run: npm i -g json - name: check project @@ -57,32 +56,32 @@ jobs: [[ $(json version < ./web-app/projects/core-lib/package.json) = ${{ inputs.version }} ]] || exit 1 build_and_test-service: - needs: [ check_release_version ] + needs: [check_release_version] uses: ./.github/workflows/build_test.service.yaml build_and_test-web-app: - needs: [ check_release_version ] + needs: [check_release_version] uses: ./.github/workflows/build_test.web-app.yaml create_release: name: create release - needs: [ config, build_and_test-service, build_and_test-web-app ] + needs: [config, build_and_test-service, build_and_test-web-app] runs-on: ubuntu-latest steps: - name: setup node uses: actions/setup-node@v3 with: - node-version: ${{ needs.config.outputs.node_versions-latest }} + node-version: ${{ needs.config.outputs.node_versions-lts }} - name: install json util run: npm i -g json - - name: download service packages - uses: actions/download-artifact@v3 + - name: download service artifacts + uses: actions/download-artifact@v4 with: - name: mage_service_packages - - name: download web-app packages - uses: actions/download-artifact@v3 + name: mage.service-artifacts + - name: download web-app artifacts + uses: actions/download-artifact@v4 with: - name: mage_web-app_packages + name: mage.web-app-artifacts - name: generate instance package.json run: | ( @@ -108,35 +107,33 @@ jobs: ngageoint-mage.*.tgz publish_packages: - name: publish packages - needs: [ config, create_release ] + name: publish packages + needs: [config, create_release] runs-on: ubuntu-latest steps: - name: setup node uses: actions/setup-node@v3 with: - node-version: ${{ needs.config.outputs.node_versions-latest }} + node-version: ${{ needs.config.outputs.node_versions-lts }} - name: install json util run: npm i -g json - name: download service packages - uses: actions/download-artifact@v3 + uses: actions/download-artifact@v4 with: - name: mage_service_packages + name: mage.service-artifacts - name: download web-app packages - uses: actions/download-artifact@v3 + uses: actions/download-artifact@v4 with: - name: mage_web-app_packages - - name: publish to package registry - env: - NPM_CONFIG_USERCONFIG: "${{ runner.temp }}/gitlab.npmrc" + name: mage.web-app-artifacts + - name: publish mage service + run: | + npm config set -- '//registry.npmjs.org/:_authToken' ${{ secrets.NPM_TOKEN }} + npm publish --access public $(ls -1 ngageoint-mage.service-*.tgz) || echo "skipping mage service publish..." + - name: publish mage web + run: | + npm config set -- '//registry.npmjs.org/:_authToken' ${{ secrets.NPM_TOKEN }} + npm publish --access public $(ls -1 ngageoint-mage.web-app-*.tgz) || echo "skipping mage web app publish..." + - name: publish mage core run: | npm config set -- '//registry.npmjs.org/:_authToken' ${{ secrets.NPM_TOKEN }} - npm publish --access public $(ls -1 ngageoint-mage.service-*.tgz) - npm publish --access public $(ls -1 ngageoint-mage.web-core-lib-*.tgz) - npm publish --access public $(ls -1 ngageoint-mage.web-app-*.tgz) - check_version=$(tar xzOf ngageoint-mage.image.service-*.tgz package/package.json | json version) - echo "checking @ngageoint/mage.image.service@${check_version}" - [[ -n $(npm view @ngageoint/mage.image.service@${check_version} version) ]] || npm publish --access public $(ls -1 ngageoint-mage.image.service-*.tgz) - check_version=$(tar xzOf ngageoint-mage.nga-msi-*.tgz package/package.json | json version) - echo "checking @ngageoint/mage.nga-msi@${check_version}" - [[ -n $(npm view @ngageoint/mage.nga-msi@${check_version} version) ]] || npm publish --access public $(ls -1 ngageoint-mage.nga-msi-*.tgz) + npm publish --access public $(ls -1 ngageoint-mage.web-core-lib-*.tgz) || echo "skipping mage core publish..." diff --git a/.gitignore b/.gitignore index de010a828..139cac8e8 100644 --- a/.gitignore +++ b/.gitignore @@ -10,6 +10,7 @@ node_modules coverage/ docker/database/ docker/server/resources/ +server/resources npm-debug.log pnpm-debug.log scratch/ @@ -19,3 +20,4 @@ scratch/ /docker/auth-idp/ldap/db/* # this line must be last !.gitkeep +.angular \ No newline at end of file diff --git a/CHANGELOG.md b/CHANGELOG.md index bbe65832b..9761877b7 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -8,6 +8,20 @@ MAGE adheres to [Semantic Versioning](http://semver.org/). ## Pending on [`develop`](https://github.com/ngageoint/mage-server/tree/develop) ##### Features +- The _About_ page displays system information, including Node and MongoDB versions. + - The new `READ_SYSTEM_INFO` role restricts access to system information. +- Support for Mongoose 6.x +- Support for Webpack 5.x +- Support for Angular 14.x +- [mongodb-migrations](https://www.npmjs.com/package/@ngageoint/mongodb-migrations) support for Mongo 6.x. +- The `MAGE_MONGO_TLS_INSECURE` env var avoids issues with [self-signed certs](https://github.com/Automattic/mongoose/issues/9147). +- [GARS](https://github.com/ngageoint/gars-js) grid overlay +- [MGRS](https://github.com/ngageoint/mgrs-js) grid overlay + +##### Bug fixes +- Single observation download bug +- Protect against disabling all authentications. +- Problem with OAuth web login ## [6.2.13](https://github.com/ngageoint/mage-server/releases/tag/6.2.13) ### Service diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 000000000..f5827a2f2 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,98 @@ +FROM node:20.11.1 AS build-service + +WORKDIR /service +COPY service/package*.json ./ +RUN npm install +COPY service/ ./ +RUN npm run build + +RUN npm pack + +# Build web-app +FROM node:20.11.1 AS build-webapp + +WORKDIR /web-app +COPY web-app/package*.json ./ +RUN npm install +COPY web-app/ ./ +RUN npm run build + +RUN npm pack ./dist + +FROM node:20.11.1 AS build-arcwebplugin +# Build arcgis service plugin +WORKDIR /arcgiswebplugin +COPY plugins/arcgis/web-app/package*.json ./ +RUN npm install +COPY --from=build-service /service /arcgiswebplugin/node_modules/@ngageoint/mage.service +COPY plugins/arcgis/web-app/ ./ +RUN npm run build +RUN npm pack ./dist/main + +FROM node:20.11.1 AS build-arcserviceplugin +WORKDIR /arcgisserviceplugin +COPY plugins/arcgis/service/package*.json ./ +RUN npm install +COPY --from=build-service /service /arcgisserviceplugin/node_modules/@ngageoint/mage.service +COPY plugins/arcgis/service/ ./ +RUN npm run build +RUN npm pack + +FROM node:20.11.1 AS build-imageserviceplugin +WORKDIR /imageserviceplugin +COPY plugins/image/service/package*.json ./ +RUN npm install +COPY --from=build-service /service /imageserviceplugin/node_modules/@ngageoint/mage.service +RUN rm -rf /imageserviceplugin/node_modules/@ngageoint/mage.service/node_modules/mongoose +COPY plugins/image/service/ ./ +RUN npm run build +RUN npm pack + +FROM node:20.11.1 AS build-sftpserviceplugin +WORKDIR /sftpserviceplugin +COPY plugins/sftp/service/package*.json ./ +RUN npm install +COPY --from=build-service /service /sftpserviceplugin/node_modules/@ngageoint/mage.service +COPY plugins/sftp/service/ ./ +RUN npm run build +RUN npm pack + +FROM node:20.11.1 AS build-sftpwebplugin +# Build sftp service plugin +WORKDIR /sftpwebplugin +COPY plugins/sftp/web/package*.json ./ +RUN npm install +COPY plugins/sftp/web/ ./ +RUN npm run build +RUN npm pack ./dist/main + +# Build instance +FROM node:20.11.1 AS build-instance +COPY --from=build-service /service/ngageoint*.tgz /service/ +COPY --from=build-webapp /web-app/ngageoint*.tgz /web-app/ +COPY --from=build-arcwebplugin /arcgiswebplugin/ngageoint*.tgz /arcgiswebplugin/ +COPY --from=build-arcserviceplugin /arcgisserviceplugin/ngageoint*.tgz /arcgisserviceplugin/ +COPY --from=build-sftpserviceplugin /sftpserviceplugin/ngageoint*.tgz /sftpserviceplugin/ +COPY --from=build-sftpwebplugin /sftpwebplugin/ngageoint*.tgz /sftpwebplugin/ +COPY --from=build-imageserviceplugin /imageserviceplugin/ngageoint*.tgz /imageserviceplugin/ + +WORKDIR /instance +RUN ls -la ../sftpwebplugin +RUN npm install ../service/ngageoint-mage.service*.tgz +RUN npm install ../web-app/ngageoint-mage.web-app*.tgz +RUN npm install ../sftpwebplugin/ngageoint-mage.sftp.web*.tgz +RUN npm install ../sftpserviceplugin/ngageoint-mage.sftp.service*.tgz +RUN npm install ../arcgiswebplugin/ngageoint*.tgz +RUN npm install ../arcgisserviceplugin/ngageoint*.tgz +RUN npm install ../imageserviceplugin/ngageoint*.tgz + + +ENV NODE_PATH=./node_modules +ENTRYPOINT [ \ + "./node_modules/.bin/mage.service", \ + "--plugin", "@ngageoint/mage.image.service", \ + "--plugin", "@ngageoint/mage.arcgis.service", \ + "--plugin", "@ngageoint/mage.sftp.service", \ + "--web-plugin", "@ngageoint/mage.sftp.web", \ + "--web-plugin", "@ngageoint/mage.arcgis.web-app" \ + ] \ No newline at end of file diff --git a/README.md b/README.md index 674dff063..ef7e98c7e 100644 --- a/README.md +++ b/README.md @@ -67,44 +67,52 @@ but be aware some path-separator related bugs may exist The MAGE server is a [Node.js](https://nodejs.org) application, so of course you'll need to install Node on your platform of choice. [Node Version Manager](https://github.com/nvm-sh/nvm) is a nice tool to use for installing and managing different versions of Node, as opposed to various package managers. At the time of this writing, MAGE -requires Node >= 14.x. +requires Node > 18.x. Developers should use the latest LTS, 20.x at the time of this writing. ### Install MongoDB Before running a MAGE server, you'll need to install and start [MongoDB](https://www.mongodb.com/try/download/community). -At the time of this writing, MAGE supports MongoDB version 4.x. +At the time of this writing, MAGE supports MongoDB version 6.x (6.0). ### Install MAGE server packages -Starting with release [6.2.0](https://github.com/ngageoint/mage-server/releases/tag/6.2.0), MAGE server [releases](https://github.com/ngageoint/mage-server/releases) publish NPM package tarballs. To install and run MAGE, download the tarball artifacts from the desired -release to an empty directory, such as `mage-server`, and install them with NPM. +Starting with release [6.2.2](https://github.com/ngageoint/mage-server/releases/tag/6.2.2), the MAGE server packages +are available from the [NPM registry](https://npmjs.com). ```bash +mkdir mage +cd mage npm install --omit dev \ -ngageoint-mage.service-*.tgz \ -ngageoint-mage.web-app-*.tgz \ -ngageoint-mage.image.service-*.tgz \ -ngageoint-mage.nga-msi-*.tgz +@ngageoint/mage.service \ +@ngageoint/mage.web-app \ +@ngageoint/mage.image.service \ ``` That will yield a `package.json` file that looks something like ```json { "dependencies": { - "@ngageoint/mage.image.service": "file:ngageoint-mage.image.service-1.0.0.tgz", - "@ngageoint/mage.nga-msi": "file:ngageoint-mage.nga-msi-1.0.1.tgz", - "@ngageoint/mage.service": "file:ngageoint-mage.service-6.2.0.tgz", - "@ngageoint/mage.web-app": "file:ngageoint-mage.web-app-6.2.0.tgz" + "@ngageoint/mage.image.service": "^1.0.4", + "@ngageoint/mage.service": "^6.2.12", + "@ngageoint/mage.web-app": "^6.2.12" } } ``` as well as a `package-lock.json` file and `node_modules` directory containing all of the MAGE server's dependencies. +### Register plugins + +As the example instance [configuration](./instance/config.js) demonstrates, you'll need to tell the MAGE service what +plugins to load. See the `plugins` entry in the configuration object, as well as the [plugins readme](./plugins/README.md). +Note that the `@ngageoint/mage.image.service` package in the dependency list above is a plugin package, and +[resides](./plugins/image/service) in this monorepo. + ### Run `mage.service` script The `@ngageoint/mage.service` package includes a [`mage.service` [bin script](https://docs.npmjs.com/cli/v8/configuring-npm/package-json#bin) for starting the server process. From the `instance` directory, you can run `npx @ngageoint/mage.service --help` to see the configuration -options. +options. Also, the [`instance`](./instance) directory in this project has an example [configuration script](./instance/config.js) +which the `mage.service` script would load with the `-C` flag, e.g., `mage.service -C config.js`. -On Windows Server installations, running the command: `node node_modules\@ngageoint\mage.service\bin\mage.service.js` in the `instance` directory, will initialize the `mage.service` script. +On Windows Server installations, running the command `node node_modules\@ngageoint\mage.service\bin\mage.service.js` in the `instance` directory will execute the `mage.service` script. #### Configuration merging @@ -155,7 +163,7 @@ For convenience, the MAGE server project contains an [environment script](./serv can copy and customize. You can configure the MAGE system user account to source the script at login. The Node MAGE server runs on port 4242 by default. You can access the MAGE web app in your web browser at -[http://localhost:4242](http://localhost:4242) if you are running MAGE locally. +[http://127.0.0.1:4242](http://127.0.0.1:4242) if you are running MAGE locally. ### Running with [Docker](https://www.docker.com/what-docker) @@ -187,6 +195,9 @@ where you have installed the MAGE server packages. ```bash forever start ./node_modules/.bin/mage.service <...options> ``` +NOTE: The `forever` readme now indicates that the project no longer has a dedicated developer and is totally reliant +on community updates. Try using the newer tools [pm2](https://pm2.keymetrics.io/) or [nodemon](https://nodemon.io/) +for running `mage.service` persistently in production. #### Running as a Windows Service To continuously run mage.service on a windows environment, it is recommended to create a windows service using a tool such as [`node-windows`](https://github.com/coreybutler/node-windows). @@ -247,11 +258,11 @@ in Cloud Foundry, for which Cloud Foundry should supply the connection string an ### Upgrading MAGE server -Upgrading the MAGE server essentially consists of the same process as [installing for the first time](#install-mage-server-release-packages). -1. As above, download the package tarballs for the desired version. -2. Stop your current MAGE server if it is running. -3. *_[BACK UP YOUR DATABASE](https://docs.mongodb.com/manual/core/backups/)!_* (You already do that regularly, right?) -5. Start your new MAGE server, which will automatically run any database [migrations](#mage-database-setup) present in +Upgrading the MAGE server essentially consists of the same process as [installing for the first time](#install-mage-server-packages). +1. As above, install the desired versions of the packages. +1. Stop your current MAGE server if it is running. +1. *_[BACK UP YOUR DATABASE](https://docs.mongodb.com/manual/core/backups/)!_* (You already do that regularly, right?) +1. Start your new MAGE server, which will automatically run any database [migrations](./service/src/migrations) present in the new version. ## Building from source @@ -278,17 +289,192 @@ Build optional plugin packages similarly.: ```bash cd plugins/nga-msi npm ci +npm link ../../service # **IMPORTANT** see below npm run build ``` After building the core packages, install them as dependencies in the `instance` package. ```bash cd instance -npm i --omit dev ../service ../web-app ../plugins/nga-msi +npm i ``` + +In the case that the dev dependencies need to be over ridden (eg nga-msi plugin) +```bash +cd instance +npm i --omit dev ../service ../web-app/dist ../plugins/nga-msi +``` + The project's root [`package.json`](./package.json) provides some convenience script entries to install, build, and run the MAGE server components, however, those are deprecated and will likely go away after migrating to NPM 7+'s [workspaces](https://docs.npmjs.com/cli/v8/using-npm/workspaces) feature. +## Running from source + +To run the Mage server directly from your _built_ source tree, build the `service`, `web-app`, and any plugin packages +you want to run as described in the above section. Then, from the `instance` directory, run +```shell +npm run start:dev +``` +That [NPM script](./instance/package.json) will run the `mage.service` script from your working tree using the +[configuration](./instance/config.js) from the instance directory. You can modify that configuration to suit +your needs. + +### Local runtime issues + +You may run into some problems running the Mage instance from your working tree due to NPM's dependency installation +behavior and/or Node's module resolution algorithm. For example, if you are working on a plugin within this core +Mage repository, you may see errors as plugins initialize. This is usually a null reference error that looks something +like +``` +2024-08-23T02:42:52.783Z - [mage.image] intializing image plugin ... +... +/<...>/mage-server/plugins/image/service/lib/processor.js:53 + return yield stateRepo.get().then(x => !!x ? x : stateRepo.put(exports.defaultImagePluginConfig)); + ^ + +TypeError: Cannot read properties of undefined (reading 'get') + at /<...>/mage-server/plugins/image/service/lib/processor.js:53:36 +``` +This is usually because the plugin package has a peer depedency on `@ngageoint/mage.service`, which NPM pulls from the +public [registry](https://www.npmjs.com/package/@ngageoint/mage.service) and installs into the plugin's `node_modules` +directory. However, your local Mage instance references `@ngageoint/mage.service` package from the local relative +path. This results in your instance having two copies of `@ngageoint/mage.service` - one from your local build linked +in the top-level `instance/node_modules` directory, and one from the registry in the plugin's `node_modules` directory. +In the case of the error above, this results in a discrepancy during dependency injection because the Mage service +defines unique `Symbol` constants for plugins to indicate which elements they need from their host Mage service. In +the plugin's modules, Node resolves these symbol constants and any other core `@ngageoint/mage.service` modules from +the plugin's copy of the package, as opposed to the relative package installed at the instance level. This is why you +must ensure that you link the working tree core Mage service package in your plugin working tree, as the above +instructions state. +```shell +~/my_plugin % npm ci +~/my_plugin % npm link /service +``` +Be aware that NPM's dependency resolution will delete this symbolic link every time you run `npm install`, +`npm install `, or `npm ci` for the plugin, so always `npm link` your relative Mage service +dependency again after those commands. + +If you encounter other unexpected issues running locally with plugins, especially reference errors, or other +discrepancies in values the core modules define, check that the core service package is still linked properly +in your plugin working tree. You can check using the `npm ls` command as follows. +```shell +% npm ls @ngageoint/mage.service +@ngageoint/mage.image.service@1.1.0-beta.1 /<...>/mage-server/plugins/image/service +└── @ngageoint/mage.service@6.3.0-beta.6 -> ./../../../service +``` + +## Docker Setup +The docker directory includes documentation and dockerfiles for building using the release npm packages. The root Dockerfile and docker-compose.yml are used for building and running a dockerfile from the source/local code. Simply run `docker compose up` to spin up a local mongo db database along with the web server. After it starts up, navitage to localhost:4242 to view the web server. + +By default, the Dockerfile includes additional plugins. Should you want to add/remove any plugins, you will need to modify the Entrypoint command. Simply uncomment the `entrypoint` section of the docker compose to specify what plugins you would like to include, or exlude + +### HTTPS/TLS reverse proxy + +Then `mage-web-proxy` service is optional when developing and running on +localhost, but highly recommended when running MAGE Server on publicly +accessible servers. The service in `docker-compose.yml` uses the official +nginx docker image with an appropriate [configuration](web/nginx.conf). This +is an example of setting up a reverse proxy in front of the Node server to +enforce HTTPS/TLS connections to the server. Of course, you could use any +reverse proxy you see fit, such as [Apache HTTP Server](https://httpd.apache.org/) +or an AWS [Application Load Balancer](https://docs.aws.amazon.com/elasticloadbalancing/latest/application/introduction.html). To run your MAGE server behind the TLS +reverse proxy, peform the following modifications to `docker-compose.yml`. +1. Comment the `ports` block for the `mage-server` service to disallow + connections directly to the Node.js server. +1. Uncomment the block with the `mage-web-proxy` service key. + +For testing in a development environment, you can create a self-signed server +certificate for nginx to use. The following OpenSSL command, run from the +directory of this README, will create a self-signed server certificate and +private key in the `web` directory that should allow the MAGE mobile app to +connect to nginx. Replace the values of the `SUBJ_*` variables at the +beginning of the command with your own values. +``` +SUBJ_C="XX" \ +SUBJ_ST="State" \ +SUBJ_L="Locality" \ +SUBJ_O="Organization" \ +SUBJ_OU="Organizational_Unit" \ +SUBJ_CN="HOST_NAME_OR_IP"; \ +openssl req -new -nodes -x509 -newkey rsa:4096 -sha256 -days 1095 \ +-out web/mage-web.crt -keyout web/mage-web.key \ +-config <(cat /etc/ssl/openssl.cnf <(printf "[mage]\n \ +subjectAltName=DNS:$SUBJ_CN\n \ +basicConstraints=CA:true")) \ +-subj "/C=$SUBJ_C/ST=$SUBJ_ST/L=$SUBJ_L/O=$SUBJ_O/OU=$SUBJ_OU/CN=$SUBJ_CN" \ +-extensions mage; \ +unset SUBJ_C SUBJ_ST SUBJ_L SUBJ_O SUBJ_OU SUBJ_CN +``` +The preceding command creates `web/mage-web.crt` and `web/mage-web.key`, which +the nginx configuration file references. The `<(...)` operator is Unix process +substitution and allows treating the enclosed command output as a file. The +`subjectAltName` and `basicConstraints` arguments are necessary to install the +public certificate, `mage-web.crt`, as a trusted authority on a mobile device. + +**IMPORTANT** If you intend to connect to your reverse proxy from a mobile +device or simulator/emulator running the MAGE mobile app, make sure that the +value of the `SUBJ_CN` variable matches the IP address of your MAGE Server +host on your network, or the resolvable host name of the host. TLS connections +will not succeed if Common Name and Subject Alternative Name fields in the +public certificate do not match the host name. + +When running with the reverse proxy and default port settings in the Compose +file, your server will be available at https://localhost:5443. If you are +connecting from a mobile device on the same network. + +### Bind mounts + +The Compose file uses [bind mounts](https://docs.docker.com/storage/bind-mounts/) +for the MongoDB database directory, database log path, and MAGE server +[resources](../README.md#mage-local-media-directory). By default, the source +paths of those bind mounts are `database/data`, `database/log`, and +`server/resources`, respectively. You can change the source paths according to +your environment and needs. + +With these bind mounts, the MAGE server will retain its data on your host file +system in directories you can explore and manage yourself. For example, this +setup allows you to mount a directory into the MAGE server container from a +[FUSE-based](https://github.com/libfuse/libfuse) file system, which might +provide extra functionality like [encryption](https://www.veracrypt.fr) or +[remote mounting](https://github.com/libfuse/sshfs) transparently to the +Docker container and MAGE application. If you don't have any requirements of +that sort, you can modify the Compose file to use [Docker-managed volumes](https://docs.docker.com/storage/volumes/) instead of bind mounts. + +### Ports +The only port the Compose file exposes to the host by default is 4242 on the +`mage-server` service to allow HTTP connections from your host web browser to +the MAGE server running in the Docker container. In a production environment, +you could add another service in the Compose file to run an +[nginx](https://hub.docker.com/_/nginx/) or [httpd](https://hub.docker.com/_/httpd/) +reverse proxy with TLS or other security measures in front of the MAGE Server +Node application. In that case you would remove the +```yaml +ports: + - 4242:4242 +``` +lines from the Compose file under the `mage-server` service entry. You would +then most likely add the mapping +```yaml +ports: + - 443:443 +``` +to the reverse proxy's service definition. + +You can also allow connections from your host to the MongoDB database container +by uncommenting the `ports` block of the `mage-db` service. You would then be +able to connect directly to the MongoDB database using the `mongo` client on +your host machine to examine or modify the database contents. + +### Environment settings + +You can configure the MAGE server Docker app using [environment variables](../README.md#mage-environment-settings). +The Compose file does this by necessity to configure the MongoDB URL for the MAGE server. +```yaml +environment: + MAGE_MONGO_URL: mongodb://mage-db:27017/magedb +``` + + ## ReST API The MAGE ReSTful API is documented using [OpenAPI](https://swagger.io/specification/). A MAGE server instance includes diff --git a/docker-compose.yml b/docker-compose.yml new file mode 100644 index 000000000..a27f96ec1 --- /dev/null +++ b/docker-compose.yml @@ -0,0 +1,53 @@ +services: + + mage-db: + image: mongo:4.4-focal + # Uncomment the following ports block to allow the mongo client on your + # host machine to connect to MongoDB in the Docker container. + # ports: + # - 27017:27017 + networks: + - mage.net + + mage-server: + depends_on: [ mage-db ] + build: + context: ./ + # dockerfile: Dockerfile-debug + image: mage:local + # entrypoint: ["./node_modules/.bin/mage.service", "--plugin", "@ngageoint/mage.image.service"] Uncomment to specify new entrypoint commands + platform: linux/amd64 + volumes: + - ./server/resources:/var/lib/mage + # Comment the ports block to disallow connections directly to the node + # server when running the mage-web-proxy below. + ports: + - 4242:4242 + # Uncomment to allow debuggers to attach the Node process inside the + # container on port 14242 + # - 14242:14242 + networks: + - mage.net + environment: + MAGE_MONGO_URL: mongodb://mage-db:27017/magedb + MAGE_TOKEN_EXPIRATION: "28800" + # NOTE: default INSECURE salt value, recommend generate new UUID before deployment, **NOT** after deployment + SFTP_PLUGIN_CONFIG_SALT: "A0E6D3B4-25BD-4DD6-BBC9-B367931966AB" + + # Uncomment the following block to enable the TLS reverse proxy. You will + # also need to generate the key and certificate as the README describes. + # mage-web-proxy: + # image: nginx + # volumes: + # - ./web/nginx.conf:/etc/nginx/nginx.conf + # - ./web/mage-web.crt:/etc/nginx/ssl/web.crt + # - ./web/mage-web.key:/etc/nginx/ssl/web.key + # ports: + # - 4280:80 + # - 4243:4243 + # networks: + # - mage.net + +networks: + mage.net: + driver: bridge diff --git a/docker/README.md b/docker/README.md index d01ba826b..7aca9d901 100644 --- a/docker/README.md +++ b/docker/README.md @@ -61,7 +61,6 @@ You can use [`docker-compose logs `](https://docs.docker.com/engine/ref $ docker compose logs mage-server mage-server_1 | 2018-04-26T23:30:30.684Z - info: Starting MAGE Server ... mage-server_1 | 2018-04-26T23:30:31.403Z - info: setting up provision uid -mage-server_1 | (node:1) DeprecationWarning: Mongoose: mpromise (mongoose's default promise library) is deprecated, plug in your own promise library instead: http://mongoosejs.com/docs/promises.html mage-server_1 | 2018-04-26T23:30:31.861Z - info: Using '/var/lib/mage/attachments' as base directory for feature attachments. mage-server_1 | 2018-04-26T23:30:31.861Z - info: Using '/var/lib/mage/icons' as base directory for MAGE icons. # etc., etc. @@ -159,109 +158,5 @@ mage-server 6.3.0-beta.1 34093daa6c4e 2 hours ago 522MB Note the same values in the `IMAGE ID` column in the example output, along with different `TAG` values. -### HTTPS/TLS reverse proxy -Then `mage-web-proxy` service is optional when developing and running on -localhost, but highly recommended when running MAGE Server on publicly -accessible servers. The service in `docker-compose.yml` uses the official -nginx docker image with an appropriate [configuration](web/nginx.conf). This -is an example of setting up a reverse proxy in front of the Node server to -enforce HTTPS/TLS connections to the server. Of course, you could use any -reverse proxy you see fit, such as [Apache HTTP Server](https://httpd.apache.org/) -or an AWS [Application Load Balancer](https://docs.aws.amazon.com/elasticloadbalancing/latest/application/introduction.html). To run your MAGE server behind the TLS -reverse proxy, peform the following modifications to `docker-compose.yml`. -1. Comment the `ports` block for the `mage-server` service to disallow - connections directly to the Node.js server. -1. Uncomment the block with the `mage-web-proxy` service key. - -For testing in a development environment, you can create a self-signed server -certificate for nginx to use. The following OpenSSL command, run from the -directory of this README, will create a self-signed server certificate and -private key in the `web` directory that should allow the MAGE mobile app to -connect to nginx. Replace the values of the `SUBJ_*` variables at the -beginning of the command with your own values. -``` -SUBJ_C="XX" \ -SUBJ_ST="State" \ -SUBJ_L="Locality" \ -SUBJ_O="Organization" \ -SUBJ_OU="Organizational_Unit" \ -SUBJ_CN="HOST_NAME_OR_IP"; \ -openssl req -new -nodes -x509 -newkey rsa:4096 -sha256 -days 1095 \ --out web/mage-web.crt -keyout web/mage-web.key \ --config <(cat /etc/ssl/openssl.cnf <(printf "[mage]\n \ -subjectAltName=DNS:$SUBJ_CN\n \ -basicConstraints=CA:true")) \ --subj "/C=$SUBJ_C/ST=$SUBJ_ST/L=$SUBJ_L/O=$SUBJ_O/OU=$SUBJ_OU/CN=$SUBJ_CN" \ --extensions mage; \ -unset SUBJ_C SUBJ_ST SUBJ_L SUBJ_O SUBJ_OU SUBJ_CN -``` -The preceding command creates `web/mage-web.crt` and `web/mage-web.key`, which -the nginx configuration file references. The `<(...)` operator is Unix process -substitution and allows treating the enclosed command output as a file. The -`subjectAltName` and `basicConstraints` arguments are necessary to install the -public certificate, `mage-web.crt`, as a trusted authority on a mobile device. - -**IMPORTANT** If you intend to connect to your reverse proxy from a mobile -device or simulator/emulator running the MAGE mobile app, make sure that the -value of the `SUBJ_CN` variable matches the IP address of your MAGE Server -host on your network, or the resolvable host name of the host. TLS connections -will not succeed if Common Name and Subject Alternative Name fields in the -public certificate do not match the host name. - -When running with the reverse proxy and default port settings in the Compose -file, your server will be available at https://localhost:5443. If you are -connecting from a mobile device on the same network. - -### Bind mounts - -The Compose file uses [bind mounts](https://docs.docker.com/storage/bind-mounts/) -for the MongoDB database directory, database log path, and MAGE server -[resources](../README.md#mage-local-media-directory). By default, the source -paths of those bind mounts are `database/data`, `database/log`, and -`server/resources`, respectively. You can change the source paths according to -your environment and needs. - -With these bind mounts, the MAGE server will retain its data on your host file -system in directories you can explore and manage yourself. For example, this -setup allows you to mount a directory into the MAGE server container from a -[FUSE-based](https://github.com/libfuse/libfuse) file system, which might -provide extra functionality like [encryption](https://www.veracrypt.fr) or -[remote mounting](https://github.com/libfuse/sshfs) transparently to the -Docker container and MAGE application. If you don't have any requirements of -that sort, you can modify the Compose file to use [Docker-managed volumes](https://docs.docker.com/storage/volumes/) instead of bind mounts. - -### Ports -The only port the Compose file exposes to the host by default is 4242 on the -`mage-server` service to allow HTTP connections from your host web browser to -the MAGE server running in the Docker container. In a production environment, -you could add another service in the Compose file to run an -[nginx](https://hub.docker.com/_/nginx/) or [httpd](https://hub.docker.com/_/httpd/) -reverse proxy with TLS or other security measures in front of the MAGE Server -Node application. In that case you would remove the -```yaml -ports: - - 4242:4242 -``` -lines from the Compose file under the `mage-server` service entry. You would -then most likely add the mapping -```yaml -ports: - - 443:443 -``` -to the reverse proxy's service definition. - -You can also allow connections from your host to the MongoDB database container -by uncommenting the `ports` block of the `mage-db` service. You would then be -able to connect directly to the MongoDB database using the `mongo` client on -your host machine to examine or modify the database contents. - -### Environment settings - -You can configure the MAGE server Docker app using [environment variables](../README.md#mage-environment-settings). -The Compose file does this by necessity to configure the MongoDB URL for the MAGE server. -```yaml -environment: - MAGE_MONGO_URL: mongodb://mage-db:27017/magedb -``` diff --git a/docker/docker-compose.yml b/docker/docker-compose.yml index 89c859b9f..b6690711c 100644 --- a/docker/docker-compose.yml +++ b/docker/docker-compose.yml @@ -15,13 +15,11 @@ services: mage-server: depends_on: [ mage-db ] - image: "mage-server:${MAGE_VERSION:-6.2.0}" + image: "mage:prod" # image: "mage-server:debug" build: context: ./server # dockerfile: Dockerfile-debug - args: - MAGE_VERSION: "${MAGE_VERSION:-6.2.0}" platform: linux/amd64 volumes: - ./server/resources:/var/lib/mage diff --git a/docker/server/Dockerfile b/docker/server/Dockerfile index 62a189c3f..c4919bbe3 100644 --- a/docker/server/Dockerfile +++ b/docker/server/Dockerfile @@ -1,9 +1,4 @@ -FROM node:18-slim - -ARG service_version=latest -ARG web_version=${service_version} -ARG image_version=latest -ARG msi_version=latest +FROM registry1.dso.mil/ironbank/opensource/nodejs/debian/nodejs:20.11.1 LABEL author="NGA" @@ -17,16 +12,26 @@ RUN groupadd -r mage \ && chown mage:mage /var/lib/mage USER mage -ENV MAGE_HOME /home/mage/instance +ENV MAGE_HOME=/home/mage/instance WORKDIR ${MAGE_HOME} RUN ls -l \ - && npm i --omit dev @ngageoint/mage.service@${service_version} \ - && npm i --omit dev @ngageoint/mage.web-app@${web_version} \ - && npm i --omit dev @ngageoint/mage.image.service@${image_version} \ - && npm i --omit dev @ngageoint/mage.nga-msi@${msi_version} \ + && npm i --omit dev @ngageoint/mage.service@6.3.0-beta.8 \ + && npm i --omit dev @ngageoint/mage.web-app@6.3.0-beta.8 \ + && npm i --omit dev @ngageoint/mage.arcgis.service@1.0.0-beta.1 \ + && npm i --omit dev @ngageoint/mage.arcgis.web-app@1.0.0 \ + && npm i --omit dev @ngageoint/mage.sftp.service@1.0.0-beta.1 \ + && npm i --omit dev @ngageoint/mage.sftp.web@1.0.0-beta.1 \ + && npm i --omit dev @ngageoint/mage.nga-msi@1.0.5 \ + && npm i --omit dev @ngageoint/mage.image.service@1.1.0-beta.2 \ && ln -s ./node_modules/.bin/mage.service VOLUME /var/lib/mage EXPOSE 4242 -ENTRYPOINT [ "./mage.service", "--plugin", "@ngageoint/mage.image.service", "--plugin", "@ngageoint/mage.nga-msi" ] +ENTRYPOINT [ "./mage.service", \ + "--plugin", "@ngageoint/mage.arcgis.service", \ + "--plugin", "@ngageoint/mage.sftp.service", \ + "--plugin", "@ngageoint/mage.nga-msi", \ + "--plugin", "@ngageoint/mage.image.service", \ + "--web-plugin", "@ngageoint/mage.arcgis.web-app", \ + "--web-plugin", "@ngageoint/mage.sftp.web"] diff --git a/docker/server/Dockerfile.arcgis b/docker/server/Dockerfile.arcgis deleted file mode 100644 index 2bf56d1cd..000000000 --- a/docker/server/Dockerfile.arcgis +++ /dev/null @@ -1,18 +0,0 @@ -ARG base_mage_image=mage-server:latest - -FROM ${base_mage_image} - -COPY ngageoint-mage.*.tgz ${MAGE_HOME}/ -RUN \ - id && pwd && ls -ld && ls -lrt \ - && npm i --force --omit dev ./ngageoint-mage.service-6.2.10-beta.1.tgz \ - && npm i --force --omit dev ./ngageoint-mage.arcgis-1.0.0.tgz \ - && npm i --force --omit dev ./ngageoint-mage.arc-web-1.0.0.tgz - -ENTRYPOINT [ \ - "./mage.service", \ - "--plugin", "@ngageoint/mage.image.service", \ - "--plugin", "@ngageoint/mage.nga-msi", \ - "--plugin", "@ngageoint/mage.arcgis", \ - "--web-plugin", "@ngageoint/mage.arc-web" \ -] \ No newline at end of file diff --git a/docker/server/Dockerfile.ironbank b/docker/server/Dockerfile.ironbank deleted file mode 100644 index 81a9cea19..000000000 --- a/docker/server/Dockerfile.ironbank +++ /dev/null @@ -1,32 +0,0 @@ -FROM registry1.dso.mil/ironbank/opensource/nodejs/debian/nodejs:18.19.1 - -ARG service_version=latest -ARG web_version=${service_version} -ARG image_version=latest -ARG msi_version=latest - -LABEL author="NGA" - -USER root - -RUN apt-get update - -RUN groupadd -r mage \ - && useradd -m -r -s /bin/bash -g mage mage \ - && mkdir -p /var/lib/mage \ - && chown mage:mage /var/lib/mage - -USER mage -ENV MAGE_HOME /home/mage/instance -WORKDIR ${MAGE_HOME} -RUN ls -l \ - && npm i --omit dev @ngageoint/mage.service@${service_version} \ - && npm i --omit dev @ngageoint/mage.web-app@${web_version} \ - && npm i --omit dev @ngageoint/mage.image.service@${image_version} \ - && npm i --omit dev @ngageoint/mage.nga-msi@${msi_version} \ - && ln -s ./node_modules/.bin/mage.service - -VOLUME /var/lib/mage -EXPOSE 4242 - -ENTRYPOINT [ "./mage.service", "--plugin", "@ngageoint/mage.image.service", "--plugin", "@ngageoint/mage.nga-msi" ] diff --git a/instance/config.js b/instance/config.js index d05b184bd..9f9db96ea 100644 --- a/instance/config.js +++ b/instance/config.js @@ -20,7 +20,8 @@ module.exports = { url: 'mongodb://127.0.0.1:27017/magedb', connTimeout: 300, connRetryDelay: 5, - poolSize: 5, + minPoolSize: 5, + maxPoolSize: 5, ssl: false, user: undefined, password: undefined, @@ -32,13 +33,14 @@ module.exports = { }, plugins: { servicePlugins: [ - '@ngageoint/mage.arcgis', - '@ngageoint/mage.image.service', + '@ngageoint/mage.arcgis.service', '@ngageoint/mage.nga-msi', '@ngageoint/mage.random', + '@ngageoint/mage.sftp.service' ], webUIPlugins: [ - '@ngageoint/mage.arc-web' + '@ngageoint/mage.arcgis.web-app', + '@ngageoint/mage.sftp.web' ], }, } diff --git a/instance/package.json b/instance/package.json index b880e4ffd..21e3cc825 100644 --- a/instance/package.json +++ b/instance/package.json @@ -1,12 +1,12 @@ { "name": "@ngageoint/mage.dev-instance", - "version": "6.2.13", + "version": "6.3.0-beta.8", "description": "Assemble a MAGE Server deployment from the core service, the web-app, and selected plugins. This is primarily a development tool because the dependencies point to relative directories instead of production packages. This can however serve as a starting point to create a production MAGE instance package.json.", "scripts": { "start": "npm run start:dev-env", "start:dev": "NODE_PATH=./node_modules node ./node_modules/.bin/mage.service -C config.js", - "start:dev-env": "NODE_PATH=./node_modules node ./node_modules/.bin/mage.service", - "postinstall": "node ./init.js" + "postinstall": "node ./init.js", + "start:dev-env": "NODE_PATH=./node_modules node ./node_modules/.bin/mage.service" }, "repository": { "type": "git", @@ -25,12 +25,14 @@ }, "homepage": "https://github.com/ngageoint/mage-server", "dependencies": { - "@ngageoint/mage.arcgis": "../plugins/arcgis/service", - "@ngageoint/mage.arc-web": "../plugins/arcgis/web-app/dist/mage-arc-web", + "@ngageoint/mage.arcgis.service": "../plugins/arcgis/service", + "@ngageoint/mage.arcgis.web-app": "../plugins/arcgis/web-app/dist/main", "@ngageoint/mage.image.service": "../plugins/image/service", "@ngageoint/mage.nga-msi": "../plugins/nga-msi", "@ngageoint/mage.random": "../plugins/random", + "@ngageoint/mage.sftp.web": "../plugins/sftp/web/dist/main", + "@ngageoint/mage.sftp.service": "../plugins/sftp/service", "@ngageoint/mage.service": "../service", - "@ngageoint/mage.web-app": "../web-app/dist/app" + "@ngageoint/mage.web-app": "../web-app/dist" } -} +} \ No newline at end of file diff --git a/mongo-ssl-x509/0-init.sh b/mongo-ssl-x509/0-init.sh old mode 100644 new mode 100755 index cd6d61d4d..c4248d8ca --- a/mongo-ssl-x509/0-init.sh +++ b/mongo-ssl-x509/0-init.sh @@ -1,4 +1,5 @@ -user_server=$(openssl x509 -subject -nameopt RFC2253 -in /etc/ssl/certs/mage-server.crt.pem | head -1 | sed 's/^subject= //') -mongo --eval "db.getSiblingDB('\$external').createUser({ user: '$user_server', roles: [{ role: 'readWrite', db: 'magedb' }]})" +user_server=$(openssl x509 -subject -nameopt RFC2253 -in /etc/ssl/certs/mage-server.crt.pem | head -1 | sed 's/^subject= //' | sed 's/^subject=//') +echo 'Adding user to mongo' $user_server +mongo --eval "db.getSiblingDB('\$external').createUser({ user: '$user_server', roles: [{ role: 'readWrite', db: 'mage' }]})" diff --git a/mongo-ssl-x509/mongo.Dockerfile b/mongo-ssl-x509/mongo.Dockerfile index 81b3d347f..ede18027a 100644 --- a/mongo-ssl-x509/mongo.Dockerfile +++ b/mongo-ssl-x509/mongo.Dockerfile @@ -2,15 +2,18 @@ # From this directory, run # $ docker build -t mage-mongo:ssl -f mongo.Dockerfile . # $ docker run -d --name mage-mongo-ssl -p 27017:27017 mage-mongo:ssl +# You can verify mongo is up by running the following from this directory: +# $ mongosh --tls --tlsCertificateKeyFile ./server.pem --tlsCAFile ./ca.crt.pem --tlsAllowInvalidHostnames # You can then start a local MAGE server with proper environment configuration pointing to the certificates in this directory. -FROM mongo:3.6-jessie + +FROM mongo:4.2 COPY 0-init.sh /docker-entrypoint-initdb.d/ COPY ca.crt.pem /etc/ssl/certs/mage-ca.crt.pem COPY db.pem /etc/ssl/certs/mage-db.pem COPY server.crt.pem /etc/ssl/certs/mage-server.crt.pem -CMD [ "mongod", "--sslMode", "requireSSL", "--auth", \ - "--sslPEMKeyFile", "/etc/ssl/certs/mage-db.pem", \ - "--sslCAFile", "/etc/ssl/certs/mage-ca.crt.pem" ] \ No newline at end of file +CMD [ "mongod", "--tlsMode", "requireTLS", "--tlsAllowInvalidHostnames", \ + "--tlsCertificateKeyFile", "/etc/ssl/certs/mage-db.pem", \ + "--tlsCAFile", "/etc/ssl/certs/mage-ca.crt.pem" ] \ No newline at end of file diff --git a/mongo-ssl-x509/mongod.conf b/mongo-ssl-x509/mongod.conf index 375173c01..d9a5517c8 100644 --- a/mongo-ssl-x509/mongod.conf +++ b/mongo-ssl-x509/mongod.conf @@ -27,14 +27,14 @@ processManagement: net: port: 27017 # bindIp: 127.0.0.1 - ssl: - mode: requireSSL + tls: + mode: requireTLS CAFile: /etc/ssl/mage-ca.crt.pem - PEMKeyFile: /etc/ssl/mage-db.pem -# PEMKeyPassword: + certificateKeyFile: /etc/ssl/mage-db.pem + allowInvalidHostnames: true -security: - authorization: enabled +#security: +# authorization: enabled #operationProfiling: diff --git a/package-lock.json b/package-lock.json index b9dda2ce5..b10a0fa7c 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,15 +1,15 @@ { "name": "@ngageoint/mage.project", - "version": "6.2.13", + "version": "6.3.0-beta.7", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@ngageoint/mage.project", - "version": "6.2.13", + "version": "6.3.0-beta.7", "hasInstallScript": true, "devDependencies": { - "npm-run-all": "^4.1.5" + "npm-run-all": "4.1.5" } }, "node_modules/ansi-styles": { @@ -25,30 +25,34 @@ } }, "node_modules/array-buffer-byte-length": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.0.tgz", - "integrity": "sha512-LPuwb2P+NrQw3XhxGc36+XSvuBPopovXYTR9Ew++Du9Yb/bx5AzBfrIsBoj0EZUifjQU+sHL21sseZ3jerWO/A==", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.1.tgz", + "integrity": "sha512-ahC5W1xgou+KTXix4sAO8Ki12Q+jf4i0+tmk3sC+zgcynshkHxzpXdImBehiUYKKKDwvfFiJl1tZt6ewscS1Mg==", "dev": true, "dependencies": { - "call-bind": "^1.0.2", - "is-array-buffer": "^3.0.1" + "call-bind": "^1.0.5", + "is-array-buffer": "^3.0.4" + }, + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" } }, "node_modules/arraybuffer.prototype.slice": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.2.tgz", - "integrity": "sha512-yMBKppFur/fbHu9/6USUe03bZ4knMYiwFBcyiaXB8Go0qNehwX6inYPzK9U0NeQvGxKthcmHcaR8P5MStSRBAw==", + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.3.tgz", + "integrity": "sha512-bMxMKAjg13EBSVscxTaYA4mRc5t1UAXa2kXiGTNfZ079HIWXEkKmkgFrh/nJqamaLSrXO5H4WFFkPEaLJWbs3A==", "dev": true, "dependencies": { - "array-buffer-byte-length": "^1.0.0", - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1", - "get-intrinsic": "^1.2.1", - "is-array-buffer": "^3.0.2", + "array-buffer-byte-length": "^1.0.1", + "call-bind": "^1.0.5", + "define-properties": "^1.2.1", + "es-abstract": "^1.22.3", + "es-errors": "^1.2.1", + "get-intrinsic": "^1.2.3", + "is-array-buffer": "^3.0.4", "is-shared-array-buffer": "^1.0.2" }, "engines": { @@ -59,10 +63,13 @@ } }, "node_modules/available-typed-arrays": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.5.tgz", - "integrity": "sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==", + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.7.tgz", + "integrity": "sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==", "dev": true, + "dependencies": { + "possible-typed-array-names": "^1.0.0" + }, "engines": { "node": ">= 0.4" }, @@ -87,14 +94,19 @@ } }, "node_modules/call-bind": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.5.tgz", - "integrity": "sha512-C3nQxfFZxFRVoJoGKKI8y3MOEo129NQ+FgQ08iye+Mk4zNZZGdjfs06bVTr+DBSlA66Q2VEcMki/cUCP4SercQ==", + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.7.tgz", + "integrity": "sha512-GHTSNSYICQ7scH7sZ+M2rFopRoLh8t2bLSW6BbgrtLsahOIB5iyAVJf9GjWK3cYTDaMj4XdBpM1cA6pIS0Kv2w==", "dev": true, "dependencies": { + "es-define-property": "^1.0.0", + "es-errors": "^1.3.0", "function-bind": "^1.1.2", - "get-intrinsic": "^1.2.1", - "set-function-length": "^1.1.1" + "get-intrinsic": "^1.2.4", + "set-function-length": "^1.2.1" + }, + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" @@ -152,17 +164,20 @@ } }, "node_modules/define-data-property": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.1.tgz", - "integrity": "sha512-E7uGkTzkk1d0ByLeSc6ZsFS79Axg+m1P/VsgYsxHgiuc3tFSj+MjMIwe90FC4lOAZzNBdY7kkO2P2wKdsQ1vgQ==", + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.4.tgz", + "integrity": "sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==", "dev": true, "dependencies": { - "get-intrinsic": "^1.2.1", - "gopd": "^1.0.1", - "has-property-descriptors": "^1.0.0" + "es-define-property": "^1.0.0", + "es-errors": "^1.3.0", + "gopd": "^1.0.1" }, "engines": { "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, "node_modules/define-properties": { @@ -192,50 +207,52 @@ } }, "node_modules/es-abstract": { - "version": "1.22.3", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.22.3.tgz", - "integrity": "sha512-eiiY8HQeYfYH2Con2berK+To6GrK2RxbPawDkGq4UiCQQfZHb6wX9qQqkbpPqaxQFcl8d9QzZqo0tGE0VcrdwA==", - "dev": true, - "dependencies": { - "array-buffer-byte-length": "^1.0.0", - "arraybuffer.prototype.slice": "^1.0.2", - "available-typed-arrays": "^1.0.5", - "call-bind": "^1.0.5", - "es-set-tostringtag": "^2.0.1", + "version": "1.22.5", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.22.5.tgz", + "integrity": "sha512-oW69R+4q2wG+Hc3KZePPZxOiisRIqfKBVo/HLx94QcJeWGU/8sZhCvc829rd1kS366vlJbzBfXf9yWwf0+Ko7w==", + "dev": true, + "dependencies": { + "array-buffer-byte-length": "^1.0.1", + "arraybuffer.prototype.slice": "^1.0.3", + "available-typed-arrays": "^1.0.7", + "call-bind": "^1.0.7", + "es-define-property": "^1.0.0", + "es-errors": "^1.3.0", + "es-set-tostringtag": "^2.0.3", "es-to-primitive": "^1.2.1", "function.prototype.name": "^1.1.6", - "get-intrinsic": "^1.2.2", - "get-symbol-description": "^1.0.0", + "get-intrinsic": "^1.2.4", + "get-symbol-description": "^1.0.2", "globalthis": "^1.0.3", "gopd": "^1.0.1", - "has-property-descriptors": "^1.0.0", - "has-proto": "^1.0.1", + "has-property-descriptors": "^1.0.2", + "has-proto": "^1.0.3", "has-symbols": "^1.0.3", - "hasown": "^2.0.0", - "internal-slot": "^1.0.5", - "is-array-buffer": "^3.0.2", + "hasown": "^2.0.1", + "internal-slot": "^1.0.7", + "is-array-buffer": "^3.0.4", "is-callable": "^1.2.7", - "is-negative-zero": "^2.0.2", + "is-negative-zero": "^2.0.3", "is-regex": "^1.1.4", - "is-shared-array-buffer": "^1.0.2", + "is-shared-array-buffer": "^1.0.3", "is-string": "^1.0.7", - "is-typed-array": "^1.1.12", + "is-typed-array": "^1.1.13", "is-weakref": "^1.0.2", "object-inspect": "^1.13.1", "object-keys": "^1.1.1", - "object.assign": "^4.1.4", - "regexp.prototype.flags": "^1.5.1", - "safe-array-concat": "^1.0.1", - "safe-regex-test": "^1.0.0", + "object.assign": "^4.1.5", + "regexp.prototype.flags": "^1.5.2", + "safe-array-concat": "^1.1.0", + "safe-regex-test": "^1.0.3", "string.prototype.trim": "^1.2.8", "string.prototype.trimend": "^1.0.7", "string.prototype.trimstart": "^1.0.7", - "typed-array-buffer": "^1.0.0", - "typed-array-byte-length": "^1.0.0", - "typed-array-byte-offset": "^1.0.0", - "typed-array-length": "^1.0.4", + "typed-array-buffer": "^1.0.2", + "typed-array-byte-length": "^1.0.1", + "typed-array-byte-offset": "^1.0.2", + "typed-array-length": "^1.0.5", "unbox-primitive": "^1.0.2", - "which-typed-array": "^1.1.13" + "which-typed-array": "^1.1.14" }, "engines": { "node": ">= 0.4" @@ -244,15 +261,36 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/es-define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.0.tgz", + "integrity": "sha512-jxayLKShrEqqzJ0eumQbVhTYQM27CfT1T35+gCgDFoL82JLsXqTJ76zv6A0YLOgEnLUMvLzsDsGIrl8NFpT2gQ==", + "dev": true, + "dependencies": { + "get-intrinsic": "^1.2.4" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-errors": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz", + "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==", + "dev": true, + "engines": { + "node": ">= 0.4" + } + }, "node_modules/es-set-tostringtag": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.0.2.tgz", - "integrity": "sha512-BuDyupZt65P9D2D2vA/zqcI3G5xRsklm5N3xCwuiy+/vKy8i0ifdsQP1sLgO4tZDSCaQUSnmC48khknGMV3D2Q==", + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.0.3.tgz", + "integrity": "sha512-3T8uNMC3OQTHkFUsFq8r/BwAXLHvU/9O9mE0fBc/MY5iq/8H7ncvO947LmYA6ldWw9Uh8Yhf25zu6n7nML5QWQ==", "dev": true, "dependencies": { - "get-intrinsic": "^1.2.2", - "has-tostringtag": "^1.0.0", - "hasown": "^2.0.0" + "get-intrinsic": "^1.2.4", + "has-tostringtag": "^1.0.2", + "hasown": "^2.0.1" }, "engines": { "node": ">= 0.4" @@ -330,28 +368,33 @@ } }, "node_modules/get-intrinsic": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.2.tgz", - "integrity": "sha512-0gSo4ml/0j98Y3lngkFEot/zhiCeWsbYIlZ+uZOVgzLyLaUw7wxUL+nCTP0XJvJg1AXulJRI3UJi8GsbDuxdGA==", + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.4.tgz", + "integrity": "sha512-5uYhsJH8VJBTv7oslg4BznJYhDoRI6waYCxMmCdnTrcCrHA/fCFKoTFz2JKKE0HdDFUF7/oQuhzumXJK7paBRQ==", "dev": true, "dependencies": { + "es-errors": "^1.3.0", "function-bind": "^1.1.2", "has-proto": "^1.0.1", "has-symbols": "^1.0.3", "hasown": "^2.0.0" }, + "engines": { + "node": ">= 0.4" + }, "funding": { "url": "https://github.com/sponsors/ljharb" } }, "node_modules/get-symbol-description": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.0.tgz", - "integrity": "sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.2.tgz", + "integrity": "sha512-g0QYk1dZBxGwk+Ngc+ltRH2IBp2f7zBkBMBJZCDerh6EhlhSR6+9irMCuT/09zD6qkarHUSn529sK/yL4S27mg==", "dev": true, "dependencies": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.1.1" + "call-bind": "^1.0.5", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.4" }, "engines": { "node": ">= 0.4" @@ -412,21 +455,21 @@ } }, "node_modules/has-property-descriptors": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.1.tgz", - "integrity": "sha512-VsX8eaIewvas0xnvinAe9bw4WfIeODpGYikiWYLH+dma0Jw6KHYqWiWfhQlgOVK8D6PvjubK5Uc4P0iIhIcNVg==", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz", + "integrity": "sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==", "dev": true, "dependencies": { - "get-intrinsic": "^1.2.2" + "es-define-property": "^1.0.0" }, "funding": { "url": "https://github.com/sponsors/ljharb" } }, "node_modules/has-proto": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.1.tgz", - "integrity": "sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg==", + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.3.tgz", + "integrity": "sha512-SJ1amZAJUiZS+PhsVLf5tGydlaVB8EdFpaSO4gmiUKUOxk8qzn5AIy4ZeJUmh22znIdk/uMAUT2pl3FxzVUH+Q==", "dev": true, "engines": { "node": ">= 0.4" @@ -448,12 +491,12 @@ } }, "node_modules/has-tostringtag": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz", - "integrity": "sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.2.tgz", + "integrity": "sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==", "dev": true, "dependencies": { - "has-symbols": "^1.0.2" + "has-symbols": "^1.0.3" }, "engines": { "node": ">= 0.4" @@ -463,9 +506,9 @@ } }, "node_modules/hasown": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.0.tgz", - "integrity": "sha512-vUptKVTpIJhcczKBbgnS+RtcuYMB8+oNzPK2/Hp3hanz8JmpATdmmgLgSaadVREkDm+e2giHwY3ZRkyjSIDDFA==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.1.tgz", + "integrity": "sha512-1/th4MHjnwncwXsIW6QMzlvYL9kG5e/CpVvLRZe4XPa8TOUNbCELqmvhDmnkNsAjwaG4+I8gJJL0JBvTTLO9qA==", "dev": true, "dependencies": { "function-bind": "^1.1.2" @@ -481,12 +524,12 @@ "dev": true }, "node_modules/internal-slot": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.6.tgz", - "integrity": "sha512-Xj6dv+PsbtwyPpEflsejS+oIZxmMlV44zAhG479uYu89MsjcYOhCFnNyKrkJrihbsiasQyY0afoCl/9BLR65bg==", + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.7.tgz", + "integrity": "sha512-NGnrKwXzSms2qUUih/ILZ5JBqNTSa1+ZmP6flaIp6KmSElgE9qdndzS3cqjrDovwFdmwsGsLdeFgB6suw+1e9g==", "dev": true, "dependencies": { - "get-intrinsic": "^1.2.2", + "es-errors": "^1.3.0", "hasown": "^2.0.0", "side-channel": "^1.0.4" }, @@ -495,14 +538,16 @@ } }, "node_modules/is-array-buffer": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.2.tgz", - "integrity": "sha512-y+FyyR/w8vfIRq4eQcM1EYgSTnmHXPqaF+IgzgraytCFq5Xh8lllDVmAZolPJiZttZLeFSINPYMaEJ7/vWUa1w==", + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.4.tgz", + "integrity": "sha512-wcjaerHw0ydZwfhiKbXJWLDY8A7yV7KhjQOpb83hGgGfId/aQa4TOvwyzn2PuswW2gPCYEL/nEAiSVpdOj1lXw==", "dev": true, "dependencies": { "call-bind": "^1.0.2", - "get-intrinsic": "^1.2.0", - "is-typed-array": "^1.1.10" + "get-intrinsic": "^1.2.1" + }, + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" @@ -582,9 +627,9 @@ } }, "node_modules/is-negative-zero": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.2.tgz", - "integrity": "sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==", + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.3.tgz", + "integrity": "sha512-5KoIu2Ngpyek75jXodFvnafB6DJgr3u8uuK0LEZJjrU19DrMD3EVERaR8sjz8CCGgpZvxPl9SuE1GMVPFHx1mw==", "dev": true, "engines": { "node": ">= 0.4" @@ -625,12 +670,15 @@ } }, "node_modules/is-shared-array-buffer": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz", - "integrity": "sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==", + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.3.tgz", + "integrity": "sha512-nA2hv5XIhLR3uVzDDfCIknerhx8XUKnstuOERPNNIinXG7v9u+ohXF67vxm4TPTEPU6lm61ZkwP3c9PCB97rhg==", "dev": true, "dependencies": { - "call-bind": "^1.0.2" + "call-bind": "^1.0.7" + }, + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" @@ -667,12 +715,12 @@ } }, "node_modules/is-typed-array": { - "version": "1.1.12", - "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.12.tgz", - "integrity": "sha512-Z14TF2JNG8Lss5/HMqt0//T9JeHXttXy5pH/DBU4vi98ozO2btxzq9MwYDZYnKwU8nRsz/+GVFVRDq3DkVuSPg==", + "version": "1.1.13", + "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.13.tgz", + "integrity": "sha512-uZ25/bUAlUY5fR4OKT4rZQEBrzQWYV9ZJYGGsUmEJ6thodVJ1HX64ePQ6Z0qPWP+m+Uq6e9UugrE38jeYsDSMw==", "dev": true, "dependencies": { - "which-typed-array": "^1.1.11" + "which-typed-array": "^1.1.14" }, "engines": { "node": ">= 0.4" @@ -887,6 +935,15 @@ "node": ">=4" } }, + "node_modules/possible-typed-array-names": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/possible-typed-array-names/-/possible-typed-array-names-1.0.0.tgz", + "integrity": "sha512-d7Uw+eZoloe0EHDIYoe+bQ5WXnGMOpmiZFTuMWCwpjzzkL2nTjcKiAk4hh8TjnGye2TwWOk3UXucZ+3rbmBa8Q==", + "dev": true, + "engines": { + "node": ">= 0.4" + } + }, "node_modules/read-pkg": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-3.0.0.tgz", @@ -902,14 +959,15 @@ } }, "node_modules/regexp.prototype.flags": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.1.tgz", - "integrity": "sha512-sy6TXMN+hnP/wMy+ISxg3krXx7BAtWVO4UouuCN/ziM9UEne0euamVNafDfvC83bRNr95y0V5iijeDQFUNpvrg==", + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.2.tgz", + "integrity": "sha512-NcDiDkTLuPR+++OCKB0nWafEmhg/Da8aUPLPMQbK+bxKKCm1/S5he+AqYa4PlMCVBalb4/yxIRub6qkEx5yJbw==", "dev": true, "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "set-function-name": "^2.0.0" + "call-bind": "^1.0.6", + "define-properties": "^1.2.1", + "es-errors": "^1.3.0", + "set-function-name": "^2.0.1" }, "engines": { "node": ">= 0.4" @@ -936,13 +994,13 @@ } }, "node_modules/safe-array-concat": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/safe-array-concat/-/safe-array-concat-1.0.1.tgz", - "integrity": "sha512-6XbUAseYE2KtOuGueyeobCySj9L4+66Tn6KQMOPQJrAJEowYKW/YR/MGJZl7FdydUdaFu4LYyDZjxf4/Nmo23Q==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/safe-array-concat/-/safe-array-concat-1.1.0.tgz", + "integrity": "sha512-ZdQ0Jeb9Ofti4hbt5lX3T2JcAamT9hfzYU1MNB+z/jaEbB6wfFfPIR/zEORmZqobkCCJhSjodobH6WHNmJ97dg==", "dev": true, "dependencies": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.2.1", + "call-bind": "^1.0.5", + "get-intrinsic": "^1.2.2", "has-symbols": "^1.0.3", "isarray": "^2.0.5" }, @@ -954,15 +1012,18 @@ } }, "node_modules/safe-regex-test": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.0.0.tgz", - "integrity": "sha512-JBUUzyOgEwXQY1NuPtvcj/qcBDbDmEvWufhlnXZIm75DEHp+afM1r1ujJpJsV/gSM4t59tpDyPi1sd6ZaPFfsA==", + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.0.3.tgz", + "integrity": "sha512-CdASjNJPvRa7roO6Ra/gLYBTzYzzPyyBXxIMdGW3USQLyjWEls2RgW5UBTXaQVp+OrpeCK3bLem8smtmheoRuw==", "dev": true, "dependencies": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.1.3", + "call-bind": "^1.0.6", + "es-errors": "^1.3.0", "is-regex": "^1.1.4" }, + "engines": { + "node": ">= 0.4" + }, "funding": { "url": "https://github.com/sponsors/ljharb" } @@ -977,29 +1038,32 @@ } }, "node_modules/set-function-length": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/set-function-length/-/set-function-length-1.1.1.tgz", - "integrity": "sha512-VoaqjbBJKiWtg4yRcKBQ7g7wnGnLV3M8oLvVWwOk2PdYY6PEFegR1vezXR0tw6fZGF9csVakIRjrJiy2veSBFQ==", + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/set-function-length/-/set-function-length-1.2.1.tgz", + "integrity": "sha512-j4t6ccc+VsKwYHso+kElc5neZpjtq9EnRICFZtWyBsLojhmeF/ZBd/elqm22WJh/BziDe/SBiOeAt0m2mfLD0g==", "dev": true, "dependencies": { - "define-data-property": "^1.1.1", - "get-intrinsic": "^1.2.1", + "define-data-property": "^1.1.2", + "es-errors": "^1.3.0", + "function-bind": "^1.1.2", + "get-intrinsic": "^1.2.3", "gopd": "^1.0.1", - "has-property-descriptors": "^1.0.0" + "has-property-descriptors": "^1.0.1" }, "engines": { "node": ">= 0.4" } }, "node_modules/set-function-name": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/set-function-name/-/set-function-name-2.0.1.tgz", - "integrity": "sha512-tMNCiqYVkXIZgc2Hnoy2IvC/f8ezc5koaRFkCjrpWzGpCd3qbZXPzVy9MAZzK1ch/X0jvSkojys3oqJN0qCmdA==", + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/set-function-name/-/set-function-name-2.0.2.tgz", + "integrity": "sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ==", "dev": true, "dependencies": { - "define-data-property": "^1.0.1", + "define-data-property": "^1.1.4", + "es-errors": "^1.3.0", "functions-have-names": "^1.2.3", - "has-property-descriptors": "^1.0.0" + "has-property-descriptors": "^1.0.2" }, "engines": { "node": ">= 0.4" @@ -1036,14 +1100,18 @@ } }, "node_modules/side-channel": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", - "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.6.tgz", + "integrity": "sha512-fDW/EZ6Q9RiO8eFG8Hj+7u/oW+XrPTIChwCOM2+th2A6OblDtYYIpve9m+KvI9Z4C9qSEXlaGR6bTEYHReuglA==", "dev": true, "dependencies": { - "call-bind": "^1.0.0", - "get-intrinsic": "^1.0.2", - "object-inspect": "^1.9.0" + "call-bind": "^1.0.7", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.4", + "object-inspect": "^1.13.1" + }, + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" @@ -1060,9 +1128,9 @@ } }, "node_modules/spdx-exceptions": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz", - "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==", + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.5.0.tgz", + "integrity": "sha512-PiU42r+xO4UbUS1buo3LPJkjlO7430Xn5SVAhdpzzsPHsjbYVflnnFdATgabnLude+Cqu25p6N+g2lw/PFsa4w==", "dev": true }, "node_modules/spdx-expression-parse": { @@ -1076,9 +1144,9 @@ } }, "node_modules/spdx-license-ids": { - "version": "3.0.16", - "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.16.tgz", - "integrity": "sha512-eWN+LnM3GR6gPu35WxNgbGl8rmY1AEmoMDvL/QD6zYmPWgywxWqJWNdLGT+ke8dKNWrcYgYjPpG5gbTfghP8rw==", + "version": "3.0.17", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.17.tgz", + "integrity": "sha512-sh8PWc/ftMqAAdFiBu6Fy6JUOYjqDJBJvIhpfDMyHrr0Rbp5liZqd4TjtQ/RgfLjKFZb+LMx5hpml5qOWy0qvg==", "dev": true }, "node_modules/string.prototype.padend": { @@ -1177,29 +1245,30 @@ } }, "node_modules/typed-array-buffer": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/typed-array-buffer/-/typed-array-buffer-1.0.0.tgz", - "integrity": "sha512-Y8KTSIglk9OZEr8zywiIHG/kmQ7KWyjseXs1CbSo8vC42w7hg2HgYTxSWwP0+is7bWDc1H+Fo026CpHFwm8tkw==", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/typed-array-buffer/-/typed-array-buffer-1.0.2.tgz", + "integrity": "sha512-gEymJYKZtKXzzBzM4jqa9w6Q1Jjm7x2d+sh19AdsD4wqnMPDYyvwpsIc2Q/835kHuo3BEQ7CjelGhfTsoBb2MQ==", "dev": true, "dependencies": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.2.1", - "is-typed-array": "^1.1.10" + "call-bind": "^1.0.7", + "es-errors": "^1.3.0", + "is-typed-array": "^1.1.13" }, "engines": { "node": ">= 0.4" } }, "node_modules/typed-array-byte-length": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/typed-array-byte-length/-/typed-array-byte-length-1.0.0.tgz", - "integrity": "sha512-Or/+kvLxNpeQ9DtSydonMxCx+9ZXOswtwJn17SNLvhptaXYDJvkFFP5zbfU/uLmvnBJlI4yrnXRxpdWH/M5tNA==", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/typed-array-byte-length/-/typed-array-byte-length-1.0.1.tgz", + "integrity": "sha512-3iMJ9q0ao7WE9tWcaYKIptkNBuOIcZCCT0d4MRvuuH88fEoEH62IuQe0OtraD3ebQEoTRk8XCBoknUNc1Y67pw==", "dev": true, "dependencies": { - "call-bind": "^1.0.2", + "call-bind": "^1.0.7", "for-each": "^0.3.3", - "has-proto": "^1.0.1", - "is-typed-array": "^1.1.10" + "gopd": "^1.0.1", + "has-proto": "^1.0.3", + "is-typed-array": "^1.1.13" }, "engines": { "node": ">= 0.4" @@ -1209,16 +1278,17 @@ } }, "node_modules/typed-array-byte-offset": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/typed-array-byte-offset/-/typed-array-byte-offset-1.0.0.tgz", - "integrity": "sha512-RD97prjEt9EL8YgAgpOkf3O4IF9lhJFr9g0htQkm0rchFp/Vx7LW5Q8fSXXub7BXAODyUQohRMyOc3faCPd0hg==", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/typed-array-byte-offset/-/typed-array-byte-offset-1.0.2.tgz", + "integrity": "sha512-Ous0vodHa56FviZucS2E63zkgtgrACj7omjwd/8lTEMEPFFyjfixMZ1ZXenpgCFBBt4EC1J2XsyVS2gkG0eTFA==", "dev": true, "dependencies": { - "available-typed-arrays": "^1.0.5", - "call-bind": "^1.0.2", + "available-typed-arrays": "^1.0.7", + "call-bind": "^1.0.7", "for-each": "^0.3.3", - "has-proto": "^1.0.1", - "is-typed-array": "^1.1.10" + "gopd": "^1.0.1", + "has-proto": "^1.0.3", + "is-typed-array": "^1.1.13" }, "engines": { "node": ">= 0.4" @@ -1228,14 +1298,20 @@ } }, "node_modules/typed-array-length": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/typed-array-length/-/typed-array-length-1.0.4.tgz", - "integrity": "sha512-KjZypGq+I/H7HI5HlOoGHkWUUGq+Q0TPhQurLbyrVrvnKTBgzLhIJ7j6J/XTQOi0d1RjyZ0wdas8bKs2p0x3Ng==", + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/typed-array-length/-/typed-array-length-1.0.5.tgz", + "integrity": "sha512-yMi0PlwuznKHxKmcpoOdeLwxBoVPkqZxd7q2FgMkmD3bNwvF5VW0+UlUQ1k1vmktTu4Yu13Q0RIxEP8+B+wloA==", "dev": true, "dependencies": { - "call-bind": "^1.0.2", + "call-bind": "^1.0.7", "for-each": "^0.3.3", - "is-typed-array": "^1.1.9" + "gopd": "^1.0.1", + "has-proto": "^1.0.3", + "is-typed-array": "^1.1.13", + "possible-typed-array-names": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" @@ -1295,16 +1371,16 @@ } }, "node_modules/which-typed-array": { - "version": "1.1.13", - "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.13.tgz", - "integrity": "sha512-P5Nra0qjSncduVPEAr7xhoF5guty49ArDTwzJ/yNuPIbZppyRxFQsRCWrocxIY+CnMVG+qfbU2FmDKyvSGClow==", + "version": "1.1.14", + "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.14.tgz", + "integrity": "sha512-VnXFiIW8yNn9kIHN88xvZ4yOWchftKDsRJ8fEPacX/wl1lOvBrhsJ/OeJCXq7B0AaijRuqgzSKalJoPk+D8MPg==", "dev": true, "dependencies": { - "available-typed-arrays": "^1.0.5", - "call-bind": "^1.0.4", + "available-typed-arrays": "^1.0.6", + "call-bind": "^1.0.5", "for-each": "^0.3.3", "gopd": "^1.0.1", - "has-tostringtag": "^1.0.0" + "has-tostringtag": "^1.0.1" }, "engines": { "node": ">= 0.4" diff --git a/package.json b/package.json index 20aabd8c6..51def8a5e 100644 --- a/package.json +++ b/package.json @@ -2,7 +2,7 @@ "name": "@ngageoint/mage.project", "description": "This is the root package definition for the mage-server monorepo.", "private": true, - "version": "6.2.13", + "version": "6.3.0-beta.8", "files": [], "scripts": { "postinstall": "npm-run-all service:ci web-app:ci image.service:ci nga-msi:ci", @@ -33,7 +33,7 @@ "start-web": "npm run web-app:debug" }, "devDependencies": { - "npm-run-all": "^4.1.5" + "npm-run-all": "4.1.5" }, "dependencies": {} -} +} \ No newline at end of file diff --git a/plugins/README.md b/plugins/README.md index 1ad668943..2a6e7b1f3 100644 --- a/plugins/README.md +++ b/plugins/README.md @@ -130,7 +130,7 @@ service and open source plugins specify. Finally, you can start writing the code for your plugin. Begin with a module file that exports the main `InitPluginHook`. This will likely be the [main module](https://docs.npmjs.com/cli/v8/configuring-npm/package-json#main) of your plugin package. If you configured TypeScript to transpile from the `src` directory and output to the `lib` -directory as described above, create the file `src/index.ts`, and add the entry ``"main": "lib/index.js"` to +directory as described above, create the file `src/index.ts`, and add the entry `"main": "lib/index.js"` to `package.json`. In `src/index.ts`, add the following. ```typescript export = { @@ -163,6 +163,16 @@ command to create a package tarball of your plugin. This will create a file lik Copy the package tarball to a persistent location, like where you have [installed](../README.md#install-mage-server-packages) the MAGE server packages. +#### Install the plugin + +You install plugin packages as dependencies of your[MAGE instance](../README.md#install-mage-server-packages) package, +alongside the MAGE core packages. Assuming you instance package resides in a directory called `mage`, copy your plugin +package tarball to the `mage` directory. Then, from the `mage` directory, run the following. +``` +npm install --omit dev ./examples-mage-service-plugins-1.0.0.tgz +``` +Your plugin package files should now be present in `mage/node_modules/@examples/mage-service-plugins`. + #### Enable the plugin To enable your plugin, add the ID of the module that exports your `PluginInitHook` to the `servicePlugins` array in your [configuration object](../README.md#configuration-merging). You can do this a few ways. @@ -253,4 +263,45 @@ to also include an entry point to allow the MAGE service to load the `package.js ## Web UI plugins -More to come soon. \ No newline at end of file +MAGE provides a library with [Angular CLI ]() integration to help create plugin packages for the MAGE web app. +Below are the basic steps to create a MAGE web UI plugin. + +1. Initialize an Angular workspace. + ```bash + mkdir example + cd example + git init . # if you want version control + npx @angular/cli@14 new --directory . --create-application false @example/mage-plugins.workspace + ``` +1. Add the MAGE web core library. + ```bash + npm run ng -- add @ngageoint/mage.web-core-lib + ``` +1. Generate a new MAGE web UI plugin library. + ```bash + npm run ng -- generate @ngageoint/mage.web-core-lib:plugin-library @example/mage-plugins.plugin1 + ``` + That creates a new Angular library project in `projects/example/mage-plugins.plugin1` +1. Add content to your plugin library. +1. Build your plugin bundle. + ```bash + npm run ng -- build @example/mage-plugins.plugin1 + ``` + The output from the build will be in `dist/example/mage-plugins.plugin1`. +1. Package your plugin. + ``` + npm pack dist/example/mage-plugins.plugin1 + ``` + Take note that you must create the package from the project's output subdirectory of the `dist` directory, not from + the project root like a typical Node.js project. This will create an NPM package tarball like + `example-mage-plugins.plugin1-0.0.1.tgz`, which contains the AMD module bundle that the MAGE web app can load. You + can publish this tarball to NPM or install the tarball directly to your MAGE instance. +1. Install your plugin to your MAGE instance. + TODO: ref above + + +### Hooks +See the available plugin [hook definitions](../web-app/projects/core-lib/plugin/plugin.model.ts). + +### Testing +TODO: create a showcase app; run a dev server \ No newline at end of file diff --git a/plugins/arcgis/README.md b/plugins/arcgis/README.md new file mode 100644 index 000000000..0550ca031 --- /dev/null +++ b/plugins/arcgis/README.md @@ -0,0 +1,44 @@ +# Build with arcgis plugin +> This plugin allows for MAGE observation data to be passed to an Arcgis feature service. Follow the instructions in the root README. + +## Build ArcGIS plugin +- After completing the web-app package install and build in the 'Building from source' section: + +```bash +cd plugins/arcgis/service +npm ci +npm link ../../../service # **IMPORTANT** see root README +npm run build +``` +```bash +cd plugins/arcgis/web-app +npm ci +npm link ../../../web-app # **IMPORTANT** see root README +npm run build +``` + +- Continue to install dependencies in the `instance` package as instructed in the root README. + +## Setting up OAuth for Feature Layers + +### [ArcGIS](`https://arcgis.geointnext.com/arcgis/home/content.html`) Website +- *Content* -> *New Item (button)* -> *Developer Credentials* + + *Redirect URLs* + - `https://{mage-server-url}@ngageoint/mage.arcgis.service/oauth/authenticate` + + Mage Server URL example: `magedevd.geointnext.com/plugins/` + + *Application Environment*: can be left as *Multiple* + + *URL*: optional +- After creating the new OAuth *app*/credentials + + Write down ***Client ID*** +- *Content* -> any *Feature Layer* + + Write down ***URL*** (bottom-right) + +### Mage ***Admin*** (shield icon) +- ArcGIS *tab* -> *Feature Layers* -> *Add Feature Service* + + *URL*: copied from *Feature Layer* above + + *Authentication*: *OAuth* + - *Client Id*: copied from *OAuth Client Id* above + + Click *Create Feature* +- You will know it works if it redirects: + + *Request for Permission* pop-up with the new OAuth you just created. + + click *Allow* -> it will redirect *back* to the Mage server \ No newline at end of file diff --git a/plugins/arcgis/service/eslint.config.mjs b/plugins/arcgis/service/eslint.config.mjs new file mode 100644 index 000000000..732650cf6 --- /dev/null +++ b/plugins/arcgis/service/eslint.config.mjs @@ -0,0 +1,27 @@ +import pluginJs from "@eslint/js"; +import tseslint from "typescript-eslint"; +import jsdoc from 'eslint-plugin-jsdoc'; + +/** @type {import('eslint').Linter.Config[]} */ +export default [ + { + files: ["**/*.{js,mjs,cjs,ts}"], + plugins: { jsdoc }, + rules: { + "jsdoc/require-description": "warn", + "semi": ["error", "always"] + }, + "overrides": [ + { + // enable the rule specifically for TypeScript files + "files": ["*.ts", "*.tsx"], + "rules": { + "@typescript-eslint/no-explicit-any": "off" + } + } + ] + }, + pluginJs.configs.recommended, + ...tseslint.configs.recommended, + jsdoc.configs['flat/recommended'], +]; \ No newline at end of file diff --git a/plugins/arcgis/service/package-lock.json b/plugins/arcgis/service/package-lock.json index 89c5f61ac..5b8141372 100644 --- a/plugins/arcgis/service/package-lock.json +++ b/plugins/arcgis/service/package-lock.json @@ -1,4894 +1,5358 @@ { - "name": "@ngageoint/mage.arcgis", + "name": "@ngageoint/mage.arcgis.service", "version": "1.0.0", - "lockfileVersion": 2, + "lockfileVersion": 3, "requires": true, "packages": { "": { - "name": "@ngageoint/mage.arcgis", + "name": "@ngageoint/mage.arcgis.service", "version": "1.0.0", "license": "Apache-2.0", "dependencies": { + "@esri/arcgis-rest-feature-service": "4.1.0", + "@esri/arcgis-rest-request": "4.3.0", "@terraformer/arcgis": "2.1.2", - "@types/geojson": "^7946.0.7", - "form-data": "^4.0.0" + "form-data": "4.0.2" }, "devDependencies": { - "@types/express": "^4.17.21", - "@types/jest": "^26.0.3", - "cpy-cli": "^3.1.1", - "jest": "^26.1.0", - "nock": "^12.0.3", - "npm-run-all": "^4.1.5", - "ts-jest": "^26.1.1", - "typescript": "^4.6.3" + "@eslint/js": "9.24.0", + "@types/express": "4.17.21", + "@types/geojson": "7946.0.16", + "@types/jest": "29.5.14", + "eslint": "9.24.0", + "eslint-plugin-jsdoc": "50.6.9", + "jest": "29.7.0", + "nock": "12.0.3", + "ts-jest": "29.2.6", + "typescript": "5.8.2", + "typescript-eslint": "8.29.1" }, "peerDependencies": { - "@ngageoint/mage.service": "^6.2.0-beta", - "express": "^4.17.0" + "@ngageoint/mage.service": ">=6.3.0-beta.8", + "express": "4.21.2" } }, - "../../../service": { - "name": "@ngageoint/mage.service", - "version": "6.2.11", - "peer": true, + "node_modules/@ampproject/remapping": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.3.0.tgz", + "integrity": "sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==", + "dev": true, "dependencies": { - "@ngageoint/geopackage": "^4.2.6", - "@node-saml/passport-saml": "^4.0.4", - "@turf/centroid": "^6.5.0", - "@turf/kinks": "^6.5.0", - "@types/geojson": "^7946.0.7", - "@types/json-schema": "^7.0.11", - "@types/mime-types": "^2.1.1", - "@xmldom/xmldom": "^0.8.10", - "adm-zip": "0.4.9", - "archiver": "5.3.0", - "async": "^3.2.4", - "base-64": "1.0.0", - "better-sqlite3": "^8.6.0", - "body-parser": "~1.19.0", - "busboy": "^1.6.0", - "cfenv": "1.0.3", - "commander": "^8.2.0", - "dbf": "0.1.0", - "express": "^4.18.2", - "express-session": "1.17.2", - "file-type": "^16.5.4", - "fs-extra": "4.0.3", - "geojson": "^0.5.0", - "geojson-validation": "^1.0.2", - "gm": "1.23.1", - "json2csv": "4.5.1", - "jsonwebtoken": "^9.0.2", - "lodash": "^4.17.21", - "mgrs": "^1.0.0", - "mime-types": "^2.1.35", - "moment": "^2.29.4", - "mongodb-migrations": "0.8.5", - "mongoose": "^4.13.21", - "mongoose-beautiful-unique-validation": "7.1.1", - "multer": "^1.4.5-lts.1", - "node-fetch": "^2.6.0", - "passport": "^0.6.0", - "passport-anonymous": "1.0.1", - "passport-http-bearer": "1.0.1", - "passport-ldapauth": "^3.0.1", - "passport-local": "1.0.0", - "passport-oauth2": "1.6.0", - "passport-openidconnect": "0.1.1", - "pem-jwk": "1.5.1", - "pem2jwk": "1.0.2", - "pug": "^3.0.2", - "rfc5646": "^3.0.0", - "superagent": "^8.0.0", - "svg-captcha": "^1.4.0", - "uniqid": "^5.2.0", - "walk": "2.3.4", - "winston": "1.0.1", - "wkx": "0.4.8", - "wms-capabilities": "^0.4.0", - "xmlbuilder2": "3.0.2", - "xpath": "0.0.23", - "yaml": "^1.8.2" - }, - "bin": { - "mage.service": "bin/mage.service.js" + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.24" }, - "devDependencies": { - "@fluffy-spoon/substitute": "^1.196.0", - "@types/archiver": "^5.3.4", - "@types/async": "^3.0.5", - "@types/bson": "^1.0.11", - "@types/busboy": "^1.5.0", - "@types/chai": "^4.2.19", - "@types/chai-as-promised": "^7.1.2", - "@types/deep-equal": "^1.0.1", - "@types/express": "^4.17.19", - "@types/express-serve-static-core": "~4.17.0", - "@types/fs-extra": "^8.0.1", - "@types/json2csv": "~4.5.0", - "@types/lodash": "^4.14.155", - "@types/mocha": "^7.0.2", - "@types/mongodb": "^3.6.20", - "@types/mongoose": "^4.7.56", - "@types/multer": "^1.4.7", - "@types/node": "^18.18.4", - "@types/node-fetch": "^2.5.4", - "@types/passport": "^1.0.3", - "@types/sinon": "^9.0.4", - "@types/sinon-chai": "^3.2.4", - "@types/superagent": "^8.1.3", - "@types/supertest": "^2.0.16", - "@types/uniqid": "^5.2.0", - "@typescript-eslint/eslint-plugin": "^6.7.5", - "@typescript-eslint/parser": "^6.7.5", - "ajv": "^6.11.0", - "assert": "2.0.0", - "axios": "^1.6.5", - "chai": "^4.3.6", - "chai-as-promised": "^7.1.1", - "coveralls": "3.0.4", - "cpy-cli": "^5.0.0", - "deep-equal": "^2.0.2", - "eslint": "^8.51.0", - "eslint-config-prettier": "^6.9.0", - "eslint-plugin-prettier": "^3.1.2", - "iconv-lite": "^0.5.1", - "jszip": "^3.7.1", - "mocha": "^7.1.1", - "mock-fs": "4.13.0", - "mongodb-memory-server": "^9.1.3", - "nock": "^11.7.2", - "npm-run-all": "^4.1.5", - "nyc": "^14.1.1", - "openapi-enforcer": "1.15.5", - "prettier": "^1.19.1", - "proxyquire": "2.1.3", - "rimraf": "^5.0.5", - "sinon": "7.5.0", - "sinon-chai": "3.3.0", - "sinon-mongoose": "2.3.0", - "supertest": "^6.3.3", - "ts-mockito": "^2.5.0", - "typescript": "~4.6.0", - "wtfnode": "^0.8.4" - }, - "engines": { - "node": ">= 16.x", - "npm": ">= 8.x" - } - }, - "../../../service/node_modules/@aws-crypto/ie11-detection": { - "version": "2.0.2", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "dependencies": { - "tslib": "^1.11.1" + "engines": { + "node": ">=6.0.0" } }, - "../../../service/node_modules/@aws-crypto/ie11-detection/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD", - "optional": true, - "peer": true - }, - "../../../service/node_modules/@aws-crypto/sha256-browser": { - "version": "2.0.0", - "license": "Apache-2.0", - "optional": true, - "peer": true, + "node_modules/@babel/code-frame": { + "version": "7.26.2", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.26.2.tgz", + "integrity": "sha512-RJlIHRueQgwWitWgF8OdFYGZX328Ax5BCemNGlqHfplnRT9ESi8JkFlvaVYbS+UubVY6dpv87Fs2u5M29iNFVQ==", + "dev": true, "dependencies": { - "@aws-crypto/ie11-detection": "^2.0.0", - "@aws-crypto/sha256-js": "^2.0.0", - "@aws-crypto/supports-web-crypto": "^2.0.0", - "@aws-crypto/util": "^2.0.0", - "@aws-sdk/types": "^3.1.0", - "@aws-sdk/util-locate-window": "^3.0.0", - "@aws-sdk/util-utf8-browser": "^3.0.0", - "tslib": "^1.11.1" + "@babel/helper-validator-identifier": "^7.25.9", + "js-tokens": "^4.0.0", + "picocolors": "^1.0.0" + }, + "engines": { + "node": ">=6.9.0" } }, - "../../../service/node_modules/@aws-crypto/sha256-browser/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD", - "optional": true, - "peer": true - }, - "../../../service/node_modules/@aws-crypto/sha256-js": { - "version": "2.0.0", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "dependencies": { - "@aws-crypto/util": "^2.0.0", - "@aws-sdk/types": "^3.1.0", - "tslib": "^1.11.1" + "node_modules/@babel/compat-data": { + "version": "7.26.8", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.26.8.tgz", + "integrity": "sha512-oH5UPLMWR3L2wEFLnFJ1TZXqHufiTKAiLfqw5zkhS4dKXLJ10yVztfil/twG8EDTA4F/tvVNw9nOl4ZMslB8rQ==", + "dev": true, + "engines": { + "node": ">=6.9.0" } }, - "../../../service/node_modules/@aws-crypto/sha256-js/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD", - "optional": true, - "peer": true - }, - "../../../service/node_modules/@aws-crypto/supports-web-crypto": { - "version": "2.0.2", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "dependencies": { - "tslib": "^1.11.1" + "node_modules/@babel/core": { + "version": "7.26.10", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.26.10.tgz", + "integrity": "sha512-vMqyb7XCDMPvJFFOaT9kxtiRh42GwlZEg1/uIgtZshS5a/8OaduUfCi7kynKgc3Tw/6Uo2D+db9qBttghhmxwQ==", + "dev": true, + "dependencies": { + "@ampproject/remapping": "^2.2.0", + "@babel/code-frame": "^7.26.2", + "@babel/generator": "^7.26.10", + "@babel/helper-compilation-targets": "^7.26.5", + "@babel/helper-module-transforms": "^7.26.0", + "@babel/helpers": "^7.26.10", + "@babel/parser": "^7.26.10", + "@babel/template": "^7.26.9", + "@babel/traverse": "^7.26.10", + "@babel/types": "^7.26.10", + "convert-source-map": "^2.0.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.2", + "json5": "^2.2.3", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/babel" } }, - "../../../service/node_modules/@aws-crypto/supports-web-crypto/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD", - "optional": true, - "peer": true - }, - "../../../service/node_modules/@aws-crypto/util": { - "version": "2.0.2", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "dependencies": { - "@aws-sdk/types": "^3.110.0", - "@aws-sdk/util-utf8-browser": "^3.0.0", - "tslib": "^1.11.1" + "node_modules/@babel/core/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" } }, - "../../../service/node_modules/@aws-crypto/util/node_modules/tslib": { - "version": "1.14.1", - "license": "0BSD", - "optional": true, - "peer": true - }, - "../../../service/node_modules/@aws-sdk/abort-controller": { - "version": "3.215.0", - "license": "Apache-2.0", - "optional": true, - "peer": true, + "node_modules/@babel/generator": { + "version": "7.27.0", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.27.0.tgz", + "integrity": "sha512-VybsKvpiN1gU1sdMZIp7FcqphVVKEwcuj02x73uvcHE0PTihx1nlBcowYWhDwjpoAXRv43+gDzyggGnn1XZhVw==", + "dev": true, "dependencies": { - "@aws-sdk/types": "3.215.0", - "tslib": "^2.3.1" + "@babel/parser": "^7.27.0", + "@babel/types": "^7.27.0", + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.25", + "jsesc": "^3.0.2" }, "engines": { - "node": ">=14.0.0" + "node": ">=6.9.0" } }, - "../../../service/node_modules/@aws-sdk/client-cognito-identity": { - "version": "3.218.0", - "license": "Apache-2.0", - "optional": true, - "peer": true, + "node_modules/@babel/helper-compilation-targets": { + "version": "7.27.0", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.27.0.tgz", + "integrity": "sha512-LVk7fbXml0H2xH34dFzKQ7TDZ2G4/rVTOrq9V+icbbadjbVxxeFeDsNHv2SrZeWoA+6ZiTyWYWtScEIW07EAcA==", + "dev": true, "dependencies": { - "@aws-crypto/sha256-browser": "2.0.0", - "@aws-crypto/sha256-js": "2.0.0", - "@aws-sdk/client-sts": "3.218.0", - "@aws-sdk/config-resolver": "3.215.0", - "@aws-sdk/credential-provider-node": "3.218.0", - "@aws-sdk/fetch-http-handler": "3.215.0", - "@aws-sdk/hash-node": "3.215.0", - "@aws-sdk/invalid-dependency": "3.215.0", - "@aws-sdk/middleware-content-length": "3.215.0", - "@aws-sdk/middleware-endpoint": "3.215.0", - "@aws-sdk/middleware-host-header": "3.215.0", - "@aws-sdk/middleware-logger": "3.215.0", - "@aws-sdk/middleware-recursion-detection": "3.215.0", - "@aws-sdk/middleware-retry": "3.215.0", - "@aws-sdk/middleware-serde": "3.215.0", - "@aws-sdk/middleware-signing": "3.215.0", - "@aws-sdk/middleware-stack": "3.215.0", - "@aws-sdk/middleware-user-agent": "3.215.0", - "@aws-sdk/node-config-provider": "3.215.0", - "@aws-sdk/node-http-handler": "3.215.0", - "@aws-sdk/protocol-http": "3.215.0", - "@aws-sdk/smithy-client": "3.215.0", - "@aws-sdk/types": "3.215.0", - "@aws-sdk/url-parser": "3.215.0", - "@aws-sdk/util-base64": "3.208.0", - "@aws-sdk/util-body-length-browser": "3.188.0", - "@aws-sdk/util-body-length-node": "3.208.0", - "@aws-sdk/util-defaults-mode-browser": "3.215.0", - "@aws-sdk/util-defaults-mode-node": "3.215.0", - "@aws-sdk/util-endpoints": "3.216.0", - "@aws-sdk/util-user-agent-browser": "3.215.0", - "@aws-sdk/util-user-agent-node": "3.215.0", - "@aws-sdk/util-utf8-browser": "3.188.0", - "@aws-sdk/util-utf8-node": "3.208.0", - "tslib": "^2.3.1" + "@babel/compat-data": "^7.26.8", + "@babel/helper-validator-option": "^7.25.9", + "browserslist": "^4.24.0", + "lru-cache": "^5.1.1", + "semver": "^6.3.1" }, "engines": { - "node": ">=14.0.0" + "node": ">=6.9.0" } }, - "../../../service/node_modules/@aws-sdk/client-sso": { - "version": "3.218.0", - "license": "Apache-2.0", - "optional": true, - "peer": true, + "node_modules/@babel/helper-compilation-targets/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@babel/helper-module-imports": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.25.9.tgz", + "integrity": "sha512-tnUA4RsrmflIM6W6RFTLFSXITtl0wKjgpnLgXyowocVPrbYrLUXSBXDgTs8BlbmIzIdlBySRQjINYs2BAkiLtw==", + "dev": true, "dependencies": { - "@aws-crypto/sha256-browser": "2.0.0", - "@aws-crypto/sha256-js": "2.0.0", - "@aws-sdk/config-resolver": "3.215.0", - "@aws-sdk/fetch-http-handler": "3.215.0", - "@aws-sdk/hash-node": "3.215.0", - "@aws-sdk/invalid-dependency": "3.215.0", - "@aws-sdk/middleware-content-length": "3.215.0", - "@aws-sdk/middleware-endpoint": "3.215.0", - "@aws-sdk/middleware-host-header": "3.215.0", - "@aws-sdk/middleware-logger": "3.215.0", - "@aws-sdk/middleware-recursion-detection": "3.215.0", - "@aws-sdk/middleware-retry": "3.215.0", - "@aws-sdk/middleware-serde": "3.215.0", - "@aws-sdk/middleware-stack": "3.215.0", - "@aws-sdk/middleware-user-agent": "3.215.0", - "@aws-sdk/node-config-provider": "3.215.0", - "@aws-sdk/node-http-handler": "3.215.0", - "@aws-sdk/protocol-http": "3.215.0", - "@aws-sdk/smithy-client": "3.215.0", - "@aws-sdk/types": "3.215.0", - "@aws-sdk/url-parser": "3.215.0", - "@aws-sdk/util-base64": "3.208.0", - "@aws-sdk/util-body-length-browser": "3.188.0", - "@aws-sdk/util-body-length-node": "3.208.0", - "@aws-sdk/util-defaults-mode-browser": "3.215.0", - "@aws-sdk/util-defaults-mode-node": "3.215.0", - "@aws-sdk/util-endpoints": "3.216.0", - "@aws-sdk/util-user-agent-browser": "3.215.0", - "@aws-sdk/util-user-agent-node": "3.215.0", - "@aws-sdk/util-utf8-browser": "3.188.0", - "@aws-sdk/util-utf8-node": "3.208.0", - "tslib": "^2.3.1" + "@babel/traverse": "^7.25.9", + "@babel/types": "^7.25.9" }, "engines": { - "node": ">=14.0.0" + "node": ">=6.9.0" } }, - "../../../service/node_modules/@aws-sdk/client-sso-oidc": { - "version": "3.216.0", - "license": "Apache-2.0", - "optional": true, - "peer": true, + "node_modules/@babel/helper-module-transforms": { + "version": "7.26.0", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.26.0.tgz", + "integrity": "sha512-xO+xu6B5K2czEnQye6BHA7DolFFmS3LB7stHZFaOLb1pAwO1HWLS8fXA+eh0A2yIvltPVmx3eNNDBJA2SLHXFw==", + "dev": true, "dependencies": { - "@aws-crypto/sha256-browser": "2.0.0", - "@aws-crypto/sha256-js": "2.0.0", - "@aws-sdk/config-resolver": "3.215.0", - "@aws-sdk/fetch-http-handler": "3.215.0", - "@aws-sdk/hash-node": "3.215.0", - "@aws-sdk/invalid-dependency": "3.215.0", - "@aws-sdk/middleware-content-length": "3.215.0", - "@aws-sdk/middleware-endpoint": "3.215.0", - "@aws-sdk/middleware-host-header": "3.215.0", - "@aws-sdk/middleware-logger": "3.215.0", - "@aws-sdk/middleware-recursion-detection": "3.215.0", - "@aws-sdk/middleware-retry": "3.215.0", - "@aws-sdk/middleware-serde": "3.215.0", - "@aws-sdk/middleware-stack": "3.215.0", - "@aws-sdk/middleware-user-agent": "3.215.0", - "@aws-sdk/node-config-provider": "3.215.0", - "@aws-sdk/node-http-handler": "3.215.0", - "@aws-sdk/protocol-http": "3.215.0", - "@aws-sdk/smithy-client": "3.215.0", - "@aws-sdk/types": "3.215.0", - "@aws-sdk/url-parser": "3.215.0", - "@aws-sdk/util-base64": "3.208.0", - "@aws-sdk/util-body-length-browser": "3.188.0", - "@aws-sdk/util-body-length-node": "3.208.0", - "@aws-sdk/util-defaults-mode-browser": "3.215.0", - "@aws-sdk/util-defaults-mode-node": "3.215.0", - "@aws-sdk/util-endpoints": "3.216.0", - "@aws-sdk/util-user-agent-browser": "3.215.0", - "@aws-sdk/util-user-agent-node": "3.215.0", - "@aws-sdk/util-utf8-browser": "3.188.0", - "@aws-sdk/util-utf8-node": "3.208.0", - "tslib": "^2.3.1" + "@babel/helper-module-imports": "^7.25.9", + "@babel/helper-validator-identifier": "^7.25.9", + "@babel/traverse": "^7.25.9" }, "engines": { - "node": ">=14.0.0" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" } }, - "../../../service/node_modules/@aws-sdk/client-sts": { - "version": "3.218.0", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "dependencies": { - "@aws-crypto/sha256-browser": "2.0.0", - "@aws-crypto/sha256-js": "2.0.0", - "@aws-sdk/config-resolver": "3.215.0", - "@aws-sdk/credential-provider-node": "3.218.0", - "@aws-sdk/fetch-http-handler": "3.215.0", - "@aws-sdk/hash-node": "3.215.0", - "@aws-sdk/invalid-dependency": "3.215.0", - "@aws-sdk/middleware-content-length": "3.215.0", - "@aws-sdk/middleware-endpoint": "3.215.0", - "@aws-sdk/middleware-host-header": "3.215.0", - "@aws-sdk/middleware-logger": "3.215.0", - "@aws-sdk/middleware-recursion-detection": "3.215.0", - "@aws-sdk/middleware-retry": "3.215.0", - "@aws-sdk/middleware-sdk-sts": "3.215.0", - "@aws-sdk/middleware-serde": "3.215.0", - "@aws-sdk/middleware-signing": "3.215.0", - "@aws-sdk/middleware-stack": "3.215.0", - "@aws-sdk/middleware-user-agent": "3.215.0", - "@aws-sdk/node-config-provider": "3.215.0", - "@aws-sdk/node-http-handler": "3.215.0", - "@aws-sdk/protocol-http": "3.215.0", - "@aws-sdk/smithy-client": "3.215.0", - "@aws-sdk/types": "3.215.0", - "@aws-sdk/url-parser": "3.215.0", - "@aws-sdk/util-base64": "3.208.0", - "@aws-sdk/util-body-length-browser": "3.188.0", - "@aws-sdk/util-body-length-node": "3.208.0", - "@aws-sdk/util-defaults-mode-browser": "3.215.0", - "@aws-sdk/util-defaults-mode-node": "3.215.0", - "@aws-sdk/util-endpoints": "3.216.0", - "@aws-sdk/util-user-agent-browser": "3.215.0", - "@aws-sdk/util-user-agent-node": "3.215.0", - "@aws-sdk/util-utf8-browser": "3.188.0", - "@aws-sdk/util-utf8-node": "3.208.0", - "fast-xml-parser": "4.0.11", - "tslib": "^2.3.1" - }, + "node_modules/@babel/helper-plugin-utils": { + "version": "7.26.5", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.26.5.tgz", + "integrity": "sha512-RS+jZcRdZdRFzMyr+wcsaqOmld1/EqTghfaBGQQd/WnRdzdlvSZ//kF7U8VQTxf1ynZ4cjUcYgjVGx13ewNPMg==", + "dev": true, "engines": { - "node": ">=14.0.0" + "node": ">=6.9.0" } }, - "../../../service/node_modules/@aws-sdk/config-resolver": { - "version": "3.215.0", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "dependencies": { - "@aws-sdk/signature-v4": "3.215.0", - "@aws-sdk/types": "3.215.0", - "@aws-sdk/util-config-provider": "3.208.0", - "@aws-sdk/util-middleware": "3.215.0", - "tslib": "^2.3.1" - }, + "node_modules/@babel/helper-string-parser": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.25.9.tgz", + "integrity": "sha512-4A/SCr/2KLd5jrtOMFzaKjVtAei3+2r/NChoBNoZ3EyP/+GlhoaEGoWOZUmFmoITP7zOJyHIMm+DYRd8o3PvHA==", + "dev": true, "engines": { - "node": ">=14.0.0" + "node": ">=6.9.0" } }, - "../../../service/node_modules/@aws-sdk/credential-provider-cognito-identity": { - "version": "3.218.0", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "dependencies": { - "@aws-sdk/client-cognito-identity": "3.218.0", - "@aws-sdk/property-provider": "3.215.0", - "@aws-sdk/types": "3.215.0", - "tslib": "^2.3.1" - }, + "node_modules/@babel/helper-validator-identifier": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.25.9.tgz", + "integrity": "sha512-Ed61U6XJc3CVRfkERJWDz4dJwKe7iLmmJsbOGu9wSloNSFttHV0I8g6UAgb7qnK5ly5bGLPd4oXZlxCdANBOWQ==", + "dev": true, "engines": { - "node": ">=14.0.0" + "node": ">=6.9.0" } }, - "../../../service/node_modules/@aws-sdk/credential-provider-env": { - "version": "3.215.0", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "dependencies": { - "@aws-sdk/property-provider": "3.215.0", - "@aws-sdk/types": "3.215.0", - "tslib": "^2.3.1" - }, + "node_modules/@babel/helper-validator-option": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.25.9.tgz", + "integrity": "sha512-e/zv1co8pp55dNdEcCynfj9X7nyUKUXoUEwfXqaZt0omVOmDe9oOTdKStH4GmAw6zxMFs50ZayuMfHDKlO7Tfw==", + "dev": true, "engines": { - "node": ">=14.0.0" + "node": ">=6.9.0" } }, - "../../../service/node_modules/@aws-sdk/credential-provider-imds": { - "version": "3.215.0", - "license": "Apache-2.0", - "optional": true, - "peer": true, + "node_modules/@babel/helpers": { + "version": "7.27.0", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.27.0.tgz", + "integrity": "sha512-U5eyP/CTFPuNE3qk+WZMxFkp/4zUzdceQlfzf7DdGdhp+Fezd7HD+i8Y24ZuTMKX3wQBld449jijbGq6OdGNQg==", + "dev": true, "dependencies": { - "@aws-sdk/node-config-provider": "3.215.0", - "@aws-sdk/property-provider": "3.215.0", - "@aws-sdk/types": "3.215.0", - "@aws-sdk/url-parser": "3.215.0", - "tslib": "^2.3.1" + "@babel/template": "^7.27.0", + "@babel/types": "^7.27.0" }, "engines": { - "node": ">=14.0.0" + "node": ">=6.9.0" } }, - "../../../service/node_modules/@aws-sdk/credential-provider-ini": { - "version": "3.218.0", - "license": "Apache-2.0", - "optional": true, - "peer": true, + "node_modules/@babel/parser": { + "version": "7.27.0", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.27.0.tgz", + "integrity": "sha512-iaepho73/2Pz7w2eMS0Q5f83+0RKI7i4xmiYeBmDzfRVbQtTOG7Ts0S4HzJVsTMGI9keU8rNfuZr8DKfSt7Yyg==", + "dev": true, "dependencies": { - "@aws-sdk/credential-provider-env": "3.215.0", - "@aws-sdk/credential-provider-imds": "3.215.0", - "@aws-sdk/credential-provider-sso": "3.218.0", - "@aws-sdk/credential-provider-web-identity": "3.215.0", - "@aws-sdk/property-provider": "3.215.0", - "@aws-sdk/shared-ini-file-loader": "3.215.0", - "@aws-sdk/types": "3.215.0", - "tslib": "^2.3.1" + "@babel/types": "^7.27.0" + }, + "bin": { + "parser": "bin/babel-parser.js" }, "engines": { - "node": ">=14.0.0" + "node": ">=6.0.0" } }, - "../../../service/node_modules/@aws-sdk/credential-provider-node": { - "version": "3.218.0", - "license": "Apache-2.0", - "optional": true, - "peer": true, + "node_modules/@babel/plugin-syntax-async-generators": { + "version": "7.8.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz", + "integrity": "sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==", + "dev": true, "dependencies": { - "@aws-sdk/credential-provider-env": "3.215.0", - "@aws-sdk/credential-provider-imds": "3.215.0", - "@aws-sdk/credential-provider-ini": "3.218.0", - "@aws-sdk/credential-provider-process": "3.215.0", - "@aws-sdk/credential-provider-sso": "3.218.0", - "@aws-sdk/credential-provider-web-identity": "3.215.0", - "@aws-sdk/property-provider": "3.215.0", - "@aws-sdk/shared-ini-file-loader": "3.215.0", - "@aws-sdk/types": "3.215.0", - "tslib": "^2.3.1" + "@babel/helper-plugin-utils": "^7.8.0" }, - "engines": { - "node": ">=14.0.0" + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "../../../service/node_modules/@aws-sdk/credential-provider-process": { - "version": "3.215.0", - "license": "Apache-2.0", - "optional": true, - "peer": true, + "node_modules/@babel/plugin-syntax-bigint": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-bigint/-/plugin-syntax-bigint-7.8.3.tgz", + "integrity": "sha512-wnTnFlG+YxQm3vDxpGE57Pj0srRU4sHE/mDkt1qv2YJJSeUAec2ma4WLUnUPeKjyrfntVwe/N6dCXpU+zL3Npg==", + "dev": true, "dependencies": { - "@aws-sdk/property-provider": "3.215.0", - "@aws-sdk/shared-ini-file-loader": "3.215.0", - "@aws-sdk/types": "3.215.0", - "tslib": "^2.3.1" + "@babel/helper-plugin-utils": "^7.8.0" }, - "engines": { - "node": ">=14.0.0" + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "../../../service/node_modules/@aws-sdk/credential-provider-sso": { - "version": "3.218.0", - "license": "Apache-2.0", - "optional": true, - "peer": true, + "node_modules/@babel/plugin-syntax-class-properties": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz", + "integrity": "sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==", + "dev": true, "dependencies": { - "@aws-sdk/client-sso": "3.218.0", - "@aws-sdk/property-provider": "3.215.0", - "@aws-sdk/shared-ini-file-loader": "3.215.0", - "@aws-sdk/token-providers": "3.216.0", - "@aws-sdk/types": "3.215.0", - "tslib": "^2.3.1" + "@babel/helper-plugin-utils": "^7.12.13" }, - "engines": { - "node": ">=14.0.0" + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "../../../service/node_modules/@aws-sdk/credential-provider-web-identity": { - "version": "3.215.0", - "license": "Apache-2.0", - "optional": true, - "peer": true, + "node_modules/@babel/plugin-syntax-class-static-block": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-static-block/-/plugin-syntax-class-static-block-7.14.5.tgz", + "integrity": "sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw==", + "dev": true, "dependencies": { - "@aws-sdk/property-provider": "3.215.0", - "@aws-sdk/types": "3.215.0", - "tslib": "^2.3.1" + "@babel/helper-plugin-utils": "^7.14.5" }, "engines": { - "node": ">=14.0.0" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "../../../service/node_modules/@aws-sdk/credential-providers": { - "version": "3.218.0", - "license": "Apache-2.0", - "optional": true, - "peer": true, + "node_modules/@babel/plugin-syntax-import-attributes": { + "version": "7.26.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-attributes/-/plugin-syntax-import-attributes-7.26.0.tgz", + "integrity": "sha512-e2dttdsJ1ZTpi3B9UYGLw41hifAubg19AtCu/2I/F1QNVclOBr1dYpTdmdyZ84Xiz43BS/tCUkMAZNLv12Pi+A==", + "dev": true, "dependencies": { - "@aws-sdk/client-cognito-identity": "3.218.0", - "@aws-sdk/client-sso": "3.218.0", - "@aws-sdk/client-sts": "3.218.0", - "@aws-sdk/credential-provider-cognito-identity": "3.218.0", - "@aws-sdk/credential-provider-env": "3.215.0", - "@aws-sdk/credential-provider-imds": "3.215.0", - "@aws-sdk/credential-provider-ini": "3.218.0", - "@aws-sdk/credential-provider-node": "3.218.0", - "@aws-sdk/credential-provider-process": "3.215.0", - "@aws-sdk/credential-provider-sso": "3.218.0", - "@aws-sdk/credential-provider-web-identity": "3.215.0", - "@aws-sdk/property-provider": "3.215.0", - "@aws-sdk/shared-ini-file-loader": "3.215.0", - "@aws-sdk/types": "3.215.0", - "tslib": "^2.3.1" + "@babel/helper-plugin-utils": "^7.25.9" }, "engines": { - "node": ">=14.0.0" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "../../../service/node_modules/@aws-sdk/fetch-http-handler": { - "version": "3.215.0", - "license": "Apache-2.0", - "optional": true, - "peer": true, + "node_modules/@babel/plugin-syntax-import-meta": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz", + "integrity": "sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==", + "dev": true, "dependencies": { - "@aws-sdk/protocol-http": "3.215.0", - "@aws-sdk/querystring-builder": "3.215.0", - "@aws-sdk/types": "3.215.0", - "@aws-sdk/util-base64": "3.208.0", - "tslib": "^2.3.1" - } - }, - "../../../service/node_modules/@aws-sdk/hash-node": { - "version": "3.215.0", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "dependencies": { - "@aws-sdk/types": "3.215.0", - "@aws-sdk/util-buffer-from": "3.208.0", - "tslib": "^2.3.1" + "@babel/helper-plugin-utils": "^7.10.4" }, - "engines": { - "node": ">=14.0.0" + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "../../../service/node_modules/@aws-sdk/invalid-dependency": { - "version": "3.215.0", - "license": "Apache-2.0", - "optional": true, - "peer": true, + "node_modules/@babel/plugin-syntax-json-strings": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz", + "integrity": "sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==", + "dev": true, "dependencies": { - "@aws-sdk/types": "3.215.0", - "tslib": "^2.3.1" + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "../../../service/node_modules/@aws-sdk/is-array-buffer": { - "version": "3.201.0", - "license": "Apache-2.0", - "optional": true, - "peer": true, + "node_modules/@babel/plugin-syntax-jsx": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.25.9.tgz", + "integrity": "sha512-ld6oezHQMZsZfp6pWtbjaNDF2tiiCYYDqQszHt5VV437lewP9aSi2Of99CK0D0XB21k7FLgnLcmQKyKzynfeAA==", + "dev": true, "dependencies": { - "tslib": "^2.3.1" + "@babel/helper-plugin-utils": "^7.25.9" }, "engines": { - "node": ">=14.0.0" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "../../../service/node_modules/@aws-sdk/middleware-content-length": { - "version": "3.215.0", - "license": "Apache-2.0", - "optional": true, - "peer": true, + "node_modules/@babel/plugin-syntax-logical-assignment-operators": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz", + "integrity": "sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==", + "dev": true, "dependencies": { - "@aws-sdk/protocol-http": "3.215.0", - "@aws-sdk/types": "3.215.0", - "tslib": "^2.3.1" + "@babel/helper-plugin-utils": "^7.10.4" }, - "engines": { - "node": ">=14.0.0" + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "../../../service/node_modules/@aws-sdk/middleware-endpoint": { - "version": "3.215.0", - "license": "Apache-2.0", - "optional": true, - "peer": true, + "node_modules/@babel/plugin-syntax-nullish-coalescing-operator": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz", + "integrity": "sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==", + "dev": true, "dependencies": { - "@aws-sdk/middleware-serde": "3.215.0", - "@aws-sdk/protocol-http": "3.215.0", - "@aws-sdk/signature-v4": "3.215.0", - "@aws-sdk/types": "3.215.0", - "@aws-sdk/url-parser": "3.215.0", - "@aws-sdk/util-config-provider": "3.208.0", - "@aws-sdk/util-middleware": "3.215.0", - "tslib": "^2.3.1" + "@babel/helper-plugin-utils": "^7.8.0" }, - "engines": { - "node": ">=14.0.0" + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "../../../service/node_modules/@aws-sdk/middleware-host-header": { - "version": "3.215.0", - "license": "Apache-2.0", - "optional": true, - "peer": true, + "node_modules/@babel/plugin-syntax-numeric-separator": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz", + "integrity": "sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==", + "dev": true, "dependencies": { - "@aws-sdk/protocol-http": "3.215.0", - "@aws-sdk/types": "3.215.0", - "tslib": "^2.3.1" + "@babel/helper-plugin-utils": "^7.10.4" }, - "engines": { - "node": ">=14.0.0" + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "../../../service/node_modules/@aws-sdk/middleware-logger": { - "version": "3.215.0", - "license": "Apache-2.0", - "optional": true, - "peer": true, + "node_modules/@babel/plugin-syntax-object-rest-spread": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz", + "integrity": "sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==", + "dev": true, "dependencies": { - "@aws-sdk/types": "3.215.0", - "tslib": "^2.3.1" + "@babel/helper-plugin-utils": "^7.8.0" }, - "engines": { - "node": ">=14.0.0" + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "../../../service/node_modules/@aws-sdk/middleware-recursion-detection": { - "version": "3.215.0", - "license": "Apache-2.0", - "optional": true, - "peer": true, + "node_modules/@babel/plugin-syntax-optional-catch-binding": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz", + "integrity": "sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==", + "dev": true, "dependencies": { - "@aws-sdk/protocol-http": "3.215.0", - "@aws-sdk/types": "3.215.0", - "tslib": "^2.3.1" + "@babel/helper-plugin-utils": "^7.8.0" }, - "engines": { - "node": ">=14.0.0" + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "../../../service/node_modules/@aws-sdk/middleware-retry": { - "version": "3.215.0", - "license": "Apache-2.0", - "optional": true, - "peer": true, + "node_modules/@babel/plugin-syntax-optional-chaining": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz", + "integrity": "sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==", + "dev": true, "dependencies": { - "@aws-sdk/protocol-http": "3.215.0", - "@aws-sdk/service-error-classification": "3.215.0", - "@aws-sdk/types": "3.215.0", - "@aws-sdk/util-middleware": "3.215.0", - "tslib": "^2.3.1", - "uuid": "^8.3.2" + "@babel/helper-plugin-utils": "^7.8.0" }, - "engines": { - "node": ">=14.0.0" + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "../../../service/node_modules/@aws-sdk/middleware-sdk-sts": { - "version": "3.215.0", - "license": "Apache-2.0", - "optional": true, - "peer": true, + "node_modules/@babel/plugin-syntax-private-property-in-object": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-private-property-in-object/-/plugin-syntax-private-property-in-object-7.14.5.tgz", + "integrity": "sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==", + "dev": true, "dependencies": { - "@aws-sdk/middleware-signing": "3.215.0", - "@aws-sdk/property-provider": "3.215.0", - "@aws-sdk/protocol-http": "3.215.0", - "@aws-sdk/signature-v4": "3.215.0", - "@aws-sdk/types": "3.215.0", - "tslib": "^2.3.1" + "@babel/helper-plugin-utils": "^7.14.5" }, "engines": { - "node": ">=14.0.0" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "../../../service/node_modules/@aws-sdk/middleware-serde": { - "version": "3.215.0", - "license": "Apache-2.0", - "optional": true, - "peer": true, + "node_modules/@babel/plugin-syntax-top-level-await": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz", + "integrity": "sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==", + "dev": true, "dependencies": { - "@aws-sdk/types": "3.215.0", - "tslib": "^2.3.1" + "@babel/helper-plugin-utils": "^7.14.5" }, "engines": { - "node": ">=14.0.0" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "../../../service/node_modules/@aws-sdk/middleware-signing": { - "version": "3.215.0", - "license": "Apache-2.0", - "optional": true, - "peer": true, + "node_modules/@babel/plugin-syntax-typescript": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.25.9.tgz", + "integrity": "sha512-hjMgRy5hb8uJJjUcdWunWVcoi9bGpJp8p5Ol1229PoN6aytsLwNMgmdftO23wnCLMfVmTwZDWMPNq/D1SY60JQ==", + "dev": true, "dependencies": { - "@aws-sdk/property-provider": "3.215.0", - "@aws-sdk/protocol-http": "3.215.0", - "@aws-sdk/signature-v4": "3.215.0", - "@aws-sdk/types": "3.215.0", - "@aws-sdk/util-middleware": "3.215.0", - "tslib": "^2.3.1" + "@babel/helper-plugin-utils": "^7.25.9" }, "engines": { - "node": ">=14.0.0" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "../../../service/node_modules/@aws-sdk/middleware-stack": { - "version": "3.215.0", - "license": "Apache-2.0", - "optional": true, - "peer": true, + "node_modules/@babel/template": { + "version": "7.27.0", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.27.0.tgz", + "integrity": "sha512-2ncevenBqXI6qRMukPlXwHKHchC7RyMuu4xv5JBXRfOGVcTy1mXCD12qrp7Jsoxll1EV3+9sE4GugBVRjT2jFA==", + "dev": true, "dependencies": { - "tslib": "^2.3.1" + "@babel/code-frame": "^7.26.2", + "@babel/parser": "^7.27.0", + "@babel/types": "^7.27.0" }, "engines": { - "node": ">=14.0.0" + "node": ">=6.9.0" } }, - "../../../service/node_modules/@aws-sdk/middleware-user-agent": { - "version": "3.215.0", - "license": "Apache-2.0", - "optional": true, - "peer": true, + "node_modules/@babel/traverse": { + "version": "7.27.0", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.27.0.tgz", + "integrity": "sha512-19lYZFzYVQkkHkl4Cy4WrAVcqBkgvV2YM2TU3xG6DIwO7O3ecbDPfW3yM3bjAGcqcQHi+CCtjMR3dIEHxsd6bA==", + "dev": true, "dependencies": { - "@aws-sdk/protocol-http": "3.215.0", - "@aws-sdk/types": "3.215.0", - "tslib": "^2.3.1" + "@babel/code-frame": "^7.26.2", + "@babel/generator": "^7.27.0", + "@babel/parser": "^7.27.0", + "@babel/template": "^7.27.0", + "@babel/types": "^7.27.0", + "debug": "^4.3.1", + "globals": "^11.1.0" }, "engines": { - "node": ">=14.0.0" + "node": ">=6.9.0" } }, - "../../../service/node_modules/@aws-sdk/node-config-provider": { - "version": "3.215.0", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "dependencies": { - "@aws-sdk/property-provider": "3.215.0", - "@aws-sdk/shared-ini-file-loader": "3.215.0", - "@aws-sdk/types": "3.215.0", - "tslib": "^2.3.1" - }, + "node_modules/@babel/traverse/node_modules/globals": { + "version": "11.12.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", + "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", + "dev": true, "engines": { - "node": ">=14.0.0" + "node": ">=4" } }, - "../../../service/node_modules/@aws-sdk/node-http-handler": { - "version": "3.215.0", - "license": "Apache-2.0", - "optional": true, - "peer": true, + "node_modules/@babel/types": { + "version": "7.27.0", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.27.0.tgz", + "integrity": "sha512-H45s8fVLYjbhFH62dIJ3WtmJ6RSPt/3DRO0ZcT2SUiYiQyz3BLVb9ADEnLl91m74aQPS3AzzeajZHYOalWe3bg==", + "dev": true, "dependencies": { - "@aws-sdk/abort-controller": "3.215.0", - "@aws-sdk/protocol-http": "3.215.0", - "@aws-sdk/querystring-builder": "3.215.0", - "@aws-sdk/types": "3.215.0", - "tslib": "^2.3.1" + "@babel/helper-string-parser": "^7.25.9", + "@babel/helper-validator-identifier": "^7.25.9" }, "engines": { - "node": ">=14.0.0" + "node": ">=6.9.0" } }, - "../../../service/node_modules/@aws-sdk/property-provider": { - "version": "3.215.0", - "license": "Apache-2.0", - "optional": true, - "peer": true, + "node_modules/@bcoe/v8-coverage": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz", + "integrity": "sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==", + "dev": true + }, + "node_modules/@es-joy/jsdoccomment": { + "version": "0.49.0", + "resolved": "https://registry.npmjs.org/@es-joy/jsdoccomment/-/jsdoccomment-0.49.0.tgz", + "integrity": "sha512-xjZTSFgECpb9Ohuk5yMX5RhUEbfeQcuOp8IF60e+wyzWEF0M5xeSgqsfLtvPEX8BIyOX9saZqzuGPmZ8oWc+5Q==", + "dev": true, "dependencies": { - "@aws-sdk/types": "3.215.0", - "tslib": "^2.3.1" + "comment-parser": "1.4.1", + "esquery": "^1.6.0", + "jsdoc-type-pratt-parser": "~4.1.0" }, "engines": { - "node": ">=14.0.0" + "node": ">=16" } }, - "../../../service/node_modules/@aws-sdk/protocol-http": { - "version": "3.215.0", - "license": "Apache-2.0", - "optional": true, - "peer": true, + "node_modules/@eslint-community/eslint-utils": { + "version": "4.6.1", + "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.6.1.tgz", + "integrity": "sha512-KTsJMmobmbrFLe3LDh0PC2FXpcSYJt/MLjlkh/9LEnmKYLSYmT/0EW9JWANjeoemiuZrmogti0tW5Ch+qNUYDw==", + "dev": true, "dependencies": { - "@aws-sdk/types": "3.215.0", - "tslib": "^2.3.1" + "eslint-visitor-keys": "^3.4.3" }, "engines": { - "node": ">=14.0.0" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + }, + "peerDependencies": { + "eslint": "^6.0.0 || ^7.0.0 || >=8.0.0" } }, - "../../../service/node_modules/@aws-sdk/querystring-builder": { - "version": "3.215.0", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "dependencies": { - "@aws-sdk/types": "3.215.0", - "@aws-sdk/util-uri-escape": "3.201.0", - "tslib": "^2.3.1" + "node_modules/@eslint-community/eslint-utils/node_modules/eslint-visitor-keys": { + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", + "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", + "dev": true, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/@eslint-community/regexpp": { + "version": "4.12.1", + "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.12.1.tgz", + "integrity": "sha512-CCZCDJuduB9OUkFkY2IgppNZMi2lBQgD2qzwXkEia16cge2pijY/aXi96CJMquDMn3nJdlPV1A5KrJEXwfLNzQ==", + "dev": true, "engines": { - "node": ">=14.0.0" + "node": "^12.0.0 || ^14.0.0 || >=16.0.0" } }, - "../../../service/node_modules/@aws-sdk/querystring-parser": { - "version": "3.215.0", - "license": "Apache-2.0", - "optional": true, - "peer": true, + "node_modules/@eslint/config-array": { + "version": "0.20.0", + "resolved": "https://registry.npmjs.org/@eslint/config-array/-/config-array-0.20.0.tgz", + "integrity": "sha512-fxlS1kkIjx8+vy2SjuCB94q3htSNrufYTXubwiBFeaQHbH6Ipi43gFJq2zCMt6PHhImH3Xmr0NksKDvchWlpQQ==", + "dev": true, "dependencies": { - "@aws-sdk/types": "3.215.0", - "tslib": "^2.3.1" + "@eslint/object-schema": "^2.1.6", + "debug": "^4.3.1", + "minimatch": "^3.1.2" }, "engines": { - "node": ">=14.0.0" + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" } }, - "../../../service/node_modules/@aws-sdk/service-error-classification": { - "version": "3.215.0", - "license": "Apache-2.0", - "optional": true, - "peer": true, + "node_modules/@eslint/config-helpers": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/@eslint/config-helpers/-/config-helpers-0.2.1.tgz", + "integrity": "sha512-RI17tsD2frtDu/3dmI7QRrD4bedNKPM08ziRYaC5AhkGrzIAJelm9kJU1TznK+apx6V+cqRz8tfpEeG3oIyjxw==", + "dev": true, "engines": { - "node": ">=14.0.0" + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" } }, - "../../../service/node_modules/@aws-sdk/shared-ini-file-loader": { - "version": "3.215.0", - "license": "Apache-2.0", - "optional": true, - "peer": true, + "node_modules/@eslint/core": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/@eslint/core/-/core-0.12.0.tgz", + "integrity": "sha512-cmrR6pytBuSMTaBweKoGMwu3EiHiEC+DoyupPmlZ0HxBJBtIxwe+j/E4XPIKNx+Q74c8lXKPwYawBf5glsTkHg==", + "dev": true, "dependencies": { - "@aws-sdk/types": "3.215.0", - "tslib": "^2.3.1" + "@types/json-schema": "^7.0.15" }, "engines": { - "node": ">=14.0.0" + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" } }, - "../../../service/node_modules/@aws-sdk/signature-v4": { - "version": "3.215.0", - "license": "Apache-2.0", - "optional": true, - "peer": true, + "node_modules/@eslint/eslintrc": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-3.3.1.tgz", + "integrity": "sha512-gtF186CXhIl1p4pJNGZw8Yc6RlshoePRvE0X91oPGb3vZ8pM3qOS9W9NGPat9LziaBV7XrJWGylNQXkGcnM3IQ==", + "dev": true, "dependencies": { - "@aws-sdk/is-array-buffer": "3.201.0", - "@aws-sdk/types": "3.215.0", - "@aws-sdk/util-hex-encoding": "3.201.0", - "@aws-sdk/util-middleware": "3.215.0", - "@aws-sdk/util-uri-escape": "3.201.0", - "tslib": "^2.3.1" + "ajv": "^6.12.4", + "debug": "^4.3.2", + "espree": "^10.0.1", + "globals": "^14.0.0", + "ignore": "^5.2.0", + "import-fresh": "^3.2.1", + "js-yaml": "^4.1.0", + "minimatch": "^3.1.2", + "strip-json-comments": "^3.1.1" }, "engines": { - "node": ">=14.0.0" + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" } }, - "../../../service/node_modules/@aws-sdk/smithy-client": { - "version": "3.215.0", - "license": "Apache-2.0", - "optional": true, - "peer": true, + "node_modules/@eslint/js": { + "version": "9.24.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.24.0.tgz", + "integrity": "sha512-uIY/y3z0uvOGX8cp1C2fiC4+ZmBhp6yZWkojtHL1YEMnRt1Y63HB9TM17proGEmeG7HeUY+UP36F0aknKYTpYA==", + "dev": true, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + } + }, + "node_modules/@eslint/object-schema": { + "version": "2.1.6", + "resolved": "https://registry.npmjs.org/@eslint/object-schema/-/object-schema-2.1.6.tgz", + "integrity": "sha512-RBMg5FRL0I0gs51M/guSAj5/e14VQ4tpZnQNWwuDT66P14I43ItmPfIZRhO9fUVIPOAQXU47atlywZ/czoqFPA==", + "dev": true, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + } + }, + "node_modules/@eslint/plugin-kit": { + "version": "0.2.8", + "resolved": "https://registry.npmjs.org/@eslint/plugin-kit/-/plugin-kit-0.2.8.tgz", + "integrity": "sha512-ZAoA40rNMPwSm+AeHpCq8STiNAwzWLJuP8Xv4CHIc9wv/PSuExjMrmjfYNj682vW0OOiZ1HKxzvjQr9XZIisQA==", + "dev": true, "dependencies": { - "@aws-sdk/middleware-stack": "3.215.0", - "@aws-sdk/types": "3.215.0", - "tslib": "^2.3.1" + "@eslint/core": "^0.13.0", + "levn": "^0.4.1" }, "engines": { - "node": ">=14.0.0" + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" } }, - "../../../service/node_modules/@aws-sdk/token-providers": { - "version": "3.216.0", - "license": "Apache-2.0", - "optional": true, - "peer": true, + "node_modules/@eslint/plugin-kit/node_modules/@eslint/core": { + "version": "0.13.0", + "resolved": "https://registry.npmjs.org/@eslint/core/-/core-0.13.0.tgz", + "integrity": "sha512-yfkgDw1KR66rkT5A8ci4irzDysN7FRpq3ttJolR88OqQikAWqwA8j5VZyas+vjyBNFIJ7MfybJ9plMILI2UrCw==", + "dev": true, "dependencies": { - "@aws-sdk/client-sso-oidc": "3.216.0", - "@aws-sdk/property-provider": "3.215.0", - "@aws-sdk/shared-ini-file-loader": "3.215.0", - "@aws-sdk/types": "3.215.0", - "tslib": "^2.3.1" + "@types/json-schema": "^7.0.15" }, "engines": { - "node": ">=14.0.0" + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" } }, - "../../../service/node_modules/@aws-sdk/types": { - "version": "3.215.0", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "engines": { - "node": ">=14.0.0" - } - }, - "../../../service/node_modules/@aws-sdk/url-parser": { - "version": "3.215.0", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "dependencies": { - "@aws-sdk/querystring-parser": "3.215.0", - "@aws-sdk/types": "3.215.0", - "tslib": "^2.3.1" - } - }, - "../../../service/node_modules/@aws-sdk/util-base64": { - "version": "3.208.0", - "license": "Apache-2.0", - "optional": true, - "peer": true, + "node_modules/@esri/arcgis-rest-feature-service": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/@esri/arcgis-rest-feature-service/-/arcgis-rest-feature-service-4.1.0.tgz", + "integrity": "sha512-XmgySXuoCTQVkBrlKiwn+vPFlp748xJv2/DLSSgTgtHPOTiSLW+tnqeQiZdl6DOHpFiI44aY2aCWFrh/PUm+tA==", "dependencies": { - "@aws-sdk/util-buffer-from": "3.208.0", - "tslib": "^2.3.1" + "tslib": "^2.3.0" }, "engines": { - "node": ">=14.0.0" + "node": ">=12.20.0" + }, + "peerDependencies": { + "@esri/arcgis-rest-portal": "^4.0.0", + "@esri/arcgis-rest-request": "^4.0.0" } }, - "../../../service/node_modules/@aws-sdk/util-body-length-browser": { - "version": "3.188.0", - "license": "Apache-2.0", - "optional": true, - "peer": true, + "node_modules/@esri/arcgis-rest-fetch": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@esri/arcgis-rest-fetch/-/arcgis-rest-fetch-4.0.0.tgz", + "integrity": "sha512-ybsMO2L4cxx0IaIx0jv6/VbXidZmQIiGD3bvPF1/n1Y1ljHIhCvX+ti54cQSfg/HW2+VAVVnt8EPD/omVhNAyg==", "dependencies": { - "tslib": "^2.3.1" + "node-fetch": "^3.0.0" } }, - "../../../service/node_modules/@aws-sdk/util-body-length-node": { - "version": "3.208.0", - "license": "Apache-2.0", - "optional": true, - "peer": true, + "node_modules/@esri/arcgis-rest-form-data": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@esri/arcgis-rest-form-data/-/arcgis-rest-form-data-4.0.0.tgz", + "integrity": "sha512-cAS9HONIJgseCDdgRCIHBR4CE/OQXZIRP3FoNx/w+XyjVqK6yQiwCeXpYLfHeEZ6GEQqrA9XUBxifWG9UaJyXA==", "dependencies": { - "tslib": "^2.3.1" - }, - "engines": { - "node": ">=14.0.0" + "formdata-node": "^4.1.0" } }, - "../../../service/node_modules/@aws-sdk/util-buffer-from": { - "version": "3.208.0", - "license": "Apache-2.0", - "optional": true, + "node_modules/@esri/arcgis-rest-portal": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/@esri/arcgis-rest-portal/-/arcgis-rest-portal-4.6.0.tgz", + "integrity": "sha512-E0vqqxmj28ZR0avO73hwUeeDwWZzhPaS6rqI8P+kcqps6Fgm7gXky5fdAKThznENiY45uVZmWEg9rOlVRjK+iw==", "peer": true, "dependencies": { - "@aws-sdk/is-array-buffer": "3.201.0", - "tslib": "^2.3.1" + "tslib": "^2.3.0" }, "engines": { - "node": ">=14.0.0" - } - }, - "../../../service/node_modules/@aws-sdk/util-config-provider": { - "version": "3.208.0", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "dependencies": { - "tslib": "^2.3.1" + "node": ">=12.20.0" }, - "engines": { - "node": ">=14.0.0" + "peerDependencies": { + "@esri/arcgis-rest-request": "^4.0.0" } }, - "../../../service/node_modules/@aws-sdk/util-defaults-mode-browser": { - "version": "3.215.0", - "license": "Apache-2.0", - "optional": true, - "peer": true, + "node_modules/@esri/arcgis-rest-request": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/@esri/arcgis-rest-request/-/arcgis-rest-request-4.3.0.tgz", + "integrity": "sha512-zuYr4e1x+D7QvtmEj105PlN8lgfKsZ78XKuNNXEbi3+nMYTfCitcyC7Xu16gGAyaUeawdCNjvnAB8ZN8LwINVA==", "dependencies": { - "@aws-sdk/property-provider": "3.215.0", - "@aws-sdk/types": "3.215.0", - "bowser": "^2.11.0", + "@esri/arcgis-rest-fetch": "^4.0.0", + "@esri/arcgis-rest-form-data": "^4.0.0", + "mitt": "^3.0.0", "tslib": "^2.3.1" }, "engines": { - "node": ">= 10.0.0" + "node": ">=12.20.0" } }, - "../../../service/node_modules/@aws-sdk/util-defaults-mode-node": { - "version": "3.215.0", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "dependencies": { - "@aws-sdk/config-resolver": "3.215.0", - "@aws-sdk/credential-provider-imds": "3.215.0", - "@aws-sdk/node-config-provider": "3.215.0", - "@aws-sdk/property-provider": "3.215.0", - "@aws-sdk/types": "3.215.0", - "tslib": "^2.3.1" - }, + "node_modules/@humanfs/core": { + "version": "0.19.1", + "resolved": "https://registry.npmjs.org/@humanfs/core/-/core-0.19.1.tgz", + "integrity": "sha512-5DyQ4+1JEUzejeK1JGICcideyfUbGixgS9jNgex5nqkW+cY7WZhxBigmieN5Qnw9ZosSNVC9KQKyb+GUaGyKUA==", + "dev": true, "engines": { - "node": ">= 10.0.0" + "node": ">=18.18.0" } }, - "../../../service/node_modules/@aws-sdk/util-endpoints": { - "version": "3.216.0", - "license": "Apache-2.0", - "optional": true, - "peer": true, + "node_modules/@humanfs/node": { + "version": "0.16.6", + "resolved": "https://registry.npmjs.org/@humanfs/node/-/node-0.16.6.tgz", + "integrity": "sha512-YuI2ZHQL78Q5HbhDiBA1X4LmYdXCKCMQIfw0pw7piHJwyREFebJUvrQN4cMssyES6x+vfUbx1CIpaQUKYdQZOw==", + "dev": true, "dependencies": { - "@aws-sdk/types": "3.215.0", - "tslib": "^2.3.1" + "@humanfs/core": "^0.19.1", + "@humanwhocodes/retry": "^0.3.0" }, "engines": { - "node": ">=14.0.0" + "node": ">=18.18.0" } }, - "../../../service/node_modules/@aws-sdk/util-hex-encoding": { - "version": "3.201.0", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "dependencies": { - "tslib": "^2.3.1" - }, + "node_modules/@humanfs/node/node_modules/@humanwhocodes/retry": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/retry/-/retry-0.3.1.tgz", + "integrity": "sha512-JBxkERygn7Bv/GbN5Rv8Ul6LVknS+5Bp6RgDC/O8gEBU/yeH5Ui5C/OlWrTb6qct7LjjfT6Re2NxB0ln0yYybA==", + "dev": true, "engines": { - "node": ">=14.0.0" + "node": ">=18.18" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/nzakas" } }, - "../../../service/node_modules/@aws-sdk/util-locate-window": { - "version": "3.208.0", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "dependencies": { - "tslib": "^2.3.1" - }, + "node_modules/@humanwhocodes/module-importer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", + "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==", + "dev": true, "engines": { - "node": ">=14.0.0" + "node": ">=12.22" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/nzakas" } }, - "../../../service/node_modules/@aws-sdk/util-middleware": { - "version": "3.215.0", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "dependencies": { - "tslib": "^2.3.1" - }, + "node_modules/@humanwhocodes/retry": { + "version": "0.4.2", + "resolved": "https://registry.npmjs.org/@humanwhocodes/retry/-/retry-0.4.2.tgz", + "integrity": "sha512-xeO57FpIu4p1Ri3Jq/EXq4ClRm86dVF2z/+kvFnyqVYRavTZmaFaUBbWCOuuTh0o/g7DSsk6kc2vrS4Vl5oPOQ==", + "dev": true, "engines": { - "node": ">=14.0.0" + "node": ">=18.18" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/nzakas" } }, - "../../../service/node_modules/@aws-sdk/util-uri-escape": { - "version": "3.201.0", - "license": "Apache-2.0", - "optional": true, - "peer": true, + "node_modules/@istanbuljs/load-nyc-config": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz", + "integrity": "sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==", + "dev": true, "dependencies": { - "tslib": "^2.3.1" + "camelcase": "^5.3.1", + "find-up": "^4.1.0", + "get-package-type": "^0.1.0", + "js-yaml": "^3.13.1", + "resolve-from": "^5.0.0" }, "engines": { - "node": ">=14.0.0" + "node": ">=8" } }, - "../../../service/node_modules/@aws-sdk/util-user-agent-browser": { - "version": "3.215.0", - "license": "Apache-2.0", - "optional": true, - "peer": true, + "node_modules/@istanbuljs/load-nyc-config/node_modules/argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "dev": true, "dependencies": { - "@aws-sdk/types": "3.215.0", - "bowser": "^2.11.0", - "tslib": "^2.3.1" + "sprintf-js": "~1.0.2" } }, - "../../../service/node_modules/@aws-sdk/util-user-agent-node": { - "version": "3.215.0", - "license": "Apache-2.0", - "optional": true, - "peer": true, + "node_modules/@istanbuljs/load-nyc-config/node_modules/find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "dev": true, "dependencies": { - "@aws-sdk/node-config-provider": "3.215.0", - "@aws-sdk/types": "3.215.0", - "tslib": "^2.3.1" + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" }, "engines": { - "node": ">=14.0.0" - }, - "peerDependencies": { - "aws-crt": ">=1.0.0" - }, - "peerDependenciesMeta": { - "aws-crt": { - "optional": true - } + "node": ">=8" } }, - "../../../service/node_modules/@aws-sdk/util-utf8-browser": { - "version": "3.188.0", - "license": "Apache-2.0", - "optional": true, - "peer": true, + "node_modules/@istanbuljs/load-nyc-config/node_modules/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, "dependencies": { - "tslib": "^2.3.1" + "argparse": "^1.0.7", + "esprima": "^4.0.0" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" } }, - "../../../service/node_modules/@aws-sdk/util-utf8-node": { - "version": "3.208.0", - "license": "Apache-2.0", - "optional": true, - "peer": true, + "node_modules/@istanbuljs/load-nyc-config/node_modules/locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "dev": true, "dependencies": { - "@aws-sdk/util-buffer-from": "3.208.0", - "tslib": "^2.3.1" + "p-locate": "^4.1.0" }, "engines": { - "node": ">=14.0.0" + "node": ">=8" } }, - "../../../service/node_modules/@babel/code-frame": { - "version": "7.18.6", + "node_modules/@istanbuljs/load-nyc-config/node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", "dev": true, - "license": "MIT", - "peer": true, "dependencies": { - "@babel/highlight": "^7.18.6" + "p-try": "^2.0.0" }, "engines": { - "node": ">=6.9.0" + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "../../../service/node_modules/@babel/generator": { - "version": "7.20.5", + "node_modules/@istanbuljs/load-nyc-config/node_modules/p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", "dev": true, - "license": "MIT", - "peer": true, "dependencies": { - "@babel/types": "^7.20.5", - "@jridgewell/gen-mapping": "^0.3.2", - "jsesc": "^2.5.1" + "p-limit": "^2.2.0" }, "engines": { - "node": ">=6.9.0" + "node": ">=8" } }, - "../../../service/node_modules/@babel/helper-environment-visitor": { - "version": "7.18.9", + "node_modules/@istanbuljs/load-nyc-config/node_modules/resolve-from": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", + "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", "dev": true, - "license": "MIT", - "peer": true, "engines": { - "node": ">=6.9.0" + "node": ">=8" } }, - "../../../service/node_modules/@babel/helper-function-name": { - "version": "7.19.0", + "node_modules/@istanbuljs/schema": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz", + "integrity": "sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==", "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "@babel/template": "^7.18.10", - "@babel/types": "^7.19.0" - }, "engines": { - "node": ">=6.9.0" + "node": ">=8" } }, - "../../../service/node_modules/@babel/helper-hoist-variables": { - "version": "7.18.6", + "node_modules/@jest/console": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/console/-/console-29.7.0.tgz", + "integrity": "sha512-5Ni4CU7XHQi32IJ398EEP4RrB8eV09sXP2ROqD4bksHrnTree52PsxvX8tpL8LvTZ3pFzXyPbNQReSN41CAhOg==", "dev": true, - "license": "MIT", - "peer": true, "dependencies": { - "@babel/types": "^7.18.6" + "@jest/types": "^29.6.3", + "@types/node": "*", + "chalk": "^4.0.0", + "jest-message-util": "^29.7.0", + "jest-util": "^29.7.0", + "slash": "^3.0.0" }, "engines": { - "node": ">=6.9.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "../../../service/node_modules/@babel/helper-split-export-declaration": { - "version": "7.18.6", + "node_modules/@jest/core": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/core/-/core-29.7.0.tgz", + "integrity": "sha512-n7aeXWKMnGtDA48y8TLWJPJmLmmZ642Ceo78cYWEpiD7FzDgmNDV/GCVRorPABdXLJZ/9wzzgZAlHjXjxDHGsg==", "dev": true, - "license": "MIT", - "peer": true, "dependencies": { - "@babel/types": "^7.18.6" + "@jest/console": "^29.7.0", + "@jest/reporters": "^29.7.0", + "@jest/test-result": "^29.7.0", + "@jest/transform": "^29.7.0", + "@jest/types": "^29.6.3", + "@types/node": "*", + "ansi-escapes": "^4.2.1", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "exit": "^0.1.2", + "graceful-fs": "^4.2.9", + "jest-changed-files": "^29.7.0", + "jest-config": "^29.7.0", + "jest-haste-map": "^29.7.0", + "jest-message-util": "^29.7.0", + "jest-regex-util": "^29.6.3", + "jest-resolve": "^29.7.0", + "jest-resolve-dependencies": "^29.7.0", + "jest-runner": "^29.7.0", + "jest-runtime": "^29.7.0", + "jest-snapshot": "^29.7.0", + "jest-util": "^29.7.0", + "jest-validate": "^29.7.0", + "jest-watcher": "^29.7.0", + "micromatch": "^4.0.4", + "pretty-format": "^29.7.0", + "slash": "^3.0.0", + "strip-ansi": "^6.0.0" }, "engines": { - "node": ">=6.9.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" + }, + "peerDependenciesMeta": { + "node-notifier": { + "optional": true + } } }, - "../../../service/node_modules/@babel/helper-string-parser": { - "version": "7.19.4", + "node_modules/@jest/environment": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-29.7.0.tgz", + "integrity": "sha512-aQIfHDq33ExsN4jP1NWGXhxgQ/wixs60gDiKO+XVMd8Mn0NWPWgc34ZQDTb2jKaUWQ7MuwoitXAsN2XVXNMpAw==", "dev": true, - "license": "MIT", - "peer": true, + "dependencies": { + "@jest/fake-timers": "^29.7.0", + "@jest/types": "^29.6.3", + "@types/node": "*", + "jest-mock": "^29.7.0" + }, "engines": { - "node": ">=6.9.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "../../../service/node_modules/@babel/helper-validator-identifier": { - "version": "7.19.1", + "node_modules/@jest/expect": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/expect/-/expect-29.7.0.tgz", + "integrity": "sha512-8uMeAMycttpva3P1lBHB8VciS9V0XAr3GymPpipdyQXbBcuhkLQOSe8E/p92RyAdToS6ZD1tFkX+CkhoECE0dQ==", "dev": true, - "license": "MIT", - "peer": true, + "dependencies": { + "expect": "^29.7.0", + "jest-snapshot": "^29.7.0" + }, "engines": { - "node": ">=6.9.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "../../../service/node_modules/@babel/highlight": { - "version": "7.18.6", + "node_modules/@jest/expect-utils": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/expect-utils/-/expect-utils-29.7.0.tgz", + "integrity": "sha512-GlsNBWiFQFCVi9QVSx7f5AgMeLxe9YCCs5PuP2O2LdjDAA8Jh9eX7lA1Jq/xdXw3Wb3hyvlFNfZIfcRetSzYcA==", "dev": true, - "license": "MIT", - "peer": true, "dependencies": { - "@babel/helper-validator-identifier": "^7.18.6", - "chalk": "^2.0.0", - "js-tokens": "^4.0.0" + "jest-get-type": "^29.6.3" }, "engines": { - "node": ">=6.9.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "../../../service/node_modules/@babel/highlight/node_modules/ansi-styles": { - "version": "3.2.1", + "node_modules/@jest/fake-timers": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-29.7.0.tgz", + "integrity": "sha512-q4DH1Ha4TTFPdxLsqDXK1d3+ioSL7yL5oCMJZgDYm6i+6CygW5E5xVr/D1HdsGxjt1ZWSfUAs9OxSB/BNelWrQ==", "dev": true, - "license": "MIT", - "peer": true, "dependencies": { - "color-convert": "^1.9.0" + "@jest/types": "^29.6.3", + "@sinonjs/fake-timers": "^10.0.2", + "@types/node": "*", + "jest-message-util": "^29.7.0", + "jest-mock": "^29.7.0", + "jest-util": "^29.7.0" }, "engines": { - "node": ">=4" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "../../../service/node_modules/@babel/highlight/node_modules/chalk": { - "version": "2.4.2", + "node_modules/@jest/globals": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/globals/-/globals-29.7.0.tgz", + "integrity": "sha512-mpiz3dutLbkW2MNFubUGUEVLkTGiqW6yLVTA+JbP6fI6J5iL9Y0Nlg8k95pcF8ctKwCS7WVxteBs29hhfAotzQ==", "dev": true, - "license": "MIT", - "peer": true, "dependencies": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" + "@jest/environment": "^29.7.0", + "@jest/expect": "^29.7.0", + "@jest/types": "^29.6.3", + "jest-mock": "^29.7.0" }, "engines": { - "node": ">=4" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "../../../service/node_modules/@babel/highlight/node_modules/color-convert": { - "version": "1.9.3", + "node_modules/@jest/reporters": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/reporters/-/reporters-29.7.0.tgz", + "integrity": "sha512-DApq0KJbJOEzAFYjHADNNxAE3KbhxQB1y5Kplb5Waqw6zVbuWatSnMjE5gs8FUgEPmNsnZA3NCWl9NG0ia04Pg==", "dev": true, - "license": "MIT", - "peer": true, "dependencies": { - "color-name": "1.1.3" - } - }, - "../../../service/node_modules/@babel/highlight/node_modules/color-name": { - "version": "1.1.3", - "dev": true, - "license": "MIT", - "peer": true - }, - "../../../service/node_modules/@babel/highlight/node_modules/has-flag": { - "version": "3.0.0", - "dev": true, - "license": "MIT", - "peer": true, + "@bcoe/v8-coverage": "^0.2.3", + "@jest/console": "^29.7.0", + "@jest/test-result": "^29.7.0", + "@jest/transform": "^29.7.0", + "@jest/types": "^29.6.3", + "@jridgewell/trace-mapping": "^0.3.18", + "@types/node": "*", + "chalk": "^4.0.0", + "collect-v8-coverage": "^1.0.0", + "exit": "^0.1.2", + "glob": "^7.1.3", + "graceful-fs": "^4.2.9", + "istanbul-lib-coverage": "^3.0.0", + "istanbul-lib-instrument": "^6.0.0", + "istanbul-lib-report": "^3.0.0", + "istanbul-lib-source-maps": "^4.0.0", + "istanbul-reports": "^3.1.3", + "jest-message-util": "^29.7.0", + "jest-util": "^29.7.0", + "jest-worker": "^29.7.0", + "slash": "^3.0.0", + "string-length": "^4.0.1", + "strip-ansi": "^6.0.0", + "v8-to-istanbul": "^9.0.1" + }, "engines": { - "node": ">=4" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" + }, + "peerDependenciesMeta": { + "node-notifier": { + "optional": true + } } }, - "../../../service/node_modules/@babel/highlight/node_modules/supports-color": { - "version": "5.5.0", + "node_modules/@jest/schemas": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/@jest/schemas/-/schemas-29.6.3.tgz", + "integrity": "sha512-mo5j5X+jIZmJQveBKeS/clAueipV7KgiX1vMgCxam1RNYiqE1w62n0/tJJnHtjW8ZHcQco5gY85jA3mi0L+nSA==", "dev": true, - "license": "MIT", - "peer": true, "dependencies": { - "has-flag": "^3.0.0" + "@sinclair/typebox": "^0.27.8" }, "engines": { - "node": ">=4" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "../../../service/node_modules/@babel/parser": { - "version": "7.20.5", + "node_modules/@jest/source-map": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/@jest/source-map/-/source-map-29.6.3.tgz", + "integrity": "sha512-MHjT95QuipcPrpLM+8JMSzFx6eHp5Bm+4XeFDJlwsvVBjmKNiIAvasGK2fxz2WbGRlnvqehFbh07MMa7n3YJnw==", "dev": true, - "license": "MIT", - "peer": true, - "bin": { - "parser": "bin/babel-parser.js" + "dependencies": { + "@jridgewell/trace-mapping": "^0.3.18", + "callsites": "^3.0.0", + "graceful-fs": "^4.2.9" }, "engines": { - "node": ">=6.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "../../../service/node_modules/@babel/template": { - "version": "7.18.10", + "node_modules/@jest/test-result": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-29.7.0.tgz", + "integrity": "sha512-Fdx+tv6x1zlkJPcWXmMDAG2HBnaR9XPSd5aDWQVsfrZmLVT3lU1cwyxLgRmXR9yrq4NBoEm9BMsfgFzTQAbJYA==", "dev": true, - "license": "MIT", - "peer": true, "dependencies": { - "@babel/code-frame": "^7.18.6", - "@babel/parser": "^7.18.10", - "@babel/types": "^7.18.10" + "@jest/console": "^29.7.0", + "@jest/types": "^29.6.3", + "@types/istanbul-lib-coverage": "^2.0.0", + "collect-v8-coverage": "^1.0.0" }, "engines": { - "node": ">=6.9.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "../../../service/node_modules/@babel/traverse": { - "version": "7.20.5", + "node_modules/@jest/test-sequencer": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-29.7.0.tgz", + "integrity": "sha512-GQwJ5WZVrKnOJuiYiAF52UNUJXgTZx1NHjFSEB0qEMmSZKAkdMoIzw/Cj6x6NF4AvV23AUqDpFzQkN/eYCYTxw==", "dev": true, - "license": "MIT", - "peer": true, "dependencies": { - "@babel/code-frame": "^7.18.6", - "@babel/generator": "^7.20.5", - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-function-name": "^7.19.0", - "@babel/helper-hoist-variables": "^7.18.6", - "@babel/helper-split-export-declaration": "^7.18.6", - "@babel/parser": "^7.20.5", - "@babel/types": "^7.20.5", - "debug": "^4.1.0", - "globals": "^11.1.0" + "@jest/test-result": "^29.7.0", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^29.7.0", + "slash": "^3.0.0" }, "engines": { - "node": ">=6.9.0" - } - }, - "../../../service/node_modules/@babel/traverse/node_modules/globals": { - "version": "11.12.0", - "dev": true, - "license": "MIT", - "peer": true, - "engines": { - "node": ">=4" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "../../../service/node_modules/@babel/types": { - "version": "7.20.5", + "node_modules/@jest/transform": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-29.7.0.tgz", + "integrity": "sha512-ok/BTPFzFKVMwO5eOHRrvnBVHdRy9IrsrW1GpMaQ9MCnilNLXQKmAX8s1YXDFaai9xJpac2ySzV0YeRRECr2Vw==", "dev": true, - "license": "MIT", - "peer": true, "dependencies": { - "@babel/helper-string-parser": "^7.19.4", - "@babel/helper-validator-identifier": "^7.19.1", - "to-fast-properties": "^2.0.0" + "@babel/core": "^7.11.6", + "@jest/types": "^29.6.3", + "@jridgewell/trace-mapping": "^0.3.18", + "babel-plugin-istanbul": "^6.1.1", + "chalk": "^4.0.0", + "convert-source-map": "^2.0.0", + "fast-json-stable-stringify": "^2.1.0", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^29.7.0", + "jest-regex-util": "^29.6.3", + "jest-util": "^29.7.0", + "micromatch": "^4.0.4", + "pirates": "^4.0.4", + "slash": "^3.0.0", + "write-file-atomic": "^4.0.2" }, "engines": { - "node": ">=6.9.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "../../../service/node_modules/@fluffy-spoon/substitute": { - "version": "1.208.0", + "node_modules/@jest/types": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-29.6.3.tgz", + "integrity": "sha512-u3UPsIilWKOM3F9CXtrG8LEJmNxwoCQC/XVj4IKYXvvpx7QIi/Kg1LI5uDmDpKlac62NUtX7eLjRh+jVZcLOzw==", "dev": true, - "license": "MIT", - "peer": true, - "engines": { - "node": ">=10" + "dependencies": { + "@jest/schemas": "^29.6.3", + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^17.0.8", + "chalk": "^4.0.0" }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/substitute-js#section-contribute" + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "../../../service/node_modules/@jridgewell/gen-mapping": { - "version": "0.3.2", + "node_modules/@jridgewell/gen-mapping": { + "version": "0.3.8", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.8.tgz", + "integrity": "sha512-imAbBGkb+ebQyxKgzv5Hu2nmROxoDOXHh80evxdoXNOrvAnVx7zimzc1Oo5h9RlfV4vPXaE2iM5pOFbvOCClWA==", "dev": true, - "license": "MIT", - "peer": true, "dependencies": { - "@jridgewell/set-array": "^1.0.1", + "@jridgewell/set-array": "^1.2.1", "@jridgewell/sourcemap-codec": "^1.4.10", - "@jridgewell/trace-mapping": "^0.3.9" + "@jridgewell/trace-mapping": "^0.3.24" }, "engines": { "node": ">=6.0.0" } }, - "../../../service/node_modules/@jridgewell/resolve-uri": { - "version": "3.1.0", + "node_modules/@jridgewell/resolve-uri": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz", + "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==", "dev": true, - "license": "MIT", - "peer": true, "engines": { "node": ">=6.0.0" } }, - "../../../service/node_modules/@jridgewell/set-array": { - "version": "1.1.2", + "node_modules/@jridgewell/set-array": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.2.1.tgz", + "integrity": "sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==", "dev": true, - "license": "MIT", - "peer": true, "engines": { "node": ">=6.0.0" } }, - "../../../service/node_modules/@jridgewell/sourcemap-codec": { - "version": "1.4.14", - "dev": true, - "license": "MIT", - "peer": true - }, - "../../../service/node_modules/@jridgewell/trace-mapping": { - "version": "0.3.17", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "@jridgewell/resolve-uri": "3.1.0", - "@jridgewell/sourcemap-codec": "1.4.14" - } + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.0.tgz", + "integrity": "sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ==", + "dev": true }, - "../../../service/node_modules/@mrmlnc/readdir-enhanced": { - "version": "2.2.1", + "node_modules/@jridgewell/trace-mapping": { + "version": "0.3.25", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz", + "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==", "dev": true, - "license": "MIT", - "peer": true, "dependencies": { - "call-me-maybe": "^1.0.1", - "glob-to-regexp": "^0.3.0" - }, - "engines": { - "node": ">=4" + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" } }, - "../../../service/node_modules/@ngageoint/geopackage": { - "version": "4.2.3", - "license": "MIT", - "peer": true, - "dependencies": { - "@turf/bbox": "6.3.0", - "@turf/boolean-clockwise": "6.5.0", - "@turf/boolean-point-in-polygon": "6.5.0", - "@turf/boolean-within": "6.5.0", - "@turf/distance": "6.5.0", - "@turf/helpers": "6.5.0", - "@turf/intersect": "6.5.0", - "@turf/line-intersect": "6.5.0", - "@turf/point-to-line-distance": "6.5.0", - "@turf/polygon-to-line": "6.5.0", - "@types/geojson": "7946.0.8", - "@types/proj4": "2.5.2", - "file-type": "12.4.0", - "image-size": "0.8.3", + "node_modules/@ngageoint/mage.service": { + "version": "6.3.0-beta.8", + "resolved": "https://registry.npmjs.org/@ngageoint/mage.service/-/mage.service-6.3.0-beta.8.tgz", + "integrity": "sha512-Jjyn5uROFnlvAZJ7j1LqSxiWk3PWDzM16/ukX0R/P9JLeOax2HOKwBbQQOEh/5IXk5EkbygL0j9WA5wTgiJ/HQ==", + "hasShrinkwrap": true, + "peer": true, + "dependencies": { + "@ngageoint/geopackage": "4.2.6", + "@ngageoint/mongodb-migrations": "1.0.0", + "@node-saml/passport-saml": "4.0.4", + "@turf/centroid": "6.5.0", + "@turf/kinks": "6.5.0", + "@types/geojson": "7946.0.16", + "@types/json-schema": "7.0.15", + "@types/mime-types": "2.1.4", + "@xmldom/xmldom": "0.9.8", + "adm-zip": "0.5.16", + "archiver": "5.3.2", + "async": "3.2.6", + "async-lock": "1.4.1", + "base-64": "1.0.0", + "busboy": "1.6.0", + "cfenv": "1.2.4", + "commander": "8.3.0", + "express": "4.21.2", + "express-session": "1.18.1", + "file-type": "16.5.4", + "fs-extra": "4.0.3", + "geojson": "0.5.0", + "geojson-validation": "1.0.2", + "json2csv": "4.5.4", + "jsonwebtoken": "9.0.2", "lodash": "4.17.21", - "proj4": "2.8.0", - "reproject": "1.2.5", - "rtree-sql.js": "1.7.0", - "simplify-js": "1.2.4", - "webworkify": "1.5.0", - "wkx": "0.4.8" + "mgrs": "1.0.0", + "mime-types": "2.1.35", + "moment": "2.30.1", + "mongoose": "6.13.8", + "multer": "1.4.5-lts.1", + "node-fetch": "2.7.0", + "passport": "0.7.0", + "passport-anonymous": "1.0.1", + "passport-http-bearer": "1.0.1", + "passport-ldapauth": "3.0.1", + "passport-local": "1.0.0", + "passport-oauth2": "1.8.0", + "passport-openidconnect": "0.1.2", + "pug": "3.0.3", + "rfc5646": "3.0.0", + "superagent": "8.1.2", + "svg-captcha": "1.4.0", + "uniqid": "5.4.0", + "walk": "2.3.15", + "winston": "1.1.2", + "wkx": "0.5.0", + "wms-capabilities": "0.6.0", + "xmlbuilder2": "3.1.1", + "xpath": "0.0.34", + "yaml": "1.10.2" }, "bin": { - "geopackage": "cli" + "mage.service": "bin/mage.service.js" }, - "optionalDependencies": { - "better-sqlite3": "7.4.1", - "chalk": "4.1.1", - "inquirer": "8.0.0" - } - }, - "../../../service/node_modules/@ngageoint/geopackage/node_modules/@types/geojson": { - "version": "7946.0.8", - "license": "MIT", - "peer": true - }, - "../../../service/node_modules/@ngageoint/geopackage/node_modules/file-type": { - "version": "12.4.0", - "license": "MIT", - "peer": true, "engines": { - "node": ">=8" + "node": ">= 16", + "npm": ">= 8" } }, - "../../../service/node_modules/@nodelib/fs.stat": { - "version": "1.1.3", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@aws-crypto/sha256-browser": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/sha256-browser/-/sha256-browser-5.2.0.tgz", + "integrity": "sha512-AXfN/lGotSQwu6HNcEsIASo7kWXZ5HYWvfOmSNKDsEqC4OashTp8alTmaz+F7TC2L083SFv5RdB+qU3Vs1kZqw==", + "optional": true, "peer": true, - "engines": { - "node": ">= 6" + "dependencies": { + "@aws-crypto/sha256-js": "^5.2.0", + "@aws-crypto/supports-web-crypto": "^5.2.0", + "@aws-crypto/util": "^5.2.0", + "@aws-sdk/types": "^3.222.0", + "@aws-sdk/util-locate-window": "^3.0.0", + "@smithy/util-utf8": "^2.0.0", + "tslib": "^2.6.2" } }, - "../../../service/node_modules/@oozcitak/dom": { - "version": "1.15.10", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@aws-crypto/sha256-browser/node_modules/@smithy/is-array-buffer": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@smithy/is-array-buffer/-/is-array-buffer-2.2.0.tgz", + "integrity": "sha512-GGP3O9QFD24uGeAXYUjwSTXARoqpZykHadOmA8G5vfJPK0/DC67qa//0qvqrJzL1xc8WQWX7/yc7fwudjPHPhA==", + "optional": true, "peer": true, "dependencies": { - "@oozcitak/infra": "1.0.8", - "@oozcitak/url": "1.0.4", - "@oozcitak/util": "8.3.8" + "tslib": "^2.6.2" }, "engines": { - "node": ">=8.0" + "node": ">=14.0.0" } }, - "../../../service/node_modules/@oozcitak/infra": { - "version": "1.0.8", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@aws-crypto/sha256-browser/node_modules/@smithy/util-buffer-from": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@smithy/util-buffer-from/-/util-buffer-from-2.2.0.tgz", + "integrity": "sha512-IJdWBbTcMQ6DA0gdNhh/BwrLkDR+ADW5Kr1aZmd4k3DIF6ezMV4R2NIAmT08wQJ3yUK82thHWmC/TnK/wpMMIA==", + "optional": true, "peer": true, "dependencies": { - "@oozcitak/util": "8.3.8" + "@smithy/is-array-buffer": "^2.2.0", + "tslib": "^2.6.2" }, "engines": { - "node": ">=6.0" + "node": ">=14.0.0" } }, - "../../../service/node_modules/@oozcitak/url": { - "version": "1.0.4", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@aws-crypto/sha256-browser/node_modules/@smithy/util-utf8": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/@smithy/util-utf8/-/util-utf8-2.3.0.tgz", + "integrity": "sha512-R8Rdn8Hy72KKcebgLiv8jQcQkXoLMOGGv5uI1/k0l+snqkOzQ1R0ChUBCxWMlBsFMekWjq0wRudIweFs7sKT5A==", + "optional": true, "peer": true, "dependencies": { - "@oozcitak/infra": "1.0.8", - "@oozcitak/util": "8.3.8" + "@smithy/util-buffer-from": "^2.2.0", + "tslib": "^2.6.2" }, "engines": { - "node": ">=8.0" + "node": ">=14.0.0" } }, - "../../../service/node_modules/@oozcitak/util": { - "version": "8.3.8", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@aws-crypto/sha256-js": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/sha256-js/-/sha256-js-5.2.0.tgz", + "integrity": "sha512-FFQQyu7edu4ufvIZ+OadFpHHOt+eSTBaYaki44c+akjg7qZg9oOQeLlk77F6tSYqjDAFClrHJk9tMf0HdVyOvA==", + "optional": true, "peer": true, + "dependencies": { + "@aws-crypto/util": "^5.2.0", + "@aws-sdk/types": "^3.222.0", + "tslib": "^2.6.2" + }, "engines": { - "node": ">=8.0" + "node": ">=16.0.0" } }, - "../../../service/node_modules/@sinonjs/commons": { - "version": "1.8.6", - "dev": true, - "license": "BSD-3-Clause", + "node_modules/@ngageoint/mage.service/node_modules/@aws-crypto/supports-web-crypto": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/supports-web-crypto/-/supports-web-crypto-5.2.0.tgz", + "integrity": "sha512-iAvUotm021kM33eCdNfwIN//F77/IADDSs58i+MDaOqFrVjZo9bAal0NK7HurRuWLLpF1iLX7gbWrjHjeo+YFg==", + "optional": true, "peer": true, "dependencies": { - "type-detect": "4.0.8" + "tslib": "^2.6.2" } }, - "../../../service/node_modules/@sinonjs/formatio": { - "version": "3.2.2", - "dev": true, - "license": "BSD-3-Clause", + "node_modules/@ngageoint/mage.service/node_modules/@aws-crypto/util": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/util/-/util-5.2.0.tgz", + "integrity": "sha512-4RkU9EsI6ZpBve5fseQlGNUWKMa1RLPQ1dnjnQoe07ldfIzcsGb5hC5W0Dm7u423KWzawlrpbjXBrXCEv9zazQ==", + "optional": true, "peer": true, "dependencies": { - "@sinonjs/commons": "^1", - "@sinonjs/samsam": "^3.1.0" + "@aws-sdk/types": "^3.222.0", + "@smithy/util-utf8": "^2.0.0", + "tslib": "^2.6.2" } }, - "../../../service/node_modules/@sinonjs/samsam": { - "version": "3.3.3", - "dev": true, - "license": "BSD-3-Clause", + "node_modules/@ngageoint/mage.service/node_modules/@aws-crypto/util/node_modules/@smithy/is-array-buffer": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@smithy/is-array-buffer/-/is-array-buffer-2.2.0.tgz", + "integrity": "sha512-GGP3O9QFD24uGeAXYUjwSTXARoqpZykHadOmA8G5vfJPK0/DC67qa//0qvqrJzL1xc8WQWX7/yc7fwudjPHPhA==", + "optional": true, "peer": true, "dependencies": { - "@sinonjs/commons": "^1.3.0", - "array-from": "^2.1.1", - "lodash": "^4.17.15" + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=14.0.0" } }, - "../../../service/node_modules/@sinonjs/text-encoding": { - "version": "0.7.2", - "dev": true, - "license": "(Unlicense OR Apache-2.0)", - "peer": true - }, - "../../../service/node_modules/@tokenizer/token": { - "version": "0.3.0", - "license": "MIT", - "peer": true - }, - "../../../service/node_modules/@turf/bbox": { - "version": "6.3.0", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@aws-crypto/util/node_modules/@smithy/util-buffer-from": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@smithy/util-buffer-from/-/util-buffer-from-2.2.0.tgz", + "integrity": "sha512-IJdWBbTcMQ6DA0gdNhh/BwrLkDR+ADW5Kr1aZmd4k3DIF6ezMV4R2NIAmT08wQJ3yUK82thHWmC/TnK/wpMMIA==", + "optional": true, "peer": true, "dependencies": { - "@turf/helpers": "^6.3.0", - "@turf/meta": "^6.3.0" + "@smithy/is-array-buffer": "^2.2.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=14.0.0" } }, - "../../../service/node_modules/@turf/bearing": { - "version": "6.5.0", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@aws-crypto/util/node_modules/@smithy/util-utf8": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/@smithy/util-utf8/-/util-utf8-2.3.0.tgz", + "integrity": "sha512-R8Rdn8Hy72KKcebgLiv8jQcQkXoLMOGGv5uI1/k0l+snqkOzQ1R0ChUBCxWMlBsFMekWjq0wRudIweFs7sKT5A==", + "optional": true, "peer": true, "dependencies": { - "@turf/helpers": "^6.5.0", - "@turf/invariant": "^6.5.0" + "@smithy/util-buffer-from": "^2.2.0", + "tslib": "^2.6.2" }, - "funding": { - "url": "https://opencollective.com/turf" + "engines": { + "node": ">=14.0.0" } }, - "../../../service/node_modules/@turf/boolean-clockwise": { - "version": "6.5.0", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@aws-sdk/client-cognito-identity": { + "version": "3.606.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-cognito-identity/-/client-cognito-identity-3.606.0.tgz", + "integrity": "sha512-CJ3kovUg7HAn3trqo0WxVw3PJoaHxiGU1U+Ok8Vx/sL81+auyyiasT09M/NcchRqwAooKvUi44sVD0ih7Zi9Nw==", + "optional": true, "peer": true, "dependencies": { - "@turf/helpers": "^6.5.0", - "@turf/invariant": "^6.5.0" + "@aws-crypto/sha256-browser": "5.2.0", + "@aws-crypto/sha256-js": "5.2.0", + "@aws-sdk/client-sso-oidc": "3.606.0", + "@aws-sdk/client-sts": "3.606.0", + "@aws-sdk/core": "3.598.0", + "@aws-sdk/credential-provider-node": "3.600.0", + "@aws-sdk/middleware-host-header": "3.598.0", + "@aws-sdk/middleware-logger": "3.598.0", + "@aws-sdk/middleware-recursion-detection": "3.598.0", + "@aws-sdk/middleware-user-agent": "3.598.0", + "@aws-sdk/region-config-resolver": "3.598.0", + "@aws-sdk/types": "3.598.0", + "@aws-sdk/util-endpoints": "3.598.0", + "@aws-sdk/util-user-agent-browser": "3.598.0", + "@aws-sdk/util-user-agent-node": "3.598.0", + "@smithy/config-resolver": "^3.0.2", + "@smithy/core": "^2.2.1", + "@smithy/fetch-http-handler": "^3.0.2", + "@smithy/hash-node": "^3.0.1", + "@smithy/invalid-dependency": "^3.0.1", + "@smithy/middleware-content-length": "^3.0.1", + "@smithy/middleware-endpoint": "^3.0.2", + "@smithy/middleware-retry": "^3.0.4", + "@smithy/middleware-serde": "^3.0.1", + "@smithy/middleware-stack": "^3.0.1", + "@smithy/node-config-provider": "^3.1.1", + "@smithy/node-http-handler": "^3.0.1", + "@smithy/protocol-http": "^4.0.1", + "@smithy/smithy-client": "^3.1.2", + "@smithy/types": "^3.1.0", + "@smithy/url-parser": "^3.0.1", + "@smithy/util-base64": "^3.0.0", + "@smithy/util-body-length-browser": "^3.0.0", + "@smithy/util-body-length-node": "^3.0.0", + "@smithy/util-defaults-mode-browser": "^3.0.4", + "@smithy/util-defaults-mode-node": "^3.0.4", + "@smithy/util-endpoints": "^2.0.2", + "@smithy/util-middleware": "^3.0.1", + "@smithy/util-retry": "^3.0.1", + "@smithy/util-utf8": "^3.0.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@aws-sdk/client-sso": { + "version": "3.598.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.598.0.tgz", + "integrity": "sha512-nOI5lqPYa+YZlrrzwAJywJSw3MKVjvu6Ge2fCqQUNYMfxFB0NAaDFnl0EPjXi+sEbtCuz/uWE77poHbqiZ+7Iw==", + "optional": true, + "peer": true, + "dependencies": { + "@aws-crypto/sha256-browser": "5.2.0", + "@aws-crypto/sha256-js": "5.2.0", + "@aws-sdk/core": "3.598.0", + "@aws-sdk/middleware-host-header": "3.598.0", + "@aws-sdk/middleware-logger": "3.598.0", + "@aws-sdk/middleware-recursion-detection": "3.598.0", + "@aws-sdk/middleware-user-agent": "3.598.0", + "@aws-sdk/region-config-resolver": "3.598.0", + "@aws-sdk/types": "3.598.0", + "@aws-sdk/util-endpoints": "3.598.0", + "@aws-sdk/util-user-agent-browser": "3.598.0", + "@aws-sdk/util-user-agent-node": "3.598.0", + "@smithy/config-resolver": "^3.0.2", + "@smithy/core": "^2.2.1", + "@smithy/fetch-http-handler": "^3.0.2", + "@smithy/hash-node": "^3.0.1", + "@smithy/invalid-dependency": "^3.0.1", + "@smithy/middleware-content-length": "^3.0.1", + "@smithy/middleware-endpoint": "^3.0.2", + "@smithy/middleware-retry": "^3.0.4", + "@smithy/middleware-serde": "^3.0.1", + "@smithy/middleware-stack": "^3.0.1", + "@smithy/node-config-provider": "^3.1.1", + "@smithy/node-http-handler": "^3.0.1", + "@smithy/protocol-http": "^4.0.1", + "@smithy/smithy-client": "^3.1.2", + "@smithy/types": "^3.1.0", + "@smithy/url-parser": "^3.0.1", + "@smithy/util-base64": "^3.0.0", + "@smithy/util-body-length-browser": "^3.0.0", + "@smithy/util-body-length-node": "^3.0.0", + "@smithy/util-defaults-mode-browser": "^3.0.4", + "@smithy/util-defaults-mode-node": "^3.0.4", + "@smithy/util-endpoints": "^2.0.2", + "@smithy/util-middleware": "^3.0.1", + "@smithy/util-retry": "^3.0.1", + "@smithy/util-utf8": "^3.0.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@aws-sdk/client-sso-oidc": { + "version": "3.606.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso-oidc/-/client-sso-oidc-3.606.0.tgz", + "integrity": "sha512-gL1FHPS6hwgMNS/A+Qh5bUyHOeRVOqdb7c6+i+9gR3wtGvt2lvoSm8w5DhS08Xiiacz2AqYRDEapp0xuyCrbBQ==", + "optional": true, + "peer": true, + "dependencies": { + "@aws-crypto/sha256-browser": "5.2.0", + "@aws-crypto/sha256-js": "5.2.0", + "@aws-sdk/core": "3.598.0", + "@aws-sdk/credential-provider-node": "3.600.0", + "@aws-sdk/middleware-host-header": "3.598.0", + "@aws-sdk/middleware-logger": "3.598.0", + "@aws-sdk/middleware-recursion-detection": "3.598.0", + "@aws-sdk/middleware-user-agent": "3.598.0", + "@aws-sdk/region-config-resolver": "3.598.0", + "@aws-sdk/types": "3.598.0", + "@aws-sdk/util-endpoints": "3.598.0", + "@aws-sdk/util-user-agent-browser": "3.598.0", + "@aws-sdk/util-user-agent-node": "3.598.0", + "@smithy/config-resolver": "^3.0.2", + "@smithy/core": "^2.2.1", + "@smithy/fetch-http-handler": "^3.0.2", + "@smithy/hash-node": "^3.0.1", + "@smithy/invalid-dependency": "^3.0.1", + "@smithy/middleware-content-length": "^3.0.1", + "@smithy/middleware-endpoint": "^3.0.2", + "@smithy/middleware-retry": "^3.0.4", + "@smithy/middleware-serde": "^3.0.1", + "@smithy/middleware-stack": "^3.0.1", + "@smithy/node-config-provider": "^3.1.1", + "@smithy/node-http-handler": "^3.0.1", + "@smithy/protocol-http": "^4.0.1", + "@smithy/smithy-client": "^3.1.2", + "@smithy/types": "^3.1.0", + "@smithy/url-parser": "^3.0.1", + "@smithy/util-base64": "^3.0.0", + "@smithy/util-body-length-browser": "^3.0.0", + "@smithy/util-body-length-node": "^3.0.0", + "@smithy/util-defaults-mode-browser": "^3.0.4", + "@smithy/util-defaults-mode-node": "^3.0.4", + "@smithy/util-endpoints": "^2.0.2", + "@smithy/util-middleware": "^3.0.1", + "@smithy/util-retry": "^3.0.1", + "@smithy/util-utf8": "^3.0.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" }, - "funding": { - "url": "https://opencollective.com/turf" + "peerDependencies": { + "@aws-sdk/client-sts": "^3.606.0" } }, - "../../../service/node_modules/@turf/boolean-point-in-polygon": { - "version": "6.5.0", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@aws-sdk/client-sts": { + "version": "3.606.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sts/-/client-sts-3.606.0.tgz", + "integrity": "sha512-b11mAhjrkm3MMiAPoMGcmd6vsaz2120lg8rHG/NZCo9vB1K6Kc7WP+a1Q05TRMseer2egTtpWJfn44aVO97VqA==", + "optional": true, "peer": true, "dependencies": { - "@turf/helpers": "^6.5.0", - "@turf/invariant": "^6.5.0" + "@aws-crypto/sha256-browser": "5.2.0", + "@aws-crypto/sha256-js": "5.2.0", + "@aws-sdk/client-sso-oidc": "3.606.0", + "@aws-sdk/core": "3.598.0", + "@aws-sdk/credential-provider-node": "3.600.0", + "@aws-sdk/middleware-host-header": "3.598.0", + "@aws-sdk/middleware-logger": "3.598.0", + "@aws-sdk/middleware-recursion-detection": "3.598.0", + "@aws-sdk/middleware-user-agent": "3.598.0", + "@aws-sdk/region-config-resolver": "3.598.0", + "@aws-sdk/types": "3.598.0", + "@aws-sdk/util-endpoints": "3.598.0", + "@aws-sdk/util-user-agent-browser": "3.598.0", + "@aws-sdk/util-user-agent-node": "3.598.0", + "@smithy/config-resolver": "^3.0.2", + "@smithy/core": "^2.2.1", + "@smithy/fetch-http-handler": "^3.0.2", + "@smithy/hash-node": "^3.0.1", + "@smithy/invalid-dependency": "^3.0.1", + "@smithy/middleware-content-length": "^3.0.1", + "@smithy/middleware-endpoint": "^3.0.2", + "@smithy/middleware-retry": "^3.0.4", + "@smithy/middleware-serde": "^3.0.1", + "@smithy/middleware-stack": "^3.0.1", + "@smithy/node-config-provider": "^3.1.1", + "@smithy/node-http-handler": "^3.0.1", + "@smithy/protocol-http": "^4.0.1", + "@smithy/smithy-client": "^3.1.2", + "@smithy/types": "^3.1.0", + "@smithy/url-parser": "^3.0.1", + "@smithy/util-base64": "^3.0.0", + "@smithy/util-body-length-browser": "^3.0.0", + "@smithy/util-body-length-node": "^3.0.0", + "@smithy/util-defaults-mode-browser": "^3.0.4", + "@smithy/util-defaults-mode-node": "^3.0.4", + "@smithy/util-endpoints": "^2.0.2", + "@smithy/util-middleware": "^3.0.1", + "@smithy/util-retry": "^3.0.1", + "@smithy/util-utf8": "^3.0.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@aws-sdk/core": { + "version": "3.598.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/core/-/core-3.598.0.tgz", + "integrity": "sha512-HaSjt7puO5Cc7cOlrXFCW0rtA0BM9lvzjl56x0A20Pt+0wxXGeTOZZOkXQIepbrFkV2e/HYukuT9e99vXDm59g==", + "optional": true, + "peer": true, + "dependencies": { + "@smithy/core": "^2.2.1", + "@smithy/protocol-http": "^4.0.1", + "@smithy/signature-v4": "^3.1.0", + "@smithy/smithy-client": "^3.1.2", + "@smithy/types": "^3.1.0", + "fast-xml-parser": "4.2.5", + "tslib": "^2.6.2" }, - "funding": { - "url": "https://opencollective.com/turf" + "engines": { + "node": ">=16.0.0" } }, - "../../../service/node_modules/@turf/boolean-point-on-line": { - "version": "6.5.0", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@aws-sdk/credential-provider-cognito-identity": { + "version": "3.606.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-cognito-identity/-/credential-provider-cognito-identity-3.606.0.tgz", + "integrity": "sha512-4wGvXilFLkozs4/dMnn9NvxZbL9oyyReoF9aR3kGUZ0QVO8cCBp/Zkr8IXZifhVBo9/esJdMFnR9lEXR7Yuleg==", + "optional": true, "peer": true, "dependencies": { - "@turf/helpers": "^6.5.0", - "@turf/invariant": "^6.5.0" + "@aws-sdk/client-cognito-identity": "3.606.0", + "@aws-sdk/types": "3.598.0", + "@smithy/property-provider": "^3.1.1", + "@smithy/types": "^3.1.0", + "tslib": "^2.6.2" }, - "funding": { - "url": "https://opencollective.com/turf" + "engines": { + "node": ">=16.0.0" } }, - "../../../service/node_modules/@turf/boolean-within": { - "version": "6.5.0", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@aws-sdk/credential-provider-env": { + "version": "3.598.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-env/-/credential-provider-env-3.598.0.tgz", + "integrity": "sha512-vi1khgn7yXzLCcgSIzQrrtd2ilUM0dWodxj3PQ6BLfP0O+q1imO3hG1nq7DVyJtq7rFHs6+9N8G4mYvTkxby2w==", + "optional": true, "peer": true, "dependencies": { - "@turf/bbox": "^6.5.0", - "@turf/boolean-point-in-polygon": "^6.5.0", - "@turf/boolean-point-on-line": "^6.5.0", - "@turf/helpers": "^6.5.0", - "@turf/invariant": "^6.5.0" + "@aws-sdk/types": "3.598.0", + "@smithy/property-provider": "^3.1.1", + "@smithy/types": "^3.1.0", + "tslib": "^2.6.2" }, - "funding": { - "url": "https://opencollective.com/turf" + "engines": { + "node": ">=16.0.0" } }, - "../../../service/node_modules/@turf/boolean-within/node_modules/@turf/bbox": { - "version": "6.5.0", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@aws-sdk/credential-provider-http": { + "version": "3.598.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-http/-/credential-provider-http-3.598.0.tgz", + "integrity": "sha512-N7cIafi4HVlQvEgvZSo1G4T9qb/JMLGMdBsDCT5XkeJrF0aptQWzTFH0jIdZcLrMYvzPcuEyO3yCBe6cy/ba0g==", + "optional": true, "peer": true, "dependencies": { - "@turf/helpers": "^6.5.0", - "@turf/meta": "^6.5.0" + "@aws-sdk/types": "3.598.0", + "@smithy/fetch-http-handler": "^3.0.2", + "@smithy/node-http-handler": "^3.0.1", + "@smithy/property-provider": "^3.1.1", + "@smithy/protocol-http": "^4.0.1", + "@smithy/smithy-client": "^3.1.2", + "@smithy/types": "^3.1.0", + "@smithy/util-stream": "^3.0.2", + "tslib": "^2.6.2" }, - "funding": { - "url": "https://opencollective.com/turf" + "engines": { + "node": ">=16.0.0" } }, - "../../../service/node_modules/@turf/centroid": { - "version": "6.0.2", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@aws-sdk/credential-provider-ini": { + "version": "3.598.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.598.0.tgz", + "integrity": "sha512-/ppcIVUbRwDIwJDoYfp90X3+AuJo2mvE52Y1t2VSrvUovYn6N4v95/vXj6LS8CNDhz2jvEJYmu+0cTMHdhI6eA==", + "optional": true, "peer": true, "dependencies": { - "@turf/helpers": "6.x", - "@turf/meta": "6.x" + "@aws-sdk/credential-provider-env": "3.598.0", + "@aws-sdk/credential-provider-http": "3.598.0", + "@aws-sdk/credential-provider-process": "3.598.0", + "@aws-sdk/credential-provider-sso": "3.598.0", + "@aws-sdk/credential-provider-web-identity": "3.598.0", + "@aws-sdk/types": "3.598.0", + "@smithy/credential-provider-imds": "^3.1.1", + "@smithy/property-provider": "^3.1.1", + "@smithy/shared-ini-file-loader": "^3.1.1", + "@smithy/types": "^3.1.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" + }, + "peerDependencies": { + "@aws-sdk/client-sts": "^3.598.0" } }, - "../../../service/node_modules/@turf/clone": { - "version": "6.5.0", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@aws-sdk/credential-provider-node": { + "version": "3.600.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.600.0.tgz", + "integrity": "sha512-1pC7MPMYD45J7yFjA90SxpR0yaSvy+yZiq23aXhAPZLYgJBAxHLu0s0mDCk/piWGPh8+UGur5K0bVdx4B1D5hw==", + "optional": true, "peer": true, "dependencies": { - "@turf/helpers": "^6.5.0" + "@aws-sdk/credential-provider-env": "3.598.0", + "@aws-sdk/credential-provider-http": "3.598.0", + "@aws-sdk/credential-provider-ini": "3.598.0", + "@aws-sdk/credential-provider-process": "3.598.0", + "@aws-sdk/credential-provider-sso": "3.598.0", + "@aws-sdk/credential-provider-web-identity": "3.598.0", + "@aws-sdk/types": "3.598.0", + "@smithy/credential-provider-imds": "^3.1.1", + "@smithy/property-provider": "^3.1.1", + "@smithy/shared-ini-file-loader": "^3.1.1", + "@smithy/types": "^3.1.0", + "tslib": "^2.6.2" }, - "funding": { - "url": "https://opencollective.com/turf" + "engines": { + "node": ">=16.0.0" } }, - "../../../service/node_modules/@turf/distance": { - "version": "6.5.0", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@aws-sdk/credential-provider-process": { + "version": "3.598.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-process/-/credential-provider-process-3.598.0.tgz", + "integrity": "sha512-rM707XbLW8huMk722AgjVyxu2tMZee++fNA8TJVNgs1Ma02Wx6bBrfIvlyK0rCcIRb0WdQYP6fe3Xhiu4e8IBA==", + "optional": true, "peer": true, "dependencies": { - "@turf/helpers": "^6.5.0", - "@turf/invariant": "^6.5.0" + "@aws-sdk/types": "3.598.0", + "@smithy/property-provider": "^3.1.1", + "@smithy/shared-ini-file-loader": "^3.1.1", + "@smithy/types": "^3.1.0", + "tslib": "^2.6.2" }, - "funding": { - "url": "https://opencollective.com/turf" + "engines": { + "node": ">=16.0.0" } }, - "../../../service/node_modules/@turf/helpers": { - "version": "6.5.0", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@aws-sdk/credential-provider-sso": { + "version": "3.598.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.598.0.tgz", + "integrity": "sha512-5InwUmrAuqQdOOgxTccRayMMkSmekdLk6s+az9tmikq0QFAHUCtofI+/fllMXSR9iL6JbGYi1940+EUmS4pHJA==", + "optional": true, "peer": true, - "funding": { - "url": "https://opencollective.com/turf" + "dependencies": { + "@aws-sdk/client-sso": "3.598.0", + "@aws-sdk/token-providers": "3.598.0", + "@aws-sdk/types": "3.598.0", + "@smithy/property-provider": "^3.1.1", + "@smithy/shared-ini-file-loader": "^3.1.1", + "@smithy/types": "^3.1.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" } }, - "../../../service/node_modules/@turf/intersect": { - "version": "6.5.0", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@aws-sdk/credential-provider-web-identity": { + "version": "3.598.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.598.0.tgz", + "integrity": "sha512-GV5GdiMbz5Tz9JO4NJtRoFXjW0GPEujA0j+5J/B723rTN+REHthJu48HdBKouHGhdzkDWkkh1bu52V02Wprw8w==", + "optional": true, "peer": true, "dependencies": { - "@turf/helpers": "^6.5.0", - "@turf/invariant": "^6.5.0", - "polygon-clipping": "^0.15.3" + "@aws-sdk/types": "3.598.0", + "@smithy/property-provider": "^3.1.1", + "@smithy/types": "^3.1.0", + "tslib": "^2.6.2" }, - "funding": { - "url": "https://opencollective.com/turf" + "engines": { + "node": ">=16.0.0" + }, + "peerDependencies": { + "@aws-sdk/client-sts": "^3.598.0" } }, - "../../../service/node_modules/@turf/invariant": { - "version": "6.5.0", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@aws-sdk/credential-providers": { + "version": "3.606.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-providers/-/credential-providers-3.606.0.tgz", + "integrity": "sha512-34hswGNDWBFvp4Hi4Gv9DIJ4Ks0Nbg8w3emFsPVHLqqI6X2Wd0hJTf+mi1kMhy/AQXt5LisKLw6wjNIKD2+KGg==", + "optional": true, "peer": true, "dependencies": { - "@turf/helpers": "^6.5.0" + "@aws-sdk/client-cognito-identity": "3.606.0", + "@aws-sdk/client-sso": "3.598.0", + "@aws-sdk/client-sts": "3.606.0", + "@aws-sdk/credential-provider-cognito-identity": "3.606.0", + "@aws-sdk/credential-provider-env": "3.598.0", + "@aws-sdk/credential-provider-http": "3.598.0", + "@aws-sdk/credential-provider-ini": "3.598.0", + "@aws-sdk/credential-provider-node": "3.600.0", + "@aws-sdk/credential-provider-process": "3.598.0", + "@aws-sdk/credential-provider-sso": "3.598.0", + "@aws-sdk/credential-provider-web-identity": "3.598.0", + "@aws-sdk/types": "3.598.0", + "@smithy/credential-provider-imds": "^3.1.1", + "@smithy/property-provider": "^3.1.1", + "@smithy/types": "^3.1.0", + "tslib": "^2.6.2" }, - "funding": { - "url": "https://opencollective.com/turf" + "engines": { + "node": ">=16.0.0" } }, - "../../../service/node_modules/@turf/kinks": { - "version": "6.0.0", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@aws-sdk/middleware-host-header": { + "version": "3.598.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-host-header/-/middleware-host-header-3.598.0.tgz", + "integrity": "sha512-WiaG059YBQwQraNejLIi0gMNkX7dfPZ8hDIhvMr5aVPRbaHH8AYF3iNSsXYCHvA2Cfa1O9haYXsuMF9flXnCmA==", + "optional": true, "peer": true, "dependencies": { - "@turf/helpers": "6.x" + "@aws-sdk/types": "3.598.0", + "@smithy/protocol-http": "^4.0.1", + "@smithy/types": "^3.1.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" } }, - "../../../service/node_modules/@turf/line-intersect": { - "version": "6.5.0", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@aws-sdk/middleware-logger": { + "version": "3.598.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-logger/-/middleware-logger-3.598.0.tgz", + "integrity": "sha512-bxBjf/VYiu3zfu8SYM2S9dQQc3tz5uBAOcPz/Bt8DyyK3GgOpjhschH/2XuUErsoUO1gDJqZSdGOmuHGZQn00Q==", + "optional": true, "peer": true, "dependencies": { - "@turf/helpers": "^6.5.0", - "@turf/invariant": "^6.5.0", - "@turf/line-segment": "^6.5.0", - "@turf/meta": "^6.5.0", - "geojson-rbush": "3.x" + "@aws-sdk/types": "3.598.0", + "@smithy/types": "^3.1.0", + "tslib": "^2.6.2" }, - "funding": { - "url": "https://opencollective.com/turf" + "engines": { + "node": ">=16.0.0" } }, - "../../../service/node_modules/@turf/line-segment": { - "version": "6.5.0", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@aws-sdk/middleware-recursion-detection": { + "version": "3.598.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-recursion-detection/-/middleware-recursion-detection-3.598.0.tgz", + "integrity": "sha512-vjT9BeFY9FeN0f8hm2l6F53tI0N5bUq6RcDkQXKNabXBnQxKptJRad6oP2X5y3FoVfBLOuDkQgiC2940GIPxtQ==", + "optional": true, "peer": true, "dependencies": { - "@turf/helpers": "^6.5.0", - "@turf/invariant": "^6.5.0", - "@turf/meta": "^6.5.0" + "@aws-sdk/types": "3.598.0", + "@smithy/protocol-http": "^4.0.1", + "@smithy/types": "^3.1.0", + "tslib": "^2.6.2" }, - "funding": { - "url": "https://opencollective.com/turf" + "engines": { + "node": ">=16.0.0" } }, - "../../../service/node_modules/@turf/meta": { - "version": "6.5.0", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@aws-sdk/middleware-user-agent": { + "version": "3.598.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-user-agent/-/middleware-user-agent-3.598.0.tgz", + "integrity": "sha512-4tjESlHG5B5MdjUaLK7tQs/miUtHbb6deauQx8ryqSBYOhfHVgb1ZnzvQR0bTrhpqUg0WlybSkDaZAICf9xctg==", + "optional": true, "peer": true, "dependencies": { - "@turf/helpers": "^6.5.0" + "@aws-sdk/types": "3.598.0", + "@aws-sdk/util-endpoints": "3.598.0", + "@smithy/protocol-http": "^4.0.1", + "@smithy/types": "^3.1.0", + "tslib": "^2.6.2" }, - "funding": { - "url": "https://opencollective.com/turf" + "engines": { + "node": ">=16.0.0" } }, - "../../../service/node_modules/@turf/point-to-line-distance": { - "version": "6.5.0", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@aws-sdk/region-config-resolver": { + "version": "3.598.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/region-config-resolver/-/region-config-resolver-3.598.0.tgz", + "integrity": "sha512-oYXhmTokSav4ytmWleCr3rs/1nyvZW/S0tdi6X7u+dLNL5Jee+uMxWGzgOrWK6wrQOzucLVjS4E/wA11Kv2GTw==", + "optional": true, "peer": true, "dependencies": { - "@turf/bearing": "^6.5.0", - "@turf/distance": "^6.5.0", - "@turf/helpers": "^6.5.0", - "@turf/invariant": "^6.5.0", - "@turf/meta": "^6.5.0", - "@turf/projection": "^6.5.0", - "@turf/rhumb-bearing": "^6.5.0", - "@turf/rhumb-distance": "^6.5.0" + "@aws-sdk/types": "3.598.0", + "@smithy/node-config-provider": "^3.1.1", + "@smithy/types": "^3.1.0", + "@smithy/util-config-provider": "^3.0.0", + "@smithy/util-middleware": "^3.0.1", + "tslib": "^2.6.2" }, - "funding": { - "url": "https://opencollective.com/turf" + "engines": { + "node": ">=16.0.0" } }, - "../../../service/node_modules/@turf/polygon-to-line": { - "version": "6.5.0", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@aws-sdk/token-providers": { + "version": "3.598.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/token-providers/-/token-providers-3.598.0.tgz", + "integrity": "sha512-TKY1EVdHVBnZqpyxyTHdpZpa1tUpb6nxVeRNn1zWG8QB5MvH4ALLd/jR+gtmWDNQbIG4cVuBOZFVL8hIYicKTA==", + "optional": true, "peer": true, "dependencies": { - "@turf/helpers": "^6.5.0", - "@turf/invariant": "^6.5.0" + "@aws-sdk/types": "3.598.0", + "@smithy/property-provider": "^3.1.1", + "@smithy/shared-ini-file-loader": "^3.1.1", + "@smithy/types": "^3.1.0", + "tslib": "^2.6.2" }, - "funding": { - "url": "https://opencollective.com/turf" + "engines": { + "node": ">=16.0.0" + }, + "peerDependencies": { + "@aws-sdk/client-sso-oidc": "^3.598.0" } }, - "../../../service/node_modules/@turf/projection": { - "version": "6.5.0", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@aws-sdk/types": { + "version": "3.598.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.598.0.tgz", + "integrity": "sha512-742uRl6z7u0LFmZwDrFP6r1wlZcgVPw+/TilluDJmCAR8BgRw3IR+743kUXKBGd8QZDRW2n6v/PYsi/AWCDDMQ==", + "optional": true, "peer": true, "dependencies": { - "@turf/clone": "^6.5.0", - "@turf/helpers": "^6.5.0", - "@turf/meta": "^6.5.0" + "@smithy/types": "^3.1.0", + "tslib": "^2.6.2" }, - "funding": { - "url": "https://opencollective.com/turf" + "engines": { + "node": ">=16.0.0" } }, - "../../../service/node_modules/@turf/rhumb-bearing": { - "version": "6.5.0", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@aws-sdk/util-endpoints": { + "version": "3.598.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-endpoints/-/util-endpoints-3.598.0.tgz", + "integrity": "sha512-Qo9UoiVVZxcOEdiOMZg3xb1mzkTxrhd4qSlg5QQrfWPJVx/QOg+Iy0NtGxPtHtVZNHZxohYwDwV/tfsnDSE2gQ==", + "optional": true, "peer": true, "dependencies": { - "@turf/helpers": "^6.5.0", - "@turf/invariant": "^6.5.0" + "@aws-sdk/types": "3.598.0", + "@smithy/types": "^3.1.0", + "@smithy/util-endpoints": "^2.0.2", + "tslib": "^2.6.2" }, - "funding": { - "url": "https://opencollective.com/turf" + "engines": { + "node": ">=16.0.0" } }, - "../../../service/node_modules/@turf/rhumb-distance": { - "version": "6.5.0", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@aws-sdk/util-locate-window": { + "version": "3.568.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-locate-window/-/util-locate-window-3.568.0.tgz", + "integrity": "sha512-3nh4TINkXYr+H41QaPelCceEB2FXP3fxp93YZXB/kqJvX0U9j0N0Uk45gvsjmEPzG8XxkPEeLIfT2I1M7A6Lig==", + "optional": true, "peer": true, "dependencies": { - "@turf/helpers": "^6.5.0", - "@turf/invariant": "^6.5.0" + "tslib": "^2.6.2" }, - "funding": { - "url": "https://opencollective.com/turf" + "engines": { + "node": ">=16.0.0" } }, - "../../../service/node_modules/@types/async": { - "version": "3.2.16", - "dev": true, - "license": "MIT", - "peer": true - }, - "../../../service/node_modules/@types/babel-types": { - "version": "7.0.11", - "license": "MIT", - "peer": true - }, - "../../../service/node_modules/@types/babylon": { - "version": "6.16.6", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@aws-sdk/util-user-agent-browser": { + "version": "3.598.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-browser/-/util-user-agent-browser-3.598.0.tgz", + "integrity": "sha512-36Sxo6F+ykElaL1mWzWjlg+1epMpSe8obwhCN1yGE7Js9ywy5U6k6l+A3q3YM9YRbm740sNxncbwLklMvuhTKw==", + "optional": true, "peer": true, "dependencies": { - "@types/babel-types": "*" + "@aws-sdk/types": "3.598.0", + "@smithy/types": "^3.1.0", + "bowser": "^2.11.0", + "tslib": "^2.6.2" } }, - "../../../service/node_modules/@types/body-parser": { - "version": "1.19.2", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@aws-sdk/util-user-agent-node": { + "version": "3.598.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.598.0.tgz", + "integrity": "sha512-oyWGcOlfTdzkC6SVplyr0AGh54IMrDxbhg5RxJ5P+V4BKfcDoDcZV9xenUk9NsOi9MuUjxMumb9UJGkDhM1m0A==", + "optional": true, "peer": true, "dependencies": { - "@types/connect": "*", - "@types/node": "*" + "@aws-sdk/types": "3.598.0", + "@smithy/node-config-provider": "^3.1.1", + "@smithy/types": "^3.1.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" + }, + "peerDependencies": { + "aws-crt": ">=1.0.0" + }, + "peerDependenciesMeta": { + "aws-crt": { + "optional": true + } } }, - "../../../service/node_modules/@types/bson": { - "version": "1.0.11", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/@babel/code-frame": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.24.7.tgz", + "integrity": "sha512-BcYH1CVJBO9tvyIZ2jVeXgSIMvGZ2FDRvDdOIVQyuklNKSsx+eppDEBq/g47Ayw+RqNFE+URvOShmf+f/qwAlA==", + "extraneous": true, "dependencies": { - "@types/node": "*" + "@babel/highlight": "^7.24.7", + "picocolors": "^1.0.0" + }, + "engines": { + "node": ">=6.9.0" } }, - "../../../service/node_modules/@types/busboy": { - "version": "1.5.0", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/@babel/generator": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.24.7.tgz", + "integrity": "sha512-oipXieGC3i45Y1A41t4tAqpnEZWgB/lC6Ehh6+rOviR5XWpTtMmLN+fGjz9vOiNRt0p6RtO6DtD0pdU3vpqdSA==", + "extraneous": true, "dependencies": { - "@types/node": "*" + "@babel/types": "^7.24.7", + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.25", + "jsesc": "^2.5.1" + }, + "engines": { + "node": ">=6.9.0" } }, - "../../../service/node_modules/@types/chai": { - "version": "4.3.4", - "dev": true, - "license": "MIT", - "peer": true - }, - "../../../service/node_modules/@types/chai-as-promised": { - "version": "7.1.5", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/@babel/helper-environment-visitor": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.24.7.tgz", + "integrity": "sha512-DoiN84+4Gnd0ncbBOM9AZENV4a5ZiL39HYMyZJGZ/AZEykHYdJw0wW3kdcsh9/Kn+BRXHLkkklZ51ecPKmI1CQ==", + "extraneous": true, "dependencies": { - "@types/chai": "*" + "@babel/types": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" } }, - "../../../service/node_modules/@types/connect": { - "version": "3.4.35", - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/@babel/helper-function-name": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.24.7.tgz", + "integrity": "sha512-FyoJTsj/PEUWu1/TYRiXTIHc8lbw+TDYkZuoE43opPS5TrI7MyONBE1oNvfguEXAD9yhQRrVBnXdXzSLQl9XnA==", + "extraneous": true, "dependencies": { - "@types/node": "*" + "@babel/template": "^7.24.7", + "@babel/types": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" } }, - "../../../service/node_modules/@types/cookiejar": { - "version": "2.1.2", - "dev": true, - "license": "MIT", - "peer": true + "node_modules/@ngageoint/mage.service/node_modules/@babel/helper-hoist-variables": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.24.7.tgz", + "integrity": "sha512-MJJwhkoGy5c4ehfoRyrJ/owKeMl19U54h27YYftT0o2teQ3FJ3nQUf/I3LlJsX4l3qlw7WRXUmiyajvHXoTubQ==", + "extraneous": true, + "dependencies": { + "@babel/types": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + } }, - "../../../service/node_modules/@types/deep-equal": { - "version": "1.0.1", - "dev": true, - "license": "MIT", - "peer": true + "node_modules/@ngageoint/mage.service/node_modules/@babel/helper-split-export-declaration": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.24.7.tgz", + "integrity": "sha512-oy5V7pD+UvfkEATUKvIjvIAH/xCzfsFVw7ygW2SI6NClZzquT+mwdTfgfdbUiceh6iQO0CHtCPsyze/MZ2YbAA==", + "extraneous": true, + "dependencies": { + "@babel/types": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + } }, - "../../../service/node_modules/@types/eslint-visitor-keys": { - "version": "1.0.0", - "dev": true, - "license": "MIT", - "peer": true - }, - "../../../service/node_modules/@types/express": { - "version": "4.17.14", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@babel/helper-string-parser": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.24.7.tgz", + "integrity": "sha512-7MbVt6xrwFQbunH2DNQsAP5sTGxfqQtErvBIvIMi6EQnbgUOuVYanvREcmFrOPhoXBrTtjhhP+lW+o5UfK+tDg==", "peer": true, - "dependencies": { - "@types/body-parser": "*", - "@types/express-serve-static-core": "^4.17.18", - "@types/qs": "*", - "@types/serve-static": "*" + "engines": { + "node": ">=6.9.0" } }, - "../../../service/node_modules/@types/express-serve-static-core": { - "version": "4.17.31", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@babel/helper-validator-identifier": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.24.7.tgz", + "integrity": "sha512-rR+PBcQ1SMQDDyF6X0wxtG8QyLCgUB0eRAGguqRLfkCA87l7yAP7ehq8SNj96OOGTO8OBV70KhuFYcIkHXOg0w==", "peer": true, - "dependencies": { - "@types/node": "*", - "@types/qs": "*", - "@types/range-parser": "*" + "engines": { + "node": ">=6.9.0" } }, - "../../../service/node_modules/@types/fs-extra": { - "version": "8.1.2", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/@babel/highlight": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.24.7.tgz", + "integrity": "sha512-EStJpq4OuY8xYfhGVXngigBJRWxftKX9ksiGDnmlY3o7B/V7KIAc9X4oiK87uPJSc/vs5L869bem5fhZa8caZw==", + "extraneous": true, "dependencies": { - "@types/node": "*" + "@babel/helper-validator-identifier": "^7.24.7", + "chalk": "^2.4.2", + "js-tokens": "^4.0.0", + "picocolors": "^1.0.0" + }, + "engines": { + "node": ">=6.9.0" } }, - "../../../service/node_modules/@types/geojson": { - "version": "7946.0.10", - "license": "MIT", - "peer": true - }, - "../../../service/node_modules/@types/glob": { - "version": "7.2.0", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/@babel/highlight/node_modules/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==", + "extraneous": true, "dependencies": { - "@types/minimatch": "*", - "@types/node": "*" + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" } }, - "../../../service/node_modules/@types/json-schema": { - "version": "7.0.11", - "license": "MIT", - "peer": true - }, - "../../../service/node_modules/@types/ldapjs": { - "version": "1.0.11", - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/@babel/highlight/node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "extraneous": true, "dependencies": { - "@types/node": "*" + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" } }, - "../../../service/node_modules/@types/lodash": { - "version": "4.14.190", - "dev": true, - "license": "MIT", - "peer": true - }, - "../../../service/node_modules/@types/mime": { - "version": "3.0.1", - "license": "MIT", - "peer": true + "node_modules/@ngageoint/mage.service/node_modules/@babel/highlight/node_modules/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==", + "extraneous": true, + "dependencies": { + "color-name": "1.1.3" + } }, - "../../../service/node_modules/@types/mime-types": { - "version": "2.1.1", - "license": "MIT", - "peer": true + "node_modules/@ngageoint/mage.service/node_modules/@babel/highlight/node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", + "extraneous": true }, - "../../../service/node_modules/@types/minimatch": { - "version": "5.1.2", - "dev": true, - "license": "MIT", - "peer": true + "node_modules/@ngageoint/mage.service/node_modules/@babel/highlight/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "extraneous": true, + "engines": { + "node": ">=0.8.0" + } }, - "../../../service/node_modules/@types/mocha": { - "version": "7.0.2", - "dev": true, - "license": "MIT", - "peer": true + "node_modules/@ngageoint/mage.service/node_modules/@babel/highlight/node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "extraneous": true, + "engines": { + "node": ">=4" + } }, - "../../../service/node_modules/@types/multer": { - "version": "1.4.7", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/@babel/highlight/node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "extraneous": true, "dependencies": { - "@types/express": "*" + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" } }, - "../../../service/node_modules/@types/node": { - "version": "14.18.33", - "license": "MIT", - "peer": true - }, - "../../../service/node_modules/@types/node-fetch": { - "version": "2.6.2", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@babel/parser": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.24.7.tgz", + "integrity": "sha512-9uUYRm6OqQrCqQdG1iCBwBPZgN8ciDBro2nIOFaiRz1/BCxaI7CNvQbDHvsArAC7Tw9Hda/B3U+6ui9u4HWXPw==", "peer": true, - "dependencies": { - "@types/node": "*", - "form-data": "^3.0.0" + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": ">=6.0.0" } }, - "../../../service/node_modules/@types/passport": { - "version": "1.0.11", - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/@babel/template": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.24.7.tgz", + "integrity": "sha512-jYqfPrU9JTF0PmPy1tLYHW4Mp4KlgxJD9l2nP9fD6yT/ICi554DmrWBAEYpIelzjHf1msDP3PxJIRt/nFNfBig==", + "extraneous": true, "dependencies": { - "@types/express": "*" + "@babel/code-frame": "^7.24.7", + "@babel/parser": "^7.24.7", + "@babel/types": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" } }, - "../../../service/node_modules/@types/proj4": { - "version": "2.5.2", - "license": "MIT", - "peer": true - }, - "../../../service/node_modules/@types/qs": { - "version": "6.9.7", - "license": "MIT", - "peer": true + "node_modules/@ngageoint/mage.service/node_modules/@babel/traverse": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.24.7.tgz", + "integrity": "sha512-yb65Ed5S/QAcewNPh0nZczy9JdYXkkAbIsEo+P7BE7yO3txAY30Y/oPa3QkQ5It3xVG2kpKMg9MsdxZaO31uKA==", + "extraneous": true, + "dependencies": { + "@babel/code-frame": "^7.24.7", + "@babel/generator": "^7.24.7", + "@babel/helper-environment-visitor": "^7.24.7", + "@babel/helper-function-name": "^7.24.7", + "@babel/helper-hoist-variables": "^7.24.7", + "@babel/helper-split-export-declaration": "^7.24.7", + "@babel/parser": "^7.24.7", + "@babel/types": "^7.24.7", + "debug": "^4.3.1", + "globals": "^11.1.0" + }, + "engines": { + "node": ">=6.9.0" + } }, - "../../../service/node_modules/@types/range-parser": { - "version": "1.2.4", - "license": "MIT", - "peer": true + "node_modules/@ngageoint/mage.service/node_modules/@babel/traverse/node_modules/globals": { + "version": "11.12.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", + "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", + "extraneous": true, + "engines": { + "node": ">=4" + } }, - "../../../service/node_modules/@types/serve-static": { - "version": "1.15.0", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@babel/types": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.24.7.tgz", + "integrity": "sha512-XEFXSlxiG5td2EJRe8vOmRbaXVgfcBlszKujvVmWIK/UpywWljQCfzAv3RQCGujWQ1RD4YYWEAqDXfuJiy8f5Q==", "peer": true, "dependencies": { - "@types/mime": "*", - "@types/node": "*" + "@babel/helper-string-parser": "^7.24.7", + "@babel/helper-validator-identifier": "^7.24.7", + "to-fast-properties": "^2.0.0" + }, + "engines": { + "node": ">=6.9.0" } }, - "../../../service/node_modules/@types/sinon": { - "version": "9.0.11", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/@eslint-community/eslint-utils": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.4.0.tgz", + "integrity": "sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==", + "extraneous": true, "dependencies": { - "@types/sinonjs__fake-timers": "*" + "eslint-visitor-keys": "^3.3.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "peerDependencies": { + "eslint": "^6.0.0 || ^7.0.0 || >=8.0.0" } }, - "../../../service/node_modules/@types/sinon-chai": { - "version": "3.2.9", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/@eslint-community/regexpp": { + "version": "4.11.0", + "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.11.0.tgz", + "integrity": "sha512-G/M/tIiMrTAxEWRfLfQJMmGNX28IxBg4PBz8XqQhqUHLFI6TL2htpIB1iQCj144V5ee/JaKyT9/WZ0MGZWfA7A==", + "extraneous": true, + "engines": { + "node": "^12.0.0 || ^14.0.0 || >=16.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@eslint/eslintrc": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.4.tgz", + "integrity": "sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ==", + "extraneous": true, "dependencies": { - "@types/chai": "*", - "@types/sinon": "*" + "ajv": "^6.12.4", + "debug": "^4.3.2", + "espree": "^9.6.0", + "globals": "^13.19.0", + "ignore": "^5.2.0", + "import-fresh": "^3.2.1", + "js-yaml": "^4.1.0", + "minimatch": "^3.1.2", + "strip-json-comments": "^3.1.1" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" } }, - "../../../service/node_modules/@types/sinonjs__fake-timers": { - "version": "8.1.2", - "dev": true, - "license": "MIT", - "peer": true + "node_modules/@ngageoint/mage.service/node_modules/@eslint/eslintrc/node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "extraneous": true }, - "../../../service/node_modules/@types/superagent": { - "version": "4.1.16", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/@eslint/eslintrc/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "extraneous": true, "dependencies": { - "@types/cookiejar": "*", - "@types/node": "*" + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" } }, - "../../../service/node_modules/@types/supertest": { - "version": "2.0.12", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/@eslint/eslintrc/node_modules/js-yaml": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", + "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", + "extraneous": true, "dependencies": { - "@types/superagent": "*" + "argparse": "^2.0.1" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" } }, - "../../../service/node_modules/@types/tmp": { - "version": "0.2.3", - "dev": true, - "license": "MIT", - "peer": true - }, - "../../../service/node_modules/@types/uniqid": { - "version": "5.3.2", - "dev": true, - "license": "MIT", - "peer": true - }, - "../../../service/node_modules/@types/webidl-conversions": { - "version": "7.0.0", - "license": "MIT", - "peer": true + "node_modules/@ngageoint/mage.service/node_modules/@eslint/eslintrc/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "extraneous": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } }, - "../../../service/node_modules/@types/whatwg-url": { - "version": "8.2.2", + "node_modules/@ngageoint/mage.service/node_modules/@eslint/js": { + "version": "8.57.1", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.57.1.tgz", + "integrity": "sha512-d9zaMRSTIKDLhctzH12MtXvJKSSUhaHcjV+2Z+GK+EEY7XKpP5yR4x+N3TAcHTcu963nIr+TMcCb4DBCYX1z6Q==", + "extraneous": true, "license": "MIT", - "peer": true, - "dependencies": { - "@types/node": "*", - "@types/webidl-conversions": "*" + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" } }, - "../../../service/node_modules/@typescript-eslint/eslint-plugin": { - "version": "2.21.0", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/@fluffy-spoon/substitute": { + "version": "1.208.0", + "resolved": "https://registry.npmjs.org/@fluffy-spoon/substitute/-/substitute-1.208.0.tgz", + "integrity": "sha512-BU5vKRoK4OYlKzDtyg4HbtWnUNLOvV0ntqEZIphz+mq2G0HlVFywwJ7M+FbIcnJVDbUReS01FyL5x8R01r7zBg==", + "extraneous": true, "license": "MIT", - "peer": true, - "dependencies": { - "@typescript-eslint/experimental-utils": "2.21.0", - "eslint-utils": "^1.4.3", - "functional-red-black-tree": "^1.0.1", - "regexpp": "^3.0.0", - "tsutils": "^3.17.1" - }, "engines": { - "node": "^8.10.0 || ^10.13.0 || >=11.10.1" + "node": ">=10" }, "funding": { "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "@typescript-eslint/parser": "^2.0.0", - "eslint": "^5.0.0 || ^6.0.0" + "url": "https://opencollective.com/substitute-js#section-contribute" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@humanwhocodes/config-array": { + "version": "0.13.0", + "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.13.0.tgz", + "integrity": "sha512-DZLEEqFWQFiyK6h5YIeynKx7JlvCYWL0cImfSRXZ9l4Sg2efkFGTuFf6vzXjK1cq6IYkU+Eg/JizXw+TD2vRNw==", + "deprecated": "Use @eslint/config-array instead", + "extraneous": true, + "license": "Apache-2.0", + "dependencies": { + "@humanwhocodes/object-schema": "^2.0.3", + "debug": "^4.3.1", + "minimatch": "^3.0.5" }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } + "engines": { + "node": ">=10.10.0" } }, - "../../../service/node_modules/@typescript-eslint/experimental-utils": { - "version": "2.21.0", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/@humanwhocodes/config-array/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "extraneous": true, "license": "MIT", - "peer": true, "dependencies": { - "@types/json-schema": "^7.0.3", - "@typescript-eslint/typescript-estree": "2.21.0", - "eslint-scope": "^5.0.0" + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@humanwhocodes/config-array/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "extraneous": true, + "license": "ISC", + "dependencies": { + "brace-expansion": "^1.1.7" }, "engines": { - "node": "^8.10.0 || ^10.13.0 || >=11.10.1" + "node": "*" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@humanwhocodes/module-importer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", + "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==", + "extraneous": true, + "engines": { + "node": ">=12.22" }, "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "eslint": "*" + "type": "github", + "url": "https://github.com/sponsors/nzakas" } }, - "../../../service/node_modules/@typescript-eslint/parser": { - "version": "2.21.0", - "dev": true, - "license": "BSD-2-Clause", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/@humanwhocodes/object-schema": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-2.0.3.tgz", + "integrity": "sha512-93zYdMES/c1D69yZiKDBj0V24vqNzB/koF26KPaagAfd3P/4gUlh3Dys5ogAK+Exi9QyzlD8x/08Zt7wIKcDcA==", + "deprecated": "Use @eslint/object-schema instead", + "extraneous": true, + "license": "BSD-3-Clause" + }, + "node_modules/@ngageoint/mage.service/node_modules/@isaacs/cliui": { + "version": "8.0.2", + "resolved": "https://registry.npmjs.org/@isaacs/cliui/-/cliui-8.0.2.tgz", + "integrity": "sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==", + "extraneous": true, "dependencies": { - "@types/eslint-visitor-keys": "^1.0.0", - "@typescript-eslint/experimental-utils": "2.21.0", - "@typescript-eslint/typescript-estree": "2.21.0", - "eslint-visitor-keys": "^1.1.0" + "string-width": "^5.1.2", + "string-width-cjs": "npm:string-width@^4.2.0", + "strip-ansi": "^7.0.1", + "strip-ansi-cjs": "npm:strip-ansi@^6.0.1", + "wrap-ansi": "^8.1.0", + "wrap-ansi-cjs": "npm:wrap-ansi@^7.0.0" }, "engines": { - "node": "^8.10.0 || ^10.13.0 || >=11.10.1" + "node": ">=12" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@isaacs/cliui/node_modules/ansi-regex": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", + "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==", + "extraneous": true, + "engines": { + "node": ">=12" }, "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "eslint": "^5.0.0 || ^6.0.0" + "url": "https://github.com/chalk/ansi-regex?sponsor=1" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@isaacs/cliui/node_modules/ansi-styles": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz", + "integrity": "sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==", + "extraneous": true, + "engines": { + "node": ">=12" }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "../../../service/node_modules/@typescript-eslint/typescript-estree": { - "version": "2.21.0", - "dev": true, - "license": "BSD-2-Clause", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/@isaacs/cliui/node_modules/emoji-regex": { + "version": "9.2.2", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", + "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/@isaacs/cliui/node_modules/string-width": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz", + "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==", + "extraneous": true, "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": "^6.3.0", - "tsutils": "^3.17.1" + "eastasianwidth": "^0.2.0", + "emoji-regex": "^9.2.2", + "strip-ansi": "^7.0.1" }, "engines": { - "node": "^8.10.0 || ^10.13.0 || >=11.10.1" + "node": ">=12" }, "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } + "url": "https://github.com/sponsors/sindresorhus" } }, - "../../../service/node_modules/@xmldom/xmldom": { - "version": "0.7.9", - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/@isaacs/cliui/node_modules/strip-ansi": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz", + "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==", + "extraneous": true, + "dependencies": { + "ansi-regex": "^6.0.1" + }, "engines": { - "node": ">=10.0.0" + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/strip-ansi?sponsor=1" } }, - "../../../service/node_modules/accepts": { - "version": "1.3.8", - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/@isaacs/cliui/node_modules/wrap-ansi": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-8.1.0.tgz", + "integrity": "sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==", + "extraneous": true, "dependencies": { - "mime-types": "~2.1.34", - "negotiator": "0.6.3" + "ansi-styles": "^6.1.0", + "string-width": "^5.0.1", + "strip-ansi": "^7.0.1" }, "engines": { - "node": ">= 0.6" + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" } }, - "../../../service/node_modules/acorn": { - "version": "8.8.2", - "dev": true, - "license": "MIT", - "peer": true, - "bin": { - "acorn": "bin/acorn" + "node_modules/@ngageoint/mage.service/node_modules/@jridgewell/gen-mapping": { + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz", + "integrity": "sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==", + "extraneous": true, + "dependencies": { + "@jridgewell/set-array": "^1.2.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.24" }, "engines": { - "node": ">=0.4.0" + "node": ">=6.0.0" } }, - "../../../service/node_modules/acorn-globals": { - "version": "3.1.0", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@jridgewell/resolve-uri": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz", + "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==", + "extraneous": true, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@jridgewell/set-array": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.2.1.tgz", + "integrity": "sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==", + "extraneous": true, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@jridgewell/sourcemap-codec": { + "version": "1.4.15", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz", + "integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/@jridgewell/trace-mapping": { + "version": "0.3.25", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz", + "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==", + "extraneous": true, + "dependencies": { + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@mongodb-js/saslprep": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/@mongodb-js/saslprep/-/saslprep-1.1.7.tgz", + "integrity": "sha512-dCHW/oEX0KJ4NjDULBo3JiOaK5+6axtpBbS+ao2ZInoAL9/YRQLhXzSNAFz7hP4nzLkIqsfYAK/PDE3+XHny0Q==", + "optional": true, "peer": true, "dependencies": { - "acorn": "^4.0.4" + "sparse-bitfield": "^3.0.3" } }, - "../../../service/node_modules/acorn-globals/node_modules/acorn": { - "version": "4.0.13", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@ngageoint/geopackage": { + "version": "4.2.6", + "resolved": "https://registry.npmjs.org/@ngageoint/geopackage/-/geopackage-4.2.6.tgz", + "integrity": "sha512-HT0WAhAySTv+p462SUkvOKlXoPWDI6LETdBqNl0mC55YxE7PSvPByRIh3r/ajqSirhJeydaoN2wCw0nw+es2bA==", "peer": true, + "dependencies": { + "@turf/bbox": "6.3.0", + "@turf/boolean-clockwise": "6.5.0", + "@turf/boolean-point-in-polygon": "6.5.0", + "@turf/boolean-within": "6.5.0", + "@turf/distance": "6.5.0", + "@turf/helpers": "6.5.0", + "@turf/intersect": "6.5.0", + "@turf/line-intersect": "6.5.0", + "@turf/point-to-line-distance": "6.5.0", + "@turf/polygon-to-line": "6.5.0", + "@types/geojson": "7946.0.8", + "@types/proj4": "2.5.2", + "file-type": "^16.5.4", + "image-size": "0.8.3", + "lodash": "4.17.21", + "proj4": "2.8.0", + "reproject": "1.2.5", + "rtree-sql.js": "1.7.0", + "simplify-js": "1.2.4", + "webworkify": "1.5.0", + "wkx": "0.4.8" + }, "bin": { - "acorn": "bin/acorn" + "geopackage": "cli" }, - "engines": { - "node": ">=0.4.0" + "optionalDependencies": { + "better-sqlite3": "^9.1.1", + "chalk": "4.1.1", + "inquirer": "8.0.0" } }, - "../../../service/node_modules/acorn-jsx": { - "version": "5.3.2", - "dev": true, - "license": "MIT", - "peer": true, - "peerDependencies": { - "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" - } + "node_modules/@ngageoint/mage.service/node_modules/@ngageoint/geopackage/node_modules/@types/geojson": { + "version": "7946.0.8", + "resolved": "https://registry.npmjs.org/@types/geojson/-/geojson-7946.0.8.tgz", + "integrity": "sha512-1rkryxURpr6aWP7R786/UQOkJ3PcpQiWkAXBmdWc7ryFWqN6a4xfK7BtjXvFBKO9LjQ+MWQSWxYeZX1OApnArA==", + "peer": true }, - "../../../service/node_modules/adm-zip": { - "version": "0.4.9", + "node_modules/@ngageoint/mage.service/node_modules/@ngageoint/geopackage/node_modules/better-sqlite3": { + "version": "9.6.0", + "resolved": "https://registry.npmjs.org/better-sqlite3/-/better-sqlite3-9.6.0.tgz", + "integrity": "sha512-yR5HATnqeYNVnkaUTf4bOP2dJSnyhP4puJN/QPRyx4YkBEEUxib422n2XzPqDEHjQQqazoYoADdAm5vE15+dAQ==", + "hasInstallScript": true, "license": "MIT", + "optional": true, "peer": true, - "engines": { - "node": ">=0.3.0" + "dependencies": { + "bindings": "^1.5.0", + "prebuild-install": "^7.1.1" } }, - "../../../service/node_modules/agent-base": { - "version": "6.0.2", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/@ngageoint/geopackage/node_modules/wkx": { + "version": "0.4.8", + "resolved": "https://registry.npmjs.org/wkx/-/wkx-0.4.8.tgz", + "integrity": "sha512-ikPXMM9IR/gy/LwiOSqWlSL3X/J5uk9EO2hHNRXS41eTLXaUFEVw9fn/593jW/tE5tedNg8YjT5HkCa4FqQZyQ==", "license": "MIT", "peer": true, "dependencies": { - "debug": "4" - }, - "engines": { - "node": ">= 6.0.0" + "@types/node": "*" } }, - "../../../service/node_modules/ajv": { - "version": "6.12.6", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@ngageoint/mongodb-migrations": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@ngageoint/mongodb-migrations/-/mongodb-migrations-1.0.0.tgz", + "integrity": "sha512-SOjJk+xuPfMmevyZOhRCm3odFFW//zg8tKSkiKfgAslMIaZUII6rbrBQRjBPqyFewqg/dabY4xYnXelZSY7/cw==", "peer": true, "dependencies": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" + "bluebird": "^3.7.2", + "coffeescript": "^2.7.0", + "lodash": "^4.17.21", + "mkdirp": "^0.5.6", + "mongodb": "^4.8.1", + "nomnom": "^1.8.1" }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/epoberezkin" + "bin": { + "mm": "bin/mm" } }, - "../../../service/node_modules/align-text": { - "version": "0.1.4", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@node-saml/node-saml": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/@node-saml/node-saml/-/node-saml-4.0.5.tgz", + "integrity": "sha512-J5DglElbY1tjOuaR1NPtjOXkXY5bpUhDoKVoeucYN98A3w4fwgjIOPqIGcb6cQsqFq2zZ6vTCeKn5C/hvefSaw==", "peer": true, "dependencies": { - "kind-of": "^3.0.2", - "longest": "^1.0.1", - "repeat-string": "^1.5.2" + "@types/debug": "^4.1.7", + "@types/passport": "^1.0.11", + "@types/xml-crypto": "^1.4.2", + "@types/xml-encryption": "^1.2.1", + "@types/xml2js": "^0.4.11", + "@xmldom/xmldom": "^0.8.6", + "debug": "^4.3.4", + "xml-crypto": "^3.0.1", + "xml-encryption": "^3.0.2", + "xml2js": "^0.5.0", + "xmlbuilder": "^15.1.1" }, "engines": { - "node": ">=0.10.0" + "node": ">= 14" } }, - "../../../service/node_modules/align-text/node_modules/is-buffer": { - "version": "1.1.6", - "license": "MIT", - "peer": true - }, - "../../../service/node_modules/align-text/node_modules/kind-of": { - "version": "3.2.2", + "node_modules/@ngageoint/mage.service/node_modules/@node-saml/node-saml/node_modules/@xmldom/xmldom": { + "version": "0.8.10", + "resolved": "https://registry.npmjs.org/@xmldom/xmldom/-/xmldom-0.8.10.tgz", + "integrity": "sha512-2WALfTl4xo2SkGCYRt6rDTFfk9R1czmBvUQy12gK2KuRKIpWEhcbbzy8EZXtz/jkRqHX8bFEc6FC1HjX4TUWYw==", "license": "MIT", "peer": true, - "dependencies": { - "is-buffer": "^1.1.5" - }, "engines": { - "node": ">=0.10.0" + "node": ">=10.0.0" } }, - "../../../service/node_modules/ansi-colors": { - "version": "3.2.3", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@node-saml/passport-saml": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/@node-saml/passport-saml/-/passport-saml-4.0.4.tgz", + "integrity": "sha512-xFw3gw0yo+K1mzlkW15NeBF7cVpRHN/4vpjmBKzov5YFImCWh/G0LcTZ8krH3yk2/eRPc3Or8LRPudVJBjmYaw==", "peer": true, + "dependencies": { + "@node-saml/node-saml": "^4.0.4", + "@types/express": "^4.17.14", + "@types/passport": "^1.0.11", + "@types/passport-strategy": "^0.2.35", + "passport": "^0.6.0", + "passport-strategy": "^1.0.0" + }, "engines": { - "node": ">=6" + "node": ">= 14" } }, - "../../../service/node_modules/ansi-escapes": { - "version": "4.3.2", - "devOptional": true, + "node_modules/@ngageoint/mage.service/node_modules/@node-saml/passport-saml/node_modules/passport": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/passport/-/passport-0.6.0.tgz", + "integrity": "sha512-0fe+p3ZnrWRW74fe8+SvCyf4a3Pb2/h7gFkQ8yTJpAO50gDzlfjZUZTO1k5Eg9kUct22OxHLqDZoKUWRHOh9ug==", "license": "MIT", "peer": true, "dependencies": { - "type-fest": "^0.21.3" + "passport-strategy": "1.x.x", + "pause": "0.0.1", + "utils-merge": "^1.0.1" }, "engines": { - "node": ">=8" + "node": ">= 0.4.0" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "type": "github", + "url": "https://github.com/sponsors/jaredhanson" } }, - "../../../service/node_modules/ansi-escapes/node_modules/type-fest": { - "version": "0.21.3", - "devOptional": true, - "license": "(MIT OR CC0-1.0)", - "peer": true, - "engines": { - "node": ">=10" + "node_modules/@ngageoint/mage.service/node_modules/@nodelib/fs.scandir": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", + "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", + "extraneous": true, + "dependencies": { + "@nodelib/fs.stat": "2.0.5", + "run-parallel": "^1.1.9" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "engines": { + "node": ">= 8" } }, - "../../../service/node_modules/ansi-regex": { - "version": "4.1.1", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/@nodelib/fs.stat": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", + "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", + "extraneous": true, "engines": { - "node": ">=6" + "node": ">= 8" } }, - "../../../service/node_modules/ansi-styles": { - "version": "4.3.0", - "license": "MIT", - "optional": true, - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/@nodelib/fs.walk": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", + "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", + "extraneous": true, "dependencies": { - "color-convert": "^2.0.1" + "@nodelib/fs.scandir": "2.1.5", + "fastq": "^1.6.0" }, "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" + "node": ">= 8" } }, - "../../../service/node_modules/anymatch": { - "version": "3.1.3", - "dev": true, - "license": "ISC", + "node_modules/@ngageoint/mage.service/node_modules/@oozcitak/dom": { + "version": "1.15.10", + "resolved": "https://registry.npmjs.org/@oozcitak/dom/-/dom-1.15.10.tgz", + "integrity": "sha512-0JT29/LaxVgRcGKvHmSrUTEvZ8BXvZhGl2LASRUgHqDTC1M5g1pLmVv56IYNyt3bG2CUjDkc67wnyZC14pbQrQ==", "peer": true, "dependencies": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" + "@oozcitak/infra": "1.0.8", + "@oozcitak/url": "1.0.4", + "@oozcitak/util": "8.3.8" }, "engines": { - "node": ">= 8" + "node": ">=8.0" } }, - "../../../service/node_modules/append-field": { - "version": "1.0.0", - "license": "MIT", - "peer": true - }, - "../../../service/node_modules/append-transform": { - "version": "1.0.0", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@oozcitak/infra": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/@oozcitak/infra/-/infra-1.0.8.tgz", + "integrity": "sha512-JRAUc9VR6IGHOL7OGF+yrvs0LO8SlqGnPAMqyzOuFZPSZSXI7Xf2O9+awQPSMXgIWGtgUf/dA6Hs6X6ySEaWTg==", "peer": true, "dependencies": { - "default-require-extensions": "^2.0.0" + "@oozcitak/util": "8.3.8" }, "engines": { - "node": ">=4" + "node": ">=6.0" } }, - "../../../service/node_modules/aproba": { - "version": "1.2.0", - "license": "ISC", - "peer": true - }, - "../../../service/node_modules/archiver": { - "version": "5.3.0", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@oozcitak/url": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/@oozcitak/url/-/url-1.0.4.tgz", + "integrity": "sha512-kDcD8y+y3FCSOvnBI6HJgl00viO/nGbQoCINmQ0h98OhnGITrWR3bOGfwYCthgcrV8AnTJz8MzslTQbC3SOAmw==", "peer": true, "dependencies": { - "archiver-utils": "^2.1.0", - "async": "^3.2.0", - "buffer-crc32": "^0.2.1", - "readable-stream": "^3.6.0", - "readdir-glob": "^1.0.0", - "tar-stream": "^2.2.0", - "zip-stream": "^4.1.0" + "@oozcitak/infra": "1.0.8", + "@oozcitak/util": "8.3.8" }, "engines": { - "node": ">= 10" + "node": ">=8.0" } }, - "../../../service/node_modules/archiver-utils": { - "version": "2.1.0", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@oozcitak/util": { + "version": "8.3.8", + "resolved": "https://registry.npmjs.org/@oozcitak/util/-/util-8.3.8.tgz", + "integrity": "sha512-T8TbSnGsxo6TDBJx/Sgv/BlVJL3tshxZP7Aq5R1mSnM5OcHY2dQaxLMu2+E8u3gN0MLOzdjurqN4ZRVuzQycOQ==", "peer": true, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@pkgjs/parseargs": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/@pkgjs/parseargs/-/parseargs-0.11.0.tgz", + "integrity": "sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==", + "extraneous": true, + "engines": { + "node": ">=14" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@sinonjs/commons": { + "version": "1.8.6", + "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.8.6.tgz", + "integrity": "sha512-Ky+XkAkqPZSm3NLBeUng77EBQl3cmeJhITaGHdYH8kjVB+aun3S4XBRti2zt17mtt0mIUDiNxYeoJm6drVvBJQ==", + "extraneous": true, "dependencies": { - "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" - }, - "engines": { - "node": ">= 6" + "type-detect": "4.0.8" } }, - "../../../service/node_modules/archiver-utils/node_modules/isarray": { - "version": "1.0.0", - "license": "MIT", - "peer": true + "node_modules/@ngageoint/mage.service/node_modules/@sinonjs/formatio": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/@sinonjs/formatio/-/formatio-3.2.2.tgz", + "integrity": "sha512-B8SEsgd8gArBLMD6zpRw3juQ2FVSsmdd7qlevyDqzS9WTCtvF55/gAL+h6gue8ZvPYcdiPdvueM/qm//9XzyTQ==", + "extraneous": true, + "dependencies": { + "@sinonjs/commons": "^1", + "@sinonjs/samsam": "^3.1.0" + } }, - "../../../service/node_modules/archiver-utils/node_modules/readable-stream": { - "version": "2.3.7", - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/@sinonjs/samsam": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/@sinonjs/samsam/-/samsam-3.3.3.tgz", + "integrity": "sha512-bKCMKZvWIjYD0BLGnNrxVuw4dkWCYsLqFOUWw8VgKF/+5Y+mE7LfHWPIYoDXowH+3a9LsWDMo0uAP8YDosPvHQ==", + "extraneous": true, "dependencies": { - "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" + "@sinonjs/commons": "^1.3.0", + "array-from": "^2.1.1", + "lodash": "^4.17.15" } }, - "../../../service/node_modules/archiver-utils/node_modules/safe-buffer": { - "version": "5.1.2", - "license": "MIT", - "peer": true + "node_modules/@ngageoint/mage.service/node_modules/@sinonjs/text-encoding": { + "version": "0.7.2", + "resolved": "https://registry.npmjs.org/@sinonjs/text-encoding/-/text-encoding-0.7.2.tgz", + "integrity": "sha512-sXXKG+uL9IrKqViTtao2Ws6dy0znu9sOaP1di/jKGW1M6VssO8vlpXCQcpZ+jisQ1tTFAC5Jo/EOzFbggBagFQ==", + "extraneous": true }, - "../../../service/node_modules/archiver-utils/node_modules/string_decoder": { - "version": "1.1.1", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@smithy/abort-controller": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/@smithy/abort-controller/-/abort-controller-3.1.1.tgz", + "integrity": "sha512-MBJBiidoe+0cTFhyxT8g+9g7CeVccLM0IOKKUMCNQ1CNMJ/eIfoo0RTfVrXOONEI1UCN1W+zkiHSbzUNE9dZtQ==", + "optional": true, "peer": true, "dependencies": { - "safe-buffer": "~5.1.0" + "@smithy/types": "^3.3.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" } }, - "../../../service/node_modules/archiver/node_modules/async": { - "version": "3.2.4", - "license": "MIT", - "peer": true - }, - "../../../service/node_modules/archy": { - "version": "1.0.0", - "dev": true, - "license": "MIT", - "peer": true - }, - "../../../service/node_modules/are-we-there-yet": { - "version": "1.1.7", - "license": "ISC", + "node_modules/@ngageoint/mage.service/node_modules/@smithy/config-resolver": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@smithy/config-resolver/-/config-resolver-3.0.4.tgz", + "integrity": "sha512-VwiOk7TwXoE7NlNguV/aPq1hFH72tqkHCw8eWXbr2xHspRyyv9DLpLXhq+Ieje+NwoqXrY0xyQjPXdOE6cGcHA==", + "optional": true, "peer": true, "dependencies": { - "delegates": "^1.0.0", - "readable-stream": "^2.0.6" + "@smithy/node-config-provider": "^3.1.3", + "@smithy/types": "^3.3.0", + "@smithy/util-config-provider": "^3.0.0", + "@smithy/util-middleware": "^3.0.3", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" } }, - "../../../service/node_modules/are-we-there-yet/node_modules/isarray": { - "version": "1.0.0", - "license": "MIT", - "peer": true - }, - "../../../service/node_modules/are-we-there-yet/node_modules/readable-stream": { - "version": "2.3.7", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@smithy/core": { + "version": "2.2.4", + "resolved": "https://registry.npmjs.org/@smithy/core/-/core-2.2.4.tgz", + "integrity": "sha512-qdY3LpMOUyLM/gfjjMQZui+UTNS7kBRDWlvyIhVOql5dn2J3isk9qUTBtQ1CbDH8MTugHis1zu3h4rH+Qmmh4g==", + "optional": true, "peer": true, "dependencies": { - "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" + "@smithy/middleware-endpoint": "^3.0.4", + "@smithy/middleware-retry": "^3.0.7", + "@smithy/middleware-serde": "^3.0.3", + "@smithy/protocol-http": "^4.0.3", + "@smithy/smithy-client": "^3.1.5", + "@smithy/types": "^3.3.0", + "@smithy/util-middleware": "^3.0.3", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" } }, - "../../../service/node_modules/are-we-there-yet/node_modules/safe-buffer": { - "version": "5.1.2", - "license": "MIT", - "peer": true - }, - "../../../service/node_modules/are-we-there-yet/node_modules/string_decoder": { - "version": "1.1.1", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@smithy/credential-provider-imds": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/@smithy/credential-provider-imds/-/credential-provider-imds-3.1.3.tgz", + "integrity": "sha512-U1Yrv6hx/mRK6k8AncuI6jLUx9rn0VVSd9NPEX6pyYFBfkSkChOc/n4zUb8alHUVg83TbI4OdZVo1X0Zfj3ijA==", + "optional": true, "peer": true, "dependencies": { - "safe-buffer": "~5.1.0" + "@smithy/node-config-provider": "^3.1.3", + "@smithy/property-provider": "^3.1.3", + "@smithy/types": "^3.3.0", + "@smithy/url-parser": "^3.0.3", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" } }, - "../../../service/node_modules/argparse": { - "version": "1.0.10", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@smithy/fetch-http-handler": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/@smithy/fetch-http-handler/-/fetch-http-handler-3.2.0.tgz", + "integrity": "sha512-vFvDxMrc6sO5Atec8PaISckMcAwsCrRhYxwUylg97bRT2KZoumOF7qk5+6EVUtuM1IG9AJV5aqXnHln9ZdXHpg==", + "optional": true, "peer": true, "dependencies": { - "sprintf-js": "~1.0.2" + "@smithy/protocol-http": "^4.0.3", + "@smithy/querystring-builder": "^3.0.3", + "@smithy/types": "^3.3.0", + "@smithy/util-base64": "^3.0.0", + "tslib": "^2.6.2" } }, - "../../../service/node_modules/arr-diff": { - "version": "4.0.0", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@smithy/hash-node": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@smithy/hash-node/-/hash-node-3.0.3.tgz", + "integrity": "sha512-2ctBXpPMG+B3BtWSGNnKELJ7SH9e4TNefJS0cd2eSkOOROeBnnVBnAy9LtJ8tY4vUEoe55N4CNPxzbWvR39iBw==", + "optional": true, "peer": true, + "dependencies": { + "@smithy/types": "^3.3.0", + "@smithy/util-buffer-from": "^3.0.0", + "@smithy/util-utf8": "^3.0.0", + "tslib": "^2.6.2" + }, "engines": { - "node": ">=0.10.0" + "node": ">=16.0.0" } }, - "../../../service/node_modules/arr-flatten": { - "version": "1.1.0", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@smithy/invalid-dependency": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@smithy/invalid-dependency/-/invalid-dependency-3.0.3.tgz", + "integrity": "sha512-ID1eL/zpDULmHJbflb864k72/SNOZCADRc9i7Exq3RUNJw6raWUSlFEQ+3PX3EYs++bTxZB2dE9mEHTQLv61tw==", + "optional": true, "peer": true, - "engines": { - "node": ">=0.10.0" + "dependencies": { + "@smithy/types": "^3.3.0", + "tslib": "^2.6.2" } }, - "../../../service/node_modules/arr-union": { - "version": "3.1.0", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@smithy/is-array-buffer": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@smithy/is-array-buffer/-/is-array-buffer-3.0.0.tgz", + "integrity": "sha512-+Fsu6Q6C4RSJiy81Y8eApjEB5gVtM+oFKTffg+jSuwtvomJJrhUJBu2zS8wjXSgH/g1MKEWrzyChTBe6clb5FQ==", + "optional": true, "peer": true, + "dependencies": { + "tslib": "^2.6.2" + }, "engines": { - "node": ">=0.10.0" + "node": ">=16.0.0" } }, - "../../../service/node_modules/array-find-index": { - "version": "1.0.2", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@smithy/middleware-content-length": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@smithy/middleware-content-length/-/middleware-content-length-3.0.3.tgz", + "integrity": "sha512-Dbz2bzexReYIQDWMr+gZhpwBetNXzbhnEMhYKA6urqmojO14CsXjnsoPYO8UL/xxcawn8ZsuVU61ElkLSltIUQ==", + "optional": true, "peer": true, + "dependencies": { + "@smithy/protocol-http": "^4.0.3", + "@smithy/types": "^3.3.0", + "tslib": "^2.6.2" + }, "engines": { - "node": ">=0.10.0" + "node": ">=16.0.0" } }, - "../../../service/node_modules/array-flatten": { - "version": "1.1.1", - "license": "MIT", - "peer": true - }, - "../../../service/node_modules/array-from": { - "version": "2.1.1", - "dev": true, - "license": "MIT", - "peer": true - }, - "../../../service/node_modules/array-parallel": { - "version": "0.1.3", - "license": "MIT", - "peer": true - }, - "../../../service/node_modules/array-series": { - "version": "0.1.5", - "license": "MIT", - "peer": true - }, - "../../../service/node_modules/array-union": { - "version": "1.0.2", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@smithy/middleware-endpoint": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@smithy/middleware-endpoint/-/middleware-endpoint-3.0.4.tgz", + "integrity": "sha512-whUJMEPwl3ANIbXjBXZVdJNgfV2ZU8ayln7xUM47rXL2txuenI7jQ/VFFwCzy5lCmXScjp6zYtptW5Evud8e9g==", + "optional": true, "peer": true, "dependencies": { - "array-uniq": "^1.0.1" + "@smithy/middleware-serde": "^3.0.3", + "@smithy/node-config-provider": "^3.1.3", + "@smithy/shared-ini-file-loader": "^3.1.3", + "@smithy/types": "^3.3.0", + "@smithy/url-parser": "^3.0.3", + "@smithy/util-middleware": "^3.0.3", + "tslib": "^2.6.2" }, "engines": { - "node": ">=0.10.0" + "node": ">=16.0.0" } }, - "../../../service/node_modules/array-uniq": { - "version": "1.0.3", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@smithy/middleware-retry": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/@smithy/middleware-retry/-/middleware-retry-3.0.7.tgz", + "integrity": "sha512-f5q7Y09G+2h5ivkSx5CHvlAT4qRR3jBFEsfXyQ9nFNiWQlr8c48blnu5cmbTQ+p1xmIO14UXzKoF8d7Tm0Gsjw==", + "optional": true, "peer": true, + "dependencies": { + "@smithy/node-config-provider": "^3.1.3", + "@smithy/protocol-http": "^4.0.3", + "@smithy/service-error-classification": "^3.0.3", + "@smithy/smithy-client": "^3.1.5", + "@smithy/types": "^3.3.0", + "@smithy/util-middleware": "^3.0.3", + "@smithy/util-retry": "^3.0.3", + "tslib": "^2.6.2", + "uuid": "^9.0.1" + }, "engines": { - "node": ">=0.10.0" + "node": ">=16.0.0" } }, - "../../../service/node_modules/array-unique": { - "version": "0.3.2", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@smithy/middleware-serde": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@smithy/middleware-serde/-/middleware-serde-3.0.3.tgz", + "integrity": "sha512-puUbyJQBcg9eSErFXjKNiGILJGtiqmuuNKEYNYfUD57fUl4i9+mfmThtQhvFXU0hCVG0iEJhvQUipUf+/SsFdA==", + "optional": true, "peer": true, + "dependencies": { + "@smithy/types": "^3.3.0", + "tslib": "^2.6.2" + }, "engines": { - "node": ">=0.10.0" + "node": ">=16.0.0" } }, - "../../../service/node_modules/array.prototype.reduce": { - "version": "1.0.5", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@smithy/middleware-stack": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@smithy/middleware-stack/-/middleware-stack-3.0.3.tgz", + "integrity": "sha512-r4klY9nFudB0r9UdSMaGSyjyQK5adUyPnQN/ZM6M75phTxOdnc/AhpvGD1fQUvgmqjQEBGCwpnPbDm8pH5PapA==", + "optional": true, "peer": true, "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4", - "es-array-method-boxes-properly": "^1.0.0", - "is-string": "^1.0.7" + "@smithy/types": "^3.3.0", + "tslib": "^2.6.2" }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=16.0.0" } }, - "../../../service/node_modules/arrify": { - "version": "1.0.1", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@smithy/node-config-provider": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/@smithy/node-config-provider/-/node-config-provider-3.1.3.tgz", + "integrity": "sha512-rxdpAZczzholz6CYZxtqDu/aKTxATD5DAUDVj7HoEulq+pDSQVWzbg0btZDlxeFfa6bb2b5tUvgdX5+k8jUqcg==", + "optional": true, "peer": true, + "dependencies": { + "@smithy/property-provider": "^3.1.3", + "@smithy/shared-ini-file-loader": "^3.1.3", + "@smithy/types": "^3.3.0", + "tslib": "^2.6.2" + }, "engines": { - "node": ">=0.10.0" + "node": ">=16.0.0" } }, - "../../../service/node_modules/asap": { - "version": "2.0.6", - "license": "MIT", - "peer": true - }, - "../../../service/node_modules/asn1": { - "version": "0.2.3", - "license": "MIT", - "peer": true - }, - "../../../service/node_modules/assert": { - "version": "2.0.0", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@smithy/node-http-handler": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/@smithy/node-http-handler/-/node-http-handler-3.1.1.tgz", + "integrity": "sha512-L71NLyPeP450r2J/mfu1jMc//Z1YnqJt2eSNw7uhiItaONnBLDA68J5jgxq8+MBDsYnFwNAIc7dBG1ImiWBiwg==", + "optional": true, "peer": true, "dependencies": { - "es6-object-assign": "^1.1.0", - "is-nan": "^1.2.1", - "object-is": "^1.0.1", - "util": "^0.12.0" + "@smithy/abort-controller": "^3.1.1", + "@smithy/protocol-http": "^4.0.3", + "@smithy/querystring-builder": "^3.0.3", + "@smithy/types": "^3.3.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" } }, - "../../../service/node_modules/assert-plus": { - "version": "1.0.0", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@smithy/property-provider": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/@smithy/property-provider/-/property-provider-3.1.3.tgz", + "integrity": "sha512-zahyOVR9Q4PEoguJ/NrFP4O7SMAfYO1HLhB18M+q+Z4KFd4V2obiMnlVoUFzFLSPeVt1POyNWneHHrZaTMoc/g==", + "optional": true, "peer": true, + "dependencies": { + "@smithy/types": "^3.3.0", + "tslib": "^2.6.2" + }, "engines": { - "node": ">=0.8" + "node": ">=16.0.0" } }, - "../../../service/node_modules/assertion-error": { - "version": "1.1.0", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@smithy/protocol-http": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@smithy/protocol-http/-/protocol-http-4.0.3.tgz", + "integrity": "sha512-x5jmrCWwQlx+Zv4jAtc33ijJ+vqqYN+c/ZkrnpvEe/uDas7AT7A/4Rc2CdfxgWv4WFGmEqODIrrUToPN6DDkGw==", + "optional": true, "peer": true, + "dependencies": { + "@smithy/types": "^3.3.0", + "tslib": "^2.6.2" + }, "engines": { - "node": "*" + "node": ">=16.0.0" } }, - "../../../service/node_modules/assign-symbols": { - "version": "1.0.0", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@smithy/querystring-builder": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@smithy/querystring-builder/-/querystring-builder-3.0.3.tgz", + "integrity": "sha512-vyWckeUeesFKzCDaRwWLUA1Xym9McaA6XpFfAK5qI9DKJ4M33ooQGqvM4J+LalH4u/Dq9nFiC8U6Qn1qi0+9zw==", + "optional": true, "peer": true, + "dependencies": { + "@smithy/types": "^3.3.0", + "@smithy/util-uri-escape": "^3.0.0", + "tslib": "^2.6.2" + }, "engines": { - "node": ">=0.10.0" + "node": ">=16.0.0" } }, - "../../../service/node_modules/astral-regex": { - "version": "1.0.0", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@smithy/querystring-parser": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@smithy/querystring-parser/-/querystring-parser-3.0.3.tgz", + "integrity": "sha512-zahM1lQv2YjmznnfQsWbYojFe55l0SLG/988brlLv1i8z3dubloLF+75ATRsqPBboUXsW6I9CPGE5rQgLfY0vQ==", + "optional": true, "peer": true, + "dependencies": { + "@smithy/types": "^3.3.0", + "tslib": "^2.6.2" + }, "engines": { - "node": ">=4" + "node": ">=16.0.0" } }, - "../../../service/node_modules/async": { - "version": "0.2.10", - "peer": true - }, - "../../../service/node_modules/async-mutex": { - "version": "0.3.2", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@smithy/service-error-classification": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@smithy/service-error-classification/-/service-error-classification-3.0.3.tgz", + "integrity": "sha512-Jn39sSl8cim/VlkLsUhRFq/dKDnRUFlfRkvhOJaUbLBXUsLRLNf9WaxDv/z9BjuQ3A6k/qE8af1lsqcwm7+DaQ==", + "optional": true, "peer": true, "dependencies": { - "tslib": "^2.3.1" + "@smithy/types": "^3.3.0" + }, + "engines": { + "node": ">=16.0.0" } }, - "../../../service/node_modules/asynckit": { - "version": "0.4.0", - "license": "MIT", - "peer": true - }, - "../../../service/node_modules/atob": { - "version": "2.1.2", - "dev": true, - "license": "(MIT OR Apache-2.0)", + "node_modules/@ngageoint/mage.service/node_modules/@smithy/shared-ini-file-loader": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/@smithy/shared-ini-file-loader/-/shared-ini-file-loader-3.1.3.tgz", + "integrity": "sha512-Z8Y3+08vgoDgl4HENqNnnzSISAaGrF2RoKupoC47u2wiMp+Z8P/8mDh1CL8+8ujfi2U5naNvopSBmP/BUj8b5w==", + "optional": true, "peer": true, - "bin": { - "atob": "bin/atob.js" + "dependencies": { + "@smithy/types": "^3.3.0", + "tslib": "^2.6.2" }, "engines": { - "node": ">= 4.5.0" + "node": ">=16.0.0" } }, - "../../../service/node_modules/available-typed-arrays": { - "version": "1.0.5", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@smithy/signature-v4": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@smithy/signature-v4/-/signature-v4-3.1.2.tgz", + "integrity": "sha512-3BcPylEsYtD0esM4Hoyml/+s7WP2LFhcM3J2AGdcL2vx9O60TtfpDOL72gjb4lU8NeRPeKAwR77YNyyGvMbuEA==", + "optional": true, "peer": true, - "engines": { - "node": ">= 0.4" + "dependencies": { + "@smithy/is-array-buffer": "^3.0.0", + "@smithy/types": "^3.3.0", + "@smithy/util-hex-encoding": "^3.0.0", + "@smithy/util-middleware": "^3.0.3", + "@smithy/util-uri-escape": "^3.0.0", + "@smithy/util-utf8": "^3.0.0", + "tslib": "^2.6.2" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "engines": { + "node": ">=16.0.0" } }, - "../../../service/node_modules/aws-sign2": { - "version": "0.7.0", - "dev": true, - "license": "Apache-2.0", + "node_modules/@ngageoint/mage.service/node_modules/@smithy/smithy-client": { + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/@smithy/smithy-client/-/smithy-client-3.1.5.tgz", + "integrity": "sha512-x9bL9Mx2CT2P1OiUlHM+ZNpbVU6TgT32f9CmTRzqIHA7M4vYrROCWEoC3o4xHNJASoGd4Opos3cXYPgh+/m4Ww==", + "optional": true, "peer": true, + "dependencies": { + "@smithy/middleware-endpoint": "^3.0.4", + "@smithy/middleware-stack": "^3.0.3", + "@smithy/protocol-http": "^4.0.3", + "@smithy/types": "^3.3.0", + "@smithy/util-stream": "^3.0.5", + "tslib": "^2.6.2" + }, "engines": { - "node": "*" + "node": ">=16.0.0" } }, - "../../../service/node_modules/aws4": { - "version": "1.11.0", - "dev": true, - "license": "MIT", - "peer": true - }, - "../../../service/node_modules/axios": { - "version": "0.21.4", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@smithy/types": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/@smithy/types/-/types-3.3.0.tgz", + "integrity": "sha512-IxvBBCTFDHbVoK7zIxqA1ZOdc4QfM5HM7rGleCuHi7L1wnKv5Pn69xXJQ9hgxH60ZVygH9/JG0jRgtUncE3QUA==", + "optional": true, "peer": true, "dependencies": { - "follow-redirects": "^1.14.0" + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" } }, - "../../../service/node_modules/babel-runtime": { - "version": "6.26.0", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@smithy/url-parser": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@smithy/url-parser/-/url-parser-3.0.3.tgz", + "integrity": "sha512-pw3VtZtX2rg+s6HMs6/+u9+hu6oY6U7IohGhVNnjbgKy86wcIsSZwgHrFR+t67Uyxvp4Xz3p3kGXXIpTNisq8A==", + "optional": true, "peer": true, "dependencies": { - "core-js": "^2.4.0", - "regenerator-runtime": "^0.11.0" + "@smithy/querystring-parser": "^3.0.3", + "@smithy/types": "^3.3.0", + "tslib": "^2.6.2" } }, - "../../../service/node_modules/babel-types": { - "version": "6.26.0", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@smithy/util-base64": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@smithy/util-base64/-/util-base64-3.0.0.tgz", + "integrity": "sha512-Kxvoh5Qtt0CDsfajiZOCpJxgtPHXOKwmM+Zy4waD43UoEMA+qPxxa98aE/7ZhdnBFZFXMOiBR5xbcaMhLtznQQ==", + "optional": true, "peer": true, "dependencies": { - "babel-runtime": "^6.26.0", - "esutils": "^2.0.2", - "lodash": "^4.17.4", - "to-fast-properties": "^1.0.3" - } - }, - "../../../service/node_modules/babel-types/node_modules/to-fast-properties": { - "version": "1.0.3", - "license": "MIT", - "peer": true, + "@smithy/util-buffer-from": "^3.0.0", + "@smithy/util-utf8": "^3.0.0", + "tslib": "^2.6.2" + }, "engines": { - "node": ">=0.10.0" + "node": ">=16.0.0" } }, - "../../../service/node_modules/babylon": { - "version": "6.18.0", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@smithy/util-body-length-browser": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@smithy/util-body-length-browser/-/util-body-length-browser-3.0.0.tgz", + "integrity": "sha512-cbjJs2A1mLYmqmyVl80uoLTJhAcfzMOyPgjwAYusWKMdLeNtzmMz9YxNl3/jRLoxSS3wkqkf0jwNdtXWtyEBaQ==", + "optional": true, "peer": true, - "bin": { - "babylon": "bin/babylon.js" + "dependencies": { + "tslib": "^2.6.2" } }, - "../../../service/node_modules/backoff": { - "version": "2.5.0", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@smithy/util-body-length-node": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@smithy/util-body-length-node/-/util-body-length-node-3.0.0.tgz", + "integrity": "sha512-Tj7pZ4bUloNUP6PzwhN7K386tmSmEET9QtQg0TgdNOnxhZvCssHji+oZTUIuzxECRfG8rdm2PMw2WCFs6eIYkA==", + "optional": true, "peer": true, "dependencies": { - "precond": "0.2" + "tslib": "^2.6.2" }, "engines": { - "node": ">= 0.6" + "node": ">=16.0.0" } }, - "../../../service/node_modules/balanced-match": { - "version": "1.0.2", - "license": "MIT", - "peer": true - }, - "../../../service/node_modules/base": { - "version": "0.11.2", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@smithy/util-buffer-from": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@smithy/util-buffer-from/-/util-buffer-from-3.0.0.tgz", + "integrity": "sha512-aEOHCgq5RWFbP+UDPvPot26EJHjOC+bRgse5A8V3FSShqd5E5UN4qc7zkwsvJPPAVsf73QwYcHN1/gt/rtLwQA==", + "optional": true, "peer": true, "dependencies": { - "cache-base": "^1.0.1", - "class-utils": "^0.3.5", - "component-emitter": "^1.2.1", - "define-property": "^1.0.0", - "isobject": "^3.0.1", - "mixin-deep": "^1.2.0", - "pascalcase": "^0.1.1" + "@smithy/is-array-buffer": "^3.0.0", + "tslib": "^2.6.2" }, "engines": { - "node": ">=0.10.0" + "node": ">=16.0.0" } }, - "../../../service/node_modules/base-64": { - "version": "1.0.0", - "license": "MIT", - "peer": true - }, - "../../../service/node_modules/base/node_modules/define-property": { - "version": "1.0.0", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@smithy/util-config-provider": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@smithy/util-config-provider/-/util-config-provider-3.0.0.tgz", + "integrity": "sha512-pbjk4s0fwq3Di/ANL+rCvJMKM5bzAQdE5S/6RL5NXgMExFAi6UgQMPOm5yPaIWPpr+EOXKXRonJ3FoxKf4mCJQ==", + "optional": true, "peer": true, "dependencies": { - "is-descriptor": "^1.0.0" + "tslib": "^2.6.2" }, "engines": { - "node": ">=0.10.0" + "node": ">=16.0.0" } }, - "../../../service/node_modules/base64-js": { - "version": "1.5.1", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "license": "MIT", - "peer": true - }, - "../../../service/node_modules/base64url": { - "version": "3.0.1", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@smithy/util-defaults-mode-browser": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/@smithy/util-defaults-mode-browser/-/util-defaults-mode-browser-3.0.7.tgz", + "integrity": "sha512-Q2txLyvQyGfmjsaDbVV7Sg8psefpFcrnlGapDzXGFRPFKRBeEg6OvFK8FljqjeHSaCZ6/UuzQExUPqBR/2qlDA==", + "optional": true, "peer": true, + "dependencies": { + "@smithy/property-provider": "^3.1.3", + "@smithy/smithy-client": "^3.1.5", + "@smithy/types": "^3.3.0", + "bowser": "^2.11.0", + "tslib": "^2.6.2" + }, "engines": { - "node": ">=6.0.0" + "node": ">= 10.0.0" } }, - "../../../service/node_modules/bcrypt-pbkdf": { - "version": "1.0.2", - "dev": true, - "license": "BSD-3-Clause", + "node_modules/@ngageoint/mage.service/node_modules/@smithy/util-defaults-mode-node": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/@smithy/util-defaults-mode-node/-/util-defaults-mode-node-3.0.7.tgz", + "integrity": "sha512-F4Qcj1fG6MGi2BSWCslfsMSwllws/WzYONBGtLybyY+halAcXdWhcew+mej8M5SKd5hqPYp4f7b+ABQEaeytgg==", + "optional": true, "peer": true, "dependencies": { - "tweetnacl": "^0.14.3" + "@smithy/config-resolver": "^3.0.4", + "@smithy/credential-provider-imds": "^3.1.3", + "@smithy/node-config-provider": "^3.1.3", + "@smithy/property-provider": "^3.1.3", + "@smithy/smithy-client": "^3.1.5", + "@smithy/types": "^3.3.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">= 10.0.0" } }, - "../../../service/node_modules/bcryptjs": { - "version": "2.4.3", - "license": "MIT", - "peer": true - }, - "../../../service/node_modules/better-sqlite3": { - "version": "7.4.1", - "hasInstallScript": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@smithy/util-endpoints": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/@smithy/util-endpoints/-/util-endpoints-2.0.4.tgz", + "integrity": "sha512-ZAtNf+vXAsgzgRutDDiklU09ZzZiiV/nATyqde4Um4priTmasDH+eLpp3tspL0hS2dEootyFMhu1Y6Y+tzpWBQ==", + "optional": true, "peer": true, "dependencies": { - "bindings": "^1.5.0", - "prebuild-install": "^6.0.1", - "tar": "^6.1.0" + "@smithy/node-config-provider": "^3.1.3", + "@smithy/types": "^3.3.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" } }, - "../../../service/node_modules/binary-extensions": { - "version": "2.2.0", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@smithy/util-hex-encoding": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@smithy/util-hex-encoding/-/util-hex-encoding-3.0.0.tgz", + "integrity": "sha512-eFndh1WEK5YMUYvy3lPlVmYY/fZcQE1D8oSf41Id2vCeIkKJXPcYDCZD+4+xViI6b1XSd7tE+s5AmXzz5ilabQ==", + "optional": true, "peer": true, + "dependencies": { + "tslib": "^2.6.2" + }, "engines": { - "node": ">=8" + "node": ">=16.0.0" } }, - "../../../service/node_modules/bindings": { - "version": "1.5.0", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@smithy/util-middleware": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@smithy/util-middleware/-/util-middleware-3.0.3.tgz", + "integrity": "sha512-l+StyYYK/eO3DlVPbU+4Bi06Jjal+PFLSMmlWM1BEwyLxZ3aKkf1ROnoIakfaA7mC6uw3ny7JBkau4Yc+5zfWw==", + "optional": true, "peer": true, "dependencies": { - "file-uri-to-path": "1.0.0" + "@smithy/types": "^3.3.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" } }, - "../../../service/node_modules/bl": { - "version": "4.1.0", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@smithy/util-retry": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@smithy/util-retry/-/util-retry-3.0.3.tgz", + "integrity": "sha512-AFw+hjpbtVApzpNDhbjNG5NA3kyoMs7vx0gsgmlJF4s+yz1Zlepde7J58zpIRIsdjc+emhpAITxA88qLkPF26w==", + "optional": true, "peer": true, "dependencies": { - "buffer": "^5.5.0", - "inherits": "^2.0.4", - "readable-stream": "^3.4.0" + "@smithy/service-error-classification": "^3.0.3", + "@smithy/types": "^3.3.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" } }, - "../../../service/node_modules/body-parser": { - "version": "1.18.3", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@smithy/util-stream": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/@smithy/util-stream/-/util-stream-3.0.5.tgz", + "integrity": "sha512-xC3L5PKMAT/Bh8fmHNXP9sdQ4+4aKVUU3EEJ2CF/lLk7R+wtMJM+v/1B4en7jO++Wa5spGzFDBCl0QxgbUc5Ug==", + "optional": true, "peer": true, "dependencies": { - "bytes": "3.0.0", - "content-type": "~1.0.4", - "debug": "2.6.9", - "depd": "~1.1.2", - "http-errors": "~1.6.3", - "iconv-lite": "0.4.23", - "on-finished": "~2.3.0", - "qs": "6.5.2", - "raw-body": "2.3.3", - "type-is": "~1.6.16" + "@smithy/fetch-http-handler": "^3.2.0", + "@smithy/node-http-handler": "^3.1.1", + "@smithy/types": "^3.3.0", + "@smithy/util-base64": "^3.0.0", + "@smithy/util-buffer-from": "^3.0.0", + "@smithy/util-hex-encoding": "^3.0.0", + "@smithy/util-utf8": "^3.0.0", + "tslib": "^2.6.2" }, "engines": { - "node": ">= 0.8" + "node": ">=16.0.0" } }, - "../../../service/node_modules/body-parser/node_modules/debug": { - "version": "2.6.9", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@smithy/util-uri-escape": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@smithy/util-uri-escape/-/util-uri-escape-3.0.0.tgz", + "integrity": "sha512-LqR7qYLgZTD7nWLBecUi4aqolw8Mhza9ArpNEQ881MJJIU2sE5iHCK6TdyqqzcDLy0OPe10IY4T8ctVdtynubg==", + "optional": true, "peer": true, "dependencies": { - "ms": "2.0.0" + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" } }, - "../../../service/node_modules/body-parser/node_modules/iconv-lite": { - "version": "0.4.23", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@smithy/util-utf8": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@smithy/util-utf8/-/util-utf8-3.0.0.tgz", + "integrity": "sha512-rUeT12bxFnplYDe815GXbq/oixEGHfRFFtcTF3YdDi/JaENIM6aSYYLJydG83UNzLXeRI5K8abYd/8Sp/QM0kA==", + "optional": true, "peer": true, "dependencies": { - "safer-buffer": ">= 2.1.2 < 3" + "@smithy/util-buffer-from": "^3.0.0", + "tslib": "^2.6.2" }, "engines": { - "node": ">=0.10.0" + "node": ">=16.0.0" } }, - "../../../service/node_modules/body-parser/node_modules/ms": { - "version": "2.0.0", - "license": "MIT", - "peer": true - }, - "../../../service/node_modules/bowser": { - "version": "2.11.0", - "license": "MIT", - "optional": true, + "node_modules/@ngageoint/mage.service/node_modules/@tokenizer/token": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/@tokenizer/token/-/token-0.3.0.tgz", + "integrity": "sha512-OvjF+z51L3ov0OyAU0duzsYuvO01PH7x4t6DJx+guahgTnBHkhJdG7soQeTSFLWN3efnHyibZ4Z8l2EuWwJN3A==", "peer": true }, - "../../../service/node_modules/brace-expansion": { - "version": "1.1.11", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@turf/bbox": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/@turf/bbox/-/bbox-6.3.0.tgz", + "integrity": "sha512-N4ue5Xopu1qieSHP2MA/CJGWHPKaTrVXQJjzHRNcY1vtsO126xbSaJhWUrFc5x5vVkXp0dcucGryO0r5m4o/KA==", "peer": true, "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" + "@turf/helpers": "^6.3.0", + "@turf/meta": "^6.3.0" } }, - "../../../service/node_modules/braces": { - "version": "2.3.2", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@turf/bearing": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/bearing/-/bearing-6.5.0.tgz", + "integrity": "sha512-dxINYhIEMzgDOztyMZc20I7ssYVNEpSv04VbMo5YPQsqa80KO3TFvbuCahMsCAW5z8Tncc8dwBlEFrmRjJG33A==", "peer": true, "dependencies": { - "arr-flatten": "^1.1.0", - "array-unique": "^0.3.2", - "extend-shallow": "^2.0.1", - "fill-range": "^4.0.0", - "isobject": "^3.0.1", - "repeat-element": "^1.1.2", - "snapdragon": "^0.8.1", - "snapdragon-node": "^2.0.1", - "split-string": "^3.0.2", - "to-regex": "^3.0.1" + "@turf/helpers": "^6.5.0", + "@turf/invariant": "^6.5.0" }, - "engines": { - "node": ">=0.10.0" + "funding": { + "url": "https://opencollective.com/turf" } }, - "../../../service/node_modules/braces/node_modules/extend-shallow": { - "version": "2.0.1", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@turf/boolean-clockwise": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/boolean-clockwise/-/boolean-clockwise-6.5.0.tgz", + "integrity": "sha512-45+C7LC5RMbRWrxh3Z0Eihsc8db1VGBO5d9BLTOAwU4jR6SgsunTfRWR16X7JUwIDYlCVEmnjcXJNi/kIU3VIw==", "peer": true, "dependencies": { - "is-extendable": "^0.1.0" + "@turf/helpers": "^6.5.0", + "@turf/invariant": "^6.5.0" }, - "engines": { - "node": ">=0.10.0" + "funding": { + "url": "https://opencollective.com/turf" } }, - "../../../service/node_modules/braces/node_modules/is-extendable": { - "version": "0.1.1", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@turf/boolean-point-in-polygon": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/boolean-point-in-polygon/-/boolean-point-in-polygon-6.5.0.tgz", + "integrity": "sha512-DtSuVFB26SI+hj0SjrvXowGTUCHlgevPAIsukssW6BG5MlNSBQAo70wpICBNJL6RjukXg8d2eXaAWuD/CqL00A==", "peer": true, - "engines": { - "node": ">=0.10.0" + "dependencies": { + "@turf/helpers": "^6.5.0", + "@turf/invariant": "^6.5.0" + }, + "funding": { + "url": "https://opencollective.com/turf" } }, - "../../../service/node_modules/brorand": { - "version": "1.1.0", - "license": "MIT", - "peer": true - }, - "../../../service/node_modules/browser-stdout": { - "version": "1.3.1", - "dev": true, - "license": "ISC", - "peer": true - }, - "../../../service/node_modules/browserify-aes": { - "version": "1.2.0", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@turf/boolean-point-on-line": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/boolean-point-on-line/-/boolean-point-on-line-6.5.0.tgz", + "integrity": "sha512-A1BbuQ0LceLHvq7F/P7w3QvfpmZqbmViIUPHdNLvZimFNLo4e6IQunmzbe+8aSStH9QRZm3VOflyvNeXvvpZEQ==", "peer": true, "dependencies": { - "buffer-xor": "^1.0.3", - "cipher-base": "^1.0.0", - "create-hash": "^1.1.0", - "evp_bytestokey": "^1.0.3", - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" + "@turf/helpers": "^6.5.0", + "@turf/invariant": "^6.5.0" + }, + "funding": { + "url": "https://opencollective.com/turf" } }, - "../../../service/node_modules/bson": { - "version": "4.7.0", - "license": "Apache-2.0", + "node_modules/@ngageoint/mage.service/node_modules/@turf/boolean-within": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/boolean-within/-/boolean-within-6.5.0.tgz", + "integrity": "sha512-YQB3oU18Inx35C/LU930D36RAVe7LDXk1kWsQ8mLmuqYn9YdPsDQTMTkLJMhoQ8EbN7QTdy333xRQ4MYgToteQ==", "peer": true, "dependencies": { - "buffer": "^5.6.0" + "@turf/bbox": "^6.5.0", + "@turf/boolean-point-in-polygon": "^6.5.0", + "@turf/boolean-point-on-line": "^6.5.0", + "@turf/helpers": "^6.5.0", + "@turf/invariant": "^6.5.0" }, - "engines": { - "node": ">=6.9.0" + "funding": { + "url": "https://opencollective.com/turf" } }, - "../../../service/node_modules/buffer": { - "version": "5.7.1", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@turf/boolean-within/node_modules/@turf/bbox": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/bbox/-/bbox-6.5.0.tgz", + "integrity": "sha512-RBbLaao5hXTYyyg577iuMtDB8ehxMlUqHEJiMs8jT1GHkFhr6sYre3lmLsPeYEi/ZKj5TP5tt7fkzNdJ4GIVyw==", "peer": true, "dependencies": { - "base64-js": "^1.3.1", - "ieee754": "^1.1.13" + "@turf/helpers": "^6.5.0", + "@turf/meta": "^6.5.0" + }, + "funding": { + "url": "https://opencollective.com/turf" } }, - "../../../service/node_modules/buffer-crc32": { - "version": "0.2.13", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@turf/centroid": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/centroid/-/centroid-6.5.0.tgz", + "integrity": "sha512-MwE1oq5E3isewPprEClbfU5pXljIK/GUOMbn22UM3IFPDJX0KeoyLNwghszkdmFp/qMGL/M13MMWvU+GNLXP/A==", "peer": true, - "engines": { - "node": "*" + "dependencies": { + "@turf/helpers": "^6.5.0", + "@turf/meta": "^6.5.0" + }, + "funding": { + "url": "https://opencollective.com/turf" } }, - "../../../service/node_modules/buffer-equal-constant-time": { - "version": "1.0.1", - "license": "BSD-3-Clause", - "peer": true - }, - "../../../service/node_modules/buffer-from": { - "version": "1.1.2", - "license": "MIT", - "peer": true - }, - "../../../service/node_modules/buffer-xor": { - "version": "1.0.3", - "license": "MIT", - "peer": true - }, - "../../../service/node_modules/bunyan": { - "version": "1.8.15", - "engines": [ - "node >=0.10.0" - ], - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@turf/clone": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/clone/-/clone-6.5.0.tgz", + "integrity": "sha512-mzVtTFj/QycXOn6ig+annKrM6ZlimreKYz6f/GSERytOpgzodbQyOgkfwru100O1KQhhjSudKK4DsQ0oyi9cTw==", "peer": true, - "bin": { - "bunyan": "bin/bunyan" + "dependencies": { + "@turf/helpers": "^6.5.0" }, - "optionalDependencies": { - "dtrace-provider": "~0.8", - "moment": "^2.19.3", - "mv": "~2", - "safe-json-stringify": "~1" + "funding": { + "url": "https://opencollective.com/turf" } }, - "../../../service/node_modules/busboy": { - "version": "1.6.0", + "node_modules/@ngageoint/mage.service/node_modules/@turf/distance": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/distance/-/distance-6.5.0.tgz", + "integrity": "sha512-xzykSLfoURec5qvQJcfifw/1mJa+5UwByZZ5TZ8iaqjGYN0vomhV9aiSLeYdUGtYRESZ+DYC/OzY+4RclZYgMg==", "peer": true, "dependencies": { - "streamsearch": "^1.1.0" + "@turf/helpers": "^6.5.0", + "@turf/invariant": "^6.5.0" }, - "engines": { - "node": ">=10.16.0" + "funding": { + "url": "https://opencollective.com/turf" } }, - "../../../service/node_modules/bytes": { - "version": "3.0.0", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@turf/helpers": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/helpers/-/helpers-6.5.0.tgz", + "integrity": "sha512-VbI1dV5bLFzohYYdgqwikdMVpe7pJ9X3E+dlr425wa2/sMJqYDhTO++ec38/pcPvPE6oD9WEEeU3Xu3gza+VPw==", "peer": true, - "engines": { - "node": ">= 0.8" + "funding": { + "url": "https://opencollective.com/turf" } }, - "../../../service/node_modules/cache-base": { - "version": "1.0.1", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@turf/intersect": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/intersect/-/intersect-6.5.0.tgz", + "integrity": "sha512-2legGJeKrfFkzntcd4GouPugoqPUjexPZnOvfez+3SfIMrHvulw8qV8u7pfVyn2Yqs53yoVCEjS5sEpvQ5YRQg==", "peer": true, "dependencies": { - "collection-visit": "^1.0.0", - "component-emitter": "^1.2.1", - "get-value": "^2.0.6", - "has-value": "^1.0.0", - "isobject": "^3.0.1", - "set-value": "^2.0.0", - "to-object-path": "^0.3.0", - "union-value": "^1.0.0", - "unset-value": "^1.0.0" + "@turf/helpers": "^6.5.0", + "@turf/invariant": "^6.5.0", + "polygon-clipping": "^0.15.3" }, - "engines": { - "node": ">=0.10.0" + "funding": { + "url": "https://opencollective.com/turf" } }, - "../../../service/node_modules/caching-transform": { - "version": "3.0.2", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@turf/invariant": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/invariant/-/invariant-6.5.0.tgz", + "integrity": "sha512-Wv8PRNCtPD31UVbdJE/KVAWKe7l6US+lJItRR/HOEW3eh+U/JwRCSUl/KZ7bmjM/C+zLNoreM2TU6OoLACs4eg==", "peer": true, "dependencies": { - "hasha": "^3.0.0", - "make-dir": "^2.0.0", - "package-hash": "^3.0.0", - "write-file-atomic": "^2.4.2" + "@turf/helpers": "^6.5.0" }, - "engines": { - "node": ">=6" + "funding": { + "url": "https://opencollective.com/turf" } }, - "../../../service/node_modules/call-bind": { - "version": "1.0.2", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@turf/kinks": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/kinks/-/kinks-6.5.0.tgz", + "integrity": "sha512-ViCngdPt1eEL7hYUHR2eHR662GvCgTc35ZJFaNR6kRtr6D8plLaDju0FILeFFWSc+o8e3fwxZEJKmFj9IzPiIQ==", "peer": true, "dependencies": { - "function-bind": "^1.1.1", - "get-intrinsic": "^1.0.2" + "@turf/helpers": "^6.5.0" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "url": "https://opencollective.com/turf" } }, - "../../../service/node_modules/call-me-maybe": { - "version": "1.0.2", - "dev": true, - "license": "MIT", - "peer": true - }, - "../../../service/node_modules/callsites": { - "version": "3.1.0", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@turf/line-intersect": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/line-intersect/-/line-intersect-6.5.0.tgz", + "integrity": "sha512-CS6R1tZvVQD390G9Ea4pmpM6mJGPWoL82jD46y0q1KSor9s6HupMIo1kY4Ny+AEYQl9jd21V3Scz20eldpbTVA==", "peer": true, - "engines": { - "node": ">=6" + "dependencies": { + "@turf/helpers": "^6.5.0", + "@turf/invariant": "^6.5.0", + "@turf/line-segment": "^6.5.0", + "@turf/meta": "^6.5.0", + "geojson-rbush": "3.x" + }, + "funding": { + "url": "https://opencollective.com/turf" } }, - "../../../service/node_modules/camelcase": { - "version": "4.1.0", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@turf/line-segment": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/line-segment/-/line-segment-6.5.0.tgz", + "integrity": "sha512-jI625Ho4jSuJESNq66Mmi290ZJ5pPZiQZruPVpmHkUw257Pew0alMmb6YrqYNnLUuiVVONxAAKXUVeeUGtycfw==", "peer": true, - "engines": { - "node": ">=4" + "dependencies": { + "@turf/helpers": "^6.5.0", + "@turf/invariant": "^6.5.0", + "@turf/meta": "^6.5.0" + }, + "funding": { + "url": "https://opencollective.com/turf" } }, - "../../../service/node_modules/camelcase-keys": { - "version": "4.2.0", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@turf/meta": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/meta/-/meta-6.5.0.tgz", + "integrity": "sha512-RrArvtsV0vdsCBegoBtOalgdSOfkBrTJ07VkpiCnq/491W67hnMWmDu7e6Ztw0C3WldRYTXkg3SumfdzZxLBHA==", "peer": true, "dependencies": { - "camelcase": "^4.1.0", - "map-obj": "^2.0.0", - "quick-lru": "^1.0.0" + "@turf/helpers": "^6.5.0" }, - "engines": { - "node": ">=4" + "funding": { + "url": "https://opencollective.com/turf" } }, - "../../../service/node_modules/caseless": { - "version": "0.12.0", - "dev": true, - "license": "Apache-2.0", - "peer": true - }, - "../../../service/node_modules/center-align": { - "version": "0.1.3", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@turf/point-to-line-distance": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/point-to-line-distance/-/point-to-line-distance-6.5.0.tgz", + "integrity": "sha512-opHVQ4vjUhNBly1bob6RWy+F+hsZDH9SA0UW36pIRzfpu27qipU18xup0XXEePfY6+wvhF6yL/WgCO2IbrLqEA==", "peer": true, "dependencies": { - "align-text": "^0.1.3", - "lazy-cache": "^1.0.3" + "@turf/bearing": "^6.5.0", + "@turf/distance": "^6.5.0", + "@turf/helpers": "^6.5.0", + "@turf/invariant": "^6.5.0", + "@turf/meta": "^6.5.0", + "@turf/projection": "^6.5.0", + "@turf/rhumb-bearing": "^6.5.0", + "@turf/rhumb-distance": "^6.5.0" }, - "engines": { - "node": ">=0.10.0" + "funding": { + "url": "https://opencollective.com/turf" } }, - "../../../service/node_modules/cfenv": { - "version": "1.0.3", - "license": "Apache-2.0", + "node_modules/@ngageoint/mage.service/node_modules/@turf/polygon-to-line": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/polygon-to-line/-/polygon-to-line-6.5.0.tgz", + "integrity": "sha512-5p4n/ij97EIttAq+ewSnKt0ruvuM+LIDzuczSzuHTpq4oS7Oq8yqg5TQ4nzMVuK41r/tALCk7nAoBuw3Su4Gcw==", "peer": true, "dependencies": { - "js-yaml": "3.4.x", - "ports": "1.1.x", - "underscore": "1.8.x" + "@turf/helpers": "^6.5.0", + "@turf/invariant": "^6.5.0" + }, + "funding": { + "url": "https://opencollective.com/turf" } }, - "../../../service/node_modules/chai": { - "version": "4.3.7", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@turf/projection": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/projection/-/projection-6.5.0.tgz", + "integrity": "sha512-/Pgh9mDvQWWu8HRxqpM+tKz8OzgauV+DiOcr3FCjD6ubDnrrmMJlsf6fFJmggw93mtVPrZRL6yyi9aYCQBOIvg==", "peer": true, "dependencies": { - "assertion-error": "^1.1.0", - "check-error": "^1.0.2", - "deep-eql": "^4.1.2", - "get-func-name": "^2.0.0", - "loupe": "^2.3.1", - "pathval": "^1.1.1", - "type-detect": "^4.0.5" + "@turf/clone": "^6.5.0", + "@turf/helpers": "^6.5.0", + "@turf/meta": "^6.5.0" }, - "engines": { - "node": ">=4" + "funding": { + "url": "https://opencollective.com/turf" } }, - "../../../service/node_modules/chai-as-promised": { - "version": "7.1.1", - "dev": true, - "license": "WTFPL", + "node_modules/@ngageoint/mage.service/node_modules/@turf/rhumb-bearing": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/rhumb-bearing/-/rhumb-bearing-6.5.0.tgz", + "integrity": "sha512-jMyqiMRK4hzREjQmnLXmkJ+VTNTx1ii8vuqRwJPcTlKbNWfjDz/5JqJlb5NaFDcdMpftWovkW5GevfnuzHnOYA==", "peer": true, "dependencies": { - "check-error": "^1.0.2" + "@turf/helpers": "^6.5.0", + "@turf/invariant": "^6.5.0" }, - "peerDependencies": { - "chai": ">= 2.1.2 < 5" + "funding": { + "url": "https://opencollective.com/turf" } }, - "../../../service/node_modules/chalk": { - "version": "4.1.1", - "license": "MIT", - "optional": true, + "node_modules/@ngageoint/mage.service/node_modules/@turf/rhumb-distance": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/rhumb-distance/-/rhumb-distance-6.5.0.tgz", + "integrity": "sha512-oKp8KFE8E4huC2Z1a1KNcFwjVOqa99isxNOwfo4g3SUABQ6NezjKDDrnvC4yI5YZ3/huDjULLBvhed45xdCrzg==", "peer": true, "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" + "@turf/helpers": "^6.5.0", + "@turf/invariant": "^6.5.0" }, "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" + "url": "https://opencollective.com/turf" } }, - "../../../service/node_modules/character-parser": { - "version": "2.2.0", - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/@types/archiver": { + "version": "5.3.4", + "resolved": "https://registry.npmjs.org/@types/archiver/-/archiver-5.3.4.tgz", + "integrity": "sha512-Lj7fLBIMwYFgViVVZHEdExZC3lVYsl+QL0VmdNdIzGZH544jHveYWij6qdnBgJQDnR7pMKliN9z2cPZFEbhyPw==", + "extraneous": true, "dependencies": { - "is-regex": "^1.0.3" + "@types/readdir-glob": "*" } }, - "../../../service/node_modules/chardet": { - "version": "0.7.0", - "devOptional": true, - "license": "MIT", - "peer": true - }, - "../../../service/node_modules/check-error": { - "version": "1.0.2", - "dev": true, - "license": "MIT", - "peer": true, - "engines": { - "node": "*" - } + "node_modules/@ngageoint/mage.service/node_modules/@types/async": { + "version": "3.2.24", + "resolved": "https://registry.npmjs.org/@types/async/-/async-3.2.24.tgz", + "integrity": "sha512-8iHVLHsCCOBKjCF2KwFe0p9Z3rfM9mL+sSP8btyR5vTjJRAqpBYD28/ZLgXPf0pjG1VxOvtCV/BgXkQbpSe8Hw==", + "extraneous": true, + "license": "MIT" }, - "../../../service/node_modules/chokidar": { - "version": "3.3.0", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@types/body-parser": { + "version": "1.19.5", + "resolved": "https://registry.npmjs.org/@types/body-parser/-/body-parser-1.19.5.tgz", + "integrity": "sha512-fB3Zu92ucau0iQ0JMCFQE7b/dv8Ot07NI3KaZIkIUNXq82k4eBAqUaneXfleGY9JWskeS9y+u0nXMyspcuQrCg==", "peer": true, "dependencies": { - "anymatch": "~3.1.1", - "braces": "~3.0.2", - "glob-parent": "~5.1.0", - "is-binary-path": "~2.1.0", - "is-glob": "~4.0.1", - "normalize-path": "~3.0.0", - "readdirp": "~3.2.0" - }, - "engines": { - "node": ">= 8.10.0" - }, - "optionalDependencies": { - "fsevents": "~2.1.1" + "@types/connect": "*", + "@types/node": "*" } }, - "../../../service/node_modules/chokidar/node_modules/braces": { - "version": "3.0.2", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/@types/bson": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/@types/bson/-/bson-1.0.11.tgz", + "integrity": "sha512-j+UcCWI+FsbI5/FQP/Kj2CXyplWAz39ktHFkXk84h7dNblKRSoNJs95PZFRd96NQGqsPEPgeclqnznWZr14ZDA==", + "extraneous": true, "dependencies": { - "fill-range": "^7.0.1" - }, - "engines": { - "node": ">=8" + "@types/node": "*" } }, - "../../../service/node_modules/chokidar/node_modules/fill-range": { - "version": "7.0.1", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/@types/busboy": { + "version": "1.5.4", + "resolved": "https://registry.npmjs.org/@types/busboy/-/busboy-1.5.4.tgz", + "integrity": "sha512-kG7WrUuAKK0NoyxfQHsVE6j1m01s6kMma64E+OZenQABMQyTJop1DumUWcLwAQ2JzpefU7PDYoRDKl8uZosFjw==", + "extraneous": true, "license": "MIT", - "peer": true, "dependencies": { - "to-regex-range": "^5.0.1" - }, - "engines": { - "node": ">=8" + "@types/node": "*" } }, - "../../../service/node_modules/chokidar/node_modules/is-number": { - "version": "7.0.0", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/@types/chai": { + "version": "4.3.20", + "resolved": "https://registry.npmjs.org/@types/chai/-/chai-4.3.20.tgz", + "integrity": "sha512-/pC9HAB5I/xMlc5FP77qjCnI16ChlJfW0tGa0IUcFn38VJrTV6DeZ60NU5KZBtaOZqjdpwTWohz5HU1RrhiYxQ==", + "extraneous": true, + "license": "MIT" + }, + "node_modules/@ngageoint/mage.service/node_modules/@types/chai-as-promised": { + "version": "7.1.8", + "resolved": "https://registry.npmjs.org/@types/chai-as-promised/-/chai-as-promised-7.1.8.tgz", + "integrity": "sha512-ThlRVIJhr69FLlh6IctTXFkmhtP3NpMZ2QGq69StYLyKZFp/HOp1VdKZj7RvfNWYYcJ1xlbLGLLWj1UvP5u/Gw==", + "extraneous": true, "license": "MIT", - "peer": true, - "engines": { - "node": ">=0.12.0" + "dependencies": { + "@types/chai": "*" } }, - "../../../service/node_modules/chokidar/node_modules/to-regex-range": { - "version": "5.0.1", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@types/connect": { + "version": "3.4.38", + "resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.38.tgz", + "integrity": "sha512-K6uROf1LD88uDQqJCktA4yzL1YYAK6NgfsI0v/mTgyPKWsX1CnJ0XPSDhViejru1GcRkLWb8RlzFYJRqGUbaug==", "peer": true, "dependencies": { - "is-number": "^7.0.0" - }, - "engines": { - "node": ">=8.0" + "@types/node": "*" } }, - "../../../service/node_modules/chownr": { - "version": "2.0.0", - "license": "ISC", + "node_modules/@ngageoint/mage.service/node_modules/@types/cookiejar": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@types/cookiejar/-/cookiejar-2.1.5.tgz", + "integrity": "sha512-he+DHOWReW0nghN24E1WUqM0efK4kI9oTqDm6XmK8ZPe2djZ90BSNdGnIyCLzCPw7/pogPlGbzI2wHGGmi4O/Q==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/@types/debug": { + "version": "4.1.12", + "resolved": "https://registry.npmjs.org/@types/debug/-/debug-4.1.12.tgz", + "integrity": "sha512-vIChWdVG3LG1SMxEvI/AK+FWJthlrqlTu7fbrlywTkkaONwk/UAGaULXRlf8vkzFBLVm0zkMdCquhL5aOjhXPQ==", "peer": true, - "engines": { - "node": ">=10" + "dependencies": { + "@types/ms": "*" } }, - "../../../service/node_modules/cipher-base": { + "node_modules/@ngageoint/mage.service/node_modules/@types/deep-equal": { "version": "1.0.4", + "resolved": "https://registry.npmjs.org/@types/deep-equal/-/deep-equal-1.0.4.tgz", + "integrity": "sha512-tqdiS4otQP4KmY0PR3u6KbZ5EWvhNdUoS/jc93UuK23C220lOZ/9TvjfxdPcKvqwwDVtmtSCrnr0p/2dirAxkA==", + "extraneous": true, + "license": "MIT" + }, + "node_modules/@ngageoint/mage.service/node_modules/@types/express": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/@types/express/-/express-4.17.21.tgz", + "integrity": "sha512-ejlPM315qwLpaQlQDTjPdsUFSc6ZsP4AN6AlWnogPjQ7CVi7PYF3YVz+CY3jE2pwYf7E/7HlDAN0rV2GxTG0HQ==", "license": "MIT", "peer": true, "dependencies": { - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" + "@types/body-parser": "*", + "@types/express-serve-static-core": "^4.17.33", + "@types/qs": "*", + "@types/serve-static": "*" } }, - "../../../service/node_modules/class-utils": { - "version": "0.3.6", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/@types/express-serve-static-core": { + "version": "4.19.6", + "resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.19.6.tgz", + "integrity": "sha512-N4LZ2xG7DatVqhCZzOGb1Yi5lMbXSZcmdLDe9EzSndPV2HpWYWzRbaerl2n27irrm94EPpprqa8KpskPT085+A==", "license": "MIT", "peer": true, "dependencies": { - "arr-union": "^3.1.0", - "define-property": "^0.2.5", - "isobject": "^3.0.0", - "static-extend": "^0.1.1" - }, - "engines": { - "node": ">=0.10.0" + "@types/node": "*", + "@types/qs": "*", + "@types/range-parser": "*", + "@types/send": "*" } }, - "../../../service/node_modules/class-utils/node_modules/define-property": { - "version": "0.2.5", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/@types/fs-extra": { + "version": "8.1.5", + "resolved": "https://registry.npmjs.org/@types/fs-extra/-/fs-extra-8.1.5.tgz", + "integrity": "sha512-0dzKcwO+S8s2kuF5Z9oUWatQJj5Uq/iqphEtE3GQJVRRYm/tD1LglU2UnXi2A8jLq5umkGouOXOR9y0n613ZwQ==", + "extraneous": true, "license": "MIT", - "peer": true, "dependencies": { - "is-descriptor": "^0.1.0" - }, - "engines": { - "node": ">=0.10.0" + "@types/node": "*" } }, - "../../../service/node_modules/class-utils/node_modules/is-accessor-descriptor": { - "version": "0.1.6", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/@types/geojson": { + "version": "7946.0.16", + "resolved": "https://registry.npmjs.org/@types/geojson/-/geojson-7946.0.16.tgz", + "integrity": "sha512-6C8nqWur3j98U6+lXDfTUWIfgvZU+EumvpHKcYjujKH7woYyLj2sUmff0tRhrqM7BohUw7Pz3ZB1jj2gW9Fvmg==", "license": "MIT", - "peer": true, - "dependencies": { - "kind-of": "^3.0.2" - }, - "engines": { - "node": ">=0.10.0" - } + "peer": true }, - "../../../service/node_modules/class-utils/node_modules/is-accessor-descriptor/node_modules/kind-of": { - "version": "3.2.2", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "is-buffer": "^1.1.5" - }, - "engines": { - "node": ">=0.10.0" - } + "node_modules/@ngageoint/mage.service/node_modules/@types/http-errors": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/@types/http-errors/-/http-errors-2.0.4.tgz", + "integrity": "sha512-D0CFMMtydbJAegzOyHjtiKPLlvnm3iTZyZRSZoLq2mRhDdmLfIWOCYPfQJ4cu2erKghU++QvjcUjp/5h7hESpA==", + "peer": true }, - "../../../service/node_modules/class-utils/node_modules/is-buffer": { - "version": "1.1.6", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/@types/json-schema": { + "version": "7.0.15", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.15.tgz", + "integrity": "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==", "license": "MIT", "peer": true }, - "../../../service/node_modules/class-utils/node_modules/is-data-descriptor": { - "version": "0.1.4", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/@types/json2csv": { + "version": "4.5.1", + "resolved": "https://registry.npmjs.org/@types/json2csv/-/json2csv-4.5.1.tgz", + "integrity": "sha512-sZbRdrTddxYzhydkC5eMEbRXU8pjcV8Zyxf2If7YO3GVxWY18fs0P5YJyjRfkMKTAsA8ynTRQWhvWbHhBzBFVA==", + "extraneous": true, "license": "MIT", - "peer": true, "dependencies": { - "kind-of": "^3.0.2" - }, - "engines": { - "node": ">=0.10.0" + "@types/node": "*" } }, - "../../../service/node_modules/class-utils/node_modules/is-data-descriptor/node_modules/kind-of": { - "version": "3.2.2", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@types/ldapjs": { + "version": "2.2.5", + "resolved": "https://registry.npmjs.org/@types/ldapjs/-/ldapjs-2.2.5.tgz", + "integrity": "sha512-Lv/nD6QDCmcT+V1vaTRnEKE8UgOilVv5pHcQuzkU1LcRe4mbHHuUo/KHi0LKrpdHhQY8FJzryF38fcVdeUIrzg==", "peer": true, "dependencies": { - "is-buffer": "^1.1.5" - }, - "engines": { - "node": ">=0.10.0" + "@types/node": "*" } }, - "../../../service/node_modules/class-utils/node_modules/is-descriptor": { - "version": "0.1.6", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "is-accessor-descriptor": "^0.1.6", - "is-data-descriptor": "^0.1.4", - "kind-of": "^5.0.0" - }, - "engines": { - "node": ">=0.10.0" - } + "node_modules/@ngageoint/mage.service/node_modules/@types/lodash": { + "version": "4.17.16", + "resolved": "https://registry.npmjs.org/@types/lodash/-/lodash-4.17.16.tgz", + "integrity": "sha512-HX7Em5NYQAXKW+1T+FiuG27NGwzJfCX3s1GjOa7ujxZa52kjJLOr4FUxT+giF6Tgxv1e+/czV/iTtBw27WTU9g==", + "extraneous": true, + "license": "MIT" }, - "../../../service/node_modules/class-utils/node_modules/kind-of": { - "version": "5.1.0", - "dev": true, - "license": "MIT", - "peer": true, - "engines": { - "node": ">=0.10.0" - } + "node_modules/@ngageoint/mage.service/node_modules/@types/methods": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/@types/methods/-/methods-1.1.4.tgz", + "integrity": "sha512-ymXWVrDiCxTBE3+RIrrP533E70eA+9qu7zdWoHuOmGujkYtzf4HQF96b8nwHLqhuf4ykX61IGRIB38CC6/sImQ==", + "extraneous": true }, - "../../../service/node_modules/clean-css": { - "version": "4.2.4", - "license": "MIT", - "peer": true, - "dependencies": { - "source-map": "~0.6.0" - }, - "engines": { - "node": ">= 4.0" - } + "node_modules/@ngageoint/mage.service/node_modules/@types/mime": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/@types/mime/-/mime-1.3.5.tgz", + "integrity": "sha512-/pyBZWSLD2n0dcHE3hq8s8ZvcETHtEuF+3E7XVt0Ig2nvsVQXdghHVcEkIWjy9A0wKfTn97a/PSDYohKIlnP/w==", + "peer": true }, - "../../../service/node_modules/cli-cursor": { - "version": "3.1.0", - "devOptional": true, + "node_modules/@ngageoint/mage.service/node_modules/@types/mime-types": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/@types/mime-types/-/mime-types-2.1.4.tgz", + "integrity": "sha512-lfU4b34HOri+kAY5UheuFMWPDOI+OPceBSHZKp69gEyTL/mmJ4cnU6Y/rlme3UL3GyOn6Y42hyIEw0/q8sWx5w==", "license": "MIT", - "peer": true, - "dependencies": { - "restore-cursor": "^3.1.0" - }, - "engines": { - "node": ">=8" - } - }, - "../../../service/node_modules/cli-width": { - "version": "3.0.0", - "devOptional": true, - "license": "ISC", - "peer": true, - "engines": { - "node": ">= 10" - } + "peer": true }, - "../../../service/node_modules/cliui": { - "version": "5.0.0", - "dev": true, - "license": "ISC", - "peer": true, - "dependencies": { - "string-width": "^3.1.0", - "strip-ansi": "^5.2.0", - "wrap-ansi": "^5.1.0" - } + "node_modules/@ngageoint/mage.service/node_modules/@types/mocha": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-7.0.2.tgz", + "integrity": "sha512-ZvO2tAcjmMi8V/5Z3JsyofMe3hasRcaw88cto5etSVMwVQfeivGAlEYmaQgceUSVYFofVjT+ioHsATjdWcFt1w==", + "extraneous": true }, - "../../../service/node_modules/cliui/node_modules/emoji-regex": { - "version": "7.0.3", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@types/ms": { + "version": "0.7.34", + "resolved": "https://registry.npmjs.org/@types/ms/-/ms-0.7.34.tgz", + "integrity": "sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==", "peer": true }, - "../../../service/node_modules/cliui/node_modules/is-fullwidth-code-point": { - "version": "2.0.0", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/@types/multer": { + "version": "1.4.12", + "resolved": "https://registry.npmjs.org/@types/multer/-/multer-1.4.12.tgz", + "integrity": "sha512-pQ2hoqvXiJt2FP9WQVLPRO+AmiIm/ZYkavPlIQnx282u4ZrVdztx0pkh3jjpQt0Kz+YI0YhSG264y08UJKoUQg==", + "extraneous": true, "license": "MIT", - "peer": true, - "engines": { - "node": ">=4" + "dependencies": { + "@types/express": "*" } }, - "../../../service/node_modules/cliui/node_modules/string-width": { - "version": "3.1.0", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/@types/node": { + "version": "18.19.80", + "resolved": "https://registry.npmjs.org/@types/node/-/node-18.19.80.tgz", + "integrity": "sha512-kEWeMwMeIvxYkeg1gTc01awpwLbfMRZXdIhwRcakd/KlK53jmRC26LqcbIt7fnAQTu5GzlnWmzA3H6+l1u6xxQ==", "license": "MIT", "peer": true, "dependencies": { - "emoji-regex": "^7.0.1", - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^5.1.0" - }, - "engines": { - "node": ">=6" + "undici-types": "~5.26.4" } }, - "../../../service/node_modules/code-point-at": { - "version": "1.1.0", + "node_modules/@ngageoint/mage.service/node_modules/@types/node-fetch": { + "version": "2.6.12", + "resolved": "https://registry.npmjs.org/@types/node-fetch/-/node-fetch-2.6.12.tgz", + "integrity": "sha512-8nneRWKCg3rMtF69nLQJnOYUcbafYeFSjqkw3jCRLsqkWFlHaoQrr5mXmofFGOx3DKn7UfmBMyov8ySvLRVldA==", + "extraneous": true, "license": "MIT", - "peer": true, - "engines": { - "node": ">=0.10.0" + "dependencies": { + "@types/node": "*", + "form-data": "^4.0.0" } }, - "../../../service/node_modules/collection-visit": { - "version": "1.0.0", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/@types/passport": { + "version": "1.0.17", + "resolved": "https://registry.npmjs.org/@types/passport/-/passport-1.0.17.tgz", + "integrity": "sha512-aciLyx+wDwT2t2/kJGJR2AEeBz0nJU4WuRX04Wu9Dqc5lSUtwu0WERPHYsLhF9PtseiAMPBGNUOtFjxZ56prsg==", "license": "MIT", "peer": true, "dependencies": { - "map-visit": "^1.0.0", - "object-visit": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" + "@types/express": "*" } }, - "../../../service/node_modules/color-convert": { - "version": "2.0.1", - "license": "MIT", - "optional": true, + "node_modules/@ngageoint/mage.service/node_modules/@types/passport-strategy": { + "version": "0.2.38", + "resolved": "https://registry.npmjs.org/@types/passport-strategy/-/passport-strategy-0.2.38.tgz", + "integrity": "sha512-GC6eMqqojOooq993Tmnmp7AUTbbQSgilyvpCYQjT+H6JfG/g6RGc7nXEniZlp0zyKJ0WUdOiZWLBZft9Yug1uA==", "peer": true, "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" + "@types/express": "*", + "@types/passport": "*" } }, - "../../../service/node_modules/color-name": { - "version": "1.1.4", - "license": "MIT", - "optional": true, + "node_modules/@ngageoint/mage.service/node_modules/@types/proj4": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/@types/proj4/-/proj4-2.5.2.tgz", + "integrity": "sha512-/Nmfn9p08yaYw6xo5f2b0L+2oHk2kZeOkp5v+4VCeNfq+ETlLQbmHmC97/pjDIEZy8jxwz7pdPpwNzDHM5cuJw==", "peer": true }, - "../../../service/node_modules/colors": { - "version": "1.0.3", - "license": "MIT", - "peer": true, - "engines": { - "node": ">=0.1.90" - } + "node_modules/@ngageoint/mage.service/node_modules/@types/qs": { + "version": "6.9.15", + "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.15.tgz", + "integrity": "sha512-uXHQKES6DQKKCLh441Xv/dwxOq1TVS3JPUMlEqoEglvlhR6Mxnlew/Xq/LRVHpLyk7iK3zODe1qYHIMltO7XGg==", + "peer": true }, - "../../../service/node_modules/combined-stream": { - "version": "1.0.8", - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/@types/range-parser": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/@types/range-parser/-/range-parser-1.2.7.tgz", + "integrity": "sha512-hKormJbkJqzQGhziax5PItDUTMAM9uE2XXQmM37dyd4hVM+5aVl7oVxMVUiVQn2oCQFN/LKCZdvSM0pFRqbSmQ==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/@types/readdir-glob": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/@types/readdir-glob/-/readdir-glob-1.1.5.tgz", + "integrity": "sha512-raiuEPUYqXu+nvtY2Pe8s8FEmZ3x5yAH4VkLdihcPdalvsHltomrRC9BzuStrJ9yk06470hS0Crw0f1pXqD+Hg==", + "extraneous": true, "dependencies": { - "delayed-stream": "~1.0.0" - }, - "engines": { - "node": ">= 0.8" + "@types/node": "*" } }, - "../../../service/node_modules/commander": { - "version": "8.3.0", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@types/semver": { + "version": "7.5.8", + "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.5.8.tgz", + "integrity": "sha512-I8EUhyrgfLrcTkzV3TSsGyl1tSuPrEDzr0yd5m90UgNxQkyDXULk3b6MlQqTCpZpNtWe1K0hzclnZkTcLBe2UQ==", + "extraneous": true, + "license": "MIT" + }, + "node_modules/@ngageoint/mage.service/node_modules/@types/send": { + "version": "0.17.4", + "resolved": "https://registry.npmjs.org/@types/send/-/send-0.17.4.tgz", + "integrity": "sha512-x2EM6TJOybec7c52BX0ZspPodMsQUd5L6PRwOunVyVUhXiBSKf3AezDL8Dgvgt5o0UfKNfuA0eMLr2wLT4AiBA==", "peer": true, - "engines": { - "node": ">= 12" + "dependencies": { + "@types/mime": "^1", + "@types/node": "*" } }, - "../../../service/node_modules/commondir": { - "version": "1.0.1", - "dev": true, - "license": "MIT", - "peer": true - }, - "../../../service/node_modules/component-emitter": { - "version": "1.3.0", - "license": "MIT", - "peer": true - }, - "../../../service/node_modules/compress-commons": { - "version": "4.1.1", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@types/serve-static": { + "version": "1.15.7", + "resolved": "https://registry.npmjs.org/@types/serve-static/-/serve-static-1.15.7.tgz", + "integrity": "sha512-W8Ym+h8nhuRwaKPaDw34QUkwsGi6Rc4yYqvKFo5rm2FUEhCFbzVWrxXUxuKK8TASjWsysJY0nsmNCGhCOIsrOw==", "peer": true, "dependencies": { - "buffer-crc32": "^0.2.13", - "crc32-stream": "^4.0.2", - "normalize-path": "^3.0.0", - "readable-stream": "^3.6.0" - }, - "engines": { - "node": ">= 10" + "@types/http-errors": "*", + "@types/node": "*", + "@types/send": "*" } }, - "../../../service/node_modules/concat-map": { - "version": "0.0.1", + "node_modules/@ngageoint/mage.service/node_modules/@types/sinon": { + "version": "9.0.11", + "resolved": "https://registry.npmjs.org/@types/sinon/-/sinon-9.0.11.tgz", + "integrity": "sha512-PwP4UY33SeeVKodNE37ZlOsR9cReypbMJOhZ7BVE0lB+Hix3efCOxiJWiE5Ia+yL9Cn2Ch72EjFTRze8RZsNtg==", + "extraneous": true, "license": "MIT", - "peer": true + "dependencies": { + "@types/sinonjs__fake-timers": "*" + } }, - "../../../service/node_modules/concat-stream": { - "version": "1.5.2", - "engines": [ - "node >= 0.8" - ], + "node_modules/@ngageoint/mage.service/node_modules/@types/sinon-chai": { + "version": "3.2.12", + "resolved": "https://registry.npmjs.org/@types/sinon-chai/-/sinon-chai-3.2.12.tgz", + "integrity": "sha512-9y0Gflk3b0+NhQZ/oxGtaAJDvRywCa5sIyaVnounqLvmf93yBF4EgIRspePtkMs3Tr844nCclYMlcCNmLCvjuQ==", + "extraneous": true, "license": "MIT", - "peer": true, "dependencies": { - "inherits": "~2.0.1", - "readable-stream": "~2.0.0", - "typedarray": "~0.0.5" + "@types/chai": "*", + "@types/sinon": "*" } }, - "../../../service/node_modules/concat-stream/node_modules/isarray": { - "version": "1.0.0", - "license": "MIT", - "peer": true + "node_modules/@ngageoint/mage.service/node_modules/@types/sinonjs__fake-timers": { + "version": "8.1.5", + "resolved": "https://registry.npmjs.org/@types/sinonjs__fake-timers/-/sinonjs__fake-timers-8.1.5.tgz", + "integrity": "sha512-mQkU2jY8jJEF7YHjHvsQO8+3ughTL1mcnn96igfhONmR+fUPSKIkefQYpSe8bsly2Ep7oQbn/6VG5/9/0qcArQ==", + "extraneous": true }, - "../../../service/node_modules/concat-stream/node_modules/process-nextick-args": { - "version": "1.0.7", + "node_modules/@ngageoint/mage.service/node_modules/@types/superagent": { + "version": "8.1.9", + "resolved": "https://registry.npmjs.org/@types/superagent/-/superagent-8.1.9.tgz", + "integrity": "sha512-pTVjI73witn+9ILmoJdajHGW2jkSaOzhiFYF1Rd3EQ94kymLqB9PjD9ISg7WaALC7+dCHT0FGe9T2LktLq/3GQ==", + "extraneous": true, "license": "MIT", - "peer": true + "dependencies": { + "@types/cookiejar": "^2.1.5", + "@types/methods": "^1.1.4", + "@types/node": "*", + "form-data": "^4.0.0" + } }, - "../../../service/node_modules/concat-stream/node_modules/readable-stream": { - "version": "2.0.6", - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/@types/supertest": { + "version": "2.0.16", + "resolved": "https://registry.npmjs.org/@types/supertest/-/supertest-2.0.16.tgz", + "integrity": "sha512-6c2ogktZ06tr2ENoZivgm7YnprnhYE4ZoXGMY+oA7IuAf17M8FWvujXZGmxLv8y0PTyts4x5A+erSwVUFA8XSg==", + "extraneous": true, "dependencies": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.1", - "isarray": "~1.0.0", - "process-nextick-args": "~1.0.6", - "string_decoder": "~0.10.x", - "util-deprecate": "~1.0.1" + "@types/superagent": "*" } }, - "../../../service/node_modules/concat-stream/node_modules/string_decoder": { - "version": "0.10.31", - "license": "MIT", - "peer": true + "node_modules/@ngageoint/mage.service/node_modules/@types/uniqid": { + "version": "5.3.4", + "resolved": "https://registry.npmjs.org/@types/uniqid/-/uniqid-5.3.4.tgz", + "integrity": "sha512-AgC+o3/8/QEHuU3w5w2jZ8auQtjSJ/s8G8RfEk9CYLogK1RGXqxhHH0wOEAu8uHXjvj8oh/dRtfgok4IHKxh/Q==", + "extraneous": true, + "license": "MIT" }, - "../../../service/node_modules/console-control-strings": { - "version": "1.1.0", - "license": "ISC", + "node_modules/@ngageoint/mage.service/node_modules/@types/webidl-conversions": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/@types/webidl-conversions/-/webidl-conversions-7.0.3.tgz", + "integrity": "sha512-CiJJvcRtIgzadHCYXw7dqEnMNRjhGZlYK05Mj9OyktqV8uVT8fD2BFOB7S1uwBE3Kj2Z+4UyPmFw/Ixgw/LAlA==", "peer": true }, - "../../../service/node_modules/constantinople": { - "version": "3.1.2", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@types/whatwg-url": { + "version": "8.2.2", + "resolved": "https://registry.npmjs.org/@types/whatwg-url/-/whatwg-url-8.2.2.tgz", + "integrity": "sha512-FtQu10RWgn3D9U4aazdwIE2yzphmTJREDqNdODHrbrZmmMqI0vMheC/6NE/J1Yveaj8H+ela+YwWTjq5PGmuhA==", "peer": true, "dependencies": { - "@types/babel-types": "^7.0.0", - "@types/babylon": "^6.16.2", - "babel-types": "^6.26.0", - "babylon": "^6.18.0" + "@types/node": "*", + "@types/webidl-conversions": "*" } }, - "../../../service/node_modules/content-disposition": { - "version": "0.5.4", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@types/xml-crypto": { + "version": "1.4.6", + "resolved": "https://registry.npmjs.org/@types/xml-crypto/-/xml-crypto-1.4.6.tgz", + "integrity": "sha512-A6jEW2FxLZo1CXsRWnZHUX2wzR3uDju2Bozt6rDbSmU/W8gkilaVbwFEVN0/NhnUdMVzwYobWtM6bU1QJJFb7Q==", "peer": true, "dependencies": { - "safe-buffer": "5.2.1" - }, - "engines": { - "node": ">= 0.6" + "@types/node": "*", + "xpath": "0.0.27" } }, - "../../../service/node_modules/content-type": { - "version": "1.0.4", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@types/xml-crypto/node_modules/xpath": { + "version": "0.0.27", + "resolved": "https://registry.npmjs.org/xpath/-/xpath-0.0.27.tgz", + "integrity": "sha512-fg03WRxtkCV6ohClePNAECYsmpKKTv5L8y/X3Dn1hQrec3POx2jHZ/0P2qQ6HvsrU1BmeqXcof3NGGueG6LxwQ==", "peer": true, "engines": { - "node": ">= 0.6" + "node": ">=0.6.0" } }, - "../../../service/node_modules/convert-source-map": { - "version": "1.9.0", - "dev": true, - "license": "MIT", - "peer": true - }, - "../../../service/node_modules/cookie": { - "version": "0.4.2", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@types/xml-encryption": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/@types/xml-encryption/-/xml-encryption-1.2.4.tgz", + "integrity": "sha512-I69K/WW1Dv7j6O3jh13z0X8sLWJRXbu5xnHDl9yHzUNDUBtUoBY058eb5s+x/WG6yZC1h8aKdI2EoyEPjyEh+Q==", "peer": true, - "engines": { - "node": ">= 0.6" + "dependencies": { + "@types/node": "*" } }, - "../../../service/node_modules/cookie-signature": { - "version": "1.0.6", - "license": "MIT", - "peer": true - }, - "../../../service/node_modules/cookiejar": { - "version": "2.1.3", - "license": "MIT", - "peer": true - }, - "../../../service/node_modules/copy-descriptor": { - "version": "0.1.1", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@types/xml2js": { + "version": "0.4.14", + "resolved": "https://registry.npmjs.org/@types/xml2js/-/xml2js-0.4.14.tgz", + "integrity": "sha512-4YnrRemBShWRO2QjvUin8ESA41rH+9nQGLUGZV/1IDhi3SL9OhdpNC/MrulTWuptXKwhx/aDxE7toV0f/ypIXQ==", "peer": true, - "engines": { - "node": ">=0.10.0" + "dependencies": { + "@types/node": "*" } }, - "../../../service/node_modules/core-js": { - "version": "2.6.12", - "hasInstallScript": true, - "license": "MIT", - "peer": true - }, - "../../../service/node_modules/core-util-is": { - "version": "1.0.2", + "node_modules/@ngageoint/mage.service/node_modules/@typescript-eslint/eslint-plugin": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-6.21.0.tgz", + "integrity": "sha512-oy9+hTPCUFpngkEZUSzbf9MxI65wbKFoQYsgPdILTfbUldp5ovUuphZVe4i30emU9M/kP+T64Di0mxl7dSw3MA==", + "extraneous": true, "license": "MIT", - "peer": true - }, - "../../../service/node_modules/coveralls": { - "version": "3.0.4", - "dev": true, - "license": "BSD-2-Clause", - "peer": true, "dependencies": { - "growl": "~> 1.10.0", - "js-yaml": "^3.11.0", - "lcov-parse": "^0.0.10", - "log-driver": "^1.2.7", - "minimist": "^1.2.0", - "request": "^2.86.0" - }, - "bin": { - "coveralls": "bin/coveralls.js" + "@eslint-community/regexpp": "^4.5.1", + "@typescript-eslint/scope-manager": "6.21.0", + "@typescript-eslint/type-utils": "6.21.0", + "@typescript-eslint/utils": "6.21.0", + "@typescript-eslint/visitor-keys": "6.21.0", + "debug": "^4.3.4", + "graphemer": "^1.4.0", + "ignore": "^5.2.4", + "natural-compare": "^1.4.0", + "semver": "^7.5.4", + "ts-api-utils": "^1.0.1" }, "engines": { - "node": ">=4.0.0" + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "@typescript-eslint/parser": "^6.0.0 || ^6.0.0-alpha", + "eslint": "^7.0.0 || ^8.0.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } } }, - "../../../service/node_modules/coveralls/node_modules/esprima": { - "version": "4.0.1", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/@typescript-eslint/parser": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-6.21.0.tgz", + "integrity": "sha512-tbsV1jPne5CkFQCgPBcDOt30ItF7aJoZL997JSF7MhGQqOeT3svWRYxiqlfA5RUdlHN6Fi+EI9bxqbdyAUZjYQ==", + "extraneous": true, "license": "BSD-2-Clause", - "peer": true, - "bin": { - "esparse": "bin/esparse.js", - "esvalidate": "bin/esvalidate.js" + "dependencies": { + "@typescript-eslint/scope-manager": "6.21.0", + "@typescript-eslint/types": "6.21.0", + "@typescript-eslint/typescript-estree": "6.21.0", + "@typescript-eslint/visitor-keys": "6.21.0", + "debug": "^4.3.4" }, "engines": { - "node": ">=4" - } - }, - "../../../service/node_modules/coveralls/node_modules/js-yaml": { - "version": "3.14.1", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" + "node": "^16.0.0 || >=18.0.0" }, - "bin": { - "js-yaml": "bin/js-yaml.js" + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^7.0.0 || ^8.0.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } } }, - "../../../service/node_modules/cp-file": { - "version": "6.2.0", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/@typescript-eslint/scope-manager": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-6.21.0.tgz", + "integrity": "sha512-OwLUIWZJry80O99zvqXVEioyniJMa+d2GrqpUTqi5/v5D5rOrppJVBPa0yKCblcigC0/aYAzxxqQ1B+DS2RYsg==", + "extraneous": true, "license": "MIT", - "peer": true, "dependencies": { - "graceful-fs": "^4.1.2", - "make-dir": "^2.0.0", - "nested-error-stacks": "^2.0.0", - "pify": "^4.0.1", - "safe-buffer": "^5.0.1" + "@typescript-eslint/types": "6.21.0", + "@typescript-eslint/visitor-keys": "6.21.0" }, "engines": { - "node": ">=6" + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" } }, - "../../../service/node_modules/cpy": { - "version": "7.3.0", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/@typescript-eslint/type-utils": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-6.21.0.tgz", + "integrity": "sha512-rZQI7wHfao8qMX3Rd3xqeYSMCL3SoiSQLBATSiVKARdFGCYSRvmViieZjqc58jKgs8Y8i9YvVVhRbHSTA4VBag==", + "extraneous": true, "license": "MIT", - "peer": true, "dependencies": { - "arrify": "^1.0.1", - "cp-file": "^6.1.0", - "globby": "^9.2.0", - "nested-error-stacks": "^2.1.0" + "@typescript-eslint/typescript-estree": "6.21.0", + "@typescript-eslint/utils": "6.21.0", + "debug": "^4.3.4", + "ts-api-utils": "^1.0.1" }, "engines": { - "node": ">=6" + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^7.0.0 || ^8.0.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } } }, - "../../../service/node_modules/cpy-cli": { - "version": "2.0.0", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/@typescript-eslint/types": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-6.21.0.tgz", + "integrity": "sha512-1kFmZ1rOm5epu9NZEZm1kckCDGj5UJEf7P1kliH4LKu/RkwpsfqqGmY2OOcUs18lSlQBKLDYBOGxRVtrMN5lpg==", + "extraneous": true, "license": "MIT", - "peer": true, - "dependencies": { - "cpy": "^7.0.0", - "meow": "^5.0.0" - }, - "bin": { - "cpy": "cli.js" - }, "engines": { - "node": ">=6" + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" } }, - "../../../service/node_modules/crc-32": { - "version": "1.2.2", - "license": "Apache-2.0", - "peer": true, - "bin": { - "crc32": "bin/crc32.njs" + "node_modules/@ngageoint/mage.service/node_modules/@typescript-eslint/typescript-estree": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-6.21.0.tgz", + "integrity": "sha512-6npJTkZcO+y2/kr+z0hc4HwNfrrP4kNYh57ek7yCNlrBjWQ1Y0OS7jiZTkgumrvkX5HkEKXFZkkdFNkaW2wmUQ==", + "extraneous": true, + "license": "BSD-2-Clause", + "dependencies": { + "@typescript-eslint/types": "6.21.0", + "@typescript-eslint/visitor-keys": "6.21.0", + "debug": "^4.3.4", + "globby": "^11.1.0", + "is-glob": "^4.0.3", + "minimatch": "9.0.3", + "semver": "^7.5.4", + "ts-api-utils": "^1.0.1" }, "engines": { - "node": ">=0.8" + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } } }, - "../../../service/node_modules/crc32-stream": { - "version": "4.0.2", + "node_modules/@ngageoint/mage.service/node_modules/@typescript-eslint/utils": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-6.21.0.tgz", + "integrity": "sha512-NfWVaC8HP9T8cbKQxHcsJBY5YE1O33+jpMwN45qzWWaPDZgLIbo12toGMWnmhvCpd3sIxkpDw3Wv1B3dYrbDQQ==", + "extraneous": true, "license": "MIT", - "peer": true, "dependencies": { - "crc-32": "^1.2.0", - "readable-stream": "^3.4.0" + "@eslint-community/eslint-utils": "^4.4.0", + "@types/json-schema": "^7.0.12", + "@types/semver": "^7.5.0", + "@typescript-eslint/scope-manager": "6.21.0", + "@typescript-eslint/types": "6.21.0", + "@typescript-eslint/typescript-estree": "6.21.0", + "semver": "^7.5.4" }, "engines": { - "node": ">= 10" + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^7.0.0 || ^8.0.0" } }, - "../../../service/node_modules/create-hash": { - "version": "1.2.0", + "node_modules/@ngageoint/mage.service/node_modules/@typescript-eslint/visitor-keys": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-6.21.0.tgz", + "integrity": "sha512-JJtkDduxLi9bivAB+cYOVMtbkqdPOhZ+ZI5LC47MIRrDV4Yn2o+ZnW10Nkmr28xRpSpdJ6Sm42Hjf2+REYXm0A==", + "extraneous": true, "license": "MIT", - "peer": true, "dependencies": { - "cipher-base": "^1.0.1", - "inherits": "^2.0.1", - "md5.js": "^1.3.4", - "ripemd160": "^2.0.1", - "sha.js": "^2.4.0" + "@typescript-eslint/types": "6.21.0", + "eslint-visitor-keys": "^3.4.1" + }, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" } }, - "../../../service/node_modules/create-hmac": { - "version": "1.1.7", - "license": "MIT", - "peer": true, - "dependencies": { - "cipher-base": "^1.0.3", - "create-hash": "^1.1.0", - "inherits": "^2.0.1", - "ripemd160": "^2.0.0", - "safe-buffer": "^5.0.1", - "sha.js": "^2.4.8" - } + "node_modules/@ngageoint/mage.service/node_modules/@ungap/structured-clone": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/@ungap/structured-clone/-/structured-clone-1.3.0.tgz", + "integrity": "sha512-WmoN8qaIAo7WTYWbAZuG8PYEhn5fkz7dZrqTBZ7dtt//lL2Gwms1IcnQ5yHqjDfX8Ft5j4YzDM23f87zBfDe9g==", + "extraneous": true, + "license": "ISC" }, - "../../../service/node_modules/cross-spawn": { - "version": "6.0.5", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/@xmldom/xmldom": { + "version": "0.9.8", + "resolved": "https://registry.npmjs.org/@xmldom/xmldom/-/xmldom-0.9.8.tgz", + "integrity": "sha512-p96FSY54r+WJ50FIOsCOjyj/wavs8921hG5+kVMmZgKcvIKxMXHTrjNJvRgWa/zuX3B6t2lijLNFaOyuxUH+2A==", "license": "MIT", "peer": true, - "dependencies": { - "nice-try": "^1.0.4", - "path-key": "^2.0.1", - "semver": "^5.5.0", - "shebang-command": "^1.2.0", - "which": "^1.2.9" - }, "engines": { - "node": ">=4.8" + "node": ">=14.6" } }, - "../../../service/node_modules/cross-spawn/node_modules/semver": { - "version": "5.7.1", - "dev": true, - "license": "ISC", - "peer": true, - "bin": { - "semver": "bin/semver" - } + "node_modules/@ngageoint/mage.service/node_modules/abstract-logging": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/abstract-logging/-/abstract-logging-2.0.1.tgz", + "integrity": "sha512-2BjRTZxTPvheOvGbBslFSYOUkr+SjPtOnrLP33f+VIWLzezQpZcqVg7ja3L4dBXmzzgwT+a029jRx5PCi3JuiA==", + "peer": true }, - "../../../service/node_modules/currently-unhandled": { - "version": "0.4.1", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/accepts": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz", + "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==", "peer": true, "dependencies": { - "array-find-index": "^1.0.1" + "mime-types": "~2.1.34", + "negotiator": "0.6.3" }, "engines": { - "node": ">=0.10.0" - } - }, - "../../../service/node_modules/cycle": { - "version": "1.0.3", - "peer": true, - "engines": { - "node": ">=0.4.0" + "node": ">= 0.6" } }, - "../../../service/node_modules/dashdash": { - "version": "1.14.1", - "license": "MIT", - "peer": true, - "dependencies": { - "assert-plus": "^1.0.0" + "node_modules/@ngageoint/mage.service/node_modules/acorn": { + "version": "8.12.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.12.0.tgz", + "integrity": "sha512-RTvkC4w+KNXrM39/lWCUaG0IbRkWdCv7W/IOW9oU6SawyxulvkQy5HQPVTKxEjczcUvapcrw3cFx/60VN/NRNw==", + "extraneous": true, + "bin": { + "acorn": "bin/acorn" }, "engines": { - "node": ">=0.10" + "node": ">=0.4.0" } }, - "../../../service/node_modules/dbf": { - "version": "0.1.0", - "license": "BSD-2-Clause", - "peer": true, - "dependencies": { - "jdataview": "~2.4.4" + "node_modules/@ngageoint/mage.service/node_modules/acorn-jsx": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", + "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", + "extraneous": true, + "peerDependencies": { + "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" } }, - "../../../service/node_modules/debug": { - "version": "4.3.4", + "node_modules/@ngageoint/mage.service/node_modules/adm-zip": { + "version": "0.5.16", + "resolved": "https://registry.npmjs.org/adm-zip/-/adm-zip-0.5.16.tgz", + "integrity": "sha512-TGw5yVi4saajsSEgz25grObGHEUaDrniwvA2qwSC060KfqGPdglhvPMA2lPIoxs3PQIItj2iag35fONcQqgUaQ==", "license": "MIT", "peer": true, - "dependencies": { - "ms": "2.1.2" - }, "engines": { - "node": ">=6.0" - }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } + "node": ">=12.0" } }, - "../../../service/node_modules/decamelize": { - "version": "1.2.0", + "node_modules/@ngageoint/mage.service/node_modules/agent-base": { + "version": "7.1.3", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.3.tgz", + "integrity": "sha512-jRR5wdylq8CkOe6hei19GGZnxM6rBGwFl3Bg0YItGDimvjGtAvdZk4Pu6Cl4u4Igsws4a1fd1Vq3ezrhn4KmFw==", + "extraneous": true, "license": "MIT", - "peer": true, "engines": { - "node": ">=0.10.0" + "node": ">= 14" } }, - "../../../service/node_modules/decamelize-keys": { - "version": "1.1.1", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/aggregate-error": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-4.0.1.tgz", + "integrity": "sha512-0poP0T7el6Vq3rstR8Mn4V/IQrpBLO6POkUSrN7RhyY+GF/InCFShQzsQ39T25gkHhLgSLByyAz+Kjb+c2L98w==", + "extraneous": true, "dependencies": { - "decamelize": "^1.1.0", - "map-obj": "^1.0.0" + "clean-stack": "^4.0.0", + "indent-string": "^5.0.0" }, "engines": { - "node": ">=0.10.0" + "node": ">=12" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "../../../service/node_modules/decamelize-keys/node_modules/map-obj": { - "version": "1.0.1", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "extraneous": true, "license": "MIT", - "peer": true, - "engines": { - "node": ">=0.10.0" + "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" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" } }, - "../../../service/node_modules/decode-uri-component": { - "version": "0.2.0", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/ansi-colors": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.3.tgz", + "integrity": "sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==", + "extraneous": true, "license": "MIT", - "peer": true, "engines": { - "node": ">=0.10" + "node": ">=6" } }, - "../../../service/node_modules/decompress-response": { - "version": "4.2.1", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/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==", + "optional": true, "peer": true, "dependencies": { - "mimic-response": "^2.0.0" + "type-fest": "^0.21.3" }, "engines": { "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "../../../service/node_modules/deep-eql": { - "version": "4.1.2", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/ansi-escapes/node_modules/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==", + "optional": true, "peer": true, - "dependencies": { - "type-detect": "^4.0.0" + "engines": { + "node": ">=10" }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "optional": true, + "peer": true, "engines": { - "node": ">=6" + "node": ">=8" } }, - "../../../service/node_modules/deep-equal": { - "version": "2.1.0", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "optional": true, "peer": true, "dependencies": { - "call-bind": "^1.0.2", - "es-get-iterator": "^1.1.2", - "get-intrinsic": "^1.1.3", - "is-arguments": "^1.1.1", - "is-date-object": "^1.0.5", - "is-regex": "^1.1.4", - "isarray": "^2.0.5", - "object-is": "^1.1.5", - "object-keys": "^1.1.1", - "object.assign": "^4.1.4", - "regexp.prototype.flags": "^1.4.3", - "side-channel": "^1.0.4", - "which-boxed-primitive": "^1.0.2", - "which-collection": "^1.0.1", - "which-typed-array": "^1.1.8" + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "../../../service/node_modules/deep-extend": { - "version": "0.6.0", - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/anymatch": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", + "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", + "extraneous": true, + "license": "ISC", + "dependencies": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + }, "engines": { - "node": ">=4.0.0" + "node": ">= 8" } }, - "../../../service/node_modules/deep-is": { - "version": "0.1.4", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/append-field": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/append-field/-/append-field-1.0.0.tgz", + "integrity": "sha512-klpgFSWLW1ZEs8svjfb7g4qWY0YS5imI82dTg+QahUvJ8YqAY0P10Uk8tTyh9ZGuYEZEMaeJYCF5BFuX552hsw==", "peer": true }, - "../../../service/node_modules/default-require-extensions": { - "version": "2.0.0", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/append-transform": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/append-transform/-/append-transform-1.0.0.tgz", + "integrity": "sha512-P009oYkeHyU742iSZJzZZywj4QRJdnTWffaKuJQLablCZ1uz6/cW4yaRgcDaoQ+uwOxxnt0gRUcwfsNP2ri0gw==", + "extraneous": true, "dependencies": { - "strip-bom": "^3.0.0" + "default-require-extensions": "^2.0.0" }, "engines": { "node": ">=4" } }, - "../../../service/node_modules/define-properties": { - "version": "1.1.4", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/archiver": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/archiver/-/archiver-5.3.2.tgz", + "integrity": "sha512-+25nxyyznAXF7Nef3y0EbBeqmGZgeN/BxHX29Rs39djAfaFalmQ89SE6CWyDCHzGL0yt/ycBtNOmGTW0FyGWNw==", "license": "MIT", "peer": true, "dependencies": { - "has-property-descriptors": "^1.0.0", - "object-keys": "^1.1.1" + "archiver-utils": "^2.1.0", + "async": "^3.2.4", + "buffer-crc32": "^0.2.1", + "readable-stream": "^3.6.0", + "readdir-glob": "^1.1.2", + "tar-stream": "^2.2.0", + "zip-stream": "^4.1.0" }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">= 10" } }, - "../../../service/node_modules/define-property": { - "version": "2.0.2", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/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==", "peer": true, "dependencies": { - "is-descriptor": "^1.0.2", - "isobject": "^3.0.1" + "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" }, "engines": { - "node": ">=0.10.0" + "node": ">= 6" } }, - "../../../service/node_modules/delayed-stream": { + "node_modules/@ngageoint/mage.service/node_modules/archiver-utils/node_modules/isarray": { "version": "1.0.0", - "license": "MIT", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/archiver-utils/node_modules/readable-stream": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", + "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", "peer": true, - "engines": { - "node": ">=0.4.0" + "dependencies": { + "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" } }, - "../../../service/node_modules/delegates": { - "version": "1.0.0", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/archiver-utils/node_modules/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==", "peer": true }, - "../../../service/node_modules/denque": { - "version": "2.1.0", - "license": "Apache-2.0", + "node_modules/@ngageoint/mage.service/node_modules/archiver-utils/node_modules/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==", "peer": true, - "engines": { - "node": ">=0.10" + "dependencies": { + "safe-buffer": "~5.1.0" } }, - "../../../service/node_modules/depd": { - "version": "1.1.2", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/archy": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/archy/-/archy-1.0.0.tgz", + "integrity": "sha512-Xg+9RwCg/0p32teKdGMPTPnVXKD0w3DfHnFTficozsAgsvq2XenPJq/MYpzzQ/v8zrOyJn6Ds39VA4JIDwFfqw==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", "peer": true, + "dependencies": { + "sprintf-js": "~1.0.2" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/array-buffer-byte-length": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.1.tgz", + "integrity": "sha512-ahC5W1xgou+KTXix4sAO8Ki12Q+jf4i0+tmk3sC+zgcynshkHxzpXdImBehiUYKKKDwvfFiJl1tZt6ewscS1Mg==", + "extraneous": true, + "dependencies": { + "call-bind": "^1.0.5", + "is-array-buffer": "^3.0.4" + }, "engines": { - "node": ">= 0.6" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "../../../service/node_modules/destroy": { - "version": "1.0.4", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/array-flatten": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", + "integrity": "sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==", "peer": true }, - "../../../service/node_modules/detect-libc": { - "version": "1.0.3", - "license": "Apache-2.0", - "peer": true, - "bin": { - "detect-libc": "bin/detect-libc.js" - }, + "node_modules/@ngageoint/mage.service/node_modules/array-from": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/array-from/-/array-from-2.1.1.tgz", + "integrity": "sha512-GQTc6Uupx1FCavi5mPzBvVT7nEOeWMmUA9P95wpfpW1XwMSKs+KaymD5C2Up7KAUKg/mYwbsUYzdZWcoajlNZg==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/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==", + "extraneous": true, + "license": "MIT", "engines": { - "node": ">=0.10" + "node": ">=8" } }, - "../../../service/node_modules/dezalgo": { + "node_modules/@ngageoint/mage.service/node_modules/arraybuffer.prototype.slice": { "version": "1.0.3", - "license": "ISC", - "peer": true, + "resolved": "https://registry.npmjs.org/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.3.tgz", + "integrity": "sha512-bMxMKAjg13EBSVscxTaYA4mRc5t1UAXa2kXiGTNfZ079HIWXEkKmkgFrh/nJqamaLSrXO5H4WFFkPEaLJWbs3A==", + "extraneous": true, "dependencies": { - "asap": "^2.0.0", - "wrappy": "1" + "array-buffer-byte-length": "^1.0.1", + "call-bind": "^1.0.5", + "define-properties": "^1.2.1", + "es-abstract": "^1.22.3", + "es-errors": "^1.2.1", + "get-intrinsic": "^1.2.3", + "is-array-buffer": "^3.0.4", + "is-shared-array-buffer": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "../../../service/node_modules/dicer": { - "version": "0.2.5", - "peer": true, - "dependencies": { - "readable-stream": "1.1.x", - "streamsearch": "0.1.2" - }, + "node_modules/@ngageoint/mage.service/node_modules/arrify": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/arrify/-/arrify-3.0.0.tgz", + "integrity": "sha512-tLkvA81vQG/XqE2mjDkGQHoOINtMHtysSnemrmoGe6PydDPMRbVugqyk4A6V/WDWEfm3l+0d8anA9r8cv/5Jaw==", + "extraneous": true, "engines": { - "node": ">=0.8.0" + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "../../../service/node_modules/dicer/node_modules/isarray": { - "version": "0.0.1", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/asap": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz", + "integrity": "sha512-BSHWgDSAiKs50o2Re8ppvp3seVHXSRM44cdSsT9FfNEUUZLOGWVCsiWaRPWM1Znn+mqZ1OfVZ3z3DWEzSp7hRA==", "peer": true }, - "../../../service/node_modules/dicer/node_modules/readable-stream": { - "version": "1.1.14", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/asn1": { + "version": "0.2.6", + "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.6.tgz", + "integrity": "sha512-ix/FxPn0MDjeyJ7i/yoHGFt/EX6LyNbxSEhPPXODPL+KB0VPk86UYfL0lMdy+KCnv+fmvIzySwaK5COwqVbWTQ==", "peer": true, "dependencies": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.1", - "isarray": "0.0.1", - "string_decoder": "~0.10.x" + "safer-buffer": "~2.1.0" } }, - "../../../service/node_modules/dicer/node_modules/streamsearch": { - "version": "0.1.2", + "node_modules/@ngageoint/mage.service/node_modules/assert-never": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/assert-never/-/assert-never-1.2.1.tgz", + "integrity": "sha512-TaTivMB6pYI1kXwrFlEhLeGfOqoDNdTxjCdwRfFFkEA30Eu+k48W34nlok2EYWJfFFzqaEmichdNM7th6M5HNw==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/assert-plus": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", + "integrity": "sha512-NfJ4UzBCcQGLDlQq7nHxH+tv3kyZ0hHQqF5BO6J7tNJeP5do1llPr8dZ8zHonfhAu0PHAdMkSo+8o0wxg9lZWw==", "peer": true, "engines": { - "node": ">=0.8.0" + "node": ">=0.8" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/assertion-error": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/assertion-error/-/assertion-error-1.1.0.tgz", + "integrity": "sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw==", + "extraneous": true, + "engines": { + "node": "*" } }, - "../../../service/node_modules/dicer/node_modules/string_decoder": { - "version": "0.10.31", + "node_modules/@ngageoint/mage.service/node_modules/async": { + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/async/-/async-3.2.6.tgz", + "integrity": "sha512-htCUDlxyyCLMgaM3xXg0C0LW2xqfuQ6p05pCEIsXuyQ+a1koYKTuBMzRNwmybfLgvJDMd0r1LTn4+E0Ti6C2AA==", "license": "MIT", "peer": true }, - "../../../service/node_modules/diff": { - "version": "3.5.0", - "dev": true, - "license": "BSD-3-Clause", - "peer": true, - "engines": { - "node": ">=0.3.1" - } + "node_modules/@ngageoint/mage.service/node_modules/async-lock": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/async-lock/-/async-lock-1.4.1.tgz", + "integrity": "sha512-Az2ZTpuytrtqENulXwO3GGv1Bztugx6TT37NIo7imr/Qo0gsYiGtSdBa2B6fsXhTpVZDNfu1Qn3pk531e3q+nQ==", + "peer": true }, - "../../../service/node_modules/dir-glob": { - "version": "2.2.2", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/async-mutex": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/async-mutex/-/async-mutex-0.4.1.tgz", + "integrity": "sha512-WfoBo4E/TbCX1G95XTjbWTE3X2XLG0m1Xbv2cwOtuPdyH9CZvnaA5nCt1ucjaKEgW2A5IF71hxrRhr83Je5xjA==", + "extraneous": true, "license": "MIT", - "peer": true, "dependencies": { - "path-type": "^3.0.0" - }, - "engines": { - "node": ">=4" + "tslib": "^2.4.0" } }, - "../../../service/node_modules/doctrine": { - "version": "3.0.0", - "dev": true, - "license": "Apache-2.0", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/available-typed-arrays": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.7.tgz", + "integrity": "sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==", + "extraneous": true, "dependencies": { - "esutils": "^2.0.2" + "possible-typed-array-names": "^1.0.0" }, "engines": { - "node": ">=6.0.0" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "../../../service/node_modules/doctypes": { - "version": "1.1.0", - "license": "MIT", - "peer": true + "node_modules/@ngageoint/mage.service/node_modules/aws-sign2": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", + "integrity": "sha512-08kcGqnYf/YmjoRhfxyu+CLxBjUtHLXLXX/vUfx9l2LYzG3c1m61nrpyFUZI6zeS+Li/wWMMidD9KgrqtGq3mA==", + "extraneous": true, + "engines": { + "node": "*" + } }, - "../../../service/node_modules/drange": { - "version": "1.1.1", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/aws4": { + "version": "1.13.0", + "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.13.0.tgz", + "integrity": "sha512-3AungXC4I8kKsS9PuS4JH2nc+0bVY/mjgrephHTIi8fpEeGsTHBUJeosp0Wc1myYMElmD0B3Oc4XL/HVJ4PV2g==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/axios": { + "version": "1.8.4", + "resolved": "https://registry.npmjs.org/axios/-/axios-1.8.4.tgz", + "integrity": "sha512-eBSYY4Y68NNlHbHBMdeDmKNtDgXWhQsJcGqzO3iLUM0GraQFSS9cVgPX5I9b3lbdFKyYoAEGAZF1DwhTaljNAw==", + "extraneous": true, "license": "MIT", + "dependencies": { + "follow-redirects": "^1.15.6", + "form-data": "^4.0.0", + "proxy-from-env": "^1.1.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/b4a": { + "version": "1.6.7", + "resolved": "https://registry.npmjs.org/b4a/-/b4a-1.6.7.tgz", + "integrity": "sha512-OnAYlL5b7LEkALw87fUVafQw5rVR9RjwGd4KUwNQ6DrrNmaVaUCgLipfVlzrPQ4tWOR9P0IXGNOx50jYCCdSJg==", + "extraneous": true, + "license": "Apache-2.0" + }, + "node_modules/@ngageoint/mage.service/node_modules/babel-walk": { + "version": "3.0.0-canary-5", + "resolved": "https://registry.npmjs.org/babel-walk/-/babel-walk-3.0.0-canary-5.tgz", + "integrity": "sha512-GAwkz0AihzY5bkwIY5QDR+LvsRQgB/B+1foMPvi0FZPMl5fjD7ICiznUiBdLYMH1QYe6vqu4gWYytZOccLouFw==", "peer": true, + "dependencies": { + "@babel/types": "^7.9.6" + }, "engines": { - "node": ">=4" + "node": ">= 10.0.0" } }, - "../../../service/node_modules/dtrace-provider": { - "version": "0.8.8", - "hasInstallScript": true, - "license": "BSD-2-Clause", - "optional": true, + "node_modules/@ngageoint/mage.service/node_modules/backoff": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/backoff/-/backoff-2.5.0.tgz", + "integrity": "sha512-wC5ihrnUXmR2douXmXLCe5O3zg3GKIyvRi/hi58a/XyRxVI+3/yM0PYueQOZXPXQ9pxBislYkw+sF9b7C/RuMA==", "peer": true, "dependencies": { - "nan": "^2.14.0" + "precond": "0.2" }, "engines": { - "node": ">=0.10" + "node": ">= 0.6" } }, - "../../../service/node_modules/duplexer": { - "version": "0.1.2", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", "peer": true }, - "../../../service/node_modules/ecc-jsbn": { - "version": "0.1.2", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "jsbn": "~0.1.0", - "safer-buffer": "^2.1.0" - } + "node_modules/@ngageoint/mage.service/node_modules/bare-events": { + "version": "2.5.4", + "resolved": "https://registry.npmjs.org/bare-events/-/bare-events-2.5.4.tgz", + "integrity": "sha512-+gFfDkR8pj4/TrWCGUGWmJIkBwuxPS5F+a5yWjOHQt2hHvNZd5YLzadjmDUtFmMM4y429bnKLa8bYBMHcYdnQA==", + "extraneous": true, + "license": "Apache-2.0" }, - "../../../service/node_modules/ecdsa-sig-formatter": { - "version": "1.0.11", - "license": "Apache-2.0", - "peer": true, - "dependencies": { - "safe-buffer": "^5.0.1" - } + "node_modules/@ngageoint/mage.service/node_modules/base-64": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/base-64/-/base-64-1.0.0.tgz", + "integrity": "sha512-kwDPIFCGx0NZHog36dj+tHiwP4QMzsZ3AgMViUBKI0+V5n4U0ufTCUMhnQ04diaRI8EX/QcPfql7zlhZ7j4zgg==", + "peer": true }, - "../../../service/node_modules/ee-first": { - "version": "1.1.1", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/base64-js": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", + "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], "peer": true }, - "../../../service/node_modules/elliptic": { - "version": "6.5.4", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/base64url": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/base64url/-/base64url-3.0.1.tgz", + "integrity": "sha512-ir1UPr3dkwexU7FdV8qBBbNDRUhMmIekYMFZfi+C/sLNnRESKPl23nB9b2pltqfOQNnGzsDdId90AEtG5tCx4A==", "peer": true, - "dependencies": { - "bn.js": "^4.11.9", - "brorand": "^1.1.0", - "hash.js": "^1.0.0", - "hmac-drbg": "^1.0.1", - "inherits": "^2.0.4", - "minimalistic-assert": "^1.0.1", - "minimalistic-crypto-utils": "^1.0.1" + "engines": { + "node": ">=6.0.0" } }, - "../../../service/node_modules/elliptic/node_modules/bn.js": { - "version": "4.12.0", - "license": "MIT", - "peer": true + "node_modules/@ngageoint/mage.service/node_modules/bcrypt-pbkdf": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", + "integrity": "sha512-qeFIXtP4MSoi6NLqO12WfqARWWuCKi2Rn/9hJLEmtB5yTNr9DqFWkJRCf2qShWzPeAMRnOgCrq0sg/KLv5ES9w==", + "extraneous": true, + "dependencies": { + "tweetnacl": "^0.14.3" + } }, - "../../../service/node_modules/emoji-regex": { - "version": "8.0.0", - "devOptional": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/bcryptjs": { + "version": "2.4.3", + "resolved": "https://registry.npmjs.org/bcryptjs/-/bcryptjs-2.4.3.tgz", + "integrity": "sha512-V/Hy/X9Vt7f3BbPJEi8BdVFMByHi+jNXrYkW3huaybV/kQ0KJg0Y6PkEMbn+zeT+i+SiKZ/HMqJGIIt4LZDqNQ==", "peer": true }, - "../../../service/node_modules/encodeurl": { - "version": "1.0.2", + "node_modules/@ngageoint/mage.service/node_modules/binary-extensions": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.3.0.tgz", + "integrity": "sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==", + "extraneous": true, "license": "MIT", - "peer": true, "engines": { - "node": ">= 0.8" + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "../../../service/node_modules/end-of-stream": { - "version": "1.4.4", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/bindings": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/bindings/-/bindings-1.5.0.tgz", + "integrity": "sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==", + "optional": true, "peer": true, "dependencies": { - "once": "^1.4.0" + "file-uri-to-path": "1.0.0" } }, - "../../../service/node_modules/error-ex": { - "version": "1.3.2", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/bl": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz", + "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==", "peer": true, "dependencies": { - "is-arrayish": "^0.2.1" + "buffer": "^5.5.0", + "inherits": "^2.0.4", + "readable-stream": "^3.4.0" } }, - "../../../service/node_modules/es-abstract": { - "version": "1.20.4", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/bluebird": { + "version": "3.7.2", + "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz", + "integrity": "sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/body-parser": { + "version": "1.20.3", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.3.tgz", + "integrity": "sha512-7rAxByjUMqQ3/bHJy7D6OGXvx/MMc4IqBn/X0fcM1QUcAItpZrBEYhWGem+tzXH90c+G01ypMcYJBO9Y30203g==", "license": "MIT", "peer": true, "dependencies": { - "call-bind": "^1.0.2", - "es-to-primitive": "^1.2.1", - "function-bind": "^1.1.1", - "function.prototype.name": "^1.1.5", - "get-intrinsic": "^1.1.3", - "get-symbol-description": "^1.0.0", - "has": "^1.0.3", - "has-property-descriptors": "^1.0.0", - "has-symbols": "^1.0.3", - "internal-slot": "^1.0.3", - "is-callable": "^1.2.7", - "is-negative-zero": "^2.0.2", - "is-regex": "^1.1.4", - "is-shared-array-buffer": "^1.0.2", - "is-string": "^1.0.7", - "is-weakref": "^1.0.2", - "object-inspect": "^1.12.2", - "object-keys": "^1.1.1", - "object.assign": "^4.1.4", - "regexp.prototype.flags": "^1.4.3", - "safe-regex-test": "^1.0.0", - "string.prototype.trimend": "^1.0.5", - "string.prototype.trimstart": "^1.0.5", - "unbox-primitive": "^1.0.2" + "bytes": "3.1.2", + "content-type": "~1.0.5", + "debug": "2.6.9", + "depd": "2.0.0", + "destroy": "1.2.0", + "http-errors": "2.0.0", + "iconv-lite": "0.4.24", + "on-finished": "2.4.1", + "qs": "6.13.0", + "raw-body": "2.5.2", + "type-is": "~1.6.18", + "unpipe": "1.0.0" }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">= 0.8", + "npm": "1.2.8000 || >= 1.4.16" } }, - "../../../service/node_modules/es-array-method-boxes-properly": { - "version": "1.0.0", - "dev": true, - "license": "MIT", - "peer": true - }, - "../../../service/node_modules/es-get-iterator": { - "version": "1.1.2", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/body-parser/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", "peer": true, "dependencies": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.1.0", - "has-symbols": "^1.0.1", - "is-arguments": "^1.1.0", - "is-map": "^2.0.2", - "is-set": "^2.0.2", - "is-string": "^1.0.5", - "isarray": "^2.0.5" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "ms": "2.0.0" } }, - "../../../service/node_modules/es-to-primitive": { - "version": "1.2.1", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/body-parser/node_modules/iconv-lite": { + "version": "0.4.24", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", + "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", "peer": true, "dependencies": { - "is-callable": "^1.1.4", - "is-date-object": "^1.0.1", - "is-symbol": "^1.0.2" + "safer-buffer": ">= 2.1.2 < 3" }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=0.10.0" } }, - "../../../service/node_modules/es6-error": { - "version": "4.1.1", - "dev": true, - "license": "MIT", - "peer": true - }, - "../../../service/node_modules/es6-object-assign": { - "version": "1.1.0", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/body-parser/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", "peer": true }, - "../../../service/node_modules/escape-html": { - "version": "1.0.3", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/bowser": { + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/bowser/-/bowser-2.11.0.tgz", + "integrity": "sha512-AlcaJBi/pqqJBIQ8U9Mcpc9i8Aqxn88Skv5d+xBX006BY5u8N3mGLHa5Lgppa7L/HfwgwLgZ6NYs+Ag6uUmJRA==", + "optional": true, "peer": true }, - "../../../service/node_modules/escape-string-regexp": { - "version": "1.0.5", - "devOptional": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", "peer": true, - "engines": { - "node": ">=0.8.0" + "dependencies": { + "balanced-match": "^1.0.0" } }, - "../../../service/node_modules/eslint": { - "version": "6.8.0", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/braces": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", + "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", + "extraneous": true, "dependencies": { - "@babel/code-frame": "^7.0.0", - "ajv": "^6.10.0", - "chalk": "^2.1.0", - "cross-spawn": "^6.0.5", - "debug": "^4.0.1", - "doctrine": "^3.0.0", - "eslint-scope": "^5.0.0", - "eslint-utils": "^1.4.3", - "eslint-visitor-keys": "^1.1.0", - "espree": "^6.1.2", - "esquery": "^1.0.1", - "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.3.0", - "lodash": "^4.17.14", - "minimatch": "^3.0.4", - "mkdirp": "^0.5.1", - "natural-compare": "^1.4.0", - "optionator": "^0.8.3", - "progress": "^2.0.0", - "regexpp": "^2.0.1", - "semver": "^6.1.2", - "strip-ansi": "^5.2.0", - "strip-json-comments": "^3.0.1", - "table": "^5.2.3", - "text-table": "^0.2.0", - "v8-compile-cache": "^2.0.3" - }, - "bin": { - "eslint": "bin/eslint.js" + "fill-range": "^7.1.1" }, "engines": { - "node": "^8.10.0 || ^10.13.0 || >=11.10.1" - }, - "funding": { - "url": "https://opencollective.com/eslint" + "node": ">=8" } }, - "../../../service/node_modules/eslint-config-prettier": { - "version": "6.15.0", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/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==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/bson": { + "version": "4.7.2", + "resolved": "https://registry.npmjs.org/bson/-/bson-4.7.2.tgz", + "integrity": "sha512-Ry9wCtIZ5kGqkJoi6aD8KjxFZEx78guTQDnpXWiNthsxzrxAK/i8E6pCHAIZTbaEFWcOCvbecMukfK7XUvyLpQ==", "peer": true, "dependencies": { - "get-stdin": "^6.0.0" - }, - "bin": { - "eslint-config-prettier-check": "bin/cli.js" + "buffer": "^5.6.0" }, - "peerDependencies": { - "eslint": ">=3.14.1" + "engines": { + "node": ">=6.9.0" } }, - "../../../service/node_modules/eslint-plugin-prettier": { - "version": "3.4.1", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/buffer": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", + "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], "peer": true, "dependencies": { - "prettier-linter-helpers": "^1.0.0" - }, + "base64-js": "^1.3.1", + "ieee754": "^1.1.13" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/buffer-crc32": { + "version": "0.2.13", + "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", + "integrity": "sha512-VO9Ht/+p3SN7SKWqcrgEzjGbRSJYTx+Q1pTQC0wrWqHx0vpJraQ6GtHx8tvcg1rlK1byhU5gccxgOgj7B0TDkQ==", + "peer": true, "engines": { - "node": ">=6.0.0" - }, - "peerDependencies": { - "eslint": ">=5.0.0", - "prettier": ">=1.13.0" - }, - "peerDependenciesMeta": { - "eslint-config-prettier": { - "optional": true - } + "node": "*" } }, - "../../../service/node_modules/eslint-scope": { - "version": "5.1.1", - "dev": true, - "license": "BSD-2-Clause", + "node_modules/@ngageoint/mage.service/node_modules/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": "sha512-zRpUiDwd/xk6ADqPMATG8vc9VPrkck7T07OIx0gnjmJAnHnTVXNQG3vfvWNuiZIkwu9KrKdA1iJKfsfTVxE6NA==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/buffer-from": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", + "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/busboy": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/busboy/-/busboy-1.6.0.tgz", + "integrity": "sha512-8SFQbg/0hQ9xy3UNTB0YEnsNBbWfhf7RtnzpL7TkBiTBRfrQ9Fxcnz7VJsleJpyp6rVLvXiuORqjlHi5q+PYuA==", "peer": true, "dependencies": { - "esrecurse": "^4.3.0", - "estraverse": "^4.1.1" + "streamsearch": "^1.1.0" }, "engines": { - "node": ">=8.0.0" + "node": ">=10.16.0" } }, - "../../../service/node_modules/eslint-utils": { - "version": "1.4.3", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/bytes": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", + "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", "license": "MIT", "peer": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/caching-transform": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/caching-transform/-/caching-transform-3.0.2.tgz", + "integrity": "sha512-Mtgcv3lh3U0zRii/6qVgQODdPA4G3zhG+jtbCWj39RXuUFTMzH0vcdMtaJS1jPowd+It2Pqr6y3NJMQqOqCE2w==", + "extraneous": true, "dependencies": { - "eslint-visitor-keys": "^1.1.0" + "hasha": "^3.0.0", + "make-dir": "^2.0.0", + "package-hash": "^3.0.0", + "write-file-atomic": "^2.4.2" }, "engines": { "node": ">=6" } }, - "../../../service/node_modules/eslint-visitor-keys": { - "version": "1.3.0", - "dev": true, - "license": "Apache-2.0", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/caching-transform/node_modules/make-dir": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", + "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", + "extraneous": true, + "dependencies": { + "pify": "^4.0.1", + "semver": "^5.6.0" + }, "engines": { - "node": ">=4" + "node": ">=6" } }, - "../../../service/node_modules/eslint/node_modules/ansi-regex": { - "version": "5.0.1", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/caching-transform/node_modules/pify": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", + "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", + "extraneous": true, "engines": { - "node": ">=8" + "node": ">=6" } }, - "../../../service/node_modules/eslint/node_modules/ansi-styles": { - "version": "3.2.1", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/caching-transform/node_modules/semver": { + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", + "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", + "extraneous": true, + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/call-bind": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.7.tgz", + "integrity": "sha512-GHTSNSYICQ7scH7sZ+M2rFopRoLh8t2bLSW6BbgrtLsahOIB5iyAVJf9GjWK3cYTDaMj4XdBpM1cA6pIS0Kv2w==", "peer": true, "dependencies": { - "color-convert": "^1.9.0" + "es-define-property": "^1.0.0", + "es-errors": "^1.3.0", + "function-bind": "^1.1.2", + "get-intrinsic": "^1.2.4", + "set-function-length": "^1.2.1" }, "engines": { - "node": ">=4" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "../../../service/node_modules/eslint/node_modules/chalk": { - "version": "2.4.2", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/call-bind-apply-helpers": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.2.tgz", + "integrity": "sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==", "license": "MIT", "peer": true, "dependencies": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" + "es-errors": "^1.3.0", + "function-bind": "^1.1.2" }, "engines": { - "node": ">=4" + "node": ">= 0.4" } }, - "../../../service/node_modules/eslint/node_modules/color-convert": { - "version": "1.9.3", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/call-bound": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/call-bound/-/call-bound-1.0.4.tgz", + "integrity": "sha512-+ys997U96po4Kx/ABpBCqhA9EuxJaQWDQg7295H4hBphv3IZg0boBKuwYpt4YXp6MZ5AmZQnU/tyMTlRpaSejg==", "license": "MIT", "peer": true, "dependencies": { - "color-name": "1.1.3" + "call-bind-apply-helpers": "^1.0.2", + "get-intrinsic": "^1.3.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "../../../service/node_modules/eslint/node_modules/color-name": { - "version": "1.1.3", - "dev": true, - "license": "MIT", - "peer": true - }, - "../../../service/node_modules/eslint/node_modules/esprima": { - "version": "4.0.1", - "dev": true, - "license": "BSD-2-Clause", - "peer": true, - "bin": { - "esparse": "bin/esparse.js", - "esvalidate": "bin/esvalidate.js" - }, + "node_modules/@ngageoint/mage.service/node_modules/callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "extraneous": true, "engines": { - "node": ">=4" + "node": ">=6" } }, - "../../../service/node_modules/eslint/node_modules/has-flag": { - "version": "3.0.0", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/camelcase": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", + "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", + "extraneous": true, "engines": { - "node": ">=4" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "../../../service/node_modules/eslint/node_modules/inquirer": { - "version": "7.3.3", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/caseless": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", + "integrity": "sha512-4tYFyifaFfGacoiObjJegolkwSU4xQNGbVgUiNYVUxbQ2x2lUsFvY4hVgVzGiIe6WLOPqycWXA40l+PWsxthUw==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/cfenv": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/cfenv/-/cfenv-1.2.4.tgz", + "integrity": "sha512-jWQ+3UXZauYyOXwHpMm74C0wM7+LDQmgMxWBGchg4as7+YyTL0pyx/CZ3dEvJyZVOB4SgKATc5naJky6cd9zYw==", + "license": "Apache-2.0", "peer": true, "dependencies": { - "ansi-escapes": "^4.2.1", - "chalk": "^4.1.0", - "cli-cursor": "^3.1.0", - "cli-width": "^3.0.0", - "external-editor": "^3.0.3", - "figures": "^3.0.0", - "lodash": "^4.17.19", - "mute-stream": "0.0.8", - "run-async": "^2.4.0", - "rxjs": "^6.6.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0", - "through": "^2.3.6" - }, - "engines": { - "node": ">=8.0.0" + "js-yaml": "4.0.x", + "ports": "1.1.x", + "underscore": "1.12.x" } }, - "../../../service/node_modules/eslint/node_modules/inquirer/node_modules/ansi-styles": { - "version": "4.3.0", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/chai": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/chai/-/chai-4.5.0.tgz", + "integrity": "sha512-RITGBfijLkBddZvnn8jdqoTypxvqbOLYQkGGxXzeFjVHvudaPw0HNFD9x928/eUwYWd2dPCugVqspGALTZZQKw==", + "extraneous": true, "license": "MIT", - "peer": true, "dependencies": { - "color-convert": "^2.0.1" + "assertion-error": "^1.1.0", + "check-error": "^1.0.3", + "deep-eql": "^4.1.3", + "get-func-name": "^2.0.2", + "loupe": "^2.3.6", + "pathval": "^1.1.1", + "type-detect": "^4.1.0" }, "engines": { - "node": ">=8" + "node": ">=4" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/chai-as-promised": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/chai-as-promised/-/chai-as-promised-7.1.2.tgz", + "integrity": "sha512-aBDHZxRzYnUYuIAIPBH2s511DjlKPzXNlXSGFC8CwmroWQLfrW0LtE1nK3MAwwNhJPa9raEjNCmRoFpG0Hurdw==", + "extraneous": true, + "license": "WTFPL", + "dependencies": { + "check-error": "^1.0.2" }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" + "peerDependencies": { + "chai": ">= 2.1.2 < 6" } }, - "../../../service/node_modules/eslint/node_modules/inquirer/node_modules/chalk": { - "version": "4.1.2", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/chai/node_modules/type-detect": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.1.0.tgz", + "integrity": "sha512-Acylog8/luQ8L7il+geoSxhEkazvkslg7PSNKOX59mbB9cOveP5aq9h74Y7YU8yDpJwetzQQrfIwtf4Wp4LKcw==", + "extraneous": true, "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/chalk": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.1.tgz", + "integrity": "sha512-diHzdDKxcU+bAsUboHLPEDQiw0qEe0qd7SYUn3HgcFlWgbDcfLGswOHYeGrHKzG9z6UYf01d9VFMfZxPM1xZSg==", + "optional": true, "peer": true, "dependencies": { "ansi-styles": "^4.1.0", @@ -4901,1618 +5365,2049 @@ "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "../../../service/node_modules/eslint/node_modules/inquirer/node_modules/color-convert": { - "version": "2.0.1", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/character-parser": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/character-parser/-/character-parser-2.2.0.tgz", + "integrity": "sha512-+UqJQjFEFaTAs3bNsF2j2kEN1baG/zghZbdqoYEDxGZtJo9LBzl1A+m0D4n3qKx8N2FNv8/Xp6yV9mQmBuptaw==", "peer": true, "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" + "is-regex": "^1.0.3" } }, - "../../../service/node_modules/eslint/node_modules/inquirer/node_modules/color-name": { - "version": "1.1.4", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/chardet": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz", + "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==", + "optional": true, "peer": true }, - "../../../service/node_modules/eslint/node_modules/inquirer/node_modules/has-flag": { - "version": "4.0.0", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/check-error": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/check-error/-/check-error-1.0.3.tgz", + "integrity": "sha512-iKEoDYaRmd1mxM90a2OEfWhjsjPpYPuQ+lMYsoxB126+t8fw7ySEO48nmDg5COTjxDI65/Y2OWpeEHk3ZOe8zg==", + "extraneous": true, + "dependencies": { + "get-func-name": "^2.0.2" + }, "engines": { - "node": ">=8" + "node": "*" } }, - "../../../service/node_modules/eslint/node_modules/inquirer/node_modules/strip-ansi": { - "version": "6.0.1", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/chokidar": { + "version": "3.5.3", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", + "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", + "extraneous": true, + "funding": [ + { + "type": "individual", + "url": "https://paulmillr.com/funding/" + } + ], "license": "MIT", - "peer": true, "dependencies": { - "ansi-regex": "^5.0.1" + "anymatch": "~3.1.2", + "braces": "~3.0.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" }, "engines": { - "node": ">=8" + "node": ">= 8.10.0" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" } }, - "../../../service/node_modules/eslint/node_modules/inquirer/node_modules/supports-color": { - "version": "7.2.0", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/chokidar/node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "extraneous": true, + "license": "ISC", "dependencies": { - "has-flag": "^4.0.0" + "is-glob": "^4.0.1" }, "engines": { - "node": ">=8" + "node": ">= 6" } }, - "../../../service/node_modules/eslint/node_modules/js-yaml": { - "version": "3.14.1", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/chownr": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz", + "integrity": "sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==", + "optional": true, + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/clean-stack": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-4.2.0.tgz", + "integrity": "sha512-LYv6XPxoyODi36Dp976riBtSY27VmFo+MKqEU9QCCWyTrdEPDog+RWA7xQWHi6Vbp61j5c4cdzzX1NidnwtUWg==", + "extraneous": true, "dependencies": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" + "escape-string-regexp": "5.0.0" }, - "bin": { - "js-yaml": "bin/js-yaml.js" + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "../../../service/node_modules/eslint/node_modules/regexpp": { - "version": "2.0.1", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/clean-stack/node_modules/escape-string-regexp": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz", + "integrity": "sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==", + "extraneous": true, "engines": { - "node": ">=6.5.0" + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "../../../service/node_modules/eslint/node_modules/supports-color": { - "version": "5.5.0", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/cli-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz", + "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", + "optional": true, "peer": true, "dependencies": { - "has-flag": "^3.0.0" + "restore-cursor": "^3.1.0" }, "engines": { - "node": ">=4" + "node": ">=8" } }, - "../../../service/node_modules/espree": { - "version": "6.2.1", - "dev": true, - "license": "BSD-2-Clause", + "node_modules/@ngageoint/mage.service/node_modules/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==", + "optional": true, "peer": true, - "dependencies": { - "acorn": "^7.1.1", - "acorn-jsx": "^5.2.0", - "eslint-visitor-keys": "^1.1.0" - }, "engines": { - "node": ">=6.0.0" + "node": ">= 10" } }, - "../../../service/node_modules/espree/node_modules/acorn": { - "version": "7.4.1", - "dev": true, - "license": "MIT", - "peer": true, - "bin": { - "acorn": "bin/acorn" - }, - "engines": { - "node": ">=0.4.0" + "node_modules/@ngageoint/mage.service/node_modules/cliui": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", + "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", + "extraneous": true, + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^7.0.0" } }, - "../../../service/node_modules/esprima": { - "version": "2.7.3", - "license": "BSD-2-Clause", + "node_modules/@ngageoint/mage.service/node_modules/coffeescript": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/coffeescript/-/coffeescript-2.7.0.tgz", + "integrity": "sha512-hzWp6TUE2d/jCcN67LrW1eh5b/rSDKQK6oD6VMLlggYVUUFexgTH9z3dNYihzX4RMhze5FTUsUmOXViJKFQR/A==", "peer": true, "bin": { - "esparse": "bin/esparse.js", - "esvalidate": "bin/esvalidate.js" + "cake": "bin/cake", + "coffee": "bin/coffee" }, "engines": { - "node": ">=0.10.0" + "node": ">=6" } }, - "../../../service/node_modules/esquery": { - "version": "1.4.0", - "dev": true, - "license": "BSD-3-Clause", + "node_modules/@ngageoint/mage.service/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "optional": true, "peer": true, "dependencies": { - "estraverse": "^5.1.0" + "color-name": "~1.1.4" }, "engines": { - "node": ">=0.10" + "node": ">=7.0.0" } }, - "../../../service/node_modules/esquery/node_modules/estraverse": { - "version": "5.3.0", - "dev": true, - "license": "BSD-2-Clause", + "node_modules/@ngageoint/mage.service/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "optional": true, + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/colors": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/colors/-/colors-1.0.3.tgz", + "integrity": "sha512-pFGrxThWcWQ2MsAz6RtgeWe4NK2kUE1WfsrvvlctdII745EW9I0yflqhe7++M5LEc7bV2c/9/5zc8sFcpL0Drw==", "peer": true, "engines": { - "node": ">=4.0" + "node": ">=0.1.90" } }, - "../../../service/node_modules/esrecurse": { - "version": "4.3.0", - "dev": true, - "license": "BSD-2-Clause", + "node_modules/@ngageoint/mage.service/node_modules/combined-stream": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", + "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", "peer": true, "dependencies": { - "estraverse": "^5.2.0" + "delayed-stream": "~1.0.0" }, "engines": { - "node": ">=4.0" + "node": ">= 0.8" } }, - "../../../service/node_modules/esrecurse/node_modules/estraverse": { - "version": "5.3.0", - "dev": true, - "license": "BSD-2-Clause", + "node_modules/@ngageoint/mage.service/node_modules/commander": { + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-8.3.0.tgz", + "integrity": "sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww==", + "license": "MIT", "peer": true, "engines": { - "node": ">=4.0" + "node": ">= 12" } }, - "../../../service/node_modules/estraverse": { - "version": "4.3.0", - "dev": true, - "license": "BSD-2-Clause", - "peer": true, - "engines": { - "node": ">=4.0" - } + "node_modules/@ngageoint/mage.service/node_modules/commondir": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", + "integrity": "sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==", + "extraneous": true }, - "../../../service/node_modules/esutils": { - "version": "2.0.3", - "license": "BSD-2-Clause", + "node_modules/@ngageoint/mage.service/node_modules/component-emitter": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.1.tgz", + "integrity": "sha512-T0+barUSQRTUQASh8bx02dl+DhF54GtIDY13Y3m9oWTklKbb3Wv974meRpeZ3lp1JpLVECWWNHC4vaG2XHXouQ==", "peer": true, - "engines": { - "node": ">=0.10.0" + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "../../../service/node_modules/etag": { - "version": "1.8.1", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/compress-commons": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/compress-commons/-/compress-commons-4.1.2.tgz", + "integrity": "sha512-D3uMHtGc/fcO1Gt1/L7i1e33VOvD4A9hfQLP+6ewd+BvG/gQ84Yh4oftEhAdjSMgBgwGL+jsppT7JYNpo6MHHg==", "peer": true, + "dependencies": { + "buffer-crc32": "^0.2.13", + "crc32-stream": "^4.0.2", + "normalize-path": "^3.0.0", + "readable-stream": "^3.6.0" + }, "engines": { - "node": ">= 0.6" + "node": ">= 10" } }, - "../../../service/node_modules/event-stream": { - "version": "4.0.1", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/concat-stream": { + "version": "1.6.2", + "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz", + "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==", + "engines": [ + "node >= 0.8" + ], "peer": true, "dependencies": { - "duplexer": "^0.1.1", - "from": "^0.1.7", - "map-stream": "0.0.7", - "pause-stream": "^0.0.11", - "split": "^1.0.1", - "stream-combiner": "^0.2.2", - "through": "^2.3.8" + "buffer-from": "^1.0.0", + "inherits": "^2.0.3", + "readable-stream": "^2.2.2", + "typedarray": "^0.0.6" } }, - "../../../service/node_modules/evp_bytestokey": { - "version": "1.0.3", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/concat-stream/node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/concat-stream/node_modules/readable-stream": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", + "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", "peer": true, "dependencies": { - "md5.js": "^1.3.4", - "safe-buffer": "^5.1.1" + "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" } }, - "../../../service/node_modules/expand-brackets": { - "version": "2.1.4", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/concat-stream/node_modules/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==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/concat-stream/node_modules/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==", "peer": true, "dependencies": { - "debug": "^2.3.3", - "define-property": "^0.2.5", - "extend-shallow": "^2.0.1", - "posix-character-classes": "^0.1.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.1" - }, - "engines": { - "node": ">=0.10.0" + "safe-buffer": "~5.1.0" } }, - "../../../service/node_modules/expand-brackets/node_modules/debug": { - "version": "2.6.9", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/constantinople": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/constantinople/-/constantinople-4.0.1.tgz", + "integrity": "sha512-vCrqcSIq4//Gx74TXXCGnHpulY1dskqLTFGDmhrGxzeXL8lF8kvXv6mpNWlJj1uD4DW23D4ljAqbY4RRaaUZIw==", "peer": true, "dependencies": { - "ms": "2.0.0" + "@babel/parser": "^7.6.0", + "@babel/types": "^7.6.1" } }, - "../../../service/node_modules/expand-brackets/node_modules/define-property": { - "version": "0.2.5", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/content-disposition": { + "version": "0.5.4", + "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz", + "integrity": "sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==", "peer": true, "dependencies": { - "is-descriptor": "^0.1.0" + "safe-buffer": "5.2.1" }, "engines": { - "node": ">=0.10.0" + "node": ">= 0.6" } }, - "../../../service/node_modules/expand-brackets/node_modules/extend-shallow": { - "version": "2.0.1", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/content-type": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.5.tgz", + "integrity": "sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==", "peer": true, - "dependencies": { - "is-extendable": "^0.1.0" - }, "engines": { - "node": ">=0.10.0" + "node": ">= 0.6" } }, - "../../../service/node_modules/expand-brackets/node_modules/is-accessor-descriptor": { - "version": "0.1.6", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/convert-source-map": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.9.0.tgz", + "integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/cookie": { + "version": "0.7.1", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.7.1.tgz", + "integrity": "sha512-6DnInpx7SJ2AK3+CTUE/ZM0vWTUboZCegxhC2xiIydHR9jNuTAASBrfEpHhiGOZw/nX51bHt6YQl8jsGo4y/0w==", "license": "MIT", "peer": true, - "dependencies": { - "kind-of": "^3.0.2" - }, "engines": { - "node": ">=0.10.0" + "node": ">= 0.6" } }, - "../../../service/node_modules/expand-brackets/node_modules/is-accessor-descriptor/node_modules/kind-of": { - "version": "3.2.2", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/cookie-signature": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", + "integrity": "sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/cookiejar": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/cookiejar/-/cookiejar-2.1.4.tgz", + "integrity": "sha512-LDx6oHrK+PhzLKJU9j5S7/Y3jM/mUHvD/DeI1WQmJn652iPC5Y4TBzC9l+5OMOXlyTTA+SmVUPm0HQUwpD5Jqw==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/core-util-is": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", + "integrity": "sha512-3lqz5YjWTYnW6dlDa5TLaTCcShfar1e40rmcJVwCBJC6mWlFuj0eCHIElmG1g5kyuJ/GD+8Wn4FFCcz4gJPfaQ==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/coveralls": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/coveralls/-/coveralls-3.1.1.tgz", + "integrity": "sha512-+dxnG2NHncSD1NrqbSM3dn/lE57O6Qf/koe9+I7c+wzkqRmEvcp0kgJdxKInzYzkICKkFMZsX3Vct3++tsF9ww==", + "extraneous": true, + "license": "BSD-2-Clause", "dependencies": { - "is-buffer": "^1.1.5" + "js-yaml": "^3.13.1", + "lcov-parse": "^1.0.0", + "log-driver": "^1.2.7", + "minimist": "^1.2.5", + "request": "^2.88.2" + }, + "bin": { + "coveralls": "bin/coveralls.js" }, "engines": { - "node": ">=0.10.0" + "node": ">=6" } }, - "../../../service/node_modules/expand-brackets/node_modules/is-buffer": { - "version": "1.1.6", - "dev": true, - "license": "MIT", - "peer": true + "node_modules/@ngageoint/mage.service/node_modules/coveralls/node_modules/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==", + "extraneous": true, + "dependencies": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } }, - "../../../service/node_modules/expand-brackets/node_modules/is-data-descriptor": { - "version": "0.1.4", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/cp-file": { + "version": "10.0.0", + "resolved": "https://registry.npmjs.org/cp-file/-/cp-file-10.0.0.tgz", + "integrity": "sha512-vy2Vi1r2epK5WqxOLnskeKeZkdZvTKfFZQCplE3XWsP+SUJyd5XAUFC9lFgTjjXJF2GMne/UML14iEmkAaDfFg==", + "extraneous": true, "dependencies": { - "kind-of": "^3.0.2" + "graceful-fs": "^4.2.10", + "nested-error-stacks": "^2.1.1", + "p-event": "^5.0.1" }, "engines": { - "node": ">=0.10.0" + "node": ">=14.16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "../../../service/node_modules/expand-brackets/node_modules/is-data-descriptor/node_modules/kind-of": { - "version": "3.2.2", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/cpy": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/cpy/-/cpy-10.1.0.tgz", + "integrity": "sha512-VC2Gs20JcTyeQob6UViBLnyP0bYHkBh6EiKzot9vi2DmeGlFT9Wd7VG3NBrkNx/jYvFBeyDOMMHdHQhbtKLgHQ==", + "extraneous": true, "dependencies": { - "is-buffer": "^1.1.5" + "arrify": "^3.0.0", + "cp-file": "^10.0.0", + "globby": "^13.1.4", + "junk": "^4.0.1", + "micromatch": "^4.0.5", + "nested-error-stacks": "^2.1.1", + "p-filter": "^3.0.0", + "p-map": "^6.0.0" }, "engines": { - "node": ">=0.10.0" + "node": ">=16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "../../../service/node_modules/expand-brackets/node_modules/is-descriptor": { - "version": "0.1.6", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/cpy-cli": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/cpy-cli/-/cpy-cli-5.0.0.tgz", + "integrity": "sha512-fb+DZYbL9KHc0BC4NYqGRrDIJZPXUmjjtqdw4XRRg8iV8dIfghUX/WiL+q4/B/KFTy3sK6jsbUhBaz0/Hxg7IQ==", + "extraneous": true, "dependencies": { - "is-accessor-descriptor": "^0.1.6", - "is-data-descriptor": "^0.1.4", - "kind-of": "^5.0.0" + "cpy": "^10.1.0", + "meow": "^12.0.1" + }, + "bin": { + "cpy": "cli.js" }, "engines": { - "node": ">=0.10.0" + "node": ">=16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "../../../service/node_modules/expand-brackets/node_modules/is-extendable": { - "version": "0.1.1", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/cpy/node_modules/globby": { + "version": "13.2.2", + "resolved": "https://registry.npmjs.org/globby/-/globby-13.2.2.tgz", + "integrity": "sha512-Y1zNGV+pzQdh7H39l9zgB4PJqjRNqydvdYCDG4HFXM4XuvSaQQlEc91IU1yALL8gUTDomgBAfz3XJdmUS+oo0w==", + "extraneous": true, + "dependencies": { + "dir-glob": "^3.0.1", + "fast-glob": "^3.3.0", + "ignore": "^5.2.4", + "merge2": "^1.4.1", + "slash": "^4.0.0" + }, "engines": { - "node": ">=0.10.0" + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "../../../service/node_modules/expand-brackets/node_modules/kind-of": { - "version": "5.1.0", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/cpy/node_modules/slash": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-4.0.0.tgz", + "integrity": "sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==", + "extraneous": true, "engines": { - "node": ">=0.10.0" + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "../../../service/node_modules/expand-brackets/node_modules/ms": { - "version": "2.0.0", - "dev": true, - "license": "MIT", - "peer": true - }, - "../../../service/node_modules/expand-template": { - "version": "2.0.3", - "license": "(MIT OR WTFPL)", + "node_modules/@ngageoint/mage.service/node_modules/crc-32": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/crc-32/-/crc-32-1.2.2.tgz", + "integrity": "sha512-ROmzCKrTnOwybPcJApAA6WBWij23HVfGVNKqqrZpuyZOHqK2CwHSvpGuyt/UNNvaIjEd8X5IFGp4Mh+Ie1IHJQ==", "peer": true, + "bin": { + "crc32": "bin/crc32.njs" + }, "engines": { - "node": ">=6" + "node": ">=0.8" } }, - "../../../service/node_modules/express": { - "version": "4.17.3", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/crc32-stream": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/crc32-stream/-/crc32-stream-4.0.3.tgz", + "integrity": "sha512-NT7w2JVU7DFroFdYkeq8cywxrgjPHWkdX1wjpRQXPX5Asews3tA+Ght6lddQO5Mkumffp3X7GEqku3epj2toIw==", "peer": true, "dependencies": { - "accepts": "~1.3.8", - "array-flatten": "1.1.1", - "body-parser": "1.19.2", - "content-disposition": "0.5.4", - "content-type": "~1.0.4", - "cookie": "0.4.2", - "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.7", - "qs": "6.9.7", - "range-parser": "~1.2.1", - "safe-buffer": "5.2.1", - "send": "0.17.2", - "serve-static": "1.14.2", - "setprototypeof": "1.2.0", - "statuses": "~1.5.0", - "type-is": "~1.6.18", - "utils-merge": "1.0.1", - "vary": "~1.1.2" + "crc-32": "^1.2.0", + "readable-stream": "^3.4.0" }, "engines": { - "node": ">= 0.10.0" + "node": ">= 10" } }, - "../../../service/node_modules/express-session": { - "version": "1.17.2", + "node_modules/@ngageoint/mage.service/node_modules/cross-spawn": { + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", + "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==", + "extraneous": true, "license": "MIT", - "peer": true, "dependencies": { - "cookie": "0.4.1", - "cookie-signature": "1.0.6", - "debug": "2.6.9", - "depd": "~2.0.0", - "on-headers": "~1.0.2", - "parseurl": "~1.3.3", - "safe-buffer": "5.2.1", - "uid-safe": "~2.1.5" + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" }, "engines": { - "node": ">= 0.8.0" + "node": ">= 8" } }, - "../../../service/node_modules/express-session/node_modules/cookie": { - "version": "0.4.1", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/cycle": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/cycle/-/cycle-1.0.3.tgz", + "integrity": "sha512-TVF6svNzeQCOpjCqsy0/CSy8VgObG3wXusJ73xW2GbG5rGx7lC8zxDSURicsXI2UsGdi2L0QNRCi745/wUDvsA==", "peer": true, "engines": { - "node": ">= 0.6" + "node": ">=0.4.0" } }, - "../../../service/node_modules/express-session/node_modules/debug": { - "version": "2.6.9", - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/dashdash": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", + "integrity": "sha512-jRFi8UDGo6j+odZiEpjazZaWqEal3w/basFjQHQEwVtZJGDpxbH1MeYluwCS8Xq5wmLJooDlMgvVarmWfGM44g==", + "extraneous": true, "dependencies": { - "ms": "2.0.0" - } - }, - "../../../service/node_modules/express-session/node_modules/depd": { - "version": "2.0.0", - "license": "MIT", - "peer": true, + "assert-plus": "^1.0.0" + }, "engines": { - "node": ">= 0.8" + "node": ">=0.10" } }, - "../../../service/node_modules/express-session/node_modules/ms": { - "version": "2.0.0", - "license": "MIT", - "peer": true - }, - "../../../service/node_modules/express/node_modules/body-parser": { - "version": "1.19.2", - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/data-view-buffer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/data-view-buffer/-/data-view-buffer-1.0.1.tgz", + "integrity": "sha512-0lht7OugA5x3iJLOWFhWK/5ehONdprk0ISXqVFn/NFrDu+cuc8iADFrGQz5BnRK7LLU3JmkbXSxaqX+/mXYtUA==", + "extraneous": true, "dependencies": { - "bytes": "3.1.2", - "content-type": "~1.0.4", - "debug": "2.6.9", - "depd": "~1.1.2", - "http-errors": "1.8.1", - "iconv-lite": "0.4.24", - "on-finished": "~2.3.0", - "qs": "6.9.7", - "raw-body": "2.4.3", - "type-is": "~1.6.18" + "call-bind": "^1.0.6", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.1" }, "engines": { - "node": ">= 0.8" - } - }, - "../../../service/node_modules/express/node_modules/bytes": { - "version": "3.1.2", - "license": "MIT", - "peer": true, - "engines": { - "node": ">= 0.8" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "../../../service/node_modules/express/node_modules/debug": { - "version": "2.6.9", - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/data-view-byte-length": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/data-view-byte-length/-/data-view-byte-length-1.0.1.tgz", + "integrity": "sha512-4J7wRJD3ABAzr8wP+OcIcqq2dlUKp4DVflx++hs5h5ZKydWMI6/D/fAot+yh6g2tHh8fLFTvNOaVN357NvSrOQ==", + "extraneous": true, "dependencies": { - "ms": "2.0.0" + "call-bind": "^1.0.7", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "../../../service/node_modules/express/node_modules/http-errors": { - "version": "1.8.1", - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/data-view-byte-offset": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/data-view-byte-offset/-/data-view-byte-offset-1.0.0.tgz", + "integrity": "sha512-t/Ygsytq+R995EJ5PZlD4Cu56sWa8InXySaViRzw9apusqsOO2bQP+SbYzAhR0pFKoB+43lYy8rWban9JSuXnA==", + "extraneous": true, "dependencies": { - "depd": "~1.1.2", - "inherits": "2.0.4", - "setprototypeof": "1.2.0", - "statuses": ">= 1.5.0 < 2", - "toidentifier": "1.0.1" + "call-bind": "^1.0.6", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.1" }, "engines": { - "node": ">= 0.6" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "../../../service/node_modules/express/node_modules/iconv-lite": { - "version": "0.4.24", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/debug": { + "version": "4.3.5", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.5.tgz", + "integrity": "sha512-pt0bNEmneDIvdL1Xsd9oDQ/wrQRkXDT4AUWlNZNPKvW5x/jyO9VFXkJUP07vQ2upmw5PlaITaPKc31jK13V+jg==", "peer": true, "dependencies": { - "safer-buffer": ">= 2.1.2 < 3" + "ms": "2.1.2" }, "engines": { - "node": ">=0.10.0" + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } } }, - "../../../service/node_modules/express/node_modules/ms": { - "version": "2.0.0", - "license": "MIT", - "peer": true - }, - "../../../service/node_modules/express/node_modules/qs": { - "version": "6.9.7", - "license": "BSD-3-Clause", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/decamelize": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-4.0.0.tgz", + "integrity": "sha512-9iE1PgSik9HeIIw2JO94IidnE3eBoQrFJ3w7sFuzSX4DpmZ3v5sZpUiV5Swcf6mQEF+Y0ru8Neo+p+nyh2J+hQ==", + "extraneous": true, "engines": { - "node": ">=0.6" + "node": ">=10" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "url": "https://github.com/sponsors/sindresorhus" } }, - "../../../service/node_modules/express/node_modules/raw-body": { - "version": "2.4.3", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/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==", + "optional": true, "peer": true, "dependencies": { - "bytes": "3.1.2", - "http-errors": "1.8.1", - "iconv-lite": "0.4.24", - "unpipe": "1.0.0" + "mimic-response": "^3.1.0" }, "engines": { - "node": ">= 0.8" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "../../../service/node_modules/extend": { - "version": "3.0.2", - "dev": true, - "license": "MIT", - "peer": true - }, - "../../../service/node_modules/extend-shallow": { - "version": "3.0.2", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/deep-eql": { + "version": "4.1.4", + "resolved": "https://registry.npmjs.org/deep-eql/-/deep-eql-4.1.4.tgz", + "integrity": "sha512-SUwdGfqdKOwxCPeVYjwSyRpJ7Z+fhpwIAtmCUdZIWZ/YP5R9WAsyuSgpLVDi9bjWoN2LXHNss/dk3urXtdQxGg==", + "extraneous": true, "license": "MIT", - "peer": true, "dependencies": { - "assign-symbols": "^1.0.0", - "is-extendable": "^1.0.1" + "type-detect": "^4.0.0" }, "engines": { - "node": ">=0.10.0" + "node": ">=6" } }, - "../../../service/node_modules/external-editor": { - "version": "3.1.0", - "devOptional": true, + "node_modules/@ngageoint/mage.service/node_modules/deep-equal": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-2.2.3.tgz", + "integrity": "sha512-ZIwpnevOurS8bpT4192sqAowWM76JDKSHYzMLty3BZGSswgq6pBaH3DhCSW5xVAZICZyKdOBPjwww5wfgT/6PA==", + "extraneous": true, "license": "MIT", - "peer": true, "dependencies": { - "chardet": "^0.7.0", - "iconv-lite": "^0.4.24", - "tmp": "^0.0.33" + "array-buffer-byte-length": "^1.0.0", + "call-bind": "^1.0.5", + "es-get-iterator": "^1.1.3", + "get-intrinsic": "^1.2.2", + "is-arguments": "^1.1.1", + "is-array-buffer": "^3.0.2", + "is-date-object": "^1.0.5", + "is-regex": "^1.1.4", + "is-shared-array-buffer": "^1.0.2", + "isarray": "^2.0.5", + "object-is": "^1.1.5", + "object-keys": "^1.1.1", + "object.assign": "^4.1.4", + "regexp.prototype.flags": "^1.5.1", + "side-channel": "^1.0.4", + "which-boxed-primitive": "^1.0.2", + "which-collection": "^1.0.1", + "which-typed-array": "^1.1.13" }, "engines": { - "node": ">=4" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "../../../service/node_modules/external-editor/node_modules/iconv-lite": { - "version": "0.4.24", - "devOptional": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/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==", + "optional": true, "peer": true, - "dependencies": { - "safer-buffer": ">= 2.1.2 < 3" - }, "engines": { - "node": ">=0.10.0" + "node": ">=4.0.0" } }, - "../../../service/node_modules/extglob": { - "version": "2.0.4", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/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==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/default-require-extensions": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/default-require-extensions/-/default-require-extensions-2.0.0.tgz", + "integrity": "sha512-B0n2zDIXpzLzKeoEozorDSa1cHc1t0NjmxP0zuAxbizNU2MBqYJJKYXrrFdKuQliojXynrxgd7l4ahfg/+aA5g==", + "extraneous": true, "dependencies": { - "array-unique": "^0.3.2", - "define-property": "^1.0.0", - "expand-brackets": "^2.1.4", - "extend-shallow": "^2.0.1", - "fragment-cache": "^0.2.1", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.1" + "strip-bom": "^3.0.0" }, "engines": { - "node": ">=0.10.0" + "node": ">=4" } }, - "../../../service/node_modules/extglob/node_modules/define-property": { - "version": "1.0.0", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/define-data-property": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.4.tgz", + "integrity": "sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==", "peer": true, "dependencies": { - "is-descriptor": "^1.0.0" + "es-define-property": "^1.0.0", + "es-errors": "^1.3.0", + "gopd": "^1.0.1" }, "engines": { - "node": ">=0.10.0" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "../../../service/node_modules/extglob/node_modules/extend-shallow": { - "version": "2.0.1", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/define-properties": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.2.1.tgz", + "integrity": "sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==", + "extraneous": true, "dependencies": { - "is-extendable": "^0.1.0" + "define-data-property": "^1.0.1", + "has-property-descriptors": "^1.0.0", + "object-keys": "^1.1.1" }, "engines": { - "node": ">=0.10.0" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "../../../service/node_modules/extglob/node_modules/is-extendable": { - "version": "0.1.1", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==", "peer": true, "engines": { - "node": ">=0.10.0" + "node": ">=0.4.0" } }, - "../../../service/node_modules/extsprintf": { - "version": "1.3.0", - "engines": [ - "node >=0.6.0" - ], + "node_modules/@ngageoint/mage.service/node_modules/depd": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", + "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==", "license": "MIT", - "peer": true - }, - "../../../service/node_modules/eyes": { - "version": "0.1.8", "peer": true, "engines": { - "node": "> 0.1.90" + "node": ">= 0.8" } }, - "../../../service/node_modules/fast-deep-equal": { - "version": "3.1.3", - "dev": true, - "license": "MIT", - "peer": true - }, - "../../../service/node_modules/fast-diff": { + "node_modules/@ngageoint/mage.service/node_modules/destroy": { "version": "1.2.0", - "dev": true, - "license": "Apache-2.0", - "peer": true + "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz", + "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==", + "peer": true, + "engines": { + "node": ">= 0.8", + "npm": "1.2.8000 || >= 1.4.16" + } }, - "../../../service/node_modules/fast-glob": { - "version": "2.2.7", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/detect-libc": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.0.3.tgz", + "integrity": "sha512-bwy0MGW55bG41VqxxypOsdSdGqLwXPI/focwgTYCFMbdUiBAxLg9CFzG08sz2aqzknwiX7Hkl0bQENjg8iLByw==", + "optional": true, "peer": true, - "dependencies": { - "@mrmlnc/readdir-enhanced": "^2.2.1", - "@nodelib/fs.stat": "^1.1.2", - "glob-parent": "^3.1.0", - "is-glob": "^4.0.0", - "merge2": "^1.2.3", - "micromatch": "^3.1.10" - }, "engines": { - "node": ">=4.0.0" + "node": ">=8" } }, - "../../../service/node_modules/fast-glob/node_modules/glob-parent": { - "version": "3.1.0", - "dev": true, - "license": "ISC", + "node_modules/@ngageoint/mage.service/node_modules/dezalgo": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/dezalgo/-/dezalgo-1.0.4.tgz", + "integrity": "sha512-rXSP0bf+5n0Qonsb+SVVfNfIsimO4HEtmnIpPHY8Q1UCzKlQrDMfdobr8nJOOsRgWCyMRqeSBQzmWUMq7zvVig==", "peer": true, "dependencies": { - "is-glob": "^3.1.0", - "path-dirname": "^1.0.0" + "asap": "^2.0.0", + "wrappy": "1" } }, - "../../../service/node_modules/fast-glob/node_modules/glob-parent/node_modules/is-glob": { - "version": "3.1.0", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/diff": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/diff/-/diff-5.2.0.tgz", + "integrity": "sha512-uIFDxqpRZGZ6ThOk84hEfqWoHx2devRFvpTZcTHur85vImfaxUbTW9Ryh4CpCuDnToOP1CEtXKIgytHBPVff5A==", + "extraneous": true, + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.3.1" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/dir-glob": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", + "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", + "extraneous": true, "dependencies": { - "is-extglob": "^2.1.0" + "path-type": "^4.0.0" }, "engines": { - "node": ">=0.10.0" + "node": ">=8" } }, - "../../../service/node_modules/fast-json-stable-stringify": { - "version": "2.1.0", - "dev": true, - "license": "MIT", - "peer": true + "node_modules/@ngageoint/mage.service/node_modules/doctrine": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", + "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", + "extraneous": true, + "dependencies": { + "esutils": "^2.0.2" + }, + "engines": { + "node": ">=6.0.0" + } }, - "../../../service/node_modules/fast-levenshtein": { - "version": "2.0.6", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/doctypes": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/doctypes/-/doctypes-1.1.0.tgz", + "integrity": "sha512-LLBi6pEqS6Do3EKQ3J0NqHWV5hhb78Pi8vvESYwyOy2c31ZEZVdtitdzsQsKb7878PEERhzUk0ftqGhG6Mz+pQ==", "peer": true }, - "../../../service/node_modules/fast-safe-stringify": { - "version": "2.1.1", - "license": "MIT", - "peer": true + "node_modules/@ngageoint/mage.service/node_modules/drange": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/drange/-/drange-1.1.1.tgz", + "integrity": "sha512-pYxfDYpued//QpnLIm4Avk7rsNtAtQkUES2cwAYSvD/wd2pKD71gN2Ebj3e7klzXwjocvE8c5vx/1fxwpqmSxA==", + "extraneous": true, + "engines": { + "node": ">=4" + } }, - "../../../service/node_modules/fast-xml-parser": { - "version": "4.0.11", + "node_modules/@ngageoint/mage.service/node_modules/dunder-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.1.tgz", + "integrity": "sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==", "license": "MIT", - "optional": true, "peer": true, "dependencies": { - "strnum": "^1.0.5" + "call-bind-apply-helpers": "^1.0.1", + "es-errors": "^1.3.0", + "gopd": "^1.2.0" }, - "bin": { - "fxparser": "src/cli/cli.js" - }, - "funding": { - "type": "paypal", - "url": "https://paypal.me/naturalintelligence" + "engines": { + "node": ">= 0.4" } }, - "../../../service/node_modules/fd-slicer": { - "version": "1.1.0", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/duplexer": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/duplexer/-/duplexer-0.1.2.tgz", + "integrity": "sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/eastasianwidth": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz", + "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/ecc-jsbn": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz", + "integrity": "sha512-eh9O+hwRHNbG4BLTjEl3nw044CkGm5X6LoaCf7LPp7UU8Qrt47JYNi6nPX8xjW97TKGKm1ouctg0QSpZe9qrnw==", + "extraneous": true, "dependencies": { - "pend": "~1.2.0" + "jsbn": "~0.1.0", + "safer-buffer": "^2.1.0" } }, - "../../../service/node_modules/figures": { - "version": "3.2.0", - "devOptional": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/ecc-jsbn/node_modules/jsbn": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", + "integrity": "sha512-UVU9dibq2JcFWxQPA6KCqj5O42VOmAY3zQUfEKxU0KpTGXwNoCjkX1e13eHNvw/xPynt6pU0rZ1htjWTNTSXsg==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/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==", "peer": true, "dependencies": { - "escape-string-regexp": "^1.0.5" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "safe-buffer": "^5.0.1" } }, - "../../../service/node_modules/file-entry-cache": { - "version": "5.0.1", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/ee-first": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", + "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==", + "license": "MIT", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "optional": true, + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/encodeurl": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-2.0.0.tgz", + "integrity": "sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg==", "license": "MIT", "peer": true, - "dependencies": { - "flat-cache": "^2.0.1" - }, "engines": { - "node": ">=4" + "node": ">= 0.8" } }, - "../../../service/node_modules/file-type": { - "version": "16.5.0", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/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==", "peer": true, "dependencies": { - "readable-web-to-node-stream": "^3.0.0", - "strtok3": "^6.0.3", - "token-types": "^2.0.0" + "once": "^1.4.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/error-ex": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", + "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", + "extraneous": true, + "dependencies": { + "is-arrayish": "^0.2.1" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/es-abstract": { + "version": "1.23.3", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.23.3.tgz", + "integrity": "sha512-e+HfNH61Bj1X9/jLc5v1owaLYuHdeHHSQlkhCBiTK8rBvKaULl/beGMxwrMXjpYrv4pz22BlY570vVePA2ho4A==", + "extraneous": true, + "dependencies": { + "array-buffer-byte-length": "^1.0.1", + "arraybuffer.prototype.slice": "^1.0.3", + "available-typed-arrays": "^1.0.7", + "call-bind": "^1.0.7", + "data-view-buffer": "^1.0.1", + "data-view-byte-length": "^1.0.1", + "data-view-byte-offset": "^1.0.0", + "es-define-property": "^1.0.0", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.0.0", + "es-set-tostringtag": "^2.0.3", + "es-to-primitive": "^1.2.1", + "function.prototype.name": "^1.1.6", + "get-intrinsic": "^1.2.4", + "get-symbol-description": "^1.0.2", + "globalthis": "^1.0.3", + "gopd": "^1.0.1", + "has-property-descriptors": "^1.0.2", + "has-proto": "^1.0.3", + "has-symbols": "^1.0.3", + "hasown": "^2.0.2", + "internal-slot": "^1.0.7", + "is-array-buffer": "^3.0.4", + "is-callable": "^1.2.7", + "is-data-view": "^1.0.1", + "is-negative-zero": "^2.0.3", + "is-regex": "^1.1.4", + "is-shared-array-buffer": "^1.0.3", + "is-string": "^1.0.7", + "is-typed-array": "^1.1.13", + "is-weakref": "^1.0.2", + "object-inspect": "^1.13.1", + "object-keys": "^1.1.1", + "object.assign": "^4.1.5", + "regexp.prototype.flags": "^1.5.2", + "safe-array-concat": "^1.1.2", + "safe-regex-test": "^1.0.3", + "string.prototype.trim": "^1.2.9", + "string.prototype.trimend": "^1.0.8", + "string.prototype.trimstart": "^1.0.8", + "typed-array-buffer": "^1.0.2", + "typed-array-byte-length": "^1.0.1", + "typed-array-byte-offset": "^1.0.2", + "typed-array-length": "^1.0.6", + "unbox-primitive": "^1.0.2", + "which-typed-array": "^1.1.15" }, "engines": { - "node": ">=8" + "node": ">= 0.4" }, "funding": { - "url": "https://github.com/sindresorhus/file-type?sponsor=1" + "url": "https://github.com/sponsors/ljharb" } }, - "../../../service/node_modules/file-uri-to-path": { - "version": "1.0.0", - "license": "MIT", - "peer": true - }, - "../../../service/node_modules/fill-keys": { - "version": "1.0.2", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/es-define-property": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.1.tgz", + "integrity": "sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==", "license": "MIT", "peer": true, - "dependencies": { - "is-object": "~1.0.1", - "merge-descriptors": "~1.0.0" - }, "engines": { - "node": ">=0.10.0" + "node": ">= 0.4" } }, - "../../../service/node_modules/fill-range": { - "version": "4.0.0", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/es-errors": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz", + "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==", "peer": true, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/es-get-iterator": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/es-get-iterator/-/es-get-iterator-1.1.3.tgz", + "integrity": "sha512-sPZmqHBe6JIiTfN5q2pEi//TwxmAFHwj/XEuYjTuse78i8KxaqMTTzxPoFKuzRpDpTJ+0NAbpfenkmH2rePtuw==", + "extraneous": true, "dependencies": { - "extend-shallow": "^2.0.1", - "is-number": "^3.0.0", - "repeat-string": "^1.6.1", - "to-regex-range": "^2.1.0" + "call-bind": "^1.0.2", + "get-intrinsic": "^1.1.3", + "has-symbols": "^1.0.3", + "is-arguments": "^1.1.1", + "is-map": "^2.0.2", + "is-set": "^2.0.2", + "is-string": "^1.0.7", + "isarray": "^2.0.5", + "stop-iteration-iterator": "^1.0.0" }, - "engines": { - "node": ">=0.10.0" + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "../../../service/node_modules/fill-range/node_modules/extend-shallow": { - "version": "2.0.1", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/es-object-atoms": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.1.1.tgz", + "integrity": "sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==", "license": "MIT", "peer": true, "dependencies": { - "is-extendable": "^0.1.0" + "es-errors": "^1.3.0" }, "engines": { - "node": ">=0.10.0" + "node": ">= 0.4" } }, - "../../../service/node_modules/fill-range/node_modules/is-extendable": { - "version": "0.1.1", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/es-set-tostringtag": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.0.3.tgz", + "integrity": "sha512-3T8uNMC3OQTHkFUsFq8r/BwAXLHvU/9O9mE0fBc/MY5iq/8H7ncvO947LmYA6ldWw9Uh8Yhf25zu6n7nML5QWQ==", + "extraneous": true, + "dependencies": { + "get-intrinsic": "^1.2.4", + "has-tostringtag": "^1.0.2", + "hasown": "^2.0.1" + }, "engines": { - "node": ">=0.10.0" + "node": ">= 0.4" } }, - "../../../service/node_modules/finalhandler": { - "version": "1.1.2", - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/es-to-primitive": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", + "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", + "extraneous": true, "dependencies": { - "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" + "is-callable": "^1.1.4", + "is-date-object": "^1.0.1", + "is-symbol": "^1.0.2" }, "engines": { - "node": ">= 0.8" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "../../../service/node_modules/finalhandler/node_modules/debug": { - "version": "2.6.9", - "license": "MIT", - "peer": true, - "dependencies": { - "ms": "2.0.0" + "node_modules/@ngageoint/mage.service/node_modules/es6-error": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/es6-error/-/es6-error-4.1.1.tgz", + "integrity": "sha512-Um/+FxMr9CISWh0bi5Zv0iOD+4cFh5qLeks1qhAopKVAJw3drgKbKySikp7wGhDL0HPeaja0P5ULZrxLkniUVg==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/escalade": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.2.tgz", + "integrity": "sha512-ErCHMCae19vR8vQGe50xIsVomy19rg6gFu3+r3jkEO46suLMWBksvVyoGgQV+jOfl84ZSOSlmv6Gxa89PmTGmA==", + "extraneous": true, + "engines": { + "node": ">=6" } }, - "../../../service/node_modules/finalhandler/node_modules/ms": { - "version": "2.0.0", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/escape-html": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", + "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==", "peer": true }, - "../../../service/node_modules/find-cache-dir": { - "version": "3.3.2", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "commondir": "^1.0.1", - "make-dir": "^3.0.2", - "pkg-dir": "^4.1.0" - }, + "node_modules/@ngageoint/mage.service/node_modules/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==", + "extraneous": true, "engines": { - "node": ">=8" + "node": ">=10" }, "funding": { - "url": "https://github.com/avajs/find-cache-dir?sponsor=1" + "url": "https://github.com/sponsors/sindresorhus" } }, - "../../../service/node_modules/find-cache-dir/node_modules/make-dir": { - "version": "3.1.0", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/eslint": { + "version": "8.57.1", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.57.1.tgz", + "integrity": "sha512-ypowyDxpVSYpkXr9WPv2PAZCtNip1Mv5KTW0SCurXv/9iOpcrH9PaqUElksqEB6pChqHGDRCFTyrZlGhnLNGiA==", + "deprecated": "This version is no longer supported. Please see https://eslint.org/version-support for other options.", + "extraneous": true, "license": "MIT", - "peer": true, "dependencies": { - "semver": "^6.0.0" + "@eslint-community/eslint-utils": "^4.2.0", + "@eslint-community/regexpp": "^4.6.1", + "@eslint/eslintrc": "^2.1.4", + "@eslint/js": "8.57.1", + "@humanwhocodes/config-array": "^0.13.0", + "@humanwhocodes/module-importer": "^1.0.1", + "@nodelib/fs.walk": "^1.2.8", + "@ungap/structured-clone": "^1.2.0", + "ajv": "^6.12.4", + "chalk": "^4.0.0", + "cross-spawn": "^7.0.2", + "debug": "^4.3.2", + "doctrine": "^3.0.0", + "escape-string-regexp": "^4.0.0", + "eslint-scope": "^7.2.2", + "eslint-visitor-keys": "^3.4.3", + "espree": "^9.6.1", + "esquery": "^1.4.2", + "esutils": "^2.0.2", + "fast-deep-equal": "^3.1.3", + "file-entry-cache": "^6.0.1", + "find-up": "^5.0.0", + "glob-parent": "^6.0.2", + "globals": "^13.19.0", + "graphemer": "^1.4.0", + "ignore": "^5.2.0", + "imurmurhash": "^0.1.4", + "is-glob": "^4.0.0", + "is-path-inside": "^3.0.3", + "js-yaml": "^4.1.0", + "json-stable-stringify-without-jsonify": "^1.0.1", + "levn": "^0.4.1", + "lodash.merge": "^4.6.2", + "minimatch": "^3.1.2", + "natural-compare": "^1.4.0", + "optionator": "^0.9.3", + "strip-ansi": "^6.0.1", + "text-table": "^0.2.0" + }, + "bin": { + "eslint": "bin/eslint.js" }, "engines": { - "node": ">=8" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://opencollective.com/eslint" } }, - "../../../service/node_modules/find-up": { - "version": "3.0.0", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/eslint-config-prettier": { + "version": "6.15.0", + "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-6.15.0.tgz", + "integrity": "sha512-a1+kOYLR8wMGustcgAjdydMsQ2A/2ipRPwRKUmfYaSxc9ZPcrku080Ctl6zrZzZNs/U82MjSv+qKREkoq3bJaw==", + "extraneous": true, "license": "MIT", - "peer": true, - "dependencies": { - "locate-path": "^3.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "../../../service/node_modules/flat": { - "version": "4.1.1", - "dev": true, - "license": "BSD-3-Clause", - "peer": true, "dependencies": { - "is-buffer": "~2.0.3" + "get-stdin": "^6.0.0" }, "bin": { - "flat": "cli.js" + "eslint-config-prettier-check": "bin/cli.js" + }, + "peerDependencies": { + "eslint": ">=3.14.1" } }, - "../../../service/node_modules/flat-cache": { - "version": "2.0.1", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/eslint-plugin-prettier": { + "version": "3.4.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-prettier/-/eslint-plugin-prettier-3.4.1.tgz", + "integrity": "sha512-htg25EUYUeIhKHXjOinK4BgCcDwtLHjqaxCDsMy5nbnUMkKFvIhMVCp+5GFUXQ4Nr8lBsPqtGAqBenbpFqAA2g==", + "extraneous": true, "license": "MIT", - "peer": true, "dependencies": { - "flatted": "^2.0.0", - "rimraf": "2.6.3", - "write": "1.0.3" + "prettier-linter-helpers": "^1.0.0" }, "engines": { - "node": ">=4" - } - }, - "../../../service/node_modules/flatted": { - "version": "2.0.2", - "dev": true, - "license": "ISC", - "peer": true - }, - "../../../service/node_modules/follow-redirects": { - "version": "1.15.2", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://github.com/sponsors/RubenVerborgh" - } - ], - "license": "MIT", - "peer": true, - "engines": { - "node": ">=4.0" + "node": ">=6.0.0" + }, + "peerDependencies": { + "eslint": ">=5.0.0", + "prettier": ">=1.13.0" }, "peerDependenciesMeta": { - "debug": { + "eslint-config-prettier": { "optional": true } } }, - "../../../service/node_modules/for-each": { - "version": "0.3.3", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/eslint-scope": { + "version": "7.2.2", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.2.tgz", + "integrity": "sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==", + "extraneous": true, "dependencies": { - "is-callable": "^1.1.3" + "esrecurse": "^4.3.0", + "estraverse": "^5.2.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" } }, - "../../../service/node_modules/for-in": { - "version": "1.0.2", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/eslint-visitor-keys": { + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", + "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", + "extraneous": true, "engines": { - "node": ">=0.10.0" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" } }, - "../../../service/node_modules/foreachasync": { - "version": "3.0.0", - "license": "Apache2", - "peer": true + "node_modules/@ngageoint/mage.service/node_modules/eslint/node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "extraneous": true }, - "../../../service/node_modules/foreground-child": { - "version": "1.5.6", - "dev": true, - "license": "ISC", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/eslint/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "extraneous": true, "dependencies": { - "cross-spawn": "^4", - "signal-exit": "^3.0.0" + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" } }, - "../../../service/node_modules/foreground-child/node_modules/cross-spawn": { - "version": "4.0.2", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/eslint/node_modules/js-yaml": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", + "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", + "extraneous": true, "dependencies": { - "lru-cache": "^4.0.1", - "which": "^1.2.9" + "argparse": "^2.0.1" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" } }, - "../../../service/node_modules/foreground-child/node_modules/lru-cache": { - "version": "4.1.5", - "dev": true, - "license": "ISC", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/eslint/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "extraneous": true, "dependencies": { - "pseudomap": "^1.0.2", - "yallist": "^2.1.2" + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" } }, - "../../../service/node_modules/foreground-child/node_modules/yallist": { - "version": "2.1.2", - "dev": true, - "license": "ISC", - "peer": true + "node_modules/@ngageoint/mage.service/node_modules/espree": { + "version": "9.6.1", + "resolved": "https://registry.npmjs.org/espree/-/espree-9.6.1.tgz", + "integrity": "sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==", + "extraneous": true, + "dependencies": { + "acorn": "^8.9.0", + "acorn-jsx": "^5.3.2", + "eslint-visitor-keys": "^3.4.1" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } }, - "../../../service/node_modules/forever-agent": { - "version": "0.6.1", - "dev": true, - "license": "Apache-2.0", + "node_modules/@ngageoint/mage.service/node_modules/esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", + "license": "BSD-2-Clause", "peer": true, + "bin": { + "esparse": "bin/esparse.js", + "esvalidate": "bin/esvalidate.js" + }, "engines": { - "node": "*" + "node": ">=4" } }, - "../../../service/node_modules/form-data": { - "version": "3.0.1", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/esquery": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.5.0.tgz", + "integrity": "sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==", + "extraneous": true, "dependencies": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.8", - "mime-types": "^2.1.12" + "estraverse": "^5.1.0" }, "engines": { - "node": ">= 6" + "node": ">=0.10" } }, - "../../../service/node_modules/format-util": { - "version": "1.0.5", - "dev": true, - "license": "MIT", - "peer": true - }, - "../../../service/node_modules/formidable": { - "version": "2.0.1", - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/esrecurse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", + "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", + "extraneous": true, "dependencies": { - "dezalgo": "1.0.3", - "hexoid": "1.0.0", - "once": "1.4.0", - "qs": "6.9.3" + "estraverse": "^5.2.0" }, - "funding": { - "url": "https://ko-fi.com/tunnckoCore/commissions" + "engines": { + "node": ">=4.0" } }, - "../../../service/node_modules/formidable/node_modules/qs": { - "version": "6.9.3", - "license": "BSD-3-Clause", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "extraneous": true, "engines": { - "node": ">=0.6" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=4.0" } }, - "../../../service/node_modules/forwarded": { - "version": "0.2.0", + "node_modules/@ngageoint/mage.service/node_modules/esutils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", + "extraneous": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/etag": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", + "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==", "license": "MIT", "peer": true, "engines": { "node": ">= 0.6" } }, - "../../../service/node_modules/fragment-cache": { - "version": "0.2.1", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/event-stream": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/event-stream/-/event-stream-4.0.1.tgz", + "integrity": "sha512-qACXdu/9VHPBzcyhdOWR5/IahhGMf0roTeZJfzz077GwylcDd90yOHLouhmv7GJ5XzPi6ekaQWd8AvPP2nOvpA==", "peer": true, "dependencies": { - "map-cache": "^0.2.2" - }, - "engines": { - "node": ">=0.10.0" + "duplexer": "^0.1.1", + "from": "^0.1.7", + "map-stream": "0.0.7", + "pause-stream": "^0.0.11", + "split": "^1.0.1", + "stream-combiner": "^0.2.2", + "through": "^2.3.8" } }, - "../../../service/node_modules/fresh": { - "version": "0.5.2", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/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==", + "optional": true, "peer": true, "engines": { - "node": ">= 0.6" + "node": ">=6" } }, - "../../../service/node_modules/from": { - "version": "0.1.7", - "license": "MIT", - "peer": true - }, - "../../../service/node_modules/fs-constants": { - "version": "1.0.0", - "license": "MIT", - "peer": true - }, - "../../../service/node_modules/fs-extra": { - "version": "4.0.3", + "node_modules/@ngageoint/mage.service/node_modules/express": { + "version": "4.21.2", + "resolved": "https://registry.npmjs.org/express/-/express-4.21.2.tgz", + "integrity": "sha512-28HqgMZAmih1Czt9ny7qr6ek2qddF4FclbMzwhCREB6OFfH+rXAnuNCwo1/wFvrtbgsQDb4kSbX9de9lFbrXnA==", "license": "MIT", "peer": true, "dependencies": { - "graceful-fs": "^4.1.2", - "jsonfile": "^4.0.0", - "universalify": "^0.1.0" + "accepts": "~1.3.8", + "array-flatten": "1.1.1", + "body-parser": "1.20.3", + "content-disposition": "0.5.4", + "content-type": "~1.0.4", + "cookie": "0.7.1", + "cookie-signature": "1.0.6", + "debug": "2.6.9", + "depd": "2.0.0", + "encodeurl": "~2.0.0", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "finalhandler": "1.3.1", + "fresh": "0.5.2", + "http-errors": "2.0.0", + "merge-descriptors": "1.0.3", + "methods": "~1.1.2", + "on-finished": "2.4.1", + "parseurl": "~1.3.3", + "path-to-regexp": "0.1.12", + "proxy-addr": "~2.0.7", + "qs": "6.13.0", + "range-parser": "~1.2.1", + "safe-buffer": "5.2.1", + "send": "0.19.0", + "serve-static": "1.16.2", + "setprototypeof": "1.2.0", + "statuses": "2.0.1", + "type-is": "~1.6.18", + "utils-merge": "1.0.1", + "vary": "~1.1.2" + }, + "engines": { + "node": ">= 0.10.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/express" } }, - "../../../service/node_modules/fs-minipass": { - "version": "2.1.0", - "license": "ISC", + "node_modules/@ngageoint/mage.service/node_modules/express-session": { + "version": "1.18.1", + "resolved": "https://registry.npmjs.org/express-session/-/express-session-1.18.1.tgz", + "integrity": "sha512-a5mtTqEaZvBCL9A9aqkrtfz+3SMDhOVUnjafjo+s7A9Txkq+SVX2DLvSp1Zrv4uCXa3lMSK3viWnh9Gg07PBUA==", + "license": "MIT", "peer": true, "dependencies": { - "minipass": "^3.0.0" + "cookie": "0.7.2", + "cookie-signature": "1.0.7", + "debug": "2.6.9", + "depd": "~2.0.0", + "on-headers": "~1.0.2", + "parseurl": "~1.3.3", + "safe-buffer": "5.2.1", + "uid-safe": "~2.1.5" }, "engines": { - "node": ">= 8" + "node": ">= 0.8.0" } }, - "../../../service/node_modules/fs.realpath": { - "version": "1.0.0", - "license": "ISC", - "peer": true - }, - "../../../service/node_modules/fsevents": { - "version": "2.1.3", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/express-session/node_modules/cookie": { + "version": "0.7.2", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.7.2.tgz", + "integrity": "sha512-yki5XnKuf750l50uGTllt6kKILY4nQ1eNIQatoXEByZ5dWgnKqbnqmTrBE5B4N7lrMJKQ2ytWMiTO2o0v6Ew/w==", "license": "MIT", - "optional": true, - "os": [ - "darwin" - ], "peer": true, "engines": { - "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + "node": ">= 0.6" } }, - "../../../service/node_modules/function-bind": { - "version": "1.1.1", + "node_modules/@ngageoint/mage.service/node_modules/express-session/node_modules/cookie-signature": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.7.tgz", + "integrity": "sha512-NXdYc3dLr47pBkpUCHtKSwIOQXLVn8dZEuywboCOJY/osA0wFSLlSawr3KN8qXJEyX66FcONTH8EIlVuK0yyFA==", "license": "MIT", "peer": true }, - "../../../service/node_modules/function.prototype.name": { - "version": "1.1.5", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/express-session/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", "peer": true, "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3", - "es-abstract": "^1.19.0", - "functions-have-names": "^1.2.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "ms": "2.0.0" } }, - "../../../service/node_modules/functional-red-black-tree": { - "version": "1.0.1", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/express-session/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", "peer": true }, - "../../../service/node_modules/functions-have-names": { - "version": "1.2.3", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/express/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", "license": "MIT", "peer": true, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "../../../service/node_modules/gauge": { - "version": "2.7.4", - "license": "ISC", - "peer": true, "dependencies": { - "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" + "ms": "2.0.0" } }, - "../../../service/node_modules/gauge/node_modules/ansi-regex": { - "version": "2.1.1", + "node_modules/@ngageoint/mage.service/node_modules/express/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", "license": "MIT", - "peer": true, - "engines": { - "node": ">=0.10.0" - } + "peer": true }, - "../../../service/node_modules/gauge/node_modules/is-fullwidth-code-point": { - "version": "1.0.0", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/extend": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", + "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/external-editor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz", + "integrity": "sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==", + "optional": true, "peer": true, "dependencies": { - "number-is-nan": "^1.0.0" + "chardet": "^0.7.0", + "iconv-lite": "^0.4.24", + "tmp": "^0.0.33" }, "engines": { - "node": ">=0.10.0" + "node": ">=4" } }, - "../../../service/node_modules/gauge/node_modules/string-width": { - "version": "1.0.2", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/external-editor/node_modules/iconv-lite": { + "version": "0.4.24", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", + "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", + "optional": true, "peer": true, "dependencies": { - "code-point-at": "^1.0.0", - "is-fullwidth-code-point": "^1.0.0", - "strip-ansi": "^3.0.0" + "safer-buffer": ">= 2.1.2 < 3" }, "engines": { "node": ">=0.10.0" } }, - "../../../service/node_modules/gauge/node_modules/strip-ansi": { - "version": "3.0.1", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/extsprintf": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", + "integrity": "sha512-11Ndz7Nv+mvAC1j0ktTa7fAb0vLyGGX+rMHNBYQviQDGU0Hw7lhctJANqbPhu9nV9/izT/IntTgZ7Im/9LJs9g==", + "engines": [ + "node >=0.6.0" + ], + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/eyes": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/eyes/-/eyes-0.1.8.tgz", + "integrity": "sha512-GipyPsXO1anza0AOZdy69Im7hGFCNB7Y/NGjDlZGJ3GJJLtwNSb2vrzYrTYJRrRloVx7pl+bhUaTB8yiccPvFQ==", "peer": true, - "dependencies": { - "ansi-regex": "^2.0.0" - }, "engines": { - "node": ">=0.10.0" + "node": "> 0.1.90" } }, - "../../../service/node_modules/geojson": { - "version": "0.5.0", - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/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==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/fast-diff": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/fast-diff/-/fast-diff-1.3.0.tgz", + "integrity": "sha512-VxPP4NqbUjj6MaAOafWeUn2cXWLcCtljklUtZf0Ind4XQ+QPtmA0b18zZy0jIQx+ExRVCR/ZQpBmik5lXshNsw==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/fast-fifo": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/fast-fifo/-/fast-fifo-1.3.2.tgz", + "integrity": "sha512-/d9sfos4yxzpwkDkuN7k2SqFKtYNmCTzgfEpz82x34IM9/zc8KGxQoXg1liNC/izpRM/MBdt44Nmx41ZWqk+FQ==", + "extraneous": true, + "license": "MIT" + }, + "node_modules/@ngageoint/mage.service/node_modules/fast-glob": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.2.tgz", + "integrity": "sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==", + "extraneous": true, + "dependencies": { + "@nodelib/fs.stat": "^2.0.2", + "@nodelib/fs.walk": "^1.2.3", + "glob-parent": "^5.1.2", + "merge2": "^1.3.0", + "micromatch": "^4.0.4" + }, "engines": { - "node": ">= 0.10" + "node": ">=8.6.0" } }, - "../../../service/node_modules/geojson-rbush": { - "version": "3.2.0", - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/fast-glob/node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "extraneous": true, "dependencies": { - "@turf/bbox": "*", - "@turf/helpers": "6.x", - "@turf/meta": "6.x", - "@types/geojson": "7946.0.8", - "rbush": "^3.0.1" + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" } }, - "../../../service/node_modules/geojson-rbush/node_modules/@types/geojson": { - "version": "7946.0.8", - "license": "MIT", - "peer": true + "node_modules/@ngageoint/mage.service/node_modules/fast-json-stable-stringify": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", + "extraneous": true }, - "../../../service/node_modules/geojson-stream": { - "version": "0.1.0", - "license": "BSD-2-Clause", - "peer": true, - "dependencies": { - "JSONStream": "^1.0.0", - "through": "^2.3.4" - } + "node_modules/@ngageoint/mage.service/node_modules/fast-levenshtein": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", + "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", + "extraneous": true }, - "../../../service/node_modules/geojson-validation": { - "version": "1.0.2", - "license": "LGPL-3", + "node_modules/@ngageoint/mage.service/node_modules/fast-safe-stringify": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/fast-safe-stringify/-/fast-safe-stringify-2.1.1.tgz", + "integrity": "sha512-W+KJc2dmILlPplD/H4K9l9LcAHAfPtP6BY84uVLXQ6Evcz9Lcg33Y2z1IVblT6xdY54PXYVHEv+0Wpq8Io6zkA==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/fast-xml-parser": { + "version": "4.2.5", + "resolved": "https://registry.npmjs.org/fast-xml-parser/-/fast-xml-parser-4.2.5.tgz", + "integrity": "sha512-B9/wizE4WngqQftFPmdaMYlXoJlJOYxGQOanC77fq9k8+Z0v5dDSVh+3glErdIROP//s/jgb7ZuxKfB8nVyo0g==", + "funding": [ + { + "type": "paypal", + "url": "https://paypal.me/naturalintelligence" + }, + { + "type": "github", + "url": "https://github.com/sponsors/NaturalIntelligence" + } + ], + "optional": true, "peer": true, + "dependencies": { + "strnum": "^1.0.5" + }, "bin": { - "gjv": "bin/gjv" + "fxparser": "src/cli/cli.js" } }, - "../../../service/node_modules/get-caller-file": { - "version": "2.0.5", - "dev": true, - "license": "ISC", + "node_modules/@ngageoint/mage.service/node_modules/fastq": { + "version": "1.17.1", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.17.1.tgz", + "integrity": "sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w==", + "extraneous": true, + "dependencies": { + "reusify": "^1.0.4" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/figures": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz", + "integrity": "sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==", + "optional": true, "peer": true, + "dependencies": { + "escape-string-regexp": "^1.0.5" + }, "engines": { - "node": "6.* || 8.* || >= 10.*" + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "../../../service/node_modules/get-func-name": { - "version": "2.0.0", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/figures/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "optional": true, "peer": true, "engines": { - "node": "*" + "node": ">=0.8.0" } }, - "../../../service/node_modules/get-intrinsic": { - "version": "1.1.3", - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/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==", + "extraneous": true, "dependencies": { - "function-bind": "^1.1.1", - "has": "^1.0.3", - "has-symbols": "^1.0.3" + "flat-cache": "^3.0.4" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "engines": { + "node": "^10.12.0 || >=12.0.0" } }, - "../../../service/node_modules/get-port": { - "version": "5.1.1", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/file-type": { + "version": "16.5.4", + "resolved": "https://registry.npmjs.org/file-type/-/file-type-16.5.4.tgz", + "integrity": "sha512-/yFHK0aGjFEgDJjEKP0pWCplsPFPhwyfwevf/pVxiN0tmE4L9LmwWxWukdJSHdoCli4VgQLehjJtwQBnqmsKcw==", "peer": true, + "dependencies": { + "readable-web-to-node-stream": "^3.0.0", + "strtok3": "^6.2.4", + "token-types": "^4.1.1" + }, "engines": { - "node": ">=8" + "node": ">=10" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://github.com/sindresorhus/file-type?sponsor=1" } }, - "../../../service/node_modules/get-stdin": { - "version": "6.0.0", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/file-uri-to-path": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz", + "integrity": "sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==", + "optional": true, + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/fill-keys": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/fill-keys/-/fill-keys-1.0.2.tgz", + "integrity": "sha512-tcgI872xXjwFF4xgQmLxi76GnwJG3g/3isB1l4/G5Z4zrbddGpBjqZCO9oEAcB5wX0Hj/5iQB3toxfO7in1hHA==", + "extraneous": true, + "dependencies": { + "is-object": "~1.0.1", + "merge-descriptors": "~1.0.0" + }, "engines": { - "node": ">=4" + "node": ">=0.10.0" } }, - "../../../service/node_modules/get-symbol-description": { - "version": "1.0.0", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/fill-range": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", + "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", + "extraneous": true, "dependencies": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.1.1" + "to-regex-range": "^5.0.1" }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=8" } }, - "../../../service/node_modules/get-value": { - "version": "2.0.6", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/finalhandler": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.3.1.tgz", + "integrity": "sha512-6BN9trH7bp3qvnrRyzsBz+g3lZxTNZTbVO2EV1CS0WIcDbawYVdYvGflME/9QP0h0pYlCDBCTjYa9nZzMDpyxQ==", "license": "MIT", "peer": true, + "dependencies": { + "debug": "2.6.9", + "encodeurl": "~2.0.0", + "escape-html": "~1.0.3", + "on-finished": "2.4.1", + "parseurl": "~1.3.3", + "statuses": "2.0.1", + "unpipe": "~1.0.0" + }, "engines": { - "node": ">=0.10.0" + "node": ">= 0.8" } }, - "../../../service/node_modules/getpass": { - "version": "0.1.7", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/finalhandler/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", "license": "MIT", "peer": true, "dependencies": { - "assert-plus": "^1.0.0" + "ms": "2.0.0" } }, - "../../../service/node_modules/github-from-package": { - "version": "0.0.0", + "node_modules/@ngageoint/mage.service/node_modules/finalhandler/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", "license": "MIT", "peer": true }, - "../../../service/node_modules/glob": { - "version": "7.2.3", - "license": "ISC", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/find-cache-dir": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-3.3.2.tgz", + "integrity": "sha512-wXZV5emFEjrridIgED11OoUKLxiYjAcqot/NJdAkOhlJ+vGzwhOAfcG5OX1jP+S0PcjEn8bdMJv+g2jwQ3Onig==", + "extraneous": true, + "license": "MIT", "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" + "commondir": "^1.0.1", + "make-dir": "^3.0.2", + "pkg-dir": "^4.1.0" }, "engines": { - "node": "*" + "node": ">=8" }, "funding": { - "url": "https://github.com/sponsors/isaacs" + "url": "https://github.com/avajs/find-cache-dir?sponsor=1" } }, - "../../../service/node_modules/glob-parent": { - "version": "5.1.2", - "dev": true, - "license": "ISC", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/find-up": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "extraneous": true, "dependencies": { - "is-glob": "^4.0.1" + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" }, "engines": { - "node": ">= 6" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "../../../service/node_modules/glob-to-regexp": { - "version": "0.3.0", - "dev": true, - "license": "BSD", - "peer": true + "node_modules/@ngageoint/mage.service/node_modules/flat": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/flat/-/flat-5.0.2.tgz", + "integrity": "sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ==", + "extraneous": true, + "bin": { + "flat": "cli.js" + } }, - "../../../service/node_modules/globals": { - "version": "12.4.0", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/flat-cache": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.2.0.tgz", + "integrity": "sha512-CYcENa+FtcUKLmhhqyctpclsq7QF38pKjZHsGNiSQF5r4FtoKDWabFDl3hzaEQMvT1LHEysw5twgLvpYYb4vbw==", + "extraneous": true, "dependencies": { - "type-fest": "^0.8.1" + "flatted": "^3.2.9", + "keyv": "^4.5.3", + "rimraf": "^3.0.2" }, "engines": { - "node": ">=8" + "node": "^10.12.0 || >=12.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/flat-cache/node_modules/rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "deprecated": "Rimraf versions prior to v4 are no longer supported", + "extraneous": true, + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://github.com/sponsors/isaacs" } }, - "../../../service/node_modules/globby": { - "version": "9.2.0", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/flatted": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.3.1.tgz", + "integrity": "sha512-X8cqMLLie7KsNUDSdzeN8FYK9rEt4Dt67OsG/DNGnYTSDBG4uFAJFBnUeiV+zCVAvwFy56IjM9sH51jVaEhNxw==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/follow-redirects": { + "version": "1.15.9", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.9.tgz", + "integrity": "sha512-gew4GsXizNgdoRyqmyfMHyAmXsZDk6mHkSxZFCzW9gwlbtOW44CDtYavM+y+72qD/Vq2l550kMF52DT8fOLJqQ==", + "extraneous": true, + "funding": [ + { + "type": "individual", + "url": "https://github.com/sponsors/RubenVerborgh" + } + ], "license": "MIT", - "peer": true, - "dependencies": { - "@types/glob": "^7.1.1", - "array-union": "^1.0.2", - "dir-glob": "^2.2.2", - "fast-glob": "^2.2.6", - "glob": "^7.1.3", - "ignore": "^4.0.3", - "pify": "^4.0.1", - "slash": "^2.0.0" - }, "engines": { - "node": ">=6" + "node": ">=4.0" + }, + "peerDependenciesMeta": { + "debug": { + "optional": true + } } }, - "../../../service/node_modules/gm": { - "version": "1.23.1", - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/for-each": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.3.tgz", + "integrity": "sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==", + "extraneous": true, "dependencies": { - "array-parallel": "~0.1.3", - "array-series": "~0.1.5", - "cross-spawn": "^4.0.0", - "debug": "^3.1.0" - }, - "engines": { - "node": ">= 0.10.0" + "is-callable": "^1.1.3" } }, - "../../../service/node_modules/gm/node_modules/cross-spawn": { - "version": "4.0.2", - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/foreachasync": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/foreachasync/-/foreachasync-3.0.0.tgz", + "integrity": "sha512-J+ler7Ta54FwwNcx6wQRDhTIbNeyDcARMkOcguEqnEdtm0jKvN3Li3PDAb2Du3ubJYEWfYL83XMROXdsXAXycw==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/foreground-child": { + "version": "1.5.6", + "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-1.5.6.tgz", + "integrity": "sha512-3TOY+4TKV0Ml83PXJQY+JFQaHNV38lzQDIzzXYg1kWdBLenGgoZhAs0CKgzI31vi2pWEpQMq/Yi4bpKwCPkw7g==", + "extraneous": true, "dependencies": { - "lru-cache": "^4.0.1", - "which": "^1.2.9" + "cross-spawn": "^4", + "signal-exit": "^3.0.0" } }, - "../../../service/node_modules/gm/node_modules/debug": { - "version": "3.2.7", - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/foreground-child/node_modules/cross-spawn": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-4.0.2.tgz", + "integrity": "sha512-yAXz/pA1tD8Gtg2S98Ekf/sewp3Lcp3YoFKJ4Hkp5h5yLWnKVTDU0kwjKJ8NDCYcfTLfyGkzTikst+jWypT1iA==", + "extraneous": true, "dependencies": { - "ms": "^2.1.1" + "lru-cache": "^4.0.1", + "which": "^1.2.9" } }, - "../../../service/node_modules/gm/node_modules/lru-cache": { + "node_modules/@ngageoint/mage.service/node_modules/foreground-child/node_modules/lru-cache": { "version": "4.1.5", - "license": "ISC", - "peer": true, + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz", + "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==", + "extraneous": true, "dependencies": { "pseudomap": "^1.0.2", "yallist": "^2.1.2" } }, - "../../../service/node_modules/gm/node_modules/yallist": { - "version": "2.1.2", - "license": "ISC", - "peer": true - }, - "../../../service/node_modules/gopd": { - "version": "1.0.1", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/foreground-child/node_modules/which": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "extraneous": true, "dependencies": { - "get-intrinsic": "^1.1.3" + "isexe": "^2.0.0" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "bin": { + "which": "bin/which" } }, - "../../../service/node_modules/graceful-fs": { - "version": "4.2.10", - "license": "ISC", - "peer": true - }, - "../../../service/node_modules/growl": { - "version": "1.10.5", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/forever-agent": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", + "integrity": "sha512-j0KLYPhm6zeac4lz3oJ3o65qvgQCcPubiyotZrXqEaG4hNagNYO8qdlUrX5vwqv9ohqeT/Z3j6+yW067yWWdUw==", + "extraneous": true, "engines": { - "node": ">=4.x" + "node": "*" } }, - "../../../service/node_modules/har-schema": { - "version": "2.0.0", - "dev": true, - "license": "ISC", + "node_modules/@ngageoint/mage.service/node_modules/form-data": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz", + "integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==", "peer": true, + "dependencies": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "mime-types": "^2.1.12" + }, "engines": { - "node": ">=4" + "node": ">= 6" } }, - "../../../service/node_modules/har-validator": { - "version": "5.1.5", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/formidable": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/formidable/-/formidable-2.1.2.tgz", + "integrity": "sha512-CM3GuJ57US06mlpQ47YcunuUZ9jpm8Vx+P2CGt2j7HpgkKZO/DJYQ0Bobim8G6PFQmK5lOqOOdUXboU+h73A4g==", "peer": true, "dependencies": { - "ajv": "^6.12.3", - "har-schema": "^2.0.0" + "dezalgo": "^1.0.4", + "hexoid": "^1.0.0", + "once": "^1.4.0", + "qs": "^6.11.0" }, - "engines": { - "node": ">=6" + "funding": { + "url": "https://ko-fi.com/tunnckoCore/commissions" } }, - "../../../service/node_modules/has": { - "version": "1.0.3", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/forwarded": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz", + "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==", "peer": true, - "dependencies": { - "function-bind": "^1.1.1" - }, "engines": { - "node": ">= 0.4.0" + "node": ">= 0.6" } }, - "../../../service/node_modules/has-bigints": { - "version": "1.0.2", - "dev": true, - "license": "MIT", - "peer": true, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "../../../service/node_modules/has-flag": { - "version": "4.0.0", + "node_modules/@ngageoint/mage.service/node_modules/fresh": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", + "integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==", "license": "MIT", - "optional": true, "peer": true, "engines": { - "node": ">=8" + "node": ">= 0.6" } }, - "../../../service/node_modules/has-property-descriptors": { + "node_modules/@ngageoint/mage.service/node_modules/from": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/from/-/from-0.1.7.tgz", + "integrity": "sha512-twe20eF1OxVxp/ML/kq2p1uc6KvFK/+vs8WjEbeKmV2He22MKm7YF2ANIt+EOqhJ5L3K/SuuPhk0hWQDjOM23g==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/fs-constants": { "version": "1.0.0", - "dev": true, - "license": "MIT", + "resolved": "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz", + "integrity": "sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/fs-extra": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-4.0.3.tgz", + "integrity": "sha512-q6rbdDd1o2mAnQreO7YADIxf/Whx4AHBiRf6d+/cVT8h44ss+lHgxf1FemcqDnQt9X3ct4McHr+JMGlYSsK7Cg==", "peer": true, "dependencies": { - "get-intrinsic": "^1.1.1" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "graceful-fs": "^4.1.2", + "jsonfile": "^4.0.0", + "universalify": "^0.1.0" } }, - "../../../service/node_modules/has-symbols": { - "version": "1.0.3", + "node_modules/@ngageoint/mage.service/node_modules/fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/fsevents": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", + "extraneous": true, + "hasInstallScript": true, "license": "MIT", - "peer": true, + "os": [ + "darwin" + ], "engines": { - "node": ">= 0.4" - }, + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/function-bind": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", + "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", + "peer": true, "funding": { "url": "https://github.com/sponsors/ljharb" } }, - "../../../service/node_modules/has-tostringtag": { - "version": "1.0.0", - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/function.prototype.name": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.6.tgz", + "integrity": "sha512-Z5kx79swU5P27WEayXM1tBi5Ze/lbIyiNgU3qyXUOf9b2rgXYyF9Dy9Cx+IQv/Lc8WCG6L82zwUPpSS9hGehIg==", + "extraneous": true, "dependencies": { - "has-symbols": "^1.0.2" + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1", + "functions-have-names": "^1.2.3" }, "engines": { "node": ">= 0.4" @@ -6521,448 +7416,513 @@ "url": "https://github.com/sponsors/ljharb" } }, - "../../../service/node_modules/has-unicode": { - "version": "2.0.1", - "license": "ISC", - "peer": true + "node_modules/@ngageoint/mage.service/node_modules/functions-have-names": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz", + "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==", + "extraneous": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, - "../../../service/node_modules/has-value": { - "version": "1.0.0", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/geojson": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/geojson/-/geojson-0.5.0.tgz", + "integrity": "sha512-/Bx5lEn+qRF4TfQ5aLu6NH+UKtvIv7Lhc487y/c8BdludrCTpiWf9wyI0RTyqg49MFefIAvFDuEi5Dfd/zgNxQ==", "peer": true, - "dependencies": { - "get-value": "^2.0.6", - "has-values": "^1.0.0", - "isobject": "^3.0.0" - }, "engines": { - "node": ">=0.10.0" + "node": ">= 0.10" } }, - "../../../service/node_modules/has-values": { - "version": "1.0.0", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/geojson-rbush": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/geojson-rbush/-/geojson-rbush-3.2.0.tgz", + "integrity": "sha512-oVltQTXolxvsz1sZnutlSuLDEcQAKYC/uXt9zDzJJ6bu0W+baTI8LZBaTup5afzibEH4N3jlq2p+a152wlBJ7w==", "peer": true, "dependencies": { - "is-number": "^3.0.0", - "kind-of": "^4.0.0" - }, - "engines": { - "node": ">=0.10.0" + "@turf/bbox": "*", + "@turf/helpers": "6.x", + "@turf/meta": "6.x", + "@types/geojson": "7946.0.8", + "rbush": "^3.0.1" } }, - "../../../service/node_modules/has-values/node_modules/is-buffer": { - "version": "1.1.6", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/geojson-rbush/node_modules/@types/geojson": { + "version": "7946.0.8", + "resolved": "https://registry.npmjs.org/@types/geojson/-/geojson-7946.0.8.tgz", + "integrity": "sha512-1rkryxURpr6aWP7R786/UQOkJ3PcpQiWkAXBmdWc7ryFWqN6a4xfK7BtjXvFBKO9LjQ+MWQSWxYeZX1OApnArA==", "peer": true }, - "../../../service/node_modules/has-values/node_modules/kind-of": { - "version": "4.0.0", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "is-buffer": "^1.1.5" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "../../../service/node_modules/hash-base": { - "version": "3.1.0", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/geojson-stream": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/geojson-stream/-/geojson-stream-0.1.0.tgz", + "integrity": "sha512-svSg5fFXPaTiqzEBGXScA+nISaeC9rLvku2PH+wM5LToATUw2bLIrvls43ymnT9Xnp51nBPVyK9m4Af40KpJ7w==", "peer": true, "dependencies": { - "inherits": "^2.0.4", - "readable-stream": "^3.6.0", - "safe-buffer": "^5.2.0" - }, - "engines": { - "node": ">=4" + "JSONStream": "^1.0.0", + "through": "^2.3.4" } }, - "../../../service/node_modules/hash.js": { - "version": "1.1.7", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/geojson-validation": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/geojson-validation/-/geojson-validation-1.0.2.tgz", + "integrity": "sha512-K5jrJ4wFvORn2pRKeg181LL0QPYuEKn2KHPvfH1m2QtFlAXFLKdseqt0XwBM3ELOY7kNM1fglRQ6ZwUQZ5S00A==", "peer": true, - "dependencies": { - "inherits": "^2.0.3", - "minimalistic-assert": "^1.0.1" + "bin": { + "gjv": "bin/gjv" } }, - "../../../service/node_modules/hasha": { - "version": "3.0.0", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "is-stream": "^1.0.1" - }, + "node_modules/@ngageoint/mage.service/node_modules/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==", + "extraneous": true, "engines": { - "node": ">=4" + "node": "6.* || 8.* || >= 10.*" } }, - "../../../service/node_modules/he": { - "version": "1.2.0", - "dev": true, - "license": "MIT", - "peer": true, - "bin": { - "he": "bin/he" + "node_modules/@ngageoint/mage.service/node_modules/get-func-name": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/get-func-name/-/get-func-name-2.0.2.tgz", + "integrity": "sha512-8vXOvuE167CtIc3OyItco7N/dpRtBbYOsPsXCz7X/PMnlGjYjSGuZJgM1Y7mmew7BKf9BqvLX2tnOVy1BBUsxQ==", + "extraneous": true, + "engines": { + "node": "*" } }, - "../../../service/node_modules/hexoid": { - "version": "1.0.0", + "node_modules/@ngageoint/mage.service/node_modules/get-intrinsic": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.3.0.tgz", + "integrity": "sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ==", "license": "MIT", "peer": true, + "dependencies": { + "call-bind-apply-helpers": "^1.0.2", + "es-define-property": "^1.0.1", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.1.1", + "function-bind": "^1.1.2", + "get-proto": "^1.0.1", + "gopd": "^1.2.0", + "has-symbols": "^1.1.0", + "hasown": "^2.0.2", + "math-intrinsics": "^1.1.0" + }, "engines": { - "node": ">=8" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "../../../service/node_modules/hmac-drbg": { + "node_modules/@ngageoint/mage.service/node_modules/get-proto": { "version": "1.0.1", + "resolved": "https://registry.npmjs.org/get-proto/-/get-proto-1.0.1.tgz", + "integrity": "sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==", "license": "MIT", "peer": true, "dependencies": { - "hash.js": "^1.0.3", - "minimalistic-assert": "^1.0.0", - "minimalistic-crypto-utils": "^1.0.1" + "dunder-proto": "^1.0.1", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" } }, - "../../../service/node_modules/hosted-git-info": { - "version": "2.8.9", - "dev": true, - "license": "ISC", - "peer": true - }, - "../../../service/node_modules/html-escaper": { - "version": "2.0.2", - "dev": true, - "license": "MIT", - "peer": true + "node_modules/@ngageoint/mage.service/node_modules/get-stdin": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-6.0.0.tgz", + "integrity": "sha512-jp4tHawyV7+fkkSKyvjuLZswblUtz+SQKzSWnBbii16BuZksJlU1wuBYXY75r+duh/llF1ur6oNwi+2ZzjKZ7g==", + "extraneous": true, + "engines": { + "node": ">=4" + } }, - "../../../service/node_modules/http-errors": { - "version": "1.6.3", - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/get-symbol-description": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.2.tgz", + "integrity": "sha512-g0QYk1dZBxGwk+Ngc+ltRH2IBp2f7zBkBMBJZCDerh6EhlhSR6+9irMCuT/09zD6qkarHUSn529sK/yL4S27mg==", + "extraneous": true, "dependencies": { - "depd": "~1.1.2", - "inherits": "2.0.3", - "setprototypeof": "1.1.0", - "statuses": ">= 1.4.0 < 2" + "call-bind": "^1.0.5", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.4" }, "engines": { - "node": ">= 0.6" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "../../../service/node_modules/http-errors/node_modules/inherits": { - "version": "2.0.3", - "license": "ISC", - "peer": true + "node_modules/@ngageoint/mage.service/node_modules/getpass": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", + "integrity": "sha512-0fzj9JxOLfJ+XGLhR8ze3unN0KZCgZwiSSDz168VERjK8Wl8kVSdcu2kspd4s4wtAa1y/qrVRiAA0WclVsu0ng==", + "extraneous": true, + "dependencies": { + "assert-plus": "^1.0.0" + } }, - "../../../service/node_modules/http-errors/node_modules/setprototypeof": { - "version": "1.1.0", - "license": "ISC", + "node_modules/@ngageoint/mage.service/node_modules/github-from-package": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/github-from-package/-/github-from-package-0.0.0.tgz", + "integrity": "sha512-SyHy3T1v2NUXn29OsWdxmK6RwHD+vkj3v8en8AOBZ1wBQ/hCAQ5bAQTD02kW4W9tUp/3Qh6J8r9EvntiyCmOOw==", + "optional": true, "peer": true }, - "../../../service/node_modules/http-signature": { - "version": "1.2.0", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "deprecated": "Glob versions prior to v9 are no longer supported", "peer": true, "dependencies": { - "assert-plus": "^1.0.0", - "jsprim": "^1.2.2", - "sshpk": "^1.7.0" + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" }, "engines": { - "node": ">=0.8", - "npm": ">=1.3.7" - } - }, - "../../../service/node_modules/https-proxy-agent": { - "version": "5.0.1", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "agent-base": "6", - "debug": "4" + "node": "*" }, - "engines": { - "node": ">= 6" + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "../../../service/node_modules/iconv-lite": { - "version": "0.5.2", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/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==", + "extraneous": true, "dependencies": { - "safer-buffer": ">= 2.1.2 < 3" + "is-glob": "^4.0.3" }, "engines": { - "node": ">=0.10.0" + "node": ">=10.13.0" } }, - "../../../service/node_modules/ieee754": { - "version": "1.2.1", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "license": "BSD-3-Clause", - "peer": true - }, - "../../../service/node_modules/ignore": { - "version": "4.0.6", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/glob/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", "peer": true, - "engines": { - "node": ">= 4" + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" } }, - "../../../service/node_modules/image-size": { - "version": "0.8.3", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/glob/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", "peer": true, "dependencies": { - "queue": "6.0.1" - }, - "bin": { - "image-size": "bin/image-size.js" + "brace-expansion": "^1.1.7" }, "engines": { - "node": ">=6.9.0" + "node": "*" } }, - "../../../service/node_modules/immediate": { - "version": "3.0.6", - "dev": true, - "license": "MIT", - "peer": true - }, - "../../../service/node_modules/import-fresh": { - "version": "3.3.0", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/globals": { + "version": "13.24.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.24.0.tgz", + "integrity": "sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==", + "extraneous": true, "dependencies": { - "parent-module": "^1.0.0", - "resolve-from": "^4.0.0" + "type-fest": "^0.20.2" }, "engines": { - "node": ">=6" + "node": ">=8" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "../../../service/node_modules/imurmurhash": { - "version": "0.1.4", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/globalthis": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.4.tgz", + "integrity": "sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ==", + "extraneous": true, + "dependencies": { + "define-properties": "^1.2.1", + "gopd": "^1.0.1" + }, "engines": { - "node": ">=0.8.19" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "../../../service/node_modules/indent-string": { - "version": "3.2.0", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/globby": { + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz", + "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==", + "extraneous": true, "license": "MIT", - "peer": true, + "dependencies": { + "array-union": "^2.1.0", + "dir-glob": "^3.0.1", + "fast-glob": "^3.2.9", + "ignore": "^5.2.0", + "merge2": "^1.4.1", + "slash": "^3.0.0" + }, "engines": { - "node": ">=4" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "../../../service/node_modules/inflight": { - "version": "1.0.6", - "license": "ISC", + "node_modules/@ngageoint/mage.service/node_modules/gopd": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.2.0.tgz", + "integrity": "sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==", + "license": "MIT", "peer": true, - "dependencies": { - "once": "^1.3.0", - "wrappy": "1" + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "../../../service/node_modules/inherit": { - "version": "2.2.7", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/graceful-fs": { + "version": "4.2.11", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", + "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==", "peer": true }, - "../../../service/node_modules/inherits": { - "version": "2.0.4", - "license": "ISC", - "peer": true + "node_modules/@ngageoint/mage.service/node_modules/graphemer": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/graphemer/-/graphemer-1.4.0.tgz", + "integrity": "sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==", + "extraneous": true }, - "../../../service/node_modules/ini": { - "version": "1.3.8", - "license": "ISC", - "peer": true + "node_modules/@ngageoint/mage.service/node_modules/har-schema": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz", + "integrity": "sha512-Oqluz6zhGX8cyRaTQlFMPw80bSJVG2x/cFb8ZPhUILGgHka9SsokCCOQgpveePerqidZOrT14ipqfJb7ILcW5Q==", + "extraneous": true, + "engines": { + "node": ">=4" + } }, - "../../../service/node_modules/inquirer": { - "version": "8.0.0", - "license": "MIT", - "optional": true, - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/har-validator": { + "version": "5.1.5", + "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.5.tgz", + "integrity": "sha512-nmT2T0lljbxdQZfspsno9hgrG3Uir6Ks5afism62poxqBM6sDnMEuPmzTq8XN0OEwqKLLdh1jQI3qyE66Nzb3w==", + "deprecated": "this library is no longer supported", + "extraneous": true, "dependencies": { - "ansi-escapes": "^4.2.1", - "chalk": "^4.1.0", - "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", - "run-async": "^2.4.0", - "rxjs": "^6.6.6", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0", - "through": "^2.3.6" + "ajv": "^6.12.3", + "har-schema": "^2.0.0" }, "engines": { - "node": ">=8.0.0" + "node": ">=6" } }, - "../../../service/node_modules/inquirer/node_modules/ansi-regex": { - "version": "5.0.1", - "license": "MIT", - "optional": true, + "node_modules/@ngageoint/mage.service/node_modules/has-bigints": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz", + "integrity": "sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==", + "extraneous": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/has-color": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/has-color/-/has-color-0.1.7.tgz", + "integrity": "sha512-kaNz5OTAYYmt646Hkqw50/qyxP2vFnTVu5AQ1Zmk22Kk5+4Qx6BpO8+u7IKsML5fOsFk0ZT0AcCJNYwcvaLBvw==", "peer": true, "engines": { - "node": ">=8" + "node": ">=0.10.0" } }, - "../../../service/node_modules/inquirer/node_modules/strip-ansi": { - "version": "6.0.1", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", "optional": true, "peer": true, - "dependencies": { - "ansi-regex": "^5.0.1" - }, "engines": { "node": ">=8" } }, - "../../../service/node_modules/internal-slot": { - "version": "1.0.3", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/has-property-descriptors": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz", + "integrity": "sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==", "peer": true, "dependencies": { - "get-intrinsic": "^1.1.0", - "has": "^1.0.3", - "side-channel": "^1.0.4" + "es-define-property": "^1.0.0" }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/has-proto": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.3.tgz", + "integrity": "sha512-SJ1amZAJUiZS+PhsVLf5tGydlaVB8EdFpaSO4gmiUKUOxk8qzn5AIy4ZeJUmh22znIdk/uMAUT2pl3FxzVUH+Q==", + "extraneous": true, "engines": { "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "../../../service/node_modules/ip": { - "version": "2.0.0", - "license": "MIT", - "peer": true - }, - "../../../service/node_modules/ipaddr.js": { - "version": "1.9.1", + "node_modules/@ngageoint/mage.service/node_modules/has-symbols": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.1.0.tgz", + "integrity": "sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==", "license": "MIT", "peer": true, "engines": { - "node": ">= 0.10" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "../../../service/node_modules/is-accessor-descriptor": { - "version": "1.0.0", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/has-tostringtag": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.2.tgz", + "integrity": "sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==", "peer": true, "dependencies": { - "kind-of": "^6.0.0" + "has-symbols": "^1.0.3" }, "engines": { - "node": ">=0.10.0" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "../../../service/node_modules/is-arguments": { - "version": "1.1.1", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/hasha": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/hasha/-/hasha-3.0.0.tgz", + "integrity": "sha512-w0Kz8lJFBoyaurBiNrIvxPqr/gJ6fOfSkpAPOepN3oECqGJag37xPbOv57izi/KP8auHgNYxn5fXtAb+1LsJ6w==", + "extraneous": true, + "dependencies": { + "is-stream": "^1.0.1" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/hasown": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", + "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", "peer": true, "dependencies": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" + "function-bind": "^1.1.2" }, "engines": { "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" } }, - "../../../service/node_modules/is-arrayish": { - "version": "0.2.1", - "dev": true, - "license": "MIT", - "peer": true + "node_modules/@ngageoint/mage.service/node_modules/he": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz", + "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==", + "extraneous": true, + "bin": { + "he": "bin/he" + } }, - "../../../service/node_modules/is-bigint": { - "version": "1.0.4", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/hexoid": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/hexoid/-/hexoid-1.0.0.tgz", + "integrity": "sha512-QFLV0taWQOZtvIRIAdBChesmogZrtuXvVWsFHZTk2SU+anspqZ2vMnoLg7IE1+Uk16N19APic1BuF8bC8c2m5g==", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/hosted-git-info": { + "version": "2.8.9", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz", + "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/html-escaper": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", + "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/http-errors": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", + "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==", "license": "MIT", "peer": true, "dependencies": { - "has-bigints": "^1.0.1" + "depd": "2.0.0", + "inherits": "2.0.4", + "setprototypeof": "1.2.0", + "statuses": "2.0.1", + "toidentifier": "1.0.1" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "engines": { + "node": ">= 0.8" } }, - "../../../service/node_modules/is-binary-path": { - "version": "2.1.0", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/http-signature": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", + "integrity": "sha512-CAbnr6Rz4CYQkLYUtSNXxQPUH2gK8f3iWexVlsnMeD+GjlsQ0Xsy1cOX+mN3dtxYomRy21CiOzU8Uhw6OwncEQ==", + "extraneous": true, "dependencies": { - "binary-extensions": "^2.0.0" + "assert-plus": "^1.0.0", + "jsprim": "^1.2.2", + "sshpk": "^1.7.0" }, "engines": { - "node": ">=8" + "node": ">=0.8", + "npm": ">=1.3.7" } }, - "../../../service/node_modules/is-boolean-object": { - "version": "1.1.2", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/https-proxy-agent": { + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.6.tgz", + "integrity": "sha512-vK9P5/iUfdl95AI+JVyUuIcVtd4ofvtrOr3HNtM2yxC9bnMbEdp3x01OhQNnjb8IJYi38VlTE3mBXwcfvywuSw==", + "extraneous": true, "license": "MIT", - "peer": true, "dependencies": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" + "agent-base": "^7.1.2", + "debug": "4" }, "engines": { - "node": ">= 0.4" + "node": ">= 14" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/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==", + "extraneous": true, + "license": "MIT", + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3.0.0" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "engines": { + "node": ">=0.10.0" } }, - "../../../service/node_modules/is-buffer": { - "version": "2.0.5", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/ieee754": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", + "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", "funding": [ { "type": "github", @@ -6977,132 +7937,173 @@ "url": "https://feross.org/support" } ], - "license": "MIT", - "peer": true, - "engines": { - "node": ">=4" - } + "peer": true }, - "../../../service/node_modules/is-callable": { - "version": "1.2.7", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/ignore": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.1.tgz", + "integrity": "sha512-5Fytz/IraMjqpwfd34ke28PTVMjZjJG2MPn5t7OE4eUCUNf8BAa7b5WUS9/Qvr6mwOQS7Mk6vdsMno5he+T8Xw==", + "extraneous": true, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">= 4" } }, - "../../../service/node_modules/is-core-module": { - "version": "2.11.0", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/image-size": { + "version": "0.8.3", + "resolved": "https://registry.npmjs.org/image-size/-/image-size-0.8.3.tgz", + "integrity": "sha512-SMtq1AJ+aqHB45c3FsB4ERK0UCiA2d3H1uq8s+8T0Pf8A3W4teyBQyaFaktH6xvZqh+npwlKU7i4fJo0r7TYTg==", "peer": true, "dependencies": { - "has": "^1.0.3" + "queue": "6.0.1" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "../../../service/node_modules/is-data-descriptor": { - "version": "1.0.0", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "kind-of": "^6.0.0" + "bin": { + "image-size": "bin/image-size.js" }, "engines": { - "node": ">=0.10.0" + "node": ">=6.9.0" } }, - "../../../service/node_modules/is-date-object": { - "version": "1.0.5", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/immediate": { + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/immediate/-/immediate-3.0.6.tgz", + "integrity": "sha512-XXOFtyqDjNDAQxVfYxuF7g9Il/IbWmmlQg2MYKOH8ExIT1qg6xc4zyS3HaEEATgs1btfzxq15ciUiY7gjSXRGQ==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/import-fresh": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", + "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", + "extraneous": true, "dependencies": { - "has-tostringtag": "^1.0.0" + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" }, "engines": { - "node": ">= 0.4" + "node": ">=6" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "url": "https://github.com/sponsors/sindresorhus" } }, - "../../../service/node_modules/is-descriptor": { - "version": "1.0.2", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - }, + "node_modules/@ngageoint/mage.service/node_modules/imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", + "extraneous": true, "engines": { - "node": ">=0.10.0" + "node": ">=0.8.19" } }, - "../../../service/node_modules/is-expression": { - "version": "3.0.0", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/indent-string": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-5.0.0.tgz", + "integrity": "sha512-m6FAo/spmsW2Ab2fU35JTYwtOKa2yAwXSwgjSv1TJzh4Mh7mC3lzAOVLBprb72XsTrgkEIsl7YrFNAiDiRhIGg==", + "extraneous": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "deprecated": "This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.", "peer": true, "dependencies": { - "acorn": "~4.0.2", - "object-assign": "^4.0.1" + "once": "^1.3.0", + "wrappy": "1" } }, - "../../../service/node_modules/is-expression/node_modules/acorn": { - "version": "4.0.13", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/ini": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", + "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==", + "optional": true, + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/inquirer": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-8.0.0.tgz", + "integrity": "sha512-ON8pEJPPCdyjxj+cxsYRe6XfCJepTxANdNnTebsTuQgXpRyZRRT9t4dJwjRubgmvn20CLSEnozRUayXyM9VTXA==", + "optional": true, "peer": true, - "bin": { - "acorn": "bin/acorn" + "dependencies": { + "ansi-escapes": "^4.2.1", + "chalk": "^4.1.0", + "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", + "run-async": "^2.4.0", + "rxjs": "^6.6.6", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0", + "through": "^2.3.6" }, "engines": { - "node": ">=0.4.0" + "node": ">=8.0.0" } }, - "../../../service/node_modules/is-extendable": { - "version": "1.0.1", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/internal-slot": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.7.tgz", + "integrity": "sha512-NGnrKwXzSms2qUUih/ILZ5JBqNTSa1+ZmP6flaIp6KmSElgE9qdndzS3cqjrDovwFdmwsGsLdeFgB6suw+1e9g==", + "extraneous": true, "dependencies": { - "is-plain-object": "^2.0.4" + "es-errors": "^1.3.0", + "hasown": "^2.0.0", + "side-channel": "^1.0.4" }, "engines": { - "node": ">=0.10.0" + "node": ">= 0.4" } }, - "../../../service/node_modules/is-extglob": { - "version": "2.1.1", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/ip-address": { + "version": "9.0.5", + "resolved": "https://registry.npmjs.org/ip-address/-/ip-address-9.0.5.tgz", + "integrity": "sha512-zHtQzGojZXTwZTHQqra+ETKd4Sn3vgi7uBmlPoXVWZqYvuKmtI0l/VZTjqGmJY9x88GGOaZ9+G9ES8hC4T4X8g==", "peer": true, + "dependencies": { + "jsbn": "1.1.0", + "sprintf-js": "^1.1.3" + }, "engines": { - "node": ">=0.10.0" + "node": ">= 12" } }, - "../../../service/node_modules/is-fullwidth-code-point": { - "version": "3.0.0", - "devOptional": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/ip-address/node_modules/sprintf-js": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.1.3.tgz", + "integrity": "sha512-Oo+0REFV59/rz3gfJNKQiBlwfHaSESl1pcGyABQsnnIfWOFt6JNj5gCog2U6MLZ//IGYD+nA8nI+mTShREReaA==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/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==", "peer": true, "engines": { - "node": ">=8" + "node": ">= 0.10" } }, - "../../../service/node_modules/is-generator-function": { - "version": "1.0.10", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/is-arguments": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-arguments/-/is-arguments-1.1.1.tgz", + "integrity": "sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA==", + "extraneous": true, "dependencies": { + "call-bind": "^1.0.2", "has-tostringtag": "^1.0.0" }, "engines": { @@ -7112,35 +8113,61 @@ "url": "https://github.com/sponsors/ljharb" } }, - "../../../service/node_modules/is-glob": { - "version": "4.0.3", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/is-array-buffer": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.4.tgz", + "integrity": "sha512-wcjaerHw0ydZwfhiKbXJWLDY8A7yV7KhjQOpb83hGgGfId/aQa4TOvwyzn2PuswW2gPCYEL/nEAiSVpdOj1lXw==", + "extraneous": true, "dependencies": { - "is-extglob": "^2.1.1" + "call-bind": "^1.0.2", + "get-intrinsic": "^1.2.1" }, "engines": { - "node": ">=0.10.0" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "../../../service/node_modules/is-map": { - "version": "2.0.2", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/is-arrayish": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/is-bigint": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz", + "integrity": "sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==", + "extraneous": true, + "dependencies": { + "has-bigints": "^1.0.1" + }, "funding": { "url": "https://github.com/sponsors/ljharb" } }, - "../../../service/node_modules/is-nan": { - "version": "1.3.2", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/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==", + "extraneous": true, "license": "MIT", - "peer": true, "dependencies": { - "call-bind": "^1.0.0", - "define-properties": "^1.1.3" + "binary-extensions": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/is-boolean-object": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz", + "integrity": "sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==", + "extraneous": true, + "dependencies": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" }, "engines": { "node": ">= 0.4" @@ -7149,11 +8176,11 @@ "url": "https://github.com/sponsors/ljharb" } }, - "../../../service/node_modules/is-negative-zero": { - "version": "2.0.2", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/is-callable": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz", + "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==", + "extraneous": true, "engines": { "node": ">= 0.4" }, @@ -7161,25 +8188,28 @@ "url": "https://github.com/sponsors/ljharb" } }, - "../../../service/node_modules/is-number": { - "version": "3.0.0", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/is-core-module": { + "version": "2.14.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.14.0.tgz", + "integrity": "sha512-a5dFJih5ZLYlRtDc0dZWP7RiKr6xIKzmn/oAYCDvdLThadVgyJwlaoQPmRtMSpz+rk0OGAgIu+TcM9HUF0fk1A==", "peer": true, "dependencies": { - "kind-of": "^3.0.2" + "hasown": "^2.0.2" }, "engines": { - "node": ">=0.10.0" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "../../../service/node_modules/is-number-object": { - "version": "1.0.7", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/is-data-view": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-data-view/-/is-data-view-1.0.1.tgz", + "integrity": "sha512-AHkaJrsUVW6wq6JS8y3JnM/GJF/9cf+k20+iDzlSaJrinEo5+7vRiteOSwBhHRiAyQATN1AmY4hwzxJKPmYf+w==", + "extraneous": true, "dependencies": { - "has-tostringtag": "^1.0.0" + "is-typed-array": "^1.1.13" }, "engines": { "node": ">= 0.4" @@ -7188,62 +8218,159 @@ "url": "https://github.com/sponsors/ljharb" } }, - "../../../service/node_modules/is-number/node_modules/is-buffer": { - "version": "1.1.6", - "dev": true, - "license": "MIT", - "peer": true + "node_modules/@ngageoint/mage.service/node_modules/is-date-object": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz", + "integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==", + "extraneous": true, + "dependencies": { + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, - "../../../service/node_modules/is-number/node_modules/kind-of": { - "version": "3.2.2", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/is-expression": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/is-expression/-/is-expression-4.0.0.tgz", + "integrity": "sha512-zMIXX63sxzG3XrkHkrAPvm/OVZVSCPNkwMHU8oTX7/U3AL78I0QXCEICXUM13BIa8TYGZ68PiTKfQz3yaTNr4A==", "peer": true, "dependencies": { - "is-buffer": "^1.1.5" + "acorn": "^7.1.1", + "object-assign": "^4.1.1" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/is-expression/node_modules/acorn": { + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", + "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", + "peer": true, + "bin": { + "acorn": "bin/acorn" }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", + "extraneous": true, "engines": { "node": ">=0.10.0" } }, - "../../../service/node_modules/is-object": { - "version": "1.0.2", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/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==", + "optional": true, "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/is-glob": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "extraneous": true, + "dependencies": { + "is-extglob": "^2.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/is-map": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/is-map/-/is-map-2.0.3.tgz", + "integrity": "sha512-1Qed0/Hr2m+YqxnM09CjA2d/i6YZNfF6R2oRAOj36eUdS6qIV/huPJNSEpKbupewFs+ZsJlxsjjPbc0/afW6Lw==", + "extraneous": true, + "engines": { + "node": ">= 0.4" + }, "funding": { "url": "https://github.com/sponsors/ljharb" } }, - "../../../service/node_modules/is-plain-obj": { - "version": "1.1.0", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/is-negative-zero": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.3.tgz", + "integrity": "sha512-5KoIu2Ngpyek75jXodFvnafB6DJgr3u8uuK0LEZJjrU19DrMD3EVERaR8sjz8CCGgpZvxPl9SuE1GMVPFHx1mw==", + "extraneous": true, "engines": { - "node": ">=0.10.0" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "../../../service/node_modules/is-plain-object": { - "version": "2.0.4", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "extraneous": true, + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/is-number-object": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.7.tgz", + "integrity": "sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==", + "extraneous": true, "dependencies": { - "isobject": "^3.0.1" + "has-tostringtag": "^1.0.0" }, "engines": { - "node": ">=0.10.0" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/is-object": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-object/-/is-object-1.0.2.tgz", + "integrity": "sha512-2rRIahhZr2UWb45fIOuvZGpFtz0TyOZLf32KxBbSoUCeZR495zCKlWUKKUByk3geS2eAs7ZAABt0Y/Rx0GiQGA==", + "extraneous": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/is-path-inside": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", + "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==", + "extraneous": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/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==", + "extraneous": true, + "engines": { + "node": ">=8" } }, - "../../../service/node_modules/is-promise": { + "node_modules/@ngageoint/mage.service/node_modules/is-promise": { "version": "2.2.2", - "license": "MIT", + "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-2.2.2.tgz", + "integrity": "sha512-+lP4/6lKUBfQjZ2pdxThZvLUAafmZb8OAxFb8XXtiQmS35INgr85hdOGoEs124ez1FCnZJt6jau/T+alh58QFQ==", "peer": true }, - "../../../service/node_modules/is-regex": { + "node_modules/@ngageoint/mage.service/node_modules/is-regex": { "version": "1.1.4", - "license": "MIT", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz", + "integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==", "peer": true, "dependencies": { "call-bind": "^1.0.2", @@ -7256,41 +8383,47 @@ "url": "https://github.com/sponsors/ljharb" } }, - "../../../service/node_modules/is-set": { - "version": "2.0.2", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/is-set": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/is-set/-/is-set-2.0.3.tgz", + "integrity": "sha512-iPAjerrse27/ygGLxw+EBR9agv9Y6uLeYVJMu+QNCoouJ1/1ri0mGrcWpfCqFZuzzx3WjtwxG098X+n4OuRkPg==", + "extraneous": true, + "engines": { + "node": ">= 0.4" + }, "funding": { "url": "https://github.com/sponsors/ljharb" } }, - "../../../service/node_modules/is-shared-array-buffer": { - "version": "1.0.2", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/is-shared-array-buffer": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.3.tgz", + "integrity": "sha512-nA2hv5XIhLR3uVzDDfCIknerhx8XUKnstuOERPNNIinXG7v9u+ohXF67vxm4TPTEPU6lm61ZkwP3c9PCB97rhg==", + "extraneous": true, "dependencies": { - "call-bind": "^1.0.2" + "call-bind": "^1.0.7" + }, + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" } }, - "../../../service/node_modules/is-stream": { + "node_modules/@ngageoint/mage.service/node_modules/is-stream": { "version": "1.1.0", - "dev": true, - "license": "MIT", - "peer": true, + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", + "integrity": "sha512-uQPm8kcs47jx38atAcWTVxyltQYoPT68y9aWYdV6yWXSyW8mzSat0TL6CiWdZeCdF3KrAvpVtnHbTv4RN+rqdQ==", + "extraneous": true, "engines": { "node": ">=0.10.0" } }, - "../../../service/node_modules/is-string": { + "node_modules/@ngageoint/mage.service/node_modules/is-string": { "version": "1.0.7", - "dev": true, - "license": "MIT", - "peer": true, + "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz", + "integrity": "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==", + "extraneous": true, "dependencies": { "has-tostringtag": "^1.0.0" }, @@ -7301,11 +8434,11 @@ "url": "https://github.com/sponsors/ljharb" } }, - "../../../service/node_modules/is-symbol": { + "node_modules/@ngageoint/mage.service/node_modules/is-symbol": { "version": "1.0.4", - "dev": true, - "license": "MIT", - "peer": true, + "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz", + "integrity": "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==", + "extraneous": true, "dependencies": { "has-symbols": "^1.0.2" }, @@ -7316,17 +8449,13 @@ "url": "https://github.com/sponsors/ljharb" } }, - "../../../service/node_modules/is-typed-array": { - "version": "1.1.10", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/is-typed-array": { + "version": "1.1.13", + "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.13.tgz", + "integrity": "sha512-uZ25/bUAlUY5fR4OKT4rZQEBrzQWYV9ZJYGGsUmEJ6thodVJ1HX64ePQ6Z0qPWP+m+Uq6e9UugrE38jeYsDSMw==", + "extraneous": true, "dependencies": { - "available-typed-arrays": "^1.0.5", - "call-bind": "^1.0.2", - "for-each": "^0.3.3", - "gopd": "^1.0.1", - "has-tostringtag": "^1.0.0" + "which-typed-array": "^1.1.14" }, "engines": { "node": ">= 0.4" @@ -7335,26 +8464,41 @@ "url": "https://github.com/sponsors/ljharb" } }, - "../../../service/node_modules/is-typedarray": { + "node_modules/@ngageoint/mage.service/node_modules/is-typedarray": { "version": "1.0.0", - "dev": true, - "license": "MIT", - "peer": true + "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", + "integrity": "sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA==", + "extraneous": true }, - "../../../service/node_modules/is-weakmap": { - "version": "2.0.1", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/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==", + "extraneous": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/is-weakmap": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/is-weakmap/-/is-weakmap-2.0.2.tgz", + "integrity": "sha512-K5pXYOm9wqY1RgjpL3YTkF39tni1XajUIkawTLUo9EZEVUFga5gSQJF8nNS7ZwJQ02y+1YCNYcMh+HIf1ZqE+w==", + "extraneous": true, + "engines": { + "node": ">= 0.4" + }, "funding": { "url": "https://github.com/sponsors/ljharb" } }, - "../../../service/node_modules/is-weakref": { + "node_modules/@ngageoint/mage.service/node_modules/is-weakref": { "version": "1.0.2", - "dev": true, - "license": "MIT", - "peer": true, + "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.2.tgz", + "integrity": "sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==", + "extraneous": true, "dependencies": { "call-bind": "^1.0.2" }, @@ -7362,67 +8506,54 @@ "url": "https://github.com/sponsors/ljharb" } }, - "../../../service/node_modules/is-weakset": { - "version": "2.0.2", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/is-weakset": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/is-weakset/-/is-weakset-2.0.3.tgz", + "integrity": "sha512-LvIm3/KWzS9oRFHugab7d+M/GcBXuXX5xZkzPmN+NxihdQlZUQ4dWuSV1xR/sq6upL1TJEDrfBgRepHFdBtSNQ==", + "extraneous": true, "dependencies": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.1.1" + "call-bind": "^1.0.7", + "get-intrinsic": "^1.2.4" + }, + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" } }, - "../../../service/node_modules/is-windows": { - "version": "1.0.2", - "dev": true, - "license": "MIT", - "peer": true, - "engines": { - "node": ">=0.10.0" - } - }, - "../../../service/node_modules/isarray": { + "node_modules/@ngageoint/mage.service/node_modules/isarray": { "version": "2.0.5", - "dev": true, - "license": "MIT", - "peer": true + "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", + "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==", + "extraneous": true }, - "../../../service/node_modules/isexe": { + "node_modules/@ngageoint/mage.service/node_modules/isexe": { "version": "2.0.0", - "license": "ISC", - "peer": true - }, - "../../../service/node_modules/isobject": { - "version": "3.0.1", - "dev": true, - "license": "MIT", - "peer": true, - "engines": { - "node": ">=0.10.0" - } + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", + "extraneous": true }, - "../../../service/node_modules/isstream": { + "node_modules/@ngageoint/mage.service/node_modules/isstream": { "version": "0.1.2", - "license": "MIT", + "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", + "integrity": "sha512-Yljz7ffyPbrLpLngrMtZ7NduUgVvi6wG9RJ9IUcyCd59YQ911PBJphODUcbOVbqYfxe1wuYf/LJ8PauMRwsM/g==", "peer": true }, - "../../../service/node_modules/istanbul-lib-coverage": { + "node_modules/@ngageoint/mage.service/node_modules/istanbul-lib-coverage": { "version": "2.0.5", - "dev": true, - "license": "BSD-3-Clause", - "peer": true, + "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.5.tgz", + "integrity": "sha512-8aXznuEPCJvGnMSRft4udDRDtb1V3pkQkMMI5LI+6HuQz5oQ4J2UFn1H82raA3qJtyOLkkwVqICBQkjnGtn5mA==", + "extraneous": true, "engines": { "node": ">=6" } }, - "../../../service/node_modules/istanbul-lib-hook": { + "node_modules/@ngageoint/mage.service/node_modules/istanbul-lib-hook": { "version": "2.0.7", - "dev": true, - "license": "BSD-3-Clause", - "peer": true, + "resolved": "https://registry.npmjs.org/istanbul-lib-hook/-/istanbul-lib-hook-2.0.7.tgz", + "integrity": "sha512-vrRztU9VRRFDyC+aklfLoeXyNdTfga2EI3udDGn4cZ6fpSXpHLV9X6CHvfoMCPtggg8zvDDmC4b9xfu0z6/llA==", + "extraneous": true, "dependencies": { "append-transform": "^1.0.0" }, @@ -7430,11 +8561,11 @@ "node": ">=6" } }, - "../../../service/node_modules/istanbul-lib-instrument": { + "node_modules/@ngageoint/mage.service/node_modules/istanbul-lib-instrument": { "version": "3.3.0", - "dev": true, - "license": "BSD-3-Clause", - "peer": true, + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-3.3.0.tgz", + "integrity": "sha512-5nnIN4vo5xQZHdXno/YDXJ0G+I3dAm4XgzfSVTPLQpj/zAV2dV6Juy0yaf10/zrJOJeHoN3fraFe+XRq2bFVZA==", + "extraneous": true, "dependencies": { "@babel/generator": "^7.4.0", "@babel/parser": "^7.4.3", @@ -7448,11 +8579,20 @@ "node": ">=6" } }, - "../../../service/node_modules/istanbul-lib-report": { + "node_modules/@ngageoint/mage.service/node_modules/istanbul-lib-instrument/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "extraneous": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/istanbul-lib-report": { "version": "2.0.8", - "dev": true, - "license": "BSD-3-Clause", - "peer": true, + "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-2.0.8.tgz", + "integrity": "sha512-fHBeG573EIihhAblwgxrSenp0Dby6tJMFR/HvlerBsrCTD5bkUuoNtn3gVh29ZCS824cGGBPn7Sg7cNk+2xUsQ==", + "extraneous": true, "dependencies": { "istanbul-lib-coverage": "^2.0.5", "make-dir": "^2.1.0", @@ -7462,20 +8602,51 @@ "node": ">=6" } }, - "../../../service/node_modules/istanbul-lib-report/node_modules/has-flag": { + "node_modules/@ngageoint/mage.service/node_modules/istanbul-lib-report/node_modules/has-flag": { "version": "3.0.0", - "dev": true, - "license": "MIT", - "peer": true, + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "extraneous": true, "engines": { "node": ">=4" } }, - "../../../service/node_modules/istanbul-lib-report/node_modules/supports-color": { + "node_modules/@ngageoint/mage.service/node_modules/istanbul-lib-report/node_modules/make-dir": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", + "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", + "extraneous": true, + "dependencies": { + "pify": "^4.0.1", + "semver": "^5.6.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/istanbul-lib-report/node_modules/pify": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", + "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", + "extraneous": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/istanbul-lib-report/node_modules/semver": { + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", + "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", + "extraneous": true, + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/istanbul-lib-report/node_modules/supports-color": { "version": "6.1.0", - "dev": true, - "license": "MIT", - "peer": true, + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "extraneous": true, "dependencies": { "has-flag": "^3.0.0" }, @@ -7483,11 +8654,11 @@ "node": ">=6" } }, - "../../../service/node_modules/istanbul-lib-source-maps": { + "node_modules/@ngageoint/mage.service/node_modules/istanbul-lib-source-maps": { "version": "3.0.6", - "dev": true, - "license": "BSD-3-Clause", - "peer": true, + "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-3.0.6.tgz", + "integrity": "sha512-R47KzMtDJH6X4/YW9XTx+jrLnZnscW4VpNN+1PViSYTejLVPWv7oov+Duf8YQSPyVRUvueQqz1TcsC6mooZTXw==", + "extraneous": true, "dependencies": { "debug": "^4.1.1", "istanbul-lib-coverage": "^2.0.5", @@ -7499,11 +8670,55 @@ "node": ">=6" } }, - "../../../service/node_modules/istanbul-reports": { + "node_modules/@ngageoint/mage.service/node_modules/istanbul-lib-source-maps/node_modules/make-dir": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", + "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", + "extraneous": true, + "dependencies": { + "pify": "^4.0.1", + "semver": "^5.6.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/istanbul-lib-source-maps/node_modules/pify": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", + "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", + "extraneous": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/istanbul-lib-source-maps/node_modules/rimraf": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", + "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", + "deprecated": "Rimraf versions prior to v4 are no longer supported", + "extraneous": true, + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/istanbul-lib-source-maps/node_modules/semver": { + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", + "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", + "extraneous": true, + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/istanbul-reports": { "version": "2.2.7", - "dev": true, - "license": "BSD-3-Clause", - "peer": true, + "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-2.2.7.tgz", + "integrity": "sha512-uu1F/L1o5Y6LzPVSVZXNOoD/KXpJue9aeLRd0sM9uMXfZvzomB0WxVamWb5ue8kA2vVWEmW7EG+A5n3f1kqHKg==", + "extraneous": true, "dependencies": { "html-escaper": "^2.0.0" }, @@ -7511,45 +8726,67 @@ "node": ">=6" } }, - "../../../service/node_modules/jdataview": { - "version": "2.4.6", - "peer": true + "node_modules/@ngageoint/mage.service/node_modules/jackspeak": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-3.4.0.tgz", + "integrity": "sha512-JVYhQnN59LVPFCEcVa2C3CrEKYacvjRfqIQl+h8oi91aLYQVWRYbxjPcv1bUiUy/kLmQaANrYfNMCO3kuEDHfw==", + "extraneous": true, + "dependencies": { + "@isaacs/cliui": "^8.0.2" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + }, + "optionalDependencies": { + "@pkgjs/parseargs": "^0.11.0" + } }, - "../../../service/node_modules/js-stringify": { + "node_modules/@ngageoint/mage.service/node_modules/js-stringify": { "version": "1.0.2", - "license": "MIT", + "resolved": "https://registry.npmjs.org/js-stringify/-/js-stringify-1.0.2.tgz", + "integrity": "sha512-rtS5ATOo2Q5k1G+DADISilDA6lv79zIiwFd6CcjuIxGKLFm5C+RLImRscVap9k55i+MOZwgliw+NejvkLuGD5g==", "peer": true }, - "../../../service/node_modules/js-tokens": { + "node_modules/@ngageoint/mage.service/node_modules/js-tokens": { "version": "4.0.0", - "dev": true, - "license": "MIT", - "peer": true + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", + "extraneous": true }, - "../../../service/node_modules/js-yaml": { - "version": "3.4.6", + "node_modules/@ngageoint/mage.service/node_modules/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==", "license": "MIT", "peer": true, "dependencies": { - "argparse": "^1.0.2", - "esprima": "^2.6.0", - "inherit": "^2.2.2" + "argparse": "^2.0.1" }, "bin": { "js-yaml": "bin/js-yaml.js" } }, - "../../../service/node_modules/jsbn": { - "version": "0.1.1", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/js-yaml/node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "license": "Python-2.0", "peer": true }, - "../../../service/node_modules/jsesc": { + "node_modules/@ngageoint/mage.service/node_modules/jsbn": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-1.1.0.tgz", + "integrity": "sha512-4bYVV3aAMtDTTu4+xsDYa6sy9GyJ69/amsu9sYF2zqjiEoZA5xJi3BrfX3uY+/IekIu7MwdObdbDWpoZdBv3/A==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/jsesc": { "version": "2.5.2", - "dev": true, - "license": "MIT", - "peer": true, + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", + "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", + "extraneous": true, "bin": { "jsesc": "bin/jsesc" }, @@ -7557,75 +8794,47 @@ "node": ">=4" } }, - "../../../service/node_modules/json-parse-better-errors": { + "node_modules/@ngageoint/mage.service/node_modules/json-buffer": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz", + "integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/json-parse-better-errors": { "version": "1.0.2", - "dev": true, - "license": "MIT", - "peer": true + "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz", + "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==", + "extraneous": true }, - "../../../service/node_modules/json-schema": { + "node_modules/@ngageoint/mage.service/node_modules/json-schema": { "version": "0.4.0", - "dev": true, - "license": "(AFL-2.1 OR BSD-3-Clause)", - "peer": true - }, - "../../../service/node_modules/json-schema-ref-parser": { - "version": "6.1.0", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "call-me-maybe": "^1.0.1", - "js-yaml": "^3.12.1", - "ono": "^4.0.11" - } + "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.4.0.tgz", + "integrity": "sha512-es94M3nTIfsEPisRafak+HDLfHXnKBhV3vU5eqPcS3flIWqcxJWgXHXiey3YrpaNsanY5ei1VoYEbOzijuq9BA==", + "extraneous": true }, - "../../../service/node_modules/json-schema-ref-parser/node_modules/esprima": { - "version": "4.0.1", - "dev": true, - "license": "BSD-2-Clause", - "peer": true, - "bin": { - "esparse": "bin/esparse.js", - "esvalidate": "bin/esvalidate.js" - }, - "engines": { - "node": ">=4" - } - }, - "../../../service/node_modules/json-schema-ref-parser/node_modules/js-yaml": { - "version": "3.14.1", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" - }, - "bin": { - "js-yaml": "bin/js-yaml.js" - } - }, - "../../../service/node_modules/json-schema-traverse": { + "node_modules/@ngageoint/mage.service/node_modules/json-schema-traverse": { "version": "0.4.1", - "dev": true, - "license": "MIT", - "peer": true + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "extraneous": true }, - "../../../service/node_modules/json-stable-stringify-without-jsonify": { + "node_modules/@ngageoint/mage.service/node_modules/json-stable-stringify-without-jsonify": { "version": "1.0.1", - "dev": true, - "license": "MIT", - "peer": true + "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", + "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==", + "extraneous": true }, - "../../../service/node_modules/json-stringify-safe": { + "node_modules/@ngageoint/mage.service/node_modules/json-stringify-safe": { "version": "5.0.1", - "dev": true, - "license": "ISC", - "peer": true + "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", + "integrity": "sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA==", + "extraneous": true }, - "../../../service/node_modules/json2csv": { - "version": "4.5.1", + "node_modules/@ngageoint/mage.service/node_modules/json2csv": { + "version": "4.5.4", + "resolved": "https://registry.npmjs.org/json2csv/-/json2csv-4.5.4.tgz", + "integrity": "sha512-YxBhY4Lmn8IvVZ36nqg5omxneLy9JlorkqW1j/EDCeqvmi+CQ4uM+wsvXlcIqvGDewIPXMC/O/oF8DX9EH5aoA==", + "deprecated": "Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.", "license": "MIT", "peer": true, "dependencies": { @@ -7637,30 +8846,34 @@ "json2csv": "bin/json2csv.js" } }, - "../../../service/node_modules/json2csv/node_modules/commander": { + "node_modules/@ngageoint/mage.service/node_modules/json2csv/node_modules/commander": { "version": "2.20.3", - "license": "MIT", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", "peer": true }, - "../../../service/node_modules/jsonfile": { + "node_modules/@ngageoint/mage.service/node_modules/jsonfile": { "version": "4.0.0", - "license": "MIT", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", + "integrity": "sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==", "peer": true, "optionalDependencies": { "graceful-fs": "^4.1.6" } }, - "../../../service/node_modules/jsonparse": { + "node_modules/@ngageoint/mage.service/node_modules/jsonparse": { "version": "1.3.1", + "resolved": "https://registry.npmjs.org/jsonparse/-/jsonparse-1.3.1.tgz", + "integrity": "sha512-POQXvpdL69+CluYsillJ7SUhKvytYjW9vG/GKpnf+xP8UWgYEM/RaMzHHofbALDiKbbP1W8UEYmgGl39WkPZsg==", "engines": [ "node >= 0.2.0" ], - "license": "MIT", "peer": true }, - "../../../service/node_modules/JSONStream": { + "node_modules/@ngageoint/mage.service/node_modules/JSONStream": { "version": "1.3.5", - "license": "(MIT OR Apache-2.0)", + "resolved": "https://registry.npmjs.org/JSONStream/-/JSONStream-1.3.5.tgz", + "integrity": "sha512-E+iruNOY8VV9s4JEbe1aNEm6MiszPRr/UfcHMz0TQh1BXSxHK+ASV1R6W4HpjBhSeS+54PIsAMCBmwD06LLsqQ==", "peer": true, "dependencies": { "jsonparse": "^1.2.0", @@ -7673,56 +8886,33 @@ "node": "*" } }, - "../../../service/node_modules/jsonwebtoken": { - "version": "9.0.0", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/jsonwebtoken": { + "version": "9.0.2", + "resolved": "https://registry.npmjs.org/jsonwebtoken/-/jsonwebtoken-9.0.2.tgz", + "integrity": "sha512-PRp66vJ865SSqOlgqS8hujT5U4AOgMfhrwYIuIhfKaoSCZcirrmASQr8CX7cUg+RMih+hgznrjp99o+W4pJLHQ==", "peer": true, "dependencies": { "jws": "^3.2.2", - "lodash": "^4.17.21", + "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": "^7.3.8" + "semver": "^7.5.4" }, "engines": { "node": ">=12", "npm": ">=6" } }, - "../../../service/node_modules/jsonwebtoken/node_modules/lru-cache": { - "version": "6.0.0", - "license": "ISC", - "peer": true, - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "../../../service/node_modules/jsonwebtoken/node_modules/semver": { - "version": "7.3.8", - "license": "ISC", - "peer": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "../../../service/node_modules/jsonwebtoken/node_modules/yallist": { - "version": "4.0.0", - "license": "ISC", - "peer": true - }, - "../../../service/node_modules/jsprim": { + "node_modules/@ngageoint/mage.service/node_modules/jsprim": { "version": "1.4.2", - "dev": true, - "license": "MIT", - "peer": true, + "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.2.tgz", + "integrity": "sha512-P2bSOMAc/ciLz6DzgjVlGJP9+BrJWu5UDGK70C2iweC5QBIeFf0ZXRvGjEj2uYgrY2MkAAhsSWHDWlFtEroZWw==", + "extraneous": true, "dependencies": { "assert-plus": "1.0.0", "extsprintf": "1.3.0", @@ -7733,34 +8923,36 @@ "node": ">=0.6.0" } }, - "../../../service/node_modules/jsprim/node_modules/verror": { + "node_modules/@ngageoint/mage.service/node_modules/jsprim/node_modules/verror": { "version": "1.10.0", - "dev": true, + "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", + "integrity": "sha512-ZZKSmDAEFOijERBLkmYfJ+vmk3w+7hOLYDNkRCuRuMJGEmqYNCNLyBBFwWKVMhfwaEF3WOd0Zlw86U/WC/+nYw==", "engines": [ "node >=0.6.0" ], - "license": "MIT", - "peer": true, + "extraneous": true, "dependencies": { "assert-plus": "^1.0.0", "core-util-is": "1.0.2", "extsprintf": "^1.2.0" } }, - "../../../service/node_modules/jstransformer": { + "node_modules/@ngageoint/mage.service/node_modules/jstransformer": { "version": "1.0.0", - "license": "MIT", + "resolved": "https://registry.npmjs.org/jstransformer/-/jstransformer-1.0.0.tgz", + "integrity": "sha512-C9YK3Rf8q6VAPDCCU9fnqo3mAfOH6vUGnMcP4AQAYIEpWtfGLpwOTmZ+igtdK5y+VvI2n3CyYSzy4Qh34eq24A==", "peer": true, "dependencies": { "is-promise": "^2.0.0", "promise": "^7.0.1" } }, - "../../../service/node_modules/jszip": { + "node_modules/@ngageoint/mage.service/node_modules/jszip": { "version": "3.10.1", - "dev": true, + "resolved": "https://registry.npmjs.org/jszip/-/jszip-3.10.1.tgz", + "integrity": "sha512-xXDvecyTpGLrqFrvkrUSoxxfJI5AH7U8zxxtVclpsUtMCq4JQ290LY8AW5c7Ggnr/Y/oK+bQMbqK2qmtk3pN4g==", + "extraneous": true, "license": "(MIT OR GPL-3.0-or-later)", - "peer": true, "dependencies": { "lie": "~3.3.0", "pako": "~1.0.2", @@ -7768,17 +8960,17 @@ "setimmediate": "^1.0.5" } }, - "../../../service/node_modules/jszip/node_modules/isarray": { + "node_modules/@ngageoint/mage.service/node_modules/jszip/node_modules/isarray": { "version": "1.0.0", - "dev": true, - "license": "MIT", - "peer": true + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", + "extraneous": true }, - "../../../service/node_modules/jszip/node_modules/readable-stream": { - "version": "2.3.7", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/jszip/node_modules/readable-stream": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", + "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", + "extraneous": true, "dependencies": { "core-util-is": "~1.0.0", "inherits": "~2.0.3", @@ -7789,30 +8981,43 @@ "util-deprecate": "~1.0.1" } }, - "../../../service/node_modules/jszip/node_modules/safe-buffer": { + "node_modules/@ngageoint/mage.service/node_modules/jszip/node_modules/safe-buffer": { "version": "5.1.2", - "dev": true, - "license": "MIT", - "peer": true + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "extraneous": true }, - "../../../service/node_modules/jszip/node_modules/string_decoder": { + "node_modules/@ngageoint/mage.service/node_modules/jszip/node_modules/string_decoder": { "version": "1.1.1", - "dev": true, - "license": "MIT", - "peer": true, + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "extraneous": true, "dependencies": { "safe-buffer": "~5.1.0" } }, - "../../../service/node_modules/just-extend": { + "node_modules/@ngageoint/mage.service/node_modules/junk": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/junk/-/junk-4.0.1.tgz", + "integrity": "sha512-Qush0uP+G8ZScpGMZvHUiRfI0YBWuB3gVBYlI0v0vvOJt5FLicco+IkP0a50LqTTQhmts/m6tP5SWE+USyIvcQ==", + "extraneous": true, + "engines": { + "node": ">=12.20" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/just-extend": { "version": "4.2.1", - "dev": true, - "license": "MIT", - "peer": true + "resolved": "https://registry.npmjs.org/just-extend/-/just-extend-4.2.1.tgz", + "integrity": "sha512-g3UB796vUFIY90VIv/WX3L2c8CS2MdWUww3CNrYmqza1Fg0DURc2K/O4YrnklBdQarSJ/y8JnJYDGc+1iumQjg==", + "extraneous": true }, - "../../../service/node_modules/jwa": { + "node_modules/@ngageoint/mage.service/node_modules/jwa": { "version": "1.4.1", - "license": "MIT", + "resolved": "https://registry.npmjs.org/jwa/-/jwa-1.4.1.tgz", + "integrity": "sha512-qiLX/xhEEFKUAJ6FiBMbes3w9ATzyk5W7Hvzpa/SLYdxNtng+gcurvrI7TbACjIXlsJyr05/S1oUhZrc63evQA==", "peer": true, "dependencies": { "buffer-equal-constant-time": "1.0.1", @@ -7820,40 +9025,38 @@ "safe-buffer": "^5.0.1" } }, - "../../../service/node_modules/jws": { + "node_modules/@ngageoint/mage.service/node_modules/jws": { "version": "3.2.2", - "license": "MIT", + "resolved": "https://registry.npmjs.org/jws/-/jws-3.2.2.tgz", + "integrity": "sha512-YHlZCB6lMTllWDtSPHz/ZXTsi8S00usEV6v1tjq8tOUZzw7DpSDWVXjXDre6ed1w/pd495ODpHZYSdkRTsa0HA==", "peer": true, "dependencies": { "jwa": "^1.4.1", "safe-buffer": "^5.0.1" } }, - "../../../service/node_modules/kareem": { - "version": "2.4.1", - "license": "Apache-2.0", - "peer": true - }, - "../../../service/node_modules/kind-of": { - "version": "6.0.3", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/kareem": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/kareem/-/kareem-2.5.1.tgz", + "integrity": "sha512-7jFxRVm+jD+rkq3kY0iZDJfsO2/t4BBPeEb2qKn2lR/9KhuksYk5hxzfRYWMPV8P/x2d0kHD306YyWLzjjH+uA==", "peer": true, "engines": { - "node": ">=0.10.0" + "node": ">=12.0.0" } }, - "../../../service/node_modules/lazy-cache": { - "version": "1.0.4", - "license": "MIT", - "peer": true, - "engines": { - "node": ">=0.10.0" + "node_modules/@ngageoint/mage.service/node_modules/keyv": { + "version": "4.5.4", + "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz", + "integrity": "sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==", + "extraneous": true, + "dependencies": { + "json-buffer": "3.0.1" } }, - "../../../service/node_modules/lazystream": { + "node_modules/@ngageoint/mage.service/node_modules/lazystream": { "version": "1.0.1", - "license": "MIT", + "resolved": "https://registry.npmjs.org/lazystream/-/lazystream-1.0.1.tgz", + "integrity": "sha512-b94GiNHQNy6JNTrt5w6zNyffMrNkXZb3KTkCZJb2V1xaEGCk093vkZ2jk3tpaeP33/OiXC+WvK9AxUebnf5nbw==", "peer": true, "dependencies": { "readable-stream": "^2.0.5" @@ -7862,14 +9065,16 @@ "node": ">= 0.6.3" } }, - "../../../service/node_modules/lazystream/node_modules/isarray": { + "node_modules/@ngageoint/mage.service/node_modules/lazystream/node_modules/isarray": { "version": "1.0.0", - "license": "MIT", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", "peer": true }, - "../../../service/node_modules/lazystream/node_modules/readable-stream": { - "version": "2.3.7", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/lazystream/node_modules/readable-stream": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", + "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", "peer": true, "dependencies": { "core-util-is": "~1.0.0", @@ -7881,114 +9086,105 @@ "util-deprecate": "~1.0.1" } }, - "../../../service/node_modules/lazystream/node_modules/safe-buffer": { + "node_modules/@ngageoint/mage.service/node_modules/lazystream/node_modules/safe-buffer": { "version": "5.1.2", - "license": "MIT", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", "peer": true }, - "../../../service/node_modules/lazystream/node_modules/string_decoder": { + "node_modules/@ngageoint/mage.service/node_modules/lazystream/node_modules/string_decoder": { "version": "1.1.1", - "license": "MIT", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", "peer": true, "dependencies": { "safe-buffer": "~5.1.0" } }, - "../../../service/node_modules/lcov-parse": { - "version": "0.0.10", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/lcov-parse": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/lcov-parse/-/lcov-parse-1.0.0.tgz", + "integrity": "sha512-aprLII/vPzuQvYZnDRU78Fns9I2Ag3gi4Ipga/hxnVMCZC8DnR2nI7XBqrPoywGfxqIx/DgarGvDJZAD3YBTgQ==", + "extraneous": true, "license": "BSD-3-Clause", - "peer": true + "bin": { + "lcov-parse": "bin/cli.js" + } }, - "../../../service/node_modules/ldap-filter": { - "version": "0.2.2", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/ldap-filter": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/ldap-filter/-/ldap-filter-0.3.3.tgz", + "integrity": "sha512-/tFkx5WIn4HuO+6w9lsfxq4FN3O+fDZeO9Mek8dCD8rTUpqzRa766BOBO7BcGkn3X86m5+cBm1/2S/Shzz7gMg==", "peer": true, "dependencies": { - "assert-plus": "0.1.5" + "assert-plus": "^1.0.0" }, "engines": { "node": ">=0.8" } }, - "../../../service/node_modules/ldap-filter/node_modules/assert-plus": { - "version": "0.1.5", - "peer": true, - "engines": { - "node": ">=0.8" - } - }, - "../../../service/node_modules/ldapauth-fork": { - "version": "4.3.3", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/ldapauth-fork": { + "version": "5.0.5", + "resolved": "https://registry.npmjs.org/ldapauth-fork/-/ldapauth-fork-5.0.5.tgz", + "integrity": "sha512-LWUk76+V4AOZbny/3HIPQtGPWZyA3SW2tRhsWIBi9imP22WJktKLHV1ofd8Jo/wY7Ve6vAT7FCI5mEn3blZTjw==", "peer": true, "dependencies": { - "@types/ldapjs": "^1.0.0", - "@types/node": "*", + "@types/ldapjs": "^2.2.2", "bcryptjs": "^2.4.0", - "ldapjs": "^1.0.2", - "lru-cache": "^5.1.1" + "ldapjs": "^2.2.1", + "lru-cache": "^7.10.1" }, "engines": { "node": ">=0.8.0" } }, - "../../../service/node_modules/ldapjs": { - "version": "1.0.2", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/ldapjs": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/ldapjs/-/ldapjs-2.3.3.tgz", + "integrity": "sha512-75QiiLJV/PQqtpH+HGls44dXweviFwQ6SiIK27EqzKQ5jU/7UFrl2E5nLdQ3IYRBzJ/AVFJI66u0MZ0uofKYwg==", + "deprecated": "This package has been decomissioned. See https://github.com/ldapjs/node-ldapjs/blob/8ffd0bc9c149088a10ec4c1ec6a18450f76ad05d/README.md", "peer": true, "dependencies": { - "asn1": "0.2.3", + "abstract-logging": "^2.0.0", + "asn1": "^0.2.4", "assert-plus": "^1.0.0", "backoff": "^2.5.0", - "bunyan": "^1.8.3", - "dashdash": "^1.14.0", - "ldap-filter": "0.2.2", + "ldap-filter": "^0.3.3", "once": "^1.4.0", - "vasync": "^1.6.4", + "vasync": "^2.2.0", "verror": "^1.8.1" }, - "bin": { - "ldapjs-add": "bin/ldapjs-add", - "ldapjs-compare": "bin/ldapjs-compare", - "ldapjs-delete": "bin/ldapjs-delete", - "ldapjs-modify": "bin/ldapjs-modify", - "ldapjs-search": "bin/ldapjs-search" - }, "engines": { - "node": ">=0.10" - }, - "optionalDependencies": { - "dtrace-provider": "~0.8" + "node": ">=10.13.0" } }, - "../../../service/node_modules/levn": { - "version": "0.3.0", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/levn": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", + "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", + "extraneous": true, "dependencies": { - "prelude-ls": "~1.1.2", - "type-check": "~0.3.2" + "prelude-ls": "^1.2.1", + "type-check": "~0.4.0" }, "engines": { "node": ">= 0.8.0" } }, - "../../../service/node_modules/lie": { + "node_modules/@ngageoint/mage.service/node_modules/lie": { "version": "3.3.0", - "dev": true, - "license": "MIT", - "peer": true, + "resolved": "https://registry.npmjs.org/lie/-/lie-3.3.0.tgz", + "integrity": "sha512-UaiMJzeWRlEujzAuw5LokY1L5ecNQYZKfmyZ9L7wDHb/p5etKaxXhohBcrw0EYby+G/NA52vRSN4N39dxHAIwQ==", + "extraneous": true, "dependencies": { "immediate": "~3.0.5" } }, - "../../../service/node_modules/load-json-file": { + "node_modules/@ngageoint/mage.service/node_modules/load-json-file": { "version": "4.0.0", - "dev": true, - "license": "MIT", - "peer": true, + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-4.0.0.tgz", + "integrity": "sha512-Kx8hMakjX03tiGTLAIdJ+lL0htKnXjEZN6hk/tozf/WOuYGdZBJrZ+rCJRbVCugsjB3jMLn9746NsQIf5VjBMw==", + "extraneous": true, "dependencies": { "graceful-fs": "^4.1.2", "parse-json": "^4.0.0", @@ -7999,1868 +9195,1883 @@ "node": ">=4" } }, - "../../../service/node_modules/load-json-file/node_modules/pify": { - "version": "3.0.0", - "dev": true, - "license": "MIT", - "peer": true, - "engines": { - "node": ">=4" - } - }, - "../../../service/node_modules/locate-path": { - "version": "3.0.0", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/locate-path": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", + "extraneous": true, "dependencies": { - "p-locate": "^3.0.0", - "path-exists": "^3.0.0" + "p-locate": "^5.0.0" }, "engines": { - "node": ">=6" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "../../../service/node_modules/lodash": { + "node_modules/@ngageoint/mage.service/node_modules/lodash": { "version": "4.17.21", - "license": "MIT", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", "peer": true }, - "../../../service/node_modules/lodash.defaults": { + "node_modules/@ngageoint/mage.service/node_modules/lodash.defaults": { "version": "4.2.0", - "license": "MIT", + "resolved": "https://registry.npmjs.org/lodash.defaults/-/lodash.defaults-4.2.0.tgz", + "integrity": "sha512-qjxPLHd3r5DnsdGacqOMU6pb/avJzdh9tFX2ymgoZE27BmjXrNy/y4LoaiTeAb+O3gL8AfpJGtqfX/ae2leYYQ==", "peer": true }, - "../../../service/node_modules/lodash.difference": { + "node_modules/@ngageoint/mage.service/node_modules/lodash.difference": { "version": "4.5.0", - "license": "MIT", + "resolved": "https://registry.npmjs.org/lodash.difference/-/lodash.difference-4.5.0.tgz", + "integrity": "sha512-dS2j+W26TQ7taQBGN8Lbbq04ssV3emRw4NY58WErlTO29pIqS0HmoT5aJ9+TUQ1N3G+JOZSji4eugsWwGp9yPA==", "peer": true }, - "../../../service/node_modules/lodash.flatten": { + "node_modules/@ngageoint/mage.service/node_modules/lodash.flatten": { "version": "4.4.0", - "license": "MIT", + "resolved": "https://registry.npmjs.org/lodash.flatten/-/lodash.flatten-4.4.0.tgz", + "integrity": "sha512-C5N2Z3DgnnKr0LOpv/hKCgKdb7ZZwafIrsesve6lmzvZIRZRGaZ/l6Q8+2W7NaT+ZwO3fFlSCzCzrDCFdJfZ4g==", "peer": true }, - "../../../service/node_modules/lodash.flattendeep": { + "node_modules/@ngageoint/mage.service/node_modules/lodash.flattendeep": { "version": "4.4.0", - "dev": true, - "license": "MIT", - "peer": true + "resolved": "https://registry.npmjs.org/lodash.flattendeep/-/lodash.flattendeep-4.4.0.tgz", + "integrity": "sha512-uHaJFihxmJcEX3kT4I23ABqKKalJ/zDrDg0lsFtc1h+3uw49SIJ5beyhx5ExVRti3AvKoOJngIj7xz3oylPdWQ==", + "extraneous": true }, - "../../../service/node_modules/lodash.get": { + "node_modules/@ngageoint/mage.service/node_modules/lodash.get": { "version": "4.4.2", - "license": "MIT", + "resolved": "https://registry.npmjs.org/lodash.get/-/lodash.get-4.4.2.tgz", + "integrity": "sha512-z+Uw/vLuy6gQe8cfaFWD7p0wVv8fJl3mbzXh33RS+0oW2wvUqiRXiQ69gLWSLpgB5/6sU+r6BlQR0MBILadqTQ==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/lodash.includes": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/lodash.includes/-/lodash.includes-4.3.0.tgz", + "integrity": "sha512-W3Bx6mdkRTGtlJISOvVD/lbqjTlPPUDTMnlXZFnVwi9NKJ6tiAk6LVdlhZMm17VZisqhKcgzpO5Wz91PCt5b0w==", "peer": true }, - "../../../service/node_modules/lodash.isplainobject": { + "node_modules/@ngageoint/mage.service/node_modules/lodash.isboolean": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/lodash.isboolean/-/lodash.isboolean-3.0.3.tgz", + "integrity": "sha512-Bz5mupy2SVbPHURB98VAcw+aHh4vRV5IPNhILUCsOzRmsTmSQ17jIuqopAentWoehktxGd9e/hbIXq980/1QJg==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/lodash.isinteger": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/lodash.isinteger/-/lodash.isinteger-4.0.4.tgz", + "integrity": "sha512-DBwtEWN2caHQ9/imiNeEA5ys1JoRtRfY3d7V9wkqtbycnAmTvRRmbHKDV4a0EYc678/dia0jrte4tjYwVBaZUA==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/lodash.isnumber": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/lodash.isnumber/-/lodash.isnumber-3.0.3.tgz", + "integrity": "sha512-QYqzpfwO3/CWf3XP+Z+tkQsfaLL/EnUlXWVkIk5FUPc4sBdTehEqZONuyRt2P67PXAk+NXmTBcc97zw9t1FQrw==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/lodash.isplainobject": { "version": "4.0.6", - "license": "MIT", + "resolved": "https://registry.npmjs.org/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz", + "integrity": "sha512-oSXzaWypCMHkPC3NvBEaPHf0KsA5mvPrOPgQWDsbg8n7orZ290M0BmC/jgRZ4vcJ6DTAhjrsSYgdsW/F+MFOBA==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/lodash.isstring": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/lodash.isstring/-/lodash.isstring-4.0.1.tgz", + "integrity": "sha512-0wJxfxH1wgO3GrbuP+dTTk7op+6L41QCXbGINEmD+ny/G/eCqGzxyCsh7159S+mgDDcoarnBw6PC1PS5+wUGgw==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/lodash.merge": { + "version": "4.6.2", + "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", + "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/lodash.once": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/lodash.once/-/lodash.once-4.1.1.tgz", + "integrity": "sha512-Sb487aTOCr9drQVL8pIxOzVhafOjZN9UU54hiN8PU3uAiSV7lx1yYNpbNmex2PK6dSJoNTSJUUswT651yww3Mg==", "peer": true }, - "../../../service/node_modules/lodash.union": { + "node_modules/@ngageoint/mage.service/node_modules/lodash.union": { "version": "4.6.0", - "license": "MIT", + "resolved": "https://registry.npmjs.org/lodash.union/-/lodash.union-4.6.0.tgz", + "integrity": "sha512-c4pB2CdGrGdjMKYLA+XiRDO7Y0PRQbm/Gzg8qMj+QH+pFVAoTp5sBpO0odL3FjoPCGjK96p6qsP+yQoiLoOBcw==", "peer": true }, - "../../../service/node_modules/log-driver": { + "node_modules/@ngageoint/mage.service/node_modules/log-driver": { "version": "1.2.7", - "dev": true, - "license": "ISC", - "peer": true, + "resolved": "https://registry.npmjs.org/log-driver/-/log-driver-1.2.7.tgz", + "integrity": "sha512-U7KCmLdqsGHBLeWqYlFA0V0Sl6P08EE1ZrmA9cxjUE0WVqT9qnyVDPz1kzpFEP0jdJuFnasWIfSd7fsaNXkpbg==", + "extraneous": true, "engines": { "node": ">=0.8.6" } }, - "../../../service/node_modules/log-symbols": { - "version": "3.0.0", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/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==", + "extraneous": true, "dependencies": { - "chalk": "^2.4.2" + "chalk": "^4.1.0", + "is-unicode-supported": "^0.1.0" }, "engines": { - "node": ">=8" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "../../../service/node_modules/log-symbols/node_modules/ansi-styles": { - "version": "3.2.1", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/lolex": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/lolex/-/lolex-4.2.0.tgz", + "integrity": "sha512-gKO5uExCXvSm6zbF562EvM+rd1kQDnB9AZBbiQVzf1ZmdDpxUSvpnAaVOP83N/31mRK8Ml8/VE8DMvsAZQ+7wg==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/loupe": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/loupe/-/loupe-2.3.7.tgz", + "integrity": "sha512-zSMINGVYkdpYSOBmLi0D1Uo7JU9nVdQKrHxC8eYlV+9YKK9WePqAlL7lSlorG/U2Fw1w0hTBmaa/jrQ3UbPHtA==", + "extraneous": true, "dependencies": { - "color-convert": "^1.9.0" - }, + "get-func-name": "^2.0.1" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/lru-cache": { + "version": "7.18.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", + "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", + "peer": true, "engines": { - "node": ">=4" + "node": ">=12" } }, - "../../../service/node_modules/log-symbols/node_modules/chalk": { - "version": "2.4.2", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/make-dir": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "extraneous": true, "license": "MIT", - "peer": true, "dependencies": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" + "semver": "^6.0.0" }, "engines": { - "node": ">=4" + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "../../../service/node_modules/log-symbols/node_modules/color-convert": { - "version": "1.9.3", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "color-name": "1.1.3" + "node_modules/@ngageoint/mage.service/node_modules/make-dir/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "extraneous": true, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" } }, - "../../../service/node_modules/log-symbols/node_modules/color-name": { - "version": "1.1.3", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/map-stream": { + "version": "0.0.7", + "resolved": "https://registry.npmjs.org/map-stream/-/map-stream-0.0.7.tgz", + "integrity": "sha512-C0X0KQmGm3N2ftbTGBhSyuydQ+vV1LC3f3zPvT3RXHXNZrvfPZcoXp/N5DOa8vedX/rTMm2CjTtivFg2STJMRQ==", "peer": true }, - "../../../service/node_modules/log-symbols/node_modules/has-flag": { - "version": "3.0.0", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/math-intrinsics": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/math-intrinsics/-/math-intrinsics-1.1.0.tgz", + "integrity": "sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==", "license": "MIT", "peer": true, "engines": { - "node": ">=4" + "node": ">= 0.4" } }, - "../../../service/node_modules/log-symbols/node_modules/supports-color": { - "version": "5.5.0", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/media-typer": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", + "integrity": "sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==", "peer": true, - "dependencies": { - "has-flag": "^3.0.0" - }, "engines": { - "node": ">=4" + "node": ">= 0.6" } }, - "../../../service/node_modules/lolex": { - "version": "4.2.0", - "dev": true, - "license": "BSD-3-Clause", + "node_modules/@ngageoint/mage.service/node_modules/memory-pager": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/memory-pager/-/memory-pager-1.5.0.tgz", + "integrity": "sha512-ZS4Bp4r/Zoeq6+NLJpP+0Zzm0pR8whtGPf1XExKLJBAczGMnSi3It14OiNCStjQjM6NU1okjQGSxgEZN8eBYKg==", + "optional": true, "peer": true }, - "../../../service/node_modules/longest": { - "version": "1.0.1", - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/memorystream": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/memorystream/-/memorystream-0.3.1.tgz", + "integrity": "sha512-S3UwM3yj5mtUSEfP41UZmt/0SCoVYUcU1rkXv+BQ5Ig8ndL4sPoJNBUJERafdPb5jjHJGuMgytgKvKIf58XNBw==", + "extraneous": true, "engines": { - "node": ">=0.10.0" + "node": ">= 0.10.0" } }, - "../../../service/node_modules/loud-rejection": { - "version": "1.6.0", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "currently-unhandled": "^0.4.1", - "signal-exit": "^3.0.0" - }, + "node_modules/@ngageoint/mage.service/node_modules/meow": { + "version": "12.1.1", + "resolved": "https://registry.npmjs.org/meow/-/meow-12.1.1.tgz", + "integrity": "sha512-BhXM0Au22RwUneMPwSCnyhTOizdWoIEPU9sp0Aqa1PnDMR5Wv2FGXYDjuzJEIX+Eo2Rb8xuYe5jrnm5QowQFkw==", + "extraneous": true, "engines": { - "node": ">=0.10.0" + "node": ">=16.10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "../../../service/node_modules/loupe": { - "version": "2.3.6", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/merge-descriptors": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.3.tgz", + "integrity": "sha512-gaNvAS7TZ897/rVaZ0nMtAyxNyi/pdbjbAwUpFQpN70GqnVfOiXpeUUMKRBmzXaSQ8DdTX4/0ms62r2K+hE6mQ==", "license": "MIT", "peer": true, - "dependencies": { - "get-func-name": "^2.0.0" + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "../../../service/node_modules/lru-cache": { - "version": "5.1.1", - "license": "ISC", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/merge-source-map": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/merge-source-map/-/merge-source-map-1.1.0.tgz", + "integrity": "sha512-Qkcp7P2ygktpMPh2mCQZaf3jhN6D3Z/qVZHSdWvQ+2Ef5HgRAPBO57A77+ENm0CPx2+1Ce/MYKi3ymqdfuqibw==", + "extraneous": true, "dependencies": { - "yallist": "^3.0.2" + "source-map": "^0.6.1" } }, - "../../../service/node_modules/make-dir": { - "version": "2.1.0", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "pify": "^4.0.1", - "semver": "^5.6.0" - }, + "node_modules/@ngageoint/mage.service/node_modules/merge2": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", + "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", + "extraneous": true, "engines": { - "node": ">=6" + "node": ">= 8" } }, - "../../../service/node_modules/make-dir/node_modules/semver": { - "version": "5.7.1", - "dev": true, - "license": "ISC", + "node_modules/@ngageoint/mage.service/node_modules/methods": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", + "integrity": "sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==", "peer": true, - "bin": { - "semver": "bin/semver" + "engines": { + "node": ">= 0.6" } }, - "../../../service/node_modules/map-cache": { - "version": "0.2.2", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/mgrs": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/mgrs/-/mgrs-1.0.0.tgz", + "integrity": "sha512-awNbTOqCxK1DBGjalK3xqWIstBZgN6fxsMSiXLs9/spqWkF2pAhb2rrYCFSsr1/tT7PhcDGjZndG8SWYn0byYA==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/micromatch": { + "version": "4.0.7", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.7.tgz", + "integrity": "sha512-LPP/3KorzCwBxfeUuZmaR6bG2kdeHSbe0P2tY3FLRU4vYrjYz5hI4QZwV0njUx3jeuKe67YukQ1LSPZBKDqO/Q==", + "extraneous": true, + "dependencies": { + "braces": "^3.0.3", + "picomatch": "^2.3.1" + }, "engines": { - "node": ">=0.10.0" + "node": ">=8.6" } }, - "../../../service/node_modules/map-obj": { - "version": "2.0.0", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/mime": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", + "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", "license": "MIT", "peer": true, + "bin": { + "mime": "cli.js" + }, "engines": { "node": ">=4" } }, - "../../../service/node_modules/map-stream": { - "version": "0.0.7", - "license": "MIT", - "peer": true - }, - "../../../service/node_modules/map-visit": { - "version": "1.0.0", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/mime-db": { + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", "peer": true, - "dependencies": { - "object-visit": "^1.0.0" - }, "engines": { - "node": ">=0.10.0" + "node": ">= 0.6" } }, - "../../../service/node_modules/md5-file": { - "version": "5.0.0", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/mime-types": { + "version": "2.1.35", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", + "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", "peer": true, - "bin": { - "md5-file": "cli.js" + "dependencies": { + "mime-db": "1.52.0" }, "engines": { - "node": ">=10.13.0" - } - }, - "../../../service/node_modules/md5.js": { - "version": "1.3.5", - "license": "MIT", - "peer": true, - "dependencies": { - "hash-base": "^3.0.0", - "inherits": "^2.0.1", - "safe-buffer": "^5.1.2" + "node": ">= 0.6" } }, - "../../../service/node_modules/media-typer": { - "version": "0.3.0", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/mimic-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", + "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", + "optional": true, "peer": true, "engines": { - "node": ">= 0.6" + "node": ">=6" } }, - "../../../service/node_modules/memory-pager": { - "version": "1.5.0", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/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==", "optional": true, - "peer": true - }, - "../../../service/node_modules/memorystream": { - "version": "0.3.1", - "dev": true, "peer": true, "engines": { - "node": ">= 0.10.0" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "../../../service/node_modules/meow": { - "version": "5.0.0", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/minimatch": { + "version": "9.0.3", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", + "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", + "extraneous": true, + "license": "ISC", "dependencies": { - "camelcase-keys": "^4.0.0", - "decamelize-keys": "^1.0.0", - "loud-rejection": "^1.0.0", - "minimist-options": "^3.0.1", - "normalize-package-data": "^2.3.4", - "read-pkg-up": "^3.0.0", - "redent": "^2.0.0", - "trim-newlines": "^2.0.0", - "yargs-parser": "^10.0.0" + "brace-expansion": "^2.0.1" }, "engines": { - "node": ">=6" + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "../../../service/node_modules/merge-descriptors": { - "version": "1.0.1", - "license": "MIT", - "peer": true - }, - "../../../service/node_modules/merge-source-map": { - "version": "1.1.0", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/minimist": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", + "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", "peer": true, - "dependencies": { - "source-map": "^0.6.1" + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "../../../service/node_modules/merge2": { - "version": "1.4.1", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/minipass": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.2.tgz", + "integrity": "sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==", + "extraneous": true, "engines": { - "node": ">= 8" + "node": ">=16 || 14 >=14.17" } }, - "../../../service/node_modules/methods": { - "version": "1.1.2", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/mkdirp": { + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", + "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", "peer": true, - "engines": { - "node": ">= 0.6" + "dependencies": { + "minimist": "^1.2.6" + }, + "bin": { + "mkdirp": "bin/cmd.js" } }, - "../../../service/node_modules/mgrs": { - "version": "1.0.0", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/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==", + "optional": true, "peer": true }, - "../../../service/node_modules/micromatch": { - "version": "3.1.10", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "arr-diff": "^4.0.0", - "array-unique": "^0.3.2", - "braces": "^2.3.1", - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "extglob": "^2.0.4", - "fragment-cache": "^0.2.1", - "kind-of": "^6.0.2", - "nanomatch": "^1.2.9", - "object.pick": "^1.3.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.2" + "node_modules/@ngageoint/mage.service/node_modules/mocha": { + "version": "10.8.2", + "resolved": "https://registry.npmjs.org/mocha/-/mocha-10.8.2.tgz", + "integrity": "sha512-VZlYo/WE8t1tstuRmqgeyBgCbJc/lEdopaa+axcKzTBJ+UIdlAB9XnmvTCAH4pwR4ElNInaedhEBmZD8iCSVEg==", + "extraneous": true, + "license": "MIT", + "dependencies": { + "ansi-colors": "^4.1.3", + "browser-stdout": "^1.3.1", + "chokidar": "^3.5.3", + "debug": "^4.3.5", + "diff": "^5.2.0", + "escape-string-regexp": "^4.0.0", + "find-up": "^5.0.0", + "glob": "^8.1.0", + "he": "^1.2.0", + "js-yaml": "^4.1.0", + "log-symbols": "^4.1.0", + "minimatch": "^5.1.6", + "ms": "^2.1.3", + "serialize-javascript": "^6.0.2", + "strip-json-comments": "^3.1.1", + "supports-color": "^8.1.1", + "workerpool": "^6.5.1", + "yargs": "^16.2.0", + "yargs-parser": "^20.2.9", + "yargs-unparser": "^2.0.0" }, - "engines": { - "node": ">=0.10.0" - } - }, - "../../../service/node_modules/mime": { - "version": "1.6.0", - "license": "MIT", - "peer": true, "bin": { - "mime": "cli.js" + "_mocha": "bin/_mocha", + "mocha": "bin/mocha.js" }, "engines": { - "node": ">=4" + "node": ">= 14.0.0" } }, - "../../../service/node_modules/mime-db": { - "version": "1.52.0", - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/mocha/node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/mocha/node_modules/glob": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/glob/-/glob-8.1.0.tgz", + "integrity": "sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ==", + "deprecated": "Glob versions prior to v9 are no longer supported", + "extraneous": true, + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^5.0.1", + "once": "^1.3.0" + }, "engines": { - "node": ">= 0.6" + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "../../../service/node_modules/mime-types": { - "version": "2.1.35", - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/mocha/node_modules/js-yaml": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", + "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", + "extraneous": true, "dependencies": { - "mime-db": "1.52.0" + "argparse": "^2.0.1" }, - "engines": { - "node": ">= 0.6" + "bin": { + "js-yaml": "bin/js-yaml.js" } }, - "../../../service/node_modules/mimic-fn": { - "version": "2.1.0", - "devOptional": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/mocha/node_modules/minimatch": { + "version": "5.1.6", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz", + "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==", + "extraneous": true, + "license": "ISC", + "dependencies": { + "brace-expansion": "^2.0.1" + }, "engines": { - "node": ">=6" + "node": ">=10" } }, - "../../../service/node_modules/mimic-response": { - "version": "2.1.0", - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/mocha/node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/mocha/node_modules/supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "extraneous": true, + "dependencies": { + "has-flag": "^4.0.0" + }, "engines": { - "node": ">=8" + "node": ">=10" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://github.com/chalk/supports-color?sponsor=1" } }, - "../../../service/node_modules/minimalistic-assert": { - "version": "1.0.1", - "license": "ISC", - "peer": true + "node_modules/@ngageoint/mage.service/node_modules/mock-fs": { + "version": "4.14.0", + "resolved": "https://registry.npmjs.org/mock-fs/-/mock-fs-4.14.0.tgz", + "integrity": "sha512-qYvlv/exQ4+svI3UOvPUpLDF0OMX5euvUH0Ny4N5QyRyhNdgAgUrVH3iUINSzEPLvx0kbo/Bp28GJKIqvE7URw==", + "extraneous": true, + "license": "MIT" }, - "../../../service/node_modules/minimalistic-crypto-utils": { + "node_modules/@ngageoint/mage.service/node_modules/module-not-found-error": { "version": "1.0.1", - "license": "MIT", - "peer": true + "resolved": "https://registry.npmjs.org/module-not-found-error/-/module-not-found-error-1.0.1.tgz", + "integrity": "sha512-pEk4ECWQXV6z2zjhRZUongnLJNUeGQJ3w6OQ5ctGwD+i5o93qjRQUk2Rt6VdNeu3sEP0AB4LcfvdebpxBRVr4g==", + "extraneous": true }, - "../../../service/node_modules/minimatch": { - "version": "3.1.2", - "license": "ISC", + "node_modules/@ngageoint/mage.service/node_modules/moment": { + "version": "2.30.1", + "resolved": "https://registry.npmjs.org/moment/-/moment-2.30.1.tgz", + "integrity": "sha512-uEmtNhbDOrWPFS+hdjFCBfy9f2YoyzRpwcl+DqpC6taX21FzsTLQVbMV/W7PzNSX6x/bhC1zA3c2UQ5NzH6how==", + "license": "MIT", "peer": true, - "dependencies": { - "brace-expansion": "^1.1.7" - }, "engines": { "node": "*" } }, - "../../../service/node_modules/minimist": { - "version": "1.2.0", - "license": "MIT", - "peer": true - }, - "../../../service/node_modules/minimist-options": { - "version": "3.0.2", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/mongodb": { + "version": "4.17.2", + "resolved": "https://registry.npmjs.org/mongodb/-/mongodb-4.17.2.tgz", + "integrity": "sha512-mLV7SEiov2LHleRJPMPrK2PMyhXFZt2UQLC4VD4pnth3jMjYKHhtqfwwkkvS/NXuo/Fp3vbhaNcXrIDaLRb9Tg==", "peer": true, "dependencies": { - "arrify": "^1.0.1", - "is-plain-obj": "^1.1.0" + "bson": "^4.7.2", + "mongodb-connection-string-url": "^2.6.0", + "socks": "^2.7.1" }, "engines": { - "node": ">= 4" + "node": ">=12.9.0" + }, + "optionalDependencies": { + "@aws-sdk/credential-providers": "^3.186.0", + "@mongodb-js/saslprep": "^1.1.0" } }, - "../../../service/node_modules/minipass": { - "version": "3.3.6", - "license": "ISC", + "node_modules/@ngageoint/mage.service/node_modules/mongodb-connection-string-url": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/mongodb-connection-string-url/-/mongodb-connection-string-url-2.6.0.tgz", + "integrity": "sha512-WvTZlI9ab0QYtTYnuMLgobULWhokRjtC7db9LtcVfJ+Hsnyr5eo6ZtNAt3Ly24XZScGMelOcGtm7lSn0332tPQ==", "peer": true, "dependencies": { - "yallist": "^4.0.0" + "@types/whatwg-url": "^8.2.1", + "whatwg-url": "^11.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/mongodb-memory-server": { + "version": "9.5.0", + "resolved": "https://registry.npmjs.org/mongodb-memory-server/-/mongodb-memory-server-9.5.0.tgz", + "integrity": "sha512-In3zRT40cLlVtpy7FK6b96Lby6JBAdXj8Kf9YrH4p1Aa2X4ptojq7SmiRR3x47Lo0/UCXXIwhJpkdbYY8kRZAw==", + "extraneous": true, + "hasInstallScript": true, + "license": "MIT", + "dependencies": { + "mongodb-memory-server-core": "9.5.0", + "tslib": "^2.6.3" }, "engines": { - "node": ">=8" + "node": ">=14.20.1" } }, - "../../../service/node_modules/minipass/node_modules/yallist": { - "version": "4.0.0", - "license": "ISC", - "peer": true - }, - "../../../service/node_modules/minizlib": { - "version": "2.1.2", + "node_modules/@ngageoint/mage.service/node_modules/mongodb-memory-server-core": { + "version": "9.5.0", + "resolved": "https://registry.npmjs.org/mongodb-memory-server-core/-/mongodb-memory-server-core-9.5.0.tgz", + "integrity": "sha512-Jb/V80JeYAKWaF4bPFme7SmTR6ew1PWgkpPUepLDfRraeN49i1cruxICeA4zz4T33W/o31N+zazP8wI8ebf7yw==", + "extraneous": true, "license": "MIT", - "peer": true, "dependencies": { - "minipass": "^3.0.0", - "yallist": "^4.0.0" + "async-mutex": "^0.4.1", + "camelcase": "^6.3.0", + "debug": "^4.3.7", + "find-cache-dir": "^3.3.2", + "follow-redirects": "^1.15.9", + "https-proxy-agent": "^7.0.5", + "mongodb": "^5.9.2", + "new-find-package-json": "^2.0.0", + "semver": "^7.6.3", + "tar-stream": "^3.1.7", + "tslib": "^2.6.3", + "yauzl": "^3.1.3" }, "engines": { - "node": ">= 8" + "node": ">=14.20.1" } }, - "../../../service/node_modules/minizlib/node_modules/yallist": { - "version": "4.0.0", - "license": "ISC", - "peer": true + "node_modules/@ngageoint/mage.service/node_modules/mongodb-memory-server-core/node_modules/bson": { + "version": "5.5.1", + "resolved": "https://registry.npmjs.org/bson/-/bson-5.5.1.tgz", + "integrity": "sha512-ix0EwukN2EpC0SRWIj/7B5+A6uQMQy6KMREI9qQqvgpkV2frH63T0UDVd1SYedL6dNCmDBYB3QtXi4ISk9YT+g==", + "extraneous": true, + "license": "Apache-2.0", + "engines": { + "node": ">=14.20.1" + } }, - "../../../service/node_modules/mixin-deep": { - "version": "1.3.2", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/mongodb-memory-server-core/node_modules/debug": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.0.tgz", + "integrity": "sha512-6WTZ/IxCY/T6BALoZHaE4ctp9xm+Z5kY/pzYaCHRFeyVhojxlrm+46y68HA6hr0TcwEssoxNiDEUJQjfPZ/RYA==", + "extraneous": true, "license": "MIT", - "peer": true, "dependencies": { - "for-in": "^1.0.2", - "is-extendable": "^1.0.1" + "ms": "^2.1.3" }, "engines": { - "node": ">=0.10.0" + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } } }, - "../../../service/node_modules/mkdirp": { - "version": "0.5.6", - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/mongodb-memory-server-core/node_modules/mongodb": { + "version": "5.9.2", + "resolved": "https://registry.npmjs.org/mongodb/-/mongodb-5.9.2.tgz", + "integrity": "sha512-H60HecKO4Bc+7dhOv4sJlgvenK4fQNqqUIlXxZYQNbfEWSALGAwGoyJd/0Qwk4TttFXUOHJ2ZJQe/52ScaUwtQ==", + "extraneous": true, + "license": "Apache-2.0", "dependencies": { - "minimist": "^1.2.6" + "bson": "^5.5.0", + "mongodb-connection-string-url": "^2.6.0", + "socks": "^2.7.1" }, - "bin": { - "mkdirp": "bin/cmd.js" + "engines": { + "node": ">=14.20.1" + }, + "optionalDependencies": { + "@mongodb-js/saslprep": "^1.1.0" + }, + "peerDependencies": { + "@aws-sdk/credential-providers": "^3.188.0", + "@mongodb-js/zstd": "^1.0.0", + "kerberos": "^1.0.0 || ^2.0.0", + "mongodb-client-encryption": ">=2.3.0 <3", + "snappy": "^7.2.2" + }, + "peerDependenciesMeta": { + "@aws-sdk/credential-providers": { + "optional": true + }, + "@mongodb-js/zstd": { + "optional": true + }, + "kerberos": { + "optional": true + }, + "mongodb-client-encryption": { + "optional": true + }, + "snappy": { + "optional": true + } } }, - "../../../service/node_modules/mkdirp-classic": { - "version": "0.5.3", - "license": "MIT", - "peer": true + "node_modules/@ngageoint/mage.service/node_modules/mongodb-memory-server-core/node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "extraneous": true, + "license": "MIT" }, - "../../../service/node_modules/mkdirp/node_modules/minimist": { - "version": "1.2.7", + "node_modules/@ngageoint/mage.service/node_modules/mongodb-memory-server-core/node_modules/tar-stream": { + "version": "3.1.7", + "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-3.1.7.tgz", + "integrity": "sha512-qJj60CXt7IU1Ffyc3NJMjh6EkuCFej46zUqJ4J7pqYlThyd9bO0XBTmcOIhSzZJVWfsLks0+nle/j538YAW9RQ==", + "extraneous": true, "license": "MIT", - "peer": true, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "dependencies": { + "b4a": "^1.6.4", + "fast-fifo": "^1.2.0", + "streamx": "^2.15.0" } }, - "../../../service/node_modules/mocha": { - "version": "7.2.0", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/mongoose": { + "version": "6.13.8", + "resolved": "https://registry.npmjs.org/mongoose/-/mongoose-6.13.8.tgz", + "integrity": "sha512-JHKco/533CyVrqCbyQsnqMpLn8ZCiKrPDTd2mvo2W7ygIvhygWjX2wj+RPjn6upZZgw0jC6U51RD7kUsyK8NBg==", "license": "MIT", "peer": true, "dependencies": { - "ansi-colors": "3.2.3", - "browser-stdout": "1.3.1", - "chokidar": "3.3.0", - "debug": "3.2.6", - "diff": "3.5.0", - "escape-string-regexp": "1.0.5", - "find-up": "3.0.0", - "glob": "7.1.3", - "growl": "1.10.5", - "he": "1.2.0", - "js-yaml": "3.13.1", - "log-symbols": "3.0.0", - "minimatch": "3.0.4", - "mkdirp": "0.5.5", - "ms": "2.1.1", - "node-environment-flags": "1.0.6", - "object.assign": "4.1.0", - "strip-json-comments": "2.0.1", - "supports-color": "6.0.0", - "which": "1.3.1", - "wide-align": "1.1.3", - "yargs": "13.3.2", - "yargs-parser": "13.1.2", - "yargs-unparser": "1.6.0" - }, - "bin": { - "_mocha": "bin/_mocha", - "mocha": "bin/mocha" + "bson": "^4.7.2", + "kareem": "2.5.1", + "mongodb": "4.17.2", + "mpath": "0.9.0", + "mquery": "4.0.3", + "ms": "2.1.3", + "sift": "16.0.1" }, "engines": { - "node": ">= 8.10.0" + "node": ">=12.0.0" }, "funding": { "type": "opencollective", - "url": "https://opencollective.com/mochajs" + "url": "https://opencollective.com/mongoose" } }, - "../../../service/node_modules/mocha/node_modules/camelcase": { - "version": "5.3.1", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/mongoose/node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/mpath": { + "version": "0.9.0", + "resolved": "https://registry.npmjs.org/mpath/-/mpath-0.9.0.tgz", + "integrity": "sha512-ikJRQTk8hw5DEoFVxHG1Gn9T/xcjtdnOKIU1JTmGjZZlg9LST2mBLmcX3/ICIbgJydT2GOc15RnNy5mHmzfSew==", "peer": true, "engines": { - "node": ">=6" + "node": ">=4.0.0" } }, - "../../../service/node_modules/mocha/node_modules/debug": { - "version": "3.2.6", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/mquery": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/mquery/-/mquery-4.0.3.tgz", + "integrity": "sha512-J5heI+P08I6VJ2Ky3+33IpCdAvlYGTSUjwTPxkAr8i8EoduPMBX2OY/wa3IKZIQl7MU4SbFk8ndgSKyB/cl1zA==", "peer": true, "dependencies": { - "ms": "^2.1.1" - } - }, - "../../../service/node_modules/mocha/node_modules/esprima": { - "version": "4.0.1", - "dev": true, - "license": "BSD-2-Clause", - "peer": true, - "bin": { - "esparse": "bin/esparse.js", - "esvalidate": "bin/esvalidate.js" + "debug": "4.x" }, "engines": { - "node": ">=4" + "node": ">=12.0.0" } }, - "../../../service/node_modules/mocha/node_modules/glob": { - "version": "7.1.3", - "dev": true, - "license": "ISC", + "node_modules/@ngageoint/mage.service/node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/multer": { + "version": "1.4.5-lts.1", + "resolved": "https://registry.npmjs.org/multer/-/multer-1.4.5-lts.1.tgz", + "integrity": "sha512-ywPWvcDMeH+z9gQq5qYHCCy+ethsk4goepZ45GLD63fOu0YcNecQxi64nDs3qluZB+murG3/D4dJ7+dGctcCQQ==", "peer": true, "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" + "append-field": "^1.0.0", + "busboy": "^1.0.0", + "concat-stream": "^1.5.2", + "mkdirp": "^0.5.4", + "object-assign": "^4.1.1", + "type-is": "^1.6.4", + "xtend": "^4.0.0" }, "engines": { - "node": "*" + "node": ">= 6.0.0" } }, - "../../../service/node_modules/mocha/node_modules/has-flag": { - "version": "3.0.0", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/mute-stream": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz", + "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==", + "optional": true, + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/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==", + "optional": true, + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/natural-compare": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", + "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/negotiator": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", + "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==", "peer": true, "engines": { - "node": ">=4" + "node": ">= 0.6" } }, - "../../../service/node_modules/mocha/node_modules/js-yaml": { - "version": "3.13.1", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/nested-error-stacks": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/nested-error-stacks/-/nested-error-stacks-2.1.1.tgz", + "integrity": "sha512-9iN1ka/9zmX1ZvLV9ewJYEk9h7RyRRtqdK0woXcqohu8EWIerfPUjYJPg0ULy0UqP7cslmdGc8xKDJcojlKiaw==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/new-find-package-json": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/new-find-package-json/-/new-find-package-json-2.0.0.tgz", + "integrity": "sha512-lDcBsjBSMlj3LXH2v/FW3txlh2pYTjmbOXPYJD93HI5EwuLzI11tdHSIpUMmfq/IOsldj4Ps8M8flhm+pCK4Ew==", + "extraneous": true, "license": "MIT", - "peer": true, "dependencies": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" + "debug": "^4.3.4" }, - "bin": { - "js-yaml": "bin/js-yaml.js" + "engines": { + "node": ">=12.22.0" } }, - "../../../service/node_modules/mocha/node_modules/minimatch": { - "version": "3.0.4", - "dev": true, - "license": "ISC", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/nice-try": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz", + "integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/nise": { + "version": "1.5.3", + "resolved": "https://registry.npmjs.org/nise/-/nise-1.5.3.tgz", + "integrity": "sha512-Ymbac/94xeIrMf59REBPOv0thr+CJVFMhrlAkW/gjCIE58BGQdCj0x7KRCb3yz+Ga2Rz3E9XXSvUyyxqqhjQAQ==", + "extraneous": true, "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" + "@sinonjs/formatio": "^3.2.1", + "@sinonjs/text-encoding": "^0.7.1", + "just-extend": "^4.0.2", + "lolex": "^5.0.1", + "path-to-regexp": "^1.7.0" } }, - "../../../service/node_modules/mocha/node_modules/minimist": { - "version": "1.2.7", - "dev": true, - "license": "MIT", - "peer": true, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } + "node_modules/@ngageoint/mage.service/node_modules/nise/node_modules/isarray": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", + "integrity": "sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ==", + "extraneous": true }, - "../../../service/node_modules/mocha/node_modules/mkdirp": { - "version": "0.5.5", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/nise/node_modules/lolex": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/lolex/-/lolex-5.1.2.tgz", + "integrity": "sha512-h4hmjAvHTmd+25JSwrtTIuwbKdwg5NzZVRMLn9saij4SZaepCrTCxPr35H/3bjwfMJtN+t3CX8672UIkglz28A==", + "extraneous": true, "dependencies": { - "minimist": "^1.2.5" - }, - "bin": { - "mkdirp": "bin/cmd.js" + "@sinonjs/commons": "^1.7.0" } }, - "../../../service/node_modules/mocha/node_modules/ms": { - "version": "2.1.1", - "dev": true, - "license": "MIT", - "peer": true + "node_modules/@ngageoint/mage.service/node_modules/nise/node_modules/path-to-regexp": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-1.8.0.tgz", + "integrity": "sha512-n43JRhlUKUAlibEJhPeir1ncUID16QnEjNpwzNdO3Lm4ywrBpBZ5oLD0I6br9evr1Y9JTqwRtAh7JLoOzAQdVA==", + "extraneous": true, + "dependencies": { + "isarray": "0.0.1" + } }, - "../../../service/node_modules/mocha/node_modules/object.assign": { - "version": "4.1.0", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/nock": { + "version": "11.9.1", + "resolved": "https://registry.npmjs.org/nock/-/nock-11.9.1.tgz", + "integrity": "sha512-U5wPctaY4/ar2JJ5Jg4wJxlbBfayxgKbiAeGh+a1kk6Pwnc2ZEuKviLyDSG6t0uXl56q7AALIxoM6FJrBSsVXA==", + "extraneous": true, "license": "MIT", - "peer": true, "dependencies": { - "define-properties": "^1.1.2", - "function-bind": "^1.1.1", - "has-symbols": "^1.0.0", - "object-keys": "^1.0.11" + "debug": "^4.1.0", + "json-stringify-safe": "^5.0.1", + "lodash": "^4.17.13", + "mkdirp": "^0.5.0", + "propagate": "^2.0.0" }, "engines": { - "node": ">= 0.4" + "node": ">= 8.0" } }, - "../../../service/node_modules/mocha/node_modules/strip-json-comments": { - "version": "2.0.1", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/node-abi": { + "version": "3.65.0", + "resolved": "https://registry.npmjs.org/node-abi/-/node-abi-3.65.0.tgz", + "integrity": "sha512-ThjYBfoDNr08AWx6hGaRbfPwxKV9kVzAzOzlLKbk2CuqXE2xnCh+cbAGnwM3t8Lq4v9rUB7VfondlkBckcJrVA==", + "optional": true, "peer": true, + "dependencies": { + "semver": "^7.3.5" + }, "engines": { - "node": ">=0.10.0" + "node": ">=10" } }, - "../../../service/node_modules/mocha/node_modules/supports-color": { - "version": "6.0.0", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/node-fetch": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.7.0.tgz", + "integrity": "sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==", "license": "MIT", "peer": true, "dependencies": { - "has-flag": "^3.0.0" + "whatwg-url": "^5.0.0" }, "engines": { - "node": ">=6" - } - }, - "../../../service/node_modules/mocha/node_modules/yargs-parser": { - "version": "13.1.2", - "dev": true, - "license": "ISC", - "peer": true, - "dependencies": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" + "node": "4.x || >=6.0.0" + }, + "peerDependencies": { + "encoding": "^0.1.0" + }, + "peerDependenciesMeta": { + "encoding": { + "optional": true + } } }, - "../../../service/node_modules/mock-fs": { - "version": "4.13.0", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/node-fetch/node_modules/tr46": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", + "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==", "license": "MIT", "peer": true }, - "../../../service/node_modules/module-not-found-error": { - "version": "1.0.1", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/node-fetch/node_modules/webidl-conversions": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", + "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==", + "license": "BSD-2-Clause", "peer": true }, - "../../../service/node_modules/moment": { - "version": "2.22.2", + "node_modules/@ngageoint/mage.service/node_modules/node-fetch/node_modules/whatwg-url": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", + "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", "license": "MIT", "peer": true, - "engines": { - "node": "*" - } - }, - "../../../service/node_modules/mongodb": { - "version": "4.11.0", - "license": "Apache-2.0", - "peer": true, "dependencies": { - "bson": "^4.7.0", - "denque": "^2.1.0", - "mongodb-connection-string-url": "^2.5.4", - "socks": "^2.7.1" - }, - "engines": { - "node": ">=12.9.0" - }, - "optionalDependencies": { - "@aws-sdk/credential-providers": "^3.186.0", - "saslprep": "^1.0.3" + "tr46": "~0.0.3", + "webidl-conversions": "^3.0.0" } }, - "../../../service/node_modules/mongodb-connection-string-url": { - "version": "2.6.0", - "license": "Apache-2.0", + "node_modules/@ngageoint/mage.service/node_modules/nomnom": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/nomnom/-/nomnom-1.8.1.tgz", + "integrity": "sha512-5s0JxqhDx9/rksG2BTMVN1enjWSvPidpoSgViZU4ZXULyTe+7jxcCRLB6f42Z0l1xYJpleCBtSyY6Lwg3uu5CQ==", + "deprecated": "Package no longer supported. Contact support@npmjs.com for more info.", "peer": true, "dependencies": { - "@types/whatwg-url": "^8.2.1", - "whatwg-url": "^11.0.0" + "chalk": "~0.4.0", + "underscore": "~1.6.0" } }, - "../../../service/node_modules/mongodb-memory-server": { - "version": "8.10.1", - "dev": true, - "hasInstallScript": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/nomnom/node_modules/ansi-styles": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-1.0.0.tgz", + "integrity": "sha512-3iF4FIKdxaVYT3JqQuY3Wat/T2t7TRbbQ94Fu50ZUCbLy4TFbTzr90NOHQodQkNqmeEGCw8WbeP78WNi6SKYUA==", "peer": true, - "dependencies": { - "mongodb-memory-server-core": "8.10.1", - "tslib": "^2.4.1" - }, "engines": { - "node": ">=12.22.0" + "node": ">=0.8.0" } }, - "../../../service/node_modules/mongodb-memory-server-core": { - "version": "8.10.1", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/nomnom/node_modules/chalk": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-0.4.0.tgz", + "integrity": "sha512-sQfYDlfv2DGVtjdoQqxS0cEZDroyG8h6TamA6rvxwlrU5BaSLDx9xhatBYl2pxZ7gmpNaPFVwBtdGdu5rQ+tYQ==", "peer": true, "dependencies": { - "@types/tmp": "^0.2.3", - "async-mutex": "^0.3.2", - "camelcase": "^6.3.0", - "debug": "^4.3.4", - "find-cache-dir": "^3.3.2", - "get-port": "^5.1.1", - "https-proxy-agent": "^5.0.1", - "md5-file": "^5.0.0", - "mongodb": "~4.11.0", - "new-find-package-json": "^2.0.0", - "semver": "^7.3.8", - "tar-stream": "^2.1.4", - "tmp": "^0.2.1", - "tslib": "^2.4.1", - "uuid": "^8.3.1", - "yauzl": "^2.10.0" + "ansi-styles": "~1.0.0", + "has-color": "~0.1.0", + "strip-ansi": "~0.1.0" }, "engines": { - "node": ">=12.22.0" - } - }, - "../../../service/node_modules/mongodb-memory-server-core/node_modules/camelcase": { - "version": "6.3.0", - "dev": true, - "license": "MIT", - "peer": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=0.8.0" } }, - "../../../service/node_modules/mongodb-memory-server-core/node_modules/lru-cache": { - "version": "6.0.0", - "dev": true, - "license": "ISC", + "node_modules/@ngageoint/mage.service/node_modules/nomnom/node_modules/strip-ansi": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-0.1.1.tgz", + "integrity": "sha512-behete+3uqxecWlDAm5lmskaSaISA+ThQ4oNNBDTBJt0x2ppR6IPqfZNuj6BLaLJ/Sji4TPZlcRyOis8wXQTLg==", "peer": true, - "dependencies": { - "yallist": "^4.0.0" + "bin": { + "strip-ansi": "cli.js" }, "engines": { - "node": ">=10" + "node": ">=0.8.0" } }, - "../../../service/node_modules/mongodb-memory-server-core/node_modules/rimraf": { - "version": "3.0.2", - "dev": true, - "license": "ISC", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/nomnom/node_modules/underscore": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.6.0.tgz", + "integrity": "sha512-z4o1fvKUojIWh9XuaVLUDdf86RQiq13AC1dmHbTpoyuu+bquHms76v16CjycCbec87J7z0k//SiQVk0sMdFmpQ==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/normalize-package-data": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", + "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", + "extraneous": true, "dependencies": { - "glob": "^7.1.3" - }, - "bin": { - "rimraf": "bin.js" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" + "hosted-git-info": "^2.1.4", + "resolve": "^1.10.0", + "semver": "2 || 3 || 4 || 5", + "validate-npm-package-license": "^3.0.1" } }, - "../../../service/node_modules/mongodb-memory-server-core/node_modules/semver": { - "version": "7.3.8", - "dev": true, - "license": "ISC", - "peer": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, + "node_modules/@ngageoint/mage.service/node_modules/normalize-package-data/node_modules/semver": { + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", + "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", + "extraneous": true, "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" + "semver": "bin/semver" } }, - "../../../service/node_modules/mongodb-memory-server-core/node_modules/tmp": { - "version": "0.2.1", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", "peer": true, - "dependencies": { - "rimraf": "^3.0.0" - }, "engines": { - "node": ">=8.17.0" + "node": ">=0.10.0" } }, - "../../../service/node_modules/mongodb-memory-server-core/node_modules/yallist": { - "version": "4.0.0", - "dev": true, - "license": "ISC", - "peer": true - }, - "../../../service/node_modules/mongoose": { - "version": "6.7.4", - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/npm-run-all": { + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/npm-run-all/-/npm-run-all-4.1.5.tgz", + "integrity": "sha512-Oo82gJDAVcaMdi3nuoKFavkIHBRVqQ1qvMb+9LHk/cF4P6B2m8aP04hGf7oL6wZ9BuGwX1onlLhpuoofSyoQDQ==", + "extraneous": true, "dependencies": { - "bson": "^4.7.0", - "kareem": "2.4.1", - "mongodb": "4.11.0", - "mpath": "0.9.0", - "mquery": "4.0.3", - "ms": "2.1.3", - "sift": "16.0.1" + "ansi-styles": "^3.2.1", + "chalk": "^2.4.1", + "cross-spawn": "^6.0.5", + "memorystream": "^0.3.1", + "minimatch": "^3.0.4", + "pidtree": "^0.3.0", + "read-pkg": "^3.0.0", + "shell-quote": "^1.6.1", + "string.prototype.padend": "^3.0.0" }, - "engines": { - "node": ">=12.0.0" + "bin": { + "npm-run-all": "bin/npm-run-all/index.js", + "run-p": "bin/run-p/index.js", + "run-s": "bin/run-s/index.js" }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/mongoose" + "engines": { + "node": ">= 4" } }, - "../../../service/node_modules/mongoose-beautiful-unique-validation": { - "version": "7.1.1", - "license": "MIT", - "peer": true, - "engines": { - "node": ">=0.10.0" + "node_modules/@ngageoint/mage.service/node_modules/npm-run-all/node_modules/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==", + "extraneous": true, + "dependencies": { + "color-convert": "^1.9.0" }, - "peerDependencies": { - "mongoose": ">=4.11.4" + "engines": { + "node": ">=4" } }, - "../../../service/node_modules/mongoose/node_modules/ms": { - "version": "2.1.3", - "license": "MIT", - "peer": true - }, - "../../../service/node_modules/mpath": { - "version": "0.9.0", - "license": "MIT", - "peer": true, - "engines": { - "node": ">=4.0.0" + "node_modules/@ngageoint/mage.service/node_modules/npm-run-all/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "extraneous": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" } }, - "../../../service/node_modules/mquery": { - "version": "4.0.3", - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/npm-run-all/node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "extraneous": true, "dependencies": { - "debug": "4.x" + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" }, "engines": { - "node": ">=12.0.0" + "node": ">=4" } }, - "../../../service/node_modules/ms": { - "version": "2.1.2", - "license": "MIT", - "peer": true + "node_modules/@ngageoint/mage.service/node_modules/npm-run-all/node_modules/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==", + "extraneous": true, + "dependencies": { + "color-name": "1.1.3" + } }, - "../../../service/node_modules/multer": { - "version": "1.4.4", - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/npm-run-all/node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/npm-run-all/node_modules/cross-spawn": { + "version": "6.0.5", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", + "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", + "extraneous": true, "dependencies": { - "append-field": "^1.0.0", - "busboy": "^0.2.11", - "concat-stream": "^1.5.2", - "mkdirp": "^0.5.4", - "object-assign": "^4.1.1", - "on-finished": "^2.3.0", - "type-is": "^1.6.4", - "xtend": "^4.0.0" + "nice-try": "^1.0.4", + "path-key": "^2.0.1", + "semver": "^5.5.0", + "shebang-command": "^1.2.0", + "which": "^1.2.9" }, "engines": { - "node": ">= 0.10.0" + "node": ">=4.8" } }, - "../../../service/node_modules/multer/node_modules/busboy": { - "version": "0.2.14", - "peer": true, - "dependencies": { - "dicer": "0.2.5", - "readable-stream": "1.1.x" - }, + "node_modules/@ngageoint/mage.service/node_modules/npm-run-all/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "extraneous": true, "engines": { "node": ">=0.8.0" } }, - "../../../service/node_modules/multer/node_modules/isarray": { - "version": "0.0.1", - "license": "MIT", - "peer": true + "node_modules/@ngageoint/mage.service/node_modules/npm-run-all/node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "extraneous": true, + "engines": { + "node": ">=4" + } }, - "../../../service/node_modules/multer/node_modules/readable-stream": { - "version": "1.1.14", - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/npm-run-all/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "extraneous": true, "dependencies": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.1", - "isarray": "0.0.1", - "string_decoder": "~0.10.x" + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" } }, - "../../../service/node_modules/multer/node_modules/string_decoder": { - "version": "0.10.31", - "license": "MIT", - "peer": true + "node_modules/@ngageoint/mage.service/node_modules/npm-run-all/node_modules/path-key": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", + "integrity": "sha512-fEHGKCSmUSDPv4uoj8AlD+joPlq3peND+HRYyxFz4KPw4z926S/b8rIuFs2FYJg3BwsxJf6A9/3eIdLaYC+9Dw==", + "extraneous": true, + "engines": { + "node": ">=4" + } }, - "../../../service/node_modules/mute-stream": { - "version": "0.0.8", - "devOptional": true, - "license": "ISC", - "peer": true + "node_modules/@ngageoint/mage.service/node_modules/npm-run-all/node_modules/semver": { + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", + "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", + "extraneous": true, + "bin": { + "semver": "bin/semver" + } }, - "../../../service/node_modules/mv": { - "version": "2.1.1", - "license": "MIT", - "optional": true, - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/npm-run-all/node_modules/shebang-command": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", + "integrity": "sha512-EV3L1+UQWGor21OmnvojK36mhg+TyIKDh3iFBKBohr5xeXIhNBcx8oWdgkTEEQ+BEFFYdLRuqMfd5L84N1V5Vg==", + "extraneous": true, "dependencies": { - "mkdirp": "~0.5.1", - "ncp": "~2.0.0", - "rimraf": "~2.4.0" + "shebang-regex": "^1.0.0" }, "engines": { - "node": ">=0.8.0" + "node": ">=0.10.0" } }, - "../../../service/node_modules/mv/node_modules/glob": { - "version": "6.0.4", - "license": "ISC", - "optional": true, - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/npm-run-all/node_modules/shebang-regex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", + "integrity": "sha512-wpoSFAxys6b2a2wHZ1XpDSgD7N9iVjg29Ph9uV/uaP9Ex/KXlkTZTeddxDPSYQpgvzKLGJke2UU0AzoGCjNIvQ==", + "extraneous": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/npm-run-all/node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "extraneous": true, "dependencies": { - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "2 || 3", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" + "has-flag": "^3.0.0" }, "engines": { - "node": "*" + "node": ">=4" } }, - "../../../service/node_modules/mv/node_modules/rimraf": { - "version": "2.4.5", - "license": "ISC", - "optional": true, - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/npm-run-all/node_modules/which": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "extraneous": true, "dependencies": { - "glob": "^6.0.1" + "isexe": "^2.0.0" }, "bin": { - "rimraf": "bin.js" + "which": "bin/which" } }, - "../../../service/node_modules/nan": { - "version": "2.17.0", - "license": "MIT", - "optional": true, - "peer": true - }, - "../../../service/node_modules/nanomatch": { - "version": "1.2.13", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/nyc": { + "version": "14.1.1", + "resolved": "https://registry.npmjs.org/nyc/-/nyc-14.1.1.tgz", + "integrity": "sha512-OI0vm6ZGUnoGZv/tLdZ2esSVzDwUC88SNs+6JoSOMVxA+gKMB8Tk7jBwgemLx4O40lhhvZCVw1C+OYLOBOPXWw==", + "extraneous": true, "dependencies": { - "arr-diff": "^4.0.0", - "array-unique": "^0.3.2", - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "fragment-cache": "^0.2.1", - "is-windows": "^1.0.2", - "kind-of": "^6.0.2", - "object.pick": "^1.3.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.1" + "archy": "^1.0.0", + "caching-transform": "^3.0.2", + "convert-source-map": "^1.6.0", + "cp-file": "^6.2.0", + "find-cache-dir": "^2.1.0", + "find-up": "^3.0.0", + "foreground-child": "^1.5.6", + "glob": "^7.1.3", + "istanbul-lib-coverage": "^2.0.5", + "istanbul-lib-hook": "^2.0.7", + "istanbul-lib-instrument": "^3.3.0", + "istanbul-lib-report": "^2.0.8", + "istanbul-lib-source-maps": "^3.0.6", + "istanbul-reports": "^2.2.4", + "js-yaml": "^3.13.1", + "make-dir": "^2.1.0", + "merge-source-map": "^1.1.0", + "resolve-from": "^4.0.0", + "rimraf": "^2.6.3", + "signal-exit": "^3.0.2", + "spawn-wrap": "^1.4.2", + "test-exclude": "^5.2.3", + "uuid": "^3.3.2", + "yargs": "^13.2.2", + "yargs-parser": "^13.0.0" }, - "engines": { - "node": ">=0.10.0" - } - }, - "../../../service/node_modules/napi-build-utils": { - "version": "1.0.2", - "license": "MIT", - "peer": true - }, - "../../../service/node_modules/natural-compare": { - "version": "1.4.0", - "dev": true, - "license": "MIT", - "peer": true - }, - "../../../service/node_modules/ncp": { - "version": "2.0.0", - "license": "MIT", - "optional": true, - "peer": true, "bin": { - "ncp": "bin/ncp" + "nyc": "bin/nyc.js" + }, + "engines": { + "node": ">=6" } }, - "../../../service/node_modules/negotiator": { - "version": "0.6.3", - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/nyc/node_modules/ansi-regex": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.1.tgz", + "integrity": "sha512-ILlv4k/3f6vfQ4OoP2AGvirOktlQ98ZEL1k9FaQjxa3L1abBgbuTDAdPOpvbGncC0BTVQrl+OM8xZGK6tWXt7g==", + "extraneous": true, "engines": { - "node": ">= 0.6" + "node": ">=6" } }, - "../../../service/node_modules/nested-error-stacks": { - "version": "2.1.1", - "dev": true, - "license": "MIT", - "peer": true - }, - "../../../service/node_modules/new-find-package-json": { - "version": "2.0.0", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/nyc/node_modules/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==", + "extraneous": true, "dependencies": { - "debug": "^4.3.4" + "color-convert": "^1.9.0" }, "engines": { - "node": ">=12.22.0" + "node": ">=4" } }, - "../../../service/node_modules/nice-try": { - "version": "1.0.5", - "dev": true, - "license": "MIT", - "peer": true + "node_modules/@ngageoint/mage.service/node_modules/nyc/node_modules/camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "extraneous": true, + "engines": { + "node": ">=6" + } }, - "../../../service/node_modules/nise": { - "version": "1.5.3", - "dev": true, - "license": "BSD-3-Clause", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/nyc/node_modules/cliui": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-5.0.0.tgz", + "integrity": "sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA==", + "extraneous": true, "dependencies": { - "@sinonjs/formatio": "^3.2.1", - "@sinonjs/text-encoding": "^0.7.1", - "just-extend": "^4.0.2", - "lolex": "^5.0.1", - "path-to-regexp": "^1.7.0" + "string-width": "^3.1.0", + "strip-ansi": "^5.2.0", + "wrap-ansi": "^5.1.0" } }, - "../../../service/node_modules/nise/node_modules/isarray": { - "version": "0.0.1", - "dev": true, - "license": "MIT", - "peer": true + "node_modules/@ngageoint/mage.service/node_modules/nyc/node_modules/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==", + "extraneous": true, + "dependencies": { + "color-name": "1.1.3" + } }, - "../../../service/node_modules/nise/node_modules/lolex": { - "version": "5.1.2", - "dev": true, - "license": "BSD-3-Clause", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/nyc/node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/nyc/node_modules/cp-file": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/cp-file/-/cp-file-6.2.0.tgz", + "integrity": "sha512-fmvV4caBnofhPe8kOcitBwSn2f39QLjnAnGq3gO9dfd75mUytzKNZB1hde6QHunW2Rt+OwuBOMc3i1tNElbszA==", + "extraneous": true, "dependencies": { - "@sinonjs/commons": "^1.7.0" + "graceful-fs": "^4.1.2", + "make-dir": "^2.0.0", + "nested-error-stacks": "^2.0.0", + "pify": "^4.0.1", + "safe-buffer": "^5.0.1" + }, + "engines": { + "node": ">=6" } }, - "../../../service/node_modules/nise/node_modules/path-to-regexp": { - "version": "1.8.0", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "isarray": "0.0.1" + "node_modules/@ngageoint/mage.service/node_modules/nyc/node_modules/decamelize": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", + "integrity": "sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA==", + "extraneous": true, + "engines": { + "node": ">=0.10.0" } }, - "../../../service/node_modules/nock": { - "version": "11.9.1", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/nyc/node_modules/emoji-regex": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", + "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/nyc/node_modules/find-cache-dir": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-2.1.0.tgz", + "integrity": "sha512-Tq6PixE0w/VMFfCgbONnkiQIVol/JJL7nRMi20fqzA4NRs9AfeqMGeRdPi3wIhYkxjeBaWh2rxwapn5Tu3IqOQ==", + "extraneous": true, "dependencies": { - "debug": "^4.1.0", - "json-stringify-safe": "^5.0.1", - "lodash": "^4.17.13", - "mkdirp": "^0.5.0", - "propagate": "^2.0.0" + "commondir": "^1.0.1", + "make-dir": "^2.0.0", + "pkg-dir": "^3.0.0" }, "engines": { - "node": ">= 8.0" + "node": ">=6" } }, - "../../../service/node_modules/node-abi": { - "version": "2.30.1", - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/nyc/node_modules/find-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "extraneous": true, "dependencies": { - "semver": "^5.4.1" + "locate-path": "^3.0.0" + }, + "engines": { + "node": ">=6" } }, - "../../../service/node_modules/node-abi/node_modules/semver": { - "version": "5.7.1", - "license": "ISC", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/nyc/node_modules/is-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha512-VHskAKYM8RfSFXwee5t5cbN5PZeq1Wrh6qd5bkyiXIf6UQcN6w/A0eXM9r6t8d+GYOh+o6ZhiEnb88LN/Y8m2w==", + "extraneous": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/nyc/node_modules/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==", + "extraneous": true, + "dependencies": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + }, "bin": { - "semver": "bin/semver" + "js-yaml": "bin/js-yaml.js" } }, - "../../../service/node_modules/node-environment-flags": { - "version": "1.0.6", - "dev": true, - "license": "Apache-2.0", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/nyc/node_modules/locate-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "extraneous": true, "dependencies": { - "object.getownpropertydescriptors": "^2.0.3", - "semver": "^5.7.0" + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" + }, + "engines": { + "node": ">=6" } }, - "../../../service/node_modules/node-environment-flags/node_modules/semver": { - "version": "5.7.1", - "dev": true, - "license": "ISC", - "peer": true, - "bin": { - "semver": "bin/semver" + "node_modules/@ngageoint/mage.service/node_modules/nyc/node_modules/make-dir": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", + "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", + "extraneous": true, + "dependencies": { + "pify": "^4.0.1", + "semver": "^5.6.0" + }, + "engines": { + "node": ">=6" } }, - "../../../service/node_modules/node-fetch": { - "version": "2.6.7", - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/nyc/node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "extraneous": true, "dependencies": { - "whatwg-url": "^5.0.0" + "p-try": "^2.0.0" }, "engines": { - "node": "4.x || >=6.0.0" + "node": ">=6" }, - "peerDependencies": { - "encoding": "^0.1.0" + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/nyc/node_modules/p-locate": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "extraneous": true, + "dependencies": { + "p-limit": "^2.0.0" }, - "peerDependenciesMeta": { - "encoding": { - "optional": true - } + "engines": { + "node": ">=6" } }, - "../../../service/node_modules/node-fetch/node_modules/tr46": { - "version": "0.0.3", - "license": "MIT", - "peer": true + "node_modules/@ngageoint/mage.service/node_modules/nyc/node_modules/path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==", + "extraneous": true, + "engines": { + "node": ">=4" + } }, - "../../../service/node_modules/node-fetch/node_modules/webidl-conversions": { - "version": "3.0.1", - "license": "BSD-2-Clause", - "peer": true + "node_modules/@ngageoint/mage.service/node_modules/nyc/node_modules/pify": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", + "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", + "extraneous": true, + "engines": { + "node": ">=6" + } }, - "../../../service/node_modules/node-fetch/node_modules/whatwg-url": { - "version": "5.0.0", - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/nyc/node_modules/pkg-dir": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-3.0.0.tgz", + "integrity": "sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw==", + "extraneous": true, "dependencies": { - "tr46": "~0.0.3", - "webidl-conversions": "^3.0.0" + "find-up": "^3.0.0" + }, + "engines": { + "node": ">=6" } }, - "../../../service/node_modules/normalize-package-data": { - "version": "2.5.0", - "dev": true, - "license": "BSD-2-Clause", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/nyc/node_modules/rimraf": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", + "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", + "deprecated": "Rimraf versions prior to v4 are no longer supported", + "extraneous": true, "dependencies": { - "hosted-git-info": "^2.1.4", - "resolve": "^1.10.0", - "semver": "2 || 3 || 4 || 5", - "validate-npm-package-license": "^3.0.1" + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" } }, - "../../../service/node_modules/normalize-package-data/node_modules/semver": { - "version": "5.7.1", - "dev": true, - "license": "ISC", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/nyc/node_modules/semver": { + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", + "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", + "extraneous": true, "bin": { "semver": "bin/semver" } }, - "../../../service/node_modules/normalize-path": { - "version": "3.0.0", - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/nyc/node_modules/string-width": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", + "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", + "extraneous": true, + "dependencies": { + "emoji-regex": "^7.0.1", + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^5.1.0" + }, "engines": { - "node": ">=0.10.0" + "node": ">=6" } }, - "../../../service/node_modules/npm-run-all": { - "version": "4.1.5", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/nyc/node_modules/strip-ansi": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", + "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "extraneous": true, "dependencies": { - "ansi-styles": "^3.2.1", - "chalk": "^2.4.1", - "cross-spawn": "^6.0.5", - "memorystream": "^0.3.1", - "minimatch": "^3.0.4", - "pidtree": "^0.3.0", - "read-pkg": "^3.0.0", - "shell-quote": "^1.6.1", - "string.prototype.padend": "^3.0.0" - }, - "bin": { - "npm-run-all": "bin/npm-run-all/index.js", - "run-p": "bin/run-p/index.js", - "run-s": "bin/run-s/index.js" + "ansi-regex": "^4.1.0" }, "engines": { - "node": ">= 4" + "node": ">=6" } }, - "../../../service/node_modules/npm-run-all/node_modules/ansi-styles": { - "version": "3.2.1", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/nyc/node_modules/uuid": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", + "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==", + "deprecated": "Please upgrade to version 7 or higher. Older versions may use Math.random() in certain circumstances, which is known to be problematic. See https://v8.dev/blog/math-random for details.", + "extraneous": true, + "bin": { + "uuid": "bin/uuid" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/nyc/node_modules/wrap-ansi": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-5.1.0.tgz", + "integrity": "sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q==", + "extraneous": true, "dependencies": { - "color-convert": "^1.9.0" + "ansi-styles": "^3.2.0", + "string-width": "^3.0.0", + "strip-ansi": "^5.0.0" }, "engines": { - "node": ">=4" + "node": ">=6" } }, - "../../../service/node_modules/npm-run-all/node_modules/chalk": { - "version": "2.4.2", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/nyc/node_modules/y18n": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz", + "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/nyc/node_modules/yargs": { + "version": "13.3.2", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-13.3.2.tgz", + "integrity": "sha512-AX3Zw5iPruN5ie6xGRIDgqkT+ZhnRlZMLMHAs8tg7nRruy2Nb+i5o9bwghAogtM08q1dpr2LVoS8KSTMYpWXUw==", + "extraneous": true, "dependencies": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "engines": { - "node": ">=4" + "cliui": "^5.0.0", + "find-up": "^3.0.0", + "get-caller-file": "^2.0.1", + "require-directory": "^2.1.1", + "require-main-filename": "^2.0.0", + "set-blocking": "^2.0.0", + "string-width": "^3.0.0", + "which-module": "^2.0.0", + "y18n": "^4.0.0", + "yargs-parser": "^13.1.2" } }, - "../../../service/node_modules/npm-run-all/node_modules/color-convert": { - "version": "1.9.3", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/nyc/node_modules/yargs-parser": { + "version": "13.1.2", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.2.tgz", + "integrity": "sha512-3lbsNRf/j+A4QuSZfDRA7HRSfWrzO0YjqTJd5kjAq37Zep1CEgaYmrH9Q3GwPiB9cHyd1Y1UwggGhJGoxipbzg==", + "extraneous": true, "dependencies": { - "color-name": "1.1.3" + "camelcase": "^5.0.0", + "decamelize": "^1.2.0" } }, - "../../../service/node_modules/npm-run-all/node_modules/color-name": { - "version": "1.1.3", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/oauth": { + "version": "0.10.2", + "resolved": "https://registry.npmjs.org/oauth/-/oauth-0.10.2.tgz", + "integrity": "sha512-JtFnB+8nxDEXgNyniwz573xxbKSOu3R8D40xQKqcjwJ2CDkYqUDI53o6IuzDJBx60Z8VKCm271+t8iFjakrl8Q==", "license": "MIT", "peer": true }, - "../../../service/node_modules/npm-run-all/node_modules/has-flag": { - "version": "3.0.0", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/oauth-sign": { + "version": "0.9.0", + "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz", + "integrity": "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==", + "extraneous": true, "engines": { - "node": ">=4" + "node": "*" } }, - "../../../service/node_modules/npm-run-all/node_modules/supports-color": { - "version": "5.5.0", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", "peer": true, - "dependencies": { - "has-flag": "^3.0.0" - }, "engines": { - "node": ">=4" - } - }, - "../../../service/node_modules/npmlog": { - "version": "4.1.2", - "license": "ISC", - "peer": true, - "dependencies": { - "are-we-there-yet": "~1.1.2", - "console-control-strings": "~1.1.0", - "gauge": "~2.7.3", - "set-blocking": "~2.0.0" + "node": ">=0.10.0" } }, - "../../../service/node_modules/number-is-nan": { - "version": "1.0.1", + "node_modules/@ngageoint/mage.service/node_modules/object-inspect": { + "version": "1.13.4", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.4.tgz", + "integrity": "sha512-W67iLl4J2EXEGTbfeHCffrjDfitvLANg0UlX3wFUUSTx92KXRFegMHUVgSqE+wvhAbi4WqjGg9czysTV2Epbew==", "license": "MIT", "peer": true, "engines": { - "node": ">=0.10.0" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "../../../service/node_modules/nyc": { - "version": "14.1.1", - "dev": true, - "license": "ISC", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/object-is": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/object-is/-/object-is-1.1.6.tgz", + "integrity": "sha512-F8cZ+KfGlSGi09lJT7/Nd6KJZ9ygtvYC0/UYYLI9nmQKLMnydpB9yvbv9K1uSkEu7FU9vYPmVwLg328tX+ot3Q==", + "extraneous": true, "dependencies": { - "archy": "^1.0.0", - "caching-transform": "^3.0.2", - "convert-source-map": "^1.6.0", - "cp-file": "^6.2.0", - "find-cache-dir": "^2.1.0", - "find-up": "^3.0.0", - "foreground-child": "^1.5.6", - "glob": "^7.1.3", - "istanbul-lib-coverage": "^2.0.5", - "istanbul-lib-hook": "^2.0.7", - "istanbul-lib-instrument": "^3.3.0", - "istanbul-lib-report": "^2.0.8", - "istanbul-lib-source-maps": "^3.0.6", - "istanbul-reports": "^2.2.4", - "js-yaml": "^3.13.1", - "make-dir": "^2.1.0", - "merge-source-map": "^1.1.0", - "resolve-from": "^4.0.0", - "rimraf": "^2.6.3", - "signal-exit": "^3.0.2", - "spawn-wrap": "^1.4.2", - "test-exclude": "^5.2.3", - "uuid": "^3.3.2", - "yargs": "^13.2.2", - "yargs-parser": "^13.0.0" - }, - "bin": { - "nyc": "bin/nyc.js" + "call-bind": "^1.0.7", + "define-properties": "^1.2.1" }, "engines": { - "node": ">=6" - } - }, - "../../../service/node_modules/nyc/node_modules/camelcase": { - "version": "5.3.1", - "dev": true, - "license": "MIT", - "peer": true, - "engines": { - "node": ">=6" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "../../../service/node_modules/nyc/node_modules/esprima": { - "version": "4.0.1", - "dev": true, - "license": "BSD-2-Clause", - "peer": true, - "bin": { - "esparse": "bin/esparse.js", - "esvalidate": "bin/esvalidate.js" - }, + "node_modules/@ngageoint/mage.service/node_modules/object-keys": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", + "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", + "extraneous": true, "engines": { - "node": ">=4" + "node": ">= 0.4" } }, - "../../../service/node_modules/nyc/node_modules/find-cache-dir": { - "version": "2.1.0", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/object.assign": { + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.5.tgz", + "integrity": "sha512-byy+U7gp+FVwmyzKPYhW2h5l3crpmGsxl7X2s8y43IgxvG4g3QZ6CffDtsNQy1WsmZpQbO+ybo0AlW7TY6DcBQ==", + "extraneous": true, "dependencies": { - "commondir": "^1.0.1", - "make-dir": "^2.0.0", - "pkg-dir": "^3.0.0" + "call-bind": "^1.0.5", + "define-properties": "^1.2.1", + "has-symbols": "^1.0.3", + "object-keys": "^1.1.1" }, "engines": { - "node": ">=6" - } - }, - "../../../service/node_modules/nyc/node_modules/js-yaml": { - "version": "3.14.1", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" + "node": ">= 0.4" }, - "bin": { - "js-yaml": "bin/js-yaml.js" + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "../../../service/node_modules/nyc/node_modules/pkg-dir": { - "version": "3.0.0", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/on-finished": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz", + "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==", "license": "MIT", "peer": true, "dependencies": { - "find-up": "^3.0.0" + "ee-first": "1.1.1" }, "engines": { - "node": ">=6" + "node": ">= 0.8" } }, - "../../../service/node_modules/nyc/node_modules/uuid": { - "version": "3.4.0", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/on-headers": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/on-headers/-/on-headers-1.0.2.tgz", + "integrity": "sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA==", "peer": true, - "bin": { - "uuid": "bin/uuid" + "engines": { + "node": ">= 0.8" } }, - "../../../service/node_modules/nyc/node_modules/yargs-parser": { - "version": "13.1.2", - "dev": true, - "license": "ISC", + "node_modules/@ngageoint/mage.service/node_modules/once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", "peer": true, "dependencies": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" - } - }, - "../../../service/node_modules/oauth": { - "version": "0.9.15", - "license": "MIT", - "peer": true - }, - "../../../service/node_modules/oauth-sign": { - "version": "0.9.0", - "dev": true, - "license": "Apache-2.0", - "peer": true, - "engines": { - "node": "*" + "wrappy": "1" } }, - "../../../service/node_modules/object-assign": { - "version": "4.1.1", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/onetime": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", + "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", + "optional": true, "peer": true, + "dependencies": { + "mimic-fn": "^2.1.0" + }, "engines": { - "node": ">=0.10.0" + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "../../../service/node_modules/object-copy": { - "version": "0.1.0", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/openapi-enforcer": { + "version": "1.23.0", + "resolved": "https://registry.npmjs.org/openapi-enforcer/-/openapi-enforcer-1.23.0.tgz", + "integrity": "sha512-Ja6kvNQ28jvCHpotNZkB129/dBg2IslMDV56aUSl1Dcs+bcd8lGJTq1NatGYsspGpURXvQnFA/q2K8V3AQoO3Q==", + "extraneous": true, + "license": "Apache-2.0", "dependencies": { - "copy-descriptor": "^0.1.0", - "define-property": "^0.2.5", - "kind-of": "^3.0.3" - }, - "engines": { - "node": ">=0.10.0" + "js-yaml": "^4.1.0", + "randexp": "^0.5.3" } }, - "../../../service/node_modules/object-copy/node_modules/define-property": { - "version": "0.2.5", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/openapi-enforcer/node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "extraneous": true, + "license": "Python-2.0" + }, + "node_modules/@ngageoint/mage.service/node_modules/openapi-enforcer/node_modules/js-yaml": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", + "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", + "extraneous": true, "license": "MIT", - "peer": true, "dependencies": { - "is-descriptor": "^0.1.0" + "argparse": "^2.0.1" }, - "engines": { - "node": ">=0.10.0" + "bin": { + "js-yaml": "bin/js-yaml.js" } }, - "../../../service/node_modules/object-copy/node_modules/is-accessor-descriptor": { - "version": "0.1.6", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/opentype.js": { + "version": "0.7.3", + "resolved": "https://registry.npmjs.org/opentype.js/-/opentype.js-0.7.3.tgz", + "integrity": "sha512-Veui5vl2bLonFJ/SjX/WRWJT3SncgiZNnKUyahmXCc2sa1xXW15u3R/3TN5+JFiP7RsjK5ER4HA5eWaEmV9deA==", "peer": true, "dependencies": { - "kind-of": "^3.0.2" + "tiny-inflate": "^1.0.2" }, - "engines": { - "node": ">=0.10.0" + "bin": { + "ot": "bin/ot" } }, - "../../../service/node_modules/object-copy/node_modules/is-buffer": { - "version": "1.1.6", - "dev": true, - "license": "MIT", - "peer": true - }, - "../../../service/node_modules/object-copy/node_modules/is-data-descriptor": { - "version": "0.1.4", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/optionator": { + "version": "0.9.4", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.4.tgz", + "integrity": "sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==", + "extraneous": true, "dependencies": { - "kind-of": "^3.0.2" + "deep-is": "^0.1.3", + "fast-levenshtein": "^2.0.6", + "levn": "^0.4.1", + "prelude-ls": "^1.2.1", + "type-check": "^0.4.0", + "word-wrap": "^1.2.5" }, "engines": { - "node": ">=0.10.0" + "node": ">= 0.8.0" } }, - "../../../service/node_modules/object-copy/node_modules/is-descriptor": { - "version": "0.1.6", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "is-accessor-descriptor": "^0.1.6", - "is-data-descriptor": "^0.1.4", - "kind-of": "^5.0.0" - }, + "node_modules/@ngageoint/mage.service/node_modules/os-homedir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", + "integrity": "sha512-B5JU3cabzk8c67mRRd3ECmROafjYMXbuzlwtqdM8IbS8ktlTix8aFGb2bAGKrSRIlnfKwovGUUr72JUPyOb6kQ==", + "extraneous": true, "engines": { "node": ">=0.10.0" } }, - "../../../service/node_modules/object-copy/node_modules/is-descriptor/node_modules/kind-of": { - "version": "5.1.0", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/os-tmpdir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", + "integrity": "sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==", + "optional": true, "peer": true, "engines": { "node": ">=0.10.0" } }, - "../../../service/node_modules/object-copy/node_modules/kind-of": { - "version": "3.2.2", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/p-event": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/p-event/-/p-event-5.0.1.tgz", + "integrity": "sha512-dd589iCQ7m1L0bmC5NLlVYfy3TbBEsMUfWx9PyAgPeIcFZ/E2yaTZ4Rz4MiBmmJShviiftHVXOqfnfzJ6kyMrQ==", + "extraneous": true, "dependencies": { - "is-buffer": "^1.1.5" + "p-timeout": "^5.0.2" }, "engines": { - "node": ">=0.10.0" - } - }, - "../../../service/node_modules/object-inspect": { - "version": "1.12.2", - "license": "MIT", - "peer": true, + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "url": "https://github.com/sponsors/sindresorhus" } }, - "../../../service/node_modules/object-is": { - "version": "1.1.5", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/p-filter": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-filter/-/p-filter-3.0.0.tgz", + "integrity": "sha512-QtoWLjXAW++uTX67HZQz1dbTpqBfiidsB6VtQUC9iR85S120+s0T5sO6s+B5MLzFcZkrEd/DGMmCjR+f2Qpxwg==", + "extraneous": true, "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3" + "p-map": "^5.1.0" }, "engines": { - "node": ">= 0.4" + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" }, "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "../../../service/node_modules/object-keys": { - "version": "1.1.1", - "dev": true, - "license": "MIT", - "peer": true, - "engines": { - "node": ">= 0.4" + "url": "https://github.com/sponsors/sindresorhus" } }, - "../../../service/node_modules/object-visit": { - "version": "1.0.1", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/p-filter/node_modules/p-map": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-5.5.0.tgz", + "integrity": "sha512-VFqfGDHlx87K66yZrNdI4YGtD70IRyd+zSvgks6mzHPRNkoKy+9EKP4SFC77/vTTQYmRmti7dvqC+m5jBrBAcg==", + "extraneous": true, "dependencies": { - "isobject": "^3.0.0" + "aggregate-error": "^4.0.0" }, "engines": { - "node": ">=0.10.0" + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "../../../service/node_modules/object.assign": { - "version": "4.1.4", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "extraneous": true, "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "has-symbols": "^1.0.3", - "object-keys": "^1.1.1" + "yocto-queue": "^0.1.0" }, "engines": { - "node": ">= 0.4" + "node": ">=10" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "url": "https://github.com/sponsors/sindresorhus" } }, - "../../../service/node_modules/object.getownpropertydescriptors": { - "version": "2.1.5", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/p-locate": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", + "extraneous": true, "dependencies": { - "array.prototype.reduce": "^1.0.5", - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4" + "p-limit": "^3.0.2" }, "engines": { - "node": ">= 0.8" + "node": ">=10" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "url": "https://github.com/sponsors/sindresorhus" } }, - "../../../service/node_modules/object.pick": { - "version": "1.3.0", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "isobject": "^3.0.1" - }, + "node_modules/@ngageoint/mage.service/node_modules/p-map": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-6.0.0.tgz", + "integrity": "sha512-T8BatKGY+k5rU+Q/GTYgrEf2r4xRMevAN5mtXc2aPc4rS1j3s+vWTaO2Wag94neXuCAUAs8cxBL9EeB5EA6diw==", + "extraneous": true, "engines": { - "node": ">=0.10.0" + "node": ">=16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "../../../service/node_modules/on-finished": { - "version": "2.3.0", - "license": "MIT", - "peer": true, - "dependencies": { - "ee-first": "1.1.1" - }, - "engines": { - "node": ">= 0.8" - } - }, - "../../../service/node_modules/on-headers": { - "version": "1.0.2", - "license": "MIT", - "peer": true, - "engines": { - "node": ">= 0.8" - } - }, - "../../../service/node_modules/once": { - "version": "1.4.0", - "license": "ISC", - "peer": true, - "dependencies": { - "wrappy": "1" - } - }, - "../../../service/node_modules/onetime": { - "version": "5.1.2", - "devOptional": true, - "license": "MIT", - "peer": true, - "dependencies": { - "mimic-fn": "^2.1.0" - }, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "../../../service/node_modules/ono": { - "version": "4.0.11", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "format-util": "^1.0.3" - } - }, - "../../../service/node_modules/openapi-enforcer": { - "version": "1.15.5", - "dev": true, - "license": "Apache-2.0", - "peer": true, - "dependencies": { - "axios": "^0.21.1", - "json-schema-ref-parser": "^6.1.0", - "randexp": "^0.5.3" - } - }, - "../../../service/node_modules/opentype.js": { - "version": "0.7.3", - "license": "MIT", - "peer": true, - "dependencies": { - "tiny-inflate": "^1.0.2" - }, - "bin": { - "ot": "bin/ot" - } - }, - "../../../service/node_modules/optionator": { - "version": "0.8.3", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "deep-is": "~0.1.3", - "fast-levenshtein": "~2.0.6", - "levn": "~0.3.0", - "prelude-ls": "~1.1.2", - "type-check": "~0.3.2", - "word-wrap": "~1.2.3" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "../../../service/node_modules/os-homedir": { - "version": "1.0.2", - "dev": true, - "license": "MIT", - "peer": true, - "engines": { - "node": ">=0.10.0" - } - }, - "../../../service/node_modules/os-tmpdir": { - "version": "1.0.2", - "devOptional": true, - "license": "MIT", - "peer": true, - "engines": { - "node": ">=0.10.0" - } - }, - "../../../service/node_modules/p-limit": { - "version": "2.3.0", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "p-try": "^2.0.0" - }, + "node_modules/@ngageoint/mage.service/node_modules/p-timeout": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/p-timeout/-/p-timeout-5.1.0.tgz", + "integrity": "sha512-auFDyzzzGZZZdHz3BtET9VEz0SE/uMEAx7uWfGPucfzEwwe/xH0iVeZibQmANYE/hp9T2+UUZT5m+BKyrDp3Ew==", + "extraneous": true, "engines": { - "node": ">=6" + "node": ">=12" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "../../../service/node_modules/p-locate": { - "version": "3.0.0", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "p-limit": "^2.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "../../../service/node_modules/p-try": { + "node_modules/@ngageoint/mage.service/node_modules/p-try": { "version": "2.2.0", - "dev": true, - "license": "MIT", - "peer": true, + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "extraneous": true, "engines": { "node": ">=6" } }, - "../../../service/node_modules/package-hash": { + "node_modules/@ngageoint/mage.service/node_modules/package-hash": { "version": "3.0.0", - "dev": true, - "license": "ISC", - "peer": true, + "resolved": "https://registry.npmjs.org/package-hash/-/package-hash-3.0.0.tgz", + "integrity": "sha512-lOtmukMDVvtkL84rJHI7dpTYq+0rli8N2wlnqUcBuDWCfVhRUfOmnR9SsoHFMLpACvEV60dX7rd0rFaYDZI+FA==", + "extraneous": true, "dependencies": { "graceful-fs": "^4.1.15", "hasha": "^3.0.0", @@ -9871,17 +11082,23 @@ "node": ">=6" } }, - "../../../service/node_modules/pako": { + "node_modules/@ngageoint/mage.service/node_modules/package-json-from-dist": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/package-json-from-dist/-/package-json-from-dist-1.0.0.tgz", + "integrity": "sha512-dATvCeZN/8wQsGywez1mzHtTlP22H8OEfPrVMLNr4/eGa+ijtLn/6M5f0dY8UKNrC2O9UCU6SSoG3qRKnt7STw==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/pako": { "version": "1.0.11", - "dev": true, - "license": "(MIT AND Zlib)", - "peer": true + "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz", + "integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==", + "extraneous": true }, - "../../../service/node_modules/parent-module": { + "node_modules/@ngageoint/mage.service/node_modules/parent-module": { "version": "1.0.1", - "dev": true, - "license": "MIT", - "peer": true, + "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", + "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", + "extraneous": true, "dependencies": { "callsites": "^3.0.0" }, @@ -9889,39 +11106,11 @@ "node": ">=6" } }, - "../../../service/node_modules/parse-asn1": { - "version": "5.1.6", - "license": "ISC", - "peer": true, - "dependencies": { - "asn1.js": "^5.2.0", - "browserify-aes": "^1.0.0", - "evp_bytestokey": "^1.0.0", - "pbkdf2": "^3.0.3", - "safe-buffer": "^5.1.1" - } - }, - "../../../service/node_modules/parse-asn1/node_modules/asn1.js": { - "version": "5.4.1", - "license": "MIT", - "peer": true, - "dependencies": { - "bn.js": "^4.0.0", - "inherits": "^2.0.1", - "minimalistic-assert": "^1.0.0", - "safer-buffer": "^2.1.0" - } - }, - "../../../service/node_modules/parse-asn1/node_modules/bn.js": { - "version": "4.12.0", - "license": "MIT", - "peer": true - }, - "../../../service/node_modules/parse-json": { + "node_modules/@ngageoint/mage.service/node_modules/parse-json": { "version": "4.0.0", - "dev": true, - "license": "MIT", - "peer": true, + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", + "integrity": "sha512-aOIos8bujGN93/8Ox/jPLh7RwVnPEysynVFE+fQZyg6jKELEHwzgKdLRFHUgXJL6kylijVSBC4BvN9OmsB48Rw==", + "extraneous": true, "dependencies": { "error-ex": "^1.3.1", "json-parse-better-errors": "^1.0.1" @@ -9930,37 +11119,38 @@ "node": ">=4" } }, - "../../../service/node_modules/parseurl": { + "node_modules/@ngageoint/mage.service/node_modules/parseurl": { "version": "1.3.3", - "license": "MIT", + "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", + "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==", "peer": true, "engines": { "node": ">= 0.8" } }, - "../../../service/node_modules/pascalcase": { - "version": "0.1.1", - "dev": true, - "license": "MIT", - "peer": true, - "engines": { - "node": ">=0.10.0" - } - }, - "../../../service/node_modules/passport": { - "version": "0.4.1", + "node_modules/@ngageoint/mage.service/node_modules/passport": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/passport/-/passport-0.7.0.tgz", + "integrity": "sha512-cPLl+qZpSc+ireUvt+IzqbED1cHHkDoVYMo30jbJIdOOjQ1MQYZBPiNvmi8UM6lJuOpTPXJGZQk0DtC4y61MYQ==", "license": "MIT", "peer": true, "dependencies": { "passport-strategy": "1.x.x", - "pause": "0.0.1" + "pause": "0.0.1", + "utils-merge": "^1.0.1" }, "engines": { "node": ">= 0.4.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/jaredhanson" } }, - "../../../service/node_modules/passport-anonymous": { + "node_modules/@ngageoint/mage.service/node_modules/passport-anonymous": { "version": "1.0.1", + "resolved": "https://registry.npmjs.org/passport-anonymous/-/passport-anonymous-1.0.1.tgz", + "integrity": "sha512-Mk2dls97nLTzHpsWCYQ54IVGucWaiWSHHr3+IhWYAebg4dRgRQIfyoeYrixoxB2z2z4+EM7p9yjC+a3yMB5z5A==", "peer": true, "dependencies": { "passport-strategy": "1.x.x" @@ -9969,8 +11159,10 @@ "node": ">= 0.4.0" } }, - "../../../service/node_modules/passport-http-bearer": { + "node_modules/@ngageoint/mage.service/node_modules/passport-http-bearer": { "version": "1.0.1", + "resolved": "https://registry.npmjs.org/passport-http-bearer/-/passport-http-bearer-1.0.1.tgz", + "integrity": "sha512-SELQM+dOTuMigr9yu8Wo4Fm3ciFfkMq5h/ZQ8ffi4ELgZrX1xh9PlglqZdcUZ1upzJD/whVyt+YWF62s3U6Ipw==", "peer": true, "dependencies": { "passport-strategy": "1.x.x" @@ -9979,27 +11171,23 @@ "node": ">= 0.4.0" } }, - "../../../service/node_modules/passport-ldapauth": { - "version": "2.1.3", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/passport-ldapauth": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/passport-ldapauth/-/passport-ldapauth-3.0.1.tgz", + "integrity": "sha512-TRRx3BHi8GC8MfCT9wmghjde/EGeKjll7zqHRRfGRxXbLcaDce2OftbQrFG7/AWaeFhR6zpZHtBQ/IkINdLVjQ==", "peer": true, "dependencies": { - "@types/node": "^10.12.26", - "@types/passport": "^1.0.0", - "ldapauth-fork": "^4.2.0", + "ldapauth-fork": "^5.0.1", "passport-strategy": "^1.0.0" }, "engines": { "node": ">=0.8.0" } }, - "../../../service/node_modules/passport-ldapauth/node_modules/@types/node": { - "version": "10.17.60", - "license": "MIT", - "peer": true - }, - "../../../service/node_modules/passport-local": { + "node_modules/@ngageoint/mage.service/node_modules/passport-local": { "version": "1.0.0", + "resolved": "https://registry.npmjs.org/passport-local/-/passport-local-1.0.0.tgz", + "integrity": "sha512-9wCE6qKznvf9mQYYbgJ3sVOHmCWoUNMVFoZzNoznmISbhnNNPhN9xfY3sLmScHMetEJeoY7CXwfhCe7argfQow==", "peer": true, "dependencies": { "passport-strategy": "1.x.x" @@ -10008,13 +11196,15 @@ "node": ">= 0.4.0" } }, - "../../../service/node_modules/passport-oauth2": { - "version": "1.6.1", + "node_modules/@ngageoint/mage.service/node_modules/passport-oauth2": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/passport-oauth2/-/passport-oauth2-1.8.0.tgz", + "integrity": "sha512-cjsQbOrXIDE4P8nNb3FQRCCmJJ/utnFKEz2NX209f7KOHPoX18gF7gBzBbLLsj2/je4KrgiwLLGjf0lm9rtTBA==", "license": "MIT", "peer": true, "dependencies": { "base64url": "3.x.x", - "oauth": "0.9.x", + "oauth": "0.10.x", "passport-strategy": "1.x.x", "uid2": "0.0.x", "utils-merge": "1.x.x" @@ -10027,12 +11217,14 @@ "url": "https://github.com/sponsors/jaredhanson" } }, - "../../../service/node_modules/passport-openidconnect": { - "version": "0.1.1", + "node_modules/@ngageoint/mage.service/node_modules/passport-openidconnect": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/passport-openidconnect/-/passport-openidconnect-0.1.2.tgz", + "integrity": "sha512-JX3rTyW+KFZ/E9OF/IpXJPbyLO9vGzcmXB5FgSP2jfL3LGKJPdV7zUE8rWeKeeI/iueQggOeFa3onrCmhxXZTg==", "license": "MIT", "peer": true, "dependencies": { - "oauth": "0.9.x", + "oauth": "0.10.x", "passport-strategy": "1.x.x" }, "engines": { @@ -10043,118 +11235,117 @@ "url": "https://github.com/sponsors/jaredhanson" } }, - "../../../service/node_modules/passport-strategy": { + "node_modules/@ngageoint/mage.service/node_modules/passport-strategy": { "version": "1.0.0", + "resolved": "https://registry.npmjs.org/passport-strategy/-/passport-strategy-1.0.0.tgz", + "integrity": "sha512-CB97UUvDKJde2V0KDWWB3lyf6PC3FaZP7YxZ2G8OAtn9p4HI9j9JLP9qjOGZFvyl8uwNT8qM+hGnz/n16NI7oA==", "peer": true, "engines": { "node": ">= 0.4.0" } }, - "../../../service/node_modules/path-dirname": { - "version": "1.0.2", - "dev": true, - "license": "MIT", - "peer": true - }, - "../../../service/node_modules/path-exists": { - "version": "3.0.0", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "extraneous": true, "engines": { - "node": ">=4" + "node": ">=8" } }, - "../../../service/node_modules/path-is-absolute": { + "node_modules/@ngageoint/mage.service/node_modules/path-is-absolute": { "version": "1.0.1", - "license": "MIT", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", "peer": true, "engines": { "node": ">=0.10.0" } }, - "../../../service/node_modules/path-key": { - "version": "2.0.1", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "extraneous": true, "engines": { - "node": ">=4" + "node": ">=8" } }, - "../../../service/node_modules/path-parse": { + "node_modules/@ngageoint/mage.service/node_modules/path-parse": { "version": "1.0.7", - "license": "MIT", - "peer": true - }, - "../../../service/node_modules/path-to-regexp": { - "version": "0.1.7", - "license": "MIT", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", "peer": true }, - "../../../service/node_modules/path-type": { - "version": "3.0.0", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/path-scurry": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.11.1.tgz", + "integrity": "sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==", + "extraneous": true, "dependencies": { - "pify": "^3.0.0" + "lru-cache": "^10.2.0", + "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0" }, "engines": { - "node": ">=4" + "node": ">=16 || 14 >=14.18" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "../../../service/node_modules/path-type/node_modules/pify": { - "version": "3.0.0", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/path-scurry/node_modules/lru-cache": { + "version": "10.3.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.3.0.tgz", + "integrity": "sha512-CQl19J/g+Hbjbv4Y3mFNNXFEL/5t/KCg8POCuUqd4rMKjGG+j1ybER83hxV58zL+dFI1PTkt3GNFSHRt+d8qEQ==", + "extraneous": true, + "engines": { + "node": "14 || >=16.14" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/path-to-regexp": { + "version": "0.1.12", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.12.tgz", + "integrity": "sha512-RA1GjUVMnvYFxuqovrEqZoxxW5NUZqbwKtYz/Tt7nXerk0LbLblQmrsgdeOxV5SFHf0UDggjS/bSeOZwt1pmEQ==", "license": "MIT", - "peer": true, + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/path-type": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", + "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", + "extraneous": true, "engines": { - "node": ">=4" + "node": ">=8" } }, - "../../../service/node_modules/pathval": { + "node_modules/@ngageoint/mage.service/node_modules/pathval": { "version": "1.1.1", - "dev": true, - "license": "MIT", - "peer": true, + "resolved": "https://registry.npmjs.org/pathval/-/pathval-1.1.1.tgz", + "integrity": "sha512-Dp6zGqpTdETdR63lehJYPeIOqpiNBNtc7BpWSLrOje7UaIsE5aY92r/AunQA7rsXvet3lrJ3JnZX29UPTKXyKQ==", + "extraneous": true, "engines": { "node": "*" } }, - "../../../service/node_modules/pause": { + "node_modules/@ngageoint/mage.service/node_modules/pause": { "version": "0.0.1", + "resolved": "https://registry.npmjs.org/pause/-/pause-0.0.1.tgz", + "integrity": "sha512-KG8UEiEVkR3wGEb4m5yZkVCzigAD+cVEJck2CzYZO37ZGJfctvVptVO192MwrtPhzONn6go8ylnOdMhKqi4nfg==", "peer": true }, - "../../../service/node_modules/pause-stream": { + "node_modules/@ngageoint/mage.service/node_modules/pause-stream": { "version": "0.0.11", - "license": [ - "MIT", - "Apache2" - ], + "resolved": "https://registry.npmjs.org/pause-stream/-/pause-stream-0.0.11.tgz", + "integrity": "sha512-e3FBlXLmN/D1S+zHzanP4E/4Z60oFAa3O051qt1pxa7DEJWKAyil6upYVXCWadEnuoqa4Pkc9oUx9zsxYeRv8A==", "peer": true, "dependencies": { "through": "~2.3" } }, - "../../../service/node_modules/pbkdf2": { - "version": "3.1.2", - "license": "MIT", - "peer": true, - "dependencies": { - "create-hash": "^1.1.2", - "create-hmac": "^1.1.4", - "ripemd160": "^2.0.1", - "safe-buffer": "^5.0.1", - "sha.js": "^2.4.8" - }, - "engines": { - "node": ">=0.12" - } - }, - "../../../service/node_modules/peek-readable": { + "node_modules/@ngageoint/mage.service/node_modules/peek-readable": { "version": "4.1.0", - "license": "MIT", + "resolved": "https://registry.npmjs.org/peek-readable/-/peek-readable-4.1.0.tgz", + "integrity": "sha512-ZI3LnwUv5nOGbQzD9c2iDG6toheuXSZP5esSHBjopsXH4dg19soufvpUGA3uohi5anFtGb2lhAVdHzH6R/Evvg==", "peer": true, "engines": { "node": ">=8" @@ -10164,61 +11355,30 @@ "url": "https://github.com/sponsors/Borewit" } }, - "../../../service/node_modules/pem-jwk": { - "version": "1.5.1", - "license": "MPL 2.0", - "peer": true, - "dependencies": { - "asn1.js": "1.0.3" - }, - "bin": { - "pem-jwk": "bin/pem-jwk.js" - } - }, - "../../../service/node_modules/pem-jwk/node_modules/asn1.js": { - "version": "1.0.3", - "license": "MIT", - "peer": true, - "dependencies": { - "inherits": "^2.0.1", - "minimalistic-assert": "^1.0.0" - }, - "optionalDependencies": { - "bn.js": "^1.0.0" - } - }, - "../../../service/node_modules/pem-jwk/node_modules/bn.js": { - "version": "1.3.0", - "license": "MIT", - "optional": true, - "peer": true - }, - "../../../service/node_modules/pem2jwk": { - "version": "1.0.1", - "license": "MIT", - "peer": true, - "dependencies": { - "elliptic": "^6.4.0", - "parse-asn1": "^5.1.0" - } - }, - "../../../service/node_modules/pend": { + "node_modules/@ngageoint/mage.service/node_modules/pend": { "version": "1.2.0", - "dev": true, - "license": "MIT", - "peer": true + "resolved": "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz", + "integrity": "sha512-F3asv42UuXchdzt+xXqfW1OGlVBe+mxa2mqI0pg5yAHZPvFmY3Y6drSf/GQ1A86WgWEN9Kzh/WrgKa6iGcHXLg==", + "extraneous": true, + "license": "MIT" }, - "../../../service/node_modules/performance-now": { + "node_modules/@ngageoint/mage.service/node_modules/performance-now": { "version": "2.1.0", - "dev": true, - "license": "MIT", - "peer": true + "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", + "integrity": "sha512-7EAHlyLHI56VEIdK57uwHdHKIaAGbnXPiw0yWbarQZOKaKpvUIgW0jWRVLiatnM+XXlSwsanIBH/hzGMJulMow==", + "extraneous": true }, - "../../../service/node_modules/picomatch": { + "node_modules/@ngageoint/mage.service/node_modules/picocolors": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.1.tgz", + "integrity": "sha512-anP1Z8qwhkbmu7MFP5iTt+wQKXgwzf7zTyGlcdzabySa9vd0Xt392U0rVmz9poOaBj0uHJKyyo9/upk0HrEQew==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/picomatch": { "version": "2.3.1", - "dev": true, - "license": "MIT", - "peer": true, + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "extraneous": true, "engines": { "node": ">=8.6" }, @@ -10226,11 +11386,11 @@ "url": "https://github.com/sponsors/jonschlinkert" } }, - "../../../service/node_modules/pidtree": { + "node_modules/@ngageoint/mage.service/node_modules/pidtree": { "version": "0.3.1", - "dev": true, - "license": "MIT", - "peer": true, + "resolved": "https://registry.npmjs.org/pidtree/-/pidtree-0.3.1.tgz", + "integrity": "sha512-qQbW94hLHEqCg7nhby4yRC7G2+jYHY4Rguc2bjw7Uug4GIJuu1tvf2uHaZv5Q8zdt+WKJ6qK1FOI6amaWUo5FA==", + "extraneous": true, "bin": { "pidtree": "bin/pidtree.js" }, @@ -10238,20 +11398,21 @@ "node": ">=0.10" } }, - "../../../service/node_modules/pify": { - "version": "4.0.1", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/pify": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", + "integrity": "sha512-C3FsVNH1udSEX48gGX1xfvwTWfsYWj5U+8/uK15BGzIGrKoUpghX8hWZwa/OFnakBiiVNmBvemTJR5mcy7iPcg==", + "extraneous": true, "engines": { - "node": ">=6" + "node": ">=4" } }, - "../../../service/node_modules/pkg-dir": { + "node_modules/@ngageoint/mage.service/node_modules/pkg-dir": { "version": "4.2.0", - "dev": true, + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", + "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", + "extraneous": true, "license": "MIT", - "peer": true, "dependencies": { "find-up": "^4.0.0" }, @@ -10259,11 +11420,12 @@ "node": ">=8" } }, - "../../../service/node_modules/pkg-dir/node_modules/find-up": { + "node_modules/@ngageoint/mage.service/node_modules/pkg-dir/node_modules/find-up": { "version": "4.1.0", - "dev": true, + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "extraneous": true, "license": "MIT", - "peer": true, "dependencies": { "locate-path": "^5.0.0", "path-exists": "^4.0.0" @@ -10272,11 +11434,12 @@ "node": ">=8" } }, - "../../../service/node_modules/pkg-dir/node_modules/locate-path": { + "node_modules/@ngageoint/mage.service/node_modules/pkg-dir/node_modules/locate-path": { "version": "5.0.0", - "dev": true, + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "extraneous": true, "license": "MIT", - "peer": true, "dependencies": { "p-locate": "^4.1.0" }, @@ -10284,73 +11447,86 @@ "node": ">=8" } }, - "../../../service/node_modules/pkg-dir/node_modules/p-locate": { - "version": "4.1.0", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/pkg-dir/node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "extraneous": true, "license": "MIT", - "peer": true, "dependencies": { - "p-limit": "^2.2.0" + "p-try": "^2.0.0" }, "engines": { - "node": ">=8" + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "../../../service/node_modules/pkg-dir/node_modules/path-exists": { - "version": "4.0.0", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/pkg-dir/node_modules/p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "extraneous": true, "license": "MIT", - "peer": true, + "dependencies": { + "p-limit": "^2.2.0" + }, "engines": { "node": ">=8" } }, - "../../../service/node_modules/pkginfo": { + "node_modules/@ngageoint/mage.service/node_modules/pkginfo": { "version": "0.3.1", - "license": "MIT", + "resolved": "https://registry.npmjs.org/pkginfo/-/pkginfo-0.3.1.tgz", + "integrity": "sha512-yO5feByMzAp96LtP58wvPKSbaKAi/1C4kV9XpTctr6EepnP6F33RBNOiVrdz9BrPA98U2BMFsTNHo44TWcbQ2A==", "peer": true, "engines": { "node": ">= 0.4.0" } }, - "../../../service/node_modules/polygon-clipping": { - "version": "0.15.3", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/polygon-clipping": { + "version": "0.15.7", + "resolved": "https://registry.npmjs.org/polygon-clipping/-/polygon-clipping-0.15.7.tgz", + "integrity": "sha512-nhfdr83ECBg6xtqOAJab1tbksbBAOMUltN60bU+llHVOL0e5Onm1WpAXXWXVB39L8AJFssoIhEVuy/S90MmotA==", "peer": true, "dependencies": { + "robust-predicates": "^3.0.2", "splaytree": "^3.1.0" } }, - "../../../service/node_modules/ports": { + "node_modules/@ngageoint/mage.service/node_modules/ports": { "version": "1.1.0", - "license": "Apache 2.0", + "resolved": "https://registry.npmjs.org/ports/-/ports-1.1.0.tgz", + "integrity": "sha512-XmS7dspHnkTXZC75NkG0ti2hLj8aSyg1Izp87/2cWT7QhTo1vdtWsQ4ldp4BEQ/EXqy0s4yTATJUZ3t9RGZVpg==", "peer": true }, - "../../../service/node_modules/posix-character-classes": { - "version": "0.1.1", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/possible-typed-array-names": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/possible-typed-array-names/-/possible-typed-array-names-1.0.0.tgz", + "integrity": "sha512-d7Uw+eZoloe0EHDIYoe+bQ5WXnGMOpmiZFTuMWCwpjzzkL2nTjcKiAk4hh8TjnGye2TwWOk3UXucZ+3rbmBa8Q==", + "extraneous": true, "engines": { - "node": ">=0.10.0" + "node": ">= 0.4" } }, - "../../../service/node_modules/prebuild-install": { - "version": "6.1.4", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/prebuild-install": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/prebuild-install/-/prebuild-install-7.1.2.tgz", + "integrity": "sha512-UnNke3IQb6sgarcZIDU3gbMeTp/9SSU1DAIkil7PrqG1vZlBtY5msYccSKSHDqa3hNg436IXK+SNImReuA1wEQ==", + "optional": true, "peer": true, "dependencies": { - "detect-libc": "^1.0.3", + "detect-libc": "^2.0.0", "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", + "node-abi": "^3.3.0", "pump": "^3.0.0", "rc": "^1.2.7", - "simple-get": "^3.0.3", + "simple-get": "^4.0.0", "tar-fs": "^2.0.0", "tunnel-agent": "^0.6.0" }, @@ -10358,37 +11534,32 @@ "prebuild-install": "bin.js" }, "engines": { - "node": ">=6" - } - }, - "../../../service/node_modules/prebuild-install/node_modules/minimist": { - "version": "1.2.7", - "license": "MIT", - "peer": true, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=10" } }, - "../../../service/node_modules/precond": { + "node_modules/@ngageoint/mage.service/node_modules/precond": { "version": "0.2.3", + "resolved": "https://registry.npmjs.org/precond/-/precond-0.2.3.tgz", + "integrity": "sha512-QCYG84SgGyGzqJ/vlMsxeXd/pgL/I94ixdNFyh1PusWmTCyVfPJjZ1K1jvHtsbfnXQs2TSkEP2fR7QiMZAnKFQ==", "peer": true, "engines": { "node": ">= 0.6" } }, - "../../../service/node_modules/prelude-ls": { - "version": "1.1.2", - "dev": true, - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/prelude-ls": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", + "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", + "extraneous": true, "engines": { "node": ">= 0.8.0" } }, - "../../../service/node_modules/prettier": { + "node_modules/@ngageoint/mage.service/node_modules/prettier": { "version": "1.19.1", - "dev": true, - "license": "MIT", - "peer": true, + "resolved": "https://registry.npmjs.org/prettier/-/prettier-1.19.1.tgz", + "integrity": "sha512-s7PoyDv/II1ObgQunCbB9PdLmUcBZcnWOcxDh7O0N/UwDEsHyqkW+Qh28jW+mVuCdx7gLB0BotYI1Y6uI9iyew==", + "extraneous": true, "bin": { "prettier": "bin-prettier.js" }, @@ -10396,11 +11567,11 @@ "node": ">=4" } }, - "../../../service/node_modules/prettier-linter-helpers": { + "node_modules/@ngageoint/mage.service/node_modules/prettier-linter-helpers": { "version": "1.0.0", - "dev": true, - "license": "MIT", - "peer": true, + "resolved": "https://registry.npmjs.org/prettier-linter-helpers/-/prettier-linter-helpers-1.0.0.tgz", + "integrity": "sha512-GbK2cP9nraSSUF9N2XwUwqfzlAFlMNYYl+ShE/V+H8a9uNl/oUqB1w2EL54Jh0OlyRSd8RfWYJ3coVS4TROP2w==", + "extraneous": true, "dependencies": { "fast-diff": "^1.1.2" }, @@ -10408,49 +11579,44 @@ "node": ">=6.0.0" } }, - "../../../service/node_modules/process-nextick-args": { + "node_modules/@ngageoint/mage.service/node_modules/process-nextick-args": { "version": "2.0.1", - "license": "MIT", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", + "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==", "peer": true }, - "../../../service/node_modules/progress": { - "version": "2.0.3", - "dev": true, - "license": "MIT", - "peer": true, - "engines": { - "node": ">=0.4.0" - } - }, - "../../../service/node_modules/proj4": { + "node_modules/@ngageoint/mage.service/node_modules/proj4": { "version": "2.8.0", - "license": "MIT", + "resolved": "https://registry.npmjs.org/proj4/-/proj4-2.8.0.tgz", + "integrity": "sha512-baC+YcD4xsSqJ+CpCZljj2gcQDhlKb+J+Zjv/2KSBwWNjk4M0pafgQsE+mWurd84tflMIsP+7j7mtIpFDHzQfQ==", "peer": true, "dependencies": { "mgrs": "1.0.0", "wkt-parser": "^1.3.1" } }, - "../../../service/node_modules/promise": { + "node_modules/@ngageoint/mage.service/node_modules/promise": { "version": "7.3.1", - "license": "MIT", + "resolved": "https://registry.npmjs.org/promise/-/promise-7.3.1.tgz", + "integrity": "sha512-nolQXZ/4L+bP/UGlkfaIujX9BKxGwmQ9OT4mOt5yvy8iK1h3wqTEJCijzGANTCCl9nWjY41juyAn2K3Q1hLLTg==", "peer": true, "dependencies": { "asap": "~2.0.3" } }, - "../../../service/node_modules/propagate": { + "node_modules/@ngageoint/mage.service/node_modules/propagate": { "version": "2.0.1", - "dev": true, - "license": "MIT", - "peer": true, + "resolved": "https://registry.npmjs.org/propagate/-/propagate-2.0.1.tgz", + "integrity": "sha512-vGrhOavPSTz4QVNuBNdcNXePNdNMaO1xj9yBeH1ScQPjk/rhg9sSlCXPhMkFuaNNW/syTvYqsnbIJxMBfRbbag==", + "extraneous": true, "engines": { "node": ">= 8" } }, - "../../../service/node_modules/proxy-addr": { + "node_modules/@ngageoint/mage.service/node_modules/proxy-addr": { "version": "2.0.7", - "license": "MIT", + "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz", + "integrity": "sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==", "peer": true, "dependencies": { "forwarded": "0.2.0", @@ -10460,194 +11626,236 @@ "node": ">= 0.10" } }, - "../../../service/node_modules/proxyquire": { + "node_modules/@ngageoint/mage.service/node_modules/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==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/proxyquire": { "version": "2.1.3", - "dev": true, - "license": "MIT", - "peer": true, + "resolved": "https://registry.npmjs.org/proxyquire/-/proxyquire-2.1.3.tgz", + "integrity": "sha512-BQWfCqYM+QINd+yawJz23tbBM40VIGXOdDw3X344KcclI/gtBbdWF6SlQ4nK/bYhF9d27KYug9WzljHC6B9Ysg==", + "extraneous": true, "dependencies": { "fill-keys": "^1.0.2", "module-not-found-error": "^1.0.1", "resolve": "^1.11.1" } }, - "../../../service/node_modules/pseudomap": { + "node_modules/@ngageoint/mage.service/node_modules/pseudomap": { "version": "1.0.2", - "license": "ISC", - "peer": true + "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", + "integrity": "sha512-b/YwNhb8lk1Zz2+bXXpS/LK9OisiZZ1SNsSLxN1x2OXVEhW2Ckr/7mWE5vrC1ZTiJlD9g19jWszTmJsB+oEpFQ==", + "extraneous": true }, - "../../../service/node_modules/psl": { + "node_modules/@ngageoint/mage.service/node_modules/psl": { "version": "1.9.0", - "dev": true, - "license": "MIT", - "peer": true + "resolved": "https://registry.npmjs.org/psl/-/psl-1.9.0.tgz", + "integrity": "sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag==", + "extraneous": true }, - "../../../service/node_modules/pug": { - "version": "2.0.4", + "node_modules/@ngageoint/mage.service/node_modules/pug": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/pug/-/pug-3.0.3.tgz", + "integrity": "sha512-uBi6kmc9f3SZ3PXxqcHiUZLmIXgfgWooKWXcwSGwQd2Zi5Rb0bT14+8CJjJgI8AB+nndLaNgHGrcc6bPIB665g==", "license": "MIT", "peer": true, "dependencies": { - "pug-code-gen": "^2.0.2", - "pug-filters": "^3.1.1", - "pug-lexer": "^4.1.0", - "pug-linker": "^3.0.6", - "pug-load": "^2.0.12", - "pug-parser": "^5.0.1", - "pug-runtime": "^2.0.5", - "pug-strip-comments": "^1.0.4" + "pug-code-gen": "^3.0.3", + "pug-filters": "^4.0.0", + "pug-lexer": "^5.0.1", + "pug-linker": "^4.0.0", + "pug-load": "^3.0.0", + "pug-parser": "^6.0.0", + "pug-runtime": "^3.0.1", + "pug-strip-comments": "^2.0.0" } }, - "../../../service/node_modules/pug-attrs": { - "version": "2.0.4", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/pug-attrs": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pug-attrs/-/pug-attrs-3.0.0.tgz", + "integrity": "sha512-azINV9dUtzPMFQktvTXciNAfAuVh/L/JCl0vtPCwvOA21uZrC08K/UnmrL+SXGEVc1FwzjW62+xw5S/uaLj6cA==", "peer": true, "dependencies": { - "constantinople": "^3.0.1", - "js-stringify": "^1.0.1", - "pug-runtime": "^2.0.5" + "constantinople": "^4.0.1", + "js-stringify": "^1.0.2", + "pug-runtime": "^3.0.0" } }, - "../../../service/node_modules/pug-code-gen": { - "version": "2.0.3", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/pug-code-gen": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/pug-code-gen/-/pug-code-gen-3.0.3.tgz", + "integrity": "sha512-cYQg0JW0w32Ux+XTeZnBEeuWrAY7/HNE6TWnhiHGnnRYlCgyAUPoyh9KzCMa9WhcJlJ1AtQqpEYHc+vbCzA+Aw==", "peer": true, "dependencies": { - "constantinople": "^3.1.2", + "constantinople": "^4.0.1", "doctypes": "^1.1.0", - "js-stringify": "^1.0.1", - "pug-attrs": "^2.0.4", - "pug-error": "^1.3.3", - "pug-runtime": "^2.0.5", - "void-elements": "^2.0.1", - "with": "^5.0.0" + "js-stringify": "^1.0.2", + "pug-attrs": "^3.0.0", + "pug-error": "^2.1.0", + "pug-runtime": "^3.0.1", + "void-elements": "^3.1.0", + "with": "^7.0.0" } }, - "../../../service/node_modules/pug-error": { - "version": "1.3.3", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/pug-error": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/pug-error/-/pug-error-2.1.0.tgz", + "integrity": "sha512-lv7sU9e5Jk8IeUheHata6/UThZ7RK2jnaaNztxfPYUY+VxZyk/ePVaNZ/vwmH8WqGvDz3LrNYt/+gA55NDg6Pg==", "peer": true }, - "../../../service/node_modules/pug-filters": { - "version": "3.1.1", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/pug-filters": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/pug-filters/-/pug-filters-4.0.0.tgz", + "integrity": "sha512-yeNFtq5Yxmfz0f9z2rMXGw/8/4i1cCFecw/Q7+D0V2DdtII5UvqE12VaZ2AY7ri6o5RNXiweGH79OCq+2RQU4A==", "peer": true, "dependencies": { - "clean-css": "^4.1.11", - "constantinople": "^3.0.1", + "constantinople": "^4.0.1", "jstransformer": "1.0.0", - "pug-error": "^1.3.3", - "pug-walk": "^1.1.8", - "resolve": "^1.1.6", - "uglify-js": "^2.6.1" + "pug-error": "^2.0.0", + "pug-walk": "^2.0.0", + "resolve": "^1.15.1" } }, - "../../../service/node_modules/pug-lexer": { - "version": "4.1.0", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/pug-lexer": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/pug-lexer/-/pug-lexer-5.0.1.tgz", + "integrity": "sha512-0I6C62+keXlZPZkOJeVam9aBLVP2EnbeDw3An+k0/QlqdwH6rv8284nko14Na7c0TtqtogfWXcRoFE4O4Ff20w==", "peer": true, "dependencies": { - "character-parser": "^2.1.1", - "is-expression": "^3.0.0", - "pug-error": "^1.3.3" + "character-parser": "^2.2.0", + "is-expression": "^4.0.0", + "pug-error": "^2.0.0" } }, - "../../../service/node_modules/pug-linker": { - "version": "3.0.6", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/pug-linker": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/pug-linker/-/pug-linker-4.0.0.tgz", + "integrity": "sha512-gjD1yzp0yxbQqnzBAdlhbgoJL5qIFJw78juN1NpTLt/mfPJ5VgC4BvkoD3G23qKzJtIIXBbcCt6FioLSFLOHdw==", "peer": true, "dependencies": { - "pug-error": "^1.3.3", - "pug-walk": "^1.1.8" + "pug-error": "^2.0.0", + "pug-walk": "^2.0.0" } }, - "../../../service/node_modules/pug-load": { - "version": "2.0.12", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/pug-load": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pug-load/-/pug-load-3.0.0.tgz", + "integrity": "sha512-OCjTEnhLWZBvS4zni/WUMjH2YSUosnsmjGBB1An7CsKQarYSWQ0GCVyd4eQPMFJqZ8w9xgs01QdiZXKVjk92EQ==", "peer": true, "dependencies": { - "object-assign": "^4.1.0", - "pug-walk": "^1.1.8" + "object-assign": "^4.1.1", + "pug-walk": "^2.0.0" } }, - "../../../service/node_modules/pug-parser": { - "version": "5.0.1", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/pug-parser": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/pug-parser/-/pug-parser-6.0.0.tgz", + "integrity": "sha512-ukiYM/9cH6Cml+AOl5kETtM9NR3WulyVP2y4HOU45DyMim1IeP/OOiyEWRr6qk5I5klpsBnbuHpwKmTx6WURnw==", "peer": true, "dependencies": { - "pug-error": "^1.3.3", - "token-stream": "0.0.1" + "pug-error": "^2.0.0", + "token-stream": "1.0.0" } }, - "../../../service/node_modules/pug-runtime": { - "version": "2.0.5", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/pug-runtime": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/pug-runtime/-/pug-runtime-3.0.1.tgz", + "integrity": "sha512-L50zbvrQ35TkpHwv0G6aLSuueDRwc/97XdY8kL3tOT0FmhgG7UypU3VztfV/LATAvmUfYi4wNxSajhSAeNN+Kg==", "peer": true }, - "../../../service/node_modules/pug-strip-comments": { - "version": "1.0.4", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/pug-strip-comments": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/pug-strip-comments/-/pug-strip-comments-2.0.0.tgz", + "integrity": "sha512-zo8DsDpH7eTkPHCXFeAk1xZXJbyoTfdPlNR0bK7rpOMuhBYb0f5qUVCO1xlsitYd3w5FQTK7zpNVKb3rZoUrrQ==", "peer": true, "dependencies": { - "pug-error": "^1.3.3" + "pug-error": "^2.0.0" } }, - "../../../service/node_modules/pug-walk": { - "version": "1.1.8", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/pug-walk": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/pug-walk/-/pug-walk-2.0.0.tgz", + "integrity": "sha512-yYELe9Q5q9IQhuvqsZNwA5hfPkMJ8u92bQLIMcsMxf/VADjNtEYptU+inlufAFYcWdHlwNfZOEnOOQrZrcyJCQ==", "peer": true }, - "../../../service/node_modules/pump": { + "node_modules/@ngageoint/mage.service/node_modules/pump": { "version": "3.0.0", - "license": "MIT", + "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", + "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", + "optional": true, "peer": true, "dependencies": { "end-of-stream": "^1.1.0", "once": "^1.3.1" } }, - "../../../service/node_modules/punycode": { - "version": "2.1.1", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/punycode": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz", + "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==", "peer": true, "engines": { "node": ">=6" } }, - "../../../service/node_modules/qs": { - "version": "6.5.2", + "node_modules/@ngageoint/mage.service/node_modules/qs": { + "version": "6.13.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.13.0.tgz", + "integrity": "sha512-+38qI9SOr8tfZ4QmJNplMUxqjbe7LKvvZgWdExBOmd+egZTtjLB67Gu0HRX3u/XOq7UU2Nx6nsjvS16Z9uwfpg==", "license": "BSD-3-Clause", "peer": true, + "dependencies": { + "side-channel": "^1.0.6" + }, "engines": { "node": ">=0.6" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "../../../service/node_modules/queue": { + "node_modules/@ngageoint/mage.service/node_modules/queue": { "version": "6.0.1", - "license": "MIT", + "resolved": "https://registry.npmjs.org/queue/-/queue-6.0.1.tgz", + "integrity": "sha512-AJBQabRCCNr9ANq8v77RJEv73DPbn55cdTb+Giq4X0AVnNVZvMHlYp7XlQiN+1npCZj1DuSmaA2hYVUUDgxFDg==", "peer": true, "dependencies": { "inherits": "~2.0.3" } }, - "../../../service/node_modules/quick-lru": { - "version": "1.1.0", - "dev": true, - "license": "MIT", - "peer": true, - "engines": { - "node": ">=4" - } + "node_modules/@ngageoint/mage.service/node_modules/queue-microtask": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", + "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", + "extraneous": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] }, - "../../../service/node_modules/quickselect": { + "node_modules/@ngageoint/mage.service/node_modules/quickselect": { "version": "2.0.0", - "license": "ISC", + "resolved": "https://registry.npmjs.org/quickselect/-/quickselect-2.0.0.tgz", + "integrity": "sha512-RKJ22hX8mHe3Y6wH/N3wCM6BWtjaxIyyUIkpHOvfFnxdI4yD4tBXEBKSbriGujF6jnSVkJrffuo6vxACiSSxIw==", "peer": true }, - "../../../service/node_modules/randexp": { + "node_modules/@ngageoint/mage.service/node_modules/randexp": { "version": "0.5.3", - "dev": true, - "license": "MIT", - "peer": true, + "resolved": "https://registry.npmjs.org/randexp/-/randexp-0.5.3.tgz", + "integrity": "sha512-U+5l2KrcMNOUPYvazA3h5ekF80FHTUG+87SEAmHZmolh1M+i/WyTCxVzmi+tidIa1tM4BSe8g2Y/D3loWDjj+w==", + "extraneous": true, "dependencies": { "drange": "^1.0.2", "ret": "^0.2.0" @@ -10656,38 +11864,55 @@ "node": ">=4" } }, - "../../../service/node_modules/random-bytes": { + "node_modules/@ngageoint/mage.service/node_modules/random-bytes": { "version": "1.0.0", - "license": "MIT", + "resolved": "https://registry.npmjs.org/random-bytes/-/random-bytes-1.0.0.tgz", + "integrity": "sha512-iv7LhNVO047HzYR3InF6pUcUsPQiHTM1Qal51DcGSuZFBil1aBBWG5eHPNek7bvILMaYJ/8RU1e8w1AMdHmLQQ==", "peer": true, "engines": { "node": ">= 0.8" } }, - "../../../service/node_modules/range-parser": { + "node_modules/@ngageoint/mage.service/node_modules/randombytes": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", + "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", + "extraneous": true, + "license": "MIT", + "dependencies": { + "safe-buffer": "^5.1.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/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==", "license": "MIT", "peer": true, "engines": { "node": ">= 0.6" } }, - "../../../service/node_modules/raw-body": { - "version": "2.3.3", + "node_modules/@ngageoint/mage.service/node_modules/raw-body": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.2.tgz", + "integrity": "sha512-8zGqypfENjCIqGhgXToC8aB2r7YrBX+AQAfIPs/Mlk+BtPTztOvTS01NRW/3Eh60J+a48lt8qsCzirQ6loCVfA==", "license": "MIT", "peer": true, "dependencies": { - "bytes": "3.0.0", - "http-errors": "1.6.3", - "iconv-lite": "0.4.23", + "bytes": "3.1.2", + "http-errors": "2.0.0", + "iconv-lite": "0.4.24", "unpipe": "1.0.0" }, "engines": { "node": ">= 0.8" } }, - "../../../service/node_modules/raw-body/node_modules/iconv-lite": { - "version": "0.4.23", + "node_modules/@ngageoint/mage.service/node_modules/raw-body/node_modules/iconv-lite": { + "version": "0.4.24", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", + "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", "license": "MIT", "peer": true, "dependencies": { @@ -10697,17 +11922,20 @@ "node": ">=0.10.0" } }, - "../../../service/node_modules/rbush": { + "node_modules/@ngageoint/mage.service/node_modules/rbush": { "version": "3.0.1", - "license": "MIT", + "resolved": "https://registry.npmjs.org/rbush/-/rbush-3.0.1.tgz", + "integrity": "sha512-XRaVO0YecOpEuIvbhbpTrZgoiI6xBlz6hnlr6EHhd+0x9ase6EmeN+hdwwUaJvLcsFFQ8iWVF1GAK1yB0BWi0w==", "peer": true, "dependencies": { "quickselect": "^2.0.0" } }, - "../../../service/node_modules/rc": { + "node_modules/@ngageoint/mage.service/node_modules/rc": { "version": "1.2.8", - "license": "(BSD-2-Clause OR MIT OR Apache-2.0)", + "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", + "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==", + "optional": true, "peer": true, "dependencies": { "deep-extend": "^0.6.0", @@ -10719,19 +11947,21 @@ "rc": "cli.js" } }, - "../../../service/node_modules/rc/node_modules/strip-json-comments": { + "node_modules/@ngageoint/mage.service/node_modules/rc/node_modules/strip-json-comments": { "version": "2.0.1", - "license": "MIT", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", + "integrity": "sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ==", + "optional": true, "peer": true, "engines": { "node": ">=0.10.0" } }, - "../../../service/node_modules/read-pkg": { + "node_modules/@ngageoint/mage.service/node_modules/read-pkg": { "version": "3.0.0", - "dev": true, - "license": "MIT", - "peer": true, + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-3.0.0.tgz", + "integrity": "sha512-BLq/cCO9two+lBgiTYNqD6GdtK8s4NpaWrl6/rCO9w0TUS8oJl7cmToOZfRYllKTISY6nt1U7jQ53brmKqY6BA==", + "extraneous": true, "dependencies": { "load-json-file": "^4.0.0", "normalize-package-data": "^2.3.2", @@ -10741,80 +11971,96 @@ "node": ">=4" } }, - "../../../service/node_modules/read-pkg-up": { - "version": "3.0.0", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/read-pkg-up": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-4.0.0.tgz", + "integrity": "sha512-6etQSH7nJGsK0RbG/2TeDzZFa8shjQ1um+SwQQ5cwKy0dhSXdOncEhb1CPpvQG4h7FyOV6EB6YlV0yJvZQNAkA==", + "extraneous": true, "dependencies": { - "find-up": "^2.0.0", + "find-up": "^3.0.0", "read-pkg": "^3.0.0" }, "engines": { - "node": ">=4" + "node": ">=6" } }, - "../../../service/node_modules/read-pkg-up/node_modules/find-up": { - "version": "2.1.0", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/read-pkg-up/node_modules/find-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "extraneous": true, "dependencies": { - "locate-path": "^2.0.0" + "locate-path": "^3.0.0" }, "engines": { - "node": ">=4" + "node": ">=6" } }, - "../../../service/node_modules/read-pkg-up/node_modules/locate-path": { - "version": "2.0.0", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/read-pkg-up/node_modules/locate-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "extraneous": true, "dependencies": { - "p-locate": "^2.0.0", + "p-locate": "^3.0.0", "path-exists": "^3.0.0" }, "engines": { - "node": ">=4" + "node": ">=6" } }, - "../../../service/node_modules/read-pkg-up/node_modules/p-limit": { - "version": "1.3.0", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/read-pkg-up/node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "extraneous": true, "dependencies": { - "p-try": "^1.0.0" + "p-try": "^2.0.0" }, "engines": { - "node": ">=4" + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "../../../service/node_modules/read-pkg-up/node_modules/p-locate": { - "version": "2.0.0", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/read-pkg-up/node_modules/p-locate": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "extraneous": true, "dependencies": { - "p-limit": "^1.1.0" + "p-limit": "^2.0.0" }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/read-pkg-up/node_modules/path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==", + "extraneous": true, "engines": { "node": ">=4" } }, - "../../../service/node_modules/read-pkg-up/node_modules/p-try": { - "version": "1.0.0", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/read-pkg/node_modules/path-type": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz", + "integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==", + "extraneous": true, + "dependencies": { + "pify": "^3.0.0" + }, "engines": { "node": ">=4" } }, - "../../../service/node_modules/readable-stream": { - "version": "3.6.0", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/readable-stream": { + "version": "3.6.2", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", + "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", "peer": true, "dependencies": { "inherits": "^2.0.3", @@ -10825,9 +12071,10 @@ "node": ">= 6" } }, - "../../../service/node_modules/readable-web-to-node-stream": { + "node_modules/@ngageoint/mage.service/node_modules/readable-web-to-node-stream": { "version": "3.0.2", - "license": "MIT", + "resolved": "https://registry.npmjs.org/readable-web-to-node-stream/-/readable-web-to-node-stream-3.0.2.tgz", + "integrity": "sha512-ePeK6cc1EcKLEhJFt/AebMCLL+GgSKhuygrZ/GLaKZYEecIgIECf4UaUuaByiGtzckwR4ain9VzUh95T1exYGw==", "peer": true, "dependencies": { "readable-stream": "^3.6.0" @@ -10840,25 +12087,19 @@ "url": "https://github.com/sponsors/Borewit" } }, - "../../../service/node_modules/readdir-glob": { - "version": "1.1.2", - "license": "Apache-2.0", + "node_modules/@ngageoint/mage.service/node_modules/readdir-glob": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/readdir-glob/-/readdir-glob-1.1.3.tgz", + "integrity": "sha512-v05I2k7xN8zXvPD9N+z/uhXPaj0sUFCe2rcWZIpBsqxfP7xXFQ0tipAd/wjj1YxWyWtUS5IDJpOG82JKt2EAVA==", "peer": true, "dependencies": { "minimatch": "^5.1.0" } }, - "../../../service/node_modules/readdir-glob/node_modules/brace-expansion": { - "version": "2.0.1", - "license": "MIT", - "peer": true, - "dependencies": { - "balanced-match": "^1.0.0" - } - }, - "../../../service/node_modules/readdir-glob/node_modules/minimatch": { - "version": "5.1.0", - "license": "ISC", + "node_modules/@ngageoint/mage.service/node_modules/readdir-glob/node_modules/minimatch": { + "version": "5.1.6", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz", + "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==", "peer": true, "dependencies": { "brace-expansion": "^2.0.1" @@ -10867,58 +12108,29 @@ "node": ">=10" } }, - "../../../service/node_modules/readdirp": { - "version": "3.2.0", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/readdirp": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "extraneous": true, "license": "MIT", - "peer": true, "dependencies": { - "picomatch": "^2.0.4" + "picomatch": "^2.2.1" }, "engines": { - "node": ">= 8" + "node": ">=8.10.0" } }, - "../../../service/node_modules/redent": { - "version": "2.0.0", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "indent-string": "^3.0.0", - "strip-indent": "^2.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "../../../service/node_modules/regenerator-runtime": { - "version": "0.11.1", - "license": "MIT", - "peer": true - }, - "../../../service/node_modules/regex-not": { - "version": "1.0.2", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "extend-shallow": "^3.0.2", - "safe-regex": "^1.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "../../../service/node_modules/regexp.prototype.flags": { - "version": "1.4.3", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/regexp.prototype.flags": { + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.2.tgz", + "integrity": "sha512-NcDiDkTLuPR+++OCKB0nWafEmhg/Da8aUPLPMQbK+bxKKCm1/S5he+AqYa4PlMCVBalb4/yxIRub6qkEx5yJbw==", + "extraneous": true, "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3", - "functions-have-names": "^1.2.2" + "call-bind": "^1.0.6", + "define-properties": "^1.2.1", + "es-errors": "^1.3.0", + "set-function-name": "^2.0.1" }, "engines": { "node": ">= 0.4" @@ -10927,23 +12139,11 @@ "url": "https://github.com/sponsors/ljharb" } }, - "../../../service/node_modules/regexpp": { - "version": "3.2.0", - "dev": true, - "license": "MIT", - "peer": true, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/mysticatea" - } - }, - "../../../service/node_modules/release-zalgo": { + "node_modules/@ngageoint/mage.service/node_modules/release-zalgo": { "version": "1.0.0", - "dev": true, - "license": "ISC", - "peer": true, + "resolved": "https://registry.npmjs.org/release-zalgo/-/release-zalgo-1.0.0.tgz", + "integrity": "sha512-gUAyHVHPPC5wdqX/LG4LWtRYtgjxyX78oanFNTMMyFEfOqdC54s3eE82imuWKbOeqYht2CrNf64Qb8vgmmtZGA==", + "extraneous": true, "dependencies": { "es6-error": "^4.0.1" }, @@ -10951,26 +12151,10 @@ "node": ">=4" } }, - "../../../service/node_modules/repeat-element": { - "version": "1.1.4", - "dev": true, - "license": "MIT", - "peer": true, - "engines": { - "node": ">=0.10.0" - } - }, - "../../../service/node_modules/repeat-string": { - "version": "1.6.1", - "license": "MIT", - "peer": true, - "engines": { - "node": ">=0.10" - } - }, - "../../../service/node_modules/reproject": { + "node_modules/@ngageoint/mage.service/node_modules/reproject": { "version": "1.2.5", - "license": "MIT", + "resolved": "https://registry.npmjs.org/reproject/-/reproject-1.2.5.tgz", + "integrity": "sha512-cTH78fi1uuv5gzW/GVepO4LbCvOUhO0X2BEyyvrKkYb4KPRmDPs7cZnIxemHPUIch/CoSI8MPLmXRHZFSHjbKw==", "peer": true, "dependencies": { "concat-stream": "^2.0.0", @@ -10983,12 +12167,13 @@ "reproject": "cli.js" } }, - "../../../service/node_modules/reproject/node_modules/concat-stream": { + "node_modules/@ngageoint/mage.service/node_modules/reproject/node_modules/concat-stream": { "version": "2.0.0", + "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-2.0.0.tgz", + "integrity": "sha512-MWufYdFw53ccGjCA+Ol7XJYpAlW6/prSMzuPOTRnJGcGzuhLn4Scrz7qf6o8bROZ514ltazcIFJZevcfbo0x7A==", "engines": [ "node >= 6.0" ], - "license": "MIT", "peer": true, "dependencies": { "buffer-from": "^1.0.0", @@ -10997,16 +12182,12 @@ "typedarray": "^0.0.6" } }, - "../../../service/node_modules/reproject/node_modules/typedarray": { - "version": "0.0.6", - "license": "MIT", - "peer": true - }, - "../../../service/node_modules/request": { + "node_modules/@ngageoint/mage.service/node_modules/request": { "version": "2.88.2", - "dev": true, - "license": "Apache-2.0", - "peer": true, + "resolved": "https://registry.npmjs.org/request/-/request-2.88.2.tgz", + "integrity": "sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw==", + "deprecated": "request has been deprecated, see https://github.com/request/request/issues/3142", + "extraneous": true, "dependencies": { "aws-sign2": "~0.7.0", "aws4": "^1.8.0", @@ -11033,11 +12214,11 @@ "node": ">= 6" } }, - "../../../service/node_modules/request/node_modules/form-data": { + "node_modules/@ngageoint/mage.service/node_modules/request/node_modules/form-data": { "version": "2.3.3", - "dev": true, - "license": "MIT", - "peer": true, + "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz", + "integrity": "sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==", + "extraneous": true, "dependencies": { "asynckit": "^0.4.0", "combined-stream": "^1.0.6", @@ -11047,36 +12228,47 @@ "node": ">= 0.12" } }, - "../../../service/node_modules/request/node_modules/uuid": { + "node_modules/@ngageoint/mage.service/node_modules/request/node_modules/qs": { + "version": "6.5.3", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.3.tgz", + "integrity": "sha512-qxXIEh4pCGfHICj1mAJQ2/2XVZkjCDTcEgfoSQxc/fYivUZxTkk7L3bDBJSoNrEzXI17oUO5Dp07ktqE5KzczA==", + "extraneous": true, + "engines": { + "node": ">=0.6" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/request/node_modules/uuid": { "version": "3.4.0", - "dev": true, - "license": "MIT", - "peer": true, + "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", + "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==", + "deprecated": "Please upgrade to version 7 or higher. Older versions may use Math.random() in certain circumstances, which is known to be problematic. See https://v8.dev/blog/math-random for details.", + "extraneous": true, "bin": { "uuid": "bin/uuid" } }, - "../../../service/node_modules/require-directory": { + "node_modules/@ngageoint/mage.service/node_modules/require-directory": { "version": "2.1.1", - "dev": true, - "license": "MIT", - "peer": true, + "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", + "extraneous": true, "engines": { "node": ">=0.10.0" } }, - "../../../service/node_modules/require-main-filename": { + "node_modules/@ngageoint/mage.service/node_modules/require-main-filename": { "version": "2.0.0", - "dev": true, - "license": "ISC", - "peer": true + "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz", + "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==", + "extraneous": true }, - "../../../service/node_modules/resolve": { - "version": "1.22.1", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/resolve": { + "version": "1.22.8", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.8.tgz", + "integrity": "sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==", "peer": true, "dependencies": { - "is-core-module": "^2.9.0", + "is-core-module": "^2.13.0", "path-parse": "^1.0.7", "supports-preserve-symlinks-flag": "^1.0.0" }, @@ -11087,25 +12279,20 @@ "url": "https://github.com/sponsors/ljharb" } }, - "../../../service/node_modules/resolve-from": { + "node_modules/@ngageoint/mage.service/node_modules/resolve-from": { "version": "4.0.0", - "dev": true, - "license": "MIT", - "peer": true, + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", + "extraneous": true, "engines": { "node": ">=4" } }, - "../../../service/node_modules/resolve-url": { - "version": "0.2.1", - "dev": true, - "license": "MIT", - "peer": true - }, - "../../../service/node_modules/restore-cursor": { + "node_modules/@ngageoint/mage.service/node_modules/restore-cursor": { "version": "3.1.0", - "devOptional": true, - "license": "MIT", + "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz", + "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==", + "optional": true, "peer": true, "dependencies": { "onetime": "^5.1.0", @@ -11115,70 +12302,163 @@ "node": ">=8" } }, - "../../../service/node_modules/ret": { + "node_modules/@ngageoint/mage.service/node_modules/ret": { "version": "0.2.2", - "dev": true, - "license": "MIT", - "peer": true, + "resolved": "https://registry.npmjs.org/ret/-/ret-0.2.2.tgz", + "integrity": "sha512-M0b3YWQs7R3Z917WRQy1HHA7Ba7D8hvZg6UE5mLykJxQVE2ju0IXbGlaHPPlkY+WN7wFP+wUMXmBFA0aV6vYGQ==", + "extraneous": true, "engines": { "node": ">=4" } }, - "../../../service/node_modules/rfc5646": { + "node_modules/@ngageoint/mage.service/node_modules/reusify": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", + "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", + "extraneous": true, + "engines": { + "iojs": ">=1.0.0", + "node": ">=0.10.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/rfc5646": { "version": "3.0.0", - "license": "Public Domain", + "resolved": "https://registry.npmjs.org/rfc5646/-/rfc5646-3.0.0.tgz", + "integrity": "sha512-yFQuMO3ANS0jhQLB3b4NJGQ13RTm6tA9ZRf70nRSmOKchaT88pzh4fBdhcXEOptYdGw22vNqH7IRD/7pjDILZQ==", "peer": true }, - "../../../service/node_modules/right-align": { - "version": "0.1.3", - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/rimraf": { + "version": "5.0.10", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-5.0.10.tgz", + "integrity": "sha512-l0OE8wL34P4nJH/H2ffoaniAokM2qSmrtXHmlpvYr5AVVX8msAyW0l8NVJFDxlSK4u3Uh/f41cQheDVdnYijwQ==", + "extraneous": true, + "license": "ISC", + "dependencies": { + "glob": "^10.3.7" + }, + "bin": { + "rimraf": "dist/esm/bin.mjs" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/rimraf/node_modules/foreground-child": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.2.1.tgz", + "integrity": "sha512-PXUUyLqrR2XCWICfv6ukppP96sdFwWbNEnfEMt7jNsISjMsvaLNinAHNDYyvkyU+SZG2BTSbT5NjG+vZslfGTA==", + "extraneous": true, "dependencies": { - "align-text": "^0.1.1" + "cross-spawn": "^7.0.0", + "signal-exit": "^4.0.1" }, "engines": { - "node": ">=0.10.0" + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "../../../service/node_modules/rimraf": { - "version": "2.6.3", - "dev": true, - "license": "ISC", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/rimraf/node_modules/glob": { + "version": "10.4.2", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.2.tgz", + "integrity": "sha512-GwMlUF6PkPo3Gk21UxkCohOv0PLcIXVtKyLlpEI28R/cO/4eNOdmLk3CMW1wROV/WR/EsZOWAfBbBOqYvs88/w==", + "extraneous": true, "dependencies": { - "glob": "^7.1.3" + "foreground-child": "^3.1.0", + "jackspeak": "^3.1.2", + "minimatch": "^9.0.4", + "minipass": "^7.1.2", + "package-json-from-dist": "^1.0.0", + "path-scurry": "^1.11.1" }, "bin": { - "rimraf": "bin.js" + "glob": "dist/esm/bin.mjs" + }, + "engines": { + "node": ">=16 || 14 >=14.18" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "../../../service/node_modules/ripemd160": { - "version": "2.0.2", - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/rimraf/node_modules/minimatch": { + "version": "9.0.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", + "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", + "extraneous": true, "dependencies": { - "hash-base": "^3.0.0", - "inherits": "^2.0.1" + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/rimraf/node_modules/signal-exit": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", + "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", + "extraneous": true, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "../../../service/node_modules/rtree-sql.js": { + "node_modules/@ngageoint/mage.service/node_modules/robust-predicates": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/robust-predicates/-/robust-predicates-3.0.2.tgz", + "integrity": "sha512-IXgzBWvWQwE6PrDI05OvmXUIruQTcoMDzRsOd5CDvHCVLcLHMTSYvOK5Cm46kWqlV3yAbuSpBZdJ5oP5OUoStg==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/rtree-sql.js": { "version": "1.7.0", - "license": "MIT", + "resolved": "https://registry.npmjs.org/rtree-sql.js/-/rtree-sql.js-1.7.0.tgz", + "integrity": "sha512-hue7klBnBrM6pvUPSnXNNgA0yN9FIjmhb8QveVY9q5h/3b//Cd8jaafUE0Ty89fuiamaLEHRw8eQq8mTn6Df5Q==", "peer": true }, - "../../../service/node_modules/run-async": { + "node_modules/@ngageoint/mage.service/node_modules/run-async": { "version": "2.4.1", - "devOptional": true, - "license": "MIT", + "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.4.1.tgz", + "integrity": "sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==", + "optional": true, "peer": true, "engines": { "node": ">=0.12.0" } }, - "../../../service/node_modules/rxjs": { + "node_modules/@ngageoint/mage.service/node_modules/run-parallel": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", + "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", + "extraneous": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "dependencies": { + "queue-microtask": "^1.2.2" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/rxjs": { "version": "6.6.7", - "devOptional": true, - "license": "Apache-2.0", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", + "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", + "optional": true, "peer": true, "dependencies": { "tslib": "^1.9.0" @@ -11187,14 +12467,35 @@ "npm": ">=2.0.0" } }, - "../../../service/node_modules/rxjs/node_modules/tslib": { + "node_modules/@ngageoint/mage.service/node_modules/rxjs/node_modules/tslib": { "version": "1.14.1", - "devOptional": true, - "license": "0BSD", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "optional": true, "peer": true }, - "../../../service/node_modules/safe-buffer": { + "node_modules/@ngageoint/mage.service/node_modules/safe-array-concat": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/safe-array-concat/-/safe-array-concat-1.1.2.tgz", + "integrity": "sha512-vj6RsCsWBCf19jIeHEfkRMw8DPiBb+DMXklQ/1SGDHOMlHdPUkZXFQ2YdplS23zESTijAcurb1aSgJA3AgMu1Q==", + "extraneous": true, + "dependencies": { + "call-bind": "^1.0.7", + "get-intrinsic": "^1.2.4", + "has-symbols": "^1.0.3", + "isarray": "^2.0.5" + }, + "engines": { + "node": ">=0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/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==", "funding": [ { "type": "github", @@ -11209,262 +12510,310 @@ "url": "https://feross.org/support" } ], - "license": "MIT", - "peer": true - }, - "../../../service/node_modules/safe-json-stringify": { - "version": "1.2.0", - "license": "MIT", - "optional": true, "peer": true }, - "../../../service/node_modules/safe-regex": { - "version": "1.1.0", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "ret": "~0.1.10" - } - }, - "../../../service/node_modules/safe-regex-test": { - "version": "1.0.0", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/safe-regex-test": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.0.3.tgz", + "integrity": "sha512-CdASjNJPvRa7roO6Ra/gLYBTzYzzPyyBXxIMdGW3USQLyjWEls2RgW5UBTXaQVp+OrpeCK3bLem8smtmheoRuw==", + "extraneous": true, "dependencies": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.1.3", + "call-bind": "^1.0.6", + "es-errors": "^1.3.0", "is-regex": "^1.1.4" }, + "engines": { + "node": ">= 0.4" + }, "funding": { "url": "https://github.com/sponsors/ljharb" } }, - "../../../service/node_modules/safe-regex/node_modules/ret": { - "version": "0.1.15", - "dev": true, - "license": "MIT", - "peer": true, - "engines": { - "node": ">=0.12" - } - }, - "../../../service/node_modules/safer-buffer": { + "node_modules/@ngageoint/mage.service/node_modules/safer-buffer": { "version": "2.1.2", - "license": "MIT", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", "peer": true }, - "../../../service/node_modules/saslprep": { - "version": "1.0.3", - "license": "MIT", - "optional": true, - "peer": true, - "dependencies": { - "sparse-bitfield": "^3.0.3" - }, - "engines": { - "node": ">=6" - } + "node_modules/@ngageoint/mage.service/node_modules/sax": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/sax/-/sax-1.4.1.tgz", + "integrity": "sha512-+aWOz7yVScEGoKNd4PA10LZ8sk0A/z5+nXQG5giUO5rprX9jgYsTdov9qCchZiPIZezbZH+jRut8nPodFAX4Jg==", + "peer": true }, - "../../../service/node_modules/semver": { - "version": "6.3.0", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/semver": { + "version": "7.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", + "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", "license": "ISC", "peer": true, "bin": { "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" } }, - "../../../service/node_modules/send": { - "version": "0.17.2", + "node_modules/@ngageoint/mage.service/node_modules/send": { + "version": "0.19.0", + "resolved": "https://registry.npmjs.org/send/-/send-0.19.0.tgz", + "integrity": "sha512-dW41u5VfLXu8SJh5bwRmyYUbAoSB3c9uQh6L8h/KtsFREPWpbX1lrljJo186Jc4nmci/sGUZ9a0a0J2zgfq2hw==", "license": "MIT", "peer": true, "dependencies": { "debug": "2.6.9", - "depd": "~1.1.2", - "destroy": "~1.0.4", + "depd": "2.0.0", + "destroy": "1.2.0", "encodeurl": "~1.0.2", "escape-html": "~1.0.3", "etag": "~1.8.1", "fresh": "0.5.2", - "http-errors": "1.8.1", + "http-errors": "2.0.0", "mime": "1.6.0", "ms": "2.1.3", - "on-finished": "~2.3.0", + "on-finished": "2.4.1", "range-parser": "~1.2.1", - "statuses": "~1.5.0" + "statuses": "2.0.1" }, "engines": { "node": ">= 0.8.0" } }, - "../../../service/node_modules/send/node_modules/debug": { + "node_modules/@ngageoint/mage.service/node_modules/send/node_modules/debug": { "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", "license": "MIT", "peer": true, "dependencies": { "ms": "2.0.0" } }, - "../../../service/node_modules/send/node_modules/debug/node_modules/ms": { + "node_modules/@ngageoint/mage.service/node_modules/send/node_modules/debug/node_modules/ms": { "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", "license": "MIT", "peer": true }, - "../../../service/node_modules/send/node_modules/http-errors": { - "version": "1.8.1", + "node_modules/@ngageoint/mage.service/node_modules/send/node_modules/encodeurl": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", + "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==", "license": "MIT", "peer": true, - "dependencies": { - "depd": "~1.1.2", - "inherits": "2.0.4", - "setprototypeof": "1.2.0", - "statuses": ">= 1.5.0 < 2", - "toidentifier": "1.0.1" - }, "engines": { - "node": ">= 0.6" + "node": ">= 0.8" } }, - "../../../service/node_modules/send/node_modules/ms": { + "node_modules/@ngageoint/mage.service/node_modules/send/node_modules/ms": { "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", "license": "MIT", "peer": true }, - "../../../service/node_modules/serve-static": { - "version": "1.14.2", + "node_modules/@ngageoint/mage.service/node_modules/serialize-javascript": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.2.tgz", + "integrity": "sha512-Saa1xPByTTq2gdeFZYLLo+RFE35NHZkAbqZeWNd3BpzppeVisAqpDjcp8dyf6uIvEqJRd46jemmyA4iFIeVk8g==", + "extraneous": true, + "license": "BSD-3-Clause", + "dependencies": { + "randombytes": "^2.1.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/serve-static": { + "version": "1.16.2", + "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.16.2.tgz", + "integrity": "sha512-VqpjJZKadQB/PEbEwvFdO43Ax5dFBZ2UECszz8bQ7pi7wt//PWe1P6MN7eCnjsatYtBT6EuiClbjSWP2WrIoTw==", "license": "MIT", "peer": true, "dependencies": { - "encodeurl": "~1.0.2", + "encodeurl": "~2.0.0", "escape-html": "~1.0.3", "parseurl": "~1.3.3", - "send": "0.17.2" + "send": "0.19.0" }, "engines": { "node": ">= 0.8.0" } }, - "../../../service/node_modules/set-blocking": { + "node_modules/@ngageoint/mage.service/node_modules/set-blocking": { "version": "2.0.0", - "license": "ISC", - "peer": true + "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", + "integrity": "sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==", + "extraneous": true }, - "../../../service/node_modules/set-value": { - "version": "2.0.1", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/set-function-length": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/set-function-length/-/set-function-length-1.2.2.tgz", + "integrity": "sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==", "peer": true, "dependencies": { - "extend-shallow": "^2.0.1", - "is-extendable": "^0.1.1", - "is-plain-object": "^2.0.3", - "split-string": "^3.0.1" + "define-data-property": "^1.1.4", + "es-errors": "^1.3.0", + "function-bind": "^1.1.2", + "get-intrinsic": "^1.2.4", + "gopd": "^1.0.1", + "has-property-descriptors": "^1.0.2" }, "engines": { - "node": ">=0.10.0" + "node": ">= 0.4" } }, - "../../../service/node_modules/set-value/node_modules/extend-shallow": { - "version": "2.0.1", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/set-function-name": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/set-function-name/-/set-function-name-2.0.2.tgz", + "integrity": "sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ==", + "extraneous": true, "dependencies": { - "is-extendable": "^0.1.0" + "define-data-property": "^1.1.4", + "es-errors": "^1.3.0", + "functions-have-names": "^1.2.3", + "has-property-descriptors": "^1.0.2" }, "engines": { - "node": ">=0.10.0" - } - }, - "../../../service/node_modules/set-value/node_modules/is-extendable": { - "version": "0.1.1", - "dev": true, - "license": "MIT", - "peer": true, - "engines": { - "node": ">=0.10.0" + "node": ">= 0.4" } }, - "../../../service/node_modules/setimmediate": { + "node_modules/@ngageoint/mage.service/node_modules/setimmediate": { "version": "1.0.5", - "dev": true, - "license": "MIT", - "peer": true + "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", + "integrity": "sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA==", + "extraneous": true, + "license": "MIT" }, - "../../../service/node_modules/setprototypeof": { + "node_modules/@ngageoint/mage.service/node_modules/setprototypeof": { "version": "1.2.0", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", + "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==", "license": "ISC", "peer": true }, - "../../../service/node_modules/sha.js": { - "version": "2.4.11", - "license": "(MIT AND BSD-3-Clause)", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "extraneous": true, "dependencies": { - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" + "shebang-regex": "^3.0.0" }, - "bin": { - "sha.js": "bin.js" + "engines": { + "node": ">=8" } }, - "../../../service/node_modules/shebang-command": { - "version": "1.2.0", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "extraneous": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/shell-quote": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.8.1.tgz", + "integrity": "sha512-6j1W9l1iAs/4xYBI1SYOVZyFcCis9b4KCLQ8fgAGG07QvzaRLVVRQvAy85yNmmZSjYjg4MWh4gNvlPujU/5LpA==", + "extraneous": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/side-channel": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.1.0.tgz", + "integrity": "sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw==", "license": "MIT", "peer": true, "dependencies": { - "shebang-regex": "^1.0.0" + "es-errors": "^1.3.0", + "object-inspect": "^1.13.3", + "side-channel-list": "^1.0.0", + "side-channel-map": "^1.0.1", + "side-channel-weakmap": "^1.0.2" }, "engines": { - "node": ">=0.10.0" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "../../../service/node_modules/shebang-regex": { + "node_modules/@ngageoint/mage.service/node_modules/side-channel-list": { "version": "1.0.0", - "dev": true, + "resolved": "https://registry.npmjs.org/side-channel-list/-/side-channel-list-1.0.0.tgz", + "integrity": "sha512-FCLHtRD/gnpCiCHEiJLOwdmFP+wzCmDEkc9y7NsYxeF4u7Btsn1ZuwgwJGxImImHicJArLP4R0yX4c2KCrMrTA==", "license": "MIT", "peer": true, + "dependencies": { + "es-errors": "^1.3.0", + "object-inspect": "^1.13.3" + }, "engines": { - "node": ">=0.10.0" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "../../../service/node_modules/shell-quote": { - "version": "1.7.4", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/side-channel-map": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/side-channel-map/-/side-channel-map-1.0.1.tgz", + "integrity": "sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA==", "license": "MIT", "peer": true, + "dependencies": { + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.5", + "object-inspect": "^1.13.3" + }, + "engines": { + "node": ">= 0.4" + }, "funding": { "url": "https://github.com/sponsors/ljharb" } }, - "../../../service/node_modules/side-channel": { - "version": "1.0.4", + "node_modules/@ngageoint/mage.service/node_modules/side-channel-weakmap": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/side-channel-weakmap/-/side-channel-weakmap-1.0.2.tgz", + "integrity": "sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A==", "license": "MIT", "peer": true, "dependencies": { - "call-bind": "^1.0.0", - "get-intrinsic": "^1.0.2", - "object-inspect": "^1.9.0" + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.5", + "object-inspect": "^1.13.3", + "side-channel-map": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" } }, - "../../../service/node_modules/sift": { + "node_modules/@ngageoint/mage.service/node_modules/sift": { "version": "16.0.1", - "license": "MIT", + "resolved": "https://registry.npmjs.org/sift/-/sift-16.0.1.tgz", + "integrity": "sha512-Wv6BjQ5zbhW7VFefWusVP33T/EM0vYikCaQ2qR8yULbsilAT8/wQaXvuQ3ptGLpoKx+lihJE3y2UTgKDyyNHZQ==", "peer": true }, - "../../../service/node_modules/signal-exit": { + "node_modules/@ngageoint/mage.service/node_modules/signal-exit": { "version": "3.0.7", - "license": "ISC", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", + "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", + "optional": true, "peer": true }, - "../../../service/node_modules/simple-concat": { + "node_modules/@ngageoint/mage.service/node_modules/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==", "funding": [ { "type": "github", @@ -11479,29 +12828,47 @@ "url": "https://feross.org/support" } ], - "license": "MIT", + "optional": true, "peer": true }, - "../../../service/node_modules/simple-get": { - "version": "3.1.1", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/simple-get": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/simple-get/-/simple-get-4.0.1.tgz", + "integrity": "sha512-brv7p5WgH0jmQJr1ZDDfKDOSeWWg+OVypG99A/5vYGPqJ6pxiaHLy8nxtFjBA7oMa01ebA9gfh1uMCFqOuXxvA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "optional": true, "peer": true, "dependencies": { - "decompress-response": "^4.2.0", + "decompress-response": "^6.0.0", "once": "^1.3.1", "simple-concat": "^1.0.0" } }, - "../../../service/node_modules/simplify-js": { + "node_modules/@ngageoint/mage.service/node_modules/simplify-js": { "version": "1.2.4", - "license": "BSD-2-Clause", + "resolved": "https://registry.npmjs.org/simplify-js/-/simplify-js-1.2.4.tgz", + "integrity": "sha512-vITfSlwt7h/oyrU42R83mtzFpwYk3+mkH9bOHqq/Qw6n8rtR7aE3NZQ5fbcyCUVVmuMJR6ynsAhOfK2qoah8Jg==", "peer": true }, - "../../../service/node_modules/sinon": { + "node_modules/@ngageoint/mage.service/node_modules/sinon": { "version": "7.5.0", - "dev": true, - "license": "BSD-3-Clause", - "peer": true, + "resolved": "https://registry.npmjs.org/sinon/-/sinon-7.5.0.tgz", + "integrity": "sha512-AoD0oJWerp0/rY9czP/D6hDTTUYGpObhZjMpd7Cl/A6+j0xBE+ayL/ldfggkBXUs0IkvIiM1ljM8+WkOc5k78Q==", + "deprecated": "16.1.1", + "extraneous": true, "dependencies": { "@sinonjs/commons": "^1.4.0", "@sinonjs/formatio": "^3.2.1", @@ -11512,39 +12879,49 @@ "supports-color": "^5.5.0" } }, - "../../../service/node_modules/sinon-chai": { - "version": "3.3.0", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/sinon-chai": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/sinon-chai/-/sinon-chai-3.7.0.tgz", + "integrity": "sha512-mf5NURdUaSdnatJx3uhoBOrY9dtL19fiOtAdT1Azxg3+lNJFiuN0uzaU3xX1LeAfL17kHQhTAJgpsfhbMJMY2g==", + "extraneous": true, "license": "(BSD-2-Clause OR WTFPL)", - "peer": true, "peerDependencies": { "chai": "^4.0.0", - "sinon": ">=4.0.0 <8.0.0" + "sinon": ">=4.0.0" } }, - "../../../service/node_modules/sinon-mongoose": { + "node_modules/@ngageoint/mage.service/node_modules/sinon-mongoose": { "version": "2.3.0", - "dev": true, - "license": "MIT", - "peer": true, + "resolved": "https://registry.npmjs.org/sinon-mongoose/-/sinon-mongoose-2.3.0.tgz", + "integrity": "sha512-d0rrL53wuDDs91GMCFAvQam64IpdVfkaxA4cGLTZfw1d5tTg6+F/D7F080d1n3d1gSHJBZLUf9pGpijC/x7xKQ==", + "extraneous": true, "peerDependencies": { "sinon": "5 - 7" } }, - "../../../service/node_modules/sinon/node_modules/has-flag": { + "node_modules/@ngageoint/mage.service/node_modules/sinon/node_modules/diff": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/diff/-/diff-3.5.0.tgz", + "integrity": "sha512-A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA==", + "extraneous": true, + "engines": { + "node": ">=0.3.1" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/sinon/node_modules/has-flag": { "version": "3.0.0", - "dev": true, - "license": "MIT", - "peer": true, + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "extraneous": true, "engines": { "node": ">=4" } }, - "../../../service/node_modules/sinon/node_modules/supports-color": { + "node_modules/@ngageoint/mage.service/node_modules/sinon/node_modules/supports-color": { "version": "5.5.0", - "dev": true, - "license": "MIT", - "peer": true, + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "extraneous": true, "dependencies": { "has-flag": "^3.0.0" }, @@ -11552,24370 +12929,5623 @@ "node": ">=4" } }, - "../../../service/node_modules/slash": { - "version": "2.0.0", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "extraneous": true, "license": "MIT", - "peer": true, "engines": { - "node": ">=6" + "node": ">=8" } }, - "../../../service/node_modules/slice-ansi": { - "version": "2.1.0", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/smart-buffer": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.2.0.tgz", + "integrity": "sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==", "peer": true, - "dependencies": { - "ansi-styles": "^3.2.0", - "astral-regex": "^1.0.0", - "is-fullwidth-code-point": "^2.0.0" - }, "engines": { - "node": ">=6" + "node": ">= 6.0.0", + "npm": ">= 3.0.0" } }, - "../../../service/node_modules/slice-ansi/node_modules/ansi-styles": { - "version": "3.2.1", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/socks": { + "version": "2.8.3", + "resolved": "https://registry.npmjs.org/socks/-/socks-2.8.3.tgz", + "integrity": "sha512-l5x7VUUWbjVFbafGLxPWkYsHIhEvmF85tbIeFZWc8ZPtoMyybuEhL7Jye/ooC4/d48FgOjSJXgsF/AJPYCW8Zw==", "peer": true, "dependencies": { - "color-convert": "^1.9.0" + "ip-address": "^9.0.5", + "smart-buffer": "^4.2.0" }, "engines": { - "node": ">=4" + "node": ">= 10.0.0", + "npm": ">= 3.0.0" } }, - "../../../service/node_modules/slice-ansi/node_modules/color-convert": { - "version": "1.9.3", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "color-name": "1.1.3" + "node_modules/@ngageoint/mage.service/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "extraneous": true, + "engines": { + "node": ">=0.10.0" } }, - "../../../service/node_modules/slice-ansi/node_modules/color-name": { - "version": "1.1.3", - "dev": true, - "license": "MIT", - "peer": true - }, - "../../../service/node_modules/slice-ansi/node_modules/is-fullwidth-code-point": { - "version": "2.0.0", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/sparse-bitfield": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/sparse-bitfield/-/sparse-bitfield-3.0.3.tgz", + "integrity": "sha512-kvzhi7vqKTfkh0PZU+2D2PIllw2ymqJKujUcyPMd9Y75Nv4nPbGJZXNhxsgdQab2BmlDct1YnfQCguEvHr7VsQ==", + "optional": true, "peer": true, - "engines": { - "node": ">=4" + "dependencies": { + "memory-pager": "^1.0.2" } }, - "../../../service/node_modules/smart-buffer": { - "version": "4.2.0", - "license": "MIT", - "peer": true, - "engines": { - "node": ">= 6.0.0", - "npm": ">= 3.0.0" + "node_modules/@ngageoint/mage.service/node_modules/spawn-wrap": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/spawn-wrap/-/spawn-wrap-1.4.3.tgz", + "integrity": "sha512-IgB8md0QW/+tWqcavuFgKYR/qIRvJkRLPJDFaoXtLLUaVcCDK0+HeFTkmQHj3eprcYhc+gOl0aEA1w7qZlYezw==", + "extraneous": true, + "dependencies": { + "foreground-child": "^1.5.6", + "mkdirp": "^0.5.0", + "os-homedir": "^1.0.1", + "rimraf": "^2.6.2", + "signal-exit": "^3.0.2", + "which": "^1.3.0" } }, - "../../../service/node_modules/snapdragon": { - "version": "0.8.2", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/spawn-wrap/node_modules/rimraf": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", + "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", + "deprecated": "Rimraf versions prior to v4 are no longer supported", + "extraneous": true, "dependencies": { - "base": "^0.11.1", - "debug": "^2.2.0", - "define-property": "^0.2.5", - "extend-shallow": "^2.0.1", - "map-cache": "^0.2.2", - "source-map": "^0.5.6", - "source-map-resolve": "^0.5.0", - "use": "^3.1.0" + "glob": "^7.1.3" }, - "engines": { - "node": ">=0.10.0" + "bin": { + "rimraf": "bin.js" } }, - "../../../service/node_modules/snapdragon-node": { - "version": "2.1.1", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/spawn-wrap/node_modules/which": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "extraneous": true, "dependencies": { - "define-property": "^1.0.0", - "isobject": "^3.0.0", - "snapdragon-util": "^3.0.1" + "isexe": "^2.0.0" }, - "engines": { - "node": ">=0.10.0" + "bin": { + "which": "bin/which" } }, - "../../../service/node_modules/snapdragon-node/node_modules/define-property": { - "version": "1.0.0", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/spdx-correct": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.2.0.tgz", + "integrity": "sha512-kN9dJbvnySHULIluDHy32WHRUu3Og7B9sbY7tsFLctQkIqnMh3hErYgdMjTYuqmcXX+lK5T1lnUt3G7zNswmZA==", + "extraneous": true, "dependencies": { - "is-descriptor": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" + "spdx-expression-parse": "^3.0.0", + "spdx-license-ids": "^3.0.0" } }, - "../../../service/node_modules/snapdragon-util": { + "node_modules/@ngageoint/mage.service/node_modules/spdx-exceptions": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.5.0.tgz", + "integrity": "sha512-PiU42r+xO4UbUS1buo3LPJkjlO7430Xn5SVAhdpzzsPHsjbYVflnnFdATgabnLude+Cqu25p6N+g2lw/PFsa4w==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/spdx-expression-parse": { "version": "3.0.1", - "dev": true, - "license": "MIT", + "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", + "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", + "extraneous": true, + "dependencies": { + "spdx-exceptions": "^2.1.0", + "spdx-license-ids": "^3.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/spdx-license-ids": { + "version": "3.0.18", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.18.tgz", + "integrity": "sha512-xxRs31BqRYHwiMzudOrpSiHtZ8i/GeionCBDSilhYRj+9gIcI8wCZTlXZKu9vZIVqViP3dcp9qE5G6AlIaD+TQ==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/splaytree": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/splaytree/-/splaytree-3.1.2.tgz", + "integrity": "sha512-4OM2BJgC5UzrhVnnJA4BkHKGtjXNzzUfpQjCO8I05xYPsfS/VuQDwjCGGMi8rYQilHEV4j8NBqTFbls/PZEE7A==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/split": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/split/-/split-1.0.1.tgz", + "integrity": "sha512-mTyOoPbrivtXnwnIxZRFYRrPNtEFKlpB2fvjSnCQUiAA6qAZzqwna5envK4uk6OIeP17CsdF3rSBGYVBsU0Tkg==", "peer": true, "dependencies": { - "kind-of": "^3.2.0" + "through": "2" }, "engines": { - "node": ">=0.10.0" + "node": "*" } }, - "../../../service/node_modules/snapdragon-util/node_modules/is-buffer": { - "version": "1.1.6", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/sprintf-js": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", "peer": true }, - "../../../service/node_modules/snapdragon-util/node_modules/kind-of": { - "version": "3.2.2", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/sshpk": { + "version": "1.18.0", + "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.18.0.tgz", + "integrity": "sha512-2p2KJZTSqQ/I3+HX42EpYOa2l3f8Erv8MWKsy2I9uf4wA7yFIkXRffYdsx86y6z4vHtV8u7g+pPlr8/4ouAxsQ==", + "extraneous": true, "dependencies": { - "is-buffer": "^1.1.5" + "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" + }, + "bin": { + "sshpk-conv": "bin/sshpk-conv", + "sshpk-sign": "bin/sshpk-sign", + "sshpk-verify": "bin/sshpk-verify" }, "engines": { "node": ">=0.10.0" } }, - "../../../service/node_modules/snapdragon/node_modules/debug": { - "version": "2.6.9", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/sshpk/node_modules/jsbn": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", + "integrity": "sha512-UVU9dibq2JcFWxQPA6KCqj5O42VOmAY3zQUfEKxU0KpTGXwNoCjkX1e13eHNvw/xPynt6pU0rZ1htjWTNTSXsg==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/stack-trace": { + "version": "0.0.10", + "resolved": "https://registry.npmjs.org/stack-trace/-/stack-trace-0.0.10.tgz", + "integrity": "sha512-KGzahc7puUKkzyMt+IqAep+TVNbKP+k2Lmwhub39m1AsTSkaDutx56aDCo+HLDzf/D26BIHTJWNiTG1KAJiQCg==", "peer": true, - "dependencies": { - "ms": "2.0.0" + "engines": { + "node": "*" } }, - "../../../service/node_modules/snapdragon/node_modules/define-property": { - "version": "0.2.5", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/statuses": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", + "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", "license": "MIT", "peer": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/stop-iteration-iterator": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/stop-iteration-iterator/-/stop-iteration-iterator-1.0.0.tgz", + "integrity": "sha512-iCGQj+0l0HOdZ2AEeBADlsRC+vsnDsZsbdSiH1yNSjcfKM7fdpCMfqAL/dwF5BLiw/XhRft/Wax6zQbhq2BcjQ==", + "extraneous": true, "dependencies": { - "is-descriptor": "^0.1.0" + "internal-slot": "^1.0.4" }, "engines": { - "node": ">=0.10.0" + "node": ">= 0.4" } }, - "../../../service/node_modules/snapdragon/node_modules/extend-shallow": { - "version": "2.0.1", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/stream-combiner": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/stream-combiner/-/stream-combiner-0.2.2.tgz", + "integrity": "sha512-6yHMqgLYDzQDcAkL+tjJDC5nSNuNIx0vZtRZeiPh7Saef7VHX9H5Ijn9l2VIol2zaNYlYEX6KyuT/237A58qEQ==", "peer": true, "dependencies": { - "is-extendable": "^0.1.0" - }, - "engines": { - "node": ">=0.10.0" + "duplexer": "~0.1.1", + "through": "~2.3.4" } }, - "../../../service/node_modules/snapdragon/node_modules/is-accessor-descriptor": { - "version": "0.1.6", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/streamsearch": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/streamsearch/-/streamsearch-1.1.0.tgz", + "integrity": "sha512-Mcc5wHehp9aXz1ax6bZUyY5afg9u2rv5cqQI3mRrYkGC8rW2hM02jWuwjtL++LS5qinSyhj2QfLyNsuc+VsExg==", "peer": true, - "dependencies": { - "kind-of": "^3.0.2" - }, "engines": { - "node": ">=0.10.0" + "node": ">=10.0.0" } }, - "../../../service/node_modules/snapdragon/node_modules/is-accessor-descriptor/node_modules/kind-of": { - "version": "3.2.2", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/streamx": { + "version": "2.22.0", + "resolved": "https://registry.npmjs.org/streamx/-/streamx-2.22.0.tgz", + "integrity": "sha512-sLh1evHOzBy/iWRiR6d1zRcLao4gGZr3C1kzNz4fopCOKJb6xD9ub8Mpi9Mr1R6id5o43S+d93fI48UC5uM9aw==", + "extraneous": true, "license": "MIT", - "peer": true, "dependencies": { - "is-buffer": "^1.1.5" + "fast-fifo": "^1.3.2", + "text-decoder": "^1.1.0" }, - "engines": { - "node": ">=0.10.0" + "optionalDependencies": { + "bare-events": "^2.2.0" } }, - "../../../service/node_modules/snapdragon/node_modules/is-buffer": { - "version": "1.1.6", - "dev": true, - "license": "MIT", - "peer": true - }, - "../../../service/node_modules/snapdragon/node_modules/is-data-descriptor": { - "version": "0.1.4", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/string_decoder": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", "peer": true, "dependencies": { - "kind-of": "^3.0.2" - }, - "engines": { - "node": ">=0.10.0" + "safe-buffer": "~5.2.0" } }, - "../../../service/node_modules/snapdragon/node_modules/is-data-descriptor/node_modules/kind-of": { - "version": "3.2.2", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "optional": true, "peer": true, "dependencies": { - "is-buffer": "^1.1.5" + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" }, "engines": { - "node": ">=0.10.0" + "node": ">=8" } }, - "../../../service/node_modules/snapdragon/node_modules/is-descriptor": { - "version": "0.1.6", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/string-width-cjs": { + "name": "string-width", + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "extraneous": true, "dependencies": { - "is-accessor-descriptor": "^0.1.6", - "is-data-descriptor": "^0.1.4", - "kind-of": "^5.0.0" + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" }, "engines": { - "node": ">=0.10.0" - } - }, - "../../../service/node_modules/snapdragon/node_modules/is-extendable": { - "version": "0.1.1", - "dev": true, - "license": "MIT", - "peer": true, - "engines": { - "node": ">=0.10.0" - } - }, - "../../../service/node_modules/snapdragon/node_modules/kind-of": { - "version": "5.1.0", - "dev": true, - "license": "MIT", - "peer": true, - "engines": { - "node": ">=0.10.0" + "node": ">=8" } }, - "../../../service/node_modules/snapdragon/node_modules/ms": { - "version": "2.0.0", - "dev": true, - "license": "MIT", - "peer": true - }, - "../../../service/node_modules/snapdragon/node_modules/source-map": { - "version": "0.5.7", - "dev": true, - "license": "BSD-3-Clause", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/string.prototype.padend": { + "version": "3.1.6", + "resolved": "https://registry.npmjs.org/string.prototype.padend/-/string.prototype.padend-3.1.6.tgz", + "integrity": "sha512-XZpspuSB7vJWhvJc9DLSlrXl1mcA2BdoY5jjnS135ydXqLoqhs96JjDtCkjJEQHvfqZIp9hBuBMgI589peyx9Q==", + "extraneous": true, + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.2", + "es-object-atoms": "^1.0.0" + }, "engines": { - "node": ">=0.10.0" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "../../../service/node_modules/socks": { - "version": "2.7.1", - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/string.prototype.trim": { + "version": "1.2.9", + "resolved": "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.9.tgz", + "integrity": "sha512-klHuCNxiMZ8MlsOihJhJEBJAiMVqU3Z2nEXWfWnIqjN0gEFS9J9+IxKozWWtQGcgoa1WUZzLjKPTr4ZHNFTFxw==", + "extraneous": true, "dependencies": { - "ip": "^2.0.0", - "smart-buffer": "^4.2.0" + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.0", + "es-object-atoms": "^1.0.0" }, "engines": { - "node": ">= 10.13.0", - "npm": ">= 3.0.0" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "../../../service/node_modules/source-map": { - "version": "0.6.1", - "license": "BSD-3-Clause", - "peer": true, - "engines": { - "node": ">=0.10.0" + "node_modules/@ngageoint/mage.service/node_modules/string.prototype.trimend": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.8.tgz", + "integrity": "sha512-p73uL5VCHCO2BZZ6krwwQE3kCzM7NKmis8S//xEC6fQonchbum4eP6kR4DLEjQFO3Wnj3Fuo8NM0kOSjVdHjZQ==", + "extraneous": true, + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "../../../service/node_modules/source-map-resolve": { - "version": "0.5.3", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/string.prototype.trimstart": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.8.tgz", + "integrity": "sha512-UXSH262CSZY1tfu3G3Secr6uGLCFVPMhIqHjlgCUtCCcgihYc/xKs9djMTMUOb2j1mVSeU8EU6NWc/iQKU6Gfg==", + "extraneous": true, "dependencies": { - "atob": "^2.1.2", - "decode-uri-component": "^0.2.0", - "resolve-url": "^0.2.1", - "source-map-url": "^0.4.0", - "urix": "^0.1.0" + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "../../../service/node_modules/source-map-url": { - "version": "0.4.1", - "dev": true, - "license": "MIT", - "peer": true - }, - "../../../service/node_modules/sparse-bitfield": { - "version": "3.0.3", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", "optional": true, "peer": true, "dependencies": { - "memory-pager": "^1.0.2" + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" } }, - "../../../service/node_modules/spawn-wrap": { - "version": "1.4.3", - "dev": true, - "license": "ISC", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/strip-ansi-cjs": { + "name": "strip-ansi", + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "extraneous": true, "dependencies": { - "foreground-child": "^1.5.6", - "mkdirp": "^0.5.0", - "os-homedir": "^1.0.1", - "rimraf": "^2.6.2", - "signal-exit": "^3.0.2", - "which": "^1.3.0" + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" } }, - "../../../service/node_modules/spdx-correct": { - "version": "3.1.1", - "dev": true, - "license": "Apache-2.0", - "peer": true, - "dependencies": { - "spdx-expression-parse": "^3.0.0", - "spdx-license-ids": "^3.0.0" + "node_modules/@ngageoint/mage.service/node_modules/strip-bom": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", + "integrity": "sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==", + "extraneous": true, + "engines": { + "node": ">=4" } }, - "../../../service/node_modules/spdx-exceptions": { - "version": "2.3.0", - "dev": true, - "license": "CC-BY-3.0", - "peer": true - }, - "../../../service/node_modules/spdx-expression-parse": { - "version": "3.0.1", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "spdx-exceptions": "^2.1.0", - "spdx-license-ids": "^3.0.0" + "node_modules/@ngageoint/mage.service/node_modules/strip-json-comments": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", + "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", + "extraneous": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "../../../service/node_modules/spdx-license-ids": { - "version": "3.0.12", - "dev": true, - "license": "CC0-1.0", - "peer": true - }, - "../../../service/node_modules/splaytree": { - "version": "3.1.1", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/strnum": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/strnum/-/strnum-1.0.5.tgz", + "integrity": "sha512-J8bbNyKKXl5qYcR36TIO8W3mVGVHrmmxsd5PAItGkmyzwJvybiw2IVq5nqd0i4LSNSkB/sx9VHllbfFdr9k1JA==", + "optional": true, "peer": true }, - "../../../service/node_modules/split": { - "version": "1.0.1", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/strtok3": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/strtok3/-/strtok3-6.3.0.tgz", + "integrity": "sha512-fZtbhtvI9I48xDSywd/somNqgUHl2L2cstmXCCif0itOf96jeW18MBSyrLuNicYQVkvpOxkZtkzujiTJ9LW5Jw==", "peer": true, "dependencies": { - "through": "2" + "@tokenizer/token": "^0.3.0", + "peek-readable": "^4.1.0" }, "engines": { - "node": "*" + "node": ">=10" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/Borewit" } }, - "../../../service/node_modules/split-string": { - "version": "3.1.0", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/superagent": { + "version": "8.1.2", + "resolved": "https://registry.npmjs.org/superagent/-/superagent-8.1.2.tgz", + "integrity": "sha512-6WTxW1EB6yCxV5VFOIPQruWGHqc3yI7hEmZK6h+pyk69Lk/Ut7rLUY6W/ONF2MjBuGjvmMiIpsrVJ2vjrHlslA==", + "deprecated": "Please upgrade to v9.0.0+ as we have fixed a public vulnerability with formidable dependency. Note that v9.0.0+ requires Node.js v14.18.0+. See https://github.com/ladjs/superagent/pull/1800 for insight. This project is supported and maintained by the team at Forward Email @ https://forwardemail.net", "license": "MIT", "peer": true, "dependencies": { - "extend-shallow": "^3.0.0" + "component-emitter": "^1.3.0", + "cookiejar": "^2.1.4", + "debug": "^4.3.4", + "fast-safe-stringify": "^2.1.1", + "form-data": "^4.0.0", + "formidable": "^2.1.2", + "methods": "^1.1.2", + "mime": "2.6.0", + "qs": "^6.11.0", + "semver": "^7.3.8" }, "engines": { - "node": ">=0.10.0" + "node": ">=6.4.0 <13 || >=14" } }, - "../../../service/node_modules/sprintf-js": { - "version": "1.0.3", - "license": "BSD-3-Clause", - "peer": true - }, - "../../../service/node_modules/sshpk": { - "version": "1.17.0", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/superagent/node_modules/mime": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-2.6.0.tgz", + "integrity": "sha512-USPkMeET31rOMiarsBNIHZKLGgvKc/LrjofAnBlOttf5ajRvqiRA8QsenbcooctK6d6Ts6aqZXBA+XbkKthiQg==", "peer": true, - "dependencies": { - "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" - }, "bin": { - "sshpk-conv": "bin/sshpk-conv", - "sshpk-sign": "bin/sshpk-sign", - "sshpk-verify": "bin/sshpk-verify" + "mime": "cli.js" }, "engines": { - "node": ">=0.10.0" + "node": ">=4.0.0" } }, - "../../../service/node_modules/stack-trace": { - "version": "0.0.10", + "node_modules/@ngageoint/mage.service/node_modules/supertest": { + "version": "6.3.4", + "resolved": "https://registry.npmjs.org/supertest/-/supertest-6.3.4.tgz", + "integrity": "sha512-erY3HFDG0dPnhw4U+udPfrzXa4xhSG+n4rxfRuZWCUvjFWwKl+OxWf/7zk50s84/fAAs7vf5QAb9uRa0cCykxw==", + "extraneous": true, "license": "MIT", - "peer": true, + "dependencies": { + "methods": "^1.1.2", + "superagent": "^8.1.2" + }, "engines": { - "node": "*" + "node": ">=6.4.0" } }, - "../../../service/node_modules/static-extend": { - "version": "0.1.2", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "optional": true, "peer": true, "dependencies": { - "define-property": "^0.2.5", - "object-copy": "^0.1.0" + "has-flag": "^4.0.0" }, "engines": { - "node": ">=0.10.0" + "node": ">=8" } }, - "../../../service/node_modules/static-extend/node_modules/define-property": { - "version": "0.2.5", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/supports-preserve-symlinks-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", "peer": true, - "dependencies": { - "is-descriptor": "^0.1.0" - }, "engines": { - "node": ">=0.10.0" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "../../../service/node_modules/static-extend/node_modules/is-accessor-descriptor": { - "version": "0.1.6", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/svg-captcha": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/svg-captcha/-/svg-captcha-1.4.0.tgz", + "integrity": "sha512-/fkkhavXPE57zRRCjNqAP3txRCSncpMx3NnNZL7iEoyAtYwUjPhJxW6FQTQPG5UPEmCrbFoXS10C3YdJlW7PDg==", "peer": true, "dependencies": { - "kind-of": "^3.0.2" + "opentype.js": "^0.7.3" }, "engines": { - "node": ">=0.10.0" + "node": ">=4.x" } }, - "../../../service/node_modules/static-extend/node_modules/is-accessor-descriptor/node_modules/kind-of": { - "version": "3.2.2", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/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==", + "optional": true, "peer": true, "dependencies": { - "is-buffer": "^1.1.5" - }, - "engines": { - "node": ">=0.10.0" + "chownr": "^1.1.1", + "mkdirp-classic": "^0.5.2", + "pump": "^3.0.0", + "tar-stream": "^2.1.4" } }, - "../../../service/node_modules/static-extend/node_modules/is-buffer": { - "version": "1.1.6", - "dev": true, - "license": "MIT", - "peer": true - }, - "../../../service/node_modules/static-extend/node_modules/is-data-descriptor": { - "version": "0.1.4", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/tar-stream": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-2.2.0.tgz", + "integrity": "sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ==", "peer": true, "dependencies": { - "kind-of": "^3.0.2" + "bl": "^4.0.3", + "end-of-stream": "^1.4.1", + "fs-constants": "^1.0.0", + "inherits": "^2.0.3", + "readable-stream": "^3.1.1" }, "engines": { - "node": ">=0.10.0" + "node": ">=6" } }, - "../../../service/node_modules/static-extend/node_modules/is-data-descriptor/node_modules/kind-of": { - "version": "3.2.2", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/test-exclude": { + "version": "5.2.3", + "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-5.2.3.tgz", + "integrity": "sha512-M+oxtseCFO3EDtAaGH7iiej3CBkzXqFMbzqYAACdzKui4eZA+pq3tZEwChvOdNfa7xxy8BfbmgJSIr43cC/+2g==", + "extraneous": true, "dependencies": { - "is-buffer": "^1.1.5" + "glob": "^7.1.3", + "minimatch": "^3.0.4", + "read-pkg-up": "^4.0.0", + "require-main-filename": "^2.0.0" }, "engines": { - "node": ">=0.10.0" + "node": ">=6" } }, - "../../../service/node_modules/static-extend/node_modules/is-descriptor": { - "version": "0.1.6", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/test-exclude/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "extraneous": true, "dependencies": { - "is-accessor-descriptor": "^0.1.6", - "is-data-descriptor": "^0.1.4", - "kind-of": "^5.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "../../../service/node_modules/static-extend/node_modules/kind-of": { - "version": "5.1.0", - "dev": true, - "license": "MIT", - "peer": true, - "engines": { - "node": ">=0.10.0" + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" } }, - "../../../service/node_modules/statuses": { - "version": "1.5.0", - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/test-exclude/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "extraneous": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, "engines": { - "node": ">= 0.6" + "node": "*" } }, - "../../../service/node_modules/stream-combiner": { - "version": "0.2.2", - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/text-decoder": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/text-decoder/-/text-decoder-1.2.3.tgz", + "integrity": "sha512-3/o9z3X0X0fTupwsYvR03pJ/DjWuqqrfwBgTQzdWDiQSm9KitAyz/9WqsT2JQW7KV2m+bC2ol/zqpW37NHxLaA==", + "extraneous": true, + "license": "Apache-2.0", "dependencies": { - "duplexer": "~0.1.1", - "through": "~2.3.4" + "b4a": "^1.6.4" } }, - "../../../service/node_modules/streamsearch": { - "version": "1.1.0", - "peer": true, - "engines": { - "node": ">=10.0.0" - } + "node_modules/@ngageoint/mage.service/node_modules/text-table": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", + "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==", + "extraneous": true }, - "../../../service/node_modules/string_decoder": { - "version": "1.3.0", - "license": "MIT", - "peer": true, - "dependencies": { - "safe-buffer": "~5.2.0" - } + "node_modules/@ngageoint/mage.service/node_modules/through": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", + "integrity": "sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==", + "peer": true }, - "../../../service/node_modules/string-width": { - "version": "4.2.3", - "devOptional": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/tiny-inflate": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/tiny-inflate/-/tiny-inflate-1.0.3.tgz", + "integrity": "sha512-pkY1fj1cKHb2seWDy0B16HeWyczlJA9/WW3u3c4z/NiWDsO3DOU5D7nhTLE9CF0yXv/QZFY7sEJmj24dK+Rrqw==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/tmp": { + "version": "0.0.33", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", + "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", + "optional": true, "peer": true, "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" + "os-tmpdir": "~1.0.2" }, "engines": { - "node": ">=8" + "node": ">=0.6.0" } }, - "../../../service/node_modules/string-width/node_modules/ansi-regex": { - "version": "5.0.1", - "devOptional": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/to-fast-properties": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", + "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==", "peer": true, "engines": { - "node": ">=8" + "node": ">=4" } }, - "../../../service/node_modules/string-width/node_modules/strip-ansi": { - "version": "6.0.1", - "devOptional": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "extraneous": true, "dependencies": { - "ansi-regex": "^5.0.1" + "is-number": "^7.0.0" }, "engines": { - "node": ">=8" + "node": ">=8.0" } }, - "../../../service/node_modules/string.prototype.padend": { - "version": "3.1.4", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/toidentifier": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz", + "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==", "license": "MIT", "peer": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4" - }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=0.6" } }, - "../../../service/node_modules/string.prototype.trimend": { - "version": "1.0.6", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } + "node_modules/@ngageoint/mage.service/node_modules/token-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/token-stream/-/token-stream-1.0.0.tgz", + "integrity": "sha512-VSsyNPPW74RpHwR8Fc21uubwHY7wMDeJLys2IX5zJNih+OnAnaifKHo+1LHT7DAdloQ7apeaaWg8l7qnf/TnEg==", + "peer": true }, - "../../../service/node_modules/string.prototype.trimstart": { - "version": "1.0.6", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/token-types": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/token-types/-/token-types-4.2.1.tgz", + "integrity": "sha512-6udB24Q737UD/SDsKAHI9FCRP7Bqc9D/MQUV02ORQg5iskjtLJlZJNdN4kKtcdtwCeWIwIHDGaUsTsCCAa8sFQ==", "peer": true, "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4" + "@tokenizer/token": "^0.3.0", + "ieee754": "^1.2.1" + }, + "engines": { + "node": ">=10" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "type": "github", + "url": "https://github.com/sponsors/Borewit" } }, - "../../../service/node_modules/strip-ansi": { - "version": "5.2.0", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/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==", + "extraneous": true, "dependencies": { - "ansi-regex": "^4.1.0" + "psl": "^1.1.28", + "punycode": "^2.1.1" }, "engines": { - "node": ">=6" + "node": ">=0.8" } }, - "../../../service/node_modules/strip-bom": { + "node_modules/@ngageoint/mage.service/node_modules/tr46": { "version": "3.0.0", - "dev": true, - "license": "MIT", - "peer": true, - "engines": { - "node": ">=4" - } - }, - "../../../service/node_modules/strip-indent": { - "version": "2.0.0", - "dev": true, - "license": "MIT", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-3.0.0.tgz", + "integrity": "sha512-l7FvfAHlcmulp8kr+flpQZmVwtu7nfRV7NZujtN0OqES8EL4O4e0qqzL0DC5gAvx/ZC/9lk6rhcUwYvkBnBnYA==", "peer": true, + "dependencies": { + "punycode": "^2.1.1" + }, "engines": { - "node": ">=4" + "node": ">=12" } }, - "../../../service/node_modules/strip-json-comments": { - "version": "3.1.1", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/ts-api-utils": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-1.3.0.tgz", + "integrity": "sha512-UQMIo7pb8WRomKR1/+MFVLTroIvDVtMX3K6OUir8ynLyzB8Jeriont2bTAtmNPa1ekAgN7YPDyf6V+ygrdU+eQ==", + "extraneous": true, "engines": { - "node": ">=8" + "node": ">=16" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "peerDependencies": { + "typescript": ">=4.2.0" } }, - "../../../service/node_modules/strnum": { - "version": "1.0.5", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/tslib": { + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.3.tgz", + "integrity": "sha512-xNvxJEOUiWPGhUuUdQgAJPKOOJfGnIyKySOc09XkKsgdUV/3E2zvwZYdejjmRgPCgcym1juLH3226yA7sEFJKQ==", "optional": true, "peer": true }, - "../../../service/node_modules/strtok3": { - "version": "6.3.0", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/tunnel-agent": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", + "integrity": "sha512-McnNiV1l8RYeY8tBgEpuodCC1mLUdbSN+CYBL7kJsJNInOP8UjDDEwdk6Mw60vdLLrr5NHKZhMAOSrR2NZuQ+w==", + "optional": true, "peer": true, "dependencies": { - "@tokenizer/token": "^0.3.0", - "peek-readable": "^4.1.0" + "safe-buffer": "^5.0.1" }, "engines": { - "node": ">=10" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/Borewit" + "node": "*" } }, - "../../../service/node_modules/superagent": { - "version": "8.0.4", - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/tweetnacl": { + "version": "0.14.5", + "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", + "integrity": "sha512-KXXFFdAbFXY4geFIwoyNK+f5Z1b7swfXABfL7HXCmoIWMKU3dmS26672A4EeQtDzLKy7SXmfBu51JolvEKwtGA==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/type-check": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", + "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", + "extraneous": true, "dependencies": { - "component-emitter": "^1.3.0", - "cookiejar": "^2.1.3", - "debug": "^4.3.4", - "fast-safe-stringify": "^2.1.1", - "form-data": "^4.0.0", - "formidable": "^2.0.1", - "methods": "^1.1.2", - "mime": "2.6.0", - "qs": "^6.11.0", - "semver": "^7.3.8" + "prelude-ls": "^1.2.1" }, "engines": { - "node": ">=6.4.0 <13 || >=14" + "node": ">= 0.8.0" } }, - "../../../service/node_modules/superagent/node_modules/form-data": { - "version": "4.0.0", - "license": "MIT", - "peer": true, - "dependencies": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.8", - "mime-types": "^2.1.12" - }, + "node_modules/@ngageoint/mage.service/node_modules/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==", + "extraneous": true, "engines": { - "node": ">= 6" + "node": ">=4" } }, - "../../../service/node_modules/superagent/node_modules/lru-cache": { - "version": "6.0.0", - "license": "ISC", + "node_modules/@ngageoint/mage.service/node_modules/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==", + "extraneous": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/type-is": { + "version": "1.6.18", + "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz", + "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==", "peer": true, "dependencies": { - "yallist": "^4.0.0" + "media-typer": "0.3.0", + "mime-types": "~2.1.24" }, "engines": { - "node": ">=10" + "node": ">= 0.6" } }, - "../../../service/node_modules/superagent/node_modules/mime": { - "version": "2.6.0", - "license": "MIT", - "peer": true, - "bin": { - "mime": "cli.js" + "node_modules/@ngageoint/mage.service/node_modules/typed-array-buffer": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/typed-array-buffer/-/typed-array-buffer-1.0.2.tgz", + "integrity": "sha512-gEymJYKZtKXzzBzM4jqa9w6Q1Jjm7x2d+sh19AdsD4wqnMPDYyvwpsIc2Q/835kHuo3BEQ7CjelGhfTsoBb2MQ==", + "extraneous": true, + "dependencies": { + "call-bind": "^1.0.7", + "es-errors": "^1.3.0", + "is-typed-array": "^1.1.13" }, "engines": { - "node": ">=4.0.0" + "node": ">= 0.4" } }, - "../../../service/node_modules/superagent/node_modules/qs": { - "version": "6.11.0", - "license": "BSD-3-Clause", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/typed-array-byte-length": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/typed-array-byte-length/-/typed-array-byte-length-1.0.1.tgz", + "integrity": "sha512-3iMJ9q0ao7WE9tWcaYKIptkNBuOIcZCCT0d4MRvuuH88fEoEH62IuQe0OtraD3ebQEoTRk8XCBoknUNc1Y67pw==", + "extraneous": true, "dependencies": { - "side-channel": "^1.0.4" + "call-bind": "^1.0.7", + "for-each": "^0.3.3", + "gopd": "^1.0.1", + "has-proto": "^1.0.3", + "is-typed-array": "^1.1.13" }, "engines": { - "node": ">=0.6" + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" } }, - "../../../service/node_modules/superagent/node_modules/semver": { - "version": "7.3.8", - "license": "ISC", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/typed-array-byte-offset": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/typed-array-byte-offset/-/typed-array-byte-offset-1.0.2.tgz", + "integrity": "sha512-Ous0vodHa56FviZucS2E63zkgtgrACj7omjwd/8lTEMEPFFyjfixMZ1ZXenpgCFBBt4EC1J2XsyVS2gkG0eTFA==", + "extraneous": true, "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" + "available-typed-arrays": "^1.0.7", + "call-bind": "^1.0.7", + "for-each": "^0.3.3", + "gopd": "^1.0.1", + "has-proto": "^1.0.3", + "is-typed-array": "^1.1.13" }, "engines": { - "node": ">=10" - } - }, - "../../../service/node_modules/superagent/node_modules/yallist": { - "version": "4.0.0", - "license": "ISC", - "peer": true - }, - "../../../service/node_modules/supertest": { - "version": "6.0.1", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "methods": "1.1.2", - "superagent": "6.1.0" + "node": ">= 0.4" }, - "engines": { - "node": ">=6.0.0" - } - }, - "../../../service/node_modules/supertest/node_modules/formidable": { - "version": "1.2.6", - "dev": true, - "license": "MIT", - "peer": true, "funding": { - "url": "https://ko-fi.com/tunnckoCore/commissions" - } - }, - "../../../service/node_modules/supertest/node_modules/lru-cache": { - "version": "6.0.0", - "dev": true, - "license": "ISC", - "peer": true, - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "../../../service/node_modules/supertest/node_modules/mime": { - "version": "2.6.0", - "dev": true, - "license": "MIT", - "peer": true, - "bin": { - "mime": "cli.js" - }, - "engines": { - "node": ">=4.0.0" + "url": "https://github.com/sponsors/ljharb" } }, - "../../../service/node_modules/supertest/node_modules/qs": { - "version": "6.11.0", - "dev": true, - "license": "BSD-3-Clause", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/typed-array-length": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/typed-array-length/-/typed-array-length-1.0.6.tgz", + "integrity": "sha512-/OxDN6OtAk5KBpGb28T+HZc2M+ADtvRxXrKKbUwtsLgdoxgX13hyy7ek6bFRl5+aBs2yZzB0c4CnQfAtVypW/g==", + "extraneous": true, "dependencies": { - "side-channel": "^1.0.4" + "call-bind": "^1.0.7", + "for-each": "^0.3.3", + "gopd": "^1.0.1", + "has-proto": "^1.0.3", + "is-typed-array": "^1.1.13", + "possible-typed-array-names": "^1.0.0" }, "engines": { - "node": ">=0.6" + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" } }, - "../../../service/node_modules/supertest/node_modules/semver": { - "version": "7.3.8", - "dev": true, - "license": "ISC", - "peer": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, + "node_modules/@ngageoint/mage.service/node_modules/typedarray": { + "version": "0.0.6", + "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", + "integrity": "sha512-/aCDEGatGvZ2BIk+HmLf4ifCJFwvKFNb9/JeZPMulfgFracn9QFcAf5GO8B/mweUjSoblS5In0cWhqpfs/5PQA==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/typescript": { + "version": "4.9.5", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.9.5.tgz", + "integrity": "sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g==", + "extraneous": true, "bin": { - "semver": "bin/semver.js" + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" }, "engines": { - "node": ">=10" + "node": ">=4.2.0" } }, - "../../../service/node_modules/supertest/node_modules/superagent": { - "version": "6.1.0", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/uid-safe": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/uid-safe/-/uid-safe-2.1.5.tgz", + "integrity": "sha512-KPHm4VL5dDXKz01UuEd88Df+KzynaohSL9fBh096KWAxSKZQDI2uBrVqtvRM4rwrIrRRKsdLNML/lnaaVSRioA==", "peer": true, "dependencies": { - "component-emitter": "^1.3.0", - "cookiejar": "^2.1.2", - "debug": "^4.1.1", - "fast-safe-stringify": "^2.0.7", - "form-data": "^3.0.0", - "formidable": "^1.2.2", - "methods": "^1.1.2", - "mime": "^2.4.6", - "qs": "^6.9.4", - "readable-stream": "^3.6.0", - "semver": "^7.3.2" + "random-bytes": "~1.0.0" }, "engines": { - "node": ">= 7.0.0" + "node": ">= 0.8" } }, - "../../../service/node_modules/supertest/node_modules/yallist": { - "version": "4.0.0", - "dev": true, - "license": "ISC", + "node_modules/@ngageoint/mage.service/node_modules/uid2": { + "version": "0.0.4", + "resolved": "https://registry.npmjs.org/uid2/-/uid2-0.0.4.tgz", + "integrity": "sha512-IevTus0SbGwQzYh3+fRsAMTVVPOoIVufzacXcHPmdlle1jUpq7BRL+mw3dgeLanvGZdwwbWhRV6XrcFNdBmjWA==", "peer": true }, - "../../../service/node_modules/supports-color": { - "version": "7.2.0", - "license": "MIT", - "optional": true, - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/unbox-primitive": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.2.tgz", + "integrity": "sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==", + "extraneous": true, "dependencies": { - "has-flag": "^4.0.0" + "call-bind": "^1.0.2", + "has-bigints": "^1.0.2", + "has-symbols": "^1.0.3", + "which-boxed-primitive": "^1.0.2" }, - "engines": { - "node": ">=8" + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "../../../service/node_modules/supports-preserve-symlinks-flag": { - "version": "1.0.0", + "node_modules/@ngageoint/mage.service/node_modules/underscore": { + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.12.1.tgz", + "integrity": "sha512-hEQt0+ZLDVUMhebKxL4x1BTtDY7bavVofhZ9KZ4aI26X9SRaE+Y3m83XUL1UP2jn8ynjndwCCpEHdUG+9pP1Tw==", + "license": "MIT", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/undici-types": { + "version": "5.26.5", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-5.26.5.tgz", + "integrity": "sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==", "license": "MIT", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/uniqid": { + "version": "5.4.0", + "resolved": "https://registry.npmjs.org/uniqid/-/uniqid-5.4.0.tgz", + "integrity": "sha512-38JRbJ4Fj94VmnC7G/J/5n5SC7Ab46OM5iNtSstB/ko3l1b5g7ALt4qzHFgGciFkyiRNtDXtLNb+VsxtMSE77A==", + "license": "MIT", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/universalify": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", + "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", "peer": true, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">= 4.0.0" } }, - "../../../service/node_modules/svg-captcha": { - "version": "1.4.0", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/unpipe": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", + "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==", "peer": true, - "dependencies": { - "opentype.js": "^0.7.3" - }, "engines": { - "node": ">=4.x" + "node": ">= 0.8" } }, - "../../../service/node_modules/table": { - "version": "5.4.6", - "dev": true, - "license": "BSD-3-Clause", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/uri-js": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", + "extraneous": true, "dependencies": { - "ajv": "^6.10.2", - "lodash": "^4.17.14", - "slice-ansi": "^2.1.0", - "string-width": "^3.0.0" - }, - "engines": { - "node": ">=6.0.0" + "punycode": "^2.1.0" } }, - "../../../service/node_modules/table/node_modules/emoji-regex": { - "version": "7.0.3", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", "peer": true }, - "../../../service/node_modules/table/node_modules/is-fullwidth-code-point": { - "version": "2.0.0", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/utils-merge": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", + "integrity": "sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==", "peer": true, "engines": { - "node": ">=4" + "node": ">= 0.4.0" } }, - "../../../service/node_modules/table/node_modules/string-width": { - "version": "3.1.0", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/uuid": { + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-9.0.1.tgz", + "integrity": "sha512-b+1eJOlsR9K8HJpow9Ok3fiWOWSIcIzXodvv0rQjVoOVNpWMpxf1wZNpt4y9h10odCNrqnYp1OBzRktckBe3sA==", + "funding": [ + "https://github.com/sponsors/broofa", + "https://github.com/sponsors/ctavan" + ], + "optional": true, "peer": true, + "bin": { + "uuid": "dist/bin/uuid" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/validate-npm-package-license": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", + "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", + "extraneous": true, "dependencies": { - "emoji-regex": "^7.0.1", - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^5.1.0" - }, - "engines": { - "node": ">=6" + "spdx-correct": "^3.0.0", + "spdx-expression-parse": "^3.0.0" } }, - "../../../service/node_modules/tar": { - "version": "6.1.12", - "license": "ISC", + "node_modules/@ngageoint/mage.service/node_modules/vary": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", + "integrity": "sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==", "peer": true, - "dependencies": { - "chownr": "^2.0.0", - "fs-minipass": "^2.0.0", - "minipass": "^3.0.0", - "minizlib": "^2.1.1", - "mkdirp": "^1.0.3", - "yallist": "^4.0.0" - }, "engines": { - "node": ">=10" + "node": ">= 0.8" } }, - "../../../service/node_modules/tar-fs": { - "version": "2.1.1", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/vasync": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/vasync/-/vasync-2.2.1.tgz", + "integrity": "sha512-Hq72JaTpcTFdWiNA4Y22Amej2GH3BFmBaKPPlDZ4/oC8HNn2ISHLkFrJU4Ds8R3jcUi7oo5Y9jcMHKjES+N9wQ==", + "engines": [ + "node >=0.6.0" + ], "peer": true, "dependencies": { - "chownr": "^1.1.1", - "mkdirp-classic": "^0.5.2", - "pump": "^3.0.0", - "tar-stream": "^2.1.4" + "verror": "1.10.0" } }, - "../../../service/node_modules/tar-fs/node_modules/chownr": { - "version": "1.1.4", - "license": "ISC", - "peer": true + "node_modules/@ngageoint/mage.service/node_modules/vasync/node_modules/verror": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", + "integrity": "sha512-ZZKSmDAEFOijERBLkmYfJ+vmk3w+7hOLYDNkRCuRuMJGEmqYNCNLyBBFwWKVMhfwaEF3WOd0Zlw86U/WC/+nYw==", + "engines": [ + "node >=0.6.0" + ], + "peer": true, + "dependencies": { + "assert-plus": "^1.0.0", + "core-util-is": "1.0.2", + "extsprintf": "^1.2.0" + } }, - "../../../service/node_modules/tar-stream": { - "version": "2.2.0", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/verror": { + "version": "1.10.1", + "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.1.tgz", + "integrity": "sha512-veufcmxri4e3XSrT0xwfUR7kguIkaxBeosDg00yDWhk49wdwkSUrvvsm7nc75e1PUyvIeZj6nS8VQRYz2/S4Xg==", "peer": true, "dependencies": { - "bl": "^4.0.3", - "end-of-stream": "^1.4.1", - "fs-constants": "^1.0.0", - "inherits": "^2.0.3", - "readable-stream": "^3.1.1" + "assert-plus": "^1.0.0", + "core-util-is": "1.0.2", + "extsprintf": "^1.2.0" }, "engines": { - "node": ">=6" + "node": ">=0.6.0" } }, - "../../../service/node_modules/tar/node_modules/mkdirp": { - "version": "1.0.4", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/void-elements": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/void-elements/-/void-elements-3.1.0.tgz", + "integrity": "sha512-Dhxzh5HZuiHQhbvTW9AMetFfBHDMYpo23Uo9btPXgdYP+3T5S+p+jgNy7spra+veYhBP2dCSgxR/i2Y02h5/6w==", "peer": true, - "bin": { - "mkdirp": "bin/cmd.js" - }, "engines": { - "node": ">=10" + "node": ">=0.10.0" } }, - "../../../service/node_modules/tar/node_modules/yallist": { - "version": "4.0.0", - "license": "ISC", - "peer": true - }, - "../../../service/node_modules/test-exclude": { - "version": "5.2.3", - "dev": true, - "license": "ISC", + "node_modules/@ngageoint/mage.service/node_modules/walk": { + "version": "2.3.15", + "resolved": "https://registry.npmjs.org/walk/-/walk-2.3.15.tgz", + "integrity": "sha512-4eRTBZljBfIISK1Vnt69Gvr2w/wc3U6Vtrw7qiN5iqYJPH7LElcYh/iU4XWhdCy2dZqv1ToMyYlybDylfG/5Vg==", + "license": "(MIT OR Apache-2.0)", "peer": true, "dependencies": { - "glob": "^7.1.3", - "minimatch": "^3.0.4", - "read-pkg-up": "^4.0.0", - "require-main-filename": "^2.0.0" - }, - "engines": { - "node": ">=6" + "foreachasync": "^3.0.0" } }, - "../../../service/node_modules/test-exclude/node_modules/read-pkg-up": { - "version": "4.0.0", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/webidl-conversions": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-7.0.0.tgz", + "integrity": "sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==", "peer": true, - "dependencies": { - "find-up": "^3.0.0", - "read-pkg": "^3.0.0" - }, "engines": { - "node": ">=6" + "node": ">=12" } }, - "../../../service/node_modules/text-table": { - "version": "0.2.0", - "dev": true, - "license": "MIT", - "peer": true - }, - "../../../service/node_modules/through": { - "version": "2.3.8", - "license": "MIT", - "peer": true - }, - "../../../service/node_modules/tiny-inflate": { - "version": "1.0.3", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/webworkify": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/webworkify/-/webworkify-1.5.0.tgz", + "integrity": "sha512-AMcUeyXAhbACL8S2hqqdqOLqvJ8ylmIbNwUIqQujRSouf4+eUFaXbG6F1Rbu+srlJMmxQWsiU7mOJi0nMBfM1g==", "peer": true }, - "../../../service/node_modules/tmp": { - "version": "0.0.33", - "devOptional": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/whatwg-url": { + "version": "11.0.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-11.0.0.tgz", + "integrity": "sha512-RKT8HExMpoYx4igMiVMY83lN6UeITKJlBQ+vR/8ZJ8OCdSiN3RwCq+9gH0+Xzj0+5IrM6i4j/6LuvzbZIQgEcQ==", "peer": true, "dependencies": { - "os-tmpdir": "~1.0.2" + "tr46": "^3.0.0", + "webidl-conversions": "^7.0.0" }, "engines": { - "node": ">=0.6.0" - } - }, - "../../../service/node_modules/to-fast-properties": { - "version": "2.0.0", - "dev": true, - "license": "MIT", - "peer": true, - "engines": { - "node": ">=4" + "node": ">=12" } }, - "../../../service/node_modules/to-object-path": { - "version": "0.3.0", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "extraneous": true, "dependencies": { - "kind-of": "^3.0.2" + "isexe": "^2.0.0" }, - "engines": { - "node": ">=0.10.0" - } - }, - "../../../service/node_modules/to-object-path/node_modules/is-buffer": { - "version": "1.1.6", - "dev": true, - "license": "MIT", - "peer": true - }, - "../../../service/node_modules/to-object-path/node_modules/kind-of": { - "version": "3.2.2", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "is-buffer": "^1.1.5" + "bin": { + "node-which": "bin/node-which" }, "engines": { - "node": ">=0.10.0" + "node": ">= 8" } }, - "../../../service/node_modules/to-regex": { - "version": "3.0.2", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/which-boxed-primitive": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz", + "integrity": "sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==", + "extraneous": true, "dependencies": { - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "regex-not": "^1.0.2", - "safe-regex": "^1.1.0" + "is-bigint": "^1.0.1", + "is-boolean-object": "^1.1.0", + "is-number-object": "^1.0.4", + "is-string": "^1.0.5", + "is-symbol": "^1.0.3" }, - "engines": { - "node": ">=0.10.0" + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "../../../service/node_modules/to-regex-range": { - "version": "2.1.1", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/which-collection": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/which-collection/-/which-collection-1.0.2.tgz", + "integrity": "sha512-K4jVyjnBdgvc86Y6BkaLZEN933SwYOuBFkdmBu9ZfkcAbdVbpITnDmjvZ/aQjRXQrv5EPkTnD1s39GiiqbngCw==", + "extraneous": true, "dependencies": { - "is-number": "^3.0.0", - "repeat-string": "^1.6.1" + "is-map": "^2.0.3", + "is-set": "^2.0.3", + "is-weakmap": "^2.0.2", + "is-weakset": "^2.0.3" }, "engines": { - "node": ">=0.10.0" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "../../../service/node_modules/toidentifier": { - "version": "1.0.1", - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/which-module": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.1.tgz", + "integrity": "sha512-iBdZ57RDvnOR9AGBhML2vFZf7h8vmBjhoaZqODJBFWHVtKkDmKuHai3cx5PgVMrX5YDNp27AofYbAwctSS+vhQ==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/which-typed-array": { + "version": "1.1.15", + "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.15.tgz", + "integrity": "sha512-oV0jmFtUky6CXfkqehVvBP/LSWJ2sy4vWMioiENyJLePrBO/yKyV9OyJySfAKosh+RYkIl5zJCNZ8/4JncrpdA==", + "extraneous": true, + "dependencies": { + "available-typed-arrays": "^1.0.7", + "call-bind": "^1.0.7", + "for-each": "^0.3.3", + "gopd": "^1.0.1", + "has-tostringtag": "^1.0.2" + }, "engines": { - "node": ">=0.6" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "../../../service/node_modules/token-stream": { - "version": "0.0.1", - "license": "MIT", - "peer": true - }, - "../../../service/node_modules/token-types": { - "version": "2.1.1", + "node_modules/@ngageoint/mage.service/node_modules/winston": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/winston/-/winston-1.1.2.tgz", + "integrity": "sha512-rl9hA8se2gjdYI6nP1f+kjjSCFCZrObIJB/eXOcMdzWxxcYp7exyc5Bs248fwLT+wHA/+aK0VtBlPHL8qO0T0w==", "license": "MIT", "peer": true, "dependencies": { - "@tokenizer/token": "^0.1.1", - "ieee754": "^1.2.1" + "async": "~1.0.0", + "colors": "1.0.x", + "cycle": "1.0.x", + "eyes": "0.1.x", + "isstream": "0.1.x", + "pkginfo": "0.3.x", + "stack-trace": "0.0.x" }, "engines": { - "node": ">=0.1.98" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/Borewit" + "node": ">= 0.8.0" } }, - "../../../service/node_modules/token-types/node_modules/@tokenizer/token": { - "version": "0.1.1", + "node_modules/@ngageoint/mage.service/node_modules/winston/node_modules/async": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/async/-/async-1.0.0.tgz", + "integrity": "sha512-5mO7DX4CbJzp9zjaFXusQQ4tzKJARjNB1Ih1pVBi8wkbmXy/xzIDgEMXxWePLzt2OdFwaxfneIlT1nCiXubrPQ==", "license": "MIT", "peer": true }, - "../../../service/node_modules/tough-cookie": { - "version": "2.5.0", - "dev": true, - "license": "BSD-3-Clause", + "node_modules/@ngageoint/mage.service/node_modules/with": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/with/-/with-7.0.2.tgz", + "integrity": "sha512-RNGKj82nUPg3g5ygxkQl0R937xLyho1J24ItRCBTr/m1YnZkzJy1hUiHUJrc/VlsDQzsCnInEGSg3bci0Lmd4w==", "peer": true, "dependencies": { - "psl": "^1.1.28", - "punycode": "^2.1.1" + "@babel/parser": "^7.9.6", + "@babel/types": "^7.9.6", + "assert-never": "^1.2.1", + "babel-walk": "3.0.0-canary-5" }, "engines": { - "node": ">=0.8" + "node": ">= 10.0.0" } }, - "../../../service/node_modules/tr46": { - "version": "3.0.0", + "node_modules/@ngageoint/mage.service/node_modules/wkt-parser": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/wkt-parser/-/wkt-parser-1.3.3.tgz", + "integrity": "sha512-ZnV3yH8/k58ZPACOXeiHaMuXIiaTk1t0hSUVisbO0t4RjA5wPpUytcxeyiN2h+LZRrmuHIh/1UlrR9e7DHDvTw==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/wkx": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/wkx/-/wkx-0.5.0.tgz", + "integrity": "sha512-Xng/d4Ichh8uN4l0FToV/258EjMGU9MGcA0HV2d9B/ZpZB3lqQm7nkOdZdm5GhKtLLhAE7PiVQwN4eN+2YJJUg==", "license": "MIT", "peer": true, "dependencies": { - "punycode": "^2.1.1" - }, - "engines": { - "node": ">=12" + "@types/node": "*" } }, - "../../../service/node_modules/trim-newlines": { - "version": "2.0.0", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/wms-capabilities": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/wms-capabilities/-/wms-capabilities-0.6.0.tgz", + "integrity": "sha512-yTbtesuSyKkHhw1TUX4VklXEkbQByc+hyo7TWq1sGjBA6tQ+XN32w546TPDTzROuwFTE/Dcq5F5FN4aA9nesaQ==", + "license": "BSD-2-Clause", "peer": true, - "engines": { - "node": ">=4" + "bin": { + "wmscapabilities": "bin/wmscapabilities" } }, - "../../../service/node_modules/ts-mockito": { - "version": "2.6.1", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "lodash": "^4.17.5" + "node_modules/@ngageoint/mage.service/node_modules/word-wrap": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.5.tgz", + "integrity": "sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==", + "extraneous": true, + "engines": { + "node": ">=0.10.0" } }, - "../../../service/node_modules/tslib": { - "version": "2.4.1", - "devOptional": true, - "license": "0BSD", - "peer": true + "node_modules/@ngageoint/mage.service/node_modules/workerpool": { + "version": "6.5.1", + "resolved": "https://registry.npmjs.org/workerpool/-/workerpool-6.5.1.tgz", + "integrity": "sha512-Fs4dNYcsdpYSAfVxhnl1L5zTksjvOJxtC5hzMNl+1t9B8hTJTdKDyZ5ju7ztgPy+ft9tBFXoOlDNiOT9WUXZlA==", + "extraneous": true, + "license": "Apache-2.0" }, - "../../../service/node_modules/tsutils": { - "version": "3.21.0", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/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==", + "extraneous": true, "dependencies": { - "tslib": "^1.8.1" + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" }, "engines": { - "node": ">= 6" + "node": ">=10" }, - "peerDependencies": { - "typescript": ">=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta" + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" } }, - "../../../service/node_modules/tsutils/node_modules/tslib": { - "version": "1.14.1", - "dev": true, - "license": "0BSD", - "peer": true - }, - "../../../service/node_modules/tunnel-agent": { - "version": "0.6.0", - "license": "Apache-2.0", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/wrap-ansi-cjs": { + "name": "wrap-ansi", + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "extraneous": true, "dependencies": { - "safe-buffer": "^5.0.1" + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" }, "engines": { - "node": "*" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" } }, - "../../../service/node_modules/tweetnacl": { - "version": "0.14.5", - "dev": true, - "license": "Unlicense", + "node_modules/@ngageoint/mage.service/node_modules/wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", "peer": true }, - "../../../service/node_modules/type-check": { - "version": "0.3.2", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/write-file-atomic": { + "version": "2.4.3", + "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-2.4.3.tgz", + "integrity": "sha512-GaETH5wwsX+GcnzhPgKcKjJ6M2Cq3/iZp1WyY/X1CSqrW+jVNM9Y7D8EC2sM4ZG/V8wZlSniJnCKWPmBYAucRQ==", + "extraneous": true, + "dependencies": { + "graceful-fs": "^4.1.11", + "imurmurhash": "^0.1.4", + "signal-exit": "^3.0.2" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/xml-crypto": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/xml-crypto/-/xml-crypto-3.2.0.tgz", + "integrity": "sha512-qVurBUOQrmvlgmZqIVBqmb06TD2a/PpEUfFPgD7BuBfjmoH4zgkqaWSIJrnymlCvM2GGt9x+XtJFA+ttoAufqg==", "peer": true, "dependencies": { - "prelude-ls": "~1.1.2" + "@xmldom/xmldom": "^0.8.8", + "xpath": "0.0.32" }, "engines": { - "node": ">= 0.8.0" + "node": ">=4.0.0" } }, - "../../../service/node_modules/type-detect": { - "version": "4.0.8", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/xml-crypto/node_modules/@xmldom/xmldom": { + "version": "0.8.10", + "resolved": "https://registry.npmjs.org/@xmldom/xmldom/-/xmldom-0.8.10.tgz", + "integrity": "sha512-2WALfTl4xo2SkGCYRt6rDTFfk9R1czmBvUQy12gK2KuRKIpWEhcbbzy8EZXtz/jkRqHX8bFEc6FC1HjX4TUWYw==", "license": "MIT", "peer": true, "engines": { - "node": ">=4" + "node": ">=10.0.0" } }, - "../../../service/node_modules/type-fest": { - "version": "0.8.1", - "dev": true, - "license": "(MIT OR CC0-1.0)", + "node_modules/@ngageoint/mage.service/node_modules/xml-crypto/node_modules/xpath": { + "version": "0.0.32", + "resolved": "https://registry.npmjs.org/xpath/-/xpath-0.0.32.tgz", + "integrity": "sha512-rxMJhSIoiO8vXcWvSifKqhvV96GjiD5wYb8/QHdoRyQvraTpp4IEv944nhGausZZ3u7dhQXteZuZbaqfpB7uYw==", "peer": true, "engines": { - "node": ">=8" + "node": ">=0.6.0" } }, - "../../../service/node_modules/type-is": { - "version": "1.6.18", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/xml-encryption": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/xml-encryption/-/xml-encryption-3.0.2.tgz", + "integrity": "sha512-VxYXPvsWB01/aqVLd6ZMPWZ+qaj0aIdF+cStrVJMcFj3iymwZeI0ABzB3VqMYv48DkSpRhnrXqTUkR34j+UDyg==", "peer": true, "dependencies": { - "media-typer": "0.3.0", - "mime-types": "~2.1.24" + "@xmldom/xmldom": "^0.8.5", + "escape-html": "^1.0.3", + "xpath": "0.0.32" }, "engines": { - "node": ">= 0.6" + "node": ">=12" } }, - "../../../service/node_modules/typedarray": { - "version": "0.0.7", + "node_modules/@ngageoint/mage.service/node_modules/xml-encryption/node_modules/@xmldom/xmldom": { + "version": "0.8.10", + "resolved": "https://registry.npmjs.org/@xmldom/xmldom/-/xmldom-0.8.10.tgz", + "integrity": "sha512-2WALfTl4xo2SkGCYRt6rDTFfk9R1czmBvUQy12gK2KuRKIpWEhcbbzy8EZXtz/jkRqHX8bFEc6FC1HjX4TUWYw==", "license": "MIT", "peer": true, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "engines": { + "node": ">=10.0.0" } }, - "../../../service/node_modules/typescript": { - "version": "4.9.3", - "dev": true, - "license": "Apache-2.0", + "node_modules/@ngageoint/mage.service/node_modules/xml-encryption/node_modules/xpath": { + "version": "0.0.32", + "resolved": "https://registry.npmjs.org/xpath/-/xpath-0.0.32.tgz", + "integrity": "sha512-rxMJhSIoiO8vXcWvSifKqhvV96GjiD5wYb8/QHdoRyQvraTpp4IEv944nhGausZZ3u7dhQXteZuZbaqfpB7uYw==", "peer": true, - "bin": { - "tsc": "bin/tsc", - "tsserver": "bin/tsserver" - }, "engines": { - "node": ">=4.2.0" + "node": ">=0.6.0" } }, - "../../../service/node_modules/uglify-js": { - "version": "2.8.29", - "license": "BSD-2-Clause", + "node_modules/@ngageoint/mage.service/node_modules/xml2js": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/xml2js/-/xml2js-0.5.0.tgz", + "integrity": "sha512-drPFnkQJik/O+uPKpqSgr22mpuFHqKdbS835iAQrUC73L2F5WkboIRd63ai/2Yg6I1jzifPFKH2NTK+cfglkIA==", "peer": true, "dependencies": { - "source-map": "~0.5.1", - "yargs": "~3.10.0" - }, - "bin": { - "uglifyjs": "bin/uglifyjs" + "sax": ">=0.6.0", + "xmlbuilder": "~11.0.0" }, "engines": { - "node": ">=0.8.0" - }, - "optionalDependencies": { - "uglify-to-browserify": "~1.0.0" + "node": ">=4.0.0" } }, - "../../../service/node_modules/uglify-js/node_modules/camelcase": { - "version": "1.2.1", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/xml2js/node_modules/xmlbuilder": { + "version": "11.0.1", + "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-11.0.1.tgz", + "integrity": "sha512-fDlsI/kFEx7gLvbecc0/ohLG50fugQp8ryHzMTuW9vSa1GJ0XYWKnhsUx7oie3G98+r56aTQIUB4kht42R3JvA==", "peer": true, "engines": { - "node": ">=0.10.0" + "node": ">=4.0" } }, - "../../../service/node_modules/uglify-js/node_modules/cliui": { - "version": "2.1.0", - "license": "ISC", + "node_modules/@ngageoint/mage.service/node_modules/xmlbuilder": { + "version": "15.1.1", + "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-15.1.1.tgz", + "integrity": "sha512-yMqGBqtXyeN1e3TGYvgNgDVZ3j84W4cwkOXQswghol6APgZWaff9lnbvN7MHYJOiXsvGPXtjTYJEiC9J2wv9Eg==", "peer": true, - "dependencies": { - "center-align": "^0.1.1", - "right-align": "^0.1.1", - "wordwrap": "0.0.2" + "engines": { + "node": ">=8.0" } }, - "../../../service/node_modules/uglify-js/node_modules/source-map": { - "version": "0.5.7", - "license": "BSD-3-Clause", + "node_modules/@ngageoint/mage.service/node_modules/xmlbuilder2": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/xmlbuilder2/-/xmlbuilder2-3.1.1.tgz", + "integrity": "sha512-WCSfbfZnQDdLQLiMdGUQpMxxckeQ4oZNMNhLVkcekTu7xhD4tuUDyAPoY8CwXvBYE6LwBHd6QW2WZXlOWr1vCw==", + "license": "MIT", "peer": true, + "dependencies": { + "@oozcitak/dom": "1.15.10", + "@oozcitak/infra": "1.0.8", + "@oozcitak/util": "8.3.8", + "js-yaml": "3.14.1" + }, "engines": { - "node": ">=0.10.0" + "node": ">=12.0" } }, - "../../../service/node_modules/uglify-js/node_modules/yargs": { - "version": "3.10.0", + "node_modules/@ngageoint/mage.service/node_modules/xmlbuilder2/node_modules/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==", "license": "MIT", "peer": true, "dependencies": { - "camelcase": "^1.0.2", - "cliui": "^2.1.0", - "decamelize": "^1.0.0", - "window-size": "0.1.0" + "argparse": "^1.0.7", + "esprima": "^4.0.0" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" } }, - "../../../service/node_modules/uglify-to-browserify": { - "version": "1.0.2", + "node_modules/@ngageoint/mage.service/node_modules/xpath": { + "version": "0.0.34", + "resolved": "https://registry.npmjs.org/xpath/-/xpath-0.0.34.tgz", + "integrity": "sha512-FxF6+rkr1rNSQrhUNYrAFJpRXNzlDoMxeXN5qI84939ylEv3qqPFKa85Oxr6tDaJKqwW6KKyo2v26TSv3k6LeA==", "license": "MIT", - "optional": true, - "peer": true + "peer": true, + "engines": { + "node": ">=0.6.0" + } }, - "../../../service/node_modules/uid-safe": { - "version": "2.1.5", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/xtend": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", + "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==", "peer": true, - "dependencies": { - "random-bytes": "~1.0.0" - }, "engines": { - "node": ">= 0.8" + "node": ">=0.4" } }, - "../../../service/node_modules/uid2": { - "version": "0.0.4", - "license": "MIT", - "peer": true + "node_modules/@ngageoint/mage.service/node_modules/y18n": { + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", + "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", + "extraneous": true, + "engines": { + "node": ">=10" + } }, - "../../../service/node_modules/unbox-primitive": { - "version": "1.0.2", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/yallist": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", + "integrity": "sha512-ncTzHV7NvsQZkYe1DW7cbDLm0YpzHmZF5r/iyP3ZnQtMiJ+pjzisCiMNI+Sj+xQF5pXhSHxSB3uDbsBTzY/c2A==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/yaml": { + "version": "1.10.2", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz", + "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==", + "license": "ISC", "peer": true, + "engines": { + "node": ">= 6" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/yargs": { + "version": "16.2.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", + "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", + "extraneous": true, "dependencies": { - "call-bind": "^1.0.2", - "has-bigints": "^1.0.2", - "has-symbols": "^1.0.3", - "which-boxed-primitive": "^1.0.2" + "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" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "engines": { + "node": ">=10" } }, - "../../../service/node_modules/underscore": { - "version": "1.8.3", - "license": "MIT", - "peer": true + "node_modules/@ngageoint/mage.service/node_modules/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==", + "extraneous": true, + "license": "ISC", + "engines": { + "node": ">=10" + } }, - "../../../service/node_modules/union-value": { - "version": "1.0.1", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/yargs-unparser": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/yargs-unparser/-/yargs-unparser-2.0.0.tgz", + "integrity": "sha512-7pRTIA9Qc1caZ0bZ6RYRGbHJthJWuakf+WmHK0rVeLkNrrGhfoabBNdue6kdINI6r4if7ocq9aD/n7xwKOdzOA==", + "extraneous": true, "dependencies": { - "arr-union": "^3.1.0", - "get-value": "^2.0.6", - "is-extendable": "^0.1.1", - "set-value": "^2.0.1" + "camelcase": "^6.0.0", + "decamelize": "^4.0.0", + "flat": "^5.0.2", + "is-plain-obj": "^2.1.0" }, "engines": { - "node": ">=0.10.0" + "node": ">=10" } }, - "../../../service/node_modules/union-value/node_modules/is-extendable": { - "version": "0.1.1", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/yauzl": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/yauzl/-/yauzl-3.2.0.tgz", + "integrity": "sha512-Ow9nuGZE+qp1u4JIPvg+uCiUr7xGQWdff7JQSk5VGYTAZMDe2q8lxJ10ygv10qmSj031Ty/6FNJpLO4o1Sgc+w==", + "extraneous": true, "license": "MIT", - "peer": true, + "dependencies": { + "buffer-crc32": "~0.2.3", + "pend": "~1.2.0" + }, "engines": { - "node": ">=0.10.0" + "node": ">=12" } }, - "../../../service/node_modules/uniqid": { - "version": "5.4.0", - "license": "MIT", - "peer": true - }, - "../../../service/node_modules/universalify": { - "version": "0.1.2", - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/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==", + "extraneous": true, "engines": { - "node": ">= 4.0.0" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "../../../service/node_modules/unpipe": { - "version": "1.0.0", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/zip-stream": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/zip-stream/-/zip-stream-4.1.1.tgz", + "integrity": "sha512-9qv4rlDiopXg4E69k+vMHjNN63YFMe9sZMrdlvKnCjlCRWeCBswPPMPUfx+ipsAWq1LXHe70RcbaHdJJpS6hyQ==", "peer": true, + "dependencies": { + "archiver-utils": "^3.0.4", + "compress-commons": "^4.1.2", + "readable-stream": "^3.6.0" + }, "engines": { - "node": ">= 0.8" + "node": ">= 10" } }, - "../../../service/node_modules/unset-value": { - "version": "1.0.0", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/zip-stream/node_modules/archiver-utils": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/archiver-utils/-/archiver-utils-3.0.4.tgz", + "integrity": "sha512-KVgf4XQVrTjhyWmx6cte4RxonPLR9onExufI1jhvw/MQ4BB6IsZD5gT8Lq+u/+pRkWna/6JoHpiQioaqFP5Rzw==", "peer": true, "dependencies": { - "has-value": "^0.3.1", - "isobject": "^3.0.0" + "glob": "^7.2.3", + "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": "^3.6.0" }, "engines": { - "node": ">=0.10.0" + "node": ">= 10" } }, - "../../../service/node_modules/unset-value/node_modules/has-value": { - "version": "0.3.1", + "node_modules/@nodelib/fs.scandir": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", + "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", "dev": true, - "license": "MIT", - "peer": true, "dependencies": { - "get-value": "^2.0.3", - "has-values": "^0.1.4", - "isobject": "^2.0.0" + "@nodelib/fs.stat": "2.0.5", + "run-parallel": "^1.1.9" }, "engines": { - "node": ">=0.10.0" + "node": ">= 8" } }, - "../../../service/node_modules/unset-value/node_modules/has-value/node_modules/isobject": { - "version": "2.1.0", + "node_modules/@nodelib/fs.stat": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", + "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", + "dev": true, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.walk": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", + "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", "dev": true, - "license": "MIT", - "peer": true, "dependencies": { - "isarray": "1.0.0" + "@nodelib/fs.scandir": "2.1.5", + "fastq": "^1.6.0" }, "engines": { - "node": ">=0.10.0" + "node": ">= 8" } }, - "../../../service/node_modules/unset-value/node_modules/has-values": { - "version": "0.1.4", + "node_modules/@pkgr/core": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/@pkgr/core/-/core-0.1.2.tgz", + "integrity": "sha512-fdDH1LSGfZdTH2sxdpVMw31BanV28K/Gry0cVFxaNP77neJSkd82mM8ErPNYs9e+0O7SdHBLTDzDgwUuy18RnQ==", "dev": true, - "license": "MIT", - "peer": true, "engines": { - "node": ">=0.10.0" + "node": "^12.20.0 || ^14.18.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/unts" } }, - "../../../service/node_modules/unset-value/node_modules/isarray": { - "version": "1.0.0", - "dev": true, - "license": "MIT", - "peer": true + "node_modules/@sinclair/typebox": { + "version": "0.27.8", + "resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.27.8.tgz", + "integrity": "sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA==", + "dev": true }, - "../../../service/node_modules/uri-js": { - "version": "4.4.1", + "node_modules/@sinonjs/commons": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-3.0.1.tgz", + "integrity": "sha512-K3mCHKQ9sVh8o1C9cxkwxaOmXoAMlDxC1mYyHrjqOWEcBjYr76t96zL2zlj5dUGZ3HSw240X1qgH3Mjf1yJWpQ==", "dev": true, - "license": "BSD-2-Clause", - "peer": true, "dependencies": { - "punycode": "^2.1.0" + "type-detect": "4.0.8" } }, - "../../../service/node_modules/urix": { - "version": "0.1.0", - "dev": true, - "license": "MIT", - "peer": true - }, - "../../../service/node_modules/use": { - "version": "3.1.1", + "node_modules/@sinonjs/fake-timers": { + "version": "10.3.0", + "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-10.3.0.tgz", + "integrity": "sha512-V4BG07kuYSUkTCSBHG8G8TNhM+F19jXFWnQtzj+we8DrkpSBCee9Z3Ms8yiGer/dlmhe35/Xdgyo3/0rQKg7YA==", "dev": true, - "license": "MIT", - "peer": true, - "engines": { - "node": ">=0.10.0" + "dependencies": { + "@sinonjs/commons": "^3.0.0" } }, - "../../../service/node_modules/util": { - "version": "0.12.5", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@terraformer/arcgis": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/@terraformer/arcgis/-/arcgis-2.1.2.tgz", + "integrity": "sha512-IvdfqehcNAUtKU1OFMKwPT8EvdKlVFZ7q7ZKzkIF8XzYZIVsZLuXuOS1UBdRh5u/o+X5Gax7jiZhD8U/4TV+Jw==", "dependencies": { - "inherits": "^2.0.3", - "is-arguments": "^1.0.4", - "is-generator-function": "^1.0.7", - "is-typed-array": "^1.1.3", - "which-typed-array": "^1.1.2" + "@terraformer/common": "^2.1.2" } }, - "../../../service/node_modules/util-deprecate": { - "version": "1.0.2", - "license": "MIT", - "peer": true + "node_modules/@terraformer/common": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/@terraformer/common/-/common-2.1.2.tgz", + "integrity": "sha512-cwPdTFzIpekZhZRrgDEkqLKNPoqbyCBQHiemaovnGIeUx0Pl336MY/eCxzJ5zXkrQLVo9zPalq/vYW5HnyKevQ==" }, - "../../../service/node_modules/utils-merge": { - "version": "1.0.1", - "license": "MIT", - "peer": true, - "engines": { - "node": ">= 0.4.0" + "node_modules/@types/babel__core": { + "version": "7.20.5", + "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.20.5.tgz", + "integrity": "sha512-qoQprZvz5wQFJwMDqeseRXWv3rqMvhgpbXFfVyWhbx9X47POIA6i/+dXefEmZKoAgOaTdaIgNSMqMIU61yRyzA==", + "dev": true, + "dependencies": { + "@babel/parser": "^7.20.7", + "@babel/types": "^7.20.7", + "@types/babel__generator": "*", + "@types/babel__template": "*", + "@types/babel__traverse": "*" } }, - "../../../service/node_modules/uuid": { - "version": "8.3.2", - "devOptional": true, - "license": "MIT", - "peer": true, - "bin": { - "uuid": "dist/bin/uuid" + "node_modules/@types/babel__generator": { + "version": "7.27.0", + "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.27.0.tgz", + "integrity": "sha512-ufFd2Xi92OAVPYsy+P4n7/U7e68fex0+Ee8gSG9KX7eo084CWiQ4sdxktvdl0bOPupXtVJPY19zk6EwWqUQ8lg==", + "dev": true, + "dependencies": { + "@babel/types": "^7.0.0" } }, - "../../../service/node_modules/v8-compile-cache": { - "version": "2.3.0", + "node_modules/@types/babel__template": { + "version": "7.4.4", + "resolved": "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.4.4.tgz", + "integrity": "sha512-h/NUaSyG5EyxBIp8YRxo4RMe2/qQgvyowRwVMzhYhBCONbW8PUsg4lkFMrhgZhUe5z3L3MiLDuvyJ/CaPa2A8A==", "dev": true, - "license": "MIT", - "peer": true + "dependencies": { + "@babel/parser": "^7.1.0", + "@babel/types": "^7.0.0" + } }, - "../../../service/node_modules/validate-npm-package-license": { - "version": "3.0.4", + "node_modules/@types/babel__traverse": { + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.20.7.tgz", + "integrity": "sha512-dkO5fhS7+/oos4ciWxyEyjWe48zmG6wbCheo/G2ZnHx4fs3EU6YC6UM8rk56gAjNJ9P3MTH2jo5jb92/K6wbng==", "dev": true, - "license": "Apache-2.0", - "peer": true, "dependencies": { - "spdx-correct": "^3.0.0", - "spdx-expression-parse": "^3.0.0" + "@babel/types": "^7.20.7" } }, - "../../../service/node_modules/vary": { - "version": "1.1.2", - "license": "MIT", - "peer": true, - "engines": { - "node": ">= 0.8" + "node_modules/@types/body-parser": { + "version": "1.19.5", + "resolved": "https://registry.npmjs.org/@types/body-parser/-/body-parser-1.19.5.tgz", + "integrity": "sha512-fB3Zu92ucau0iQ0JMCFQE7b/dv8Ot07NI3KaZIkIUNXq82k4eBAqUaneXfleGY9JWskeS9y+u0nXMyspcuQrCg==", + "dev": true, + "dependencies": { + "@types/connect": "*", + "@types/node": "*" } }, - "../../../service/node_modules/vasync": { - "version": "1.6.4", - "engines": [ - "node >=0.6.0" - ], - "license": "MIT", - "peer": true, + "node_modules/@types/connect": { + "version": "3.4.38", + "resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.38.tgz", + "integrity": "sha512-K6uROf1LD88uDQqJCktA4yzL1YYAK6NgfsI0v/mTgyPKWsX1CnJ0XPSDhViejru1GcRkLWb8RlzFYJRqGUbaug==", + "dev": true, "dependencies": { - "verror": "1.6.0" + "@types/node": "*" } }, - "../../../service/node_modules/vasync/node_modules/extsprintf": { - "version": "1.2.0", - "engines": [ - "node >=0.6.0" - ], - "license": "MIT", - "peer": true + "node_modules/@types/estree": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.7.tgz", + "integrity": "sha512-w28IoSUCJpidD/TGviZwwMJckNESJZXFu7NBZ5YJ4mEUnNraUn9Pm8HSZm/jDF1pDWYKspWE7oVphigUPRakIQ==", + "dev": true }, - "../../../service/node_modules/vasync/node_modules/verror": { - "version": "1.6.0", - "engines": [ - "node >=0.6.0" - ], - "license": "MIT", - "peer": true, + "node_modules/@types/express": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/@types/express/-/express-4.17.21.tgz", + "integrity": "sha512-ejlPM315qwLpaQlQDTjPdsUFSc6ZsP4AN6AlWnogPjQ7CVi7PYF3YVz+CY3jE2pwYf7E/7HlDAN0rV2GxTG0HQ==", + "dev": true, "dependencies": { - "extsprintf": "1.2.0" + "@types/body-parser": "*", + "@types/express-serve-static-core": "^4.17.33", + "@types/qs": "*", + "@types/serve-static": "*" } }, - "../../../service/node_modules/verror": { - "version": "1.10.1", - "license": "MIT", - "peer": true, + "node_modules/@types/express-serve-static-core": { + "version": "4.19.6", + "resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.19.6.tgz", + "integrity": "sha512-N4LZ2xG7DatVqhCZzOGb1Yi5lMbXSZcmdLDe9EzSndPV2HpWYWzRbaerl2n27irrm94EPpprqa8KpskPT085+A==", + "dev": true, "dependencies": { - "assert-plus": "^1.0.0", - "core-util-is": "1.0.2", - "extsprintf": "^1.2.0" - }, - "engines": { - "node": ">=0.6.0" + "@types/node": "*", + "@types/qs": "*", + "@types/range-parser": "*", + "@types/send": "*" } }, - "../../../service/node_modules/void-elements": { - "version": "2.0.1", - "license": "MIT", - "peer": true, - "engines": { - "node": ">=0.10.0" - } + "node_modules/@types/geojson": { + "version": "7946.0.16", + "resolved": "https://registry.npmjs.org/@types/geojson/-/geojson-7946.0.16.tgz", + "integrity": "sha512-6C8nqWur3j98U6+lXDfTUWIfgvZU+EumvpHKcYjujKH7woYyLj2sUmff0tRhrqM7BohUw7Pz3ZB1jj2gW9Fvmg==", + "dev": true }, - "../../../service/node_modules/walk": { - "version": "2.3.4", - "peer": true, + "node_modules/@types/graceful-fs": { + "version": "4.1.9", + "resolved": "https://registry.npmjs.org/@types/graceful-fs/-/graceful-fs-4.1.9.tgz", + "integrity": "sha512-olP3sd1qOEe5dXTSaFvQG+02VdRXcdytWLAZsAq1PecU8uqQAhkrnbli7DagjtXKW/Bl7YJbUsa8MPcuc8LHEQ==", + "dev": true, "dependencies": { - "foreachasync": "3.x" + "@types/node": "*" } }, - "../../../service/node_modules/webidl-conversions": { - "version": "7.0.0", - "license": "BSD-2-Clause", - "peer": true, - "engines": { - "node": ">=12" - } + "node_modules/@types/http-errors": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/@types/http-errors/-/http-errors-2.0.4.tgz", + "integrity": "sha512-D0CFMMtydbJAegzOyHjtiKPLlvnm3iTZyZRSZoLq2mRhDdmLfIWOCYPfQJ4cu2erKghU++QvjcUjp/5h7hESpA==", + "dev": true }, - "../../../service/node_modules/webworkify": { - "version": "1.5.0", - "license": "MIT", - "peer": true + "node_modules/@types/istanbul-lib-coverage": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.6.tgz", + "integrity": "sha512-2QF/t/auWm0lsy8XtKVPG19v3sSOQlJe/YHZgfjb/KBBHOGSV+J2q/S671rcq9uTBrLAXmZpqJiaQbMT+zNU1w==", + "dev": true }, - "../../../service/node_modules/whatwg-url": { - "version": "11.0.0", - "license": "MIT", - "peer": true, + "node_modules/@types/istanbul-lib-report": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.3.tgz", + "integrity": "sha512-NQn7AHQnk/RSLOxrBbGyJM/aVQ+pjj5HCgasFxc0K/KhoATfQ/47AyUl15I2yBUpihjmas+a+VJBOqecrFH+uA==", + "dev": true, "dependencies": { - "tr46": "^3.0.0", - "webidl-conversions": "^7.0.0" - }, - "engines": { - "node": ">=12" + "@types/istanbul-lib-coverage": "*" } }, - "../../../service/node_modules/which": { - "version": "1.3.1", - "license": "ISC", - "peer": true, + "node_modules/@types/istanbul-reports": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-3.0.4.tgz", + "integrity": "sha512-pk2B1NWalF9toCRu6gjBzR69syFjP4Od8WRAX+0mmf9lAjCRicLOWc+ZrxZHx/0XRjotgkF9t6iaMJ+aXcOdZQ==", + "dev": true, "dependencies": { - "isexe": "^2.0.0" - }, - "bin": { - "which": "bin/which" + "@types/istanbul-lib-report": "*" } }, - "../../../service/node_modules/which-boxed-primitive": { - "version": "1.0.2", + "node_modules/@types/jest": { + "version": "29.5.14", + "resolved": "https://registry.npmjs.org/@types/jest/-/jest-29.5.14.tgz", + "integrity": "sha512-ZN+4sdnLUbo8EVvVc2ao0GFW6oVrQRPn4K2lglySj7APvSrgzxHiNNK99us4WDMi57xxA2yggblIAMNhXOotLQ==", "dev": true, - "license": "MIT", - "peer": true, "dependencies": { - "is-bigint": "^1.0.1", - "is-boolean-object": "^1.1.0", - "is-number-object": "^1.0.4", - "is-string": "^1.0.5", - "is-symbol": "^1.0.3" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "expect": "^29.0.0", + "pretty-format": "^29.0.0" } }, - "../../../service/node_modules/which-collection": { - "version": "1.0.1", + "node_modules/@types/json-schema": { + "version": "7.0.15", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.15.tgz", + "integrity": "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==", + "dev": true + }, + "node_modules/@types/mime": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/@types/mime/-/mime-1.3.5.tgz", + "integrity": "sha512-/pyBZWSLD2n0dcHE3hq8s8ZvcETHtEuF+3E7XVt0Ig2nvsVQXdghHVcEkIWjy9A0wKfTn97a/PSDYohKIlnP/w==", + "dev": true + }, + "node_modules/@types/node": { + "version": "22.14.1", + "resolved": "https://registry.npmjs.org/@types/node/-/node-22.14.1.tgz", + "integrity": "sha512-u0HuPQwe/dHrItgHHpmw3N2fYCR6x4ivMNbPHRkBVP4CvN+kiRrKHWk3i8tXiO/joPwXLMYvF9TTF0eqgHIuOw==", "dev": true, - "license": "MIT", - "peer": true, "dependencies": { - "is-map": "^2.0.1", - "is-set": "^2.0.1", - "is-weakmap": "^2.0.1", - "is-weakset": "^2.0.1" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "undici-types": "~6.21.0" } }, - "../../../service/node_modules/which-module": { - "version": "2.0.0", - "dev": true, - "license": "ISC", - "peer": true + "node_modules/@types/qs": { + "version": "6.9.18", + "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.18.tgz", + "integrity": "sha512-kK7dgTYDyGqS+e2Q4aK9X3D7q234CIZ1Bv0q/7Z5IwRDoADNU81xXJK/YVyLbLTZCoIwUoDoffFeF+p/eIklAA==", + "dev": true + }, + "node_modules/@types/range-parser": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/@types/range-parser/-/range-parser-1.2.7.tgz", + "integrity": "sha512-hKormJbkJqzQGhziax5PItDUTMAM9uE2XXQmM37dyd4hVM+5aVl7oVxMVUiVQn2oCQFN/LKCZdvSM0pFRqbSmQ==", + "dev": true }, - "../../../service/node_modules/which-typed-array": { - "version": "1.1.9", + "node_modules/@types/send": { + "version": "0.17.4", + "resolved": "https://registry.npmjs.org/@types/send/-/send-0.17.4.tgz", + "integrity": "sha512-x2EM6TJOybec7c52BX0ZspPodMsQUd5L6PRwOunVyVUhXiBSKf3AezDL8Dgvgt5o0UfKNfuA0eMLr2wLT4AiBA==", "dev": true, - "license": "MIT", - "peer": true, "dependencies": { - "available-typed-arrays": "^1.0.5", - "call-bind": "^1.0.2", - "for-each": "^0.3.3", - "gopd": "^1.0.1", - "has-tostringtag": "^1.0.0", - "is-typed-array": "^1.1.10" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "@types/mime": "^1", + "@types/node": "*" } }, - "../../../service/node_modules/wide-align": { - "version": "1.1.3", - "license": "ISC", - "peer": true, + "node_modules/@types/serve-static": { + "version": "1.15.7", + "resolved": "https://registry.npmjs.org/@types/serve-static/-/serve-static-1.15.7.tgz", + "integrity": "sha512-W8Ym+h8nhuRwaKPaDw34QUkwsGi6Rc4yYqvKFo5rm2FUEhCFbzVWrxXUxuKK8TASjWsysJY0nsmNCGhCOIsrOw==", + "dev": true, "dependencies": { - "string-width": "^1.0.2 || 2" + "@types/http-errors": "*", + "@types/node": "*", + "@types/send": "*" } }, - "../../../service/node_modules/wide-align/node_modules/ansi-regex": { - "version": "3.0.1", - "license": "MIT", - "peer": true, - "engines": { - "node": ">=4" - } + "node_modules/@types/stack-utils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-2.0.3.tgz", + "integrity": "sha512-9aEbYZ3TbYMznPdcdr3SmIrLXwC/AKZXQeCf9Pgao5CKb8CyHuEX5jzWPTkvregvhRJHcpRO6BFoGW9ycaOkYw==", + "dev": true }, - "../../../service/node_modules/wide-align/node_modules/is-fullwidth-code-point": { - "version": "2.0.0", - "license": "MIT", - "peer": true, - "engines": { - "node": ">=4" + "node_modules/@types/yargs": { + "version": "17.0.33", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.33.tgz", + "integrity": "sha512-WpxBCKWPLr4xSsHgz511rFJAM+wS28w2zEO1QDNY5zM/S8ok70NNfztH0xwhqKyaK0OHCbN98LDAZuy1ctxDkA==", + "dev": true, + "dependencies": { + "@types/yargs-parser": "*" } }, - "../../../service/node_modules/wide-align/node_modules/string-width": { - "version": "2.1.1", - "license": "MIT", - "peer": true, + "node_modules/@types/yargs-parser": { + "version": "21.0.3", + "resolved": "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-21.0.3.tgz", + "integrity": "sha512-I4q9QU9MQv4oEOz4tAHJtNz1cwuLxn2F3xcc2iV5WdqLPpUnj30aUuxt1mAxYTG+oe8CZMV/+6rU4S4gRDzqtQ==", + "dev": true + }, + "node_modules/@typescript-eslint/eslint-plugin": { + "version": "8.29.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.29.1.tgz", + "integrity": "sha512-ba0rr4Wfvg23vERs3eB+P3lfj2E+2g3lhWcCVukUuhtcdUx5lSIFZlGFEBHKr+3zizDa/TvZTptdNHVZWAkSBg==", + "dev": true, "dependencies": { - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^4.0.0" + "@eslint-community/regexpp": "^4.10.0", + "@typescript-eslint/scope-manager": "8.29.1", + "@typescript-eslint/type-utils": "8.29.1", + "@typescript-eslint/utils": "8.29.1", + "@typescript-eslint/visitor-keys": "8.29.1", + "graphemer": "^1.4.0", + "ignore": "^5.3.1", + "natural-compare": "^1.4.0", + "ts-api-utils": "^2.0.1" }, "engines": { - "node": ">=4" + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "@typescript-eslint/parser": "^8.0.0 || ^8.0.0-alpha.0", + "eslint": "^8.57.0 || ^9.0.0", + "typescript": ">=4.8.4 <5.9.0" } }, - "../../../service/node_modules/wide-align/node_modules/strip-ansi": { - "version": "4.0.0", - "license": "MIT", - "peer": true, + "node_modules/@typescript-eslint/parser": { + "version": "8.29.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.29.1.tgz", + "integrity": "sha512-zczrHVEqEaTwh12gWBIJWj8nx+ayDcCJs06yoNMY0kwjMWDM6+kppljY+BxWI06d2Ja+h4+WdufDcwMnnMEWmg==", + "dev": true, "dependencies": { - "ansi-regex": "^3.0.0" + "@typescript-eslint/scope-manager": "8.29.1", + "@typescript-eslint/types": "8.29.1", + "@typescript-eslint/typescript-estree": "8.29.1", + "@typescript-eslint/visitor-keys": "8.29.1", + "debug": "^4.3.4" }, "engines": { - "node": ">=4" + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^8.57.0 || ^9.0.0", + "typescript": ">=4.8.4 <5.9.0" } }, - "../../../service/node_modules/window-size": { - "version": "0.1.0", - "peer": true, + "node_modules/@typescript-eslint/scope-manager": { + "version": "8.29.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.29.1.tgz", + "integrity": "sha512-2nggXGX5F3YrsGN08pw4XpMLO1Rgtnn4AzTegC2MDesv6q3QaTU5yU7IbS1tf1IwCR0Hv/1EFygLn9ms6LIpDA==", + "dev": true, + "dependencies": { + "@typescript-eslint/types": "8.29.1", + "@typescript-eslint/visitor-keys": "8.29.1" + }, "engines": { - "node": ">= 0.8.0" + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" } }, - "../../../service/node_modules/winston": { - "version": "1.0.1", - "license": "MIT", - "peer": true, + "node_modules/@typescript-eslint/type-utils": { + "version": "8.29.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.29.1.tgz", + "integrity": "sha512-DkDUSDwZVCYN71xA4wzySqqcZsHKic53A4BLqmrWFFpOpNSoxX233lwGu/2135ymTCR04PoKiEEEvN1gFYg4Tw==", + "dev": true, "dependencies": { - "async": "0.9.x", - "colors": "1.0.x", - "cycle": "1.0.x", - "eyes": "0.1.x", - "isstream": "0.1.x", - "pkginfo": "0.3.x", - "stack-trace": "0.0.x" + "@typescript-eslint/typescript-estree": "8.29.1", + "@typescript-eslint/utils": "8.29.1", + "debug": "^4.3.4", + "ts-api-utils": "^2.0.1" }, "engines": { - "node": ">= 0.8.0" + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^8.57.0 || ^9.0.0", + "typescript": ">=4.8.4 <5.9.0" } }, - "../../../service/node_modules/winston/node_modules/async": { - "version": "0.9.2", - "license": "MIT", - "peer": true - }, - "../../../service/node_modules/with": { - "version": "5.1.1", - "license": "MIT", - "peer": true, - "dependencies": { - "acorn": "^3.1.0", - "acorn-globals": "^3.0.0" + "node_modules/@typescript-eslint/types": { + "version": "8.29.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.29.1.tgz", + "integrity": "sha512-VT7T1PuJF1hpYC3AGm2rCgJBjHL3nc+A/bhOp9sGMKfi5v0WufsX/sHCFBfNTx2F+zA6qBc/PD0/kLRLjdt8mQ==", + "dev": true, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" } }, - "../../../service/node_modules/with/node_modules/acorn": { - "version": "3.3.0", - "license": "MIT", - "peer": true, - "bin": { - "acorn": "bin/acorn" + "node_modules/@typescript-eslint/typescript-estree": { + "version": "8.29.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.29.1.tgz", + "integrity": "sha512-l1enRoSaUkQxOQnbi0KPUtqeZkSiFlqrx9/3ns2rEDhGKfTa+88RmXqedC1zmVTOWrLc2e6DEJrTA51C9iLH5g==", + "dev": true, + "dependencies": { + "@typescript-eslint/types": "8.29.1", + "@typescript-eslint/visitor-keys": "8.29.1", + "debug": "^4.3.4", + "fast-glob": "^3.3.2", + "is-glob": "^4.0.3", + "minimatch": "^9.0.4", + "semver": "^7.6.0", + "ts-api-utils": "^2.0.1" }, "engines": { - "node": ">=0.4.0" + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "typescript": ">=4.8.4 <5.9.0" } }, - "../../../service/node_modules/wkt-parser": { - "version": "1.3.2", - "license": "MIT", - "peer": true - }, - "../../../service/node_modules/wkx": { - "version": "0.4.8", - "license": "MIT", - "peer": true, + "node_modules/@typescript-eslint/typescript-estree/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dev": true, "dependencies": { - "@types/node": "*" + "balanced-match": "^1.0.0" } }, - "../../../service/node_modules/wms-capabilities": { - "version": "0.4.1", - "license": "BSD-2-Clause", - "peer": true, + "node_modules/@typescript-eslint/typescript-estree/node_modules/minimatch": { + "version": "9.0.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", + "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", + "dev": true, "dependencies": { - "minimist": "^1.2.0" + "brace-expansion": "^2.0.1" }, - "bin": { - "wmscapabilities": "bin/wmscapabilities" + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "../../../service/node_modules/word-wrap": { - "version": "1.2.3", + "node_modules/@typescript-eslint/utils": { + "version": "8.29.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.29.1.tgz", + "integrity": "sha512-QAkFEbytSaB8wnmB+DflhUPz6CLbFWE2SnSCrRMEa+KnXIzDYbpsn++1HGvnfAsUY44doDXmvRkO5shlM/3UfA==", "dev": true, - "license": "MIT", - "peer": true, + "dependencies": { + "@eslint-community/eslint-utils": "^4.4.0", + "@typescript-eslint/scope-manager": "8.29.1", + "@typescript-eslint/types": "8.29.1", + "@typescript-eslint/typescript-estree": "8.29.1" + }, "engines": { - "node": ">=0.10.0" + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^8.57.0 || ^9.0.0", + "typescript": ">=4.8.4 <5.9.0" } }, - "../../../service/node_modules/wordwrap": { - "version": "0.0.2", - "license": "MIT/X11", - "peer": true, + "node_modules/@typescript-eslint/visitor-keys": { + "version": "8.29.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.29.1.tgz", + "integrity": "sha512-RGLh5CRaUEf02viP5c1Vh1cMGffQscyHe7HPAzGpfmfflFg1wUz2rYxd+OZqwpeypYvZ8UxSxuIpF++fmOzEcg==", + "dev": true, + "dependencies": { + "@typescript-eslint/types": "8.29.1", + "eslint-visitor-keys": "^4.2.0" + }, "engines": { - "node": ">=0.4.0" + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" } }, - "../../../service/node_modules/wrap-ansi": { - "version": "5.1.0", - "dev": true, - "license": "MIT", + "node_modules/accepts": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz", + "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==", "peer": true, "dependencies": { - "ansi-styles": "^3.2.0", - "string-width": "^3.0.0", - "strip-ansi": "^5.0.0" + "mime-types": "~2.1.34", + "negotiator": "0.6.3" }, "engines": { - "node": ">=6" + "node": ">= 0.6" } }, - "../../../service/node_modules/wrap-ansi/node_modules/ansi-styles": { - "version": "3.2.1", + "node_modules/acorn": { + "version": "8.14.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.14.1.tgz", + "integrity": "sha512-OvQ/2pUDKmgfCg++xsTX1wGxfTaszcHVcTctW4UJB4hibJx2HXxxO5UmVgyjMa+ZDsiaf5wWLXYpRWMmBI0QHg==", "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "color-convert": "^1.9.0" + "bin": { + "acorn": "bin/acorn" }, "engines": { - "node": ">=4" + "node": ">=0.4.0" } }, - "../../../service/node_modules/wrap-ansi/node_modules/color-convert": { - "version": "1.9.3", + "node_modules/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, - "license": "MIT", - "peer": true, - "dependencies": { - "color-name": "1.1.3" + "peerDependencies": { + "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" } }, - "../../../service/node_modules/wrap-ansi/node_modules/color-name": { - "version": "1.1.3", + "node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", "dev": true, - "license": "MIT", - "peer": true + "dependencies": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } }, - "../../../service/node_modules/wrap-ansi/node_modules/emoji-regex": { - "version": "7.0.3", + "node_modules/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==", "dev": true, - "license": "MIT", - "peer": true + "dependencies": { + "type-fest": "^0.21.3" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } }, - "../../../service/node_modules/wrap-ansi/node_modules/is-fullwidth-code-point": { - "version": "2.0.0", + "node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", "dev": true, - "license": "MIT", - "peer": true, "engines": { - "node": ">=4" + "node": ">=8" } }, - "../../../service/node_modules/wrap-ansi/node_modules/string-width": { - "version": "3.1.0", + "node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", "dev": true, - "license": "MIT", - "peer": true, "dependencies": { - "emoji-regex": "^7.0.1", - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^5.1.0" + "color-convert": "^2.0.1" }, "engines": { - "node": ">=6" + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "../../../service/node_modules/wrappy": { - "version": "1.0.2", - "license": "ISC", - "peer": true - }, - "../../../service/node_modules/write": { - "version": "1.0.3", + "node_modules/anymatch": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", + "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", "dev": true, - "license": "MIT", - "peer": true, "dependencies": { - "mkdirp": "^0.5.1" + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" }, "engines": { - "node": ">=4" + "node": ">= 8" } }, - "../../../service/node_modules/write-file-atomic": { - "version": "2.4.3", + "node_modules/are-docs-informative": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/are-docs-informative/-/are-docs-informative-0.0.2.tgz", + "integrity": "sha512-ixiS0nLNNG5jNQzgZJNoUpBKdo9yTYZMGJ+QgT2jmjR7G7+QHRCc4v6LQ3NgE7EBJq+o0ams3waJwkrlBom8Ig==", "dev": true, - "license": "ISC", - "peer": true, - "dependencies": { - "graceful-fs": "^4.1.11", - "imurmurhash": "^0.1.4", - "signal-exit": "^3.0.2" + "engines": { + "node": ">=14" } }, - "../../../service/node_modules/wtfnode": { - "version": "0.8.4", - "dev": true, - "license": "ISC", - "peer": true, - "bin": { - "wtfnode": "proxy.js" - } + "node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "dev": true }, - "../../../service/node_modules/xmlbuilder2": { - "version": "3.0.2", - "license": "MIT", - "peer": true, + "node_modules/array-flatten": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", + "integrity": "sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==", + "peer": true + }, + "node_modules/async": { + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/async/-/async-3.2.6.tgz", + "integrity": "sha512-htCUDlxyyCLMgaM3xXg0C0LW2xqfuQ6p05pCEIsXuyQ+a1koYKTuBMzRNwmybfLgvJDMd0r1LTn4+E0Ti6C2AA==", + "dev": true + }, + "node_modules/asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==" + }, + "node_modules/babel-jest": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-29.7.0.tgz", + "integrity": "sha512-BrvGY3xZSwEcCzKvKsCi2GgHqDqsYkOP4/by5xCgIwGXQxIEh+8ew3gmrE1y7XRR6LHZIj6yLYnUi/mm2KXKBg==", + "dev": true, "dependencies": { - "@oozcitak/dom": "1.15.10", - "@oozcitak/infra": "1.0.8", - "@oozcitak/util": "8.3.8", - "@types/node": "*", - "js-yaml": "3.14.0" + "@jest/transform": "^29.7.0", + "@types/babel__core": "^7.1.14", + "babel-plugin-istanbul": "^6.1.1", + "babel-preset-jest": "^29.6.3", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "slash": "^3.0.0" }, "engines": { - "node": ">=12.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "@babel/core": "^7.8.0" } }, - "../../../service/node_modules/xmlbuilder2/node_modules/esprima": { - "version": "4.0.1", - "license": "BSD-2-Clause", - "peer": true, - "bin": { - "esparse": "bin/esparse.js", - "esvalidate": "bin/esvalidate.js" + "node_modules/babel-plugin-istanbul": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz", + "integrity": "sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.0.0", + "@istanbuljs/load-nyc-config": "^1.0.0", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-instrument": "^5.0.4", + "test-exclude": "^6.0.0" }, "engines": { - "node": ">=4" + "node": ">=8" } }, - "../../../service/node_modules/xmlbuilder2/node_modules/js-yaml": { - "version": "3.14.0", - "license": "MIT", - "peer": true, + "node_modules/babel-plugin-istanbul/node_modules/istanbul-lib-instrument": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.1.tgz", + "integrity": "sha512-pzqtp31nLv/XFOzXGuvhCb8qhjmTVo5vjVk19XE4CRlSWz0KoeJ3bw9XsA7nOp9YBf4qHjwBxkDzKcME/J29Yg==", + "dev": true, "dependencies": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" + "@babel/core": "^7.12.3", + "@babel/parser": "^7.14.7", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-coverage": "^3.2.0", + "semver": "^6.3.0" }, - "bin": { - "js-yaml": "bin/js-yaml.js" - } - }, - "../../../service/node_modules/xpath": { - "version": "0.0.23", - "license": "Creative Commons", - "peer": true, "engines": { - "node": ">=0.6.0" + "node": ">=8" } }, - "../../../service/node_modules/xtend": { - "version": "4.0.2", - "license": "MIT", - "peer": true, - "engines": { - "node": ">=0.4" + "node_modules/babel-plugin-istanbul/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" } }, - "../../../service/node_modules/y18n": { - "version": "4.0.3", + "node_modules/babel-plugin-jest-hoist": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-29.6.3.tgz", + "integrity": "sha512-ESAc/RJvGTFEzRwOTT4+lNDk/GNHMkKbNzsvT0qKRfDyyYTskxB5rnU2njIDYVxXCBHHEI1c0YwHob3WaYujOg==", "dev": true, - "license": "ISC", - "peer": true - }, - "../../../service/node_modules/yallist": { - "version": "3.1.1", - "license": "ISC", - "peer": true - }, - "../../../service/node_modules/yaml": { - "version": "1.10.2", - "license": "ISC", - "peer": true, + "dependencies": { + "@babel/template": "^7.3.3", + "@babel/types": "^7.3.3", + "@types/babel__core": "^7.1.14", + "@types/babel__traverse": "^7.0.6" + }, "engines": { - "node": ">= 6" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "../../../service/node_modules/yargs": { - "version": "13.3.2", + "node_modules/babel-preset-current-node-syntax": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-1.1.0.tgz", + "integrity": "sha512-ldYss8SbBlWva1bs28q78Ju5Zq1F+8BrqBZZ0VFhLBvhh6lCpC2o3gDJi/5DRLs9FgYZCnmPYIVFU4lRXCkyUw==", "dev": true, - "license": "MIT", - "peer": true, "dependencies": { - "cliui": "^5.0.0", - "find-up": "^3.0.0", - "get-caller-file": "^2.0.1", - "require-directory": "^2.1.1", - "require-main-filename": "^2.0.0", - "set-blocking": "^2.0.0", - "string-width": "^3.0.0", - "which-module": "^2.0.0", - "y18n": "^4.0.0", - "yargs-parser": "^13.1.2" + "@babel/plugin-syntax-async-generators": "^7.8.4", + "@babel/plugin-syntax-bigint": "^7.8.3", + "@babel/plugin-syntax-class-properties": "^7.12.13", + "@babel/plugin-syntax-class-static-block": "^7.14.5", + "@babel/plugin-syntax-import-attributes": "^7.24.7", + "@babel/plugin-syntax-import-meta": "^7.10.4", + "@babel/plugin-syntax-json-strings": "^7.8.3", + "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", + "@babel/plugin-syntax-numeric-separator": "^7.10.4", + "@babel/plugin-syntax-object-rest-spread": "^7.8.3", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.3", + "@babel/plugin-syntax-optional-chaining": "^7.8.3", + "@babel/plugin-syntax-private-property-in-object": "^7.14.5", + "@babel/plugin-syntax-top-level-await": "^7.14.5" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" } }, - "../../../service/node_modules/yargs-parser": { - "version": "10.1.0", + "node_modules/babel-preset-jest": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-29.6.3.tgz", + "integrity": "sha512-0B3bhxR6snWXJZtR/RliHTDPRgn1sNHOR0yVtq/IiQFyuOVjFS+wuio/R4gSNkyYmKmJB4wGZv2NZanmKmTnNA==", "dev": true, - "license": "ISC", - "peer": true, "dependencies": { - "camelcase": "^4.1.0" + "babel-plugin-jest-hoist": "^29.6.3", + "babel-preset-current-node-syntax": "^1.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" } }, - "../../../service/node_modules/yargs-unparser": { - "version": "1.6.0", - "dev": true, - "license": "MIT", + "node_modules/balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", + "dev": true + }, + "node_modules/body-parser": { + "version": "1.20.3", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.3.tgz", + "integrity": "sha512-7rAxByjUMqQ3/bHJy7D6OGXvx/MMc4IqBn/X0fcM1QUcAItpZrBEYhWGem+tzXH90c+G01ypMcYJBO9Y30203g==", "peer": true, "dependencies": { - "flat": "^4.1.0", - "lodash": "^4.17.15", - "yargs": "^13.3.0" + "bytes": "3.1.2", + "content-type": "~1.0.5", + "debug": "2.6.9", + "depd": "2.0.0", + "destroy": "1.2.0", + "http-errors": "2.0.0", + "iconv-lite": "0.4.24", + "on-finished": "2.4.1", + "qs": "6.13.0", + "raw-body": "2.5.2", + "type-is": "~1.6.18", + "unpipe": "1.0.0" }, "engines": { - "node": ">=6" + "node": ">= 0.8", + "npm": "1.2.8000 || >= 1.4.16" } }, - "../../../service/node_modules/yargs/node_modules/camelcase": { - "version": "5.3.1", - "dev": true, - "license": "MIT", + "node_modules/body-parser/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", "peer": true, - "engines": { - "node": ">=6" + "dependencies": { + "ms": "2.0.0" } }, - "../../../service/node_modules/yargs/node_modules/emoji-regex": { - "version": "7.0.3", - "dev": true, - "license": "MIT", + "node_modules/body-parser/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", "peer": true }, - "../../../service/node_modules/yargs/node_modules/is-fullwidth-code-point": { - "version": "2.0.0", + "node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", "dev": true, - "license": "MIT", - "peer": true, - "engines": { - "node": ">=4" + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" } }, - "../../../service/node_modules/yargs/node_modules/string-width": { - "version": "3.1.0", + "node_modules/braces": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", + "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", "dev": true, - "license": "MIT", - "peer": true, "dependencies": { - "emoji-regex": "^7.0.1", - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^5.1.0" + "fill-range": "^7.1.1" }, "engines": { - "node": ">=6" + "node": ">=8" } }, - "../../../service/node_modules/yargs/node_modules/yargs-parser": { - "version": "13.1.2", + "node_modules/browserslist": { + "version": "4.24.4", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.24.4.tgz", + "integrity": "sha512-KDi1Ny1gSePi1vm0q4oxSF8b4DR44GF4BbmS2YdhPLOEqd8pDviZOGH/GsmRwoWJ2+5Lr085X7naowMwKHDG1A==", "dev": true, - "license": "ISC", - "peer": true, - "dependencies": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" - } - }, - "../../../service/node_modules/yauzl": { - "version": "2.10.0", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "buffer-crc32": "~0.2.3", - "fd-slicer": "~1.1.0" - } - }, - "../../../service/node_modules/zip-stream": { - "version": "4.1.0", - "license": "MIT", - "peer": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], "dependencies": { - "archiver-utils": "^2.1.0", - "compress-commons": "^4.1.0", - "readable-stream": "^3.6.0" + "caniuse-lite": "^1.0.30001688", + "electron-to-chromium": "^1.5.73", + "node-releases": "^2.0.19", + "update-browserslist-db": "^1.1.1" + }, + "bin": { + "browserslist": "cli.js" }, "engines": { - "node": ">= 10" + "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" } }, - "node_modules/@ampproject/remapping": { - "version": "2.2.0", + "node_modules/bs-logger": { + "version": "0.2.6", + "resolved": "https://registry.npmjs.org/bs-logger/-/bs-logger-0.2.6.tgz", + "integrity": "sha512-pd8DCoxmbgc7hyPKOvxtqNcjYoOsABPQdcCUjGp3d42VR2CX1ORhk2A87oqqu5R1kk+76nsxZupkmyd+MVtCog==", "dev": true, - "license": "Apache-2.0", "dependencies": { - "@jridgewell/gen-mapping": "^0.1.0", - "@jridgewell/trace-mapping": "^0.3.9" + "fast-json-stable-stringify": "2.x" }, "engines": { - "node": ">=6.0.0" + "node": ">= 6" } }, - "node_modules/@babel/code-frame": { - "version": "7.18.6", + "node_modules/bser": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/bser/-/bser-2.1.1.tgz", + "integrity": "sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ==", "dev": true, - "license": "MIT", "dependencies": { - "@babel/highlight": "^7.18.6" - }, - "engines": { - "node": ">=6.9.0" + "node-int64": "^0.4.0" } }, - "node_modules/@babel/compat-data": { - "version": "7.20.14", - "dev": true, - "license": "MIT", + "node_modules/buffer-from": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", + "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", + "dev": true + }, + "node_modules/bytes": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", + "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", + "peer": true, "engines": { - "node": ">=6.9.0" + "node": ">= 0.8" } }, - "node_modules/@babel/core": { - "version": "7.20.12", - "dev": true, - "license": "MIT", + "node_modules/call-bind-apply-helpers": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.2.tgz", + "integrity": "sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==", "dependencies": { - "@ampproject/remapping": "^2.1.0", - "@babel/code-frame": "^7.18.6", - "@babel/generator": "^7.20.7", - "@babel/helper-compilation-targets": "^7.20.7", - "@babel/helper-module-transforms": "^7.20.11", - "@babel/helpers": "^7.20.7", - "@babel/parser": "^7.20.7", - "@babel/template": "^7.20.7", - "@babel/traverse": "^7.20.12", - "@babel/types": "^7.20.7", - "convert-source-map": "^1.7.0", - "debug": "^4.1.0", - "gensync": "^1.0.0-beta.2", - "json5": "^2.2.2", - "semver": "^6.3.0" + "es-errors": "^1.3.0", + "function-bind": "^1.1.2" }, "engines": { - "node": ">=6.9.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/babel" + "node": ">= 0.4" } }, - "node_modules/@babel/core/node_modules/debug": { - "version": "4.3.4", - "dev": true, - "license": "MIT", + "node_modules/call-bound": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/call-bound/-/call-bound-1.0.4.tgz", + "integrity": "sha512-+ys997U96po4Kx/ABpBCqhA9EuxJaQWDQg7295H4hBphv3IZg0boBKuwYpt4YXp6MZ5AmZQnU/tyMTlRpaSejg==", + "peer": true, "dependencies": { - "ms": "2.1.2" + "call-bind-apply-helpers": "^1.0.2", + "get-intrinsic": "^1.3.0" }, "engines": { - "node": ">=6.0" + "node": ">= 0.4" }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/@babel/core/node_modules/ms": { - "version": "2.1.2", - "dev": true, - "license": "MIT" - }, - "node_modules/@babel/generator": { - "version": "7.20.14", + "node_modules/callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", "dev": true, - "license": "MIT", - "dependencies": { - "@babel/types": "^7.20.7", - "@jridgewell/gen-mapping": "^0.3.2", - "jsesc": "^2.5.1" - }, "engines": { - "node": ">=6.9.0" + "node": ">=6" } }, - "node_modules/@babel/generator/node_modules/@jridgewell/gen-mapping": { - "version": "0.3.2", + "node_modules/camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", "dev": true, - "license": "MIT", - "dependencies": { - "@jridgewell/set-array": "^1.0.1", - "@jridgewell/sourcemap-codec": "^1.4.10", - "@jridgewell/trace-mapping": "^0.3.9" - }, "engines": { - "node": ">=6.0.0" + "node": ">=6" } }, - "node_modules/@babel/helper-compilation-targets": { - "version": "7.20.7", + "node_modules/caniuse-lite": { + "version": "1.0.30001715", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001715.tgz", + "integrity": "sha512-7ptkFGMm2OAOgvZpwgA4yjQ5SQbrNVGdRjzH0pBdy1Fasvcr+KAeECmbCAECzTuDuoX0FCY8KzUxjf9+9kfZEw==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/caniuse-lite" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ] + }, + "node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", "dev": true, - "license": "MIT", "dependencies": { - "@babel/compat-data": "^7.20.5", - "@babel/helper-validator-option": "^7.18.6", - "browserslist": "^4.21.3", - "lru-cache": "^5.1.1", - "semver": "^6.3.0" + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" }, "engines": { - "node": ">=6.9.0" + "node": ">=10" }, - "peerDependencies": { - "@babel/core": "^7.0.0" + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/@babel/helper-environment-visitor": { - "version": "7.18.9", + "node_modules/char-regex": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/char-regex/-/char-regex-1.0.2.tgz", + "integrity": "sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw==", "dev": true, - "license": "MIT", "engines": { - "node": ">=6.9.0" + "node": ">=10" } }, - "node_modules/@babel/helper-function-name": { - "version": "7.19.0", + "node_modules/ci-info": { + "version": "3.9.0", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.9.0.tgz", + "integrity": "sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ==", "dev": true, - "license": "MIT", - "dependencies": { - "@babel/template": "^7.18.10", - "@babel/types": "^7.19.0" - }, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/sibiraj-s" + } + ], "engines": { - "node": ">=6.9.0" + "node": ">=8" } }, - "node_modules/@babel/helper-hoist-variables": { - "version": "7.18.6", + "node_modules/cjs-module-lexer": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/cjs-module-lexer/-/cjs-module-lexer-1.4.3.tgz", + "integrity": "sha512-9z8TZaGM1pfswYeXrUpzPrkx8UnWYdhJclsiYMm6x/w5+nN+8Tf/LnAgfLGQCm59qAOxU8WwHEq2vNwF6i4j+Q==", + "dev": true + }, + "node_modules/cliui": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", + "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", "dev": true, - "license": "MIT", "dependencies": { - "@babel/types": "^7.18.6" + "string-width": "^4.2.0", + "strip-ansi": "^6.0.1", + "wrap-ansi": "^7.0.0" }, "engines": { - "node": ">=6.9.0" + "node": ">=12" } }, - "node_modules/@babel/helper-module-imports": { - "version": "7.18.6", + "node_modules/co": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", + "integrity": "sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ==", "dev": true, - "license": "MIT", - "dependencies": { - "@babel/types": "^7.18.6" - }, "engines": { - "node": ">=6.9.0" + "iojs": ">= 1.0.0", + "node": ">= 0.12.0" } }, - "node_modules/@babel/helper-module-transforms": { - "version": "7.20.11", + "node_modules/collect-v8-coverage": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/collect-v8-coverage/-/collect-v8-coverage-1.0.2.tgz", + "integrity": "sha512-lHl4d5/ONEbLlJvaJNtsF/Lz+WvB07u2ycqTYbdrq7UypDXailES4valYb2eWiJFxZlVmpGekfqoxQhzyFdT4Q==", + "dev": true + }, + "node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", "dev": true, - "license": "MIT", "dependencies": { - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-module-imports": "^7.18.6", - "@babel/helper-simple-access": "^7.20.2", - "@babel/helper-split-export-declaration": "^7.18.6", - "@babel/helper-validator-identifier": "^7.19.1", - "@babel/template": "^7.20.7", - "@babel/traverse": "^7.20.10", - "@babel/types": "^7.20.7" + "color-name": "~1.1.4" }, "engines": { - "node": ">=6.9.0" + "node": ">=7.0.0" } }, - "node_modules/@babel/helper-plugin-utils": { - "version": "7.20.2", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6.9.0" - } + "node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true }, - "node_modules/@babel/helper-simple-access": { - "version": "7.20.2", - "dev": true, - "license": "MIT", + "node_modules/combined-stream": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", + "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", "dependencies": { - "@babel/types": "^7.20.2" + "delayed-stream": "~1.0.0" }, "engines": { - "node": ">=6.9.0" + "node": ">= 0.8" } }, - "node_modules/@babel/helper-split-export-declaration": { - "version": "7.18.6", + "node_modules/comment-parser": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/comment-parser/-/comment-parser-1.4.1.tgz", + "integrity": "sha512-buhp5kePrmda3vhc5B9t7pUQXAb2Tnd0qgpkIhPhkHXxJpiPJ11H0ZEU0oBpJ2QztSbzG/ZxMj/CHsYJqRHmyg==", "dev": true, - "license": "MIT", - "dependencies": { - "@babel/types": "^7.18.6" - }, "engines": { - "node": ">=6.9.0" + "node": ">= 12.0.0" } }, - "node_modules/@babel/helper-string-parser": { - "version": "7.19.4", - "dev": true, - "license": "MIT", + "node_modules/concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", + "dev": true + }, + "node_modules/content-disposition": { + "version": "0.5.4", + "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz", + "integrity": "sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==", + "peer": true, + "dependencies": { + "safe-buffer": "5.2.1" + }, "engines": { - "node": ">=6.9.0" + "node": ">= 0.6" } }, - "node_modules/@babel/helper-validator-identifier": { - "version": "7.19.1", - "dev": true, - "license": "MIT", + "node_modules/content-type": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.5.tgz", + "integrity": "sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==", + "peer": true, "engines": { - "node": ">=6.9.0" + "node": ">= 0.6" } }, - "node_modules/@babel/helper-validator-option": { - "version": "7.18.6", - "dev": true, - "license": "MIT", + "node_modules/convert-source-map": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", + "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==", + "dev": true + }, + "node_modules/cookie": { + "version": "0.7.1", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.7.1.tgz", + "integrity": "sha512-6DnInpx7SJ2AK3+CTUE/ZM0vWTUboZCegxhC2xiIydHR9jNuTAASBrfEpHhiGOZw/nX51bHt6YQl8jsGo4y/0w==", + "peer": true, "engines": { - "node": ">=6.9.0" + "node": ">= 0.6" } }, - "node_modules/@babel/helpers": { - "version": "7.20.13", + "node_modules/cookie-signature": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", + "integrity": "sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==", + "peer": true + }, + "node_modules/create-jest": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/create-jest/-/create-jest-29.7.0.tgz", + "integrity": "sha512-Adz2bdH0Vq3F53KEMJOoftQFutWCukm6J24wbPWRO4k1kMY7gS7ds/uoJkNuV8wDCtWWnuwGcJwpWcih+zEW1Q==", "dev": true, - "license": "MIT", "dependencies": { - "@babel/template": "^7.20.7", - "@babel/traverse": "^7.20.13", - "@babel/types": "^7.20.7" + "@jest/types": "^29.6.3", + "chalk": "^4.0.0", + "exit": "^0.1.2", + "graceful-fs": "^4.2.9", + "jest-config": "^29.7.0", + "jest-util": "^29.7.0", + "prompts": "^2.0.1" + }, + "bin": { + "create-jest": "bin/create-jest.js" }, "engines": { - "node": ">=6.9.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/@babel/highlight": { - "version": "7.18.6", + "node_modules/cross-spawn": { + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", + "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==", "dev": true, - "license": "MIT", "dependencies": { - "@babel/helper-validator-identifier": "^7.18.6", - "chalk": "^2.0.0", - "js-tokens": "^4.0.0" - }, + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + }, "engines": { - "node": ">=6.9.0" + "node": ">= 8" } }, - "node_modules/@babel/highlight/node_modules/ansi-styles": { - "version": "3.2.1", - "dev": true, - "license": "MIT", - "dependencies": { - "color-convert": "^1.9.0" - }, + "node_modules/data-uri-to-buffer": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/data-uri-to-buffer/-/data-uri-to-buffer-4.0.1.tgz", + "integrity": "sha512-0R9ikRb668HB7QDxT1vkpuUBtqc53YyAwMwGeUFKRojY/NWKvdZ+9UYtRfGmhqNbRkTSVpMbmyhXipFFv2cb/A==", "engines": { - "node": ">=4" + "node": ">= 12" } }, - "node_modules/@babel/highlight/node_modules/chalk": { - "version": "2.4.2", + "node_modules/debug": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.0.tgz", + "integrity": "sha512-6WTZ/IxCY/T6BALoZHaE4ctp9xm+Z5kY/pzYaCHRFeyVhojxlrm+46y68HA6hr0TcwEssoxNiDEUJQjfPZ/RYA==", "dev": true, - "license": "MIT", "dependencies": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" + "ms": "^2.1.3" }, "engines": { - "node": ">=4" + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } } }, - "node_modules/@babel/highlight/node_modules/color-convert": { - "version": "1.9.3", + "node_modules/dedent": { + "version": "1.5.3", + "resolved": "https://registry.npmjs.org/dedent/-/dedent-1.5.3.tgz", + "integrity": "sha512-NHQtfOOW68WD8lgypbLA5oT+Bt0xXJhiYvoR6SmmNXZfpzOGXwdKWmcwG8N7PwVVWV3eF/68nmD9BaJSsTBhyQ==", "dev": true, - "license": "MIT", - "dependencies": { - "color-name": "1.1.3" + "peerDependencies": { + "babel-plugin-macros": "^3.1.0" + }, + "peerDependenciesMeta": { + "babel-plugin-macros": { + "optional": true + } } }, - "node_modules/@babel/highlight/node_modules/color-name": { - "version": "1.1.3", - "dev": true, - "license": "MIT" + "node_modules/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 }, - "node_modules/@babel/highlight/node_modules/escape-string-regexp": { - "version": "1.0.5", + "node_modules/deepmerge": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.1.tgz", + "integrity": "sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==", "dev": true, - "license": "MIT", "engines": { - "node": ">=0.8.0" + "node": ">=0.10.0" } }, - "node_modules/@babel/highlight/node_modules/has-flag": { - "version": "3.0.0", + "node_modules/delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==", + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/depd": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", + "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==", + "peer": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/destroy": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz", + "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==", + "peer": true, + "engines": { + "node": ">= 0.8", + "npm": "1.2.8000 || >= 1.4.16" + } + }, + "node_modules/detect-newline": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/detect-newline/-/detect-newline-3.1.0.tgz", + "integrity": "sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA==", "dev": true, - "license": "MIT", "engines": { - "node": ">=4" + "node": ">=8" } }, - "node_modules/@babel/highlight/node_modules/supports-color": { - "version": "5.5.0", + "node_modules/diff-sequences": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-29.6.3.tgz", + "integrity": "sha512-EjePK1srD3P08o2j4f0ExnylqRs5B9tJjcp9t1krH2qRi8CCdsYfwe9JgSLurFBWwq4uOlipzfk5fHNvwFKr8Q==", "dev": true, - "license": "MIT", + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/dunder-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.1.tgz", + "integrity": "sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==", "dependencies": { - "has-flag": "^3.0.0" + "call-bind-apply-helpers": "^1.0.1", + "es-errors": "^1.3.0", + "gopd": "^1.2.0" }, "engines": { - "node": ">=4" + "node": ">= 0.4" } }, - "node_modules/@babel/parser": { - "version": "7.20.13", + "node_modules/ee-first": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", + "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==", + "peer": true + }, + "node_modules/ejs": { + "version": "3.1.10", + "resolved": "https://registry.npmjs.org/ejs/-/ejs-3.1.10.tgz", + "integrity": "sha512-UeJmFfOrAQS8OJWPZ4qtgHyWExa088/MtK5UEyoJGFH67cDEXkZSviOiKRCZ4Xij0zxI3JECgYs3oKx+AizQBA==", "dev": true, - "license": "MIT", + "dependencies": { + "jake": "^10.8.5" + }, "bin": { - "parser": "bin/babel-parser.js" + "ejs": "bin/cli.js" }, "engines": { - "node": ">=6.0.0" + "node": ">=0.10.0" } }, - "node_modules/@babel/plugin-syntax-async-generators": { - "version": "7.8.4", + "node_modules/electron-to-chromium": { + "version": "1.5.139", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.139.tgz", + "integrity": "sha512-GGnRYOTdN5LYpwbIr0rwP/ZHOQSvAF6TG0LSzp28uCBb9JiXHJGmaaKw29qjNJc5bGnnp6kXJqRnGMQoELwi5w==", + "dev": true + }, + "node_modules/emittery": { + "version": "0.13.1", + "resolved": "https://registry.npmjs.org/emittery/-/emittery-0.13.1.tgz", + "integrity": "sha512-DeWwawk6r5yR9jFgnDKYt4sLS0LmHJJi3ZOnb5/JdbYwj3nW+FxQnHIjhBKz8YLC7oRNPVM9NQ47I3CVx34eqQ==", "dev": true, - "license": "MIT", - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" + "engines": { + "node": ">=12" }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "funding": { + "url": "https://github.com/sindresorhus/emittery?sponsor=1" } }, - "node_modules/@babel/plugin-syntax-bigint": { - "version": "7.8.3", + "node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true + }, + "node_modules/encodeurl": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-2.0.0.tgz", + "integrity": "sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg==", + "peer": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/error-ex": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", + "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", "dev": true, - "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "is-arrayish": "^0.2.1" } }, - "node_modules/@babel/plugin-syntax-class-properties": { - "version": "7.12.13", - "dev": true, - "license": "MIT", + "node_modules/es-define-property": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.1.tgz", + "integrity": "sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-errors": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz", + "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-module-lexer": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-1.6.0.tgz", + "integrity": "sha512-qqnD1yMU6tk/jnaMosogGySTZP8YtUgAffA9nMN+E/rjxcfRQ6IEk7IiozUjgxKoFHBGjTLnrHB/YC45r/59EQ==", + "dev": true + }, + "node_modules/es-object-atoms": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.1.1.tgz", + "integrity": "sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==", "dependencies": { - "@babel/helper-plugin-utils": "^7.12.13" + "es-errors": "^1.3.0" }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "engines": { + "node": ">= 0.4" } }, - "node_modules/@babel/plugin-syntax-import-meta": { - "version": "7.10.4", - "dev": true, - "license": "MIT", + "node_modules/es-set-tostringtag": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.1.0.tgz", + "integrity": "sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA==", "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4" + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.6", + "has-tostringtag": "^1.0.2", + "hasown": "^2.0.2" }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "engines": { + "node": ">= 0.4" } }, - "node_modules/@babel/plugin-syntax-json-strings": { - "version": "7.8.3", + "node_modules/escalade": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz", + "integrity": "sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==", "dev": true, - "license": "MIT", - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "engines": { + "node": ">=6" } }, - "node_modules/@babel/plugin-syntax-logical-assignment-operators": { - "version": "7.10.4", + "node_modules/escape-html": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", + "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==", + "peer": true + }, + "node_modules/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, - "license": "MIT", - "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4" + "engines": { + "node": ">=10" }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@babel/plugin-syntax-nullish-coalescing-operator": { - "version": "7.8.3", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" + "node_modules/eslint": { + "version": "9.24.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.24.0.tgz", + "integrity": "sha512-eh/jxIEJyZrvbWRe4XuVclLPDYSYYYgLy5zXGGxD6j8zjSAxFEzI2fL/8xNq6O2yKqVt+eF2YhV+hxjV6UKXwQ==", + "dev": true, + "dependencies": { + "@eslint-community/eslint-utils": "^4.2.0", + "@eslint-community/regexpp": "^4.12.1", + "@eslint/config-array": "^0.20.0", + "@eslint/config-helpers": "^0.2.0", + "@eslint/core": "^0.12.0", + "@eslint/eslintrc": "^3.3.1", + "@eslint/js": "9.24.0", + "@eslint/plugin-kit": "^0.2.7", + "@humanfs/node": "^0.16.6", + "@humanwhocodes/module-importer": "^1.0.1", + "@humanwhocodes/retry": "^0.4.2", + "@types/estree": "^1.0.6", + "@types/json-schema": "^7.0.15", + "ajv": "^6.12.4", + "chalk": "^4.0.0", + "cross-spawn": "^7.0.6", + "debug": "^4.3.2", + "escape-string-regexp": "^4.0.0", + "eslint-scope": "^8.3.0", + "eslint-visitor-keys": "^4.2.0", + "espree": "^10.3.0", + "esquery": "^1.5.0", + "esutils": "^2.0.2", + "fast-deep-equal": "^3.1.3", + "file-entry-cache": "^8.0.0", + "find-up": "^5.0.0", + "glob-parent": "^6.0.2", + "ignore": "^5.2.0", + "imurmurhash": "^0.1.4", + "is-glob": "^4.0.0", + "json-stable-stringify-without-jsonify": "^1.0.1", + "lodash.merge": "^4.6.2", + "minimatch": "^3.1.2", + "natural-compare": "^1.4.0", + "optionator": "^0.9.3" + }, + "bin": { + "eslint": "bin/eslint.js" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://eslint.org/donate" }, "peerDependencies": { - "@babel/core": "^7.0.0-0" + "jiti": "*" + }, + "peerDependenciesMeta": { + "jiti": { + "optional": true + } } }, - "node_modules/@babel/plugin-syntax-numeric-separator": { - "version": "7.10.4", + "node_modules/eslint-plugin-jsdoc": { + "version": "50.6.9", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-50.6.9.tgz", + "integrity": "sha512-7/nHu3FWD4QRG8tCVqcv+BfFtctUtEDWc29oeDXB4bwmDM2/r1ndl14AG/2DUntdqH7qmpvdemJKwb3R97/QEw==", "dev": true, - "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4" + "@es-joy/jsdoccomment": "~0.49.0", + "are-docs-informative": "^0.0.2", + "comment-parser": "1.4.1", + "debug": "^4.3.6", + "escape-string-regexp": "^4.0.0", + "espree": "^10.1.0", + "esquery": "^1.6.0", + "parse-imports": "^2.1.1", + "semver": "^7.6.3", + "spdx-expression-parse": "^4.0.0", + "synckit": "^0.9.1" + }, + "engines": { + "node": ">=18" }, "peerDependencies": { - "@babel/core": "^7.0.0-0" + "eslint": "^7.0.0 || ^8.0.0 || ^9.0.0" } }, - "node_modules/@babel/plugin-syntax-object-rest-spread": { - "version": "7.8.3", + "node_modules/eslint-scope": { + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-8.3.0.tgz", + "integrity": "sha512-pUNxi75F8MJ/GdeKtVLSbYg4ZI34J6C0C7sbL4YOp2exGwen7ZsuBqKzUhXd0qMQ362yET3z+uPwKeg/0C2XCQ==", "dev": true, - "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" + "esrecurse": "^4.3.0", + "estraverse": "^5.2.0" }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" } }, - "node_modules/@babel/plugin-syntax-optional-catch-binding": { - "version": "7.8.3", + "node_modules/eslint-visitor-keys": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-4.2.0.tgz", + "integrity": "sha512-UyLnSehNt62FFhSwjZlHmeokpRK59rcz29j+F1/aDgbkbRTk7wIc9XzdoasMUbRNKDM0qQt/+BJ4BrpFeABemw==", "dev": true, - "license": "MIT", - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "funding": { + "url": "https://opencollective.com/eslint" } }, - "node_modules/@babel/plugin-syntax-optional-chaining": { - "version": "7.8.3", + "node_modules/espree": { + "version": "10.3.0", + "resolved": "https://registry.npmjs.org/espree/-/espree-10.3.0.tgz", + "integrity": "sha512-0QYC8b24HWY8zjRnDTL6RiHfDbAWn63qb4LMj1Z4b076A4une81+z03Kg7l7mn/48PUTqoLptSXez8oknU8Clg==", "dev": true, - "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" + "acorn": "^8.14.0", + "acorn-jsx": "^5.3.2", + "eslint-visitor-keys": "^4.2.0" }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" } }, - "node_modules/@babel/plugin-syntax-top-level-await": { - "version": "7.14.5", + "node_modules/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, - "license": "MIT", - "dependencies": { - "@babel/helper-plugin-utils": "^7.14.5" + "bin": { + "esparse": "bin/esparse.js", + "esvalidate": "bin/esvalidate.js" }, "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "node": ">=4" } }, - "node_modules/@babel/template": { - "version": "7.20.7", + "node_modules/esquery": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.6.0.tgz", + "integrity": "sha512-ca9pw9fomFcKPvFLXhBKUK90ZvGibiGOvRJNbjljY7s7uq/5YO4BOzcYtJqExdx99rF6aAcnRxHmcUHcz6sQsg==", "dev": true, - "license": "MIT", "dependencies": { - "@babel/code-frame": "^7.18.6", - "@babel/parser": "^7.20.7", - "@babel/types": "^7.20.7" + "estraverse": "^5.1.0" }, "engines": { - "node": ">=6.9.0" + "node": ">=0.10" } }, - "node_modules/@babel/traverse": { - "version": "7.20.13", + "node_modules/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, - "license": "MIT", "dependencies": { - "@babel/code-frame": "^7.18.6", - "@babel/generator": "^7.20.7", - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-function-name": "^7.19.0", - "@babel/helper-hoist-variables": "^7.18.6", - "@babel/helper-split-export-declaration": "^7.18.6", - "@babel/parser": "^7.20.13", - "@babel/types": "^7.20.7", - "debug": "^4.1.0", - "globals": "^11.1.0" + "estraverse": "^5.2.0" }, "engines": { - "node": ">=6.9.0" + "node": ">=4.0" } }, - "node_modules/@babel/traverse/node_modules/debug": { - "version": "4.3.4", + "node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", "dev": true, - "license": "MIT", - "dependencies": { - "ms": "2.1.2" - }, "engines": { - "node": ">=6.0" - }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } + "node": ">=4.0" } }, - "node_modules/@babel/traverse/node_modules/ms": { - "version": "2.1.2", + "node_modules/esutils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", "dev": true, - "license": "MIT" + "engines": { + "node": ">=0.10.0" + } }, - "node_modules/@babel/types": { - "version": "7.20.7", + "node_modules/etag": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", + "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==", + "peer": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/execa": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz", + "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", "dev": true, - "license": "MIT", "dependencies": { - "@babel/helper-string-parser": "^7.19.4", - "@babel/helper-validator-identifier": "^7.19.1", - "to-fast-properties": "^2.0.0" + "cross-spawn": "^7.0.3", + "get-stream": "^6.0.0", + "human-signals": "^2.1.0", + "is-stream": "^2.0.0", + "merge-stream": "^2.0.0", + "npm-run-path": "^4.0.1", + "onetime": "^5.1.2", + "signal-exit": "^3.0.3", + "strip-final-newline": "^2.0.0" }, "engines": { - "node": ">=6.9.0" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sindresorhus/execa?sponsor=1" } }, - "node_modules/@bcoe/v8-coverage": { - "version": "0.2.3", + "node_modules/exit": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz", + "integrity": "sha512-Zk/eNKV2zbjpKzrsQ+n1G6poVbErQxJ0LBOJXaKZ1EViLzH+hrLu9cdXI4zw9dBQJslwBEpbQ2P1oS7nDxs6jQ==", "dev": true, - "license": "MIT" + "engines": { + "node": ">= 0.8.0" + } }, - "node_modules/@cnakazawa/watch": { - "version": "1.0.4", + "node_modules/expect": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/expect/-/expect-29.7.0.tgz", + "integrity": "sha512-2Zks0hf1VLFYI1kbh0I5jP3KHHyCHpkfyHBzsSXRFgl/Bg9mWYfMW8oD+PdMPlEwy5HNsR9JutYy6pMeOh61nw==", "dev": true, - "license": "Apache-2.0", "dependencies": { - "exec-sh": "^0.3.2", - "minimist": "^1.2.0" - }, - "bin": { - "watch": "cli.js" + "@jest/expect-utils": "^29.7.0", + "jest-get-type": "^29.6.3", + "jest-matcher-utils": "^29.7.0", + "jest-message-util": "^29.7.0", + "jest-util": "^29.7.0" }, "engines": { - "node": ">=0.1.95" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/@istanbuljs/load-nyc-config": { - "version": "1.1.0", - "dev": true, - "license": "ISC", + "node_modules/express": { + "version": "4.21.2", + "resolved": "https://registry.npmjs.org/express/-/express-4.21.2.tgz", + "integrity": "sha512-28HqgMZAmih1Czt9ny7qr6ek2qddF4FclbMzwhCREB6OFfH+rXAnuNCwo1/wFvrtbgsQDb4kSbX9de9lFbrXnA==", + "peer": true, "dependencies": { - "camelcase": "^5.3.1", - "find-up": "^4.1.0", - "get-package-type": "^0.1.0", - "js-yaml": "^3.13.1", - "resolve-from": "^5.0.0" + "accepts": "~1.3.8", + "array-flatten": "1.1.1", + "body-parser": "1.20.3", + "content-disposition": "0.5.4", + "content-type": "~1.0.4", + "cookie": "0.7.1", + "cookie-signature": "1.0.6", + "debug": "2.6.9", + "depd": "2.0.0", + "encodeurl": "~2.0.0", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "finalhandler": "1.3.1", + "fresh": "0.5.2", + "http-errors": "2.0.0", + "merge-descriptors": "1.0.3", + "methods": "~1.1.2", + "on-finished": "2.4.1", + "parseurl": "~1.3.3", + "path-to-regexp": "0.1.12", + "proxy-addr": "~2.0.7", + "qs": "6.13.0", + "range-parser": "~1.2.1", + "safe-buffer": "5.2.1", + "send": "0.19.0", + "serve-static": "1.16.2", + "setprototypeof": "1.2.0", + "statuses": "2.0.1", + "type-is": "~1.6.18", + "utils-merge": "1.0.1", + "vary": "~1.1.2" }, "engines": { - "node": ">=8" + "node": ">= 0.10.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/express" } }, - "node_modules/@istanbuljs/schema": { - "version": "0.1.3", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" + "node_modules/express/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "peer": true, + "dependencies": { + "ms": "2.0.0" } }, - "node_modules/@jest/console": { - "version": "26.6.2", + "node_modules/express/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "peer": true + }, + "node_modules/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 + }, + "node_modules/fast-glob": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.3.tgz", + "integrity": "sha512-7MptL8U0cqcFdzIzwOTHoilX9x5BrNqye7Z/LuC7kCMRio1EMSyqRK3BEAUD7sXRq4iT4AzTVuZdhgQ2TCvYLg==", "dev": true, - "license": "MIT", "dependencies": { - "@jest/types": "^26.6.2", - "@types/node": "*", - "chalk": "^4.0.0", - "jest-message-util": "^26.6.2", - "jest-util": "^26.6.2", - "slash": "^3.0.0" + "@nodelib/fs.stat": "^2.0.2", + "@nodelib/fs.walk": "^1.2.3", + "glob-parent": "^5.1.2", + "merge2": "^1.3.0", + "micromatch": "^4.0.8" }, "engines": { - "node": ">= 10.14.2" + "node": ">=8.6.0" } }, - "node_modules/@jest/console/node_modules/slash": { - "version": "3.0.0", + "node_modules/fast-glob/node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", "dev": true, - "license": "MIT", + "dependencies": { + "is-glob": "^4.0.1" + }, "engines": { - "node": ">=8" + "node": ">= 6" } }, - "node_modules/@jest/core": { - "version": "26.6.3", + "node_modules/fast-json-stable-stringify": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", + "dev": true + }, + "node_modules/fast-levenshtein": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", + "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", + "dev": true + }, + "node_modules/fastq": { + "version": "1.19.1", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.19.1.tgz", + "integrity": "sha512-GwLTyxkCXjXbxqIhTsMI2Nui8huMPtnxg7krajPJAjnEG/iiOS7i+zCtWGZR9G0NBKbXKh6X9m9UIsYX/N6vvQ==", "dev": true, - "license": "MIT", "dependencies": { - "@jest/console": "^26.6.2", - "@jest/reporters": "^26.6.2", - "@jest/test-result": "^26.6.2", - "@jest/transform": "^26.6.2", - "@jest/types": "^26.6.2", - "@types/node": "*", - "ansi-escapes": "^4.2.1", - "chalk": "^4.0.0", - "exit": "^0.1.2", - "graceful-fs": "^4.2.4", - "jest-changed-files": "^26.6.2", - "jest-config": "^26.6.3", - "jest-haste-map": "^26.6.2", - "jest-message-util": "^26.6.2", - "jest-regex-util": "^26.0.0", - "jest-resolve": "^26.6.2", - "jest-resolve-dependencies": "^26.6.3", - "jest-runner": "^26.6.3", - "jest-runtime": "^26.6.3", - "jest-snapshot": "^26.6.2", - "jest-util": "^26.6.2", - "jest-validate": "^26.6.2", - "jest-watcher": "^26.6.2", - "micromatch": "^4.0.2", - "p-each-series": "^2.1.0", - "rimraf": "^3.0.0", - "slash": "^3.0.0", - "strip-ansi": "^6.0.0" - }, - "engines": { - "node": ">= 10.14.2" + "reusify": "^1.0.4" } }, - "node_modules/@jest/core/node_modules/braces": { - "version": "3.0.2", + "node_modules/fb-watchman": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/fb-watchman/-/fb-watchman-2.0.2.tgz", + "integrity": "sha512-p5161BqbuCaSnB8jIbzQHOlpgsPmK5rJVDfDKO91Axs5NC1uu3HRQm6wt9cd9/+GtQQIO53JdGXXoyDpTAsgYA==", "dev": true, - "license": "MIT", "dependencies": { - "fill-range": "^7.0.1" - }, - "engines": { - "node": ">=8" + "bser": "2.1.1" } }, - "node_modules/@jest/core/node_modules/fill-range": { - "version": "7.0.1", - "dev": true, - "license": "MIT", + "node_modules/fetch-blob": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/fetch-blob/-/fetch-blob-3.2.0.tgz", + "integrity": "sha512-7yAQpD2UMJzLi1Dqv7qFYnPbaPx7ZfFK6PiIxQ4PfkGPyNyl2Ugx+a/umUonmKqjhM4DnfbMvdX6otXq83soQQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/jimmywarting" + }, + { + "type": "paypal", + "url": "https://paypal.me/jimmywarting" + } + ], "dependencies": { - "to-regex-range": "^5.0.1" + "node-domexception": "^1.0.0", + "web-streams-polyfill": "^3.0.3" }, "engines": { - "node": ">=8" + "node": "^12.20 || >= 14.13" } }, - "node_modules/@jest/core/node_modules/is-number": { - "version": "7.0.0", - "dev": true, - "license": "MIT", + "node_modules/fetch-blob/node_modules/web-streams-polyfill": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/web-streams-polyfill/-/web-streams-polyfill-3.3.3.tgz", + "integrity": "sha512-d2JWLCivmZYTSIoge9MsgFCZrt571BikcWGYkjC1khllbTeDlGqZ2D8vD8E/lJa8WGWbb7Plm8/XJYV7IJHZZw==", "engines": { - "node": ">=0.12.0" + "node": ">= 8" } }, - "node_modules/@jest/core/node_modules/micromatch": { - "version": "4.0.5", + "node_modules/file-entry-cache": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-8.0.0.tgz", + "integrity": "sha512-XXTUwCvisa5oacNGRP9SfNtYBNAMi+RPwBFmblZEF7N7swHYQS6/Zfk7SRwx4D5j3CH211YNRco1DEMNVfZCnQ==", "dev": true, - "license": "MIT", "dependencies": { - "braces": "^3.0.2", - "picomatch": "^2.3.1" + "flat-cache": "^4.0.0" }, "engines": { - "node": ">=8.6" + "node": ">=16.0.0" } }, - "node_modules/@jest/core/node_modules/slash": { - "version": "3.0.0", + "node_modules/filelist": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/filelist/-/filelist-1.0.4.tgz", + "integrity": "sha512-w1cEuf3S+DrLCQL7ET6kz+gmlJdbq9J7yXCSjK/OZCPA+qEN1WyF4ZAf0YYJa4/shHJra2t/d/r8SV4Ji+x+8Q==", "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" + "dependencies": { + "minimatch": "^5.0.1" } }, - "node_modules/@jest/core/node_modules/to-regex-range": { - "version": "5.0.1", + "node_modules/filelist/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", "dev": true, - "license": "MIT", "dependencies": { - "is-number": "^7.0.0" - }, - "engines": { - "node": ">=8.0" + "balanced-match": "^1.0.0" } }, - "node_modules/@jest/environment": { - "version": "26.6.2", + "node_modules/filelist/node_modules/minimatch": { + "version": "5.1.6", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz", + "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==", "dev": true, - "license": "MIT", "dependencies": { - "@jest/fake-timers": "^26.6.2", - "@jest/types": "^26.6.2", - "@types/node": "*", - "jest-mock": "^26.6.2" + "brace-expansion": "^2.0.1" }, "engines": { - "node": ">= 10.14.2" + "node": ">=10" } }, - "node_modules/@jest/fake-timers": { - "version": "26.6.2", + "node_modules/fill-range": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", + "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", "dev": true, - "license": "MIT", "dependencies": { - "@jest/types": "^26.6.2", - "@sinonjs/fake-timers": "^6.0.1", - "@types/node": "*", - "jest-message-util": "^26.6.2", - "jest-mock": "^26.6.2", - "jest-util": "^26.6.2" + "to-regex-range": "^5.0.1" }, "engines": { - "node": ">= 10.14.2" + "node": ">=8" } }, - "node_modules/@jest/globals": { - "version": "26.6.2", - "dev": true, - "license": "MIT", + "node_modules/finalhandler": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.3.1.tgz", + "integrity": "sha512-6BN9trH7bp3qvnrRyzsBz+g3lZxTNZTbVO2EV1CS0WIcDbawYVdYvGflME/9QP0h0pYlCDBCTjYa9nZzMDpyxQ==", + "peer": true, "dependencies": { - "@jest/environment": "^26.6.2", - "@jest/types": "^26.6.2", - "expect": "^26.6.2" + "debug": "2.6.9", + "encodeurl": "~2.0.0", + "escape-html": "~1.0.3", + "on-finished": "2.4.1", + "parseurl": "~1.3.3", + "statuses": "2.0.1", + "unpipe": "~1.0.0" }, "engines": { - "node": ">= 10.14.2" + "node": ">= 0.8" } }, - "node_modules/@jest/reporters": { - "version": "26.6.2", - "dev": true, - "license": "MIT", + "node_modules/finalhandler/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "peer": true, "dependencies": { - "@bcoe/v8-coverage": "^0.2.3", - "@jest/console": "^26.6.2", - "@jest/test-result": "^26.6.2", - "@jest/transform": "^26.6.2", - "@jest/types": "^26.6.2", - "chalk": "^4.0.0", - "collect-v8-coverage": "^1.0.0", - "exit": "^0.1.2", - "glob": "^7.1.2", - "graceful-fs": "^4.2.4", - "istanbul-lib-coverage": "^3.0.0", - "istanbul-lib-instrument": "^4.0.3", - "istanbul-lib-report": "^3.0.0", - "istanbul-lib-source-maps": "^4.0.0", - "istanbul-reports": "^3.0.2", - "jest-haste-map": "^26.6.2", - "jest-resolve": "^26.6.2", - "jest-util": "^26.6.2", - "jest-worker": "^26.6.2", - "slash": "^3.0.0", - "source-map": "^0.6.0", - "string-length": "^4.0.1", - "terminal-link": "^2.0.0", - "v8-to-istanbul": "^7.0.0" - }, - "engines": { - "node": ">= 10.14.2" - }, - "optionalDependencies": { - "node-notifier": "^8.0.0" + "ms": "2.0.0" } }, - "node_modules/@jest/reporters/node_modules/slash": { - "version": "3.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } + "node_modules/finalhandler/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "peer": true }, - "node_modules/@jest/source-map": { - "version": "26.6.2", + "node_modules/find-up": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", "dev": true, - "license": "MIT", "dependencies": { - "callsites": "^3.0.0", - "graceful-fs": "^4.2.4", - "source-map": "^0.6.0" + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" }, "engines": { - "node": ">= 10.14.2" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@jest/test-result": { - "version": "26.6.2", + "node_modules/flat-cache": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-4.0.1.tgz", + "integrity": "sha512-f7ccFPK3SXFHpx15UIGyRJ/FJQctuKZ0zVuN3frBo4HnK3cay9VEW0R6yPYFHC0AgqhukPzKjq22t5DmAyqGyw==", "dev": true, - "license": "MIT", "dependencies": { - "@jest/console": "^26.6.2", - "@jest/types": "^26.6.2", - "@types/istanbul-lib-coverage": "^2.0.0", - "collect-v8-coverage": "^1.0.0" + "flatted": "^3.2.9", + "keyv": "^4.5.4" }, "engines": { - "node": ">= 10.14.2" + "node": ">=16" } }, - "node_modules/@jest/test-sequencer": { - "version": "26.6.3", - "dev": true, - "license": "MIT", + "node_modules/flatted": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.3.3.tgz", + "integrity": "sha512-GX+ysw4PBCz0PzosHDepZGANEuFCMLrnRTiEy9McGjmkCQYwRq4A/X786G/fjM/+OjsWSU1ZrY5qyARZmO/uwg==", + "dev": true + }, + "node_modules/form-data": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.2.tgz", + "integrity": "sha512-hGfm/slu0ZabnNt4oaRZ6uREyfCj6P4fT/n6A1rGV+Z0VdGXjfOhVUpkn6qVQONHGIFwmveGXyDs75+nr6FM8w==", "dependencies": { - "@jest/test-result": "^26.6.2", - "graceful-fs": "^4.2.4", - "jest-haste-map": "^26.6.2", - "jest-runner": "^26.6.3", - "jest-runtime": "^26.6.3" + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "es-set-tostringtag": "^2.1.0", + "mime-types": "^2.1.12" }, "engines": { - "node": ">= 10.14.2" + "node": ">= 6" } }, - "node_modules/@jest/transform": { - "version": "26.6.2", - "dev": true, - "license": "MIT", + "node_modules/formdata-node": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/formdata-node/-/formdata-node-4.4.1.tgz", + "integrity": "sha512-0iirZp3uVDjVGt9p49aTaqjk84TrglENEDuqfdlZQ1roC9CWlPk6Avf8EEnZNcAqPonwkG35x4n3ww/1THYAeQ==", "dependencies": { - "@babel/core": "^7.1.0", - "@jest/types": "^26.6.2", - "babel-plugin-istanbul": "^6.0.0", - "chalk": "^4.0.0", - "convert-source-map": "^1.4.0", - "fast-json-stable-stringify": "^2.0.0", - "graceful-fs": "^4.2.4", - "jest-haste-map": "^26.6.2", - "jest-regex-util": "^26.0.0", - "jest-util": "^26.6.2", - "micromatch": "^4.0.2", - "pirates": "^4.0.1", - "slash": "^3.0.0", - "source-map": "^0.6.1", - "write-file-atomic": "^3.0.0" + "node-domexception": "1.0.0", + "web-streams-polyfill": "4.0.0-beta.3" }, "engines": { - "node": ">= 10.14.2" + "node": ">= 12.20" } }, - "node_modules/@jest/transform/node_modules/braces": { - "version": "3.0.2", - "dev": true, - "license": "MIT", + "node_modules/formdata-polyfill": { + "version": "4.0.10", + "resolved": "https://registry.npmjs.org/formdata-polyfill/-/formdata-polyfill-4.0.10.tgz", + "integrity": "sha512-buewHzMvYL29jdeQTVILecSaZKnt/RJWjoZCF5OW60Z67/GmSLBkOFM7qh1PI3zFNtJbaZL5eQu1vLfazOwj4g==", "dependencies": { - "fill-range": "^7.0.1" + "fetch-blob": "^3.1.2" }, "engines": { - "node": ">=8" + "node": ">=12.20.0" } }, - "node_modules/@jest/transform/node_modules/fill-range": { - "version": "7.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "to-regex-range": "^5.0.1" - }, + "node_modules/forwarded": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz", + "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==", + "peer": true, "engines": { - "node": ">=8" + "node": ">= 0.6" } }, - "node_modules/@jest/transform/node_modules/is-number": { - "version": "7.0.0", - "dev": true, - "license": "MIT", + "node_modules/fresh": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", + "integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==", + "peer": true, "engines": { - "node": ">=0.12.0" + "node": ">= 0.6" } }, - "node_modules/@jest/transform/node_modules/micromatch": { - "version": "4.0.5", + "node_modules/fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", + "dev": true + }, + "node_modules/fsevents": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", "dev": true, - "license": "MIT", - "dependencies": { - "braces": "^3.0.2", - "picomatch": "^2.3.1" - }, + "hasInstallScript": true, + "optional": true, + "os": [ + "darwin" + ], "engines": { - "node": ">=8.6" + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" } }, - "node_modules/@jest/transform/node_modules/slash": { - "version": "3.0.0", + "node_modules/function-bind": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", + "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/gensync": { + "version": "1.0.0-beta.2", + "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", + "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", "dev": true, - "license": "MIT", "engines": { - "node": ">=8" + "node": ">=6.9.0" } }, - "node_modules/@jest/transform/node_modules/to-regex-range": { - "version": "5.0.1", + "node_modules/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, - "license": "MIT", - "dependencies": { - "is-number": "^7.0.0" - }, "engines": { - "node": ">=8.0" + "node": "6.* || 8.* || >= 10.*" } }, - "node_modules/@jest/types": { - "version": "26.6.2", - "dev": true, - "license": "MIT", + "node_modules/get-intrinsic": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.3.0.tgz", + "integrity": "sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ==", "dependencies": { - "@types/istanbul-lib-coverage": "^2.0.0", - "@types/istanbul-reports": "^3.0.0", - "@types/node": "*", - "@types/yargs": "^15.0.0", - "chalk": "^4.0.0" + "call-bind-apply-helpers": "^1.0.2", + "es-define-property": "^1.0.1", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.1.1", + "function-bind": "^1.1.2", + "get-proto": "^1.0.1", + "gopd": "^1.2.0", + "has-symbols": "^1.1.0", + "hasown": "^2.0.2", + "math-intrinsics": "^1.1.0" }, "engines": { - "node": ">= 10.14.2" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/@jridgewell/gen-mapping": { - "version": "0.1.1", + "node_modules/get-package-type": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz", + "integrity": "sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==", "dev": true, - "license": "MIT", + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/get-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/get-proto/-/get-proto-1.0.1.tgz", + "integrity": "sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==", "dependencies": { - "@jridgewell/set-array": "^1.0.0", - "@jridgewell/sourcemap-codec": "^1.4.10" + "dunder-proto": "^1.0.1", + "es-object-atoms": "^1.0.0" }, "engines": { - "node": ">=6.0.0" + "node": ">= 0.4" } }, - "node_modules/@jridgewell/resolve-uri": { - "version": "3.1.0", + "node_modules/get-stream": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", + "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", "dev": true, - "license": "MIT", "engines": { - "node": ">=6.0.0" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@jridgewell/set-array": { - "version": "1.1.2", + "node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "deprecated": "Glob versions prior to v9 are no longer supported", "dev": true, - "license": "MIT", + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, "engines": { - "node": ">=6.0.0" + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/@jridgewell/sourcemap-codec": { - "version": "1.4.14", - "dev": true, - "license": "MIT" - }, - "node_modules/@jridgewell/trace-mapping": { - "version": "0.3.17", + "node_modules/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, - "license": "MIT", "dependencies": { - "@jridgewell/resolve-uri": "3.1.0", - "@jridgewell/sourcemap-codec": "1.4.14" + "is-glob": "^4.0.3" + }, + "engines": { + "node": ">=10.13.0" } }, - "node_modules/@mrmlnc/readdir-enhanced": { - "version": "2.2.1", + "node_modules/globals": { + "version": "14.0.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-14.0.0.tgz", + "integrity": "sha512-oahGvuMGQlPw/ivIYBjVSrWAfWLBeku5tpPE2fOPLi+WHffIWbuh2tCjhyQhTBPMf5E9jDEH4FOmTYgYwbKwtQ==", "dev": true, - "license": "MIT", - "dependencies": { - "call-me-maybe": "^1.0.1", - "glob-to-regexp": "^0.3.0" + "engines": { + "node": ">=18" }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/gopd": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.2.0.tgz", + "integrity": "sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==", "engines": { - "node": ">=4" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/@ngageoint/mage.service": { - "resolved": "../../../service", - "link": true + "node_modules/graceful-fs": { + "version": "4.2.11", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", + "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==", + "dev": true }, - "node_modules/@nodelib/fs.stat": { - "version": "1.1.3", + "node_modules/graphemer": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/graphemer/-/graphemer-1.4.0.tgz", + "integrity": "sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==", + "dev": true + }, + "node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", "dev": true, - "license": "MIT", "engines": { - "node": ">= 6" + "node": ">=8" } }, - "node_modules/@sinonjs/commons": { - "version": "1.8.6", - "dev": true, - "license": "BSD-3-Clause", - "dependencies": { - "type-detect": "4.0.8" + "node_modules/has-symbols": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.1.0.tgz", + "integrity": "sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/@sinonjs/fake-timers": { - "version": "6.0.1", - "dev": true, - "license": "BSD-3-Clause", + "node_modules/has-tostringtag": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.2.tgz", + "integrity": "sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==", "dependencies": { - "@sinonjs/commons": "^1.7.0" + "has-symbols": "^1.0.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/@terraformer/arcgis": { - "version": "2.1.2", - "license": "MIT", + "node_modules/hasown": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", + "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", "dependencies": { - "@terraformer/common": "^2.1.2" + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" } }, - "node_modules/@terraformer/common": { - "version": "2.1.2", - "license": "MIT" + "node_modules/html-escaper": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", + "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", + "dev": true }, - "node_modules/@tootallnate/once": { - "version": "1.1.2", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 6" - } - }, - "node_modules/@types/babel__core": { - "version": "7.20.0", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/parser": "^7.20.7", - "@babel/types": "^7.20.7", - "@types/babel__generator": "*", - "@types/babel__template": "*", - "@types/babel__traverse": "*" - } - }, - "node_modules/@types/babel__generator": { - "version": "7.6.4", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/types": "^7.0.0" - } - }, - "node_modules/@types/babel__template": { - "version": "7.4.1", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/parser": "^7.1.0", - "@babel/types": "^7.0.0" - } - }, - "node_modules/@types/babel__traverse": { - "version": "7.18.3", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/types": "^7.3.0" - } - }, - "node_modules/@types/body-parser": { - "version": "1.19.2", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/connect": "*", - "@types/node": "*" - } - }, - "node_modules/@types/connect": { - "version": "3.4.35", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/node": "*" - } - }, - "node_modules/@types/express": { - "version": "4.17.21", - "resolved": "https://registry.npmjs.org/@types/express/-/express-4.17.21.tgz", - "integrity": "sha512-ejlPM315qwLpaQlQDTjPdsUFSc6ZsP4AN6AlWnogPjQ7CVi7PYF3YVz+CY3jE2pwYf7E/7HlDAN0rV2GxTG0HQ==", - "dev": true, - "dependencies": { - "@types/body-parser": "*", - "@types/express-serve-static-core": "^4.17.33", - "@types/qs": "*", - "@types/serve-static": "*" - } - }, - "node_modules/@types/express-serve-static-core": { - "version": "4.17.33", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/node": "*", - "@types/qs": "*", - "@types/range-parser": "*" - } - }, - "node_modules/@types/geojson": { - "version": "7946.0.10", - "license": "MIT" - }, - "node_modules/@types/glob": { - "version": "7.2.0", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/minimatch": "*", - "@types/node": "*" - } - }, - "node_modules/@types/graceful-fs": { - "version": "4.1.6", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/node": "*" - } - }, - "node_modules/@types/istanbul-lib-coverage": { - "version": "2.0.4", - "dev": true, - "license": "MIT" - }, - "node_modules/@types/istanbul-lib-report": { - "version": "3.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/istanbul-lib-coverage": "*" - } - }, - "node_modules/@types/istanbul-reports": { - "version": "3.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/istanbul-lib-report": "*" - } - }, - "node_modules/@types/jest": { - "version": "26.0.24", - "dev": true, - "license": "MIT", - "dependencies": { - "jest-diff": "^26.0.0", - "pretty-format": "^26.0.0" - } - }, - "node_modules/@types/mime": { - "version": "3.0.1", - "dev": true, - "license": "MIT" - }, - "node_modules/@types/minimatch": { - "version": "5.1.2", - "dev": true, - "license": "MIT" - }, - "node_modules/@types/minimist": { - "version": "1.2.2", - "dev": true, - "license": "MIT" - }, - "node_modules/@types/node": { - "version": "18.11.18", - "dev": true, - "license": "MIT" - }, - "node_modules/@types/normalize-package-data": { - "version": "2.4.1", - "dev": true, - "license": "MIT" - }, - "node_modules/@types/prettier": { - "version": "2.7.2", - "dev": true, - "license": "MIT" - }, - "node_modules/@types/qs": { - "version": "6.9.7", - "dev": true, - "license": "MIT" - }, - "node_modules/@types/range-parser": { - "version": "1.2.4", - "dev": true, - "license": "MIT" - }, - "node_modules/@types/serve-static": { - "version": "1.15.0", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/mime": "*", - "@types/node": "*" - } - }, - "node_modules/@types/stack-utils": { - "version": "2.0.1", - "dev": true, - "license": "MIT" - }, - "node_modules/@types/yargs": { - "version": "15.0.15", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/yargs-parser": "*" - } - }, - "node_modules/@types/yargs-parser": { - "version": "21.0.0", - "dev": true, - "license": "MIT" - }, - "node_modules/abab": { - "version": "2.0.6", - "dev": true, - "license": "BSD-3-Clause" - }, - "node_modules/accepts": { - "version": "1.3.8", - "license": "MIT", + "node_modules/http-errors": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", + "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==", "peer": true, "dependencies": { - "mime-types": "~2.1.34", - "negotiator": "0.6.3" + "depd": "2.0.0", + "inherits": "2.0.4", + "setprototypeof": "1.2.0", + "statuses": "2.0.1", + "toidentifier": "1.0.1" }, "engines": { - "node": ">= 0.6" + "node": ">= 0.8" } }, - "node_modules/acorn": { - "version": "8.8.2", + "node_modules/human-signals": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz", + "integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==", "dev": true, - "license": "MIT", - "bin": { - "acorn": "bin/acorn" - }, "engines": { - "node": ">=0.4.0" + "node": ">=10.17.0" } }, - "node_modules/acorn-globals": { - "version": "6.0.0", - "dev": true, - "license": "MIT", + "node_modules/iconv-lite": { + "version": "0.4.24", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", + "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", + "peer": true, "dependencies": { - "acorn": "^7.1.1", - "acorn-walk": "^7.1.1" - } - }, - "node_modules/acorn-globals/node_modules/acorn": { - "version": "7.4.1", - "dev": true, - "license": "MIT", - "bin": { - "acorn": "bin/acorn" + "safer-buffer": ">= 2.1.2 < 3" }, "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/acorn-walk": { - "version": "7.2.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.4.0" + "node": ">=0.10.0" } }, - "node_modules/agent-base": { - "version": "6.0.2", + "node_modules/ignore": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.2.tgz", + "integrity": "sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==", "dev": true, - "license": "MIT", - "dependencies": { - "debug": "4" - }, "engines": { - "node": ">= 6.0.0" + "node": ">= 4" } }, - "node_modules/agent-base/node_modules/debug": { - "version": "4.3.4", + "node_modules/import-fresh": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.1.tgz", + "integrity": "sha512-TR3KfrTZTYLPB6jUjfx6MF9WcWrHL9su5TObK4ZkYgBdWKPOFoSoQIdEuTuR82pmtxH2spWG9h6etwfr1pLBqQ==", "dev": true, - "license": "MIT", "dependencies": { - "ms": "2.1.2" + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" }, "engines": { - "node": ">=6.0" + "node": ">=6" }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/agent-base/node_modules/ms": { - "version": "2.1.2", - "dev": true, - "license": "MIT" - }, - "node_modules/aggregate-error": { - "version": "3.1.0", - "dev": true, - "license": "MIT", - "dependencies": { - "clean-stack": "^2.0.0", - "indent-string": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/ansi-escapes": { - "version": "4.3.2", - "dev": true, - "license": "MIT", - "dependencies": { - "type-fest": "^0.21.3" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/ansi-regex": { - "version": "5.0.1", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/ansi-styles": { - "version": "4.3.0", - "dev": true, - "license": "MIT", - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/anymatch": { - "version": "3.1.3", - "dev": true, - "license": "ISC", - "dependencies": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/argparse": { - "version": "1.0.10", - "dev": true, - "license": "MIT", - "dependencies": { - "sprintf-js": "~1.0.2" - } - }, - "node_modules/arr-diff": { - "version": "4.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/arr-flatten": { - "version": "1.1.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/arr-union": { - "version": "3.1.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/array-flatten": { - "version": "1.1.1", - "license": "MIT", - "peer": true - }, - "node_modules/array-union": { - "version": "1.0.2", - "dev": true, - "license": "MIT", - "dependencies": { - "array-uniq": "^1.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/array-uniq": { - "version": "1.0.3", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/array-unique": { - "version": "0.3.2", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/arrify": { - "version": "2.0.1", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/assign-symbols": { - "version": "1.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/asynckit": { - "version": "0.4.0", - "license": "MIT" - }, - "node_modules/atob": { - "version": "2.1.2", - "dev": true, - "license": "(MIT OR Apache-2.0)", - "bin": { - "atob": "bin/atob.js" - }, - "engines": { - "node": ">= 4.5.0" - } - }, - "node_modules/available-typed-arrays": { - "version": "1.0.5", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/babel-jest": { - "version": "26.6.3", - "dev": true, - "license": "MIT", - "dependencies": { - "@jest/transform": "^26.6.2", - "@jest/types": "^26.6.2", - "@types/babel__core": "^7.1.7", - "babel-plugin-istanbul": "^6.0.0", - "babel-preset-jest": "^26.6.2", - "chalk": "^4.0.0", - "graceful-fs": "^4.2.4", - "slash": "^3.0.0" - }, - "engines": { - "node": ">= 10.14.2" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" - } - }, - "node_modules/babel-jest/node_modules/slash": { - "version": "3.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/babel-plugin-istanbul": { - "version": "6.1.1", - "dev": true, - "license": "BSD-3-Clause", - "dependencies": { - "@babel/helper-plugin-utils": "^7.0.0", - "@istanbuljs/load-nyc-config": "^1.0.0", - "@istanbuljs/schema": "^0.1.2", - "istanbul-lib-instrument": "^5.0.4", - "test-exclude": "^6.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/babel-plugin-istanbul/node_modules/istanbul-lib-instrument": { - "version": "5.2.1", - "dev": true, - "license": "BSD-3-Clause", - "dependencies": { - "@babel/core": "^7.12.3", - "@babel/parser": "^7.14.7", - "@istanbuljs/schema": "^0.1.2", - "istanbul-lib-coverage": "^3.2.0", - "semver": "^6.3.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/babel-plugin-jest-hoist": { - "version": "26.6.2", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/template": "^7.3.3", - "@babel/types": "^7.3.3", - "@types/babel__core": "^7.0.0", - "@types/babel__traverse": "^7.0.6" - }, - "engines": { - "node": ">= 10.14.2" - } - }, - "node_modules/babel-preset-current-node-syntax": { - "version": "1.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/plugin-syntax-async-generators": "^7.8.4", - "@babel/plugin-syntax-bigint": "^7.8.3", - "@babel/plugin-syntax-class-properties": "^7.8.3", - "@babel/plugin-syntax-import-meta": "^7.8.3", - "@babel/plugin-syntax-json-strings": "^7.8.3", - "@babel/plugin-syntax-logical-assignment-operators": "^7.8.3", - "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", - "@babel/plugin-syntax-numeric-separator": "^7.8.3", - "@babel/plugin-syntax-object-rest-spread": "^7.8.3", - "@babel/plugin-syntax-optional-catch-binding": "^7.8.3", - "@babel/plugin-syntax-optional-chaining": "^7.8.3", - "@babel/plugin-syntax-top-level-await": "^7.8.3" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" - } - }, - "node_modules/babel-preset-jest": { - "version": "26.6.2", - "dev": true, - "license": "MIT", - "dependencies": { - "babel-plugin-jest-hoist": "^26.6.2", - "babel-preset-current-node-syntax": "^1.0.0" - }, - "engines": { - "node": ">= 10.14.2" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" - } - }, - "node_modules/balanced-match": { - "version": "1.0.2", - "dev": true, - "license": "MIT" - }, - "node_modules/base": { - "version": "0.11.2", - "dev": true, - "license": "MIT", - "dependencies": { - "cache-base": "^1.0.1", - "class-utils": "^0.3.5", - "component-emitter": "^1.2.1", - "define-property": "^1.0.0", - "isobject": "^3.0.1", - "mixin-deep": "^1.2.0", - "pascalcase": "^0.1.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/base/node_modules/define-property": { - "version": "1.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "is-descriptor": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/body-parser": { - "version": "1.20.1", - "license": "MIT", - "peer": true, - "dependencies": { - "bytes": "3.1.2", - "content-type": "~1.0.4", - "debug": "2.6.9", - "depd": "2.0.0", - "destroy": "1.2.0", - "http-errors": "2.0.0", - "iconv-lite": "0.4.24", - "on-finished": "2.4.1", - "qs": "6.11.0", - "raw-body": "2.5.1", - "type-is": "~1.6.18", - "unpipe": "1.0.0" - }, - "engines": { - "node": ">= 0.8", - "npm": "1.2.8000 || >= 1.4.16" - } - }, - "node_modules/brace-expansion": { - "version": "1.1.11", - "dev": true, - "license": "MIT", - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "node_modules/braces": { - "version": "2.3.2", - "dev": true, - "license": "MIT", - "dependencies": { - "arr-flatten": "^1.1.0", - "array-unique": "^0.3.2", - "extend-shallow": "^2.0.1", - "fill-range": "^4.0.0", - "isobject": "^3.0.1", - "repeat-element": "^1.1.2", - "snapdragon": "^0.8.1", - "snapdragon-node": "^2.0.1", - "split-string": "^3.0.2", - "to-regex": "^3.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/braces/node_modules/extend-shallow": { - "version": "2.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "is-extendable": "^0.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/braces/node_modules/is-extendable": { - "version": "0.1.1", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/browser-process-hrtime": { - "version": "1.0.0", - "dev": true, - "license": "BSD-2-Clause" - }, - "node_modules/browserslist": { - "version": "4.21.5", - "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/browserslist" - } - ], - "license": "MIT", - "dependencies": { - "caniuse-lite": "^1.0.30001449", - "electron-to-chromium": "^1.4.284", - "node-releases": "^2.0.8", - "update-browserslist-db": "^1.0.10" - }, - "bin": { - "browserslist": "cli.js" - }, - "engines": { - "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" - } - }, - "node_modules/bs-logger": { - "version": "0.2.6", - "dev": true, - "license": "MIT", - "dependencies": { - "fast-json-stable-stringify": "2.x" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/bser": { - "version": "2.1.1", - "dev": true, - "license": "Apache-2.0", - "dependencies": { - "node-int64": "^0.4.0" - } - }, - "node_modules/buffer-from": { - "version": "1.1.2", - "dev": true, - "license": "MIT" - }, - "node_modules/bytes": { - "version": "3.1.2", - "license": "MIT", - "peer": true, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/cache-base": { - "version": "1.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "collection-visit": "^1.0.0", - "component-emitter": "^1.2.1", - "get-value": "^2.0.6", - "has-value": "^1.0.0", - "isobject": "^3.0.1", - "set-value": "^2.0.0", - "to-object-path": "^0.3.0", - "union-value": "^1.0.0", - "unset-value": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/call-bind": { - "version": "1.0.2", - "license": "MIT", - "dependencies": { - "function-bind": "^1.1.1", - "get-intrinsic": "^1.0.2" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/call-me-maybe": { - "version": "1.0.2", - "dev": true, - "license": "MIT" - }, - "node_modules/callsites": { - "version": "3.1.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "node_modules/camelcase": { - "version": "5.3.1", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "node_modules/camelcase-keys": { - "version": "6.2.2", - "dev": true, - "license": "MIT", - "dependencies": { - "camelcase": "^5.3.1", - "map-obj": "^4.0.0", - "quick-lru": "^4.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/caniuse-lite": { - "version": "1.0.30001449", - "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/caniuse-lite" - } - ], - "license": "CC-BY-4.0" - }, - "node_modules/capture-exit": { - "version": "2.0.0", - "dev": true, - "license": "ISC", - "dependencies": { - "rsvp": "^4.8.4" - }, - "engines": { - "node": "6.* || 8.* || >= 10.*" - } - }, - "node_modules/chalk": { - "version": "4.1.2", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/char-regex": { - "version": "1.0.2", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=10" - } - }, - "node_modules/ci-info": { - "version": "2.0.0", - "dev": true, - "license": "MIT" - }, - "node_modules/cjs-module-lexer": { - "version": "0.6.0", - "dev": true, - "license": "MIT" - }, - "node_modules/class-utils": { - "version": "0.3.6", - "dev": true, - "license": "MIT", - "dependencies": { - "arr-union": "^3.1.0", - "define-property": "^0.2.5", - "isobject": "^3.0.0", - "static-extend": "^0.1.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/class-utils/node_modules/define-property": { - "version": "0.2.5", - "dev": true, - "license": "MIT", - "dependencies": { - "is-descriptor": "^0.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/class-utils/node_modules/is-accessor-descriptor": { - "version": "0.1.6", - "dev": true, - "license": "MIT", - "dependencies": { - "kind-of": "^3.0.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/class-utils/node_modules/is-accessor-descriptor/node_modules/kind-of": { - "version": "3.2.2", - "dev": true, - "license": "MIT", - "dependencies": { - "is-buffer": "^1.1.5" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/class-utils/node_modules/is-data-descriptor": { - "version": "0.1.4", - "dev": true, - "license": "MIT", - "dependencies": { - "kind-of": "^3.0.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/class-utils/node_modules/is-data-descriptor/node_modules/kind-of": { - "version": "3.2.2", - "dev": true, - "license": "MIT", - "dependencies": { - "is-buffer": "^1.1.5" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/class-utils/node_modules/is-descriptor": { - "version": "0.1.6", - "dev": true, - "license": "MIT", - "dependencies": { - "is-accessor-descriptor": "^0.1.6", - "is-data-descriptor": "^0.1.4", - "kind-of": "^5.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/class-utils/node_modules/kind-of": { - "version": "5.1.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/clean-stack": { - "version": "2.2.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "node_modules/cliui": { - "version": "6.0.0", - "dev": true, - "license": "ISC", - "dependencies": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", - "wrap-ansi": "^6.2.0" - } - }, - "node_modules/co": { - "version": "4.6.0", - "dev": true, - "license": "MIT", - "engines": { - "iojs": ">= 1.0.0", - "node": ">= 0.12.0" - } - }, - "node_modules/collect-v8-coverage": { - "version": "1.0.1", - "dev": true, - "license": "MIT" - }, - "node_modules/collection-visit": { - "version": "1.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "map-visit": "^1.0.0", - "object-visit": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/color-convert": { - "version": "2.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/color-name": { - "version": "1.1.4", - "dev": true, - "license": "MIT" - }, - "node_modules/combined-stream": { - "version": "1.0.8", - "license": "MIT", - "dependencies": { - "delayed-stream": "~1.0.0" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/component-emitter": { - "version": "1.3.0", - "dev": true, - "license": "MIT" - }, - "node_modules/concat-map": { - "version": "0.0.1", - "dev": true, - "license": "MIT" - }, - "node_modules/content-disposition": { - "version": "0.5.4", - "license": "MIT", - "peer": true, - "dependencies": { - "safe-buffer": "5.2.1" - }, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/content-type": { - "version": "1.0.4", - "license": "MIT", - "peer": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/convert-source-map": { - "version": "1.9.0", - "dev": true, - "license": "MIT" - }, - "node_modules/cookie": { - "version": "0.5.0", - "license": "MIT", - "peer": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/cookie-signature": { - "version": "1.0.6", - "license": "MIT", - "peer": true - }, - "node_modules/copy-descriptor": { - "version": "0.1.1", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/cp-file": { - "version": "7.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "graceful-fs": "^4.1.2", - "make-dir": "^3.0.0", - "nested-error-stacks": "^2.0.0", - "p-event": "^4.1.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/cpy": { - "version": "8.1.2", - "dev": true, - "license": "MIT", - "dependencies": { - "arrify": "^2.0.1", - "cp-file": "^7.0.0", - "globby": "^9.2.0", - "has-glob": "^1.0.0", - "junk": "^3.1.0", - "nested-error-stacks": "^2.1.0", - "p-all": "^2.1.0", - "p-filter": "^2.1.0", - "p-map": "^3.0.0" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/cpy-cli": { - "version": "3.1.1", - "dev": true, - "license": "MIT", - "dependencies": { - "cpy": "^8.0.0", - "meow": "^6.1.1" - }, - "bin": { - "cpy": "cli.js" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/cross-spawn": { - "version": "7.0.3", - "dev": true, - "license": "MIT", - "dependencies": { - "path-key": "^3.1.0", - "shebang-command": "^2.0.0", - "which": "^2.0.1" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/cssom": { - "version": "0.4.4", - "dev": true, - "license": "MIT" - }, - "node_modules/cssstyle": { - "version": "2.3.0", - "dev": true, - "license": "MIT", - "dependencies": { - "cssom": "~0.3.6" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/cssstyle/node_modules/cssom": { - "version": "0.3.8", - "dev": true, - "license": "MIT" - }, - "node_modules/data-urls": { - "version": "2.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "abab": "^2.0.3", - "whatwg-mimetype": "^2.3.0", - "whatwg-url": "^8.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/debug": { - "version": "2.6.9", - "license": "MIT", - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/decamelize": { - "version": "1.2.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/decamelize-keys": { - "version": "1.1.1", - "dev": true, - "license": "MIT", - "dependencies": { - "decamelize": "^1.1.0", - "map-obj": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/decamelize-keys/node_modules/map-obj": { - "version": "1.0.1", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/decimal.js": { - "version": "10.4.3", - "dev": true, - "license": "MIT" - }, - "node_modules/decode-uri-component": { - "version": "0.2.2", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10" - } - }, - "node_modules/deep-is": { - "version": "0.1.4", - "dev": true, - "license": "MIT" - }, - "node_modules/deepmerge": { - "version": "4.3.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/define-properties": { - "version": "1.1.4", - "dev": true, - "license": "MIT", - "dependencies": { - "has-property-descriptors": "^1.0.0", - "object-keys": "^1.1.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/define-property": { - "version": "2.0.2", - "dev": true, - "license": "MIT", - "dependencies": { - "is-descriptor": "^1.0.2", - "isobject": "^3.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/delayed-stream": { - "version": "1.0.0", - "license": "MIT", - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/depd": { - "version": "2.0.0", - "license": "MIT", - "peer": true, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/destroy": { - "version": "1.2.0", - "license": "MIT", - "peer": true, - "engines": { - "node": ">= 0.8", - "npm": "1.2.8000 || >= 1.4.16" - } - }, - "node_modules/detect-newline": { - "version": "3.1.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/diff-sequences": { - "version": "26.6.2", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 10.14.2" - } - }, - "node_modules/dir-glob": { - "version": "2.2.2", - "dev": true, - "license": "MIT", - "dependencies": { - "path-type": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/domexception": { - "version": "2.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "webidl-conversions": "^5.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/domexception/node_modules/webidl-conversions": { - "version": "5.0.0", - "dev": true, - "license": "BSD-2-Clause", - "engines": { - "node": ">=8" - } - }, - "node_modules/ee-first": { - "version": "1.1.1", - "license": "MIT", - "peer": true - }, - "node_modules/electron-to-chromium": { - "version": "1.4.284", - "dev": true, - "license": "ISC" - }, - "node_modules/emittery": { - "version": "0.7.2", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sindresorhus/emittery?sponsor=1" - } - }, - "node_modules/emoji-regex": { - "version": "8.0.0", - "dev": true, - "license": "MIT" - }, - "node_modules/encodeurl": { - "version": "1.0.2", - "license": "MIT", - "peer": true, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/end-of-stream": { - "version": "1.4.4", - "dev": true, - "license": "MIT", - "dependencies": { - "once": "^1.4.0" - } - }, - "node_modules/error-ex": { - "version": "1.3.2", - "dev": true, - "license": "MIT", - "dependencies": { - "is-arrayish": "^0.2.1" - } - }, - "node_modules/es-abstract": { - "version": "1.21.1", - "dev": true, - "license": "MIT", - "dependencies": { - "available-typed-arrays": "^1.0.5", - "call-bind": "^1.0.2", - "es-set-tostringtag": "^2.0.1", - "es-to-primitive": "^1.2.1", - "function-bind": "^1.1.1", - "function.prototype.name": "^1.1.5", - "get-intrinsic": "^1.1.3", - "get-symbol-description": "^1.0.0", - "globalthis": "^1.0.3", - "gopd": "^1.0.1", - "has": "^1.0.3", - "has-property-descriptors": "^1.0.0", - "has-proto": "^1.0.1", - "has-symbols": "^1.0.3", - "internal-slot": "^1.0.4", - "is-array-buffer": "^3.0.1", - "is-callable": "^1.2.7", - "is-negative-zero": "^2.0.2", - "is-regex": "^1.1.4", - "is-shared-array-buffer": "^1.0.2", - "is-string": "^1.0.7", - "is-typed-array": "^1.1.10", - "is-weakref": "^1.0.2", - "object-inspect": "^1.12.2", - "object-keys": "^1.1.1", - "object.assign": "^4.1.4", - "regexp.prototype.flags": "^1.4.3", - "safe-regex-test": "^1.0.0", - "string.prototype.trimend": "^1.0.6", - "string.prototype.trimstart": "^1.0.6", - "typed-array-length": "^1.0.4", - "unbox-primitive": "^1.0.2", - "which-typed-array": "^1.1.9" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/es-set-tostringtag": { - "version": "2.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "get-intrinsic": "^1.1.3", - "has": "^1.0.3", - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/es-to-primitive": { - "version": "1.2.1", - "dev": true, - "license": "MIT", - "dependencies": { - "is-callable": "^1.1.4", - "is-date-object": "^1.0.1", - "is-symbol": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/escalade": { - "version": "3.1.1", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "node_modules/escape-html": { - "version": "1.0.3", - "license": "MIT", - "peer": true - }, - "node_modules/escape-string-regexp": { - "version": "2.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/escodegen": { - "version": "2.0.0", - "dev": true, - "license": "BSD-2-Clause", - "dependencies": { - "esprima": "^4.0.1", - "estraverse": "^5.2.0", - "esutils": "^2.0.2", - "optionator": "^0.8.1" - }, - "bin": { - "escodegen": "bin/escodegen.js", - "esgenerate": "bin/esgenerate.js" - }, - "engines": { - "node": ">=6.0" - }, - "optionalDependencies": { - "source-map": "~0.6.1" - } - }, - "node_modules/esprima": { - "version": "4.0.1", - "dev": true, - "license": "BSD-2-Clause", - "bin": { - "esparse": "bin/esparse.js", - "esvalidate": "bin/esvalidate.js" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/estraverse": { - "version": "5.3.0", - "dev": true, - "license": "BSD-2-Clause", - "engines": { - "node": ">=4.0" - } - }, - "node_modules/esutils": { - "version": "2.0.3", - "dev": true, - "license": "BSD-2-Clause", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/etag": { - "version": "1.8.1", - "license": "MIT", - "peer": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/exec-sh": { - "version": "0.3.6", - "dev": true, - "license": "MIT" - }, - "node_modules/execa": { - "version": "4.1.0", - "dev": true, - "license": "MIT", - "dependencies": { - "cross-spawn": "^7.0.0", - "get-stream": "^5.0.0", - "human-signals": "^1.1.1", - "is-stream": "^2.0.0", - "merge-stream": "^2.0.0", - "npm-run-path": "^4.0.0", - "onetime": "^5.1.0", - "signal-exit": "^3.0.2", - "strip-final-newline": "^2.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sindresorhus/execa?sponsor=1" - } - }, - "node_modules/exit": { - "version": "0.1.2", - "dev": true, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/expand-brackets": { - "version": "2.1.4", - "dev": true, - "license": "MIT", - "dependencies": { - "debug": "^2.3.3", - "define-property": "^0.2.5", - "extend-shallow": "^2.0.1", - "posix-character-classes": "^0.1.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/expand-brackets/node_modules/define-property": { - "version": "0.2.5", - "dev": true, - "license": "MIT", - "dependencies": { - "is-descriptor": "^0.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/expand-brackets/node_modules/extend-shallow": { - "version": "2.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "is-extendable": "^0.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/expand-brackets/node_modules/is-accessor-descriptor": { - "version": "0.1.6", - "dev": true, - "license": "MIT", - "dependencies": { - "kind-of": "^3.0.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/expand-brackets/node_modules/is-accessor-descriptor/node_modules/kind-of": { - "version": "3.2.2", - "dev": true, - "license": "MIT", - "dependencies": { - "is-buffer": "^1.1.5" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/expand-brackets/node_modules/is-data-descriptor": { - "version": "0.1.4", - "dev": true, - "license": "MIT", - "dependencies": { - "kind-of": "^3.0.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/expand-brackets/node_modules/is-data-descriptor/node_modules/kind-of": { - "version": "3.2.2", - "dev": true, - "license": "MIT", - "dependencies": { - "is-buffer": "^1.1.5" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/expand-brackets/node_modules/is-descriptor": { - "version": "0.1.6", - "dev": true, - "license": "MIT", - "dependencies": { - "is-accessor-descriptor": "^0.1.6", - "is-data-descriptor": "^0.1.4", - "kind-of": "^5.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/expand-brackets/node_modules/is-extendable": { - "version": "0.1.1", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/expand-brackets/node_modules/kind-of": { - "version": "5.1.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/expect": { - "version": "26.6.2", - "dev": true, - "license": "MIT", - "dependencies": { - "@jest/types": "^26.6.2", - "ansi-styles": "^4.0.0", - "jest-get-type": "^26.3.0", - "jest-matcher-utils": "^26.6.2", - "jest-message-util": "^26.6.2", - "jest-regex-util": "^26.0.0" - }, - "engines": { - "node": ">= 10.14.2" - } - }, - "node_modules/express": { - "version": "4.18.2", - "license": "MIT", - "peer": true, - "dependencies": { - "accepts": "~1.3.8", - "array-flatten": "1.1.1", - "body-parser": "1.20.1", - "content-disposition": "0.5.4", - "content-type": "~1.0.4", - "cookie": "0.5.0", - "cookie-signature": "1.0.6", - "debug": "2.6.9", - "depd": "2.0.0", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "etag": "~1.8.1", - "finalhandler": "1.2.0", - "fresh": "0.5.2", - "http-errors": "2.0.0", - "merge-descriptors": "1.0.1", - "methods": "~1.1.2", - "on-finished": "2.4.1", - "parseurl": "~1.3.3", - "path-to-regexp": "0.1.7", - "proxy-addr": "~2.0.7", - "qs": "6.11.0", - "range-parser": "~1.2.1", - "safe-buffer": "5.2.1", - "send": "0.18.0", - "serve-static": "1.15.0", - "setprototypeof": "1.2.0", - "statuses": "2.0.1", - "type-is": "~1.6.18", - "utils-merge": "1.0.1", - "vary": "~1.1.2" - }, - "engines": { - "node": ">= 0.10.0" - } - }, - "node_modules/extend-shallow": { - "version": "3.0.2", - "dev": true, - "license": "MIT", - "dependencies": { - "assign-symbols": "^1.0.0", - "is-extendable": "^1.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/extglob": { - "version": "2.0.4", - "dev": true, - "license": "MIT", - "dependencies": { - "array-unique": "^0.3.2", - "define-property": "^1.0.0", - "expand-brackets": "^2.1.4", - "extend-shallow": "^2.0.1", - "fragment-cache": "^0.2.1", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/extglob/node_modules/define-property": { - "version": "1.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "is-descriptor": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/extglob/node_modules/extend-shallow": { - "version": "2.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "is-extendable": "^0.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/extglob/node_modules/is-extendable": { - "version": "0.1.1", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/fast-glob": { - "version": "2.2.7", - "dev": true, - "license": "MIT", - "dependencies": { - "@mrmlnc/readdir-enhanced": "^2.2.1", - "@nodelib/fs.stat": "^1.1.2", - "glob-parent": "^3.1.0", - "is-glob": "^4.0.0", - "merge2": "^1.2.3", - "micromatch": "^3.1.10" - }, - "engines": { - "node": ">=4.0.0" - } - }, - "node_modules/fast-json-stable-stringify": { - "version": "2.1.0", - "dev": true, - "license": "MIT" - }, - "node_modules/fast-levenshtein": { - "version": "2.0.6", - "dev": true, - "license": "MIT" - }, - "node_modules/fb-watchman": { - "version": "2.0.2", - "dev": true, - "license": "Apache-2.0", - "dependencies": { - "bser": "2.1.1" - } - }, - "node_modules/fill-range": { - "version": "4.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "extend-shallow": "^2.0.1", - "is-number": "^3.0.0", - "repeat-string": "^1.6.1", - "to-regex-range": "^2.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/fill-range/node_modules/extend-shallow": { - "version": "2.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "is-extendable": "^0.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/fill-range/node_modules/is-extendable": { - "version": "0.1.1", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/finalhandler": { - "version": "1.2.0", - "license": "MIT", - "peer": true, - "dependencies": { - "debug": "2.6.9", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "on-finished": "2.4.1", - "parseurl": "~1.3.3", - "statuses": "2.0.1", - "unpipe": "~1.0.0" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/find-up": { - "version": "4.1.0", - "dev": true, - "license": "MIT", - "dependencies": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/for-each": { - "version": "0.3.3", - "dev": true, - "license": "MIT", - "dependencies": { - "is-callable": "^1.1.3" - } - }, - "node_modules/for-in": { - "version": "1.0.2", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/form-data": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz", - "integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==", - "dependencies": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.8", - "mime-types": "^2.1.12" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/forwarded": { - "version": "0.2.0", - "license": "MIT", - "peer": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/fragment-cache": { - "version": "0.2.1", - "dev": true, - "license": "MIT", - "dependencies": { - "map-cache": "^0.2.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/fresh": { - "version": "0.5.2", - "license": "MIT", - "peer": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/fs.realpath": { - "version": "1.0.0", - "dev": true, - "license": "ISC" - }, - "node_modules/fsevents": { - "version": "2.3.2", - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": "^8.16.0 || ^10.6.0 || >=11.0.0" - } - }, - "node_modules/function-bind": { - "version": "1.1.1", - "license": "MIT" - }, - "node_modules/function.prototype.name": { - "version": "1.1.5", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3", - "es-abstract": "^1.19.0", - "functions-have-names": "^1.2.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/functions-have-names": { - "version": "1.2.3", - "dev": true, - "license": "MIT", - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/gensync": { - "version": "1.0.0-beta.2", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/get-caller-file": { - "version": "2.0.5", - "dev": true, - "license": "ISC", - "engines": { - "node": "6.* || 8.* || >= 10.*" - } - }, - "node_modules/get-intrinsic": { - "version": "1.2.0", - "license": "MIT", - "dependencies": { - "function-bind": "^1.1.1", - "has": "^1.0.3", - "has-symbols": "^1.0.3" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/get-package-type": { - "version": "0.1.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8.0.0" - } - }, - "node_modules/get-stream": { - "version": "5.2.0", - "dev": true, - "license": "MIT", - "dependencies": { - "pump": "^3.0.0" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/get-symbol-description": { - "version": "1.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.1.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/get-value": { - "version": "2.0.6", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/glob": { - "version": "7.2.3", - "dev": true, - "license": "ISC", - "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - }, - "engines": { - "node": "*" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/glob-parent": { - "version": "3.1.0", - "dev": true, - "license": "ISC", - "dependencies": { - "is-glob": "^3.1.0", - "path-dirname": "^1.0.0" - } - }, - "node_modules/glob-parent/node_modules/is-glob": { - "version": "3.1.0", - "dev": true, - "license": "MIT", - "dependencies": { - "is-extglob": "^2.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/glob-to-regexp": { - "version": "0.3.0", - "dev": true, - "license": "BSD" - }, - "node_modules/globals": { - "version": "11.12.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=4" - } - }, - "node_modules/globalthis": { - "version": "1.0.3", - "dev": true, - "license": "MIT", - "dependencies": { - "define-properties": "^1.1.3" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/globby": { - "version": "9.2.0", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/glob": "^7.1.1", - "array-union": "^1.0.2", - "dir-glob": "^2.2.2", - "fast-glob": "^2.2.6", - "glob": "^7.1.3", - "ignore": "^4.0.3", - "pify": "^4.0.1", - "slash": "^2.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/gopd": { - "version": "1.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "get-intrinsic": "^1.1.3" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/graceful-fs": { - "version": "4.2.10", - "dev": true, - "license": "ISC" - }, - "node_modules/growly": { - "version": "1.3.0", - "dev": true, - "license": "MIT", - "optional": true - }, - "node_modules/hard-rejection": { - "version": "2.1.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "node_modules/has": { - "version": "1.0.3", - "license": "MIT", - "dependencies": { - "function-bind": "^1.1.1" - }, - "engines": { - "node": ">= 0.4.0" - } - }, - "node_modules/has-bigints": { - "version": "1.0.2", - "dev": true, - "license": "MIT", - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/has-flag": { - "version": "4.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/has-glob": { - "version": "1.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "is-glob": "^3.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/has-glob/node_modules/is-glob": { - "version": "3.1.0", - "dev": true, - "license": "MIT", - "dependencies": { - "is-extglob": "^2.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/has-property-descriptors": { - "version": "1.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "get-intrinsic": "^1.1.1" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/has-proto": { - "version": "1.0.1", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/has-symbols": { - "version": "1.0.3", - "license": "MIT", - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/has-tostringtag": { - "version": "1.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "has-symbols": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/has-value": { - "version": "1.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "get-value": "^2.0.6", - "has-values": "^1.0.0", - "isobject": "^3.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/has-values": { - "version": "1.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "is-number": "^3.0.0", - "kind-of": "^4.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/has-values/node_modules/kind-of": { - "version": "4.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "is-buffer": "^1.1.5" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/hosted-git-info": { - "version": "2.8.9", - "dev": true, - "license": "ISC" - }, - "node_modules/html-encoding-sniffer": { - "version": "2.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "whatwg-encoding": "^1.0.5" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/html-escaper": { - "version": "2.0.2", - "dev": true, - "license": "MIT" - }, - "node_modules/http-errors": { - "version": "2.0.0", - "license": "MIT", - "peer": true, - "dependencies": { - "depd": "2.0.0", - "inherits": "2.0.4", - "setprototypeof": "1.2.0", - "statuses": "2.0.1", - "toidentifier": "1.0.1" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/http-proxy-agent": { - "version": "4.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "@tootallnate/once": "1", - "agent-base": "6", - "debug": "4" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/http-proxy-agent/node_modules/debug": { - "version": "4.3.4", - "dev": true, - "license": "MIT", - "dependencies": { - "ms": "2.1.2" - }, - "engines": { - "node": ">=6.0" - }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } - } - }, - "node_modules/http-proxy-agent/node_modules/ms": { - "version": "2.1.2", - "dev": true, - "license": "MIT" - }, - "node_modules/https-proxy-agent": { - "version": "5.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "agent-base": "6", - "debug": "4" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/https-proxy-agent/node_modules/debug": { - "version": "4.3.4", - "dev": true, - "license": "MIT", - "dependencies": { - "ms": "2.1.2" - }, - "engines": { - "node": ">=6.0" - }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } - } - }, - "node_modules/https-proxy-agent/node_modules/ms": { - "version": "2.1.2", - "dev": true, - "license": "MIT" - }, - "node_modules/human-signals": { - "version": "1.1.1", - "dev": true, - "license": "Apache-2.0", - "engines": { - "node": ">=8.12.0" - } - }, - "node_modules/iconv-lite": { - "version": "0.4.24", - "license": "MIT", - "dependencies": { - "safer-buffer": ">= 2.1.2 < 3" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/ignore": { - "version": "4.0.6", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 4" - } - }, - "node_modules/import-local": { - "version": "3.1.0", - "dev": true, - "license": "MIT", - "dependencies": { - "pkg-dir": "^4.2.0", - "resolve-cwd": "^3.0.0" - }, - "bin": { - "import-local-fixture": "fixtures/cli.js" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/imurmurhash": { - "version": "0.1.4", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.8.19" - } - }, - "node_modules/indent-string": { - "version": "4.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/inflight": { - "version": "1.0.6", - "dev": true, - "license": "ISC", - "dependencies": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "node_modules/inherits": { - "version": "2.0.4", - "license": "ISC" - }, - "node_modules/internal-slot": { - "version": "1.0.4", - "dev": true, - "license": "MIT", - "dependencies": { - "get-intrinsic": "^1.1.3", - "has": "^1.0.3", - "side-channel": "^1.0.4" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/ipaddr.js": { - "version": "1.9.1", - "license": "MIT", - "peer": true, - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/is-accessor-descriptor": { - "version": "1.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "kind-of": "^6.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-array-buffer": { - "version": "3.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.1.3", - "is-typed-array": "^1.1.10" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-arrayish": { - "version": "0.2.1", - "dev": true, - "license": "MIT" - }, - "node_modules/is-bigint": { - "version": "1.0.4", - "dev": true, - "license": "MIT", - "dependencies": { - "has-bigints": "^1.0.1" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-boolean-object": { - "version": "1.1.2", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-buffer": { - "version": "1.1.6", - "dev": true, - "license": "MIT" - }, - "node_modules/is-callable": { - "version": "1.2.7", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-ci": { - "version": "2.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "ci-info": "^2.0.0" - }, - "bin": { - "is-ci": "bin.js" - } - }, - "node_modules/is-core-module": { - "version": "2.11.0", - "dev": true, - "license": "MIT", - "dependencies": { - "has": "^1.0.3" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-data-descriptor": { - "version": "1.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "kind-of": "^6.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-date-object": { - "version": "1.0.5", - "dev": true, - "license": "MIT", - "dependencies": { - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-descriptor": { - "version": "1.0.2", - "dev": true, - "license": "MIT", - "dependencies": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-docker": { - "version": "2.2.1", - "dev": true, - "license": "MIT", - "optional": true, - "bin": { - "is-docker": "cli.js" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/is-extendable": { - "version": "1.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "is-plain-object": "^2.0.4" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-extglob": { - "version": "2.1.1", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-fullwidth-code-point": { - "version": "3.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/is-generator-fn": { - "version": "2.1.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "node_modules/is-glob": { - "version": "4.0.3", - "dev": true, - "license": "MIT", - "dependencies": { - "is-extglob": "^2.1.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-negative-zero": { - "version": "2.0.2", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-number": { - "version": "3.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "kind-of": "^3.0.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-number-object": { - "version": "1.0.7", - "dev": true, - "license": "MIT", - "dependencies": { - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-number/node_modules/kind-of": { - "version": "3.2.2", - "dev": true, - "license": "MIT", - "dependencies": { - "is-buffer": "^1.1.5" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-plain-obj": { - "version": "1.1.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-plain-object": { - "version": "2.0.4", - "dev": true, - "license": "MIT", - "dependencies": { - "isobject": "^3.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-potential-custom-element-name": { - "version": "1.0.1", - "dev": true, - "license": "MIT" - }, - "node_modules/is-regex": { - "version": "1.1.4", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-shared-array-buffer": { - "version": "1.0.2", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.2" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-stream": { - "version": "2.0.1", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/is-string": { - "version": "1.0.7", - "dev": true, - "license": "MIT", - "dependencies": { - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-symbol": { - "version": "1.0.4", - "dev": true, - "license": "MIT", - "dependencies": { - "has-symbols": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-typed-array": { - "version": "1.1.10", - "dev": true, - "license": "MIT", - "dependencies": { - "available-typed-arrays": "^1.0.5", - "call-bind": "^1.0.2", - "for-each": "^0.3.3", - "gopd": "^1.0.1", - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-typedarray": { - "version": "1.0.0", - "dev": true, - "license": "MIT" - }, - "node_modules/is-weakref": { - "version": "1.0.2", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.2" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-windows": { - "version": "1.0.2", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-wsl": { - "version": "2.2.0", - "dev": true, - "license": "MIT", - "optional": true, - "dependencies": { - "is-docker": "^2.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/isarray": { - "version": "1.0.0", - "dev": true, - "license": "MIT" - }, - "node_modules/isexe": { - "version": "2.0.0", - "dev": true, - "license": "ISC" - }, - "node_modules/isobject": { - "version": "3.0.1", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/istanbul-lib-coverage": { - "version": "3.2.0", - "dev": true, - "license": "BSD-3-Clause", - "engines": { - "node": ">=8" - } - }, - "node_modules/istanbul-lib-instrument": { - "version": "4.0.3", - "dev": true, - "license": "BSD-3-Clause", - "dependencies": { - "@babel/core": "^7.7.5", - "@istanbuljs/schema": "^0.1.2", - "istanbul-lib-coverage": "^3.0.0", - "semver": "^6.3.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/istanbul-lib-report": { - "version": "3.0.0", - "dev": true, - "license": "BSD-3-Clause", - "dependencies": { - "istanbul-lib-coverage": "^3.0.0", - "make-dir": "^3.0.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/istanbul-lib-source-maps": { - "version": "4.0.1", - "dev": true, - "license": "BSD-3-Clause", - "dependencies": { - "debug": "^4.1.1", - "istanbul-lib-coverage": "^3.0.0", - "source-map": "^0.6.1" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/istanbul-lib-source-maps/node_modules/debug": { - "version": "4.3.4", - "dev": true, - "license": "MIT", - "dependencies": { - "ms": "2.1.2" - }, - "engines": { - "node": ">=6.0" - }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } - } - }, - "node_modules/istanbul-lib-source-maps/node_modules/ms": { - "version": "2.1.2", - "dev": true, - "license": "MIT" - }, - "node_modules/istanbul-reports": { - "version": "3.1.5", - "dev": true, - "license": "BSD-3-Clause", - "dependencies": { - "html-escaper": "^2.0.0", - "istanbul-lib-report": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/jest": { - "version": "26.6.3", - "dev": true, - "license": "MIT", - "dependencies": { - "@jest/core": "^26.6.3", - "import-local": "^3.0.2", - "jest-cli": "^26.6.3" - }, - "bin": { - "jest": "bin/jest.js" - }, - "engines": { - "node": ">= 10.14.2" - } - }, - "node_modules/jest-changed-files": { - "version": "26.6.2", - "dev": true, - "license": "MIT", - "dependencies": { - "@jest/types": "^26.6.2", - "execa": "^4.0.0", - "throat": "^5.0.0" - }, - "engines": { - "node": ">= 10.14.2" - } - }, - "node_modules/jest-cli": { - "version": "26.6.3", - "dev": true, - "license": "MIT", - "dependencies": { - "@jest/core": "^26.6.3", - "@jest/test-result": "^26.6.2", - "@jest/types": "^26.6.2", - "chalk": "^4.0.0", - "exit": "^0.1.2", - "graceful-fs": "^4.2.4", - "import-local": "^3.0.2", - "is-ci": "^2.0.0", - "jest-config": "^26.6.3", - "jest-util": "^26.6.2", - "jest-validate": "^26.6.2", - "prompts": "^2.0.1", - "yargs": "^15.4.1" - }, - "bin": { - "jest": "bin/jest.js" - }, - "engines": { - "node": ">= 10.14.2" - } - }, - "node_modules/jest-config": { - "version": "26.6.3", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/core": "^7.1.0", - "@jest/test-sequencer": "^26.6.3", - "@jest/types": "^26.6.2", - "babel-jest": "^26.6.3", - "chalk": "^4.0.0", - "deepmerge": "^4.2.2", - "glob": "^7.1.1", - "graceful-fs": "^4.2.4", - "jest-environment-jsdom": "^26.6.2", - "jest-environment-node": "^26.6.2", - "jest-get-type": "^26.3.0", - "jest-jasmine2": "^26.6.3", - "jest-regex-util": "^26.0.0", - "jest-resolve": "^26.6.2", - "jest-util": "^26.6.2", - "jest-validate": "^26.6.2", - "micromatch": "^4.0.2", - "pretty-format": "^26.6.2" - }, - "engines": { - "node": ">= 10.14.2" - }, - "peerDependencies": { - "ts-node": ">=9.0.0" - }, - "peerDependenciesMeta": { - "ts-node": { - "optional": true - } - } - }, - "node_modules/jest-config/node_modules/braces": { - "version": "3.0.2", - "dev": true, - "license": "MIT", - "dependencies": { - "fill-range": "^7.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/jest-config/node_modules/fill-range": { - "version": "7.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "to-regex-range": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/jest-config/node_modules/is-number": { - "version": "7.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.12.0" - } - }, - "node_modules/jest-config/node_modules/micromatch": { - "version": "4.0.5", - "dev": true, - "license": "MIT", - "dependencies": { - "braces": "^3.0.2", - "picomatch": "^2.3.1" - }, - "engines": { - "node": ">=8.6" - } - }, - "node_modules/jest-config/node_modules/to-regex-range": { - "version": "5.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "is-number": "^7.0.0" - }, - "engines": { - "node": ">=8.0" - } - }, - "node_modules/jest-diff": { - "version": "26.6.2", - "dev": true, - "license": "MIT", - "dependencies": { - "chalk": "^4.0.0", - "diff-sequences": "^26.6.2", - "jest-get-type": "^26.3.0", - "pretty-format": "^26.6.2" - }, - "engines": { - "node": ">= 10.14.2" - } - }, - "node_modules/jest-docblock": { - "version": "26.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "detect-newline": "^3.0.0" - }, - "engines": { - "node": ">= 10.14.2" - } - }, - "node_modules/jest-each": { - "version": "26.6.2", - "dev": true, - "license": "MIT", - "dependencies": { - "@jest/types": "^26.6.2", - "chalk": "^4.0.0", - "jest-get-type": "^26.3.0", - "jest-util": "^26.6.2", - "pretty-format": "^26.6.2" - }, - "engines": { - "node": ">= 10.14.2" - } - }, - "node_modules/jest-environment-jsdom": { - "version": "26.6.2", - "dev": true, - "license": "MIT", - "dependencies": { - "@jest/environment": "^26.6.2", - "@jest/fake-timers": "^26.6.2", - "@jest/types": "^26.6.2", - "@types/node": "*", - "jest-mock": "^26.6.2", - "jest-util": "^26.6.2", - "jsdom": "^16.4.0" - }, - "engines": { - "node": ">= 10.14.2" - } - }, - "node_modules/jest-environment-node": { - "version": "26.6.2", - "dev": true, - "license": "MIT", - "dependencies": { - "@jest/environment": "^26.6.2", - "@jest/fake-timers": "^26.6.2", - "@jest/types": "^26.6.2", - "@types/node": "*", - "jest-mock": "^26.6.2", - "jest-util": "^26.6.2" - }, - "engines": { - "node": ">= 10.14.2" - } - }, - "node_modules/jest-get-type": { - "version": "26.3.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 10.14.2" - } - }, - "node_modules/jest-haste-map": { - "version": "26.6.2", - "dev": true, - "license": "MIT", - "dependencies": { - "@jest/types": "^26.6.2", - "@types/graceful-fs": "^4.1.2", - "@types/node": "*", - "anymatch": "^3.0.3", - "fb-watchman": "^2.0.0", - "graceful-fs": "^4.2.4", - "jest-regex-util": "^26.0.0", - "jest-serializer": "^26.6.2", - "jest-util": "^26.6.2", - "jest-worker": "^26.6.2", - "micromatch": "^4.0.2", - "sane": "^4.0.3", - "walker": "^1.0.7" - }, - "engines": { - "node": ">= 10.14.2" - }, - "optionalDependencies": { - "fsevents": "^2.1.2" - } - }, - "node_modules/jest-haste-map/node_modules/braces": { - "version": "3.0.2", - "dev": true, - "license": "MIT", - "dependencies": { - "fill-range": "^7.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/jest-haste-map/node_modules/fill-range": { - "version": "7.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "to-regex-range": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/jest-haste-map/node_modules/is-number": { - "version": "7.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.12.0" - } - }, - "node_modules/jest-haste-map/node_modules/micromatch": { - "version": "4.0.5", - "dev": true, - "license": "MIT", - "dependencies": { - "braces": "^3.0.2", - "picomatch": "^2.3.1" - }, - "engines": { - "node": ">=8.6" - } - }, - "node_modules/jest-haste-map/node_modules/to-regex-range": { - "version": "5.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "is-number": "^7.0.0" - }, - "engines": { - "node": ">=8.0" - } - }, - "node_modules/jest-jasmine2": { - "version": "26.6.3", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/traverse": "^7.1.0", - "@jest/environment": "^26.6.2", - "@jest/source-map": "^26.6.2", - "@jest/test-result": "^26.6.2", - "@jest/types": "^26.6.2", - "@types/node": "*", - "chalk": "^4.0.0", - "co": "^4.6.0", - "expect": "^26.6.2", - "is-generator-fn": "^2.0.0", - "jest-each": "^26.6.2", - "jest-matcher-utils": "^26.6.2", - "jest-message-util": "^26.6.2", - "jest-runtime": "^26.6.3", - "jest-snapshot": "^26.6.2", - "jest-util": "^26.6.2", - "pretty-format": "^26.6.2", - "throat": "^5.0.0" - }, - "engines": { - "node": ">= 10.14.2" - } - }, - "node_modules/jest-leak-detector": { - "version": "26.6.2", - "dev": true, - "license": "MIT", - "dependencies": { - "jest-get-type": "^26.3.0", - "pretty-format": "^26.6.2" - }, - "engines": { - "node": ">= 10.14.2" - } - }, - "node_modules/jest-matcher-utils": { - "version": "26.6.2", - "dev": true, - "license": "MIT", - "dependencies": { - "chalk": "^4.0.0", - "jest-diff": "^26.6.2", - "jest-get-type": "^26.3.0", - "pretty-format": "^26.6.2" - }, - "engines": { - "node": ">= 10.14.2" - } - }, - "node_modules/jest-message-util": { - "version": "26.6.2", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/code-frame": "^7.0.0", - "@jest/types": "^26.6.2", - "@types/stack-utils": "^2.0.0", - "chalk": "^4.0.0", - "graceful-fs": "^4.2.4", - "micromatch": "^4.0.2", - "pretty-format": "^26.6.2", - "slash": "^3.0.0", - "stack-utils": "^2.0.2" - }, - "engines": { - "node": ">= 10.14.2" - } - }, - "node_modules/jest-message-util/node_modules/braces": { - "version": "3.0.2", - "dev": true, - "license": "MIT", - "dependencies": { - "fill-range": "^7.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/jest-message-util/node_modules/fill-range": { - "version": "7.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "to-regex-range": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/jest-message-util/node_modules/is-number": { - "version": "7.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.12.0" - } - }, - "node_modules/jest-message-util/node_modules/micromatch": { - "version": "4.0.5", - "dev": true, - "license": "MIT", - "dependencies": { - "braces": "^3.0.2", - "picomatch": "^2.3.1" - }, - "engines": { - "node": ">=8.6" - } - }, - "node_modules/jest-message-util/node_modules/slash": { - "version": "3.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/jest-message-util/node_modules/to-regex-range": { - "version": "5.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "is-number": "^7.0.0" - }, - "engines": { - "node": ">=8.0" - } - }, - "node_modules/jest-mock": { - "version": "26.6.2", - "dev": true, - "license": "MIT", - "dependencies": { - "@jest/types": "^26.6.2", - "@types/node": "*" - }, - "engines": { - "node": ">= 10.14.2" - } - }, - "node_modules/jest-pnp-resolver": { - "version": "1.2.3", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6" - }, - "peerDependencies": { - "jest-resolve": "*" - }, - "peerDependenciesMeta": { - "jest-resolve": { - "optional": true - } - } - }, - "node_modules/jest-regex-util": { - "version": "26.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 10.14.2" - } - }, - "node_modules/jest-resolve": { - "version": "26.6.2", - "dev": true, - "license": "MIT", - "dependencies": { - "@jest/types": "^26.6.2", - "chalk": "^4.0.0", - "graceful-fs": "^4.2.4", - "jest-pnp-resolver": "^1.2.2", - "jest-util": "^26.6.2", - "read-pkg-up": "^7.0.1", - "resolve": "^1.18.1", - "slash": "^3.0.0" - }, - "engines": { - "node": ">= 10.14.2" - } - }, - "node_modules/jest-resolve-dependencies": { - "version": "26.6.3", - "dev": true, - "license": "MIT", - "dependencies": { - "@jest/types": "^26.6.2", - "jest-regex-util": "^26.0.0", - "jest-snapshot": "^26.6.2" - }, - "engines": { - "node": ">= 10.14.2" - } - }, - "node_modules/jest-resolve/node_modules/slash": { - "version": "3.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/jest-runner": { - "version": "26.6.3", - "dev": true, - "license": "MIT", - "dependencies": { - "@jest/console": "^26.6.2", - "@jest/environment": "^26.6.2", - "@jest/test-result": "^26.6.2", - "@jest/types": "^26.6.2", - "@types/node": "*", - "chalk": "^4.0.0", - "emittery": "^0.7.1", - "exit": "^0.1.2", - "graceful-fs": "^4.2.4", - "jest-config": "^26.6.3", - "jest-docblock": "^26.0.0", - "jest-haste-map": "^26.6.2", - "jest-leak-detector": "^26.6.2", - "jest-message-util": "^26.6.2", - "jest-resolve": "^26.6.2", - "jest-runtime": "^26.6.3", - "jest-util": "^26.6.2", - "jest-worker": "^26.6.2", - "source-map-support": "^0.5.6", - "throat": "^5.0.0" - }, - "engines": { - "node": ">= 10.14.2" - } - }, - "node_modules/jest-runtime": { - "version": "26.6.3", - "dev": true, - "license": "MIT", - "dependencies": { - "@jest/console": "^26.6.2", - "@jest/environment": "^26.6.2", - "@jest/fake-timers": "^26.6.2", - "@jest/globals": "^26.6.2", - "@jest/source-map": "^26.6.2", - "@jest/test-result": "^26.6.2", - "@jest/transform": "^26.6.2", - "@jest/types": "^26.6.2", - "@types/yargs": "^15.0.0", - "chalk": "^4.0.0", - "cjs-module-lexer": "^0.6.0", - "collect-v8-coverage": "^1.0.0", - "exit": "^0.1.2", - "glob": "^7.1.3", - "graceful-fs": "^4.2.4", - "jest-config": "^26.6.3", - "jest-haste-map": "^26.6.2", - "jest-message-util": "^26.6.2", - "jest-mock": "^26.6.2", - "jest-regex-util": "^26.0.0", - "jest-resolve": "^26.6.2", - "jest-snapshot": "^26.6.2", - "jest-util": "^26.6.2", - "jest-validate": "^26.6.2", - "slash": "^3.0.0", - "strip-bom": "^4.0.0", - "yargs": "^15.4.1" - }, - "bin": { - "jest-runtime": "bin/jest-runtime.js" - }, - "engines": { - "node": ">= 10.14.2" - } - }, - "node_modules/jest-runtime/node_modules/slash": { - "version": "3.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/jest-serializer": { - "version": "26.6.2", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/node": "*", - "graceful-fs": "^4.2.4" - }, - "engines": { - "node": ">= 10.14.2" - } - }, - "node_modules/jest-snapshot": { - "version": "26.6.2", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/types": "^7.0.0", - "@jest/types": "^26.6.2", - "@types/babel__traverse": "^7.0.4", - "@types/prettier": "^2.0.0", - "chalk": "^4.0.0", - "expect": "^26.6.2", - "graceful-fs": "^4.2.4", - "jest-diff": "^26.6.2", - "jest-get-type": "^26.3.0", - "jest-haste-map": "^26.6.2", - "jest-matcher-utils": "^26.6.2", - "jest-message-util": "^26.6.2", - "jest-resolve": "^26.6.2", - "natural-compare": "^1.4.0", - "pretty-format": "^26.6.2", - "semver": "^7.3.2" - }, - "engines": { - "node": ">= 10.14.2" - } - }, - "node_modules/jest-snapshot/node_modules/lru-cache": { - "version": "6.0.0", - "dev": true, - "license": "ISC", - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/jest-snapshot/node_modules/semver": { - "version": "7.3.8", - "dev": true, - "license": "ISC", - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/jest-snapshot/node_modules/yallist": { - "version": "4.0.0", - "dev": true, - "license": "ISC" - }, - "node_modules/jest-util": { - "version": "26.6.2", - "dev": true, - "license": "MIT", - "dependencies": { - "@jest/types": "^26.6.2", - "@types/node": "*", - "chalk": "^4.0.0", - "graceful-fs": "^4.2.4", - "is-ci": "^2.0.0", - "micromatch": "^4.0.2" - }, - "engines": { - "node": ">= 10.14.2" - } - }, - "node_modules/jest-util/node_modules/braces": { - "version": "3.0.2", - "dev": true, - "license": "MIT", - "dependencies": { - "fill-range": "^7.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/jest-util/node_modules/fill-range": { - "version": "7.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "to-regex-range": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/jest-util/node_modules/is-number": { - "version": "7.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.12.0" - } - }, - "node_modules/jest-util/node_modules/micromatch": { - "version": "4.0.5", - "dev": true, - "license": "MIT", - "dependencies": { - "braces": "^3.0.2", - "picomatch": "^2.3.1" - }, - "engines": { - "node": ">=8.6" - } - }, - "node_modules/jest-util/node_modules/to-regex-range": { - "version": "5.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "is-number": "^7.0.0" - }, - "engines": { - "node": ">=8.0" - } - }, - "node_modules/jest-validate": { - "version": "26.6.2", - "dev": true, - "license": "MIT", - "dependencies": { - "@jest/types": "^26.6.2", - "camelcase": "^6.0.0", - "chalk": "^4.0.0", - "jest-get-type": "^26.3.0", - "leven": "^3.1.0", - "pretty-format": "^26.6.2" - }, - "engines": { - "node": ">= 10.14.2" - } - }, - "node_modules/jest-validate/node_modules/camelcase": { - "version": "6.3.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/jest-watcher": { - "version": "26.6.2", - "dev": true, - "license": "MIT", - "dependencies": { - "@jest/test-result": "^26.6.2", - "@jest/types": "^26.6.2", - "@types/node": "*", - "ansi-escapes": "^4.2.1", - "chalk": "^4.0.0", - "jest-util": "^26.6.2", - "string-length": "^4.0.1" - }, - "engines": { - "node": ">= 10.14.2" - } - }, - "node_modules/jest-worker": { - "version": "26.6.2", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/node": "*", - "merge-stream": "^2.0.0", - "supports-color": "^7.0.0" - }, - "engines": { - "node": ">= 10.13.0" - } - }, - "node_modules/js-tokens": { - "version": "4.0.0", - "dev": true, - "license": "MIT" - }, - "node_modules/js-yaml": { - "version": "3.14.1", - "dev": true, - "license": "MIT", - "dependencies": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" - }, - "bin": { - "js-yaml": "bin/js-yaml.js" - } - }, - "node_modules/jsdom": { - "version": "16.7.0", - "dev": true, - "license": "MIT", - "dependencies": { - "abab": "^2.0.5", - "acorn": "^8.2.4", - "acorn-globals": "^6.0.0", - "cssom": "^0.4.4", - "cssstyle": "^2.3.0", - "data-urls": "^2.0.0", - "decimal.js": "^10.2.1", - "domexception": "^2.0.1", - "escodegen": "^2.0.0", - "form-data": "^3.0.0", - "html-encoding-sniffer": "^2.0.1", - "http-proxy-agent": "^4.0.1", - "https-proxy-agent": "^5.0.0", - "is-potential-custom-element-name": "^1.0.1", - "nwsapi": "^2.2.0", - "parse5": "6.0.1", - "saxes": "^5.0.1", - "symbol-tree": "^3.2.4", - "tough-cookie": "^4.0.0", - "w3c-hr-time": "^1.0.2", - "w3c-xmlserializer": "^2.0.0", - "webidl-conversions": "^6.1.0", - "whatwg-encoding": "^1.0.5", - "whatwg-mimetype": "^2.3.0", - "whatwg-url": "^8.5.0", - "ws": "^7.4.6", - "xml-name-validator": "^3.0.0" - }, - "engines": { - "node": ">=10" - }, - "peerDependencies": { - "canvas": "^2.5.0" - }, - "peerDependenciesMeta": { - "canvas": { - "optional": true - } - } - }, - "node_modules/jsdom/node_modules/form-data": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-3.0.1.tgz", - "integrity": "sha512-RHkBKtLWUVwd7SqRIvCZMEvAMoGUp0XU+seQiZejj0COz3RI3hWP4sCv3gZWWLjJTd7rGwcsF5eKZGii0r/hbg==", - "dev": true, - "dependencies": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.8", - "mime-types": "^2.1.12" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/jsesc": { - "version": "2.5.2", - "dev": true, - "license": "MIT", - "bin": { - "jsesc": "bin/jsesc" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/json-parse-better-errors": { - "version": "1.0.2", - "dev": true, - "license": "MIT" - }, - "node_modules/json-parse-even-better-errors": { - "version": "2.3.1", - "dev": true, - "license": "MIT" - }, - "node_modules/json-stringify-safe": { - "version": "5.0.1", - "dev": true, - "license": "ISC" - }, - "node_modules/json5": { - "version": "2.2.3", - "dev": true, - "license": "MIT", - "bin": { - "json5": "lib/cli.js" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/junk": { - "version": "3.1.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/kind-of": { - "version": "6.0.3", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/kleur": { - "version": "3.0.3", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "node_modules/leven": { - "version": "3.1.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "node_modules/levn": { - "version": "0.3.0", - "dev": true, - "license": "MIT", - "dependencies": { - "prelude-ls": "~1.1.2", - "type-check": "~0.3.2" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/lines-and-columns": { - "version": "1.2.4", - "dev": true, - "license": "MIT" - }, - "node_modules/load-json-file": { - "version": "4.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "graceful-fs": "^4.1.2", - "parse-json": "^4.0.0", - "pify": "^3.0.0", - "strip-bom": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/load-json-file/node_modules/pify": { - "version": "3.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=4" - } - }, - "node_modules/load-json-file/node_modules/strip-bom": { - "version": "3.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=4" - } - }, - "node_modules/locate-path": { - "version": "5.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "p-locate": "^4.1.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/lodash": { - "version": "4.17.21", - "dev": true, - "license": "MIT" - }, - "node_modules/lru-cache": { - "version": "5.1.1", - "dev": true, - "license": "ISC", - "dependencies": { - "yallist": "^3.0.2" - } - }, - "node_modules/make-dir": { - "version": "3.1.0", - "dev": true, - "license": "MIT", - "dependencies": { - "semver": "^6.0.0" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/make-error": { - "version": "1.3.6", - "dev": true, - "license": "ISC" - }, - "node_modules/makeerror": { - "version": "1.0.12", - "dev": true, - "license": "BSD-3-Clause", - "dependencies": { - "tmpl": "1.0.5" - } - }, - "node_modules/map-cache": { - "version": "0.2.2", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/map-obj": { - "version": "4.3.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/map-visit": { - "version": "1.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "object-visit": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/media-typer": { - "version": "0.3.0", - "license": "MIT", - "peer": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/memorystream": { - "version": "0.3.1", - "dev": true, - "engines": { - "node": ">= 0.10.0" - } - }, - "node_modules/meow": { - "version": "6.1.1", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/minimist": "^1.2.0", - "camelcase-keys": "^6.2.2", - "decamelize-keys": "^1.1.0", - "hard-rejection": "^2.1.0", - "minimist-options": "^4.0.2", - "normalize-package-data": "^2.5.0", - "read-pkg-up": "^7.0.1", - "redent": "^3.0.0", - "trim-newlines": "^3.0.0", - "type-fest": "^0.13.1", - "yargs-parser": "^18.1.3" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/meow/node_modules/type-fest": { - "version": "0.13.1", - "dev": true, - "license": "(MIT OR CC0-1.0)", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/merge-descriptors": { - "version": "1.0.1", - "license": "MIT", - "peer": true - }, - "node_modules/merge-stream": { - "version": "2.0.0", - "dev": true, - "license": "MIT" - }, - "node_modules/merge2": { - "version": "1.4.1", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 8" - } - }, - "node_modules/methods": { - "version": "1.1.2", - "license": "MIT", - "peer": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/micromatch": { - "version": "3.1.10", - "dev": true, - "license": "MIT", - "dependencies": { - "arr-diff": "^4.0.0", - "array-unique": "^0.3.2", - "braces": "^2.3.1", - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "extglob": "^2.0.4", - "fragment-cache": "^0.2.1", - "kind-of": "^6.0.2", - "nanomatch": "^1.2.9", - "object.pick": "^1.3.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/mime": { - "version": "1.6.0", - "license": "MIT", - "peer": true, - "bin": { - "mime": "cli.js" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/mime-db": { - "version": "1.52.0", - "license": "MIT", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/mime-types": { - "version": "2.1.35", - "license": "MIT", - "dependencies": { - "mime-db": "1.52.0" - }, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/mimic-fn": { - "version": "2.1.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "node_modules/min-indent": { - "version": "1.0.1", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=4" - } - }, - "node_modules/minimatch": { - "version": "3.1.2", - "dev": true, - "license": "ISC", - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, - "node_modules/minimist": { - "version": "1.2.7", - "dev": true, - "license": "MIT", - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/minimist-options": { - "version": "4.1.0", - "dev": true, - "license": "MIT", - "dependencies": { - "arrify": "^1.0.1", - "is-plain-obj": "^1.1.0", - "kind-of": "^6.0.3" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/minimist-options/node_modules/arrify": { - "version": "1.0.1", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/mixin-deep": { - "version": "1.3.2", - "dev": true, - "license": "MIT", - "dependencies": { - "for-in": "^1.0.2", - "is-extendable": "^1.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/mkdirp": { - "version": "1.0.4", - "dev": true, - "license": "MIT", - "bin": { - "mkdirp": "bin/cmd.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/ms": { - "version": "2.0.0", - "license": "MIT" - }, - "node_modules/nanomatch": { - "version": "1.2.13", - "dev": true, - "license": "MIT", - "dependencies": { - "arr-diff": "^4.0.0", - "array-unique": "^0.3.2", - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "fragment-cache": "^0.2.1", - "is-windows": "^1.0.2", - "kind-of": "^6.0.2", - "object.pick": "^1.3.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/natural-compare": { - "version": "1.4.0", - "dev": true, - "license": "MIT" - }, - "node_modules/negotiator": { - "version": "0.6.3", - "license": "MIT", - "peer": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/nested-error-stacks": { - "version": "2.1.1", - "dev": true, - "license": "MIT" - }, - "node_modules/nice-try": { - "version": "1.0.5", - "dev": true, - "license": "MIT" - }, - "node_modules/nock": { - "version": "12.0.3", - "dev": true, - "license": "MIT", - "dependencies": { - "debug": "^4.1.0", - "json-stringify-safe": "^5.0.1", - "lodash": "^4.17.13", - "propagate": "^2.0.0" - }, - "engines": { - "node": ">= 10.13" - } - }, - "node_modules/nock/node_modules/debug": { - "version": "4.3.4", - "dev": true, - "license": "MIT", - "dependencies": { - "ms": "2.1.2" - }, - "engines": { - "node": ">=6.0" - }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } - } - }, - "node_modules/nock/node_modules/ms": { - "version": "2.1.2", - "dev": true, - "license": "MIT" - }, - "node_modules/node-int64": { - "version": "0.4.0", - "dev": true, - "license": "MIT" - }, - "node_modules/node-notifier": { - "version": "8.0.2", - "dev": true, - "license": "MIT", - "optional": true, - "dependencies": { - "growly": "^1.3.0", - "is-wsl": "^2.2.0", - "semver": "^7.3.2", - "shellwords": "^0.1.1", - "uuid": "^8.3.0", - "which": "^2.0.2" - } - }, - "node_modules/node-notifier/node_modules/lru-cache": { - "version": "6.0.0", - "dev": true, - "license": "ISC", - "optional": true, - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/node-notifier/node_modules/semver": { - "version": "7.3.8", - "dev": true, - "license": "ISC", - "optional": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/node-notifier/node_modules/yallist": { - "version": "4.0.0", - "dev": true, - "license": "ISC", - "optional": true - }, - "node_modules/node-releases": { - "version": "2.0.8", - "dev": true, - "license": "MIT" - }, - "node_modules/normalize-package-data": { - "version": "2.5.0", - "dev": true, - "license": "BSD-2-Clause", - "dependencies": { - "hosted-git-info": "^2.1.4", - "resolve": "^1.10.0", - "semver": "2 || 3 || 4 || 5", - "validate-npm-package-license": "^3.0.1" - } - }, - "node_modules/normalize-package-data/node_modules/semver": { - "version": "5.7.1", - "dev": true, - "license": "ISC", - "bin": { - "semver": "bin/semver" - } - }, - "node_modules/normalize-path": { - "version": "3.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/npm-run-all": { - "version": "4.1.5", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-styles": "^3.2.1", - "chalk": "^2.4.1", - "cross-spawn": "^6.0.5", - "memorystream": "^0.3.1", - "minimatch": "^3.0.4", - "pidtree": "^0.3.0", - "read-pkg": "^3.0.0", - "shell-quote": "^1.6.1", - "string.prototype.padend": "^3.0.0" - }, - "bin": { - "npm-run-all": "bin/npm-run-all/index.js", - "run-p": "bin/run-p/index.js", - "run-s": "bin/run-s/index.js" - }, - "engines": { - "node": ">= 4" - } - }, - "node_modules/npm-run-all/node_modules/ansi-styles": { - "version": "3.2.1", - "dev": true, - "license": "MIT", - "dependencies": { - "color-convert": "^1.9.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/npm-run-all/node_modules/chalk": { - "version": "2.4.2", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/npm-run-all/node_modules/color-convert": { - "version": "1.9.3", - "dev": true, - "license": "MIT", - "dependencies": { - "color-name": "1.1.3" - } - }, - "node_modules/npm-run-all/node_modules/color-name": { - "version": "1.1.3", - "dev": true, - "license": "MIT" - }, - "node_modules/npm-run-all/node_modules/cross-spawn": { - "version": "6.0.5", - "dev": true, - "license": "MIT", - "dependencies": { - "nice-try": "^1.0.4", - "path-key": "^2.0.1", - "semver": "^5.5.0", - "shebang-command": "^1.2.0", - "which": "^1.2.9" - }, - "engines": { - "node": ">=4.8" - } - }, - "node_modules/npm-run-all/node_modules/escape-string-regexp": { - "version": "1.0.5", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/npm-run-all/node_modules/has-flag": { - "version": "3.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=4" - } - }, - "node_modules/npm-run-all/node_modules/path-key": { - "version": "2.0.1", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=4" - } - }, - "node_modules/npm-run-all/node_modules/semver": { - "version": "5.7.1", - "dev": true, - "license": "ISC", - "bin": { - "semver": "bin/semver" - } - }, - "node_modules/npm-run-all/node_modules/shebang-command": { - "version": "1.2.0", - "dev": true, - "license": "MIT", - "dependencies": { - "shebang-regex": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/npm-run-all/node_modules/shebang-regex": { - "version": "1.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/npm-run-all/node_modules/supports-color": { - "version": "5.5.0", - "dev": true, - "license": "MIT", - "dependencies": { - "has-flag": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/npm-run-all/node_modules/which": { - "version": "1.3.1", - "dev": true, - "license": "ISC", - "dependencies": { - "isexe": "^2.0.0" - }, - "bin": { - "which": "bin/which" - } - }, - "node_modules/npm-run-path": { - "version": "4.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "path-key": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/nwsapi": { - "version": "2.2.2", - "dev": true, - "license": "MIT" - }, - "node_modules/object-copy": { - "version": "0.1.0", - "dev": true, - "license": "MIT", - "dependencies": { - "copy-descriptor": "^0.1.0", - "define-property": "^0.2.5", - "kind-of": "^3.0.3" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/object-copy/node_modules/define-property": { - "version": "0.2.5", - "dev": true, - "license": "MIT", - "dependencies": { - "is-descriptor": "^0.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/object-copy/node_modules/is-accessor-descriptor": { - "version": "0.1.6", - "dev": true, - "license": "MIT", - "dependencies": { - "kind-of": "^3.0.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/object-copy/node_modules/is-data-descriptor": { - "version": "0.1.4", - "dev": true, - "license": "MIT", - "dependencies": { - "kind-of": "^3.0.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/object-copy/node_modules/is-descriptor": { - "version": "0.1.6", - "dev": true, - "license": "MIT", - "dependencies": { - "is-accessor-descriptor": "^0.1.6", - "is-data-descriptor": "^0.1.4", - "kind-of": "^5.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/object-copy/node_modules/is-descriptor/node_modules/kind-of": { - "version": "5.1.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/object-copy/node_modules/kind-of": { - "version": "3.2.2", - "dev": true, - "license": "MIT", - "dependencies": { - "is-buffer": "^1.1.5" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/object-inspect": { - "version": "1.12.3", - "license": "MIT", - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/object-keys": { - "version": "1.1.1", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/object-visit": { - "version": "1.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "isobject": "^3.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/object.assign": { - "version": "4.1.4", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "has-symbols": "^1.0.3", - "object-keys": "^1.1.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/object.pick": { - "version": "1.3.0", - "dev": true, - "license": "MIT", - "dependencies": { - "isobject": "^3.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/on-finished": { - "version": "2.4.1", - "license": "MIT", - "peer": true, - "dependencies": { - "ee-first": "1.1.1" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/once": { - "version": "1.4.0", - "dev": true, - "license": "ISC", - "dependencies": { - "wrappy": "1" - } - }, - "node_modules/onetime": { - "version": "5.1.2", - "dev": true, - "license": "MIT", - "dependencies": { - "mimic-fn": "^2.1.0" - }, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/optionator": { - "version": "0.8.3", - "dev": true, - "license": "MIT", - "dependencies": { - "deep-is": "~0.1.3", - "fast-levenshtein": "~2.0.6", - "levn": "~0.3.0", - "prelude-ls": "~1.1.2", - "type-check": "~0.3.2", - "word-wrap": "~1.2.3" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/p-all": { - "version": "2.1.0", - "dev": true, - "license": "MIT", - "dependencies": { - "p-map": "^2.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/p-all/node_modules/p-map": { - "version": "2.1.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "node_modules/p-each-series": { - "version": "2.2.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/p-event": { - "version": "4.2.0", - "dev": true, - "license": "MIT", - "dependencies": { - "p-timeout": "^3.1.0" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/p-filter": { - "version": "2.1.0", - "dev": true, - "license": "MIT", - "dependencies": { - "p-map": "^2.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/p-filter/node_modules/p-map": { - "version": "2.1.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "node_modules/p-finally": { - "version": "1.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=4" - } - }, - "node_modules/p-limit": { - "version": "2.3.0", - "dev": true, - "license": "MIT", - "dependencies": { - "p-try": "^2.0.0" - }, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/p-locate": { - "version": "4.1.0", - "dev": true, - "license": "MIT", - "dependencies": { - "p-limit": "^2.2.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/p-map": { - "version": "3.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "aggregate-error": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/p-timeout": { - "version": "3.2.0", - "dev": true, - "license": "MIT", - "dependencies": { - "p-finally": "^1.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/p-try": { - "version": "2.2.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "node_modules/parse-json": { - "version": "4.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "error-ex": "^1.3.1", - "json-parse-better-errors": "^1.0.1" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/parse5": { - "version": "6.0.1", - "dev": true, - "license": "MIT" - }, - "node_modules/parseurl": { - "version": "1.3.3", - "license": "MIT", - "peer": true, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/pascalcase": { - "version": "0.1.1", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/path-dirname": { - "version": "1.0.2", - "dev": true, - "license": "MIT" - }, - "node_modules/path-exists": { - "version": "4.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/path-is-absolute": { - "version": "1.0.1", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/path-key": { - "version": "3.1.1", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/path-parse": { - "version": "1.0.7", - "dev": true, - "license": "MIT" - }, - "node_modules/path-to-regexp": { - "version": "0.1.7", - "license": "MIT", - "peer": true - }, - "node_modules/path-type": { - "version": "3.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "pify": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/path-type/node_modules/pify": { - "version": "3.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=4" - } - }, - "node_modules/picocolors": { - "version": "1.0.0", - "dev": true, - "license": "ISC" - }, - "node_modules/picomatch": { - "version": "2.3.1", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8.6" - }, - "funding": { - "url": "https://github.com/sponsors/jonschlinkert" - } - }, - "node_modules/pidtree": { - "version": "0.3.1", - "dev": true, - "license": "MIT", - "bin": { - "pidtree": "bin/pidtree.js" - }, - "engines": { - "node": ">=0.10" - } - }, - "node_modules/pify": { - "version": "4.0.1", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "node_modules/pirates": { - "version": "4.0.5", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 6" - } - }, - "node_modules/pkg-dir": { - "version": "4.2.0", - "dev": true, - "license": "MIT", - "dependencies": { - "find-up": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/posix-character-classes": { - "version": "0.1.1", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/prelude-ls": { - "version": "1.1.2", - "dev": true, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/pretty-format": { - "version": "26.6.2", - "dev": true, - "license": "MIT", - "dependencies": { - "@jest/types": "^26.6.2", - "ansi-regex": "^5.0.0", - "ansi-styles": "^4.0.0", - "react-is": "^17.0.1" - }, - "engines": { - "node": ">= 10" - } - }, - "node_modules/prompts": { - "version": "2.4.2", - "dev": true, - "license": "MIT", - "dependencies": { - "kleur": "^3.0.3", - "sisteransi": "^1.0.5" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/propagate": { - "version": "2.0.1", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 8" - } - }, - "node_modules/proxy-addr": { - "version": "2.0.7", - "license": "MIT", - "peer": true, - "dependencies": { - "forwarded": "0.2.0", - "ipaddr.js": "1.9.1" - }, - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/psl": { - "version": "1.9.0", - "dev": true, - "license": "MIT" - }, - "node_modules/pump": { - "version": "3.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "end-of-stream": "^1.1.0", - "once": "^1.3.1" - } - }, - "node_modules/punycode": { - "version": "2.3.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "node_modules/qs": { - "version": "6.11.0", - "license": "BSD-3-Clause", - "peer": true, - "dependencies": { - "side-channel": "^1.0.4" - }, - "engines": { - "node": ">=0.6" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/querystringify": { - "version": "2.2.0", - "dev": true, - "license": "MIT" - }, - "node_modules/quick-lru": { - "version": "4.0.1", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/range-parser": { - "version": "1.2.1", - "license": "MIT", - "peer": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/raw-body": { - "version": "2.5.1", - "license": "MIT", - "peer": true, - "dependencies": { - "bytes": "3.1.2", - "http-errors": "2.0.0", - "iconv-lite": "0.4.24", - "unpipe": "1.0.0" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/react-is": { - "version": "17.0.2", - "dev": true, - "license": "MIT" - }, - "node_modules/read-pkg": { - "version": "3.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "load-json-file": "^4.0.0", - "normalize-package-data": "^2.3.2", - "path-type": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/read-pkg-up": { - "version": "7.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "find-up": "^4.1.0", - "read-pkg": "^5.2.0", - "type-fest": "^0.8.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/read-pkg-up/node_modules/parse-json": { - "version": "5.2.0", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/code-frame": "^7.0.0", - "error-ex": "^1.3.1", - "json-parse-even-better-errors": "^2.3.0", - "lines-and-columns": "^1.1.6" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/read-pkg-up/node_modules/read-pkg": { - "version": "5.2.0", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/normalize-package-data": "^2.4.0", - "normalize-package-data": "^2.5.0", - "parse-json": "^5.0.0", - "type-fest": "^0.6.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/read-pkg-up/node_modules/read-pkg/node_modules/type-fest": { - "version": "0.6.0", - "dev": true, - "license": "(MIT OR CC0-1.0)", - "engines": { - "node": ">=8" - } - }, - "node_modules/read-pkg-up/node_modules/type-fest": { - "version": "0.8.1", - "dev": true, - "license": "(MIT OR CC0-1.0)", - "engines": { - "node": ">=8" - } - }, - "node_modules/redent": { - "version": "3.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "indent-string": "^4.0.0", - "strip-indent": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/regex-not": { - "version": "1.0.2", - "dev": true, - "license": "MIT", - "dependencies": { - "extend-shallow": "^3.0.2", - "safe-regex": "^1.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/regexp.prototype.flags": { - "version": "1.4.3", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3", - "functions-have-names": "^1.2.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/remove-trailing-separator": { - "version": "1.1.0", - "dev": true, - "license": "ISC" - }, - "node_modules/repeat-element": { - "version": "1.1.4", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/repeat-string": { - "version": "1.6.1", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10" - } - }, - "node_modules/require-directory": { - "version": "2.1.1", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/require-main-filename": { - "version": "2.0.0", - "dev": true, - "license": "ISC" - }, - "node_modules/requires-port": { - "version": "1.0.0", - "dev": true, - "license": "MIT" - }, - "node_modules/resolve": { - "version": "1.22.1", - "dev": true, - "license": "MIT", - "dependencies": { - "is-core-module": "^2.9.0", - "path-parse": "^1.0.7", - "supports-preserve-symlinks-flag": "^1.0.0" - }, - "bin": { - "resolve": "bin/resolve" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/resolve-cwd": { - "version": "3.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "resolve-from": "^5.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/resolve-from": { - "version": "5.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/resolve-url": { - "version": "0.2.1", - "dev": true, - "license": "MIT" - }, - "node_modules/ret": { - "version": "0.1.15", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.12" - } - }, - "node_modules/rimraf": { - "version": "3.0.2", - "dev": true, - "license": "ISC", - "dependencies": { - "glob": "^7.1.3" - }, - "bin": { - "rimraf": "bin.js" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/rsvp": { - "version": "4.8.5", - "dev": true, - "license": "MIT", - "engines": { - "node": "6.* || >= 7.*" - } - }, - "node_modules/safe-buffer": { - "version": "5.2.1", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "license": "MIT", - "peer": true - }, - "node_modules/safe-regex": { - "version": "1.1.0", - "dev": true, - "license": "MIT", - "dependencies": { - "ret": "~0.1.10" - } - }, - "node_modules/safe-regex-test": { - "version": "1.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.1.3", - "is-regex": "^1.1.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/safer-buffer": { - "version": "2.1.2", - "license": "MIT" - }, - "node_modules/sane": { - "version": "4.1.0", - "dev": true, - "license": "MIT", - "dependencies": { - "@cnakazawa/watch": "^1.0.3", - "anymatch": "^2.0.0", - "capture-exit": "^2.0.0", - "exec-sh": "^0.3.2", - "execa": "^1.0.0", - "fb-watchman": "^2.0.0", - "micromatch": "^3.1.4", - "minimist": "^1.1.1", - "walker": "~1.0.5" - }, - "bin": { - "sane": "src/cli.js" - }, - "engines": { - "node": "6.* || 8.* || >= 10.*" - } - }, - "node_modules/sane/node_modules/anymatch": { - "version": "2.0.0", - "dev": true, - "license": "ISC", - "dependencies": { - "micromatch": "^3.1.4", - "normalize-path": "^2.1.1" - } - }, - "node_modules/sane/node_modules/cross-spawn": { - "version": "6.0.5", - "dev": true, - "license": "MIT", - "dependencies": { - "nice-try": "^1.0.4", - "path-key": "^2.0.1", - "semver": "^5.5.0", - "shebang-command": "^1.2.0", - "which": "^1.2.9" - }, - "engines": { - "node": ">=4.8" - } - }, - "node_modules/sane/node_modules/execa": { - "version": "1.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "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" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/sane/node_modules/get-stream": { - "version": "4.1.0", - "dev": true, - "license": "MIT", - "dependencies": { - "pump": "^3.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/sane/node_modules/is-stream": { - "version": "1.1.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/sane/node_modules/normalize-path": { - "version": "2.1.1", - "dev": true, - "license": "MIT", - "dependencies": { - "remove-trailing-separator": "^1.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/sane/node_modules/npm-run-path": { - "version": "2.0.2", - "dev": true, - "license": "MIT", - "dependencies": { - "path-key": "^2.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/sane/node_modules/path-key": { - "version": "2.0.1", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=4" - } - }, - "node_modules/sane/node_modules/semver": { - "version": "5.7.1", - "dev": true, - "license": "ISC", - "bin": { - "semver": "bin/semver" - } - }, - "node_modules/sane/node_modules/shebang-command": { - "version": "1.2.0", - "dev": true, - "license": "MIT", - "dependencies": { - "shebang-regex": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/sane/node_modules/shebang-regex": { - "version": "1.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/sane/node_modules/which": { - "version": "1.3.1", - "dev": true, - "license": "ISC", - "dependencies": { - "isexe": "^2.0.0" - }, - "bin": { - "which": "bin/which" - } - }, - "node_modules/saxes": { - "version": "5.0.1", - "dev": true, - "license": "ISC", - "dependencies": { - "xmlchars": "^2.2.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/semver": { - "version": "6.3.0", - "dev": true, - "license": "ISC", - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/send": { - "version": "0.18.0", - "license": "MIT", - "peer": true, - "dependencies": { - "debug": "2.6.9", - "depd": "2.0.0", - "destroy": "1.2.0", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "etag": "~1.8.1", - "fresh": "0.5.2", - "http-errors": "2.0.0", - "mime": "1.6.0", - "ms": "2.1.3", - "on-finished": "2.4.1", - "range-parser": "~1.2.1", - "statuses": "2.0.1" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/send/node_modules/ms": { - "version": "2.1.3", - "license": "MIT", - "peer": true - }, - "node_modules/serve-static": { - "version": "1.15.0", - "license": "MIT", - "peer": true, - "dependencies": { - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "parseurl": "~1.3.3", - "send": "0.18.0" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/set-blocking": { - "version": "2.0.0", - "dev": true, - "license": "ISC" - }, - "node_modules/set-value": { - "version": "2.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "extend-shallow": "^2.0.1", - "is-extendable": "^0.1.1", - "is-plain-object": "^2.0.3", - "split-string": "^3.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/set-value/node_modules/extend-shallow": { - "version": "2.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "is-extendable": "^0.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/set-value/node_modules/is-extendable": { - "version": "0.1.1", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/setprototypeof": { - "version": "1.2.0", - "license": "ISC", - "peer": true - }, - "node_modules/shebang-command": { - "version": "2.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "shebang-regex": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/shebang-regex": { - "version": "3.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/shell-quote": { - "version": "1.7.4", - "dev": true, - "license": "MIT", - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/shellwords": { - "version": "0.1.1", - "dev": true, - "license": "MIT", - "optional": true - }, - "node_modules/side-channel": { - "version": "1.0.4", - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.0", - "get-intrinsic": "^1.0.2", - "object-inspect": "^1.9.0" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/signal-exit": { - "version": "3.0.7", - "dev": true, - "license": "ISC" - }, - "node_modules/sisteransi": { - "version": "1.0.5", - "dev": true, - "license": "MIT" - }, - "node_modules/slash": { - "version": "2.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "node_modules/snapdragon": { - "version": "0.8.2", - "dev": true, - "license": "MIT", - "dependencies": { - "base": "^0.11.1", - "debug": "^2.2.0", - "define-property": "^0.2.5", - "extend-shallow": "^2.0.1", - "map-cache": "^0.2.2", - "source-map": "^0.5.6", - "source-map-resolve": "^0.5.0", - "use": "^3.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/snapdragon-node": { - "version": "2.1.1", - "dev": true, - "license": "MIT", - "dependencies": { - "define-property": "^1.0.0", - "isobject": "^3.0.0", - "snapdragon-util": "^3.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/snapdragon-node/node_modules/define-property": { - "version": "1.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "is-descriptor": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/snapdragon-util": { - "version": "3.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "kind-of": "^3.2.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/snapdragon-util/node_modules/kind-of": { - "version": "3.2.2", - "dev": true, - "license": "MIT", - "dependencies": { - "is-buffer": "^1.1.5" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/snapdragon/node_modules/define-property": { - "version": "0.2.5", - "dev": true, - "license": "MIT", - "dependencies": { - "is-descriptor": "^0.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/snapdragon/node_modules/extend-shallow": { - "version": "2.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "is-extendable": "^0.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/snapdragon/node_modules/is-accessor-descriptor": { - "version": "0.1.6", - "dev": true, - "license": "MIT", - "dependencies": { - "kind-of": "^3.0.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/snapdragon/node_modules/is-accessor-descriptor/node_modules/kind-of": { - "version": "3.2.2", - "dev": true, - "license": "MIT", - "dependencies": { - "is-buffer": "^1.1.5" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/snapdragon/node_modules/is-data-descriptor": { - "version": "0.1.4", - "dev": true, - "license": "MIT", - "dependencies": { - "kind-of": "^3.0.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/snapdragon/node_modules/is-data-descriptor/node_modules/kind-of": { - "version": "3.2.2", - "dev": true, - "license": "MIT", - "dependencies": { - "is-buffer": "^1.1.5" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/snapdragon/node_modules/is-descriptor": { - "version": "0.1.6", - "dev": true, - "license": "MIT", - "dependencies": { - "is-accessor-descriptor": "^0.1.6", - "is-data-descriptor": "^0.1.4", - "kind-of": "^5.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/snapdragon/node_modules/is-extendable": { - "version": "0.1.1", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/snapdragon/node_modules/kind-of": { - "version": "5.1.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/snapdragon/node_modules/source-map": { - "version": "0.5.7", - "dev": true, - "license": "BSD-3-Clause", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/source-map": { - "version": "0.6.1", - "dev": true, - "license": "BSD-3-Clause", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/source-map-resolve": { - "version": "0.5.3", - "dev": true, - "license": "MIT", - "dependencies": { - "atob": "^2.1.2", - "decode-uri-component": "^0.2.0", - "resolve-url": "^0.2.1", - "source-map-url": "^0.4.0", - "urix": "^0.1.0" - } - }, - "node_modules/source-map-support": { - "version": "0.5.21", - "dev": true, - "license": "MIT", - "dependencies": { - "buffer-from": "^1.0.0", - "source-map": "^0.6.0" - } - }, - "node_modules/source-map-url": { - "version": "0.4.1", - "dev": true, - "license": "MIT" - }, - "node_modules/spdx-correct": { - "version": "3.1.1", - "dev": true, - "license": "Apache-2.0", - "dependencies": { - "spdx-expression-parse": "^3.0.0", - "spdx-license-ids": "^3.0.0" - } - }, - "node_modules/spdx-exceptions": { - "version": "2.3.0", - "dev": true, - "license": "CC-BY-3.0" - }, - "node_modules/spdx-expression-parse": { - "version": "3.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "spdx-exceptions": "^2.1.0", - "spdx-license-ids": "^3.0.0" - } - }, - "node_modules/spdx-license-ids": { - "version": "3.0.12", - "dev": true, - "license": "CC0-1.0" - }, - "node_modules/split-string": { - "version": "3.1.0", - "dev": true, - "license": "MIT", - "dependencies": { - "extend-shallow": "^3.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/sprintf-js": { - "version": "1.0.3", - "dev": true, - "license": "BSD-3-Clause" - }, - "node_modules/stack-utils": { - "version": "2.0.6", - "dev": true, - "license": "MIT", - "dependencies": { - "escape-string-regexp": "^2.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/static-extend": { - "version": "0.1.2", - "dev": true, - "license": "MIT", - "dependencies": { - "define-property": "^0.2.5", - "object-copy": "^0.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/static-extend/node_modules/define-property": { - "version": "0.2.5", - "dev": true, - "license": "MIT", - "dependencies": { - "is-descriptor": "^0.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/static-extend/node_modules/is-accessor-descriptor": { - "version": "0.1.6", - "dev": true, - "license": "MIT", - "dependencies": { - "kind-of": "^3.0.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/static-extend/node_modules/is-accessor-descriptor/node_modules/kind-of": { - "version": "3.2.2", - "dev": true, - "license": "MIT", - "dependencies": { - "is-buffer": "^1.1.5" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/static-extend/node_modules/is-data-descriptor": { - "version": "0.1.4", - "dev": true, - "license": "MIT", - "dependencies": { - "kind-of": "^3.0.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/static-extend/node_modules/is-data-descriptor/node_modules/kind-of": { - "version": "3.2.2", - "dev": true, - "license": "MIT", - "dependencies": { - "is-buffer": "^1.1.5" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/static-extend/node_modules/is-descriptor": { - "version": "0.1.6", - "dev": true, - "license": "MIT", - "dependencies": { - "is-accessor-descriptor": "^0.1.6", - "is-data-descriptor": "^0.1.4", - "kind-of": "^5.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/static-extend/node_modules/kind-of": { - "version": "5.1.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/statuses": { - "version": "2.0.1", - "license": "MIT", - "peer": true, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/string-length": { - "version": "4.0.2", - "dev": true, - "license": "MIT", - "dependencies": { - "char-regex": "^1.0.2", - "strip-ansi": "^6.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/string-width": { - "version": "4.2.3", - "dev": true, - "license": "MIT", - "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/string.prototype.padend": { - "version": "3.1.4", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/string.prototype.trimend": { - "version": "1.0.6", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/string.prototype.trimstart": { - "version": "1.0.6", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/strip-ansi": { - "version": "6.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-regex": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/strip-bom": { - "version": "4.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/strip-eof": { - "version": "1.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/strip-final-newline": { - "version": "2.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "node_modules/strip-indent": { - "version": "3.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "min-indent": "^1.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/supports-color": { - "version": "7.2.0", - "dev": true, - "license": "MIT", - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/supports-hyperlinks": { - "version": "2.3.0", - "dev": true, - "license": "MIT", - "dependencies": { - "has-flag": "^4.0.0", - "supports-color": "^7.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/supports-preserve-symlinks-flag": { - "version": "1.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/symbol-tree": { - "version": "3.2.4", - "dev": true, - "license": "MIT" - }, - "node_modules/terminal-link": { - "version": "2.1.1", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-escapes": "^4.2.1", - "supports-hyperlinks": "^2.0.0" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/test-exclude": { - "version": "6.0.0", - "dev": true, - "license": "ISC", - "dependencies": { - "@istanbuljs/schema": "^0.1.2", - "glob": "^7.1.4", - "minimatch": "^3.0.4" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/throat": { - "version": "5.0.0", - "dev": true, - "license": "MIT" - }, - "node_modules/tmpl": { - "version": "1.0.5", - "dev": true, - "license": "BSD-3-Clause" - }, - "node_modules/to-fast-properties": { - "version": "2.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=4" - } - }, - "node_modules/to-object-path": { - "version": "0.3.0", - "dev": true, - "license": "MIT", - "dependencies": { - "kind-of": "^3.0.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/to-object-path/node_modules/kind-of": { - "version": "3.2.2", - "dev": true, - "license": "MIT", - "dependencies": { - "is-buffer": "^1.1.5" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/to-regex": { - "version": "3.0.2", - "dev": true, - "license": "MIT", - "dependencies": { - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "regex-not": "^1.0.2", - "safe-regex": "^1.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/to-regex-range": { - "version": "2.1.1", - "dev": true, - "license": "MIT", - "dependencies": { - "is-number": "^3.0.0", - "repeat-string": "^1.6.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/toidentifier": { - "version": "1.0.1", - "license": "MIT", - "peer": true, - "engines": { - "node": ">=0.6" - } - }, - "node_modules/tough-cookie": { - "version": "4.1.2", - "dev": true, - "license": "BSD-3-Clause", - "dependencies": { - "psl": "^1.1.33", - "punycode": "^2.1.1", - "universalify": "^0.2.0", - "url-parse": "^1.5.3" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/tr46": { - "version": "2.1.0", - "dev": true, - "license": "MIT", - "dependencies": { - "punycode": "^2.1.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/trim-newlines": { - "version": "3.0.1", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/ts-jest": { - "version": "26.5.6", - "dev": true, - "license": "MIT", - "dependencies": { - "bs-logger": "0.x", - "buffer-from": "1.x", - "fast-json-stable-stringify": "2.x", - "jest-util": "^26.1.0", - "json5": "2.x", - "lodash": "4.x", - "make-error": "1.x", - "mkdirp": "1.x", - "semver": "7.x", - "yargs-parser": "20.x" - }, - "bin": { - "ts-jest": "cli.js" - }, - "engines": { - "node": ">= 10" - }, - "peerDependencies": { - "jest": ">=26 <27", - "typescript": ">=3.8 <5.0" - } - }, - "node_modules/ts-jest/node_modules/lru-cache": { - "version": "6.0.0", - "dev": true, - "license": "ISC", - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/ts-jest/node_modules/semver": { - "version": "7.3.8", - "dev": true, - "license": "ISC", - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/ts-jest/node_modules/yallist": { - "version": "4.0.0", - "dev": true, - "license": "ISC" - }, - "node_modules/ts-jest/node_modules/yargs-parser": { - "version": "20.2.9", - "dev": true, - "license": "ISC", - "engines": { - "node": ">=10" - } - }, - "node_modules/type-check": { - "version": "0.3.2", - "dev": true, - "license": "MIT", - "dependencies": { - "prelude-ls": "~1.1.2" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/type-detect": { - "version": "4.0.8", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=4" - } - }, - "node_modules/type-fest": { - "version": "0.21.3", - "dev": true, - "license": "(MIT OR CC0-1.0)", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/type-is": { - "version": "1.6.18", - "license": "MIT", - "peer": true, - "dependencies": { - "media-typer": "0.3.0", - "mime-types": "~2.1.24" - }, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/typed-array-length": { - "version": "1.0.4", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.2", - "for-each": "^0.3.3", - "is-typed-array": "^1.1.9" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/typedarray-to-buffer": { - "version": "3.1.5", - "dev": true, - "license": "MIT", - "dependencies": { - "is-typedarray": "^1.0.0" - } - }, - "node_modules/typescript": { - "version": "4.9.4", - "dev": true, - "license": "Apache-2.0", - "bin": { - "tsc": "bin/tsc", - "tsserver": "bin/tsserver" - }, - "engines": { - "node": ">=4.2.0" - } - }, - "node_modules/unbox-primitive": { - "version": "1.0.2", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.2", - "has-bigints": "^1.0.2", - "has-symbols": "^1.0.3", - "which-boxed-primitive": "^1.0.2" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/union-value": { - "version": "1.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "arr-union": "^3.1.0", - "get-value": "^2.0.6", - "is-extendable": "^0.1.1", - "set-value": "^2.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/union-value/node_modules/is-extendable": { - "version": "0.1.1", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/universalify": { - "version": "0.2.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 4.0.0" - } - }, - "node_modules/unpipe": { - "version": "1.0.0", - "license": "MIT", - "peer": true, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/unset-value": { - "version": "1.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "has-value": "^0.3.1", - "isobject": "^3.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/unset-value/node_modules/has-value": { - "version": "0.3.1", - "dev": true, - "license": "MIT", - "dependencies": { - "get-value": "^2.0.3", - "has-values": "^0.1.4", - "isobject": "^2.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/unset-value/node_modules/has-value/node_modules/isobject": { - "version": "2.1.0", - "dev": true, - "license": "MIT", - "dependencies": { - "isarray": "1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/unset-value/node_modules/has-values": { - "version": "0.1.4", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/update-browserslist-db": { - "version": "1.0.10", - "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/browserslist" - } - ], - "license": "MIT", - "dependencies": { - "escalade": "^3.1.1", - "picocolors": "^1.0.0" - }, - "bin": { - "browserslist-lint": "cli.js" - }, - "peerDependencies": { - "browserslist": ">= 4.21.0" - } - }, - "node_modules/urix": { - "version": "0.1.0", - "dev": true, - "license": "MIT" - }, - "node_modules/url-parse": { - "version": "1.5.10", - "dev": true, - "license": "MIT", - "dependencies": { - "querystringify": "^2.1.1", - "requires-port": "^1.0.0" - } - }, - "node_modules/use": { - "version": "3.1.1", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/utils-merge": { - "version": "1.0.1", - "license": "MIT", - "peer": true, - "engines": { - "node": ">= 0.4.0" - } - }, - "node_modules/uuid": { - "version": "8.3.2", - "dev": true, - "license": "MIT", - "optional": true, - "bin": { - "uuid": "dist/bin/uuid" - } - }, - "node_modules/v8-to-istanbul": { - "version": "7.1.2", - "dev": true, - "license": "ISC", - "dependencies": { - "@types/istanbul-lib-coverage": "^2.0.1", - "convert-source-map": "^1.6.0", - "source-map": "^0.7.3" - }, - "engines": { - "node": ">=10.10.0" - } - }, - "node_modules/v8-to-istanbul/node_modules/source-map": { - "version": "0.7.4", - "dev": true, - "license": "BSD-3-Clause", - "engines": { - "node": ">= 8" - } - }, - "node_modules/validate-npm-package-license": { - "version": "3.0.4", - "dev": true, - "license": "Apache-2.0", - "dependencies": { - "spdx-correct": "^3.0.0", - "spdx-expression-parse": "^3.0.0" - } - }, - "node_modules/vary": { - "version": "1.1.2", - "license": "MIT", - "peer": true, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/w3c-hr-time": { - "version": "1.0.2", - "dev": true, - "license": "MIT", - "dependencies": { - "browser-process-hrtime": "^1.0.0" - } - }, - "node_modules/w3c-xmlserializer": { - "version": "2.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "xml-name-validator": "^3.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/walker": { - "version": "1.0.8", - "dev": true, - "license": "Apache-2.0", - "dependencies": { - "makeerror": "1.0.12" - } - }, - "node_modules/webidl-conversions": { - "version": "6.1.0", - "dev": true, - "license": "BSD-2-Clause", - "engines": { - "node": ">=10.4" - } - }, - "node_modules/whatwg-encoding": { - "version": "1.0.5", - "dev": true, - "license": "MIT", - "dependencies": { - "iconv-lite": "0.4.24" - } - }, - "node_modules/whatwg-mimetype": { - "version": "2.3.0", - "dev": true, - "license": "MIT" - }, - "node_modules/whatwg-url": { - "version": "8.7.0", - "dev": true, - "license": "MIT", - "dependencies": { - "lodash": "^4.7.0", - "tr46": "^2.1.0", - "webidl-conversions": "^6.1.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/which": { - "version": "2.0.2", - "dev": true, - "license": "ISC", - "dependencies": { - "isexe": "^2.0.0" - }, - "bin": { - "node-which": "bin/node-which" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/which-boxed-primitive": { - "version": "1.0.2", - "dev": true, - "license": "MIT", - "dependencies": { - "is-bigint": "^1.0.1", - "is-boolean-object": "^1.1.0", - "is-number-object": "^1.0.4", - "is-string": "^1.0.5", - "is-symbol": "^1.0.3" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/which-module": { - "version": "2.0.0", - "dev": true, - "license": "ISC" - }, - "node_modules/which-typed-array": { - "version": "1.1.9", - "dev": true, - "license": "MIT", - "dependencies": { - "available-typed-arrays": "^1.0.5", - "call-bind": "^1.0.2", - "for-each": "^0.3.3", - "gopd": "^1.0.1", - "has-tostringtag": "^1.0.0", - "is-typed-array": "^1.1.10" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/word-wrap": { - "version": "1.2.3", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/wrap-ansi": { - "version": "6.2.0", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/wrappy": { - "version": "1.0.2", - "dev": true, - "license": "ISC" - }, - "node_modules/write-file-atomic": { - "version": "3.0.3", - "dev": true, - "license": "ISC", - "dependencies": { - "imurmurhash": "^0.1.4", - "is-typedarray": "^1.0.0", - "signal-exit": "^3.0.2", - "typedarray-to-buffer": "^3.1.5" - } - }, - "node_modules/ws": { - "version": "7.5.9", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8.3.0" - }, - "peerDependencies": { - "bufferutil": "^4.0.1", - "utf-8-validate": "^5.0.2" - }, - "peerDependenciesMeta": { - "bufferutil": { - "optional": true - }, - "utf-8-validate": { - "optional": true - } - } - }, - "node_modules/xml-name-validator": { - "version": "3.0.0", - "dev": true, - "license": "Apache-2.0" - }, - "node_modules/xmlchars": { - "version": "2.2.0", - "dev": true, - "license": "MIT" - }, - "node_modules/y18n": { - "version": "4.0.3", - "dev": true, - "license": "ISC" - }, - "node_modules/yallist": { - "version": "3.1.1", - "dev": true, - "license": "ISC" - }, - "node_modules/yargs": { - "version": "15.4.1", - "dev": true, - "license": "MIT", - "dependencies": { - "cliui": "^6.0.0", - "decamelize": "^1.2.0", - "find-up": "^4.1.0", - "get-caller-file": "^2.0.1", - "require-directory": "^2.1.1", - "require-main-filename": "^2.0.0", - "set-blocking": "^2.0.0", - "string-width": "^4.2.0", - "which-module": "^2.0.0", - "y18n": "^4.0.0", - "yargs-parser": "^18.1.2" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/yargs-parser": { - "version": "18.1.3", - "dev": true, - "license": "ISC", - "dependencies": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" - }, - "engines": { - "node": ">=6" - } - } - }, - "dependencies": { - "@ampproject/remapping": { - "version": "2.2.0", - "dev": true, - "requires": { - "@jridgewell/gen-mapping": "^0.1.0", - "@jridgewell/trace-mapping": "^0.3.9" - } - }, - "@babel/code-frame": { - "version": "7.18.6", - "dev": true, - "requires": { - "@babel/highlight": "^7.18.6" - } - }, - "@babel/compat-data": { - "version": "7.20.14", - "dev": true - }, - "@babel/core": { - "version": "7.20.12", - "dev": true, - "requires": { - "@ampproject/remapping": "^2.1.0", - "@babel/code-frame": "^7.18.6", - "@babel/generator": "^7.20.7", - "@babel/helper-compilation-targets": "^7.20.7", - "@babel/helper-module-transforms": "^7.20.11", - "@babel/helpers": "^7.20.7", - "@babel/parser": "^7.20.7", - "@babel/template": "^7.20.7", - "@babel/traverse": "^7.20.12", - "@babel/types": "^7.20.7", - "convert-source-map": "^1.7.0", - "debug": "^4.1.0", - "gensync": "^1.0.0-beta.2", - "json5": "^2.2.2", - "semver": "^6.3.0" - }, - "dependencies": { - "debug": { - "version": "4.3.4", - "dev": true, - "requires": { - "ms": "2.1.2" - } - }, - "ms": { - "version": "2.1.2", - "dev": true - } - } - }, - "@babel/generator": { - "version": "7.20.14", - "dev": true, - "requires": { - "@babel/types": "^7.20.7", - "@jridgewell/gen-mapping": "^0.3.2", - "jsesc": "^2.5.1" - }, - "dependencies": { - "@jridgewell/gen-mapping": { - "version": "0.3.2", - "dev": true, - "requires": { - "@jridgewell/set-array": "^1.0.1", - "@jridgewell/sourcemap-codec": "^1.4.10", - "@jridgewell/trace-mapping": "^0.3.9" - } - } - } - }, - "@babel/helper-compilation-targets": { - "version": "7.20.7", - "dev": true, - "requires": { - "@babel/compat-data": "^7.20.5", - "@babel/helper-validator-option": "^7.18.6", - "browserslist": "^4.21.3", - "lru-cache": "^5.1.1", - "semver": "^6.3.0" - } - }, - "@babel/helper-environment-visitor": { - "version": "7.18.9", - "dev": true - }, - "@babel/helper-function-name": { - "version": "7.19.0", - "dev": true, - "requires": { - "@babel/template": "^7.18.10", - "@babel/types": "^7.19.0" - } - }, - "@babel/helper-hoist-variables": { - "version": "7.18.6", - "dev": true, - "requires": { - "@babel/types": "^7.18.6" - } - }, - "@babel/helper-module-imports": { - "version": "7.18.6", - "dev": true, - "requires": { - "@babel/types": "^7.18.6" - } - }, - "@babel/helper-module-transforms": { - "version": "7.20.11", - "dev": true, - "requires": { - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-module-imports": "^7.18.6", - "@babel/helper-simple-access": "^7.20.2", - "@babel/helper-split-export-declaration": "^7.18.6", - "@babel/helper-validator-identifier": "^7.19.1", - "@babel/template": "^7.20.7", - "@babel/traverse": "^7.20.10", - "@babel/types": "^7.20.7" - } - }, - "@babel/helper-plugin-utils": { - "version": "7.20.2", - "dev": true - }, - "@babel/helper-simple-access": { - "version": "7.20.2", - "dev": true, - "requires": { - "@babel/types": "^7.20.2" - } - }, - "@babel/helper-split-export-declaration": { - "version": "7.18.6", - "dev": true, - "requires": { - "@babel/types": "^7.18.6" - } - }, - "@babel/helper-string-parser": { - "version": "7.19.4", - "dev": true - }, - "@babel/helper-validator-identifier": { - "version": "7.19.1", - "dev": true - }, - "@babel/helper-validator-option": { - "version": "7.18.6", - "dev": true - }, - "@babel/helpers": { - "version": "7.20.13", - "dev": true, - "requires": { - "@babel/template": "^7.20.7", - "@babel/traverse": "^7.20.13", - "@babel/types": "^7.20.7" - } - }, - "@babel/highlight": { - "version": "7.18.6", - "dev": true, - "requires": { - "@babel/helper-validator-identifier": "^7.18.6", - "chalk": "^2.0.0", - "js-tokens": "^4.0.0" - }, - "dependencies": { - "ansi-styles": { - "version": "3.2.1", - "dev": true, - "requires": { - "color-convert": "^1.9.0" - } - }, - "chalk": { - "version": "2.4.2", - "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", - "dev": true, - "requires": { - "color-name": "1.1.3" - } - }, - "color-name": { - "version": "1.1.3", - "dev": true - }, - "escape-string-regexp": { - "version": "1.0.5", - "dev": true - }, - "has-flag": { - "version": "3.0.0", - "dev": true - }, - "supports-color": { - "version": "5.5.0", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "@babel/parser": { - "version": "7.20.13", - "dev": true - }, - "@babel/plugin-syntax-async-generators": { - "version": "7.8.4", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" - } - }, - "@babel/plugin-syntax-bigint": { - "version": "7.8.3", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" - } - }, - "@babel/plugin-syntax-class-properties": { - "version": "7.12.13", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.12.13" - } - }, - "@babel/plugin-syntax-import-meta": { - "version": "7.10.4", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.10.4" - } - }, - "@babel/plugin-syntax-json-strings": { - "version": "7.8.3", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" - } - }, - "@babel/plugin-syntax-logical-assignment-operators": { - "version": "7.10.4", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.10.4" - } - }, - "@babel/plugin-syntax-nullish-coalescing-operator": { - "version": "7.8.3", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" - } - }, - "@babel/plugin-syntax-numeric-separator": { - "version": "7.10.4", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.10.4" - } - }, - "@babel/plugin-syntax-object-rest-spread": { - "version": "7.8.3", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" - } - }, - "@babel/plugin-syntax-optional-catch-binding": { - "version": "7.8.3", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" - } - }, - "@babel/plugin-syntax-optional-chaining": { - "version": "7.8.3", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" - } - }, - "@babel/plugin-syntax-top-level-await": { - "version": "7.14.5", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.14.5" - } - }, - "@babel/template": { - "version": "7.20.7", - "dev": true, - "requires": { - "@babel/code-frame": "^7.18.6", - "@babel/parser": "^7.20.7", - "@babel/types": "^7.20.7" - } - }, - "@babel/traverse": { - "version": "7.20.13", - "dev": true, - "requires": { - "@babel/code-frame": "^7.18.6", - "@babel/generator": "^7.20.7", - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-function-name": "^7.19.0", - "@babel/helper-hoist-variables": "^7.18.6", - "@babel/helper-split-export-declaration": "^7.18.6", - "@babel/parser": "^7.20.13", - "@babel/types": "^7.20.7", - "debug": "^4.1.0", - "globals": "^11.1.0" - }, - "dependencies": { - "debug": { - "version": "4.3.4", - "dev": true, - "requires": { - "ms": "2.1.2" - } - }, - "ms": { - "version": "2.1.2", - "dev": true - } - } - }, - "@babel/types": { - "version": "7.20.7", - "dev": true, - "requires": { - "@babel/helper-string-parser": "^7.19.4", - "@babel/helper-validator-identifier": "^7.19.1", - "to-fast-properties": "^2.0.0" - } - }, - "@bcoe/v8-coverage": { - "version": "0.2.3", - "dev": true - }, - "@cnakazawa/watch": { - "version": "1.0.4", - "dev": true, - "requires": { - "exec-sh": "^0.3.2", - "minimist": "^1.2.0" - } - }, - "@istanbuljs/load-nyc-config": { - "version": "1.1.0", - "dev": true, - "requires": { - "camelcase": "^5.3.1", - "find-up": "^4.1.0", - "get-package-type": "^0.1.0", - "js-yaml": "^3.13.1", - "resolve-from": "^5.0.0" - } - }, - "@istanbuljs/schema": { - "version": "0.1.3", - "dev": true - }, - "@jest/console": { - "version": "26.6.2", - "dev": true, - "requires": { - "@jest/types": "^26.6.2", - "@types/node": "*", - "chalk": "^4.0.0", - "jest-message-util": "^26.6.2", - "jest-util": "^26.6.2", - "slash": "^3.0.0" - }, - "dependencies": { - "slash": { - "version": "3.0.0", - "dev": true - } - } - }, - "@jest/core": { - "version": "26.6.3", - "dev": true, - "requires": { - "@jest/console": "^26.6.2", - "@jest/reporters": "^26.6.2", - "@jest/test-result": "^26.6.2", - "@jest/transform": "^26.6.2", - "@jest/types": "^26.6.2", - "@types/node": "*", - "ansi-escapes": "^4.2.1", - "chalk": "^4.0.0", - "exit": "^0.1.2", - "graceful-fs": "^4.2.4", - "jest-changed-files": "^26.6.2", - "jest-config": "^26.6.3", - "jest-haste-map": "^26.6.2", - "jest-message-util": "^26.6.2", - "jest-regex-util": "^26.0.0", - "jest-resolve": "^26.6.2", - "jest-resolve-dependencies": "^26.6.3", - "jest-runner": "^26.6.3", - "jest-runtime": "^26.6.3", - "jest-snapshot": "^26.6.2", - "jest-util": "^26.6.2", - "jest-validate": "^26.6.2", - "jest-watcher": "^26.6.2", - "micromatch": "^4.0.2", - "p-each-series": "^2.1.0", - "rimraf": "^3.0.0", - "slash": "^3.0.0", - "strip-ansi": "^6.0.0" - }, - "dependencies": { - "braces": { - "version": "3.0.2", - "dev": true, - "requires": { - "fill-range": "^7.0.1" - } - }, - "fill-range": { - "version": "7.0.1", - "dev": true, - "requires": { - "to-regex-range": "^5.0.1" - } - }, - "is-number": { - "version": "7.0.0", - "dev": true - }, - "micromatch": { - "version": "4.0.5", - "dev": true, - "requires": { - "braces": "^3.0.2", - "picomatch": "^2.3.1" - } - }, - "slash": { - "version": "3.0.0", - "dev": true - }, - "to-regex-range": { - "version": "5.0.1", - "dev": true, - "requires": { - "is-number": "^7.0.0" - } - } - } - }, - "@jest/environment": { - "version": "26.6.2", - "dev": true, - "requires": { - "@jest/fake-timers": "^26.6.2", - "@jest/types": "^26.6.2", - "@types/node": "*", - "jest-mock": "^26.6.2" - } - }, - "@jest/fake-timers": { - "version": "26.6.2", - "dev": true, - "requires": { - "@jest/types": "^26.6.2", - "@sinonjs/fake-timers": "^6.0.1", - "@types/node": "*", - "jest-message-util": "^26.6.2", - "jest-mock": "^26.6.2", - "jest-util": "^26.6.2" - } - }, - "@jest/globals": { - "version": "26.6.2", - "dev": true, - "requires": { - "@jest/environment": "^26.6.2", - "@jest/types": "^26.6.2", - "expect": "^26.6.2" - } - }, - "@jest/reporters": { - "version": "26.6.2", - "dev": true, - "requires": { - "@bcoe/v8-coverage": "^0.2.3", - "@jest/console": "^26.6.2", - "@jest/test-result": "^26.6.2", - "@jest/transform": "^26.6.2", - "@jest/types": "^26.6.2", - "chalk": "^4.0.0", - "collect-v8-coverage": "^1.0.0", - "exit": "^0.1.2", - "glob": "^7.1.2", - "graceful-fs": "^4.2.4", - "istanbul-lib-coverage": "^3.0.0", - "istanbul-lib-instrument": "^4.0.3", - "istanbul-lib-report": "^3.0.0", - "istanbul-lib-source-maps": "^4.0.0", - "istanbul-reports": "^3.0.2", - "jest-haste-map": "^26.6.2", - "jest-resolve": "^26.6.2", - "jest-util": "^26.6.2", - "jest-worker": "^26.6.2", - "node-notifier": "^8.0.0", - "slash": "^3.0.0", - "source-map": "^0.6.0", - "string-length": "^4.0.1", - "terminal-link": "^2.0.0", - "v8-to-istanbul": "^7.0.0" - }, - "dependencies": { - "slash": { - "version": "3.0.0", - "dev": true - } - } - }, - "@jest/source-map": { - "version": "26.6.2", - "dev": true, - "requires": { - "callsites": "^3.0.0", - "graceful-fs": "^4.2.4", - "source-map": "^0.6.0" - } - }, - "@jest/test-result": { - "version": "26.6.2", - "dev": true, - "requires": { - "@jest/console": "^26.6.2", - "@jest/types": "^26.6.2", - "@types/istanbul-lib-coverage": "^2.0.0", - "collect-v8-coverage": "^1.0.0" - } - }, - "@jest/test-sequencer": { - "version": "26.6.3", - "dev": true, - "requires": { - "@jest/test-result": "^26.6.2", - "graceful-fs": "^4.2.4", - "jest-haste-map": "^26.6.2", - "jest-runner": "^26.6.3", - "jest-runtime": "^26.6.3" - } - }, - "@jest/transform": { - "version": "26.6.2", - "dev": true, - "requires": { - "@babel/core": "^7.1.0", - "@jest/types": "^26.6.2", - "babel-plugin-istanbul": "^6.0.0", - "chalk": "^4.0.0", - "convert-source-map": "^1.4.0", - "fast-json-stable-stringify": "^2.0.0", - "graceful-fs": "^4.2.4", - "jest-haste-map": "^26.6.2", - "jest-regex-util": "^26.0.0", - "jest-util": "^26.6.2", - "micromatch": "^4.0.2", - "pirates": "^4.0.1", - "slash": "^3.0.0", - "source-map": "^0.6.1", - "write-file-atomic": "^3.0.0" - }, - "dependencies": { - "braces": { - "version": "3.0.2", - "dev": true, - "requires": { - "fill-range": "^7.0.1" - } - }, - "fill-range": { - "version": "7.0.1", - "dev": true, - "requires": { - "to-regex-range": "^5.0.1" - } - }, - "is-number": { - "version": "7.0.0", - "dev": true - }, - "micromatch": { - "version": "4.0.5", - "dev": true, - "requires": { - "braces": "^3.0.2", - "picomatch": "^2.3.1" - } - }, - "slash": { - "version": "3.0.0", - "dev": true - }, - "to-regex-range": { - "version": "5.0.1", - "dev": true, - "requires": { - "is-number": "^7.0.0" - } - } - } - }, - "@jest/types": { - "version": "26.6.2", - "dev": true, - "requires": { - "@types/istanbul-lib-coverage": "^2.0.0", - "@types/istanbul-reports": "^3.0.0", - "@types/node": "*", - "@types/yargs": "^15.0.0", - "chalk": "^4.0.0" - } - }, - "@jridgewell/gen-mapping": { - "version": "0.1.1", - "dev": true, - "requires": { - "@jridgewell/set-array": "^1.0.0", - "@jridgewell/sourcemap-codec": "^1.4.10" - } - }, - "@jridgewell/resolve-uri": { - "version": "3.1.0", - "dev": true - }, - "@jridgewell/set-array": { - "version": "1.1.2", - "dev": true - }, - "@jridgewell/sourcemap-codec": { - "version": "1.4.14", - "dev": true - }, - "@jridgewell/trace-mapping": { - "version": "0.3.17", - "dev": true, - "requires": { - "@jridgewell/resolve-uri": "3.1.0", - "@jridgewell/sourcemap-codec": "1.4.14" - } - }, - "@mrmlnc/readdir-enhanced": { - "version": "2.2.1", - "dev": true, - "requires": { - "call-me-maybe": "^1.0.1", - "glob-to-regexp": "^0.3.0" - } - }, - "@ngageoint/mage.service": { - "version": "file:../../../service", - "requires": { - "@fluffy-spoon/substitute": "^1.196.0", - "@ngageoint/geopackage": "^4.2.6", - "@node-saml/passport-saml": "^4.0.4", - "@turf/centroid": "^6.5.0", - "@turf/kinks": "^6.5.0", - "@types/archiver": "^5.3.4", - "@types/async": "^3.0.5", - "@types/bson": "^1.0.11", - "@types/busboy": "^1.5.0", - "@types/chai": "^4.2.19", - "@types/chai-as-promised": "^7.1.2", - "@types/deep-equal": "^1.0.1", - "@types/express": "^4.17.19", - "@types/express-serve-static-core": "~4.17.0", - "@types/fs-extra": "^8.0.1", - "@types/geojson": "^7946.0.7", - "@types/json-schema": "^7.0.11", - "@types/json2csv": "~4.5.0", - "@types/lodash": "^4.14.155", - "@types/mime-types": "^2.1.1", - "@types/mocha": "^7.0.2", - "@types/mongodb": "^3.6.20", - "@types/mongoose": "^4.7.56", - "@types/multer": "^1.4.7", - "@types/node": "^18.18.4", - "@types/node-fetch": "^2.5.4", - "@types/passport": "^1.0.3", - "@types/sinon": "^9.0.4", - "@types/sinon-chai": "^3.2.4", - "@types/superagent": "^8.1.3", - "@types/supertest": "^2.0.16", - "@types/uniqid": "^5.2.0", - "@typescript-eslint/eslint-plugin": "^6.7.5", - "@typescript-eslint/parser": "^6.7.5", - "@xmldom/xmldom": "^0.8.10", - "adm-zip": "0.4.9", - "ajv": "^6.11.0", - "archiver": "5.3.0", - "assert": "2.0.0", - "async": "^3.2.4", - "axios": "^1.6.5", - "base-64": "1.0.0", - "better-sqlite3": "^8.6.0", - "body-parser": "~1.19.0", - "busboy": "^1.6.0", - "cfenv": "1.0.3", - "chai": "^4.3.6", - "chai-as-promised": "^7.1.1", - "commander": "^8.2.0", - "coveralls": "3.0.4", - "cpy-cli": "^5.0.0", - "dbf": "0.1.0", - "deep-equal": "^2.0.2", - "eslint": "^8.51.0", - "eslint-config-prettier": "^6.9.0", - "eslint-plugin-prettier": "^3.1.2", - "express": "^4.18.2", - "express-session": "1.17.2", - "file-type": "^16.5.4", - "fs-extra": "4.0.3", - "geojson": "^0.5.0", - "geojson-validation": "^1.0.2", - "gm": "1.23.1", - "iconv-lite": "^0.5.1", - "json2csv": "4.5.1", - "jsonwebtoken": "^9.0.2", - "jszip": "^3.7.1", - "lodash": "^4.17.21", - "mgrs": "^1.0.0", - "mime-types": "^2.1.35", - "mocha": "^7.1.1", - "mock-fs": "4.13.0", - "moment": "^2.29.4", - "mongodb-memory-server": "^9.1.3", - "mongodb-migrations": "0.8.5", - "mongoose": "^4.13.21", - "mongoose-beautiful-unique-validation": "7.1.1", - "multer": "^1.4.5-lts.1", - "nock": "^11.7.2", - "node-fetch": "^2.6.0", - "npm-run-all": "^4.1.5", - "nyc": "^14.1.1", - "openapi-enforcer": "1.15.5", - "passport": "^0.6.0", - "passport-anonymous": "1.0.1", - "passport-http-bearer": "1.0.1", - "passport-ldapauth": "^3.0.1", - "passport-local": "1.0.0", - "passport-oauth2": "1.6.0", - "passport-openidconnect": "0.1.1", - "pem-jwk": "1.5.1", - "pem2jwk": "1.0.2", - "prettier": "^1.19.1", - "proxyquire": "2.1.3", - "pug": "^3.0.2", - "rfc5646": "^3.0.0", - "rimraf": "^5.0.5", - "sinon": "7.5.0", - "sinon-chai": "3.3.0", - "sinon-mongoose": "2.3.0", - "superagent": "^8.0.0", - "supertest": "^6.3.3", - "svg-captcha": "^1.4.0", - "ts-mockito": "^2.5.0", - "typescript": "~4.6.0", - "uniqid": "^5.2.0", - "walk": "2.3.4", - "winston": "1.0.1", - "wkx": "0.4.8", - "wms-capabilities": "^0.4.0", - "wtfnode": "^0.8.4", - "xmlbuilder2": "3.0.2", - "xpath": "0.0.23", - "yaml": "^1.8.2" - }, - "dependencies": { - "@aws-crypto/ie11-detection": { - "version": "2.0.2", - "optional": true, - "peer": true, - "requires": { - "tslib": "^1.11.1" - }, - "dependencies": { - "tslib": { - "version": "1.14.1", - "optional": true, - "peer": true - } - } - }, - "@aws-crypto/sha256-browser": { - "version": "2.0.0", - "optional": true, - "peer": true, - "requires": { - "@aws-crypto/ie11-detection": "^2.0.0", - "@aws-crypto/sha256-js": "^2.0.0", - "@aws-crypto/supports-web-crypto": "^2.0.0", - "@aws-crypto/util": "^2.0.0", - "@aws-sdk/types": "^3.1.0", - "@aws-sdk/util-locate-window": "^3.0.0", - "@aws-sdk/util-utf8-browser": "^3.0.0", - "tslib": "^1.11.1" - }, - "dependencies": { - "tslib": { - "version": "1.14.1", - "optional": true, - "peer": true - } - } - }, - "@aws-crypto/sha256-js": { - "version": "2.0.0", - "optional": true, - "peer": true, - "requires": { - "@aws-crypto/util": "^2.0.0", - "@aws-sdk/types": "^3.1.0", - "tslib": "^1.11.1" - }, - "dependencies": { - "tslib": { - "version": "1.14.1", - "optional": true, - "peer": true - } - } - }, - "@aws-crypto/supports-web-crypto": { - "version": "2.0.2", - "optional": true, - "peer": true, - "requires": { - "tslib": "^1.11.1" - }, - "dependencies": { - "tslib": { - "version": "1.14.1", - "optional": true, - "peer": true - } - } - }, - "@aws-crypto/util": { - "version": "2.0.2", - "optional": true, - "peer": true, - "requires": { - "@aws-sdk/types": "^3.110.0", - "@aws-sdk/util-utf8-browser": "^3.0.0", - "tslib": "^1.11.1" - }, - "dependencies": { - "tslib": { - "version": "1.14.1", - "optional": true, - "peer": true - } - } - }, - "@aws-sdk/abort-controller": { - "version": "3.215.0", - "optional": true, - "peer": true, - "requires": { - "@aws-sdk/types": "3.215.0", - "tslib": "^2.3.1" - } - }, - "@aws-sdk/client-cognito-identity": { - "version": "3.218.0", - "optional": true, - "peer": true, - "requires": { - "@aws-crypto/sha256-browser": "2.0.0", - "@aws-crypto/sha256-js": "2.0.0", - "@aws-sdk/client-sts": "3.218.0", - "@aws-sdk/config-resolver": "3.215.0", - "@aws-sdk/credential-provider-node": "3.218.0", - "@aws-sdk/fetch-http-handler": "3.215.0", - "@aws-sdk/hash-node": "3.215.0", - "@aws-sdk/invalid-dependency": "3.215.0", - "@aws-sdk/middleware-content-length": "3.215.0", - "@aws-sdk/middleware-endpoint": "3.215.0", - "@aws-sdk/middleware-host-header": "3.215.0", - "@aws-sdk/middleware-logger": "3.215.0", - "@aws-sdk/middleware-recursion-detection": "3.215.0", - "@aws-sdk/middleware-retry": "3.215.0", - "@aws-sdk/middleware-serde": "3.215.0", - "@aws-sdk/middleware-signing": "3.215.0", - "@aws-sdk/middleware-stack": "3.215.0", - "@aws-sdk/middleware-user-agent": "3.215.0", - "@aws-sdk/node-config-provider": "3.215.0", - "@aws-sdk/node-http-handler": "3.215.0", - "@aws-sdk/protocol-http": "3.215.0", - "@aws-sdk/smithy-client": "3.215.0", - "@aws-sdk/types": "3.215.0", - "@aws-sdk/url-parser": "3.215.0", - "@aws-sdk/util-base64": "3.208.0", - "@aws-sdk/util-body-length-browser": "3.188.0", - "@aws-sdk/util-body-length-node": "3.208.0", - "@aws-sdk/util-defaults-mode-browser": "3.215.0", - "@aws-sdk/util-defaults-mode-node": "3.215.0", - "@aws-sdk/util-endpoints": "3.216.0", - "@aws-sdk/util-user-agent-browser": "3.215.0", - "@aws-sdk/util-user-agent-node": "3.215.0", - "@aws-sdk/util-utf8-browser": "3.188.0", - "@aws-sdk/util-utf8-node": "3.208.0", - "tslib": "^2.3.1" - } - }, - "@aws-sdk/client-sso": { - "version": "3.218.0", - "optional": true, - "peer": true, - "requires": { - "@aws-crypto/sha256-browser": "2.0.0", - "@aws-crypto/sha256-js": "2.0.0", - "@aws-sdk/config-resolver": "3.215.0", - "@aws-sdk/fetch-http-handler": "3.215.0", - "@aws-sdk/hash-node": "3.215.0", - "@aws-sdk/invalid-dependency": "3.215.0", - "@aws-sdk/middleware-content-length": "3.215.0", - "@aws-sdk/middleware-endpoint": "3.215.0", - "@aws-sdk/middleware-host-header": "3.215.0", - "@aws-sdk/middleware-logger": "3.215.0", - "@aws-sdk/middleware-recursion-detection": "3.215.0", - "@aws-sdk/middleware-retry": "3.215.0", - "@aws-sdk/middleware-serde": "3.215.0", - "@aws-sdk/middleware-stack": "3.215.0", - "@aws-sdk/middleware-user-agent": "3.215.0", - "@aws-sdk/node-config-provider": "3.215.0", - "@aws-sdk/node-http-handler": "3.215.0", - "@aws-sdk/protocol-http": "3.215.0", - "@aws-sdk/smithy-client": "3.215.0", - "@aws-sdk/types": "3.215.0", - "@aws-sdk/url-parser": "3.215.0", - "@aws-sdk/util-base64": "3.208.0", - "@aws-sdk/util-body-length-browser": "3.188.0", - "@aws-sdk/util-body-length-node": "3.208.0", - "@aws-sdk/util-defaults-mode-browser": "3.215.0", - "@aws-sdk/util-defaults-mode-node": "3.215.0", - "@aws-sdk/util-endpoints": "3.216.0", - "@aws-sdk/util-user-agent-browser": "3.215.0", - "@aws-sdk/util-user-agent-node": "3.215.0", - "@aws-sdk/util-utf8-browser": "3.188.0", - "@aws-sdk/util-utf8-node": "3.208.0", - "tslib": "^2.3.1" - } - }, - "@aws-sdk/client-sso-oidc": { - "version": "3.216.0", - "optional": true, - "peer": true, - "requires": { - "@aws-crypto/sha256-browser": "2.0.0", - "@aws-crypto/sha256-js": "2.0.0", - "@aws-sdk/config-resolver": "3.215.0", - "@aws-sdk/fetch-http-handler": "3.215.0", - "@aws-sdk/hash-node": "3.215.0", - "@aws-sdk/invalid-dependency": "3.215.0", - "@aws-sdk/middleware-content-length": "3.215.0", - "@aws-sdk/middleware-endpoint": "3.215.0", - "@aws-sdk/middleware-host-header": "3.215.0", - "@aws-sdk/middleware-logger": "3.215.0", - "@aws-sdk/middleware-recursion-detection": "3.215.0", - "@aws-sdk/middleware-retry": "3.215.0", - "@aws-sdk/middleware-serde": "3.215.0", - "@aws-sdk/middleware-stack": "3.215.0", - "@aws-sdk/middleware-user-agent": "3.215.0", - "@aws-sdk/node-config-provider": "3.215.0", - "@aws-sdk/node-http-handler": "3.215.0", - "@aws-sdk/protocol-http": "3.215.0", - "@aws-sdk/smithy-client": "3.215.0", - "@aws-sdk/types": "3.215.0", - "@aws-sdk/url-parser": "3.215.0", - "@aws-sdk/util-base64": "3.208.0", - "@aws-sdk/util-body-length-browser": "3.188.0", - "@aws-sdk/util-body-length-node": "3.208.0", - "@aws-sdk/util-defaults-mode-browser": "3.215.0", - "@aws-sdk/util-defaults-mode-node": "3.215.0", - "@aws-sdk/util-endpoints": "3.216.0", - "@aws-sdk/util-user-agent-browser": "3.215.0", - "@aws-sdk/util-user-agent-node": "3.215.0", - "@aws-sdk/util-utf8-browser": "3.188.0", - "@aws-sdk/util-utf8-node": "3.208.0", - "tslib": "^2.3.1" - } - }, - "@aws-sdk/client-sts": { - "version": "3.218.0", - "optional": true, - "peer": true, - "requires": { - "@aws-crypto/sha256-browser": "2.0.0", - "@aws-crypto/sha256-js": "2.0.0", - "@aws-sdk/config-resolver": "3.215.0", - "@aws-sdk/credential-provider-node": "3.218.0", - "@aws-sdk/fetch-http-handler": "3.215.0", - "@aws-sdk/hash-node": "3.215.0", - "@aws-sdk/invalid-dependency": "3.215.0", - "@aws-sdk/middleware-content-length": "3.215.0", - "@aws-sdk/middleware-endpoint": "3.215.0", - "@aws-sdk/middleware-host-header": "3.215.0", - "@aws-sdk/middleware-logger": "3.215.0", - "@aws-sdk/middleware-recursion-detection": "3.215.0", - "@aws-sdk/middleware-retry": "3.215.0", - "@aws-sdk/middleware-sdk-sts": "3.215.0", - "@aws-sdk/middleware-serde": "3.215.0", - "@aws-sdk/middleware-signing": "3.215.0", - "@aws-sdk/middleware-stack": "3.215.0", - "@aws-sdk/middleware-user-agent": "3.215.0", - "@aws-sdk/node-config-provider": "3.215.0", - "@aws-sdk/node-http-handler": "3.215.0", - "@aws-sdk/protocol-http": "3.215.0", - "@aws-sdk/smithy-client": "3.215.0", - "@aws-sdk/types": "3.215.0", - "@aws-sdk/url-parser": "3.215.0", - "@aws-sdk/util-base64": "3.208.0", - "@aws-sdk/util-body-length-browser": "3.188.0", - "@aws-sdk/util-body-length-node": "3.208.0", - "@aws-sdk/util-defaults-mode-browser": "3.215.0", - "@aws-sdk/util-defaults-mode-node": "3.215.0", - "@aws-sdk/util-endpoints": "3.216.0", - "@aws-sdk/util-user-agent-browser": "3.215.0", - "@aws-sdk/util-user-agent-node": "3.215.0", - "@aws-sdk/util-utf8-browser": "3.188.0", - "@aws-sdk/util-utf8-node": "3.208.0", - "fast-xml-parser": "4.0.11", - "tslib": "^2.3.1" - } - }, - "@aws-sdk/config-resolver": { - "version": "3.215.0", - "optional": true, - "peer": true, - "requires": { - "@aws-sdk/signature-v4": "3.215.0", - "@aws-sdk/types": "3.215.0", - "@aws-sdk/util-config-provider": "3.208.0", - "@aws-sdk/util-middleware": "3.215.0", - "tslib": "^2.3.1" - } - }, - "@aws-sdk/credential-provider-cognito-identity": { - "version": "3.218.0", - "optional": true, - "peer": true, - "requires": { - "@aws-sdk/client-cognito-identity": "3.218.0", - "@aws-sdk/property-provider": "3.215.0", - "@aws-sdk/types": "3.215.0", - "tslib": "^2.3.1" - } - }, - "@aws-sdk/credential-provider-env": { - "version": "3.215.0", - "optional": true, - "peer": true, - "requires": { - "@aws-sdk/property-provider": "3.215.0", - "@aws-sdk/types": "3.215.0", - "tslib": "^2.3.1" - } - }, - "@aws-sdk/credential-provider-imds": { - "version": "3.215.0", - "optional": true, - "peer": true, - "requires": { - "@aws-sdk/node-config-provider": "3.215.0", - "@aws-sdk/property-provider": "3.215.0", - "@aws-sdk/types": "3.215.0", - "@aws-sdk/url-parser": "3.215.0", - "tslib": "^2.3.1" - } - }, - "@aws-sdk/credential-provider-ini": { - "version": "3.218.0", - "optional": true, - "peer": true, - "requires": { - "@aws-sdk/credential-provider-env": "3.215.0", - "@aws-sdk/credential-provider-imds": "3.215.0", - "@aws-sdk/credential-provider-sso": "3.218.0", - "@aws-sdk/credential-provider-web-identity": "3.215.0", - "@aws-sdk/property-provider": "3.215.0", - "@aws-sdk/shared-ini-file-loader": "3.215.0", - "@aws-sdk/types": "3.215.0", - "tslib": "^2.3.1" - } - }, - "@aws-sdk/credential-provider-node": { - "version": "3.218.0", - "optional": true, - "peer": true, - "requires": { - "@aws-sdk/credential-provider-env": "3.215.0", - "@aws-sdk/credential-provider-imds": "3.215.0", - "@aws-sdk/credential-provider-ini": "3.218.0", - "@aws-sdk/credential-provider-process": "3.215.0", - "@aws-sdk/credential-provider-sso": "3.218.0", - "@aws-sdk/credential-provider-web-identity": "3.215.0", - "@aws-sdk/property-provider": "3.215.0", - "@aws-sdk/shared-ini-file-loader": "3.215.0", - "@aws-sdk/types": "3.215.0", - "tslib": "^2.3.1" - } - }, - "@aws-sdk/credential-provider-process": { - "version": "3.215.0", - "optional": true, - "peer": true, - "requires": { - "@aws-sdk/property-provider": "3.215.0", - "@aws-sdk/shared-ini-file-loader": "3.215.0", - "@aws-sdk/types": "3.215.0", - "tslib": "^2.3.1" - } - }, - "@aws-sdk/credential-provider-sso": { - "version": "3.218.0", - "optional": true, - "peer": true, - "requires": { - "@aws-sdk/client-sso": "3.218.0", - "@aws-sdk/property-provider": "3.215.0", - "@aws-sdk/shared-ini-file-loader": "3.215.0", - "@aws-sdk/token-providers": "3.216.0", - "@aws-sdk/types": "3.215.0", - "tslib": "^2.3.1" - } - }, - "@aws-sdk/credential-provider-web-identity": { - "version": "3.215.0", - "optional": true, - "peer": true, - "requires": { - "@aws-sdk/property-provider": "3.215.0", - "@aws-sdk/types": "3.215.0", - "tslib": "^2.3.1" - } - }, - "@aws-sdk/credential-providers": { - "version": "3.218.0", - "optional": true, - "peer": true, - "requires": { - "@aws-sdk/client-cognito-identity": "3.218.0", - "@aws-sdk/client-sso": "3.218.0", - "@aws-sdk/client-sts": "3.218.0", - "@aws-sdk/credential-provider-cognito-identity": "3.218.0", - "@aws-sdk/credential-provider-env": "3.215.0", - "@aws-sdk/credential-provider-imds": "3.215.0", - "@aws-sdk/credential-provider-ini": "3.218.0", - "@aws-sdk/credential-provider-node": "3.218.0", - "@aws-sdk/credential-provider-process": "3.215.0", - "@aws-sdk/credential-provider-sso": "3.218.0", - "@aws-sdk/credential-provider-web-identity": "3.215.0", - "@aws-sdk/property-provider": "3.215.0", - "@aws-sdk/shared-ini-file-loader": "3.215.0", - "@aws-sdk/types": "3.215.0", - "tslib": "^2.3.1" - } - }, - "@aws-sdk/fetch-http-handler": { - "version": "3.215.0", - "optional": true, - "peer": true, - "requires": { - "@aws-sdk/protocol-http": "3.215.0", - "@aws-sdk/querystring-builder": "3.215.0", - "@aws-sdk/types": "3.215.0", - "@aws-sdk/util-base64": "3.208.0", - "tslib": "^2.3.1" - } - }, - "@aws-sdk/hash-node": { - "version": "3.215.0", - "optional": true, - "peer": true, - "requires": { - "@aws-sdk/types": "3.215.0", - "@aws-sdk/util-buffer-from": "3.208.0", - "tslib": "^2.3.1" - } - }, - "@aws-sdk/invalid-dependency": { - "version": "3.215.0", - "optional": true, - "peer": true, - "requires": { - "@aws-sdk/types": "3.215.0", - "tslib": "^2.3.1" - } - }, - "@aws-sdk/is-array-buffer": { - "version": "3.201.0", - "optional": true, - "peer": true, - "requires": { - "tslib": "^2.3.1" - } - }, - "@aws-sdk/middleware-content-length": { - "version": "3.215.0", - "optional": true, - "peer": true, - "requires": { - "@aws-sdk/protocol-http": "3.215.0", - "@aws-sdk/types": "3.215.0", - "tslib": "^2.3.1" - } - }, - "@aws-sdk/middleware-endpoint": { - "version": "3.215.0", - "optional": true, - "peer": true, - "requires": { - "@aws-sdk/middleware-serde": "3.215.0", - "@aws-sdk/protocol-http": "3.215.0", - "@aws-sdk/signature-v4": "3.215.0", - "@aws-sdk/types": "3.215.0", - "@aws-sdk/url-parser": "3.215.0", - "@aws-sdk/util-config-provider": "3.208.0", - "@aws-sdk/util-middleware": "3.215.0", - "tslib": "^2.3.1" - } - }, - "@aws-sdk/middleware-host-header": { - "version": "3.215.0", - "optional": true, - "peer": true, - "requires": { - "@aws-sdk/protocol-http": "3.215.0", - "@aws-sdk/types": "3.215.0", - "tslib": "^2.3.1" - } - }, - "@aws-sdk/middleware-logger": { - "version": "3.215.0", - "optional": true, - "peer": true, - "requires": { - "@aws-sdk/types": "3.215.0", - "tslib": "^2.3.1" - } - }, - "@aws-sdk/middleware-recursion-detection": { - "version": "3.215.0", - "optional": true, - "peer": true, - "requires": { - "@aws-sdk/protocol-http": "3.215.0", - "@aws-sdk/types": "3.215.0", - "tslib": "^2.3.1" - } - }, - "@aws-sdk/middleware-retry": { - "version": "3.215.0", - "optional": true, - "peer": true, - "requires": { - "@aws-sdk/protocol-http": "3.215.0", - "@aws-sdk/service-error-classification": "3.215.0", - "@aws-sdk/types": "3.215.0", - "@aws-sdk/util-middleware": "3.215.0", - "tslib": "^2.3.1", - "uuid": "^8.3.2" - } - }, - "@aws-sdk/middleware-sdk-sts": { - "version": "3.215.0", - "optional": true, - "peer": true, - "requires": { - "@aws-sdk/middleware-signing": "3.215.0", - "@aws-sdk/property-provider": "3.215.0", - "@aws-sdk/protocol-http": "3.215.0", - "@aws-sdk/signature-v4": "3.215.0", - "@aws-sdk/types": "3.215.0", - "tslib": "^2.3.1" - } - }, - "@aws-sdk/middleware-serde": { - "version": "3.215.0", - "optional": true, - "peer": true, - "requires": { - "@aws-sdk/types": "3.215.0", - "tslib": "^2.3.1" - } - }, - "@aws-sdk/middleware-signing": { - "version": "3.215.0", - "optional": true, - "peer": true, - "requires": { - "@aws-sdk/property-provider": "3.215.0", - "@aws-sdk/protocol-http": "3.215.0", - "@aws-sdk/signature-v4": "3.215.0", - "@aws-sdk/types": "3.215.0", - "@aws-sdk/util-middleware": "3.215.0", - "tslib": "^2.3.1" - } - }, - "@aws-sdk/middleware-stack": { - "version": "3.215.0", - "optional": true, - "peer": true, - "requires": { - "tslib": "^2.3.1" - } - }, - "@aws-sdk/middleware-user-agent": { - "version": "3.215.0", - "optional": true, - "peer": true, - "requires": { - "@aws-sdk/protocol-http": "3.215.0", - "@aws-sdk/types": "3.215.0", - "tslib": "^2.3.1" - } - }, - "@aws-sdk/node-config-provider": { - "version": "3.215.0", - "optional": true, - "peer": true, - "requires": { - "@aws-sdk/property-provider": "3.215.0", - "@aws-sdk/shared-ini-file-loader": "3.215.0", - "@aws-sdk/types": "3.215.0", - "tslib": "^2.3.1" - } - }, - "@aws-sdk/node-http-handler": { - "version": "3.215.0", - "optional": true, - "peer": true, - "requires": { - "@aws-sdk/abort-controller": "3.215.0", - "@aws-sdk/protocol-http": "3.215.0", - "@aws-sdk/querystring-builder": "3.215.0", - "@aws-sdk/types": "3.215.0", - "tslib": "^2.3.1" - } - }, - "@aws-sdk/property-provider": { - "version": "3.215.0", - "optional": true, - "peer": true, - "requires": { - "@aws-sdk/types": "3.215.0", - "tslib": "^2.3.1" - } - }, - "@aws-sdk/protocol-http": { - "version": "3.215.0", - "optional": true, - "peer": true, - "requires": { - "@aws-sdk/types": "3.215.0", - "tslib": "^2.3.1" - } - }, - "@aws-sdk/querystring-builder": { - "version": "3.215.0", - "optional": true, - "peer": true, - "requires": { - "@aws-sdk/types": "3.215.0", - "@aws-sdk/util-uri-escape": "3.201.0", - "tslib": "^2.3.1" - } - }, - "@aws-sdk/querystring-parser": { - "version": "3.215.0", - "optional": true, - "peer": true, - "requires": { - "@aws-sdk/types": "3.215.0", - "tslib": "^2.3.1" - } - }, - "@aws-sdk/service-error-classification": { - "version": "3.215.0", - "optional": true, - "peer": true - }, - "@aws-sdk/shared-ini-file-loader": { - "version": "3.215.0", - "optional": true, - "peer": true, - "requires": { - "@aws-sdk/types": "3.215.0", - "tslib": "^2.3.1" - } - }, - "@aws-sdk/signature-v4": { - "version": "3.215.0", - "optional": true, - "peer": true, - "requires": { - "@aws-sdk/is-array-buffer": "3.201.0", - "@aws-sdk/types": "3.215.0", - "@aws-sdk/util-hex-encoding": "3.201.0", - "@aws-sdk/util-middleware": "3.215.0", - "@aws-sdk/util-uri-escape": "3.201.0", - "tslib": "^2.3.1" - } - }, - "@aws-sdk/smithy-client": { - "version": "3.215.0", - "optional": true, - "peer": true, - "requires": { - "@aws-sdk/middleware-stack": "3.215.0", - "@aws-sdk/types": "3.215.0", - "tslib": "^2.3.1" - } - }, - "@aws-sdk/token-providers": { - "version": "3.216.0", - "optional": true, - "peer": true, - "requires": { - "@aws-sdk/client-sso-oidc": "3.216.0", - "@aws-sdk/property-provider": "3.215.0", - "@aws-sdk/shared-ini-file-loader": "3.215.0", - "@aws-sdk/types": "3.215.0", - "tslib": "^2.3.1" - } - }, - "@aws-sdk/types": { - "version": "3.215.0", - "optional": true, - "peer": true - }, - "@aws-sdk/url-parser": { - "version": "3.215.0", - "optional": true, - "peer": true, - "requires": { - "@aws-sdk/querystring-parser": "3.215.0", - "@aws-sdk/types": "3.215.0", - "tslib": "^2.3.1" - } - }, - "@aws-sdk/util-base64": { - "version": "3.208.0", - "optional": true, - "peer": true, - "requires": { - "@aws-sdk/util-buffer-from": "3.208.0", - "tslib": "^2.3.1" - } - }, - "@aws-sdk/util-body-length-browser": { - "version": "3.188.0", - "optional": true, - "peer": true, - "requires": { - "tslib": "^2.3.1" - } - }, - "@aws-sdk/util-body-length-node": { - "version": "3.208.0", - "optional": true, - "peer": true, - "requires": { - "tslib": "^2.3.1" - } - }, - "@aws-sdk/util-buffer-from": { - "version": "3.208.0", - "optional": true, - "peer": true, - "requires": { - "@aws-sdk/is-array-buffer": "3.201.0", - "tslib": "^2.3.1" - } - }, - "@aws-sdk/util-config-provider": { - "version": "3.208.0", - "optional": true, - "peer": true, - "requires": { - "tslib": "^2.3.1" - } - }, - "@aws-sdk/util-defaults-mode-browser": { - "version": "3.215.0", - "optional": true, - "peer": true, - "requires": { - "@aws-sdk/property-provider": "3.215.0", - "@aws-sdk/types": "3.215.0", - "bowser": "^2.11.0", - "tslib": "^2.3.1" - } - }, - "@aws-sdk/util-defaults-mode-node": { - "version": "3.215.0", - "optional": true, - "peer": true, - "requires": { - "@aws-sdk/config-resolver": "3.215.0", - "@aws-sdk/credential-provider-imds": "3.215.0", - "@aws-sdk/node-config-provider": "3.215.0", - "@aws-sdk/property-provider": "3.215.0", - "@aws-sdk/types": "3.215.0", - "tslib": "^2.3.1" - } - }, - "@aws-sdk/util-endpoints": { - "version": "3.216.0", - "optional": true, - "peer": true, - "requires": { - "@aws-sdk/types": "3.215.0", - "tslib": "^2.3.1" - } - }, - "@aws-sdk/util-hex-encoding": { - "version": "3.201.0", - "optional": true, - "peer": true, - "requires": { - "tslib": "^2.3.1" - } - }, - "@aws-sdk/util-locate-window": { - "version": "3.208.0", - "optional": true, - "peer": true, - "requires": { - "tslib": "^2.3.1" - } - }, - "@aws-sdk/util-middleware": { - "version": "3.215.0", - "optional": true, - "peer": true, - "requires": { - "tslib": "^2.3.1" - } - }, - "@aws-sdk/util-uri-escape": { - "version": "3.201.0", - "optional": true, - "peer": true, - "requires": { - "tslib": "^2.3.1" - } - }, - "@aws-sdk/util-user-agent-browser": { - "version": "3.215.0", - "optional": true, - "peer": true, - "requires": { - "@aws-sdk/types": "3.215.0", - "bowser": "^2.11.0", - "tslib": "^2.3.1" - } - }, - "@aws-sdk/util-user-agent-node": { - "version": "3.215.0", - "optional": true, - "peer": true, - "requires": { - "@aws-sdk/node-config-provider": "3.215.0", - "@aws-sdk/types": "3.215.0", - "tslib": "^2.3.1" - } - }, - "@aws-sdk/util-utf8-browser": { - "version": "3.188.0", - "optional": true, - "peer": true, - "requires": { - "tslib": "^2.3.1" - } - }, - "@aws-sdk/util-utf8-node": { - "version": "3.208.0", - "optional": true, - "peer": true, - "requires": { - "@aws-sdk/util-buffer-from": "3.208.0", - "tslib": "^2.3.1" - } - }, - "@babel/code-frame": { - "version": "7.18.6", - "dev": true, - "peer": true, - "requires": { - "@babel/highlight": "^7.18.6" - } - }, - "@babel/generator": { - "version": "7.20.5", - "dev": true, - "peer": true, - "requires": { - "@babel/types": "^7.20.5", - "@jridgewell/gen-mapping": "^0.3.2", - "jsesc": "^2.5.1" - } - }, - "@babel/helper-environment-visitor": { - "version": "7.18.9", - "dev": true, - "peer": true - }, - "@babel/helper-function-name": { - "version": "7.19.0", - "dev": true, - "peer": true, - "requires": { - "@babel/template": "^7.18.10", - "@babel/types": "^7.19.0" - } - }, - "@babel/helper-hoist-variables": { - "version": "7.18.6", - "dev": true, - "peer": true, - "requires": { - "@babel/types": "^7.18.6" - } - }, - "@babel/helper-split-export-declaration": { - "version": "7.18.6", - "dev": true, - "peer": true, - "requires": { - "@babel/types": "^7.18.6" - } - }, - "@babel/helper-string-parser": { - "version": "7.19.4", - "dev": true, - "peer": true - }, - "@babel/helper-validator-identifier": { - "version": "7.19.1", - "dev": true, - "peer": true - }, - "@babel/highlight": { - "version": "7.18.6", - "dev": true, - "peer": true, - "requires": { - "@babel/helper-validator-identifier": "^7.18.6", - "chalk": "^2.0.0", - "js-tokens": "^4.0.0" - }, - "dependencies": { - "ansi-styles": { - "version": "3.2.1", - "dev": true, - "peer": true, - "requires": { - "color-convert": "^1.9.0" - } - }, - "chalk": { - "version": "2.4.2", - "dev": true, - "peer": true, - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - } - }, - "color-convert": { - "version": "1.9.3", - "dev": true, - "peer": true, - "requires": { - "color-name": "1.1.3" - } - }, - "color-name": { - "version": "1.1.3", - "dev": true, - "peer": true - }, - "has-flag": { - "version": "3.0.0", - "dev": true, - "peer": true - }, - "supports-color": { - "version": "5.5.0", - "dev": true, - "peer": true, - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "@babel/parser": { - "version": "7.20.5", - "dev": true, - "peer": true - }, - "@babel/template": { - "version": "7.18.10", - "dev": true, - "peer": true, - "requires": { - "@babel/code-frame": "^7.18.6", - "@babel/parser": "^7.18.10", - "@babel/types": "^7.18.10" - } - }, - "@babel/traverse": { - "version": "7.20.5", - "dev": true, - "peer": true, - "requires": { - "@babel/code-frame": "^7.18.6", - "@babel/generator": "^7.20.5", - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-function-name": "^7.19.0", - "@babel/helper-hoist-variables": "^7.18.6", - "@babel/helper-split-export-declaration": "^7.18.6", - "@babel/parser": "^7.20.5", - "@babel/types": "^7.20.5", - "debug": "^4.1.0", - "globals": "^11.1.0" - }, - "dependencies": { - "globals": { - "version": "11.12.0", - "dev": true, - "peer": true - } - } - }, - "@babel/types": { - "version": "7.20.5", - "dev": true, - "peer": true, - "requires": { - "@babel/helper-string-parser": "^7.19.4", - "@babel/helper-validator-identifier": "^7.19.1", - "to-fast-properties": "^2.0.0" - } - }, - "@fluffy-spoon/substitute": { - "version": "1.208.0", - "dev": true, - "peer": true - }, - "@jridgewell/gen-mapping": { - "version": "0.3.2", - "dev": true, - "peer": true, - "requires": { - "@jridgewell/set-array": "^1.0.1", - "@jridgewell/sourcemap-codec": "^1.4.10", - "@jridgewell/trace-mapping": "^0.3.9" - } - }, - "@jridgewell/resolve-uri": { - "version": "3.1.0", - "dev": true, - "peer": true - }, - "@jridgewell/set-array": { - "version": "1.1.2", - "dev": true, - "peer": true - }, - "@jridgewell/sourcemap-codec": { - "version": "1.4.14", - "dev": true, - "peer": true - }, - "@jridgewell/trace-mapping": { - "version": "0.3.17", - "dev": true, - "peer": true, - "requires": { - "@jridgewell/resolve-uri": "3.1.0", - "@jridgewell/sourcemap-codec": "1.4.14" - } - }, - "@mrmlnc/readdir-enhanced": { - "version": "2.2.1", - "dev": true, - "peer": true, - "requires": { - "call-me-maybe": "^1.0.1", - "glob-to-regexp": "^0.3.0" - } - }, - "@ngageoint/geopackage": { - "version": "4.2.3", - "peer": true, - "requires": { - "@turf/bbox": "6.3.0", - "@turf/boolean-clockwise": "6.5.0", - "@turf/boolean-point-in-polygon": "6.5.0", - "@turf/boolean-within": "6.5.0", - "@turf/distance": "6.5.0", - "@turf/helpers": "6.5.0", - "@turf/intersect": "6.5.0", - "@turf/line-intersect": "6.5.0", - "@turf/point-to-line-distance": "6.5.0", - "@turf/polygon-to-line": "6.5.0", - "@types/geojson": "7946.0.8", - "@types/proj4": "2.5.2", - "better-sqlite3": "7.4.1", - "chalk": "4.1.1", - "file-type": "12.4.0", - "image-size": "0.8.3", - "inquirer": "8.0.0", - "lodash": "4.17.21", - "proj4": "2.8.0", - "reproject": "1.2.5", - "rtree-sql.js": "1.7.0", - "simplify-js": "1.2.4", - "webworkify": "1.5.0", - "wkx": "0.4.8" - }, - "dependencies": { - "@types/geojson": { - "version": "7946.0.8", - "peer": true - }, - "file-type": { - "version": "12.4.0", - "peer": true - } - } - }, - "@nodelib/fs.stat": { - "version": "1.1.3", - "dev": true, - "peer": true - }, - "@oozcitak/dom": { - "version": "1.15.10", - "peer": true, - "requires": { - "@oozcitak/infra": "1.0.8", - "@oozcitak/url": "1.0.4", - "@oozcitak/util": "8.3.8" - } - }, - "@oozcitak/infra": { - "version": "1.0.8", - "peer": true, - "requires": { - "@oozcitak/util": "8.3.8" - } - }, - "@oozcitak/url": { - "version": "1.0.4", - "peer": true, - "requires": { - "@oozcitak/infra": "1.0.8", - "@oozcitak/util": "8.3.8" - } - }, - "@oozcitak/util": { - "version": "8.3.8", - "peer": true - }, - "@sinonjs/commons": { - "version": "1.8.6", - "dev": true, - "peer": true, - "requires": { - "type-detect": "4.0.8" - } - }, - "@sinonjs/formatio": { - "version": "3.2.2", - "dev": true, - "peer": true, - "requires": { - "@sinonjs/commons": "^1", - "@sinonjs/samsam": "^3.1.0" - } - }, - "@sinonjs/samsam": { - "version": "3.3.3", - "dev": true, - "peer": true, - "requires": { - "@sinonjs/commons": "^1.3.0", - "array-from": "^2.1.1", - "lodash": "^4.17.15" - } - }, - "@sinonjs/text-encoding": { - "version": "0.7.2", - "dev": true, - "peer": true - }, - "@tokenizer/token": { - "version": "0.3.0", - "peer": true - }, - "@turf/bbox": { - "version": "6.3.0", - "peer": true, - "requires": { - "@turf/helpers": "^6.3.0", - "@turf/meta": "^6.3.0" - } - }, - "@turf/bearing": { - "version": "6.5.0", - "peer": true, - "requires": { - "@turf/helpers": "^6.5.0", - "@turf/invariant": "^6.5.0" - } - }, - "@turf/boolean-clockwise": { - "version": "6.5.0", - "peer": true, - "requires": { - "@turf/helpers": "^6.5.0", - "@turf/invariant": "^6.5.0" - } - }, - "@turf/boolean-point-in-polygon": { - "version": "6.5.0", - "peer": true, - "requires": { - "@turf/helpers": "^6.5.0", - "@turf/invariant": "^6.5.0" - } - }, - "@turf/boolean-point-on-line": { - "version": "6.5.0", - "peer": true, - "requires": { - "@turf/helpers": "^6.5.0", - "@turf/invariant": "^6.5.0" - } - }, - "@turf/boolean-within": { - "version": "6.5.0", - "peer": true, - "requires": { - "@turf/bbox": "^6.5.0", - "@turf/boolean-point-in-polygon": "^6.5.0", - "@turf/boolean-point-on-line": "^6.5.0", - "@turf/helpers": "^6.5.0", - "@turf/invariant": "^6.5.0" - }, - "dependencies": { - "@turf/bbox": { - "version": "6.5.0", - "peer": true, - "requires": { - "@turf/helpers": "^6.5.0", - "@turf/meta": "^6.5.0" - } - } - } - }, - "@turf/centroid": { - "version": "6.0.2", - "peer": true, - "requires": { - "@turf/helpers": "6.x", - "@turf/meta": "6.x" - } - }, - "@turf/clone": { - "version": "6.5.0", - "peer": true, - "requires": { - "@turf/helpers": "^6.5.0" - } - }, - "@turf/distance": { - "version": "6.5.0", - "peer": true, - "requires": { - "@turf/helpers": "^6.5.0", - "@turf/invariant": "^6.5.0" - } - }, - "@turf/helpers": { - "version": "6.5.0", - "peer": true - }, - "@turf/intersect": { - "version": "6.5.0", - "peer": true, - "requires": { - "@turf/helpers": "^6.5.0", - "@turf/invariant": "^6.5.0", - "polygon-clipping": "^0.15.3" - } - }, - "@turf/invariant": { - "version": "6.5.0", - "peer": true, - "requires": { - "@turf/helpers": "^6.5.0" - } - }, - "@turf/kinks": { - "version": "6.0.0", - "peer": true, - "requires": { - "@turf/helpers": "6.x" - } - }, - "@turf/line-intersect": { - "version": "6.5.0", - "peer": true, - "requires": { - "@turf/helpers": "^6.5.0", - "@turf/invariant": "^6.5.0", - "@turf/line-segment": "^6.5.0", - "@turf/meta": "^6.5.0", - "geojson-rbush": "3.x" - } - }, - "@turf/line-segment": { - "version": "6.5.0", - "peer": true, - "requires": { - "@turf/helpers": "^6.5.0", - "@turf/invariant": "^6.5.0", - "@turf/meta": "^6.5.0" - } - }, - "@turf/meta": { - "version": "6.5.0", - "peer": true, - "requires": { - "@turf/helpers": "^6.5.0" - } - }, - "@turf/point-to-line-distance": { - "version": "6.5.0", - "peer": true, - "requires": { - "@turf/bearing": "^6.5.0", - "@turf/distance": "^6.5.0", - "@turf/helpers": "^6.5.0", - "@turf/invariant": "^6.5.0", - "@turf/meta": "^6.5.0", - "@turf/projection": "^6.5.0", - "@turf/rhumb-bearing": "^6.5.0", - "@turf/rhumb-distance": "^6.5.0" - } - }, - "@turf/polygon-to-line": { - "version": "6.5.0", - "peer": true, - "requires": { - "@turf/helpers": "^6.5.0", - "@turf/invariant": "^6.5.0" - } - }, - "@turf/projection": { - "version": "6.5.0", - "peer": true, - "requires": { - "@turf/clone": "^6.5.0", - "@turf/helpers": "^6.5.0", - "@turf/meta": "^6.5.0" - } - }, - "@turf/rhumb-bearing": { - "version": "6.5.0", - "peer": true, - "requires": { - "@turf/helpers": "^6.5.0", - "@turf/invariant": "^6.5.0" - } - }, - "@turf/rhumb-distance": { - "version": "6.5.0", - "peer": true, - "requires": { - "@turf/helpers": "^6.5.0", - "@turf/invariant": "^6.5.0" - } - }, - "@types/async": { - "version": "3.2.16", - "dev": true, - "peer": true - }, - "@types/babel-types": { - "version": "7.0.11", - "peer": true - }, - "@types/babylon": { - "version": "6.16.6", - "peer": true, - "requires": { - "@types/babel-types": "*" - } - }, - "@types/body-parser": { - "version": "1.19.2", - "peer": true, - "requires": { - "@types/connect": "*", - "@types/node": "*" - } - }, - "@types/bson": { - "version": "1.0.11", - "dev": true, - "peer": true, - "requires": { - "@types/node": "*" - } - }, - "@types/busboy": { - "version": "1.5.0", - "dev": true, - "peer": true, - "requires": { - "@types/node": "*" - } - }, - "@types/chai": { - "version": "4.3.4", - "dev": true, - "peer": true - }, - "@types/chai-as-promised": { - "version": "7.1.5", - "dev": true, - "peer": true, - "requires": { - "@types/chai": "*" - } - }, - "@types/connect": { - "version": "3.4.35", - "peer": true, - "requires": { - "@types/node": "*" - } - }, - "@types/cookiejar": { - "version": "2.1.2", - "dev": true, - "peer": true - }, - "@types/deep-equal": { - "version": "1.0.1", - "dev": true, - "peer": true - }, - "@types/eslint-visitor-keys": { - "version": "1.0.0", - "dev": true, - "peer": true - }, - "@types/express": { - "version": "4.17.14", - "peer": true, - "requires": { - "@types/body-parser": "*", - "@types/express-serve-static-core": "^4.17.18", - "@types/qs": "*", - "@types/serve-static": "*" - } - }, - "@types/express-serve-static-core": { - "version": "4.17.31", - "peer": true, - "requires": { - "@types/node": "*", - "@types/qs": "*", - "@types/range-parser": "*" - } - }, - "@types/fs-extra": { - "version": "8.1.2", - "dev": true, - "peer": true, - "requires": { - "@types/node": "*" - } - }, - "@types/geojson": { - "version": "7946.0.10", - "peer": true - }, - "@types/glob": { - "version": "7.2.0", - "dev": true, - "peer": true, - "requires": { - "@types/minimatch": "*", - "@types/node": "*" - } - }, - "@types/json-schema": { - "version": "7.0.11", - "peer": true - }, - "@types/ldapjs": { - "version": "1.0.11", - "peer": true, - "requires": { - "@types/node": "*" - } - }, - "@types/lodash": { - "version": "4.14.190", - "dev": true, - "peer": true - }, - "@types/mime": { - "version": "3.0.1", - "peer": true - }, - "@types/mime-types": { - "version": "2.1.1", - "peer": true - }, - "@types/minimatch": { - "version": "5.1.2", - "dev": true, - "peer": true - }, - "@types/mocha": { - "version": "7.0.2", - "dev": true, - "peer": true - }, - "@types/multer": { - "version": "1.4.7", - "dev": true, - "peer": true, - "requires": { - "@types/express": "*" - } - }, - "@types/node": { - "version": "14.18.33", - "peer": true - }, - "@types/node-fetch": { - "version": "2.6.2", - "dev": true, - "peer": true, - "requires": { - "@types/node": "*", - "form-data": "^3.0.0" - } - }, - "@types/passport": { - "version": "1.0.11", - "peer": true, - "requires": { - "@types/express": "*" - } - }, - "@types/proj4": { - "version": "2.5.2", - "peer": true - }, - "@types/qs": { - "version": "6.9.7", - "peer": true - }, - "@types/range-parser": { - "version": "1.2.4", - "peer": true - }, - "@types/serve-static": { - "version": "1.15.0", - "peer": true, - "requires": { - "@types/mime": "*", - "@types/node": "*" - } - }, - "@types/sinon": { - "version": "9.0.11", - "dev": true, - "peer": true, - "requires": { - "@types/sinonjs__fake-timers": "*" - } - }, - "@types/sinon-chai": { - "version": "3.2.9", - "dev": true, - "peer": true, - "requires": { - "@types/chai": "*", - "@types/sinon": "*" - } - }, - "@types/sinonjs__fake-timers": { - "version": "8.1.2", - "dev": true, - "peer": true - }, - "@types/superagent": { - "version": "4.1.16", - "dev": true, - "peer": true, - "requires": { - "@types/cookiejar": "*", - "@types/node": "*" - } - }, - "@types/supertest": { - "version": "2.0.12", - "dev": true, - "peer": true, - "requires": { - "@types/superagent": "*" - } - }, - "@types/tmp": { - "version": "0.2.3", - "dev": true, - "peer": true - }, - "@types/uniqid": { - "version": "5.3.2", - "dev": true, - "peer": true - }, - "@types/webidl-conversions": { - "version": "7.0.0", - "peer": true - }, - "@types/whatwg-url": { - "version": "8.2.2", - "peer": true, - "requires": { - "@types/node": "*", - "@types/webidl-conversions": "*" - } - }, - "@typescript-eslint/eslint-plugin": { - "version": "2.21.0", - "dev": true, - "peer": true, - "requires": { - "@typescript-eslint/experimental-utils": "2.21.0", - "eslint-utils": "^1.4.3", - "functional-red-black-tree": "^1.0.1", - "regexpp": "^3.0.0", - "tsutils": "^3.17.1" - } - }, - "@typescript-eslint/experimental-utils": { - "version": "2.21.0", - "dev": true, - "peer": true, - "requires": { - "@types/json-schema": "^7.0.3", - "@typescript-eslint/typescript-estree": "2.21.0", - "eslint-scope": "^5.0.0" - } - }, - "@typescript-eslint/parser": { - "version": "2.21.0", - "dev": true, - "peer": true, - "requires": { - "@types/eslint-visitor-keys": "^1.0.0", - "@typescript-eslint/experimental-utils": "2.21.0", - "@typescript-eslint/typescript-estree": "2.21.0", - "eslint-visitor-keys": "^1.1.0" - } - }, - "@typescript-eslint/typescript-estree": { - "version": "2.21.0", - "dev": true, - "peer": true, - "requires": { - "debug": "^4.1.1", - "eslint-visitor-keys": "^1.1.0", - "glob": "^7.1.6", - "is-glob": "^4.0.1", - "lodash": "^4.17.15", - "semver": "^6.3.0", - "tsutils": "^3.17.1" - } - }, - "@xmldom/xmldom": { - "version": "0.7.9", - "peer": true - }, - "accepts": { - "version": "1.3.8", - "peer": true, - "requires": { - "mime-types": "~2.1.34", - "negotiator": "0.6.3" - } - }, - "acorn": { - "version": "8.8.2", - "dev": true, - "peer": true - }, - "acorn-globals": { - "version": "3.1.0", - "peer": true, - "requires": { - "acorn": "^4.0.4" - }, - "dependencies": { - "acorn": { - "version": "4.0.13", - "peer": true - } - } - }, - "acorn-jsx": { - "version": "5.3.2", - "dev": true, - "peer": true, - "requires": {} - }, - "adm-zip": { - "version": "0.4.9", - "peer": true - }, - "agent-base": { - "version": "6.0.2", - "dev": true, - "peer": true, - "requires": { - "debug": "4" - } - }, - "ajv": { - "version": "6.12.6", - "dev": true, - "peer": 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" - } - }, - "align-text": { - "version": "0.1.4", - "peer": true, - "requires": { - "kind-of": "^3.0.2", - "longest": "^1.0.1", - "repeat-string": "^1.5.2" - }, - "dependencies": { - "is-buffer": { - "version": "1.1.6", - "peer": true - }, - "kind-of": { - "version": "3.2.2", - "peer": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "ansi-colors": { - "version": "3.2.3", - "dev": true, - "peer": true - }, - "ansi-escapes": { - "version": "4.3.2", - "devOptional": true, - "peer": true, - "requires": { - "type-fest": "^0.21.3" - }, - "dependencies": { - "type-fest": { - "version": "0.21.3", - "devOptional": true, - "peer": true - } - } - }, - "ansi-regex": { - "version": "4.1.1", - "dev": true, - "peer": true - }, - "ansi-styles": { - "version": "4.3.0", - "optional": true, - "peer": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "anymatch": { - "version": "3.1.3", - "dev": true, - "peer": true, - "requires": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" - } - }, - "append-field": { - "version": "1.0.0", - "peer": true - }, - "append-transform": { - "version": "1.0.0", - "dev": true, - "peer": true, - "requires": { - "default-require-extensions": "^2.0.0" - } - }, - "aproba": { - "version": "1.2.0", - "peer": true - }, - "archiver": { - "version": "5.3.0", - "peer": true, - "requires": { - "archiver-utils": "^2.1.0", - "async": "^3.2.0", - "buffer-crc32": "^0.2.1", - "readable-stream": "^3.6.0", - "readdir-glob": "^1.0.0", - "tar-stream": "^2.2.0", - "zip-stream": "^4.1.0" - }, - "dependencies": { - "async": { - "version": "3.2.4", - "peer": true - } - } - }, - "archiver-utils": { - "version": "2.1.0", - "peer": true, - "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" - }, - "dependencies": { - "isarray": { - "version": "1.0.0", - "peer": true - }, - "readable-stream": { - "version": "2.3.7", - "peer": 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" - } - }, - "safe-buffer": { - "version": "5.1.2", - "peer": true - }, - "string_decoder": { - "version": "1.1.1", - "peer": true, - "requires": { - "safe-buffer": "~5.1.0" - } - } - } - }, - "archy": { - "version": "1.0.0", - "dev": true, - "peer": true - }, - "are-we-there-yet": { - "version": "1.1.7", - "peer": true, - "requires": { - "delegates": "^1.0.0", - "readable-stream": "^2.0.6" - }, - "dependencies": { - "isarray": { - "version": "1.0.0", - "peer": true - }, - "readable-stream": { - "version": "2.3.7", - "peer": 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" - } - }, - "safe-buffer": { - "version": "5.1.2", - "peer": true - }, - "string_decoder": { - "version": "1.1.1", - "peer": true, - "requires": { - "safe-buffer": "~5.1.0" - } - } - } - }, - "argparse": { - "version": "1.0.10", - "peer": true, - "requires": { - "sprintf-js": "~1.0.2" - } - }, - "arr-diff": { - "version": "4.0.0", - "dev": true, - "peer": true - }, - "arr-flatten": { - "version": "1.1.0", - "dev": true, - "peer": true - }, - "arr-union": { - "version": "3.1.0", - "dev": true, - "peer": true - }, - "array-find-index": { - "version": "1.0.2", - "dev": true, - "peer": true - }, - "array-flatten": { - "version": "1.1.1", - "peer": true - }, - "array-from": { - "version": "2.1.1", - "dev": true, - "peer": true - }, - "array-parallel": { - "version": "0.1.3", - "peer": true - }, - "array-series": { - "version": "0.1.5", - "peer": true - }, - "array-union": { - "version": "1.0.2", - "dev": true, - "peer": true, - "requires": { - "array-uniq": "^1.0.1" - } - }, - "array-uniq": { - "version": "1.0.3", - "dev": true, - "peer": true - }, - "array-unique": { - "version": "0.3.2", - "dev": true, - "peer": true - }, - "array.prototype.reduce": { - "version": "1.0.5", - "dev": true, - "peer": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4", - "es-array-method-boxes-properly": "^1.0.0", - "is-string": "^1.0.7" - } - }, - "arrify": { - "version": "1.0.1", - "dev": true, - "peer": true - }, - "asap": { - "version": "2.0.6", - "peer": true - }, - "asn1": { - "version": "0.2.3", - "peer": true - }, - "assert": { - "version": "2.0.0", - "dev": true, - "peer": true, - "requires": { - "es6-object-assign": "^1.1.0", - "is-nan": "^1.2.1", - "object-is": "^1.0.1", - "util": "^0.12.0" - } - }, - "assert-plus": { - "version": "1.0.0", - "peer": true - }, - "assertion-error": { - "version": "1.1.0", - "dev": true, - "peer": true - }, - "assign-symbols": { - "version": "1.0.0", - "dev": true, - "peer": true - }, - "astral-regex": { - "version": "1.0.0", - "dev": true, - "peer": true - }, - "async": { - "version": "0.2.10", - "peer": true - }, - "async-mutex": { - "version": "0.3.2", - "dev": true, - "peer": true, - "requires": { - "tslib": "^2.3.1" - } - }, - "asynckit": { - "version": "0.4.0", - "peer": true - }, - "atob": { - "version": "2.1.2", - "dev": true, - "peer": true - }, - "available-typed-arrays": { - "version": "1.0.5", - "dev": true, - "peer": true - }, - "aws-sign2": { - "version": "0.7.0", - "dev": true, - "peer": true - }, - "aws4": { - "version": "1.11.0", - "dev": true, - "peer": true - }, - "axios": { - "version": "0.21.4", - "dev": true, - "peer": true, - "requires": { - "follow-redirects": "^1.14.0" - } - }, - "babel-runtime": { - "version": "6.26.0", - "peer": true, - "requires": { - "core-js": "^2.4.0", - "regenerator-runtime": "^0.11.0" - } - }, - "babel-types": { - "version": "6.26.0", - "peer": true, - "requires": { - "babel-runtime": "^6.26.0", - "esutils": "^2.0.2", - "lodash": "^4.17.4", - "to-fast-properties": "^1.0.3" - }, - "dependencies": { - "to-fast-properties": { - "version": "1.0.3", - "peer": true - } - } - }, - "babylon": { - "version": "6.18.0", - "peer": true - }, - "backoff": { - "version": "2.5.0", - "peer": true, - "requires": { - "precond": "0.2" - } - }, - "balanced-match": { - "version": "1.0.2", - "peer": true - }, - "base": { - "version": "0.11.2", - "dev": true, - "peer": true, - "requires": { - "cache-base": "^1.0.1", - "class-utils": "^0.3.5", - "component-emitter": "^1.2.1", - "define-property": "^1.0.0", - "isobject": "^3.0.1", - "mixin-deep": "^1.2.0", - "pascalcase": "^0.1.1" - }, - "dependencies": { - "define-property": { - "version": "1.0.0", - "dev": true, - "peer": true, - "requires": { - "is-descriptor": "^1.0.0" - } - } - } - }, - "base-64": { - "version": "1.0.0", - "peer": true - }, - "base64-js": { - "version": "1.5.1", - "peer": true - }, - "base64url": { - "version": "3.0.1", - "peer": true - }, - "bcrypt-pbkdf": { - "version": "1.0.2", - "dev": true, - "peer": true, - "requires": { - "tweetnacl": "^0.14.3" - } - }, - "bcryptjs": { - "version": "2.4.3", - "peer": true - }, - "better-sqlite3": { - "version": "7.4.1", - "peer": true, - "requires": { - "bindings": "^1.5.0", - "prebuild-install": "^6.0.1", - "tar": "^6.1.0" - } - }, - "binary-extensions": { - "version": "2.2.0", - "dev": true, - "peer": true - }, - "bindings": { - "version": "1.5.0", - "peer": true, - "requires": { - "file-uri-to-path": "1.0.0" - } - }, - "bl": { - "version": "4.1.0", - "peer": true, - "requires": { - "buffer": "^5.5.0", - "inherits": "^2.0.4", - "readable-stream": "^3.4.0" - } - }, - "body-parser": { - "version": "1.18.3", - "peer": true, - "requires": { - "bytes": "3.0.0", - "content-type": "~1.0.4", - "debug": "2.6.9", - "depd": "~1.1.2", - "http-errors": "~1.6.3", - "iconv-lite": "0.4.23", - "on-finished": "~2.3.0", - "qs": "6.5.2", - "raw-body": "2.3.3", - "type-is": "~1.6.16" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "peer": true, - "requires": { - "ms": "2.0.0" - } - }, - "iconv-lite": { - "version": "0.4.23", - "peer": true, - "requires": { - "safer-buffer": ">= 2.1.2 < 3" - } - }, - "ms": { - "version": "2.0.0", - "peer": true - } - } - }, - "bowser": { - "version": "2.11.0", - "optional": true, - "peer": true - }, - "brace-expansion": { - "version": "1.1.11", - "peer": true, - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "braces": { - "version": "2.3.2", - "dev": true, - "peer": true, - "requires": { - "arr-flatten": "^1.1.0", - "array-unique": "^0.3.2", - "extend-shallow": "^2.0.1", - "fill-range": "^4.0.0", - "isobject": "^3.0.1", - "repeat-element": "^1.1.2", - "snapdragon": "^0.8.1", - "snapdragon-node": "^2.0.1", - "split-string": "^3.0.2", - "to-regex": "^3.0.1" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "dev": true, - "peer": true, - "requires": { - "is-extendable": "^0.1.0" - } - }, - "is-extendable": { - "version": "0.1.1", - "dev": true, - "peer": true - } - } - }, - "brorand": { - "version": "1.1.0", - "peer": true - }, - "browser-stdout": { - "version": "1.3.1", - "dev": true, - "peer": true - }, - "browserify-aes": { - "version": "1.2.0", - "peer": true, - "requires": { - "buffer-xor": "^1.0.3", - "cipher-base": "^1.0.0", - "create-hash": "^1.1.0", - "evp_bytestokey": "^1.0.3", - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" - } - }, - "bson": { - "version": "4.7.0", - "peer": true, - "requires": { - "buffer": "^5.6.0" - } - }, - "buffer": { - "version": "5.7.1", - "peer": true, - "requires": { - "base64-js": "^1.3.1", - "ieee754": "^1.1.13" - } - }, - "buffer-crc32": { - "version": "0.2.13", - "peer": true - }, - "buffer-equal-constant-time": { - "version": "1.0.1", - "peer": true - }, - "buffer-from": { - "version": "1.1.2", - "peer": true - }, - "buffer-xor": { - "version": "1.0.3", - "peer": true - }, - "bunyan": { - "version": "1.8.15", - "peer": true, - "requires": { - "dtrace-provider": "~0.8", - "moment": "^2.19.3", - "mv": "~2", - "safe-json-stringify": "~1" - } - }, - "busboy": { - "version": "1.6.0", - "peer": true, - "requires": { - "streamsearch": "^1.1.0" - } - }, - "bytes": { - "version": "3.0.0", - "peer": true - }, - "cache-base": { - "version": "1.0.1", - "dev": true, - "peer": true, - "requires": { - "collection-visit": "^1.0.0", - "component-emitter": "^1.2.1", - "get-value": "^2.0.6", - "has-value": "^1.0.0", - "isobject": "^3.0.1", - "set-value": "^2.0.0", - "to-object-path": "^0.3.0", - "union-value": "^1.0.0", - "unset-value": "^1.0.0" - } - }, - "caching-transform": { - "version": "3.0.2", - "dev": true, - "peer": true, - "requires": { - "hasha": "^3.0.0", - "make-dir": "^2.0.0", - "package-hash": "^3.0.0", - "write-file-atomic": "^2.4.2" - } - }, - "call-bind": { - "version": "1.0.2", - "peer": true, - "requires": { - "function-bind": "^1.1.1", - "get-intrinsic": "^1.0.2" - } - }, - "call-me-maybe": { - "version": "1.0.2", - "dev": true, - "peer": true - }, - "callsites": { - "version": "3.1.0", - "dev": true, - "peer": true - }, - "camelcase": { - "version": "4.1.0", - "dev": true, - "peer": true - }, - "camelcase-keys": { - "version": "4.2.0", - "dev": true, - "peer": true, - "requires": { - "camelcase": "^4.1.0", - "map-obj": "^2.0.0", - "quick-lru": "^1.0.0" - } - }, - "caseless": { - "version": "0.12.0", - "dev": true, - "peer": true - }, - "center-align": { - "version": "0.1.3", - "peer": true, - "requires": { - "align-text": "^0.1.3", - "lazy-cache": "^1.0.3" - } - }, - "cfenv": { - "version": "1.0.3", - "peer": true, - "requires": { - "js-yaml": "3.4.x", - "ports": "1.1.x", - "underscore": "1.8.x" - } - }, - "chai": { - "version": "4.3.7", - "dev": true, - "peer": true, - "requires": { - "assertion-error": "^1.1.0", - "check-error": "^1.0.2", - "deep-eql": "^4.1.2", - "get-func-name": "^2.0.0", - "loupe": "^2.3.1", - "pathval": "^1.1.1", - "type-detect": "^4.0.5" - } - }, - "chai-as-promised": { - "version": "7.1.1", - "dev": true, - "peer": true, - "requires": { - "check-error": "^1.0.2" - } - }, - "chalk": { - "version": "4.1.1", - "optional": true, - "peer": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "character-parser": { - "version": "2.2.0", - "peer": true, - "requires": { - "is-regex": "^1.0.3" - } - }, - "chardet": { - "version": "0.7.0", - "devOptional": true, - "peer": true - }, - "check-error": { - "version": "1.0.2", - "dev": true, - "peer": true - }, - "chokidar": { - "version": "3.3.0", - "dev": true, - "peer": true, - "requires": { - "anymatch": "~3.1.1", - "braces": "~3.0.2", - "fsevents": "~2.1.1", - "glob-parent": "~5.1.0", - "is-binary-path": "~2.1.0", - "is-glob": "~4.0.1", - "normalize-path": "~3.0.0", - "readdirp": "~3.2.0" - }, - "dependencies": { - "braces": { - "version": "3.0.2", - "dev": true, - "peer": true, - "requires": { - "fill-range": "^7.0.1" - } - }, - "fill-range": { - "version": "7.0.1", - "dev": true, - "peer": true, - "requires": { - "to-regex-range": "^5.0.1" - } - }, - "is-number": { - "version": "7.0.0", - "dev": true, - "peer": true - }, - "to-regex-range": { - "version": "5.0.1", - "dev": true, - "peer": true, - "requires": { - "is-number": "^7.0.0" - } - } - } - }, - "chownr": { - "version": "2.0.0", - "peer": true - }, - "cipher-base": { - "version": "1.0.4", - "peer": true, - "requires": { - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" - } - }, - "class-utils": { - "version": "0.3.6", - "dev": true, - "peer": true, - "requires": { - "arr-union": "^3.1.0", - "define-property": "^0.2.5", - "isobject": "^3.0.0", - "static-extend": "^0.1.1" - }, - "dependencies": { - "define-property": { - "version": "0.2.5", - "dev": true, - "peer": true, - "requires": { - "is-descriptor": "^0.1.0" - } - }, - "is-accessor-descriptor": { - "version": "0.1.6", - "dev": true, - "peer": true, - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "dev": true, - "peer": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "is-buffer": { - "version": "1.1.6", - "dev": true, - "peer": true - }, - "is-data-descriptor": { - "version": "0.1.4", - "dev": true, - "peer": true, - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "dev": true, - "peer": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "is-descriptor": { - "version": "0.1.6", - "dev": true, - "peer": true, - "requires": { - "is-accessor-descriptor": "^0.1.6", - "is-data-descriptor": "^0.1.4", - "kind-of": "^5.0.0" - } - }, - "kind-of": { - "version": "5.1.0", - "dev": true, - "peer": true - } - } - }, - "clean-css": { - "version": "4.2.4", - "peer": true, - "requires": { - "source-map": "~0.6.0" - } - }, - "cli-cursor": { - "version": "3.1.0", - "devOptional": true, - "peer": true, - "requires": { - "restore-cursor": "^3.1.0" - } - }, - "cli-width": { - "version": "3.0.0", - "devOptional": true, - "peer": true - }, - "cliui": { - "version": "5.0.0", - "dev": true, - "peer": true, - "requires": { - "string-width": "^3.1.0", - "strip-ansi": "^5.2.0", - "wrap-ansi": "^5.1.0" - }, - "dependencies": { - "emoji-regex": { - "version": "7.0.3", - "dev": true, - "peer": true - }, - "is-fullwidth-code-point": { - "version": "2.0.0", - "dev": true, - "peer": true - }, - "string-width": { - "version": "3.1.0", - "dev": true, - "peer": true, - "requires": { - "emoji-regex": "^7.0.1", - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^5.1.0" - } - } - } - }, - "code-point-at": { - "version": "1.1.0", - "peer": true - }, - "collection-visit": { - "version": "1.0.0", - "dev": true, - "peer": true, - "requires": { - "map-visit": "^1.0.0", - "object-visit": "^1.0.0" - } - }, - "color-convert": { - "version": "2.0.1", - "optional": true, - "peer": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "optional": true, - "peer": true - }, - "colors": { - "version": "1.0.3", - "peer": true - }, - "combined-stream": { - "version": "1.0.8", - "peer": true, - "requires": { - "delayed-stream": "~1.0.0" - } - }, - "commander": { - "version": "8.3.0", - "peer": true - }, - "commondir": { - "version": "1.0.1", - "dev": true, - "peer": true - }, - "component-emitter": { - "version": "1.3.0", - "peer": true - }, - "compress-commons": { - "version": "4.1.1", - "peer": true, - "requires": { - "buffer-crc32": "^0.2.13", - "crc32-stream": "^4.0.2", - "normalize-path": "^3.0.0", - "readable-stream": "^3.6.0" - } - }, - "concat-map": { - "version": "0.0.1", - "peer": true - }, - "concat-stream": { - "version": "1.5.2", - "peer": true, - "requires": { - "inherits": "~2.0.1", - "readable-stream": "~2.0.0", - "typedarray": "~0.0.5" - }, - "dependencies": { - "isarray": { - "version": "1.0.0", - "peer": true - }, - "process-nextick-args": { - "version": "1.0.7", - "peer": true - }, - "readable-stream": { - "version": "2.0.6", - "peer": true, - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.1", - "isarray": "~1.0.0", - "process-nextick-args": "~1.0.6", - "string_decoder": "~0.10.x", - "util-deprecate": "~1.0.1" - } - }, - "string_decoder": { - "version": "0.10.31", - "peer": true - } - } - }, - "console-control-strings": { - "version": "1.1.0", - "peer": true - }, - "constantinople": { - "version": "3.1.2", - "peer": true, - "requires": { - "@types/babel-types": "^7.0.0", - "@types/babylon": "^6.16.2", - "babel-types": "^6.26.0", - "babylon": "^6.18.0" - } - }, - "content-disposition": { - "version": "0.5.4", - "peer": true, - "requires": { - "safe-buffer": "5.2.1" - } - }, - "content-type": { - "version": "1.0.4", - "peer": true - }, - "convert-source-map": { - "version": "1.9.0", - "dev": true, - "peer": true - }, - "cookie": { - "version": "0.4.2", - "peer": true - }, - "cookie-signature": { - "version": "1.0.6", - "peer": true - }, - "cookiejar": { - "version": "2.1.3", - "peer": true - }, - "copy-descriptor": { - "version": "0.1.1", - "dev": true, - "peer": true - }, - "core-js": { - "version": "2.6.12", - "peer": true - }, - "core-util-is": { - "version": "1.0.2", - "peer": true - }, - "coveralls": { - "version": "3.0.4", - "dev": true, - "peer": true, - "requires": { - "growl": "~> 1.10.0", - "js-yaml": "^3.11.0", - "lcov-parse": "^0.0.10", - "log-driver": "^1.2.7", - "minimist": "^1.2.0", - "request": "^2.86.0" - }, - "dependencies": { - "esprima": { - "version": "4.0.1", - "dev": true, - "peer": true - }, - "js-yaml": { - "version": "3.14.1", - "dev": true, - "peer": true, - "requires": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" - } - } - } - }, - "cp-file": { - "version": "6.2.0", - "dev": true, - "peer": true, - "requires": { - "graceful-fs": "^4.1.2", - "make-dir": "^2.0.0", - "nested-error-stacks": "^2.0.0", - "pify": "^4.0.1", - "safe-buffer": "^5.0.1" - } - }, - "cpy": { - "version": "7.3.0", - "dev": true, - "peer": true, - "requires": { - "arrify": "^1.0.1", - "cp-file": "^6.1.0", - "globby": "^9.2.0", - "nested-error-stacks": "^2.1.0" - } - }, - "cpy-cli": { - "version": "2.0.0", - "dev": true, - "peer": true, - "requires": { - "cpy": "^7.0.0", - "meow": "^5.0.0" - } - }, - "crc-32": { - "version": "1.2.2", - "peer": true - }, - "crc32-stream": { - "version": "4.0.2", - "peer": true, - "requires": { - "crc-32": "^1.2.0", - "readable-stream": "^3.4.0" - } - }, - "create-hash": { - "version": "1.2.0", - "peer": true, - "requires": { - "cipher-base": "^1.0.1", - "inherits": "^2.0.1", - "md5.js": "^1.3.4", - "ripemd160": "^2.0.1", - "sha.js": "^2.4.0" - } - }, - "create-hmac": { - "version": "1.1.7", - "peer": true, - "requires": { - "cipher-base": "^1.0.3", - "create-hash": "^1.1.0", - "inherits": "^2.0.1", - "ripemd160": "^2.0.0", - "safe-buffer": "^5.0.1", - "sha.js": "^2.4.8" - } - }, - "cross-spawn": { - "version": "6.0.5", - "dev": true, - "peer": 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" - }, - "dependencies": { - "semver": { - "version": "5.7.1", - "dev": true, - "peer": true - } - } - }, - "currently-unhandled": { - "version": "0.4.1", - "dev": true, - "peer": true, - "requires": { - "array-find-index": "^1.0.1" - } - }, - "cycle": { - "version": "1.0.3", - "peer": true - }, - "dashdash": { - "version": "1.14.1", - "peer": true, - "requires": { - "assert-plus": "^1.0.0" - } - }, - "dbf": { - "version": "0.1.0", - "peer": true, - "requires": { - "jdataview": "~2.4.4" - } - }, - "debug": { - "version": "4.3.4", - "peer": true, - "requires": { - "ms": "2.1.2" - } - }, - "decamelize": { - "version": "1.2.0", - "peer": true - }, - "decamelize-keys": { - "version": "1.1.1", - "dev": true, - "peer": true, - "requires": { - "decamelize": "^1.1.0", - "map-obj": "^1.0.0" - }, - "dependencies": { - "map-obj": { - "version": "1.0.1", - "dev": true, - "peer": true - } - } - }, - "decode-uri-component": { - "version": "0.2.0", - "dev": true, - "peer": true - }, - "decompress-response": { - "version": "4.2.1", - "peer": true, - "requires": { - "mimic-response": "^2.0.0" - } - }, - "deep-eql": { - "version": "4.1.2", - "dev": true, - "peer": true, - "requires": { - "type-detect": "^4.0.0" - } - }, - "deep-equal": { - "version": "2.1.0", - "dev": true, - "peer": true, - "requires": { - "call-bind": "^1.0.2", - "es-get-iterator": "^1.1.2", - "get-intrinsic": "^1.1.3", - "is-arguments": "^1.1.1", - "is-date-object": "^1.0.5", - "is-regex": "^1.1.4", - "isarray": "^2.0.5", - "object-is": "^1.1.5", - "object-keys": "^1.1.1", - "object.assign": "^4.1.4", - "regexp.prototype.flags": "^1.4.3", - "side-channel": "^1.0.4", - "which-boxed-primitive": "^1.0.2", - "which-collection": "^1.0.1", - "which-typed-array": "^1.1.8" - } - }, - "deep-extend": { - "version": "0.6.0", - "peer": true - }, - "deep-is": { - "version": "0.1.4", - "dev": true, - "peer": true - }, - "default-require-extensions": { - "version": "2.0.0", - "dev": true, - "peer": true, - "requires": { - "strip-bom": "^3.0.0" - } - }, - "define-properties": { - "version": "1.1.4", - "dev": true, - "peer": true, - "requires": { - "has-property-descriptors": "^1.0.0", - "object-keys": "^1.1.1" - } - }, - "define-property": { - "version": "2.0.2", - "dev": true, - "peer": true, - "requires": { - "is-descriptor": "^1.0.2", - "isobject": "^3.0.1" - } - }, - "delayed-stream": { - "version": "1.0.0", - "peer": true - }, - "delegates": { - "version": "1.0.0", - "peer": true - }, - "denque": { - "version": "2.1.0", - "peer": true - }, - "depd": { - "version": "1.1.2", - "peer": true - }, - "destroy": { - "version": "1.0.4", - "peer": true - }, - "detect-libc": { - "version": "1.0.3", - "peer": true - }, - "dezalgo": { - "version": "1.0.3", - "peer": true, - "requires": { - "asap": "^2.0.0", - "wrappy": "1" - } - }, - "dicer": { - "version": "0.2.5", - "peer": true, - "requires": { - "readable-stream": "1.1.x", - "streamsearch": "0.1.2" - }, - "dependencies": { - "isarray": { - "version": "0.0.1", - "peer": true - }, - "readable-stream": { - "version": "1.1.14", - "peer": true, - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.1", - "isarray": "0.0.1", - "string_decoder": "~0.10.x" - } - }, - "streamsearch": { - "version": "0.1.2", - "peer": true - }, - "string_decoder": { - "version": "0.10.31", - "peer": true - } - } - }, - "diff": { - "version": "3.5.0", - "dev": true, - "peer": true - }, - "dir-glob": { - "version": "2.2.2", - "dev": true, - "peer": true, - "requires": { - "path-type": "^3.0.0" - } - }, - "doctrine": { - "version": "3.0.0", - "dev": true, - "peer": true, - "requires": { - "esutils": "^2.0.2" - } - }, - "doctypes": { - "version": "1.1.0", - "peer": true - }, - "drange": { - "version": "1.1.1", - "dev": true, - "peer": true - }, - "dtrace-provider": { - "version": "0.8.8", - "optional": true, - "peer": true, - "requires": { - "nan": "^2.14.0" - } - }, - "duplexer": { - "version": "0.1.2", - "peer": true - }, - "ecc-jsbn": { - "version": "0.1.2", - "dev": true, - "peer": true, - "requires": { - "jsbn": "~0.1.0", - "safer-buffer": "^2.1.0" - } - }, - "ecdsa-sig-formatter": { - "version": "1.0.11", - "peer": true, - "requires": { - "safe-buffer": "^5.0.1" - } - }, - "ee-first": { - "version": "1.1.1", - "peer": true - }, - "elliptic": { - "version": "6.5.4", - "peer": true, - "requires": { - "bn.js": "^4.11.9", - "brorand": "^1.1.0", - "hash.js": "^1.0.0", - "hmac-drbg": "^1.0.1", - "inherits": "^2.0.4", - "minimalistic-assert": "^1.0.1", - "minimalistic-crypto-utils": "^1.0.1" - }, - "dependencies": { - "bn.js": { - "version": "4.12.0", - "peer": true - } - } - }, - "emoji-regex": { - "version": "8.0.0", - "devOptional": true, - "peer": true - }, - "encodeurl": { - "version": "1.0.2", - "peer": true - }, - "end-of-stream": { - "version": "1.4.4", - "peer": true, - "requires": { - "once": "^1.4.0" - } - }, - "error-ex": { - "version": "1.3.2", - "dev": true, - "peer": true, - "requires": { - "is-arrayish": "^0.2.1" - } - }, - "es-abstract": { - "version": "1.20.4", - "dev": true, - "peer": true, - "requires": { - "call-bind": "^1.0.2", - "es-to-primitive": "^1.2.1", - "function-bind": "^1.1.1", - "function.prototype.name": "^1.1.5", - "get-intrinsic": "^1.1.3", - "get-symbol-description": "^1.0.0", - "has": "^1.0.3", - "has-property-descriptors": "^1.0.0", - "has-symbols": "^1.0.3", - "internal-slot": "^1.0.3", - "is-callable": "^1.2.7", - "is-negative-zero": "^2.0.2", - "is-regex": "^1.1.4", - "is-shared-array-buffer": "^1.0.2", - "is-string": "^1.0.7", - "is-weakref": "^1.0.2", - "object-inspect": "^1.12.2", - "object-keys": "^1.1.1", - "object.assign": "^4.1.4", - "regexp.prototype.flags": "^1.4.3", - "safe-regex-test": "^1.0.0", - "string.prototype.trimend": "^1.0.5", - "string.prototype.trimstart": "^1.0.5", - "unbox-primitive": "^1.0.2" - } - }, - "es-array-method-boxes-properly": { - "version": "1.0.0", - "dev": true, - "peer": true - }, - "es-get-iterator": { - "version": "1.1.2", - "dev": true, - "peer": true, - "requires": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.1.0", - "has-symbols": "^1.0.1", - "is-arguments": "^1.1.0", - "is-map": "^2.0.2", - "is-set": "^2.0.2", - "is-string": "^1.0.5", - "isarray": "^2.0.5" - } - }, - "es-to-primitive": { - "version": "1.2.1", - "dev": true, - "peer": true, - "requires": { - "is-callable": "^1.1.4", - "is-date-object": "^1.0.1", - "is-symbol": "^1.0.2" - } - }, - "es6-error": { - "version": "4.1.1", - "dev": true, - "peer": true - }, - "es6-object-assign": { - "version": "1.1.0", - "dev": true, - "peer": true - }, - "escape-html": { - "version": "1.0.3", - "peer": true - }, - "escape-string-regexp": { - "version": "1.0.5", - "devOptional": true, - "peer": true - }, - "eslint": { - "version": "6.8.0", - "dev": true, - "peer": true, - "requires": { - "@babel/code-frame": "^7.0.0", - "ajv": "^6.10.0", - "chalk": "^2.1.0", - "cross-spawn": "^6.0.5", - "debug": "^4.0.1", - "doctrine": "^3.0.0", - "eslint-scope": "^5.0.0", - "eslint-utils": "^1.4.3", - "eslint-visitor-keys": "^1.1.0", - "espree": "^6.1.2", - "esquery": "^1.0.1", - "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.3.0", - "lodash": "^4.17.14", - "minimatch": "^3.0.4", - "mkdirp": "^0.5.1", - "natural-compare": "^1.4.0", - "optionator": "^0.8.3", - "progress": "^2.0.0", - "regexpp": "^2.0.1", - "semver": "^6.1.2", - "strip-ansi": "^5.2.0", - "strip-json-comments": "^3.0.1", - "table": "^5.2.3", - "text-table": "^0.2.0", - "v8-compile-cache": "^2.0.3" - }, - "dependencies": { - "ansi-regex": { - "version": "5.0.1", - "dev": true, - "peer": true - }, - "ansi-styles": { - "version": "3.2.1", - "dev": true, - "peer": true, - "requires": { - "color-convert": "^1.9.0" - } - }, - "chalk": { - "version": "2.4.2", - "dev": true, - "peer": true, - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - } - }, - "color-convert": { - "version": "1.9.3", - "dev": true, - "peer": true, - "requires": { - "color-name": "1.1.3" - } - }, - "color-name": { - "version": "1.1.3", - "dev": true, - "peer": true - }, - "esprima": { - "version": "4.0.1", - "dev": true, - "peer": true - }, - "has-flag": { - "version": "3.0.0", - "dev": true, - "peer": true - }, - "inquirer": { - "version": "7.3.3", - "dev": true, - "peer": true, - "requires": { - "ansi-escapes": "^4.2.1", - "chalk": "^4.1.0", - "cli-cursor": "^3.1.0", - "cli-width": "^3.0.0", - "external-editor": "^3.0.3", - "figures": "^3.0.0", - "lodash": "^4.17.19", - "mute-stream": "0.0.8", - "run-async": "^2.4.0", - "rxjs": "^6.6.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0", - "through": "^2.3.6" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "dev": true, - "peer": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "dev": true, - "peer": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "dev": true, - "peer": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "dev": true, - "peer": true - }, - "has-flag": { - "version": "4.0.0", - "dev": true, - "peer": true - }, - "strip-ansi": { - "version": "6.0.1", - "dev": true, - "peer": true, - "requires": { - "ansi-regex": "^5.0.1" - } - }, - "supports-color": { - "version": "7.2.0", - "dev": true, - "peer": true, - "requires": { - "has-flag": "^4.0.0" - } - } - } - }, - "js-yaml": { - "version": "3.14.1", - "dev": true, - "peer": true, - "requires": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" - } - }, - "regexpp": { - "version": "2.0.1", - "dev": true, - "peer": true - }, - "supports-color": { - "version": "5.5.0", - "dev": true, - "peer": true, - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "eslint-config-prettier": { - "version": "6.15.0", - "dev": true, - "peer": true, - "requires": { - "get-stdin": "^6.0.0" - } - }, - "eslint-plugin-prettier": { - "version": "3.4.1", - "dev": true, - "peer": true, - "requires": { - "prettier-linter-helpers": "^1.0.0" - } - }, - "eslint-scope": { - "version": "5.1.1", - "dev": true, - "peer": true, - "requires": { - "esrecurse": "^4.3.0", - "estraverse": "^4.1.1" - } - }, - "eslint-utils": { - "version": "1.4.3", - "dev": true, - "peer": true, - "requires": { - "eslint-visitor-keys": "^1.1.0" - } - }, - "eslint-visitor-keys": { - "version": "1.3.0", - "dev": true, - "peer": true - }, - "espree": { - "version": "6.2.1", - "dev": true, - "peer": true, - "requires": { - "acorn": "^7.1.1", - "acorn-jsx": "^5.2.0", - "eslint-visitor-keys": "^1.1.0" - }, - "dependencies": { - "acorn": { - "version": "7.4.1", - "dev": true, - "peer": true - } - } - }, - "esprima": { - "version": "2.7.3", - "peer": true - }, - "esquery": { - "version": "1.4.0", - "dev": true, - "peer": true, - "requires": { - "estraverse": "^5.1.0" - }, - "dependencies": { - "estraverse": { - "version": "5.3.0", - "dev": true, - "peer": true - } - } - }, - "esrecurse": { - "version": "4.3.0", - "dev": true, - "peer": true, - "requires": { - "estraverse": "^5.2.0" - }, - "dependencies": { - "estraverse": { - "version": "5.3.0", - "dev": true, - "peer": true - } - } - }, - "estraverse": { - "version": "4.3.0", - "dev": true, - "peer": true - }, - "esutils": { - "version": "2.0.3", - "peer": true - }, - "etag": { - "version": "1.8.1", - "peer": true - }, - "event-stream": { - "version": "4.0.1", - "peer": true, - "requires": { - "duplexer": "^0.1.1", - "from": "^0.1.7", - "map-stream": "0.0.7", - "pause-stream": "^0.0.11", - "split": "^1.0.1", - "stream-combiner": "^0.2.2", - "through": "^2.3.8" - } - }, - "evp_bytestokey": { - "version": "1.0.3", - "peer": true, - "requires": { - "md5.js": "^1.3.4", - "safe-buffer": "^5.1.1" - } - }, - "expand-brackets": { - "version": "2.1.4", - "dev": true, - "peer": true, - "requires": { - "debug": "^2.3.3", - "define-property": "^0.2.5", - "extend-shallow": "^2.0.1", - "posix-character-classes": "^0.1.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.1" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "dev": true, - "peer": true, - "requires": { - "ms": "2.0.0" - } - }, - "define-property": { - "version": "0.2.5", - "dev": true, - "peer": true, - "requires": { - "is-descriptor": "^0.1.0" - } - }, - "extend-shallow": { - "version": "2.0.1", - "dev": true, - "peer": true, - "requires": { - "is-extendable": "^0.1.0" - } - }, - "is-accessor-descriptor": { - "version": "0.1.6", - "dev": true, - "peer": true, - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "dev": true, - "peer": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "is-buffer": { - "version": "1.1.6", - "dev": true, - "peer": true - }, - "is-data-descriptor": { - "version": "0.1.4", - "dev": true, - "peer": true, - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "dev": true, - "peer": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "is-descriptor": { - "version": "0.1.6", - "dev": true, - "peer": true, - "requires": { - "is-accessor-descriptor": "^0.1.6", - "is-data-descriptor": "^0.1.4", - "kind-of": "^5.0.0" - } - }, - "is-extendable": { - "version": "0.1.1", - "dev": true, - "peer": true - }, - "kind-of": { - "version": "5.1.0", - "dev": true, - "peer": true - }, - "ms": { - "version": "2.0.0", - "dev": true, - "peer": true - } - } - }, - "expand-template": { - "version": "2.0.3", - "peer": true - }, - "express": { - "version": "4.17.3", - "peer": true, - "requires": { - "accepts": "~1.3.8", - "array-flatten": "1.1.1", - "body-parser": "1.19.2", - "content-disposition": "0.5.4", - "content-type": "~1.0.4", - "cookie": "0.4.2", - "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.7", - "qs": "6.9.7", - "range-parser": "~1.2.1", - "safe-buffer": "5.2.1", - "send": "0.17.2", - "serve-static": "1.14.2", - "setprototypeof": "1.2.0", - "statuses": "~1.5.0", - "type-is": "~1.6.18", - "utils-merge": "1.0.1", - "vary": "~1.1.2" - }, - "dependencies": { - "body-parser": { - "version": "1.19.2", - "peer": true, - "requires": { - "bytes": "3.1.2", - "content-type": "~1.0.4", - "debug": "2.6.9", - "depd": "~1.1.2", - "http-errors": "1.8.1", - "iconv-lite": "0.4.24", - "on-finished": "~2.3.0", - "qs": "6.9.7", - "raw-body": "2.4.3", - "type-is": "~1.6.18" - } - }, - "bytes": { - "version": "3.1.2", - "peer": true - }, - "debug": { - "version": "2.6.9", - "peer": true, - "requires": { - "ms": "2.0.0" - } - }, - "http-errors": { - "version": "1.8.1", - "peer": true, - "requires": { - "depd": "~1.1.2", - "inherits": "2.0.4", - "setprototypeof": "1.2.0", - "statuses": ">= 1.5.0 < 2", - "toidentifier": "1.0.1" - } - }, - "iconv-lite": { - "version": "0.4.24", - "peer": true, - "requires": { - "safer-buffer": ">= 2.1.2 < 3" - } - }, - "ms": { - "version": "2.0.0", - "peer": true - }, - "qs": { - "version": "6.9.7", - "peer": true - }, - "raw-body": { - "version": "2.4.3", - "peer": true, - "requires": { - "bytes": "3.1.2", - "http-errors": "1.8.1", - "iconv-lite": "0.4.24", - "unpipe": "1.0.0" - } - } - } - }, - "express-session": { - "version": "1.17.2", - "peer": true, - "requires": { - "cookie": "0.4.1", - "cookie-signature": "1.0.6", - "debug": "2.6.9", - "depd": "~2.0.0", - "on-headers": "~1.0.2", - "parseurl": "~1.3.3", - "safe-buffer": "5.2.1", - "uid-safe": "~2.1.5" - }, - "dependencies": { - "cookie": { - "version": "0.4.1", - "peer": true - }, - "debug": { - "version": "2.6.9", - "peer": true, - "requires": { - "ms": "2.0.0" - } - }, - "depd": { - "version": "2.0.0", - "peer": true - }, - "ms": { - "version": "2.0.0", - "peer": true - } - } - }, - "extend": { - "version": "3.0.2", - "dev": true, - "peer": true - }, - "extend-shallow": { - "version": "3.0.2", - "dev": true, - "peer": true, - "requires": { - "assign-symbols": "^1.0.0", - "is-extendable": "^1.0.1" - } - }, - "external-editor": { - "version": "3.1.0", - "devOptional": true, - "peer": true, - "requires": { - "chardet": "^0.7.0", - "iconv-lite": "^0.4.24", - "tmp": "^0.0.33" - }, - "dependencies": { - "iconv-lite": { - "version": "0.4.24", - "devOptional": true, - "peer": true, - "requires": { - "safer-buffer": ">= 2.1.2 < 3" - } - } - } - }, - "extglob": { - "version": "2.0.4", - "dev": true, - "peer": true, - "requires": { - "array-unique": "^0.3.2", - "define-property": "^1.0.0", - "expand-brackets": "^2.1.4", - "extend-shallow": "^2.0.1", - "fragment-cache": "^0.2.1", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.1" - }, - "dependencies": { - "define-property": { - "version": "1.0.0", - "dev": true, - "peer": true, - "requires": { - "is-descriptor": "^1.0.0" - } - }, - "extend-shallow": { - "version": "2.0.1", - "dev": true, - "peer": true, - "requires": { - "is-extendable": "^0.1.0" - } - }, - "is-extendable": { - "version": "0.1.1", - "dev": true, - "peer": true - } - } - }, - "extsprintf": { - "version": "1.3.0", - "peer": true - }, - "eyes": { - "version": "0.1.8", - "peer": true - }, - "fast-deep-equal": { - "version": "3.1.3", - "dev": true, - "peer": true - }, - "fast-diff": { - "version": "1.2.0", - "dev": true, - "peer": true - }, - "fast-glob": { - "version": "2.2.7", - "dev": true, - "peer": true, - "requires": { - "@mrmlnc/readdir-enhanced": "^2.2.1", - "@nodelib/fs.stat": "^1.1.2", - "glob-parent": "^3.1.0", - "is-glob": "^4.0.0", - "merge2": "^1.2.3", - "micromatch": "^3.1.10" - }, - "dependencies": { - "glob-parent": { - "version": "3.1.0", - "dev": true, - "peer": true, - "requires": { - "is-glob": "^3.1.0", - "path-dirname": "^1.0.0" - }, - "dependencies": { - "is-glob": { - "version": "3.1.0", - "dev": true, - "peer": true, - "requires": { - "is-extglob": "^2.1.0" - } - } - } - } - } - }, - "fast-json-stable-stringify": { - "version": "2.1.0", - "dev": true, - "peer": true - }, - "fast-levenshtein": { - "version": "2.0.6", - "dev": true, - "peer": true - }, - "fast-safe-stringify": { - "version": "2.1.1", - "peer": true - }, - "fast-xml-parser": { - "version": "4.0.11", - "optional": true, - "peer": true, - "requires": { - "strnum": "^1.0.5" - } - }, - "fd-slicer": { - "version": "1.1.0", - "dev": true, - "peer": true, - "requires": { - "pend": "~1.2.0" - } - }, - "figures": { - "version": "3.2.0", - "devOptional": true, - "peer": true, - "requires": { - "escape-string-regexp": "^1.0.5" - } - }, - "file-entry-cache": { - "version": "5.0.1", - "dev": true, - "peer": true, - "requires": { - "flat-cache": "^2.0.1" - } - }, - "file-type": { - "version": "16.5.0", - "peer": true, - "requires": { - "readable-web-to-node-stream": "^3.0.0", - "strtok3": "^6.0.3", - "token-types": "^2.0.0" - } - }, - "file-uri-to-path": { - "version": "1.0.0", - "peer": true - }, - "fill-keys": { - "version": "1.0.2", - "dev": true, - "peer": true, - "requires": { - "is-object": "~1.0.1", - "merge-descriptors": "~1.0.0" - } - }, - "fill-range": { - "version": "4.0.0", - "dev": true, - "peer": true, - "requires": { - "extend-shallow": "^2.0.1", - "is-number": "^3.0.0", - "repeat-string": "^1.6.1", - "to-regex-range": "^2.1.0" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "dev": true, - "peer": true, - "requires": { - "is-extendable": "^0.1.0" - } - }, - "is-extendable": { - "version": "0.1.1", - "dev": true, - "peer": true - } - } - }, - "finalhandler": { - "version": "1.1.2", - "peer": true, - "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", - "peer": true, - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "peer": true - } - } - }, - "find-cache-dir": { - "version": "3.3.2", - "dev": true, - "peer": true, - "requires": { - "commondir": "^1.0.1", - "make-dir": "^3.0.2", - "pkg-dir": "^4.1.0" - }, - "dependencies": { - "make-dir": { - "version": "3.1.0", - "dev": true, - "peer": true, - "requires": { - "semver": "^6.0.0" - } - } - } - }, - "find-up": { - "version": "3.0.0", - "dev": true, - "peer": true, - "requires": { - "locate-path": "^3.0.0" - } - }, - "flat": { - "version": "4.1.1", - "dev": true, - "peer": true, - "requires": { - "is-buffer": "~2.0.3" - } - }, - "flat-cache": { - "version": "2.0.1", - "dev": true, - "peer": true, - "requires": { - "flatted": "^2.0.0", - "rimraf": "2.6.3", - "write": "1.0.3" - } - }, - "flatted": { - "version": "2.0.2", - "dev": true, - "peer": true - }, - "follow-redirects": { - "version": "1.15.2", - "dev": true, - "peer": true - }, - "for-each": { - "version": "0.3.3", - "dev": true, - "peer": true, - "requires": { - "is-callable": "^1.1.3" - } - }, - "for-in": { - "version": "1.0.2", - "dev": true, - "peer": true - }, - "foreachasync": { - "version": "3.0.0", - "peer": true - }, - "foreground-child": { - "version": "1.5.6", - "dev": true, - "peer": true, - "requires": { - "cross-spawn": "^4", - "signal-exit": "^3.0.0" - }, - "dependencies": { - "cross-spawn": { - "version": "4.0.2", - "dev": true, - "peer": true, - "requires": { - "lru-cache": "^4.0.1", - "which": "^1.2.9" - } - }, - "lru-cache": { - "version": "4.1.5", - "dev": true, - "peer": true, - "requires": { - "pseudomap": "^1.0.2", - "yallist": "^2.1.2" - } - }, - "yallist": { - "version": "2.1.2", - "dev": true, - "peer": true - } - } - }, - "forever-agent": { - "version": "0.6.1", - "dev": true, - "peer": true - }, - "form-data": { - "version": "3.0.1", - "dev": true, - "peer": true, - "requires": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.8", - "mime-types": "^2.1.12" - } - }, - "format-util": { - "version": "1.0.5", - "dev": true, - "peer": true - }, - "formidable": { - "version": "2.0.1", - "peer": true, - "requires": { - "dezalgo": "1.0.3", - "hexoid": "1.0.0", - "once": "1.4.0", - "qs": "6.9.3" - }, - "dependencies": { - "qs": { - "version": "6.9.3", - "peer": true - } - } - }, - "forwarded": { - "version": "0.2.0", - "peer": true - }, - "fragment-cache": { - "version": "0.2.1", - "dev": true, - "peer": true, - "requires": { - "map-cache": "^0.2.2" - } - }, - "fresh": { - "version": "0.5.2", - "peer": true - }, - "from": { - "version": "0.1.7", - "peer": true - }, - "fs-constants": { - "version": "1.0.0", - "peer": true - }, - "fs-extra": { - "version": "4.0.3", - "peer": true, - "requires": { - "graceful-fs": "^4.1.2", - "jsonfile": "^4.0.0", - "universalify": "^0.1.0" - } - }, - "fs-minipass": { - "version": "2.1.0", - "peer": true, - "requires": { - "minipass": "^3.0.0" - } - }, - "fs.realpath": { - "version": "1.0.0", - "peer": true - }, - "fsevents": { - "version": "2.1.3", - "dev": true, - "optional": true, - "peer": true - }, - "function-bind": { - "version": "1.1.1", - "peer": true - }, - "function.prototype.name": { - "version": "1.1.5", - "dev": true, - "peer": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3", - "es-abstract": "^1.19.0", - "functions-have-names": "^1.2.2" - } - }, - "functional-red-black-tree": { - "version": "1.0.1", - "dev": true, - "peer": true - }, - "functions-have-names": { - "version": "1.2.3", - "dev": true, - "peer": true - }, - "gauge": { - "version": "2.7.4", - "peer": true, - "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" - }, - "dependencies": { - "ansi-regex": { - "version": "2.1.1", - "peer": true - }, - "is-fullwidth-code-point": { - "version": "1.0.0", - "peer": true, - "requires": { - "number-is-nan": "^1.0.0" - } - }, - "string-width": { - "version": "1.0.2", - "peer": true, - "requires": { - "code-point-at": "^1.0.0", - "is-fullwidth-code-point": "^1.0.0", - "strip-ansi": "^3.0.0" - } - }, - "strip-ansi": { - "version": "3.0.1", - "peer": true, - "requires": { - "ansi-regex": "^2.0.0" - } - } - } - }, - "geojson": { - "version": "0.5.0", - "peer": true - }, - "geojson-rbush": { - "version": "3.2.0", - "peer": true, - "requires": { - "@turf/bbox": "*", - "@turf/helpers": "6.x", - "@turf/meta": "6.x", - "@types/geojson": "7946.0.8", - "rbush": "^3.0.1" - }, - "dependencies": { - "@types/geojson": { - "version": "7946.0.8", - "peer": true - } - } - }, - "geojson-stream": { - "version": "0.1.0", - "peer": true, - "requires": { - "JSONStream": "^1.0.0", - "through": "^2.3.4" - } - }, - "geojson-validation": { - "version": "1.0.2", - "peer": true - }, - "get-caller-file": { - "version": "2.0.5", - "dev": true, - "peer": true - }, - "get-func-name": { - "version": "2.0.0", - "dev": true, - "peer": true - }, - "get-intrinsic": { - "version": "1.1.3", - "peer": true, - "requires": { - "function-bind": "^1.1.1", - "has": "^1.0.3", - "has-symbols": "^1.0.3" - } - }, - "get-port": { - "version": "5.1.1", - "dev": true, - "peer": true - }, - "get-stdin": { - "version": "6.0.0", - "dev": true, - "peer": true - }, - "get-symbol-description": { - "version": "1.0.0", - "dev": true, - "peer": true, - "requires": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.1.1" - } - }, - "get-value": { - "version": "2.0.6", - "dev": true, - "peer": true - }, - "getpass": { - "version": "0.1.7", - "dev": true, - "peer": true, - "requires": { - "assert-plus": "^1.0.0" - } - }, - "github-from-package": { - "version": "0.0.0", - "peer": true - }, - "glob": { - "version": "7.2.3", - "peer": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "glob-parent": { - "version": "5.1.2", - "dev": true, - "peer": true, - "requires": { - "is-glob": "^4.0.1" - } - }, - "glob-to-regexp": { - "version": "0.3.0", - "dev": true, - "peer": true - }, - "globals": { - "version": "12.4.0", - "dev": true, - "peer": true, - "requires": { - "type-fest": "^0.8.1" - } - }, - "globby": { - "version": "9.2.0", - "dev": true, - "peer": true, - "requires": { - "@types/glob": "^7.1.1", - "array-union": "^1.0.2", - "dir-glob": "^2.2.2", - "fast-glob": "^2.2.6", - "glob": "^7.1.3", - "ignore": "^4.0.3", - "pify": "^4.0.1", - "slash": "^2.0.0" - } - }, - "gm": { - "version": "1.23.1", - "peer": true, - "requires": { - "array-parallel": "~0.1.3", - "array-series": "~0.1.5", - "cross-spawn": "^4.0.0", - "debug": "^3.1.0" - }, - "dependencies": { - "cross-spawn": { - "version": "4.0.2", - "peer": true, - "requires": { - "lru-cache": "^4.0.1", - "which": "^1.2.9" - } - }, - "debug": { - "version": "3.2.7", - "peer": true, - "requires": { - "ms": "^2.1.1" - } - }, - "lru-cache": { - "version": "4.1.5", - "peer": true, - "requires": { - "pseudomap": "^1.0.2", - "yallist": "^2.1.2" - } - }, - "yallist": { - "version": "2.1.2", - "peer": true - } - } - }, - "gopd": { - "version": "1.0.1", - "dev": true, - "peer": true, - "requires": { - "get-intrinsic": "^1.1.3" - } - }, - "graceful-fs": { - "version": "4.2.10", - "peer": true - }, - "growl": { - "version": "1.10.5", - "dev": true, - "peer": true - }, - "har-schema": { - "version": "2.0.0", - "dev": true, - "peer": true - }, - "har-validator": { - "version": "5.1.5", - "dev": true, - "peer": true, - "requires": { - "ajv": "^6.12.3", - "har-schema": "^2.0.0" - } - }, - "has": { - "version": "1.0.3", - "peer": true, - "requires": { - "function-bind": "^1.1.1" - } - }, - "has-bigints": { - "version": "1.0.2", - "dev": true, - "peer": true - }, - "has-flag": { - "version": "4.0.0", - "optional": true, - "peer": true - }, - "has-property-descriptors": { - "version": "1.0.0", - "dev": true, - "peer": true, - "requires": { - "get-intrinsic": "^1.1.1" - } - }, - "has-symbols": { - "version": "1.0.3", - "peer": true - }, - "has-tostringtag": { - "version": "1.0.0", - "peer": true, - "requires": { - "has-symbols": "^1.0.2" - } - }, - "has-unicode": { - "version": "2.0.1", - "peer": true - }, - "has-value": { - "version": "1.0.0", - "dev": true, - "peer": true, - "requires": { - "get-value": "^2.0.6", - "has-values": "^1.0.0", - "isobject": "^3.0.0" - } - }, - "has-values": { - "version": "1.0.0", - "dev": true, - "peer": true, - "requires": { - "is-number": "^3.0.0", - "kind-of": "^4.0.0" - }, - "dependencies": { - "is-buffer": { - "version": "1.1.6", - "dev": true, - "peer": true - }, - "kind-of": { - "version": "4.0.0", - "dev": true, - "peer": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "hash-base": { - "version": "3.1.0", - "peer": true, - "requires": { - "inherits": "^2.0.4", - "readable-stream": "^3.6.0", - "safe-buffer": "^5.2.0" - } - }, - "hash.js": { - "version": "1.1.7", - "peer": true, - "requires": { - "inherits": "^2.0.3", - "minimalistic-assert": "^1.0.1" - } - }, - "hasha": { - "version": "3.0.0", - "dev": true, - "peer": true, - "requires": { - "is-stream": "^1.0.1" - } - }, - "he": { - "version": "1.2.0", - "dev": true, - "peer": true - }, - "hexoid": { - "version": "1.0.0", - "peer": true - }, - "hmac-drbg": { - "version": "1.0.1", - "peer": true, - "requires": { - "hash.js": "^1.0.3", - "minimalistic-assert": "^1.0.0", - "minimalistic-crypto-utils": "^1.0.1" - } - }, - "hosted-git-info": { - "version": "2.8.9", - "dev": true, - "peer": true - }, - "html-escaper": { - "version": "2.0.2", - "dev": true, - "peer": true - }, - "http-errors": { - "version": "1.6.3", - "peer": true, - "requires": { - "depd": "~1.1.2", - "inherits": "2.0.3", - "setprototypeof": "1.1.0", - "statuses": ">= 1.4.0 < 2" - }, - "dependencies": { - "inherits": { - "version": "2.0.3", - "peer": true - }, - "setprototypeof": { - "version": "1.1.0", - "peer": true - } - } - }, - "http-signature": { - "version": "1.2.0", - "dev": true, - "peer": true, - "requires": { - "assert-plus": "^1.0.0", - "jsprim": "^1.2.2", - "sshpk": "^1.7.0" - } - }, - "https-proxy-agent": { - "version": "5.0.1", - "dev": true, - "peer": true, - "requires": { - "agent-base": "6", - "debug": "4" - } - }, - "iconv-lite": { - "version": "0.5.2", - "dev": true, - "peer": true, - "requires": { - "safer-buffer": ">= 2.1.2 < 3" - } - }, - "ieee754": { - "version": "1.2.1", - "peer": true - }, - "ignore": { - "version": "4.0.6", - "dev": true, - "peer": true - }, - "image-size": { - "version": "0.8.3", - "peer": true, - "requires": { - "queue": "6.0.1" - } - }, - "immediate": { - "version": "3.0.6", - "dev": true, - "peer": true - }, - "import-fresh": { - "version": "3.3.0", - "dev": true, - "peer": true, - "requires": { - "parent-module": "^1.0.0", - "resolve-from": "^4.0.0" - } - }, - "imurmurhash": { - "version": "0.1.4", - "dev": true, - "peer": true - }, - "indent-string": { - "version": "3.2.0", - "dev": true, - "peer": true - }, - "inflight": { - "version": "1.0.6", - "peer": true, - "requires": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "inherit": { - "version": "2.2.7", - "peer": true - }, - "inherits": { - "version": "2.0.4", - "peer": true - }, - "ini": { - "version": "1.3.8", - "peer": true - }, - "inquirer": { - "version": "8.0.0", - "optional": true, - "peer": true, - "requires": { - "ansi-escapes": "^4.2.1", - "chalk": "^4.1.0", - "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", - "run-async": "^2.4.0", - "rxjs": "^6.6.6", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0", - "through": "^2.3.6" - }, - "dependencies": { - "ansi-regex": { - "version": "5.0.1", - "optional": true, - "peer": true - }, - "strip-ansi": { - "version": "6.0.1", - "optional": true, - "peer": true, - "requires": { - "ansi-regex": "^5.0.1" - } - } - } - }, - "internal-slot": { - "version": "1.0.3", - "dev": true, - "peer": true, - "requires": { - "get-intrinsic": "^1.1.0", - "has": "^1.0.3", - "side-channel": "^1.0.4" - } - }, - "ip": { - "version": "2.0.0", - "peer": true - }, - "ipaddr.js": { - "version": "1.9.1", - "peer": true - }, - "is-accessor-descriptor": { - "version": "1.0.0", - "dev": true, - "peer": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-arguments": { - "version": "1.1.1", - "dev": true, - "peer": true, - "requires": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" - } - }, - "is-arrayish": { - "version": "0.2.1", - "dev": true, - "peer": true - }, - "is-bigint": { - "version": "1.0.4", - "dev": true, - "peer": true, - "requires": { - "has-bigints": "^1.0.1" - } - }, - "is-binary-path": { - "version": "2.1.0", - "dev": true, - "peer": true, - "requires": { - "binary-extensions": "^2.0.0" - } - }, - "is-boolean-object": { - "version": "1.1.2", - "dev": true, - "peer": true, - "requires": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" - } - }, - "is-buffer": { - "version": "2.0.5", - "dev": true, - "peer": true - }, - "is-callable": { - "version": "1.2.7", - "dev": true, - "peer": true - }, - "is-core-module": { - "version": "2.11.0", - "peer": true, - "requires": { - "has": "^1.0.3" - } - }, - "is-data-descriptor": { - "version": "1.0.0", - "dev": true, - "peer": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-date-object": { - "version": "1.0.5", - "dev": true, - "peer": true, - "requires": { - "has-tostringtag": "^1.0.0" - } - }, - "is-descriptor": { - "version": "1.0.2", - "dev": true, - "peer": true, - "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - } - }, - "is-expression": { - "version": "3.0.0", - "peer": true, - "requires": { - "acorn": "~4.0.2", - "object-assign": "^4.0.1" - }, - "dependencies": { - "acorn": { - "version": "4.0.13", - "peer": true - } - } - }, - "is-extendable": { - "version": "1.0.1", - "dev": true, - "peer": true, - "requires": { - "is-plain-object": "^2.0.4" - } - }, - "is-extglob": { - "version": "2.1.1", - "dev": true, - "peer": true - }, - "is-fullwidth-code-point": { - "version": "3.0.0", - "devOptional": true, - "peer": true - }, - "is-generator-function": { - "version": "1.0.10", - "dev": true, - "peer": true, - "requires": { - "has-tostringtag": "^1.0.0" - } - }, - "is-glob": { - "version": "4.0.3", - "dev": true, - "peer": true, - "requires": { - "is-extglob": "^2.1.1" - } - }, - "is-map": { - "version": "2.0.2", - "dev": true, - "peer": true - }, - "is-nan": { - "version": "1.3.2", - "dev": true, - "peer": true, - "requires": { - "call-bind": "^1.0.0", - "define-properties": "^1.1.3" - } - }, - "is-negative-zero": { - "version": "2.0.2", - "dev": true, - "peer": true - }, - "is-number": { - "version": "3.0.0", - "dev": true, - "peer": true, - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "is-buffer": { - "version": "1.1.6", - "dev": true, - "peer": true - }, - "kind-of": { - "version": "3.2.2", - "dev": true, - "peer": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "is-number-object": { - "version": "1.0.7", - "dev": true, - "peer": true, - "requires": { - "has-tostringtag": "^1.0.0" - } - }, - "is-object": { - "version": "1.0.2", - "dev": true, - "peer": true - }, - "is-plain-obj": { - "version": "1.1.0", - "dev": true, - "peer": true - }, - "is-plain-object": { - "version": "2.0.4", - "dev": true, - "peer": true, - "requires": { - "isobject": "^3.0.1" - } - }, - "is-promise": { - "version": "2.2.2", - "peer": true - }, - "is-regex": { - "version": "1.1.4", - "peer": true, - "requires": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" - } - }, - "is-set": { - "version": "2.0.2", - "dev": true, - "peer": true - }, - "is-shared-array-buffer": { - "version": "1.0.2", - "dev": true, - "peer": true, - "requires": { - "call-bind": "^1.0.2" - } - }, - "is-stream": { - "version": "1.1.0", - "dev": true, - "peer": true - }, - "is-string": { - "version": "1.0.7", - "dev": true, - "peer": true, - "requires": { - "has-tostringtag": "^1.0.0" - } - }, - "is-symbol": { - "version": "1.0.4", - "dev": true, - "peer": true, - "requires": { - "has-symbols": "^1.0.2" - } - }, - "is-typed-array": { - "version": "1.1.10", - "dev": true, - "peer": true, - "requires": { - "available-typed-arrays": "^1.0.5", - "call-bind": "^1.0.2", - "for-each": "^0.3.3", - "gopd": "^1.0.1", - "has-tostringtag": "^1.0.0" - } - }, - "is-typedarray": { - "version": "1.0.0", - "dev": true, - "peer": true - }, - "is-weakmap": { - "version": "2.0.1", - "dev": true, - "peer": true - }, - "is-weakref": { - "version": "1.0.2", - "dev": true, - "peer": true, - "requires": { - "call-bind": "^1.0.2" - } - }, - "is-weakset": { - "version": "2.0.2", - "dev": true, - "peer": true, - "requires": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.1.1" - } - }, - "is-windows": { - "version": "1.0.2", - "dev": true, - "peer": true - }, - "isarray": { - "version": "2.0.5", - "dev": true, - "peer": true - }, - "isexe": { - "version": "2.0.0", - "peer": true - }, - "isobject": { - "version": "3.0.1", - "dev": true, - "peer": true - }, - "isstream": { - "version": "0.1.2", - "peer": true - }, - "istanbul-lib-coverage": { - "version": "2.0.5", - "dev": true, - "peer": true - }, - "istanbul-lib-hook": { - "version": "2.0.7", - "dev": true, - "peer": true, - "requires": { - "append-transform": "^1.0.0" - } - }, - "istanbul-lib-instrument": { - "version": "3.3.0", - "dev": true, - "peer": true, - "requires": { - "@babel/generator": "^7.4.0", - "@babel/parser": "^7.4.3", - "@babel/template": "^7.4.0", - "@babel/traverse": "^7.4.3", - "@babel/types": "^7.4.0", - "istanbul-lib-coverage": "^2.0.5", - "semver": "^6.0.0" - } - }, - "istanbul-lib-report": { - "version": "2.0.8", - "dev": true, - "peer": true, - "requires": { - "istanbul-lib-coverage": "^2.0.5", - "make-dir": "^2.1.0", - "supports-color": "^6.1.0" - }, - "dependencies": { - "has-flag": { - "version": "3.0.0", - "dev": true, - "peer": true - }, - "supports-color": { - "version": "6.1.0", - "dev": true, - "peer": true, - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "istanbul-lib-source-maps": { - "version": "3.0.6", - "dev": true, - "peer": true, - "requires": { - "debug": "^4.1.1", - "istanbul-lib-coverage": "^2.0.5", - "make-dir": "^2.1.0", - "rimraf": "^2.6.3", - "source-map": "^0.6.1" - } - }, - "istanbul-reports": { - "version": "2.2.7", - "dev": true, - "peer": true, - "requires": { - "html-escaper": "^2.0.0" - } - }, - "jdataview": { - "version": "2.4.6", - "peer": true - }, - "js-stringify": { - "version": "1.0.2", - "peer": true - }, - "js-tokens": { - "version": "4.0.0", - "dev": true, - "peer": true - }, - "js-yaml": { - "version": "3.4.6", - "peer": true, - "requires": { - "argparse": "^1.0.2", - "esprima": "^2.6.0", - "inherit": "^2.2.2" - } - }, - "jsbn": { - "version": "0.1.1", - "dev": true, - "peer": true - }, - "jsesc": { - "version": "2.5.2", - "dev": true, - "peer": true - }, - "json-parse-better-errors": { - "version": "1.0.2", - "dev": true, - "peer": true - }, - "json-schema": { - "version": "0.4.0", - "dev": true, - "peer": true - }, - "json-schema-ref-parser": { - "version": "6.1.0", - "dev": true, - "peer": true, - "requires": { - "call-me-maybe": "^1.0.1", - "js-yaml": "^3.12.1", - "ono": "^4.0.11" - }, - "dependencies": { - "esprima": { - "version": "4.0.1", - "dev": true, - "peer": true - }, - "js-yaml": { - "version": "3.14.1", - "dev": true, - "peer": true, - "requires": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" - } - } - } - }, - "json-schema-traverse": { - "version": "0.4.1", - "dev": true, - "peer": true - }, - "json-stable-stringify-without-jsonify": { - "version": "1.0.1", - "dev": true, - "peer": true - }, - "json-stringify-safe": { - "version": "5.0.1", - "dev": true, - "peer": true - }, - "json2csv": { - "version": "4.5.1", - "peer": true, - "requires": { - "commander": "^2.15.1", - "jsonparse": "^1.3.1", - "lodash.get": "^4.4.2" - }, - "dependencies": { - "commander": { - "version": "2.20.3", - "peer": true - } - } - }, - "jsonfile": { - "version": "4.0.0", - "peer": true, - "requires": { - "graceful-fs": "^4.1.6" - } - }, - "jsonparse": { - "version": "1.3.1", - "peer": true - }, - "JSONStream": { - "version": "1.3.5", - "peer": true, - "requires": { - "jsonparse": "^1.2.0", - "through": ">=2.2.7 <3" - } - }, - "jsonwebtoken": { - "version": "9.0.0", - "peer": true, - "requires": { - "jws": "^3.2.2", - "lodash": "^4.17.21", - "ms": "^2.1.1", - "semver": "^7.3.8" - }, - "dependencies": { - "lru-cache": { - "version": "6.0.0", - "peer": true, - "requires": { - "yallist": "^4.0.0" - } - }, - "semver": { - "version": "7.3.8", - "peer": true, - "requires": { - "lru-cache": "^6.0.0" - } - }, - "yallist": { - "version": "4.0.0", - "peer": true - } - } - }, - "jsprim": { - "version": "1.4.2", - "dev": true, - "peer": true, - "requires": { - "assert-plus": "1.0.0", - "extsprintf": "1.3.0", - "json-schema": "0.4.0", - "verror": "1.10.0" - }, - "dependencies": { - "verror": { - "version": "1.10.0", - "dev": true, - "peer": true, - "requires": { - "assert-plus": "^1.0.0", - "core-util-is": "1.0.2", - "extsprintf": "^1.2.0" - } - } - } - }, - "jstransformer": { - "version": "1.0.0", - "peer": true, - "requires": { - "is-promise": "^2.0.0", - "promise": "^7.0.1" - } - }, - "jszip": { - "version": "3.10.1", - "dev": true, - "peer": true, - "requires": { - "lie": "~3.3.0", - "pako": "~1.0.2", - "readable-stream": "~2.3.6", - "setimmediate": "^1.0.5" - }, - "dependencies": { - "isarray": { - "version": "1.0.0", - "dev": true, - "peer": true - }, - "readable-stream": { - "version": "2.3.7", - "dev": true, - "peer": 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" - } - }, - "safe-buffer": { - "version": "5.1.2", - "dev": true, - "peer": true - }, - "string_decoder": { - "version": "1.1.1", - "dev": true, - "peer": true, - "requires": { - "safe-buffer": "~5.1.0" - } - } - } - }, - "just-extend": { - "version": "4.2.1", - "dev": true, - "peer": true - }, - "jwa": { - "version": "1.4.1", - "peer": true, - "requires": { - "buffer-equal-constant-time": "1.0.1", - "ecdsa-sig-formatter": "1.0.11", - "safe-buffer": "^5.0.1" - } - }, - "jws": { - "version": "3.2.2", - "peer": true, - "requires": { - "jwa": "^1.4.1", - "safe-buffer": "^5.0.1" - } - }, - "kareem": { - "version": "2.4.1", - "peer": true - }, - "kind-of": { - "version": "6.0.3", - "dev": true, - "peer": true - }, - "lazy-cache": { - "version": "1.0.4", - "peer": true - }, - "lazystream": { - "version": "1.0.1", - "peer": true, - "requires": { - "readable-stream": "^2.0.5" - }, - "dependencies": { - "isarray": { - "version": "1.0.0", - "peer": true - }, - "readable-stream": { - "version": "2.3.7", - "peer": 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" - } - }, - "safe-buffer": { - "version": "5.1.2", - "peer": true - }, - "string_decoder": { - "version": "1.1.1", - "peer": true, - "requires": { - "safe-buffer": "~5.1.0" - } - } - } - }, - "lcov-parse": { - "version": "0.0.10", - "dev": true, - "peer": true - }, - "ldap-filter": { - "version": "0.2.2", - "peer": true, - "requires": { - "assert-plus": "0.1.5" - }, - "dependencies": { - "assert-plus": { - "version": "0.1.5", - "peer": true - } - } - }, - "ldapauth-fork": { - "version": "4.3.3", - "peer": true, - "requires": { - "@types/ldapjs": "^1.0.0", - "@types/node": "*", - "bcryptjs": "^2.4.0", - "ldapjs": "^1.0.2", - "lru-cache": "^5.1.1" - } - }, - "ldapjs": { - "version": "1.0.2", - "peer": true, - "requires": { - "asn1": "0.2.3", - "assert-plus": "^1.0.0", - "backoff": "^2.5.0", - "bunyan": "^1.8.3", - "dashdash": "^1.14.0", - "dtrace-provider": "~0.8", - "ldap-filter": "0.2.2", - "once": "^1.4.0", - "vasync": "^1.6.4", - "verror": "^1.8.1" - } - }, - "levn": { - "version": "0.3.0", - "dev": true, - "peer": true, - "requires": { - "prelude-ls": "~1.1.2", - "type-check": "~0.3.2" - } - }, - "lie": { - "version": "3.3.0", - "dev": true, - "peer": true, - "requires": { - "immediate": "~3.0.5" - } - }, - "load-json-file": { - "version": "4.0.0", - "dev": true, - "peer": true, - "requires": { - "graceful-fs": "^4.1.2", - "parse-json": "^4.0.0", - "pify": "^3.0.0", - "strip-bom": "^3.0.0" - }, - "dependencies": { - "pify": { - "version": "3.0.0", - "dev": true, - "peer": true - } - } - }, - "locate-path": { - "version": "3.0.0", - "dev": true, - "peer": true, - "requires": { - "p-locate": "^3.0.0", - "path-exists": "^3.0.0" - } - }, - "lodash": { - "version": "4.17.21", - "peer": true - }, - "lodash.defaults": { - "version": "4.2.0", - "peer": true - }, - "lodash.difference": { - "version": "4.5.0", - "peer": true - }, - "lodash.flatten": { - "version": "4.4.0", - "peer": true - }, - "lodash.flattendeep": { - "version": "4.4.0", - "dev": true, - "peer": true - }, - "lodash.get": { - "version": "4.4.2", - "peer": true - }, - "lodash.isplainobject": { - "version": "4.0.6", - "peer": true - }, - "lodash.union": { - "version": "4.6.0", - "peer": true - }, - "log-driver": { - "version": "1.2.7", - "dev": true, - "peer": true - }, - "log-symbols": { - "version": "3.0.0", - "dev": true, - "peer": true, - "requires": { - "chalk": "^2.4.2" - }, - "dependencies": { - "ansi-styles": { - "version": "3.2.1", - "dev": true, - "peer": true, - "requires": { - "color-convert": "^1.9.0" - } - }, - "chalk": { - "version": "2.4.2", - "dev": true, - "peer": true, - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - } - }, - "color-convert": { - "version": "1.9.3", - "dev": true, - "peer": true, - "requires": { - "color-name": "1.1.3" - } - }, - "color-name": { - "version": "1.1.3", - "dev": true, - "peer": true - }, - "has-flag": { - "version": "3.0.0", - "dev": true, - "peer": true - }, - "supports-color": { - "version": "5.5.0", - "dev": true, - "peer": true, - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "lolex": { - "version": "4.2.0", - "dev": true, - "peer": true - }, - "longest": { - "version": "1.0.1", - "peer": true - }, - "loud-rejection": { - "version": "1.6.0", - "dev": true, - "peer": true, - "requires": { - "currently-unhandled": "^0.4.1", - "signal-exit": "^3.0.0" - } - }, - "loupe": { - "version": "2.3.6", - "dev": true, - "peer": true, - "requires": { - "get-func-name": "^2.0.0" - } - }, - "lru-cache": { - "version": "5.1.1", - "peer": true, - "requires": { - "yallist": "^3.0.2" - } - }, - "make-dir": { - "version": "2.1.0", - "dev": true, - "peer": true, - "requires": { - "pify": "^4.0.1", - "semver": "^5.6.0" - }, - "dependencies": { - "semver": { - "version": "5.7.1", - "dev": true, - "peer": true - } - } - }, - "map-cache": { - "version": "0.2.2", - "dev": true, - "peer": true - }, - "map-obj": { - "version": "2.0.0", - "dev": true, - "peer": true - }, - "map-stream": { - "version": "0.0.7", - "peer": true - }, - "map-visit": { - "version": "1.0.0", - "dev": true, - "peer": true, - "requires": { - "object-visit": "^1.0.0" - } - }, - "md5-file": { - "version": "5.0.0", - "dev": true, - "peer": true - }, - "md5.js": { - "version": "1.3.5", - "peer": true, - "requires": { - "hash-base": "^3.0.0", - "inherits": "^2.0.1", - "safe-buffer": "^5.1.2" - } - }, - "media-typer": { - "version": "0.3.0", - "peer": true - }, - "memory-pager": { - "version": "1.5.0", - "optional": true, - "peer": true - }, - "memorystream": { - "version": "0.3.1", - "dev": true, - "peer": true - }, - "meow": { - "version": "5.0.0", - "dev": true, - "peer": true, - "requires": { - "camelcase-keys": "^4.0.0", - "decamelize-keys": "^1.0.0", - "loud-rejection": "^1.0.0", - "minimist-options": "^3.0.1", - "normalize-package-data": "^2.3.4", - "read-pkg-up": "^3.0.0", - "redent": "^2.0.0", - "trim-newlines": "^2.0.0", - "yargs-parser": "^10.0.0" - } - }, - "merge-descriptors": { - "version": "1.0.1", - "peer": true - }, - "merge-source-map": { - "version": "1.1.0", - "dev": true, - "peer": true, - "requires": { - "source-map": "^0.6.1" - } - }, - "merge2": { - "version": "1.4.1", - "dev": true, - "peer": true - }, - "methods": { - "version": "1.1.2", - "peer": true - }, - "mgrs": { - "version": "1.0.0", - "peer": true - }, - "micromatch": { - "version": "3.1.10", - "dev": true, - "peer": true, - "requires": { - "arr-diff": "^4.0.0", - "array-unique": "^0.3.2", - "braces": "^2.3.1", - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "extglob": "^2.0.4", - "fragment-cache": "^0.2.1", - "kind-of": "^6.0.2", - "nanomatch": "^1.2.9", - "object.pick": "^1.3.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.2" - } - }, - "mime": { - "version": "1.6.0", - "peer": true - }, - "mime-db": { - "version": "1.52.0", - "peer": true - }, - "mime-types": { - "version": "2.1.35", - "peer": true, - "requires": { - "mime-db": "1.52.0" - } - }, - "mimic-fn": { - "version": "2.1.0", - "devOptional": true, - "peer": true - }, - "mimic-response": { - "version": "2.1.0", - "peer": true - }, - "minimalistic-assert": { - "version": "1.0.1", - "peer": true - }, - "minimalistic-crypto-utils": { - "version": "1.0.1", - "peer": true - }, - "minimatch": { - "version": "3.1.2", - "peer": true, - "requires": { - "brace-expansion": "^1.1.7" - } - }, - "minimist": { - "version": "1.2.0", - "peer": true - }, - "minimist-options": { - "version": "3.0.2", - "dev": true, - "peer": true, - "requires": { - "arrify": "^1.0.1", - "is-plain-obj": "^1.1.0" - } - }, - "minipass": { - "version": "3.3.6", - "peer": true, - "requires": { - "yallist": "^4.0.0" - }, - "dependencies": { - "yallist": { - "version": "4.0.0", - "peer": true - } - } - }, - "minizlib": { - "version": "2.1.2", - "peer": true, - "requires": { - "minipass": "^3.0.0", - "yallist": "^4.0.0" - }, - "dependencies": { - "yallist": { - "version": "4.0.0", - "peer": true - } - } - }, - "mixin-deep": { - "version": "1.3.2", - "dev": true, - "peer": true, - "requires": { - "for-in": "^1.0.2", - "is-extendable": "^1.0.1" - } - }, - "mkdirp": { - "version": "0.5.6", - "peer": true, - "requires": { - "minimist": "^1.2.6" - }, - "dependencies": { - "minimist": { - "version": "1.2.7", - "peer": true - } - } - }, - "mkdirp-classic": { - "version": "0.5.3", - "peer": true - }, - "mocha": { - "version": "7.2.0", - "dev": true, - "peer": true, - "requires": { - "ansi-colors": "3.2.3", - "browser-stdout": "1.3.1", - "chokidar": "3.3.0", - "debug": "3.2.6", - "diff": "3.5.0", - "escape-string-regexp": "1.0.5", - "find-up": "3.0.0", - "glob": "7.1.3", - "growl": "1.10.5", - "he": "1.2.0", - "js-yaml": "3.13.1", - "log-symbols": "3.0.0", - "minimatch": "3.0.4", - "mkdirp": "0.5.5", - "ms": "2.1.1", - "node-environment-flags": "1.0.6", - "object.assign": "4.1.0", - "strip-json-comments": "2.0.1", - "supports-color": "6.0.0", - "which": "1.3.1", - "wide-align": "1.1.3", - "yargs": "13.3.2", - "yargs-parser": "13.1.2", - "yargs-unparser": "1.6.0" - }, - "dependencies": { - "camelcase": { - "version": "5.3.1", - "dev": true, - "peer": true - }, - "debug": { - "version": "3.2.6", - "dev": true, - "peer": true, - "requires": { - "ms": "^2.1.1" - } - }, - "esprima": { - "version": "4.0.1", - "dev": true, - "peer": true - }, - "glob": { - "version": "7.1.3", - "dev": true, - "peer": 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" - } - }, - "has-flag": { - "version": "3.0.0", - "dev": true, - "peer": true - }, - "js-yaml": { - "version": "3.13.1", - "dev": true, - "peer": true, - "requires": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" - } - }, - "minimatch": { - "version": "3.0.4", - "dev": true, - "peer": true, - "requires": { - "brace-expansion": "^1.1.7" - } - }, - "minimist": { - "version": "1.2.7", - "dev": true, - "peer": true - }, - "mkdirp": { - "version": "0.5.5", - "dev": true, - "peer": true, - "requires": { - "minimist": "^1.2.5" - } - }, - "ms": { - "version": "2.1.1", - "dev": true, - "peer": true - }, - "object.assign": { - "version": "4.1.0", - "dev": true, - "peer": true, - "requires": { - "define-properties": "^1.1.2", - "function-bind": "^1.1.1", - "has-symbols": "^1.0.0", - "object-keys": "^1.0.11" - } - }, - "strip-json-comments": { - "version": "2.0.1", - "dev": true, - "peer": true - }, - "supports-color": { - "version": "6.0.0", - "dev": true, - "peer": true, - "requires": { - "has-flag": "^3.0.0" - } - }, - "yargs-parser": { - "version": "13.1.2", - "dev": true, - "peer": true, - "requires": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" - } - } - } - }, - "mock-fs": { - "version": "4.13.0", - "dev": true, - "peer": true - }, - "module-not-found-error": { - "version": "1.0.1", - "dev": true, - "peer": true - }, - "moment": { - "version": "2.22.2", - "peer": true - }, - "mongodb": { - "version": "4.11.0", - "peer": true, - "requires": { - "@aws-sdk/credential-providers": "^3.186.0", - "bson": "^4.7.0", - "denque": "^2.1.0", - "mongodb-connection-string-url": "^2.5.4", - "saslprep": "^1.0.3", - "socks": "^2.7.1" - } - }, - "mongodb-connection-string-url": { - "version": "2.6.0", - "peer": true, - "requires": { - "@types/whatwg-url": "^8.2.1", - "whatwg-url": "^11.0.0" - } - }, - "mongodb-memory-server": { - "version": "8.10.1", - "dev": true, - "peer": true, - "requires": { - "mongodb-memory-server-core": "8.10.1", - "tslib": "^2.4.1" - } - }, - "mongodb-memory-server-core": { - "version": "8.10.1", - "dev": true, - "peer": true, - "requires": { - "@types/tmp": "^0.2.3", - "async-mutex": "^0.3.2", - "camelcase": "^6.3.0", - "debug": "^4.3.4", - "find-cache-dir": "^3.3.2", - "get-port": "^5.1.1", - "https-proxy-agent": "^5.0.1", - "md5-file": "^5.0.0", - "mongodb": "~4.11.0", - "new-find-package-json": "^2.0.0", - "semver": "^7.3.8", - "tar-stream": "^2.1.4", - "tmp": "^0.2.1", - "tslib": "^2.4.1", - "uuid": "^8.3.1", - "yauzl": "^2.10.0" - }, - "dependencies": { - "camelcase": { - "version": "6.3.0", - "dev": true, - "peer": true - }, - "lru-cache": { - "version": "6.0.0", - "dev": true, - "peer": true, - "requires": { - "yallist": "^4.0.0" - } - }, - "rimraf": { - "version": "3.0.2", - "dev": true, - "peer": true, - "requires": { - "glob": "^7.1.3" - } - }, - "semver": { - "version": "7.3.8", - "dev": true, - "peer": true, - "requires": { - "lru-cache": "^6.0.0" - } - }, - "tmp": { - "version": "0.2.1", - "dev": true, - "peer": true, - "requires": { - "rimraf": "^3.0.0" - } - }, - "yallist": { - "version": "4.0.0", - "dev": true, - "peer": true - } - } - }, - "mongoose": { - "version": "6.7.4", - "peer": true, - "requires": { - "bson": "^4.7.0", - "kareem": "2.4.1", - "mongodb": "4.11.0", - "mpath": "0.9.0", - "mquery": "4.0.3", - "ms": "2.1.3", - "sift": "16.0.1" - }, - "dependencies": { - "ms": { - "version": "2.1.3", - "peer": true - } - } - }, - "mongoose-beautiful-unique-validation": { - "version": "7.1.1", - "peer": true, - "requires": {} - }, - "mpath": { - "version": "0.9.0", - "peer": true - }, - "mquery": { - "version": "4.0.3", - "peer": true, - "requires": { - "debug": "4.x" - } - }, - "ms": { - "version": "2.1.2", - "peer": true - }, - "multer": { - "version": "1.4.4", - "peer": true, - "requires": { - "append-field": "^1.0.0", - "busboy": "^0.2.11", - "concat-stream": "^1.5.2", - "mkdirp": "^0.5.4", - "object-assign": "^4.1.1", - "on-finished": "^2.3.0", - "type-is": "^1.6.4", - "xtend": "^4.0.0" - }, - "dependencies": { - "busboy": { - "version": "0.2.14", - "peer": true, - "requires": { - "dicer": "0.2.5", - "readable-stream": "1.1.x" - } - }, - "isarray": { - "version": "0.0.1", - "peer": true - }, - "readable-stream": { - "version": "1.1.14", - "peer": true, - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.1", - "isarray": "0.0.1", - "string_decoder": "~0.10.x" - } - }, - "string_decoder": { - "version": "0.10.31", - "peer": true - } - } - }, - "mute-stream": { - "version": "0.0.8", - "devOptional": true, - "peer": true - }, - "mv": { - "version": "2.1.1", - "optional": true, - "peer": true, - "requires": { - "mkdirp": "~0.5.1", - "ncp": "~2.0.0", - "rimraf": "~2.4.0" - }, - "dependencies": { - "glob": { - "version": "6.0.4", - "optional": true, - "peer": true, - "requires": { - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "2 || 3", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "rimraf": { - "version": "2.4.5", - "optional": true, - "peer": true, - "requires": { - "glob": "^6.0.1" - } - } - } - }, - "nan": { - "version": "2.17.0", - "optional": true, - "peer": true - }, - "nanomatch": { - "version": "1.2.13", - "dev": true, - "peer": true, - "requires": { - "arr-diff": "^4.0.0", - "array-unique": "^0.3.2", - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "fragment-cache": "^0.2.1", - "is-windows": "^1.0.2", - "kind-of": "^6.0.2", - "object.pick": "^1.3.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.1" - } - }, - "napi-build-utils": { - "version": "1.0.2", - "peer": true - }, - "natural-compare": { - "version": "1.4.0", - "dev": true, - "peer": true - }, - "ncp": { - "version": "2.0.0", - "optional": true, - "peer": true - }, - "negotiator": { - "version": "0.6.3", - "peer": true - }, - "nested-error-stacks": { - "version": "2.1.1", - "dev": true, - "peer": true - }, - "new-find-package-json": { - "version": "2.0.0", - "dev": true, - "peer": true, - "requires": { - "debug": "^4.3.4" - } - }, - "nice-try": { - "version": "1.0.5", - "dev": true, - "peer": true - }, - "nise": { - "version": "1.5.3", - "dev": true, - "peer": true, - "requires": { - "@sinonjs/formatio": "^3.2.1", - "@sinonjs/text-encoding": "^0.7.1", - "just-extend": "^4.0.2", - "lolex": "^5.0.1", - "path-to-regexp": "^1.7.0" - }, - "dependencies": { - "isarray": { - "version": "0.0.1", - "dev": true, - "peer": true - }, - "lolex": { - "version": "5.1.2", - "dev": true, - "peer": true, - "requires": { - "@sinonjs/commons": "^1.7.0" - } - }, - "path-to-regexp": { - "version": "1.8.0", - "dev": true, - "peer": true, - "requires": { - "isarray": "0.0.1" - } - } - } - }, - "nock": { - "version": "11.9.1", - "dev": true, - "peer": true, - "requires": { - "debug": "^4.1.0", - "json-stringify-safe": "^5.0.1", - "lodash": "^4.17.13", - "mkdirp": "^0.5.0", - "propagate": "^2.0.0" - } - }, - "node-abi": { - "version": "2.30.1", - "peer": true, - "requires": { - "semver": "^5.4.1" - }, - "dependencies": { - "semver": { - "version": "5.7.1", - "peer": true - } - } - }, - "node-environment-flags": { - "version": "1.0.6", - "dev": true, - "peer": true, - "requires": { - "object.getownpropertydescriptors": "^2.0.3", - "semver": "^5.7.0" - }, - "dependencies": { - "semver": { - "version": "5.7.1", - "dev": true, - "peer": true - } - } - }, - "node-fetch": { - "version": "2.6.7", - "peer": true, - "requires": { - "whatwg-url": "^5.0.0" - }, - "dependencies": { - "tr46": { - "version": "0.0.3", - "peer": true - }, - "webidl-conversions": { - "version": "3.0.1", - "peer": true - }, - "whatwg-url": { - "version": "5.0.0", - "peer": true, - "requires": { - "tr46": "~0.0.3", - "webidl-conversions": "^3.0.0" - } - } - } - }, - "normalize-package-data": { - "version": "2.5.0", - "dev": true, - "peer": true, - "requires": { - "hosted-git-info": "^2.1.4", - "resolve": "^1.10.0", - "semver": "2 || 3 || 4 || 5", - "validate-npm-package-license": "^3.0.1" - }, - "dependencies": { - "semver": { - "version": "5.7.1", - "dev": true, - "peer": true - } - } - }, - "normalize-path": { - "version": "3.0.0", - "peer": true - }, - "npm-run-all": { - "version": "4.1.5", - "dev": true, - "peer": true, - "requires": { - "ansi-styles": "^3.2.1", - "chalk": "^2.4.1", - "cross-spawn": "^6.0.5", - "memorystream": "^0.3.1", - "minimatch": "^3.0.4", - "pidtree": "^0.3.0", - "read-pkg": "^3.0.0", - "shell-quote": "^1.6.1", - "string.prototype.padend": "^3.0.0" - }, - "dependencies": { - "ansi-styles": { - "version": "3.2.1", - "dev": true, - "peer": true, - "requires": { - "color-convert": "^1.9.0" - } - }, - "chalk": { - "version": "2.4.2", - "dev": true, - "peer": true, - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - } - }, - "color-convert": { - "version": "1.9.3", - "dev": true, - "peer": true, - "requires": { - "color-name": "1.1.3" - } - }, - "color-name": { - "version": "1.1.3", - "dev": true, - "peer": true - }, - "has-flag": { - "version": "3.0.0", - "dev": true, - "peer": true - }, - "supports-color": { - "version": "5.5.0", - "dev": true, - "peer": true, - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "npmlog": { - "version": "4.1.2", - "peer": true, - "requires": { - "are-we-there-yet": "~1.1.2", - "console-control-strings": "~1.1.0", - "gauge": "~2.7.3", - "set-blocking": "~2.0.0" - } - }, - "number-is-nan": { - "version": "1.0.1", - "peer": true - }, - "nyc": { - "version": "14.1.1", - "dev": true, - "peer": true, - "requires": { - "archy": "^1.0.0", - "caching-transform": "^3.0.2", - "convert-source-map": "^1.6.0", - "cp-file": "^6.2.0", - "find-cache-dir": "^2.1.0", - "find-up": "^3.0.0", - "foreground-child": "^1.5.6", - "glob": "^7.1.3", - "istanbul-lib-coverage": "^2.0.5", - "istanbul-lib-hook": "^2.0.7", - "istanbul-lib-instrument": "^3.3.0", - "istanbul-lib-report": "^2.0.8", - "istanbul-lib-source-maps": "^3.0.6", - "istanbul-reports": "^2.2.4", - "js-yaml": "^3.13.1", - "make-dir": "^2.1.0", - "merge-source-map": "^1.1.0", - "resolve-from": "^4.0.0", - "rimraf": "^2.6.3", - "signal-exit": "^3.0.2", - "spawn-wrap": "^1.4.2", - "test-exclude": "^5.2.3", - "uuid": "^3.3.2", - "yargs": "^13.2.2", - "yargs-parser": "^13.0.0" - }, - "dependencies": { - "camelcase": { - "version": "5.3.1", - "dev": true, - "peer": true - }, - "esprima": { - "version": "4.0.1", - "dev": true, - "peer": true - }, - "find-cache-dir": { - "version": "2.1.0", - "dev": true, - "peer": true, - "requires": { - "commondir": "^1.0.1", - "make-dir": "^2.0.0", - "pkg-dir": "^3.0.0" - } - }, - "js-yaml": { - "version": "3.14.1", - "dev": true, - "peer": true, - "requires": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" - } - }, - "pkg-dir": { - "version": "3.0.0", - "dev": true, - "peer": true, - "requires": { - "find-up": "^3.0.0" - } - }, - "uuid": { - "version": "3.4.0", - "dev": true, - "peer": true - }, - "yargs-parser": { - "version": "13.1.2", - "dev": true, - "peer": true, - "requires": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" - } - } - } - }, - "oauth": { - "version": "0.9.15", - "peer": true - }, - "oauth-sign": { - "version": "0.9.0", - "dev": true, - "peer": true - }, - "object-assign": { - "version": "4.1.1", - "peer": true - }, - "object-copy": { - "version": "0.1.0", - "dev": true, - "peer": true, - "requires": { - "copy-descriptor": "^0.1.0", - "define-property": "^0.2.5", - "kind-of": "^3.0.3" - }, - "dependencies": { - "define-property": { - "version": "0.2.5", - "dev": true, - "peer": true, - "requires": { - "is-descriptor": "^0.1.0" - } - }, - "is-accessor-descriptor": { - "version": "0.1.6", - "dev": true, - "peer": true, - "requires": { - "kind-of": "^3.0.2" - } - }, - "is-buffer": { - "version": "1.1.6", - "dev": true, - "peer": true - }, - "is-data-descriptor": { - "version": "0.1.4", - "dev": true, - "peer": true, - "requires": { - "kind-of": "^3.0.2" - } - }, - "is-descriptor": { - "version": "0.1.6", - "dev": true, - "peer": true, - "requires": { - "is-accessor-descriptor": "^0.1.6", - "is-data-descriptor": "^0.1.4", - "kind-of": "^5.0.0" - }, - "dependencies": { - "kind-of": { - "version": "5.1.0", - "dev": true, - "peer": true - } - } - }, - "kind-of": { - "version": "3.2.2", - "dev": true, - "peer": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "object-inspect": { - "version": "1.12.2", - "peer": true - }, - "object-is": { - "version": "1.1.5", - "dev": true, - "peer": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3" - } - }, - "object-keys": { - "version": "1.1.1", - "dev": true, - "peer": true - }, - "object-visit": { - "version": "1.0.1", - "dev": true, - "peer": true, - "requires": { - "isobject": "^3.0.0" - } - }, - "object.assign": { - "version": "4.1.4", - "dev": true, - "peer": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "has-symbols": "^1.0.3", - "object-keys": "^1.1.1" - } - }, - "object.getownpropertydescriptors": { - "version": "2.1.5", - "dev": true, - "peer": true, - "requires": { - "array.prototype.reduce": "^1.0.5", - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4" - } - }, - "object.pick": { - "version": "1.3.0", - "dev": true, - "peer": true, - "requires": { - "isobject": "^3.0.1" - } - }, - "on-finished": { - "version": "2.3.0", - "peer": true, - "requires": { - "ee-first": "1.1.1" - } - }, - "on-headers": { - "version": "1.0.2", - "peer": true - }, - "once": { - "version": "1.4.0", - "peer": true, - "requires": { - "wrappy": "1" - } - }, - "onetime": { - "version": "5.1.2", - "devOptional": true, - "peer": true, - "requires": { - "mimic-fn": "^2.1.0" - } - }, - "ono": { - "version": "4.0.11", - "dev": true, - "peer": true, - "requires": { - "format-util": "^1.0.3" - } - }, - "openapi-enforcer": { - "version": "1.15.5", - "dev": true, - "peer": true, - "requires": { - "axios": "^0.21.1", - "json-schema-ref-parser": "^6.1.0", - "randexp": "^0.5.3" - } - }, - "opentype.js": { - "version": "0.7.3", - "peer": true, - "requires": { - "tiny-inflate": "^1.0.2" - } - }, - "optionator": { - "version": "0.8.3", - "dev": true, - "peer": true, - "requires": { - "deep-is": "~0.1.3", - "fast-levenshtein": "~2.0.6", - "levn": "~0.3.0", - "prelude-ls": "~1.1.2", - "type-check": "~0.3.2", - "word-wrap": "~1.2.3" - } - }, - "os-homedir": { - "version": "1.0.2", - "dev": true, - "peer": true - }, - "os-tmpdir": { - "version": "1.0.2", - "devOptional": true, - "peer": true - }, - "p-limit": { - "version": "2.3.0", - "dev": true, - "peer": true, - "requires": { - "p-try": "^2.0.0" - } - }, - "p-locate": { - "version": "3.0.0", - "dev": true, - "peer": true, - "requires": { - "p-limit": "^2.0.0" - } - }, - "p-try": { - "version": "2.2.0", - "dev": true, - "peer": true - }, - "package-hash": { - "version": "3.0.0", - "dev": true, - "peer": true, - "requires": { - "graceful-fs": "^4.1.15", - "hasha": "^3.0.0", - "lodash.flattendeep": "^4.4.0", - "release-zalgo": "^1.0.0" - } - }, - "pako": { - "version": "1.0.11", - "dev": true, - "peer": true - }, - "parent-module": { - "version": "1.0.1", - "dev": true, - "peer": true, - "requires": { - "callsites": "^3.0.0" - } - }, - "parse-asn1": { - "version": "5.1.6", - "peer": true, - "requires": { - "asn1.js": "^5.2.0", - "browserify-aes": "^1.0.0", - "evp_bytestokey": "^1.0.0", - "pbkdf2": "^3.0.3", - "safe-buffer": "^5.1.1" - }, - "dependencies": { - "asn1.js": { - "version": "5.4.1", - "peer": true, - "requires": { - "bn.js": "^4.0.0", - "inherits": "^2.0.1", - "minimalistic-assert": "^1.0.0", - "safer-buffer": "^2.1.0" - } - }, - "bn.js": { - "version": "4.12.0", - "peer": true - } - } - }, - "parse-json": { - "version": "4.0.0", - "dev": true, - "peer": true, - "requires": { - "error-ex": "^1.3.1", - "json-parse-better-errors": "^1.0.1" - } - }, - "parseurl": { - "version": "1.3.3", - "peer": true - }, - "pascalcase": { - "version": "0.1.1", - "dev": true, - "peer": true - }, - "passport": { - "version": "0.4.1", - "peer": true, - "requires": { - "passport-strategy": "1.x.x", - "pause": "0.0.1" - } - }, - "passport-anonymous": { - "version": "1.0.1", - "peer": true, - "requires": { - "passport-strategy": "1.x.x" - } - }, - "passport-http-bearer": { - "version": "1.0.1", - "peer": true, - "requires": { - "passport-strategy": "1.x.x" - } - }, - "passport-ldapauth": { - "version": "2.1.3", - "peer": true, - "requires": { - "@types/node": "^10.12.26", - "@types/passport": "^1.0.0", - "ldapauth-fork": "^4.2.0", - "passport-strategy": "^1.0.0" - }, - "dependencies": { - "@types/node": { - "version": "10.17.60", - "peer": true - } - } - }, - "passport-local": { - "version": "1.0.0", - "peer": true, - "requires": { - "passport-strategy": "1.x.x" - } - }, - "passport-oauth2": { - "version": "1.6.1", - "peer": true, - "requires": { - "base64url": "3.x.x", - "oauth": "0.9.x", - "passport-strategy": "1.x.x", - "uid2": "0.0.x", - "utils-merge": "1.x.x" - } - }, - "passport-openidconnect": { - "version": "0.1.1", - "peer": true, - "requires": { - "oauth": "0.9.x", - "passport-strategy": "1.x.x" - } - }, - "passport-strategy": { - "version": "1.0.0", - "peer": true - }, - "path-dirname": { - "version": "1.0.2", - "dev": true, - "peer": true - }, - "path-exists": { - "version": "3.0.0", - "dev": true, - "peer": true - }, - "path-is-absolute": { - "version": "1.0.1", - "peer": true - }, - "path-key": { - "version": "2.0.1", - "dev": true, - "peer": true - }, - "path-parse": { - "version": "1.0.7", - "peer": true - }, - "path-to-regexp": { - "version": "0.1.7", - "peer": true - }, - "path-type": { - "version": "3.0.0", - "dev": true, - "peer": true, - "requires": { - "pify": "^3.0.0" - }, - "dependencies": { - "pify": { - "version": "3.0.0", - "dev": true, - "peer": true - } - } - }, - "pathval": { - "version": "1.1.1", - "dev": true, - "peer": true - }, - "pause": { - "version": "0.0.1", - "peer": true - }, - "pause-stream": { - "version": "0.0.11", - "peer": true, - "requires": { - "through": "~2.3" - } - }, - "pbkdf2": { - "version": "3.1.2", - "peer": true, - "requires": { - "create-hash": "^1.1.2", - "create-hmac": "^1.1.4", - "ripemd160": "^2.0.1", - "safe-buffer": "^5.0.1", - "sha.js": "^2.4.8" - } - }, - "peek-readable": { - "version": "4.1.0", - "peer": true - }, - "pem-jwk": { - "version": "1.5.1", - "peer": true, - "requires": { - "asn1.js": "1.0.3" - }, - "dependencies": { - "asn1.js": { - "version": "1.0.3", - "peer": true, - "requires": { - "bn.js": "^1.0.0", - "inherits": "^2.0.1", - "minimalistic-assert": "^1.0.0" - } - }, - "bn.js": { - "version": "1.3.0", - "optional": true, - "peer": true - } - } - }, - "pem2jwk": { - "version": "1.0.1", - "peer": true, - "requires": { - "elliptic": "^6.4.0", - "parse-asn1": "^5.1.0" - } - }, - "pend": { - "version": "1.2.0", - "dev": true, - "peer": true - }, - "performance-now": { - "version": "2.1.0", - "dev": true, - "peer": true - }, - "picomatch": { - "version": "2.3.1", - "dev": true, - "peer": true - }, - "pidtree": { - "version": "0.3.1", - "dev": true, - "peer": true - }, - "pify": { - "version": "4.0.1", - "dev": true, - "peer": true - }, - "pkg-dir": { - "version": "4.2.0", - "dev": true, - "peer": true, - "requires": { - "find-up": "^4.0.0" - }, - "dependencies": { - "find-up": { - "version": "4.1.0", - "dev": true, - "peer": true, - "requires": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - } - }, - "locate-path": { - "version": "5.0.0", - "dev": true, - "peer": true, - "requires": { - "p-locate": "^4.1.0" - } - }, - "p-locate": { - "version": "4.1.0", - "dev": true, - "peer": true, - "requires": { - "p-limit": "^2.2.0" - } - }, - "path-exists": { - "version": "4.0.0", - "dev": true, - "peer": true - } - } - }, - "pkginfo": { - "version": "0.3.1", - "peer": true - }, - "polygon-clipping": { - "version": "0.15.3", - "peer": true, - "requires": { - "splaytree": "^3.1.0" - } - }, - "ports": { - "version": "1.1.0", - "peer": true - }, - "posix-character-classes": { - "version": "0.1.1", - "dev": true, - "peer": true - }, - "prebuild-install": { - "version": "6.1.4", - "peer": true, - "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" - }, - "dependencies": { - "minimist": { - "version": "1.2.7", - "peer": true - } - } - }, - "precond": { - "version": "0.2.3", - "peer": true - }, - "prelude-ls": { - "version": "1.1.2", - "dev": true, - "peer": true - }, - "prettier": { - "version": "1.19.1", - "dev": true, - "peer": true - }, - "prettier-linter-helpers": { - "version": "1.0.0", - "dev": true, - "peer": true, - "requires": { - "fast-diff": "^1.1.2" - } - }, - "process-nextick-args": { - "version": "2.0.1", - "peer": true - }, - "progress": { - "version": "2.0.3", - "dev": true, - "peer": true - }, - "proj4": { - "version": "2.8.0", - "peer": true, - "requires": { - "mgrs": "1.0.0", - "wkt-parser": "^1.3.1" - } - }, - "promise": { - "version": "7.3.1", - "peer": true, - "requires": { - "asap": "~2.0.3" - } - }, - "propagate": { - "version": "2.0.1", - "dev": true, - "peer": true - }, - "proxy-addr": { - "version": "2.0.7", - "peer": true, - "requires": { - "forwarded": "0.2.0", - "ipaddr.js": "1.9.1" - } - }, - "proxyquire": { - "version": "2.1.3", - "dev": true, - "peer": true, - "requires": { - "fill-keys": "^1.0.2", - "module-not-found-error": "^1.0.1", - "resolve": "^1.11.1" - } - }, - "pseudomap": { - "version": "1.0.2", - "peer": true - }, - "psl": { - "version": "1.9.0", - "dev": true, - "peer": true - }, - "pug": { - "version": "2.0.4", - "peer": true, - "requires": { - "pug-code-gen": "^2.0.2", - "pug-filters": "^3.1.1", - "pug-lexer": "^4.1.0", - "pug-linker": "^3.0.6", - "pug-load": "^2.0.12", - "pug-parser": "^5.0.1", - "pug-runtime": "^2.0.5", - "pug-strip-comments": "^1.0.4" - } - }, - "pug-attrs": { - "version": "2.0.4", - "peer": true, - "requires": { - "constantinople": "^3.0.1", - "js-stringify": "^1.0.1", - "pug-runtime": "^2.0.5" - } - }, - "pug-code-gen": { - "version": "2.0.3", - "peer": true, - "requires": { - "constantinople": "^3.1.2", - "doctypes": "^1.1.0", - "js-stringify": "^1.0.1", - "pug-attrs": "^2.0.4", - "pug-error": "^1.3.3", - "pug-runtime": "^2.0.5", - "void-elements": "^2.0.1", - "with": "^5.0.0" - } - }, - "pug-error": { - "version": "1.3.3", - "peer": true - }, - "pug-filters": { - "version": "3.1.1", - "peer": true, - "requires": { - "clean-css": "^4.1.11", - "constantinople": "^3.0.1", - "jstransformer": "1.0.0", - "pug-error": "^1.3.3", - "pug-walk": "^1.1.8", - "resolve": "^1.1.6", - "uglify-js": "^2.6.1" - } - }, - "pug-lexer": { - "version": "4.1.0", - "peer": true, - "requires": { - "character-parser": "^2.1.1", - "is-expression": "^3.0.0", - "pug-error": "^1.3.3" - } - }, - "pug-linker": { - "version": "3.0.6", - "peer": true, - "requires": { - "pug-error": "^1.3.3", - "pug-walk": "^1.1.8" - } - }, - "pug-load": { - "version": "2.0.12", - "peer": true, - "requires": { - "object-assign": "^4.1.0", - "pug-walk": "^1.1.8" - } - }, - "pug-parser": { - "version": "5.0.1", - "peer": true, - "requires": { - "pug-error": "^1.3.3", - "token-stream": "0.0.1" - } - }, - "pug-runtime": { - "version": "2.0.5", - "peer": true - }, - "pug-strip-comments": { - "version": "1.0.4", - "peer": true, - "requires": { - "pug-error": "^1.3.3" - } - }, - "pug-walk": { - "version": "1.1.8", - "peer": true - }, - "pump": { - "version": "3.0.0", - "peer": true, - "requires": { - "end-of-stream": "^1.1.0", - "once": "^1.3.1" - } - }, - "punycode": { - "version": "2.1.1", - "peer": true - }, - "qs": { - "version": "6.5.2", - "peer": true - }, - "queue": { - "version": "6.0.1", - "peer": true, - "requires": { - "inherits": "~2.0.3" - } - }, - "quick-lru": { - "version": "1.1.0", - "dev": true, - "peer": true - }, - "quickselect": { - "version": "2.0.0", - "peer": true - }, - "randexp": { - "version": "0.5.3", - "dev": true, - "peer": true, - "requires": { - "drange": "^1.0.2", - "ret": "^0.2.0" - } - }, - "random-bytes": { - "version": "1.0.0", - "peer": true - }, - "range-parser": { - "version": "1.2.1", - "peer": true - }, - "raw-body": { - "version": "2.3.3", - "peer": true, - "requires": { - "bytes": "3.0.0", - "http-errors": "1.6.3", - "iconv-lite": "0.4.23", - "unpipe": "1.0.0" - }, - "dependencies": { - "iconv-lite": { - "version": "0.4.23", - "peer": true, - "requires": { - "safer-buffer": ">= 2.1.2 < 3" - } - } - } - }, - "rbush": { - "version": "3.0.1", - "peer": true, - "requires": { - "quickselect": "^2.0.0" - } - }, - "rc": { - "version": "1.2.8", - "peer": true, - "requires": { - "deep-extend": "^0.6.0", - "ini": "~1.3.0", - "minimist": "^1.2.0", - "strip-json-comments": "~2.0.1" - }, - "dependencies": { - "strip-json-comments": { - "version": "2.0.1", - "peer": true - } - } - }, - "read-pkg": { - "version": "3.0.0", - "dev": true, - "peer": true, - "requires": { - "load-json-file": "^4.0.0", - "normalize-package-data": "^2.3.2", - "path-type": "^3.0.0" - } - }, - "read-pkg-up": { - "version": "3.0.0", - "dev": true, - "peer": true, - "requires": { - "find-up": "^2.0.0", - "read-pkg": "^3.0.0" - }, - "dependencies": { - "find-up": { - "version": "2.1.0", - "dev": true, - "peer": true, - "requires": { - "locate-path": "^2.0.0" - } - }, - "locate-path": { - "version": "2.0.0", - "dev": true, - "peer": true, - "requires": { - "p-locate": "^2.0.0", - "path-exists": "^3.0.0" - } - }, - "p-limit": { - "version": "1.3.0", - "dev": true, - "peer": true, - "requires": { - "p-try": "^1.0.0" - } - }, - "p-locate": { - "version": "2.0.0", - "dev": true, - "peer": true, - "requires": { - "p-limit": "^1.1.0" - } - }, - "p-try": { - "version": "1.0.0", - "dev": true, - "peer": true - } - } - }, - "readable-stream": { - "version": "3.6.0", - "peer": true, - "requires": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - } - }, - "readable-web-to-node-stream": { - "version": "3.0.2", - "peer": true, - "requires": { - "readable-stream": "^3.6.0" - } - }, - "readdir-glob": { - "version": "1.1.2", - "peer": true, - "requires": { - "minimatch": "^5.1.0" - }, - "dependencies": { - "brace-expansion": { - "version": "2.0.1", - "peer": true, - "requires": { - "balanced-match": "^1.0.0" - } - }, - "minimatch": { - "version": "5.1.0", - "peer": true, - "requires": { - "brace-expansion": "^2.0.1" - } - } - } - }, - "readdirp": { - "version": "3.2.0", - "dev": true, - "peer": true, - "requires": { - "picomatch": "^2.0.4" - } - }, - "redent": { - "version": "2.0.0", - "dev": true, - "peer": true, - "requires": { - "indent-string": "^3.0.0", - "strip-indent": "^2.0.0" - } - }, - "regenerator-runtime": { - "version": "0.11.1", - "peer": true - }, - "regex-not": { - "version": "1.0.2", - "dev": true, - "peer": true, - "requires": { - "extend-shallow": "^3.0.2", - "safe-regex": "^1.1.0" - } - }, - "regexp.prototype.flags": { - "version": "1.4.3", - "dev": true, - "peer": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3", - "functions-have-names": "^1.2.2" - } - }, - "regexpp": { - "version": "3.2.0", - "dev": true, - "peer": true - }, - "release-zalgo": { - "version": "1.0.0", - "dev": true, - "peer": true, - "requires": { - "es6-error": "^4.0.1" - } - }, - "repeat-element": { - "version": "1.1.4", - "dev": true, - "peer": true - }, - "repeat-string": { - "version": "1.6.1", - "peer": true - }, - "reproject": { - "version": "1.2.5", - "peer": true, - "requires": { - "concat-stream": "^2.0.0", - "event-stream": "^4.0.0", - "geojson-stream": "0.1.0", - "minimist": "^1.2.0", - "proj4": "^2.4.4" - }, - "dependencies": { - "concat-stream": { - "version": "2.0.0", - "peer": true, - "requires": { - "buffer-from": "^1.0.0", - "inherits": "^2.0.3", - "readable-stream": "^3.0.2", - "typedarray": "^0.0.6" - } - }, - "typedarray": { - "version": "0.0.6", - "peer": true - } - } - }, - "request": { - "version": "2.88.2", - "dev": true, - "peer": true, - "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", - "dev": true, - "peer": true, - "requires": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.6", - "mime-types": "^2.1.12" - } - }, - "uuid": { - "version": "3.4.0", - "dev": true, - "peer": true - } - } - }, - "require-directory": { - "version": "2.1.1", - "dev": true, - "peer": true - }, - "require-main-filename": { - "version": "2.0.0", - "dev": true, - "peer": true - }, - "resolve": { - "version": "1.22.1", - "peer": true, - "requires": { - "is-core-module": "^2.9.0", - "path-parse": "^1.0.7", - "supports-preserve-symlinks-flag": "^1.0.0" - } - }, - "resolve-from": { - "version": "4.0.0", - "dev": true, - "peer": true - }, - "resolve-url": { - "version": "0.2.1", - "dev": true, - "peer": true - }, - "restore-cursor": { - "version": "3.1.0", - "devOptional": true, - "peer": true, - "requires": { - "onetime": "^5.1.0", - "signal-exit": "^3.0.2" - } - }, - "ret": { - "version": "0.2.2", - "dev": true, - "peer": true - }, - "rfc5646": { - "version": "3.0.0", - "peer": true - }, - "right-align": { - "version": "0.1.3", - "peer": true, - "requires": { - "align-text": "^0.1.1" - } - }, - "rimraf": { - "version": "2.6.3", - "dev": true, - "peer": true, - "requires": { - "glob": "^7.1.3" - } - }, - "ripemd160": { - "version": "2.0.2", - "peer": true, - "requires": { - "hash-base": "^3.0.0", - "inherits": "^2.0.1" - } - }, - "rtree-sql.js": { - "version": "1.7.0", - "peer": true - }, - "run-async": { - "version": "2.4.1", - "devOptional": true, - "peer": true - }, - "rxjs": { - "version": "6.6.7", - "devOptional": true, - "peer": true, - "requires": { - "tslib": "^1.9.0" - }, - "dependencies": { - "tslib": { - "version": "1.14.1", - "devOptional": true, - "peer": true - } - } - }, - "safe-buffer": { - "version": "5.2.1", - "peer": true - }, - "safe-json-stringify": { - "version": "1.2.0", - "optional": true, - "peer": true - }, - "safe-regex": { - "version": "1.1.0", - "dev": true, - "peer": true, - "requires": { - "ret": "~0.1.10" - }, - "dependencies": { - "ret": { - "version": "0.1.15", - "dev": true, - "peer": true - } - } - }, - "safe-regex-test": { - "version": "1.0.0", - "dev": true, - "peer": true, - "requires": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.1.3", - "is-regex": "^1.1.4" - } - }, - "safer-buffer": { - "version": "2.1.2", - "peer": true - }, - "saslprep": { - "version": "1.0.3", - "optional": true, - "peer": true, - "requires": { - "sparse-bitfield": "^3.0.3" - } - }, - "semver": { - "version": "6.3.0", - "dev": true, - "peer": true - }, - "send": { - "version": "0.17.2", - "peer": true, - "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.8.1", - "mime": "1.6.0", - "ms": "2.1.3", - "on-finished": "~2.3.0", - "range-parser": "~1.2.1", - "statuses": "~1.5.0" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "peer": true, - "requires": { - "ms": "2.0.0" - }, - "dependencies": { - "ms": { - "version": "2.0.0", - "peer": true - } - } - }, - "http-errors": { - "version": "1.8.1", - "peer": true, - "requires": { - "depd": "~1.1.2", - "inherits": "2.0.4", - "setprototypeof": "1.2.0", - "statuses": ">= 1.5.0 < 2", - "toidentifier": "1.0.1" - } - }, - "ms": { - "version": "2.1.3", - "peer": true - } - } - }, - "serve-static": { - "version": "1.14.2", - "peer": true, - "requires": { - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "parseurl": "~1.3.3", - "send": "0.17.2" - } - }, - "set-blocking": { - "version": "2.0.0", - "peer": true - }, - "set-value": { - "version": "2.0.1", - "dev": true, - "peer": true, - "requires": { - "extend-shallow": "^2.0.1", - "is-extendable": "^0.1.1", - "is-plain-object": "^2.0.3", - "split-string": "^3.0.1" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "dev": true, - "peer": true, - "requires": { - "is-extendable": "^0.1.0" - } - }, - "is-extendable": { - "version": "0.1.1", - "dev": true, - "peer": true - } - } - }, - "setimmediate": { - "version": "1.0.5", - "dev": true, - "peer": true - }, - "setprototypeof": { - "version": "1.2.0", - "peer": true - }, - "sha.js": { - "version": "2.4.11", - "peer": true, - "requires": { - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" - } - }, - "shebang-command": { - "version": "1.2.0", - "dev": true, - "peer": true, - "requires": { - "shebang-regex": "^1.0.0" - } - }, - "shebang-regex": { - "version": "1.0.0", - "dev": true, - "peer": true - }, - "shell-quote": { - "version": "1.7.4", - "dev": true, - "peer": true - }, - "side-channel": { - "version": "1.0.4", - "peer": true, - "requires": { - "call-bind": "^1.0.0", - "get-intrinsic": "^1.0.2", - "object-inspect": "^1.9.0" - } - }, - "sift": { - "version": "16.0.1", - "peer": true - }, - "signal-exit": { - "version": "3.0.7", - "peer": true - }, - "simple-concat": { - "version": "1.0.1", - "peer": true - }, - "simple-get": { - "version": "3.1.1", - "peer": true, - "requires": { - "decompress-response": "^4.2.0", - "once": "^1.3.1", - "simple-concat": "^1.0.0" - } - }, - "simplify-js": { - "version": "1.2.4", - "peer": true - }, - "sinon": { - "version": "7.5.0", - "dev": true, - "peer": true, - "requires": { - "@sinonjs/commons": "^1.4.0", - "@sinonjs/formatio": "^3.2.1", - "@sinonjs/samsam": "^3.3.3", - "diff": "^3.5.0", - "lolex": "^4.2.0", - "nise": "^1.5.2", - "supports-color": "^5.5.0" - }, - "dependencies": { - "has-flag": { - "version": "3.0.0", - "dev": true, - "peer": true - }, - "supports-color": { - "version": "5.5.0", - "dev": true, - "peer": true, - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "sinon-chai": { - "version": "3.3.0", - "dev": true, - "peer": true, - "requires": {} - }, - "sinon-mongoose": { - "version": "2.3.0", - "dev": true, - "peer": true, - "requires": {} - }, - "slash": { - "version": "2.0.0", - "dev": true, - "peer": true - }, - "slice-ansi": { - "version": "2.1.0", - "dev": true, - "peer": true, - "requires": { - "ansi-styles": "^3.2.0", - "astral-regex": "^1.0.0", - "is-fullwidth-code-point": "^2.0.0" - }, - "dependencies": { - "ansi-styles": { - "version": "3.2.1", - "dev": true, - "peer": true, - "requires": { - "color-convert": "^1.9.0" - } - }, - "color-convert": { - "version": "1.9.3", - "dev": true, - "peer": true, - "requires": { - "color-name": "1.1.3" - } - }, - "color-name": { - "version": "1.1.3", - "dev": true, - "peer": true - }, - "is-fullwidth-code-point": { - "version": "2.0.0", - "dev": true, - "peer": true - } - } - }, - "smart-buffer": { - "version": "4.2.0", - "peer": true - }, - "snapdragon": { - "version": "0.8.2", - "dev": true, - "peer": true, - "requires": { - "base": "^0.11.1", - "debug": "^2.2.0", - "define-property": "^0.2.5", - "extend-shallow": "^2.0.1", - "map-cache": "^0.2.2", - "source-map": "^0.5.6", - "source-map-resolve": "^0.5.0", - "use": "^3.1.0" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "dev": true, - "peer": true, - "requires": { - "ms": "2.0.0" - } - }, - "define-property": { - "version": "0.2.5", - "dev": true, - "peer": true, - "requires": { - "is-descriptor": "^0.1.0" - } - }, - "extend-shallow": { - "version": "2.0.1", - "dev": true, - "peer": true, - "requires": { - "is-extendable": "^0.1.0" - } - }, - "is-accessor-descriptor": { - "version": "0.1.6", - "dev": true, - "peer": true, - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "dev": true, - "peer": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "is-buffer": { - "version": "1.1.6", - "dev": true, - "peer": true - }, - "is-data-descriptor": { - "version": "0.1.4", - "dev": true, - "peer": true, - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "dev": true, - "peer": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "is-descriptor": { - "version": "0.1.6", - "dev": true, - "peer": true, - "requires": { - "is-accessor-descriptor": "^0.1.6", - "is-data-descriptor": "^0.1.4", - "kind-of": "^5.0.0" - } - }, - "is-extendable": { - "version": "0.1.1", - "dev": true, - "peer": true - }, - "kind-of": { - "version": "5.1.0", - "dev": true, - "peer": true - }, - "ms": { - "version": "2.0.0", - "dev": true, - "peer": true - }, - "source-map": { - "version": "0.5.7", - "dev": true, - "peer": true - } - } - }, - "snapdragon-node": { - "version": "2.1.1", - "dev": true, - "peer": true, - "requires": { - "define-property": "^1.0.0", - "isobject": "^3.0.0", - "snapdragon-util": "^3.0.1" - }, - "dependencies": { - "define-property": { - "version": "1.0.0", - "dev": true, - "peer": true, - "requires": { - "is-descriptor": "^1.0.0" - } - } - } - }, - "snapdragon-util": { - "version": "3.0.1", - "dev": true, - "peer": true, - "requires": { - "kind-of": "^3.2.0" - }, - "dependencies": { - "is-buffer": { - "version": "1.1.6", - "dev": true, - "peer": true - }, - "kind-of": { - "version": "3.2.2", - "dev": true, - "peer": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "socks": { - "version": "2.7.1", - "peer": true, - "requires": { - "ip": "^2.0.0", - "smart-buffer": "^4.2.0" - } - }, - "source-map": { - "version": "0.6.1", - "peer": true - }, - "source-map-resolve": { - "version": "0.5.3", - "dev": true, - "peer": true, - "requires": { - "atob": "^2.1.2", - "decode-uri-component": "^0.2.0", - "resolve-url": "^0.2.1", - "source-map-url": "^0.4.0", - "urix": "^0.1.0" - } - }, - "source-map-url": { - "version": "0.4.1", - "dev": true, - "peer": true - }, - "sparse-bitfield": { - "version": "3.0.3", - "optional": true, - "peer": true, - "requires": { - "memory-pager": "^1.0.2" - } - }, - "spawn-wrap": { - "version": "1.4.3", - "dev": true, - "peer": true, - "requires": { - "foreground-child": "^1.5.6", - "mkdirp": "^0.5.0", - "os-homedir": "^1.0.1", - "rimraf": "^2.6.2", - "signal-exit": "^3.0.2", - "which": "^1.3.0" - } - }, - "spdx-correct": { - "version": "3.1.1", - "dev": true, - "peer": true, - "requires": { - "spdx-expression-parse": "^3.0.0", - "spdx-license-ids": "^3.0.0" - } - }, - "spdx-exceptions": { - "version": "2.3.0", - "dev": true, - "peer": true - }, - "spdx-expression-parse": { - "version": "3.0.1", - "dev": true, - "peer": true, - "requires": { - "spdx-exceptions": "^2.1.0", - "spdx-license-ids": "^3.0.0" - } - }, - "spdx-license-ids": { - "version": "3.0.12", - "dev": true, - "peer": true - }, - "splaytree": { - "version": "3.1.1", - "peer": true - }, - "split": { - "version": "1.0.1", - "peer": true, - "requires": { - "through": "2" - } - }, - "split-string": { - "version": "3.1.0", - "dev": true, - "peer": true, - "requires": { - "extend-shallow": "^3.0.0" - } - }, - "sprintf-js": { - "version": "1.0.3", - "peer": true - }, - "sshpk": { - "version": "1.17.0", - "dev": true, - "peer": true, - "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-trace": { - "version": "0.0.10", - "peer": true - }, - "static-extend": { - "version": "0.1.2", - "dev": true, - "peer": true, - "requires": { - "define-property": "^0.2.5", - "object-copy": "^0.1.0" - }, - "dependencies": { - "define-property": { - "version": "0.2.5", - "dev": true, - "peer": true, - "requires": { - "is-descriptor": "^0.1.0" - } - }, - "is-accessor-descriptor": { - "version": "0.1.6", - "dev": true, - "peer": true, - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "dev": true, - "peer": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "is-buffer": { - "version": "1.1.6", - "dev": true, - "peer": true - }, - "is-data-descriptor": { - "version": "0.1.4", - "dev": true, - "peer": true, - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "dev": true, - "peer": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "is-descriptor": { - "version": "0.1.6", - "dev": true, - "peer": true, - "requires": { - "is-accessor-descriptor": "^0.1.6", - "is-data-descriptor": "^0.1.4", - "kind-of": "^5.0.0" - } - }, - "kind-of": { - "version": "5.1.0", - "dev": true, - "peer": true - } - } - }, - "statuses": { - "version": "1.5.0", - "peer": true - }, - "stream-combiner": { - "version": "0.2.2", - "peer": true, - "requires": { - "duplexer": "~0.1.1", - "through": "~2.3.4" - } - }, - "streamsearch": { - "version": "1.1.0", - "peer": true - }, - "string_decoder": { - "version": "1.3.0", - "peer": true, - "requires": { - "safe-buffer": "~5.2.0" - } - }, - "string-width": { - "version": "4.2.3", - "devOptional": true, - "peer": true, - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - }, - "dependencies": { - "ansi-regex": { - "version": "5.0.1", - "devOptional": true, - "peer": true - }, - "strip-ansi": { - "version": "6.0.1", - "devOptional": true, - "peer": true, - "requires": { - "ansi-regex": "^5.0.1" - } - } - } - }, - "string.prototype.padend": { - "version": "3.1.4", - "dev": true, - "peer": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4" - } - }, - "string.prototype.trimend": { - "version": "1.0.6", - "dev": true, - "peer": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4" - } - }, - "string.prototype.trimstart": { - "version": "1.0.6", - "dev": true, - "peer": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4" - } - }, - "strip-ansi": { - "version": "5.2.0", - "dev": true, - "peer": true, - "requires": { - "ansi-regex": "^4.1.0" - } - }, - "strip-bom": { - "version": "3.0.0", - "dev": true, - "peer": true - }, - "strip-indent": { - "version": "2.0.0", - "dev": true, - "peer": true - }, - "strip-json-comments": { - "version": "3.1.1", - "dev": true, - "peer": true - }, - "strnum": { - "version": "1.0.5", - "optional": true, - "peer": true - }, - "strtok3": { - "version": "6.3.0", - "peer": true, - "requires": { - "@tokenizer/token": "^0.3.0", - "peek-readable": "^4.1.0" - } - }, - "superagent": { - "version": "8.0.4", - "peer": true, - "requires": { - "component-emitter": "^1.3.0", - "cookiejar": "^2.1.3", - "debug": "^4.3.4", - "fast-safe-stringify": "^2.1.1", - "form-data": "^4.0.0", - "formidable": "^2.0.1", - "methods": "^1.1.2", - "mime": "2.6.0", - "qs": "^6.11.0", - "semver": "^7.3.8" - }, - "dependencies": { - "form-data": { - "version": "4.0.0", - "peer": true, - "requires": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.8", - "mime-types": "^2.1.12" - } - }, - "lru-cache": { - "version": "6.0.0", - "peer": true, - "requires": { - "yallist": "^4.0.0" - } - }, - "mime": { - "version": "2.6.0", - "peer": true - }, - "qs": { - "version": "6.11.0", - "peer": true, - "requires": { - "side-channel": "^1.0.4" - } - }, - "semver": { - "version": "7.3.8", - "peer": true, - "requires": { - "lru-cache": "^6.0.0" - } - }, - "yallist": { - "version": "4.0.0", - "peer": true - } - } - }, - "supertest": { - "version": "6.0.1", - "dev": true, - "peer": true, - "requires": { - "methods": "1.1.2", - "superagent": "6.1.0" - }, - "dependencies": { - "formidable": { - "version": "1.2.6", - "dev": true, - "peer": true - }, - "lru-cache": { - "version": "6.0.0", - "dev": true, - "peer": true, - "requires": { - "yallist": "^4.0.0" - } - }, - "mime": { - "version": "2.6.0", - "dev": true, - "peer": true - }, - "qs": { - "version": "6.11.0", - "dev": true, - "peer": true, - "requires": { - "side-channel": "^1.0.4" - } - }, - "semver": { - "version": "7.3.8", - "dev": true, - "peer": true, - "requires": { - "lru-cache": "^6.0.0" - } - }, - "superagent": { - "version": "6.1.0", - "dev": true, - "peer": true, - "requires": { - "component-emitter": "^1.3.0", - "cookiejar": "^2.1.2", - "debug": "^4.1.1", - "fast-safe-stringify": "^2.0.7", - "form-data": "^3.0.0", - "formidable": "^1.2.2", - "methods": "^1.1.2", - "mime": "^2.4.6", - "qs": "^6.9.4", - "readable-stream": "^3.6.0", - "semver": "^7.3.2" - } - }, - "yallist": { - "version": "4.0.0", - "dev": true, - "peer": true - } - } - }, - "supports-color": { - "version": "7.2.0", - "optional": true, - "peer": true, - "requires": { - "has-flag": "^4.0.0" - } - }, - "supports-preserve-symlinks-flag": { - "version": "1.0.0", - "peer": true - }, - "svg-captcha": { - "version": "1.4.0", - "peer": true, - "requires": { - "opentype.js": "^0.7.3" - } - }, - "table": { - "version": "5.4.6", - "dev": true, - "peer": true, - "requires": { - "ajv": "^6.10.2", - "lodash": "^4.17.14", - "slice-ansi": "^2.1.0", - "string-width": "^3.0.0" - }, - "dependencies": { - "emoji-regex": { - "version": "7.0.3", - "dev": true, - "peer": true - }, - "is-fullwidth-code-point": { - "version": "2.0.0", - "dev": true, - "peer": true - }, - "string-width": { - "version": "3.1.0", - "dev": true, - "peer": true, - "requires": { - "emoji-regex": "^7.0.1", - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^5.1.0" - } - } - } - }, - "tar": { - "version": "6.1.12", - "peer": true, - "requires": { - "chownr": "^2.0.0", - "fs-minipass": "^2.0.0", - "minipass": "^3.0.0", - "minizlib": "^2.1.1", - "mkdirp": "^1.0.3", - "yallist": "^4.0.0" - }, - "dependencies": { - "mkdirp": { - "version": "1.0.4", - "peer": true - }, - "yallist": { - "version": "4.0.0", - "peer": true - } - } - }, - "tar-fs": { - "version": "2.1.1", - "peer": true, - "requires": { - "chownr": "^1.1.1", - "mkdirp-classic": "^0.5.2", - "pump": "^3.0.0", - "tar-stream": "^2.1.4" - }, - "dependencies": { - "chownr": { - "version": "1.1.4", - "peer": true - } - } - }, - "tar-stream": { - "version": "2.2.0", - "peer": true, - "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" - } - }, - "test-exclude": { - "version": "5.2.3", - "dev": true, - "peer": true, - "requires": { - "glob": "^7.1.3", - "minimatch": "^3.0.4", - "read-pkg-up": "^4.0.0", - "require-main-filename": "^2.0.0" - }, - "dependencies": { - "read-pkg-up": { - "version": "4.0.0", - "dev": true, - "peer": true, - "requires": { - "find-up": "^3.0.0", - "read-pkg": "^3.0.0" - } - } - } - }, - "text-table": { - "version": "0.2.0", - "dev": true, - "peer": true - }, - "through": { - "version": "2.3.8", - "peer": true - }, - "tiny-inflate": { - "version": "1.0.3", - "peer": true - }, - "tmp": { - "version": "0.0.33", - "devOptional": true, - "peer": true, - "requires": { - "os-tmpdir": "~1.0.2" - } - }, - "to-fast-properties": { - "version": "2.0.0", - "dev": true, - "peer": true - }, - "to-object-path": { - "version": "0.3.0", - "dev": true, - "peer": true, - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "is-buffer": { - "version": "1.1.6", - "dev": true, - "peer": true - }, - "kind-of": { - "version": "3.2.2", - "dev": true, - "peer": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "to-regex": { - "version": "3.0.2", - "dev": true, - "peer": true, - "requires": { - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "regex-not": "^1.0.2", - "safe-regex": "^1.1.0" - } - }, - "to-regex-range": { - "version": "2.1.1", - "dev": true, - "peer": true, - "requires": { - "is-number": "^3.0.0", - "repeat-string": "^1.6.1" - } - }, - "toidentifier": { - "version": "1.0.1", - "peer": true - }, - "token-stream": { - "version": "0.0.1", - "peer": true - }, - "token-types": { - "version": "2.1.1", - "peer": true, - "requires": { - "@tokenizer/token": "^0.1.1", - "ieee754": "^1.2.1" - }, - "dependencies": { - "@tokenizer/token": { - "version": "0.1.1", - "peer": true - } - } - }, - "tough-cookie": { - "version": "2.5.0", - "dev": true, - "peer": true, - "requires": { - "psl": "^1.1.28", - "punycode": "^2.1.1" - } - }, - "tr46": { - "version": "3.0.0", - "peer": true, - "requires": { - "punycode": "^2.1.1" - } - }, - "trim-newlines": { - "version": "2.0.0", - "dev": true, - "peer": true - }, - "ts-mockito": { - "version": "2.6.1", - "dev": true, - "peer": true, - "requires": { - "lodash": "^4.17.5" - } - }, - "tslib": { - "version": "2.4.1", - "devOptional": true, - "peer": true - }, - "tsutils": { - "version": "3.21.0", - "dev": true, - "peer": true, - "requires": { - "tslib": "^1.8.1" - }, - "dependencies": { - "tslib": { - "version": "1.14.1", - "dev": true, - "peer": true - } - } - }, - "tunnel-agent": { - "version": "0.6.0", - "peer": true, - "requires": { - "safe-buffer": "^5.0.1" - } - }, - "tweetnacl": { - "version": "0.14.5", - "dev": true, - "peer": true - }, - "type-check": { - "version": "0.3.2", - "dev": true, - "peer": true, - "requires": { - "prelude-ls": "~1.1.2" - } - }, - "type-detect": { - "version": "4.0.8", - "dev": true, - "peer": true - }, - "type-fest": { - "version": "0.8.1", - "dev": true, - "peer": true - }, - "type-is": { - "version": "1.6.18", - "peer": true, - "requires": { - "media-typer": "0.3.0", - "mime-types": "~2.1.24" - } - }, - "typedarray": { - "version": "0.0.7", - "peer": true - }, - "typescript": { - "version": "4.9.3", - "dev": true, - "peer": true - }, - "uglify-js": { - "version": "2.8.29", - "peer": true, - "requires": { - "source-map": "~0.5.1", - "uglify-to-browserify": "~1.0.0", - "yargs": "~3.10.0" - }, - "dependencies": { - "camelcase": { - "version": "1.2.1", - "peer": true - }, - "cliui": { - "version": "2.1.0", - "peer": true, - "requires": { - "center-align": "^0.1.1", - "right-align": "^0.1.1", - "wordwrap": "0.0.2" - } - }, - "source-map": { - "version": "0.5.7", - "peer": true - }, - "yargs": { - "version": "3.10.0", - "peer": true, - "requires": { - "camelcase": "^1.0.2", - "cliui": "^2.1.0", - "decamelize": "^1.0.0", - "window-size": "0.1.0" - } - } - } - }, - "uglify-to-browserify": { - "version": "1.0.2", - "optional": true, - "peer": true - }, - "uid-safe": { - "version": "2.1.5", - "peer": true, - "requires": { - "random-bytes": "~1.0.0" - } - }, - "uid2": { - "version": "0.0.4", - "peer": true - }, - "unbox-primitive": { - "version": "1.0.2", - "dev": true, - "peer": true, - "requires": { - "call-bind": "^1.0.2", - "has-bigints": "^1.0.2", - "has-symbols": "^1.0.3", - "which-boxed-primitive": "^1.0.2" - } - }, - "underscore": { - "version": "1.8.3", - "peer": true - }, - "union-value": { - "version": "1.0.1", - "dev": true, - "peer": true, - "requires": { - "arr-union": "^3.1.0", - "get-value": "^2.0.6", - "is-extendable": "^0.1.1", - "set-value": "^2.0.1" - }, - "dependencies": { - "is-extendable": { - "version": "0.1.1", - "dev": true, - "peer": true - } - } - }, - "uniqid": { - "version": "5.4.0", - "peer": true - }, - "universalify": { - "version": "0.1.2", - "peer": true - }, - "unpipe": { - "version": "1.0.0", - "peer": true - }, - "unset-value": { - "version": "1.0.0", - "dev": true, - "peer": true, - "requires": { - "has-value": "^0.3.1", - "isobject": "^3.0.0" - }, - "dependencies": { - "has-value": { - "version": "0.3.1", - "dev": true, - "peer": true, - "requires": { - "get-value": "^2.0.3", - "has-values": "^0.1.4", - "isobject": "^2.0.0" - }, - "dependencies": { - "isobject": { - "version": "2.1.0", - "dev": true, - "peer": true, - "requires": { - "isarray": "1.0.0" - } - } - } - }, - "has-values": { - "version": "0.1.4", - "dev": true, - "peer": true - }, - "isarray": { - "version": "1.0.0", - "dev": true, - "peer": true - } - } - }, - "uri-js": { - "version": "4.4.1", - "dev": true, - "peer": true, - "requires": { - "punycode": "^2.1.0" - } - }, - "urix": { - "version": "0.1.0", - "dev": true, - "peer": true - }, - "use": { - "version": "3.1.1", - "dev": true, - "peer": true - }, - "util": { - "version": "0.12.5", - "dev": true, - "peer": true, - "requires": { - "inherits": "^2.0.3", - "is-arguments": "^1.0.4", - "is-generator-function": "^1.0.7", - "is-typed-array": "^1.1.3", - "which-typed-array": "^1.1.2" - } - }, - "util-deprecate": { - "version": "1.0.2", - "peer": true - }, - "utils-merge": { - "version": "1.0.1", - "peer": true - }, - "uuid": { - "version": "8.3.2", - "devOptional": true, - "peer": true - }, - "v8-compile-cache": { - "version": "2.3.0", - "dev": true, - "peer": true - }, - "validate-npm-package-license": { - "version": "3.0.4", - "dev": true, - "peer": true, - "requires": { - "spdx-correct": "^3.0.0", - "spdx-expression-parse": "^3.0.0" - } - }, - "vary": { - "version": "1.1.2", - "peer": true - }, - "vasync": { - "version": "1.6.4", - "peer": true, - "requires": { - "verror": "1.6.0" - }, - "dependencies": { - "extsprintf": { - "version": "1.2.0", - "peer": true - }, - "verror": { - "version": "1.6.0", - "peer": true, - "requires": { - "extsprintf": "1.2.0" - } - } - } - }, - "verror": { - "version": "1.10.1", - "peer": true, - "requires": { - "assert-plus": "^1.0.0", - "core-util-is": "1.0.2", - "extsprintf": "^1.2.0" - } - }, - "void-elements": { - "version": "2.0.1", - "peer": true - }, - "walk": { - "version": "2.3.4", - "peer": true, - "requires": { - "foreachasync": "3.x" - } - }, - "webidl-conversions": { - "version": "7.0.0", - "peer": true - }, - "webworkify": { - "version": "1.5.0", - "peer": true - }, - "whatwg-url": { - "version": "11.0.0", - "peer": true, - "requires": { - "tr46": "^3.0.0", - "webidl-conversions": "^7.0.0" - } - }, - "which": { - "version": "1.3.1", - "peer": true, - "requires": { - "isexe": "^2.0.0" - } - }, - "which-boxed-primitive": { - "version": "1.0.2", - "dev": true, - "peer": true, - "requires": { - "is-bigint": "^1.0.1", - "is-boolean-object": "^1.1.0", - "is-number-object": "^1.0.4", - "is-string": "^1.0.5", - "is-symbol": "^1.0.3" - } - }, - "which-collection": { - "version": "1.0.1", - "dev": true, - "peer": true, - "requires": { - "is-map": "^2.0.1", - "is-set": "^2.0.1", - "is-weakmap": "^2.0.1", - "is-weakset": "^2.0.1" - } - }, - "which-module": { - "version": "2.0.0", - "dev": true, - "peer": true - }, - "which-typed-array": { - "version": "1.1.9", - "dev": true, - "peer": true, - "requires": { - "available-typed-arrays": "^1.0.5", - "call-bind": "^1.0.2", - "for-each": "^0.3.3", - "gopd": "^1.0.1", - "has-tostringtag": "^1.0.0", - "is-typed-array": "^1.1.10" - } - }, - "wide-align": { - "version": "1.1.3", - "peer": true, - "requires": { - "string-width": "^1.0.2 || 2" - }, - "dependencies": { - "ansi-regex": { - "version": "3.0.1", - "peer": true - }, - "is-fullwidth-code-point": { - "version": "2.0.0", - "peer": true - }, - "string-width": { - "version": "2.1.1", - "peer": true, - "requires": { - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^4.0.0" - } - }, - "strip-ansi": { - "version": "4.0.0", - "peer": true, - "requires": { - "ansi-regex": "^3.0.0" - } - } - } - }, - "window-size": { - "version": "0.1.0", - "peer": true - }, - "winston": { - "version": "1.0.1", - "peer": true, - "requires": { - "async": "0.9.x", - "colors": "1.0.x", - "cycle": "1.0.x", - "eyes": "0.1.x", - "isstream": "0.1.x", - "pkginfo": "0.3.x", - "stack-trace": "0.0.x" - }, - "dependencies": { - "async": { - "version": "0.9.2", - "peer": true - } - } - }, - "with": { - "version": "5.1.1", - "peer": true, - "requires": { - "acorn": "^3.1.0", - "acorn-globals": "^3.0.0" - }, - "dependencies": { - "acorn": { - "version": "3.3.0", - "peer": true - } - } - }, - "wkt-parser": { - "version": "1.3.2", - "peer": true - }, - "wkx": { - "version": "0.4.8", - "peer": true, - "requires": { - "@types/node": "*" - } - }, - "wms-capabilities": { - "version": "0.4.1", - "peer": true, - "requires": { - "minimist": "^1.2.0" - } - }, - "word-wrap": { - "version": "1.2.3", - "dev": true, - "peer": true - }, - "wordwrap": { - "version": "0.0.2", - "peer": true - }, - "wrap-ansi": { - "version": "5.1.0", - "dev": true, - "peer": true, - "requires": { - "ansi-styles": "^3.2.0", - "string-width": "^3.0.0", - "strip-ansi": "^5.0.0" - }, - "dependencies": { - "ansi-styles": { - "version": "3.2.1", - "dev": true, - "peer": true, - "requires": { - "color-convert": "^1.9.0" - } - }, - "color-convert": { - "version": "1.9.3", - "dev": true, - "peer": true, - "requires": { - "color-name": "1.1.3" - } - }, - "color-name": { - "version": "1.1.3", - "dev": true, - "peer": true - }, - "emoji-regex": { - "version": "7.0.3", - "dev": true, - "peer": true - }, - "is-fullwidth-code-point": { - "version": "2.0.0", - "dev": true, - "peer": true - }, - "string-width": { - "version": "3.1.0", - "dev": true, - "peer": true, - "requires": { - "emoji-regex": "^7.0.1", - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^5.1.0" - } - } - } - }, - "wrappy": { - "version": "1.0.2", - "peer": true - }, - "write": { - "version": "1.0.3", - "dev": true, - "peer": true, - "requires": { - "mkdirp": "^0.5.1" - } - }, - "write-file-atomic": { - "version": "2.4.3", - "dev": true, - "peer": true, - "requires": { - "graceful-fs": "^4.1.11", - "imurmurhash": "^0.1.4", - "signal-exit": "^3.0.2" - } - }, - "wtfnode": { - "version": "0.8.4", - "dev": true, - "peer": true - }, - "xmlbuilder2": { - "version": "3.0.2", - "peer": true, - "requires": { - "@oozcitak/dom": "1.15.10", - "@oozcitak/infra": "1.0.8", - "@oozcitak/util": "8.3.8", - "@types/node": "*", - "js-yaml": "3.14.0" - }, - "dependencies": { - "esprima": { - "version": "4.0.1", - "peer": true - }, - "js-yaml": { - "version": "3.14.0", - "peer": true, - "requires": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" - } - } - } - }, - "xpath": { - "version": "0.0.23", - "peer": true - }, - "xtend": { - "version": "4.0.2", - "peer": true - }, - "y18n": { - "version": "4.0.3", - "dev": true, - "peer": true - }, - "yallist": { - "version": "3.1.1", - "peer": true - }, - "yaml": { - "version": "1.10.2", - "peer": true - }, - "yargs": { - "version": "13.3.2", - "dev": true, - "peer": true, - "requires": { - "cliui": "^5.0.0", - "find-up": "^3.0.0", - "get-caller-file": "^2.0.1", - "require-directory": "^2.1.1", - "require-main-filename": "^2.0.0", - "set-blocking": "^2.0.0", - "string-width": "^3.0.0", - "which-module": "^2.0.0", - "y18n": "^4.0.0", - "yargs-parser": "^13.1.2" - }, - "dependencies": { - "camelcase": { - "version": "5.3.1", - "dev": true, - "peer": true - }, - "emoji-regex": { - "version": "7.0.3", - "dev": true, - "peer": true - }, - "is-fullwidth-code-point": { - "version": "2.0.0", - "dev": true, - "peer": true - }, - "string-width": { - "version": "3.1.0", - "dev": true, - "peer": true, - "requires": { - "emoji-regex": "^7.0.1", - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^5.1.0" - } - }, - "yargs-parser": { - "version": "13.1.2", - "dev": true, - "peer": true, - "requires": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" - } - } - } - }, - "yargs-parser": { - "version": "10.1.0", - "dev": true, - "peer": true, - "requires": { - "camelcase": "^4.1.0" - } - }, - "yargs-unparser": { - "version": "1.6.0", - "dev": true, - "peer": true, - "requires": { - "flat": "^4.1.0", - "lodash": "^4.17.15", - "yargs": "^13.3.0" - } - }, - "yauzl": { - "version": "2.10.0", - "dev": true, - "peer": true, - "requires": { - "buffer-crc32": "~0.2.3", - "fd-slicer": "~1.1.0" - } - }, - "zip-stream": { - "version": "4.1.0", - "peer": true, - "requires": { - "archiver-utils": "^2.1.0", - "compress-commons": "^4.1.0", - "readable-stream": "^3.6.0" - } - } - } - }, - "@nodelib/fs.stat": { - "version": "1.1.3", - "dev": true - }, - "@sinonjs/commons": { - "version": "1.8.6", - "dev": true, - "requires": { - "type-detect": "4.0.8" - } - }, - "@sinonjs/fake-timers": { - "version": "6.0.1", - "dev": true, - "requires": { - "@sinonjs/commons": "^1.7.0" - } - }, - "@terraformer/arcgis": { - "version": "2.1.2", - "requires": { - "@terraformer/common": "^2.1.2" - } - }, - "@terraformer/common": { - "version": "2.1.2" - }, - "@tootallnate/once": { - "version": "1.1.2", - "dev": true - }, - "@types/babel__core": { - "version": "7.20.0", - "dev": true, - "requires": { - "@babel/parser": "^7.20.7", - "@babel/types": "^7.20.7", - "@types/babel__generator": "*", - "@types/babel__template": "*", - "@types/babel__traverse": "*" - } - }, - "@types/babel__generator": { - "version": "7.6.4", - "dev": true, - "requires": { - "@babel/types": "^7.0.0" - } - }, - "@types/babel__template": { - "version": "7.4.1", - "dev": true, - "requires": { - "@babel/parser": "^7.1.0", - "@babel/types": "^7.0.0" - } - }, - "@types/babel__traverse": { - "version": "7.18.3", - "dev": true, - "requires": { - "@babel/types": "^7.3.0" - } - }, - "@types/body-parser": { - "version": "1.19.2", - "dev": true, - "requires": { - "@types/connect": "*", - "@types/node": "*" - } - }, - "@types/connect": { - "version": "3.4.35", - "dev": true, - "requires": { - "@types/node": "*" - } - }, - "@types/express": { - "version": "4.17.21", - "resolved": "https://registry.npmjs.org/@types/express/-/express-4.17.21.tgz", - "integrity": "sha512-ejlPM315qwLpaQlQDTjPdsUFSc6ZsP4AN6AlWnogPjQ7CVi7PYF3YVz+CY3jE2pwYf7E/7HlDAN0rV2GxTG0HQ==", - "dev": true, - "requires": { - "@types/body-parser": "*", - "@types/express-serve-static-core": "^4.17.33", - "@types/qs": "*", - "@types/serve-static": "*" - } - }, - "@types/express-serve-static-core": { - "version": "4.17.33", - "dev": true, - "requires": { - "@types/node": "*", - "@types/qs": "*", - "@types/range-parser": "*" - } - }, - "@types/geojson": { - "version": "7946.0.10" - }, - "@types/glob": { - "version": "7.2.0", - "dev": true, - "requires": { - "@types/minimatch": "*", - "@types/node": "*" - } - }, - "@types/graceful-fs": { - "version": "4.1.6", - "dev": true, - "requires": { - "@types/node": "*" - } - }, - "@types/istanbul-lib-coverage": { - "version": "2.0.4", - "dev": true - }, - "@types/istanbul-lib-report": { - "version": "3.0.0", - "dev": true, - "requires": { - "@types/istanbul-lib-coverage": "*" - } - }, - "@types/istanbul-reports": { - "version": "3.0.1", - "dev": true, - "requires": { - "@types/istanbul-lib-report": "*" - } - }, - "@types/jest": { - "version": "26.0.24", - "dev": true, - "requires": { - "jest-diff": "^26.0.0", - "pretty-format": "^26.0.0" - } - }, - "@types/mime": { - "version": "3.0.1", - "dev": true - }, - "@types/minimatch": { - "version": "5.1.2", - "dev": true - }, - "@types/minimist": { - "version": "1.2.2", - "dev": true - }, - "@types/node": { - "version": "18.11.18", - "dev": true - }, - "@types/normalize-package-data": { - "version": "2.4.1", - "dev": true - }, - "@types/prettier": { - "version": "2.7.2", - "dev": true - }, - "@types/qs": { - "version": "6.9.7", - "dev": true - }, - "@types/range-parser": { - "version": "1.2.4", - "dev": true - }, - "@types/serve-static": { - "version": "1.15.0", - "dev": true, - "requires": { - "@types/mime": "*", - "@types/node": "*" - } - }, - "@types/stack-utils": { - "version": "2.0.1", - "dev": true - }, - "@types/yargs": { - "version": "15.0.15", - "dev": true, - "requires": { - "@types/yargs-parser": "*" - } - }, - "@types/yargs-parser": { - "version": "21.0.0", - "dev": true - }, - "abab": { - "version": "2.0.6", - "dev": true - }, - "accepts": { - "version": "1.3.8", - "peer": true, - "requires": { - "mime-types": "~2.1.34", - "negotiator": "0.6.3" - } - }, - "acorn": { - "version": "8.8.2", - "dev": true - }, - "acorn-globals": { - "version": "6.0.0", - "dev": true, - "requires": { - "acorn": "^7.1.1", - "acorn-walk": "^7.1.1" - }, - "dependencies": { - "acorn": { - "version": "7.4.1", - "dev": true - } - } - }, - "acorn-walk": { - "version": "7.2.0", - "dev": true - }, - "agent-base": { - "version": "6.0.2", - "dev": true, - "requires": { - "debug": "4" - }, - "dependencies": { - "debug": { - "version": "4.3.4", - "dev": true, - "requires": { - "ms": "2.1.2" - } - }, - "ms": { - "version": "2.1.2", - "dev": true - } - } - }, - "aggregate-error": { - "version": "3.1.0", - "dev": true, - "requires": { - "clean-stack": "^2.0.0", - "indent-string": "^4.0.0" - } - }, - "ansi-escapes": { - "version": "4.3.2", - "dev": true, - "requires": { - "type-fest": "^0.21.3" - } - }, - "ansi-regex": { - "version": "5.0.1", - "dev": true - }, - "ansi-styles": { - "version": "4.3.0", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "anymatch": { - "version": "3.1.3", - "dev": true, - "requires": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" - } - }, - "argparse": { - "version": "1.0.10", - "dev": true, - "requires": { - "sprintf-js": "~1.0.2" - } - }, - "arr-diff": { - "version": "4.0.0", - "dev": true - }, - "arr-flatten": { - "version": "1.1.0", - "dev": true - }, - "arr-union": { - "version": "3.1.0", - "dev": true - }, - "array-flatten": { - "version": "1.1.1", - "peer": true - }, - "array-union": { - "version": "1.0.2", - "dev": true, - "requires": { - "array-uniq": "^1.0.1" - } - }, - "array-uniq": { - "version": "1.0.3", - "dev": true - }, - "array-unique": { - "version": "0.3.2", - "dev": true - }, - "arrify": { - "version": "2.0.1", - "dev": true - }, - "assign-symbols": { - "version": "1.0.0", - "dev": true - }, - "asynckit": { - "version": "0.4.0" - }, - "atob": { - "version": "2.1.2", - "dev": true - }, - "available-typed-arrays": { - "version": "1.0.5", - "dev": true - }, - "babel-jest": { - "version": "26.6.3", - "dev": true, - "requires": { - "@jest/transform": "^26.6.2", - "@jest/types": "^26.6.2", - "@types/babel__core": "^7.1.7", - "babel-plugin-istanbul": "^6.0.0", - "babel-preset-jest": "^26.6.2", - "chalk": "^4.0.0", - "graceful-fs": "^4.2.4", - "slash": "^3.0.0" - }, - "dependencies": { - "slash": { - "version": "3.0.0", - "dev": true - } - } - }, - "babel-plugin-istanbul": { - "version": "6.1.1", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.0.0", - "@istanbuljs/load-nyc-config": "^1.0.0", - "@istanbuljs/schema": "^0.1.2", - "istanbul-lib-instrument": "^5.0.4", - "test-exclude": "^6.0.0" - }, - "dependencies": { - "istanbul-lib-instrument": { - "version": "5.2.1", - "dev": true, - "requires": { - "@babel/core": "^7.12.3", - "@babel/parser": "^7.14.7", - "@istanbuljs/schema": "^0.1.2", - "istanbul-lib-coverage": "^3.2.0", - "semver": "^6.3.0" - } - } - } - }, - "babel-plugin-jest-hoist": { - "version": "26.6.2", - "dev": true, - "requires": { - "@babel/template": "^7.3.3", - "@babel/types": "^7.3.3", - "@types/babel__core": "^7.0.0", - "@types/babel__traverse": "^7.0.6" - } - }, - "babel-preset-current-node-syntax": { - "version": "1.0.1", - "dev": true, - "requires": { - "@babel/plugin-syntax-async-generators": "^7.8.4", - "@babel/plugin-syntax-bigint": "^7.8.3", - "@babel/plugin-syntax-class-properties": "^7.8.3", - "@babel/plugin-syntax-import-meta": "^7.8.3", - "@babel/plugin-syntax-json-strings": "^7.8.3", - "@babel/plugin-syntax-logical-assignment-operators": "^7.8.3", - "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", - "@babel/plugin-syntax-numeric-separator": "^7.8.3", - "@babel/plugin-syntax-object-rest-spread": "^7.8.3", - "@babel/plugin-syntax-optional-catch-binding": "^7.8.3", - "@babel/plugin-syntax-optional-chaining": "^7.8.3", - "@babel/plugin-syntax-top-level-await": "^7.8.3" - } - }, - "babel-preset-jest": { - "version": "26.6.2", - "dev": true, - "requires": { - "babel-plugin-jest-hoist": "^26.6.2", - "babel-preset-current-node-syntax": "^1.0.0" - } - }, - "balanced-match": { - "version": "1.0.2", - "dev": true - }, - "base": { - "version": "0.11.2", - "dev": true, - "requires": { - "cache-base": "^1.0.1", - "class-utils": "^0.3.5", - "component-emitter": "^1.2.1", - "define-property": "^1.0.0", - "isobject": "^3.0.1", - "mixin-deep": "^1.2.0", - "pascalcase": "^0.1.1" - }, - "dependencies": { - "define-property": { - "version": "1.0.0", - "dev": true, - "requires": { - "is-descriptor": "^1.0.0" - } - } - } - }, - "body-parser": { - "version": "1.20.1", - "peer": true, - "requires": { - "bytes": "3.1.2", - "content-type": "~1.0.4", - "debug": "2.6.9", - "depd": "2.0.0", - "destroy": "1.2.0", - "http-errors": "2.0.0", - "iconv-lite": "0.4.24", - "on-finished": "2.4.1", - "qs": "6.11.0", - "raw-body": "2.5.1", - "type-is": "~1.6.18", - "unpipe": "1.0.0" - } - }, - "brace-expansion": { - "version": "1.1.11", - "dev": true, - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "braces": { - "version": "2.3.2", - "dev": true, - "requires": { - "arr-flatten": "^1.1.0", - "array-unique": "^0.3.2", - "extend-shallow": "^2.0.1", - "fill-range": "^4.0.0", - "isobject": "^3.0.1", - "repeat-element": "^1.1.2", - "snapdragon": "^0.8.1", - "snapdragon-node": "^2.0.1", - "split-string": "^3.0.2", - "to-regex": "^3.0.1" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - }, - "is-extendable": { - "version": "0.1.1", - "dev": true - } - } - }, - "browser-process-hrtime": { - "version": "1.0.0", - "dev": true - }, - "browserslist": { - "version": "4.21.5", - "dev": true, - "requires": { - "caniuse-lite": "^1.0.30001449", - "electron-to-chromium": "^1.4.284", - "node-releases": "^2.0.8", - "update-browserslist-db": "^1.0.10" - } - }, - "bs-logger": { - "version": "0.2.6", - "dev": true, - "requires": { - "fast-json-stable-stringify": "2.x" - } - }, - "bser": { - "version": "2.1.1", - "dev": true, - "requires": { - "node-int64": "^0.4.0" - } - }, - "buffer-from": { - "version": "1.1.2", - "dev": true - }, - "bytes": { - "version": "3.1.2", - "peer": true - }, - "cache-base": { - "version": "1.0.1", - "dev": true, - "requires": { - "collection-visit": "^1.0.0", - "component-emitter": "^1.2.1", - "get-value": "^2.0.6", - "has-value": "^1.0.0", - "isobject": "^3.0.1", - "set-value": "^2.0.0", - "to-object-path": "^0.3.0", - "union-value": "^1.0.0", - "unset-value": "^1.0.0" - } - }, - "call-bind": { - "version": "1.0.2", - "requires": { - "function-bind": "^1.1.1", - "get-intrinsic": "^1.0.2" - } - }, - "call-me-maybe": { - "version": "1.0.2", - "dev": true - }, - "callsites": { - "version": "3.1.0", - "dev": true - }, - "camelcase": { - "version": "5.3.1", - "dev": true - }, - "camelcase-keys": { - "version": "6.2.2", - "dev": true, - "requires": { - "camelcase": "^5.3.1", - "map-obj": "^4.0.0", - "quick-lru": "^4.0.1" - } - }, - "caniuse-lite": { - "version": "1.0.30001449", - "dev": true - }, - "capture-exit": { - "version": "2.0.0", - "dev": true, - "requires": { - "rsvp": "^4.8.4" - } - }, - "chalk": { - "version": "4.1.2", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "char-regex": { - "version": "1.0.2", - "dev": true - }, - "ci-info": { - "version": "2.0.0", - "dev": true - }, - "cjs-module-lexer": { - "version": "0.6.0", - "dev": true - }, - "class-utils": { - "version": "0.3.6", - "dev": true, - "requires": { - "arr-union": "^3.1.0", - "define-property": "^0.2.5", - "isobject": "^3.0.0", - "static-extend": "^0.1.1" - }, - "dependencies": { - "define-property": { - "version": "0.2.5", - "dev": true, - "requires": { - "is-descriptor": "^0.1.0" - } - }, - "is-accessor-descriptor": { - "version": "0.1.6", - "dev": true, - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "is-data-descriptor": { - "version": "0.1.4", - "dev": true, - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "is-descriptor": { - "version": "0.1.6", - "dev": true, - "requires": { - "is-accessor-descriptor": "^0.1.6", - "is-data-descriptor": "^0.1.4", - "kind-of": "^5.0.0" - } - }, - "kind-of": { - "version": "5.1.0", - "dev": true - } - } - }, - "clean-stack": { - "version": "2.2.0", - "dev": true - }, - "cliui": { - "version": "6.0.0", - "dev": true, - "requires": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", - "wrap-ansi": "^6.2.0" - } - }, - "co": { - "version": "4.6.0", - "dev": true - }, - "collect-v8-coverage": { - "version": "1.0.1", - "dev": true - }, - "collection-visit": { - "version": "1.0.0", - "dev": true, - "requires": { - "map-visit": "^1.0.0", - "object-visit": "^1.0.0" - } - }, - "color-convert": { - "version": "2.0.1", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "dev": true - }, - "combined-stream": { - "version": "1.0.8", - "requires": { - "delayed-stream": "~1.0.0" - } - }, - "component-emitter": { - "version": "1.3.0", - "dev": true - }, - "concat-map": { - "version": "0.0.1", - "dev": true - }, - "content-disposition": { - "version": "0.5.4", - "peer": true, - "requires": { - "safe-buffer": "5.2.1" - } - }, - "content-type": { - "version": "1.0.4", - "peer": true - }, - "convert-source-map": { - "version": "1.9.0", - "dev": true - }, - "cookie": { - "version": "0.5.0", - "peer": true - }, - "cookie-signature": { - "version": "1.0.6", - "peer": true - }, - "copy-descriptor": { - "version": "0.1.1", - "dev": true - }, - "cp-file": { - "version": "7.0.0", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "make-dir": "^3.0.0", - "nested-error-stacks": "^2.0.0", - "p-event": "^4.1.0" - } - }, - "cpy": { - "version": "8.1.2", - "dev": true, - "requires": { - "arrify": "^2.0.1", - "cp-file": "^7.0.0", - "globby": "^9.2.0", - "has-glob": "^1.0.0", - "junk": "^3.1.0", - "nested-error-stacks": "^2.1.0", - "p-all": "^2.1.0", - "p-filter": "^2.1.0", - "p-map": "^3.0.0" - } - }, - "cpy-cli": { - "version": "3.1.1", - "dev": true, - "requires": { - "cpy": "^8.0.0", - "meow": "^6.1.1" - } - }, - "cross-spawn": { - "version": "7.0.3", - "dev": true, - "requires": { - "path-key": "^3.1.0", - "shebang-command": "^2.0.0", - "which": "^2.0.1" - } - }, - "cssom": { - "version": "0.4.4", - "dev": true - }, - "cssstyle": { - "version": "2.3.0", - "dev": true, - "requires": { - "cssom": "~0.3.6" - }, - "dependencies": { - "cssom": { - "version": "0.3.8", - "dev": true - } - } - }, - "data-urls": { - "version": "2.0.0", - "dev": true, - "requires": { - "abab": "^2.0.3", - "whatwg-mimetype": "^2.3.0", - "whatwg-url": "^8.0.0" - } - }, - "debug": { - "version": "2.6.9", - "requires": { - "ms": "2.0.0" - } - }, - "decamelize": { - "version": "1.2.0", - "dev": true - }, - "decamelize-keys": { - "version": "1.1.1", - "dev": true, - "requires": { - "decamelize": "^1.1.0", - "map-obj": "^1.0.0" - }, - "dependencies": { - "map-obj": { - "version": "1.0.1", - "dev": true - } - } - }, - "decimal.js": { - "version": "10.4.3", - "dev": true - }, - "decode-uri-component": { - "version": "0.2.2", - "dev": true - }, - "deep-is": { - "version": "0.1.4", - "dev": true - }, - "deepmerge": { - "version": "4.3.0", - "dev": true - }, - "define-properties": { - "version": "1.1.4", - "dev": true, - "requires": { - "has-property-descriptors": "^1.0.0", - "object-keys": "^1.1.1" - } - }, - "define-property": { - "version": "2.0.2", - "dev": true, - "requires": { - "is-descriptor": "^1.0.2", - "isobject": "^3.0.1" - } - }, - "delayed-stream": { - "version": "1.0.0" - }, - "depd": { - "version": "2.0.0", - "peer": true - }, - "destroy": { - "version": "1.2.0", - "peer": true - }, - "detect-newline": { - "version": "3.1.0", - "dev": true - }, - "diff-sequences": { - "version": "26.6.2", - "dev": true - }, - "dir-glob": { - "version": "2.2.2", - "dev": true, - "requires": { - "path-type": "^3.0.0" - } - }, - "domexception": { - "version": "2.0.1", - "dev": true, - "requires": { - "webidl-conversions": "^5.0.0" - }, - "dependencies": { - "webidl-conversions": { - "version": "5.0.0", - "dev": true - } - } - }, - "ee-first": { - "version": "1.1.1", - "peer": true - }, - "electron-to-chromium": { - "version": "1.4.284", - "dev": true - }, - "emittery": { - "version": "0.7.2", - "dev": true - }, - "emoji-regex": { - "version": "8.0.0", - "dev": true - }, - "encodeurl": { - "version": "1.0.2", - "peer": true - }, - "end-of-stream": { - "version": "1.4.4", - "dev": true, - "requires": { - "once": "^1.4.0" - } - }, - "error-ex": { - "version": "1.3.2", - "dev": true, - "requires": { - "is-arrayish": "^0.2.1" - } - }, - "es-abstract": { - "version": "1.21.1", - "dev": true, - "requires": { - "available-typed-arrays": "^1.0.5", - "call-bind": "^1.0.2", - "es-set-tostringtag": "^2.0.1", - "es-to-primitive": "^1.2.1", - "function-bind": "^1.1.1", - "function.prototype.name": "^1.1.5", - "get-intrinsic": "^1.1.3", - "get-symbol-description": "^1.0.0", - "globalthis": "^1.0.3", - "gopd": "^1.0.1", - "has": "^1.0.3", - "has-property-descriptors": "^1.0.0", - "has-proto": "^1.0.1", - "has-symbols": "^1.0.3", - "internal-slot": "^1.0.4", - "is-array-buffer": "^3.0.1", - "is-callable": "^1.2.7", - "is-negative-zero": "^2.0.2", - "is-regex": "^1.1.4", - "is-shared-array-buffer": "^1.0.2", - "is-string": "^1.0.7", - "is-typed-array": "^1.1.10", - "is-weakref": "^1.0.2", - "object-inspect": "^1.12.2", - "object-keys": "^1.1.1", - "object.assign": "^4.1.4", - "regexp.prototype.flags": "^1.4.3", - "safe-regex-test": "^1.0.0", - "string.prototype.trimend": "^1.0.6", - "string.prototype.trimstart": "^1.0.6", - "typed-array-length": "^1.0.4", - "unbox-primitive": "^1.0.2", - "which-typed-array": "^1.1.9" - } - }, - "es-set-tostringtag": { - "version": "2.0.1", - "dev": true, - "requires": { - "get-intrinsic": "^1.1.3", - "has": "^1.0.3", - "has-tostringtag": "^1.0.0" - } - }, - "es-to-primitive": { - "version": "1.2.1", - "dev": true, - "requires": { - "is-callable": "^1.1.4", - "is-date-object": "^1.0.1", - "is-symbol": "^1.0.2" - } - }, - "escalade": { - "version": "3.1.1", - "dev": true - }, - "escape-html": { - "version": "1.0.3", - "peer": true - }, - "escape-string-regexp": { - "version": "2.0.0", - "dev": true - }, - "escodegen": { - "version": "2.0.0", - "dev": true, - "requires": { - "esprima": "^4.0.1", - "estraverse": "^5.2.0", - "esutils": "^2.0.2", - "optionator": "^0.8.1", - "source-map": "~0.6.1" - } - }, - "esprima": { - "version": "4.0.1", - "dev": true - }, - "estraverse": { - "version": "5.3.0", - "dev": true - }, - "esutils": { - "version": "2.0.3", - "dev": true - }, - "etag": { - "version": "1.8.1", - "peer": true - }, - "exec-sh": { - "version": "0.3.6", - "dev": true - }, - "execa": { - "version": "4.1.0", - "dev": true, - "requires": { - "cross-spawn": "^7.0.0", - "get-stream": "^5.0.0", - "human-signals": "^1.1.1", - "is-stream": "^2.0.0", - "merge-stream": "^2.0.0", - "npm-run-path": "^4.0.0", - "onetime": "^5.1.0", - "signal-exit": "^3.0.2", - "strip-final-newline": "^2.0.0" - } - }, - "exit": { - "version": "0.1.2", - "dev": true - }, - "expand-brackets": { - "version": "2.1.4", - "dev": true, - "requires": { - "debug": "^2.3.3", - "define-property": "^0.2.5", - "extend-shallow": "^2.0.1", - "posix-character-classes": "^0.1.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.1" - }, - "dependencies": { - "define-property": { - "version": "0.2.5", - "dev": true, - "requires": { - "is-descriptor": "^0.1.0" - } - }, - "extend-shallow": { - "version": "2.0.1", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - }, - "is-accessor-descriptor": { - "version": "0.1.6", - "dev": true, - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "is-data-descriptor": { - "version": "0.1.4", - "dev": true, - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "is-descriptor": { - "version": "0.1.6", - "dev": true, - "requires": { - "is-accessor-descriptor": "^0.1.6", - "is-data-descriptor": "^0.1.4", - "kind-of": "^5.0.0" - } - }, - "is-extendable": { - "version": "0.1.1", - "dev": true - }, - "kind-of": { - "version": "5.1.0", - "dev": true - } - } - }, - "expect": { - "version": "26.6.2", - "dev": true, - "requires": { - "@jest/types": "^26.6.2", - "ansi-styles": "^4.0.0", - "jest-get-type": "^26.3.0", - "jest-matcher-utils": "^26.6.2", - "jest-message-util": "^26.6.2", - "jest-regex-util": "^26.0.0" - } - }, - "express": { - "version": "4.18.2", - "peer": true, - "requires": { - "accepts": "~1.3.8", - "array-flatten": "1.1.1", - "body-parser": "1.20.1", - "content-disposition": "0.5.4", - "content-type": "~1.0.4", - "cookie": "0.5.0", - "cookie-signature": "1.0.6", - "debug": "2.6.9", - "depd": "2.0.0", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "etag": "~1.8.1", - "finalhandler": "1.2.0", - "fresh": "0.5.2", - "http-errors": "2.0.0", - "merge-descriptors": "1.0.1", - "methods": "~1.1.2", - "on-finished": "2.4.1", - "parseurl": "~1.3.3", - "path-to-regexp": "0.1.7", - "proxy-addr": "~2.0.7", - "qs": "6.11.0", - "range-parser": "~1.2.1", - "safe-buffer": "5.2.1", - "send": "0.18.0", - "serve-static": "1.15.0", - "setprototypeof": "1.2.0", - "statuses": "2.0.1", - "type-is": "~1.6.18", - "utils-merge": "1.0.1", - "vary": "~1.1.2" - } - }, - "extend-shallow": { - "version": "3.0.2", - "dev": true, - "requires": { - "assign-symbols": "^1.0.0", - "is-extendable": "^1.0.1" - } - }, - "extglob": { - "version": "2.0.4", - "dev": true, - "requires": { - "array-unique": "^0.3.2", - "define-property": "^1.0.0", - "expand-brackets": "^2.1.4", - "extend-shallow": "^2.0.1", - "fragment-cache": "^0.2.1", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.1" - }, - "dependencies": { - "define-property": { - "version": "1.0.0", - "dev": true, - "requires": { - "is-descriptor": "^1.0.0" - } - }, - "extend-shallow": { - "version": "2.0.1", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - }, - "is-extendable": { - "version": "0.1.1", - "dev": true - } - } - }, - "fast-glob": { - "version": "2.2.7", - "dev": true, - "requires": { - "@mrmlnc/readdir-enhanced": "^2.2.1", - "@nodelib/fs.stat": "^1.1.2", - "glob-parent": "^3.1.0", - "is-glob": "^4.0.0", - "merge2": "^1.2.3", - "micromatch": "^3.1.10" - } - }, - "fast-json-stable-stringify": { - "version": "2.1.0", - "dev": true - }, - "fast-levenshtein": { - "version": "2.0.6", - "dev": true - }, - "fb-watchman": { - "version": "2.0.2", - "dev": true, - "requires": { - "bser": "2.1.1" - } - }, - "fill-range": { - "version": "4.0.0", - "dev": true, - "requires": { - "extend-shallow": "^2.0.1", - "is-number": "^3.0.0", - "repeat-string": "^1.6.1", - "to-regex-range": "^2.1.0" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - }, - "is-extendable": { - "version": "0.1.1", - "dev": true - } - } - }, - "finalhandler": { - "version": "1.2.0", - "peer": true, - "requires": { - "debug": "2.6.9", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "on-finished": "2.4.1", - "parseurl": "~1.3.3", - "statuses": "2.0.1", - "unpipe": "~1.0.0" - } - }, - "find-up": { - "version": "4.1.0", - "dev": true, - "requires": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - } - }, - "for-each": { - "version": "0.3.3", - "dev": true, - "requires": { - "is-callable": "^1.1.3" - } - }, - "for-in": { - "version": "1.0.2", - "dev": true - }, - "form-data": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz", - "integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==", - "requires": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.8", - "mime-types": "^2.1.12" - } - }, - "forwarded": { - "version": "0.2.0", - "peer": true - }, - "fragment-cache": { - "version": "0.2.1", - "dev": true, - "requires": { - "map-cache": "^0.2.2" - } - }, - "fresh": { - "version": "0.5.2", - "peer": true - }, - "fs.realpath": { - "version": "1.0.0", - "dev": true - }, - "fsevents": { - "version": "2.3.2", - "dev": true, - "optional": true - }, - "function-bind": { - "version": "1.1.1" - }, - "function.prototype.name": { - "version": "1.1.5", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3", - "es-abstract": "^1.19.0", - "functions-have-names": "^1.2.2" - } - }, - "functions-have-names": { - "version": "1.2.3", - "dev": true - }, - "gensync": { - "version": "1.0.0-beta.2", - "dev": true - }, - "get-caller-file": { - "version": "2.0.5", - "dev": true - }, - "get-intrinsic": { - "version": "1.2.0", - "requires": { - "function-bind": "^1.1.1", - "has": "^1.0.3", - "has-symbols": "^1.0.3" - } - }, - "get-package-type": { - "version": "0.1.0", - "dev": true - }, - "get-stream": { - "version": "5.2.0", - "dev": true, - "requires": { - "pump": "^3.0.0" - } - }, - "get-symbol-description": { - "version": "1.0.0", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.1.1" - } - }, - "get-value": { - "version": "2.0.6", - "dev": true - }, - "glob": { - "version": "7.2.3", - "dev": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "glob-parent": { - "version": "3.1.0", - "dev": true, - "requires": { - "is-glob": "^3.1.0", - "path-dirname": "^1.0.0" - }, - "dependencies": { - "is-glob": { - "version": "3.1.0", - "dev": true, - "requires": { - "is-extglob": "^2.1.0" - } - } - } - }, - "glob-to-regexp": { - "version": "0.3.0", - "dev": true - }, - "globals": { - "version": "11.12.0", - "dev": true - }, - "globalthis": { - "version": "1.0.3", - "dev": true, - "requires": { - "define-properties": "^1.1.3" - } - }, - "globby": { - "version": "9.2.0", - "dev": true, - "requires": { - "@types/glob": "^7.1.1", - "array-union": "^1.0.2", - "dir-glob": "^2.2.2", - "fast-glob": "^2.2.6", - "glob": "^7.1.3", - "ignore": "^4.0.3", - "pify": "^4.0.1", - "slash": "^2.0.0" - } - }, - "gopd": { - "version": "1.0.1", - "dev": true, - "requires": { - "get-intrinsic": "^1.1.3" - } - }, - "graceful-fs": { - "version": "4.2.10", - "dev": true - }, - "growly": { - "version": "1.3.0", - "dev": true, - "optional": true - }, - "hard-rejection": { - "version": "2.1.0", - "dev": true - }, - "has": { - "version": "1.0.3", - "requires": { - "function-bind": "^1.1.1" - } - }, - "has-bigints": { - "version": "1.0.2", - "dev": true - }, - "has-flag": { - "version": "4.0.0", - "dev": true - }, - "has-glob": { - "version": "1.0.0", - "dev": true, - "requires": { - "is-glob": "^3.0.0" - }, - "dependencies": { - "is-glob": { - "version": "3.1.0", - "dev": true, - "requires": { - "is-extglob": "^2.1.0" - } - } - } - }, - "has-property-descriptors": { - "version": "1.0.0", - "dev": true, - "requires": { - "get-intrinsic": "^1.1.1" - } - }, - "has-proto": { - "version": "1.0.1", - "dev": true - }, - "has-symbols": { - "version": "1.0.3" - }, - "has-tostringtag": { - "version": "1.0.0", - "dev": true, - "requires": { - "has-symbols": "^1.0.2" - } - }, - "has-value": { - "version": "1.0.0", - "dev": true, - "requires": { - "get-value": "^2.0.6", - "has-values": "^1.0.0", - "isobject": "^3.0.0" - } - }, - "has-values": { - "version": "1.0.0", - "dev": true, - "requires": { - "is-number": "^3.0.0", - "kind-of": "^4.0.0" - }, - "dependencies": { - "kind-of": { - "version": "4.0.0", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "hosted-git-info": { - "version": "2.8.9", - "dev": true - }, - "html-encoding-sniffer": { - "version": "2.0.1", - "dev": true, - "requires": { - "whatwg-encoding": "^1.0.5" - } - }, - "html-escaper": { - "version": "2.0.2", - "dev": true - }, - "http-errors": { - "version": "2.0.0", - "peer": true, - "requires": { - "depd": "2.0.0", - "inherits": "2.0.4", - "setprototypeof": "1.2.0", - "statuses": "2.0.1", - "toidentifier": "1.0.1" - } - }, - "http-proxy-agent": { - "version": "4.0.1", - "dev": true, - "requires": { - "@tootallnate/once": "1", - "agent-base": "6", - "debug": "4" - }, - "dependencies": { - "debug": { - "version": "4.3.4", - "dev": true, - "requires": { - "ms": "2.1.2" - } - }, - "ms": { - "version": "2.1.2", - "dev": true - } - } - }, - "https-proxy-agent": { - "version": "5.0.1", - "dev": true, - "requires": { - "agent-base": "6", - "debug": "4" - }, - "dependencies": { - "debug": { - "version": "4.3.4", - "dev": true, - "requires": { - "ms": "2.1.2" - } - }, - "ms": { - "version": "2.1.2", - "dev": true - } - } - }, - "human-signals": { - "version": "1.1.1", - "dev": true - }, - "iconv-lite": { - "version": "0.4.24", - "requires": { - "safer-buffer": ">= 2.1.2 < 3" - } - }, - "ignore": { - "version": "4.0.6", - "dev": true - }, - "import-local": { - "version": "3.1.0", - "dev": true, - "requires": { - "pkg-dir": "^4.2.0", - "resolve-cwd": "^3.0.0" - } - }, - "imurmurhash": { - "version": "0.1.4", - "dev": true - }, - "indent-string": { - "version": "4.0.0", - "dev": true - }, - "inflight": { - "version": "1.0.6", - "dev": true, - "requires": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "inherits": { - "version": "2.0.4" - }, - "internal-slot": { - "version": "1.0.4", - "dev": true, - "requires": { - "get-intrinsic": "^1.1.3", - "has": "^1.0.3", - "side-channel": "^1.0.4" - } - }, - "ipaddr.js": { - "version": "1.9.1", - "peer": true - }, - "is-accessor-descriptor": { - "version": "1.0.0", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-array-buffer": { - "version": "3.0.1", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.1.3", - "is-typed-array": "^1.1.10" - } - }, - "is-arrayish": { - "version": "0.2.1", - "dev": true - }, - "is-bigint": { - "version": "1.0.4", - "dev": true, - "requires": { - "has-bigints": "^1.0.1" - } - }, - "is-boolean-object": { - "version": "1.1.2", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" - } - }, - "is-buffer": { - "version": "1.1.6", - "dev": true - }, - "is-callable": { - "version": "1.2.7", - "dev": true - }, - "is-ci": { - "version": "2.0.0", - "dev": true, - "requires": { - "ci-info": "^2.0.0" - } - }, - "is-core-module": { - "version": "2.11.0", - "dev": true, - "requires": { - "has": "^1.0.3" - } - }, - "is-data-descriptor": { - "version": "1.0.0", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-date-object": { - "version": "1.0.5", - "dev": true, - "requires": { - "has-tostringtag": "^1.0.0" - } - }, - "is-descriptor": { - "version": "1.0.2", - "dev": true, - "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - } - }, - "is-docker": { - "version": "2.2.1", - "dev": true, - "optional": true - }, - "is-extendable": { - "version": "1.0.1", - "dev": true, - "requires": { - "is-plain-object": "^2.0.4" - } - }, - "is-extglob": { - "version": "2.1.1", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "3.0.0", - "dev": true - }, - "is-generator-fn": { - "version": "2.1.0", - "dev": true - }, - "is-glob": { - "version": "4.0.3", - "dev": true, - "requires": { - "is-extglob": "^2.1.1" - } - }, - "is-negative-zero": { - "version": "2.0.2", - "dev": true - }, - "is-number": { - "version": "3.0.0", + "node_modules/import-local": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/import-local/-/import-local-3.2.0.tgz", + "integrity": "sha512-2SPlun1JUPWoM6t3F0dw0FkCF/jWY8kttcY4f599GLTSjh2OCuuhdTkJQsEcZzBqbXZGKMK2OqW1oZsjtf/gQA==", "dev": true, - "requires": { - "kind-of": "^3.0.2" - }, "dependencies": { - "kind-of": { - "version": "3.2.2", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } + "pkg-dir": "^4.2.0", + "resolve-cwd": "^3.0.0" + }, + "bin": { + "import-local-fixture": "fixtures/cli.js" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "is-number-object": { - "version": "1.0.7", + "node_modules/imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", "dev": true, - "requires": { - "has-tostringtag": "^1.0.0" + "engines": { + "node": ">=0.8.19" } }, - "is-plain-obj": { - "version": "1.1.0", - "dev": true + "node_modules/inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "deprecated": "This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.", + "dev": true, + "dependencies": { + "once": "^1.3.0", + "wrappy": "1" + } }, - "is-plain-object": { + "node_modules/inherits": { "version": "2.0.4", - "dev": true, - "requires": { - "isobject": "^3.0.1" + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" + }, + "node_modules/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==", + "peer": true, + "engines": { + "node": ">= 0.10" } }, - "is-potential-custom-element-name": { - "version": "1.0.1", + "node_modules/is-arrayish": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==", "dev": true }, - "is-regex": { - "version": "1.1.4", + "node_modules/is-core-module": { + "version": "2.16.1", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.16.1.tgz", + "integrity": "sha512-UfoeMA6fIJ8wTYFEUjelnaGI67v6+N7qXJEvQuIGa99l4xsCruSYOVSQ0uPANn4dAzm8lkYPaKLrrijLq7x23w==", "dev": true, - "requires": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" + "dependencies": { + "hasown": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "is-shared-array-buffer": { - "version": "1.0.2", + "node_modules/is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", "dev": true, - "requires": { - "call-bind": "^1.0.2" + "engines": { + "node": ">=0.10.0" } }, - "is-stream": { - "version": "2.0.1", - "dev": true - }, - "is-string": { - "version": "1.0.7", + "node_modules/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, - "requires": { - "has-tostringtag": "^1.0.0" + "engines": { + "node": ">=8" } }, - "is-symbol": { - "version": "1.0.4", + "node_modules/is-generator-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-generator-fn/-/is-generator-fn-2.1.0.tgz", + "integrity": "sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ==", "dev": true, - "requires": { - "has-symbols": "^1.0.2" + "engines": { + "node": ">=6" } }, - "is-typed-array": { - "version": "1.1.10", + "node_modules/is-glob": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", "dev": true, - "requires": { - "available-typed-arrays": "^1.0.5", - "call-bind": "^1.0.2", - "for-each": "^0.3.3", - "gopd": "^1.0.1", - "has-tostringtag": "^1.0.0" + "dependencies": { + "is-extglob": "^2.1.1" + }, + "engines": { + "node": ">=0.10.0" } }, - "is-typedarray": { - "version": "1.0.0", - "dev": true - }, - "is-weakref": { - "version": "1.0.2", + "node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", "dev": true, - "requires": { - "call-bind": "^1.0.2" + "engines": { + "node": ">=0.12.0" } }, - "is-windows": { - "version": "1.0.2", - "dev": true - }, - "is-wsl": { - "version": "2.2.0", + "node_modules/is-stream": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", + "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", "dev": true, - "optional": true, - "requires": { - "is-docker": "^2.0.0" + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "isarray": { - "version": "1.0.0", - "dev": true - }, - "isexe": { + "node_modules/isexe": { "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", "dev": true }, - "isobject": { - "version": "3.0.1", - "dev": true - }, - "istanbul-lib-coverage": { - "version": "3.2.0", - "dev": true + "node_modules/istanbul-lib-coverage": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.2.tgz", + "integrity": "sha512-O8dpsF+r0WV/8MNRKfnmrtCWhuKjxrq2w+jpzBL5UZKTi2LeVWnWOmWRxFlesJONmc+wLAGvKQZEOanko0LFTg==", + "dev": true, + "engines": { + "node": ">=8" + } }, - "istanbul-lib-instrument": { - "version": "4.0.3", + "node_modules/istanbul-lib-instrument": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-6.0.3.tgz", + "integrity": "sha512-Vtgk7L/R2JHyyGW07spoFlB8/lpjiOLTjMdms6AFMraYt3BaJauod/NGrfnVG/y4Ix1JEuMRPDPEj2ua+zz1/Q==", "dev": true, - "requires": { - "@babel/core": "^7.7.5", - "@istanbuljs/schema": "^0.1.2", - "istanbul-lib-coverage": "^3.0.0", - "semver": "^6.3.0" + "dependencies": { + "@babel/core": "^7.23.9", + "@babel/parser": "^7.23.9", + "@istanbuljs/schema": "^0.1.3", + "istanbul-lib-coverage": "^3.2.0", + "semver": "^7.5.4" + }, + "engines": { + "node": ">=10" } }, - "istanbul-lib-report": { - "version": "3.0.0", + "node_modules/istanbul-lib-report": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.1.tgz", + "integrity": "sha512-GCfE1mtsHGOELCU8e/Z7YWzpmybrx/+dSTfLrvY8qRmaY6zXTKWn6WQIjaAFw069icm6GVMNkgu0NzI4iPZUNw==", "dev": true, - "requires": { + "dependencies": { "istanbul-lib-coverage": "^3.0.0", - "make-dir": "^3.0.0", + "make-dir": "^4.0.0", "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" } }, - "istanbul-lib-source-maps": { + "node_modules/istanbul-lib-source-maps": { "version": "4.0.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz", + "integrity": "sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==", "dev": true, - "requires": { + "dependencies": { "debug": "^4.1.1", "istanbul-lib-coverage": "^3.0.0", "source-map": "^0.6.1" }, - "dependencies": { - "debug": { - "version": "4.3.4", - "dev": true, - "requires": { - "ms": "2.1.2" - } - }, - "ms": { - "version": "2.1.2", - "dev": true - } + "engines": { + "node": ">=10" } }, - "istanbul-reports": { - "version": "3.1.5", + "node_modules/istanbul-reports": { + "version": "3.1.7", + "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.7.tgz", + "integrity": "sha512-BewmUXImeuRk2YY0PVbxgKAysvhRPUQE0h5QRM++nVWyubKGV0l8qQ5op8+B2DOmwSe63Jivj0BjkPQVf8fP5g==", "dev": true, - "requires": { + "dependencies": { "html-escaper": "^2.0.0", "istanbul-lib-report": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jake": { + "version": "10.9.2", + "resolved": "https://registry.npmjs.org/jake/-/jake-10.9.2.tgz", + "integrity": "sha512-2P4SQ0HrLQ+fw6llpLnOaGAvN2Zu6778SJMrCUwns4fOoG9ayrTiZk3VV8sCPkVZF8ab0zksVpS8FDY5pRCNBA==", + "dev": true, + "dependencies": { + "async": "^3.2.3", + "chalk": "^4.0.2", + "filelist": "^1.0.4", + "minimatch": "^3.1.2" + }, + "bin": { + "jake": "bin/cli.js" + }, + "engines": { + "node": ">=10" } }, - "jest": { - "version": "26.6.3", + "node_modules/jest": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest/-/jest-29.7.0.tgz", + "integrity": "sha512-NIy3oAFp9shda19hy4HK0HRTWKtPJmGdnvywu01nOqNC2vZg+Z+fvJDxpMQA88eb2I9EcafcdjYgsDthnYTvGw==", "dev": true, - "requires": { - "@jest/core": "^26.6.3", + "dependencies": { + "@jest/core": "^29.7.0", + "@jest/types": "^29.6.3", "import-local": "^3.0.2", - "jest-cli": "^26.6.3" + "jest-cli": "^29.7.0" + }, + "bin": { + "jest": "bin/jest.js" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" + }, + "peerDependenciesMeta": { + "node-notifier": { + "optional": true + } + } + }, + "node_modules/jest-changed-files": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-29.7.0.tgz", + "integrity": "sha512-fEArFiwf1BpQ+4bXSprcDc3/x4HSzL4al2tozwVpDFpsxALjLYdyiIK4e5Vz66GQJIbXJ82+35PtysofptNX2w==", + "dev": true, + "dependencies": { + "execa": "^5.0.0", + "jest-util": "^29.7.0", + "p-limit": "^3.1.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "jest-changed-files": { - "version": "26.6.2", + "node_modules/jest-circus": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-circus/-/jest-circus-29.7.0.tgz", + "integrity": "sha512-3E1nCMgipcTkCocFwM90XXQab9bS+GMsjdpmPrlelaxwD93Ad8iVEjX/vvHPdLPnFf+L40u+5+iutRdA1N9myw==", "dev": true, - "requires": { - "@jest/types": "^26.6.2", - "execa": "^4.0.0", - "throat": "^5.0.0" + "dependencies": { + "@jest/environment": "^29.7.0", + "@jest/expect": "^29.7.0", + "@jest/test-result": "^29.7.0", + "@jest/types": "^29.6.3", + "@types/node": "*", + "chalk": "^4.0.0", + "co": "^4.6.0", + "dedent": "^1.0.0", + "is-generator-fn": "^2.0.0", + "jest-each": "^29.7.0", + "jest-matcher-utils": "^29.7.0", + "jest-message-util": "^29.7.0", + "jest-runtime": "^29.7.0", + "jest-snapshot": "^29.7.0", + "jest-util": "^29.7.0", + "p-limit": "^3.1.0", + "pretty-format": "^29.7.0", + "pure-rand": "^6.0.0", + "slash": "^3.0.0", + "stack-utils": "^2.0.3" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "jest-cli": { - "version": "26.6.3", + "node_modules/jest-cli": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-cli/-/jest-cli-29.7.0.tgz", + "integrity": "sha512-OVVobw2IubN/GSYsxETi+gOe7Ka59EFMR/twOU3Jb2GnKKeMGJB5SGUUrEz3SFVmJASUdZUzy83sLNNQ2gZslg==", "dev": true, - "requires": { - "@jest/core": "^26.6.3", - "@jest/test-result": "^26.6.2", - "@jest/types": "^26.6.2", + "dependencies": { + "@jest/core": "^29.7.0", + "@jest/test-result": "^29.7.0", + "@jest/types": "^29.6.3", "chalk": "^4.0.0", + "create-jest": "^29.7.0", "exit": "^0.1.2", - "graceful-fs": "^4.2.4", "import-local": "^3.0.2", - "is-ci": "^2.0.0", - "jest-config": "^26.6.3", - "jest-util": "^26.6.2", - "jest-validate": "^26.6.2", - "prompts": "^2.0.1", - "yargs": "^15.4.1" - } - }, - "jest-config": { - "version": "26.6.3", - "dev": true, - "requires": { - "@babel/core": "^7.1.0", - "@jest/test-sequencer": "^26.6.3", - "@jest/types": "^26.6.2", - "babel-jest": "^26.6.3", + "jest-config": "^29.7.0", + "jest-util": "^29.7.0", + "jest-validate": "^29.7.0", + "yargs": "^17.3.1" + }, + "bin": { + "jest": "bin/jest.js" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" + }, + "peerDependenciesMeta": { + "node-notifier": { + "optional": true + } + } + }, + "node_modules/jest-config": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-config/-/jest-config-29.7.0.tgz", + "integrity": "sha512-uXbpfeQ7R6TZBqI3/TxCU4q4ttk3u0PJeC+E0zbfSoSjq6bJ7buBPxzQPL0ifrkY4DNu4JUdk0ImlBUYi840eQ==", + "dev": true, + "dependencies": { + "@babel/core": "^7.11.6", + "@jest/test-sequencer": "^29.7.0", + "@jest/types": "^29.6.3", + "babel-jest": "^29.7.0", "chalk": "^4.0.0", + "ci-info": "^3.2.0", "deepmerge": "^4.2.2", - "glob": "^7.1.1", - "graceful-fs": "^4.2.4", - "jest-environment-jsdom": "^26.6.2", - "jest-environment-node": "^26.6.2", - "jest-get-type": "^26.3.0", - "jest-jasmine2": "^26.6.3", - "jest-regex-util": "^26.0.0", - "jest-resolve": "^26.6.2", - "jest-util": "^26.6.2", - "jest-validate": "^26.6.2", - "micromatch": "^4.0.2", - "pretty-format": "^26.6.2" - }, - "dependencies": { - "braces": { - "version": "3.0.2", - "dev": true, - "requires": { - "fill-range": "^7.0.1" - } - }, - "fill-range": { - "version": "7.0.1", - "dev": true, - "requires": { - "to-regex-range": "^5.0.1" - } - }, - "is-number": { - "version": "7.0.0", - "dev": true - }, - "micromatch": { - "version": "4.0.5", - "dev": true, - "requires": { - "braces": "^3.0.2", - "picomatch": "^2.3.1" - } + "glob": "^7.1.3", + "graceful-fs": "^4.2.9", + "jest-circus": "^29.7.0", + "jest-environment-node": "^29.7.0", + "jest-get-type": "^29.6.3", + "jest-regex-util": "^29.6.3", + "jest-resolve": "^29.7.0", + "jest-runner": "^29.7.0", + "jest-util": "^29.7.0", + "jest-validate": "^29.7.0", + "micromatch": "^4.0.4", + "parse-json": "^5.2.0", + "pretty-format": "^29.7.0", + "slash": "^3.0.0", + "strip-json-comments": "^3.1.1" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "@types/node": "*", + "ts-node": ">=9.0.0" + }, + "peerDependenciesMeta": { + "@types/node": { + "optional": true }, - "to-regex-range": { - "version": "5.0.1", - "dev": true, - "requires": { - "is-number": "^7.0.0" - } + "ts-node": { + "optional": true } } }, - "jest-diff": { - "version": "26.6.2", + "node_modules/jest-diff": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-29.7.0.tgz", + "integrity": "sha512-LMIgiIrhigmPrs03JHpxUh2yISK3vLFPkAodPeo0+BuF7wA2FoQbkEg1u8gBYBThncu7e1oEDUfIXVuTqLRUjw==", "dev": true, - "requires": { + "dependencies": { "chalk": "^4.0.0", - "diff-sequences": "^26.6.2", - "jest-get-type": "^26.3.0", - "pretty-format": "^26.6.2" + "diff-sequences": "^29.6.3", + "jest-get-type": "^29.6.3", + "pretty-format": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "jest-docblock": { - "version": "26.0.0", + "node_modules/jest-docblock": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-docblock/-/jest-docblock-29.7.0.tgz", + "integrity": "sha512-q617Auw3A612guyaFgsbFeYpNP5t2aoUNLwBUbc/0kD1R4t9ixDbyFTHd1nok4epoVFpr7PmeWHrhvuV3XaJ4g==", "dev": true, - "requires": { + "dependencies": { "detect-newline": "^3.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "jest-each": { - "version": "26.6.2", + "node_modules/jest-each": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-each/-/jest-each-29.7.0.tgz", + "integrity": "sha512-gns+Er14+ZrEoC5fhOfYCY1LOHHr0TI+rQUHZS8Ttw2l7gl+80eHc/gFf2Ktkw0+SIACDTeWvpFcv3B04VembQ==", "dev": true, - "requires": { - "@jest/types": "^26.6.2", + "dependencies": { + "@jest/types": "^29.6.3", "chalk": "^4.0.0", - "jest-get-type": "^26.3.0", - "jest-util": "^26.6.2", - "pretty-format": "^26.6.2" - } - }, - "jest-environment-jsdom": { - "version": "26.6.2", - "dev": true, - "requires": { - "@jest/environment": "^26.6.2", - "@jest/fake-timers": "^26.6.2", - "@jest/types": "^26.6.2", - "@types/node": "*", - "jest-mock": "^26.6.2", - "jest-util": "^26.6.2", - "jsdom": "^16.4.0" - } - }, - "jest-environment-node": { - "version": "26.6.2", - "dev": true, - "requires": { - "@jest/environment": "^26.6.2", - "@jest/fake-timers": "^26.6.2", - "@jest/types": "^26.6.2", - "@types/node": "*", - "jest-mock": "^26.6.2", - "jest-util": "^26.6.2" + "jest-get-type": "^29.6.3", + "jest-util": "^29.7.0", + "pretty-format": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "jest-get-type": { - "version": "26.3.0", - "dev": true - }, - "jest-haste-map": { - "version": "26.6.2", + "node_modules/jest-environment-node": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-29.7.0.tgz", + "integrity": "sha512-DOSwCRqXirTOyheM+4d5YZOrWcdu0LNZ87ewUoywbcb2XR4wKgqiG8vNeYwhjFMbEkfju7wx2GYH0P2gevGvFw==", "dev": true, - "requires": { - "@jest/types": "^26.6.2", - "@types/graceful-fs": "^4.1.2", + "dependencies": { + "@jest/environment": "^29.7.0", + "@jest/fake-timers": "^29.7.0", + "@jest/types": "^29.6.3", "@types/node": "*", - "anymatch": "^3.0.3", - "fb-watchman": "^2.0.0", - "fsevents": "^2.1.2", - "graceful-fs": "^4.2.4", - "jest-regex-util": "^26.0.0", - "jest-serializer": "^26.6.2", - "jest-util": "^26.6.2", - "jest-worker": "^26.6.2", - "micromatch": "^4.0.2", - "sane": "^4.0.3", - "walker": "^1.0.7" - }, - "dependencies": { - "braces": { - "version": "3.0.2", - "dev": true, - "requires": { - "fill-range": "^7.0.1" - } - }, - "fill-range": { - "version": "7.0.1", - "dev": true, - "requires": { - "to-regex-range": "^5.0.1" - } - }, - "is-number": { - "version": "7.0.0", - "dev": true - }, - "micromatch": { - "version": "4.0.5", - "dev": true, - "requires": { - "braces": "^3.0.2", - "picomatch": "^2.3.1" - } - }, - "to-regex-range": { - "version": "5.0.1", - "dev": true, - "requires": { - "is-number": "^7.0.0" - } - } + "jest-mock": "^29.7.0", + "jest-util": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-get-type": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-29.6.3.tgz", + "integrity": "sha512-zrteXnqYxfQh7l5FHyL38jL39di8H8rHoecLH3JNxH3BwOrBsNeabdap5e0I23lD4HHI8W5VFBZqG4Eaq5LNcw==", + "dev": true, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "jest-jasmine2": { - "version": "26.6.3", + "node_modules/jest-haste-map": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-29.7.0.tgz", + "integrity": "sha512-fP8u2pyfqx0K1rGn1R9pyE0/KTn+G7PxktWidOBTqFPLYX0b9ksaMFkhK5vrS3DVun09pckLdlx90QthlW7AmA==", "dev": true, - "requires": { - "@babel/traverse": "^7.1.0", - "@jest/environment": "^26.6.2", - "@jest/source-map": "^26.6.2", - "@jest/test-result": "^26.6.2", - "@jest/types": "^26.6.2", + "dependencies": { + "@jest/types": "^29.6.3", + "@types/graceful-fs": "^4.1.3", "@types/node": "*", - "chalk": "^4.0.0", - "co": "^4.6.0", - "expect": "^26.6.2", - "is-generator-fn": "^2.0.0", - "jest-each": "^26.6.2", - "jest-matcher-utils": "^26.6.2", - "jest-message-util": "^26.6.2", - "jest-runtime": "^26.6.3", - "jest-snapshot": "^26.6.2", - "jest-util": "^26.6.2", - "pretty-format": "^26.6.2", - "throat": "^5.0.0" + "anymatch": "^3.0.3", + "fb-watchman": "^2.0.0", + "graceful-fs": "^4.2.9", + "jest-regex-util": "^29.6.3", + "jest-util": "^29.7.0", + "jest-worker": "^29.7.0", + "micromatch": "^4.0.4", + "walker": "^1.0.8" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "optionalDependencies": { + "fsevents": "^2.3.2" } }, - "jest-leak-detector": { - "version": "26.6.2", + "node_modules/jest-leak-detector": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-29.7.0.tgz", + "integrity": "sha512-kYA8IJcSYtST2BY9I+SMC32nDpBT3J2NvWJx8+JCuCdl/CR1I4EKUJROiP8XtCcxqgTTBGJNdbB1A8XRKbTetw==", "dev": true, - "requires": { - "jest-get-type": "^26.3.0", - "pretty-format": "^26.6.2" + "dependencies": { + "jest-get-type": "^29.6.3", + "pretty-format": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "jest-matcher-utils": { - "version": "26.6.2", + "node_modules/jest-matcher-utils": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-29.7.0.tgz", + "integrity": "sha512-sBkD+Xi9DtcChsI3L3u0+N0opgPYnCRPtGcQYrgXmR+hmt/fYfWAL0xRXYU8eWOdfuLgBe0YCW3AFtnRLagq/g==", "dev": true, - "requires": { + "dependencies": { "chalk": "^4.0.0", - "jest-diff": "^26.6.2", - "jest-get-type": "^26.3.0", - "pretty-format": "^26.6.2" + "jest-diff": "^29.7.0", + "jest-get-type": "^29.6.3", + "pretty-format": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "jest-message-util": { - "version": "26.6.2", + "node_modules/jest-message-util": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-29.7.0.tgz", + "integrity": "sha512-GBEV4GRADeP+qtB2+6u61stea8mGcOT4mCtrYISZwfu9/ISHFJ/5zOMXYbpBE9RsS5+Gb63DW4FgmnKJ79Kf6w==", "dev": true, - "requires": { - "@babel/code-frame": "^7.0.0", - "@jest/types": "^26.6.2", + "dependencies": { + "@babel/code-frame": "^7.12.13", + "@jest/types": "^29.6.3", "@types/stack-utils": "^2.0.0", "chalk": "^4.0.0", - "graceful-fs": "^4.2.4", - "micromatch": "^4.0.2", - "pretty-format": "^26.6.2", + "graceful-fs": "^4.2.9", + "micromatch": "^4.0.4", + "pretty-format": "^29.7.0", "slash": "^3.0.0", - "stack-utils": "^2.0.2" + "stack-utils": "^2.0.3" }, - "dependencies": { - "braces": { - "version": "3.0.2", - "dev": true, - "requires": { - "fill-range": "^7.0.1" - } - }, - "fill-range": { - "version": "7.0.1", - "dev": true, - "requires": { - "to-regex-range": "^5.0.1" - } - }, - "is-number": { - "version": "7.0.0", - "dev": true - }, - "micromatch": { - "version": "4.0.5", - "dev": true, - "requires": { - "braces": "^3.0.2", - "picomatch": "^2.3.1" - } - }, - "slash": { - "version": "3.0.0", - "dev": true - }, - "to-regex-range": { - "version": "5.0.1", - "dev": true, - "requires": { - "is-number": "^7.0.0" - } - } + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "jest-mock": { - "version": "26.6.2", + "node_modules/jest-mock": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-29.7.0.tgz", + "integrity": "sha512-ITOMZn+UkYS4ZFh83xYAOzWStloNzJFO2s8DWrE4lhtGD+AorgnbkiKERe4wQVBydIGPx059g6riW5Btp6Llnw==", "dev": true, - "requires": { - "@jest/types": "^26.6.2", - "@types/node": "*" + "dependencies": { + "@jest/types": "^29.6.3", + "@types/node": "*", + "jest-util": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "jest-pnp-resolver": { + "node_modules/jest-pnp-resolver": { "version": "1.2.3", + "resolved": "https://registry.npmjs.org/jest-pnp-resolver/-/jest-pnp-resolver-1.2.3.tgz", + "integrity": "sha512-+3NpwQEnRoIBtx4fyhblQDPgJI0H1IEIkX7ShLUjPGA7TtUTvI1oiKi3SR4oBR0hQhQR80l4WAe5RrXBwWMA8w==", "dev": true, - "requires": {} + "engines": { + "node": ">=6" + }, + "peerDependencies": { + "jest-resolve": "*" + }, + "peerDependenciesMeta": { + "jest-resolve": { + "optional": true + } + } }, - "jest-regex-util": { - "version": "26.0.0", - "dev": true + "node_modules/jest-regex-util": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-29.6.3.tgz", + "integrity": "sha512-KJJBsRCyyLNWCNBOvZyRDnAIfUiRJ8v+hOBQYGn8gDyF3UegwiP4gwRR3/SDa42g1YbVycTidUF3rKjyLFDWbg==", + "dev": true, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } }, - "jest-resolve": { - "version": "26.6.2", + "node_modules/jest-resolve": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-29.7.0.tgz", + "integrity": "sha512-IOVhZSrg+UvVAshDSDtHyFCCBUl/Q3AAJv8iZ6ZjnZ74xzvwuzLXid9IIIPgTnY62SJjfuupMKZsZQRsCvxEgA==", "dev": true, - "requires": { - "@jest/types": "^26.6.2", + "dependencies": { "chalk": "^4.0.0", - "graceful-fs": "^4.2.4", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^29.7.0", "jest-pnp-resolver": "^1.2.2", - "jest-util": "^26.6.2", - "read-pkg-up": "^7.0.1", - "resolve": "^1.18.1", + "jest-util": "^29.7.0", + "jest-validate": "^29.7.0", + "resolve": "^1.20.0", + "resolve.exports": "^2.0.0", "slash": "^3.0.0" }, - "dependencies": { - "slash": { - "version": "3.0.0", - "dev": true - } + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "jest-resolve-dependencies": { - "version": "26.6.3", + "node_modules/jest-resolve-dependencies": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-29.7.0.tgz", + "integrity": "sha512-un0zD/6qxJ+S0et7WxeI3H5XSe9lTBBR7bOHCHXkKR6luG5mwDDlIzVQ0V5cZCuoTgEdcdwzTghYkTWfubi+nA==", "dev": true, - "requires": { - "@jest/types": "^26.6.2", - "jest-regex-util": "^26.0.0", - "jest-snapshot": "^26.6.2" + "dependencies": { + "jest-regex-util": "^29.6.3", + "jest-snapshot": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "jest-runner": { - "version": "26.6.3", + "node_modules/jest-runner": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-runner/-/jest-runner-29.7.0.tgz", + "integrity": "sha512-fsc4N6cPCAahybGBfTRcq5wFR6fpLznMg47sY5aDpsoejOcVYFb07AHuSnR0liMcPTgBsA3ZJL6kFOjPdoNipQ==", "dev": true, - "requires": { - "@jest/console": "^26.6.2", - "@jest/environment": "^26.6.2", - "@jest/test-result": "^26.6.2", - "@jest/types": "^26.6.2", + "dependencies": { + "@jest/console": "^29.7.0", + "@jest/environment": "^29.7.0", + "@jest/test-result": "^29.7.0", + "@jest/transform": "^29.7.0", + "@jest/types": "^29.6.3", "@types/node": "*", "chalk": "^4.0.0", - "emittery": "^0.7.1", - "exit": "^0.1.2", - "graceful-fs": "^4.2.4", - "jest-config": "^26.6.3", - "jest-docblock": "^26.0.0", - "jest-haste-map": "^26.6.2", - "jest-leak-detector": "^26.6.2", - "jest-message-util": "^26.6.2", - "jest-resolve": "^26.6.2", - "jest-runtime": "^26.6.3", - "jest-util": "^26.6.2", - "jest-worker": "^26.6.2", - "source-map-support": "^0.5.6", - "throat": "^5.0.0" - } - }, - "jest-runtime": { - "version": "26.6.3", - "dev": true, - "requires": { - "@jest/console": "^26.6.2", - "@jest/environment": "^26.6.2", - "@jest/fake-timers": "^26.6.2", - "@jest/globals": "^26.6.2", - "@jest/source-map": "^26.6.2", - "@jest/test-result": "^26.6.2", - "@jest/transform": "^26.6.2", - "@jest/types": "^26.6.2", - "@types/yargs": "^15.0.0", + "emittery": "^0.13.1", + "graceful-fs": "^4.2.9", + "jest-docblock": "^29.7.0", + "jest-environment-node": "^29.7.0", + "jest-haste-map": "^29.7.0", + "jest-leak-detector": "^29.7.0", + "jest-message-util": "^29.7.0", + "jest-resolve": "^29.7.0", + "jest-runtime": "^29.7.0", + "jest-util": "^29.7.0", + "jest-watcher": "^29.7.0", + "jest-worker": "^29.7.0", + "p-limit": "^3.1.0", + "source-map-support": "0.5.13" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-runtime": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-runtime/-/jest-runtime-29.7.0.tgz", + "integrity": "sha512-gUnLjgwdGqW7B4LvOIkbKs9WGbn+QLqRQQ9juC6HndeDiezIwhDP+mhMwHWCEcfQ5RUXa6OPnFF8BJh5xegwwQ==", + "dev": true, + "dependencies": { + "@jest/environment": "^29.7.0", + "@jest/fake-timers": "^29.7.0", + "@jest/globals": "^29.7.0", + "@jest/source-map": "^29.6.3", + "@jest/test-result": "^29.7.0", + "@jest/transform": "^29.7.0", + "@jest/types": "^29.6.3", + "@types/node": "*", "chalk": "^4.0.0", - "cjs-module-lexer": "^0.6.0", + "cjs-module-lexer": "^1.0.0", "collect-v8-coverage": "^1.0.0", - "exit": "^0.1.2", "glob": "^7.1.3", - "graceful-fs": "^4.2.4", - "jest-config": "^26.6.3", - "jest-haste-map": "^26.6.2", - "jest-message-util": "^26.6.2", - "jest-mock": "^26.6.2", - "jest-regex-util": "^26.0.0", - "jest-resolve": "^26.6.2", - "jest-snapshot": "^26.6.2", - "jest-util": "^26.6.2", - "jest-validate": "^26.6.2", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^29.7.0", + "jest-message-util": "^29.7.0", + "jest-mock": "^29.7.0", + "jest-regex-util": "^29.6.3", + "jest-resolve": "^29.7.0", + "jest-snapshot": "^29.7.0", + "jest-util": "^29.7.0", "slash": "^3.0.0", - "strip-bom": "^4.0.0", - "yargs": "^15.4.1" + "strip-bom": "^4.0.0" }, - "dependencies": { - "slash": { - "version": "3.0.0", - "dev": true - } - } - }, - "jest-serializer": { - "version": "26.6.2", - "dev": true, - "requires": { - "@types/node": "*", - "graceful-fs": "^4.2.4" + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "jest-snapshot": { - "version": "26.6.2", + "node_modules/jest-snapshot": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-29.7.0.tgz", + "integrity": "sha512-Rm0BMWtxBcioHr1/OX5YCP8Uov4riHvKPknOGs804Zg9JGZgmIBkbtlxJC/7Z4msKYVbIJtfU+tKb8xlYNfdkw==", "dev": true, - "requires": { - "@babel/types": "^7.0.0", - "@jest/types": "^26.6.2", - "@types/babel__traverse": "^7.0.4", - "@types/prettier": "^2.0.0", + "dependencies": { + "@babel/core": "^7.11.6", + "@babel/generator": "^7.7.2", + "@babel/plugin-syntax-jsx": "^7.7.2", + "@babel/plugin-syntax-typescript": "^7.7.2", + "@babel/types": "^7.3.3", + "@jest/expect-utils": "^29.7.0", + "@jest/transform": "^29.7.0", + "@jest/types": "^29.6.3", + "babel-preset-current-node-syntax": "^1.0.0", "chalk": "^4.0.0", - "expect": "^26.6.2", - "graceful-fs": "^4.2.4", - "jest-diff": "^26.6.2", - "jest-get-type": "^26.3.0", - "jest-haste-map": "^26.6.2", - "jest-matcher-utils": "^26.6.2", - "jest-message-util": "^26.6.2", - "jest-resolve": "^26.6.2", + "expect": "^29.7.0", + "graceful-fs": "^4.2.9", + "jest-diff": "^29.7.0", + "jest-get-type": "^29.6.3", + "jest-matcher-utils": "^29.7.0", + "jest-message-util": "^29.7.0", + "jest-util": "^29.7.0", "natural-compare": "^1.4.0", - "pretty-format": "^26.6.2", - "semver": "^7.3.2" + "pretty-format": "^29.7.0", + "semver": "^7.5.3" }, - "dependencies": { - "lru-cache": { - "version": "6.0.0", - "dev": true, - "requires": { - "yallist": "^4.0.0" - } - }, - "semver": { - "version": "7.3.8", - "dev": true, - "requires": { - "lru-cache": "^6.0.0" - } - }, - "yallist": { - "version": "4.0.0", - "dev": true - } + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "jest-util": { - "version": "26.6.2", + "node_modules/jest-util": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-29.7.0.tgz", + "integrity": "sha512-z6EbKajIpqGKU56y5KBUgy1dt1ihhQJgWzUlZHArA/+X2ad7Cb5iF+AK1EWVL/Bo7Rz9uurpqw6SiBCefUbCGA==", "dev": true, - "requires": { - "@jest/types": "^26.6.2", + "dependencies": { + "@jest/types": "^29.6.3", "@types/node": "*", "chalk": "^4.0.0", - "graceful-fs": "^4.2.4", - "is-ci": "^2.0.0", - "micromatch": "^4.0.2" + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" }, - "dependencies": { - "braces": { - "version": "3.0.2", - "dev": true, - "requires": { - "fill-range": "^7.0.1" - } - }, - "fill-range": { - "version": "7.0.1", - "dev": true, - "requires": { - "to-regex-range": "^5.0.1" - } - }, - "is-number": { - "version": "7.0.0", - "dev": true - }, - "micromatch": { - "version": "4.0.5", - "dev": true, - "requires": { - "braces": "^3.0.2", - "picomatch": "^2.3.1" - } - }, - "to-regex-range": { - "version": "5.0.1", - "dev": true, - "requires": { - "is-number": "^7.0.0" - } - } + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "jest-validate": { - "version": "26.6.2", + "node_modules/jest-validate": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-29.7.0.tgz", + "integrity": "sha512-ZB7wHqaRGVw/9hST/OuFUReG7M8vKeq0/J2egIGLdvjHCmYqGARhzXmtgi+gVeZ5uXFF219aOc3Ls2yLg27tkw==", "dev": true, - "requires": { - "@jest/types": "^26.6.2", - "camelcase": "^6.0.0", + "dependencies": { + "@jest/types": "^29.6.3", + "camelcase": "^6.2.0", "chalk": "^4.0.0", - "jest-get-type": "^26.3.0", + "jest-get-type": "^29.6.3", "leven": "^3.1.0", - "pretty-format": "^26.6.2" + "pretty-format": "^29.7.0" }, - "dependencies": { - "camelcase": { - "version": "6.3.0", - "dev": true - } + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-validate/node_modules/camelcase": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", + "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "jest-watcher": { - "version": "26.6.2", + "node_modules/jest-watcher": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-watcher/-/jest-watcher-29.7.0.tgz", + "integrity": "sha512-49Fg7WXkU3Vl2h6LbLtMQ/HyB6rXSIX7SqvBLQmssRBGN9I0PNvPmAmCWSOY6SOvrjhI/F7/bGAv9RtnsPA03g==", "dev": true, - "requires": { - "@jest/test-result": "^26.6.2", - "@jest/types": "^26.6.2", + "dependencies": { + "@jest/test-result": "^29.7.0", + "@jest/types": "^29.6.3", "@types/node": "*", "ansi-escapes": "^4.2.1", "chalk": "^4.0.0", - "jest-util": "^26.6.2", + "emittery": "^0.13.1", + "jest-util": "^29.7.0", "string-length": "^4.0.1" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "jest-worker": { - "version": "26.6.2", + "node_modules/jest-worker": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-29.7.0.tgz", + "integrity": "sha512-eIz2msL/EzL9UFTFFx7jBTkeZfku0yUAyZZZmJ93H2TYEiroIx2PQjEXcwYtYl8zXCxb+PAmA2hLIt/6ZEkPHw==", "dev": true, - "requires": { + "dependencies": { "@types/node": "*", + "jest-util": "^29.7.0", "merge-stream": "^2.0.0", - "supports-color": "^7.0.0" + "supports-color": "^8.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-worker/node_modules/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, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/supports-color?sponsor=1" } }, - "js-tokens": { + "node_modules/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", + "node_modules/js-yaml": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", + "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", "dev": true, - "requires": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" + "dependencies": { + "argparse": "^2.0.1" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" } }, - "jsdom": { - "version": "16.7.0", - "dev": true, - "requires": { - "abab": "^2.0.5", - "acorn": "^8.2.4", - "acorn-globals": "^6.0.0", - "cssom": "^0.4.4", - "cssstyle": "^2.3.0", - "data-urls": "^2.0.0", - "decimal.js": "^10.2.1", - "domexception": "^2.0.1", - "escodegen": "^2.0.0", - "form-data": "^3.0.0", - "html-encoding-sniffer": "^2.0.1", - "http-proxy-agent": "^4.0.1", - "https-proxy-agent": "^5.0.0", - "is-potential-custom-element-name": "^1.0.1", - "nwsapi": "^2.2.0", - "parse5": "6.0.1", - "saxes": "^5.0.1", - "symbol-tree": "^3.2.4", - "tough-cookie": "^4.0.0", - "w3c-hr-time": "^1.0.2", - "w3c-xmlserializer": "^2.0.0", - "webidl-conversions": "^6.1.0", - "whatwg-encoding": "^1.0.5", - "whatwg-mimetype": "^2.3.0", - "whatwg-url": "^8.5.0", - "ws": "^7.4.6", - "xml-name-validator": "^3.0.0" - }, - "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==", - "dev": true, - "requires": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.8", - "mime-types": "^2.1.12" - } - } + "node_modules/jsdoc-type-pratt-parser": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/jsdoc-type-pratt-parser/-/jsdoc-type-pratt-parser-4.1.0.tgz", + "integrity": "sha512-Hicd6JK5Njt2QB6XYFS7ok9e37O8AYk3jTcppG4YVQnYjOemymvTcmc7OWsmq/Qqj5TdRFO5/x/tIPmBeRtGHg==", + "dev": true, + "engines": { + "node": ">=12.0.0" } }, - "jsesc": { - "version": "2.5.2", - "dev": true + "node_modules/jsesc": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-3.1.0.tgz", + "integrity": "sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==", + "dev": true, + "bin": { + "jsesc": "bin/jsesc" + }, + "engines": { + "node": ">=6" + } }, - "json-parse-better-errors": { - "version": "1.0.2", + "node_modules/json-buffer": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz", + "integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==", "dev": true }, - "json-parse-even-better-errors": { + "node_modules/json-parse-even-better-errors": { "version": "2.3.1", + "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", + "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", "dev": true }, - "json-stringify-safe": { - "version": "5.0.1", + "node_modules/json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", "dev": true }, - "json5": { - "version": "2.2.3", + "node_modules/json-stable-stringify-without-jsonify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", + "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==", "dev": true }, - "junk": { - "version": "3.1.0", + "node_modules/json-stringify-safe": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", + "integrity": "sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA==", "dev": true }, - "kind-of": { - "version": "6.0.3", - "dev": true + "node_modules/json5": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", + "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", + "dev": true, + "bin": { + "json5": "lib/cli.js" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/keyv": { + "version": "4.5.4", + "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz", + "integrity": "sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==", + "dev": true, + "dependencies": { + "json-buffer": "3.0.1" + } }, - "kleur": { + "node_modules/kleur": { "version": "3.0.3", - "dev": true + "resolved": "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz", + "integrity": "sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==", + "dev": true, + "engines": { + "node": ">=6" + } }, - "leven": { + "node_modules/leven": { "version": "3.1.0", - "dev": true + "resolved": "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz", + "integrity": "sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==", + "dev": true, + "engines": { + "node": ">=6" + } }, - "levn": { - "version": "0.3.0", + "node_modules/levn": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", + "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", "dev": true, - "requires": { - "prelude-ls": "~1.1.2", - "type-check": "~0.3.2" + "dependencies": { + "prelude-ls": "^1.2.1", + "type-check": "~0.4.0" + }, + "engines": { + "node": ">= 0.8.0" } }, - "lines-and-columns": { + "node_modules/lines-and-columns": { "version": "1.2.4", + "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", + "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==", "dev": true }, - "load-json-file": { - "version": "4.0.0", + "node_modules/locate-path": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "parse-json": "^4.0.0", - "pify": "^3.0.0", - "strip-bom": "^3.0.0" - }, "dependencies": { - "pify": { - "version": "3.0.0", - "dev": true - }, - "strip-bom": { - "version": "3.0.0", - "dev": true - } - } - }, - "locate-path": { - "version": "5.0.0", - "dev": true, - "requires": { - "p-locate": "^4.1.0" + "p-locate": "^5.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "lodash": { + "node_modules/lodash": { "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", + "dev": true + }, + "node_modules/lodash.memoize": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-4.1.2.tgz", + "integrity": "sha512-t7j+NzmgnQzTAYXcsHYLgimltOV1MXHtlOWf6GjL9Kj8GK5FInw5JotxvbOs+IvV1/Dzo04/fCGfLVs7aXb4Ag==", "dev": true }, - "lru-cache": { + "node_modules/lodash.merge": { + "version": "4.6.2", + "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", + "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", + "dev": true + }, + "node_modules/lru-cache": { "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", "dev": true, - "requires": { + "dependencies": { "yallist": "^3.0.2" } }, - "make-dir": { - "version": "3.1.0", + "node_modules/make-dir": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-4.0.0.tgz", + "integrity": "sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw==", "dev": true, - "requires": { - "semver": "^6.0.0" + "dependencies": { + "semver": "^7.5.3" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "make-error": { + "node_modules/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 }, - "makeerror": { + "node_modules/makeerror": { "version": "1.0.12", + "resolved": "https://registry.npmjs.org/makeerror/-/makeerror-1.0.12.tgz", + "integrity": "sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg==", "dev": true, - "requires": { + "dependencies": { "tmpl": "1.0.5" } }, - "map-cache": { - "version": "0.2.2", - "dev": true - }, - "map-obj": { - "version": "4.3.0", - "dev": true - }, - "map-visit": { - "version": "1.0.0", - "dev": true, - "requires": { - "object-visit": "^1.0.0" + "node_modules/math-intrinsics": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/math-intrinsics/-/math-intrinsics-1.1.0.tgz", + "integrity": "sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==", + "engines": { + "node": ">= 0.4" } }, - "media-typer": { + "node_modules/media-typer": { "version": "0.3.0", - "peer": true - }, - "memorystream": { - "version": "0.3.1", - "dev": true - }, - "meow": { - "version": "6.1.1", - "dev": true, - "requires": { - "@types/minimist": "^1.2.0", - "camelcase-keys": "^6.2.2", - "decamelize-keys": "^1.1.0", - "hard-rejection": "^2.1.0", - "minimist-options": "^4.0.2", - "normalize-package-data": "^2.5.0", - "read-pkg-up": "^7.0.1", - "redent": "^3.0.0", - "trim-newlines": "^3.0.0", - "type-fest": "^0.13.1", - "yargs-parser": "^18.1.3" - }, - "dependencies": { - "type-fest": { - "version": "0.13.1", - "dev": true - } + "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", + "integrity": "sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==", + "peer": true, + "engines": { + "node": ">= 0.6" } }, - "merge-descriptors": { - "version": "1.0.1", - "peer": true + "node_modules/merge-descriptors": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.3.tgz", + "integrity": "sha512-gaNvAS7TZ897/rVaZ0nMtAyxNyi/pdbjbAwUpFQpN70GqnVfOiXpeUUMKRBmzXaSQ8DdTX4/0ms62r2K+hE6mQ==", + "peer": true, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } }, - "merge-stream": { + "node_modules/merge-stream": { "version": "2.0.0", + "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", + "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", "dev": true }, - "merge2": { + "node_modules/merge2": { "version": "1.4.1", - "dev": true + "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", + "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", + "dev": true, + "engines": { + "node": ">= 8" + } }, - "methods": { + "node_modules/methods": { "version": "1.1.2", - "peer": true + "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", + "integrity": "sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==", + "peer": true, + "engines": { + "node": ">= 0.6" + } }, - "micromatch": { - "version": "3.1.10", + "node_modules/micromatch": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz", + "integrity": "sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==", "dev": true, - "requires": { - "arr-diff": "^4.0.0", - "array-unique": "^0.3.2", - "braces": "^2.3.1", - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "extglob": "^2.0.4", - "fragment-cache": "^0.2.1", - "kind-of": "^6.0.2", - "nanomatch": "^1.2.9", - "object.pick": "^1.3.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.2" - } - }, - "mime": { + "dependencies": { + "braces": "^3.0.3", + "picomatch": "^2.3.1" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/mime": { "version": "1.6.0", - "peer": true + "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", + "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", + "peer": true, + "bin": { + "mime": "cli.js" + }, + "engines": { + "node": ">=4" + } }, - "mime-db": { - "version": "1.52.0" + "node_modules/mime-db": { + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", + "engines": { + "node": ">= 0.6" + } }, - "mime-types": { + "node_modules/mime-types": { "version": "2.1.35", - "requires": { + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", + "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", + "dependencies": { "mime-db": "1.52.0" + }, + "engines": { + "node": ">= 0.6" } }, - "mimic-fn": { + "node_modules/mimic-fn": { "version": "2.1.0", - "dev": true - }, - "min-indent": { - "version": "1.0.1", - "dev": true - }, - "minimatch": { - "version": "3.1.2", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", + "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", "dev": true, - "requires": { - "brace-expansion": "^1.1.7" + "engines": { + "node": ">=6" } }, - "minimist": { - "version": "1.2.7", - "dev": true - }, - "minimist-options": { - "version": "4.1.0", + "node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", "dev": true, - "requires": { - "arrify": "^1.0.1", - "is-plain-obj": "^1.1.0", - "kind-of": "^6.0.3" - }, "dependencies": { - "arrify": { - "version": "1.0.1", - "dev": true - } - } - }, - "mixin-deep": { - "version": "1.3.2", - "dev": true, - "requires": { - "for-in": "^1.0.2", - "is-extendable": "^1.0.1" + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" } }, - "mkdirp": { - "version": "1.0.4", - "dev": true - }, - "ms": { - "version": "2.0.0" + "node_modules/mitt": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/mitt/-/mitt-3.0.1.tgz", + "integrity": "sha512-vKivATfr97l2/QBCYAkXYDbrIWPM2IIKEl7YPhjCvKlG3kE2gm+uBo6nEXK3M5/Ffh/FLpKExzOQ3JJoJGFKBw==" }, - "nanomatch": { - "version": "1.2.13", - "dev": true, - "requires": { - "arr-diff": "^4.0.0", - "array-unique": "^0.3.2", - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "fragment-cache": "^0.2.1", - "is-windows": "^1.0.2", - "kind-of": "^6.0.2", - "object.pick": "^1.3.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.1" - } + "node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==" }, - "natural-compare": { + "node_modules/natural-compare": { "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", + "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", "dev": true }, - "negotiator": { + "node_modules/negotiator": { "version": "0.6.3", - "peer": true - }, - "nested-error-stacks": { - "version": "2.1.1", - "dev": true - }, - "nice-try": { - "version": "1.0.5", - "dev": true + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", + "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==", + "peer": true, + "engines": { + "node": ">= 0.6" + } }, - "nock": { + "node_modules/nock": { "version": "12.0.3", + "resolved": "https://registry.npmjs.org/nock/-/nock-12.0.3.tgz", + "integrity": "sha512-QNb/j8kbFnKCiyqi9C5DD0jH/FubFGj5rt9NQFONXwQm3IPB0CULECg/eS3AU1KgZb/6SwUa4/DTRKhVxkGABw==", "dev": true, - "requires": { + "dependencies": { "debug": "^4.1.0", "json-stringify-safe": "^5.0.1", "lodash": "^4.17.13", "propagate": "^2.0.0" }, - "dependencies": { - "debug": { - "version": "4.3.4", - "dev": true, - "requires": { - "ms": "2.1.2" - } + "engines": { + "node": ">= 10.13" + } + }, + "node_modules/node-domexception": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/node-domexception/-/node-domexception-1.0.0.tgz", + "integrity": "sha512-/jKZoMpw0F8GRwl4/eLROPA3cfcXtLApP0QzLmUT/HuPCZWyB7IY9ZrMeKw2O/nFIqPQB3PVM9aYm0F312AXDQ==", + "deprecated": "Use your platform's native DOMException instead", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/jimmywarting" }, - "ms": { - "version": "2.1.2", - "dev": true + { + "type": "github", + "url": "https://paypal.me/jimmywarting" } + ], + "engines": { + "node": ">=10.5.0" + } + }, + "node_modules/node-fetch": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-3.3.2.tgz", + "integrity": "sha512-dRB78srN/l6gqWulah9SrxeYnxeddIG30+GOqK/9OlLVyLg3HPnr6SqOWTWOXKRwC2eGYCkZ59NNuSgvSrpgOA==", + "dependencies": { + "data-uri-to-buffer": "^4.0.0", + "fetch-blob": "^3.1.4", + "formdata-polyfill": "^4.0.10" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/node-fetch" } }, - "node-int64": { + "node_modules/node-int64": { "version": "0.4.0", + "resolved": "https://registry.npmjs.org/node-int64/-/node-int64-0.4.0.tgz", + "integrity": "sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw==", "dev": true }, - "node-notifier": { - "version": "8.0.2", + "node_modules/node-releases": { + "version": "2.0.19", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.19.tgz", + "integrity": "sha512-xxOWJsBKtzAq7DY0J+DTzuz58K8e7sJbdgwkbMWQe8UYB6ekmsQ45q0M/tJDsGaZmbC+l7n57UV8Hl5tHxO9uw==", + "dev": true + }, + "node_modules/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, - "optional": true, - "requires": { - "growly": "^1.3.0", - "is-wsl": "^2.2.0", - "semver": "^7.3.2", - "shellwords": "^0.1.1", - "uuid": "^8.3.0", - "which": "^2.0.2" - }, - "dependencies": { - "lru-cache": { - "version": "6.0.0", - "dev": true, - "optional": true, - "requires": { - "yallist": "^4.0.0" - } - }, - "semver": { - "version": "7.3.8", - "dev": true, - "optional": true, - "requires": { - "lru-cache": "^6.0.0" - } - }, - "yallist": { - "version": "4.0.0", - "dev": true, - "optional": true - } + "engines": { + "node": ">=0.10.0" } }, - "node-releases": { - "version": "2.0.8", - "dev": true - }, - "normalize-package-data": { - "version": "2.5.0", + "node_modules/npm-run-path": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", + "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", "dev": true, - "requires": { - "hosted-git-info": "^2.1.4", - "resolve": "^1.10.0", - "semver": "2 || 3 || 4 || 5", - "validate-npm-package-license": "^3.0.1" + "dependencies": { + "path-key": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/object-inspect": { + "version": "1.13.4", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.4.tgz", + "integrity": "sha512-W67iLl4J2EXEGTbfeHCffrjDfitvLANg0UlX3wFUUSTx92KXRFegMHUVgSqE+wvhAbi4WqjGg9czysTV2Epbew==", + "peer": true, + "engines": { + "node": ">= 0.4" }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/on-finished": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz", + "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==", + "peer": true, "dependencies": { - "semver": { - "version": "5.7.1", - "dev": true - } + "ee-first": "1.1.1" + }, + "engines": { + "node": ">= 0.8" } }, - "normalize-path": { - "version": "3.0.0", - "dev": true + "node_modules/once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", + "dev": true, + "dependencies": { + "wrappy": "1" + } }, - "npm-run-all": { - "version": "4.1.5", + "node_modules/onetime": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", + "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", "dev": true, - "requires": { - "ansi-styles": "^3.2.1", - "chalk": "^2.4.1", - "cross-spawn": "^6.0.5", - "memorystream": "^0.3.1", - "minimatch": "^3.0.4", - "pidtree": "^0.3.0", - "read-pkg": "^3.0.0", - "shell-quote": "^1.6.1", - "string.prototype.padend": "^3.0.0" + "dependencies": { + "mimic-fn": "^2.1.0" }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/optionator": { + "version": "0.9.4", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.4.tgz", + "integrity": "sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==", + "dev": true, "dependencies": { - "ansi-styles": { - "version": "3.2.1", - "dev": true, - "requires": { - "color-convert": "^1.9.0" - } - }, - "chalk": { - "version": "2.4.2", - "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", - "dev": true, - "requires": { - "color-name": "1.1.3" - } - }, - "color-name": { - "version": "1.1.3", - "dev": true - }, - "cross-spawn": { - "version": "6.0.5", - "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" - } - }, - "escape-string-regexp": { - "version": "1.0.5", - "dev": true - }, - "has-flag": { - "version": "3.0.0", - "dev": true - }, - "path-key": { - "version": "2.0.1", - "dev": true - }, - "semver": { - "version": "5.7.1", - "dev": true - }, - "shebang-command": { - "version": "1.2.0", - "dev": true, - "requires": { - "shebang-regex": "^1.0.0" - } - }, - "shebang-regex": { - "version": "1.0.0", - "dev": true - }, - "supports-color": { - "version": "5.5.0", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - }, - "which": { - "version": "1.3.1", - "dev": true, - "requires": { - "isexe": "^2.0.0" - } - } + "deep-is": "^0.1.3", + "fast-levenshtein": "^2.0.6", + "levn": "^0.4.1", + "prelude-ls": "^1.2.1", + "type-check": "^0.4.0", + "word-wrap": "^1.2.5" + }, + "engines": { + "node": ">= 0.8.0" } }, - "npm-run-path": { - "version": "4.0.1", + "node_modules/p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", "dev": true, - "requires": { - "path-key": "^3.0.0" + "dependencies": { + "yocto-queue": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-locate": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", + "dev": true, + "dependencies": { + "p-limit": "^3.0.2" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "nwsapi": { - "version": "2.2.2", - "dev": true - }, - "object-copy": { - "version": "0.1.0", + "node_modules/p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", "dev": true, - "requires": { - "copy-descriptor": "^0.1.0", - "define-property": "^0.2.5", - "kind-of": "^3.0.3" - }, - "dependencies": { - "define-property": { - "version": "0.2.5", - "dev": true, - "requires": { - "is-descriptor": "^0.1.0" - } - }, - "is-accessor-descriptor": { - "version": "0.1.6", - "dev": true, - "requires": { - "kind-of": "^3.0.2" - } - }, - "is-data-descriptor": { - "version": "0.1.4", - "dev": true, - "requires": { - "kind-of": "^3.0.2" - } - }, - "is-descriptor": { - "version": "0.1.6", - "dev": true, - "requires": { - "is-accessor-descriptor": "^0.1.6", - "is-data-descriptor": "^0.1.4", - "kind-of": "^5.0.0" - }, - "dependencies": { - "kind-of": { - "version": "5.1.0", - "dev": true - } - } - }, - "kind-of": { - "version": "3.2.2", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } + "engines": { + "node": ">=6" } }, - "object-inspect": { - "version": "1.12.3" - }, - "object-keys": { - "version": "1.1.1", - "dev": true - }, - "object-visit": { + "node_modules/parent-module": { "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", + "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", "dev": true, - "requires": { - "isobject": "^3.0.0" + "dependencies": { + "callsites": "^3.0.0" + }, + "engines": { + "node": ">=6" } }, - "object.assign": { - "version": "4.1.4", + "node_modules/parse-imports": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/parse-imports/-/parse-imports-2.2.1.tgz", + "integrity": "sha512-OL/zLggRp8mFhKL0rNORUTR4yBYujK/uU+xZL+/0Rgm2QE4nLO9v8PzEweSJEbMGKmDRjJE4R3IMJlL2di4JeQ==", "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "has-symbols": "^1.0.3", - "object-keys": "^1.1.1" + "dependencies": { + "es-module-lexer": "^1.5.3", + "slashes": "^3.0.12" + }, + "engines": { + "node": ">= 18" } }, - "object.pick": { - "version": "1.3.0", + "node_modules/parse-json": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", + "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", "dev": true, - "requires": { - "isobject": "^3.0.1" + "dependencies": { + "@babel/code-frame": "^7.0.0", + "error-ex": "^1.3.1", + "json-parse-even-better-errors": "^2.3.0", + "lines-and-columns": "^1.1.6" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "on-finished": { - "version": "2.4.1", + "node_modules/parseurl": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", + "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==", "peer": true, - "requires": { - "ee-first": "1.1.1" + "engines": { + "node": ">= 0.8" } }, - "once": { - "version": "1.4.0", + "node_modules/path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", "dev": true, - "requires": { - "wrappy": "1" + "engines": { + "node": ">=8" } }, - "onetime": { - "version": "5.1.2", + "node_modules/path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", "dev": true, - "requires": { - "mimic-fn": "^2.1.0" + "engines": { + "node": ">=0.10.0" } }, - "optionator": { - "version": "0.8.3", + "node_modules/path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", "dev": true, - "requires": { - "deep-is": "~0.1.3", - "fast-levenshtein": "~2.0.6", - "levn": "~0.3.0", - "prelude-ls": "~1.1.2", - "type-check": "~0.3.2", - "word-wrap": "~1.2.3" + "engines": { + "node": ">=8" } }, - "p-all": { - "version": "2.1.0", - "dev": true, - "requires": { - "p-map": "^2.0.0" - }, - "dependencies": { - "p-map": { - "version": "2.1.0", - "dev": true - } - } + "node_modules/path-parse": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", + "dev": true }, - "p-each-series": { - "version": "2.2.0", + "node_modules/path-to-regexp": { + "version": "0.1.12", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.12.tgz", + "integrity": "sha512-RA1GjUVMnvYFxuqovrEqZoxxW5NUZqbwKtYz/Tt7nXerk0LbLblQmrsgdeOxV5SFHf0UDggjS/bSeOZwt1pmEQ==", + "peer": true + }, + "node_modules/picocolors": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz", + "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==", "dev": true }, - "p-event": { - "version": "4.2.0", + "node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", "dev": true, - "requires": { - "p-timeout": "^3.1.0" + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" } }, - "p-filter": { - "version": "2.1.0", + "node_modules/pirates": { + "version": "4.0.7", + "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.7.tgz", + "integrity": "sha512-TfySrs/5nm8fQJDcBDuUng3VOUKsd7S+zqvbOTiGXHfxX4wK31ard+hoNuvkicM/2YFzlpDgABOevKSsB4G/FA==", "dev": true, - "requires": { - "p-map": "^2.0.0" - }, - "dependencies": { - "p-map": { - "version": "2.1.0", - "dev": true - } + "engines": { + "node": ">= 6" } }, - "p-finally": { - "version": "1.0.0", - "dev": true - }, - "p-limit": { - "version": "2.3.0", + "node_modules/pkg-dir": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", + "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", "dev": true, - "requires": { - "p-try": "^2.0.0" + "dependencies": { + "find-up": "^4.0.0" + }, + "engines": { + "node": ">=8" } }, - "p-locate": { + "node_modules/pkg-dir/node_modules/find-up": { "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", "dev": true, - "requires": { - "p-limit": "^2.2.0" + "dependencies": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=8" } }, - "p-map": { - "version": "3.0.0", + "node_modules/pkg-dir/node_modules/locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", "dev": true, - "requires": { - "aggregate-error": "^3.0.0" + "dependencies": { + "p-locate": "^4.1.0" + }, + "engines": { + "node": ">=8" } }, - "p-timeout": { - "version": "3.2.0", + "node_modules/pkg-dir/node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", "dev": true, - "requires": { - "p-finally": "^1.0.0" + "dependencies": { + "p-try": "^2.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "p-try": { - "version": "2.2.0", - "dev": true - }, - "parse-json": { - "version": "4.0.0", + "node_modules/pkg-dir/node_modules/p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", "dev": true, - "requires": { - "error-ex": "^1.3.1", - "json-parse-better-errors": "^1.0.1" + "dependencies": { + "p-limit": "^2.2.0" + }, + "engines": { + "node": ">=8" } }, - "parse5": { - "version": "6.0.1", - "dev": true - }, - "parseurl": { - "version": "1.3.3", - "peer": true - }, - "pascalcase": { - "version": "0.1.1", - "dev": true - }, - "path-dirname": { - "version": "1.0.2", - "dev": true - }, - "path-exists": { - "version": "4.0.0", - "dev": true - }, - "path-is-absolute": { - "version": "1.0.1", - "dev": true - }, - "path-key": { - "version": "3.1.1", - "dev": true - }, - "path-parse": { - "version": "1.0.7", - "dev": true - }, - "path-to-regexp": { - "version": "0.1.7", - "peer": true - }, - "path-type": { - "version": "3.0.0", + "node_modules/prelude-ls": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", + "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", "dev": true, - "requires": { - "pify": "^3.0.0" - }, - "dependencies": { - "pify": { - "version": "3.0.0", - "dev": true - } + "engines": { + "node": ">= 0.8.0" } }, - "picocolors": { - "version": "1.0.0", - "dev": true - }, - "picomatch": { - "version": "2.3.1", - "dev": true - }, - "pidtree": { - "version": "0.3.1", - "dev": true - }, - "pify": { - "version": "4.0.1", - "dev": true - }, - "pirates": { - "version": "4.0.5", - "dev": true - }, - "pkg-dir": { - "version": "4.2.0", + "node_modules/pretty-format": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.7.0.tgz", + "integrity": "sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==", "dev": true, - "requires": { - "find-up": "^4.0.0" + "dependencies": { + "@jest/schemas": "^29.6.3", + "ansi-styles": "^5.0.0", + "react-is": "^18.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "posix-character-classes": { - "version": "0.1.1", - "dev": true - }, - "prelude-ls": { - "version": "1.1.2", - "dev": true - }, - "pretty-format": { - "version": "26.6.2", + "node_modules/pretty-format/node_modules/ansi-styles": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", + "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", "dev": true, - "requires": { - "@jest/types": "^26.6.2", - "ansi-regex": "^5.0.0", - "ansi-styles": "^4.0.0", - "react-is": "^17.0.1" + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "prompts": { + "node_modules/prompts": { "version": "2.4.2", + "resolved": "https://registry.npmjs.org/prompts/-/prompts-2.4.2.tgz", + "integrity": "sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==", "dev": true, - "requires": { + "dependencies": { "kleur": "^3.0.3", "sisteransi": "^1.0.5" + }, + "engines": { + "node": ">= 6" } }, - "propagate": { + "node_modules/propagate": { "version": "2.0.1", - "dev": true - }, - "proxy-addr": { - "version": "2.0.7", - "peer": true, - "requires": { - "forwarded": "0.2.0", - "ipaddr.js": "1.9.1" - } - }, - "psl": { - "version": "1.9.0", - "dev": true - }, - "pump": { - "version": "3.0.0", + "resolved": "https://registry.npmjs.org/propagate/-/propagate-2.0.1.tgz", + "integrity": "sha512-vGrhOavPSTz4QVNuBNdcNXePNdNMaO1xj9yBeH1ScQPjk/rhg9sSlCXPhMkFuaNNW/syTvYqsnbIJxMBfRbbag==", "dev": true, - "requires": { - "end-of-stream": "^1.1.0", - "once": "^1.3.1" - } - }, - "punycode": { - "version": "2.3.0", - "dev": true - }, - "qs": { - "version": "6.11.0", - "peer": true, - "requires": { - "side-channel": "^1.0.4" + "engines": { + "node": ">= 8" } }, - "querystringify": { - "version": "2.2.0", - "dev": true - }, - "quick-lru": { - "version": "4.0.1", - "dev": true - }, - "range-parser": { - "version": "1.2.1", - "peer": true - }, - "raw-body": { - "version": "2.5.1", + "node_modules/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==", "peer": true, - "requires": { - "bytes": "3.1.2", - "http-errors": "2.0.0", - "iconv-lite": "0.4.24", - "unpipe": "1.0.0" + "dependencies": { + "forwarded": "0.2.0", + "ipaddr.js": "1.9.1" + }, + "engines": { + "node": ">= 0.10" } }, - "react-is": { - "version": "17.0.2", - "dev": true - }, - "read-pkg": { - "version": "3.0.0", + "node_modules/punycode": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz", + "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==", "dev": true, - "requires": { - "load-json-file": "^4.0.0", - "normalize-package-data": "^2.3.2", - "path-type": "^3.0.0" + "engines": { + "node": ">=6" } }, - "read-pkg-up": { - "version": "7.0.1", + "node_modules/pure-rand": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/pure-rand/-/pure-rand-6.1.0.tgz", + "integrity": "sha512-bVWawvoZoBYpp6yIoQtQXHZjmz35RSVHnUOTefl8Vcjr8snTPY1wnpSPMWekcFwbxI6gtmT7rSYPFvz71ldiOA==", "dev": true, - "requires": { - "find-up": "^4.1.0", - "read-pkg": "^5.2.0", - "type-fest": "^0.8.1" - }, - "dependencies": { - "parse-json": { - "version": "5.2.0", - "dev": true, - "requires": { - "@babel/code-frame": "^7.0.0", - "error-ex": "^1.3.1", - "json-parse-even-better-errors": "^2.3.0", - "lines-and-columns": "^1.1.6" - } - }, - "read-pkg": { - "version": "5.2.0", - "dev": true, - "requires": { - "@types/normalize-package-data": "^2.4.0", - "normalize-package-data": "^2.5.0", - "parse-json": "^5.0.0", - "type-fest": "^0.6.0" - }, - "dependencies": { - "type-fest": { - "version": "0.6.0", - "dev": true - } - } + "funding": [ + { + "type": "individual", + "url": "https://github.com/sponsors/dubzzz" }, - "type-fest": { - "version": "0.8.1", - "dev": true + { + "type": "opencollective", + "url": "https://opencollective.com/fast-check" } - } + ] }, - "redent": { - "version": "3.0.0", - "dev": true, - "requires": { - "indent-string": "^4.0.0", - "strip-indent": "^3.0.0" + "node_modules/qs": { + "version": "6.13.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.13.0.tgz", + "integrity": "sha512-+38qI9SOr8tfZ4QmJNplMUxqjbe7LKvvZgWdExBOmd+egZTtjLB67Gu0HRX3u/XOq7UU2Nx6nsjvS16Z9uwfpg==", + "peer": true, + "dependencies": { + "side-channel": "^1.0.6" + }, + "engines": { + "node": ">=0.6" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "regex-not": { - "version": "1.0.2", + "node_modules/queue-microtask": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", + "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", "dev": true, - "requires": { - "extend-shallow": "^3.0.2", - "safe-regex": "^1.1.0" - } + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] }, - "regexp.prototype.flags": { - "version": "1.4.3", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3", - "functions-have-names": "^1.2.2" + "node_modules/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==", + "peer": true, + "engines": { + "node": ">= 0.6" } }, - "remove-trailing-separator": { - "version": "1.1.0", - "dev": true - }, - "repeat-element": { - "version": "1.1.4", - "dev": true + "node_modules/raw-body": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.2.tgz", + "integrity": "sha512-8zGqypfENjCIqGhgXToC8aB2r7YrBX+AQAfIPs/Mlk+BtPTztOvTS01NRW/3Eh60J+a48lt8qsCzirQ6loCVfA==", + "peer": true, + "dependencies": { + "bytes": "3.1.2", + "http-errors": "2.0.0", + "iconv-lite": "0.4.24", + "unpipe": "1.0.0" + }, + "engines": { + "node": ">= 0.8" + } }, - "repeat-string": { - "version": "1.6.1", + "node_modules/react-is": { + "version": "18.3.1", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.3.1.tgz", + "integrity": "sha512-/LLMVyas0ljjAtoYiPqYiL8VWXzUUdThrmU5+n20DZv+a+ClRoevUzw5JxU+Ieh5/c87ytoTBV9G1FiKfNJdmg==", "dev": true }, - "require-directory": { + "node_modules/require-directory": { "version": "2.1.1", - "dev": true - }, - "require-main-filename": { - "version": "2.0.0", - "dev": true - }, - "requires-port": { - "version": "1.0.0", - "dev": true + "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } }, - "resolve": { - "version": "1.22.1", + "node_modules/resolve": { + "version": "1.22.10", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.10.tgz", + "integrity": "sha512-NPRy+/ncIMeDlTAsuqwKIiferiawhefFJtkNSW0qZJEqMEb+qBt/77B/jGeeek+F0uOeN05CDa6HXbbIgtVX4w==", "dev": true, - "requires": { - "is-core-module": "^2.9.0", + "dependencies": { + "is-core-module": "^2.16.0", "path-parse": "^1.0.7", "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "resolve-cwd": { + "node_modules/resolve-cwd": { "version": "3.0.0", + "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-3.0.0.tgz", + "integrity": "sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==", "dev": true, - "requires": { + "dependencies": { "resolve-from": "^5.0.0" + }, + "engines": { + "node": ">=8" } }, - "resolve-from": { + "node_modules/resolve-cwd/node_modules/resolve-from": { "version": "5.0.0", - "dev": true - }, - "resolve-url": { - "version": "0.2.1", - "dev": true - }, - "ret": { - "version": "0.1.15", - "dev": true - }, - "rimraf": { - "version": "3.0.2", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", + "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", "dev": true, - "requires": { - "glob": "^7.1.3" + "engines": { + "node": ">=8" } }, - "rsvp": { - "version": "4.8.5", - "dev": true - }, - "safe-buffer": { - "version": "5.2.1", - "peer": true - }, - "safe-regex": { - "version": "1.1.0", + "node_modules/resolve-from": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", "dev": true, - "requires": { - "ret": "~0.1.10" + "engines": { + "node": ">=4" } }, - "safe-regex-test": { - "version": "1.0.0", + "node_modules/resolve.exports": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/resolve.exports/-/resolve.exports-2.0.3.tgz", + "integrity": "sha512-OcXjMsGdhL4XnbShKpAcSqPMzQoYkYyhbEaeSko47MjRP9NfEQMhZkXL1DoFlt9LWQn4YttrdnV6X2OiyzBi+A==", "dev": true, - "requires": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.1.3", - "is-regex": "^1.1.4" + "engines": { + "node": ">=10" } }, - "safer-buffer": { - "version": "2.1.2" + "node_modules/reusify": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.1.0.tgz", + "integrity": "sha512-g6QUff04oZpHs0eG5p83rFLhHeV00ug/Yf9nZM6fLeUrPguBTkTQOdpAWWspMh55TZfVQDPaN3NQJfbVRAxdIw==", + "dev": true, + "engines": { + "iojs": ">=1.0.0", + "node": ">=0.10.0" + } }, - "sane": { - "version": "4.1.0", + "node_modules/run-parallel": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", + "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", "dev": true, - "requires": { - "@cnakazawa/watch": "^1.0.3", - "anymatch": "^2.0.0", - "capture-exit": "^2.0.0", - "exec-sh": "^0.3.2", - "execa": "^1.0.0", - "fb-watchman": "^2.0.0", - "micromatch": "^3.1.4", - "minimist": "^1.1.1", - "walker": "~1.0.5" - }, - "dependencies": { - "anymatch": { - "version": "2.0.0", - "dev": true, - "requires": { - "micromatch": "^3.1.4", - "normalize-path": "^2.1.1" - } - }, - "cross-spawn": { - "version": "6.0.5", - "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" - } - }, - "execa": { - "version": "1.0.0", - "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" - } - }, - "get-stream": { - "version": "4.1.0", - "dev": true, - "requires": { - "pump": "^3.0.0" - } - }, - "is-stream": { - "version": "1.1.0", - "dev": true - }, - "normalize-path": { - "version": "2.1.1", - "dev": true, - "requires": { - "remove-trailing-separator": "^1.0.1" - } - }, - "npm-run-path": { - "version": "2.0.2", - "dev": true, - "requires": { - "path-key": "^2.0.0" - } - }, - "path-key": { - "version": "2.0.1", - "dev": true + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" }, - "semver": { - "version": "5.7.1", - "dev": true + { + "type": "patreon", + "url": "https://www.patreon.com/feross" }, - "shebang-command": { - "version": "1.2.0", - "dev": true, - "requires": { - "shebang-regex": "^1.0.0" - } + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "dependencies": { + "queue-microtask": "^1.2.2" + } + }, + "node_modules/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==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" }, - "shebang-regex": { - "version": "1.0.0", - "dev": true + { + "type": "patreon", + "url": "https://www.patreon.com/feross" }, - "which": { - "version": "1.3.1", - "dev": true, - "requires": { - "isexe": "^2.0.0" - } + { + "type": "consulting", + "url": "https://feross.org/support" } - } + ], + "peer": true }, - "saxes": { - "version": "5.0.1", + "node_modules/safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", + "peer": true + }, + "node_modules/semver": { + "version": "7.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", + "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", "dev": true, - "requires": { - "xmlchars": "^2.2.0" + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" } }, - "semver": { - "version": "6.3.0", - "dev": true - }, - "send": { - "version": "0.18.0", + "node_modules/send": { + "version": "0.19.0", + "resolved": "https://registry.npmjs.org/send/-/send-0.19.0.tgz", + "integrity": "sha512-dW41u5VfLXu8SJh5bwRmyYUbAoSB3c9uQh6L8h/KtsFREPWpbX1lrljJo186Jc4nmci/sGUZ9a0a0J2zgfq2hw==", "peer": true, - "requires": { + "dependencies": { "debug": "2.6.9", "depd": "2.0.0", "destroy": "1.2.0", @@ -35930,886 +18560,763 @@ "range-parser": "~1.2.1", "statuses": "2.0.1" }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/send/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "peer": true, "dependencies": { - "ms": { - "version": "2.1.3", - "peer": true - } + "ms": "2.0.0" } }, - "serve-static": { - "version": "1.15.0", + "node_modules/send/node_modules/debug/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "peer": true + }, + "node_modules/send/node_modules/encodeurl": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", + "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==", "peer": true, - "requires": { - "encodeurl": "~1.0.2", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/serve-static": { + "version": "1.16.2", + "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.16.2.tgz", + "integrity": "sha512-VqpjJZKadQB/PEbEwvFdO43Ax5dFBZ2UECszz8bQ7pi7wt//PWe1P6MN7eCnjsatYtBT6EuiClbjSWP2WrIoTw==", + "peer": true, + "dependencies": { + "encodeurl": "~2.0.0", "escape-html": "~1.0.3", "parseurl": "~1.3.3", - "send": "0.18.0" + "send": "0.19.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/setprototypeof": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", + "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==", + "peer": true + }, + "node_modules/shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "dev": true, + "dependencies": { + "shebang-regex": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/side-channel": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.1.0.tgz", + "integrity": "sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw==", + "peer": true, + "dependencies": { + "es-errors": "^1.3.0", + "object-inspect": "^1.13.3", + "side-channel-list": "^1.0.0", + "side-channel-map": "^1.0.1", + "side-channel-weakmap": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "set-blocking": { - "version": "2.0.0", - "dev": true - }, - "set-value": { - "version": "2.0.1", - "dev": true, - "requires": { - "extend-shallow": "^2.0.1", - "is-extendable": "^0.1.1", - "is-plain-object": "^2.0.3", - "split-string": "^3.0.1" - }, + "node_modules/side-channel-list": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/side-channel-list/-/side-channel-list-1.0.0.tgz", + "integrity": "sha512-FCLHtRD/gnpCiCHEiJLOwdmFP+wzCmDEkc9y7NsYxeF4u7Btsn1ZuwgwJGxImImHicJArLP4R0yX4c2KCrMrTA==", + "peer": true, "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - }, - "is-extendable": { - "version": "0.1.1", - "dev": true - } + "es-errors": "^1.3.0", + "object-inspect": "^1.13.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "setprototypeof": { - "version": "1.2.0", - "peer": true - }, - "shebang-command": { - "version": "2.0.0", - "dev": true, - "requires": { - "shebang-regex": "^3.0.0" + "node_modules/side-channel-map": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/side-channel-map/-/side-channel-map-1.0.1.tgz", + "integrity": "sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA==", + "peer": true, + "dependencies": { + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.5", + "object-inspect": "^1.13.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "shebang-regex": { - "version": "3.0.0", - "dev": true - }, - "shell-quote": { - "version": "1.7.4", - "dev": true - }, - "shellwords": { - "version": "0.1.1", - "dev": true, - "optional": true - }, - "side-channel": { - "version": "1.0.4", - "requires": { - "call-bind": "^1.0.0", - "get-intrinsic": "^1.0.2", - "object-inspect": "^1.9.0" + "node_modules/side-channel-weakmap": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/side-channel-weakmap/-/side-channel-weakmap-1.0.2.tgz", + "integrity": "sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A==", + "peer": true, + "dependencies": { + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.5", + "object-inspect": "^1.13.3", + "side-channel-map": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "signal-exit": { + "node_modules/signal-exit": { "version": "3.0.7", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", + "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", "dev": true }, - "sisteransi": { + "node_modules/sisteransi": { "version": "1.0.5", + "resolved": "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.5.tgz", + "integrity": "sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==", "dev": true }, - "slash": { - "version": "2.0.0", - "dev": true - }, - "snapdragon": { - "version": "0.8.2", - "dev": true, - "requires": { - "base": "^0.11.1", - "debug": "^2.2.0", - "define-property": "^0.2.5", - "extend-shallow": "^2.0.1", - "map-cache": "^0.2.2", - "source-map": "^0.5.6", - "source-map-resolve": "^0.5.0", - "use": "^3.1.0" - }, - "dependencies": { - "define-property": { - "version": "0.2.5", - "dev": true, - "requires": { - "is-descriptor": "^0.1.0" - } - }, - "extend-shallow": { - "version": "2.0.1", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - }, - "is-accessor-descriptor": { - "version": "0.1.6", - "dev": true, - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "is-data-descriptor": { - "version": "0.1.4", - "dev": true, - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "is-descriptor": { - "version": "0.1.6", - "dev": true, - "requires": { - "is-accessor-descriptor": "^0.1.6", - "is-data-descriptor": "^0.1.4", - "kind-of": "^5.0.0" - } - }, - "is-extendable": { - "version": "0.1.1", - "dev": true - }, - "kind-of": { - "version": "5.1.0", - "dev": true - }, - "source-map": { - "version": "0.5.7", - "dev": true - } - } - }, - "snapdragon-node": { - "version": "2.1.1", - "dev": true, - "requires": { - "define-property": "^1.0.0", - "isobject": "^3.0.0", - "snapdragon-util": "^3.0.1" - }, - "dependencies": { - "define-property": { - "version": "1.0.0", - "dev": true, - "requires": { - "is-descriptor": "^1.0.0" - } - } - } - }, - "snapdragon-util": { - "version": "3.0.1", + "node_modules/slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", "dev": true, - "requires": { - "kind-of": "^3.2.0" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } + "engines": { + "node": ">=8" } }, - "source-map": { - "version": "0.6.1", + "node_modules/slashes": { + "version": "3.0.12", + "resolved": "https://registry.npmjs.org/slashes/-/slashes-3.0.12.tgz", + "integrity": "sha512-Q9VME8WyGkc7pJf6QEkj3wE+2CnvZMI+XJhwdTPR8Z/kWQRXi7boAWLDibRPyHRTUTPx5FaU7MsyrjI3yLB4HA==", "dev": true }, - "source-map-resolve": { - "version": "0.5.3", + "node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", "dev": true, - "requires": { - "atob": "^2.1.2", - "decode-uri-component": "^0.2.0", - "resolve-url": "^0.2.1", - "source-map-url": "^0.4.0", - "urix": "^0.1.0" + "engines": { + "node": ">=0.10.0" } }, - "source-map-support": { - "version": "0.5.21", + "node_modules/source-map-support": { + "version": "0.5.13", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.13.tgz", + "integrity": "sha512-SHSKFHadjVA5oR4PPqhtAVdcBWwRYVd6g6cAXnIbRiIwc2EhPrTuKUBdSLvlEKyIP3GCf89fltvcZiP9MMFA1w==", "dev": true, - "requires": { + "dependencies": { "buffer-from": "^1.0.0", "source-map": "^0.6.0" } }, - "source-map-url": { - "version": "0.4.1", - "dev": true - }, - "spdx-correct": { - "version": "3.1.1", - "dev": true, - "requires": { - "spdx-expression-parse": "^3.0.0", - "spdx-license-ids": "^3.0.0" - } - }, - "spdx-exceptions": { - "version": "2.3.0", + "node_modules/spdx-exceptions": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.5.0.tgz", + "integrity": "sha512-PiU42r+xO4UbUS1buo3LPJkjlO7430Xn5SVAhdpzzsPHsjbYVflnnFdATgabnLude+Cqu25p6N+g2lw/PFsa4w==", "dev": true }, - "spdx-expression-parse": { - "version": "3.0.1", + "node_modules/spdx-expression-parse": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-4.0.0.tgz", + "integrity": "sha512-Clya5JIij/7C6bRR22+tnGXbc4VKlibKSVj2iHvVeX5iMW7s1SIQlqu699JkODJJIhh/pUu8L0/VLh8xflD+LQ==", "dev": true, - "requires": { + "dependencies": { "spdx-exceptions": "^2.1.0", "spdx-license-ids": "^3.0.0" } }, - "spdx-license-ids": { - "version": "3.0.12", + "node_modules/spdx-license-ids": { + "version": "3.0.21", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.21.tgz", + "integrity": "sha512-Bvg/8F5XephndSK3JffaRqdT+gyhfqIPwDHpX80tJrF8QQRYMo8sNMeaZ2Dp5+jhwKnUmIOyFFQfHRkjJm5nXg==", "dev": true }, - "split-string": { - "version": "3.1.0", - "dev": true, - "requires": { - "extend-shallow": "^3.0.0" - } - }, - "sprintf-js": { + "node_modules/sprintf-js": { "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", "dev": true }, - "stack-utils": { + "node_modules/stack-utils": { "version": "2.0.6", + "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.6.tgz", + "integrity": "sha512-XlkWvfIm6RmsWtNJx+uqtKLS8eqFbxUg0ZzLXqY0caEy9l7hruX8IpiDnjsLavoBgqCCR71TqWO8MaXYheJ3RQ==", "dev": true, - "requires": { + "dependencies": { "escape-string-regexp": "^2.0.0" + }, + "engines": { + "node": ">=10" } }, - "static-extend": { - "version": "0.1.2", + "node_modules/stack-utils/node_modules/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, - "requires": { - "define-property": "^0.2.5", - "object-copy": "^0.1.0" - }, - "dependencies": { - "define-property": { - "version": "0.2.5", - "dev": true, - "requires": { - "is-descriptor": "^0.1.0" - } - }, - "is-accessor-descriptor": { - "version": "0.1.6", - "dev": true, - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "is-data-descriptor": { - "version": "0.1.4", - "dev": true, - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "is-descriptor": { - "version": "0.1.6", - "dev": true, - "requires": { - "is-accessor-descriptor": "^0.1.6", - "is-data-descriptor": "^0.1.4", - "kind-of": "^5.0.0" - } - }, - "kind-of": { - "version": "5.1.0", - "dev": true - } + "engines": { + "node": ">=8" } }, - "statuses": { + "node_modules/statuses": { "version": "2.0.1", - "peer": true + "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", + "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", + "peer": true, + "engines": { + "node": ">= 0.8" + } }, - "string-length": { + "node_modules/string-length": { "version": "4.0.2", + "resolved": "https://registry.npmjs.org/string-length/-/string-length-4.0.2.tgz", + "integrity": "sha512-+l6rNN5fYHNhZZy41RXsYptCjA2Igmq4EG7kZAYFQI1E1VTXarr6ZPXBg6eq7Y6eK4FEhY6AJlyuFIb/v/S0VQ==", "dev": true, - "requires": { + "dependencies": { "char-regex": "^1.0.2", "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" } }, - "string-width": { + "node_modules/string-width": { "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", "dev": true, - "requires": { + "dependencies": { "emoji-regex": "^8.0.0", "is-fullwidth-code-point": "^3.0.0", "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" } }, - "string.prototype.padend": { - "version": "3.1.4", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4" - } - }, - "string.prototype.trimend": { - "version": "1.0.6", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4" - } - }, - "string.prototype.trimstart": { - "version": "1.0.6", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4" - } - }, - "strip-ansi": { + "node_modules/strip-ansi": { "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", "dev": true, - "requires": { + "dependencies": { "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" } }, - "strip-bom": { + "node_modules/strip-bom": { "version": "4.0.0", - "dev": true - }, - "strip-eof": { - "version": "1.0.0", - "dev": true + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-4.0.0.tgz", + "integrity": "sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w==", + "dev": true, + "engines": { + "node": ">=8" + } }, - "strip-final-newline": { + "node_modules/strip-final-newline": { "version": "2.0.0", - "dev": true + "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz", + "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==", + "dev": true, + "engines": { + "node": ">=6" + } }, - "strip-indent": { - "version": "3.0.0", + "node_modules/strip-json-comments": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", + "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", "dev": true, - "requires": { - "min-indent": "^1.0.0" + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "supports-color": { + "node_modules/supports-color": { "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", "dev": true, - "requires": { + "dependencies": { "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" } }, - "supports-hyperlinks": { - "version": "2.3.0", + "node_modules/supports-preserve-symlinks-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", "dev": true, - "requires": { - "has-flag": "^4.0.0", - "supports-color": "^7.0.0" + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "supports-preserve-symlinks-flag": { - "version": "1.0.0", - "dev": true - }, - "symbol-tree": { - "version": "3.2.4", - "dev": true - }, - "terminal-link": { - "version": "2.1.1", + "node_modules/synckit": { + "version": "0.9.2", + "resolved": "https://registry.npmjs.org/synckit/-/synckit-0.9.2.tgz", + "integrity": "sha512-vrozgXDQwYO72vHjUb/HnFbQx1exDjoKzqx23aXEg2a9VIg2TSFZ8FmeZpTjUCFMYw7mpX4BE2SFu8wI7asYsw==", "dev": true, - "requires": { - "ansi-escapes": "^4.2.1", - "supports-hyperlinks": "^2.0.0" + "dependencies": { + "@pkgr/core": "^0.1.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": "^14.18.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/unts" } }, - "test-exclude": { + "node_modules/test-exclude": { "version": "6.0.0", + "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz", + "integrity": "sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==", "dev": true, - "requires": { + "dependencies": { "@istanbuljs/schema": "^0.1.2", "glob": "^7.1.4", "minimatch": "^3.0.4" + }, + "engines": { + "node": ">=8" } }, - "throat": { - "version": "5.0.0", - "dev": true - }, - "tmpl": { + "node_modules/tmpl": { "version": "1.0.5", + "resolved": "https://registry.npmjs.org/tmpl/-/tmpl-1.0.5.tgz", + "integrity": "sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw==", "dev": true }, - "to-fast-properties": { - "version": "2.0.0", - "dev": true - }, - "to-object-path": { - "version": "0.3.0", + "node_modules/to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", "dev": true, - "requires": { - "kind-of": "^3.0.2" - }, "dependencies": { - "kind-of": { - "version": "3.2.2", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "to-regex": { - "version": "3.0.2", - "dev": true, - "requires": { - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "regex-not": "^1.0.2", - "safe-regex": "^1.1.0" - } - }, - "to-regex-range": { - "version": "2.1.1", - "dev": true, - "requires": { - "is-number": "^3.0.0", - "repeat-string": "^1.6.1" + "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" } }, - "toidentifier": { + "node_modules/toidentifier": { "version": "1.0.1", - "peer": true - }, - "tough-cookie": { - "version": "4.1.2", - "dev": true, - "requires": { - "psl": "^1.1.33", - "punycode": "^2.1.1", - "universalify": "^0.2.0", - "url-parse": "^1.5.3" + "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz", + "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==", + "peer": true, + "engines": { + "node": ">=0.6" } }, - "tr46": { + "node_modules/ts-api-utils": { "version": "2.1.0", + "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-2.1.0.tgz", + "integrity": "sha512-CUgTZL1irw8u29bzrOD/nH85jqyc74D6SshFgujOIA7osm2Rz7dYH77agkx7H4FBNxDq7Cjf+IjaX/8zwFW+ZQ==", "dev": true, - "requires": { - "punycode": "^2.1.1" + "engines": { + "node": ">=18.12" + }, + "peerDependencies": { + "typescript": ">=4.8.4" } }, - "trim-newlines": { - "version": "3.0.1", - "dev": true - }, - "ts-jest": { - "version": "26.5.6", - "dev": true, - "requires": { - "bs-logger": "0.x", - "buffer-from": "1.x", - "fast-json-stable-stringify": "2.x", - "jest-util": "^26.1.0", - "json5": "2.x", - "lodash": "4.x", - "make-error": "1.x", - "mkdirp": "1.x", - "semver": "7.x", - "yargs-parser": "20.x" - }, - "dependencies": { - "lru-cache": { - "version": "6.0.0", - "dev": true, - "requires": { - "yallist": "^4.0.0" - } + "node_modules/ts-jest": { + "version": "29.2.6", + "resolved": "https://registry.npmjs.org/ts-jest/-/ts-jest-29.2.6.tgz", + "integrity": "sha512-yTNZVZqc8lSixm+QGVFcPe6+yj7+TWZwIesuOWvfcn4B9bz5x4NDzVCQQjOs7Hfouu36aEqfEbo9Qpo+gq8dDg==", + "dev": true, + "dependencies": { + "bs-logger": "^0.2.6", + "ejs": "^3.1.10", + "fast-json-stable-stringify": "^2.1.0", + "jest-util": "^29.0.0", + "json5": "^2.2.3", + "lodash.memoize": "^4.1.2", + "make-error": "^1.3.6", + "semver": "^7.7.1", + "yargs-parser": "^21.1.1" + }, + "bin": { + "ts-jest": "cli.js" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || ^18.0.0 || >=20.0.0" + }, + "peerDependencies": { + "@babel/core": ">=7.0.0-beta.0 <8", + "@jest/transform": "^29.0.0", + "@jest/types": "^29.0.0", + "babel-jest": "^29.0.0", + "jest": "^29.0.0", + "typescript": ">=4.3 <6" + }, + "peerDependenciesMeta": { + "@babel/core": { + "optional": true + }, + "@jest/transform": { + "optional": true }, - "semver": { - "version": "7.3.8", - "dev": true, - "requires": { - "lru-cache": "^6.0.0" - } + "@jest/types": { + "optional": true }, - "yallist": { - "version": "4.0.0", - "dev": true + "babel-jest": { + "optional": true }, - "yargs-parser": { - "version": "20.2.9", - "dev": true + "esbuild": { + "optional": true } } }, - "type-check": { - "version": "0.3.2", + "node_modules/tslib": { + "version": "2.8.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz", + "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==" + }, + "node_modules/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.1.2" + "dependencies": { + "prelude-ls": "^1.2.1" + }, + "engines": { + "node": ">= 0.8.0" } }, - "type-detect": { + "node_modules/type-detect": { "version": "4.0.8", - "dev": true + "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz", + "integrity": "sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==", + "dev": true, + "engines": { + "node": ">=4" + } }, - "type-fest": { + "node_modules/type-fest": { "version": "0.21.3", - "dev": true + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz", + "integrity": "sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } }, - "type-is": { + "node_modules/type-is": { "version": "1.6.18", + "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz", + "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==", "peer": true, - "requires": { + "dependencies": { "media-typer": "0.3.0", "mime-types": "~2.1.24" + }, + "engines": { + "node": ">= 0.6" } }, - "typed-array-length": { - "version": "1.0.4", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "for-each": "^0.3.3", - "is-typed-array": "^1.1.9" - } - }, - "typedarray-to-buffer": { - "version": "3.1.5", - "dev": true, - "requires": { - "is-typedarray": "^1.0.0" - } - }, - "typescript": { - "version": "4.9.4", - "dev": true - }, - "unbox-primitive": { - "version": "1.0.2", + "node_modules/typescript": { + "version": "5.8.2", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.8.2.tgz", + "integrity": "sha512-aJn6wq13/afZp/jT9QZmwEjDqqvSGp1VT5GVg+f/t6/oVyrgXM6BY1h9BRh/O5p3PlUPAe+WuiEZOmb/49RqoQ==", "dev": true, - "requires": { - "call-bind": "^1.0.2", - "has-bigints": "^1.0.2", - "has-symbols": "^1.0.3", - "which-boxed-primitive": "^1.0.2" + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=14.17" } }, - "union-value": { - "version": "1.0.1", + "node_modules/typescript-eslint": { + "version": "8.29.1", + "resolved": "https://registry.npmjs.org/typescript-eslint/-/typescript-eslint-8.29.1.tgz", + "integrity": "sha512-f8cDkvndhbQMPcysk6CUSGBWV+g1utqdn71P5YKwMumVMOG/5k7cHq0KyG4O52nB0oKS4aN2Tp5+wB4APJGC+w==", "dev": true, - "requires": { - "arr-union": "^3.1.0", - "get-value": "^2.0.6", - "is-extendable": "^0.1.1", - "set-value": "^2.0.1" - }, "dependencies": { - "is-extendable": { - "version": "0.1.1", - "dev": true - } + "@typescript-eslint/eslint-plugin": "8.29.1", + "@typescript-eslint/parser": "8.29.1", + "@typescript-eslint/utils": "8.29.1" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^8.57.0 || ^9.0.0", + "typescript": ">=4.8.4 <5.9.0" } }, - "universalify": { - "version": "0.2.0", + "node_modules/undici-types": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.21.0.tgz", + "integrity": "sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ==", "dev": true }, - "unpipe": { + "node_modules/unpipe": { "version": "1.0.0", - "peer": true + "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", + "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==", + "peer": true, + "engines": { + "node": ">= 0.8" + } }, - "unset-value": { - "version": "1.0.0", + "node_modules/update-browserslist-db": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.1.3.tgz", + "integrity": "sha512-UxhIZQ+QInVdunkDAaiazvvT/+fXL5Osr0JZlJulepYu6Jd7qJtDZjlur0emRlT71EN3ScPoE7gvsuIKKNavKw==", "dev": true, - "requires": { - "has-value": "^0.3.1", - "isobject": "^3.0.0" - }, - "dependencies": { - "has-value": { - "version": "0.3.1", - "dev": true, - "requires": { - "get-value": "^2.0.3", - "has-values": "^0.1.4", - "isobject": "^2.0.0" - }, - "dependencies": { - "isobject": { - "version": "2.1.0", - "dev": true, - "requires": { - "isarray": "1.0.0" - } - } - } + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" }, - "has-values": { - "version": "0.1.4", - "dev": true + { + "type": "github", + "url": "https://github.com/sponsors/ai" } + ], + "dependencies": { + "escalade": "^3.2.0", + "picocolors": "^1.1.1" + }, + "bin": { + "update-browserslist-db": "cli.js" + }, + "peerDependencies": { + "browserslist": ">= 4.21.0" } }, - "update-browserslist-db": { - "version": "1.0.10", - "dev": true, - "requires": { - "escalade": "^3.1.1", - "picocolors": "^1.0.0" - } - }, - "urix": { - "version": "0.1.0", - "dev": true - }, - "url-parse": { - "version": "1.5.10", + "node_modules/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": { - "querystringify": "^2.1.1", - "requires-port": "^1.0.0" + "dependencies": { + "punycode": "^2.1.0" } }, - "use": { - "version": "3.1.1", - "dev": true - }, - "utils-merge": { + "node_modules/utils-merge": { "version": "1.0.1", - "peer": true - }, - "uuid": { - "version": "8.3.2", - "dev": true, - "optional": true + "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", + "integrity": "sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==", + "peer": true, + "engines": { + "node": ">= 0.4.0" + } }, - "v8-to-istanbul": { - "version": "7.1.2", + "node_modules/v8-to-istanbul": { + "version": "9.3.0", + "resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-9.3.0.tgz", + "integrity": "sha512-kiGUalWN+rgBJ/1OHZsBtU4rXZOfj/7rKQxULKlIzwzQSvMJUUNgPwJEEh7gU6xEVxC0ahoOBvN2YI8GH6FNgA==", "dev": true, - "requires": { + "dependencies": { + "@jridgewell/trace-mapping": "^0.3.12", "@types/istanbul-lib-coverage": "^2.0.1", - "convert-source-map": "^1.6.0", - "source-map": "^0.7.3" + "convert-source-map": "^2.0.0" }, - "dependencies": { - "source-map": { - "version": "0.7.4", - "dev": true - } - } - }, - "validate-npm-package-license": { - "version": "3.0.4", - "dev": true, - "requires": { - "spdx-correct": "^3.0.0", - "spdx-expression-parse": "^3.0.0" + "engines": { + "node": ">=10.12.0" } }, - "vary": { + "node_modules/vary": { "version": "1.1.2", - "peer": true - }, - "w3c-hr-time": { - "version": "1.0.2", - "dev": true, - "requires": { - "browser-process-hrtime": "^1.0.0" - } - }, - "w3c-xmlserializer": { - "version": "2.0.0", - "dev": true, - "requires": { - "xml-name-validator": "^3.0.0" + "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", + "integrity": "sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==", + "peer": true, + "engines": { + "node": ">= 0.8" } }, - "walker": { + "node_modules/walker": { "version": "1.0.8", + "resolved": "https://registry.npmjs.org/walker/-/walker-1.0.8.tgz", + "integrity": "sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ==", "dev": true, - "requires": { + "dependencies": { "makeerror": "1.0.12" } }, - "webidl-conversions": { - "version": "6.1.0", - "dev": true - }, - "whatwg-encoding": { - "version": "1.0.5", - "dev": true, - "requires": { - "iconv-lite": "0.4.24" - } - }, - "whatwg-mimetype": { - "version": "2.3.0", - "dev": true - }, - "whatwg-url": { - "version": "8.7.0", - "dev": true, - "requires": { - "lodash": "^4.7.0", - "tr46": "^2.1.0", - "webidl-conversions": "^6.1.0" + "node_modules/web-streams-polyfill": { + "version": "4.0.0-beta.3", + "resolved": "https://registry.npmjs.org/web-streams-polyfill/-/web-streams-polyfill-4.0.0-beta.3.tgz", + "integrity": "sha512-QW95TCTaHmsYfHDybGMwO5IJIM93I/6vTRk+daHTWFPhwh+C8Cg7j7XyKrwrj8Ib6vYXe0ocYNrmzY4xAAN6ug==", + "engines": { + "node": ">= 14" } }, - "which": { + "node_modules/which": { "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", "dev": true, - "requires": { + "dependencies": { "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" } }, - "which-boxed-primitive": { - "version": "1.0.2", - "dev": true, - "requires": { - "is-bigint": "^1.0.1", - "is-boolean-object": "^1.1.0", - "is-number-object": "^1.0.4", - "is-string": "^1.0.5", - "is-symbol": "^1.0.3" - } - }, - "which-module": { - "version": "2.0.0", - "dev": true - }, - "which-typed-array": { - "version": "1.1.9", + "node_modules/word-wrap": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.5.tgz", + "integrity": "sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==", "dev": true, - "requires": { - "available-typed-arrays": "^1.0.5", - "call-bind": "^1.0.2", - "for-each": "^0.3.3", - "gopd": "^1.0.1", - "has-tostringtag": "^1.0.0", - "is-typed-array": "^1.1.10" + "engines": { + "node": ">=0.10.0" } }, - "word-wrap": { - "version": "1.2.3", - "dev": true - }, - "wrap-ansi": { - "version": "6.2.0", + "node_modules/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": { + "dependencies": { "ansi-styles": "^4.0.0", "string-width": "^4.1.0", "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" } }, - "wrappy": { + "node_modules/wrappy": { "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", "dev": true }, - "write-file-atomic": { - "version": "3.0.3", + "node_modules/write-file-atomic": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-4.0.2.tgz", + "integrity": "sha512-7KxauUdBmSdWnmpaGFg+ppNjKF8uNLry8LyzjauQDOVONfFLNKrKvQOxZ/VuTIcS/gge/YNahf5RIIQWTSarlg==", "dev": true, - "requires": { + "dependencies": { "imurmurhash": "^0.1.4", - "is-typedarray": "^1.0.0", - "signal-exit": "^3.0.2", - "typedarray-to-buffer": "^3.1.5" + "signal-exit": "^3.0.7" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "ws": { - "version": "7.5.9", + "node_modules/y18n": { + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", + "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", "dev": true, - "requires": {} - }, - "xml-name-validator": { - "version": "3.0.0", - "dev": true - }, - "xmlchars": { - "version": "2.2.0", - "dev": true - }, - "y18n": { - "version": "4.0.3", - "dev": true + "engines": { + "node": ">=10" + } }, - "yallist": { + "node_modules/yallist": { "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", "dev": true }, - "yargs": { - "version": "15.4.1", + "node_modules/yargs": { + "version": "17.7.2", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.2.tgz", + "integrity": "sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==", "dev": true, - "requires": { - "cliui": "^6.0.0", - "decamelize": "^1.2.0", - "find-up": "^4.1.0", - "get-caller-file": "^2.0.1", + "dependencies": { + "cliui": "^8.0.1", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", "require-directory": "^2.1.1", - "require-main-filename": "^2.0.0", - "set-blocking": "^2.0.0", - "string-width": "^4.2.0", - "which-module": "^2.0.0", - "y18n": "^4.0.0", - "yargs-parser": "^18.1.2" + "string-width": "^4.2.3", + "y18n": "^5.0.5", + "yargs-parser": "^21.1.1" + }, + "engines": { + "node": ">=12" } }, - "yargs-parser": { - "version": "18.1.3", + "node_modules/yargs-parser": { + "version": "21.1.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", + "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", "dev": true, - "requires": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" + "engines": { + "node": ">=12" + } + }, + "node_modules/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, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } } } diff --git a/plugins/arcgis/service/package.json b/plugins/arcgis/service/package.json index 791979903..bd7c40b26 100644 --- a/plugins/arcgis/service/package.json +++ b/plugins/arcgis/service/package.json @@ -1,6 +1,6 @@ { - "name": "@ngageoint/mage.arcgis", - "version": "1.0.0", + "name": "@ngageoint/mage.arcgis.service", + "version": "1.0.0-beta.1", "description": "A mage service plugin that synchronizes mage observations to a configured ArcGIS feature layer.", "main": "lib/index.js", "files": [ @@ -13,9 +13,9 @@ }, "scripts": { "build:tsc": "tsc -b src", - "build": "npm-run-all build:tsc", + "build": "tsc -b src", "test:run": "jest lib", - "test": "npm-run-all build test:run", + "test": "tsc -b src && jest lib", "clean": "rm -rf lib" }, "repository": { @@ -38,22 +38,26 @@ }, "homepage": "https://github.com/ngageoint/mage-server#readme", "dependencies": { + "@esri/arcgis-rest-feature-service": "4.1.0", + "@esri/arcgis-rest-request": "4.3.0", "@terraformer/arcgis": "2.1.2", - "@types/geojson": "^7946.0.7", - "form-data": "^4.0.0" + "form-data": "4.0.2" }, "peerDependencies": { - "@ngageoint/mage.service": "^6.2.0-beta", - "express": "^4.17.0" + "@ngageoint/mage.service": ">=6.3.0-beta.8", + "express": "4.21.2" }, "devDependencies": { - "@types/express": "^4.17.21", - "@types/jest": "^26.0.3", - "cpy-cli": "^3.1.1", - "jest": "^26.1.0", - "nock": "^12.0.3", - "npm-run-all": "^4.1.5", - "ts-jest": "^26.1.1", - "typescript": "^4.6.3" + "@eslint/js": "9.24.0", + "@types/express": "4.17.21", + "@types/geojson": "7946.0.16", + "@types/jest": "29.5.14", + "eslint": "9.24.0", + "eslint-plugin-jsdoc": "50.6.9", + "jest": "29.7.0", + "nock": "12.0.3", + "ts-jest": "29.2.6", + "typescript": "5.8.2", + "typescript-eslint": "8.29.1" } -} +} \ No newline at end of file diff --git a/plugins/arcgis/service/src/ArcGISService.ts b/plugins/arcgis/service/src/ArcGISService.ts new file mode 100644 index 000000000..42573ff92 --- /dev/null +++ b/plugins/arcgis/service/src/ArcGISService.ts @@ -0,0 +1,92 @@ +import { ArcGISIdentityManager } from '@esri/arcgis-rest-request' +import { FeatureServiceConfig } from './types/ArcGISConfig' +import { PluginStateRepository } from '@ngageoint/mage.service/lib/plugins.api' +import { ArcGISPluginConfig } from './types/ArcGISPluginConfig' + +/** + * Interface for managing ArcGIS identity and authentication. + */ +export interface ArcGISIdentityService { + /** + * Sign in to ArcGIS with the feature service credentials. + * @param {FeatureServiceConfig} featureService The feature service configuration. + * @returns {Promise} The ArcGIS identity manager. + */ + signin(featureService: FeatureServiceConfig): Promise + + /** + * Update the identity managers with latest tokens. + * @returns {Promise} + */ + updateIndentityManagers(): Promise +} + +/** + * Creates a new ArcGIS identity service. + * @param {PluginStateRepository} stateRepo The plugin state repository. + * @returns {ArcGISIdentityService} The ArcGIS identity service. + */ +export function createArcGISIdentityService( + stateRepo: PluginStateRepository +): ArcGISIdentityService { + const identityManagerCache: Map> = new Map(); + + return { + async signin(featureService: FeatureServiceConfig): Promise { + const cached = await identityManagerCache.get(featureService.url); + if (!cached) { + const identityManager = ArcGISIdentityManager.deserialize(featureService.identityManager); + const promise = identityManager.getUser().then(() => identityManager); + identityManagerCache.set(featureService.url, promise); + return promise; + } else { + return cached; + } + }, + + async updateIndentityManagers() { + const config = await stateRepo.get() as ArcGISPluginConfig | null; + for (const [url, persistedIdentityManagerPromise] of identityManagerCache) { + const persistedIdentityManager = await persistedIdentityManagerPromise; + const featureService: FeatureServiceConfig | undefined = config?.featureServices.find((service: FeatureServiceConfig) => service.url === url); + if (featureService && config) { + const identityManager = ArcGISIdentityManager.deserialize(featureService.identityManager); + if (identityManager.token !== persistedIdentityManager.token || identityManager.refreshToken !== persistedIdentityManager.refreshToken) { + featureService.identityManager = persistedIdentityManager.serialize(); + await stateRepo.patch(config as never); + } + } + } + } + }; +} + +/** + * Gets the portal URL for an ArcGIS feature service. + * @param {FeatureServiceConfig | string} featureService The feature service config or URL. + * @returns {string} The portal URL. + */ +export function getPortalUrl(featureService: FeatureServiceConfig | string): string { + const url = getFeatureServiceUrl(featureService) + return `https://${url.hostname}/arcgis/sharing/rest` +} + +/** + * Gets the server URL for an ArcGIS feature service. + * @param {FeatureServiceConfig | string} featureService The feature service config or URL. + * @returns {string} The server URL. + */ +export function getServerUrl(featureService: FeatureServiceConfig | string): string { + const url = getFeatureServiceUrl(featureService) + return `https://${url.hostname}/arcgis` +} + +/** + * Gets the URL object for an ArcGIS feature service. + * @param {FeatureServiceConfig | string} featureService The feature service config or URL string. + * @returns {URL} The feature service URL. + */ +export function getFeatureServiceUrl(featureService: FeatureServiceConfig | string): URL { + const url = typeof featureService === 'string' ? featureService : featureService.url; + return new URL(url); +} \ No newline at end of file diff --git a/plugins/arcgis/service/src/ArcObjects.ts b/plugins/arcgis/service/src/ArcObjects.ts index 367b00dc2..2d47a0745 100644 --- a/plugins/arcgis/service/src/ArcObjects.ts +++ b/plugins/arcgis/service/src/ArcObjects.ts @@ -1,5 +1,5 @@ -import { ArcObject } from './ArcObject' -import { ArcObservation } from './ArcObservation' +import { ArcObject } from './types/ArcObject' +import { ArcObservation } from './types/ArcObservation' /** * Observation Features Objects to send, update, or delete in ArcGIS. @@ -9,17 +9,17 @@ export class ArcObjects { /** * The features to send to the arc server. */ - objects: ArcObject[] + objects: ArcObject[]; /** * The observations to send to the arc server. */ - observations: ArcObservation[] + observations: ArcObservation[]; /** * The observations to delete from the arc server. */ - deletions: ArcObservation[] + deletions: ArcObservation[]; /** * Indicates if these arc objects have been created from observations in the database and this @@ -32,43 +32,43 @@ export class ArcObjects { * Constructor. */ constructor() { - this.objects = [] - this.observations = [] - this.deletions = [] + this.objects = []; + this.observations = []; + this.deletions = []; this.firstRun = false; } /** * Add an observation. - * @param observation The observation to add. + * @param {ArcObservation} observation The observation to add. */ add(observation: ArcObservation) { - this.observations.push(observation) - this.objects.push(observation.object) + this.observations.push(observation); + this.objects.push(observation.object); } /** * Count of observations. - * @return observation count. + * @returns {number} observation count. */ count(): number { - return this.objects.length + return this.objects.length; } /** * Is observations empty. - * @return true if empty. + * @returns {boolean} true if empty. */ isEmpty(): boolean { - return this.count() == 0 + return this.count() === 0 } /** * Clear the observations. */ clear() { - this.objects = [] - this.observations = [] + this.objects = []; + this.observations = []; } } \ No newline at end of file diff --git a/plugins/arcgis/service/src/EventDeletionHandler.ts b/plugins/arcgis/service/src/EventDeletionHandler.ts index 7e8181447..faa52fdfa 100644 --- a/plugins/arcgis/service/src/EventDeletionHandler.ts +++ b/plugins/arcgis/service/src/EventDeletionHandler.ts @@ -1,7 +1,7 @@ import { MageEventAttrs } from "@ngageoint/mage.service/lib/entities/events/entities.events"; import { FeatureLayerProcessor } from "./FeatureLayerProcessor"; -import { QueryObjectResult } from "./QueryObjectResult"; -import { ArcGISPluginConfig } from "./ArcGISPluginConfig"; +import { QueryObjectResult } from "./types/QueryObjectResult"; +import { ArcGISPluginConfig } from "./types/ArcGISPluginConfig"; /** * Class that handles deleting observations from an arc server for any deleted events. @@ -25,8 +25,8 @@ export class EventDeletionHandler { /** * Constructor. - * @param console Used to log messages. - * @param config The plugin configuration. + * @param {Console} console Used to log messages. + * @param {ArcGISPluginConfig} config The plugin configuration. */ constructor(console: Console, config: ArcGISPluginConfig) { this._currentEventIds = new Map(); @@ -34,11 +34,15 @@ export class EventDeletionHandler { this._config = config; } + public updateConfig(newConfig: ArcGISPluginConfig): void { + this._config = newConfig; + } + /** * - * @param activeEvents The current set of active events. - * @param layerProcessors The different layer processors currently syncing arc layers with mage data. - * @param firstRun True if this is the first run at startup. + * @param {MageEventAttrs[]} activeEvents The current set of active events. + * @param {FeatureLayerProcessor[]} layerProcessors The different layer processors currently syncing arc layers with mage data. + * @param {boolean} firstRun True if this is the first run at startup. */ checkForEventDeletion(activeEvents: MageEventAttrs[], layerProcessors: FeatureLayerProcessor[], firstRun: boolean) { if (firstRun) { @@ -47,22 +51,22 @@ export class EventDeletionHandler { } for (const layerProcessor of layerProcessors) { - const response: (result: QueryObjectResult) => void = (result) => { this.figureOutAllEventsOnArc(layerProcessor, result) } + const response: (result: QueryObjectResult) => void = (result) => { this.figureOutAllEventsOnArc(layerProcessor, result); }; if (this._config.eventIdField == null) { - layerProcessor.featureQuerier.queryObservations(response, [this._config.observationIdField], false) + layerProcessor.featureQuerier.queryObservations(response, [this._config.observationIdField], false); } else { - layerProcessor.featureQuerier.queryDistinct(response, this._config.eventIdField) + layerProcessor.featureQuerier.queryDistinct(response, this._config.eventIdField); } } } else { this._console.log('Checking for event deletions the previous known events are:'); - let deletedEvents = new Map(); + const deletedEvents = new Map(); this._currentEventIds.forEach((eventName: string, eventId: number) => { this._console.log(eventName + ' with id ' + eventId); deletedEvents.set(eventId, eventName); }); - this._console.log('Active events are:') + this._console.log('Active events are:'); for (const activeEvent of activeEvents) { this._console.log(activeEvent.name + ' with id ' + activeEvent.id); deletedEvents.delete(activeEvent.id); @@ -83,30 +87,30 @@ export class EventDeletionHandler { } /** - * Called when the query is finished. It goes through the results and gathers all even Ids currently stored + * Called when the query is finished. It goes through the results and gathers all event Ids currently stored * in the arc layer. It then will remove any events from the arc layer that do not exist. - * @param layerProcessor The feature layer processor. - * @param result The returned results. + * @param {FeatureLayerProcessor} layerProcessor The feature layer processor. + * @param {QueryObjectResult} result The returned results. */ figureOutAllEventsOnArc(layerProcessor: FeatureLayerProcessor, result: QueryObjectResult) { this._console.log('ArcGIS investigating all events for feature layer ' + layerProcessor.layerInfo.url); if (result.features != null) { - let arcEventIds = new Set(); + const arcEventIds = new Set(); for (const feature of result.features) { if (this._config.eventIdField == null) { - const value = feature.attributes[this._config.observationIdField] + const value = feature.attributes[this._config.observationIdField] as string; const splitIds = value.split(this._config.idSeparator) - if (splitIds.length == 2) { + if (splitIds.length === 2) { const eventId = parseInt(splitIds[1]) if (!isNaN(eventId)) { - arcEventIds.add(eventId) + arcEventIds.add(eventId); } } } else { - const value = feature.attributes[this._config.eventIdField] - arcEventIds.add(value) + const value = feature.attributes[this._config.eventIdField] as number; + arcEventIds.add(value); } } diff --git a/plugins/arcgis/service/src/EventLayerProcessorOrganizer.ts b/plugins/arcgis/service/src/EventLayerProcessorOrganizer.ts index 05d0d024b..a4217aad6 100644 --- a/plugins/arcgis/service/src/EventLayerProcessorOrganizer.ts +++ b/plugins/arcgis/service/src/EventLayerProcessorOrganizer.ts @@ -9,17 +9,17 @@ export class EventLayerProcessorOrganizer { /** * Organizes the events with the layer processors they are configured to sync. - * @param events The events to organize. - * @param layerProcessors The layer processors. - * @returns An array of events mapped to their processors. + * @param {MageEventAttrs[]} events The events to organize. + * @param {FeatureLayerProcessor[]} layerProcessors The layer processors. + * @returns {EventToLayerProcessor} An array of events mapped to their processors. */ organize(events: MageEventAttrs[], layerProcessors: FeatureLayerProcessor[]): EventToLayerProcessor[] { - let eventsAndProcessors = new Array; + const eventsAndProcessors = new Array; for (const event of events) { - let syncProcessors = new Array(); + const syncProcessors = new Array(); for (const layerProcessor of layerProcessors) { - if (layerProcessor.layerInfo.hasEvent(event.name)) { + if (layerProcessor.layerInfo.hasEvent(event.id)) { syncProcessors.push(layerProcessor); } } diff --git a/plugins/arcgis/service/src/EventToLayerProcessor.ts b/plugins/arcgis/service/src/EventToLayerProcessor.ts index bad24eb90..38c212724 100644 --- a/plugins/arcgis/service/src/EventToLayerProcessor.ts +++ b/plugins/arcgis/service/src/EventToLayerProcessor.ts @@ -13,12 +13,12 @@ export class EventToLayerProcessor { /** * The FeatureLayerProcessors the even is synching to. */ - featureLayerProcessors: FeatureLayerProcessor[] + featureLayerProcessors: FeatureLayerProcessor[]; /** * Constructor. - * @param event The MAGE event. - * @param featureLayerProcessors The FeatureLayerProcessors the even is synching to. + * @param {MageEventAttrs} event The MAGE event. + * @param {FeatureLayerProcessor[]} featureLayerProcessors The FeatureLayerProcessors the even is synching to. */ constructor(event: MageEventAttrs, featureLayerProcessors: FeatureLayerProcessor[]) { this.event = event; diff --git a/plugins/arcgis/service/src/EventTransform.spec.ts b/plugins/arcgis/service/src/EventTransform.spec.ts new file mode 100644 index 000000000..c9db481d6 --- /dev/null +++ b/plugins/arcgis/service/src/EventTransform.spec.ts @@ -0,0 +1,4 @@ +describe('event transform', () => { + + it('has a test', () => { }); +}); \ No newline at end of file diff --git a/plugins/arcgis/service/src/EventTransform.ts b/plugins/arcgis/service/src/EventTransform.ts index 33ec21729..fd729f783 100644 --- a/plugins/arcgis/service/src/EventTransform.ts +++ b/plugins/arcgis/service/src/EventTransform.ts @@ -1,4 +1,4 @@ -import { ArcGISPluginConfig } from "./ArcGISPluginConfig" +import { ArcGISPluginConfig } from "./types/ArcGISPluginConfig" import { MageEvent } from '@ngageoint/mage.service/lib/entities/events/entities.events' import { Form, FormId } from '@ngageoint/mage.service/lib/entities/events/entities.events.forms' @@ -10,75 +10,75 @@ export class EventTransform { /** * The MAGE event. */ - mageEvent: MageEvent | null + mageEvent: MageEvent | null; /** * Form field mappings between form ids and form fields. */ - formFields: Map = new Map() + formFields: Map = new Map(); /** - * Constructor. - * @param config The plugins configuration. - * @param mageEvent The MAGE Event. + * Creates a new instance of EventTransform. + * @param {ArcGISPluginConfig} config The plugins configuration. + * @param {MageEvent | null} mageEvent The MAGE Event. */ constructor(config: ArcGISPluginConfig, mageEvent: MageEvent | null) { - this.mageEvent = mageEvent - this.initialize(config) + this.mageEvent = mageEvent; + this.initialize(config); } /** * Initialize the event fields. - * @param config The plugins configuration. + * @param {ArcGISPluginConfig} config The plugins configuration. */ private initialize(config: ArcGISPluginConfig) { - const allFields = new Set() + const allFields = new Set(); - allFields.add(config.observationIdField) + allFields.add(config.observationIdField); if (config.eventIdField != null) { - allFields.add(config.eventIdField) + allFields.add(config.eventIdField); } if (config.eventNameField != null) { - allFields.add(config.eventNameField) + allFields.add(config.eventNameField); } if (config.userIdField != null) { - allFields.add(config.userIdField) + allFields.add(config.userIdField); } if (config.usernameField != null) { - allFields.add(config.usernameField) + allFields.add(config.usernameField); } if (config.userDisplayNameField != null) { - allFields.add(config.userDisplayNameField) + allFields.add(config.userDisplayNameField); } if (config.deviceIdField != null) { - allFields.add(config.deviceIdField) + allFields.add(config.deviceIdField); } if (config.createdAtField != null) { - allFields.add(config.createdAtField) + allFields.add(config.createdAtField); } if (config.lastModifiedField != null) { - allFields.add(config.lastModifiedField) + allFields.add(config.lastModifiedField); } if (config.geometryType != null) { - allFields.add(config.geometryType) + allFields.add(config.geometryType); } if (this.mageEvent != null) { - const formAttributes = this.configValue(config.fieldAttributes, this.mageEvent.name, this.mageEvent.id) + const formAttributes = this.configValue(config.fieldAttributes, this.mageEvent.name, this.mageEvent.id); // Initialize active form active fields for (const form of this.mageEvent.activeForms) { - this.initializeFields(form, allFields, formAttributes) + this.initializeFields(form, allFields, formAttributes); } // Initialize active form archived fields - this.initializeArchivedFields(allFields, formAttributes) + this.initializeArchivedFields(allFields, formAttributes); // Initialize archived form fields for (const form of this.mageEvent.archivedForms) { - this.initializeFields(form, allFields, formAttributes) + this.initializeFields(form, allFields, formAttributes); } } @@ -87,105 +87,105 @@ export class EventTransform { /** * Initialize the form fields. - * @param form The form. - * @param allFields Used to build and track all event fields. - * @param formAttributes Form attributes override mappings + * @param {Form} form The form. + * @param {Set} allFields Used to build and track all event fields. + * @param {any} formAttributes Form attributes override mappings */ private initializeFields(form: Form, allFields: Set, formAttributes: any) { - const fields = new FormFields(form) + const fields = new FormFields(form); - const fieldAttributes = this.configValue(formAttributes, fields.name, fields.id) + const fieldAttributes = this.configValue(formAttributes, fields.name, fields.id); for (const field of form.fields) { - let attribute = field.title + let attribute = field.title; if (form.archived || !field.archived) { - attribute = this.initializeField(attribute, fields.name, allFields, fieldAttributes) + attribute = this.initializeField(attribute, fields.name, allFields, fieldAttributes); } - fields.set(field.title, attribute, field.archived) + fields.set(field.title, attribute, field.archived); } - this.formFields.set(form.id, fields) + this.formFields.set(form.id, fields); } /** * Initialize the archived form fields. - * @param allFields Used to build and track all event fields. - * @param formAttributes Form attributes override mappings + * @param {Set} allFields Used to build and track all event fields. + * @param {any} formAttributes Form attributes override mappings */ private initializeArchivedFields(allFields: Set, formAttributes: any) { - for (const fields of this.formFields.values()) { + for (const fields of this.formFields.values()) { - const fieldAttributes = this.configValue(formAttributes, fields.name, fields.id) - - for (const field of fields.archivedFields) { - const attribute = this.initializeField(field, fields.name, allFields, fieldAttributes) - fields.set(field, attribute) - } + const fieldAttributes = this.configValue(formAttributes, fields.name, fields.id) + for (const field of fields.archivedFields) { + const attribute = this.initializeField(field, fields.name, allFields, fieldAttributes) + fields.set(field, attribute) } + } + } /** * Retrieve a config value by name or id. - * @param config The configuration. - * @param name Configuration name. - * @param id Configuration id. - * @return configuration value + * @param {any} config The configuration. + * @param {string} name Configuration name. + * @param {number} id Configuration id. + * @returns {any} configuration value */ private configValue(config: any, name: string, id: number): any { - let value = null + let value = null; if (config != null) { value = config[name] - if (value == null) { + if (!value) { value = config[id] } } - return value + return value; } /** * Initialize the form field. - * @param field The field. - * @param formName The form name. - * @param allFields Used to build and track all event fields. - * @param fieldAttributes Field attributes override mappings - * @return attribute name + * @param {string} field The field. + * @param {string} formName The form name. + * @param {Set} allFields Used to build and track all event fields. + * @param {any} fieldAttributes Field attributes override mappings + * @returns {string} attribute name */ private initializeField(field: string, formName: string, allFields: Set, fieldAttributes: any): string { - let attribute = null + let attribute = null; if (fieldAttributes != null) { - attribute = fieldAttributes[field] + attribute = fieldAttributes[field]; } if (attribute == null) { - attribute = field + attribute = field; if (allFields.has(attribute)) { - attribute = formName + '_' + attribute + attribute = formName + '_' + attribute; } } - allFields.add(attribute) + allFields.add(attribute); - return attribute + return attribute; } /** * Get the form fields for the form id. - * @param id The form id. - * @return The form fields. + * @param {number} id The form id. + * @returns {FormFields | undefined} The form fields. */ get(id: number): FormFields | undefined { - return this.formFields.get(id) + return this.formFields.get(id); } } @@ -198,67 +198,67 @@ export class FormFields { /** * Form name */ - name: string + name: string; /** * Form id */ - id: FormId + id: FormId; /** * Form archived flag */ - archived: boolean + archived: boolean; /** * Form field mapping between titles and arc atrribute fields. */ - fields: Map = new Map() + fields: Map = new Map(); /** * Archived form fields */ - archivedFields: Set = new Set() + archivedFields: Set = new Set(); /** - * Constructor - * @param form The form. + * Creates a new instance of FormFields + * @param {Form} form - The form. */ constructor(form: Form) { - this.name = form.name - this.id = form.id - this.archived = form.archived + this.name = form.name; + this.id = form.id; + this.archived = form.archived; } /** * Set the form field title to an arc attribute. - * @param title The form field title. - * @param attribute The arc attribute. - * @param archived Archived field flag. + * @param {string} title The form field title. + * @param {string} attribute The arc attribute. + * @param {boolean} [archived] Archived field flag. */ set(title: string, attribute: string, archived?: boolean) { - this.fields.set(title, attribute) + this.fields.set(title, attribute); if (archived) { - this.archivedFields.add(title) + this.archivedFields.add(title); } } /** * Get the arc attribute for the form field title. - * @param title The form field title. - * @return The arc attribute. + * @param {string} title The form field title. + * @returns {string | undefined} The arc attribute. */ get(title: string): string | undefined { - return this.fields.get(title) + return this.fields.get(title); } /** * Is the form field archived. - * @param title The form field title. - * @return True if archived. + * @param {string} title The form field title. + * @returns {boolean} True if archived. */ isArchived(title: string): boolean { - return this.fields.has(title) + return this.fields.has(title); } } diff --git a/plugins/arcgis/service/src/FeatureLayerProcessor.ts b/plugins/arcgis/service/src/FeatureLayerProcessor.ts index c5c82b478..dd7060a3a 100644 --- a/plugins/arcgis/service/src/FeatureLayerProcessor.ts +++ b/plugins/arcgis/service/src/FeatureLayerProcessor.ts @@ -1,11 +1,10 @@ -import { ArcGISPluginConfig } from "./ArcGISPluginConfig"; +import { ArcGISPluginConfig } from "./types/ArcGISPluginConfig"; import { ArcObjects } from "./ArcObjects"; import { FeatureQuerier } from "./FeatureQuerier"; import { LayerInfo } from "./LayerInfo"; -import { ObservationBinner } from "./ObservationBinner"; import { ObservationBins } from "./ObservationBins"; import { ObservationsSender } from "./ObservationsSender"; - +import { ArcGISIdentityManager } from "@esri/arcgis-rest-request"; /** * Processes new, updated, and deleted observations and sends the changes to a specific arc feature layer. */ @@ -16,11 +15,6 @@ export class FeatureLayerProcessor { */ layerInfo: LayerInfo; - /** - * Bins the observations into updates and adds. - */ - private _binner: ObservationBinner; - /** * Sends the observation adds or updates to the arc feature layer. */ @@ -34,72 +28,159 @@ export class FeatureLayerProcessor { /** * The last time we checked for new/modified observations. */ - lastTimeStamp: number; + lastTimeStamp: number = 0; + + /** + * The number of existence queries we are still waiting for. + */ + private _existenceQueryCounts: number = 0; + + /** + * Contains the results from checking if an observation exists on the server. + */ + private _pendingNewAndUpdates: ObservationBins; + + /** + * The plugins configuration. + */ + private _config: ArcGISPluginConfig; + + private _console: Console; + + private _addedObs: Set = new Set(); /** - * Constructor. - * @param layerInfo Information about the arc feature layer this class sends observations to. - * @param config Contains certain parameters that can be configured. - * @param console Used to log messages to the console. + * Creates a new instance of FeatureLayerProcessor. + * @param {LayerInfo} layerInfo - Information about the arc feature layer this class sends observations to. + * @param {ArcGISPluginConfig} config - Contains certain parameters that can be configured. + * @param {ArcGISIdentityManager} identityManager - ArcGIS identity manager for authentication. + * @param {Console} console - Used to log messages to the console. */ - constructor(layerInfo: LayerInfo, config: ArcGISPluginConfig, console: Console) { + constructor(layerInfo: LayerInfo, config: ArcGISPluginConfig, identityManager: ArcGISIdentityManager, console: Console) { this.layerInfo = layerInfo; - this.lastTimeStamp = 0; - this.featureQuerier = new FeatureQuerier(layerInfo, config, console); - this._binner = new ObservationBinner(layerInfo, this.featureQuerier, config); - this.sender = new ObservationsSender(layerInfo, config, console); + this._config = config; + this._console = console; + this.featureQuerier = new FeatureQuerier(layerInfo, config, identityManager, console); + this.sender = new ObservationsSender(layerInfo, config, identityManager, console); + this._pendingNewAndUpdates = new ObservationBins; } /** - * Indicates if this processor has pending updates still waiting to be processed. - * @returns True if it is still waiting for updates to be processed, false otherwise. + * Indicates if this binner has pending updates still waiting to be processed. + * @returns {boolean} True if it is still waiting for updates to be processed, false otherwise. */ hasPendingUpdates(): boolean { - return this._binner.hasPendingUpdates(); + return this._existenceQueryCounts > 0; } /** * Checks to see if there are any updates that need to be sent to the feature layer. */ - processPendingUpdates() { - const bins = this._binner.pendingUpdates(); - this.send(bins); + async processPendingUpdates() { + const newAndUpdates = new ObservationBins(); + for (let i = 0; i < this._pendingNewAndUpdates.adds.count(); i++) { + if (!this._addedObs.has(this._pendingNewAndUpdates.adds.observations[i].id)) { + newAndUpdates.adds.add(this._pendingNewAndUpdates.adds.observations[i]); + this._addedObs.add(this._pendingNewAndUpdates.adds.observations[i].id); + } + } + for (let i = 0; i < this._pendingNewAndUpdates.updates.count(); i++) { + newAndUpdates.updates.add(this._pendingNewAndUpdates.updates.observations[i]); + } + this._pendingNewAndUpdates.clear(); + + await this.send(newAndUpdates); } /** * Goes through each observation and figures out if the geometry type matches the arc feature layer. * If so it then separates the adds from the updates and sends them to the arc feature layer. - * @param observations + * @param {ArcObjects} observations - The observations to process. */ - processArcObjects(observations: ArcObjects) { + async processArcObjects(observations: ArcObjects) { const arcObjectsForLayer = new ArcObjects(); arcObjectsForLayer.firstRun = observations.firstRun; for (const arcObservation of observations.observations) { - if (this.layerInfo.geometryType == arcObservation.esriGeometryType) { + if (this.layerInfo.geometryType === arcObservation.esriGeometryType) { arcObjectsForLayer.add(arcObservation); } } - const bins = this._binner.sortEmOut(arcObjectsForLayer); - this.send(bins); + const bins = new ObservationBins(); + + for (const arcObservation of arcObjectsForLayer.observations) { + // TODO: Would probably want a better way to determine which observations need to be updated in arcgis + if (arcObjectsForLayer.firstRun || arcObservation.lastModified !== arcObservation.createdAt) { + bins.updates.add(arcObservation); + } else if (!this._addedObs.has(arcObservation.id)) { + bins.adds.add(arcObservation); + this._addedObs.add(arcObservation.id); + } + } + + for (const arcObservation of bins.updates.observations) { + this._existenceQueryCounts++; + this.featureQuerier.queryObservation(arcObservation.id, (result) => { + this._existenceQueryCounts--; + if (result.features != null && result.features.length > 0) { + this._addedObs.add(arcObservation.id); + const arcAttributes = result.features[0].attributes; + + let lastEdited = null; + if (this._config.lastEditedDateField != null) { + lastEdited = Number(arcAttributes[this._config.lastEditedDateField]); + } + if (!lastEdited || lastEdited < arcObservation.lastModified) { + + const objectIdField = result.objectIdFieldName; + const updateAttributes = arcObservation.object.attributes; + + updateAttributes[objectIdField] = arcAttributes[objectIdField]; + + // Determine if any editable attribute values should be deleted + const lowerCaseUpdateAttributes = Object.fromEntries( + Object.entries(updateAttributes).map(([k, v]) => [k.toLowerCase(), v]) + ); + for (const arcAttribute of Object.keys(arcAttributes)) { + if (this.layerInfo.isEditable(arcAttribute) + && arcAttributes[arcAttribute] != null + && lowerCaseUpdateAttributes[arcAttribute.toLowerCase()] == null) { + updateAttributes[arcAttribute] = null; + } + } + + this._pendingNewAndUpdates.updates.add(arcObservation); + } + + } else { + this._pendingNewAndUpdates.adds.add(arcObservation); + } + }, undefined, false); + } + bins.updates = this._pendingNewAndUpdates.updates; + + await this.send(bins); for (const arcObservation of observations.deletions) { - if (this.layerInfo.geometryType == arcObservation.esriGeometryType) { - this.sender.sendDelete(arcObservation.id) + if (this.layerInfo.geometryType === arcObservation.esriGeometryType && this._addedObs.has(arcObservation.id)) { + await this.sender.sendDelete(arcObservation.id); + this._addedObs.delete(arcObservation.id); } } } /** * Sends all the observations to the arc server. - * @param bins The observations to send. + * @param {ObservationBins} bins - The observations to send. */ - private send(bins: ObservationBins) { + private async send(bins: ObservationBins) { + const promises = []; if (!bins.adds.isEmpty()) { - this.sender.sendAdds(bins.adds); + promises.push(this.sender.sendAdds(bins.adds)); } if (!bins.updates.isEmpty()) { - this.sender.sendUpdates(bins.updates); + promises.push(this.sender.sendUpdates(bins.updates)); } + await Promise.all(promises); } } \ No newline at end of file diff --git a/plugins/arcgis/service/src/FeatureQuerier.ts b/plugins/arcgis/service/src/FeatureQuerier.ts index b32402c5c..b577a3b33 100644 --- a/plugins/arcgis/service/src/FeatureQuerier.ts +++ b/plugins/arcgis/service/src/FeatureQuerier.ts @@ -1,22 +1,18 @@ -import { ArcGISPluginConfig } from "./ArcGISPluginConfig"; -import { HttpClient } from "./HttpClient"; +import { ArcGISPluginConfig } from "./types/ArcGISPluginConfig"; import { LayerInfo } from "./LayerInfo"; -import { QueryObjectResult } from "./QueryObjectResult"; +import { QueryObjectResult } from "./types/QueryObjectResult"; +import { ArcGISIdentityManager } from "@esri/arcgis-rest-request"; +import { queryFeatures } from '@esri/arcgis-rest-feature-service'; /** * Performs various queries on observations for a specific arc feature layer. */ export class FeatureQuerier { - /** - * Used to query the arc server to figure out if an observation exists. - */ - private _httpClient: HttpClient; - /** * The query url to find out if an observations exists on the server. */ - private _url: string; + private _url: URL; /** * Used to log to console. @@ -29,100 +25,78 @@ export class FeatureQuerier { private _config: ArcGISPluginConfig; /** - * Constructor. - * @param layerInfo The layer info. - * @param config The plugins configuration. - * @param console Used to log to the console. + * An instance of `ArcGISIdentityManager` used to manage authentication and identity for ArcGIS services. + * This private member handles the authentication process, ensuring that requests to ArcGIS services + * are properly authenticated using the credentials provided. + */ + private _identityManager: ArcGISIdentityManager; + + /** + * Creates a new instance of FeatureQuerier. + * @param {LayerInfo} layerInfo - Information about the ArcGIS feature layer. + * @param {ArcGISPluginConfig} config - Configuration settings for the ArcGIS plugin. + * @param {ArcGISIdentityManager} identityManager - ArcGIS identity manager for authentication. + * @param {Console} console - Console instance for logging. */ - constructor(layerInfo: LayerInfo, config: ArcGISPluginConfig, console: Console) { - this._httpClient = new HttpClient(console, layerInfo.token); - this._url = layerInfo.url + '/query?where='; + constructor(layerInfo: LayerInfo, config: ArcGISPluginConfig, identityManager: ArcGISIdentityManager, console: Console) { + this._identityManager = identityManager; + this._url = new URL(layerInfo.url); this._console = console; this._config = config; } /** * Queries for an observation by id. - * @param observationId The id of the observation to query for on the arc feature layer. - * @param response The function called once the response is received. - * @param fields fields to query, all fields if not provided - * @param geometry query the geometry, default is true + * @param {string} observationId - The id of the observation to query for on the arc feature layer. + * @param {function(QueryObjectResult): void} response - Callback function called with the query result. + * @param {string[]} [fields] - Optional array of field names to query. If not provided, all fields are queried. + * @param {boolean} [geometry] - Optional flag to include geometry in the query. Defaults to true. */ - queryObservation(observationId: string, response: (result: QueryObjectResult) => void, fields?: string[], geometry?: boolean) { - let queryUrl = this._url + this._config.observationIdField - if (this._config.eventIdField == null) { - queryUrl += ' LIKE \'' + observationId + this._config.idSeparator + '%\'' - } else { - queryUrl += '=\'' + observationId + '\'' - } - queryUrl += this.outFields(fields) + this.returnGeometry(geometry) - this._httpClient.sendGetHandleResponse(queryUrl, (chunk) => { - this._console.info('ArcGIS response for ' + queryUrl + ' ' + chunk) - const result = JSON.parse(chunk) as QueryObjectResult - response(result) - }); + async queryObservation(observationId: string, response: (result: QueryObjectResult) => void, fields?: string[], geometry?: boolean) { + const where = !this._config.eventIdField + ? `${this._config.observationIdField} LIKE '${observationId}${this._config.idSeparator}%'` + : `${this._config.observationIdField} = '${observationId}'`; + this._console.info('ArcGIS query observation: ' + this._url.toString() + where); + await queryFeatures({ + url: this._url.toString(), + authentication: this._identityManager, + where, + returnGeometry: geometry, + outFields: fields?.length ? fields : '*' + }).then((queryResponse) => response(queryResponse as QueryObjectResult)).catch((error) => this._console.error('Error in FeatureQuerier.queryObservation :: ' + error)); } /** * Queries all observations. - * @param response Function called once query is complete. - * @param fields fields to query, all fields if not provided - * @param geometry query the geometry, default is true + * @param {function(QueryObjectResult): void} response - Callback function called with the query result. + * @param {string[]} [fields] - Optional array of field names to query. If not provided, all fields are queried. + * @param {boolean} [geometry] - Optional flag to include geometry in the query. Defaults to true. */ - queryObservations(response: (result: QueryObjectResult) => void, fields?: string[], geometry?: boolean) { - let queryUrl = this._url + this._config.observationIdField + ' IS NOT NULL' + this.outFields(fields) + this.returnGeometry(geometry) - this._httpClient.sendGetHandleResponse(queryUrl, (chunk) => { - this._console.info('ArcGIS response for ' + queryUrl + ' ' + chunk) - const result = JSON.parse(chunk) as QueryObjectResult - response(result) - }); + async queryObservations(response: (result: QueryObjectResult) => void, fields?: string[], geometry?: boolean) { + this._console.info('ArcGIS query observation: ' + this._url.toString()); + await queryFeatures({ + url: this._url.toString(), + authentication: this._identityManager, + where: `${this._config.observationIdField} IS NOT NULL`, + returnGeometry: geometry, + outFields: fields?.length ? fields : '*' + }).then((queryResponse) => response(queryResponse as QueryObjectResult)).catch((error) => this._console.error('Error in FeatureQuerier.queryObservations :: ' + error)); } /** - * Queries for distinct non null observation field values - * @param response Function called once query is complete. - * @param field field to query + * Queries for distinct non-null values in a specified field. + * @param {function(QueryObjectResult): void} response - Callback function called with the query result. + * @param {string} field - The field name to query for distinct values. */ - queryDistinct(response: (result: QueryObjectResult) => void, field: string) { - let queryUrl = this._url + field + ' IS NOT NULL&returnDistinctValues=true' + this.outFields([field]) + this.returnGeometry(false) - this._httpClient.sendGetHandleResponse(queryUrl, (chunk) => { - this._console.info('ArcGIS response for ' + queryUrl + ' ' + chunk) - const result = JSON.parse(chunk) as QueryObjectResult - response(result) - }); + async queryDistinct(response: (result: QueryObjectResult) => void, field: string) { + this._console.info('ArcGIS query observation: ' + this._url.toString()); + await queryFeatures({ + url: this._url.toString(), + authentication: this._identityManager, + where: `${field} IS NOT NULL`, + returnGeometry: false, + outFields: field ? [field] : '*', + returnDistinctValues: true + }).then((queryResponse) => response(queryResponse as QueryObjectResult)).catch((error) => this._console.error('Error in FeatureQuerier.queryDistinct :: ' + error)); } - - /** - * Build the out fields query parameter - * @param fields query fields - * @returns out fields - */ - private outFields(fields?: string[]): string { - let outFields = '&outFields=' - if (fields != null && fields.length > 0) { - for (let i = 0; i < fields.length; i++) { - if (i > 0) { - outFields += "," - } - outFields += fields[i] - } - } else{ - outFields += '*' - } - return outFields - } - - /** - * Build the return geometry query parameter - * @param fields query fields - * @returns out fields - */ - private returnGeometry(geometry?: boolean): string { - let returnGeometry = '' - if (geometry != null && !geometry) { - returnGeometry = '&returnGeometry=false' - } - return returnGeometry - } - } \ No newline at end of file diff --git a/plugins/arcgis/service/src/FeatureService.ts b/plugins/arcgis/service/src/FeatureService.ts index d9162430b..33f282977 100644 --- a/plugins/arcgis/service/src/FeatureService.ts +++ b/plugins/arcgis/service/src/FeatureService.ts @@ -1,83 +1,127 @@ -import { LayerInfoResult} from "./LayerInfoResult"; -import { FeatureServiceResult} from "./FeatureServiceResult"; -import { HttpClient } from "./HttpClient"; -import { FeatureServiceConfig, FeatureLayerConfig } from "./ArcGISConfig"; +import { ArcGISIdentityManager } from "@esri/arcgis-rest-request" +import { getLayer, getService, queryFeatures, applyEdits } from "@esri/arcgis-rest-feature-service"; +import { FeatureServiceConfig } from "./types/ArcGISConfig"; + +// TODO: Migrate FeatureQuerier to use this class /** * Queries arc feature services and layers. */ export class FeatureService { - /** - * Used to make the get request about the feature layer. - */ - private _httpClient: HttpClient; + private _console: Console; + private _config: FeatureServiceConfig; + private _identityManager: ArcGISIdentityManager; + + constructor(console: Console, config: FeatureServiceConfig, identityManager: ArcGISIdentityManager) { + this._config = config; + this._identityManager = identityManager; + this._console = console; + } + + /** + * Gets features from the feature service using the given where clause. + * @param {string} whereClause - The where clause to filter the features. + * @returns {Promise} - A promise that resolves to the query result. + */ + async getFeatures(whereClause: string): Promise { + const queryParams = { + url: this._config.url, + where: whereClause, + authentication: this._identityManager + }; - /** - * Used to log messages. - */ - private _console: Console; + this._console.info('Querying feature service with params: ', queryParams); - /** - * Constructor. - * @param console Used to log messages. - * @param token The access token. - */ - constructor(console: Console, token?: string) { - this._httpClient = new HttpClient(console, token); - this._console = console; + return await queryFeatures(queryParams).catch((error) => { + this._console.error('Error querying feature service:', error); + throw new Error(`Error querying feature service: ${error}`); + }); + } + + /** + * Gets a specific layer from the feature service. + * @param {string | number} layerId - The ID of the layer to query. + * @returns {Promise} - A promise that resolves to the layer info. + */ + async getLayer(layerId: string | number): Promise { + const url = `${this._config.url}/${layerId}`; + try { + return await getLayer({ + url, + authentication: this._identityManager + }); + } catch (error) { + throw new Error(`Error querying layer info: ${error}`); } + } - /** - * Queries an arc feature service. - * @param url The url to the arc feature layer. - * @param callback Function to call once response has been received and parsed. - */ - queryFeatureService(url: string, callback: (featureService: FeatureServiceResult) => void) { - this._httpClient.sendGetHandleResponse(url, this.parseFeatureService(url, callback)) + async getService(): Promise { + try { + return await getService({ + url: this._config.url, + authentication: this._identityManager, + }); + } catch (error) { + throw new Error(`Error getting service: ${error}`); } + } - /** - * Parses the response from the feature service request and sends to the callback. - * @param url The url to the arc feature layer. - * @param callback The callback to call and send the feature service to. - */ - private parseFeatureService(url: string, callback: (featureService: FeatureServiceResult) => void) { - return (chunk: any) => { - this._console.log('Feature Service. url: ' + url + ', response: ' + chunk) - try { - const service = JSON.parse(chunk) as FeatureServiceResult - callback(service) - } catch(e) { - this._console.error(e) - } - } + // Add feature using applyEdits + async addFeature(feature: any): Promise { + try { + const response = await applyEdits({ + url: this._config.url, + adds: [feature], + authentication: this._identityManager, + }); + return response; + } catch (error) { + throw new Error(`Error adding feature: ${error}`); } + } - /** - * Queries an arc feature layer to get info on the layer. - * @param url The url to the arc feature layer. - * @param infoCallback Function to call once response has been received and parsed. - */ - queryLayerInfo(url: string, infoCallback: (layerInfo: LayerInfoResult) => void) { - this._httpClient.sendGetHandleResponse(url, this.parseLayerInfo(url, infoCallback)); + // Update feature using applyEdits + async updateFeature(feature: any): Promise { + try { + const response = await applyEdits({ + url: this._config.url, + updates: [feature], + authentication: this._identityManager, + }); + return response; + } catch (error) { + throw new Error(`Error updating feature: ${error}`); } + } - /** - * Parses the response from the request and sends the layer info to the callback. - * @param url The url to the feature layer. - * @param infoCallback The callback to call and send the layer info to. - */ - private parseLayerInfo(url: string, infoCallback: (layerInfo: LayerInfoResult) => void) { - return (chunk: any) => { - this._console.log('Query Layer. url: ' + url + ', response: ' + chunk) - try { - const layerInfo = JSON.parse(chunk) as LayerInfoResult - infoCallback(layerInfo) - } catch(e) { - this._console.error(e) - } - } + // Delete feature using applyEdits + async deleteFeature(objectId: string | number): Promise { + try { + const response = await applyEdits({ + url: this._config.url, + deletes: [typeof objectId === 'number' ? objectId : parseInt(objectId as string, 10)], + authentication: this._identityManager, + }); + return response; + } catch (error) { + throw new Error(`Error deleting feature: ${error}`); } + } -} \ No newline at end of file + // Batch operation using applyEdits + async applyEditsBatch(edits: { add?: any[], update?: any[], delete?: any[] }): Promise { + try { + const response = await applyEdits({ + url: this._config.url, + adds: edits.add || [], + updates: edits.update || [], + deletes: edits.delete || [], + authentication: this._identityManager, + }); + return response; + } catch (error) { + throw new Error(`Error applying edits: ${error}`); + } + } +} diff --git a/plugins/arcgis/service/src/FeatureServiceAdmin.ts b/plugins/arcgis/service/src/FeatureServiceAdmin.ts index aa497856c..1f24e7297 100644 --- a/plugins/arcgis/service/src/FeatureServiceAdmin.ts +++ b/plugins/arcgis/service/src/FeatureServiceAdmin.ts @@ -1,531 +1,500 @@ -import { ArcGISPluginConfig } from "./ArcGISPluginConfig" -import { FeatureServiceConfig, FeatureLayerConfig } from "./ArcGISConfig" -import { MageEvent, MageEventRepository } from '@ngageoint/mage.service/lib/entities/events/entities.events' -import { Layer, Field } from "./AddLayersRequest" -import { Form, FormField, FormFieldType, FormId } from '@ngageoint/mage.service/lib/entities/events/entities.events.forms' -import { ObservationsTransformer } from "./ObservationsTransformer" -import { HttpClient } from './HttpClient' -import { LayerInfoResult, LayerField } from "./LayerInfoResult" -import FormData from 'form-data' +import { ArcGISPluginConfig } from "./types/ArcGISPluginConfig"; +import { FeatureServiceConfig, FeatureLayerConfig } from "./types/ArcGISConfig"; +import { MageEvent, MageEventId, MageEventRepository } from '@ngageoint/mage.service/lib/entities/events/entities.events'; +import { Layer, Field } from "./types/AddLayersRequest"; +import { Form, FormField, FormFieldType, FormId } from '@ngageoint/mage.service/lib/entities/events/entities.events.forms'; +import { ObservationsTransformer } from "./ObservationsTransformer"; +import { LayerInfoResult, LayerField } from "./types/LayerInfoResult"; +import FormData from 'form-data'; +import { request } from '@esri/arcgis-rest-request'; +import { ArcGISIdentityService } from "./ArcGISService"; /** * Administers hosted feature services such as layer creation and updates. */ export class FeatureServiceAdmin { - - /** - * ArcGIS configuration. - */ - private _config: ArcGISPluginConfig - - /** - * Used to log to the console. - */ - private _console: Console - - /** - * Constructor. - * @param config The plugins configuration. - * @param console Used to log to the console. - */ - constructor(config: ArcGISPluginConfig, console: Console) { - this._config = config - this._console = console - } - - /** - * Create the layer - * @param service feature service - * @param featureLayer feature layer - * @param nextId next service layer id - * @param eventRepo event repository - * @returns layer id - */ - async createLayer(service: FeatureServiceConfig, featureLayer: FeatureLayerConfig, nextId: number, eventRepo: MageEventRepository): Promise { - - const layer = { type: 'Feature Layer' } as Layer - - const layerIdentifier = featureLayer.layer - const layerIdentifierNumber = Number(layerIdentifier) - if (isNaN(layerIdentifierNumber)) { - layer.name = String(layerIdentifier) - layer.id = nextId - } else { - layer.id = layerIdentifierNumber - } - - const events = await this.layerEvents(featureLayer, eventRepo) - - if (layer.name == null) { - layer.name = this.layerName(events) - } - - if (featureLayer.geometryType != null) { - layer.geometryType = featureLayer.geometryType - } else { - layer.geometryType = 'esriGeometryPoint' - } - - layer.fields = this.fields(events) - - // TODO What other layer properties are needed or required? - // https://developers.arcgis.com/rest/services-reference/online/add-to-definition-feature-service-.htm#GUID-63F2BD08-DCF4-485D-A3E6-C7116E17DDD8 - - this.create(service, layer) - - return layer.id - } - - /** - * Update the layer fields - * @param service feature service - * @param featureLayer feature layer - * @param layerInfo layer info - * @param eventRepo event repository - */ - async updateLayer(service: FeatureServiceConfig, featureLayer: FeatureLayerConfig, layerInfo: LayerInfoResult, eventRepo: MageEventRepository) { - - const events = await this.layerEvents(featureLayer, eventRepo) - - const eventFields = this.fields(events) - const layerFields = layerInfo.fields - - if (featureLayer.addFields) { - - const layerFieldSet = new Set() - for (const field of layerFields) { - layerFieldSet.add(field.name) - } - - const addFields = [] - for (const field of eventFields) { - if (!layerFieldSet.has(field.name)) { - addFields.push(field) - const layerField = {} as LayerField - layerField.name = field.name - layerField.editable = true - layerFields.push(layerField) - } - } - - if (addFields.length > 0) { - this.addFields(service, featureLayer, addFields) - } - - } - - if (featureLayer.deleteFields) { - - const eventFieldSet = new Set() - for (const field of eventFields) { - eventFieldSet.add(field.name) - } - - const deleteFields = [] - const remainingFields = [] - for (const field of layerFields) { - if (field.editable && !eventFieldSet.has(field.name)) { - deleteFields.push(field) - } else { - remainingFields.push(field) - } - } - - if (deleteFields.length > 0) { - layerInfo.fields = remainingFields - this.deleteFields(service, featureLayer, deleteFields) - } - - } - - } - - /** - * Get the layer events - * @param layer feature layer - * @param eventRepo event repository - * @returns layer events - */ - private async layerEvents(layer: FeatureLayerConfig, eventRepo: MageEventRepository): Promise { - - const layerEvents: Set = new Set() - if (layer.events != null) { - for (const layerEvent of layer.events) { - layerEvents.add(layerEvent) - } - } - - let mageEvents - if (layerEvents.size > 0) { - mageEvents = await eventRepo.findAll() - } else { - mageEvents = await eventRepo.findActiveEvents() - } - - const events: MageEvent[] = [] - for (const mageEvent of mageEvents) { - if (layerEvents.size == 0 || layerEvents.has(mageEvent.name) || layerEvents.has(mageEvent.id)) { - const event = await eventRepo.findById(mageEvent.id) - if (event != null) { - events.push(event) - } - } - } - - return events - } - - /** - * Create a layer name - * @param events layer events - * @returns layer name - */ - private layerName(events: MageEvent[]): string { - let layerName = '' - for (let i = 0; i < events.length; i++) { - if (i > 0) { - layerName += ', ' - } - layerName += events[i].name - } - return layerName - } - - /** - * Builder the layer fields - * @param events layer events - * @returns fields - */ - private fields(events: MageEvent[]): Field[] { - - const fields: Field[] = [] - - fields.push(this.createTextField(this._config.observationIdField, false)) - if (this._config.eventIdField != null) { - fields.push(this.createIntegerField(this._config.eventIdField, false)) - } - if (this._config.eventNameField != null) { - fields.push(this.createTextField(this._config.eventNameField, true)) - } - if (this._config.userIdField != null) { - fields.push(this.createTextField(this._config.userIdField, true)) - } - if (this._config.usernameField != null) { - fields.push(this.createTextField(this._config.usernameField, true)) - } - if (this._config.userDisplayNameField != null) { - fields.push(this.createTextField(this._config.userDisplayNameField, true)) - } - if (this._config.deviceIdField != null) { - fields.push(this.createTextField(this._config.deviceIdField, true)) - } - if (this._config.createdAtField != null) { - fields.push(this.createDateTimeField(this._config.createdAtField, true)) - } - if (this._config.lastModifiedField != null) { - fields.push(this.createDateTimeField(this._config.lastModifiedField, true)) - } - if (this._config.geometryType != null) { - fields.push(this.createTextField(this._config.geometryType, true)) - } - - const fieldNames = new Set() - for (const field of fields) { - fieldNames.add(field.name) - } - - this.eventsFields(events, fields, fieldNames) - - return fields - } - - /** - * Create a field - * @param name field name - * @param type form field type - * @param nullable nullable flag - * @param integer integer flag when numeric - * @returns field - */ - private createField(name: string, type: FormFieldType, nullable: boolean, integer?: boolean): Field { - let field = this.initField(type, integer) as Field - if (field != null) { - field.name = ObservationsTransformer.replaceSpaces(name) - field.alias = field.name - field.nullable = nullable - field.editable = true - } - return field - } - - /** - * Create a text field - * @param name field name - * @param nullable nullable flag - * @returns field - */ - private createTextField(name: string, nullable: boolean): Field { - return this.createField(name, FormFieldType.Text, nullable) - } - - /** - * Create a numeric field - * @param name field name - * @param nullable nullable flag - * @param integer integer flag - * @returns field - */ - private createNumericField(name: string, nullable: boolean, integer?: boolean): Field { - return this.createField(name, FormFieldType.Numeric, nullable, integer) - } - - /** - * Create an integer field - * @param name field name - * @param nullable nullable flag - * @returns field - */ - private createIntegerField(name: string, nullable: boolean): Field { - return this.createNumericField(name, nullable, true) - } - - /** - * Create a date time field - * @param name field name - * @param nullable nullable flag - * @returns field - */ - private createDateTimeField(name: string, nullable: boolean): Field { - return this.createField(name, FormFieldType.DateTime, nullable) - } - - /** - * Build fields from the layer events - * @param events layer events - * @param fields created fields - * @param fieldNames set of all field names - */ - private eventsFields(events: MageEvent[], fields: Field[], fieldNames: Set) { - - const forms = new Set() - - for (const event of events) { - this.eventFields(event, forms, fields, fieldNames) - } - - } - - /** - * Build fields from the layer event - * @param event layer event - * @param forms set of processed forms - * @param fields created fields - * @param fieldNames set of all field names - */ - private eventFields(event: MageEvent, forms: Set, fields: Field[], fieldNames: Set) { - - for (const form of event.activeForms) { - - if (!forms.has(form.id)) { - - forms.add(form.id) - - for (const formField of form.fields) { - if (formField.archived == null || !formField.archived) { - this.createFormField(form, formField, fields, fieldNames) - } - } - - } - } - - } - - /** - * Build a field from the form field - * @param form form - * @param formField form field - * @param fields created fields - * @param fieldNames set of all field names - */ - private createFormField(form: Form, formField: FormField, fields: Field[], fieldNames: Set) { - - const field = this.initField(formField.type) - - if (field != null) { - - let name = ObservationsTransformer.replaceSpaces(formField.title) - - if (fieldNames.has(name)) { - name = form.name + '_' + name - } - fieldNames.add(name) - - field.name = name - field.alias = field.name - field.nullable = !formField.required - field.editable = true - field.defaultValue = formField.value - - fields.push(field) - } - - } - - /** - * Initialize a field by type - * @param type form field type - * @param integer numeric integer field type - * @return field or null - */ - private initField(type: FormFieldType, integer?: boolean): Field | null { - - let field = {} as Field - - switch (type) { - case FormFieldType.CheckBox: - case FormFieldType.Dropdown: - case FormFieldType.Email: - case FormFieldType.MultiSelectDropdown: - case FormFieldType.Password: - case FormFieldType.Radio: - case FormFieldType.Text: - field.type = 'esriFieldTypeString' - field.actualType = 'nvarchar' - field.sqlType = 'sqlTypeNVarchar' - field.length = this._config.textFieldLength - break; - case FormFieldType.TextArea: - field.type = 'esriFieldTypeString' - field.actualType = 'nvarchar' - field.sqlType = 'sqlTypeNVarchar' - field.length = this._config.textAreaFieldLength - break; - case FormFieldType.DateTime: - field.type = 'esriFieldTypeDate' - field.sqlType = 'sqlTypeOther' - field.length = 10 - break; - case FormFieldType.Numeric: - if (integer) { - field.type = 'esriFieldTypeInteger' - field.actualType = 'int' - field.sqlType = 'sqlTypeInteger' - } else { - field.type = 'esriFieldTypeDouble' - field.actualType = 'float' - field.sqlType = 'sqlTypeFloat' - } - break; - case FormFieldType.Geometry: - case FormFieldType.Attachment: - case FormFieldType.Hidden: - default: - break - } - - return field.type != null ? field : null - } - - /** - * Create the layer - * @param service feature service - * @param layer layer - */ - private create(service: FeatureServiceConfig, layer: Layer) { - - const httpClient = this.httpClient(service) - const url = this.adminUrl(service) + 'addToDefinition' - - this._console.info('ArcGIS feature service addToDefinition (create layer) url ' + url) - - const form = new FormData() - form.append('addToDefinition', JSON.stringify(layer)) - - httpClient.sendPostForm(url, form) - - } - - /** - * Add fields to the layer - * @param service feature service - * @param featureLayer feature layer - * @param fields fields to add - */ - private addFields(service: FeatureServiceConfig, featureLayer: FeatureLayerConfig, fields: Field[]) { - - const layer = {} as Layer - layer.fields = fields - - const httpClient = this.httpClient(service) - const url = this.adminUrl(service) + featureLayer.layer.toString() + '/addToDefinition' - - this._console.info('ArcGIS feature layer addToDefinition (add fields) url ' + url) - - const form = new FormData() - form.append('addToDefinition', JSON.stringify(layer)) - - httpClient.sendPostForm(url, form) - - } - - /** - * Delete fields from the layer - * @param service feature service - * @param featureLayer feature layer - * @param fields fields to delete - */ - private deleteFields(service: FeatureServiceConfig, featureLayer: FeatureLayerConfig, fields: LayerField[]) { - - const deleteFields = [] - for (const layerField of fields) { - const field = {} as Field - field.name = layerField.name - deleteFields.push(field) - } - - const layer = {} as Layer - layer.fields = deleteFields - - const httpClient = this.httpClient(service) - const url = this.adminUrl(service) + featureLayer.layer.toString() + '/deleteFromDefinition' - - this._console.info('ArcGIS feature layer deleteFromDefinition (delete fields) url ' + url) - - const form = new FormData() - form.append('deleteFromDefinition', JSON.stringify(layer)) - - httpClient.sendPostForm(url, form) - - } - - /** - * Get the administration url - * @param service feature service - * @returns url - */ - private adminUrl(service: FeatureServiceConfig): String { - let url = service.adminUrl - if (url == null) { - url = service.url.replace('/services/', '/admin/services/') - } - if (!url.endsWith('/')) { - url += '/' - } - return url - } - - /** - * Get a HTTP Client with administration token - * @param service feature service - * @returns http client - */ - private httpClient(service: FeatureServiceConfig): HttpClient { - let token = service.adminToken - if (token == null) { - token = service.token - } - return new HttpClient(console, token) - } - -} + private _config: ArcGISPluginConfig; + private _identityService: ArcGISIdentityService; + private _console: Console; + + /** + * Constructor. + * @param {ArcGISPluginConfig} config The plugins configuration. + * @param {ArcGISIdentityService} identityService The identity service. + * @param {Console} console Used to log to the console. + */ + constructor(config: ArcGISPluginConfig, identityService: ArcGISIdentityService, console: Console) { + this._config = config; + this._identityService = identityService; + this._console = console; + } + + /** + * Create the layer + * @param {FeatureServiceConfig} service feature service + * @param {FeatureLayerConfig} featureLayer feature layer + * @param {number} nextId next service layer id + * @param {MageEventRepository} eventRepo event repository + * @returns {Promise} layer id + */ + async createLayer(service: FeatureServiceConfig, featureLayer: FeatureLayerConfig, nextId: number, eventRepo: MageEventRepository): Promise { + // TODO: Is this function needed? This allows the server to create a feature layer on the arcgis server. + this._console.info('FeatureServiceAdmin createLayer()'); + const layer = { type: 'Feature Layer' } as Layer; + + const layerIdentifier = featureLayer.layer; + const layerIdentifierNumber = Number(layerIdentifier); + if (isNaN(layerIdentifierNumber)) { + layer.name = String(layerIdentifier); + layer.id = nextId; + } else { + layer.id = layerIdentifierNumber; + } + + const events = await this.layerEvents(featureLayer, eventRepo); + + if (layer.name == null) { + layer.name = this.layerName(events); + } + + if (featureLayer.geometryType != null) { + layer.geometryType = featureLayer.geometryType; + } else { + layer.geometryType = 'esriGeometryPoint'; + } + + layer.fields = this.fields(events); + + // TODO What other layer properties are needed or required? + // https://developers.arcgis.com/rest/services-reference/online/add-to-definition-feature-service-.htm#GUID-63F2BD08-DCF4-485D-A3E6-C7116E17DDD8 + + this.create(service, layer); + + return layer.id; + } + + /** + * Update the layer fields + * @param {FeatureServiceConfig} service feature service + * @param {FeatureLayerConfig} featureLayer feature layer + * @param {LayerInfoResult} layerInfo layer info + * @param {MageEventRepository} eventRepo event repository + */ + async updateLayer(service: FeatureServiceConfig, featureLayer: FeatureLayerConfig, layerInfo: LayerInfoResult, eventRepo: MageEventRepository): Promise { + this._console.info('FeatureServiceAdmin updateLayer()'); + const events = await this.layerEvents(featureLayer, eventRepo); + const promises = []; + + const eventFields = this.fields(events); + + const layerFields = layerInfo.fields; + + const layerFieldSet = new Set(); + for (const field of layerFields) { + layerFieldSet.add(field.name); + } + + const addFields = []; + for (const field of eventFields) { + if (!layerFieldSet.has(field.name)) { + addFields.push(field); + const layerField = {} as LayerField; + layerField.name = field.name; + layerField.editable = true; + layerFields.push(layerField); + } + } + + if (addFields.length > 0) { + promises.push(this.addFields(service, layerInfo.id, addFields)); + } + + const eventFieldSet = new Set(); + for (const field of eventFields) { + eventFieldSet.add(field.name); + } + + const deleteFields = []; + const remainingFields = []; + for (const field of layerFields) { + if (field.editable && !eventFieldSet.has(field.name)) { + deleteFields.push(field); + } else { + remainingFields.push(field); + } + } + + if (deleteFields.length > 0) { + layerInfo.fields = remainingFields; + promises.push(this.deleteFields(service, layerInfo.id, deleteFields)); + } + await Promise.all(promises); + return eventFields; + } + + /** + * Get the Mage layer events + * @param {FeatureLayerConfig} layer feature layer + * @param {MageEventRepository} eventRepo event repository + * @returns {Promise} Mage layer events + */ + private async layerEvents(layer: FeatureLayerConfig, eventRepo: MageEventRepository): Promise { + const layerEventIds: Set = new Set(); + if (layer.eventIds != null) { + for (const layerEventId of layer.eventIds) { + layerEventIds.add(layerEventId); + } + } + + let mageEvents; + if (layerEventIds.size > 0) { + mageEvents = await eventRepo.findAll(); + } else { + mageEvents = await eventRepo.findActiveEvents(); + } + + const events: MageEvent[] = []; + for (const mageEvent of mageEvents) { + if (layerEventIds.size === 0 || layerEventIds.has(mageEvent.id)) { + const event = await eventRepo.findById(mageEvent.id); + if (event != null) { + events.push(event); + } + } + } + + return events; + } + + /** + * Create a layer name + * @param {MageEvent[]} events layer events + * @returns {string} layer name + */ + private layerName(events: MageEvent[]): string { + let layerName = ''; + for (let i = 0; i < events.length; i++) { + if (i > 0) { + layerName += ', '; + } + layerName += events[i].name; + } + return layerName; + } + + /** + * Builder the layer fields + * @param {MageEvent[]} events layer events + * @returns {Field[]} fields + */ + private fields(events: MageEvent[]): Field[] { + const fields: Field[] = []; + + fields.push(this.createTextField(this._config.observationIdField)); + if (this._config.eventIdField != null) { + fields.push(this.createIntegerField(this._config.eventIdField)); + } + if (this._config.eventNameField != null) { + fields.push(this.createTextField(this._config.eventNameField)); + } + if (this._config.userIdField != null) { + fields.push(this.createTextField(this._config.userIdField)); + } + if (this._config.usernameField != null) { + fields.push(this.createTextField(this._config.usernameField)); + } + if (this._config.userDisplayNameField != null) { + fields.push(this.createTextField(this._config.userDisplayNameField)); + } + if (this._config.deviceIdField != null) { + fields.push(this.createTextField(this._config.deviceIdField)); + } + if (this._config.createdAtField != null) { + fields.push(this.createDateTimeField(this._config.createdAtField)); + } + if (this._config.lastModifiedField != null) { + fields.push(this.createDateTimeField(this._config.lastModifiedField)); + } + if (this._config.geometryType != null) { + fields.push(this.createTextField(this._config.geometryType)); + } + + const fieldNames = new Set(); + for (const field of fields) { + fieldNames.add(field.name); + } + + this.eventsFields(events, fields, fieldNames); + + return fields; + } + + /** + * Create a field + * @param {string} name field name + * @param {FormFieldType} type form field type + * @param {boolean} [integer] integer flag when numeric + * @returns {Field} field + */ + private createField(name: string, type: FormFieldType, integer?: boolean): Field { + const field = this.initField(type, integer) as Field; + if (field != null) { + field.name = ObservationsTransformer.replaceSpaces(name); + field.alias = field.name; + field.editable = true; + } + return field; + } + + /** + * Create a text field + * @param {string} name field name + * @returns {Field} field + */ + private createTextField(name: string): Field { + return this.createField(name, FormFieldType.Text); + } + + /** + * Create a numeric field + * @param {string} name field name + * @param {boolean} [integer] integer flag + * @returns {Field} field + */ + private createNumericField(name: string, integer?: boolean): Field { + return this.createField(name, FormFieldType.Numeric, integer); + } + + /** + * Create an integer field + * @param {string} name field name + * @returns {Field} field + */ + private createIntegerField(name: string): Field { + return this.createNumericField(name, true); + } + + /** + * Create a date time field + * @param {string} name field name + * @returns {Field} field + */ + private createDateTimeField(name: string): Field { + return this.createField(name, FormFieldType.DateTime); + } + + /** + * Build fields from the layer events + * @param {MageEvent[]} events layer events + * @param {Field[]} fields created fields + * @param {Set} fieldNames set of all field names + */ + private eventsFields(events: MageEvent[], fields: Field[], fieldNames: Set) { + const forms = new Set(); + + for (const event of events) { + this.eventFields(event, forms, fields, fieldNames); + } + } + + /** + * Build fields from the layer event + * @param {MageEvent} event layer event + * @param {Set} forms set of processed forms + * @param {Field[]} fields created fields + * @param {Set} fieldNames set of all field names + */ + private eventFields(event: MageEvent, forms: Set, fields: Field[], fieldNames: Set) { + for (const form of event.activeForms) { + if (!forms.has(form.id)) { + forms.add(form.id); + + for (const formField of form.fields) { + if (!formField.archived) { + this.createFormField(form, formField, fields, fieldNames); + } + } + } + } + } + + /** + * Build a field from the form field + * @param {Form} form form + * @param {FormField} formField form field + * @param {Field[]} fields created fields + * @param {Set} fieldNames set of all field names + */ + private createFormField(form: Form, formField: FormField, fields: Field[], fieldNames: Set) { + const field = this.initField(formField.type); + + if (field != null) { + const sanitizedName = ObservationsTransformer.replaceSpaces(formField.title); + const sanitizedFormName = ObservationsTransformer.replaceSpaces(form.name); + const name = `${sanitizedFormName}_${sanitizedName}`.toLowerCase(); + + fieldNames.add(name); + + field.name = name; + field.alias = field.name; + field.editable = true; + field.defaultValue = formField.value; + + fields.push(field); + } + } + + /** + * Initialize a field by type + * @param {FormFieldType} type form field type + * @param {boolean} [integer] numeric integer field type + * @returns {Field | null} field or null + */ + private initField(type: FormFieldType, integer?: boolean): Field | null { + const field = {} as Field; + + switch (type) { + case FormFieldType.CheckBox: + case FormFieldType.Dropdown: + case FormFieldType.Email: + case FormFieldType.MultiSelectDropdown: + case FormFieldType.Password: + case FormFieldType.Radio: + case FormFieldType.Text: + field.type = 'esriFieldTypeString'; + field.actualType = 'nvarchar'; + field.sqlType = 'sqlTypeNVarchar'; + field.length = this._config.textFieldLength; + break; + case FormFieldType.TextArea: + field.type = 'esriFieldTypeString'; + field.actualType = 'nvarchar'; + field.sqlType = 'sqlTypeNVarchar'; + field.length = this._config.textAreaFieldLength; + break; + case FormFieldType.DateTime: + field.type = 'esriFieldTypeDate'; + field.sqlType = 'sqlTypeOther'; + field.length = 10; + break; + case FormFieldType.Numeric: + if (integer) { + field.type = 'esriFieldTypeInteger'; + field.actualType = 'int'; + field.sqlType = 'sqlTypeInteger'; + } else { + field.type = 'esriFieldTypeDouble'; + field.actualType = 'float'; + field.sqlType = 'sqlTypeFloat'; + } + break; + case FormFieldType.Geometry: + case FormFieldType.Attachment: + case FormFieldType.Hidden: + default: + break; + } + + return field.type != null ? field : null; + } + + /** + * Create the feature layer + * @param {FeatureServiceConfig} service feature service + * @param {Layer} layer layer + */ + private async create(service: FeatureServiceConfig, layer: Layer) { + const url = this.adminUrl(service) + 'addToDefinition'; + + this._console.info('ArcGIS feature service addToDefinition (create feature layer) url ' + url); + + const form = new FormData(); + form.append('addToDefinition', JSON.stringify(layer)); + + const identityManager = await this._identityService.signin(service); + await request(url, { + authentication: identityManager, + httpMethod: 'POST', + params: form + }).catch((error) => this._console.error('FeatureServiceAdmin create() error ' + error)); + } + + /** + * Add fields to the layer + * @param {FeatureLayerConfig} service feature service + * @param {FeatureLayerConfig} featureLayer feature layer + * @param {Field[]} fields fields to add + */ + private async addFields(service: FeatureServiceConfig, featureLayer: number, fields: Field[]) { + const layer = { fields: fields } as Layer; + + const url = this.adminUrl(service) + featureLayer.toString() + '/addToDefinition'; + + this._console.info('ArcGIS feature layer addToDefinition (add fields) url ' + url); + + try { + const identityManager = await this._identityService.signin(service); + await request(url, { + authentication: identityManager, + params: { + addToDefinition: layer, + f: "json" + } + }).catch((error) => { + this._console.error('Error in addFields: ' + error); + }); + } catch (error) { + this._console.error('FeatureServiceAdmin addFields() error ' + error); + } + } + + /** + * Delete fields from the layer + * @param {FeatureServiceConfig} service feature service + * @param {FeatureLayerConfig} featureLayer feature layer + * @param {LayerField[]} fields fields to delete + */ + private async deleteFields(service: FeatureServiceConfig, featureLayer: number, fields: LayerField[]) { + const deleteFields = []; + for (const layerField of fields) { + const field = {} as Field; + field.name = layerField.name; + deleteFields.push(field); + } + + const layer = {} as Layer; + layer.fields = deleteFields; + + const url = this.adminUrl(service) + featureLayer.toString() + '/deleteFromDefinition'; + + this._console.info('ArcGIS feature layer deleteFromDefinition (delete fields) url ' + url); + + try { + const identityManager = await this._identityService.signin(service); + await request(url, { + authentication: identityManager, + httpMethod: 'POST', + params: { + deleteFromDefinition: layer, + f: 'json' + } + }).catch((error) => this._console.error('FeatureServiceAdmin deleteFields() error ' + error)); + } catch (error) { + this._console.error('FeatureServiceAdmin deleteFields() error ' + error); + } + } + + /** + * Get the administration url + * @param {FeatureServiceConfig} service feature service + * @returns {string} url + */ + private adminUrl(service: FeatureServiceConfig): string { + let url = service.url.replace('/services/', '/admin/services/'); + if (!url.endsWith('/')) { + url += '/'; + } + + return url; + } +} \ No newline at end of file diff --git a/plugins/arcgis/service/src/GeometryChangedHandler.ts b/plugins/arcgis/service/src/GeometryChangedHandler.ts index 1f5ea2d04..e3630bc43 100644 --- a/plugins/arcgis/service/src/GeometryChangedHandler.ts +++ b/plugins/arcgis/service/src/GeometryChangedHandler.ts @@ -20,7 +20,7 @@ export class GeometryChangedHandler { /** * Constructor. - * @param transformer Used to create any delete observations to remove the old geometry observation. + * @param {ObservationsTransformer} transformer Used to create any delete observations to remove the old geometry observation. */ constructor(transformer: ObservationsTransformer) { this._transformer = transformer; @@ -30,18 +30,17 @@ export class GeometryChangedHandler { /** * Checks for any geometry changes within an observation, if there is a change create a delete object to delete it * from its previous geometry layers. - * @param observations The observations to check for geometry changes. - * @param arcObjects The collection to add any previous geometry deletions. - * @param layerProcessors All the layer processors. - * @param firstRun True if this is our first run and we need to make sure any changed geometries that occurred right before - * shutting down, are removed from their previous geometry layer. + * @param {ObservationAttrs[]} observations The observations to check for geometry changes. + * @param {ArcObjects} arcObjects The collection to add any previous geometry deletions. + * @param {FeatureLayerProcessor[]} layerProcessors All the layer processors. + * @param {boolean} firstRun True if this is our first run and we need to make sure any changed geometries that occurred right before shutting down, are removed from their previous geometry layer. */ checkForGeometryChange(observations: ObservationAttrs[], arcObjects: ArcObjects, layerProcessors: FeatureLayerProcessor[], firstRun: boolean) { for (const observation of observations) { if (observation.states.length <= 0 || !observation.states[0].name.startsWith('archive')) { if (this._previousGeoms.has(observation.id)) { const previousGeomType = this._previousGeoms.get(observation.id); - if (previousGeomType !== undefined && previousGeomType != observation.geometry.type) { + if (previousGeomType !== undefined && previousGeomType !== observation.geometry.type) { const arcObservation = this._transformer.createObservation(observation); arcObservation.esriGeometryType = this._transformer.mageTypeToEsriType(previousGeomType); arcObjects.deletions.push(arcObservation); @@ -51,7 +50,7 @@ export class GeometryChangedHandler { if (firstRun) { const observationGeomType = this._transformer.mageTypeToEsriType(observation.geometry.type); for (const layerProcessor of layerProcessors) { - if (layerProcessor.layerInfo.geometryType != observationGeomType) { + if (layerProcessor.layerInfo.geometryType !== observationGeomType) { const arcObservation = this._transformer.createObservation(observation); arcObservation.esriGeometryType = layerProcessor.layerInfo.geometryType; arcObjects.deletions.push(arcObservation); diff --git a/plugins/arcgis/service/src/HttpClient.ts b/plugins/arcgis/service/src/HttpClient.ts deleted file mode 100644 index a68841f80..000000000 --- a/plugins/arcgis/service/src/HttpClient.ts +++ /dev/null @@ -1,221 +0,0 @@ -import https from 'https'; -import FormData from 'form-data'; - -/** - * Makes Http calls on specified urls. - */ -export class HttpClient { - - /** - * Used to log to the console. - */ - private _console: Console; - - /** - * The access token - */ - private _token?: string - - /** - * Constructor. - * @param console Used to log to the console. - * @param token The access token. - */ - constructor(console: Console, token?: string) { - this._console = console - this._token = token - } - - /** - * Sends a post request to the specified url with the specified data. - * @param url The url to send a post request to. - * @param formData The data to put in the post. - */ - sendPost(url: string, formData: string) { - const console = this._console - this.sendPostHandleResponse(url, formData, function (chunk) { - console.log('Response: ' + chunk); - }) - } - - /** - * Sends a post request to the specified url with the specified data. - * @param url The url to send a post request to. - * @param formData The data to put in the post. - * @param response The post response handler function. - */ - sendPostHandleResponse(url: string, formData: string, response: (chunk: any) => void) { - const aUrl = new URL(url); - - formData += this.tokenParam() - formData += this.jsonFormatParam() - - var post_options = { - host: aUrl.host, - port: aUrl.port, - path: aUrl.pathname, - method: 'POST', - headers: { - 'content-type': 'application/x-www-form-urlencoded', - 'content-length': Buffer.byteLength(formData), - 'accept': 'application/json' - } - }; - - // Set up the request - var post_req = https.request(post_options, function (res) { - res.setEncoding('utf8'); - res.on('data', response); - }); - - // post the data - post_req.write(formData); - post_req.end(); - } - - /** - * Sends a post request to the specified url with the specified data. - * @param url The url to send a post request to. - * @param form The data to put in the post. - */ - sendPostForm(url: string, form: FormData) { - const console = this._console - this.sendPostFormHandleResponse(url, form, function (chunk) { - console.log('Response: ' + chunk) - }) - } - - /** - * Sends a post request to the specified url with the specified data. - * @param url The url to send a post request to. - * @param form The data to put in the post. - * @param response The post response handler function. - */ - sendPostFormHandleResponse(url: string, form: FormData, response: (chunk: any) => void) { - const aUrl = new URL(url) - - if (this._token != null) { - form.append('token', this._token) - } - form.append('f', 'json') - - var post_options = { - host: aUrl.host, - port: aUrl.port, - path: aUrl.pathname, - method: 'POST', - headers: form.getHeaders() - }; - - // Set up the request - var post_req = https.request(post_options, function (res) { - res.setEncoding('utf8') - res.on('data', response) - }); - - // post the data - form.pipe(post_req) - } - - /** - * Sends a get request to the specified url. - * @param url The url of the get request. - */ - sendGet(url: string) { - const console = this._console - this.sendGetHandleResponse(url, function (chunk) { - console.log('Response: ' + chunk); - }) - } - - /** - * Sends a get request to the specified url. - * @param url The url of the get request. - * @param response The get response handler function. - */ - sendGetHandleResponse(url: string, response: (chunk: any) => void) { - - url += this.tokenParam(url) - url += this.jsonFormatParam(url) - - try { - const aUrl = new URL(url) - - var options = { - host: aUrl.host, - port: aUrl.port, - path: aUrl.pathname + '?' + aUrl.searchParams, - method: 'GET', - headers: { - 'accept': 'application/json' - } - }; - - // Set up the request - var get_req = https.request(options, function (res) { - let data = ''; - res.setEncoding('utf8'); - res.on('data', (chunk: string): void => {data += chunk;}); - res.on('end', (): void =>{response(data);}); - }); - - get_req.on('error', function(error) { - console.log('Error for ' + url + ' ' + error); - }); - - // get the data - get_req.end(); - } catch (e) { - if (e instanceof TypeError) { - console.log('Error for ' + url + ' ' + e) - response('{}') - } else { - throw e;//cause we dont know what it is or we want to only handle TypeError - } - } - } - - /** - * Get the token parameter - * @param url URL the parameter will be added to - * @returns token param - */ - private tokenParam(url?: string): string { - let token = '' - if (this._token != null) { - token += this.paramSeparator(url) - token += "token=" + this._token - } - return token - } - - /** - * Get the JSON format parameter - * @param url URL the parameter will be added to - * @returns json format parameter - */ - private jsonFormatParam(url?: string): string { - return this.paramSeparator(url) + "f=json" - } - - /** - * Get the parameter separator - * @param url URL a separator will be added to - * @returns parameter separator - */ - private paramSeparator(url?: string): string { - let separator = '' - if (url != null && url.length > 0) { - const index = url.indexOf('?') - if (index == -1) { - separator = '?' - } else if (index < url.length - 1){ - separator = '&' - } - } else { - separator = '&' - } - return separator - } - -} \ No newline at end of file diff --git a/plugins/arcgis/service/src/LayerInfo.ts b/plugins/arcgis/service/src/LayerInfo.ts index 931937cf4..e5dc07357 100644 --- a/plugins/arcgis/service/src/LayerInfo.ts +++ b/plugins/arcgis/service/src/LayerInfo.ts @@ -1,4 +1,5 @@ -import { LayerInfoResult, LayerField } from "./LayerInfoResult"; +import { MageEventId } from "@ngageoint/mage.service/lib/entities/events/entities.events"; +import { LayerInfoResult, LayerField } from "./types/LayerInfoResult"; /** * Contains information about a specific arc feature layer. @@ -8,73 +9,69 @@ export class LayerInfo { /** * The url to the feature layer. */ - url: string + url: string; /** * The access token */ - token?: string + token?: string; /** * The geometry type this feature layer accepts. */ - geometryType: string + geometryType: string; /** * Mapping between field names and layer fields. */ - layerFields: Map = new Map() + layerFields: Map = new Map(); /** * The events that are synching to this layer. */ - events: Set = new Set() + events: Set = new Set(); /** * Constructor. - * @param url The url to the feature layer. - * @param events The events that are synching to this layer. - * @param layerInfo The layer info. - * @param token The access token. + * @param {string} url The url to the feature layer. + * @param {MageEventId[]} events The events that are synching to this layer. + * @param {LayerInfoResult} layerInfo The layer info. */ - constructor(url: string, events: string[], layerInfo: LayerInfoResult, token?: string) { + constructor(url: string, events: MageEventId[], layerInfo: LayerInfoResult) { this.url = url - this.token = token - if (events != undefined && events != null && events.length == 0) { - this.events.add('nothing to sync') - } - if (events != undefined || events != null) { + + if (events && events.length > 0) { for (const event of events) { this.events.add(event); } } - this.geometryType = layerInfo.geometryType + this.geometryType = layerInfo.geometryType; for (const field of layerInfo.fields) { - this.layerFields.set(field.name, field) + this.layerFields.set(field.name, field); } } /** * Determine if the field is editable. - * @param field The field name. - * @return true if editable + * @param {string} field The field name. + * @returns {boolean} true if editable */ isEditable(field: string): boolean { - let editable = false - const layerField = this.layerFields.get(field) + let editable = false; + const layerField = this.layerFields.get(field); if (layerField != null) { - editable = layerField.editable + editable = layerField.editable; } - return editable + return editable; } /** * Determine if the layer is enabled for the event. - * @param event The event. - * @return true if enabled + * @param {MageEventId} eventId The event. + * @returns {boolean} true if enabled */ - hasEvent(event: string) { - return this.events.size == 0 || this.events.has(event) + hasEvent(eventId: MageEventId) { + return this.events.size === 0 || this.events.has(eventId) } } \ No newline at end of file diff --git a/plugins/arcgis/service/src/ObservationBinner.ts b/plugins/arcgis/service/src/ObservationBinner.ts deleted file mode 100644 index 2b7794ff2..000000000 --- a/plugins/arcgis/service/src/ObservationBinner.ts +++ /dev/null @@ -1,155 +0,0 @@ -import { ArcGISPluginConfig } from "./ArcGISPluginConfig"; -import { ArcObjects } from "./ArcObjects"; -import { ArcObservation } from "./ArcObservation"; -import { FeatureQuerier } from "./FeatureQuerier"; -import { ObservationBins } from "./ObservationBins"; -import { LayerInfo } from "./LayerInfo"; - -/** - * Sorts the observations into a group of new ones and a group of updated ones. - */ -export class ObservationBinner { - - /** - * Information about the arc feature layer this class sends observations to. - */ - layerInfo: LayerInfo; - - /** - * The number of existence queries we are still waiting for. - */ - private _existenceQueryCounts: number; - - /** - * The query url to find out if an observations exists on the server. - */ - private _featureQuerier: FeatureQuerier; - - /** - * Contains the results from checking if an observation exists on the server. - */ - private _pendingNewAndUpdates: ObservationBins; - - /** - * The plugins configuration. - */ - private _config: ArcGISPluginConfig; - - private _addedObs: Set; - - /** - * Constructor. - * @param layerInfo Information about the arc feature layer this class sends observations to. - * @param featureQuerier Used to query for observation on the arc feature layer. - * @param config The plugins configuration. - */ - constructor(layerInfo: LayerInfo, featureQuerier: FeatureQuerier, config: ArcGISPluginConfig) { - this.layerInfo = layerInfo; - this._featureQuerier = featureQuerier; - this._pendingNewAndUpdates = new ObservationBins; - this._config = config; - this._existenceQueryCounts = 0; - this._addedObs = new Set(); - } - - /** - * Indicates if this binner has pending updates still waiting to be processed. - * @returns True if it is still waiting for updates to be processed, false otherwise. - */ - hasPendingUpdates(): boolean { - return this._existenceQueryCounts > 0; - } - - /** - * Gets any pending updates or adds that still need to occur. - * @returns The updates or adds that still need to occur. - */ - pendingUpdates(): ObservationBins { - const newAndUpdates = new ObservationBins(); - for (let i = 0; i < this._pendingNewAndUpdates.adds.count(); i++) { - if (!this._addedObs.has(this._pendingNewAndUpdates.adds.observations[i].id)) { - newAndUpdates.adds.add(this._pendingNewAndUpdates.adds.observations[i]); - this._addedObs.add(this._pendingNewAndUpdates.adds.observations[i].id); - } - } - for (let i = 0; i < this._pendingNewAndUpdates.updates.count(); i++) { - newAndUpdates.updates.add(this._pendingNewAndUpdates.updates.observations[i]); - } - this._pendingNewAndUpdates.clear(); - - return newAndUpdates; - } - - /** - * Sorts the observations into new observations or update observations. - * @param observations The observations to sort out. - * @returns The sorted out observations. - */ - sortEmOut(observations: ArcObjects): ObservationBins { - const bins = new ObservationBins(); - - for (const arcObservation of observations.observations) { - const arcObject = arcObservation.object - if (observations.firstRun - || arcObservation.lastModified != arcObservation.createdAt) { - bins.updates.add(arcObservation); - } else if (!this._addedObs.has(arcObservation.id)) { - bins.adds.add(arcObservation); - this._addedObs.add(arcObservation.id); - } - } - - for (const arcObservation of bins.updates.observations) { - this.checkForExistence(arcObservation); - } - bins.updates = this._pendingNewAndUpdates.updates; - - return bins; - } - - /** - * Checks to see if the observation truly does exist on the server. - * @param arcObservation The observation to check. - * @returns True if it exists, false if it does not. - */ - checkForExistence(arcObservation: ArcObservation) { - this._existenceQueryCounts++; - this._featureQuerier.queryObservation(arcObservation.id, (result) => { - this._existenceQueryCounts--; - if (result.features != null && result.features.length > 0) { - - const arcAttributes = result.features[0].attributes - - let lastEdited = null - if (this._config.lastEditedDateField != null) { - lastEdited = arcAttributes[this._config.lastEditedDateField] - } - if (lastEdited == null || lastEdited < arcObservation.lastModified) { - - const objectIdField = result.objectIdFieldName - const updateAttributes = arcObservation.object.attributes - - updateAttributes[objectIdField] = arcAttributes[objectIdField] - - // Determine if any editable attribute values should be deleted - const lowerCaseUpdateAttributes = Object.fromEntries( - Object.entries(updateAttributes).map(([k, v]) => [k.toLowerCase(), v]) - ) - for (const arcAttribute of Object.keys(arcAttributes)) { - if (this.layerInfo.isEditable(arcAttribute) - && arcAttributes[arcAttribute] != null - && lowerCaseUpdateAttributes[arcAttribute.toLowerCase()] == null) { - updateAttributes[arcAttribute] = null - } - } - - this._pendingNewAndUpdates.updates.add(arcObservation) - - } - - } else { - this._pendingNewAndUpdates.adds.add(arcObservation); - } - }, undefined, false); - } -} \ No newline at end of file diff --git a/plugins/arcgis/service/src/ObservationBins.ts b/plugins/arcgis/service/src/ObservationBins.ts index 5ce657028..f3ddf08de 100644 --- a/plugins/arcgis/service/src/ObservationBins.ts +++ b/plugins/arcgis/service/src/ObservationBins.ts @@ -27,8 +27,8 @@ export class ObservationBins { * Clear the observations. */ clear() { - this.adds.clear() - this.updates.clear() + this.adds.clear(); + this.updates.clear(); } } \ No newline at end of file diff --git a/plugins/arcgis/service/src/ObservationProcessor.ts b/plugins/arcgis/service/src/ObservationProcessor.ts index f72fd3047..4a4e940a1 100644 --- a/plugins/arcgis/service/src/ObservationProcessor.ts +++ b/plugins/arcgis/service/src/ObservationProcessor.ts @@ -1,22 +1,23 @@ import { PagingParameters } from '@ngageoint/mage.service/lib/entities/entities.global'; +import { MageEventId } from "@ngageoint/mage.service/lib/entities/events/entities.events"; import { MageEventRepository } from '@ngageoint/mage.service/lib/entities/events/entities.events'; import { EventScopedObservationRepository, ObservationRepositoryForEvent } from '@ngageoint/mage.service/lib/entities/observations/entities.observations'; import { UserRepository } from '@ngageoint/mage.service/lib/entities/users/entities.users'; -import { ArcGISPluginConfig, defaultArcGISPluginConfig } from './ArcGISPluginConfig'; +import { ArcGISPluginConfig, defaultArcGISPluginConfig } from './types/ArcGISPluginConfig'; import { ObservationsTransformer } from './ObservationsTransformer' import { ArcObjects } from './ArcObjects' import { FeatureService } from './FeatureService'; -import { FeatureServiceResult, FeatureLayer } from './FeatureServiceResult'; import { LayerInfo } from './LayerInfo'; -import { LayerInfoResult } from "./LayerInfoResult"; +import { LayerInfoResult } from "./types/LayerInfoResult"; import { FeatureLayerProcessor } from './FeatureLayerProcessor'; import { EventTransform } from './EventTransform'; import { GeometryChangedHandler } from './GeometryChangedHandler'; import { EventDeletionHandler } from './EventDeletionHandler'; import { EventLayerProcessorOrganizer } from './EventLayerProcessorOrganizer'; -import { FeatureServiceConfig, FeatureLayerConfig } from "./ArcGISConfig" +import { FeatureServiceConfig } from "./types/ArcGISConfig" import { PluginStateRepository } from '@ngageoint/mage.service/lib/plugins.api' import { FeatureServiceAdmin } from './FeatureServiceAdmin'; +import { ArcGISIdentityService } from './ArcGISService'; /** * Class that wakes up at a certain configured interval and processes any new observations that can be @@ -24,399 +25,364 @@ import { FeatureServiceAdmin } from './FeatureServiceAdmin'; */ export class ObservationProcessor { - /** - * True if the processor is currently active, false otherwise. - */ - private _isRunning = false; - - /** - * The next timeout, use this to cancel the next one if the processor is stopped. - */ - private _nextTimeout: NodeJS.Timeout | undefined; - - /** - * Used to get all the active events. - */ - private _eventRepo: MageEventRepository; - - /** - * Used to get new observations. - */ - private _obsRepos: ObservationRepositoryForEvent; - - /** - * Used to get user information. - */ - private _userRepo: UserRepository; - - /** - * Used to log to the console. - */ - private _console: Console; - - /** - * Used to convert observations to json string that can be sent to an arcgis server. - */ - private _transformer: ObservationsTransformer; - - /** - * Contains the different feature layers to send observations too. - */ - private _stateRepo: PluginStateRepository; - - /** - * The previous plugins configuration JSON. - */ - private _previousConfig?: string; - - /** - * Sends observations to a single feature layer. - */ - private _layerProcessors: FeatureLayerProcessor[] = []; - - /** - * True if this is a first run at updating arc feature layers. If so we need to make sure the layers are - * all up to date. - */ - private _firstRun: boolean; - - /** - * Handles removing observation from previous layers when an observation geometry changes. - */ - private _geometryChangeHandler: GeometryChangedHandler; - - /** - * Handles removing observations when an event is deleted. - */ - private _eventDeletionHandler: EventDeletionHandler; - - /** - * Maps the events to the processor they are synching data for. - */ - private _organizer: EventLayerProcessorOrganizer; - - /** - * Constructor. - * @param stateRepo The plugins configuration. - * @param eventRepo Used to get all the active events. - * @param obsRepo Used to get new observations. - * @param userRepo Used to get user information. - * @param console Used to log to the console. - */ - constructor(stateRepo: PluginStateRepository, eventRepo: MageEventRepository, obsRepos: ObservationRepositoryForEvent, userRepo: UserRepository, console: Console) { - this._stateRepo = stateRepo; - this._eventRepo = eventRepo; - this._obsRepos = obsRepos; - this._userRepo = userRepo; - this._console = console; - this._firstRun = true; - this._organizer = new EventLayerProcessorOrganizer(); - this._transformer = new ObservationsTransformer(defaultArcGISPluginConfig, console); - this._geometryChangeHandler = new GeometryChangedHandler(this._transformer); - this._eventDeletionHandler = new EventDeletionHandler(this._console, defaultArcGISPluginConfig); - } - - /** - * Gets the current configuration from the database. - * @returns The current configuration from the database. - */ - public async safeGetConfig(): Promise { - return await this._stateRepo.get().then(x => !!x ? x : this._stateRepo.put(defaultArcGISPluginConfig)) - } - - /** - * Puts a new confguration in the state repo. - * @param newConfig The new config to put into the state repo. - */ - public putConfig(newConfig: ArcGISPluginConfig) { - this._stateRepo.put(newConfig); - } - - /** - * Gets the current configuration and updates the processor if needed - * @returns The current configuration from the database. - */ - private async updateConfig(): Promise { - const config = await this.safeGetConfig() - const configJson = JSON.stringify(config) - if (this._previousConfig == null || this._previousConfig != configJson) { - this._transformer = new ObservationsTransformer(config, console); - this._geometryChangeHandler = new GeometryChangedHandler(this._transformer); - this._eventDeletionHandler = new EventDeletionHandler(this._console, config); - this._layerProcessors = []; - this.getFeatureServiceLayers(config); - this._previousConfig = configJson - this._firstRun = true; - } - return config - } - - /** - * Starts the processor. - */ - async start() { - this._isRunning = true; - this._firstRun = true; - this.processAndScheduleNext(); - } - - /** - * Stops the processor. - */ - stop() { - this._isRunning = false; - clearTimeout(this._nextTimeout); - } - - /** - * Gets information on all the configured features service layers. - * @param config The plugins configuration. - */ - private getFeatureServiceLayers(config: ArcGISPluginConfig) { - - for (const service of config.featureServices) { - - const services: FeatureServiceConfig[] = [] - - if (service.token == null) { - const tokenServices = new Map() - const nonTokenLayers = [] - for (const layer of service.layers) { - if (layer.token != null) { - let serv = tokenServices.get(layer.token) - if (serv == null) { - serv = { url: service.url, token: layer.token, layers: [] } - tokenServices.set(layer.token, serv) - services.push(serv) - } - serv.layers.push(layer) - } else { - nonTokenLayers.push(layer) - } - } - if (services.length > 0) { - service.layers = nonTokenLayers - } - } - - if (service.layers.length > 0) { - services.push(service) - } - - for (const serv of services) { - const featureService = new FeatureService(console, serv.token) - featureService.queryFeatureService(serv.url, (featureServiceResult: FeatureServiceResult) => this.handleFeatureService(featureServiceResult, serv, config)) - } - } - } - - /** - * Called when information on a feature service is returned from an arc server. - * @param featureService The feature service. - * @param featureServiceConfig The feature service config. - * @param config The plugin configuration. - */ - private async handleFeatureService(featureService: FeatureServiceResult, featureServiceConfig: FeatureServiceConfig, config: ArcGISPluginConfig) { - - if (featureService.layers != null) { - - const serviceLayers = new Map() - const admin = new FeatureServiceAdmin(config, this._console) - - let maxId = -1 - for (const layer of featureService.layers) { - serviceLayers.set(layer.id, layer) - serviceLayers.set(layer.name, layer) - maxId = Math.max(maxId, layer.id) - } - - for (const featureLayer of featureServiceConfig.layers) { - - if (featureLayer.token == null) { - featureLayer.token = featureServiceConfig.token - } - - const eventNames: string[] = [] - const events = featureLayer.events - if (events != null) { - for (const event of events) { - const eventId = Number(event); - if (isNaN(eventId)) { - eventNames.push(String(event)); - } else { - const mageEvent = await this._eventRepo.findById(eventId) - if (mageEvent != null) { - eventNames.push(mageEvent.name); - } - } - } - } - if (eventNames.length > 0) { - featureLayer.events = eventNames - } - - const layer = serviceLayers.get(featureLayer.layer) - - let layerId = undefined - if (layer != null) { - layerId = layer.id - } else if (featureServiceConfig.createLayers) { - layerId = await admin.createLayer(featureServiceConfig, featureLayer, maxId + 1, this._eventRepo) - maxId = Math.max(maxId, layerId) - } - - if (layerId != null) { - featureLayer.layer = layerId - const featureService = new FeatureService(console, featureLayer.token) - const url = featureServiceConfig.url + '/' + layerId - featureService.queryLayerInfo(url, (layerInfo: LayerInfoResult) => this.handleLayerInfo(url, featureServiceConfig, featureLayer, layerInfo, config)) - } - - } - - } - } - - /** - * Called when information on a feature layer is returned from an arc server. - * @param url The layer url. - * @param featureServiceConfig The feature service config. - * @param featureLayer The feature layer configuration. - * @param layerInfo The information on a layer. - * @param config The plugins configuration. - */ - private async handleLayerInfo(url: string, featureServiceConfig: FeatureServiceConfig, featureLayer: FeatureLayerConfig, layerInfo: LayerInfoResult, config: ArcGISPluginConfig) { - if (layerInfo.geometryType != null) { - const events = featureLayer.events as string[] - if (featureLayer.addFields || featureLayer.deleteFields) { - const admin = new FeatureServiceAdmin(config, this._console) - await admin.updateLayer(featureServiceConfig, featureLayer, layerInfo, this._eventRepo) - } - const info = new LayerInfo(url, events, layerInfo, featureLayer.token) - const layerProcessor = new FeatureLayerProcessor(info, config, this._console); - this._layerProcessors.push(layerProcessor); - clearTimeout(this._nextTimeout); - this.scheduleNext(config); - } - } - - /** - * Processes any new observations and then schedules its next run if it hasn't been stopped. - */ - private async processAndScheduleNext() { - const config = await this.updateConfig(); - if (this._isRunning) { - if (config.enabled && this._layerProcessors.length > 0) { - this._console.info('ArcGIS plugin checking for any pending updates or adds'); - for (const layerProcessor of this._layerProcessors) { - layerProcessor.processPendingUpdates(); - } - this._console.info('ArcGIS plugin processing new observations...'); - const activeEvents = await this._eventRepo.findActiveEvents(); - this._eventDeletionHandler.checkForEventDeletion(activeEvents, this._layerProcessors, this._firstRun); - const eventsToProcessors = this._organizer.organize(activeEvents, this._layerProcessors); - const nextQueryTime = Date.now(); - for (const pair of eventsToProcessors) { - this._console.info('ArcGIS getting newest observations for event ' + pair.event.name); - const obsRepo = await this._obsRepos(pair.event.id); - const pagingSettings = { - pageSize: config.batchSize, - pageIndex: 0, - includeTotalCount: true - } - let morePages = true; - let numberLeft = 0; - while (morePages) { - numberLeft = await this.queryAndSend(config, pair.featureLayerProcessors, obsRepo, pagingSettings, numberLeft); - morePages = numberLeft > 0; - } - } - - for (const layerProcessor of this._layerProcessors) { - layerProcessor.lastTimeStamp = nextQueryTime; - } - - this._firstRun = false; - } - this.scheduleNext(config); - } - } - - private scheduleNext(config: ArcGISPluginConfig) { - if (this._isRunning) { - let interval = config.intervalSeconds; - if (this._firstRun && config.featureServices.length > 0) { - interval = config.startupIntervalSeconds; - } else { - for (const layerProcessor of this._layerProcessors) { - if (layerProcessor.hasPendingUpdates()) { - interval = config.updateIntervalSeconds; - break; - } - } - } - this._nextTimeout = setTimeout(() => { this.processAndScheduleNext() }, interval * 1000); - } - } - - /** - * Queries for new observations and sends them to any configured arc servers. - * @param config The plugin configuration. - * @param layerProcessors The layer processors to use when processing arc objects. - * @param obsRepo The observation repo for an event. - * @param pagingSettings Current paging settings. - * @param numberLeft The number of observations left to query and send to arc. - * @returns The number of observations still needing to be queried and sent to arc. - */ - private async queryAndSend(config: ArcGISPluginConfig, layerProcessors: FeatureLayerProcessor[], obsRepo: EventScopedObservationRepository, pagingSettings: PagingParameters, numberLeft: number): Promise { - let newNumberLeft = numberLeft; - - let queryTime = -1; - for (const layerProcessor of layerProcessors) { - if (queryTime == -1 || layerProcessor.lastTimeStamp < queryTime) { - queryTime = layerProcessor.lastTimeStamp; - } - } - - let latestObs = await obsRepo.findLastModifiedAfter(queryTime, pagingSettings); - if (latestObs != null && latestObs.totalCount != null && latestObs.totalCount > 0) { - if (pagingSettings.pageIndex == 0) { - this._console.info('ArcGIS newest observation count ' + latestObs.totalCount); - newNumberLeft = latestObs.totalCount; - } - const observations = latestObs.items - const mageEvent = await this._eventRepo.findById(obsRepo.eventScope) - const eventTransform = new EventTransform(config, mageEvent) - const arcObjects = new ArcObjects() - this._geometryChangeHandler.checkForGeometryChange(observations, arcObjects, layerProcessors, this._firstRun); - for (let i = 0; i < observations.length; i++) { - const observation = observations[i] - let deletion = false - if (observation.states.length > 0) { - deletion = observation.states[0].name.startsWith('archive') - } - if (deletion) { - const arcObservation = this._transformer.createObservation(observation) - arcObjects.deletions.push(arcObservation) - } else { - let user = null - if (observation.userId != null) { - user = await this._userRepo.findById(observation.userId) - } - const arcObservation = this._transformer.transform(observation, eventTransform, user) - arcObjects.add(arcObservation) - } - } - arcObjects.firstRun = this._firstRun; - for (const layerProcessor of layerProcessors) { - layerProcessor.processArcObjects(JSON.parse(JSON.stringify(arcObjects))); - } - newNumberLeft -= latestObs.items.length; - pagingSettings.pageIndex++; - } else { - this._console.info('ArcGIS no new observations') - } - - return newNumberLeft; - } + /** + * True if the processor is currently active, false otherwise. + */ + private _isRunning: boolean = false; + + /** + * The next timeout, use this to cancel the next one if the processor is stopped. + */ + private _nextTimeout: NodeJS.Timeout | undefined; + + /** + * Used to get all the active events. + */ + private _eventRepo: MageEventRepository; + + /** + * Used to get new observations. + */ + private _obsRepos: ObservationRepositoryForEvent; + + /** + * Used to get user information. + */ + private _userRepo: UserRepository; + + /** + * Used to manager ArcGIS user identities + */ + private _identityService: ArcGISIdentityService; + + /** + * Used to log to the console. + */ + private _console: Console; + + /** + * Used to convert observations to json string that can be sent to an arcgis server. + */ + private _transformer: ObservationsTransformer; + + /** + * Contains the different feature layers to send observations too. + */ + private _stateRepo: PluginStateRepository; + + /** + * The previous plugins configuration JSON. + */ + private _previousConfig?: string; + + /** + * Sends observations to a single feature layer. + */ + private _layerProcessors: FeatureLayerProcessor[] = []; + + /** + * True if this is a first run at updating arc feature layers. If so we need to make sure the layers are + * all up to date. + */ + private _firstRun: boolean = true; + + /** + * Handles removing observation from previous layers when an observation geometry changes. + */ + private _geometryChangeHandler: GeometryChangedHandler; + + /** + * Handles removing observations when an event is deleted. + */ + private _eventDeletionHandler: EventDeletionHandler; + + /** + * Maps the events to the processor they are synching data for. + */ + private _organizer: EventLayerProcessorOrganizer; + + /** + * Constructor. + * @param {PluginStateRepository} stateRepo The plugins configuration. + * @param {MageEventRepository} eventRepo Used to get all the active events. + * @param {ObservationRepositoryForEvent} obsRepos Used to get new observations. + * @param {UserRepository} userRepo Used to get user information. + * @param {ArcGISIdentityService} identityService Used to manager ArcGIS user identities. + * @param {Console} console Used to log to the console. + */ + constructor( + stateRepo: PluginStateRepository, + eventRepo: MageEventRepository, + obsRepos: ObservationRepositoryForEvent, + userRepo: UserRepository, + identityService: ArcGISIdentityService, + console: Console + ) { + this._stateRepo = stateRepo; + this._eventRepo = eventRepo; + this._obsRepos = obsRepos; + this._userRepo = userRepo; + this._identityService = identityService; + this._console = console; + this._organizer = new EventLayerProcessorOrganizer(); + this._transformer = new ObservationsTransformer(defaultArcGISPluginConfig, console); + this._geometryChangeHandler = new GeometryChangedHandler(this._transformer); + this._eventDeletionHandler = new EventDeletionHandler(this._console, defaultArcGISPluginConfig); + } + + /** + * Gets the current configuration from the database. + * @returns {Promise} The current configuration from the database. + */ + public async safeGetConfig(): Promise { + const state = await this._stateRepo.get(); + if (!state) return await this._stateRepo.put(defaultArcGISPluginConfig as never); + return await this._stateRepo.get().then((state) => state ? state : this._stateRepo.put(defaultArcGISPluginConfig as never)); + } + + /** + * Puts a new confguration in the state repo. + * @param {ArcGISPluginConfig} newConfig The new config to put into the state repo. + * @returns {Promise} The updated configuration. + */ + public async putConfig(newConfig: ArcGISPluginConfig): Promise { + return await this._stateRepo.put(newConfig as never); + } + + /** + * Updates the confguration in the state repo. + * @param {ArcGISPluginConfig} newConfig The new config to put into the state repo. + * @returns {Promise} The updated configuration. + */ + public async patchConfig(newConfig: ArcGISPluginConfig): Promise { + return await this._stateRepo.patch(newConfig as never); + } + + /** + * Gets the current configuration and updates the processor if needed + * @returns {Promise} The current configuration from the database. + */ + private async updateConfig(): Promise { + const config = await this.safeGetConfig(); + + if (!config.enabled) { + this._console.info('ArcGIS plugin is disabled, stopping processor'); + this.stop(); + return config; + } + + // Include configured eventform definitions while detecting changes in config + const eventIds = config.featureServices + .flatMap(service => service.layers) + .flatMap(layer => layer.eventIds) + .filter((eventId): eventId is MageEventId => typeof eventId === 'number'); + + const eventForms = await this._eventRepo.findAllByIds(eventIds); + const fullConfig = { ...config, eventForms }; + + const configJson = JSON.stringify(fullConfig) + if (this._previousConfig == null || this._previousConfig !== configJson) { + this._transformer = new ObservationsTransformer(config, console); + this._geometryChangeHandler = new GeometryChangedHandler(this._transformer); + this._eventDeletionHandler.updateConfig(config); + this._layerProcessors = []; + this._previousConfig = configJson + await this.getFeatureServiceLayers(config); + } + return config; + } + + /** + * Starts the processor. + */ + async start() { + this._isRunning = true; + this._firstRun = true; + await this.processAndScheduleNext(); + } + + /** + * Stops the processor. + */ + stop() { + this._isRunning = false; + clearTimeout(this._nextTimeout); + } + + /** + * Gets information on all the configured features service layers. + * @param {ArcGISPluginConfig} config The plugins configuration. + * @returns {Promise} + */ + private async getFeatureServiceLayers(config: ArcGISPluginConfig) { + const promises = []; + for (const service of config.featureServices) { + try { + promises.push(this.handleFeatureService(service, config)) + } catch (err) { + console.error(err); + } + } + await Promise.all(promises); + } + + /** + * Called when information on a feature service is returned from an arc server. + * @param {FeatureServiceResult} featureService The feature service. + * @param {FeatureServiceConfig} featureServiceConfig The feature service config. + * @param {ArcGISPluginConfig} config The plugin configuration. + */ + private async handleFeatureService(featureServiceConfig: FeatureServiceConfig, config: ArcGISPluginConfig) { + const identityManager = await this._identityService.signin(featureServiceConfig) + const featureService = new FeatureService(console, featureServiceConfig, identityManager) + const arcService = await featureService.getService(); + + for (const featureLayer of arcService.layers) { + const featureLayerConfig = featureServiceConfig.layers.find(layer => layer.layer.toString() === featureLayer.name.toString()); + if (featureLayerConfig) { + const url = `${featureServiceConfig.url}/${featureLayer.id}`; + const layerInfo = await featureService.getLayer(featureLayer.id); + if (featureLayer.geometryType != null) { + // TODO The featureLayerConfig should contain the layer id + featureLayerConfig.layer = featureLayer.id; + const admin = new FeatureServiceAdmin(config, this._identityService, this._console) + const eventIds = featureLayerConfig.eventIds || [] + const layerFields = await admin.updateLayer(featureServiceConfig, featureLayerConfig, layerInfo, this._eventRepo) + const info = new LayerInfo(url, eventIds, { ...layerInfo, fields: layerFields } as LayerInfoResult); + const layerProcessor = new FeatureLayerProcessor(info, config, identityManager, this._console); + this._layerProcessors.push(layerProcessor); + } + } + } + } + + /** + * Processes any new observations and then schedules its next run if it hasn't been stopped. + */ + private async processAndScheduleNext() { + const config = await this.updateConfig(); + if (this._isRunning) { + if (config.enabled && this._layerProcessors.length > 0) { + this._console.info('ArcGIS plugin checking for any pending updates or adds'); + const pendingPromises = []; + for (const layerProcessor of this._layerProcessors) { + pendingPromises.push(layerProcessor.processPendingUpdates()); + } + await Promise.all(pendingPromises); + this._console.info('ArcGIS plugin processing new observations...'); + const enabledEvents = (await this._eventRepo.findActiveEvents()).filter(event => + this._layerProcessors.some(layerProcessor => + layerProcessor.layerInfo.hasEvent(event.id) + ) + ); + this._eventDeletionHandler.checkForEventDeletion(enabledEvents, this._layerProcessors, this._firstRun); + const eventsToProcessors = this._organizer.organize(enabledEvents, this._layerProcessors); + const nextQueryTime = Date.now(); + const promises = []; + for (const pair of eventsToProcessors) { + promises.push(new Promise(async (resolve, reject) => { + this._console.info('ArcGIS getting newest observations for event ' + pair.event.name); + const obsRepo = await this._obsRepos(pair.event.id); + const pagingSettings = { + pageSize: config.batchSize, + pageIndex: 0, + includeTotalCount: true + } + let morePages = true; + let numberLeft = 0; + while (morePages) { + numberLeft = await this.queryAndSend(config, pair.featureLayerProcessors, obsRepo, pagingSettings, numberLeft); + morePages = numberLeft > 0; + } + resolve(); + })); + } + await Promise.all(promises); + + for (const layerProcessor of this._layerProcessors) { + layerProcessor.lastTimeStamp = nextQueryTime; + } + + this._firstRun = false; + + // ArcGISIndentityManager access tokens may have been updated check and save + this._identityService.updateIndentityManagers(); + } + this.scheduleNext(config); + } + } + + private scheduleNext(config: ArcGISPluginConfig) { + if (this._isRunning) { + let interval = config.intervalSeconds; + if (this._firstRun && config.featureServices.length > 0) { + interval = config.startupIntervalSeconds; + } else { + for (const layerProcessor of this._layerProcessors) { + if (layerProcessor.hasPendingUpdates()) { + interval = config.updateIntervalSeconds; + break; + } + } + } + this._nextTimeout = setTimeout(() => { this.processAndScheduleNext(); }, interval * 1000); + } + } + + /** + * Queries for new observations and sends them to any configured arc servers. + * @param {ArcGISPluginConfig} config The plugin configuration. + * @param {FeatureLayerProcessor[]} layerProcessors The layer processors to use when processing arc objects. + * @param {EventScopedObservationRepository} obsRepo The observation repo for an event. + * @param {PagingParameters} pagingSettings Current paging settings. + * @param {number} numberLeft The number of observations left to query and send to arc. + * @returns {Promise} The number of observations still needing to be queried and sent to arc. + */ + private async queryAndSend(config: ArcGISPluginConfig, layerProcessors: FeatureLayerProcessor[], obsRepo: EventScopedObservationRepository, pagingSettings: PagingParameters, numberLeft: number): Promise { + let newNumberLeft = numberLeft; + + let queryTime = -1; + for (const layerProcessor of layerProcessors) { + if (queryTime === -1 || layerProcessor.lastTimeStamp < queryTime) { + queryTime = layerProcessor.lastTimeStamp; + } + } + + const latestObs = await obsRepo.findLastModifiedAfter(queryTime, pagingSettings); + if (latestObs?.totalCount != null && latestObs.totalCount > 0) { + if (pagingSettings.pageIndex === 0) { + this._console.info('ArcGIS newest observation count ' + latestObs.totalCount); + newNumberLeft = latestObs.totalCount; + } + const observations = latestObs.items; + const mageEvent = await this._eventRepo.findById(obsRepo.eventScope); + const eventTransform = new EventTransform(config, mageEvent); + const arcObjects = new ArcObjects(); + this._geometryChangeHandler.checkForGeometryChange(observations, arcObjects, layerProcessors, this._firstRun); + for (const observation of observations) { + // TODO: Should archived observations be removed after a certain time? Also this uses 'startsWith' because not all deleted observations use 'archived' which is a bug + if (observation.states.length > 0 && observation.states[0].name.startsWith('archive')) { + const arcObservation = this._transformer.createObservation(observation); + arcObjects.deletions.push(arcObservation); + } else { + let user = null; + if (observation.userId != null) { + user = await this._userRepo.findById(observation.userId); + } + const arcObservation = this._transformer.transform(observation, eventTransform, user); + arcObjects.add(arcObservation); + } + } + arcObjects.firstRun = this._firstRun; + for (const layerProcessor of layerProcessors) { + layerProcessor.processArcObjects(arcObjects); + } + newNumberLeft -= latestObs.items.length; + pagingSettings.pageIndex++; + } else { + this._console.info('ArcGIS no new observations'); + } + + return newNumberLeft; + } } \ No newline at end of file diff --git a/plugins/arcgis/service/src/ObservationsSender.ts b/plugins/arcgis/service/src/ObservationsSender.ts index 403ac484e..923be99cc 100644 --- a/plugins/arcgis/service/src/ObservationsSender.ts +++ b/plugins/arcgis/service/src/ObservationsSender.ts @@ -1,14 +1,14 @@ -import { ArcGISPluginConfig } from "./ArcGISPluginConfig"; +import { ArcGISPluginConfig } from "./types/ArcGISPluginConfig"; import { ArcObjects } from './ArcObjects'; -import { ArcObservation, ArcAttachment } from './ArcObservation'; -import { HttpClient } from './HttpClient'; +import { ArcObservation, ArcAttachment } from './types/ArcObservation'; import { LayerInfo } from "./LayerInfo"; -import { EditResult } from './EditResult'; -import { AttachmentInfosResult, AttachmentInfo } from './AttachmentInfosResult'; +import { EditResult } from './types/EditResult'; +import { AttachmentInfosResult, AttachmentInfo } from './types/AttachmentInfosResult'; import environment from '@ngageoint/mage.service/lib/environment/env' import fs from 'fs' import path from 'path' -import FormData from 'form-data'; +import { ArcGISIdentityManager, IFeature, request } from "@esri/arcgis-rest-request" +import { addFeatures, updateFeatures, deleteFeatures, getAttachments, updateAttachment, addAttachment, deleteAttachments } from "@esri/arcgis-rest-feature-service"; /** * Class that transforms observations into a json string that can then be sent to an arcgis server. @@ -20,26 +20,11 @@ export class ObservationsSender { */ private _url: string; - /** - * The full url to the feature layer receiving observations. - */ - private _urlAdd: string; - - /** - * The full url to the feature layer receiving updates. - */ - private _urlUpdate: string; - /** * Used to log to the console. */ private _console: Console; - /** - * Used to send the observations to an arc server. - */ - private _httpClient: HttpClient; - /** * The attachment base directory */ @@ -50,189 +35,165 @@ export class ObservationsSender { */ private _config: ArcGISPluginConfig; + private _identityManager: ArcGISIdentityManager; + /** * Constructor. - * @param layerInfo The layer info. - * @param config The plugins configuration. - * @param console Used to log to the console. + * @param {LayerInfo} layerInfo The layer info. + * @param {ArcGISPluginConfig} config The plugins configuration. + * @param {ArcGISIdentityManager} identityManager The ArcGIS identity manager for authentication. + * @param {Console} console Used to log to the console. */ - constructor(layerInfo: LayerInfo, config: ArcGISPluginConfig, console: Console) { + constructor(layerInfo: LayerInfo, config: ArcGISPluginConfig, identityManager: ArcGISIdentityManager, console: Console) { this._url = layerInfo.url; - this._urlAdd = this._url + '/addFeatures'; - this._urlUpdate = this._url + '/updateFeatures'; this._console = console; - this._httpClient = new HttpClient(console, layerInfo.token); this._attachmentDirectory = environment.attachmentBaseDirectory; this._config = config; + this._identityManager = identityManager; } /** * Converts the specified observations into a json string that can be sent to an arcgis server and * sends them to an arc server for adding. - * @param observations The observations to convert. + * @param {ArcObjects} observations The observations to convert. */ - sendAdds(observations: ArcObjects) { - const contentString = 'gdbVersion=&rollbackOnFailure=true&timeReferenceUnknownClient=false&features=' + JSON.stringify(observations.objects); - - this._console.info('ArcGIS addFeatures url ' + this._urlAdd); - this._console.info('ArcGIS addFeatures content ' + contentString); - - let responseHandler = this.addResponseHandler(observations) - this._httpClient.sendPostHandleResponse(this._urlAdd, contentString, responseHandler); + async sendAdds(observations: ArcObjects) { + this._console.info('ArcGIS addFeatures'); + + await addFeatures({ + url: this._url, + authentication: this._identityManager, + features: observations.objects as IFeature[] + }).then(this.responseHandler(observations, false)) + .catch((error) => this._console.error('Error in ObservationSender.sendAdds :: ' + error)); } /** * Converts the specified observations into a json string that can be sent to an arcgis server and * sends them to an arc server for updating. - * @param observations The observations to convert. - * @returns The json string of the observations. + * @param {ArcObjects} observations The observations to convert. */ - sendUpdates(observations: ArcObjects) { - const contentString = 'gdbVersion=&rollbackOnFailure=true&timeReferenceUnknownClient=false&features=' + JSON.stringify(observations.objects); - - this._console.info('ArcGIS updateFeatures url ' + this._urlUpdate); - this._console.info('ArcGIS updateFeatures content ' + contentString); - - let responseHandler = this.updateResponseHandler(observations) - this._httpClient.sendPostHandleResponse(this._urlUpdate, contentString, responseHandler); + async sendUpdates(observations: ArcObjects) { + this._console.info('ArcGIS updateFeatures'); + + await updateFeatures({ + url: this._url, + authentication: this._identityManager, + features: observations.objects as IFeature[] + }).then(this.responseHandler(observations, true)) + .catch((error) => this._console.error('Error in ObservationSender.sendUpdates :: ' + error)); } /** * Delete an observation. - * @param id The observation id. + * @param {number} id The observation id. */ - sendDelete(id: string) { - - const url = this._url + '/deleteFeatures' - - this._console.info('ArcGIS deleteFeatures url ' + url + ', ' + this._config.observationIdField + ': ' + id) - - const form = new FormData() - form.append('where', this._config.observationIdField + ' LIKE\'' + id + "%\'") - - this._httpClient.sendPostForm(url, form) - + async sendDelete(id: string) { + this._console.info('ArcGIS deleteFeatures id: ' + id) + + await deleteFeatures({ + url: this._url, + authentication: this._identityManager, + where: `${this._config.observationIdField} LIKE '%${id}%'`, + objectIds: [] + }).catch((error) => this._console.error('Error in ObservationSender.sendDelete :: ' + error)); } /** * Deletes all observations that are apart of a specified event. - * @param id The event id. - */ - sendDeleteEvent(id: number) { - - const url = this._url + '/deleteFeatures' - - this._console.info('ArcGIS deleteFeatures by event url ' + url + ', ' + this._config.observationIdField + ': ' + id) - - const form = new FormData() - - if (this._config.eventIdField == null) { - form.append('where', this._config.observationIdField + ' LIKE\'%' + this._config.idSeparator + id + '\'') - } else { - form.append('where', this._config.eventIdField + '=' + id) - } - - this._httpClient.sendPostForm(url, form) - - } - - /** - * Creates an add observation response handler. - * @param observations The observations sent. - * @returns The response handler. - */ - private addResponseHandler(observations: ArcObjects): (chunk: any) => void { - return this.responseHandler(observations, false) - } - - /** - * Creates an update observation response handler. - * @param observations The observations sent. - * @returns The response handler. + * @param {number} id The event id. */ - private updateResponseHandler(observations: ArcObjects): (chunk: any) => void { - return this.responseHandler(observations, true) + async sendDeleteEvent(id: number) { + this._console.info('ArcGIS deleteFeatures by event ' + this._config.observationIdField + ': ' + id); + + await deleteFeatures({ + url: this._url, + authentication: this._identityManager, + where: this._config.eventIdField + ? `${this._config.eventIdField} = ${id}` + : `${this._config.observationIdField} LIKE '%${this._config.idSeparator + id}%'`, + objectIds: [] + }).catch((error) => this._console.error('Error in ObservationSender.sendDeleteEvent :: ' + error)); } /** * Creates an observation response handler. - * @param observations The observations sent. - * @param update The update or add flag value. - * @returns The response handler. + * @param {ArcObjects} observations The observations sent. + * @param {boolean} update The update or add flag value. + * @returns {(chunk: any) => void} The response handler. */ - private responseHandler(observations: ArcObjects, update: boolean): (chunk: any) => void { - const console = this._console - return (chunk: any) => { - console.log('ArcGIS ' + (update ? 'Update' : 'Add') + ' Response: ' + chunk) - const response = JSON.parse(chunk) - const results = response[update ? 'updateResults' : 'addResults'] as EditResult[] + private responseHandler(observations: ArcObjects, update: boolean): (chunk: { addResults?: EditResult[], updateResults?: EditResult[] }) => void { + const console = this._console; + return (chunk: { addResults?: EditResult[], updateResults?: EditResult[] }) => { + console.log('ArcGIS ' + (update ? 'Update' : 'Add') + ' Response: ' + JSON.stringify(chunk)); + const response = chunk; + const results = response[update ? 'updateResults' : 'addResults'] as EditResult[]; if (results != null) { - const obs = observations.observations + const obs = observations.observations; for (let i = 0; i < obs.length && i < results.length; i++) { - const observation = obs[i] - const result = results[i] + const observation = obs[i]; + const result = results[i]; if (result.success != null && result.success) { - const objectId = result.objectId + const objectId = result.objectId; if (objectId != null) { - console.log((update ? 'Update' : 'Add') + ' Features Observation id: ' + observation.id + ', Object id: ' + objectId) + console.log((update ? 'Update' : 'Add') + ' Features Observation id: ' + observation.id + ', Object id: ' + objectId); if (update) { - this.queryAndUpdateAttachments(observation, objectId) + this.queryAndUpdateAttachments(observation, objectId); } else { - this.sendAttachments(observation, objectId) + this.sendAttachments(observation, objectId); } } } else if (result.error != null) { - console.error('ArcGIS Error. Code: ' + result.error.code + ', Description: ' + result.error.description) + console.error('ArcGIS Error. Code: ' + result.error.code + ', Description: ' + result.error.description); } } } - } + }; } /** * Send observation attachments. - * @param observation The observation. - * @param objectId The arc object id of the observation. + * @param {ArcObservation} observation The observation. + * @param {number} objectId The arc object id of the observation. */ private sendAttachments(observation: ArcObservation, objectId: number) { if (observation.attachments != null) { for (const attachment of observation.attachments) { - this.sendAttachment(attachment, objectId) + this.sendAttachment(attachment, objectId); } } } /** * Query for and update observation attachments. - * @param observation The observation. - * @param objectId The arc object id of the observation. + * @param {ArcObservation} observation The observation. + * @param {number} objectId The arc object id of the observation. */ private queryAndUpdateAttachments(observation: ArcObservation, objectId: number) { - // Query for existing attachments - const queryUrl = this._url + '/' + objectId + '/attachments' - this._httpClient.sendGetHandleResponse(queryUrl, (chunk) => { - this._console.info('ArcGIS response for ' + queryUrl + ' ' + chunk) - const result = JSON.parse(chunk) as AttachmentInfosResult - this.updateAttachments(observation, objectId, result.attachmentInfos) - }) - + getAttachments({ + url: this._url, + authentication: this._identityManager, + featureId: objectId + }).then((response) => { + const result = response as AttachmentInfosResult; + this.updateAttachments(observation, objectId, result.attachmentInfos); + }).catch((error) => this._console.error(error)); } /** * Update observation attachments. - * @param observation The observation. - * @param objectId The arc object id of the observation. - * @param attachmentInfos The arc attachment infos. + * @param {ArcObservation} observation The observation. + * @param {number} objectId The arc object id of the observation. + * @param {AttachmentInfo[]} attachmentInfos The arc attachment infos. */ private updateAttachments(observation: ArcObservation, objectId: number, attachmentInfos: AttachmentInfo[]) { - // Build a mapping between existing arc attachment names and the attachment infos - let nameAttachments = new Map() + const nameAttachments = new Map(); if (attachmentInfos != null) { for (const attachmentInfo of attachmentInfos) { - nameAttachments.set(attachmentInfo.name, attachmentInfo) + nameAttachments.set(attachmentInfo.name, attachmentInfo); } } @@ -240,19 +201,19 @@ export class ObservationsSender { if (observation.attachments != null) { for (const attachment of observation.attachments) { - const fileName = this.attachmentFileName(attachment) + const fileName = this.attachmentFileName(attachment); - const existingAttachment = nameAttachments.get(fileName) + const existingAttachment = nameAttachments.get(fileName); if (existingAttachment != null) { - nameAttachments.delete(fileName) + nameAttachments.delete(fileName); // Update the existing attachment if the file sizes do not match or last modified date updated if (attachment.size != existingAttachment.size || attachment.lastModified + this._config.attachmentModifiedTolerance >= observation.lastModified) { - this.updateAttachment(attachment, objectId, existingAttachment.id) + this.updateAttachment(attachment, objectId, existingAttachment.id); } } else { // Add the new attachment on the updated observation - this.sendAttachment(attachment, objectId) + this.sendAttachment(attachment, objectId); } } @@ -260,124 +221,106 @@ export class ObservationsSender { // Delete arc attachments that are no longer on the observation if (nameAttachments.size > 0) { - this.deleteAttachments(objectId, Array.from(nameAttachments.values())) + this.deleteAttachments(objectId, Array.from(nameAttachments.values())); } } /** * Send an observation attachment. - * @param attachment The observation attachment. - * @param objectId The arc object id of the observation. + * @param {ArcAttachment} attachment The observation attachment. + * @param {number} objectId The arc object id of the observation. */ - private sendAttachment(attachment: ArcAttachment, objectId: number) { - this.sendAttachmentPost(attachment, objectId, 'addAttachment', new FormData()) + private async sendAttachment(attachment: ArcAttachment, objectId: number) { + if (attachment.contentLocator) { + const file = path.join(this._attachmentDirectory, attachment.contentLocator!); + + const fileName = this.attachmentFileName(attachment); + this._console.info('ArcGIS ' + request + ' file ' + fileName + ' from ' + file); + + const readStream = await fs.openAsBlob(file); + const attachmentFile = new File([readStream], fileName); + + addAttachment({ + url: this._url, + authentication: this._identityManager, + featureId: objectId, + attachment: attachmentFile + }).catch((error) => this._console.error(error)); + } } /** * Update an observation attachment. - * @param attachment The observation attachment. - * @param objectId The arc object id of the observation. - * @param attachmentId The observation arc attachment id. + * @param {ArcAttachment} attachment The observation attachment. + * @param {number} objectId The arc object id of the observation. + * @param {number} attachmentId The observation arc attachment id. */ - private updateAttachment(attachment: ArcAttachment, objectId: number, attachmentId: number) { - - const form = new FormData() - form.append('attachmentId', attachmentId) - - this.sendAttachmentPost(attachment, objectId, 'updateAttachment', form) - - } - - /** - * Send an observation attachment post request. - * @param attachment The observation attachment. - * @param objectId The arc object id of the observation. - * @param request The attachment request type. - * @param form The request form data - */ - private sendAttachmentPost(attachment: ArcAttachment, objectId: number, request: string, form: FormData) { - - if (attachment.contentLocator != null) { - - const url = this._url + '/' + objectId + '/' + request - - const file = path.join(this._attachmentDirectory, attachment.contentLocator!) - - const fileName = this.attachmentFileName(attachment) - - this._console.info('ArcGIS ' + request + ' url ' + url) - this._console.info('ArcGIS ' + request + ' file ' + fileName + ' from ' + file) - - const readStream = fs.createReadStream(file) - - form.append('attachment', readStream, { - filename: fileName - }) - - this._httpClient.sendPostForm(url, form) - + private async updateAttachment(attachment: ArcAttachment, objectId: number, attachmentId: number) { + if (attachment.contentLocator) { + const file = path.join(this._attachmentDirectory, attachment.contentLocator!); + + const fileName = this.attachmentFileName(attachment); + this._console.info('ArcGIS ' + request + ' file ' + fileName + ' from ' + file); + + const readStream = await fs.openAsBlob(file); + const attachmentFile = new File([readStream], fileName); + + updateAttachment({ + url: this._url, + authentication: this._identityManager, + featureId: objectId, + attachmentId, + attachment: attachmentFile + }).catch((error) => this._console.error(error)); } - } /** * Delete observation attachments. - * @param objectId The arc object id of the observation. - * @param attachmentInfos The arc attachment infos. + * @param {number} objectId The arc object id of the observation. + * @param {AttachmentInfo[]} attachmentInfos The arc attachment infos. */ private deleteAttachments(objectId: number, attachmentInfos: AttachmentInfo[]) { - - const attachmentIds: number[] = [] + const attachmentIds: number[] = []; for (const attachmentInfo of attachmentInfos) { - attachmentIds.push(attachmentInfo.id) + attachmentIds.push(attachmentInfo.id); } - this.deleteAttachmentIds(objectId, attachmentIds) + this.deleteAttachmentIds(objectId, attachmentIds); } /** * Delete observation attachments by ids. - * @param objectId The arc object id of the observation. - * @param attachmentIds The arc attachment ids. + * @param {number} objectId The arc object id of the observation. + * @param {number[]} attachmentIds The arc attachment ids. */ private deleteAttachmentIds(objectId: number, attachmentIds: number[]) { - - const url = this._url + '/' + objectId + '/deleteAttachments' - - let ids = '' - for (const id of attachmentIds) { - if (ids.length > 0) { - ids += ', ' - } - ids += id - } - - this._console.info('ArcGIS deleteAttachments url ' + url + ', ids: ' + ids) - - const form = new FormData() - form.append('attachmentIds', ids) - - this._httpClient.sendPostForm(url, form) - + this._console.info('ArcGIS deleteAttachments ' + attachmentIds); + + deleteAttachments({ + url: this._url, + authentication: this._identityManager, + featureId: objectId, + attachmentIds + }).catch((error) => this._console.error(error)); } /** * Determine the attachment file name. - * @param attachment The observation attachment. - * @return attachment file name. + * @param {ArcAttachment} attachment The observation attachment. + * @returns {string} attachment file name. */ private attachmentFileName(attachment: ArcAttachment): string { + let fileName = attachment.field + "_" + attachment.name; - let fileName = attachment.field + "_" + attachment.name - - const extensionIndex = attachment.contentLocator.lastIndexOf('.') + const extensionIndex = attachment.contentLocator.lastIndexOf('.'); if (extensionIndex != -1) { - fileName += attachment.contentLocator.substring(extensionIndex) + fileName += attachment.contentLocator.substring(extensionIndex); } - return fileName + return fileName; } } \ No newline at end of file diff --git a/plugins/arcgis/service/src/ObservationsTransformer.ts b/plugins/arcgis/service/src/ObservationsTransformer.ts index 49abf295b..30c4f3b5f 100644 --- a/plugins/arcgis/service/src/ObservationsTransformer.ts +++ b/plugins/arcgis/service/src/ObservationsTransformer.ts @@ -1,11 +1,11 @@ -import { ArcGISPluginConfig } from "./ArcGISPluginConfig"; -import { AttributeDefaultConfig } from "./ArcGISConfig"; +import { ArcGISPluginConfig } from "./types/ArcGISPluginConfig"; +import { AttributeDefaultConfig } from "./types/ArcGISConfig"; import { ObservationAttrs, Attachment } from '@ngageoint/mage.service/lib/entities/observations/entities.observations' import { User } from '@ngageoint/mage.service/lib/entities/users/entities.users' import { FormFieldType } from '@ngageoint/mage.service/lib/entities/events/entities.events.forms' import { Geometry, Point, LineString, Polygon } from 'geojson' -import { ArcObservation, ArcAttachment } from './ArcObservation' -import { ArcGeometry, ArcObject, ArcPoint, ArcPolyline, ArcPolygon } from './ArcObject' +import { ArcObservation, ArcAttachment } from './types/ArcObservation' +import { ArcGeometry, ArcObject, ArcPoint, ArcPolyline, ArcPolygon } from './types/ArcObject' import { EventTransform } from './EventTransform' /** @@ -16,36 +16,36 @@ export class ObservationsTransformer { /** * ArcGIS configuration. */ - private _config: ArcGISPluginConfig + private _config: ArcGISPluginConfig; /** * Used to log to the console. */ - private _console: Console + private _console: Console; /** * Initialized flag */ - private _initialized: boolean = false + private _initialized: boolean = false; /** * Default values */ - private _defaults: { [attribute: string]: AttributeDefaultConfig[] } = {} + private _defaults: { [attribute: string]: AttributeDefaultConfig[] } = {}; /** * Omit attributes */ - private _omit: string[] = [] + private _omit: string[] = []; /** * Constructor. - * @param config The plugins configuration. - * @param console Used to log to the console. + * @param {ArcGISPluginConfig} config The plugins configuration. + * @param {Console} console Used to log to the console. */ constructor(config: ArcGISPluginConfig, console: Console) { - this._config = config - this._console = console + this._config = config; + this._console = console; } /** @@ -53,17 +53,17 @@ export class ObservationsTransformer { */ private init() { if (!this._initialized) { - this._initialized = true + this._initialized = true; if (this._config.attributes != null) { for (const attributes of Object.entries(this._config.attributes)) { - const attribute = attributes[0] - const attributeConfig = attributes[1] - const defaults = attributeConfig.defaults + const attribute = attributes[0]; + const attributeConfig = attributes[1]; + const defaults = attributeConfig.defaults; if (defaults != null && defaults.length > 0) { - this._defaults[attribute] = defaults + this._defaults[attribute] = defaults; } if (attributeConfig.omit) { - this._omit.push(attribute) + this._omit.push(attribute); } } } @@ -72,403 +72,397 @@ export class ObservationsTransformer { /** * Converts the specified observation into an ArcObservation that can be sent to an arcgis server. - * @param observation The observation to convert. - * @param transform The Event transform. - * @param user The MAGE user. - * @returns The ArcObservation of the observation. + * @param {ObservationAttrs} observation The observation to convert. + * @param {EventTransform} transform The Event transform. + * @param {User | null} user The MAGE user. + * @returns {ArcObservation} The ArcObservation of the observation. */ transform(observation: ObservationAttrs, transform: EventTransform, user: User | null): ArcObservation { - this.init() + this.init(); - const arcObject = {} as ArcObject + const arcObject = {} as ArcObject; - this.observationToAttributes(observation, transform, user, arcObject) + this.observationToAttributes(observation, transform, user, arcObject); if (observation.geometry != null) { - const geometry = observation.geometry - const arcGeometry = this.geometryToArcGeometry(geometry) - this._console.info('ArcGIS new ' + geometry.type + ' at ' + JSON.stringify(arcGeometry) + ' with id ' + observation.id) - arcObject.geometry = arcGeometry + const geometry = observation.geometry; + const arcGeometry = this.geometryToArcGeometry(geometry); + this._console.info('ArcGIS new ' + geometry.type + ' at ' + JSON.stringify(arcGeometry) + ' with id ' + observation.id); + arcObject.geometry = arcGeometry; } - let formIds: { [name: string]: number } = {} + let formIds: { [name: string]: number } = {}; if (observation.properties != null) { - formIds = this.propertiesToAttributes(observation.properties, transform, arcObject) + formIds = this.propertiesToAttributes(observation.properties, transform, arcObject); } - const arcObservation = this.createObservation(observation) + const arcObservation = this.createObservation(observation); if (this._config.geometryType != null) { - this.addAttribute(this._config.geometryType, arcObservation.esriGeometryType, arcObject) + this.addAttribute(this._config.geometryType, arcObservation.esriGeometryType, arcObject); } - this.addDefaults(arcObject) + this.addDefaults(arcObject); - arcObservation.createdAt = new Date(observation.createdAt).getTime() - arcObservation.lastModified = new Date(observation.lastModified).getTime() - arcObservation.object = arcObject - arcObservation.attachments = this.attachments(observation.attachments, formIds, transform) + arcObservation.createdAt = new Date(observation.createdAt).getTime(); + arcObservation.lastModified = new Date(observation.lastModified).getTime(); + arcObservation.object = arcObject; + arcObservation.attachments = this.attachments(observation.attachments, formIds, transform); - this.removeOmissions(arcObject) + this.removeOmissions(arcObject); - return arcObservation + return arcObservation; } /** * Creates a base ArcObservation with id and geometry type. - * @param observation The observation to convert. - * @returns The ArcObservation of the observation. + * @param {ObservationAttrs} observation The observation to convert. + * @returns {ArcObservation} The ArcObservation of the observation. */ createObservation(observation: ObservationAttrs): ArcObservation { - const arcObservation = {} as ArcObservation - arcObservation.id = observation.id - arcObservation.esriGeometryType = this.esriGeometryType(observation) - return arcObservation + const arcObservation = {} as ArcObservation; + arcObservation.id = observation.id; + arcObservation.esriGeometryType = this.esriGeometryType(observation); + return arcObservation; } /** * Converts a mage geometry type to an esri geometry type. - * @param mageGeometryType The mage geometry type. - * @returns The esri geometry type. + * @param {string} mageGeometryType The mage geometry type. + * @returns {string} The esri geometry type. */ mageTypeToEsriType(mageGeometryType: string): string { - let esriGeometryType = '' - switch (mageGeometryType) { case 'Point': - esriGeometryType = 'esriGeometryPoint' - break; + return 'esriGeometryPoint' case 'LineString': - esriGeometryType = 'esriGeometryPolyline' - break; + return 'esriGeometryPolyline' case 'Polygon': - esriGeometryType = 'esriGeometryPolygon' - break; + return 'esriGeometryPolygon' default: - break; + return '' } - return esriGeometryType; } /** * Determine the observation Esri geometry type. - * @param observation The observation. - * @returns The Esri geometry type. + * @param {ObservationAttrs} observation The observation. + * @returns {string} The Esri geometry type. */ private esriGeometryType(observation: ObservationAttrs): string { - let esriGeometryType = '' if (observation.geometry != null) { esriGeometryType = this.mageTypeToEsriType(observation.geometry.type); } - return esriGeometryType + return esriGeometryType; } /** * Converts and adds observation values to ArcObject attributes. - * @param observation The observation to convert. - * @param transform The Event transform. - * @param user The MAGE user. - * @param arcObject The converted ArcObject. + * @param {ObservationAttrs} observation The observation to convert. + * @param {EventTransform} transform The Event transform. + * @param {User | null} user The MAGE user. + * @param {ArcObject} arcObject The converted ArcObject. */ private observationToAttributes(observation: ObservationAttrs, transform: EventTransform, user: User | null, arcObject: ArcObject) { - let observationIdValue = observation.id + let observationIdValue = observation.id; if (this._config.eventIdField == null) { - observationIdValue += this._config.idSeparator + observation.eventId + observationIdValue += this._config.idSeparator + observation.eventId; } else { - this.addAttribute(this._config.eventIdField, observation.eventId, arcObject) + this.addAttribute(this._config.eventIdField, observation.eventId, arcObject); } - this.addAttribute(this._config.observationIdField, observationIdValue, arcObject) - const mageEvent = transform.mageEvent + this.addAttribute(this._config.observationIdField, observationIdValue, arcObject); + const mageEvent = transform.mageEvent; if (this._config.eventNameField != null && mageEvent != null) { - this.addAttribute(this._config.eventNameField, mageEvent.name, arcObject) + this.addAttribute(this._config.eventNameField, mageEvent.name, arcObject); } if (this._config.userIdField != null && observation.userId != null) { - this.addAttribute(this._config.userIdField, observation.userId, arcObject) + this.addAttribute(this._config.userIdField, observation.userId, arcObject); } if (user != null) { if (this._config.usernameField != null) { - this.addAttribute(this._config.usernameField, user.username, arcObject) + this.addAttribute(this._config.usernameField, user.username, arcObject); } if (this._config.userDisplayNameField != null) { - this.addAttribute(this._config.userDisplayNameField, user.displayName, arcObject) + this.addAttribute(this._config.userDisplayNameField, user.displayName, arcObject); } } if (this._config.deviceIdField != null && observation.deviceId != null) { - this.addAttribute(this._config.deviceIdField, observation.deviceId, arcObject) + this.addAttribute(this._config.deviceIdField, observation.deviceId, arcObject); } if (this._config.createdAtField != null) { - this.addAttribute(this._config.createdAtField, observation.createdAt, arcObject) + this.addAttribute(this._config.createdAtField, observation.createdAt, arcObject); } if (this._config.lastModifiedField != null) { - this.addAttribute(this._config.lastModifiedField, observation.lastModified, arcObject) + this.addAttribute(this._config.lastModifiedField, observation.lastModified, arcObject); } } /** * Converts an observation geometry to an ArcGeometry. - * @param geometry The observation geometry to convert. - * @returns The converted ArcGeometry. + * @param {Geometry} geometry The observation geometry to convert. + * @returns {ArcGeometry} The converted ArcGeometry. */ private geometryToArcGeometry(geometry: Geometry): ArcGeometry { - var arcGeometry = {} as ArcGeometry + let arcGeometry = {} as ArcGeometry; switch (geometry.type) { case 'Point': - arcGeometry = this.pointToArcPoint(geometry as Point) + arcGeometry = this.pointToArcPoint(geometry as Point); break; case 'LineString': - arcGeometry = this.lineStringToArcPolyline(geometry as LineString) + arcGeometry = this.lineStringToArcPolyline(geometry as LineString); break; case 'Polygon': - arcGeometry = this.polygonToArcPolygon(geometry as Polygon) + arcGeometry = this.polygonToArcPolygon(geometry as Polygon); break; default: break; } - arcGeometry.spatialReference = { wkid: 4326 } + arcGeometry.spatialReference = { wkid: 4326 }; - return arcGeometry + return arcGeometry; } /** * Converts an observation Point to an ArcPoint. - * @param point The observation Point to convert. - * @returns The converted ArcPoint. + * @param {Point} point The observation Point to convert. + * @returns {ArcPoint} The converted ArcPoint. */ private pointToArcPoint(point: Point): ArcPoint { - const arcPoint = {} as ArcPoint - arcPoint.x = point.coordinates[0] - arcPoint.y = point.coordinates[1] - return arcPoint + const arcPoint = {} as ArcPoint; + arcPoint.x = point.coordinates[0]; + arcPoint.y = point.coordinates[1]; + return arcPoint; } /** * Converts an observation LineString to an ArcPolyline. - * @param lineString The observation LineString to convert. - * @returns The converted ArcPolyline. + * @param {LineString} lineString The observation LineString to convert. + * @returns {ArcPolyline} The converted ArcPolyline. */ private lineStringToArcPolyline(lineString: LineString): ArcPolyline { - const arcPolyline = {} as ArcPolyline - arcPolyline.paths = [lineString.coordinates] - return arcPolyline + const arcPolyline = {} as ArcPolyline; + arcPolyline.paths = [lineString.coordinates]; + return arcPolyline; } /** * Converts an observation Polygon to an ArcPolygon. - * @param polygon The observation Polygon to convert. - * @returns The converted ArcPolygon. + * @param {Polygon} polygon The observation Polygon to convert. + * @returns {ArcPolygon} The converted ArcPolygon. */ private polygonToArcPolygon(polygon: Polygon): ArcPolygon { - const arcPolygon = {} as ArcPolygon - arcPolygon.rings = polygon.coordinates - return arcPolygon + const arcPolygon = {} as ArcPolygon; + arcPolygon.rings = polygon.coordinates; + return arcPolygon; } /** * Converts and adds observation properties to ArcObject attributes. - * @param properties The observation properties to convert. - * @param transform The Event transform. - * @param arcObject The converted ArcObject. - * @return form ids map + * @param {{ [name: string]: unknown }} properties The observation properties to convert. + * @param {EventTransform} transform The Event transform. + * @param {ArcObject} arcObject The converted ArcObject. + * @returns {{ [name: string]: number }} form ids map */ private propertiesToAttributes(properties: { [name: string]: any }, transform: EventTransform, arcObject: ArcObject): { [name: string]: number } { - let formIds: { [name: string]: number } = {} + let formIds: { [name: string]: number } = {}; for (const property in properties) { const value = properties[property] - if (property == 'forms') { + if (property === 'forms') { formIds = this.formsToAttributes(value, transform, arcObject) } else { - this.addAttribute(property, value, arcObject) + this.addAttribute(property, value, arcObject); } } - return formIds + return formIds; } /** * Converts and adds observation property forms data to ArcObject attributes. - * @param forms The observation property forms to convert. - * @param transform The Event transform. - * @param arcObject The converted ArcObject. - * @return form ids map + * @param {[{ [name: string]: unknown }]} forms The observation property forms to convert. + * @param {EventTransform} transform The Event transform. + * @param {ArcObject} arcObject The converted ArcObject. + * @returns {{ [name: string]: number }} form ids map */ private formsToAttributes(forms: [{ [name: string]: any }], transform: EventTransform, arcObject: ArcObject): { [name: string]: number } { - const formIds: { [id: string]: number } = {} - const formIdCount: { [id: number]: number } = {} + const formIds: { [id: string]: number } = {}; + const formIdCount: { [id: number]: number } = {}; - const mageEvent = transform.mageEvent + const mageEvent = transform.mageEvent; for (let i = 0; i < forms.length; i++) { - const form = forms[i] - const formId = form['formId'] - const id = form['id'] - let fields = null - let formCount = 1 + const form = forms[i]; + const formId = form['formId']; + const id = form['id']; + let fields = null; + let formCount = 1; if (formId != null && id != null) { - formIds[id] = formId - let count = formIdCount[formId] + formIds[id] = formId; + let count = formIdCount[formId]; if (count == null) { - count = 0 + count = 0; } - formCount = count + 1 - formIdCount[formId] = formCount - fields = transform.get(formId) + formCount = count + 1; + formIdCount[formId] = formCount; + fields = transform.get(formId); } for (const formProperty in form) { - let value = form[formProperty] + let value = form[formProperty]; if (value != null) { if (mageEvent != null && formId != null) { - const field = mageEvent.formFieldFor(formProperty, formId) + const field = mageEvent.formFieldFor(formProperty, formId); if (field != null && field.type !== FormFieldType.Attachment) { let title = field.title - if (fields != undefined) { + if (fields != null) { const fieldTitle = fields.get(title) - if (fieldTitle != undefined) { - title = fieldTitle + if (fieldTitle != null) { + const sanitizedName = ObservationsTransformer.replaceSpaces(fieldTitle) + const sanitizedFormName = ObservationsTransformer.replaceSpaces(fields.name) + title = `${sanitizedFormName}_${sanitizedName}`.toLowerCase() } } - if (field.type == FormFieldType.Geometry) { + if (field.type === FormFieldType.Geometry) { value = this.geometryToArcGeometry(value) } - this.addFormAttribute(title, formCount, value, arcObject) + this.addFormAttribute(title, formCount, value, arcObject); } } else { - this.addFormAttribute(formProperty, formCount, value, arcObject) + this.addFormAttribute(formProperty, formCount, value, arcObject); } } } } - return formIds + return formIds; } /** * Add an ArcObject attribute for a form field. - * @param name The attribute name. - * @param count The form count. - * @param value The attribute value. - * @param arcObject The converted ArcObject. + * @param {string} name The attribute name. + * @param {number} count The form count. + * @param {unknown} value The attribute value. + * @param {ArcObject} arcObject The converted ArcObject. */ - private addFormAttribute(name: string, count: number, value: any, arcObject: ArcObject) { + private addFormAttribute(name: string, count: number, value: unknown, arcObject: ArcObject) { if (count > 1 && this._config.attributes != null) { - const concat = this._config.attributes[name]?.concatenation + const concat = this._config.attributes[name]?.concatenation; if (concat != null && (concat.sameForms == null || concat.sameForms)) { - count = 1 + count = 1; } } - const attribute = this.appendCount(name, count) - this.addAttribute(attribute, value, arcObject) + const attribute = this.appendCount(name, count); + this.addAttribute(attribute, value, arcObject); } /** * Add an ArcObject attribute. - * @param name The attribute name. - * @param value The attribute value. - * @param arcObject The converted ArcObject. + * @param {string} name The attribute name. + * @param {unknown} value The attribute value. + * @param {ArcObject} arcObject The converted ArcObject. */ - private addAttribute(name: string, value: any, arcObject: ArcObject) { + private addAttribute(name: string, value: unknown, arcObject: ArcObject) { if (value != null) { - if (arcObject.attributes == null) { - arcObject.attributes = {} + arcObject.attributes = {}; } - let attribute = ObservationsTransformer.replaceSpaces(name) + let attribute = ObservationsTransformer.replaceSpaces(name); if (Object.prototype.toString.call(value) === '[object Date]') { - value = new Date(value).getTime() + value = new Date(value as string).getTime(); } - let config = null + let config = null; if (this._config.attributes != null) { - config = this._config.attributes[name] + config = this._config.attributes[name]; } if (config?.mappings != null) { - const fieldValue = config.mappings[value] + const fieldValue = config.mappings[value as string]; if (fieldValue != null) { - value = fieldValue + value = fieldValue; } } - let existingValue = arcObject.attributes[attribute] + const existingValue = arcObject.attributes[attribute]; if (existingValue !== undefined) { - const concat = config?.concatenation + const concat = config?.concatenation; if (concat != null && (concat.differentForms == null || concat.differentForms)) { - let delimiter = concat.delimiter + let delimiter = concat.delimiter; if (delimiter == null) { - delimiter = ', ' + delimiter = ', '; } - value = existingValue + delimiter + value + value = existingValue + delimiter + value; } else { let baseKey = attribute let count = 1 const countIndex = attribute.lastIndexOf('_') - if (countIndex != -1) { + if (countIndex !== -1) { const countString = attribute.substring(countIndex + 1) if (countString != null && countString !== '') { - const countNumber = Number(countString) + const countNumber = Number(countString); if (!isNaN(countNumber)) { - baseKey = attribute.substring(0, countIndex) - count = countNumber + baseKey = attribute.substring(0, countIndex); + count = countNumber; } } } do { - count += 1 - attribute = this.appendCount(baseKey, count) - } while (arcObject.attributes[attribute] !== undefined) + count += 1; + attribute = this.appendCount(baseKey, count); + } while (arcObject.attributes[attribute] !== undefined); } } - arcObject.attributes[attribute] = value + arcObject.attributes[attribute] = value; } } /** * Add ArcObject attribute defaults. - * @param arcObject The converted ArcObject. + * @param {ArcObject} arcObject The converted ArcObject. */ private addDefaults(arcObject: ArcObject) { for (const attributeDefaults of Object.entries(this._defaults)) { - const attribute = attributeDefaults[0] + const attribute = attributeDefaults[0]; if (arcObject.attributes[attribute] == null) { - const defaults = attributeDefaults[1] + const defaults = attributeDefaults[1]; for (const attributeDefault of defaults) { - let setDefault = true - const condition = attributeDefault.condition + let setDefault = true; + const condition = attributeDefault.condition; if (condition != null && condition.length > 0) { for (const valueConfig of condition) { const value = arcObject.attributes[valueConfig.attribute] const values = valueConfig.values - if (values.length == 0) { + if (values.length === 0) { setDefault = value == null } else { - setDefault = values.includes(value) + setDefault = values.includes(value); } if (!setDefault) { - break + break; } } } if (setDefault) { - arcObject.attributes[attribute] = attributeDefault.value - break + arcObject.attributes[attribute] = attributeDefault.value; + break; } } } @@ -478,96 +472,96 @@ export class ObservationsTransformer { /** * Transform observation attachments. - * @param attachments The observation attachments. - * @param formIds Form ids map. - * @param transform The Event transform. - * @return The converted ArcAttachments. + * @param {readonly Attachment[]} attachments The observation attachments. + * @param {{ [name: string]: number }} formIds Form ids map. + * @param {EventTransform} transform The Event transform. + * @returns {ArcAttachment[]} The converted ArcAttachments. */ private attachments(attachments: readonly Attachment[], formIds: { [name: string]: number }, transform: EventTransform): ArcAttachment[] { - const arcAttachments: ArcAttachment[] = [] + const arcAttachments: ArcAttachment[] = []; - const mageEvent = transform.mageEvent + const mageEvent = transform.mageEvent; for (const attachment of attachments) { if (attachment.contentLocator != null) { - let fieldName = attachment.fieldName + let fieldName = attachment.fieldName; if (mageEvent != null) { - const formId = formIds[attachment.observationFormId] + const formId = formIds[attachment.observationFormId]; if (formId != null) { - const field = mageEvent.formFieldFor(fieldName, formId) + const field = mageEvent.formFieldFor(fieldName, formId); if (field != null) { - fieldName = field.title + fieldName = field.title; } } } - const arcAttachment = {} as ArcAttachment - arcAttachment.field = ObservationsTransformer.replaceSpaces(fieldName) + const arcAttachment = {} as ArcAttachment; + arcAttachment.field = ObservationsTransformer.replaceSpaces(fieldName); if (attachment.lastModified != null) { - arcAttachment.lastModified = new Date(attachment.lastModified).getTime() + arcAttachment.lastModified = new Date(attachment.lastModified).getTime(); } if (attachment.size != null) { - arcAttachment.size = attachment.size + arcAttachment.size = attachment.size; } if (attachment.name != null) { const extensionIndex = attachment.name.lastIndexOf('.') - if (extensionIndex != -1) { + if (extensionIndex !== -1) { arcAttachment.name = attachment.name.substring(0, extensionIndex) } else { - arcAttachment.name = attachment.name + arcAttachment.name = attachment.name; } } else { - arcAttachment.name = attachment.id + arcAttachment.name = attachment.id; } - arcAttachment.contentLocator = attachment.contentLocator + arcAttachment.contentLocator = attachment.contentLocator; - arcAttachments.push(arcAttachment) + arcAttachments.push(arcAttachment); } } - return arcAttachments + return arcAttachments; } /** * Replace spaces in the name with underscores. - * @param name The name. - * @return name with replaced spaces. + * @param {string} name The name. + * @returns {string} name with replaced spaces. */ static replaceSpaces(name: string): string { - return name.replace(/ /g, '_') + return name.replace(/ /g, '_'); } /** * Append a count to a name for additional duplicate field names. - * @param name The name. - * @param count The count. - * @return name with count. + * @param {string} name The name. + * @param {number} count The count. + * @returns {string} name with count. */ private appendCount(name: string, count: number): string { - let value = name + let value = name; if (count > 1) { - value += '_' + count + value += '_' + count; } - return value + return value; } /** * Remove ArcObject attribute omissions. - * @param arcObject The converted ArcObject. + * @param {ArcObject} arcObject The converted ArcObject. */ private removeOmissions(arcObject: ArcObject) { - const attributes = arcObject.attributes - const attributeKeys = Object.keys(attributes) + const attributes = arcObject.attributes; + const attributeKeys = Object.keys(attributes); for (const omit of this._omit) { - const regex = new RegExp('^' + omit + '(_\\d+)?$') - var regexAttributes = attributeKeys.filter((name) => regex.test(name)) + const regex = new RegExp('^' + omit + '(_\\d+)?$'); + const regexAttributes = attributeKeys.filter((name) => regex.test(name)); for (const attribute of regexAttributes) { - delete attributes[attribute] + delete attributes[attribute]; } } diff --git a/plugins/arcgis/service/src/index.ts b/plugins/arcgis/service/src/index.ts index f888cabf3..ff2fc8890 100644 --- a/plugins/arcgis/service/src/index.ts +++ b/plugins/arcgis/service/src/index.ts @@ -4,40 +4,55 @@ import { ObservationRepositoryToken } from '@ngageoint/mage.service/lib/plugins. import { MageEventRepositoryToken } from '@ngageoint/mage.service/lib/plugins.api/plugins.api.events' import { UserRepositoryToken } from '@ngageoint/mage.service/lib/plugins.api/plugins.api.users' import { SettingPermission } from '@ngageoint/mage.service/lib/entities/authorization/entities.permissions' -import express from 'express' -import { ArcGISPluginConfig } from './ArcGISPluginConfig' +import { MageEventId } from '@ngageoint/mage.service/lib/entities/events/entities.events' import { ObservationProcessor } from './ObservationProcessor' -import {HttpClient} from './HttpClient' -import { FeatureServiceResult } from './FeatureServiceResult' +import { ArcGISIdentityManager, request } from "@esri/arcgis-rest-request" +import { FeatureServiceConfig, FeatureLayerConfig } from './types/ArcGISConfig' +import { URL } from "node:url" +import express from 'express' +import { ArcGISIdentityService, createArcGISIdentityService, getPortalUrl } from './ArcGISService' -const logPrefix = '[mage.arcgis]' -const logMethods = ['log', 'debug', 'info', 'warn', 'error'] as const +const logPrefix = '[mage.arcgis]'; +const logMethods = ['log', 'debug', 'info', 'warn', 'error'] as const; const consoleOverrides = logMethods.reduce((overrides, fn) => { return { ...overrides, [fn]: { writable: false, - value: (...args: any[]) => { - globalThis.console[fn](new Date().toISOString(), '-', logPrefix, ...args) + value: (...args: unknown[]) => { + globalThis.console[fn](new Date().toISOString(), '-', logPrefix, ...args); } } - } as PropertyDescriptorMap -}, {} as PropertyDescriptorMap) -const console = Object.create(globalThis.console, consoleOverrides) as Console + } as PropertyDescriptorMap; +}, {} as PropertyDescriptorMap); +const console = Object.create(globalThis.console, consoleOverrides) as Console; + +type InjectedServices = { + stateRepo: typeof PluginStateRepositoryToken, + eventRepo: typeof MageEventRepositoryToken, + obsRepoForEvent: typeof ObservationRepositoryToken, + userRepo: typeof UserRepositoryToken +}; + +const pluginWebRoute = "plugins/@ngageoint/mage.arcgis.service"; -const InjectedServices = { - stateRepo: PluginStateRepositoryToken, - eventRepo: MageEventRepositoryToken, - obsRepoForEvent: ObservationRepositoryToken, - userRepo: UserRepositoryToken -} +const sanitizeFeatureService = async (config: FeatureServiceConfig, identityService: ArcGISIdentityService): Promise> => { + let authenticated = false; + try { + await identityService.signin(config); + authenticated = true; + } catch (error) { console.error('Error in sanitizeFeatureService :: ', error); } + + const { identityManager, ...sanitized } = config; + return { ...sanitized, authenticated }; +}; /** * The MAGE ArcGIS Plugin finds new MAGE observations and if configured to send the observations * to an ArcGIS server, it will then transform the observation to an ArcGIS feature and * send them to the configured ArcGIS feature layer. */ -const arcgisPluginHooks: InitPluginHook = { +const arcgisPluginHooks: InitPluginHook = { inject: { stateRepo: PluginStateRepositoryToken, eventRepo: MageEventRepositoryToken, @@ -45,60 +60,226 @@ const arcgisPluginHooks: InitPluginHook = { userRepo: UserRepositoryToken }, init: async (services): Promise => { - console.info('Intializing ArcGIS plugin...') - const { stateRepo, eventRepo, obsRepoForEvent, userRepo } = services - const processor = new ObservationProcessor(stateRepo, eventRepo, obsRepoForEvent, userRepo, console); - processor.start(); + console.info('Intializing ArcGIS plugin...'); + const { stateRepo, eventRepo, obsRepoForEvent, userRepo } = services; + + const identityService = createArcGISIdentityService(stateRepo); + const processor = new ObservationProcessor(stateRepo, eventRepo, obsRepoForEvent, userRepo, identityService, console); + await processor.start(); return { - webRoutes(requestContext: GetAppRequestContext) { - const routes = express.Router() - .use(express.json()) - .use(async (req, res, next) => { - const context = requestContext(req) - const user = context.requestingPrincipal() - if (!user.role.permissions.find(x => x === SettingPermission.UPDATE_SETTINGS)) { - return res.status(403).json({ message: 'unauthorized' }) + webRoutes: { + public: () => { + const routes = express.Router().use(express.json()); + + routes.get('/oauth/signin', async (req, res) => { + const url = req.query.featureServiceUrl as string; + if (!URL.canParse(url)) { + return res.status(404).send('invalid feature service url'); } - next() - }) - routes.route('/config') - .get(async (req, res, next) => { - console.info('Getting ArcGIS plugin config...') + + const clientId = req.query.clientId as string; + if (!clientId) { + return res.status(404).send('clientId is required'); + } + const config = await processor.safeGetConfig(); - res.json(config) - }) - .put(async (req, res, next) => { - console.info('Applying ArcGIS plugin config...') - const arcConfig = req.body as ArcGISPluginConfig - const configString = JSON.stringify(arcConfig) - console.info(configString) - processor.putConfig(arcConfig) - res.status(200).json({}) - }) - routes.route('/arcgisLayers') - .get(async (req, res, next) => { - const featureUrl = req.query.featureUrl as string; - console.info('Getting ArcGIS layer info for ' + featureUrl) - const httpClient = new HttpClient(console); - httpClient.sendGetHandleResponse(featureUrl, (chunk) => { - console.info('ArcGIS layer info response ' + chunk); - try { - const featureServiceResult = JSON.parse(chunk) as FeatureServiceResult; - res.json(featureServiceResult); - } catch(e) { - if(e instanceof SyntaxError) { - console.error('Problem with url response for url ' + featureUrl + ' error ' + e) - res.status(200).json({}) - } else { - throw e; - } + ArcGISIdentityManager.authorize({ + clientId, + portal: getPortalUrl(url), + redirectUri: `${config.baseUrl}/${pluginWebRoute}/oauth/authenticate`, + state: JSON.stringify({ url: url, clientId: clientId }) + }, res); + }); + + routes.get('/oauth/authenticate', async (req, res) => { + const code = req.query.code as string; + let state: { url: string, clientId: string }; + try { + const { url, clientId } = JSON.parse(req.query.state as string); + state = { url, clientId }; + } catch (err) { + console.error('error parsing relay state', err); + return res.sendStatus(500); + } + + const config = await processor.safeGetConfig(); + const creds = { + clientId: state.clientId, + redirectUri: `${config.baseUrl}/${pluginWebRoute}/oauth/authenticate`, + portal: getPortalUrl(state.url) + }; + ArcGISIdentityManager.exchangeAuthorizationCode(creds, code).then(async (idManager: ArcGISIdentityManager) => { + let service = config.featureServices.find(service => service.url === state.url); + if (!service) { + service = { + url: state.url, + identityManager: idManager.serialize(), + layers: [] + }; + } else { + service.identityManager = idManager.serialize(); + } + + config.featureServices.push(service); + + await processor.putConfig(config); + const sanitizedService = await sanitizeFeatureService(service, identityService); + res.send(` + + + + + + `); + }).catch((error) => res.status(400).json(error)); + }); + + return routes; + }, + protected: (requestContext: GetAppRequestContext) => { + const routes = express.Router() + .use(express.json()) + .use(async (req, res, next) => { + const context = requestContext(req); + const user = context.requestingPrincipal(); + if (!user.role.permissions.find(x => x === SettingPermission.UPDATE_SETTINGS)) { + return res.status(403).json({ message: 'unauthorized' }); } + next(); }); - }) - return routes + + routes.route('/config') + .get(async (req, res) => { + console.info('Getting ArcGIS plugin config...'); + const config = await processor.safeGetConfig(); + const { featureServices, ...remaining } = config; + + const sanitizeFeatureServices = await Promise.all( + featureServices.map(async (service) => await sanitizeFeatureService(service, identityService)) + ); + + res.json({ ...remaining, featureServices: sanitizeFeatureServices }); + }) + .put(async (req, res) => { + console.info('Applying ArcGIS plugin config...'); + const config = await stateRepo.get(); + const { featureServices: updatedServices, ...updateConfig } = req.body; + + + // Convert event names to event IDs + // Fetch all events and create a mapping of event names to event IDs + const allEvents = await eventRepo.findAll(); + const eventNameToIdMap = new Map(); + allEvents.forEach(event => { + eventNameToIdMap.set(event.name, event.id); + }); + + // Process the incoming feature services with eventIds instead of event names + const featureServices: FeatureServiceConfig[] = updatedServices.map((updateService: any) => { + const existingService = config.featureServices.find( + (featureService: FeatureServiceConfig) => featureService.url === updateService.url + ); + + // Process layers + const layers: FeatureLayerConfig[] = updateService.layers.map((layer: any) => { + // Extract event names from the incoming layer data + const eventNames: string[] = layer.events || []; + + // Convert event names to event IDs using the mapping + const eventIds = eventNames + .map(eventName => eventNameToIdMap.get(eventName)) + .filter((id): id is MageEventId => id !== undefined); + + // Construct the FeatureLayerConfig with eventIds + const featureLayerConfig: FeatureLayerConfig = { + ...layer, + eventIds: eventIds + }; + + return featureLayerConfig; + }); + + return { + url: updateService.url, + layers: layers, + // Map existing identityManager, client does not send this + identityManager: existingService?.identityManager || '', + }; + }); + + await stateRepo.patch({ ...updateConfig, featureServices }); + + // Sync configuration with feature servers by restarting observation processor + processor.stop(); + await processor.start(); + + res.status(200).json({success: true}); + }); + + routes.post('/featureService/validate', async (req, res) => { + const config = await processor.safeGetConfig(); + const { url, token, username, password } = req.body; + if (!URL.canParse(url)) { + return res.send('Invalid feature service url').status(400); + } + + let service: FeatureServiceConfig; + let identityManager: ArcGISIdentityManager; + if (token) { + identityManager = await ArcGISIdentityManager.fromToken({ token }); + service = { url, layers: [], identityManager: identityManager.serialize() }; + } else if (username && password) { + identityManager = await ArcGISIdentityManager.signIn({ + username, + password, + portal: getPortalUrl(url) + }); + service = { url, layers: [], identityManager: identityManager.serialize() }; + } else { + return res.sendStatus(400); + } + + try { + const existingService = config.featureServices.find(service => service.url === url); + if (!existingService) { + config.featureServices.push(service); + } + + await processor.patchConfig(config); + const sanitized = await sanitizeFeatureService(service, identityService); + return res.send(sanitized); + } catch (err) { + return res.send('Invalid credentials provided to communicate with feature service' + err).status(400); + } + }); + + routes.get('/featureService/layers', async (req, res) => { + const url = req.query.featureServiceUrl as string; + const config = await processor.safeGetConfig(); + const featureService = config.featureServices.find(featureService => featureService.url === url); + if (!featureService) { + return res.status(400); + } + + try { + const identityManager = await identityService.signin(featureService); + const response = await request(url, { + authentication: identityManager + }); + res.send(response.layers); + } catch (err) { + console.error(err); + res.status(500).json({ message: 'Could not get ArcGIS layer info', error: err }); + } + }); + + return routes; + } } - } + }; } -} +}; export = arcgisPluginHooks \ No newline at end of file diff --git a/plugins/arcgis/service/src/AddLayersRequest.ts b/plugins/arcgis/service/src/types/AddLayersRequest.ts similarity index 92% rename from plugins/arcgis/service/src/AddLayersRequest.ts rename to plugins/arcgis/service/src/types/AddLayersRequest.ts index 7b930e6e1..b87fd168c 100644 --- a/plugins/arcgis/service/src/AddLayersRequest.ts +++ b/plugins/arcgis/service/src/types/AddLayersRequest.ts @@ -21,8 +21,7 @@ export interface Field { alias: string sqlType: string length: number - nullable: boolean editable: boolean domain?: string - defaultValue?: any + defaultValue?: unknown } diff --git a/plugins/arcgis/service/src/ArcGISConfig.ts b/plugins/arcgis/service/src/types/ArcGISConfig.ts similarity index 71% rename from plugins/arcgis/service/src/ArcGISConfig.ts rename to plugins/arcgis/service/src/types/ArcGISConfig.ts index df860dfdc..97cc1101e 100644 --- a/plugins/arcgis/service/src/ArcGISConfig.ts +++ b/plugins/arcgis/service/src/types/ArcGISConfig.ts @@ -1,3 +1,5 @@ +import { MageEventId } from "@ngageoint/mage.service/lib/entities/events/entities.events"; + /** * Contains an arc feature service url and layers. */ @@ -9,30 +11,14 @@ export interface FeatureServiceConfig { url: string /** - * Access token - */ - token?: string - - /** - * Create layers that don't exist - */ - createLayers?: boolean - - /** - * The administration url to the arc feature service. - */ - adminUrl?: string - - /** - * Administration access token - */ - adminToken?: string + * Serialized ArcGISIdentityManager + */ + identityManager: string /** * The feature layers. */ layers: FeatureLayerConfig[] - } /** @@ -51,27 +37,12 @@ export interface FeatureLayerConfig { geometryType?: string /** - * Access token + * The event ids that sync to this arc feature layer. */ - token?: string - - /** - * The event ids or names that sync to this arc feature layer. - */ - events?: (number|string)[] - - /** - * Add layer fields from form fields - */ - addFields?: boolean - - /** - * Delete editable layer fields missing from form fields - */ - deleteFields?: boolean - + eventIds?: MageEventId[] } + /** * Attribute configurations */ @@ -85,7 +56,7 @@ export interface AttributeConfig { /** * Value mappings */ - mappings?: { [value: string]: any } + mappings?: { [value: string]: unknown } /** * Default values @@ -129,7 +100,7 @@ export interface AttributeDefaultConfig { /** * Default value. */ - value: any + value: unknown /** * Conditional attribute equality values when the default applies. @@ -151,6 +122,6 @@ export interface AttributeValueConfig { /** * Attribute values. */ - values: any[] + values: unknown[] } diff --git a/plugins/arcgis/web-app/mage-arc-web/src/lib/ArcGISPluginConfig.ts b/plugins/arcgis/service/src/types/ArcGISPluginConfig.ts similarity index 89% rename from plugins/arcgis/web-app/mage-arc-web/src/lib/ArcGISPluginConfig.ts rename to plugins/arcgis/service/src/types/ArcGISPluginConfig.ts index 2d5592c20..2936e1a71 100644 --- a/plugins/arcgis/web-app/mage-arc-web/src/lib/ArcGISPluginConfig.ts +++ b/plugins/arcgis/service/src/types/ArcGISPluginConfig.ts @@ -1,4 +1,4 @@ -import { FeatureServiceConfig, AttributeConfig } from "./ArcGISConfig" +import { FeatureServiceConfig, AttributeConfig } from "./ArcGISConfig"; /** * Contains various configuration values used by the plugin. @@ -10,6 +10,11 @@ export interface ArcGISPluginConfig { */ enabled: boolean + /** + * Mage base server url + */ + baseUrl: string + /** * Query the database for new observations to process at the given * repeating time interval in seconds. @@ -66,13 +71,13 @@ export interface ArcGISPluginConfig { idSeparator: string /** - * The event id field attribute name. - */ + * The event id field attribute name. + */ eventIdField?: string /** - * The last edited date field attribute name on the ArcGIS server. - */ + * The last edited date field attribute name on the ArcGIS server. + */ lastEditedDateField?: string /** @@ -118,7 +123,7 @@ export interface ArcGISPluginConfig { /** * Override mappings between event form fields and ArcGIS attributes as: { event: { form: { field: attribute } } } */ - fieldAttributes?: any + fieldAttributes?: unknown /** * The attribute configurations. @@ -128,7 +133,8 @@ export interface ArcGISPluginConfig { } export const defaultArcGISPluginConfig = Object.freeze({ - enabled: true, + enabled: false, + baseUrl: '', intervalSeconds: 60, startupIntervalSeconds: 1, updateIntervalSeconds: 1, @@ -139,7 +145,7 @@ export const defaultArcGISPluginConfig = Object.freeze({ textAreaFieldLength: 256, observationIdField: 'description', idSeparator: '-', - // eventIdField: 'event_id', + eventIdField: 'event_id', lastEditedDateField: 'last_edited_date', eventNameField: 'event_name', userIdField: 'user_id', @@ -156,16 +162,16 @@ export const defaultArcGISPluginConfig = Object.freeze({ { value: 3, condition: [ - { attribute:'geometry_type', values: ['esriGeometryPolyline'] } + { attribute: 'geometry_type', values: ['esriGeometryPolyline'] } ] }, { value: 1, condition: [ - { attribute:'geometry_type', values: ['esriGeometryPolygon'] } + { attribute: 'geometry_type', values: ['esriGeometryPolygon'] } ] } ] } } -}) +}); diff --git a/plugins/arcgis/service/src/ArcObject.ts b/plugins/arcgis/service/src/types/ArcObject.ts similarity index 97% rename from plugins/arcgis/service/src/ArcObject.ts rename to plugins/arcgis/service/src/types/ArcObject.ts index 67c07edda..79a7b2ee8 100644 --- a/plugins/arcgis/service/src/ArcObject.ts +++ b/plugins/arcgis/service/src/types/ArcObject.ts @@ -5,7 +5,7 @@ export interface ArcObject { geometry: ArcGeometry, attributes: { - [key: string]: any + [key: string]: unknown } } diff --git a/plugins/arcgis/service/src/ArcObservation.ts b/plugins/arcgis/service/src/types/ArcObservation.ts similarity index 86% rename from plugins/arcgis/service/src/ArcObservation.ts rename to plugins/arcgis/service/src/types/ArcObservation.ts index c45f04b0c..34fa87a5b 100644 --- a/plugins/arcgis/service/src/ArcObservation.ts +++ b/plugins/arcgis/service/src/types/ArcObservation.ts @@ -1,5 +1,5 @@ -import { ArcObject } from './ArcObject' -import { ObservationId } from '@ngageoint/mage.service/lib/entities/observations/entities.observations' +import { ArcObject } from './ArcObject'; +import { ObservationId } from '@ngageoint/mage.service/lib/entities/observations/entities.observations'; /** * The ArcGIS Observation wraps the raw ArcObject and combines Arc & MAGE metadata. diff --git a/plugins/arcgis/service/src/AttachmentInfosResult.ts b/plugins/arcgis/service/src/types/AttachmentInfosResult.ts similarity index 100% rename from plugins/arcgis/service/src/AttachmentInfosResult.ts rename to plugins/arcgis/service/src/types/AttachmentInfosResult.ts diff --git a/plugins/arcgis/service/src/EditResult.ts b/plugins/arcgis/service/src/types/EditResult.ts similarity index 100% rename from plugins/arcgis/service/src/EditResult.ts rename to plugins/arcgis/service/src/types/EditResult.ts diff --git a/plugins/arcgis/service/src/FeatureServiceResult.ts b/plugins/arcgis/service/src/types/FeatureServiceResult.ts similarity index 100% rename from plugins/arcgis/service/src/FeatureServiceResult.ts rename to plugins/arcgis/service/src/types/FeatureServiceResult.ts diff --git a/plugins/arcgis/service/src/LayerInfoResult.ts b/plugins/arcgis/service/src/types/LayerInfoResult.ts similarity index 89% rename from plugins/arcgis/service/src/LayerInfoResult.ts rename to plugins/arcgis/service/src/types/LayerInfoResult.ts index 02e0479b4..9b1a6fab9 100644 --- a/plugins/arcgis/service/src/LayerInfoResult.ts +++ b/plugins/arcgis/service/src/types/LayerInfoResult.ts @@ -14,6 +14,10 @@ export interface LayerInfoResult { */ fields: LayerField[] + /** + * The feature layer id. + */ + id: number } /** diff --git a/plugins/arcgis/service/src/QueryObjectResult.ts b/plugins/arcgis/service/src/types/QueryObjectResult.ts similarity index 90% rename from plugins/arcgis/service/src/QueryObjectResult.ts rename to plugins/arcgis/service/src/types/QueryObjectResult.ts index 29eb5dd73..785147b2a 100644 --- a/plugins/arcgis/service/src/QueryObjectResult.ts +++ b/plugins/arcgis/service/src/types/QueryObjectResult.ts @@ -1,4 +1,4 @@ -import { ArcObject } from "./ArcObject" +import { ArcObject } from "./ArcObject"; /** * ArcGIS feature layer query result. diff --git a/plugins/arcgis/web-app/.gitignore b/plugins/arcgis/web-app/.gitignore index 86d943a9b..53a8849ee 100644 --- a/plugins/arcgis/web-app/.gitignore +++ b/plugins/arcgis/web-app/.gitignore @@ -32,6 +32,7 @@ speed-measure-plugin*.json .history/* # misc +/.angular/cache /.sass-cache /connect.lock /coverage diff --git a/plugins/arcgis/web-app/angular.json b/plugins/arcgis/web-app/angular.json index cb0720258..cb311941c 100644 --- a/plugins/arcgis/web-app/angular.json +++ b/plugins/arcgis/web-app/angular.json @@ -1,49 +1,144 @@ { "$schema": "./node_modules/@angular/cli/lib/config/schema.json", "version": 1, - "newProjectRoot": ".", + "newProjectRoot": "projects", "projects": { - "mage-arc-web": { + "main": { "projectType": "library", - "root": "mage-arc-web", - "sourceRoot": "mage-arc-web/src", + "root": "projects/main", + "sourceRoot": "projects/main/src", "prefix": "arc", "architect": { "build": { - "builder": "@angular-devkit/build-ng-packagr:build", + "builder": "@ngageoint/mage.web-core-lib:amd", "options": { - "tsConfig": "mage-arc-web/tsconfig.lib.json", - "project": "mage-arc-web/ng-package.json" + "tsConfig": "projects/main/tsconfig.lib.json", + "project": "projects/main/ng-package.json" }, "configurations": { "production": { - "tsConfig": "mage-arc-web/tsconfig.lib.prod.json" + "tsConfig": "projects/main/tsconfig.lib.prod.json" } } }, "test": { "builder": "@angular-devkit/build-angular:karma", "options": { - "main": "mage-arc-web/src/test.ts", - "tsConfig": "mage-arc-web/tsconfig.spec.json", - "karmaConfig": "mage-arc-web/karma.conf.js", + "main": "projects/main/src/test.ts", + "tsConfig": "projects/main/tsconfig.spec.json", + "karmaConfig": "projects/main/karma.conf.js", "preserveSymlinks": true } + } + } + }, + "showcase": { + "projectType": "application", + "schematics": { + "@schematics/angular:component": { + "style": "scss" + } + }, + "root": "projects/showcase", + "sourceRoot": "projects/showcase/src", + "prefix": "app", + "architect": { + "build": { + "builder": "@angular-devkit/build-angular:browser", + "options": { + "outputPath": "dist/showcase", + "index": "projects/showcase/src/index.html", + "main": "projects/showcase/src/main.ts", + "polyfills": "projects/showcase/src/polyfills.ts", + "tsConfig": "projects/showcase/tsconfig.app.json", + "inlineStyleLanguage": "scss", + "assets": [ + "projects/showcase/src/favicon.ico", + "projects/showcase/src/assets" + ], + "styles": [ + "./node_modules/@angular/material/prebuilt-themes/indigo-pink.css", + "projects/showcase/src/styles.scss" + ], + "scripts": [] + }, + "configurations": { + "production": { + "budgets": [ + { + "type": "initial", + "maximumWarning": "500kb", + "maximumError": "1mb" + }, + { + "type": "anyComponentStyle", + "maximumWarning": "2kb", + "maximumError": "4kb" + } + ], + "fileReplacements": [ + { + "replace": "projects/showcase/src/environments/environment.ts", + "with": "projects/showcase/src/environments/environment.prod.ts" + } + ], + "outputHashing": "all" + }, + "development": { + "buildOptimizer": false, + "optimization": false, + "vendorChunk": true, + "extractLicenses": false, + "sourceMap": true, + "namedChunks": true + } + }, + "defaultConfiguration": "production" }, - "lint": { - "builder": "@angular-devkit/build-angular:tslint", + "serve": { + "builder": "@angular-devkit/build-angular:dev-server", "options": { - "tsConfig": [ - "mage-arc-web/tsconfig.lib.json", - "mage-arc-web/tsconfig.spec.json" + "port": 4201 + }, + "configurations": { + "production": { + "browserTarget": "showcase:build:production" + }, + "development": { + "browserTarget": "showcase:build:development" + } + }, + "defaultConfiguration": "development" + }, + "extract-i18n": { + "builder": "@angular-devkit/build-angular:extract-i18n", + "options": { + "browserTarget": "showcase:build" + } + }, + "test": { + "builder": "@angular-devkit/build-angular:karma", + "options": { + "main": "projects/showcase/src/test.ts", + "polyfills": "projects/showcase/src/polyfills.ts", + "tsConfig": "projects/showcase/tsconfig.spec.json", + "karmaConfig": "projects/showcase/karma.conf.js", + "inlineStyleLanguage": "scss", + "assets": [ + "projects/showcase/src/favicon.ico", + "projects/showcase/src/assets" + ], + "styles": [ + "./node_modules/@angular/material/prebuilt-themes/indigo-pink.css", + "projects/showcase/src/styles.scss" ], - "exclude": [ - "**/node_modules/**" - ] + "scripts": [] } } } } }, - "defaultProject": "mage-arc-web" + "cli": { + "analytics": false + } } \ No newline at end of file diff --git a/plugins/arcgis/web-app/mage-arc-web/ng-package.json b/plugins/arcgis/web-app/mage-arc-web/ng-package.json deleted file mode 100644 index 59e0fac05..000000000 --- a/plugins/arcgis/web-app/mage-arc-web/ng-package.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "$schema": "../node_modules/ng-packagr/ng-package.schema.json", - "dest": "../dist/mage-arc-web", - "lib": { - "entryFile": "src/public-api.ts" - } -} \ No newline at end of file diff --git a/plugins/arcgis/web-app/mage-arc-web/package.json b/plugins/arcgis/web-app/mage-arc-web/package.json deleted file mode 100644 index 364f52c8d..000000000 --- a/plugins/arcgis/web-app/mage-arc-web/package.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "name": "@ngageoint/mage.arc-web", - "version": "1.0.0", - "peerDependencies": { - "@ngageoint/mage.web-app": "^6.2.0" - }, - "dependencies": { - "tslib": "^1.10.0" - } -} \ No newline at end of file diff --git a/plugins/arcgis/web-app/mage-arc-web/src/index.ts b/plugins/arcgis/web-app/mage-arc-web/src/index.ts deleted file mode 100644 index e24621365..000000000 --- a/plugins/arcgis/web-app/mage-arc-web/src/index.ts +++ /dev/null @@ -1,5 +0,0 @@ -module.exports = { - webAppHooks: { - 'mage-arc-web': 'bundles/mage-arc-web.umd.js' - } -} \ No newline at end of file diff --git a/plugins/arcgis/web-app/mage-arc-web/src/lib/EventsResult.ts b/plugins/arcgis/web-app/mage-arc-web/src/lib/EventsResult.ts deleted file mode 100644 index 5d02e1aad..000000000 --- a/plugins/arcgis/web-app/mage-arc-web/src/lib/EventsResult.ts +++ /dev/null @@ -1,15 +0,0 @@ -export class EventResult { - name: string; - id: number; - forms: FormResult[]; -} - -export class FormResult { - name: string; - id: number; - fields: FieldResult[]; -} - -export class FieldResult { - title: string; -} \ No newline at end of file diff --git a/plugins/arcgis/web-app/mage-arc-web/src/lib/FeatureServiceResult.ts b/plugins/arcgis/web-app/mage-arc-web/src/lib/FeatureServiceResult.ts deleted file mode 100644 index aaab026ce..000000000 --- a/plugins/arcgis/web-app/mage-arc-web/src/lib/FeatureServiceResult.ts +++ /dev/null @@ -1,34 +0,0 @@ -/** - * ArcGIS feature service result. - * https://developers.arcgis.com/rest/services-reference/enterprise/feature-service.htm - */ -export interface FeatureServiceResult { - - /** - * The layers. - */ - layers: FeatureLayer[] - -} - -/** - * ArcGIS feature service layer. - */ -export interface FeatureLayer { - - /** - * The layer id. - */ - id: number - - /** - * The layer name. - */ - name: string - - /** - * The geometry type. - */ - geometryType: string - -} \ No newline at end of file diff --git a/plugins/arcgis/web-app/mage-arc-web/src/lib/arc-event/arc-event.component.html b/plugins/arcgis/web-app/mage-arc-web/src/lib/arc-event/arc-event.component.html deleted file mode 100644 index 043fb18ab..000000000 --- a/plugins/arcgis/web-app/mage-arc-web/src/lib/arc-event/arc-event.component.html +++ /dev/null @@ -1,51 +0,0 @@ -
-
-
-

Events

-

Change the ArcGIS layers each MAGE event sends its observations to.

-
-
-
- There are no events synchronizing to ArcGIS layers. -
-
-
- -
- -
- -
-
-
-
- This event is not synchronizing to any ArcGIS layers. -
-
-
-
- {{layerDisplay(featureLayer)}} -
-
-
-
-
-
- -

ArcGIS layers that MAGE event named {{currentEditingEvent.name}} is synchronizing

- -
-
- - {{layerDisplay(arcLayer)}} -
-
-
- - - - -
\ No newline at end of file diff --git a/plugins/arcgis/web-app/mage-arc-web/src/lib/arc-event/arc-event.component.scss b/plugins/arcgis/web-app/mage-arc-web/src/lib/arc-event/arc-event.component.scss deleted file mode 100644 index 3f476dc3e..000000000 --- a/plugins/arcgis/web-app/mage-arc-web/src/lib/arc-event/arc-event.component.scss +++ /dev/null @@ -1,69 +0,0 @@ -.arc-layer-form { - display: flex; - flex-direction: column; - min-width: 950px; -} - -section { - >* { - margin-inline-start: 1em; - } - - header { - margin-inline-start: 0; - - h1, - h2, - h3, - h4, - h5, - h6 { - margin-block-end: 0; - } - - .subheading { - margin-block-start: 0; - opacity: 0.5; - } - - margin-block-end: 2em; - } - - margin-block-start: 2em; - margin-block-end: 2em; -} - -.arcEvent { - margin-block-start: 1em; - display: grid; - grid-template-columns: 4fr 1fr; - max-width: max-content; - margin-bottom: 20px; -} - -.arcEvent__value { - grid-column-start: 1; -} - -.arcEvent__edit { - grid-column-start: 2; - text-align: end; -} - -.featureLayers { - display: grid; - opacity: 0.5; - font-size: 0.9em; -} - -.edit-icon { - vertical-align: middle; -} - -.edit-button { - opacity: 0.5; - font-size: inherit; - height: inherit; - line-height: inherit; - width: inherit; -} \ No newline at end of file diff --git a/plugins/arcgis/web-app/mage-arc-web/src/lib/arc-layer/arc-layer.component.html b/plugins/arcgis/web-app/mage-arc-web/src/lib/arc-layer/arc-layer.component.html deleted file mode 100644 index 72ae1129f..000000000 --- a/plugins/arcgis/web-app/mage-arc-web/src/lib/arc-layer/arc-layer.component.html +++ /dev/null @@ -1,86 +0,0 @@ -
-
-
-

Feature Layers

-

Add ArcGIS feature service urls and layers to sychronize MAGE data to.

-
-
- -
-
-
- There are no ArcGIS feature services currently being synchronized. -
-
-
- -
- -
- -
-
- -
-
-
-
- {{featureLayer.layer}} -
-
-
-
-
-
- - -

Add ArcGIS Feature Service

-
- -

Edit ArcGIS Feature Service

-
- -
- - URL - - - URL is required - - - - Token - - -
-

Layers

- -
-
- - {{arcLayer.name}} -
-
-
- - - - -
- -

Delete feature service?

-
- {{currentUrl}} -
-
- - - - -
\ No newline at end of file diff --git a/plugins/arcgis/web-app/mage-arc-web/src/lib/arc-layer/arc-layer.component.scss b/plugins/arcgis/web-app/mage-arc-web/src/lib/arc-layer/arc-layer.component.scss deleted file mode 100644 index 0336d7fab..000000000 --- a/plugins/arcgis/web-app/mage-arc-web/src/lib/arc-layer/arc-layer.component.scss +++ /dev/null @@ -1,86 +0,0 @@ -.arc-layer-form { - display: flex; - flex-direction: column; - min-width: 950px; -} - -section { - >* { - margin-inline-start: 1em; - } - - header { - margin-inline-start: 0; - - h1, - h2, - h3, - h4, - h5, - h6 { - margin-block-end: 0; - } - - .subheading { - margin-block-start: 0; - opacity: 0.5; - } - - margin-block-end: 2em; - } - - margin-block-start: 2em; - margin-block-end: 2em; -} - -.arcLayer { - margin-block-start: 1em; - display: grid; - grid-template-columns: 8fr 1fr 1fr; - max-width: 600px; - margin-bottom: 20px; -} - -.arcLayer__value { - grid-column-start: 1; -} - -.arcLayer__edit { - grid-column-start: 2; - text-align: end; -} - -.arcLayer__action { - grid-column-start: 3; - text-align: end; -} - -.featureLayers { - display: grid; - opacity: 0.5; - font-size: 0.9em; -} - -.edit-icon { - vertical-align: middle; -} - -.edit-button { - opacity: 0.5; - font-size: inherit; - height: inherit; - line-height: inherit; - width: inherit; -} - -.delete-icon { - vertical-align: middle; -} - -.delete-button { - opacity: 0.5; - font-size: inherit; - height: inherit; - line-height: inherit; - width: inherit; -} \ No newline at end of file diff --git a/plugins/arcgis/web-app/mage-arc-web/src/lib/arc-layer/arc-layer.component.ts b/plugins/arcgis/web-app/mage-arc-web/src/lib/arc-layer/arc-layer.component.ts deleted file mode 100644 index 330f54faf..000000000 --- a/plugins/arcgis/web-app/mage-arc-web/src/lib/arc-layer/arc-layer.component.ts +++ /dev/null @@ -1,210 +0,0 @@ -import { Component, EventEmitter, Input, OnInit, Output, TemplateRef, ViewChild } from '@angular/core'; -import { FormControl, Validators } from '@angular/forms' -import { ArcGISPluginConfig, defaultArcGISPluginConfig } from '../ArcGISPluginConfig' -import { ArcService } from '../arc.service' -import { FeatureLayerConfig, FeatureServiceConfig } from '../ArcGISConfig'; -import { MatDialog } from '@angular/material/dialog' -import { ArcLayerSelectable } from './ArcLayerSelectable'; -import { EventResult } from '../EventsResult'; - -@Component({ - selector: 'arc-layer', - templateUrl: './arc-layer.component.html', - styleUrls: ['./arc-layer.component.scss'] -}) -export class ArcLayerComponent implements OnInit { - - @Input('config') config: ArcGISPluginConfig; - @Output() configChanged = new EventEmitter(); - - layers: ArcLayerSelectable[]; - events: string[] = []; - arcLayerControl = new FormControl('', [Validators.required]) - arcTokenControl = new FormControl('') - isLoading: boolean; - currentUrl?: string; - private timeoutId: number; - - @ViewChild('addLayerDialog', { static: true }) - private addLayerTemplate: TemplateRef - @ViewChild('deleteLayerDialog', { static: true }) - private deleteLayerTemplate: TemplateRef - - constructor(private arcService: ArcService, private dialog: MatDialog) { - this.config = defaultArcGISPluginConfig; - this.layers = new Array(); - this.isLoading = false; - arcService.fetchEvents().subscribe(x => this.handleEventResults(x)); - } - - ngOnInit(): void { - - } - - handleEventResults(x: EventResult[]) { - const events = [] - for (const event of x) { - events.push(event.name) - } - this.events = events - } - - onEditLayer(arcService: FeatureServiceConfig) { - console.log('Editing layer ' + arcService.url + ', token: ' + arcService.token) - this.arcLayerControl.setValue(arcService.url) - this.arcTokenControl.setValue(arcService.token != null ? arcService.token : '') - this.currentUrl = this.addToken(arcService.url, arcService.token) - this.layers = [] - let selectedLayers = new Array() - for (const layer of arcService.layers) { - selectedLayers.push(String(layer.layer)) - } - this.fetchLayers(this.currentUrl, selectedLayers) - this.dialog.open(this.addLayerTemplate) - } - - selectedChanged(arcLayer: ArcLayerSelectable) { - arcLayer.isSelected = !arcLayer.isSelected - } - - isSaveDisabled(): boolean { - return this.layers.length == 0; - } - - inputChanged(layerUrl: string, token?: string) { - const url = this.addToken(layerUrl, token); - console.log('Input changed ' + url); - if (this.timeoutId !== undefined) { - window.clearTimeout(this.timeoutId); - } - this.timeoutId = window.setTimeout(() => this.fetchLayers(url), 1000); - } - - fetchLayers(url: string, selectedLayers?: string[]) { - console.log('Fetching layers for ' + url); - this.isLoading = true; - this.layers = [] - this.arcService.fetchArcLayers(url).subscribe(x => { - console.log('arclayer response ' + x); - if (x.layers !== undefined) { - for (const layer of x.layers) { - const selectableLayer = new ArcLayerSelectable(layer.name); - if (selectedLayers != null) { - if (selectedLayers.length > 0) { - selectableLayer.isSelected = selectedLayers.indexOf(layer.name) >= 0; - } else { - selectableLayer.isSelected = false - } - } - this.layers.push(selectableLayer); - } - } - this.isLoading = false; - }) - } - - onAddLayer() { - this.currentUrl = undefined - this.arcLayerControl.setValue('') - this.arcTokenControl.setValue('') - this.layers = [] - this.dialog.open(this.addLayerTemplate) - } - - showDeleteLayer(layerUrl: string) { - this.currentUrl = layerUrl - this.dialog.open(this.deleteLayerTemplate) - } - - onDeleteLayer() { - let index = 0; - for (const featureServiceConfig of this.config.featureServices) { - if (featureServiceConfig.url == this.currentUrl) { - break; - } - index++; - } - if (index < this.config.featureServices.length) { - this.config.featureServices.splice(index, 1); - } - this.configChanged.emit(this.config); - this.arcService.putArcConfig(this.config); - } - - onAddLayerUrl(layerUrl: string, layers: ArcLayerSelectable[]) { - let serviceConfigToEdit = null; - for (const service of this.config.featureServices) { - if (service.url == layerUrl) { - serviceConfigToEdit = service; - } - } - - if (serviceConfigToEdit == null) { - console.log('Adding layer ' + layerUrl) - const splitUrl = layerUrl.split('?'); - const justUrl = splitUrl[0]; - const params = splitUrl[1]; - const urlParams = new URLSearchParams(params); - const token = urlParams.get('token'); - console.log('token is ' + token); - const featureLayer = { - url: justUrl, - token: token, - layers: [] - } as FeatureServiceConfig; - for (const aLayer of layers) { - if (aLayer.isSelected) { - const layerConfig = { - layer: aLayer.name, - events: JSON.parse(JSON.stringify(this.events)) - } - featureLayer.layers.push(layerConfig); - } - } - this.config.featureServices.push(featureLayer); - } else { - console.log('Saving edited layer ' + layerUrl) - const editedLayers = []; - for (const aLayer of layers) { - if (aLayer.isSelected) { - let layerConfig = null - if (serviceConfigToEdit.layers != null) { - const index = serviceConfigToEdit.layers.findIndex((element) => { - return element.layer === aLayer.name; - }) - if (index != -1) { - layerConfig = serviceConfigToEdit.layers[index] - } - } - if (layerConfig == null) { - layerConfig = { - layer: aLayer.name, - events: JSON.parse(JSON.stringify(this.events)) - } - } - editedLayers.push(layerConfig); - } - } - serviceConfigToEdit.layers = editedLayers - } - - this.configChanged.emit(this.config); - this.arcService.putArcConfig(this.config); - } - - addToken(url: string, token?: string) { - let newUrl = url - if (token != null && token.length > 0) { - const index = url.indexOf('?') - let separator = '' - if (index == -1) { - separator = '?' - } else if (index < url.length - 1) { - separator = '&' - } - newUrl += separator + 'token=' + token - } - return newUrl - } - -} \ No newline at end of file diff --git a/plugins/arcgis/web-app/mage-arc-web/src/lib/arc.service.ts b/plugins/arcgis/web-app/mage-arc-web/src/lib/arc.service.ts deleted file mode 100644 index c41182e8d..000000000 --- a/plugins/arcgis/web-app/mage-arc-web/src/lib/arc.service.ts +++ /dev/null @@ -1,52 +0,0 @@ -import { HttpClient } from '@angular/common/http' -import { Injectable } from '@angular/core' -import { Observable } from 'rxjs' -import { ArcGISPluginConfig } from './ArcGISPluginConfig' -import { FeatureServiceResult } from './FeatureServiceResult' -import { EventResult } from './EventsResult' - -export const baseUrl = '/plugins/@ngageoint/mage.arcgis' -export const apiBaseUrl = '/api' - -@Injectable({ - providedIn: 'root' - /* - TODO: figure out how to inject the same http client the - rest of the core app gets so the http auth interceptor - applies when this service comes from a non-root module - providedIn: MageArcServicesModule - */ -}) -export class ArcService { - - constructor(private http: HttpClient) { - } - - fetchArcConfig(): Observable { - return this.http.get(`${baseUrl}/config`) - } - - fetchArcLayers(featureUrl: string) { - return this.http.get(`${baseUrl}/arcgisLayers?featureUrl=${featureUrl}`) - } - - fetchEvents() { - return this.http.get(`${apiBaseUrl}/events?populate=false&projection={"name":true,"id":true}`) - } - - fetchPopulatedEvents() { - return this.http.get(`${apiBaseUrl}/events`) - } - - putArcConfig(config: ArcGISPluginConfig) { - this.http.put(`${baseUrl}/config`, config).subscribe() - } - - removeUserTrack(userTrackId: string): Observable { - return this.http.delete(`${baseUrl}/config/user_tracks/${userTrackId}`) - } - - removeOperation(operationId: string): Observable { - throw new Error('unimplemented') - } -} \ No newline at end of file diff --git a/plugins/arcgis/web-app/package-lock.json b/plugins/arcgis/web-app/package-lock.json index 2781f092e..1eecb6bab 100644 --- a/plugins/arcgis/web-app/package-lock.json +++ b/plugins/arcgis/web-app/package-lock.json @@ -1,2713 +1,3858 @@ { - "name": "@ngageoint/mage.arc-web.workspace", - "version": "1.0.0", - "lockfileVersion": 1, + "name": "@ngageoint/mage.arcgis.web-app.workspace", + "version": "1.0.0-beta.1", + "lockfileVersion": 3, "requires": true, - "dependencies": { - "@angular-devkit/architect": { - "version": "0.901.15", - "resolved": "https://registry.npmjs.org/@angular-devkit/architect/-/architect-0.901.15.tgz", - "integrity": "sha512-t4yT34jQ3wA3NFZxph/PquITv8tFrkaexUusbNp4UN10+k+04lPF3aPnJJhM1VKjjfChznMMhLnqLjA+9o0Rmw==", - "dev": true, - "requires": { - "@angular-devkit/core": "9.1.15", - "rxjs": "6.5.4" - }, - "dependencies": { - "rxjs": { - "version": "6.5.4", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.5.4.tgz", - "integrity": "sha512-naMQXcgEo3csAEGvw/NydRA0fuS2nDZJiw1YUWFKU7aPPAPGZEsD4Iimit96qwCieH6y614MCLYwdkrWx7z/7Q==", - "dev": true, - "requires": { - "tslib": "^1.9.0" - } - } + "packages": { + "": { + "name": "@ngageoint/mage.arcgis.web-app.workspace", + "version": "1.0.0-beta.1", + "dependencies": { + "@angular/animations": "14.3.0", + "@angular/cdk": "14.2.7", + "@angular/common": "14.3.0", + "@angular/compiler": "14.3.0", + "@angular/core": "14.3.0", + "@angular/forms": "14.3.0", + "@angular/material": "14.2.7", + "@angular/platform-browser": "14.3.0", + "@angular/platform-browser-dynamic": "14.3.0", + "@angular/router": "14.3.0", + "@ngageoint/mage.web-core-lib": "6.3.0-beta.4", + "rxjs": "7.6.0", + "tslib": "2.8.1", + "zone.js": "0.11.4" + }, + "devDependencies": { + "@angular-devkit/build-angular": "14.2.13", + "@angular/cli": "14.2.13", + "@angular/compiler-cli": "14.3.0", + "@types/geojson": "7946.0.7", + "@types/jasmine": "3.5.0", + "@types/node": "12.11.1", + "jasmine-core": "4.6.1", + "karma": "6.4.3", + "karma-chrome-launcher": "3.1.0", + "karma-coverage": "2.2.1", + "karma-jasmine": "5.1.0", + "karma-jasmine-html-reporter": "2.1.0", + "ng-packagr": "14.2.2", + "typescript": "4.6.4" + } + }, + "node_modules/@adobe/css-tools": { + "version": "4.4.2", + "resolved": "https://registry.npmjs.org/@adobe/css-tools/-/css-tools-4.4.2.tgz", + "integrity": "sha512-baYZExFpsdkBNuvGKTKWCwKH57HRZLVtycZS05WTQNVOiXVSeAki3nU35zlRbToeMW8aHlJfyS+1C4BOv27q0A==" + }, + "node_modules/@ampproject/remapping": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.0.tgz", + "integrity": "sha512-qRmjj8nj9qmLTQXXmaR1cck3UXSRMPrbsLJAasZpF+t3riI71BXed5ebIOYwQntykeZuhjsdweEc9BxH5Jc26w==", + "dependencies": { + "@jridgewell/gen-mapping": "^0.1.0", + "@jridgewell/trace-mapping": "^0.3.9" + }, + "engines": { + "node": ">=6.0.0" } }, - "@angular-devkit/build-angular": { - "version": "0.901.15", - "resolved": "https://registry.npmjs.org/@angular-devkit/build-angular/-/build-angular-0.901.15.tgz", - "integrity": "sha512-Qhyfnjda+lbI97xpimb0g6RYiu/Xf/Awtx2xBRaE0pGW/T/qrGEeKwF4mu2CAgDSHK+0+V1msW8ttPMw+Z8org==", - "dev": true, - "requires": { - "@angular-devkit/architect": "0.901.15", - "@angular-devkit/build-optimizer": "0.901.15", - "@angular-devkit/build-webpack": "0.901.15", - "@angular-devkit/core": "9.1.15", - "@babel/core": "7.9.0", - "@babel/generator": "7.9.3", - "@babel/preset-env": "7.9.0", - "@babel/template": "7.8.6", - "@jsdevtools/coverage-istanbul-loader": "3.0.3", - "@ngtools/webpack": "9.1.15", - "ajv": "6.12.3", - "autoprefixer": "9.7.4", - "babel-loader": "8.0.6", + "node_modules/@angular-devkit/architect": { + "version": "0.1402.13", + "resolved": "https://registry.npmjs.org/@angular-devkit/architect/-/architect-0.1402.13.tgz", + "integrity": "sha512-n0ISBuvkZHoOpAzuAZql1TU9VLHUE9e/a9g4VNOPHewjMzpN02VqeGKvJfOCKtzkCs6gVssIlILm2/SXxkIFxQ==", + "dependencies": { + "@angular-devkit/core": "14.2.13", + "rxjs": "6.6.7" + }, + "engines": { + "node": "^14.15.0 || >=16.10.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" + } + }, + "node_modules/@angular-devkit/architect/node_modules/rxjs": { + "version": "6.6.7", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", + "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", + "dependencies": { + "tslib": "^1.9.0" + }, + "engines": { + "npm": ">=2.0.0" + } + }, + "node_modules/@angular-devkit/architect/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + }, + "node_modules/@angular-devkit/build-angular": { + "version": "14.2.13", + "resolved": "https://registry.npmjs.org/@angular-devkit/build-angular/-/build-angular-14.2.13.tgz", + "integrity": "sha512-FJZKQ3xYFvEJ807sxVy4bCVyGU2NMl3UUPNfLIdIdzwwDEP9tx/cc+c4VtVPEZZfU8jVenu8XOvL6L0vpjt3yg==", + "dependencies": { + "@ampproject/remapping": "2.2.0", + "@angular-devkit/architect": "0.1402.13", + "@angular-devkit/build-webpack": "0.1402.13", + "@angular-devkit/core": "14.2.13", + "@babel/core": "7.18.10", + "@babel/generator": "7.18.12", + "@babel/helper-annotate-as-pure": "7.18.6", + "@babel/plugin-proposal-async-generator-functions": "7.18.10", + "@babel/plugin-transform-async-to-generator": "7.18.6", + "@babel/plugin-transform-runtime": "7.18.10", + "@babel/preset-env": "7.18.10", + "@babel/runtime": "7.18.9", + "@babel/template": "7.18.10", + "@discoveryjs/json-ext": "0.5.7", + "@ngtools/webpack": "14.2.13", + "ansi-colors": "4.1.3", + "babel-loader": "8.2.5", + "babel-plugin-istanbul": "6.1.1", "browserslist": "^4.9.1", - "cacache": "15.0.0", - "caniuse-lite": "^1.0.30001032", - "circular-dependency-plugin": "5.2.0", - "copy-webpack-plugin": "6.0.3", - "core-js": "3.6.4", - "css-loader": "3.5.1", - "cssnano": "4.1.10", - "file-loader": "6.0.0", - "find-cache-dir": "3.3.1", - "glob": "7.1.6", - "jest-worker": "25.1.0", + "cacache": "16.1.2", + "copy-webpack-plugin": "11.0.0", + "critters": "0.0.16", + "css-loader": "6.7.1", + "esbuild-wasm": "0.15.5", + "glob": "8.0.3", + "https-proxy-agent": "5.0.1", + "inquirer": "8.2.4", + "jsonc-parser": "3.1.0", "karma-source-map-support": "1.4.0", - "less": "3.11.3", - "less-loader": "5.0.0", - "license-webpack-plugin": "2.1.4", - "loader-utils": "2.0.0", - "mini-css-extract-plugin": "0.9.0", - "minimatch": "3.0.4", - "open": "7.0.3", - "parse5": "4.0.0", - "postcss": "7.0.27", - "postcss-import": "12.0.1", - "postcss-loader": "3.0.0", - "raw-loader": "4.0.0", - "regenerator-runtime": "0.13.5", - "rimraf": "3.0.2", - "rollup": "2.1.0", - "rxjs": "6.5.4", - "sass": "1.26.3", - "sass-loader": "8.0.2", - "semver": "7.1.3", - "source-map": "0.7.3", - "source-map-loader": "0.2.4", - "speed-measure-webpack-plugin": "1.3.1", - "style-loader": "1.1.3", - "stylus": "0.54.7", - "stylus-loader": "3.0.2", - "terser": "4.6.10", - "terser-webpack-plugin": "3.0.3", + "less": "4.1.3", + "less-loader": "11.0.0", + "license-webpack-plugin": "4.0.2", + "loader-utils": "3.2.1", + "mini-css-extract-plugin": "2.6.1", + "minimatch": "5.1.0", + "open": "8.4.0", + "ora": "5.4.1", + "parse5-html-rewriting-stream": "6.0.1", + "piscina": "3.2.0", + "postcss": "8.4.31", + "postcss-import": "15.0.0", + "postcss-loader": "7.0.1", + "postcss-preset-env": "7.8.0", + "regenerator-runtime": "0.13.9", + "resolve-url-loader": "5.0.0", + "rxjs": "6.6.7", + "sass": "1.54.4", + "sass-loader": "13.0.2", + "semver": "7.5.3", + "source-map-loader": "4.0.0", + "source-map-support": "0.5.21", + "stylus": "0.59.0", + "stylus-loader": "7.0.0", + "terser": "5.14.2", + "text-table": "0.2.0", "tree-kill": "1.2.2", - "webpack": "4.42.0", - "webpack-dev-middleware": "3.7.2", - "webpack-dev-server": "3.11.0", - "webpack-merge": "4.2.2", - "webpack-sources": "1.4.3", - "webpack-subresource-integrity": "1.4.0", - "worker-plugin": "4.0.3" - }, - "dependencies": { - "debug": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", - "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", - "dev": true, - "requires": { - "ms": "2.0.0" - } + "tslib": "2.4.0", + "webpack": "5.76.1", + "webpack-dev-middleware": "5.3.3", + "webpack-dev-server": "4.11.0", + "webpack-merge": "5.8.0", + "webpack-subresource-integrity": "5.1.0" + }, + "engines": { + "node": "^14.15.0 || >=16.10.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" + }, + "optionalDependencies": { + "esbuild": "0.15.5" + }, + "peerDependencies": { + "@angular/compiler-cli": "^14.0.0", + "@angular/localize": "^14.0.0", + "@angular/service-worker": "^14.0.0", + "karma": "^6.3.0", + "ng-packagr": "^14.0.0", + "protractor": "^7.0.0", + "tailwindcss": "^2.0.0 || ^3.0.0", + "typescript": ">=4.6.2 <4.9" + }, + "peerDependenciesMeta": { + "@angular/localize": { + "optional": true + }, + "@angular/service-worker": { + "optional": true + }, + "karma": { + "optional": true }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true + "ng-packagr": { + "optional": true }, - "rxjs": { - "version": "6.5.4", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.5.4.tgz", - "integrity": "sha512-naMQXcgEo3csAEGvw/NydRA0fuS2nDZJiw1YUWFKU7aPPAPGZEsD4Iimit96qwCieH6y614MCLYwdkrWx7z/7Q==", - "dev": true, - "requires": { - "tslib": "^1.9.0" - } + "protractor": { + "optional": true }, - "stylus": { - "version": "0.54.7", - "resolved": "https://registry.npmjs.org/stylus/-/stylus-0.54.7.tgz", - "integrity": "sha512-Yw3WMTzVwevT6ZTrLCYNHAFmanMxdylelL3hkWNgPMeTCpMwpV3nXjpOHuBXtFv7aiO2xRuQS6OoAdgkNcSNug==", - "dev": true, - "requires": { - "css-parse": "~2.0.0", - "debug": "~3.1.0", - "glob": "^7.1.3", - "mkdirp": "~0.5.x", - "safer-buffer": "^2.1.2", - "sax": "~1.2.4", - "semver": "^6.0.0", - "source-map": "^0.7.3" - }, - "dependencies": { - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - } - } + "tailwindcss": { + "optional": true } } }, - "@angular-devkit/build-ng-packagr": { - "version": "0.901.15", - "resolved": "https://registry.npmjs.org/@angular-devkit/build-ng-packagr/-/build-ng-packagr-0.901.15.tgz", - "integrity": "sha512-0WMHQ4U527JxIZG9hyLpcK8hKTMbPErzOudyqE9ebNyjhd9e5QGmkzLQEXLks7rSSAxnTpp9Q8jNHK6eVhUJUA==", - "dev": true, - "requires": { - "@angular-devkit/architect": "0.901.15", - "rxjs": "6.5.4" - }, - "dependencies": { - "rxjs": { - "version": "6.5.4", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.5.4.tgz", - "integrity": "sha512-naMQXcgEo3csAEGvw/NydRA0fuS2nDZJiw1YUWFKU7aPPAPGZEsD4Iimit96qwCieH6y614MCLYwdkrWx7z/7Q==", - "dev": true, - "requires": { - "tslib": "^1.9.0" - } - } + "node_modules/@angular-devkit/build-angular/node_modules/rxjs": { + "version": "6.6.7", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", + "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", + "dependencies": { + "tslib": "^1.9.0" + }, + "engines": { + "npm": ">=2.0.0" } }, - "@angular-devkit/build-optimizer": { - "version": "0.901.15", - "resolved": "https://registry.npmjs.org/@angular-devkit/build-optimizer/-/build-optimizer-0.901.15.tgz", - "integrity": "sha512-fCX27AAaM91UlNtjwUhqBFTvL3U0PexeVpQORJ7hAr4DG1z3DUHJS4RHCjlgM060ny0fj1V5gu21j1QAQx52vA==", - "dev": true, - "requires": { - "loader-utils": "2.0.0", - "source-map": "0.7.3", - "tslib": "1.11.1", - "typescript": "3.6.5", - "webpack-sources": "1.4.3" - }, - "dependencies": { - "tslib": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.11.1.tgz", - "integrity": "sha512-aZW88SY8kQbU7gpV19lN24LtXh/yD4ZZg6qieAJDDg+YBsJcSmLGK9QpnUjAKVG/xefmvJGd1WUmfpT/g6AJGA==", - "dev": true - }, - "typescript": { - "version": "3.6.5", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-3.6.5.tgz", - "integrity": "sha512-BEjlc0Z06ORZKbtcxGrIvvwYs5hAnuo6TKdNFL55frVDlB+na3z5bsLhFaIxmT+dPWgBIjMo6aNnTOgHHmHgiQ==", - "dev": true - } - } + "node_modules/@angular-devkit/build-angular/node_modules/rxjs/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" }, - "@angular-devkit/build-webpack": { - "version": "0.901.15", - "resolved": "https://registry.npmjs.org/@angular-devkit/build-webpack/-/build-webpack-0.901.15.tgz", - "integrity": "sha512-vETkDD3xbWtm5zylKhKG2IYjmnED5DPBHCg/M0QmxMBEEiZOtqVrAwkJGSnErVInPmqW0jixIz3wCiMUBBA/dQ==", - "dev": true, - "requires": { - "@angular-devkit/architect": "0.901.15", - "@angular-devkit/core": "9.1.15", - "rxjs": "6.5.4" - }, - "dependencies": { - "rxjs": { - "version": "6.5.4", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.5.4.tgz", - "integrity": "sha512-naMQXcgEo3csAEGvw/NydRA0fuS2nDZJiw1YUWFKU7aPPAPGZEsD4Iimit96qwCieH6y614MCLYwdkrWx7z/7Q==", - "dev": true, - "requires": { - "tslib": "^1.9.0" - } - } - } + "node_modules/@angular-devkit/build-angular/node_modules/tslib": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz", + "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==" }, - "@angular-devkit/core": { - "version": "9.1.15", - "resolved": "https://registry.npmjs.org/@angular-devkit/core/-/core-9.1.15.tgz", - "integrity": "sha512-zyUDaFQvnqsptoXhodbH4u+voXIldfDx+d0M2OMLj0tbfD4zp2fy7UOeTvu+lq2/LLNAObkG4JSK5DM9v1s08w==", - "dev": true, - "requires": { - "ajv": "6.12.3", - "fast-json-stable-stringify": "2.1.0", - "magic-string": "0.25.7", - "rxjs": "6.5.4", - "source-map": "0.7.3" - }, - "dependencies": { - "rxjs": { - "version": "6.5.4", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.5.4.tgz", - "integrity": "sha512-naMQXcgEo3csAEGvw/NydRA0fuS2nDZJiw1YUWFKU7aPPAPGZEsD4Iimit96qwCieH6y614MCLYwdkrWx7z/7Q==", - "dev": true, - "requires": { - "tslib": "^1.9.0" - } - } + "node_modules/@angular-devkit/build-webpack": { + "version": "0.1402.13", + "resolved": "https://registry.npmjs.org/@angular-devkit/build-webpack/-/build-webpack-0.1402.13.tgz", + "integrity": "sha512-K27aJmuw86ZOdiu5PoGeGDJ2v7g2ZCK0bGwc8jzkjTLRfvd4FRKIIZumGv3hbQ3vQRLikiU6WMDRTFyCZky/EA==", + "dependencies": { + "@angular-devkit/architect": "0.1402.13", + "rxjs": "6.6.7" + }, + "engines": { + "node": "^14.15.0 || >=16.10.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" + }, + "peerDependencies": { + "webpack": "^5.30.0", + "webpack-dev-server": "^4.0.0" } }, - "@angular-devkit/schematics": { - "version": "9.1.15", - "resolved": "https://registry.npmjs.org/@angular-devkit/schematics/-/schematics-9.1.15.tgz", - "integrity": "sha512-phE8jNUeOiX1Co+4sLCHi1rMoOrqEmIRKOI4Saorn2d2S7b21k9lf4Z/GFwQ7djsfoxKkMP8zhd/M4hkVMxeNw==", - "dev": true, - "requires": { - "@angular-devkit/core": "9.1.15", - "ora": "4.0.3", - "rxjs": "6.5.4" - }, - "dependencies": { - "rxjs": { - "version": "6.5.4", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.5.4.tgz", - "integrity": "sha512-naMQXcgEo3csAEGvw/NydRA0fuS2nDZJiw1YUWFKU7aPPAPGZEsD4Iimit96qwCieH6y614MCLYwdkrWx7z/7Q==", - "dev": true, - "requires": { - "tslib": "^1.9.0" - } - } + "node_modules/@angular-devkit/build-webpack/node_modules/rxjs": { + "version": "6.6.7", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", + "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", + "dependencies": { + "tslib": "^1.9.0" + }, + "engines": { + "npm": ">=2.0.0" } }, - "@angular/animations": { - "version": "9.1.13", - "resolved": "https://registry.npmjs.org/@angular/animations/-/animations-9.1.13.tgz", - "integrity": "sha512-ane1eeQmsP7fcAiLgRhle7YIDgE88WDMMvzqJYhSxwLzXNF/hwqNeskmNcjo8bLt9h/yTIjrCQbycLCHJfU8UQ==" + "node_modules/@angular-devkit/build-webpack/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" }, - "@angular/cdk": { - "version": "9.2.4", - "resolved": "https://registry.npmjs.org/@angular/cdk/-/cdk-9.2.4.tgz", - "integrity": "sha512-iw2+qHMXHYVC6K/fttHeNHIieSKiTEodVutZoOEcBu9rmRTGbLB26V/CRsfIRmA1RBk+uFYWc6UQZnMC3RdnJQ==", - "requires": { - "parse5": "^5.0.0" - }, + "node_modules/@angular-devkit/core": { + "version": "14.2.13", + "resolved": "https://registry.npmjs.org/@angular-devkit/core/-/core-14.2.13.tgz", + "integrity": "sha512-aIefeZcbjghQg/V6U9CTLtyB5fXDJ63KwYqVYkWP+i0XriS5A9puFgq2u/OVsWxAfYvqpDqp5AdQ0g0bi3CAsA==", "dependencies": { - "parse5": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/parse5/-/parse5-5.1.1.tgz", - "integrity": "sha512-ugq4DFI0Ptb+WWjAdOK16+u/nHfiIrcE+sh8kZMaM0WllQKLI9rOUq6c2b7cwPkXdzfQESqvoqK6ug7U/Yyzug==", + "ajv": "8.11.0", + "ajv-formats": "2.1.1", + "jsonc-parser": "3.1.0", + "rxjs": "6.6.7", + "source-map": "0.7.4" + }, + "engines": { + "node": "^14.15.0 || >=16.10.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" + }, + "peerDependencies": { + "chokidar": "^3.5.2" + }, + "peerDependenciesMeta": { + "chokidar": { "optional": true } } }, - "@angular/cli": { - "version": "9.1.15", - "resolved": "https://registry.npmjs.org/@angular/cli/-/cli-9.1.15.tgz", - "integrity": "sha512-jwwhXTH8ujKmx4/jsaFkSBvqyyMTUNeMHaMDKaChDtwRnNc0UGDEqMAVnVnXaXiIn1tnzzdHjW4BY35CjnvpCg==", - "dev": true, - "requires": { - "@angular-devkit/architect": "0.901.15", - "@angular-devkit/core": "9.1.15", - "@angular-devkit/schematics": "9.1.15", - "@schematics/angular": "9.1.15", - "@schematics/update": "0.901.15", - "@yarnpkg/lockfile": "1.1.0", - "ansi-colors": "4.1.1", - "debug": "4.1.1", - "ini": "1.3.6", - "inquirer": "7.1.0", - "npm-package-arg": "8.0.1", - "npm-pick-manifest": "6.0.0", - "open": "7.0.3", - "pacote": "9.5.12", - "read-package-tree": "5.3.1", - "rimraf": "3.0.2", - "semver": "7.1.3", - "symbol-observable": "1.2.0", - "universal-analytics": "0.4.20", - "uuid": "7.0.2" - } - }, - "@angular/common": { - "version": "9.1.13", - "resolved": "https://registry.npmjs.org/@angular/common/-/common-9.1.13.tgz", - "integrity": "sha512-QACUhJWlly/nfHUmjopVS1p6ayxxa/NqjyftdCeBJaoyM2YohqWixP/n/keu1K/srJ96aFpUNsZQgmgoRv5SOQ==" - }, - "@angular/compiler": { - "version": "9.1.13", - "resolved": "https://registry.npmjs.org/@angular/compiler/-/compiler-9.1.13.tgz", - "integrity": "sha512-9MLB1Xx7odKuxDoybVwiOB1ZEUZpL8FurYm4RVuW39ntsUt0IMC9Hb8UagZLTAWhaWSHydkD/KBQVVobGqd0lA==" - }, - "@angular/compiler-cli": { - "version": "9.1.13", - "resolved": "https://registry.npmjs.org/@angular/compiler-cli/-/compiler-cli-9.1.13.tgz", - "integrity": "sha512-40jbfMr1FinOqUyG3k4Moiytjs/Z8zKBgP3S5Qfn80EBJItRdFXwNtvaOi/onaag4+Mv+vigShwsgCewLbt/kA==", - "dev": true, - "requires": { - "canonical-path": "1.0.0", - "chokidar": "^3.0.0", - "convert-source-map": "^1.5.1", - "dependency-graph": "^0.7.2", - "fs-extra": "4.0.2", - "magic-string": "^0.25.0", - "minimist": "^1.2.0", - "reflect-metadata": "^0.1.2", - "semver": "^6.3.0", - "source-map": "^0.6.1", - "sourcemap-codec": "^1.4.8", - "yargs": "^16.1.1" - }, + "node_modules/@angular-devkit/core/node_modules/rxjs": { + "version": "6.6.7", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", + "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", "dependencies": { - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "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 - } + "tslib": "^1.9.0" + }, + "engines": { + "npm": ">=2.0.0" } }, - "@angular/core": { - "version": "9.1.13", - "resolved": "https://registry.npmjs.org/@angular/core/-/core-9.1.13.tgz", - "integrity": "sha512-mBm24Q9GjkAsxMAzqQ86U1078+yTEpr0+syMEruUtJ0HUH6Fzn3J+6xTLb+BVcGb9RkCkFaV9T5mcn6ZM0f++g==" + "node_modules/@angular-devkit/core/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" }, - "@angular/forms": { - "version": "9.1.13", - "resolved": "https://registry.npmjs.org/@angular/forms/-/forms-9.1.13.tgz", - "integrity": "sha512-soGVZmPq2bzkxvtTyeJB8p3ejzm4xxt+43hJw6Ag8NxpwUFPVa30oJge3JV+u8Y4yBtl5SbOZ4bBX3EkMxLcGQ==" + "node_modules/@angular-devkit/schematics": { + "version": "14.2.13", + "resolved": "https://registry.npmjs.org/@angular-devkit/schematics/-/schematics-14.2.13.tgz", + "integrity": "sha512-2zczyeNzeBcrT2HOysv52X9SH3tZoHfWJvVf6H0SIa74rfDKEl7hFpKNXnh3x8sIMLj5mZn05n5RCqGxCczcIg==", + "dependencies": { + "@angular-devkit/core": "14.2.13", + "jsonc-parser": "3.1.0", + "magic-string": "0.26.2", + "ora": "5.4.1", + "rxjs": "6.6.7" + }, + "engines": { + "node": "^14.15.0 || >=16.10.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" + } }, - "@angular/material": { - "version": "9.2.4", - "resolved": "https://registry.npmjs.org/@angular/material/-/material-9.2.4.tgz", - "integrity": "sha512-LkoTXE6B0slvMhvfZDdPWaz4yaYLkaAp5VSPunI9pxGsPxzqEV9e210wC1/sjG/76Nk8Ep7/2z9XKac8Q9bMwA==" + "node_modules/@angular-devkit/schematics/node_modules/rxjs": { + "version": "6.6.7", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", + "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", + "dependencies": { + "tslib": "^1.9.0" + }, + "engines": { + "npm": ">=2.0.0" + } }, - "@angular/platform-browser": { - "version": "9.1.13", - "resolved": "https://registry.npmjs.org/@angular/platform-browser/-/platform-browser-9.1.13.tgz", - "integrity": "sha512-F3iTz1zNbtrs7KFKUxbj8qmTsd/fiuTNcpBExjE5TtatRiE6J8vNvN1+Z/1FgPe0UXBSdTzSwZ8/RxWKw20RMw==" + "node_modules/@angular-devkit/schematics/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" }, - "@angular/platform-browser-dynamic": { - "version": "9.1.13", - "resolved": "https://registry.npmjs.org/@angular/platform-browser-dynamic/-/platform-browser-dynamic-9.1.13.tgz", - "integrity": "sha512-jCeHyAZ4Nap1/FOqAlKEg9UxQaSkHrxnQr6hYtWwC4ZDVUn3zLWQf6J+mbeYNOXN5yQxEiIqqhORYeOCLLqf1w==" + "node_modules/@angular/animations": { + "version": "14.3.0", + "resolved": "https://registry.npmjs.org/@angular/animations/-/animations-14.3.0.tgz", + "integrity": "sha512-QoBcIKy1ZiU+4qJsAh5Ls20BupWiXiZzKb0s6L9/dntPt5Msr4Ao289XR2P6O1L+kTsCprH9Kt41zyGQ/bkRqg==", + "dependencies": { + "tslib": "^2.3.0" + }, + "engines": { + "node": "^14.15.0 || >=16.10.0" + }, + "peerDependencies": { + "@angular/core": "14.3.0" + } }, - "@angular/router": { - "version": "9.1.13", - "resolved": "https://registry.npmjs.org/@angular/router/-/router-9.1.13.tgz", - "integrity": "sha512-AvqjCsxdzBqOGsPuyCtHb2ckfNhCEGrDfkFmZ5jT9MwohCVbChCKtwEH4cwlph6Tpxvu1a4zSryxOf5q8OSsJQ==" + "node_modules/@angular/cdk": { + "version": "14.2.7", + "resolved": "https://registry.npmjs.org/@angular/cdk/-/cdk-14.2.7.tgz", + "integrity": "sha512-/tEsYaUbDSnfEmKVvAMramIptmhI67O+9STjOV0i+74XR2NospeK0fkbywIANu1n3w6AHGMotvRWJrjmbCElFg==", + "dependencies": { + "tslib": "^2.3.0" + }, + "optionalDependencies": { + "parse5": "^5.0.0" + }, + "peerDependencies": { + "@angular/common": "^14.0.0 || ^15.0.0", + "@angular/core": "^14.0.0 || ^15.0.0", + "rxjs": "^6.5.3 || ^7.4.0" + } }, - "@babel/code-frame": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.18.6.tgz", - "integrity": "sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q==", + "node_modules/@angular/cli": { + "version": "14.2.13", + "resolved": "https://registry.npmjs.org/@angular/cli/-/cli-14.2.13.tgz", + "integrity": "sha512-I5EepRem2CCyS3GDzQxZ2ZrqQwVqoGoLY+ZQhsK1QGWUnUyFOjbv3OlUGxRUYwcedu19V1EBAKjmQ96HzMIcVQ==", "dev": true, - "requires": { - "@babel/highlight": "^7.18.6" + "dependencies": { + "@angular-devkit/architect": "0.1402.13", + "@angular-devkit/core": "14.2.13", + "@angular-devkit/schematics": "14.2.13", + "@schematics/angular": "14.2.13", + "@yarnpkg/lockfile": "1.1.0", + "ansi-colors": "4.1.3", + "debug": "4.3.4", + "ini": "3.0.0", + "inquirer": "8.2.4", + "jsonc-parser": "3.1.0", + "npm-package-arg": "9.1.0", + "npm-pick-manifest": "7.0.1", + "open": "8.4.0", + "ora": "5.4.1", + "pacote": "13.6.2", + "resolve": "1.22.1", + "semver": "7.5.3", + "symbol-observable": "4.0.0", + "uuid": "8.3.2", + "yargs": "17.5.1" + }, + "bin": { + "ng": "bin/ng.js" + }, + "engines": { + "node": "^14.15.0 || >=16.10.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" } }, - "@babel/compat-data": { - "version": "7.21.0", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.21.0.tgz", - "integrity": "sha512-gMuZsmsgxk/ENC3O/fRw5QY8A9/uxQbbCEypnLIiYYc/qVJtEV7ouxC3EllIIwNzMqAQee5tanFabWsUOutS7g==", - "dev": true + "node_modules/@angular/common": { + "version": "14.3.0", + "resolved": "https://registry.npmjs.org/@angular/common/-/common-14.3.0.tgz", + "integrity": "sha512-pV9oyG3JhGWeQ+TFB0Qub6a1VZWMNZ6/7zEopvYivdqa5yDLLDSBRWb6P80RuONXyGnM1pa7l5nYopX+r/23GQ==", + "dependencies": { + "tslib": "^2.3.0" + }, + "engines": { + "node": "^14.15.0 || >=16.10.0" + }, + "peerDependencies": { + "@angular/core": "14.3.0", + "rxjs": "^6.5.3 || ^7.4.0" + } }, - "@babel/core": { - "version": "7.9.0", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.9.0.tgz", - "integrity": "sha512-kWc7L0fw1xwvI0zi8OKVBuxRVefwGOrKSQMvrQ3dW+bIIavBY3/NpXmpjMy7bQnLgwgzWQZ8TlM57YHpHNHz4w==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.8.3", - "@babel/generator": "^7.9.0", - "@babel/helper-module-transforms": "^7.9.0", - "@babel/helpers": "^7.9.0", - "@babel/parser": "^7.9.0", - "@babel/template": "^7.8.6", - "@babel/traverse": "^7.9.0", - "@babel/types": "^7.9.0", - "convert-source-map": "^1.7.0", - "debug": "^4.1.0", - "gensync": "^1.0.0-beta.1", - "json5": "^2.1.2", - "lodash": "^4.17.13", - "resolve": "^1.3.2", - "semver": "^5.4.1", - "source-map": "^0.5.0" - }, - "dependencies": { - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "dev": true - }, - "source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==", - "dev": true + "node_modules/@angular/compiler": { + "version": "14.3.0", + "resolved": "https://registry.npmjs.org/@angular/compiler/-/compiler-14.3.0.tgz", + "integrity": "sha512-E15Rh0t3vA+bctbKnBCaDmLvc3ix+ZBt6yFZmhZalReQ+KpOlvOJv+L9oiFEgg+rYVl2QdvN7US1fvT0PqswLw==", + "dependencies": { + "tslib": "^2.3.0" + }, + "engines": { + "node": "^14.15.0 || >=16.10.0" + }, + "peerDependencies": { + "@angular/core": "14.3.0" + }, + "peerDependenciesMeta": { + "@angular/core": { + "optional": true } } }, - "@babel/generator": { - "version": "7.9.3", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.9.3.tgz", - "integrity": "sha512-RpxM252EYsz9qLUIq6F7YJyK1sv0wWDBFuztfDGWaQKzHjqDHysxSiRUpA/X9jmfqo+WzkAVKFaUily5h+gDCQ==", - "dev": true, - "requires": { - "@babel/types": "^7.9.0", - "jsesc": "^2.5.1", - "lodash": "^4.17.13", - "source-map": "^0.5.0" - }, - "dependencies": { - "source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==", - "dev": true - } + "node_modules/@angular/compiler-cli": { + "version": "14.3.0", + "resolved": "https://registry.npmjs.org/@angular/compiler-cli/-/compiler-cli-14.3.0.tgz", + "integrity": "sha512-eoKpKdQ2X6axMgzcPUMZVYl3bIlTMzMeTo5V29No4BzgiUB+QoOTYGNJZkGRyqTNpwD9uSBJvmT2vG9+eC4ghQ==", + "dependencies": { + "@babel/core": "^7.17.2", + "chokidar": "^3.0.0", + "convert-source-map": "^1.5.1", + "dependency-graph": "^0.11.0", + "magic-string": "^0.26.0", + "reflect-metadata": "^0.1.2", + "semver": "^7.0.0", + "sourcemap-codec": "^1.4.8", + "tslib": "^2.3.0", + "yargs": "^17.2.1" + }, + "bin": { + "ng-xi18n": "bundles/src/bin/ng_xi18n.js", + "ngc": "bundles/src/bin/ngc.js", + "ngcc": "bundles/ngcc/main-ngcc.js" + }, + "engines": { + "node": "^14.15.0 || >=16.10.0" + }, + "peerDependencies": { + "@angular/compiler": "14.3.0", + "typescript": ">=4.6.2 <4.9" } }, - "@babel/helper-annotate-as-pure": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.18.6.tgz", - "integrity": "sha512-duORpUiYrEpzKIop6iNbjnwKLAKnJ47csTyRACyEmWj0QdUrm5aqNJGHSSEQSUAvNW0ojX0dOmK9dZduvkfeXA==", - "dev": true, - "requires": { - "@babel/types": "^7.18.6" + "node_modules/@angular/core": { + "version": "14.3.0", + "resolved": "https://registry.npmjs.org/@angular/core/-/core-14.3.0.tgz", + "integrity": "sha512-wYiwItc0Uyn4FWZ/OAx/Ubp2/WrD3EgUJ476y1XI7yATGPF8n9Ld5iCXT08HOvc4eBcYlDfh90kTXR6/MfhzdQ==", + "dependencies": { + "tslib": "^2.3.0" + }, + "engines": { + "node": "^14.15.0 || >=16.10.0" + }, + "peerDependencies": { + "rxjs": "^6.5.3 || ^7.4.0", + "zone.js": "~0.11.4 || ~0.12.0" } }, - "@babel/helper-builder-binary-assignment-operator-visitor": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.18.9.tgz", - "integrity": "sha512-yFQ0YCHoIqarl8BCRwBL8ulYUaZpz3bNsA7oFepAzee+8/+ImtADXNOmO5vJvsPff3qi+hvpkY/NYBTrBQgdNw==", - "dev": true, - "requires": { - "@babel/helper-explode-assignable-expression": "^7.18.6", - "@babel/types": "^7.18.9" + "node_modules/@angular/forms": { + "version": "14.3.0", + "resolved": "https://registry.npmjs.org/@angular/forms/-/forms-14.3.0.tgz", + "integrity": "sha512-fBZZC2UFMom2AZPjGQzROPXFWO6kvCsPDKctjJwClVC8PuMrkm+RRyiYRdBbt2qxWHEqOZM2OCQo73xUyZOYHw==", + "dependencies": { + "tslib": "^2.3.0" + }, + "engines": { + "node": "^14.15.0 || >=16.10.0" + }, + "peerDependencies": { + "@angular/common": "14.3.0", + "@angular/core": "14.3.0", + "@angular/platform-browser": "14.3.0", + "rxjs": "^6.5.3 || ^7.4.0" } }, - "@babel/helper-compilation-targets": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.20.7.tgz", - "integrity": "sha512-4tGORmfQcrc+bvrjb5y3dG9Mx1IOZjsHqQVUz7XCNHO+iTmqxWnVg3KRygjGmpRLJGdQSKuvFinbIb0CnZwHAQ==", - "dev": true, - "requires": { - "@babel/compat-data": "^7.20.5", - "@babel/helper-validator-option": "^7.18.6", - "browserslist": "^4.21.3", - "lru-cache": "^5.1.1", - "semver": "^6.3.0" + "node_modules/@angular/material": { + "version": "14.2.7", + "resolved": "https://registry.npmjs.org/@angular/material/-/material-14.2.7.tgz", + "integrity": "sha512-WXHh8pEStpgkXZJmYOg2cI8BSHkV82ET4XTJCNPdveumaCn1UYnaNzsXD13kw5z+zmy8CufhFEzdXTrv/yt7KQ==", + "dependencies": { + "tslib": "^2.3.0" }, + "peerDependencies": { + "@angular/animations": "^14.0.0 || ^15.0.0", + "@angular/cdk": "14.2.7", + "@angular/common": "^14.0.0 || ^15.0.0", + "@angular/core": "^14.0.0 || ^15.0.0", + "@angular/forms": "^14.0.0 || ^15.0.0", + "@angular/platform-browser": "^14.0.0 || ^15.0.0", + "rxjs": "^6.5.3 || ^7.4.0" + } + }, + "node_modules/@angular/platform-browser": { + "version": "14.3.0", + "resolved": "https://registry.npmjs.org/@angular/platform-browser/-/platform-browser-14.3.0.tgz", + "integrity": "sha512-w9Y3740UmTz44T0Egvc+4QV9sEbO61L+aRHbpkLTJdlEGzHByZvxJmJyBYmdqeyTPwc/Zpy7c02frlpfAlyB7A==", "dependencies": { - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true + "tslib": "^2.3.0" + }, + "engines": { + "node": "^14.15.0 || >=16.10.0" + }, + "peerDependencies": { + "@angular/animations": "14.3.0", + "@angular/common": "14.3.0", + "@angular/core": "14.3.0" + }, + "peerDependenciesMeta": { + "@angular/animations": { + "optional": true } } }, - "@babel/helper-create-regexp-features-plugin": { - "version": "7.21.0", - "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.21.0.tgz", - "integrity": "sha512-N+LaFW/auRSWdx7SHD/HiARwXQju1vXTW4fKr4u5SgBUTm51OKEjKgj+cs00ggW3kEvNqwErnlwuq7Y3xBe4eg==", - "dev": true, - "requires": { - "@babel/helper-annotate-as-pure": "^7.18.6", - "regexpu-core": "^5.3.1" + "node_modules/@angular/platform-browser-dynamic": { + "version": "14.3.0", + "resolved": "https://registry.npmjs.org/@angular/platform-browser-dynamic/-/platform-browser-dynamic-14.3.0.tgz", + "integrity": "sha512-rneZiMrIiYRhrkQvdL40E2ErKRn4Zdo6EtjBM9pAmWeyoM8oMnOZb9gz5vhrkNWg06kVMVg0yKqluP5How7j3A==", + "dependencies": { + "tslib": "^2.3.0" + }, + "engines": { + "node": "^14.15.0 || >=16.10.0" + }, + "peerDependencies": { + "@angular/common": "14.3.0", + "@angular/compiler": "14.3.0", + "@angular/core": "14.3.0", + "@angular/platform-browser": "14.3.0" } }, - "@babel/helper-environment-visitor": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.9.tgz", - "integrity": "sha512-3r/aACDJ3fhQ/EVgFy0hpj8oHyHpQc+LPtJoY9SzTThAsStm4Ptegq92vqKoE3vD706ZVFWITnMnxucw+S9Ipg==", - "dev": true + "node_modules/@angular/router": { + "version": "14.3.0", + "resolved": "https://registry.npmjs.org/@angular/router/-/router-14.3.0.tgz", + "integrity": "sha512-uip0V7w7k7xyxxpTPbr7EuMnYLj3FzJrwkLVJSEw3TMMGHt5VU5t4BBa9veGZOta2C205XFrTAHnp8mD+XYY1w==", + "dependencies": { + "tslib": "^2.3.0" + }, + "engines": { + "node": "^14.15.0 || >=16.10.0" + }, + "peerDependencies": { + "@angular/common": "14.3.0", + "@angular/core": "14.3.0", + "@angular/platform-browser": "14.3.0", + "rxjs": "^6.5.3 || ^7.4.0" + } }, - "@babel/helper-explode-assignable-expression": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.18.6.tgz", - "integrity": "sha512-eyAYAsQmB80jNfg4baAtLeWAQHfHFiR483rzFK+BhETlGZaQC9bsfrugfXDCbRHLQbIA7U5NxhhOxN7p/dWIcg==", - "dev": true, - "requires": { - "@babel/types": "^7.18.6" + "node_modules/@assemblyscript/loader": { + "version": "0.10.1", + "resolved": "https://registry.npmjs.org/@assemblyscript/loader/-/loader-0.10.1.tgz", + "integrity": "sha512-H71nDOOL8Y7kWRLqf6Sums+01Q5msqBW2KhDUTemh1tvY04eSkSXrK0uj/4mmY0Xr16/3zyZmsrxN7CKuRbNRg==" + }, + "node_modules/@babel/code-frame": { + "version": "7.26.2", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.26.2.tgz", + "integrity": "sha512-RJlIHRueQgwWitWgF8OdFYGZX328Ax5BCemNGlqHfplnRT9ESi8JkFlvaVYbS+UubVY6dpv87Fs2u5M29iNFVQ==", + "dependencies": { + "@babel/helper-validator-identifier": "^7.25.9", + "js-tokens": "^4.0.0", + "picocolors": "^1.0.0" + }, + "engines": { + "node": ">=6.9.0" } }, - "@babel/helper-function-name": { - "version": "7.21.0", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.21.0.tgz", - "integrity": "sha512-HfK1aMRanKHpxemaY2gqBmL04iAPOPRj7DxtNbiDOrJK+gdwkiNRVpCpUJYbUT+aZyemKN8brqTOxzCaG6ExRg==", - "dev": true, - "requires": { - "@babel/template": "^7.20.7", - "@babel/types": "^7.21.0" - }, - "dependencies": { - "@babel/template": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.20.7.tgz", - "integrity": "sha512-8SegXApWe6VoNw0r9JHpSteLKTpTiLZ4rMlGIm9JQ18KiCtyQiAMEazujAHrUS5flrcqYZa75ukev3P6QmUwUw==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.18.6", - "@babel/parser": "^7.20.7", - "@babel/types": "^7.20.7" - } - } + "node_modules/@babel/compat-data": { + "version": "7.26.8", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.26.8.tgz", + "integrity": "sha512-oH5UPLMWR3L2wEFLnFJ1TZXqHufiTKAiLfqw5zkhS4dKXLJ10yVztfil/twG8EDTA4F/tvVNw9nOl4ZMslB8rQ==", + "engines": { + "node": ">=6.9.0" } }, - "@babel/helper-hoist-variables": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.18.6.tgz", - "integrity": "sha512-UlJQPkFqFULIcyW5sbzgbkxn2FKRgwWiRexcuaR8RNJRy8+LLveqPjwZV/bwrLZCN0eUHD/x8D0heK1ozuoo6Q==", - "dev": true, - "requires": { - "@babel/types": "^7.18.6" + "node_modules/@babel/core": { + "version": "7.18.10", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.18.10.tgz", + "integrity": "sha512-JQM6k6ENcBFKVtWvLavlvi/mPcpYZ3+R+2EySDEMSMbp7Mn4FexlbbJVrx2R7Ijhr01T8gyqrOaABWIOgxeUyw==", + "dependencies": { + "@ampproject/remapping": "^2.1.0", + "@babel/code-frame": "^7.18.6", + "@babel/generator": "^7.18.10", + "@babel/helper-compilation-targets": "^7.18.9", + "@babel/helper-module-transforms": "^7.18.9", + "@babel/helpers": "^7.18.9", + "@babel/parser": "^7.18.10", + "@babel/template": "^7.18.10", + "@babel/traverse": "^7.18.10", + "@babel/types": "^7.18.10", + "convert-source-map": "^1.7.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.2", + "json5": "^2.2.1", + "semver": "^6.3.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/babel" } }, - "@babel/helper-member-expression-to-functions": { - "version": "7.21.0", - "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.21.0.tgz", - "integrity": "sha512-Muu8cdZwNN6mRRNG6lAYErJ5X3bRevgYR2O8wN0yn7jJSnGDu6eG59RfT29JHxGUovyfrh6Pj0XzmR7drNVL3Q==", - "dev": true, - "requires": { - "@babel/types": "^7.21.0" + "node_modules/@babel/core/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "bin": { + "semver": "bin/semver.js" } }, - "@babel/helper-module-imports": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.18.6.tgz", - "integrity": "sha512-0NFvs3VkuSYbFi1x2Vd6tKrywq+z/cLeYC/RJNFrIX/30Bf5aiGYbtvGXolEktzJH8o5E5KJ3tT+nkxuuZFVlA==", - "dev": true, - "requires": { - "@babel/types": "^7.18.6" + "node_modules/@babel/generator": { + "version": "7.18.12", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.18.12.tgz", + "integrity": "sha512-dfQ8ebCN98SvyL7IxNMCUtZQSq5R7kxgN+r8qYTGDmmSion1hX2C0zq2yo1bsCDhXixokv1SAWTZUMYbO/V5zg==", + "dependencies": { + "@babel/types": "^7.18.10", + "@jridgewell/gen-mapping": "^0.3.2", + "jsesc": "^2.5.1" + }, + "engines": { + "node": ">=6.9.0" } }, - "@babel/helper-module-transforms": { - "version": "7.21.2", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.21.2.tgz", - "integrity": "sha512-79yj2AR4U/Oqq/WOV7Lx6hUjau1Zfo4cI+JLAVYeMV5XIlbOhmjEk5ulbTc9fMpmlojzZHkUUxAiK+UKn+hNQQ==", - "dev": true, - "requires": { - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-module-imports": "^7.18.6", - "@babel/helper-simple-access": "^7.20.2", - "@babel/helper-split-export-declaration": "^7.18.6", - "@babel/helper-validator-identifier": "^7.19.1", - "@babel/template": "^7.20.7", - "@babel/traverse": "^7.21.2", - "@babel/types": "^7.21.2" - }, - "dependencies": { - "@babel/template": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.20.7.tgz", - "integrity": "sha512-8SegXApWe6VoNw0r9JHpSteLKTpTiLZ4rMlGIm9JQ18KiCtyQiAMEazujAHrUS5flrcqYZa75ukev3P6QmUwUw==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.18.6", - "@babel/parser": "^7.20.7", - "@babel/types": "^7.20.7" - } - } + "node_modules/@babel/generator/node_modules/@jridgewell/gen-mapping": { + "version": "0.3.8", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.8.tgz", + "integrity": "sha512-imAbBGkb+ebQyxKgzv5Hu2nmROxoDOXHh80evxdoXNOrvAnVx7zimzc1Oo5h9RlfV4vPXaE2iM5pOFbvOCClWA==", + "dependencies": { + "@jridgewell/set-array": "^1.2.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.24" + }, + "engines": { + "node": ">=6.0.0" } }, - "@babel/helper-optimise-call-expression": { + "node_modules/@babel/helper-annotate-as-pure": { "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.18.6.tgz", - "integrity": "sha512-HP59oD9/fEHQkdcbgFCnbmgH5vIQTJbxh2yf+CdM89/glUNnuzr87Q8GIjGEnOktTROemO0Pe0iPAYbqZuOUiA==", - "dev": true, - "requires": { + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.18.6.tgz", + "integrity": "sha512-duORpUiYrEpzKIop6iNbjnwKLAKnJ47csTyRACyEmWj0QdUrm5aqNJGHSSEQSUAvNW0ojX0dOmK9dZduvkfeXA==", + "dependencies": { "@babel/types": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" } }, - "@babel/helper-plugin-utils": { - "version": "7.20.2", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.20.2.tgz", - "integrity": "sha512-8RvlJG2mj4huQ4pZ+rU9lqKi9ZKiRmuvGuM2HlWmkmgOhbs6zEAw6IEiJ5cQqGbDzGZOhwuOQNtZMi/ENLjZoQ==", - "dev": true + "node_modules/@babel/helper-compilation-targets": { + "version": "7.27.0", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.27.0.tgz", + "integrity": "sha512-LVk7fbXml0H2xH34dFzKQ7TDZ2G4/rVTOrq9V+icbbadjbVxxeFeDsNHv2SrZeWoA+6ZiTyWYWtScEIW07EAcA==", + "dependencies": { + "@babel/compat-data": "^7.26.8", + "@babel/helper-validator-option": "^7.25.9", + "browserslist": "^4.24.0", + "lru-cache": "^5.1.1", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + } }, - "@babel/helper-remap-async-to-generator": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.18.9.tgz", - "integrity": "sha512-dI7q50YKd8BAv3VEfgg7PS7yD3Rtbi2J1XMXaalXO0W0164hYLnh8zpjRS0mte9MfVp/tltvr/cfdXPvJr1opA==", - "dev": true, - "requires": { - "@babel/helper-annotate-as-pure": "^7.18.6", - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-wrap-function": "^7.18.9", - "@babel/types": "^7.18.9" + "node_modules/@babel/helper-compilation-targets/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "bin": { + "semver": "bin/semver.js" } }, - "@babel/helper-replace-supers": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.20.7.tgz", - "integrity": "sha512-vujDMtB6LVfNW13jhlCrp48QNslK6JXi7lQG736HVbHz/mbf4Dc7tIRh1Xf5C0rF7BP8iiSxGMCmY6Ci1ven3A==", - "dev": true, - "requires": { - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-member-expression-to-functions": "^7.20.7", - "@babel/helper-optimise-call-expression": "^7.18.6", - "@babel/template": "^7.20.7", - "@babel/traverse": "^7.20.7", - "@babel/types": "^7.20.7" - }, - "dependencies": { - "@babel/template": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.20.7.tgz", - "integrity": "sha512-8SegXApWe6VoNw0r9JHpSteLKTpTiLZ4rMlGIm9JQ18KiCtyQiAMEazujAHrUS5flrcqYZa75ukev3P6QmUwUw==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.18.6", - "@babel/parser": "^7.20.7", - "@babel/types": "^7.20.7" - } - } + "node_modules/@babel/helper-create-class-features-plugin": { + "version": "7.27.0", + "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.27.0.tgz", + "integrity": "sha512-vSGCvMecvFCd/BdpGlhpXYNhhC4ccxyvQWpbGL4CWbvfEoLFWUZuSuf7s9Aw70flgQF+6vptvgK2IfOnKlRmBg==", + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.25.9", + "@babel/helper-member-expression-to-functions": "^7.25.9", + "@babel/helper-optimise-call-expression": "^7.25.9", + "@babel/helper-replace-supers": "^7.26.5", + "@babel/helper-skip-transparent-expression-wrappers": "^7.25.9", + "@babel/traverse": "^7.27.0", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" } }, - "@babel/helper-simple-access": { - "version": "7.20.2", - "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.20.2.tgz", - "integrity": "sha512-+0woI/WPq59IrqDYbVGfshjT5Dmk/nnbdpcF8SnMhhXObpTq2KNBdLFRFrkVdbDOyUmHBCxzm5FHV1rACIkIbA==", - "dev": true, - "requires": { - "@babel/types": "^7.20.2" + "node_modules/@babel/helper-create-class-features-plugin/node_modules/@babel/helper-annotate-as-pure": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.25.9.tgz", + "integrity": "sha512-gv7320KBUFJz1RnylIg5WWYPRXKZ884AGkYpgpWW02TH66Dl+HaC1t1CKd0z3R4b6hdYEcmrNZHUmfCP+1u3/g==", + "dependencies": { + "@babel/types": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" } }, - "@babel/helper-skip-transparent-expression-wrappers": { - "version": "7.20.0", - "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.20.0.tgz", - "integrity": "sha512-5y1JYeNKfvnT8sZcK9DVRtpTbGiomYIHviSP3OQWmDPU3DeH4a1ZlT/N2lyQ5P8egjcRaT/Y9aNqUxK0WsnIIg==", - "dev": true, - "requires": { - "@babel/types": "^7.20.0" + "node_modules/@babel/helper-create-class-features-plugin/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "bin": { + "semver": "bin/semver.js" } }, - "@babel/helper-split-export-declaration": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.18.6.tgz", - "integrity": "sha512-bde1etTx6ZyTmobl9LLMMQsaizFVZrquTEHOqKeQESMKo4PlObf+8+JA25ZsIpZhT/WEd39+vOdLXAFG/nELpA==", - "dev": true, - "requires": { - "@babel/types": "^7.18.6" + "node_modules/@babel/helper-create-regexp-features-plugin": { + "version": "7.27.0", + "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.27.0.tgz", + "integrity": "sha512-fO8l08T76v48BhpNRW/nQ0MxfnSdoSKUJBMjubOAYffsVuGG5qOfMq7N6Es7UJvi7Y8goXXo07EfcHZXDPuELQ==", + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.25.9", + "regexpu-core": "^6.2.0", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" } }, - "@babel/helper-string-parser": { - "version": "7.19.4", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.19.4.tgz", - "integrity": "sha512-nHtDoQcuqFmwYNYPz3Rah5ph2p8PFeFCsZk9A/48dPc/rGocJ5J3hAAZ7pb76VWX3fZKu+uEr/FhH5jLx7umrw==", - "dev": true + "node_modules/@babel/helper-create-regexp-features-plugin/node_modules/@babel/helper-annotate-as-pure": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.25.9.tgz", + "integrity": "sha512-gv7320KBUFJz1RnylIg5WWYPRXKZ884AGkYpgpWW02TH66Dl+HaC1t1CKd0z3R4b6hdYEcmrNZHUmfCP+1u3/g==", + "dependencies": { + "@babel/types": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + } }, - "@babel/helper-validator-identifier": { - "version": "7.19.1", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.19.1.tgz", - "integrity": "sha512-awrNfaMtnHUr653GgGEs++LlAvW6w+DcPrOliSMXWCKo597CwL5Acf/wWdNkf/tfEQE3mjkeD1YOVZOUV/od1w==", - "dev": true + "node_modules/@babel/helper-create-regexp-features-plugin/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "bin": { + "semver": "bin/semver.js" + } }, - "@babel/helper-validator-option": { - "version": "7.21.0", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.21.0.tgz", - "integrity": "sha512-rmL/B8/f0mKS2baE9ZpyTcTavvEuWhTTW8amjzXNvYG4AwBsqTLikfXsEofsJEfKHf+HQVQbFOHy6o+4cnC/fQ==", - "dev": true + "node_modules/@babel/helper-define-polyfill-provider": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.3.3.tgz", + "integrity": "sha512-z5aQKU4IzbqCC1XH0nAqfsFLMVSo22SBKUc0BxGrLkolTdPTructy0ToNnlO2zA4j9Q/7pjMZf0DSY+DSTYzww==", + "dependencies": { + "@babel/helper-compilation-targets": "^7.17.7", + "@babel/helper-plugin-utils": "^7.16.7", + "debug": "^4.1.1", + "lodash.debounce": "^4.0.8", + "resolve": "^1.14.2", + "semver": "^6.1.2" + }, + "peerDependencies": { + "@babel/core": "^7.4.0-0" + } }, - "@babel/helper-wrap-function": { - "version": "7.20.5", - "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.20.5.tgz", - "integrity": "sha512-bYMxIWK5mh+TgXGVqAtnu5Yn1un+v8DDZtqyzKRLUzrh70Eal2O3aZ7aPYiMADO4uKlkzOiRiZ6GX5q3qxvW9Q==", - "dev": true, - "requires": { - "@babel/helper-function-name": "^7.19.0", - "@babel/template": "^7.18.10", - "@babel/traverse": "^7.20.5", - "@babel/types": "^7.20.5" - }, - "dependencies": { - "@babel/template": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.20.7.tgz", - "integrity": "sha512-8SegXApWe6VoNw0r9JHpSteLKTpTiLZ4rMlGIm9JQ18KiCtyQiAMEazujAHrUS5flrcqYZa75ukev3P6QmUwUw==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.18.6", - "@babel/parser": "^7.20.7", - "@babel/types": "^7.20.7" - } - } + "node_modules/@babel/helper-define-polyfill-provider/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "bin": { + "semver": "bin/semver.js" } }, - "@babel/helpers": { - "version": "7.21.0", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.21.0.tgz", - "integrity": "sha512-XXve0CBtOW0pd7MRzzmoyuSj0e3SEzj8pgyFxnTT1NJZL38BD1MK7yYrm8yefRPIDvNNe14xR4FdbHwpInD4rA==", - "dev": true, - "requires": { - "@babel/template": "^7.20.7", - "@babel/traverse": "^7.21.0", - "@babel/types": "^7.21.0" - }, - "dependencies": { - "@babel/template": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.20.7.tgz", - "integrity": "sha512-8SegXApWe6VoNw0r9JHpSteLKTpTiLZ4rMlGIm9JQ18KiCtyQiAMEazujAHrUS5flrcqYZa75ukev3P6QmUwUw==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.18.6", - "@babel/parser": "^7.20.7", - "@babel/types": "^7.20.7" - } - } + "node_modules/@babel/helper-environment-visitor": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.24.7.tgz", + "integrity": "sha512-DoiN84+4Gnd0ncbBOM9AZENV4a5ZiL39HYMyZJGZ/AZEykHYdJw0wW3kdcsh9/Kn+BRXHLkkklZ51ecPKmI1CQ==", + "dependencies": { + "@babel/types": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" } }, - "@babel/highlight": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.18.6.tgz", - "integrity": "sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g==", - "dev": true, - "requires": { - "@babel/helper-validator-identifier": "^7.18.6", - "chalk": "^2.0.0", - "js-tokens": "^4.0.0" + "node_modules/@babel/helper-member-expression-to-functions": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.25.9.tgz", + "integrity": "sha512-wbfdZ9w5vk0C0oyHqAJbc62+vet5prjj01jjJ8sKn3j9h3MQQlflEdXYvuqRWjHnM12coDEqiC1IRCi0U/EKwQ==", + "dependencies": { + "@babel/traverse": "^7.25.9", + "@babel/types": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" } }, - "@babel/parser": { - "version": "7.21.3", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.21.3.tgz", - "integrity": "sha512-lobG0d7aOfQRXh8AyklEAgZGvA4FShxo6xQbUrrT/cNBPUdIDojlokwJsQyCC/eKia7ifqM0yP+2DRZ4WKw2RQ==", - "dev": true + "node_modules/@babel/helper-module-imports": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.25.9.tgz", + "integrity": "sha512-tnUA4RsrmflIM6W6RFTLFSXITtl0wKjgpnLgXyowocVPrbYrLUXSBXDgTs8BlbmIzIdlBySRQjINYs2BAkiLtw==", + "dependencies": { + "@babel/traverse": "^7.25.9", + "@babel/types": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + } }, - "@babel/plugin-proposal-async-generator-functions": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.20.7.tgz", - "integrity": "sha512-xMbiLsn/8RK7Wq7VeVytytS2L6qE69bXPB10YCmMdDZbKF4okCqY74pI/jJQ/8U0b/F6NrT2+14b8/P9/3AMGA==", - "dev": true, - "requires": { + "node_modules/@babel/helper-module-transforms": { + "version": "7.26.0", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.26.0.tgz", + "integrity": "sha512-xO+xu6B5K2czEnQye6BHA7DolFFmS3LB7stHZFaOLb1pAwO1HWLS8fXA+eh0A2yIvltPVmx3eNNDBJA2SLHXFw==", + "dependencies": { + "@babel/helper-module-imports": "^7.25.9", + "@babel/helper-validator-identifier": "^7.25.9", + "@babel/traverse": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-optimise-call-expression": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.25.9.tgz", + "integrity": "sha512-FIpuNaz5ow8VyrYcnXQTDRGvV6tTjkNtCK/RYNDXGSLlUD6cBuQTSw43CShGxjvfBTfcUA/r6UhUCbtYqkhcuQ==", + "dependencies": { + "@babel/types": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-plugin-utils": { + "version": "7.26.5", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.26.5.tgz", + "integrity": "sha512-RS+jZcRdZdRFzMyr+wcsaqOmld1/EqTghfaBGQQd/WnRdzdlvSZ//kF7U8VQTxf1ynZ4cjUcYgjVGx13ewNPMg==", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-remap-async-to-generator": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.25.9.tgz", + "integrity": "sha512-IZtukuUeBbhgOcaW2s06OXTzVNJR0ybm4W5xC1opWFFJMZbwRj5LCk+ByYH7WdZPZTt8KnFwA8pvjN2yqcPlgw==", + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.25.9", + "@babel/helper-wrap-function": "^7.25.9", + "@babel/traverse": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-remap-async-to-generator/node_modules/@babel/helper-annotate-as-pure": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.25.9.tgz", + "integrity": "sha512-gv7320KBUFJz1RnylIg5WWYPRXKZ884AGkYpgpWW02TH66Dl+HaC1t1CKd0z3R4b6hdYEcmrNZHUmfCP+1u3/g==", + "dependencies": { + "@babel/types": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-replace-supers": { + "version": "7.26.5", + "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.26.5.tgz", + "integrity": "sha512-bJ6iIVdYX1YooY2X7w1q6VITt+LnUILtNk7zT78ykuwStx8BauCzxvFqFaHjOpW1bVnSUM1PN1f0p5P21wHxvg==", + "dependencies": { + "@babel/helper-member-expression-to-functions": "^7.25.9", + "@babel/helper-optimise-call-expression": "^7.25.9", + "@babel/traverse": "^7.26.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-skip-transparent-expression-wrappers": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.25.9.tgz", + "integrity": "sha512-K4Du3BFa3gvyhzgPcntrkDgZzQaq6uozzcpGbOO1OEJaI+EJdqWIMTLgFgQf6lrfiDFo5FU+BxKepI9RmZqahA==", + "dependencies": { + "@babel/traverse": "^7.25.9", + "@babel/types": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-string-parser": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.25.9.tgz", + "integrity": "sha512-4A/SCr/2KLd5jrtOMFzaKjVtAei3+2r/NChoBNoZ3EyP/+GlhoaEGoWOZUmFmoITP7zOJyHIMm+DYRd8o3PvHA==", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-identifier": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.25.9.tgz", + "integrity": "sha512-Ed61U6XJc3CVRfkERJWDz4dJwKe7iLmmJsbOGu9wSloNSFttHV0I8g6UAgb7qnK5ly5bGLPd4oXZlxCdANBOWQ==", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-option": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.25.9.tgz", + "integrity": "sha512-e/zv1co8pp55dNdEcCynfj9X7nyUKUXoUEwfXqaZt0omVOmDe9oOTdKStH4GmAw6zxMFs50ZayuMfHDKlO7Tfw==", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-wrap-function": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.25.9.tgz", + "integrity": "sha512-ETzz9UTjQSTmw39GboatdymDq4XIQbR8ySgVrylRhPOFpsd+JrKHIuF0de7GCWmem+T4uC5z7EZguod7Wj4A4g==", + "dependencies": { + "@babel/template": "^7.25.9", + "@babel/traverse": "^7.25.9", + "@babel/types": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-wrap-function/node_modules/@babel/template": { + "version": "7.27.0", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.27.0.tgz", + "integrity": "sha512-2ncevenBqXI6qRMukPlXwHKHchC7RyMuu4xv5JBXRfOGVcTy1mXCD12qrp7Jsoxll1EV3+9sE4GugBVRjT2jFA==", + "dependencies": { + "@babel/code-frame": "^7.26.2", + "@babel/parser": "^7.27.0", + "@babel/types": "^7.27.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helpers": { + "version": "7.27.0", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.27.0.tgz", + "integrity": "sha512-U5eyP/CTFPuNE3qk+WZMxFkp/4zUzdceQlfzf7DdGdhp+Fezd7HD+i8Y24ZuTMKX3wQBld449jijbGq6OdGNQg==", + "dependencies": { + "@babel/template": "^7.27.0", + "@babel/types": "^7.27.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helpers/node_modules/@babel/template": { + "version": "7.27.0", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.27.0.tgz", + "integrity": "sha512-2ncevenBqXI6qRMukPlXwHKHchC7RyMuu4xv5JBXRfOGVcTy1mXCD12qrp7Jsoxll1EV3+9sE4GugBVRjT2jFA==", + "dependencies": { + "@babel/code-frame": "^7.26.2", + "@babel/parser": "^7.27.0", + "@babel/types": "^7.27.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/parser": { + "version": "7.27.0", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.27.0.tgz", + "integrity": "sha512-iaepho73/2Pz7w2eMS0Q5f83+0RKI7i4xmiYeBmDzfRVbQtTOG7Ts0S4HzJVsTMGI9keU8rNfuZr8DKfSt7Yyg==", + "dependencies": { + "@babel/types": "^7.27.0" + }, + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.25.9.tgz", + "integrity": "sha512-2qUwwfAFpJLZqxd02YW9btUCZHl+RFvdDkNfZwaIJrvB8Tesjsk8pEQkTvGwZXLqXUx/2oyY3ySRhm6HOXuCug==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.25.9.tgz", + "integrity": "sha512-6xWgLZTJXwilVjlnV7ospI3xi+sl8lN8rXXbBD6vYn3UYDlGsag8wrZkKcSI8G6KgqKP7vNFaDgeDnfAABq61g==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.25.9", + "@babel/helper-skip-transparent-expression-wrappers": "^7.25.9", + "@babel/plugin-transform-optional-chaining": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.13.0" + } + }, + "node_modules/@babel/plugin-proposal-async-generator-functions": { + "version": "7.18.10", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.18.10.tgz", + "integrity": "sha512-1mFuY2TOsR1hxbjCo4QL+qlIjV07p4H4EUYw2J/WCqsvFV6V9X9z9YhXbWndc/4fw+hYGlDT7egYxliMp5O6Ew==", + "deprecated": "This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-async-generator-functions instead.", + "dependencies": { "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-plugin-utils": "^7.20.2", + "@babel/helper-plugin-utils": "^7.18.9", "@babel/helper-remap-async-to-generator": "^7.18.9", "@babel/plugin-syntax-async-generators": "^7.8.4" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-class-properties": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.18.6.tgz", + "integrity": "sha512-cumfXOF0+nzZrrN8Rf0t7M+tF6sZc7vhQwYQck9q1/5w2OExlD+b4v4RpMJFaV1Z7WcDRgO6FqvxqxGlwo+RHQ==", + "deprecated": "This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-class-properties instead.", + "dependencies": { + "@babel/helper-create-class-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-class-static-block": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-static-block/-/plugin-proposal-class-static-block-7.21.0.tgz", + "integrity": "sha512-XP5G9MWNUskFuP30IfFSEFB0Z6HzLIUcjYM4bYOPHXl7eiJ9HFv8tWj6TXTN5QODiEhDZAeI4hLok2iHFFV4hw==", + "deprecated": "This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-class-static-block instead.", + "dependencies": { + "@babel/helper-create-class-features-plugin": "^7.21.0", + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/plugin-syntax-class-static-block": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.12.0" } }, - "@babel/plugin-proposal-dynamic-import": { + "node_modules/@babel/plugin-proposal-dynamic-import": { "version": "7.18.6", "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.18.6.tgz", "integrity": "sha512-1auuwmK+Rz13SJj36R+jqFPMJWyKEDd7lLSdOj4oJK0UTgGueSAtkrCvz9ewmgyU/P941Rv2fQwZJN8s6QruXw==", - "dev": true, - "requires": { + "deprecated": "This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-dynamic-import instead.", + "dependencies": { "@babel/helper-plugin-utils": "^7.18.6", "@babel/plugin-syntax-dynamic-import": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-export-namespace-from": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-export-namespace-from/-/plugin-proposal-export-namespace-from-7.18.9.tgz", + "integrity": "sha512-k1NtHyOMvlDDFeb9G5PhUXuGj8m/wiwojgQVEhJ/fsVsMCpLyOP4h0uGEjYJKrRI+EVPlb5Jk+Gt9P97lOGwtA==", + "deprecated": "This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-export-namespace-from instead.", + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.9", + "@babel/plugin-syntax-export-namespace-from": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-proposal-json-strings": { + "node_modules/@babel/plugin-proposal-json-strings": { "version": "7.18.6", "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.18.6.tgz", "integrity": "sha512-lr1peyn9kOdbYc0xr0OdHTZ5FMqS6Di+H0Fz2I/JwMzGmzJETNeOFq2pBySw6X/KFL5EWDjlJuMsUGRFb8fQgQ==", - "dev": true, - "requires": { + "deprecated": "This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-json-strings instead.", + "dependencies": { "@babel/helper-plugin-utils": "^7.18.6", "@babel/plugin-syntax-json-strings": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-proposal-nullish-coalescing-operator": { + "node_modules/@babel/plugin-proposal-logical-assignment-operators": { + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-logical-assignment-operators/-/plugin-proposal-logical-assignment-operators-7.20.7.tgz", + "integrity": "sha512-y7C7cZgpMIjWlKE5T7eJwp+tnRYM89HmRvWM5EQuB5BoHEONjmQ8lSNmBUwOyy/GFRsohJED51YBF79hE1djug==", + "deprecated": "This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-logical-assignment-operators instead.", + "dependencies": { + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-nullish-coalescing-operator": { "version": "7.18.6", "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.18.6.tgz", "integrity": "sha512-wQxQzxYeJqHcfppzBDnm1yAY0jSRkUXR2z8RePZYrKwMKgMlE8+Z6LUno+bd6LvbGh8Gltvy74+9pIYkr+XkKA==", - "dev": true, - "requires": { + "deprecated": "This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-nullish-coalescing-operator instead.", + "dependencies": { "@babel/helper-plugin-utils": "^7.18.6", "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-proposal-numeric-separator": { + "node_modules/@babel/plugin-proposal-numeric-separator": { "version": "7.18.6", "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.18.6.tgz", "integrity": "sha512-ozlZFogPqoLm8WBr5Z8UckIoE4YQ5KESVcNudyXOR8uqIkliTEgJ3RoketfG6pmzLdeZF0H/wjE9/cCEitBl7Q==", - "dev": true, - "requires": { + "deprecated": "This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-numeric-separator instead.", + "dependencies": { "@babel/helper-plugin-utils": "^7.18.6", "@babel/plugin-syntax-numeric-separator": "^7.10.4" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-proposal-object-rest-spread": { + "node_modules/@babel/plugin-proposal-object-rest-spread": { "version": "7.20.7", "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.20.7.tgz", "integrity": "sha512-d2S98yCiLxDVmBmE8UjGcfPvNEUbA1U5q5WxaWFUGRzJSVAZqm5W6MbPct0jxnegUZ0niLeNX+IOzEs7wYg9Dg==", - "dev": true, - "requires": { + "deprecated": "This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-object-rest-spread instead.", + "dependencies": { "@babel/compat-data": "^7.20.5", "@babel/helper-compilation-targets": "^7.20.7", "@babel/helper-plugin-utils": "^7.20.2", "@babel/plugin-syntax-object-rest-spread": "^7.8.3", "@babel/plugin-transform-parameters": "^7.20.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-proposal-optional-catch-binding": { + "node_modules/@babel/plugin-proposal-optional-catch-binding": { "version": "7.18.6", "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.18.6.tgz", "integrity": "sha512-Q40HEhs9DJQyaZfUjjn6vE8Cv4GmMHCYuMGIWUnlxH6400VGxOuwWsPt4FxXxJkC/5eOzgn0z21M9gMT4MOhbw==", - "dev": true, - "requires": { + "deprecated": "This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-optional-catch-binding instead.", + "dependencies": { "@babel/helper-plugin-utils": "^7.18.6", "@babel/plugin-syntax-optional-catch-binding": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-proposal-optional-chaining": { + "node_modules/@babel/plugin-proposal-optional-chaining": { "version": "7.21.0", "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.21.0.tgz", "integrity": "sha512-p4zeefM72gpmEe2fkUr/OnOXpWEf8nAgk7ZYVqqfFiyIG7oFfVZcCrU64hWn5xp4tQ9LkV4bTIa5rD0KANpKNA==", - "dev": true, - "requires": { + "deprecated": "This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-optional-chaining instead.", + "dependencies": { "@babel/helper-plugin-utils": "^7.20.2", "@babel/helper-skip-transparent-expression-wrappers": "^7.20.0", "@babel/plugin-syntax-optional-chaining": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-private-methods": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-methods/-/plugin-proposal-private-methods-7.18.6.tgz", + "integrity": "sha512-nutsvktDItsNn4rpGItSNV2sz1XwS+nfU0Rg8aCx3W3NOKVzdMjJRu0O5OkgDp3ZGICSTbgRpxZoWsxoKRvbeA==", + "deprecated": "This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-private-methods instead.", + "dependencies": { + "@babel/helper-create-class-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-private-property-in-object": { + "version": "7.21.11", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.21.11.tgz", + "integrity": "sha512-0QZ8qP/3RLDVBwBFoWAwCtgcDZJVwA5LUJRZU8x2YFfKNuFq161wK3cuGrALu5yiPu+vzwTAg/sMWVNeWeNyaw==", + "deprecated": "This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-private-property-in-object instead.", + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.18.6", + "@babel/helper-create-class-features-plugin": "^7.21.0", + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/plugin-syntax-private-property-in-object": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-proposal-unicode-property-regex": { + "node_modules/@babel/plugin-proposal-unicode-property-regex": { "version": "7.18.6", "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.18.6.tgz", "integrity": "sha512-2BShG/d5yoZyXZfVePH91urL5wTG6ASZU9M4o03lKK8u8UW1y08OMttBSOADTcJrnPMpvDXRG3G8fyLh4ovs8w==", - "dev": true, - "requires": { + "deprecated": "This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-unicode-property-regex instead.", + "dependencies": { "@babel/helper-create-regexp-features-plugin": "^7.18.6", "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-syntax-async-generators": { + "node_modules/@babel/plugin-syntax-async-generators": { "version": "7.8.4", "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz", "integrity": "sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==", - "dev": true, - "requires": { + "dependencies": { "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-syntax-dynamic-import": { + "node_modules/@babel/plugin-syntax-class-properties": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz", + "integrity": "sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.12.13" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-class-static-block": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-static-block/-/plugin-syntax-class-static-block-7.14.5.tgz", + "integrity": "sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-dynamic-import": { "version": "7.8.3", "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz", "integrity": "sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==", - "dev": true, - "requires": { + "dependencies": { "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-export-namespace-from": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-export-namespace-from/-/plugin-syntax-export-namespace-from-7.8.3.tgz", + "integrity": "sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.3" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-import-assertions": { + "version": "7.26.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.26.0.tgz", + "integrity": "sha512-QCWT5Hh830hK5EQa7XzuqIkQU9tT/whqbDz7kuaZMHFl1inRRg7JnuAEOQ0Ur0QUl0NufCk1msK2BeY79Aj/eg==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-syntax-json-strings": { + "node_modules/@babel/plugin-syntax-json-strings": { "version": "7.8.3", "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz", "integrity": "sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==", - "dev": true, - "requires": { + "dependencies": { "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-logical-assignment-operators": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz", + "integrity": "sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-syntax-nullish-coalescing-operator": { + "node_modules/@babel/plugin-syntax-nullish-coalescing-operator": { "version": "7.8.3", "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz", "integrity": "sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==", - "dev": true, - "requires": { + "dependencies": { "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-syntax-numeric-separator": { + "node_modules/@babel/plugin-syntax-numeric-separator": { "version": "7.10.4", "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz", "integrity": "sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==", - "dev": true, - "requires": { + "dependencies": { "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-syntax-object-rest-spread": { + "node_modules/@babel/plugin-syntax-object-rest-spread": { "version": "7.8.3", "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz", "integrity": "sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==", - "dev": true, - "requires": { + "dependencies": { "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-syntax-optional-catch-binding": { + "node_modules/@babel/plugin-syntax-optional-catch-binding": { "version": "7.8.3", "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz", "integrity": "sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==", - "dev": true, - "requires": { + "dependencies": { "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-syntax-optional-chaining": { + "node_modules/@babel/plugin-syntax-optional-chaining": { "version": "7.8.3", "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz", "integrity": "sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==", - "dev": true, - "requires": { + "dependencies": { "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-syntax-top-level-await": { + "node_modules/@babel/plugin-syntax-private-property-in-object": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-private-property-in-object/-/plugin-syntax-private-property-in-object-7.14.5.tgz", + "integrity": "sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-top-level-await": { "version": "7.14.5", "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz", "integrity": "sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==", - "dev": true, - "requires": { + "dependencies": { "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-transform-arrow-functions": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.20.7.tgz", - "integrity": "sha512-3poA5E7dzDomxj9WXWwuD6A5F3kc7VXwIJO+E+J8qtDtS+pXPAhrgEyh+9GBwBgPq1Z+bB+/JD60lp5jsN7JPQ==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.20.2" + "node_modules/@babel/plugin-transform-arrow-functions": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.25.9.tgz", + "integrity": "sha512-6jmooXYIwn9ca5/RylZADJ+EnSxVUS5sjeJ9UPk6RWRzXCmOJCy6dqItPJFpw2cuCangPK4OYr5uhGKcmrm5Qg==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-transform-async-to-generator": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.20.7.tgz", - "integrity": "sha512-Uo5gwHPT9vgnSXQxqGtpdufUiWp96gk7yiP4Mp5bm1QMkEmLXBO7PAGYbKoJ6DhAwiNkcHFBol/x5zZZkL/t0Q==", - "dev": true, - "requires": { + "node_modules/@babel/plugin-transform-async-to-generator": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.18.6.tgz", + "integrity": "sha512-ARE5wZLKnTgPW7/1ftQmSi1CmkqqHo2DNmtztFhvgtOWSDfq0Cq9/9L+KnZNYSNrydBekhW3rwShduf59RoXag==", + "dependencies": { "@babel/helper-module-imports": "^7.18.6", - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/helper-remap-async-to-generator": "^7.18.9" + "@babel/helper-plugin-utils": "^7.18.6", + "@babel/helper-remap-async-to-generator": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-transform-block-scoped-functions": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.18.6.tgz", - "integrity": "sha512-ExUcOqpPWnliRcPqves5HJcJOvHvIIWfuS4sroBUenPuMdmW+SMHDakmtS7qOo13sVppmUijqeTv7qqGsvURpQ==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.6" + "node_modules/@babel/plugin-transform-block-scoped-functions": { + "version": "7.26.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.26.5.tgz", + "integrity": "sha512-chuTSY+hq09+/f5lMj8ZSYgCFpppV2CbYrhNFJ1BFoXpiWPnnAb7R0MqrafCpN8E1+YRrtM1MXZHJdIx8B6rMQ==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.26.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-transform-block-scoping": { - "version": "7.21.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.21.0.tgz", - "integrity": "sha512-Mdrbunoh9SxwFZapeHVrwFmri16+oYotcZysSzhNIVDwIAb1UV+kvnxULSYq9J3/q5MDG+4X6w8QVgD1zhBXNQ==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.20.2" + "node_modules/@babel/plugin-transform-block-scoping": { + "version": "7.27.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.27.0.tgz", + "integrity": "sha512-u1jGphZ8uDI2Pj/HJj6YQ6XQLZCNjOlprjxB5SVz6rq2T6SwAR+CdrWK0CP7F+9rDVMXdB0+r6Am5G5aobOjAQ==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.26.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-transform-classes": { - "version": "7.21.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.21.0.tgz", - "integrity": "sha512-RZhbYTCEUAe6ntPehC4hlslPWosNHDox+vAs4On/mCLRLfoDVHf6hVEd7kuxr1RnHwJmxFfUM3cZiZRmPxJPXQ==", - "dev": true, - "requires": { - "@babel/helper-annotate-as-pure": "^7.18.6", - "@babel/helper-compilation-targets": "^7.20.7", - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-function-name": "^7.21.0", - "@babel/helper-optimise-call-expression": "^7.18.6", - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/helper-replace-supers": "^7.20.7", - "@babel/helper-split-export-declaration": "^7.18.6", + "node_modules/@babel/plugin-transform-classes": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.25.9.tgz", + "integrity": "sha512-mD8APIXmseE7oZvZgGABDyM34GUmK45Um2TXiBUt7PnuAxrgoSVf123qUzPxEr/+/BHrRn5NMZCdE2m/1F8DGg==", + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.25.9", + "@babel/helper-compilation-targets": "^7.25.9", + "@babel/helper-plugin-utils": "^7.25.9", + "@babel/helper-replace-supers": "^7.25.9", + "@babel/traverse": "^7.25.9", "globals": "^11.1.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-transform-computed-properties": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.20.7.tgz", - "integrity": "sha512-Lz7MvBK6DTjElHAmfu6bfANzKcxpyNPeYBGEafyA6E5HtRpjpZwU+u7Qrgz/2OR0z+5TvKYbPdphfSaAcZBrYQ==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/template": "^7.20.7" - }, - "dependencies": { - "@babel/template": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.20.7.tgz", - "integrity": "sha512-8SegXApWe6VoNw0r9JHpSteLKTpTiLZ4rMlGIm9JQ18KiCtyQiAMEazujAHrUS5flrcqYZa75ukev3P6QmUwUw==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.18.6", - "@babel/parser": "^7.20.7", - "@babel/types": "^7.20.7" - } - } + "node_modules/@babel/plugin-transform-classes/node_modules/@babel/helper-annotate-as-pure": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.25.9.tgz", + "integrity": "sha512-gv7320KBUFJz1RnylIg5WWYPRXKZ884AGkYpgpWW02TH66Dl+HaC1t1CKd0z3R4b6hdYEcmrNZHUmfCP+1u3/g==", + "dependencies": { + "@babel/types": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" } }, - "@babel/plugin-transform-destructuring": { - "version": "7.21.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.21.3.tgz", - "integrity": "sha512-bp6hwMFzuiE4HqYEyoGJ/V2LeIWn+hLVKc4pnj++E5XQptwhtcGmSayM029d/j2X1bPKGTlsyPwAubuU22KhMA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.20.2" + "node_modules/@babel/plugin-transform-computed-properties": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.25.9.tgz", + "integrity": "sha512-HnBegGqXZR12xbcTHlJ9HGxw1OniltT26J5YpfruGqtUHlz/xKf/G2ak9e+t0rVqrjXa9WOhvYPz1ERfMj23AA==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.25.9", + "@babel/template": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-transform-dotall-regex": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.18.6.tgz", - "integrity": "sha512-6S3jpun1eEbAxq7TdjLotAsl4WpQI9DxfkycRcKrjhQYzU87qpXdknpBg/e+TdcMehqGnLFi7tnFUBR02Vq6wg==", - "dev": true, - "requires": { - "@babel/helper-create-regexp-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" + "node_modules/@babel/plugin-transform-computed-properties/node_modules/@babel/template": { + "version": "7.27.0", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.27.0.tgz", + "integrity": "sha512-2ncevenBqXI6qRMukPlXwHKHchC7RyMuu4xv5JBXRfOGVcTy1mXCD12qrp7Jsoxll1EV3+9sE4GugBVRjT2jFA==", + "dependencies": { + "@babel/code-frame": "^7.26.2", + "@babel/parser": "^7.27.0", + "@babel/types": "^7.27.0" + }, + "engines": { + "node": ">=6.9.0" } }, - "@babel/plugin-transform-duplicate-keys": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.18.9.tgz", - "integrity": "sha512-d2bmXCtZXYc59/0SanQKbiWINadaJXqtvIQIzd4+hNwkWBgyCd5F/2t1kXoUdvPMrxzPvhK6EMQRROxsue+mfw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.9" + "node_modules/@babel/plugin-transform-destructuring": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.25.9.tgz", + "integrity": "sha512-WkCGb/3ZxXepmMiX101nnGiU+1CAdut8oHyEOHxkKuS1qKpU2SMXE2uSvfz8PBuLd49V6LEsbtyPhWC7fnkgvQ==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-transform-exponentiation-operator": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.18.6.tgz", - "integrity": "sha512-wzEtc0+2c88FVR34aQmiz56dxEkxr2g8DQb/KfaFa1JYXOFVsbhvAonFN6PwVWj++fKmku8NP80plJ5Et4wqHw==", - "dev": true, - "requires": { - "@babel/helper-builder-binary-assignment-operator-visitor": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" + "node_modules/@babel/plugin-transform-dotall-regex": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.25.9.tgz", + "integrity": "sha512-t7ZQ7g5trIgSRYhI9pIJtRl64KHotutUJsh4Eze5l7olJv+mRSg4/MmbZ0tv1eeqRbdvo/+trvJD/Oc5DmW2cA==", + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.25.9", + "@babel/helper-plugin-utils": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-transform-for-of": { - "version": "7.21.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.21.0.tgz", - "integrity": "sha512-LlUYlydgDkKpIY7mcBWvyPPmMcOphEyYA27Ef4xpbh1IiDNLr0kZsos2nf92vz3IccvJI25QUwp86Eo5s6HmBQ==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.20.2" + "node_modules/@babel/plugin-transform-duplicate-keys": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.25.9.tgz", + "integrity": "sha512-LZxhJ6dvBb/f3x8xwWIuyiAHy56nrRG3PeYTpBkkzkYRRQ6tJLu68lEF5VIqMUZiAV7a8+Tb78nEoMCMcqjXBw==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/plugin-transform-function-name": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.18.9.tgz", - "integrity": "sha512-WvIBoRPaJQ5yVHzcnJFor7oS5Ls0PYixlTYE63lCj2RtdQEl15M68FXQlxnG6wdraJIXRdR7KI+hQ7q/9QjrCQ==", - "dev": true, - "requires": { + "node_modules/@babel/plugin-transform-exponentiation-operator": { + "version": "7.26.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.26.3.tgz", + "integrity": "sha512-7CAHcQ58z2chuXPWblnn1K6rLDnDWieghSOEmqQsrBenH0P9InCUtOJYD89pvngljmZlJcz3fcmgYsXFNGa1ZQ==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-for-of": { + "version": "7.26.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.26.9.tgz", + "integrity": "sha512-Hry8AusVm8LW5BVFgiyUReuoGzPUpdHQQqJY5bZnbbf+ngOHWuCuYFKw/BqaaWlvEUrF91HMhDtEaI1hZzNbLg==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.26.5", + "@babel/helper-skip-transparent-expression-wrappers": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-function-name": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.25.9.tgz", + "integrity": "sha512-8lP+Yxjv14Vc5MuWBpJsoUCd3hD6V9DgBon2FVYL4jJgbnVQ9fTgYmonchzZJOVNgzEgbxp4OwAf6xz6M/14XA==", + "dependencies": { + "@babel/helper-compilation-targets": "^7.25.9", + "@babel/helper-plugin-utils": "^7.25.9", + "@babel/traverse": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-literals": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.25.9.tgz", + "integrity": "sha512-9N7+2lFziW8W9pBl2TzaNht3+pgMIRP74zizeCSrtnSKVdUl8mAjjOP2OOVQAfZ881P2cNjDj1uAMEdeD50nuQ==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-member-expression-literals": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.25.9.tgz", + "integrity": "sha512-PYazBVfofCQkkMzh2P6IdIUaCEWni3iYEerAsRWuVd8+jlM1S9S9cz1dF9hIzyoZ8IA3+OwVYIp9v9e+GbgZhA==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-modules-amd": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.25.9.tgz", + "integrity": "sha512-g5T11tnI36jVClQlMlt4qKDLlWnG5pP9CSM4GhdRciTNMRgkfpo5cR6b4rGIOYPgRRuFAvwjPQ/Yk+ql4dyhbw==", + "dependencies": { + "@babel/helper-module-transforms": "^7.25.9", + "@babel/helper-plugin-utils": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-modules-commonjs": { + "version": "7.26.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.26.3.tgz", + "integrity": "sha512-MgR55l4q9KddUDITEzEFYn5ZsGDXMSsU9E+kh7fjRXTIC3RHqfCo8RPRbyReYJh44HQ/yomFkqbOFohXvDCiIQ==", + "dependencies": { + "@babel/helper-module-transforms": "^7.26.0", + "@babel/helper-plugin-utils": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-modules-systemjs": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.25.9.tgz", + "integrity": "sha512-hyss7iIlH/zLHaehT+xwiymtPOpsiwIIRlCAOwBB04ta5Tt+lNItADdlXw3jAWZ96VJ2jlhl/c+PNIQPKNfvcA==", + "dependencies": { + "@babel/helper-module-transforms": "^7.25.9", + "@babel/helper-plugin-utils": "^7.25.9", + "@babel/helper-validator-identifier": "^7.25.9", + "@babel/traverse": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-modules-umd": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.25.9.tgz", + "integrity": "sha512-bS9MVObUgE7ww36HEfwe6g9WakQ0KF07mQF74uuXdkoziUPfKyu/nIm663kz//e5O1nPInPFx36z7WJmJ4yNEw==", + "dependencies": { + "@babel/helper-module-transforms": "^7.25.9", + "@babel/helper-plugin-utils": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-named-capturing-groups-regex": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.25.9.tgz", + "integrity": "sha512-oqB6WHdKTGl3q/ItQhpLSnWWOpjUJLsOCLVyeFgeTktkBSCiurvPOsyt93gibI9CmuKvTUEtWmG5VhZD+5T/KA==", + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.25.9", + "@babel/helper-plugin-utils": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/plugin-transform-new-target": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.25.9.tgz", + "integrity": "sha512-U/3p8X1yCSoKyUj2eOBIx3FOn6pElFOKvAAGf8HTtItuPyB+ZeOqfn+mvTtg9ZlOAjsPdK3ayQEjqHjU/yLeVQ==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-object-super": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.25.9.tgz", + "integrity": "sha512-Kj/Gh+Rw2RNLbCK1VAWj2U48yxxqL2x0k10nPtSdRa0O2xnHXalD0s+o1A6a0W43gJ00ANo38jxkQreckOzv5A==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.25.9", + "@babel/helper-replace-supers": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-optional-chaining": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-optional-chaining/-/plugin-transform-optional-chaining-7.25.9.tgz", + "integrity": "sha512-6AvV0FsLULbpnXeBjrY4dmWF8F7gf8QnvTEoO/wX/5xm/xE1Xo8oPuD3MPS+KS9f9XBEAWN7X1aWr4z9HdOr7A==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.25.9", + "@babel/helper-skip-transparent-expression-wrappers": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-parameters": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.25.9.tgz", + "integrity": "sha512-wzz6MKwpnshBAiRmn4jR8LYz/g8Ksg0o80XmwZDlordjwEk9SxBzTWC7F5ef1jhbrbOW2DJ5J6ayRukrJmnr0g==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-property-literals": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.25.9.tgz", + "integrity": "sha512-IvIUeV5KrS/VPavfSM/Iu+RE6llrHrYIKY1yfCzyO/lMXHQ+p7uGhonmGVisv6tSBSVgWzMBohTcvkC9vQcQFA==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-regenerator": { + "version": "7.27.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.27.0.tgz", + "integrity": "sha512-LX/vCajUJQDqE7Aum/ELUMZAY19+cDpghxrnyt5I1tV6X5PyC86AOoWXWFYFeIvauyeSA6/ktn4tQVn/3ZifsA==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.26.5", + "regenerator-transform": "^0.15.2" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-reserved-words": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.25.9.tgz", + "integrity": "sha512-7DL7DKYjn5Su++4RXu8puKZm2XBPHyjWLUidaPEkCUBbE7IPcsrkRHggAOOKydH1dASWdcUBxrkOGNxUv5P3Jg==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-runtime": { + "version": "7.18.10", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.18.10.tgz", + "integrity": "sha512-q5mMeYAdfEbpBAgzl7tBre/la3LeCxmDO1+wMXRdPWbcoMjR3GiXlCLk7JBZVVye0bqTGNMbt0yYVXX1B1jEWQ==", + "dependencies": { + "@babel/helper-module-imports": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.9", + "babel-plugin-polyfill-corejs2": "^0.3.2", + "babel-plugin-polyfill-corejs3": "^0.5.3", + "babel-plugin-polyfill-regenerator": "^0.4.0", + "semver": "^6.3.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-runtime/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@babel/plugin-transform-shorthand-properties": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.25.9.tgz", + "integrity": "sha512-MUv6t0FhO5qHnS/W8XCbHmiRWOphNufpE1IVxhK5kuN3Td9FT1x4rx4K42s3RYdMXCXpfWkGSbCSd0Z64xA7Ng==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-spread": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.25.9.tgz", + "integrity": "sha512-oNknIB0TbURU5pqJFVbOOFspVlrpVwo2H1+HUIsVDvp5VauGGDP1ZEvO8Nn5xyMEs3dakajOxlmkNW7kNgSm6A==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.25.9", + "@babel/helper-skip-transparent-expression-wrappers": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-sticky-regex": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.25.9.tgz", + "integrity": "sha512-WqBUSgeVwucYDP9U/xNRQam7xV8W5Zf+6Eo7T2SRVUFlhRiMNFdFz58u0KZmCVVqs2i7SHgpRnAhzRNmKfi2uA==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-template-literals": { + "version": "7.26.8", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.26.8.tgz", + "integrity": "sha512-OmGDL5/J0CJPJZTHZbi2XpO0tyT2Ia7fzpW5GURwdtp2X3fMmN8au/ej6peC/T33/+CRiIpA8Krse8hFGVmT5Q==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.26.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-typeof-symbol": { + "version": "7.27.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.27.0.tgz", + "integrity": "sha512-+LLkxA9rKJpNoGsbLnAgOCdESl73vwYn+V6b+5wHbrE7OGKVDPHIQvbFSzqE6rwqaCw2RE+zdJrlLkcf8YOA0w==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.26.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-unicode-escapes": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.25.9.tgz", + "integrity": "sha512-s5EDrE6bW97LtxOcGj1Khcx5AaXwiMmi4toFWRDP9/y0Woo6pXC+iyPu/KuhKtfSrNFd7jJB+/fkOtZy6aIC6Q==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-unicode-regex": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.25.9.tgz", + "integrity": "sha512-yoxstj7Rg9dlNn9UQxzk4fcNivwv4nUYz7fYXBaKxvw/lnmPuOm/ikoELygbYq68Bls3D/D+NBPHiLwZdZZ4HA==", + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.25.9", + "@babel/helper-plugin-utils": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/preset-env": { + "version": "7.18.10", + "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.18.10.tgz", + "integrity": "sha512-wVxs1yjFdW3Z/XkNfXKoblxoHgbtUF7/l3PvvP4m02Qz9TZ6uZGxRVYjSQeR87oQmHco9zWitW5J82DJ7sCjvA==", + "dependencies": { + "@babel/compat-data": "^7.18.8", "@babel/helper-compilation-targets": "^7.18.9", - "@babel/helper-function-name": "^7.18.9", - "@babel/helper-plugin-utils": "^7.18.9" + "@babel/helper-plugin-utils": "^7.18.9", + "@babel/helper-validator-option": "^7.18.6", + "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "^7.18.6", + "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.18.9", + "@babel/plugin-proposal-async-generator-functions": "^7.18.10", + "@babel/plugin-proposal-class-properties": "^7.18.6", + "@babel/plugin-proposal-class-static-block": "^7.18.6", + "@babel/plugin-proposal-dynamic-import": "^7.18.6", + "@babel/plugin-proposal-export-namespace-from": "^7.18.9", + "@babel/plugin-proposal-json-strings": "^7.18.6", + "@babel/plugin-proposal-logical-assignment-operators": "^7.18.9", + "@babel/plugin-proposal-nullish-coalescing-operator": "^7.18.6", + "@babel/plugin-proposal-numeric-separator": "^7.18.6", + "@babel/plugin-proposal-object-rest-spread": "^7.18.9", + "@babel/plugin-proposal-optional-catch-binding": "^7.18.6", + "@babel/plugin-proposal-optional-chaining": "^7.18.9", + "@babel/plugin-proposal-private-methods": "^7.18.6", + "@babel/plugin-proposal-private-property-in-object": "^7.18.6", + "@babel/plugin-proposal-unicode-property-regex": "^7.18.6", + "@babel/plugin-syntax-async-generators": "^7.8.4", + "@babel/plugin-syntax-class-properties": "^7.12.13", + "@babel/plugin-syntax-class-static-block": "^7.14.5", + "@babel/plugin-syntax-dynamic-import": "^7.8.3", + "@babel/plugin-syntax-export-namespace-from": "^7.8.3", + "@babel/plugin-syntax-import-assertions": "^7.18.6", + "@babel/plugin-syntax-json-strings": "^7.8.3", + "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", + "@babel/plugin-syntax-numeric-separator": "^7.10.4", + "@babel/plugin-syntax-object-rest-spread": "^7.8.3", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.3", + "@babel/plugin-syntax-optional-chaining": "^7.8.3", + "@babel/plugin-syntax-private-property-in-object": "^7.14.5", + "@babel/plugin-syntax-top-level-await": "^7.14.5", + "@babel/plugin-transform-arrow-functions": "^7.18.6", + "@babel/plugin-transform-async-to-generator": "^7.18.6", + "@babel/plugin-transform-block-scoped-functions": "^7.18.6", + "@babel/plugin-transform-block-scoping": "^7.18.9", + "@babel/plugin-transform-classes": "^7.18.9", + "@babel/plugin-transform-computed-properties": "^7.18.9", + "@babel/plugin-transform-destructuring": "^7.18.9", + "@babel/plugin-transform-dotall-regex": "^7.18.6", + "@babel/plugin-transform-duplicate-keys": "^7.18.9", + "@babel/plugin-transform-exponentiation-operator": "^7.18.6", + "@babel/plugin-transform-for-of": "^7.18.8", + "@babel/plugin-transform-function-name": "^7.18.9", + "@babel/plugin-transform-literals": "^7.18.9", + "@babel/plugin-transform-member-expression-literals": "^7.18.6", + "@babel/plugin-transform-modules-amd": "^7.18.6", + "@babel/plugin-transform-modules-commonjs": "^7.18.6", + "@babel/plugin-transform-modules-systemjs": "^7.18.9", + "@babel/plugin-transform-modules-umd": "^7.18.6", + "@babel/plugin-transform-named-capturing-groups-regex": "^7.18.6", + "@babel/plugin-transform-new-target": "^7.18.6", + "@babel/plugin-transform-object-super": "^7.18.6", + "@babel/plugin-transform-parameters": "^7.18.8", + "@babel/plugin-transform-property-literals": "^7.18.6", + "@babel/plugin-transform-regenerator": "^7.18.6", + "@babel/plugin-transform-reserved-words": "^7.18.6", + "@babel/plugin-transform-shorthand-properties": "^7.18.6", + "@babel/plugin-transform-spread": "^7.18.9", + "@babel/plugin-transform-sticky-regex": "^7.18.6", + "@babel/plugin-transform-template-literals": "^7.18.9", + "@babel/plugin-transform-typeof-symbol": "^7.18.9", + "@babel/plugin-transform-unicode-escapes": "^7.18.10", + "@babel/plugin-transform-unicode-regex": "^7.18.6", + "@babel/preset-modules": "^0.1.5", + "@babel/types": "^7.18.10", + "babel-plugin-polyfill-corejs2": "^0.3.2", + "babel-plugin-polyfill-corejs3": "^0.5.3", + "babel-plugin-polyfill-regenerator": "^0.4.0", + "core-js-compat": "^3.22.1", + "semver": "^6.3.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/preset-env/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "bin": { + "semver": "bin/semver.js" } }, - "@babel/plugin-transform-literals": { + "node_modules/@babel/preset-modules": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.6.tgz", + "integrity": "sha512-ID2yj6K/4lKfhuU3+EX4UvNbIt7eACFbHmNUjzA+ep+B5971CknnA/9DEWKbRokfbbtblxxxXFJJrH47UEAMVg==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.0.0", + "@babel/plugin-proposal-unicode-property-regex": "^7.4.4", + "@babel/plugin-transform-dotall-regex": "^7.4.4", + "@babel/types": "^7.4.4", + "esutils": "^2.0.2" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0 || ^8.0.0-0 <8.0.0" + } + }, + "node_modules/@babel/runtime": { "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.18.9.tgz", - "integrity": "sha512-IFQDSRoTPnrAIrI5zoZv73IFeZu2dhu6irxQjY9rNjTT53VmKg9fenjvoiOWOkJ6mm4jKVPtdMzBY98Fp4Z4cg==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.9" + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.18.9.tgz", + "integrity": "sha512-lkqXDcvlFT5rvEjiu6+QYO+1GXrEHRo2LOtS7E4GtX5ESIZOgepqsZBVIj6Pv+a6zqsya9VCgiK1KAK4BvJDAw==", + "dependencies": { + "regenerator-runtime": "^0.13.4" + }, + "engines": { + "node": ">=6.9.0" } }, - "@babel/plugin-transform-member-expression-literals": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.18.6.tgz", - "integrity": "sha512-qSF1ihLGO3q+/g48k85tUjD033C29TNTVB2paCwZPVmOsjn9pClvYYrM2VeJpBY2bcNkuny0YUyTNRyRxJ54KA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.6" + "node_modules/@babel/template": { + "version": "7.18.10", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.18.10.tgz", + "integrity": "sha512-TI+rCtooWHr3QJ27kJxfjutghu44DLnasDMwpDqCXVTal9RLp3RSYNh4NdBrRP2cQAoG9A8juOQl6P6oZG4JxA==", + "dependencies": { + "@babel/code-frame": "^7.18.6", + "@babel/parser": "^7.18.10", + "@babel/types": "^7.18.10" + }, + "engines": { + "node": ">=6.9.0" } }, - "@babel/plugin-transform-modules-amd": { - "version": "7.20.11", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.20.11.tgz", - "integrity": "sha512-NuzCt5IIYOW0O30UvqktzHYR2ud5bOWbY0yaxWZ6G+aFzOMJvrs5YHNikrbdaT15+KNO31nPOy5Fim3ku6Zb5g==", - "dev": true, - "requires": { - "@babel/helper-module-transforms": "^7.20.11", - "@babel/helper-plugin-utils": "^7.20.2" + "node_modules/@babel/traverse": { + "version": "7.27.0", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.27.0.tgz", + "integrity": "sha512-19lYZFzYVQkkHkl4Cy4WrAVcqBkgvV2YM2TU3xG6DIwO7O3ecbDPfW3yM3bjAGcqcQHi+CCtjMR3dIEHxsd6bA==", + "dependencies": { + "@babel/code-frame": "^7.26.2", + "@babel/generator": "^7.27.0", + "@babel/parser": "^7.27.0", + "@babel/template": "^7.27.0", + "@babel/types": "^7.27.0", + "debug": "^4.3.1", + "globals": "^11.1.0" + }, + "engines": { + "node": ">=6.9.0" } }, - "@babel/plugin-transform-modules-commonjs": { - "version": "7.21.2", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.21.2.tgz", - "integrity": "sha512-Cln+Yy04Gxua7iPdj6nOV96smLGjpElir5YwzF0LBPKoPlLDNJePNlrGGaybAJkd0zKRnOVXOgizSqPYMNYkzA==", - "dev": true, - "requires": { - "@babel/helper-module-transforms": "^7.21.2", - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/helper-simple-access": "^7.20.2" + "node_modules/@babel/traverse/node_modules/@babel/generator": { + "version": "7.27.0", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.27.0.tgz", + "integrity": "sha512-VybsKvpiN1gU1sdMZIp7FcqphVVKEwcuj02x73uvcHE0PTihx1nlBcowYWhDwjpoAXRv43+gDzyggGnn1XZhVw==", + "dependencies": { + "@babel/parser": "^7.27.0", + "@babel/types": "^7.27.0", + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.25", + "jsesc": "^3.0.2" + }, + "engines": { + "node": ">=6.9.0" } }, - "@babel/plugin-transform-modules-systemjs": { - "version": "7.20.11", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.20.11.tgz", - "integrity": "sha512-vVu5g9BPQKSFEmvt2TA4Da5N+QVS66EX21d8uoOihC+OCpUoGvzVsXeqFdtAEfVa5BILAeFt+U7yVmLbQnAJmw==", - "dev": true, - "requires": { - "@babel/helper-hoist-variables": "^7.18.6", - "@babel/helper-module-transforms": "^7.20.11", - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/helper-validator-identifier": "^7.19.1" + "node_modules/@babel/traverse/node_modules/@babel/template": { + "version": "7.27.0", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.27.0.tgz", + "integrity": "sha512-2ncevenBqXI6qRMukPlXwHKHchC7RyMuu4xv5JBXRfOGVcTy1mXCD12qrp7Jsoxll1EV3+9sE4GugBVRjT2jFA==", + "dependencies": { + "@babel/code-frame": "^7.26.2", + "@babel/parser": "^7.27.0", + "@babel/types": "^7.27.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/traverse/node_modules/@jridgewell/gen-mapping": { + "version": "0.3.8", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.8.tgz", + "integrity": "sha512-imAbBGkb+ebQyxKgzv5Hu2nmROxoDOXHh80evxdoXNOrvAnVx7zimzc1Oo5h9RlfV4vPXaE2iM5pOFbvOCClWA==", + "dependencies": { + "@jridgewell/set-array": "^1.2.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.24" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/traverse/node_modules/jsesc": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-3.1.0.tgz", + "integrity": "sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==", + "bin": { + "jsesc": "bin/jsesc" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@babel/types": { + "version": "7.27.0", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.27.0.tgz", + "integrity": "sha512-H45s8fVLYjbhFH62dIJ3WtmJ6RSPt/3DRO0ZcT2SUiYiQyz3BLVb9ADEnLl91m74aQPS3AzzeajZHYOalWe3bg==", + "dependencies": { + "@babel/helper-string-parser": "^7.25.9", + "@babel/helper-validator-identifier": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@colors/colors": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/@colors/colors/-/colors-1.5.0.tgz", + "integrity": "sha512-ooWCrlZP11i8GImSjTHYHLkvFDP48nS4+204nGb1RiX/WXYHmJA2III9/e2DWVabCESdW7hBAEzHRqUn9OUVvQ==", + "devOptional": true, + "engines": { + "node": ">=0.1.90" + } + }, + "node_modules/@csstools/postcss-cascade-layers": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@csstools/postcss-cascade-layers/-/postcss-cascade-layers-1.1.1.tgz", + "integrity": "sha512-+KdYrpKC5TgomQr2DlZF4lDEpHcoxnj5IGddYYfBWJAKfj1JtuHUIqMa+E1pJJ+z3kvDViWMqyqPlG4Ja7amQA==", + "dependencies": { + "@csstools/selector-specificity": "^2.0.2", + "postcss-selector-parser": "^6.0.10" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.2" + } + }, + "node_modules/@csstools/postcss-cascade-layers/node_modules/@csstools/selector-specificity": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@csstools/selector-specificity/-/selector-specificity-2.2.0.tgz", + "integrity": "sha512-+OJ9konv95ClSTOJCmMZqpd5+YGsB2S+x6w3E1oaM8UuR5j8nTNHYSz8c9BEPGDOCMQYIEEGlVPj/VY64iTbGw==", + "engines": { + "node": "^14 || ^16 || >=18" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss-selector-parser": "^6.0.10" + } + }, + "node_modules/@csstools/postcss-cascade-layers/node_modules/postcss-selector-parser": { + "version": "6.1.2", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.1.2.tgz", + "integrity": "sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg==", + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@csstools/postcss-color-function": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@csstools/postcss-color-function/-/postcss-color-function-1.1.1.tgz", + "integrity": "sha512-Bc0f62WmHdtRDjf5f3e2STwRAl89N2CLb+9iAwzrv4L2hncrbDwnQD9PCq0gtAt7pOI2leIV08HIBUd4jxD8cw==", + "dependencies": { + "@csstools/postcss-progressive-custom-properties": "^1.1.0", + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.2" + } + }, + "node_modules/@csstools/postcss-font-format-keywords": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@csstools/postcss-font-format-keywords/-/postcss-font-format-keywords-1.0.1.tgz", + "integrity": "sha512-ZgrlzuUAjXIOc2JueK0X5sZDjCtgimVp/O5CEqTcs5ShWBa6smhWYbS0x5cVc/+rycTDbjjzoP0KTDnUneZGOg==", + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.2" + } + }, + "node_modules/@csstools/postcss-hwb-function": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@csstools/postcss-hwb-function/-/postcss-hwb-function-1.0.2.tgz", + "integrity": "sha512-YHdEru4o3Rsbjmu6vHy4UKOXZD+Rn2zmkAmLRfPet6+Jz4Ojw8cbWxe1n42VaXQhD3CQUXXTooIy8OkVbUcL+w==", + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.2" + } + }, + "node_modules/@csstools/postcss-ic-unit": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@csstools/postcss-ic-unit/-/postcss-ic-unit-1.0.1.tgz", + "integrity": "sha512-Ot1rcwRAaRHNKC9tAqoqNZhjdYBzKk1POgWfhN4uCOE47ebGcLRqXjKkApVDpjifL6u2/55ekkpnFcp+s/OZUw==", + "dependencies": { + "@csstools/postcss-progressive-custom-properties": "^1.1.0", + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.2" + } + }, + "node_modules/@csstools/postcss-is-pseudo-class": { + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/@csstools/postcss-is-pseudo-class/-/postcss-is-pseudo-class-2.0.7.tgz", + "integrity": "sha512-7JPeVVZHd+jxYdULl87lvjgvWldYu+Bc62s9vD/ED6/QTGjy0jy0US/f6BG53sVMTBJ1lzKZFpYmofBN9eaRiA==", + "dependencies": { + "@csstools/selector-specificity": "^2.0.0", + "postcss-selector-parser": "^6.0.10" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.2" + } + }, + "node_modules/@csstools/postcss-is-pseudo-class/node_modules/@csstools/selector-specificity": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@csstools/selector-specificity/-/selector-specificity-2.2.0.tgz", + "integrity": "sha512-+OJ9konv95ClSTOJCmMZqpd5+YGsB2S+x6w3E1oaM8UuR5j8nTNHYSz8c9BEPGDOCMQYIEEGlVPj/VY64iTbGw==", + "engines": { + "node": "^14 || ^16 || >=18" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss-selector-parser": "^6.0.10" + } + }, + "node_modules/@csstools/postcss-is-pseudo-class/node_modules/postcss-selector-parser": { + "version": "6.1.2", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.1.2.tgz", + "integrity": "sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg==", + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@csstools/postcss-nested-calc": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@csstools/postcss-nested-calc/-/postcss-nested-calc-1.0.0.tgz", + "integrity": "sha512-JCsQsw1wjYwv1bJmgjKSoZNvf7R6+wuHDAbi5f/7MbFhl2d/+v+TvBTU4BJH3G1X1H87dHl0mh6TfYogbT/dJQ==", + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.2" + } + }, + "node_modules/@csstools/postcss-normalize-display-values": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@csstools/postcss-normalize-display-values/-/postcss-normalize-display-values-1.0.1.tgz", + "integrity": "sha512-jcOanIbv55OFKQ3sYeFD/T0Ti7AMXc9nM1hZWu8m/2722gOTxFg7xYu4RDLJLeZmPUVQlGzo4jhzvTUq3x4ZUw==", + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.2" + } + }, + "node_modules/@csstools/postcss-oklab-function": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@csstools/postcss-oklab-function/-/postcss-oklab-function-1.1.1.tgz", + "integrity": "sha512-nJpJgsdA3dA9y5pgyb/UfEzE7W5Ka7u0CX0/HIMVBNWzWemdcTH3XwANECU6anWv/ao4vVNLTMxhiPNZsTK6iA==", + "dependencies": { + "@csstools/postcss-progressive-custom-properties": "^1.1.0", + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.2" + } + }, + "node_modules/@csstools/postcss-progressive-custom-properties": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/@csstools/postcss-progressive-custom-properties/-/postcss-progressive-custom-properties-1.3.0.tgz", + "integrity": "sha512-ASA9W1aIy5ygskZYuWams4BzafD12ULvSypmaLJT2jvQ8G0M3I8PRQhC0h7mG0Z3LI05+agZjqSR9+K9yaQQjA==", + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "peerDependencies": { + "postcss": "^8.3" + } + }, + "node_modules/@csstools/postcss-stepped-value-functions": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@csstools/postcss-stepped-value-functions/-/postcss-stepped-value-functions-1.0.1.tgz", + "integrity": "sha512-dz0LNoo3ijpTOQqEJLY8nyaapl6umbmDcgj4AD0lgVQ572b2eqA1iGZYTTWhrcrHztWDDRAX2DGYyw2VBjvCvQ==", + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.2" + } + }, + "node_modules/@csstools/postcss-text-decoration-shorthand": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@csstools/postcss-text-decoration-shorthand/-/postcss-text-decoration-shorthand-1.0.0.tgz", + "integrity": "sha512-c1XwKJ2eMIWrzQenN0XbcfzckOLLJiczqy+YvfGmzoVXd7pT9FfObiSEfzs84bpE/VqfpEuAZ9tCRbZkZxxbdw==", + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.2" + } + }, + "node_modules/@csstools/postcss-trigonometric-functions": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@csstools/postcss-trigonometric-functions/-/postcss-trigonometric-functions-1.0.2.tgz", + "integrity": "sha512-woKaLO///4bb+zZC2s80l+7cm07M7268MsyG3M0ActXXEFi6SuhvriQYcb58iiKGbjwwIU7n45iRLEHypB47Og==", + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.2" + } + }, + "node_modules/@csstools/postcss-unset-value": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@csstools/postcss-unset-value/-/postcss-unset-value-1.0.2.tgz", + "integrity": "sha512-c8J4roPBILnelAsdLr4XOAR/GsTm0GJi4XpcfvoWk3U6KiTCqiFYc63KhRMQQX35jYMp4Ao8Ij9+IZRgMfJp1g==", + "engines": { + "node": "^12 || ^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.2" + } + }, + "node_modules/@discoveryjs/json-ext": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/@discoveryjs/json-ext/-/json-ext-0.5.7.tgz", + "integrity": "sha512-dBVuXR082gk3jsFp7Rd/JI4kytwGHecnCoTtXFb7DB6CNHp4rg5k1bhg0nWdLGLnOV71lmDzGQaLMy8iPLY0pw==", + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/@esbuild/linux-loong64": { + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.15.5.tgz", + "integrity": "sha512-UHkDFCfSGTuXq08oQltXxSZmH1TXyWsL+4QhZDWvvLl6mEJQqk3u7/wq1LjhrrAXYIllaTtRSzUXl4Olkf2J8A==", + "cpu": [ + "loong64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@gar/promisify": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/@gar/promisify/-/promisify-1.1.3.tgz", + "integrity": "sha512-k2Ty1JcVojjJFwrg/ThKi2ujJ7XNLYaFGNB/bWT9wGR+oSMJHMa5w+CUq6p/pVrKeNNgA7pCqEcjSnHVoqJQFw==" + }, + "node_modules/@istanbuljs/load-nyc-config": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz", + "integrity": "sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==", + "dependencies": { + "camelcase": "^5.3.1", + "find-up": "^4.1.0", + "get-package-type": "^0.1.0", + "js-yaml": "^3.13.1", + "resolve-from": "^5.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@istanbuljs/schema": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz", + "integrity": "sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==", + "engines": { + "node": ">=8" + } + }, + "node_modules/@jridgewell/gen-mapping": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.1.1.tgz", + "integrity": "sha512-sQXCasFk+U8lWYEe66WxRDOE9PjVz4vSM51fTu3Hw+ClTpUSQb718772vH3pyS5pShp6lvQM7SxgIDXXXmOX7w==", + "dependencies": { + "@jridgewell/set-array": "^1.0.0", + "@jridgewell/sourcemap-codec": "^1.4.10" + }, + "engines": { + "node": ">=6.0.0" } }, - "@babel/plugin-transform-modules-umd": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.18.6.tgz", - "integrity": "sha512-dcegErExVeXcRqNtkRU/z8WlBLnvD4MRnHgNs3MytRO1Mn1sHRyhbcpYbVMGclAqOjdW+9cfkdZno9dFdfKLfQ==", - "dev": true, - "requires": { - "@babel/helper-module-transforms": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" + "node_modules/@jridgewell/resolve-uri": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz", + "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==", + "engines": { + "node": ">=6.0.0" } }, - "@babel/plugin-transform-named-capturing-groups-regex": { - "version": "7.20.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.20.5.tgz", - "integrity": "sha512-mOW4tTzi5iTLnw+78iEq3gr8Aoq4WNRGpmSlrogqaiCBoR1HFhpU4JkpQFOHfeYx3ReVIFWOQJS4aZBRvuZ6mA==", - "dev": true, - "requires": { - "@babel/helper-create-regexp-features-plugin": "^7.20.5", - "@babel/helper-plugin-utils": "^7.20.2" + "node_modules/@jridgewell/set-array": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.2.1.tgz", + "integrity": "sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==", + "engines": { + "node": ">=6.0.0" } }, - "@babel/plugin-transform-new-target": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.18.6.tgz", - "integrity": "sha512-DjwFA/9Iu3Z+vrAn+8pBUGcjhxKguSMlsFqeCKbhb9BAV756v0krzVK04CRDi/4aqmk8BsHb4a/gFcaA5joXRw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.6" + "node_modules/@jridgewell/source-map": { + "version": "0.3.6", + "resolved": "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.6.tgz", + "integrity": "sha512-1ZJTZebgqllO79ue2bm3rIGud/bOe0pP5BjSRCRxxYkEZS8STV7zN84UBbiYu7jy+eCKSnVIUgoWWE/tt+shMQ==", + "dependencies": { + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.25" } }, - "@babel/plugin-transform-object-super": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.18.6.tgz", - "integrity": "sha512-uvGz6zk+pZoS1aTZrOvrbj6Pp/kK2mp45t2B+bTDre2UgsZZ8EZLSJtUg7m/no0zOJUWgFONpB7Zv9W2tSaFlA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.6", - "@babel/helper-replace-supers": "^7.18.6" + "node_modules/@jridgewell/source-map/node_modules/@jridgewell/gen-mapping": { + "version": "0.3.8", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.8.tgz", + "integrity": "sha512-imAbBGkb+ebQyxKgzv5Hu2nmROxoDOXHh80evxdoXNOrvAnVx7zimzc1Oo5h9RlfV4vPXaE2iM5pOFbvOCClWA==", + "dependencies": { + "@jridgewell/set-array": "^1.2.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.24" + }, + "engines": { + "node": ">=6.0.0" } }, - "@babel/plugin-transform-parameters": { - "version": "7.21.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.21.3.tgz", - "integrity": "sha512-Wxc+TvppQG9xWFYatvCGPvZ6+SIUxQ2ZdiBP+PHYMIjnPXD+uThCshaz4NZOnODAtBjjcVQQ/3OKs9LW28purQ==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.20.2" - } + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.0.tgz", + "integrity": "sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ==" }, - "@babel/plugin-transform-property-literals": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.18.6.tgz", - "integrity": "sha512-cYcs6qlgafTud3PAzrrRNbQtfpQ8+y/+M5tKmksS9+M1ckbH6kzY8MrexEM9mcA6JDsukE19iIRvAyYl463sMg==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.6" + "node_modules/@jridgewell/trace-mapping": { + "version": "0.3.25", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz", + "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==", + "dependencies": { + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" } }, - "@babel/plugin-transform-regenerator": { - "version": "7.20.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.20.5.tgz", - "integrity": "sha512-kW/oO7HPBtntbsahzQ0qSE3tFvkFwnbozz3NWFhLGqH75vLEg+sCGngLlhVkePlCs3Jv0dBBHDzCHxNiFAQKCQ==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.20.2", - "regenerator-transform": "^0.15.1" + "node_modules/@leichtgewicht/ip-codec": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@leichtgewicht/ip-codec/-/ip-codec-2.0.5.tgz", + "integrity": "sha512-Vo+PSpZG2/fmgmiNzYK9qWRh8h/CHrwD0mo1h1DzL4yzHNSfWYujGTYsWGreD000gcgmZ7K4Ys6Tx9TxtsKdDw==" + }, + "node_modules/@ng-select/ng-select": { + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/@ng-select/ng-select/-/ng-select-9.1.0.tgz", + "integrity": "sha512-vxSRD2d84H39eqtTJaethlpQ+xkJUU8epQNUr3yPiah23z8MBCqSDE1t0chxi+rXJz7+xoC9qFa1aYnUVFan4w==", + "peer": true, + "dependencies": { + "tslib": "^2.3.1" + }, + "engines": { + "node": ">= 12.20.0", + "npm": ">= 6.0.0" + }, + "peerDependencies": { + "@angular/common": "<15.0.0", + "@angular/core": "<15.0.0", + "@angular/forms": "<15.0.0" } }, - "@babel/plugin-transform-reserved-words": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.18.6.tgz", - "integrity": "sha512-oX/4MyMoypzHjFrT1CdivfKZ+XvIPMFXwwxHp/r0Ddy2Vuomt4HDFGmft1TAY2yiTKiNSsh3kjBAzcM8kSdsjA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.6" + "node_modules/@ngageoint/mage.web-core-lib": { + "version": "6.3.0-beta.4", + "resolved": "https://registry.npmjs.org/@ngageoint/mage.web-core-lib/-/mage.web-core-lib-6.3.0-beta.4.tgz", + "integrity": "sha512-8eAFiip7zkhkM2oNEHGDAKd/1hFHZZwMC9di+DX40rNtpqfzypbkIjcqMmFg/3ommkaoacCtc+/SBkcVXrFuEw==", + "dependencies": { + "@rollup/plugin-commonjs": "^25.0.7", + "@rollup/plugin-node-resolve": "^15.2.3", + "rxjs": "^7.0.0", + "tslib": "^2.0.0" + }, + "peerDependencies": { + "@angular-devkit/architect": ">= 0.1400.0, < 0.1500.0", + "@angular-devkit/build-angular": "^14.2.0", + "@angular-devkit/core": "^14.2.0", + "@angular-devkit/schematics": "^14.2.0", + "@angular/animations": "^14.2.12", + "@angular/cdk": "^14.2.7", + "@angular/common": "^14.2.12", + "@angular/core": "^14.2.12", + "@angular/forms": "^14.2.12", + "@angular/material": "^14.2.7", + "@angular/platform-browser": "^14.2.12", + "@ng-select/ng-select": "9.1.0", + "@schematics/angular": "^14.2.0", + "ng-packagr": "^14.2.0", + "rollup": "^2.78.0" + } + }, + "node_modules/@ngtools/webpack": { + "version": "14.2.13", + "resolved": "https://registry.npmjs.org/@ngtools/webpack/-/webpack-14.2.13.tgz", + "integrity": "sha512-RQx/rGX7K/+R55x1R6Ax1JzyeHi8cW11dEXpzHWipyuSpusQLUN53F02eMB4VTakXsL3mFNWWy4bX3/LSq8/9w==", + "engines": { + "node": "^14.15.0 || >=16.10.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" + }, + "peerDependencies": { + "@angular/compiler-cli": "^14.0.0", + "typescript": ">=4.6.2 <4.9", + "webpack": "^5.54.0" + } + }, + "node_modules/@nodelib/fs.scandir": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", + "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", + "dependencies": { + "@nodelib/fs.stat": "2.0.5", + "run-parallel": "^1.1.9" + }, + "engines": { + "node": ">= 8" } }, - "@babel/plugin-transform-shorthand-properties": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.18.6.tgz", - "integrity": "sha512-eCLXXJqv8okzg86ywZJbRn19YJHU4XUa55oz2wbHhaQVn/MM+XhukiT7SYqp/7o00dg52Rj51Ny+Ecw4oyoygw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.6" + "node_modules/@nodelib/fs.stat": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", + "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", + "engines": { + "node": ">= 8" } }, - "@babel/plugin-transform-spread": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.20.7.tgz", - "integrity": "sha512-ewBbHQ+1U/VnH1fxltbJqDeWBU1oNLG8Dj11uIv3xVf7nrQu0bPGe5Rf716r7K5Qz+SqtAOVswoVunoiBtGhxw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/helper-skip-transparent-expression-wrappers": "^7.20.0" + "node_modules/@nodelib/fs.walk": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", + "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", + "dependencies": { + "@nodelib/fs.scandir": "2.1.5", + "fastq": "^1.6.0" + }, + "engines": { + "node": ">= 8" } }, - "@babel/plugin-transform-sticky-regex": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.18.6.tgz", - "integrity": "sha512-kfiDrDQ+PBsQDO85yj1icueWMfGfJFKN1KCkndygtu/C9+XUfydLC8Iv5UYJqRwy4zk8EcplRxEOeLyjq1gm6Q==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.6" + "node_modules/@npmcli/fs": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/@npmcli/fs/-/fs-2.1.2.tgz", + "integrity": "sha512-yOJKRvohFOaLqipNtwYB9WugyZKhC/DZC4VYPmpaCzDBrA8YpK3qHZ8/HGscMnE4GqbkLNuVcCnxkeQEdGt6LQ==", + "dependencies": { + "@gar/promisify": "^1.1.3", + "semver": "^7.3.5" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "@babel/plugin-transform-template-literals": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.18.9.tgz", - "integrity": "sha512-S8cOWfT82gTezpYOiVaGHrCbhlHgKhQt8XH5ES46P2XWmX92yisoZywf5km75wv5sYcXDUCLMmMxOLCtthDgMA==", + "node_modules/@npmcli/git": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@npmcli/git/-/git-3.0.2.tgz", + "integrity": "sha512-CAcd08y3DWBJqJDpfuVL0uijlq5oaXaOJEKHKc4wqrjd00gkvTZB+nFuLn+doOOKddaQS9JfqtNoFCO2LCvA3w==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.9" + "dependencies": { + "@npmcli/promise-spawn": "^3.0.0", + "lru-cache": "^7.4.4", + "mkdirp": "^1.0.4", + "npm-pick-manifest": "^7.0.0", + "proc-log": "^2.0.0", + "promise-inflight": "^1.0.1", + "promise-retry": "^2.0.1", + "semver": "^7.3.5", + "which": "^2.0.2" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "@babel/plugin-transform-typeof-symbol": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.18.9.tgz", - "integrity": "sha512-SRfwTtF11G2aemAZWivL7PD+C9z52v9EvMqH9BuYbabyPuKUvSWks3oCg6041pT925L4zVFqaVBeECwsmlguEw==", + "node_modules/@npmcli/git/node_modules/lru-cache": { + "version": "7.18.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", + "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.18.9" + "engines": { + "node": ">=12" } }, - "@babel/plugin-transform-unicode-regex": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.18.6.tgz", - "integrity": "sha512-gE7A6Lt7YLnNOL3Pb9BNeZvi+d8l7tcRrG4+pwJjK9hD2xX4mEvjlQW60G9EEmfXVYRPv9VRQcyegIVHCql/AA==", + "node_modules/@npmcli/git/node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", "dev": true, - "requires": { - "@babel/helper-create-regexp-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" } }, - "@babel/preset-env": { - "version": "7.9.0", - "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.9.0.tgz", - "integrity": "sha512-712DeRXT6dyKAM/FMbQTV/FvRCms2hPCx+3weRjZ8iQVQWZejWWk1wwG6ViWMyqb/ouBbGOl5b6aCk0+j1NmsQ==", + "node_modules/@npmcli/installed-package-contents": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/@npmcli/installed-package-contents/-/installed-package-contents-1.0.7.tgz", + "integrity": "sha512-9rufe0wnJusCQoLpV9ZPKIVP55itrM5BxOXs10DmdbRfgWtHy1LDyskbwRnBghuB0PrF7pNPOqREVtpz4HqzKw==", "dev": true, - "requires": { - "@babel/compat-data": "^7.9.0", - "@babel/helper-compilation-targets": "^7.8.7", - "@babel/helper-module-imports": "^7.8.3", - "@babel/helper-plugin-utils": "^7.8.3", - "@babel/plugin-proposal-async-generator-functions": "^7.8.3", - "@babel/plugin-proposal-dynamic-import": "^7.8.3", - "@babel/plugin-proposal-json-strings": "^7.8.3", - "@babel/plugin-proposal-nullish-coalescing-operator": "^7.8.3", - "@babel/plugin-proposal-numeric-separator": "^7.8.3", - "@babel/plugin-proposal-object-rest-spread": "^7.9.0", - "@babel/plugin-proposal-optional-catch-binding": "^7.8.3", - "@babel/plugin-proposal-optional-chaining": "^7.9.0", - "@babel/plugin-proposal-unicode-property-regex": "^7.8.3", - "@babel/plugin-syntax-async-generators": "^7.8.0", - "@babel/plugin-syntax-dynamic-import": "^7.8.0", - "@babel/plugin-syntax-json-strings": "^7.8.0", - "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.0", - "@babel/plugin-syntax-numeric-separator": "^7.8.0", - "@babel/plugin-syntax-object-rest-spread": "^7.8.0", - "@babel/plugin-syntax-optional-catch-binding": "^7.8.0", - "@babel/plugin-syntax-optional-chaining": "^7.8.0", - "@babel/plugin-syntax-top-level-await": "^7.8.3", - "@babel/plugin-transform-arrow-functions": "^7.8.3", - "@babel/plugin-transform-async-to-generator": "^7.8.3", - "@babel/plugin-transform-block-scoped-functions": "^7.8.3", - "@babel/plugin-transform-block-scoping": "^7.8.3", - "@babel/plugin-transform-classes": "^7.9.0", - "@babel/plugin-transform-computed-properties": "^7.8.3", - "@babel/plugin-transform-destructuring": "^7.8.3", - "@babel/plugin-transform-dotall-regex": "^7.8.3", - "@babel/plugin-transform-duplicate-keys": "^7.8.3", - "@babel/plugin-transform-exponentiation-operator": "^7.8.3", - "@babel/plugin-transform-for-of": "^7.9.0", - "@babel/plugin-transform-function-name": "^7.8.3", - "@babel/plugin-transform-literals": "^7.8.3", - "@babel/plugin-transform-member-expression-literals": "^7.8.3", - "@babel/plugin-transform-modules-amd": "^7.9.0", - "@babel/plugin-transform-modules-commonjs": "^7.9.0", - "@babel/plugin-transform-modules-systemjs": "^7.9.0", - "@babel/plugin-transform-modules-umd": "^7.9.0", - "@babel/plugin-transform-named-capturing-groups-regex": "^7.8.3", - "@babel/plugin-transform-new-target": "^7.8.3", - "@babel/plugin-transform-object-super": "^7.8.3", - "@babel/plugin-transform-parameters": "^7.8.7", - "@babel/plugin-transform-property-literals": "^7.8.3", - "@babel/plugin-transform-regenerator": "^7.8.7", - "@babel/plugin-transform-reserved-words": "^7.8.3", - "@babel/plugin-transform-shorthand-properties": "^7.8.3", - "@babel/plugin-transform-spread": "^7.8.3", - "@babel/plugin-transform-sticky-regex": "^7.8.3", - "@babel/plugin-transform-template-literals": "^7.8.3", - "@babel/plugin-transform-typeof-symbol": "^7.8.4", - "@babel/plugin-transform-unicode-regex": "^7.8.3", - "@babel/preset-modules": "^0.1.3", - "@babel/types": "^7.9.0", - "browserslist": "^4.9.1", - "core-js-compat": "^3.6.2", - "invariant": "^2.2.2", - "levenary": "^1.1.1", - "semver": "^5.5.0" + "dependencies": { + "npm-bundled": "^1.1.1", + "npm-normalize-package-bin": "^1.0.1" }, + "bin": { + "installed-package-contents": "index.js" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/@npmcli/move-file": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/@npmcli/move-file/-/move-file-2.0.1.tgz", + "integrity": "sha512-mJd2Z5TjYWq/ttPLLGqArdtnC74J6bOzg4rMDnN+p1xTacZ2yPRCk2y0oSWQtygLR9YVQXgOcONrwtnk3JupxQ==", + "deprecated": "This functionality has been moved to @npmcli/fs", "dependencies": { - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "dev": true - } + "mkdirp": "^1.0.4", + "rimraf": "^3.0.2" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "@babel/preset-modules": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.5.tgz", - "integrity": "sha512-A57th6YRG7oR3cq/yt/Y84MvGgE0eJG2F1JLhKuyG+jFxEgrd/HAMJatiFtmOiZurz+0DkrvbheCLaV5f2JfjA==", + "node_modules/@npmcli/node-gyp": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@npmcli/node-gyp/-/node-gyp-2.0.0.tgz", + "integrity": "sha512-doNI35wIe3bBaEgrlPfdJPaCpUR89pJWep4Hq3aRdh6gKazIVWfs0jHttvSSoq47ZXgC7h73kDsUl8AoIQUB+A==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/plugin-proposal-unicode-property-regex": "^7.4.4", - "@babel/plugin-transform-dotall-regex": "^7.4.4", - "@babel/types": "^7.4.4", - "esutils": "^2.0.2" + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "@babel/regjsgen": { - "version": "0.8.0", - "resolved": "https://registry.npmjs.org/@babel/regjsgen/-/regjsgen-0.8.0.tgz", - "integrity": "sha512-x/rqGMdzj+fWZvCOYForTghzbtqPDZ5gPwaoNGHdgDfF2QA/XZbCBp4Moo5scrkAMPhB7z26XM/AaHuIJdgauA==", - "dev": true - }, - "@babel/runtime": { - "version": "7.21.0", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.21.0.tgz", - "integrity": "sha512-xwII0//EObnq89Ji5AKYQaRYiW/nZ3llSv29d49IuxPhKbtJoLP+9QUUZ4nVragQVtaVGeZrpB+ZtG/Pdy/POw==", + "node_modules/@npmcli/promise-spawn": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@npmcli/promise-spawn/-/promise-spawn-3.0.0.tgz", + "integrity": "sha512-s9SgS+p3a9Eohe68cSI3fi+hpcZUmXq5P7w0kMlAsWVtR7XbK3ptkZqKT2cK1zLDObJ3sR+8P59sJE0w/KTL1g==", "dev": true, - "requires": { - "regenerator-runtime": "^0.13.11" - }, "dependencies": { - "regenerator-runtime": { - "version": "0.13.11", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz", - "integrity": "sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==", - "dev": true - } + "infer-owner": "^1.0.4" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "@babel/template": { - "version": "7.8.6", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.8.6.tgz", - "integrity": "sha512-zbMsPMy/v0PWFZEhQJ66bqjhH+z0JgMoBWuikXybgG3Gkd/3t5oQ1Rw2WQhnSrsOmsKXnZOx15tkC4qON/+JPg==", + "node_modules/@npmcli/run-script": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/@npmcli/run-script/-/run-script-4.2.1.tgz", + "integrity": "sha512-7dqywvVudPSrRCW5nTHpHgeWnbBtz8cFkOuKrecm6ih+oO9ciydhWt6OF7HlqupRRmB8Q/gECVdB9LMfToJbRg==", "dev": true, - "requires": { - "@babel/code-frame": "^7.8.3", - "@babel/parser": "^7.8.6", - "@babel/types": "^7.8.6" + "dependencies": { + "@npmcli/node-gyp": "^2.0.0", + "@npmcli/promise-spawn": "^3.0.0", + "node-gyp": "^9.0.0", + "read-package-json-fast": "^2.0.3", + "which": "^2.0.2" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "@babel/traverse": { - "version": "7.21.3", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.21.3.tgz", - "integrity": "sha512-XLyopNeaTancVitYZe2MlUEvgKb6YVVPXzofHgqHijCImG33b/uTurMS488ht/Hbsb2XK3U2BnSTxKVNGV3nGQ==", + "node_modules/@npmcli/run-script/node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", "dev": true, - "requires": { - "@babel/code-frame": "^7.18.6", - "@babel/generator": "^7.21.3", - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-function-name": "^7.21.0", - "@babel/helper-hoist-variables": "^7.18.6", - "@babel/helper-split-export-declaration": "^7.18.6", - "@babel/parser": "^7.21.3", - "@babel/types": "^7.21.3", - "debug": "^4.1.0", - "globals": "^11.1.0" + "dependencies": { + "isexe": "^2.0.0" }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@rollup/plugin-commonjs": { + "version": "25.0.8", + "resolved": "https://registry.npmjs.org/@rollup/plugin-commonjs/-/plugin-commonjs-25.0.8.tgz", + "integrity": "sha512-ZEZWTK5n6Qde0to4vS9Mr5x/0UZoqCxPVR9KRUjU4kA2sO7GEUn1fop0DAwpO6z0Nw/kJON9bDmSxdWxO/TT1A==", "dependencies": { - "@babel/generator": { - "version": "7.21.3", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.21.3.tgz", - "integrity": "sha512-QS3iR1GYC/YGUnW7IdggFeN5c1poPUurnGttOV/bZgPGV+izC/D8HnD6DLwod0fsatNyVn1G3EVWMYIF0nHbeA==", - "dev": true, - "requires": { - "@babel/types": "^7.21.3", - "@jridgewell/gen-mapping": "^0.3.2", - "@jridgewell/trace-mapping": "^0.3.17", - "jsesc": "^2.5.1" - } + "@rollup/pluginutils": "^5.0.1", + "commondir": "^1.0.1", + "estree-walker": "^2.0.2", + "glob": "^8.0.3", + "is-reference": "1.2.1", + "magic-string": "^0.30.3" + }, + "engines": { + "node": ">=14.0.0" + }, + "peerDependencies": { + "rollup": "^2.68.0||^3.0.0||^4.0.0" + }, + "peerDependenciesMeta": { + "rollup": { + "optional": true } } }, - "@babel/types": { - "version": "7.21.3", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.21.3.tgz", - "integrity": "sha512-sBGdETxC+/M4o/zKC0sl6sjWv62WFR/uzxrJ6uYyMLZOUlPnwzw0tKgVHOXxaAd5l2g8pEDM5RZ495GPQI77kg==", - "dev": true, - "requires": { - "@babel/helper-string-parser": "^7.19.4", - "@babel/helper-validator-identifier": "^7.19.1", - "to-fast-properties": "^2.0.0" + "node_modules/@rollup/plugin-commonjs/node_modules/magic-string": { + "version": "0.30.17", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.17.tgz", + "integrity": "sha512-sNPKHvyjVf7gyjwS4xGTaW/mCnF8wnjtifKBEhxfZ7E/S8tQ0rssrwGNn6q8JH/ohItJfSQp9mBtQYuTlH5QnA==", + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.5.0" } }, - "@gar/promisify": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/@gar/promisify/-/promisify-1.1.3.tgz", - "integrity": "sha512-k2Ty1JcVojjJFwrg/ThKi2ujJ7XNLYaFGNB/bWT9wGR+oSMJHMa5w+CUq6p/pVrKeNNgA7pCqEcjSnHVoqJQFw==", - "dev": true - }, - "@istanbuljs/schema": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz", - "integrity": "sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==", - "dev": true - }, - "@jridgewell/gen-mapping": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz", - "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==", - "dev": true, - "requires": { - "@jridgewell/set-array": "^1.0.1", - "@jridgewell/sourcemap-codec": "^1.4.10", - "@jridgewell/trace-mapping": "^0.3.9" + "node_modules/@rollup/plugin-json": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/@rollup/plugin-json/-/plugin-json-4.1.0.tgz", + "integrity": "sha512-yfLbTdNS6amI/2OpmbiBoW12vngr5NW2jCJVZSBEz+H5KfUJZ2M7sDjk0U6GOOdCWFVScShte29o9NezJ53TPw==", + "dependencies": { + "@rollup/pluginutils": "^3.0.8" + }, + "peerDependencies": { + "rollup": "^1.20.0 || ^2.0.0" } }, - "@jridgewell/resolve-uri": { + "node_modules/@rollup/plugin-json/node_modules/@rollup/pluginutils": { "version": "3.1.0", - "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz", - "integrity": "sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==", - "dev": true + "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-3.1.0.tgz", + "integrity": "sha512-GksZ6pr6TpIjHm8h9lSQ8pi8BE9VeubNT0OMJ3B5uZJ8pz73NPiqOtCog/x2/QzM1ENChPKxMDhiQuRHsqc+lg==", + "dependencies": { + "@types/estree": "0.0.39", + "estree-walker": "^1.0.1", + "picomatch": "^2.2.2" + }, + "engines": { + "node": ">= 8.0.0" + }, + "peerDependencies": { + "rollup": "^1.20.0||^2.0.0" + } }, - "@jridgewell/set-array": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz", - "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==", - "dev": true + "node_modules/@rollup/plugin-json/node_modules/@types/estree": { + "version": "0.0.39", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.39.tgz", + "integrity": "sha512-EYNwp3bU+98cpU4lAWYYL7Zz+2gryWH1qbdDTidVd6hkiR6weksdbMadyXKXNPEkQFhXM+hVO9ZygomHXp+AIw==" }, - "@jridgewell/sourcemap-codec": { - "version": "1.4.14", - "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz", - "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==", - "dev": true + "node_modules/@rollup/plugin-json/node_modules/estree-walker": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-1.0.1.tgz", + "integrity": "sha512-1fMXF3YP4pZZVozF8j/ZLfvnR8NSIljt56UhbZ5PeeDmmGHpgpdwQt7ITlGvYaQukCvuBRMLEiKiYC+oeIg4cg==" }, - "@jridgewell/trace-mapping": { - "version": "0.3.17", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.17.tgz", - "integrity": "sha512-MCNzAp77qzKca9+W/+I0+sEpaUnZoeasnghNeVc41VZCEKaCH73Vq3BZZ/SzWIgrqE4H4ceI+p+b6C0mHf9T4g==", - "dev": true, - "requires": { - "@jridgewell/resolve-uri": "3.1.0", - "@jridgewell/sourcemap-codec": "1.4.14" + "node_modules/@rollup/plugin-json/node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" } }, - "@jsdevtools/coverage-istanbul-loader": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@jsdevtools/coverage-istanbul-loader/-/coverage-istanbul-loader-3.0.3.tgz", - "integrity": "sha512-TAdNkeGB5Fe4Og+ZkAr1Kvn9by2sfL44IAHFtxlh1BA1XJ5cLpO9iSNki5opWESv3l3vSHsZ9BNKuqFKbEbFaA==", - "dev": true, - "requires": { - "convert-source-map": "^1.7.0", - "istanbul-lib-instrument": "^4.0.1", - "loader-utils": "^1.4.0", - "merge-source-map": "^1.1.0", - "schema-utils": "^2.6.4" - }, - "dependencies": { - "json5": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz", - "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==", - "dev": true, - "requires": { - "minimist": "^1.2.0" - } - }, - "loader-utils": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.2.tgz", - "integrity": "sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==", - "dev": true, - "requires": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^1.0.1" - } + "node_modules/@rollup/plugin-node-resolve": { + "version": "15.3.1", + "resolved": "https://registry.npmjs.org/@rollup/plugin-node-resolve/-/plugin-node-resolve-15.3.1.tgz", + "integrity": "sha512-tgg6b91pAybXHJQMAAwW9VuWBO6Thi+q7BCNARLwSqlmsHz0XYURtGvh/AuwSADXSI4h/2uHbs7s4FzlZDGSGA==", + "dependencies": { + "@rollup/pluginutils": "^5.0.1", + "@types/resolve": "1.20.2", + "deepmerge": "^4.2.2", + "is-module": "^1.0.0", + "resolve": "^1.22.1" + }, + "engines": { + "node": ">=14.0.0" + }, + "peerDependencies": { + "rollup": "^2.78.0||^3.0.0||^4.0.0" + }, + "peerDependenciesMeta": { + "rollup": { + "optional": true } } }, - "@ng-select/ng-select": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/@ng-select/ng-select/-/ng-select-4.0.4.tgz", - "integrity": "sha512-KaVlVdt7DWZBfmL6nc16i80l1dDx0cO3eGjW+grQPnhZ9KurapioQUYVf6dSmYyWyBXihvt4I3SWkCzqSWFJbQ==", - "requires": { - "tslib": "^1.10.0" - } - }, - "@ngtools/webpack": { - "version": "9.1.15", - "resolved": "https://registry.npmjs.org/@ngtools/webpack/-/webpack-9.1.15.tgz", - "integrity": "sha512-2k2SpBd8ssZ1XnLwM09t34pHck96d3ndyxBfg19IpXXXB/FbvhVXTkypB2ktpoGHy/8oSPeUDjz6O9x+p5iT8A==", - "dev": true, - "requires": { - "@angular-devkit/core": "9.1.15", - "enhanced-resolve": "4.1.1", - "rxjs": "6.5.4", - "webpack-sources": "1.4.3" - }, - "dependencies": { - "rxjs": { - "version": "6.5.4", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.5.4.tgz", - "integrity": "sha512-naMQXcgEo3csAEGvw/NydRA0fuS2nDZJiw1YUWFKU7aPPAPGZEsD4Iimit96qwCieH6y614MCLYwdkrWx7z/7Q==", - "dev": true, - "requires": { - "tslib": "^1.9.0" - } + "node_modules/@rollup/pluginutils": { + "version": "5.1.4", + "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-5.1.4.tgz", + "integrity": "sha512-USm05zrsFxYLPdWWq+K3STlWiT/3ELn3RcV5hJMghpeAIhxfsUIg6mt12CBJBInWMV4VneoV7SfGv8xIwo2qNQ==", + "dependencies": { + "@types/estree": "^1.0.0", + "estree-walker": "^2.0.2", + "picomatch": "^4.0.2" + }, + "engines": { + "node": ">=14.0.0" + }, + "peerDependencies": { + "rollup": "^1.20.0||^2.0.0||^3.0.0||^4.0.0" + }, + "peerDependenciesMeta": { + "rollup": { + "optional": 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" + "node_modules/@schematics/angular": { + "version": "14.2.13", + "resolved": "https://registry.npmjs.org/@schematics/angular/-/angular-14.2.13.tgz", + "integrity": "sha512-MLxTpTU3E8QACQ/5c0sENMR2gRiMXpGaKeD5IHY+3wyU2fUSJVB0QPU/l1WhoyZbX8N9ospBgf5UEG7taVF9rg==", + "dependencies": { + "@angular-devkit/core": "14.2.13", + "@angular-devkit/schematics": "14.2.13", + "jsonc-parser": "3.1.0" + }, + "engines": { + "node": "^14.15.0 || >=16.10.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" } }, - "@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 + "node_modules/@socket.io/component-emitter": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@socket.io/component-emitter/-/component-emitter-3.1.2.tgz", + "integrity": "sha512-9BCxFwvbGg/RsZK9tjXd8s4UcwR0MWeFQ1XEKIQVVvAGJyINdrqKMcTRyLoK8Rse1GjzLV9cwjWV1olXRWEXVA==", + "devOptional": 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==", + "node_modules/@tootallnate/once": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-2.0.0.tgz", + "integrity": "sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A==", "dev": true, - "requires": { - "@nodelib/fs.scandir": "2.1.5", - "fastq": "^1.6.0" + "engines": { + "node": ">= 10" } }, - "@npmcli/fs": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@npmcli/fs/-/fs-1.1.1.tgz", - "integrity": "sha512-8KG5RD0GVP4ydEzRn/I4BNDuxDtqVbOdm8675T49OIG/NGhaK0pjPX7ZcDlvKYbA+ulvVK3ztfcF4uBdOxuJbQ==", - "dev": true, - "requires": { - "@gar/promisify": "^1.0.1", - "semver": "^7.3.5" - }, + "node_modules/@types/body-parser": { + "version": "1.19.5", + "resolved": "https://registry.npmjs.org/@types/body-parser/-/body-parser-1.19.5.tgz", + "integrity": "sha512-fB3Zu92ucau0iQ0JMCFQE7b/dv8Ot07NI3KaZIkIUNXq82k4eBAqUaneXfleGY9JWskeS9y+u0nXMyspcuQrCg==", "dependencies": { - "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" - } - }, - "semver": { - "version": "7.3.8", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", - "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", - "dev": true, - "requires": { - "lru-cache": "^6.0.0" - } - }, - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - } + "@types/connect": "*", + "@types/node": "*" } }, - "@npmcli/move-file": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@npmcli/move-file/-/move-file-1.1.2.tgz", - "integrity": "sha512-1SUf/Cg2GzGDyaf15aR9St9TWlb+XvbZXWpDx8YKs7MLzMH/BCeopv+y9vzrzgkfykCGuWOlSu3mZhj2+FQcrg==", - "dev": true, - "requires": { - "mkdirp": "^1.0.4", - "rimraf": "^3.0.2" - }, + "node_modules/@types/bonjour": { + "version": "3.5.13", + "resolved": "https://registry.npmjs.org/@types/bonjour/-/bonjour-3.5.13.tgz", + "integrity": "sha512-z9fJ5Im06zvUL548KvYNecEVlA7cVDkGUi6kZusb04mpyEFKCIZJvloCcmpmLaIahDpOQGHaHmG6imtPMmPXGQ==", "dependencies": { - "mkdirp": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", - "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", - "dev": true - } + "@types/node": "*" } }, - "@rollup/plugin-commonjs": { - "version": "11.1.0", - "resolved": "https://registry.npmjs.org/@rollup/plugin-commonjs/-/plugin-commonjs-11.1.0.tgz", - "integrity": "sha512-Ycr12N3ZPN96Fw2STurD21jMqzKwL9QuFhms3SD7KKRK7oaXUsBU9Zt0jL/rOPHiPYisI21/rXGO3jr9BnLHUA==", - "dev": true, - "requires": { - "@rollup/pluginutils": "^3.0.8", - "commondir": "^1.0.1", - "estree-walker": "^1.0.1", - "glob": "^7.1.2", - "is-reference": "^1.1.2", - "magic-string": "^0.25.2", - "resolve": "^1.11.0" + "node_modules/@types/connect": { + "version": "3.4.38", + "resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.38.tgz", + "integrity": "sha512-K6uROf1LD88uDQqJCktA4yzL1YYAK6NgfsI0v/mTgyPKWsX1CnJ0XPSDhViejru1GcRkLWb8RlzFYJRqGUbaug==", + "dependencies": { + "@types/node": "*" } }, - "@rollup/plugin-json": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/@rollup/plugin-json/-/plugin-json-4.1.0.tgz", - "integrity": "sha512-yfLbTdNS6amI/2OpmbiBoW12vngr5NW2jCJVZSBEz+H5KfUJZ2M7sDjk0U6GOOdCWFVScShte29o9NezJ53TPw==", - "dev": true, - "requires": { - "@rollup/pluginutils": "^3.0.8" + "node_modules/@types/connect-history-api-fallback": { + "version": "1.5.4", + "resolved": "https://registry.npmjs.org/@types/connect-history-api-fallback/-/connect-history-api-fallback-1.5.4.tgz", + "integrity": "sha512-n6Cr2xS1h4uAulPRdlw6Jl6s1oG8KrVilPN2yUITEs+K48EzMJJ3W1xy8K5eWuFvjp3R74AOIGSmp2UfBJ8HFw==", + "dependencies": { + "@types/express-serve-static-core": "*", + "@types/node": "*" } }, - "@rollup/plugin-node-resolve": { - "version": "7.1.3", - "resolved": "https://registry.npmjs.org/@rollup/plugin-node-resolve/-/plugin-node-resolve-7.1.3.tgz", - "integrity": "sha512-RxtSL3XmdTAE2byxekYLnx+98kEUOrPHF/KRVjLH+DEIHy6kjIw7YINQzn+NXiH/NTrQLAwYs0GWB+csWygA9Q==", - "dev": true, - "requires": { - "@rollup/pluginutils": "^3.0.8", - "@types/resolve": "0.0.8", - "builtin-modules": "^3.1.0", - "is-module": "^1.0.0", - "resolve": "^1.14.2" + "node_modules/@types/cors": { + "version": "2.8.17", + "resolved": "https://registry.npmjs.org/@types/cors/-/cors-2.8.17.tgz", + "integrity": "sha512-8CGDvrBj1zgo2qE+oS3pOCyYNqCPryMWY2bGfwA0dcfopWGgxs+78df0Rs3rc9THP4JkOhLsAa+15VdpAqkcUA==", + "devOptional": true, + "dependencies": { + "@types/node": "*" } }, - "@rollup/pluginutils": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-3.1.0.tgz", - "integrity": "sha512-GksZ6pr6TpIjHm8h9lSQ8pi8BE9VeubNT0OMJ3B5uZJ8pz73NPiqOtCog/x2/QzM1ENChPKxMDhiQuRHsqc+lg==", - "dev": true, - "requires": { - "@types/estree": "0.0.39", - "estree-walker": "^1.0.1", - "picomatch": "^2.2.2" + "node_modules/@types/eslint": { + "version": "9.6.1", + "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-9.6.1.tgz", + "integrity": "sha512-FXx2pKgId/WyYo2jXw63kk7/+TY7u7AziEJxJAnSFzHlqTAS3Ync6SvgYAN/k4/PQpnnVuzoMuVnByKK2qp0ag==", + "dependencies": { + "@types/estree": "*", + "@types/json-schema": "*" } }, - "@schematics/angular": { - "version": "9.1.15", - "resolved": "https://registry.npmjs.org/@schematics/angular/-/angular-9.1.15.tgz", - "integrity": "sha512-ycbwKGurxcV8LRW4xCJtGNEj1h/ALI9RKwkBEirWfZhMeE7391A6aoVGzWrbUxWqqXA2AIQR0W34yXWne+GK3Q==", - "dev": true, - "requires": { - "@angular-devkit/core": "9.1.15", - "@angular-devkit/schematics": "9.1.15" + "node_modules/@types/eslint-scope": { + "version": "3.7.7", + "resolved": "https://registry.npmjs.org/@types/eslint-scope/-/eslint-scope-3.7.7.tgz", + "integrity": "sha512-MzMFlSLBqNF2gcHWO0G1vP/YQyfvrxZ0bF+u7mzUdZ1/xK4A4sru+nraZz5i3iEIk1l1uyicaDVTB4QbbEkAYg==", + "dependencies": { + "@types/eslint": "*", + "@types/estree": "*" } }, - "@schematics/update": { - "version": "0.901.15", - "resolved": "https://registry.npmjs.org/@schematics/update/-/update-0.901.15.tgz", - "integrity": "sha512-JOKhK7HkjPqd6pvIb6qIB9agYRJXT223NsYoVzG9GD2tmvipl6gDfR7GeSfuc7wxNQy8DkxvOfxn0lytz5NKLQ==", - "dev": true, - "requires": { - "@angular-devkit/core": "9.1.15", - "@angular-devkit/schematics": "9.1.15", - "@yarnpkg/lockfile": "1.1.0", - "ini": "1.3.6", - "npm-package-arg": "^8.0.0", - "pacote": "9.5.12", - "rxjs": "6.5.4", - "semver": "7.1.3", - "semver-intersect": "1.4.0" - }, - "dependencies": { - "rxjs": { - "version": "6.5.4", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.5.4.tgz", - "integrity": "sha512-naMQXcgEo3csAEGvw/NydRA0fuS2nDZJiw1YUWFKU7aPPAPGZEsD4Iimit96qwCieH6y614MCLYwdkrWx7z/7Q==", - "dev": true, - "requires": { - "tslib": "^1.9.0" - } - } + "node_modules/@types/estree": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.7.tgz", + "integrity": "sha512-w28IoSUCJpidD/TGviZwwMJckNESJZXFu7NBZ5YJ4mEUnNraUn9Pm8HSZm/jDF1pDWYKspWE7oVphigUPRakIQ==" + }, + "node_modules/@types/express": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/@types/express/-/express-4.17.21.tgz", + "integrity": "sha512-ejlPM315qwLpaQlQDTjPdsUFSc6ZsP4AN6AlWnogPjQ7CVi7PYF3YVz+CY3jE2pwYf7E/7HlDAN0rV2GxTG0HQ==", + "dependencies": { + "@types/body-parser": "*", + "@types/express-serve-static-core": "^4.17.33", + "@types/qs": "*", + "@types/serve-static": "*" } }, - "@sindresorhus/is": { - "version": "0.14.0", - "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-0.14.0.tgz", - "integrity": "sha512-9NET910DNaIPngYnLLPeg+Ogzqsi9uM4mSboU5y6p8S5DzMTVEsJZrawi+BoDNUVBa2DhJqQYUFvMDfgU062LQ==", - "dev": true + "node_modules/@types/express-serve-static-core": { + "version": "5.0.6", + "resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-5.0.6.tgz", + "integrity": "sha512-3xhRnjJPkULekpSzgtoNYYcTWgEZkp4myc+Saevii5JPnHNvHMRlBSHDbs7Bh1iPPoVTERHEZXyhyLbMEsExsA==", + "dependencies": { + "@types/node": "*", + "@types/qs": "*", + "@types/range-parser": "*", + "@types/send": "*" + } }, - "@szmarczak/http-timer": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@szmarczak/http-timer/-/http-timer-1.1.2.tgz", - "integrity": "sha512-XIB2XbzHTN6ieIjfIMV9hlVcfPU26s2vafYWQcZHWXHOxiaRZYEDKEwdl129Zyg50+foYV2jCgtrqSA6qNuNSA==", - "dev": true, - "requires": { - "defer-to-connect": "^1.0.1" + "node_modules/@types/express/node_modules/@types/express-serve-static-core": { + "version": "4.19.6", + "resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.19.6.tgz", + "integrity": "sha512-N4LZ2xG7DatVqhCZzOGb1Yi5lMbXSZcmdLDe9EzSndPV2HpWYWzRbaerl2n27irrm94EPpprqa8KpskPT085+A==", + "dependencies": { + "@types/node": "*", + "@types/qs": "*", + "@types/range-parser": "*", + "@types/send": "*" } }, - "@types/estree": { - "version": "0.0.39", - "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.39.tgz", - "integrity": "sha512-EYNwp3bU+98cpU4lAWYYL7Zz+2gryWH1qbdDTidVd6hkiR6weksdbMadyXKXNPEkQFhXM+hVO9ZygomHXp+AIw==", + "node_modules/@types/geojson": { + "version": "7946.0.7", + "resolved": "https://registry.npmjs.org/@types/geojson/-/geojson-7946.0.7.tgz", + "integrity": "sha512-wE2v81i4C4Ol09RtsWFAqg3BUitWbHSpSlIo+bNdsCJijO9sjme+zm+73ZMCa/qMC8UEERxzGbvmr1cffo2SiQ==", "dev": true }, - "@types/geojson": { - "version": "7946.0.10", - "resolved": "https://registry.npmjs.org/@types/geojson/-/geojson-7946.0.10.tgz", - "integrity": "sha512-Nmh0K3iWQJzniTuPRcJn5hxXkfB1T1pgB89SBig5PlJQU5yocazeu4jATJlaA0GYFKWMqDdvYemoSnF2pXgLVA==", - "dev": true + "node_modules/@types/http-errors": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/@types/http-errors/-/http-errors-2.0.4.tgz", + "integrity": "sha512-D0CFMMtydbJAegzOyHjtiKPLlvnm3iTZyZRSZoLq2mRhDdmLfIWOCYPfQJ4cu2erKghU++QvjcUjp/5h7hESpA==" }, - "@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": "*", + "node_modules/@types/http-proxy": { + "version": "1.17.16", + "resolved": "https://registry.npmjs.org/@types/http-proxy/-/http-proxy-1.17.16.tgz", + "integrity": "sha512-sdWoUajOB1cd0A8cRRQ1cfyWNbmFKLAqBB89Y8x5iYyG/mkJHc0YUH8pdWBy2omi9qtCpiIgGjuwO0dQST2l5w==", + "dependencies": { "@types/node": "*" } }, - "@types/jasmine": { - "version": "3.5.14", - "resolved": "https://registry.npmjs.org/@types/jasmine/-/jasmine-3.5.14.tgz", - "integrity": "sha512-Fkgk536sHPqcOtd+Ow+WiUNuk0TSo/BntKkF8wSvcd6M2FvPjeXcUE6Oz/bwDZiUZEaXLslAgw00Q94Pnx6T4w==", + "node_modules/@types/jasmine": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/@types/jasmine/-/jasmine-3.5.0.tgz", + "integrity": "sha512-kGCRI9oiCxFS6soGKlyzhMzDydfcPix9PpTkr7h11huxOxhWwP37Tg7DYBaQ18eQTNreZEuLkhpbGSqVNZPnnw==", "dev": true }, - "@types/jasminewd2": { - "version": "2.0.10", - "resolved": "https://registry.npmjs.org/@types/jasminewd2/-/jasminewd2-2.0.10.tgz", - "integrity": "sha512-J7mDz7ovjwjc+Y9rR9rY53hFWKATcIkrr9DwQWmOas4/pnIPJTXawnzjwpHm3RSxz/e3ZVUvQ7cRbd5UQLo10g==", - "dev": true, - "requires": { - "@types/jasmine": "*" + "node_modules/@types/json-schema": { + "version": "7.0.15", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.15.tgz", + "integrity": "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==" + }, + "node_modules/@types/mime": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/@types/mime/-/mime-1.3.5.tgz", + "integrity": "sha512-/pyBZWSLD2n0dcHE3hq8s8ZvcETHtEuF+3E7XVt0Ig2nvsVQXdghHVcEkIWjy9A0wKfTn97a/PSDYohKIlnP/w==" + }, + "node_modules/@types/node": { + "version": "12.11.1", + "resolved": "https://registry.npmjs.org/@types/node/-/node-12.11.1.tgz", + "integrity": "sha512-TJtwsqZ39pqcljJpajeoofYRfeZ7/I/OMUQ5pR4q5wOKf2ocrUvBAZUMhWsOvKx3dVc/aaV5GluBivt0sWqA5A==" + }, + "node_modules/@types/node-forge": { + "version": "1.3.11", + "resolved": "https://registry.npmjs.org/@types/node-forge/-/node-forge-1.3.11.tgz", + "integrity": "sha512-FQx220y22OKNTqaByeBGqHWYz4cl94tpcxeFdvBo3wjG6XPBuZ0BNgNZRV5J5TFmmcsJ4IzsLkmGRiQbnYsBEQ==", + "dependencies": { + "@types/node": "*" } }, - "@types/json-schema": { - "version": "7.0.11", - "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.11.tgz", - "integrity": "sha512-wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ==", - "dev": true + "node_modules/@types/parse-json": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.2.tgz", + "integrity": "sha512-dISoDXWWQwUquiKsyZ4Ng+HX2KsPL7LyHKHQwgGFEA3IaKac4Obd+h2a/a6waisAoepJlBcx9paWqjA8/HVjCw==" }, - "@types/minimatch": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-5.1.2.tgz", - "integrity": "sha512-K0VQKziLUWkVKiRVrx4a40iPaxTUefQmjtkQofBkYRcoaaL/8rhwDWww9qWbrgicNOgnpIsMxyNIUM4+n6dUIA==", - "dev": true + "node_modules/@types/qs": { + "version": "6.9.18", + "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.18.tgz", + "integrity": "sha512-kK7dgTYDyGqS+e2Q4aK9X3D7q234CIZ1Bv0q/7Z5IwRDoADNU81xXJK/YVyLbLTZCoIwUoDoffFeF+p/eIklAA==" }, - "@types/node": { - "version": "12.20.55", - "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.55.tgz", - "integrity": "sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==", - "dev": true + "node_modules/@types/range-parser": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/@types/range-parser/-/range-parser-1.2.7.tgz", + "integrity": "sha512-hKormJbkJqzQGhziax5PItDUTMAM9uE2XXQmM37dyd4hVM+5aVl7oVxMVUiVQn2oCQFN/LKCZdvSM0pFRqbSmQ==" }, - "@types/normalize-package-data": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/@types/normalize-package-data/-/normalize-package-data-2.4.1.tgz", - "integrity": "sha512-Gj7cI7z+98M282Tqmp2K5EIsoouUEzbBJhQQzDE3jSIRk6r9gsz0oUokqIUR4u1R3dMHo0pDHM7sNOHyhulypw==", - "dev": true + "node_modules/@types/resolve": { + "version": "1.20.2", + "resolved": "https://registry.npmjs.org/@types/resolve/-/resolve-1.20.2.tgz", + "integrity": "sha512-60BCwRFOZCQhDncwQdxxeOEEkbc5dIMccYLwbxsS4TUNeVECQ/pBJ0j09mrHOl/JJvpRPGwO9SvE4nR2Nb/a4Q==" }, - "@types/q": { - "version": "0.0.32", - "resolved": "https://registry.npmjs.org/@types/q/-/q-0.0.32.tgz", - "integrity": "sha512-qYi3YV9inU/REEfxwVcGZzbS3KG/Xs90lv0Pr+lDtuVjBPGd1A+eciXzVSaRvLify132BfcvhvEjeVahrUl0Ug==", - "dev": true + "node_modules/@types/retry": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/@types/retry/-/retry-0.12.0.tgz", + "integrity": "sha512-wWKOClTTiizcZhXnPY4wikVAwmdYHp8q6DmC+EJUzAMsycb7HB32Kh9RN4+0gExjmPmZSAQjgURXIGATPegAvA==" }, - "@types/resolve": { - "version": "0.0.8", - "resolved": "https://registry.npmjs.org/@types/resolve/-/resolve-0.0.8.tgz", - "integrity": "sha512-auApPaJf3NPfe18hSoJkp8EbZzer2ISk7o8mCC3M9he/a04+gbMF97NkpD2S8riMGvm4BMRI59/SZQSaLTKpsQ==", - "dev": true, - "requires": { + "node_modules/@types/send": { + "version": "0.17.4", + "resolved": "https://registry.npmjs.org/@types/send/-/send-0.17.4.tgz", + "integrity": "sha512-x2EM6TJOybec7c52BX0ZspPodMsQUd5L6PRwOunVyVUhXiBSKf3AezDL8Dgvgt5o0UfKNfuA0eMLr2wLT4AiBA==", + "dependencies": { + "@types/mime": "^1", "@types/node": "*" } }, - "@types/selenium-webdriver": { - "version": "3.0.20", - "resolved": "https://registry.npmjs.org/@types/selenium-webdriver/-/selenium-webdriver-3.0.20.tgz", - "integrity": "sha512-6d8Q5fqS9DWOXEhMDiF6/2FjyHdmP/jSTAUyeQR7QwrFeNmYyzmvGxD5aLIHL445HjWgibs0eAig+KPnbaesXA==", - "dev": true - }, - "@types/source-list-map": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/@types/source-list-map/-/source-list-map-0.1.2.tgz", - "integrity": "sha512-K5K+yml8LTo9bWJI/rECfIPrGgxdpeNbj+d53lwN4QjW1MCwlkhUms+gtdzigTeUyBr09+u8BwOIY3MXvHdcsA==", - "dev": true + "node_modules/@types/serve-index": { + "version": "1.9.4", + "resolved": "https://registry.npmjs.org/@types/serve-index/-/serve-index-1.9.4.tgz", + "integrity": "sha512-qLpGZ/c2fhSs5gnYsQxtDEq3Oy8SXPClIXkW5ghvAvsNuVSA8k+gCONcUCS/UjLEYvYps+e8uBtfgXgvhwfNug==", + "dependencies": { + "@types/express": "*" + } }, - "@types/webpack-sources": { - "version": "0.1.9", - "resolved": "https://registry.npmjs.org/@types/webpack-sources/-/webpack-sources-0.1.9.tgz", - "integrity": "sha512-bvzMnzqoK16PQIC8AYHNdW45eREJQMd6WG/msQWX5V2+vZmODCOPb4TJcbgRljTZZTwTM4wUMcsI8FftNA7new==", - "dev": true, - "requires": { - "@types/node": "*", - "@types/source-list-map": "*", - "source-map": "^0.6.1" - }, + "node_modules/@types/serve-static": { + "version": "1.15.7", + "resolved": "https://registry.npmjs.org/@types/serve-static/-/serve-static-1.15.7.tgz", + "integrity": "sha512-W8Ym+h8nhuRwaKPaDw34QUkwsGi6Rc4yYqvKFo5rm2FUEhCFbzVWrxXUxuKK8TASjWsysJY0nsmNCGhCOIsrOw==", "dependencies": { - "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 - } + "@types/http-errors": "*", + "@types/node": "*", + "@types/send": "*" } }, - "@webassemblyjs/ast": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.8.5.tgz", - "integrity": "sha512-aJMfngIZ65+t71C3y2nBBg5FFG0Okt9m0XEgWZ7Ywgn1oMAT8cNwx00Uv1cQyHtidq0Xn94R4TAywO+LCQ+ZAQ==", - "dev": true, - "requires": { - "@webassemblyjs/helper-module-context": "1.8.5", - "@webassemblyjs/helper-wasm-bytecode": "1.8.5", - "@webassemblyjs/wast-parser": "1.8.5" + "node_modules/@types/sockjs": { + "version": "0.3.36", + "resolved": "https://registry.npmjs.org/@types/sockjs/-/sockjs-0.3.36.tgz", + "integrity": "sha512-MK9V6NzAS1+Ud7JV9lJLFqW85VbC9dq3LmwZCuBe4wBDgKC0Kj/jd8Xl+nSviU+Qc3+m7umHHyHg//2KSa0a0Q==", + "dependencies": { + "@types/node": "*" } }, - "@webassemblyjs/floating-point-hex-parser": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.8.5.tgz", - "integrity": "sha512-9p+79WHru1oqBh9ewP9zW95E3XAo+90oth7S5Re3eQnECGq59ly1Ri5tsIipKGpiStHsUYmY3zMLqtk3gTcOtQ==", - "dev": true + "node_modules/@types/ws": { + "version": "8.18.1", + "resolved": "https://registry.npmjs.org/@types/ws/-/ws-8.18.1.tgz", + "integrity": "sha512-ThVF6DCVhA8kUGy+aazFQ4kXQ7E1Ty7A3ypFOe0IcJV8O/M511G99AW24irKrW56Wt44yG9+ij8FaqoBGkuBXg==", + "dependencies": { + "@types/node": "*" + } }, - "@webassemblyjs/helper-api-error": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.8.5.tgz", - "integrity": "sha512-Za/tnzsvnqdaSPOUXHyKJ2XI7PDX64kWtURyGiJJZKVEdFOsdKUCPTNEVFZq3zJ2R0G5wc2PZ5gvdTRFgm81zA==", - "dev": true + "node_modules/@webassemblyjs/ast": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.11.1.tgz", + "integrity": "sha512-ukBh14qFLjxTQNTXocdyksN5QdM28S1CxHt2rdskFyL+xFV7VremuBLVbmCePj+URalXBENx/9Lm7lnhihtCSw==", + "dependencies": { + "@webassemblyjs/helper-numbers": "1.11.1", + "@webassemblyjs/helper-wasm-bytecode": "1.11.1" + } }, - "@webassemblyjs/helper-buffer": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.8.5.tgz", - "integrity": "sha512-Ri2R8nOS0U6G49Q86goFIPNgjyl6+oE1abW1pS84BuhP1Qcr5JqMwRFT3Ah3ADDDYGEgGs1iyb1DGX+kAi/c/Q==", - "dev": true + "node_modules/@webassemblyjs/floating-point-hex-parser": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.11.1.tgz", + "integrity": "sha512-iGRfyc5Bq+NnNuX8b5hwBrRjzf0ocrJPI6GWFodBFzmFnyvrQ83SHKhmilCU/8Jv67i4GJZBMhEzltxzcNagtQ==" }, - "@webassemblyjs/helper-code-frame": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-code-frame/-/helper-code-frame-1.8.5.tgz", - "integrity": "sha512-VQAadSubZIhNpH46IR3yWO4kZZjMxN1opDrzePLdVKAZ+DFjkGD/rf4v1jap744uPVU6yjL/smZbRIIJTOUnKQ==", - "dev": true, - "requires": { - "@webassemblyjs/wast-printer": "1.8.5" - } + "node_modules/@webassemblyjs/helper-api-error": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.11.1.tgz", + "integrity": "sha512-RlhS8CBCXfRUR/cwo2ho9bkheSXG0+NwooXcc3PAILALf2QLdFyj7KGsKRbVc95hZnhnERon4kW/D3SZpp6Tcg==" }, - "@webassemblyjs/helper-fsm": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-fsm/-/helper-fsm-1.8.5.tgz", - "integrity": "sha512-kRuX/saORcg8se/ft6Q2UbRpZwP4y7YrWsLXPbbmtepKr22i8Z4O3V5QE9DbZK908dh5Xya4Un57SDIKwB9eow==", - "dev": true + "node_modules/@webassemblyjs/helper-buffer": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.11.1.tgz", + "integrity": "sha512-gwikF65aDNeeXa8JxXa2BAk+REjSyhrNC9ZwdT0f8jc4dQQeDQ7G4m0f2QCLPJiMTTO6wfDmRmj/pW0PsUvIcA==" }, - "@webassemblyjs/helper-module-context": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-module-context/-/helper-module-context-1.8.5.tgz", - "integrity": "sha512-/O1B236mN7UNEU4t9X7Pj38i4VoU8CcMHyy3l2cV/kIF4U5KoHXDVqcDuOs1ltkac90IM4vZdHc52t1x8Yfs3g==", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.8.5", - "mamacro": "^0.0.3" + "node_modules/@webassemblyjs/helper-numbers": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.1.tgz", + "integrity": "sha512-vDkbxiB8zfnPdNK9Rajcey5C0w+QJugEglN0of+kmO8l7lDb77AnlKYQF7aarZuCrv+l0UvqL+68gSDr3k9LPQ==", + "dependencies": { + "@webassemblyjs/floating-point-hex-parser": "1.11.1", + "@webassemblyjs/helper-api-error": "1.11.1", + "@xtuc/long": "4.2.2" } }, - "@webassemblyjs/helper-wasm-bytecode": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.8.5.tgz", - "integrity": "sha512-Cu4YMYG3Ddl72CbmpjU/wbP6SACcOPVbHN1dI4VJNJVgFwaKf1ppeFJrwydOG3NDHxVGuCfPlLZNyEdIYlQ6QQ==", - "dev": true + "node_modules/@webassemblyjs/helper-wasm-bytecode": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.1.tgz", + "integrity": "sha512-PvpoOGiJwXeTrSf/qfudJhwlvDQxFgelbMqtq52WWiXC6Xgg1IREdngmPN3bs4RoO83PnL/nFrxucXj1+BX62Q==" }, - "@webassemblyjs/helper-wasm-section": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.8.5.tgz", - "integrity": "sha512-VV083zwR+VTrIWWtgIUpqfvVdK4ff38loRmrdDBgBT8ADXYsEZ5mPQ4Nde90N3UYatHdYoDIFb7oHzMncI02tA==", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.8.5", - "@webassemblyjs/helper-buffer": "1.8.5", - "@webassemblyjs/helper-wasm-bytecode": "1.8.5", - "@webassemblyjs/wasm-gen": "1.8.5" + "node_modules/@webassemblyjs/helper-wasm-section": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.11.1.tgz", + "integrity": "sha512-10P9No29rYX1j7F3EVPX3JvGPQPae+AomuSTPiF9eBQeChHI6iqjMIwR9JmOJXwpnn/oVGDk7I5IlskuMwU/pg==", + "dependencies": { + "@webassemblyjs/ast": "1.11.1", + "@webassemblyjs/helper-buffer": "1.11.1", + "@webassemblyjs/helper-wasm-bytecode": "1.11.1", + "@webassemblyjs/wasm-gen": "1.11.1" } }, - "@webassemblyjs/ieee754": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.8.5.tgz", - "integrity": "sha512-aaCvQYrvKbY/n6wKHb/ylAJr27GglahUO89CcGXMItrOBqRarUMxWLJgxm9PJNuKULwN5n1csT9bYoMeZOGF3g==", - "dev": true, - "requires": { + "node_modules/@webassemblyjs/ieee754": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.11.1.tgz", + "integrity": "sha512-hJ87QIPtAMKbFq6CGTkZYJivEwZDbQUgYd3qKSadTNOhVY7p+gfP6Sr0lLRVTaG1JjFj+r3YchoqRYxNH3M0GQ==", + "dependencies": { "@xtuc/ieee754": "^1.2.0" } }, - "@webassemblyjs/leb128": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.8.5.tgz", - "integrity": "sha512-plYUuUwleLIziknvlP8VpTgO4kqNaH57Y3JnNa6DLpu/sGcP6hbVdfdX5aHAV716pQBKrfuU26BJK29qY37J7A==", - "dev": true, - "requires": { + "node_modules/@webassemblyjs/leb128": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.11.1.tgz", + "integrity": "sha512-BJ2P0hNZ0u+Th1YZXJpzW6miwqQUGcIHT1G/sf72gLVD9DZ5AdYTqPNbHZh6K1M5VmKvFXwGSWZADz+qBWxeRw==", + "dependencies": { "@xtuc/long": "4.2.2" } }, - "@webassemblyjs/utf8": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.8.5.tgz", - "integrity": "sha512-U7zgftmQriw37tfD934UNInokz6yTmn29inT2cAetAsaU9YeVCveWEwhKL1Mg4yS7q//NGdzy79nlXh3bT8Kjw==", - "dev": true + "node_modules/@webassemblyjs/utf8": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.11.1.tgz", + "integrity": "sha512-9kqcxAEdMhiwQkHpkNiorZzqpGrodQQ2IGrHHxCy+Ozng0ofyMA0lTqiLkVs1uzTRejX+/O0EOT7KxqVPuXosQ==" }, - "@webassemblyjs/wasm-edit": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.8.5.tgz", - "integrity": "sha512-A41EMy8MWw5yvqj7MQzkDjU29K7UJq1VrX2vWLzfpRHt3ISftOXqrtojn7nlPsZ9Ijhp5NwuODuycSvfAO/26Q==", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.8.5", - "@webassemblyjs/helper-buffer": "1.8.5", - "@webassemblyjs/helper-wasm-bytecode": "1.8.5", - "@webassemblyjs/helper-wasm-section": "1.8.5", - "@webassemblyjs/wasm-gen": "1.8.5", - "@webassemblyjs/wasm-opt": "1.8.5", - "@webassemblyjs/wasm-parser": "1.8.5", - "@webassemblyjs/wast-printer": "1.8.5" - } - }, - "@webassemblyjs/wasm-gen": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.8.5.tgz", - "integrity": "sha512-BCZBT0LURC0CXDzj5FXSc2FPTsxwp3nWcqXQdOZE4U7h7i8FqtFK5Egia6f9raQLpEKT1VL7zr4r3+QX6zArWg==", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.8.5", - "@webassemblyjs/helper-wasm-bytecode": "1.8.5", - "@webassemblyjs/ieee754": "1.8.5", - "@webassemblyjs/leb128": "1.8.5", - "@webassemblyjs/utf8": "1.8.5" - } - }, - "@webassemblyjs/wasm-opt": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.8.5.tgz", - "integrity": "sha512-HKo2mO/Uh9A6ojzu7cjslGaHaUU14LdLbGEKqTR7PBKwT6LdPtLLh9fPY33rmr5wcOMrsWDbbdCHq4hQUdd37Q==", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.8.5", - "@webassemblyjs/helper-buffer": "1.8.5", - "@webassemblyjs/wasm-gen": "1.8.5", - "@webassemblyjs/wasm-parser": "1.8.5" + "node_modules/@webassemblyjs/wasm-edit": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.11.1.tgz", + "integrity": "sha512-g+RsupUC1aTHfR8CDgnsVRVZFJqdkFHpsHMfJuWQzWU3tvnLC07UqHICfP+4XyL2tnr1amvl1Sdp06TnYCmVkA==", + "dependencies": { + "@webassemblyjs/ast": "1.11.1", + "@webassemblyjs/helper-buffer": "1.11.1", + "@webassemblyjs/helper-wasm-bytecode": "1.11.1", + "@webassemblyjs/helper-wasm-section": "1.11.1", + "@webassemblyjs/wasm-gen": "1.11.1", + "@webassemblyjs/wasm-opt": "1.11.1", + "@webassemblyjs/wasm-parser": "1.11.1", + "@webassemblyjs/wast-printer": "1.11.1" } }, - "@webassemblyjs/wasm-parser": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.8.5.tgz", - "integrity": "sha512-pi0SYE9T6tfcMkthwcgCpL0cM9nRYr6/6fjgDtL6q/ZqKHdMWvxitRi5JcZ7RI4SNJJYnYNaWy5UUrHQy998lw==", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.8.5", - "@webassemblyjs/helper-api-error": "1.8.5", - "@webassemblyjs/helper-wasm-bytecode": "1.8.5", - "@webassemblyjs/ieee754": "1.8.5", - "@webassemblyjs/leb128": "1.8.5", - "@webassemblyjs/utf8": "1.8.5" - } - }, - "@webassemblyjs/wast-parser": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-parser/-/wast-parser-1.8.5.tgz", - "integrity": "sha512-daXC1FyKWHF1i11obK086QRlsMsY4+tIOKgBqI1lxAnkp9xe9YMcgOxm9kLe+ttjs5aWV2KKE1TWJCN57/Btsg==", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.8.5", - "@webassemblyjs/floating-point-hex-parser": "1.8.5", - "@webassemblyjs/helper-api-error": "1.8.5", - "@webassemblyjs/helper-code-frame": "1.8.5", - "@webassemblyjs/helper-fsm": "1.8.5", - "@xtuc/long": "4.2.2" + "node_modules/@webassemblyjs/wasm-gen": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.11.1.tgz", + "integrity": "sha512-F7QqKXwwNlMmsulj6+O7r4mmtAlCWfO/0HdgOxSklZfQcDu0TpLiD1mRt/zF25Bk59FIjEuGAIyn5ei4yMfLhA==", + "dependencies": { + "@webassemblyjs/ast": "1.11.1", + "@webassemblyjs/helper-wasm-bytecode": "1.11.1", + "@webassemblyjs/ieee754": "1.11.1", + "@webassemblyjs/leb128": "1.11.1", + "@webassemblyjs/utf8": "1.11.1" } }, - "@webassemblyjs/wast-printer": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.8.5.tgz", - "integrity": "sha512-w0U0pD4EhlnvRyeJzBqaVSJAo9w/ce7/WPogeXLzGkO6hzhr4GnQIZ4W4uUt5b9ooAaXPtnXlj0gzsXEOUNYMg==", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.8.5", - "@webassemblyjs/wast-parser": "1.8.5", + "node_modules/@webassemblyjs/wasm-opt": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.11.1.tgz", + "integrity": "sha512-VqnkNqnZlU5EB64pp1l7hdm3hmQw7Vgqa0KF/KCNO9sIpI6Fk6brDEiX+iCOYrvMuBWDws0NkTOxYEb85XQHHw==", + "dependencies": { + "@webassemblyjs/ast": "1.11.1", + "@webassemblyjs/helper-buffer": "1.11.1", + "@webassemblyjs/wasm-gen": "1.11.1", + "@webassemblyjs/wasm-parser": "1.11.1" + } + }, + "node_modules/@webassemblyjs/wasm-parser": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.11.1.tgz", + "integrity": "sha512-rrBujw+dJu32gYB7/Lup6UhdkPx9S9SnobZzRVL7VcBH9Bt9bCBLEuX/YXOOtBsOZ4NQrRykKhffRWHvigQvOA==", + "dependencies": { + "@webassemblyjs/ast": "1.11.1", + "@webassemblyjs/helper-api-error": "1.11.1", + "@webassemblyjs/helper-wasm-bytecode": "1.11.1", + "@webassemblyjs/ieee754": "1.11.1", + "@webassemblyjs/leb128": "1.11.1", + "@webassemblyjs/utf8": "1.11.1" + } + }, + "node_modules/@webassemblyjs/wast-printer": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.11.1.tgz", + "integrity": "sha512-IQboUWM4eKzWW+N/jij2sRatKMh99QEelo3Eb2q0qXkvPRISAj8Qxtmw5itwqK+TTkBuUIE45AxYPToqPtL5gg==", + "dependencies": { + "@webassemblyjs/ast": "1.11.1", "@xtuc/long": "4.2.2" } }, - "@xtuc/ieee754": { + "node_modules/@xtuc/ieee754": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz", - "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==", - "dev": true + "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==" }, - "@xtuc/long": { + "node_modules/@xtuc/long": { "version": "4.2.2", "resolved": "https://registry.npmjs.org/@xtuc/long/-/long-4.2.2.tgz", - "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==", - "dev": true + "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==" }, - "@yarnpkg/lockfile": { + "node_modules/@yarnpkg/lockfile": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/@yarnpkg/lockfile/-/lockfile-1.1.0.tgz", "integrity": "sha512-GpSwvyXOcOOlV70vbnzjj4fW5xW/FdUF6nQEt1ENy7m4ZCczi1+/buVUPAqmGfqznsORNFzUMjctTIp8a9tuCQ==", "dev": true }, - "JSONStream": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/JSONStream/-/JSONStream-1.3.5.tgz", - "integrity": "sha512-E+iruNOY8VV9s4JEbe1aNEm6MiszPRr/UfcHMz0TQh1BXSxHK+ASV1R6W4HpjBhSeS+54PIsAMCBmwD06LLsqQ==", - "dev": true, - "requires": { - "jsonparse": "^1.2.0", - "through": ">=2.2.7 <3" - } + "node_modules/abab": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/abab/-/abab-2.0.6.tgz", + "integrity": "sha512-j2afSsaIENvHZN2B8GOpF566vZ5WVk5opAiMTvWgaQT8DkbOqsTfvNAvHoRGU2zzP8cPoqys+xHTRDWW8L+/BA==", + "deprecated": "Use your platform's native atob() and btoa() methods instead" + }, + "node_modules/abbrev": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", + "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==", + "dev": true }, - "accepts": { + "node_modules/accepts": { "version": "1.3.8", "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz", "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==", - "dev": true, - "requires": { + "dependencies": { "mime-types": "~2.1.34", "negotiator": "0.6.3" + }, + "engines": { + "node": ">= 0.6" } }, - "acorn": { - "version": "6.4.2", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.4.2.tgz", - "integrity": "sha512-XtGIhXwF8YM8bJhGxG5kXgjkEuNGLTkoYqVE+KMR+aspr4KGYmKYg7yUe3KghyQ9yheNwLnjmzh/7+gfDBmHCQ==", - "dev": true + "node_modules/accepts/node_modules/negotiator": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", + "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==", + "engines": { + "node": ">= 0.6" + } }, - "adm-zip": { - "version": "0.5.10", - "resolved": "https://registry.npmjs.org/adm-zip/-/adm-zip-0.5.10.tgz", - "integrity": "sha512-x0HvcHqVJNTPk/Bw8JbLWlWoo6Wwnsug0fnYYro1HBrjxZ3G7/AZk7Ahv8JwDe1uIcz8eBqvu86FuF1POiG7vQ==", - "dev": true + "node_modules/acorn": { + "version": "8.14.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.14.1.tgz", + "integrity": "sha512-OvQ/2pUDKmgfCg++xsTX1wGxfTaszcHVcTctW4UJB4hibJx2HXxxO5UmVgyjMa+ZDsiaf5wWLXYpRWMmBI0QHg==", + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } }, - "after": { - "version": "0.8.2", - "resolved": "https://registry.npmjs.org/after/-/after-0.8.2.tgz", - "integrity": "sha512-QbJ0NTQ/I9DI3uSJA4cbexiwQeRAfjPScqIbSjUDd9TOrcg6pTkdgziesOqxBMBzit8vFCTwrP27t13vFOORRA==", - "dev": true + "node_modules/acorn-import-assertions": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/acorn-import-assertions/-/acorn-import-assertions-1.9.0.tgz", + "integrity": "sha512-cmMwop9x+8KFhxvKrKfPYmN6/pKTYYHBqLa0DfvVZcKMJWNyWLnaqND7dx/qn66R7ewM1UX5XMaDVP5wlVTaVA==", + "deprecated": "package has been renamed to acorn-import-attributes", + "peerDependencies": { + "acorn": "^8" + } }, - "agent-base": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-4.3.0.tgz", - "integrity": "sha512-salcGninV0nPrwpGNn4VTXBb1SOuXQBiqbrNXoeizJsHrsL6ERFM2Ne3JUSBWRE6aeNJI2ROP/WEEIDUiDe3cg==", - "dev": true, - "requires": { - "es6-promisify": "^5.0.0" + "node_modules/adjust-sourcemap-loader": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/adjust-sourcemap-loader/-/adjust-sourcemap-loader-4.0.0.tgz", + "integrity": "sha512-OXwN5b9pCUXNQHJpwwD2qP40byEmSgzj8B4ydSN0uMNYWiFmJ6x6KwUllMmfk8Rwu/HJDFR7U8ubsWBoN0Xp0A==", + "dependencies": { + "loader-utils": "^2.0.0", + "regex-parser": "^2.2.11" + }, + "engines": { + "node": ">=8.9" } }, - "agentkeepalive": { - "version": "3.5.2", - "resolved": "https://registry.npmjs.org/agentkeepalive/-/agentkeepalive-3.5.2.tgz", - "integrity": "sha512-e0L/HNe6qkQ7H19kTlRRqUibEAwDK5AFk6y3PtMsuut2VAH6+Q4xZml1tNDJD7kSAyqmbG/K08K5WEJYtUrSlQ==", + "node_modules/adjust-sourcemap-loader/node_modules/loader-utils": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.4.tgz", + "integrity": "sha512-xXqpXoINfFhgua9xiqD8fPFHgkoq1mmmpE92WlDbm9rNRd/EbRb+Gqf908T2DMfuHjjJlksiK2RbHVOdD/MqSw==", + "dependencies": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^2.1.2" + }, + "engines": { + "node": ">=8.9.0" + } + }, + "node_modules/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==", + "dependencies": { + "debug": "4" + }, + "engines": { + "node": ">= 6.0.0" + } + }, + "node_modules/agentkeepalive": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/agentkeepalive/-/agentkeepalive-4.6.0.tgz", + "integrity": "sha512-kja8j7PjmncONqaTsB8fQ+wE2mSU2DJ9D4XKoJ5PFWIdRMa6SLSN1ff4mOr4jCbfRSsxR4keIiySJU0N9T5hIQ==", "dev": true, - "requires": { + "dependencies": { "humanize-ms": "^1.2.1" + }, + "engines": { + "node": ">= 8.0.0" } }, - "aggregate-error": { + "node_modules/aggregate-error": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", - "dev": true, - "requires": { + "dependencies": { "clean-stack": "^2.0.0", "indent-string": "^4.0.0" + }, + "engines": { + "node": ">=8" } }, - "ajv": { - "version": "6.12.3", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.3.tgz", - "integrity": "sha512-4K0cK3L1hsqk9xIb2z9vs/XU+PGJZ9PNpJRDS9YLzmNdX6jmVPfamLvTJr0aDAusnHyCHO6MjzlkAsgtqp9teA==", - "dev": true, - "requires": { + "node_modules/ajv": { + "version": "8.11.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.11.0.tgz", + "integrity": "sha512-wGgprdCvMalC0BztXvitD2hC04YffAvtsUn93JbGXYLAtCUO4xd17mCCZQxUOItiBwZvJScWo8NIvQMQ71rdpg==", + "dependencies": { "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2", "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" } }, - "ajv-errors": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/ajv-errors/-/ajv-errors-1.0.1.tgz", - "integrity": "sha512-DCRfO/4nQ+89p/RK43i8Ezd41EqdGIU4ld7nGF8OQ14oc/we5rEntLCUa7+jrn3nn83BosfwZA0wb4pon2o8iQ==", - "dev": true - }, - "ajv-keywords": { - "version": "3.5.2", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", - "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", - "dev": true - }, - "alphanum-sort": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/alphanum-sort/-/alphanum-sort-1.0.2.tgz", - "integrity": "sha512-0FcBfdcmaumGPQ0qPn7Q5qTgz/ooXgIyp1rf8ik5bGX8mpE2YHjC0P/eyQvxu1GURYQgq9ozf2mteQ5ZD9YiyQ==", - "dev": true + "node_modules/ajv-formats": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ajv-formats/-/ajv-formats-2.1.1.tgz", + "integrity": "sha512-Wx0Kx52hxE7C18hkMEggYlEifqWZtYaRgouJor+WMdPnQyEK13vgEWyVNup7SoeeoLMsr4kf5h6dOW11I15MUA==", + "dependencies": { + "ajv": "^8.0.0" + }, + "peerDependencies": { + "ajv": "^8.0.0" + }, + "peerDependenciesMeta": { + "ajv": { + "optional": true + } + } }, - "ansi-align": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/ansi-align/-/ansi-align-3.0.1.tgz", - "integrity": "sha512-IOfwwBF5iczOjp/WeY4YxyjqAFMQoZufdQWDd19SEExbVLNXqvpzSJ/M7Za4/sCPmQ0+GRquoA7bGcINcxew6w==", - "dev": true, - "requires": { - "string-width": "^4.1.0" + "node_modules/ajv-keywords": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz", + "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", + "dependencies": { + "fast-deep-equal": "^3.1.3" + }, + "peerDependencies": { + "ajv": "^8.8.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 + "node_modules/ansi-colors": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.3.tgz", + "integrity": "sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==", + "engines": { + "node": ">=6" + } }, - "ansi-escapes": { + "node_modules/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==", - "dev": true, - "requires": { + "dependencies": { "type-fest": "^0.21.3" - } - }, - "ansi-html": { - "version": "0.0.7", - "resolved": "https://registry.npmjs.org/ansi-html/-/ansi-html-0.0.7.tgz", - "integrity": "sha512-JoAxEa1DfP9m2xfB/y2r/aKcwXNlltr4+0QSBC4TrLfcxyvepX2Pv0t/xpgGV5bGsDzCYV8SzjWgyCW0T9yYbA==", - "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": "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" - } - }, - "anymatch": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", - "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", - "dev": true, - "requires": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" - } - }, - "app-root-path": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/app-root-path/-/app-root-path-2.2.1.tgz", - "integrity": "sha512-91IFKeKk7FjfmezPKkwtaRvSpnUc4gDwPAjA1YZ9Gn0q0PPeW+vbeUsZuyDwjI7+QTHhcLen2v25fi/AmhvbJA==", - "dev": true - }, - "append-transform": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/append-transform/-/append-transform-1.0.0.tgz", - "integrity": "sha512-P009oYkeHyU742iSZJzZZywj4QRJdnTWffaKuJQLablCZ1uz6/cW4yaRgcDaoQ+uwOxxnt0gRUcwfsNP2ri0gw==", - "dev": true, - "requires": { - "default-require-extensions": "^2.0.0" - } - }, - "aproba": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", - "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==", - "dev": true - }, - "arg": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/arg/-/arg-4.1.3.tgz", - "integrity": "sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==", - "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" }, - "dependencies": { - "sprintf-js": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", - "dev": true - } - } - }, - "aria-query": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/aria-query/-/aria-query-3.0.0.tgz", - "integrity": "sha512-majUxHgLehQTeSA+hClx+DY09OVUqG3GtezWkF1krgLGNdlDu9l9V8DaqNMWbq4Eddc8wsyDA0hpDUtnYxQEXw==", - "dev": true, - "requires": { - "ast-types-flow": "0.0.7", - "commander": "^2.11.0" + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "arr-diff": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz", - "integrity": "sha512-YVIQ82gZPGBebQV/a8dar4AitzCQs0jjXwMPZllpXMaGjXPYVUawSxQrRsjhjupyVxEvbHgUmIhKVlND+j02kA==", - "dev": true - }, - "arr-flatten": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz", - "integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==", - "dev": true - }, - "arr-union": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz", - "integrity": "sha512-sKpyeERZ02v1FeCZT8lrfJq5u6goHCtpTAzPwJYe7c8SPFOboNjNg1vz2L4VTn9T4PQxEx13TbXLmYUcS6Ug7Q==", - "dev": true - }, - "array-buffer-byte-length": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.0.tgz", - "integrity": "sha512-LPuwb2P+NrQw3XhxGc36+XSvuBPopovXYTR9Ew++Du9Yb/bx5AzBfrIsBoj0EZUifjQU+sHL21sseZ3jerWO/A==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "is-array-buffer": "^3.0.1" + "node_modules/ansi-html-community": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/ansi-html-community/-/ansi-html-community-0.0.8.tgz", + "integrity": "sha512-1APHAyr3+PCamwNw3bXCPp4HFLONZt/yIH0sZp0/469KWNTEy+qN5jQ3GVX6DMZ1UXAi34yVwtTeaG/HpBuuzw==", + "engines": [ + "node >= 0.8.0" + ], + "bin": { + "ansi-html": "bin/ansi-html" } }, - "array-flatten": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-2.1.2.tgz", - "integrity": "sha512-hNfzcOV8W4NdualtqBFPyVO+54DSJuZGY9qT4pRroB6S9e3iiido2ISIC5h9R2sPJ8H3FHCIiEnsv1lPXO3KtQ==", - "dev": true - }, - "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 - }, - "array-uniq": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz", - "integrity": "sha512-MNha4BWQ6JbwhFhj03YK552f7cb3AzoE8SzeljgChvL1dl3IcvggXVz1DilzySZkCja+CXuZbdW7yATchWn8/Q==", - "dev": true - }, - "array-unique": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz", - "integrity": "sha512-SleRWjh9JUud2wH1hPs9rZBZ33H6T9HOiL0uwGnGx9FpE6wKGyfWugmbkEOIs6qWrZhg0LWeLziLrEwQJhs5mQ==", - "dev": true - }, - "array.prototype.reduce": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/array.prototype.reduce/-/array.prototype.reduce-1.0.5.tgz", - "integrity": "sha512-kDdugMl7id9COE8R7MHF5jWk7Dqt/fs4Pv+JXoICnYwqpjjjbUurz6w5fT5IG6brLdJhv6/VoHB0H7oyIBXd+Q==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4", - "es-array-method-boxes-properly": "^1.0.0", - "is-string": "^1.0.7" - } - }, - "arraybuffer.slice": { - "version": "0.0.7", - "resolved": "https://registry.npmjs.org/arraybuffer.slice/-/arraybuffer.slice-0.0.7.tgz", - "integrity": "sha512-wGUIVQXuehL5TCqQun8OW81jGzAWycqzFF8lFp+GOM5BXLYj3bKNsYC4daB7n6XjCqxQA/qgTJ+8ANR3acjrog==", - "dev": true - }, - "arrify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", - "integrity": "sha512-3CYzex9M9FGQjCGMGyi6/31c8GJbgb0qGyrx5HWxPd0aCwh4cB2YjMb2Xf9UuoogrMrlO9cTqnB5rI5GHZTcUA==", - "dev": true - }, - "asap": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz", - "integrity": "sha512-BSHWgDSAiKs50o2Re8ppvp3seVHXSRM44cdSsT9FfNEUUZLOGWVCsiWaRPWM1Znn+mqZ1OfVZ3z3DWEzSp7hRA==", - "dev": true - }, - "asn1": { - "version": "0.2.6", - "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.6.tgz", - "integrity": "sha512-ix/FxPn0MDjeyJ7i/yoHGFt/EX6LyNbxSEhPPXODPL+KB0VPk86UYfL0lMdy+KCnv+fmvIzySwaK5COwqVbWTQ==", - "dev": true, - "requires": { - "safer-buffer": "~2.1.0" + "node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "engines": { + "node": ">=8" } }, - "asn1.js": { - "version": "5.4.1", - "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-5.4.1.tgz", - "integrity": "sha512-+I//4cYPccV8LdmBLiX8CYvf9Sp3vQsrqu2QNXRcrbiWvcx/UdlFiqUJJzxRQxgsZmvhXhn4cSKeSmoFjVdupA==", - "dev": true, - "requires": { - "bn.js": "^4.0.0", - "inherits": "^2.0.1", - "minimalistic-assert": "^1.0.0", - "safer-buffer": "^2.1.0" - }, + "node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", "dependencies": { - "bn.js": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", - "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", - "dev": true - } + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "assert": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/assert/-/assert-1.5.0.tgz", - "integrity": "sha512-EDsgawzwoun2CZkCgtxJbv392v4nbk9XDD06zI+kQYoBM/3RBWLlEyJARDOmhAAosBjWACEkKL6S+lIZtcAubA==", - "dev": true, - "requires": { - "object-assign": "^4.1.1", - "util": "0.10.3" - }, + "node_modules/anymatch": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", + "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", "dependencies": { - "inherits": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz", - "integrity": "sha512-8nWq2nLTAwd02jTqJExUYFSD/fKq6VH9Y/oG2accc/kdI0V98Bag8d5a4gi3XHz73rDWa2PvTtvcWYquKqSENA==", - "dev": true - }, - "util": { - "version": "0.10.3", - "resolved": "https://registry.npmjs.org/util/-/util-0.10.3.tgz", - "integrity": "sha512-5KiHfsmkqacuKjkRkdV7SsfDJ2EGiPsK92s2MhNSY0craxjTdKTtqKsJaCWp4LW33ZZ0OPUv1WO/TFvNQRiQxQ==", - "dev": true, - "requires": { - "inherits": "2.0.1" - } - } + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + }, + "engines": { + "node": ">= 8" } }, - "assert-plus": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", - "integrity": "sha512-NfJ4UzBCcQGLDlQq7nHxH+tv3kyZ0hHQqF5BO6J7tNJeP5do1llPr8dZ8zHonfhAu0PHAdMkSo+8o0wxg9lZWw==", - "dev": true - }, - "assign-symbols": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/assign-symbols/-/assign-symbols-1.0.0.tgz", - "integrity": "sha512-Q+JC7Whu8HhmTdBph/Tq59IoRtoy6KAm5zzPv00WdujX82lbAL8K7WVjne7vdCsAmbF4AYaDOPyO3k0kl8qIrw==", - "dev": true + "node_modules/anymatch/node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } }, - "ast-types-flow": { - "version": "0.0.7", - "resolved": "https://registry.npmjs.org/ast-types-flow/-/ast-types-flow-0.0.7.tgz", - "integrity": "sha512-eBvWn1lvIApYMhzQMsu9ciLfkBY499mFZlNqG+/9WR7PVlroQw0vG30cOQQbaKz3sCEc44TAOu2ykzqXSNnwag==", + "node_modules/aproba": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/aproba/-/aproba-2.0.0.tgz", + "integrity": "sha512-lYe4Gx7QT+MKGbDsA+Z+he/Wtef0BiwDOlK/XkBrdfsh9J/jPPXbX0tE9x9cl27Tmu5gg3QUbUrQYa/y+KOHPQ==", "dev": true }, - "async": { - "version": "2.6.4", - "resolved": "https://registry.npmjs.org/async/-/async-2.6.4.tgz", - "integrity": "sha512-mzo5dfJYwAn29PeiJ0zvwTo04zj8HDJj0Mn8TD7sno7q12prdbnasKJHhkm2c1LgrhlJ0teaea8860oxi51mGA==", + "node_modules/are-we-there-yet": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-3.0.1.tgz", + "integrity": "sha512-QZW4EDmGwlYur0Yyf/b2uGucHQMa8aFUP7eu9ddR73vvhFyt4V0Vl3QHPcTNJ8l6qYOBdxgXdnBXQrHilfRQBg==", + "deprecated": "This package is no longer supported.", "dev": true, - "requires": { - "lodash": "^4.17.14" + "dependencies": { + "delegates": "^1.0.0", + "readable-stream": "^3.6.0" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "async-each": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/async-each/-/async-each-1.0.6.tgz", - "integrity": "sha512-c646jH1avxr+aVpndVMeAfYw7wAa6idufrlN3LPA4PmKS0QEGp6PIC9nwz0WQkkvBGAMEki3pFdtxaF39J9vvg==", - "dev": true - }, - "async-limiter": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/async-limiter/-/async-limiter-1.0.1.tgz", - "integrity": "sha512-csOlWGAcRFJaI6m+F2WKdnMKr4HhdhFVBk0H/QbJFMCr+uO2kwohwXQPxw/9OCxp05r5ghVBFSyioixx3gfkNQ==", - "dev": true - }, - "asynckit": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", - "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==", - "dev": true + "node_modules/argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "dependencies": { + "sprintf-js": "~1.0.2" + } }, - "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==", - "dev": true + "node_modules/array-flatten": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", + "integrity": "sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==" }, - "atob": { + "node_modules/atob": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz", "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==", - "dev": true + "bin": { + "atob": "bin/atob.js" + }, + "engines": { + "node": ">= 4.5.0" + } }, - "autoprefixer": { - "version": "9.7.4", - "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-9.7.4.tgz", - "integrity": "sha512-g0Ya30YrMBAEZk60lp+qfX5YQllG+S5W3GYCFvyHTvhOki0AEQJLPEcIuGRsqVwLi8FvXPVtwTGhfr38hVpm0g==", - "dev": true, - "requires": { - "browserslist": "^4.8.3", - "caniuse-lite": "^1.0.30001020", - "chalk": "^2.4.2", + "node_modules/autoprefixer": { + "version": "10.4.21", + "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.21.tgz", + "integrity": "sha512-O+A6LWV5LDHSJD3LjHYoNi4VLsj/Whi7k6zG12xTYaU4cQ8oxQGckXNX8cRHK5yOZ/ppVHe0ZBXGzSV9jXdVbQ==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/autoprefixer" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "dependencies": { + "browserslist": "^4.24.4", + "caniuse-lite": "^1.0.30001702", + "fraction.js": "^4.3.7", "normalize-range": "^0.1.2", - "num2fraction": "^1.2.2", - "postcss": "^7.0.26", - "postcss-value-parser": "^4.0.2" + "picocolors": "^1.1.1", + "postcss-value-parser": "^4.2.0" + }, + "bin": { + "autoprefixer": "bin/autoprefixer" + }, + "engines": { + "node": "^10 || ^12 || >=14" + }, + "peerDependencies": { + "postcss": "^8.1.0" } }, - "available-typed-arrays": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.5.tgz", - "integrity": "sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==", - "dev": true - }, - "aws-sign2": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", - "integrity": "sha512-08kcGqnYf/YmjoRhfxyu+CLxBjUtHLXLXX/vUfx9l2LYzG3c1m61nrpyFUZI6zeS+Li/wWMMidD9KgrqtGq3mA==", - "dev": true + "node_modules/babel-loader": { + "version": "8.2.5", + "resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-8.2.5.tgz", + "integrity": "sha512-OSiFfH89LrEMiWd4pLNqGz4CwJDtbs2ZVc+iGu2HrkRfPxId9F2anQj38IxWpmRfsUY0aBZYi1EFcd3mhtRMLQ==", + "dependencies": { + "find-cache-dir": "^3.3.1", + "loader-utils": "^2.0.0", + "make-dir": "^3.1.0", + "schema-utils": "^2.6.5" + }, + "engines": { + "node": ">= 8.9" + }, + "peerDependencies": { + "@babel/core": "^7.0.0", + "webpack": ">=2" + } }, - "aws4": { - "version": "1.12.0", - "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.12.0.tgz", - "integrity": "sha512-NmWvPnx0F1SfrQbYwOi7OeaNGokp9XhzNioJ/CSBs8Qa4vxug81mhJEAVZwxXuBmYB5KDRfMq/F3RR0BIU7sWg==", - "dev": true + "node_modules/babel-loader/node_modules/loader-utils": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.4.tgz", + "integrity": "sha512-xXqpXoINfFhgua9xiqD8fPFHgkoq1mmmpE92WlDbm9rNRd/EbRb+Gqf908T2DMfuHjjJlksiK2RbHVOdD/MqSw==", + "dependencies": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^2.1.2" + }, + "engines": { + "node": ">=8.9.0" + } }, - "axobject-query": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/axobject-query/-/axobject-query-2.0.2.tgz", - "integrity": "sha512-MCeek8ZH7hKyO1rWUbKNQBbl4l2eY0ntk7OGi+q0RlafrCnfPxC06WZA+uebCfmYp4mNU9jRBP1AhGyf8+W3ww==", - "dev": true, - "requires": { - "ast-types-flow": "0.0.7" + "node_modules/babel-plugin-istanbul": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz", + "integrity": "sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.0.0", + "@istanbuljs/load-nyc-config": "^1.0.0", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-instrument": "^5.0.4", + "test-exclude": "^6.0.0" + }, + "engines": { + "node": ">=8" } }, - "babel-loader": { - "version": "8.0.6", - "resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-8.0.6.tgz", - "integrity": "sha512-4BmWKtBOBm13uoUwd08UwjZlaw3O9GWf456R9j+5YykFZ6LUIjIKLc0zEZf+hauxPOJs96C8k6FvYD09vWzhYw==", - "dev": true, - "requires": { - "find-cache-dir": "^2.0.0", - "loader-utils": "^1.0.2", - "mkdirp": "^0.5.1", - "pify": "^4.0.1" - }, - "dependencies": { - "find-cache-dir": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-2.1.0.tgz", - "integrity": "sha512-Tq6PixE0w/VMFfCgbONnkiQIVol/JJL7nRMi20fqzA4NRs9AfeqMGeRdPi3wIhYkxjeBaWh2rxwapn5Tu3IqOQ==", - "dev": true, - "requires": { - "commondir": "^1.0.1", - "make-dir": "^2.0.0", - "pkg-dir": "^3.0.0" - } - }, - "find-up": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", - "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", - "dev": true, - "requires": { - "locate-path": "^3.0.0" - } - }, - "json5": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz", - "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==", - "dev": true, - "requires": { - "minimist": "^1.2.0" - } - }, - "loader-utils": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.2.tgz", - "integrity": "sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==", - "dev": true, - "requires": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^1.0.1" - } - }, - "locate-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", - "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", - "dev": true, - "requires": { - "p-locate": "^3.0.0", - "path-exists": "^3.0.0" - } - }, - "make-dir": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", - "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", - "dev": true, - "requires": { - "pify": "^4.0.1", - "semver": "^5.6.0" - } - }, - "p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", - "dev": true, - "requires": { - "p-try": "^2.0.0" - } - }, - "p-locate": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", - "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", - "dev": true, - "requires": { - "p-limit": "^2.0.0" - } - }, - "path-exists": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", - "integrity": "sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==", - "dev": true - }, - "pkg-dir": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-3.0.0.tgz", - "integrity": "sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw==", - "dev": true, - "requires": { - "find-up": "^3.0.0" - } - }, - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "dev": true - } + "node_modules/babel-plugin-polyfill-corejs2": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.3.3.tgz", + "integrity": "sha512-8hOdmFYFSZhqg2C/JgLUQ+t52o5nirNwaWM2B9LWteozwIvM14VSwdsCAUET10qT+kmySAlseadmfeeSWFCy+Q==", + "dependencies": { + "@babel/compat-data": "^7.17.7", + "@babel/helper-define-polyfill-provider": "^0.3.3", + "semver": "^6.1.1" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "backo2": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/backo2/-/backo2-1.0.2.tgz", - "integrity": "sha512-zj6Z6M7Eq+PBZ7PQxl5NT665MvJdAkzp0f60nAJ+sLaSCBPMwVak5ZegFbgVCzFcCJTKFoMizvM5Ld7+JrRJHA==", - "dev": true + "node_modules/babel-plugin-polyfill-corejs2/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "bin": { + "semver": "bin/semver.js" + } }, - "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 + "node_modules/babel-plugin-polyfill-corejs3": { + "version": "0.5.3", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.5.3.tgz", + "integrity": "sha512-zKsXDh0XjnrUEW0mxIHLfjBfnXSMr5Q/goMe/fxpQnLm07mcOZiIZHBNWCMx60HmdvjxfXcalac0tfFg0wqxyw==", + "dependencies": { + "@babel/helper-define-polyfill-provider": "^0.3.2", + "core-js-compat": "^3.21.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } }, - "base": { - "version": "0.11.2", - "resolved": "https://registry.npmjs.org/base/-/base-0.11.2.tgz", - "integrity": "sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg==", - "dev": true, - "requires": { - "cache-base": "^1.0.1", - "class-utils": "^0.3.5", - "component-emitter": "^1.2.1", - "define-property": "^1.0.0", - "isobject": "^3.0.1", - "mixin-deep": "^1.2.0", - "pascalcase": "^0.1.1" - }, - "dependencies": { - "define-property": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", - "integrity": "sha512-cZTYKFWspt9jZsMscWo8sc/5lbPC9Q0N5nBLgb+Yd915iL3udB1uFgS3B8YCx66UVHq018DAVFoee7x+gxggeA==", - "dev": true, - "requires": { - "is-descriptor": "^1.0.0" - } - } + "node_modules/babel-plugin-polyfill-regenerator": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.4.1.tgz", + "integrity": "sha512-NtQGmyQDXjQqQ+IzRkBVwEOz9lQ4zxAQZgoAYEtU9dJjnl1Oc98qnN7jcp+bE7O7aYzVpavXE3/VKXNzUbh7aw==", + "dependencies": { + "@babel/helper-define-polyfill-provider": "^0.3.3" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "base64-arraybuffer": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/base64-arraybuffer/-/base64-arraybuffer-0.1.4.tgz", - "integrity": "sha512-a1eIFi4R9ySrbiMuyTGx5e92uRH5tQY6kArNcFaKBUleIoLjdjBg7Zxm3Mqm3Kmkf27HLR/1fnxX9q8GQ7Iavg==", - "dev": true + "node_modules/balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" }, - "base64-js": { + "node_modules/base64-js": { "version": "1.5.1", "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", - "dev": true + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] }, - "base64id": { + "node_modules/base64id": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/base64id/-/base64id-2.0.0.tgz", "integrity": "sha512-lGe34o6EHj9y3Kts9R4ZYs/Gr+6N7MCaMlIFA3F1R2O5/m7K06AxfSeO5530PEERE6/WyEg3lsuyw4GHlPZHog==", - "dev": true + "devOptional": true, + "engines": { + "node": "^4.5.0 || >= 5.9" + } }, - "batch": { + "node_modules/batch": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/batch/-/batch-0.6.1.tgz", - "integrity": "sha512-x+VAiMRL6UPkx+kudNvxTl6hB2XNNCG2r+7wixVfIYwu/2HKRXimwQyaumLjMveWvT2Hkd/cAJw+QBMfJ/EKVw==", - "dev": true - }, - "bcrypt-pbkdf": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", - "integrity": "sha512-qeFIXtP4MSoi6NLqO12WfqARWWuCKi2Rn/9hJLEmtB5yTNr9DqFWkJRCf2qShWzPeAMRnOgCrq0sg/KLv5ES9w==", - "dev": true, - "requires": { - "tweetnacl": "^0.14.3" - } + "integrity": "sha512-x+VAiMRL6UPkx+kudNvxTl6hB2XNNCG2r+7wixVfIYwu/2HKRXimwQyaumLjMveWvT2Hkd/cAJw+QBMfJ/EKVw==" }, - "big.js": { + "node_modules/big.js": { "version": "5.2.2", "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz", "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==", - "dev": true - }, - "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 - }, - "bindings": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/bindings/-/bindings-1.5.0.tgz", - "integrity": "sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==", - "dev": true, - "optional": true, - "requires": { - "file-uri-to-path": "1.0.0" + "engines": { + "node": "*" } }, - "blob": { - "version": "0.0.5", - "resolved": "https://registry.npmjs.org/blob/-/blob-0.0.5.tgz", - "integrity": "sha512-gaqbzQPqOoamawKg0LGVd7SzLgXS+JH61oWprSLH+P+abTczqJbhTR8CmJ2u9/bUYNmHTGJx/UEmn6doAvvuig==", - "dev": true - }, - "blocking-proxy": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/blocking-proxy/-/blocking-proxy-1.0.1.tgz", - "integrity": "sha512-KE8NFMZr3mN2E0HcvCgRtX7DjhiIQrwle+nSVJVC/yqFb9+xznHl2ZcoBp2L9qzkI4t4cBFJ1efXF8Dwi132RA==", - "dev": true, - "requires": { - "minimist": "^1.2.0" + "node_modules/binary-extensions": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.3.0.tgz", + "integrity": "sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "bluebird": { - "version": "3.7.2", - "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz", - "integrity": "sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==", - "dev": true - }, - "bn.js": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-5.2.1.tgz", - "integrity": "sha512-eXRvHzWyYPBuB4NBy0cmYQjGitUrtqwbvlzP3G6VFnNRbsZQIxQ10PbKKHt8gZ/HW/D/747aDl+QkDqg3KQLMQ==", - "dev": true + "node_modules/bl": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz", + "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==", + "dependencies": { + "buffer": "^5.5.0", + "inherits": "^2.0.4", + "readable-stream": "^3.4.0" + } }, - "body-parser": { - "version": "1.20.2", - "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.2.tgz", - "integrity": "sha512-ml9pReCu3M61kGlqoTm2umSXTlRTuGTx0bfYj+uIUKKYycG5NtSbeetV3faSU6R7ajOPw0g/J1PvK4qNy7s5bA==", - "dev": true, - "requires": { + "node_modules/body-parser": { + "version": "1.20.3", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.3.tgz", + "integrity": "sha512-7rAxByjUMqQ3/bHJy7D6OGXvx/MMc4IqBn/X0fcM1QUcAItpZrBEYhWGem+tzXH90c+G01ypMcYJBO9Y30203g==", + "dependencies": { "bytes": "3.1.2", "content-type": "~1.0.5", "debug": "2.6.9", @@ -2716,2779 +3861,1934 @@ "http-errors": "2.0.0", "iconv-lite": "0.4.24", "on-finished": "2.4.1", - "qs": "6.11.0", + "qs": "6.13.0", "raw-body": "2.5.2", "type-is": "~1.6.18", "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==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true - } + "engines": { + "node": ">= 0.8", + "npm": "1.2.8000 || >= 1.4.16" } }, - "bonjour": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/bonjour/-/bonjour-3.5.0.tgz", - "integrity": "sha512-RaVTblr+OnEli0r/ud8InrU7D+G0y6aJhlxaLa6Pwty4+xoxboF1BsUI45tujvRpbj9dQVoglChqonGAsjEBYg==", - "dev": true, - "requires": { - "array-flatten": "^2.1.0", - "deep-equal": "^1.0.1", - "dns-equal": "^1.0.0", - "dns-txt": "^2.0.2", - "multicast-dns": "^6.0.1", - "multicast-dns-service-types": "^1.1.0" - } - }, - "boolbase": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", - "integrity": "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==", - "dev": true - }, - "boxen": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/boxen/-/boxen-4.2.0.tgz", - "integrity": "sha512-eB4uT9RGzg2odpER62bBwSLvUeGC+WbRjjyyFhGsKnc8wp/m0+hQsMUvUe3H2V0D5vw0nBdO1hCJoZo5mKeuIQ==", - "dev": true, - "requires": { - "ansi-align": "^3.0.0", - "camelcase": "^5.3.1", - "chalk": "^3.0.0", - "cli-boxes": "^2.2.0", - "string-width": "^4.1.0", - "term-size": "^2.1.0", - "type-fest": "^0.8.1", - "widest-line": "^3.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" - } - }, - "chalk": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", - "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.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 - }, - "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" - } - }, - "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 - } - } - }, - "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" + "node_modules/body-parser/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dependencies": { + "ms": "2.0.0" } }, - "brorand": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz", - "integrity": "sha512-cKV8tMCEpQs4hK/ik71d6LrPOnpkpGBR0wzxqr68g2m/LB2GxVYQroAjMJZRVM1Y4BCjCKc3vAamxSzOY2RP+w==", - "dev": true + "node_modules/body-parser/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" }, - "browserify-aes": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz", - "integrity": "sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==", - "dev": true, - "requires": { - "buffer-xor": "^1.0.3", - "cipher-base": "^1.0.0", - "create-hash": "^1.1.0", - "evp_bytestokey": "^1.0.3", - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" + "node_modules/bonjour-service": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/bonjour-service/-/bonjour-service-1.3.0.tgz", + "integrity": "sha512-3YuAUiSkWykd+2Azjgyxei8OWf8thdn8AITIog2M4UICzoqfjlqr64WIjEXZllf/W6vK1goqleSR6brGomxQqA==", + "dependencies": { + "fast-deep-equal": "^3.1.3", + "multicast-dns": "^7.2.5" } }, - "browserify-cipher": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/browserify-cipher/-/browserify-cipher-1.0.1.tgz", - "integrity": "sha512-sPhkz0ARKbf4rRQt2hTpAHqn47X3llLkUGn+xEJzLjwY8LRs2p0v7ljvI5EyoRO/mexrNunNECisZs+gw2zz1w==", - "dev": true, - "requires": { - "browserify-aes": "^1.0.4", - "browserify-des": "^1.0.0", - "evp_bytestokey": "^1.0.0" - } + "node_modules/boolbase": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", + "integrity": "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==" }, - "browserify-des": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/browserify-des/-/browserify-des-1.0.2.tgz", - "integrity": "sha512-BioO1xf3hFwz4kc6iBhI3ieDFompMhrMlnDFC4/0/vd5MokpuAc3R+LYbwTA9A5Yc9pq9UYPqffKpW2ObuwX5A==", - "dev": true, - "requires": { - "cipher-base": "^1.0.1", - "des.js": "^1.0.0", - "inherits": "^2.0.1", - "safe-buffer": "^5.1.2" + "node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dependencies": { + "balanced-match": "^1.0.0" } }, - "browserify-rsa": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.1.0.tgz", - "integrity": "sha512-AdEER0Hkspgno2aR97SAf6vi0y0k8NuOpGnVH3O99rcA5Q6sh8QxcngtHuJ6uXwnfAXNM4Gn1Gb7/MV1+Ymbog==", - "dev": true, - "requires": { - "bn.js": "^5.0.0", - "randombytes": "^2.0.1" + "node_modules/braces": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", + "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", + "dependencies": { + "fill-range": "^7.1.1" + }, + "engines": { + "node": ">=8" } }, - "browserify-sign": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/browserify-sign/-/browserify-sign-4.2.1.tgz", - "integrity": "sha512-/vrA5fguVAKKAVTNJjgSm1tRQDHUU6DbwO9IROu/0WAzC8PKhucDSh18J0RMvVeHAn5puMd+QHC2erPRNf8lmg==", - "dev": true, - "requires": { - "bn.js": "^5.1.1", - "browserify-rsa": "^4.0.1", - "create-hash": "^1.2.0", - "create-hmac": "^1.1.7", - "elliptic": "^6.5.3", - "inherits": "^2.0.4", - "parse-asn1": "^5.1.5", - "readable-stream": "^3.6.0", - "safe-buffer": "^5.2.0" - }, - "dependencies": { - "readable-stream": { - "version": "3.6.2", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", - "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", - "dev": true, - "requires": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - } + "node_modules/browserslist": { + "version": "4.24.4", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.24.4.tgz", + "integrity": "sha512-KDi1Ny1gSePi1vm0q4oxSF8b4DR44GF4BbmS2YdhPLOEqd8pDviZOGH/GsmRwoWJ2+5Lr085X7naowMwKHDG1A==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" } + ], + "dependencies": { + "caniuse-lite": "^1.0.30001688", + "electron-to-chromium": "^1.5.73", + "node-releases": "^2.0.19", + "update-browserslist-db": "^1.1.1" + }, + "bin": { + "browserslist": "cli.js" + }, + "engines": { + "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" } }, - "browserify-zlib": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/browserify-zlib/-/browserify-zlib-0.2.0.tgz", - "integrity": "sha512-Z942RysHXmJrhqk88FmKBVq/v5tqmSkDz7p54G/MGyjMnCFFnC79XWNbg+Vta8W6Wb2qtSZTSxIGkJrRpCFEiA==", - "dev": true, - "requires": { - "pako": "~1.0.5" - } - }, - "browserslist": { - "version": "4.21.5", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.5.tgz", - "integrity": "sha512-tUkiguQGW7S3IhB7N+c2MV/HZPSCPAAiYBZXLsBhFB/PCy6ZKKsZrmBayHV9fdGV/ARIfJ14NkxKzRDjvp7L6w==", - "dev": true, - "requires": { - "caniuse-lite": "^1.0.30001449", - "electron-to-chromium": "^1.4.284", - "node-releases": "^2.0.8", - "update-browserslist-db": "^1.0.10" - } - }, - "browserstack": { - "version": "1.6.1", - "resolved": "https://registry.npmjs.org/browserstack/-/browserstack-1.6.1.tgz", - "integrity": "sha512-GxtFjpIaKdbAyzHfFDKixKO8IBT7wR3NjbzrGc78nNs/Ciys9wU3/nBtsqsWv5nDSrdI5tz0peKuzCPuNXNUiw==", - "dev": true, - "requires": { - "https-proxy-agent": "^2.2.1" - } - }, - "buffer": { - "version": "4.9.2", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-4.9.2.tgz", - "integrity": "sha512-xq+q3SRMOxGivLhBNaUdC64hDTQwejJ+H0T/NB1XMtTVEwNTrfFF3gAxiyW0Bu/xWEGhjVKgUcMhCrUy2+uCWg==", - "dev": true, - "requires": { - "base64-js": "^1.0.2", - "ieee754": "^1.1.4", - "isarray": "^1.0.0" + "node_modules/buffer": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", + "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "dependencies": { + "base64-js": "^1.3.1", + "ieee754": "^1.1.13" } }, - "buffer-from": { + "node_modules/buffer-from": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", - "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", - "dev": true + "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==" }, - "buffer-indexof": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/buffer-indexof/-/buffer-indexof-1.1.1.tgz", - "integrity": "sha512-4/rOEg86jivtPTeOUUT61jJO1Ya1TrR/OkqCSZDyq84WJh3LuuiphBYJN+fm5xufIk4XAFcEwte/8WzC8If/1g==", - "dev": true - }, - "buffer-xor": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz", - "integrity": "sha512-571s0T7nZWK6vB67HI5dyUF7wXiNcfaPPPTl6zYCNApANjIvYJTg7hlud/+cJpdAhS7dVzqMLmfhfHR3rAcOjQ==", - "dev": true - }, - "builtin-modules": { + "node_modules/builtin-modules": { "version": "3.3.0", "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-3.3.0.tgz", "integrity": "sha512-zhaCDicdLuWN5UbN5IMnFqNMhNfo919sH85y2/ea+5Yg9TsTkeZxpL+JLbp6cgYFS4sRLp3YV4S6yDuqVWHYOw==", - "dev": true - }, - "builtin-status-codes": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz", - "integrity": "sha512-HpGFw18DgFWlncDfjTa2rcQ4W88O1mC8e8yZ2AvQY5KDaktSTwo+KRf6nHK6FRI5FyRyb/5T6+TSxfP7QyGsmQ==", - "dev": true + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } }, - "builtins": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/builtins/-/builtins-1.0.3.tgz", - "integrity": "sha512-uYBjakWipfaO/bXI7E8rq6kpwHRZK5cNYrUv2OzZSI/FvmdMyXJ2tG9dKcjEC5YHmHpUAwsargWIZNWdxb/bnQ==", - "dev": true + "node_modules/builtins": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/builtins/-/builtins-5.1.0.tgz", + "integrity": "sha512-SW9lzGTLvWTP1AY8xeAMZimqDrIaSdLQUcVr9DMef51niJ022Ri87SwRRKYm4A6iHfkPaiVUu/Duw2Wc4J7kKg==", + "dev": true, + "dependencies": { + "semver": "^7.0.0" + } }, - "bytes": { + "node_modules/bytes": { "version": "3.1.2", "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", - "dev": true + "engines": { + "node": ">= 0.8" + } }, - "cacache": { - "version": "15.0.0", - "resolved": "https://registry.npmjs.org/cacache/-/cacache-15.0.0.tgz", - "integrity": "sha512-L0JpXHhplbJSiDGzyJJnJCTL7er7NzbBgxzVqLswEb4bO91Zbv17OUMuUeu/q0ZwKn3V+1HM4wb9tO4eVE/K8g==", - "dev": true, - "requires": { - "chownr": "^1.1.2", - "fs-minipass": "^2.0.0", - "glob": "^7.1.4", + "node_modules/cacache": { + "version": "16.1.2", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-16.1.2.tgz", + "integrity": "sha512-Xx+xPlfCZIUHagysjjOAje9nRo8pRDczQCcXb4J2O0BLtH+xeVue6ba4y1kfJfQMAnM2mkcoMIAyOctlaRGWYA==", + "dependencies": { + "@npmcli/fs": "^2.1.0", + "@npmcli/move-file": "^2.0.0", + "chownr": "^2.0.0", + "fs-minipass": "^2.1.0", + "glob": "^8.0.1", "infer-owner": "^1.0.4", - "lru-cache": "^5.1.1", - "minipass": "^3.1.1", + "lru-cache": "^7.7.1", + "minipass": "^3.1.6", "minipass-collect": "^1.0.2", "minipass-flush": "^1.0.5", - "minipass-pipeline": "^1.2.2", - "mkdirp": "^1.0.3", - "move-concurrently": "^1.0.1", - "p-map": "^3.0.0", + "minipass-pipeline": "^1.2.4", + "mkdirp": "^1.0.4", + "p-map": "^4.0.0", "promise-inflight": "^1.0.1", - "rimraf": "^2.7.1", - "ssri": "^8.0.0", - "tar": "^6.0.1", + "rimraf": "^3.0.2", + "ssri": "^9.0.0", + "tar": "^6.1.11", "unique-filename": "^1.1.1" }, - "dependencies": { - "mkdirp": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", - "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", - "dev": true - }, - "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" - } - } + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "cache-base": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/cache-base/-/cache-base-1.0.1.tgz", - "integrity": "sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ==", - "dev": true, - "requires": { - "collection-visit": "^1.0.0", - "component-emitter": "^1.2.1", - "get-value": "^2.0.6", - "has-value": "^1.0.0", - "isobject": "^3.0.1", - "set-value": "^2.0.0", - "to-object-path": "^0.3.0", - "union-value": "^1.0.0", - "unset-value": "^1.0.0" - } - }, - "cacheable-request": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/cacheable-request/-/cacheable-request-6.1.0.tgz", - "integrity": "sha512-Oj3cAGPCqOZX7Rz64Uny2GYAZNliQSqfbePrgAQ1wKAihYmCUnraBtJtKcGR4xz7wF+LoJC+ssFZvv5BgF9Igg==", - "dev": true, - "requires": { - "clone-response": "^1.0.2", - "get-stream": "^5.1.0", - "http-cache-semantics": "^4.0.0", - "keyv": "^3.0.0", - "lowercase-keys": "^2.0.0", - "normalize-url": "^4.1.0", - "responselike": "^1.0.2" - }, - "dependencies": { - "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==", - "dev": true, - "requires": { - "pump": "^3.0.0" - } - }, - "http-cache-semantics": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.1.tgz", - "integrity": "sha512-er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ==", - "dev": true - }, - "lowercase-keys": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-2.0.0.tgz", - "integrity": "sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA==", - "dev": true - }, - "normalize-url": { - "version": "4.5.1", - "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-4.5.1.tgz", - "integrity": "sha512-9UZCFRHQdNrfTpGg8+1INIg93B6zE0aXMVFkw1WFwvO4SlZywU6aLg5Of0Ap/PgcbSw4LNxvMWXMeugwMCX0AA==", - "dev": true - } + "node_modules/cacache/node_modules/lru-cache": { + "version": "7.18.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", + "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", + "engines": { + "node": ">=12" } }, - "call-bind": { + "node_modules/call-bind-apply-helpers": { "version": "1.0.2", - "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", - "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", - "dev": true, - "requires": { - "function-bind": "^1.1.1", - "get-intrinsic": "^1.0.2" + "resolved": "https://registry.npmjs.org/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.2.tgz", + "integrity": "sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==", + "dependencies": { + "es-errors": "^1.3.0", + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" } }, - "caller-callsite": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/caller-callsite/-/caller-callsite-2.0.0.tgz", - "integrity": "sha512-JuG3qI4QOftFsZyOn1qq87fq5grLIyk1JYd5lJmdA+fG7aQ9pA/i3JIJGcO3q0MrRcHlOt1U+ZeHW8Dq9axALQ==", - "dev": true, - "requires": { - "callsites": "^2.0.0" + "node_modules/call-bound": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/call-bound/-/call-bound-1.0.4.tgz", + "integrity": "sha512-+ys997U96po4Kx/ABpBCqhA9EuxJaQWDQg7295H4hBphv3IZg0boBKuwYpt4YXp6MZ5AmZQnU/tyMTlRpaSejg==", + "dependencies": { + "call-bind-apply-helpers": "^1.0.2", + "get-intrinsic": "^1.3.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "caller-path": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/caller-path/-/caller-path-2.0.0.tgz", - "integrity": "sha512-MCL3sf6nCSXOwCTzvPKhN18TU7AHTvdtam8DAogxcrJ8Rjfbbg7Lgng64H9Iy+vUV6VGFClN/TyxBkAebLRR4A==", - "dev": true, - "requires": { - "caller-callsite": "^2.0.0" + "node_modules/callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "engines": { + "node": ">=6" } }, - "callsites": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/callsites/-/callsites-2.0.0.tgz", - "integrity": "sha512-ksWePWBloaWPxJYQ8TL0JHvtci6G5QTKwQ95RcWAa/lzoAKuAOflGdAK92hpHXjkwb8zLxoLNUoNYZgVsaJzvQ==", - "dev": true - }, - "camelcase": { + "node_modules/camelcase": { "version": "5.3.1", "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true - }, - "caniuse-api": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/caniuse-api/-/caniuse-api-3.0.0.tgz", - "integrity": "sha512-bsTwuIg/BZZK/vreVTYYbSWoe2F+71P7K5QGEX+pT250DZbfU1MQ5prOKpPR+LL6uWKK3KMwMCAS74QB3Um1uw==", - "dev": true, - "requires": { - "browserslist": "^4.0.0", - "caniuse-lite": "^1.0.0", - "lodash.memoize": "^4.1.2", - "lodash.uniq": "^4.5.0" + "engines": { + "node": ">=6" } }, - "caniuse-lite": { - "version": "1.0.30001468", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001468.tgz", - "integrity": "sha512-zgAo8D5kbOyUcRAgSmgyuvBkjrGk5CGYG5TYgFdpQv+ywcyEpo1LOWoG8YmoflGnh+V+UsNuKYedsoYs0hzV5A==", - "dev": true - }, - "canonical-path": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/canonical-path/-/canonical-path-1.0.0.tgz", - "integrity": "sha512-feylzsbDxi1gPZ1IjystzIQZagYYLvfKrSuygUCgf7z6x790VEzze5QEkdSV1U58RA7Hi0+v6fv4K54atOzATg==", - "dev": true - }, - "caseless": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", - "integrity": "sha512-4tYFyifaFfGacoiObjJegolkwSU4xQNGbVgUiNYVUxbQ2x2lUsFvY4hVgVzGiIe6WLOPqycWXA40l+PWsxthUw==", - "dev": true + "node_modules/caniuse-lite": { + "version": "1.0.30001715", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001715.tgz", + "integrity": "sha512-7ptkFGMm2OAOgvZpwgA4yjQ5SQbrNVGdRjzH0pBdy1Fasvcr+KAeECmbCAECzTuDuoX0FCY8KzUxjf9+9kfZEw==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/caniuse-lite" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ] }, - "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" + "node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "chardet": { + "node_modules/chardet": { "version": "0.7.0", "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz", - "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==", - "dev": true + "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==" }, - "chokidar": { - "version": "3.5.3", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", - "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", - "dev": true, - "requires": { + "node_modules/chokidar": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz", + "integrity": "sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==", + "dependencies": { "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" + }, + "engines": { + "node": ">= 8.10.0" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" } }, - "chownr": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz", - "integrity": "sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==", - "dev": true - }, - "chrome-trace-event": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.3.tgz", - "integrity": "sha512-p3KULyQg4S7NIHixdwbGX+nFHkoBiA4YQmyWtjb8XngSKV124nJmRysgAeujbUVb15vh+RvFUfCPqU7rXk+hZg==", - "dev": true - }, - "ci-info": { + "node_modules/chownr": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-2.0.0.tgz", - "integrity": "sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==", - "dev": true - }, - "cipher-base": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.4.tgz", - "integrity": "sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==", - "dev": true, - "requires": { - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" + "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", + "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==", + "engines": { + "node": ">=10" } }, - "circular-dependency-plugin": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/circular-dependency-plugin/-/circular-dependency-plugin-5.2.0.tgz", - "integrity": "sha512-7p4Kn/gffhQaavNfyDFg7LS5S/UT1JAjyGd4UqR2+jzoYF02eDkj0Ec3+48TsIa4zghjLY87nQHIh/ecK9qLdw==", - "dev": true - }, - "class-utils": { - "version": "0.3.6", - "resolved": "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz", - "integrity": "sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==", - "dev": true, - "requires": { - "arr-union": "^3.1.0", - "define-property": "^0.2.5", - "isobject": "^3.0.0", - "static-extend": "^0.1.1" - }, - "dependencies": { - "define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA==", - "dev": true, - "requires": { - "is-descriptor": "^0.1.0" - } - }, - "is-accessor-descriptor": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", - "integrity": "sha512-e1BM1qnDbMRG3ll2U9dSK0UMHuWOs3pY3AtcFsmvwPtKL3MML/Q86i+GilLfvqEs4GW+ExB91tQ3Ig9noDIZ+A==", - "dev": true, - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "is-data-descriptor": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", - "integrity": "sha512-+w9D5ulSoBNlmw9OHn3U2v51SyoCd0he+bB3xMl62oijhrspxowjU+AIcDY0N3iEJbUEkB15IlMASQsxYigvXg==", - "dev": true, - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "is-descriptor": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", - "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", - "dev": true, - "requires": { - "is-accessor-descriptor": "^0.1.6", - "is-data-descriptor": "^0.1.4", - "kind-of": "^5.0.0" - } - }, - "kind-of": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", - "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", - "dev": true - } - } - }, - "clean-css": { - "version": "4.2.4", - "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-4.2.4.tgz", - "integrity": "sha512-EJUDT7nDVFDvaQgAo2G/PJvxmp1o/c6iXLbswsBbUFXi1Nr+AjA2cKmfbKDMjMvzEe75g3P6JkaDDAKk96A85A==", - "dev": true, - "requires": { - "source-map": "~0.6.0" - }, - "dependencies": { - "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 - } + "node_modules/chrome-trace-event": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.4.tgz", + "integrity": "sha512-rNjApaLzuwaOTjCiT8lSDdGN1APCiqkChLMJxJPWLunPAt5fy8xgU9/jNOchV84wfIxrA0lRQB7oCT8jrn/wrQ==", + "engines": { + "node": ">=6.0" } }, - "clean-stack": { + "node_modules/clean-stack": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", - "dev": true - }, - "cli-boxes": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/cli-boxes/-/cli-boxes-2.2.1.tgz", - "integrity": "sha512-y4coMcylgSCdVinjiDBuR8PCC2bLjyGTwEmPb9NHR/QaNU6EUOXcTY/s6VjGMD6ENSEaeQYHCY0GNGS5jfMwPw==", - "dev": true + "engines": { + "node": ">=6" + } }, - "cli-cursor": { + "node_modules/cli-cursor": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz", "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", - "dev": true, - "requires": { + "dependencies": { "restore-cursor": "^3.1.0" + }, + "engines": { + "node": ">=8" } }, - "cli-spinners": { - "version": "2.7.0", - "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.7.0.tgz", - "integrity": "sha512-qu3pN8Y3qHNgE2AFweciB1IfMnmZ/fsNTEE+NOFjmGB2F/7rLhnhzppvpCnN4FovtP26k8lHyy9ptEbNwWFLzw==", - "dev": true + "node_modules/cli-spinners": { + "version": "2.9.2", + "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.9.2.tgz", + "integrity": "sha512-ywqV+5MmyL4E7ybXgKys4DugZbX0FC6LnwrhjuykIjnK9k8OQacQ7axGKnjDXWNhns0xot3bZI5h55H8yo9cJg==", + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } }, - "cli-width": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-2.2.1.tgz", - "integrity": "sha512-GRMWDxpOB6Dgk2E5Uo+3eEBvtOOlimMmpbFiKuLFnQzYDavtLFY3K5ona41jgN/WdRZtG7utuVSVTL4HbZHGkw==", - "dev": true + "node_modules/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==", + "engines": { + "node": ">= 10" + } }, - "cliui": { + "node_modules/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": { + "dependencies": { "string-width": "^4.2.0", "strip-ansi": "^6.0.0", "wrap-ansi": "^7.0.0" } }, - "clone": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/clone/-/clone-2.1.2.tgz", - "integrity": "sha512-3Pe/CF1Nn94hyhIYpjtiLhdCoEoz0DqQ+988E9gmeEdQZlojxnOb74wctFyuwWQHzqyf9X7C7MG8juUpqBJT8w==", - "dev": true + "node_modules/clone": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz", + "integrity": "sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg==", + "engines": { + "node": ">=0.8" + } }, - "clone-deep": { + "node_modules/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": { + "dependencies": { "is-plain-object": "^2.0.4", "kind-of": "^6.0.2", "shallow-clone": "^3.0.0" - } - }, - "clone-response": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/clone-response/-/clone-response-1.0.3.tgz", - "integrity": "sha512-ROoL94jJH2dUVML2Y/5PEDNaSHgeOdSDicUyS7izcF63G6sTc/FTjLub4b8Il9S8S0beOfYt0TaA5qvFK+w0wA==", - "dev": true, - "requires": { - "mimic-response": "^1.0.0" - } - }, - "coa": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/coa/-/coa-2.0.2.tgz", - "integrity": "sha512-q5/jG+YQnSy4nRTV4F7lPepBJZ8qBNJJDBuJdoejDyLXgmL7IEo+Le2JDZudFTFt7mrCqIRaSjws4ygRCTCAXA==", - "dev": true, - "requires": { - "@types/q": "^1.5.1", - "chalk": "^2.4.1", - "q": "^1.1.2" }, - "dependencies": { - "@types/q": { - "version": "1.5.5", - "resolved": "https://registry.npmjs.org/@types/q/-/q-1.5.5.tgz", - "integrity": "sha512-L28j2FcJfSZOnL1WBjDYp2vUHCeIFlyYI/53EwD/rKUBQ7MtUUfbQWiyKJGpcnv4/WgrhWsFKrcPstcAt/J0tQ==", - "dev": true - } - } - }, - "codelyzer": { - "version": "5.2.2", - "resolved": "https://registry.npmjs.org/codelyzer/-/codelyzer-5.2.2.tgz", - "integrity": "sha512-jB4FZ1Sx7kZhvZVdf+N2BaKTdrrNZOL0Bj10RRfrhHrb3zEvXjJvvq298JPMJAiyiCS/v4zs1QlGU0ip7xGqeA==", - "dev": true, - "requires": { - "app-root-path": "^2.2.1", - "aria-query": "^3.0.0", - "axobject-query": "2.0.2", - "css-selector-tokenizer": "^0.7.1", - "cssauron": "^1.4.0", - "damerau-levenshtein": "^1.0.4", - "semver-dsl": "^1.0.1", - "source-map": "^0.5.7", - "sprintf-js": "^1.1.2" - }, - "dependencies": { - "source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==", - "dev": true - } - } - }, - "collection-visit": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz", - "integrity": "sha512-lNkKvzEeMBBjUGHZ+q6z9pSJla0KWAQPvtzhEV9+iGyQYG+pBpl7xKDhxoNSOZH2hhv0v5k0y2yAM4o4SjoSkw==", - "dev": true, - "requires": { - "map-visit": "^1.0.0", - "object-visit": "^1.0.0" + "engines": { + "node": ">=6" } }, - "color": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/color/-/color-3.2.1.tgz", - "integrity": "sha512-aBl7dZI9ENN6fUGC7mWpMTPNHmWUSNan9tuWN6ahh5ZLNk9baLJOnSMlrQkHcrfFgz2/RigjUVAjdx36VcemKA==", - "dev": true, - "requires": { - "color-convert": "^1.9.3", - "color-string": "^1.6.0" + "node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.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" - } + "node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" }, - "color-name": { + "node_modules/color-support": { "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", - "dev": true - }, - "color-string": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/color-string/-/color-string-1.9.1.tgz", - "integrity": "sha512-shrVawQFojnZv6xM40anx4CkoDP+fZsw/ZerEMsW/pyzsRbElpsL/DBVW7q3ExxwusdNXI3lXpuhEZkzs8p5Eg==", + "resolved": "https://registry.npmjs.org/color-support/-/color-support-1.1.3.tgz", + "integrity": "sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==", "dev": true, - "requires": { - "color-name": "^1.0.0", - "simple-swizzle": "^0.2.2" + "bin": { + "color-support": "bin.js" } }, - "colors": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/colors/-/colors-1.1.2.tgz", - "integrity": "sha512-ENwblkFQpqqia6b++zLD/KUWafYlVY/UNnAp7oz7LY7E924wmpye416wBOmvv/HMWzl8gL1kJlfvId/1Dg176w==", - "dev": true + "node_modules/colorette": { + "version": "2.0.20", + "resolved": "https://registry.npmjs.org/colorette/-/colorette-2.0.20.tgz", + "integrity": "sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==" }, - "combined-stream": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", - "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", - "dev": true, - "requires": { - "delayed-stream": "~1.0.0" + "node_modules/commander": { + "version": "9.5.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-9.5.0.tgz", + "integrity": "sha512-KRs7WVDKg86PWiuAqhDrAQnTXZKraVcCc6vFdL14qrZ/DcWwuRo7VoiYXalXO7S5GKpqYiVEwCbgFDfxNHKJBQ==", + "engines": { + "node": "^12.20.0 || >=14" } }, - "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==", - "dev": true - }, - "commondir": { + "node_modules/commondir": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", - "integrity": "sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==", - "dev": true + "integrity": "sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==" }, - "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 - }, - "component-bind": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/component-bind/-/component-bind-1.0.0.tgz", - "integrity": "sha512-WZveuKPeKAG9qY+FkYDeADzdHyTYdIboXS59ixDeRJL5ZhxpqUnxSOwop4FQjMsiYm3/Or8cegVbpAHNA7pHxw==", - "dev": true - }, - "component-emitter": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz", - "integrity": "sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==", - "dev": true - }, - "component-inherit": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/component-inherit/-/component-inherit-0.0.3.tgz", - "integrity": "sha512-w+LhYREhatpVqTESyGFg3NlP6Iu0kEKUHETY9GoZP/pQyW4mHFZuFWRUCIqVPZ36ueVLtoOEZaAqbCF2RDndaA==", - "dev": true - }, - "compressible": { + "node_modules/compressible": { "version": "2.0.18", "resolved": "https://registry.npmjs.org/compressible/-/compressible-2.0.18.tgz", "integrity": "sha512-AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg==", - "dev": true, - "requires": { + "dependencies": { "mime-db": ">= 1.43.0 < 2" + }, + "engines": { + "node": ">= 0.6" } }, - "compression": { - "version": "1.7.4", - "resolved": "https://registry.npmjs.org/compression/-/compression-1.7.4.tgz", - "integrity": "sha512-jaSIDzP9pZVS4ZfQ+TzvtiWhdpFhE2RDHz8QJkpX9SIpLq88VueF5jJw6t+6CUQcAoA6t+x89MLrWAqpfDE8iQ==", - "dev": true, - "requires": { - "accepts": "~1.3.5", - "bytes": "3.0.0", - "compressible": "~2.0.16", + "node_modules/compression": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/compression/-/compression-1.8.0.tgz", + "integrity": "sha512-k6WLKfunuqCYD3t6AsuPGvQWaKwuLLh2/xHNcX4qE+vIfDNXpSqnrhwA7O53R7WVQUnt8dVAIW+YHr7xTgOgGA==", + "dependencies": { + "bytes": "3.1.2", + "compressible": "~2.0.18", "debug": "2.6.9", + "negotiator": "~0.6.4", "on-headers": "~1.0.2", - "safe-buffer": "5.1.2", + "safe-buffer": "5.2.1", "vary": "~1.1.2" }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/compression/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", "dependencies": { - "bytes": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz", - "integrity": "sha512-pMhOfFDPiv9t5jjIXkHosWmkSyQbvsgEVNkz0ERHbuLh2T/7j4Mqqpz523Fe8MVY89KC6Sh/QfS2sM+SjgFDcw==", - "dev": true - }, - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true - }, - "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 - } + "ms": "2.0.0" } }, - "concat-map": { + "node_modules/compression/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" + }, + "node_modules/concat-map": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", - "dev": true - }, - "concat-stream": { - "version": "1.6.2", - "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz", - "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==", - "dev": true, - "requires": { - "buffer-from": "^1.0.0", - "inherits": "^2.0.3", - "readable-stream": "^2.2.2", - "typedarray": "^0.0.6" - } - }, - "configstore": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/configstore/-/configstore-5.0.1.tgz", - "integrity": "sha512-aMKprgk5YhBNyH25hj8wGt2+D52Sw1DRRIzqBwLp2Ya9mFmY8KPvvtvmna8SxVR9JMZ4kzMD68N22vlaRpkeFA==", - "dev": true, - "requires": { - "dot-prop": "^5.2.0", - "graceful-fs": "^4.1.2", - "make-dir": "^3.0.0", - "unique-string": "^2.0.0", - "write-file-atomic": "^3.0.0", - "xdg-basedir": "^4.0.0" - } + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==" }, - "connect": { + "node_modules/connect": { "version": "3.7.0", "resolved": "https://registry.npmjs.org/connect/-/connect-3.7.0.tgz", "integrity": "sha512-ZqRXc+tZukToSNmh5C2iWMSoV3X1YUcPbqEM4DkEG5tNQXrQUZCNVGGv3IuicnkMtPfGf3Xtp8WCXs295iQ1pQ==", - "dev": true, - "requires": { + "devOptional": true, + "dependencies": { "debug": "2.6.9", "finalhandler": "1.1.2", "parseurl": "~1.3.3", "utils-merge": "1.0.1" }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true - } + "engines": { + "node": ">= 0.10.0" } }, - "connect-history-api-fallback": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/connect-history-api-fallback/-/connect-history-api-fallback-1.6.0.tgz", - "integrity": "sha512-e54B99q/OUoH64zYYRf3HBP5z24G38h5D3qXu23JGRoigpX5Ss4r9ZnDk3g0Z8uQC2x2lPaJ+UlWBc1ZWBWdLg==", - "dev": true + "node_modules/connect-history-api-fallback": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/connect-history-api-fallback/-/connect-history-api-fallback-2.0.0.tgz", + "integrity": "sha512-U73+6lQFmfiNPrYbXqr6kZ1i1wiRqXnp2nhMsINseWXO8lDau0LGEffJ8kQi4EjLZympVgRdvqjAgiZ1tgzDDA==", + "engines": { + "node": ">=0.8" + } }, - "console-browserify": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/console-browserify/-/console-browserify-1.2.0.tgz", - "integrity": "sha512-ZMkYO/LkF17QvCPqM0gxw8yUzigAOZOSWSHg91FH6orS7vcEj5dVZTidN2fQ14yBSdg97RqhSNwLUXInd52OTA==", - "dev": true + "node_modules/connect/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "devOptional": true, + "dependencies": { + "ms": "2.0.0" + } }, - "constants-browserify": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/constants-browserify/-/constants-browserify-1.0.0.tgz", - "integrity": "sha512-xFxOwqIzR/e1k1gLiWEophSCMqXcwVHIH7akf7b/vxcUeGunlj3hvZaaqxwHsTgn+IndtkQJgSztIDWeumWJDQ==", + "node_modules/connect/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "devOptional": true + }, + "node_modules/console-control-strings": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", + "integrity": "sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ==", "dev": true }, - "content-disposition": { + "node_modules/content-disposition": { "version": "0.5.4", "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz", "integrity": "sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==", - "dev": true, - "requires": { + "dependencies": { "safe-buffer": "5.2.1" + }, + "engines": { + "node": ">= 0.6" } }, - "content-type": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.5.tgz", - "integrity": "sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==", - "dev": true - }, - "convert-source-map": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.9.0.tgz", - "integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==", - "dev": true - }, - "cookie": { - "version": "0.4.2", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.2.tgz", - "integrity": "sha512-aSWTXFzaKWkvHO1Ny/s+ePFpvKsPnjc551iI41v3ny/ow6tBG5Vd+FuqGNhh1LxOmVzOlGUriIlOaokOvhaStA==", - "dev": true - }, - "cookie-signature": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", - "integrity": "sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==", - "dev": true - }, - "copy-concurrently": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/copy-concurrently/-/copy-concurrently-1.0.5.tgz", - "integrity": "sha512-f2domd9fsVDFtaFcbaRZuYXwtdmnzqbADSwhSWYxYB/Q8zsdUUFMXVRwXGDMWmbEzAn1kdRrtI1T/KTFOL4X2A==", - "dev": true, - "requires": { - "aproba": "^1.1.1", - "fs-write-stream-atomic": "^1.0.8", - "iferr": "^0.1.5", - "mkdirp": "^0.5.1", - "rimraf": "^2.5.4", - "run-queue": "^1.0.0" - }, - "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" - } - } - } - }, - "copy-descriptor": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz", - "integrity": "sha512-XgZ0pFcakEUlbwQEVNg3+QAis1FyTL3Qel9FYy8pSkQqoG3PNoT0bOCQtOXcOkur21r2Eq2kI+IE+gsmAEVlYw==", - "dev": true - }, - "copy-webpack-plugin": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/copy-webpack-plugin/-/copy-webpack-plugin-6.0.3.tgz", - "integrity": "sha512-q5m6Vz4elsuyVEIUXr7wJdIdePWTubsqVbEMvf1WQnHGv0Q+9yPRu7MtYFPt+GBOXRav9lvIINifTQ1vSCs+eA==", - "dev": true, - "requires": { - "cacache": "^15.0.4", - "fast-glob": "^3.2.4", - "find-cache-dir": "^3.3.1", - "glob-parent": "^5.1.1", - "globby": "^11.0.1", - "loader-utils": "^2.0.0", - "normalize-path": "^3.0.0", - "p-limit": "^3.0.1", - "schema-utils": "^2.7.0", - "serialize-javascript": "^4.0.0", - "webpack-sources": "^1.4.3" - }, - "dependencies": { - "cacache": { - "version": "15.3.0", - "resolved": "https://registry.npmjs.org/cacache/-/cacache-15.3.0.tgz", - "integrity": "sha512-VVdYzXEn+cnbXpFgWs5hTT7OScegHVmLhJIR8Ufqk3iFD6A6j5iSX1KuBTfNEv4tdJWE2PzA6IVFtcLC7fN9wQ==", - "dev": true, - "requires": { - "@npmcli/fs": "^1.0.0", - "@npmcli/move-file": "^1.0.1", - "chownr": "^2.0.0", - "fs-minipass": "^2.0.0", - "glob": "^7.1.4", - "infer-owner": "^1.0.4", - "lru-cache": "^6.0.0", - "minipass": "^3.1.1", - "minipass-collect": "^1.0.2", - "minipass-flush": "^1.0.5", - "minipass-pipeline": "^1.2.2", - "mkdirp": "^1.0.3", - "p-map": "^4.0.0", - "promise-inflight": "^1.0.1", - "rimraf": "^3.0.2", - "ssri": "^8.0.1", - "tar": "^6.0.2", - "unique-filename": "^1.1.1" - } - }, - "chownr": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", - "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==", - "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" - } - }, - "mkdirp": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", - "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", - "dev": true - }, - "p-map": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", - "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", - "dev": true, - "requires": { - "aggregate-error": "^3.0.0" - } - }, - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - } - } - }, - "core-js": { - "version": "3.6.4", - "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.6.4.tgz", - "integrity": "sha512-4paDGScNgZP2IXXilaffL9X7968RuvwlkK3xWtZRVqgd8SYNiVKRJvkFd1aqqEuPfN7E68ZHEp9hDj6lHj4Hyw==", - "dev": true - }, - "core-js-compat": { - "version": "3.29.1", - "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.29.1.tgz", - "integrity": "sha512-QmchCua884D8wWskMX8tW5ydINzd8oSJVx38lx/pVkFGqztxt73GYre3pm/hyYq8bPf+MW5In4I/uRShFDsbrA==", - "dev": true, - "requires": { - "browserslist": "^4.21.5" + "node_modules/content-type": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.5.tgz", + "integrity": "sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==", + "engines": { + "node": ">= 0.6" } }, - "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 + "node_modules/convert-source-map": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.9.0.tgz", + "integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==" }, - "cosmiconfig": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-5.2.1.tgz", - "integrity": "sha512-H65gsXo1SKjf8zmrJ67eJk8aIRKV5ff2D4uKZIBZShbhGSpEmsQOPW/SKMKYhSTrqR7ufy6RP69rPogdaPh/kA==", - "dev": true, - "requires": { - "import-fresh": "^2.0.0", - "is-directory": "^0.3.1", - "js-yaml": "^3.13.1", - "parse-json": "^4.0.0" + "node_modules/cookie": { + "version": "0.7.2", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.7.2.tgz", + "integrity": "sha512-yki5XnKuf750l50uGTllt6kKILY4nQ1eNIQatoXEByZ5dWgnKqbnqmTrBE5B4N7lrMJKQ2ytWMiTO2o0v6Ew/w==", + "devOptional": true, + "engines": { + "node": ">= 0.6" } }, - "create-ecdh": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/create-ecdh/-/create-ecdh-4.0.4.tgz", - "integrity": "sha512-mf+TCx8wWc9VpuxfP2ht0iSISLZnt0JgWlrOKZiNqyUZWnjIaCIVNQArMHnCZKfEYRg6IM7A+NeJoN8gf/Ws0A==", - "dev": true, - "requires": { - "bn.js": "^4.1.0", - "elliptic": "^6.5.3" - }, + "node_modules/cookie-signature": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", + "integrity": "sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==" + }, + "node_modules/copy-anything": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/copy-anything/-/copy-anything-2.0.6.tgz", + "integrity": "sha512-1j20GZTsvKNkc4BY3NpMOM8tt///wY3FpIzozTOFO2ffuZcV61nojHXVKIy3WM+7ADCy5FVhdZYHYDdgTU0yJw==", "dependencies": { - "bn.js": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", - "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", - "dev": true - } + "is-what": "^3.14.1" + }, + "funding": { + "url": "https://github.com/sponsors/mesqueeb" } }, - "create-hash": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz", - "integrity": "sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==", - "dev": true, - "requires": { - "cipher-base": "^1.0.1", - "inherits": "^2.0.1", - "md5.js": "^1.3.4", - "ripemd160": "^2.0.1", - "sha.js": "^2.4.0" + "node_modules/copy-webpack-plugin": { + "version": "11.0.0", + "resolved": "https://registry.npmjs.org/copy-webpack-plugin/-/copy-webpack-plugin-11.0.0.tgz", + "integrity": "sha512-fX2MWpamkW0hZxMEg0+mYnA40LTosOSa5TqZ9GYIBzyJa9C3QUaMPSE2xAi/buNr8u89SfD9wHSQVBzrRa/SOQ==", + "dependencies": { + "fast-glob": "^3.2.11", + "glob-parent": "^6.0.1", + "globby": "^13.1.1", + "normalize-path": "^3.0.0", + "schema-utils": "^4.0.0", + "serialize-javascript": "^6.0.0" + }, + "engines": { + "node": ">= 14.15.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^5.1.0" } }, - "create-hmac": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz", - "integrity": "sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==", - "dev": true, - "requires": { - "cipher-base": "^1.0.3", - "create-hash": "^1.1.0", - "inherits": "^2.0.1", - "ripemd160": "^2.0.0", - "safe-buffer": "^5.0.1", - "sha.js": "^2.4.8" + "node_modules/copy-webpack-plugin/node_modules/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==", + "dependencies": { + "is-glob": "^4.0.3" + }, + "engines": { + "node": ">=10.13.0" } }, - "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" - }, - "dependencies": { - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "dev": true - } + "node_modules/copy-webpack-plugin/node_modules/schema-utils": { + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.3.2.tgz", + "integrity": "sha512-Gn/JaSk/Mt9gYubxTtSn/QCV4em9mpAPiR1rqy/Ocu19u/G9J5WWdNoUT4SiV6mFC3y6cxyFcFwdzPM3FgxGAQ==", + "dependencies": { + "@types/json-schema": "^7.0.9", + "ajv": "^8.9.0", + "ajv-formats": "^2.1.1", + "ajv-keywords": "^5.1.0" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" } }, - "crypto-browserify": { - "version": "3.12.0", - "resolved": "https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-3.12.0.tgz", - "integrity": "sha512-fz4spIh+znjO2VjL+IdhEpRJ3YN6sMzITSBijk6FK2UvTqruSQW+/cCZTSNsMiZNvUeq0CqurF+dAbyiGOY6Wg==", - "dev": true, - "requires": { - "browserify-cipher": "^1.0.0", - "browserify-sign": "^4.0.0", - "create-ecdh": "^4.0.0", - "create-hash": "^1.1.0", - "create-hmac": "^1.1.0", - "diffie-hellman": "^5.0.0", - "inherits": "^2.0.1", - "pbkdf2": "^3.0.3", - "public-encrypt": "^4.0.0", - "randombytes": "^2.0.0", - "randomfill": "^1.0.3" + "node_modules/core-js-compat": { + "version": "3.41.0", + "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.41.0.tgz", + "integrity": "sha512-RFsU9LySVue9RTwdDVX/T0e2Y6jRYWXERKElIjpuEOEnxaXffI0X7RUwVzfYLfzuLXSNJDYoRYUAmRUcyln20A==", + "dependencies": { + "browserslist": "^4.24.4" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/core-js" } }, - "crypto-random-string": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-2.0.0.tgz", - "integrity": "sha512-v1plID3y9r/lPhviJ1wrXpLeyUIGAZ2SHNYTEapm7/8A9nLPoyvVp3RK/EPFqn5kEznyWgYZNsRtYYIWbuG8KA==", - "dev": true + "node_modules/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==" }, - "css": { - "version": "2.2.4", - "resolved": "https://registry.npmjs.org/css/-/css-2.2.4.tgz", - "integrity": "sha512-oUnjmWpy0niI3x/mPL8dVEI1l7MnG3+HHyRPHf+YFSbK+svOhXpmSOcDURUh2aOCgl2grzrOPt1nHLuCVFULLw==", - "dev": true, - "requires": { - "inherits": "^2.0.3", - "source-map": "^0.6.1", - "source-map-resolve": "^0.5.2", - "urix": "^0.1.0" - }, + "node_modules/cors": { + "version": "2.8.5", + "resolved": "https://registry.npmjs.org/cors/-/cors-2.8.5.tgz", + "integrity": "sha512-KIHbLJqu73RGr/hnbrO9uBeixNGuvSQjul/jdFvS/KFSIH1hWVd1ng7zOHx+YrEfInLG7q4n6GHQ9cDtxv/P6g==", + "devOptional": true, "dependencies": { - "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-resolve": { - "version": "0.5.3", - "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.3.tgz", - "integrity": "sha512-Htz+RnsXWk5+P2slx5Jh3Q66vhQj1Cllm0zvnaY98+NFx+Dv2CF/f5O/t8x+KaNdrdIAsruNzoh/KpialbqAnw==", - "dev": true, - "requires": { - "atob": "^2.1.2", - "decode-uri-component": "^0.2.0", - "resolve-url": "^0.2.1", - "source-map-url": "^0.4.0", - "urix": "^0.1.0" - } - } + "object-assign": "^4", + "vary": "^1" + }, + "engines": { + "node": ">= 0.10" } }, - "css-color-names": { - "version": "0.0.4", - "resolved": "https://registry.npmjs.org/css-color-names/-/css-color-names-0.0.4.tgz", - "integrity": "sha512-zj5D7X1U2h2zsXOAM8EyUREBnnts6H+Jm+d1M2DbiQQcUtnqgQsMrdo8JW9R80YFUmIdBZeMu5wvYM7hcgWP/Q==", - "dev": true - }, - "css-declaration-sorter": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/css-declaration-sorter/-/css-declaration-sorter-4.0.1.tgz", - "integrity": "sha512-BcxQSKTSEEQUftYpBVnsH4SF05NTuBokb19/sBt6asXGKZ/6VP7PLG1CBCkFDYOnhXhPh0jMhO6xZ71oYHXHBA==", - "dev": true, - "requires": { - "postcss": "^7.0.1", - "timsort": "^0.3.0" + "node_modules/cosmiconfig": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.1.0.tgz", + "integrity": "sha512-AdmX6xUzdNASswsFtmwSt7Vj8po9IuqXm0UXz7QKPuEUmPB4XyjGfaAr2PSuELMwkRMVH1EpIkX5bTZGRB3eCA==", + "dependencies": { + "@types/parse-json": "^4.0.0", + "import-fresh": "^3.2.1", + "parse-json": "^5.0.0", + "path-type": "^4.0.0", + "yaml": "^1.10.0" + }, + "engines": { + "node": ">=10" } }, - "css-loader": { - "version": "3.5.1", - "resolved": "https://registry.npmjs.org/css-loader/-/css-loader-3.5.1.tgz", - "integrity": "sha512-0G4CbcZzQ9D1Q6ndOfjFuMDo8uLYMu5vc9Abs5ztyHcKvmil6GJrMiNjzzi3tQvUF+mVRuDg7bE6Oc0Prolgig==", - "dev": true, - "requires": { - "camelcase": "^5.3.1", - "cssesc": "^3.0.0", - "icss-utils": "^4.1.1", - "loader-utils": "^1.2.3", - "normalize-path": "^3.0.0", - "postcss": "^7.0.27", - "postcss-modules-extract-imports": "^2.0.0", - "postcss-modules-local-by-default": "^3.0.2", - "postcss-modules-scope": "^2.2.0", - "postcss-modules-values": "^3.0.0", - "postcss-value-parser": "^4.0.3", - "schema-utils": "^2.6.5", - "semver": "^6.3.0" - }, + "node_modules/critters": { + "version": "0.0.16", + "resolved": "https://registry.npmjs.org/critters/-/critters-0.0.16.tgz", + "integrity": "sha512-JwjgmO6i3y6RWtLYmXwO5jMd+maZt8Tnfu7VVISmEWyQqfLpB8soBswf8/2bu6SBXxtKA68Al3c+qIG1ApT68A==", "dependencies": { - "json5": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz", - "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==", - "dev": true, - "requires": { - "minimist": "^1.2.0" - } - }, - "loader-utils": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.2.tgz", - "integrity": "sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==", - "dev": true, - "requires": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^1.0.1" - } - }, - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - } + "chalk": "^4.1.0", + "css-select": "^4.2.0", + "parse5": "^6.0.1", + "parse5-htmlparser2-tree-adapter": "^6.0.1", + "postcss": "^8.3.7", + "pretty-bytes": "^5.3.0" } }, - "css-parse": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/css-parse/-/css-parse-2.0.0.tgz", - "integrity": "sha512-UNIFik2RgSbiTwIW1IsFwXWn6vs+bYdq83LKTSOsx7NJR7WII9dxewkHLltfTLVppoUApHV0118a4RZRI9FLwA==", - "dev": true, - "requires": { - "css": "^2.0.0" + "node_modules/critters/node_modules/parse5": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", + "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==" + }, + "node_modules/cross-spawn": { + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", + "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==", + "dependencies": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + }, + "engines": { + "node": ">= 8" } }, - "css-select": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/css-select/-/css-select-2.1.0.tgz", - "integrity": "sha512-Dqk7LQKpwLoH3VovzZnkzegqNSuAziQyNZUcrdDM401iY+R5NkGBXGmtO05/yaXQziALuPogeG0b7UAgjnTJTQ==", - "dev": true, - "requires": { - "boolbase": "^1.0.0", - "css-what": "^3.2.1", - "domutils": "^1.7.0", - "nth-check": "^1.0.2" + "node_modules/cross-spawn/node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" } }, - "css-select-base-adapter": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/css-select-base-adapter/-/css-select-base-adapter-0.1.1.tgz", - "integrity": "sha512-jQVeeRG70QI08vSTwf1jHxp74JoZsr2XSgETae8/xC8ovSnL2WF87GTLO86Sbwdt2lK4Umg4HnnwMO4YF3Ce7w==", - "dev": true + "node_modules/css-blank-pseudo": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/css-blank-pseudo/-/css-blank-pseudo-3.0.3.tgz", + "integrity": "sha512-VS90XWtsHGqoM0t4KpH053c4ehxZ2E6HtGI7x68YFV0pTo/QmkV/YFA+NnlvK8guxZVNWGQhVNJGC39Q8XF4OQ==", + "dependencies": { + "postcss-selector-parser": "^6.0.9" + }, + "bin": { + "css-blank-pseudo": "dist/cli.cjs" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "peerDependencies": { + "postcss": "^8.4" + } }, - "css-selector-tokenizer": { - "version": "0.7.3", - "resolved": "https://registry.npmjs.org/css-selector-tokenizer/-/css-selector-tokenizer-0.7.3.tgz", - "integrity": "sha512-jWQv3oCEL5kMErj4wRnK/OPoBi0D+P1FR2cDCKYPaMeD2eW3/mttav8HT4hT1CKopiJI/psEULjkClhvJo4Lvg==", - "dev": true, - "requires": { + "node_modules/css-blank-pseudo/node_modules/postcss-selector-parser": { + "version": "6.1.2", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.1.2.tgz", + "integrity": "sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg==", + "dependencies": { "cssesc": "^3.0.0", - "fastparse": "^1.1.2" + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" } }, - "css-tree": { - "version": "1.0.0-alpha.37", - "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-1.0.0-alpha.37.tgz", - "integrity": "sha512-DMxWJg0rnz7UgxKT0Q1HU/L9BeJI0M6ksor0OgqOnF+aRCDWg/N2641HmVyU9KVIu0OVVWOb2IpC9A+BJRnejg==", - "dev": true, - "requires": { - "mdn-data": "2.0.4", - "source-map": "^0.6.1" - }, + "node_modules/css-has-pseudo": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/css-has-pseudo/-/css-has-pseudo-3.0.4.tgz", + "integrity": "sha512-Vse0xpR1K9MNlp2j5w1pgWIJtm1a8qS0JwS9goFYcImjlHEmywP9VUF05aGBXzGpDJF86QXk4L0ypBmwPhGArw==", "dependencies": { - "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 - } + "postcss-selector-parser": "^6.0.9" + }, + "bin": { + "css-has-pseudo": "dist/cli.cjs" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "peerDependencies": { + "postcss": "^8.4" } }, - "css-what": { - "version": "3.4.2", - "resolved": "https://registry.npmjs.org/css-what/-/css-what-3.4.2.tgz", - "integrity": "sha512-ACUm3L0/jiZTqfzRM3Hi9Q8eZqd6IK37mMWPLz9PJxkLWllYeRf+EHUSHYEtFop2Eqytaq1FizFVh7XfBnXCDQ==", - "dev": true - }, - "cssauron": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/cssauron/-/cssauron-1.4.0.tgz", - "integrity": "sha512-Ht70DcFBh+/ekjVrYS2PlDMdSQEl3OFNmjK6lcn49HptBgilXf/Zwg4uFh9Xn0pX3Q8YOkSjIFOfK2osvdqpBw==", - "dev": true, - "requires": { - "through": "X.X.X" + "node_modules/css-has-pseudo/node_modules/postcss-selector-parser": { + "version": "6.1.2", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.1.2.tgz", + "integrity": "sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg==", + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" } }, - "cssesc": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", - "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", - "dev": true - }, - "cssnano": { - "version": "4.1.10", - "resolved": "https://registry.npmjs.org/cssnano/-/cssnano-4.1.10.tgz", - "integrity": "sha512-5wny+F6H4/8RgNlaqab4ktc3e0/blKutmq8yNlBFXA//nSFFAqAngjNVRzUvCgYROULmZZUoosL/KSoZo5aUaQ==", - "dev": true, - "requires": { - "cosmiconfig": "^5.0.0", - "cssnano-preset-default": "^4.0.7", - "is-resolvable": "^1.0.0", - "postcss": "^7.0.0" + "node_modules/css-loader": { + "version": "6.7.1", + "resolved": "https://registry.npmjs.org/css-loader/-/css-loader-6.7.1.tgz", + "integrity": "sha512-yB5CNFa14MbPJcomwNh3wLThtkZgcNyI2bNMRt8iE5Z8Vwl7f8vQXFAzn2HDOJvtDq2NTZBUGMSUNNyrv3/+cw==", + "dependencies": { + "icss-utils": "^5.1.0", + "postcss": "^8.4.7", + "postcss-modules-extract-imports": "^3.0.0", + "postcss-modules-local-by-default": "^4.0.0", + "postcss-modules-scope": "^3.0.0", + "postcss-modules-values": "^4.0.0", + "postcss-value-parser": "^4.2.0", + "semver": "^7.3.5" + }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^5.0.0" } }, - "cssnano-preset-default": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/cssnano-preset-default/-/cssnano-preset-default-4.0.8.tgz", - "integrity": "sha512-LdAyHuq+VRyeVREFmuxUZR1TXjQm8QQU/ktoo/x7bz+SdOge1YKc5eMN6pRW7YWBmyq59CqYba1dJ5cUukEjLQ==", - "dev": true, - "requires": { - "css-declaration-sorter": "^4.0.1", - "cssnano-util-raw-cache": "^4.0.1", - "postcss": "^7.0.0", - "postcss-calc": "^7.0.1", - "postcss-colormin": "^4.0.3", - "postcss-convert-values": "^4.0.1", - "postcss-discard-comments": "^4.0.2", - "postcss-discard-duplicates": "^4.0.2", - "postcss-discard-empty": "^4.0.1", - "postcss-discard-overridden": "^4.0.1", - "postcss-merge-longhand": "^4.0.11", - "postcss-merge-rules": "^4.0.3", - "postcss-minify-font-values": "^4.0.2", - "postcss-minify-gradients": "^4.0.2", - "postcss-minify-params": "^4.0.2", - "postcss-minify-selectors": "^4.0.2", - "postcss-normalize-charset": "^4.0.1", - "postcss-normalize-display-values": "^4.0.2", - "postcss-normalize-positions": "^4.0.2", - "postcss-normalize-repeat-style": "^4.0.2", - "postcss-normalize-string": "^4.0.2", - "postcss-normalize-timing-functions": "^4.0.2", - "postcss-normalize-unicode": "^4.0.1", - "postcss-normalize-url": "^4.0.1", - "postcss-normalize-whitespace": "^4.0.2", - "postcss-ordered-values": "^4.1.2", - "postcss-reduce-initial": "^4.0.3", - "postcss-reduce-transforms": "^4.0.2", - "postcss-svgo": "^4.0.3", - "postcss-unique-selectors": "^4.0.1" - } - }, - "cssnano-util-get-arguments": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/cssnano-util-get-arguments/-/cssnano-util-get-arguments-4.0.0.tgz", - "integrity": "sha512-6RIcwmV3/cBMG8Aj5gucQRsJb4vv4I4rn6YjPbVWd5+Pn/fuG+YseGvXGk00XLkoZkaj31QOD7vMUpNPC4FIuw==", - "dev": true - }, - "cssnano-util-get-match": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/cssnano-util-get-match/-/cssnano-util-get-match-4.0.0.tgz", - "integrity": "sha512-JPMZ1TSMRUPVIqEalIBNoBtAYbi8okvcFns4O0YIhcdGebeYZK7dMyHJiQ6GqNBA9kE0Hym4Aqym5rPdsV/4Cw==", - "dev": true + "node_modules/css-prefers-color-scheme": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/css-prefers-color-scheme/-/css-prefers-color-scheme-6.0.3.tgz", + "integrity": "sha512-4BqMbZksRkJQx2zAjrokiGMd07RqOa2IxIrrN10lyBe9xhn9DEvjUK79J6jkeiv9D9hQFXKb6g1jwU62jziJZA==", + "bin": { + "css-prefers-color-scheme": "dist/cli.cjs" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "peerDependencies": { + "postcss": "^8.4" + } }, - "cssnano-util-raw-cache": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/cssnano-util-raw-cache/-/cssnano-util-raw-cache-4.0.1.tgz", - "integrity": "sha512-qLuYtWK2b2Dy55I8ZX3ky1Z16WYsx544Q0UWViebptpwn/xDBmog2TLg4f+DBMg1rJ6JDWtn96WHbOKDWt1WQA==", - "dev": true, - "requires": { - "postcss": "^7.0.0" + "node_modules/css-select": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/css-select/-/css-select-4.3.0.tgz", + "integrity": "sha512-wPpOYtnsVontu2mODhA19JrqWxNsfdatRKd64kmpRbQgh1KtItko5sTnEpPdpSaJszTOhEMlF/RPz28qj4HqhQ==", + "dependencies": { + "boolbase": "^1.0.0", + "css-what": "^6.0.1", + "domhandler": "^4.3.1", + "domutils": "^2.8.0", + "nth-check": "^2.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/fb55" } }, - "cssnano-util-same-parent": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/cssnano-util-same-parent/-/cssnano-util-same-parent-4.0.1.tgz", - "integrity": "sha512-WcKx5OY+KoSIAxBW6UBBRay1U6vkYheCdjyVNDm85zt5K9mHoGOfsOsqIszfAqrQQFIIKgjh2+FDgIj/zsl21Q==", - "dev": true + "node_modules/css-what": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/css-what/-/css-what-6.1.0.tgz", + "integrity": "sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw==", + "engines": { + "node": ">= 6" + }, + "funding": { + "url": "https://github.com/sponsors/fb55" + } }, - "csso": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/csso/-/csso-4.2.0.tgz", - "integrity": "sha512-wvlcdIbf6pwKEk7vHj8/Bkc0B4ylXZruLvOgs9doS5eOsOpuodOV2zJChSpkp+pRpYQLQMeF04nr3Z68Sta9jA==", - "dev": true, - "requires": { - "css-tree": "^1.1.2" - }, - "dependencies": { - "css-tree": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-1.1.3.tgz", - "integrity": "sha512-tRpdppF7TRazZrjJ6v3stzv93qxRcSsFmW6cX0Zm2NVKpxE1WV1HblnghVv9TreireHkqI/VDEsfolRF1p6y7Q==", - "dev": true, - "requires": { - "mdn-data": "2.0.14", - "source-map": "^0.6.1" - } - }, - "mdn-data": { - "version": "2.0.14", - "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.14.tgz", - "integrity": "sha512-dn6wd0uw5GsdswPFfsgMp5NSB0/aDe6fK94YJV/AJDYXL6HVLWBsxeq7js7Ad+mU2K9LAlwpk6kN2D5mwCPVow==", - "dev": true + "node_modules/cssdb": { + "version": "7.11.2", + "resolved": "https://registry.npmjs.org/cssdb/-/cssdb-7.11.2.tgz", + "integrity": "sha512-lhQ32TFkc1X4eTefGfYPvgovRSzIMofHkigfH8nWtyRL4XJLsRhJFreRvEgKzept7x1rjBuy3J/MurXLaFxW/A==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" }, - "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 + { + "type": "github", + "url": "https://github.com/sponsors/csstools" } + ] + }, + "node_modules/cssesc": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", + "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", + "bin": { + "cssesc": "bin/cssesc" + }, + "engines": { + "node": ">=4" } }, - "cuint": { + "node_modules/cuint": { "version": "0.2.2", "resolved": "https://registry.npmjs.org/cuint/-/cuint-0.2.2.tgz", - "integrity": "sha512-d4ZVpCW31eWwCMe1YT3ur7mUDnTXbgwyzaL320DrcRT45rfjYxkt5QWLrmOJ+/UEAI2+fQgKe/fCjR8l4TpRgw==", - "dev": true + "integrity": "sha512-d4ZVpCW31eWwCMe1YT3ur7mUDnTXbgwyzaL320DrcRT45rfjYxkt5QWLrmOJ+/UEAI2+fQgKe/fCjR8l4TpRgw==" }, - "custom-event": { + "node_modules/custom-event": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/custom-event/-/custom-event-1.0.1.tgz", "integrity": "sha512-GAj5FOq0Hd+RsCGVJxZuKaIDXDf3h6GQoNEjFgbLLI/trgtavwUbSnZ5pVfg27DVCaWjIohryS0JFwIJyT2cMg==", - "dev": true - }, - "cyclist": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/cyclist/-/cyclist-1.0.1.tgz", - "integrity": "sha512-NJGVKPS81XejHcLhaLJS7plab0fK3slPh11mESeeDq2W4ZI5kUKK/LRRdVDvjJseojbPB7ZwjnyOybg3Igea/A==", - "dev": true - }, - "damerau-levenshtein": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/damerau-levenshtein/-/damerau-levenshtein-1.0.8.tgz", - "integrity": "sha512-sdQSFB7+llfUcQHUQO3+B8ERRj0Oa4w9POWMI/puGtuf7gFywGmkaLCElnudfTiKZV+NvHqL0ifzdrI8Ro7ESA==", - "dev": true - }, - "dashdash": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", - "integrity": "sha512-jRFi8UDGo6j+odZiEpjazZaWqEal3w/basFjQHQEwVtZJGDpxbH1MeYluwCS8Xq5wmLJooDlMgvVarmWfGM44g==", - "dev": true, - "requires": { - "assert-plus": "^1.0.0" - } + "devOptional": true }, - "date-format": { + "node_modules/date-format": { "version": "4.0.14", "resolved": "https://registry.npmjs.org/date-format/-/date-format-4.0.14.tgz", "integrity": "sha512-39BOQLs9ZjKh0/patS9nrT8wc3ioX3/eA/zgbKNopnF2wCqJEoxywwwElATYvRsXdnOxA/OQeQoFZ3rFjVajhg==", - "dev": true - }, - "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" + "devOptional": true, + "engines": { + "node": ">=4.0" } }, - "debuglog": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/debuglog/-/debuglog-1.0.1.tgz", - "integrity": "sha512-syBZ+rnAK3EgMsH2aYEOLUW7mZSY9Gb+0wUMCFsZvcmiz+HigA0LOcq/HoQqVuGG+EKykunc7QG2bzrponfaSw==", - "dev": true - }, - "decamelize": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", - "integrity": "sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA==", - "dev": true + "node_modules/debug": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } }, - "decode-uri-component": { + "node_modules/decode-uri-component": { "version": "0.2.2", "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.2.tgz", "integrity": "sha512-FqUYQ+8o158GyGTrMFJms9qh3CqTKvAqgqsTnkLI8sKu0028orqBhxNMFkFen0zGyg6epACD32pjVk58ngIErQ==", - "dev": true - }, - "decompress-response": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-3.3.0.tgz", - "integrity": "sha512-BzRPQuY1ip+qDonAOz42gRm/pg9F768C+npV/4JOsxRC2sq+Rlk+Q4ZCAsOhnIaMrgarILY+RMUIvMmmX1qAEA==", - "dev": true, - "requires": { - "mimic-response": "^1.0.0" - } - }, - "deep-equal": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-1.1.1.tgz", - "integrity": "sha512-yd9c5AdiqVcR+JjcwUQb9DkhJc8ngNr0MahEBGvDiJw8puWab2yZlh+nkasOnZP+EGTAP6rRp2JzJhJZzvNF8g==", - "dev": true, - "requires": { - "is-arguments": "^1.0.4", - "is-date-object": "^1.0.1", - "is-regex": "^1.0.4", - "object-is": "^1.0.1", - "object-keys": "^1.1.1", - "regexp.prototype.flags": "^1.2.0" + "engines": { + "node": ">=0.10" } }, - "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==", - "dev": true - }, - "default-gateway": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/default-gateway/-/default-gateway-4.2.0.tgz", - "integrity": "sha512-h6sMrVB1VMWVrW13mSc6ia/DwYYw5MN6+exNu1OaJeFac5aSAvwM7lZ0NVfTABuSkQelr4h5oebg3KB1XPdjgA==", - "dev": true, - "requires": { - "execa": "^1.0.0", - "ip-regex": "^2.1.0" + "node_modules/deepmerge": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.1.tgz", + "integrity": "sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==", + "engines": { + "node": ">=0.10.0" } }, - "default-require-extensions": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/default-require-extensions/-/default-require-extensions-2.0.0.tgz", - "integrity": "sha512-B0n2zDIXpzLzKeoEozorDSa1cHc1t0NjmxP0zuAxbizNU2MBqYJJKYXrrFdKuQliojXynrxgd7l4ahfg/+aA5g==", - "dev": true, - "requires": { - "strip-bom": "^3.0.0" + "node_modules/default-gateway": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/default-gateway/-/default-gateway-6.0.3.tgz", + "integrity": "sha512-fwSOJsbbNzZ/CUFpqFBqYfYNLj1NbMPm8MMCIzHjC83iSJRBEGmDUxU+WP661BaBQImeC2yHwXtz+P/O9o+XEg==", + "dependencies": { + "execa": "^5.0.0" + }, + "engines": { + "node": ">= 10" } }, - "defaults": { + "node_modules/defaults": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/defaults/-/defaults-1.0.4.tgz", "integrity": "sha512-eFuaLoy/Rxalv2kr+lqMlUnrDWV+3j4pljOIJgLIhI058IQfWJ7vXhyEIHu+HtC738klGALYxOKDO0bQP3tg8A==", - "dev": true, - "requires": { + "dependencies": { "clone": "^1.0.2" }, - "dependencies": { - "clone": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz", - "integrity": "sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg==", - "dev": true - } - } - }, - "defer-to-connect": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/defer-to-connect/-/defer-to-connect-1.1.3.tgz", - "integrity": "sha512-0ISdNousHvZT2EiFlZeZAHBUvSxmKswVCEf8hW7KWgG4a8MVEu/3Vb6uWYozkjylyCxe0JBIiRB1jV45S70WVQ==", - "dev": true - }, - "define-properties": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.2.0.tgz", - "integrity": "sha512-xvqAVKGfT1+UAvPwKTVw/njhdQ8ZhXK4lI0bCIuCMrp2up9nPnaDftrLtmpTazqd1o+UY4zgzU+avtMbDP+ldA==", - "dev": true, - "requires": { - "has-property-descriptors": "^1.0.0", - "object-keys": "^1.1.1" - } - }, - "define-property": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz", - "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==", - "dev": true, - "requires": { - "is-descriptor": "^1.0.2", - "isobject": "^3.0.1" + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "del": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/del/-/del-2.2.2.tgz", - "integrity": "sha512-Z4fzpbIRjOu7lO5jCETSWoqUDVe0IPOlfugBsF6suen2LKDlVb4QZpKEM9P+buNJ4KI1eN7I083w/pbKUpsrWQ==", - "dev": true, - "requires": { - "globby": "^5.0.0", - "is-path-cwd": "^1.0.0", - "is-path-in-cwd": "^1.0.0", - "object-assign": "^4.0.1", - "pify": "^2.0.0", - "pinkie-promise": "^2.0.0", - "rimraf": "^2.2.8" - }, - "dependencies": { - "array-union": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz", - "integrity": "sha512-Dxr6QJj/RdU/hCaBjOfxW+q6lyuVE6JFWIrAUpuOOhoJJoQ99cUn3igRaHVB5P9WrgFVN0FfArM3x0cueOU8ng==", - "dev": true, - "requires": { - "array-uniq": "^1.0.1" - } - }, - "globby": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/globby/-/globby-5.0.0.tgz", - "integrity": "sha512-HJRTIH2EeH44ka+LWig+EqT2ONSYpVlNfx6pyd592/VF1TbfljJ7elwie7oSwcViLGqOdWocSdu2txwBF9bjmQ==", - "dev": true, - "requires": { - "array-union": "^1.0.1", - "arrify": "^1.0.0", - "glob": "^7.0.3", - "object-assign": "^4.0.1", - "pify": "^2.0.0", - "pinkie-promise": "^2.0.0" - } - }, - "pify": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==", - "dev": true - }, - "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" - } - } + "node_modules/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==", + "engines": { + "node": ">=8" } }, - "delayed-stream": { + "node_modules/delegates": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", - "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==", + "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", + "integrity": "sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ==", "dev": true }, - "depd": { + "node_modules/depd": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==", - "dev": true - }, - "dependency-graph": { - "version": "0.7.2", - "resolved": "https://registry.npmjs.org/dependency-graph/-/dependency-graph-0.7.2.tgz", - "integrity": "sha512-KqtH4/EZdtdfWX0p6MGP9jljvxSY6msy/pRUD4jgNwVpv3v1QmNLlsB3LDSSUg79BRVSn7jI1QPRtArGABovAQ==", - "dev": true + "engines": { + "node": ">= 0.8" + } }, - "des.js": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/des.js/-/des.js-1.0.1.tgz", - "integrity": "sha512-Q0I4pfFrv2VPd34/vfLrFOoRmlYj3OV50i7fskps1jZWK1kApMWWT9G6RRUeYedLcBDIhnSDaUvJMb3AhUlaEA==", - "dev": true, - "requires": { - "inherits": "^2.0.1", - "minimalistic-assert": "^1.0.0" + "node_modules/dependency-graph": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/dependency-graph/-/dependency-graph-0.11.0.tgz", + "integrity": "sha512-JeMq7fEshyepOWDfcfHK06N3MhyPhz++vtqWhMT5O9A3K42rdsEDpfdVqjaqaAhsw6a+ZqeDvQVtD0hFHQWrzg==", + "engines": { + "node": ">= 0.6.0" } }, - "destroy": { + "node_modules/destroy": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz", "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==", - "dev": true + "engines": { + "node": ">= 0.8", + "npm": "1.2.8000 || >= 1.4.16" + } }, - "detect-node": { + "node_modules/detect-node": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/detect-node/-/detect-node-2.1.0.tgz", - "integrity": "sha512-T0NIuQpnTvFDATNuHN5roPwSBG83rFsuO+MXXH9/3N1eFbn4wcPjttvjMLEPWJ0RGUYgQE7cGgS3tNxbqCGM7g==", - "dev": true - }, - "dezalgo": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/dezalgo/-/dezalgo-1.0.4.tgz", - "integrity": "sha512-rXSP0bf+5n0Qonsb+SVVfNfIsimO4HEtmnIpPHY8Q1UCzKlQrDMfdobr8nJOOsRgWCyMRqeSBQzmWUMq7zvVig==", - "dev": true, - "requires": { - "asap": "^2.0.0", - "wrappy": "1" - } + "integrity": "sha512-T0NIuQpnTvFDATNuHN5roPwSBG83rFsuO+MXXH9/3N1eFbn4wcPjttvjMLEPWJ0RGUYgQE7cGgS3tNxbqCGM7g==" }, - "di": { + "node_modules/di": { "version": "0.0.1", - "resolved": "https://registry.npmjs.org/di/-/di-0.0.1.tgz", - "integrity": "sha512-uJaamHkagcZtHPqCIHZxnFrXlunQXgBOsZSUOWwFw31QJCAbyTBoHMW75YOTur5ZNx8pIeAKgf6GWIgaqqiLhA==", - "dev": true - }, - "diff": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz", - "integrity": "sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==", - "dev": true - }, - "diffie-hellman": { - "version": "5.0.3", - "resolved": "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz", - "integrity": "sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg==", - "dev": true, - "requires": { - "bn.js": "^4.1.0", - "miller-rabin": "^4.0.0", - "randombytes": "^2.0.0" - }, - "dependencies": { - "bn.js": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", - "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", - "dev": true - } - } + "resolved": "https://registry.npmjs.org/di/-/di-0.0.1.tgz", + "integrity": "sha512-uJaamHkagcZtHPqCIHZxnFrXlunQXgBOsZSUOWwFw31QJCAbyTBoHMW75YOTur5ZNx8pIeAKgf6GWIgaqqiLhA==", + "devOptional": true }, - "dir-glob": { + "node_modules/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": { + "dependencies": { "path-type": "^4.0.0" + }, + "engines": { + "node": ">=8" } }, - "dns-equal": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/dns-equal/-/dns-equal-1.0.0.tgz", - "integrity": "sha512-z+paD6YUQsk+AbGCEM4PrOXSss5gd66QfcVBFTKR/HpFL9jCqikS94HYwKww6fQyO7IxrIIyUu+g0Ka9tUS2Cg==", - "dev": true - }, - "dns-packet": { - "version": "1.3.4", - "resolved": "https://registry.npmjs.org/dns-packet/-/dns-packet-1.3.4.tgz", - "integrity": "sha512-BQ6F4vycLXBvdrJZ6S3gZewt6rcrks9KBgM9vrhW+knGRqc8uEdT7fuCwloc7nny5xNoMJ17HGH0R/6fpo8ECA==", - "dev": true, - "requires": { - "ip": "^1.1.0", - "safe-buffer": "^5.0.1" - } - }, - "dns-txt": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/dns-txt/-/dns-txt-2.0.2.tgz", - "integrity": "sha512-Ix5PrWjphuSoUXV/Zv5gaFHjnaJtb02F2+Si3Ht9dyJ87+Z/lMmy+dpNHtTGraNK958ndXq2i+GLkWsWHcKaBQ==", - "dev": true, - "requires": { - "buffer-indexof": "^1.0.0" + "node_modules/dns-packet": { + "version": "5.6.1", + "resolved": "https://registry.npmjs.org/dns-packet/-/dns-packet-5.6.1.tgz", + "integrity": "sha512-l4gcSouhcgIKRvyy99RNVOgxXiicE+2jZoNmaNmZ6JXiGajBOJAesk1OBlJuM5k2c+eudGdLxDqXuPCKIj6kpw==", + "dependencies": { + "@leichtgewicht/ip-codec": "^2.0.1" + }, + "engines": { + "node": ">=6" } }, - "dom-serialize": { + "node_modules/dom-serialize": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/dom-serialize/-/dom-serialize-2.2.1.tgz", "integrity": "sha512-Yra4DbvoW7/Z6LBN560ZwXMjoNOSAN2wRsKFGc4iBeso+mpIA6qj1vfdf9HpMaKAqG6wXTy+1SYEzmNpKXOSsQ==", - "dev": true, - "requires": { + "devOptional": true, + "dependencies": { "custom-event": "~1.0.0", "ent": "~2.2.0", "extend": "^3.0.0", "void-elements": "^2.0.0" } }, - "dom-serializer": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-0.2.2.tgz", - "integrity": "sha512-2/xPb3ORsQ42nHYiSunXkDjPLBaEj/xTwUO4B7XCZQTRk7EBtTOPaygh10YAAh2OI1Qrp6NWfpAhzswj0ydt9g==", - "dev": true, - "requires": { + "node_modules/dom-serializer": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.4.1.tgz", + "integrity": "sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag==", + "dependencies": { "domelementtype": "^2.0.1", + "domhandler": "^4.2.0", "entities": "^2.0.0" }, - "dependencies": { - "domelementtype": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz", - "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==", - "dev": true - } + "funding": { + "url": "https://github.com/cheeriojs/dom-serializer?sponsor=1" } }, - "domain-browser": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/domain-browser/-/domain-browser-1.2.0.tgz", - "integrity": "sha512-jnjyiM6eRyZl2H+W8Q/zLMA481hzi0eszAaBUzIVnmYVDBbnLxVNnfu1HgEBvCbL+71FrxMl3E6lpKH7Ge3OXA==", - "dev": true - }, - "domelementtype": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-1.3.1.tgz", - "integrity": "sha512-BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w==", - "dev": true - }, - "domutils": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/domutils/-/domutils-1.7.0.tgz", - "integrity": "sha512-Lgd2XcJ/NjEw+7tFvfKxOzCYKZsdct5lczQ2ZaQY8Djz7pfAD3Gbp8ySJWtreII/vDlMVmxwa6pHmdxIYgttDg==", - "dev": true, - "requires": { - "dom-serializer": "0", - "domelementtype": "1" - } + "node_modules/domelementtype": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz", + "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/fb55" + } + ] }, - "dot-prop": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-5.3.0.tgz", - "integrity": "sha512-QM8q3zDe58hqUqjraQOmzZ1LIH9SWQJTlEKCH4kJ2oQvLZk7RbQXvtDM2XEq3fwkV9CCvvH4LA0AV+ogFsBM2Q==", - "dev": true, - "requires": { - "is-obj": "^2.0.0" + "node_modules/domhandler": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.3.1.tgz", + "integrity": "sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==", + "dependencies": { + "domelementtype": "^2.2.0" + }, + "engines": { + "node": ">= 4" + }, + "funding": { + "url": "https://github.com/fb55/domhandler?sponsor=1" } }, - "duplexer3": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/duplexer3/-/duplexer3-0.1.5.tgz", - "integrity": "sha512-1A8za6ws41LQgv9HrE/66jyC5yuSjQ3L/KOpFtoBilsAK2iA2wuS5rTt1OCzIvtS2V7nVmedsUU+DGRcjBmOYA==", - "dev": true - }, - "duplexify": { - "version": "3.7.1", - "resolved": "https://registry.npmjs.org/duplexify/-/duplexify-3.7.1.tgz", - "integrity": "sha512-07z8uv2wMyS51kKhD1KsdXJg5WQ6t93RneqRxUHnskXVtlYYkLqM0gqStQZ3pj073g687jPCHrqNfCzawLYh5g==", - "dev": true, - "requires": { - "end-of-stream": "^1.0.0", - "inherits": "^2.0.1", - "readable-stream": "^2.0.0", - "stream-shift": "^1.0.0" + "node_modules/domutils": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-2.8.0.tgz", + "integrity": "sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==", + "dependencies": { + "dom-serializer": "^1.0.1", + "domelementtype": "^2.2.0", + "domhandler": "^4.2.0" + }, + "funding": { + "url": "https://github.com/fb55/domutils?sponsor=1" } }, - "ecc-jsbn": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz", - "integrity": "sha512-eh9O+hwRHNbG4BLTjEl3nw044CkGm5X6LoaCf7LPp7UU8Qrt47JYNi6nPX8xjW97TKGKm1ouctg0QSpZe9qrnw==", - "dev": true, - "requires": { - "jsbn": "~0.1.0", - "safer-buffer": "^2.1.0" + "node_modules/dunder-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.1.tgz", + "integrity": "sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==", + "dependencies": { + "call-bind-apply-helpers": "^1.0.1", + "es-errors": "^1.3.0", + "gopd": "^1.2.0" + }, + "engines": { + "node": ">= 0.4" } }, - "ee-first": { + "node_modules/ee-first": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", - "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==", - "dev": true - }, - "electron-to-chromium": { - "version": "1.4.333", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.333.tgz", - "integrity": "sha512-YyE8+GKyGtPEP1/kpvqsdhD6rA/TP1DUFDN4uiU/YI52NzDxmwHkEb3qjId8hLBa5siJvG0sfC3O66501jMruQ==", - "dev": true + "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==" }, - "elliptic": { - "version": "6.5.4", - "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.4.tgz", - "integrity": "sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ==", - "dev": true, - "requires": { - "bn.js": "^4.11.9", - "brorand": "^1.1.0", - "hash.js": "^1.0.0", - "hmac-drbg": "^1.0.1", - "inherits": "^2.0.4", - "minimalistic-assert": "^1.0.1", - "minimalistic-crypto-utils": "^1.0.1" - }, - "dependencies": { - "bn.js": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", - "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", - "dev": true - } - } + "node_modules/electron-to-chromium": { + "version": "1.5.140", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.140.tgz", + "integrity": "sha512-o82Rj+ONp4Ip7Cl1r7lrqx/pXhbp/lh9DpKcMNscFJdh8ebyRofnc7Sh01B4jx403RI0oqTBvlZ7OBIZLMr2+Q==" }, - "emoji-regex": { + "node_modules/emoji-regex": { "version": "8.0.0", "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" }, - "emojis-list": { + "node_modules/emojis-list": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-3.0.0.tgz", "integrity": "sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==", - "dev": true + "engines": { + "node": ">= 4" + } }, - "encodeurl": { + "node_modules/encodeurl": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==", - "dev": true + "engines": { + "node": ">= 0.8" + } }, - "encoding": { + "node_modules/encoding": { "version": "0.1.13", "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.13.tgz", "integrity": "sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==", "dev": true, - "requires": { - "iconv-lite": "^0.6.2" - }, + "optional": true, "dependencies": { - "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==", - "dev": true, - "requires": { - "safer-buffer": ">= 2.1.2 < 3.0.0" - } - } + "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==", + "node_modules/encoding/node_modules/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==", "dev": true, - "requires": { - "once": "^1.4.0" + "optional": true, + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3.0.0" + }, + "engines": { + "node": ">=0.10.0" } }, - "engine.io": { - "version": "3.6.1", - "resolved": "https://registry.npmjs.org/engine.io/-/engine.io-3.6.1.tgz", - "integrity": "sha512-dfs8EVg/i7QjFsXxn7cCRQ+Wai1G1TlEvHhdYEi80fxn5R1vZ2K661O6v/rezj1FP234SZ14r9CmJke99iYDGg==", - "dev": true, - "requires": { + "node_modules/engine.io": { + "version": "6.6.4", + "resolved": "https://registry.npmjs.org/engine.io/-/engine.io-6.6.4.tgz", + "integrity": "sha512-ZCkIjSYNDyGn0R6ewHDtXgns/Zre/NT6Agvq1/WobF7JXgFff4SeDroKiCO3fNJreU9YG429Sc81o4w5ok/W5g==", + "devOptional": true, + "dependencies": { + "@types/cors": "^2.8.12", + "@types/node": ">=10.0.0", "accepts": "~1.3.4", "base64id": "2.0.0", - "cookie": "~0.4.1", - "debug": "~4.1.0", - "engine.io-parser": "~2.2.0", - "ws": "~7.4.2" - } - }, - "engine.io-client": { - "version": "3.5.3", - "resolved": "https://registry.npmjs.org/engine.io-client/-/engine.io-client-3.5.3.tgz", - "integrity": "sha512-qsgyc/CEhJ6cgMUwxRRtOndGVhIu5hpL5tR4umSpmX/MvkFoIxUTM7oFMDQumHNzlNLwSVy6qhstFPoWTf7dOw==", - "dev": true, - "requires": { - "component-emitter": "~1.3.0", - "component-inherit": "0.0.3", - "debug": "~3.1.0", - "engine.io-parser": "~2.2.0", - "has-cors": "1.1.0", - "indexof": "0.0.1", - "parseqs": "0.0.6", - "parseuri": "0.0.6", - "ws": "~7.4.2", - "xmlhttprequest-ssl": "~1.6.2", - "yeast": "0.1.2" + "cookie": "~0.7.2", + "cors": "~2.8.5", + "debug": "~4.3.1", + "engine.io-parser": "~5.2.1", + "ws": "~8.17.1" }, - "dependencies": { - "debug": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", - "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true - } + "engines": { + "node": ">=10.2.0" } }, - "engine.io-parser": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-2.2.1.tgz", - "integrity": "sha512-x+dN/fBH8Ro8TFwJ+rkB2AmuVw9Yu2mockR/p3W8f8YtExwFgDvBDi0GWyb4ZLkpahtDGZgtr3zLovanJghPqg==", - "dev": true, - "requires": { - "after": "0.8.2", - "arraybuffer.slice": "~0.0.7", - "base64-arraybuffer": "0.1.4", - "blob": "0.0.5", - "has-binary2": "~1.0.2" + "node_modules/engine.io-parser": { + "version": "5.2.3", + "resolved": "https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-5.2.3.tgz", + "integrity": "sha512-HqD3yTBfnBxIrbnM1DoD6Pcq8NECnh8d4As1Qgh0z5Gg3jRRIqijury0CL3ghu/edArpUYiYqQiDUQBIs4np3Q==", + "devOptional": true, + "engines": { + "node": ">=10.0.0" } }, - "enhanced-resolve": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-4.1.1.tgz", - "integrity": "sha512-98p2zE+rL7/g/DzMHMTF4zZlCgeVdJ7yr6xzEpJRYwFYrGi9ANdn5DnJURg6RpBkyk60XYDnWIv51VfIhfNGuA==", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "memory-fs": "^0.5.0", - "tapable": "^1.0.0" + "node_modules/enhanced-resolve": { + "version": "5.18.1", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.18.1.tgz", + "integrity": "sha512-ZSW3ma5GkcQBIpwZTSRAI8N71Uuwgs93IezB7mf7R60tC8ZbJideoDNKjHn2O9KIlx6rkGTTEk1xUCK2E1Y2Yg==", + "dependencies": { + "graceful-fs": "^4.2.4", + "tapable": "^2.2.0" + }, + "engines": { + "node": ">=10.13.0" } }, - "ent": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/ent/-/ent-2.2.0.tgz", - "integrity": "sha512-GHrMyVZQWvTIdDtpiEXdHZnFQKzeO09apj8Cbl4pKWy4i0Oprcq17usfDt5aO63swf0JOeMWjWQE/LzgSRuWpA==", - "dev": true + "node_modules/ent": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/ent/-/ent-2.2.2.tgz", + "integrity": "sha512-kKvD1tO6BM+oK9HzCPpUdRb4vKFQY/FPTFmurMvh6LlN68VMrdj77w8yp51/kDbpkFOS9J8w5W6zIzgM2H8/hw==", + "devOptional": true, + "dependencies": { + "call-bound": "^1.0.3", + "es-errors": "^1.3.0", + "punycode": "^1.4.1", + "safe-regex-test": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + } }, - "entities": { + "node_modules/entities": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==", - "dev": true + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } }, - "err-code": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/err-code/-/err-code-1.1.2.tgz", - "integrity": "sha512-CJAN+O0/yA1CKfRn9SXOGctSpEM7DCon/r/5r2eXFMY2zCCJBasFhcM5I+1kh3Ap11FsQCX+vGHceNPvpWKhoA==", + "node_modules/env-paths": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/env-paths/-/env-paths-2.2.1.tgz", + "integrity": "sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/err-code": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/err-code/-/err-code-2.0.3.tgz", + "integrity": "sha512-2bmlRpNKBxT/CRmPOlyISQpNj+qSeYvcym/uT0Jx2bMOlKLtSy1ZmLuVxSEKKyor/N5yhvp/ZiG1oE3DEYMSFA==", "dev": true }, - "errno": { + "node_modules/errno": { "version": "0.1.8", "resolved": "https://registry.npmjs.org/errno/-/errno-0.1.8.tgz", "integrity": "sha512-dJ6oBr5SQ1VSd9qkk7ByRgb/1SH4JZjCHSW/mr63/QcXO9zLVxvJ6Oy13nio03rxpSnVDDjFor75SjVeZWPW/A==", - "dev": true, - "requires": { + "optional": true, + "dependencies": { "prr": "~1.0.1" + }, + "bin": { + "errno": "cli.js" } }, - "error-ex": { + "node_modules/error-ex": { "version": "1.3.2", "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", - "dev": true, - "requires": { + "dependencies": { "is-arrayish": "^0.2.1" } }, - "es-abstract": { - "version": "1.21.2", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.21.2.tgz", - "integrity": "sha512-y/B5POM2iBnIxCiernH1G7rC9qQoM77lLIMQLuob0zhp8C56Po81+2Nj0WFKnd0pNReDTnkYryc+zhOzpEIROg==", - "dev": true, - "requires": { - "array-buffer-byte-length": "^1.0.0", - "available-typed-arrays": "^1.0.5", - "call-bind": "^1.0.2", - "es-set-tostringtag": "^2.0.1", - "es-to-primitive": "^1.2.1", - "function.prototype.name": "^1.1.5", - "get-intrinsic": "^1.2.0", - "get-symbol-description": "^1.0.0", - "globalthis": "^1.0.3", - "gopd": "^1.0.1", - "has": "^1.0.3", - "has-property-descriptors": "^1.0.0", - "has-proto": "^1.0.1", - "has-symbols": "^1.0.3", - "internal-slot": "^1.0.5", - "is-array-buffer": "^3.0.2", - "is-callable": "^1.2.7", - "is-negative-zero": "^2.0.2", - "is-regex": "^1.1.4", - "is-shared-array-buffer": "^1.0.2", - "is-string": "^1.0.7", - "is-typed-array": "^1.1.10", - "is-weakref": "^1.0.2", - "object-inspect": "^1.12.3", - "object-keys": "^1.1.1", - "object.assign": "^4.1.4", - "regexp.prototype.flags": "^1.4.3", - "safe-regex-test": "^1.0.0", - "string.prototype.trim": "^1.2.7", - "string.prototype.trimend": "^1.0.6", - "string.prototype.trimstart": "^1.0.6", - "typed-array-length": "^1.0.4", - "unbox-primitive": "^1.0.2", - "which-typed-array": "^1.1.9" - } - }, - "es-array-method-boxes-properly": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/es-array-method-boxes-properly/-/es-array-method-boxes-properly-1.0.0.tgz", - "integrity": "sha512-wd6JXUmyHmt8T5a2xreUwKcGPq6f1f+WwIJkijUqiGcJz1qqnZgP6XIK+QyIWU5lT7imeNxUll48bziG+TSYcA==", - "dev": true - }, - "es-set-tostringtag": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.0.1.tgz", - "integrity": "sha512-g3OMbtlwY3QewlqAiMLI47KywjWZoEytKr8pf6iTC8uJq5bIAH52Z9pnQ8pVL6whrCto53JZDuUIsifGeLorTg==", - "dev": true, - "requires": { - "get-intrinsic": "^1.1.3", - "has": "^1.0.3", - "has-tostringtag": "^1.0.0" + "node_modules/es-define-property": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.1.tgz", + "integrity": "sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==", + "engines": { + "node": ">= 0.4" } }, - "es-to-primitive": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", - "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", - "dev": true, - "requires": { - "is-callable": "^1.1.4", - "is-date-object": "^1.0.1", - "is-symbol": "^1.0.2" + "node_modules/es-errors": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz", + "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==", + "engines": { + "node": ">= 0.4" } }, - "es6-promise": { - "version": "4.2.8", - "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-4.2.8.tgz", - "integrity": "sha512-HJDGx5daxeIvxdBxvG2cb9g4tEvwIk3i8+nhX0yGrYmZUzbkdg8QbDevheDB8gd0//uPj4c1EQua8Q+MViT0/w==", - "dev": true + "node_modules/es-module-lexer": { + "version": "0.9.3", + "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-0.9.3.tgz", + "integrity": "sha512-1HQ2M2sPtxwnvOvT1ZClHyQDiggdNjURWpY2we6aMKCQiUVxTmVs2UYPLIrD84sS+kMdUwfBSylbJPwNnBrnHQ==" }, - "es6-promisify": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/es6-promisify/-/es6-promisify-5.0.0.tgz", - "integrity": "sha512-C+d6UdsYDk0lMebHNR4S2NybQMMngAOnOwYBQjTOiv0MkoJMP0Myw2mgpDLBcpfCmRLxyFqYhS/CfOENq4SJhQ==", - "dev": true, - "requires": { - "es6-promise": "^4.0.3" + "node_modules/es-object-atoms": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.1.1.tgz", + "integrity": "sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==", + "dependencies": { + "es-errors": "^1.3.0" + }, + "engines": { + "node": ">= 0.4" } }, - "escalade": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", - "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", - "dev": true + "node_modules/esbuild": { + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.15.5.tgz", + "integrity": "sha512-VSf6S1QVqvxfIsSKb3UKr3VhUCis7wgDbtF4Vd9z84UJr05/Sp2fRKmzC+CSPG/dNAPPJZ0BTBLTT1Fhd6N9Gg==", + "hasInstallScript": true, + "optional": true, + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { + "node": ">=12" + }, + "optionalDependencies": { + "@esbuild/linux-loong64": "0.15.5", + "esbuild-android-64": "0.15.5", + "esbuild-android-arm64": "0.15.5", + "esbuild-darwin-64": "0.15.5", + "esbuild-darwin-arm64": "0.15.5", + "esbuild-freebsd-64": "0.15.5", + "esbuild-freebsd-arm64": "0.15.5", + "esbuild-linux-32": "0.15.5", + "esbuild-linux-64": "0.15.5", + "esbuild-linux-arm": "0.15.5", + "esbuild-linux-arm64": "0.15.5", + "esbuild-linux-mips64le": "0.15.5", + "esbuild-linux-ppc64le": "0.15.5", + "esbuild-linux-riscv64": "0.15.5", + "esbuild-linux-s390x": "0.15.5", + "esbuild-netbsd-64": "0.15.5", + "esbuild-openbsd-64": "0.15.5", + "esbuild-sunos-64": "0.15.5", + "esbuild-windows-32": "0.15.5", + "esbuild-windows-64": "0.15.5", + "esbuild-windows-arm64": "0.15.5" + } + }, + "node_modules/esbuild-android-64": { + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-android-64/-/esbuild-android-64-0.15.5.tgz", + "integrity": "sha512-dYPPkiGNskvZqmIK29OPxolyY3tp+c47+Fsc2WYSOVjEPWNCHNyqhtFqQadcXMJDQt8eN0NMDukbyQgFcHquXg==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild-android-arm64": { + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-android-arm64/-/esbuild-android-arm64-0.15.5.tgz", + "integrity": "sha512-YyEkaQl08ze3cBzI/4Cm1S+rVh8HMOpCdq8B78JLbNFHhzi4NixVN93xDrHZLztlocEYqi45rHHCgA8kZFidFg==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild-darwin-64": { + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-darwin-64/-/esbuild-darwin-64-0.15.5.tgz", + "integrity": "sha512-Cr0iIqnWKx3ZTvDUAzG0H/u9dWjLE4c2gTtRLz4pqOBGjfjqdcZSfAObFzKTInLLSmD0ZV1I/mshhPoYSBMMCQ==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild-darwin-arm64": { + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-darwin-arm64/-/esbuild-darwin-arm64-0.15.5.tgz", + "integrity": "sha512-WIfQkocGtFrz7vCu44ypY5YmiFXpsxvz2xqwe688jFfSVCnUsCn2qkEVDo7gT8EpsLOz1J/OmqjExePL1dr1Kg==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild-freebsd-64": { + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-freebsd-64/-/esbuild-freebsd-64-0.15.5.tgz", + "integrity": "sha512-M5/EfzV2RsMd/wqwR18CELcenZ8+fFxQAAEO7TJKDmP3knhWSbD72ILzrXFMMwshlPAS1ShCZ90jsxkm+8FlaA==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild-freebsd-arm64": { + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-freebsd-arm64/-/esbuild-freebsd-arm64-0.15.5.tgz", + "integrity": "sha512-2JQQ5Qs9J0440F/n/aUBNvY6lTo4XP/4lt1TwDfHuo0DY3w5++anw+jTjfouLzbJmFFiwmX7SmUhMnysocx96w==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild-linux-32": { + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-linux-32/-/esbuild-linux-32-0.15.5.tgz", + "integrity": "sha512-gO9vNnIN0FTUGjvTFucIXtBSr1Woymmx/aHQtuU+2OllGU6YFLs99960UD4Dib1kFovVgs59MTXwpFdVoSMZoQ==", + "cpu": [ + "ia32" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild-linux-64": { + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-linux-64/-/esbuild-linux-64-0.15.5.tgz", + "integrity": "sha512-ne0GFdNLsm4veXbTnYAWjbx3shpNKZJUd6XpNbKNUZaNllDZfYQt0/zRqOg0sc7O8GQ+PjSMv9IpIEULXVTVmg==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild-linux-arm": { + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-linux-arm/-/esbuild-linux-arm-0.15.5.tgz", + "integrity": "sha512-wvAoHEN+gJ/22gnvhZnS/+2H14HyAxM07m59RSLn3iXrQsdS518jnEWRBnJz3fR6BJa+VUTo0NxYjGaNt7RA7Q==", + "cpu": [ + "arm" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild-linux-arm64": { + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-linux-arm64/-/esbuild-linux-arm64-0.15.5.tgz", + "integrity": "sha512-7EgFyP2zjO065XTfdCxiXVEk+f83RQ1JsryN1X/VSX2li9rnHAt2swRbpoz5Vlrl6qjHrCmq5b6yxD13z6RheA==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild-linux-mips64le": { + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-linux-mips64le/-/esbuild-linux-mips64le-0.15.5.tgz", + "integrity": "sha512-KdnSkHxWrJ6Y40ABu+ipTZeRhFtc8dowGyFsZY5prsmMSr1ZTG9zQawguN4/tunJ0wy3+kD54GaGwdcpwWAvZQ==", + "cpu": [ + "mips64el" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild-linux-ppc64le": { + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-linux-ppc64le/-/esbuild-linux-ppc64le-0.15.5.tgz", + "integrity": "sha512-QdRHGeZ2ykl5P0KRmfGBZIHmqcwIsUKWmmpZTOq573jRWwmpfRmS7xOhmDHBj9pxv+6qRMH8tLr2fe+ZKQvCYw==", + "cpu": [ + "ppc64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild-linux-riscv64": { + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-linux-riscv64/-/esbuild-linux-riscv64-0.15.5.tgz", + "integrity": "sha512-p+WE6RX+jNILsf+exR29DwgV6B73khEQV0qWUbzxaycxawZ8NE0wA6HnnTxbiw5f4Gx9sJDUBemh9v49lKOORA==", + "cpu": [ + "riscv64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild-linux-s390x": { + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-linux-s390x/-/esbuild-linux-s390x-0.15.5.tgz", + "integrity": "sha512-J2ngOB4cNzmqLHh6TYMM/ips8aoZIuzxJnDdWutBw5482jGXiOzsPoEF4j2WJ2mGnm7FBCO4StGcwzOgic70JQ==", + "cpu": [ + "s390x" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild-netbsd-64": { + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-netbsd-64/-/esbuild-netbsd-64-0.15.5.tgz", + "integrity": "sha512-MmKUYGDizYjFia0Rwt8oOgmiFH7zaYlsoQ3tIOfPxOqLssAsEgG0MUdRDm5lliqjiuoog8LyDu9srQk5YwWF3w==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild-openbsd-64": { + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-openbsd-64/-/esbuild-openbsd-64-0.15.5.tgz", + "integrity": "sha512-2mMFfkLk3oPWfopA9Plj4hyhqHNuGyp5KQyTT9Rc8hFd8wAn5ZrbJg+gNcLMo2yzf8Uiu0RT6G9B15YN9WQyMA==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild-sunos-64": { + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-sunos-64/-/esbuild-sunos-64-0.15.5.tgz", + "integrity": "sha512-2sIzhMUfLNoD+rdmV6AacilCHSxZIoGAU2oT7XmJ0lXcZWnCvCtObvO6D4puxX9YRE97GodciRGDLBaiC6x1SA==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "sunos" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild-wasm": { + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-wasm/-/esbuild-wasm-0.15.5.tgz", + "integrity": "sha512-lTJOEKekN/4JI/eOEq0wLcx53co2N6vaT/XjBz46D1tvIVoUEyM0o2K6txW6gEotf31szFD/J1PbxmnbkGlK9A==", + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild-windows-32": { + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-windows-32/-/esbuild-windows-32-0.15.5.tgz", + "integrity": "sha512-e+duNED9UBop7Vnlap6XKedA/53lIi12xv2ebeNS4gFmu7aKyTrok7DPIZyU5w/ftHD4MUDs5PJUkQPP9xJRzg==", + "cpu": [ + "ia32" + ], + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild-windows-64": { + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-windows-64/-/esbuild-windows-64-0.15.5.tgz", + "integrity": "sha512-v+PjvNtSASHOjPDMIai9Yi+aP+Vwox+3WVdg2JB8N9aivJ7lyhp4NVU+J0MV2OkWFPnVO8AE/7xH+72ibUUEnw==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild-windows-arm64": { + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-windows-arm64/-/esbuild-windows-arm64-0.15.5.tgz", + "integrity": "sha512-Yz8w/D8CUPYstvVQujByu6mlf48lKmXkq6bkeSZZxTA626efQOJb26aDGLzmFWx6eg/FwrXgt6SZs9V8Pwy/aA==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } }, - "escape-goat": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/escape-goat/-/escape-goat-2.1.1.tgz", - "integrity": "sha512-8/uIhbG12Csjy2JEW7D9pHbreaVaS/OpN3ycnyvElTdwM5n6GY6W6e2IPemfvGZeUMqZ9A/3GqIZMgKnBhAw/Q==", - "dev": true + "node_modules/escalade": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz", + "integrity": "sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==", + "engines": { + "node": ">=6" + } }, - "escape-html": { + "node_modules/escape-html": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", - "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==", - "dev": true + "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==" }, - "escape-string-regexp": { + "node_modules/escape-string-regexp": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", - "dev": true + "engines": { + "node": ">=0.8.0" + } }, - "eslint-scope": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-4.0.3.tgz", - "integrity": "sha512-p7VutNr1O/QrxysMo3E45FjYDTeXBy0iTltPFNSqKAIfjDSXC+4dj+qfyuD8bfAXrW/y6lW3O76VaYNPKfpKrg==", - "dev": true, - "requires": { - "esrecurse": "^4.1.0", + "node_modules/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==", + "dependencies": { + "esrecurse": "^4.3.0", "estraverse": "^4.1.1" + }, + "engines": { + "node": ">=8.0.0" } }, - "esprima": { + "node_modules/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 + "bin": { + "esparse": "bin/esparse.js", + "esvalidate": "bin/esvalidate.js" + }, + "engines": { + "node": ">=4" + } }, - "esrecurse": { + "node_modules/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": { + "dependencies": { "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 - } + "engines": { + "node": ">=4.0" + } + }, + "node_modules/esrecurse/node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "engines": { + "node": ">=4.0" } }, - "estraverse": { + "node_modules/estraverse": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", - "dev": true + "engines": { + "node": ">=4.0" + } }, - "estree-walker": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-1.0.1.tgz", - "integrity": "sha512-1fMXF3YP4pZZVozF8j/ZLfvnR8NSIljt56UhbZ5PeeDmmGHpgpdwQt7ITlGvYaQukCvuBRMLEiKiYC+oeIg4cg==", - "dev": true + "node_modules/estree-walker": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz", + "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==" }, - "esutils": { + "node_modules/esutils": { "version": "2.0.3", "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", - "dev": true + "engines": { + "node": ">=0.10.0" + } }, - "etag": { + "node_modules/etag": { "version": "1.8.1", "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==", - "dev": true + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/eventemitter-asyncresource": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/eventemitter-asyncresource/-/eventemitter-asyncresource-1.0.0.tgz", + "integrity": "sha512-39F7TBIV0G7gTelxwbEqnwhp90eqCPON1k0NwNfwhgKn4Co4ybUbj2pECcXT0B3ztRKZ7Pw1JujUUgmQJHcVAQ==" }, - "eventemitter3": { + "node_modules/eventemitter3": { "version": "4.0.7", "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.7.tgz", - "integrity": "sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==", - "dev": true + "integrity": "sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==" }, - "events": { + "node_modules/events": { "version": "3.3.0", "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", - "dev": true - }, - "eventsource": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/eventsource/-/eventsource-1.1.2.tgz", - "integrity": "sha512-xAH3zWhgO2/3KIniEKYPr8plNSzlGINOUqYj0m0u7AB81iRw8b/3E73W6AuU+6klLbaSFmZnaETQ2lXPfAydrA==", - "dev": true - }, - "evp_bytestokey": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz", - "integrity": "sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==", - "dev": true, - "requires": { - "md5.js": "^1.3.4", - "safe-buffer": "^5.1.1" + "engines": { + "node": ">=0.8.x" } }, - "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" + "node_modules/execa": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz", + "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", + "dependencies": { + "cross-spawn": "^7.0.3", + "get-stream": "^6.0.0", + "human-signals": "^2.1.0", + "is-stream": "^2.0.0", + "merge-stream": "^2.0.0", + "npm-run-path": "^4.0.1", + "onetime": "^5.1.2", + "signal-exit": "^3.0.3", + "strip-final-newline": "^2.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sindresorhus/execa?sponsor=1" } }, - "exit": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz", - "integrity": "sha512-Zk/eNKV2zbjpKzrsQ+n1G6poVbErQxJ0LBOJXaKZ1EViLzH+hrLu9cdXI4zw9dBQJslwBEpbQ2P1oS7nDxs6jQ==", + "node_modules/exponential-backoff": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/exponential-backoff/-/exponential-backoff-3.1.2.tgz", + "integrity": "sha512-8QxYTVXUkuy7fIIoitQkPwGonB8F3Zj8eEO8Sqg9Zv/bkI7RJAzowee4gr81Hak/dUTpA2Z7VfQgoijjPNlUZA==", "dev": true }, - "expand-brackets": { - "version": "2.1.4", - "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-2.1.4.tgz", - "integrity": "sha512-w/ozOKR9Obk3qoWeY/WDi6MFta9AoMR+zud60mdnbniMcBxRuFJyDt2LdX/14A1UABeqk+Uk+LDfUpvoGKppZA==", - "dev": true, - "requires": { - "debug": "^2.3.3", - "define-property": "^0.2.5", - "extend-shallow": "^2.0.1", - "posix-character-classes": "^0.1.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.1" - }, + "node_modules/express": { + "version": "4.21.2", + "resolved": "https://registry.npmjs.org/express/-/express-4.21.2.tgz", + "integrity": "sha512-28HqgMZAmih1Czt9ny7qr6ek2qddF4FclbMzwhCREB6OFfH+rXAnuNCwo1/wFvrtbgsQDb4kSbX9de9lFbrXnA==", "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA==", - "dev": true, - "requires": { - "is-descriptor": "^0.1.0" - } - }, - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - }, - "is-accessor-descriptor": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", - "integrity": "sha512-e1BM1qnDbMRG3ll2U9dSK0UMHuWOs3pY3AtcFsmvwPtKL3MML/Q86i+GilLfvqEs4GW+ExB91tQ3Ig9noDIZ+A==", - "dev": true, - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "is-data-descriptor": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", - "integrity": "sha512-+w9D5ulSoBNlmw9OHn3U2v51SyoCd0he+bB3xMl62oijhrspxowjU+AIcDY0N3iEJbUEkB15IlMASQsxYigvXg==", - "dev": true, - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "is-descriptor": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", - "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", - "dev": true, - "requires": { - "is-accessor-descriptor": "^0.1.6", - "is-data-descriptor": "^0.1.4", - "kind-of": "^5.0.0" - } - }, - "is-extendable": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", - "integrity": "sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==", - "dev": true - }, - "kind-of": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", - "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", - "dev": true - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true - } - } - }, - "express": { - "version": "4.18.2", - "resolved": "https://registry.npmjs.org/express/-/express-4.18.2.tgz", - "integrity": "sha512-5/PsL6iGPdfQ/lKM1UuielYgv3BUoJfz1aUwU9vHZ+J7gyvwdQXFEBIEIaxeGf0GIcreATNyBExtalisDbuMqQ==", - "dev": true, - "requires": { "accepts": "~1.3.8", "array-flatten": "1.1.1", - "body-parser": "1.20.1", + "body-parser": "1.20.3", "content-disposition": "0.5.4", "content-type": "~1.0.4", - "cookie": "0.5.0", + "cookie": "0.7.1", "cookie-signature": "1.0.6", "debug": "2.6.9", "depd": "2.0.0", - "encodeurl": "~1.0.2", + "encodeurl": "~2.0.0", "escape-html": "~1.0.3", "etag": "~1.8.1", - "finalhandler": "1.2.0", + "finalhandler": "1.3.1", "fresh": "0.5.2", "http-errors": "2.0.0", - "merge-descriptors": "1.0.1", + "merge-descriptors": "1.0.3", "methods": "~1.1.2", "on-finished": "2.4.1", "parseurl": "~1.3.3", - "path-to-regexp": "0.1.7", + "path-to-regexp": "0.1.12", "proxy-addr": "~2.0.7", - "qs": "6.11.0", + "qs": "6.13.0", "range-parser": "~1.2.1", "safe-buffer": "5.2.1", - "send": "0.18.0", - "serve-static": "1.15.0", + "send": "0.19.0", + "serve-static": "1.16.2", "setprototypeof": "1.2.0", "statuses": "2.0.1", "type-is": "~1.6.18", "utils-merge": "1.0.1", "vary": "~1.1.2" }, + "engines": { + "node": ">= 0.10.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/express" + } + }, + "node_modules/express/node_modules/cookie": { + "version": "0.7.1", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.7.1.tgz", + "integrity": "sha512-6DnInpx7SJ2AK3+CTUE/ZM0vWTUboZCegxhC2xiIydHR9jNuTAASBrfEpHhiGOZw/nX51bHt6YQl8jsGo4y/0w==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/express/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", "dependencies": { - "array-flatten": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", - "integrity": "sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==", - "dev": true - }, - "body-parser": { - "version": "1.20.1", - "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.1.tgz", - "integrity": "sha512-jWi7abTbYwajOytWCQc37VulmWiRae5RyTpaCyDcS5/lMdtwSz5lOpDE67srw/HYe35f1z3fDQw+3txg7gNtWw==", - "dev": true, - "requires": { - "bytes": "3.1.2", - "content-type": "~1.0.4", - "debug": "2.6.9", - "depd": "2.0.0", - "destroy": "1.2.0", - "http-errors": "2.0.0", - "iconv-lite": "0.4.24", - "on-finished": "2.4.1", - "qs": "6.11.0", - "raw-body": "2.5.1", - "type-is": "~1.6.18", - "unpipe": "1.0.0" - } - }, - "cookie": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.5.0.tgz", - "integrity": "sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw==", - "dev": true - }, - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "finalhandler": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.2.0.tgz", - "integrity": "sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg==", - "dev": true, - "requires": { - "debug": "2.6.9", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "on-finished": "2.4.1", - "parseurl": "~1.3.3", - "statuses": "2.0.1", - "unpipe": "~1.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true - }, - "raw-body": { - "version": "2.5.1", - "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.1.tgz", - "integrity": "sha512-qqJBtEyVgS0ZmPGdCFPWJ3FreoqvG4MVQln/kCgF7Olq95IbOp0/BWyMwbdtn4VTvkM8Y7khCQ2Xgk/tcrCXig==", - "dev": true, - "requires": { - "bytes": "3.1.2", - "http-errors": "2.0.0", - "iconv-lite": "0.4.24", - "unpipe": "1.0.0" - } - }, - "statuses": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", - "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", - "dev": true - } + "ms": "2.0.0" } }, - "extend": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", - "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==", - "dev": true + "node_modules/express/node_modules/encodeurl": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-2.0.0.tgz", + "integrity": "sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg==", + "engines": { + "node": ">= 0.8" + } }, - "extend-shallow": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", - "integrity": "sha512-BwY5b5Ql4+qZoefgMj2NUmx+tehVTH/Kf4k1ZEtOHNFcm2wSxMRo992l6X3TIgni2eZVTZ85xMOjF31fwZAj6Q==", - "dev": true, - "requires": { - "assign-symbols": "^1.0.0", - "is-extendable": "^1.0.1" + "node_modules/express/node_modules/finalhandler": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.3.1.tgz", + "integrity": "sha512-6BN9trH7bp3qvnrRyzsBz+g3lZxTNZTbVO2EV1CS0WIcDbawYVdYvGflME/9QP0h0pYlCDBCTjYa9nZzMDpyxQ==", + "dependencies": { + "debug": "2.6.9", + "encodeurl": "~2.0.0", + "escape-html": "~1.0.3", + "on-finished": "2.4.1", + "parseurl": "~1.3.3", + "statuses": "2.0.1", + "unpipe": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/express/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" + }, + "node_modules/express/node_modules/statuses": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", + "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", + "engines": { + "node": ">= 0.8" } }, - "external-editor": { + "node_modules/extend": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", + "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==", + "devOptional": true + }, + "node_modules/external-editor": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz", "integrity": "sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==", - "dev": true, - "requires": { + "dependencies": { "chardet": "^0.7.0", "iconv-lite": "^0.4.24", "tmp": "^0.0.33" + }, + "engines": { + "node": ">=4" } }, - "extglob": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz", - "integrity": "sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==", - "dev": true, - "requires": { - "array-unique": "^0.3.2", - "define-property": "^1.0.0", - "expand-brackets": "^2.1.4", - "extend-shallow": "^2.0.1", - "fragment-cache": "^0.2.1", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.1" - }, - "dependencies": { - "define-property": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", - "integrity": "sha512-cZTYKFWspt9jZsMscWo8sc/5lbPC9Q0N5nBLgb+Yd915iL3udB1uFgS3B8YCx66UVHq018DAVFoee7x+gxggeA==", - "dev": true, - "requires": { - "is-descriptor": "^1.0.0" - } - }, - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - }, - "is-extendable": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", - "integrity": "sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==", - "dev": true - } - } - }, - "extsprintf": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", - "integrity": "sha512-11Ndz7Nv+mvAC1j0ktTa7fAb0vLyGGX+rMHNBYQviQDGU0Hw7lhctJANqbPhu9nV9/izT/IntTgZ7Im/9LJs9g==", - "dev": true - }, - "fast-deep-equal": { + "node_modules/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 + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==" }, - "fast-glob": { - "version": "3.2.12", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.12.tgz", - "integrity": "sha512-DVj4CQIYYow0BlaelwK1pHl5n5cRSJfM60UA0zK891sVInoPri2Ekj7+e1CT3/3qxXenpI+nBBmQAcJPJgaj4w==", - "dev": true, - "requires": { + "node_modules/fast-glob": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.3.tgz", + "integrity": "sha512-7MptL8U0cqcFdzIzwOTHoilX9x5BrNqye7Z/LuC7kCMRio1EMSyqRK3BEAUD7sXRq4iT4AzTVuZdhgQ2TCvYLg==", + "dependencies": { "@nodelib/fs.stat": "^2.0.2", "@nodelib/fs.walk": "^1.2.3", "glob-parent": "^5.1.2", "merge2": "^1.3.0", - "micromatch": "^4.0.4" + "micromatch": "^4.0.8" + }, + "engines": { + "node": ">=8.6.0" } }, - "fast-json-stable-stringify": { + "node_modules/fast-json-stable-stringify": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", - "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", - "dev": true - }, - "fastparse": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/fastparse/-/fastparse-1.1.2.tgz", - "integrity": "sha512-483XLLxTVIwWK3QTrMGRqUfUpoOs/0hbQrl2oz4J0pAcm3A3bu84wxTFqGqkJzewCLdME38xJLJAxBABfQT8sQ==", - "dev": true + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==" }, - "fastq": { - "version": "1.15.0", - "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.15.0.tgz", - "integrity": "sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==", - "dev": true, - "requires": { + "node_modules/fastq": { + "version": "1.19.1", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.19.1.tgz", + "integrity": "sha512-GwLTyxkCXjXbxqIhTsMI2Nui8huMPtnxg7krajPJAjnEG/iiOS7i+zCtWGZR9G0NBKbXKh6X9m9UIsYX/N6vvQ==", + "dependencies": { "reusify": "^1.0.4" } }, - "faye-websocket": { - "version": "0.10.0", - "resolved": "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.10.0.tgz", - "integrity": "sha512-Xhj93RXbMSq8urNCUq4p9l0P6hnySJ/7YNRhYNug0bLOuii7pKO7xQFb5mx9xZXWCar88pLPb805PvUkwrLZpQ==", - "dev": true, - "requires": { + "node_modules/faye-websocket": { + "version": "0.11.4", + "resolved": "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.11.4.tgz", + "integrity": "sha512-CzbClwlXAuiRQAlUyfqPgvPoNKTckTPGfwZV4ZdAhVcP2lh9KUxJg2b5GkE7XbjKQ3YJnQ9z6D9ntLAlB+tP8g==", + "dependencies": { "websocket-driver": ">=0.5.1" + }, + "engines": { + "node": ">=0.8.0" } }, - "figgy-pudding": { - "version": "3.5.2", - "resolved": "https://registry.npmjs.org/figgy-pudding/-/figgy-pudding-3.5.2.tgz", - "integrity": "sha512-0btnI/H8f2pavGMN8w40mlSKOfTK2SVJmBfBeVIj3kNw0swwgzyRq0d5TJVOwodFmtvpPeWPN/MCcfuWF0Ezbw==", - "dev": true - }, - "figures": { + "node_modules/figures": { "version": "3.2.0", "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz", "integrity": "sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==", - "dev": true, - "requires": { + "dependencies": { "escape-string-regexp": "^1.0.5" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "file-loader": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/file-loader/-/file-loader-6.0.0.tgz", - "integrity": "sha512-/aMOAYEFXDdjG0wytpTL5YQLfZnnTmLNjn+AIrJ/6HVnTfDqLsVKUUwkDf4I4kgex36BvjuXEn/TX9B/1ESyqQ==", - "dev": true, - "requires": { - "loader-utils": "^2.0.0", - "schema-utils": "^2.6.5" - } - }, - "file-uri-to-path": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz", - "integrity": "sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==", - "dev": true, - "optional": true - }, - "fileset": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/fileset/-/fileset-2.0.3.tgz", - "integrity": "sha512-UxowFKnAFIwtmSxgKjWAVgjE3Fk7MQJT0ZIyl0NwIFZTrx4913rLaonGJ84V+x/2+w/pe4ULHRns+GZPs1TVuw==", - "dev": true, - "requires": { - "glob": "^7.0.3", - "minimatch": "^3.0.3" - } - }, - "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": { + "node_modules/fill-range": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", + "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", + "dependencies": { "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" } }, - "finalhandler": { + "node_modules/finalhandler": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.2.tgz", "integrity": "sha512-aAWcW57uxVNrQZqFXjITpW3sIUQmHGG3qSb9mUah9MgMC4NeWhNOlNjXEYq3HjRAvL6arUviZGGJsBg6z0zsWA==", - "dev": true, - "requires": { + "devOptional": true, + "dependencies": { "debug": "2.6.9", "encodeurl": "~1.0.2", "escape-html": "~1.0.3", @@ -5497,6203 +5797,4544 @@ "statuses": "~1.5.0", "unpipe": "~1.0.0" }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/finalhandler/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "devOptional": true, "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true - }, - "on-finished": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", - "integrity": "sha512-ikqdkGAAyf/X/gPhXGvfgAytDZtDbr+bkNUJ0N9h5MI/dmdgCs3l6hoHrcUv41sRKew3jIwrp4qQDXiK99Utww==", - "dev": true, - "requires": { - "ee-first": "1.1.1" - } - } + "ms": "2.0.0" } }, - "find-cache-dir": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-3.3.1.tgz", - "integrity": "sha512-t2GDMt3oGC/v+BMwzmllWDuJF/xcDtE5j/fCGbqDD7OLuJkj0cfh1YSA5VKPvwMeLFLNDBkwOKZ2X85jGLVftQ==", - "dev": true, - "requires": { + "node_modules/finalhandler/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "devOptional": true + }, + "node_modules/finalhandler/node_modules/on-finished": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", + "integrity": "sha512-ikqdkGAAyf/X/gPhXGvfgAytDZtDbr+bkNUJ0N9h5MI/dmdgCs3l6hoHrcUv41sRKew3jIwrp4qQDXiK99Utww==", + "devOptional": true, + "dependencies": { + "ee-first": "1.1.1" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/find-cache-dir": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-3.3.2.tgz", + "integrity": "sha512-wXZV5emFEjrridIgED11OoUKLxiYjAcqot/NJdAkOhlJ+vGzwhOAfcG5OX1jP+S0PcjEn8bdMJv+g2jwQ3Onig==", + "dependencies": { "commondir": "^1.0.1", "make-dir": "^3.0.2", "pkg-dir": "^4.1.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/avajs/find-cache-dir?sponsor=1" } }, - "find-parent-dir": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/find-parent-dir/-/find-parent-dir-0.3.1.tgz", - "integrity": "sha512-o4UcykWV/XN9wm+jMEtWLPlV8RXCZnMhQI6F6OdHeSez7iiJWePw8ijOlskJZMsaQoGR/b7dH6lO02HhaTN7+A==", - "dev": true - }, - "find-up": { + "node_modules/find-up": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", - "dev": true, - "requires": { + "dependencies": { "locate-path": "^5.0.0", "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=8" } }, - "flatted": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-2.0.2.tgz", - "integrity": "sha512-r5wGx7YeOwNWNlCA0wQ86zKyDLMQr+/RB8xy74M4hTphfmjlijTSSXGuH8rnvKZnfT9i+75zmd8jcKdMR4O6jA==", - "dev": true - }, - "flush-write-stream": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/flush-write-stream/-/flush-write-stream-1.1.1.tgz", - "integrity": "sha512-3Z4XhFZ3992uIq0XOqb9AreonueSYphE6oYbpt5+3u06JWklbsPkNv3ZKkP9Bz/r+1MWCaMoSQ28P85+1Yc77w==", - "dev": true, - "requires": { - "inherits": "^2.0.3", - "readable-stream": "^2.3.6" - } - }, - "follow-redirects": { - "version": "1.15.2", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.2.tgz", - "integrity": "sha512-VQLG33o04KaQ8uYi2tVNbdrWp1QWxNNea+nmIB4EVM28v0hmP17z7aG1+wAkNzVq4KeXTq3221ye5qTJP91JwA==", - "dev": true - }, - "for-each": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.3.tgz", - "integrity": "sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==", - "dev": true, - "requires": { - "is-callable": "^1.1.3" - } - }, - "for-in": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", - "integrity": "sha512-7EwmXrOjyL+ChxMhmG5lnW9MPt1aIeZEwKhQzoBUdTV0N3zuwWDZYVJatDvZ2OyzPUvdIAZDsCetk3coyMfcnQ==", - "dev": true - }, - "forever-agent": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", - "integrity": "sha512-j0KLYPhm6zeac4lz3oJ3o65qvgQCcPubiyotZrXqEaG4hNagNYO8qdlUrX5vwqv9ohqeT/Z3j6+yW067yWWdUw==", - "dev": true - }, - "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==", - "dev": true, - "requires": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.6", - "mime-types": "^2.1.12" + "node_modules/flatted": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.3.3.tgz", + "integrity": "sha512-GX+ysw4PBCz0PzosHDepZGANEuFCMLrnRTiEy9McGjmkCQYwRq4A/X786G/fjM/+OjsWSU1ZrY5qyARZmO/uwg==", + "devOptional": true + }, + "node_modules/follow-redirects": { + "version": "1.15.9", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.9.tgz", + "integrity": "sha512-gew4GsXizNgdoRyqmyfMHyAmXsZDk6mHkSxZFCzW9gwlbtOW44CDtYavM+y+72qD/Vq2l550kMF52DT8fOLJqQ==", + "funding": [ + { + "type": "individual", + "url": "https://github.com/sponsors/RubenVerborgh" + } + ], + "engines": { + "node": ">=4.0" + }, + "peerDependenciesMeta": { + "debug": { + "optional": true + } } }, - "forwarded": { + "node_modules/forwarded": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz", "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==", - "dev": true + "engines": { + "node": ">= 0.6" + } }, - "fragment-cache": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/fragment-cache/-/fragment-cache-0.2.1.tgz", - "integrity": "sha512-GMBAbW9antB8iZRHLoGw0b3HANt57diZYFO/HL1JGIC1MjKrdmhxvrJbupnVvpys0zsz7yBApXdQyfepKly2kA==", - "dev": true, - "requires": { - "map-cache": "^0.2.2" + "node_modules/fraction.js": { + "version": "4.3.7", + "resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-4.3.7.tgz", + "integrity": "sha512-ZsDfxO51wGAXREY55a7la9LScWpwv9RxIrYABrlvOFBlH/ShPnrtsXeuUIfXKKOVicNxQ+o8JTbJvjS4M89yew==", + "engines": { + "node": "*" + }, + "funding": { + "type": "patreon", + "url": "https://github.com/sponsors/rawify" } }, - "fresh": { + "node_modules/fresh": { "version": "0.5.2", "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", "integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==", - "dev": true - }, - "from2": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/from2/-/from2-2.3.0.tgz", - "integrity": "sha512-OMcX/4IC/uqEPVgGeyfN22LJk6AZrMkRZHxcHBMBvHScDGgwTm2GT2Wkgtocyd3JfZffjj2kYUDXXII0Fk9W0g==", - "dev": true, - "requires": { - "inherits": "^2.0.1", - "readable-stream": "^2.0.0" + "engines": { + "node": ">= 0.6" } }, - "fs-extra": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-4.0.2.tgz", - "integrity": "sha512-wYid1zXctNLgas1pZ8q8ChdsnGg4DHZVqMzJ7pOE85q5BppAEXgQGSoOjVgrcw5yI7pzz49p9AfMhM7z5PRuaw==", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", + "node_modules/fs-extra": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", + "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==", + "devOptional": true, + "dependencies": { + "graceful-fs": "^4.2.0", "jsonfile": "^4.0.0", "universalify": "^0.1.0" + }, + "engines": { + "node": ">=6 <7 || >=8" } }, - "fs-minipass": { + "node_modules/fs-minipass": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", - "dev": true, - "requires": { + "dependencies": { "minipass": "^3.0.0" + }, + "engines": { + "node": ">= 8" } }, - "fs-write-stream-atomic": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/fs-write-stream-atomic/-/fs-write-stream-atomic-1.0.10.tgz", - "integrity": "sha512-gehEzmPn2nAwr39eay+x3X34Ra+M2QlVUTLhkXPjWdeO8RF9kszk116avgBJM3ZyNHgHXBNx+VmPaFC36k0PzA==", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "iferr": "^0.1.5", - "imurmurhash": "^0.1.4", - "readable-stream": "1 || 2" - } + "node_modules/fs-monkey": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/fs-monkey/-/fs-monkey-1.0.6.tgz", + "integrity": "sha512-b1FMfwetIKymC0eioW7mTywihSQE4oLzQn1dB6rZB5fx/3NpNEdAWeCSMB+60/AeT0TCXsxzAlcYVEFCTAksWg==" }, - "fs.realpath": { + "node_modules/fs.realpath": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", - "dev": true + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==" }, - "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 + "node_modules/fsevents": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", + "hasInstallScript": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } }, - "function-bind": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", - "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", - "dev": true + "node_modules/function-bind": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", + "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, - "function.prototype.name": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.5.tgz", - "integrity": "sha512-uN7m/BzVKQnCUF/iW8jYea67v++2u7m5UgENbHRtdDVclOUP+FMPlCNdmk0h/ysGyo2tavMJEDqJAkJdRa1vMA==", + "node_modules/gauge": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/gauge/-/gauge-4.0.4.tgz", + "integrity": "sha512-f9m+BEN5jkg6a0fZjleidjN51VE1X+mPFQ2DJ0uv1V39oCLCbsGe6yjbBnp7eK7z/+GAon99a3nHuqbuuthyPg==", + "deprecated": "This package is no longer supported.", "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3", - "es-abstract": "^1.19.0", - "functions-have-names": "^1.2.2" + "dependencies": { + "aproba": "^1.0.3 || ^2.0.0", + "color-support": "^1.1.3", + "console-control-strings": "^1.1.0", + "has-unicode": "^2.0.1", + "signal-exit": "^3.0.7", + "string-width": "^4.2.3", + "strip-ansi": "^6.0.1", + "wide-align": "^1.1.5" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "functions-have-names": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz", - "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==", - "dev": true - }, - "genfun": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/genfun/-/genfun-5.0.0.tgz", - "integrity": "sha512-KGDOARWVga7+rnB3z9Sd2Letx515owfk0hSxHGuqjANb1M+x2bGZGqHLiozPsYMdM2OubeMni/Hpwmjq6qIUhA==", - "dev": true - }, - "gensync": { + "node_modules/gensync": { "version": "1.0.0-beta.2", "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", - "dev": true + "engines": { + "node": ">=6.9.0" + } }, - "get-caller-file": { + "node_modules/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 - }, - "get-intrinsic": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.0.tgz", - "integrity": "sha512-L049y6nFOuom5wGyRc3/gdTLO94dySVKRACj1RmJZBQXlbTMhtNIgkWkUHq+jYmZvKf14EW1EoJnnjbmoHij0Q==", - "dev": true, - "requires": { - "function-bind": "^1.1.1", - "has": "^1.0.3", - "has-symbols": "^1.0.3" + "engines": { + "node": "6.* || 8.* || >= 10.*" } }, - "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" + "node_modules/get-intrinsic": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.3.0.tgz", + "integrity": "sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ==", + "dependencies": { + "call-bind-apply-helpers": "^1.0.2", + "es-define-property": "^1.0.1", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.1.1", + "function-bind": "^1.1.2", + "get-proto": "^1.0.1", + "gopd": "^1.2.0", + "has-symbols": "^1.1.0", + "hasown": "^2.0.2", + "math-intrinsics": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "get-symbol-description": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.0.tgz", - "integrity": "sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.1.1" + "node_modules/get-package-type": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz", + "integrity": "sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==", + "engines": { + "node": ">=8.0.0" } }, - "get-value": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz", - "integrity": "sha512-Ln0UQDlxH1BapMu3GPtf7CuYNwRZf2gwCuPqbyG6pB8WfmFpzqcy4xtAaAMUhnNqjMKTiCPZG2oMT3YSx8U2NA==", - "dev": true + "node_modules/get-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/get-proto/-/get-proto-1.0.1.tgz", + "integrity": "sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==", + "dependencies": { + "dunder-proto": "^1.0.1", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + } }, - "getpass": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", - "integrity": "sha512-0fzj9JxOLfJ+XGLhR8ze3unN0KZCgZwiSSDz168VERjK8Wl8kVSdcu2kspd4s4wtAa1y/qrVRiAA0WclVsu0ng==", - "dev": true, - "requires": { - "assert-plus": "^1.0.0" + "node_modules/get-stream": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", + "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "glob": { - "version": "7.1.6", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz", - "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==", - "dev": true, - "requires": { + "node_modules/glob": { + "version": "8.0.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-8.0.3.tgz", + "integrity": "sha512-ull455NHSHI/Y1FqGaaYFaLGkNMMJbavMrEGFXG/PGrg6y7sutWHUHrz6gy6WEBH6akM1M414dWKCNs+IhKdiQ==", + "deprecated": "Glob versions prior to v9 are no longer supported", + "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" + "minimatch": "^5.0.1", + "once": "^1.3.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "glob-parent": { + "node_modules/glob-parent": { "version": "5.1.2", "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", - "dev": true, - "requires": { + "dependencies": { "is-glob": "^4.0.1" - } - }, - "global-dirs": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/global-dirs/-/global-dirs-2.1.0.tgz", - "integrity": "sha512-MG6kdOUh/xBnyo9cJFeIKkLEc1AyFq42QTU4XiX51i2NEdxLxLWXIjEjmqKeSuKR7pAZjTqUVoT2b2huxVLgYQ==", - "dev": true, - "requires": { - "ini": "1.3.7" }, - "dependencies": { - "ini": { - "version": "1.3.7", - "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.7.tgz", - "integrity": "sha512-iKpRpXP+CrP2jyrxvg1kMUpXDyRUFDWurxbnVT1vQPx+Wz9uCYsMIqYuSBLV+PAaZG/d7kRLKRFc9oDMsH+mFQ==", - "dev": true - } + "engines": { + "node": ">= 6" } }, - "globals": { + "node_modules/glob-to-regexp": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz", + "integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==" + }, + "node_modules/globals": { "version": "11.12.0", "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", - "dev": true - }, - "globalthis": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.3.tgz", - "integrity": "sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA==", - "dev": true, - "requires": { - "define-properties": "^1.1.3" + "engines": { + "node": ">=4" } }, - "globby": { - "version": "11.1.0", - "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz", - "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==", - "dev": true, - "requires": { - "array-union": "^2.1.0", + "node_modules/globby": { + "version": "13.2.2", + "resolved": "https://registry.npmjs.org/globby/-/globby-13.2.2.tgz", + "integrity": "sha512-Y1zNGV+pzQdh7H39l9zgB4PJqjRNqydvdYCDG4HFXM4XuvSaQQlEc91IU1yALL8gUTDomgBAfz3XJdmUS+oo0w==", + "dependencies": { "dir-glob": "^3.0.1", - "fast-glob": "^3.2.9", - "ignore": "^5.2.0", + "fast-glob": "^3.3.0", + "ignore": "^5.2.4", "merge2": "^1.4.1", - "slash": "^3.0.0" + "slash": "^4.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "gopd": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz", - "integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==", - "dev": true, - "requires": { - "get-intrinsic": "^1.1.3" + "node_modules/gopd": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.2.0.tgz", + "integrity": "sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "got": { - "version": "9.6.0", - "resolved": "https://registry.npmjs.org/got/-/got-9.6.0.tgz", - "integrity": "sha512-R7eWptXuGYxwijs0eV+v3o6+XH1IqVK8dJOEecQfTmkncw9AV4dcw/Dhxi8MdlqPthxxpZyizMzyg8RTmEsG+Q==", - "dev": true, - "requires": { - "@sindresorhus/is": "^0.14.0", - "@szmarczak/http-timer": "^1.1.2", - "cacheable-request": "^6.0.0", - "decompress-response": "^3.3.0", - "duplexer3": "^0.1.4", - "get-stream": "^4.1.0", - "lowercase-keys": "^1.0.1", - "mimic-response": "^1.0.1", - "p-cancelable": "^1.0.0", - "to-readable-stream": "^1.0.0", - "url-parse-lax": "^3.0.0" - } - }, - "graceful-fs": { + "node_modules/graceful-fs": { "version": "4.2.11", "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", - "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==", - "dev": true + "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==" }, - "handle-thing": { + "node_modules/handle-thing": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/handle-thing/-/handle-thing-2.0.1.tgz", - "integrity": "sha512-9Qn4yBxelxoh2Ow62nP+Ka/kMnOXRi8BXnRaUwezLNhqelnN49xKz4F/dPP8OYLxLxq6JDtZb2i9XznUQbNPTg==", - "dev": true - }, - "har-schema": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz", - "integrity": "sha512-Oqluz6zhGX8cyRaTQlFMPw80bSJVG2x/cFb8ZPhUILGgHka9SsokCCOQgpveePerqidZOrT14ipqfJb7ILcW5Q==", - "dev": true - }, - "har-validator": { - "version": "5.1.5", - "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.5.tgz", - "integrity": "sha512-nmT2T0lljbxdQZfspsno9hgrG3Uir6Ks5afism62poxqBM6sDnMEuPmzTq8XN0OEwqKLLdh1jQI3qyE66Nzb3w==", - "dev": true, - "requires": { - "ajv": "^6.12.3", - "har-schema": "^2.0.0" - } - }, - "has": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", - "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", - "dev": true, - "requires": { - "function-bind": "^1.1.1" - } - }, - "has-ansi": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", - "integrity": "sha512-C8vBJ8DwUCx19vhm7urhTuUsr4/IyP6l4VzNQDv+ryHQObW3TTTp9yB68WpYgRe2bbaGuZ/se74IqFeVnMnLZg==", - "dev": true, - "requires": { - "ansi-regex": "^2.0.0" - }, - "dependencies": { - "ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==", - "dev": true - } - } - }, - "has-bigints": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz", - "integrity": "sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==", - "dev": true - }, - "has-binary2": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has-binary2/-/has-binary2-1.0.3.tgz", - "integrity": "sha512-G1LWKhDSvhGeAQ8mPVQlqNcOB2sJdwATtZKl2pDKKHfpf/rYj24lkinxf69blJbnsvtqqNU+L3SL50vzZhXOnw==", - "dev": true, - "requires": { - "isarray": "2.0.1" - }, - "dependencies": { - "isarray": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.1.tgz", - "integrity": "sha512-c2cu3UxbI+b6kR3fy0nRnAhodsvR9dx7U5+znCOzdj6IfP3upFURTr0Xl5BlQZNKZjEtxrmVyfSdeE3O57smoQ==", - "dev": true - } - } - }, - "has-cors": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/has-cors/-/has-cors-1.1.0.tgz", - "integrity": "sha512-g5VNKdkFuUuVCP9gYfDJHjK2nqdQJ7aDLTnycnc2+RvsOQbuLdF5pm7vuE5J76SEBIQjs4kQY/BWq74JUmjbXA==", - "dev": true - }, - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", - "dev": true - }, - "has-property-descriptors": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz", - "integrity": "sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==", - "dev": true, - "requires": { - "get-intrinsic": "^1.1.1" - } - }, - "has-proto": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.1.tgz", - "integrity": "sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg==", - "dev": true + "integrity": "sha512-9Qn4yBxelxoh2Ow62nP+Ka/kMnOXRi8BXnRaUwezLNhqelnN49xKz4F/dPP8OYLxLxq6JDtZb2i9XznUQbNPTg==" }, - "has-symbols": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", - "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", - "dev": true - }, - "has-tostringtag": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz", - "integrity": "sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==", - "dev": true, - "requires": { - "has-symbols": "^1.0.2" + "node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "engines": { + "node": ">=8" } }, - "has-value": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-value/-/has-value-1.0.0.tgz", - "integrity": "sha512-IBXk4GTsLYdQ7Rvt+GRBrFSVEkmuOUy4re0Xjd9kJSUQpnTrWR4/y9RpfexN9vkAPMFuQoeWKwqzPozRTlasGw==", - "dev": true, - "requires": { - "get-value": "^2.0.6", - "has-values": "^1.0.0", - "isobject": "^3.0.0" + "node_modules/has-symbols": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.1.0.tgz", + "integrity": "sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "has-values": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-values/-/has-values-1.0.0.tgz", - "integrity": "sha512-ODYZC64uqzmtfGMEAX/FvZiRyWLpAC3vYnNunURUnkGVTS+mI0smVsWaPydRBsE3g+ok7h960jChO8mFcWlHaQ==", - "dev": true, - "requires": { - "is-number": "^3.0.0", - "kind-of": "^4.0.0" - }, - "dependencies": { - "is-number": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", - "integrity": "sha512-4cboCqIpliH+mAvFNegjZQ4kgKc3ZUhQVr3HvWbSh5q3WH2v82ct+T2Y1hdU5Gdtorx/cLifQjqCbL7bpznLTg==", - "dev": true, - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "kind-of": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz", - "integrity": "sha512-24XsCxmEbRwEDbz/qz3stgin8TTzZ1ESR56OMCN0ujYg+vRutNSiOj9bHH9u85DKgXguraugV5sFuvbD4FW/hw==", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } + "node_modules/has-tostringtag": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.2.tgz", + "integrity": "sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==", + "devOptional": true, + "dependencies": { + "has-symbols": "^1.0.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "has-yarn": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/has-yarn/-/has-yarn-2.1.0.tgz", - "integrity": "sha512-UqBRqi4ju7T+TqGNdqAO0PaSVGsDGJUBQvk9eUWNGRY1CFGDzYhLWoM7JQEemnlvVcv/YEmc2wNW8BC24EnUsw==", + "node_modules/has-unicode": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", + "integrity": "sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ==", "dev": true }, - "hash-base": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.1.0.tgz", - "integrity": "sha512-1nmYp/rhMDiE7AYkDw+lLwlAzz0AntGIe51F3RfFfEqyQ3feY2eI/NcwC6umIQVOASPMsWJLJScWKSSvzL9IVA==", - "dev": true, - "requires": { - "inherits": "^2.0.4", - "readable-stream": "^3.6.0", - "safe-buffer": "^5.2.0" - }, - "dependencies": { - "readable-stream": { - "version": "3.6.2", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", - "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", - "dev": true, - "requires": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - } - } + "node_modules/hasown": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", + "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", + "dependencies": { + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" } }, - "hash.js": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.7.tgz", - "integrity": "sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==", - "dev": true, - "requires": { - "inherits": "^2.0.3", - "minimalistic-assert": "^1.0.1" + "node_modules/hdr-histogram-js": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/hdr-histogram-js/-/hdr-histogram-js-2.0.3.tgz", + "integrity": "sha512-Hkn78wwzWHNCp2uarhzQ2SGFLU3JY8SBDDd3TAABK4fc30wm+MuPOrg5QVFVfkKOQd6Bfz3ukJEI+q9sXEkK1g==", + "dependencies": { + "@assemblyscript/loader": "^0.10.1", + "base64-js": "^1.2.0", + "pako": "^1.0.3" } }, - "hex-color-regex": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/hex-color-regex/-/hex-color-regex-1.1.0.tgz", - "integrity": "sha512-l9sfDFsuqtOqKDsQdqrMRk0U85RZc0RtOR9yPI7mRVOa4FsR/BVnZ0shmQRM96Ji99kYZP/7hn1cedc1+ApsTQ==", - "dev": true + "node_modules/hdr-histogram-percentiles-obj": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/hdr-histogram-percentiles-obj/-/hdr-histogram-percentiles-obj-3.0.0.tgz", + "integrity": "sha512-7kIufnBqdsBGcSZLPJwqHT3yhk1QTsSlFsVD3kx5ixH/AlgBs9yM1q6DPhXZ8f8gtdqgh7N7/5btRLpQsS2gHw==" }, - "hmac-drbg": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz", - "integrity": "sha512-Tti3gMqLdZfhOQY1Mzf/AanLiqh1WTiJgEj26ZuYQ9fbkLomzGchCws4FyrSd4VkpBfiNhaE1On+lOz894jvXg==", + "node_modules/hosted-git-info": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-5.2.1.tgz", + "integrity": "sha512-xIcQYMnhcx2Nr4JTjsFmwwnr9vldugPy9uVm0o87bjqqWMv9GaqsTeT+i99wTl0mk1uLxJtHxLb8kymqTENQsw==", "dev": true, - "requires": { - "hash.js": "^1.0.3", - "minimalistic-assert": "^1.0.0", - "minimalistic-crypto-utils": "^1.0.1" + "dependencies": { + "lru-cache": "^7.5.1" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "hosted-git-info": { - "version": "3.0.8", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-3.0.8.tgz", - "integrity": "sha512-aXpmwoOhRBrw6X3j0h5RloK4x1OzsxMPyxqIHyNfSe2pypkVTZFpEiRoSipPEPlMrh0HW/XsjkJ5WgnCirpNUw==", + "node_modules/hosted-git-info/node_modules/lru-cache": { + "version": "7.18.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", + "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", "dev": true, - "requires": { - "lru-cache": "^6.0.0" - }, - "dependencies": { - "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" - } - }, - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - } + "engines": { + "node": ">=12" } }, - "hpack.js": { + "node_modules/hpack.js": { "version": "2.1.6", "resolved": "https://registry.npmjs.org/hpack.js/-/hpack.js-2.1.6.tgz", "integrity": "sha512-zJxVehUdMGIKsRaNt7apO2Gqp0BdqW5yaiGHXXmbpvxgBYVZnAql+BJb4RO5ad2MgpbZKn5G6nMnegrH1FcNYQ==", - "dev": true, - "requires": { + "dependencies": { "inherits": "^2.0.1", "obuf": "^1.0.0", "readable-stream": "^2.0.1", "wbuf": "^1.1.0" } }, - "hsl-regex": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/hsl-regex/-/hsl-regex-1.0.0.tgz", - "integrity": "sha512-M5ezZw4LzXbBKMruP+BNANf0k+19hDQMgpzBIYnya//Al+fjNct9Wf3b1WedLqdEs2hKBvxq/jh+DsHJLj0F9A==", - "dev": true + "node_modules/hpack.js/node_modules/readable-stream": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", + "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", + "dependencies": { + "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" + } }, - "hsla-regex": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/hsla-regex/-/hsla-regex-1.0.0.tgz", - "integrity": "sha512-7Wn5GMLuHBjZCb2bTmnDOycho0p/7UVaAeqXZGbHrBCl6Yd/xDhQJAXe6Ga9AXJH2I5zY1dEdYw2u1UptnSBJA==", - "dev": true + "node_modules/hpack.js/node_modules/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==" }, - "html-entities": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/html-entities/-/html-entities-1.4.0.tgz", - "integrity": "sha512-8nxjcBcd8wovbeKx7h3wTji4e6+rhaVuPNpMqwWgnHh+N9ToqsCs6XztWRBPQ+UtzsoMAdKZtUENoVzU/EMtZA==", - "dev": true + "node_modules/hpack.js/node_modules/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==", + "dependencies": { + "safe-buffer": "~5.1.0" + } }, - "html-escaper": { + "node_modules/html-entities": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/html-entities/-/html-entities-2.6.0.tgz", + "integrity": "sha512-kig+rMn/QOVRvr7c86gQ8lWXq+Hkv6CbAH1hLu+RG338StTpE8Z0b44SDVaqVu7HGKf27frdmUYEs9hTUX/cLQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/mdevils" + }, + { + "type": "patreon", + "url": "https://patreon.com/mdevils" + } + ] + }, + "node_modules/html-escaper": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", "dev": true }, - "http-cache-semantics": { - "version": "3.8.1", - "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-3.8.1.tgz", - "integrity": "sha512-5ai2iksyV8ZXmnZhHH4rWPoxxistEexSi5936zIQ1bnNTW5VnA85B6P/VpXiRM017IgRvb2kKo1a//y+0wSp3w==", + "node_modules/http-cache-semantics": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.1.tgz", + "integrity": "sha512-er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ==", "dev": true }, - "http-deceiver": { + "node_modules/http-deceiver": { "version": "1.2.7", "resolved": "https://registry.npmjs.org/http-deceiver/-/http-deceiver-1.2.7.tgz", - "integrity": "sha512-LmpOGxTfbpgtGVxJrj5k7asXHCgNZp5nLfp+hWc8QQRqtb7fUy6kRY3BO1h9ddF6yIPYUARgxGOwB42DnxIaNw==", - "dev": true + "integrity": "sha512-LmpOGxTfbpgtGVxJrj5k7asXHCgNZp5nLfp+hWc8QQRqtb7fUy6kRY3BO1h9ddF6yIPYUARgxGOwB42DnxIaNw==" }, - "http-errors": { + "node_modules/http-errors": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==", - "dev": true, - "requires": { + "dependencies": { "depd": "2.0.0", "inherits": "2.0.4", "setprototypeof": "1.2.0", "statuses": "2.0.1", "toidentifier": "1.0.1" }, - "dependencies": { - "statuses": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", - "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", - "dev": true - } + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/http-errors/node_modules/statuses": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", + "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", + "engines": { + "node": ">= 0.8" } }, - "http-proxy": { + "node_modules/http-parser-js": { + "version": "0.5.10", + "resolved": "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.5.10.tgz", + "integrity": "sha512-Pysuw9XpUq5dVc/2SMHpuTY01RFl8fttgcyunjL7eEMhGM3cI4eOmiCycJDVCo/7O7ClfQD3SaI6ftDzqOXYMA==" + }, + "node_modules/http-proxy": { "version": "1.18.1", "resolved": "https://registry.npmjs.org/http-proxy/-/http-proxy-1.18.1.tgz", "integrity": "sha512-7mz/721AbnJwIVbnaSv1Cz3Am0ZLT/UBwkC92VlxhXv/k/BBQfM2fXElQNC27BVGr0uwUpplYPQM9LnaBMR5NQ==", - "dev": true, - "requires": { + "dependencies": { "eventemitter3": "^4.0.0", "follow-redirects": "^1.0.0", "requires-port": "^1.0.0" + }, + "engines": { + "node": ">=8.0.0" } }, - "http-proxy-agent": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-2.1.0.tgz", - "integrity": "sha512-qwHbBLV7WviBl0rQsOzH6o5lwyOIvwp/BdFnvVxXORldu5TmjFfjzBcWUWS5kWAZhmv+JtiDhSuQCp4sBfbIgg==", + "node_modules/http-proxy-agent": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-5.0.0.tgz", + "integrity": "sha512-n2hY8YdoRE1i7r6M0w9DIw5GgZN0G25P8zLCRQ8rjXtTU3vsNFBI/vWK/UIeE6g5MUUz6avwAPXmL6Fy9D/90w==", "dev": true, - "requires": { - "agent-base": "4", - "debug": "3.1.0" - }, "dependencies": { - "debug": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", - "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true - } + "@tootallnate/once": "2", + "agent-base": "6", + "debug": "4" + }, + "engines": { + "node": ">= 6" } }, - "http-proxy-middleware": { - "version": "0.19.1", - "resolved": "https://registry.npmjs.org/http-proxy-middleware/-/http-proxy-middleware-0.19.1.tgz", - "integrity": "sha512-yHYTgWMQO8VvwNS22eLLloAkvungsKdKTLO8AJlftYIKNfJr3GK3zK0ZCfzDDGUBttdGc8xFy1mCitvNKQtC3Q==", - "dev": true, - "requires": { - "http-proxy": "^1.17.0", - "is-glob": "^4.0.0", - "lodash": "^4.17.11", - "micromatch": "^3.1.10" - }, - "dependencies": { - "braces": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", - "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", - "dev": true, - "requires": { - "arr-flatten": "^1.1.0", - "array-unique": "^0.3.2", - "extend-shallow": "^2.0.1", - "fill-range": "^4.0.0", - "isobject": "^3.0.1", - "repeat-element": "^1.1.2", - "snapdragon": "^0.8.1", - "snapdragon-node": "^2.0.1", - "split-string": "^3.0.2", - "to-regex": "^3.0.1" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "fill-range": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", - "integrity": "sha512-VcpLTWqWDiTerugjj8e3+esbg+skS3M9e54UuR3iCeIDMXCLTsAH8hTSzDQU/X6/6t3eYkOKoZSef2PlU6U1XQ==", - "dev": true, - "requires": { - "extend-shallow": "^2.0.1", - "is-number": "^3.0.0", - "repeat-string": "^1.6.1", - "to-regex-range": "^2.1.0" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "is-extendable": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", - "integrity": "sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==", - "dev": true - }, - "is-number": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", - "integrity": "sha512-4cboCqIpliH+mAvFNegjZQ4kgKc3ZUhQVr3HvWbSh5q3WH2v82ct+T2Y1hdU5Gdtorx/cLifQjqCbL7bpznLTg==", - "dev": true, - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "micromatch": { - "version": "3.1.10", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", - "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", - "dev": true, - "requires": { - "arr-diff": "^4.0.0", - "array-unique": "^0.3.2", - "braces": "^2.3.1", - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "extglob": "^2.0.4", - "fragment-cache": "^0.2.1", - "kind-of": "^6.0.2", - "nanomatch": "^1.2.9", - "object.pick": "^1.3.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.2" - } - }, - "to-regex-range": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", - "integrity": "sha512-ZZWNfCjUokXXDGXFpZehJIkZqq91BcULFq/Pi7M5i4JnxXdhMKAK682z8bCW3o8Hj1wuuzoKcW3DfVzaP6VuNg==", - "dev": true, - "requires": { - "is-number": "^3.0.0", - "repeat-string": "^1.6.1" - } + "node_modules/http-proxy-middleware": { + "version": "2.0.9", + "resolved": "https://registry.npmjs.org/http-proxy-middleware/-/http-proxy-middleware-2.0.9.tgz", + "integrity": "sha512-c1IyJYLYppU574+YI7R4QyX2ystMtVXZwIdzazUIPIJsHuWNd+mho2j+bKoHftndicGj9yh+xjd+l0yj7VeT1Q==", + "dependencies": { + "@types/http-proxy": "^1.17.8", + "http-proxy": "^1.18.1", + "is-glob": "^4.0.1", + "is-plain-obj": "^3.0.0", + "micromatch": "^4.0.2" + }, + "engines": { + "node": ">=12.0.0" + }, + "peerDependencies": { + "@types/express": "^4.17.13" + }, + "peerDependenciesMeta": { + "@types/express": { + "optional": true } } }, - "http-signature": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", - "integrity": "sha512-CAbnr6Rz4CYQkLYUtSNXxQPUH2gK8f3iWexVlsnMeD+GjlsQ0Xsy1cOX+mN3dtxYomRy21CiOzU8Uhw6OwncEQ==", - "dev": true, - "requires": { - "assert-plus": "^1.0.0", - "jsprim": "^1.2.2", - "sshpk": "^1.7.0" + "node_modules/https-proxy-agent": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", + "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", + "dependencies": { + "agent-base": "6", + "debug": "4" + }, + "engines": { + "node": ">= 6" } }, - "https-browserify": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/https-browserify/-/https-browserify-1.0.0.tgz", - "integrity": "sha512-J+FkSdyD+0mA0N+81tMotaRMfSL9SGi+xpD3T6YApKsc3bGSXJlfXri3VyFOeYkfLRQisDk1W+jIFFKBeUBbBg==", - "dev": true - }, - "https-proxy-agent": { - "version": "2.2.4", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-2.2.4.tgz", - "integrity": "sha512-OmvfoQ53WLjtA9HeYP9RNrWMJzzAz1JGaSFr1nijg0PVR1JaD/xbJq1mdEIIlxGpXp9eSe/O2LgU9DJmTPd0Eg==", - "dev": true, - "requires": { - "agent-base": "^4.3.0", - "debug": "^3.1.0" - }, - "dependencies": { - "debug": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - } + "node_modules/human-signals": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz", + "integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==", + "engines": { + "node": ">=10.17.0" } }, - "humanize-ms": { + "node_modules/humanize-ms": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/humanize-ms/-/humanize-ms-1.2.1.tgz", "integrity": "sha512-Fl70vYtsAFb/C06PTS9dZBo7ihau+Tu/DNCk/OyHhea07S+aeMWpFFkUaXRa8fI+ScZbEI8dfSxwY7gxZ9SAVQ==", "dev": true, - "requires": { + "dependencies": { "ms": "^2.0.0" } }, - "iconv-lite": { + "node_modules/iconv-lite": { "version": "0.4.24", "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", - "dev": true, - "requires": { + "dependencies": { "safer-buffer": ">= 2.1.2 < 3" + }, + "engines": { + "node": ">=0.10.0" } }, - "icss-utils": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/icss-utils/-/icss-utils-4.1.1.tgz", - "integrity": "sha512-4aFq7wvWyMHKgxsH8QQtGpvbASCf+eM3wPRLI6R+MgAnTCZ6STYsRvttLvRWK0Nfif5piF394St3HeJDaljGPA==", - "dev": true, - "requires": { - "postcss": "^7.0.14" + "node_modules/icss-utils": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/icss-utils/-/icss-utils-5.1.0.tgz", + "integrity": "sha512-soFhflCVWLfRNOPU3iv5Z9VUdT44xFRbzjLsEzSr5AQmgqPMTHdU3PMT1Cf1ssx8fLNJDA1juftYl+PUcv3MqA==", + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" } }, - "ieee754": { + "node_modules/ieee754": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", - "dev": true - }, - "iferr": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/iferr/-/iferr-0.1.5.tgz", - "integrity": "sha512-DUNFN5j7Tln0D+TxzloUjKB+CtVu6myn0JEFak6dG18mNt9YkQ6lzGCdafwofISZ1lLF3xRHJ98VKy9ynkcFaA==", - "dev": true + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] }, - "ignore": { - "version": "5.2.4", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.4.tgz", - "integrity": "sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ==", - "dev": true + "node_modules/ignore": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.2.tgz", + "integrity": "sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==", + "engines": { + "node": ">= 4" + } }, - "ignore-walk": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/ignore-walk/-/ignore-walk-3.0.4.tgz", - "integrity": "sha512-PY6Ii8o1jMRA1z4F2hRkH/xN59ox43DavKvD3oDpfurRlOJyAHpifIwpbdv1n4jt4ov0jSpw3kQ4GhJnpBL6WQ==", + "node_modules/ignore-walk": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ignore-walk/-/ignore-walk-5.0.1.tgz", + "integrity": "sha512-yemi4pMf51WKT7khInJqAvsIGzoqYXblnsz0ql8tM+yi1EKYTY1evX4NAbJrLL/Aanr2HyZeluqU+Oi7MGHokw==", "dev": true, - "requires": { - "minimatch": "^3.0.4" + "dependencies": { + "minimatch": "^5.0.1" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "image-size": { + "node_modules/image-size": { "version": "0.5.5", "resolved": "https://registry.npmjs.org/image-size/-/image-size-0.5.5.tgz", "integrity": "sha512-6TDAlDPZxUFCv+fuOkIoXT/V/f3Qbq8e37p+YOiYrUv3v9cc3/6x78VdfPgFVaB9dZYeLUfKgHRebpkm/oP2VQ==", - "dev": true, - "optional": true - }, - "immediate": { - "version": "3.0.6", - "resolved": "https://registry.npmjs.org/immediate/-/immediate-3.0.6.tgz", - "integrity": "sha512-XXOFtyqDjNDAQxVfYxuF7g9Il/IbWmmlQg2MYKOH8ExIT1qg6xc4zyS3HaEEATgs1btfzxq15ciUiY7gjSXRGQ==", - "dev": true - }, - "import-cwd": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/import-cwd/-/import-cwd-2.1.0.tgz", - "integrity": "sha512-Ew5AZzJQFqrOV5BTW3EIoHAnoie1LojZLXKcCQ/yTRyVZosBhK1x1ViYjHGf5pAFOq8ZyChZp6m/fSN7pJyZtg==", - "dev": true, - "requires": { - "import-from": "^2.1.0" + "optional": true, + "bin": { + "image-size": "bin/image-size.js" + }, + "engines": { + "node": ">=0.10.0" } }, - "import-fresh": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-2.0.0.tgz", - "integrity": "sha512-eZ5H8rcgYazHbKC3PG4ClHNykCSxtAhxSSEM+2mb+7evD2CKF5V7c0dNum7AdpDh0ZdICwZY9sRSn8f+KH96sg==", - "dev": true, - "requires": { - "caller-path": "^2.0.0", - "resolve-from": "^3.0.0" - } + "node_modules/immutable": { + "version": "4.3.7", + "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.3.7.tgz", + "integrity": "sha512-1hqclzwYwjRDFLjcFxOM5AYkkG0rpFPpr1RLPMEuGczoS7YA8gLhy8SWXYRAA/XwfEHpfo3cw5JGioS32fnMRw==" }, - "import-from": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/import-from/-/import-from-2.1.0.tgz", - "integrity": "sha512-0vdnLL2wSGnhlRmzHJAg5JHjt1l2vYhzJ7tNLGbeVg0fse56tpGaH0uzH+r9Slej+BSXXEHvBKDEnVSLLE9/+w==", - "dev": true, - "requires": { - "resolve-from": "^3.0.0" + "node_modules/import-fresh": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.1.tgz", + "integrity": "sha512-TR3KfrTZTYLPB6jUjfx6MF9WcWrHL9su5TObK4ZkYgBdWKPOFoSoQIdEuTuR82pmtxH2spWG9h6etwfr1pLBqQ==", + "dependencies": { + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "import-lazy": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/import-lazy/-/import-lazy-2.1.0.tgz", - "integrity": "sha512-m7ZEHgtw69qOGw+jwxXkHlrlIPdTGkyh66zXZ1ajZbxkDBNjSY/LGbmjc7h0s2ELsUDTAhFr55TrPSSqJGPG0A==", - "dev": true - }, - "import-local": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/import-local/-/import-local-2.0.0.tgz", - "integrity": "sha512-b6s04m3O+s3CGSbqDIyP4R6aAwAeYlVq9+WUWep6iHa8ETRf9yei1U48C5MmfJmV9AiLYYBKPMq/W+/WRpQmCQ==", - "dev": true, - "requires": { - "pkg-dir": "^3.0.0", - "resolve-cwd": "^2.0.0" - }, - "dependencies": { - "find-up": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", - "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", - "dev": true, - "requires": { - "locate-path": "^3.0.0" - } - }, - "locate-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", - "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", - "dev": true, - "requires": { - "p-locate": "^3.0.0", - "path-exists": "^3.0.0" - } - }, - "p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", - "dev": true, - "requires": { - "p-try": "^2.0.0" - } - }, - "p-locate": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", - "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", - "dev": true, - "requires": { - "p-limit": "^2.0.0" - } - }, - "path-exists": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", - "integrity": "sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==", - "dev": true - }, - "pkg-dir": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-3.0.0.tgz", - "integrity": "sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw==", - "dev": true, - "requires": { - "find-up": "^3.0.0" - } - } + "node_modules/import-fresh/node_modules/resolve-from": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", + "engines": { + "node": ">=4" } }, - "imurmurhash": { + "node_modules/imurmurhash": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", - "dev": true + "engines": { + "node": ">=0.8.19" + } }, - "indent-string": { + "node_modules/indent-string": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", - "dev": true - }, - "indexes-of": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/indexes-of/-/indexes-of-1.0.1.tgz", - "integrity": "sha512-bup+4tap3Hympa+JBJUG7XuOsdNQ6fxt0MHyXMKuLBKn0OqsTfvUxkUrroEX1+B2VsSHvCjiIcZVxRtYa4nllA==", - "dev": true - }, - "indexof": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/indexof/-/indexof-0.0.1.tgz", - "integrity": "sha512-i0G7hLJ1z0DE8dsqJa2rycj9dBmNKgXBvotXtZYXakU9oivfB9Uj2ZBC27qqef2U58/ZLwalxa1X/RDCdkHtVg==", - "dev": true + "engines": { + "node": ">=8" + } }, - "infer-owner": { + "node_modules/infer-owner": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/infer-owner/-/infer-owner-1.0.4.tgz", - "integrity": "sha512-IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A==", - "dev": true + "integrity": "sha512-IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A==" }, - "inflight": { + "node_modules/inflight": { "version": "1.0.6", "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", - "dev": true, - "requires": { + "deprecated": "This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.", + "dependencies": { "once": "^1.3.0", "wrappy": "1" } }, - "inherits": { + "node_modules/inherits": { "version": "2.0.4", "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", - "dev": true - }, - "ini": { - "version": "1.3.6", - "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.6.tgz", - "integrity": "sha512-IZUoxEjNjubzrmvzZU4lKP7OnYmX72XRl3sqkfJhBKweKi5rnGi5+IUdlj/H1M+Ip5JQ1WzaDMOBRY90Ajc5jg==", - "dev": true + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" }, - "injection-js": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/injection-js/-/injection-js-2.4.0.tgz", - "integrity": "sha512-6jiJt0tCAo9zjHbcwLiPL+IuNe9SQ6a9g0PEzafThW3fOQi0mrmiJGBJvDD6tmhPh8cQHIQtCOrJuBfQME4kPA==", + "node_modules/ini": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ini/-/ini-3.0.0.tgz", + "integrity": "sha512-TxYQaeNW/N8ymDvwAxPyRbhMBtnEwuvaTYpOQkFx1nSeusgezHniEc/l35Vo4iCq/mMiTJbpD7oYxN98hFlfmw==", "dev": true, - "requires": { - "tslib": "^2.0.0" - }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/injection-js": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/injection-js/-/injection-js-2.5.0.tgz", + "integrity": "sha512-UpY2ONt4xbht4GhSqQ2zMJ1rBIQq4uOY+DlR6aOeYyqK7xadXt7UQbJIyxmgk288bPMkIZKjViieHm0O0i72Jw==", "dependencies": { - "tslib": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.5.0.tgz", - "integrity": "sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg==", - "dev": true - } + "tslib": "^2.0.0" } }, - "inquirer": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-7.1.0.tgz", - "integrity": "sha512-5fJMWEmikSYu0nv/flMc475MhGbB7TSPd/2IpFV4I4rMklboCH2rQjYY5kKiYGHqUF9gvaambupcJFFG9dvReg==", - "dev": true, - "requires": { + "node_modules/inquirer": { + "version": "8.2.4", + "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-8.2.4.tgz", + "integrity": "sha512-nn4F01dxU8VeKfq192IjLsxu0/OmMZ4Lg3xKAns148rCaXP6ntAoEkVYZThWjwON8AlzdZZi6oqnhNbxUG9hVg==", + "dependencies": { "ansi-escapes": "^4.2.1", - "chalk": "^3.0.0", + "chalk": "^4.1.1", "cli-cursor": "^3.1.0", - "cli-width": "^2.0.0", + "cli-width": "^3.0.0", "external-editor": "^3.0.3", "figures": "^3.0.0", - "lodash": "^4.17.15", + "lodash": "^4.17.21", "mute-stream": "0.0.8", + "ora": "^5.4.1", "run-async": "^2.4.0", - "rxjs": "^6.5.3", + "rxjs": "^7.5.5", "string-width": "^4.1.0", "strip-ansi": "^6.0.0", - "through": "^2.3.6" - }, - "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" - } - }, - "chalk": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", - "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.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 - }, - "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" - } - } - } - }, - "internal-ip": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/internal-ip/-/internal-ip-4.3.0.tgz", - "integrity": "sha512-S1zBo1D6zcsyuC6PMmY5+55YMILQ9av8lotMx447Bq6SAgo/sDK6y6uUKmuYhW7eacnIhFfsPmCNYdDzsnnDCg==", - "dev": true, - "requires": { - "default-gateway": "^4.2.0", - "ipaddr.js": "^1.9.0" - } - }, - "internal-slot": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.5.tgz", - "integrity": "sha512-Y+R5hJrzs52QCG2laLn4udYVnxsfny9CpOhNhUvk/SSSVyF6T27FzRbF0sroPidSu3X8oEAkOn2K804mjpt6UQ==", - "dev": true, - "requires": { - "get-intrinsic": "^1.2.0", - "has": "^1.0.3", - "side-channel": "^1.0.4" - } - }, - "invariant": { - "version": "2.2.4", - "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz", - "integrity": "sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==", - "dev": true, - "requires": { - "loose-envify": "^1.0.0" - } - }, - "ip": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/ip/-/ip-1.1.5.tgz", - "integrity": "sha512-rBtCAQAJm8A110nbwn6YdveUnuZH3WrC36IwkRXxDnq53JvXA2NVQvB7IHyKomxK1MJ4VDNw3UtFDdXQ+AvLYA==", - "dev": true - }, - "ip-regex": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/ip-regex/-/ip-regex-2.1.0.tgz", - "integrity": "sha512-58yWmlHpp7VYfcdTwMTvwMmqx/Elfxjd9RXTDyMsbL7lLWmhMylLEqiYVLKuLzOZqVgiWXD9MfR62Vv89VRxkw==", - "dev": true - }, - "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==", - "dev": true - }, - "is-absolute-url": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-absolute-url/-/is-absolute-url-2.1.0.tgz", - "integrity": "sha512-vOx7VprsKyllwjSkLV79NIhpyLfr3jAp7VaTCMXOJHu4m0Ew1CZ2fcjASwmV1jI3BWuWHB013M48eyeldk9gYg==", - "dev": true - }, - "is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-arguments": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/is-arguments/-/is-arguments-1.1.1.tgz", - "integrity": "sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" - } - }, - "is-array-buffer": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.2.tgz", - "integrity": "sha512-y+FyyR/w8vfIRq4eQcM1EYgSTnmHXPqaF+IgzgraytCFq5Xh8lllDVmAZolPJiZttZLeFSINPYMaEJ7/vWUa1w==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.2.0", - "is-typed-array": "^1.1.10" - } - }, - "is-arrayish": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", - "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==", - "dev": true - }, - "is-bigint": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz", - "integrity": "sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==", - "dev": true, - "requires": { - "has-bigints": "^1.0.1" - } - }, - "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" + "through": "^2.3.6", + "wrap-ansi": "^7.0.0" + }, + "engines": { + "node": ">=12.0.0" } }, - "is-boolean-object": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz", - "integrity": "sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==", + "node_modules/ip-address": { + "version": "9.0.5", + "resolved": "https://registry.npmjs.org/ip-address/-/ip-address-9.0.5.tgz", + "integrity": "sha512-zHtQzGojZXTwZTHQqra+ETKd4Sn3vgi7uBmlPoXVWZqYvuKmtI0l/VZTjqGmJY9x88GGOaZ9+G9ES8hC4T4X8g==", "dev": true, - "requires": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" + "dependencies": { + "jsbn": "1.1.0", + "sprintf-js": "^1.1.3" + }, + "engines": { + "node": ">= 12" } }, - "is-buffer": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", - "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==", - "dev": true - }, - "is-callable": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz", - "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==", + "node_modules/ip-address/node_modules/sprintf-js": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.1.3.tgz", + "integrity": "sha512-Oo+0REFV59/rz3gfJNKQiBlwfHaSESl1pcGyABQsnnIfWOFt6JNj5gCog2U6MLZ//IGYD+nA8nI+mTShREReaA==", "dev": true }, - "is-ci": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-2.0.0.tgz", - "integrity": "sha512-YfJT7rkpQB0updsdHLGWrvhBJfcfzNNawYDNIyQXJz0IViGf75O8EBPKSdvw2rF+LGCsX4FZ8tcr3b19LcZq4w==", - "dev": true, - "requires": { - "ci-info": "^2.0.0" + "node_modules/ipaddr.js": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-2.2.0.tgz", + "integrity": "sha512-Ag3wB2o37wslZS19hZqorUnrnzSkpOVy+IiiDEiTqNubEYpYuHWIf6K4psgN2ZWKExS4xhVCrRVfb/wfW8fWJA==", + "engines": { + "node": ">= 10" } }, - "is-color-stop": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-color-stop/-/is-color-stop-1.1.0.tgz", - "integrity": "sha512-H1U8Vz0cfXNujrJzEcvvwMDW9Ra+biSYA3ThdQvAnMLJkEHQXn6bWzLkxHtVYJ+Sdbx0b6finn3jZiaVe7MAHA==", - "dev": true, - "requires": { - "css-color-names": "^0.0.4", - "hex-color-regex": "^1.1.0", - "hsl-regex": "^1.0.0", - "hsla-regex": "^1.0.0", - "rgb-regex": "^1.0.1", - "rgba-regex": "^1.0.0" - } - }, - "is-core-module": { - "version": "2.11.0", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.11.0.tgz", - "integrity": "sha512-RRjxlvLDkD1YJwDbroBHMb+cukurkDWNyHx7D3oNB5x9rb5ogcksMC5wHCadcXoo67gVr/+3GFySh3134zi6rw==", - "dev": true, - "requires": { - "has": "^1.0.3" - } + "node_modules/is-arrayish": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==" }, - "is-data-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", - "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", - "dev": true, - "requires": { - "kind-of": "^6.0.0" + "node_modules/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==", + "dependencies": { + "binary-extensions": "^2.0.0" + }, + "engines": { + "node": ">=8" } }, - "is-date-object": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz", - "integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==", - "dev": true, - "requires": { - "has-tostringtag": "^1.0.0" + "node_modules/is-builtin-module": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/is-builtin-module/-/is-builtin-module-3.2.1.tgz", + "integrity": "sha512-BSLE3HnV2syZ0FK0iMA/yUGplUeMmNz4AW5fnTunbCIqZi4vG3WjJT9FHMy5D69xmAYBHXQhJdALdpwVxV501A==", + "dependencies": { + "builtin-modules": "^3.3.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "is-descriptor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", - "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", - "dev": true, - "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" + "node_modules/is-core-module": { + "version": "2.16.1", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.16.1.tgz", + "integrity": "sha512-UfoeMA6fIJ8wTYFEUjelnaGI67v6+N7qXJEvQuIGa99l4xsCruSYOVSQ0uPANn4dAzm8lkYPaKLrrijLq7x23w==", + "dependencies": { + "hasown": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "is-directory": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/is-directory/-/is-directory-0.3.1.tgz", - "integrity": "sha512-yVChGzahRFvbkscn2MlwGismPO12i9+znNruC5gVEntG3qu0xQMzsGg/JFbrsqDOHtHFPci+V5aP5T9I+yeKqw==", - "dev": true - }, - "is-docker": { + "node_modules/is-docker": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz", "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==", - "dev": true - }, - "is-extendable": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", - "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", - "dev": true, - "requires": { - "is-plain-object": "^2.0.4" + "bin": { + "is-docker": "cli.js" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "is-extglob": { + "node_modules/is-extglob": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", - "dev": true + "engines": { + "node": ">=0.10.0" + } }, - "is-fullwidth-code-point": { + "node_modules/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 + "engines": { + "node": ">=8" + } }, - "is-glob": { + "node_modules/is-glob": { "version": "4.0.3", "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", - "dev": true, - "requires": { + "dependencies": { "is-extglob": "^2.1.1" + }, + "engines": { + "node": ">=0.10.0" } }, - "is-installed-globally": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/is-installed-globally/-/is-installed-globally-0.3.2.tgz", - "integrity": "sha512-wZ8x1js7Ia0kecP/CHM/3ABkAmujX7WPvQk6uu3Fly/Mk44pySulQpnHG46OMjHGXApINnV4QhY3SWnECO2z5g==", - "dev": true, - "requires": { - "global-dirs": "^2.0.1", - "is-path-inside": "^3.0.1" - } - }, - "is-interactive": { + "node_modules/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==", + "engines": { + "node": ">=8" + } + }, + "node_modules/is-lambda": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-lambda/-/is-lambda-1.0.1.tgz", + "integrity": "sha512-z7CMFGNrENq5iFB9Bqo64Xk6Y9sg+epq1myIcdHaGnbMTYOxvzsEtdYqQUylB7LxfkvgrrjP32T6Ywciio9UIQ==", "dev": true }, - "is-module": { + "node_modules/is-module": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-module/-/is-module-1.0.0.tgz", - "integrity": "sha512-51ypPSPCoTEIN9dy5Oy+h4pShgJmPCygKfyRCISBI+JoWT/2oJvK8QPxmwv7b/p239jXrm9M1mlQbyKJ5A152g==", - "dev": true - }, - "is-negative-zero": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.2.tgz", - "integrity": "sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==", - "dev": true - }, - "is-npm": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/is-npm/-/is-npm-4.0.0.tgz", - "integrity": "sha512-96ECIfh9xtDDlPylNPXhzjsykHsMJZ18ASpaWzQyBr4YRTcVjUvzaHayDAES2oU/3KpljhHUjtSRNiDwi0F0ig==", - "dev": true + "integrity": "sha512-51ypPSPCoTEIN9dy5Oy+h4pShgJmPCygKfyRCISBI+JoWT/2oJvK8QPxmwv7b/p239jXrm9M1mlQbyKJ5A152g==" }, - "is-number": { + "node_modules/is-number": { "version": "7.0.0", "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "dev": true - }, - "is-number-object": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.7.tgz", - "integrity": "sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==", - "dev": true, - "requires": { - "has-tostringtag": "^1.0.0" + "engines": { + "node": ">=0.12.0" } }, - "is-obj": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-2.0.0.tgz", - "integrity": "sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w==", - "dev": true - }, - "is-path-cwd": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-path-cwd/-/is-path-cwd-1.0.0.tgz", - "integrity": "sha512-cnS56eR9SPAscL77ik76ATVqoPARTqPIVkMDVxRaWH06zT+6+CzIroYRJ0VVvm0Z1zfAvxvz9i/D3Ppjaqt5Nw==", - "dev": true - }, - "is-path-in-cwd": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-path-in-cwd/-/is-path-in-cwd-1.0.1.tgz", - "integrity": "sha512-FjV1RTW48E7CWM7eE/J2NJvAEEVektecDBVBE5Hh3nM1Jd0kvhHtX68Pr3xsDf857xt3Y4AkwVULK1Vku62aaQ==", - "dev": true, - "requires": { - "is-path-inside": "^1.0.0" - }, - "dependencies": { - "is-path-inside": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-1.0.1.tgz", - "integrity": "sha512-qhsCR/Esx4U4hg/9I19OVUAJkGWtjRYHMRgUMZE2TDdj+Ag+kttZanLupfddNyglzz50cUlmWzUaI37GDfNx/g==", - "dev": true, - "requires": { - "path-is-inside": "^1.0.1" - } - } + "node_modules/is-plain-obj": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-3.0.0.tgz", + "integrity": "sha512-gwsOE28k+23GP1B6vFl1oVh/WOzmawBrKwo5Ev6wMKzPkaXaCDIQKzLnvsA42DRlbVTWorkgTKIviAKCWkfUwA==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "is-path-inside": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", - "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==", - "dev": true - }, - "is-plain-obj": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz", - "integrity": "sha512-yvkRyxmFKEOQ4pNXCmJG5AEQNlXJS5LaONXo5/cLdTZdWvsZ1ioJEonLGAosKlMWE8lwUy/bJzMjcw8az73+Fg==", - "dev": true - }, - "is-plain-object": { + "node_modules/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": { + "dependencies": { "isobject": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" } }, - "is-reference": { + "node_modules/is-reference": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/is-reference/-/is-reference-1.2.1.tgz", "integrity": "sha512-U82MsXXiFIrjCK4otLT+o2NA2Cd2g5MLoOVXUZjIOhLurrRxpEXzI8O0KZHr3IjLvlAH1kTPYSuqer5T9ZVBKQ==", - "dev": true, - "requires": { + "dependencies": { "@types/estree": "*" } }, - "is-regex": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz", - "integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" - } - }, - "is-resolvable": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-resolvable/-/is-resolvable-1.1.0.tgz", - "integrity": "sha512-qgDYXFSR5WvEfuS5dMj6oTMEbrrSaM0CrFk2Yiq/gXnBvD9pMa2jGXxyhGLfvhZpuMZe18CJpFxAt3CRs42NMg==", - "dev": true - }, - "is-shared-array-buffer": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz", - "integrity": "sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==", - "dev": true, - "requires": { - "call-bind": "^1.0.2" - } - }, - "is-stream": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", - "integrity": "sha512-uQPm8kcs47jx38atAcWTVxyltQYoPT68y9aWYdV6yWXSyW8mzSat0TL6CiWdZeCdF3KrAvpVtnHbTv4RN+rqdQ==", - "dev": true - }, - "is-string": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz", - "integrity": "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==", - "dev": true, - "requires": { - "has-tostringtag": "^1.0.0" - } - }, - "is-symbol": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz", - "integrity": "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==", - "dev": true, - "requires": { - "has-symbols": "^1.0.2" + "node_modules/is-regex": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.2.1.tgz", + "integrity": "sha512-MjYsKHO5O7mCsmRGxWcLWheFqN9DJ/2TmngvjKXihe6efViPqc274+Fx/4fYj/r03+ESvBdTXK0V6tA3rgez1g==", + "devOptional": true, + "dependencies": { + "call-bound": "^1.0.2", + "gopd": "^1.2.0", + "has-tostringtag": "^1.0.2", + "hasown": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "is-typed-array": { - "version": "1.1.10", - "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.10.tgz", - "integrity": "sha512-PJqgEHiWZvMpaFZ3uTc8kHPM4+4ADTlDniuQL7cU/UDA0Ql7F70yGfHph3cLNe+c9toaigv+DFzTJKhc2CtO6A==", - "dev": true, - "requires": { - "available-typed-arrays": "^1.0.5", - "call-bind": "^1.0.2", - "for-each": "^0.3.3", - "gopd": "^1.0.1", - "has-tostringtag": "^1.0.0" + "node_modules/is-stream": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", + "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "is-typedarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", - "integrity": "sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA==", - "dev": true - }, - "is-weakref": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.2.tgz", - "integrity": "sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==", - "dev": true, - "requires": { - "call-bind": "^1.0.2" + "node_modules/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==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "is-windows": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz", - "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==", - "dev": true + "node_modules/is-what": { + "version": "3.14.1", + "resolved": "https://registry.npmjs.org/is-what/-/is-what-3.14.1.tgz", + "integrity": "sha512-sNxgpk9793nzSs7bA6JQJGeIuRBQhAaNGG77kzYQgMkrID+lS6SlK07K5LaptscDlSaIgH+GPFzf+d75FVxozA==" }, - "is-wsl": { + "node_modules/is-wsl": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==", - "dev": true, - "requires": { + "dependencies": { "is-docker": "^2.0.0" + }, + "engines": { + "node": ">=8" } }, - "is-yarn-global": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/is-yarn-global/-/is-yarn-global-0.3.0.tgz", - "integrity": "sha512-VjSeb/lHmkoyd8ryPVIKvOCn4D1koMqY+vqyjjUfc3xyKtP4dYOxM44sZrnqQSzSds3xyOrUTLTC9LVCVgLngw==", - "dev": true - }, - "isarray": { + "node_modules/isarray": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", - "dev": true + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==" }, - "isbinaryfile": { + "node_modules/isbinaryfile": { "version": "4.0.10", "resolved": "https://registry.npmjs.org/isbinaryfile/-/isbinaryfile-4.0.10.tgz", "integrity": "sha512-iHrqe5shvBUcFbmZq9zOQHBoeOhZJu6RQGrDpBgenUm/Am+F3JM2MgQj+rK3Z601fzrL5gLZWtAPH2OBaSVcyw==", - "dev": true + "devOptional": true, + "engines": { + "node": ">= 8.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/gjtorikian/" + } }, - "isexe": { + "node_modules/isexe": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", - "dev": true + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==" }, - "isobject": { + "node_modules/isobject": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==", - "dev": true + "engines": { + "node": ">=0.10.0" + } }, - "isstream": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", - "integrity": "sha512-Yljz7ffyPbrLpLngrMtZ7NduUgVvi6wG9RJ9IUcyCd59YQ911PBJphODUcbOVbqYfxe1wuYf/LJ8PauMRwsM/g==", - "dev": true + "node_modules/istanbul-lib-coverage": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.2.tgz", + "integrity": "sha512-O8dpsF+r0WV/8MNRKfnmrtCWhuKjxrq2w+jpzBL5UZKTi2LeVWnWOmWRxFlesJONmc+wLAGvKQZEOanko0LFTg==", + "engines": { + "node": ">=8" + } }, - "istanbul-api": { - "version": "2.1.7", - "resolved": "https://registry.npmjs.org/istanbul-api/-/istanbul-api-2.1.7.tgz", - "integrity": "sha512-LYTOa2UrYFyJ/aSczZi/6lBykVMjCCvUmT64gOe+jPZFy4w6FYfPGqFT2IiQ2BxVHHDOvCD7qrIXb0EOh4uGWw==", - "dev": true, - "requires": { - "async": "^2.6.2", - "compare-versions": "^3.4.0", - "fileset": "^2.0.3", - "istanbul-lib-coverage": "^2.0.5", - "istanbul-lib-hook": "^2.0.7", - "istanbul-lib-instrument": "^3.3.0", - "istanbul-lib-report": "^2.0.8", - "istanbul-lib-source-maps": "^3.0.6", - "istanbul-reports": "^2.2.5", - "js-yaml": "^3.13.1", - "make-dir": "^2.1.0", - "minimatch": "^3.0.4", - "once": "^1.4.0" - }, + "node_modules/istanbul-lib-instrument": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.1.tgz", + "integrity": "sha512-pzqtp31nLv/XFOzXGuvhCb8qhjmTVo5vjVk19XE4CRlSWz0KoeJ3bw9XsA7nOp9YBf4qHjwBxkDzKcME/J29Yg==", "dependencies": { - "istanbul-lib-coverage": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.5.tgz", - "integrity": "sha512-8aXznuEPCJvGnMSRft4udDRDtb1V3pkQkMMI5LI+6HuQz5oQ4J2UFn1H82raA3qJtyOLkkwVqICBQkjnGtn5mA==", - "dev": true - }, - "istanbul-lib-instrument": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-3.3.0.tgz", - "integrity": "sha512-5nnIN4vo5xQZHdXno/YDXJ0G+I3dAm4XgzfSVTPLQpj/zAV2dV6Juy0yaf10/zrJOJeHoN3fraFe+XRq2bFVZA==", - "dev": true, - "requires": { - "@babel/generator": "^7.4.0", - "@babel/parser": "^7.4.3", - "@babel/template": "^7.4.0", - "@babel/traverse": "^7.4.3", - "@babel/types": "^7.4.0", - "istanbul-lib-coverage": "^2.0.5", - "semver": "^6.0.0" - } - }, - "make-dir": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", - "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", - "dev": true, - "requires": { - "pify": "^4.0.1", - "semver": "^5.6.0" - }, - "dependencies": { - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "dev": true - } - } - }, - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - } + "@babel/core": "^7.12.3", + "@babel/parser": "^7.14.7", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-coverage": "^3.2.0", + "semver": "^6.3.0" + }, + "engines": { + "node": ">=8" } }, - "istanbul-lib-coverage": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.0.tgz", - "integrity": "sha512-eOeJ5BHCmHYvQK7xt9GkdHuzuCGS1Y6g9Gvnx3Ym33fz/HpLRYxiS0wHNr+m/MBC8B647Xt608vCDEvhl9c6Mw==", - "dev": true - }, - "istanbul-lib-hook": { - "version": "2.0.7", - "resolved": "https://registry.npmjs.org/istanbul-lib-hook/-/istanbul-lib-hook-2.0.7.tgz", - "integrity": "sha512-vrRztU9VRRFDyC+aklfLoeXyNdTfga2EI3udDGn4cZ6fpSXpHLV9X6CHvfoMCPtggg8zvDDmC4b9xfu0z6/llA==", - "dev": true, - "requires": { - "append-transform": "^1.0.0" + "node_modules/istanbul-lib-instrument/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "bin": { + "semver": "bin/semver.js" } }, - "istanbul-lib-instrument": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-4.0.3.tgz", - "integrity": "sha512-BXgQl9kf4WTCPCCpmFGoJkz/+uhvm7h7PFKUYxh7qarQd3ER33vHG//qaE8eN25l07YqZPpHXU9I09l/RD5aGQ==", + "node_modules/istanbul-lib-report": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.1.tgz", + "integrity": "sha512-GCfE1mtsHGOELCU8e/Z7YWzpmybrx/+dSTfLrvY8qRmaY6zXTKWn6WQIjaAFw069icm6GVMNkgu0NzI4iPZUNw==", "dev": true, - "requires": { - "@babel/core": "^7.7.5", - "@istanbuljs/schema": "^0.1.2", + "dependencies": { "istanbul-lib-coverage": "^3.0.0", - "semver": "^6.3.0" + "make-dir": "^4.0.0", + "supports-color": "^7.1.0" }, - "dependencies": { - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - } + "engines": { + "node": ">=10" } }, - "istanbul-lib-report": { - "version": "2.0.8", - "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-2.0.8.tgz", - "integrity": "sha512-fHBeG573EIihhAblwgxrSenp0Dby6tJMFR/HvlerBsrCTD5bkUuoNtn3gVh29ZCS824cGGBPn7Sg7cNk+2xUsQ==", + "node_modules/istanbul-lib-report/node_modules/make-dir": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-4.0.0.tgz", + "integrity": "sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw==", "dev": true, - "requires": { - "istanbul-lib-coverage": "^2.0.5", - "make-dir": "^2.1.0", - "supports-color": "^6.1.0" - }, "dependencies": { - "istanbul-lib-coverage": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.5.tgz", - "integrity": "sha512-8aXznuEPCJvGnMSRft4udDRDtb1V3pkQkMMI5LI+6HuQz5oQ4J2UFn1H82raA3qJtyOLkkwVqICBQkjnGtn5mA==", - "dev": true - }, - "make-dir": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", - "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", - "dev": true, - "requires": { - "pify": "^4.0.1", - "semver": "^5.6.0" - } - }, - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "dev": true - }, - "supports-color": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", - "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - } + "semver": "^7.5.3" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "istanbul-lib-source-maps": { - "version": "3.0.6", - "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-3.0.6.tgz", - "integrity": "sha512-R47KzMtDJH6X4/YW9XTx+jrLnZnscW4VpNN+1PViSYTejLVPWv7oov+Duf8YQSPyVRUvueQqz1TcsC6mooZTXw==", + "node_modules/istanbul-lib-source-maps": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz", + "integrity": "sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==", "dev": true, - "requires": { + "dependencies": { "debug": "^4.1.1", - "istanbul-lib-coverage": "^2.0.5", - "make-dir": "^2.1.0", - "rimraf": "^2.6.3", + "istanbul-lib-coverage": "^3.0.0", "source-map": "^0.6.1" }, - "dependencies": { - "istanbul-lib-coverage": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.5.tgz", - "integrity": "sha512-8aXznuEPCJvGnMSRft4udDRDtb1V3pkQkMMI5LI+6HuQz5oQ4J2UFn1H82raA3qJtyOLkkwVqICBQkjnGtn5mA==", - "dev": true - }, - "make-dir": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", - "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", - "dev": true, - "requires": { - "pify": "^4.0.1", - "semver": "^5.6.0" - } - }, - "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" - } - }, - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "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 - } + "engines": { + "node": ">=10" } }, - "istanbul-reports": { - "version": "2.2.7", - "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-2.2.7.tgz", - "integrity": "sha512-uu1F/L1o5Y6LzPVSVZXNOoD/KXpJue9aeLRd0sM9uMXfZvzomB0WxVamWb5ue8kA2vVWEmW7EG+A5n3f1kqHKg==", + "node_modules/istanbul-lib-source-maps/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", "dev": true, - "requires": { - "html-escaper": "^2.0.0" + "engines": { + "node": ">=0.10.0" } }, - "jasmine": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/jasmine/-/jasmine-2.8.0.tgz", - "integrity": "sha512-KbdGQTf5jbZgltoHs31XGiChAPumMSY64OZMWLNYnEnMfG5uwGBhffePwuskexjT+/Jea/gU3qAU8344hNohSw==", + "node_modules/istanbul-reports": { + "version": "3.1.7", + "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.7.tgz", + "integrity": "sha512-BewmUXImeuRk2YY0PVbxgKAysvhRPUQE0h5QRM++nVWyubKGV0l8qQ5op8+B2DOmwSe63Jivj0BjkPQVf8fP5g==", "dev": true, - "requires": { - "exit": "^0.1.2", - "glob": "^7.0.6", - "jasmine-core": "~2.8.0" - }, "dependencies": { - "jasmine-core": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/jasmine-core/-/jasmine-core-2.8.0.tgz", - "integrity": "sha512-SNkOkS+/jMZvLhuSx1fjhcNWUC/KG6oVyFUGkSBEr9n1axSNduWU8GlI7suaHXr4yxjet6KjrUZxUTE5WzzWwQ==", - "dev": true - } - } - }, - "jasmine-core": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/jasmine-core/-/jasmine-core-3.5.0.tgz", - "integrity": "sha512-nCeAiw37MIMA9w9IXso7bRaLl+c/ef3wnxsoSAlYrzS+Ot0zTG6nU8G/cIfGkqpkjX2wNaIW9RFG0TwIFnG6bA==", - "dev": true - }, - "jasmine-spec-reporter": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/jasmine-spec-reporter/-/jasmine-spec-reporter-4.2.1.tgz", - "integrity": "sha512-FZBoZu7VE5nR7Nilzy+Np8KuVIOxF4oXDPDknehCYBDE080EnlPu0afdZNmpGDBRCUBv3mj5qgqCRmk6W/K8vg==", - "dev": true, - "requires": { - "colors": "1.1.2" + "html-escaper": "^2.0.0", + "istanbul-lib-report": "^3.0.0" + }, + "engines": { + "node": ">=8" } }, - "jasminewd2": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/jasminewd2/-/jasminewd2-2.2.0.tgz", - "integrity": "sha512-Rn0nZe4rfDhzA63Al3ZGh0E+JTmM6ESZYXJGKuqKGZObsAB9fwXPD03GjtIEvJBDOhN94T5MzbwZSqzFHSQPzg==", + "node_modules/jasmine-core": { + "version": "4.6.1", + "resolved": "https://registry.npmjs.org/jasmine-core/-/jasmine-core-4.6.1.tgz", + "integrity": "sha512-VYz/BjjmC3klLJlLwA4Kw8ytk0zDSmbbDLNs794VnWmkcCB7I9aAL/D48VNQtmITyPvea2C3jdUMfc3kAoy0PQ==", "dev": true }, - "jest-worker": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-25.1.0.tgz", - "integrity": "sha512-ZHhHtlxOWSxCoNOKHGbiLzXnl42ga9CxDr27H36Qn+15pQZd3R/F24jrmjDelw9j/iHUIWMWs08/u2QN50HHOg==", - "dev": true, - "requires": { + "node_modules/jest-worker": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", + "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", + "dependencies": { + "@types/node": "*", "merge-stream": "^2.0.0", - "supports-color": "^7.0.0" + "supports-color": "^8.0.0" }, + "engines": { + "node": ">= 10.13.0" + } + }, + "node_modules/jest-worker/node_modules/supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", "dependencies": { - "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" - } - } + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/supports-color?sponsor=1" } }, - "js-tokens": { + "node_modules/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 + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==" }, - "js-yaml": { + "node_modules/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": { + "dependencies": { "argparse": "^1.0.7", "esprima": "^4.0.0" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" } }, - "jsbn": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", - "integrity": "sha512-UVU9dibq2JcFWxQPA6KCqj5O42VOmAY3zQUfEKxU0KpTGXwNoCjkX1e13eHNvw/xPynt6pU0rZ1htjWTNTSXsg==", + "node_modules/jsbn": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-1.1.0.tgz", + "integrity": "sha512-4bYVV3aAMtDTTu4+xsDYa6sy9GyJ69/amsu9sYF2zqjiEoZA5xJi3BrfX3uY+/IekIu7MwdObdbDWpoZdBv3/A==", "dev": true }, - "jsesc": { + "node_modules/jsesc": { "version": "2.5.2", "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", - "dev": true - }, - "json-buffer": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.0.tgz", - "integrity": "sha512-CuUqjv0FUZIdXkHPI8MezCnFCdaTAacej1TZYulLoAg1h/PhwkdXFN4V/gzY4g+fMBCOV2xF+rp7t2XD2ns/NQ==", - "dev": true - }, - "json-parse-better-errors": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz", - "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==", - "dev": true + "bin": { + "jsesc": "bin/jsesc" + }, + "engines": { + "node": ">=4" + } }, - "json-parse-even-better-errors": { + "node_modules/json-parse-even-better-errors": { "version": "2.3.1", "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", - "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", - "dev": true - }, - "json-schema": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.4.0.tgz", - "integrity": "sha512-es94M3nTIfsEPisRafak+HDLfHXnKBhV3vU5eqPcS3flIWqcxJWgXHXiey3YrpaNsanY5ei1VoYEbOzijuq9BA==", - "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-stringify-safe": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", - "integrity": "sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA==", - "dev": true + "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==" }, - "json3": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/json3/-/json3-3.3.3.tgz", - "integrity": "sha512-c7/8mbUsKigAbLkD5B010BK4D9LZm7A1pNItkEwiUZRpIN66exu/e7YQWysGun+TRKaJp8MhemM+VkfWv42aCA==", - "dev": true + "node_modules/json-schema-traverse": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", + "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==" }, - "json5": { + "node_modules/json5": { "version": "2.2.3", "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", - "dev": true + "bin": { + "json5": "lib/cli.js" + }, + "engines": { + "node": ">=6" + } }, - "jsonfile": { + "node_modules/jsonc-parser": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-3.1.0.tgz", + "integrity": "sha512-DRf0QjnNeCUds3xTjKlQQ3DpJD51GvDjJfnxUVWg6PZTo2otSm+slzNAxU/35hF8/oJIKoG9slq30JYOsF2azg==" + }, + "node_modules/jsonfile": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", "integrity": "sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==", - "dev": true, - "requires": { + "devOptional": true, + "optionalDependencies": { "graceful-fs": "^4.1.6" } }, - "jsonparse": { + "node_modules/jsonparse": { "version": "1.3.1", "resolved": "https://registry.npmjs.org/jsonparse/-/jsonparse-1.3.1.tgz", "integrity": "sha512-POQXvpdL69+CluYsillJ7SUhKvytYjW9vG/GKpnf+xP8UWgYEM/RaMzHHofbALDiKbbP1W8UEYmgGl39WkPZsg==", - "dev": true - }, - "jsprim": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.2.tgz", - "integrity": "sha512-P2bSOMAc/ciLz6DzgjVlGJP9+BrJWu5UDGK70C2iweC5QBIeFf0ZXRvGjEj2uYgrY2MkAAhsSWHDWlFtEroZWw==", - "dev": true, - "requires": { - "assert-plus": "1.0.0", - "extsprintf": "1.3.0", - "json-schema": "0.4.0", - "verror": "1.10.0" - } - }, - "jszip": { - "version": "3.10.1", - "resolved": "https://registry.npmjs.org/jszip/-/jszip-3.10.1.tgz", - "integrity": "sha512-xXDvecyTpGLrqFrvkrUSoxxfJI5AH7U8zxxtVclpsUtMCq4JQ290LY8AW5c7Ggnr/Y/oK+bQMbqK2qmtk3pN4g==", - "dev": true, - "requires": { - "lie": "~3.3.0", - "pako": "~1.0.2", - "readable-stream": "~2.3.6", - "setimmediate": "^1.0.5" - } - }, - "karma": { - "version": "5.0.9", - "resolved": "https://registry.npmjs.org/karma/-/karma-5.0.9.tgz", - "integrity": "sha512-dUA5z7Lo7G4FRSe1ZAXqOINEEWxmCjDBbfRBmU/wYlSMwxUQJP/tEEP90yJt3Uqo03s9rCgVnxtlfq+uDhxSPg==", "dev": true, - "requires": { + "engines": [ + "node >= 0.2.0" + ] + }, + "node_modules/karma": { + "version": "6.4.3", + "resolved": "https://registry.npmjs.org/karma/-/karma-6.4.3.tgz", + "integrity": "sha512-LuucC/RE92tJ8mlCwqEoRWXP38UMAqpnq98vktmS9SznSoUPPUJQbc91dHcxcunROvfQjdORVA/YFviH+Xci9Q==", + "devOptional": true, + "dependencies": { + "@colors/colors": "1.5.0", "body-parser": "^1.19.0", "braces": "^3.0.2", - "chokidar": "^3.0.0", - "colors": "^1.4.0", + "chokidar": "^3.5.1", "connect": "^3.7.0", "di": "^0.0.1", "dom-serialize": "^2.2.1", - "flatted": "^2.0.2", - "glob": "^7.1.6", - "graceful-fs": "^4.2.4", + "glob": "^7.1.7", + "graceful-fs": "^4.2.6", "http-proxy": "^1.18.1", - "isbinaryfile": "^4.0.6", - "lodash": "^4.17.15", - "log4js": "^6.2.1", - "mime": "^2.4.5", + "isbinaryfile": "^4.0.8", + "lodash": "^4.17.21", + "log4js": "^6.4.1", + "mime": "^2.5.2", "minimatch": "^3.0.4", + "mkdirp": "^0.5.5", "qjobs": "^1.2.0", "range-parser": "^1.2.1", "rimraf": "^3.0.2", - "socket.io": "^2.3.0", + "socket.io": "^4.7.2", "source-map": "^0.6.1", - "tmp": "0.2.1", - "ua-parser-js": "0.7.21", - "yargs": "^15.3.1" - }, - "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" - } - }, - "cliui": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz", - "integrity": "sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==", - "dev": true, - "requires": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", - "wrap-ansi": "^6.2.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 - }, - "colors": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/colors/-/colors-1.4.0.tgz", - "integrity": "sha512-a+UqTh4kgZg/SlGvfbzDHpgRu7AAQOmmqRHJnxhRZICKFUT91brVhNNt58CMWU9PsBbv3PDCZUHbVxuDiH2mtA==", - "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 - }, - "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" - } - }, - "wrap-ansi": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", - "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", - "dev": true, - "requires": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - } - }, - "y18n": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz", - "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==", - "dev": true - }, - "yargs": { - "version": "15.4.1", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-15.4.1.tgz", - "integrity": "sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A==", - "dev": true, - "requires": { - "cliui": "^6.0.0", - "decamelize": "^1.2.0", - "find-up": "^4.1.0", - "get-caller-file": "^2.0.1", - "require-directory": "^2.1.1", - "require-main-filename": "^2.0.0", - "set-blocking": "^2.0.0", - "string-width": "^4.2.0", - "which-module": "^2.0.0", - "y18n": "^4.0.0", - "yargs-parser": "^18.1.2" - } - }, - "yargs-parser": { - "version": "18.1.3", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz", - "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==", - "dev": true, - "requires": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" - } - } + "tmp": "^0.2.1", + "ua-parser-js": "^0.7.30", + "yargs": "^16.1.1" + }, + "bin": { + "karma": "bin/karma" + }, + "engines": { + "node": ">= 10" } }, - "karma-chrome-launcher": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/karma-chrome-launcher/-/karma-chrome-launcher-3.1.1.tgz", - "integrity": "sha512-hsIglcq1vtboGPAN+DGCISCFOxW+ZVnIqhDQcCMqqCp+4dmJ0Qpq5QAjkbA0X2L9Mi6OBkHi2Srrbmm7pUKkzQ==", + "node_modules/karma-chrome-launcher": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/karma-chrome-launcher/-/karma-chrome-launcher-3.1.0.tgz", + "integrity": "sha512-3dPs/n7vgz1rxxtynpzZTvb9y/GIaW8xjAwcIGttLbycqoFtI7yo1NGnQi6oFTherRE+GIhCAHZC4vEqWGhNvg==", "dev": true, - "requires": { + "dependencies": { "which": "^1.2.1" } }, - "karma-coverage-istanbul-reporter": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/karma-coverage-istanbul-reporter/-/karma-coverage-istanbul-reporter-2.1.1.tgz", - "integrity": "sha512-CH8lTi8+kKXGvrhy94+EkEMldLCiUA0xMOiL31vvli9qK0T+qcXJAwWBRVJWnVWxYkTmyWar8lPz63dxX6/z1A==", + "node_modules/karma-coverage": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/karma-coverage/-/karma-coverage-2.2.1.tgz", + "integrity": "sha512-yj7hbequkQP2qOSb20GuNSIyE//PgJWHwC2IydLE6XRtsnaflv+/OSGNssPjobYUlhVVagy99TQpqUt3vAUG7A==", "dev": true, - "requires": { - "istanbul-api": "^2.1.6", + "dependencies": { + "istanbul-lib-coverage": "^3.2.0", + "istanbul-lib-instrument": "^5.1.0", + "istanbul-lib-report": "^3.0.0", + "istanbul-lib-source-maps": "^4.0.1", + "istanbul-reports": "^3.0.5", "minimatch": "^3.0.4" + }, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/karma-coverage/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/karma-coverage/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/karma-jasmine": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/karma-jasmine/-/karma-jasmine-5.1.0.tgz", + "integrity": "sha512-i/zQLFrfEpRyQoJF9fsCdTMOF5c2dK7C7OmsuKg2D0YSsuZSfQDiLuaiktbuio6F2wiCsZSnSnieIQ0ant/uzQ==", + "dev": true, + "dependencies": { + "jasmine-core": "^4.1.0" + }, + "engines": { + "node": ">=12" + }, + "peerDependencies": { + "karma": "^6.0.0" + } + }, + "node_modules/karma-jasmine-html-reporter": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/karma-jasmine-html-reporter/-/karma-jasmine-html-reporter-2.1.0.tgz", + "integrity": "sha512-sPQE1+nlsn6Hwb5t+HHwyy0A1FNCVKuL1192b+XNauMYWThz2kweiBVW1DqloRpVvZIJkIoHVB7XRpK78n1xbQ==", + "dev": true, + "peerDependencies": { + "jasmine-core": "^4.0.0 || ^5.0.0", + "karma": "^6.0.0", + "karma-jasmine": "^5.0.0" } }, - "karma-source-map-support": { + "node_modules/karma-source-map-support": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/karma-source-map-support/-/karma-source-map-support-1.4.0.tgz", "integrity": "sha512-RsBECncGO17KAoJCYXjv+ckIz+Ii9NCi+9enk+rq6XC81ezYkb4/RHE6CTXdA7IOJqoF3wcaLfVG0CPmE5ca6A==", - "dev": true, - "requires": { + "dependencies": { "source-map-support": "^0.5.5" } }, - "keyv": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/keyv/-/keyv-3.1.0.tgz", - "integrity": "sha512-9ykJ/46SN/9KPM/sichzQ7OvXyGDYKGTaDlKMGCAlg2UK8KRy4jb0d8sFc+0Tt0YYnThq8X2RZgCg74RPxgcVA==", - "dev": true, - "requires": { - "json-buffer": "3.0.0" + "node_modules/karma/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "devOptional": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" } }, - "killable": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/killable/-/killable-1.0.1.tgz", - "integrity": "sha512-LzqtLKlUwirEUyl/nicirVmNiPvYs7l5n8wOPP7fyJVpUPkvCnW/vuiXGpylGUlnPDnB7311rARzAt3Mhswpjg==", - "dev": true + "node_modules/karma/node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "deprecated": "Glob versions prior to v9 are no longer supported", + "devOptional": true, + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/karma/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "devOptional": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/karma/node_modules/mkdirp": { + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", + "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", + "devOptional": true, + "dependencies": { + "minimist": "^1.2.6" + }, + "bin": { + "mkdirp": "bin/cmd.js" + } + }, + "node_modules/karma/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "devOptional": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/karma/node_modules/tmp": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.2.3.tgz", + "integrity": "sha512-nZD7m9iCPC5g0pYmcaxogYKggSfLsdxl8of3Q/oIbqCqLLIO9IAF0GWjX1z9NZRHPiXv8Wex4yDCaZsgEw0Y8w==", + "devOptional": true, + "engines": { + "node": ">=14.14" + } + }, + "node_modules/karma/node_modules/yargs": { + "version": "16.2.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", + "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", + "devOptional": true, + "dependencies": { + "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" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/karma/node_modules/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==", + "devOptional": true, + "engines": { + "node": ">=10" + } }, - "kind-of": { + "node_modules/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 + "engines": { + "node": ">=0.10.0" + } }, - "latest-version": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/latest-version/-/latest-version-5.1.0.tgz", - "integrity": "sha512-weT+r0kTkRQdCdYCNtkMwWXQTMEswKrFBkm4ckQOMVhhqhIMI1UT2hMj+1iigIhgSZm5gTmrRXBNoGUgaTY1xA==", - "dev": true, - "requires": { - "package-json": "^6.3.0" + "node_modules/klona": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/klona/-/klona-2.0.6.tgz", + "integrity": "sha512-dhG34DXATL5hSxJbIexCft8FChFXtmskoZYnoPWjXQuebWYCNkVeV3KkGegCK9CP1oswI/vQibS2GY7Em/sJJA==", + "engines": { + "node": ">= 8" } }, - "less": { - "version": "3.11.3", - "resolved": "https://registry.npmjs.org/less/-/less-3.11.3.tgz", - "integrity": "sha512-VkZiTDdtNEzXA3LgjQiC3D7/ejleBPFVvq+aRI9mIj+Zhmif5TvFPM244bT4rzkvOCvJ9q4zAztok1M7Nygagw==", - "dev": true, - "requires": { - "clone": "^2.1.2", + "node_modules/less": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/less/-/less-4.1.3.tgz", + "integrity": "sha512-w16Xk/Ta9Hhyei0Gpz9m7VS8F28nieJaL/VyShID7cYvP6IL5oHeL6p4TXSDJqZE/lNv0oJ2pGVjJsRkfwm5FA==", + "dependencies": { + "copy-anything": "^2.0.1", + "parse-node-version": "^1.0.1", + "tslib": "^2.3.0" + }, + "bin": { + "lessc": "bin/lessc" + }, + "engines": { + "node": ">=6" + }, + "optionalDependencies": { "errno": "^0.1.1", "graceful-fs": "^4.1.2", "image-size": "~0.5.0", "make-dir": "^2.1.0", "mime": "^1.4.1", - "promise": "^7.1.1", - "request": "^2.83.0", - "source-map": "~0.6.0", - "tslib": "^1.10.0" - }, - "dependencies": { - "make-dir": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", - "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", - "dev": true, - "optional": true, - "requires": { - "pify": "^4.0.1", - "semver": "^5.6.0" - } - }, - "mime": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", - "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", - "dev": true, - "optional": true - }, - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "dev": true, - "optional": 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, - "optional": true - } + "needle": "^3.1.0", + "source-map": "~0.6.0" } }, - "less-loader": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/less-loader/-/less-loader-5.0.0.tgz", - "integrity": "sha512-bquCU89mO/yWLaUq0Clk7qCsKhsF/TZpJUzETRvJa9KSVEL9SO3ovCvdEHISBhrC81OwC8QSVX7E0bzElZj9cg==", - "dev": true, - "requires": { - "clone": "^2.1.1", - "loader-utils": "^1.1.0", - "pify": "^4.0.1" - }, - "dependencies": { - "json5": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz", - "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==", - "dev": true, - "requires": { - "minimist": "^1.2.0" - } - }, - "loader-utils": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.2.tgz", - "integrity": "sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==", - "dev": true, - "requires": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^1.0.1" - } - } + "node_modules/less-loader": { + "version": "11.0.0", + "resolved": "https://registry.npmjs.org/less-loader/-/less-loader-11.0.0.tgz", + "integrity": "sha512-9+LOWWjuoectIEx3zrfN83NAGxSUB5pWEabbbidVQVgZhN+wN68pOvuyirVlH1IK4VT1f3TmlyvAnCXh8O5KEw==", + "dependencies": { + "klona": "^2.0.4" + }, + "engines": { + "node": ">= 14.15.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "less": "^3.5.0 || ^4.0.0", + "webpack": "^5.0.0" } }, - "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 + "node_modules/less/node_modules/make-dir": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", + "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", + "optional": true, + "dependencies": { + "pify": "^4.0.1", + "semver": "^5.6.0" + }, + "engines": { + "node": ">=6" + } }, - "levenary": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/levenary/-/levenary-1.1.1.tgz", - "integrity": "sha512-mkAdOIt79FD6irqjYSs4rdbnlT5vRonMEvBVPVb3XmevfS8kgRXwfes0dhPdEtzTWD/1eNE/Bm/G1iRt6DcnQQ==", - "dev": true, - "requires": { - "leven": "^3.1.0" + "node_modules/less/node_modules/mime": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", + "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", + "optional": true, + "bin": { + "mime": "cli.js" + }, + "engines": { + "node": ">=4" } }, - "license-webpack-plugin": { - "version": "2.1.4", - "resolved": "https://registry.npmjs.org/license-webpack-plugin/-/license-webpack-plugin-2.1.4.tgz", - "integrity": "sha512-1Xq72fmPbTg5KofXs+yI5L4QqPFjQ6mZxoeI6D7gfiEDOtaEIk6PGrdLaej90bpDqKNHNxlQ/MW4tMAL6xMPJQ==", - "dev": true, - "requires": { - "@types/webpack-sources": "^0.1.5", - "webpack-sources": "^1.2.0" + "node_modules/less/node_modules/pify": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", + "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", + "optional": true, + "engines": { + "node": ">=6" } }, - "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" + "node_modules/less/node_modules/semver": { + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", + "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", + "optional": true, + "bin": { + "semver": "bin/semver" } }, - "lines-and-columns": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", - "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==", - "dev": true + "node_modules/less/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "optional": true, + "engines": { + "node": ">=0.10.0" + } }, - "load-json-file": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-4.0.0.tgz", - "integrity": "sha512-Kx8hMakjX03tiGTLAIdJ+lL0htKnXjEZN6hk/tozf/WOuYGdZBJrZ+rCJRbVCugsjB3jMLn9746NsQIf5VjBMw==", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "parse-json": "^4.0.0", - "pify": "^3.0.0", - "strip-bom": "^3.0.0" - }, + "node_modules/license-webpack-plugin": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/license-webpack-plugin/-/license-webpack-plugin-4.0.2.tgz", + "integrity": "sha512-771TFWFD70G1wLTC4oU2Cw4qvtmNrIw+wRvBtn+okgHl7slJVi7zfNcdmqDL72BojM30VNJ2UHylr1o77U37Jw==", "dependencies": { - "pify": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", - "integrity": "sha512-C3FsVNH1udSEX48gGX1xfvwTWfsYWj5U+8/uK15BGzIGrKoUpghX8hWZwa/OFnakBiiVNmBvemTJR5mcy7iPcg==", - "dev": true + "webpack-sources": "^3.0.0" + }, + "peerDependenciesMeta": { + "webpack": { + "optional": true + }, + "webpack-sources": { + "optional": true } } }, - "loader-runner": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-2.4.0.tgz", - "integrity": "sha512-Jsmr89RcXGIwivFY21FcRrisYZfvLMTWx5kOLc+JTxtpBOG6xML0vzbc6SEQG2FO9/4Fc3wW4LVcB5DmGflaRw==", - "dev": true + "node_modules/lines-and-columns": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", + "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==" }, - "loader-utils": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.0.tgz", - "integrity": "sha512-rP4F0h2RaWSvPEkD7BLDFQnvSf+nK+wr3ESUjNTyAGobqrijmW92zc+SO6d4p4B1wh7+B/Jg1mkQe5NYUEHtHQ==", - "dev": true, - "requires": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^2.1.2" + "node_modules/loader-runner": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-4.3.0.tgz", + "integrity": "sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg==", + "engines": { + "node": ">=6.11.5" } }, - "locate-path": { + "node_modules/loader-utils": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-3.2.1.tgz", + "integrity": "sha512-ZvFw1KWS3GVyYBYb7qkmRM/WwL2TQQBxgCK62rlvm4WpVQ23Nb4tYjApUlfjrEGvOs7KHEsmyUn75OHZrJMWPw==", + "engines": { + "node": ">= 12.13.0" + } + }, + "node_modules/locate-path": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", - "dev": true, - "requires": { + "dependencies": { "p-locate": "^4.1.0" + }, + "engines": { + "node": ">=8" } }, - "lodash": { + "node_modules/lodash": { "version": "4.17.21", "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", - "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", - "dev": true - }, - "lodash.clonedeep": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz", - "integrity": "sha512-H5ZhCF25riFd9uB5UCkVKo61m3S/xZk1x4wA6yp/L3RFP6Z/eHH1ymQcGLo7J3GMPfm0V/7m1tryHuGVxpqEBQ==", - "dev": true - }, - "lodash.memoize": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-4.1.2.tgz", - "integrity": "sha512-t7j+NzmgnQzTAYXcsHYLgimltOV1MXHtlOWf6GjL9Kj8GK5FInw5JotxvbOs+IvV1/Dzo04/fCGfLVs7aXb4Ag==", - "dev": true + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" }, - "lodash.uniq": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/lodash.uniq/-/lodash.uniq-4.5.0.tgz", - "integrity": "sha512-xfBaXQd9ryd9dlSDvnvI0lvxfLJlYAZzXomUYzLKtUeOQvOP5piqAWuGtrhWeqaXK9hhoM/iyJc5AV+XfsX3HQ==", - "dev": true + "node_modules/lodash.debounce": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", + "integrity": "sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==" }, - "log-symbols": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-3.0.0.tgz", - "integrity": "sha512-dSkNGuI7iG3mfvDzUuYZyvk5dD9ocYCYzNU6CYDE6+Xqd+gwme6Z00NS3dUh8mq/73HaEtT7m6W+yUPtU6BZnQ==", - "dev": true, - "requires": { - "chalk": "^2.4.2" + "node_modules/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==", + "dependencies": { + "chalk": "^4.1.0", + "is-unicode-supported": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "log4js": { + "node_modules/log4js": { "version": "6.9.1", "resolved": "https://registry.npmjs.org/log4js/-/log4js-6.9.1.tgz", "integrity": "sha512-1somDdy9sChrr9/f4UlzhdaGfDR2c/SaD2a4T7qEkG4jTS57/B3qmnjLYePwQ8cqWnUHZI0iAKxMBpCZICiZ2g==", - "dev": true, - "requires": { + "devOptional": true, + "dependencies": { "date-format": "^4.0.14", "debug": "^4.3.4", "flatted": "^3.2.7", "rfdc": "^1.3.0", "streamroller": "^3.1.5" }, - "dependencies": { - "debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", - "dev": true, - "requires": { - "ms": "2.1.2" - } - }, - "flatted": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.7.tgz", - "integrity": "sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ==", - "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==", - "dev": true - } - } - }, - "loglevel": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/loglevel/-/loglevel-1.8.1.tgz", - "integrity": "sha512-tCRIJM51SHjAayKwC+QAg8hT8vg6z7GSgLJKGvzuPb1Wc+hLzqtuVLxp6/HzSPOozuK+8ErAhy7U/sVzw8Dgfg==", - "dev": true - }, - "loose-envify": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", - "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", - "dev": true, - "requires": { - "js-tokens": "^3.0.0 || ^4.0.0" + "engines": { + "node": ">=8.0" } }, - "lowercase-keys": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.1.tgz", - "integrity": "sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA==", - "dev": true - }, - "lru-cache": { + "node_modules/lru-cache": { "version": "5.1.1", "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", - "dev": true, - "requires": { + "dependencies": { "yallist": "^3.0.2" } }, - "magic-string": { - "version": "0.25.7", - "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.25.7.tgz", - "integrity": "sha512-4CrMT5DOHTDk4HYDlzmwu4FVCcIYI8gauveasrdCu2IKIFOJ3f0v/8MDGJCDL9oD2ppz/Av1b0Nj345H9M+XIA==", - "dev": true, - "requires": { - "sourcemap-codec": "^1.4.4" + "node_modules/magic-string": { + "version": "0.26.2", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.26.2.tgz", + "integrity": "sha512-NzzlXpclt5zAbmo6h6jNc8zl2gNRGHvmsZW4IvZhTC4W7k4OlLP+S5YLussa/r3ixNT66KOQfNORlXHSOy/X4A==", + "dependencies": { + "sourcemap-codec": "^1.4.8" + }, + "engines": { + "node": ">=12" } }, - "make-dir": { + "node_modules/make-dir": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", - "dev": true, - "requires": { + "dependencies": { "semver": "^6.0.0" }, - "dependencies": { - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - } + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "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 - }, - "make-fetch-happen": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-5.0.2.tgz", - "integrity": "sha512-07JHC0r1ykIoruKO8ifMXu+xEU8qOXDFETylktdug6vJDACnP+HKevOu3PXyNPzFyTSlz8vrBYlBO1JZRe8Cag==", - "dev": true, - "requires": { - "agentkeepalive": "^3.4.1", - "cacache": "^12.0.0", - "http-cache-semantics": "^3.8.1", - "http-proxy-agent": "^2.1.0", - "https-proxy-agent": "^2.2.3", - "lru-cache": "^5.1.1", - "mississippi": "^3.0.0", - "node-fetch-npm": "^2.0.2", - "promise-retry": "^1.1.1", - "socks-proxy-agent": "^4.0.0", - "ssri": "^6.0.0" - }, - "dependencies": { - "cacache": { - "version": "12.0.4", - "resolved": "https://registry.npmjs.org/cacache/-/cacache-12.0.4.tgz", - "integrity": "sha512-a0tMB40oefvuInr4Cwb3GerbL9xTj1D5yg0T5xrjGCGyfvbxseIXX7BAO/u/hIXdafzOI5JC3wDwHyf24buOAQ==", - "dev": true, - "requires": { - "bluebird": "^3.5.5", - "chownr": "^1.1.1", - "figgy-pudding": "^3.5.1", - "glob": "^7.1.4", - "graceful-fs": "^4.1.15", - "infer-owner": "^1.0.3", - "lru-cache": "^5.1.1", - "mississippi": "^3.0.0", - "mkdirp": "^0.5.1", - "move-concurrently": "^1.0.1", - "promise-inflight": "^1.0.1", - "rimraf": "^2.6.3", - "ssri": "^6.0.1", - "unique-filename": "^1.1.1", - "y18n": "^4.0.0" - } - }, - "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" - } - }, - "ssri": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/ssri/-/ssri-6.0.2.tgz", - "integrity": "sha512-cepbSq/neFK7xB6A50KHN0xHDotYzq58wWCa5LeWqnPrHG8GzfEjO/4O8kpmcGW+oaxkvhEJCWgbgNk4/ZV93Q==", - "dev": true, - "requires": { - "figgy-pudding": "^3.5.1" - } - }, - "y18n": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz", - "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==", - "dev": true - } + "node_modules/make-dir/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "bin": { + "semver": "bin/semver.js" } }, - "mamacro": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/mamacro/-/mamacro-0.0.3.tgz", - "integrity": "sha512-qMEwh+UujcQ+kbz3T6V+wAmO2U8veoq2w+3wY8MquqwVA3jChfwY+Tk52GZKDfACEPjuZ7r2oJLejwpt8jtwTA==", - "dev": true - }, - "map-cache": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz", - "integrity": "sha512-8y/eV9QQZCiyn1SprXSrCmqJN0yNRATe+PO8ztwqrvrbdRLA3eYJF0yaR0YayLWkMbsQSKWS9N2gPcGEc4UsZg==", - "dev": true - }, - "map-visit": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/map-visit/-/map-visit-1.0.0.tgz", - "integrity": "sha512-4y7uGv8bd2WdM9vpQsiQNo41Ln1NvhvDRuVt0k2JZQ+ezN2uaQes7lZeZ+QQUHOLQAtDaBJ+7wCbi+ab/KFs+w==", + "node_modules/make-fetch-happen": { + "version": "10.2.1", + "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-10.2.1.tgz", + "integrity": "sha512-NgOPbRiaQM10DYXvN3/hhGVI2M5MtITFryzBGxHM5p4wnFxsVCbxkrBrDsk+EZ5OB4jEOT7AjDxtdF+KVEFT7w==", "dev": true, - "requires": { - "object-visit": "^1.0.0" + "dependencies": { + "agentkeepalive": "^4.2.1", + "cacache": "^16.1.0", + "http-cache-semantics": "^4.1.0", + "http-proxy-agent": "^5.0.0", + "https-proxy-agent": "^5.0.0", + "is-lambda": "^1.0.1", + "lru-cache": "^7.7.1", + "minipass": "^3.1.6", + "minipass-collect": "^1.0.2", + "minipass-fetch": "^2.0.3", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "negotiator": "^0.6.3", + "promise-retry": "^2.0.1", + "socks-proxy-agent": "^7.0.0", + "ssri": "^9.0.0" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "md5.js": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.5.tgz", - "integrity": "sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==", + "node_modules/make-fetch-happen/node_modules/lru-cache": { + "version": "7.18.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", + "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", "dev": true, - "requires": { - "hash-base": "^3.0.0", - "inherits": "^2.0.1", - "safe-buffer": "^5.1.2" + "engines": { + "node": ">=12" } }, - "mdn-data": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.4.tgz", - "integrity": "sha512-iV3XNKw06j5Q7mi6h+9vbx23Tv7JkjEVgKHW4pimwyDGWm0OIQntJJ+u1C6mg6mK1EaTv42XQ7w76yuzH7M2cA==", - "dev": true + "node_modules/math-intrinsics": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/math-intrinsics/-/math-intrinsics-1.1.0.tgz", + "integrity": "sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==", + "engines": { + "node": ">= 0.4" + } }, - "media-typer": { + "node_modules/media-typer": { "version": "0.3.0", "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", "integrity": "sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==", - "dev": true - }, - "memory-fs": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/memory-fs/-/memory-fs-0.5.0.tgz", - "integrity": "sha512-jA0rdU5KoQMC0e6ppoNRtpp6vjFq6+NY7r8hywnC7V+1Xj/MtHwGIbB1QaK/dunyjWteJzmkpd7ooeWg10T7GA==", - "dev": true, - "requires": { - "errno": "^0.1.3", - "readable-stream": "^2.0.1" + "engines": { + "node": ">= 0.6" } }, - "memorystream": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/memorystream/-/memorystream-0.3.1.tgz", - "integrity": "sha512-S3UwM3yj5mtUSEfP41UZmt/0SCoVYUcU1rkXv+BQ5Ig8ndL4sPoJNBUJERafdPb5jjHJGuMgytgKvKIf58XNBw==", - "dev": true - }, - "merge-descriptors": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", - "integrity": "sha512-cCi6g3/Zr1iqQi6ySbseM1Xvooa98N0w31jzUYrXPX2xqObmFGHJ0tQ5u74H3mVh7wLouTseZyYIq39g8cNp1w==", - "dev": true - }, - "merge-source-map": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/merge-source-map/-/merge-source-map-1.1.0.tgz", - "integrity": "sha512-Qkcp7P2ygktpMPh2mCQZaf3jhN6D3Z/qVZHSdWvQ+2Ef5HgRAPBO57A77+ENm0CPx2+1Ce/MYKi3ymqdfuqibw==", - "dev": true, - "requires": { - "source-map": "^0.6.1" - }, + "node_modules/memfs": { + "version": "3.5.3", + "resolved": "https://registry.npmjs.org/memfs/-/memfs-3.5.3.tgz", + "integrity": "sha512-UERzLsxzllchadvbPs5aolHh65ISpKpM+ccLbOJ8/vvpBKmAWf+la7dXFy7Mr0ySHbdHrFv5kGFCUHHe6GFEmw==", "dependencies": { - "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 - } + "fs-monkey": "^1.0.4" + }, + "engines": { + "node": ">= 4.0.0" + } + }, + "node_modules/merge-descriptors": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.3.tgz", + "integrity": "sha512-gaNvAS7TZ897/rVaZ0nMtAyxNyi/pdbjbAwUpFQpN70GqnVfOiXpeUUMKRBmzXaSQ8DdTX4/0ms62r2K+hE6mQ==", + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "merge-stream": { + "node_modules/merge-stream": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", - "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", - "dev": true + "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==" }, - "merge2": { + "node_modules/merge2": { "version": "1.4.1", "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", - "dev": true + "engines": { + "node": ">= 8" + } }, - "methods": { + "node_modules/methods": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", "integrity": "sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==", - "dev": true + "engines": { + "node": ">= 0.6" + } }, - "micromatch": { - "version": "4.0.5", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", - "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", - "dev": true, - "requires": { - "braces": "^3.0.2", + "node_modules/micromatch": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz", + "integrity": "sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==", + "dependencies": { + "braces": "^3.0.3", "picomatch": "^2.3.1" + }, + "engines": { + "node": ">=8.6" } }, - "miller-rabin": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/miller-rabin/-/miller-rabin-4.0.1.tgz", - "integrity": "sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA==", - "dev": true, - "requires": { - "bn.js": "^4.0.0", - "brorand": "^1.0.1" + "node_modules/micromatch/node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "engines": { + "node": ">=8.6" }, - "dependencies": { - "bn.js": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", - "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", - "dev": true - } + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" } }, - "mime": { + "node_modules/mime": { "version": "2.6.0", "resolved": "https://registry.npmjs.org/mime/-/mime-2.6.0.tgz", "integrity": "sha512-USPkMeET31rOMiarsBNIHZKLGgvKc/LrjofAnBlOttf5ajRvqiRA8QsenbcooctK6d6Ts6aqZXBA+XbkKthiQg==", - "dev": true + "devOptional": true, + "bin": { + "mime": "cli.js" + }, + "engines": { + "node": ">=4.0.0" + } }, - "mime-db": { + "node_modules/mime-db": { "version": "1.52.0", "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", - "dev": true + "engines": { + "node": ">= 0.6" + } }, - "mime-types": { + "node_modules/mime-types": { "version": "2.1.35", "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", - "dev": true, - "requires": { + "dependencies": { "mime-db": "1.52.0" + }, + "engines": { + "node": ">= 0.6" } }, - "mimic-fn": { + "node_modules/mimic-fn": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", - "dev": true + "engines": { + "node": ">=6" + } }, - "mimic-response": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz", - "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==", - "dev": true + "node_modules/mini-css-extract-plugin": { + "version": "2.6.1", + "resolved": "https://registry.npmjs.org/mini-css-extract-plugin/-/mini-css-extract-plugin-2.6.1.tgz", + "integrity": "sha512-wd+SD57/K6DiV7jIR34P+s3uckTRuQvx0tKPcvjFlrEylk6P4mQ2KSWk1hblj1Kxaqok7LogKOieygXqBczNlg==", + "dependencies": { + "schema-utils": "^4.0.0" + }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^5.0.0" + } }, - "mini-css-extract-plugin": { - "version": "0.9.0", - "resolved": "https://registry.npmjs.org/mini-css-extract-plugin/-/mini-css-extract-plugin-0.9.0.tgz", - "integrity": "sha512-lp3GeY7ygcgAmVIcRPBVhIkf8Us7FZjA+ILpal44qLdSu11wmjKQ3d9k15lfD7pO4esu9eUIAW7qiYIBppv40A==", - "dev": true, - "requires": { - "loader-utils": "^1.1.0", - "normalize-url": "1.9.1", - "schema-utils": "^1.0.0", - "webpack-sources": "^1.1.0" - }, - "dependencies": { - "json5": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz", - "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==", - "dev": true, - "requires": { - "minimist": "^1.2.0" - } - }, - "loader-utils": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.2.tgz", - "integrity": "sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==", - "dev": true, - "requires": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^1.0.1" - } - }, - "schema-utils": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-1.0.0.tgz", - "integrity": "sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g==", - "dev": true, - "requires": { - "ajv": "^6.1.0", - "ajv-errors": "^1.0.0", - "ajv-keywords": "^3.1.0" - } - } + "node_modules/mini-css-extract-plugin/node_modules/schema-utils": { + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.3.2.tgz", + "integrity": "sha512-Gn/JaSk/Mt9gYubxTtSn/QCV4em9mpAPiR1rqy/Ocu19u/G9J5WWdNoUT4SiV6mFC3y6cxyFcFwdzPM3FgxGAQ==", + "dependencies": { + "@types/json-schema": "^7.0.9", + "ajv": "^8.9.0", + "ajv-formats": "^2.1.1", + "ajv-keywords": "^5.1.0" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" } }, - "minimalistic-assert": { + "node_modules/minimalistic-assert": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", - "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==", - "dev": true - }, - "minimalistic-crypto-utils": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz", - "integrity": "sha512-JIYlbt6g8i5jKfJ3xz7rF0LXmv2TkDxBLUkiBeZ7bAx4GnnNMr8xFpGnOxn6GhTEHx3SjRrZEoU+j04prX1ktg==", - "dev": true + "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==" }, - "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" + "node_modules/minimatch": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.0.tgz", + "integrity": "sha512-9TPBGGak4nHfGZsPBohm9AWg6NoT7QTCehS3BIJABslyZbzxfV78QM2Y6+i741OPZIafFAaiiEMh5OyIrJPgtg==", + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=10" } }, - "minimist": { + "node_modules/minimist": { "version": "1.2.8", "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", - "dev": true + "devOptional": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, - "minipass": { + "node_modules/minipass": { "version": "3.3.6", "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", - "dev": true, - "requires": { + "dependencies": { "yallist": "^4.0.0" }, - "dependencies": { - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - } + "engines": { + "node": ">=8" } }, - "minipass-collect": { + "node_modules/minipass-collect": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/minipass-collect/-/minipass-collect-1.0.2.tgz", "integrity": "sha512-6T6lH0H8OG9kITm/Jm6tdooIbogG9e0tLgpY6mphXSm/A9u8Nq1ryBG+Qspiub9LjWlBPsPS3tWQ/Botq4FdxA==", - "dev": true, - "requires": { + "dependencies": { "minipass": "^3.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/minipass-fetch": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-2.1.2.tgz", + "integrity": "sha512-LT49Zi2/WMROHYoqGgdlQIZh8mLPZmOrN2NdJjMXxYe4nkN6FUyuPuOAOedNJDrx0IRGg9+4guZewtp8hE6TxA==", + "dev": true, + "dependencies": { + "minipass": "^3.1.6", + "minipass-sized": "^1.0.3", + "minizlib": "^2.1.2" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + }, + "optionalDependencies": { + "encoding": "^0.1.13" } }, - "minipass-flush": { + "node_modules/minipass-flush": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/minipass-flush/-/minipass-flush-1.0.5.tgz", "integrity": "sha512-JmQSYYpPUqX5Jyn1mXaRwOda1uQ8HP5KAT/oDSLCzt1BYRhQU0/hDtsB1ufZfEEzMZ9aAVmsBw8+FWsIXlClWw==", + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/minipass-json-stream": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/minipass-json-stream/-/minipass-json-stream-1.0.2.tgz", + "integrity": "sha512-myxeeTm57lYs8pH2nxPzmEEg8DGIgW+9mv6D4JZD2pa81I/OBjeU7PtICXV6c9eRGTA5JMDsuIPUZRCyBMYNhg==", "dev": true, - "requires": { + "dependencies": { + "jsonparse": "^1.3.1", "minipass": "^3.0.0" } }, - "minipass-pipeline": { + "node_modules/minipass-pipeline": { "version": "1.2.4", "resolved": "https://registry.npmjs.org/minipass-pipeline/-/minipass-pipeline-1.2.4.tgz", "integrity": "sha512-xuIq7cIOt09RPRJ19gdi4b+RiNvDFYe5JH+ggNvBqGqpQXcru3PcRmOZuHBKWK1Txf9+cQ+HMVN4d6z46LZP7A==", + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/minipass-sized": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/minipass-sized/-/minipass-sized-1.0.3.tgz", + "integrity": "sha512-MbkQQ2CTiBMlA2Dm/5cY+9SWFEN8pzzOXi6rlM5Xxq0Yqbda5ZQy9sU75a673FE9ZK0Zsbr6Y5iP6u9nktfg2g==", "dev": true, - "requires": { + "dependencies": { "minipass": "^3.0.0" + }, + "engines": { + "node": ">=8" } }, - "minizlib": { + "node_modules/minipass/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + }, + "node_modules/minizlib": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz", "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==", - "dev": true, - "requires": { + "dependencies": { "minipass": "^3.0.0", "yallist": "^4.0.0" }, - "dependencies": { - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - } - } - }, - "mississippi": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/mississippi/-/mississippi-3.0.0.tgz", - "integrity": "sha512-x471SsVjUtBRtcvd4BzKE9kFC+/2TeWgKCgw0bZcw1b9l2X3QX5vCWgF+KaZaYm87Ss//rHnWryupDrgLvmSkA==", - "dev": true, - "requires": { - "concat-stream": "^1.5.0", - "duplexify": "^3.4.2", - "end-of-stream": "^1.1.0", - "flush-write-stream": "^1.0.0", - "from2": "^2.1.0", - "parallel-transform": "^1.1.0", - "pump": "^3.0.0", - "pumpify": "^1.3.3", - "stream-each": "^1.1.0", - "through2": "^2.0.0" - } - }, - "mixin-deep": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.2.tgz", - "integrity": "sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA==", - "dev": true, - "requires": { - "for-in": "^1.0.2", - "is-extendable": "^1.0.1" + "engines": { + "node": ">= 8" } }, - "mkdirp": { - "version": "0.5.6", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", - "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", - "dev": true, - "requires": { - "minimist": "^1.2.6" - } + "node_modules/minizlib/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" }, - "move-concurrently": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/move-concurrently/-/move-concurrently-1.0.1.tgz", - "integrity": "sha512-hdrFxZOycD/g6A6SoI2bB5NA/5NEqD0569+S47WZhPvm46sD50ZHdYaFmnua5lndde9rCHGjmfK7Z8BuCt/PcQ==", - "dev": true, - "requires": { - "aproba": "^1.1.1", - "copy-concurrently": "^1.0.0", - "fs-write-stream-atomic": "^1.0.8", - "mkdirp": "^0.5.1", - "rimraf": "^2.5.4", - "run-queue": "^1.0.3" - }, - "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" - } - } + "node_modules/mkdirp": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", + "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", + "bin": { + "mkdirp": "bin/cmd.js" + }, + "engines": { + "node": ">=10" } }, - "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 + "node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" }, - "multicast-dns": { - "version": "6.2.3", - "resolved": "https://registry.npmjs.org/multicast-dns/-/multicast-dns-6.2.3.tgz", - "integrity": "sha512-ji6J5enbMyGRHIAkAOu3WdV8nggqviKCEKtXcOqfphZZtQrmHKycfynJ2V7eVPUA4NhJ6V7Wf4TmGbTwKE9B6g==", - "dev": true, - "requires": { - "dns-packet": "^1.3.1", + "node_modules/multicast-dns": { + "version": "7.2.5", + "resolved": "https://registry.npmjs.org/multicast-dns/-/multicast-dns-7.2.5.tgz", + "integrity": "sha512-2eznPJP8z2BFLX50tf0LuODrpINqP1RVIm/CObbTcBRITQgmC/TjcREF1NeTBzIcR5XO/ukWo+YHOjBbFwIupg==", + "dependencies": { + "dns-packet": "^5.2.2", "thunky": "^1.0.2" + }, + "bin": { + "multicast-dns": "cli.js" } }, - "multicast-dns-service-types": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/multicast-dns-service-types/-/multicast-dns-service-types-1.1.0.tgz", - "integrity": "sha512-cnAsSVxIDsYt0v7HmC0hWZFwwXSh+E6PgCrREDuN/EsjgLwA5XRmlMHhSiDPrt6HxY1gTivEa/Zh7GtODoLevQ==", - "dev": true - }, - "mute-stream": { + "node_modules/mute-stream": { "version": "0.0.8", "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz", - "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==", - "dev": true + "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==" }, - "nan": { - "version": "2.17.0", - "resolved": "https://registry.npmjs.org/nan/-/nan-2.17.0.tgz", - "integrity": "sha512-2ZTgtl0nJsO0KQCjEpxcIr5D+Yv90plTitZt9JBfQvVJDS5seMl3FOvsh3+9CoYWXf/1l5OaZzzF6nDm4cagaQ==", - "dev": true, - "optional": true + "node_modules/nanoid": { + "version": "3.3.11", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.11.tgz", + "integrity": "sha512-N8SpfPUnUp1bK+PMYW8qSWdl9U+wwNWI4QKxOYDy9JAro3WMX7p2OeVRF9v+347pnakNevPmiHhNmZ2HbFA76w==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "bin": { + "nanoid": "bin/nanoid.cjs" + }, + "engines": { + "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" + } }, - "nanomatch": { - "version": "1.2.13", - "resolved": "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.13.tgz", - "integrity": "sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA==", - "dev": true, - "requires": { - "arr-diff": "^4.0.0", - "array-unique": "^0.3.2", - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "fragment-cache": "^0.2.1", - "is-windows": "^1.0.2", - "kind-of": "^6.0.2", - "object.pick": "^1.3.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.1" + "node_modules/needle": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/needle/-/needle-3.3.1.tgz", + "integrity": "sha512-6k0YULvhpw+RoLNiQCRKOl09Rv1dPLr8hHnVjHqdolKwDrdNyk+Hmrthi4lIGPPz3r39dLx0hsF5s40sZ3Us4Q==", + "optional": true, + "dependencies": { + "iconv-lite": "^0.6.3", + "sax": "^1.2.4" + }, + "bin": { + "needle": "bin/needle" + }, + "engines": { + "node": ">= 4.4.x" } }, - "negotiator": { + "node_modules/needle/node_modules/iconv-lite": { "version": "0.6.3", - "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", - "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==", - "dev": true + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", + "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", + "optional": true, + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/negotiator": { + "version": "0.6.4", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.4.tgz", + "integrity": "sha512-myRT3DiWPHqho5PrJaIRyaMv2kgYf0mUVgBNOYMuCH5Ki1yEiQaf/ZJuQ62nvpc44wL5WDbTX7yGJi1Neevw8w==", + "engines": { + "node": ">= 0.6" + } }, - "neo-async": { + "node_modules/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 + "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==" + }, + "node_modules/ng-packagr": { + "version": "14.2.2", + "resolved": "https://registry.npmjs.org/ng-packagr/-/ng-packagr-14.2.2.tgz", + "integrity": "sha512-AqwHcMM6x+JkCHT++IsbulnTdyoXcC2Cr4tbPamuieacc77+fFbB195hdcqEFwsKX5410cymx/ZUyHird9rxlg==", + "dependencies": { + "@rollup/plugin-json": "^4.1.0", + "@rollup/plugin-node-resolve": "^13.1.3", + "ajv": "^8.10.0", + "ansi-colors": "^4.1.1", + "browserslist": "^4.20.0", + "cacache": "^16.0.0", + "chokidar": "^3.5.3", + "commander": "^9.0.0", + "dependency-graph": "^0.11.0", + "esbuild-wasm": "^0.15.0", + "find-cache-dir": "^3.3.2", + "glob": "^8.0.0", + "injection-js": "^2.4.0", + "jsonc-parser": "^3.0.0", + "less": "^4.1.2", + "ora": "^5.1.0", + "postcss": "^8.4.8", + "postcss-preset-env": "^7.4.2", + "postcss-url": "^10.1.3", + "rollup": "^2.70.0", + "rollup-plugin-sourcemaps": "^0.6.3", + "rxjs": "^7.5.5", + "sass": "^1.49.9", + "stylus": "^0.59.0" + }, + "bin": { + "ng-packagr": "cli/main.js" + }, + "engines": { + "node": "^14.15.0 || >=16.10.0" + }, + "optionalDependencies": { + "esbuild": "^0.15.0" + }, + "peerDependencies": { + "@angular/compiler-cli": "^14.0.0 || ^14.0.0-next || ^14.2.0-next", + "tslib": "^2.3.0", + "typescript": ">=4.6.2 <4.9" + } + }, + "node_modules/ng-packagr/node_modules/@rollup/plugin-node-resolve": { + "version": "13.3.0", + "resolved": "https://registry.npmjs.org/@rollup/plugin-node-resolve/-/plugin-node-resolve-13.3.0.tgz", + "integrity": "sha512-Lus8rbUo1eEcnS4yTFKLZrVumLPY+YayBdWXgFSHYhTT2iJbMhoaaBL3xl5NCdeRytErGr8tZ0L71BMRmnlwSw==", + "dependencies": { + "@rollup/pluginutils": "^3.1.0", + "@types/resolve": "1.17.1", + "deepmerge": "^4.2.2", + "is-builtin-module": "^3.1.0", + "is-module": "^1.0.0", + "resolve": "^1.19.0" + }, + "engines": { + "node": ">= 10.0.0" + }, + "peerDependencies": { + "rollup": "^2.42.0" + } + }, + "node_modules/ng-packagr/node_modules/@rollup/pluginutils": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-3.1.0.tgz", + "integrity": "sha512-GksZ6pr6TpIjHm8h9lSQ8pi8BE9VeubNT0OMJ3B5uZJ8pz73NPiqOtCog/x2/QzM1ENChPKxMDhiQuRHsqc+lg==", + "dependencies": { + "@types/estree": "0.0.39", + "estree-walker": "^1.0.1", + "picomatch": "^2.2.2" + }, + "engines": { + "node": ">= 8.0.0" + }, + "peerDependencies": { + "rollup": "^1.20.0||^2.0.0" + } + }, + "node_modules/ng-packagr/node_modules/@types/estree": { + "version": "0.0.39", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.39.tgz", + "integrity": "sha512-EYNwp3bU+98cpU4lAWYYL7Zz+2gryWH1qbdDTidVd6hkiR6weksdbMadyXKXNPEkQFhXM+hVO9ZygomHXp+AIw==" + }, + "node_modules/ng-packagr/node_modules/@types/resolve": { + "version": "1.17.1", + "resolved": "https://registry.npmjs.org/@types/resolve/-/resolve-1.17.1.tgz", + "integrity": "sha512-yy7HuzQhj0dhGpD8RLXSZWEkLsV9ibvxvi6EiJ3bkqLAO1RGo0WbkWQiwpRlSFymTJRz0d3k5LM3kkx8ArDbLw==", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/ng-packagr/node_modules/estree-walker": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-1.0.1.tgz", + "integrity": "sha512-1fMXF3YP4pZZVozF8j/ZLfvnR8NSIljt56UhbZ5PeeDmmGHpgpdwQt7ITlGvYaQukCvuBRMLEiKiYC+oeIg4cg==" + }, + "node_modules/ng-packagr/node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/nice-napi": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/nice-napi/-/nice-napi-1.0.2.tgz", + "integrity": "sha512-px/KnJAJZf5RuBGcfD+Sp2pAKq0ytz8j+1NehvgIGFkvtvFrDM3T8E4x/JJODXK9WZow8RRGrbA9QQ3hs+pDhA==", + "hasInstallScript": true, + "optional": true, + "os": [ + "!win32" + ], + "dependencies": { + "node-addon-api": "^3.0.0", + "node-gyp-build": "^4.2.2" + } + }, + "node_modules/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==", + "optional": true + }, + "node_modules/node-forge": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-1.3.1.tgz", + "integrity": "sha512-dPEtOeMvF9VMcYV/1Wb8CPoVAXtp6MKMlcbAt4ddqmGqUJ6fQZFXkNZNkNlfevtNkGtaSoXf/vNNNSvgrdXwtA==", + "engines": { + "node": ">= 6.13.0" + } }, - "ng-packagr": { - "version": "9.1.5", - "resolved": "https://registry.npmjs.org/ng-packagr/-/ng-packagr-9.1.5.tgz", - "integrity": "sha512-biuNfM15uLkCW+Vvj8bnuwjX37oX7j5icGm+l71FhM6ydlEl+Cl7PdFXpy9rrIlKFYlYRiPiiiWazGwVGn1icQ==", + "node_modules/node-gyp": { + "version": "9.4.1", + "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-9.4.1.tgz", + "integrity": "sha512-OQkWKbjQKbGkMf/xqI1jjy3oCTgMKJac58G2+bjZb3fza6gW2YrCSdMQYaoTb70crvE//Gngr4f0AgVHmqHvBQ==", "dev": true, - "requires": { - "@rollup/plugin-commonjs": "^11.0.2", - "@rollup/plugin-json": "^4.0.0", - "@rollup/plugin-node-resolve": "^7.1.0", - "ajv": "^6.10.2", - "autoprefixer": "^9.7.6", - "browserslist": "^4.12.0", - "chalk": "^4.0.0", - "chokidar": "^3.2.1", - "clean-css": "^4.1.11", - "commander": "^4.0.0", - "fs-extra": "^9.0.0", - "glob": "^7.1.2", - "injection-js": "^2.2.1", - "less": "^3.10.3", - "node-sass-tilde-importer": "^1.0.0", - "postcss": "^7.0.18", - "postcss-url": "^8.0.0", - "read-pkg-up": "^5.0.0", - "rimraf": "^3.0.0", - "rollup": "2.7.5", - "rollup-plugin-sourcemaps": "^0.6.0", - "rxjs": "^6.5.0", - "sass": "^1.23.0", - "stylus": "^0.54.7", - "terser": "^4.3.8", - "update-notifier": "^4.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" - } - }, - "autoprefixer": { - "version": "9.8.8", - "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-9.8.8.tgz", - "integrity": "sha512-eM9d/swFopRt5gdJ7jrpCwgvEMIayITpojhkkSMRsFHYuH5bkSQ4p/9qTEHtmNudUZh22Tehu7I6CxAW0IXTKA==", - "dev": true, - "requires": { - "browserslist": "^4.12.0", - "caniuse-lite": "^1.0.30001109", - "normalize-range": "^0.1.2", - "num2fraction": "^1.2.2", - "picocolors": "^0.2.1", - "postcss": "^7.0.32", - "postcss-value-parser": "^4.1.0" - } - }, - "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" - } - }, - "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 - }, - "commander": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/commander/-/commander-4.1.1.tgz", - "integrity": "sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==", - "dev": true - }, - "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==", - "dev": true, - "requires": { - "at-least-node": "^1.0.0", - "graceful-fs": "^4.2.0", - "jsonfile": "^6.0.1", - "universalify": "^2.0.0" - } - }, - "fsevents": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.1.3.tgz", - "integrity": "sha512-Auw9a4AxqWpa9GUfj370BMPzzyncfBABW8Mab7BGWBYDj4Isgq+cDKtx0i6u9jcX9pQDnswsaaOTgTmA5pEjuQ==", - "dev": true, - "optional": 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 - }, - "jsonfile": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz", - "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==", - "dev": true, - "requires": { - "graceful-fs": "^4.1.6", - "universalify": "^2.0.0" - } - }, - "picocolors": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", - "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", - "dev": true - }, - "postcss": { - "version": "7.0.39", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", - "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", - "dev": true, - "requires": { - "picocolors": "^0.2.1", - "source-map": "^0.6.1" - } - }, - "rollup": { - "version": "2.7.5", - "resolved": "https://registry.npmjs.org/rollup/-/rollup-2.7.5.tgz", - "integrity": "sha512-xQSM8uzhgtF6tTnTVEvOQThrcG3LPUP3T/4l4EukzDp0kbTY1QRDuXjiwtYzs9odKj9Bj/PccRG6viFfS7DmCQ==", - "dev": true, - "requires": { - "fsevents": "~2.1.2" - } - }, - "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 - }, - "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" - } - }, - "universalify": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.0.tgz", - "integrity": "sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==", - "dev": true - } + "dependencies": { + "env-paths": "^2.2.0", + "exponential-backoff": "^3.1.1", + "glob": "^7.1.4", + "graceful-fs": "^4.2.6", + "make-fetch-happen": "^10.0.3", + "nopt": "^6.0.0", + "npmlog": "^6.0.0", + "rimraf": "^3.0.2", + "semver": "^7.3.5", + "tar": "^6.1.2", + "which": "^2.0.2" + }, + "bin": { + "node-gyp": "bin/node-gyp.js" + }, + "engines": { + "node": "^12.13 || ^14.13 || >=16" } }, - "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_modules/node-gyp-build": { + "version": "4.8.4", + "resolved": "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.8.4.tgz", + "integrity": "sha512-LA4ZjwlnUblHVgq0oBF3Jl/6h/Nvs5fzBLwdEF4nuxnFdsfajde4WfxtJr3CaiH+F6ewcIB/q4jQ4UzPyid+CQ==", + "optional": true, + "bin": { + "node-gyp-build": "bin.js", + "node-gyp-build-optional": "optional.js", + "node-gyp-build-test": "build-test.js" + } }, - "node-fetch-npm": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/node-fetch-npm/-/node-fetch-npm-2.0.4.tgz", - "integrity": "sha512-iOuIQDWDyjhv9qSDrj9aq/klt6F9z1p2otB3AV7v3zBDcL/x+OfGsvGQZZCcMZbUf4Ujw1xGNQkjvGnVT22cKg==", + "node_modules/node-gyp/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", "dev": true, - "requires": { - "encoding": "^0.1.11", - "json-parse-better-errors": "^1.0.0", - "safe-buffer": "^5.1.1" + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" } }, - "node-forge": { - "version": "0.10.0", - "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-0.10.0.tgz", - "integrity": "sha512-PPmu8eEeG9saEUvI97fm4OYxXVB6bFvyNTyiUOBichBpFG8A1Ljw3bY62+5oOjDEMHRnd0Y7HQ+x7uzxOzC6JA==", - "dev": true + "node_modules/node-gyp/node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "deprecated": "Glob versions prior to v9 are no longer supported", + "dev": true, + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } }, - "node-libs-browser": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/node-libs-browser/-/node-libs-browser-2.2.1.tgz", - "integrity": "sha512-h/zcD8H9kaDZ9ALUWwlBUDo6TKF8a7qBSCSEGfjTVIYeqsioSKaAX+BN7NgiMGp6iSIXZ3PxgCu8KS3b71YK5Q==", + "node_modules/node-gyp/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", "dev": true, - "requires": { - "assert": "^1.1.1", - "browserify-zlib": "^0.2.0", - "buffer": "^4.3.0", - "console-browserify": "^1.1.0", - "constants-browserify": "^1.0.0", - "crypto-browserify": "^3.11.0", - "domain-browser": "^1.1.1", - "events": "^3.0.0", - "https-browserify": "^1.0.0", - "os-browserify": "^0.3.0", - "path-browserify": "0.0.1", - "process": "^0.11.10", - "punycode": "^1.2.4", - "querystring-es3": "^0.2.0", - "readable-stream": "^2.3.3", - "stream-browserify": "^2.0.1", - "stream-http": "^2.7.2", - "string_decoder": "^1.0.0", - "timers-browserify": "^2.0.4", - "tty-browserify": "0.0.0", - "url": "^0.11.0", - "util": "^0.11.0", - "vm-browserify": "^1.0.1" - }, - "dependencies": { - "punycode": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", - "integrity": "sha512-jmYNElW7yvO7TV33CjSmvSiE2yco3bV2czu/OzDKdMNVZQWfxCblURLhf+47syQRBntjfLdd/H0egrzIG+oaFQ==", - "dev": true - } + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/node-gyp/node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" } }, - "node-releases": { - "version": "2.0.10", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.10.tgz", - "integrity": "sha512-5GFldHPXVG/YZmFzJvKK2zDSzPKhEp0+ZR5SVaoSag9fsL5YgHbUHDfnG5494ISANDcK4KwPXAx2xqVEydmd7w==", - "dev": true + "node_modules/node-releases": { + "version": "2.0.19", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.19.tgz", + "integrity": "sha512-xxOWJsBKtzAq7DY0J+DTzuz58K8e7sJbdgwkbMWQe8UYB6ekmsQ45q0M/tJDsGaZmbC+l7n57UV8Hl5tHxO9uw==" }, - "node-sass-tilde-importer": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/node-sass-tilde-importer/-/node-sass-tilde-importer-1.0.2.tgz", - "integrity": "sha512-Swcmr38Y7uB78itQeBm3mThjxBy9/Ah/ykPIaURY/L6Nec9AyRoL/jJ7ECfMR+oZeCTVQNxVMu/aHU+TLRVbdg==", + "node_modules/nopt": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/nopt/-/nopt-6.0.0.tgz", + "integrity": "sha512-ZwLpbTgdhuZUnZzjd7nb1ZV+4DoiC6/sfiVKok72ym/4Tlf+DFdlHYmT2JPmcNNWV6Pi3SDf1kT+A4r9RTuT9g==", "dev": true, - "requires": { - "find-parent-dir": "^0.3.0" + "dependencies": { + "abbrev": "^1.0.0" + }, + "bin": { + "nopt": "bin/nopt.js" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "normalize-package-data": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", - "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", + "node_modules/normalize-package-data": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-4.0.1.tgz", + "integrity": "sha512-EBk5QKKuocMJhB3BILuKhmaPjI8vNRSpIfO9woLC6NyHVkKKdVEdAO1mrT0ZfxNR1lKwCcTkuZfmGIFdizZ8Pg==", "dev": true, - "requires": { - "hosted-git-info": "^2.1.4", - "resolve": "^1.10.0", - "semver": "2 || 3 || 4 || 5", - "validate-npm-package-license": "^3.0.1" - }, - "dependencies": { - "hosted-git-info": { - "version": "2.8.9", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz", - "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==", - "dev": true - }, - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "dev": true - } + "dependencies": { + "hosted-git-info": "^5.0.0", + "is-core-module": "^2.8.1", + "semver": "^7.3.5", + "validate-npm-package-license": "^3.0.4" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "normalize-path": { + "node_modules/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 + "engines": { + "node": ">=0.10.0" + } }, - "normalize-range": { + "node_modules/normalize-range": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz", "integrity": "sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==", - "dev": true - }, - "normalize-url": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-1.9.1.tgz", - "integrity": "sha512-A48My/mtCklowHBlI8Fq2jFWK4tX4lJ5E6ytFsSOq1fzpvT0SQSgKhSg7lN5c2uYFOrUAOQp6zhhJnpp1eMloQ==", - "dev": true, - "requires": { - "object-assign": "^4.0.1", - "prepend-http": "^1.0.0", - "query-string": "^4.1.0", - "sort-keys": "^1.0.0" + "engines": { + "node": ">=0.10.0" } }, - "npm-bundled": { + "node_modules/npm-bundled": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/npm-bundled/-/npm-bundled-1.1.2.tgz", "integrity": "sha512-x5DHup0SuyQcmL3s7Rx/YQ8sbw/Hzg0rj48eN0dV7hf5cmQq5PXIeioroH3raV1QC1yh3uTYuMThvEQF3iKgGQ==", "dev": true, - "requires": { + "dependencies": { "npm-normalize-package-bin": "^1.0.1" } }, - "npm-install-checks": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/npm-install-checks/-/npm-install-checks-4.0.0.tgz", - "integrity": "sha512-09OmyDkNLYwqKPOnbI8exiOZU2GVVmQp7tgez2BPi5OZC8M82elDAps7sxC4l//uSUtotWqoEIDwjRvWH4qz8w==", + "node_modules/npm-install-checks": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/npm-install-checks/-/npm-install-checks-5.0.0.tgz", + "integrity": "sha512-65lUsMI8ztHCxFz5ckCEC44DRvEGdZX5usQFriauxHEwt7upv1FKaQEmAtU0YnOAdwuNWCmk64xYiQABNrEyLA==", "dev": true, - "requires": { + "dependencies": { "semver": "^7.1.1" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "npm-normalize-package-bin": { + "node_modules/npm-normalize-package-bin": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/npm-normalize-package-bin/-/npm-normalize-package-bin-1.0.1.tgz", "integrity": "sha512-EPfafl6JL5/rU+ot6P3gRSCpPDW5VmIzX959Ob1+ySFUuuYHWHekXpwdUZcKP5C+DS4GEtdJluwBjnsNDl+fSA==", "dev": true }, - "npm-package-arg": { - "version": "8.0.1", - "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-8.0.1.tgz", - "integrity": "sha512-/h5Fm6a/exByzFSTm7jAyHbgOqErl9qSNJDQF32Si/ZzgwT2TERVxRxn3Jurw1wflgyVVAxnFR4fRHPM7y1ClQ==", - "dev": true, - "requires": { - "hosted-git-info": "^3.0.2", - "semver": "^7.0.0", - "validate-npm-package-name": "^3.0.0" - } - }, - "npm-packlist": { - "version": "1.4.8", - "resolved": "https://registry.npmjs.org/npm-packlist/-/npm-packlist-1.4.8.tgz", - "integrity": "sha512-5+AZgwru5IevF5ZdnFglB5wNlHG1AOOuw28WhUq8/8emhBmLv6jX5by4WJCh7lW0uSYZYS6DXqIsyZVIXRZU9A==", - "dev": true, - "requires": { - "ignore-walk": "^3.0.1", - "npm-bundled": "^1.0.1", - "npm-normalize-package-bin": "^1.0.1" - } - }, - "npm-pick-manifest": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/npm-pick-manifest/-/npm-pick-manifest-6.0.0.tgz", - "integrity": "sha512-PdJpXMvjqt4nftNEDpCgjBUF8yI3Q3MyuAmVB9nemnnCg32F4BPL/JFBfdj8DubgHCYUFQhtLWmBPvdsFtjWMg==", - "dev": true, - "requires": { - "npm-install-checks": "^4.0.0", - "npm-package-arg": "^8.0.0", - "semver": "^7.0.0" - } - }, - "npm-registry-fetch": { - "version": "4.0.7", - "resolved": "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-4.0.7.tgz", - "integrity": "sha512-cny9v0+Mq6Tjz+e0erFAB+RYJ/AVGzkjnISiobqP8OWj9c9FLoZZu8/SPSKJWE17F1tk4018wfjV+ZbIbqC7fQ==", + "node_modules/npm-package-arg": { + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-9.1.0.tgz", + "integrity": "sha512-4J0GL+u2Nh6OnhvUKXRr2ZMG4lR8qtLp+kv7UiV00Y+nGiSxtttCyIRHCt5L5BNkXQld/RceYItau3MDOoGiBw==", "dev": true, - "requires": { - "JSONStream": "^1.3.4", - "bluebird": "^3.5.1", - "figgy-pudding": "^3.4.1", - "lru-cache": "^5.1.1", - "make-fetch-happen": "^5.0.0", - "npm-package-arg": "^6.1.0", - "safe-buffer": "^5.2.0" - }, "dependencies": { - "hosted-git-info": { - "version": "2.8.9", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz", - "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==", - "dev": true - }, - "npm-package-arg": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-6.1.1.tgz", - "integrity": "sha512-qBpssaL3IOZWi5vEKUKW0cO7kzLeT+EQO9W8RsLOZf76KF9E/K9+wH0C7t06HXPpaH8WH5xF1MExLuCwbTqRUg==", - "dev": true, - "requires": { - "hosted-git-info": "^2.7.1", - "osenv": "^0.1.5", - "semver": "^5.6.0", - "validate-npm-package-name": "^3.0.0" - } - }, - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "dev": true - } + "hosted-git-info": "^5.0.0", + "proc-log": "^2.0.1", + "semver": "^7.3.5", + "validate-npm-package-name": "^4.0.0" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "npm-run-all": { - "version": "4.1.5", - "resolved": "https://registry.npmjs.org/npm-run-all/-/npm-run-all-4.1.5.tgz", - "integrity": "sha512-Oo82gJDAVcaMdi3nuoKFavkIHBRVqQ1qvMb+9LHk/cF4P6B2m8aP04hGf7oL6wZ9BuGwX1onlLhpuoofSyoQDQ==", + "node_modules/npm-packlist": { + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/npm-packlist/-/npm-packlist-5.1.3.tgz", + "integrity": "sha512-263/0NGrn32YFYi4J533qzrQ/krmmrWwhKkzwTuM4f/07ug51odoaNjUexxO4vxlzURHcmYMH1QjvHjsNDKLVg==", "dev": true, - "requires": { - "ansi-styles": "^3.2.1", - "chalk": "^2.4.1", - "cross-spawn": "^6.0.5", - "memorystream": "^0.3.1", - "minimatch": "^3.0.4", - "pidtree": "^0.3.0", - "read-pkg": "^3.0.0", - "shell-quote": "^1.6.1", - "string.prototype.padend": "^3.0.0" + "dependencies": { + "glob": "^8.0.1", + "ignore-walk": "^5.0.1", + "npm-bundled": "^2.0.0", + "npm-normalize-package-bin": "^2.0.0" + }, + "bin": { + "npm-packlist": "bin/index.js" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "npm-run-path": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz", - "integrity": "sha512-lJxZYlT4DW/bRUtFh1MQIWqmLwQfAxnqWG4HhEdjMlkrJYnJn0Jrr2u3mgxqaWsdiBc76TYkTG/mhrnYTuzfHw==", + "node_modules/npm-packlist/node_modules/npm-bundled": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/npm-bundled/-/npm-bundled-2.0.1.tgz", + "integrity": "sha512-gZLxXdjEzE/+mOstGDqR6b0EkhJ+kM6fxM6vUuckuctuVPh80Q6pw/rSZj9s4Gex9GxWtIicO1pc8DB9KZWudw==", "dev": true, - "requires": { - "path-key": "^2.0.0" + "dependencies": { + "npm-normalize-package-bin": "^2.0.0" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "nth-check": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-1.0.2.tgz", - "integrity": "sha512-WeBOdju8SnzPN5vTUJYxYUxLeXpCaVP5i5e0LF8fg7WORF2Wd7wFX/pk0tYZk7s8T+J7VLy0Da6J1+wCT0AtHg==", + "node_modules/npm-packlist/node_modules/npm-normalize-package-bin": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/npm-normalize-package-bin/-/npm-normalize-package-bin-2.0.0.tgz", + "integrity": "sha512-awzfKUO7v0FscrSpRoogyNm0sajikhBWpU0QMrW09AMi9n1PoKU6WaIqUzuJSQnpciZZmJ/jMZ2Egfmb/9LiWQ==", "dev": true, - "requires": { - "boolbase": "~1.0.0" + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "num2fraction": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/num2fraction/-/num2fraction-1.2.2.tgz", - "integrity": "sha512-Y1wZESM7VUThYY+4W+X4ySH2maqcA+p7UR+w8VWNWVAd6lwuXXWz/w/Cz43J/dI2I+PS6wD5N+bJUF+gjWvIqg==", - "dev": true - }, - "oauth-sign": { - "version": "0.9.0", - "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz", - "integrity": "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==", - "dev": true - }, - "object-assign": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", - "dev": true - }, - "object-copy": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/object-copy/-/object-copy-0.1.0.tgz", - "integrity": "sha512-79LYn6VAb63zgtmAteVOWo9Vdj71ZVBy3Pbse+VqxDpEP83XuujMrGqHIwAXJ5I/aM0zU7dIyIAhifVTPrNItQ==", + "node_modules/npm-pick-manifest": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/npm-pick-manifest/-/npm-pick-manifest-7.0.1.tgz", + "integrity": "sha512-IA8+tuv8KujbsbLQvselW2XQgmXWS47t3CB0ZrzsRZ82DbDfkcFunOaPm4X7qNuhMfq+FmV7hQT4iFVpHqV7mg==", "dev": true, - "requires": { - "copy-descriptor": "^0.1.0", - "define-property": "^0.2.5", - "kind-of": "^3.0.3" - }, - "dependencies": { - "define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA==", - "dev": true, - "requires": { - "is-descriptor": "^0.1.0" - } - }, - "is-accessor-descriptor": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", - "integrity": "sha512-e1BM1qnDbMRG3ll2U9dSK0UMHuWOs3pY3AtcFsmvwPtKL3MML/Q86i+GilLfvqEs4GW+ExB91tQ3Ig9noDIZ+A==", - "dev": true, - "requires": { - "kind-of": "^3.0.2" - } - }, - "is-data-descriptor": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", - "integrity": "sha512-+w9D5ulSoBNlmw9OHn3U2v51SyoCd0he+bB3xMl62oijhrspxowjU+AIcDY0N3iEJbUEkB15IlMASQsxYigvXg==", - "dev": true, - "requires": { - "kind-of": "^3.0.2" - } - }, - "is-descriptor": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", - "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", - "dev": true, - "requires": { - "is-accessor-descriptor": "^0.1.6", - "is-data-descriptor": "^0.1.4", - "kind-of": "^5.0.0" - }, - "dependencies": { - "kind-of": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", - "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", - "dev": true - } - } - }, - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } + "dependencies": { + "npm-install-checks": "^5.0.0", + "npm-normalize-package-bin": "^1.0.1", + "npm-package-arg": "^9.0.0", + "semver": "^7.3.5" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "object-inspect": { - "version": "1.12.3", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.3.tgz", - "integrity": "sha512-geUvdk7c+eizMNUDkRpW1wJwgfOiOeHbxBR/hLXK1aT6zmVSO0jsQcs7fj6MGw89jC/cjGfLcNOrtMYtGqm81g==", - "dev": true - }, - "object-is": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/object-is/-/object-is-1.1.5.tgz", - "integrity": "sha512-3cyDsyHgtmi7I7DfSSI2LDp6SK2lwvtbg0p0R1e0RvTqF5ceGx+K2dfSjm1bKDMVCFEDAQvy+o8c6a7VujOddw==", + "node_modules/npm-registry-fetch": { + "version": "13.3.1", + "resolved": "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-13.3.1.tgz", + "integrity": "sha512-eukJPi++DKRTjSBRcDZSDDsGqRK3ehbxfFUcgaRd0Yp6kRwOwh2WVn0r+8rMB4nnuzvAk6rQVzl6K5CkYOmnvw==", "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3" + "dependencies": { + "make-fetch-happen": "^10.0.6", + "minipass": "^3.1.6", + "minipass-fetch": "^2.0.3", + "minipass-json-stream": "^1.0.1", + "minizlib": "^2.1.2", + "npm-package-arg": "^9.0.1", + "proc-log": "^2.0.0" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "object-keys": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", - "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", - "dev": true - }, - "object-visit": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/object-visit/-/object-visit-1.0.1.tgz", - "integrity": "sha512-GBaMwwAVK9qbQN3Scdo0OyvgPW7l3lnaVMj84uTOZlswkX0KpF6fyDBJhtTthf7pymztoN36/KEr1DyhF96zEA==", - "dev": true, - "requires": { - "isobject": "^3.0.0" + "node_modules/npm-run-path": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", + "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", + "dependencies": { + "path-key": "^3.0.0" + }, + "engines": { + "node": ">=8" } }, - "object.assign": { - "version": "4.1.4", - "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.4.tgz", - "integrity": "sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ==", + "node_modules/npmlog": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-6.0.2.tgz", + "integrity": "sha512-/vBvz5Jfr9dT/aFWd0FIRf+T/Q2WBsLENygUaFUqstqsycmZAP/t5BvFJTK0viFmSUxiUKTUplWy5vt+rvKIxg==", + "deprecated": "This package is no longer supported.", "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "has-symbols": "^1.0.3", - "object-keys": "^1.1.1" + "dependencies": { + "are-we-there-yet": "^3.0.0", + "console-control-strings": "^1.1.0", + "gauge": "^4.0.3", + "set-blocking": "^2.0.0" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "object.getownpropertydescriptors": { - "version": "2.1.5", - "resolved": "https://registry.npmjs.org/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.1.5.tgz", - "integrity": "sha512-yDNzckpM6ntyQiGTik1fKV1DcVDRS+w8bvpWNCBanvH5LfRX9O8WTHqQzG4RZwRAM4I0oU7TV11Lj5v0g20ibw==", - "dev": true, - "requires": { - "array.prototype.reduce": "^1.0.5", - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4" + "node_modules/nth-check": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.1.1.tgz", + "integrity": "sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==", + "dependencies": { + "boolbase": "^1.0.0" + }, + "funding": { + "url": "https://github.com/fb55/nth-check?sponsor=1" } }, - "object.pick": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz", - "integrity": "sha512-tqa/UMy/CCoYmj+H5qc07qvSL9dqcs/WZENZ1JbtWBlATP+iVOe778gE6MSijnyCnORzDuX6hU+LA4SZ09YjFQ==", - "dev": true, - "requires": { - "isobject": "^3.0.1" + "node_modules/object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", + "devOptional": true, + "engines": { + "node": ">=0.10.0" } }, - "object.values": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.1.6.tgz", - "integrity": "sha512-FVVTkD1vENCsAcwNs9k6jea2uHC/X0+JcjG8YA60FN5CMaJmG95wT9jek/xX9nornqGRrBkKtzuAu2wuHpKqvw==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4" + "node_modules/object-inspect": { + "version": "1.13.4", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.4.tgz", + "integrity": "sha512-W67iLl4J2EXEGTbfeHCffrjDfitvLANg0UlX3wFUUSTx92KXRFegMHUVgSqE+wvhAbi4WqjGg9czysTV2Epbew==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "obuf": { + "node_modules/obuf": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/obuf/-/obuf-1.1.2.tgz", - "integrity": "sha512-PX1wu0AmAdPqOL1mWhqmlOd8kOIZQwGZw6rh7uby9fTc5lhaOWFLX3I6R1hrF9k3zUY40e6igsLGkDXK92LJNg==", - "dev": true + "integrity": "sha512-PX1wu0AmAdPqOL1mWhqmlOd8kOIZQwGZw6rh7uby9fTc5lhaOWFLX3I6R1hrF9k3zUY40e6igsLGkDXK92LJNg==" }, - "on-finished": { + "node_modules/on-finished": { "version": "2.4.1", "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz", "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==", - "dev": true, - "requires": { + "dependencies": { "ee-first": "1.1.1" + }, + "engines": { + "node": ">= 0.8" } }, - "on-headers": { + "node_modules/on-headers": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/on-headers/-/on-headers-1.0.2.tgz", "integrity": "sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA==", - "dev": true + "engines": { + "node": ">= 0.8" + } }, - "once": { + "node_modules/once": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", - "dev": true, - "requires": { + "dependencies": { "wrappy": "1" } }, - "onetime": { + "node_modules/onetime": { "version": "5.1.2", "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", - "dev": true, - "requires": { + "dependencies": { "mimic-fn": "^2.1.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "open": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/open/-/open-7.0.3.tgz", - "integrity": "sha512-sP2ru2v0P290WFfv49Ap8MF6PkzGNnGlAwHweB4WR4mr5d2d0woiCluUeJ218w7/+PmoBy9JmYgD5A4mLcWOFA==", - "dev": true, - "requires": { - "is-docker": "^2.0.0", - "is-wsl": "^2.1.1" - } - }, - "opn": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/opn/-/opn-5.5.0.tgz", - "integrity": "sha512-PqHpggC9bLV0VeWcdKhkpxY+3JTzetLSqTCWL/z/tFIbI6G8JCjondXklT1JinczLz2Xib62sSp0T/gKT4KksA==", - "dev": true, - "requires": { - "is-wsl": "^1.1.0" - }, + "node_modules/open": { + "version": "8.4.0", + "resolved": "https://registry.npmjs.org/open/-/open-8.4.0.tgz", + "integrity": "sha512-XgFPPM+B28FtCCgSb9I+s9szOC1vZRSwgWsRUA5ylIxRTgKozqjOCrVOqGsYABPYK5qnfqClxZTFBa8PKt2v6Q==", "dependencies": { - "is-wsl": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-1.1.0.tgz", - "integrity": "sha512-gfygJYZ2gLTDlmbWMI0CE2MwnFzSN/2SZfkMlItC4K/JBlsWVDB0bO6XhqcY13YXE7iMcAJnzTCJjPiTeJJ0Mw==", - "dev": true - } + "define-lazy-prop": "^2.0.0", + "is-docker": "^2.1.1", + "is-wsl": "^2.2.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "ora": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/ora/-/ora-4.0.3.tgz", - "integrity": "sha512-fnDebVFyz309A73cqCipVL1fBZewq4vwgSHfxh43vVy31mbyoQ8sCH3Oeaog/owYOs/lLlGVPCISQonTneg6Pg==", - "dev": true, - "requires": { - "chalk": "^3.0.0", + "node_modules/ora": { + "version": "5.4.1", + "resolved": "https://registry.npmjs.org/ora/-/ora-5.4.1.tgz", + "integrity": "sha512-5b6Y85tPxZZ7QytO+BQzysW31HJku27cRIlkbAXaNx+BdcVi+LlRFmVXzeF6a7JCwJpyw5c4b+YSVImQIrBpuQ==", + "dependencies": { + "bl": "^4.1.0", + "chalk": "^4.1.0", "cli-cursor": "^3.1.0", - "cli-spinners": "^2.2.0", + "cli-spinners": "^2.5.0", "is-interactive": "^1.0.0", - "log-symbols": "^3.0.0", - "mute-stream": "0.0.8", + "is-unicode-supported": "^0.1.0", + "log-symbols": "^4.1.0", "strip-ansi": "^6.0.0", "wcwidth": "^1.0.1" }, - "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" - } - }, - "chalk": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", - "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.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 - }, - "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" - } - } + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "os-browserify": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/os-browserify/-/os-browserify-0.3.0.tgz", - "integrity": "sha512-gjcpUc3clBf9+210TRaDWbf+rZZZEshZ+DlXMRCeAjp0xhTrnQsKHypIy1J3d5hKdUzj69t708EHtU8P6bUn0A==", - "dev": true - }, - "os-homedir": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", - "integrity": "sha512-B5JU3cabzk8c67mRRd3ECmROafjYMXbuzlwtqdM8IbS8ktlTix8aFGb2bAGKrSRIlnfKwovGUUr72JUPyOb6kQ==", - "dev": true - }, - "os-tmpdir": { + "node_modules/os-tmpdir": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", "integrity": "sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==", - "dev": true - }, - "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" + "engines": { + "node": ">=0.10.0" } }, - "p-cancelable": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-1.1.0.tgz", - "integrity": "sha512-s73XxOZ4zpt1edZYZzvhqFa6uvQc1vwUa0K0BdtIZgQMAJj9IbebH+JkgKZc9h+B05PKHLOTl4ajG1BmNrVZlw==", - "dev": true - }, - "p-finally": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz", - "integrity": "sha512-LICb2p9CB7FS+0eR1oqWnHhp0FljGLZCWBE9aix0Uye9W8LTQPwMTYVGWQWIw9RdQiDg4+epXQODwIYJtSJaow==", - "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" + "node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "dependencies": { + "p-try": "^2.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "p-locate": { + "node_modules/p-locate": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", - "dev": true, - "requires": { + "dependencies": { "p-limit": "^2.2.0" }, - "dependencies": { - "p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", - "dev": true, - "requires": { - "p-try": "^2.0.0" - } - } + "engines": { + "node": ">=8" } }, - "p-map": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/p-map/-/p-map-3.0.0.tgz", - "integrity": "sha512-d3qXVTF/s+W+CdJ5A29wywV2n8CQQYahlgz2bFiA+4eVNJbHJodPZ+/gXwPGh0bOqA+j8S+6+ckmvLGPk1QpxQ==", - "dev": true, - "requires": { + "node_modules/p-map": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", + "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", + "dependencies": { "aggregate-error": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "p-retry": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/p-retry/-/p-retry-3.0.1.tgz", - "integrity": "sha512-XE6G4+YTTkT2a0UWb2kjZe8xNwf8bIbnqpc/IS/idOBVhyves0mK5OJgeocjx7q5pvX/6m23xuzVPYT1uGM73w==", - "dev": true, - "requires": { - "retry": "^0.12.0" - }, + "node_modules/p-retry": { + "version": "4.6.2", + "resolved": "https://registry.npmjs.org/p-retry/-/p-retry-4.6.2.tgz", + "integrity": "sha512-312Id396EbJdvRONlngUx0NydfrIQ5lsYu0znKVUzVvArzEIt08V1qhtyESbGVd1FGX7UKtiFp5uwKZdM8wIuQ==", "dependencies": { - "retry": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/retry/-/retry-0.12.0.tgz", - "integrity": "sha512-9LkiTwjUh6rT555DtE9rTX+BKByPfrMzEAtnlEtdEwr3Nkffwiihqe2bWADg+OQRjt9gl6ICdmB/ZFDCGAtSow==", - "dev": true - } + "@types/retry": "0.12.0", + "retry": "^0.13.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/p-retry/node_modules/retry": { + "version": "0.13.1", + "resolved": "https://registry.npmjs.org/retry/-/retry-0.13.1.tgz", + "integrity": "sha512-XQBQ3I8W1Cge0Seh+6gjj03LbmRFWuoszgK9ooCpwYIrhhoO80pfq4cUkU5DkknwfOfFteRwlZ56PYOGYyFWdg==", + "engines": { + "node": ">= 4" } }, - "p-try": { + "node_modules/p-try": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", - "dev": true - }, - "package-json": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/package-json/-/package-json-6.5.0.tgz", - "integrity": "sha512-k3bdm2n25tkyxcjSKzB5x8kfVxlMdgsbPr0GkZcwHsLpba6cBjqCt1KlcChKEvxHIcTB1FVMuwoijZ26xex5MQ==", - "dev": true, - "requires": { - "got": "^9.6.0", - "registry-auth-token": "^4.0.0", - "registry-url": "^5.0.0", - "semver": "^6.2.0" - }, - "dependencies": { - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - } + "engines": { + "node": ">=6" } }, - "pacote": { - "version": "9.5.12", - "resolved": "https://registry.npmjs.org/pacote/-/pacote-9.5.12.tgz", - "integrity": "sha512-BUIj/4kKbwWg4RtnBncXPJd15piFSVNpTzY0rysSr3VnMowTYgkGKcaHrbReepAkjTr8lH2CVWRi58Spg2CicQ==", + "node_modules/pacote": { + "version": "13.6.2", + "resolved": "https://registry.npmjs.org/pacote/-/pacote-13.6.2.tgz", + "integrity": "sha512-Gu8fU3GsvOPkak2CkbojR7vjs3k3P9cA6uazKTHdsdV0gpCEQq2opelnEv30KRQWgVzP5Vd/5umjcedma3MKtg==", "dev": true, - "requires": { - "bluebird": "^3.5.3", - "cacache": "^12.0.2", - "chownr": "^1.1.2", - "figgy-pudding": "^3.5.1", - "get-stream": "^4.1.0", - "glob": "^7.1.3", + "dependencies": { + "@npmcli/git": "^3.0.0", + "@npmcli/installed-package-contents": "^1.0.7", + "@npmcli/promise-spawn": "^3.0.0", + "@npmcli/run-script": "^4.1.0", + "cacache": "^16.0.0", + "chownr": "^2.0.0", + "fs-minipass": "^2.1.0", "infer-owner": "^1.0.4", - "lru-cache": "^5.1.1", - "make-fetch-happen": "^5.0.0", - "minimatch": "^3.0.4", - "minipass": "^2.3.5", - "mississippi": "^3.0.0", - "mkdirp": "^0.5.1", - "normalize-package-data": "^2.4.0", - "npm-normalize-package-bin": "^1.0.0", - "npm-package-arg": "^6.1.0", - "npm-packlist": "^1.1.12", - "npm-pick-manifest": "^3.0.0", - "npm-registry-fetch": "^4.0.0", - "osenv": "^0.1.5", - "promise-inflight": "^1.0.1", - "promise-retry": "^1.1.1", - "protoduck": "^5.0.1", - "rimraf": "^2.6.2", - "safe-buffer": "^5.1.2", - "semver": "^5.6.0", - "ssri": "^6.0.1", - "tar": "^4.4.10", - "unique-filename": "^1.1.1", - "which": "^1.3.1" - }, - "dependencies": { - "cacache": { - "version": "12.0.4", - "resolved": "https://registry.npmjs.org/cacache/-/cacache-12.0.4.tgz", - "integrity": "sha512-a0tMB40oefvuInr4Cwb3GerbL9xTj1D5yg0T5xrjGCGyfvbxseIXX7BAO/u/hIXdafzOI5JC3wDwHyf24buOAQ==", - "dev": true, - "requires": { - "bluebird": "^3.5.5", - "chownr": "^1.1.1", - "figgy-pudding": "^3.5.1", - "glob": "^7.1.4", - "graceful-fs": "^4.1.15", - "infer-owner": "^1.0.3", - "lru-cache": "^5.1.1", - "mississippi": "^3.0.0", - "mkdirp": "^0.5.1", - "move-concurrently": "^1.0.1", - "promise-inflight": "^1.0.1", - "rimraf": "^2.6.3", - "ssri": "^6.0.1", - "unique-filename": "^1.1.1", - "y18n": "^4.0.0" - } - }, - "fs-minipass": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-1.2.7.tgz", - "integrity": "sha512-GWSSJGFy4e9GUeCcbIkED+bgAoFyj7XF1mV8rma3QW4NIqX9Kyx79N/PF61H5udOV3aY1IaMLs6pGbH71nlCTA==", - "dev": true, - "requires": { - "minipass": "^2.6.0" - } - }, - "hosted-git-info": { - "version": "2.8.9", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz", - "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==", - "dev": true - }, - "minipass": { - "version": "2.9.0", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-2.9.0.tgz", - "integrity": "sha512-wxfUjg9WebH+CUDX/CdbRlh5SmfZiy/hpkxaRI16Y9W56Pa75sWgd/rvFilSgrauD9NyFymP/+JFV3KwzIsJeg==", - "dev": true, - "requires": { - "safe-buffer": "^5.1.2", - "yallist": "^3.0.0" - } - }, - "minizlib": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-1.3.3.tgz", - "integrity": "sha512-6ZYMOEnmVsdCeTJVE0W9ZD+pVnE8h9Hma/iOwwRDsdQoePpoX56/8B6z3P9VNwppJuBKNRuFDRNRqRWexT9G9Q==", - "dev": true, - "requires": { - "minipass": "^2.9.0" - } - }, - "npm-package-arg": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-6.1.1.tgz", - "integrity": "sha512-qBpssaL3IOZWi5vEKUKW0cO7kzLeT+EQO9W8RsLOZf76KF9E/K9+wH0C7t06HXPpaH8WH5xF1MExLuCwbTqRUg==", - "dev": true, - "requires": { - "hosted-git-info": "^2.7.1", - "osenv": "^0.1.5", - "semver": "^5.6.0", - "validate-npm-package-name": "^3.0.0" - } - }, - "npm-pick-manifest": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/npm-pick-manifest/-/npm-pick-manifest-3.0.2.tgz", - "integrity": "sha512-wNprTNg+X5nf+tDi+hbjdHhM4bX+mKqv6XmPh7B5eG+QY9VARfQPfCEH013H5GqfNj6ee8Ij2fg8yk0mzps1Vw==", - "dev": true, - "requires": { - "figgy-pudding": "^3.5.1", - "npm-package-arg": "^6.0.0", - "semver": "^5.4.1" - } - }, - "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" - } - }, - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "dev": true - }, - "ssri": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/ssri/-/ssri-6.0.2.tgz", - "integrity": "sha512-cepbSq/neFK7xB6A50KHN0xHDotYzq58wWCa5LeWqnPrHG8GzfEjO/4O8kpmcGW+oaxkvhEJCWgbgNk4/ZV93Q==", - "dev": true, - "requires": { - "figgy-pudding": "^3.5.1" - } - }, - "tar": { - "version": "4.4.19", - "resolved": "https://registry.npmjs.org/tar/-/tar-4.4.19.tgz", - "integrity": "sha512-a20gEsvHnWe0ygBY8JbxoM4w3SJdhc7ZAuxkLqh+nvNQN2IOt0B5lLgM490X5Hl8FF0dl0tOf2ewFYAlIFgzVA==", - "dev": true, - "requires": { - "chownr": "^1.1.4", - "fs-minipass": "^1.2.7", - "minipass": "^2.9.0", - "minizlib": "^1.3.3", - "mkdirp": "^0.5.5", - "safe-buffer": "^5.2.1", - "yallist": "^3.1.1" - } - }, - "y18n": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz", - "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==", - "dev": true - } + "minipass": "^3.1.6", + "mkdirp": "^1.0.4", + "npm-package-arg": "^9.0.0", + "npm-packlist": "^5.1.0", + "npm-pick-manifest": "^7.0.0", + "npm-registry-fetch": "^13.0.1", + "proc-log": "^2.0.0", + "promise-retry": "^2.0.1", + "read-package-json": "^5.0.0", + "read-package-json-fast": "^2.0.3", + "rimraf": "^3.0.2", + "ssri": "^9.0.0", + "tar": "^6.1.11" + }, + "bin": { + "pacote": "lib/bin.js" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "pako": { + "node_modules/pako": { "version": "1.0.11", "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz", - "integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==", - "dev": true + "integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==" }, - "parallel-transform": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/parallel-transform/-/parallel-transform-1.2.0.tgz", - "integrity": "sha512-P2vSmIu38uIlvdcU7fDkyrxj33gTUy/ABO5ZUbGowxNCopBq/OoD42bP4UmMrJoPyk4Uqf0mu3mtWBhHCZD8yg==", - "dev": true, - "requires": { - "cyclist": "^1.0.1", - "inherits": "^2.0.3", - "readable-stream": "^2.1.5" + "node_modules/parent-module": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", + "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", + "dependencies": { + "callsites": "^3.0.0" + }, + "engines": { + "node": ">=6" } }, - "parse-asn1": { - "version": "5.1.6", - "resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.6.tgz", - "integrity": "sha512-RnZRo1EPU6JBnra2vGHj0yhp6ebyjBZpmUCLHWiFhxlzvBCCpAuZ7elsBp1PVAbQN0/04VD/19rfzlBSwLstMw==", - "dev": true, - "requires": { - "asn1.js": "^5.2.0", - "browserify-aes": "^1.0.0", - "evp_bytestokey": "^1.0.0", - "pbkdf2": "^3.0.3", - "safe-buffer": "^5.1.1" + "node_modules/parse-json": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", + "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", + "dependencies": { + "@babel/code-frame": "^7.0.0", + "error-ex": "^1.3.1", + "json-parse-even-better-errors": "^2.3.0", + "lines-and-columns": "^1.1.6" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "parse-json": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", - "integrity": "sha512-aOIos8bujGN93/8Ox/jPLh7RwVnPEysynVFE+fQZyg6jKELEHwzgKdLRFHUgXJL6kylijVSBC4BvN9OmsB48Rw==", - "dev": true, - "requires": { - "error-ex": "^1.3.1", - "json-parse-better-errors": "^1.0.1" + "node_modules/parse-node-version": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parse-node-version/-/parse-node-version-1.0.1.tgz", + "integrity": "sha512-3YHlOa/JgH6Mnpr05jP9eDG254US9ek25LyIxZlDItp2iJtwyaXQb57lBYLdT3MowkUFYEV2XXNAYIPlESvJlA==", + "engines": { + "node": ">= 0.10" } }, - "parse5": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/parse5/-/parse5-4.0.0.tgz", - "integrity": "sha512-VrZ7eOd3T1Fk4XWNXMgiGBK/z0MG48BWG2uQNU4I72fkQuKUTZpl+u9k+CxEG0twMVzSmXEEz12z5Fnw1jIQFA==", - "dev": true + "node_modules/parse5": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-5.1.1.tgz", + "integrity": "sha512-ugq4DFI0Ptb+WWjAdOK16+u/nHfiIrcE+sh8kZMaM0WllQKLI9rOUq6c2b7cwPkXdzfQESqvoqK6ug7U/Yyzug==", + "optional": true }, - "parseqs": { - "version": "0.0.6", - "resolved": "https://registry.npmjs.org/parseqs/-/parseqs-0.0.6.tgz", - "integrity": "sha512-jeAGzMDbfSHHA091hr0r31eYfTig+29g3GKKE/PPbEQ65X0lmMwlEoqmhzu0iztID5uJpZsFlUPDP8ThPL7M8w==", - "dev": true + "node_modules/parse5-html-rewriting-stream": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/parse5-html-rewriting-stream/-/parse5-html-rewriting-stream-6.0.1.tgz", + "integrity": "sha512-vwLQzynJVEfUlURxgnf51yAJDQTtVpNyGD8tKi2Za7m+akukNHxCcUQMAa/mUGLhCeicFdpy7Tlvj8ZNKadprg==", + "dependencies": { + "parse5": "^6.0.1", + "parse5-sax-parser": "^6.0.1" + } }, - "parseuri": { - "version": "0.0.6", - "resolved": "https://registry.npmjs.org/parseuri/-/parseuri-0.0.6.tgz", - "integrity": "sha512-AUjen8sAkGgao7UyCX6Ahv0gIK2fABKmYjvP4xmy5JaKvcbTRueIqIPHLAfq30xJddqSE033IOMUSOMCcK3Sow==", - "dev": true + "node_modules/parse5-html-rewriting-stream/node_modules/parse5": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", + "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==" }, - "parseurl": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", - "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==", - "dev": true + "node_modules/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==", + "dependencies": { + "parse5": "^6.0.1" + } }, - "pascalcase": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/pascalcase/-/pascalcase-0.1.1.tgz", - "integrity": "sha512-XHXfu/yOQRy9vYOtUDVMN60OEJjW013GoObG1o+xwQTpB9eYJX/BjXMsdW13ZDPruFhYYn0AG22w0xgQMwl3Nw==", - "dev": true + "node_modules/parse5-htmlparser2-tree-adapter/node_modules/parse5": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", + "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==" }, - "path-browserify": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-0.0.1.tgz", - "integrity": "sha512-BapA40NHICOS+USX9SN4tyhq+A2RrN/Ws5F0Z5aMHDp98Fl86lX8Oti8B7uN93L4Ifv4fHOEA+pQw87gmMO/lQ==", - "dev": true + "node_modules/parse5-sax-parser": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/parse5-sax-parser/-/parse5-sax-parser-6.0.1.tgz", + "integrity": "sha512-kXX+5S81lgESA0LsDuGjAlBybImAChYRMT+/uKCEXFBFOeEhS52qUCydGhU3qLRD8D9DVjaUo821WK7DM4iCeg==", + "dependencies": { + "parse5": "^6.0.1" + } }, - "path-dirname": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/path-dirname/-/path-dirname-1.0.2.tgz", - "integrity": "sha512-ALzNPpyNq9AqXMBjeymIjFDAkAFH06mHJH/cSBHAgU0s4vfpBn6b2nf8tiRLvagKD8RbTpq2FKTBg7cl9l3c7Q==", - "dev": true + "node_modules/parse5-sax-parser/node_modules/parse5": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", + "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==" + }, + "node_modules/parseurl": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", + "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==", + "engines": { + "node": ">= 0.8" + } }, - "path-exists": { + "node_modules/path-exists": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "dev": true + "engines": { + "node": ">=8" + } }, - "path-is-absolute": { + "node_modules/path-is-absolute": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", - "dev": true - }, - "path-is-inside": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/path-is-inside/-/path-is-inside-1.0.2.tgz", - "integrity": "sha512-DUWJr3+ULp4zXmol/SZkFf3JGsS9/SIv+Y3Rt93/UjPpDpklB5f1er4O3POIbUuUJ3FXgqte2Q7SrU6zAqwk8w==", - "dev": true + "engines": { + "node": ">=0.10.0" + } }, - "path-key": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", - "integrity": "sha512-fEHGKCSmUSDPv4uoj8AlD+joPlq3peND+HRYyxFz4KPw4z926S/b8rIuFs2FYJg3BwsxJf6A9/3eIdLaYC+9Dw==", - "dev": true + "node_modules/path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "engines": { + "node": ">=8" + } }, - "path-parse": { + "node_modules/path-parse": { "version": "1.0.7", "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", - "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", - "dev": true + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==" }, - "path-to-regexp": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", - "integrity": "sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ==", - "dev": true + "node_modules/path-to-regexp": { + "version": "0.1.12", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.12.tgz", + "integrity": "sha512-RA1GjUVMnvYFxuqovrEqZoxxW5NUZqbwKtYz/Tt7nXerk0LbLblQmrsgdeOxV5SFHf0UDggjS/bSeOZwt1pmEQ==" }, - "path-type": { + "node_modules/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 - }, - "pbkdf2": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.1.2.tgz", - "integrity": "sha512-iuh7L6jA7JEGu2WxDwtQP1ddOpaJNC4KlDEFfdQajSGgGPNi4OyDc2R7QnbY2bR9QjBVGwgvTdNJZoE7RaxUMA==", - "dev": true, - "requires": { - "create-hash": "^1.1.2", - "create-hmac": "^1.1.4", - "ripemd160": "^2.0.1", - "safe-buffer": "^5.0.1", - "sha.js": "^2.4.8" + "engines": { + "node": ">=8" } }, - "performance-now": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", - "integrity": "sha512-7EAHlyLHI56VEIdK57uwHdHKIaAGbnXPiw0yWbarQZOKaKpvUIgW0jWRVLiatnM+XXlSwsanIBH/hzGMJulMow==", - "dev": true - }, - "picocolors": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", - "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==", - "dev": true - }, - "picomatch": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", - "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", - "dev": true - }, - "pidtree": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/pidtree/-/pidtree-0.3.1.tgz", - "integrity": "sha512-qQbW94hLHEqCg7nhby4yRC7G2+jYHY4Rguc2bjw7Uug4GIJuu1tvf2uHaZv5Q8zdt+WKJ6qK1FOI6amaWUo5FA==", - "dev": true + "node_modules/picocolors": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz", + "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==" }, - "pify": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", - "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", - "dev": true + "node_modules/picomatch": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.2.tgz", + "integrity": "sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg==", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } }, - "pinkie": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz", - "integrity": "sha512-MnUuEycAemtSaeFSjXKW/aroV7akBbY+Sv+RkyqFjgAe73F+MR0TBWKBRDkmfWq/HiFmdavfZ1G7h4SPZXaCSg==", - "dev": true + "node_modules/pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==", + "engines": { + "node": ">=0.10.0" + } }, - "pinkie-promise": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", - "integrity": "sha512-0Gni6D4UcLTbv9c57DfxDGdr41XfgUjqWZu492f0cIGr16zDU06BWP/RAEvOuo7CQ0CNjHaLlM59YJJFm3NWlw==", - "dev": true, - "requires": { - "pinkie": "^2.0.0" + "node_modules/piscina": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/piscina/-/piscina-3.2.0.tgz", + "integrity": "sha512-yn/jMdHRw+q2ZJhFhyqsmANcbF6V2QwmD84c6xRau+QpQOmtrBCoRGdvTfeuFDYXB5W2m6MfLkjkvQa9lUSmIA==", + "dependencies": { + "eventemitter-asyncresource": "^1.0.0", + "hdr-histogram-js": "^2.0.1", + "hdr-histogram-percentiles-obj": "^3.0.0" + }, + "optionalDependencies": { + "nice-napi": "^1.0.2" } }, - "pkg-dir": { + "node_modules/pkg-dir": { "version": "4.2.0", "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", - "dev": true, - "requires": { + "dependencies": { "find-up": "^4.0.0" + }, + "engines": { + "node": ">=8" } }, - "portfinder": { - "version": "1.0.32", - "resolved": "https://registry.npmjs.org/portfinder/-/portfinder-1.0.32.tgz", - "integrity": "sha512-on2ZJVVDXRADWE6jnQaX0ioEylzgBpQk8r55NE4wjXW1ZxO+BgDlY6DXwj20i0V8eB4SenDQ00WEaxfiIQPcxg==", - "dev": true, - "requires": { - "async": "^2.6.4", - "debug": "^3.2.7", - "mkdirp": "^0.5.6" - }, - "dependencies": { - "debug": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } + "node_modules/postcss": { + "version": "8.4.31", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.31.tgz", + "integrity": "sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/postcss" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" } + ], + "dependencies": { + "nanoid": "^3.3.6", + "picocolors": "^1.0.0", + "source-map-js": "^1.0.2" + }, + "engines": { + "node": "^10 || ^12 || >=14" } }, - "posix-character-classes": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/posix-character-classes/-/posix-character-classes-0.1.1.tgz", - "integrity": "sha512-xTgYBc3fuo7Yt7JbiuFxSYGToMoz8fLoE6TC9Wx1P/u+LfeThMOAqmuyECnlBaaJb+u1m9hHiXUEtwW4OzfUJg==", - "dev": true - }, - "postcss": { - "version": "7.0.27", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.27.tgz", - "integrity": "sha512-WuQETPMcW9Uf1/22HWUWP9lgsIC+KEHg2kozMflKjbeUtw9ujvFX6QmIfozaErDkmLWS9WEnEdEe6Uo9/BNTdQ==", - "dev": true, - "requires": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - }, + "node_modules/postcss-attribute-case-insensitive": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/postcss-attribute-case-insensitive/-/postcss-attribute-case-insensitive-5.0.2.tgz", + "integrity": "sha512-XIidXV8fDr0kKt28vqki84fRK8VW8eTuIa4PChv2MqKuT6C9UjmSKzen6KaWhWEoYvwxFCa7n/tC1SZ3tyq4SQ==", "dependencies": { - "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 - }, - "supports-color": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", - "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - } + "postcss-selector-parser": "^6.0.10" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.2" } }, - "postcss-calc": { - "version": "7.0.5", - "resolved": "https://registry.npmjs.org/postcss-calc/-/postcss-calc-7.0.5.tgz", - "integrity": "sha512-1tKHutbGtLtEZF6PT4JSihCHfIVldU72mZ8SdZHIYriIZ9fh9k9aWSppaT8rHsyI3dX+KSR+W+Ix9BMY3AODrg==", - "dev": true, - "requires": { - "postcss": "^7.0.27", - "postcss-selector-parser": "^6.0.2", - "postcss-value-parser": "^4.0.2" + "node_modules/postcss-attribute-case-insensitive/node_modules/postcss-selector-parser": { + "version": "6.1.2", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.1.2.tgz", + "integrity": "sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg==", + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" } }, - "postcss-colormin": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/postcss-colormin/-/postcss-colormin-4.0.3.tgz", - "integrity": "sha512-WyQFAdDZpExQh32j0U0feWisZ0dmOtPl44qYmJKkq9xFWY3p+4qnRzCHeNrkeRhwPHz9bQ3mo0/yVkaply0MNw==", - "dev": true, - "requires": { - "browserslist": "^4.0.0", - "color": "^3.0.0", - "has": "^1.0.0", - "postcss": "^7.0.0", - "postcss-value-parser": "^3.0.0" - }, - "dependencies": { - "postcss-value-parser": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", - "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", - "dev": true - } + "node_modules/postcss-clamp": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/postcss-clamp/-/postcss-clamp-4.1.0.tgz", + "integrity": "sha512-ry4b1Llo/9zz+PKC+030KUnPITTJAHeOwjfAyyB60eT0AorGLdzp52s31OsPRHRf8NchkgFoG2y6fCfn1IV1Ow==", + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": ">=7.6.0" + }, + "peerDependencies": { + "postcss": "^8.4.6" } }, - "postcss-convert-values": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/postcss-convert-values/-/postcss-convert-values-4.0.1.tgz", - "integrity": "sha512-Kisdo1y77KUC0Jmn0OXU/COOJbzM8cImvw1ZFsBgBgMgb1iL23Zs/LXRe3r+EZqM3vGYKdQ2YJVQ5VkJI+zEJQ==", - "dev": true, - "requires": { - "postcss": "^7.0.0", - "postcss-value-parser": "^3.0.0" + "node_modules/postcss-color-functional-notation": { + "version": "4.2.4", + "resolved": "https://registry.npmjs.org/postcss-color-functional-notation/-/postcss-color-functional-notation-4.2.4.tgz", + "integrity": "sha512-2yrTAUZUab9s6CpxkxC4rVgFEVaR6/2Pipvi6qcgvnYiVqZcbDHEoBDhrXzyb7Efh2CCfHQNtcqWcIruDTIUeg==", + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^12 || ^14 || >=16" }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.2" + } + }, + "node_modules/postcss-color-hex-alpha": { + "version": "8.0.4", + "resolved": "https://registry.npmjs.org/postcss-color-hex-alpha/-/postcss-color-hex-alpha-8.0.4.tgz", + "integrity": "sha512-nLo2DCRC9eE4w2JmuKgVA3fGL3d01kGq752pVALF68qpGLmx2Qrk91QTKkdUqqp45T1K1XV8IhQpcu1hoAQflQ==", "dependencies": { - "postcss-value-parser": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", - "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", - "dev": true - } + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.4" } }, - "postcss-discard-comments": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/postcss-discard-comments/-/postcss-discard-comments-4.0.2.tgz", - "integrity": "sha512-RJutN259iuRf3IW7GZyLM5Sw4GLTOH8FmsXBnv8Ab/Tc2k4SR4qbV4DNbyyY4+Sjo362SyDmW2DQ7lBSChrpkg==", - "dev": true, - "requires": { - "postcss": "^7.0.0" + "node_modules/postcss-color-rebeccapurple": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/postcss-color-rebeccapurple/-/postcss-color-rebeccapurple-7.1.1.tgz", + "integrity": "sha512-pGxkuVEInwLHgkNxUc4sdg4g3py7zUeCQ9sMfwyHAT+Ezk8a4OaaVZ8lIY5+oNqA/BXXgLyXv0+5wHP68R79hg==", + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.2" } }, - "postcss-discard-duplicates": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/postcss-discard-duplicates/-/postcss-discard-duplicates-4.0.2.tgz", - "integrity": "sha512-ZNQfR1gPNAiXZhgENFfEglF93pciw0WxMkJeVmw8eF+JZBbMD7jp6C67GqJAXVZP2BWbOztKfbsdmMp/k8c6oQ==", - "dev": true, - "requires": { - "postcss": "^7.0.0" + "node_modules/postcss-custom-media": { + "version": "8.0.2", + "resolved": "https://registry.npmjs.org/postcss-custom-media/-/postcss-custom-media-8.0.2.tgz", + "integrity": "sha512-7yi25vDAoHAkbhAzX9dHx2yc6ntS4jQvejrNcC+csQJAXjj15e7VcWfMgLqBNAbOvqi5uIa9huOVwdHbf+sKqg==", + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.3" } }, - "postcss-discard-empty": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/postcss-discard-empty/-/postcss-discard-empty-4.0.1.tgz", - "integrity": "sha512-B9miTzbznhDjTfjvipfHoqbWKwd0Mj+/fL5s1QOz06wufguil+Xheo4XpOnc4NqKYBCNqqEzgPv2aPBIJLox0w==", - "dev": true, - "requires": { - "postcss": "^7.0.0" + "node_modules/postcss-custom-properties": { + "version": "12.1.11", + "resolved": "https://registry.npmjs.org/postcss-custom-properties/-/postcss-custom-properties-12.1.11.tgz", + "integrity": "sha512-0IDJYhgU8xDv1KY6+VgUwuQkVtmYzRwu+dMjnmdMafXYv86SWqfxkc7qdDvWS38vsjaEtv8e0vGOUQrAiMBLpQ==", + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.2" } }, - "postcss-discard-overridden": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/postcss-discard-overridden/-/postcss-discard-overridden-4.0.1.tgz", - "integrity": "sha512-IYY2bEDD7g1XM1IDEsUT4//iEYCxAmP5oDSFMVU/JVvT7gh+l4fmjciLqGgwjdWpQIdb0Che2VX00QObS5+cTg==", - "dev": true, - "requires": { - "postcss": "^7.0.0" + "node_modules/postcss-custom-selectors": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/postcss-custom-selectors/-/postcss-custom-selectors-6.0.3.tgz", + "integrity": "sha512-fgVkmyiWDwmD3JbpCmB45SvvlCD6z9CG6Ie6Iere22W5aHea6oWa7EM2bpnv2Fj3I94L3VbtvX9KqwSi5aFzSg==", + "dependencies": { + "postcss-selector-parser": "^6.0.4" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.3" } }, - "postcss-import": { - "version": "12.0.1", - "resolved": "https://registry.npmjs.org/postcss-import/-/postcss-import-12.0.1.tgz", - "integrity": "sha512-3Gti33dmCjyKBgimqGxL3vcV8w9+bsHwO5UrBawp796+jdardbcFl4RP5w/76BwNL7aGzpKstIfF9I+kdE8pTw==", - "dev": true, - "requires": { - "postcss": "^7.0.1", - "postcss-value-parser": "^3.2.3", - "read-cache": "^1.0.0", - "resolve": "^1.1.7" + "node_modules/postcss-custom-selectors/node_modules/postcss-selector-parser": { + "version": "6.1.2", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.1.2.tgz", + "integrity": "sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg==", + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-dir-pseudo-class": { + "version": "6.0.5", + "resolved": "https://registry.npmjs.org/postcss-dir-pseudo-class/-/postcss-dir-pseudo-class-6.0.5.tgz", + "integrity": "sha512-eqn4m70P031PF7ZQIvSgy9RSJ5uI2171O/OO/zcRNYpJbvaeKFUlar1aJ7rmgiQtbm0FSPsRewjpdS0Oew7MPA==", "dependencies": { - "postcss-value-parser": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", - "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", - "dev": true - } + "postcss-selector-parser": "^6.0.10" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.2" } }, - "postcss-load-config": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/postcss-load-config/-/postcss-load-config-2.1.2.tgz", - "integrity": "sha512-/rDeGV6vMUo3mwJZmeHfEDvwnTKKqQ0S7OHUi/kJvvtx3aWtyWG2/0ZWnzCt2keEclwN6Tf0DST2v9kITdOKYw==", - "dev": true, - "requires": { - "cosmiconfig": "^5.0.0", - "import-cwd": "^2.0.0" + "node_modules/postcss-dir-pseudo-class/node_modules/postcss-selector-parser": { + "version": "6.1.2", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.1.2.tgz", + "integrity": "sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg==", + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" } }, - "postcss-loader": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/postcss-loader/-/postcss-loader-3.0.0.tgz", - "integrity": "sha512-cLWoDEY5OwHcAjDnkyRQzAXfs2jrKjXpO/HQFcc5b5u/r7aa471wdmChmwfnv7x2u840iat/wi0lQ5nbRgSkUA==", - "dev": true, - "requires": { - "loader-utils": "^1.1.0", - "postcss": "^7.0.0", - "postcss-load-config": "^2.0.0", - "schema-utils": "^1.0.0" - }, - "dependencies": { - "json5": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz", - "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==", - "dev": true, - "requires": { - "minimist": "^1.2.0" - } - }, - "loader-utils": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.2.tgz", - "integrity": "sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==", - "dev": true, - "requires": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^1.0.1" - } - }, - "schema-utils": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-1.0.0.tgz", - "integrity": "sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g==", - "dev": true, - "requires": { - "ajv": "^6.1.0", - "ajv-errors": "^1.0.0", - "ajv-keywords": "^3.1.0" - } - } + "node_modules/postcss-double-position-gradients": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/postcss-double-position-gradients/-/postcss-double-position-gradients-3.1.2.tgz", + "integrity": "sha512-GX+FuE/uBR6eskOK+4vkXgT6pDkexLokPaz/AbJna9s5Kzp/yl488pKPjhy0obB475ovfT1Wv8ho7U/cHNaRgQ==", + "dependencies": { + "@csstools/postcss-progressive-custom-properties": "^1.1.0", + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.2" } }, - "postcss-merge-longhand": { - "version": "4.0.11", - "resolved": "https://registry.npmjs.org/postcss-merge-longhand/-/postcss-merge-longhand-4.0.11.tgz", - "integrity": "sha512-alx/zmoeXvJjp7L4mxEMjh8lxVlDFX1gqWHzaaQewwMZiVhLo42TEClKaeHbRf6J7j82ZOdTJ808RtN0ZOZwvw==", - "dev": true, - "requires": { - "css-color-names": "0.0.4", - "postcss": "^7.0.0", - "postcss-value-parser": "^3.0.0", - "stylehacks": "^4.0.0" - }, - "dependencies": { - "postcss-value-parser": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", - "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", - "dev": true - } + "node_modules/postcss-env-function": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/postcss-env-function/-/postcss-env-function-4.0.6.tgz", + "integrity": "sha512-kpA6FsLra+NqcFnL81TnsU+Z7orGtDTxcOhl6pwXeEq1yFPpRMkCDpHhrz8CFQDr/Wfm0jLiNQ1OsGGPjlqPwA==", + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "peerDependencies": { + "postcss": "^8.4" } }, - "postcss-merge-rules": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/postcss-merge-rules/-/postcss-merge-rules-4.0.3.tgz", - "integrity": "sha512-U7e3r1SbvYzO0Jr3UT/zKBVgYYyhAz0aitvGIYOYK5CPmkNih+WDSsS5tvPrJ8YMQYlEMvsZIiqmn7HdFUaeEQ==", - "dev": true, - "requires": { - "browserslist": "^4.0.0", - "caniuse-api": "^3.0.0", - "cssnano-util-same-parent": "^4.0.0", - "postcss": "^7.0.0", - "postcss-selector-parser": "^3.0.0", - "vendors": "^1.0.0" - }, - "dependencies": { - "postcss-selector-parser": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-3.1.2.tgz", - "integrity": "sha512-h7fJ/5uWuRVyOtkO45pnt1Ih40CEleeyCHzipqAZO2e5H20g25Y48uYnFUiShvY4rZWNJ/Bib/KVPmanaCtOhA==", - "dev": true, - "requires": { - "dot-prop": "^5.2.0", - "indexes-of": "^1.0.1", - "uniq": "^1.0.1" - } - } + "node_modules/postcss-focus-visible": { + "version": "6.0.4", + "resolved": "https://registry.npmjs.org/postcss-focus-visible/-/postcss-focus-visible-6.0.4.tgz", + "integrity": "sha512-QcKuUU/dgNsstIK6HELFRT5Y3lbrMLEOwG+A4s5cA+fx3A3y/JTq3X9LaOj3OC3ALH0XqyrgQIgey/MIZ8Wczw==", + "dependencies": { + "postcss-selector-parser": "^6.0.9" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "peerDependencies": { + "postcss": "^8.4" } }, - "postcss-minify-font-values": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/postcss-minify-font-values/-/postcss-minify-font-values-4.0.2.tgz", - "integrity": "sha512-j85oO6OnRU9zPf04+PZv1LYIYOprWm6IA6zkXkrJXyRveDEuQggG6tvoy8ir8ZwjLxLuGfNkCZEQG7zan+Hbtg==", - "dev": true, - "requires": { - "postcss": "^7.0.0", - "postcss-value-parser": "^3.0.0" + "node_modules/postcss-focus-visible/node_modules/postcss-selector-parser": { + "version": "6.1.2", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.1.2.tgz", + "integrity": "sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg==", + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-focus-within": { + "version": "5.0.4", + "resolved": "https://registry.npmjs.org/postcss-focus-within/-/postcss-focus-within-5.0.4.tgz", + "integrity": "sha512-vvjDN++C0mu8jz4af5d52CB184ogg/sSxAFS+oUJQq2SuCe7T5U2iIsVJtsCp2d6R4j0jr5+q3rPkBVZkXD9fQ==", "dependencies": { - "postcss-value-parser": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", - "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", - "dev": true - } + "postcss-selector-parser": "^6.0.9" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "peerDependencies": { + "postcss": "^8.4" } }, - "postcss-minify-gradients": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/postcss-minify-gradients/-/postcss-minify-gradients-4.0.2.tgz", - "integrity": "sha512-qKPfwlONdcf/AndP1U8SJ/uzIJtowHlMaSioKzebAXSG4iJthlWC9iSWznQcX4f66gIWX44RSA841HTHj3wK+Q==", - "dev": true, - "requires": { - "cssnano-util-get-arguments": "^4.0.0", - "is-color-stop": "^1.0.0", - "postcss": "^7.0.0", - "postcss-value-parser": "^3.0.0" - }, - "dependencies": { - "postcss-value-parser": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", - "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", - "dev": true - } + "node_modules/postcss-focus-within/node_modules/postcss-selector-parser": { + "version": "6.1.2", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.1.2.tgz", + "integrity": "sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg==", + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" } }, - "postcss-minify-params": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/postcss-minify-params/-/postcss-minify-params-4.0.2.tgz", - "integrity": "sha512-G7eWyzEx0xL4/wiBBJxJOz48zAKV2WG3iZOqVhPet/9geefm/Px5uo1fzlHu+DOjT+m0Mmiz3jkQzVHe6wxAWg==", - "dev": true, - "requires": { - "alphanum-sort": "^1.0.0", - "browserslist": "^4.0.0", - "cssnano-util-get-arguments": "^4.0.0", - "postcss": "^7.0.0", - "postcss-value-parser": "^3.0.0", - "uniqs": "^2.0.0" - }, - "dependencies": { - "postcss-value-parser": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", - "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", - "dev": true - } + "node_modules/postcss-font-variant": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/postcss-font-variant/-/postcss-font-variant-5.0.0.tgz", + "integrity": "sha512-1fmkBaCALD72CK2a9i468mA/+tr9/1cBxRRMXOUaZqO43oWPR5imcyPjXwuv7PXbCid4ndlP5zWhidQVVa3hmA==", + "peerDependencies": { + "postcss": "^8.1.0" } }, - "postcss-minify-selectors": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/postcss-minify-selectors/-/postcss-minify-selectors-4.0.2.tgz", - "integrity": "sha512-D5S1iViljXBj9kflQo4YutWnJmwm8VvIsU1GeXJGiG9j8CIg9zs4voPMdQDUmIxetUOh60VilsNzCiAFTOqu3g==", - "dev": true, - "requires": { - "alphanum-sort": "^1.0.0", - "has": "^1.0.0", - "postcss": "^7.0.0", - "postcss-selector-parser": "^3.0.0" - }, - "dependencies": { - "postcss-selector-parser": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-3.1.2.tgz", - "integrity": "sha512-h7fJ/5uWuRVyOtkO45pnt1Ih40CEleeyCHzipqAZO2e5H20g25Y48uYnFUiShvY4rZWNJ/Bib/KVPmanaCtOhA==", - "dev": true, - "requires": { - "dot-prop": "^5.2.0", - "indexes-of": "^1.0.1", - "uniq": "^1.0.1" - } - } + "node_modules/postcss-gap-properties": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/postcss-gap-properties/-/postcss-gap-properties-3.0.5.tgz", + "integrity": "sha512-IuE6gKSdoUNcvkGIqdtjtcMtZIFyXZhmFd5RUlg97iVEvp1BZKV5ngsAjCjrVy+14uhGBQl9tzmi1Qwq4kqVOg==", + "engines": { + "node": "^12 || ^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.2" } }, - "postcss-modules-extract-imports": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/postcss-modules-extract-imports/-/postcss-modules-extract-imports-2.0.0.tgz", - "integrity": "sha512-LaYLDNS4SG8Q5WAWqIJgdHPJrDDr/Lv775rMBFUbgjTz6j34lUznACHcdRWroPvXANP2Vj7yNK57vp9eFqzLWQ==", - "dev": true, - "requires": { - "postcss": "^7.0.5" + "node_modules/postcss-image-set-function": { + "version": "4.0.7", + "resolved": "https://registry.npmjs.org/postcss-image-set-function/-/postcss-image-set-function-4.0.7.tgz", + "integrity": "sha512-9T2r9rsvYzm5ndsBE8WgtrMlIT7VbtTfE7b3BQnudUqnBcBo7L758oc+o+pdj/dUV0l5wjwSdjeOH2DZtfv8qw==", + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.2" } }, - "postcss-modules-local-by-default": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/postcss-modules-local-by-default/-/postcss-modules-local-by-default-3.0.3.tgz", - "integrity": "sha512-e3xDq+LotiGesympRlKNgaJ0PCzoUIdpH0dj47iWAui/kyTgh3CiAr1qP54uodmJhl6p9rN6BoNcdEDVJx9RDw==", - "dev": true, - "requires": { - "icss-utils": "^4.1.1", - "postcss": "^7.0.32", - "postcss-selector-parser": "^6.0.2", - "postcss-value-parser": "^4.1.0" + "node_modules/postcss-import": { + "version": "15.0.0", + "resolved": "https://registry.npmjs.org/postcss-import/-/postcss-import-15.0.0.tgz", + "integrity": "sha512-Y20shPQ07RitgBGv2zvkEAu9bqvrD77C9axhj/aA1BQj4czape2MdClCExvB27EwYEJdGgKZBpKanb0t1rK2Kg==", + "dependencies": { + "postcss-value-parser": "^4.0.0", + "read-cache": "^1.0.0", + "resolve": "^1.1.7" + }, + "engines": { + "node": ">=14.0.0" }, + "peerDependencies": { + "postcss": "^8.0.0" + } + }, + "node_modules/postcss-initial": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/postcss-initial/-/postcss-initial-4.0.1.tgz", + "integrity": "sha512-0ueD7rPqX8Pn1xJIjay0AZeIuDoF+V+VvMt/uOnn+4ezUKhZM/NokDeP6DwMNyIoYByuN/94IQnt5FEkaN59xQ==", + "peerDependencies": { + "postcss": "^8.0.0" + } + }, + "node_modules/postcss-lab-function": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/postcss-lab-function/-/postcss-lab-function-4.2.1.tgz", + "integrity": "sha512-xuXll4isR03CrQsmxyz92LJB2xX9n+pZJ5jE9JgcnmsCammLyKdlzrBin+25dy6wIjfhJpKBAN80gsTlCgRk2w==", "dependencies": { - "picocolors": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", - "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", - "dev": true - }, - "postcss": { - "version": "7.0.39", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", - "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", - "dev": true, - "requires": { - "picocolors": "^0.2.1", - "source-map": "^0.6.1" - } - }, - "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 - } + "@csstools/postcss-progressive-custom-properties": "^1.1.0", + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.2" } }, - "postcss-modules-scope": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/postcss-modules-scope/-/postcss-modules-scope-2.2.0.tgz", - "integrity": "sha512-YyEgsTMRpNd+HmyC7H/mh3y+MeFWevy7V1evVhJWewmMbjDHIbZbOXICC2y+m1xI1UVfIT1HMW/O04Hxyu9oXQ==", - "dev": true, - "requires": { - "postcss": "^7.0.6", - "postcss-selector-parser": "^6.0.0" + "node_modules/postcss-loader": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/postcss-loader/-/postcss-loader-7.0.1.tgz", + "integrity": "sha512-VRviFEyYlLjctSM93gAZtcJJ/iSkPZ79zWbN/1fSH+NisBByEiVLqpdVDrPLVSi8DX0oJo12kL/GppTBdKVXiQ==", + "dependencies": { + "cosmiconfig": "^7.0.0", + "klona": "^2.0.5", + "semver": "^7.3.7" + }, + "engines": { + "node": ">= 14.15.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "postcss": "^7.0.0 || ^8.0.1", + "webpack": "^5.0.0" } }, - "postcss-modules-values": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/postcss-modules-values/-/postcss-modules-values-3.0.0.tgz", - "integrity": "sha512-1//E5jCBrZ9DmRX+zCtmQtRSV6PV42Ix7Bzj9GbwJceduuf7IqP8MgeTXuRDHOWj2m0VzZD5+roFWDuU8RQjcg==", - "dev": true, - "requires": { - "icss-utils": "^4.0.0", - "postcss": "^7.0.6" + "node_modules/postcss-logical": { + "version": "5.0.4", + "resolved": "https://registry.npmjs.org/postcss-logical/-/postcss-logical-5.0.4.tgz", + "integrity": "sha512-RHXxplCeLh9VjinvMrZONq7im4wjWGlRJAqmAVLXyZaXwfDWP73/oq4NdIp+OZwhQUMj0zjqDfM5Fj7qby+B4g==", + "engines": { + "node": "^12 || ^14 || >=16" + }, + "peerDependencies": { + "postcss": "^8.4" } }, - "postcss-normalize-charset": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/postcss-normalize-charset/-/postcss-normalize-charset-4.0.1.tgz", - "integrity": "sha512-gMXCrrlWh6G27U0hF3vNvR3w8I1s2wOBILvA87iNXaPvSNo5uZAMYsZG7XjCUf1eVxuPfyL4TJ7++SGZLc9A3g==", - "dev": true, - "requires": { - "postcss": "^7.0.0" + "node_modules/postcss-media-minmax": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/postcss-media-minmax/-/postcss-media-minmax-5.0.0.tgz", + "integrity": "sha512-yDUvFf9QdFZTuCUg0g0uNSHVlJ5X1lSzDZjPSFaiCWvjgsvu8vEVxtahPrLMinIDEEGnx6cBe6iqdx5YWz08wQ==", + "engines": { + "node": ">=10.0.0" + }, + "peerDependencies": { + "postcss": "^8.1.0" } }, - "postcss-normalize-display-values": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/postcss-normalize-display-values/-/postcss-normalize-display-values-4.0.2.tgz", - "integrity": "sha512-3F2jcsaMW7+VtRMAqf/3m4cPFhPD3EFRgNs18u+k3lTJJlVe7d0YPO+bnwqo2xg8YiRpDXJI2u8A0wqJxMsQuQ==", - "dev": true, - "requires": { - "cssnano-util-get-match": "^4.0.0", - "postcss": "^7.0.0", - "postcss-value-parser": "^3.0.0" + "node_modules/postcss-modules-extract-imports": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/postcss-modules-extract-imports/-/postcss-modules-extract-imports-3.1.0.tgz", + "integrity": "sha512-k3kNe0aNFQDAZGbin48pL2VNidTF0w4/eASDsxlyspobzU3wZQLOGj7L9gfRe0Jo9/4uud09DsjFNH7winGv8Q==", + "engines": { + "node": "^10 || ^12 || >= 14" }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/postcss-modules-local-by-default": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/postcss-modules-local-by-default/-/postcss-modules-local-by-default-4.2.0.tgz", + "integrity": "sha512-5kcJm/zk+GJDSfw+V/42fJ5fhjL5YbFDl8nVdXkJPLLW+Vf9mTD5Xe0wqIaDnLuL2U6cDNpTr+UQ+v2HWIBhzw==", "dependencies": { - "postcss-value-parser": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", - "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", - "dev": true - } + "icss-utils": "^5.0.0", + "postcss-selector-parser": "^7.0.0", + "postcss-value-parser": "^4.1.0" + }, + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" } }, - "postcss-normalize-positions": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/postcss-normalize-positions/-/postcss-normalize-positions-4.0.2.tgz", - "integrity": "sha512-Dlf3/9AxpxE+NF1fJxYDeggi5WwV35MXGFnnoccP/9qDtFrTArZ0D0R+iKcg5WsUd8nUYMIl8yXDCtcrT8JrdA==", - "dev": true, - "requires": { - "cssnano-util-get-arguments": "^4.0.0", - "has": "^1.0.0", - "postcss": "^7.0.0", - "postcss-value-parser": "^3.0.0" - }, - "dependencies": { - "postcss-value-parser": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", - "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", - "dev": true - } + "node_modules/postcss-modules-scope": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/postcss-modules-scope/-/postcss-modules-scope-3.2.1.tgz", + "integrity": "sha512-m9jZstCVaqGjTAuny8MdgE88scJnCiQSlSrOWcTQgM2t32UBe+MUmFSO5t7VMSfAf/FJKImAxBav8ooCHJXCJA==", + "dependencies": { + "postcss-selector-parser": "^7.0.0" + }, + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" } }, - "postcss-normalize-repeat-style": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/postcss-normalize-repeat-style/-/postcss-normalize-repeat-style-4.0.2.tgz", - "integrity": "sha512-qvigdYYMpSuoFs3Is/f5nHdRLJN/ITA7huIoCyqqENJe9PvPmLhNLMu7QTjPdtnVf6OcYYO5SHonx4+fbJE1+Q==", - "dev": true, - "requires": { - "cssnano-util-get-arguments": "^4.0.0", - "cssnano-util-get-match": "^4.0.0", - "postcss": "^7.0.0", - "postcss-value-parser": "^3.0.0" - }, - "dependencies": { - "postcss-value-parser": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", - "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", - "dev": true - } + "node_modules/postcss-modules-values": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/postcss-modules-values/-/postcss-modules-values-4.0.0.tgz", + "integrity": "sha512-RDxHkAiEGI78gS2ofyvCsu7iycRv7oqw5xMWn9iMoR0N/7mf9D50ecQqUo5BZ9Zh2vH4bCUR/ktCqbB9m8vJjQ==", + "dependencies": { + "icss-utils": "^5.0.0" + }, + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" } }, - "postcss-normalize-string": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/postcss-normalize-string/-/postcss-normalize-string-4.0.2.tgz", - "integrity": "sha512-RrERod97Dnwqq49WNz8qo66ps0swYZDSb6rM57kN2J+aoyEAJfZ6bMx0sx/F9TIEX0xthPGCmeyiam/jXif0eA==", - "dev": true, - "requires": { - "has": "^1.0.0", - "postcss": "^7.0.0", - "postcss-value-parser": "^3.0.0" + "node_modules/postcss-nesting": { + "version": "10.2.0", + "resolved": "https://registry.npmjs.org/postcss-nesting/-/postcss-nesting-10.2.0.tgz", + "integrity": "sha512-EwMkYchxiDiKUhlJGzWsD9b2zvq/r2SSubcRrgP+jujMXFzqvANLt16lJANC+5uZ6hjI7lpRmI6O8JIl+8l1KA==", + "dependencies": { + "@csstools/selector-specificity": "^2.0.0", + "postcss-selector-parser": "^6.0.10" + }, + "engines": { + "node": "^12 || ^14 || >=16" }, - "dependencies": { - "postcss-value-parser": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", - "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", - "dev": true - } + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.2" } }, - "postcss-normalize-timing-functions": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/postcss-normalize-timing-functions/-/postcss-normalize-timing-functions-4.0.2.tgz", - "integrity": "sha512-acwJY95edP762e++00Ehq9L4sZCEcOPyaHwoaFOhIwWCDfik6YvqsYNxckee65JHLKzuNSSmAdxwD2Cud1Z54A==", - "dev": true, - "requires": { - "cssnano-util-get-match": "^4.0.0", - "postcss": "^7.0.0", - "postcss-value-parser": "^3.0.0" + "node_modules/postcss-nesting/node_modules/@csstools/selector-specificity": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@csstools/selector-specificity/-/selector-specificity-2.2.0.tgz", + "integrity": "sha512-+OJ9konv95ClSTOJCmMZqpd5+YGsB2S+x6w3E1oaM8UuR5j8nTNHYSz8c9BEPGDOCMQYIEEGlVPj/VY64iTbGw==", + "engines": { + "node": "^14 || ^16 || >=18" }, - "dependencies": { - "postcss-value-parser": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", - "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", - "dev": true - } + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss-selector-parser": "^6.0.10" } }, - "postcss-normalize-unicode": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/postcss-normalize-unicode/-/postcss-normalize-unicode-4.0.1.tgz", - "integrity": "sha512-od18Uq2wCYn+vZ/qCOeutvHjB5jm57ToxRaMeNuf0nWVHaP9Hua56QyMF6fs/4FSUnVIw0CBPsU0K4LnBPwYwg==", - "dev": true, - "requires": { - "browserslist": "^4.0.0", - "postcss": "^7.0.0", - "postcss-value-parser": "^3.0.0" - }, + "node_modules/postcss-nesting/node_modules/postcss-selector-parser": { + "version": "6.1.2", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.1.2.tgz", + "integrity": "sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg==", "dependencies": { - "postcss-value-parser": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", - "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", - "dev": true - } + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" } }, - "postcss-normalize-url": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/postcss-normalize-url/-/postcss-normalize-url-4.0.1.tgz", - "integrity": "sha512-p5oVaF4+IHwu7VpMan/SSpmpYxcJMtkGppYf0VbdH5B6hN8YNmVyJLuY9FmLQTzY3fag5ESUUHDqM+heid0UVA==", - "dev": true, - "requires": { - "is-absolute-url": "^2.0.0", - "normalize-url": "^3.0.0", - "postcss": "^7.0.0", - "postcss-value-parser": "^3.0.0" - }, - "dependencies": { - "normalize-url": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-3.3.0.tgz", - "integrity": "sha512-U+JJi7duF1o+u2pynbp2zXDW2/PADgC30f0GsHZtRh+HOcXHnw137TrNlyxxRvWW5fjKd3bcLHPxofWuCjaeZg==", - "dev": true + "node_modules/postcss-opacity-percentage": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/postcss-opacity-percentage/-/postcss-opacity-percentage-1.1.3.tgz", + "integrity": "sha512-An6Ba4pHBiDtyVpSLymUUERMo2cU7s+Obz6BTrS+gxkbnSBNKSuD0AVUc+CpBMrpVPKKfoVz0WQCX+Tnst0i4A==", + "funding": [ + { + "type": "kofi", + "url": "https://ko-fi.com/mrcgrtz" }, - "postcss-value-parser": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", - "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", - "dev": true + { + "type": "liberapay", + "url": "https://liberapay.com/mrcgrtz" } + ], + "engines": { + "node": "^12 || ^14 || >=16" + }, + "peerDependencies": { + "postcss": "^8.2" } }, - "postcss-normalize-whitespace": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/postcss-normalize-whitespace/-/postcss-normalize-whitespace-4.0.2.tgz", - "integrity": "sha512-tO8QIgrsI3p95r8fyqKV+ufKlSHh9hMJqACqbv2XknufqEDhDvbguXGBBqxw9nsQoXWf0qOqppziKJKHMD4GtA==", - "dev": true, - "requires": { - "postcss": "^7.0.0", - "postcss-value-parser": "^3.0.0" - }, + "node_modules/postcss-overflow-shorthand": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/postcss-overflow-shorthand/-/postcss-overflow-shorthand-3.0.4.tgz", + "integrity": "sha512-otYl/ylHK8Y9bcBnPLo3foYFLL6a6Ak+3EQBPOTR7luMYCOsiVTUk1iLvNf6tVPNGXcoL9Hoz37kpfriRIFb4A==", "dependencies": { - "postcss-value-parser": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", - "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", - "dev": true - } + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.2" } }, - "postcss-ordered-values": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/postcss-ordered-values/-/postcss-ordered-values-4.1.2.tgz", - "integrity": "sha512-2fCObh5UanxvSxeXrtLtlwVThBvHn6MQcu4ksNT2tsaV2Fg76R2CV98W7wNSlX+5/pFwEyaDwKLLoEV7uRybAw==", - "dev": true, - "requires": { - "cssnano-util-get-arguments": "^4.0.0", - "postcss": "^7.0.0", - "postcss-value-parser": "^3.0.0" + "node_modules/postcss-page-break": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/postcss-page-break/-/postcss-page-break-3.0.4.tgz", + "integrity": "sha512-1JGu8oCjVXLa9q9rFTo4MbeeA5FMe00/9C7lN4va606Rdb+HkxXtXsmEDrIraQ11fGz/WvKWa8gMuCKkrXpTsQ==", + "peerDependencies": { + "postcss": "^8" + } + }, + "node_modules/postcss-place": { + "version": "7.0.5", + "resolved": "https://registry.npmjs.org/postcss-place/-/postcss-place-7.0.5.tgz", + "integrity": "sha512-wR8igaZROA6Z4pv0d+bvVrvGY4GVHihBCBQieXFY3kuSuMyOmEnnfFzHl/tQuqHZkfkIVBEbDvYcFfHmpSet9g==", + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.2" + } + }, + "node_modules/postcss-preset-env": { + "version": "7.8.0", + "resolved": "https://registry.npmjs.org/postcss-preset-env/-/postcss-preset-env-7.8.0.tgz", + "integrity": "sha512-leqiqLOellpLKfbHkD06E04P6d9ZQ24mat6hu4NSqun7WG0UhspHR5Myiv/510qouCjoo4+YJtNOqg5xHaFnCA==", + "dependencies": { + "@csstools/postcss-cascade-layers": "^1.0.5", + "@csstools/postcss-color-function": "^1.1.1", + "@csstools/postcss-font-format-keywords": "^1.0.1", + "@csstools/postcss-hwb-function": "^1.0.2", + "@csstools/postcss-ic-unit": "^1.0.1", + "@csstools/postcss-is-pseudo-class": "^2.0.7", + "@csstools/postcss-nested-calc": "^1.0.0", + "@csstools/postcss-normalize-display-values": "^1.0.1", + "@csstools/postcss-oklab-function": "^1.1.1", + "@csstools/postcss-progressive-custom-properties": "^1.3.0", + "@csstools/postcss-stepped-value-functions": "^1.0.1", + "@csstools/postcss-text-decoration-shorthand": "^1.0.0", + "@csstools/postcss-trigonometric-functions": "^1.0.2", + "@csstools/postcss-unset-value": "^1.0.2", + "autoprefixer": "^10.4.8", + "browserslist": "^4.21.3", + "css-blank-pseudo": "^3.0.3", + "css-has-pseudo": "^3.0.4", + "css-prefers-color-scheme": "^6.0.3", + "cssdb": "^7.0.0", + "postcss-attribute-case-insensitive": "^5.0.2", + "postcss-clamp": "^4.1.0", + "postcss-color-functional-notation": "^4.2.4", + "postcss-color-hex-alpha": "^8.0.4", + "postcss-color-rebeccapurple": "^7.1.1", + "postcss-custom-media": "^8.0.2", + "postcss-custom-properties": "^12.1.8", + "postcss-custom-selectors": "^6.0.3", + "postcss-dir-pseudo-class": "^6.0.5", + "postcss-double-position-gradients": "^3.1.2", + "postcss-env-function": "^4.0.6", + "postcss-focus-visible": "^6.0.4", + "postcss-focus-within": "^5.0.4", + "postcss-font-variant": "^5.0.0", + "postcss-gap-properties": "^3.0.5", + "postcss-image-set-function": "^4.0.7", + "postcss-initial": "^4.0.1", + "postcss-lab-function": "^4.2.1", + "postcss-logical": "^5.0.4", + "postcss-media-minmax": "^5.0.0", + "postcss-nesting": "^10.1.10", + "postcss-opacity-percentage": "^1.1.2", + "postcss-overflow-shorthand": "^3.0.4", + "postcss-page-break": "^3.0.4", + "postcss-place": "^7.0.5", + "postcss-pseudo-class-any-link": "^7.1.6", + "postcss-replace-overflow-wrap": "^4.0.0", + "postcss-selector-not": "^6.0.1", + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.2" + } + }, + "node_modules/postcss-pseudo-class-any-link": { + "version": "7.1.6", + "resolved": "https://registry.npmjs.org/postcss-pseudo-class-any-link/-/postcss-pseudo-class-any-link-7.1.6.tgz", + "integrity": "sha512-9sCtZkO6f/5ML9WcTLcIyV1yz9D1rf0tWc+ulKcvV30s0iZKS/ONyETvoWsr6vnrmW+X+KmuK3gV/w5EWnT37w==", + "dependencies": { + "postcss-selector-parser": "^6.0.10" + }, + "engines": { + "node": "^12 || ^14 || >=16" }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.2" + } + }, + "node_modules/postcss-pseudo-class-any-link/node_modules/postcss-selector-parser": { + "version": "6.1.2", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.1.2.tgz", + "integrity": "sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg==", "dependencies": { - "postcss-value-parser": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", - "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", - "dev": true - } + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" } }, - "postcss-reduce-initial": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/postcss-reduce-initial/-/postcss-reduce-initial-4.0.3.tgz", - "integrity": "sha512-gKWmR5aUulSjbzOfD9AlJiHCGH6AEVLaM0AV+aSioxUDd16qXP1PCh8d1/BGVvpdWn8k/HiK7n6TjeoXN1F7DA==", - "dev": true, - "requires": { - "browserslist": "^4.0.0", - "caniuse-api": "^3.0.0", - "has": "^1.0.0", - "postcss": "^7.0.0" + "node_modules/postcss-replace-overflow-wrap": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/postcss-replace-overflow-wrap/-/postcss-replace-overflow-wrap-4.0.0.tgz", + "integrity": "sha512-KmF7SBPphT4gPPcKZc7aDkweHiKEEO8cla/GjcBK+ckKxiZslIu3C4GCRW3DNfL0o7yW7kMQu9xlZ1kXRXLXtw==", + "peerDependencies": { + "postcss": "^8.0.3" } }, - "postcss-reduce-transforms": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/postcss-reduce-transforms/-/postcss-reduce-transforms-4.0.2.tgz", - "integrity": "sha512-EEVig1Q2QJ4ELpJXMZR8Vt5DQx8/mo+dGWSR7vWXqcob2gQLyQGsionYcGKATXvQzMPn6DSN1vTN7yFximdIAg==", - "dev": true, - "requires": { - "cssnano-util-get-match": "^4.0.0", - "has": "^1.0.0", - "postcss": "^7.0.0", - "postcss-value-parser": "^3.0.0" - }, - "dependencies": { - "postcss-value-parser": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", - "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", - "dev": true - } + "node_modules/postcss-selector-not": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/postcss-selector-not/-/postcss-selector-not-6.0.1.tgz", + "integrity": "sha512-1i9affjAe9xu/y9uqWH+tD4r6/hDaXJruk8xn2x1vzxC2U3J3LKO3zJW4CyxlNhA56pADJ/djpEwpH1RClI2rQ==", + "dependencies": { + "postcss-selector-parser": "^6.0.10" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.2" } }, - "postcss-selector-parser": { - "version": "6.0.11", - "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.11.tgz", - "integrity": "sha512-zbARubNdogI9j7WY4nQJBiNqQf3sLS3wCP4WfOidu+p28LofJqDH1tcXypGrcmMHhDk2t9wGhCsYe/+szLTy1g==", - "dev": true, - "requires": { + "node_modules/postcss-selector-not/node_modules/postcss-selector-parser": { + "version": "6.1.2", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.1.2.tgz", + "integrity": "sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg==", + "dependencies": { "cssesc": "^3.0.0", "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" } }, - "postcss-svgo": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/postcss-svgo/-/postcss-svgo-4.0.3.tgz", - "integrity": "sha512-NoRbrcMWTtUghzuKSoIm6XV+sJdvZ7GZSc3wdBN0W19FTtp2ko8NqLsgoh/m9CzNhU3KLPvQmjIwtaNFkaFTvw==", - "dev": true, - "requires": { - "postcss": "^7.0.0", - "postcss-value-parser": "^3.0.0", - "svgo": "^1.0.0" + "node_modules/postcss-selector-parser": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-7.1.0.tgz", + "integrity": "sha512-8sLjZwK0R+JlxlYcTuVnyT2v+htpdrjDOKuMcOVdYjt52Lh8hWRYpxBPoKx/Zg+bcjc3wx6fmQevMmUztS/ccA==", + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-url": { + "version": "10.1.3", + "resolved": "https://registry.npmjs.org/postcss-url/-/postcss-url-10.1.3.tgz", + "integrity": "sha512-FUzyxfI5l2tKmXdYc6VTu3TWZsInayEKPbiyW+P6vmmIrrb4I6CGX0BFoewgYHLK+oIL5FECEK02REYRpBvUCw==", "dependencies": { - "postcss-value-parser": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", - "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", - "dev": true - } + "make-dir": "~3.1.0", + "mime": "~2.5.2", + "minimatch": "~3.0.4", + "xxhashjs": "~0.2.2" + }, + "engines": { + "node": ">=10" + }, + "peerDependencies": { + "postcss": "^8.0.0" } }, - "postcss-unique-selectors": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/postcss-unique-selectors/-/postcss-unique-selectors-4.0.1.tgz", - "integrity": "sha512-+JanVaryLo9QwZjKrmJgkI4Fn8SBgRO6WXQBJi7KiAVPlmxikB5Jzc4EvXMT2H0/m0RjrVVm9rGNhZddm/8Spg==", - "dev": true, - "requires": { - "alphanum-sort": "^1.0.0", - "postcss": "^7.0.0", - "uniqs": "^2.0.0" + "node_modules/postcss-url/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" } }, - "postcss-url": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/postcss-url/-/postcss-url-8.0.0.tgz", - "integrity": "sha512-E2cbOQ5aii2zNHh8F6fk1cxls7QVFZjLPSrqvmiza8OuXLzIpErij8BDS5Y3STPfJgpIMNCPEr8JlKQWEoozUw==", - "dev": true, - "requires": { - "mime": "^2.3.1", - "minimatch": "^3.0.4", - "mkdirp": "^0.5.0", - "postcss": "^7.0.2", - "xxhashjs": "^0.2.1" + "node_modules/postcss-url/node_modules/mime": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/mime/-/mime-2.5.2.tgz", + "integrity": "sha512-tqkh47FzKeCPD2PUiPB6pkbMzsCasjxAfC62/Wap5qrUWcb+sFasXUC5I3gYM5iBM8v/Qpn4UK0x+j0iHyFPDg==", + "bin": { + "mime": "cli.js" + }, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/postcss-url/node_modules/minimatch": { + "version": "3.0.8", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.8.tgz", + "integrity": "sha512-6FsRAQsxQ61mw+qP1ZzbL9Bc78x2p5OqNgNpnoAFLTrX8n5Kxph0CsnhmKKNXTWjXqU5L0pGPR7hYk+XWZr60Q==", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" } }, - "postcss-value-parser": { + "node_modules/postcss-value-parser": { "version": "4.2.0", "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz", - "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==", - "dev": true - }, - "prepend-http": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-1.0.4.tgz", - "integrity": "sha512-PhmXi5XmoyKw1Un4E+opM2KcsJInDvKyuOumcjjw3waw86ZNjHwVUOOWLc4bCzLdcKNaWBH9e99sbWzDQsVaYg==", - "dev": true + "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==" }, - "process": { - "version": "0.11.10", - "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", - "integrity": "sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A==", - "dev": true + "node_modules/pretty-bytes": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/pretty-bytes/-/pretty-bytes-5.6.0.tgz", + "integrity": "sha512-FFw039TmrBqFK8ma/7OL3sDz/VytdtJr044/QUJtH0wK9lb9jLq9tJyIxUwtQJHwar2BqtiA4iCWSwo9JLkzFg==", + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } }, - "process-nextick-args": { + "node_modules/proc-log": { "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 - }, - "promise": { - "version": "7.3.1", - "resolved": "https://registry.npmjs.org/promise/-/promise-7.3.1.tgz", - "integrity": "sha512-nolQXZ/4L+bP/UGlkfaIujX9BKxGwmQ9OT4mOt5yvy8iK1h3wqTEJCijzGANTCCl9nWjY41juyAn2K3Q1hLLTg==", + "resolved": "https://registry.npmjs.org/proc-log/-/proc-log-2.0.1.tgz", + "integrity": "sha512-Kcmo2FhfDTXdcbfDH76N7uBYHINxc/8GW7UAVuVP9I+Va3uHSerrnKV6dLooga/gh7GlgzuCCr/eoldnL1muGw==", "dev": true, - "optional": true, - "requires": { - "asap": "~2.0.3" + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "promise-inflight": { + "node_modules/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==" + }, + "node_modules/promise-inflight": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/promise-inflight/-/promise-inflight-1.0.1.tgz", - "integrity": "sha512-6zWPyEOFaQBJYcGMHBKTKJ3u6TBsnMFOIZSa6ce1e/ZrrsOlnHRHbabMjLiBYKp+n44X9eUI6VUPaukCXHuG4g==", - "dev": true - }, - "promise-retry": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/promise-retry/-/promise-retry-1.1.1.tgz", - "integrity": "sha512-StEy2osPr28o17bIW776GtwO6+Q+M9zPiZkYfosciUUMYqjhU/ffwRAH0zN2+uvGyUsn8/YICIHRzLbPacpZGw==", - "dev": true, - "requires": { - "err-code": "^1.0.0", - "retry": "^0.10.0" - } - }, - "protoduck": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/protoduck/-/protoduck-5.0.1.tgz", - "integrity": "sha512-WxoCeDCoCBY55BMvj4cAEjdVUFGRWed9ZxPlqTKYyw1nDDTQ4pqmnIMAGfJlg7Dx35uB/M+PHJPTmGOvaCaPTg==", - "dev": true, - "requires": { - "genfun": "^5.0.0" - } + "integrity": "sha512-6zWPyEOFaQBJYcGMHBKTKJ3u6TBsnMFOIZSa6ce1e/ZrrsOlnHRHbabMjLiBYKp+n44X9eUI6VUPaukCXHuG4g==" }, - "protractor": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/protractor/-/protractor-7.0.0.tgz", - "integrity": "sha512-UqkFjivi4GcvUQYzqGYNe0mLzfn5jiLmO8w9nMhQoJRLhy2grJonpga2IWhI6yJO30LibWXJJtA4MOIZD2GgZw==", + "node_modules/promise-retry": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/promise-retry/-/promise-retry-2.0.1.tgz", + "integrity": "sha512-y+WKFlBR8BGXnsNlIHFGPZmyDf3DFMoLhaflAnyZgV6rG6xu+JwesTo2Q9R6XwYmtmwAFCkAk3e35jEdoeh/3g==", "dev": true, - "requires": { - "@types/q": "^0.0.32", - "@types/selenium-webdriver": "^3.0.0", - "blocking-proxy": "^1.0.0", - "browserstack": "^1.5.1", - "chalk": "^1.1.3", - "glob": "^7.0.3", - "jasmine": "2.8.0", - "jasminewd2": "^2.1.0", - "q": "1.4.1", - "saucelabs": "^1.5.0", - "selenium-webdriver": "3.6.0", - "source-map-support": "~0.4.0", - "webdriver-js-extender": "2.1.0", - "webdriver-manager": "^12.1.7", - "yargs": "^15.3.1" - }, - "dependencies": { - "ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==", - "dev": true - }, - "ansi-styles": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", - "integrity": "sha512-kmCevFghRiWM7HB5zTPULl4r9bVFSWjz62MhqizDGUrq2NWuNMQyuv4tHHoKJHs69M/MF64lEcHdYIocrdWQYA==", - "dev": true - }, - "chalk": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "integrity": "sha512-U3lRVLMSlsCfjqYPbLyVv11M9CPW4I728d6TCKMAOJueEeB9/8o+eSsMnxPJD+Q+K909sdESg7C+tIkoH6on1A==", - "dev": true, - "requires": { - "ansi-styles": "^2.2.1", - "escape-string-regexp": "^1.0.2", - "has-ansi": "^2.0.0", - "strip-ansi": "^3.0.0", - "supports-color": "^2.0.0" - } - }, - "cliui": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz", - "integrity": "sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==", - "dev": true, - "requires": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", - "wrap-ansi": "^6.2.0" - }, - "dependencies": { - "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 - }, - "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" - } - } - } - }, - "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 - }, - "source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==", - "dev": true - }, - "source-map-support": { - "version": "0.4.18", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.4.18.tgz", - "integrity": "sha512-try0/JqxPLF9nOjvSta7tVondkP5dwgyLDjVoyMDlmjugT2lRZ1OfsrYTkCd2hkDnJTKRbO/Rl3orm8vlsUzbA==", - "dev": true, - "requires": { - "source-map": "^0.5.6" - } - }, - "strip-ansi": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg==", - "dev": true, - "requires": { - "ansi-regex": "^2.0.0" - } - }, - "supports-color": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", - "integrity": "sha512-KKNVtd6pCYgPIKU4cp2733HWYCpplQhddZLBUryaAHou723x+FRzQ5Df824Fj+IyyuiQTRoub4SnIFfIcrp70g==", - "dev": true - }, - "wrap-ansi": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", - "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", - "dev": true, - "requires": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - }, - "dependencies": { - "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" - } - }, - "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" - } - } - } - }, - "y18n": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz", - "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==", - "dev": true - }, - "yargs": { - "version": "15.4.1", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-15.4.1.tgz", - "integrity": "sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A==", - "dev": true, - "requires": { - "cliui": "^6.0.0", - "decamelize": "^1.2.0", - "find-up": "^4.1.0", - "get-caller-file": "^2.0.1", - "require-directory": "^2.1.1", - "require-main-filename": "^2.0.0", - "set-blocking": "^2.0.0", - "string-width": "^4.2.0", - "which-module": "^2.0.0", - "y18n": "^4.0.0", - "yargs-parser": "^18.1.2" - } - }, - "yargs-parser": { - "version": "18.1.3", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz", - "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==", - "dev": true, - "requires": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" - } - } + "dependencies": { + "err-code": "^2.0.2", + "retry": "^0.12.0" + }, + "engines": { + "node": ">=10" } }, - "proxy-addr": { + "node_modules/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==", - "dev": true, - "requires": { + "dependencies": { "forwarded": "0.2.0", "ipaddr.js": "1.9.1" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/proxy-addr/node_modules/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==", + "engines": { + "node": ">= 0.10" } }, - "prr": { + "node_modules/prr": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/prr/-/prr-1.0.1.tgz", "integrity": "sha512-yPw4Sng1gWghHQWj0B3ZggWUm4qVbPwPFcRG8KyxiU7J2OHFSoEHKS+EZ3fv5l1t9CyCiop6l/ZYeWbrgoQejw==", - "dev": true - }, - "psl": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/psl/-/psl-1.9.0.tgz", - "integrity": "sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag==", - "dev": true - }, - "public-encrypt": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/public-encrypt/-/public-encrypt-4.0.3.tgz", - "integrity": "sha512-zVpa8oKZSz5bTMTFClc1fQOnyyEzpl5ozpi1B5YcvBrdohMjH2rfsBtyXcuNuwjsDIXmBYlF2N5FlJYhR29t8Q==", - "dev": true, - "requires": { - "bn.js": "^4.1.0", - "browserify-rsa": "^4.0.0", - "create-hash": "^1.1.0", - "parse-asn1": "^5.0.0", - "randombytes": "^2.0.1", - "safe-buffer": "^5.1.2" - }, - "dependencies": { - "bn.js": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", - "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", - "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==", - "dev": true, - "requires": { - "end-of-stream": "^1.1.0", - "once": "^1.3.1" - } - }, - "pumpify": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/pumpify/-/pumpify-1.5.1.tgz", - "integrity": "sha512-oClZI37HvuUJJxSKKrC17bZ9Cu0ZYhEAGPsPUy9KlMUmv9dKX2o77RUmq7f3XjIxbwyGwYzbzQ1L2Ks8sIradQ==", - "dev": true, - "requires": { - "duplexify": "^3.6.0", - "inherits": "^2.0.3", - "pump": "^2.0.0" - }, - "dependencies": { - "pump": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/pump/-/pump-2.0.1.tgz", - "integrity": "sha512-ruPMNRkN3MHP1cWJc9OWr+T/xDP0jhXYCLfJcBuX54hhfIBnaQmAUMfDcG4DM5UMWByBbJY69QSphm3jtDKIkA==", - "dev": true, - "requires": { - "end-of-stream": "^1.1.0", - "once": "^1.3.1" - } - } - } - }, - "punycode": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.0.tgz", - "integrity": "sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==", - "dev": true - }, - "pupa": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/pupa/-/pupa-2.1.1.tgz", - "integrity": "sha512-l1jNAspIBSFqbT+y+5FosojNpVpF94nlI+wDUpqP9enwOTfHx9f0gh5nB96vl+6yTpsJsypeNrwfzPrKuHB41A==", - "dev": true, - "requires": { - "escape-goat": "^2.0.0" - } + "optional": true }, - "q": { + "node_modules/punycode": { "version": "1.4.1", - "resolved": "https://registry.npmjs.org/q/-/q-1.4.1.tgz", - "integrity": "sha512-/CdEdaw49VZVmyIDGUQKDDT53c7qBkO6g5CefWz91Ae+l4+cRtcDYwMTXh6me4O8TMldeGHG3N2Bl84V78Ywbg==", - "dev": true + "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", + "integrity": "sha512-jmYNElW7yvO7TV33CjSmvSiE2yco3bV2czu/OzDKdMNVZQWfxCblURLhf+47syQRBntjfLdd/H0egrzIG+oaFQ==", + "devOptional": true }, - "qjobs": { + "node_modules/qjobs": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/qjobs/-/qjobs-1.2.0.tgz", "integrity": "sha512-8YOJEHtxpySA3fFDyCRxA+UUV+fA+rTWnuWvylOK/NCjhY+b4ocCtmu8TtsWb+mYeU+GCHf/S66KZF/AsteKHg==", - "dev": true - }, - "qs": { - "version": "6.11.0", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.11.0.tgz", - "integrity": "sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==", - "dev": true, - "requires": { - "side-channel": "^1.0.4" + "devOptional": true, + "engines": { + "node": ">=0.9" } }, - "query-string": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/query-string/-/query-string-4.3.4.tgz", - "integrity": "sha512-O2XLNDBIg1DnTOa+2XrIwSiXEV8h2KImXUnjhhn2+UsvZ+Es2uyd5CCRTNQlDGbzUQOW3aYCBx9rVA6dzsiY7Q==", - "dev": true, - "requires": { - "object-assign": "^4.1.0", - "strict-uri-encode": "^1.0.0" + "node_modules/qs": { + "version": "6.13.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.13.0.tgz", + "integrity": "sha512-+38qI9SOr8tfZ4QmJNplMUxqjbe7LKvvZgWdExBOmd+egZTtjLB67Gu0HRX3u/XOq7UU2Nx6nsjvS16Z9uwfpg==", + "dependencies": { + "side-channel": "^1.0.6" + }, + "engines": { + "node": ">=0.6" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "querystring": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/querystring/-/querystring-0.2.0.tgz", - "integrity": "sha512-X/xY82scca2tau62i9mDyU9K+I+djTMUsvwf7xnUX5GLvVzgJybOJf4Y6o9Zx3oJK/LSXg5tTZBjwzqVPaPO2g==", - "dev": true - }, - "querystring-es3": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/querystring-es3/-/querystring-es3-0.2.1.tgz", - "integrity": "sha512-773xhDQnZBMFobEiztv8LIl70ch5MSF/jUQVlhwFyBILqq96anmoctVIYz+ZRp0qbCKATTn6ev02M3r7Ga5vqA==", - "dev": true - }, - "querystringify": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/querystringify/-/querystringify-2.2.0.tgz", - "integrity": "sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ==", - "dev": true - }, - "queue-microtask": { + "node_modules/queue-microtask": { "version": "1.2.3", "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", - "dev": true + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] }, - "randombytes": { + "node_modules/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" - } - }, - "randomfill": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/randomfill/-/randomfill-1.0.4.tgz", - "integrity": "sha512-87lcbR8+MhcWcUiQ+9e+Rwx8MyR2P7qnt15ynUlbm3TU/fjbgz4GsvfSUDTemtCCtVCqb4ZcEFlyPNTh9bBTLw==", - "dev": true, - "requires": { - "randombytes": "^2.0.5", + "dependencies": { "safe-buffer": "^5.1.0" } }, - "range-parser": { + "node_modules/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==", - "dev": true + "engines": { + "node": ">= 0.6" + } }, - "raw-body": { + "node_modules/raw-body": { "version": "2.5.2", "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.2.tgz", "integrity": "sha512-8zGqypfENjCIqGhgXToC8aB2r7YrBX+AQAfIPs/Mlk+BtPTztOvTS01NRW/3Eh60J+a48lt8qsCzirQ6loCVfA==", - "dev": true, - "requires": { + "dependencies": { "bytes": "3.1.2", "http-errors": "2.0.0", "iconv-lite": "0.4.24", "unpipe": "1.0.0" + }, + "engines": { + "node": ">= 0.8" } }, - "raw-loader": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/raw-loader/-/raw-loader-4.0.0.tgz", - "integrity": "sha512-iINUOYvl1cGEmfoaLjnZXt4bKfT2LJnZZib5N/LLyAphC+Dd11vNP9CNVb38j+SAJpFI1uo8j9frmih53ASy7Q==", - "dev": true, - "requires": { - "loader-utils": "^1.2.3", - "schema-utils": "^2.5.0" - }, - "dependencies": { - "json5": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz", - "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==", - "dev": true, - "requires": { - "minimist": "^1.2.0" - } - }, - "loader-utils": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.2.tgz", - "integrity": "sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==", - "dev": true, - "requires": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^1.0.1" - } - } - } - }, - "rc": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", - "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==", - "dev": true, - "requires": { - "deep-extend": "^0.6.0", - "ini": "~1.3.0", - "minimist": "^1.2.0", - "strip-json-comments": "~2.0.1" - } - }, - "read-cache": { + "node_modules/read-cache": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/read-cache/-/read-cache-1.0.0.tgz", "integrity": "sha512-Owdv/Ft7IjOgm/i0xvNDZ1LrRANRfew4b2prF3OWMQLxLfu3bS8FVhCsrSCMK4lR56Y9ya+AThoTpDCTxCmpRA==", - "dev": true, - "requires": { - "pify": "^2.3.0" - }, "dependencies": { - "pify": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==", - "dev": true - } - } - }, - "read-package-json": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/read-package-json/-/read-package-json-2.1.2.tgz", - "integrity": "sha512-D1KmuLQr6ZSJS0tW8hf3WGpRlwszJOXZ3E8Yd/DNRaM5d+1wVRZdHlpGBLAuovjr28LbWvjpWkBHMxpRGGjzNA==", - "dev": true, - "requires": { - "glob": "^7.1.1", - "json-parse-even-better-errors": "^2.3.0", - "normalize-package-data": "^2.0.0", - "npm-normalize-package-bin": "^1.0.0" - } - }, - "read-package-tree": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/read-package-tree/-/read-package-tree-5.3.1.tgz", - "integrity": "sha512-mLUDsD5JVtlZxjSlPPx1RETkNjjvQYuweKwNVt1Sn8kP5Jh44pvYuUHCp6xSVDZWbNxVxG5lyZJ921aJH61sTw==", - "dev": true, - "requires": { - "read-package-json": "^2.0.0", - "readdir-scoped-modules": "^1.0.0", - "util-promisify": "^2.1.0" - } - }, - "read-pkg": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-3.0.0.tgz", - "integrity": "sha512-BLq/cCO9two+lBgiTYNqD6GdtK8s4NpaWrl6/rCO9w0TUS8oJl7cmToOZfRYllKTISY6nt1U7jQ53brmKqY6BA==", - "dev": true, - "requires": { - "load-json-file": "^4.0.0", - "normalize-package-data": "^2.3.2", - "path-type": "^3.0.0" - }, - "dependencies": { - "path-type": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz", - "integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==", - "dev": true, - "requires": { - "pify": "^3.0.0" - } - }, - "pify": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", - "integrity": "sha512-C3FsVNH1udSEX48gGX1xfvwTWfsYWj5U+8/uK15BGzIGrKoUpghX8hWZwa/OFnakBiiVNmBvemTJR5mcy7iPcg==", - "dev": true - } - } - }, - "read-pkg-up": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-5.0.0.tgz", - "integrity": "sha512-XBQjqOBtTzyol2CpsQOw8LHV0XbDZVG7xMMjmXAJomlVY03WOBRmYgDJETlvcg0H63AJvPRwT7GFi5rvOzUOKg==", - "dev": true, - "requires": { - "find-up": "^3.0.0", - "read-pkg": "^5.0.0" - }, - "dependencies": { - "find-up": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", - "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", - "dev": true, - "requires": { - "locate-path": "^3.0.0" - } - }, - "locate-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", - "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", - "dev": true, - "requires": { - "p-locate": "^3.0.0", - "path-exists": "^3.0.0" - } - }, - "p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", - "dev": true, - "requires": { - "p-try": "^2.0.0" - } - }, - "p-locate": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", - "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", - "dev": true, - "requires": { - "p-limit": "^2.0.0" - } - }, - "parse-json": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", - "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.0.0", - "error-ex": "^1.3.1", - "json-parse-even-better-errors": "^2.3.0", - "lines-and-columns": "^1.1.6" - } - }, - "path-exists": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", - "integrity": "sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==", - "dev": true - }, - "read-pkg": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-5.2.0.tgz", - "integrity": "sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==", - "dev": true, - "requires": { - "@types/normalize-package-data": "^2.4.0", - "normalize-package-data": "^2.5.0", - "parse-json": "^5.0.0", - "type-fest": "^0.6.0" - } - }, - "type-fest": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.6.0.tgz", - "integrity": "sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==", - "dev": true - } + "pify": "^2.3.0" } }, - "readable-stream": { - "version": "2.3.8", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", - "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", + "node_modules/read-package-json": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/read-package-json/-/read-package-json-5.0.2.tgz", + "integrity": "sha512-BSzugrt4kQ/Z0krro8zhTwV1Kd79ue25IhNN/VtHFy1mG/6Tluyi+msc0UpwaoQzxSHa28mntAjIZY6kEgfR9Q==", + "deprecated": "This package is no longer supported. Please use @npmcli/package-json instead.", "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" + "dependencies": { + "glob": "^8.0.1", + "json-parse-even-better-errors": "^2.3.1", + "normalize-package-data": "^4.0.0", + "npm-normalize-package-bin": "^2.0.0" }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/read-package-json-fast": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/read-package-json-fast/-/read-package-json-fast-2.0.3.tgz", + "integrity": "sha512-W/BKtbL+dUjTuRL2vziuYhp76s5HZ9qQhd/dKfWIZveD0O40453QNyZhC0e63lqZrAQ4jiOapVoeJ7JrszenQQ==", + "dev": true, "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==", - "dev": true - } + "json-parse-even-better-errors": "^2.3.0", + "npm-normalize-package-bin": "^1.0.1" + }, + "engines": { + "node": ">=10" } }, - "readdir-scoped-modules": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/readdir-scoped-modules/-/readdir-scoped-modules-1.1.0.tgz", - "integrity": "sha512-asaikDeqAQg7JifRsZn1NJZXo9E+VwlyCfbkZhwyISinqk5zNS6266HS5kah6P0SaQKGF6SkNnZVHUzHFYxYDw==", + "node_modules/read-package-json/node_modules/npm-normalize-package-bin": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/npm-normalize-package-bin/-/npm-normalize-package-bin-2.0.0.tgz", + "integrity": "sha512-awzfKUO7v0FscrSpRoogyNm0sajikhBWpU0QMrW09AMi9n1PoKU6WaIqUzuJSQnpciZZmJ/jMZ2Egfmb/9LiWQ==", "dev": true, - "requires": { - "debuglog": "^1.0.1", - "dezalgo": "^1.0.0", - "graceful-fs": "^4.1.2", - "once": "^1.3.0" + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/readable-stream": { + "version": "3.6.2", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", + "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" } }, - "readdirp": { + "node_modules/readdirp": { "version": "3.6.0", "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", - "dev": true, - "requires": { + "dependencies": { "picomatch": "^2.2.1" + }, + "engines": { + "node": ">=8.10.0" } }, - "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==", - "dev": true + "node_modules/readdirp/node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } }, - "regenerate": { + "node_modules/reflect-metadata": { + "version": "0.1.14", + "resolved": "https://registry.npmjs.org/reflect-metadata/-/reflect-metadata-0.1.14.tgz", + "integrity": "sha512-ZhYeb6nRaXCfhnndflDK8qI6ZQ/YcWZCISRAWICW9XYqMUwjZM9Z0DveWX/ABN01oxSHwVxKQmxeYZSsm0jh5A==" + }, + "node_modules/regenerate": { "version": "1.4.2", "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.2.tgz", - "integrity": "sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==", - "dev": true + "integrity": "sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==" }, - "regenerate-unicode-properties": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-10.1.0.tgz", - "integrity": "sha512-d1VudCLoIGitcU/hEg2QqvyGZQmdC0Lf8BqdOMXGFSvJP4bNV1+XqbPQeHHLD51Jh4QJJ225dlIFvY4Ly6MXmQ==", - "dev": true, - "requires": { + "node_modules/regenerate-unicode-properties": { + "version": "10.2.0", + "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-10.2.0.tgz", + "integrity": "sha512-DqHn3DwbmmPVzeKj9woBadqmXxLvQoQIwu7nopMc72ztvxVmVk2SBhSnx67zuye5TP+lJsb/TBQsjLKhnDf3MA==", + "dependencies": { "regenerate": "^1.4.2" + }, + "engines": { + "node": ">=4" } }, - "regenerator-runtime": { - "version": "0.13.5", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.5.tgz", - "integrity": "sha512-ZS5w8CpKFinUzOwW3c83oPeVXoNsrLsaCoLtJvAClH135j/R77RuymhiSErhm2lKcwSCIpmvIWSbDkIfAqKQlA==", - "dev": true + "node_modules/regenerator-runtime": { + "version": "0.13.9", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.9.tgz", + "integrity": "sha512-p3VT+cOEgxFsRRA9X4lkI1E+k2/CtnKtU4gcxyaCUreilL/vqI6CdZ3wxVUx3UOUg+gnUOQQcRI7BmSI656MYA==" }, - "regenerator-transform": { - "version": "0.15.1", - "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.15.1.tgz", - "integrity": "sha512-knzmNAcuyxV+gQCufkYcvOqX/qIIfHLv0u5x79kRxuGojfYVky1f15TzZEu2Avte8QGepvUNTnLskf8E6X6Vyg==", - "dev": true, - "requires": { + "node_modules/regenerator-transform": { + "version": "0.15.2", + "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.15.2.tgz", + "integrity": "sha512-hfMp2BoF0qOk3uc5V20ALGDS2ddjQaLrdl7xrGXvAIow7qeWRM2VA2HuCHkUKk9slq3VwEwLNK3DFBqDfPGYtg==", + "dependencies": { "@babel/runtime": "^7.8.4" } }, - "regex-not": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/regex-not/-/regex-not-1.0.2.tgz", - "integrity": "sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A==", - "dev": true, - "requires": { - "extend-shallow": "^3.0.2", - "safe-regex": "^1.1.0" - } - }, - "regexp.prototype.flags": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.4.3.tgz", - "integrity": "sha512-fjggEOO3slI6Wvgjwflkc4NFRCTZAu5CnNfBd5qOMYhWdn67nJBBu34/TkD++eeFmd8C9r9jfXJ27+nSiRkSUA==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3", - "functions-have-names": "^1.2.2" - } + "node_modules/regex-parser": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/regex-parser/-/regex-parser-2.3.1.tgz", + "integrity": "sha512-yXLRqatcCuKtVHsWrNg0JL3l1zGfdXeEvDa0bdu4tCDQw0RpMDZsqbkyRTUnKMR0tXF627V2oEWjBEaEdqTwtQ==" }, - "regexpu-core": { - "version": "5.3.2", - "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-5.3.2.tgz", - "integrity": "sha512-RAM5FlZz+Lhmo7db9L298p2vHP5ZywrVXmVXpmAD9GuL5MPH6t9ROw1iA/wfHkQ76Qe7AaPF0nGuim96/IrQMQ==", - "dev": true, - "requires": { - "@babel/regjsgen": "^0.8.0", + "node_modules/regexpu-core": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-6.2.0.tgz", + "integrity": "sha512-H66BPQMrv+V16t8xtmq+UC0CBpiTBA60V8ibS1QVReIp8T1z8hwFxqcGzm9K6lgsN7sB5edVH8a+ze6Fqm4weA==", + "dependencies": { "regenerate": "^1.4.2", - "regenerate-unicode-properties": "^10.1.0", - "regjsparser": "^0.9.1", + "regenerate-unicode-properties": "^10.2.0", + "regjsgen": "^0.8.0", + "regjsparser": "^0.12.0", "unicode-match-property-ecmascript": "^2.0.0", "unicode-match-property-value-ecmascript": "^2.1.0" + }, + "engines": { + "node": ">=4" } }, - "registry-auth-token": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/registry-auth-token/-/registry-auth-token-4.2.2.tgz", - "integrity": "sha512-PC5ZysNb42zpFME6D/XlIgtNGdTl8bBOCw90xQLVMpzuuubJKYDWFAEuUNc+Cn8Z8724tg2SDhDRrkVEsqfDMg==", - "dev": true, - "requires": { - "rc": "1.2.8" - } - }, - "registry-url": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/registry-url/-/registry-url-5.1.0.tgz", - "integrity": "sha512-8acYXXTI0AkQv6RAOjE3vOaIXZkT9wo4LOFbBKYQEEnnMNBpKqdUrI6S4NT0KPIo/WVvJ5tE/X5LF/TQUf0ekw==", - "dev": true, - "requires": { - "rc": "^1.2.8" - } + "node_modules/regjsgen": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.8.0.tgz", + "integrity": "sha512-RvwtGe3d7LvWiDQXeQw8p5asZUmfU1G/l6WbUXeHta7Y2PEIvBTwH6E2EfmYUK8pxcxEdEmaomqyp0vZZ7C+3Q==" }, - "regjsparser": { - "version": "0.9.1", - "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.9.1.tgz", - "integrity": "sha512-dQUtn90WanSNl+7mQKcXAgZxvUe7Z0SqXlgzv0za4LwiUhyzBC58yQO3liFoUgu8GiJVInAhJjkj1N0EtQ5nkQ==", - "dev": true, - "requires": { - "jsesc": "~0.5.0" - }, + "node_modules/regjsparser": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.12.0.tgz", + "integrity": "sha512-cnE+y8bz4NhMjISKbgeVJtqNbtf5QpjZP+Bslo+UqkIt9QPnX9q095eiRRASJG1/tz6dlNr6Z5NsBiWYokp6EQ==", "dependencies": { - "jsesc": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", - "integrity": "sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA==", - "dev": true - } + "jsesc": "~3.0.2" + }, + "bin": { + "regjsparser": "bin/parser" } }, - "remove-trailing-separator": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz", - "integrity": "sha512-/hS+Y0u3aOfIETiaiirUFwDBDzmXPvO+jAfKTitUngIPzdKc6Z0LoFjM/CK5PL4C+eKwHohlHAb6H0VFfmmUsw==", - "dev": true - }, - "repeat-element": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.4.tgz", - "integrity": "sha512-LFiNfRcSu7KK3evMyYOuCzv3L10TW7yC1G2/+StMjK8Y6Vqd2MG7r/Qjw4ghtuCOjFvlnms/iMmLqpvW/ES/WQ==", - "dev": true - }, - "repeat-string": { - "version": "1.6.1", - "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz", - "integrity": "sha512-PV0dzCYDNfRi1jCDbJzpW7jNNDRuCOG/jI5ctQcGKt/clZD+YcPS3yIlWuTJMmESC8aevCFmWJy5wjAFgNqN6w==", - "dev": true - }, - "request": { - "version": "2.88.2", - "resolved": "https://registry.npmjs.org/request/-/request-2.88.2.tgz", - "integrity": "sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw==", - "dev": true, - "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": { - "qs": { - "version": "6.5.3", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.3.tgz", - "integrity": "sha512-qxXIEh4pCGfHICj1mAJQ2/2XVZkjCDTcEgfoSQxc/fYivUZxTkk7L3bDBJSoNrEzXI17oUO5Dp07ktqE5KzczA==", - "dev": true - }, - "uuid": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", - "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==", - "dev": true - } + "node_modules/regjsparser/node_modules/jsesc": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-3.0.2.tgz", + "integrity": "sha512-xKqzzWXDttJuOcawBt4KnKHHIf5oQ/Cxax+0PWFG+DFDgHNAdi+TXECADI+RYiFUMmx8792xsMbbgXj4CwnP4g==", + "bin": { + "jsesc": "bin/jsesc" + }, + "engines": { + "node": ">=6" } }, - "require-directory": { + "node_modules/require-directory": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", - "dev": true + "engines": { + "node": ">=0.10.0" + } }, - "require-main-filename": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz", - "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==", - "dev": true + "node_modules/require-from-string": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz", + "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==", + "engines": { + "node": ">=0.10.0" + } }, - "requires-port": { + "node_modules/requires-port": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz", - "integrity": "sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==", - "dev": true + "integrity": "sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==" }, - "resolve": { + "node_modules/resolve": { "version": "1.22.1", "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz", "integrity": "sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==", - "dev": true, - "requires": { + "dependencies": { "is-core-module": "^2.9.0", "path-parse": "^1.0.7", "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "resolve-cwd": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-2.0.0.tgz", - "integrity": "sha512-ccu8zQTrzVr954472aUVPLEcB3YpKSYR3cg/3lo1okzobPBM+1INXBbBZlDbnI/hbEocnf8j0QVo43hQKrbchg==", - "dev": true, - "requires": { - "resolve-from": "^3.0.0" + "node_modules/resolve-from": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", + "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", + "engines": { + "node": ">=8" } }, - "resolve-from": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-3.0.0.tgz", - "integrity": "sha512-GnlH6vxLymXJNMBo7XP1fJIzBFbdYt49CuTwmB/6N53t+kMPRMFKz783LlQ4tv28XoQfMWinAJX6WCGf2IlaIw==", - "dev": true + "node_modules/resolve-url-loader": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/resolve-url-loader/-/resolve-url-loader-5.0.0.tgz", + "integrity": "sha512-uZtduh8/8srhBoMx//5bwqjQ+rfYOUq8zC9NrMUGtjBiGTtFJM42s58/36+hTqeqINcnYe08Nj3LkK9lW4N8Xg==", + "dependencies": { + "adjust-sourcemap-loader": "^4.0.0", + "convert-source-map": "^1.7.0", + "loader-utils": "^2.0.0", + "postcss": "^8.2.14", + "source-map": "0.6.1" + }, + "engines": { + "node": ">=12" + } }, - "resolve-url": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz", - "integrity": "sha512-ZuF55hVUQaaczgOIwqWzkEcEidmlD/xl44x1UZnhOXcYuFN2S6+rcxpG+C1N3So0wvNI3DmJICUFfu2SxhBmvg==", - "dev": true + "node_modules/resolve-url-loader/node_modules/loader-utils": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.4.tgz", + "integrity": "sha512-xXqpXoINfFhgua9xiqD8fPFHgkoq1mmmpE92WlDbm9rNRd/EbRb+Gqf908T2DMfuHjjJlksiK2RbHVOdD/MqSw==", + "dependencies": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^2.1.2" + }, + "engines": { + "node": ">=8.9.0" + } }, - "responselike": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/responselike/-/responselike-1.0.2.tgz", - "integrity": "sha512-/Fpe5guzJk1gPqdJLJR5u7eG/gNY4nImjbRDaVWVMRhne55TCmj2i9Q+54PBRfatRC8v/rIiv9BN0pMd9OV5EQ==", - "dev": true, - "requires": { - "lowercase-keys": "^1.0.0" + "node_modules/resolve-url-loader/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "engines": { + "node": ">=0.10.0" } }, - "restore-cursor": { + "node_modules/restore-cursor": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz", "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==", - "dev": true, - "requires": { + "dependencies": { "onetime": "^5.1.0", "signal-exit": "^3.0.2" + }, + "engines": { + "node": ">=8" } }, - "ret": { - "version": "0.1.15", - "resolved": "https://registry.npmjs.org/ret/-/ret-0.1.15.tgz", - "integrity": "sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==", - "dev": true - }, - "retry": { - "version": "0.10.1", - "resolved": "https://registry.npmjs.org/retry/-/retry-0.10.1.tgz", - "integrity": "sha512-ZXUSQYTHdl3uS7IuCehYfMzKyIDBNoAuUblvy5oGO5UJSUTmStUUVPXbA9Qxd173Bgre53yCQczQuHgRWAdvJQ==", - "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 - }, - "rfdc": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/rfdc/-/rfdc-1.3.0.tgz", - "integrity": "sha512-V2hovdzFbOi77/WajaSMXk2OLm+xNIeQdMMuB7icj7bk6zi2F8GGAxigcnDFpJHbNyNcgyJDiP+8nOrY5cZGrA==", - "dev": true + "node_modules/retry": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/retry/-/retry-0.12.0.tgz", + "integrity": "sha512-9LkiTwjUh6rT555DtE9rTX+BKByPfrMzEAtnlEtdEwr3Nkffwiihqe2bWADg+OQRjt9gl6ICdmB/ZFDCGAtSow==", + "dev": true, + "engines": { + "node": ">= 4" + } }, - "rgb-regex": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/rgb-regex/-/rgb-regex-1.0.1.tgz", - "integrity": "sha512-gDK5mkALDFER2YLqH6imYvK6g02gpNGM4ILDZ472EwWfXZnC2ZEpoB2ECXTyOVUKuk/bPJZMzwQPBYICzP+D3w==", - "dev": true + "node_modules/reusify": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.1.0.tgz", + "integrity": "sha512-g6QUff04oZpHs0eG5p83rFLhHeV00ug/Yf9nZM6fLeUrPguBTkTQOdpAWWspMh55TZfVQDPaN3NQJfbVRAxdIw==", + "engines": { + "iojs": ">=1.0.0", + "node": ">=0.10.0" + } }, - "rgba-regex": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/rgba-regex/-/rgba-regex-1.0.0.tgz", - "integrity": "sha512-zgn5OjNQXLUTdq8m17KdaicF6w89TZs8ZU8y0AYENIU6wG8GG6LLm0yLSiPY8DmaYmHdgRW8rnApjoT0fQRfMg==", - "dev": true + "node_modules/rfdc": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/rfdc/-/rfdc-1.4.1.tgz", + "integrity": "sha512-q1b3N5QkRUWUl7iyylaaj3kOpIT0N2i9MqIEQXP73GVsN9cw3fdx8X63cEmWhJGi2PPCF23Ijp7ktmd39rawIA==", + "devOptional": true }, - "rimraf": { + "node_modules/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": { + "deprecated": "Rimraf versions prior to v4 are no longer supported", + "dependencies": { "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "ripemd160": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.2.tgz", - "integrity": "sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==", - "dev": true, - "requires": { - "hash-base": "^3.0.0", - "inherits": "^2.0.1" + "node_modules/rimraf/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" } }, - "rollup": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/rollup/-/rollup-2.1.0.tgz", - "integrity": "sha512-gfE1455AEazVVTJoeQtcOq/U6GSxwoj4XPSWVsuWmgIxj7sBQNLDOSA82PbdMe+cP8ql8fR1jogPFe8Wg8g4SQ==", - "dev": true, - "requires": { - "fsevents": "~2.1.2" + "node_modules/rimraf/node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "deprecated": "Glob versions prior to v9 are no longer supported", + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/rimraf/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", "dependencies": { - "fsevents": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.1.3.tgz", - "integrity": "sha512-Auw9a4AxqWpa9GUfj370BMPzzyncfBABW8Mab7BGWBYDj4Isgq+cDKtx0i6u9jcX9pQDnswsaaOTgTmA5pEjuQ==", - "dev": true, - "optional": true - } + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/rollup": { + "version": "2.79.2", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-2.79.2.tgz", + "integrity": "sha512-fS6iqSPZDs3dr/y7Od6y5nha8dW1YnbgtsyotCVvoFGKbERG++CVRFv1meyGDE1SNItQA8BrnCw7ScdAhRJ3XQ==", + "bin": { + "rollup": "dist/bin/rollup" + }, + "engines": { + "node": ">=10.0.0" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" } }, - "rollup-plugin-sourcemaps": { + "node_modules/rollup-plugin-sourcemaps": { "version": "0.6.3", "resolved": "https://registry.npmjs.org/rollup-plugin-sourcemaps/-/rollup-plugin-sourcemaps-0.6.3.tgz", "integrity": "sha512-paFu+nT1xvuO1tPFYXGe+XnQvg4Hjqv/eIhG8i5EspfYYPBKL57X7iVbfv55aNVASg3dzWvES9dmWsL2KhfByw==", - "dev": true, - "requires": { + "dependencies": { "@rollup/pluginutils": "^3.0.9", "source-map-resolve": "^0.6.0" + }, + "engines": { + "node": ">=10.0.0" + }, + "peerDependencies": { + "@types/node": ">=10.0.0", + "rollup": ">=0.31.2" + }, + "peerDependenciesMeta": { + "@types/node": { + "optional": true + } + } + }, + "node_modules/rollup-plugin-sourcemaps/node_modules/@rollup/pluginutils": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-3.1.0.tgz", + "integrity": "sha512-GksZ6pr6TpIjHm8h9lSQ8pi8BE9VeubNT0OMJ3B5uZJ8pz73NPiqOtCog/x2/QzM1ENChPKxMDhiQuRHsqc+lg==", + "dependencies": { + "@types/estree": "0.0.39", + "estree-walker": "^1.0.1", + "picomatch": "^2.2.2" + }, + "engines": { + "node": ">= 8.0.0" + }, + "peerDependencies": { + "rollup": "^1.20.0||^2.0.0" + } + }, + "node_modules/rollup-plugin-sourcemaps/node_modules/@types/estree": { + "version": "0.0.39", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.39.tgz", + "integrity": "sha512-EYNwp3bU+98cpU4lAWYYL7Zz+2gryWH1qbdDTidVd6hkiR6weksdbMadyXKXNPEkQFhXM+hVO9ZygomHXp+AIw==" + }, + "node_modules/rollup-plugin-sourcemaps/node_modules/estree-walker": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-1.0.1.tgz", + "integrity": "sha512-1fMXF3YP4pZZVozF8j/ZLfvnR8NSIljt56UhbZ5PeeDmmGHpgpdwQt7ITlGvYaQukCvuBRMLEiKiYC+oeIg4cg==" + }, + "node_modules/rollup-plugin-sourcemaps/node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" } }, - "run-async": { + "node_modules/run-async": { "version": "2.4.1", "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.4.1.tgz", "integrity": "sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==", - "dev": true + "engines": { + "node": ">=0.12.0" + } }, - "run-parallel": { + "node_modules/run-parallel": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", - "dev": true, - "requires": { + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "dependencies": { "queue-microtask": "^1.2.2" } }, - "run-queue": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/run-queue/-/run-queue-1.0.3.tgz", - "integrity": "sha512-ntymy489o0/QQplUDnpYAYUsO50K9SBrIVaKCWDOJzYJts0f9WH9RFJkyagebkw5+y1oi00R7ynNW/d12GBumg==", - "dev": true, - "requires": { - "aproba": "^1.1.1" - } - }, - "rxjs": { - "version": "6.6.7", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", - "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", - "requires": { - "tslib": "^1.9.0" + "node_modules/rxjs": { + "version": "7.6.0", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.6.0.tgz", + "integrity": "sha512-DDa7d8TFNUalGC9VqXvQ1euWNN7sc63TrUCuM9J998+ViviahMIjKSOU7rfcgFOF+FCD71BhDRv4hrFz+ImDLQ==", + "dependencies": { + "tslib": "^2.1.0" } }, - "safe-buffer": { + "node_modules/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==", - "dev": true + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] }, - "safe-regex": { + "node_modules/safe-regex-test": { "version": "1.1.0", - "resolved": "https://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz", - "integrity": "sha512-aJXcif4xnaNUzvUuC5gcb46oTS7zvg4jpMTnuqtrEPlR3vFr4pxtdTwaF1Qs3Enjn9HK+ZlwQui+a7z0SywIzg==", - "dev": true, - "requires": { - "ret": "~0.1.10" - } - }, - "safe-regex-test": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.0.0.tgz", - "integrity": "sha512-JBUUzyOgEwXQY1NuPtvcj/qcBDbDmEvWufhlnXZIm75DEHp+afM1r1ujJpJsV/gSM4t59tpDyPi1sd6ZaPFfsA==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.1.3", - "is-regex": "^1.1.4" + "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.1.0.tgz", + "integrity": "sha512-x/+Cz4YrimQxQccJf5mKEbIa1NzeCRNI5Ecl/ekmlYaampdNLPalVyIcCZNNH3MvmqBugV5TMYZXv0ljslUlaw==", + "devOptional": true, + "dependencies": { + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "is-regex": "^1.2.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "safer-buffer": { + "node_modules/safer-buffer": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", - "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", - "dev": true + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" }, - "sass": { - "version": "1.26.3", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.26.3.tgz", - "integrity": "sha512-5NMHI1+YFYw4sN3yfKjpLuV9B5l7MqQ6FlkTcC4FT+oHbBRUZoSjHrrt/mE0nFXJyY2kQtU9ou9HxvFVjLFuuw==", - "dev": true, - "requires": { - "chokidar": ">=2.0.0 <4.0.0" + "node_modules/sass": { + "version": "1.54.4", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.54.4.tgz", + "integrity": "sha512-3tmF16yvnBwtlPrNBHw/H907j8MlOX8aTBnlNX1yrKx24RKcJGPyLhFUwkoKBKesR3unP93/2z14Ll8NicwQUA==", + "dependencies": { + "chokidar": ">=3.0.0 <4.0.0", + "immutable": "^4.0.0", + "source-map-js": ">=0.6.2 <2.0.0" + }, + "bin": { + "sass": "sass.js" + }, + "engines": { + "node": ">=12.0.0" } }, - "sass-loader": { - "version": "8.0.2", - "resolved": "https://registry.npmjs.org/sass-loader/-/sass-loader-8.0.2.tgz", - "integrity": "sha512-7o4dbSK8/Ol2KflEmSco4jTjQoV988bM82P9CZdmo9hR3RLnvNc0ufMNdMrB0caq38JQ/FgF4/7RcbcfKzxoFQ==", - "dev": true, - "requires": { - "clone-deep": "^4.0.1", - "loader-utils": "^1.2.3", - "neo-async": "^2.6.1", - "schema-utils": "^2.6.1", - "semver": "^6.3.0" - }, + "node_modules/sass-loader": { + "version": "13.0.2", + "resolved": "https://registry.npmjs.org/sass-loader/-/sass-loader-13.0.2.tgz", + "integrity": "sha512-BbiqbVmbfJaWVeOOAu2o7DhYWtcNmTfvroVgFXa6k2hHheMxNAeDHLNoDy/Q5aoaVlz0LH+MbMktKwm9vN/j8Q==", "dependencies": { - "json5": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz", - "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==", - "dev": true, - "requires": { - "minimist": "^1.2.0" - } + "klona": "^2.0.4", + "neo-async": "^2.6.2" + }, + "engines": { + "node": ">= 14.15.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "fibers": ">= 3.1.0", + "node-sass": "^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0", + "sass": "^1.3.0", + "sass-embedded": "*", + "webpack": "^5.0.0" + }, + "peerDependenciesMeta": { + "fibers": { + "optional": true + }, + "node-sass": { + "optional": true }, - "loader-utils": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.2.tgz", - "integrity": "sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==", - "dev": true, - "requires": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^1.0.1" - } + "sass": { + "optional": true }, - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true + "sass-embedded": { + "optional": true } } }, - "saucelabs": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/saucelabs/-/saucelabs-1.5.0.tgz", - "integrity": "sha512-jlX3FGdWvYf4Q3LFfFWS1QvPg3IGCGWxIc8QBFdPTbpTJnt/v17FHXYVAn7C8sHf1yUXo2c7yIM0isDryfYtHQ==", - "dev": true, - "requires": { - "https-proxy-agent": "^2.2.1" - } - }, - "sax": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", - "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==", - "dev": true + "node_modules/sax": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/sax/-/sax-1.4.1.tgz", + "integrity": "sha512-+aWOz7yVScEGoKNd4PA10LZ8sk0A/z5+nXQG5giUO5rprX9jgYsTdov9qCchZiPIZezbZH+jRut8nPodFAX4Jg==", + "optional": true }, - "schema-utils": { + "node_modules/schema-utils": { "version": "2.7.1", "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-2.7.1.tgz", "integrity": "sha512-SHiNtMOUGWBQJwzISiVYKu82GiV4QYGePp3odlY1tuKO7gPtphAT5R/py0fA6xtbgLL/RvtJZnU9b8s0F1q0Xg==", - "dev": true, - "requires": { + "dependencies": { "@types/json-schema": "^7.0.5", "ajv": "^6.12.4", "ajv-keywords": "^3.5.2" }, - "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" - } - } + "engines": { + "node": ">= 8.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/schema-utils/node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "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" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" } }, - "select-hose": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/select-hose/-/select-hose-2.0.0.tgz", - "integrity": "sha512-mEugaLK+YfkijB4fx0e6kImuJdCIt2LxCRcbEYPqRGCs4F2ogyfZU5IAZRdjCP8JPq2AtdNoC/Dux63d9Kiryg==", - "dev": true - }, - "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": "sha512-HXdTB7lvMwcb55XFfrTM8CPr/IYREk4hVBFaQ4b/6nInrluSL86hfHm7vu0luYKCfyBZp2trCjpc8caC3vVM3w==", - "dev": true, - "requires": { - "os-tmpdir": "~1.0.1" - } - } + "node_modules/schema-utils/node_modules/ajv-keywords": { + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", + "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", + "peerDependencies": { + "ajv": "^6.9.1" } }, - "selfsigned": { - "version": "1.10.14", - "resolved": "https://registry.npmjs.org/selfsigned/-/selfsigned-1.10.14.tgz", - "integrity": "sha512-lkjaiAye+wBZDCBsu5BGi0XiLRxeUlsGod5ZP924CRSEoGuZAw/f7y9RKu28rwTfiHVhdavhB0qH0INV6P1lEA==", - "dev": true, - "requires": { - "node-forge": "^0.10.0" - } + "node_modules/schema-utils/node_modules/json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==" }, - "semver": { - "version": "7.1.3", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.1.3.tgz", - "integrity": "sha512-ekM0zfiA9SCBlsKa2X1hxyxiI4L3B6EbVJkkdgQXnSEEaHlGdvyodMruTiulSRWMMB4NeIuYNMC9rTKTz97GxA==", - "dev": true + "node_modules/select-hose": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/select-hose/-/select-hose-2.0.0.tgz", + "integrity": "sha512-mEugaLK+YfkijB4fx0e6kImuJdCIt2LxCRcbEYPqRGCs4F2ogyfZU5IAZRdjCP8JPq2AtdNoC/Dux63d9Kiryg==" }, - "semver-diff": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/semver-diff/-/semver-diff-3.1.1.tgz", - "integrity": "sha512-GX0Ix/CJcHyB8c4ykpHGIAvLyOwOobtM/8d+TQkAd81/bEjgPHrfba41Vpesr7jX/t8Uh+R3EX9eAS5be+jQYg==", - "dev": true, - "requires": { - "semver": "^6.3.0" - }, + "node_modules/selfsigned": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/selfsigned/-/selfsigned-2.4.1.tgz", + "integrity": "sha512-th5B4L2U+eGLq1TVh7zNRGBapioSORUeymIydxgFpwww9d2qyKvtuPU2jJuHvYAwwqi2Y596QBL3eEqcPEYL8Q==", "dependencies": { - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - } + "@types/node-forge": "^1.3.0", + "node-forge": "^1" + }, + "engines": { + "node": ">=10" } }, - "semver-dsl": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/semver-dsl/-/semver-dsl-1.0.1.tgz", - "integrity": "sha512-e8BOaTo007E3dMuQQTnPdalbKTABKNS7UxoBIDnwOqRa+QwMrCPjynB8zAlPF6xlqUfdLPPLIJ13hJNmhtq8Ng==", - "dev": true, - "requires": { - "semver": "^5.3.0" - }, + "node_modules/semver": { + "version": "7.5.3", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.3.tgz", + "integrity": "sha512-QBlUtyVk/5EeHbi7X0fw6liDZc7BBmEaSYn01fMU1OUYbf6GPsbTtd8WmnqbI20SeycoHSeiybkE/q1Q+qlThQ==", "dependencies": { - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "dev": true - } + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" } }, - "semver-intersect": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/semver-intersect/-/semver-intersect-1.4.0.tgz", - "integrity": "sha512-d8fvGg5ycKAq0+I6nfWeCx6ffaWJCsBYU0H2Rq56+/zFePYfT8mXkB3tWBSjR5BerkHNZ5eTPIk1/LBYas35xQ==", - "dev": true, - "requires": { - "semver": "^5.0.0" - }, + "node_modules/semver/node_modules/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==", "dependencies": { - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "dev": true - } + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" } }, - "send": { - "version": "0.18.0", - "resolved": "https://registry.npmjs.org/send/-/send-0.18.0.tgz", - "integrity": "sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==", - "dev": true, - "requires": { + "node_modules/semver/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + }, + "node_modules/send": { + "version": "0.19.0", + "resolved": "https://registry.npmjs.org/send/-/send-0.19.0.tgz", + "integrity": "sha512-dW41u5VfLXu8SJh5bwRmyYUbAoSB3c9uQh6L8h/KtsFREPWpbX1lrljJo186Jc4nmci/sGUZ9a0a0J2zgfq2hw==", + "dependencies": { "debug": "2.6.9", "depd": "2.0.0", "destroy": "1.2.0", @@ -11708,53 +10349,60 @@ "range-parser": "~1.2.1", "statuses": "2.0.1" }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/send/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "requires": { - "ms": "2.0.0" - }, - "dependencies": { - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "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 - }, - "statuses": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", - "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", - "dev": true - } + "ms": "2.0.0" } }, - "serialize-javascript": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-4.0.0.tgz", - "integrity": "sha512-GaNA54380uFefWghODBWEGisLZFj00nS5ACs6yHa9nLqlLpVLO8ChDGeKRjZnV4Nh4n0Qi7nhYZD/9fCPzEqkw==", - "dev": true, - "requires": { + "node_modules/send/node_modules/debug/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" + }, + "node_modules/send/node_modules/mime": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", + "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", + "bin": { + "mime": "cli.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/send/node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==" + }, + "node_modules/send/node_modules/statuses": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", + "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/serialize-javascript": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.2.tgz", + "integrity": "sha512-Saa1xPByTTq2gdeFZYLLo+RFE35NHZkAbqZeWNd3BpzppeVisAqpDjcp8dyf6uIvEqJRd46jemmyA4iFIeVk8g==", + "dependencies": { "randombytes": "^2.1.0" } }, - "serve-index": { + "node_modules/serve-index": { "version": "1.9.1", "resolved": "https://registry.npmjs.org/serve-index/-/serve-index-1.9.1.tgz", "integrity": "sha512-pXHfKNP4qujrtteMrSBb0rc8HJ9Ms/GrXwcUtUtD5s4ewDJI8bT3Cz2zTVRMKtri49pLx2e0Ya8ziP5Ya2pZZw==", - "dev": true, - "requires": { + "dependencies": { "accepts": "~1.3.4", "batch": "0.6.1", "debug": "2.6.9", @@ -11763,3771 +10411,1535 @@ "mime-types": "~2.1.17", "parseurl": "~1.3.2" }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/serve-index/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "depd": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", - "integrity": "sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==", - "dev": true - }, - "http-errors": { - "version": "1.6.3", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz", - "integrity": "sha512-lks+lVC8dgGyh97jxvxeYTWQFvh4uw4yC12gVl63Cg30sjPX4wuGcdkICVXDAESr6OJGjqGA8Iz5mkeN6zlD7A==", - "dev": true, - "requires": { - "depd": "~1.1.2", - "inherits": "2.0.3", - "setprototypeof": "1.1.0", - "statuses": ">= 1.4.0 < 2" - } - }, - "inherits": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "integrity": "sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw==", - "dev": true - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true - }, - "setprototypeof": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz", - "integrity": "sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==", - "dev": true - } + "ms": "2.0.0" } }, - "serve-static": { - "version": "1.15.0", - "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.15.0.tgz", - "integrity": "sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==", - "dev": true, - "requires": { - "encodeurl": "~1.0.2", + "node_modules/serve-index/node_modules/depd": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", + "integrity": "sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/serve-index/node_modules/http-errors": { + "version": "1.6.3", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz", + "integrity": "sha512-lks+lVC8dgGyh97jxvxeYTWQFvh4uw4yC12gVl63Cg30sjPX4wuGcdkICVXDAESr6OJGjqGA8Iz5mkeN6zlD7A==", + "dependencies": { + "depd": "~1.1.2", + "inherits": "2.0.3", + "setprototypeof": "1.1.0", + "statuses": ">= 1.4.0 < 2" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/serve-index/node_modules/inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw==" + }, + "node_modules/serve-index/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" + }, + "node_modules/serve-index/node_modules/setprototypeof": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz", + "integrity": "sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==" + }, + "node_modules/serve-static": { + "version": "1.16.2", + "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.16.2.tgz", + "integrity": "sha512-VqpjJZKadQB/PEbEwvFdO43Ax5dFBZ2UECszz8bQ7pi7wt//PWe1P6MN7eCnjsatYtBT6EuiClbjSWP2WrIoTw==", + "dependencies": { + "encodeurl": "~2.0.0", "escape-html": "~1.0.3", "parseurl": "~1.3.3", - "send": "0.18.0" + "send": "0.19.0" + }, + "engines": { + "node": ">= 0.8.0" } }, - "set-blocking": { + "node_modules/serve-static/node_modules/encodeurl": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", - "integrity": "sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==", - "dev": true - }, - "set-value": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/set-value/-/set-value-2.0.1.tgz", - "integrity": "sha512-JxHc1weCN68wRY0fhCoXpyK55m/XPHafOmK4UWD7m2CI14GMcFypt4w/0+NV5f/ZMby2F6S2wwA7fgynh9gWSw==", - "dev": true, - "requires": { - "extend-shallow": "^2.0.1", - "is-extendable": "^0.1.1", - "is-plain-object": "^2.0.3", - "split-string": "^3.0.1" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - }, - "is-extendable": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", - "integrity": "sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==", - "dev": true - } + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-2.0.0.tgz", + "integrity": "sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg==", + "engines": { + "node": ">= 0.8" } }, - "setimmediate": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", - "integrity": "sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA==", + "node_modules/set-blocking": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", + "integrity": "sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==", "dev": true }, - "setprototypeof": { + "node_modules/setprototypeof": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", - "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==", - "dev": true - }, - "sha.js": { - "version": "2.4.11", - "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz", - "integrity": "sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==", - "dev": true, - "requires": { - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" - } + "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==" }, - "shallow-clone": { + "node_modules/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": { + "dependencies": { "kind-of": "^6.0.2" + }, + "engines": { + "node": ">=8" } }, - "shebang-command": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", - "integrity": "sha512-EV3L1+UQWGor21OmnvojK36mhg+TyIKDh3iFBKBohr5xeXIhNBcx8oWdgkTEEQ+BEFFYdLRuqMfd5L84N1V5Vg==", - "dev": true, - "requires": { - "shebang-regex": "^1.0.0" + "node_modules/shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "dependencies": { + "shebang-regex": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "engines": { + "node": ">=8" + } + }, + "node_modules/side-channel": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.1.0.tgz", + "integrity": "sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw==", + "dependencies": { + "es-errors": "^1.3.0", + "object-inspect": "^1.13.3", + "side-channel-list": "^1.0.0", + "side-channel-map": "^1.0.1", + "side-channel-weakmap": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "shebang-regex": { + "node_modules/side-channel-list": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", - "integrity": "sha512-wpoSFAxys6b2a2wHZ1XpDSgD7N9iVjg29Ph9uV/uaP9Ex/KXlkTZTeddxDPSYQpgvzKLGJke2UU0AzoGCjNIvQ==", - "dev": true + "resolved": "https://registry.npmjs.org/side-channel-list/-/side-channel-list-1.0.0.tgz", + "integrity": "sha512-FCLHtRD/gnpCiCHEiJLOwdmFP+wzCmDEkc9y7NsYxeF4u7Btsn1ZuwgwJGxImImHicJArLP4R0yX4c2KCrMrTA==", + "dependencies": { + "es-errors": "^1.3.0", + "object-inspect": "^1.13.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, - "shell-quote": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.8.0.tgz", - "integrity": "sha512-QHsz8GgQIGKlRi24yFc6a6lN69Idnx634w49ay6+jA5yFh7a1UY+4Rp6HPx/L/1zcEDPEij8cIsiqR6bQsE5VQ==", - "dev": true + "node_modules/side-channel-map": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/side-channel-map/-/side-channel-map-1.0.1.tgz", + "integrity": "sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA==", + "dependencies": { + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.5", + "object-inspect": "^1.13.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, - "side-channel": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", - "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", - "dev": true, - "requires": { - "call-bind": "^1.0.0", - "get-intrinsic": "^1.0.2", - "object-inspect": "^1.9.0" + "node_modules/side-channel-weakmap": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/side-channel-weakmap/-/side-channel-weakmap-1.0.2.tgz", + "integrity": "sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A==", + "dependencies": { + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.5", + "object-inspect": "^1.13.3", + "side-channel-map": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "signal-exit": { + "node_modules/signal-exit": { "version": "3.0.7", "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", - "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", - "dev": true + "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==" }, - "simple-swizzle": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/simple-swizzle/-/simple-swizzle-0.2.2.tgz", - "integrity": "sha512-JA//kQgZtbuY83m+xT+tXJkmJncGMTFT+C+g2h2R9uxkYIrE2yy9sgmcLhCnw57/WSD+Eh3J97FPEDFnbXnDUg==", - "dev": true, - "requires": { - "is-arrayish": "^0.3.1" + "node_modules/slash": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-4.0.0.tgz", + "integrity": "sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==", + "engines": { + "node": ">=12" }, - "dependencies": { - "is-arrayish": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.3.2.tgz", - "integrity": "sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==", - "dev": true - } + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "slash": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", - "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", - "dev": true - }, - "smart-buffer": { + "node_modules/smart-buffer": { "version": "4.2.0", "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.2.0.tgz", "integrity": "sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==", - "dev": true - }, - "snapdragon": { - "version": "0.8.2", - "resolved": "https://registry.npmjs.org/snapdragon/-/snapdragon-0.8.2.tgz", - "integrity": "sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg==", "dev": true, - "requires": { - "base": "^0.11.1", - "debug": "^2.2.0", - "define-property": "^0.2.5", - "extend-shallow": "^2.0.1", - "map-cache": "^0.2.2", - "source-map": "^0.5.6", - "source-map-resolve": "^0.5.0", - "use": "^3.1.0" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA==", - "dev": true, - "requires": { - "is-descriptor": "^0.1.0" - } - }, - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - }, - "is-accessor-descriptor": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", - "integrity": "sha512-e1BM1qnDbMRG3ll2U9dSK0UMHuWOs3pY3AtcFsmvwPtKL3MML/Q86i+GilLfvqEs4GW+ExB91tQ3Ig9noDIZ+A==", - "dev": true, - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "is-data-descriptor": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", - "integrity": "sha512-+w9D5ulSoBNlmw9OHn3U2v51SyoCd0he+bB3xMl62oijhrspxowjU+AIcDY0N3iEJbUEkB15IlMASQsxYigvXg==", - "dev": true, - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "is-descriptor": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", - "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", - "dev": true, - "requires": { - "is-accessor-descriptor": "^0.1.6", - "is-data-descriptor": "^0.1.4", - "kind-of": "^5.0.0" - } - }, - "is-extendable": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", - "integrity": "sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==", - "dev": true - }, - "kind-of": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", - "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", - "dev": true - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true - }, - "source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==", - "dev": true - }, - "source-map-resolve": { - "version": "0.5.3", - "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.3.tgz", - "integrity": "sha512-Htz+RnsXWk5+P2slx5Jh3Q66vhQj1Cllm0zvnaY98+NFx+Dv2CF/f5O/t8x+KaNdrdIAsruNzoh/KpialbqAnw==", - "dev": true, - "requires": { - "atob": "^2.1.2", - "decode-uri-component": "^0.2.0", - "resolve-url": "^0.2.1", - "source-map-url": "^0.4.0", - "urix": "^0.1.0" - } - } - } - }, - "snapdragon-node": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/snapdragon-node/-/snapdragon-node-2.1.1.tgz", - "integrity": "sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw==", - "dev": true, - "requires": { - "define-property": "^1.0.0", - "isobject": "^3.0.0", - "snapdragon-util": "^3.0.1" - }, - "dependencies": { - "define-property": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", - "integrity": "sha512-cZTYKFWspt9jZsMscWo8sc/5lbPC9Q0N5nBLgb+Yd915iL3udB1uFgS3B8YCx66UVHq018DAVFoee7x+gxggeA==", - "dev": true, - "requires": { - "is-descriptor": "^1.0.0" - } - } + "engines": { + "node": ">= 6.0.0", + "npm": ">= 3.0.0" } }, - "snapdragon-util": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/snapdragon-util/-/snapdragon-util-3.0.1.tgz", - "integrity": "sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ==", - "dev": true, - "requires": { - "kind-of": "^3.2.0" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } + "node_modules/socket.io": { + "version": "4.8.1", + "resolved": "https://registry.npmjs.org/socket.io/-/socket.io-4.8.1.tgz", + "integrity": "sha512-oZ7iUCxph8WYRHHcjBEc9unw3adt5CmSNlppj/5Q4k2RIrhl8Z5yY2Xr4j9zj0+wzVZ0bxmYoGSzKJnRl6A4yg==", + "devOptional": true, + "dependencies": { + "accepts": "~1.3.4", + "base64id": "~2.0.0", + "cors": "~2.8.5", + "debug": "~4.3.2", + "engine.io": "~6.6.0", + "socket.io-adapter": "~2.5.2", + "socket.io-parser": "~4.2.4" + }, + "engines": { + "node": ">=10.2.0" } }, - "socket.io": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/socket.io/-/socket.io-2.5.0.tgz", - "integrity": "sha512-gGunfS0od3VpwDBpGwVkzSZx6Aqo9uOcf1afJj2cKnKFAoyl16fvhpsUhmUFd4Ldbvl5JvRQed6eQw6oQp6n8w==", - "dev": true, - "requires": { - "debug": "~4.1.0", - "engine.io": "~3.6.0", - "has-binary2": "~1.0.2", - "socket.io-adapter": "~1.1.0", - "socket.io-client": "2.5.0", - "socket.io-parser": "~3.4.0" + "node_modules/socket.io-adapter": { + "version": "2.5.5", + "resolved": "https://registry.npmjs.org/socket.io-adapter/-/socket.io-adapter-2.5.5.tgz", + "integrity": "sha512-eLDQas5dzPgOWCk9GuuJC2lBqItuhKI4uxGgo9aIV7MYbk2h9Q6uULEh8WBzThoI7l+qU9Ast9fVUmkqPP9wYg==", + "devOptional": true, + "dependencies": { + "debug": "~4.3.4", + "ws": "~8.17.1" } }, - "socket.io-adapter": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/socket.io-adapter/-/socket.io-adapter-1.1.2.tgz", - "integrity": "sha512-WzZRUj1kUjrTIrUKpZLEzFZ1OLj5FwLlAFQs9kuZJzJi5DKdU7FsWc36SNmA8iDOtwBQyT8FkrriRM8vXLYz8g==", - "dev": true - }, - "socket.io-client": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/socket.io-client/-/socket.io-client-2.5.0.tgz", - "integrity": "sha512-lOO9clmdgssDykiOmVQQitwBAF3I6mYcQAo7hQ7AM6Ny5X7fp8hIJ3HcQs3Rjz4SoggoxA1OgrQyY8EgTbcPYw==", - "dev": true, - "requires": { - "backo2": "1.0.2", - "component-bind": "1.0.0", - "component-emitter": "~1.3.0", - "debug": "~3.1.0", - "engine.io-client": "~3.5.0", - "has-binary2": "~1.0.2", - "indexof": "0.0.1", - "parseqs": "0.0.6", - "parseuri": "0.0.6", - "socket.io-parser": "~3.3.0", - "to-array": "0.1.4" - }, + "node_modules/socket.io-parser": { + "version": "4.2.4", + "resolved": "https://registry.npmjs.org/socket.io-parser/-/socket.io-parser-4.2.4.tgz", + "integrity": "sha512-/GbIKmo8ioc+NIWIhwdecY0ge+qVBSMdgxGygevmdHj24bsfgtCmcUUcQ5ZzcylGFHsN3k4HB4Cgkl96KVnuew==", + "devOptional": true, "dependencies": { - "debug": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", - "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "isarray": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.1.tgz", - "integrity": "sha512-c2cu3UxbI+b6kR3fy0nRnAhodsvR9dx7U5+znCOzdj6IfP3upFURTr0Xl5BlQZNKZjEtxrmVyfSdeE3O57smoQ==", - "dev": true - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true - }, - "socket.io-parser": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/socket.io-parser/-/socket.io-parser-3.3.3.tgz", - "integrity": "sha512-qOg87q1PMWWTeO01768Yh9ogn7chB9zkKtQnya41Y355S0UmpXgpcrFwAgjYJxu9BdKug5r5e9YtVSeWhKBUZg==", - "dev": true, - "requires": { - "component-emitter": "~1.3.0", - "debug": "~3.1.0", - "isarray": "2.0.1" - } - } + "@socket.io/component-emitter": "~3.1.0", + "debug": "~4.3.1" + }, + "engines": { + "node": ">=10.0.0" } }, - "socket.io-parser": { - "version": "3.4.2", - "resolved": "https://registry.npmjs.org/socket.io-parser/-/socket.io-parser-3.4.2.tgz", - "integrity": "sha512-QFZBaZDNqZXeemwejc7D39jrq2eGK/qZuVDiMPKzZK1hLlNvjGilGt4ckfQZeVX4dGmuPzCytN9ZW1nQlEWjgA==", - "dev": true, - "requires": { - "component-emitter": "1.2.1", - "debug": "~4.1.0", - "isarray": "2.0.1" - }, + "node_modules/sockjs": { + "version": "0.3.24", + "resolved": "https://registry.npmjs.org/sockjs/-/sockjs-0.3.24.tgz", + "integrity": "sha512-GJgLTZ7vYb/JtPSSZ10hsOYIvEYsjbNU+zPdIHcUaWVNUEPivzxku31865sSSud0Da0W4lEeOPlmw93zLQchuQ==", "dependencies": { - "component-emitter": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.2.1.tgz", - "integrity": "sha512-jPatnhd33viNplKjqXKRkGU345p263OIWzDL2wH3LGIGp5Kojo+uXizHmOADRvhGFFTnJqX3jBAKP6vvmSDKcA==", - "dev": true - }, - "isarray": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.1.tgz", - "integrity": "sha512-c2cu3UxbI+b6kR3fy0nRnAhodsvR9dx7U5+znCOzdj6IfP3upFURTr0Xl5BlQZNKZjEtxrmVyfSdeE3O57smoQ==", - "dev": true - } + "faye-websocket": "^0.11.3", + "uuid": "^8.3.2", + "websocket-driver": "^0.7.4" } }, - "sockjs": { - "version": "0.3.20", - "resolved": "https://registry.npmjs.org/sockjs/-/sockjs-0.3.20.tgz", - "integrity": "sha512-SpmVOVpdq0DJc0qArhF3E5xsxvaiqGNb73XfgBpK1y3UD5gs8DSo8aCTsuT5pX8rssdc2NDIzANwP9eCAiSdTA==", + "node_modules/socks": { + "version": "2.8.4", + "resolved": "https://registry.npmjs.org/socks/-/socks-2.8.4.tgz", + "integrity": "sha512-D3YaD0aRxR3mEcqnidIs7ReYJFVzWdd6fXJYUM8ixcQcJRGTka/b3saV0KflYhyVJXKhb947GndU35SxYNResQ==", "dev": true, - "requires": { - "faye-websocket": "^0.10.0", - "uuid": "^3.4.0", - "websocket-driver": "0.6.5" - }, "dependencies": { - "uuid": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", - "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==", - "dev": true - } + "ip-address": "^9.0.5", + "smart-buffer": "^4.2.0" + }, + "engines": { + "node": ">= 10.0.0", + "npm": ">= 3.0.0" } }, - "sockjs-client": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/sockjs-client/-/sockjs-client-1.4.0.tgz", - "integrity": "sha512-5zaLyO8/nri5cua0VtOrFXBPK1jbL4+1cebT/mmKA1E1ZXOvJrII75bPu0l0k843G/+iAbhEqzyKr0w/eCCj7g==", + "node_modules/socks-proxy-agent": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-7.0.0.tgz", + "integrity": "sha512-Fgl0YPZ902wEsAyiQ+idGd1A7rSFx/ayC1CQVMw5P+EQx2V0SgpGtf6OKFhVjPflPUl9YMmEOnmfjCdMUsygww==", "dev": true, - "requires": { - "debug": "^3.2.5", - "eventsource": "^1.0.7", - "faye-websocket": "~0.11.1", - "inherits": "^2.0.3", - "json3": "^3.3.2", - "url-parse": "^1.4.3" - }, "dependencies": { - "debug": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - }, - "faye-websocket": { - "version": "0.11.4", - "resolved": "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.11.4.tgz", - "integrity": "sha512-CzbClwlXAuiRQAlUyfqPgvPoNKTckTPGfwZV4ZdAhVcP2lh9KUxJg2b5GkE7XbjKQ3YJnQ9z6D9ntLAlB+tP8g==", - "dev": true, - "requires": { - "websocket-driver": ">=0.5.1" - } - } + "agent-base": "^6.0.2", + "debug": "^4.3.3", + "socks": "^2.6.2" + }, + "engines": { + "node": ">= 10" } }, - "socks": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/socks/-/socks-2.3.3.tgz", - "integrity": "sha512-o5t52PCNtVdiOvzMry7wU4aOqYWL0PeCXRWBEiJow4/i/wr+wpsJQ9awEu1EonLIqsfGd5qSgDdxEOvCdmBEpA==", - "dev": true, - "requires": { - "ip": "1.1.5", - "smart-buffer": "^4.1.0" + "node_modules/source-map": { + "version": "0.7.4", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz", + "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==", + "engines": { + "node": ">= 8" } }, - "socks-proxy-agent": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-4.0.2.tgz", - "integrity": "sha512-NT6syHhI9LmuEMSK6Kd2V7gNv5KFZoLE7V5udWmn0de+3Mkj3UMA/AJPLyeNUVmElCurSHtUdM3ETpR3z770Wg==", - "dev": true, - "requires": { - "agent-base": "~4.2.1", - "socks": "~2.3.2" - }, - "dependencies": { - "agent-base": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-4.2.1.tgz", - "integrity": "sha512-JVwXMr9nHYTUXsBFKUqhJwvlcYU/blreOEUkhNR2eXZIvwd+c+o5V4MgDPKWnMS/56awN3TRzIP+KoPn+roQtg==", - "dev": true, - "requires": { - "es6-promisify": "^5.0.0" - } - } + "node_modules/source-map-js": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.1.tgz", + "integrity": "sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==", + "engines": { + "node": ">=0.10.0" } }, - "sort-keys": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/sort-keys/-/sort-keys-1.1.2.tgz", - "integrity": "sha512-vzn8aSqKgytVik0iwdBEi+zevbTYZogewTUM6dtpmGwEcdzbub/TX4bCzRhebDCRC3QzXgJsLRKB2V/Oof7HXg==", - "dev": true, - "requires": { - "is-plain-obj": "^1.0.0" + "node_modules/source-map-loader": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/source-map-loader/-/source-map-loader-4.0.0.tgz", + "integrity": "sha512-i3KVgM3+QPAHNbGavK+VBq03YoJl24m9JWNbLgsjTj8aJzXG9M61bantBTNBt7CNwY2FYf+RJRYJ3pzalKjIrw==", + "dependencies": { + "abab": "^2.0.6", + "iconv-lite": "^0.6.3", + "source-map-js": "^1.0.2" + }, + "engines": { + "node": ">= 14.15.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^5.72.1" } }, - "source-list-map": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/source-list-map/-/source-list-map-2.0.1.tgz", - "integrity": "sha512-qnQ7gVMxGNxsiL4lEuJwe/To8UnK7fAnmbGEEH8RpLouuKbeEm0lhbQVFIrNSuB+G7tVrAlVsZgETT5nljf+Iw==", - "dev": true - }, - "source-map": { - "version": "0.7.3", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz", - "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==", - "dev": true - }, - "source-map-loader": { - "version": "0.2.4", - "resolved": "https://registry.npmjs.org/source-map-loader/-/source-map-loader-0.2.4.tgz", - "integrity": "sha512-OU6UJUty+i2JDpTItnizPrlpOIBLmQbWMuBg9q5bVtnHACqw1tn9nNwqJLbv0/00JjnJb/Ee5g5WS5vrRv7zIQ==", - "dev": true, - "requires": { - "async": "^2.5.0", - "loader-utils": "^1.1.0" - }, - "dependencies": { - "json5": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz", - "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==", - "dev": true, - "requires": { - "minimist": "^1.2.0" - } - }, - "loader-utils": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.2.tgz", - "integrity": "sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==", - "dev": true, - "requires": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^1.0.1" - } - } + "node_modules/source-map-loader/node_modules/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==", + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3.0.0" + }, + "engines": { + "node": ">=0.10.0" } }, - "source-map-resolve": { + "node_modules/source-map-resolve": { "version": "0.6.0", "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.6.0.tgz", "integrity": "sha512-KXBr9d/fO/bWo97NXsPIAW1bFSBOuCnjbNTBMO7N59hsv5i9yzRDfcYwwt0l04+VqnKC+EwzvJZIP/qkuMgR/w==", - "dev": true, - "requires": { + "deprecated": "See https://github.com/lydell/source-map-resolve#deprecated", + "dependencies": { "atob": "^2.1.2", "decode-uri-component": "^0.2.0" } }, - "source-map-support": { + "node_modules/source-map-support": { "version": "0.5.21", "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", - "dev": true, - "requires": { + "dependencies": { "buffer-from": "^1.0.0", "source-map": "^0.6.0" - }, - "dependencies": { - "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-url": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/source-map-url/-/source-map-url-0.4.1.tgz", - "integrity": "sha512-cPiFOTLUKvJFIg4SKVScy4ilPPW6rFgMgfuZJPNoDuMs3nC1HbMUycBoJw77xFIp6z1UJQJOfx6C9GMH80DiTw==", - "dev": true + "node_modules/source-map-support/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "engines": { + "node": ">=0.10.0" + } }, - "sourcemap-codec": { + "node_modules/sourcemap-codec": { "version": "1.4.8", "resolved": "https://registry.npmjs.org/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz", "integrity": "sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==", - "dev": true + "deprecated": "Please use @jridgewell/sourcemap-codec instead" }, - "spdx-correct": { + "node_modules/spdx-correct": { "version": "3.2.0", "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.2.0.tgz", "integrity": "sha512-kN9dJbvnySHULIluDHy32WHRUu3Og7B9sbY7tsFLctQkIqnMh3hErYgdMjTYuqmcXX+lK5T1lnUt3G7zNswmZA==", "dev": true, - "requires": { + "dependencies": { "spdx-expression-parse": "^3.0.0", "spdx-license-ids": "^3.0.0" } }, - "spdx-exceptions": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz", - "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==", + "node_modules/spdx-exceptions": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.5.0.tgz", + "integrity": "sha512-PiU42r+xO4UbUS1buo3LPJkjlO7430Xn5SVAhdpzzsPHsjbYVflnnFdATgabnLude+Cqu25p6N+g2lw/PFsa4w==", "dev": true }, - "spdx-expression-parse": { + "node_modules/spdx-expression-parse": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", "dev": true, - "requires": { + "dependencies": { "spdx-exceptions": "^2.1.0", "spdx-license-ids": "^3.0.0" } }, - "spdx-license-ids": { - "version": "3.0.13", - "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.13.tgz", - "integrity": "sha512-XkD+zwiqXHikFZm4AX/7JSCXA98U5Db4AFd5XUg/+9UNtnH75+Z9KxtpYiJZx36mUDVOwH83pl7yvCer6ewM3w==", + "node_modules/spdx-license-ids": { + "version": "3.0.21", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.21.tgz", + "integrity": "sha512-Bvg/8F5XephndSK3JffaRqdT+gyhfqIPwDHpX80tJrF8QQRYMo8sNMeaZ2Dp5+jhwKnUmIOyFFQfHRkjJm5nXg==", "dev": true }, - "spdy": { + "node_modules/spdy": { "version": "4.0.2", "resolved": "https://registry.npmjs.org/spdy/-/spdy-4.0.2.tgz", "integrity": "sha512-r46gZQZQV+Kl9oItvl1JZZqJKGr+oEkB08A6BzkiR7593/7IbtuncXHd2YoYeTsG4157ZssMu9KYvUHLcjcDoA==", - "dev": true, - "requires": { + "dependencies": { "debug": "^4.1.0", "handle-thing": "^2.0.0", "http-deceiver": "^1.2.7", "select-hose": "^2.0.0", "spdy-transport": "^3.0.0" + }, + "engines": { + "node": ">=6.0.0" } }, - "spdy-transport": { + "node_modules/spdy-transport": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/spdy-transport/-/spdy-transport-3.0.0.tgz", "integrity": "sha512-hsLVFE5SjA6TCisWeJXFKniGGOpBgMLmerfO2aCyCU5s7nJ/rpAepqmFifv/GCbSbueEeAJJnmSQ2rKC/g8Fcw==", - "dev": true, - "requires": { + "dependencies": { "debug": "^4.1.0", "detect-node": "^2.0.4", "hpack.js": "^2.1.6", "obuf": "^1.1.2", "readable-stream": "^3.0.6", "wbuf": "^1.7.3" - }, - "dependencies": { - "readable-stream": { - "version": "3.6.2", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", - "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", - "dev": true, - "requires": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - } - } - } - }, - "speed-measure-webpack-plugin": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/speed-measure-webpack-plugin/-/speed-measure-webpack-plugin-1.3.1.tgz", - "integrity": "sha512-qVIkJvbtS9j/UeZumbdfz0vg+QfG/zxonAjzefZrqzkr7xOncLVXkeGbTpzd1gjCBM4PmVNkWlkeTVhgskAGSQ==", - "dev": true, - "requires": { - "chalk": "^2.0.1" - } - }, - "split-string": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/split-string/-/split-string-3.1.0.tgz", - "integrity": "sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw==", - "dev": true, - "requires": { - "extend-shallow": "^3.0.0" } }, - "sprintf-js": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.1.2.tgz", - "integrity": "sha512-VE0SOVEHCk7Qc8ulkWw3ntAzXuqf7S2lvwQaDLRnUeIEaKNQJzV6BwmLKhOqT61aGhfUMrXeaBk+oDGCzvhcug==", - "dev": true + "node_modules/sprintf-js": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==" }, - "sshpk": { - "version": "1.17.0", - "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.17.0.tgz", - "integrity": "sha512-/9HIEs1ZXGhSPE8X6Ccm7Nam1z8KcoCqPdI7ecm1N33EzAetWahvQWVqLZtaZQ+IDKX4IyA2o0gBzqIMkAagHQ==", - "dev": true, - "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" - } - }, - "ssri": { - "version": "8.0.1", - "resolved": "https://registry.npmjs.org/ssri/-/ssri-8.0.1.tgz", - "integrity": "sha512-97qShzy1AiyxvPNIkLWoGua7xoQzzPjQ0HAH4B0rWKo7SZ6USuPcrUiAFrws0UH8RrbWmgq3LMTObhPIHbbBeQ==", - "dev": true, - "requires": { + "node_modules/ssri": { + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/ssri/-/ssri-9.0.1.tgz", + "integrity": "sha512-o57Wcn66jMQvfHG1FlYbWeZWW/dHZhJXjpIcTfXldXEk5nz5lStPo3mK0OJQfGR3RbZUlbISexbljkJzuEj/8Q==", + "dependencies": { "minipass": "^3.1.1" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "stable": { - "version": "0.1.8", - "resolved": "https://registry.npmjs.org/stable/-/stable-0.1.8.tgz", - "integrity": "sha512-ji9qxRnOVfcuLDySj9qzhGSEFVobyt1kIOSkj1qZzYLzq7Tos/oUUWvotUPQLlrsidqsK6tBH89Bc9kL5zHA6w==", - "dev": true - }, - "static-extend": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/static-extend/-/static-extend-0.1.2.tgz", - "integrity": "sha512-72E9+uLc27Mt718pMHt9VMNiAL4LMsmDbBva8mxWUCkT07fSzEGMYUCk0XWY6lp0j6RBAG4cJ3mWuZv2OE3s0g==", - "dev": true, - "requires": { - "define-property": "^0.2.5", - "object-copy": "^0.1.0" - }, - "dependencies": { - "define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA==", - "dev": true, - "requires": { - "is-descriptor": "^0.1.0" - } - }, - "is-accessor-descriptor": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", - "integrity": "sha512-e1BM1qnDbMRG3ll2U9dSK0UMHuWOs3pY3AtcFsmvwPtKL3MML/Q86i+GilLfvqEs4GW+ExB91tQ3Ig9noDIZ+A==", - "dev": true, - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "is-data-descriptor": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", - "integrity": "sha512-+w9D5ulSoBNlmw9OHn3U2v51SyoCd0he+bB3xMl62oijhrspxowjU+AIcDY0N3iEJbUEkB15IlMASQsxYigvXg==", - "dev": true, - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "is-descriptor": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", - "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", - "dev": true, - "requires": { - "is-accessor-descriptor": "^0.1.6", - "is-data-descriptor": "^0.1.4", - "kind-of": "^5.0.0" - } - }, - "kind-of": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", - "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", - "dev": true - } - } - }, - "statuses": { + "node_modules/statuses": { "version": "1.5.0", "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", "integrity": "sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA==", - "dev": true - }, - "stream-browserify": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/stream-browserify/-/stream-browserify-2.0.2.tgz", - "integrity": "sha512-nX6hmklHs/gr2FuxYDltq8fJA1GDlxKQCz8O/IM4atRqBH8OORmBNgfvW5gG10GT/qQ9u0CzIvr2X5Pkt6ntqg==", - "dev": true, - "requires": { - "inherits": "~2.0.1", - "readable-stream": "^2.0.2" - } - }, - "stream-each": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/stream-each/-/stream-each-1.2.3.tgz", - "integrity": "sha512-vlMC2f8I2u/bZGqkdfLQW/13Zihpej/7PmSiMQsbYddxuTsJp8vRe2x2FvVExZg7FaOds43ROAuFJwPR4MTZLw==", - "dev": true, - "requires": { - "end-of-stream": "^1.1.0", - "stream-shift": "^1.0.0" - } - }, - "stream-http": { - "version": "2.8.3", - "resolved": "https://registry.npmjs.org/stream-http/-/stream-http-2.8.3.tgz", - "integrity": "sha512-+TSkfINHDo4J+ZobQLWiMouQYB+UVYFttRA94FpEzzJ7ZdqcL4uUUQ7WkdkI4DSozGmgBUE/a47L+38PenXhUw==", - "dev": true, - "requires": { - "builtin-status-codes": "^3.0.0", - "inherits": "^2.0.1", - "readable-stream": "^2.3.6", - "to-arraybuffer": "^1.0.0", - "xtend": "^4.0.0" + "engines": { + "node": ">= 0.6" } }, - "stream-shift": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/stream-shift/-/stream-shift-1.0.1.tgz", - "integrity": "sha512-AiisoFqQ0vbGcZgQPY1cdP2I76glaVA/RauYR4G4thNFgkTqr90yXTo4LYX60Jl+sIlPNHHdGSwo01AvbKUSVQ==", - "dev": true - }, - "streamroller": { + "node_modules/streamroller": { "version": "3.1.5", "resolved": "https://registry.npmjs.org/streamroller/-/streamroller-3.1.5.tgz", "integrity": "sha512-KFxaM7XT+irxvdqSP1LGLgNWbYN7ay5owZ3r/8t77p+EtSUAfUgtl7be3xtqtOmGUl9K9YPO2ca8133RlTjvKw==", - "dev": true, - "requires": { + "devOptional": true, + "dependencies": { "date-format": "^4.0.14", "debug": "^4.3.4", "fs-extra": "^8.1.0" }, - "dependencies": { - "debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", - "dev": true, - "requires": { - "ms": "2.1.2" - } - }, - "fs-extra": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", - "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==", - "dev": true, - "requires": { - "graceful-fs": "^4.2.0", - "jsonfile": "^4.0.0", - "universalify": "^0.1.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 - } + "engines": { + "node": ">=8.0" } }, - "strict-uri-encode": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/strict-uri-encode/-/strict-uri-encode-1.1.0.tgz", - "integrity": "sha512-R3f198pcvnB+5IpnBlRkphuE9n46WyVl8I39W/ZUTZLz4nqSP/oLYUrcnJrw462Ds8he4YKMov2efsTIw1BDGQ==", - "dev": true + "node_modules/string_decoder": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "dependencies": { + "safe-buffer": "~5.2.0" + } }, - "string-width": { + "node_modules/string-width": { "version": "4.2.3", "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "requires": { + "dependencies": { "emoji-regex": "^8.0.0", "is-fullwidth-code-point": "^3.0.0", "strip-ansi": "^6.0.1" - } - }, - "string.prototype.padend": { - "version": "3.1.4", - "resolved": "https://registry.npmjs.org/string.prototype.padend/-/string.prototype.padend-3.1.4.tgz", - "integrity": "sha512-67otBXoksdjsnXXRUq+KMVTdlVRZ2af422Y0aTyTjVaoQkGr3mxl2Bc5emi7dOQ3OGVVQQskmLEWwFXwommpNw==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4" - } - }, - "string.prototype.trim": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.7.tgz", - "integrity": "sha512-p6TmeT1T3411M8Cgg9wBTMRtY2q9+PNy9EV1i2lIXUN/btt763oIfxwN3RR8VU6wHX8j/1CFy0L+YuThm6bgOg==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4" - } - }, - "string.prototype.trimend": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.6.tgz", - "integrity": "sha512-JySq+4mrPf9EsDBEDYMOb/lM7XQLulwg5R/m1r0PXEFqrV0qHvl58sdTilSXtKOflCsK2E8jxf+GKC0T07RWwQ==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4" - } - }, - "string.prototype.trimstart": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.6.tgz", - "integrity": "sha512-omqjMDaY92pbn5HOX7f9IccLA+U1tA9GvtU4JrodiXFfYB7jPzzHpRzpglLAjtUV6bB557zwClJezTqnAiYnQA==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4" - } - }, - "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" }, - "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==", - "dev": true - } + "engines": { + "node": ">=8" } }, - "strip-ansi": { + "node_modules/strip-ansi": { "version": "6.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "requires": { + "dependencies": { "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" } }, - "strip-bom": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", - "integrity": "sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==", - "dev": true - }, - "strip-eof": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz", - "integrity": "sha512-7FCwGGmx8mD5xQd3RPUvnSpUXHM3BWuzjtpD4TXsfcZ9EL4azvVVUscFYwD9nx8Kh+uCBC00XBtAykoMHwTh8Q==", - "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": "sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ==", - "dev": true - }, - "style-loader": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/style-loader/-/style-loader-1.1.3.tgz", - "integrity": "sha512-rlkH7X/22yuwFYK357fMN/BxYOorfnfq0eD7+vqlemSK4wEcejFF1dg4zxP0euBW8NrYx2WZzZ8PPFevr7D+Kw==", - "dev": true, - "requires": { - "loader-utils": "^1.2.3", - "schema-utils": "^2.6.4" - }, - "dependencies": { - "json5": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz", - "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==", - "dev": true, - "requires": { - "minimist": "^1.2.0" - } - }, - "loader-utils": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.2.tgz", - "integrity": "sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==", - "dev": true, - "requires": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^1.0.1" - } - } - } - }, - "stylehacks": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/stylehacks/-/stylehacks-4.0.3.tgz", - "integrity": "sha512-7GlLk9JwlElY4Y6a/rmbH2MhVlTyVmiJd1PfTCqFaIBEGMYNsrO/v3SeGTdhBThLg4Z+NbOk/qFMwCa+J+3p/g==", - "dev": true, - "requires": { - "browserslist": "^4.0.0", - "postcss": "^7.0.0", - "postcss-selector-parser": "^3.0.0" - }, - "dependencies": { - "postcss-selector-parser": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-3.1.2.tgz", - "integrity": "sha512-h7fJ/5uWuRVyOtkO45pnt1Ih40CEleeyCHzipqAZO2e5H20g25Y48uYnFUiShvY4rZWNJ/Bib/KVPmanaCtOhA==", - "dev": true, - "requires": { - "dot-prop": "^5.2.0", - "indexes-of": "^1.0.1", - "uniq": "^1.0.1" - } - } + "node_modules/strip-final-newline": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz", + "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==", + "engines": { + "node": ">=6" } }, - "stylus": { - "version": "0.54.8", - "resolved": "https://registry.npmjs.org/stylus/-/stylus-0.54.8.tgz", - "integrity": "sha512-vr54Or4BZ7pJafo2mpf0ZcwA74rpuYCZbxrHBsH8kbcXOwSfvBFwsRfpGO5OD5fhG5HDCFW737PKaawI7OqEAg==", - "dev": true, - "requires": { - "css-parse": "~2.0.0", - "debug": "~3.1.0", + "node_modules/stylus": { + "version": "0.59.0", + "resolved": "https://registry.npmjs.org/stylus/-/stylus-0.59.0.tgz", + "integrity": "sha512-lQ9w/XIOH5ZHVNuNbWW8D822r+/wBSO/d6XvtyHLF7LW4KaCIDeVbvn5DF8fGCJAUCwVhVi/h6J0NUcnylUEjg==", + "dependencies": { + "@adobe/css-tools": "^4.0.1", + "debug": "^4.3.2", "glob": "^7.1.6", - "mkdirp": "~1.0.4", - "safer-buffer": "^2.1.2", "sax": "~1.2.4", - "semver": "^6.3.0", "source-map": "^0.7.3" }, + "bin": { + "stylus": "bin/stylus" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://opencollective.com/stylus" + } + }, + "node_modules/stylus-loader": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/stylus-loader/-/stylus-loader-7.0.0.tgz", + "integrity": "sha512-WTbtLrNfOfLgzTaR9Lj/BPhQroKk/LC1hfTXSUbrxmxgfUo3Y3LpmKRVA2R1XbjvTAvOfaian9vOyfv1z99E+A==", "dependencies": { - "debug": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", - "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "mkdirp": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", - "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", - "dev": true - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true - }, - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - } + "fast-glob": "^3.2.11", + "klona": "^2.0.5", + "normalize-path": "^3.0.0" + }, + "engines": { + "node": ">= 14.15.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "stylus": ">=0.52.4", + "webpack": "^5.0.0" } }, - "stylus-loader": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/stylus-loader/-/stylus-loader-3.0.2.tgz", - "integrity": "sha512-+VomPdZ6a0razP+zinir61yZgpw2NfljeSsdUF5kJuEzlo3khXhY19Fn6l8QQz1GRJGtMCo8nG5C04ePyV7SUA==", - "dev": true, - "requires": { - "loader-utils": "^1.0.2", - "lodash.clonedeep": "^4.5.0", - "when": "~3.6.x" - }, - "dependencies": { - "json5": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz", - "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==", - "dev": true, - "requires": { - "minimist": "^1.2.0" - } - }, - "loader-utils": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.2.tgz", - "integrity": "sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==", - "dev": true, - "requires": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^1.0.1" - } - } + "node_modules/stylus/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" } }, - "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" + "node_modules/stylus/node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "deprecated": "Glob versions prior to v9 are no longer supported", + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "supports-preserve-symlinks-flag": { + "node_modules/stylus/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/stylus/node_modules/sax": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", + "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==" + }, + "node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/supports-preserve-symlinks-flag": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", - "dev": true + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, - "svgo": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/svgo/-/svgo-1.3.2.tgz", - "integrity": "sha512-yhy/sQYxR5BkC98CY7o31VGsg014AKLEPxdfhora76l36hD9Rdy5NZA/Ocn6yayNPgSamYdtX2rFJdcv07AYVw==", + "node_modules/symbol-observable": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/symbol-observable/-/symbol-observable-4.0.0.tgz", + "integrity": "sha512-b19dMThMV4HVFynSAM1++gBHAbk2Tc/osgLIBZMKsyqh34jb2e8Os7T6ZW/Bt3pJFdBTd2JwAnAAEQV7rSNvcQ==", "dev": true, - "requires": { - "chalk": "^2.4.1", - "coa": "^2.0.2", - "css-select": "^2.0.0", - "css-select-base-adapter": "^0.1.1", - "css-tree": "1.0.0-alpha.37", - "csso": "^4.0.2", - "js-yaml": "^3.13.1", - "mkdirp": "~0.5.1", - "object.values": "^1.1.0", - "sax": "~1.2.4", - "stable": "^0.1.8", - "unquote": "~1.1.1", - "util.promisify": "~1.0.0" + "engines": { + "node": ">=0.10" } }, - "symbol-observable": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/symbol-observable/-/symbol-observable-1.2.0.tgz", - "integrity": "sha512-e900nM8RRtGhlV36KGEU9k65K3mPb1WV70OdjfxlG2EAuM1noi/E/BaW/uMhL7bPEssK8QV57vN3esixjUvcXQ==", - "dev": true - }, - "tapable": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/tapable/-/tapable-1.1.3.tgz", - "integrity": "sha512-4WK/bYZmj8xLr+HUCODHGF1ZFzsYffasLUgEiMBY4fgtltdO6B4WJtlSbPaDTLpYTcGVwM2qLnFTICEcNxs3kA==", - "dev": true + "node_modules/tapable": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz", + "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==", + "engines": { + "node": ">=6" + } }, - "tar": { - "version": "6.1.13", - "resolved": "https://registry.npmjs.org/tar/-/tar-6.1.13.tgz", - "integrity": "sha512-jdIBIN6LTIe2jqzay/2vtYLlBHa3JF42ot3h1dW8Q0PaAG4v8rm0cvpVePtau5C6OKXGGcgO9q2AMNSWxiLqKw==", - "dev": true, - "requires": { + "node_modules/tar": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/tar/-/tar-6.2.1.tgz", + "integrity": "sha512-DZ4yORTwrbTj/7MZYq2w+/ZFdI6OZ/f9SFHR+71gIVUZhOQPHzVCLpvRnPgyaMpfWxxk/4ONva3GQSyNIKRv6A==", + "dependencies": { "chownr": "^2.0.0", "fs-minipass": "^2.0.0", - "minipass": "^4.0.0", + "minipass": "^5.0.0", "minizlib": "^2.1.1", "mkdirp": "^1.0.3", "yallist": "^4.0.0" }, + "engines": { + "node": ">=10" + } + }, + "node_modules/tar/node_modules/minipass": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz", + "integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/tar/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + }, + "node_modules/terser": { + "version": "5.14.2", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.14.2.tgz", + "integrity": "sha512-oL0rGeM/WFQCUd0y2QrWxYnq7tfSuKBiqTjRPWrRgB46WD/kiwHwF8T23z78H6Q6kGCuuHcPB+KULHRdxvVGQA==", + "dependencies": { + "@jridgewell/source-map": "^0.3.2", + "acorn": "^8.5.0", + "commander": "^2.20.0", + "source-map-support": "~0.5.20" + }, + "bin": { + "terser": "bin/terser" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/terser-webpack-plugin": { + "version": "5.3.14", + "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.3.14.tgz", + "integrity": "sha512-vkZjpUjb6OMS7dhV+tILUW6BhpDR7P2L/aQSAv+Uwk+m8KATX9EccViHTJR2qDtACKPIYndLGCyl3FMo+r2LMw==", "dependencies": { - "chownr": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", - "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==", - "dev": true - }, - "minipass": { - "version": "4.2.5", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-4.2.5.tgz", - "integrity": "sha512-+yQl7SX3bIT83Lhb4BVorMAHVuqsskxRdlmO9kTpyukp8vsm2Sn/fUOV9xlnG8/a5JsypJzap21lz/y3FBMJ8Q==", - "dev": true + "@jridgewell/trace-mapping": "^0.3.25", + "jest-worker": "^27.4.5", + "schema-utils": "^4.3.0", + "serialize-javascript": "^6.0.2", + "terser": "^5.31.1" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^5.1.0" + }, + "peerDependenciesMeta": { + "@swc/core": { + "optional": true }, - "mkdirp": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", - "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", - "dev": true + "esbuild": { + "optional": true }, - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true + "uglify-js": { + "optional": true } } }, - "term-size": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/term-size/-/term-size-2.2.1.tgz", - "integrity": "sha512-wK0Ri4fOGjv/XPy8SBHZChl8CM7uMc5VML7SqiQ0zG7+J5Vr+RMQDoHa2CNT6KHUnTGIXH34UDMkPzAUyapBZg==", - "dev": true + "node_modules/terser-webpack-plugin/node_modules/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==" }, - "terser": { - "version": "4.6.10", - "resolved": "https://registry.npmjs.org/terser/-/terser-4.6.10.tgz", - "integrity": "sha512-qbF/3UOo11Hggsbsqm2hPa6+L4w7bkr+09FNseEe8xrcVD3APGLFqE+Oz1ZKAxjYnFsj80rLOfgAtJ0LNJjtTA==", - "dev": true, - "requires": { + "node_modules/terser-webpack-plugin/node_modules/schema-utils": { + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.3.2.tgz", + "integrity": "sha512-Gn/JaSk/Mt9gYubxTtSn/QCV4em9mpAPiR1rqy/Ocu19u/G9J5WWdNoUT4SiV6mFC3y6cxyFcFwdzPM3FgxGAQ==", + "dependencies": { + "@types/json-schema": "^7.0.9", + "ajv": "^8.9.0", + "ajv-formats": "^2.1.1", + "ajv-keywords": "^5.1.0" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/terser-webpack-plugin/node_modules/terser": { + "version": "5.39.0", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.39.0.tgz", + "integrity": "sha512-LBAhFyLho16harJoWMg/nZsQYgTrg5jXOn2nCYjRUcZZEdE3qa2zb8QEDRUGVZBW4rlazf2fxkg8tztybTaqWw==", + "dependencies": { + "@jridgewell/source-map": "^0.3.3", + "acorn": "^8.8.2", "commander": "^2.20.0", - "source-map": "~0.6.1", - "source-map-support": "~0.5.12" + "source-map-support": "~0.5.20" + }, + "bin": { + "terser": "bin/terser" }, + "engines": { + "node": ">=10" + } + }, + "node_modules/terser/node_modules/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==" + }, + "node_modules/test-exclude": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz", + "integrity": "sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==", "dependencies": { - "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 - } + "@istanbuljs/schema": "^0.1.2", + "glob": "^7.1.4", + "minimatch": "^3.0.4" + }, + "engines": { + "node": ">=8" } }, - "terser-webpack-plugin": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-3.0.3.tgz", - "integrity": "sha512-bZFnotuIKq5Rqzrs+qIwFzGdKdffV9epG5vDSEbYzvKAhPeR5RbbrQysfPgbIIMhNAQtZD2hGwBfSKUXjXZZZw==", - "dev": true, - "requires": { - "cacache": "^15.0.4", - "find-cache-dir": "^3.3.1", - "jest-worker": "^26.0.0", - "p-limit": "^2.3.0", - "schema-utils": "^2.6.6", - "serialize-javascript": "^3.1.0", - "source-map": "^0.6.1", - "terser": "^4.6.13", - "webpack-sources": "^1.4.3" - }, - "dependencies": { - "cacache": { - "version": "15.3.0", - "resolved": "https://registry.npmjs.org/cacache/-/cacache-15.3.0.tgz", - "integrity": "sha512-VVdYzXEn+cnbXpFgWs5hTT7OScegHVmLhJIR8Ufqk3iFD6A6j5iSX1KuBTfNEv4tdJWE2PzA6IVFtcLC7fN9wQ==", - "dev": true, - "requires": { - "@npmcli/fs": "^1.0.0", - "@npmcli/move-file": "^1.0.1", - "chownr": "^2.0.0", - "fs-minipass": "^2.0.0", - "glob": "^7.1.4", - "infer-owner": "^1.0.4", - "lru-cache": "^6.0.0", - "minipass": "^3.1.1", - "minipass-collect": "^1.0.2", - "minipass-flush": "^1.0.5", - "minipass-pipeline": "^1.2.2", - "mkdirp": "^1.0.3", - "p-map": "^4.0.0", - "promise-inflight": "^1.0.1", - "rimraf": "^3.0.2", - "ssri": "^8.0.1", - "tar": "^6.0.2", - "unique-filename": "^1.1.1" - } - }, - "chownr": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", - "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==", - "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 - }, - "jest-worker": { - "version": "26.6.2", - "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-26.6.2.tgz", - "integrity": "sha512-KWYVV1c4i+jbMpaBC+U++4Va0cp8OisU185o73T1vo99hqi7w8tSJfUXYswwqqrjzwxa6KpRK54WhPvwf5w6PQ==", - "dev": true, - "requires": { - "@types/node": "*", - "merge-stream": "^2.0.0", - "supports-color": "^7.0.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" - } - }, - "mkdirp": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", - "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", - "dev": true - }, - "p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", - "dev": true, - "requires": { - "p-try": "^2.0.0" - } - }, - "p-map": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", - "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", - "dev": true, - "requires": { - "aggregate-error": "^3.0.0" - } - }, - "serialize-javascript": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-3.1.0.tgz", - "integrity": "sha512-JIJT1DGiWmIKhzRsG91aS6Ze4sFUrYbltlkg2onR5OrnNM02Kl/hnY/T4FN2omvyeBbQmMJv+K4cPOpGzOTFBg==", - "dev": true, - "requires": { - "randombytes": "^2.1.0" - } - }, - "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 - }, - "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" - } - }, - "terser": { - "version": "4.8.1", - "resolved": "https://registry.npmjs.org/terser/-/terser-4.8.1.tgz", - "integrity": "sha512-4GnLC0x667eJG0ewJTa6z/yXrbLGv80D9Ru6HIpCQmO+Q4PfEtBFi0ObSckqwL6VyQv/7ENJieXHo2ANmdQwgw==", - "dev": true, - "requires": { - "commander": "^2.20.0", - "source-map": "~0.6.1", - "source-map-support": "~0.5.12" - } - }, - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - } + "node_modules/test-exclude/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/test-exclude/node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "deprecated": "Glob versions prior to v9 are no longer supported", + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/test-exclude/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" } }, - "through": { + "node_modules/text-table": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", + "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==" + }, + "node_modules/through": { "version": "2.3.8", "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", - "integrity": "sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==", - "dev": true - }, - "through2": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz", - "integrity": "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==", - "dev": true, - "requires": { - "readable-stream": "~2.3.6", - "xtend": "~4.0.1" - } + "integrity": "sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==" }, - "thunky": { + "node_modules/thunky": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/thunky/-/thunky-1.1.0.tgz", - "integrity": "sha512-eHY7nBftgThBqOyHGVN+l8gF0BucP09fMo0oO/Lb0w1OF80dJv+lDVpXG60WMQvkcxAkNybKsrEIE3ZtKGmPrA==", - "dev": true - }, - "timers-browserify": { - "version": "2.0.12", - "resolved": "https://registry.npmjs.org/timers-browserify/-/timers-browserify-2.0.12.tgz", - "integrity": "sha512-9phl76Cqm6FhSX9Xe1ZUAMLtm1BLkKj2Qd5ApyWkXzsMRaA7dgr81kf4wJmQf/hAvg8EEyJxDo3du/0KlhPiKQ==", - "dev": true, - "requires": { - "setimmediate": "^1.0.4" - } - }, - "timsort": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/timsort/-/timsort-0.3.0.tgz", - "integrity": "sha512-qsdtZH+vMoCARQtyod4imc2nIJwg9Cc7lPRrw9CzF8ZKR0khdr8+2nX80PBhET3tcyTtJDxAffGh2rXH4tyU8A==", - "dev": true + "integrity": "sha512-eHY7nBftgThBqOyHGVN+l8gF0BucP09fMo0oO/Lb0w1OF80dJv+lDVpXG60WMQvkcxAkNybKsrEIE3ZtKGmPrA==" }, - "tmp": { + "node_modules/tmp": { "version": "0.0.33", "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", - "dev": true, - "requires": { + "dependencies": { "os-tmpdir": "~1.0.2" + }, + "engines": { + "node": ">=0.6.0" } }, - "to-array": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/to-array/-/to-array-0.1.4.tgz", - "integrity": "sha512-LhVdShQD/4Mk4zXNroIQZJC+Ap3zgLcDuwEdcmLv9CCO73NWockQDwyUnW/m8VX/EElfL6FcYx7EeutN4HJA6A==", - "dev": true - }, - "to-arraybuffer": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/to-arraybuffer/-/to-arraybuffer-1.0.1.tgz", - "integrity": "sha512-okFlQcoGTi4LQBG/PgSYblw9VOyptsz2KJZqc6qtgGdes8VktzUQkj4BI2blit072iS8VODNcMA+tvnS9dnuMA==", - "dev": true - }, - "to-fast-properties": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", - "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==", - "dev": true - }, - "to-object-path": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/to-object-path/-/to-object-path-0.3.0.tgz", - "integrity": "sha512-9mWHdnGRuh3onocaHzukyvCZhzvr6tiflAy/JRFXcJX0TjgfWA9pk9t8CMbzmBE4Jfw58pXbkngtBtqYxzNEyg==", - "dev": true, - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "to-readable-stream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/to-readable-stream/-/to-readable-stream-1.0.0.tgz", - "integrity": "sha512-Iq25XBt6zD5npPhlLVXGFN3/gyR2/qODcKNNyTMd4vbm39HUaOiAM4PMq0eMVC/Tkxz+Zjdsc55g9yyz+Yq00Q==", - "dev": true - }, - "to-regex": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/to-regex/-/to-regex-3.0.2.tgz", - "integrity": "sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw==", - "dev": true, - "requires": { - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "regex-not": "^1.0.2", - "safe-regex": "^1.1.0" - } - }, - "to-regex-range": { + "node_modules/to-regex-range": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", - "dev": true, - "requires": { + "dependencies": { "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" } }, - "toidentifier": { + "node_modules/toidentifier": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz", "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==", - "dev": true - }, - "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==", - "dev": true, - "requires": { - "psl": "^1.1.28", - "punycode": "^2.1.1" + "engines": { + "node": ">=0.6" } }, - "tree-kill": { + "node_modules/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==", - "dev": true - }, - "ts-node": { - "version": "8.3.0", - "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-8.3.0.tgz", - "integrity": "sha512-dyNS/RqyVTDcmNM4NIBAeDMpsAdaQ+ojdf0GOLqE6nwJOgzEkdRNzJywhDfwnuvB10oa6NLVG1rUJQCpRN7qoQ==", - "dev": true, - "requires": { - "arg": "^4.1.0", - "diff": "^4.0.1", - "make-error": "^1.1.1", - "source-map-support": "^0.5.6", - "yn": "^3.0.0" - } - }, - "tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" - }, - "tslint": { - "version": "6.1.3", - "resolved": "https://registry.npmjs.org/tslint/-/tslint-6.1.3.tgz", - "integrity": "sha512-IbR4nkT96EQOvKE2PW/djGz8iGNeJ4rF2mBfiYaR/nvUWYKJhLwimoJKgjIFEIDibBtOevj7BqCRL4oHeWWUCg==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.0.0", - "builtin-modules": "^1.1.1", - "chalk": "^2.3.0", - "commander": "^2.12.1", - "diff": "^4.0.1", - "glob": "^7.1.1", - "js-yaml": "^3.13.1", - "minimatch": "^3.0.4", - "mkdirp": "^0.5.3", - "resolve": "^1.3.2", - "semver": "^5.3.0", - "tslib": "^1.13.0", - "tsutils": "^2.29.0" - }, - "dependencies": { - "builtin-modules": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-1.1.1.tgz", - "integrity": "sha512-wxXCdllwGhI2kCC0MnvTGYTMvnVZTvqgypkiTI8Pa5tcz2i6VqsqwYGgqwXji+4RgCzms6EajE4IxiUH6HH8nQ==", - "dev": true - }, - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "dev": true - } - } - }, - "tsutils": { - "version": "2.29.0", - "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-2.29.0.tgz", - "integrity": "sha512-g5JVHCIJwzfISaXpXE1qvNalca5Jwob6FjI4AoPlqMusJ6ftFE7IkkFoMhVLRgK+4Kx3gkzb8UZK5t5yTTvEmA==", - "dev": true, - "requires": { - "tslib": "^1.8.1" - } - }, - "tty-browserify": { - "version": "0.0.0", - "resolved": "https://registry.npmjs.org/tty-browserify/-/tty-browserify-0.0.0.tgz", - "integrity": "sha512-JVa5ijo+j/sOoHGjw0sxw734b1LhBkQ3bvUGNdxnVXDCX81Yx7TFgnZygxrIIWn23hbfTaMYLwRmAxFyDuFmIw==", - "dev": true - }, - "tunnel-agent": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", - "integrity": "sha512-McnNiV1l8RYeY8tBgEpuodCC1mLUdbSN+CYBL7kJsJNInOP8UjDDEwdk6Mw60vdLLrr5NHKZhMAOSrR2NZuQ+w==", - "dev": true, - "requires": { - "safe-buffer": "^5.0.1" + "bin": { + "tree-kill": "cli.js" } }, - "tweetnacl": { - "version": "0.14.5", - "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", - "integrity": "sha512-KXXFFdAbFXY4geFIwoyNK+f5Z1b7swfXABfL7HXCmoIWMKU3dmS26672A4EeQtDzLKy7SXmfBu51JolvEKwtGA==", - "dev": true + "node_modules/tslib": { + "version": "2.8.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz", + "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==" }, - "type-fest": { + "node_modules/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==", - "dev": true + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } }, - "type-is": { + "node_modules/type-is": { "version": "1.6.18", "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz", "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==", - "dev": true, - "requires": { + "dependencies": { "media-typer": "0.3.0", "mime-types": "~2.1.24" + }, + "engines": { + "node": ">= 0.6" } }, - "typed-array-length": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/typed-array-length/-/typed-array-length-1.0.4.tgz", - "integrity": "sha512-KjZypGq+I/H7HI5HlOoGHkWUUGq+Q0TPhQurLbyrVrvnKTBgzLhIJ7j6J/XTQOi0d1RjyZ0wdas8bKs2p0x3Ng==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "for-each": "^0.3.3", - "is-typed-array": "^1.1.9" - } - }, - "typedarray": { - "version": "0.0.6", - "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", - "integrity": "sha512-/aCDEGatGvZ2BIk+HmLf4ifCJFwvKFNb9/JeZPMulfgFracn9QFcAf5GO8B/mweUjSoblS5In0cWhqpfs/5PQA==", - "dev": true + "node_modules/typed-assert": { + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/typed-assert/-/typed-assert-1.0.9.tgz", + "integrity": "sha512-KNNZtayBCtmnNmbo5mG47p1XsCyrx6iVqomjcZnec/1Y5GGARaxPs6r49RnSPeUP3YjNYiU9sQHAtY4BBvnZwg==" }, - "typedarray-to-buffer": { - "version": "3.1.5", - "resolved": "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz", - "integrity": "sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==", - "dev": true, - "requires": { - "is-typedarray": "^1.0.0" + "node_modules/typescript": { + "version": "4.6.4", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.6.4.tgz", + "integrity": "sha512-9ia/jWHIEbo49HfjrLGfKbZSuWo9iTMwXO+Ca3pRsSpbsMbc7/IU8NKdCZVRRBafVPGnoJeFL76ZOAA84I9fEg==", + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=4.2.0" } }, - "typescript": { - "version": "3.8.3", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-3.8.3.tgz", - "integrity": "sha512-MYlEfn5VrLNsgudQTVJeNaQFUAI7DkhnOjdpAp4T+ku1TfQClewlbSuTVHiA+8skNBgaf02TL/kLOvig4y3G8w==", - "dev": true - }, - "ua-parser-js": { - "version": "0.7.21", - "resolved": "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-0.7.21.tgz", - "integrity": "sha512-+O8/qh/Qj8CgC6eYBVBykMrNtp5Gebn4dlGD/kKXVkJNDwyrAwSIqwz8CDf+tsAIWVycKcku6gIXJ0qwx/ZXaQ==", - "dev": true - }, - "unbox-primitive": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.2.tgz", - "integrity": "sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "has-bigints": "^1.0.2", - "has-symbols": "^1.0.3", - "which-boxed-primitive": "^1.0.2" + "node_modules/ua-parser-js": { + "version": "0.7.40", + "resolved": "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-0.7.40.tgz", + "integrity": "sha512-us1E3K+3jJppDBa3Tl0L3MOJiGhe1C6P0+nIvQAFYbxlMAx0h81eOwLmU57xgqToduDDPx3y5QsdjPfDu+FgOQ==", + "devOptional": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/ua-parser-js" + }, + { + "type": "paypal", + "url": "https://paypal.me/faisalman" + }, + { + "type": "github", + "url": "https://github.com/sponsors/faisalman" + } + ], + "bin": { + "ua-parser-js": "script/cli.js" + }, + "engines": { + "node": "*" } }, - "unicode-canonical-property-names-ecmascript": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.0.tgz", - "integrity": "sha512-yY5PpDlfVIU5+y/BSCxAJRBIS1Zc2dDG3Ujq+sR0U+JjUevW2JhocOF+soROYDSaAezOzOKuyyixhD6mBknSmQ==", - "dev": true + "node_modules/unicode-canonical-property-names-ecmascript": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.1.tgz", + "integrity": "sha512-dA8WbNeb2a6oQzAQ55YlT5vQAWGV9WXOsi3SskE3bcCdM0P4SDd+24zS/OCacdRq5BkdsRj9q3Pg6YyQoxIGqg==", + "engines": { + "node": ">=4" + } }, - "unicode-match-property-ecmascript": { + "node_modules/unicode-match-property-ecmascript": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-2.0.0.tgz", "integrity": "sha512-5kaZCrbp5mmbz5ulBkDkbY0SsPOjKqVS35VpL9ulMPfSl0J0Xsm+9Evphv9CoIZFwre7aJoa94AY6seMKGVN5Q==", - "dev": true, - "requires": { + "dependencies": { "unicode-canonical-property-names-ecmascript": "^2.0.0", "unicode-property-aliases-ecmascript": "^2.0.0" + }, + "engines": { + "node": ">=4" } }, - "unicode-match-property-value-ecmascript": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.1.0.tgz", - "integrity": "sha512-qxkjQt6qjg/mYscYMC0XKRn3Rh0wFPlfxB0xkt9CfyTvpX1Ra0+rAmdX2QyAobptSEvuy4RtpPRui6XkV+8wjA==", - "dev": true + "node_modules/unicode-match-property-value-ecmascript": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.2.0.tgz", + "integrity": "sha512-4IehN3V/+kkr5YeSSDDQG8QLqO26XpL2XP3GQtqwlT/QYSECAwFztxVHjlbh0+gjJ3XmNLS0zDsbgs9jWKExLg==", + "engines": { + "node": ">=4" + } }, - "unicode-property-aliases-ecmascript": { + "node_modules/unicode-property-aliases-ecmascript": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-2.1.0.tgz", "integrity": "sha512-6t3foTQI9qne+OZoVQB/8x8rk2k1eVy1gRXhV3oFQ5T6R1dqQ1xtin3XqSlx3+ATBkliTaR/hHyJBm+LVPNM8w==", - "dev": true - }, - "union-value": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/union-value/-/union-value-1.0.1.tgz", - "integrity": "sha512-tJfXmxMeWYnczCVs7XAEvIV7ieppALdyepWMkHkwciRpZraG/xwT+s2JN8+pr1+8jCRf80FFzvr+MpQeeoF4Xg==", - "dev": true, - "requires": { - "arr-union": "^3.1.0", - "get-value": "^2.0.6", - "is-extendable": "^0.1.1", - "set-value": "^2.0.1" - }, - "dependencies": { - "is-extendable": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", - "integrity": "sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==", - "dev": true - } + "engines": { + "node": ">=4" } }, - "uniq": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/uniq/-/uniq-1.0.1.tgz", - "integrity": "sha512-Gw+zz50YNKPDKXs+9d+aKAjVwpjNwqzvNpLigIruT4HA9lMZNdMqs9x07kKHB/L9WRzqp4+DlTU5s4wG2esdoA==", - "dev": true - }, - "uniqs": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/uniqs/-/uniqs-2.0.0.tgz", - "integrity": "sha512-mZdDpf3vBV5Efh29kMw5tXoup/buMgxLzOt/XKFKcVmi+15ManNQWr6HfZ2aiZTYlYixbdNJ0KFmIZIv52tHSQ==", - "dev": true - }, - "unique-filename": { + "node_modules/unique-filename": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-1.1.1.tgz", "integrity": "sha512-Vmp0jIp2ln35UTXuryvjzkjGdRyf9b2lTXuSYUiPmzRcl3FDtYqAwOnTJkAngD9SWhnoJzDbTKwaOrZ+STtxNQ==", - "dev": true, - "requires": { + "dependencies": { "unique-slug": "^2.0.0" } }, - "unique-slug": { + "node_modules/unique-slug": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-2.0.2.tgz", "integrity": "sha512-zoWr9ObaxALD3DOPfjPSqxt4fnZiWblxHIgeWqW8x7UqDzEtHEQLzji2cuJYQFCU6KmoJikOYAZlrTHHebjx2w==", - "dev": true, - "requires": { - "imurmurhash": "^0.1.4" - } - }, - "unique-string": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/unique-string/-/unique-string-2.0.0.tgz", - "integrity": "sha512-uNaeirEPvpZWSgzwsPGtU2zVSTrn/8L5q/IexZmH0eH6SA73CmAA5U4GwORTxQAZs95TAXLNqeLoPPNO5gZfWg==", - "dev": true, - "requires": { - "crypto-random-string": "^2.0.0" - } - }, - "universal-analytics": { - "version": "0.4.20", - "resolved": "https://registry.npmjs.org/universal-analytics/-/universal-analytics-0.4.20.tgz", - "integrity": "sha512-gE91dtMvNkjO+kWsPstHRtSwHXz0l2axqptGYp5ceg4MsuurloM0PU3pdOfpb5zBXUvyjT4PwhWK2m39uczZuw==", - "dev": true, - "requires": { - "debug": "^3.0.0", - "request": "^2.88.0", - "uuid": "^3.0.0" - }, "dependencies": { - "debug": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", - "dev": true, - "requires": { - "ms": "^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==", - "dev": true - } + "imurmurhash": "^0.1.4" } }, - "universalify": { + "node_modules/universalify": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", - "dev": true + "devOptional": true, + "engines": { + "node": ">= 4.0.0" + } }, - "unpipe": { + "node_modules/unpipe": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==", - "dev": true - }, - "unquote": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/unquote/-/unquote-1.1.1.tgz", - "integrity": "sha512-vRCqFv6UhXpWxZPyGDh/F3ZpNv8/qo7w6iufLpQg9aKnQ71qM4B5KiI7Mia9COcjEhrO9LueHpMYjYzsWH3OIg==", - "dev": true - }, - "unset-value": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/unset-value/-/unset-value-1.0.0.tgz", - "integrity": "sha512-PcA2tsuGSF9cnySLHTLSh2qrQiJ70mn+r+Glzxv2TWZblxsxCC52BDlZoPCsz7STd9pN7EZetkWZBAvk4cgZdQ==", - "dev": true, - "requires": { - "has-value": "^0.3.1", - "isobject": "^3.0.0" - }, - "dependencies": { - "has-value": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/has-value/-/has-value-0.3.1.tgz", - "integrity": "sha512-gpG936j8/MzaeID5Yif+577c17TxaDmhuyVgSwtnL/q8UUTySg8Mecb+8Cf1otgLoD7DDH75axp86ER7LFsf3Q==", - "dev": true, - "requires": { - "get-value": "^2.0.3", - "has-values": "^0.1.4", - "isobject": "^2.0.0" - }, - "dependencies": { - "isobject": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz", - "integrity": "sha512-+OUdGJlgjOBZDfxnDjYYG6zp487z0JGNQq3cYQYg5f5hKR+syHMsaztzGeml/4kGG55CSpKSpWTY+jYGgsHLgA==", - "dev": true, - "requires": { - "isarray": "1.0.0" - } - } - } - }, - "has-values": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/has-values/-/has-values-0.1.4.tgz", - "integrity": "sha512-J8S0cEdWuQbqD9//tlZxiMuMNmxB8PlEwvYwuxsTmR1G5RXUePEX/SJn7aD0GMLieuZYSwNH0cQuJGwnYunXRQ==", - "dev": true - } - } - }, - "upath": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/upath/-/upath-1.2.0.tgz", - "integrity": "sha512-aZwGpamFO61g3OlfT7OQCHqhGnW43ieH9WZeP7QxN/G/jS4jfqUkZxoryvJgVPEcrl5NL/ggHsSmLMHuH64Lhg==", - "dev": true - }, - "update-browserslist-db": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.10.tgz", - "integrity": "sha512-OztqDenkfFkbSG+tRxBeAnCVPckDBcvibKd35yDONx6OU8N7sqgwc7rCbkJ/WcYtVRZ4ba68d6byhC21GFh7sQ==", - "dev": true, - "requires": { - "escalade": "^3.1.1", - "picocolors": "^1.0.0" + "engines": { + "node": ">= 0.8" } }, - "update-notifier": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/update-notifier/-/update-notifier-4.1.3.tgz", - "integrity": "sha512-Yld6Z0RyCYGB6ckIjffGOSOmHXj1gMeE7aROz4MG+XMkmixBX4jUngrGXNYz7wPKBmtoD4MnBa2Anu7RSKht/A==", - "dev": true, - "requires": { - "boxen": "^4.2.0", - "chalk": "^3.0.0", - "configstore": "^5.0.1", - "has-yarn": "^2.1.0", - "import-lazy": "^2.1.0", - "is-ci": "^2.0.0", - "is-installed-globally": "^0.3.1", - "is-npm": "^4.0.0", - "is-yarn-global": "^0.3.0", - "latest-version": "^5.0.0", - "pupa": "^2.0.1", - "semver-diff": "^3.1.1", - "xdg-basedir": "^4.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" - } - }, - "chalk": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", - "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.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 + "node_modules/update-browserslist-db": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.1.3.tgz", + "integrity": "sha512-UxhIZQ+QInVdunkDAaiazvvT/+fXL5Osr0JZlJulepYu6Jd7qJtDZjlur0emRlT71EN3ScPoE7gvsuIKKNavKw==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" }, - "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 + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" }, - "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" - } + { + "type": "github", + "url": "https://github.com/sponsors/ai" } + ], + "dependencies": { + "escalade": "^3.2.0", + "picocolors": "^1.1.1" + }, + "bin": { + "update-browserslist-db": "cli.js" + }, + "peerDependencies": { + "browserslist": ">= 4.21.0" } }, - "uri-js": { + "node_modules/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" - } - }, - "urix": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/urix/-/urix-0.1.0.tgz", - "integrity": "sha512-Am1ousAhSLBeB9cG/7k7r2R0zj50uDRlZHPGbazid5s9rlF1F/QKYObEKSIunSjIOkJZqwRRLpvewjEkM7pSqg==", - "dev": true - }, - "url": { - "version": "0.11.0", - "resolved": "https://registry.npmjs.org/url/-/url-0.11.0.tgz", - "integrity": "sha512-kbailJa29QrtXnxgq+DdCEGlbTeYM2eJUxsz6vjZavrCYPMIFHMKQmSKYAIuUK2i7hgPm28a8piX5NTUtM/LKQ==", - "dev": true, - "requires": { - "punycode": "1.3.2", - "querystring": "0.2.0" - }, - "dependencies": { - "punycode": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.3.2.tgz", - "integrity": "sha512-RofWgt/7fL5wP1Y7fxE7/EmTLzQVnB0ycyibJ0OOHIlJqTNzglYFxVwETOcIoJqJmpDXJ9xImDv+Fq34F/d4Dw==", - "dev": true - } - } - }, - "url-parse": { - "version": "1.5.10", - "resolved": "https://registry.npmjs.org/url-parse/-/url-parse-1.5.10.tgz", - "integrity": "sha512-WypcfiRhfeUP9vvF0j6rw0J3hrWrw6iZv3+22h6iRMJ/8z1Tj6XfLP4DsUix5MhMPnXpiHDoKyoZ/bdCkwBCiQ==", - "dev": true, - "requires": { - "querystringify": "^2.1.1", - "requires-port": "^1.0.0" - } - }, - "url-parse-lax": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-3.0.0.tgz", - "integrity": "sha512-NjFKA0DidqPa5ciFcSrXnAltTtzz84ogy+NebPvfEgAck0+TNg4UJ4IN+fB7zRZfbgUf0syOo9MDxFkDSMuFaQ==", - "dev": true, - "requires": { - "prepend-http": "^2.0.0" - }, "dependencies": { - "prepend-http": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-2.0.0.tgz", - "integrity": "sha512-ravE6m9Atw9Z/jjttRUZ+clIXogdghyZAuWJ3qEzjT+jI/dL1ifAqhZeC5VHzQp1MSt1+jxKkFNemj/iO7tVUA==", - "dev": true - } + "punycode": "^2.1.0" } }, - "use": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/use/-/use-3.1.1.tgz", - "integrity": "sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==", - "dev": true - }, - "util": { - "version": "0.11.1", - "resolved": "https://registry.npmjs.org/util/-/util-0.11.1.tgz", - "integrity": "sha512-HShAsny+zS2TZfaXxD9tYj4HQGlBezXZMZuM/S5PKLLoZkShZiGk9o5CzukI1LVHZvjdvZ2Sj1aW/Ndn2NB/HQ==", - "dev": true, - "requires": { - "inherits": "2.0.3" - }, - "dependencies": { - "inherits": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "integrity": "sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw==", - "dev": true - } + "node_modules/uri-js/node_modules/punycode": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz", + "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==", + "engines": { + "node": ">=6" } }, - "util-deprecate": { + "node_modules/util-deprecate": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", - "dev": true - }, - "util-promisify": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/util-promisify/-/util-promisify-2.1.0.tgz", - "integrity": "sha512-K+5eQPYs14b3+E+hmE2J6gCZ4JmMl9DbYS6BeP2CHq6WMuNxErxf5B/n0fz85L8zUuoO6rIzNNmIQDu/j+1OcA==", - "dev": true, - "requires": { - "object.getownpropertydescriptors": "^2.0.3" - } - }, - "util.promisify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/util.promisify/-/util.promisify-1.0.1.tgz", - "integrity": "sha512-g9JpC/3He3bm38zsLupWryXHoEcS22YHthuPQSJdMy6KNrzIRzWqcsHzD/WUnqe45whVou4VIsPew37DoXWNrA==", - "dev": true, - "requires": { - "define-properties": "^1.1.3", - "es-abstract": "^1.17.2", - "has-symbols": "^1.0.1", - "object.getownpropertydescriptors": "^2.1.0" - } + "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==" }, - "utils-merge": { + "node_modules/utils-merge": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", "integrity": "sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==", - "dev": true + "engines": { + "node": ">= 0.4.0" + } }, - "uuid": { - "version": "7.0.2", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-7.0.2.tgz", - "integrity": "sha512-vy9V/+pKG+5ZTYKf+VcphF5Oc6EFiu3W8Nv3P3zIh0EqVI80ZxOzuPfe9EHjkFNvf8+xuTHVeei4Drydlx4zjw==", - "dev": true + "node_modules/uuid": { + "version": "8.3.2", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", + "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==", + "bin": { + "uuid": "dist/bin/uuid" + } }, - "validate-npm-package-license": { + "node_modules/validate-npm-package-license": { "version": "3.0.4", "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", "dev": true, - "requires": { + "dependencies": { "spdx-correct": "^3.0.0", "spdx-expression-parse": "^3.0.0" } }, - "validate-npm-package-name": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-3.0.0.tgz", - "integrity": "sha512-M6w37eVCMMouJ9V/sdPGnC5H4uDr73/+xdq0FBLO3TFFX1+7wiUY6Es328NN+y43tmY+doUdN9g9J21vqB7iLw==", - "dev": true, - "requires": { - "builtins": "^1.0.3" - } - }, - "vary": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", - "integrity": "sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==", - "dev": true - }, - "vendors": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/vendors/-/vendors-1.0.4.tgz", - "integrity": "sha512-/juG65kTL4Cy2su4P8HjtkTxk6VmJDiOPBufWniqQ6wknac6jNiXS9vU+hO3wgusiyqWlzTbVHi0dyJqRONg3w==", - "dev": true - }, - "verror": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", - "integrity": "sha512-ZZKSmDAEFOijERBLkmYfJ+vmk3w+7hOLYDNkRCuRuMJGEmqYNCNLyBBFwWKVMhfwaEF3WOd0Zlw86U/WC/+nYw==", + "node_modules/validate-npm-package-name": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-4.0.0.tgz", + "integrity": "sha512-mzR0L8ZDktZjpX4OB46KT+56MAhl4EIazWP/+G/HPGuvfdaqg4YsCdtOm6U9+LOFyYDoh4dpnpxZRB9MQQns5Q==", "dev": true, - "requires": { - "assert-plus": "^1.0.0", - "core-util-is": "1.0.2", - "extsprintf": "^1.2.0" - }, "dependencies": { - "core-util-is": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", - "integrity": "sha512-3lqz5YjWTYnW6dlDa5TLaTCcShfar1e40rmcJVwCBJC6mWlFuj0eCHIElmG1g5kyuJ/GD+8Wn4FFCcz4gJPfaQ==", - "dev": true - } + "builtins": "^5.0.0" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "vm-browserify": { + "node_modules/vary": { "version": "1.1.2", - "resolved": "https://registry.npmjs.org/vm-browserify/-/vm-browserify-1.1.2.tgz", - "integrity": "sha512-2ham8XPWTONajOR0ohOKOHXkm3+gaBmGut3SRuu75xLd/RRaY6vqgh8NBYYk7+RW3u5AtzPQZG8F10LHkl0lAQ==", - "dev": true - }, - "void-elements": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/void-elements/-/void-elements-2.0.1.tgz", - "integrity": "sha512-qZKX4RnBzH2ugr8Lxa7x+0V6XD9Sb/ouARtiasEQCHB1EVU4NXtmHsDDrx1dO4ne5fc3J6EW05BP1Dl0z0iung==", - "dev": true - }, - "watchpack": { - "version": "1.7.5", - "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-1.7.5.tgz", - "integrity": "sha512-9P3MWk6SrKjHsGkLT2KHXdQ/9SNkyoJbabxnKOoJepsvJjJG8uYTR3yTPxPQvNDI3w4Nz1xnE0TLHK4RIVe/MQ==", - "dev": true, - "requires": { - "chokidar": "^3.4.1", - "graceful-fs": "^4.1.2", - "neo-async": "^2.5.0", - "watchpack-chokidar2": "^2.0.1" - } - }, - "watchpack-chokidar2": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/watchpack-chokidar2/-/watchpack-chokidar2-2.0.1.tgz", - "integrity": "sha512-nCFfBIPKr5Sh61s4LPpy1Wtfi0HE8isJ3d2Yb5/Ppw2P2B/3eVSEBjKfN0fmHJSK14+31KwMKmcrzs2GM4P0Ww==", - "dev": true, - "optional": true, - "requires": { - "chokidar": "^2.1.8" - }, - "dependencies": { - "anymatch": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-2.0.0.tgz", - "integrity": "sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw==", - "dev": true, - "optional": true, - "requires": { - "micromatch": "^3.1.4", - "normalize-path": "^2.1.1" - }, - "dependencies": { - "normalize-path": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", - "integrity": "sha512-3pKJwH184Xo/lnH6oyP1q2pMd7HcypqqmRs91/6/i2CGtWwIKGCkOOMTm/zXbgTEWHw1uNpNi/igc3ePOYHb6w==", - "dev": true, - "optional": true, - "requires": { - "remove-trailing-separator": "^1.0.1" - } - } - } - }, - "binary-extensions": { - "version": "1.13.1", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.13.1.tgz", - "integrity": "sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw==", - "dev": true, - "optional": true - }, - "braces": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", - "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", - "dev": true, - "optional": true, - "requires": { - "arr-flatten": "^1.1.0", - "array-unique": "^0.3.2", - "extend-shallow": "^2.0.1", - "fill-range": "^4.0.0", - "isobject": "^3.0.1", - "repeat-element": "^1.1.2", - "snapdragon": "^0.8.1", - "snapdragon-node": "^2.0.1", - "split-string": "^3.0.2", - "to-regex": "^3.0.1" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", - "dev": true, - "optional": true, - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "chokidar": { - "version": "2.1.8", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-2.1.8.tgz", - "integrity": "sha512-ZmZUazfOzf0Nve7duiCKD23PFSCs4JPoYyccjUFF3aQkQadqBhfzhjkwBH2mNOG9cTBwhamM37EIsIkZw3nRgg==", - "dev": true, - "optional": true, - "requires": { - "anymatch": "^2.0.0", - "async-each": "^1.0.1", - "braces": "^2.3.2", - "fsevents": "^1.2.7", - "glob-parent": "^3.1.0", - "inherits": "^2.0.3", - "is-binary-path": "^1.0.0", - "is-glob": "^4.0.0", - "normalize-path": "^3.0.0", - "path-is-absolute": "^1.0.0", - "readdirp": "^2.2.1", - "upath": "^1.1.1" - } - }, - "fill-range": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", - "integrity": "sha512-VcpLTWqWDiTerugjj8e3+esbg+skS3M9e54UuR3iCeIDMXCLTsAH8hTSzDQU/X6/6t3eYkOKoZSef2PlU6U1XQ==", - "dev": true, - "optional": true, - "requires": { - "extend-shallow": "^2.0.1", - "is-number": "^3.0.0", - "repeat-string": "^1.6.1", - "to-regex-range": "^2.1.0" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", - "dev": true, - "optional": true, - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "fsevents": { - "version": "1.2.13", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.13.tgz", - "integrity": "sha512-oWb1Z6mkHIskLzEJ/XWX0srkpkTQ7vaopMQkyaEIoq0fmtFVxOthb8cCxeT+p3ynTdkk/RZwbgG4brR5BeWECw==", - "dev": true, - "optional": true, - "requires": { - "bindings": "^1.5.0", - "nan": "^2.12.1" - } - }, - "glob-parent": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz", - "integrity": "sha512-E8Ak/2+dZY6fnzlR7+ueWvhsH1SjHr4jjss4YS/h4py44jY9MhK/VFdaZJAWDz6BbL21KeteKxFSFpq8OS5gVA==", - "dev": true, - "optional": true, - "requires": { - "is-glob": "^3.1.0", - "path-dirname": "^1.0.0" - }, - "dependencies": { - "is-glob": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", - "integrity": "sha512-UFpDDrPgM6qpnFNI+rh/p3bUaq9hKLZN8bMUWzxmcnZVS3omf4IPK+BrewlnWjO1WmUsMYuSjKh4UJuV4+Lqmw==", - "dev": true, - "optional": true, - "requires": { - "is-extglob": "^2.1.0" - } - } - } - }, - "is-binary-path": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz", - "integrity": "sha512-9fRVlXc0uCxEDj1nQzaWONSpbTfx0FmJfzHF7pwlI8DkWGoHBBea4Pg5Ky0ojwwxQmnSifgbKkI06Qv0Ljgj+Q==", - "dev": true, - "optional": true, - "requires": { - "binary-extensions": "^1.0.0" - } - }, - "is-extendable": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", - "integrity": "sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==", - "dev": true, - "optional": true - }, - "is-number": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", - "integrity": "sha512-4cboCqIpliH+mAvFNegjZQ4kgKc3ZUhQVr3HvWbSh5q3WH2v82ct+T2Y1hdU5Gdtorx/cLifQjqCbL7bpznLTg==", - "dev": true, - "optional": true, - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", - "dev": true, - "optional": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "micromatch": { - "version": "3.1.10", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", - "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", - "dev": true, - "optional": true, - "requires": { - "arr-diff": "^4.0.0", - "array-unique": "^0.3.2", - "braces": "^2.3.1", - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "extglob": "^2.0.4", - "fragment-cache": "^0.2.1", - "kind-of": "^6.0.2", - "nanomatch": "^1.2.9", - "object.pick": "^1.3.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.2" - } - }, - "readdirp": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.2.1.tgz", - "integrity": "sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ==", - "dev": true, - "optional": true, - "requires": { - "graceful-fs": "^4.1.11", - "micromatch": "^3.1.10", - "readable-stream": "^2.0.2" - } - }, - "to-regex-range": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", - "integrity": "sha512-ZZWNfCjUokXXDGXFpZehJIkZqq91BcULFq/Pi7M5i4JnxXdhMKAK682z8bCW3o8Hj1wuuzoKcW3DfVzaP6VuNg==", - "dev": true, - "optional": true, - "requires": { - "is-number": "^3.0.0", - "repeat-string": "^1.6.1" - } - } + "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", + "integrity": "sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/void-elements": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/void-elements/-/void-elements-2.0.1.tgz", + "integrity": "sha512-qZKX4RnBzH2ugr8Lxa7x+0V6XD9Sb/ouARtiasEQCHB1EVU4NXtmHsDDrx1dO4ne5fc3J6EW05BP1Dl0z0iung==", + "devOptional": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/watchpack": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.2.tgz", + "integrity": "sha512-TnbFSbcOCcDgjZ4piURLCbJ3nJhznVh9kw6F6iokjiFPl8ONxe9A6nMDVXDiNbrSfLILs6vB07F7wLBrwPYzJw==", + "dependencies": { + "glob-to-regexp": "^0.4.1", + "graceful-fs": "^4.1.2" + }, + "engines": { + "node": ">=10.13.0" } }, - "wbuf": { + "node_modules/wbuf": { "version": "1.7.3", "resolved": "https://registry.npmjs.org/wbuf/-/wbuf-1.7.3.tgz", "integrity": "sha512-O84QOnr0icsbFGLS0O3bI5FswxzRr8/gHwWkDlQFskhSPryQXvrTMxjxGP4+iWYoauLoBvfDpkrOauZ+0iZpDA==", - "dev": true, - "requires": { + "dependencies": { "minimalistic-assert": "^1.0.0" } }, - "wcwidth": { + "node_modules/wcwidth": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/wcwidth/-/wcwidth-1.0.1.tgz", "integrity": "sha512-XHPEwS0q6TaxcvG85+8EYkbiCux2XtWG2mkc47Ng2A77BQu9+DqIOJldST4HgPkuea7dvKSj5VgX3P1d4rW8Tg==", - "dev": true, - "requires": { + "dependencies": { "defaults": "^1.0.3" } }, - "webdriver-js-extender": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/webdriver-js-extender/-/webdriver-js-extender-2.1.0.tgz", - "integrity": "sha512-lcUKrjbBfCK6MNsh7xaY2UAUmZwe+/ib03AjVOpFobX4O7+83BUveSrLfU0Qsyb1DaKJdQRbuU+kM9aZ6QUhiQ==", - "dev": true, - "requires": { - "@types/selenium-webdriver": "^3.0.0", - "selenium-webdriver": "^3.0.1" - } - }, - "webdriver-manager": { - "version": "12.1.9", - "resolved": "https://registry.npmjs.org/webdriver-manager/-/webdriver-manager-12.1.9.tgz", - "integrity": "sha512-Yl113uKm8z4m/KMUVWHq1Sjtla2uxEBtx2Ue3AmIlnlPAKloDn/Lvmy6pqWCUersVISpdMeVpAaGbNnvMuT2LQ==", - "dev": true, - "requires": { - "adm-zip": "^0.5.2", - "chalk": "^1.1.1", - "del": "^2.2.0", - "glob": "^7.0.3", - "ini": "^1.3.4", - "minimist": "^1.2.0", - "q": "^1.4.1", - "request": "^2.87.0", - "rimraf": "^2.5.2", - "semver": "^5.3.0", - "xml2js": "^0.4.17" - }, - "dependencies": { - "ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==", - "dev": true - }, - "ansi-styles": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", - "integrity": "sha512-kmCevFghRiWM7HB5zTPULl4r9bVFSWjz62MhqizDGUrq2NWuNMQyuv4tHHoKJHs69M/MF64lEcHdYIocrdWQYA==", - "dev": true - }, - "chalk": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "integrity": "sha512-U3lRVLMSlsCfjqYPbLyVv11M9CPW4I728d6TCKMAOJueEeB9/8o+eSsMnxPJD+Q+K909sdESg7C+tIkoH6on1A==", - "dev": true, - "requires": { - "ansi-styles": "^2.2.1", - "escape-string-regexp": "^1.0.2", - "has-ansi": "^2.0.0", - "strip-ansi": "^3.0.0", - "supports-color": "^2.0.0" - } - }, - "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" - } - }, - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "dev": true - }, - "strip-ansi": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg==", - "dev": true, - "requires": { - "ansi-regex": "^2.0.0" - } - }, - "supports-color": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", - "integrity": "sha512-KKNVtd6pCYgPIKU4cp2733HWYCpplQhddZLBUryaAHou723x+FRzQ5Df824Fj+IyyuiQTRoub4SnIFfIcrp70g==", - "dev": true - } - } - }, - "webpack": { - "version": "4.42.0", - "resolved": "https://registry.npmjs.org/webpack/-/webpack-4.42.0.tgz", - "integrity": "sha512-EzJRHvwQyBiYrYqhyjW9AqM90dE4+s1/XtCfn7uWg6cS72zH+2VPFAlsnW0+W0cDi0XRjNKUMoJtpSi50+Ph6w==", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.8.5", - "@webassemblyjs/helper-module-context": "1.8.5", - "@webassemblyjs/wasm-edit": "1.8.5", - "@webassemblyjs/wasm-parser": "1.8.5", - "acorn": "^6.2.1", - "ajv": "^6.10.2", - "ajv-keywords": "^3.4.1", + "node_modules/webpack": { + "version": "5.76.1", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.76.1.tgz", + "integrity": "sha512-4+YIK4Abzv8172/SGqObnUjaIHjLEuUasz9EwQj/9xmPPkYJy2Mh03Q/lJfSD3YLzbxy5FeTq5Uw0323Oh6SJQ==", + "dependencies": { + "@types/eslint-scope": "^3.7.3", + "@types/estree": "^0.0.51", + "@webassemblyjs/ast": "1.11.1", + "@webassemblyjs/wasm-edit": "1.11.1", + "@webassemblyjs/wasm-parser": "1.11.1", + "acorn": "^8.7.1", + "acorn-import-assertions": "^1.7.6", + "browserslist": "^4.14.5", "chrome-trace-event": "^1.0.2", - "enhanced-resolve": "^4.1.0", - "eslint-scope": "^4.0.3", - "json-parse-better-errors": "^1.0.2", - "loader-runner": "^2.4.0", - "loader-utils": "^1.2.3", - "memory-fs": "^0.4.1", - "micromatch": "^3.1.10", - "mkdirp": "^0.5.1", - "neo-async": "^2.6.1", - "node-libs-browser": "^2.2.1", - "schema-utils": "^1.0.0", - "tapable": "^1.1.3", - "terser-webpack-plugin": "^1.4.3", - "watchpack": "^1.6.0", - "webpack-sources": "^1.4.1" - }, - "dependencies": { - "braces": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", - "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", - "dev": true, - "requires": { - "arr-flatten": "^1.1.0", - "array-unique": "^0.3.2", - "extend-shallow": "^2.0.1", - "fill-range": "^4.0.0", - "isobject": "^3.0.1", - "repeat-element": "^1.1.2", - "snapdragon": "^0.8.1", - "snapdragon-node": "^2.0.1", - "split-string": "^3.0.2", - "to-regex": "^3.0.1" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "cacache": { - "version": "12.0.4", - "resolved": "https://registry.npmjs.org/cacache/-/cacache-12.0.4.tgz", - "integrity": "sha512-a0tMB40oefvuInr4Cwb3GerbL9xTj1D5yg0T5xrjGCGyfvbxseIXX7BAO/u/hIXdafzOI5JC3wDwHyf24buOAQ==", - "dev": true, - "requires": { - "bluebird": "^3.5.5", - "chownr": "^1.1.1", - "figgy-pudding": "^3.5.1", - "glob": "^7.1.4", - "graceful-fs": "^4.1.15", - "infer-owner": "^1.0.3", - "lru-cache": "^5.1.1", - "mississippi": "^3.0.0", - "mkdirp": "^0.5.1", - "move-concurrently": "^1.0.1", - "promise-inflight": "^1.0.1", - "rimraf": "^2.6.3", - "ssri": "^6.0.1", - "unique-filename": "^1.1.1", - "y18n": "^4.0.0" - } - }, - "fill-range": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", - "integrity": "sha512-VcpLTWqWDiTerugjj8e3+esbg+skS3M9e54UuR3iCeIDMXCLTsAH8hTSzDQU/X6/6t3eYkOKoZSef2PlU6U1XQ==", - "dev": true, - "requires": { - "extend-shallow": "^2.0.1", - "is-number": "^3.0.0", - "repeat-string": "^1.6.1", - "to-regex-range": "^2.1.0" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "find-cache-dir": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-2.1.0.tgz", - "integrity": "sha512-Tq6PixE0w/VMFfCgbONnkiQIVol/JJL7nRMi20fqzA4NRs9AfeqMGeRdPi3wIhYkxjeBaWh2rxwapn5Tu3IqOQ==", - "dev": true, - "requires": { - "commondir": "^1.0.1", - "make-dir": "^2.0.0", - "pkg-dir": "^3.0.0" - } - }, - "find-up": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", - "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", - "dev": true, - "requires": { - "locate-path": "^3.0.0" - } - }, - "is-extendable": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", - "integrity": "sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==", - "dev": true - }, - "is-number": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", - "integrity": "sha512-4cboCqIpliH+mAvFNegjZQ4kgKc3ZUhQVr3HvWbSh5q3WH2v82ct+T2Y1hdU5Gdtorx/cLifQjqCbL7bpznLTg==", - "dev": true, - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "is-wsl": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-1.1.0.tgz", - "integrity": "sha512-gfygJYZ2gLTDlmbWMI0CE2MwnFzSN/2SZfkMlItC4K/JBlsWVDB0bO6XhqcY13YXE7iMcAJnzTCJjPiTeJJ0Mw==", - "dev": true - }, - "json5": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz", - "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==", - "dev": true, - "requires": { - "minimist": "^1.2.0" - } - }, - "loader-utils": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.2.tgz", - "integrity": "sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==", - "dev": true, - "requires": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^1.0.1" - } - }, - "locate-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", - "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", - "dev": true, - "requires": { - "p-locate": "^3.0.0", - "path-exists": "^3.0.0" - } - }, - "make-dir": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", - "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", - "dev": true, - "requires": { - "pify": "^4.0.1", - "semver": "^5.6.0" - } - }, - "memory-fs": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/memory-fs/-/memory-fs-0.4.1.tgz", - "integrity": "sha512-cda4JKCxReDXFXRqOHPQscuIYg1PvxbE2S2GP45rnwfEK+vZaXC8C1OFvdHIbgw0DLzowXGVoxLaAmlgRy14GQ==", - "dev": true, - "requires": { - "errno": "^0.1.3", - "readable-stream": "^2.0.1" - } - }, - "micromatch": { - "version": "3.1.10", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", - "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", - "dev": true, - "requires": { - "arr-diff": "^4.0.0", - "array-unique": "^0.3.2", - "braces": "^2.3.1", - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "extglob": "^2.0.4", - "fragment-cache": "^0.2.1", - "kind-of": "^6.0.2", - "nanomatch": "^1.2.9", - "object.pick": "^1.3.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.2" - } - }, - "p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", - "dev": true, - "requires": { - "p-try": "^2.0.0" - } - }, - "p-locate": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", - "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", - "dev": true, - "requires": { - "p-limit": "^2.0.0" - } - }, - "path-exists": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", - "integrity": "sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==", - "dev": true - }, - "pkg-dir": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-3.0.0.tgz", - "integrity": "sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw==", - "dev": true, - "requires": { - "find-up": "^3.0.0" - } - }, - "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" - } - }, - "schema-utils": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-1.0.0.tgz", - "integrity": "sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g==", - "dev": true, - "requires": { - "ajv": "^6.1.0", - "ajv-errors": "^1.0.0", - "ajv-keywords": "^3.1.0" - } - }, - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "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 - }, - "ssri": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/ssri/-/ssri-6.0.2.tgz", - "integrity": "sha512-cepbSq/neFK7xB6A50KHN0xHDotYzq58wWCa5LeWqnPrHG8GzfEjO/4O8kpmcGW+oaxkvhEJCWgbgNk4/ZV93Q==", - "dev": true, - "requires": { - "figgy-pudding": "^3.5.1" - } - }, - "terser-webpack-plugin": { - "version": "1.4.5", - "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-1.4.5.tgz", - "integrity": "sha512-04Rfe496lN8EYruwi6oPQkG0vo8C+HT49X687FZnpPF0qMAIHONI6HEXYPKDOE8e5HjXTyKfqRd/agHtH0kOtw==", - "dev": true, - "requires": { - "cacache": "^12.0.2", - "find-cache-dir": "^2.1.0", - "is-wsl": "^1.1.0", - "schema-utils": "^1.0.0", - "serialize-javascript": "^4.0.0", - "source-map": "^0.6.1", - "terser": "^4.1.2", - "webpack-sources": "^1.4.0", - "worker-farm": "^1.7.0" - } - }, - "to-regex-range": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", - "integrity": "sha512-ZZWNfCjUokXXDGXFpZehJIkZqq91BcULFq/Pi7M5i4JnxXdhMKAK682z8bCW3o8Hj1wuuzoKcW3DfVzaP6VuNg==", - "dev": true, - "requires": { - "is-number": "^3.0.0", - "repeat-string": "^1.6.1" - } - }, - "y18n": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz", - "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==", - "dev": true + "enhanced-resolve": "^5.10.0", + "es-module-lexer": "^0.9.0", + "eslint-scope": "5.1.1", + "events": "^3.2.0", + "glob-to-regexp": "^0.4.1", + "graceful-fs": "^4.2.9", + "json-parse-even-better-errors": "^2.3.1", + "loader-runner": "^4.2.0", + "mime-types": "^2.1.27", + "neo-async": "^2.6.2", + "schema-utils": "^3.1.0", + "tapable": "^2.1.1", + "terser-webpack-plugin": "^5.1.3", + "watchpack": "^2.4.0", + "webpack-sources": "^3.2.3" + }, + "bin": { + "webpack": "bin/webpack.js" + }, + "engines": { + "node": ">=10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependenciesMeta": { + "webpack-cli": { + "optional": true } } }, - "webpack-dev-middleware": { - "version": "3.7.2", - "resolved": "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-3.7.2.tgz", - "integrity": "sha512-1xC42LxbYoqLNAhV6YzTYacicgMZQTqRd27Sim9wn5hJrX3I5nxYy1SxSd4+gjUFsz1dQFj+yEe6zEVmSkeJjw==", - "dev": true, - "requires": { - "memory-fs": "^0.4.1", - "mime": "^2.4.4", - "mkdirp": "^0.5.1", + "node_modules/webpack-dev-middleware": { + "version": "5.3.3", + "resolved": "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-5.3.3.tgz", + "integrity": "sha512-hj5CYrY0bZLB+eTO+x/j67Pkrquiy7kWepMHmUMoPsmcUaeEnQJqFzHJOyxgWlq746/wUuA64p9ta34Kyb01pA==", + "dependencies": { + "colorette": "^2.0.10", + "memfs": "^3.4.3", + "mime-types": "^2.1.31", "range-parser": "^1.2.1", - "webpack-log": "^2.0.0" - }, - "dependencies": { - "memory-fs": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/memory-fs/-/memory-fs-0.4.1.tgz", - "integrity": "sha512-cda4JKCxReDXFXRqOHPQscuIYg1PvxbE2S2GP45rnwfEK+vZaXC8C1OFvdHIbgw0DLzowXGVoxLaAmlgRy14GQ==", - "dev": true, - "requires": { - "errno": "^0.1.3", - "readable-stream": "^2.0.1" - } - } + "schema-utils": "^4.0.0" + }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^4.0.0 || ^5.0.0" } }, - "webpack-dev-server": { - "version": "3.11.0", - "resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-3.11.0.tgz", - "integrity": "sha512-PUxZ+oSTxogFQgkTtFndEtJIPNmml7ExwufBZ9L2/Xyyd5PnOL5UreWe5ZT7IU25DSdykL9p1MLQzmLh2ljSeg==", - "dev": true, - "requires": { - "ansi-html": "0.0.7", - "bonjour": "^3.5.0", - "chokidar": "^2.1.8", + "node_modules/webpack-dev-middleware/node_modules/schema-utils": { + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.3.2.tgz", + "integrity": "sha512-Gn/JaSk/Mt9gYubxTtSn/QCV4em9mpAPiR1rqy/Ocu19u/G9J5WWdNoUT4SiV6mFC3y6cxyFcFwdzPM3FgxGAQ==", + "dependencies": { + "@types/json-schema": "^7.0.9", + "ajv": "^8.9.0", + "ajv-formats": "^2.1.1", + "ajv-keywords": "^5.1.0" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/webpack-dev-server": { + "version": "4.11.0", + "resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-4.11.0.tgz", + "integrity": "sha512-L5S4Q2zT57SK7tazgzjMiSMBdsw+rGYIX27MgPgx7LDhWO0lViPrHKoLS7jo5In06PWYAhlYu3PbyoC6yAThbw==", + "dependencies": { + "@types/bonjour": "^3.5.9", + "@types/connect-history-api-fallback": "^1.3.5", + "@types/express": "^4.17.13", + "@types/serve-index": "^1.9.1", + "@types/serve-static": "^1.13.10", + "@types/sockjs": "^0.3.33", + "@types/ws": "^8.5.1", + "ansi-html-community": "^0.0.8", + "bonjour-service": "^1.0.11", + "chokidar": "^3.5.3", + "colorette": "^2.0.10", "compression": "^1.7.4", - "connect-history-api-fallback": "^1.6.0", - "debug": "^4.1.1", - "del": "^4.1.1", - "express": "^4.17.1", - "html-entities": "^1.3.1", - "http-proxy-middleware": "0.19.1", - "import-local": "^2.0.0", - "internal-ip": "^4.3.0", - "ip": "^1.1.5", - "is-absolute-url": "^3.0.3", - "killable": "^1.0.1", - "loglevel": "^1.6.8", - "opn": "^5.5.0", - "p-retry": "^3.0.1", - "portfinder": "^1.0.26", - "schema-utils": "^1.0.0", - "selfsigned": "^1.10.7", - "semver": "^6.3.0", + "connect-history-api-fallback": "^2.0.0", + "default-gateway": "^6.0.3", + "express": "^4.17.3", + "graceful-fs": "^4.2.6", + "html-entities": "^2.3.2", + "http-proxy-middleware": "^2.0.3", + "ipaddr.js": "^2.0.1", + "open": "^8.0.9", + "p-retry": "^4.5.0", + "rimraf": "^3.0.2", + "schema-utils": "^4.0.0", + "selfsigned": "^2.0.1", "serve-index": "^1.9.1", - "sockjs": "0.3.20", - "sockjs-client": "1.4.0", + "sockjs": "^0.3.24", "spdy": "^4.0.2", - "strip-ansi": "^3.0.1", - "supports-color": "^6.1.0", - "url": "^0.11.0", - "webpack-dev-middleware": "^3.7.2", - "webpack-log": "^2.0.0", - "ws": "^6.2.1", - "yargs": "^13.3.2" - }, - "dependencies": { - "ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==", - "dev": true - }, - "anymatch": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-2.0.0.tgz", - "integrity": "sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw==", - "dev": true, - "requires": { - "micromatch": "^3.1.4", - "normalize-path": "^2.1.1" - }, - "dependencies": { - "normalize-path": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", - "integrity": "sha512-3pKJwH184Xo/lnH6oyP1q2pMd7HcypqqmRs91/6/i2CGtWwIKGCkOOMTm/zXbgTEWHw1uNpNi/igc3ePOYHb6w==", - "dev": true, - "requires": { - "remove-trailing-separator": "^1.0.1" - } - } - } - }, - "array-union": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz", - "integrity": "sha512-Dxr6QJj/RdU/hCaBjOfxW+q6lyuVE6JFWIrAUpuOOhoJJoQ99cUn3igRaHVB5P9WrgFVN0FfArM3x0cueOU8ng==", - "dev": true, - "requires": { - "array-uniq": "^1.0.1" - } - }, - "binary-extensions": { - "version": "1.13.1", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.13.1.tgz", - "integrity": "sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw==", - "dev": true - }, - "braces": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", - "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", - "dev": true, - "requires": { - "arr-flatten": "^1.1.0", - "array-unique": "^0.3.2", - "extend-shallow": "^2.0.1", - "fill-range": "^4.0.0", - "isobject": "^3.0.1", - "repeat-element": "^1.1.2", - "snapdragon": "^0.8.1", - "snapdragon-node": "^2.0.1", - "split-string": "^3.0.2", - "to-regex": "^3.0.1" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "chokidar": { - "version": "2.1.8", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-2.1.8.tgz", - "integrity": "sha512-ZmZUazfOzf0Nve7duiCKD23PFSCs4JPoYyccjUFF3aQkQadqBhfzhjkwBH2mNOG9cTBwhamM37EIsIkZw3nRgg==", - "dev": true, - "requires": { - "anymatch": "^2.0.0", - "async-each": "^1.0.1", - "braces": "^2.3.2", - "fsevents": "^1.2.7", - "glob-parent": "^3.1.0", - "inherits": "^2.0.3", - "is-binary-path": "^1.0.0", - "is-glob": "^4.0.0", - "normalize-path": "^3.0.0", - "path-is-absolute": "^1.0.0", - "readdirp": "^2.2.1", - "upath": "^1.1.1" - } - }, - "cliui": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-5.0.0.tgz", - "integrity": "sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA==", - "dev": true, - "requires": { - "string-width": "^3.1.0", - "strip-ansi": "^5.2.0", - "wrap-ansi": "^5.1.0" - }, - "dependencies": { - "ansi-regex": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.1.tgz", - "integrity": "sha512-ILlv4k/3f6vfQ4OoP2AGvirOktlQ98ZEL1k9FaQjxa3L1abBgbuTDAdPOpvbGncC0BTVQrl+OM8xZGK6tWXt7g==", - "dev": true - }, - "strip-ansi": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", - "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", - "dev": true, - "requires": { - "ansi-regex": "^4.1.0" - } - } - } - }, - "del": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/del/-/del-4.1.1.tgz", - "integrity": "sha512-QwGuEUouP2kVwQenAsOof5Fv8K9t3D8Ca8NxcXKrIpEHjTXK5J2nXLdP+ALI1cgv8wj7KuwBhTwBkOZSJKM5XQ==", - "dev": true, - "requires": { - "@types/glob": "^7.1.1", - "globby": "^6.1.0", - "is-path-cwd": "^2.0.0", - "is-path-in-cwd": "^2.0.0", - "p-map": "^2.0.0", - "pify": "^4.0.1", - "rimraf": "^2.6.3" - } - }, - "emoji-regex": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", - "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", - "dev": true - }, - "fill-range": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", - "integrity": "sha512-VcpLTWqWDiTerugjj8e3+esbg+skS3M9e54UuR3iCeIDMXCLTsAH8hTSzDQU/X6/6t3eYkOKoZSef2PlU6U1XQ==", - "dev": true, - "requires": { - "extend-shallow": "^2.0.1", - "is-number": "^3.0.0", - "repeat-string": "^1.6.1", - "to-regex-range": "^2.1.0" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "find-up": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", - "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", - "dev": true, - "requires": { - "locate-path": "^3.0.0" - } - }, - "fsevents": { - "version": "1.2.13", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.13.tgz", - "integrity": "sha512-oWb1Z6mkHIskLzEJ/XWX0srkpkTQ7vaopMQkyaEIoq0fmtFVxOthb8cCxeT+p3ynTdkk/RZwbgG4brR5BeWECw==", - "dev": true, - "optional": true, - "requires": { - "bindings": "^1.5.0", - "nan": "^2.12.1" - } - }, - "glob-parent": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz", - "integrity": "sha512-E8Ak/2+dZY6fnzlR7+ueWvhsH1SjHr4jjss4YS/h4py44jY9MhK/VFdaZJAWDz6BbL21KeteKxFSFpq8OS5gVA==", - "dev": true, - "requires": { - "is-glob": "^3.1.0", - "path-dirname": "^1.0.0" - }, - "dependencies": { - "is-glob": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", - "integrity": "sha512-UFpDDrPgM6qpnFNI+rh/p3bUaq9hKLZN8bMUWzxmcnZVS3omf4IPK+BrewlnWjO1WmUsMYuSjKh4UJuV4+Lqmw==", - "dev": true, - "requires": { - "is-extglob": "^2.1.0" - } - } - } - }, - "globby": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/globby/-/globby-6.1.0.tgz", - "integrity": "sha512-KVbFv2TQtbzCoxAnfD6JcHZTYCzyliEaaeM/gH8qQdkKr5s0OP9scEgvdcngyk7AVdY6YVW/TJHd+lQ/Df3Daw==", - "dev": true, - "requires": { - "array-union": "^1.0.1", - "glob": "^7.0.3", - "object-assign": "^4.0.1", - "pify": "^2.0.0", - "pinkie-promise": "^2.0.0" - }, - "dependencies": { - "pify": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==", - "dev": true - } - } - }, - "is-absolute-url": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/is-absolute-url/-/is-absolute-url-3.0.3.tgz", - "integrity": "sha512-opmNIX7uFnS96NtPmhWQgQx6/NYFgsUXYMllcfzwWKUMwfo8kku1TvE6hkNcH+Q1ts5cMVrsY7j0bxXQDciu9Q==", - "dev": true - }, - "is-binary-path": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz", - "integrity": "sha512-9fRVlXc0uCxEDj1nQzaWONSpbTfx0FmJfzHF7pwlI8DkWGoHBBea4Pg5Ky0ojwwxQmnSifgbKkI06Qv0Ljgj+Q==", - "dev": true, - "requires": { - "binary-extensions": "^1.0.0" - } - }, - "is-extendable": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", - "integrity": "sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha512-VHskAKYM8RfSFXwee5t5cbN5PZeq1Wrh6qd5bkyiXIf6UQcN6w/A0eXM9r6t8d+GYOh+o6ZhiEnb88LN/Y8m2w==", - "dev": true - }, - "is-number": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", - "integrity": "sha512-4cboCqIpliH+mAvFNegjZQ4kgKc3ZUhQVr3HvWbSh5q3WH2v82ct+T2Y1hdU5Gdtorx/cLifQjqCbL7bpznLTg==", - "dev": true, - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "is-path-cwd": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/is-path-cwd/-/is-path-cwd-2.2.0.tgz", - "integrity": "sha512-w942bTcih8fdJPJmQHFzkS76NEP8Kzzvmw92cXsazb8intwLqPibPPdXf4ANdKV3rYMuuQYGIWtvz9JilB3NFQ==", - "dev": true - }, - "is-path-in-cwd": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-path-in-cwd/-/is-path-in-cwd-2.1.0.tgz", - "integrity": "sha512-rNocXHgipO+rvnP6dk3zI20RpOtrAM/kzbB258Uw5BWr3TpXi861yzjo16Dn4hUox07iw5AyeMLHWsujkjzvRQ==", - "dev": true, - "requires": { - "is-path-inside": "^2.1.0" - } - }, - "is-path-inside": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-2.1.0.tgz", - "integrity": "sha512-wiyhTzfDWsvwAW53OBWF5zuvaOGlZ6PwYxAbPVDhpm+gM09xKQGjBq/8uYN12aDvMxnAnq3dxTyoSoRNmg5YFg==", - "dev": true, - "requires": { - "path-is-inside": "^1.0.2" - } - }, - "locate-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", - "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", - "dev": true, - "requires": { - "p-locate": "^3.0.0", - "path-exists": "^3.0.0" - } - }, - "micromatch": { - "version": "3.1.10", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", - "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", - "dev": true, - "requires": { - "arr-diff": "^4.0.0", - "array-unique": "^0.3.2", - "braces": "^2.3.1", - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "extglob": "^2.0.4", - "fragment-cache": "^0.2.1", - "kind-of": "^6.0.2", - "nanomatch": "^1.2.9", - "object.pick": "^1.3.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.2" - } - }, - "p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", - "dev": true, - "requires": { - "p-try": "^2.0.0" - } - }, - "p-locate": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", - "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", - "dev": true, - "requires": { - "p-limit": "^2.0.0" - } - }, - "p-map": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/p-map/-/p-map-2.1.0.tgz", - "integrity": "sha512-y3b8Kpd8OAN444hxfBbFfj1FY/RjtTd8tzYwhUqNYXx0fXx2iX4maP4Qr6qhIKbQXI02wTLAda4fYUbDagTUFw==", - "dev": true - }, - "path-exists": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", - "integrity": "sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==", - "dev": true - }, - "readdirp": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.2.1.tgz", - "integrity": "sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ==", - "dev": true, - "requires": { - "graceful-fs": "^4.1.11", - "micromatch": "^3.1.10", - "readable-stream": "^2.0.2" - } - }, - "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" - } - }, - "schema-utils": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-1.0.0.tgz", - "integrity": "sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g==", - "dev": true, - "requires": { - "ajv": "^6.1.0", - "ajv-errors": "^1.0.0", - "ajv-keywords": "^3.1.0" - } - }, - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - }, - "string-width": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", - "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", - "dev": true, - "requires": { - "emoji-regex": "^7.0.1", - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^5.1.0" - }, - "dependencies": { - "ansi-regex": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.1.tgz", - "integrity": "sha512-ILlv4k/3f6vfQ4OoP2AGvirOktlQ98ZEL1k9FaQjxa3L1abBgbuTDAdPOpvbGncC0BTVQrl+OM8xZGK6tWXt7g==", - "dev": true - }, - "strip-ansi": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", - "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", - "dev": true, - "requires": { - "ansi-regex": "^4.1.0" - } - } - } - }, - "strip-ansi": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg==", - "dev": true, - "requires": { - "ansi-regex": "^2.0.0" - } - }, - "supports-color": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", - "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - }, - "to-regex-range": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", - "integrity": "sha512-ZZWNfCjUokXXDGXFpZehJIkZqq91BcULFq/Pi7M5i4JnxXdhMKAK682z8bCW3o8Hj1wuuzoKcW3DfVzaP6VuNg==", - "dev": true, - "requires": { - "is-number": "^3.0.0", - "repeat-string": "^1.6.1" - } - }, - "wrap-ansi": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-5.1.0.tgz", - "integrity": "sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q==", - "dev": true, - "requires": { - "ansi-styles": "^3.2.0", - "string-width": "^3.0.0", - "strip-ansi": "^5.0.0" - }, - "dependencies": { - "ansi-regex": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.1.tgz", - "integrity": "sha512-ILlv4k/3f6vfQ4OoP2AGvirOktlQ98ZEL1k9FaQjxa3L1abBgbuTDAdPOpvbGncC0BTVQrl+OM8xZGK6tWXt7g==", - "dev": true - }, - "strip-ansi": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", - "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", - "dev": true, - "requires": { - "ansi-regex": "^4.1.0" - } - } - } - }, - "ws": { - "version": "6.2.2", - "resolved": "https://registry.npmjs.org/ws/-/ws-6.2.2.tgz", - "integrity": "sha512-zmhltoSR8u1cnDsD43TX59mzoMZsLKqUweyYBAIvTngR3shc0W6aOZylZmq/7hqyVxPdi+5Ud2QInblgyE72fw==", - "dev": true, - "requires": { - "async-limiter": "~1.0.0" - } - }, - "y18n": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz", - "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==", - "dev": true - }, - "yargs": { - "version": "13.3.2", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-13.3.2.tgz", - "integrity": "sha512-AX3Zw5iPruN5ie6xGRIDgqkT+ZhnRlZMLMHAs8tg7nRruy2Nb+i5o9bwghAogtM08q1dpr2LVoS8KSTMYpWXUw==", - "dev": true, - "requires": { - "cliui": "^5.0.0", - "find-up": "^3.0.0", - "get-caller-file": "^2.0.1", - "require-directory": "^2.1.1", - "require-main-filename": "^2.0.0", - "set-blocking": "^2.0.0", - "string-width": "^3.0.0", - "which-module": "^2.0.0", - "y18n": "^4.0.0", - "yargs-parser": "^13.1.2" - } - }, - "yargs-parser": { - "version": "13.1.2", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.2.tgz", - "integrity": "sha512-3lbsNRf/j+A4QuSZfDRA7HRSfWrzO0YjqTJd5kjAq37Zep1CEgaYmrH9Q3GwPiB9cHyd1Y1UwggGhJGoxipbzg==", - "dev": true, - "requires": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" - } + "webpack-dev-middleware": "^5.3.1", + "ws": "^8.4.2" + }, + "bin": { + "webpack-dev-server": "bin/webpack-dev-server.js" + }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^4.37.0 || ^5.0.0" + }, + "peerDependenciesMeta": { + "webpack-cli": { + "optional": true } } }, - "webpack-log": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/webpack-log/-/webpack-log-2.0.0.tgz", - "integrity": "sha512-cX8G2vR/85UYG59FgkoMamwHUIkSSlV3bBMRsbxVXVUk2j6NleCKjQ/WE9eYg9WY4w25O9w8wKP4rzNZFmUcUg==", - "dev": true, - "requires": { - "ansi-colors": "^3.0.0", - "uuid": "^3.3.2" + "node_modules/webpack-dev-server/node_modules/schema-utils": { + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.3.2.tgz", + "integrity": "sha512-Gn/JaSk/Mt9gYubxTtSn/QCV4em9mpAPiR1rqy/Ocu19u/G9J5WWdNoUT4SiV6mFC3y6cxyFcFwdzPM3FgxGAQ==", + "dependencies": { + "@types/json-schema": "^7.0.9", + "ajv": "^8.9.0", + "ajv-formats": "^2.1.1", + "ajv-keywords": "^5.1.0" + }, + "engines": { + "node": ">= 10.13.0" }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/webpack-merge": { + "version": "5.8.0", + "resolved": "https://registry.npmjs.org/webpack-merge/-/webpack-merge-5.8.0.tgz", + "integrity": "sha512-/SaI7xY0831XwP6kzuwhKWVKDP9t1QY1h65lAFLbZqMPIuYcD9QAW4u9STIbU9kaJbPBB/geU/gLr1wDjOhQ+Q==", "dependencies": { - "ansi-colors": { - "version": "3.2.4", - "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-3.2.4.tgz", - "integrity": "sha512-hHUXGagefjN2iRrID63xckIvotOXOojhQKWIPUZ4mNUZ9nLZW+7FMNoE1lOkEhNWYsx/7ysGIuJYCiMAA9FnrA==", - "dev": true - }, - "uuid": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", - "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==", - "dev": true - } + "clone-deep": "^4.0.1", + "wildcard": "^2.0.0" + }, + "engines": { + "node": ">=10.0.0" } }, - "webpack-merge": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/webpack-merge/-/webpack-merge-4.2.2.tgz", - "integrity": "sha512-TUE1UGoTX2Cd42j3krGYqObZbOD+xF7u28WB7tfUordytSjbWTIjK/8V0amkBfTYN4/pB/GIDlJZZ657BGG19g==", - "dev": true, - "requires": { - "lodash": "^4.17.15" + "node_modules/webpack-sources": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-3.2.3.tgz", + "integrity": "sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w==", + "engines": { + "node": ">=10.13.0" } }, - "webpack-sources": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-1.4.3.tgz", - "integrity": "sha512-lgTS3Xhv1lCOKo7SA5TjKXMjpSM4sBjNV5+q2bqesbSPs5FjGmU6jjtBSkX9b4qW87vDIsCIlUPOEhbZrMdjeQ==", - "dev": true, - "requires": { - "source-list-map": "^2.0.0", - "source-map": "~0.6.1" - }, + "node_modules/webpack-subresource-integrity": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/webpack-subresource-integrity/-/webpack-subresource-integrity-5.1.0.tgz", + "integrity": "sha512-sacXoX+xd8r4WKsy9MvH/q/vBtEHr86cpImXwyg74pFIpERKt6FmB8cXpeuh0ZLgclOlHI4Wcll7+R5L02xk9Q==", "dependencies": { - "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 + "typed-assert": "^1.0.8" + }, + "engines": { + "node": ">= 12" + }, + "peerDependencies": { + "html-webpack-plugin": ">= 5.0.0-beta.1 < 6", + "webpack": "^5.12.0" + }, + "peerDependenciesMeta": { + "html-webpack-plugin": { + "optional": true } } }, - "webpack-subresource-integrity": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/webpack-subresource-integrity/-/webpack-subresource-integrity-1.4.0.tgz", - "integrity": "sha512-GB1kB/LwAWC3CxwcedGhMkxGpNZxSheCe1q+KJP1bakuieAdX/rGHEcf5zsEzhKXpqsGqokgsDoD9dIkr61VDQ==", - "dev": true, - "requires": { - "webpack-sources": "^1.3.0" + "node_modules/webpack/node_modules/@types/estree": { + "version": "0.0.51", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.51.tgz", + "integrity": "sha512-CuPgU6f3eT/XgKKPqKd/gLZV1Xmvf1a2R5POBOGQa6uv82xpls89HU5zKeVoyR8XzHd1RGNOlQlvUe3CFkjWNQ==" + }, + "node_modules/webpack/node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "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" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" } }, - "websocket-driver": { - "version": "0.6.5", - "resolved": "https://registry.npmjs.org/websocket-driver/-/websocket-driver-0.6.5.tgz", - "integrity": "sha512-oBx6ZM1Gs5q2jwZuSN/Qxyy/fbgomV8+vqsmipaPKB/74hjHlKuM07jNmRhn4qa2AdUwsgxrltq+gaPsHgcl0Q==", - "dev": true, - "requires": { + "node_modules/webpack/node_modules/ajv-keywords": { + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", + "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", + "peerDependencies": { + "ajv": "^6.9.1" + } + }, + "node_modules/webpack/node_modules/json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==" + }, + "node_modules/webpack/node_modules/schema-utils": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.3.0.tgz", + "integrity": "sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==", + "dependencies": { + "@types/json-schema": "^7.0.8", + "ajv": "^6.12.5", + "ajv-keywords": "^3.5.2" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/websocket-driver": { + "version": "0.7.4", + "resolved": "https://registry.npmjs.org/websocket-driver/-/websocket-driver-0.7.4.tgz", + "integrity": "sha512-b17KeDIQVjvb0ssuSDF2cYXSg2iztliJ4B9WdsuB6J952qCPKmnVq4DyW5motImXHDC1cBT/1UezrJVsKw5zjg==", + "dependencies": { + "http-parser-js": ">=0.5.1", + "safe-buffer": ">=5.1.0", "websocket-extensions": ">=0.1.1" + }, + "engines": { + "node": ">=0.8.0" } }, - "websocket-extensions": { + "node_modules/websocket-extensions": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/websocket-extensions/-/websocket-extensions-0.1.4.tgz", "integrity": "sha512-OqedPIGOfsDlo31UNwYbCFMSaO9m9G/0faIHj5/dZFDMFqPTcx6UwqyOy3COEaEOg/9VsGIpdqn62W5KhoKSpg==", - "dev": true - }, - "when": { - "version": "3.6.4", - "resolved": "https://registry.npmjs.org/when/-/when-3.6.4.tgz", - "integrity": "sha512-d1VUP9F96w664lKINMGeElWdhhb5sC+thXM+ydZGU3ZnaE09Wv6FaS+mpM9570kcDs/xMfcXJBTLsMdHEFYY9Q==", - "dev": true + "engines": { + "node": ">=0.8.0" + } }, - "which": { + "node_modules/which": { "version": "1.3.1", "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", "dev": true, - "requires": { + "dependencies": { "isexe": "^2.0.0" + }, + "bin": { + "which": "bin/which" } }, - "which-boxed-primitive": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz", - "integrity": "sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==", - "dev": true, - "requires": { - "is-bigint": "^1.0.1", - "is-boolean-object": "^1.1.0", - "is-number-object": "^1.0.4", - "is-string": "^1.0.5", - "is-symbol": "^1.0.3" - } - }, - "which-module": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", - "integrity": "sha512-B+enWhmw6cjfVC7kS8Pj9pCrKSc5txArRyaYGe088shv/FGWH+0Rjx/xPgtsWfsUtS27FkP697E4DDhgrgoc0Q==", - "dev": true - }, - "which-typed-array": { - "version": "1.1.9", - "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.9.tgz", - "integrity": "sha512-w9c4xkx6mPidwp7180ckYWfMmvxpjlZuIudNtDf4N/tTAUB8VJbX25qZoAsrtGuYNnGw3pa0AXgbGKRB8/EceA==", - "dev": true, - "requires": { - "available-typed-arrays": "^1.0.5", - "call-bind": "^1.0.2", - "for-each": "^0.3.3", - "gopd": "^1.0.1", - "has-tostringtag": "^1.0.0", - "is-typed-array": "^1.1.10" - } - }, - "widest-line": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/widest-line/-/widest-line-3.1.0.tgz", - "integrity": "sha512-NsmoXalsWVDMGupxZ5R08ka9flZjjiLvHVAWYOKtiKM8ujtZWr9cRffak+uSE48+Ob8ObalXpwyeUiyDD6QFgg==", - "dev": true, - "requires": { - "string-width": "^4.0.0" - } - }, - "worker-farm": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/worker-farm/-/worker-farm-1.7.0.tgz", - "integrity": "sha512-rvw3QTZc8lAxyVrqcSGVm5yP/IJ2UcB3U0graE3LCFoZ0Yn2x4EoVSqJKdB/T5M+FLcRPjz4TDacRf3OCfNUzw==", + "node_modules/wide-align": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.5.tgz", + "integrity": "sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==", "dev": true, - "requires": { - "errno": "~0.1.7" + "dependencies": { + "string-width": "^1.0.2 || 2 || 3 || 4" } }, - "worker-plugin": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/worker-plugin/-/worker-plugin-4.0.3.tgz", - "integrity": "sha512-7hFDYWiKcE3yHZvemsoM9lZis/PzurHAEX1ej8PLCu818Rt6QqUAiDdxHPCKZctzmhqzPpcFSgvMCiPbtooqAg==", - "dev": true, - "requires": { - "loader-utils": "^1.1.0" - }, - "dependencies": { - "json5": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz", - "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==", - "dev": true, - "requires": { - "minimist": "^1.2.0" - } - }, - "loader-utils": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.2.tgz", - "integrity": "sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==", - "dev": true, - "requires": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^1.0.1" - } - } - } + "node_modules/wildcard": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/wildcard/-/wildcard-2.0.1.tgz", + "integrity": "sha512-CC1bOL87PIWSBhDcTrdeLo6eGT7mCFtrg0uIJtqJUFyK+eJnzl8A1niH56uu7KMa5XFrtiV+AQuHO3n7DsHnLQ==" }, - "wrap-ansi": { + "node_modules/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": { + "dependencies": { "ansi-styles": "^4.0.0", "string-width": "^4.1.0", "strip-ansi": "^6.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 - } + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" } }, - "wrappy": { + "node_modules/wrappy": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", - "dev": true - }, - "write-file-atomic": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-3.0.3.tgz", - "integrity": "sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q==", - "dev": true, - "requires": { - "imurmurhash": "^0.1.4", - "is-typedarray": "^1.0.0", - "signal-exit": "^3.0.2", - "typedarray-to-buffer": "^3.1.5" - } - }, - "ws": { - "version": "7.4.6", - "resolved": "https://registry.npmjs.org/ws/-/ws-7.4.6.tgz", - "integrity": "sha512-YmhHDO4MzaDLB+M9ym/mDA5z0naX8j7SIlT8f8z+I0VtzsRbekxEutHSme7NPS2qE8StCYQNUnfWdXta/Yu85A==", - "dev": true - }, - "xdg-basedir": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/xdg-basedir/-/xdg-basedir-4.0.0.tgz", - "integrity": "sha512-PSNhEJDejZYV7h50BohL09Er9VaIefr2LMAf3OEmpCkjOi34eYyQYAXUTjEQtZJTKcF0E2UKTh+osDLsgNim9Q==", - "dev": true + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==" }, - "xml2js": { - "version": "0.4.23", - "resolved": "https://registry.npmjs.org/xml2js/-/xml2js-0.4.23.tgz", - "integrity": "sha512-ySPiMjM0+pLDftHgXY4By0uswI3SPKLDw/i3UXbnO8M/p28zqexCUoPmQFrYD+/1BzhGJSs2i1ERWKJAtiLrug==", - "dev": true, - "requires": { - "sax": ">=0.6.0", - "xmlbuilder": "~11.0.0" + "node_modules/ws": { + "version": "8.17.1", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.17.1.tgz", + "integrity": "sha512-6XQFvXTkbfUOZOKKILFG1PDK2NDQs4azKQl26T0YS5CxqWLgXajbPZ+h4gZekJyRqFU8pvnbAbbs/3TgRPy+GQ==", + "engines": { + "node": ">=10.0.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": ">=5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } } }, - "xmlbuilder": { - "version": "11.0.1", - "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-11.0.1.tgz", - "integrity": "sha512-fDlsI/kFEx7gLvbecc0/ohLG50fugQp8ryHzMTuW9vSa1GJ0XYWKnhsUx7oie3G98+r56aTQIUB4kht42R3JvA==", - "dev": true - }, - "xmlhttprequest-ssl": { - "version": "1.6.3", - "resolved": "https://registry.npmjs.org/xmlhttprequest-ssl/-/xmlhttprequest-ssl-1.6.3.tgz", - "integrity": "sha512-3XfeQE/wNkvrIktn2Kf0869fC0BN6UpydVasGIeSm2B1Llihf7/0UfZM+eCkOw3P7bP4+qPgqhm7ZoxuJtFU0Q==", - "dev": true - }, - "xtend": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", - "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==", - "dev": true - }, - "xxhashjs": { + "node_modules/xxhashjs": { "version": "0.2.2", "resolved": "https://registry.npmjs.org/xxhashjs/-/xxhashjs-0.2.2.tgz", "integrity": "sha512-AkTuIuVTET12tpsVIQo+ZU6f/qDmKuRUcjaqR+OIvm+aCBsZ95i7UVY5WJ9TMsSaZ0DA2WxoZ4acu0sPH+OKAw==", - "dev": true, - "requires": { + "dependencies": { "cuint": "^0.2.2" } }, - "y18n": { + "node_modules/y18n": { "version": "5.0.8", "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", - "dev": true + "engines": { + "node": ">=10" + } }, - "yallist": { + "node_modules/yallist": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", - "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", - "dev": true + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==" }, - "yargs": { - "version": "16.2.0", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", - "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", - "dev": true, - "requires": { + "node_modules/yaml": { + "version": "1.10.2", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz", + "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==", + "engines": { + "node": ">= 6" + } + }, + "node_modules/yargs": { + "version": "17.5.1", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.5.1.tgz", + "integrity": "sha512-t6YAJcxDkNX7NFYiVtKvWUz8l+PaKTLiL63mJYWR2GnHq2gjEWISzsLp9wg3aY36dY1j+gfIEL3pIF+XlJJfbA==", + "dependencies": { "cliui": "^7.0.2", "escalade": "^3.1.1", "get-caller-file": "^2.0.5", "require-directory": "^2.1.1", - "string-width": "^4.2.0", + "string-width": "^4.2.3", "y18n": "^5.0.5", - "yargs-parser": "^20.2.2" + "yargs-parser": "^21.0.0" + }, + "engines": { + "node": ">=12" } }, - "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==", - "dev": true - }, - "yeast": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/yeast/-/yeast-0.1.2.tgz", - "integrity": "sha512-8HFIh676uyGYP6wP13R/j6OJ/1HwJ46snpvzE7aHAN3Ryqh2yX6Xox2B4CUmTwwOIzlG3Bs7ocsP5dZH/R1Qbg==", - "dev": true - }, - "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 + "node_modules/yargs-parser": { + "version": "21.1.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", + "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", + "engines": { + "node": ">=12" + } }, - "zone.js": { - "version": "0.10.3", - "resolved": "https://registry.npmjs.org/zone.js/-/zone.js-0.10.3.tgz", - "integrity": "sha512-LXVLVEq0NNOqK/fLJo3d0kfzd4sxwn2/h67/02pjCjfKDxgx1i9QqpvtHD8CrBnSSwMw5+dy11O7FRX5mkO7Cg==" + "node_modules/zone.js": { + "version": "0.11.4", + "resolved": "https://registry.npmjs.org/zone.js/-/zone.js-0.11.4.tgz", + "integrity": "sha512-DDh2Ab+A/B+9mJyajPjHFPWfYU1H+pdun4wnnk0OcQTNjem1XQSZ2CDW+rfZEUDjv5M19SBqAkjZi0x5wuB5Qw==", + "dependencies": { + "tslib": "^2.0.0" + } } } } diff --git a/plugins/arcgis/web-app/package.json b/plugins/arcgis/web-app/package.json index 8f2ea17df..c4911acee 100644 --- a/plugins/arcgis/web-app/package.json +++ b/plugins/arcgis/web-app/package.json @@ -1,59 +1,48 @@ { - "name": "@ngageoint/mage.arc-web.workspace", - "version": "1.0.0", + "name": "@ngageoint/mage.arcgis.web-app.workspace", + "version": "1.0.0-beta.1", "scripts": { "ng": "ng", "start": "ng serve", - "build": "npm-run-all build:mage-arc-web", - "build:mage-arc-web": "ng build --project=mage-arc-web", - "test": "ng test --project=mage-arc-web", - "test-headless": "ng test --watch=false --browsers=ChromeHeadless --project=mage-arc-web", + "build": "ng build --project=main", + "build:main": "ng build --project=main", + "test": "ng test --project=main", + "test-headless": "ng test --watch=false --browsers=ChromeHeadless --project=main", "lint": "ng lint", "e2e": "ng e2e", "clean": "rm -rf dist" }, "private": true, "dependencies": { - "@angular/animations": "~9.1.13", - "@angular/cdk": "^9.2.4", - "@angular/common": "~9.1.13", - "@angular/compiler": "~9.1.13", - "@angular/core": "~9.1.13", - "@angular/forms": "~9.1.13", - "@angular/material": "~9.2.1", - "@angular/platform-browser": "~9.1.13", - "@angular/platform-browser-dynamic": "~9.1.13", - "@angular/router": "~9.1.13", - "@ng-select/ng-select": "^4.0.4", - "rxjs": "~6.6.7", - "tslib": "^1.10.0", - "zone.js": "~0.10.2" - }, - "peerDependencies": { - "@ngageoint/mage.web-core-lib": "^6.2.0-beta" + "@angular/animations": "14.3.0", + "@angular/cdk": "14.2.7", + "@angular/common": "14.3.0", + "@angular/compiler": "14.3.0", + "@angular/core": "14.3.0", + "@angular/forms": "14.3.0", + "@angular/material": "14.2.7", + "@angular/platform-browser": "14.3.0", + "@angular/platform-browser-dynamic": "14.3.0", + "@angular/router": "14.3.0", + "@ngageoint/mage.web-core-lib": "6.3.0-beta.4", + "rxjs": "7.6.0", + "tslib": "2.8.1", + "zone.js": "0.11.4" }, "devDependencies": { - "@angular-devkit/build-angular": "~0.901.15", - "@angular-devkit/build-ng-packagr": "~0.901.15", - "@angular/cli": "~9.1.15", - "@angular/compiler-cli": "~9.1.13", - "@angular/material": "^9.2.4", - "@types/geojson": "^7946.0.7", - "@types/jasmine": "~3.5.0", - "@types/jasminewd2": "~2.0.3", - "@types/node": "^12.11.1", - "codelyzer": "^5.1.2", - "jasmine-core": "~3.5.0", - "jasmine-spec-reporter": "~4.2.1", - "karma": "~5.0.0", - "karma-chrome-launcher": "~3.1.0", - "karma-coverage-istanbul-reporter": "~2.1.0", - "ng-packagr": "^9.0.0", - "npm-run-all": "^4.1.5", - "protractor": "~7.0.0", - "stylus": "^0.54.8", - "ts-node": "~8.3.0", - "tslint": "~6.1.0", - "typescript": "~3.8.3" + "@angular-devkit/build-angular": "14.2.13", + "@angular/cli": "14.2.13", + "@angular/compiler-cli": "14.3.0", + "@types/geojson": "7946.0.7", + "@types/jasmine": "3.5.0", + "@types/node": "12.11.1", + "jasmine-core": "4.6.1", + "karma": "6.4.3", + "karma-chrome-launcher": "3.1.0", + "karma-coverage": "2.2.1", + "karma-jasmine": "5.1.0", + "karma-jasmine-html-reporter": "2.1.0", + "ng-packagr": "14.2.2", + "typescript": "4.6.4" } -} +} \ No newline at end of file diff --git a/plugins/arcgis/web-app/projects/main/karma.conf.js b/plugins/arcgis/web-app/projects/main/karma.conf.js new file mode 100644 index 000000000..9d96f8368 --- /dev/null +++ b/plugins/arcgis/web-app/projects/main/karma.conf.js @@ -0,0 +1,44 @@ +// Karma configuration file, see link for more information +// https://karma-runner.github.io/1.0/config/configuration-file.html + +module.exports = function (config) { + config.set({ + basePath: '', + frameworks: ['jasmine', '@angular-devkit/build-angular'], + plugins: [ + require('karma-jasmine'), + require('karma-chrome-launcher'), + require('karma-jasmine-html-reporter'), + require('karma-coverage'), + require('@angular-devkit/build-angular/plugins/karma') + ], + client: { + jasmine: { + // you can add configuration options for Jasmine here + // the possible options are listed at https://jasmine.github.io/api/edge/Configuration.html + // for example, you can disable the random execution with `random: false` + // or set a specific seed with `seed: 4321` + }, + clearContext: false // leave Jasmine Spec Runner output visible in browser + }, + jasmineHtmlReporter: { + suppressAll: true // removes the duplicated traces + }, + coverageReporter: { + dir: require('path').join(__dirname, '../../coverage/get-tests'), + subdir: '.', + reporters: [ + { type: 'html' }, + { type: 'text-summary' } + ] + }, + reporters: ['progress', 'kjhtml'], + port: 9876, + colors: true, + logLevel: config.LOG_INFO, + autoWatch: true, + browsers: ['Chrome'], + singleRun: false, + restartOnFileChange: true + }); +}; diff --git a/plugins/arcgis/web-app/projects/main/ng-package.json b/plugins/arcgis/web-app/projects/main/ng-package.json new file mode 100644 index 000000000..6dc5009db --- /dev/null +++ b/plugins/arcgis/web-app/projects/main/ng-package.json @@ -0,0 +1,7 @@ +{ + "$schema": "../../node_modules/ng-packagr/ng-package.schema.json", + "dest": "../../dist/main", + "lib": { + "entryFile": "src/public-api.ts" + } +} \ No newline at end of file diff --git a/plugins/arcgis/web-app/projects/main/package.json b/plugins/arcgis/web-app/projects/main/package.json new file mode 100644 index 000000000..554504621 --- /dev/null +++ b/plugins/arcgis/web-app/projects/main/package.json @@ -0,0 +1,10 @@ +{ + "name": "@ngageoint/mage.arcgis.web-app", + "version": "1.0.0", + "peerDependencies": { + "@ngageoint/mage.web-app": "^6.2.9 || ^6.3.0-beta.7" + }, + "dependencies": { + "tslib": "^2.0.0" + } +} \ No newline at end of file diff --git a/plugins/arcgis/web-app/mage-arc-web/src/lib/ArcGISConfig.ts b/plugins/arcgis/web-app/projects/main/src/lib/ArcGISConfig.ts similarity index 78% rename from plugins/arcgis/web-app/mage-arc-web/src/lib/ArcGISConfig.ts rename to plugins/arcgis/web-app/projects/main/src/lib/ArcGISConfig.ts index df860dfdc..3c2ed0f9b 100644 --- a/plugins/arcgis/web-app/mage-arc-web/src/lib/ArcGISConfig.ts +++ b/plugins/arcgis/web-app/projects/main/src/lib/ArcGISConfig.ts @@ -9,30 +9,14 @@ export interface FeatureServiceConfig { url: string /** - * Access token + * Flag indicating valid authentication */ - token?: string - - /** - * Create layers that don't exist - */ - createLayers?: boolean - - /** - * The administration url to the arc feature service. - */ - adminUrl?: string - - /** - * Administration access token - */ - adminToken?: string + authenticated: boolean /** * The feature layers. */ layers: FeatureLayerConfig[] - } /** @@ -50,26 +34,10 @@ export interface FeatureLayerConfig { */ geometryType?: string - /** - * Access token - */ - token?: string - /** * The event ids or names that sync to this arc feature layer. */ events?: (number|string)[] - - /** - * Add layer fields from form fields - */ - addFields?: boolean - - /** - * Delete editable layer fields missing from form fields - */ - deleteFields?: boolean - } /** diff --git a/plugins/arcgis/service/src/ArcGISPluginConfig.ts b/plugins/arcgis/web-app/projects/main/src/lib/ArcGISPluginConfig.ts similarity index 97% rename from plugins/arcgis/service/src/ArcGISPluginConfig.ts rename to plugins/arcgis/web-app/projects/main/src/lib/ArcGISPluginConfig.ts index 2d5592c20..831ce8b9a 100644 --- a/plugins/arcgis/service/src/ArcGISPluginConfig.ts +++ b/plugins/arcgis/web-app/projects/main/src/lib/ArcGISPluginConfig.ts @@ -10,6 +10,11 @@ export interface ArcGISPluginConfig { */ enabled: boolean + /** + * Mage base server url + */ + baseUrl: string + /** * Query the database for new observations to process at the given * repeating time interval in seconds. @@ -128,7 +133,8 @@ export interface ArcGISPluginConfig { } export const defaultArcGISPluginConfig = Object.freeze({ - enabled: true, + enabled: false, + baseUrl: '', intervalSeconds: 60, startupIntervalSeconds: 1, updateIntervalSeconds: 1, diff --git a/plugins/arcgis/web-app/mage-arc-web/src/lib/arc-admin/arc-admin.component.html b/plugins/arcgis/web-app/projects/main/src/lib/arc-admin/arc-admin.component.html similarity index 73% rename from plugins/arcgis/web-app/mage-arc-web/src/lib/arc-admin/arc-admin.component.html rename to plugins/arcgis/web-app/projects/main/src/lib/arc-admin/arc-admin.component.html index f1d46b311..d09362254 100644 --- a/plugins/arcgis/web-app/mage-arc-web/src/lib/arc-admin/arc-admin.component.html +++ b/plugins/arcgis/web-app/projects/main/src/lib/arc-admin/arc-admin.component.html @@ -1,188 +1,197 @@

ArcGIS Configuration

-
-
-

Processing

-

MAGE ArcGIS plugin processing settings.

-
-
- - - - - - - - - - - - - - - - - - - - - - - - - -
Enabled - - {{config.enabled}}
Interval (s) - - {{config.intervalSeconds}}
Startup Interval (s) - - {{config.startupIntervalSeconds}}
Update Interval (s) - - {{config.updateIntervalSeconds}}
Batch Size - - {{config.batchSize}}
Attachment Tolerance (ms) - - {{config.attachmentModifiedTolerance}}
-
-
- - -
-
-

Attributes

-

MAGE Field to ArcGIS Attribute mappings.

-
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Observation Id Field - - {{config.observationIdField}}
Id Separator - - {{config.idSeparator}}
Event Id Field - - {{config.eventIdField}}
Last Edited Date Field - - {{config.lastEditedDateField}}
Event Name Field - - {{config.eventNameField}}
User Id Field - - {{config.userIdField}}
Username Field - - {{config.usernameField}}
User Display Name Field - - {{config.userDisplayNameField}}
Device Id Field - - {{config.deviceIdField}}
Created At Field - - {{config.createdAtField}}
Last Modified Field - - {{config.lastModifiedField}}
Geometry Type Field - - {{config.geometryType}}
-
+ + + + Processing + + MAGE ArcGIS plugin processing settings. + + +
+
+
+ + Enabled + + true + false + + Process observations and send to configured ArcGIS feature layers + +
+
+ + Base URL + + Mage server base URL + +
+
+ + Interval + + Observation query and processing frequency time interval in seconds + +
+
+ + Startup Interval + + Startup interval in seconds to wait for feature layer processors to be ready + +
+
+ + Update Interval + + Processing wait time interval in seconds when pending observation updates exist + +
+
+ + Batch Size + + Maximum number of observations to process during a single time interval + +
+
+ + Attachment Tolerance + + Time tolerance in milliseconds to consider an attachment as modified compared to the observation + +
+
+
+
+ + + + +
+ + +
+ + + Attributes + MAGE Field to ArcGIS Attribute mappings. + + +
+
+
+ + Observation Id Field + + The ArcGIS layer text field attribute name to store the MAGE observation id + +
+
+ + Id Separator + + When event id field is not configured, the separator combining observation ids and event ids in the observation id field + +
+
+ + Event Id Field + + The ArcGIS layer integer field attribute name to store the MAGE event id + +
+
+ + Last Edited Date Field + + The last edited date field attribute name on the ArcGIS layer + +
+
+ + Event Name Field + + The ArcGIS layer text field attribute name to store the MAGE event name + +
+
+ + User Id Field + + The ArcGIS layer text field attribute name to store the MAGE user id + +
+
+ + Username Field + + The ArcGIS layer text field attribute name to store the MAGE username + +
+
+ + User Display Name Field + + The ArcGIS layer text field attribute name to store the MAGE user display name + +
+
+ + Device Id Field + + The ArcGIS layer text field attribute name to store the MAGE device id + +
+
+ + Created At Field + + The ArcGIS layer date time field attribute name to store the MAGE created at date + +
+
+ + Last Modified Field + + The ArcGIS layer date time field attribute name to store the MAGE last modified date (may be the + same as last edited date field if editable) + +
+
+ + Geometry Type Field + + The ArcGIS layer text field attribute name to store the Esri geometry type + +
+
+ + +
+
+
+
+
+
Field Mappings -
-
- - Interval - - - -
-
- - Startup Interval - - - -
-
- - Update Interval - - - -
-
- - Batch Size - - - -
-
- - Attachment Tolerance - - - -
-
- - - - - -

Attributes Configuration

@@ -878,8 +798,8 @@

Attributes Configuration

- +
diff --git a/plugins/arcgis/web-app/mage-arc-web/src/lib/arc-admin/arc-admin.component.scss b/plugins/arcgis/web-app/projects/main/src/lib/arc-admin/arc-admin.component.scss similarity index 90% rename from plugins/arcgis/web-app/mage-arc-web/src/lib/arc-admin/arc-admin.component.scss rename to plugins/arcgis/web-app/projects/main/src/lib/arc-admin/arc-admin.component.scss index f9618016c..f308245d6 100644 --- a/plugins/arcgis/web-app/mage-arc-web/src/lib/arc-admin/arc-admin.component.scss +++ b/plugins/arcgis/web-app/projects/main/src/lib/arc-admin/arc-admin.component.scss @@ -1,5 +1,3 @@ -@import '~@angular/material/theming'; - .arc-admin { position: relative; top: 0; @@ -9,9 +7,13 @@ padding: 1rem; } +.edit-processing-form .mat-form-field { + margin-bottom: 1.5rem !important; +} + section { >* { - margin-inline-start: 1em; + margin-inline-start: 0em; } header { @@ -52,20 +54,6 @@ section { } } -.attributes-table { - tr { - th { - font-weight: normal; - } - - td { - padding-left: 20px; - opacity: 0.5; - font-size: 0.9em; - } - } -} - .fieldOverrides { margin-top: 20px; } @@ -195,3 +183,18 @@ section { line-height: inherit; width: inherit; } + + +.mat-form-field { + width: 100%; + margin-bottom: 32px; +} + +mat-card { + margin-bottom: 8px; +} + +.hint { + font-size: 75%; + padding: 0 1em; +} \ No newline at end of file diff --git a/plugins/arcgis/web-app/mage-arc-web/src/lib/arc-admin/arc-admin.component.ts b/plugins/arcgis/web-app/projects/main/src/lib/arc-admin/arc-admin.component.ts similarity index 84% rename from plugins/arcgis/web-app/mage-arc-web/src/lib/arc-admin/arc-admin.component.ts rename to plugins/arcgis/web-app/projects/main/src/lib/arc-admin/arc-admin.component.ts index 914ba8304..5171c4ea3 100644 --- a/plugins/arcgis/web-app/mage-arc-web/src/lib/arc-admin/arc-admin.component.ts +++ b/plugins/arcgis/web-app/projects/main/src/lib/arc-admin/arc-admin.component.ts @@ -2,9 +2,9 @@ import { Component, OnInit, TemplateRef, ViewChild } from '@angular/core'; import { MatDialog } from '@angular/material/dialog' import { AttributeConfig, AttributeConcatenationConfig, AttributeDefaultConfig, AttributeValueConfig } from '../ArcGISConfig'; import { ArcGISPluginConfig, defaultArcGISPluginConfig } from '../ArcGISPluginConfig' -import { ArcService } from '../arc.service' -import { Subject } from 'rxjs'; -import { EventResult, FormResult } from '../EventsResult'; +import { ArcService, Form, MageEvent } from '../arc.service' +import { Subject, first } from 'rxjs'; +import { FormGroup, FormBuilder } from '@angular/forms'; @Component({ selector: 'arc-admin', @@ -26,7 +26,7 @@ export class ArcAdminComponent implements OnInit { editName: string; editValue: any; editOptions: any[]; - events: EventResult[] = []; + events: MageEvent[] = []; @ViewChild('infoDialog', { static: true }) private infoTemplate: TemplateRef @@ -53,12 +53,33 @@ export class ArcAdminComponent implements OnInit { @ViewChild('editAttributeConfigDialog', { static: true }) private editAttributeConfigTemplate: TemplateRef - constructor(private arcService: ArcService, private dialog: MatDialog) { + attributesForm: FormGroup; + + constructor(private arcService: ArcService, private dialog: MatDialog, private fb: FormBuilder) { this.config = defaultArcGISPluginConfig; - this.editConfig = defaultArcGISPluginConfig; + this.editConfig = this.copyConfig(); this.editFieldMappings = false; + this.attributesForm = this.fb.group({ + observationIdField: [''], + idSeparator: [''], + eventIdField: [''], + lastEditedDateField: [''], + eventNameField: [''], + userIdField: [''], + usernameField: [''], + userDisplayNameField: [''], + deviceIdField: [''], + createdAtField: [''], + lastModifiedField: [''], + geometryType: [''] + }); + arcService.fetchArcConfig().subscribe(x => { this.config = x; + if (!this.config.baseUrl) { + this.config.baseUrl = window.location.origin + } + this.editConfig = this.copyConfig(); arcService.fetchPopulatedEvents().subscribe(x => this.handleEventResults(x)); }) } @@ -69,12 +90,95 @@ export class ArcAdminComponent implements OnInit { } ngOnInit(): void { + this.arcService.fetchArcConfig().pipe(first()).subscribe({ + next: config => { + if (config) { + // Populate form with values from config + this.attributesForm.patchValue({ + observationIdField: config.observationIdField || '', + idSeparator: config.idSeparator || '', + eventIdField: config.eventIdField || '', + lastEditedDateField: config.lastEditedDateField || '', + eventNameField: config.eventNameField || '', + userIdField: config.userIdField || '', + usernameField: config.usernameField || '', + userDisplayNameField: config.userDisplayNameField || '', + deviceIdField: config.deviceIdField || '', + createdAtField: config.createdAtField || '', + lastModifiedField: config.lastModifiedField || '', + geometryType: config.geometryType || '' + }); + console.log('Form initialized with server config:', config); + } + }, + error: error => { + console.error('Failed to fetch config:', error); + } + }); + } + + //Save attributes form. If left blank, assign default value + onSubmit(): void { + console.log('submitting form...'); + + if (this.attributesForm.valid) { + const formValue = this.attributesForm.value; + this.editConfig = { + ...this.editConfig, + observationIdField: formValue.observationIdField || this.editConfig.observationIdField, + idSeparator: formValue.idSeparator || this.editConfig.idSeparator, + eventIdField: formValue.eventIdField || this.editConfig.eventIdField, + lastEditedDateField: formValue.lastEditedDateField || this.editConfig.lastEditedDateField, + eventNameField: formValue.eventNameField || this.editConfig.eventNameField, + userIdField: formValue.userIdField || this.editConfig.userIdField, + usernameField: formValue.usernameField || this.editConfig.usernameField, + userDisplayNameField: formValue.userDisplayNameField || this.editConfig.userDisplayNameField, + deviceIdField: formValue.deviceIdField || this.editConfig.deviceIdField, + createdAtField: formValue.createdAtField || this.editConfig.createdAtField, + lastModifiedField: formValue.lastModifiedField || this.editConfig.lastModifiedField, + geometryType: formValue.geometryType || this.editConfig.geometryType + }; + + console.log('Form Submitted:', this.editConfig); + console.log('formValue: ', formValue); + + this.saveEdit(); + } + else{ + console.log('Form is invalid, please correct the errors.') + } + } + + onCancel(): void { + console.log('Cancel selected'); + this.arcService.fetchArcConfig().pipe(first()).subscribe({ + next: config => { + if (config) { + this.attributesForm.patchValue({ + observationIdField: config.observationIdField || '', + idSeparator: config.idSeparator || '', + eventIdField: config.eventIdField || '', + lastEditedDateField: config.lastEditedDateField || '', + eventNameField: config.eventNameField || '', + userIdField: config.userIdField || '', + usernameField: config.usernameField || '', + userDisplayNameField: config.userDisplayNameField || '', + deviceIdField: config.deviceIdField || '', + createdAtField: config.createdAtField || '', + lastModifiedField: config.lastModifiedField || '', + geometryType: config.geometryType || '' + }); + console.log('Form reloaded with server config:', config); + } + }, + error: error => { + console.error('Failed to reload config from server:', error); + } + }); } - - handleEventResults(x: EventResult[]) { + handleEventResults(x: MageEvent[]) { this.events = x } - onDeleteLayer(layerUrl: string) { let index = 0; for (const featureServiceConfig of this.config.featureServices) { @@ -89,16 +193,6 @@ export class ArcAdminComponent implements OnInit { this.saveConfig(); } - onEditProcessing() { - this.editConfig = this.copyConfig() - this.dialog.open(this.editProcessingTemplate) - } - - onEditAttributes() { - this.editConfig = this.copyConfig() - this.dialog.open(this.editAttributesTemplate) - } - setField(field: string, value: any) { if (value != undefined && value.length == 0) { value = undefined @@ -205,6 +299,7 @@ export class ArcAdminComponent implements OnInit { cancelEdit() { console.log('Canceled configuration edit') + this.editConfig = this.copyConfig(); } keys(value: any): string[] { @@ -311,7 +406,7 @@ export class ArcAdminComponent implements OnInit { return omit } - findEvent(event: string): EventResult | undefined { + findEvent(event: string): MageEvent | undefined { let eventResult = undefined if (this.events != undefined) { const index = this.events.findIndex((element) => { @@ -324,7 +419,7 @@ export class ArcAdminComponent implements OnInit { return eventResult } - findForm(event: string, form: string): FormResult | undefined { + findForm(event: string, form: string): Form | undefined { let formResult = undefined let eventResult = this.findEvent(event) if (eventResult != undefined && eventResult.forms != undefined) { diff --git a/plugins/arcgis/web-app/mage-arc-web/src/lib/arc-event/ArcEvent.ts b/plugins/arcgis/web-app/projects/main/src/lib/arc-event/ArcEvent.ts similarity index 100% rename from plugins/arcgis/web-app/mage-arc-web/src/lib/arc-event/ArcEvent.ts rename to plugins/arcgis/web-app/projects/main/src/lib/arc-event/ArcEvent.ts diff --git a/plugins/arcgis/web-app/mage-arc-web/src/lib/arc-event/ArcEventLayer.ts b/plugins/arcgis/web-app/projects/main/src/lib/arc-event/ArcEventLayer.ts similarity index 100% rename from plugins/arcgis/web-app/mage-arc-web/src/lib/arc-event/ArcEventLayer.ts rename to plugins/arcgis/web-app/projects/main/src/lib/arc-event/ArcEventLayer.ts diff --git a/plugins/arcgis/web-app/mage-arc-web/src/lib/arc-event/ArcEventsModel.ts b/plugins/arcgis/web-app/projects/main/src/lib/arc-event/ArcEventsModel.ts similarity index 100% rename from plugins/arcgis/web-app/mage-arc-web/src/lib/arc-event/ArcEventsModel.ts rename to plugins/arcgis/web-app/projects/main/src/lib/arc-event/ArcEventsModel.ts diff --git a/plugins/arcgis/web-app/projects/main/src/lib/arc-event/arc-event.component.html b/plugins/arcgis/web-app/projects/main/src/lib/arc-event/arc-event.component.html new file mode 100644 index 000000000..0e09f4862 --- /dev/null +++ b/plugins/arcgis/web-app/projects/main/src/lib/arc-event/arc-event.component.html @@ -0,0 +1,63 @@ +
+ + Events + Change the ArcGIS layers each MAGE event sends its observations to. + +
+
+ There are no events synchronizing to ArcGIS layers. + +
+ + + + +
+
+ {{ event.name }} +
+
+
+ + {{ layerDisplay(featureLayer) }}, + +
+
+ + +
This event is not synchronizing to any ArcGIS layers.
+
+
+
+ + open_in_new + + +
+
+ +
+
+
+
+
+ + +

ArcGIS layers that MAGE event named {{currentEditingEvent.name}} is synchronizing

+ +
+
+ + {{layerDisplay(arcLayer)}} +
+
+
+ + + + +
+
\ No newline at end of file diff --git a/plugins/arcgis/web-app/projects/main/src/lib/arc-event/arc-event.component.scss b/plugins/arcgis/web-app/projects/main/src/lib/arc-event/arc-event.component.scss new file mode 100644 index 000000000..af96399be --- /dev/null +++ b/plugins/arcgis/web-app/projects/main/src/lib/arc-event/arc-event.component.scss @@ -0,0 +1,8 @@ +.arcEvent__info { + flex-grow: 1; +} + +.mat-divider { + margin-top: 12px; + margin-bottom: 12px; +} \ No newline at end of file diff --git a/plugins/arcgis/web-app/mage-arc-web/src/lib/arc-event/arc-event.component.ts b/plugins/arcgis/web-app/projects/main/src/lib/arc-event/arc-event.component.ts similarity index 96% rename from plugins/arcgis/web-app/mage-arc-web/src/lib/arc-event/arc-event.component.ts rename to plugins/arcgis/web-app/projects/main/src/lib/arc-event/arc-event.component.ts index e84616084..3efbe07a6 100644 --- a/plugins/arcgis/web-app/mage-arc-web/src/lib/arc-event/arc-event.component.ts +++ b/plugins/arcgis/web-app/projects/main/src/lib/arc-event/arc-event.component.ts @@ -1,14 +1,12 @@ import { Component, EventEmitter, Input, OnChanges, OnInit, Output, SimpleChanges, TemplateRef, ViewChild } from '@angular/core'; import { ArcGISPluginConfig, defaultArcGISPluginConfig } from '../ArcGISPluginConfig' import { FeatureServiceConfig } from "../ArcGISConfig" -import { ArcService } from '../arc.service' +import { ArcService, MageEvent } from '../arc.service' import { MatDialog } from '@angular/material/dialog' import { ArcEventsModel } from './ArcEventsModel'; import { ArcEvent } from './ArcEvent'; import { ArcEventLayer } from './ArcEventLayer'; import { Observable, Subscription } from 'rxjs'; -import { EventResult } from '../EventsResult'; - @Component({ selector: 'arc-event', @@ -19,7 +17,7 @@ export class ArcEventComponent implements OnInit, OnChanges { private eventsSubscription: Subscription; - @Input('config') config: ArcGISPluginConfig; + @Input('config') config: ArcGISPluginConfig = defaultArcGISPluginConfig; private configSet = false; @Input() configChangedNotifier: Observable; @@ -53,10 +51,10 @@ export class ArcEventComponent implements OnInit, OnChanges { } handleConfigChanged() { - let eventResults = new Array(); + let eventResults = new Array(); if (this.model.events.length > 0) { for (const arcEvent of this.model.events) { - const result = new EventResult(); + const result = new MageEvent(); result.name = arcEvent.name; result.id = arcEvent.id; eventResults.push(result); @@ -67,7 +65,7 @@ export class ArcEventComponent implements OnInit, OnChanges { } } - handleEventResults(x: EventResult[]) { + handleEventResults(x: MageEvent[]) { let activeEventMessage = 'Active events: '; this.updateLayersCount(); for (const event of x) { diff --git a/plugins/arcgis/web-app/mage-arc-web/src/lib/arc-layer/ArcLayerSelectable.ts b/plugins/arcgis/web-app/projects/main/src/lib/arc-layer/ArcLayerSelectable.ts similarity index 100% rename from plugins/arcgis/web-app/mage-arc-web/src/lib/arc-layer/ArcLayerSelectable.ts rename to plugins/arcgis/web-app/projects/main/src/lib/arc-layer/ArcLayerSelectable.ts diff --git a/plugins/arcgis/web-app/projects/main/src/lib/arc-layer/arc-layer-delete-dialog.component.html b/plugins/arcgis/web-app/projects/main/src/lib/arc-layer/arc-layer-delete-dialog.component.html new file mode 100644 index 000000000..a1f447ef7 --- /dev/null +++ b/plugins/arcgis/web-app/projects/main/src/lib/arc-layer/arc-layer-delete-dialog.component.html @@ -0,0 +1,9 @@ +

Delete Feature Service?

+ +{{url}} + + + + + \ No newline at end of file diff --git a/web-app/src/app/admin/admin-event/admin-event-form/admin-event-form-preview/admin-event-form-preview.component.scss b/plugins/arcgis/web-app/projects/main/src/lib/arc-layer/arc-layer-delete-dialog.component.scss similarity index 100% rename from web-app/src/app/admin/admin-event/admin-event-form/admin-event-form-preview/admin-event-form-preview.component.scss rename to plugins/arcgis/web-app/projects/main/src/lib/arc-layer/arc-layer-delete-dialog.component.scss diff --git a/plugins/arcgis/web-app/projects/main/src/lib/arc-layer/arc-layer-delete-dialog.component.spec.ts b/plugins/arcgis/web-app/projects/main/src/lib/arc-layer/arc-layer-delete-dialog.component.spec.ts new file mode 100644 index 000000000..e476864f3 --- /dev/null +++ b/plugins/arcgis/web-app/projects/main/src/lib/arc-layer/arc-layer-delete-dialog.component.spec.ts @@ -0,0 +1,41 @@ +import { ComponentFixture, TestBed } from '@angular/core/testing'; +import { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog'; +import { HttpClientModule } from '@angular/common/http'; +import { MatDialogModule } from '@angular/material/dialog'; +import { ArcLayerDeleteDialogComponent } from './arc-layer-delete-dialog.component'; +import { ArcService } from '../arc.service' + +describe('Arc Layer Delete Dialog', () => { + let component: ArcLayerDeleteDialogComponent; + let fixture: ComponentFixture; + + beforeEach(async () => { + await TestBed.configureTestingModule({ + imports: [HttpClientModule, MatDialogModule], + declarations: [ArcLayerDeleteDialogComponent], + providers: [ + { + provide: MatDialogRef, + useValue: { + close: jasmine.createSpy('close') + } + }, + { + provide: MAT_DIALOG_DATA, + useValue: {} + }, + ArcService + ] + }).compileComponents(); + }); + + beforeEach(() => { + fixture = TestBed.createComponent(ArcLayerDeleteDialogComponent); + component = fixture.componentInstance; + fixture.detectChanges(); + }); + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); \ No newline at end of file diff --git a/plugins/arcgis/web-app/projects/main/src/lib/arc-layer/arc-layer-delete-dialog.component.ts b/plugins/arcgis/web-app/projects/main/src/lib/arc-layer/arc-layer-delete-dialog.component.ts new file mode 100644 index 000000000..4b80bc69c --- /dev/null +++ b/plugins/arcgis/web-app/projects/main/src/lib/arc-layer/arc-layer-delete-dialog.component.ts @@ -0,0 +1,19 @@ +import { Component, Inject } from '@angular/core'; +import { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material/dialog'; + +@Component({ + selector: 'arc-layer-delete-dialog', + templateUrl: 'arc-layer-delete-dialog.component.html', + styleUrls: ['./arc-layer-delete-dialog.component.scss'] +}) +export class ArcLayerDeleteDialogComponent { + + url: string + + constructor( + public dialogRef: MatDialogRef, + @Inject(MAT_DIALOG_DATA) public data: string + ) { + this.url = data + } +} diff --git a/plugins/arcgis/web-app/projects/main/src/lib/arc-layer/arc-layer-dialog.component.html b/plugins/arcgis/web-app/projects/main/src/lib/arc-layer/arc-layer-dialog.component.html new file mode 100644 index 000000000..23fd57692 --- /dev/null +++ b/plugins/arcgis/web-app/projects/main/src/lib/arc-layer/arc-layer-dialog.component.html @@ -0,0 +1,108 @@ +
+
+ +
+ +
ArcGIS Feature Service
+ +
+ + + + Feature Service + {{featureService?.url}} + +
+ error_outline Credentials invalid or expired +
+
+
+ +
+ + URL + + URL is required + + + + Authentication + + + {{authenticationState.text}} + + + + + +
+ + API Key + + API Key is required + +
+
+ + Client Id + + Client Id is required + +
+
+ + Username + + Username Id is required + + + + Password + + Password is required + +
+
+
+ +
+ +
+
+ + + + Layers + + +
+
+ + + {{layer.name}} + + +
+ +
+ +
+
+
+
+
+
+
\ No newline at end of file diff --git a/plugins/arcgis/web-app/projects/main/src/lib/arc-layer/arc-layer-dialog.component.scss b/plugins/arcgis/web-app/projects/main/src/lib/arc-layer/arc-layer-dialog.component.scss new file mode 100644 index 000000000..c6e13a0ea --- /dev/null +++ b/plugins/arcgis/web-app/projects/main/src/lib/arc-layer/arc-layer-dialog.component.scss @@ -0,0 +1,52 @@ +mat-form-field { + width: 100%; +} + +mat-dialog-content { + flex: 1 +} + +.cancel { + position: absolute; + top: -16px; + right: -16px; +} + +.dialog { + min-width: 700px; + min-height: 450px; + position: relative; +} + +.dialog-content { + margin: 16px 0; +} + +.form { + font-size: 16px; +} + +.layers { + margin-bottom: 16px; +} + +.invalid-credentials { + color: #F44336; + display: flex; + align-items: center; + gap: 8px; +} + +.actions { + width: 100%; + display: flex; + flex-direction: column; + align-items: end; +} + +.actions__save { + display: flex; + flex-direction: row; + align-items: center; + gap: 8px; +} \ No newline at end of file diff --git a/plugins/arcgis/web-app/projects/main/src/lib/arc-layer/arc-layer-dialog.component.spec.ts b/plugins/arcgis/web-app/projects/main/src/lib/arc-layer/arc-layer-dialog.component.spec.ts new file mode 100644 index 000000000..0e844e44d --- /dev/null +++ b/plugins/arcgis/web-app/projects/main/src/lib/arc-layer/arc-layer-dialog.component.spec.ts @@ -0,0 +1,41 @@ +import { ComponentFixture, TestBed } from '@angular/core/testing'; +import { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog'; +import { HttpClientModule } from '@angular/common/http'; +import { MatDialogModule } from '@angular/material/dialog'; +import { ArcLayerDialogComponent } from './arc-layer-dialog.component'; +import { ArcService } from '../arc.service'; + +describe('Arc Layer Dialog', () => { + let component: ArcLayerDialogComponent; + let fixture: ComponentFixture; + + beforeEach(async () => { + await TestBed.configureTestingModule({ + imports: [HttpClientModule, MatDialogModule], + declarations: [ArcLayerDialogComponent], + providers: [ + { + provide: MatDialogRef, + useValue: { + close: jasmine.createSpy('close') + } + }, + { + provide: MAT_DIALOG_DATA, + useValue: {} + }, + ArcService + ] + }).compileComponents(); + }); + + beforeEach(() => { + fixture = TestBed.createComponent(ArcLayerDialogComponent); + component = fixture.componentInstance; + fixture.detectChanges(); + }); + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); \ No newline at end of file diff --git a/plugins/arcgis/web-app/projects/main/src/lib/arc-layer/arc-layer-dialog.component.ts b/plugins/arcgis/web-app/projects/main/src/lib/arc-layer/arc-layer-dialog.component.ts new file mode 100644 index 000000000..8a71ba23e --- /dev/null +++ b/plugins/arcgis/web-app/projects/main/src/lib/arc-layer/arc-layer-dialog.component.ts @@ -0,0 +1,139 @@ +import { Component, Inject, ViewChild } from '@angular/core'; +import { FormControl, FormGroup, Validators } from '@angular/forms'; +import { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material/dialog'; +import { MatSelectionList } from '@angular/material/list'; +import { FeatureServiceConfig } from '../ArcGISConfig'; +import { ArcService, FeatureLayer } from '../arc.service'; + +enum State { Validate, Layers } + +enum AuthenticationType { + Token = 'token', + UsernamePassword = 'usernamePassword', + OAuth = 'oauth' +} + +type AuthenticationState = { + text: string + value: AuthenticationType +} + +export interface DialogData { + featureService?: FeatureServiceConfig +} + +@Component({ + selector: 'arc-layer-dialog', + templateUrl: 'arc-layer-dialog.component.html', + styleUrls: ['./arc-layer-dialog.component.scss'] +}) +export class ArcLayerDialogComponent { + State = State + state: State = State.Validate + + loading = false + + AuthenticationType = AuthenticationType + authenticationStates: AuthenticationState[] = [{ + text: 'OAuth', + value: AuthenticationType.OAuth + },{ + text: 'Username/Password', + value: AuthenticationType.UsernamePassword + },{ + text: 'API Key', + value: AuthenticationType.Token + }] + + layerForm: FormGroup + layers: FeatureLayer[] + featureService: FeatureServiceConfig + + @ViewChild(MatSelectionList) layerList: MatSelectionList + + constructor( + public dialogRef: MatDialogRef, + @Inject(MAT_DIALOG_DATA) public data: DialogData, + private arcService: ArcService + ) { + if (data.featureService) { + this.featureService = data.featureService + } + + this.state = this.featureService === undefined || !this.featureService.authenticated ? State.Validate : State.Layers + this.layerForm = new FormGroup({ + url: new FormControl({value: this.featureService?.url, disabled: this.featureService !== undefined }, [Validators.required]), + authenticationType: new FormControl('', [Validators.required]), + token: new FormGroup({ + token: new FormControl('', [Validators.required]) + }), + oauth: new FormGroup({ + clientId: new FormControl('', [Validators.required]) + }), + local: new FormGroup({ + username: new FormControl('', [Validators.required]), + password: new FormControl('', [Validators.required]) + }) + }) + + if (this.featureService) { + this.fetchLayers(this.featureService.url) + } + } + + hasLayer(featureLayer: FeatureLayer): boolean { + return this.featureService.layers.some(layer => layer.layer === featureLayer.name) + } + + fetchLayers(url: string): void { + this.loading = true + this.arcService.fetchFeatureServiceLayers(url).subscribe(layers => { + this.layers = layers + this.loading = false + }) + } + + onPanelOpened(state: State): void { + this.state = state + } + + onValidate(): void { + this.loading = true + const { url, authenticationType } = this.layerForm.value + + switch (authenticationType) { + case AuthenticationType.Token: { + const { token } = this.layerForm.controls.token.value + this.arcService.validateFeatureService({ url, token }).subscribe((service) => this.validated(service)) + break; + } + case AuthenticationType.OAuth: { + const { clientId } = this.layerForm.controls.oauth.value + this.arcService.oauth(url, clientId).subscribe((service) => this.validated(service)) + break; + } + case AuthenticationType.UsernamePassword: { + const { username, password } = this.layerForm.controls.local.value + this.arcService.validateFeatureService({url, username, password}).subscribe((service) => this.validated(service)) + break; + } + } + } + + validated(service: FeatureServiceConfig): void { + this.state = State.Layers + this.featureService = service + this.fetchLayers(service.url) + } + + onSave(): void { + this.featureService.layers = this.layerList.selectedOptions.selected.map(option => { + return { layer: `${option.value}` } + }) + this.dialogRef.close(this.featureService) + } + + onCancel(): void { + this.dialogRef.close() + } +} diff --git a/plugins/arcgis/web-app/projects/main/src/lib/arc-layer/arc-layer.component.html b/plugins/arcgis/web-app/projects/main/src/lib/arc-layer/arc-layer.component.html new file mode 100644 index 000000000..813b61fe6 --- /dev/null +++ b/plugins/arcgis/web-app/projects/main/src/lib/arc-layer/arc-layer.component.html @@ -0,0 +1,49 @@ +
+ + Feature Layers + ArcGIS feature service URLs and layers to sychronize MAGE data. + + +
+
+ place + arrow_right_alt + map +
+ +
Create ArcGIS feature services used to synchronize MAGE data. Feature services you create will show up here.
+
+ + + + map +

{{service.url}}

+

+ + {{layer.layer}} + +

+

+ Credentials invalid or expired +

+ + + open_in_new + + + + + +
+
+
+ + + + +
+
\ No newline at end of file diff --git a/plugins/arcgis/web-app/projects/main/src/lib/arc-layer/arc-layer.component.scss b/plugins/arcgis/web-app/projects/main/src/lib/arc-layer/arc-layer.component.scss new file mode 100644 index 000000000..3639a2efd --- /dev/null +++ b/plugins/arcgis/web-app/projects/main/src/lib/arc-layer/arc-layer.component.scss @@ -0,0 +1,50 @@ +mat-card { + margin-bottom: 16px; +} + +.mat-list-icon { + color: rgba(0, 0, 0, 0.54); +} + +.no-mappings { + height: 300px; + width: 100%; + display: flex; + align-items: center; + justify-content: center; + flex-direction: column; +} + +.no-mappings__icons { + display: flex; + direction: row; + margin-top: 16px; + margin-bottom: 48px; +} + +.no-mappings__icon { + font-size: 80px; + width: 80px; + height: 80px; + opacity: .6; +} + +.no-mappings__icon--margin { + margin: 0 8px; +} + +.no-mappings__title { + font: 400 28px/36px Roboto, "Helvetica Neue", sans-serif; + width: 600px; + opacity: .6; + text-align: center; + margin: 0 16px 16px 16px; +} + +.subtitle { + color: rgba(0, 0, 0, 0.54); +} + +.invalid-credentials { + color: #F44336; +} \ No newline at end of file diff --git a/plugins/arcgis/web-app/projects/main/src/lib/arc-layer/arc-layer.component.ts b/plugins/arcgis/web-app/projects/main/src/lib/arc-layer/arc-layer.component.ts new file mode 100644 index 000000000..6f464e2b8 --- /dev/null +++ b/plugins/arcgis/web-app/projects/main/src/lib/arc-layer/arc-layer.component.ts @@ -0,0 +1,103 @@ +import { Component, EventEmitter, Input, Output } from '@angular/core' +import { ArcGISPluginConfig, defaultArcGISPluginConfig } from '../ArcGISPluginConfig' +import { ArcService } from '../arc.service' +import { FeatureLayerConfig, FeatureServiceConfig } from '../ArcGISConfig' +import { MatDialog } from '@angular/material/dialog' +import { ArcLayerSelectable } from './ArcLayerSelectable' +import { ArcLayerDialogComponent, DialogData } from './arc-layer-dialog.component' +import { ArcLayerDeleteDialogComponent } from './arc-layer-delete-dialog.component' + +@Component({ + selector: 'arc-layer', + templateUrl: './arc-layer.component.html', + styleUrls: ['./arc-layer.component.scss'] +}) +export class ArcLayerComponent { + + @Input('config') config: ArcGISPluginConfig + @Output() configChanged = new EventEmitter() + + layers: ArcLayerSelectable[] + events: string[] = [] + + constructor(private arcService: ArcService, private dialog: MatDialog) { + this.config = defaultArcGISPluginConfig + this.layers = new Array() + + arcService.fetchEvents().subscribe(events => { + this.events = events.map(event => event.name) + }) + } + + onAddService() { + this.dialog.open(ArcLayerDialogComponent, { + data: { featureService: undefined }, + autoFocus: false, + disableClose: true + }).afterClosed().subscribe(featureService => { + if (featureService) { + this.addFeatureService(featureService) + } + }) + } + + onOpenService(featureService: FeatureLayerConfig) { + + } + + onEditService(featureService: FeatureServiceConfig) { + this.dialog.open(ArcLayerDialogComponent, { + data: { featureService }, + autoFocus: false, + disableClose: true + }).afterClosed().subscribe(featureService => { + if (featureService) { + this.addFeatureService(featureService) + } + }) + } + + onDeleteService(featureService: FeatureServiceConfig) { + this.dialog.open(ArcLayerDeleteDialogComponent, { + data: featureService.url + }).afterClosed().subscribe(result => { + if (result === true) { + this.config.featureServices = this.config.featureServices.filter(service => { + return service.url !== featureService.url + }) + + this.configChanged.emit(this.config) + this.arcService.putArcConfig(this.config) + } + }) + } + + addFeatureService(featureServer: FeatureServiceConfig): void { + const existingFeatureServer = this.config.featureServices.find((service) => { + return service.url === featureServer.url + }) + + if (existingFeatureServer == null) { + featureServer.layers = featureServer.layers.map((layer: FeatureLayerConfig) => { + return { + ...layer, + events: JSON.parse(JSON.stringify(this.events)) + } + }) + + this.config.featureServices.push(featureServer) + } else { + existingFeatureServer.layers = featureServer.layers.map(layer => { + const existing = existingFeatureServer.layers.some(edit => edit.layer === layer.layer) + if (!existing) { + layer.events = JSON.parse(JSON.stringify(this.events)) + } + + return layer + }) + } + + this.configChanged.emit(this.config) + this.arcService.putArcConfig(this.config) + } +} \ No newline at end of file diff --git a/plugins/arcgis/web-app/projects/main/src/lib/arc.service.ts b/plugins/arcgis/web-app/projects/main/src/lib/arc.service.ts new file mode 100644 index 000000000..cff0943a3 --- /dev/null +++ b/plugins/arcgis/web-app/projects/main/src/lib/arc.service.ts @@ -0,0 +1,102 @@ +import { HttpClient } from '@angular/common/http' +import { Injectable } from '@angular/core' +import { Observable, Subject } from 'rxjs' +import { ArcGISPluginConfig } from './ArcGISPluginConfig' +import { FeatureServiceConfig } from './ArcGISConfig' + +export const baseUrl = '/plugins/@ngageoint/mage.arcgis.service' +export const apiBaseUrl = '/api' + +export interface ArcServiceInterface { + fetchArcConfig(): Observable + putArcConfig(config: ArcGISPluginConfig): void + fetchEvents(): Observable + fetchPopulatedEvents(): Observable + fetchFeatureServiceLayers(featureServiceUrl: string): Observable + validateFeatureService(request: ValidationRequest): Observable +} + +export class MageEvent { + name: string + id: number + forms: Form[] +} + +export class Form { + name: string + id: number + fields: Field[] +} + +export class Field { + title: string +} + +export interface FeatureLayer { + id: number + name: string + geometryType: string +} + +export type ValidationRequest = { + url: string +} & { token: string } | { username: string, password: string } + +@Injectable({ + providedIn: 'root' +}) +export class ArcService implements ArcServiceInterface { + + constructor( + private http: HttpClient + ) {} + + fetchArcConfig(): Observable { + return this.http.get(`${baseUrl}/config`) + } + + fetchFeatureServiceLayers(featureServiceUrl: string) { + return this.http.get(`${baseUrl}/featureService/layers?featureServiceUrl=${encodeURIComponent(featureServiceUrl)}`) + } + + oauth(featureServiceUrl: string, clientId: string): Observable { + let subject = new Subject(); + + const url = `${baseUrl}/oauth/signin?featureServiceUrl=${encodeURIComponent(featureServiceUrl)}&clientId=${encodeURIComponent(clientId)}`; + const oauthWindow = window.open(url, "_blank"); + + const listener = (event: any) => { + if (event.data.url) { + window.removeEventListener('message', listener, false); + + if (event.origin !== window.location.origin) { + subject.error('target origin mismatch') + } + + subject.next(event.data) + + oauthWindow?.close(); + } + } + + window.addEventListener('message', listener, false); + + return subject.asObservable() + } + + validateFeatureService(request: ValidationRequest): Observable { + return this.http.post(`${baseUrl}/featureService/validate`, request) + } + + fetchEvents(): Observable { + return this.http.get(`${apiBaseUrl}/events?populate=false&projection={"name":true,"id":true}`) + } + + fetchPopulatedEvents() { + return this.http.get(`${apiBaseUrl}/events`) + } + + putArcConfig(config: ArcGISPluginConfig) { + this.http.put(`${baseUrl}/config`, config).subscribe() + } +} \ No newline at end of file diff --git a/plugins/arcgis/web-app/projects/main/src/lib/mage-arc.module.spec.ts b/plugins/arcgis/web-app/projects/main/src/lib/mage-arc.module.spec.ts new file mode 100644 index 000000000..bfadc5d07 --- /dev/null +++ b/plugins/arcgis/web-app/projects/main/src/lib/mage-arc.module.spec.ts @@ -0,0 +1,37 @@ +import { TestBed, waitForAsync } from '@angular/core/testing' +import { MageArcModule } from '@@main' +import { createNgModule, Injector, NgModuleRef, Type } from '@angular/core' +import { BrowserTestingModule } from '@angular/platform-browser/testing' +import { NoopAnimationsModule } from '@angular/platform-browser/animations' +import { PlatformModule } from '@angular/cdk/platform' +import { A11yModule } from '@angular/cdk/a11y' +import { CommonModule } from '@angular/common' +import { ArcService } from './arc.service' +import { HttpClientTestingModule } from '@angular/common/http/testing' + +describe('arcgis web-app module', () => { + + let testModule: NgModuleRef + + beforeEach(waitForAsync(async () => { + await TestBed.configureTestingModule({ + imports: [ + NoopAnimationsModule, + PlatformModule, + BrowserTestingModule, + CommonModule, + HttpClientTestingModule, + A11yModule, + ] + }) + .compileComponents() + testModule = createNgModule(TestBed.ngModule as Type) + })) + + it('provides the arcgis service', () => { + const injector = TestBed.inject(Injector) + const arcgisModule = createNgModule(MageArcModule, injector) + const admin = arcgisModule.injector.get(ArcService) + expect(admin).toBeDefined() + }) +}) \ No newline at end of file diff --git a/plugins/arcgis/web-app/mage-arc-web/src/lib/mage-arc.module.ts b/plugins/arcgis/web-app/projects/main/src/lib/mage-arc.module.ts similarity index 88% rename from plugins/arcgis/web-app/mage-arc-web/src/lib/mage-arc.module.ts rename to plugins/arcgis/web-app/projects/main/src/lib/mage-arc.module.ts index 28c759447..b924062e1 100644 --- a/plugins/arcgis/web-app/mage-arc-web/src/lib/mage-arc.module.ts +++ b/plugins/arcgis/web-app/projects/main/src/lib/mage-arc.module.ts @@ -18,12 +18,15 @@ import { MageUserModule } from '@ngageoint/mage.web-core-lib/user' import { MatProgressSpinnerModule } from '@angular/material/progress-spinner'; import { ArcLayerComponent } from './arc-layer/arc-layer.component'; import { ArcEventComponent } from './arc-event/arc-event.component'; - +import { ArcLayerDialogComponent } from './arc-layer/arc-layer-dialog.component'; +import { ArcLayerDeleteDialogComponent } from './arc-layer/arc-layer-delete-dialog.component'; @NgModule({ declarations: [ ArcEventComponent, ArcLayerComponent, + ArcLayerDialogComponent, + ArcLayerDeleteDialogComponent, ArcAdminComponent ], imports: [ diff --git a/plugins/arcgis/web-app/mage-arc-web/src/public-api.ts b/plugins/arcgis/web-app/projects/main/src/public-api.ts similarity index 100% rename from plugins/arcgis/web-app/mage-arc-web/src/public-api.ts rename to plugins/arcgis/web-app/projects/main/src/public-api.ts diff --git a/plugins/arcgis/web-app/projects/main/src/test.ts b/plugins/arcgis/web-app/projects/main/src/test.ts new file mode 100644 index 000000000..34af36e32 --- /dev/null +++ b/plugins/arcgis/web-app/projects/main/src/test.ts @@ -0,0 +1,28 @@ +// This file is required by karma.conf.js and loads recursively all the .spec and framework files + +import 'zone.js'; +import 'zone.js/testing'; +import { getTestBed } from '@angular/core/testing'; +import { + BrowserDynamicTestingModule, + platformBrowserDynamicTesting +} from '@angular/platform-browser-dynamic/testing'; + +declare const require: { + context(path: string, deep?: boolean, filter?: RegExp): { + keys(): string[]; + (id: string): T; + }; +}; + +// First, initialize the Angular testing environment. +getTestBed().initTestEnvironment( + BrowserDynamicTestingModule, + platformBrowserDynamicTesting(), { + teardown: { destroyAfterEach: false } +} +); +// Then we find all the tests. +const context = require.context('../', true, /\.spec\.ts$/); +// And load the modules. +context.keys().map(context); diff --git a/plugins/arcgis/web-app/mage-arc-web/tsconfig.lib.json b/plugins/arcgis/web-app/projects/main/tsconfig.lib.json similarity index 91% rename from plugins/arcgis/web-app/mage-arc-web/tsconfig.lib.json rename to plugins/arcgis/web-app/projects/main/tsconfig.lib.json index c4156cf87..5752796d8 100644 --- a/plugins/arcgis/web-app/mage-arc-web/tsconfig.lib.json +++ b/plugins/arcgis/web-app/projects/main/tsconfig.lib.json @@ -1,5 +1,5 @@ { - "extends": "../tsconfig.json", + "extends": "../../tsconfig.json", "compilerOptions": { "outDir": "../out-tsc/lib", "target": "es2015", diff --git a/plugins/arcgis/web-app/mage-arc-web/tsconfig.lib.prod.json b/plugins/arcgis/web-app/projects/main/tsconfig.lib.prod.json similarity index 100% rename from plugins/arcgis/web-app/mage-arc-web/tsconfig.lib.prod.json rename to plugins/arcgis/web-app/projects/main/tsconfig.lib.prod.json diff --git a/plugins/arcgis/web-app/projects/main/tsconfig.spec.json b/plugins/arcgis/web-app/projects/main/tsconfig.spec.json new file mode 100644 index 000000000..c3ec9bbb5 --- /dev/null +++ b/plugins/arcgis/web-app/projects/main/tsconfig.spec.json @@ -0,0 +1,17 @@ +/* To learn more about this file see: https://angular.io/config/tsconfig. */ +{ + "extends": "../../tsconfig.json", + "compilerOptions": { + "outDir": "../../out-tsc/spec", + "types": [ + "jasmine" + ] + }, + "files": [ + "src/test.ts" + ], + "include": [ + "**/*.spec.ts", + "**/*.d.ts" + ] +} \ No newline at end of file diff --git a/plugins/arcgis/web-app/mage-arc-web/tslint.json b/plugins/arcgis/web-app/projects/main/tslint.json similarity index 100% rename from plugins/arcgis/web-app/mage-arc-web/tslint.json rename to plugins/arcgis/web-app/projects/main/tslint.json diff --git a/plugins/arcgis/web-app/projects/showcase/.browserslistrc b/plugins/arcgis/web-app/projects/showcase/.browserslistrc new file mode 100644 index 000000000..4f9ac2698 --- /dev/null +++ b/plugins/arcgis/web-app/projects/showcase/.browserslistrc @@ -0,0 +1,16 @@ +# This file is used by the build system to adjust CSS and JS output to support the specified browsers below. +# For additional information regarding the format and rule options, please see: +# https://github.com/browserslist/browserslist#queries + +# For the full list of supported browsers by the Angular framework, please see: +# https://angular.io/guide/browser-support + +# You can see what browsers were selected by your queries by running: +# npx browserslist + +last 1 Chrome version +last 1 Firefox version +last 2 Edge major versions +last 2 Safari major versions +last 2 iOS major versions +Firefox ESR diff --git a/plugins/arcgis/web-app/projects/showcase/karma.conf.js b/plugins/arcgis/web-app/projects/showcase/karma.conf.js new file mode 100644 index 000000000..71e79c589 --- /dev/null +++ b/plugins/arcgis/web-app/projects/showcase/karma.conf.js @@ -0,0 +1,44 @@ +// Karma configuration file, see link for more information +// https://karma-runner.github.io/1.0/config/configuration-file.html + +module.exports = function (config) { + config.set({ + basePath: '', + frameworks: ['jasmine', '@angular-devkit/build-angular'], + plugins: [ + require('karma-jasmine'), + require('karma-chrome-launcher'), + require('karma-jasmine-html-reporter'), + require('karma-coverage'), + require('@angular-devkit/build-angular/plugins/karma') + ], + client: { + jasmine: { + // you can add configuration options for Jasmine here + // the possible options are listed at https://jasmine.github.io/api/edge/Configuration.html + // for example, you can disable the random execution with `random: false` + // or set a specific seed with `seed: 4321` + }, + clearContext: false // leave Jasmine Spec Runner output visible in browser + }, + jasmineHtmlReporter: { + suppressAll: true // removes the duplicated traces + }, + coverageReporter: { + dir: require('path').join(__dirname, '../../coverage/showcase'), + subdir: '.', + reporters: [ + { type: 'html' }, + { type: 'text-summary' } + ] + }, + reporters: ['progress', 'kjhtml'], + port: 9876, + colors: true, + logLevel: config.LOG_INFO, + autoWatch: true, + browsers: ['Chrome'], + singleRun: false, + restartOnFileChange: true + }); +}; diff --git a/plugins/arcgis/web-app/projects/showcase/src/app/app-routing.module.ts b/plugins/arcgis/web-app/projects/showcase/src/app/app-routing.module.ts new file mode 100644 index 000000000..02972627f --- /dev/null +++ b/plugins/arcgis/web-app/projects/showcase/src/app/app-routing.module.ts @@ -0,0 +1,10 @@ +import { NgModule } from '@angular/core'; +import { RouterModule, Routes } from '@angular/router'; + +const routes: Routes = []; + +@NgModule({ + imports: [RouterModule.forRoot(routes)], + exports: [RouterModule] +}) +export class AppRoutingModule { } diff --git a/plugins/arcgis/web-app/projects/showcase/src/app/app.component.html b/plugins/arcgis/web-app/projects/showcase/src/app/app.component.html new file mode 100644 index 000000000..82fcec254 --- /dev/null +++ b/plugins/arcgis/web-app/projects/showcase/src/app/app.component.html @@ -0,0 +1,4 @@ + +
+ +
diff --git a/plugins/arcgis/web-app/projects/showcase/src/app/app.component.spec.ts b/plugins/arcgis/web-app/projects/showcase/src/app/app.component.spec.ts new file mode 100644 index 000000000..696225048 --- /dev/null +++ b/plugins/arcgis/web-app/projects/showcase/src/app/app.component.spec.ts @@ -0,0 +1,23 @@ +import { ComponentFixture, TestBed } from '@angular/core/testing'; +import { AppComponent } from './app.component'; + +describe('AppComponent', () => { + let component: AppComponent; + let fixture: ComponentFixture; + + beforeEach(async () => { + await TestBed.configureTestingModule({ + declarations: [AppComponent], + }).compileComponents(); + }); + + beforeEach(() => { + fixture = TestBed.createComponent(AppComponent); + component = fixture.componentInstance; + fixture.detectChanges(); + }); + + it('should create the app component', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/plugins/arcgis/web-app/projects/showcase/src/app/app.component.ts b/plugins/arcgis/web-app/projects/showcase/src/app/app.component.ts new file mode 100644 index 000000000..f45969e5c --- /dev/null +++ b/plugins/arcgis/web-app/projects/showcase/src/app/app.component.ts @@ -0,0 +1,7 @@ +import { Component } from '@angular/core'; + +@Component({ + selector: 'app-root', + templateUrl: './app.component.html' +}) +export class AppComponent {} diff --git a/plugins/arcgis/web-app/projects/showcase/src/app/app.module.ts b/plugins/arcgis/web-app/projects/showcase/src/app/app.module.ts new file mode 100644 index 000000000..dd262f9a7 --- /dev/null +++ b/plugins/arcgis/web-app/projects/showcase/src/app/app.module.ts @@ -0,0 +1,30 @@ +import { NgModule } from '@angular/core'; +import { BrowserModule } from '@angular/platform-browser'; + +import { AppRoutingModule } from './app-routing.module'; +import { AppComponent } from './app.component'; +import { MageArcModule } from 'projects/main/src/public-api'; + +import { ArcService } from 'projects/main/src/lib/arc.service'; +import { MockArcService } from './arc.service.mock'; +import { BrowserAnimationsModule } from '@angular/platform-browser/animations'; + +@NgModule({ + declarations: [ + AppComponent + ], + imports: [ + MageArcModule, + BrowserModule, + BrowserAnimationsModule, // ENABLES ANIMATIONS + AppRoutingModule + ], + providers: [ + { + provide: ArcService, + useClass: MockArcService + } + ], + bootstrap: [AppComponent] +}) +export class AppModule { } diff --git a/plugins/arcgis/web-app/projects/showcase/src/app/arc.service.mock.ts b/plugins/arcgis/web-app/projects/showcase/src/app/arc.service.mock.ts new file mode 100644 index 000000000..f4b582b96 --- /dev/null +++ b/plugins/arcgis/web-app/projects/showcase/src/app/arc.service.mock.ts @@ -0,0 +1,165 @@ +import { Observable, of } from "rxjs"; +import { Injectable } from '@angular/core' +import { ArcServiceInterface, FeatureLayer, ValidationRequest } from "../../../main/src/lib/arc.service"; +import { ArcGISPluginConfig, defaultArcGISPluginConfig } from '../../../main/src/lib/ArcGISPluginConfig'; +import { MageEvent } from "../../../main/src/lib/arc.service"; + +export const mockArcGISEventResult1 = Object.freeze({ + id: 0, + name: 'test event result name 1', + forms: [{ + id: 1, + name: 'test form result name 1', + fields: [{ + title: 'test field 1' + }] + }] +}); + +export const mockArcGISEventResult2 = Object.freeze({ + id: 1, + name: 'test event result name 2', + forms: [{ + id: 2, + name: 'test form result name 2', + fields: [{ + title: 'test field 2' + }] + }] +}); + +export const mockArcGISEventResult3 = Object.freeze({ + id: 2, + name: 'test event result name 3', + forms: [{ + id: 3, + name: 'test form result name 3', + fields: [{ + title: 'test field 3' + }] + }] +}); + +@Injectable({ + providedIn: 'root' +}) + +export class MockArcService implements ArcServiceInterface { + fetchFeatureServiceLayers(featureServiceUrl: string): Observable { + return of([ + { + id: 1, + name: 'Layer 1', + geometryType: 'esriGeometryPoint', + events: ['test event result name 1', 'test event result name 2'] + }, + { + id: 2, + name: 'Layer 2', + geometryType: 'esriGeometryPolygon', + events: ['test event result name 2'] + } + ]); + } + + fetchArcConfig(): Observable { + return of({ + enabled: true, + baseUrl: 'https://mock.mage.com', + intervalSeconds: 60, + startupIntervalSeconds: 1, + updateIntervalSeconds: 1, + batchSize: 100, + featureServices: [ + { + url: 'https://mock.service.com/FeatureServer/0', + layers: [ + { + layer: 'Layer 1', + events: ['test event result name 1', 'test event result name 2'] + }, + { + layer: 'Layer 2', + events: ['test event result name 2'] + } + ] + } + ], + attachmentModifiedTolerance: 5000, + textFieldLength: 100, + textAreaFieldLength: 256, + observationIdField: 'mock_description', + idSeparator: 'mock-', + eventIdField: 'mock_event_id', + lastEditedDateField: 'mock_last_edited_date', + eventNameField: 'mock_event_name', + userIdField: 'mock_user_id', + usernameField: 'mock_username', + userDisplayNameField: 'mock_user_display_name', + deviceIdField: 'mock_device_id', + createdAtField: 'mock_created_at', + lastModifiedField: 'mock_last_modified', + geometryType: 'mock_geometry_type', + fieldAttributes: {}, + attributes: { + 'symbolid': { + defaults: [ + { + value: 3, + condition: [ + { attribute: 'geometry_type', values: ['esriGeometryPolyline'] } + ] + }, + { + value: 1, + condition: [ + { attribute: 'geometry_type', values: ['esriGeometryPolygon'] } + ] + } + ] + } + } + }) + } + + fetchArcLayers(featureUrl: string) { + return of({ + layers: [ + { + id: 0, + name: 'mage_sync', + geometryType: 'esriGeometryPoint' + }, + ] + } + ) + } + + fetchEvents() { + return of([mockArcGISEventResult1, mockArcGISEventResult2, mockArcGISEventResult3]); + } + + fetchPopulatedEvents() { + return of([mockArcGISEventResult1, mockArcGISEventResult2, mockArcGISEventResult3]); + } + + putArcConfig(config: ArcGISPluginConfig) {} + + removeUserTrack(userTrackId: string): Observable { + return of(defaultArcGISPluginConfig); + } + + removeOperation(operationId: string): Observable { + return of(defaultArcGISPluginConfig); + } + + validateFeatureService(request: ValidationRequest): Observable { + return of({ + url: 'https://arcgis.mock.com/1', + authenticated: true, + layers: [{ + layer: 'Mock ArcGIS Layer 1' + }] + }) + } +} \ No newline at end of file diff --git a/web-app/src/app/admin/admin-feeds/admin-feed/admin-feed-edit/admin-feed-edit-topic/admin-feed-edit-topic-configuration.component.scss b/plugins/arcgis/web-app/projects/showcase/src/assets/.gitkeep similarity index 100% rename from web-app/src/app/admin/admin-feeds/admin-feed/admin-feed-edit/admin-feed-edit-topic/admin-feed-edit-topic-configuration.component.scss rename to plugins/arcgis/web-app/projects/showcase/src/assets/.gitkeep diff --git a/plugins/arcgis/web-app/projects/showcase/src/environments/environment.prod.ts b/plugins/arcgis/web-app/projects/showcase/src/environments/environment.prod.ts new file mode 100644 index 000000000..3612073bc --- /dev/null +++ b/plugins/arcgis/web-app/projects/showcase/src/environments/environment.prod.ts @@ -0,0 +1,3 @@ +export const environment = { + production: true +}; diff --git a/plugins/arcgis/web-app/projects/showcase/src/environments/environment.ts b/plugins/arcgis/web-app/projects/showcase/src/environments/environment.ts new file mode 100644 index 000000000..f56ff4702 --- /dev/null +++ b/plugins/arcgis/web-app/projects/showcase/src/environments/environment.ts @@ -0,0 +1,16 @@ +// This file can be replaced during build by using the `fileReplacements` array. +// `ng build` replaces `environment.ts` with `environment.prod.ts`. +// The list of file replacements can be found in `angular.json`. + +export const environment = { + production: false +}; + +/* + * For easier debugging in development mode, you can import the following file + * to ignore zone related error stack frames such as `zone.run`, `zoneDelegate.invokeTask`. + * + * This import should be commented out in production mode because it will have a negative impact + * on performance if an error is thrown. + */ +// import 'zone.js/plugins/zone-error'; // Included with Angular CLI. diff --git a/plugins/arcgis/web-app/projects/showcase/src/favicon.ico b/plugins/arcgis/web-app/projects/showcase/src/favicon.ico new file mode 100644 index 000000000..997406ad2 Binary files /dev/null and b/plugins/arcgis/web-app/projects/showcase/src/favicon.ico differ diff --git a/plugins/arcgis/web-app/projects/showcase/src/index.html b/plugins/arcgis/web-app/projects/showcase/src/index.html new file mode 100644 index 000000000..d466c3d05 --- /dev/null +++ b/plugins/arcgis/web-app/projects/showcase/src/index.html @@ -0,0 +1,16 @@ + + + + + Showcase + + + + + + + + + + + diff --git a/plugins/arcgis/web-app/projects/showcase/src/main.ts b/plugins/arcgis/web-app/projects/showcase/src/main.ts new file mode 100644 index 000000000..c7b673cf4 --- /dev/null +++ b/plugins/arcgis/web-app/projects/showcase/src/main.ts @@ -0,0 +1,12 @@ +import { enableProdMode } from '@angular/core'; +import { platformBrowserDynamic } from '@angular/platform-browser-dynamic'; + +import { AppModule } from './app/app.module'; +import { environment } from './environments/environment'; + +if (environment.production) { + enableProdMode(); +} + +platformBrowserDynamic().bootstrapModule(AppModule) + .catch(err => console.error(err)); diff --git a/plugins/arcgis/web-app/projects/showcase/src/polyfills.ts b/plugins/arcgis/web-app/projects/showcase/src/polyfills.ts new file mode 100644 index 000000000..429bb9ef2 --- /dev/null +++ b/plugins/arcgis/web-app/projects/showcase/src/polyfills.ts @@ -0,0 +1,53 @@ +/** + * This file includes polyfills needed by Angular and is loaded before the app. + * You can add your own extra polyfills to this file. + * + * This file is divided into 2 sections: + * 1. Browser polyfills. These are applied before loading ZoneJS and are sorted by browsers. + * 2. Application imports. Files imported after ZoneJS that should be loaded before your main + * file. + * + * The current setup is for so-called "evergreen" browsers; the last versions of browsers that + * automatically update themselves. This includes recent versions of Safari, Chrome (including + * Opera), Edge on the desktop, and iOS and Chrome on mobile. + * + * Learn more in https://angular.io/guide/browser-support + */ + +/*************************************************************************************************** + * BROWSER POLYFILLS + */ + +/** + * By default, zone.js will patch all possible macroTask and DomEvents + * user can disable parts of macroTask/DomEvents patch by setting following flags + * because those flags need to be set before `zone.js` being loaded, and webpack + * will put import in the top of bundle, so user need to create a separate file + * in this directory (for example: zone-flags.ts), and put the following flags + * into that file, and then add the following code before importing zone.js. + * import './zone-flags'; + * + * The flags allowed in zone-flags.ts are listed here. + * + * The following flags will work for all browsers. + * + * (window as any).__Zone_disable_requestAnimationFrame = true; // disable patch requestAnimationFrame + * (window as any).__Zone_disable_on_property = true; // disable patch onProperty such as onclick + * (window as any).__zone_symbol__UNPATCHED_EVENTS = ['scroll', 'mousemove']; // disable patch specified eventNames + * + * in IE/Edge developer tools, the addEventListener will also be wrapped by zone.js + * with the following flag, it will bypass `zone.js` patch for IE/Edge + * + * (window as any).__Zone_enable_cross_context_check = true; + * + */ + +/*************************************************************************************************** + * Zone JS is required by default for Angular itself. + */ +import 'zone.js'; // Included with Angular CLI. + + +/*************************************************************************************************** + * APPLICATION IMPORTS + */ diff --git a/plugins/arcgis/web-app/projects/showcase/src/styles.scss b/plugins/arcgis/web-app/projects/showcase/src/styles.scss new file mode 100644 index 000000000..7e7239a2e --- /dev/null +++ b/plugins/arcgis/web-app/projects/showcase/src/styles.scss @@ -0,0 +1,4 @@ +/* You can add global styles to this file, and also import other style files */ + +html, body { height: 100%; } +body { margin: 0; font-family: Roboto, "Helvetica Neue", sans-serif; } diff --git a/plugins/arcgis/web-app/projects/showcase/src/test.ts b/plugins/arcgis/web-app/projects/showcase/src/test.ts new file mode 100644 index 000000000..c04c87607 --- /dev/null +++ b/plugins/arcgis/web-app/projects/showcase/src/test.ts @@ -0,0 +1,26 @@ +// This file is required by karma.conf.js and loads recursively all the .spec and framework files + +import 'zone.js/testing'; +import { getTestBed } from '@angular/core/testing'; +import { + BrowserDynamicTestingModule, + platformBrowserDynamicTesting +} from '@angular/platform-browser-dynamic/testing'; + +declare const require: { + context(path: string, deep?: boolean, filter?: RegExp): { + (id: string): T; + keys(): string[]; + }; +}; + +// First, initialize the Angular testing environment. +getTestBed().initTestEnvironment( + BrowserDynamicTestingModule, + platformBrowserDynamicTesting(), +); + +// Then we find all the tests. +const context = require.context('./', true, /\.spec\.ts$/); +// And load the modules. +context.keys().forEach(context); diff --git a/plugins/arcgis/web-app/projects/showcase/tsconfig.app.json b/plugins/arcgis/web-app/projects/showcase/tsconfig.app.json new file mode 100644 index 000000000..fd37f74d7 --- /dev/null +++ b/plugins/arcgis/web-app/projects/showcase/tsconfig.app.json @@ -0,0 +1,15 @@ +/* To learn more about this file see: https://angular.io/config/tsconfig. */ +{ + "extends": "../../tsconfig.json", + "compilerOptions": { + "outDir": "../../out-tsc/app", + "types": [] + }, + "files": [ + "src/main.ts", + "src/polyfills.ts" + ], + "include": [ + "src/**/*.d.ts" + ] +} diff --git a/plugins/arcgis/web-app/projects/showcase/tsconfig.spec.json b/plugins/arcgis/web-app/projects/showcase/tsconfig.spec.json new file mode 100644 index 000000000..b66a2f0b1 --- /dev/null +++ b/plugins/arcgis/web-app/projects/showcase/tsconfig.spec.json @@ -0,0 +1,18 @@ +/* To learn more about this file see: https://angular.io/config/tsconfig. */ +{ + "extends": "../../tsconfig.json", + "compilerOptions": { + "outDir": "../../out-tsc/spec", + "types": [ + "jasmine" + ] + }, + "files": [ + "src/test.ts", + "src/polyfills.ts" + ], + "include": [ + "src/**/*.spec.ts", + "src/**/*.d.ts" + ] +} diff --git a/plugins/arcgis/web-app/tsconfig.json b/plugins/arcgis/web-app/tsconfig.json index e1ecc462a..84a40f6cb 100644 --- a/plugins/arcgis/web-app/tsconfig.json +++ b/plugins/arcgis/web-app/tsconfig.json @@ -12,17 +12,17 @@ "declaration": false, "downlevelIteration": true, "experimentalDecorators": true, - "module": "esnext", + "module": "ES2020", "moduleResolution": "node", "importHelpers": true, - "target": "es2015", + "target": "ES2020", "lib": [ - "es2018", - "dom" + "ES2020", + "DOM" ], "paths": { - "mage-arc-web": [ - "dist/mage-arc-web" + "@@main": [ + "./dist/main" ], "@ngageoint/mage.web-core-lib/*": [ "./node_modules/@ngageoint/mage.web-core-lib/*" diff --git a/plugins/epic/attachments.js b/plugins/epic/attachments.js index b31feac9c..1d0ab1a9f 100644 --- a/plugins/epic/attachments.js +++ b/plugins/epic/attachments.js @@ -105,7 +105,7 @@ function pushAttachments(done) { var project = {"$project": {esriId: true, lastModified: true, attachments: true}}; var unwind = {"$unwind": "$attachments"}; var sort = {"$sort": { "attachments.lastModified": 1 }}; - Observation.observationModel(event).aggregate({"$match": observationMatch}, project, sort, unwind, function(err, aggregate) { + Observation.observationModel(event).aggregate([{"$match": observationMatch}], project, sort, unwind, function(err, aggregate) { if (err) return done(err); log.info(aggregate.length + ' have changed'); diff --git a/plugins/geoserver/package-lock.json b/plugins/geoserver/package-lock.json index f2eed2216..234734a23 100644 --- a/plugins/geoserver/package-lock.json +++ b/plugins/geoserver/package-lock.json @@ -1,107 +1,3553 @@ { "name": "mage-geoserver", "version": "0.0.1", - "lockfileVersion": 1, + "lockfileVersion": 2, "requires": true, + "packages": { + "": { + "name": "mage-geoserver", + "version": "0.0.1", + "dependencies": { + "express": "4.10.6", + "http-proxy-middleware": "0.17.3", + "mongoose": "6.7.4", + "request": "2.79.0", + "xmlbuilder": "8.2.2" + }, + "engines": { + "node": ">= 0.8.0", + "npm": ">= 2.0.0" + } + }, + "../../service": { + "name": "@ngageoint/mage.service", + "version": "6.2.0", + "extraneous": true, + "dependencies": { + "@mapbox/togeojson": "0.16.0", + "@ngageoint/geopackage": "^4.1.0", + "@turf/centroid": "~6.0.0", + "@turf/kinks": "~6.0.0", + "@types/geojson": "^7946.0.7", + "@types/json-schema": "^7.0.11", + "@types/mime-types": "^2.1.1", + "adm-zip": "0.4.9", + "archiver": "5.3.0", + "async": "0.2.x", + "async-lock": "^1.4.0", + "base-64": "1.0.0", + "body-parser": "1.18.3", + "busboy": "^1.6.0", + "cfenv": "1.0.3", + "commander": "^8.2.0", + "dbf": "0.1.0", + "express": "~4.17.0", + "express-session": "1.17.2", + "file-type": "16.5.0", + "fs-extra": "4.0.3", + "geojson": "^0.5.0", + "geojson-validation": "^1.0.2", + "geojson-vt": "3.1.3", + "gm": "1.23.1", + "jose": "0.3.2", + "json2csv": "4.5.1", + "jsonwebtoken": "^8.5.1", + "lodash": "^4.17.21", + "mgrs": "^1.0.0", + "mime-types": "^2.1.35", + "moment": "2.22.2", + "mongodb-migrations": "git+http://github.com/gillandk/mongodb-migrations.git", + "mongoose": "^6.7.4", + "mongoose-beautiful-unique-validation": "7.1.1", + "multer": "^1.4.2", + "node-fetch": "^2.6.0", + "passport": "0.4.1", + "passport-anonymous": "1.0.1", + "passport-http-bearer": "1.0.1", + "passport-ldapauth": "2.1.3", + "passport-local": "1.0.0", + "passport-oauth2": "1.6.1", + "passport-openidconnect": "0.1.1", + "passport-saml": "^1.3.1", + "pem-jwk": "1.5.1", + "pem2jwk": "1.0.1", + "pug": "2.0.4", + "rfc5646": "^3.0.0", + "superagent": "^8.0.0", + "svg-captcha": "^1.4.0", + "terraformer": "1.0.4", + "terraformer-arcgis-parser": "1.0.4", + "uniqid": "^5.2.0", + "walk": "2.3.4", + "winston": "1.0.1", + "wkx": "0.4.8", + "wms-capabilities": "^0.4.0", + "xmlbuilder2": "3.0.2", + "xmldom": "0.1.22", + "xpath": "0.0.23", + "yaml": "^1.8.2" + }, + "bin": { + "mage.service": "bin/mage.service.js" + }, + "devDependencies": { + "@fluffy-spoon/substitute": "^1.196.0", + "@types/async": "^3.0.5", + "@types/bson": "^1.0.11", + "@types/busboy": "^1.5.0", + "@types/chai": "^4.2.19", + "@types/chai-as-promised": "^7.1.2", + "@types/deep-equal": "^1.0.1", + "@types/express": "~4.17.0", + "@types/express-serve-static-core": "~4.17.0", + "@types/fs-extra": "^8.0.1", + "@types/lodash": "^4.14.155", + "@types/mocha": "^7.0.2", + "@types/multer": "^1.4.7", + "@types/node": "^14.18.31", + "@types/node-fetch": "^2.5.4", + "@types/passport": "^1.0.3", + "@types/sinon": "^9.0.4", + "@types/sinon-chai": "^3.2.4", + "@types/superagent": "^4.1.15", + "@types/supertest": "^2.0.8", + "@types/uniqid": "^5.2.0", + "@typescript-eslint/eslint-plugin": "2.21.0", + "@typescript-eslint/parser": "2.21.0", + "ajv": "^6.11.0", + "assert": "2.0.0", + "chai": "^4.3.6", + "chai-as-promised": "^7.1.1", + "coveralls": "3.0.4", + "cpy-cli": "^2.0.0", + "deep-equal": "^2.0.2", + "eslint": "^6.8.0", + "eslint-config-prettier": "^6.9.0", + "eslint-plugin-prettier": "^3.1.2", + "iconv-lite": "^0.5.1", + "jszip": "^3.7.1", + "mocha": "^7.1.1", + "mock-fs": "4.13.0", + "mongodb-memory-server": "^8.10.1", + "nock": "^11.7.2", + "npm-run-all": "^4.1.5", + "nyc": "^14.1.1", + "openapi-enforcer": "1.15.5", + "prettier": "^1.19.1", + "proxyquire": "2.1.3", + "sinon": "7.5.0", + "sinon-chai": "3.3.0", + "sinon-mongoose": "2.3.0", + "supertest": "6.0.1", + "ts-mockito": "^2.5.0", + "typescript": "^4.6.3", + "wtfnode": "^0.8.4" + }, + "engines": { + "node": ">= 12.4", + "npm": ">= 6.x" + } + }, + "node_modules/@aws-crypto/ie11-detection": { + "version": "2.0.2", + "license": "Apache-2.0", + "optional": true, + "dependencies": { + "tslib": "^1.11.1" + } + }, + "node_modules/@aws-crypto/ie11-detection/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD", + "optional": true + }, + "node_modules/@aws-crypto/sha256-browser": { + "version": "2.0.0", + "license": "Apache-2.0", + "optional": true, + "dependencies": { + "@aws-crypto/ie11-detection": "^2.0.0", + "@aws-crypto/sha256-js": "^2.0.0", + "@aws-crypto/supports-web-crypto": "^2.0.0", + "@aws-crypto/util": "^2.0.0", + "@aws-sdk/types": "^3.1.0", + "@aws-sdk/util-locate-window": "^3.0.0", + "@aws-sdk/util-utf8-browser": "^3.0.0", + "tslib": "^1.11.1" + } + }, + "node_modules/@aws-crypto/sha256-browser/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD", + "optional": true + }, + "node_modules/@aws-crypto/sha256-js": { + "version": "2.0.0", + "license": "Apache-2.0", + "optional": true, + "dependencies": { + "@aws-crypto/util": "^2.0.0", + "@aws-sdk/types": "^3.1.0", + "tslib": "^1.11.1" + } + }, + "node_modules/@aws-crypto/sha256-js/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD", + "optional": true + }, + "node_modules/@aws-crypto/supports-web-crypto": { + "version": "2.0.2", + "license": "Apache-2.0", + "optional": true, + "dependencies": { + "tslib": "^1.11.1" + } + }, + "node_modules/@aws-crypto/supports-web-crypto/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD", + "optional": true + }, + "node_modules/@aws-crypto/util": { + "version": "2.0.2", + "license": "Apache-2.0", + "optional": true, + "dependencies": { + "@aws-sdk/types": "^3.110.0", + "@aws-sdk/util-utf8-browser": "^3.0.0", + "tslib": "^1.11.1" + } + }, + "node_modules/@aws-crypto/util/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD", + "optional": true + }, + "node_modules/@aws-sdk/abort-controller": { + "version": "3.215.0", + "license": "Apache-2.0", + "optional": true, + "dependencies": { + "@aws-sdk/types": "3.215.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/client-cognito-identity": { + "version": "3.218.0", + "license": "Apache-2.0", + "optional": true, + "dependencies": { + "@aws-crypto/sha256-browser": "2.0.0", + "@aws-crypto/sha256-js": "2.0.0", + "@aws-sdk/client-sts": "3.218.0", + "@aws-sdk/config-resolver": "3.215.0", + "@aws-sdk/credential-provider-node": "3.218.0", + "@aws-sdk/fetch-http-handler": "3.215.0", + "@aws-sdk/hash-node": "3.215.0", + "@aws-sdk/invalid-dependency": "3.215.0", + "@aws-sdk/middleware-content-length": "3.215.0", + "@aws-sdk/middleware-endpoint": "3.215.0", + "@aws-sdk/middleware-host-header": "3.215.0", + "@aws-sdk/middleware-logger": "3.215.0", + "@aws-sdk/middleware-recursion-detection": "3.215.0", + "@aws-sdk/middleware-retry": "3.215.0", + "@aws-sdk/middleware-serde": "3.215.0", + "@aws-sdk/middleware-signing": "3.215.0", + "@aws-sdk/middleware-stack": "3.215.0", + "@aws-sdk/middleware-user-agent": "3.215.0", + "@aws-sdk/node-config-provider": "3.215.0", + "@aws-sdk/node-http-handler": "3.215.0", + "@aws-sdk/protocol-http": "3.215.0", + "@aws-sdk/smithy-client": "3.215.0", + "@aws-sdk/types": "3.215.0", + "@aws-sdk/url-parser": "3.215.0", + "@aws-sdk/util-base64": "3.208.0", + "@aws-sdk/util-body-length-browser": "3.188.0", + "@aws-sdk/util-body-length-node": "3.208.0", + "@aws-sdk/util-defaults-mode-browser": "3.215.0", + "@aws-sdk/util-defaults-mode-node": "3.215.0", + "@aws-sdk/util-endpoints": "3.216.0", + "@aws-sdk/util-user-agent-browser": "3.215.0", + "@aws-sdk/util-user-agent-node": "3.215.0", + "@aws-sdk/util-utf8-browser": "3.188.0", + "@aws-sdk/util-utf8-node": "3.208.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/client-sso": { + "version": "3.218.0", + "license": "Apache-2.0", + "optional": true, + "dependencies": { + "@aws-crypto/sha256-browser": "2.0.0", + "@aws-crypto/sha256-js": "2.0.0", + "@aws-sdk/config-resolver": "3.215.0", + "@aws-sdk/fetch-http-handler": "3.215.0", + "@aws-sdk/hash-node": "3.215.0", + "@aws-sdk/invalid-dependency": "3.215.0", + "@aws-sdk/middleware-content-length": "3.215.0", + "@aws-sdk/middleware-endpoint": "3.215.0", + "@aws-sdk/middleware-host-header": "3.215.0", + "@aws-sdk/middleware-logger": "3.215.0", + "@aws-sdk/middleware-recursion-detection": "3.215.0", + "@aws-sdk/middleware-retry": "3.215.0", + "@aws-sdk/middleware-serde": "3.215.0", + "@aws-sdk/middleware-stack": "3.215.0", + "@aws-sdk/middleware-user-agent": "3.215.0", + "@aws-sdk/node-config-provider": "3.215.0", + "@aws-sdk/node-http-handler": "3.215.0", + "@aws-sdk/protocol-http": "3.215.0", + "@aws-sdk/smithy-client": "3.215.0", + "@aws-sdk/types": "3.215.0", + "@aws-sdk/url-parser": "3.215.0", + "@aws-sdk/util-base64": "3.208.0", + "@aws-sdk/util-body-length-browser": "3.188.0", + "@aws-sdk/util-body-length-node": "3.208.0", + "@aws-sdk/util-defaults-mode-browser": "3.215.0", + "@aws-sdk/util-defaults-mode-node": "3.215.0", + "@aws-sdk/util-endpoints": "3.216.0", + "@aws-sdk/util-user-agent-browser": "3.215.0", + "@aws-sdk/util-user-agent-node": "3.215.0", + "@aws-sdk/util-utf8-browser": "3.188.0", + "@aws-sdk/util-utf8-node": "3.208.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/client-sso-oidc": { + "version": "3.216.0", + "license": "Apache-2.0", + "optional": true, + "dependencies": { + "@aws-crypto/sha256-browser": "2.0.0", + "@aws-crypto/sha256-js": "2.0.0", + "@aws-sdk/config-resolver": "3.215.0", + "@aws-sdk/fetch-http-handler": "3.215.0", + "@aws-sdk/hash-node": "3.215.0", + "@aws-sdk/invalid-dependency": "3.215.0", + "@aws-sdk/middleware-content-length": "3.215.0", + "@aws-sdk/middleware-endpoint": "3.215.0", + "@aws-sdk/middleware-host-header": "3.215.0", + "@aws-sdk/middleware-logger": "3.215.0", + "@aws-sdk/middleware-recursion-detection": "3.215.0", + "@aws-sdk/middleware-retry": "3.215.0", + "@aws-sdk/middleware-serde": "3.215.0", + "@aws-sdk/middleware-stack": "3.215.0", + "@aws-sdk/middleware-user-agent": "3.215.0", + "@aws-sdk/node-config-provider": "3.215.0", + "@aws-sdk/node-http-handler": "3.215.0", + "@aws-sdk/protocol-http": "3.215.0", + "@aws-sdk/smithy-client": "3.215.0", + "@aws-sdk/types": "3.215.0", + "@aws-sdk/url-parser": "3.215.0", + "@aws-sdk/util-base64": "3.208.0", + "@aws-sdk/util-body-length-browser": "3.188.0", + "@aws-sdk/util-body-length-node": "3.208.0", + "@aws-sdk/util-defaults-mode-browser": "3.215.0", + "@aws-sdk/util-defaults-mode-node": "3.215.0", + "@aws-sdk/util-endpoints": "3.216.0", + "@aws-sdk/util-user-agent-browser": "3.215.0", + "@aws-sdk/util-user-agent-node": "3.215.0", + "@aws-sdk/util-utf8-browser": "3.188.0", + "@aws-sdk/util-utf8-node": "3.208.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/client-sts": { + "version": "3.218.0", + "license": "Apache-2.0", + "optional": true, + "dependencies": { + "@aws-crypto/sha256-browser": "2.0.0", + "@aws-crypto/sha256-js": "2.0.0", + "@aws-sdk/config-resolver": "3.215.0", + "@aws-sdk/credential-provider-node": "3.218.0", + "@aws-sdk/fetch-http-handler": "3.215.0", + "@aws-sdk/hash-node": "3.215.0", + "@aws-sdk/invalid-dependency": "3.215.0", + "@aws-sdk/middleware-content-length": "3.215.0", + "@aws-sdk/middleware-endpoint": "3.215.0", + "@aws-sdk/middleware-host-header": "3.215.0", + "@aws-sdk/middleware-logger": "3.215.0", + "@aws-sdk/middleware-recursion-detection": "3.215.0", + "@aws-sdk/middleware-retry": "3.215.0", + "@aws-sdk/middleware-sdk-sts": "3.215.0", + "@aws-sdk/middleware-serde": "3.215.0", + "@aws-sdk/middleware-signing": "3.215.0", + "@aws-sdk/middleware-stack": "3.215.0", + "@aws-sdk/middleware-user-agent": "3.215.0", + "@aws-sdk/node-config-provider": "3.215.0", + "@aws-sdk/node-http-handler": "3.215.0", + "@aws-sdk/protocol-http": "3.215.0", + "@aws-sdk/smithy-client": "3.215.0", + "@aws-sdk/types": "3.215.0", + "@aws-sdk/url-parser": "3.215.0", + "@aws-sdk/util-base64": "3.208.0", + "@aws-sdk/util-body-length-browser": "3.188.0", + "@aws-sdk/util-body-length-node": "3.208.0", + "@aws-sdk/util-defaults-mode-browser": "3.215.0", + "@aws-sdk/util-defaults-mode-node": "3.215.0", + "@aws-sdk/util-endpoints": "3.216.0", + "@aws-sdk/util-user-agent-browser": "3.215.0", + "@aws-sdk/util-user-agent-node": "3.215.0", + "@aws-sdk/util-utf8-browser": "3.188.0", + "@aws-sdk/util-utf8-node": "3.208.0", + "fast-xml-parser": "4.0.11", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/config-resolver": { + "version": "3.215.0", + "license": "Apache-2.0", + "optional": true, + "dependencies": { + "@aws-sdk/signature-v4": "3.215.0", + "@aws-sdk/types": "3.215.0", + "@aws-sdk/util-config-provider": "3.208.0", + "@aws-sdk/util-middleware": "3.215.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/credential-provider-cognito-identity": { + "version": "3.218.0", + "license": "Apache-2.0", + "optional": true, + "dependencies": { + "@aws-sdk/client-cognito-identity": "3.218.0", + "@aws-sdk/property-provider": "3.215.0", + "@aws-sdk/types": "3.215.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/credential-provider-env": { + "version": "3.215.0", + "license": "Apache-2.0", + "optional": true, + "dependencies": { + "@aws-sdk/property-provider": "3.215.0", + "@aws-sdk/types": "3.215.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/credential-provider-imds": { + "version": "3.215.0", + "license": "Apache-2.0", + "optional": true, + "dependencies": { + "@aws-sdk/node-config-provider": "3.215.0", + "@aws-sdk/property-provider": "3.215.0", + "@aws-sdk/types": "3.215.0", + "@aws-sdk/url-parser": "3.215.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/credential-provider-ini": { + "version": "3.218.0", + "license": "Apache-2.0", + "optional": true, + "dependencies": { + "@aws-sdk/credential-provider-env": "3.215.0", + "@aws-sdk/credential-provider-imds": "3.215.0", + "@aws-sdk/credential-provider-sso": "3.218.0", + "@aws-sdk/credential-provider-web-identity": "3.215.0", + "@aws-sdk/property-provider": "3.215.0", + "@aws-sdk/shared-ini-file-loader": "3.215.0", + "@aws-sdk/types": "3.215.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/credential-provider-node": { + "version": "3.218.0", + "license": "Apache-2.0", + "optional": true, + "dependencies": { + "@aws-sdk/credential-provider-env": "3.215.0", + "@aws-sdk/credential-provider-imds": "3.215.0", + "@aws-sdk/credential-provider-ini": "3.218.0", + "@aws-sdk/credential-provider-process": "3.215.0", + "@aws-sdk/credential-provider-sso": "3.218.0", + "@aws-sdk/credential-provider-web-identity": "3.215.0", + "@aws-sdk/property-provider": "3.215.0", + "@aws-sdk/shared-ini-file-loader": "3.215.0", + "@aws-sdk/types": "3.215.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/credential-provider-process": { + "version": "3.215.0", + "license": "Apache-2.0", + "optional": true, + "dependencies": { + "@aws-sdk/property-provider": "3.215.0", + "@aws-sdk/shared-ini-file-loader": "3.215.0", + "@aws-sdk/types": "3.215.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/credential-provider-sso": { + "version": "3.218.0", + "license": "Apache-2.0", + "optional": true, + "dependencies": { + "@aws-sdk/client-sso": "3.218.0", + "@aws-sdk/property-provider": "3.215.0", + "@aws-sdk/shared-ini-file-loader": "3.215.0", + "@aws-sdk/token-providers": "3.216.0", + "@aws-sdk/types": "3.215.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/credential-provider-web-identity": { + "version": "3.215.0", + "license": "Apache-2.0", + "optional": true, + "dependencies": { + "@aws-sdk/property-provider": "3.215.0", + "@aws-sdk/types": "3.215.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/credential-providers": { + "version": "3.218.0", + "license": "Apache-2.0", + "optional": true, + "dependencies": { + "@aws-sdk/client-cognito-identity": "3.218.0", + "@aws-sdk/client-sso": "3.218.0", + "@aws-sdk/client-sts": "3.218.0", + "@aws-sdk/credential-provider-cognito-identity": "3.218.0", + "@aws-sdk/credential-provider-env": "3.215.0", + "@aws-sdk/credential-provider-imds": "3.215.0", + "@aws-sdk/credential-provider-ini": "3.218.0", + "@aws-sdk/credential-provider-node": "3.218.0", + "@aws-sdk/credential-provider-process": "3.215.0", + "@aws-sdk/credential-provider-sso": "3.218.0", + "@aws-sdk/credential-provider-web-identity": "3.215.0", + "@aws-sdk/property-provider": "3.215.0", + "@aws-sdk/shared-ini-file-loader": "3.215.0", + "@aws-sdk/types": "3.215.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/fetch-http-handler": { + "version": "3.215.0", + "license": "Apache-2.0", + "optional": true, + "dependencies": { + "@aws-sdk/protocol-http": "3.215.0", + "@aws-sdk/querystring-builder": "3.215.0", + "@aws-sdk/types": "3.215.0", + "@aws-sdk/util-base64": "3.208.0", + "tslib": "^2.3.1" + } + }, + "node_modules/@aws-sdk/hash-node": { + "version": "3.215.0", + "license": "Apache-2.0", + "optional": true, + "dependencies": { + "@aws-sdk/types": "3.215.0", + "@aws-sdk/util-buffer-from": "3.208.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/invalid-dependency": { + "version": "3.215.0", + "license": "Apache-2.0", + "optional": true, + "dependencies": { + "@aws-sdk/types": "3.215.0", + "tslib": "^2.3.1" + } + }, + "node_modules/@aws-sdk/is-array-buffer": { + "version": "3.201.0", + "license": "Apache-2.0", + "optional": true, + "dependencies": { + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/middleware-content-length": { + "version": "3.215.0", + "license": "Apache-2.0", + "optional": true, + "dependencies": { + "@aws-sdk/protocol-http": "3.215.0", + "@aws-sdk/types": "3.215.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/middleware-endpoint": { + "version": "3.215.0", + "license": "Apache-2.0", + "optional": true, + "dependencies": { + "@aws-sdk/middleware-serde": "3.215.0", + "@aws-sdk/protocol-http": "3.215.0", + "@aws-sdk/signature-v4": "3.215.0", + "@aws-sdk/types": "3.215.0", + "@aws-sdk/url-parser": "3.215.0", + "@aws-sdk/util-config-provider": "3.208.0", + "@aws-sdk/util-middleware": "3.215.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/middleware-host-header": { + "version": "3.215.0", + "license": "Apache-2.0", + "optional": true, + "dependencies": { + "@aws-sdk/protocol-http": "3.215.0", + "@aws-sdk/types": "3.215.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/middleware-logger": { + "version": "3.215.0", + "license": "Apache-2.0", + "optional": true, + "dependencies": { + "@aws-sdk/types": "3.215.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/middleware-recursion-detection": { + "version": "3.215.0", + "license": "Apache-2.0", + "optional": true, + "dependencies": { + "@aws-sdk/protocol-http": "3.215.0", + "@aws-sdk/types": "3.215.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/middleware-retry": { + "version": "3.215.0", + "license": "Apache-2.0", + "optional": true, + "dependencies": { + "@aws-sdk/protocol-http": "3.215.0", + "@aws-sdk/service-error-classification": "3.215.0", + "@aws-sdk/types": "3.215.0", + "@aws-sdk/util-middleware": "3.215.0", + "tslib": "^2.3.1", + "uuid": "^8.3.2" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/middleware-sdk-sts": { + "version": "3.215.0", + "license": "Apache-2.0", + "optional": true, + "dependencies": { + "@aws-sdk/middleware-signing": "3.215.0", + "@aws-sdk/property-provider": "3.215.0", + "@aws-sdk/protocol-http": "3.215.0", + "@aws-sdk/signature-v4": "3.215.0", + "@aws-sdk/types": "3.215.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/middleware-serde": { + "version": "3.215.0", + "license": "Apache-2.0", + "optional": true, + "dependencies": { + "@aws-sdk/types": "3.215.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/middleware-signing": { + "version": "3.215.0", + "license": "Apache-2.0", + "optional": true, + "dependencies": { + "@aws-sdk/property-provider": "3.215.0", + "@aws-sdk/protocol-http": "3.215.0", + "@aws-sdk/signature-v4": "3.215.0", + "@aws-sdk/types": "3.215.0", + "@aws-sdk/util-middleware": "3.215.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/middleware-stack": { + "version": "3.215.0", + "license": "Apache-2.0", + "optional": true, + "dependencies": { + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/middleware-user-agent": { + "version": "3.215.0", + "license": "Apache-2.0", + "optional": true, + "dependencies": { + "@aws-sdk/protocol-http": "3.215.0", + "@aws-sdk/types": "3.215.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/node-config-provider": { + "version": "3.215.0", + "license": "Apache-2.0", + "optional": true, + "dependencies": { + "@aws-sdk/property-provider": "3.215.0", + "@aws-sdk/shared-ini-file-loader": "3.215.0", + "@aws-sdk/types": "3.215.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/node-http-handler": { + "version": "3.215.0", + "license": "Apache-2.0", + "optional": true, + "dependencies": { + "@aws-sdk/abort-controller": "3.215.0", + "@aws-sdk/protocol-http": "3.215.0", + "@aws-sdk/querystring-builder": "3.215.0", + "@aws-sdk/types": "3.215.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/property-provider": { + "version": "3.215.0", + "license": "Apache-2.0", + "optional": true, + "dependencies": { + "@aws-sdk/types": "3.215.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/protocol-http": { + "version": "3.215.0", + "license": "Apache-2.0", + "optional": true, + "dependencies": { + "@aws-sdk/types": "3.215.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/querystring-builder": { + "version": "3.215.0", + "license": "Apache-2.0", + "optional": true, + "dependencies": { + "@aws-sdk/types": "3.215.0", + "@aws-sdk/util-uri-escape": "3.201.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/querystring-parser": { + "version": "3.215.0", + "license": "Apache-2.0", + "optional": true, + "dependencies": { + "@aws-sdk/types": "3.215.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/service-error-classification": { + "version": "3.215.0", + "license": "Apache-2.0", + "optional": true, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/shared-ini-file-loader": { + "version": "3.215.0", + "license": "Apache-2.0", + "optional": true, + "dependencies": { + "@aws-sdk/types": "3.215.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/signature-v4": { + "version": "3.215.0", + "license": "Apache-2.0", + "optional": true, + "dependencies": { + "@aws-sdk/is-array-buffer": "3.201.0", + "@aws-sdk/types": "3.215.0", + "@aws-sdk/util-hex-encoding": "3.201.0", + "@aws-sdk/util-middleware": "3.215.0", + "@aws-sdk/util-uri-escape": "3.201.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/smithy-client": { + "version": "3.215.0", + "license": "Apache-2.0", + "optional": true, + "dependencies": { + "@aws-sdk/middleware-stack": "3.215.0", + "@aws-sdk/types": "3.215.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/token-providers": { + "version": "3.216.0", + "license": "Apache-2.0", + "optional": true, + "dependencies": { + "@aws-sdk/client-sso-oidc": "3.216.0", + "@aws-sdk/property-provider": "3.215.0", + "@aws-sdk/shared-ini-file-loader": "3.215.0", + "@aws-sdk/types": "3.215.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/types": { + "version": "3.215.0", + "license": "Apache-2.0", + "optional": true, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/url-parser": { + "version": "3.215.0", + "license": "Apache-2.0", + "optional": true, + "dependencies": { + "@aws-sdk/querystring-parser": "3.215.0", + "@aws-sdk/types": "3.215.0", + "tslib": "^2.3.1" + } + }, + "node_modules/@aws-sdk/util-base64": { + "version": "3.208.0", + "license": "Apache-2.0", + "optional": true, + "dependencies": { + "@aws-sdk/util-buffer-from": "3.208.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/util-body-length-browser": { + "version": "3.188.0", + "license": "Apache-2.0", + "optional": true, + "dependencies": { + "tslib": "^2.3.1" + } + }, + "node_modules/@aws-sdk/util-body-length-node": { + "version": "3.208.0", + "license": "Apache-2.0", + "optional": true, + "dependencies": { + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/util-buffer-from": { + "version": "3.208.0", + "license": "Apache-2.0", + "optional": true, + "dependencies": { + "@aws-sdk/is-array-buffer": "3.201.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/util-config-provider": { + "version": "3.208.0", + "license": "Apache-2.0", + "optional": true, + "dependencies": { + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/util-defaults-mode-browser": { + "version": "3.215.0", + "license": "Apache-2.0", + "optional": true, + "dependencies": { + "@aws-sdk/property-provider": "3.215.0", + "@aws-sdk/types": "3.215.0", + "bowser": "^2.11.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@aws-sdk/util-defaults-mode-node": { + "version": "3.215.0", + "license": "Apache-2.0", + "optional": true, + "dependencies": { + "@aws-sdk/config-resolver": "3.215.0", + "@aws-sdk/credential-provider-imds": "3.215.0", + "@aws-sdk/node-config-provider": "3.215.0", + "@aws-sdk/property-provider": "3.215.0", + "@aws-sdk/types": "3.215.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@aws-sdk/util-endpoints": { + "version": "3.216.0", + "license": "Apache-2.0", + "optional": true, + "dependencies": { + "@aws-sdk/types": "3.215.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/util-hex-encoding": { + "version": "3.201.0", + "license": "Apache-2.0", + "optional": true, + "dependencies": { + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/util-locate-window": { + "version": "3.208.0", + "license": "Apache-2.0", + "optional": true, + "dependencies": { + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/util-middleware": { + "version": "3.215.0", + "license": "Apache-2.0", + "optional": true, + "dependencies": { + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/util-uri-escape": { + "version": "3.201.0", + "license": "Apache-2.0", + "optional": true, + "dependencies": { + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/util-user-agent-browser": { + "version": "3.215.0", + "license": "Apache-2.0", + "optional": true, + "dependencies": { + "@aws-sdk/types": "3.215.0", + "bowser": "^2.11.0", + "tslib": "^2.3.1" + } + }, + "node_modules/@aws-sdk/util-user-agent-node": { + "version": "3.215.0", + "license": "Apache-2.0", + "optional": true, + "dependencies": { + "@aws-sdk/node-config-provider": "3.215.0", + "@aws-sdk/types": "3.215.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + }, + "peerDependencies": { + "aws-crt": ">=1.0.0" + }, + "peerDependenciesMeta": { + "aws-crt": { + "optional": true + } + } + }, + "node_modules/@aws-sdk/util-utf8-browser": { + "version": "3.188.0", + "license": "Apache-2.0", + "optional": true, + "dependencies": { + "tslib": "^2.3.1" + } + }, + "node_modules/@aws-sdk/util-utf8-node": { + "version": "3.208.0", + "license": "Apache-2.0", + "optional": true, + "dependencies": { + "@aws-sdk/util-buffer-from": "3.208.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@types/node": { + "version": "18.11.9", + "license": "MIT" + }, + "node_modules/@types/webidl-conversions": { + "version": "7.0.0", + "license": "MIT" + }, + "node_modules/@types/whatwg-url": { + "version": "8.2.2", + "license": "MIT", + "dependencies": { + "@types/node": "*", + "@types/webidl-conversions": "*" + } + }, + "node_modules/accepts": { + "version": "1.1.4", + "license": "MIT", + "dependencies": { + "mime-types": "~2.0.4", + "negotiator": "0.4.9" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/ansi-regex": { + "version": "2.1.1", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ansi-styles": { + "version": "2.2.1", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/arr-diff": { + "version": "2.0.0", + "license": "MIT", + "dependencies": { + "arr-flatten": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/arr-flatten": { + "version": "1.1.0", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/array-unique": { + "version": "0.2.1", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/asn1": { + "version": "0.2.6", + "license": "MIT", + "dependencies": { + "safer-buffer": "~2.1.0" + } + }, + "node_modules/assert-plus": { + "version": "0.2.0", + "license": "MIT", + "engines": { + "node": ">=0.8" + } + }, + "node_modules/asynckit": { + "version": "0.4.0", + "license": "MIT" + }, + "node_modules/aws-sign2": { + "version": "0.6.0", + "license": "Apache-2.0", + "engines": { + "node": "*" + } + }, + "node_modules/aws4": { + "version": "1.11.0", + "license": "MIT" + }, + "node_modules/base64-js": { + "version": "1.5.1", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT" + }, + "node_modules/bcrypt-pbkdf": { + "version": "1.0.2", + "license": "BSD-3-Clause", + "dependencies": { + "tweetnacl": "^0.14.3" + } + }, + "node_modules/boom": { + "version": "2.10.1", + "license": "BSD-3-Clause", + "dependencies": { + "hoek": "2.x.x" + }, + "engines": { + "node": ">=0.10.40" + } + }, + "node_modules/bowser": { + "version": "2.11.0", + "license": "MIT", + "optional": true + }, + "node_modules/braces": { + "version": "1.8.5", + "license": "MIT", + "dependencies": { + "expand-range": "^1.8.1", + "preserve": "^0.2.0", + "repeat-element": "^1.1.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/bson": { + "version": "4.7.0", + "license": "Apache-2.0", + "dependencies": { + "buffer": "^5.6.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/buffer": { + "version": "5.7.1", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT", + "dependencies": { + "base64-js": "^1.3.1", + "ieee754": "^1.1.13" + } + }, + "node_modules/caseless": { + "version": "0.11.0", + "license": "Apache-2.0" + }, + "node_modules/chalk": { + "version": "1.1.3", + "license": "MIT", + "dependencies": { + "ansi-styles": "^2.2.1", + "escape-string-regexp": "^1.0.2", + "has-ansi": "^2.0.0", + "strip-ansi": "^3.0.0", + "supports-color": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/combined-stream": { + "version": "1.0.8", + "license": "MIT", + "dependencies": { + "delayed-stream": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/commander": { + "version": "2.20.3", + "license": "MIT" + }, + "node_modules/content-disposition": { + "version": "0.5.0", + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/cookie": { + "version": "0.1.2", + "engines": { + "node": "*" + } + }, + "node_modules/cookie-signature": { + "version": "1.0.5", + "license": "MIT" + }, + "node_modules/core-util-is": { + "version": "1.0.2", + "license": "MIT" + }, + "node_modules/crc": { + "version": "3.2.1", + "license": "MIT" + }, + "node_modules/cryptiles": { + "version": "2.0.5", + "license": "BSD-3-Clause", + "dependencies": { + "boom": "2.x.x" + }, + "engines": { + "node": ">=0.10.40" + } + }, + "node_modules/dashdash": { + "version": "1.14.1", + "license": "MIT", + "dependencies": { + "assert-plus": "^1.0.0" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/dashdash/node_modules/assert-plus": { + "version": "1.0.0", + "license": "MIT", + "engines": { + "node": ">=0.8" + } + }, + "node_modules/debug": { + "version": "2.1.3", + "license": "MIT", + "dependencies": { + "ms": "0.7.0" + } + }, + "node_modules/delayed-stream": { + "version": "1.0.0", + "license": "MIT", + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/denque": { + "version": "2.1.0", + "license": "Apache-2.0", + "engines": { + "node": ">=0.10" + } + }, + "node_modules/depd": { + "version": "1.0.1", + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/destroy": { + "version": "1.0.3", + "license": "MIT" + }, + "node_modules/ecc-jsbn": { + "version": "0.1.2", + "license": "MIT", + "dependencies": { + "jsbn": "~0.1.0", + "safer-buffer": "^2.1.0" + } + }, + "node_modules/ee-first": { + "version": "1.1.0", + "license": "MIT" + }, + "node_modules/escape-html": { + "version": "1.0.1" + }, + "node_modules/escape-string-regexp": { + "version": "1.0.5", + "license": "MIT", + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/etag": { + "version": "1.5.1", + "license": "MIT", + "dependencies": { + "crc": "3.2.1" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/eventemitter3": { + "version": "4.0.7", + "license": "MIT" + }, + "node_modules/expand-brackets": { + "version": "0.1.5", + "license": "MIT", + "dependencies": { + "is-posix-bracket": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/expand-range": { + "version": "1.8.2", + "license": "MIT", + "dependencies": { + "fill-range": "^2.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/express": { + "version": "4.10.6", + "license": "MIT", + "dependencies": { + "accepts": "~1.1.4", + "content-disposition": "0.5.0", + "cookie": "0.1.2", + "cookie-signature": "1.0.5", + "debug": "~2.1.0", + "depd": "~1.0.0", + "escape-html": "1.0.1", + "etag": "~1.5.1", + "finalhandler": "0.3.2", + "fresh": "0.2.4", + "media-typer": "0.3.0", + "merge-descriptors": "0.0.2", + "methods": "1.1.0", + "on-finished": "~2.1.1", + "parseurl": "~1.3.0", + "path-to-regexp": "0.1.3", + "proxy-addr": "~1.0.4", + "qs": "2.3.3", + "range-parser": "~1.0.2", + "send": "0.10.1", + "serve-static": "~1.7.1", + "type-is": "~1.5.4", + "utils-merge": "1.0.0", + "vary": "~1.0.0" + }, + "engines": { + "node": ">= 0.10.0" + } + }, + "node_modules/extend": { + "version": "3.0.2", + "license": "MIT" + }, + "node_modules/extglob": { + "version": "0.3.2", + "license": "MIT", + "dependencies": { + "is-extglob": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/extglob/node_modules/is-extglob": { + "version": "1.0.0", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/extsprintf": { + "version": "1.3.0", + "engines": [ + "node >=0.6.0" + ], + "license": "MIT" + }, + "node_modules/fast-xml-parser": { + "version": "4.0.11", + "license": "MIT", + "optional": true, + "dependencies": { + "strnum": "^1.0.5" + }, + "bin": { + "fxparser": "src/cli/cli.js" + }, + "funding": { + "type": "paypal", + "url": "https://paypal.me/naturalintelligence" + } + }, + "node_modules/filename-regex": { + "version": "2.0.1", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/fill-range": { + "version": "2.2.4", + "license": "MIT", + "dependencies": { + "is-number": "^2.1.0", + "isobject": "^2.0.0", + "randomatic": "^3.0.0", + "repeat-element": "^1.1.2", + "repeat-string": "^1.5.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/finalhandler": { + "version": "0.3.2", + "license": "MIT", + "dependencies": { + "debug": "~2.1.0", + "escape-html": "1.0.1", + "on-finished": "~2.1.1" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/follow-redirects": { + "version": "1.15.2", + "funding": [ + { + "type": "individual", + "url": "https://github.com/sponsors/RubenVerborgh" + } + ], + "license": "MIT", + "engines": { + "node": ">=4.0" + }, + "peerDependenciesMeta": { + "debug": { + "optional": true + } + } + }, + "node_modules/for-in": { + "version": "1.0.2", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/for-own": { + "version": "0.1.5", + "license": "MIT", + "dependencies": { + "for-in": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/forever-agent": { + "version": "0.6.1", + "license": "Apache-2.0", + "engines": { + "node": "*" + } + }, + "node_modules/form-data": { + "version": "2.1.4", + "license": "MIT", + "dependencies": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.5", + "mime-types": "^2.1.12" + }, + "engines": { + "node": ">= 0.12" + } + }, + "node_modules/form-data/node_modules/mime-db": { + "version": "1.52.0", + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/form-data/node_modules/mime-types": { + "version": "2.1.35", + "license": "MIT", + "dependencies": { + "mime-db": "1.52.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/forwarded": { + "version": "0.1.2", + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/fresh": { + "version": "0.2.4", + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/generate-function": { + "version": "2.3.1", + "license": "MIT", + "dependencies": { + "is-property": "^1.0.2" + } + }, + "node_modules/generate-object-property": { + "version": "1.2.0", + "license": "MIT", + "dependencies": { + "is-property": "^1.0.0" + } + }, + "node_modules/getpass": { + "version": "0.1.7", + "license": "MIT", + "dependencies": { + "assert-plus": "^1.0.0" + } + }, + "node_modules/getpass/node_modules/assert-plus": { + "version": "1.0.0", + "license": "MIT", + "engines": { + "node": ">=0.8" + } + }, + "node_modules/glob-base": { + "version": "0.3.0", + "license": "MIT", + "dependencies": { + "glob-parent": "^2.0.0", + "is-glob": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/glob-base/node_modules/is-extglob": { + "version": "1.0.0", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/glob-base/node_modules/is-glob": { + "version": "2.0.1", + "license": "MIT", + "dependencies": { + "is-extglob": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/glob-parent": { + "version": "2.0.0", + "license": "ISC", + "dependencies": { + "is-glob": "^2.0.0" + } + }, + "node_modules/glob-parent/node_modules/is-extglob": { + "version": "1.0.0", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/glob-parent/node_modules/is-glob": { + "version": "2.0.1", + "license": "MIT", + "dependencies": { + "is-extglob": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/har-validator": { + "version": "2.0.6", + "license": "ISC", + "dependencies": { + "chalk": "^1.1.1", + "commander": "^2.9.0", + "is-my-json-valid": "^2.12.4", + "pinkie-promise": "^2.0.0" + }, + "bin": { + "har-validator": "bin/har-validator" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/has-ansi": { + "version": "2.0.0", + "license": "MIT", + "dependencies": { + "ansi-regex": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/hawk": { + "version": "3.1.3", + "license": "BSD-3-Clause", + "dependencies": { + "boom": "2.x.x", + "cryptiles": "2.x.x", + "hoek": "2.x.x", + "sntp": "1.x.x" + }, + "engines": { + "node": ">=0.10.32" + } + }, + "node_modules/hoek": { + "version": "2.16.3", + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.10.40" + } + }, + "node_modules/http-proxy": { + "version": "1.18.1", + "license": "MIT", + "dependencies": { + "eventemitter3": "^4.0.0", + "follow-redirects": "^1.0.0", + "requires-port": "^1.0.0" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/http-proxy-middleware": { + "version": "0.17.3", + "license": "MIT", + "dependencies": { + "http-proxy": "^1.16.2", + "is-glob": "^3.1.0", + "lodash": "^4.17.2", + "micromatch": "^2.3.11" + } + }, + "node_modules/http-signature": { + "version": "1.1.1", + "license": "MIT", + "dependencies": { + "assert-plus": "^0.2.0", + "jsprim": "^1.2.2", + "sshpk": "^1.7.0" + }, + "engines": { + "node": ">=0.8", + "npm": ">=1.3.7" + } + }, + "node_modules/ieee754": { + "version": "1.2.1", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "BSD-3-Clause" + }, + "node_modules/ip": { + "version": "2.0.0", + "license": "MIT" + }, + "node_modules/ipaddr.js": { + "version": "1.0.5", + "license": "MIT", + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/is-buffer": { + "version": "1.1.6", + "license": "MIT" + }, + "node_modules/is-dotfile": { + "version": "1.0.3", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-equal-shallow": { + "version": "0.1.3", + "license": "MIT", + "dependencies": { + "is-primitive": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-extendable": { + "version": "0.1.1", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-extglob": { + "version": "2.1.1", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-glob": { + "version": "3.1.0", + "license": "MIT", + "dependencies": { + "is-extglob": "^2.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-my-ip-valid": { + "version": "1.0.1", + "license": "MIT" + }, + "node_modules/is-my-json-valid": { + "version": "2.20.6", + "license": "MIT", + "dependencies": { + "generate-function": "^2.0.0", + "generate-object-property": "^1.1.0", + "is-my-ip-valid": "^1.0.0", + "jsonpointer": "^5.0.0", + "xtend": "^4.0.0" + } + }, + "node_modules/is-number": { + "version": "2.1.0", + "license": "MIT", + "dependencies": { + "kind-of": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-posix-bracket": { + "version": "0.1.1", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-primitive": { + "version": "2.0.0", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-property": { + "version": "1.0.2", + "license": "MIT" + }, + "node_modules/is-typedarray": { + "version": "1.0.0", + "license": "MIT" + }, + "node_modules/isarray": { + "version": "1.0.0", + "license": "MIT" + }, + "node_modules/isobject": { + "version": "2.1.0", + "license": "MIT", + "dependencies": { + "isarray": "1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/isstream": { + "version": "0.1.2", + "license": "MIT" + }, + "node_modules/jsbn": { + "version": "0.1.1", + "license": "MIT" + }, + "node_modules/json-schema": { + "version": "0.4.0", + "license": "(AFL-2.1 OR BSD-3-Clause)" + }, + "node_modules/json-stringify-safe": { + "version": "5.0.1", + "license": "ISC" + }, + "node_modules/jsonpointer": { + "version": "5.0.1", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/jsprim": { + "version": "1.4.2", + "license": "MIT", + "dependencies": { + "assert-plus": "1.0.0", + "extsprintf": "1.3.0", + "json-schema": "0.4.0", + "verror": "1.10.0" + }, + "engines": { + "node": ">=0.6.0" + } + }, + "node_modules/jsprim/node_modules/assert-plus": { + "version": "1.0.0", + "license": "MIT", + "engines": { + "node": ">=0.8" + } + }, + "node_modules/kareem": { + "version": "2.4.1", + "license": "Apache-2.0" + }, + "node_modules/kind-of": { + "version": "3.2.2", + "license": "MIT", + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/lodash": { + "version": "4.17.21", + "license": "MIT" + }, + "node_modules/math-random": { + "version": "1.0.4", + "license": "MIT" + }, + "node_modules/media-typer": { + "version": "0.3.0", + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/memory-pager": { + "version": "1.5.0", + "license": "MIT", + "optional": true + }, + "node_modules/merge-descriptors": { + "version": "0.0.2", + "license": "MIT" + }, + "node_modules/methods": { + "version": "1.1.0", + "license": "MIT" + }, + "node_modules/micromatch": { + "version": "2.3.11", + "license": "MIT", + "dependencies": { + "arr-diff": "^2.0.0", + "array-unique": "^0.2.1", + "braces": "^1.8.2", + "expand-brackets": "^0.1.4", + "extglob": "^0.3.1", + "filename-regex": "^2.0.0", + "is-extglob": "^1.0.0", + "is-glob": "^2.0.1", + "kind-of": "^3.0.2", + "normalize-path": "^2.0.1", + "object.omit": "^2.0.0", + "parse-glob": "^3.0.4", + "regex-cache": "^0.4.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/micromatch/node_modules/is-extglob": { + "version": "1.0.0", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/micromatch/node_modules/is-glob": { + "version": "2.0.1", + "license": "MIT", + "dependencies": { + "is-extglob": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/mime": { + "version": "1.2.11" + }, + "node_modules/mime-db": { + "version": "1.12.0", + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mime-types": { + "version": "2.0.14", + "license": "MIT", + "dependencies": { + "mime-db": "~1.12.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mongodb": { + "version": "4.11.0", + "license": "Apache-2.0", + "dependencies": { + "bson": "^4.7.0", + "denque": "^2.1.0", + "mongodb-connection-string-url": "^2.5.4", + "socks": "^2.7.1" + }, + "engines": { + "node": ">=12.9.0" + }, + "optionalDependencies": { + "@aws-sdk/credential-providers": "^3.186.0", + "saslprep": "^1.0.3" + } + }, + "node_modules/mongodb-connection-string-url": { + "version": "2.6.0", + "license": "Apache-2.0", + "dependencies": { + "@types/whatwg-url": "^8.2.1", + "whatwg-url": "^11.0.0" + } + }, + "node_modules/mongoose": { + "version": "6.7.4", + "license": "MIT", + "dependencies": { + "bson": "^4.7.0", + "kareem": "2.4.1", + "mongodb": "4.11.0", + "mpath": "0.9.0", + "mquery": "4.0.3", + "ms": "2.1.3", + "sift": "16.0.1" + }, + "engines": { + "node": ">=12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/mongoose" + } + }, + "node_modules/mongoose/node_modules/ms": { + "version": "2.1.3", + "license": "MIT" + }, + "node_modules/mpath": { + "version": "0.9.0", + "license": "MIT", + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/mquery": { + "version": "4.0.3", + "license": "MIT", + "dependencies": { + "debug": "4.x" + }, + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/mquery/node_modules/debug": { + "version": "4.3.4", + "license": "MIT", + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/mquery/node_modules/ms": { + "version": "2.1.2", + "license": "MIT" + }, + "node_modules/ms": { + "version": "0.7.0" + }, + "node_modules/negotiator": { + "version": "0.4.9", + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/normalize-path": { + "version": "2.1.1", + "license": "MIT", + "dependencies": { + "remove-trailing-separator": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/oauth-sign": { + "version": "0.8.2", + "license": "Apache-2.0", + "engines": { + "node": "*" + } + }, + "node_modules/object.omit": { + "version": "2.0.1", + "license": "MIT", + "dependencies": { + "for-own": "^0.1.4", + "is-extendable": "^0.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/on-finished": { + "version": "2.1.1", + "license": "MIT", + "dependencies": { + "ee-first": "1.1.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/parse-glob": { + "version": "3.0.4", + "license": "MIT", + "dependencies": { + "glob-base": "^0.3.0", + "is-dotfile": "^1.0.0", + "is-extglob": "^1.0.0", + "is-glob": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/parse-glob/node_modules/is-extglob": { + "version": "1.0.0", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/parse-glob/node_modules/is-glob": { + "version": "2.0.1", + "license": "MIT", + "dependencies": { + "is-extglob": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/parseurl": { + "version": "1.3.3", + "license": "MIT", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/path-to-regexp": { + "version": "0.1.3" + }, + "node_modules/pinkie": { + "version": "2.0.4", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/pinkie-promise": { + "version": "2.0.1", + "license": "MIT", + "dependencies": { + "pinkie": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/preserve": { + "version": "0.2.0", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/proxy-addr": { + "version": "1.0.10", + "license": "MIT", + "dependencies": { + "forwarded": "~0.1.0", + "ipaddr.js": "1.0.5" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/punycode": { + "version": "1.4.1", + "license": "MIT" + }, + "node_modules/qs": { + "version": "2.3.3" + }, + "node_modules/randomatic": { + "version": "3.1.1", + "license": "MIT", + "dependencies": { + "is-number": "^4.0.0", + "kind-of": "^6.0.0", + "math-random": "^1.0.1" + }, + "engines": { + "node": ">= 0.10.0" + } + }, + "node_modules/randomatic/node_modules/is-number": { + "version": "4.0.0", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/randomatic/node_modules/kind-of": { + "version": "6.0.3", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/range-parser": { + "version": "1.0.3", + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/regex-cache": { + "version": "0.4.4", + "license": "MIT", + "dependencies": { + "is-equal-shallow": "^0.1.3" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/remove-trailing-separator": { + "version": "1.1.0", + "license": "ISC" + }, + "node_modules/repeat-element": { + "version": "1.1.4", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/repeat-string": { + "version": "1.6.1", + "license": "MIT", + "engines": { + "node": ">=0.10" + } + }, + "node_modules/request": { + "version": "2.79.0", + "license": "Apache-2.0", + "dependencies": { + "aws-sign2": "~0.6.0", + "aws4": "^1.2.1", + "caseless": "~0.11.0", + "combined-stream": "~1.0.5", + "extend": "~3.0.0", + "forever-agent": "~0.6.1", + "form-data": "~2.1.1", + "har-validator": "~2.0.6", + "hawk": "~3.1.3", + "http-signature": "~1.1.0", + "is-typedarray": "~1.0.0", + "isstream": "~0.1.2", + "json-stringify-safe": "~5.0.1", + "mime-types": "~2.1.7", + "oauth-sign": "~0.8.1", + "qs": "~6.3.0", + "stringstream": "~0.0.4", + "tough-cookie": "~2.3.0", + "tunnel-agent": "~0.4.1", + "uuid": "^3.0.0" + }, + "engines": { + "node": ">= 4" + } + }, + "node_modules/request/node_modules/mime-db": { + "version": "1.52.0", + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/request/node_modules/mime-types": { + "version": "2.1.35", + "license": "MIT", + "dependencies": { + "mime-db": "1.52.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/request/node_modules/qs": { + "version": "6.3.3", + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.6" + } + }, + "node_modules/request/node_modules/uuid": { + "version": "3.4.0", + "license": "MIT", + "bin": { + "uuid": "bin/uuid" + } + }, + "node_modules/requires-port": { + "version": "1.0.0", + "license": "MIT" + }, + "node_modules/safer-buffer": { + "version": "2.1.2", + "license": "MIT" + }, + "node_modules/saslprep": { + "version": "1.0.3", + "license": "MIT", + "optional": true, + "dependencies": { + "sparse-bitfield": "^3.0.3" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/send": { + "version": "0.10.1", + "license": "MIT", + "dependencies": { + "debug": "~2.1.0", + "depd": "~1.0.0", + "destroy": "1.0.3", + "escape-html": "1.0.1", + "etag": "~1.5.0", + "fresh": "0.2.4", + "mime": "1.2.11", + "ms": "0.6.2", + "on-finished": "~2.1.1", + "range-parser": "~1.0.2" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/send/node_modules/ms": { + "version": "0.6.2" + }, + "node_modules/serve-static": { + "version": "1.7.2", + "license": "MIT", + "dependencies": { + "escape-html": "1.0.1", + "parseurl": "~1.3.0", + "send": "0.10.1", + "utils-merge": "1.0.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/sift": { + "version": "16.0.1", + "license": "MIT" + }, + "node_modules/smart-buffer": { + "version": "4.2.0", + "license": "MIT", + "engines": { + "node": ">= 6.0.0", + "npm": ">= 3.0.0" + } + }, + "node_modules/sntp": { + "version": "1.0.9", + "dependencies": { + "hoek": "2.x.x" + }, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/socks": { + "version": "2.7.1", + "license": "MIT", + "dependencies": { + "ip": "^2.0.0", + "smart-buffer": "^4.2.0" + }, + "engines": { + "node": ">= 10.13.0", + "npm": ">= 3.0.0" + } + }, + "node_modules/sparse-bitfield": { + "version": "3.0.3", + "license": "MIT", + "optional": true, + "dependencies": { + "memory-pager": "^1.0.2" + } + }, + "node_modules/sshpk": { + "version": "1.17.0", + "license": "MIT", + "dependencies": { + "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" + }, + "bin": { + "sshpk-conv": "bin/sshpk-conv", + "sshpk-sign": "bin/sshpk-sign", + "sshpk-verify": "bin/sshpk-verify" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/sshpk/node_modules/assert-plus": { + "version": "1.0.0", + "license": "MIT", + "engines": { + "node": ">=0.8" + } + }, + "node_modules/stringstream": { + "version": "0.0.6", + "license": "MIT" + }, + "node_modules/strip-ansi": { + "version": "3.0.1", + "license": "MIT", + "dependencies": { + "ansi-regex": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/strnum": { + "version": "1.0.5", + "license": "MIT", + "optional": true + }, + "node_modules/supports-color": { + "version": "2.0.0", + "license": "MIT", + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/tough-cookie": { + "version": "2.3.4", + "license": "BSD-3-Clause", + "dependencies": { + "punycode": "^1.4.1" + }, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/tr46": { + "version": "3.0.0", + "license": "MIT", + "dependencies": { + "punycode": "^2.1.1" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/tr46/node_modules/punycode": { + "version": "2.1.1", + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/tslib": { + "version": "2.4.1", + "license": "0BSD", + "optional": true + }, + "node_modules/tunnel-agent": { + "version": "0.4.3", + "license": "Apache-2.0", + "engines": { + "node": "*" + } + }, + "node_modules/tweetnacl": { + "version": "0.14.5", + "license": "Unlicense" + }, + "node_modules/type-is": { + "version": "1.5.7", + "license": "MIT", + "dependencies": { + "media-typer": "0.3.0", + "mime-types": "~2.0.9" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/utils-merge": { + "version": "1.0.0", + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/uuid": { + "version": "8.3.2", + "license": "MIT", + "optional": true, + "bin": { + "uuid": "dist/bin/uuid" + } + }, + "node_modules/vary": { + "version": "1.0.1", + "license": "MIT", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/verror": { + "version": "1.10.0", + "engines": [ + "node >=0.6.0" + ], + "license": "MIT", + "dependencies": { + "assert-plus": "^1.0.0", + "core-util-is": "1.0.2", + "extsprintf": "^1.2.0" + } + }, + "node_modules/verror/node_modules/assert-plus": { + "version": "1.0.0", + "license": "MIT", + "engines": { + "node": ">=0.8" + } + }, + "node_modules/webidl-conversions": { + "version": "7.0.0", + "license": "BSD-2-Clause", + "engines": { + "node": ">=12" + } + }, + "node_modules/whatwg-url": { + "version": "11.0.0", + "license": "MIT", + "dependencies": { + "tr46": "^3.0.0", + "webidl-conversions": "^7.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/xmlbuilder": { + "version": "8.2.2", + "license": "MIT", + "engines": { + "node": ">=4.0" + } + }, + "node_modules/xtend": { + "version": "4.0.2", + "license": "MIT", + "engines": { + "node": ">=0.4" + } + } + }, "dependencies": { + "@aws-crypto/ie11-detection": { + "version": "2.0.2", + "optional": true, + "requires": { + "tslib": "^1.11.1" + }, + "dependencies": { + "tslib": { + "version": "1.14.1", + "optional": true + } + } + }, + "@aws-crypto/sha256-browser": { + "version": "2.0.0", + "optional": true, + "requires": { + "@aws-crypto/ie11-detection": "^2.0.0", + "@aws-crypto/sha256-js": "^2.0.0", + "@aws-crypto/supports-web-crypto": "^2.0.0", + "@aws-crypto/util": "^2.0.0", + "@aws-sdk/types": "^3.1.0", + "@aws-sdk/util-locate-window": "^3.0.0", + "@aws-sdk/util-utf8-browser": "^3.0.0", + "tslib": "^1.11.1" + }, + "dependencies": { + "tslib": { + "version": "1.14.1", + "optional": true + } + } + }, + "@aws-crypto/sha256-js": { + "version": "2.0.0", + "optional": true, + "requires": { + "@aws-crypto/util": "^2.0.0", + "@aws-sdk/types": "^3.1.0", + "tslib": "^1.11.1" + }, + "dependencies": { + "tslib": { + "version": "1.14.1", + "optional": true + } + } + }, + "@aws-crypto/supports-web-crypto": { + "version": "2.0.2", + "optional": true, + "requires": { + "tslib": "^1.11.1" + }, + "dependencies": { + "tslib": { + "version": "1.14.1", + "optional": true + } + } + }, + "@aws-crypto/util": { + "version": "2.0.2", + "optional": true, + "requires": { + "@aws-sdk/types": "^3.110.0", + "@aws-sdk/util-utf8-browser": "^3.0.0", + "tslib": "^1.11.1" + }, + "dependencies": { + "tslib": { + "version": "1.14.1", + "optional": true + } + } + }, + "@aws-sdk/abort-controller": { + "version": "3.215.0", + "optional": true, + "requires": { + "@aws-sdk/types": "3.215.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/client-cognito-identity": { + "version": "3.218.0", + "optional": true, + "requires": { + "@aws-crypto/sha256-browser": "2.0.0", + "@aws-crypto/sha256-js": "2.0.0", + "@aws-sdk/client-sts": "3.218.0", + "@aws-sdk/config-resolver": "3.215.0", + "@aws-sdk/credential-provider-node": "3.218.0", + "@aws-sdk/fetch-http-handler": "3.215.0", + "@aws-sdk/hash-node": "3.215.0", + "@aws-sdk/invalid-dependency": "3.215.0", + "@aws-sdk/middleware-content-length": "3.215.0", + "@aws-sdk/middleware-endpoint": "3.215.0", + "@aws-sdk/middleware-host-header": "3.215.0", + "@aws-sdk/middleware-logger": "3.215.0", + "@aws-sdk/middleware-recursion-detection": "3.215.0", + "@aws-sdk/middleware-retry": "3.215.0", + "@aws-sdk/middleware-serde": "3.215.0", + "@aws-sdk/middleware-signing": "3.215.0", + "@aws-sdk/middleware-stack": "3.215.0", + "@aws-sdk/middleware-user-agent": "3.215.0", + "@aws-sdk/node-config-provider": "3.215.0", + "@aws-sdk/node-http-handler": "3.215.0", + "@aws-sdk/protocol-http": "3.215.0", + "@aws-sdk/smithy-client": "3.215.0", + "@aws-sdk/types": "3.215.0", + "@aws-sdk/url-parser": "3.215.0", + "@aws-sdk/util-base64": "3.208.0", + "@aws-sdk/util-body-length-browser": "3.188.0", + "@aws-sdk/util-body-length-node": "3.208.0", + "@aws-sdk/util-defaults-mode-browser": "3.215.0", + "@aws-sdk/util-defaults-mode-node": "3.215.0", + "@aws-sdk/util-endpoints": "3.216.0", + "@aws-sdk/util-user-agent-browser": "3.215.0", + "@aws-sdk/util-user-agent-node": "3.215.0", + "@aws-sdk/util-utf8-browser": "3.188.0", + "@aws-sdk/util-utf8-node": "3.208.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/client-sso": { + "version": "3.218.0", + "optional": true, + "requires": { + "@aws-crypto/sha256-browser": "2.0.0", + "@aws-crypto/sha256-js": "2.0.0", + "@aws-sdk/config-resolver": "3.215.0", + "@aws-sdk/fetch-http-handler": "3.215.0", + "@aws-sdk/hash-node": "3.215.0", + "@aws-sdk/invalid-dependency": "3.215.0", + "@aws-sdk/middleware-content-length": "3.215.0", + "@aws-sdk/middleware-endpoint": "3.215.0", + "@aws-sdk/middleware-host-header": "3.215.0", + "@aws-sdk/middleware-logger": "3.215.0", + "@aws-sdk/middleware-recursion-detection": "3.215.0", + "@aws-sdk/middleware-retry": "3.215.0", + "@aws-sdk/middleware-serde": "3.215.0", + "@aws-sdk/middleware-stack": "3.215.0", + "@aws-sdk/middleware-user-agent": "3.215.0", + "@aws-sdk/node-config-provider": "3.215.0", + "@aws-sdk/node-http-handler": "3.215.0", + "@aws-sdk/protocol-http": "3.215.0", + "@aws-sdk/smithy-client": "3.215.0", + "@aws-sdk/types": "3.215.0", + "@aws-sdk/url-parser": "3.215.0", + "@aws-sdk/util-base64": "3.208.0", + "@aws-sdk/util-body-length-browser": "3.188.0", + "@aws-sdk/util-body-length-node": "3.208.0", + "@aws-sdk/util-defaults-mode-browser": "3.215.0", + "@aws-sdk/util-defaults-mode-node": "3.215.0", + "@aws-sdk/util-endpoints": "3.216.0", + "@aws-sdk/util-user-agent-browser": "3.215.0", + "@aws-sdk/util-user-agent-node": "3.215.0", + "@aws-sdk/util-utf8-browser": "3.188.0", + "@aws-sdk/util-utf8-node": "3.208.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/client-sso-oidc": { + "version": "3.216.0", + "optional": true, + "requires": { + "@aws-crypto/sha256-browser": "2.0.0", + "@aws-crypto/sha256-js": "2.0.0", + "@aws-sdk/config-resolver": "3.215.0", + "@aws-sdk/fetch-http-handler": "3.215.0", + "@aws-sdk/hash-node": "3.215.0", + "@aws-sdk/invalid-dependency": "3.215.0", + "@aws-sdk/middleware-content-length": "3.215.0", + "@aws-sdk/middleware-endpoint": "3.215.0", + "@aws-sdk/middleware-host-header": "3.215.0", + "@aws-sdk/middleware-logger": "3.215.0", + "@aws-sdk/middleware-recursion-detection": "3.215.0", + "@aws-sdk/middleware-retry": "3.215.0", + "@aws-sdk/middleware-serde": "3.215.0", + "@aws-sdk/middleware-stack": "3.215.0", + "@aws-sdk/middleware-user-agent": "3.215.0", + "@aws-sdk/node-config-provider": "3.215.0", + "@aws-sdk/node-http-handler": "3.215.0", + "@aws-sdk/protocol-http": "3.215.0", + "@aws-sdk/smithy-client": "3.215.0", + "@aws-sdk/types": "3.215.0", + "@aws-sdk/url-parser": "3.215.0", + "@aws-sdk/util-base64": "3.208.0", + "@aws-sdk/util-body-length-browser": "3.188.0", + "@aws-sdk/util-body-length-node": "3.208.0", + "@aws-sdk/util-defaults-mode-browser": "3.215.0", + "@aws-sdk/util-defaults-mode-node": "3.215.0", + "@aws-sdk/util-endpoints": "3.216.0", + "@aws-sdk/util-user-agent-browser": "3.215.0", + "@aws-sdk/util-user-agent-node": "3.215.0", + "@aws-sdk/util-utf8-browser": "3.188.0", + "@aws-sdk/util-utf8-node": "3.208.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/client-sts": { + "version": "3.218.0", + "optional": true, + "requires": { + "@aws-crypto/sha256-browser": "2.0.0", + "@aws-crypto/sha256-js": "2.0.0", + "@aws-sdk/config-resolver": "3.215.0", + "@aws-sdk/credential-provider-node": "3.218.0", + "@aws-sdk/fetch-http-handler": "3.215.0", + "@aws-sdk/hash-node": "3.215.0", + "@aws-sdk/invalid-dependency": "3.215.0", + "@aws-sdk/middleware-content-length": "3.215.0", + "@aws-sdk/middleware-endpoint": "3.215.0", + "@aws-sdk/middleware-host-header": "3.215.0", + "@aws-sdk/middleware-logger": "3.215.0", + "@aws-sdk/middleware-recursion-detection": "3.215.0", + "@aws-sdk/middleware-retry": "3.215.0", + "@aws-sdk/middleware-sdk-sts": "3.215.0", + "@aws-sdk/middleware-serde": "3.215.0", + "@aws-sdk/middleware-signing": "3.215.0", + "@aws-sdk/middleware-stack": "3.215.0", + "@aws-sdk/middleware-user-agent": "3.215.0", + "@aws-sdk/node-config-provider": "3.215.0", + "@aws-sdk/node-http-handler": "3.215.0", + "@aws-sdk/protocol-http": "3.215.0", + "@aws-sdk/smithy-client": "3.215.0", + "@aws-sdk/types": "3.215.0", + "@aws-sdk/url-parser": "3.215.0", + "@aws-sdk/util-base64": "3.208.0", + "@aws-sdk/util-body-length-browser": "3.188.0", + "@aws-sdk/util-body-length-node": "3.208.0", + "@aws-sdk/util-defaults-mode-browser": "3.215.0", + "@aws-sdk/util-defaults-mode-node": "3.215.0", + "@aws-sdk/util-endpoints": "3.216.0", + "@aws-sdk/util-user-agent-browser": "3.215.0", + "@aws-sdk/util-user-agent-node": "3.215.0", + "@aws-sdk/util-utf8-browser": "3.188.0", + "@aws-sdk/util-utf8-node": "3.208.0", + "fast-xml-parser": "4.0.11", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/config-resolver": { + "version": "3.215.0", + "optional": true, + "requires": { + "@aws-sdk/signature-v4": "3.215.0", + "@aws-sdk/types": "3.215.0", + "@aws-sdk/util-config-provider": "3.208.0", + "@aws-sdk/util-middleware": "3.215.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/credential-provider-cognito-identity": { + "version": "3.218.0", + "optional": true, + "requires": { + "@aws-sdk/client-cognito-identity": "3.218.0", + "@aws-sdk/property-provider": "3.215.0", + "@aws-sdk/types": "3.215.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/credential-provider-env": { + "version": "3.215.0", + "optional": true, + "requires": { + "@aws-sdk/property-provider": "3.215.0", + "@aws-sdk/types": "3.215.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/credential-provider-imds": { + "version": "3.215.0", + "optional": true, + "requires": { + "@aws-sdk/node-config-provider": "3.215.0", + "@aws-sdk/property-provider": "3.215.0", + "@aws-sdk/types": "3.215.0", + "@aws-sdk/url-parser": "3.215.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/credential-provider-ini": { + "version": "3.218.0", + "optional": true, + "requires": { + "@aws-sdk/credential-provider-env": "3.215.0", + "@aws-sdk/credential-provider-imds": "3.215.0", + "@aws-sdk/credential-provider-sso": "3.218.0", + "@aws-sdk/credential-provider-web-identity": "3.215.0", + "@aws-sdk/property-provider": "3.215.0", + "@aws-sdk/shared-ini-file-loader": "3.215.0", + "@aws-sdk/types": "3.215.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/credential-provider-node": { + "version": "3.218.0", + "optional": true, + "requires": { + "@aws-sdk/credential-provider-env": "3.215.0", + "@aws-sdk/credential-provider-imds": "3.215.0", + "@aws-sdk/credential-provider-ini": "3.218.0", + "@aws-sdk/credential-provider-process": "3.215.0", + "@aws-sdk/credential-provider-sso": "3.218.0", + "@aws-sdk/credential-provider-web-identity": "3.215.0", + "@aws-sdk/property-provider": "3.215.0", + "@aws-sdk/shared-ini-file-loader": "3.215.0", + "@aws-sdk/types": "3.215.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/credential-provider-process": { + "version": "3.215.0", + "optional": true, + "requires": { + "@aws-sdk/property-provider": "3.215.0", + "@aws-sdk/shared-ini-file-loader": "3.215.0", + "@aws-sdk/types": "3.215.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/credential-provider-sso": { + "version": "3.218.0", + "optional": true, + "requires": { + "@aws-sdk/client-sso": "3.218.0", + "@aws-sdk/property-provider": "3.215.0", + "@aws-sdk/shared-ini-file-loader": "3.215.0", + "@aws-sdk/token-providers": "3.216.0", + "@aws-sdk/types": "3.215.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/credential-provider-web-identity": { + "version": "3.215.0", + "optional": true, + "requires": { + "@aws-sdk/property-provider": "3.215.0", + "@aws-sdk/types": "3.215.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/credential-providers": { + "version": "3.218.0", + "optional": true, + "requires": { + "@aws-sdk/client-cognito-identity": "3.218.0", + "@aws-sdk/client-sso": "3.218.0", + "@aws-sdk/client-sts": "3.218.0", + "@aws-sdk/credential-provider-cognito-identity": "3.218.0", + "@aws-sdk/credential-provider-env": "3.215.0", + "@aws-sdk/credential-provider-imds": "3.215.0", + "@aws-sdk/credential-provider-ini": "3.218.0", + "@aws-sdk/credential-provider-node": "3.218.0", + "@aws-sdk/credential-provider-process": "3.215.0", + "@aws-sdk/credential-provider-sso": "3.218.0", + "@aws-sdk/credential-provider-web-identity": "3.215.0", + "@aws-sdk/property-provider": "3.215.0", + "@aws-sdk/shared-ini-file-loader": "3.215.0", + "@aws-sdk/types": "3.215.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/fetch-http-handler": { + "version": "3.215.0", + "optional": true, + "requires": { + "@aws-sdk/protocol-http": "3.215.0", + "@aws-sdk/querystring-builder": "3.215.0", + "@aws-sdk/types": "3.215.0", + "@aws-sdk/util-base64": "3.208.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/hash-node": { + "version": "3.215.0", + "optional": true, + "requires": { + "@aws-sdk/types": "3.215.0", + "@aws-sdk/util-buffer-from": "3.208.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/invalid-dependency": { + "version": "3.215.0", + "optional": true, + "requires": { + "@aws-sdk/types": "3.215.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/is-array-buffer": { + "version": "3.201.0", + "optional": true, + "requires": { + "tslib": "^2.3.1" + } + }, + "@aws-sdk/middleware-content-length": { + "version": "3.215.0", + "optional": true, + "requires": { + "@aws-sdk/protocol-http": "3.215.0", + "@aws-sdk/types": "3.215.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/middleware-endpoint": { + "version": "3.215.0", + "optional": true, + "requires": { + "@aws-sdk/middleware-serde": "3.215.0", + "@aws-sdk/protocol-http": "3.215.0", + "@aws-sdk/signature-v4": "3.215.0", + "@aws-sdk/types": "3.215.0", + "@aws-sdk/url-parser": "3.215.0", + "@aws-sdk/util-config-provider": "3.208.0", + "@aws-sdk/util-middleware": "3.215.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/middleware-host-header": { + "version": "3.215.0", + "optional": true, + "requires": { + "@aws-sdk/protocol-http": "3.215.0", + "@aws-sdk/types": "3.215.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/middleware-logger": { + "version": "3.215.0", + "optional": true, + "requires": { + "@aws-sdk/types": "3.215.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/middleware-recursion-detection": { + "version": "3.215.0", + "optional": true, + "requires": { + "@aws-sdk/protocol-http": "3.215.0", + "@aws-sdk/types": "3.215.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/middleware-retry": { + "version": "3.215.0", + "optional": true, + "requires": { + "@aws-sdk/protocol-http": "3.215.0", + "@aws-sdk/service-error-classification": "3.215.0", + "@aws-sdk/types": "3.215.0", + "@aws-sdk/util-middleware": "3.215.0", + "tslib": "^2.3.1", + "uuid": "^8.3.2" + } + }, + "@aws-sdk/middleware-sdk-sts": { + "version": "3.215.0", + "optional": true, + "requires": { + "@aws-sdk/middleware-signing": "3.215.0", + "@aws-sdk/property-provider": "3.215.0", + "@aws-sdk/protocol-http": "3.215.0", + "@aws-sdk/signature-v4": "3.215.0", + "@aws-sdk/types": "3.215.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/middleware-serde": { + "version": "3.215.0", + "optional": true, + "requires": { + "@aws-sdk/types": "3.215.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/middleware-signing": { + "version": "3.215.0", + "optional": true, + "requires": { + "@aws-sdk/property-provider": "3.215.0", + "@aws-sdk/protocol-http": "3.215.0", + "@aws-sdk/signature-v4": "3.215.0", + "@aws-sdk/types": "3.215.0", + "@aws-sdk/util-middleware": "3.215.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/middleware-stack": { + "version": "3.215.0", + "optional": true, + "requires": { + "tslib": "^2.3.1" + } + }, + "@aws-sdk/middleware-user-agent": { + "version": "3.215.0", + "optional": true, + "requires": { + "@aws-sdk/protocol-http": "3.215.0", + "@aws-sdk/types": "3.215.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/node-config-provider": { + "version": "3.215.0", + "optional": true, + "requires": { + "@aws-sdk/property-provider": "3.215.0", + "@aws-sdk/shared-ini-file-loader": "3.215.0", + "@aws-sdk/types": "3.215.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/node-http-handler": { + "version": "3.215.0", + "optional": true, + "requires": { + "@aws-sdk/abort-controller": "3.215.0", + "@aws-sdk/protocol-http": "3.215.0", + "@aws-sdk/querystring-builder": "3.215.0", + "@aws-sdk/types": "3.215.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/property-provider": { + "version": "3.215.0", + "optional": true, + "requires": { + "@aws-sdk/types": "3.215.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/protocol-http": { + "version": "3.215.0", + "optional": true, + "requires": { + "@aws-sdk/types": "3.215.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/querystring-builder": { + "version": "3.215.0", + "optional": true, + "requires": { + "@aws-sdk/types": "3.215.0", + "@aws-sdk/util-uri-escape": "3.201.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/querystring-parser": { + "version": "3.215.0", + "optional": true, + "requires": { + "@aws-sdk/types": "3.215.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/service-error-classification": { + "version": "3.215.0", + "optional": true + }, + "@aws-sdk/shared-ini-file-loader": { + "version": "3.215.0", + "optional": true, + "requires": { + "@aws-sdk/types": "3.215.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/signature-v4": { + "version": "3.215.0", + "optional": true, + "requires": { + "@aws-sdk/is-array-buffer": "3.201.0", + "@aws-sdk/types": "3.215.0", + "@aws-sdk/util-hex-encoding": "3.201.0", + "@aws-sdk/util-middleware": "3.215.0", + "@aws-sdk/util-uri-escape": "3.201.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/smithy-client": { + "version": "3.215.0", + "optional": true, + "requires": { + "@aws-sdk/middleware-stack": "3.215.0", + "@aws-sdk/types": "3.215.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/token-providers": { + "version": "3.216.0", + "optional": true, + "requires": { + "@aws-sdk/client-sso-oidc": "3.216.0", + "@aws-sdk/property-provider": "3.215.0", + "@aws-sdk/shared-ini-file-loader": "3.215.0", + "@aws-sdk/types": "3.215.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/types": { + "version": "3.215.0", + "optional": true + }, + "@aws-sdk/url-parser": { + "version": "3.215.0", + "optional": true, + "requires": { + "@aws-sdk/querystring-parser": "3.215.0", + "@aws-sdk/types": "3.215.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/util-base64": { + "version": "3.208.0", + "optional": true, + "requires": { + "@aws-sdk/util-buffer-from": "3.208.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/util-body-length-browser": { + "version": "3.188.0", + "optional": true, + "requires": { + "tslib": "^2.3.1" + } + }, + "@aws-sdk/util-body-length-node": { + "version": "3.208.0", + "optional": true, + "requires": { + "tslib": "^2.3.1" + } + }, + "@aws-sdk/util-buffer-from": { + "version": "3.208.0", + "optional": true, + "requires": { + "@aws-sdk/is-array-buffer": "3.201.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/util-config-provider": { + "version": "3.208.0", + "optional": true, + "requires": { + "tslib": "^2.3.1" + } + }, + "@aws-sdk/util-defaults-mode-browser": { + "version": "3.215.0", + "optional": true, + "requires": { + "@aws-sdk/property-provider": "3.215.0", + "@aws-sdk/types": "3.215.0", + "bowser": "^2.11.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/util-defaults-mode-node": { + "version": "3.215.0", + "optional": true, + "requires": { + "@aws-sdk/config-resolver": "3.215.0", + "@aws-sdk/credential-provider-imds": "3.215.0", + "@aws-sdk/node-config-provider": "3.215.0", + "@aws-sdk/property-provider": "3.215.0", + "@aws-sdk/types": "3.215.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/util-endpoints": { + "version": "3.216.0", + "optional": true, + "requires": { + "@aws-sdk/types": "3.215.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/util-hex-encoding": { + "version": "3.201.0", + "optional": true, + "requires": { + "tslib": "^2.3.1" + } + }, + "@aws-sdk/util-locate-window": { + "version": "3.208.0", + "optional": true, + "requires": { + "tslib": "^2.3.1" + } + }, + "@aws-sdk/util-middleware": { + "version": "3.215.0", + "optional": true, + "requires": { + "tslib": "^2.3.1" + } + }, + "@aws-sdk/util-uri-escape": { + "version": "3.201.0", + "optional": true, + "requires": { + "tslib": "^2.3.1" + } + }, + "@aws-sdk/util-user-agent-browser": { + "version": "3.215.0", + "optional": true, + "requires": { + "@aws-sdk/types": "3.215.0", + "bowser": "^2.11.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/util-user-agent-node": { + "version": "3.215.0", + "optional": true, + "requires": { + "@aws-sdk/node-config-provider": "3.215.0", + "@aws-sdk/types": "3.215.0", + "tslib": "^2.3.1" + } + }, + "@aws-sdk/util-utf8-browser": { + "version": "3.188.0", + "optional": true, + "requires": { + "tslib": "^2.3.1" + } + }, + "@aws-sdk/util-utf8-node": { + "version": "3.208.0", + "optional": true, + "requires": { + "@aws-sdk/util-buffer-from": "3.208.0", + "tslib": "^2.3.1" + } + }, + "@types/node": { + "version": "18.11.9" + }, + "@types/webidl-conversions": { + "version": "7.0.0" + }, + "@types/whatwg-url": { + "version": "8.2.2", + "requires": { + "@types/node": "*", + "@types/webidl-conversions": "*" + } + }, "accepts": { "version": "1.1.4", - "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.1.4.tgz", - "integrity": "sha1-1xyW99QdD+2iw4zRToonwEFY30o=", "requires": { "mime-types": "~2.0.4", "negotiator": "0.4.9" } }, "ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=" + "version": "2.1.1" }, "ansi-styles": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", - "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=" + "version": "2.2.1" }, "arr-diff": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-2.0.0.tgz", - "integrity": "sha1-jzuCf5Vai9ZpaX5KQlasPOrjVs8=", "requires": { "arr-flatten": "^1.0.1" } }, "arr-flatten": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz", - "integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==" + "version": "1.1.0" }, "array-unique": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.2.1.tgz", - "integrity": "sha1-odl8yvy8JiXMcPrc6zalDFiwGlM=" + "version": "0.2.1" }, "asn1": { - "version": "0.2.4", - "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.4.tgz", - "integrity": "sha512-jxwzQpLQjSmWXgwaCZE9Nz+glAG01yF1QnWgbhGwHI5A6FRIEY6IVqtHhIepHqI7/kyEyQEagBC5mBEFlIYvdg==", + "version": "0.2.6", "requires": { "safer-buffer": "~2.1.0" } }, "assert-plus": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-0.2.0.tgz", - "integrity": "sha1-104bh+ev/A24qttwIfP+SBAasjQ=" - }, - "async": { - "version": "2.1.4", - "resolved": "https://registry.npmjs.org/async/-/async-2.1.4.tgz", - "integrity": "sha1-LSFgx3iAMuTdbL4lAvH5osj2zeQ=", - "requires": { - "lodash": "^4.14.0" - } + "version": "0.2.0" }, "asynckit": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", - "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=" + "version": "0.4.0" }, "aws-sign2": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.6.0.tgz", - "integrity": "sha1-FDQt0428yU0OW4fXY81jYSwOeU8=" + "version": "0.6.0" }, "aws4": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.8.0.tgz", - "integrity": "sha512-ReZxvNHIOv88FlT7rxcXIIC0fPt4KZqZbOlivyWtXLt8ESx84zd3kMC6iK5jVeS2qt+g7ftS7ye4fi06X5rtRQ==" + "version": "1.11.0" + }, + "base64-js": { + "version": "1.5.1" }, "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" } }, - "bluebird": { - "version": "2.10.2", - "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-2.10.2.tgz", - "integrity": "sha1-AkpVFylTCIV/FPkfEQb8O1VfRGs=" - }, "boom": { "version": "2.10.1", - "resolved": "https://registry.npmjs.org/boom/-/boom-2.10.1.tgz", - "integrity": "sha1-OciRjO/1eZ+D+UkqhI9iWt0Mdm8=", "requires": { "hoek": "2.x.x" } }, + "bowser": { + "version": "2.11.0", + "optional": true + }, "braces": { "version": "1.8.5", - "resolved": "https://registry.npmjs.org/braces/-/braces-1.8.5.tgz", - "integrity": "sha1-uneWLhLf+WnWt2cR6RS3N4V79qc=", "requires": { "expand-range": "^1.8.1", "preserve": "^0.2.0", @@ -109,24 +3555,23 @@ } }, "bson": { - "version": "1.0.9", - "resolved": "https://registry.npmjs.org/bson/-/bson-1.0.9.tgz", - "integrity": "sha512-IQX9/h7WdMBIW/q/++tGd+emQr0XMdeZ6icnT/74Xk9fnabWn+gZgpE+9V+gujL3hhJOoNrnDVY7tWdzc7NUTg==" + "version": "4.7.0", + "requires": { + "buffer": "^5.6.0" + } }, - "buffer-shims": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/buffer-shims/-/buffer-shims-1.0.0.tgz", - "integrity": "sha1-mXjOMXOIxkmth5MCjDR37wRKi1E=" + "buffer": { + "version": "5.7.1", + "requires": { + "base64-js": "^1.3.1", + "ieee754": "^1.1.13" + } }, "caseless": { - "version": "0.11.0", - "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.11.0.tgz", - "integrity": "sha1-cVuW6phBWTzDMGeSP17GDr2k99c=" + "version": "0.11.0" }, "chalk": { "version": "1.1.3", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", "requires": { "ansi-styles": "^2.2.1", "escape-string-regexp": "^1.0.2", @@ -136,151 +3581,103 @@ } }, "combined-stream": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.7.tgz", - "integrity": "sha512-brWl9y6vOB1xYPZcpZde3N9zDByXTosAeMDo4p1wzo6UMOX4vumB+TP1RZ76sfE6Md68Q0NJSrE/gbezd4Ul+w==", + "version": "1.0.8", "requires": { "delayed-stream": "~1.0.0" } }, "commander": { - "version": "2.19.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.19.0.tgz", - "integrity": "sha512-6tvAOO+D6OENvRAh524Dh9jcfKTYDQAqvqezbCW82xj5X0pSrcpxtvRKHLG0yBY6SD7PSDrJaj+0AiOcKVd1Xg==" + "version": "2.20.3" }, "content-disposition": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.0.tgz", - "integrity": "sha1-QoT+auBjCHRjnkToCkGMKTQTXp4=" + "version": "0.5.0" }, "cookie": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.1.2.tgz", - "integrity": "sha1-cv7D0k5Io0Mgc9kMEmQgBQYQBLE=" + "version": "0.1.2" }, "cookie-signature": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.5.tgz", - "integrity": "sha1-oSLj8VA+yg9TVXlbBxG7I2jUUPk=" + "version": "1.0.5" }, "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=" + "version": "1.0.2" }, "crc": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/crc/-/crc-3.2.1.tgz", - "integrity": "sha1-XZyPt3okXNXsopHl0tAFM0urAII=" + "version": "3.2.1" }, "cryptiles": { "version": "2.0.5", - "resolved": "https://registry.npmjs.org/cryptiles/-/cryptiles-2.0.5.tgz", - "integrity": "sha1-O9/s3GCBR8HGcgL6KR59ylnqo7g=", "requires": { "boom": "2.x.x" } }, "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" }, "dependencies": { "assert-plus": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", - "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=" + "version": "1.0.0" } } }, "debug": { "version": "2.1.3", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.1.3.tgz", - "integrity": "sha1-zoqxte6PvuK/o7Yzyrk9NmtjQY4=", "requires": { "ms": "0.7.0" } }, "delayed-stream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", - "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=" + "version": "1.0.0" + }, + "denque": { + "version": "2.1.0" }, "depd": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/depd/-/depd-1.0.1.tgz", - "integrity": "sha1-gK7GTJ1tl+ZcwqnKqTwKpqv3Oqo=" + "version": "1.0.1" }, "destroy": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.0.3.tgz", - "integrity": "sha1-tDO0ck5x/YVR2YhRdIUcX8N34sk=" + "version": "1.0.3" }, "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" } }, "ee-first": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.0.tgz", - "integrity": "sha1-ag18YiHkkP7v2S7D9EHJzozQl/Q=" - }, - "es6-promise": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-3.2.1.tgz", - "integrity": "sha1-7FYjOGgDKQkgcXDDlEjiREndH8Q=" + "version": "1.1.0" }, "escape-html": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.1.tgz", - "integrity": "sha1-GBoobq05ejmpKFfPsdQwUuNWv/A=" + "version": "1.0.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=" + "version": "1.0.5" }, "etag": { "version": "1.5.1", - "resolved": "https://registry.npmjs.org/etag/-/etag-1.5.1.tgz", - "integrity": "sha1-VMUN4E7kJpVWKSWsVmWIKRvn6eo=", "requires": { "crc": "3.2.1" } }, "eventemitter3": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-3.1.0.tgz", - "integrity": "sha512-ivIvhpq/Y0uSjcHDcOIccjmYjGLcP09MFGE7ysAwkAvkXfpZlC985pH2/ui64DKazbTW/4kN3yqozUxlXzI6cA==" + "version": "4.0.7" }, "expand-brackets": { "version": "0.1.5", - "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-0.1.5.tgz", - "integrity": "sha1-3wcoTjQqgHzXM6xa9yQR5YHRF3s=", "requires": { "is-posix-bracket": "^0.1.0" } }, "expand-range": { "version": "1.8.2", - "resolved": "https://registry.npmjs.org/expand-range/-/expand-range-1.8.2.tgz", - "integrity": "sha1-opnv/TNf4nIeuujiV+x5ZE/IUzc=", "requires": { "fill-range": "^2.1.0" } }, "express": { "version": "4.10.6", - "resolved": "https://registry.npmjs.org/express/-/express-4.10.6.tgz", - "integrity": "sha1-qQFZeczzixGjnA9ybc9sS4Wk51g=", "requires": { "accepts": "~1.1.4", "content-disposition": "0.5.0", @@ -309,39 +3706,34 @@ } }, "extend": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", - "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==" + "version": "3.0.2" }, "extglob": { "version": "0.3.2", - "resolved": "https://registry.npmjs.org/extglob/-/extglob-0.3.2.tgz", - "integrity": "sha1-Lhj/PS9JqydlzskCPwEdqo2DSaE=", "requires": { "is-extglob": "^1.0.0" }, "dependencies": { "is-extglob": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-1.0.0.tgz", - "integrity": "sha1-rEaBd8SUNAWgkvyPKXYMb/xiBsA=" + "version": "1.0.0" } } }, "extsprintf": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", - "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=" + "version": "1.3.0" + }, + "fast-xml-parser": { + "version": "4.0.11", + "optional": true, + "requires": { + "strnum": "^1.0.5" + } }, "filename-regex": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/filename-regex/-/filename-regex-2.0.1.tgz", - "integrity": "sha1-wcS5vuPglyXdsQa3XB4wH+LxiyY=" + "version": "2.0.1" }, "fill-range": { "version": "2.2.4", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-2.2.4.tgz", - "integrity": "sha512-cnrcCbj01+j2gTG921VZPnHbjmdAf8oQV/iGeV2kZxGSyfYjjTyY79ErsK1WJWMpw6DaApEX72binqJE+/d+5Q==", "requires": { "is-number": "^2.1.0", "isobject": "^2.0.0", @@ -352,8 +3744,6 @@ }, "finalhandler": { "version": "0.3.2", - "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-0.3.2.tgz", - "integrity": "sha1-ezibD9Nkem+QvVZOImJL+KSnf7U=", "requires": { "debug": "~2.1.0", "escape-html": "1.0.1", @@ -361,50 +3751,22 @@ } }, "follow-redirects": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.7.0.tgz", - "integrity": "sha512-m/pZQy4Gj287eNy94nivy5wchN3Kp+Q5WgUPNy5lJSZ3sgkVKSYV/ZChMAQVIgx1SqfZ2zBZtPA2YlXIWxxJOQ==", - "requires": { - "debug": "^3.2.6" - }, - "dependencies": { - "debug": { - "version": "3.2.6", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", - "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", - "requires": { - "ms": "^2.1.1" - } - }, - "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==" - } - } + "version": "1.15.2" }, "for-in": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", - "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=" + "version": "1.0.2" }, "for-own": { "version": "0.1.5", - "resolved": "https://registry.npmjs.org/for-own/-/for-own-0.1.5.tgz", - "integrity": "sha1-UmXGgaTylNq78XyVCbZ2OqhFEM4=", "requires": { "for-in": "^1.0.1" } }, "forever-agent": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", - "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=" + "version": "0.6.1" }, "form-data": { "version": "2.1.4", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.1.4.tgz", - "integrity": "sha1-M8GDrPGTJ27KqYFDpp6Uv+4XUNE=", "requires": { "asynckit": "^0.4.0", "combined-stream": "^1.0.5", @@ -412,79 +3774,57 @@ }, "dependencies": { "mime-db": { - "version": "1.38.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.38.0.tgz", - "integrity": "sha512-bqVioMFFzc2awcdJZIzR3HjZFX20QhilVS7hytkKrv7xFAn8bM1gzc/FOX2awLISvWe0PV8ptFKcon+wZ5qYkg==" + "version": "1.52.0" }, "mime-types": { - "version": "2.1.22", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.22.tgz", - "integrity": "sha512-aGl6TZGnhm/li6F7yx82bJiBZwgiEa4Hf6CNr8YO+r5UHr53tSTYZb102zyU50DOWWKeOv0uQLRL0/9EiKWCog==", + "version": "2.1.35", "requires": { - "mime-db": "~1.38.0" + "mime-db": "1.52.0" } } } }, "forwarded": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.1.2.tgz", - "integrity": "sha1-mMI9qxF1ZXuMBXPozszZGw/xjIQ=" + "version": "0.1.2" }, "fresh": { - "version": "0.2.4", - "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.2.4.tgz", - "integrity": "sha1-NYJJkgbJcjcUGQ7ddLRgT+tKYUw=" + "version": "0.2.4" }, "generate-function": { "version": "2.3.1", - "resolved": "https://registry.npmjs.org/generate-function/-/generate-function-2.3.1.tgz", - "integrity": "sha512-eeB5GfMNeevm/GRYq20ShmsaGcmI81kIX2K9XQx5miC8KdHaC6Jm0qQ8ZNeGOi7wYB8OsdxKs+Y2oVuTFuVwKQ==", "requires": { "is-property": "^1.0.2" } }, "generate-object-property": { "version": "1.2.0", - "resolved": "https://registry.npmjs.org/generate-object-property/-/generate-object-property-1.2.0.tgz", - "integrity": "sha1-nA4cQDCM6AT0eDYYuTf6iPmdUNA=", "requires": { "is-property": "^1.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" }, "dependencies": { "assert-plus": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", - "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=" + "version": "1.0.0" } } }, "glob-base": { "version": "0.3.0", - "resolved": "https://registry.npmjs.org/glob-base/-/glob-base-0.3.0.tgz", - "integrity": "sha1-27Fk9iIbHAscz4Kuoyi0l98Oo8Q=", "requires": { "glob-parent": "^2.0.0", "is-glob": "^2.0.0" }, "dependencies": { "is-extglob": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-1.0.0.tgz", - "integrity": "sha1-rEaBd8SUNAWgkvyPKXYMb/xiBsA=" + "version": "1.0.0" }, "is-glob": { "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz", - "integrity": "sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM=", "requires": { "is-extglob": "^1.0.0" } @@ -493,21 +3833,15 @@ }, "glob-parent": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-2.0.0.tgz", - "integrity": "sha1-gTg9ctsFT8zPUzbaqQLxgvbtuyg=", "requires": { "is-glob": "^2.0.0" }, "dependencies": { "is-extglob": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-1.0.0.tgz", - "integrity": "sha1-rEaBd8SUNAWgkvyPKXYMb/xiBsA=" + "version": "1.0.0" }, "is-glob": { "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz", - "integrity": "sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM=", "requires": { "is-extglob": "^1.0.0" } @@ -516,8 +3850,6 @@ }, "har-validator": { "version": "2.0.6", - "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-2.0.6.tgz", - "integrity": "sha1-zcvAgYgmWtEZtqWnyKtw7s+10n0=", "requires": { "chalk": "^1.1.1", "commander": "^2.9.0", @@ -527,16 +3859,12 @@ }, "has-ansi": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", - "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", "requires": { "ansi-regex": "^2.0.0" } }, "hawk": { "version": "3.1.3", - "resolved": "https://registry.npmjs.org/hawk/-/hawk-3.1.3.tgz", - "integrity": "sha1-B4REvXwWQLD+VA0sm3PVlnjo4cQ=", "requires": { "boom": "2.x.x", "cryptiles": "2.x.x", @@ -545,29 +3873,18 @@ } }, "hoek": { - "version": "2.16.3", - "resolved": "https://registry.npmjs.org/hoek/-/hoek-2.16.3.tgz", - "integrity": "sha1-ILt0A9POo5jpHcRxCo/xuCdKJe0=" - }, - "hooks-fixed": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/hooks-fixed/-/hooks-fixed-1.2.0.tgz", - "integrity": "sha1-DSdy1NfWhf+SRHJKnwtbJVmqyWs=" + "version": "2.16.3" }, "http-proxy": { - "version": "1.17.0", - "resolved": "https://registry.npmjs.org/http-proxy/-/http-proxy-1.17.0.tgz", - "integrity": "sha512-Taqn+3nNvYRfJ3bGvKfBSRwy1v6eePlm3oc/aWVxZp57DQr5Eq3xhKJi7Z4hZpS8PC3H4qI+Yly5EmFacGuA/g==", + "version": "1.18.1", "requires": { - "eventemitter3": "^3.0.0", + "eventemitter3": "^4.0.0", "follow-redirects": "^1.0.0", "requires-port": "^1.0.0" } }, "http-proxy-middleware": { "version": "0.17.3", - "resolved": "https://registry.npmjs.org/http-proxy-middleware/-/http-proxy-middleware-0.17.3.tgz", - "integrity": "sha1-lAOCFHFJuFYIT1U0dS1bWoFozR0=", "requires": { "http-proxy": "^1.16.2", "is-glob": "^3.1.0", @@ -577,203 +3894,144 @@ }, "http-signature": { "version": "1.1.1", - "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.1.1.tgz", - "integrity": "sha1-33LiZwZs0Kxn+3at+OE0qPvPkb8=", "requires": { "assert-plus": "^0.2.0", "jsprim": "^1.2.2", "sshpk": "^1.7.0" } }, - "inherits": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" + "ieee754": { + "version": "1.2.1" + }, + "ip": { + "version": "2.0.0" }, "ipaddr.js": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.0.5.tgz", - "integrity": "sha1-X6eM8wG4JceKvDBC2BJyMEnqI8c=" + "version": "1.0.5" }, "is-buffer": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", - "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==" + "version": "1.1.6" }, "is-dotfile": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/is-dotfile/-/is-dotfile-1.0.3.tgz", - "integrity": "sha1-pqLzL/0t+wT1yiXs0Pa4PPeYoeE=" + "version": "1.0.3" }, "is-equal-shallow": { "version": "0.1.3", - "resolved": "https://registry.npmjs.org/is-equal-shallow/-/is-equal-shallow-0.1.3.tgz", - "integrity": "sha1-IjgJj8Ih3gvPpdnqxMRdY4qhxTQ=", "requires": { "is-primitive": "^2.0.0" } }, "is-extendable": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", - "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=" + "version": "0.1.1" }, "is-extglob": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", - "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=" + "version": "2.1.1" }, "is-glob": { "version": "3.1.0", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", - "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", "requires": { "is-extglob": "^2.1.0" } }, "is-my-ip-valid": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-my-ip-valid/-/is-my-ip-valid-1.0.0.tgz", - "integrity": "sha512-gmh/eWXROncUzRnIa1Ubrt5b8ep/MGSnfAUI3aRp+sqTCs1tv1Isl8d8F6JmkN3dXKc3ehZMrtiPN9eL03NuaQ==" + "version": "1.0.1" }, "is-my-json-valid": { - "version": "2.19.0", - "resolved": "https://registry.npmjs.org/is-my-json-valid/-/is-my-json-valid-2.19.0.tgz", - "integrity": "sha512-mG0f/unGX1HZ5ep4uhRaPOS8EkAY8/j6mDRMJrutq4CqhoJWYp7qAlonIPy3TV7p3ju4TK9fo/PbnoksWmsp5Q==", + "version": "2.20.6", "requires": { "generate-function": "^2.0.0", "generate-object-property": "^1.1.0", "is-my-ip-valid": "^1.0.0", - "jsonpointer": "^4.0.0", + "jsonpointer": "^5.0.0", "xtend": "^4.0.0" } }, "is-number": { "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-2.1.0.tgz", - "integrity": "sha1-Afy7s5NGOlSPL0ZszhbezknbkI8=", "requires": { "kind-of": "^3.0.2" } }, "is-posix-bracket": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/is-posix-bracket/-/is-posix-bracket-0.1.1.tgz", - "integrity": "sha1-MzTceXdDaOkvAW5vvAqI9c1ua8Q=" + "version": "0.1.1" }, "is-primitive": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-primitive/-/is-primitive-2.0.0.tgz", - "integrity": "sha1-IHurkWOEmcB7Kt8kCkGochADRXU=" + "version": "2.0.0" }, "is-property": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-property/-/is-property-1.0.2.tgz", - "integrity": "sha1-V/4cTkhHTt1lsJkR8msc1Ald2oQ=" + "version": "1.0.2" }, "is-typedarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", - "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=" + "version": "1.0.0" }, "isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" + "version": "1.0.0" }, "isobject": { "version": "2.1.0", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz", - "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=", "requires": { "isarray": "1.0.0" } }, "isstream": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", - "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=" + "version": "0.1.2" }, "jsbn": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", - "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=" + "version": "0.1.1" }, "json-schema": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz", - "integrity": "sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM=" + "version": "0.4.0" }, "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=" + "version": "5.0.1" }, "jsonpointer": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/jsonpointer/-/jsonpointer-4.0.1.tgz", - "integrity": "sha1-T9kss04OnbPInIYi7PUfm5eMbLk=" + "version": "5.0.1" }, "jsprim": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz", - "integrity": "sha1-MT5mvB5cwG5Di8G3SZwuXFastqI=", + "version": "1.4.2", "requires": { "assert-plus": "1.0.0", "extsprintf": "1.3.0", - "json-schema": "0.2.3", + "json-schema": "0.4.0", "verror": "1.10.0" }, "dependencies": { "assert-plus": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", - "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=" + "version": "1.0.0" } } }, "kareem": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/kareem/-/kareem-1.2.1.tgz", - "integrity": "sha1-rNuMgRmEWDSrv6WK3hz53qY9x1I=" + "version": "2.4.1" }, "kind-of": { "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", "requires": { "is-buffer": "^1.1.5" } }, "lodash": { - "version": "4.17.11", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.11.tgz", - "integrity": "sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg==" + "version": "4.17.21" }, "math-random": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/math-random/-/math-random-1.0.4.tgz", - "integrity": "sha512-rUxjysqif/BZQH2yhd5Aaq7vXMSx9NdEsQcyA07uEzIvxgI7zIr33gGsh+RU0/XjmQpCW7RsVof1vlkvQVCK5A==" + "version": "1.0.4" }, "media-typer": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", - "integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=" + "version": "0.3.0" + }, + "memory-pager": { + "version": "1.5.0", + "optional": true }, "merge-descriptors": { - "version": "0.0.2", - "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-0.0.2.tgz", - "integrity": "sha1-w2pSp4FDdRPFcnXzndnTF1FKyMc=" + "version": "0.0.2" }, "methods": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.0.tgz", - "integrity": "sha1-XcpO4S31L/OwVhRZhqjwHLyGQ28=" + "version": "1.1.0" }, "micromatch": { "version": "2.3.11", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-2.3.11.tgz", - "integrity": "sha1-hmd8l9FyCzY0MdBNDRUpO9OMFWU=", "requires": { "arr-diff": "^2.0.0", "array-unique": "^0.2.1", @@ -791,14 +4049,10 @@ }, "dependencies": { "is-extglob": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-1.0.0.tgz", - "integrity": "sha1-rEaBd8SUNAWgkvyPKXYMb/xiBsA=" + "version": "1.0.0" }, "is-glob": { "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz", - "integrity": "sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM=", "requires": { "is-extglob": "^1.0.0" } @@ -806,141 +4060,89 @@ } }, "mime": { - "version": "1.2.11", - "resolved": "https://registry.npmjs.org/mime/-/mime-1.2.11.tgz", - "integrity": "sha1-WCA+7Ybjpe8XrtK32evUfwpg3RA=" + "version": "1.2.11" }, "mime-db": { - "version": "1.12.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.12.0.tgz", - "integrity": "sha1-PQxjGA9FjrENMlqqN9fFiuMS6dc=" + "version": "1.12.0" }, "mime-types": { "version": "2.0.14", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.0.14.tgz", - "integrity": "sha1-MQ4VnbI+B3+Lsit0jav6SVcUCqY=", "requires": { "mime-db": "~1.12.0" } }, "mongodb": { - "version": "2.2.24", - "resolved": "https://registry.npmjs.org/mongodb/-/mongodb-2.2.24.tgz", - "integrity": "sha1-gPQNbsW97A3ezw+c4BROeUxGRJo=", + "version": "4.11.0", "requires": { - "es6-promise": "3.2.1", - "mongodb-core": "2.1.8", - "readable-stream": "2.1.5" + "@aws-sdk/credential-providers": "^3.186.0", + "bson": "^4.7.0", + "denque": "^2.1.0", + "mongodb-connection-string-url": "^2.5.4", + "saslprep": "^1.0.3", + "socks": "^2.7.1" } }, - "mongodb-core": { - "version": "2.1.8", - "resolved": "https://registry.npmjs.org/mongodb-core/-/mongodb-core-2.1.8.tgz", - "integrity": "sha1-sz4DcNClnZe2yx7GEFJ76elcosA=", + "mongodb-connection-string-url": { + "version": "2.6.0", "requires": { - "bson": "~1.0.4", - "require_optional": "~1.0.0" + "@types/whatwg-url": "^8.2.1", + "whatwg-url": "^11.0.0" } }, "mongoose": { - "version": "4.8.5", - "resolved": "https://registry.npmjs.org/mongoose/-/mongoose-4.8.5.tgz", - "integrity": "sha1-CePlkNVYRymkFfMmIQy0rbI3nTA=", - "requires": { - "async": "2.1.4", - "bson": "~1.0.4", - "hooks-fixed": "1.2.0", - "kareem": "1.2.1", - "mongodb": "2.2.24", - "mpath": "0.2.1", - "mpromise": "0.5.5", - "mquery": "2.2.3", - "ms": "0.7.2", - "muri": "1.2.1", - "regexp-clone": "0.0.1", - "sliced": "1.0.1" + "version": "6.7.4", + "requires": { + "bson": "^4.7.0", + "kareem": "2.4.1", + "mongodb": "4.11.0", + "mpath": "0.9.0", + "mquery": "4.0.3", + "ms": "2.1.3", + "sift": "16.0.1" }, "dependencies": { "ms": { - "version": "0.7.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-0.7.2.tgz", - "integrity": "sha1-riXPJRKziFodldfwN4aNhDESR2U=" + "version": "2.1.3" } } }, "mpath": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/mpath/-/mpath-0.2.1.tgz", - "integrity": "sha1-Ok6Ck1mAHeljCcJ6ay4QLon56W4=" - }, - "mpromise": { - "version": "0.5.5", - "resolved": "https://registry.npmjs.org/mpromise/-/mpromise-0.5.5.tgz", - "integrity": "sha1-9bJCWddjrMIlewoMjG2Gb9UXMuY=" + "version": "0.9.0" }, "mquery": { - "version": "2.2.3", - "resolved": "https://registry.npmjs.org/mquery/-/mquery-2.2.3.tgz", - "integrity": "sha1-pHA7ZPtnNPzlHXhKTfCVyr8aj1c=", + "version": "4.0.3", "requires": { - "bluebird": "2.10.2", - "debug": "2.2.0", - "regexp-clone": "0.0.1", - "sliced": "0.0.5" + "debug": "4.x" }, "dependencies": { "debug": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.2.0.tgz", - "integrity": "sha1-+HBX6ZWxofauaklgZkE3vFbwOdo=", + "version": "4.3.4", "requires": { - "ms": "0.7.1" + "ms": "2.1.2" } }, "ms": { - "version": "0.7.1", - "resolved": "https://registry.npmjs.org/ms/-/ms-0.7.1.tgz", - "integrity": "sha1-nNE8A62/8ltl7/3nzoZO6VIBcJg=" - }, - "sliced": { - "version": "0.0.5", - "resolved": "https://registry.npmjs.org/sliced/-/sliced-0.0.5.tgz", - "integrity": "sha1-XtwETKTrb3gW1Qui/GPiXY/kcH8=" + "version": "2.1.2" } } }, "ms": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-0.7.0.tgz", - "integrity": "sha1-hlvpTC5zl62KV9pqYzpuLzB5i4M=" - }, - "muri": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/muri/-/muri-1.2.1.tgz", - "integrity": "sha1-7H6lzmympSPrGrNbrNpfqBbJqjw=" + "version": "0.7.0" }, "negotiator": { - "version": "0.4.9", - "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.4.9.tgz", - "integrity": "sha1-kuRrbbU8fkIe1koryU8IvnYw3z8=" + "version": "0.4.9" }, "normalize-path": { "version": "2.1.1", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", - "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", "requires": { "remove-trailing-separator": "^1.0.1" } }, "oauth-sign": { - "version": "0.8.2", - "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.8.2.tgz", - "integrity": "sha1-Rqarfwrq2N6unsBWV4C31O/rnUM=" + "version": "0.8.2" }, "object.omit": { "version": "2.0.1", - "resolved": "https://registry.npmjs.org/object.omit/-/object.omit-2.0.1.tgz", - "integrity": "sha1-Gpx0SCnznbuFjHbKNXmuKlTr0fo=", "requires": { "for-own": "^0.1.4", "is-extendable": "^0.1.1" @@ -948,16 +4150,12 @@ }, "on-finished": { "version": "2.1.1", - "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.1.1.tgz", - "integrity": "sha1-+CyhyeOk8yhrG5k4YQ5bhja9PLI=", "requires": { "ee-first": "1.1.0" } }, "parse-glob": { "version": "3.0.4", - "resolved": "https://registry.npmjs.org/parse-glob/-/parse-glob-3.0.4.tgz", - "integrity": "sha1-ssN2z7EfNVE7rdFz7wu246OIORw=", "requires": { "glob-base": "^0.3.0", "is-dotfile": "^1.0.0", @@ -966,14 +4164,10 @@ }, "dependencies": { "is-extglob": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-1.0.0.tgz", - "integrity": "sha1-rEaBd8SUNAWgkvyPKXYMb/xiBsA=" + "version": "1.0.0" }, "is-glob": { "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz", - "integrity": "sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM=", "requires": { "is-extglob": "^1.0.0" } @@ -981,61 +4175,38 @@ } }, "parseurl": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.2.tgz", - "integrity": "sha1-/CidTtiZMRlGDBViUyYs3I3mW/M=" + "version": "1.3.3" }, "path-to-regexp": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.3.tgz", - "integrity": "sha1-IbmrgidCed4lsVbqCP0SylG4rss=" + "version": "0.1.3" }, "pinkie": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz", - "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=" + "version": "2.0.4" }, "pinkie-promise": { "version": "2.0.1", - "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", - "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=", "requires": { "pinkie": "^2.0.0" } }, "preserve": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/preserve/-/preserve-0.2.0.tgz", - "integrity": "sha1-gV7R9uvGWSb4ZbMQwHE7yzMVzks=" - }, - "process-nextick-args": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-1.0.7.tgz", - "integrity": "sha1-FQ4gt1ZZCtP5EJPyWk8q2L/zC6M=" + "version": "0.2.0" }, "proxy-addr": { "version": "1.0.10", - "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-1.0.10.tgz", - "integrity": "sha1-DUCoL4Afw1VWfS7LZe/j8HfxIcU=", "requires": { "forwarded": "~0.1.0", "ipaddr.js": "1.0.5" } }, "punycode": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", - "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=" + "version": "1.4.1" }, "qs": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/qs/-/qs-2.3.3.tgz", - "integrity": "sha1-6eha2+ddoLvkyOBHaghikPhjtAQ=" + "version": "2.3.3" }, "randomatic": { "version": "3.1.1", - "resolved": "https://registry.npmjs.org/randomatic/-/randomatic-3.1.1.tgz", - "integrity": "sha512-TuDE5KxZ0J461RVjrJZCJc+J+zCkTb1MbH9AQUq68sMhOMcy9jLcb3BrZKgp9q9Ncltdg4QVqWrH02W2EFFVYw==", "requires": { "is-number": "^4.0.0", "kind-of": "^6.0.0", @@ -1043,68 +4214,33 @@ }, "dependencies": { "is-number": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-4.0.0.tgz", - "integrity": "sha512-rSklcAIlf1OmFdyAqbnWTLVelsQ58uvZ66S/ZyawjWqIviTWCjg2PzVGw8WUA+nNuPTqb4wgA+NszrJ+08LlgQ==" + "version": "4.0.0" }, "kind-of": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz", - "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==" + "version": "6.0.3" } } }, "range-parser": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.0.3.tgz", - "integrity": "sha1-aHKCNTXGkuLCoBA4Jq/YLC4P8XU=" - }, - "readable-stream": { - "version": "2.1.5", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.1.5.tgz", - "integrity": "sha1-ZvqLcg4UOLNkaB8q0aY8YYRIydA=", - "requires": { - "buffer-shims": "^1.0.0", - "core-util-is": "~1.0.0", - "inherits": "~2.0.1", - "isarray": "~1.0.0", - "process-nextick-args": "~1.0.6", - "string_decoder": "~0.10.x", - "util-deprecate": "~1.0.1" - } + "version": "1.0.3" }, "regex-cache": { "version": "0.4.4", - "resolved": "https://registry.npmjs.org/regex-cache/-/regex-cache-0.4.4.tgz", - "integrity": "sha512-nVIZwtCjkC9YgvWkpM55B5rBhBYRZhAaJbgcFYXXsHnbZ9UZI9nnVWYZpBlCqv9ho2eZryPnWrZGsOdPwVWXWQ==", "requires": { "is-equal-shallow": "^0.1.3" } }, - "regexp-clone": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/regexp-clone/-/regexp-clone-0.0.1.tgz", - "integrity": "sha1-p8LgmJH9vzj7sQ03b7cwA+aKxYk=" - }, "remove-trailing-separator": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz", - "integrity": "sha1-wkvOKig62tW8P1jg1IJJuSN52O8=" + "version": "1.1.0" }, "repeat-element": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.3.tgz", - "integrity": "sha512-ahGq0ZnV5m5XtZLMb+vP76kcAM5nkLqk0lpqAuojSKGgQtn4eRi4ZZGm2olo2zKFH+sMsWaqOCW1dqAnOru72g==" + "version": "1.1.4" }, "repeat-string": { - "version": "1.6.1", - "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz", - "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=" + "version": "1.6.1" }, "request": { "version": "2.79.0", - "resolved": "https://registry.npmjs.org/request/-/request-2.79.0.tgz", - "integrity": "sha1-Tf5b9r6LjNw3/Pk+BLZVd3InEN4=", "requires": { "aws-sign2": "~0.6.0", "aws4": "^1.2.1", @@ -1129,58 +4265,37 @@ }, "dependencies": { "mime-db": { - "version": "1.38.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.38.0.tgz", - "integrity": "sha512-bqVioMFFzc2awcdJZIzR3HjZFX20QhilVS7hytkKrv7xFAn8bM1gzc/FOX2awLISvWe0PV8ptFKcon+wZ5qYkg==" + "version": "1.52.0" }, "mime-types": { - "version": "2.1.22", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.22.tgz", - "integrity": "sha512-aGl6TZGnhm/li6F7yx82bJiBZwgiEa4Hf6CNr8YO+r5UHr53tSTYZb102zyU50DOWWKeOv0uQLRL0/9EiKWCog==", + "version": "2.1.35", "requires": { - "mime-db": "~1.38.0" + "mime-db": "1.52.0" } }, "qs": { - "version": "6.3.2", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.3.2.tgz", - "integrity": "sha1-51vV9uJoEioqDgvaYwslUMFmUCw=" + "version": "6.3.3" + }, + "uuid": { + "version": "3.4.0" } } }, - "require_optional": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/require_optional/-/require_optional-1.0.1.tgz", - "integrity": "sha512-qhM/y57enGWHAe3v/NcwML6a3/vfESLe/sGM2dII+gEO0BpKRUkWZow/tyloNqJyN6kXSl3RyyM8Ll5D/sJP8g==", - "requires": { - "resolve-from": "^2.0.0", - "semver": "^5.1.0" - } - }, "requires-port": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz", - "integrity": "sha1-kl0mAdOaxIXgkc8NpcbmlNw9yv8=" - }, - "resolve-from": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-2.0.0.tgz", - "integrity": "sha1-lICrIOlP+h2egKgEx+oUdhGWa1c=" + "version": "1.0.0" }, "safer-buffer": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", - "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" + "version": "2.1.2" }, - "semver": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.0.tgz", - "integrity": "sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==" + "saslprep": { + "version": "1.0.3", + "optional": true, + "requires": { + "sparse-bitfield": "^3.0.3" + } }, "send": { "version": "0.10.1", - "resolved": "https://registry.npmjs.org/send/-/send-0.10.1.tgz", - "integrity": "sha1-d0XFDscvEVEVmA6PsXmuwBkA4Io=", "requires": { "debug": "~2.1.0", "depd": "~1.0.0", @@ -1195,16 +4310,12 @@ }, "dependencies": { "ms": { - "version": "0.6.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-0.6.2.tgz", - "integrity": "sha1-2JwhJMb9wTU9Zai3e/GqxLGTcIw=" + "version": "0.6.2" } } }, "serve-static": { "version": "1.7.2", - "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.7.2.tgz", - "integrity": "sha1-MWTOBtTmw0Wb3MnWAY+0+zXoSzk=", "requires": { "escape-html": "1.0.1", "parseurl": "~1.3.0", @@ -1212,23 +4323,34 @@ "utils-merge": "1.0.0" } }, - "sliced": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/sliced/-/sliced-1.0.1.tgz", - "integrity": "sha1-CzpmK10Ewxd7GSa+qCsD+Dei70E=" + "sift": { + "version": "16.0.1" + }, + "smart-buffer": { + "version": "4.2.0" }, "sntp": { "version": "1.0.9", - "resolved": "https://registry.npmjs.org/sntp/-/sntp-1.0.9.tgz", - "integrity": "sha1-ZUEYTMkK7qbG57NeJlkIJEPGYZg=", "requires": { "hoek": "2.x.x" } }, + "socks": { + "version": "2.7.1", + "requires": { + "ip": "^2.0.0", + "smart-buffer": "^4.2.0" + } + }, + "sparse-bitfield": { + "version": "3.0.3", + "optional": true, + "requires": { + "memory-pager": "^1.0.2" + } + }, "sshpk": { - "version": "1.16.1", - "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.16.1.tgz", - "integrity": "sha512-HXXqVUq7+pcKeLqqZj6mHFUMvXtOJt1uoUx09pFW6011inTMxqI8BA8PM95myrIyyKwdnzjdFjLiE6KBPVtJIg==", + "version": "1.17.0", "requires": { "asn1": "~0.2.3", "assert-plus": "^1.0.0", @@ -1242,86 +4364,72 @@ }, "dependencies": { "assert-plus": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", - "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=" + "version": "1.0.0" } } }, - "string_decoder": { - "version": "0.10.31", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", - "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=" - }, "stringstream": { - "version": "0.0.6", - "resolved": "https://registry.npmjs.org/stringstream/-/stringstream-0.0.6.tgz", - "integrity": "sha512-87GEBAkegbBcweToUrdzf3eLhWNg06FJTebl4BVJz/JgWy8CvEr9dRtX5qWphiynMSQlxxi+QqN0z5T32SLlhA==" + "version": "0.0.6" }, "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" } }, + "strnum": { + "version": "1.0.5", + "optional": true + }, "supports-color": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", - "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=" + "version": "2.0.0" }, "tough-cookie": { "version": "2.3.4", - "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.3.4.tgz", - "integrity": "sha512-TZ6TTfI5NtZnuyy/Kecv+CnoROnyXn2DN97LontgQpCwsX2XyLYCC0ENhYkehSOwAp8rTQKc/NUIF7BkQ5rKLA==", "requires": { "punycode": "^1.4.1" } }, + "tr46": { + "version": "3.0.0", + "requires": { + "punycode": "^2.1.1" + }, + "dependencies": { + "punycode": { + "version": "2.1.1" + } + } + }, + "tslib": { + "version": "2.4.1", + "optional": true + }, "tunnel-agent": { - "version": "0.4.3", - "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.4.3.tgz", - "integrity": "sha1-Y3PbdpCf5XDgjXNYM2Xtgop07us=" + "version": "0.4.3" }, "tweetnacl": { - "version": "0.14.5", - "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", - "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=" + "version": "0.14.5" }, "type-is": { "version": "1.5.7", - "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.5.7.tgz", - "integrity": "sha1-uTaKWTzG730GReeLL0xky+zQXpA=", "requires": { "media-typer": "0.3.0", "mime-types": "~2.0.9" } }, - "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.0", - "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.0.tgz", - "integrity": "sha1-ApT7kiu5N1FTVBxPcJYjHyh8ivg=" + "version": "1.0.0" }, "uuid": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.3.2.tgz", - "integrity": "sha512-yXJmeNaw3DnnKAOKJE51sL/ZaYfWJRl1pK9dr19YFCu0ObS231AB1/LbqTKRAQ5kw8A90rA6fr4riOUpTZvQZA==" + "version": "8.3.2", + "optional": true }, "vary": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/vary/-/vary-1.0.1.tgz", - "integrity": "sha1-meSYFWaihhGN+yuBc1ffeZM3bRA=" + "version": "1.0.1" }, "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", @@ -1329,21 +4437,25 @@ }, "dependencies": { "assert-plus": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", - "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=" + "version": "1.0.0" } } }, + "webidl-conversions": { + "version": "7.0.0" + }, + "whatwg-url": { + "version": "11.0.0", + "requires": { + "tr46": "^3.0.0", + "webidl-conversions": "^7.0.0" + } + }, "xmlbuilder": { - "version": "8.2.2", - "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-8.2.2.tgz", - "integrity": "sha1-aSSGc0ELS6QuGmE2VR0pIjNap3M=" + "version": "8.2.2" }, "xtend": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz", - "integrity": "sha1-pcbVMr5lbiPbgg77lDofBJmNY68=" + "version": "4.0.2" } } } diff --git a/plugins/geoserver/package.json b/plugins/geoserver/package.json index 35bf444d9..414225ffd 100644 --- a/plugins/geoserver/package.json +++ b/plugins/geoserver/package.json @@ -10,10 +10,12 @@ "author": { "name": "NGA" }, - "contributors": { - "name": "Billy Newman", - "email": "newmanw10@gmail.com" - }, + "contributors": [ + { + "name": "Billy Newman", + "email": "newmanw10@gmail.com" + } + ], "homepage": "https://www1.nga.mil", "engines": { "node": ">= 0.8.0", @@ -22,7 +24,7 @@ "dependencies": { "express": "4.10.6", "http-proxy-middleware": "0.17.3", - "mongoose": "4.8.5", + "mongoose": "6.7.4", "request": "2.79.0", "xmlbuilder": "8.2.2" }, diff --git a/plugins/image/service/package-lock.json b/plugins/image/service/package-lock.json index bc37c1da0..9c6b2fcdd 100644 --- a/plugins/image/service/package-lock.json +++ b/plugins/image/service/package-lock.json @@ -1,1098 +1,2429 @@ { "name": "@ngageoint/mage.image.service", - "version": "1.0.6", + "version": "1.1.0-beta.2", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@ngageoint/mage.image.service", - "version": "1.0.6", + "version": "1.1.0-beta.2", + "cpu": [ + "x64", + "arm64" + ], "license": "Apache-2.0", + "os": [ + "darwin", + "linux" + ], "dependencies": { "sharp": "^0.33.2" }, "devDependencies": { - "@types/bson": "^1.0.11", - "@types/express": "^4.17.13", + "@types/bson": "^4.0.2", + "@types/express": "~4.17.17", "@types/jasmine": "^3.10.3", "@types/lodash": "^4.14.182", - "@types/mongodb": "^3.6.20", - "@types/mongoose": "^4.7.56", "@types/sharp": "^0.30.4", "jasmine": "^3.10.0", "jimp": "^0.22.10", "lodash": "^4.17.21", - "mongoose": "^4.13.21", "npm-run-all": "^4.1.5", "rimraf": "^5.0.5", - "typescript": "~4.6.0" + "typescript": "^4.9.5" + }, + "optionalDependencies": { + "fsevents": "^2.3.3" }, "peerDependencies": { - "@ngageoint/mage.service": "^6.2.0 || ~6.2.12-beta", - "express": "^4.17.0", - "mongoose": "^4.0.0" + "@ngageoint/mage.service": "6.3.0-beta.8", + "express": "~4.21.2", + "mongoose": "^6.13.0" } }, - "node_modules/@emnapi/runtime": { - "version": "0.45.0", - "resolved": "https://registry.npmjs.org/@emnapi/runtime/-/runtime-0.45.0.tgz", - "integrity": "sha512-Txumi3td7J4A/xTTwlssKieHKTGl3j4A1tglBx72auZ49YK7ePY6XZricgIg9mnZT4xPfA+UPCUdnhRuEFDL+w==", + "node_modules/@aws-crypto/sha256-browser": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/sha256-browser/-/sha256-browser-5.2.0.tgz", + "integrity": "sha512-AXfN/lGotSQwu6HNcEsIASo7kWXZ5HYWvfOmSNKDsEqC4OashTp8alTmaz+F7TC2L083SFv5RdB+qU3Vs1kZqw==", "optional": true, + "peer": true, "dependencies": { - "tslib": "^2.4.0" + "@aws-crypto/sha256-js": "^5.2.0", + "@aws-crypto/supports-web-crypto": "^5.2.0", + "@aws-crypto/util": "^5.2.0", + "@aws-sdk/types": "^3.222.0", + "@aws-sdk/util-locate-window": "^3.0.0", + "@smithy/util-utf8": "^2.0.0", + "tslib": "^2.6.2" } }, - "node_modules/@img/sharp-darwin-arm64": { - "version": "0.33.2", - "resolved": "https://registry.npmjs.org/@img/sharp-darwin-arm64/-/sharp-darwin-arm64-0.33.2.tgz", - "integrity": "sha512-itHBs1rPmsmGF9p4qRe++CzCgd+kFYktnsoR1sbIAfsRMrJZau0Tt1AH9KVnufc2/tU02Gf6Ibujx+15qRE03w==", - "cpu": [ - "arm64" - ], + "node_modules/@aws-crypto/sha256-browser/node_modules/@smithy/is-array-buffer": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@smithy/is-array-buffer/-/is-array-buffer-2.2.0.tgz", + "integrity": "sha512-GGP3O9QFD24uGeAXYUjwSTXARoqpZykHadOmA8G5vfJPK0/DC67qa//0qvqrJzL1xc8WQWX7/yc7fwudjPHPhA==", "optional": true, - "os": [ - "darwin" - ], - "engines": { - "glibc": ">=2.26", - "node": "^18.17.0 || ^20.3.0 || >=21.0.0", - "npm": ">=9.6.5", - "pnpm": ">=7.1.0", - "yarn": ">=3.2.0" - }, - "funding": { - "url": "https://opencollective.com/libvips" + "peer": true, + "dependencies": { + "tslib": "^2.6.2" }, - "optionalDependencies": { - "@img/sharp-libvips-darwin-arm64": "1.0.1" + "engines": { + "node": ">=14.0.0" } }, - "node_modules/@img/sharp-darwin-x64": { - "version": "0.33.2", - "resolved": "https://registry.npmjs.org/@img/sharp-darwin-x64/-/sharp-darwin-x64-0.33.2.tgz", - "integrity": "sha512-/rK/69Rrp9x5kaWBjVN07KixZanRr+W1OiyKdXcbjQD6KbW+obaTeBBtLUAtbBsnlTTmWthw99xqoOS7SsySDg==", - "cpu": [ - "x64" - ], + "node_modules/@aws-crypto/sha256-browser/node_modules/@smithy/util-buffer-from": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@smithy/util-buffer-from/-/util-buffer-from-2.2.0.tgz", + "integrity": "sha512-IJdWBbTcMQ6DA0gdNhh/BwrLkDR+ADW5Kr1aZmd4k3DIF6ezMV4R2NIAmT08wQJ3yUK82thHWmC/TnK/wpMMIA==", "optional": true, - "os": [ - "darwin" - ], - "engines": { - "glibc": ">=2.26", - "node": "^18.17.0 || ^20.3.0 || >=21.0.0", - "npm": ">=9.6.5", - "pnpm": ">=7.1.0", - "yarn": ">=3.2.0" - }, - "funding": { - "url": "https://opencollective.com/libvips" + "peer": true, + "dependencies": { + "@smithy/is-array-buffer": "^2.2.0", + "tslib": "^2.6.2" }, - "optionalDependencies": { - "@img/sharp-libvips-darwin-x64": "1.0.1" + "engines": { + "node": ">=14.0.0" } }, - "node_modules/@img/sharp-libvips-darwin-arm64": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@img/sharp-libvips-darwin-arm64/-/sharp-libvips-darwin-arm64-1.0.1.tgz", - "integrity": "sha512-kQyrSNd6lmBV7O0BUiyu/OEw9yeNGFbQhbxswS1i6rMDwBBSX+e+rPzu3S+MwAiGU3HdLze3PanQ4Xkfemgzcw==", - "cpu": [ - "arm64" - ], + "node_modules/@aws-crypto/sha256-browser/node_modules/@smithy/util-utf8": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/@smithy/util-utf8/-/util-utf8-2.3.0.tgz", + "integrity": "sha512-R8Rdn8Hy72KKcebgLiv8jQcQkXoLMOGGv5uI1/k0l+snqkOzQ1R0ChUBCxWMlBsFMekWjq0wRudIweFs7sKT5A==", "optional": true, - "os": [ - "darwin" - ], - "engines": { - "macos": ">=11", - "npm": ">=9.6.5", - "pnpm": ">=7.1.0", - "yarn": ">=3.2.0" + "peer": true, + "dependencies": { + "@smithy/util-buffer-from": "^2.2.0", + "tslib": "^2.6.2" }, - "funding": { - "url": "https://opencollective.com/libvips" + "engines": { + "node": ">=14.0.0" } }, - "node_modules/@img/sharp-libvips-darwin-x64": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@img/sharp-libvips-darwin-x64/-/sharp-libvips-darwin-x64-1.0.1.tgz", - "integrity": "sha512-eVU/JYLPVjhhrd8Tk6gosl5pVlvsqiFlt50wotCvdkFGf+mDNBJxMh+bvav+Wt3EBnNZWq8Sp2I7XfSjm8siog==", - "cpu": [ - "x64" - ], + "node_modules/@aws-crypto/sha256-js": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/sha256-js/-/sha256-js-5.2.0.tgz", + "integrity": "sha512-FFQQyu7edu4ufvIZ+OadFpHHOt+eSTBaYaki44c+akjg7qZg9oOQeLlk77F6tSYqjDAFClrHJk9tMf0HdVyOvA==", "optional": true, - "os": [ - "darwin" - ], - "engines": { - "macos": ">=10.13", - "npm": ">=9.6.5", - "pnpm": ">=7.1.0", - "yarn": ">=3.2.0" + "peer": true, + "dependencies": { + "@aws-crypto/util": "^5.2.0", + "@aws-sdk/types": "^3.222.0", + "tslib": "^2.6.2" }, - "funding": { - "url": "https://opencollective.com/libvips" + "engines": { + "node": ">=16.0.0" } }, - "node_modules/@img/sharp-libvips-linux-arm": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-arm/-/sharp-libvips-linux-arm-1.0.1.tgz", - "integrity": "sha512-FtdMvR4R99FTsD53IA3LxYGghQ82t3yt0ZQ93WMZ2xV3dqrb0E8zq4VHaTOuLEAuA83oDawHV3fd+BsAPadHIQ==", - "cpu": [ - "arm" - ], + "node_modules/@aws-crypto/supports-web-crypto": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/supports-web-crypto/-/supports-web-crypto-5.2.0.tgz", + "integrity": "sha512-iAvUotm021kM33eCdNfwIN//F77/IADDSs58i+MDaOqFrVjZo9bAal0NK7HurRuWLLpF1iLX7gbWrjHjeo+YFg==", "optional": true, - "os": [ - "linux" - ], - "engines": { - "glibc": ">=2.28", - "npm": ">=9.6.5", - "pnpm": ">=7.1.0", - "yarn": ">=3.2.0" - }, - "funding": { - "url": "https://opencollective.com/libvips" + "peer": true, + "dependencies": { + "tslib": "^2.6.2" } }, - "node_modules/@img/sharp-libvips-linux-arm64": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-arm64/-/sharp-libvips-linux-arm64-1.0.1.tgz", - "integrity": "sha512-bnGG+MJjdX70mAQcSLxgeJco11G+MxTz+ebxlz8Y3dxyeb3Nkl7LgLI0mXupoO+u1wRNx/iRj5yHtzA4sde1yA==", - "cpu": [ - "arm64" - ], + "node_modules/@aws-crypto/util": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/util/-/util-5.2.0.tgz", + "integrity": "sha512-4RkU9EsI6ZpBve5fseQlGNUWKMa1RLPQ1dnjnQoe07ldfIzcsGb5hC5W0Dm7u423KWzawlrpbjXBrXCEv9zazQ==", "optional": true, - "os": [ - "linux" - ], - "engines": { - "glibc": ">=2.26", - "npm": ">=9.6.5", - "pnpm": ">=7.1.0", - "yarn": ">=3.2.0" - }, - "funding": { - "url": "https://opencollective.com/libvips" + "peer": true, + "dependencies": { + "@aws-sdk/types": "^3.222.0", + "@smithy/util-utf8": "^2.0.0", + "tslib": "^2.6.2" } }, - "node_modules/@img/sharp-libvips-linux-s390x": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-s390x/-/sharp-libvips-linux-s390x-1.0.1.tgz", - "integrity": "sha512-3+rzfAR1YpMOeA2zZNp+aYEzGNWK4zF3+sdMxuCS3ey9HhDbJ66w6hDSHDMoap32DueFwhhs3vwooAB2MaK4XQ==", - "cpu": [ - "s390x" - ], + "node_modules/@aws-crypto/util/node_modules/@smithy/is-array-buffer": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@smithy/is-array-buffer/-/is-array-buffer-2.2.0.tgz", + "integrity": "sha512-GGP3O9QFD24uGeAXYUjwSTXARoqpZykHadOmA8G5vfJPK0/DC67qa//0qvqrJzL1xc8WQWX7/yc7fwudjPHPhA==", "optional": true, - "os": [ - "linux" - ], - "engines": { - "glibc": ">=2.28", - "npm": ">=9.6.5", - "pnpm": ">=7.1.0", - "yarn": ">=3.2.0" + "peer": true, + "dependencies": { + "tslib": "^2.6.2" }, - "funding": { - "url": "https://opencollective.com/libvips" + "engines": { + "node": ">=14.0.0" } }, - "node_modules/@img/sharp-libvips-linux-x64": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-x64/-/sharp-libvips-linux-x64-1.0.1.tgz", - "integrity": "sha512-3NR1mxFsaSgMMzz1bAnnKbSAI+lHXVTqAHgc1bgzjHuXjo4hlscpUxc0vFSAPKI3yuzdzcZOkq7nDPrP2F8Jgw==", - "cpu": [ - "x64" - ], + "node_modules/@aws-crypto/util/node_modules/@smithy/util-buffer-from": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@smithy/util-buffer-from/-/util-buffer-from-2.2.0.tgz", + "integrity": "sha512-IJdWBbTcMQ6DA0gdNhh/BwrLkDR+ADW5Kr1aZmd4k3DIF6ezMV4R2NIAmT08wQJ3yUK82thHWmC/TnK/wpMMIA==", "optional": true, - "os": [ - "linux" - ], - "engines": { - "glibc": ">=2.26", - "npm": ">=9.6.5", - "pnpm": ">=7.1.0", - "yarn": ">=3.2.0" + "peer": true, + "dependencies": { + "@smithy/is-array-buffer": "^2.2.0", + "tslib": "^2.6.2" }, - "funding": { - "url": "https://opencollective.com/libvips" + "engines": { + "node": ">=14.0.0" } }, - "node_modules/@img/sharp-libvips-linuxmusl-arm64": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linuxmusl-arm64/-/sharp-libvips-linuxmusl-arm64-1.0.1.tgz", - "integrity": "sha512-5aBRcjHDG/T6jwC3Edl3lP8nl9U2Yo8+oTl5drd1dh9Z1EBfzUKAJFUDTDisDjUwc7N4AjnPGfCA3jl3hY8uDg==", - "cpu": [ - "arm64" - ], + "node_modules/@aws-crypto/util/node_modules/@smithy/util-utf8": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/@smithy/util-utf8/-/util-utf8-2.3.0.tgz", + "integrity": "sha512-R8Rdn8Hy72KKcebgLiv8jQcQkXoLMOGGv5uI1/k0l+snqkOzQ1R0ChUBCxWMlBsFMekWjq0wRudIweFs7sKT5A==", "optional": true, - "os": [ - "linux" - ], - "engines": { - "musl": ">=1.2.2", - "npm": ">=9.6.5", - "pnpm": ">=7.1.0", - "yarn": ">=3.2.0" + "peer": true, + "dependencies": { + "@smithy/util-buffer-from": "^2.2.0", + "tslib": "^2.6.2" }, - "funding": { - "url": "https://opencollective.com/libvips" + "engines": { + "node": ">=14.0.0" } }, - "node_modules/@img/sharp-libvips-linuxmusl-x64": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linuxmusl-x64/-/sharp-libvips-linuxmusl-x64-1.0.1.tgz", - "integrity": "sha512-dcT7inI9DBFK6ovfeWRe3hG30h51cBAP5JXlZfx6pzc/Mnf9HFCQDLtYf4MCBjxaaTfjCCjkBxcy3XzOAo5txw==", - "cpu": [ - "x64" - ], + "node_modules/@aws-sdk/client-cognito-identity": { + "version": "3.758.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-cognito-identity/-/client-cognito-identity-3.758.0.tgz", + "integrity": "sha512-8bOXVYtf/0OUN0jXTIHLv3V0TAS6kvvCRAy7nmiL/fDde0O+ChW1WZU7CVPAOtFEpFCdKskDcxFspM7m1k6qyg==", "optional": true, - "os": [ - "linux" - ], - "engines": { - "musl": ">=1.2.2", - "npm": ">=9.6.5", - "pnpm": ">=7.1.0", - "yarn": ">=3.2.0" + "peer": true, + "dependencies": { + "@aws-crypto/sha256-browser": "5.2.0", + "@aws-crypto/sha256-js": "5.2.0", + "@aws-sdk/core": "3.758.0", + "@aws-sdk/credential-provider-node": "3.758.0", + "@aws-sdk/middleware-host-header": "3.734.0", + "@aws-sdk/middleware-logger": "3.734.0", + "@aws-sdk/middleware-recursion-detection": "3.734.0", + "@aws-sdk/middleware-user-agent": "3.758.0", + "@aws-sdk/region-config-resolver": "3.734.0", + "@aws-sdk/types": "3.734.0", + "@aws-sdk/util-endpoints": "3.743.0", + "@aws-sdk/util-user-agent-browser": "3.734.0", + "@aws-sdk/util-user-agent-node": "3.758.0", + "@smithy/config-resolver": "^4.0.1", + "@smithy/core": "^3.1.5", + "@smithy/fetch-http-handler": "^5.0.1", + "@smithy/hash-node": "^4.0.1", + "@smithy/invalid-dependency": "^4.0.1", + "@smithy/middleware-content-length": "^4.0.1", + "@smithy/middleware-endpoint": "^4.0.6", + "@smithy/middleware-retry": "^4.0.7", + "@smithy/middleware-serde": "^4.0.2", + "@smithy/middleware-stack": "^4.0.1", + "@smithy/node-config-provider": "^4.0.1", + "@smithy/node-http-handler": "^4.0.3", + "@smithy/protocol-http": "^5.0.1", + "@smithy/smithy-client": "^4.1.6", + "@smithy/types": "^4.1.0", + "@smithy/url-parser": "^4.0.1", + "@smithy/util-base64": "^4.0.0", + "@smithy/util-body-length-browser": "^4.0.0", + "@smithy/util-body-length-node": "^4.0.0", + "@smithy/util-defaults-mode-browser": "^4.0.7", + "@smithy/util-defaults-mode-node": "^4.0.7", + "@smithy/util-endpoints": "^3.0.1", + "@smithy/util-middleware": "^4.0.1", + "@smithy/util-retry": "^4.0.1", + "@smithy/util-utf8": "^4.0.0", + "tslib": "^2.6.2" }, - "funding": { - "url": "https://opencollective.com/libvips" + "engines": { + "node": ">=18.0.0" } }, - "node_modules/@img/sharp-linux-arm": { - "version": "0.33.2", - "resolved": "https://registry.npmjs.org/@img/sharp-linux-arm/-/sharp-linux-arm-0.33.2.tgz", - "integrity": "sha512-Fndk/4Zq3vAc4G/qyfXASbS3HBZbKrlnKZLEJzPLrXoJuipFNNwTes71+Ki1hwYW5lch26niRYoZFAtZVf3EGA==", - "cpu": [ - "arm" - ], + "node_modules/@aws-sdk/client-sso": { + "version": "3.758.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.758.0.tgz", + "integrity": "sha512-BoGO6IIWrLyLxQG6txJw6RT2urmbtlwfggapNCrNPyYjlXpzTSJhBYjndg7TpDATFd0SXL0zm8y/tXsUXNkdYQ==", "optional": true, - "os": [ - "linux" - ], - "engines": { - "glibc": ">=2.28", - "node": "^18.17.0 || ^20.3.0 || >=21.0.0", - "npm": ">=9.6.5", - "pnpm": ">=7.1.0", - "yarn": ">=3.2.0" - }, - "funding": { - "url": "https://opencollective.com/libvips" + "peer": true, + "dependencies": { + "@aws-crypto/sha256-browser": "5.2.0", + "@aws-crypto/sha256-js": "5.2.0", + "@aws-sdk/core": "3.758.0", + "@aws-sdk/middleware-host-header": "3.734.0", + "@aws-sdk/middleware-logger": "3.734.0", + "@aws-sdk/middleware-recursion-detection": "3.734.0", + "@aws-sdk/middleware-user-agent": "3.758.0", + "@aws-sdk/region-config-resolver": "3.734.0", + "@aws-sdk/types": "3.734.0", + "@aws-sdk/util-endpoints": "3.743.0", + "@aws-sdk/util-user-agent-browser": "3.734.0", + "@aws-sdk/util-user-agent-node": "3.758.0", + "@smithy/config-resolver": "^4.0.1", + "@smithy/core": "^3.1.5", + "@smithy/fetch-http-handler": "^5.0.1", + "@smithy/hash-node": "^4.0.1", + "@smithy/invalid-dependency": "^4.0.1", + "@smithy/middleware-content-length": "^4.0.1", + "@smithy/middleware-endpoint": "^4.0.6", + "@smithy/middleware-retry": "^4.0.7", + "@smithy/middleware-serde": "^4.0.2", + "@smithy/middleware-stack": "^4.0.1", + "@smithy/node-config-provider": "^4.0.1", + "@smithy/node-http-handler": "^4.0.3", + "@smithy/protocol-http": "^5.0.1", + "@smithy/smithy-client": "^4.1.6", + "@smithy/types": "^4.1.0", + "@smithy/url-parser": "^4.0.1", + "@smithy/util-base64": "^4.0.0", + "@smithy/util-body-length-browser": "^4.0.0", + "@smithy/util-body-length-node": "^4.0.0", + "@smithy/util-defaults-mode-browser": "^4.0.7", + "@smithy/util-defaults-mode-node": "^4.0.7", + "@smithy/util-endpoints": "^3.0.1", + "@smithy/util-middleware": "^4.0.1", + "@smithy/util-retry": "^4.0.1", + "@smithy/util-utf8": "^4.0.0", + "tslib": "^2.6.2" }, - "optionalDependencies": { - "@img/sharp-libvips-linux-arm": "1.0.1" + "engines": { + "node": ">=18.0.0" } }, - "node_modules/@img/sharp-linux-arm64": { - "version": "0.33.2", - "resolved": "https://registry.npmjs.org/@img/sharp-linux-arm64/-/sharp-linux-arm64-0.33.2.tgz", - "integrity": "sha512-pz0NNo882vVfqJ0yNInuG9YH71smP4gRSdeL09ukC2YLE6ZyZePAlWKEHgAzJGTiOh8Qkaov6mMIMlEhmLdKew==", - "cpu": [ - "arm64" - ], + "node_modules/@aws-sdk/core": { + "version": "3.758.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/core/-/core-3.758.0.tgz", + "integrity": "sha512-0RswbdR9jt/XKemaLNuxi2gGr4xGlHyGxkTdhSQzCyUe9A9OPCoLl3rIESRguQEech+oJnbHk/wuiwHqTuP9sg==", "optional": true, - "os": [ - "linux" - ], - "engines": { - "glibc": ">=2.26", - "node": "^18.17.0 || ^20.3.0 || >=21.0.0", - "npm": ">=9.6.5", - "pnpm": ">=7.1.0", - "yarn": ">=3.2.0" - }, - "funding": { - "url": "https://opencollective.com/libvips" + "peer": true, + "dependencies": { + "@aws-sdk/types": "3.734.0", + "@smithy/core": "^3.1.5", + "@smithy/node-config-provider": "^4.0.1", + "@smithy/property-provider": "^4.0.1", + "@smithy/protocol-http": "^5.0.1", + "@smithy/signature-v4": "^5.0.1", + "@smithy/smithy-client": "^4.1.6", + "@smithy/types": "^4.1.0", + "@smithy/util-middleware": "^4.0.1", + "fast-xml-parser": "4.4.1", + "tslib": "^2.6.2" }, - "optionalDependencies": { - "@img/sharp-libvips-linux-arm64": "1.0.1" + "engines": { + "node": ">=18.0.0" } }, - "node_modules/@img/sharp-linux-s390x": { - "version": "0.33.2", - "resolved": "https://registry.npmjs.org/@img/sharp-linux-s390x/-/sharp-linux-s390x-0.33.2.tgz", - "integrity": "sha512-MBoInDXDppMfhSzbMmOQtGfloVAflS2rP1qPcUIiITMi36Mm5YR7r0ASND99razjQUpHTzjrU1flO76hKvP5RA==", - "cpu": [ - "s390x" - ], + "node_modules/@aws-sdk/credential-provider-cognito-identity": { + "version": "3.758.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-cognito-identity/-/credential-provider-cognito-identity-3.758.0.tgz", + "integrity": "sha512-y/rHZqyChlEkNRr59gn4hv0gjhJwGmdCdW0JI1K9p3P9p7EurWGjr2M6+goTn3ilOlcAwrl5oFKR5jLt27TkOA==", "optional": true, - "os": [ - "linux" - ], - "engines": { - "glibc": ">=2.28", - "node": "^18.17.0 || ^20.3.0 || >=21.0.0", - "npm": ">=9.6.5", - "pnpm": ">=7.1.0", - "yarn": ">=3.2.0" - }, - "funding": { - "url": "https://opencollective.com/libvips" + "peer": true, + "dependencies": { + "@aws-sdk/client-cognito-identity": "3.758.0", + "@aws-sdk/types": "3.734.0", + "@smithy/property-provider": "^4.0.1", + "@smithy/types": "^4.1.0", + "tslib": "^2.6.2" }, - "optionalDependencies": { - "@img/sharp-libvips-linux-s390x": "1.0.1" + "engines": { + "node": ">=18.0.0" } }, - "node_modules/@img/sharp-linux-x64": { - "version": "0.33.2", - "resolved": "https://registry.npmjs.org/@img/sharp-linux-x64/-/sharp-linux-x64-0.33.2.tgz", - "integrity": "sha512-xUT82H5IbXewKkeF5aiooajoO1tQV4PnKfS/OZtb5DDdxS/FCI/uXTVZ35GQ97RZXsycojz/AJ0asoz6p2/H/A==", - "cpu": [ - "x64" - ], + "node_modules/@aws-sdk/credential-provider-env": { + "version": "3.758.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-env/-/credential-provider-env-3.758.0.tgz", + "integrity": "sha512-N27eFoRrO6MeUNumtNHDW9WOiwfd59LPXPqDrIa3kWL/s+fOKFHb9xIcF++bAwtcZnAxKkgpDCUP+INNZskE+w==", "optional": true, - "os": [ - "linux" - ], - "engines": { - "glibc": ">=2.26", - "node": "^18.17.0 || ^20.3.0 || >=21.0.0", - "npm": ">=9.6.5", - "pnpm": ">=7.1.0", - "yarn": ">=3.2.0" - }, - "funding": { - "url": "https://opencollective.com/libvips" + "peer": true, + "dependencies": { + "@aws-sdk/core": "3.758.0", + "@aws-sdk/types": "3.734.0", + "@smithy/property-provider": "^4.0.1", + "@smithy/types": "^4.1.0", + "tslib": "^2.6.2" }, - "optionalDependencies": { - "@img/sharp-libvips-linux-x64": "1.0.1" + "engines": { + "node": ">=18.0.0" } }, - "node_modules/@img/sharp-linuxmusl-arm64": { - "version": "0.33.2", - "resolved": "https://registry.npmjs.org/@img/sharp-linuxmusl-arm64/-/sharp-linuxmusl-arm64-0.33.2.tgz", - "integrity": "sha512-F+0z8JCu/UnMzg8IYW1TMeiViIWBVg7IWP6nE0p5S5EPQxlLd76c8jYemG21X99UzFwgkRo5yz2DS+zbrnxZeA==", - "cpu": [ - "arm64" - ], + "node_modules/@aws-sdk/credential-provider-http": { + "version": "3.758.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-http/-/credential-provider-http-3.758.0.tgz", + "integrity": "sha512-Xt9/U8qUCiw1hihztWkNeIR+arg6P+yda10OuCHX6kFVx3auTlU7+hCqs3UxqniGU4dguHuftf3mRpi5/GJ33Q==", "optional": true, - "os": [ - "linux" - ], - "engines": { - "musl": ">=1.2.2", - "node": "^18.17.0 || ^20.3.0 || >=21.0.0", - "npm": ">=9.6.5", - "pnpm": ">=7.1.0", - "yarn": ">=3.2.0" - }, - "funding": { - "url": "https://opencollective.com/libvips" + "peer": true, + "dependencies": { + "@aws-sdk/core": "3.758.0", + "@aws-sdk/types": "3.734.0", + "@smithy/fetch-http-handler": "^5.0.1", + "@smithy/node-http-handler": "^4.0.3", + "@smithy/property-provider": "^4.0.1", + "@smithy/protocol-http": "^5.0.1", + "@smithy/smithy-client": "^4.1.6", + "@smithy/types": "^4.1.0", + "@smithy/util-stream": "^4.1.2", + "tslib": "^2.6.2" }, - "optionalDependencies": { - "@img/sharp-libvips-linuxmusl-arm64": "1.0.1" + "engines": { + "node": ">=18.0.0" } }, - "node_modules/@img/sharp-linuxmusl-x64": { - "version": "0.33.2", - "resolved": "https://registry.npmjs.org/@img/sharp-linuxmusl-x64/-/sharp-linuxmusl-x64-0.33.2.tgz", - "integrity": "sha512-+ZLE3SQmSL+Fn1gmSaM8uFusW5Y3J9VOf+wMGNnTtJUMUxFhv+P4UPaYEYT8tqnyYVaOVGgMN/zsOxn9pSsO2A==", - "cpu": [ - "x64" - ], + "node_modules/@aws-sdk/credential-provider-ini": { + "version": "3.758.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.758.0.tgz", + "integrity": "sha512-cymSKMcP5d+OsgetoIZ5QCe1wnp2Q/tq+uIxVdh9MbfdBBEnl9Ecq6dH6VlYS89sp4QKuxHxkWXVnbXU3Q19Aw==", "optional": true, - "os": [ - "linux" - ], - "engines": { - "musl": ">=1.2.2", - "node": "^18.17.0 || ^20.3.0 || >=21.0.0", - "npm": ">=9.6.5", - "pnpm": ">=7.1.0", - "yarn": ">=3.2.0" - }, - "funding": { - "url": "https://opencollective.com/libvips" + "peer": true, + "dependencies": { + "@aws-sdk/core": "3.758.0", + "@aws-sdk/credential-provider-env": "3.758.0", + "@aws-sdk/credential-provider-http": "3.758.0", + "@aws-sdk/credential-provider-process": "3.758.0", + "@aws-sdk/credential-provider-sso": "3.758.0", + "@aws-sdk/credential-provider-web-identity": "3.758.0", + "@aws-sdk/nested-clients": "3.758.0", + "@aws-sdk/types": "3.734.0", + "@smithy/credential-provider-imds": "^4.0.1", + "@smithy/property-provider": "^4.0.1", + "@smithy/shared-ini-file-loader": "^4.0.1", + "@smithy/types": "^4.1.0", + "tslib": "^2.6.2" }, - "optionalDependencies": { - "@img/sharp-libvips-linuxmusl-x64": "1.0.1" + "engines": { + "node": ">=18.0.0" } }, - "node_modules/@img/sharp-wasm32": { - "version": "0.33.2", - "resolved": "https://registry.npmjs.org/@img/sharp-wasm32/-/sharp-wasm32-0.33.2.tgz", - "integrity": "sha512-fLbTaESVKuQcpm8ffgBD7jLb/CQLcATju/jxtTXR1XCLwbOQt+OL5zPHSDMmp2JZIeq82e18yE0Vv7zh6+6BfQ==", - "cpu": [ - "wasm32" - ], + "node_modules/@aws-sdk/credential-provider-node": { + "version": "3.758.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.758.0.tgz", + "integrity": "sha512-+DaMv63wiq7pJrhIQzZYMn4hSarKiizDoJRvyR7WGhnn0oQ/getX9Z0VNCV3i7lIFoLNTb7WMmQ9k7+z/uD5EQ==", "optional": true, + "peer": true, "dependencies": { - "@emnapi/runtime": "^0.45.0" + "@aws-sdk/credential-provider-env": "3.758.0", + "@aws-sdk/credential-provider-http": "3.758.0", + "@aws-sdk/credential-provider-ini": "3.758.0", + "@aws-sdk/credential-provider-process": "3.758.0", + "@aws-sdk/credential-provider-sso": "3.758.0", + "@aws-sdk/credential-provider-web-identity": "3.758.0", + "@aws-sdk/types": "3.734.0", + "@smithy/credential-provider-imds": "^4.0.1", + "@smithy/property-provider": "^4.0.1", + "@smithy/shared-ini-file-loader": "^4.0.1", + "@smithy/types": "^4.1.0", + "tslib": "^2.6.2" }, "engines": { - "node": "^18.17.0 || ^20.3.0 || >=21.0.0", - "npm": ">=9.6.5", - "pnpm": ">=7.1.0", - "yarn": ">=3.2.0" - }, - "funding": { - "url": "https://opencollective.com/libvips" + "node": ">=18.0.0" } }, - "node_modules/@img/sharp-win32-ia32": { - "version": "0.33.2", - "resolved": "https://registry.npmjs.org/@img/sharp-win32-ia32/-/sharp-win32-ia32-0.33.2.tgz", - "integrity": "sha512-okBpql96hIGuZ4lN3+nsAjGeggxKm7hIRu9zyec0lnfB8E7Z6p95BuRZzDDXZOl2e8UmR4RhYt631i7mfmKU8g==", - "cpu": [ - "ia32" - ], + "node_modules/@aws-sdk/credential-provider-process": { + "version": "3.758.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-process/-/credential-provider-process-3.758.0.tgz", + "integrity": "sha512-AzcY74QTPqcbXWVgjpPZ3HOmxQZYPROIBz2YINF0OQk0MhezDWV/O7Xec+K1+MPGQO3qS6EDrUUlnPLjsqieHA==", "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": "^18.17.0 || ^20.3.0 || >=21.0.0", - "npm": ">=9.6.5", - "pnpm": ">=7.1.0", - "yarn": ">=3.2.0" + "peer": true, + "dependencies": { + "@aws-sdk/core": "3.758.0", + "@aws-sdk/types": "3.734.0", + "@smithy/property-provider": "^4.0.1", + "@smithy/shared-ini-file-loader": "^4.0.1", + "@smithy/types": "^4.1.0", + "tslib": "^2.6.2" }, - "funding": { - "url": "https://opencollective.com/libvips" - } - }, - "node_modules/@img/sharp-win32-x64": { - "version": "0.33.2", - "resolved": "https://registry.npmjs.org/@img/sharp-win32-x64/-/sharp-win32-x64-0.33.2.tgz", - "integrity": "sha512-E4magOks77DK47FwHUIGH0RYWSgRBfGdK56kIHSVeB9uIS4pPFr4N2kIVsXdQQo4LzOsENKV5KAhRlRL7eMAdg==", - "cpu": [ - "x64" - ], - "optional": true, - "os": [ - "win32" - ], "engines": { - "node": "^18.17.0 || ^20.3.0 || >=21.0.0", - "npm": ">=9.6.5", - "pnpm": ">=7.1.0", - "yarn": ">=3.2.0" - }, - "funding": { - "url": "https://opencollective.com/libvips" + "node": ">=18.0.0" } }, - "node_modules/@isaacs/cliui": { - "version": "8.0.2", - "resolved": "https://registry.npmjs.org/@isaacs/cliui/-/cliui-8.0.2.tgz", - "integrity": "sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==", - "dev": true, + "node_modules/@aws-sdk/credential-provider-sso": { + "version": "3.758.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.758.0.tgz", + "integrity": "sha512-x0FYJqcOLUCv8GLLFDYMXRAQKGjoM+L0BG4BiHYZRDf24yQWFCAZsCQAYKo6XZYh2qznbsW6f//qpyJ5b0QVKQ==", + "optional": true, + "peer": true, "dependencies": { - "string-width": "^5.1.2", - "string-width-cjs": "npm:string-width@^4.2.0", - "strip-ansi": "^7.0.1", - "strip-ansi-cjs": "npm:strip-ansi@^6.0.1", - "wrap-ansi": "^8.1.0", - "wrap-ansi-cjs": "npm:wrap-ansi@^7.0.0" + "@aws-sdk/client-sso": "3.758.0", + "@aws-sdk/core": "3.758.0", + "@aws-sdk/token-providers": "3.758.0", + "@aws-sdk/types": "3.734.0", + "@smithy/property-provider": "^4.0.1", + "@smithy/shared-ini-file-loader": "^4.0.1", + "@smithy/types": "^4.1.0", + "tslib": "^2.6.2" }, "engines": { - "node": ">=12" + "node": ">=18.0.0" } }, - "node_modules/@jimp/bmp": { - "version": "0.22.10", - "resolved": "https://registry.npmjs.org/@jimp/bmp/-/bmp-0.22.10.tgz", - "integrity": "sha512-1UXRl1Nw1KptZ1r0ANqtXOst9vGH51dq7keVKQzyyTO2lz4dOaezS9StuSTNh+RmiHg/SVPaFRpPfB0S/ln4Kg==", - "dev": true, + "node_modules/@aws-sdk/credential-provider-web-identity": { + "version": "3.758.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.758.0.tgz", + "integrity": "sha512-XGguXhBqiCXMXRxcfCAVPlMbm3VyJTou79r/3mxWddHWF0XbhaQiBIbUz6vobVTD25YQRbWSmSch7VA8kI5Lrw==", + "optional": true, + "peer": true, "dependencies": { - "@jimp/utils": "^0.22.10", - "bmp-js": "^0.1.0" + "@aws-sdk/core": "3.758.0", + "@aws-sdk/nested-clients": "3.758.0", + "@aws-sdk/types": "3.734.0", + "@smithy/property-provider": "^4.0.1", + "@smithy/types": "^4.1.0", + "tslib": "^2.6.2" }, - "peerDependencies": { - "@jimp/custom": ">=0.3.5" - } - }, - "node_modules/@jimp/core": { - "version": "0.22.10", - "resolved": "https://registry.npmjs.org/@jimp/core/-/core-0.22.10.tgz", - "integrity": "sha512-ZKyrehVy6wu1PnBXIUpn/fXmyMRQiVSbvHDubgXz4bfTOao3GiOurKHjByutQIgozuAN6ZHWiSge1dKA+dex3w==", - "dev": true, - "dependencies": { - "@jimp/utils": "^0.22.10", - "any-base": "^1.1.0", - "buffer": "^5.2.0", - "exif-parser": "^0.1.12", - "file-type": "^16.5.4", - "isomorphic-fetch": "^3.0.0", - "pixelmatch": "^4.0.2", - "tinycolor2": "^1.6.0" - } - }, - "node_modules/@jimp/custom": { - "version": "0.22.10", - "resolved": "https://registry.npmjs.org/@jimp/custom/-/custom-0.22.10.tgz", - "integrity": "sha512-sPZkUYe1hu0iIgNisjizxPJqq2vaaKvkCkPoXq2U6UV3ZA1si/WVdrg25da3IcGIEV+83AoHgM8TvqlLgrCJsg==", - "dev": true, - "dependencies": { - "@jimp/core": "^0.22.10" + "engines": { + "node": ">=18.0.0" } }, - "node_modules/@jimp/gif": { - "version": "0.22.10", - "resolved": "https://registry.npmjs.org/@jimp/gif/-/gif-0.22.10.tgz", - "integrity": "sha512-yEX2dSpamvkSx1PPDWGnKeWDrBz0vrCKjVG/cn4Zr68MRRT75tbZIeOrBa+RiUpY3ho5ix7d36LkYvt3qfUIhQ==", - "dev": true, + "node_modules/@aws-sdk/credential-providers": { + "version": "3.758.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-providers/-/credential-providers-3.758.0.tgz", + "integrity": "sha512-BaGVBdm9ynsErIc/mLuUwJ1OQcL/pkhCuAm24jpsif3evZ5wgyZnEAZB2yRin+mQnQaQT3L+KvTbdKGfjL8+fQ==", + "optional": true, + "peer": true, "dependencies": { - "@jimp/utils": "^0.22.10", - "gifwrap": "^0.10.1", - "omggif": "^1.0.9" + "@aws-sdk/client-cognito-identity": "3.758.0", + "@aws-sdk/core": "3.758.0", + "@aws-sdk/credential-provider-cognito-identity": "3.758.0", + "@aws-sdk/credential-provider-env": "3.758.0", + "@aws-sdk/credential-provider-http": "3.758.0", + "@aws-sdk/credential-provider-ini": "3.758.0", + "@aws-sdk/credential-provider-node": "3.758.0", + "@aws-sdk/credential-provider-process": "3.758.0", + "@aws-sdk/credential-provider-sso": "3.758.0", + "@aws-sdk/credential-provider-web-identity": "3.758.0", + "@aws-sdk/nested-clients": "3.758.0", + "@aws-sdk/types": "3.734.0", + "@smithy/core": "^3.1.5", + "@smithy/credential-provider-imds": "^4.0.1", + "@smithy/property-provider": "^4.0.1", + "@smithy/types": "^4.1.0", + "tslib": "^2.6.2" }, - "peerDependencies": { - "@jimp/custom": ">=0.3.5" + "engines": { + "node": ">=18.0.0" } }, - "node_modules/@jimp/jpeg": { - "version": "0.22.10", - "resolved": "https://registry.npmjs.org/@jimp/jpeg/-/jpeg-0.22.10.tgz", - "integrity": "sha512-6bu98pAcVN4DY2oiDLC4TOgieX/lZrLd1tombWZOFCN5PBmqaHQxm7IUmT+Wj4faEvh8QSHgVLSA+2JQQRJWVA==", - "dev": true, + "node_modules/@aws-sdk/middleware-host-header": { + "version": "3.734.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-host-header/-/middleware-host-header-3.734.0.tgz", + "integrity": "sha512-LW7RRgSOHHBzWZnigNsDIzu3AiwtjeI2X66v+Wn1P1u+eXssy1+up4ZY/h+t2sU4LU36UvEf+jrZti9c6vRnFw==", + "optional": true, + "peer": true, "dependencies": { - "@jimp/utils": "^0.22.10", - "jpeg-js": "^0.4.4" + "@aws-sdk/types": "3.734.0", + "@smithy/protocol-http": "^5.0.1", + "@smithy/types": "^4.1.0", + "tslib": "^2.6.2" }, - "peerDependencies": { - "@jimp/custom": ">=0.3.5" + "engines": { + "node": ">=18.0.0" } }, - "node_modules/@jimp/plugin-blit": { - "version": "0.22.10", - "resolved": "https://registry.npmjs.org/@jimp/plugin-blit/-/plugin-blit-0.22.10.tgz", - "integrity": "sha512-6EI8Sl+mxYHEIy6Yteh6eknD+EZguKpNdr3sCKxNezmLR0+vK99vHcllo6uGSjXXiwtwS67Xqxn8SsoatL+UJQ==", - "dev": true, + "node_modules/@aws-sdk/middleware-logger": { + "version": "3.734.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-logger/-/middleware-logger-3.734.0.tgz", + "integrity": "sha512-mUMFITpJUW3LcKvFok176eI5zXAUomVtahb9IQBwLzkqFYOrMJvWAvoV4yuxrJ8TlQBG8gyEnkb9SnhZvjg67w==", + "optional": true, + "peer": true, "dependencies": { - "@jimp/utils": "^0.22.10" + "@aws-sdk/types": "3.734.0", + "@smithy/types": "^4.1.0", + "tslib": "^2.6.2" }, - "peerDependencies": { - "@jimp/custom": ">=0.3.5" + "engines": { + "node": ">=18.0.0" } }, - "node_modules/@jimp/plugin-blur": { - "version": "0.22.10", - "resolved": "https://registry.npmjs.org/@jimp/plugin-blur/-/plugin-blur-0.22.10.tgz", - "integrity": "sha512-4XRTWuPVdMXJeclJMisXPGizeHtTryVaVV5HnuQXpKqIZtzXReCCpNGH8q/i0kBQOQMXhGWS3mpqOEwtpPePKw==", - "dev": true, + "node_modules/@aws-sdk/middleware-recursion-detection": { + "version": "3.734.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-recursion-detection/-/middleware-recursion-detection-3.734.0.tgz", + "integrity": "sha512-CUat2d9ITsFc2XsmeiRQO96iWpxSKYFjxvj27Hc7vo87YUHRnfMfnc8jw1EpxEwMcvBD7LsRa6vDNky6AjcrFA==", + "optional": true, + "peer": true, "dependencies": { - "@jimp/utils": "^0.22.10" + "@aws-sdk/types": "3.734.0", + "@smithy/protocol-http": "^5.0.1", + "@smithy/types": "^4.1.0", + "tslib": "^2.6.2" }, - "peerDependencies": { - "@jimp/custom": ">=0.3.5" + "engines": { + "node": ">=18.0.0" } }, - "node_modules/@jimp/plugin-circle": { - "version": "0.22.10", - "resolved": "https://registry.npmjs.org/@jimp/plugin-circle/-/plugin-circle-0.22.10.tgz", - "integrity": "sha512-mhcwTO1ywRxiCgtLGge6tDDIDPlX6qkI3CY+BjgGG/XhVHccCddXgOGLdlf+5OuKIEF2Nqs0V01LQEQIJFTmEw==", - "dev": true, + "node_modules/@aws-sdk/middleware-user-agent": { + "version": "3.758.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-user-agent/-/middleware-user-agent-3.758.0.tgz", + "integrity": "sha512-iNyehQXtQlj69JCgfaOssgZD4HeYGOwxcaKeG6F+40cwBjTAi0+Ph1yfDwqk2qiBPIRWJ/9l2LodZbxiBqgrwg==", + "optional": true, + "peer": true, "dependencies": { - "@jimp/utils": "^0.22.10" + "@aws-sdk/core": "3.758.0", + "@aws-sdk/types": "3.734.0", + "@aws-sdk/util-endpoints": "3.743.0", + "@smithy/core": "^3.1.5", + "@smithy/protocol-http": "^5.0.1", + "@smithy/types": "^4.1.0", + "tslib": "^2.6.2" }, - "peerDependencies": { - "@jimp/custom": ">=0.3.5" + "engines": { + "node": ">=18.0.0" } }, - "node_modules/@jimp/plugin-color": { - "version": "0.22.10", - "resolved": "https://registry.npmjs.org/@jimp/plugin-color/-/plugin-color-0.22.10.tgz", - "integrity": "sha512-e4t3L7Kedd96E0x1XjsTM6NcgulKUU66HdFTao7Tc9FYJRFSlttARZ/C6LEryGDm/i69R6bJEpo7BkNz0YL55Q==", - "dev": true, + "node_modules/@aws-sdk/nested-clients": { + "version": "3.758.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/nested-clients/-/nested-clients-3.758.0.tgz", + "integrity": "sha512-YZ5s7PSvyF3Mt2h1EQulCG93uybprNGbBkPmVuy/HMMfbFTt4iL3SbKjxqvOZelm86epFfj7pvK7FliI2WOEcg==", + "optional": true, + "peer": true, "dependencies": { - "@jimp/utils": "^0.22.10", - "tinycolor2": "^1.6.0" + "@aws-crypto/sha256-browser": "5.2.0", + "@aws-crypto/sha256-js": "5.2.0", + "@aws-sdk/core": "3.758.0", + "@aws-sdk/middleware-host-header": "3.734.0", + "@aws-sdk/middleware-logger": "3.734.0", + "@aws-sdk/middleware-recursion-detection": "3.734.0", + "@aws-sdk/middleware-user-agent": "3.758.0", + "@aws-sdk/region-config-resolver": "3.734.0", + "@aws-sdk/types": "3.734.0", + "@aws-sdk/util-endpoints": "3.743.0", + "@aws-sdk/util-user-agent-browser": "3.734.0", + "@aws-sdk/util-user-agent-node": "3.758.0", + "@smithy/config-resolver": "^4.0.1", + "@smithy/core": "^3.1.5", + "@smithy/fetch-http-handler": "^5.0.1", + "@smithy/hash-node": "^4.0.1", + "@smithy/invalid-dependency": "^4.0.1", + "@smithy/middleware-content-length": "^4.0.1", + "@smithy/middleware-endpoint": "^4.0.6", + "@smithy/middleware-retry": "^4.0.7", + "@smithy/middleware-serde": "^4.0.2", + "@smithy/middleware-stack": "^4.0.1", + "@smithy/node-config-provider": "^4.0.1", + "@smithy/node-http-handler": "^4.0.3", + "@smithy/protocol-http": "^5.0.1", + "@smithy/smithy-client": "^4.1.6", + "@smithy/types": "^4.1.0", + "@smithy/url-parser": "^4.0.1", + "@smithy/util-base64": "^4.0.0", + "@smithy/util-body-length-browser": "^4.0.0", + "@smithy/util-body-length-node": "^4.0.0", + "@smithy/util-defaults-mode-browser": "^4.0.7", + "@smithy/util-defaults-mode-node": "^4.0.7", + "@smithy/util-endpoints": "^3.0.1", + "@smithy/util-middleware": "^4.0.1", + "@smithy/util-retry": "^4.0.1", + "@smithy/util-utf8": "^4.0.0", + "tslib": "^2.6.2" }, - "peerDependencies": { - "@jimp/custom": ">=0.3.5" + "engines": { + "node": ">=18.0.0" } }, - "node_modules/@jimp/plugin-contain": { - "version": "0.22.10", - "resolved": "https://registry.npmjs.org/@jimp/plugin-contain/-/plugin-contain-0.22.10.tgz", - "integrity": "sha512-eP8KrzctuEoqibQAxi9WhbnoRosydhiwg+IYya3dKuKDBTrD9UHt+ERlPQ/lTNWHzV/l4S1ntV3r9s9saJgsXA==", - "dev": true, + "node_modules/@aws-sdk/region-config-resolver": { + "version": "3.734.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/region-config-resolver/-/region-config-resolver-3.734.0.tgz", + "integrity": "sha512-Lvj1kPRC5IuJBr9DyJ9T9/plkh+EfKLy+12s/mykOy1JaKHDpvj+XGy2YO6YgYVOb8JFtaqloid+5COtje4JTQ==", + "optional": true, + "peer": true, "dependencies": { - "@jimp/utils": "^0.22.10" + "@aws-sdk/types": "3.734.0", + "@smithy/node-config-provider": "^4.0.1", + "@smithy/types": "^4.1.0", + "@smithy/util-config-provider": "^4.0.0", + "@smithy/util-middleware": "^4.0.1", + "tslib": "^2.6.2" }, - "peerDependencies": { - "@jimp/custom": ">=0.3.5", - "@jimp/plugin-blit": ">=0.3.5", - "@jimp/plugin-resize": ">=0.3.5", - "@jimp/plugin-scale": ">=0.3.5" + "engines": { + "node": ">=18.0.0" } }, - "node_modules/@jimp/plugin-cover": { - "version": "0.22.10", - "resolved": "https://registry.npmjs.org/@jimp/plugin-cover/-/plugin-cover-0.22.10.tgz", - "integrity": "sha512-kJCwL5T1igfa0InCfkE7bBeqg26m46aoRt10ug+rvm11P6RrvRMGrgINFyIKB+mnB7CiyBN/MOula1CvLhSInQ==", - "dev": true, + "node_modules/@aws-sdk/token-providers": { + "version": "3.758.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/token-providers/-/token-providers-3.758.0.tgz", + "integrity": "sha512-ckptN1tNrIfQUaGWm/ayW1ddG+imbKN7HHhjFdS4VfItsP0QQOB0+Ov+tpgb4MoNR4JaUghMIVStjIeHN2ks1w==", + "optional": true, + "peer": true, "dependencies": { - "@jimp/utils": "^0.22.10" + "@aws-sdk/nested-clients": "3.758.0", + "@aws-sdk/types": "3.734.0", + "@smithy/property-provider": "^4.0.1", + "@smithy/shared-ini-file-loader": "^4.0.1", + "@smithy/types": "^4.1.0", + "tslib": "^2.6.2" }, - "peerDependencies": { - "@jimp/custom": ">=0.3.5", - "@jimp/plugin-crop": ">=0.3.5", - "@jimp/plugin-resize": ">=0.3.5", - "@jimp/plugin-scale": ">=0.3.5" + "engines": { + "node": ">=18.0.0" } }, - "node_modules/@jimp/plugin-crop": { - "version": "0.22.10", - "resolved": "https://registry.npmjs.org/@jimp/plugin-crop/-/plugin-crop-0.22.10.tgz", - "integrity": "sha512-BOZ+YGaZlhU7c5ye65RxikicXH0Ki0It6/XHISvipR5WZrfjLjL2Ke20G+AGnwBQc76gKenVcMXVUCnEjtZV+Q==", - "dev": true, + "node_modules/@aws-sdk/types": { + "version": "3.734.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.734.0.tgz", + "integrity": "sha512-o11tSPTT70nAkGV1fN9wm/hAIiLPyWX6SuGf+9JyTp7S/rC2cFWhR26MvA69nplcjNaXVzB0f+QFrLXXjOqCrg==", + "optional": true, + "peer": true, "dependencies": { - "@jimp/utils": "^0.22.10" + "@smithy/types": "^4.1.0", + "tslib": "^2.6.2" }, - "peerDependencies": { - "@jimp/custom": ">=0.3.5" + "engines": { + "node": ">=18.0.0" } }, - "node_modules/@jimp/plugin-displace": { - "version": "0.22.10", - "resolved": "https://registry.npmjs.org/@jimp/plugin-displace/-/plugin-displace-0.22.10.tgz", - "integrity": "sha512-llNiWWMTKISDXt5+cXI0GaFmZWAjlT+4fFLYf4eXquuL/9wZoQsEBhv2GdGd48mkiS8jZq1Nnb2Q4ehEPTvrzw==", - "dev": true, + "node_modules/@aws-sdk/util-endpoints": { + "version": "3.743.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-endpoints/-/util-endpoints-3.743.0.tgz", + "integrity": "sha512-sN1l559zrixeh5x+pttrnd0A3+r34r0tmPkJ/eaaMaAzXqsmKU/xYre9K3FNnsSS1J1k4PEfk/nHDTVUgFYjnw==", + "optional": true, + "peer": true, "dependencies": { - "@jimp/utils": "^0.22.10" + "@aws-sdk/types": "3.734.0", + "@smithy/types": "^4.1.0", + "@smithy/util-endpoints": "^3.0.1", + "tslib": "^2.6.2" }, - "peerDependencies": { - "@jimp/custom": ">=0.3.5" + "engines": { + "node": ">=18.0.0" } }, - "node_modules/@jimp/plugin-dither": { - "version": "0.22.10", - "resolved": "https://registry.npmjs.org/@jimp/plugin-dither/-/plugin-dither-0.22.10.tgz", - "integrity": "sha512-05WLmeV5M+P/0FS+bWf13hMew2X0oa8w9AtmevL2UyA/5GqiyvP2Xm5WfGQ8oFiiMvpnL6RFomJQOZtWca0C2w==", - "dev": true, + "node_modules/@aws-sdk/util-locate-window": { + "version": "3.723.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-locate-window/-/util-locate-window-3.723.0.tgz", + "integrity": "sha512-Yf2CS10BqK688DRsrKI/EO6B8ff5J86NXe4C+VCysK7UOgN0l1zOTeTukZ3H8Q9tYYX3oaF1961o8vRkFm7Nmw==", + "optional": true, + "peer": true, "dependencies": { - "@jimp/utils": "^0.22.10" + "tslib": "^2.6.2" }, - "peerDependencies": { - "@jimp/custom": ">=0.3.5" + "engines": { + "node": ">=18.0.0" } }, - "node_modules/@jimp/plugin-fisheye": { - "version": "0.22.10", - "resolved": "https://registry.npmjs.org/@jimp/plugin-fisheye/-/plugin-fisheye-0.22.10.tgz", - "integrity": "sha512-InjiXvc7Gkzrx8VWtU97kDqV7ENnhHGPULymJWeZaF2aicud9Fpk4iCtd/DcZIrk7Cbe60A8RwNXN00HXIbSCg==", - "dev": true, + "node_modules/@aws-sdk/util-user-agent-browser": { + "version": "3.734.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-browser/-/util-user-agent-browser-3.734.0.tgz", + "integrity": "sha512-xQTCus6Q9LwUuALW+S76OL0jcWtMOVu14q+GoLnWPUM7QeUw963oQcLhF7oq0CtaLLKyl4GOUfcwc773Zmwwng==", + "optional": true, + "peer": true, "dependencies": { - "@jimp/utils": "^0.22.10" - }, - "peerDependencies": { - "@jimp/custom": ">=0.3.5" + "@aws-sdk/types": "3.734.0", + "@smithy/types": "^4.1.0", + "bowser": "^2.11.0", + "tslib": "^2.6.2" } }, - "node_modules/@jimp/plugin-flip": { - "version": "0.22.10", - "resolved": "https://registry.npmjs.org/@jimp/plugin-flip/-/plugin-flip-0.22.10.tgz", - "integrity": "sha512-42GkGtTHWnhnwTMPVK/kXObZbkYIpQWfuIfy5EMEMk6zRj05zpv4vsjkKWfuemweZINwfvD7wDJF7FVFNNcZZg==", - "dev": true, + "node_modules/@aws-sdk/util-user-agent-node": { + "version": "3.758.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.758.0.tgz", + "integrity": "sha512-A5EZw85V6WhoKMV2hbuFRvb9NPlxEErb4HPO6/SPXYY4QrjprIzScHxikqcWv1w4J3apB1wto9LPU3IMsYtfrw==", + "optional": true, + "peer": true, "dependencies": { - "@jimp/utils": "^0.22.10" + "@aws-sdk/middleware-user-agent": "3.758.0", + "@aws-sdk/types": "3.734.0", + "@smithy/node-config-provider": "^4.0.1", + "@smithy/types": "^4.1.0", + "tslib": "^2.6.2" }, - "peerDependencies": { - "@jimp/custom": ">=0.3.5", - "@jimp/plugin-rotate": ">=0.3.5" - } - }, - "node_modules/@jimp/plugin-gaussian": { - "version": "0.22.10", - "resolved": "https://registry.npmjs.org/@jimp/plugin-gaussian/-/plugin-gaussian-0.22.10.tgz", - "integrity": "sha512-ykrG/6lTp9Q5YA8jS5XzwMHtRxb9HOFMgtmnrUZ8kU+BK8REecfy9Ic5BUEOjCYvS1a/xLsnrZQU07iiYxBxFg==", - "dev": true, - "dependencies": { - "@jimp/utils": "^0.22.10" + "engines": { + "node": ">=18.0.0" }, "peerDependencies": { - "@jimp/custom": ">=0.3.5" - } - }, - "node_modules/@jimp/plugin-invert": { - "version": "0.22.10", - "resolved": "https://registry.npmjs.org/@jimp/plugin-invert/-/plugin-invert-0.22.10.tgz", - "integrity": "sha512-d8j9BlUJYs/c994t4azUWSWmQq4LLPG4ecm8m6SSNqap+S/HlVQGqjYhJEBbY9EXkOTYB9vBL9bqwSM1Rr6paA==", - "dev": true, - "dependencies": { - "@jimp/utils": "^0.22.10" + "aws-crt": ">=1.0.0" }, - "peerDependencies": { - "@jimp/custom": ">=0.3.5" + "peerDependenciesMeta": { + "aws-crt": { + "optional": true + } } }, - "node_modules/@jimp/plugin-mask": { - "version": "0.22.10", - "resolved": "https://registry.npmjs.org/@jimp/plugin-mask/-/plugin-mask-0.22.10.tgz", - "integrity": "sha512-yRBs1230XZkz24uFTdTcSlZ0HXZpIWzM3iFQN56MzZ7USgdVZjPPDCQ8I9RpqfZ36nDflQkUO0wV7ucsi4ogow==", - "dev": true, + "node_modules/@emnapi/runtime": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/@emnapi/runtime/-/runtime-1.3.1.tgz", + "integrity": "sha512-kEBmG8KyqtxJZv+ygbEim+KCGtIq1fC22Ms3S4ziXmYKm8uyoLX0MHONVKwp+9opg390VaKRNt4a7A9NwmpNhw==", + "optional": true, "dependencies": { - "@jimp/utils": "^0.22.10" - }, - "peerDependencies": { - "@jimp/custom": ">=0.3.5" + "tslib": "^2.4.0" } }, - "node_modules/@jimp/plugin-normalize": { - "version": "0.22.10", - "resolved": "https://registry.npmjs.org/@jimp/plugin-normalize/-/plugin-normalize-0.22.10.tgz", - "integrity": "sha512-Wk9GX6eJMchX/ZAazVa70Fagu+OXMvHiPY+HrcEwcclL+p1wo8xAHEsf9iKno7Ja4EU9lLhbBRY5hYJyiKMEkg==", - "dev": true, - "dependencies": { - "@jimp/utils": "^0.22.10" + "node_modules/@img/sharp-darwin-arm64": { + "version": "0.33.5", + "resolved": "https://registry.npmjs.org/@img/sharp-darwin-arm64/-/sharp-darwin-arm64-0.33.5.tgz", + "integrity": "sha512-UT4p+iz/2H4twwAoLCqfA9UH5pI6DggwKEGuaPy7nCVQ8ZsiY5PIcrRvD1DzuY3qYL07NtIQcWnBSY/heikIFQ==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^18.17.0 || ^20.3.0 || >=21.0.0" }, - "peerDependencies": { - "@jimp/custom": ">=0.3.5" + "funding": { + "url": "https://opencollective.com/libvips" + }, + "optionalDependencies": { + "@img/sharp-libvips-darwin-arm64": "1.0.4" } }, - "node_modules/@jimp/plugin-print": { - "version": "0.22.10", - "resolved": "https://registry.npmjs.org/@jimp/plugin-print/-/plugin-print-0.22.10.tgz", - "integrity": "sha512-1U3VloIR+beE1kWPdGEJMiE2h1Do29iv3w8sBbvPyRP4qXxRFcDpmCGtctsrKmb1krlBFlj8ubyAY90xL+5n9w==", - "dev": true, - "dependencies": { - "@jimp/utils": "^0.22.10", - "load-bmfont": "^1.4.1" - }, - "peerDependencies": { + "node_modules/@img/sharp-darwin-x64": { + "version": "0.33.5", + "resolved": "https://registry.npmjs.org/@img/sharp-darwin-x64/-/sharp-darwin-x64-0.33.5.tgz", + "integrity": "sha512-fyHac4jIc1ANYGRDxtiqelIbdWkIuQaI84Mv45KvGRRxSAa7o7d1ZKAOBaYbnepLC1WqxfpimdeWfvqqSGwR2Q==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^18.17.0 || ^20.3.0 || >=21.0.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + }, + "optionalDependencies": { + "@img/sharp-libvips-darwin-x64": "1.0.4" + } + }, + "node_modules/@img/sharp-libvips-darwin-arm64": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-darwin-arm64/-/sharp-libvips-darwin-arm64-1.0.4.tgz", + "integrity": "sha512-XblONe153h0O2zuFfTAbQYAX2JhYmDHeWikp1LM9Hul9gVPjFY427k6dFEcOL72O01QxQsWi761svJ/ev9xEDg==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "darwin" + ], + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/@img/sharp-libvips-darwin-x64": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-darwin-x64/-/sharp-libvips-darwin-x64-1.0.4.tgz", + "integrity": "sha512-xnGR8YuZYfJGmWPvmlunFaWJsb9T/AO2ykoP3Fz/0X5XV2aoYBPkX6xqCQvUTKKiLddarLaxpzNe+b1hjeWHAQ==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "darwin" + ], + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/@img/sharp-libvips-linux-arm": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-arm/-/sharp-libvips-linux-arm-1.0.5.tgz", + "integrity": "sha512-gvcC4ACAOPRNATg/ov8/MnbxFDJqf/pDePbBnuBDcjsI8PssmjoKMAz4LtLaVi+OnSb5FK/yIOamqDwGmXW32g==", + "cpu": [ + "arm" + ], + "optional": true, + "os": [ + "linux" + ], + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/@img/sharp-libvips-linux-arm64": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-arm64/-/sharp-libvips-linux-arm64-1.0.4.tgz", + "integrity": "sha512-9B+taZ8DlyyqzZQnoeIvDVR/2F4EbMepXMc/NdVbkzsJbzkUjhXv/70GQJ7tdLA4YJgNP25zukcxpX2/SueNrA==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "linux" + ], + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/@img/sharp-libvips-linux-s390x": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-s390x/-/sharp-libvips-linux-s390x-1.0.4.tgz", + "integrity": "sha512-u7Wz6ntiSSgGSGcjZ55im6uvTrOxSIS8/dgoVMoiGE9I6JAfU50yH5BoDlYA1tcuGS7g/QNtetJnxA6QEsCVTA==", + "cpu": [ + "s390x" + ], + "optional": true, + "os": [ + "linux" + ], + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/@img/sharp-libvips-linux-x64": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-x64/-/sharp-libvips-linux-x64-1.0.4.tgz", + "integrity": "sha512-MmWmQ3iPFZr0Iev+BAgVMb3ZyC4KeFc3jFxnNbEPas60e1cIfevbtuyf9nDGIzOaW9PdnDciJm+wFFaTlj5xYw==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "linux" + ], + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/@img/sharp-libvips-linuxmusl-arm64": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linuxmusl-arm64/-/sharp-libvips-linuxmusl-arm64-1.0.4.tgz", + "integrity": "sha512-9Ti+BbTYDcsbp4wfYib8Ctm1ilkugkA/uscUn6UXK1ldpC1JjiXbLfFZtRlBhjPZ5o1NCLiDbg8fhUPKStHoTA==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "linux" + ], + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/@img/sharp-libvips-linuxmusl-x64": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linuxmusl-x64/-/sharp-libvips-linuxmusl-x64-1.0.4.tgz", + "integrity": "sha512-viYN1KX9m+/hGkJtvYYp+CCLgnJXwiQB39damAO7WMdKWlIhmYTfHjwSbQeUK/20vY154mwezd9HflVFM1wVSw==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "linux" + ], + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/@img/sharp-linux-arm": { + "version": "0.33.5", + "resolved": "https://registry.npmjs.org/@img/sharp-linux-arm/-/sharp-linux-arm-0.33.5.tgz", + "integrity": "sha512-JTS1eldqZbJxjvKaAkxhZmBqPRGmxgu+qFKSInv8moZ2AmT5Yib3EQ1c6gp493HvrvV8QgdOXdyaIBrhvFhBMQ==", + "cpu": [ + "arm" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^18.17.0 || ^20.3.0 || >=21.0.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + }, + "optionalDependencies": { + "@img/sharp-libvips-linux-arm": "1.0.5" + } + }, + "node_modules/@img/sharp-linux-arm64": { + "version": "0.33.5", + "resolved": "https://registry.npmjs.org/@img/sharp-linux-arm64/-/sharp-linux-arm64-0.33.5.tgz", + "integrity": "sha512-JMVv+AMRyGOHtO1RFBiJy/MBsgz0x4AWrT6QoEVVTyh1E39TrCUpTRI7mx9VksGX4awWASxqCYLCV4wBZHAYxA==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^18.17.0 || ^20.3.0 || >=21.0.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + }, + "optionalDependencies": { + "@img/sharp-libvips-linux-arm64": "1.0.4" + } + }, + "node_modules/@img/sharp-linux-s390x": { + "version": "0.33.5", + "resolved": "https://registry.npmjs.org/@img/sharp-linux-s390x/-/sharp-linux-s390x-0.33.5.tgz", + "integrity": "sha512-y/5PCd+mP4CA/sPDKl2961b+C9d+vPAveS33s6Z3zfASk2j5upL6fXVPZi7ztePZ5CuH+1kW8JtvxgbuXHRa4Q==", + "cpu": [ + "s390x" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^18.17.0 || ^20.3.0 || >=21.0.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + }, + "optionalDependencies": { + "@img/sharp-libvips-linux-s390x": "1.0.4" + } + }, + "node_modules/@img/sharp-linux-x64": { + "version": "0.33.5", + "resolved": "https://registry.npmjs.org/@img/sharp-linux-x64/-/sharp-linux-x64-0.33.5.tgz", + "integrity": "sha512-opC+Ok5pRNAzuvq1AG0ar+1owsu842/Ab+4qvU879ippJBHvyY5n2mxF1izXqkPYlGuP/M556uh53jRLJmzTWA==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^18.17.0 || ^20.3.0 || >=21.0.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + }, + "optionalDependencies": { + "@img/sharp-libvips-linux-x64": "1.0.4" + } + }, + "node_modules/@img/sharp-linuxmusl-arm64": { + "version": "0.33.5", + "resolved": "https://registry.npmjs.org/@img/sharp-linuxmusl-arm64/-/sharp-linuxmusl-arm64-0.33.5.tgz", + "integrity": "sha512-XrHMZwGQGvJg2V/oRSUfSAfjfPxO+4DkiRh6p2AFjLQztWUuY/o8Mq0eMQVIY7HJ1CDQUJlxGGZRw1a5bqmd1g==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^18.17.0 || ^20.3.0 || >=21.0.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + }, + "optionalDependencies": { + "@img/sharp-libvips-linuxmusl-arm64": "1.0.4" + } + }, + "node_modules/@img/sharp-linuxmusl-x64": { + "version": "0.33.5", + "resolved": "https://registry.npmjs.org/@img/sharp-linuxmusl-x64/-/sharp-linuxmusl-x64-0.33.5.tgz", + "integrity": "sha512-WT+d/cgqKkkKySYmqoZ8y3pxx7lx9vVejxW/W4DOFMYVSkErR+w7mf2u8m/y4+xHe7yY9DAXQMWQhpnMuFfScw==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^18.17.0 || ^20.3.0 || >=21.0.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + }, + "optionalDependencies": { + "@img/sharp-libvips-linuxmusl-x64": "1.0.4" + } + }, + "node_modules/@img/sharp-wasm32": { + "version": "0.33.5", + "resolved": "https://registry.npmjs.org/@img/sharp-wasm32/-/sharp-wasm32-0.33.5.tgz", + "integrity": "sha512-ykUW4LVGaMcU9lu9thv85CbRMAwfeadCJHRsg2GmeRa/cJxsVY9Rbd57JcMxBkKHag5U/x7TSBpScF4U8ElVzg==", + "cpu": [ + "wasm32" + ], + "optional": true, + "dependencies": { + "@emnapi/runtime": "^1.2.0" + }, + "engines": { + "node": "^18.17.0 || ^20.3.0 || >=21.0.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/@img/sharp-win32-ia32": { + "version": "0.33.5", + "resolved": "https://registry.npmjs.org/@img/sharp-win32-ia32/-/sharp-win32-ia32-0.33.5.tgz", + "integrity": "sha512-T36PblLaTwuVJ/zw/LaH0PdZkRz5rd3SmMHX8GSmR7vtNSP5Z6bQkExdSK7xGWyxLw4sUknBuugTelgw2faBbQ==", + "cpu": [ + "ia32" + ], + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": "^18.17.0 || ^20.3.0 || >=21.0.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/@img/sharp-win32-x64": { + "version": "0.33.5", + "resolved": "https://registry.npmjs.org/@img/sharp-win32-x64/-/sharp-win32-x64-0.33.5.tgz", + "integrity": "sha512-MpY/o8/8kj+EcnxwvrP4aTJSWw/aZ7JIGR4aBeZkZw5B7/Jn+tY9/VNwtcoGmdT7GfggGIU4kygOMSbYnOrAbg==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": "^18.17.0 || ^20.3.0 || >=21.0.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/@isaacs/cliui": { + "version": "8.0.2", + "resolved": "https://registry.npmjs.org/@isaacs/cliui/-/cliui-8.0.2.tgz", + "integrity": "sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==", + "dev": true, + "dependencies": { + "string-width": "^5.1.2", + "string-width-cjs": "npm:string-width@^4.2.0", + "strip-ansi": "^7.0.1", + "strip-ansi-cjs": "npm:strip-ansi@^6.0.1", + "wrap-ansi": "^8.1.0", + "wrap-ansi-cjs": "npm:wrap-ansi@^7.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@jimp/bmp": { + "version": "0.22.12", + "resolved": "https://registry.npmjs.org/@jimp/bmp/-/bmp-0.22.12.tgz", + "integrity": "sha512-aeI64HD0npropd+AR76MCcvvRaa+Qck6loCOS03CkkxGHN5/r336qTM5HPUdHKMDOGzqknuVPA8+kK1t03z12g==", + "dev": true, + "dependencies": { + "@jimp/utils": "^0.22.12", + "bmp-js": "^0.1.0" + }, + "peerDependencies": { + "@jimp/custom": ">=0.3.5" + } + }, + "node_modules/@jimp/core": { + "version": "0.22.12", + "resolved": "https://registry.npmjs.org/@jimp/core/-/core-0.22.12.tgz", + "integrity": "sha512-l0RR0dOPyzMKfjUW1uebzueFEDtCOj9fN6pyTYWWOM/VS4BciXQ1VVrJs8pO3kycGYZxncRKhCoygbNr8eEZQA==", + "dev": true, + "dependencies": { + "@jimp/utils": "^0.22.12", + "any-base": "^1.1.0", + "buffer": "^5.2.0", + "exif-parser": "^0.1.12", + "file-type": "^16.5.4", + "isomorphic-fetch": "^3.0.0", + "pixelmatch": "^4.0.2", + "tinycolor2": "^1.6.0" + } + }, + "node_modules/@jimp/custom": { + "version": "0.22.12", + "resolved": "https://registry.npmjs.org/@jimp/custom/-/custom-0.22.12.tgz", + "integrity": "sha512-xcmww1O/JFP2MrlGUMd3Q78S3Qu6W3mYTXYuIqFq33EorgYHV/HqymHfXy9GjiCJ7OI+7lWx6nYFOzU7M4rd1Q==", + "dev": true, + "dependencies": { + "@jimp/core": "^0.22.12" + } + }, + "node_modules/@jimp/gif": { + "version": "0.22.12", + "resolved": "https://registry.npmjs.org/@jimp/gif/-/gif-0.22.12.tgz", + "integrity": "sha512-y6BFTJgch9mbor2H234VSjd9iwAhaNf/t3US5qpYIs0TSbAvM02Fbc28IaDETj9+4YB4676sz4RcN/zwhfu1pg==", + "dev": true, + "dependencies": { + "@jimp/utils": "^0.22.12", + "gifwrap": "^0.10.1", + "omggif": "^1.0.9" + }, + "peerDependencies": { + "@jimp/custom": ">=0.3.5" + } + }, + "node_modules/@jimp/jpeg": { + "version": "0.22.12", + "resolved": "https://registry.npmjs.org/@jimp/jpeg/-/jpeg-0.22.12.tgz", + "integrity": "sha512-Rq26XC/uQWaQKyb/5lksCTCxXhtY01NJeBN+dQv5yNYedN0i7iYu+fXEoRsfaJ8xZzjoANH8sns7rVP4GE7d/Q==", + "dev": true, + "dependencies": { + "@jimp/utils": "^0.22.12", + "jpeg-js": "^0.4.4" + }, + "peerDependencies": { + "@jimp/custom": ">=0.3.5" + } + }, + "node_modules/@jimp/plugin-blit": { + "version": "0.22.12", + "resolved": "https://registry.npmjs.org/@jimp/plugin-blit/-/plugin-blit-0.22.12.tgz", + "integrity": "sha512-xslz2ZoFZOPLY8EZ4dC29m168BtDx95D6K80TzgUi8gqT7LY6CsajWO0FAxDwHz6h0eomHMfyGX0stspBrTKnQ==", + "dev": true, + "dependencies": { + "@jimp/utils": "^0.22.12" + }, + "peerDependencies": { + "@jimp/custom": ">=0.3.5" + } + }, + "node_modules/@jimp/plugin-blur": { + "version": "0.22.12", + "resolved": "https://registry.npmjs.org/@jimp/plugin-blur/-/plugin-blur-0.22.12.tgz", + "integrity": "sha512-S0vJADTuh1Q9F+cXAwFPlrKWzDj2F9t/9JAbUvaaDuivpyWuImEKXVz5PUZw2NbpuSHjwssbTpOZ8F13iJX4uw==", + "dev": true, + "dependencies": { + "@jimp/utils": "^0.22.12" + }, + "peerDependencies": { + "@jimp/custom": ">=0.3.5" + } + }, + "node_modules/@jimp/plugin-circle": { + "version": "0.22.12", + "resolved": "https://registry.npmjs.org/@jimp/plugin-circle/-/plugin-circle-0.22.12.tgz", + "integrity": "sha512-SWVXx1yiuj5jZtMijqUfvVOJBwOifFn0918ou4ftoHgegc5aHWW5dZbYPjvC9fLpvz7oSlptNl2Sxr1zwofjTg==", + "dev": true, + "dependencies": { + "@jimp/utils": "^0.22.12" + }, + "peerDependencies": { + "@jimp/custom": ">=0.3.5" + } + }, + "node_modules/@jimp/plugin-color": { + "version": "0.22.12", + "resolved": "https://registry.npmjs.org/@jimp/plugin-color/-/plugin-color-0.22.12.tgz", + "integrity": "sha512-xImhTE5BpS8xa+mAN6j4sMRWaUgUDLoaGHhJhpC+r7SKKErYDR0WQV4yCE4gP+N0gozD0F3Ka1LUSaMXrn7ZIA==", + "dev": true, + "dependencies": { + "@jimp/utils": "^0.22.12", + "tinycolor2": "^1.6.0" + }, + "peerDependencies": { + "@jimp/custom": ">=0.3.5" + } + }, + "node_modules/@jimp/plugin-contain": { + "version": "0.22.12", + "resolved": "https://registry.npmjs.org/@jimp/plugin-contain/-/plugin-contain-0.22.12.tgz", + "integrity": "sha512-Eo3DmfixJw3N79lWk8q/0SDYbqmKt1xSTJ69yy8XLYQj9svoBbyRpSnHR+n9hOw5pKXytHwUW6nU4u1wegHNoQ==", + "dev": true, + "dependencies": { + "@jimp/utils": "^0.22.12" + }, + "peerDependencies": { + "@jimp/custom": ">=0.3.5", + "@jimp/plugin-blit": ">=0.3.5", + "@jimp/plugin-resize": ">=0.3.5", + "@jimp/plugin-scale": ">=0.3.5" + } + }, + "node_modules/@jimp/plugin-cover": { + "version": "0.22.12", + "resolved": "https://registry.npmjs.org/@jimp/plugin-cover/-/plugin-cover-0.22.12.tgz", + "integrity": "sha512-z0w/1xH/v/knZkpTNx+E8a7fnasQ2wHG5ze6y5oL2dhH1UufNua8gLQXlv8/W56+4nJ1brhSd233HBJCo01BXA==", + "dev": true, + "dependencies": { + "@jimp/utils": "^0.22.12" + }, + "peerDependencies": { + "@jimp/custom": ">=0.3.5", + "@jimp/plugin-crop": ">=0.3.5", + "@jimp/plugin-resize": ">=0.3.5", + "@jimp/plugin-scale": ">=0.3.5" + } + }, + "node_modules/@jimp/plugin-crop": { + "version": "0.22.12", + "resolved": "https://registry.npmjs.org/@jimp/plugin-crop/-/plugin-crop-0.22.12.tgz", + "integrity": "sha512-FNuUN0OVzRCozx8XSgP9MyLGMxNHHJMFt+LJuFjn1mu3k0VQxrzqbN06yIl46TVejhyAhcq5gLzqmSCHvlcBVw==", + "dev": true, + "dependencies": { + "@jimp/utils": "^0.22.12" + }, + "peerDependencies": { + "@jimp/custom": ">=0.3.5" + } + }, + "node_modules/@jimp/plugin-displace": { + "version": "0.22.12", + "resolved": "https://registry.npmjs.org/@jimp/plugin-displace/-/plugin-displace-0.22.12.tgz", + "integrity": "sha512-qpRM8JRicxfK6aPPqKZA6+GzBwUIitiHaZw0QrJ64Ygd3+AsTc7BXr+37k2x7QcyCvmKXY4haUrSIsBug4S3CA==", + "dev": true, + "dependencies": { + "@jimp/utils": "^0.22.12" + }, + "peerDependencies": { + "@jimp/custom": ">=0.3.5" + } + }, + "node_modules/@jimp/plugin-dither": { + "version": "0.22.12", + "resolved": "https://registry.npmjs.org/@jimp/plugin-dither/-/plugin-dither-0.22.12.tgz", + "integrity": "sha512-jYgGdSdSKl1UUEanX8A85v4+QUm+PE8vHFwlamaKk89s+PXQe7eVE3eNeSZX4inCq63EHL7cX580dMqkoC3ZLw==", + "dev": true, + "dependencies": { + "@jimp/utils": "^0.22.12" + }, + "peerDependencies": { + "@jimp/custom": ">=0.3.5" + } + }, + "node_modules/@jimp/plugin-fisheye": { + "version": "0.22.12", + "resolved": "https://registry.npmjs.org/@jimp/plugin-fisheye/-/plugin-fisheye-0.22.12.tgz", + "integrity": "sha512-LGuUTsFg+fOp6KBKrmLkX4LfyCy8IIsROwoUvsUPKzutSqMJnsm3JGDW2eOmWIS/jJpPaeaishjlxvczjgII+Q==", + "dev": true, + "dependencies": { + "@jimp/utils": "^0.22.12" + }, + "peerDependencies": { + "@jimp/custom": ">=0.3.5" + } + }, + "node_modules/@jimp/plugin-flip": { + "version": "0.22.12", + "resolved": "https://registry.npmjs.org/@jimp/plugin-flip/-/plugin-flip-0.22.12.tgz", + "integrity": "sha512-m251Rop7GN8W0Yo/rF9LWk6kNclngyjIJs/VXHToGQ6EGveOSTSQaX2Isi9f9lCDLxt+inBIb7nlaLLxnvHX8Q==", + "dev": true, + "dependencies": { + "@jimp/utils": "^0.22.12" + }, + "peerDependencies": { + "@jimp/custom": ">=0.3.5", + "@jimp/plugin-rotate": ">=0.3.5" + } + }, + "node_modules/@jimp/plugin-gaussian": { + "version": "0.22.12", + "resolved": "https://registry.npmjs.org/@jimp/plugin-gaussian/-/plugin-gaussian-0.22.12.tgz", + "integrity": "sha512-sBfbzoOmJ6FczfG2PquiK84NtVGeScw97JsCC3rpQv1PHVWyW+uqWFF53+n3c8Y0P2HWlUjflEla2h/vWShvhg==", + "dev": true, + "dependencies": { + "@jimp/utils": "^0.22.12" + }, + "peerDependencies": { + "@jimp/custom": ">=0.3.5" + } + }, + "node_modules/@jimp/plugin-invert": { + "version": "0.22.12", + "resolved": "https://registry.npmjs.org/@jimp/plugin-invert/-/plugin-invert-0.22.12.tgz", + "integrity": "sha512-N+6rwxdB+7OCR6PYijaA/iizXXodpxOGvT/smd/lxeXsZ/empHmFFFJ/FaXcYh19Tm04dGDaXcNF/dN5nm6+xQ==", + "dev": true, + "dependencies": { + "@jimp/utils": "^0.22.12" + }, + "peerDependencies": { + "@jimp/custom": ">=0.3.5" + } + }, + "node_modules/@jimp/plugin-mask": { + "version": "0.22.12", + "resolved": "https://registry.npmjs.org/@jimp/plugin-mask/-/plugin-mask-0.22.12.tgz", + "integrity": "sha512-4AWZg+DomtpUA099jRV8IEZUfn1wLv6+nem4NRJC7L/82vxzLCgXKTxvNvBcNmJjT9yS1LAAmiJGdWKXG63/NA==", + "dev": true, + "dependencies": { + "@jimp/utils": "^0.22.12" + }, + "peerDependencies": { + "@jimp/custom": ">=0.3.5" + } + }, + "node_modules/@jimp/plugin-normalize": { + "version": "0.22.12", + "resolved": "https://registry.npmjs.org/@jimp/plugin-normalize/-/plugin-normalize-0.22.12.tgz", + "integrity": "sha512-0So0rexQivnWgnhacX4cfkM2223YdExnJTTy6d06WbkfZk5alHUx8MM3yEzwoCN0ErO7oyqEWRnEkGC+As1FtA==", + "dev": true, + "dependencies": { + "@jimp/utils": "^0.22.12" + }, + "peerDependencies": { + "@jimp/custom": ">=0.3.5" + } + }, + "node_modules/@jimp/plugin-print": { + "version": "0.22.12", + "resolved": "https://registry.npmjs.org/@jimp/plugin-print/-/plugin-print-0.22.12.tgz", + "integrity": "sha512-c7TnhHlxm87DJeSnwr/XOLjJU/whoiKYY7r21SbuJ5nuH+7a78EW1teOaj5gEr2wYEd7QtkFqGlmyGXY/YclyQ==", + "dev": true, + "dependencies": { + "@jimp/utils": "^0.22.12", + "load-bmfont": "^1.4.1" + }, + "peerDependencies": { "@jimp/custom": ">=0.3.5", "@jimp/plugin-blit": ">=0.3.5" } }, - "node_modules/@jimp/plugin-resize": { - "version": "0.22.10", - "resolved": "https://registry.npmjs.org/@jimp/plugin-resize/-/plugin-resize-0.22.10.tgz", - "integrity": "sha512-ixomxVcnAONXDgaq0opvAx4UAOiEhOA/tipuhFFOvPKFd4yf1BAnEviB5maB0SBHHkJXPUSzDp/73xVTMGSe7g==", - "dev": true, + "node_modules/@jimp/plugin-resize": { + "version": "0.22.12", + "resolved": "https://registry.npmjs.org/@jimp/plugin-resize/-/plugin-resize-0.22.12.tgz", + "integrity": "sha512-3NyTPlPbTnGKDIbaBgQ3HbE6wXbAlFfxHVERmrbqAi8R3r6fQPxpCauA8UVDnieg5eo04D0T8nnnNIX//i/sXg==", + "dev": true, + "dependencies": { + "@jimp/utils": "^0.22.12" + }, + "peerDependencies": { + "@jimp/custom": ">=0.3.5" + } + }, + "node_modules/@jimp/plugin-rotate": { + "version": "0.22.12", + "resolved": "https://registry.npmjs.org/@jimp/plugin-rotate/-/plugin-rotate-0.22.12.tgz", + "integrity": "sha512-9YNEt7BPAFfTls2FGfKBVgwwLUuKqy+E8bDGGEsOqHtbuhbshVGxN2WMZaD4gh5IDWvR+emmmPPWGgaYNYt1gA==", + "dev": true, + "dependencies": { + "@jimp/utils": "^0.22.12" + }, + "peerDependencies": { + "@jimp/custom": ">=0.3.5", + "@jimp/plugin-blit": ">=0.3.5", + "@jimp/plugin-crop": ">=0.3.5", + "@jimp/plugin-resize": ">=0.3.5" + } + }, + "node_modules/@jimp/plugin-scale": { + "version": "0.22.12", + "resolved": "https://registry.npmjs.org/@jimp/plugin-scale/-/plugin-scale-0.22.12.tgz", + "integrity": "sha512-dghs92qM6MhHj0HrV2qAwKPMklQtjNpoYgAB94ysYpsXslhRTiPisueSIELRwZGEr0J0VUxpUY7HgJwlSIgGZw==", + "dev": true, + "dependencies": { + "@jimp/utils": "^0.22.12" + }, + "peerDependencies": { + "@jimp/custom": ">=0.3.5", + "@jimp/plugin-resize": ">=0.3.5" + } + }, + "node_modules/@jimp/plugin-shadow": { + "version": "0.22.12", + "resolved": "https://registry.npmjs.org/@jimp/plugin-shadow/-/plugin-shadow-0.22.12.tgz", + "integrity": "sha512-FX8mTJuCt7/3zXVoeD/qHlm4YH2bVqBuWQHXSuBK054e7wFRnRnbSLPUqAwSeYP3lWqpuQzJtgiiBxV3+WWwTg==", + "dev": true, + "dependencies": { + "@jimp/utils": "^0.22.12" + }, + "peerDependencies": { + "@jimp/custom": ">=0.3.5", + "@jimp/plugin-blur": ">=0.3.5", + "@jimp/plugin-resize": ">=0.3.5" + } + }, + "node_modules/@jimp/plugin-threshold": { + "version": "0.22.12", + "resolved": "https://registry.npmjs.org/@jimp/plugin-threshold/-/plugin-threshold-0.22.12.tgz", + "integrity": "sha512-4x5GrQr1a/9L0paBC/MZZJjjgjxLYrqSmWd+e+QfAEPvmRxdRoQ5uKEuNgXnm9/weHQBTnQBQsOY2iFja+XGAw==", + "dev": true, + "dependencies": { + "@jimp/utils": "^0.22.12" + }, + "peerDependencies": { + "@jimp/custom": ">=0.3.5", + "@jimp/plugin-color": ">=0.8.0", + "@jimp/plugin-resize": ">=0.8.0" + } + }, + "node_modules/@jimp/plugins": { + "version": "0.22.12", + "resolved": "https://registry.npmjs.org/@jimp/plugins/-/plugins-0.22.12.tgz", + "integrity": "sha512-yBJ8vQrDkBbTgQZLty9k4+KtUQdRjsIDJSPjuI21YdVeqZxYywifHl4/XWILoTZsjTUASQcGoH0TuC0N7xm3ww==", + "dev": true, + "dependencies": { + "@jimp/plugin-blit": "^0.22.12", + "@jimp/plugin-blur": "^0.22.12", + "@jimp/plugin-circle": "^0.22.12", + "@jimp/plugin-color": "^0.22.12", + "@jimp/plugin-contain": "^0.22.12", + "@jimp/plugin-cover": "^0.22.12", + "@jimp/plugin-crop": "^0.22.12", + "@jimp/plugin-displace": "^0.22.12", + "@jimp/plugin-dither": "^0.22.12", + "@jimp/plugin-fisheye": "^0.22.12", + "@jimp/plugin-flip": "^0.22.12", + "@jimp/plugin-gaussian": "^0.22.12", + "@jimp/plugin-invert": "^0.22.12", + "@jimp/plugin-mask": "^0.22.12", + "@jimp/plugin-normalize": "^0.22.12", + "@jimp/plugin-print": "^0.22.12", + "@jimp/plugin-resize": "^0.22.12", + "@jimp/plugin-rotate": "^0.22.12", + "@jimp/plugin-scale": "^0.22.12", + "@jimp/plugin-shadow": "^0.22.12", + "@jimp/plugin-threshold": "^0.22.12", + "timm": "^1.6.1" + }, + "peerDependencies": { + "@jimp/custom": ">=0.3.5" + } + }, + "node_modules/@jimp/png": { + "version": "0.22.12", + "resolved": "https://registry.npmjs.org/@jimp/png/-/png-0.22.12.tgz", + "integrity": "sha512-Mrp6dr3UTn+aLK8ty/dSKELz+Otdz1v4aAXzV5q53UDD2rbB5joKVJ/ChY310B+eRzNxIovbUF1KVrUsYdE8Hg==", + "dev": true, + "dependencies": { + "@jimp/utils": "^0.22.12", + "pngjs": "^6.0.0" + }, + "peerDependencies": { + "@jimp/custom": ">=0.3.5" + } + }, + "node_modules/@jimp/tiff": { + "version": "0.22.12", + "resolved": "https://registry.npmjs.org/@jimp/tiff/-/tiff-0.22.12.tgz", + "integrity": "sha512-E1LtMh4RyJsoCAfAkBRVSYyZDTtLq9p9LUiiYP0vPtXyxX4BiYBUYihTLSBlCQg5nF2e4OpQg7SPrLdJ66u7jg==", + "dev": true, + "dependencies": { + "utif2": "^4.0.1" + }, + "peerDependencies": { + "@jimp/custom": ">=0.3.5" + } + }, + "node_modules/@jimp/types": { + "version": "0.22.12", + "resolved": "https://registry.npmjs.org/@jimp/types/-/types-0.22.12.tgz", + "integrity": "sha512-wwKYzRdElE1MBXFREvCto5s699izFHNVvALUv79GXNbsOVqlwlOxlWJ8DuyOGIXoLP4JW/m30YyuTtfUJgMRMA==", + "dev": true, + "dependencies": { + "@jimp/bmp": "^0.22.12", + "@jimp/gif": "^0.22.12", + "@jimp/jpeg": "^0.22.12", + "@jimp/png": "^0.22.12", + "@jimp/tiff": "^0.22.12", + "timm": "^1.6.1" + }, + "peerDependencies": { + "@jimp/custom": ">=0.3.5" + } + }, + "node_modules/@jimp/utils": { + "version": "0.22.12", + "resolved": "https://registry.npmjs.org/@jimp/utils/-/utils-0.22.12.tgz", + "integrity": "sha512-yJ5cWUknGnilBq97ZXOyOS0HhsHOyAyjHwYfHxGbSyMTohgQI6sVyE8KPgDwH8HHW/nMKXk8TrSwAE71zt716Q==", + "dev": true, + "dependencies": { + "regenerator-runtime": "^0.13.3" + } + }, + "node_modules/@mongodb-js/saslprep": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@mongodb-js/saslprep/-/saslprep-1.2.0.tgz", + "integrity": "sha512-+ywrb0AqkfaYuhHs6LxKWgqbh3I72EpEgESCw37o+9qPx9WTCkgDm2B+eMrwehGtHBWHFU4GXvnSCNiFhhausg==", + "optional": true, + "peer": true, + "dependencies": { + "sparse-bitfield": "^3.0.3" + } + }, + "node_modules/@ngageoint/mage.service": { + "version": "6.3.0-beta.8", + "resolved": "https://registry.npmjs.org/@ngageoint/mage.service/-/mage.service-6.3.0-beta.8.tgz", + "integrity": "sha512-Jjyn5uROFnlvAZJ7j1LqSxiWk3PWDzM16/ukX0R/P9JLeOax2HOKwBbQQOEh/5IXk5EkbygL0j9WA5wTgiJ/HQ==", + "hasShrinkwrap": true, + "peer": true, + "dependencies": { + "@ngageoint/geopackage": "4.2.6", + "@ngageoint/mongodb-migrations": "1.0.0", + "@node-saml/passport-saml": "4.0.4", + "@turf/centroid": "6.5.0", + "@turf/kinks": "6.5.0", + "@types/geojson": "7946.0.16", + "@types/json-schema": "7.0.15", + "@types/mime-types": "2.1.4", + "@xmldom/xmldom": "0.9.8", + "adm-zip": "0.5.16", + "archiver": "5.3.2", + "async": "3.2.6", + "async-lock": "1.4.1", + "base-64": "1.0.0", + "busboy": "1.6.0", + "cfenv": "1.2.4", + "commander": "8.3.0", + "express": "4.21.2", + "express-session": "1.18.1", + "file-type": "16.5.4", + "fs-extra": "4.0.3", + "geojson": "0.5.0", + "geojson-validation": "1.0.2", + "json2csv": "4.5.4", + "jsonwebtoken": "9.0.2", + "lodash": "4.17.21", + "mgrs": "1.0.0", + "mime-types": "2.1.35", + "moment": "2.30.1", + "mongoose": "6.13.8", + "multer": "1.4.5-lts.1", + "node-fetch": "2.7.0", + "passport": "0.7.0", + "passport-anonymous": "1.0.1", + "passport-http-bearer": "1.0.1", + "passport-ldapauth": "3.0.1", + "passport-local": "1.0.0", + "passport-oauth2": "1.8.0", + "passport-openidconnect": "0.1.2", + "pug": "3.0.3", + "rfc5646": "3.0.0", + "superagent": "8.1.2", + "svg-captcha": "1.4.0", + "uniqid": "5.4.0", + "walk": "2.3.15", + "winston": "1.1.2", + "wkx": "0.5.0", + "wms-capabilities": "0.6.0", + "xmlbuilder2": "3.1.1", + "xpath": "0.0.34", + "yaml": "1.10.2" + }, + "bin": { + "mage.service": "bin/mage.service.js" + }, + "engines": { + "node": ">= 16", + "npm": ">= 8" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@aws-crypto/sha256-browser": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/sha256-browser/-/sha256-browser-5.2.0.tgz", + "integrity": "sha512-AXfN/lGotSQwu6HNcEsIASo7kWXZ5HYWvfOmSNKDsEqC4OashTp8alTmaz+F7TC2L083SFv5RdB+qU3Vs1kZqw==", + "optional": true, + "peer": true, + "dependencies": { + "@aws-crypto/sha256-js": "^5.2.0", + "@aws-crypto/supports-web-crypto": "^5.2.0", + "@aws-crypto/util": "^5.2.0", + "@aws-sdk/types": "^3.222.0", + "@aws-sdk/util-locate-window": "^3.0.0", + "@smithy/util-utf8": "^2.0.0", + "tslib": "^2.6.2" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@aws-crypto/sha256-browser/node_modules/@smithy/is-array-buffer": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@smithy/is-array-buffer/-/is-array-buffer-2.2.0.tgz", + "integrity": "sha512-GGP3O9QFD24uGeAXYUjwSTXARoqpZykHadOmA8G5vfJPK0/DC67qa//0qvqrJzL1xc8WQWX7/yc7fwudjPHPhA==", + "optional": true, + "peer": true, + "dependencies": { + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@aws-crypto/sha256-browser/node_modules/@smithy/util-buffer-from": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@smithy/util-buffer-from/-/util-buffer-from-2.2.0.tgz", + "integrity": "sha512-IJdWBbTcMQ6DA0gdNhh/BwrLkDR+ADW5Kr1aZmd4k3DIF6ezMV4R2NIAmT08wQJ3yUK82thHWmC/TnK/wpMMIA==", + "optional": true, + "peer": true, + "dependencies": { + "@smithy/is-array-buffer": "^2.2.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@aws-crypto/sha256-browser/node_modules/@smithy/util-utf8": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/@smithy/util-utf8/-/util-utf8-2.3.0.tgz", + "integrity": "sha512-R8Rdn8Hy72KKcebgLiv8jQcQkXoLMOGGv5uI1/k0l+snqkOzQ1R0ChUBCxWMlBsFMekWjq0wRudIweFs7sKT5A==", + "optional": true, + "peer": true, + "dependencies": { + "@smithy/util-buffer-from": "^2.2.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@aws-crypto/sha256-js": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/sha256-js/-/sha256-js-5.2.0.tgz", + "integrity": "sha512-FFQQyu7edu4ufvIZ+OadFpHHOt+eSTBaYaki44c+akjg7qZg9oOQeLlk77F6tSYqjDAFClrHJk9tMf0HdVyOvA==", + "optional": true, + "peer": true, "dependencies": { - "@jimp/utils": "^0.22.10" + "@aws-crypto/util": "^5.2.0", + "@aws-sdk/types": "^3.222.0", + "tslib": "^2.6.2" }, - "peerDependencies": { - "@jimp/custom": ">=0.3.5" + "engines": { + "node": ">=16.0.0" } }, - "node_modules/@jimp/plugin-rotate": { - "version": "0.22.10", - "resolved": "https://registry.npmjs.org/@jimp/plugin-rotate/-/plugin-rotate-0.22.10.tgz", - "integrity": "sha512-eeFX8dnRyf3LAdsdXWKWuN18hLRg8zy1cP0cP9rHzQVWRK7ck/QsLxK1vHq7MADGwQalNaNTJ9SQxH6c8mz6jw==", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/@aws-crypto/supports-web-crypto": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/supports-web-crypto/-/supports-web-crypto-5.2.0.tgz", + "integrity": "sha512-iAvUotm021kM33eCdNfwIN//F77/IADDSs58i+MDaOqFrVjZo9bAal0NK7HurRuWLLpF1iLX7gbWrjHjeo+YFg==", + "optional": true, + "peer": true, + "dependencies": { + "tslib": "^2.6.2" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@aws-crypto/util": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/util/-/util-5.2.0.tgz", + "integrity": "sha512-4RkU9EsI6ZpBve5fseQlGNUWKMa1RLPQ1dnjnQoe07ldfIzcsGb5hC5W0Dm7u423KWzawlrpbjXBrXCEv9zazQ==", + "optional": true, + "peer": true, + "dependencies": { + "@aws-sdk/types": "^3.222.0", + "@smithy/util-utf8": "^2.0.0", + "tslib": "^2.6.2" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@aws-crypto/util/node_modules/@smithy/is-array-buffer": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@smithy/is-array-buffer/-/is-array-buffer-2.2.0.tgz", + "integrity": "sha512-GGP3O9QFD24uGeAXYUjwSTXARoqpZykHadOmA8G5vfJPK0/DC67qa//0qvqrJzL1xc8WQWX7/yc7fwudjPHPhA==", + "optional": true, + "peer": true, "dependencies": { - "@jimp/utils": "^0.22.10" + "tslib": "^2.6.2" }, - "peerDependencies": { - "@jimp/custom": ">=0.3.5", - "@jimp/plugin-blit": ">=0.3.5", - "@jimp/plugin-crop": ">=0.3.5", - "@jimp/plugin-resize": ">=0.3.5" + "engines": { + "node": ">=14.0.0" } }, - "node_modules/@jimp/plugin-scale": { - "version": "0.22.10", - "resolved": "https://registry.npmjs.org/@jimp/plugin-scale/-/plugin-scale-0.22.10.tgz", - "integrity": "sha512-TG/H0oUN69C9ArBCZg4PmuoixFVKIiru8282KzSB/Tp1I0xwX0XLTv3dJ5pobPlIgPcB+TmD4xAIdkCT4rtWxg==", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/@aws-crypto/util/node_modules/@smithy/util-buffer-from": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@smithy/util-buffer-from/-/util-buffer-from-2.2.0.tgz", + "integrity": "sha512-IJdWBbTcMQ6DA0gdNhh/BwrLkDR+ADW5Kr1aZmd4k3DIF6ezMV4R2NIAmT08wQJ3yUK82thHWmC/TnK/wpMMIA==", + "optional": true, + "peer": true, "dependencies": { - "@jimp/utils": "^0.22.10" + "@smithy/is-array-buffer": "^2.2.0", + "tslib": "^2.6.2" }, - "peerDependencies": { - "@jimp/custom": ">=0.3.5", - "@jimp/plugin-resize": ">=0.3.5" + "engines": { + "node": ">=14.0.0" } }, - "node_modules/@jimp/plugin-shadow": { - "version": "0.22.10", - "resolved": "https://registry.npmjs.org/@jimp/plugin-shadow/-/plugin-shadow-0.22.10.tgz", - "integrity": "sha512-TN9xm6fI7XfxbMUQqFPZjv59Xdpf0tSiAQdINB4g6pJMWiVANR/74OtDONoy3KKpenu5Y38s+FkrtID/KcQAhw==", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/@aws-crypto/util/node_modules/@smithy/util-utf8": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/@smithy/util-utf8/-/util-utf8-2.3.0.tgz", + "integrity": "sha512-R8Rdn8Hy72KKcebgLiv8jQcQkXoLMOGGv5uI1/k0l+snqkOzQ1R0ChUBCxWMlBsFMekWjq0wRudIweFs7sKT5A==", + "optional": true, + "peer": true, "dependencies": { - "@jimp/utils": "^0.22.10" + "@smithy/util-buffer-from": "^2.2.0", + "tslib": "^2.6.2" }, - "peerDependencies": { - "@jimp/custom": ">=0.3.5", - "@jimp/plugin-blur": ">=0.3.5", - "@jimp/plugin-resize": ">=0.3.5" + "engines": { + "node": ">=14.0.0" } }, - "node_modules/@jimp/plugin-threshold": { - "version": "0.22.10", - "resolved": "https://registry.npmjs.org/@jimp/plugin-threshold/-/plugin-threshold-0.22.10.tgz", - "integrity": "sha512-DA2lSnU0TgIRbAgmXaxroYw3Ad6J2DOFEoJp0NleSm2h3GWbZEE5yW9U2B6hD3iqn4AenG4E2b2WzHXZyzSutw==", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/@aws-sdk/client-cognito-identity": { + "version": "3.606.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-cognito-identity/-/client-cognito-identity-3.606.0.tgz", + "integrity": "sha512-CJ3kovUg7HAn3trqo0WxVw3PJoaHxiGU1U+Ok8Vx/sL81+auyyiasT09M/NcchRqwAooKvUi44sVD0ih7Zi9Nw==", + "optional": true, + "peer": true, "dependencies": { - "@jimp/utils": "^0.22.10" + "@aws-crypto/sha256-browser": "5.2.0", + "@aws-crypto/sha256-js": "5.2.0", + "@aws-sdk/client-sso-oidc": "3.606.0", + "@aws-sdk/client-sts": "3.606.0", + "@aws-sdk/core": "3.598.0", + "@aws-sdk/credential-provider-node": "3.600.0", + "@aws-sdk/middleware-host-header": "3.598.0", + "@aws-sdk/middleware-logger": "3.598.0", + "@aws-sdk/middleware-recursion-detection": "3.598.0", + "@aws-sdk/middleware-user-agent": "3.598.0", + "@aws-sdk/region-config-resolver": "3.598.0", + "@aws-sdk/types": "3.598.0", + "@aws-sdk/util-endpoints": "3.598.0", + "@aws-sdk/util-user-agent-browser": "3.598.0", + "@aws-sdk/util-user-agent-node": "3.598.0", + "@smithy/config-resolver": "^3.0.2", + "@smithy/core": "^2.2.1", + "@smithy/fetch-http-handler": "^3.0.2", + "@smithy/hash-node": "^3.0.1", + "@smithy/invalid-dependency": "^3.0.1", + "@smithy/middleware-content-length": "^3.0.1", + "@smithy/middleware-endpoint": "^3.0.2", + "@smithy/middleware-retry": "^3.0.4", + "@smithy/middleware-serde": "^3.0.1", + "@smithy/middleware-stack": "^3.0.1", + "@smithy/node-config-provider": "^3.1.1", + "@smithy/node-http-handler": "^3.0.1", + "@smithy/protocol-http": "^4.0.1", + "@smithy/smithy-client": "^3.1.2", + "@smithy/types": "^3.1.0", + "@smithy/url-parser": "^3.0.1", + "@smithy/util-base64": "^3.0.0", + "@smithy/util-body-length-browser": "^3.0.0", + "@smithy/util-body-length-node": "^3.0.0", + "@smithy/util-defaults-mode-browser": "^3.0.4", + "@smithy/util-defaults-mode-node": "^3.0.4", + "@smithy/util-endpoints": "^2.0.2", + "@smithy/util-middleware": "^3.0.1", + "@smithy/util-retry": "^3.0.1", + "@smithy/util-utf8": "^3.0.0", + "tslib": "^2.6.2" }, - "peerDependencies": { - "@jimp/custom": ">=0.3.5", - "@jimp/plugin-color": ">=0.8.0", - "@jimp/plugin-resize": ">=0.8.0" + "engines": { + "node": ">=16.0.0" } }, - "node_modules/@jimp/plugins": { - "version": "0.22.10", - "resolved": "https://registry.npmjs.org/@jimp/plugins/-/plugins-0.22.10.tgz", - "integrity": "sha512-KDMZyM6pmvS8freB+UBLko1TO/k4D7URS/nphCozuH+P7i3UMe7NdckXKJ8u+WD6sqN0YFYvBehpkpnUiw/91w==", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/@aws-sdk/client-sso": { + "version": "3.598.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.598.0.tgz", + "integrity": "sha512-nOI5lqPYa+YZlrrzwAJywJSw3MKVjvu6Ge2fCqQUNYMfxFB0NAaDFnl0EPjXi+sEbtCuz/uWE77poHbqiZ+7Iw==", + "optional": true, + "peer": true, "dependencies": { - "@jimp/plugin-blit": "^0.22.10", - "@jimp/plugin-blur": "^0.22.10", - "@jimp/plugin-circle": "^0.22.10", - "@jimp/plugin-color": "^0.22.10", - "@jimp/plugin-contain": "^0.22.10", - "@jimp/plugin-cover": "^0.22.10", - "@jimp/plugin-crop": "^0.22.10", - "@jimp/plugin-displace": "^0.22.10", - "@jimp/plugin-dither": "^0.22.10", - "@jimp/plugin-fisheye": "^0.22.10", - "@jimp/plugin-flip": "^0.22.10", - "@jimp/plugin-gaussian": "^0.22.10", - "@jimp/plugin-invert": "^0.22.10", - "@jimp/plugin-mask": "^0.22.10", - "@jimp/plugin-normalize": "^0.22.10", - "@jimp/plugin-print": "^0.22.10", - "@jimp/plugin-resize": "^0.22.10", - "@jimp/plugin-rotate": "^0.22.10", - "@jimp/plugin-scale": "^0.22.10", - "@jimp/plugin-shadow": "^0.22.10", - "@jimp/plugin-threshold": "^0.22.10", - "timm": "^1.6.1" + "@aws-crypto/sha256-browser": "5.2.0", + "@aws-crypto/sha256-js": "5.2.0", + "@aws-sdk/core": "3.598.0", + "@aws-sdk/middleware-host-header": "3.598.0", + "@aws-sdk/middleware-logger": "3.598.0", + "@aws-sdk/middleware-recursion-detection": "3.598.0", + "@aws-sdk/middleware-user-agent": "3.598.0", + "@aws-sdk/region-config-resolver": "3.598.0", + "@aws-sdk/types": "3.598.0", + "@aws-sdk/util-endpoints": "3.598.0", + "@aws-sdk/util-user-agent-browser": "3.598.0", + "@aws-sdk/util-user-agent-node": "3.598.0", + "@smithy/config-resolver": "^3.0.2", + "@smithy/core": "^2.2.1", + "@smithy/fetch-http-handler": "^3.0.2", + "@smithy/hash-node": "^3.0.1", + "@smithy/invalid-dependency": "^3.0.1", + "@smithy/middleware-content-length": "^3.0.1", + "@smithy/middleware-endpoint": "^3.0.2", + "@smithy/middleware-retry": "^3.0.4", + "@smithy/middleware-serde": "^3.0.1", + "@smithy/middleware-stack": "^3.0.1", + "@smithy/node-config-provider": "^3.1.1", + "@smithy/node-http-handler": "^3.0.1", + "@smithy/protocol-http": "^4.0.1", + "@smithy/smithy-client": "^3.1.2", + "@smithy/types": "^3.1.0", + "@smithy/url-parser": "^3.0.1", + "@smithy/util-base64": "^3.0.0", + "@smithy/util-body-length-browser": "^3.0.0", + "@smithy/util-body-length-node": "^3.0.0", + "@smithy/util-defaults-mode-browser": "^3.0.4", + "@smithy/util-defaults-mode-node": "^3.0.4", + "@smithy/util-endpoints": "^2.0.2", + "@smithy/util-middleware": "^3.0.1", + "@smithy/util-retry": "^3.0.1", + "@smithy/util-utf8": "^3.0.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@aws-sdk/client-sso-oidc": { + "version": "3.606.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso-oidc/-/client-sso-oidc-3.606.0.tgz", + "integrity": "sha512-gL1FHPS6hwgMNS/A+Qh5bUyHOeRVOqdb7c6+i+9gR3wtGvt2lvoSm8w5DhS08Xiiacz2AqYRDEapp0xuyCrbBQ==", + "optional": true, + "peer": true, + "dependencies": { + "@aws-crypto/sha256-browser": "5.2.0", + "@aws-crypto/sha256-js": "5.2.0", + "@aws-sdk/core": "3.598.0", + "@aws-sdk/credential-provider-node": "3.600.0", + "@aws-sdk/middleware-host-header": "3.598.0", + "@aws-sdk/middleware-logger": "3.598.0", + "@aws-sdk/middleware-recursion-detection": "3.598.0", + "@aws-sdk/middleware-user-agent": "3.598.0", + "@aws-sdk/region-config-resolver": "3.598.0", + "@aws-sdk/types": "3.598.0", + "@aws-sdk/util-endpoints": "3.598.0", + "@aws-sdk/util-user-agent-browser": "3.598.0", + "@aws-sdk/util-user-agent-node": "3.598.0", + "@smithy/config-resolver": "^3.0.2", + "@smithy/core": "^2.2.1", + "@smithy/fetch-http-handler": "^3.0.2", + "@smithy/hash-node": "^3.0.1", + "@smithy/invalid-dependency": "^3.0.1", + "@smithy/middleware-content-length": "^3.0.1", + "@smithy/middleware-endpoint": "^3.0.2", + "@smithy/middleware-retry": "^3.0.4", + "@smithy/middleware-serde": "^3.0.1", + "@smithy/middleware-stack": "^3.0.1", + "@smithy/node-config-provider": "^3.1.1", + "@smithy/node-http-handler": "^3.0.1", + "@smithy/protocol-http": "^4.0.1", + "@smithy/smithy-client": "^3.1.2", + "@smithy/types": "^3.1.0", + "@smithy/url-parser": "^3.0.1", + "@smithy/util-base64": "^3.0.0", + "@smithy/util-body-length-browser": "^3.0.0", + "@smithy/util-body-length-node": "^3.0.0", + "@smithy/util-defaults-mode-browser": "^3.0.4", + "@smithy/util-defaults-mode-node": "^3.0.4", + "@smithy/util-endpoints": "^2.0.2", + "@smithy/util-middleware": "^3.0.1", + "@smithy/util-retry": "^3.0.1", + "@smithy/util-utf8": "^3.0.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" }, "peerDependencies": { - "@jimp/custom": ">=0.3.5" + "@aws-sdk/client-sts": "^3.606.0" } }, - "node_modules/@jimp/png": { - "version": "0.22.10", - "resolved": "https://registry.npmjs.org/@jimp/png/-/png-0.22.10.tgz", - "integrity": "sha512-RYinU7tZToeeR2g2qAMn42AU+8OUHjXPKZZ9RkmoL4bguA1xyZWaSdr22/FBkmnHhOERRlr02KPDN1OTOYHLDQ==", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/@aws-sdk/client-sts": { + "version": "3.606.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sts/-/client-sts-3.606.0.tgz", + "integrity": "sha512-b11mAhjrkm3MMiAPoMGcmd6vsaz2120lg8rHG/NZCo9vB1K6Kc7WP+a1Q05TRMseer2egTtpWJfn44aVO97VqA==", + "optional": true, + "peer": true, "dependencies": { - "@jimp/utils": "^0.22.10", - "pngjs": "^6.0.0" + "@aws-crypto/sha256-browser": "5.2.0", + "@aws-crypto/sha256-js": "5.2.0", + "@aws-sdk/client-sso-oidc": "3.606.0", + "@aws-sdk/core": "3.598.0", + "@aws-sdk/credential-provider-node": "3.600.0", + "@aws-sdk/middleware-host-header": "3.598.0", + "@aws-sdk/middleware-logger": "3.598.0", + "@aws-sdk/middleware-recursion-detection": "3.598.0", + "@aws-sdk/middleware-user-agent": "3.598.0", + "@aws-sdk/region-config-resolver": "3.598.0", + "@aws-sdk/types": "3.598.0", + "@aws-sdk/util-endpoints": "3.598.0", + "@aws-sdk/util-user-agent-browser": "3.598.0", + "@aws-sdk/util-user-agent-node": "3.598.0", + "@smithy/config-resolver": "^3.0.2", + "@smithy/core": "^2.2.1", + "@smithy/fetch-http-handler": "^3.0.2", + "@smithy/hash-node": "^3.0.1", + "@smithy/invalid-dependency": "^3.0.1", + "@smithy/middleware-content-length": "^3.0.1", + "@smithy/middleware-endpoint": "^3.0.2", + "@smithy/middleware-retry": "^3.0.4", + "@smithy/middleware-serde": "^3.0.1", + "@smithy/middleware-stack": "^3.0.1", + "@smithy/node-config-provider": "^3.1.1", + "@smithy/node-http-handler": "^3.0.1", + "@smithy/protocol-http": "^4.0.1", + "@smithy/smithy-client": "^3.1.2", + "@smithy/types": "^3.1.0", + "@smithy/url-parser": "^3.0.1", + "@smithy/util-base64": "^3.0.0", + "@smithy/util-body-length-browser": "^3.0.0", + "@smithy/util-body-length-node": "^3.0.0", + "@smithy/util-defaults-mode-browser": "^3.0.4", + "@smithy/util-defaults-mode-node": "^3.0.4", + "@smithy/util-endpoints": "^2.0.2", + "@smithy/util-middleware": "^3.0.1", + "@smithy/util-retry": "^3.0.1", + "@smithy/util-utf8": "^3.0.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@aws-sdk/core": { + "version": "3.598.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/core/-/core-3.598.0.tgz", + "integrity": "sha512-HaSjt7puO5Cc7cOlrXFCW0rtA0BM9lvzjl56x0A20Pt+0wxXGeTOZZOkXQIepbrFkV2e/HYukuT9e99vXDm59g==", + "optional": true, + "peer": true, + "dependencies": { + "@smithy/core": "^2.2.1", + "@smithy/protocol-http": "^4.0.1", + "@smithy/signature-v4": "^3.1.0", + "@smithy/smithy-client": "^3.1.2", + "@smithy/types": "^3.1.0", + "fast-xml-parser": "4.2.5", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@aws-sdk/credential-provider-cognito-identity": { + "version": "3.606.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-cognito-identity/-/credential-provider-cognito-identity-3.606.0.tgz", + "integrity": "sha512-4wGvXilFLkozs4/dMnn9NvxZbL9oyyReoF9aR3kGUZ0QVO8cCBp/Zkr8IXZifhVBo9/esJdMFnR9lEXR7Yuleg==", + "optional": true, + "peer": true, + "dependencies": { + "@aws-sdk/client-cognito-identity": "3.606.0", + "@aws-sdk/types": "3.598.0", + "@smithy/property-provider": "^3.1.1", + "@smithy/types": "^3.1.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@aws-sdk/credential-provider-env": { + "version": "3.598.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-env/-/credential-provider-env-3.598.0.tgz", + "integrity": "sha512-vi1khgn7yXzLCcgSIzQrrtd2ilUM0dWodxj3PQ6BLfP0O+q1imO3hG1nq7DVyJtq7rFHs6+9N8G4mYvTkxby2w==", + "optional": true, + "peer": true, + "dependencies": { + "@aws-sdk/types": "3.598.0", + "@smithy/property-provider": "^3.1.1", + "@smithy/types": "^3.1.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@aws-sdk/credential-provider-http": { + "version": "3.598.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-http/-/credential-provider-http-3.598.0.tgz", + "integrity": "sha512-N7cIafi4HVlQvEgvZSo1G4T9qb/JMLGMdBsDCT5XkeJrF0aptQWzTFH0jIdZcLrMYvzPcuEyO3yCBe6cy/ba0g==", + "optional": true, + "peer": true, + "dependencies": { + "@aws-sdk/types": "3.598.0", + "@smithy/fetch-http-handler": "^3.0.2", + "@smithy/node-http-handler": "^3.0.1", + "@smithy/property-provider": "^3.1.1", + "@smithy/protocol-http": "^4.0.1", + "@smithy/smithy-client": "^3.1.2", + "@smithy/types": "^3.1.0", + "@smithy/util-stream": "^3.0.2", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@aws-sdk/credential-provider-ini": { + "version": "3.598.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.598.0.tgz", + "integrity": "sha512-/ppcIVUbRwDIwJDoYfp90X3+AuJo2mvE52Y1t2VSrvUovYn6N4v95/vXj6LS8CNDhz2jvEJYmu+0cTMHdhI6eA==", + "optional": true, + "peer": true, + "dependencies": { + "@aws-sdk/credential-provider-env": "3.598.0", + "@aws-sdk/credential-provider-http": "3.598.0", + "@aws-sdk/credential-provider-process": "3.598.0", + "@aws-sdk/credential-provider-sso": "3.598.0", + "@aws-sdk/credential-provider-web-identity": "3.598.0", + "@aws-sdk/types": "3.598.0", + "@smithy/credential-provider-imds": "^3.1.1", + "@smithy/property-provider": "^3.1.1", + "@smithy/shared-ini-file-loader": "^3.1.1", + "@smithy/types": "^3.1.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" }, "peerDependencies": { - "@jimp/custom": ">=0.3.5" + "@aws-sdk/client-sts": "^3.598.0" } }, - "node_modules/@jimp/tiff": { - "version": "0.22.10", - "resolved": "https://registry.npmjs.org/@jimp/tiff/-/tiff-0.22.10.tgz", - "integrity": "sha512-OaivlSYzpNTHyH/h7pEtl3A7F7TbsgytZs52GLX/xITW92ffgDgT6PkldIrMrET6ERh/hdijNQiew7IoEEr2og==", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/@aws-sdk/credential-provider-node": { + "version": "3.600.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.600.0.tgz", + "integrity": "sha512-1pC7MPMYD45J7yFjA90SxpR0yaSvy+yZiq23aXhAPZLYgJBAxHLu0s0mDCk/piWGPh8+UGur5K0bVdx4B1D5hw==", + "optional": true, + "peer": true, "dependencies": { - "utif2": "^4.0.1" + "@aws-sdk/credential-provider-env": "3.598.0", + "@aws-sdk/credential-provider-http": "3.598.0", + "@aws-sdk/credential-provider-ini": "3.598.0", + "@aws-sdk/credential-provider-process": "3.598.0", + "@aws-sdk/credential-provider-sso": "3.598.0", + "@aws-sdk/credential-provider-web-identity": "3.598.0", + "@aws-sdk/types": "3.598.0", + "@smithy/credential-provider-imds": "^3.1.1", + "@smithy/property-provider": "^3.1.1", + "@smithy/shared-ini-file-loader": "^3.1.1", + "@smithy/types": "^3.1.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@aws-sdk/credential-provider-process": { + "version": "3.598.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-process/-/credential-provider-process-3.598.0.tgz", + "integrity": "sha512-rM707XbLW8huMk722AgjVyxu2tMZee++fNA8TJVNgs1Ma02Wx6bBrfIvlyK0rCcIRb0WdQYP6fe3Xhiu4e8IBA==", + "optional": true, + "peer": true, + "dependencies": { + "@aws-sdk/types": "3.598.0", + "@smithy/property-provider": "^3.1.1", + "@smithy/shared-ini-file-loader": "^3.1.1", + "@smithy/types": "^3.1.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@aws-sdk/credential-provider-sso": { + "version": "3.598.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.598.0.tgz", + "integrity": "sha512-5InwUmrAuqQdOOgxTccRayMMkSmekdLk6s+az9tmikq0QFAHUCtofI+/fllMXSR9iL6JbGYi1940+EUmS4pHJA==", + "optional": true, + "peer": true, + "dependencies": { + "@aws-sdk/client-sso": "3.598.0", + "@aws-sdk/token-providers": "3.598.0", + "@aws-sdk/types": "3.598.0", + "@smithy/property-provider": "^3.1.1", + "@smithy/shared-ini-file-loader": "^3.1.1", + "@smithy/types": "^3.1.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@aws-sdk/credential-provider-web-identity": { + "version": "3.598.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.598.0.tgz", + "integrity": "sha512-GV5GdiMbz5Tz9JO4NJtRoFXjW0GPEujA0j+5J/B723rTN+REHthJu48HdBKouHGhdzkDWkkh1bu52V02Wprw8w==", + "optional": true, + "peer": true, + "dependencies": { + "@aws-sdk/types": "3.598.0", + "@smithy/property-provider": "^3.1.1", + "@smithy/types": "^3.1.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" }, "peerDependencies": { - "@jimp/custom": ">=0.3.5" + "@aws-sdk/client-sts": "^3.598.0" } }, - "node_modules/@jimp/types": { - "version": "0.22.10", - "resolved": "https://registry.npmjs.org/@jimp/types/-/types-0.22.10.tgz", - "integrity": "sha512-u/r+XYzbCx4zZukDmxx8S0er3Yq3iDPI6+31WKX0N18i2qPPJYcn8qwIFurfupRumGvJ8SlGLCgt/T+Y8zzUIw==", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/@aws-sdk/credential-providers": { + "version": "3.606.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-providers/-/credential-providers-3.606.0.tgz", + "integrity": "sha512-34hswGNDWBFvp4Hi4Gv9DIJ4Ks0Nbg8w3emFsPVHLqqI6X2Wd0hJTf+mi1kMhy/AQXt5LisKLw6wjNIKD2+KGg==", + "optional": true, + "peer": true, "dependencies": { - "@jimp/bmp": "^0.22.10", - "@jimp/gif": "^0.22.10", - "@jimp/jpeg": "^0.22.10", - "@jimp/png": "^0.22.10", - "@jimp/tiff": "^0.22.10", - "timm": "^1.6.1" + "@aws-sdk/client-cognito-identity": "3.606.0", + "@aws-sdk/client-sso": "3.598.0", + "@aws-sdk/client-sts": "3.606.0", + "@aws-sdk/credential-provider-cognito-identity": "3.606.0", + "@aws-sdk/credential-provider-env": "3.598.0", + "@aws-sdk/credential-provider-http": "3.598.0", + "@aws-sdk/credential-provider-ini": "3.598.0", + "@aws-sdk/credential-provider-node": "3.600.0", + "@aws-sdk/credential-provider-process": "3.598.0", + "@aws-sdk/credential-provider-sso": "3.598.0", + "@aws-sdk/credential-provider-web-identity": "3.598.0", + "@aws-sdk/types": "3.598.0", + "@smithy/credential-provider-imds": "^3.1.1", + "@smithy/property-provider": "^3.1.1", + "@smithy/types": "^3.1.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@aws-sdk/middleware-host-header": { + "version": "3.598.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-host-header/-/middleware-host-header-3.598.0.tgz", + "integrity": "sha512-WiaG059YBQwQraNejLIi0gMNkX7dfPZ8hDIhvMr5aVPRbaHH8AYF3iNSsXYCHvA2Cfa1O9haYXsuMF9flXnCmA==", + "optional": true, + "peer": true, + "dependencies": { + "@aws-sdk/types": "3.598.0", + "@smithy/protocol-http": "^4.0.1", + "@smithy/types": "^3.1.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@aws-sdk/middleware-logger": { + "version": "3.598.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-logger/-/middleware-logger-3.598.0.tgz", + "integrity": "sha512-bxBjf/VYiu3zfu8SYM2S9dQQc3tz5uBAOcPz/Bt8DyyK3GgOpjhschH/2XuUErsoUO1gDJqZSdGOmuHGZQn00Q==", + "optional": true, + "peer": true, + "dependencies": { + "@aws-sdk/types": "3.598.0", + "@smithy/types": "^3.1.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@aws-sdk/middleware-recursion-detection": { + "version": "3.598.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-recursion-detection/-/middleware-recursion-detection-3.598.0.tgz", + "integrity": "sha512-vjT9BeFY9FeN0f8hm2l6F53tI0N5bUq6RcDkQXKNabXBnQxKptJRad6oP2X5y3FoVfBLOuDkQgiC2940GIPxtQ==", + "optional": true, + "peer": true, + "dependencies": { + "@aws-sdk/types": "3.598.0", + "@smithy/protocol-http": "^4.0.1", + "@smithy/types": "^3.1.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@aws-sdk/middleware-user-agent": { + "version": "3.598.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-user-agent/-/middleware-user-agent-3.598.0.tgz", + "integrity": "sha512-4tjESlHG5B5MdjUaLK7tQs/miUtHbb6deauQx8ryqSBYOhfHVgb1ZnzvQR0bTrhpqUg0WlybSkDaZAICf9xctg==", + "optional": true, + "peer": true, + "dependencies": { + "@aws-sdk/types": "3.598.0", + "@aws-sdk/util-endpoints": "3.598.0", + "@smithy/protocol-http": "^4.0.1", + "@smithy/types": "^3.1.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@aws-sdk/region-config-resolver": { + "version": "3.598.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/region-config-resolver/-/region-config-resolver-3.598.0.tgz", + "integrity": "sha512-oYXhmTokSav4ytmWleCr3rs/1nyvZW/S0tdi6X7u+dLNL5Jee+uMxWGzgOrWK6wrQOzucLVjS4E/wA11Kv2GTw==", + "optional": true, + "peer": true, + "dependencies": { + "@aws-sdk/types": "3.598.0", + "@smithy/node-config-provider": "^3.1.1", + "@smithy/types": "^3.1.0", + "@smithy/util-config-provider": "^3.0.0", + "@smithy/util-middleware": "^3.0.1", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@aws-sdk/token-providers": { + "version": "3.598.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/token-providers/-/token-providers-3.598.0.tgz", + "integrity": "sha512-TKY1EVdHVBnZqpyxyTHdpZpa1tUpb6nxVeRNn1zWG8QB5MvH4ALLd/jR+gtmWDNQbIG4cVuBOZFVL8hIYicKTA==", + "optional": true, + "peer": true, + "dependencies": { + "@aws-sdk/types": "3.598.0", + "@smithy/property-provider": "^3.1.1", + "@smithy/shared-ini-file-loader": "^3.1.1", + "@smithy/types": "^3.1.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" }, "peerDependencies": { - "@jimp/custom": ">=0.3.5" + "@aws-sdk/client-sso-oidc": "^3.598.0" } }, - "node_modules/@jimp/utils": { - "version": "0.22.10", - "resolved": "https://registry.npmjs.org/@jimp/utils/-/utils-0.22.10.tgz", - "integrity": "sha512-ztlOK9Mm2iLG2AMoabzM4i3WZ/FtshcgsJCbZCRUs/DKoeS2tySRJTnQZ1b7Roq0M4Ce+FUAxnCAcBV0q7PH9w==", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/@aws-sdk/types": { + "version": "3.598.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.598.0.tgz", + "integrity": "sha512-742uRl6z7u0LFmZwDrFP6r1wlZcgVPw+/TilluDJmCAR8BgRw3IR+743kUXKBGd8QZDRW2n6v/PYsi/AWCDDMQ==", + "optional": true, + "peer": true, "dependencies": { - "regenerator-runtime": "^0.13.3" + "@smithy/types": "^3.1.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" } }, - "node_modules/@ngageoint/mage.service": { - "version": "6.2.11", - "resolved": "https://registry.npmjs.org/@ngageoint/mage.service/-/mage.service-6.2.11.tgz", - "integrity": "sha512-HBiPb58OmOYFqI4e1Hmqq8px7vR6mTdxjiQLVu1UPxHg7Y1MFfy+Lfe3U5svFLPLY7y4mRPHoTbgjfMhTw1LlQ==", - "hasShrinkwrap": true, + "node_modules/@ngageoint/mage.service/node_modules/@aws-sdk/util-endpoints": { + "version": "3.598.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-endpoints/-/util-endpoints-3.598.0.tgz", + "integrity": "sha512-Qo9UoiVVZxcOEdiOMZg3xb1mzkTxrhd4qSlg5QQrfWPJVx/QOg+Iy0NtGxPtHtVZNHZxohYwDwV/tfsnDSE2gQ==", + "optional": true, "peer": true, "dependencies": { - "@ngageoint/geopackage": "^4.2.4", - "@node-saml/passport-saml": "^4.0.4", - "@turf/centroid": "^6.5.0", - "@turf/kinks": "^6.5.0", - "@types/geojson": "^7946.0.7", - "@types/json-schema": "^7.0.11", - "@types/mime-types": "^2.1.1", - "@xmldom/xmldom": "^0.8.10", - "adm-zip": "0.4.9", - "archiver": "5.3.0", - "async": "^3.2.4", - "base-64": "1.0.0", - "better-sqlite3": "^8.6.0", - "body-parser": "~1.19.0", - "busboy": "^1.6.0", - "cfenv": "1.0.3", - "commander": "^8.2.0", - "dbf": "0.1.0", - "express": "^4.18.2", - "express-session": "1.17.2", - "file-type": "16.5.0", - "fs-extra": "4.0.3", - "geojson": "^0.5.0", - "geojson-validation": "^1.0.2", - "gm": "1.23.1", - "json2csv": "4.5.1", - "jsonwebtoken": "^9.0.2", - "lodash": "^4.17.21", - "mgrs": "^1.0.0", - "mime-types": "^2.1.35", - "moment": "^2.29.4", - "mongodb-migrations": "0.8.5", - "mongoose": "^4.13.21", - "mongoose-beautiful-unique-validation": "7.1.1", - "multer": "^1.4.5-lts.1", - "node-fetch": "^2.6.0", - "passport": "^0.6.0", - "passport-anonymous": "1.0.1", - "passport-http-bearer": "1.0.1", - "passport-ldapauth": "^3.0.1", - "passport-local": "1.0.0", - "passport-oauth2": "1.6.0", - "passport-openidconnect": "0.1.1", - "pem-jwk": "1.5.1", - "pem2jwk": "1.0.1", - "pug": "^3.0.2", - "rfc5646": "^3.0.0", - "superagent": "^8.0.0", - "svg-captcha": "^1.4.0", - "uniqid": "^5.2.0", - "walk": "2.3.4", - "winston": "1.0.1", - "wkx": "0.4.8", - "wms-capabilities": "^0.4.0", - "xmlbuilder2": "3.0.2", - "xpath": "0.0.23", - "yaml": "^1.8.2" + "@aws-sdk/types": "3.598.0", + "@smithy/types": "^3.1.0", + "@smithy/util-endpoints": "^2.0.2", + "tslib": "^2.6.2" }, - "bin": { - "mage.service": "bin/mage.service.js" + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@aws-sdk/util-locate-window": { + "version": "3.568.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-locate-window/-/util-locate-window-3.568.0.tgz", + "integrity": "sha512-3nh4TINkXYr+H41QaPelCceEB2FXP3fxp93YZXB/kqJvX0U9j0N0Uk45gvsjmEPzG8XxkPEeLIfT2I1M7A6Lig==", + "optional": true, + "peer": true, + "dependencies": { + "tslib": "^2.6.2" }, "engines": { - "node": ">= 16.x", - "npm": ">= 8.x" + "node": ">=16.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@aws-sdk/util-user-agent-browser": { + "version": "3.598.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-browser/-/util-user-agent-browser-3.598.0.tgz", + "integrity": "sha512-36Sxo6F+ykElaL1mWzWjlg+1epMpSe8obwhCN1yGE7Js9ywy5U6k6l+A3q3YM9YRbm740sNxncbwLklMvuhTKw==", + "optional": true, + "peer": true, + "dependencies": { + "@aws-sdk/types": "3.598.0", + "@smithy/types": "^3.1.0", + "bowser": "^2.11.0", + "tslib": "^2.6.2" } }, - "node_modules/@ngageoint/mage.service/node_modules/@aashutoshrathi/word-wrap": { - "version": "1.2.6", - "resolved": "https://registry.npmjs.org/@aashutoshrathi/word-wrap/-/word-wrap-1.2.6.tgz", - "integrity": "sha512-1Yjs2SvM8TflER/OD3cOjhWWOZb58A2t7wpE2S9XfBYTiIl+XFhQG2bjy4Pu1I+EAlCNUzRDYDdFwFYUKvXcIA==", - "extraneous": true, + "node_modules/@ngageoint/mage.service/node_modules/@aws-sdk/util-user-agent-node": { + "version": "3.598.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.598.0.tgz", + "integrity": "sha512-oyWGcOlfTdzkC6SVplyr0AGh54IMrDxbhg5RxJ5P+V4BKfcDoDcZV9xenUk9NsOi9MuUjxMumb9UJGkDhM1m0A==", + "optional": true, + "peer": true, + "dependencies": { + "@aws-sdk/types": "3.598.0", + "@smithy/node-config-provider": "^3.1.1", + "@smithy/types": "^3.1.0", + "tslib": "^2.6.2" + }, "engines": { - "node": ">=0.10.0" + "node": ">=16.0.0" + }, + "peerDependencies": { + "aws-crt": ">=1.0.0" + }, + "peerDependenciesMeta": { + "aws-crt": { + "optional": true + } } }, "node_modules/@ngageoint/mage.service/node_modules/@babel/code-frame": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.16.7.tgz", - "integrity": "sha512-iAXqUn8IIeBTNd72xsFlgaXHkMBMt6y4HJp1tIaK465CWLT/fG1aqB7ykr95gHHmlBdGbFeWWfyB4NJJ0nmeIg==", + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.24.7.tgz", + "integrity": "sha512-BcYH1CVJBO9tvyIZ2jVeXgSIMvGZ2FDRvDdOIVQyuklNKSsx+eppDEBq/g47Ayw+RqNFE+URvOShmf+f/qwAlA==", "extraneous": true, "dependencies": { - "@babel/highlight": "^7.16.7" + "@babel/highlight": "^7.24.7", + "picocolors": "^1.0.0" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@ngageoint/mage.service/node_modules/@babel/generator": { - "version": "7.17.9", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.17.9.tgz", - "integrity": "sha512-rAdDousTwxbIxbz5I7GEQ3lUip+xVCXooZNbsydCWs3xA7ZsYOv+CFRdzGxRX78BmQHu9B1Eso59AOZQOJDEdQ==", + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.24.7.tgz", + "integrity": "sha512-oipXieGC3i45Y1A41t4tAqpnEZWgB/lC6Ehh6+rOviR5XWpTtMmLN+fGjz9vOiNRt0p6RtO6DtD0pdU3vpqdSA==", "extraneous": true, "dependencies": { - "@babel/types": "^7.17.0", - "jsesc": "^2.5.1", - "source-map": "^0.5.0" + "@babel/types": "^7.24.7", + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.25", + "jsesc": "^2.5.1" }, "engines": { "node": ">=6.9.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/@babel/generator/node_modules/source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", - "extraneous": true, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/@ngageoint/mage.service/node_modules/@babel/helper-environment-visitor": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.16.7.tgz", - "integrity": "sha512-SLLb0AAn6PkUeAfKJCCOl9e1R53pQlGAfc4y4XuMRZfqeMYLE0dM1LMhqbGAlGQY0lfw5/ohoYWAe9V1yibRag==", + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.24.7.tgz", + "integrity": "sha512-DoiN84+4Gnd0ncbBOM9AZENV4a5ZiL39HYMyZJGZ/AZEykHYdJw0wW3kdcsh9/Kn+BRXHLkkklZ51ecPKmI1CQ==", "extraneous": true, "dependencies": { - "@babel/types": "^7.16.7" + "@babel/types": "^7.24.7" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@ngageoint/mage.service/node_modules/@babel/helper-function-name": { - "version": "7.17.9", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.17.9.tgz", - "integrity": "sha512-7cRisGlVtiVqZ0MW0/yFB4atgpGLWEHUVYnb448hZK4x+vih0YO5UoS11XIYtZYqHd0dIPMdUSv8q5K4LdMnIg==", + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.24.7.tgz", + "integrity": "sha512-FyoJTsj/PEUWu1/TYRiXTIHc8lbw+TDYkZuoE43opPS5TrI7MyONBE1oNvfguEXAD9yhQRrVBnXdXzSLQl9XnA==", "extraneous": true, "dependencies": { - "@babel/template": "^7.16.7", - "@babel/types": "^7.17.0" + "@babel/template": "^7.24.7", + "@babel/types": "^7.24.7" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@ngageoint/mage.service/node_modules/@babel/helper-hoist-variables": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.16.7.tgz", - "integrity": "sha512-m04d/0Op34H5v7pbZw6pSKP7weA6lsMvfiIAMeIvkY/R4xQtBSMFEigu9QTZ2qB/9l22vsxtM8a+Q8CzD255fg==", + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.24.7.tgz", + "integrity": "sha512-MJJwhkoGy5c4ehfoRyrJ/owKeMl19U54h27YYftT0o2teQ3FJ3nQUf/I3LlJsX4l3qlw7WRXUmiyajvHXoTubQ==", "extraneous": true, "dependencies": { - "@babel/types": "^7.16.7" + "@babel/types": "^7.24.7" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@ngageoint/mage.service/node_modules/@babel/helper-split-export-declaration": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.16.7.tgz", - "integrity": "sha512-xbWoy/PFoxSWazIToT9Sif+jJTlrMcndIsaOKvTA6u7QEo7ilkRZpjew18/W3c7nm8fXdUDXh02VXTbZ0pGDNw==", + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.24.7.tgz", + "integrity": "sha512-oy5V7pD+UvfkEATUKvIjvIAH/xCzfsFVw7ygW2SI6NClZzquT+mwdTfgfdbUiceh6iQO0CHtCPsyze/MZ2YbAA==", "extraneous": true, "dependencies": { - "@babel/types": "^7.16.7" + "@babel/types": "^7.24.7" }, "engines": { "node": ">=6.9.0" } }, + "node_modules/@ngageoint/mage.service/node_modules/@babel/helper-string-parser": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.24.7.tgz", + "integrity": "sha512-7MbVt6xrwFQbunH2DNQsAP5sTGxfqQtErvBIvIMi6EQnbgUOuVYanvREcmFrOPhoXBrTtjhhP+lW+o5UfK+tDg==", + "peer": true, + "engines": { + "node": ">=6.9.0" + } + }, "node_modules/@ngageoint/mage.service/node_modules/@babel/helper-validator-identifier": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.16.7.tgz", - "integrity": "sha512-hsEnFemeiW4D08A5gUAZxLBTXpZ39P+a+DGDsHw1yxqyQ/jzFEnxf5uTEGp+3bzAbNOxU1paTgYS4ECU/IgfDw==", + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.24.7.tgz", + "integrity": "sha512-rR+PBcQ1SMQDDyF6X0wxtG8QyLCgUB0eRAGguqRLfkCA87l7yAP7ehq8SNj96OOGTO8OBV70KhuFYcIkHXOg0w==", "peer": true, "engines": { "node": ">=6.9.0" } }, "node_modules/@ngageoint/mage.service/node_modules/@babel/highlight": { - "version": "7.17.9", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.17.9.tgz", - "integrity": "sha512-J9PfEKCbFIv2X5bjTMiZu6Vf341N05QIY+d6FvVKynkG1S7G0j3I0QoRtWIrXhZ+/Nlb5Q0MzqL7TokEJ5BNHg==", + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.24.7.tgz", + "integrity": "sha512-EStJpq4OuY8xYfhGVXngigBJRWxftKX9ksiGDnmlY3o7B/V7KIAc9X4oiK87uPJSc/vs5L869bem5fhZa8caZw==", "extraneous": true, "dependencies": { - "@babel/helper-validator-identifier": "^7.16.7", - "chalk": "^2.0.0", - "js-tokens": "^4.0.0" + "@babel/helper-validator-identifier": "^7.24.7", + "chalk": "^2.4.2", + "js-tokens": "^4.0.0", + "picocolors": "^1.0.0" }, "engines": { "node": ">=6.9.0" @@ -1136,13 +2467,22 @@ "node_modules/@ngageoint/mage.service/node_modules/@babel/highlight/node_modules/color-name": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", "extraneous": true }, + "node_modules/@ngageoint/mage.service/node_modules/@babel/highlight/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "extraneous": true, + "engines": { + "node": ">=0.8.0" + } + }, "node_modules/@ngageoint/mage.service/node_modules/@babel/highlight/node_modules/has-flag": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", "extraneous": true, "engines": { "node": ">=4" @@ -1161,9 +2501,9 @@ } }, "node_modules/@ngageoint/mage.service/node_modules/@babel/parser": { - "version": "7.17.9", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.17.9.tgz", - "integrity": "sha512-vqUSBLP8dQHFPdPi9bc5GK9vRkYHJ49fsZdtoJ8EQ8ibpwk5rPKfvNIwChB0KVXcIjcepEBBd2VHC5r9Gy8ueg==", + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.24.7.tgz", + "integrity": "sha512-9uUYRm6OqQrCqQdG1iCBwBPZgN8ciDBro2nIOFaiRz1/BCxaI7CNvQbDHvsArAC7Tw9Hda/B3U+6ui9u4HWXPw==", "peer": true, "bin": { "parser": "bin/babel-parser.js" @@ -1173,57 +2513,40 @@ } }, "node_modules/@ngageoint/mage.service/node_modules/@babel/template": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.16.7.tgz", - "integrity": "sha512-I8j/x8kHUrbYRTUxXrrMbfCa7jxkE7tZre39x3kjr9hvI82cK1FfqLygotcWN5kdPGWcLdWMHpSBavse5tWw3w==", + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.24.7.tgz", + "integrity": "sha512-jYqfPrU9JTF0PmPy1tLYHW4Mp4KlgxJD9l2nP9fD6yT/ICi554DmrWBAEYpIelzjHf1msDP3PxJIRt/nFNfBig==", "extraneous": true, "dependencies": { - "@babel/code-frame": "^7.16.7", - "@babel/parser": "^7.16.7", - "@babel/types": "^7.16.7" + "@babel/code-frame": "^7.24.7", + "@babel/parser": "^7.24.7", + "@babel/types": "^7.24.7" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@ngageoint/mage.service/node_modules/@babel/traverse": { - "version": "7.17.9", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.17.9.tgz", - "integrity": "sha512-PQO8sDIJ8SIwipTPiR71kJQCKQYB5NGImbOviK8K+kg5xkNSYXLBupuX9QhatFowrsvo9Hj8WgArg3W7ijNAQw==", - "extraneous": true, - "dependencies": { - "@babel/code-frame": "^7.16.7", - "@babel/generator": "^7.17.9", - "@babel/helper-environment-visitor": "^7.16.7", - "@babel/helper-function-name": "^7.17.9", - "@babel/helper-hoist-variables": "^7.16.7", - "@babel/helper-split-export-declaration": "^7.16.7", - "@babel/parser": "^7.17.9", - "@babel/types": "^7.17.0", - "debug": "^4.1.0", + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.24.7.tgz", + "integrity": "sha512-yb65Ed5S/QAcewNPh0nZczy9JdYXkkAbIsEo+P7BE7yO3txAY30Y/oPa3QkQ5It3xVG2kpKMg9MsdxZaO31uKA==", + "extraneous": true, + "dependencies": { + "@babel/code-frame": "^7.24.7", + "@babel/generator": "^7.24.7", + "@babel/helper-environment-visitor": "^7.24.7", + "@babel/helper-function-name": "^7.24.7", + "@babel/helper-hoist-variables": "^7.24.7", + "@babel/helper-split-export-declaration": "^7.24.7", + "@babel/parser": "^7.24.7", + "@babel/types": "^7.24.7", + "debug": "^4.3.1", "globals": "^11.1.0" }, "engines": { "node": ">=6.9.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/@babel/traverse/node_modules/debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", - "extraneous": true, - "dependencies": { - "ms": "2.1.2" - }, - "engines": { - "node": ">=6.0" - }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } - } - }, "node_modules/@ngageoint/mage.service/node_modules/@babel/traverse/node_modules/globals": { "version": "11.12.0", "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", @@ -1233,34 +2556,20 @@ "node": ">=4" } }, - "node_modules/@ngageoint/mage.service/node_modules/@babel/traverse/node_modules/ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "extraneous": true - }, "node_modules/@ngageoint/mage.service/node_modules/@babel/types": { - "version": "7.17.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.17.0.tgz", - "integrity": "sha512-TmKSNO4D5rzhL5bjWFcVHHLETzfQ/AmbKpKPOSjlP0WoHZ6L911fgoOKY4Alp/emzG4cHJdyN49zpgkbXFEHHw==", + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.24.7.tgz", + "integrity": "sha512-XEFXSlxiG5td2EJRe8vOmRbaXVgfcBlszKujvVmWIK/UpywWljQCfzAv3RQCGujWQ1RD4YYWEAqDXfuJiy8f5Q==", "peer": true, "dependencies": { - "@babel/helper-validator-identifier": "^7.16.7", + "@babel/helper-string-parser": "^7.24.7", + "@babel/helper-validator-identifier": "^7.24.7", "to-fast-properties": "^2.0.0" }, "engines": { "node": ">=6.9.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/@babel/types/node_modules/to-fast-properties": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", - "integrity": "sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4=", - "peer": true, - "engines": { - "node": ">=4" - } - }, "node_modules/@ngageoint/mage.service/node_modules/@eslint-community/eslint-utils": { "version": "4.4.0", "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.4.0.tgz", @@ -1277,18 +2586,18 @@ } }, "node_modules/@ngageoint/mage.service/node_modules/@eslint-community/regexpp": { - "version": "4.9.1", - "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.9.1.tgz", - "integrity": "sha512-Y27x+MBLjXa+0JWDhykM3+JE+il3kHKAEqabfEWq3SDhZjLYb6/BHL/JKFnH3fe207JaXkyDo685Oc2Glt6ifA==", + "version": "4.11.0", + "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.11.0.tgz", + "integrity": "sha512-G/M/tIiMrTAxEWRfLfQJMmGNX28IxBg4PBz8XqQhqUHLFI6TL2htpIB1iQCj144V5ee/JaKyT9/WZ0MGZWfA7A==", "extraneous": true, "engines": { "node": "^12.0.0 || ^14.0.0 || >=16.0.0" } }, "node_modules/@ngageoint/mage.service/node_modules/@eslint/eslintrc": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.2.tgz", - "integrity": "sha512-+wvgpDsrB1YqAMdEUCcnTlpfVBH7Vqn6A/NT3D8WVXFIaKMlErPIZT3oCIAVCOtarRpMtelZLqJeU3t7WY6X6g==", + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.4.tgz", + "integrity": "sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ==", "extraneous": true, "dependencies": { "ajv": "^6.12.4", @@ -1314,21 +2623,14 @@ "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", "extraneous": true }, - "node_modules/@ngageoint/mage.service/node_modules/@eslint/eslintrc/node_modules/debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "node_modules/@ngageoint/mage.service/node_modules/@eslint/eslintrc/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", "extraneous": true, "dependencies": { - "ms": "2.1.2" - }, - "engines": { - "node": ">=6.0" - }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" } }, "node_modules/@ngageoint/mage.service/node_modules/@eslint/eslintrc/node_modules/js-yaml": { @@ -1343,29 +2645,24 @@ "js-yaml": "bin/js-yaml.js" } }, - "node_modules/@ngageoint/mage.service/node_modules/@eslint/eslintrc/node_modules/ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "extraneous": true - }, - "node_modules/@ngageoint/mage.service/node_modules/@eslint/eslintrc/node_modules/strip-json-comments": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", - "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", + "node_modules/@ngageoint/mage.service/node_modules/@eslint/eslintrc/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", "extraneous": true, - "engines": { - "node": ">=8" + "dependencies": { + "brace-expansion": "^1.1.7" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "engines": { + "node": "*" } }, "node_modules/@ngageoint/mage.service/node_modules/@eslint/js": { - "version": "8.51.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.51.0.tgz", - "integrity": "sha512-HxjQ8Qn+4SI3/AFv6sOrDB+g6PpUTDwSJiQqOrnneEk8L71161srI9gjzzZvYVbzHiVg/BvcH95+cK/zfIt4pg==", + "version": "8.57.1", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.57.1.tgz", + "integrity": "sha512-d9zaMRSTIKDLhctzH12MtXvJKSSUhaHcjV+2Z+GK+EEY7XKpP5yR4x+N3TAcHTcu963nIr+TMcCb4DBCYX1z6Q==", "extraneous": true, + "license": "MIT", "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" } @@ -1375,6 +2672,7 @@ "resolved": "https://registry.npmjs.org/@fluffy-spoon/substitute/-/substitute-1.208.0.tgz", "integrity": "sha512-BU5vKRoK4OYlKzDtyg4HbtWnUNLOvV0ntqEZIphz+mq2G0HlVFywwJ7M+FbIcnJVDbUReS01FyL5x8R01r7zBg==", "extraneous": true, + "license": "MIT", "engines": { "node": ">=10" }, @@ -1384,42 +2682,45 @@ } }, "node_modules/@ngageoint/mage.service/node_modules/@humanwhocodes/config-array": { - "version": "0.11.11", - "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.11.tgz", - "integrity": "sha512-N2brEuAadi0CcdeMXUkhbZB84eskAc8MEX1By6qEchoVywSgXPIjou4rYsl0V3Hj0ZnuGycGCjdNgockbzeWNA==", + "version": "0.13.0", + "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.13.0.tgz", + "integrity": "sha512-DZLEEqFWQFiyK6h5YIeynKx7JlvCYWL0cImfSRXZ9l4Sg2efkFGTuFf6vzXjK1cq6IYkU+Eg/JizXw+TD2vRNw==", + "deprecated": "Use @eslint/config-array instead", "extraneous": true, + "license": "Apache-2.0", "dependencies": { - "@humanwhocodes/object-schema": "^1.2.1", - "debug": "^4.1.1", + "@humanwhocodes/object-schema": "^2.0.3", + "debug": "^4.3.1", "minimatch": "^3.0.5" }, "engines": { "node": ">=10.10.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/@humanwhocodes/config-array/node_modules/debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "node_modules/@ngageoint/mage.service/node_modules/@humanwhocodes/config-array/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", "extraneous": true, + "license": "MIT", "dependencies": { - "ms": "2.1.2" + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@humanwhocodes/config-array/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "extraneous": true, + "license": "ISC", + "dependencies": { + "brace-expansion": "^1.1.7" }, "engines": { - "node": ">=6.0" - }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } + "node": "*" } }, - "node_modules/@ngageoint/mage.service/node_modules/@humanwhocodes/config-array/node_modules/ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "extraneous": true - }, "node_modules/@ngageoint/mage.service/node_modules/@humanwhocodes/module-importer": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", @@ -1434,10 +2735,12 @@ } }, "node_modules/@ngageoint/mage.service/node_modules/@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==", - "extraneous": true + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-2.0.3.tgz", + "integrity": "sha512-93zYdMES/c1D69yZiKDBj0V24vqNzB/koF26KPaagAfd3P/4gUlh3Dys5ogAK+Exi9QyzlD8x/08Zt7wIKcDcA==", + "deprecated": "Use @eslint/object-schema instead", + "extraneous": true, + "license": "BSD-3-Clause" }, "node_modules/@ngageoint/mage.service/node_modules/@isaacs/cliui": { "version": "8.0.2", @@ -1535,19 +2838,68 @@ "url": "https://github.com/chalk/wrap-ansi?sponsor=1" } }, - "node_modules/@ngageoint/mage.service/node_modules/@mongodb-js/saslprep": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/@mongodb-js/saslprep/-/saslprep-1.1.4.tgz", - "integrity": "sha512-8zJ8N1x51xo9hwPh6AWnKdLGEC5N3lDa6kms1YHmFBoRhTpJR6HG8wWk0td1MVCu9cD4YBrvjZEtd5Obw0Fbnw==", + "node_modules/@ngageoint/mage.service/node_modules/@jridgewell/gen-mapping": { + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz", + "integrity": "sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==", + "extraneous": true, + "dependencies": { + "@jridgewell/set-array": "^1.2.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.24" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@jridgewell/resolve-uri": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz", + "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==", + "extraneous": true, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@jridgewell/set-array": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.2.1.tgz", + "integrity": "sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==", + "extraneous": true, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@jridgewell/sourcemap-codec": { + "version": "1.4.15", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz", + "integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/@jridgewell/trace-mapping": { + "version": "0.3.25", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz", + "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==", "extraneous": true, + "dependencies": { + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@mongodb-js/saslprep": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/@mongodb-js/saslprep/-/saslprep-1.1.7.tgz", + "integrity": "sha512-dCHW/oEX0KJ4NjDULBo3JiOaK5+6axtpBbS+ao2ZInoAL9/YRQLhXzSNAFz7hP4nzLkIqsfYAK/PDE3+XHny0Q==", + "optional": true, + "peer": true, "dependencies": { "sparse-bitfield": "^3.0.3" } }, "node_modules/@ngageoint/mage.service/node_modules/@ngageoint/geopackage": { - "version": "4.2.4", - "resolved": "https://registry.npmjs.org/@ngageoint/geopackage/-/geopackage-4.2.4.tgz", - "integrity": "sha512-x6U2RV2iJFX/mITLSOLgrv2LAtnJjegAgKP5fNnbXzpVNFecmkLntB0+B7ZKU+5/HVn8YqUDdLJT8Oq8D2qNOw==", + "version": "4.2.6", + "resolved": "https://registry.npmjs.org/@ngageoint/geopackage/-/geopackage-4.2.6.tgz", + "integrity": "sha512-HT0WAhAySTv+p462SUkvOKlXoPWDI6LETdBqNl0mC55YxE7PSvPByRIh3r/ajqSirhJeydaoN2wCw0nw+es2bA==", "peer": true, "dependencies": { "@turf/bbox": "6.3.0", @@ -1562,7 +2914,7 @@ "@turf/polygon-to-line": "6.5.0", "@types/geojson": "7946.0.8", "@types/proj4": "2.5.2", - "file-type": "12.4.0", + "file-type": "^16.5.4", "image-size": "0.8.3", "lodash": "4.17.21", "proj4": "2.8.0", @@ -1576,120 +2928,55 @@ "geopackage": "cli" }, "optionalDependencies": { - "better-sqlite3": "7.4.1", + "better-sqlite3": "^9.1.1", "chalk": "4.1.1", "inquirer": "8.0.0" } }, + "node_modules/@ngageoint/mage.service/node_modules/@ngageoint/geopackage/node_modules/@types/geojson": { + "version": "7946.0.8", + "resolved": "https://registry.npmjs.org/@types/geojson/-/geojson-7946.0.8.tgz", + "integrity": "sha512-1rkryxURpr6aWP7R786/UQOkJ3PcpQiWkAXBmdWc7ryFWqN6a4xfK7BtjXvFBKO9LjQ+MWQSWxYeZX1OApnArA==", + "peer": true + }, "node_modules/@ngageoint/mage.service/node_modules/@ngageoint/geopackage/node_modules/better-sqlite3": { - "version": "7.4.1", - "resolved": "https://registry.npmjs.org/better-sqlite3/-/better-sqlite3-7.4.1.tgz", - "integrity": "sha512-sk1kW3PsWE7W7G9qbi5TQxCROlQVR8YWlp4srbyrwN5DrLeamKfrm3JExwOiNSAYyJv8cw5/2HOfvF/ipZj4qg==", + "version": "9.6.0", + "resolved": "https://registry.npmjs.org/better-sqlite3/-/better-sqlite3-9.6.0.tgz", + "integrity": "sha512-yR5HATnqeYNVnkaUTf4bOP2dJSnyhP4puJN/QPRyx4YkBEEUxib422n2XzPqDEHjQQqazoYoADdAm5vE15+dAQ==", "hasInstallScript": true, + "license": "MIT", "optional": true, "peer": true, "dependencies": { "bindings": "^1.5.0", - "prebuild-install": "^6.0.1", - "tar": "^6.1.0" - } - }, - "node_modules/@ngageoint/mage.service/node_modules/@ngageoint/geopackage/node_modules/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==", - "optional": true, - "peer": true, - "dependencies": { - "mimic-response": "^2.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/@ngageoint/mage.service/node_modules/@ngageoint/geopackage/node_modules/detect-libc": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-1.0.3.tgz", - "integrity": "sha512-pGjwhsmsp4kL2RTz08wcOlGN83otlqHeD/Z5T8GXZB+/YcpQ/dgo+lbU8ZsGxV0HIvqqxo9l7mqYwyYMD9bKDg==", - "optional": true, - "peer": true, - "bin": { - "detect-libc": "bin/detect-libc.js" - }, - "engines": { - "node": ">=0.10" - } - }, - "node_modules/@ngageoint/mage.service/node_modules/@ngageoint/geopackage/node_modules/file-type": { - "version": "12.4.0", - "resolved": "https://registry.npmjs.org/file-type/-/file-type-12.4.0.tgz", - "integrity": "sha512-WTvyKq8yjtNmUtVAD8LGcTkvtCdJglM6ks2HTqEClm6+65XTqM6MoZYA1Vtra50DLRWLiM38fEs1y56f5VhnUA==", - "peer": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/@ngageoint/mage.service/node_modules/@ngageoint/geopackage/node_modules/mimic-response": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-2.1.0.tgz", - "integrity": "sha512-wXqjST+SLt7R009ySCglWBCFpjUygmCIfD790/kVbiGmUgfYGuB14PiTd5DwVxSV4NcYHjzMkoj5LjQZwTQLEA==", - "optional": true, - "peer": true, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "prebuild-install": "^7.1.1" } }, - "node_modules/@ngageoint/mage.service/node_modules/@ngageoint/geopackage/node_modules/node-abi": { - "version": "2.30.1", - "resolved": "https://registry.npmjs.org/node-abi/-/node-abi-2.30.1.tgz", - "integrity": "sha512-/2D0wOQPgaUWzVSVgRMx+trKJRC2UG4SUc4oCJoXx9Uxjtp0Vy3/kt7zcbxHF8+Z/pK3UloLWzBISg72brfy1w==", - "optional": true, + "node_modules/@ngageoint/mage.service/node_modules/@ngageoint/geopackage/node_modules/wkx": { + "version": "0.4.8", + "resolved": "https://registry.npmjs.org/wkx/-/wkx-0.4.8.tgz", + "integrity": "sha512-ikPXMM9IR/gy/LwiOSqWlSL3X/J5uk9EO2hHNRXS41eTLXaUFEVw9fn/593jW/tE5tedNg8YjT5HkCa4FqQZyQ==", + "license": "MIT", "peer": true, "dependencies": { - "semver": "^5.4.1" + "@types/node": "*" } }, - "node_modules/@ngageoint/mage.service/node_modules/@ngageoint/geopackage/node_modules/prebuild-install": { - "version": "6.1.4", - "resolved": "https://registry.npmjs.org/prebuild-install/-/prebuild-install-6.1.4.tgz", - "integrity": "sha512-Z4vpywnK1lBg+zdPCVCsKq0xO66eEV9rWo2zrROGGiRS4JtueBOdlB1FnY8lcy7JsUud/Q3ijUxyWN26Ika0vQ==", - "optional": true, + "node_modules/@ngageoint/mage.service/node_modules/@ngageoint/mongodb-migrations": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@ngageoint/mongodb-migrations/-/mongodb-migrations-1.0.0.tgz", + "integrity": "sha512-SOjJk+xuPfMmevyZOhRCm3odFFW//zg8tKSkiKfgAslMIaZUII6rbrBQRjBPqyFewqg/dabY4xYnXelZSY7/cw==", "peer": true, "dependencies": { - "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" + "bluebird": "^3.7.2", + "coffeescript": "^2.7.0", + "lodash": "^4.17.21", + "mkdirp": "^0.5.6", + "mongodb": "^4.8.1", + "nomnom": "^1.8.1" }, "bin": { - "prebuild-install": "bin.js" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/@ngageoint/mage.service/node_modules/@ngageoint/geopackage/node_modules/simple-get": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/simple-get/-/simple-get-3.1.1.tgz", - "integrity": "sha512-CQ5LTKGfCpvE1K0n2us+kuMPbk/q0EKl82s4aheV9oXjFEz6W/Y7oQFVJuU6QG77hRT4Ghb5RURteF5vnWjupA==", - "optional": true, - "peer": true, - "dependencies": { - "decompress-response": "^4.2.0", - "once": "^1.3.1", - "simple-concat": "^1.0.0" + "mm": "bin/mm" } }, "node_modules/@ngageoint/mage.service/node_modules/@node-saml/node-saml": { @@ -1714,28 +3001,15 @@ "node": ">= 14" } }, - "node_modules/@ngageoint/mage.service/node_modules/@node-saml/node-saml/node_modules/debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", - "peer": true, - "dependencies": { - "ms": "2.1.2" - }, - "engines": { - "node": ">=6.0" - }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } - } - }, - "node_modules/@ngageoint/mage.service/node_modules/@node-saml/node-saml/node_modules/ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "peer": true + "node_modules/@ngageoint/mage.service/node_modules/@node-saml/node-saml/node_modules/@xmldom/xmldom": { + "version": "0.8.10", + "resolved": "https://registry.npmjs.org/@xmldom/xmldom/-/xmldom-0.8.10.tgz", + "integrity": "sha512-2WALfTl4xo2SkGCYRt6rDTFfk9R1czmBvUQy12gK2KuRKIpWEhcbbzy8EZXtz/jkRqHX8bFEc6FC1HjX4TUWYw==", + "license": "MIT", + "peer": true, + "engines": { + "node": ">=10.0.0" + } }, "node_modules/@ngageoint/mage.service/node_modules/@node-saml/passport-saml": { "version": "4.0.4", @@ -1754,6 +3028,25 @@ "node": ">= 14" } }, + "node_modules/@ngageoint/mage.service/node_modules/@node-saml/passport-saml/node_modules/passport": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/passport/-/passport-0.6.0.tgz", + "integrity": "sha512-0fe+p3ZnrWRW74fe8+SvCyf4a3Pb2/h7gFkQ8yTJpAO50gDzlfjZUZTO1k5Eg9kUct22OxHLqDZoKUWRHOh9ug==", + "license": "MIT", + "peer": true, + "dependencies": { + "passport-strategy": "1.x.x", + "pause": "0.0.1", + "utils-merge": "^1.0.1" + }, + "engines": { + "node": ">= 0.4.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/jaredhanson" + } + }, "node_modules/@ngageoint/mage.service/node_modules/@nodelib/fs.scandir": { "version": "2.1.5", "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", @@ -1847,9 +3140,9 @@ } }, "node_modules/@ngageoint/mage.service/node_modules/@sinonjs/commons": { - "version": "1.8.3", - "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.8.3.tgz", - "integrity": "sha512-xkNcLAn/wZaX14RPlwizcKicDk9G3F8m2nU3L7Ukm5zBgTwiT0wsoFAHx9Jq56fJA1z/7uKGtCRu16sOUCLIHQ==", + "version": "1.8.6", + "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.8.6.tgz", + "integrity": "sha512-Ky+XkAkqPZSm3NLBeUng77EBQl3cmeJhITaGHdYH8kjVB+aun3S4XBRti2zt17mtt0mIUDiNxYeoJm6drVvBJQ==", "extraneous": true, "dependencies": { "type-detect": "4.0.8" @@ -1877,2406 +3170,2323 @@ } }, "node_modules/@ngageoint/mage.service/node_modules/@sinonjs/text-encoding": { - "version": "0.7.1", - "resolved": "https://registry.npmjs.org/@sinonjs/text-encoding/-/text-encoding-0.7.1.tgz", - "integrity": "sha512-+iTbntw2IZPb/anVDbypzfQa+ay64MW0Zo8aJ8gZPWMMK6/OubMVb6lUPMagqjOPnmtauXnFCACVl3O7ogjeqQ==", + "version": "0.7.2", + "resolved": "https://registry.npmjs.org/@sinonjs/text-encoding/-/text-encoding-0.7.2.tgz", + "integrity": "sha512-sXXKG+uL9IrKqViTtao2Ws6dy0znu9sOaP1di/jKGW1M6VssO8vlpXCQcpZ+jisQ1tTFAC5Jo/EOzFbggBagFQ==", "extraneous": true }, - "node_modules/@ngageoint/mage.service/node_modules/@tokenizer/token": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/@tokenizer/token/-/token-0.3.0.tgz", - "integrity": "sha512-OvjF+z51L3ov0OyAU0duzsYuvO01PH7x4t6DJx+guahgTnBHkhJdG7soQeTSFLWN3efnHyibZ4Z8l2EuWwJN3A==", - "peer": true - }, - "node_modules/@ngageoint/mage.service/node_modules/@turf/bbox": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/@turf/bbox/-/bbox-6.3.0.tgz", - "integrity": "sha512-N4ue5Xopu1qieSHP2MA/CJGWHPKaTrVXQJjzHRNcY1vtsO126xbSaJhWUrFc5x5vVkXp0dcucGryO0r5m4o/KA==", - "peer": true, - "dependencies": { - "@turf/helpers": "^6.3.0", - "@turf/meta": "^6.3.0" - } - }, - "node_modules/@ngageoint/mage.service/node_modules/@turf/bearing": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@turf/bearing/-/bearing-6.5.0.tgz", - "integrity": "sha512-dxINYhIEMzgDOztyMZc20I7ssYVNEpSv04VbMo5YPQsqa80KO3TFvbuCahMsCAW5z8Tncc8dwBlEFrmRjJG33A==", - "peer": true, - "dependencies": { - "@turf/helpers": "^6.5.0", - "@turf/invariant": "^6.5.0" - }, - "funding": { - "url": "https://opencollective.com/turf" - } - }, - "node_modules/@ngageoint/mage.service/node_modules/@turf/boolean-clockwise": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@turf/boolean-clockwise/-/boolean-clockwise-6.5.0.tgz", - "integrity": "sha512-45+C7LC5RMbRWrxh3Z0Eihsc8db1VGBO5d9BLTOAwU4jR6SgsunTfRWR16X7JUwIDYlCVEmnjcXJNi/kIU3VIw==", - "peer": true, - "dependencies": { - "@turf/helpers": "^6.5.0", - "@turf/invariant": "^6.5.0" - }, - "funding": { - "url": "https://opencollective.com/turf" - } - }, - "node_modules/@ngageoint/mage.service/node_modules/@turf/boolean-point-in-polygon": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@turf/boolean-point-in-polygon/-/boolean-point-in-polygon-6.5.0.tgz", - "integrity": "sha512-DtSuVFB26SI+hj0SjrvXowGTUCHlgevPAIsukssW6BG5MlNSBQAo70wpICBNJL6RjukXg8d2eXaAWuD/CqL00A==", - "peer": true, - "dependencies": { - "@turf/helpers": "^6.5.0", - "@turf/invariant": "^6.5.0" - }, - "funding": { - "url": "https://opencollective.com/turf" - } - }, - "node_modules/@ngageoint/mage.service/node_modules/@turf/boolean-point-on-line": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@turf/boolean-point-on-line/-/boolean-point-on-line-6.5.0.tgz", - "integrity": "sha512-A1BbuQ0LceLHvq7F/P7w3QvfpmZqbmViIUPHdNLvZimFNLo4e6IQunmzbe+8aSStH9QRZm3VOflyvNeXvvpZEQ==", - "peer": true, - "dependencies": { - "@turf/helpers": "^6.5.0", - "@turf/invariant": "^6.5.0" - }, - "funding": { - "url": "https://opencollective.com/turf" - } - }, - "node_modules/@ngageoint/mage.service/node_modules/@turf/boolean-within": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@turf/boolean-within/-/boolean-within-6.5.0.tgz", - "integrity": "sha512-YQB3oU18Inx35C/LU930D36RAVe7LDXk1kWsQ8mLmuqYn9YdPsDQTMTkLJMhoQ8EbN7QTdy333xRQ4MYgToteQ==", - "peer": true, - "dependencies": { - "@turf/bbox": "^6.5.0", - "@turf/boolean-point-in-polygon": "^6.5.0", - "@turf/boolean-point-on-line": "^6.5.0", - "@turf/helpers": "^6.5.0", - "@turf/invariant": "^6.5.0" - }, - "funding": { - "url": "https://opencollective.com/turf" - } - }, - "node_modules/@ngageoint/mage.service/node_modules/@turf/boolean-within/node_modules/@turf/bbox": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@turf/bbox/-/bbox-6.5.0.tgz", - "integrity": "sha512-RBbLaao5hXTYyyg577iuMtDB8ehxMlUqHEJiMs8jT1GHkFhr6sYre3lmLsPeYEi/ZKj5TP5tt7fkzNdJ4GIVyw==", - "peer": true, - "dependencies": { - "@turf/helpers": "^6.5.0", - "@turf/meta": "^6.5.0" - }, - "funding": { - "url": "https://opencollective.com/turf" - } - }, - "node_modules/@ngageoint/mage.service/node_modules/@turf/centroid": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@turf/centroid/-/centroid-6.5.0.tgz", - "integrity": "sha512-MwE1oq5E3isewPprEClbfU5pXljIK/GUOMbn22UM3IFPDJX0KeoyLNwghszkdmFp/qMGL/M13MMWvU+GNLXP/A==", - "peer": true, - "dependencies": { - "@turf/helpers": "^6.5.0", - "@turf/meta": "^6.5.0" - }, - "funding": { - "url": "https://opencollective.com/turf" - } - }, - "node_modules/@ngageoint/mage.service/node_modules/@turf/clone": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@turf/clone/-/clone-6.5.0.tgz", - "integrity": "sha512-mzVtTFj/QycXOn6ig+annKrM6ZlimreKYz6f/GSERytOpgzodbQyOgkfwru100O1KQhhjSudKK4DsQ0oyi9cTw==", - "peer": true, - "dependencies": { - "@turf/helpers": "^6.5.0" - }, - "funding": { - "url": "https://opencollective.com/turf" - } - }, - "node_modules/@ngageoint/mage.service/node_modules/@turf/distance": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@turf/distance/-/distance-6.5.0.tgz", - "integrity": "sha512-xzykSLfoURec5qvQJcfifw/1mJa+5UwByZZ5TZ8iaqjGYN0vomhV9aiSLeYdUGtYRESZ+DYC/OzY+4RclZYgMg==", + "node_modules/@ngageoint/mage.service/node_modules/@smithy/abort-controller": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/@smithy/abort-controller/-/abort-controller-3.1.1.tgz", + "integrity": "sha512-MBJBiidoe+0cTFhyxT8g+9g7CeVccLM0IOKKUMCNQ1CNMJ/eIfoo0RTfVrXOONEI1UCN1W+zkiHSbzUNE9dZtQ==", + "optional": true, "peer": true, "dependencies": { - "@turf/helpers": "^6.5.0", - "@turf/invariant": "^6.5.0" + "@smithy/types": "^3.3.0", + "tslib": "^2.6.2" }, - "funding": { - "url": "https://opencollective.com/turf" - } - }, - "node_modules/@ngageoint/mage.service/node_modules/@turf/helpers": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@turf/helpers/-/helpers-6.5.0.tgz", - "integrity": "sha512-VbI1dV5bLFzohYYdgqwikdMVpe7pJ9X3E+dlr425wa2/sMJqYDhTO++ec38/pcPvPE6oD9WEEeU3Xu3gza+VPw==", - "peer": true, - "funding": { - "url": "https://opencollective.com/turf" + "engines": { + "node": ">=16.0.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/@turf/intersect": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@turf/intersect/-/intersect-6.5.0.tgz", - "integrity": "sha512-2legGJeKrfFkzntcd4GouPugoqPUjexPZnOvfez+3SfIMrHvulw8qV8u7pfVyn2Yqs53yoVCEjS5sEpvQ5YRQg==", + "node_modules/@ngageoint/mage.service/node_modules/@smithy/config-resolver": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@smithy/config-resolver/-/config-resolver-3.0.4.tgz", + "integrity": "sha512-VwiOk7TwXoE7NlNguV/aPq1hFH72tqkHCw8eWXbr2xHspRyyv9DLpLXhq+Ieje+NwoqXrY0xyQjPXdOE6cGcHA==", + "optional": true, "peer": true, "dependencies": { - "@turf/helpers": "^6.5.0", - "@turf/invariant": "^6.5.0", - "polygon-clipping": "^0.15.3" + "@smithy/node-config-provider": "^3.1.3", + "@smithy/types": "^3.3.0", + "@smithy/util-config-provider": "^3.0.0", + "@smithy/util-middleware": "^3.0.3", + "tslib": "^2.6.2" }, - "funding": { - "url": "https://opencollective.com/turf" + "engines": { + "node": ">=16.0.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/@turf/invariant": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@turf/invariant/-/invariant-6.5.0.tgz", - "integrity": "sha512-Wv8PRNCtPD31UVbdJE/KVAWKe7l6US+lJItRR/HOEW3eh+U/JwRCSUl/KZ7bmjM/C+zLNoreM2TU6OoLACs4eg==", + "node_modules/@ngageoint/mage.service/node_modules/@smithy/core": { + "version": "2.2.4", + "resolved": "https://registry.npmjs.org/@smithy/core/-/core-2.2.4.tgz", + "integrity": "sha512-qdY3LpMOUyLM/gfjjMQZui+UTNS7kBRDWlvyIhVOql5dn2J3isk9qUTBtQ1CbDH8MTugHis1zu3h4rH+Qmmh4g==", + "optional": true, "peer": true, "dependencies": { - "@turf/helpers": "^6.5.0" + "@smithy/middleware-endpoint": "^3.0.4", + "@smithy/middleware-retry": "^3.0.7", + "@smithy/middleware-serde": "^3.0.3", + "@smithy/protocol-http": "^4.0.3", + "@smithy/smithy-client": "^3.1.5", + "@smithy/types": "^3.3.0", + "@smithy/util-middleware": "^3.0.3", + "tslib": "^2.6.2" }, - "funding": { - "url": "https://opencollective.com/turf" + "engines": { + "node": ">=16.0.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/@turf/kinks": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@turf/kinks/-/kinks-6.5.0.tgz", - "integrity": "sha512-ViCngdPt1eEL7hYUHR2eHR662GvCgTc35ZJFaNR6kRtr6D8plLaDju0FILeFFWSc+o8e3fwxZEJKmFj9IzPiIQ==", + "node_modules/@ngageoint/mage.service/node_modules/@smithy/credential-provider-imds": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/@smithy/credential-provider-imds/-/credential-provider-imds-3.1.3.tgz", + "integrity": "sha512-U1Yrv6hx/mRK6k8AncuI6jLUx9rn0VVSd9NPEX6pyYFBfkSkChOc/n4zUb8alHUVg83TbI4OdZVo1X0Zfj3ijA==", + "optional": true, "peer": true, "dependencies": { - "@turf/helpers": "^6.5.0" + "@smithy/node-config-provider": "^3.1.3", + "@smithy/property-provider": "^3.1.3", + "@smithy/types": "^3.3.0", + "@smithy/url-parser": "^3.0.3", + "tslib": "^2.6.2" }, - "funding": { - "url": "https://opencollective.com/turf" + "engines": { + "node": ">=16.0.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/@turf/line-intersect": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@turf/line-intersect/-/line-intersect-6.5.0.tgz", - "integrity": "sha512-CS6R1tZvVQD390G9Ea4pmpM6mJGPWoL82jD46y0q1KSor9s6HupMIo1kY4Ny+AEYQl9jd21V3Scz20eldpbTVA==", + "node_modules/@ngageoint/mage.service/node_modules/@smithy/fetch-http-handler": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/@smithy/fetch-http-handler/-/fetch-http-handler-3.2.0.tgz", + "integrity": "sha512-vFvDxMrc6sO5Atec8PaISckMcAwsCrRhYxwUylg97bRT2KZoumOF7qk5+6EVUtuM1IG9AJV5aqXnHln9ZdXHpg==", + "optional": true, "peer": true, "dependencies": { - "@turf/helpers": "^6.5.0", - "@turf/invariant": "^6.5.0", - "@turf/line-segment": "^6.5.0", - "@turf/meta": "^6.5.0", - "geojson-rbush": "3.x" - }, - "funding": { - "url": "https://opencollective.com/turf" + "@smithy/protocol-http": "^4.0.3", + "@smithy/querystring-builder": "^3.0.3", + "@smithy/types": "^3.3.0", + "@smithy/util-base64": "^3.0.0", + "tslib": "^2.6.2" } }, - "node_modules/@ngageoint/mage.service/node_modules/@turf/line-segment": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@turf/line-segment/-/line-segment-6.5.0.tgz", - "integrity": "sha512-jI625Ho4jSuJESNq66Mmi290ZJ5pPZiQZruPVpmHkUw257Pew0alMmb6YrqYNnLUuiVVONxAAKXUVeeUGtycfw==", + "node_modules/@ngageoint/mage.service/node_modules/@smithy/hash-node": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@smithy/hash-node/-/hash-node-3.0.3.tgz", + "integrity": "sha512-2ctBXpPMG+B3BtWSGNnKELJ7SH9e4TNefJS0cd2eSkOOROeBnnVBnAy9LtJ8tY4vUEoe55N4CNPxzbWvR39iBw==", + "optional": true, "peer": true, "dependencies": { - "@turf/helpers": "^6.5.0", - "@turf/invariant": "^6.5.0", - "@turf/meta": "^6.5.0" + "@smithy/types": "^3.3.0", + "@smithy/util-buffer-from": "^3.0.0", + "@smithy/util-utf8": "^3.0.0", + "tslib": "^2.6.2" }, - "funding": { - "url": "https://opencollective.com/turf" + "engines": { + "node": ">=16.0.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/@turf/meta": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@turf/meta/-/meta-6.5.0.tgz", - "integrity": "sha512-RrArvtsV0vdsCBegoBtOalgdSOfkBrTJ07VkpiCnq/491W67hnMWmDu7e6Ztw0C3WldRYTXkg3SumfdzZxLBHA==", + "node_modules/@ngageoint/mage.service/node_modules/@smithy/invalid-dependency": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@smithy/invalid-dependency/-/invalid-dependency-3.0.3.tgz", + "integrity": "sha512-ID1eL/zpDULmHJbflb864k72/SNOZCADRc9i7Exq3RUNJw6raWUSlFEQ+3PX3EYs++bTxZB2dE9mEHTQLv61tw==", + "optional": true, "peer": true, "dependencies": { - "@turf/helpers": "^6.5.0" - }, - "funding": { - "url": "https://opencollective.com/turf" + "@smithy/types": "^3.3.0", + "tslib": "^2.6.2" } }, - "node_modules/@ngageoint/mage.service/node_modules/@turf/point-to-line-distance": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@turf/point-to-line-distance/-/point-to-line-distance-6.5.0.tgz", - "integrity": "sha512-opHVQ4vjUhNBly1bob6RWy+F+hsZDH9SA0UW36pIRzfpu27qipU18xup0XXEePfY6+wvhF6yL/WgCO2IbrLqEA==", + "node_modules/@ngageoint/mage.service/node_modules/@smithy/is-array-buffer": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@smithy/is-array-buffer/-/is-array-buffer-3.0.0.tgz", + "integrity": "sha512-+Fsu6Q6C4RSJiy81Y8eApjEB5gVtM+oFKTffg+jSuwtvomJJrhUJBu2zS8wjXSgH/g1MKEWrzyChTBe6clb5FQ==", + "optional": true, "peer": true, "dependencies": { - "@turf/bearing": "^6.5.0", - "@turf/distance": "^6.5.0", - "@turf/helpers": "^6.5.0", - "@turf/invariant": "^6.5.0", - "@turf/meta": "^6.5.0", - "@turf/projection": "^6.5.0", - "@turf/rhumb-bearing": "^6.5.0", - "@turf/rhumb-distance": "^6.5.0" + "tslib": "^2.6.2" }, - "funding": { - "url": "https://opencollective.com/turf" + "engines": { + "node": ">=16.0.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/@turf/polygon-to-line": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@turf/polygon-to-line/-/polygon-to-line-6.5.0.tgz", - "integrity": "sha512-5p4n/ij97EIttAq+ewSnKt0ruvuM+LIDzuczSzuHTpq4oS7Oq8yqg5TQ4nzMVuK41r/tALCk7nAoBuw3Su4Gcw==", + "node_modules/@ngageoint/mage.service/node_modules/@smithy/middleware-content-length": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@smithy/middleware-content-length/-/middleware-content-length-3.0.3.tgz", + "integrity": "sha512-Dbz2bzexReYIQDWMr+gZhpwBetNXzbhnEMhYKA6urqmojO14CsXjnsoPYO8UL/xxcawn8ZsuVU61ElkLSltIUQ==", + "optional": true, "peer": true, "dependencies": { - "@turf/helpers": "^6.5.0", - "@turf/invariant": "^6.5.0" + "@smithy/protocol-http": "^4.0.3", + "@smithy/types": "^3.3.0", + "tslib": "^2.6.2" }, - "funding": { - "url": "https://opencollective.com/turf" + "engines": { + "node": ">=16.0.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/@turf/projection": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@turf/projection/-/projection-6.5.0.tgz", - "integrity": "sha512-/Pgh9mDvQWWu8HRxqpM+tKz8OzgauV+DiOcr3FCjD6ubDnrrmMJlsf6fFJmggw93mtVPrZRL6yyi9aYCQBOIvg==", + "node_modules/@ngageoint/mage.service/node_modules/@smithy/middleware-endpoint": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@smithy/middleware-endpoint/-/middleware-endpoint-3.0.4.tgz", + "integrity": "sha512-whUJMEPwl3ANIbXjBXZVdJNgfV2ZU8ayln7xUM47rXL2txuenI7jQ/VFFwCzy5lCmXScjp6zYtptW5Evud8e9g==", + "optional": true, "peer": true, "dependencies": { - "@turf/clone": "^6.5.0", - "@turf/helpers": "^6.5.0", - "@turf/meta": "^6.5.0" + "@smithy/middleware-serde": "^3.0.3", + "@smithy/node-config-provider": "^3.1.3", + "@smithy/shared-ini-file-loader": "^3.1.3", + "@smithy/types": "^3.3.0", + "@smithy/url-parser": "^3.0.3", + "@smithy/util-middleware": "^3.0.3", + "tslib": "^2.6.2" }, - "funding": { - "url": "https://opencollective.com/turf" + "engines": { + "node": ">=16.0.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/@turf/rhumb-bearing": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@turf/rhumb-bearing/-/rhumb-bearing-6.5.0.tgz", - "integrity": "sha512-jMyqiMRK4hzREjQmnLXmkJ+VTNTx1ii8vuqRwJPcTlKbNWfjDz/5JqJlb5NaFDcdMpftWovkW5GevfnuzHnOYA==", + "node_modules/@ngageoint/mage.service/node_modules/@smithy/middleware-retry": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/@smithy/middleware-retry/-/middleware-retry-3.0.7.tgz", + "integrity": "sha512-f5q7Y09G+2h5ivkSx5CHvlAT4qRR3jBFEsfXyQ9nFNiWQlr8c48blnu5cmbTQ+p1xmIO14UXzKoF8d7Tm0Gsjw==", + "optional": true, "peer": true, "dependencies": { - "@turf/helpers": "^6.5.0", - "@turf/invariant": "^6.5.0" + "@smithy/node-config-provider": "^3.1.3", + "@smithy/protocol-http": "^4.0.3", + "@smithy/service-error-classification": "^3.0.3", + "@smithy/smithy-client": "^3.1.5", + "@smithy/types": "^3.3.0", + "@smithy/util-middleware": "^3.0.3", + "@smithy/util-retry": "^3.0.3", + "tslib": "^2.6.2", + "uuid": "^9.0.1" }, - "funding": { - "url": "https://opencollective.com/turf" + "engines": { + "node": ">=16.0.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/@turf/rhumb-distance": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@turf/rhumb-distance/-/rhumb-distance-6.5.0.tgz", - "integrity": "sha512-oKp8KFE8E4huC2Z1a1KNcFwjVOqa99isxNOwfo4g3SUABQ6NezjKDDrnvC4yI5YZ3/huDjULLBvhed45xdCrzg==", + "node_modules/@ngageoint/mage.service/node_modules/@smithy/middleware-serde": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@smithy/middleware-serde/-/middleware-serde-3.0.3.tgz", + "integrity": "sha512-puUbyJQBcg9eSErFXjKNiGILJGtiqmuuNKEYNYfUD57fUl4i9+mfmThtQhvFXU0hCVG0iEJhvQUipUf+/SsFdA==", + "optional": true, "peer": true, "dependencies": { - "@turf/helpers": "^6.5.0", - "@turf/invariant": "^6.5.0" + "@smithy/types": "^3.3.0", + "tslib": "^2.6.2" }, - "funding": { - "url": "https://opencollective.com/turf" + "engines": { + "node": ">=16.0.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/@types/archiver": { - "version": "5.3.4", - "resolved": "https://registry.npmjs.org/@types/archiver/-/archiver-5.3.4.tgz", - "integrity": "sha512-Lj7fLBIMwYFgViVVZHEdExZC3lVYsl+QL0VmdNdIzGZH544jHveYWij6qdnBgJQDnR7pMKliN9z2cPZFEbhyPw==", - "extraneous": true, + "node_modules/@ngageoint/mage.service/node_modules/@smithy/middleware-stack": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@smithy/middleware-stack/-/middleware-stack-3.0.3.tgz", + "integrity": "sha512-r4klY9nFudB0r9UdSMaGSyjyQK5adUyPnQN/ZM6M75phTxOdnc/AhpvGD1fQUvgmqjQEBGCwpnPbDm8pH5PapA==", + "optional": true, + "peer": true, "dependencies": { - "@types/readdir-glob": "*" + "@smithy/types": "^3.3.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/@types/async": { - "version": "3.2.12", - "resolved": "https://registry.npmjs.org/@types/async/-/async-3.2.12.tgz", - "integrity": "sha512-4i4w4tfNDo73BOjk0qHcB2YJ8A2SjITCrU4BTsgdJFTsVr6atPDXa0T9r0QZTrX3axtWwkqpZqF4B3gR0TqBGw==", - "extraneous": true - }, - "node_modules/@ngageoint/mage.service/node_modules/@types/body-parser": { - "version": "1.19.2", - "resolved": "https://registry.npmjs.org/@types/body-parser/-/body-parser-1.19.2.tgz", - "integrity": "sha512-ALYone6pm6QmwZoAgeyNksccT9Q4AWZQ6PvfwR37GT6r6FWUPguq6sUmNGSMV2Wr761oQoBxwGGa6DR5o1DC9g==", + "node_modules/@ngageoint/mage.service/node_modules/@smithy/node-config-provider": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/@smithy/node-config-provider/-/node-config-provider-3.1.3.tgz", + "integrity": "sha512-rxdpAZczzholz6CYZxtqDu/aKTxATD5DAUDVj7HoEulq+pDSQVWzbg0btZDlxeFfa6bb2b5tUvgdX5+k8jUqcg==", + "optional": true, "peer": true, "dependencies": { - "@types/connect": "*", - "@types/node": "*" + "@smithy/property-provider": "^3.1.3", + "@smithy/shared-ini-file-loader": "^3.1.3", + "@smithy/types": "^3.3.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/@types/bson": { - "version": "1.0.11", - "resolved": "https://registry.npmjs.org/@types/bson/-/bson-1.0.11.tgz", - "integrity": "sha512-j+UcCWI+FsbI5/FQP/Kj2CXyplWAz39ktHFkXk84h7dNblKRSoNJs95PZFRd96NQGqsPEPgeclqnznWZr14ZDA==", - "extraneous": true, + "node_modules/@ngageoint/mage.service/node_modules/@smithy/node-http-handler": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/@smithy/node-http-handler/-/node-http-handler-3.1.1.tgz", + "integrity": "sha512-L71NLyPeP450r2J/mfu1jMc//Z1YnqJt2eSNw7uhiItaONnBLDA68J5jgxq8+MBDsYnFwNAIc7dBG1ImiWBiwg==", + "optional": true, + "peer": true, "dependencies": { - "@types/node": "*" + "@smithy/abort-controller": "^3.1.1", + "@smithy/protocol-http": "^4.0.3", + "@smithy/querystring-builder": "^3.0.3", + "@smithy/types": "^3.3.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/@types/busboy": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/@types/busboy/-/busboy-1.5.0.tgz", - "integrity": "sha512-ncOOhwmyFDW76c/Tuvv9MA9VGYUCn8blzyWmzYELcNGDb0WXWLSmFi7hJq25YdRBYJrmMBB5jZZwUjlJe9HCjQ==", - "extraneous": true, + "node_modules/@ngageoint/mage.service/node_modules/@smithy/property-provider": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/@smithy/property-provider/-/property-provider-3.1.3.tgz", + "integrity": "sha512-zahyOVR9Q4PEoguJ/NrFP4O7SMAfYO1HLhB18M+q+Z4KFd4V2obiMnlVoUFzFLSPeVt1POyNWneHHrZaTMoc/g==", + "optional": true, + "peer": true, "dependencies": { - "@types/node": "*" + "@smithy/types": "^3.3.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/@types/chai": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/@types/chai/-/chai-4.3.0.tgz", - "integrity": "sha512-/ceqdqeRraGolFTcfoXNiqjyQhZzbINDngeoAq9GoHa8PPK1yNzTaxWjA6BFWp5Ua9JpXEMSS4s5i9tS0hOJtw==", - "extraneous": true - }, - "node_modules/@ngageoint/mage.service/node_modules/@types/chai-as-promised": { - "version": "7.1.5", - "resolved": "https://registry.npmjs.org/@types/chai-as-promised/-/chai-as-promised-7.1.5.tgz", - "integrity": "sha512-jStwss93SITGBwt/niYrkf2C+/1KTeZCZl1LaeezTlqppAKeoQC7jxyqYuP72sxBGKCIbw7oHgbYssIRzT5FCQ==", - "extraneous": true, + "node_modules/@ngageoint/mage.service/node_modules/@smithy/protocol-http": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@smithy/protocol-http/-/protocol-http-4.0.3.tgz", + "integrity": "sha512-x5jmrCWwQlx+Zv4jAtc33ijJ+vqqYN+c/ZkrnpvEe/uDas7AT7A/4Rc2CdfxgWv4WFGmEqODIrrUToPN6DDkGw==", + "optional": true, + "peer": true, "dependencies": { - "@types/chai": "*" + "@smithy/types": "^3.3.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/@types/connect": { - "version": "3.4.35", - "resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.35.tgz", - "integrity": "sha512-cdeYyv4KWoEgpBISTxWvqYsVy444DOqehiF3fM3ne10AmJ62RSyNkUnxMJXHQWRQQX2eR94m5y1IZyDwBjV9FQ==", + "node_modules/@ngageoint/mage.service/node_modules/@smithy/querystring-builder": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@smithy/querystring-builder/-/querystring-builder-3.0.3.tgz", + "integrity": "sha512-vyWckeUeesFKzCDaRwWLUA1Xym9McaA6XpFfAK5qI9DKJ4M33ooQGqvM4J+LalH4u/Dq9nFiC8U6Qn1qi0+9zw==", + "optional": true, "peer": true, "dependencies": { - "@types/node": "*" + "@smithy/types": "^3.3.0", + "@smithy/util-uri-escape": "^3.0.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/@types/cookiejar": { - "version": "2.1.5", - "resolved": "https://registry.npmjs.org/@types/cookiejar/-/cookiejar-2.1.5.tgz", - "integrity": "sha512-he+DHOWReW0nghN24E1WUqM0efK4kI9oTqDm6XmK8ZPe2djZ90BSNdGnIyCLzCPw7/pogPlGbzI2wHGGmi4O/Q==", - "extraneous": true - }, - "node_modules/@ngageoint/mage.service/node_modules/@types/debug": { - "version": "4.1.9", - "resolved": "https://registry.npmjs.org/@types/debug/-/debug-4.1.9.tgz", - "integrity": "sha512-8Hz50m2eoS56ldRlepxSBa6PWEVCtzUo/92HgLc2qTMnotJNIm7xP+UZhyWoYsyOdd5dxZ+NZLb24rsKyFs2ow==", + "node_modules/@ngageoint/mage.service/node_modules/@smithy/querystring-parser": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@smithy/querystring-parser/-/querystring-parser-3.0.3.tgz", + "integrity": "sha512-zahM1lQv2YjmznnfQsWbYojFe55l0SLG/988brlLv1i8z3dubloLF+75ATRsqPBboUXsW6I9CPGE5rQgLfY0vQ==", + "optional": true, "peer": true, "dependencies": { - "@types/ms": "*" + "@smithy/types": "^3.3.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/@types/deep-equal": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@types/deep-equal/-/deep-equal-1.0.1.tgz", - "integrity": "sha512-mMUu4nWHLBlHtxXY17Fg6+ucS/MnndyOWyOe7MmwkoMYxvfQU2ajtRaEvqSUv+aVkMqH/C0NCI8UoVfRNQ10yg==", - "extraneous": true - }, - "node_modules/@ngageoint/mage.service/node_modules/@types/express": { - "version": "4.17.19", - "resolved": "https://registry.npmjs.org/@types/express/-/express-4.17.19.tgz", - "integrity": "sha512-UtOfBtzN9OvpZPPbnnYunfjM7XCI4jyk1NvnFhTVz5krYAnW4o5DCoIekvms+8ApqhB4+9wSge1kBijdfTSmfg==", + "node_modules/@ngageoint/mage.service/node_modules/@smithy/service-error-classification": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@smithy/service-error-classification/-/service-error-classification-3.0.3.tgz", + "integrity": "sha512-Jn39sSl8cim/VlkLsUhRFq/dKDnRUFlfRkvhOJaUbLBXUsLRLNf9WaxDv/z9BjuQ3A6k/qE8af1lsqcwm7+DaQ==", + "optional": true, "peer": true, "dependencies": { - "@types/body-parser": "*", - "@types/express-serve-static-core": "^4.17.33", - "@types/qs": "*", - "@types/serve-static": "*" + "@smithy/types": "^3.3.0" + }, + "engines": { + "node": ">=16.0.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/@types/express-serve-static-core": { - "version": "4.17.37", - "resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.17.37.tgz", - "integrity": "sha512-ZohaCYTgGFcOP7u6aJOhY9uIZQgZ2vxC2yWoArY+FeDXlqeH66ZVBjgvg+RLVAS/DWNq4Ap9ZXu1+SUQiiWYMg==", + "node_modules/@ngageoint/mage.service/node_modules/@smithy/shared-ini-file-loader": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/@smithy/shared-ini-file-loader/-/shared-ini-file-loader-3.1.3.tgz", + "integrity": "sha512-Z8Y3+08vgoDgl4HENqNnnzSISAaGrF2RoKupoC47u2wiMp+Z8P/8mDh1CL8+8ujfi2U5naNvopSBmP/BUj8b5w==", + "optional": true, "peer": true, "dependencies": { - "@types/node": "*", - "@types/qs": "*", - "@types/range-parser": "*", - "@types/send": "*" + "@smithy/types": "^3.3.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/@types/fs-extra": { - "version": "8.1.2", - "resolved": "https://registry.npmjs.org/@types/fs-extra/-/fs-extra-8.1.2.tgz", - "integrity": "sha512-SvSrYXfWSc7R4eqnOzbQF4TZmfpNSM9FrSWLU3EUnWBuyZqNBOrv1B1JA3byUDPUl9z4Ab3jeZG2eDdySlgNMg==", - "extraneous": true, + "node_modules/@ngageoint/mage.service/node_modules/@smithy/signature-v4": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@smithy/signature-v4/-/signature-v4-3.1.2.tgz", + "integrity": "sha512-3BcPylEsYtD0esM4Hoyml/+s7WP2LFhcM3J2AGdcL2vx9O60TtfpDOL72gjb4lU8NeRPeKAwR77YNyyGvMbuEA==", + "optional": true, + "peer": true, "dependencies": { - "@types/node": "*" + "@smithy/is-array-buffer": "^3.0.0", + "@smithy/types": "^3.3.0", + "@smithy/util-hex-encoding": "^3.0.0", + "@smithy/util-middleware": "^3.0.3", + "@smithy/util-uri-escape": "^3.0.0", + "@smithy/util-utf8": "^3.0.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/@types/geojson": { - "version": "7946.0.8", - "resolved": "https://registry.npmjs.org/@types/geojson/-/geojson-7946.0.8.tgz", - "integrity": "sha512-1rkryxURpr6aWP7R786/UQOkJ3PcpQiWkAXBmdWc7ryFWqN6a4xfK7BtjXvFBKO9LjQ+MWQSWxYeZX1OApnArA==", - "peer": true - }, - "node_modules/@ngageoint/mage.service/node_modules/@types/json-schema": { - "version": "7.0.13", - "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.13.tgz", - "integrity": "sha512-RbSSoHliUbnXj3ny0CNFOoxrIDV6SUGyStHsvDqosw6CkdPV8TtWGlfecuK4ToyMEAql6pzNxgCFKanovUzlgQ==", - "peer": true - }, - "node_modules/@ngageoint/mage.service/node_modules/@types/json2csv": { - "version": "4.5.1", - "resolved": "https://registry.npmjs.org/@types/json2csv/-/json2csv-4.5.1.tgz", - "integrity": "sha512-sZbRdrTddxYzhydkC5eMEbRXU8pjcV8Zyxf2If7YO3GVxWY18fs0P5YJyjRfkMKTAsA8ynTRQWhvWbHhBzBFVA==", - "extraneous": true, + "node_modules/@ngageoint/mage.service/node_modules/@smithy/smithy-client": { + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/@smithy/smithy-client/-/smithy-client-3.1.5.tgz", + "integrity": "sha512-x9bL9Mx2CT2P1OiUlHM+ZNpbVU6TgT32f9CmTRzqIHA7M4vYrROCWEoC3o4xHNJASoGd4Opos3cXYPgh+/m4Ww==", + "optional": true, + "peer": true, "dependencies": { - "@types/node": "*" + "@smithy/middleware-endpoint": "^3.0.4", + "@smithy/middleware-stack": "^3.0.3", + "@smithy/protocol-http": "^4.0.3", + "@smithy/types": "^3.3.0", + "@smithy/util-stream": "^3.0.5", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/@types/ldapjs": { - "version": "2.2.5", - "resolved": "https://registry.npmjs.org/@types/ldapjs/-/ldapjs-2.2.5.tgz", - "integrity": "sha512-Lv/nD6QDCmcT+V1vaTRnEKE8UgOilVv5pHcQuzkU1LcRe4mbHHuUo/KHi0LKrpdHhQY8FJzryF38fcVdeUIrzg==", + "node_modules/@ngageoint/mage.service/node_modules/@smithy/types": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/@smithy/types/-/types-3.3.0.tgz", + "integrity": "sha512-IxvBBCTFDHbVoK7zIxqA1ZOdc4QfM5HM7rGleCuHi7L1wnKv5Pn69xXJQ9hgxH60ZVygH9/JG0jRgtUncE3QUA==", + "optional": true, "peer": true, "dependencies": { - "@types/node": "*" + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/@types/lodash": { - "version": "4.14.181", - "resolved": "https://registry.npmjs.org/@types/lodash/-/lodash-4.14.181.tgz", - "integrity": "sha512-n3tyKthHJbkiWhDZs3DkhkCzt2MexYHXlX0td5iMplyfwketaOeKboEVBqzceH7juqvEg3q5oUoBFxSLu7zFag==", - "extraneous": true - }, - "node_modules/@ngageoint/mage.service/node_modules/@types/methods": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/@types/methods/-/methods-1.1.4.tgz", - "integrity": "sha512-ymXWVrDiCxTBE3+RIrrP533E70eA+9qu7zdWoHuOmGujkYtzf4HQF96b8nwHLqhuf4ykX61IGRIB38CC6/sImQ==", - "extraneous": true - }, - "node_modules/@ngageoint/mage.service/node_modules/@types/mime": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/@types/mime/-/mime-1.3.2.tgz", - "integrity": "sha512-YATxVxgRqNH6nHEIsvg6k2Boc1JHI9ZbH5iWFFv/MTkchz3b1ieGDa5T0a9RznNdI0KhVbdbWSN+KWWrQZRxTw==", - "peer": true - }, - "node_modules/@ngageoint/mage.service/node_modules/@types/mime-types": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/@types/mime-types/-/mime-types-2.1.1.tgz", - "integrity": "sha512-vXOTGVSLR2jMw440moWTC7H19iUyLtP3Z1YTj7cSsubOICinjMxFeb/V57v9QdyyPGbbWolUFSSmSiRSn94tFw==", - "peer": true - }, - "node_modules/@ngageoint/mage.service/node_modules/@types/mocha": { - "version": "7.0.2", - "resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-7.0.2.tgz", - "integrity": "sha512-ZvO2tAcjmMi8V/5Z3JsyofMe3hasRcaw88cto5etSVMwVQfeivGAlEYmaQgceUSVYFofVjT+ioHsATjdWcFt1w==", - "extraneous": true - }, - "node_modules/@ngageoint/mage.service/node_modules/@types/mongodb": { - "version": "3.6.20", - "resolved": "https://registry.npmjs.org/@types/mongodb/-/mongodb-3.6.20.tgz", - "integrity": "sha512-WcdpPJCakFzcWWD9juKoZbRtQxKIMYF/JIAM4JrNHrMcnJL6/a2NWjXxW7fo9hxboxxkg+icff8d7+WIEvKgYQ==", - "extraneous": true, + "node_modules/@ngageoint/mage.service/node_modules/@smithy/url-parser": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@smithy/url-parser/-/url-parser-3.0.3.tgz", + "integrity": "sha512-pw3VtZtX2rg+s6HMs6/+u9+hu6oY6U7IohGhVNnjbgKy86wcIsSZwgHrFR+t67Uyxvp4Xz3p3kGXXIpTNisq8A==", + "optional": true, + "peer": true, "dependencies": { - "@types/bson": "*", - "@types/node": "*" + "@smithy/querystring-parser": "^3.0.3", + "@smithy/types": "^3.3.0", + "tslib": "^2.6.2" } }, - "node_modules/@ngageoint/mage.service/node_modules/@types/mongoose": { - "version": "4.7.56", - "resolved": "https://registry.npmjs.org/@types/mongoose/-/mongoose-4.7.56.tgz", - "integrity": "sha512-c4bQmM/WUMQvOpEJFJbNjwLU72bzFOtKJ+4HtqdA+wtMhWpwIBoKdL7KsNt7BRjelK0dcSrgymvz/miQuPjikw==", - "extraneous": true, + "node_modules/@ngageoint/mage.service/node_modules/@smithy/util-base64": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@smithy/util-base64/-/util-base64-3.0.0.tgz", + "integrity": "sha512-Kxvoh5Qtt0CDsfajiZOCpJxgtPHXOKwmM+Zy4waD43UoEMA+qPxxa98aE/7ZhdnBFZFXMOiBR5xbcaMhLtznQQ==", + "optional": true, + "peer": true, "dependencies": { - "@types/mongodb": "*", - "@types/node": "*" + "@smithy/util-buffer-from": "^3.0.0", + "@smithy/util-utf8": "^3.0.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/@types/ms": { - "version": "0.7.32", - "resolved": "https://registry.npmjs.org/@types/ms/-/ms-0.7.32.tgz", - "integrity": "sha512-xPSg0jm4mqgEkNhowKgZFBNtwoEwF6gJ4Dhww+GFpm3IgtNseHQZ5IqdNwnquZEoANxyDAKDRAdVo4Z72VvD/g==", - "peer": true - }, - "node_modules/@ngageoint/mage.service/node_modules/@types/multer": { - "version": "1.4.7", - "resolved": "https://registry.npmjs.org/@types/multer/-/multer-1.4.7.tgz", - "integrity": "sha512-/SNsDidUFCvqqcWDwxv2feww/yqhNeTRL5CVoL3jU4Goc4kKEL10T7Eye65ZqPNi4HRx8sAEX59pV1aEH7drNA==", - "extraneous": true, + "node_modules/@ngageoint/mage.service/node_modules/@smithy/util-body-length-browser": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@smithy/util-body-length-browser/-/util-body-length-browser-3.0.0.tgz", + "integrity": "sha512-cbjJs2A1mLYmqmyVl80uoLTJhAcfzMOyPgjwAYusWKMdLeNtzmMz9YxNl3/jRLoxSS3wkqkf0jwNdtXWtyEBaQ==", + "optional": true, + "peer": true, "dependencies": { - "@types/express": "*" + "tslib": "^2.6.2" } }, - "node_modules/@ngageoint/mage.service/node_modules/@types/node": { - "version": "18.18.4", - "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.4.tgz", - "integrity": "sha512-t3rNFBgJRugIhackit2mVcLfF6IRc0JE4oeizPQL8Zrm8n2WY/0wOdpOPhdtG0V9Q2TlW/axbF1MJ6z+Yj/kKQ==", - "peer": true + "node_modules/@ngageoint/mage.service/node_modules/@smithy/util-body-length-node": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@smithy/util-body-length-node/-/util-body-length-node-3.0.0.tgz", + "integrity": "sha512-Tj7pZ4bUloNUP6PzwhN7K386tmSmEET9QtQg0TgdNOnxhZvCssHji+oZTUIuzxECRfG8rdm2PMw2WCFs6eIYkA==", + "optional": true, + "peer": true, + "dependencies": { + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" + } }, - "node_modules/@ngageoint/mage.service/node_modules/@types/node-fetch": { - "version": "2.6.1", - "resolved": "https://registry.npmjs.org/@types/node-fetch/-/node-fetch-2.6.1.tgz", - "integrity": "sha512-oMqjURCaxoSIsHSr1E47QHzbmzNR5rK8McHuNb11BOM9cHcIK3Avy0s/b2JlXHoQGTYS3NsvWzV1M0iK7l0wbA==", - "extraneous": true, + "node_modules/@ngageoint/mage.service/node_modules/@smithy/util-buffer-from": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@smithy/util-buffer-from/-/util-buffer-from-3.0.0.tgz", + "integrity": "sha512-aEOHCgq5RWFbP+UDPvPot26EJHjOC+bRgse5A8V3FSShqd5E5UN4qc7zkwsvJPPAVsf73QwYcHN1/gt/rtLwQA==", + "optional": true, + "peer": true, "dependencies": { - "@types/node": "*", - "form-data": "^3.0.0" + "@smithy/is-array-buffer": "^3.0.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/@types/node-fetch/node_modules/form-data": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-3.0.1.tgz", - "integrity": "sha512-RHkBKtLWUVwd7SqRIvCZMEvAMoGUp0XU+seQiZejj0COz3RI3hWP4sCv3gZWWLjJTd7rGwcsF5eKZGii0r/hbg==", - "extraneous": true, + "node_modules/@ngageoint/mage.service/node_modules/@smithy/util-config-provider": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@smithy/util-config-provider/-/util-config-provider-3.0.0.tgz", + "integrity": "sha512-pbjk4s0fwq3Di/ANL+rCvJMKM5bzAQdE5S/6RL5NXgMExFAi6UgQMPOm5yPaIWPpr+EOXKXRonJ3FoxKf4mCJQ==", + "optional": true, + "peer": true, "dependencies": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.8", - "mime-types": "^2.1.12" + "tslib": "^2.6.2" }, "engines": { - "node": ">= 6" + "node": ">=16.0.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/@types/passport": { - "version": "1.0.13", - "resolved": "https://registry.npmjs.org/@types/passport/-/passport-1.0.13.tgz", - "integrity": "sha512-XXURryL+EZAWtbQFOHX1eNB+RJwz5XMPPz1xrGpEKr2xUZCXM4NCPkHMtZQ3B2tTSG/1IRaAcTHjczRA4sSFCw==", + "node_modules/@ngageoint/mage.service/node_modules/@smithy/util-defaults-mode-browser": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/@smithy/util-defaults-mode-browser/-/util-defaults-mode-browser-3.0.7.tgz", + "integrity": "sha512-Q2txLyvQyGfmjsaDbVV7Sg8psefpFcrnlGapDzXGFRPFKRBeEg6OvFK8FljqjeHSaCZ6/UuzQExUPqBR/2qlDA==", + "optional": true, "peer": true, "dependencies": { - "@types/express": "*" + "@smithy/property-provider": "^3.1.3", + "@smithy/smithy-client": "^3.1.5", + "@smithy/types": "^3.3.0", + "bowser": "^2.11.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">= 10.0.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/@types/passport-strategy": { - "version": "0.2.36", - "resolved": "https://registry.npmjs.org/@types/passport-strategy/-/passport-strategy-0.2.36.tgz", - "integrity": "sha512-hotVZuaCt04LJYXfZD5B+5UeCcRVG8IjKaLLGTJ1eFp0wiFQA2XfsqslGGInWje+OysNNLPH/ducce5GXHDC1Q==", + "node_modules/@ngageoint/mage.service/node_modules/@smithy/util-defaults-mode-node": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/@smithy/util-defaults-mode-node/-/util-defaults-mode-node-3.0.7.tgz", + "integrity": "sha512-F4Qcj1fG6MGi2BSWCslfsMSwllws/WzYONBGtLybyY+halAcXdWhcew+mej8M5SKd5hqPYp4f7b+ABQEaeytgg==", + "optional": true, "peer": true, "dependencies": { - "@types/express": "*", - "@types/passport": "*" + "@smithy/config-resolver": "^3.0.4", + "@smithy/credential-provider-imds": "^3.1.3", + "@smithy/node-config-provider": "^3.1.3", + "@smithy/property-provider": "^3.1.3", + "@smithy/smithy-client": "^3.1.5", + "@smithy/types": "^3.3.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">= 10.0.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/@types/proj4": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/@types/proj4/-/proj4-2.5.2.tgz", - "integrity": "sha512-/Nmfn9p08yaYw6xo5f2b0L+2oHk2kZeOkp5v+4VCeNfq+ETlLQbmHmC97/pjDIEZy8jxwz7pdPpwNzDHM5cuJw==", - "peer": true - }, - "node_modules/@ngageoint/mage.service/node_modules/@types/qs": { - "version": "6.9.7", - "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.7.tgz", - "integrity": "sha512-FGa1F62FT09qcrueBA6qYTrJPVDzah9a+493+o2PCXsesWHIn27G98TsSMs3WPNbZIEj4+VJf6saSFpvD+3Zsw==", - "peer": true - }, - "node_modules/@ngageoint/mage.service/node_modules/@types/range-parser": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/@types/range-parser/-/range-parser-1.2.4.tgz", - "integrity": "sha512-EEhsLsD6UsDM1yFhAvy0Cjr6VwmpMWqFBCb9w07wVugF7w9nfajxLuVmngTIpgS6svCnm6Vaw+MZhoDCKnOfsw==", - "peer": true - }, - "node_modules/@ngageoint/mage.service/node_modules/@types/readdir-glob": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/@types/readdir-glob/-/readdir-glob-1.1.4.tgz", - "integrity": "sha512-uEJsErL2wFCTcbbmJpIuD8OWYNabgv1oaYP2bOkzZXKtk3c6LCYQEKngIqBj2VR2NMv9DOAXSkxSYOWtHxh2gQ==", - "extraneous": true, + "node_modules/@ngageoint/mage.service/node_modules/@smithy/util-endpoints": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/@smithy/util-endpoints/-/util-endpoints-2.0.4.tgz", + "integrity": "sha512-ZAtNf+vXAsgzgRutDDiklU09ZzZiiV/nATyqde4Um4priTmasDH+eLpp3tspL0hS2dEootyFMhu1Y6Y+tzpWBQ==", + "optional": true, + "peer": true, "dependencies": { - "@types/node": "*" + "@smithy/node-config-provider": "^3.1.3", + "@smithy/types": "^3.3.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/@types/semver": { - "version": "7.5.3", - "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.5.3.tgz", - "integrity": "sha512-OxepLK9EuNEIPxWNME+C6WwbRAOOI2o2BaQEGzz5Lu2e4Z5eDnEo+/aVEDMIXywoJitJ7xWd641wrGLZdtwRyw==", - "extraneous": true - }, - "node_modules/@ngageoint/mage.service/node_modules/@types/send": { - "version": "0.17.2", - "resolved": "https://registry.npmjs.org/@types/send/-/send-0.17.2.tgz", - "integrity": "sha512-aAG6yRf6r0wQ29bkS+x97BIs64ZLxeE/ARwyS6wrldMm3C1MdKwCcnnEwMC1slI8wuxJOpiUH9MioC0A0i+GJw==", + "node_modules/@ngageoint/mage.service/node_modules/@smithy/util-hex-encoding": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@smithy/util-hex-encoding/-/util-hex-encoding-3.0.0.tgz", + "integrity": "sha512-eFndh1WEK5YMUYvy3lPlVmYY/fZcQE1D8oSf41Id2vCeIkKJXPcYDCZD+4+xViI6b1XSd7tE+s5AmXzz5ilabQ==", + "optional": true, "peer": true, "dependencies": { - "@types/mime": "^1", - "@types/node": "*" + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/@types/serve-static": { - "version": "1.13.10", - "resolved": "https://registry.npmjs.org/@types/serve-static/-/serve-static-1.13.10.tgz", - "integrity": "sha512-nCkHGI4w7ZgAdNkrEu0bv+4xNV/XDqW+DydknebMOQwkpDGx8G+HTlj7R7ABI8i8nKxVw0wtKPi1D+lPOkh4YQ==", + "node_modules/@ngageoint/mage.service/node_modules/@smithy/util-middleware": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@smithy/util-middleware/-/util-middleware-3.0.3.tgz", + "integrity": "sha512-l+StyYYK/eO3DlVPbU+4Bi06Jjal+PFLSMmlWM1BEwyLxZ3aKkf1ROnoIakfaA7mC6uw3ny7JBkau4Yc+5zfWw==", + "optional": true, "peer": true, "dependencies": { - "@types/mime": "^1", - "@types/node": "*" + "@smithy/types": "^3.3.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/@types/sinon": { - "version": "9.0.11", - "resolved": "https://registry.npmjs.org/@types/sinon/-/sinon-9.0.11.tgz", - "integrity": "sha512-PwP4UY33SeeVKodNE37ZlOsR9cReypbMJOhZ7BVE0lB+Hix3efCOxiJWiE5Ia+yL9Cn2Ch72EjFTRze8RZsNtg==", - "extraneous": true, + "node_modules/@ngageoint/mage.service/node_modules/@smithy/util-retry": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@smithy/util-retry/-/util-retry-3.0.3.tgz", + "integrity": "sha512-AFw+hjpbtVApzpNDhbjNG5NA3kyoMs7vx0gsgmlJF4s+yz1Zlepde7J58zpIRIsdjc+emhpAITxA88qLkPF26w==", + "optional": true, + "peer": true, "dependencies": { - "@types/sinonjs__fake-timers": "*" + "@smithy/service-error-classification": "^3.0.3", + "@smithy/types": "^3.3.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/@types/sinon-chai": { - "version": "3.2.8", - "resolved": "https://registry.npmjs.org/@types/sinon-chai/-/sinon-chai-3.2.8.tgz", - "integrity": "sha512-d4ImIQbT/rKMG8+AXpmcan5T2/PNeSjrYhvkwet6z0p8kzYtfgA32xzOBlbU0yqJfq+/0Ml805iFoODO0LP5/g==", - "extraneous": true, + "node_modules/@ngageoint/mage.service/node_modules/@smithy/util-stream": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/@smithy/util-stream/-/util-stream-3.0.5.tgz", + "integrity": "sha512-xC3L5PKMAT/Bh8fmHNXP9sdQ4+4aKVUU3EEJ2CF/lLk7R+wtMJM+v/1B4en7jO++Wa5spGzFDBCl0QxgbUc5Ug==", + "optional": true, + "peer": true, "dependencies": { - "@types/chai": "*", - "@types/sinon": "*" + "@smithy/fetch-http-handler": "^3.2.0", + "@smithy/node-http-handler": "^3.1.1", + "@smithy/types": "^3.3.0", + "@smithy/util-base64": "^3.0.0", + "@smithy/util-buffer-from": "^3.0.0", + "@smithy/util-hex-encoding": "^3.0.0", + "@smithy/util-utf8": "^3.0.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/@types/sinonjs__fake-timers": { - "version": "8.1.2", - "resolved": "https://registry.npmjs.org/@types/sinonjs__fake-timers/-/sinonjs__fake-timers-8.1.2.tgz", - "integrity": "sha512-9GcLXF0/v3t80caGs5p2rRfkB+a8VBGLJZVih6CNFkx8IZ994wiKKLSRs9nuFwk1HevWs/1mnUmkApGrSGsShA==", - "extraneous": true - }, - "node_modules/@ngageoint/mage.service/node_modules/@types/superagent": { - "version": "8.1.3", - "resolved": "https://registry.npmjs.org/@types/superagent/-/superagent-8.1.3.tgz", - "integrity": "sha512-R/CfN6w2XsixLb1Ii8INfn+BT9sGPvw74OavfkW4SwY+jeUcAwLZv2+bXLJkndnimxjEBm0RPHgcjW9pLCa8cw==", - "extraneous": true, + "node_modules/@ngageoint/mage.service/node_modules/@smithy/util-uri-escape": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@smithy/util-uri-escape/-/util-uri-escape-3.0.0.tgz", + "integrity": "sha512-LqR7qYLgZTD7nWLBecUi4aqolw8Mhza9ArpNEQ881MJJIU2sE5iHCK6TdyqqzcDLy0OPe10IY4T8ctVdtynubg==", + "optional": true, + "peer": true, "dependencies": { - "@types/cookiejar": "^2.1.5", - "@types/methods": "^1.1.4", - "@types/node": "*" + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/@types/supertest": { - "version": "2.0.16", - "resolved": "https://registry.npmjs.org/@types/supertest/-/supertest-2.0.16.tgz", - "integrity": "sha512-6c2ogktZ06tr2ENoZivgm7YnprnhYE4ZoXGMY+oA7IuAf17M8FWvujXZGmxLv8y0PTyts4x5A+erSwVUFA8XSg==", - "extraneous": true, + "node_modules/@ngageoint/mage.service/node_modules/@smithy/util-utf8": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@smithy/util-utf8/-/util-utf8-3.0.0.tgz", + "integrity": "sha512-rUeT12bxFnplYDe815GXbq/oixEGHfRFFtcTF3YdDi/JaENIM6aSYYLJydG83UNzLXeRI5K8abYd/8Sp/QM0kA==", + "optional": true, + "peer": true, "dependencies": { - "@types/superagent": "*" + "@smithy/util-buffer-from": "^3.0.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/@types/uniqid": { - "version": "5.3.2", - "resolved": "https://registry.npmjs.org/@types/uniqid/-/uniqid-5.3.2.tgz", - "integrity": "sha512-/NYoaZpWsnAJDsGYeMNDeG3p3fuUb4AiC7MfKxi5VSu18tXd08w6Ch0fKW94T4FeLXXZwZPoFgHA1O0rDYKyMQ==", - "extraneous": true - }, - "node_modules/@ngageoint/mage.service/node_modules/@types/webidl-conversions": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/@types/webidl-conversions/-/webidl-conversions-7.0.3.tgz", - "integrity": "sha512-CiJJvcRtIgzadHCYXw7dqEnMNRjhGZlYK05Mj9OyktqV8uVT8fD2BFOB7S1uwBE3Kj2Z+4UyPmFw/Ixgw/LAlA==", - "extraneous": true + "node_modules/@ngageoint/mage.service/node_modules/@tokenizer/token": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/@tokenizer/token/-/token-0.3.0.tgz", + "integrity": "sha512-OvjF+z51L3ov0OyAU0duzsYuvO01PH7x4t6DJx+guahgTnBHkhJdG7soQeTSFLWN3efnHyibZ4Z8l2EuWwJN3A==", + "peer": true }, - "node_modules/@ngageoint/mage.service/node_modules/@types/whatwg-url": { - "version": "8.2.2", - "resolved": "https://registry.npmjs.org/@types/whatwg-url/-/whatwg-url-8.2.2.tgz", - "integrity": "sha512-FtQu10RWgn3D9U4aazdwIE2yzphmTJREDqNdODHrbrZmmMqI0vMheC/6NE/J1Yveaj8H+ela+YwWTjq5PGmuhA==", - "extraneous": true, + "node_modules/@ngageoint/mage.service/node_modules/@turf/bbox": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/@turf/bbox/-/bbox-6.3.0.tgz", + "integrity": "sha512-N4ue5Xopu1qieSHP2MA/CJGWHPKaTrVXQJjzHRNcY1vtsO126xbSaJhWUrFc5x5vVkXp0dcucGryO0r5m4o/KA==", + "peer": true, "dependencies": { - "@types/node": "*", - "@types/webidl-conversions": "*" + "@turf/helpers": "^6.3.0", + "@turf/meta": "^6.3.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/@types/xml-crypto": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/@types/xml-crypto/-/xml-crypto-1.4.3.tgz", - "integrity": "sha512-pnvKYb7vUsUIMc+C6JM/j779YWQgOMcwjnqHJ9cdaWXwWEBE1hAqthzeszRx62V5RWMvS+XS9w9tXMOYyUc8zg==", + "node_modules/@ngageoint/mage.service/node_modules/@turf/bearing": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/bearing/-/bearing-6.5.0.tgz", + "integrity": "sha512-dxINYhIEMzgDOztyMZc20I7ssYVNEpSv04VbMo5YPQsqa80KO3TFvbuCahMsCAW5z8Tncc8dwBlEFrmRjJG33A==", "peer": true, "dependencies": { - "@types/node": "*", - "xpath": "0.0.27" + "@turf/helpers": "^6.5.0", + "@turf/invariant": "^6.5.0" + }, + "funding": { + "url": "https://opencollective.com/turf" } }, - "node_modules/@ngageoint/mage.service/node_modules/@types/xml-crypto/node_modules/xpath": { - "version": "0.0.27", - "resolved": "https://registry.npmjs.org/xpath/-/xpath-0.0.27.tgz", - "integrity": "sha512-fg03WRxtkCV6ohClePNAECYsmpKKTv5L8y/X3Dn1hQrec3POx2jHZ/0P2qQ6HvsrU1BmeqXcof3NGGueG6LxwQ==", + "node_modules/@ngageoint/mage.service/node_modules/@turf/boolean-clockwise": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/boolean-clockwise/-/boolean-clockwise-6.5.0.tgz", + "integrity": "sha512-45+C7LC5RMbRWrxh3Z0Eihsc8db1VGBO5d9BLTOAwU4jR6SgsunTfRWR16X7JUwIDYlCVEmnjcXJNi/kIU3VIw==", "peer": true, - "engines": { - "node": ">=0.6.0" + "dependencies": { + "@turf/helpers": "^6.5.0", + "@turf/invariant": "^6.5.0" + }, + "funding": { + "url": "https://opencollective.com/turf" } }, - "node_modules/@ngageoint/mage.service/node_modules/@types/xml-encryption": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/@types/xml-encryption/-/xml-encryption-1.2.2.tgz", - "integrity": "sha512-UeuYOqW3ZzUQfwb/mb3GNZ2/DlVdh5mjJNmB/yFXgQr8/pwlVJ9I2w+AHPfRDzLshe7YpgUB4T1//qgbk6U87Q==", + "node_modules/@ngageoint/mage.service/node_modules/@turf/boolean-point-in-polygon": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/boolean-point-in-polygon/-/boolean-point-in-polygon-6.5.0.tgz", + "integrity": "sha512-DtSuVFB26SI+hj0SjrvXowGTUCHlgevPAIsukssW6BG5MlNSBQAo70wpICBNJL6RjukXg8d2eXaAWuD/CqL00A==", "peer": true, "dependencies": { - "@types/node": "*" + "@turf/helpers": "^6.5.0", + "@turf/invariant": "^6.5.0" + }, + "funding": { + "url": "https://opencollective.com/turf" } }, - "node_modules/@ngageoint/mage.service/node_modules/@types/xml2js": { - "version": "0.4.12", - "resolved": "https://registry.npmjs.org/@types/xml2js/-/xml2js-0.4.12.tgz", - "integrity": "sha512-CZPpQKBZ8db66EP5hCjwvYrLThgZvnyZrPXK2W+UI1oOaWezGt34iOaUCX4Jah2X8+rQqjvl9VKEIT8TR1I0rA==", + "node_modules/@ngageoint/mage.service/node_modules/@turf/boolean-point-on-line": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/boolean-point-on-line/-/boolean-point-on-line-6.5.0.tgz", + "integrity": "sha512-A1BbuQ0LceLHvq7F/P7w3QvfpmZqbmViIUPHdNLvZimFNLo4e6IQunmzbe+8aSStH9QRZm3VOflyvNeXvvpZEQ==", "peer": true, "dependencies": { - "@types/node": "*" + "@turf/helpers": "^6.5.0", + "@turf/invariant": "^6.5.0" + }, + "funding": { + "url": "https://opencollective.com/turf" } }, - "node_modules/@ngageoint/mage.service/node_modules/@typescript-eslint/eslint-plugin": { - "version": "6.7.5", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-6.7.5.tgz", - "integrity": "sha512-JhtAwTRhOUcP96D0Y6KYnwig/MRQbOoLGXTON2+LlyB/N35SP9j1boai2zzwXb7ypKELXMx3DVk9UTaEq1vHEw==", - "extraneous": true, + "node_modules/@ngageoint/mage.service/node_modules/@turf/boolean-within": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/boolean-within/-/boolean-within-6.5.0.tgz", + "integrity": "sha512-YQB3oU18Inx35C/LU930D36RAVe7LDXk1kWsQ8mLmuqYn9YdPsDQTMTkLJMhoQ8EbN7QTdy333xRQ4MYgToteQ==", + "peer": true, "dependencies": { - "@eslint-community/regexpp": "^4.5.1", - "@typescript-eslint/scope-manager": "6.7.5", - "@typescript-eslint/type-utils": "6.7.5", - "@typescript-eslint/utils": "6.7.5", - "@typescript-eslint/visitor-keys": "6.7.5", - "debug": "^4.3.4", - "graphemer": "^1.4.0", - "ignore": "^5.2.4", - "natural-compare": "^1.4.0", - "semver": "^7.5.4", - "ts-api-utils": "^1.0.1" - }, - "engines": { - "node": "^16.0.0 || >=18.0.0" + "@turf/bbox": "^6.5.0", + "@turf/boolean-point-in-polygon": "^6.5.0", + "@turf/boolean-point-on-line": "^6.5.0", + "@turf/helpers": "^6.5.0", + "@turf/invariant": "^6.5.0" }, "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "@typescript-eslint/parser": "^6.0.0 || ^6.0.0-alpha", - "eslint": "^7.0.0 || ^8.0.0" + "url": "https://opencollective.com/turf" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@turf/boolean-within/node_modules/@turf/bbox": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/bbox/-/bbox-6.5.0.tgz", + "integrity": "sha512-RBbLaao5hXTYyyg577iuMtDB8ehxMlUqHEJiMs8jT1GHkFhr6sYre3lmLsPeYEi/ZKj5TP5tt7fkzNdJ4GIVyw==", + "peer": true, + "dependencies": { + "@turf/helpers": "^6.5.0", + "@turf/meta": "^6.5.0" }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } + "funding": { + "url": "https://opencollective.com/turf" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@turf/centroid": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/centroid/-/centroid-6.5.0.tgz", + "integrity": "sha512-MwE1oq5E3isewPprEClbfU5pXljIK/GUOMbn22UM3IFPDJX0KeoyLNwghszkdmFp/qMGL/M13MMWvU+GNLXP/A==", + "peer": true, + "dependencies": { + "@turf/helpers": "^6.5.0", + "@turf/meta": "^6.5.0" + }, + "funding": { + "url": "https://opencollective.com/turf" } }, - "node_modules/@ngageoint/mage.service/node_modules/@typescript-eslint/eslint-plugin/node_modules/debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", - "extraneous": true, + "node_modules/@ngageoint/mage.service/node_modules/@turf/clone": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/clone/-/clone-6.5.0.tgz", + "integrity": "sha512-mzVtTFj/QycXOn6ig+annKrM6ZlimreKYz6f/GSERytOpgzodbQyOgkfwru100O1KQhhjSudKK4DsQ0oyi9cTw==", + "peer": true, "dependencies": { - "ms": "2.1.2" - }, - "engines": { - "node": ">=6.0" + "@turf/helpers": "^6.5.0" }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } + "funding": { + "url": "https://opencollective.com/turf" } }, - "node_modules/@ngageoint/mage.service/node_modules/@typescript-eslint/eslint-plugin/node_modules/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==", - "extraneous": true, + "node_modules/@ngageoint/mage.service/node_modules/@turf/distance": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/distance/-/distance-6.5.0.tgz", + "integrity": "sha512-xzykSLfoURec5qvQJcfifw/1mJa+5UwByZZ5TZ8iaqjGYN0vomhV9aiSLeYdUGtYRESZ+DYC/OzY+4RclZYgMg==", + "peer": true, "dependencies": { - "yallist": "^4.0.0" + "@turf/helpers": "^6.5.0", + "@turf/invariant": "^6.5.0" }, - "engines": { - "node": ">=10" + "funding": { + "url": "https://opencollective.com/turf" } }, - "node_modules/@ngageoint/mage.service/node_modules/@typescript-eslint/eslint-plugin/node_modules/ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "extraneous": true + "node_modules/@ngageoint/mage.service/node_modules/@turf/helpers": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/helpers/-/helpers-6.5.0.tgz", + "integrity": "sha512-VbI1dV5bLFzohYYdgqwikdMVpe7pJ9X3E+dlr425wa2/sMJqYDhTO++ec38/pcPvPE6oD9WEEeU3Xu3gza+VPw==", + "peer": true, + "funding": { + "url": "https://opencollective.com/turf" + } }, - "node_modules/@ngageoint/mage.service/node_modules/@typescript-eslint/eslint-plugin/node_modules/semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", - "extraneous": true, + "node_modules/@ngageoint/mage.service/node_modules/@turf/intersect": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/intersect/-/intersect-6.5.0.tgz", + "integrity": "sha512-2legGJeKrfFkzntcd4GouPugoqPUjexPZnOvfez+3SfIMrHvulw8qV8u7pfVyn2Yqs53yoVCEjS5sEpvQ5YRQg==", + "peer": true, "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" + "@turf/helpers": "^6.5.0", + "@turf/invariant": "^6.5.0", + "polygon-clipping": "^0.15.3" }, - "engines": { - "node": ">=10" + "funding": { + "url": "https://opencollective.com/turf" } }, - "node_modules/@ngageoint/mage.service/node_modules/@typescript-eslint/parser": { - "version": "6.7.5", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-6.7.5.tgz", - "integrity": "sha512-bIZVSGx2UME/lmhLcjdVc7ePBwn7CLqKarUBL4me1C5feOd663liTGjMBGVcGr+BhnSLeP4SgwdvNnnkbIdkCw==", - "extraneous": true, + "node_modules/@ngageoint/mage.service/node_modules/@turf/invariant": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/invariant/-/invariant-6.5.0.tgz", + "integrity": "sha512-Wv8PRNCtPD31UVbdJE/KVAWKe7l6US+lJItRR/HOEW3eh+U/JwRCSUl/KZ7bmjM/C+zLNoreM2TU6OoLACs4eg==", + "peer": true, "dependencies": { - "@typescript-eslint/scope-manager": "6.7.5", - "@typescript-eslint/types": "6.7.5", - "@typescript-eslint/typescript-estree": "6.7.5", - "@typescript-eslint/visitor-keys": "6.7.5", - "debug": "^4.3.4" - }, - "engines": { - "node": "^16.0.0 || >=18.0.0" + "@turf/helpers": "^6.5.0" }, "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "eslint": "^7.0.0 || ^8.0.0" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } + "url": "https://opencollective.com/turf" } }, - "node_modules/@ngageoint/mage.service/node_modules/@typescript-eslint/parser/node_modules/debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", - "extraneous": true, + "node_modules/@ngageoint/mage.service/node_modules/@turf/kinks": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/kinks/-/kinks-6.5.0.tgz", + "integrity": "sha512-ViCngdPt1eEL7hYUHR2eHR662GvCgTc35ZJFaNR6kRtr6D8plLaDju0FILeFFWSc+o8e3fwxZEJKmFj9IzPiIQ==", + "peer": true, "dependencies": { - "ms": "2.1.2" - }, - "engines": { - "node": ">=6.0" + "@turf/helpers": "^6.5.0" }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } + "funding": { + "url": "https://opencollective.com/turf" } }, - "node_modules/@ngageoint/mage.service/node_modules/@typescript-eslint/parser/node_modules/ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "extraneous": true - }, - "node_modules/@ngageoint/mage.service/node_modules/@typescript-eslint/scope-manager": { - "version": "6.7.5", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-6.7.5.tgz", - "integrity": "sha512-GAlk3eQIwWOJeb9F7MKQ6Jbah/vx1zETSDw8likab/eFcqkjSD7BI75SDAeC5N2L0MmConMoPvTsmkrg71+B1A==", - "extraneous": true, + "node_modules/@ngageoint/mage.service/node_modules/@turf/line-intersect": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/line-intersect/-/line-intersect-6.5.0.tgz", + "integrity": "sha512-CS6R1tZvVQD390G9Ea4pmpM6mJGPWoL82jD46y0q1KSor9s6HupMIo1kY4Ny+AEYQl9jd21V3Scz20eldpbTVA==", + "peer": true, "dependencies": { - "@typescript-eslint/types": "6.7.5", - "@typescript-eslint/visitor-keys": "6.7.5" - }, - "engines": { - "node": "^16.0.0 || >=18.0.0" + "@turf/helpers": "^6.5.0", + "@turf/invariant": "^6.5.0", + "@turf/line-segment": "^6.5.0", + "@turf/meta": "^6.5.0", + "geojson-rbush": "3.x" }, "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" + "url": "https://opencollective.com/turf" } }, - "node_modules/@ngageoint/mage.service/node_modules/@typescript-eslint/type-utils": { - "version": "6.7.5", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-6.7.5.tgz", - "integrity": "sha512-Gs0qos5wqxnQrvpYv+pf3XfcRXW6jiAn9zE/K+DlmYf6FcpxeNYN0AIETaPR7rHO4K2UY+D0CIbDP9Ut0U4m1g==", - "extraneous": true, + "node_modules/@ngageoint/mage.service/node_modules/@turf/line-segment": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/line-segment/-/line-segment-6.5.0.tgz", + "integrity": "sha512-jI625Ho4jSuJESNq66Mmi290ZJ5pPZiQZruPVpmHkUw257Pew0alMmb6YrqYNnLUuiVVONxAAKXUVeeUGtycfw==", + "peer": true, "dependencies": { - "@typescript-eslint/typescript-estree": "6.7.5", - "@typescript-eslint/utils": "6.7.5", - "debug": "^4.3.4", - "ts-api-utils": "^1.0.1" - }, - "engines": { - "node": "^16.0.0 || >=18.0.0" + "@turf/helpers": "^6.5.0", + "@turf/invariant": "^6.5.0", + "@turf/meta": "^6.5.0" }, "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "eslint": "^7.0.0 || ^8.0.0" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } + "url": "https://opencollective.com/turf" } }, - "node_modules/@ngageoint/mage.service/node_modules/@typescript-eslint/type-utils/node_modules/debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", - "extraneous": true, + "node_modules/@ngageoint/mage.service/node_modules/@turf/meta": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/meta/-/meta-6.5.0.tgz", + "integrity": "sha512-RrArvtsV0vdsCBegoBtOalgdSOfkBrTJ07VkpiCnq/491W67hnMWmDu7e6Ztw0C3WldRYTXkg3SumfdzZxLBHA==", + "peer": true, "dependencies": { - "ms": "2.1.2" - }, - "engines": { - "node": ">=6.0" + "@turf/helpers": "^6.5.0" }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } + "funding": { + "url": "https://opencollective.com/turf" } }, - "node_modules/@ngageoint/mage.service/node_modules/@typescript-eslint/type-utils/node_modules/ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "extraneous": true - }, - "node_modules/@ngageoint/mage.service/node_modules/@typescript-eslint/types": { - "version": "6.7.5", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-6.7.5.tgz", - "integrity": "sha512-WboQBlOXtdj1tDFPyIthpKrUb+kZf2VroLZhxKa/VlwLlLyqv/PwUNgL30BlTVZV1Wu4Asu2mMYPqarSO4L5ZQ==", - "extraneous": true, - "engines": { - "node": "^16.0.0 || >=18.0.0" + "node_modules/@ngageoint/mage.service/node_modules/@turf/point-to-line-distance": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/point-to-line-distance/-/point-to-line-distance-6.5.0.tgz", + "integrity": "sha512-opHVQ4vjUhNBly1bob6RWy+F+hsZDH9SA0UW36pIRzfpu27qipU18xup0XXEePfY6+wvhF6yL/WgCO2IbrLqEA==", + "peer": true, + "dependencies": { + "@turf/bearing": "^6.5.0", + "@turf/distance": "^6.5.0", + "@turf/helpers": "^6.5.0", + "@turf/invariant": "^6.5.0", + "@turf/meta": "^6.5.0", + "@turf/projection": "^6.5.0", + "@turf/rhumb-bearing": "^6.5.0", + "@turf/rhumb-distance": "^6.5.0" }, "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" + "url": "https://opencollective.com/turf" } }, - "node_modules/@ngageoint/mage.service/node_modules/@typescript-eslint/typescript-estree": { - "version": "6.7.5", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-6.7.5.tgz", - "integrity": "sha512-NhJiJ4KdtwBIxrKl0BqG1Ur+uw7FiOnOThcYx9DpOGJ/Abc9z2xNzLeirCG02Ig3vkvrc2qFLmYSSsaITbKjlg==", - "extraneous": true, + "node_modules/@ngageoint/mage.service/node_modules/@turf/polygon-to-line": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/polygon-to-line/-/polygon-to-line-6.5.0.tgz", + "integrity": "sha512-5p4n/ij97EIttAq+ewSnKt0ruvuM+LIDzuczSzuHTpq4oS7Oq8yqg5TQ4nzMVuK41r/tALCk7nAoBuw3Su4Gcw==", + "peer": true, "dependencies": { - "@typescript-eslint/types": "6.7.5", - "@typescript-eslint/visitor-keys": "6.7.5", - "debug": "^4.3.4", - "globby": "^11.1.0", - "is-glob": "^4.0.3", - "semver": "^7.5.4", - "ts-api-utils": "^1.0.1" - }, - "engines": { - "node": "^16.0.0 || >=18.0.0" + "@turf/helpers": "^6.5.0", + "@turf/invariant": "^6.5.0" }, "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } + "url": "https://opencollective.com/turf" } }, - "node_modules/@ngageoint/mage.service/node_modules/@typescript-eslint/typescript-estree/node_modules/debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", - "extraneous": true, + "node_modules/@ngageoint/mage.service/node_modules/@turf/projection": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/projection/-/projection-6.5.0.tgz", + "integrity": "sha512-/Pgh9mDvQWWu8HRxqpM+tKz8OzgauV+DiOcr3FCjD6ubDnrrmMJlsf6fFJmggw93mtVPrZRL6yyi9aYCQBOIvg==", + "peer": true, "dependencies": { - "ms": "2.1.2" - }, - "engines": { - "node": ">=6.0" + "@turf/clone": "^6.5.0", + "@turf/helpers": "^6.5.0", + "@turf/meta": "^6.5.0" }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } + "funding": { + "url": "https://opencollective.com/turf" } }, - "node_modules/@ngageoint/mage.service/node_modules/@typescript-eslint/typescript-estree/node_modules/globby": { - "version": "11.1.0", - "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz", - "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==", - "extraneous": true, - "dependencies": { - "array-union": "^2.1.0", - "dir-glob": "^3.0.1", - "fast-glob": "^3.2.9", - "ignore": "^5.2.0", - "merge2": "^1.4.1", - "slash": "^3.0.0" - }, - "engines": { - "node": ">=10" + "node_modules/@ngageoint/mage.service/node_modules/@turf/rhumb-bearing": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/rhumb-bearing/-/rhumb-bearing-6.5.0.tgz", + "integrity": "sha512-jMyqiMRK4hzREjQmnLXmkJ+VTNTx1ii8vuqRwJPcTlKbNWfjDz/5JqJlb5NaFDcdMpftWovkW5GevfnuzHnOYA==", + "peer": true, + "dependencies": { + "@turf/helpers": "^6.5.0", + "@turf/invariant": "^6.5.0" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://opencollective.com/turf" } }, - "node_modules/@ngageoint/mage.service/node_modules/@typescript-eslint/typescript-estree/node_modules/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==", - "extraneous": true, + "node_modules/@ngageoint/mage.service/node_modules/@turf/rhumb-distance": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/rhumb-distance/-/rhumb-distance-6.5.0.tgz", + "integrity": "sha512-oKp8KFE8E4huC2Z1a1KNcFwjVOqa99isxNOwfo4g3SUABQ6NezjKDDrnvC4yI5YZ3/huDjULLBvhed45xdCrzg==", + "peer": true, "dependencies": { - "yallist": "^4.0.0" + "@turf/helpers": "^6.5.0", + "@turf/invariant": "^6.5.0" }, - "engines": { - "node": ">=10" + "funding": { + "url": "https://opencollective.com/turf" } }, - "node_modules/@ngageoint/mage.service/node_modules/@typescript-eslint/typescript-estree/node_modules/ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "extraneous": true - }, - "node_modules/@ngageoint/mage.service/node_modules/@typescript-eslint/typescript-estree/node_modules/semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", + "node_modules/@ngageoint/mage.service/node_modules/@types/archiver": { + "version": "5.3.4", + "resolved": "https://registry.npmjs.org/@types/archiver/-/archiver-5.3.4.tgz", + "integrity": "sha512-Lj7fLBIMwYFgViVVZHEdExZC3lVYsl+QL0VmdNdIzGZH544jHveYWij6qdnBgJQDnR7pMKliN9z2cPZFEbhyPw==", "extraneous": true, "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" + "@types/readdir-glob": "*" } }, - "node_modules/@ngageoint/mage.service/node_modules/@typescript-eslint/typescript-estree/node_modules/slash": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", - "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "node_modules/@ngageoint/mage.service/node_modules/@types/async": { + "version": "3.2.24", + "resolved": "https://registry.npmjs.org/@types/async/-/async-3.2.24.tgz", + "integrity": "sha512-8iHVLHsCCOBKjCF2KwFe0p9Z3rfM9mL+sSP8btyR5vTjJRAqpBYD28/ZLgXPf0pjG1VxOvtCV/BgXkQbpSe8Hw==", "extraneous": true, - "engines": { - "node": ">=8" + "license": "MIT" + }, + "node_modules/@ngageoint/mage.service/node_modules/@types/body-parser": { + "version": "1.19.5", + "resolved": "https://registry.npmjs.org/@types/body-parser/-/body-parser-1.19.5.tgz", + "integrity": "sha512-fB3Zu92ucau0iQ0JMCFQE7b/dv8Ot07NI3KaZIkIUNXq82k4eBAqUaneXfleGY9JWskeS9y+u0nXMyspcuQrCg==", + "peer": true, + "dependencies": { + "@types/connect": "*", + "@types/node": "*" } }, - "node_modules/@ngageoint/mage.service/node_modules/@typescript-eslint/utils": { - "version": "6.7.5", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-6.7.5.tgz", - "integrity": "sha512-pfRRrH20thJbzPPlPc4j0UNGvH1PjPlhlCMq4Yx7EGjV7lvEeGX0U6MJYe8+SyFutWgSHsdbJ3BXzZccYggezA==", + "node_modules/@ngageoint/mage.service/node_modules/@types/bson": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/@types/bson/-/bson-1.0.11.tgz", + "integrity": "sha512-j+UcCWI+FsbI5/FQP/Kj2CXyplWAz39ktHFkXk84h7dNblKRSoNJs95PZFRd96NQGqsPEPgeclqnznWZr14ZDA==", "extraneous": true, "dependencies": { - "@eslint-community/eslint-utils": "^4.4.0", - "@types/json-schema": "^7.0.12", - "@types/semver": "^7.5.0", - "@typescript-eslint/scope-manager": "6.7.5", - "@typescript-eslint/types": "6.7.5", - "@typescript-eslint/typescript-estree": "6.7.5", - "semver": "^7.5.4" - }, - "engines": { - "node": "^16.0.0 || >=18.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "eslint": "^7.0.0 || ^8.0.0" + "@types/node": "*" } }, - "node_modules/@ngageoint/mage.service/node_modules/@typescript-eslint/utils/node_modules/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==", + "node_modules/@ngageoint/mage.service/node_modules/@types/busboy": { + "version": "1.5.4", + "resolved": "https://registry.npmjs.org/@types/busboy/-/busboy-1.5.4.tgz", + "integrity": "sha512-kG7WrUuAKK0NoyxfQHsVE6j1m01s6kMma64E+OZenQABMQyTJop1DumUWcLwAQ2JzpefU7PDYoRDKl8uZosFjw==", "extraneous": true, + "license": "MIT", "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" + "@types/node": "*" } }, - "node_modules/@ngageoint/mage.service/node_modules/@typescript-eslint/utils/node_modules/semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", + "node_modules/@ngageoint/mage.service/node_modules/@types/chai": { + "version": "4.3.20", + "resolved": "https://registry.npmjs.org/@types/chai/-/chai-4.3.20.tgz", + "integrity": "sha512-/pC9HAB5I/xMlc5FP77qjCnI16ChlJfW0tGa0IUcFn38VJrTV6DeZ60NU5KZBtaOZqjdpwTWohz5HU1RrhiYxQ==", + "extraneous": true, + "license": "MIT" + }, + "node_modules/@ngageoint/mage.service/node_modules/@types/chai-as-promised": { + "version": "7.1.8", + "resolved": "https://registry.npmjs.org/@types/chai-as-promised/-/chai-as-promised-7.1.8.tgz", + "integrity": "sha512-ThlRVIJhr69FLlh6IctTXFkmhtP3NpMZ2QGq69StYLyKZFp/HOp1VdKZj7RvfNWYYcJ1xlbLGLLWj1UvP5u/Gw==", "extraneous": true, + "license": "MIT", "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" + "@types/chai": "*" } }, - "node_modules/@ngageoint/mage.service/node_modules/@typescript-eslint/visitor-keys": { - "version": "6.7.5", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-6.7.5.tgz", - "integrity": "sha512-3MaWdDZtLlsexZzDSdQWsFQ9l9nL8B80Z4fImSpyllFC/KLqWQRdEcB+gGGO+N3Q2uL40EsG66wZLsohPxNXvg==", - "extraneous": true, + "node_modules/@ngageoint/mage.service/node_modules/@types/connect": { + "version": "3.4.38", + "resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.38.tgz", + "integrity": "sha512-K6uROf1LD88uDQqJCktA4yzL1YYAK6NgfsI0v/mTgyPKWsX1CnJ0XPSDhViejru1GcRkLWb8RlzFYJRqGUbaug==", + "peer": true, "dependencies": { - "@typescript-eslint/types": "6.7.5", - "eslint-visitor-keys": "^3.4.1" - }, - "engines": { - "node": "^16.0.0 || >=18.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" + "@types/node": "*" } }, - "node_modules/@ngageoint/mage.service/node_modules/@xmldom/xmldom": { - "version": "0.8.10", - "resolved": "https://registry.npmjs.org/@xmldom/xmldom/-/xmldom-0.8.10.tgz", - "integrity": "sha512-2WALfTl4xo2SkGCYRt6rDTFfk9R1czmBvUQy12gK2KuRKIpWEhcbbzy8EZXtz/jkRqHX8bFEc6FC1HjX4TUWYw==", + "node_modules/@ngageoint/mage.service/node_modules/@types/cookiejar": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@types/cookiejar/-/cookiejar-2.1.5.tgz", + "integrity": "sha512-he+DHOWReW0nghN24E1WUqM0efK4kI9oTqDm6XmK8ZPe2djZ90BSNdGnIyCLzCPw7/pogPlGbzI2wHGGmi4O/Q==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/@types/debug": { + "version": "4.1.12", + "resolved": "https://registry.npmjs.org/@types/debug/-/debug-4.1.12.tgz", + "integrity": "sha512-vIChWdVG3LG1SMxEvI/AK+FWJthlrqlTu7fbrlywTkkaONwk/UAGaULXRlf8vkzFBLVm0zkMdCquhL5aOjhXPQ==", "peer": true, - "engines": { - "node": ">=10.0.0" + "dependencies": { + "@types/ms": "*" } }, - "node_modules/@ngageoint/mage.service/node_modules/abstract-logging": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/abstract-logging/-/abstract-logging-2.0.1.tgz", - "integrity": "sha512-2BjRTZxTPvheOvGbBslFSYOUkr+SjPtOnrLP33f+VIWLzezQpZcqVg7ja3L4dBXmzzgwT+a029jRx5PCi3JuiA==", - "peer": true + "node_modules/@ngageoint/mage.service/node_modules/@types/deep-equal": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/@types/deep-equal/-/deep-equal-1.0.4.tgz", + "integrity": "sha512-tqdiS4otQP4KmY0PR3u6KbZ5EWvhNdUoS/jc93UuK23C220lOZ/9TvjfxdPcKvqwwDVtmtSCrnr0p/2dirAxkA==", + "extraneous": true, + "license": "MIT" }, - "node_modules/@ngageoint/mage.service/node_modules/accepts": { - "version": "1.3.8", - "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz", - "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==", + "node_modules/@ngageoint/mage.service/node_modules/@types/express": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/@types/express/-/express-4.17.21.tgz", + "integrity": "sha512-ejlPM315qwLpaQlQDTjPdsUFSc6ZsP4AN6AlWnogPjQ7CVi7PYF3YVz+CY3jE2pwYf7E/7HlDAN0rV2GxTG0HQ==", + "license": "MIT", "peer": true, "dependencies": { - "mime-types": "~2.1.34", - "negotiator": "0.6.3" - }, - "engines": { - "node": ">= 0.6" + "@types/body-parser": "*", + "@types/express-serve-static-core": "^4.17.33", + "@types/qs": "*", + "@types/serve-static": "*" } }, - "node_modules/@ngageoint/mage.service/node_modules/acorn": { - "version": "7.4.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", - "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", + "node_modules/@ngageoint/mage.service/node_modules/@types/express-serve-static-core": { + "version": "4.19.6", + "resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.19.6.tgz", + "integrity": "sha512-N4LZ2xG7DatVqhCZzOGb1Yi5lMbXSZcmdLDe9EzSndPV2HpWYWzRbaerl2n27irrm94EPpprqa8KpskPT085+A==", + "license": "MIT", "peer": true, - "bin": { - "acorn": "bin/acorn" - }, - "engines": { - "node": ">=0.4.0" + "dependencies": { + "@types/node": "*", + "@types/qs": "*", + "@types/range-parser": "*", + "@types/send": "*" } }, - "node_modules/@ngageoint/mage.service/node_modules/acorn-jsx": { - "version": "5.3.2", - "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", - "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", + "node_modules/@ngageoint/mage.service/node_modules/@types/fs-extra": { + "version": "8.1.5", + "resolved": "https://registry.npmjs.org/@types/fs-extra/-/fs-extra-8.1.5.tgz", + "integrity": "sha512-0dzKcwO+S8s2kuF5Z9oUWatQJj5Uq/iqphEtE3GQJVRRYm/tD1LglU2UnXi2A8jLq5umkGouOXOR9y0n613ZwQ==", "extraneous": true, - "peerDependencies": { - "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" + "license": "MIT", + "dependencies": { + "@types/node": "*" } }, - "node_modules/@ngageoint/mage.service/node_modules/adm-zip": { - "version": "0.4.9", - "resolved": "https://registry.npmjs.org/adm-zip/-/adm-zip-0.4.9.tgz", - "integrity": "sha512-eknaJ3Io/JasGGinVeqY5TsPlQgHbiNlHnK5zdFPRNs9XRggDykKz8zPesneOMEZJxWji7G3CfsUW0Ds9Dw0Bw==", - "peer": true, - "engines": { - "node": ">=0.3.0" - } + "node_modules/@ngageoint/mage.service/node_modules/@types/geojson": { + "version": "7946.0.16", + "resolved": "https://registry.npmjs.org/@types/geojson/-/geojson-7946.0.16.tgz", + "integrity": "sha512-6C8nqWur3j98U6+lXDfTUWIfgvZU+EumvpHKcYjujKH7woYyLj2sUmff0tRhrqM7BohUw7Pz3ZB1jj2gW9Fvmg==", + "license": "MIT", + "peer": true }, - "node_modules/@ngageoint/mage.service/node_modules/agent-base": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.0.tgz", - "integrity": "sha512-o/zjMZRhJxny7OyEF+Op8X+efiELC7k7yOjMzgfzVqOzXqkBkWI79YoTdOtsuWd5BWhAGAuOY/Xa6xpiaWXiNg==", + "node_modules/@ngageoint/mage.service/node_modules/@types/http-errors": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/@types/http-errors/-/http-errors-2.0.4.tgz", + "integrity": "sha512-D0CFMMtydbJAegzOyHjtiKPLlvnm3iTZyZRSZoLq2mRhDdmLfIWOCYPfQJ4cu2erKghU++QvjcUjp/5h7hESpA==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/@types/json-schema": { + "version": "7.0.15", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.15.tgz", + "integrity": "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==", + "license": "MIT", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/@types/json2csv": { + "version": "4.5.1", + "resolved": "https://registry.npmjs.org/@types/json2csv/-/json2csv-4.5.1.tgz", + "integrity": "sha512-sZbRdrTddxYzhydkC5eMEbRXU8pjcV8Zyxf2If7YO3GVxWY18fs0P5YJyjRfkMKTAsA8ynTRQWhvWbHhBzBFVA==", "extraneous": true, + "license": "MIT", "dependencies": { - "debug": "^4.3.4" - }, - "engines": { - "node": ">= 14" + "@types/node": "*" } }, - "node_modules/@ngageoint/mage.service/node_modules/agent-base/node_modules/debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", - "extraneous": true, + "node_modules/@ngageoint/mage.service/node_modules/@types/ldapjs": { + "version": "2.2.5", + "resolved": "https://registry.npmjs.org/@types/ldapjs/-/ldapjs-2.2.5.tgz", + "integrity": "sha512-Lv/nD6QDCmcT+V1vaTRnEKE8UgOilVv5pHcQuzkU1LcRe4mbHHuUo/KHi0LKrpdHhQY8FJzryF38fcVdeUIrzg==", + "peer": true, "dependencies": { - "ms": "2.1.2" - }, - "engines": { - "node": ">=6.0" - }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } + "@types/node": "*" } }, - "node_modules/@ngageoint/mage.service/node_modules/agent-base/node_modules/ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "node_modules/@ngageoint/mage.service/node_modules/@types/lodash": { + "version": "4.17.16", + "resolved": "https://registry.npmjs.org/@types/lodash/-/lodash-4.17.16.tgz", + "integrity": "sha512-HX7Em5NYQAXKW+1T+FiuG27NGwzJfCX3s1GjOa7ujxZa52kjJLOr4FUxT+giF6Tgxv1e+/czV/iTtBw27WTU9g==", + "extraneous": true, + "license": "MIT" + }, + "node_modules/@ngageoint/mage.service/node_modules/@types/methods": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/@types/methods/-/methods-1.1.4.tgz", + "integrity": "sha512-ymXWVrDiCxTBE3+RIrrP533E70eA+9qu7zdWoHuOmGujkYtzf4HQF96b8nwHLqhuf4ykX61IGRIB38CC6/sImQ==", "extraneous": true }, - "node_modules/@ngageoint/mage.service/node_modules/ajv": { - "version": "6.12.6", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", - "extraneous": true, - "dependencies": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/epoberezkin" - } + "node_modules/@ngageoint/mage.service/node_modules/@types/mime": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/@types/mime/-/mime-1.3.5.tgz", + "integrity": "sha512-/pyBZWSLD2n0dcHE3hq8s8ZvcETHtEuF+3E7XVt0Ig2nvsVQXdghHVcEkIWjy9A0wKfTn97a/PSDYohKIlnP/w==", + "peer": true }, - "node_modules/@ngageoint/mage.service/node_modules/ansi-colors": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-3.2.3.tgz", - "integrity": "sha512-LEHHyuhlPY3TmuUYMh2oz89lTShfvgbmzaBcxve9t/9Wuy7Dwf4yoAKcND7KFT1HAQfqZ12qtc+DUrBMeKF9nw==", + "node_modules/@ngageoint/mage.service/node_modules/@types/mime-types": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/@types/mime-types/-/mime-types-2.1.4.tgz", + "integrity": "sha512-lfU4b34HOri+kAY5UheuFMWPDOI+OPceBSHZKp69gEyTL/mmJ4cnU6Y/rlme3UL3GyOn6Y42hyIEw0/q8sWx5w==", + "license": "MIT", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/@types/mocha": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-7.0.2.tgz", + "integrity": "sha512-ZvO2tAcjmMi8V/5Z3JsyofMe3hasRcaw88cto5etSVMwVQfeivGAlEYmaQgceUSVYFofVjT+ioHsATjdWcFt1w==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/@types/ms": { + "version": "0.7.34", + "resolved": "https://registry.npmjs.org/@types/ms/-/ms-0.7.34.tgz", + "integrity": "sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/@types/multer": { + "version": "1.4.12", + "resolved": "https://registry.npmjs.org/@types/multer/-/multer-1.4.12.tgz", + "integrity": "sha512-pQ2hoqvXiJt2FP9WQVLPRO+AmiIm/ZYkavPlIQnx282u4ZrVdztx0pkh3jjpQt0Kz+YI0YhSG264y08UJKoUQg==", "extraneous": true, - "engines": { - "node": ">=6" + "license": "MIT", + "dependencies": { + "@types/express": "*" } }, - "node_modules/@ngageoint/mage.service/node_modules/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==", - "optional": true, + "node_modules/@ngageoint/mage.service/node_modules/@types/node": { + "version": "18.19.80", + "resolved": "https://registry.npmjs.org/@types/node/-/node-18.19.80.tgz", + "integrity": "sha512-kEWeMwMeIvxYkeg1gTc01awpwLbfMRZXdIhwRcakd/KlK53jmRC26LqcbIt7fnAQTu5GzlnWmzA3H6+l1u6xxQ==", + "license": "MIT", "peer": true, "dependencies": { - "type-fest": "^0.21.3" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "undici-types": "~5.26.4" } }, - "node_modules/@ngageoint/mage.service/node_modules/ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", - "optional": true, - "peer": true, - "engines": { - "node": ">=0.10.0" + "node_modules/@ngageoint/mage.service/node_modules/@types/node-fetch": { + "version": "2.6.12", + "resolved": "https://registry.npmjs.org/@types/node-fetch/-/node-fetch-2.6.12.tgz", + "integrity": "sha512-8nneRWKCg3rMtF69nLQJnOYUcbafYeFSjqkw3jCRLsqkWFlHaoQrr5mXmofFGOx3DKn7UfmBMyov8ySvLRVldA==", + "extraneous": true, + "license": "MIT", + "dependencies": { + "@types/node": "*", + "form-data": "^4.0.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "optional": true, + "node_modules/@ngageoint/mage.service/node_modules/@types/passport": { + "version": "1.0.17", + "resolved": "https://registry.npmjs.org/@types/passport/-/passport-1.0.17.tgz", + "integrity": "sha512-aciLyx+wDwT2t2/kJGJR2AEeBz0nJU4WuRX04Wu9Dqc5lSUtwu0WERPHYsLhF9PtseiAMPBGNUOtFjxZ56prsg==", + "license": "MIT", "peer": true, "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" + "@types/express": "*" } }, - "node_modules/@ngageoint/mage.service/node_modules/anymatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.2.tgz", - "integrity": "sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==", - "extraneous": true, + "node_modules/@ngageoint/mage.service/node_modules/@types/passport-strategy": { + "version": "0.2.38", + "resolved": "https://registry.npmjs.org/@types/passport-strategy/-/passport-strategy-0.2.38.tgz", + "integrity": "sha512-GC6eMqqojOooq993Tmnmp7AUTbbQSgilyvpCYQjT+H6JfG/g6RGc7nXEniZlp0zyKJ0WUdOiZWLBZft9Yug1uA==", + "peer": true, "dependencies": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" - }, - "engines": { - "node": ">= 8" + "@types/express": "*", + "@types/passport": "*" } }, - "node_modules/@ngageoint/mage.service/node_modules/append-field": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/append-field/-/append-field-1.0.0.tgz", - "integrity": "sha1-HjRA6RXwsSA9I3SOeO3XubW0PlY=", + "node_modules/@ngageoint/mage.service/node_modules/@types/proj4": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/@types/proj4/-/proj4-2.5.2.tgz", + "integrity": "sha512-/Nmfn9p08yaYw6xo5f2b0L+2oHk2kZeOkp5v+4VCeNfq+ETlLQbmHmC97/pjDIEZy8jxwz7pdPpwNzDHM5cuJw==", "peer": true }, - "node_modules/@ngageoint/mage.service/node_modules/append-transform": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/append-transform/-/append-transform-1.0.0.tgz", - "integrity": "sha512-P009oYkeHyU742iSZJzZZywj4QRJdnTWffaKuJQLablCZ1uz6/cW4yaRgcDaoQ+uwOxxnt0gRUcwfsNP2ri0gw==", + "node_modules/@ngageoint/mage.service/node_modules/@types/qs": { + "version": "6.9.15", + "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.15.tgz", + "integrity": "sha512-uXHQKES6DQKKCLh441Xv/dwxOq1TVS3JPUMlEqoEglvlhR6Mxnlew/Xq/LRVHpLyk7iK3zODe1qYHIMltO7XGg==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/@types/range-parser": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/@types/range-parser/-/range-parser-1.2.7.tgz", + "integrity": "sha512-hKormJbkJqzQGhziax5PItDUTMAM9uE2XXQmM37dyd4hVM+5aVl7oVxMVUiVQn2oCQFN/LKCZdvSM0pFRqbSmQ==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/@types/readdir-glob": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/@types/readdir-glob/-/readdir-glob-1.1.5.tgz", + "integrity": "sha512-raiuEPUYqXu+nvtY2Pe8s8FEmZ3x5yAH4VkLdihcPdalvsHltomrRC9BzuStrJ9yk06470hS0Crw0f1pXqD+Hg==", "extraneous": true, "dependencies": { - "default-require-extensions": "^2.0.0" - }, - "engines": { - "node": ">=4" + "@types/node": "*" } }, - "node_modules/@ngageoint/mage.service/node_modules/aproba": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", - "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==", - "optional": true, - "peer": true + "node_modules/@ngageoint/mage.service/node_modules/@types/semver": { + "version": "7.5.8", + "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.5.8.tgz", + "integrity": "sha512-I8EUhyrgfLrcTkzV3TSsGyl1tSuPrEDzr0yd5m90UgNxQkyDXULk3b6MlQqTCpZpNtWe1K0hzclnZkTcLBe2UQ==", + "extraneous": true, + "license": "MIT" }, - "node_modules/@ngageoint/mage.service/node_modules/archiver": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/archiver/-/archiver-5.3.0.tgz", - "integrity": "sha512-iUw+oDwK0fgNpvveEsdQ0Ase6IIKztBJU2U0E9MzszMfmVVUyv1QJhS2ITW9ZCqx8dktAxVAjWWkKehuZE8OPg==", + "node_modules/@ngageoint/mage.service/node_modules/@types/send": { + "version": "0.17.4", + "resolved": "https://registry.npmjs.org/@types/send/-/send-0.17.4.tgz", + "integrity": "sha512-x2EM6TJOybec7c52BX0ZspPodMsQUd5L6PRwOunVyVUhXiBSKf3AezDL8Dgvgt5o0UfKNfuA0eMLr2wLT4AiBA==", "peer": true, "dependencies": { - "archiver-utils": "^2.1.0", - "async": "^3.2.0", - "buffer-crc32": "^0.2.1", - "readable-stream": "^3.6.0", - "readdir-glob": "^1.0.0", - "tar-stream": "^2.2.0", - "zip-stream": "^4.1.0" - }, - "engines": { - "node": ">= 10" + "@types/mime": "^1", + "@types/node": "*" } }, - "node_modules/@ngageoint/mage.service/node_modules/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==", + "node_modules/@ngageoint/mage.service/node_modules/@types/serve-static": { + "version": "1.15.7", + "resolved": "https://registry.npmjs.org/@types/serve-static/-/serve-static-1.15.7.tgz", + "integrity": "sha512-W8Ym+h8nhuRwaKPaDw34QUkwsGi6Rc4yYqvKFo5rm2FUEhCFbzVWrxXUxuKK8TASjWsysJY0nsmNCGhCOIsrOw==", "peer": true, "dependencies": { - "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" - }, - "engines": { - "node": ">= 6" + "@types/http-errors": "*", + "@types/node": "*", + "@types/send": "*" } }, - "node_modules/@ngageoint/mage.service/node_modules/archiver/node_modules/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==", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/@types/sinon": { + "version": "9.0.11", + "resolved": "https://registry.npmjs.org/@types/sinon/-/sinon-9.0.11.tgz", + "integrity": "sha512-PwP4UY33SeeVKodNE37ZlOsR9cReypbMJOhZ7BVE0lB+Hix3efCOxiJWiE5Ia+yL9Cn2Ch72EjFTRze8RZsNtg==", + "extraneous": true, + "license": "MIT", "dependencies": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - }, - "engines": { - "node": ">= 6" + "@types/sinonjs__fake-timers": "*" } }, - "node_modules/@ngageoint/mage.service/node_modules/archiver/node_modules/string_decoder": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", - "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/@types/sinon-chai": { + "version": "3.2.12", + "resolved": "https://registry.npmjs.org/@types/sinon-chai/-/sinon-chai-3.2.12.tgz", + "integrity": "sha512-9y0Gflk3b0+NhQZ/oxGtaAJDvRywCa5sIyaVnounqLvmf93yBF4EgIRspePtkMs3Tr844nCclYMlcCNmLCvjuQ==", + "extraneous": true, + "license": "MIT", "dependencies": { - "safe-buffer": "~5.2.0" + "@types/chai": "*", + "@types/sinon": "*" } }, - "node_modules/@ngageoint/mage.service/node_modules/archy": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/archy/-/archy-1.0.0.tgz", - "integrity": "sha1-+cjBN1fMHde8N5rHeyxipcKGjEA=", + "node_modules/@ngageoint/mage.service/node_modules/@types/sinonjs__fake-timers": { + "version": "8.1.5", + "resolved": "https://registry.npmjs.org/@types/sinonjs__fake-timers/-/sinonjs__fake-timers-8.1.5.tgz", + "integrity": "sha512-mQkU2jY8jJEF7YHjHvsQO8+3ughTL1mcnn96igfhONmR+fUPSKIkefQYpSe8bsly2Ep7oQbn/6VG5/9/0qcArQ==", "extraneous": true }, - "node_modules/@ngageoint/mage.service/node_modules/are-we-there-yet": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.7.tgz", - "integrity": "sha512-nxwy40TuMiUGqMyRHgCSWZ9FM4VAoRP4xUYSTv5ImRog+h9yISPbVH7H8fASCIzYn9wlEv4zvFL7uKDMCFQm3g==", - "optional": true, - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/@types/superagent": { + "version": "8.1.9", + "resolved": "https://registry.npmjs.org/@types/superagent/-/superagent-8.1.9.tgz", + "integrity": "sha512-pTVjI73witn+9ILmoJdajHGW2jkSaOzhiFYF1Rd3EQ94kymLqB9PjD9ISg7WaALC7+dCHT0FGe9T2LktLq/3GQ==", + "extraneous": true, + "license": "MIT", "dependencies": { - "delegates": "^1.0.0", - "readable-stream": "^2.0.6" + "@types/cookiejar": "^2.1.5", + "@types/methods": "^1.1.4", + "@types/node": "*", + "form-data": "^4.0.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/argparse": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/@types/supertest": { + "version": "2.0.16", + "resolved": "https://registry.npmjs.org/@types/supertest/-/supertest-2.0.16.tgz", + "integrity": "sha512-6c2ogktZ06tr2ENoZivgm7YnprnhYE4ZoXGMY+oA7IuAf17M8FWvujXZGmxLv8y0PTyts4x5A+erSwVUFA8XSg==", + "extraneous": true, "dependencies": { - "sprintf-js": "~1.0.2" + "@types/superagent": "*" } }, - "node_modules/@ngageoint/mage.service/node_modules/array-flatten": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", - "integrity": "sha1-ml9pkFGx5wczKPKgCJaLZOopVdI=", - "peer": true - }, - "node_modules/@ngageoint/mage.service/node_modules/array-from": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/array-from/-/array-from-2.1.1.tgz", - "integrity": "sha1-z+nYwmYoudxa7MYqn12PHzUsEZU=", - "extraneous": true - }, - "node_modules/@ngageoint/mage.service/node_modules/array-parallel": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/array-parallel/-/array-parallel-0.1.3.tgz", - "integrity": "sha1-j3hTCJJu1apHjEfmTRszS2wMlH0=", - "peer": true + "node_modules/@ngageoint/mage.service/node_modules/@types/uniqid": { + "version": "5.3.4", + "resolved": "https://registry.npmjs.org/@types/uniqid/-/uniqid-5.3.4.tgz", + "integrity": "sha512-AgC+o3/8/QEHuU3w5w2jZ8auQtjSJ/s8G8RfEk9CYLogK1RGXqxhHH0wOEAu8uHXjvj8oh/dRtfgok4IHKxh/Q==", + "extraneous": true, + "license": "MIT" }, - "node_modules/@ngageoint/mage.service/node_modules/array-series": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/array-series/-/array-series-0.1.5.tgz", - "integrity": "sha1-3103v8XC7wdV4qpPkv6ufUtaly8=", + "node_modules/@ngageoint/mage.service/node_modules/@types/webidl-conversions": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/@types/webidl-conversions/-/webidl-conversions-7.0.3.tgz", + "integrity": "sha512-CiJJvcRtIgzadHCYXw7dqEnMNRjhGZlYK05Mj9OyktqV8uVT8fD2BFOB7S1uwBE3Kj2Z+4UyPmFw/Ixgw/LAlA==", "peer": true }, - "node_modules/@ngageoint/mage.service/node_modules/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==", - "extraneous": true, - "engines": { - "node": ">=8" + "node_modules/@ngageoint/mage.service/node_modules/@types/whatwg-url": { + "version": "8.2.2", + "resolved": "https://registry.npmjs.org/@types/whatwg-url/-/whatwg-url-8.2.2.tgz", + "integrity": "sha512-FtQu10RWgn3D9U4aazdwIE2yzphmTJREDqNdODHrbrZmmMqI0vMheC/6NE/J1Yveaj8H+ela+YwWTjq5PGmuhA==", + "peer": true, + "dependencies": { + "@types/node": "*", + "@types/webidl-conversions": "*" } }, - "node_modules/@ngageoint/mage.service/node_modules/arrify": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/arrify/-/arrify-3.0.0.tgz", - "integrity": "sha512-tLkvA81vQG/XqE2mjDkGQHoOINtMHtysSnemrmoGe6PydDPMRbVugqyk4A6V/WDWEfm3l+0d8anA9r8cv/5Jaw==", - "extraneous": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node_modules/@ngageoint/mage.service/node_modules/@types/xml-crypto": { + "version": "1.4.6", + "resolved": "https://registry.npmjs.org/@types/xml-crypto/-/xml-crypto-1.4.6.tgz", + "integrity": "sha512-A6jEW2FxLZo1CXsRWnZHUX2wzR3uDju2Bozt6rDbSmU/W8gkilaVbwFEVN0/NhnUdMVzwYobWtM6bU1QJJFb7Q==", + "peer": true, + "dependencies": { + "@types/node": "*", + "xpath": "0.0.27" } }, - "node_modules/@ngageoint/mage.service/node_modules/asap": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz", - "integrity": "sha1-5QNHYR1+aQlDIIu9r+vLwvuGbUY=", - "peer": true - }, - "node_modules/@ngageoint/mage.service/node_modules/asn1": { - "version": "0.2.6", - "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.6.tgz", - "integrity": "sha512-ix/FxPn0MDjeyJ7i/yoHGFt/EX6LyNbxSEhPPXODPL+KB0VPk86UYfL0lMdy+KCnv+fmvIzySwaK5COwqVbWTQ==", + "node_modules/@ngageoint/mage.service/node_modules/@types/xml-crypto/node_modules/xpath": { + "version": "0.0.27", + "resolved": "https://registry.npmjs.org/xpath/-/xpath-0.0.27.tgz", + "integrity": "sha512-fg03WRxtkCV6ohClePNAECYsmpKKTv5L8y/X3Dn1hQrec3POx2jHZ/0P2qQ6HvsrU1BmeqXcof3NGGueG6LxwQ==", "peer": true, - "dependencies": { - "safer-buffer": "~2.1.0" + "engines": { + "node": ">=0.6.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/assert": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/assert/-/assert-2.0.0.tgz", - "integrity": "sha512-se5Cd+js9dXJnu6Ag2JFc00t+HmHOen+8Q+L7O9zI0PqQXr20uk2J0XQqMxZEeo5U50o8Nvmmx7dZrl+Ufr35A==", - "extraneous": true, + "node_modules/@ngageoint/mage.service/node_modules/@types/xml-encryption": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/@types/xml-encryption/-/xml-encryption-1.2.4.tgz", + "integrity": "sha512-I69K/WW1Dv7j6O3jh13z0X8sLWJRXbu5xnHDl9yHzUNDUBtUoBY058eb5s+x/WG6yZC1h8aKdI2EoyEPjyEh+Q==", + "peer": true, "dependencies": { - "es6-object-assign": "^1.1.0", - "is-nan": "^1.2.1", - "object-is": "^1.0.1", - "util": "^0.12.0" + "@types/node": "*" } }, - "node_modules/@ngageoint/mage.service/node_modules/assert-never": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/assert-never/-/assert-never-1.2.1.tgz", - "integrity": "sha512-TaTivMB6pYI1kXwrFlEhLeGfOqoDNdTxjCdwRfFFkEA30Eu+k48W34nlok2EYWJfFFzqaEmichdNM7th6M5HNw==", - "peer": true - }, - "node_modules/@ngageoint/mage.service/node_modules/assert-plus": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", - "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=", + "node_modules/@ngageoint/mage.service/node_modules/@types/xml2js": { + "version": "0.4.14", + "resolved": "https://registry.npmjs.org/@types/xml2js/-/xml2js-0.4.14.tgz", + "integrity": "sha512-4YnrRemBShWRO2QjvUin8ESA41rH+9nQGLUGZV/1IDhi3SL9OhdpNC/MrulTWuptXKwhx/aDxE7toV0f/ypIXQ==", "peer": true, - "engines": { - "node": ">=0.8" + "dependencies": { + "@types/node": "*" } }, - "node_modules/@ngageoint/mage.service/node_modules/assertion-error": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/assertion-error/-/assertion-error-1.1.0.tgz", - "integrity": "sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw==", + "node_modules/@ngageoint/mage.service/node_modules/@typescript-eslint/eslint-plugin": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-6.21.0.tgz", + "integrity": "sha512-oy9+hTPCUFpngkEZUSzbf9MxI65wbKFoQYsgPdILTfbUldp5ovUuphZVe4i30emU9M/kP+T64Di0mxl7dSw3MA==", "extraneous": true, + "license": "MIT", + "dependencies": { + "@eslint-community/regexpp": "^4.5.1", + "@typescript-eslint/scope-manager": "6.21.0", + "@typescript-eslint/type-utils": "6.21.0", + "@typescript-eslint/utils": "6.21.0", + "@typescript-eslint/visitor-keys": "6.21.0", + "debug": "^4.3.4", + "graphemer": "^1.4.0", + "ignore": "^5.2.4", + "natural-compare": "^1.4.0", + "semver": "^7.5.4", + "ts-api-utils": "^1.0.1" + }, "engines": { - "node": "*" + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "@typescript-eslint/parser": "^6.0.0 || ^6.0.0-alpha", + "eslint": "^7.0.0 || ^8.0.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } } }, - "node_modules/@ngageoint/mage.service/node_modules/async": { - "version": "3.2.4", - "resolved": "https://registry.npmjs.org/async/-/async-3.2.4.tgz", - "integrity": "sha512-iAB+JbDEGXhyIUavoDl9WP/Jj106Kz9DEn1DPgYw5ruDn0e3Wgi3sKFm55sASdGBNOQB8F59d9qQ7deqrHA8wQ==", - "peer": true - }, - "node_modules/@ngageoint/mage.service/node_modules/async-mutex": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/async-mutex/-/async-mutex-0.4.1.tgz", - "integrity": "sha512-WfoBo4E/TbCX1G95XTjbWTE3X2XLG0m1Xbv2cwOtuPdyH9CZvnaA5nCt1ucjaKEgW2A5IF71hxrRhr83Je5xjA==", + "node_modules/@ngageoint/mage.service/node_modules/@typescript-eslint/parser": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-6.21.0.tgz", + "integrity": "sha512-tbsV1jPne5CkFQCgPBcDOt30ItF7aJoZL997JSF7MhGQqOeT3svWRYxiqlfA5RUdlHN6Fi+EI9bxqbdyAUZjYQ==", "extraneous": true, + "license": "BSD-2-Clause", "dependencies": { - "tslib": "^2.4.0" + "@typescript-eslint/scope-manager": "6.21.0", + "@typescript-eslint/types": "6.21.0", + "@typescript-eslint/typescript-estree": "6.21.0", + "@typescript-eslint/visitor-keys": "6.21.0", + "debug": "^4.3.4" + }, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^7.0.0 || ^8.0.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } } }, - "node_modules/@ngageoint/mage.service/node_modules/async-mutex/node_modules/tslib": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz", - "integrity": "sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==", - "extraneous": true - }, - "node_modules/@ngageoint/mage.service/node_modules/asynckit": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", - "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=", - "peer": true - }, - "node_modules/@ngageoint/mage.service/node_modules/available-typed-arrays": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.5.tgz", - "integrity": "sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==", + "node_modules/@ngageoint/mage.service/node_modules/@typescript-eslint/scope-manager": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-6.21.0.tgz", + "integrity": "sha512-OwLUIWZJry80O99zvqXVEioyniJMa+d2GrqpUTqi5/v5D5rOrppJVBPa0yKCblcigC0/aYAzxxqQ1B+DS2RYsg==", "extraneous": true, + "license": "MIT", + "dependencies": { + "@typescript-eslint/types": "6.21.0", + "@typescript-eslint/visitor-keys": "6.21.0" + }, "engines": { - "node": ">= 0.4" + "node": "^16.0.0 || >=18.0.0" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" } }, - "node_modules/@ngageoint/mage.service/node_modules/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=", + "node_modules/@ngageoint/mage.service/node_modules/@typescript-eslint/type-utils": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-6.21.0.tgz", + "integrity": "sha512-rZQI7wHfao8qMX3Rd3xqeYSMCL3SoiSQLBATSiVKARdFGCYSRvmViieZjqc58jKgs8Y8i9YvVVhRbHSTA4VBag==", "extraneous": true, + "license": "MIT", + "dependencies": { + "@typescript-eslint/typescript-estree": "6.21.0", + "@typescript-eslint/utils": "6.21.0", + "debug": "^4.3.4", + "ts-api-utils": "^1.0.1" + }, "engines": { - "node": "*" + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^7.0.0 || ^8.0.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } } }, - "node_modules/@ngageoint/mage.service/node_modules/aws4": { - "version": "1.11.0", - "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.11.0.tgz", - "integrity": "sha512-xh1Rl34h6Fi1DC2WWKfxUTVqRsNnr6LsKz2+hfwDxQJWmrx8+c7ylaqBMcHfl1U1r2dsifOvKX3LQuLNZ+XSvA==", - "extraneous": true - }, - "node_modules/@ngageoint/mage.service/node_modules/axios": { - "version": "1.6.5", - "resolved": "https://registry.npmjs.org/axios/-/axios-1.6.5.tgz", - "integrity": "sha512-Ii012v05KEVuUoFWmMW/UQv9aRIc3ZwkWDcM+h5Il8izZCtRVpDUfwpoFf7eOtajT3QiGR4yDUx7lPqHJULgbg==", + "node_modules/@ngageoint/mage.service/node_modules/@typescript-eslint/types": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-6.21.0.tgz", + "integrity": "sha512-1kFmZ1rOm5epu9NZEZm1kckCDGj5UJEf7P1kliH4LKu/RkwpsfqqGmY2OOcUs18lSlQBKLDYBOGxRVtrMN5lpg==", "extraneous": true, - "dependencies": { - "follow-redirects": "^1.15.4", - "form-data": "^4.0.0", - "proxy-from-env": "^1.1.0" + "license": "MIT", + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" } }, - "node_modules/@ngageoint/mage.service/node_modules/axios/node_modules/form-data": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz", - "integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==", + "node_modules/@ngageoint/mage.service/node_modules/@typescript-eslint/typescript-estree": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-6.21.0.tgz", + "integrity": "sha512-6npJTkZcO+y2/kr+z0hc4HwNfrrP4kNYh57ek7yCNlrBjWQ1Y0OS7jiZTkgumrvkX5HkEKXFZkkdFNkaW2wmUQ==", "extraneous": true, + "license": "BSD-2-Clause", "dependencies": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.8", - "mime-types": "^2.1.12" + "@typescript-eslint/types": "6.21.0", + "@typescript-eslint/visitor-keys": "6.21.0", + "debug": "^4.3.4", + "globby": "^11.1.0", + "is-glob": "^4.0.3", + "minimatch": "9.0.3", + "semver": "^7.5.4", + "ts-api-utils": "^1.0.1" }, "engines": { - "node": ">= 6" + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } } }, - "node_modules/@ngageoint/mage.service/node_modules/b4a": { - "version": "1.6.4", - "resolved": "https://registry.npmjs.org/b4a/-/b4a-1.6.4.tgz", - "integrity": "sha512-fpWrvyVHEKyeEvbKZTVOeZF3VSKKWtJxFIxX/jaVPf+cLbGUSitjb49pHLqPV2BUNNZ0LcoeEGfE/YCpyDYHIw==", - "extraneous": true - }, - "node_modules/@ngageoint/mage.service/node_modules/babel-walk": { - "version": "3.0.0-canary-5", - "resolved": "https://registry.npmjs.org/babel-walk/-/babel-walk-3.0.0-canary-5.tgz", - "integrity": "sha512-GAwkz0AihzY5bkwIY5QDR+LvsRQgB/B+1foMPvi0FZPMl5fjD7ICiznUiBdLYMH1QYe6vqu4gWYytZOccLouFw==", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/@typescript-eslint/utils": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-6.21.0.tgz", + "integrity": "sha512-NfWVaC8HP9T8cbKQxHcsJBY5YE1O33+jpMwN45qzWWaPDZgLIbo12toGMWnmhvCpd3sIxkpDw3Wv1B3dYrbDQQ==", + "extraneous": true, + "license": "MIT", "dependencies": { - "@babel/types": "^7.9.6" + "@eslint-community/eslint-utils": "^4.4.0", + "@types/json-schema": "^7.0.12", + "@types/semver": "^7.5.0", + "@typescript-eslint/scope-manager": "6.21.0", + "@typescript-eslint/types": "6.21.0", + "@typescript-eslint/typescript-estree": "6.21.0", + "semver": "^7.5.4" }, "engines": { - "node": ">= 10.0.0" + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^7.0.0 || ^8.0.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/backoff": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/backoff/-/backoff-2.5.0.tgz", - "integrity": "sha512-wC5ihrnUXmR2douXmXLCe5O3zg3GKIyvRi/hi58a/XyRxVI+3/yM0PYueQOZXPXQ9pxBislYkw+sF9b7C/RuMA==", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/@typescript-eslint/visitor-keys": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-6.21.0.tgz", + "integrity": "sha512-JJtkDduxLi9bivAB+cYOVMtbkqdPOhZ+ZI5LC47MIRrDV4Yn2o+ZnW10Nkmr28xRpSpdJ6Sm42Hjf2+REYXm0A==", + "extraneous": true, + "license": "MIT", "dependencies": { - "precond": "0.2" + "@typescript-eslint/types": "6.21.0", + "eslint-visitor-keys": "^3.4.1" }, "engines": { - "node": ">= 0.6" + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" } }, - "node_modules/@ngageoint/mage.service/node_modules/balanced-match": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", - "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", - "peer": true - }, - "node_modules/@ngageoint/mage.service/node_modules/base-64": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/base-64/-/base-64-1.0.0.tgz", - "integrity": "sha512-kwDPIFCGx0NZHog36dj+tHiwP4QMzsZ3AgMViUBKI0+V5n4U0ufTCUMhnQ04diaRI8EX/QcPfql7zlhZ7j4zgg==", - "peer": true - }, - "node_modules/@ngageoint/mage.service/node_modules/base64-js": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", - "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "peer": true + "node_modules/@ngageoint/mage.service/node_modules/@ungap/structured-clone": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/@ungap/structured-clone/-/structured-clone-1.3.0.tgz", + "integrity": "sha512-WmoN8qaIAo7WTYWbAZuG8PYEhn5fkz7dZrqTBZ7dtt//lL2Gwms1IcnQ5yHqjDfX8Ft5j4YzDM23f87zBfDe9g==", + "extraneous": true, + "license": "ISC" }, - "node_modules/@ngageoint/mage.service/node_modules/base64url": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/base64url/-/base64url-3.0.1.tgz", - "integrity": "sha512-ir1UPr3dkwexU7FdV8qBBbNDRUhMmIekYMFZfi+C/sLNnRESKPl23nB9b2pltqfOQNnGzsDdId90AEtG5tCx4A==", + "node_modules/@ngageoint/mage.service/node_modules/@xmldom/xmldom": { + "version": "0.9.8", + "resolved": "https://registry.npmjs.org/@xmldom/xmldom/-/xmldom-0.9.8.tgz", + "integrity": "sha512-p96FSY54r+WJ50FIOsCOjyj/wavs8921hG5+kVMmZgKcvIKxMXHTrjNJvRgWa/zuX3B6t2lijLNFaOyuxUH+2A==", + "license": "MIT", "peer": true, "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@ngageoint/mage.service/node_modules/bcrypt-pbkdf": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", - "integrity": "sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4=", - "extraneous": true, - "dependencies": { - "tweetnacl": "^0.14.3" + "node": ">=14.6" } }, - "node_modules/@ngageoint/mage.service/node_modules/bcryptjs": { - "version": "2.4.3", - "resolved": "https://registry.npmjs.org/bcryptjs/-/bcryptjs-2.4.3.tgz", - "integrity": "sha512-V/Hy/X9Vt7f3BbPJEi8BdVFMByHi+jNXrYkW3huaybV/kQ0KJg0Y6PkEMbn+zeT+i+SiKZ/HMqJGIIt4LZDqNQ==", + "node_modules/@ngageoint/mage.service/node_modules/abstract-logging": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/abstract-logging/-/abstract-logging-2.0.1.tgz", + "integrity": "sha512-2BjRTZxTPvheOvGbBslFSYOUkr+SjPtOnrLP33f+VIWLzezQpZcqVg7ja3L4dBXmzzgwT+a029jRx5PCi3JuiA==", "peer": true }, - "node_modules/@ngageoint/mage.service/node_modules/better-sqlite3": { - "version": "8.6.0", - "resolved": "https://registry.npmjs.org/better-sqlite3/-/better-sqlite3-8.6.0.tgz", - "integrity": "sha512-jwAudeiTMTSyby+/SfbHDebShbmC2MCH8mU2+DXi0WJfv13ypEJm47cd3kljmy/H130CazEvkf2Li//ewcMJ1g==", - "hasInstallScript": true, + "node_modules/@ngageoint/mage.service/node_modules/accepts": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz", + "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==", "peer": true, "dependencies": { - "bindings": "^1.5.0", - "prebuild-install": "^7.1.1" + "mime-types": "~2.1.34", + "negotiator": "0.6.3" + }, + "engines": { + "node": ">= 0.6" } }, - "node_modules/@ngageoint/mage.service/node_modules/binary-extensions": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", - "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", + "node_modules/@ngageoint/mage.service/node_modules/acorn": { + "version": "8.12.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.12.0.tgz", + "integrity": "sha512-RTvkC4w+KNXrM39/lWCUaG0IbRkWdCv7W/IOW9oU6SawyxulvkQy5HQPVTKxEjczcUvapcrw3cFx/60VN/NRNw==", + "extraneous": true, + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/acorn-jsx": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", + "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", "extraneous": true, - "engines": { - "node": ">=8" + "peerDependencies": { + "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/bindings": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/bindings/-/bindings-1.5.0.tgz", - "integrity": "sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==", + "node_modules/@ngageoint/mage.service/node_modules/adm-zip": { + "version": "0.5.16", + "resolved": "https://registry.npmjs.org/adm-zip/-/adm-zip-0.5.16.tgz", + "integrity": "sha512-TGw5yVi4saajsSEgz25grObGHEUaDrniwvA2qwSC060KfqGPdglhvPMA2lPIoxs3PQIItj2iag35fONcQqgUaQ==", + "license": "MIT", "peer": true, - "dependencies": { - "file-uri-to-path": "1.0.0" + "engines": { + "node": ">=12.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/bl": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz", - "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==", - "peer": true, - "dependencies": { - "buffer": "^5.5.0", - "inherits": "^2.0.4", - "readable-stream": "^3.4.0" + "node_modules/@ngageoint/mage.service/node_modules/agent-base": { + "version": "7.1.3", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.3.tgz", + "integrity": "sha512-jRR5wdylq8CkOe6hei19GGZnxM6rBGwFl3Bg0YItGDimvjGtAvdZk4Pu6Cl4u4Igsws4a1fd1Vq3ezrhn4KmFw==", + "extraneous": true, + "license": "MIT", + "engines": { + "node": ">= 14" } }, - "node_modules/@ngageoint/mage.service/node_modules/bl/node_modules/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==", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/aggregate-error": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-4.0.1.tgz", + "integrity": "sha512-0poP0T7el6Vq3rstR8Mn4V/IQrpBLO6POkUSrN7RhyY+GF/InCFShQzsQ39T25gkHhLgSLByyAz+Kjb+c2L98w==", + "extraneous": true, "dependencies": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" + "clean-stack": "^4.0.0", + "indent-string": "^5.0.0" }, "engines": { - "node": ">= 6" + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@ngageoint/mage.service/node_modules/bl/node_modules/string_decoder": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", - "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "extraneous": true, + "license": "MIT", "dependencies": { - "safe-buffer": "~5.2.0" + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" } }, - "node_modules/@ngageoint/mage.service/node_modules/bluebird": { - "version": "3.7.2", - "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz", - "integrity": "sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==", - "peer": true - }, - "node_modules/@ngageoint/mage.service/node_modules/body-parser": { - "version": "1.19.2", - "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.19.2.tgz", - "integrity": "sha512-SAAwOxgoCKMGs9uUAUFHygfLAyaniaoun6I8mFY9pRAJL9+Kec34aU+oIjDhTycub1jozEfEwx1W1IuOYxVSFw==", - "peer": true, - "dependencies": { - "bytes": "3.1.2", - "content-type": "~1.0.4", - "debug": "2.6.9", - "depd": "~1.1.2", - "http-errors": "1.8.1", - "iconv-lite": "0.4.24", - "on-finished": "~2.3.0", - "qs": "6.9.7", - "raw-body": "2.4.3", - "type-is": "~1.6.18" - }, + "node_modules/@ngageoint/mage.service/node_modules/ansi-colors": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.3.tgz", + "integrity": "sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==", + "extraneous": true, + "license": "MIT", "engines": { - "node": ">= 0.8" + "node": ">=6" } }, - "node_modules/@ngageoint/mage.service/node_modules/body-parser/node_modules/iconv-lite": { - "version": "0.4.24", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", - "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", + "node_modules/@ngageoint/mage.service/node_modules/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==", + "optional": true, "peer": true, "dependencies": { - "safer-buffer": ">= 2.1.2 < 3" + "type-fest": "^0.21.3" }, "engines": { - "node": ">=0.10.0" + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@ngageoint/mage.service/node_modules/body-parser/node_modules/qs": { - "version": "6.9.7", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.9.7.tgz", - "integrity": "sha512-IhMFgUmuNpyRfxA90umL7ByLlgRXu6tIfKPpF5TmcfRLlLCckfP/g3IQmju6jjpu+Hh8rA+2p6A27ZSPOOHdKw==", + "node_modules/@ngageoint/mage.service/node_modules/ansi-escapes/node_modules/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==", + "optional": true, "peer": true, "engines": { - "node": ">=0.6" + "node": ">=10" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@ngageoint/mage.service/node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "node_modules/@ngageoint/mage.service/node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "optional": true, + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "optional": true, "peer": true, "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/@ngageoint/mage.service/node_modules/braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "node_modules/@ngageoint/mage.service/node_modules/anymatch": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", + "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", "extraneous": true, + "license": "ISC", "dependencies": { - "fill-range": "^7.0.1" + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" }, "engines": { - "node": ">=8" + "node": ">= 8" } }, - "node_modules/@ngageoint/mage.service/node_modules/brorand": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz", - "integrity": "sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8=", + "node_modules/@ngageoint/mage.service/node_modules/append-field": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/append-field/-/append-field-1.0.0.tgz", + "integrity": "sha512-klpgFSWLW1ZEs8svjfb7g4qWY0YS5imI82dTg+QahUvJ8YqAY0P10Uk8tTyh9ZGuYEZEMaeJYCF5BFuX552hsw==", "peer": true }, - "node_modules/@ngageoint/mage.service/node_modules/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==", - "extraneous": true - }, - "node_modules/@ngageoint/mage.service/node_modules/browserify-aes": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz", - "integrity": "sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/append-transform": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/append-transform/-/append-transform-1.0.0.tgz", + "integrity": "sha512-P009oYkeHyU742iSZJzZZywj4QRJdnTWffaKuJQLablCZ1uz6/cW4yaRgcDaoQ+uwOxxnt0gRUcwfsNP2ri0gw==", + "extraneous": true, "dependencies": { - "buffer-xor": "^1.0.3", - "cipher-base": "^1.0.0", - "create-hash": "^1.1.0", - "evp_bytestokey": "^1.0.3", - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" - } - }, - "node_modules/@ngageoint/mage.service/node_modules/bson": { - "version": "1.0.9", - "resolved": "https://registry.npmjs.org/bson/-/bson-1.0.9.tgz", - "integrity": "sha512-IQX9/h7WdMBIW/q/++tGd+emQr0XMdeZ6icnT/74Xk9fnabWn+gZgpE+9V+gujL3hhJOoNrnDVY7tWdzc7NUTg==", - "deprecated": "Fixed a critical issue with BSON serialization documented in CVE-2019-2391, see https://bit.ly/2KcpXdo for more details", - "peer": true, + "default-require-extensions": "^2.0.0" + }, "engines": { - "node": ">=0.6.19" + "node": ">=4" } }, - "node_modules/@ngageoint/mage.service/node_modules/buffer": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", - "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], + "node_modules/@ngageoint/mage.service/node_modules/archiver": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/archiver/-/archiver-5.3.2.tgz", + "integrity": "sha512-+25nxyyznAXF7Nef3y0EbBeqmGZgeN/BxHX29Rs39djAfaFalmQ89SE6CWyDCHzGL0yt/ycBtNOmGTW0FyGWNw==", + "license": "MIT", "peer": true, "dependencies": { - "base64-js": "^1.3.1", - "ieee754": "^1.1.13" + "archiver-utils": "^2.1.0", + "async": "^3.2.4", + "buffer-crc32": "^0.2.1", + "readable-stream": "^3.6.0", + "readdir-glob": "^1.1.2", + "tar-stream": "^2.2.0", + "zip-stream": "^4.1.0" + }, + "engines": { + "node": ">= 10" } }, - "node_modules/@ngageoint/mage.service/node_modules/buffer-crc32": { - "version": "0.2.13", - "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", - "integrity": "sha1-DTM+PwDqxQqhRUq9MO+MKl2ackI=", + "node_modules/@ngageoint/mage.service/node_modules/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==", "peer": true, + "dependencies": { + "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" + }, "engines": { - "node": "*" + "node": ">= 6" } }, - "node_modules/@ngageoint/mage.service/node_modules/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=", - "peer": true - }, - "node_modules/@ngageoint/mage.service/node_modules/buffer-from": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", - "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", - "peer": true - }, - "node_modules/@ngageoint/mage.service/node_modules/buffer-shims": { + "node_modules/@ngageoint/mage.service/node_modules/archiver-utils/node_modules/isarray": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/buffer-shims/-/buffer-shims-1.0.0.tgz", - "integrity": "sha1-mXjOMXOIxkmth5MCjDR37wRKi1E=", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", "peer": true }, - "node_modules/@ngageoint/mage.service/node_modules/buffer-xor": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz", - "integrity": "sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk=", + "node_modules/@ngageoint/mage.service/node_modules/archiver-utils/node_modules/readable-stream": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", + "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", + "peer": true, + "dependencies": { + "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" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/archiver-utils/node_modules/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==", "peer": true }, - "node_modules/@ngageoint/mage.service/node_modules/busboy": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/busboy/-/busboy-1.6.0.tgz", - "integrity": "sha512-8SFQbg/0hQ9xy3UNTB0YEnsNBbWfhf7RtnzpL7TkBiTBRfrQ9Fxcnz7VJsleJpyp6rVLvXiuORqjlHi5q+PYuA==", + "node_modules/@ngageoint/mage.service/node_modules/archiver-utils/node_modules/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==", "peer": true, "dependencies": { - "streamsearch": "^1.1.0" - }, - "engines": { - "node": ">=10.16.0" + "safe-buffer": "~5.1.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/bytes": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", - "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", + "node_modules/@ngageoint/mage.service/node_modules/archy": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/archy/-/archy-1.0.0.tgz", + "integrity": "sha512-Xg+9RwCg/0p32teKdGMPTPnVXKD0w3DfHnFTficozsAgsvq2XenPJq/MYpzzQ/v8zrOyJn6Ds39VA4JIDwFfqw==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", "peer": true, - "engines": { - "node": ">= 0.8" + "dependencies": { + "sprintf-js": "~1.0.2" } }, - "node_modules/@ngageoint/mage.service/node_modules/caching-transform": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/caching-transform/-/caching-transform-3.0.2.tgz", - "integrity": "sha512-Mtgcv3lh3U0zRii/6qVgQODdPA4G3zhG+jtbCWj39RXuUFTMzH0vcdMtaJS1jPowd+It2Pqr6y3NJMQqOqCE2w==", + "node_modules/@ngageoint/mage.service/node_modules/array-buffer-byte-length": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.1.tgz", + "integrity": "sha512-ahC5W1xgou+KTXix4sAO8Ki12Q+jf4i0+tmk3sC+zgcynshkHxzpXdImBehiUYKKKDwvfFiJl1tZt6ewscS1Mg==", "extraneous": true, "dependencies": { - "hasha": "^3.0.0", - "make-dir": "^2.0.0", - "package-hash": "^3.0.0", - "write-file-atomic": "^2.4.2" + "call-bind": "^1.0.5", + "is-array-buffer": "^3.0.4" }, "engines": { - "node": ">=6" - } - }, - "node_modules/@ngageoint/mage.service/node_modules/call-bind": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", - "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", - "peer": true, - "dependencies": { - "function-bind": "^1.1.1", - "get-intrinsic": "^1.0.2" + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/@ngageoint/mage.service/node_modules/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=", + "node_modules/@ngageoint/mage.service/node_modules/array-flatten": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", + "integrity": "sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/array-from": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/array-from/-/array-from-2.1.1.tgz", + "integrity": "sha512-GQTc6Uupx1FCavi5mPzBvVT7nEOeWMmUA9P95wpfpW1XwMSKs+KaymD5C2Up7KAUKg/mYwbsUYzdZWcoajlNZg==", "extraneous": true }, - "node_modules/@ngageoint/mage.service/node_modules/callsites": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", - "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "node_modules/@ngageoint/mage.service/node_modules/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==", + "extraneous": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/arraybuffer.prototype.slice": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.3.tgz", + "integrity": "sha512-bMxMKAjg13EBSVscxTaYA4mRc5t1UAXa2kXiGTNfZ079HIWXEkKmkgFrh/nJqamaLSrXO5H4WFFkPEaLJWbs3A==", "extraneous": true, + "dependencies": { + "array-buffer-byte-length": "^1.0.1", + "call-bind": "^1.0.5", + "define-properties": "^1.2.1", + "es-abstract": "^1.22.3", + "es-errors": "^1.2.1", + "get-intrinsic": "^1.2.3", + "is-array-buffer": "^3.0.4", + "is-shared-array-buffer": "^1.0.2" + }, "engines": { - "node": ">=6" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/@ngageoint/mage.service/node_modules/camelcase": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", - "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", + "node_modules/@ngageoint/mage.service/node_modules/arrify": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/arrify/-/arrify-3.0.0.tgz", + "integrity": "sha512-tLkvA81vQG/XqE2mjDkGQHoOINtMHtysSnemrmoGe6PydDPMRbVugqyk4A6V/WDWEfm3l+0d8anA9r8cv/5Jaw==", "extraneous": true, "engines": { - "node": ">=10" + "node": ">=12" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@ngageoint/mage.service/node_modules/caseless": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", - "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=", - "extraneous": true + "node_modules/@ngageoint/mage.service/node_modules/asap": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz", + "integrity": "sha512-BSHWgDSAiKs50o2Re8ppvp3seVHXSRM44cdSsT9FfNEUUZLOGWVCsiWaRPWM1Znn+mqZ1OfVZ3z3DWEzSp7hRA==", + "peer": true }, - "node_modules/@ngageoint/mage.service/node_modules/cfenv": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/cfenv/-/cfenv-1.0.3.tgz", - "integrity": "sha1-Ry/QwFs72y0O3ndeEkgDqxJXJ5M=", + "node_modules/@ngageoint/mage.service/node_modules/asn1": { + "version": "0.2.6", + "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.6.tgz", + "integrity": "sha512-ix/FxPn0MDjeyJ7i/yoHGFt/EX6LyNbxSEhPPXODPL+KB0VPk86UYfL0lMdy+KCnv+fmvIzySwaK5COwqVbWTQ==", "peer": true, "dependencies": { - "js-yaml": "3.4.x", - "ports": "1.1.x", - "underscore": "1.8.x" + "safer-buffer": "~2.1.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/chai": { - "version": "4.3.6", - "resolved": "https://registry.npmjs.org/chai/-/chai-4.3.6.tgz", - "integrity": "sha512-bbcp3YfHCUzMOvKqsztczerVgBKSsEijCySNlHHbX3VG1nskvqjz5Rfso1gGwD6w6oOV3eI60pKuMOV5MV7p3Q==", - "extraneous": true, - "dependencies": { - "assertion-error": "^1.1.0", - "check-error": "^1.0.2", - "deep-eql": "^3.0.1", - "get-func-name": "^2.0.0", - "loupe": "^2.3.1", - "pathval": "^1.1.1", - "type-detect": "^4.0.5" - }, + "node_modules/@ngageoint/mage.service/node_modules/assert-never": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/assert-never/-/assert-never-1.2.1.tgz", + "integrity": "sha512-TaTivMB6pYI1kXwrFlEhLeGfOqoDNdTxjCdwRfFFkEA30Eu+k48W34nlok2EYWJfFFzqaEmichdNM7th6M5HNw==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/assert-plus": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", + "integrity": "sha512-NfJ4UzBCcQGLDlQq7nHxH+tv3kyZ0hHQqF5BO6J7tNJeP5do1llPr8dZ8zHonfhAu0PHAdMkSo+8o0wxg9lZWw==", + "peer": true, "engines": { - "node": ">=4" + "node": ">=0.8" } }, - "node_modules/@ngageoint/mage.service/node_modules/chai-as-promised": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/chai-as-promised/-/chai-as-promised-7.1.1.tgz", - "integrity": "sha512-azL6xMoi+uxu6z4rhWQ1jbdUhOMhis2PvscD/xjLqNMkv3BPPp2JyyuTHOrf9BOosGpNQ11v6BKv/g57RXbiaA==", + "node_modules/@ngageoint/mage.service/node_modules/assertion-error": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/assertion-error/-/assertion-error-1.1.0.tgz", + "integrity": "sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw==", "extraneous": true, - "dependencies": { - "check-error": "^1.0.2" - }, - "peerDependencies": { - "chai": ">= 2.1.2 < 5" + "engines": { + "node": "*" } }, - "node_modules/@ngageoint/mage.service/node_modules/chai/node_modules/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==", + "node_modules/@ngageoint/mage.service/node_modules/async": { + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/async/-/async-3.2.6.tgz", + "integrity": "sha512-htCUDlxyyCLMgaM3xXg0C0LW2xqfuQ6p05pCEIsXuyQ+a1koYKTuBMzRNwmybfLgvJDMd0r1LTn4+E0Ti6C2AA==", + "license": "MIT", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/async-lock": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/async-lock/-/async-lock-1.4.1.tgz", + "integrity": "sha512-Az2ZTpuytrtqENulXwO3GGv1Bztugx6TT37NIo7imr/Qo0gsYiGtSdBa2B6fsXhTpVZDNfu1Qn3pk531e3q+nQ==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/async-mutex": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/async-mutex/-/async-mutex-0.4.1.tgz", + "integrity": "sha512-WfoBo4E/TbCX1G95XTjbWTE3X2XLG0m1Xbv2cwOtuPdyH9CZvnaA5nCt1ucjaKEgW2A5IF71hxrRhr83Je5xjA==", "extraneous": true, + "license": "MIT", "dependencies": { - "type-detect": "^4.0.0" - }, - "engines": { - "node": ">=0.12" + "tslib": "^2.4.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/chalk": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.1.tgz", - "integrity": "sha512-diHzdDKxcU+bAsUboHLPEDQiw0qEe0qd7SYUn3HgcFlWgbDcfLGswOHYeGrHKzG9z6UYf01d9VFMfZxPM1xZSg==", - "optional": true, - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/available-typed-arrays": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.7.tgz", + "integrity": "sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==", + "extraneous": true, "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" + "possible-typed-array-names": "^1.0.0" }, "engines": { - "node": ">=10" + "node": ">= 0.4" }, "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/@ngageoint/mage.service/node_modules/character-parser": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/character-parser/-/character-parser-2.2.0.tgz", - "integrity": "sha512-+UqJQjFEFaTAs3bNsF2j2kEN1baG/zghZbdqoYEDxGZtJo9LBzl1A+m0D4n3qKx8N2FNv8/Xp6yV9mQmBuptaw==", - "peer": true, - "dependencies": { - "is-regex": "^1.0.3" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/@ngageoint/mage.service/node_modules/chardet": { + "node_modules/@ngageoint/mage.service/node_modules/aws-sign2": { "version": "0.7.0", - "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz", - "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==", - "optional": true, - "peer": true - }, - "node_modules/@ngageoint/mage.service/node_modules/check-error": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/check-error/-/check-error-1.0.2.tgz", - "integrity": "sha1-V00xLt2Iu13YkS6Sht1sCu1KrII=", + "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", + "integrity": "sha512-08kcGqnYf/YmjoRhfxyu+CLxBjUtHLXLXX/vUfx9l2LYzG3c1m61nrpyFUZI6zeS+Li/wWMMidD9KgrqtGq3mA==", "extraneous": true, "engines": { "node": "*" } }, - "node_modules/@ngageoint/mage.service/node_modules/chokidar": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.3.0.tgz", - "integrity": "sha512-dGmKLDdT3Gdl7fBUe8XK+gAtGmzy5Fn0XkkWQuYxGIgWVPPse2CxFA5mtrlD0TOHaHjEUqkWNyP1XdHoJES/4A==", + "node_modules/@ngageoint/mage.service/node_modules/aws4": { + "version": "1.13.0", + "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.13.0.tgz", + "integrity": "sha512-3AungXC4I8kKsS9PuS4JH2nc+0bVY/mjgrephHTIi8fpEeGsTHBUJeosp0Wc1myYMElmD0B3Oc4XL/HVJ4PV2g==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/axios": { + "version": "1.8.4", + "resolved": "https://registry.npmjs.org/axios/-/axios-1.8.4.tgz", + "integrity": "sha512-eBSYY4Y68NNlHbHBMdeDmKNtDgXWhQsJcGqzO3iLUM0GraQFSS9cVgPX5I9b3lbdFKyYoAEGAZF1DwhTaljNAw==", "extraneous": true, + "license": "MIT", "dependencies": { - "anymatch": "~3.1.1", - "braces": "~3.0.2", - "glob-parent": "~5.1.0", - "is-binary-path": "~2.1.0", - "is-glob": "~4.0.1", - "normalize-path": "~3.0.0", - "readdirp": "~3.2.0" - }, - "engines": { - "node": ">= 8.10.0" - }, - "optionalDependencies": { - "fsevents": "~2.1.1" + "follow-redirects": "^1.15.6", + "form-data": "^4.0.0", + "proxy-from-env": "^1.1.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/chownr": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz", - "integrity": "sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==", - "peer": true + "node_modules/@ngageoint/mage.service/node_modules/b4a": { + "version": "1.6.7", + "resolved": "https://registry.npmjs.org/b4a/-/b4a-1.6.7.tgz", + "integrity": "sha512-OnAYlL5b7LEkALw87fUVafQw5rVR9RjwGd4KUwNQ6DrrNmaVaUCgLipfVlzrPQ4tWOR9P0IXGNOx50jYCCdSJg==", + "extraneous": true, + "license": "Apache-2.0" }, - "node_modules/@ngageoint/mage.service/node_modules/cipher-base": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.4.tgz", - "integrity": "sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==", + "node_modules/@ngageoint/mage.service/node_modules/babel-walk": { + "version": "3.0.0-canary-5", + "resolved": "https://registry.npmjs.org/babel-walk/-/babel-walk-3.0.0-canary-5.tgz", + "integrity": "sha512-GAwkz0AihzY5bkwIY5QDR+LvsRQgB/B+1foMPvi0FZPMl5fjD7ICiznUiBdLYMH1QYe6vqu4gWYytZOccLouFw==", "peer": true, "dependencies": { - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" + "@babel/types": "^7.9.6" + }, + "engines": { + "node": ">= 10.0.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/cli-cursor": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz", - "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", - "optional": true, + "node_modules/@ngageoint/mage.service/node_modules/backoff": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/backoff/-/backoff-2.5.0.tgz", + "integrity": "sha512-wC5ihrnUXmR2douXmXLCe5O3zg3GKIyvRi/hi58a/XyRxVI+3/yM0PYueQOZXPXQ9pxBislYkw+sF9b7C/RuMA==", "peer": true, "dependencies": { - "restore-cursor": "^3.1.0" + "precond": "0.2" }, "engines": { - "node": ">=8" + "node": ">= 0.6" } }, - "node_modules/@ngageoint/mage.service/node_modules/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==", - "optional": true, - "peer": true, - "engines": { - "node": ">= 10" - } + "node_modules/@ngageoint/mage.service/node_modules/balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/bare-events": { + "version": "2.5.4", + "resolved": "https://registry.npmjs.org/bare-events/-/bare-events-2.5.4.tgz", + "integrity": "sha512-+gFfDkR8pj4/TrWCGUGWmJIkBwuxPS5F+a5yWjOHQt2hHvNZd5YLzadjmDUtFmMM4y429bnKLa8bYBMHcYdnQA==", + "extraneous": true, + "license": "Apache-2.0" + }, + "node_modules/@ngageoint/mage.service/node_modules/base-64": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/base-64/-/base-64-1.0.0.tgz", + "integrity": "sha512-kwDPIFCGx0NZHog36dj+tHiwP4QMzsZ3AgMViUBKI0+V5n4U0ufTCUMhnQ04diaRI8EX/QcPfql7zlhZ7j4zgg==", + "peer": true }, - "node_modules/@ngageoint/mage.service/node_modules/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=", - "optional": true, + "node_modules/@ngageoint/mage.service/node_modules/base64-js": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", + "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/base64url": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/base64url/-/base64url-3.0.1.tgz", + "integrity": "sha512-ir1UPr3dkwexU7FdV8qBBbNDRUhMmIekYMFZfi+C/sLNnRESKPl23nB9b2pltqfOQNnGzsDdId90AEtG5tCx4A==", "peer": true, "engines": { - "node": ">=0.10.0" + "node": ">=6.0.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "optional": true, - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/bcrypt-pbkdf": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", + "integrity": "sha512-qeFIXtP4MSoi6NLqO12WfqARWWuCKi2Rn/9hJLEmtB5yTNr9DqFWkJRCf2qShWzPeAMRnOgCrq0sg/KLv5ES9w==", + "extraneous": true, "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" + "tweetnacl": "^0.14.3" } }, - "node_modules/@ngageoint/mage.service/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "optional": true, + "node_modules/@ngageoint/mage.service/node_modules/bcryptjs": { + "version": "2.4.3", + "resolved": "https://registry.npmjs.org/bcryptjs/-/bcryptjs-2.4.3.tgz", + "integrity": "sha512-V/Hy/X9Vt7f3BbPJEi8BdVFMByHi+jNXrYkW3huaybV/kQ0KJg0Y6PkEMbn+zeT+i+SiKZ/HMqJGIIt4LZDqNQ==", "peer": true }, - "node_modules/@ngageoint/mage.service/node_modules/colors": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/colors/-/colors-1.0.3.tgz", - "integrity": "sha1-BDP0TYCWgP3rYO0mDxsMJi6CpAs=", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/binary-extensions": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.3.0.tgz", + "integrity": "sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==", + "extraneous": true, + "license": "MIT", "engines": { - "node": ">=0.1.90" + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@ngageoint/mage.service/node_modules/combined-stream": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", - "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", + "node_modules/@ngageoint/mage.service/node_modules/bindings": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/bindings/-/bindings-1.5.0.tgz", + "integrity": "sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==", + "optional": true, "peer": true, "dependencies": { - "delayed-stream": "~1.0.0" - }, - "engines": { - "node": ">= 0.8" + "file-uri-to-path": "1.0.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/commander": { - "version": "8.3.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-8.3.0.tgz", - "integrity": "sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww==", + "node_modules/@ngageoint/mage.service/node_modules/bl": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz", + "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==", "peer": true, - "engines": { - "node": ">= 12" + "dependencies": { + "buffer": "^5.5.0", + "inherits": "^2.0.4", + "readable-stream": "^3.4.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/commondir": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", - "integrity": "sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs=", - "extraneous": true - }, - "node_modules/@ngageoint/mage.service/node_modules/component-emitter": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz", - "integrity": "sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==", + "node_modules/@ngageoint/mage.service/node_modules/bluebird": { + "version": "3.7.2", + "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz", + "integrity": "sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==", "peer": true }, - "node_modules/@ngageoint/mage.service/node_modules/compress-commons": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/compress-commons/-/compress-commons-4.1.1.tgz", - "integrity": "sha512-QLdDLCKNV2dtoTorqgxngQCMA+gWXkM/Nwu7FpeBhk/RdkzimqC3jueb/FDmaZeXh+uby1jkBqE3xArsLBE5wQ==", + "node_modules/@ngageoint/mage.service/node_modules/body-parser": { + "version": "1.20.3", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.3.tgz", + "integrity": "sha512-7rAxByjUMqQ3/bHJy7D6OGXvx/MMc4IqBn/X0fcM1QUcAItpZrBEYhWGem+tzXH90c+G01ypMcYJBO9Y30203g==", + "license": "MIT", "peer": true, "dependencies": { - "buffer-crc32": "^0.2.13", - "crc32-stream": "^4.0.2", - "normalize-path": "^3.0.0", - "readable-stream": "^3.6.0" + "bytes": "3.1.2", + "content-type": "~1.0.5", + "debug": "2.6.9", + "depd": "2.0.0", + "destroy": "1.2.0", + "http-errors": "2.0.0", + "iconv-lite": "0.4.24", + "on-finished": "2.4.1", + "qs": "6.13.0", + "raw-body": "2.5.2", + "type-is": "~1.6.18", + "unpipe": "1.0.0" }, "engines": { - "node": ">= 10" + "node": ">= 0.8", + "npm": "1.2.8000 || >= 1.4.16" } }, - "node_modules/@ngageoint/mage.service/node_modules/compress-commons/node_modules/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==", + "node_modules/@ngageoint/mage.service/node_modules/body-parser/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", "peer": true, "dependencies": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - }, - "engines": { - "node": ">= 6" + "ms": "2.0.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/compress-commons/node_modules/string_decoder": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", - "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "node_modules/@ngageoint/mage.service/node_modules/body-parser/node_modules/iconv-lite": { + "version": "0.4.24", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", + "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", "peer": true, "dependencies": { - "safe-buffer": "~5.2.0" + "safer-buffer": ">= 2.1.2 < 3" + }, + "engines": { + "node": ">=0.10.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", + "node_modules/@ngageoint/mage.service/node_modules/body-parser/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", "peer": true }, - "node_modules/@ngageoint/mage.service/node_modules/concat-stream": { - "version": "1.5.2", - "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.5.2.tgz", - "integrity": "sha1-cIl4Yk2FavQaWnQd790mHadSwmY=", - "engines": [ - "node >= 0.8" - ], - "peer": true, - "dependencies": { - "inherits": "~2.0.1", - "readable-stream": "~2.0.0", - "typedarray": "~0.0.5" - } - }, - "node_modules/@ngageoint/mage.service/node_modules/console-control-strings": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", - "integrity": "sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ==", + "node_modules/@ngageoint/mage.service/node_modules/bowser": { + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/bowser/-/bowser-2.11.0.tgz", + "integrity": "sha512-AlcaJBi/pqqJBIQ8U9Mcpc9i8Aqxn88Skv5d+xBX006BY5u8N3mGLHa5Lgppa7L/HfwgwLgZ6NYs+Ag6uUmJRA==", "optional": true, "peer": true }, - "node_modules/@ngageoint/mage.service/node_modules/constantinople": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/constantinople/-/constantinople-4.0.1.tgz", - "integrity": "sha512-vCrqcSIq4//Gx74TXXCGnHpulY1dskqLTFGDmhrGxzeXL8lF8kvXv6mpNWlJj1uD4DW23D4ljAqbY4RRaaUZIw==", + "node_modules/@ngageoint/mage.service/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", "peer": true, "dependencies": { - "@babel/parser": "^7.6.0", - "@babel/types": "^7.6.1" + "balanced-match": "^1.0.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/content-disposition": { - "version": "0.5.4", - "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz", - "integrity": "sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/braces": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", + "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", + "extraneous": true, "dependencies": { - "safe-buffer": "5.2.1" + "fill-range": "^7.1.1" }, "engines": { - "node": ">= 0.6" + "node": ">=8" } }, - "node_modules/@ngageoint/mage.service/node_modules/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==", + "node_modules/@ngageoint/mage.service/node_modules/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==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/bson": { + "version": "4.7.2", + "resolved": "https://registry.npmjs.org/bson/-/bson-4.7.2.tgz", + "integrity": "sha512-Ry9wCtIZ5kGqkJoi6aD8KjxFZEx78guTQDnpXWiNthsxzrxAK/i8E6pCHAIZTbaEFWcOCvbecMukfK7XUvyLpQ==", "peer": true, + "dependencies": { + "buffer": "^5.6.0" + }, "engines": { - "node": ">= 0.6" + "node": ">=6.9.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/convert-source-map": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.8.0.tgz", - "integrity": "sha512-+OQdjP49zViI/6i7nIJpA8rAl4sV/JdPfU9nZs3VqOwGIgizICvuN2ru6fMd+4llL0tar18UYJXfZ/TWtmhUjA==", - "extraneous": true, + "node_modules/@ngageoint/mage.service/node_modules/buffer": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", + "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "peer": true, "dependencies": { - "safe-buffer": "~5.1.1" + "base64-js": "^1.3.1", + "ieee754": "^1.1.13" } }, - "node_modules/@ngageoint/mage.service/node_modules/convert-source-map/node_modules/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==", - "extraneous": true - }, - "node_modules/@ngageoint/mage.service/node_modules/cookie": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.5.0.tgz", - "integrity": "sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw==", + "node_modules/@ngageoint/mage.service/node_modules/buffer-crc32": { + "version": "0.2.13", + "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", + "integrity": "sha512-VO9Ht/+p3SN7SKWqcrgEzjGbRSJYTx+Q1pTQC0wrWqHx0vpJraQ6GtHx8tvcg1rlK1byhU5gccxgOgj7B0TDkQ==", "peer": true, "engines": { - "node": ">= 0.6" + "node": "*" } }, - "node_modules/@ngageoint/mage.service/node_modules/cookie-signature": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", - "integrity": "sha1-4wOogrNCzD7oylE6eZmXNNqzriw=", - "peer": true - }, - "node_modules/@ngageoint/mage.service/node_modules/cookiejar": { - "version": "2.1.4", - "resolved": "https://registry.npmjs.org/cookiejar/-/cookiejar-2.1.4.tgz", - "integrity": "sha512-LDx6oHrK+PhzLKJU9j5S7/Y3jM/mUHvD/DeI1WQmJn652iPC5Y4TBzC9l+5OMOXlyTTA+SmVUPm0HQUwpD5Jqw==", + "node_modules/@ngageoint/mage.service/node_modules/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": "sha512-zRpUiDwd/xk6ADqPMATG8vc9VPrkck7T07OIx0gnjmJAnHnTVXNQG3vfvWNuiZIkwu9KrKdA1iJKfsfTVxE6NA==", "peer": true }, - "node_modules/@ngageoint/mage.service/node_modules/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==", + "node_modules/@ngageoint/mage.service/node_modules/buffer-from": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", + "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", "peer": true }, - "node_modules/@ngageoint/mage.service/node_modules/coveralls": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/coveralls/-/coveralls-3.0.4.tgz", - "integrity": "sha512-eyqUWA/7RT0JagiL0tThVhjbIjoiEUyWCjtUJoOPcWoeofP5WK/jb2OJYoBFrR6DvplR+AxOyuBqk4JHkk5ykA==", - "extraneous": true, + "node_modules/@ngageoint/mage.service/node_modules/busboy": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/busboy/-/busboy-1.6.0.tgz", + "integrity": "sha512-8SFQbg/0hQ9xy3UNTB0YEnsNBbWfhf7RtnzpL7TkBiTBRfrQ9Fxcnz7VJsleJpyp6rVLvXiuORqjlHi5q+PYuA==", + "peer": true, "dependencies": { - "growl": "~> 1.10.0", - "js-yaml": "^3.11.0", - "lcov-parse": "^0.0.10", - "log-driver": "^1.2.7", - "minimist": "^1.2.0", - "request": "^2.86.0" - }, - "bin": { - "coveralls": "bin/coveralls.js" + "streamsearch": "^1.1.0" }, "engines": { - "node": ">=4.0.0" + "node": ">=10.16.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/coveralls/node_modules/esprima": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", - "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", - "extraneous": true, - "bin": { - "esparse": "bin/esparse.js", - "esvalidate": "bin/esvalidate.js" - }, + "node_modules/@ngageoint/mage.service/node_modules/bytes": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", + "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", + "license": "MIT", + "peer": true, "engines": { - "node": ">=4" + "node": ">= 0.8" } }, - "node_modules/@ngageoint/mage.service/node_modules/coveralls/node_modules/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==", + "node_modules/@ngageoint/mage.service/node_modules/caching-transform": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/caching-transform/-/caching-transform-3.0.2.tgz", + "integrity": "sha512-Mtgcv3lh3U0zRii/6qVgQODdPA4G3zhG+jtbCWj39RXuUFTMzH0vcdMtaJS1jPowd+It2Pqr6y3NJMQqOqCE2w==", "extraneous": true, "dependencies": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" + "hasha": "^3.0.0", + "make-dir": "^2.0.0", + "package-hash": "^3.0.0", + "write-file-atomic": "^2.4.2" }, - "bin": { - "js-yaml": "bin/js-yaml.js" + "engines": { + "node": ">=6" } }, - "node_modules/@ngageoint/mage.service/node_modules/cp-file": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/cp-file/-/cp-file-6.2.0.tgz", - "integrity": "sha512-fmvV4caBnofhPe8kOcitBwSn2f39QLjnAnGq3gO9dfd75mUytzKNZB1hde6QHunW2Rt+OwuBOMc3i1tNElbszA==", + "node_modules/@ngageoint/mage.service/node_modules/caching-transform/node_modules/make-dir": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", + "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", "extraneous": true, "dependencies": { - "graceful-fs": "^4.1.2", - "make-dir": "^2.0.0", - "nested-error-stacks": "^2.0.0", "pify": "^4.0.1", - "safe-buffer": "^5.0.1" + "semver": "^5.6.0" }, "engines": { "node": ">=6" } }, - "node_modules/@ngageoint/mage.service/node_modules/cp-file/node_modules/pify": { + "node_modules/@ngageoint/mage.service/node_modules/caching-transform/node_modules/pify": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", @@ -4285,718 +5495,669 @@ "node": ">=6" } }, - "node_modules/@ngageoint/mage.service/node_modules/cpy": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/cpy/-/cpy-10.1.0.tgz", - "integrity": "sha512-VC2Gs20JcTyeQob6UViBLnyP0bYHkBh6EiKzot9vi2DmeGlFT9Wd7VG3NBrkNx/jYvFBeyDOMMHdHQhbtKLgHQ==", - "extraneous": true, - "dependencies": { - "arrify": "^3.0.0", - "cp-file": "^10.0.0", - "globby": "^13.1.4", - "junk": "^4.0.1", - "micromatch": "^4.0.5", - "nested-error-stacks": "^2.1.1", - "p-filter": "^3.0.0", - "p-map": "^6.0.0" - }, - "engines": { - "node": ">=16" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/@ngageoint/mage.service/node_modules/cpy-cli": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/cpy-cli/-/cpy-cli-5.0.0.tgz", - "integrity": "sha512-fb+DZYbL9KHc0BC4NYqGRrDIJZPXUmjjtqdw4XRRg8iV8dIfghUX/WiL+q4/B/KFTy3sK6jsbUhBaz0/Hxg7IQ==", + "node_modules/@ngageoint/mage.service/node_modules/caching-transform/node_modules/semver": { + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", + "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", "extraneous": true, - "dependencies": { - "cpy": "^10.1.0", - "meow": "^12.0.1" - }, "bin": { - "cpy": "cli.js" - }, - "engines": { - "node": ">=16" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "semver": "bin/semver" } }, - "node_modules/@ngageoint/mage.service/node_modules/cpy/node_modules/cp-file": { - "version": "10.0.0", - "resolved": "https://registry.npmjs.org/cp-file/-/cp-file-10.0.0.tgz", - "integrity": "sha512-vy2Vi1r2epK5WqxOLnskeKeZkdZvTKfFZQCplE3XWsP+SUJyd5XAUFC9lFgTjjXJF2GMne/UML14iEmkAaDfFg==", - "extraneous": true, + "node_modules/@ngageoint/mage.service/node_modules/call-bind": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.7.tgz", + "integrity": "sha512-GHTSNSYICQ7scH7sZ+M2rFopRoLh8t2bLSW6BbgrtLsahOIB5iyAVJf9GjWK3cYTDaMj4XdBpM1cA6pIS0Kv2w==", + "peer": true, "dependencies": { - "graceful-fs": "^4.2.10", - "nested-error-stacks": "^2.1.1", - "p-event": "^5.0.1" + "es-define-property": "^1.0.0", + "es-errors": "^1.3.0", + "function-bind": "^1.1.2", + "get-intrinsic": "^1.2.4", + "set-function-length": "^1.2.1" }, "engines": { - "node": ">=14.16" + "node": ">= 0.4" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/@ngageoint/mage.service/node_modules/crc-32": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/crc-32/-/crc-32-1.2.2.tgz", - "integrity": "sha512-ROmzCKrTnOwybPcJApAA6WBWij23HVfGVNKqqrZpuyZOHqK2CwHSvpGuyt/UNNvaIjEd8X5IFGp4Mh+Ie1IHJQ==", - "peer": true, - "bin": { - "crc32": "bin/crc32.njs" - }, - "engines": { - "node": ">=0.8" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/@ngageoint/mage.service/node_modules/crc32-stream": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/crc32-stream/-/crc32-stream-4.0.2.tgz", - "integrity": "sha512-DxFZ/Hk473b/muq1VJ///PMNLj0ZMnzye9thBpmjpJKCc5eMgB95aK8zCGrGfQ90cWo561Te6HK9D+j4KPdM6w==", + "node_modules/@ngageoint/mage.service/node_modules/call-bind-apply-helpers": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.2.tgz", + "integrity": "sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==", + "license": "MIT", "peer": true, "dependencies": { - "crc-32": "^1.2.0", - "readable-stream": "^3.4.0" + "es-errors": "^1.3.0", + "function-bind": "^1.1.2" }, "engines": { - "node": ">= 10" + "node": ">= 0.4" } }, - "node_modules/@ngageoint/mage.service/node_modules/crc32-stream/node_modules/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==", + "node_modules/@ngageoint/mage.service/node_modules/call-bound": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/call-bound/-/call-bound-1.0.4.tgz", + "integrity": "sha512-+ys997U96po4Kx/ABpBCqhA9EuxJaQWDQg7295H4hBphv3IZg0boBKuwYpt4YXp6MZ5AmZQnU/tyMTlRpaSejg==", + "license": "MIT", "peer": true, "dependencies": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" + "call-bind-apply-helpers": "^1.0.2", + "get-intrinsic": "^1.3.0" }, "engines": { - "node": ">= 6" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/@ngageoint/mage.service/node_modules/crc32-stream/node_modules/string_decoder": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", - "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", - "peer": true, - "dependencies": { - "safe-buffer": "~5.2.0" + "node_modules/@ngageoint/mage.service/node_modules/callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "extraneous": true, + "engines": { + "node": ">=6" } }, - "node_modules/@ngageoint/mage.service/node_modules/create-hash": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz", - "integrity": "sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==", - "peer": true, - "dependencies": { - "cipher-base": "^1.0.1", - "inherits": "^2.0.1", - "md5.js": "^1.3.4", - "ripemd160": "^2.0.1", - "sha.js": "^2.4.0" + "node_modules/@ngageoint/mage.service/node_modules/camelcase": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", + "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", + "extraneous": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@ngageoint/mage.service/node_modules/create-hmac": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz", - "integrity": "sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==", - "peer": true, - "dependencies": { - "cipher-base": "^1.0.3", - "create-hash": "^1.1.0", - "inherits": "^2.0.1", - "ripemd160": "^2.0.0", - "safe-buffer": "^5.0.1", - "sha.js": "^2.4.8" - } + "node_modules/@ngageoint/mage.service/node_modules/caseless": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", + "integrity": "sha512-4tYFyifaFfGacoiObjJegolkwSU4xQNGbVgUiNYVUxbQ2x2lUsFvY4hVgVzGiIe6WLOPqycWXA40l+PWsxthUw==", + "extraneous": true }, - "node_modules/@ngageoint/mage.service/node_modules/cross-spawn": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-4.0.2.tgz", - "integrity": "sha1-e5JHYhwjrf3ThWAEqCPL45dCTUE=", + "node_modules/@ngageoint/mage.service/node_modules/cfenv": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/cfenv/-/cfenv-1.2.4.tgz", + "integrity": "sha512-jWQ+3UXZauYyOXwHpMm74C0wM7+LDQmgMxWBGchg4as7+YyTL0pyx/CZ3dEvJyZVOB4SgKATc5naJky6cd9zYw==", + "license": "Apache-2.0", "peer": true, "dependencies": { - "lru-cache": "^4.0.1", - "which": "^1.2.9" - } - }, - "node_modules/@ngageoint/mage.service/node_modules/cycle": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/cycle/-/cycle-1.0.3.tgz", - "integrity": "sha1-IegLK+hYD5i0aPN5QwZisEbDStI=", - "peer": true, - "engines": { - "node": ">=0.4.0" + "js-yaml": "4.0.x", + "ports": "1.1.x", + "underscore": "1.12.x" } }, - "node_modules/@ngageoint/mage.service/node_modules/dashdash": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", - "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=", + "node_modules/@ngageoint/mage.service/node_modules/chai": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/chai/-/chai-4.5.0.tgz", + "integrity": "sha512-RITGBfijLkBddZvnn8jdqoTypxvqbOLYQkGGxXzeFjVHvudaPw0HNFD9x928/eUwYWd2dPCugVqspGALTZZQKw==", "extraneous": true, + "license": "MIT", "dependencies": { - "assert-plus": "^1.0.0" + "assertion-error": "^1.1.0", + "check-error": "^1.0.3", + "deep-eql": "^4.1.3", + "get-func-name": "^2.0.2", + "loupe": "^2.3.6", + "pathval": "^1.1.1", + "type-detect": "^4.1.0" }, "engines": { - "node": ">=0.10" - } - }, - "node_modules/@ngageoint/mage.service/node_modules/dbf": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/dbf/-/dbf-0.1.0.tgz", - "integrity": "sha1-1WNrdWq9NoilbU3+tZD0gqBjvq0=", - "peer": true, - "dependencies": { - "jdataview": "~2.4.4" + "node": ">=4" } }, - "node_modules/@ngageoint/mage.service/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/chai-as-promised": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/chai-as-promised/-/chai-as-promised-7.1.2.tgz", + "integrity": "sha512-aBDHZxRzYnUYuIAIPBH2s511DjlKPzXNlXSGFC8CwmroWQLfrW0LtE1nK3MAwwNhJPa9raEjNCmRoFpG0Hurdw==", + "extraneous": true, + "license": "WTFPL", "dependencies": { - "ms": "2.0.0" + "check-error": "^1.0.2" + }, + "peerDependencies": { + "chai": ">= 2.1.2 < 6" } }, - "node_modules/@ngageoint/mage.service/node_modules/decamelize": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", - "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", + "node_modules/@ngageoint/mage.service/node_modules/chai/node_modules/type-detect": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.1.0.tgz", + "integrity": "sha512-Acylog8/luQ8L7il+geoSxhEkazvkslg7PSNKOX59mbB9cOveP5aq9h74Y7YU8yDpJwetzQQrfIwtf4Wp4LKcw==", "extraneous": true, + "license": "MIT", "engines": { - "node": ">=0.10.0" + "node": ">=4" } }, - "node_modules/@ngageoint/mage.service/node_modules/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==", + "node_modules/@ngageoint/mage.service/node_modules/chalk": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.1.tgz", + "integrity": "sha512-diHzdDKxcU+bAsUboHLPEDQiw0qEe0qd7SYUn3HgcFlWgbDcfLGswOHYeGrHKzG9z6UYf01d9VFMfZxPM1xZSg==", + "optional": true, "peer": true, "dependencies": { - "mimic-response": "^3.1.0" + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" }, "engines": { "node": ">=10" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/@ngageoint/mage.service/node_modules/deep-equal": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-2.0.5.tgz", - "integrity": "sha512-nPiRgmbAtm1a3JsnLCf6/SLfXcjyN5v8L1TXzdCmHrXJ4hx+gW/w1YCcn7z8gJtSiDArZCgYtbao3QqLm/N1Sw==", - "extraneous": true, - "dependencies": { - "call-bind": "^1.0.0", - "es-get-iterator": "^1.1.1", - "get-intrinsic": "^1.0.1", - "is-arguments": "^1.0.4", - "is-date-object": "^1.0.2", - "is-regex": "^1.1.1", - "isarray": "^2.0.5", - "object-is": "^1.1.4", - "object-keys": "^1.1.1", - "object.assign": "^4.1.2", - "regexp.prototype.flags": "^1.3.0", - "side-channel": "^1.0.3", - "which-boxed-primitive": "^1.0.1", - "which-collection": "^1.0.1", - "which-typed-array": "^1.1.2" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/@ngageoint/mage.service/node_modules/deep-equal/node_modules/isarray": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", - "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==", - "extraneous": true - }, - "node_modules/@ngageoint/mage.service/node_modules/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==", + "node_modules/@ngageoint/mage.service/node_modules/character-parser": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/character-parser/-/character-parser-2.2.0.tgz", + "integrity": "sha512-+UqJQjFEFaTAs3bNsF2j2kEN1baG/zghZbdqoYEDxGZtJo9LBzl1A+m0D4n3qKx8N2FNv8/Xp6yV9mQmBuptaw==", "peer": true, - "engines": { - "node": ">=4.0.0" + "dependencies": { + "is-regex": "^1.0.3" } }, - "node_modules/@ngageoint/mage.service/node_modules/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==", - "extraneous": true + "node_modules/@ngageoint/mage.service/node_modules/chardet": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz", + "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==", + "optional": true, + "peer": true }, - "node_modules/@ngageoint/mage.service/node_modules/default-require-extensions": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/default-require-extensions/-/default-require-extensions-2.0.0.tgz", - "integrity": "sha1-9fj7sYp9bVCyH2QfZJ67Uiz+JPc=", + "node_modules/@ngageoint/mage.service/node_modules/check-error": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/check-error/-/check-error-1.0.3.tgz", + "integrity": "sha512-iKEoDYaRmd1mxM90a2OEfWhjsjPpYPuQ+lMYsoxB126+t8fw7ySEO48nmDg5COTjxDI65/Y2OWpeEHk3ZOe8zg==", "extraneous": true, "dependencies": { - "strip-bom": "^3.0.0" + "get-func-name": "^2.0.2" }, "engines": { - "node": ">=4" + "node": "*" } }, - "node_modules/@ngageoint/mage.service/node_modules/define-properties": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz", - "integrity": "sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==", + "node_modules/@ngageoint/mage.service/node_modules/chokidar": { + "version": "3.5.3", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", + "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", "extraneous": true, + "funding": [ + { + "type": "individual", + "url": "https://paulmillr.com/funding/" + } + ], + "license": "MIT", "dependencies": { - "object-keys": "^1.0.12" + "anymatch": "~3.1.2", + "braces": "~3.0.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" }, "engines": { - "node": ">= 0.4" + "node": ">= 8.10.0" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" } }, - "node_modules/@ngageoint/mage.service/node_modules/delayed-stream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", - "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/chokidar/node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "extraneous": true, + "license": "ISC", + "dependencies": { + "is-glob": "^4.0.1" + }, "engines": { - "node": ">=0.4.0" + "node": ">= 6" } }, - "node_modules/@ngageoint/mage.service/node_modules/delegates": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", - "integrity": "sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ==", + "node_modules/@ngageoint/mage.service/node_modules/chownr": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz", + "integrity": "sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==", "optional": true, "peer": true }, - "node_modules/@ngageoint/mage.service/node_modules/depd": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", - "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/clean-stack": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-4.2.0.tgz", + "integrity": "sha512-LYv6XPxoyODi36Dp976riBtSY27VmFo+MKqEU9QCCWyTrdEPDog+RWA7xQWHi6Vbp61j5c4cdzzX1NidnwtUWg==", + "extraneous": true, + "dependencies": { + "escape-string-regexp": "5.0.0" + }, "engines": { - "node": ">= 0.6" + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@ngageoint/mage.service/node_modules/destroy": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz", - "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/clean-stack/node_modules/escape-string-regexp": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz", + "integrity": "sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==", + "extraneous": true, "engines": { - "node": ">= 0.8", - "npm": "1.2.8000 || >= 1.4.16" + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@ngageoint/mage.service/node_modules/detect-libc": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.0.2.tgz", - "integrity": "sha512-UX6sGumvvqSaXgdKGUsgZWqcUyIXZ/vZTrlRT/iobiKhGL0zL4d3osHj3uqllWJK+i+sixDS/3COVEOFbupFyw==", + "node_modules/@ngageoint/mage.service/node_modules/cli-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz", + "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", + "optional": true, "peer": true, + "dependencies": { + "restore-cursor": "^3.1.0" + }, "engines": { "node": ">=8" } }, - "node_modules/@ngageoint/mage.service/node_modules/dezalgo": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/dezalgo/-/dezalgo-1.0.4.tgz", - "integrity": "sha512-rXSP0bf+5n0Qonsb+SVVfNfIsimO4HEtmnIpPHY8Q1UCzKlQrDMfdobr8nJOOsRgWCyMRqeSBQzmWUMq7zvVig==", + "node_modules/@ngageoint/mage.service/node_modules/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==", + "optional": true, "peer": true, - "dependencies": { - "asap": "^2.0.0", - "wrappy": "1" + "engines": { + "node": ">= 10" } }, - "node_modules/@ngageoint/mage.service/node_modules/diff": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/diff/-/diff-3.5.0.tgz", - "integrity": "sha512-A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA==", + "node_modules/@ngageoint/mage.service/node_modules/cliui": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", + "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", "extraneous": true, + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^7.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/coffeescript": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/coffeescript/-/coffeescript-2.7.0.tgz", + "integrity": "sha512-hzWp6TUE2d/jCcN67LrW1eh5b/rSDKQK6oD6VMLlggYVUUFexgTH9z3dNYihzX4RMhze5FTUsUmOXViJKFQR/A==", + "peer": true, + "bin": { + "cake": "bin/cake", + "coffee": "bin/coffee" + }, "engines": { - "node": ">=0.3.1" + "node": ">=6" } }, - "node_modules/@ngageoint/mage.service/node_modules/dir-glob": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", - "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", - "extraneous": true, + "node_modules/@ngageoint/mage.service/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "optional": true, + "peer": true, "dependencies": { - "path-type": "^4.0.0" + "color-name": "~1.1.4" }, "engines": { - "node": ">=8" + "node": ">=7.0.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/dir-glob/node_modules/path-type": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", - "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", - "extraneous": true, + "node_modules/@ngageoint/mage.service/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "optional": true, + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/colors": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/colors/-/colors-1.0.3.tgz", + "integrity": "sha512-pFGrxThWcWQ2MsAz6RtgeWe4NK2kUE1WfsrvvlctdII745EW9I0yflqhe7++M5LEc7bV2c/9/5zc8sFcpL0Drw==", + "peer": true, "engines": { - "node": ">=8" + "node": ">=0.1.90" } }, - "node_modules/@ngageoint/mage.service/node_modules/doctrine": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", - "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", - "extraneous": true, + "node_modules/@ngageoint/mage.service/node_modules/combined-stream": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", + "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", + "peer": true, "dependencies": { - "esutils": "^2.0.2" + "delayed-stream": "~1.0.0" }, "engines": { - "node": ">=6.0.0" + "node": ">= 0.8" } }, - "node_modules/@ngageoint/mage.service/node_modules/doctypes": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/doctypes/-/doctypes-1.1.0.tgz", - "integrity": "sha512-LLBi6pEqS6Do3EKQ3J0NqHWV5hhb78Pi8vvESYwyOy2c31ZEZVdtitdzsQsKb7878PEERhzUk0ftqGhG6Mz+pQ==", - "peer": true - }, - "node_modules/@ngageoint/mage.service/node_modules/drange": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/drange/-/drange-1.1.1.tgz", - "integrity": "sha512-pYxfDYpued//QpnLIm4Avk7rsNtAtQkUES2cwAYSvD/wd2pKD71gN2Ebj3e7klzXwjocvE8c5vx/1fxwpqmSxA==", - "extraneous": true, + "node_modules/@ngageoint/mage.service/node_modules/commander": { + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-8.3.0.tgz", + "integrity": "sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww==", + "license": "MIT", + "peer": true, "engines": { - "node": ">=4" + "node": ">= 12" } }, - "node_modules/@ngageoint/mage.service/node_modules/duplexer": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/duplexer/-/duplexer-0.1.2.tgz", - "integrity": "sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg==", - "peer": true - }, - "node_modules/@ngageoint/mage.service/node_modules/eastasianwidth": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz", - "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==", + "node_modules/@ngageoint/mage.service/node_modules/commondir": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", + "integrity": "sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==", "extraneous": true }, - "node_modules/@ngageoint/mage.service/node_modules/ecc-jsbn": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz", - "integrity": "sha1-OoOpBOVDUyh4dMVkt1SThoSamMk=", - "extraneous": true, + "node_modules/@ngageoint/mage.service/node_modules/component-emitter": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.1.tgz", + "integrity": "sha512-T0+barUSQRTUQASh8bx02dl+DhF54GtIDY13Y3m9oWTklKbb3Wv974meRpeZ3lp1JpLVECWWNHC4vaG2XHXouQ==", + "peer": true, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/compress-commons": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/compress-commons/-/compress-commons-4.1.2.tgz", + "integrity": "sha512-D3uMHtGc/fcO1Gt1/L7i1e33VOvD4A9hfQLP+6ewd+BvG/gQ84Yh4oftEhAdjSMgBgwGL+jsppT7JYNpo6MHHg==", + "peer": true, "dependencies": { - "jsbn": "~0.1.0", - "safer-buffer": "^2.1.0" + "buffer-crc32": "^0.2.13", + "crc32-stream": "^4.0.2", + "normalize-path": "^3.0.0", + "readable-stream": "^3.6.0" + }, + "engines": { + "node": ">= 10" } }, - "node_modules/@ngageoint/mage.service/node_modules/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==", + "node_modules/@ngageoint/mage.service/node_modules/concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/concat-stream": { + "version": "1.6.2", + "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz", + "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==", + "engines": [ + "node >= 0.8" + ], "peer": true, "dependencies": { - "safe-buffer": "^5.0.1" + "buffer-from": "^1.0.0", + "inherits": "^2.0.3", + "readable-stream": "^2.2.2", + "typedarray": "^0.0.6" } }, - "node_modules/@ngageoint/mage.service/node_modules/ee-first": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", - "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=", + "node_modules/@ngageoint/mage.service/node_modules/concat-stream/node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", "peer": true }, - "node_modules/@ngageoint/mage.service/node_modules/elliptic": { - "version": "6.5.4", - "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.4.tgz", - "integrity": "sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ==", + "node_modules/@ngageoint/mage.service/node_modules/concat-stream/node_modules/readable-stream": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", + "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", "peer": true, "dependencies": { - "bn.js": "^4.11.9", - "brorand": "^1.1.0", - "hash.js": "^1.0.0", - "hmac-drbg": "^1.0.1", - "inherits": "^2.0.4", - "minimalistic-assert": "^1.0.1", - "minimalistic-crypto-utils": "^1.0.1" + "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" } }, - "node_modules/@ngageoint/mage.service/node_modules/elliptic/node_modules/bn.js": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", - "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", - "peer": true - }, - "node_modules/@ngageoint/mage.service/node_modules/emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "optional": true, + "node_modules/@ngageoint/mage.service/node_modules/concat-stream/node_modules/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==", "peer": true }, - "node_modules/@ngageoint/mage.service/node_modules/encodeurl": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", - "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==", - "peer": true, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/@ngageoint/mage.service/node_modules/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==", + "node_modules/@ngageoint/mage.service/node_modules/concat-stream/node_modules/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==", "peer": true, "dependencies": { - "once": "^1.4.0" + "safe-buffer": "~5.1.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/error-ex": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", - "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", - "extraneous": true, + "node_modules/@ngageoint/mage.service/node_modules/constantinople": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/constantinople/-/constantinople-4.0.1.tgz", + "integrity": "sha512-vCrqcSIq4//Gx74TXXCGnHpulY1dskqLTFGDmhrGxzeXL8lF8kvXv6mpNWlJj1uD4DW23D4ljAqbY4RRaaUZIw==", + "peer": true, "dependencies": { - "is-arrayish": "^0.2.1" + "@babel/parser": "^7.6.0", + "@babel/types": "^7.6.1" } }, - "node_modules/@ngageoint/mage.service/node_modules/es-abstract": { - "version": "1.19.4", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.19.4.tgz", - "integrity": "sha512-flV8e5g9/xulChMG48Fygk1ptpo4lQRJ0eJYtxJFgi7pklLx7EFcOJ34jnvr8pbWlaFN/AT1cZpe0hiFel9Hqg==", - "extraneous": true, + "node_modules/@ngageoint/mage.service/node_modules/content-disposition": { + "version": "0.5.4", + "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz", + "integrity": "sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==", + "peer": true, "dependencies": { - "call-bind": "^1.0.2", - "es-to-primitive": "^1.2.1", - "function-bind": "^1.1.1", - "get-intrinsic": "^1.1.1", - "get-symbol-description": "^1.0.0", - "has": "^1.0.3", - "has-symbols": "^1.0.3", - "internal-slot": "^1.0.3", - "is-callable": "^1.2.4", - "is-negative-zero": "^2.0.2", - "is-regex": "^1.1.4", - "is-shared-array-buffer": "^1.0.2", - "is-string": "^1.0.7", - "is-weakref": "^1.0.2", - "object-inspect": "^1.12.0", - "object-keys": "^1.1.1", - "object.assign": "^4.1.2", - "string.prototype.trimend": "^1.0.4", - "string.prototype.trimstart": "^1.0.4", - "unbox-primitive": "^1.0.1" + "safe-buffer": "5.2.1" }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">= 0.6" } }, - "node_modules/@ngageoint/mage.service/node_modules/es-get-iterator": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/es-get-iterator/-/es-get-iterator-1.1.2.tgz", - "integrity": "sha512-+DTO8GYwbMCwbywjimwZMHp8AuYXOS2JZFWoi2AlPOS3ebnII9w/NLpNZtA7A0YLaVDw+O7KFCeoIV7OPvM7hQ==", - "extraneous": true, - "dependencies": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.1.0", - "has-symbols": "^1.0.1", - "is-arguments": "^1.1.0", - "is-map": "^2.0.2", - "is-set": "^2.0.2", - "is-string": "^1.0.5", - "isarray": "^2.0.5" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node_modules/@ngageoint/mage.service/node_modules/content-type": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.5.tgz", + "integrity": "sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==", + "peer": true, + "engines": { + "node": ">= 0.6" } }, - "node_modules/@ngageoint/mage.service/node_modules/es-get-iterator/node_modules/isarray": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", - "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==", + "node_modules/@ngageoint/mage.service/node_modules/convert-source-map": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.9.0.tgz", + "integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==", "extraneous": true }, - "node_modules/@ngageoint/mage.service/node_modules/es-to-primitive": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", - "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", - "extraneous": true, - "dependencies": { - "is-callable": "^1.1.4", - "is-date-object": "^1.0.1", - "is-symbol": "^1.0.2" - }, + "node_modules/@ngageoint/mage.service/node_modules/cookie": { + "version": "0.7.1", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.7.1.tgz", + "integrity": "sha512-6DnInpx7SJ2AK3+CTUE/ZM0vWTUboZCegxhC2xiIydHR9jNuTAASBrfEpHhiGOZw/nX51bHt6YQl8jsGo4y/0w==", + "license": "MIT", + "peer": true, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">= 0.6" } }, - "node_modules/@ngageoint/mage.service/node_modules/es6-error": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/es6-error/-/es6-error-4.1.1.tgz", - "integrity": "sha512-Um/+FxMr9CISWh0bi5Zv0iOD+4cFh5qLeks1qhAopKVAJw3drgKbKySikp7wGhDL0HPeaja0P5ULZrxLkniUVg==", - "extraneous": true - }, - "node_modules/@ngageoint/mage.service/node_modules/es6-object-assign": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/es6-object-assign/-/es6-object-assign-1.1.0.tgz", - "integrity": "sha1-wsNYJlYkfDnqEHyx5mUrb58kUjw=", - "extraneous": true + "node_modules/@ngageoint/mage.service/node_modules/cookie-signature": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", + "integrity": "sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==", + "peer": true }, - "node_modules/@ngageoint/mage.service/node_modules/es6-promise": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-3.2.1.tgz", - "integrity": "sha1-7FYjOGgDKQkgcXDDlEjiREndH8Q=", + "node_modules/@ngageoint/mage.service/node_modules/cookiejar": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/cookiejar/-/cookiejar-2.1.4.tgz", + "integrity": "sha512-LDx6oHrK+PhzLKJU9j5S7/Y3jM/mUHvD/DeI1WQmJn652iPC5Y4TBzC9l+5OMOXlyTTA+SmVUPm0HQUwpD5Jqw==", "peer": true }, - "node_modules/@ngageoint/mage.service/node_modules/escape-html": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", - "integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg=", + "node_modules/@ngageoint/mage.service/node_modules/core-util-is": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", + "integrity": "sha512-3lqz5YjWTYnW6dlDa5TLaTCcShfar1e40rmcJVwCBJC6mWlFuj0eCHIElmG1g5kyuJ/GD+8Wn4FFCcz4gJPfaQ==", "peer": true }, - "node_modules/@ngageoint/mage.service/node_modules/escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", - "optional": true, - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/coveralls": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/coveralls/-/coveralls-3.1.1.tgz", + "integrity": "sha512-+dxnG2NHncSD1NrqbSM3dn/lE57O6Qf/koe9+I7c+wzkqRmEvcp0kgJdxKInzYzkICKkFMZsX3Vct3++tsF9ww==", + "extraneous": true, + "license": "BSD-2-Clause", + "dependencies": { + "js-yaml": "^3.13.1", + "lcov-parse": "^1.0.0", + "log-driver": "^1.2.7", + "minimist": "^1.2.5", + "request": "^2.88.2" + }, + "bin": { + "coveralls": "bin/coveralls.js" + }, "engines": { - "node": ">=0.8.0" + "node": ">=6" } }, - "node_modules/@ngageoint/mage.service/node_modules/eslint": { - "version": "8.51.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.51.0.tgz", - "integrity": "sha512-2WuxRZBrlwnXi+/vFSJyjMqrNjtJqiasMzehF0shoLaW7DzS3/9Yvrmq5JiT66+pNjiX4UBnLDiKHcWAr/OInA==", + "node_modules/@ngageoint/mage.service/node_modules/coveralls/node_modules/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==", "extraneous": true, "dependencies": { - "@eslint-community/eslint-utils": "^4.2.0", - "@eslint-community/regexpp": "^4.6.1", - "@eslint/eslintrc": "^2.1.2", - "@eslint/js": "8.51.0", - "@humanwhocodes/config-array": "^0.11.11", - "@humanwhocodes/module-importer": "^1.0.1", - "@nodelib/fs.walk": "^1.2.8", - "ajv": "^6.12.4", - "chalk": "^4.0.0", - "cross-spawn": "^7.0.2", - "debug": "^4.3.2", - "doctrine": "^3.0.0", - "escape-string-regexp": "^4.0.0", - "eslint-scope": "^7.2.2", - "eslint-visitor-keys": "^3.4.3", - "espree": "^9.6.1", - "esquery": "^1.4.2", - "esutils": "^2.0.2", - "fast-deep-equal": "^3.1.3", - "file-entry-cache": "^6.0.1", - "find-up": "^5.0.0", - "glob-parent": "^6.0.2", - "globals": "^13.19.0", - "graphemer": "^1.4.0", - "ignore": "^5.2.0", - "imurmurhash": "^0.1.4", - "is-glob": "^4.0.0", - "is-path-inside": "^3.0.3", - "js-yaml": "^4.1.0", - "json-stable-stringify-without-jsonify": "^1.0.1", - "levn": "^0.4.1", - "lodash.merge": "^4.6.2", - "minimatch": "^3.1.2", - "natural-compare": "^1.4.0", - "optionator": "^0.9.3", - "strip-ansi": "^6.0.1", - "text-table": "^0.2.0" + "argparse": "^1.0.7", + "esprima": "^4.0.0" }, "bin": { - "eslint": "bin/eslint.js" + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/cp-file": { + "version": "10.0.0", + "resolved": "https://registry.npmjs.org/cp-file/-/cp-file-10.0.0.tgz", + "integrity": "sha512-vy2Vi1r2epK5WqxOLnskeKeZkdZvTKfFZQCplE3XWsP+SUJyd5XAUFC9lFgTjjXJF2GMne/UML14iEmkAaDfFg==", + "extraneous": true, + "dependencies": { + "graceful-fs": "^4.2.10", + "nested-error-stacks": "^2.1.1", + "p-event": "^5.0.1" }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + "node": ">=14.16" }, "funding": { - "url": "https://opencollective.com/eslint" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@ngageoint/mage.service/node_modules/eslint-config-prettier": { - "version": "6.15.0", - "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-6.15.0.tgz", - "integrity": "sha512-a1+kOYLR8wMGustcgAjdydMsQ2A/2ipRPwRKUmfYaSxc9ZPcrku080Ctl6zrZzZNs/U82MjSv+qKREkoq3bJaw==", + "node_modules/@ngageoint/mage.service/node_modules/cpy": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/cpy/-/cpy-10.1.0.tgz", + "integrity": "sha512-VC2Gs20JcTyeQob6UViBLnyP0bYHkBh6EiKzot9vi2DmeGlFT9Wd7VG3NBrkNx/jYvFBeyDOMMHdHQhbtKLgHQ==", "extraneous": true, "dependencies": { - "get-stdin": "^6.0.0" + "arrify": "^3.0.0", + "cp-file": "^10.0.0", + "globby": "^13.1.4", + "junk": "^4.0.1", + "micromatch": "^4.0.5", + "nested-error-stacks": "^2.1.1", + "p-filter": "^3.0.0", + "p-map": "^6.0.0" + }, + "engines": { + "node": ">=16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/cpy-cli": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/cpy-cli/-/cpy-cli-5.0.0.tgz", + "integrity": "sha512-fb+DZYbL9KHc0BC4NYqGRrDIJZPXUmjjtqdw4XRRg8iV8dIfghUX/WiL+q4/B/KFTy3sK6jsbUhBaz0/Hxg7IQ==", + "extraneous": true, + "dependencies": { + "cpy": "^10.1.0", + "meow": "^12.0.1" }, "bin": { - "eslint-config-prettier-check": "bin/cli.js" + "cpy": "cli.js" + }, + "engines": { + "node": ">=16" }, - "peerDependencies": { - "eslint": ">=3.14.1" + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@ngageoint/mage.service/node_modules/eslint-plugin-prettier": { - "version": "3.4.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-prettier/-/eslint-plugin-prettier-3.4.1.tgz", - "integrity": "sha512-htg25EUYUeIhKHXjOinK4BgCcDwtLHjqaxCDsMy5nbnUMkKFvIhMVCp+5GFUXQ4Nr8lBsPqtGAqBenbpFqAA2g==", + "node_modules/@ngageoint/mage.service/node_modules/cpy/node_modules/globby": { + "version": "13.2.2", + "resolved": "https://registry.npmjs.org/globby/-/globby-13.2.2.tgz", + "integrity": "sha512-Y1zNGV+pzQdh7H39l9zgB4PJqjRNqydvdYCDG4HFXM4XuvSaQQlEc91IU1yALL8gUTDomgBAfz3XJdmUS+oo0w==", "extraneous": true, "dependencies": { - "prettier-linter-helpers": "^1.0.0" + "dir-glob": "^3.0.1", + "fast-glob": "^3.3.0", + "ignore": "^5.2.4", + "merge2": "^1.4.1", + "slash": "^4.0.0" }, "engines": { - "node": ">=6.0.0" - }, - "peerDependencies": { - "eslint": ">=5.0.0", - "prettier": ">=1.13.0" + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" }, - "peerDependenciesMeta": { - "eslint-config-prettier": { - "optional": true - } + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@ngageoint/mage.service/node_modules/eslint-visitor-keys": { - "version": "3.4.3", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", - "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", + "node_modules/@ngageoint/mage.service/node_modules/cpy/node_modules/slash": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-4.0.0.tgz", + "integrity": "sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==", "extraneous": true, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + "node": ">=12" }, "funding": { - "url": "https://opencollective.com/eslint" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@ngageoint/mage.service/node_modules/eslint/node_modules/ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "extraneous": true, + "node_modules/@ngageoint/mage.service/node_modules/crc-32": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/crc-32/-/crc-32-1.2.2.tgz", + "integrity": "sha512-ROmzCKrTnOwybPcJApAA6WBWij23HVfGVNKqqrZpuyZOHqK2CwHSvpGuyt/UNNvaIjEd8X5IFGp4Mh+Ie1IHJQ==", + "peer": true, + "bin": { + "crc32": "bin/crc32.njs" + }, "engines": { - "node": ">=8" + "node": ">=0.8" } }, - "node_modules/@ngageoint/mage.service/node_modules/eslint/node_modules/argparse": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", - "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", - "extraneous": true + "node_modules/@ngageoint/mage.service/node_modules/crc32-stream": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/crc32-stream/-/crc32-stream-4.0.3.tgz", + "integrity": "sha512-NT7w2JVU7DFroFdYkeq8cywxrgjPHWkdX1wjpRQXPX5Asews3tA+Ght6lddQO5Mkumffp3X7GEqku3epj2toIw==", + "peer": true, + "dependencies": { + "crc-32": "^1.2.0", + "readable-stream": "^3.4.0" + }, + "engines": { + "node": ">= 10" + } }, - "node_modules/@ngageoint/mage.service/node_modules/eslint/node_modules/cross-spawn": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", - "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "node_modules/@ngageoint/mage.service/node_modules/cross-spawn": { + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", + "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==", "extraneous": true, + "license": "MIT", "dependencies": { "path-key": "^3.1.0", "shebang-command": "^2.0.0", @@ -5006,1223 +6167,1285 @@ "node": ">= 8" } }, - "node_modules/@ngageoint/mage.service/node_modules/eslint/node_modules/debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", - "extraneous": true, - "dependencies": { - "ms": "2.1.2" - }, + "node_modules/@ngageoint/mage.service/node_modules/cycle": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/cycle/-/cycle-1.0.3.tgz", + "integrity": "sha512-TVF6svNzeQCOpjCqsy0/CSy8VgObG3wXusJ73xW2GbG5rGx7lC8zxDSURicsXI2UsGdi2L0QNRCi745/wUDvsA==", + "peer": true, "engines": { - "node": ">=6.0" - }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } + "node": ">=0.4.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/eslint/node_modules/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==", + "node_modules/@ngageoint/mage.service/node_modules/dashdash": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", + "integrity": "sha512-jRFi8UDGo6j+odZiEpjazZaWqEal3w/basFjQHQEwVtZJGDpxbH1MeYluwCS8Xq5wmLJooDlMgvVarmWfGM44g==", "extraneous": true, - "engines": { - "node": ">=10" + "dependencies": { + "assert-plus": "^1.0.0" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "engines": { + "node": ">=0.10" } }, - "node_modules/@ngageoint/mage.service/node_modules/eslint/node_modules/eslint-scope": { - "version": "7.2.2", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.2.tgz", - "integrity": "sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==", + "node_modules/@ngageoint/mage.service/node_modules/data-view-buffer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/data-view-buffer/-/data-view-buffer-1.0.1.tgz", + "integrity": "sha512-0lht7OugA5x3iJLOWFhWK/5ehONdprk0ISXqVFn/NFrDu+cuc8iADFrGQz5BnRK7LLU3JmkbXSxaqX+/mXYtUA==", "extraneous": true, "dependencies": { - "esrecurse": "^4.3.0", - "estraverse": "^5.2.0" + "call-bind": "^1.0.6", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.1" }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + "node": ">= 0.4" }, "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "node_modules/@ngageoint/mage.service/node_modules/eslint/node_modules/estraverse": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", - "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", - "extraneous": true, - "engines": { - "node": ">=4.0" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/@ngageoint/mage.service/node_modules/eslint/node_modules/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==", + "node_modules/@ngageoint/mage.service/node_modules/data-view-byte-length": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/data-view-byte-length/-/data-view-byte-length-1.0.1.tgz", + "integrity": "sha512-4J7wRJD3ABAzr8wP+OcIcqq2dlUKp4DVflx++hs5h5ZKydWMI6/D/fAot+yh6g2tHh8fLFTvNOaVN357NvSrOQ==", "extraneous": true, "dependencies": { - "is-glob": "^4.0.3" + "call-bind": "^1.0.7", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.1" }, "engines": { - "node": ">=10.13.0" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/@ngageoint/mage.service/node_modules/eslint/node_modules/js-yaml": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", - "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", + "node_modules/@ngageoint/mage.service/node_modules/data-view-byte-offset": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/data-view-byte-offset/-/data-view-byte-offset-1.0.0.tgz", + "integrity": "sha512-t/Ygsytq+R995EJ5PZlD4Cu56sWa8InXySaViRzw9apusqsOO2bQP+SbYzAhR0pFKoB+43lYy8rWban9JSuXnA==", "extraneous": true, "dependencies": { - "argparse": "^2.0.1" + "call-bind": "^1.0.6", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.1" }, - "bin": { - "js-yaml": "bin/js-yaml.js" - } - }, - "node_modules/@ngageoint/mage.service/node_modules/eslint/node_modules/ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "extraneous": true - }, - "node_modules/@ngageoint/mage.service/node_modules/eslint/node_modules/path-key": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", - "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", - "extraneous": true, "engines": { - "node": ">=8" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/@ngageoint/mage.service/node_modules/eslint/node_modules/shebang-command": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", - "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", - "extraneous": true, + "node_modules/@ngageoint/mage.service/node_modules/debug": { + "version": "4.3.5", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.5.tgz", + "integrity": "sha512-pt0bNEmneDIvdL1Xsd9oDQ/wrQRkXDT4AUWlNZNPKvW5x/jyO9VFXkJUP07vQ2upmw5PlaITaPKc31jK13V+jg==", + "peer": true, "dependencies": { - "shebang-regex": "^3.0.0" + "ms": "2.1.2" }, "engines": { - "node": ">=8" + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } } }, - "node_modules/@ngageoint/mage.service/node_modules/eslint/node_modules/shebang-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", - "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "node_modules/@ngageoint/mage.service/node_modules/decamelize": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-4.0.0.tgz", + "integrity": "sha512-9iE1PgSik9HeIIw2JO94IidnE3eBoQrFJ3w7sFuzSX4DpmZ3v5sZpUiV5Swcf6mQEF+Y0ru8Neo+p+nyh2J+hQ==", "extraneous": true, "engines": { - "node": ">=8" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@ngageoint/mage.service/node_modules/eslint/node_modules/strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "extraneous": true, + "node_modules/@ngageoint/mage.service/node_modules/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==", + "optional": true, + "peer": true, "dependencies": { - "ansi-regex": "^5.0.1" + "mimic-response": "^3.1.0" }, "engines": { - "node": ">=8" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@ngageoint/mage.service/node_modules/eslint/node_modules/which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "node_modules/@ngageoint/mage.service/node_modules/deep-eql": { + "version": "4.1.4", + "resolved": "https://registry.npmjs.org/deep-eql/-/deep-eql-4.1.4.tgz", + "integrity": "sha512-SUwdGfqdKOwxCPeVYjwSyRpJ7Z+fhpwIAtmCUdZIWZ/YP5R9WAsyuSgpLVDi9bjWoN2LXHNss/dk3urXtdQxGg==", "extraneous": true, + "license": "MIT", "dependencies": { - "isexe": "^2.0.0" - }, - "bin": { - "node-which": "bin/node-which" + "type-detect": "^4.0.0" }, "engines": { - "node": ">= 8" + "node": ">=6" } }, - "node_modules/@ngageoint/mage.service/node_modules/espree": { - "version": "9.6.1", - "resolved": "https://registry.npmjs.org/espree/-/espree-9.6.1.tgz", - "integrity": "sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==", + "node_modules/@ngageoint/mage.service/node_modules/deep-equal": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-2.2.3.tgz", + "integrity": "sha512-ZIwpnevOurS8bpT4192sqAowWM76JDKSHYzMLty3BZGSswgq6pBaH3DhCSW5xVAZICZyKdOBPjwww5wfgT/6PA==", "extraneous": true, + "license": "MIT", "dependencies": { - "acorn": "^8.9.0", - "acorn-jsx": "^5.3.2", - "eslint-visitor-keys": "^3.4.1" + "array-buffer-byte-length": "^1.0.0", + "call-bind": "^1.0.5", + "es-get-iterator": "^1.1.3", + "get-intrinsic": "^1.2.2", + "is-arguments": "^1.1.1", + "is-array-buffer": "^3.0.2", + "is-date-object": "^1.0.5", + "is-regex": "^1.1.4", + "is-shared-array-buffer": "^1.0.2", + "isarray": "^2.0.5", + "object-is": "^1.1.5", + "object-keys": "^1.1.1", + "object.assign": "^4.1.4", + "regexp.prototype.flags": "^1.5.1", + "side-channel": "^1.0.4", + "which-boxed-primitive": "^1.0.2", + "which-collection": "^1.0.1", + "which-typed-array": "^1.1.13" }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + "node": ">= 0.4" }, "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "node_modules/@ngageoint/mage.service/node_modules/espree/node_modules/acorn": { - "version": "8.10.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.10.0.tgz", - "integrity": "sha512-F0SAmZ8iUtS//m8DmCTA0jlh6TDKkHQyK6xc6V4KDTyZKA9dnvX9/3sRTVQrWm79glUAZbnmmNcdYwUIHWVybw==", - "extraneous": true, - "bin": { - "acorn": "bin/acorn" - }, - "engines": { - "node": ">=0.4.0" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/@ngageoint/mage.service/node_modules/esprima": { - "version": "2.7.3", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-2.7.3.tgz", - "integrity": "sha1-luO3DVd59q1JzQMmc9HDEnZ7pYE=", + "node_modules/@ngageoint/mage.service/node_modules/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==", + "optional": true, "peer": true, - "bin": { - "esparse": "bin/esparse.js", - "esvalidate": "bin/esvalidate.js" - }, "engines": { - "node": ">=0.10.0" + "node": ">=4.0.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/esquery": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.5.0.tgz", - "integrity": "sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==", + "node_modules/@ngageoint/mage.service/node_modules/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==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/default-require-extensions": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/default-require-extensions/-/default-require-extensions-2.0.0.tgz", + "integrity": "sha512-B0n2zDIXpzLzKeoEozorDSa1cHc1t0NjmxP0zuAxbizNU2MBqYJJKYXrrFdKuQliojXynrxgd7l4ahfg/+aA5g==", "extraneous": true, "dependencies": { - "estraverse": "^5.1.0" + "strip-bom": "^3.0.0" }, "engines": { - "node": ">=0.10" + "node": ">=4" } }, - "node_modules/@ngageoint/mage.service/node_modules/esquery/node_modules/estraverse": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", - "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", - "extraneous": true, + "node_modules/@ngageoint/mage.service/node_modules/define-data-property": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.4.tgz", + "integrity": "sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==", + "peer": true, + "dependencies": { + "es-define-property": "^1.0.0", + "es-errors": "^1.3.0", + "gopd": "^1.0.1" + }, "engines": { - "node": ">=4.0" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/@ngageoint/mage.service/node_modules/esrecurse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", - "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", + "node_modules/@ngageoint/mage.service/node_modules/define-properties": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.2.1.tgz", + "integrity": "sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==", "extraneous": true, "dependencies": { - "estraverse": "^5.2.0" + "define-data-property": "^1.0.1", + "has-property-descriptors": "^1.0.0", + "object-keys": "^1.1.1" }, "engines": { - "node": ">=4.0" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/@ngageoint/mage.service/node_modules/esrecurse/node_modules/estraverse": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", - "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", - "extraneous": true, + "node_modules/@ngageoint/mage.service/node_modules/delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==", + "peer": true, "engines": { - "node": ">=4.0" + "node": ">=0.4.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/esutils": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", - "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", - "extraneous": true, + "node_modules/@ngageoint/mage.service/node_modules/depd": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", + "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==", + "license": "MIT", + "peer": true, "engines": { - "node": ">=0.10.0" + "node": ">= 0.8" } }, - "node_modules/@ngageoint/mage.service/node_modules/etag": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", - "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==", + "node_modules/@ngageoint/mage.service/node_modules/destroy": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz", + "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==", "peer": true, "engines": { - "node": ">= 0.6" + "node": ">= 0.8", + "npm": "1.2.8000 || >= 1.4.16" } }, - "node_modules/@ngageoint/mage.service/node_modules/event-stream": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/event-stream/-/event-stream-4.0.1.tgz", - "integrity": "sha512-qACXdu/9VHPBzcyhdOWR5/IahhGMf0roTeZJfzz077GwylcDd90yOHLouhmv7GJ5XzPi6ekaQWd8AvPP2nOvpA==", + "node_modules/@ngageoint/mage.service/node_modules/detect-libc": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.0.3.tgz", + "integrity": "sha512-bwy0MGW55bG41VqxxypOsdSdGqLwXPI/focwgTYCFMbdUiBAxLg9CFzG08sz2aqzknwiX7Hkl0bQENjg8iLByw==", + "optional": true, "peer": true, - "dependencies": { - "duplexer": "^0.1.1", - "from": "^0.1.7", - "map-stream": "0.0.7", - "pause-stream": "^0.0.11", - "split": "^1.0.1", - "stream-combiner": "^0.2.2", - "through": "^2.3.8" + "engines": { + "node": ">=8" } }, - "node_modules/@ngageoint/mage.service/node_modules/evp_bytestokey": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz", - "integrity": "sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==", + "node_modules/@ngageoint/mage.service/node_modules/dezalgo": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/dezalgo/-/dezalgo-1.0.4.tgz", + "integrity": "sha512-rXSP0bf+5n0Qonsb+SVVfNfIsimO4HEtmnIpPHY8Q1UCzKlQrDMfdobr8nJOOsRgWCyMRqeSBQzmWUMq7zvVig==", "peer": true, "dependencies": { - "md5.js": "^1.3.4", - "safe-buffer": "^5.1.1" + "asap": "^2.0.0", + "wrappy": "1" } }, - "node_modules/@ngageoint/mage.service/node_modules/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==", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/diff": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/diff/-/diff-5.2.0.tgz", + "integrity": "sha512-uIFDxqpRZGZ6ThOk84hEfqWoHx2devRFvpTZcTHur85vImfaxUbTW9Ryh4CpCuDnToOP1CEtXKIgytHBPVff5A==", + "extraneous": true, + "license": "BSD-3-Clause", "engines": { - "node": ">=6" + "node": ">=0.3.1" } }, - "node_modules/@ngageoint/mage.service/node_modules/express": { - "version": "4.18.2", - "resolved": "https://registry.npmjs.org/express/-/express-4.18.2.tgz", - "integrity": "sha512-5/PsL6iGPdfQ/lKM1UuielYgv3BUoJfz1aUwU9vHZ+J7gyvwdQXFEBIEIaxeGf0GIcreATNyBExtalisDbuMqQ==", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/dir-glob": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", + "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", + "extraneous": true, "dependencies": { - "accepts": "~1.3.8", - "array-flatten": "1.1.1", - "body-parser": "1.20.1", - "content-disposition": "0.5.4", - "content-type": "~1.0.4", - "cookie": "0.5.0", - "cookie-signature": "1.0.6", - "debug": "2.6.9", - "depd": "2.0.0", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "etag": "~1.8.1", - "finalhandler": "1.2.0", - "fresh": "0.5.2", - "http-errors": "2.0.0", - "merge-descriptors": "1.0.1", - "methods": "~1.1.2", - "on-finished": "2.4.1", - "parseurl": "~1.3.3", - "path-to-regexp": "0.1.7", - "proxy-addr": "~2.0.7", - "qs": "6.11.0", - "range-parser": "~1.2.1", - "safe-buffer": "5.2.1", - "send": "0.18.0", - "serve-static": "1.15.0", - "setprototypeof": "1.2.0", - "statuses": "2.0.1", - "type-is": "~1.6.18", - "utils-merge": "1.0.1", - "vary": "~1.1.2" + "path-type": "^4.0.0" }, "engines": { - "node": ">= 0.10.0" + "node": ">=8" } }, - "node_modules/@ngageoint/mage.service/node_modules/express-session": { - "version": "1.17.2", - "resolved": "https://registry.npmjs.org/express-session/-/express-session-1.17.2.tgz", - "integrity": "sha512-mPcYcLA0lvh7D4Oqr5aNJFMtBMKPLl++OKKxkHzZ0U0oDq1rpKBnkR5f5vCHR26VeArlTOEF9td4x5IjICksRQ==", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/doctrine": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", + "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", + "extraneous": true, "dependencies": { - "cookie": "0.4.1", - "cookie-signature": "1.0.6", - "debug": "2.6.9", - "depd": "~2.0.0", - "on-headers": "~1.0.2", - "parseurl": "~1.3.3", - "safe-buffer": "5.2.1", - "uid-safe": "~2.1.5" + "esutils": "^2.0.2" }, "engines": { - "node": ">= 0.8.0" + "node": ">=6.0.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/express-session/node_modules/cookie": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.1.tgz", - "integrity": "sha512-ZwrFkGJxUR3EIoXtO+yVE69Eb7KlixbaeAWfBQB9vVsNn/o+Yw69gBWSSDK825hQNdN+wF8zELf3dFNl/kxkUA==", - "peer": true, - "engines": { - "node": ">= 0.6" - } + "node_modules/@ngageoint/mage.service/node_modules/doctypes": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/doctypes/-/doctypes-1.1.0.tgz", + "integrity": "sha512-LLBi6pEqS6Do3EKQ3J0NqHWV5hhb78Pi8vvESYwyOy2c31ZEZVdtitdzsQsKb7878PEERhzUk0ftqGhG6Mz+pQ==", + "peer": true }, - "node_modules/@ngageoint/mage.service/node_modules/express-session/node_modules/depd": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", - "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/drange": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/drange/-/drange-1.1.1.tgz", + "integrity": "sha512-pYxfDYpued//QpnLIm4Avk7rsNtAtQkUES2cwAYSvD/wd2pKD71gN2Ebj3e7klzXwjocvE8c5vx/1fxwpqmSxA==", + "extraneous": true, "engines": { - "node": ">= 0.8" + "node": ">=4" } }, - "node_modules/@ngageoint/mage.service/node_modules/express/node_modules/body-parser": { - "version": "1.20.1", - "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.1.tgz", - "integrity": "sha512-jWi7abTbYwajOytWCQc37VulmWiRae5RyTpaCyDcS5/lMdtwSz5lOpDE67srw/HYe35f1z3fDQw+3txg7gNtWw==", + "node_modules/@ngageoint/mage.service/node_modules/dunder-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.1.tgz", + "integrity": "sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==", + "license": "MIT", "peer": true, "dependencies": { - "bytes": "3.1.2", - "content-type": "~1.0.4", - "debug": "2.6.9", - "depd": "2.0.0", - "destroy": "1.2.0", - "http-errors": "2.0.0", - "iconv-lite": "0.4.24", - "on-finished": "2.4.1", - "qs": "6.11.0", - "raw-body": "2.5.1", - "type-is": "~1.6.18", - "unpipe": "1.0.0" + "call-bind-apply-helpers": "^1.0.1", + "es-errors": "^1.3.0", + "gopd": "^1.2.0" }, "engines": { - "node": ">= 0.8", - "npm": "1.2.8000 || >= 1.4.16" + "node": ">= 0.4" } }, - "node_modules/@ngageoint/mage.service/node_modules/express/node_modules/depd": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", - "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==", - "peer": true, - "engines": { - "node": ">= 0.8" + "node_modules/@ngageoint/mage.service/node_modules/duplexer": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/duplexer/-/duplexer-0.1.2.tgz", + "integrity": "sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/eastasianwidth": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz", + "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/ecc-jsbn": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz", + "integrity": "sha512-eh9O+hwRHNbG4BLTjEl3nw044CkGm5X6LoaCf7LPp7UU8Qrt47JYNi6nPX8xjW97TKGKm1ouctg0QSpZe9qrnw==", + "extraneous": true, + "dependencies": { + "jsbn": "~0.1.0", + "safer-buffer": "^2.1.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/express/node_modules/http-errors": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", - "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==", + "node_modules/@ngageoint/mage.service/node_modules/ecc-jsbn/node_modules/jsbn": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", + "integrity": "sha512-UVU9dibq2JcFWxQPA6KCqj5O42VOmAY3zQUfEKxU0KpTGXwNoCjkX1e13eHNvw/xPynt6pU0rZ1htjWTNTSXsg==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/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==", "peer": true, "dependencies": { - "depd": "2.0.0", - "inherits": "2.0.4", - "setprototypeof": "1.2.0", - "statuses": "2.0.1", - "toidentifier": "1.0.1" - }, + "safe-buffer": "^5.0.1" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/ee-first": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", + "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==", + "license": "MIT", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "optional": true, + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/encodeurl": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-2.0.0.tgz", + "integrity": "sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg==", + "license": "MIT", + "peer": true, "engines": { "node": ">= 0.8" } }, - "node_modules/@ngageoint/mage.service/node_modules/express/node_modules/iconv-lite": { - "version": "0.4.24", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", - "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", + "node_modules/@ngageoint/mage.service/node_modules/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==", "peer": true, "dependencies": { - "safer-buffer": ">= 2.1.2 < 3" - }, - "engines": { - "node": ">=0.10.0" + "once": "^1.4.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/express/node_modules/on-finished": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz", - "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/error-ex": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", + "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", + "extraneous": true, "dependencies": { - "ee-first": "1.1.1" - }, - "engines": { - "node": ">= 0.8" + "is-arrayish": "^0.2.1" } }, - "node_modules/@ngageoint/mage.service/node_modules/express/node_modules/qs": { - "version": "6.11.0", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.11.0.tgz", - "integrity": "sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==", - "peer": true, - "dependencies": { - "side-channel": "^1.0.4" + "node_modules/@ngageoint/mage.service/node_modules/es-abstract": { + "version": "1.23.3", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.23.3.tgz", + "integrity": "sha512-e+HfNH61Bj1X9/jLc5v1owaLYuHdeHHSQlkhCBiTK8rBvKaULl/beGMxwrMXjpYrv4pz22BlY570vVePA2ho4A==", + "extraneous": true, + "dependencies": { + "array-buffer-byte-length": "^1.0.1", + "arraybuffer.prototype.slice": "^1.0.3", + "available-typed-arrays": "^1.0.7", + "call-bind": "^1.0.7", + "data-view-buffer": "^1.0.1", + "data-view-byte-length": "^1.0.1", + "data-view-byte-offset": "^1.0.0", + "es-define-property": "^1.0.0", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.0.0", + "es-set-tostringtag": "^2.0.3", + "es-to-primitive": "^1.2.1", + "function.prototype.name": "^1.1.6", + "get-intrinsic": "^1.2.4", + "get-symbol-description": "^1.0.2", + "globalthis": "^1.0.3", + "gopd": "^1.0.1", + "has-property-descriptors": "^1.0.2", + "has-proto": "^1.0.3", + "has-symbols": "^1.0.3", + "hasown": "^2.0.2", + "internal-slot": "^1.0.7", + "is-array-buffer": "^3.0.4", + "is-callable": "^1.2.7", + "is-data-view": "^1.0.1", + "is-negative-zero": "^2.0.3", + "is-regex": "^1.1.4", + "is-shared-array-buffer": "^1.0.3", + "is-string": "^1.0.7", + "is-typed-array": "^1.1.13", + "is-weakref": "^1.0.2", + "object-inspect": "^1.13.1", + "object-keys": "^1.1.1", + "object.assign": "^4.1.5", + "regexp.prototype.flags": "^1.5.2", + "safe-array-concat": "^1.1.2", + "safe-regex-test": "^1.0.3", + "string.prototype.trim": "^1.2.9", + "string.prototype.trimend": "^1.0.8", + "string.prototype.trimstart": "^1.0.8", + "typed-array-buffer": "^1.0.2", + "typed-array-byte-length": "^1.0.1", + "typed-array-byte-offset": "^1.0.2", + "typed-array-length": "^1.0.6", + "unbox-primitive": "^1.0.2", + "which-typed-array": "^1.1.15" }, "engines": { - "node": ">=0.6" + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/@ngageoint/mage.service/node_modules/express/node_modules/raw-body": { - "version": "2.5.1", - "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.1.tgz", - "integrity": "sha512-qqJBtEyVgS0ZmPGdCFPWJ3FreoqvG4MVQln/kCgF7Olq95IbOp0/BWyMwbdtn4VTvkM8Y7khCQ2Xgk/tcrCXig==", + "node_modules/@ngageoint/mage.service/node_modules/es-define-property": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.1.tgz", + "integrity": "sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==", + "license": "MIT", "peer": true, - "dependencies": { - "bytes": "3.1.2", - "http-errors": "2.0.0", - "iconv-lite": "0.4.24", - "unpipe": "1.0.0" - }, "engines": { - "node": ">= 0.8" + "node": ">= 0.4" } }, - "node_modules/@ngageoint/mage.service/node_modules/express/node_modules/statuses": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", - "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", + "node_modules/@ngageoint/mage.service/node_modules/es-errors": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz", + "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==", "peer": true, "engines": { - "node": ">= 0.8" + "node": ">= 0.4" } }, - "node_modules/@ngageoint/mage.service/node_modules/extend": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", - "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==", - "extraneous": true - }, - "node_modules/@ngageoint/mage.service/node_modules/external-editor": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz", - "integrity": "sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==", - "optional": true, - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/es-get-iterator": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/es-get-iterator/-/es-get-iterator-1.1.3.tgz", + "integrity": "sha512-sPZmqHBe6JIiTfN5q2pEi//TwxmAFHwj/XEuYjTuse78i8KxaqMTTzxPoFKuzRpDpTJ+0NAbpfenkmH2rePtuw==", + "extraneous": true, "dependencies": { - "chardet": "^0.7.0", - "iconv-lite": "^0.4.24", - "tmp": "^0.0.33" + "call-bind": "^1.0.2", + "get-intrinsic": "^1.1.3", + "has-symbols": "^1.0.3", + "is-arguments": "^1.1.1", + "is-map": "^2.0.2", + "is-set": "^2.0.2", + "is-string": "^1.0.7", + "isarray": "^2.0.5", + "stop-iteration-iterator": "^1.0.0" }, - "engines": { - "node": ">=4" + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/@ngageoint/mage.service/node_modules/external-editor/node_modules/iconv-lite": { - "version": "0.4.24", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", - "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", - "optional": true, + "node_modules/@ngageoint/mage.service/node_modules/es-object-atoms": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.1.1.tgz", + "integrity": "sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==", + "license": "MIT", "peer": true, "dependencies": { - "safer-buffer": ">= 2.1.2 < 3" + "es-errors": "^1.3.0" }, "engines": { - "node": ">=0.10.0" + "node": ">= 0.4" } }, - "node_modules/@ngageoint/mage.service/node_modules/extsprintf": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.4.1.tgz", - "integrity": "sha512-Wrk35e8ydCKDj/ArClo1VrPVmN8zph5V4AtHwIuHhvMXsKf73UT3BOD+azBIW+3wOJ4FhEH7zyaJCFvChjYvMA==", - "engines": [ - "node >=0.6.0" - ], - "peer": true - }, - "node_modules/@ngageoint/mage.service/node_modules/eyes": { - "version": "0.1.8", - "resolved": "https://registry.npmjs.org/eyes/-/eyes-0.1.8.tgz", - "integrity": "sha1-Ys8SAjTGg3hdkCNIqADvPgzCC8A=", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/es-set-tostringtag": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.0.3.tgz", + "integrity": "sha512-3T8uNMC3OQTHkFUsFq8r/BwAXLHvU/9O9mE0fBc/MY5iq/8H7ncvO947LmYA6ldWw9Uh8Yhf25zu6n7nML5QWQ==", + "extraneous": true, + "dependencies": { + "get-intrinsic": "^1.2.4", + "has-tostringtag": "^1.0.2", + "hasown": "^2.0.1" + }, "engines": { - "node": "> 0.1.90" + "node": ">= 0.4" } }, - "node_modules/@ngageoint/mage.service/node_modules/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==", - "extraneous": true - }, - "node_modules/@ngageoint/mage.service/node_modules/fast-diff": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/fast-diff/-/fast-diff-1.2.0.tgz", - "integrity": "sha512-xJuoT5+L99XlZ8twedaRf6Ax2TgQVxvgZOYoPKqZufmJib0tL2tegPBOZb1pVNgIhlqDlA0eO0c3wBvQcmzx4w==", - "extraneous": true - }, - "node_modules/@ngageoint/mage.service/node_modules/fast-fifo": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/fast-fifo/-/fast-fifo-1.3.2.tgz", - "integrity": "sha512-/d9sfos4yxzpwkDkuN7k2SqFKtYNmCTzgfEpz82x34IM9/zc8KGxQoXg1liNC/izpRM/MBdt44Nmx41ZWqk+FQ==", - "extraneous": true - }, - "node_modules/@ngageoint/mage.service/node_modules/fast-glob": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.1.tgz", - "integrity": "sha512-kNFPyjhh5cKjrUltxs+wFx+ZkbRaxxmZ+X0ZU31SOsxCEtP9VPgtq2teZw1DebupL5GmDaNQ6yKMMVcM41iqDg==", + "node_modules/@ngageoint/mage.service/node_modules/es-to-primitive": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", + "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", "extraneous": true, "dependencies": { - "@nodelib/fs.stat": "^2.0.2", - "@nodelib/fs.walk": "^1.2.3", - "glob-parent": "^5.1.2", - "merge2": "^1.3.0", - "micromatch": "^4.0.4" + "is-callable": "^1.1.4", + "is-date-object": "^1.0.1", + "is-symbol": "^1.0.2" }, "engines": { - "node": ">=8.6.0" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/@ngageoint/mage.service/node_modules/fast-json-stable-stringify": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", - "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", - "extraneous": true - }, - "node_modules/@ngageoint/mage.service/node_modules/fast-levenshtein": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", - "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", + "node_modules/@ngageoint/mage.service/node_modules/es6-error": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/es6-error/-/es6-error-4.1.1.tgz", + "integrity": "sha512-Um/+FxMr9CISWh0bi5Zv0iOD+4cFh5qLeks1qhAopKVAJw3drgKbKySikp7wGhDL0HPeaja0P5ULZrxLkniUVg==", "extraneous": true }, - "node_modules/@ngageoint/mage.service/node_modules/fast-safe-stringify": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/fast-safe-stringify/-/fast-safe-stringify-2.1.1.tgz", - "integrity": "sha512-W+KJc2dmILlPplD/H4K9l9LcAHAfPtP6BY84uVLXQ6Evcz9Lcg33Y2z1IVblT6xdY54PXYVHEv+0Wpq8Io6zkA==", - "peer": true - }, - "node_modules/@ngageoint/mage.service/node_modules/fastq": { - "version": "1.15.0", - "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.15.0.tgz", - "integrity": "sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==", + "node_modules/@ngageoint/mage.service/node_modules/escalade": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.2.tgz", + "integrity": "sha512-ErCHMCae19vR8vQGe50xIsVomy19rg6gFu3+r3jkEO46suLMWBksvVyoGgQV+jOfl84ZSOSlmv6Gxa89PmTGmA==", "extraneous": true, - "dependencies": { - "reusify": "^1.0.4" + "engines": { + "node": ">=6" } }, - "node_modules/@ngageoint/mage.service/node_modules/fd-slicer": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.1.0.tgz", - "integrity": "sha512-cE1qsB/VwyQozZ+q1dGxR8LBYNZeofhEdUNGSMbQD3Gw2lAzX9Zb3uIU6Ebc/Fmyjo9AWWfnn0AUCHqtevs/8g==", - "extraneous": true, - "dependencies": { - "pend": "~1.2.0" - } + "node_modules/@ngageoint/mage.service/node_modules/escape-html": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", + "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==", + "peer": true }, - "node_modules/@ngageoint/mage.service/node_modules/figures": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz", - "integrity": "sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==", - "optional": true, - "peer": true, - "dependencies": { - "escape-string-regexp": "^1.0.5" - }, + "node_modules/@ngageoint/mage.service/node_modules/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==", + "extraneous": true, "engines": { - "node": ">=8" + "node": ">=10" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@ngageoint/mage.service/node_modules/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==", + "node_modules/@ngageoint/mage.service/node_modules/eslint": { + "version": "8.57.1", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.57.1.tgz", + "integrity": "sha512-ypowyDxpVSYpkXr9WPv2PAZCtNip1Mv5KTW0SCurXv/9iOpcrH9PaqUElksqEB6pChqHGDRCFTyrZlGhnLNGiA==", + "deprecated": "This version is no longer supported. Please see https://eslint.org/version-support for other options.", "extraneous": true, + "license": "MIT", "dependencies": { - "flat-cache": "^3.0.4" + "@eslint-community/eslint-utils": "^4.2.0", + "@eslint-community/regexpp": "^4.6.1", + "@eslint/eslintrc": "^2.1.4", + "@eslint/js": "8.57.1", + "@humanwhocodes/config-array": "^0.13.0", + "@humanwhocodes/module-importer": "^1.0.1", + "@nodelib/fs.walk": "^1.2.8", + "@ungap/structured-clone": "^1.2.0", + "ajv": "^6.12.4", + "chalk": "^4.0.0", + "cross-spawn": "^7.0.2", + "debug": "^4.3.2", + "doctrine": "^3.0.0", + "escape-string-regexp": "^4.0.0", + "eslint-scope": "^7.2.2", + "eslint-visitor-keys": "^3.4.3", + "espree": "^9.6.1", + "esquery": "^1.4.2", + "esutils": "^2.0.2", + "fast-deep-equal": "^3.1.3", + "file-entry-cache": "^6.0.1", + "find-up": "^5.0.0", + "glob-parent": "^6.0.2", + "globals": "^13.19.0", + "graphemer": "^1.4.0", + "ignore": "^5.2.0", + "imurmurhash": "^0.1.4", + "is-glob": "^4.0.0", + "is-path-inside": "^3.0.3", + "js-yaml": "^4.1.0", + "json-stable-stringify-without-jsonify": "^1.0.1", + "levn": "^0.4.1", + "lodash.merge": "^4.6.2", + "minimatch": "^3.1.2", + "natural-compare": "^1.4.0", + "optionator": "^0.9.3", + "strip-ansi": "^6.0.1", + "text-table": "^0.2.0" }, - "engines": { - "node": "^10.12.0 || >=12.0.0" - } - }, - "node_modules/@ngageoint/mage.service/node_modules/file-type": { - "version": "16.5.0", - "resolved": "https://registry.npmjs.org/file-type/-/file-type-16.5.0.tgz", - "integrity": "sha512-OxgWA9tbL8N/WP00GD1z8O0MiwQKFyWRs1q+3FhjdvcGgKqwxcejyGWso3n4/IMU6DdwV+ARZ4A7TTnPkDcSiw==", - "peer": true, - "dependencies": { - "readable-web-to-node-stream": "^3.0.0", - "strtok3": "^6.0.3", - "token-types": "^2.0.0" + "bin": { + "eslint": "bin/eslint.js" }, "engines": { - "node": ">=8" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" }, "funding": { - "url": "https://github.com/sindresorhus/file-type?sponsor=1" + "url": "https://opencollective.com/eslint" } }, - "node_modules/@ngageoint/mage.service/node_modules/file-uri-to-path": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz", - "integrity": "sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==", - "peer": true - }, - "node_modules/@ngageoint/mage.service/node_modules/fill-keys": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/fill-keys/-/fill-keys-1.0.2.tgz", - "integrity": "sha1-mo+jb06K1jTjv2tPPIiCVRRS6yA=", + "node_modules/@ngageoint/mage.service/node_modules/eslint-config-prettier": { + "version": "6.15.0", + "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-6.15.0.tgz", + "integrity": "sha512-a1+kOYLR8wMGustcgAjdydMsQ2A/2ipRPwRKUmfYaSxc9ZPcrku080Ctl6zrZzZNs/U82MjSv+qKREkoq3bJaw==", "extraneous": true, + "license": "MIT", "dependencies": { - "is-object": "~1.0.1", - "merge-descriptors": "~1.0.0" + "get-stdin": "^6.0.0" }, - "engines": { - "node": ">=0.10.0" + "bin": { + "eslint-config-prettier-check": "bin/cli.js" + }, + "peerDependencies": { + "eslint": ">=3.14.1" } }, - "node_modules/@ngageoint/mage.service/node_modules/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==", + "node_modules/@ngageoint/mage.service/node_modules/eslint-plugin-prettier": { + "version": "3.4.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-prettier/-/eslint-plugin-prettier-3.4.1.tgz", + "integrity": "sha512-htg25EUYUeIhKHXjOinK4BgCcDwtLHjqaxCDsMy5nbnUMkKFvIhMVCp+5GFUXQ4Nr8lBsPqtGAqBenbpFqAA2g==", "extraneous": true, + "license": "MIT", "dependencies": { - "to-regex-range": "^5.0.1" + "prettier-linter-helpers": "^1.0.0" }, "engines": { - "node": ">=8" - } - }, - "node_modules/@ngageoint/mage.service/node_modules/finalhandler": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.2.0.tgz", - "integrity": "sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg==", - "peer": true, - "dependencies": { - "debug": "2.6.9", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "on-finished": "2.4.1", - "parseurl": "~1.3.3", - "statuses": "2.0.1", - "unpipe": "~1.0.0" + "node": ">=6.0.0" }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/@ngageoint/mage.service/node_modules/finalhandler/node_modules/on-finished": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz", - "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==", - "peer": true, - "dependencies": { - "ee-first": "1.1.1" + "peerDependencies": { + "eslint": ">=5.0.0", + "prettier": ">=1.13.0" }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/@ngageoint/mage.service/node_modules/finalhandler/node_modules/statuses": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", - "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", - "peer": true, - "engines": { - "node": ">= 0.8" + "peerDependenciesMeta": { + "eslint-config-prettier": { + "optional": true + } } }, - "node_modules/@ngageoint/mage.service/node_modules/find-cache-dir": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-3.3.2.tgz", - "integrity": "sha512-wXZV5emFEjrridIgED11OoUKLxiYjAcqot/NJdAkOhlJ+vGzwhOAfcG5OX1jP+S0PcjEn8bdMJv+g2jwQ3Onig==", + "node_modules/@ngageoint/mage.service/node_modules/eslint-scope": { + "version": "7.2.2", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.2.tgz", + "integrity": "sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==", "extraneous": true, "dependencies": { - "commondir": "^1.0.1", - "make-dir": "^3.0.2", - "pkg-dir": "^4.1.0" + "esrecurse": "^4.3.0", + "estraverse": "^5.2.0" }, "engines": { - "node": ">=8" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" }, "funding": { - "url": "https://github.com/avajs/find-cache-dir?sponsor=1" + "url": "https://opencollective.com/eslint" } }, - "node_modules/@ngageoint/mage.service/node_modules/find-cache-dir/node_modules/make-dir": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", - "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "node_modules/@ngageoint/mage.service/node_modules/eslint-visitor-keys": { + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", + "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", "extraneous": true, - "dependencies": { - "semver": "^6.0.0" - }, "engines": { - "node": ">=8" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://opencollective.com/eslint" } }, - "node_modules/@ngageoint/mage.service/node_modules/find-cache-dir/node_modules/semver": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", - "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", - "extraneous": true, - "bin": { - "semver": "bin/semver.js" - } + "node_modules/@ngageoint/mage.service/node_modules/eslint/node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "extraneous": true }, - "node_modules/@ngageoint/mage.service/node_modules/find-up": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", - "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "node_modules/@ngageoint/mage.service/node_modules/eslint/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", "extraneous": true, "dependencies": { - "locate-path": "^6.0.0", - "path-exists": "^4.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/@ngageoint/mage.service/node_modules/find-up/node_modules/path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "extraneous": true, - "engines": { - "node": ">=8" + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" } }, - "node_modules/@ngageoint/mage.service/node_modules/flat": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/flat/-/flat-4.1.1.tgz", - "integrity": "sha512-FmTtBsHskrU6FJ2VxCnsDb84wu9zhmO3cUX2kGFb5tuwhfXxGciiT0oRY+cck35QmG+NmGh5eLz6lLCpWTqwpA==", + "node_modules/@ngageoint/mage.service/node_modules/eslint/node_modules/js-yaml": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", + "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", "extraneous": true, "dependencies": { - "is-buffer": "~2.0.3" + "argparse": "^2.0.1" }, "bin": { - "flat": "cli.js" + "js-yaml": "bin/js-yaml.js" } }, - "node_modules/@ngageoint/mage.service/node_modules/flat-cache": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.1.1.tgz", - "integrity": "sha512-/qM2b3LUIaIgviBQovTLvijfyOQXPtSRnRK26ksj2J7rzPIecePUIpJsZ4T02Qg+xiAEKIs5K8dsHEd+VaKa/Q==", + "node_modules/@ngageoint/mage.service/node_modules/eslint/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", "extraneous": true, "dependencies": { - "flatted": "^3.2.9", - "keyv": "^4.5.3", - "rimraf": "^3.0.2" + "brace-expansion": "^1.1.7" }, "engines": { - "node": ">=12.0.0" + "node": "*" } }, - "node_modules/@ngageoint/mage.service/node_modules/flat-cache/node_modules/rimraf": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "node_modules/@ngageoint/mage.service/node_modules/espree": { + "version": "9.6.1", + "resolved": "https://registry.npmjs.org/espree/-/espree-9.6.1.tgz", + "integrity": "sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==", "extraneous": true, "dependencies": { - "glob": "^7.1.3" + "acorn": "^8.9.0", + "acorn-jsx": "^5.3.2", + "eslint-visitor-keys": "^3.4.1" }, - "bin": { - "rimraf": "bin.js" + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" }, "funding": { - "url": "https://github.com/sponsors/isaacs" + "url": "https://opencollective.com/eslint" } }, - "node_modules/@ngageoint/mage.service/node_modules/flat/node_modules/is-buffer": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-2.0.5.tgz", - "integrity": "sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ==", - "extraneous": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], + "node_modules/@ngageoint/mage.service/node_modules/esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", + "license": "BSD-2-Clause", + "peer": true, + "bin": { + "esparse": "bin/esparse.js", + "esvalidate": "bin/esvalidate.js" + }, "engines": { "node": ">=4" } }, - "node_modules/@ngageoint/mage.service/node_modules/flatted": { - "version": "3.2.9", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.9.tgz", - "integrity": "sha512-36yxDn5H7OFZQla0/jFJmbIKTdZAQHngCedGxiMmpNfEZM0sdEeT+WczLQrjK6D7o2aiyLYDnkw0R3JK0Qv1RQ==", - "extraneous": true - }, - "node_modules/@ngageoint/mage.service/node_modules/follow-redirects": { - "version": "1.15.4", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.4.tgz", - "integrity": "sha512-Cr4D/5wlrb0z9dgERpUL3LrmPKVDsETIJhaCMeDfuFYcqa5bldGV6wBsAN6X/vxlXQtFBMrXdXxdL8CbDTGniw==", + "node_modules/@ngageoint/mage.service/node_modules/esquery": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.5.0.tgz", + "integrity": "sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==", "extraneous": true, - "funding": [ - { - "type": "individual", - "url": "https://github.com/sponsors/RubenVerborgh" - } - ], - "engines": { - "node": ">=4.0" + "dependencies": { + "estraverse": "^5.1.0" }, - "peerDependenciesMeta": { - "debug": { - "optional": true - } + "engines": { + "node": ">=0.10" } }, - "node_modules/@ngageoint/mage.service/node_modules/foreach": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/foreach/-/foreach-2.0.5.tgz", - "integrity": "sha1-C+4AUBiusmDQo6865ljdATbsG5k=", - "extraneous": true - }, - "node_modules/@ngageoint/mage.service/node_modules/foreachasync": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/foreachasync/-/foreachasync-3.0.0.tgz", - "integrity": "sha1-VQKYfchxS+M5IJfzLgBxyd7gfPY=", - "peer": true - }, - "node_modules/@ngageoint/mage.service/node_modules/foreground-child": { - "version": "1.5.6", - "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-1.5.6.tgz", - "integrity": "sha1-T9ca0t/elnibmApcCilZN8svXOk=", + "node_modules/@ngageoint/mage.service/node_modules/esrecurse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", + "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", "extraneous": true, "dependencies": { - "cross-spawn": "^4", - "signal-exit": "^3.0.0" + "estraverse": "^5.2.0" + }, + "engines": { + "node": ">=4.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/forever-agent": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", - "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=", + "node_modules/@ngageoint/mage.service/node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", "extraneous": true, "engines": { - "node": "*" + "node": ">=4.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/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==", + "node_modules/@ngageoint/mage.service/node_modules/esutils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", "extraneous": true, - "dependencies": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.6", - "mime-types": "^2.1.12" - }, "engines": { - "node": ">= 0.12" + "node": ">=0.10.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/format-util": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/format-util/-/format-util-1.0.5.tgz", - "integrity": "sha512-varLbTj0e0yVyRpqQhuWV+8hlePAgaoFRhNFj50BNjEIrw1/DphHSObtqwskVCPWNgzwPoQrZAbfa/SBiicNeg==", - "extraneous": true + "node_modules/@ngageoint/mage.service/node_modules/etag": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", + "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==", + "license": "MIT", + "peer": true, + "engines": { + "node": ">= 0.6" + } }, - "node_modules/@ngageoint/mage.service/node_modules/formidable": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/formidable/-/formidable-2.1.2.tgz", - "integrity": "sha512-CM3GuJ57US06mlpQ47YcunuUZ9jpm8Vx+P2CGt2j7HpgkKZO/DJYQ0Bobim8G6PFQmK5lOqOOdUXboU+h73A4g==", + "node_modules/@ngageoint/mage.service/node_modules/event-stream": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/event-stream/-/event-stream-4.0.1.tgz", + "integrity": "sha512-qACXdu/9VHPBzcyhdOWR5/IahhGMf0roTeZJfzz077GwylcDd90yOHLouhmv7GJ5XzPi6ekaQWd8AvPP2nOvpA==", "peer": true, "dependencies": { - "dezalgo": "^1.0.4", - "hexoid": "^1.0.0", - "once": "^1.4.0", - "qs": "^6.11.0" - }, - "funding": { - "url": "https://ko-fi.com/tunnckoCore/commissions" + "duplexer": "^0.1.1", + "from": "^0.1.7", + "map-stream": "0.0.7", + "pause-stream": "^0.0.11", + "split": "^1.0.1", + "stream-combiner": "^0.2.2", + "through": "^2.3.8" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/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==", + "optional": true, + "peer": true, + "engines": { + "node": ">=6" } }, - "node_modules/@ngageoint/mage.service/node_modules/formidable/node_modules/qs": { - "version": "6.11.2", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.11.2.tgz", - "integrity": "sha512-tDNIz22aBzCDxLtVH++VnTfzxlfeK5CbqohpSqpJgj1Wg/cQbStNAz3NuqCs5vV+pjBsK4x4pN9HlVh7rcYRiA==", + "node_modules/@ngageoint/mage.service/node_modules/express": { + "version": "4.21.2", + "resolved": "https://registry.npmjs.org/express/-/express-4.21.2.tgz", + "integrity": "sha512-28HqgMZAmih1Czt9ny7qr6ek2qddF4FclbMzwhCREB6OFfH+rXAnuNCwo1/wFvrtbgsQDb4kSbX9de9lFbrXnA==", + "license": "MIT", "peer": true, "dependencies": { - "side-channel": "^1.0.4" + "accepts": "~1.3.8", + "array-flatten": "1.1.1", + "body-parser": "1.20.3", + "content-disposition": "0.5.4", + "content-type": "~1.0.4", + "cookie": "0.7.1", + "cookie-signature": "1.0.6", + "debug": "2.6.9", + "depd": "2.0.0", + "encodeurl": "~2.0.0", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "finalhandler": "1.3.1", + "fresh": "0.5.2", + "http-errors": "2.0.0", + "merge-descriptors": "1.0.3", + "methods": "~1.1.2", + "on-finished": "2.4.1", + "parseurl": "~1.3.3", + "path-to-regexp": "0.1.12", + "proxy-addr": "~2.0.7", + "qs": "6.13.0", + "range-parser": "~1.2.1", + "safe-buffer": "5.2.1", + "send": "0.19.0", + "serve-static": "1.16.2", + "setprototypeof": "1.2.0", + "statuses": "2.0.1", + "type-is": "~1.6.18", + "utils-merge": "1.0.1", + "vary": "~1.1.2" }, "engines": { - "node": ">=0.6" + "node": ">= 0.10.0" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "type": "opencollective", + "url": "https://opencollective.com/express" } }, - "node_modules/@ngageoint/mage.service/node_modules/forwarded": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz", - "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==", + "node_modules/@ngageoint/mage.service/node_modules/express-session": { + "version": "1.18.1", + "resolved": "https://registry.npmjs.org/express-session/-/express-session-1.18.1.tgz", + "integrity": "sha512-a5mtTqEaZvBCL9A9aqkrtfz+3SMDhOVUnjafjo+s7A9Txkq+SVX2DLvSp1Zrv4uCXa3lMSK3viWnh9Gg07PBUA==", + "license": "MIT", "peer": true, + "dependencies": { + "cookie": "0.7.2", + "cookie-signature": "1.0.7", + "debug": "2.6.9", + "depd": "~2.0.0", + "on-headers": "~1.0.2", + "parseurl": "~1.3.3", + "safe-buffer": "5.2.1", + "uid-safe": "~2.1.5" + }, "engines": { - "node": ">= 0.6" + "node": ">= 0.8.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/fresh": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", - "integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==", + "node_modules/@ngageoint/mage.service/node_modules/express-session/node_modules/cookie": { + "version": "0.7.2", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.7.2.tgz", + "integrity": "sha512-yki5XnKuf750l50uGTllt6kKILY4nQ1eNIQatoXEByZ5dWgnKqbnqmTrBE5B4N7lrMJKQ2ytWMiTO2o0v6Ew/w==", + "license": "MIT", "peer": true, "engines": { "node": ">= 0.6" } }, - "node_modules/@ngageoint/mage.service/node_modules/from": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/from/-/from-0.1.7.tgz", - "integrity": "sha1-g8YK/Fi5xWmXAH7Rp2izqzA6RP4=", + "node_modules/@ngageoint/mage.service/node_modules/express-session/node_modules/cookie-signature": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.7.tgz", + "integrity": "sha512-NXdYc3dLr47pBkpUCHtKSwIOQXLVn8dZEuywboCOJY/osA0wFSLlSawr3KN8qXJEyX66FcONTH8EIlVuK0yyFA==", + "license": "MIT", "peer": true }, - "node_modules/@ngageoint/mage.service/node_modules/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==", + "node_modules/@ngageoint/mage.service/node_modules/express-session/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "peer": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/express-session/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", "peer": true }, - "node_modules/@ngageoint/mage.service/node_modules/fs-extra": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-4.0.3.tgz", - "integrity": "sha512-q6rbdDd1o2mAnQreO7YADIxf/Whx4AHBiRf6d+/cVT8h44ss+lHgxf1FemcqDnQt9X3ct4McHr+JMGlYSsK7Cg==", + "node_modules/@ngageoint/mage.service/node_modules/express/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "license": "MIT", "peer": true, "dependencies": { - "graceful-fs": "^4.1.2", - "jsonfile": "^4.0.0", - "universalify": "^0.1.0" + "ms": "2.0.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/fs-minipass": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", - "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", + "node_modules/@ngageoint/mage.service/node_modules/express/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "license": "MIT", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/extend": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", + "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/external-editor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz", + "integrity": "sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==", "optional": true, "peer": true, "dependencies": { - "minipass": "^3.0.0" + "chardet": "^0.7.0", + "iconv-lite": "^0.4.24", + "tmp": "^0.0.33" }, "engines": { - "node": ">= 8" + "node": ">=4" } }, - "node_modules/@ngageoint/mage.service/node_modules/fs-minipass/node_modules/minipass": { - "version": "3.3.6", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", - "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "node_modules/@ngageoint/mage.service/node_modules/external-editor/node_modules/iconv-lite": { + "version": "0.4.24", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", + "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", "optional": true, "peer": true, "dependencies": { - "yallist": "^4.0.0" + "safer-buffer": ">= 2.1.2 < 3" }, "engines": { - "node": ">=8" + "node": ">=0.10.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/fs.realpath": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", + "node_modules/@ngageoint/mage.service/node_modules/extsprintf": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", + "integrity": "sha512-11Ndz7Nv+mvAC1j0ktTa7fAb0vLyGGX+rMHNBYQviQDGU0Hw7lhctJANqbPhu9nV9/izT/IntTgZ7Im/9LJs9g==", + "engines": [ + "node >=0.6.0" + ], "peer": true }, - "node_modules/@ngageoint/mage.service/node_modules/fsevents": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.1.3.tgz", - "integrity": "sha512-Auw9a4AxqWpa9GUfj370BMPzzyncfBABW8Mab7BGWBYDj4Isgq+cDKtx0i6u9jcX9pQDnswsaaOTgTmA5pEjuQ==", - "deprecated": "\"Please update to latest v2.3 or v2.2\"", + "node_modules/@ngageoint/mage.service/node_modules/eyes": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/eyes/-/eyes-0.1.8.tgz", + "integrity": "sha512-GipyPsXO1anza0AOZdy69Im7hGFCNB7Y/NGjDlZGJ3GJJLtwNSb2vrzYrTYJRrRloVx7pl+bhUaTB8yiccPvFQ==", + "peer": true, + "engines": { + "node": "> 0.1.90" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/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==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/fast-diff": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/fast-diff/-/fast-diff-1.3.0.tgz", + "integrity": "sha512-VxPP4NqbUjj6MaAOafWeUn2cXWLcCtljklUtZf0Ind4XQ+QPtmA0b18zZy0jIQx+ExRVCR/ZQpBmik5lXshNsw==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/fast-fifo": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/fast-fifo/-/fast-fifo-1.3.2.tgz", + "integrity": "sha512-/d9sfos4yxzpwkDkuN7k2SqFKtYNmCTzgfEpz82x34IM9/zc8KGxQoXg1liNC/izpRM/MBdt44Nmx41ZWqk+FQ==", "extraneous": true, - "hasInstallScript": true, - "os": [ - "darwin" - ], + "license": "MIT" + }, + "node_modules/@ngageoint/mage.service/node_modules/fast-glob": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.2.tgz", + "integrity": "sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==", + "extraneous": true, + "dependencies": { + "@nodelib/fs.stat": "^2.0.2", + "@nodelib/fs.walk": "^1.2.3", + "glob-parent": "^5.1.2", + "merge2": "^1.3.0", + "micromatch": "^4.0.4" + }, "engines": { - "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + "node": ">=8.6.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/function-bind": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", - "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", + "node_modules/@ngageoint/mage.service/node_modules/fast-glob/node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "extraneous": true, + "dependencies": { + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/fast-json-stable-stringify": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/fast-levenshtein": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", + "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/fast-safe-stringify": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/fast-safe-stringify/-/fast-safe-stringify-2.1.1.tgz", + "integrity": "sha512-W+KJc2dmILlPplD/H4K9l9LcAHAfPtP6BY84uVLXQ6Evcz9Lcg33Y2z1IVblT6xdY54PXYVHEv+0Wpq8Io6zkA==", "peer": true }, - "node_modules/@ngageoint/mage.service/node_modules/gauge": { - "version": "2.7.4", - "resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz", - "integrity": "sha512-14x4kjc6lkD3ltw589k0NrPD6cCNTD6CWoVUNpB85+DrtONoZn+Rug6xZU5RvSC4+TZPxA5AnBibQYAvZn41Hg==", + "node_modules/@ngageoint/mage.service/node_modules/fast-xml-parser": { + "version": "4.2.5", + "resolved": "https://registry.npmjs.org/fast-xml-parser/-/fast-xml-parser-4.2.5.tgz", + "integrity": "sha512-B9/wizE4WngqQftFPmdaMYlXoJlJOYxGQOanC77fq9k8+Z0v5dDSVh+3glErdIROP//s/jgb7ZuxKfB8nVyo0g==", + "funding": [ + { + "type": "paypal", + "url": "https://paypal.me/naturalintelligence" + }, + { + "type": "github", + "url": "https://github.com/sponsors/NaturalIntelligence" + } + ], "optional": true, "peer": true, "dependencies": { - "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" - } - }, - "node_modules/@ngageoint/mage.service/node_modules/geojson": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/geojson/-/geojson-0.5.0.tgz", - "integrity": "sha1-PNbJY5m+ZbVu5VWWEW/pGRznAcA=", - "peer": true, - "engines": { - "node": ">= 0.10" + "strnum": "^1.0.5" + }, + "bin": { + "fxparser": "src/cli/cli.js" } }, - "node_modules/@ngageoint/mage.service/node_modules/geojson-rbush": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/geojson-rbush/-/geojson-rbush-3.2.0.tgz", - "integrity": "sha512-oVltQTXolxvsz1sZnutlSuLDEcQAKYC/uXt9zDzJJ6bu0W+baTI8LZBaTup5afzibEH4N3jlq2p+a152wlBJ7w==", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/fastq": { + "version": "1.17.1", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.17.1.tgz", + "integrity": "sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w==", + "extraneous": true, "dependencies": { - "@turf/bbox": "*", - "@turf/helpers": "6.x", - "@turf/meta": "6.x", - "@types/geojson": "7946.0.8", - "rbush": "^3.0.1" + "reusify": "^1.0.4" } }, - "node_modules/@ngageoint/mage.service/node_modules/geojson-stream": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/geojson-stream/-/geojson-stream-0.1.0.tgz", - "integrity": "sha512-svSg5fFXPaTiqzEBGXScA+nISaeC9rLvku2PH+wM5LToATUw2bLIrvls43ymnT9Xnp51nBPVyK9m4Af40KpJ7w==", + "node_modules/@ngageoint/mage.service/node_modules/figures": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz", + "integrity": "sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==", + "optional": true, "peer": true, "dependencies": { - "JSONStream": "^1.0.0", - "through": "^2.3.4" + "escape-string-regexp": "^1.0.5" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@ngageoint/mage.service/node_modules/geojson-validation": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/geojson-validation/-/geojson-validation-1.0.2.tgz", - "integrity": "sha512-K5jrJ4wFvORn2pRKeg181LL0QPYuEKn2KHPvfH1m2QtFlAXFLKdseqt0XwBM3ELOY7kNM1fglRQ6ZwUQZ5S00A==", + "node_modules/@ngageoint/mage.service/node_modules/figures/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "optional": true, "peer": true, - "bin": { - "gjv": "bin/gjv" - } - }, - "node_modules/@ngageoint/mage.service/node_modules/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==", - "extraneous": true, "engines": { - "node": "6.* || 8.* || >= 10.*" + "node": ">=0.8.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/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=", + "node_modules/@ngageoint/mage.service/node_modules/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==", "extraneous": true, + "dependencies": { + "flat-cache": "^3.0.4" + }, "engines": { - "node": "*" + "node": "^10.12.0 || >=12.0.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/get-intrinsic": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.1.tgz", - "integrity": "sha512-kWZrnVM42QCiEA2Ig1bG8zjoIMOgxWwYCEeNdwY6Tv/cOSeGpcoX4pXHfKUxNKVoArnrEr2e9srnAxxGIraS9Q==", + "node_modules/@ngageoint/mage.service/node_modules/file-type": { + "version": "16.5.4", + "resolved": "https://registry.npmjs.org/file-type/-/file-type-16.5.4.tgz", + "integrity": "sha512-/yFHK0aGjFEgDJjEKP0pWCplsPFPhwyfwevf/pVxiN0tmE4L9LmwWxWukdJSHdoCli4VgQLehjJtwQBnqmsKcw==", "peer": true, "dependencies": { - "function-bind": "^1.1.1", - "has": "^1.0.3", - "has-symbols": "^1.0.1" + "readable-web-to-node-stream": "^3.0.0", + "strtok3": "^6.2.4", + "token-types": "^4.1.1" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/@ngageoint/mage.service/node_modules/get-stdin": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-6.0.0.tgz", - "integrity": "sha512-jp4tHawyV7+fkkSKyvjuLZswblUtz+SQKzSWnBbii16BuZksJlU1wuBYXY75r+duh/llF1ur6oNwi+2ZzjKZ7g==", - "extraneous": true, "engines": { - "node": ">=4" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sindresorhus/file-type?sponsor=1" } }, - "node_modules/@ngageoint/mage.service/node_modules/get-symbol-description": { + "node_modules/@ngageoint/mage.service/node_modules/file-uri-to-path": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.0.tgz", - "integrity": "sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==", + "resolved": "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz", + "integrity": "sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==", + "optional": true, + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/fill-keys": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/fill-keys/-/fill-keys-1.0.2.tgz", + "integrity": "sha512-tcgI872xXjwFF4xgQmLxi76GnwJG3g/3isB1l4/G5Z4zrbddGpBjqZCO9oEAcB5wX0Hj/5iQB3toxfO7in1hHA==", "extraneous": true, "dependencies": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.1.1" + "is-object": "~1.0.1", + "merge-descriptors": "~1.0.0" }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=0.10.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/getpass": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", - "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=", + "node_modules/@ngageoint/mage.service/node_modules/fill-range": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", + "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", "extraneous": true, "dependencies": { - "assert-plus": "^1.0.0" + "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" } }, - "node_modules/@ngageoint/mage.service/node_modules/github-from-package": { - "version": "0.0.0", - "resolved": "https://registry.npmjs.org/github-from-package/-/github-from-package-0.0.0.tgz", - "integrity": "sha512-SyHy3T1v2NUXn29OsWdxmK6RwHD+vkj3v8en8AOBZ1wBQ/hCAQ5bAQTD02kW4W9tUp/3Qh6J8r9EvntiyCmOOw==", - "peer": true - }, - "node_modules/@ngageoint/mage.service/node_modules/glob": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.0.tgz", - "integrity": "sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==", + "node_modules/@ngageoint/mage.service/node_modules/finalhandler": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.3.1.tgz", + "integrity": "sha512-6BN9trH7bp3qvnrRyzsBz+g3lZxTNZTbVO2EV1CS0WIcDbawYVdYvGflME/9QP0h0pYlCDBCTjYa9nZzMDpyxQ==", + "license": "MIT", "peer": true, "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" + "debug": "2.6.9", + "encodeurl": "~2.0.0", + "escape-html": "~1.0.3", + "on-finished": "2.4.1", + "parseurl": "~1.3.3", + "statuses": "2.0.1", + "unpipe": "~1.0.0" }, "engines": { - "node": "*" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" + "node": ">= 0.8" } }, - "node_modules/@ngageoint/mage.service/node_modules/glob-parent": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", - "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", - "extraneous": true, + "node_modules/@ngageoint/mage.service/node_modules/finalhandler/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "license": "MIT", + "peer": true, "dependencies": { - "is-glob": "^4.0.1" - }, - "engines": { - "node": ">= 6" + "ms": "2.0.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/globals": { - "version": "13.23.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.23.0.tgz", - "integrity": "sha512-XAmF0RjlrjY23MA51q3HltdlGxUpXPvg0GioKiD9X6HD28iMjo2dKC8Vqwm7lne4GNr78+RHTfliktR6ZH09wA==", + "node_modules/@ngageoint/mage.service/node_modules/finalhandler/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "license": "MIT", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/find-cache-dir": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-3.3.2.tgz", + "integrity": "sha512-wXZV5emFEjrridIgED11OoUKLxiYjAcqot/NJdAkOhlJ+vGzwhOAfcG5OX1jP+S0PcjEn8bdMJv+g2jwQ3Onig==", "extraneous": true, + "license": "MIT", "dependencies": { - "type-fest": "^0.20.2" + "commondir": "^1.0.1", + "make-dir": "^3.0.2", + "pkg-dir": "^4.1.0" }, "engines": { "node": ">=8" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://github.com/avajs/find-cache-dir?sponsor=1" } }, - "node_modules/@ngageoint/mage.service/node_modules/globals/node_modules/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==", + "node_modules/@ngageoint/mage.service/node_modules/find-up": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", "extraneous": true, + "dependencies": { + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" + }, "engines": { "node": ">=10" }, @@ -6230,158 +7453,248 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@ngageoint/mage.service/node_modules/globby": { - "version": "13.2.2", - "resolved": "https://registry.npmjs.org/globby/-/globby-13.2.2.tgz", - "integrity": "sha512-Y1zNGV+pzQdh7H39l9zgB4PJqjRNqydvdYCDG4HFXM4XuvSaQQlEc91IU1yALL8gUTDomgBAfz3XJdmUS+oo0w==", + "node_modules/@ngageoint/mage.service/node_modules/flat": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/flat/-/flat-5.0.2.tgz", + "integrity": "sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ==", + "extraneous": true, + "bin": { + "flat": "cli.js" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/flat-cache": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.2.0.tgz", + "integrity": "sha512-CYcENa+FtcUKLmhhqyctpclsq7QF38pKjZHsGNiSQF5r4FtoKDWabFDl3hzaEQMvT1LHEysw5twgLvpYYb4vbw==", "extraneous": true, "dependencies": { - "dir-glob": "^3.0.1", - "fast-glob": "^3.3.0", - "ignore": "^5.2.4", - "merge2": "^1.4.1", - "slash": "^4.0.0" + "flatted": "^3.2.9", + "keyv": "^4.5.3", + "rimraf": "^3.0.2" }, "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": "^10.12.0 || >=12.0.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/gm": { - "version": "1.23.1", - "resolved": "https://registry.npmjs.org/gm/-/gm-1.23.1.tgz", - "integrity": "sha1-Lt7rlYCE0PjqeYjl2ZWxx9/BR3c=", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/flat-cache/node_modules/rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "deprecated": "Rimraf versions prior to v4 are no longer supported", + "extraneous": true, "dependencies": { - "array-parallel": "~0.1.3", - "array-series": "~0.1.5", - "cross-spawn": "^4.0.0", - "debug": "^3.1.0" + "glob": "^7.1.3" }, + "bin": { + "rimraf": "bin.js" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/flatted": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.3.1.tgz", + "integrity": "sha512-X8cqMLLie7KsNUDSdzeN8FYK9rEt4Dt67OsG/DNGnYTSDBG4uFAJFBnUeiV+zCVAvwFy56IjM9sH51jVaEhNxw==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/follow-redirects": { + "version": "1.15.9", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.9.tgz", + "integrity": "sha512-gew4GsXizNgdoRyqmyfMHyAmXsZDk6mHkSxZFCzW9gwlbtOW44CDtYavM+y+72qD/Vq2l550kMF52DT8fOLJqQ==", + "extraneous": true, + "funding": [ + { + "type": "individual", + "url": "https://github.com/sponsors/RubenVerborgh" + } + ], + "license": "MIT", "engines": { - "node": ">= 0.10.0" + "node": ">=4.0" + }, + "peerDependenciesMeta": { + "debug": { + "optional": true + } } }, - "node_modules/@ngageoint/mage.service/node_modules/gm/node_modules/debug": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/for-each": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.3.tgz", + "integrity": "sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==", + "extraneous": true, "dependencies": { - "ms": "^2.1.1" + "is-callable": "^1.1.3" } }, - "node_modules/@ngageoint/mage.service/node_modules/gm/node_modules/ms": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", - "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", - "peer": true - }, - "node_modules/@ngageoint/mage.service/node_modules/graceful-fs": { - "version": "4.2.10", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", - "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==", + "node_modules/@ngageoint/mage.service/node_modules/foreachasync": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/foreachasync/-/foreachasync-3.0.0.tgz", + "integrity": "sha512-J+ler7Ta54FwwNcx6wQRDhTIbNeyDcARMkOcguEqnEdtm0jKvN3Li3PDAb2Du3ubJYEWfYL83XMROXdsXAXycw==", "peer": true }, - "node_modules/@ngageoint/mage.service/node_modules/graphemer": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/graphemer/-/graphemer-1.4.0.tgz", - "integrity": "sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==", - "extraneous": true + "node_modules/@ngageoint/mage.service/node_modules/foreground-child": { + "version": "1.5.6", + "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-1.5.6.tgz", + "integrity": "sha512-3TOY+4TKV0Ml83PXJQY+JFQaHNV38lzQDIzzXYg1kWdBLenGgoZhAs0CKgzI31vi2pWEpQMq/Yi4bpKwCPkw7g==", + "extraneous": true, + "dependencies": { + "cross-spawn": "^4", + "signal-exit": "^3.0.0" + } }, - "node_modules/@ngageoint/mage.service/node_modules/growl": { - "version": "1.10.5", - "resolved": "https://registry.npmjs.org/growl/-/growl-1.10.5.tgz", - "integrity": "sha512-qBr4OuELkhPenW6goKVXiv47US3clb3/IbuWF9KNKEijAy9oeHxU9IgzjvJhHkUzhaj7rOUD7+YGWqUjLp5oSA==", + "node_modules/@ngageoint/mage.service/node_modules/foreground-child/node_modules/cross-spawn": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-4.0.2.tgz", + "integrity": "sha512-yAXz/pA1tD8Gtg2S98Ekf/sewp3Lcp3YoFKJ4Hkp5h5yLWnKVTDU0kwjKJ8NDCYcfTLfyGkzTikst+jWypT1iA==", "extraneous": true, - "engines": { - "node": ">=4.x" + "dependencies": { + "lru-cache": "^4.0.1", + "which": "^1.2.9" } }, - "node_modules/@ngageoint/mage.service/node_modules/har-schema": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz", - "integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=", + "node_modules/@ngageoint/mage.service/node_modules/foreground-child/node_modules/lru-cache": { + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz", + "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==", "extraneous": true, - "engines": { - "node": ">=4" + "dependencies": { + "pseudomap": "^1.0.2", + "yallist": "^2.1.2" } }, - "node_modules/@ngageoint/mage.service/node_modules/har-validator": { - "version": "5.1.5", - "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.5.tgz", - "integrity": "sha512-nmT2T0lljbxdQZfspsno9hgrG3Uir6Ks5afism62poxqBM6sDnMEuPmzTq8XN0OEwqKLLdh1jQI3qyE66Nzb3w==", - "deprecated": "this library is no longer supported", + "node_modules/@ngageoint/mage.service/node_modules/foreground-child/node_modules/which": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", "extraneous": true, "dependencies": { - "ajv": "^6.12.3", - "har-schema": "^2.0.0" + "isexe": "^2.0.0" }, + "bin": { + "which": "bin/which" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/forever-agent": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", + "integrity": "sha512-j0KLYPhm6zeac4lz3oJ3o65qvgQCcPubiyotZrXqEaG4hNagNYO8qdlUrX5vwqv9ohqeT/Z3j6+yW067yWWdUw==", + "extraneous": true, "engines": { - "node": ">=6" + "node": "*" } }, - "node_modules/@ngageoint/mage.service/node_modules/has": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", - "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", + "node_modules/@ngageoint/mage.service/node_modules/form-data": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz", + "integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==", "peer": true, "dependencies": { - "function-bind": "^1.1.1" + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "mime-types": "^2.1.12" }, "engines": { - "node": ">= 0.4.0" + "node": ">= 6" } }, - "node_modules/@ngageoint/mage.service/node_modules/has-bigints": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.1.tgz", - "integrity": "sha512-LSBS2LjbNBTf6287JEbEzvJgftkF5qFkmCo9hDRpAzKhUOlJ+hx8dd4USs00SgsUNwc4617J9ki5YtEClM2ffA==", - "extraneous": true, + "node_modules/@ngageoint/mage.service/node_modules/formidable": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/formidable/-/formidable-2.1.2.tgz", + "integrity": "sha512-CM3GuJ57US06mlpQ47YcunuUZ9jpm8Vx+P2CGt2j7HpgkKZO/DJYQ0Bobim8G6PFQmK5lOqOOdUXboU+h73A4g==", + "peer": true, + "dependencies": { + "dezalgo": "^1.0.4", + "hexoid": "^1.0.0", + "once": "^1.4.0", + "qs": "^6.11.0" + }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "url": "https://ko-fi.com/tunnckoCore/commissions" } }, - "node_modules/@ngageoint/mage.service/node_modules/has-color": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/has-color/-/has-color-0.1.7.tgz", - "integrity": "sha1-ZxRKUmDDT8PMpnfQQdr1L+e3iy8=", + "node_modules/@ngageoint/mage.service/node_modules/forwarded": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz", + "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==", "peer": true, "engines": { - "node": ">=0.10.0" + "node": ">= 0.6" } }, - "node_modules/@ngageoint/mage.service/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "optional": true, + "node_modules/@ngageoint/mage.service/node_modules/fresh": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", + "integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==", + "license": "MIT", "peer": true, "engines": { - "node": ">=8" + "node": ">= 0.6" } }, - "node_modules/@ngageoint/mage.service/node_modules/has-symbols": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", - "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", + "node_modules/@ngageoint/mage.service/node_modules/from": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/from/-/from-0.1.7.tgz", + "integrity": "sha512-twe20eF1OxVxp/ML/kq2p1uc6KvFK/+vs8WjEbeKmV2He22MKm7YF2ANIt+EOqhJ5L3K/SuuPhk0hWQDjOM23g==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/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==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/fs-extra": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-4.0.3.tgz", + "integrity": "sha512-q6rbdDd1o2mAnQreO7YADIxf/Whx4AHBiRf6d+/cVT8h44ss+lHgxf1FemcqDnQt9X3ct4McHr+JMGlYSsK7Cg==", "peer": true, + "dependencies": { + "graceful-fs": "^4.1.2", + "jsonfile": "^4.0.0", + "universalify": "^0.1.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/fsevents": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", + "extraneous": true, + "hasInstallScript": true, + "license": "MIT", + "os": [ + "darwin" + ], "engines": { - "node": ">= 0.4" - }, + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/function-bind": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", + "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", + "peer": true, "funding": { "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/@ngageoint/mage.service/node_modules/has-tostringtag": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz", - "integrity": "sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/function.prototype.name": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.6.tgz", + "integrity": "sha512-Z5kx79swU5P27WEayXM1tBi5Ze/lbIyiNgU3qyXUOf9b2rgXYyF9Dy9Cx+IQv/Lc8WCG6L82zwUPpSS9hGehIg==", + "extraneous": true, "dependencies": { - "has-symbols": "^1.0.2" + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1", + "functions-have-names": "^1.2.3" }, "engines": { "node": ">= 0.4" @@ -6390,424 +7703,374 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/@ngageoint/mage.service/node_modules/has-unicode": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", - "integrity": "sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ==", - "optional": true, - "peer": true + "node_modules/@ngageoint/mage.service/node_modules/functions-have-names": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz", + "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==", + "extraneous": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, - "node_modules/@ngageoint/mage.service/node_modules/hash-base": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.1.0.tgz", - "integrity": "sha512-1nmYp/rhMDiE7AYkDw+lLwlAzz0AntGIe51F3RfFfEqyQ3feY2eI/NcwC6umIQVOASPMsWJLJScWKSSvzL9IVA==", + "node_modules/@ngageoint/mage.service/node_modules/geojson": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/geojson/-/geojson-0.5.0.tgz", + "integrity": "sha512-/Bx5lEn+qRF4TfQ5aLu6NH+UKtvIv7Lhc487y/c8BdludrCTpiWf9wyI0RTyqg49MFefIAvFDuEi5Dfd/zgNxQ==", "peer": true, - "dependencies": { - "inherits": "^2.0.4", - "readable-stream": "^3.6.0", - "safe-buffer": "^5.2.0" - }, "engines": { - "node": ">=4" + "node": ">= 0.10" } }, - "node_modules/@ngageoint/mage.service/node_modules/hash-base/node_modules/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==", + "node_modules/@ngageoint/mage.service/node_modules/geojson-rbush": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/geojson-rbush/-/geojson-rbush-3.2.0.tgz", + "integrity": "sha512-oVltQTXolxvsz1sZnutlSuLDEcQAKYC/uXt9zDzJJ6bu0W+baTI8LZBaTup5afzibEH4N3jlq2p+a152wlBJ7w==", "peer": true, "dependencies": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - }, - "engines": { - "node": ">= 6" + "@turf/bbox": "*", + "@turf/helpers": "6.x", + "@turf/meta": "6.x", + "@types/geojson": "7946.0.8", + "rbush": "^3.0.1" } }, - "node_modules/@ngageoint/mage.service/node_modules/hash-base/node_modules/string_decoder": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", - "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "node_modules/@ngageoint/mage.service/node_modules/geojson-rbush/node_modules/@types/geojson": { + "version": "7946.0.8", + "resolved": "https://registry.npmjs.org/@types/geojson/-/geojson-7946.0.8.tgz", + "integrity": "sha512-1rkryxURpr6aWP7R786/UQOkJ3PcpQiWkAXBmdWc7ryFWqN6a4xfK7BtjXvFBKO9LjQ+MWQSWxYeZX1OApnArA==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/geojson-stream": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/geojson-stream/-/geojson-stream-0.1.0.tgz", + "integrity": "sha512-svSg5fFXPaTiqzEBGXScA+nISaeC9rLvku2PH+wM5LToATUw2bLIrvls43ymnT9Xnp51nBPVyK9m4Af40KpJ7w==", "peer": true, "dependencies": { - "safe-buffer": "~5.2.0" + "JSONStream": "^1.0.0", + "through": "^2.3.4" } }, - "node_modules/@ngageoint/mage.service/node_modules/hash.js": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.7.tgz", - "integrity": "sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==", + "node_modules/@ngageoint/mage.service/node_modules/geojson-validation": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/geojson-validation/-/geojson-validation-1.0.2.tgz", + "integrity": "sha512-K5jrJ4wFvORn2pRKeg181LL0QPYuEKn2KHPvfH1m2QtFlAXFLKdseqt0XwBM3ELOY7kNM1fglRQ6ZwUQZ5S00A==", "peer": true, - "dependencies": { - "inherits": "^2.0.3", - "minimalistic-assert": "^1.0.1" + "bin": { + "gjv": "bin/gjv" } }, - "node_modules/@ngageoint/mage.service/node_modules/hasha": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/hasha/-/hasha-3.0.0.tgz", - "integrity": "sha1-UqMvq4Vp1BymmmH/GiFPjrfIvTk=", + "node_modules/@ngageoint/mage.service/node_modules/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==", "extraneous": true, - "dependencies": { - "is-stream": "^1.0.1" - }, "engines": { - "node": ">=4" + "node": "6.* || 8.* || >= 10.*" } }, - "node_modules/@ngageoint/mage.service/node_modules/he": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz", - "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==", + "node_modules/@ngageoint/mage.service/node_modules/get-func-name": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/get-func-name/-/get-func-name-2.0.2.tgz", + "integrity": "sha512-8vXOvuE167CtIc3OyItco7N/dpRtBbYOsPsXCz7X/PMnlGjYjSGuZJgM1Y7mmew7BKf9BqvLX2tnOVy1BBUsxQ==", "extraneous": true, - "bin": { - "he": "bin/he" - } - }, - "node_modules/@ngageoint/mage.service/node_modules/hexoid": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/hexoid/-/hexoid-1.0.0.tgz", - "integrity": "sha512-QFLV0taWQOZtvIRIAdBChesmogZrtuXvVWsFHZTk2SU+anspqZ2vMnoLg7IE1+Uk16N19APic1BuF8bC8c2m5g==", - "peer": true, "engines": { - "node": ">=8" + "node": "*" } }, - "node_modules/@ngageoint/mage.service/node_modules/hmac-drbg": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz", - "integrity": "sha1-0nRXAQJabHdabFRXk+1QL8DGSaE=", + "node_modules/@ngageoint/mage.service/node_modules/get-intrinsic": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.3.0.tgz", + "integrity": "sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ==", + "license": "MIT", "peer": true, "dependencies": { - "hash.js": "^1.0.3", - "minimalistic-assert": "^1.0.0", - "minimalistic-crypto-utils": "^1.0.1" - } - }, - "node_modules/@ngageoint/mage.service/node_modules/hooks-fixed": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/hooks-fixed/-/hooks-fixed-2.0.2.tgz", - "integrity": "sha512-YurCM4gQSetcrhwEtpQHhQ4M7Zo7poNGqY4kQGeBS6eZtOcT3tnNs01ThFa0jYBByAiYt1MjMjP/YApG0EnAvQ==", - "peer": true, + "call-bind-apply-helpers": "^1.0.2", + "es-define-property": "^1.0.1", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.1.1", + "function-bind": "^1.1.2", + "get-proto": "^1.0.1", + "gopd": "^1.2.0", + "has-symbols": "^1.1.0", + "hasown": "^2.0.2", + "math-intrinsics": "^1.1.0" + }, "engines": { - "node": ">=0.4.0" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/@ngageoint/mage.service/node_modules/hosted-git-info": { - "version": "2.8.9", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz", - "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==", - "extraneous": true - }, - "node_modules/@ngageoint/mage.service/node_modules/html-escaper": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", - "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", - "extraneous": true - }, - "node_modules/@ngageoint/mage.service/node_modules/http-errors": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.8.1.tgz", - "integrity": "sha512-Kpk9Sm7NmI+RHhnj6OIWDI1d6fIoFAtFt9RLaTMRlg/8w49juAStsrBgp0Dp4OdxdVbRIeKhtCUvoi/RuAhO4g==", + "node_modules/@ngageoint/mage.service/node_modules/get-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/get-proto/-/get-proto-1.0.1.tgz", + "integrity": "sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==", + "license": "MIT", "peer": true, "dependencies": { - "depd": "~1.1.2", - "inherits": "2.0.4", - "setprototypeof": "1.2.0", - "statuses": ">= 1.5.0 < 2", - "toidentifier": "1.0.1" + "dunder-proto": "^1.0.1", + "es-object-atoms": "^1.0.0" }, "engines": { - "node": ">= 0.6" + "node": ">= 0.4" } }, - "node_modules/@ngageoint/mage.service/node_modules/http-signature": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", - "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=", + "node_modules/@ngageoint/mage.service/node_modules/get-stdin": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-6.0.0.tgz", + "integrity": "sha512-jp4tHawyV7+fkkSKyvjuLZswblUtz+SQKzSWnBbii16BuZksJlU1wuBYXY75r+duh/llF1ur6oNwi+2ZzjKZ7g==", "extraneous": true, - "dependencies": { - "assert-plus": "^1.0.0", - "jsprim": "^1.2.2", - "sshpk": "^1.7.0" - }, "engines": { - "node": ">=0.8", - "npm": ">=1.3.7" + "node": ">=4" } }, - "node_modules/@ngageoint/mage.service/node_modules/https-proxy-agent": { - "version": "7.0.2", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.2.tgz", - "integrity": "sha512-NmLNjm6ucYwtcUmL7JQC1ZQ57LmHP4lT15FQ8D61nak1rO6DH+fz5qNK2Ap5UN4ZapYICE3/0KodcLYSPsPbaA==", + "node_modules/@ngageoint/mage.service/node_modules/get-symbol-description": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.2.tgz", + "integrity": "sha512-g0QYk1dZBxGwk+Ngc+ltRH2IBp2f7zBkBMBJZCDerh6EhlhSR6+9irMCuT/09zD6qkarHUSn529sK/yL4S27mg==", "extraneous": true, "dependencies": { - "agent-base": "^7.0.2", - "debug": "4" + "call-bind": "^1.0.5", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.4" }, "engines": { - "node": ">= 14" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/@ngageoint/mage.service/node_modules/https-proxy-agent/node_modules/debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "node_modules/@ngageoint/mage.service/node_modules/getpass": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", + "integrity": "sha512-0fzj9JxOLfJ+XGLhR8ze3unN0KZCgZwiSSDz168VERjK8Wl8kVSdcu2kspd4s4wtAa1y/qrVRiAA0WclVsu0ng==", "extraneous": true, "dependencies": { - "ms": "2.1.2" + "assert-plus": "^1.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/github-from-package": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/github-from-package/-/github-from-package-0.0.0.tgz", + "integrity": "sha512-SyHy3T1v2NUXn29OsWdxmK6RwHD+vkj3v8en8AOBZ1wBQ/hCAQ5bAQTD02kW4W9tUp/3Qh6J8r9EvntiyCmOOw==", + "optional": true, + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "deprecated": "Glob versions prior to v9 are no longer supported", + "peer": true, + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" }, "engines": { - "node": ">=6.0" + "node": "*" }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/@ngageoint/mage.service/node_modules/https-proxy-agent/node_modules/ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "extraneous": true - }, - "node_modules/@ngageoint/mage.service/node_modules/iconv-lite": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.5.2.tgz", - "integrity": "sha512-kERHXvpSaB4aU3eANwidg79K8FlrN77m8G9V+0vOR3HYaRifrlwMEpT7ZBJqLSEIHnEgJTHcWK82wwLwwKwtag==", + "node_modules/@ngageoint/mage.service/node_modules/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==", "extraneous": true, "dependencies": { - "safer-buffer": ">= 2.1.2 < 3" + "is-glob": "^4.0.3" }, "engines": { - "node": ">=0.10.0" + "node": ">=10.13.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/ieee754": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", - "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "peer": true - }, - "node_modules/@ngageoint/mage.service/node_modules/ignore": { - "version": "5.2.4", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.4.tgz", - "integrity": "sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ==", - "extraneous": true, - "engines": { - "node": ">= 4" + "node_modules/@ngageoint/mage.service/node_modules/glob/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "peer": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" } }, - "node_modules/@ngageoint/mage.service/node_modules/image-size": { - "version": "0.8.3", - "resolved": "https://registry.npmjs.org/image-size/-/image-size-0.8.3.tgz", - "integrity": "sha512-SMtq1AJ+aqHB45c3FsB4ERK0UCiA2d3H1uq8s+8T0Pf8A3W4teyBQyaFaktH6xvZqh+npwlKU7i4fJo0r7TYTg==", + "node_modules/@ngageoint/mage.service/node_modules/glob/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", "peer": true, "dependencies": { - "queue": "6.0.1" - }, - "bin": { - "image-size": "bin/image-size.js" + "brace-expansion": "^1.1.7" }, "engines": { - "node": ">=6.9.0" + "node": "*" } }, - "node_modules/@ngageoint/mage.service/node_modules/immediate": { - "version": "3.0.6", - "resolved": "https://registry.npmjs.org/immediate/-/immediate-3.0.6.tgz", - "integrity": "sha1-nbHb0Pr43m++D13V5Wu2BigN5ps=", - "extraneous": true - }, - "node_modules/@ngageoint/mage.service/node_modules/import-fresh": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", - "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", + "node_modules/@ngageoint/mage.service/node_modules/globals": { + "version": "13.24.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.24.0.tgz", + "integrity": "sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==", "extraneous": true, "dependencies": { - "parent-module": "^1.0.0", - "resolve-from": "^4.0.0" + "type-fest": "^0.20.2" }, "engines": { - "node": ">=6" + "node": ">=8" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@ngageoint/mage.service/node_modules/import-fresh/node_modules/resolve-from": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", - "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", + "node_modules/@ngageoint/mage.service/node_modules/globalthis": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.4.tgz", + "integrity": "sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ==", "extraneous": true, + "dependencies": { + "define-properties": "^1.2.1", + "gopd": "^1.0.1" + }, "engines": { - "node": ">=4" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/@ngageoint/mage.service/node_modules/imurmurhash": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", - "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", + "node_modules/@ngageoint/mage.service/node_modules/globby": { + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz", + "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==", "extraneous": true, + "license": "MIT", + "dependencies": { + "array-union": "^2.1.0", + "dir-glob": "^3.0.1", + "fast-glob": "^3.2.9", + "ignore": "^5.2.0", + "merge2": "^1.4.1", + "slash": "^3.0.0" + }, "engines": { - "node": ">=0.8.19" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@ngageoint/mage.service/node_modules/inflight": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", + "node_modules/@ngageoint/mage.service/node_modules/gopd": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.2.0.tgz", + "integrity": "sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==", + "license": "MIT", "peer": true, - "dependencies": { - "once": "^1.3.0", - "wrappy": "1" + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/@ngageoint/mage.service/node_modules/inherit": { - "version": "2.2.7", - "resolved": "https://registry.npmjs.org/inherit/-/inherit-2.2.7.tgz", - "integrity": "sha512-dxJmC1j0Q32NFAjvbd6g3lXYLZ49HgzotgbSMwMkoiTXGhC9412Oc24g7A7M9cPPkw/vDsF2cSII+2zJwocUtQ==", + "node_modules/@ngageoint/mage.service/node_modules/graceful-fs": { + "version": "4.2.11", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", + "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==", "peer": true }, - "node_modules/@ngageoint/mage.service/node_modules/inherits": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", - "peer": true + "node_modules/@ngageoint/mage.service/node_modules/graphemer": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/graphemer/-/graphemer-1.4.0.tgz", + "integrity": "sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==", + "extraneous": true }, - "node_modules/@ngageoint/mage.service/node_modules/ini": { - "version": "1.3.8", - "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", - "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==", - "peer": true + "node_modules/@ngageoint/mage.service/node_modules/har-schema": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz", + "integrity": "sha512-Oqluz6zhGX8cyRaTQlFMPw80bSJVG2x/cFb8ZPhUILGgHka9SsokCCOQgpveePerqidZOrT14ipqfJb7ILcW5Q==", + "extraneous": true, + "engines": { + "node": ">=4" + } }, - "node_modules/@ngageoint/mage.service/node_modules/inquirer": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-8.0.0.tgz", - "integrity": "sha512-ON8pEJPPCdyjxj+cxsYRe6XfCJepTxANdNnTebsTuQgXpRyZRRT9t4dJwjRubgmvn20CLSEnozRUayXyM9VTXA==", - "optional": true, - "peer": true, - "dependencies": { - "ansi-escapes": "^4.2.1", - "chalk": "^4.1.0", - "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", - "run-async": "^2.4.0", - "rxjs": "^6.6.6", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0", - "through": "^2.3.6" + "node_modules/@ngageoint/mage.service/node_modules/har-validator": { + "version": "5.1.5", + "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.5.tgz", + "integrity": "sha512-nmT2T0lljbxdQZfspsno9hgrG3Uir6Ks5afism62poxqBM6sDnMEuPmzTq8XN0OEwqKLLdh1jQI3qyE66Nzb3w==", + "deprecated": "this library is no longer supported", + "extraneous": true, + "dependencies": { + "ajv": "^6.12.3", + "har-schema": "^2.0.0" }, "engines": { - "node": ">=8.0.0" + "node": ">=6" } }, - "node_modules/@ngageoint/mage.service/node_modules/inquirer/node_modules/ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "optional": true, - "peer": true, - "engines": { - "node": ">=8" + "node_modules/@ngageoint/mage.service/node_modules/has-bigints": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz", + "integrity": "sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==", + "extraneous": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/@ngageoint/mage.service/node_modules/inquirer/node_modules/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==", - "optional": true, + "node_modules/@ngageoint/mage.service/node_modules/has-color": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/has-color/-/has-color-0.1.7.tgz", + "integrity": "sha512-kaNz5OTAYYmt646Hkqw50/qyxP2vFnTVu5AQ1Zmk22Kk5+4Qx6BpO8+u7IKsML5fOsFk0ZT0AcCJNYwcvaLBvw==", "peer": true, "engines": { - "node": ">=8" + "node": ">=0.10.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/inquirer/node_modules/string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "node_modules/@ngageoint/mage.service/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", "optional": true, "peer": true, - "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - }, "engines": { "node": ">=8" } }, - "node_modules/@ngageoint/mage.service/node_modules/inquirer/node_modules/strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "optional": true, + "node_modules/@ngageoint/mage.service/node_modules/has-property-descriptors": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz", + "integrity": "sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==", "peer": true, "dependencies": { - "ansi-regex": "^5.0.1" + "es-define-property": "^1.0.0" }, - "engines": { - "node": ">=8" + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/@ngageoint/mage.service/node_modules/internal-slot": { + "node_modules/@ngageoint/mage.service/node_modules/has-proto": { "version": "1.0.3", - "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.3.tgz", - "integrity": "sha512-O0DB1JC/sPyZl7cIo78n5dR7eUSwwpYPiXRhTzNxZVAMUuB8vlnRFyLxdrVToks6XPLVnFfbzaVd5WLjhgg+vA==", + "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.3.tgz", + "integrity": "sha512-SJ1amZAJUiZS+PhsVLf5tGydlaVB8EdFpaSO4gmiUKUOxk8qzn5AIy4ZeJUmh22znIdk/uMAUT2pl3FxzVUH+Q==", "extraneous": true, - "dependencies": { - "get-intrinsic": "^1.1.0", - "has": "^1.0.3", - "side-channel": "^1.0.4" - }, "engines": { "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/@ngageoint/mage.service/node_modules/ip": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ip/-/ip-2.0.0.tgz", - "integrity": "sha512-WKa+XuLG1A1R0UWhl2+1XQSi+fZWMsYKffMZTTYsiZaUD8k2yDAj5atimTUD2TZkyCkNEeYE5NhFZmupOGtjYQ==", - "extraneous": true - }, - "node_modules/@ngageoint/mage.service/node_modules/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==", + "node_modules/@ngageoint/mage.service/node_modules/has-symbols": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.1.0.tgz", + "integrity": "sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==", + "license": "MIT", "peer": true, - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/@ngageoint/mage.service/node_modules/is-arguments": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/is-arguments/-/is-arguments-1.1.1.tgz", - "integrity": "sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA==", - "extraneous": true, - "dependencies": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" - }, "engines": { "node": ">= 0.4" }, @@ -6815,303 +8078,320 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/@ngageoint/mage.service/node_modules/is-arrayish": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", - "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=", - "extraneous": true - }, - "node_modules/@ngageoint/mage.service/node_modules/is-bigint": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz", - "integrity": "sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==", - "extraneous": true, + "node_modules/@ngageoint/mage.service/node_modules/has-tostringtag": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.2.tgz", + "integrity": "sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==", + "peer": true, "dependencies": { - "has-bigints": "^1.0.1" + "has-symbols": "^1.0.3" + }, + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/@ngageoint/mage.service/node_modules/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==", + "node_modules/@ngageoint/mage.service/node_modules/hasha": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/hasha/-/hasha-3.0.0.tgz", + "integrity": "sha512-w0Kz8lJFBoyaurBiNrIvxPqr/gJ6fOfSkpAPOepN3oECqGJag37xPbOv57izi/KP8auHgNYxn5fXtAb+1LsJ6w==", "extraneous": true, "dependencies": { - "binary-extensions": "^2.0.0" + "is-stream": "^1.0.1" }, "engines": { - "node": ">=8" + "node": ">=4" } }, - "node_modules/@ngageoint/mage.service/node_modules/is-boolean-object": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz", - "integrity": "sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==", - "extraneous": true, + "node_modules/@ngageoint/mage.service/node_modules/hasown": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", + "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", + "peer": true, "dependencies": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" + "function-bind": "^1.1.2" }, "engines": { "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/@ngageoint/mage.service/node_modules/is-callable": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.4.tgz", - "integrity": "sha512-nsuwtxZfMX67Oryl9LCQ+upnC0Z0BgpwntpS89m1H/TLF0zNfzfLMV/9Wa/6MZsj0acpEjAO0KF1xT6ZdLl95w==", + "node_modules/@ngageoint/mage.service/node_modules/he": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz", + "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==", "extraneous": true, + "bin": { + "he": "bin/he" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/hexoid": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/hexoid/-/hexoid-1.0.0.tgz", + "integrity": "sha512-QFLV0taWQOZtvIRIAdBChesmogZrtuXvVWsFHZTk2SU+anspqZ2vMnoLg7IE1+Uk16N19APic1BuF8bC8c2m5g==", + "peer": true, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=8" } }, - "node_modules/@ngageoint/mage.service/node_modules/is-core-module": { - "version": "2.8.1", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.8.1.tgz", - "integrity": "sha512-SdNCUs284hr40hFTFP6l0IfZ/RSrMXF3qgoRHd3/79unUTvrFO/JoXwkGm+5J/Oe3E/b5GsnG330uUNgRpu1PA==", + "node_modules/@ngageoint/mage.service/node_modules/hosted-git-info": { + "version": "2.8.9", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz", + "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/html-escaper": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", + "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/http-errors": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", + "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==", + "license": "MIT", "peer": true, "dependencies": { - "has": "^1.0.3" + "depd": "2.0.0", + "inherits": "2.0.4", + "setprototypeof": "1.2.0", + "statuses": "2.0.1", + "toidentifier": "1.0.1" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "engines": { + "node": ">= 0.8" } }, - "node_modules/@ngageoint/mage.service/node_modules/is-date-object": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz", - "integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==", + "node_modules/@ngageoint/mage.service/node_modules/http-signature": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", + "integrity": "sha512-CAbnr6Rz4CYQkLYUtSNXxQPUH2gK8f3iWexVlsnMeD+GjlsQ0Xsy1cOX+mN3dtxYomRy21CiOzU8Uhw6OwncEQ==", "extraneous": true, "dependencies": { - "has-tostringtag": "^1.0.0" + "assert-plus": "^1.0.0", + "jsprim": "^1.2.2", + "sshpk": "^1.7.0" }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/@ngageoint/mage.service/node_modules/is-expression": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/is-expression/-/is-expression-4.0.0.tgz", - "integrity": "sha512-zMIXX63sxzG3XrkHkrAPvm/OVZVSCPNkwMHU8oTX7/U3AL78I0QXCEICXUM13BIa8TYGZ68PiTKfQz3yaTNr4A==", - "peer": true, - "dependencies": { - "acorn": "^7.1.1", - "object-assign": "^4.1.1" + "node": ">=0.8", + "npm": ">=1.3.7" } }, - "node_modules/@ngageoint/mage.service/node_modules/is-extglob": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", - "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=", + "node_modules/@ngageoint/mage.service/node_modules/https-proxy-agent": { + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.6.tgz", + "integrity": "sha512-vK9P5/iUfdl95AI+JVyUuIcVtd4ofvtrOr3HNtM2yxC9bnMbEdp3x01OhQNnjb8IJYi38VlTE3mBXwcfvywuSw==", "extraneous": true, + "license": "MIT", + "dependencies": { + "agent-base": "^7.1.2", + "debug": "4" + }, "engines": { - "node": ">=0.10.0" + "node": ">= 14" } }, - "node_modules/@ngageoint/mage.service/node_modules/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=", - "optional": true, - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/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==", + "extraneous": true, + "license": "MIT", "dependencies": { - "number-is-nan": "^1.0.0" + "safer-buffer": ">= 2.1.2 < 3.0.0" }, "engines": { "node": ">=0.10.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/is-generator-function": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/is-generator-function/-/is-generator-function-1.0.10.tgz", - "integrity": "sha512-jsEjy9l3yiXEQ+PsXdmBwEPcOxaXWLspKdplFUVI9vq1iZgIekeC0L167qeu86czQaxed3q/Uzuw0swL0irL8A==", + "node_modules/@ngageoint/mage.service/node_modules/ieee754": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", + "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/ignore": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.1.tgz", + "integrity": "sha512-5Fytz/IraMjqpwfd34ke28PTVMjZjJG2MPn5t7OE4eUCUNf8BAa7b5WUS9/Qvr6mwOQS7Mk6vdsMno5he+T8Xw==", "extraneous": true, - "dependencies": { - "has-tostringtag": "^1.0.0" - }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">= 4" } }, - "node_modules/@ngageoint/mage.service/node_modules/is-glob": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", - "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", - "extraneous": true, + "node_modules/@ngageoint/mage.service/node_modules/image-size": { + "version": "0.8.3", + "resolved": "https://registry.npmjs.org/image-size/-/image-size-0.8.3.tgz", + "integrity": "sha512-SMtq1AJ+aqHB45c3FsB4ERK0UCiA2d3H1uq8s+8T0Pf8A3W4teyBQyaFaktH6xvZqh+npwlKU7i4fJo0r7TYTg==", + "peer": true, "dependencies": { - "is-extglob": "^2.1.1" + "queue": "6.0.1" + }, + "bin": { + "image-size": "bin/image-size.js" }, "engines": { - "node": ">=0.10.0" + "node": ">=6.9.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/is-map": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/is-map/-/is-map-2.0.2.tgz", - "integrity": "sha512-cOZFQQozTha1f4MxLFzlgKYPTyj26picdZTx82hbc/Xf4K/tZOOXSCkMvU4pKioRXGDLJRn0GM7Upe7kR721yg==", - "extraneous": true, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } + "node_modules/@ngageoint/mage.service/node_modules/immediate": { + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/immediate/-/immediate-3.0.6.tgz", + "integrity": "sha512-XXOFtyqDjNDAQxVfYxuF7g9Il/IbWmmlQg2MYKOH8ExIT1qg6xc4zyS3HaEEATgs1btfzxq15ciUiY7gjSXRGQ==", + "extraneous": true }, - "node_modules/@ngageoint/mage.service/node_modules/is-nan": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/is-nan/-/is-nan-1.3.2.tgz", - "integrity": "sha512-E+zBKpQ2t6MEo1VsonYmluk9NxGrbzpeeLC2xIViuO2EjU2xsXsBPwTr3Ykv9l08UYEVEdWeRZNouaZqF6RN0w==", + "node_modules/@ngageoint/mage.service/node_modules/import-fresh": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", + "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", "extraneous": true, "dependencies": { - "call-bind": "^1.0.0", - "define-properties": "^1.1.3" - }, - "engines": { - "node": ">= 0.4" + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/@ngageoint/mage.service/node_modules/is-negative-zero": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.2.tgz", - "integrity": "sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==", - "extraneous": true, "engines": { - "node": ">= 0.4" + "node": ">=6" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@ngageoint/mage.service/node_modules/is-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "node_modules/@ngageoint/mage.service/node_modules/imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", "extraneous": true, "engines": { - "node": ">=0.12.0" + "node": ">=0.8.19" } }, - "node_modules/@ngageoint/mage.service/node_modules/is-number-object": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.7.tgz", - "integrity": "sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==", + "node_modules/@ngageoint/mage.service/node_modules/indent-string": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-5.0.0.tgz", + "integrity": "sha512-m6FAo/spmsW2Ab2fU35JTYwtOKa2yAwXSwgjSv1TJzh4Mh7mC3lzAOVLBprb72XsTrgkEIsl7YrFNAiDiRhIGg==", "extraneous": true, - "dependencies": { - "has-tostringtag": "^1.0.0" - }, "engines": { - "node": ">= 0.4" + "node": ">=12" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@ngageoint/mage.service/node_modules/is-object": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-object/-/is-object-1.0.2.tgz", - "integrity": "sha512-2rRIahhZr2UWb45fIOuvZGpFtz0TyOZLf32KxBbSoUCeZR495zCKlWUKKUByk3geS2eAs7ZAABt0Y/Rx0GiQGA==", - "extraneous": true, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node_modules/@ngageoint/mage.service/node_modules/inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "deprecated": "This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.", + "peer": true, + "dependencies": { + "once": "^1.3.0", + "wrappy": "1" } }, - "node_modules/@ngageoint/mage.service/node_modules/is-path-inside": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", - "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==", - "extraneous": true, - "engines": { - "node": ">=8" - } + "node_modules/@ngageoint/mage.service/node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", + "peer": true }, - "node_modules/@ngageoint/mage.service/node_modules/is-promise": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-2.2.2.tgz", - "integrity": "sha512-+lP4/6lKUBfQjZ2pdxThZvLUAafmZb8OAxFb8XXtiQmS35INgr85hdOGoEs124ez1FCnZJt6jau/T+alh58QFQ==", + "node_modules/@ngageoint/mage.service/node_modules/ini": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", + "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==", + "optional": true, "peer": true }, - "node_modules/@ngageoint/mage.service/node_modules/is-regex": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz", - "integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==", + "node_modules/@ngageoint/mage.service/node_modules/inquirer": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-8.0.0.tgz", + "integrity": "sha512-ON8pEJPPCdyjxj+cxsYRe6XfCJepTxANdNnTebsTuQgXpRyZRRT9t4dJwjRubgmvn20CLSEnozRUayXyM9VTXA==", + "optional": true, "peer": true, "dependencies": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" + "ansi-escapes": "^4.2.1", + "chalk": "^4.1.0", + "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", + "run-async": "^2.4.0", + "rxjs": "^6.6.6", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0", + "through": "^2.3.6" }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/@ngageoint/mage.service/node_modules/is-set": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/is-set/-/is-set-2.0.2.tgz", - "integrity": "sha512-+2cnTEZeY5z/iXGbLhPrOAaK/Mau5k5eXq9j14CpRTftq0pAJu2MwVRSZhyZWBzx3o6X795Lz6Bpb6R0GKf37g==", - "extraneous": true, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=8.0.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/is-shared-array-buffer": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz", - "integrity": "sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==", + "node_modules/@ngageoint/mage.service/node_modules/internal-slot": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.7.tgz", + "integrity": "sha512-NGnrKwXzSms2qUUih/ILZ5JBqNTSa1+ZmP6flaIp6KmSElgE9qdndzS3cqjrDovwFdmwsGsLdeFgB6suw+1e9g==", "extraneous": true, "dependencies": { - "call-bind": "^1.0.2" + "es-errors": "^1.3.0", + "hasown": "^2.0.0", + "side-channel": "^1.0.4" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/@ngageoint/mage.service/node_modules/is-stream": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", - "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=", - "extraneous": true, "engines": { - "node": ">=0.10.0" + "node": ">= 0.4" } }, - "node_modules/@ngageoint/mage.service/node_modules/is-string": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz", - "integrity": "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==", - "extraneous": true, + "node_modules/@ngageoint/mage.service/node_modules/ip-address": { + "version": "9.0.5", + "resolved": "https://registry.npmjs.org/ip-address/-/ip-address-9.0.5.tgz", + "integrity": "sha512-zHtQzGojZXTwZTHQqra+ETKd4Sn3vgi7uBmlPoXVWZqYvuKmtI0l/VZTjqGmJY9x88GGOaZ9+G9ES8hC4T4X8g==", + "peer": true, "dependencies": { - "has-tostringtag": "^1.0.0" + "jsbn": "1.1.0", + "sprintf-js": "^1.1.3" }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">= 12" } }, - "node_modules/@ngageoint/mage.service/node_modules/is-symbol": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz", - "integrity": "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==", + "node_modules/@ngageoint/mage.service/node_modules/ip-address/node_modules/sprintf-js": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.1.3.tgz", + "integrity": "sha512-Oo+0REFV59/rz3gfJNKQiBlwfHaSESl1pcGyABQsnnIfWOFt6JNj5gCog2U6MLZ//IGYD+nA8nI+mTShREReaA==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/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==", + "peer": true, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/is-arguments": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-arguments/-/is-arguments-1.1.1.tgz", + "integrity": "sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA==", "extraneous": true, "dependencies": { - "has-symbols": "^1.0.2" + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" }, "engines": { "node": ">= 0.4" @@ -7120,17 +8400,14 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/@ngageoint/mage.service/node_modules/is-typed-array": { - "version": "1.1.8", - "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.8.tgz", - "integrity": "sha512-HqH41TNZq2fgtGT8WHVFVJhBVGuY3AnP3Q36K8JKXUxSxRgk/d+7NjmwG2vo2mYmXK8UYZKu0qH8bVP5gEisjA==", + "node_modules/@ngageoint/mage.service/node_modules/is-array-buffer": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.4.tgz", + "integrity": "sha512-wcjaerHw0ydZwfhiKbXJWLDY8A7yV7KhjQOpb83hGgGfId/aQa4TOvwyzn2PuswW2gPCYEL/nEAiSVpdOj1lXw==", "extraneous": true, "dependencies": { - "available-typed-arrays": "^1.0.5", "call-bind": "^1.0.2", - "es-abstract": "^1.18.5", - "foreach": "^2.0.5", - "has-tostringtag": "^1.0.0" + "get-intrinsic": "^1.2.1" }, "engines": { "node": ">= 0.4" @@ -7139,1674 +8416,1664 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/@ngageoint/mage.service/node_modules/is-typedarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", - "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=", + "node_modules/@ngageoint/mage.service/node_modules/is-arrayish": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==", "extraneous": true }, - "node_modules/@ngageoint/mage.service/node_modules/is-weakmap": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-weakmap/-/is-weakmap-2.0.1.tgz", - "integrity": "sha512-NSBR4kH5oVj1Uwvv970ruUkCV7O1mzgVFO4/rev2cLRda9Tm9HrL70ZPut4rOHgY0FNrUu9BCbXA2sdQ+x0chA==", - "extraneous": true, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/@ngageoint/mage.service/node_modules/is-weakref": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.2.tgz", - "integrity": "sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==", - "extraneous": true, - "dependencies": { - "call-bind": "^1.0.2" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/@ngageoint/mage.service/node_modules/is-weakset": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/is-weakset/-/is-weakset-2.0.2.tgz", - "integrity": "sha512-t2yVvttHkQktwnNNmBQ98AhENLdPUTDTE21uPqAQ0ARwQfGeQKRVS0NNurH7bTf7RrvcVn1OOge45CnBeHCSmg==", + "node_modules/@ngageoint/mage.service/node_modules/is-bigint": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz", + "integrity": "sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==", "extraneous": true, "dependencies": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.1.1" + "has-bigints": "^1.0.1" }, "funding": { "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/@ngageoint/mage.service/node_modules/isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", - "peer": true - }, - "node_modules/@ngageoint/mage.service/node_modules/isexe": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", - "peer": true - }, - "node_modules/@ngageoint/mage.service/node_modules/isstream": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", - "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=", - "peer": true - }, - "node_modules/@ngageoint/mage.service/node_modules/istanbul-lib-coverage": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.5.tgz", - "integrity": "sha512-8aXznuEPCJvGnMSRft4udDRDtb1V3pkQkMMI5LI+6HuQz5oQ4J2UFn1H82raA3qJtyOLkkwVqICBQkjnGtn5mA==", - "extraneous": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/@ngageoint/mage.service/node_modules/istanbul-lib-hook": { - "version": "2.0.7", - "resolved": "https://registry.npmjs.org/istanbul-lib-hook/-/istanbul-lib-hook-2.0.7.tgz", - "integrity": "sha512-vrRztU9VRRFDyC+aklfLoeXyNdTfga2EI3udDGn4cZ6fpSXpHLV9X6CHvfoMCPtggg8zvDDmC4b9xfu0z6/llA==", + "node_modules/@ngageoint/mage.service/node_modules/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==", "extraneous": true, + "license": "MIT", "dependencies": { - "append-transform": "^1.0.0" + "binary-extensions": "^2.0.0" }, "engines": { - "node": ">=6" + "node": ">=8" } }, - "node_modules/@ngageoint/mage.service/node_modules/istanbul-lib-instrument": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-3.3.0.tgz", - "integrity": "sha512-5nnIN4vo5xQZHdXno/YDXJ0G+I3dAm4XgzfSVTPLQpj/zAV2dV6Juy0yaf10/zrJOJeHoN3fraFe+XRq2bFVZA==", + "node_modules/@ngageoint/mage.service/node_modules/is-boolean-object": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz", + "integrity": "sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==", "extraneous": true, "dependencies": { - "@babel/generator": "^7.4.0", - "@babel/parser": "^7.4.3", - "@babel/template": "^7.4.0", - "@babel/traverse": "^7.4.3", - "@babel/types": "^7.4.0", - "istanbul-lib-coverage": "^2.0.5", - "semver": "^6.0.0" + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" }, "engines": { - "node": ">=6" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/@ngageoint/mage.service/node_modules/istanbul-lib-instrument/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "node_modules/@ngageoint/mage.service/node_modules/is-callable": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz", + "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==", "extraneous": true, - "bin": { - "semver": "bin/semver.js" + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/@ngageoint/mage.service/node_modules/istanbul-lib-report": { - "version": "2.0.8", - "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-2.0.8.tgz", - "integrity": "sha512-fHBeG573EIihhAblwgxrSenp0Dby6tJMFR/HvlerBsrCTD5bkUuoNtn3gVh29ZCS824cGGBPn7Sg7cNk+2xUsQ==", - "extraneous": true, + "node_modules/@ngageoint/mage.service/node_modules/is-core-module": { + "version": "2.14.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.14.0.tgz", + "integrity": "sha512-a5dFJih5ZLYlRtDc0dZWP7RiKr6xIKzmn/oAYCDvdLThadVgyJwlaoQPmRtMSpz+rk0OGAgIu+TcM9HUF0fk1A==", + "peer": true, "dependencies": { - "istanbul-lib-coverage": "^2.0.5", - "make-dir": "^2.1.0", - "supports-color": "^6.1.0" + "hasown": "^2.0.2" }, "engines": { - "node": ">=6" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/@ngageoint/mage.service/node_modules/istanbul-lib-report/node_modules/has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "node_modules/@ngageoint/mage.service/node_modules/is-data-view": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-data-view/-/is-data-view-1.0.1.tgz", + "integrity": "sha512-AHkaJrsUVW6wq6JS8y3JnM/GJF/9cf+k20+iDzlSaJrinEo5+7vRiteOSwBhHRiAyQATN1AmY4hwzxJKPmYf+w==", "extraneous": true, + "dependencies": { + "is-typed-array": "^1.1.13" + }, "engines": { - "node": ">=4" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/@ngageoint/mage.service/node_modules/istanbul-lib-report/node_modules/supports-color": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", - "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "node_modules/@ngageoint/mage.service/node_modules/is-date-object": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz", + "integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==", "extraneous": true, "dependencies": { - "has-flag": "^3.0.0" + "has-tostringtag": "^1.0.0" }, "engines": { - "node": ">=6" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/@ngageoint/mage.service/node_modules/istanbul-lib-source-maps": { - "version": "3.0.6", - "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-3.0.6.tgz", - "integrity": "sha512-R47KzMtDJH6X4/YW9XTx+jrLnZnscW4VpNN+1PViSYTejLVPWv7oov+Duf8YQSPyVRUvueQqz1TcsC6mooZTXw==", - "extraneous": true, + "node_modules/@ngageoint/mage.service/node_modules/is-expression": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/is-expression/-/is-expression-4.0.0.tgz", + "integrity": "sha512-zMIXX63sxzG3XrkHkrAPvm/OVZVSCPNkwMHU8oTX7/U3AL78I0QXCEICXUM13BIa8TYGZ68PiTKfQz3yaTNr4A==", + "peer": true, "dependencies": { - "debug": "^4.1.1", - "istanbul-lib-coverage": "^2.0.5", - "make-dir": "^2.1.0", - "rimraf": "^2.6.3", - "source-map": "^0.6.1" + "acorn": "^7.1.1", + "object-assign": "^4.1.1" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/is-expression/node_modules/acorn": { + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", + "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", + "peer": true, + "bin": { + "acorn": "bin/acorn" }, "engines": { - "node": ">=6" + "node": ">=0.4.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/istanbul-lib-source-maps/node_modules/debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "node_modules/@ngageoint/mage.service/node_modules/is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", "extraneous": true, - "dependencies": { - "ms": "2.1.2" - }, "engines": { - "node": ">=6.0" - }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } + "node": ">=0.10.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/istanbul-lib-source-maps/node_modules/ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "extraneous": true - }, - "node_modules/@ngageoint/mage.service/node_modules/istanbul-lib-source-maps/node_modules/rimraf": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", - "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", - "extraneous": true, - "dependencies": { - "glob": "^7.1.3" - }, - "bin": { - "rimraf": "bin.js" + "node_modules/@ngageoint/mage.service/node_modules/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==", + "optional": true, + "peer": true, + "engines": { + "node": ">=8" } }, - "node_modules/@ngageoint/mage.service/node_modules/istanbul-reports": { - "version": "2.2.7", - "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-2.2.7.tgz", - "integrity": "sha512-uu1F/L1o5Y6LzPVSVZXNOoD/KXpJue9aeLRd0sM9uMXfZvzomB0WxVamWb5ue8kA2vVWEmW7EG+A5n3f1kqHKg==", + "node_modules/@ngageoint/mage.service/node_modules/is-glob": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", "extraneous": true, "dependencies": { - "html-escaper": "^2.0.0" + "is-extglob": "^2.1.1" }, "engines": { - "node": ">=6" + "node": ">=0.10.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/jackspeak": { - "version": "2.3.6", - "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-2.3.6.tgz", - "integrity": "sha512-N3yCS/NegsOBokc8GAdM8UcmfsKiSS8cipheD/nivzr700H+nsMOxJjQnvwOcRYVuFkdH0wGUvW2WbXGmrZGbQ==", + "node_modules/@ngageoint/mage.service/node_modules/is-map": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/is-map/-/is-map-2.0.3.tgz", + "integrity": "sha512-1Qed0/Hr2m+YqxnM09CjA2d/i6YZNfF6R2oRAOj36eUdS6qIV/huPJNSEpKbupewFs+ZsJlxsjjPbc0/afW6Lw==", "extraneous": true, - "dependencies": { - "@isaacs/cliui": "^8.0.2" - }, "engines": { - "node": ">=14" + "node": ">= 0.4" }, "funding": { - "url": "https://github.com/sponsors/isaacs" - }, - "optionalDependencies": { - "@pkgjs/parseargs": "^0.11.0" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/@ngageoint/mage.service/node_modules/jdataview": { - "version": "2.4.6", - "resolved": "https://registry.npmjs.org/jdataview/-/jdataview-2.4.6.tgz", - "integrity": "sha1-Qapcdfl5TxFgWIPSm9qvCZizVSs=", - "peer": true - }, - "node_modules/@ngageoint/mage.service/node_modules/js-stringify": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/js-stringify/-/js-stringify-1.0.2.tgz", - "integrity": "sha512-rtS5ATOo2Q5k1G+DADISilDA6lv79zIiwFd6CcjuIxGKLFm5C+RLImRscVap9k55i+MOZwgliw+NejvkLuGD5g==", - "peer": true - }, - "node_modules/@ngageoint/mage.service/node_modules/js-tokens": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", - "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", - "extraneous": true - }, - "node_modules/@ngageoint/mage.service/node_modules/js-yaml": { - "version": "3.4.6", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.4.6.tgz", - "integrity": "sha1-a+GyP2JJ9T0pM3D9TRqqY84bTrA=", - "peer": true, - "dependencies": { - "argparse": "^1.0.2", - "esprima": "^2.6.0", - "inherit": "^2.2.2" + "node_modules/@ngageoint/mage.service/node_modules/is-negative-zero": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.3.tgz", + "integrity": "sha512-5KoIu2Ngpyek75jXodFvnafB6DJgr3u8uuK0LEZJjrU19DrMD3EVERaR8sjz8CCGgpZvxPl9SuE1GMVPFHx1mw==", + "extraneous": true, + "engines": { + "node": ">= 0.4" }, - "bin": { - "js-yaml": "bin/js-yaml.js" + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/@ngageoint/mage.service/node_modules/jsbn": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", - "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=", - "extraneous": true + "node_modules/@ngageoint/mage.service/node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "extraneous": true, + "engines": { + "node": ">=0.12.0" + } }, - "node_modules/@ngageoint/mage.service/node_modules/jsesc": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", - "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", + "node_modules/@ngageoint/mage.service/node_modules/is-number-object": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.7.tgz", + "integrity": "sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==", "extraneous": true, - "bin": { - "jsesc": "bin/jsesc" + "dependencies": { + "has-tostringtag": "^1.0.0" }, "engines": { - "node": ">=4" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/@ngageoint/mage.service/node_modules/json-buffer": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz", - "integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==", - "extraneous": true - }, - "node_modules/@ngageoint/mage.service/node_modules/json-parse-better-errors": { + "node_modules/@ngageoint/mage.service/node_modules/is-object": { "version": "1.0.2", - "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz", - "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==", - "extraneous": true - }, - "node_modules/@ngageoint/mage.service/node_modules/json-schema": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.4.0.tgz", - "integrity": "sha512-es94M3nTIfsEPisRafak+HDLfHXnKBhV3vU5eqPcS3flIWqcxJWgXHXiey3YrpaNsanY5ei1VoYEbOzijuq9BA==", - "extraneous": true - }, - "node_modules/@ngageoint/mage.service/node_modules/json-schema-ref-parser": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/json-schema-ref-parser/-/json-schema-ref-parser-6.1.0.tgz", - "integrity": "sha512-pXe9H1m6IgIpXmE5JSb8epilNTGsmTb2iPohAXpOdhqGFbQjNeHHsZxU+C8w6T81GZxSPFLeUoqDJmzxx5IGuw==", - "deprecated": "Please switch to @apidevtools/json-schema-ref-parser", + "resolved": "https://registry.npmjs.org/is-object/-/is-object-1.0.2.tgz", + "integrity": "sha512-2rRIahhZr2UWb45fIOuvZGpFtz0TyOZLf32KxBbSoUCeZR495zCKlWUKKUByk3geS2eAs7ZAABt0Y/Rx0GiQGA==", "extraneous": true, - "dependencies": { - "call-me-maybe": "^1.0.1", - "js-yaml": "^3.12.1", - "ono": "^4.0.11" + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/@ngageoint/mage.service/node_modules/json-schema-ref-parser/node_modules/esprima": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", - "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", + "node_modules/@ngageoint/mage.service/node_modules/is-path-inside": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", + "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==", "extraneous": true, - "bin": { - "esparse": "bin/esparse.js", - "esvalidate": "bin/esvalidate.js" - }, "engines": { - "node": ">=4" + "node": ">=8" } }, - "node_modules/@ngageoint/mage.service/node_modules/json-schema-ref-parser/node_modules/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==", + "node_modules/@ngageoint/mage.service/node_modules/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==", "extraneous": true, - "dependencies": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" - }, - "bin": { - "js-yaml": "bin/js-yaml.js" + "engines": { + "node": ">=8" } }, - "node_modules/@ngageoint/mage.service/node_modules/json-schema-traverse": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", - "extraneous": true - }, - "node_modules/@ngageoint/mage.service/node_modules/json-stable-stringify-without-jsonify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", - "integrity": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=", - "extraneous": true - }, - "node_modules/@ngageoint/mage.service/node_modules/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=", - "extraneous": true + "node_modules/@ngageoint/mage.service/node_modules/is-promise": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-2.2.2.tgz", + "integrity": "sha512-+lP4/6lKUBfQjZ2pdxThZvLUAafmZb8OAxFb8XXtiQmS35INgr85hdOGoEs124ez1FCnZJt6jau/T+alh58QFQ==", + "peer": true }, - "node_modules/@ngageoint/mage.service/node_modules/json2csv": { - "version": "4.5.1", - "resolved": "https://registry.npmjs.org/json2csv/-/json2csv-4.5.1.tgz", - "integrity": "sha512-o90Xa1ziGk3i7AJEO79Jac4+7SEUk58/DxS5mDPW6GF7poX0y7Y0pm1FbWrkz9VzKE4MpUW9aKBOCpJ0U1Ua8A==", - "deprecated": "Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.", + "node_modules/@ngageoint/mage.service/node_modules/is-regex": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz", + "integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==", "peer": true, "dependencies": { - "commander": "^2.15.1", - "jsonparse": "^1.3.1", - "lodash.get": "^4.4.2" + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" }, - "bin": { - "json2csv": "bin/json2csv.js" + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/@ngageoint/mage.service/node_modules/json2csv/node_modules/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==", - "peer": true - }, - "node_modules/@ngageoint/mage.service/node_modules/jsonfile": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", - "integrity": "sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss=", - "peer": true, - "optionalDependencies": { - "graceful-fs": "^4.1.6" + "node_modules/@ngageoint/mage.service/node_modules/is-set": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/is-set/-/is-set-2.0.3.tgz", + "integrity": "sha512-iPAjerrse27/ygGLxw+EBR9agv9Y6uLeYVJMu+QNCoouJ1/1ri0mGrcWpfCqFZuzzx3WjtwxG098X+n4OuRkPg==", + "extraneous": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/@ngageoint/mage.service/node_modules/jsonparse": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/jsonparse/-/jsonparse-1.3.1.tgz", - "integrity": "sha1-P02uSpH6wxX3EGL4UhzCOfE2YoA=", - "engines": [ - "node >= 0.2.0" - ], - "peer": true - }, - "node_modules/@ngageoint/mage.service/node_modules/JSONStream": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/JSONStream/-/JSONStream-1.3.5.tgz", - "integrity": "sha512-E+iruNOY8VV9s4JEbe1aNEm6MiszPRr/UfcHMz0TQh1BXSxHK+ASV1R6W4HpjBhSeS+54PIsAMCBmwD06LLsqQ==", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/is-shared-array-buffer": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.3.tgz", + "integrity": "sha512-nA2hv5XIhLR3uVzDDfCIknerhx8XUKnstuOERPNNIinXG7v9u+ohXF67vxm4TPTEPU6lm61ZkwP3c9PCB97rhg==", + "extraneous": true, "dependencies": { - "jsonparse": "^1.2.0", - "through": ">=2.2.7 <3" + "call-bind": "^1.0.7" }, - "bin": { - "JSONStream": "bin.js" + "engines": { + "node": ">= 0.4" }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/is-stream": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", + "integrity": "sha512-uQPm8kcs47jx38atAcWTVxyltQYoPT68y9aWYdV6yWXSyW8mzSat0TL6CiWdZeCdF3KrAvpVtnHbTv4RN+rqdQ==", + "extraneous": true, "engines": { - "node": "*" + "node": ">=0.10.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/jsonwebtoken": { - "version": "9.0.2", - "resolved": "https://registry.npmjs.org/jsonwebtoken/-/jsonwebtoken-9.0.2.tgz", - "integrity": "sha512-PRp66vJ865SSqOlgqS8hujT5U4AOgMfhrwYIuIhfKaoSCZcirrmASQr8CX7cUg+RMih+hgznrjp99o+W4pJLHQ==", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/is-string": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz", + "integrity": "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==", + "extraneous": true, "dependencies": { - "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": "^7.5.4" + "has-tostringtag": "^1.0.0" }, "engines": { - "node": ">=12", - "npm": ">=6" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/@ngageoint/mage.service/node_modules/jsonwebtoken/node_modules/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==", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/is-symbol": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz", + "integrity": "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==", + "extraneous": true, "dependencies": { - "yallist": "^4.0.0" + "has-symbols": "^1.0.2" }, "engines": { - "node": ">=10" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/@ngageoint/mage.service/node_modules/jsonwebtoken/node_modules/ms": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", - "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", - "peer": true - }, - "node_modules/@ngageoint/mage.service/node_modules/jsonwebtoken/node_modules/semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/is-typed-array": { + "version": "1.1.13", + "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.13.tgz", + "integrity": "sha512-uZ25/bUAlUY5fR4OKT4rZQEBrzQWYV9ZJYGGsUmEJ6thodVJ1HX64ePQ6Z0qPWP+m+Uq6e9UugrE38jeYsDSMw==", + "extraneous": true, "dependencies": { - "lru-cache": "^6.0.0" + "which-typed-array": "^1.1.14" }, - "bin": { - "semver": "bin/semver.js" + "engines": { + "node": ">= 0.4" }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/is-typedarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", + "integrity": "sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/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==", + "extraneous": true, "engines": { "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@ngageoint/mage.service/node_modules/jsprim": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.2.tgz", - "integrity": "sha512-P2bSOMAc/ciLz6DzgjVlGJP9+BrJWu5UDGK70C2iweC5QBIeFf0ZXRvGjEj2uYgrY2MkAAhsSWHDWlFtEroZWw==", + "node_modules/@ngageoint/mage.service/node_modules/is-weakmap": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/is-weakmap/-/is-weakmap-2.0.2.tgz", + "integrity": "sha512-K5pXYOm9wqY1RgjpL3YTkF39tni1XajUIkawTLUo9EZEVUFga5gSQJF8nNS7ZwJQ02y+1YCNYcMh+HIf1ZqE+w==", + "extraneous": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/is-weakref": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.2.tgz", + "integrity": "sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==", "extraneous": true, "dependencies": { - "assert-plus": "1.0.0", - "extsprintf": "1.3.0", - "json-schema": "0.4.0", - "verror": "1.10.0" + "call-bind": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/is-weakset": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/is-weakset/-/is-weakset-2.0.3.tgz", + "integrity": "sha512-LvIm3/KWzS9oRFHugab7d+M/GcBXuXX5xZkzPmN+NxihdQlZUQ4dWuSV1xR/sq6upL1TJEDrfBgRepHFdBtSNQ==", + "extraneous": true, + "dependencies": { + "call-bind": "^1.0.7", + "get-intrinsic": "^1.2.4" }, "engines": { - "node": ">=0.6.0" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/@ngageoint/mage.service/node_modules/jsprim/node_modules/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=", + "node_modules/@ngageoint/mage.service/node_modules/isarray": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", + "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==", "extraneous": true }, - "node_modules/@ngageoint/mage.service/node_modules/jsprim/node_modules/extsprintf": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", - "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=", - "engines": [ - "node >=0.6.0" - ], + "node_modules/@ngageoint/mage.service/node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", "extraneous": true }, - "node_modules/@ngageoint/mage.service/node_modules/jsprim/node_modules/verror": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", - "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=", - "engines": [ - "node >=0.6.0" - ], + "node_modules/@ngageoint/mage.service/node_modules/isstream": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", + "integrity": "sha512-Yljz7ffyPbrLpLngrMtZ7NduUgVvi6wG9RJ9IUcyCd59YQ911PBJphODUcbOVbqYfxe1wuYf/LJ8PauMRwsM/g==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/istanbul-lib-coverage": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.5.tgz", + "integrity": "sha512-8aXznuEPCJvGnMSRft4udDRDtb1V3pkQkMMI5LI+6HuQz5oQ4J2UFn1H82raA3qJtyOLkkwVqICBQkjnGtn5mA==", "extraneous": true, - "dependencies": { - "assert-plus": "^1.0.0", - "core-util-is": "1.0.2", - "extsprintf": "^1.2.0" + "engines": { + "node": ">=6" } }, - "node_modules/@ngageoint/mage.service/node_modules/jstransformer": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/jstransformer/-/jstransformer-1.0.0.tgz", - "integrity": "sha512-C9YK3Rf8q6VAPDCCU9fnqo3mAfOH6vUGnMcP4AQAYIEpWtfGLpwOTmZ+igtdK5y+VvI2n3CyYSzy4Qh34eq24A==", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/istanbul-lib-hook": { + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/istanbul-lib-hook/-/istanbul-lib-hook-2.0.7.tgz", + "integrity": "sha512-vrRztU9VRRFDyC+aklfLoeXyNdTfga2EI3udDGn4cZ6fpSXpHLV9X6CHvfoMCPtggg8zvDDmC4b9xfu0z6/llA==", + "extraneous": true, "dependencies": { - "is-promise": "^2.0.0", - "promise": "^7.0.1" + "append-transform": "^1.0.0" + }, + "engines": { + "node": ">=6" } }, - "node_modules/@ngageoint/mage.service/node_modules/jszip": { - "version": "3.9.1", - "resolved": "https://registry.npmjs.org/jszip/-/jszip-3.9.1.tgz", - "integrity": "sha512-H9A60xPqJ1CuC4Ka6qxzXZeU8aNmgOeP5IFqwJbQQwtu2EUYxota3LdsiZWplF7Wgd9tkAd0mdu36nceSaPuYw==", + "node_modules/@ngageoint/mage.service/node_modules/istanbul-lib-instrument": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-3.3.0.tgz", + "integrity": "sha512-5nnIN4vo5xQZHdXno/YDXJ0G+I3dAm4XgzfSVTPLQpj/zAV2dV6Juy0yaf10/zrJOJeHoN3fraFe+XRq2bFVZA==", "extraneous": true, "dependencies": { - "lie": "~3.3.0", - "pako": "~1.0.2", - "readable-stream": "~2.3.6", - "set-immediate-shim": "~1.0.1" + "@babel/generator": "^7.4.0", + "@babel/parser": "^7.4.3", + "@babel/template": "^7.4.0", + "@babel/traverse": "^7.4.3", + "@babel/types": "^7.4.0", + "istanbul-lib-coverage": "^2.0.5", + "semver": "^6.0.0" + }, + "engines": { + "node": ">=6" } }, - "node_modules/@ngageoint/mage.service/node_modules/jszip/node_modules/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==", - "extraneous": true - }, - "node_modules/@ngageoint/mage.service/node_modules/jszip/node_modules/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==", + "node_modules/@ngageoint/mage.service/node_modules/istanbul-lib-instrument/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", "extraneous": true, - "dependencies": { - "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" + "bin": { + "semver": "bin/semver.js" } }, - "node_modules/@ngageoint/mage.service/node_modules/jszip/node_modules/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==", - "extraneous": true - }, - "node_modules/@ngageoint/mage.service/node_modules/jszip/node_modules/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==", + "node_modules/@ngageoint/mage.service/node_modules/istanbul-lib-report": { + "version": "2.0.8", + "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-2.0.8.tgz", + "integrity": "sha512-fHBeG573EIihhAblwgxrSenp0Dby6tJMFR/HvlerBsrCTD5bkUuoNtn3gVh29ZCS824cGGBPn7Sg7cNk+2xUsQ==", "extraneous": true, "dependencies": { - "safe-buffer": "~5.1.0" + "istanbul-lib-coverage": "^2.0.5", + "make-dir": "^2.1.0", + "supports-color": "^6.1.0" + }, + "engines": { + "node": ">=6" } }, - "node_modules/@ngageoint/mage.service/node_modules/junk": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/junk/-/junk-4.0.1.tgz", - "integrity": "sha512-Qush0uP+G8ZScpGMZvHUiRfI0YBWuB3gVBYlI0v0vvOJt5FLicco+IkP0a50LqTTQhmts/m6tP5SWE+USyIvcQ==", + "node_modules/@ngageoint/mage.service/node_modules/istanbul-lib-report/node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", "extraneous": true, "engines": { - "node": ">=12.20" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=4" } }, - "node_modules/@ngageoint/mage.service/node_modules/just-extend": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/just-extend/-/just-extend-4.2.1.tgz", - "integrity": "sha512-g3UB796vUFIY90VIv/WX3L2c8CS2MdWUww3CNrYmqza1Fg0DURc2K/O4YrnklBdQarSJ/y8JnJYDGc+1iumQjg==", - "extraneous": true - }, - "node_modules/@ngageoint/mage.service/node_modules/jwa": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/jwa/-/jwa-1.4.1.tgz", - "integrity": "sha512-qiLX/xhEEFKUAJ6FiBMbes3w9ATzyk5W7Hvzpa/SLYdxNtng+gcurvrI7TbACjIXlsJyr05/S1oUhZrc63evQA==", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/istanbul-lib-report/node_modules/make-dir": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", + "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", + "extraneous": true, "dependencies": { - "buffer-equal-constant-time": "1.0.1", - "ecdsa-sig-formatter": "1.0.11", - "safe-buffer": "^5.0.1" + "pify": "^4.0.1", + "semver": "^5.6.0" + }, + "engines": { + "node": ">=6" } }, - "node_modules/@ngageoint/mage.service/node_modules/jws": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/jws/-/jws-3.2.2.tgz", - "integrity": "sha512-YHlZCB6lMTllWDtSPHz/ZXTsi8S00usEV6v1tjq8tOUZzw7DpSDWVXjXDre6ed1w/pd495ODpHZYSdkRTsa0HA==", - "peer": true, - "dependencies": { - "jwa": "^1.4.1", - "safe-buffer": "^5.0.1" + "node_modules/@ngageoint/mage.service/node_modules/istanbul-lib-report/node_modules/pify": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", + "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", + "extraneous": true, + "engines": { + "node": ">=6" } }, - "node_modules/@ngageoint/mage.service/node_modules/kareem": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/kareem/-/kareem-1.5.0.tgz", - "integrity": "sha1-4+QQHZ3P3imXadr0tNtk2JXRdEg=", - "peer": true - }, - "node_modules/@ngageoint/mage.service/node_modules/keyv": { - "version": "4.5.4", - "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz", - "integrity": "sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==", + "node_modules/@ngageoint/mage.service/node_modules/istanbul-lib-report/node_modules/semver": { + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", + "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", "extraneous": true, - "dependencies": { - "json-buffer": "3.0.1" + "bin": { + "semver": "bin/semver" } }, - "node_modules/@ngageoint/mage.service/node_modules/lazystream": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/lazystream/-/lazystream-1.0.1.tgz", - "integrity": "sha512-b94GiNHQNy6JNTrt5w6zNyffMrNkXZb3KTkCZJb2V1xaEGCk093vkZ2jk3tpaeP33/OiXC+WvK9AxUebnf5nbw==", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/istanbul-lib-report/node_modules/supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "extraneous": true, "dependencies": { - "readable-stream": "^2.0.5" + "has-flag": "^3.0.0" }, "engines": { - "node": ">= 0.6.3" + "node": ">=6" } }, - "node_modules/@ngageoint/mage.service/node_modules/lcov-parse": { - "version": "0.0.10", - "resolved": "https://registry.npmjs.org/lcov-parse/-/lcov-parse-0.0.10.tgz", - "integrity": "sha1-GwuP+ayceIklBYK3C3ExXZ2m2aM=", - "extraneous": true - }, - "node_modules/@ngageoint/mage.service/node_modules/ldap-filter": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/ldap-filter/-/ldap-filter-0.3.3.tgz", - "integrity": "sha512-/tFkx5WIn4HuO+6w9lsfxq4FN3O+fDZeO9Mek8dCD8rTUpqzRa766BOBO7BcGkn3X86m5+cBm1/2S/Shzz7gMg==", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/istanbul-lib-source-maps": { + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-3.0.6.tgz", + "integrity": "sha512-R47KzMtDJH6X4/YW9XTx+jrLnZnscW4VpNN+1PViSYTejLVPWv7oov+Duf8YQSPyVRUvueQqz1TcsC6mooZTXw==", + "extraneous": true, "dependencies": { - "assert-plus": "^1.0.0" + "debug": "^4.1.1", + "istanbul-lib-coverage": "^2.0.5", + "make-dir": "^2.1.0", + "rimraf": "^2.6.3", + "source-map": "^0.6.1" }, "engines": { - "node": ">=0.8" + "node": ">=6" } }, - "node_modules/@ngageoint/mage.service/node_modules/ldapauth-fork": { - "version": "5.0.5", - "resolved": "https://registry.npmjs.org/ldapauth-fork/-/ldapauth-fork-5.0.5.tgz", - "integrity": "sha512-LWUk76+V4AOZbny/3HIPQtGPWZyA3SW2tRhsWIBi9imP22WJktKLHV1ofd8Jo/wY7Ve6vAT7FCI5mEn3blZTjw==", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/istanbul-lib-source-maps/node_modules/make-dir": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", + "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", + "extraneous": true, "dependencies": { - "@types/ldapjs": "^2.2.2", - "bcryptjs": "^2.4.0", - "ldapjs": "^2.2.1", - "lru-cache": "^7.10.1" + "pify": "^4.0.1", + "semver": "^5.6.0" }, "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/@ngageoint/mage.service/node_modules/ldapauth-fork/node_modules/lru-cache": { - "version": "7.18.3", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", - "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", - "peer": true, - "engines": { - "node": ">=12" + "node": ">=6" } }, - "node_modules/@ngageoint/mage.service/node_modules/ldapjs": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/ldapjs/-/ldapjs-2.3.3.tgz", - "integrity": "sha512-75QiiLJV/PQqtpH+HGls44dXweviFwQ6SiIK27EqzKQ5jU/7UFrl2E5nLdQ3IYRBzJ/AVFJI66u0MZ0uofKYwg==", - "peer": true, - "dependencies": { - "abstract-logging": "^2.0.0", - "asn1": "^0.2.4", - "assert-plus": "^1.0.0", - "backoff": "^2.5.0", - "ldap-filter": "^0.3.3", - "once": "^1.4.0", - "vasync": "^2.2.0", - "verror": "^1.8.1" - }, + "node_modules/@ngageoint/mage.service/node_modules/istanbul-lib-source-maps/node_modules/pify": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", + "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", + "extraneous": true, "engines": { - "node": ">=10.13.0" + "node": ">=6" } }, - "node_modules/@ngageoint/mage.service/node_modules/levn": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", - "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", + "node_modules/@ngageoint/mage.service/node_modules/istanbul-lib-source-maps/node_modules/rimraf": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", + "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", + "deprecated": "Rimraf versions prior to v4 are no longer supported", "extraneous": true, "dependencies": { - "prelude-ls": "^1.2.1", - "type-check": "~0.4.0" + "glob": "^7.1.3" }, - "engines": { - "node": ">= 0.8.0" + "bin": { + "rimraf": "bin.js" } }, - "node_modules/@ngageoint/mage.service/node_modules/lie": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/lie/-/lie-3.3.0.tgz", - "integrity": "sha512-UaiMJzeWRlEujzAuw5LokY1L5ecNQYZKfmyZ9L7wDHb/p5etKaxXhohBcrw0EYby+G/NA52vRSN4N39dxHAIwQ==", + "node_modules/@ngageoint/mage.service/node_modules/istanbul-lib-source-maps/node_modules/semver": { + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", + "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", "extraneous": true, - "dependencies": { - "immediate": "~3.0.5" + "bin": { + "semver": "bin/semver" } }, - "node_modules/@ngageoint/mage.service/node_modules/load-json-file": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-4.0.0.tgz", - "integrity": "sha1-L19Fq5HjMhYjT9U62rZo607AmTs=", + "node_modules/@ngageoint/mage.service/node_modules/istanbul-reports": { + "version": "2.2.7", + "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-2.2.7.tgz", + "integrity": "sha512-uu1F/L1o5Y6LzPVSVZXNOoD/KXpJue9aeLRd0sM9uMXfZvzomB0WxVamWb5ue8kA2vVWEmW7EG+A5n3f1kqHKg==", "extraneous": true, "dependencies": { - "graceful-fs": "^4.1.2", - "parse-json": "^4.0.0", - "pify": "^3.0.0", - "strip-bom": "^3.0.0" + "html-escaper": "^2.0.0" }, "engines": { - "node": ">=4" + "node": ">=6" } }, - "node_modules/@ngageoint/mage.service/node_modules/locate-path": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", - "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", + "node_modules/@ngageoint/mage.service/node_modules/jackspeak": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-3.4.0.tgz", + "integrity": "sha512-JVYhQnN59LVPFCEcVa2C3CrEKYacvjRfqIQl+h8oi91aLYQVWRYbxjPcv1bUiUy/kLmQaANrYfNMCO3kuEDHfw==", "extraneous": true, "dependencies": { - "p-locate": "^5.0.0" + "@isaacs/cliui": "^8.0.2" }, "engines": { - "node": ">=10" + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "optionalDependencies": { + "@pkgjs/parseargs": "^0.11.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/lodash": { - "version": "4.17.21", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", - "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", - "peer": true - }, - "node_modules/@ngageoint/mage.service/node_modules/lodash.defaults": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/lodash.defaults/-/lodash.defaults-4.2.0.tgz", - "integrity": "sha1-0JF4cW/+pN3p5ft7N/bwgCJ0WAw=", - "peer": true - }, - "node_modules/@ngageoint/mage.service/node_modules/lodash.difference": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/lodash.difference/-/lodash.difference-4.5.0.tgz", - "integrity": "sha1-nMtOUF1Ia5FlE0V3KIWi3yf9AXw=", - "peer": true - }, - "node_modules/@ngageoint/mage.service/node_modules/lodash.flatten": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/lodash.flatten/-/lodash.flatten-4.4.0.tgz", - "integrity": "sha1-8xwiIlqWMtK7+OSt2+8kCqdlph8=", + "node_modules/@ngageoint/mage.service/node_modules/js-stringify": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/js-stringify/-/js-stringify-1.0.2.tgz", + "integrity": "sha512-rtS5ATOo2Q5k1G+DADISilDA6lv79zIiwFd6CcjuIxGKLFm5C+RLImRscVap9k55i+MOZwgliw+NejvkLuGD5g==", "peer": true }, - "node_modules/@ngageoint/mage.service/node_modules/lodash.flattendeep": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/lodash.flattendeep/-/lodash.flattendeep-4.4.0.tgz", - "integrity": "sha1-+wMJF/hqMTTlvJvsDWngAT3f7bI=", + "node_modules/@ngageoint/mage.service/node_modules/js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", "extraneous": true }, - "node_modules/@ngageoint/mage.service/node_modules/lodash.get": { - "version": "4.4.2", - "resolved": "https://registry.npmjs.org/lodash.get/-/lodash.get-4.4.2.tgz", - "integrity": "sha1-LRd/ZS+jHpObRDjVNBSZ36OCXpk=", - "peer": true - }, - "node_modules/@ngageoint/mage.service/node_modules/lodash.includes": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/lodash.includes/-/lodash.includes-4.3.0.tgz", - "integrity": "sha1-YLuYqHy5I8aMoeUTJUgzFISfVT8=", - "peer": true + "node_modules/@ngageoint/mage.service/node_modules/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==", + "license": "MIT", + "peer": true, + "dependencies": { + "argparse": "^2.0.1" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } }, - "node_modules/@ngageoint/mage.service/node_modules/lodash.isboolean": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/lodash.isboolean/-/lodash.isboolean-3.0.3.tgz", - "integrity": "sha1-bC4XHbKiV82WgC/UOwGyDV9YcPY=", + "node_modules/@ngageoint/mage.service/node_modules/js-yaml/node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "license": "Python-2.0", "peer": true }, - "node_modules/@ngageoint/mage.service/node_modules/lodash.isinteger": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/lodash.isinteger/-/lodash.isinteger-4.0.4.tgz", - "integrity": "sha1-YZwK89A/iwTDH1iChAt3sRzWg0M=", + "node_modules/@ngageoint/mage.service/node_modules/jsbn": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-1.1.0.tgz", + "integrity": "sha512-4bYVV3aAMtDTTu4+xsDYa6sy9GyJ69/amsu9sYF2zqjiEoZA5xJi3BrfX3uY+/IekIu7MwdObdbDWpoZdBv3/A==", "peer": true }, - "node_modules/@ngageoint/mage.service/node_modules/lodash.isnumber": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/lodash.isnumber/-/lodash.isnumber-3.0.3.tgz", - "integrity": "sha1-POdoEMWSjQM1IwGsKHMX8RwLH/w=", - "peer": true + "node_modules/@ngageoint/mage.service/node_modules/jsesc": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", + "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", + "extraneous": true, + "bin": { + "jsesc": "bin/jsesc" + }, + "engines": { + "node": ">=4" + } }, - "node_modules/@ngageoint/mage.service/node_modules/lodash.isplainobject": { - "version": "4.0.6", - "resolved": "https://registry.npmjs.org/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz", - "integrity": "sha1-fFJqUtibRcRcxpC4gWO+BJf1UMs=", - "peer": true + "node_modules/@ngageoint/mage.service/node_modules/json-buffer": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz", + "integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==", + "extraneous": true }, - "node_modules/@ngageoint/mage.service/node_modules/lodash.isstring": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/lodash.isstring/-/lodash.isstring-4.0.1.tgz", - "integrity": "sha1-1SfftUVuynzJu5XV2ur4i6VKVFE=", - "peer": true + "node_modules/@ngageoint/mage.service/node_modules/json-parse-better-errors": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz", + "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==", + "extraneous": true }, - "node_modules/@ngageoint/mage.service/node_modules/lodash.merge": { - "version": "4.6.2", - "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", - "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", + "node_modules/@ngageoint/mage.service/node_modules/json-schema": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.4.0.tgz", + "integrity": "sha512-es94M3nTIfsEPisRafak+HDLfHXnKBhV3vU5eqPcS3flIWqcxJWgXHXiey3YrpaNsanY5ei1VoYEbOzijuq9BA==", "extraneous": true }, - "node_modules/@ngageoint/mage.service/node_modules/lodash.once": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/lodash.once/-/lodash.once-4.1.1.tgz", - "integrity": "sha1-DdOXEhPHxW34gJd9UEyI+0cal6w=", - "peer": true + "node_modules/@ngageoint/mage.service/node_modules/json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "extraneous": true }, - "node_modules/@ngageoint/mage.service/node_modules/lodash.union": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/lodash.union/-/lodash.union-4.6.0.tgz", - "integrity": "sha1-SLtQiECfFvGCFmZkHETdGqrjzYg=", - "peer": true + "node_modules/@ngageoint/mage.service/node_modules/json-stable-stringify-without-jsonify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", + "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==", + "extraneous": true }, - "node_modules/@ngageoint/mage.service/node_modules/log-driver": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/log-driver/-/log-driver-1.2.7.tgz", - "integrity": "sha512-U7KCmLdqsGHBLeWqYlFA0V0Sl6P08EE1ZrmA9cxjUE0WVqT9qnyVDPz1kzpFEP0jdJuFnasWIfSd7fsaNXkpbg==", - "extraneous": true, - "engines": { - "node": ">=0.8.6" - } + "node_modules/@ngageoint/mage.service/node_modules/json-stringify-safe": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", + "integrity": "sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA==", + "extraneous": true }, - "node_modules/@ngageoint/mage.service/node_modules/log-symbols": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-3.0.0.tgz", - "integrity": "sha512-dSkNGuI7iG3mfvDzUuYZyvk5dD9ocYCYzNU6CYDE6+Xqd+gwme6Z00NS3dUh8mq/73HaEtT7m6W+yUPtU6BZnQ==", - "extraneous": true, + "node_modules/@ngageoint/mage.service/node_modules/json2csv": { + "version": "4.5.4", + "resolved": "https://registry.npmjs.org/json2csv/-/json2csv-4.5.4.tgz", + "integrity": "sha512-YxBhY4Lmn8IvVZ36nqg5omxneLy9JlorkqW1j/EDCeqvmi+CQ4uM+wsvXlcIqvGDewIPXMC/O/oF8DX9EH5aoA==", + "deprecated": "Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.", + "license": "MIT", + "peer": true, "dependencies": { - "chalk": "^2.4.2" + "commander": "^2.15.1", + "jsonparse": "^1.3.1", + "lodash.get": "^4.4.2" }, - "engines": { - "node": ">=8" + "bin": { + "json2csv": "bin/json2csv.js" } }, - "node_modules/@ngageoint/mage.service/node_modules/log-symbols/node_modules/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==", - "extraneous": true, - "dependencies": { - "color-convert": "^1.9.0" - }, - "engines": { - "node": ">=4" + "node_modules/@ngageoint/mage.service/node_modules/json2csv/node_modules/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==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/jsonfile": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", + "integrity": "sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==", + "peer": true, + "optionalDependencies": { + "graceful-fs": "^4.1.6" } }, - "node_modules/@ngageoint/mage.service/node_modules/log-symbols/node_modules/chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "extraneous": true, + "node_modules/@ngageoint/mage.service/node_modules/jsonparse": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/jsonparse/-/jsonparse-1.3.1.tgz", + "integrity": "sha512-POQXvpdL69+CluYsillJ7SUhKvytYjW9vG/GKpnf+xP8UWgYEM/RaMzHHofbALDiKbbP1W8UEYmgGl39WkPZsg==", + "engines": [ + "node >= 0.2.0" + ], + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/JSONStream": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/JSONStream/-/JSONStream-1.3.5.tgz", + "integrity": "sha512-E+iruNOY8VV9s4JEbe1aNEm6MiszPRr/UfcHMz0TQh1BXSxHK+ASV1R6W4HpjBhSeS+54PIsAMCBmwD06LLsqQ==", + "peer": true, "dependencies": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" + "jsonparse": "^1.2.0", + "through": ">=2.2.7 <3" + }, + "bin": { + "JSONStream": "bin.js" }, "engines": { - "node": ">=4" + "node": "*" } }, - "node_modules/@ngageoint/mage.service/node_modules/log-symbols/node_modules/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==", - "extraneous": true, + "node_modules/@ngageoint/mage.service/node_modules/jsonwebtoken": { + "version": "9.0.2", + "resolved": "https://registry.npmjs.org/jsonwebtoken/-/jsonwebtoken-9.0.2.tgz", + "integrity": "sha512-PRp66vJ865SSqOlgqS8hujT5U4AOgMfhrwYIuIhfKaoSCZcirrmASQr8CX7cUg+RMih+hgznrjp99o+W4pJLHQ==", + "peer": true, "dependencies": { - "color-name": "1.1.3" - } - }, - "node_modules/@ngageoint/mage.service/node_modules/log-symbols/node_modules/color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", - "extraneous": true - }, - "node_modules/@ngageoint/mage.service/node_modules/log-symbols/node_modules/has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", - "extraneous": true, + "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": "^7.5.4" + }, "engines": { - "node": ">=4" + "node": ">=12", + "npm": ">=6" } }, - "node_modules/@ngageoint/mage.service/node_modules/log-symbols/node_modules/supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "node_modules/@ngageoint/mage.service/node_modules/jsprim": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.2.tgz", + "integrity": "sha512-P2bSOMAc/ciLz6DzgjVlGJP9+BrJWu5UDGK70C2iweC5QBIeFf0ZXRvGjEj2uYgrY2MkAAhsSWHDWlFtEroZWw==", "extraneous": true, "dependencies": { - "has-flag": "^3.0.0" + "assert-plus": "1.0.0", + "extsprintf": "1.3.0", + "json-schema": "0.4.0", + "verror": "1.10.0" }, "engines": { - "node": ">=4" + "node": ">=0.6.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/lolex": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/lolex/-/lolex-4.2.0.tgz", - "integrity": "sha512-gKO5uExCXvSm6zbF562EvM+rd1kQDnB9AZBbiQVzf1ZmdDpxUSvpnAaVOP83N/31mRK8Ml8/VE8DMvsAZQ+7wg==", - "extraneous": true - }, - "node_modules/@ngageoint/mage.service/node_modules/loupe": { - "version": "2.3.4", - "resolved": "https://registry.npmjs.org/loupe/-/loupe-2.3.4.tgz", - "integrity": "sha512-OvKfgCC2Ndby6aSTREl5aCCPTNIzlDfQZvZxNUrBrihDhL3xcrYegTblhmEiCrg2kKQz4XsFIaemE5BF4ybSaQ==", + "node_modules/@ngageoint/mage.service/node_modules/jsprim/node_modules/verror": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", + "integrity": "sha512-ZZKSmDAEFOijERBLkmYfJ+vmk3w+7hOLYDNkRCuRuMJGEmqYNCNLyBBFwWKVMhfwaEF3WOd0Zlw86U/WC/+nYw==", + "engines": [ + "node >=0.6.0" + ], "extraneous": true, "dependencies": { - "get-func-name": "^2.0.0" + "assert-plus": "^1.0.0", + "core-util-is": "1.0.2", + "extsprintf": "^1.2.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/lru-cache": { - "version": "4.1.5", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz", - "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==", + "node_modules/@ngageoint/mage.service/node_modules/jstransformer": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/jstransformer/-/jstransformer-1.0.0.tgz", + "integrity": "sha512-C9YK3Rf8q6VAPDCCU9fnqo3mAfOH6vUGnMcP4AQAYIEpWtfGLpwOTmZ+igtdK5y+VvI2n3CyYSzy4Qh34eq24A==", "peer": true, "dependencies": { - "pseudomap": "^1.0.2", - "yallist": "^2.1.2" + "is-promise": "^2.0.0", + "promise": "^7.0.1" } }, - "node_modules/@ngageoint/mage.service/node_modules/lru-cache/node_modules/yallist": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", - "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=", - "peer": true - }, - "node_modules/@ngageoint/mage.service/node_modules/make-dir": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", - "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", + "node_modules/@ngageoint/mage.service/node_modules/jszip": { + "version": "3.10.1", + "resolved": "https://registry.npmjs.org/jszip/-/jszip-3.10.1.tgz", + "integrity": "sha512-xXDvecyTpGLrqFrvkrUSoxxfJI5AH7U8zxxtVclpsUtMCq4JQ290LY8AW5c7Ggnr/Y/oK+bQMbqK2qmtk3pN4g==", "extraneous": true, + "license": "(MIT OR GPL-3.0-or-later)", "dependencies": { - "pify": "^4.0.1", - "semver": "^5.6.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/@ngageoint/mage.service/node_modules/make-dir/node_modules/pify": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", - "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", - "extraneous": true, - "engines": { - "node": ">=6" + "lie": "~3.3.0", + "pako": "~1.0.2", + "readable-stream": "~2.3.6", + "setimmediate": "^1.0.5" } }, - "node_modules/@ngageoint/mage.service/node_modules/map-stream": { - "version": "0.0.7", - "resolved": "https://registry.npmjs.org/map-stream/-/map-stream-0.0.7.tgz", - "integrity": "sha1-ih8HiW2CsQkmvTdEokIACfiJdKg=", - "peer": true + "node_modules/@ngageoint/mage.service/node_modules/jszip/node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", + "extraneous": true }, - "node_modules/@ngageoint/mage.service/node_modules/md5.js": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.5.tgz", - "integrity": "sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/jszip/node_modules/readable-stream": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", + "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", + "extraneous": true, "dependencies": { - "hash-base": "^3.0.0", - "inherits": "^2.0.1", - "safe-buffer": "^5.1.2" - } - }, - "node_modules/@ngageoint/mage.service/node_modules/media-typer": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", - "integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=", - "peer": true, - "engines": { - "node": ">= 0.6" + "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" } }, - "node_modules/@ngageoint/mage.service/node_modules/memory-pager": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/memory-pager/-/memory-pager-1.5.0.tgz", - "integrity": "sha512-ZS4Bp4r/Zoeq6+NLJpP+0Zzm0pR8whtGPf1XExKLJBAczGMnSi3It14OiNCStjQjM6NU1okjQGSxgEZN8eBYKg==", + "node_modules/@ngageoint/mage.service/node_modules/jszip/node_modules/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==", "extraneous": true }, - "node_modules/@ngageoint/mage.service/node_modules/memorystream": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/memorystream/-/memorystream-0.3.1.tgz", - "integrity": "sha1-htcJCzDORV1j+64S3aUaR93K+bI=", + "node_modules/@ngageoint/mage.service/node_modules/jszip/node_modules/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==", "extraneous": true, - "engines": { - "node": ">= 0.10.0" + "dependencies": { + "safe-buffer": "~5.1.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/meow": { - "version": "12.1.1", - "resolved": "https://registry.npmjs.org/meow/-/meow-12.1.1.tgz", - "integrity": "sha512-BhXM0Au22RwUneMPwSCnyhTOizdWoIEPU9sp0Aqa1PnDMR5Wv2FGXYDjuzJEIX+Eo2Rb8xuYe5jrnm5QowQFkw==", + "node_modules/@ngageoint/mage.service/node_modules/junk": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/junk/-/junk-4.0.1.tgz", + "integrity": "sha512-Qush0uP+G8ZScpGMZvHUiRfI0YBWuB3gVBYlI0v0vvOJt5FLicco+IkP0a50LqTTQhmts/m6tP5SWE+USyIvcQ==", "extraneous": true, "engines": { - "node": ">=16.10" + "node": ">=12.20" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@ngageoint/mage.service/node_modules/merge-descriptors": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", - "integrity": "sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E=", - "peer": true - }, - "node_modules/@ngageoint/mage.service/node_modules/merge-source-map": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/merge-source-map/-/merge-source-map-1.1.0.tgz", - "integrity": "sha512-Qkcp7P2ygktpMPh2mCQZaf3jhN6D3Z/qVZHSdWvQ+2Ef5HgRAPBO57A77+ENm0CPx2+1Ce/MYKi3ymqdfuqibw==", - "extraneous": true, - "dependencies": { - "source-map": "^0.6.1" - } + "node_modules/@ngageoint/mage.service/node_modules/just-extend": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/just-extend/-/just-extend-4.2.1.tgz", + "integrity": "sha512-g3UB796vUFIY90VIv/WX3L2c8CS2MdWUww3CNrYmqza1Fg0DURc2K/O4YrnklBdQarSJ/y8JnJYDGc+1iumQjg==", + "extraneous": true }, - "node_modules/@ngageoint/mage.service/node_modules/merge2": { + "node_modules/@ngageoint/mage.service/node_modules/jwa": { "version": "1.4.1", - "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", - "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", - "extraneous": true, - "engines": { - "node": ">= 8" - } - }, - "node_modules/@ngageoint/mage.service/node_modules/methods": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", - "integrity": "sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4=", + "resolved": "https://registry.npmjs.org/jwa/-/jwa-1.4.1.tgz", + "integrity": "sha512-qiLX/xhEEFKUAJ6FiBMbes3w9ATzyk5W7Hvzpa/SLYdxNtng+gcurvrI7TbACjIXlsJyr05/S1oUhZrc63evQA==", "peer": true, - "engines": { - "node": ">= 0.6" + "dependencies": { + "buffer-equal-constant-time": "1.0.1", + "ecdsa-sig-formatter": "1.0.11", + "safe-buffer": "^5.0.1" } }, - "node_modules/@ngageoint/mage.service/node_modules/mgrs": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/mgrs/-/mgrs-1.0.0.tgz", - "integrity": "sha1-+5FYjnjJACVnI5XLQLJffNatGCk=", - "peer": true - }, - "node_modules/@ngageoint/mage.service/node_modules/micromatch": { - "version": "4.0.5", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", - "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", - "extraneous": true, + "node_modules/@ngageoint/mage.service/node_modules/jws": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/jws/-/jws-3.2.2.tgz", + "integrity": "sha512-YHlZCB6lMTllWDtSPHz/ZXTsi8S00usEV6v1tjq8tOUZzw7DpSDWVXjXDre6ed1w/pd495ODpHZYSdkRTsa0HA==", + "peer": true, "dependencies": { - "braces": "^3.0.2", - "picomatch": "^2.3.1" - }, - "engines": { - "node": ">=8.6" + "jwa": "^1.4.1", + "safe-buffer": "^5.0.1" } }, - "node_modules/@ngageoint/mage.service/node_modules/mime": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", - "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", + "node_modules/@ngageoint/mage.service/node_modules/kareem": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/kareem/-/kareem-2.5.1.tgz", + "integrity": "sha512-7jFxRVm+jD+rkq3kY0iZDJfsO2/t4BBPeEb2qKn2lR/9KhuksYk5hxzfRYWMPV8P/x2d0kHD306YyWLzjjH+uA==", "peer": true, - "bin": { - "mime": "cli.js" - }, "engines": { - "node": ">=4" + "node": ">=12.0.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/mime-db": { - "version": "1.52.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", - "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", - "peer": true, - "engines": { - "node": ">= 0.6" + "node_modules/@ngageoint/mage.service/node_modules/keyv": { + "version": "4.5.4", + "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz", + "integrity": "sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==", + "extraneous": true, + "dependencies": { + "json-buffer": "3.0.1" } }, - "node_modules/@ngageoint/mage.service/node_modules/mime-types": { - "version": "2.1.35", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", - "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", + "node_modules/@ngageoint/mage.service/node_modules/lazystream": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/lazystream/-/lazystream-1.0.1.tgz", + "integrity": "sha512-b94GiNHQNy6JNTrt5w6zNyffMrNkXZb3KTkCZJb2V1xaEGCk093vkZ2jk3tpaeP33/OiXC+WvK9AxUebnf5nbw==", "peer": true, "dependencies": { - "mime-db": "1.52.0" + "readable-stream": "^2.0.5" }, "engines": { - "node": ">= 0.6" + "node": ">= 0.6.3" } }, - "node_modules/@ngageoint/mage.service/node_modules/mimic-fn": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", - "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", - "optional": true, - "peer": true, - "engines": { - "node": ">=6" - } + "node_modules/@ngageoint/mage.service/node_modules/lazystream/node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", + "peer": true }, - "node_modules/@ngageoint/mage.service/node_modules/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==", + "node_modules/@ngageoint/mage.service/node_modules/lazystream/node_modules/readable-stream": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", + "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", "peer": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "dependencies": { + "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" } }, - "node_modules/@ngageoint/mage.service/node_modules/minimalistic-assert": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", - "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==", - "peer": true - }, - "node_modules/@ngageoint/mage.service/node_modules/minimalistic-crypto-utils": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz", - "integrity": "sha1-9sAMHAsIIkblxNmd+4x8CDsrWCo=", + "node_modules/@ngageoint/mage.service/node_modules/lazystream/node_modules/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==", "peer": true }, - "node_modules/@ngageoint/mage.service/node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "node_modules/@ngageoint/mage.service/node_modules/lazystream/node_modules/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==", "peer": true, "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" + "safe-buffer": "~5.1.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/minimist": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", - "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", - "peer": true, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node_modules/@ngageoint/mage.service/node_modules/lcov-parse": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/lcov-parse/-/lcov-parse-1.0.0.tgz", + "integrity": "sha512-aprLII/vPzuQvYZnDRU78Fns9I2Ag3gi4Ipga/hxnVMCZC8DnR2nI7XBqrPoywGfxqIx/DgarGvDJZAD3YBTgQ==", + "extraneous": true, + "license": "BSD-3-Clause", + "bin": { + "lcov-parse": "bin/cli.js" } - }, - "node_modules/@ngageoint/mage.service/node_modules/minipass": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz", - "integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==", - "optional": true, + }, + "node_modules/@ngageoint/mage.service/node_modules/ldap-filter": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/ldap-filter/-/ldap-filter-0.3.3.tgz", + "integrity": "sha512-/tFkx5WIn4HuO+6w9lsfxq4FN3O+fDZeO9Mek8dCD8rTUpqzRa766BOBO7BcGkn3X86m5+cBm1/2S/Shzz7gMg==", "peer": true, + "dependencies": { + "assert-plus": "^1.0.0" + }, "engines": { - "node": ">=8" + "node": ">=0.8" } }, - "node_modules/@ngageoint/mage.service/node_modules/minizlib": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz", - "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==", - "optional": true, + "node_modules/@ngageoint/mage.service/node_modules/ldapauth-fork": { + "version": "5.0.5", + "resolved": "https://registry.npmjs.org/ldapauth-fork/-/ldapauth-fork-5.0.5.tgz", + "integrity": "sha512-LWUk76+V4AOZbny/3HIPQtGPWZyA3SW2tRhsWIBi9imP22WJktKLHV1ofd8Jo/wY7Ve6vAT7FCI5mEn3blZTjw==", "peer": true, "dependencies": { - "minipass": "^3.0.0", - "yallist": "^4.0.0" + "@types/ldapjs": "^2.2.2", + "bcryptjs": "^2.4.0", + "ldapjs": "^2.2.1", + "lru-cache": "^7.10.1" }, "engines": { - "node": ">= 8" + "node": ">=0.8.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/minizlib/node_modules/minipass": { - "version": "3.3.6", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", - "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", - "optional": true, + "node_modules/@ngageoint/mage.service/node_modules/ldapjs": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/ldapjs/-/ldapjs-2.3.3.tgz", + "integrity": "sha512-75QiiLJV/PQqtpH+HGls44dXweviFwQ6SiIK27EqzKQ5jU/7UFrl2E5nLdQ3IYRBzJ/AVFJI66u0MZ0uofKYwg==", + "deprecated": "This package has been decomissioned. See https://github.com/ldapjs/node-ldapjs/blob/8ffd0bc9c149088a10ec4c1ec6a18450f76ad05d/README.md", "peer": true, "dependencies": { - "yallist": "^4.0.0" + "abstract-logging": "^2.0.0", + "asn1": "^0.2.4", + "assert-plus": "^1.0.0", + "backoff": "^2.5.0", + "ldap-filter": "^0.3.3", + "once": "^1.4.0", + "vasync": "^2.2.0", + "verror": "^1.8.1" }, "engines": { - "node": ">=8" + "node": ">=10.13.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/mkdirp": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", - "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", - "optional": true, - "peer": true, - "bin": { - "mkdirp": "bin/cmd.js" + "node_modules/@ngageoint/mage.service/node_modules/levn": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", + "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", + "extraneous": true, + "dependencies": { + "prelude-ls": "^1.2.1", + "type-check": "~0.4.0" }, "engines": { - "node": ">=10" + "node": ">= 0.8.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/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==", - "peer": true + "node_modules/@ngageoint/mage.service/node_modules/lie": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/lie/-/lie-3.3.0.tgz", + "integrity": "sha512-UaiMJzeWRlEujzAuw5LokY1L5ecNQYZKfmyZ9L7wDHb/p5etKaxXhohBcrw0EYby+G/NA52vRSN4N39dxHAIwQ==", + "extraneous": true, + "dependencies": { + "immediate": "~3.0.5" + } }, - "node_modules/@ngageoint/mage.service/node_modules/mocha": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/mocha/-/mocha-7.2.0.tgz", - "integrity": "sha512-O9CIypScywTVpNaRrCAgoUnJgozpIofjKUYmJhiCIJMiuYnLI6otcb1/kpW9/n/tJODHGZ7i8aLQoDVsMtOKQQ==", - "extraneous": true, - "dependencies": { - "ansi-colors": "3.2.3", - "browser-stdout": "1.3.1", - "chokidar": "3.3.0", - "debug": "3.2.6", - "diff": "3.5.0", - "escape-string-regexp": "1.0.5", - "find-up": "3.0.0", - "glob": "7.1.3", - "growl": "1.10.5", - "he": "1.2.0", - "js-yaml": "3.13.1", - "log-symbols": "3.0.0", - "minimatch": "3.0.4", - "mkdirp": "0.5.5", - "ms": "2.1.1", - "node-environment-flags": "1.0.6", - "object.assign": "4.1.0", - "strip-json-comments": "2.0.1", - "supports-color": "6.0.0", - "which": "1.3.1", - "wide-align": "1.1.3", - "yargs": "13.3.2", - "yargs-parser": "13.1.2", - "yargs-unparser": "1.6.0" + "node_modules/@ngageoint/mage.service/node_modules/load-json-file": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-4.0.0.tgz", + "integrity": "sha512-Kx8hMakjX03tiGTLAIdJ+lL0htKnXjEZN6hk/tozf/WOuYGdZBJrZ+rCJRbVCugsjB3jMLn9746NsQIf5VjBMw==", + "extraneous": true, + "dependencies": { + "graceful-fs": "^4.1.2", + "parse-json": "^4.0.0", + "pify": "^3.0.0", + "strip-bom": "^3.0.0" }, - "bin": { - "_mocha": "bin/_mocha", - "mocha": "bin/mocha" + "engines": { + "node": ">=4" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/locate-path": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", + "extraneous": true, + "dependencies": { + "p-locate": "^5.0.0" }, "engines": { - "node": ">= 8.10.0" + "node": ">=10" }, "funding": { - "type": "opencollective", - "url": "https://opencollective.com/mochajs" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@ngageoint/mage.service/node_modules/mocha/node_modules/ansi-regex": { + "node_modules/@ngageoint/mage.service/node_modules/lodash": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/lodash.defaults": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/lodash.defaults/-/lodash.defaults-4.2.0.tgz", + "integrity": "sha512-qjxPLHd3r5DnsdGacqOMU6pb/avJzdh9tFX2ymgoZE27BmjXrNy/y4LoaiTeAb+O3gL8AfpJGtqfX/ae2leYYQ==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/lodash.difference": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.difference/-/lodash.difference-4.5.0.tgz", + "integrity": "sha512-dS2j+W26TQ7taQBGN8Lbbq04ssV3emRw4NY58WErlTO29pIqS0HmoT5aJ9+TUQ1N3G+JOZSji4eugsWwGp9yPA==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/lodash.flatten": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/lodash.flatten/-/lodash.flatten-4.4.0.tgz", + "integrity": "sha512-C5N2Z3DgnnKr0LOpv/hKCgKdb7ZZwafIrsesve6lmzvZIRZRGaZ/l6Q8+2W7NaT+ZwO3fFlSCzCzrDCFdJfZ4g==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/lodash.flattendeep": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/lodash.flattendeep/-/lodash.flattendeep-4.4.0.tgz", + "integrity": "sha512-uHaJFihxmJcEX3kT4I23ABqKKalJ/zDrDg0lsFtc1h+3uw49SIJ5beyhx5ExVRti3AvKoOJngIj7xz3oylPdWQ==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/lodash.get": { + "version": "4.4.2", + "resolved": "https://registry.npmjs.org/lodash.get/-/lodash.get-4.4.2.tgz", + "integrity": "sha512-z+Uw/vLuy6gQe8cfaFWD7p0wVv8fJl3mbzXh33RS+0oW2wvUqiRXiQ69gLWSLpgB5/6sU+r6BlQR0MBILadqTQ==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/lodash.includes": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/lodash.includes/-/lodash.includes-4.3.0.tgz", + "integrity": "sha512-W3Bx6mdkRTGtlJISOvVD/lbqjTlPPUDTMnlXZFnVwi9NKJ6tiAk6LVdlhZMm17VZisqhKcgzpO5Wz91PCt5b0w==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/lodash.isboolean": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/lodash.isboolean/-/lodash.isboolean-3.0.3.tgz", + "integrity": "sha512-Bz5mupy2SVbPHURB98VAcw+aHh4vRV5IPNhILUCsOzRmsTmSQ17jIuqopAentWoehktxGd9e/hbIXq980/1QJg==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/lodash.isinteger": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/lodash.isinteger/-/lodash.isinteger-4.0.4.tgz", + "integrity": "sha512-DBwtEWN2caHQ9/imiNeEA5ys1JoRtRfY3d7V9wkqtbycnAmTvRRmbHKDV4a0EYc678/dia0jrte4tjYwVBaZUA==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/lodash.isnumber": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/lodash.isnumber/-/lodash.isnumber-3.0.3.tgz", + "integrity": "sha512-QYqzpfwO3/CWf3XP+Z+tkQsfaLL/EnUlXWVkIk5FUPc4sBdTehEqZONuyRt2P67PXAk+NXmTBcc97zw9t1FQrw==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/lodash.isplainobject": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz", + "integrity": "sha512-oSXzaWypCMHkPC3NvBEaPHf0KsA5mvPrOPgQWDsbg8n7orZ290M0BmC/jgRZ4vcJ6DTAhjrsSYgdsW/F+MFOBA==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/lodash.isstring": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/lodash.isstring/-/lodash.isstring-4.0.1.tgz", + "integrity": "sha512-0wJxfxH1wgO3GrbuP+dTTk7op+6L41QCXbGINEmD+ny/G/eCqGzxyCsh7159S+mgDDcoarnBw6PC1PS5+wUGgw==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/lodash.merge": { + "version": "4.6.2", + "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", + "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/lodash.once": { "version": "4.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.1.tgz", - "integrity": "sha512-ILlv4k/3f6vfQ4OoP2AGvirOktlQ98ZEL1k9FaQjxa3L1abBgbuTDAdPOpvbGncC0BTVQrl+OM8xZGK6tWXt7g==", + "resolved": "https://registry.npmjs.org/lodash.once/-/lodash.once-4.1.1.tgz", + "integrity": "sha512-Sb487aTOCr9drQVL8pIxOzVhafOjZN9UU54hiN8PU3uAiSV7lx1yYNpbNmex2PK6dSJoNTSJUUswT651yww3Mg==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/lodash.union": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/lodash.union/-/lodash.union-4.6.0.tgz", + "integrity": "sha512-c4pB2CdGrGdjMKYLA+XiRDO7Y0PRQbm/Gzg8qMj+QH+pFVAoTp5sBpO0odL3FjoPCGjK96p6qsP+yQoiLoOBcw==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/log-driver": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/log-driver/-/log-driver-1.2.7.tgz", + "integrity": "sha512-U7KCmLdqsGHBLeWqYlFA0V0Sl6P08EE1ZrmA9cxjUE0WVqT9qnyVDPz1kzpFEP0jdJuFnasWIfSd7fsaNXkpbg==", "extraneous": true, "engines": { - "node": ">=6" + "node": ">=0.8.6" } }, - "node_modules/@ngageoint/mage.service/node_modules/mocha/node_modules/camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "node_modules/@ngageoint/mage.service/node_modules/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==", "extraneous": true, + "dependencies": { + "chalk": "^4.1.0", + "is-unicode-supported": "^0.1.0" + }, "engines": { - "node": ">=6" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@ngageoint/mage.service/node_modules/mocha/node_modules/cliui": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-5.0.0.tgz", - "integrity": "sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA==", + "node_modules/@ngageoint/mage.service/node_modules/lolex": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/lolex/-/lolex-4.2.0.tgz", + "integrity": "sha512-gKO5uExCXvSm6zbF562EvM+rd1kQDnB9AZBbiQVzf1ZmdDpxUSvpnAaVOP83N/31mRK8Ml8/VE8DMvsAZQ+7wg==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/loupe": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/loupe/-/loupe-2.3.7.tgz", + "integrity": "sha512-zSMINGVYkdpYSOBmLi0D1Uo7JU9nVdQKrHxC8eYlV+9YKK9WePqAlL7lSlorG/U2Fw1w0hTBmaa/jrQ3UbPHtA==", "extraneous": true, "dependencies": { - "string-width": "^3.1.0", - "strip-ansi": "^5.2.0", - "wrap-ansi": "^5.1.0" + "get-func-name": "^2.0.1" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/lru-cache": { + "version": "7.18.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", + "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", + "peer": true, + "engines": { + "node": ">=12" } }, - "node_modules/@ngageoint/mage.service/node_modules/mocha/node_modules/cliui/node_modules/string-width": { + "node_modules/@ngageoint/mage.service/node_modules/make-dir": { "version": "3.1.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", - "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", "extraneous": true, + "license": "MIT", "dependencies": { - "emoji-regex": "^7.0.1", - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^5.1.0" + "semver": "^6.0.0" }, "engines": { - "node": ">=6" + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@ngageoint/mage.service/node_modules/mocha/node_modules/debug": { - "version": "3.2.6", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", - "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", - "deprecated": "Debug versions >=3.2.0 <3.2.7 || >=4 <4.3.1 have a low-severity ReDos regression when used in a Node.js environment. It is recommended you upgrade to 3.2.7 or 4.3.1. (https://github.com/visionmedia/debug/issues/797)", + "node_modules/@ngageoint/mage.service/node_modules/make-dir/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", "extraneous": true, - "dependencies": { - "ms": "^2.1.1" + "license": "ISC", + "bin": { + "semver": "bin/semver.js" } }, - "node_modules/@ngageoint/mage.service/node_modules/mocha/node_modules/emoji-regex": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", - "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", - "extraneous": true + "node_modules/@ngageoint/mage.service/node_modules/map-stream": { + "version": "0.0.7", + "resolved": "https://registry.npmjs.org/map-stream/-/map-stream-0.0.7.tgz", + "integrity": "sha512-C0X0KQmGm3N2ftbTGBhSyuydQ+vV1LC3f3zPvT3RXHXNZrvfPZcoXp/N5DOa8vedX/rTMm2CjTtivFg2STJMRQ==", + "peer": true }, - "node_modules/@ngageoint/mage.service/node_modules/mocha/node_modules/esprima": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", - "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", - "extraneous": true, - "bin": { - "esparse": "bin/esparse.js", - "esvalidate": "bin/esvalidate.js" - }, + "node_modules/@ngageoint/mage.service/node_modules/math-intrinsics": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/math-intrinsics/-/math-intrinsics-1.1.0.tgz", + "integrity": "sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==", + "license": "MIT", + "peer": true, "engines": { - "node": ">=4" + "node": ">= 0.4" } }, - "node_modules/@ngageoint/mage.service/node_modules/mocha/node_modules/find-up": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", - "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", - "extraneous": true, - "dependencies": { - "locate-path": "^3.0.0" - }, + "node_modules/@ngageoint/mage.service/node_modules/media-typer": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", + "integrity": "sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==", + "peer": true, "engines": { - "node": ">=6" + "node": ">= 0.6" } }, - "node_modules/@ngageoint/mage.service/node_modules/mocha/node_modules/glob": { - "version": "7.1.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.3.tgz", - "integrity": "sha512-vcfuiIxogLV4DlGBHIUOwI0IbrJ8HWPc4MU7HzviGeNho/UJDfi6B5p3sHeWIQ0KGIU0Jpxi5ZHxemQfLkkAwQ==", + "node_modules/@ngageoint/mage.service/node_modules/memory-pager": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/memory-pager/-/memory-pager-1.5.0.tgz", + "integrity": "sha512-ZS4Bp4r/Zoeq6+NLJpP+0Zzm0pR8whtGPf1XExKLJBAczGMnSi3It14OiNCStjQjM6NU1okjQGSxgEZN8eBYKg==", + "optional": true, + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/memorystream": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/memorystream/-/memorystream-0.3.1.tgz", + "integrity": "sha512-S3UwM3yj5mtUSEfP41UZmt/0SCoVYUcU1rkXv+BQ5Ig8ndL4sPoJNBUJERafdPb5jjHJGuMgytgKvKIf58XNBw==", "extraneous": true, - "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" - }, "engines": { - "node": "*" + "node": ">= 0.10.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/mocha/node_modules/has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "node_modules/@ngageoint/mage.service/node_modules/meow": { + "version": "12.1.1", + "resolved": "https://registry.npmjs.org/meow/-/meow-12.1.1.tgz", + "integrity": "sha512-BhXM0Au22RwUneMPwSCnyhTOizdWoIEPU9sp0Aqa1PnDMR5Wv2FGXYDjuzJEIX+Eo2Rb8xuYe5jrnm5QowQFkw==", "extraneous": true, "engines": { - "node": ">=4" + "node": ">=16.10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@ngageoint/mage.service/node_modules/mocha/node_modules/is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", - "extraneous": true, - "engines": { - "node": ">=4" + "node_modules/@ngageoint/mage.service/node_modules/merge-descriptors": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.3.tgz", + "integrity": "sha512-gaNvAS7TZ897/rVaZ0nMtAyxNyi/pdbjbAwUpFQpN70GqnVfOiXpeUUMKRBmzXaSQ8DdTX4/0ms62r2K+hE6mQ==", + "license": "MIT", + "peer": true, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@ngageoint/mage.service/node_modules/mocha/node_modules/js-yaml": { - "version": "3.13.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.13.1.tgz", - "integrity": "sha512-YfbcO7jXDdyj0DGxYVSlSeQNHbD7XPWvrVWeVUujrQEoZzWJIRrCPoyk6kL6IAjAG2IolMK4T0hNUe0HOUs5Jw==", + "node_modules/@ngageoint/mage.service/node_modules/merge-source-map": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/merge-source-map/-/merge-source-map-1.1.0.tgz", + "integrity": "sha512-Qkcp7P2ygktpMPh2mCQZaf3jhN6D3Z/qVZHSdWvQ+2Ef5HgRAPBO57A77+ENm0CPx2+1Ce/MYKi3ymqdfuqibw==", "extraneous": true, "dependencies": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" - }, - "bin": { - "js-yaml": "bin/js-yaml.js" + "source-map": "^0.6.1" } }, - "node_modules/@ngageoint/mage.service/node_modules/mocha/node_modules/locate-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", - "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "node_modules/@ngageoint/mage.service/node_modules/merge2": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", + "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", "extraneous": true, - "dependencies": { - "p-locate": "^3.0.0", - "path-exists": "^3.0.0" - }, "engines": { - "node": ">=6" + "node": ">= 8" } }, - "node_modules/@ngageoint/mage.service/node_modules/mocha/node_modules/minimatch": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", - "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", - "extraneous": true, - "dependencies": { - "brace-expansion": "^1.1.7" - }, + "node_modules/@ngageoint/mage.service/node_modules/methods": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", + "integrity": "sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==", + "peer": true, "engines": { - "node": "*" + "node": ">= 0.6" } }, - "node_modules/@ngageoint/mage.service/node_modules/mocha/node_modules/mkdirp": { - "version": "0.5.5", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", - "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", + "node_modules/@ngageoint/mage.service/node_modules/mgrs": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/mgrs/-/mgrs-1.0.0.tgz", + "integrity": "sha512-awNbTOqCxK1DBGjalK3xqWIstBZgN6fxsMSiXLs9/spqWkF2pAhb2rrYCFSsr1/tT7PhcDGjZndG8SWYn0byYA==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/micromatch": { + "version": "4.0.7", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.7.tgz", + "integrity": "sha512-LPP/3KorzCwBxfeUuZmaR6bG2kdeHSbe0P2tY3FLRU4vYrjYz5hI4QZwV0njUx3jeuKe67YukQ1LSPZBKDqO/Q==", "extraneous": true, "dependencies": { - "minimist": "^1.2.5" + "braces": "^3.0.3", + "picomatch": "^2.3.1" }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/mime": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", + "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", + "license": "MIT", + "peer": true, "bin": { - "mkdirp": "bin/cmd.js" + "mime": "cli.js" + }, + "engines": { + "node": ">=4" } }, - "node_modules/@ngageoint/mage.service/node_modules/mocha/node_modules/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==", - "extraneous": true + "node_modules/@ngageoint/mage.service/node_modules/mime-db": { + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", + "peer": true, + "engines": { + "node": ">= 0.6" + } }, - "node_modules/@ngageoint/mage.service/node_modules/mocha/node_modules/object.assign": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.0.tgz", - "integrity": "sha512-exHJeq6kBKj58mqGyTQ9DFvrZC/eR6OwxzoM9YRoGBqrXYonaFyGiFMuc9VZrXf7DarreEwMpurG3dd+CNyW5w==", - "extraneous": true, + "node_modules/@ngageoint/mage.service/node_modules/mime-types": { + "version": "2.1.35", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", + "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", + "peer": true, "dependencies": { - "define-properties": "^1.1.2", - "function-bind": "^1.1.1", - "has-symbols": "^1.0.0", - "object-keys": "^1.0.11" + "mime-db": "1.52.0" }, "engines": { - "node": ">= 0.4" + "node": ">= 0.6" } }, - "node_modules/@ngageoint/mage.service/node_modules/mocha/node_modules/p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", - "extraneous": true, - "dependencies": { - "p-try": "^2.0.0" - }, + "node_modules/@ngageoint/mage.service/node_modules/mimic-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", + "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", + "optional": true, + "peer": true, "engines": { "node": ">=6" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/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==", + "optional": true, + "peer": true, + "engines": { + "node": ">=10" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@ngageoint/mage.service/node_modules/mocha/node_modules/p-locate": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", - "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "node_modules/@ngageoint/mage.service/node_modules/minimatch": { + "version": "9.0.3", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", + "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", "extraneous": true, + "license": "ISC", "dependencies": { - "p-limit": "^2.0.0" + "brace-expansion": "^2.0.1" }, "engines": { - "node": ">=6" + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/@ngageoint/mage.service/node_modules/mocha/node_modules/strip-ansi": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", - "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "node_modules/@ngageoint/mage.service/node_modules/minimist": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", + "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", + "peer": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/minipass": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.2.tgz", + "integrity": "sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==", "extraneous": true, - "dependencies": { - "ansi-regex": "^4.1.0" - }, "engines": { - "node": ">=6" + "node": ">=16 || 14 >=14.17" } }, - "node_modules/@ngageoint/mage.service/node_modules/mocha/node_modules/supports-color": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.0.0.tgz", - "integrity": "sha512-on9Kwidc1IUQo+bQdhi8+Tijpo0e1SS6RoGo2guUwn5vdaxw8RXOF9Vb2ws+ihWOmh4JnCJOvaziZWP1VABaLg==", - "extraneous": true, + "node_modules/@ngageoint/mage.service/node_modules/mkdirp": { + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", + "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", + "peer": true, "dependencies": { - "has-flag": "^3.0.0" + "minimist": "^1.2.6" }, - "engines": { - "node": ">=6" + "bin": { + "mkdirp": "bin/cmd.js" } }, - "node_modules/@ngageoint/mage.service/node_modules/mocha/node_modules/wide-align": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.3.tgz", - "integrity": "sha512-QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA==", + "node_modules/@ngageoint/mage.service/node_modules/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==", + "optional": true, + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/mocha": { + "version": "10.8.2", + "resolved": "https://registry.npmjs.org/mocha/-/mocha-10.8.2.tgz", + "integrity": "sha512-VZlYo/WE8t1tstuRmqgeyBgCbJc/lEdopaa+axcKzTBJ+UIdlAB9XnmvTCAH4pwR4ElNInaedhEBmZD8iCSVEg==", "extraneous": true, + "license": "MIT", "dependencies": { - "string-width": "^1.0.2 || 2" + "ansi-colors": "^4.1.3", + "browser-stdout": "^1.3.1", + "chokidar": "^3.5.3", + "debug": "^4.3.5", + "diff": "^5.2.0", + "escape-string-regexp": "^4.0.0", + "find-up": "^5.0.0", + "glob": "^8.1.0", + "he": "^1.2.0", + "js-yaml": "^4.1.0", + "log-symbols": "^4.1.0", + "minimatch": "^5.1.6", + "ms": "^2.1.3", + "serialize-javascript": "^6.0.2", + "strip-json-comments": "^3.1.1", + "supports-color": "^8.1.1", + "workerpool": "^6.5.1", + "yargs": "^16.2.0", + "yargs-parser": "^20.2.9", + "yargs-unparser": "^2.0.0" + }, + "bin": { + "_mocha": "bin/_mocha", + "mocha": "bin/mocha.js" + }, + "engines": { + "node": ">= 14.0.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/mocha/node_modules/yargs": { - "version": "13.3.2", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-13.3.2.tgz", - "integrity": "sha512-AX3Zw5iPruN5ie6xGRIDgqkT+ZhnRlZMLMHAs8tg7nRruy2Nb+i5o9bwghAogtM08q1dpr2LVoS8KSTMYpWXUw==", + "node_modules/@ngageoint/mage.service/node_modules/mocha/node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/mocha/node_modules/glob": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/glob/-/glob-8.1.0.tgz", + "integrity": "sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ==", + "deprecated": "Glob versions prior to v9 are no longer supported", "extraneous": true, "dependencies": { - "cliui": "^5.0.0", - "find-up": "^3.0.0", - "get-caller-file": "^2.0.1", - "require-directory": "^2.1.1", - "require-main-filename": "^2.0.0", - "set-blocking": "^2.0.0", - "string-width": "^3.0.0", - "which-module": "^2.0.0", - "y18n": "^4.0.0", - "yargs-parser": "^13.1.2" + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^5.0.1", + "once": "^1.3.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/mocha/node_modules/js-yaml": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", + "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", + "extraneous": true, + "dependencies": { + "argparse": "^2.0.1" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" } }, - "node_modules/@ngageoint/mage.service/node_modules/mocha/node_modules/yargs-parser": { - "version": "13.1.2", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.2.tgz", - "integrity": "sha512-3lbsNRf/j+A4QuSZfDRA7HRSfWrzO0YjqTJd5kjAq37Zep1CEgaYmrH9Q3GwPiB9cHyd1Y1UwggGhJGoxipbzg==", + "node_modules/@ngageoint/mage.service/node_modules/mocha/node_modules/minimatch": { + "version": "5.1.6", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz", + "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==", "extraneous": true, + "license": "ISC", "dependencies": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=10" } }, - "node_modules/@ngageoint/mage.service/node_modules/mocha/node_modules/yargs/node_modules/string-width": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", - "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", + "node_modules/@ngageoint/mage.service/node_modules/mocha/node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/mocha/node_modules/supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", "extraneous": true, "dependencies": { - "emoji-regex": "^7.0.1", - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^5.1.0" + "has-flag": "^4.0.0" }, "engines": { - "node": ">=6" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/supports-color?sponsor=1" } }, "node_modules/@ngageoint/mage.service/node_modules/mock-fs": { - "version": "4.13.0", - "resolved": "https://registry.npmjs.org/mock-fs/-/mock-fs-4.13.0.tgz", - "integrity": "sha512-DD0vOdofJdoaRNtnWcrXe6RQbpHkPPmtqGq14uRX0F8ZKJ5nv89CVTYl/BZdppDxBDaV0hl75htg3abpEWlPZA==", - "extraneous": true + "version": "4.14.0", + "resolved": "https://registry.npmjs.org/mock-fs/-/mock-fs-4.14.0.tgz", + "integrity": "sha512-qYvlv/exQ4+svI3UOvPUpLDF0OMX5euvUH0Ny4N5QyRyhNdgAgUrVH3iUINSzEPLvx0kbo/Bp28GJKIqvE7URw==", + "extraneous": true, + "license": "MIT" }, "node_modules/@ngageoint/mage.service/node_modules/module-not-found-error": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/module-not-found-error/-/module-not-found-error-1.0.1.tgz", - "integrity": "sha1-z4tP9PKWQGdNbN0CsOO8UjwrvcA=", + "integrity": "sha512-pEk4ECWQXV6z2zjhRZUongnLJNUeGQJ3w6OQ5ctGwD+i5o93qjRQUk2Rt6VdNeu3sEP0AB4LcfvdebpxBRVr4g==", "extraneous": true }, "node_modules/@ngageoint/mage.service/node_modules/moment": { - "version": "2.29.4", - "resolved": "https://registry.npmjs.org/moment/-/moment-2.29.4.tgz", - "integrity": "sha512-5LC9SOxjSc2HF6vO2CyuTDNivEdoz2IvyJJGj6X8DJ0eFyfszE0QiEd+iXmBvUP3WHxSjFH/vIsA0EN00cgr8w==", + "version": "2.30.1", + "resolved": "https://registry.npmjs.org/moment/-/moment-2.30.1.tgz", + "integrity": "sha512-uEmtNhbDOrWPFS+hdjFCBfy9f2YoyzRpwcl+DqpC6taX21FzsTLQVbMV/W7PzNSX6x/bhC1zA3c2UQ5NzH6how==", + "license": "MIT", "peer": true, "engines": { "node": "*" } }, "node_modules/@ngageoint/mage.service/node_modules/mongodb": { - "version": "2.2.36", - "resolved": "https://registry.npmjs.org/mongodb/-/mongodb-2.2.36.tgz", - "integrity": "sha512-P2SBLQ8Z0PVx71ngoXwo12+FiSfbNfGOClAao03/bant5DgLNkOPAck5IaJcEk4gKlQhDEURzfR3xuBG1/B+IA==", + "version": "4.17.2", + "resolved": "https://registry.npmjs.org/mongodb/-/mongodb-4.17.2.tgz", + "integrity": "sha512-mLV7SEiov2LHleRJPMPrK2PMyhXFZt2UQLC4VD4pnth3jMjYKHhtqfwwkkvS/NXuo/Fp3vbhaNcXrIDaLRb9Tg==", "peer": true, "dependencies": { - "es6-promise": "3.2.1", - "mongodb-core": "2.1.20", - "readable-stream": "2.2.7" + "bson": "^4.7.2", + "mongodb-connection-string-url": "^2.6.0", + "socks": "^2.7.1" }, "engines": { - "node": ">=0.10.3" + "node": ">=12.9.0" + }, + "optionalDependencies": { + "@aws-sdk/credential-providers": "^3.186.0", + "@mongodb-js/saslprep": "^1.1.0" } }, "node_modules/@ngageoint/mage.service/node_modules/mongodb-connection-string-url": { "version": "2.6.0", "resolved": "https://registry.npmjs.org/mongodb-connection-string-url/-/mongodb-connection-string-url-2.6.0.tgz", "integrity": "sha512-WvTZlI9ab0QYtTYnuMLgobULWhokRjtC7db9LtcVfJ+Hsnyr5eo6ZtNAt3Ly24XZScGMelOcGtm7lSn0332tPQ==", - "extraneous": true, + "peer": true, "dependencies": { "@types/whatwg-url": "^8.2.1", "whatwg-url": "^11.0.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/mongodb-connection-string-url/node_modules/tr46": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-3.0.0.tgz", - "integrity": "sha512-l7FvfAHlcmulp8kr+flpQZmVwtu7nfRV7NZujtN0OqES8EL4O4e0qqzL0DC5gAvx/ZC/9lk6rhcUwYvkBnBnYA==", - "extraneous": true, - "dependencies": { - "punycode": "^2.1.1" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/@ngageoint/mage.service/node_modules/mongodb-connection-string-url/node_modules/webidl-conversions": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-7.0.0.tgz", - "integrity": "sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==", - "extraneous": true, - "engines": { - "node": ">=12" - } - }, - "node_modules/@ngageoint/mage.service/node_modules/mongodb-connection-string-url/node_modules/whatwg-url": { - "version": "11.0.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-11.0.0.tgz", - "integrity": "sha512-RKT8HExMpoYx4igMiVMY83lN6UeITKJlBQ+vR/8ZJ8OCdSiN3RwCq+9gH0+Xzj0+5IrM6i4j/6LuvzbZIQgEcQ==", - "extraneous": true, - "dependencies": { - "tr46": "^3.0.0", - "webidl-conversions": "^7.0.0" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/@ngageoint/mage.service/node_modules/mongodb-core": { - "version": "2.1.20", - "resolved": "https://registry.npmjs.org/mongodb-core/-/mongodb-core-2.1.20.tgz", - "integrity": "sha512-IN57CX5/Q1bhDq6ShAR6gIv4koFsZP7L8WOK1S0lR0pVDQaScffSMV5jxubLsmZ7J+UdqmykKw4r9hG3XQEGgQ==", - "peer": true, - "dependencies": { - "bson": "~1.0.4", - "require_optional": "~1.0.0" - } - }, "node_modules/@ngageoint/mage.service/node_modules/mongodb-memory-server": { - "version": "9.1.6", - "resolved": "https://registry.npmjs.org/mongodb-memory-server/-/mongodb-memory-server-9.1.6.tgz", - "integrity": "sha512-gzcpgGYlPhuKmria37W+bvYy6W+OkX2UVG7MoP41OWFvQv2Hn7A+fLXkV+lsMmhog1lMQprdV6AR+gixgheLaw==", + "version": "9.5.0", + "resolved": "https://registry.npmjs.org/mongodb-memory-server/-/mongodb-memory-server-9.5.0.tgz", + "integrity": "sha512-In3zRT40cLlVtpy7FK6b96Lby6JBAdXj8Kf9YrH4p1Aa2X4ptojq7SmiRR3x47Lo0/UCXXIwhJpkdbYY8kRZAw==", "extraneous": true, "hasInstallScript": true, + "license": "MIT", "dependencies": { - "mongodb-memory-server-core": "9.1.6", - "tslib": "^2.6.2" + "mongodb-memory-server-core": "9.5.0", + "tslib": "^2.6.3" }, "engines": { "node": ">=14.20.1" } }, "node_modules/@ngageoint/mage.service/node_modules/mongodb-memory-server-core": { - "version": "9.1.6", - "resolved": "https://registry.npmjs.org/mongodb-memory-server-core/-/mongodb-memory-server-core-9.1.6.tgz", - "integrity": "sha512-3H/dq5II+XcSbK80hicMw4zFlDxcpjt4oWJq76RlOVuLoaf3AFqVheR6Vqx9ymlIqER4Jni58FMCIIRbesia1A==", + "version": "9.5.0", + "resolved": "https://registry.npmjs.org/mongodb-memory-server-core/-/mongodb-memory-server-core-9.5.0.tgz", + "integrity": "sha512-Jb/V80JeYAKWaF4bPFme7SmTR6ew1PWgkpPUepLDfRraeN49i1cruxICeA4zz4T33W/o31N+zazP8wI8ebf7yw==", "extraneous": true, + "license": "MIT", "dependencies": { - "async-mutex": "^0.4.0", + "async-mutex": "^0.4.1", "camelcase": "^6.3.0", - "debug": "^4.3.4", + "debug": "^4.3.7", "find-cache-dir": "^3.3.2", - "follow-redirects": "^1.15.3", - "https-proxy-agent": "^7.0.2", - "mongodb": "^5.9.1", + "follow-redirects": "^1.15.9", + "https-proxy-agent": "^7.0.5", + "mongodb": "^5.9.2", "new-find-package-json": "^2.0.0", - "semver": "^7.5.4", - "tar-stream": "^3.0.0", - "tslib": "^2.6.2", - "yauzl": "^2.10.0" + "semver": "^7.6.3", + "tar-stream": "^3.1.7", + "tslib": "^2.6.3", + "yauzl": "^3.1.3" }, "engines": { "node": ">=14.20.1" @@ -8817,17 +10084,19 @@ "resolved": "https://registry.npmjs.org/bson/-/bson-5.5.1.tgz", "integrity": "sha512-ix0EwukN2EpC0SRWIj/7B5+A6uQMQy6KMREI9qQqvgpkV2frH63T0UDVd1SYedL6dNCmDBYB3QtXi4ISk9YT+g==", "extraneous": true, + "license": "Apache-2.0", "engines": { "node": ">=14.20.1" } }, "node_modules/@ngageoint/mage.service/node_modules/mongodb-memory-server-core/node_modules/debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.0.tgz", + "integrity": "sha512-6WTZ/IxCY/T6BALoZHaE4ctp9xm+Z5kY/pzYaCHRFeyVhojxlrm+46y68HA6hr0TcwEssoxNiDEUJQjfPZ/RYA==", "extraneous": true, + "license": "MIT", "dependencies": { - "ms": "2.1.2" + "ms": "^2.1.3" }, "engines": { "node": ">=6.0" @@ -8838,23 +10107,12 @@ } } }, - "node_modules/@ngageoint/mage.service/node_modules/mongodb-memory-server-core/node_modules/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==", - "extraneous": true, - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, "node_modules/@ngageoint/mage.service/node_modules/mongodb-memory-server-core/node_modules/mongodb": { "version": "5.9.2", "resolved": "https://registry.npmjs.org/mongodb/-/mongodb-5.9.2.tgz", "integrity": "sha512-H60HecKO4Bc+7dhOv4sJlgvenK4fQNqqUIlXxZYQNbfEWSALGAwGoyJd/0Qwk4TttFXUOHJ2ZJQe/52ScaUwtQ==", "extraneous": true, + "license": "Apache-2.0", "dependencies": { "bson": "^5.5.0", "mongodb-connection-string-url": "^2.6.0", @@ -8892,249 +10150,78 @@ } }, "node_modules/@ngageoint/mage.service/node_modules/mongodb-memory-server-core/node_modules/ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "extraneous": true - }, - "node_modules/@ngageoint/mage.service/node_modules/mongodb-memory-server-core/node_modules/semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", "extraneous": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } + "license": "MIT" }, "node_modules/@ngageoint/mage.service/node_modules/mongodb-memory-server-core/node_modules/tar-stream": { - "version": "3.1.6", - "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-3.1.6.tgz", - "integrity": "sha512-B/UyjYwPpMBv+PaFSWAmtYjwdrlEaZQEhMIBFNC5oEG8lpiW8XjcSdmEaClj28ArfKScKHs2nshz3k2le6crsg==", + "version": "3.1.7", + "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-3.1.7.tgz", + "integrity": "sha512-qJj60CXt7IU1Ffyc3NJMjh6EkuCFej46zUqJ4J7pqYlThyd9bO0XBTmcOIhSzZJVWfsLks0+nle/j538YAW9RQ==", "extraneous": true, + "license": "MIT", "dependencies": { "b4a": "^1.6.4", "fast-fifo": "^1.2.0", "streamx": "^2.15.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/mongodb-memory-server-core/node_modules/tslib": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz", - "integrity": "sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==", - "extraneous": true - }, - "node_modules/@ngageoint/mage.service/node_modules/mongodb-memory-server/node_modules/tslib": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz", - "integrity": "sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==", - "extraneous": true - }, - "node_modules/@ngageoint/mage.service/node_modules/mongodb-migrations": { - "version": "0.8.5", - "resolved": "https://registry.npmjs.org/mongodb-migrations/-/mongodb-migrations-0.8.5.tgz", - "integrity": "sha1-0CfvEPuwHxc3NfALdLoH3PPLsBc=", - "peer": true, - "dependencies": { - "bluebird": "^3.4.1", - "lodash": "^4.13.0", - "mkdirp": "^0.5.1", - "mongodb": "^2.2.1", - "nomnom": "^1.6.2" - }, - "bin": { - "mm": "bin/mm" - } - }, - "node_modules/@ngageoint/mage.service/node_modules/mongodb-migrations/node_modules/mkdirp": { - "version": "0.5.6", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", - "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", - "peer": true, - "dependencies": { - "minimist": "^1.2.6" - }, - "bin": { - "mkdirp": "bin/cmd.js" - } - }, - "node_modules/@ngageoint/mage.service/node_modules/mongodb/node_modules/readable-stream": { - "version": "2.2.7", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.2.7.tgz", - "integrity": "sha1-BwV6y+JGeyIELTb5jFrVBwVOlbE=", - "peer": true, - "dependencies": { - "buffer-shims": "~1.0.0", - "core-util-is": "~1.0.0", - "inherits": "~2.0.1", - "isarray": "~1.0.0", - "process-nextick-args": "~1.0.6", - "string_decoder": "~1.0.0", - "util-deprecate": "~1.0.1" - } - }, - "node_modules/@ngageoint/mage.service/node_modules/mongodb/node_modules/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==", - "peer": true - }, - "node_modules/@ngageoint/mage.service/node_modules/mongodb/node_modules/string_decoder": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.0.3.tgz", - "integrity": "sha512-4AH6Z5fzNNBcH+6XDMfA/BTt87skxqJlO0lAh3Dker5zThcAxG6mKz+iGu308UKoPPQ8Dcqx/4JhujzltRa+hQ==", - "peer": true, - "dependencies": { - "safe-buffer": "~5.1.0" - } - }, "node_modules/@ngageoint/mage.service/node_modules/mongoose": { - "version": "4.13.21", - "resolved": "https://registry.npmjs.org/mongoose/-/mongoose-4.13.21.tgz", - "integrity": "sha512-0VZtQu1rSUPwUtbb7zh6CymI0nNkVInOIDbtWNlna070qnUO14On8PpSVSwlx3gwmkKL2OkP4ioCj5YHC6trMg==", + "version": "6.13.8", + "resolved": "https://registry.npmjs.org/mongoose/-/mongoose-6.13.8.tgz", + "integrity": "sha512-JHKco/533CyVrqCbyQsnqMpLn8ZCiKrPDTd2mvo2W7ygIvhygWjX2wj+RPjn6upZZgw0jC6U51RD7kUsyK8NBg==", + "license": "MIT", "peer": true, "dependencies": { - "async": "2.6.0", - "bson": "~1.0.4", - "hooks-fixed": "2.0.2", - "kareem": "1.5.0", - "lodash.get": "4.4.2", - "mongodb": "2.2.34", - "mpath": "0.5.1", - "mpromise": "0.5.5", - "mquery": "2.3.3", - "ms": "2.0.0", - "muri": "1.3.0", - "regexp-clone": "0.0.1", - "sliced": "1.0.1" + "bson": "^4.7.2", + "kareem": "2.5.1", + "mongodb": "4.17.2", + "mpath": "0.9.0", + "mquery": "4.0.3", + "ms": "2.1.3", + "sift": "16.0.1" }, "engines": { - "node": ">=0.6.19" - } - }, - "node_modules/@ngageoint/mage.service/node_modules/mongoose-beautiful-unique-validation": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/mongoose-beautiful-unique-validation/-/mongoose-beautiful-unique-validation-7.1.1.tgz", - "integrity": "sha512-fprzp8nY9Qjg0+RZFMl7gVmbINRt2H53fpqyjJWwPO7nxJ9RZZB/Lo3y+mXaMP4nNMOeoJb2v3dNou6h+iLh8w==", - "peer": true, - "engines": { - "node": ">=0.10.0" - }, - "peerDependencies": { - "mongoose": ">=4.11.4" - } - }, - "node_modules/@ngageoint/mage.service/node_modules/mongoose/node_modules/async": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/async/-/async-2.6.0.tgz", - "integrity": "sha512-xAfGg1/NTLBBKlHFmnd7PlmUW9KhVQIUuSrYem9xzFUZy13ScvtyGGejaae9iAVRiRq9+Cx7DPFaAAhCpyxyPw==", - "peer": true, - "dependencies": { - "lodash": "^4.14.0" - } - }, - "node_modules/@ngageoint/mage.service/node_modules/mongoose/node_modules/mongodb": { - "version": "2.2.34", - "resolved": "https://registry.npmjs.org/mongodb/-/mongodb-2.2.34.tgz", - "integrity": "sha1-o09Zu+thdUrsQy3nLD/iFSakTBo=", - "peer": true, - "dependencies": { - "es6-promise": "3.2.1", - "mongodb-core": "2.1.18", - "readable-stream": "2.2.7" + "node": ">=12.0.0" }, - "engines": { - "node": ">=0.10.3" - } - }, - "node_modules/@ngageoint/mage.service/node_modules/mongoose/node_modules/mongodb-core": { - "version": "2.1.18", - "resolved": "https://registry.npmjs.org/mongodb-core/-/mongodb-core-2.1.18.tgz", - "integrity": "sha1-TEYTm986HwMt7ZHbSfOO7AFlkFA=", - "peer": true, - "dependencies": { - "bson": "~1.0.4", - "require_optional": "~1.0.0" - } - }, - "node_modules/@ngageoint/mage.service/node_modules/mongoose/node_modules/readable-stream": { - "version": "2.2.7", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.2.7.tgz", - "integrity": "sha1-BwV6y+JGeyIELTb5jFrVBwVOlbE=", - "peer": true, - "dependencies": { - "buffer-shims": "~1.0.0", - "core-util-is": "~1.0.0", - "inherits": "~2.0.1", - "isarray": "~1.0.0", - "process-nextick-args": "~1.0.6", - "string_decoder": "~1.0.0", - "util-deprecate": "~1.0.1" + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/mongoose" } }, - "node_modules/@ngageoint/mage.service/node_modules/mongoose/node_modules/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==", + "node_modules/@ngageoint/mage.service/node_modules/mongoose/node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", "peer": true }, - "node_modules/@ngageoint/mage.service/node_modules/mongoose/node_modules/string_decoder": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.0.3.tgz", - "integrity": "sha512-4AH6Z5fzNNBcH+6XDMfA/BTt87skxqJlO0lAh3Dker5zThcAxG6mKz+iGu308UKoPPQ8Dcqx/4JhujzltRa+hQ==", - "peer": true, - "dependencies": { - "safe-buffer": "~5.1.0" - } - }, "node_modules/@ngageoint/mage.service/node_modules/mpath": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/mpath/-/mpath-0.5.1.tgz", - "integrity": "sha512-H8OVQ+QEz82sch4wbODFOz+3YQ61FYz/z3eJ5pIdbMEaUzDqA268Wd+Vt4Paw9TJfvDgVKaayC0gBzMIw2jhsg==", + "version": "0.9.0", + "resolved": "https://registry.npmjs.org/mpath/-/mpath-0.9.0.tgz", + "integrity": "sha512-ikJRQTk8hw5DEoFVxHG1Gn9T/xcjtdnOKIU1JTmGjZZlg9LST2mBLmcX3/ICIbgJydT2GOc15RnNy5mHmzfSew==", "peer": true, "engines": { "node": ">=4.0.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/mpromise": { - "version": "0.5.5", - "resolved": "https://registry.npmjs.org/mpromise/-/mpromise-0.5.5.tgz", - "integrity": "sha1-9bJCWddjrMIlewoMjG2Gb9UXMuY=", - "peer": true - }, "node_modules/@ngageoint/mage.service/node_modules/mquery": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/mquery/-/mquery-2.3.3.tgz", - "integrity": "sha512-NC8L14kn+qxJbbJ1gbcEMDxF0sC3sv+1cbRReXXwVvowcwY1y9KoVZFq0ebwARibsadu8lx8nWGvm3V0Pf0ZWQ==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/mquery/-/mquery-4.0.3.tgz", + "integrity": "sha512-J5heI+P08I6VJ2Ky3+33IpCdAvlYGTSUjwTPxkAr8i8EoduPMBX2OY/wa3IKZIQl7MU4SbFk8ndgSKyB/cl1zA==", "peer": true, "dependencies": { - "bluebird": "3.5.0", - "debug": "2.6.9", - "regexp-clone": "0.0.1", - "sliced": "0.0.5" + "debug": "4.x" + }, + "engines": { + "node": ">=12.0.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/mquery/node_modules/bluebird": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.5.0.tgz", - "integrity": "sha1-eRQg1/VR7qKJdFOop3ZT+WYG1nw=", - "peer": true - }, - "node_modules/@ngageoint/mage.service/node_modules/mquery/node_modules/sliced": { - "version": "0.0.5", - "resolved": "https://registry.npmjs.org/sliced/-/sliced-0.0.5.tgz", - "integrity": "sha1-XtwETKTrb3gW1Qui/GPiXY/kcH8=", - "peer": true - }, "node_modules/@ngageoint/mage.service/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", "peer": true }, "node_modules/@ngageoint/mage.service/node_modules/multer": { @@ -9155,24 +10242,6 @@ "node": ">= 6.0.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/multer/node_modules/mkdirp": { - "version": "0.5.6", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", - "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", - "peer": true, - "dependencies": { - "minimist": "^1.2.6" - }, - "bin": { - "mkdirp": "bin/cmd.js" - } - }, - "node_modules/@ngageoint/mage.service/node_modules/muri": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/muri/-/muri-1.3.0.tgz", - "integrity": "sha512-FiaFwKl864onHFFUV/a2szAl7X0fxVlSKNdhTf+BM8i8goEgYut8u5P9MqQqIYwvaMxjzVESsoEm/2kfkFH1rg==", - "peer": true - }, "node_modules/@ngageoint/mage.service/node_modules/mute-stream": { "version": "0.0.8", "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz", @@ -9184,12 +10253,13 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/napi-build-utils/-/napi-build-utils-1.0.2.tgz", "integrity": "sha512-ONmRUqK7zj7DWX0D9ADe03wbwOBZxNAfF20PlGfCWQcD3+/MakShIHrMqx9YwPTfxDdF1zLeL+RGZiR9kGMLdg==", + "optional": true, "peer": true }, "node_modules/@ngageoint/mage.service/node_modules/natural-compare": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", - "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=", + "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", "extraneous": true }, "node_modules/@ngageoint/mage.service/node_modules/negotiator": { @@ -9212,36 +10282,14 @@ "resolved": "https://registry.npmjs.org/new-find-package-json/-/new-find-package-json-2.0.0.tgz", "integrity": "sha512-lDcBsjBSMlj3LXH2v/FW3txlh2pYTjmbOXPYJD93HI5EwuLzI11tdHSIpUMmfq/IOsldj4Ps8M8flhm+pCK4Ew==", "extraneous": true, + "license": "MIT", "dependencies": { - "debug": "^4.3.4" - }, - "engines": { - "node": ">=12.22.0" - } - }, - "node_modules/@ngageoint/mage.service/node_modules/new-find-package-json/node_modules/debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", - "extraneous": true, - "dependencies": { - "ms": "2.1.2" + "debug": "^4.3.4" }, "engines": { - "node": ">=6.0" - }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } + "node": ">=12.22.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/new-find-package-json/node_modules/ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "extraneous": true - }, "node_modules/@ngageoint/mage.service/node_modules/nice-try": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz", @@ -9264,7 +10312,7 @@ "node_modules/@ngageoint/mage.service/node_modules/nise/node_modules/isarray": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", - "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=", + "integrity": "sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ==", "extraneous": true }, "node_modules/@ngageoint/mage.service/node_modules/nise/node_modules/lolex": { @@ -9290,6 +10338,7 @@ "resolved": "https://registry.npmjs.org/nock/-/nock-11.9.1.tgz", "integrity": "sha512-U5wPctaY4/ar2JJ5Jg4wJxlbBfayxgKbiAeGh+a1kk6Pwnc2ZEuKviLyDSG6t0uXl56q7AALIxoM6FJrBSsVXA==", "extraneous": true, + "license": "MIT", "dependencies": { "debug": "^4.1.0", "json-stringify-safe": "^5.0.1", @@ -9301,45 +10350,11 @@ "node": ">= 8.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/nock/node_modules/debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", - "extraneous": true, - "dependencies": { - "ms": "2.1.2" - }, - "engines": { - "node": ">=6.0" - }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } - } - }, - "node_modules/@ngageoint/mage.service/node_modules/nock/node_modules/mkdirp": { - "version": "0.5.6", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", - "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", - "extraneous": true, - "dependencies": { - "minimist": "^1.2.6" - }, - "bin": { - "mkdirp": "bin/cmd.js" - } - }, - "node_modules/@ngageoint/mage.service/node_modules/nock/node_modules/ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "extraneous": true - }, "node_modules/@ngageoint/mage.service/node_modules/node-abi": { - "version": "3.47.0", - "resolved": "https://registry.npmjs.org/node-abi/-/node-abi-3.47.0.tgz", - "integrity": "sha512-2s6B2CWZM//kPgwnuI0KrYwNjfdByE25zvAaEpq9IH4zcNsarH8Ihu/UuX6XMPEogDAxkuUFeZn60pXNHAqn3A==", + "version": "3.65.0", + "resolved": "https://registry.npmjs.org/node-abi/-/node-abi-3.65.0.tgz", + "integrity": "sha512-ThjYBfoDNr08AWx6hGaRbfPwxKV9kVzAzOzlLKbk2CuqXE2xnCh+cbAGnwM3t8Lq4v9rUB7VfondlkBckcJrVA==", + "optional": true, "peer": true, "dependencies": { "semver": "^7.3.5" @@ -9348,47 +10363,11 @@ "node": ">=10" } }, - "node_modules/@ngageoint/mage.service/node_modules/node-abi/node_modules/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==", - "peer": true, - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/@ngageoint/mage.service/node_modules/node-abi/node_modules/semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", - "peer": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/@ngageoint/mage.service/node_modules/node-environment-flags": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/node-environment-flags/-/node-environment-flags-1.0.6.tgz", - "integrity": "sha512-5Evy2epuL+6TM0lCQGpFIj6KwiEsGh1SrHUhTbNX+sLbBtjidPZFAnVK9y5yU1+h//RitLbRHTIMyxQPtxMdHw==", - "extraneous": true, - "dependencies": { - "object.getownpropertydescriptors": "^2.0.3", - "semver": "^5.7.0" - } - }, "node_modules/@ngageoint/mage.service/node_modules/node-fetch": { - "version": "2.6.7", - "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.7.tgz", - "integrity": "sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==", + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.7.0.tgz", + "integrity": "sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==", + "license": "MIT", "peer": true, "dependencies": { "whatwg-url": "^5.0.0" @@ -9405,10 +10384,35 @@ } } }, + "node_modules/@ngageoint/mage.service/node_modules/node-fetch/node_modules/tr46": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", + "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==", + "license": "MIT", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/node-fetch/node_modules/webidl-conversions": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", + "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==", + "license": "BSD-2-Clause", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/node-fetch/node_modules/whatwg-url": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", + "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", + "license": "MIT", + "peer": true, + "dependencies": { + "tr46": "~0.0.3", + "webidl-conversions": "^3.0.0" + } + }, "node_modules/@ngageoint/mage.service/node_modules/nomnom": { "version": "1.8.1", "resolved": "https://registry.npmjs.org/nomnom/-/nomnom-1.8.1.tgz", - "integrity": "sha1-IVH3Ikcrp55Qp2/BJbuMjy5Nwqc=", + "integrity": "sha512-5s0JxqhDx9/rksG2BTMVN1enjWSvPidpoSgViZU4ZXULyTe+7jxcCRLB6f42Z0l1xYJpleCBtSyY6Lwg3uu5CQ==", "deprecated": "Package no longer supported. Contact support@npmjs.com for more info.", "peer": true, "dependencies": { @@ -9419,7 +10423,7 @@ "node_modules/@ngageoint/mage.service/node_modules/nomnom/node_modules/ansi-styles": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-1.0.0.tgz", - "integrity": "sha1-yxAt8cVvUSPquLZ817mAJ6AnkXg=", + "integrity": "sha512-3iF4FIKdxaVYT3JqQuY3Wat/T2t7TRbbQ94Fu50ZUCbLy4TFbTzr90NOHQodQkNqmeEGCw8WbeP78WNi6SKYUA==", "peer": true, "engines": { "node": ">=0.8.0" @@ -9428,7 +10432,7 @@ "node_modules/@ngageoint/mage.service/node_modules/nomnom/node_modules/chalk": { "version": "0.4.0", "resolved": "https://registry.npmjs.org/chalk/-/chalk-0.4.0.tgz", - "integrity": "sha1-UZmj3c0MHv4jvAjBsCewYXbgxk8=", + "integrity": "sha512-sQfYDlfv2DGVtjdoQqxS0cEZDroyG8h6TamA6rvxwlrU5BaSLDx9xhatBYl2pxZ7gmpNaPFVwBtdGdu5rQ+tYQ==", "peer": true, "dependencies": { "ansi-styles": "~1.0.0", @@ -9442,7 +10446,7 @@ "node_modules/@ngageoint/mage.service/node_modules/nomnom/node_modules/strip-ansi": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-0.1.1.tgz", - "integrity": "sha1-OeipjQRNFQZgq+SmgIrPcLt7yZE=", + "integrity": "sha512-behete+3uqxecWlDAm5lmskaSaISA+ThQ4oNNBDTBJt0x2ppR6IPqfZNuj6BLaLJ/Sji4TPZlcRyOis8wXQTLg==", "peer": true, "bin": { "strip-ansi": "cli.js" @@ -9454,7 +10458,7 @@ "node_modules/@ngageoint/mage.service/node_modules/nomnom/node_modules/underscore": { "version": "1.6.0", "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.6.0.tgz", - "integrity": "sha1-izixDKze9jM3uLJOT/htRa6lKag=", + "integrity": "sha512-z4o1fvKUojIWh9XuaVLUDdf86RQiq13AC1dmHbTpoyuu+bquHms76v16CjycCbec87J7z0k//SiQVk0sMdFmpQ==", "peer": true }, "node_modules/@ngageoint/mage.service/node_modules/normalize-package-data": { @@ -9469,6 +10473,15 @@ "validate-npm-package-license": "^3.0.1" } }, + "node_modules/@ngageoint/mage.service/node_modules/normalize-package-data/node_modules/semver": { + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", + "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", + "extraneous": true, + "bin": { + "semver": "bin/semver" + } + }, "node_modules/@ngageoint/mage.service/node_modules/normalize-path": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", @@ -9515,6 +10528,16 @@ "node": ">=4" } }, + "node_modules/@ngageoint/mage.service/node_modules/npm-run-all/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "extraneous": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, "node_modules/@ngageoint/mage.service/node_modules/npm-run-all/node_modules/chalk": { "version": "2.4.2", "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", @@ -9541,7 +10564,7 @@ "node_modules/@ngageoint/mage.service/node_modules/npm-run-all/node_modules/color-name": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", "extraneous": true }, "node_modules/@ngageoint/mage.service/node_modules/npm-run-all/node_modules/cross-spawn": { @@ -9560,15 +10583,75 @@ "node": ">=4.8" } }, + "node_modules/@ngageoint/mage.service/node_modules/npm-run-all/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "extraneous": true, + "engines": { + "node": ">=0.8.0" + } + }, "node_modules/@ngageoint/mage.service/node_modules/npm-run-all/node_modules/has-flag": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "extraneous": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/npm-run-all/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "extraneous": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/npm-run-all/node_modules/path-key": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", + "integrity": "sha512-fEHGKCSmUSDPv4uoj8AlD+joPlq3peND+HRYyxFz4KPw4z926S/b8rIuFs2FYJg3BwsxJf6A9/3eIdLaYC+9Dw==", "extraneous": true, "engines": { "node": ">=4" } }, + "node_modules/@ngageoint/mage.service/node_modules/npm-run-all/node_modules/semver": { + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", + "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", + "extraneous": true, + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/npm-run-all/node_modules/shebang-command": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", + "integrity": "sha512-EV3L1+UQWGor21OmnvojK36mhg+TyIKDh3iFBKBohr5xeXIhNBcx8oWdgkTEEQ+BEFFYdLRuqMfd5L84N1V5Vg==", + "extraneous": true, + "dependencies": { + "shebang-regex": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/npm-run-all/node_modules/shebang-regex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", + "integrity": "sha512-wpoSFAxys6b2a2wHZ1XpDSgD7N9iVjg29Ph9uV/uaP9Ex/KXlkTZTeddxDPSYQpgvzKLGJke2UU0AzoGCjNIvQ==", + "extraneous": true, + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/@ngageoint/mage.service/node_modules/npm-run-all/node_modules/supports-color": { "version": "5.5.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", @@ -9581,27 +10664,16 @@ "node": ">=4" } }, - "node_modules/@ngageoint/mage.service/node_modules/npmlog": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz", - "integrity": "sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==", - "optional": true, - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/npm-run-all/node_modules/which": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "extraneous": true, "dependencies": { - "are-we-there-yet": "~1.1.2", - "console-control-strings": "~1.1.0", - "gauge": "~2.7.3", - "set-blocking": "~2.0.0" - } - }, - "node_modules/@ngageoint/mage.service/node_modules/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=", - "optional": true, - "peer": true, - "engines": { - "node": ">=0.10.0" + "isexe": "^2.0.0" + }, + "bin": { + "which": "bin/which" } }, "node_modules/@ngageoint/mage.service/node_modules/nyc": { @@ -9652,6 +10724,18 @@ "node": ">=6" } }, + "node_modules/@ngageoint/mage.service/node_modules/nyc/node_modules/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==", + "extraneous": true, + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, "node_modules/@ngageoint/mage.service/node_modules/nyc/node_modules/camelcase": { "version": "5.3.1", "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", @@ -9672,25 +10756,52 @@ "wrap-ansi": "^5.1.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/nyc/node_modules/emoji-regex": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", - "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", + "node_modules/@ngageoint/mage.service/node_modules/nyc/node_modules/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==", + "extraneous": true, + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/nyc/node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", "extraneous": true }, - "node_modules/@ngageoint/mage.service/node_modules/nyc/node_modules/esprima": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", - "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", + "node_modules/@ngageoint/mage.service/node_modules/nyc/node_modules/cp-file": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/cp-file/-/cp-file-6.2.0.tgz", + "integrity": "sha512-fmvV4caBnofhPe8kOcitBwSn2f39QLjnAnGq3gO9dfd75mUytzKNZB1hde6QHunW2Rt+OwuBOMc3i1tNElbszA==", "extraneous": true, - "bin": { - "esparse": "bin/esparse.js", - "esvalidate": "bin/esvalidate.js" + "dependencies": { + "graceful-fs": "^4.1.2", + "make-dir": "^2.0.0", + "nested-error-stacks": "^2.0.0", + "pify": "^4.0.1", + "safe-buffer": "^5.0.1" }, "engines": { - "node": ">=4" + "node": ">=6" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/nyc/node_modules/decamelize": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", + "integrity": "sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA==", + "extraneous": true, + "engines": { + "node": ">=0.10.0" } }, + "node_modules/@ngageoint/mage.service/node_modules/nyc/node_modules/emoji-regex": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", + "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", + "extraneous": true + }, "node_modules/@ngageoint/mage.service/node_modules/nyc/node_modules/find-cache-dir": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-2.1.0.tgz", @@ -9720,7 +10831,7 @@ "node_modules/@ngageoint/mage.service/node_modules/nyc/node_modules/is-fullwidth-code-point": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "integrity": "sha512-VHskAKYM8RfSFXwee5t5cbN5PZeq1Wrh6qd5bkyiXIf6UQcN6w/A0eXM9r6t8d+GYOh+o6ZhiEnb88LN/Y8m2w==", "extraneous": true, "engines": { "node": ">=4" @@ -9752,6 +10863,19 @@ "node": ">=6" } }, + "node_modules/@ngageoint/mage.service/node_modules/nyc/node_modules/make-dir": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", + "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", + "extraneous": true, + "dependencies": { + "pify": "^4.0.1", + "semver": "^5.6.0" + }, + "engines": { + "node": ">=6" + } + }, "node_modules/@ngageoint/mage.service/node_modules/nyc/node_modules/p-limit": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", @@ -9772,9 +10896,27 @@ "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", "extraneous": true, - "dependencies": { - "p-limit": "^2.0.0" - }, + "dependencies": { + "p-limit": "^2.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/nyc/node_modules/path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==", + "extraneous": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/nyc/node_modules/pify": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", + "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", + "extraneous": true, "engines": { "node": ">=6" } @@ -9791,19 +10933,11 @@ "node": ">=6" } }, - "node_modules/@ngageoint/mage.service/node_modules/nyc/node_modules/resolve-from": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", - "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", - "extraneous": true, - "engines": { - "node": ">=4" - } - }, "node_modules/@ngageoint/mage.service/node_modules/nyc/node_modules/rimraf": { "version": "2.7.1", "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", + "deprecated": "Rimraf versions prior to v4 are no longer supported", "extraneous": true, "dependencies": { "glob": "^7.1.3" @@ -9812,6 +10946,15 @@ "rimraf": "bin.js" } }, + "node_modules/@ngageoint/mage.service/node_modules/nyc/node_modules/semver": { + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", + "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", + "extraneous": true, + "bin": { + "semver": "bin/semver" + } + }, "node_modules/@ngageoint/mage.service/node_modules/nyc/node_modules/string-width": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", @@ -9838,6 +10981,36 @@ "node": ">=6" } }, + "node_modules/@ngageoint/mage.service/node_modules/nyc/node_modules/uuid": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", + "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==", + "deprecated": "Please upgrade to version 7 or higher. Older versions may use Math.random() in certain circumstances, which is known to be problematic. See https://v8.dev/blog/math-random for details.", + "extraneous": true, + "bin": { + "uuid": "bin/uuid" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/nyc/node_modules/wrap-ansi": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-5.1.0.tgz", + "integrity": "sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q==", + "extraneous": true, + "dependencies": { + "ansi-styles": "^3.2.0", + "string-width": "^3.0.0", + "strip-ansi": "^5.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/nyc/node_modules/y18n": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz", + "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==", + "extraneous": true + }, "node_modules/@ngageoint/mage.service/node_modules/nyc/node_modules/yargs": { "version": "13.3.2", "resolved": "https://registry.npmjs.org/yargs/-/yargs-13.3.2.tgz", @@ -9867,9 +11040,10 @@ } }, "node_modules/@ngageoint/mage.service/node_modules/oauth": { - "version": "0.9.15", - "resolved": "https://registry.npmjs.org/oauth/-/oauth-0.9.15.tgz", - "integrity": "sha1-vR/vr2hslrdUda7VGWQS/2DPucE=", + "version": "0.10.2", + "resolved": "https://registry.npmjs.org/oauth/-/oauth-0.10.2.tgz", + "integrity": "sha512-JtFnB+8nxDEXgNyniwz573xxbKSOu3R8D40xQKqcjwJ2CDkYqUDI53o6IuzDJBx60Z8VKCm271+t8iFjakrl8Q==", + "license": "MIT", "peer": true }, "node_modules/@ngageoint/mage.service/node_modules/oauth-sign": { @@ -9884,29 +11058,33 @@ "node_modules/@ngageoint/mage.service/node_modules/object-assign": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", + "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", "peer": true, "engines": { "node": ">=0.10.0" } }, "node_modules/@ngageoint/mage.service/node_modules/object-inspect": { - "version": "1.12.0", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.0.tgz", - "integrity": "sha512-Ho2z80bVIvJloH+YzRmpZVQe87+qASmBUKZDWgx9cu+KDrX2ZDH/3tMy+gXbZETVGs2M8YdxObOh7XAtim9Y0g==", + "version": "1.13.4", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.4.tgz", + "integrity": "sha512-W67iLl4J2EXEGTbfeHCffrjDfitvLANg0UlX3wFUUSTx92KXRFegMHUVgSqE+wvhAbi4WqjGg9czysTV2Epbew==", + "license": "MIT", "peer": true, + "engines": { + "node": ">= 0.4" + }, "funding": { "url": "https://github.com/sponsors/ljharb" } }, "node_modules/@ngageoint/mage.service/node_modules/object-is": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/object-is/-/object-is-1.1.5.tgz", - "integrity": "sha512-3cyDsyHgtmi7I7DfSSI2LDp6SK2lwvtbg0p0R1e0RvTqF5ceGx+K2dfSjm1bKDMVCFEDAQvy+o8c6a7VujOddw==", + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/object-is/-/object-is-1.1.6.tgz", + "integrity": "sha512-F8cZ+KfGlSGi09lJT7/Nd6KJZ9ygtvYC0/UYYLI9nmQKLMnydpB9yvbv9K1uSkEu7FU9vYPmVwLg328tX+ot3Q==", "extraneous": true, "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3" + "call-bind": "^1.0.7", + "define-properties": "^1.2.1" }, "engines": { "node": ">= 0.4" @@ -9925,14 +11103,14 @@ } }, "node_modules/@ngageoint/mage.service/node_modules/object.assign": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.2.tgz", - "integrity": "sha512-ixT2L5THXsApyiUPYKmW+2EHpXXe5Ii3M+f4e+aJFAHao5amFRW6J0OO6c/LU8Be47utCx2GL89hxGB6XSmKuQ==", + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.5.tgz", + "integrity": "sha512-byy+U7gp+FVwmyzKPYhW2h5l3crpmGsxl7X2s8y43IgxvG4g3QZ6CffDtsNQy1WsmZpQbO+ybo0AlW7TY6DcBQ==", "extraneous": true, "dependencies": { - "call-bind": "^1.0.0", - "define-properties": "^1.1.3", - "has-symbols": "^1.0.1", + "call-bind": "^1.0.5", + "define-properties": "^1.2.1", + "has-symbols": "^1.0.3", "object-keys": "^1.1.1" }, "engines": { @@ -9942,27 +11120,11 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/@ngageoint/mage.service/node_modules/object.getownpropertydescriptors": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.1.3.tgz", - "integrity": "sha512-VdDoCwvJI4QdC6ndjpqFmoL3/+HxffFBbcJzKi5hwLLqqx3mdbedRpfZDdK0SrOSauj8X4GzBvnDZl4vTN7dOw==", - "extraneous": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3", - "es-abstract": "^1.19.1" - }, - "engines": { - "node": ">= 0.8" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, "node_modules/@ngageoint/mage.service/node_modules/on-finished": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", - "integrity": "sha1-IPEzZIGwg811M3mSoWlxqi2QaUc=", + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz", + "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==", + "license": "MIT", "peer": true, "dependencies": { "ee-first": "1.1.1" @@ -9983,7 +11145,7 @@ "node_modules/@ngageoint/mage.service/node_modules/once": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", "peer": true, "dependencies": { "wrappy": "1" @@ -10005,39 +11167,41 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@ngageoint/mage.service/node_modules/ono": { - "version": "4.0.11", - "resolved": "https://registry.npmjs.org/ono/-/ono-4.0.11.tgz", - "integrity": "sha512-jQ31cORBFE6td25deYeD80wxKBMj+zBmHTrVxnc6CKhx8gho6ipmWM5zj/oeoqioZ99yqBls9Z/9Nss7J26G2g==", - "extraneous": true, - "dependencies": { - "format-util": "^1.0.3" - } - }, "node_modules/@ngageoint/mage.service/node_modules/openapi-enforcer": { - "version": "1.15.5", - "resolved": "https://registry.npmjs.org/openapi-enforcer/-/openapi-enforcer-1.15.5.tgz", - "integrity": "sha512-lHU5Qhj6i/4LinbVqOLpDwukVQkn+MUlS5exa71fQcJ36ona17lgI4csA8+9WSiVr0FeALUCWi87Glsseb1Jzw==", + "version": "1.23.0", + "resolved": "https://registry.npmjs.org/openapi-enforcer/-/openapi-enforcer-1.23.0.tgz", + "integrity": "sha512-Ja6kvNQ28jvCHpotNZkB129/dBg2IslMDV56aUSl1Dcs+bcd8lGJTq1NatGYsspGpURXvQnFA/q2K8V3AQoO3Q==", "extraneous": true, + "license": "Apache-2.0", "dependencies": { - "axios": "^0.21.1", - "json-schema-ref-parser": "^6.1.0", + "js-yaml": "^4.1.0", "randexp": "^0.5.3" } }, - "node_modules/@ngageoint/mage.service/node_modules/openapi-enforcer/node_modules/axios": { - "version": "0.21.4", - "resolved": "https://registry.npmjs.org/axios/-/axios-0.21.4.tgz", - "integrity": "sha512-ut5vewkiu8jjGBdqpM44XxjuCjq9LAKeHVmoVfHVzy8eHgxxq8SbAVQNovDA8mVi05kP0Ea/n/UzcSHcTJQfNg==", + "node_modules/@ngageoint/mage.service/node_modules/openapi-enforcer/node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "extraneous": true, + "license": "Python-2.0" + }, + "node_modules/@ngageoint/mage.service/node_modules/openapi-enforcer/node_modules/js-yaml": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", + "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", "extraneous": true, + "license": "MIT", "dependencies": { - "follow-redirects": "^1.14.0" + "argparse": "^2.0.1" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" } }, "node_modules/@ngageoint/mage.service/node_modules/opentype.js": { "version": "0.7.3", "resolved": "https://registry.npmjs.org/opentype.js/-/opentype.js-0.7.3.tgz", - "integrity": "sha1-QPuM4Yv9YOdESO/f5EKDQJg5eqs=", + "integrity": "sha512-Veui5vl2bLonFJ/SjX/WRWJT3SncgiZNnKUyahmXCc2sa1xXW15u3R/3TN5+JFiP7RsjK5ER4HA5eWaEmV9deA==", "peer": true, "dependencies": { "tiny-inflate": "^1.0.2" @@ -10047,17 +11211,17 @@ } }, "node_modules/@ngageoint/mage.service/node_modules/optionator": { - "version": "0.9.3", - "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.3.tgz", - "integrity": "sha512-JjCoypp+jKn1ttEFExxhetCKeJt9zhAgAve5FXHixTvFDW/5aEktX9bufBKLRRMdU7bNtpLfcGu94B3cdEJgjg==", + "version": "0.9.4", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.4.tgz", + "integrity": "sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==", "extraneous": true, "dependencies": { - "@aashutoshrathi/word-wrap": "^1.2.3", "deep-is": "^0.1.3", "fast-levenshtein": "^2.0.6", "levn": "^0.4.1", "prelude-ls": "^1.2.1", - "type-check": "^0.4.0" + "type-check": "^0.4.0", + "word-wrap": "^1.2.5" }, "engines": { "node": ">= 0.8.0" @@ -10066,7 +11230,7 @@ "node_modules/@ngageoint/mage.service/node_modules/os-homedir": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", - "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=", + "integrity": "sha512-B5JU3cabzk8c67mRRd3ECmROafjYMXbuzlwtqdM8IbS8ktlTix8aFGb2bAGKrSRIlnfKwovGUUr72JUPyOb6kQ==", "extraneous": true, "engines": { "node": ">=0.10.0" @@ -10075,7 +11239,7 @@ "node_modules/@ngageoint/mage.service/node_modules/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=", + "integrity": "sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==", "optional": true, "peer": true, "engines": { @@ -10097,18 +11261,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@ngageoint/mage.service/node_modules/p-event/node_modules/p-timeout": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/p-timeout/-/p-timeout-5.1.0.tgz", - "integrity": "sha512-auFDyzzzGZZZdHz3BtET9VEz0SE/uMEAx7uWfGPucfzEwwe/xH0iVeZibQmANYE/hp9T2+UUZT5m+BKyrDp3Ew==", - "extraneous": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/@ngageoint/mage.service/node_modules/p-filter": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/p-filter/-/p-filter-3.0.0.tgz", @@ -10124,61 +11276,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@ngageoint/mage.service/node_modules/p-filter/node_modules/aggregate-error": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-4.0.1.tgz", - "integrity": "sha512-0poP0T7el6Vq3rstR8Mn4V/IQrpBLO6POkUSrN7RhyY+GF/InCFShQzsQ39T25gkHhLgSLByyAz+Kjb+c2L98w==", - "extraneous": true, - "dependencies": { - "clean-stack": "^4.0.0", - "indent-string": "^5.0.0" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/@ngageoint/mage.service/node_modules/p-filter/node_modules/clean-stack": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-4.2.0.tgz", - "integrity": "sha512-LYv6XPxoyODi36Dp976riBtSY27VmFo+MKqEU9QCCWyTrdEPDog+RWA7xQWHi6Vbp61j5c4cdzzX1NidnwtUWg==", - "extraneous": true, - "dependencies": { - "escape-string-regexp": "5.0.0" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/@ngageoint/mage.service/node_modules/p-filter/node_modules/escape-string-regexp": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz", - "integrity": "sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==", - "extraneous": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/@ngageoint/mage.service/node_modules/p-filter/node_modules/indent-string": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-5.0.0.tgz", - "integrity": "sha512-m6FAo/spmsW2Ab2fU35JTYwtOKa2yAwXSwgjSv1TJzh4Mh7mC3lzAOVLBprb72XsTrgkEIsl7YrFNAiDiRhIGg==", - "extraneous": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/@ngageoint/mage.service/node_modules/p-filter/node_modules/p-map": { "version": "5.5.0", "resolved": "https://registry.npmjs.org/p-map/-/p-map-5.5.0.tgz", @@ -10236,6 +11333,18 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/@ngageoint/mage.service/node_modules/p-timeout": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/p-timeout/-/p-timeout-5.1.0.tgz", + "integrity": "sha512-auFDyzzzGZZZdHz3BtET9VEz0SE/uMEAx7uWfGPucfzEwwe/xH0iVeZibQmANYE/hp9T2+UUZT5m+BKyrDp3Ew==", + "extraneous": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/@ngageoint/mage.service/node_modules/p-try": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", @@ -10260,6 +11369,12 @@ "node": ">=6" } }, + "node_modules/@ngageoint/mage.service/node_modules/package-json-from-dist": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/package-json-from-dist/-/package-json-from-dist-1.0.0.tgz", + "integrity": "sha512-dATvCeZN/8wQsGywez1mzHtTlP22H8OEfPrVMLNr4/eGa+ijtLn/6M5f0dY8UKNrC2O9UCU6SSoG3qRKnt7STw==", + "extraneous": true + }, "node_modules/@ngageoint/mage.service/node_modules/pako": { "version": "1.0.11", "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz", @@ -10278,41 +11393,10 @@ "node": ">=6" } }, - "node_modules/@ngageoint/mage.service/node_modules/parse-asn1": { - "version": "5.1.6", - "resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.6.tgz", - "integrity": "sha512-RnZRo1EPU6JBnra2vGHj0yhp6ebyjBZpmUCLHWiFhxlzvBCCpAuZ7elsBp1PVAbQN0/04VD/19rfzlBSwLstMw==", - "peer": true, - "dependencies": { - "asn1.js": "^5.2.0", - "browserify-aes": "^1.0.0", - "evp_bytestokey": "^1.0.0", - "pbkdf2": "^3.0.3", - "safe-buffer": "^5.1.1" - } - }, - "node_modules/@ngageoint/mage.service/node_modules/parse-asn1/node_modules/asn1.js": { - "version": "5.4.1", - "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-5.4.1.tgz", - "integrity": "sha512-+I//4cYPccV8LdmBLiX8CYvf9Sp3vQsrqu2QNXRcrbiWvcx/UdlFiqUJJzxRQxgsZmvhXhn4cSKeSmoFjVdupA==", - "peer": true, - "dependencies": { - "bn.js": "^4.0.0", - "inherits": "^2.0.1", - "minimalistic-assert": "^1.0.0", - "safer-buffer": "^2.1.0" - } - }, - "node_modules/@ngageoint/mage.service/node_modules/parse-asn1/node_modules/bn.js": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", - "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", - "peer": true - }, "node_modules/@ngageoint/mage.service/node_modules/parse-json": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", - "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=", + "integrity": "sha512-aOIos8bujGN93/8Ox/jPLh7RwVnPEysynVFE+fQZyg6jKELEHwzgKdLRFHUgXJL6kylijVSBC4BvN9OmsB48Rw==", "extraneous": true, "dependencies": { "error-ex": "^1.3.1", @@ -10332,9 +11416,10 @@ } }, "node_modules/@ngageoint/mage.service/node_modules/passport": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/passport/-/passport-0.6.0.tgz", - "integrity": "sha512-0fe+p3ZnrWRW74fe8+SvCyf4a3Pb2/h7gFkQ8yTJpAO50gDzlfjZUZTO1k5Eg9kUct22OxHLqDZoKUWRHOh9ug==", + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/passport/-/passport-0.7.0.tgz", + "integrity": "sha512-cPLl+qZpSc+ireUvt+IzqbED1cHHkDoVYMo30jbJIdOOjQ1MQYZBPiNvmi8UM6lJuOpTPXJGZQk0DtC4y61MYQ==", + "license": "MIT", "peer": true, "dependencies": { "passport-strategy": "1.x.x", @@ -10352,7 +11437,7 @@ "node_modules/@ngageoint/mage.service/node_modules/passport-anonymous": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/passport-anonymous/-/passport-anonymous-1.0.1.tgz", - "integrity": "sha1-JB43J07ETft/bK0jS0HEODhrwRc=", + "integrity": "sha512-Mk2dls97nLTzHpsWCYQ54IVGucWaiWSHHr3+IhWYAebg4dRgRQIfyoeYrixoxB2z2z4+EM7p9yjC+a3yMB5z5A==", "peer": true, "dependencies": { "passport-strategy": "1.x.x" @@ -10364,7 +11449,7 @@ "node_modules/@ngageoint/mage.service/node_modules/passport-http-bearer": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/passport-http-bearer/-/passport-http-bearer-1.0.1.tgz", - "integrity": "sha1-FHRp6jZp4qhMYWfvmdu3fh8AmKg=", + "integrity": "sha512-SELQM+dOTuMigr9yu8Wo4Fm3ciFfkMq5h/ZQ8ffi4ELgZrX1xh9PlglqZdcUZ1upzJD/whVyt+YWF62s3U6Ipw==", "peer": true, "dependencies": { "passport-strategy": "1.x.x" @@ -10389,7 +11474,7 @@ "node_modules/@ngageoint/mage.service/node_modules/passport-local": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/passport-local/-/passport-local-1.0.0.tgz", - "integrity": "sha1-H+YyaMkudWBmJkN+O5BmYsFbpu4=", + "integrity": "sha512-9wCE6qKznvf9mQYYbgJ3sVOHmCWoUNMVFoZzNoznmISbhnNNPhN9xfY3sLmScHMetEJeoY7CXwfhCe7argfQow==", "peer": true, "dependencies": { "passport-strategy": "1.x.x" @@ -10399,13 +11484,14 @@ } }, "node_modules/@ngageoint/mage.service/node_modules/passport-oauth2": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/passport-oauth2/-/passport-oauth2-1.6.0.tgz", - "integrity": "sha512-emXPLqLcVEcLFR/QvQXZcwLmfK8e9CqvMgmOFJxcNT3okSFMtUbRRKpY20x5euD+01uHsjjCa07DYboEeLXYiw==", + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/passport-oauth2/-/passport-oauth2-1.8.0.tgz", + "integrity": "sha512-cjsQbOrXIDE4P8nNb3FQRCCmJJ/utnFKEz2NX209f7KOHPoX18gF7gBzBbLLsj2/je4KrgiwLLGjf0lm9rtTBA==", + "license": "MIT", "peer": true, "dependencies": { "base64url": "3.x.x", - "oauth": "0.9.x", + "oauth": "0.10.x", "passport-strategy": "1.x.x", "uid2": "0.0.x", "utils-merge": "1.x.x" @@ -10419,12 +11505,13 @@ } }, "node_modules/@ngageoint/mage.service/node_modules/passport-openidconnect": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/passport-openidconnect/-/passport-openidconnect-0.1.1.tgz", - "integrity": "sha512-r0QJiWEzwCg2MeCIXVP5G6YxVRqnEsZ2HpgKRthZ9AiQHJrgGUytXpsdcGF9BRwd3yMrEesb/uG/Yxb86rrY0g==", + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/passport-openidconnect/-/passport-openidconnect-0.1.2.tgz", + "integrity": "sha512-JX3rTyW+KFZ/E9OF/IpXJPbyLO9vGzcmXB5FgSP2jfL3LGKJPdV7zUE8rWeKeeI/iueQggOeFa3onrCmhxXZTg==", + "license": "MIT", "peer": true, "dependencies": { - "oauth": "0.9.x", + "oauth": "0.10.x", "passport-strategy": "1.x.x" }, "engines": { @@ -10438,37 +11525,37 @@ "node_modules/@ngageoint/mage.service/node_modules/passport-strategy": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/passport-strategy/-/passport-strategy-1.0.0.tgz", - "integrity": "sha1-tVOaqPwiWj0a0XlHbd8ja0QPUuQ=", + "integrity": "sha512-CB97UUvDKJde2V0KDWWB3lyf6PC3FaZP7YxZ2G8OAtn9p4HI9j9JLP9qjOGZFvyl8uwNT8qM+hGnz/n16NI7oA==", "peer": true, "engines": { "node": ">= 0.4.0" } }, "node_modules/@ngageoint/mage.service/node_modules/path-exists": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", - "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", "extraneous": true, "engines": { - "node": ">=4" + "node": ">=8" } }, "node_modules/@ngageoint/mage.service/node_modules/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=", + "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", "peer": true, "engines": { "node": ">=0.10.0" } }, "node_modules/@ngageoint/mage.service/node_modules/path-key": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", - "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=", + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", "extraneous": true, "engines": { - "node": ">=4" + "node": ">=8" } }, "node_modules/@ngageoint/mage.service/node_modules/path-parse": { @@ -10478,46 +11565,44 @@ "peer": true }, "node_modules/@ngageoint/mage.service/node_modules/path-scurry": { - "version": "1.10.1", - "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.10.1.tgz", - "integrity": "sha512-MkhCqzzBEpPvxxQ71Md0b1Kk51W01lrYvlMzSUaIzNsODdd7mqhiimSZlr+VegAz5Z6Vzt9Xg2ttE//XBhH3EQ==", + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.11.1.tgz", + "integrity": "sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==", "extraneous": true, "dependencies": { - "lru-cache": "^9.1.1 || ^10.0.0", + "lru-cache": "^10.2.0", "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0" }, "engines": { - "node": ">=16 || 14 >=14.17" + "node": ">=16 || 14 >=14.18" }, "funding": { "url": "https://github.com/sponsors/isaacs" } }, "node_modules/@ngageoint/mage.service/node_modules/path-scurry/node_modules/lru-cache": { - "version": "10.2.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.2.0.tgz", - "integrity": "sha512-2bIM8x+VAf6JT4bKAljS1qUWgMsqZRPGJS6FSahIMPVvctcNhyVp7AJu7quxOW9jwkryBReKZY5tY5JYv2n/7Q==", + "version": "10.3.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.3.0.tgz", + "integrity": "sha512-CQl19J/g+Hbjbv4Y3mFNNXFEL/5t/KCg8POCuUqd4rMKjGG+j1ybER83hxV58zL+dFI1PTkt3GNFSHRt+d8qEQ==", "extraneous": true, "engines": { "node": "14 || >=16.14" } }, "node_modules/@ngageoint/mage.service/node_modules/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=", + "version": "0.1.12", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.12.tgz", + "integrity": "sha512-RA1GjUVMnvYFxuqovrEqZoxxW5NUZqbwKtYz/Tt7nXerk0LbLblQmrsgdeOxV5SFHf0UDggjS/bSeOZwt1pmEQ==", + "license": "MIT", "peer": true }, "node_modules/@ngageoint/mage.service/node_modules/path-type": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz", - "integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", + "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", "extraneous": true, - "dependencies": { - "pify": "^3.0.0" - }, "engines": { - "node": ">=4" + "node": ">=8" } }, "node_modules/@ngageoint/mage.service/node_modules/pathval": { @@ -10532,34 +11617,18 @@ "node_modules/@ngageoint/mage.service/node_modules/pause": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/pause/-/pause-0.0.1.tgz", - "integrity": "sha1-HUCLP9t2kjuVQ9lvtMnf1TXZy10=", + "integrity": "sha512-KG8UEiEVkR3wGEb4m5yZkVCzigAD+cVEJck2CzYZO37ZGJfctvVptVO192MwrtPhzONn6go8ylnOdMhKqi4nfg==", "peer": true }, "node_modules/@ngageoint/mage.service/node_modules/pause-stream": { "version": "0.0.11", "resolved": "https://registry.npmjs.org/pause-stream/-/pause-stream-0.0.11.tgz", - "integrity": "sha1-/lo0sMvOErWqaitAPuLnO2AvFEU=", + "integrity": "sha512-e3FBlXLmN/D1S+zHzanP4E/4Z60oFAa3O051qt1pxa7DEJWKAyil6upYVXCWadEnuoqa4Pkc9oUx9zsxYeRv8A==", "peer": true, "dependencies": { "through": "~2.3" } }, - "node_modules/@ngageoint/mage.service/node_modules/pbkdf2": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.1.2.tgz", - "integrity": "sha512-iuh7L6jA7JEGu2WxDwtQP1ddOpaJNC4KlDEFfdQajSGgGPNi4OyDc2R7QnbY2bR9QjBVGwgvTdNJZoE7RaxUMA==", - "peer": true, - "dependencies": { - "create-hash": "^1.1.2", - "create-hmac": "^1.1.4", - "ripemd160": "^2.0.1", - "safe-buffer": "^5.0.1", - "sha.js": "^2.4.8" - }, - "engines": { - "node": ">=0.12" - } - }, "node_modules/@ngageoint/mage.service/node_modules/peek-readable": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/peek-readable/-/peek-readable-4.1.0.tgz", @@ -10570,61 +11639,26 @@ }, "funding": { "type": "github", - "url": "https://github.com/sponsors/Borewit" - } - }, - "node_modules/@ngageoint/mage.service/node_modules/pem-jwk": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/pem-jwk/-/pem-jwk-1.5.1.tgz", - "integrity": "sha1-eoY3/S9nqCflfAxC4cI8P9Us+wE=", - "peer": true, - "dependencies": { - "asn1.js": "1.0.3" - }, - "bin": { - "pem-jwk": "bin/pem-jwk.js" - } - }, - "node_modules/@ngageoint/mage.service/node_modules/pem-jwk/node_modules/asn1.js": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-1.0.3.tgz", - "integrity": "sha1-KBuj7B8kSP52X5Kk7s+IP+E2S1Q=", - "peer": true, - "dependencies": { - "inherits": "^2.0.1", - "minimalistic-assert": "^1.0.0" - }, - "optionalDependencies": { - "bn.js": "^1.0.0" - } - }, - "node_modules/@ngageoint/mage.service/node_modules/pem-jwk/node_modules/bn.js": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-1.3.0.tgz", - "integrity": "sha1-DbTL+W+PI7dC9by50ap6mZSgXoM=", - "optional": true, - "peer": true - }, - "node_modules/@ngageoint/mage.service/node_modules/pem2jwk": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/pem2jwk/-/pem2jwk-1.0.1.tgz", - "integrity": "sha512-OAPoqXBz01G4yL3tAHvLiC2TCIVKuzsg90zpw23GWGDz6i9Wsf1M8n1mcVmIAX2pG3JF0Oi8MehDr8PVL3K0QA==", - "peer": true, - "dependencies": { - "elliptic": "^6.4.0", - "parse-asn1": "^5.1.0" + "url": "https://github.com/sponsors/Borewit" } }, "node_modules/@ngageoint/mage.service/node_modules/pend": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz", "integrity": "sha512-F3asv42UuXchdzt+xXqfW1OGlVBe+mxa2mqI0pg5yAHZPvFmY3Y6drSf/GQ1A86WgWEN9Kzh/WrgKa6iGcHXLg==", - "extraneous": true + "extraneous": true, + "license": "MIT" }, "node_modules/@ngageoint/mage.service/node_modules/performance-now": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", - "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=", + "integrity": "sha512-7EAHlyLHI56VEIdK57uwHdHKIaAGbnXPiw0yWbarQZOKaKpvUIgW0jWRVLiatnM+XXlSwsanIBH/hzGMJulMow==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/picocolors": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.1.tgz", + "integrity": "sha512-anP1Z8qwhkbmu7MFP5iTt+wQKXgwzf7zTyGlcdzabySa9vd0Xt392U0rVmz9poOaBj0uHJKyyo9/upk0HrEQew==", "extraneous": true }, "node_modules/@ngageoint/mage.service/node_modules/picomatch": { @@ -10654,7 +11688,7 @@ "node_modules/@ngageoint/mage.service/node_modules/pify": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", - "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", + "integrity": "sha512-C3FsVNH1udSEX48gGX1xfvwTWfsYWj5U+8/uK15BGzIGrKoUpghX8hWZwa/OFnakBiiVNmBvemTJR5mcy7iPcg==", "extraneous": true, "engines": { "node": ">=4" @@ -10665,6 +11699,7 @@ "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", "extraneous": true, + "license": "MIT", "dependencies": { "find-up": "^4.0.0" }, @@ -10677,6 +11712,7 @@ "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", "extraneous": true, + "license": "MIT", "dependencies": { "locate-path": "^5.0.0", "path-exists": "^4.0.0" @@ -10690,6 +11726,7 @@ "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", "extraneous": true, + "license": "MIT", "dependencies": { "p-locate": "^4.1.0" }, @@ -10702,6 +11739,7 @@ "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", "extraneous": true, + "license": "MIT", "dependencies": { "p-try": "^2.0.0" }, @@ -10717,6 +11755,7 @@ "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", "extraneous": true, + "license": "MIT", "dependencies": { "p-limit": "^2.2.0" }, @@ -10724,43 +11763,45 @@ "node": ">=8" } }, - "node_modules/@ngageoint/mage.service/node_modules/pkg-dir/node_modules/path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "extraneous": true, - "engines": { - "node": ">=8" - } - }, "node_modules/@ngageoint/mage.service/node_modules/pkginfo": { "version": "0.3.1", "resolved": "https://registry.npmjs.org/pkginfo/-/pkginfo-0.3.1.tgz", - "integrity": "sha1-Wyn2qB9wcXFC4J52W76rl7T4HiE=", + "integrity": "sha512-yO5feByMzAp96LtP58wvPKSbaKAi/1C4kV9XpTctr6EepnP6F33RBNOiVrdz9BrPA98U2BMFsTNHo44TWcbQ2A==", "peer": true, "engines": { "node": ">= 0.4.0" } }, "node_modules/@ngageoint/mage.service/node_modules/polygon-clipping": { - "version": "0.15.3", - "resolved": "https://registry.npmjs.org/polygon-clipping/-/polygon-clipping-0.15.3.tgz", - "integrity": "sha512-ho0Xx5DLkgxRx/+n4O74XyJ67DcyN3Tu9bGYKsnTukGAW6ssnuak6Mwcyb1wHy9MZc9xsUWqIoiazkZB5weECg==", + "version": "0.15.7", + "resolved": "https://registry.npmjs.org/polygon-clipping/-/polygon-clipping-0.15.7.tgz", + "integrity": "sha512-nhfdr83ECBg6xtqOAJab1tbksbBAOMUltN60bU+llHVOL0e5Onm1WpAXXWXVB39L8AJFssoIhEVuy/S90MmotA==", "peer": true, "dependencies": { + "robust-predicates": "^3.0.2", "splaytree": "^3.1.0" } }, "node_modules/@ngageoint/mage.service/node_modules/ports": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/ports/-/ports-1.1.0.tgz", - "integrity": "sha1-twGqKF6V2ujJbNonUhdySh9/bGA=", + "integrity": "sha512-XmS7dspHnkTXZC75NkG0ti2hLj8aSyg1Izp87/2cWT7QhTo1vdtWsQ4ldp4BEQ/EXqy0s4yTATJUZ3t9RGZVpg==", "peer": true }, + "node_modules/@ngageoint/mage.service/node_modules/possible-typed-array-names": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/possible-typed-array-names/-/possible-typed-array-names-1.0.0.tgz", + "integrity": "sha512-d7Uw+eZoloe0EHDIYoe+bQ5WXnGMOpmiZFTuMWCwpjzzkL2nTjcKiAk4hh8TjnGye2TwWOk3UXucZ+3rbmBa8Q==", + "extraneous": true, + "engines": { + "node": ">= 0.4" + } + }, "node_modules/@ngageoint/mage.service/node_modules/prebuild-install": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/prebuild-install/-/prebuild-install-7.1.1.tgz", - "integrity": "sha512-jAXscXWMcCK8GgCoHOfIr0ODh5ai8mj63L2nWrjuAgXE6tDyYGnx4/8o/rCgU+B4JSyZBKbeZqzhtwtC3ovxjw==", + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/prebuild-install/-/prebuild-install-7.1.2.tgz", + "integrity": "sha512-UnNke3IQb6sgarcZIDU3gbMeTp/9SSU1DAIkil7PrqG1vZlBtY5msYccSKSHDqa3hNg436IXK+SNImReuA1wEQ==", + "optional": true, "peer": true, "dependencies": { "detect-libc": "^2.0.0", @@ -10826,9 +11867,9 @@ } }, "node_modules/@ngageoint/mage.service/node_modules/process-nextick-args": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-1.0.7.tgz", - "integrity": "sha1-FQ4gt1ZZCtP5EJPyWk8q2L/zC6M=", + "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==", "peer": true }, "node_modules/@ngageoint/mage.service/node_modules/proj4": { @@ -10892,22 +11933,23 @@ "node_modules/@ngageoint/mage.service/node_modules/pseudomap": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", - "integrity": "sha1-8FKijacOYYkX7wqKw0wa5aaChrM=", - "peer": true + "integrity": "sha512-b/YwNhb8lk1Zz2+bXXpS/LK9OisiZZ1SNsSLxN1x2OXVEhW2Ckr/7mWE5vrC1ZTiJlD9g19jWszTmJsB+oEpFQ==", + "extraneous": true }, "node_modules/@ngageoint/mage.service/node_modules/psl": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/psl/-/psl-1.8.0.tgz", - "integrity": "sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ==", + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/psl/-/psl-1.9.0.tgz", + "integrity": "sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag==", "extraneous": true }, "node_modules/@ngageoint/mage.service/node_modules/pug": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/pug/-/pug-3.0.2.tgz", - "integrity": "sha512-bp0I/hiK1D1vChHh6EfDxtndHji55XP/ZJKwsRqrz6lRia6ZC2OZbdAymlxdVFwd1L70ebrVJw4/eZ79skrIaw==", + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/pug/-/pug-3.0.3.tgz", + "integrity": "sha512-uBi6kmc9f3SZ3PXxqcHiUZLmIXgfgWooKWXcwSGwQd2Zi5Rb0bT14+8CJjJgI8AB+nndLaNgHGrcc6bPIB665g==", + "license": "MIT", "peer": true, "dependencies": { - "pug-code-gen": "^3.0.2", + "pug-code-gen": "^3.0.3", "pug-filters": "^4.0.0", "pug-lexer": "^5.0.1", "pug-linker": "^4.0.0", @@ -10929,25 +11971,25 @@ } }, "node_modules/@ngageoint/mage.service/node_modules/pug-code-gen": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/pug-code-gen/-/pug-code-gen-3.0.2.tgz", - "integrity": "sha512-nJMhW16MbiGRiyR4miDTQMRWDgKplnHyeLvioEJYbk1RsPI3FuA3saEP8uwnTb2nTJEKBU90NFVWJBk4OU5qyg==", + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/pug-code-gen/-/pug-code-gen-3.0.3.tgz", + "integrity": "sha512-cYQg0JW0w32Ux+XTeZnBEeuWrAY7/HNE6TWnhiHGnnRYlCgyAUPoyh9KzCMa9WhcJlJ1AtQqpEYHc+vbCzA+Aw==", "peer": true, "dependencies": { "constantinople": "^4.0.1", "doctypes": "^1.1.0", "js-stringify": "^1.0.2", "pug-attrs": "^3.0.0", - "pug-error": "^2.0.0", - "pug-runtime": "^3.0.0", + "pug-error": "^2.1.0", + "pug-runtime": "^3.0.1", "void-elements": "^3.1.0", "with": "^7.0.0" } }, "node_modules/@ngageoint/mage.service/node_modules/pug-error": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/pug-error/-/pug-error-2.0.0.tgz", - "integrity": "sha512-sjiUsi9M4RAGHktC1drQfCr5C5eriu24Lfbt4s+7SykztEOwVZtbFk1RRq0tzLxcMxMYTBR+zMQaG07J/btayQ==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/pug-error/-/pug-error-2.1.0.tgz", + "integrity": "sha512-lv7sU9e5Jk8IeUheHata6/UThZ7RK2jnaaNztxfPYUY+VxZyk/ePVaNZ/vwmH8WqGvDz3LrNYt/+gA55NDg6Pg==", "peer": true }, "node_modules/@ngageoint/mage.service/node_modules/pug-filters": { @@ -11029,6 +12071,7 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", + "optional": true, "peer": true, "dependencies": { "end-of-stream": "^1.1.0", @@ -11036,21 +12079,28 @@ } }, "node_modules/@ngageoint/mage.service/node_modules/punycode": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", - "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", - "extraneous": true, + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz", + "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==", + "peer": true, "engines": { "node": ">=6" } }, "node_modules/@ngageoint/mage.service/node_modules/qs": { - "version": "6.5.2", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz", - "integrity": "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==", - "extraneous": true, + "version": "6.13.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.13.0.tgz", + "integrity": "sha512-+38qI9SOr8tfZ4QmJNplMUxqjbe7LKvvZgWdExBOmd+egZTtjLB67Gu0HRX3u/XOq7UU2Nx6nsjvS16Z9uwfpg==", + "license": "BSD-3-Clause", + "peer": true, + "dependencies": { + "side-channel": "^1.0.6" + }, "engines": { "node": ">=0.6" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, "node_modules/@ngageoint/mage.service/node_modules/queue": { @@ -11082,12 +12132,6 @@ } ] }, - "node_modules/@ngageoint/mage.service/node_modules/queue-tick": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/queue-tick/-/queue-tick-1.0.1.tgz", - "integrity": "sha512-kJt5qhMxoszgU/62PLP1CJytzd2NKetjSRnyuj31fDd3Rlcz3fzlFdFLD1SItunPwyqEOkca6GbV612BWfaBag==", - "extraneous": true - }, "node_modules/@ngageoint/mage.service/node_modules/quickselect": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/quickselect/-/quickselect-2.0.0.tgz", @@ -11110,29 +12154,41 @@ "node_modules/@ngageoint/mage.service/node_modules/random-bytes": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/random-bytes/-/random-bytes-1.0.0.tgz", - "integrity": "sha1-T2ih3Arli9P7lYSMMDJNt11kNgs=", + "integrity": "sha512-iv7LhNVO047HzYR3InF6pUcUsPQiHTM1Qal51DcGSuZFBil1aBBWG5eHPNek7bvILMaYJ/8RU1e8w1AMdHmLQQ==", "peer": true, "engines": { "node": ">= 0.8" } }, + "node_modules/@ngageoint/mage.service/node_modules/randombytes": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", + "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", + "extraneous": true, + "license": "MIT", + "dependencies": { + "safe-buffer": "^5.1.0" + } + }, "node_modules/@ngageoint/mage.service/node_modules/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==", + "license": "MIT", "peer": true, "engines": { "node": ">= 0.6" } }, "node_modules/@ngageoint/mage.service/node_modules/raw-body": { - "version": "2.4.3", - "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.4.3.tgz", - "integrity": "sha512-UlTNLIcu0uzb4D2f4WltY6cVjLi+/jEN4lgEUj3E04tpMDpUlkBo/eSn6zou9hum2VMNpCCUone0O0WeJim07g==", + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.2.tgz", + "integrity": "sha512-8zGqypfENjCIqGhgXToC8aB2r7YrBX+AQAfIPs/Mlk+BtPTztOvTS01NRW/3Eh60J+a48lt8qsCzirQ6loCVfA==", + "license": "MIT", "peer": true, "dependencies": { "bytes": "3.1.2", - "http-errors": "1.8.1", + "http-errors": "2.0.0", "iconv-lite": "0.4.24", "unpipe": "1.0.0" }, @@ -11144,6 +12200,7 @@ "version": "0.4.24", "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", + "license": "MIT", "peer": true, "dependencies": { "safer-buffer": ">= 2.1.2 < 3" @@ -11165,6 +12222,7 @@ "version": "1.2.8", "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==", + "optional": true, "peer": true, "dependencies": { "deep-extend": "^0.6.0", @@ -11176,10 +12234,20 @@ "rc": "cli.js" } }, + "node_modules/@ngageoint/mage.service/node_modules/rc/node_modules/strip-json-comments": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", + "integrity": "sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ==", + "optional": true, + "peer": true, + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/@ngageoint/mage.service/node_modules/read-pkg": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-3.0.0.tgz", - "integrity": "sha1-nLxoaXj+5l0WwA4rGcI3/Pbjg4k=", + "integrity": "sha512-BLq/cCO9two+lBgiTYNqD6GdtK8s4NpaWrl6/rCO9w0TUS8oJl7cmToOZfRYllKTISY6nt1U7jQ53brmKqY6BA==", "extraneous": true, "dependencies": { "load-json-file": "^4.0.0", @@ -11190,40 +12258,96 @@ "node": ">=4" } }, - "node_modules/@ngageoint/mage.service/node_modules/readable-stream": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.0.6.tgz", - "integrity": "sha1-j5A0HmilPMySh4jaz80Rs265t44=", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/read-pkg-up": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-4.0.0.tgz", + "integrity": "sha512-6etQSH7nJGsK0RbG/2TeDzZFa8shjQ1um+SwQQ5cwKy0dhSXdOncEhb1CPpvQG4h7FyOV6EB6YlV0yJvZQNAkA==", + "extraneous": true, "dependencies": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.1", - "isarray": "~1.0.0", - "process-nextick-args": "~1.0.6", - "string_decoder": "~0.10.x", - "util-deprecate": "~1.0.1" + "find-up": "^3.0.0", + "read-pkg": "^3.0.0" + }, + "engines": { + "node": ">=6" } }, - "node_modules/@ngageoint/mage.service/node_modules/readable-web-to-node-stream": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/readable-web-to-node-stream/-/readable-web-to-node-stream-3.0.2.tgz", - "integrity": "sha512-ePeK6cc1EcKLEhJFt/AebMCLL+GgSKhuygrZ/GLaKZYEecIgIECf4UaUuaByiGtzckwR4ain9VzUh95T1exYGw==", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/read-pkg-up/node_modules/find-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "extraneous": true, "dependencies": { - "readable-stream": "^3.6.0" + "locate-path": "^3.0.0" }, "engines": { - "node": ">=8" + "node": ">=6" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/read-pkg-up/node_modules/locate-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "extraneous": true, + "dependencies": { + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/read-pkg-up/node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "extraneous": true, + "dependencies": { + "p-try": "^2.0.0" + }, + "engines": { + "node": ">=6" }, "funding": { - "type": "github", - "url": "https://github.com/sponsors/Borewit" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@ngageoint/mage.service/node_modules/readable-web-to-node-stream/node_modules/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==", + "node_modules/@ngageoint/mage.service/node_modules/read-pkg-up/node_modules/p-locate": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "extraneous": true, + "dependencies": { + "p-limit": "^2.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/read-pkg-up/node_modules/path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==", + "extraneous": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/read-pkg/node_modules/path-type": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz", + "integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==", + "extraneous": true, + "dependencies": { + "pify": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/readable-stream": { + "version": "3.6.2", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", + "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", "peer": true, "dependencies": { "inherits": "^2.0.3", @@ -11234,50 +12358,66 @@ "node": ">= 6" } }, - "node_modules/@ngageoint/mage.service/node_modules/readable-web-to-node-stream/node_modules/string_decoder": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", - "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "node_modules/@ngageoint/mage.service/node_modules/readable-web-to-node-stream": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/readable-web-to-node-stream/-/readable-web-to-node-stream-3.0.2.tgz", + "integrity": "sha512-ePeK6cc1EcKLEhJFt/AebMCLL+GgSKhuygrZ/GLaKZYEecIgIECf4UaUuaByiGtzckwR4ain9VzUh95T1exYGw==", "peer": true, "dependencies": { - "safe-buffer": "~5.2.0" + "readable-stream": "^3.6.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/Borewit" } }, "node_modules/@ngageoint/mage.service/node_modules/readdir-glob": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/readdir-glob/-/readdir-glob-1.1.1.tgz", - "integrity": "sha512-91/k1EzZwDx6HbERR+zucygRFfiPl2zkIYZtv3Jjr6Mn7SkKcVct8aVO+sSRiGMc6fLf72du3d92/uY63YPdEA==", + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/readdir-glob/-/readdir-glob-1.1.3.tgz", + "integrity": "sha512-v05I2k7xN8zXvPD9N+z/uhXPaj0sUFCe2rcWZIpBsqxfP7xXFQ0tipAd/wjj1YxWyWtUS5IDJpOG82JKt2EAVA==", + "peer": true, + "dependencies": { + "minimatch": "^5.1.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/readdir-glob/node_modules/minimatch": { + "version": "5.1.6", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz", + "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==", "peer": true, "dependencies": { - "minimatch": "^3.0.4" + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=10" } }, "node_modules/@ngageoint/mage.service/node_modules/readdirp": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.2.0.tgz", - "integrity": "sha512-crk4Qu3pmXwgxdSgGhgA/eXiJAPQiX4GMOZZMXnqKxHX7TaoL+3gQVo/WeuAiogr07DpnfjIMpXXa+PAIvwPGQ==", + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", "extraneous": true, + "license": "MIT", "dependencies": { - "picomatch": "^2.0.4" + "picomatch": "^2.2.1" }, "engines": { - "node": ">= 8" + "node": ">=8.10.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/regexp-clone": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/regexp-clone/-/regexp-clone-0.0.1.tgz", - "integrity": "sha1-p8LgmJH9vzj7sQ03b7cwA+aKxYk=", - "peer": true - }, "node_modules/@ngageoint/mage.service/node_modules/regexp.prototype.flags": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.4.2.tgz", - "integrity": "sha512-Ynz8fTQW5/1elh+jWU2EDDzeoNbD0OQ0R+D1VJU5ATOkUaro4A9YEkdN2ODQl/8UQFPPpZNw91fOcLFamM7Pww==", + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.2.tgz", + "integrity": "sha512-NcDiDkTLuPR+++OCKB0nWafEmhg/Da8aUPLPMQbK+bxKKCm1/S5he+AqYa4PlMCVBalb4/yxIRub6qkEx5yJbw==", "extraneous": true, "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3" + "call-bind": "^1.0.6", + "define-properties": "^1.2.1", + "es-errors": "^1.3.0", + "set-function-name": "^2.0.1" }, "engines": { "node": ">= 0.4" @@ -11289,7 +12429,7 @@ "node_modules/@ngageoint/mage.service/node_modules/release-zalgo": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/release-zalgo/-/release-zalgo-1.0.0.tgz", - "integrity": "sha1-CXALflB0Mpc5Mw5TXFqQ+2eFFzA=", + "integrity": "sha512-gUAyHVHPPC5wdqX/LG4LWtRYtgjxyX78oanFNTMMyFEfOqdC54s3eE82imuWKbOeqYht2CrNf64Qb8vgmmtZGA==", "extraneous": true, "dependencies": { "es6-error": "^4.0.1" @@ -11329,29 +12469,6 @@ "typedarray": "^0.0.6" } }, - "node_modules/@ngageoint/mage.service/node_modules/reproject/node_modules/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==", - "peer": true, - "dependencies": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/@ngageoint/mage.service/node_modules/reproject/node_modules/string_decoder": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", - "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", - "peer": true, - "dependencies": { - "safe-buffer": "~5.2.0" - } - }, "node_modules/@ngageoint/mage.service/node_modules/request": { "version": "2.88.2", "resolved": "https://registry.npmjs.org/request/-/request-2.88.2.tgz", @@ -11384,20 +12501,43 @@ "node": ">= 6" } }, - "node_modules/@ngageoint/mage.service/node_modules/require_optional": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/require_optional/-/require_optional-1.0.1.tgz", - "integrity": "sha512-qhM/y57enGWHAe3v/NcwML6a3/vfESLe/sGM2dII+gEO0BpKRUkWZow/tyloNqJyN6kXSl3RyyM8Ll5D/sJP8g==", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/request/node_modules/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==", + "extraneous": true, "dependencies": { - "resolve-from": "^2.0.0", - "semver": "^5.1.0" + "asynckit": "^0.4.0", + "combined-stream": "^1.0.6", + "mime-types": "^2.1.12" + }, + "engines": { + "node": ">= 0.12" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/request/node_modules/qs": { + "version": "6.5.3", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.3.tgz", + "integrity": "sha512-qxXIEh4pCGfHICj1mAJQ2/2XVZkjCDTcEgfoSQxc/fYivUZxTkk7L3bDBJSoNrEzXI17oUO5Dp07ktqE5KzczA==", + "extraneous": true, + "engines": { + "node": ">=0.6" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/request/node_modules/uuid": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", + "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==", + "deprecated": "Please upgrade to version 7 or higher. Older versions may use Math.random() in certain circumstances, which is known to be problematic. See https://v8.dev/blog/math-random for details.", + "extraneous": true, + "bin": { + "uuid": "bin/uuid" } }, "node_modules/@ngageoint/mage.service/node_modules/require-directory": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", - "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=", + "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", "extraneous": true, "engines": { "node": ">=0.10.0" @@ -11410,12 +12550,12 @@ "extraneous": true }, "node_modules/@ngageoint/mage.service/node_modules/resolve": { - "version": "1.22.0", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.0.tgz", - "integrity": "sha512-Hhtrw0nLeSrFQ7phPp4OOcVjLPIeMnRlr5mcnVuMe7M/7eBn98A3hmFRLoFo3DLZkivSYwhRUJTyPyWAk56WLw==", + "version": "1.22.8", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.8.tgz", + "integrity": "sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==", "peer": true, "dependencies": { - "is-core-module": "^2.8.1", + "is-core-module": "^2.13.0", "path-parse": "^1.0.7", "supports-preserve-symlinks-flag": "^1.0.0" }, @@ -11427,12 +12567,12 @@ } }, "node_modules/@ngageoint/mage.service/node_modules/resolve-from": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-2.0.0.tgz", - "integrity": "sha1-lICrIOlP+h2egKgEx+oUdhGWa1c=", - "peer": true, + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", + "extraneous": true, "engines": { - "node": ">=0.10.0" + "node": ">=4" } }, "node_modules/@ngageoint/mage.service/node_modules/restore-cursor": { @@ -11475,50 +12615,25 @@ "peer": true }, "node_modules/@ngageoint/mage.service/node_modules/rimraf": { - "version": "5.0.5", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-5.0.5.tgz", - "integrity": "sha512-CqDakW+hMe/Bz202FPEymy68P+G50RfMQK+Qo5YUqc9SPipvbGjCGKd0RSKEelbsfQuw3g5NZDSrlZZAJurH1A==", + "version": "5.0.10", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-5.0.10.tgz", + "integrity": "sha512-l0OE8wL34P4nJH/H2ffoaniAokM2qSmrtXHmlpvYr5AVVX8msAyW0l8NVJFDxlSK4u3Uh/f41cQheDVdnYijwQ==", "extraneous": true, + "license": "ISC", "dependencies": { "glob": "^10.3.7" }, "bin": { "rimraf": "dist/esm/bin.mjs" }, - "engines": { - "node": ">=14" - }, "funding": { "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/@ngageoint/mage.service/node_modules/rimraf/node_modules/brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", - "extraneous": true, - "dependencies": { - "balanced-match": "^1.0.0" - } - }, - "node_modules/@ngageoint/mage.service/node_modules/rimraf/node_modules/cross-spawn": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", - "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", - "extraneous": true, - "dependencies": { - "path-key": "^3.1.0", - "shebang-command": "^2.0.0", - "which": "^2.0.1" - }, - "engines": { - "node": ">= 8" - } - }, "node_modules/@ngageoint/mage.service/node_modules/rimraf/node_modules/foreground-child": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.1.1.tgz", - "integrity": "sha512-TMKDUnIte6bfb5nWv7V/caI169OHgvwjb7V4WkeUvbQQdjr5rWKqHFiKWb/fcOwB+CzBT+qbWjvj+DVwRskpIg==", + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.2.1.tgz", + "integrity": "sha512-PXUUyLqrR2XCWICfv6ukppP96sdFwWbNEnfEMt7jNsISjMsvaLNinAHNDYyvkyU+SZG2BTSbT5NjG+vZslfGTA==", "extraneous": true, "dependencies": { "cross-spawn": "^7.0.0", @@ -11532,31 +12647,32 @@ } }, "node_modules/@ngageoint/mage.service/node_modules/rimraf/node_modules/glob": { - "version": "10.3.10", - "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.10.tgz", - "integrity": "sha512-fa46+tv1Ak0UPK1TOy/pZrIybNNt4HCv7SDzwyfiOZkvZLEbjsZkJBPtDHVshZjbecAoAGSC20MjLDG/qr679g==", + "version": "10.4.2", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.2.tgz", + "integrity": "sha512-GwMlUF6PkPo3Gk21UxkCohOv0PLcIXVtKyLlpEI28R/cO/4eNOdmLk3CMW1wROV/WR/EsZOWAfBbBOqYvs88/w==", "extraneous": true, "dependencies": { "foreground-child": "^3.1.0", - "jackspeak": "^2.3.5", - "minimatch": "^9.0.1", - "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0", - "path-scurry": "^1.10.1" + "jackspeak": "^3.1.2", + "minimatch": "^9.0.4", + "minipass": "^7.1.2", + "package-json-from-dist": "^1.0.0", + "path-scurry": "^1.11.1" }, "bin": { "glob": "dist/esm/bin.mjs" }, "engines": { - "node": ">=16 || 14 >=14.17" + "node": ">=16 || 14 >=14.18" }, "funding": { "url": "https://github.com/sponsors/isaacs" } }, "node_modules/@ngageoint/mage.service/node_modules/rimraf/node_modules/minimatch": { - "version": "9.0.3", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", - "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", + "version": "9.0.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", + "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", "extraneous": true, "dependencies": { "brace-expansion": "^2.0.1" @@ -11568,36 +12684,6 @@ "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/@ngageoint/mage.service/node_modules/rimraf/node_modules/path-key": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", - "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", - "extraneous": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/@ngageoint/mage.service/node_modules/rimraf/node_modules/shebang-command": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", - "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", - "extraneous": true, - "dependencies": { - "shebang-regex": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/@ngageoint/mage.service/node_modules/rimraf/node_modules/shebang-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", - "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", - "extraneous": true, - "engines": { - "node": ">=8" - } - }, "node_modules/@ngageoint/mage.service/node_modules/rimraf/node_modules/signal-exit": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", @@ -11610,30 +12696,11 @@ "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/@ngageoint/mage.service/node_modules/rimraf/node_modules/which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "extraneous": true, - "dependencies": { - "isexe": "^2.0.0" - }, - "bin": { - "node-which": "bin/node-which" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/@ngageoint/mage.service/node_modules/ripemd160": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.2.tgz", - "integrity": "sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==", - "peer": true, - "dependencies": { - "hash-base": "^3.0.0", - "inherits": "^2.0.1" - } + "node_modules/@ngageoint/mage.service/node_modules/robust-predicates": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/robust-predicates/-/robust-predicates-3.0.2.tgz", + "integrity": "sha512-IXgzBWvWQwE6PrDI05OvmXUIruQTcoMDzRsOd5CDvHCVLcLHMTSYvOK5Cm46kWqlV3yAbuSpBZdJ5oP5OUoStg==", + "peer": true }, "node_modules/@ngageoint/mage.service/node_modules/rtree-sql.js": { "version": "1.7.0", @@ -11687,6 +12754,31 @@ "npm": ">=2.0.0" } }, + "node_modules/@ngageoint/mage.service/node_modules/rxjs/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "optional": true, + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/safe-array-concat": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/safe-array-concat/-/safe-array-concat-1.1.2.tgz", + "integrity": "sha512-vj6RsCsWBCf19jIeHEfkRMw8DPiBb+DMXklQ/1SGDHOMlHdPUkZXFQ2YdplS23zESTijAcurb1aSgJA3AgMu1Q==", + "extraneous": true, + "dependencies": { + "call-bind": "^1.0.7", + "get-intrinsic": "^1.2.4", + "has-symbols": "^1.0.3", + "isarray": "^2.0.5" + }, + "engines": { + "node": ">=0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/@ngageoint/mage.service/node_modules/safe-buffer": { "version": "5.2.1", "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", @@ -11707,6 +12799,23 @@ ], "peer": true }, + "node_modules/@ngageoint/mage.service/node_modules/safe-regex-test": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.0.3.tgz", + "integrity": "sha512-CdASjNJPvRa7roO6Ra/gLYBTzYzzPyyBXxIMdGW3USQLyjWEls2RgW5UBTXaQVp+OrpeCK3bLem8smtmheoRuw==", + "extraneous": true, + "dependencies": { + "call-bind": "^1.0.6", + "es-errors": "^1.3.0", + "is-regex": "^1.1.4" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/@ngageoint/mage.service/node_modules/safer-buffer": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", @@ -11714,24 +12823,29 @@ "peer": true }, "node_modules/@ngageoint/mage.service/node_modules/sax": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/sax/-/sax-1.3.0.tgz", - "integrity": "sha512-0s+oAmw9zLl1V1cS9BtZN7JAd0cW5e0QH4W3LWEK6a4LaLEA2OTpGYWDY+6XasBLtz6wkm3u1xRw95mRuJ59WA==", + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/sax/-/sax-1.4.1.tgz", + "integrity": "sha512-+aWOz7yVScEGoKNd4PA10LZ8sk0A/z5+nXQG5giUO5rprX9jgYsTdov9qCchZiPIZezbZH+jRut8nPodFAX4Jg==", "peer": true }, "node_modules/@ngageoint/mage.service/node_modules/semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "version": "7.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", + "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", + "license": "ISC", "peer": true, "bin": { - "semver": "bin/semver" + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" } }, "node_modules/@ngageoint/mage.service/node_modules/send": { - "version": "0.18.0", - "resolved": "https://registry.npmjs.org/send/-/send-0.18.0.tgz", - "integrity": "sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==", + "version": "0.19.0", + "resolved": "https://registry.npmjs.org/send/-/send-0.19.0.tgz", + "integrity": "sha512-dW41u5VfLXu8SJh5bwRmyYUbAoSB3c9uQh6L8h/KtsFREPWpbX1lrljJo186Jc4nmci/sGUZ9a0a0J2zgfq2hw==", + "license": "MIT", "peer": true, "dependencies": { "debug": "2.6.9", @@ -11752,27 +12866,29 @@ "node": ">= 0.8.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/send/node_modules/depd": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", - "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==", + "node_modules/@ngageoint/mage.service/node_modules/send/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "license": "MIT", "peer": true, - "engines": { - "node": ">= 0.8" + "dependencies": { + "ms": "2.0.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/send/node_modules/http-errors": { + "node_modules/@ngageoint/mage.service/node_modules/send/node_modules/debug/node_modules/ms": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", - "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "license": "MIT", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/send/node_modules/encodeurl": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", + "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==", + "license": "MIT", "peer": true, - "dependencies": { - "depd": "2.0.0", - "inherits": "2.0.4", - "setprototypeof": "1.2.0", - "statuses": "2.0.1", - "toidentifier": "1.0.1" - }, "engines": { "node": ">= 0.8" } @@ -11781,39 +12897,30 @@ "version": "2.1.3", "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "license": "MIT", "peer": true }, - "node_modules/@ngageoint/mage.service/node_modules/send/node_modules/on-finished": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz", - "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/serialize-javascript": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.2.tgz", + "integrity": "sha512-Saa1xPByTTq2gdeFZYLLo+RFE35NHZkAbqZeWNd3BpzppeVisAqpDjcp8dyf6uIvEqJRd46jemmyA4iFIeVk8g==", + "extraneous": true, + "license": "BSD-3-Clause", "dependencies": { - "ee-first": "1.1.1" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/@ngageoint/mage.service/node_modules/send/node_modules/statuses": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", - "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", - "peer": true, - "engines": { - "node": ">= 0.8" + "randombytes": "^2.1.0" } }, "node_modules/@ngageoint/mage.service/node_modules/serve-static": { - "version": "1.15.0", - "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.15.0.tgz", - "integrity": "sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==", + "version": "1.16.2", + "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.16.2.tgz", + "integrity": "sha512-VqpjJZKadQB/PEbEwvFdO43Ax5dFBZ2UECszz8bQ7pi7wt//PWe1P6MN7eCnjsatYtBT6EuiClbjSWP2WrIoTw==", + "license": "MIT", "peer": true, "dependencies": { - "encodeurl": "~1.0.2", + "encodeurl": "~2.0.0", "escape-html": "~1.0.3", "parseurl": "~1.3.3", - "send": "0.18.0" + "send": "0.19.0" }, "engines": { "node": ">= 0.8.0" @@ -11822,79 +12929,167 @@ "node_modules/@ngageoint/mage.service/node_modules/set-blocking": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", - "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=", - "optional": true, - "peer": true + "integrity": "sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==", + "extraneous": true }, - "node_modules/@ngageoint/mage.service/node_modules/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=", + "node_modules/@ngageoint/mage.service/node_modules/set-function-length": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/set-function-length/-/set-function-length-1.2.2.tgz", + "integrity": "sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==", + "peer": true, + "dependencies": { + "define-data-property": "^1.1.4", + "es-errors": "^1.3.0", + "function-bind": "^1.1.2", + "get-intrinsic": "^1.2.4", + "gopd": "^1.0.1", + "has-property-descriptors": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/set-function-name": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/set-function-name/-/set-function-name-2.0.2.tgz", + "integrity": "sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ==", "extraneous": true, + "dependencies": { + "define-data-property": "^1.1.4", + "es-errors": "^1.3.0", + "functions-have-names": "^1.2.3", + "has-property-descriptors": "^1.0.2" + }, "engines": { - "node": ">=0.10.0" + "node": ">= 0.4" } }, + "node_modules/@ngageoint/mage.service/node_modules/setimmediate": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", + "integrity": "sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA==", + "extraneous": true, + "license": "MIT" + }, "node_modules/@ngageoint/mage.service/node_modules/setprototypeof": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==", + "license": "ISC", "peer": true }, - "node_modules/@ngageoint/mage.service/node_modules/sha.js": { - "version": "2.4.11", - "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz", - "integrity": "sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "extraneous": true, "dependencies": { - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" + "shebang-regex": "^3.0.0" }, - "bin": { - "sha.js": "bin.js" + "engines": { + "node": ">=8" } }, - "node_modules/@ngageoint/mage.service/node_modules/shebang-command": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", - "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=", + "node_modules/@ngageoint/mage.service/node_modules/shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", "extraneous": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/shell-quote": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.8.1.tgz", + "integrity": "sha512-6j1W9l1iAs/4xYBI1SYOVZyFcCis9b4KCLQ8fgAGG07QvzaRLVVRQvAy85yNmmZSjYjg4MWh4gNvlPujU/5LpA==", + "extraneous": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/side-channel": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.1.0.tgz", + "integrity": "sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw==", + "license": "MIT", + "peer": true, "dependencies": { - "shebang-regex": "^1.0.0" + "es-errors": "^1.3.0", + "object-inspect": "^1.13.3", + "side-channel-list": "^1.0.0", + "side-channel-map": "^1.0.1", + "side-channel-weakmap": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/side-channel-list": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/side-channel-list/-/side-channel-list-1.0.0.tgz", + "integrity": "sha512-FCLHtRD/gnpCiCHEiJLOwdmFP+wzCmDEkc9y7NsYxeF4u7Btsn1ZuwgwJGxImImHicJArLP4R0yX4c2KCrMrTA==", + "license": "MIT", + "peer": true, + "dependencies": { + "es-errors": "^1.3.0", + "object-inspect": "^1.13.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/side-channel-map": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/side-channel-map/-/side-channel-map-1.0.1.tgz", + "integrity": "sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA==", + "license": "MIT", + "peer": true, + "dependencies": { + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.5", + "object-inspect": "^1.13.3" }, "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/@ngageoint/mage.service/node_modules/shebang-regex": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", - "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=", - "extraneous": true, - "engines": { - "node": ">=0.10.0" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/@ngageoint/mage.service/node_modules/shell-quote": { - "version": "1.7.3", - "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.7.3.tgz", - "integrity": "sha512-Vpfqwm4EnqGdlsBFNmHhxhElJYrdfcxPThu+ryKS5J8L/fhAwLazFZtq+S+TWZ9ANj2piSQLGj6NQg+lKPmxrw==", - "extraneous": true - }, - "node_modules/@ngageoint/mage.service/node_modules/side-channel": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", - "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", + "node_modules/@ngageoint/mage.service/node_modules/side-channel-weakmap": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/side-channel-weakmap/-/side-channel-weakmap-1.0.2.tgz", + "integrity": "sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A==", + "license": "MIT", "peer": true, "dependencies": { - "call-bind": "^1.0.0", - "get-intrinsic": "^1.0.2", - "object-inspect": "^1.9.0" + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.5", + "object-inspect": "^1.13.3", + "side-channel-map": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/@ngageoint/mage.service/node_modules/sift": { + "version": "16.0.1", + "resolved": "https://registry.npmjs.org/sift/-/sift-16.0.1.tgz", + "integrity": "sha512-Wv6BjQ5zbhW7VFefWusVP33T/EM0vYikCaQ2qR8yULbsilAT8/wQaXvuQ3ptGLpoKx+lihJE3y2UTgKDyyNHZQ==", + "peer": true + }, "node_modules/@ngageoint/mage.service/node_modules/signal-exit": { "version": "3.0.7", "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", @@ -11920,6 +13115,7 @@ "url": "https://feross.org/support" } ], + "optional": true, "peer": true }, "node_modules/@ngageoint/mage.service/node_modules/simple-get": { @@ -11940,6 +13136,7 @@ "url": "https://feross.org/support" } ], + "optional": true, "peer": true, "dependencies": { "decompress-response": "^6.0.0", @@ -11957,6 +13154,7 @@ "version": "7.5.0", "resolved": "https://registry.npmjs.org/sinon/-/sinon-7.5.0.tgz", "integrity": "sha512-AoD0oJWerp0/rY9czP/D6hDTTUYGpObhZjMpd7Cl/A6+j0xBE+ayL/ldfggkBXUs0IkvIiM1ljM8+WkOc5k78Q==", + "deprecated": "16.1.1", "extraneous": true, "dependencies": { "@sinonjs/commons": "^1.4.0", @@ -11969,13 +13167,14 @@ } }, "node_modules/@ngageoint/mage.service/node_modules/sinon-chai": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/sinon-chai/-/sinon-chai-3.3.0.tgz", - "integrity": "sha512-r2JhDY7gbbmh5z3Q62pNbrjxZdOAjpsqW/8yxAZRSqLZqowmfGZPGUZPFf3UX36NLis0cv8VEM5IJh9HgkSOAA==", + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/sinon-chai/-/sinon-chai-3.7.0.tgz", + "integrity": "sha512-mf5NURdUaSdnatJx3uhoBOrY9dtL19fiOtAdT1Azxg3+lNJFiuN0uzaU3xX1LeAfL17kHQhTAJgpsfhbMJMY2g==", "extraneous": true, + "license": "(BSD-2-Clause OR WTFPL)", "peerDependencies": { "chai": "^4.0.0", - "sinon": ">=4.0.0 <8.0.0" + "sinon": ">=4.0.0" } }, "node_modules/@ngageoint/mage.service/node_modules/sinon-mongoose": { @@ -11987,10 +13186,19 @@ "sinon": "5 - 7" } }, + "node_modules/@ngageoint/mage.service/node_modules/sinon/node_modules/diff": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/diff/-/diff-3.5.0.tgz", + "integrity": "sha512-A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA==", + "extraneous": true, + "engines": { + "node": ">=0.3.1" + } + }, "node_modules/@ngageoint/mage.service/node_modules/sinon/node_modules/has-flag": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", "extraneous": true, "engines": { "node": ">=4" @@ -12009,44 +13217,36 @@ } }, "node_modules/@ngageoint/mage.service/node_modules/slash": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-4.0.0.tgz", - "integrity": "sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", "extraneous": true, + "license": "MIT", "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=8" } }, - "node_modules/@ngageoint/mage.service/node_modules/sliced": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/sliced/-/sliced-1.0.1.tgz", - "integrity": "sha1-CzpmK10Ewxd7GSa+qCsD+Dei70E=", - "peer": true - }, "node_modules/@ngageoint/mage.service/node_modules/smart-buffer": { "version": "4.2.0", "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.2.0.tgz", "integrity": "sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==", - "extraneous": true, + "peer": true, "engines": { "node": ">= 6.0.0", "npm": ">= 3.0.0" } }, "node_modules/@ngageoint/mage.service/node_modules/socks": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/socks/-/socks-2.7.1.tgz", - "integrity": "sha512-7maUZy1N7uo6+WVEX6psASxtNlKaNVMlGQKkG/63nEDdLOWNbiUMoLK7X4uYoLhQstau72mLgfEWcXcwsaHbYQ==", - "extraneous": true, + "version": "2.8.3", + "resolved": "https://registry.npmjs.org/socks/-/socks-2.8.3.tgz", + "integrity": "sha512-l5x7VUUWbjVFbafGLxPWkYsHIhEvmF85tbIeFZWc8ZPtoMyybuEhL7Jye/ooC4/d48FgOjSJXgsF/AJPYCW8Zw==", + "peer": true, "dependencies": { - "ip": "^2.0.0", + "ip-address": "^9.0.5", "smart-buffer": "^4.2.0" }, "engines": { - "node": ">= 10.13.0", + "node": ">= 10.0.0", "npm": ">= 3.0.0" } }, @@ -12063,7 +13263,8 @@ "version": "3.0.3", "resolved": "https://registry.npmjs.org/sparse-bitfield/-/sparse-bitfield-3.0.3.tgz", "integrity": "sha512-kvzhi7vqKTfkh0PZU+2D2PIllw2ymqJKujUcyPMd9Y75Nv4nPbGJZXNhxsgdQab2BmlDct1YnfQCguEvHr7VsQ==", - "extraneous": true, + "optional": true, + "peer": true, "dependencies": { "memory-pager": "^1.0.2" } @@ -12082,22 +13283,11 @@ "which": "^1.3.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/spawn-wrap/node_modules/mkdirp": { - "version": "0.5.6", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", - "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", - "extraneous": true, - "dependencies": { - "minimist": "^1.2.6" - }, - "bin": { - "mkdirp": "bin/cmd.js" - } - }, "node_modules/@ngageoint/mage.service/node_modules/spawn-wrap/node_modules/rimraf": { "version": "2.7.1", "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", + "deprecated": "Rimraf versions prior to v4 are no longer supported", "extraneous": true, "dependencies": { "glob": "^7.1.3" @@ -12106,10 +13296,22 @@ "rimraf": "bin.js" } }, + "node_modules/@ngageoint/mage.service/node_modules/spawn-wrap/node_modules/which": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "extraneous": true, + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "which": "bin/which" + } + }, "node_modules/@ngageoint/mage.service/node_modules/spdx-correct": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz", - "integrity": "sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==", + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.2.0.tgz", + "integrity": "sha512-kN9dJbvnySHULIluDHy32WHRUu3Og7B9sbY7tsFLctQkIqnMh3hErYgdMjTYuqmcXX+lK5T1lnUt3G7zNswmZA==", "extraneous": true, "dependencies": { "spdx-expression-parse": "^3.0.0", @@ -12117,9 +13319,9 @@ } }, "node_modules/@ngageoint/mage.service/node_modules/spdx-exceptions": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz", - "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==", + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.5.0.tgz", + "integrity": "sha512-PiU42r+xO4UbUS1buo3LPJkjlO7430Xn5SVAhdpzzsPHsjbYVflnnFdATgabnLude+Cqu25p6N+g2lw/PFsa4w==", "extraneous": true }, "node_modules/@ngageoint/mage.service/node_modules/spdx-expression-parse": { @@ -12133,15 +13335,15 @@ } }, "node_modules/@ngageoint/mage.service/node_modules/spdx-license-ids": { - "version": "3.0.11", - "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.11.tgz", - "integrity": "sha512-Ctl2BrFiM0X3MANYgj3CkygxhRmr9mi6xhejbdO960nF6EDJApTYpn0BQnDKlnNBULKiCN1n3w9EBkHK8ZWg+g==", + "version": "3.0.18", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.18.tgz", + "integrity": "sha512-xxRs31BqRYHwiMzudOrpSiHtZ8i/GeionCBDSilhYRj+9gIcI8wCZTlXZKu9vZIVqViP3dcp9qE5G6AlIaD+TQ==", "extraneous": true }, "node_modules/@ngageoint/mage.service/node_modules/splaytree": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/splaytree/-/splaytree-3.1.1.tgz", - "integrity": "sha512-9FaQ18FF0+sZc/ieEeXHt+Jw2eSpUgUtTLDYB/HXKWvhYVyOc7h1hzkn5MMO3GPib9MmXG1go8+OsBBzs/NMww==", + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/splaytree/-/splaytree-3.1.2.tgz", + "integrity": "sha512-4OM2BJgC5UzrhVnnJA4BkHKGtjXNzzUfpQjCO8I05xYPsfS/VuQDwjCGGMi8rYQilHEV4j8NBqTFbls/PZEE7A==", "peer": true }, "node_modules/@ngageoint/mage.service/node_modules/split": { @@ -12159,13 +13361,13 @@ "node_modules/@ngageoint/mage.service/node_modules/sprintf-js": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", + "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", "peer": true }, "node_modules/@ngageoint/mage.service/node_modules/sshpk": { - "version": "1.17.0", - "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.17.0.tgz", - "integrity": "sha512-/9HIEs1ZXGhSPE8X6Ccm7Nam1z8KcoCqPdI7ecm1N33EzAetWahvQWVqLZtaZQ+IDKX4IyA2o0gBzqIMkAagHQ==", + "version": "1.18.0", + "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.18.0.tgz", + "integrity": "sha512-2p2KJZTSqQ/I3+HX42EpYOa2l3f8Erv8MWKsy2I9uf4wA7yFIkXRffYdsx86y6z4vHtV8u7g+pPlr8/4ouAxsQ==", "extraneous": true, "dependencies": { "asn1": "~0.2.3", @@ -12187,28 +13389,47 @@ "node": ">=0.10.0" } }, + "node_modules/@ngageoint/mage.service/node_modules/sshpk/node_modules/jsbn": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", + "integrity": "sha512-UVU9dibq2JcFWxQPA6KCqj5O42VOmAY3zQUfEKxU0KpTGXwNoCjkX1e13eHNvw/xPynt6pU0rZ1htjWTNTSXsg==", + "extraneous": true + }, "node_modules/@ngageoint/mage.service/node_modules/stack-trace": { "version": "0.0.10", "resolved": "https://registry.npmjs.org/stack-trace/-/stack-trace-0.0.10.tgz", - "integrity": "sha1-VHxws0fo0ytOEI6hoqFZ5f3eGcA=", + "integrity": "sha512-KGzahc7puUKkzyMt+IqAep+TVNbKP+k2Lmwhub39m1AsTSkaDutx56aDCo+HLDzf/D26BIHTJWNiTG1KAJiQCg==", "peer": true, "engines": { "node": "*" } }, "node_modules/@ngageoint/mage.service/node_modules/statuses": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", - "integrity": "sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow=", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", + "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", + "license": "MIT", "peer": true, "engines": { - "node": ">= 0.6" + "node": ">= 0.8" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/stop-iteration-iterator": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/stop-iteration-iterator/-/stop-iteration-iterator-1.0.0.tgz", + "integrity": "sha512-iCGQj+0l0HOdZ2AEeBADlsRC+vsnDsZsbdSiH1yNSjcfKM7fdpCMfqAL/dwF5BLiw/XhRft/Wax6zQbhq2BcjQ==", + "extraneous": true, + "dependencies": { + "internal-slot": "^1.0.4" + }, + "engines": { + "node": ">= 0.4" } }, "node_modules/@ngageoint/mage.service/node_modules/stream-combiner": { "version": "0.2.2", "resolved": "https://registry.npmjs.org/stream-combiner/-/stream-combiner-0.2.2.tgz", - "integrity": "sha1-rsjLrBd7Vrb0+kec7YwZEs7lKFg=", + "integrity": "sha512-6yHMqgLYDzQDcAkL+tjJDC5nSNuNIx0vZtRZeiPh7Saef7VHX9H5Ijn9l2VIol2zaNYlYEX6KyuT/237A58qEQ==", "peer": true, "dependencies": { "duplexer": "~0.1.1", @@ -12225,34 +13446,41 @@ } }, "node_modules/@ngageoint/mage.service/node_modules/streamx": { - "version": "2.15.6", - "resolved": "https://registry.npmjs.org/streamx/-/streamx-2.15.6.tgz", - "integrity": "sha512-q+vQL4AAz+FdfT137VF69Cc/APqUbxy+MDOImRrMvchJpigHj9GksgDU2LYbO9rx7RX6osWgxJB2WxhYv4SZAw==", + "version": "2.22.0", + "resolved": "https://registry.npmjs.org/streamx/-/streamx-2.22.0.tgz", + "integrity": "sha512-sLh1evHOzBy/iWRiR6d1zRcLao4gGZr3C1kzNz4fopCOKJb6xD9ub8Mpi9Mr1R6id5o43S+d93fI48UC5uM9aw==", "extraneous": true, + "license": "MIT", "dependencies": { - "fast-fifo": "^1.1.0", - "queue-tick": "^1.0.1" + "fast-fifo": "^1.3.2", + "text-decoder": "^1.1.0" + }, + "optionalDependencies": { + "bare-events": "^2.2.0" } }, "node_modules/@ngageoint/mage.service/node_modules/string_decoder": { - "version": "0.10.31", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", - "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=", - "peer": true + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "peer": true, + "dependencies": { + "safe-buffer": "~5.2.0" + } }, "node_modules/@ngageoint/mage.service/node_modules/string-width": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", - "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", "optional": true, "peer": true, "dependencies": { - "code-point-at": "^1.0.0", - "is-fullwidth-code-point": "^1.0.0", - "strip-ansi": "^3.0.0" + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" }, "engines": { - "node": ">=0.10.0" + "node": ">=8" } }, "node_modules/@ngageoint/mage.service/node_modules/string-width-cjs": { @@ -12270,45 +13498,34 @@ "node": ">=8" } }, - "node_modules/@ngageoint/mage.service/node_modules/string-width-cjs/node_modules/ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "extraneous": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/@ngageoint/mage.service/node_modules/string-width-cjs/node_modules/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==", - "extraneous": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/@ngageoint/mage.service/node_modules/string-width-cjs/node_modules/strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "node_modules/@ngageoint/mage.service/node_modules/string.prototype.padend": { + "version": "3.1.6", + "resolved": "https://registry.npmjs.org/string.prototype.padend/-/string.prototype.padend-3.1.6.tgz", + "integrity": "sha512-XZpspuSB7vJWhvJc9DLSlrXl1mcA2BdoY5jjnS135ydXqLoqhs96JjDtCkjJEQHvfqZIp9hBuBMgI589peyx9Q==", "extraneous": true, "dependencies": { - "ansi-regex": "^5.0.1" + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.2", + "es-object-atoms": "^1.0.0" }, "engines": { - "node": ">=8" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/@ngageoint/mage.service/node_modules/string.prototype.padend": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/string.prototype.padend/-/string.prototype.padend-3.1.3.tgz", - "integrity": "sha512-jNIIeokznm8SD/TZISQsZKYu7RJyheFNt84DUPrh482GC8RVp2MKqm2O5oBRdGxbDQoXrhhWtPIWQOiy20svUg==", + "node_modules/@ngageoint/mage.service/node_modules/string.prototype.trim": { + "version": "1.2.9", + "resolved": "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.9.tgz", + "integrity": "sha512-klHuCNxiMZ8MlsOihJhJEBJAiMVqU3Z2nEXWfWnIqjN0gEFS9J9+IxKozWWtQGcgoa1WUZzLjKPTr4ZHNFTFxw==", "extraneous": true, "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3", - "es-abstract": "^1.19.1" + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.0", + "es-object-atoms": "^1.0.0" }, "engines": { "node": ">= 0.4" @@ -12318,42 +13535,47 @@ } }, "node_modules/@ngageoint/mage.service/node_modules/string.prototype.trimend": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.4.tgz", - "integrity": "sha512-y9xCjw1P23Awk8EvTpcyL2NIr1j7wJ39f+k6lvRnSMz+mz9CGz9NYPelDk42kOz6+ql8xjfK8oYzy3jAP5QU5A==", + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.8.tgz", + "integrity": "sha512-p73uL5VCHCO2BZZ6krwwQE3kCzM7NKmis8S//xEC6fQonchbum4eP6kR4DLEjQFO3Wnj3Fuo8NM0kOSjVdHjZQ==", "extraneous": true, "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3" + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0" }, "funding": { "url": "https://github.com/sponsors/ljharb" } }, "node_modules/@ngageoint/mage.service/node_modules/string.prototype.trimstart": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.4.tgz", - "integrity": "sha512-jh6e984OBfvxS50tdY2nRZnoC5/mLFKOREQfw8t5yytkoUsJRNxvI/E39qu1sD0OtWI3OC0XgKSmcWwziwYuZw==", + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.8.tgz", + "integrity": "sha512-UXSH262CSZY1tfu3G3Secr6uGLCFVPMhIqHjlgCUtCCcgihYc/xKs9djMTMUOb2j1mVSeU8EU6NWc/iQKU6Gfg==", "extraneous": true, "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3" + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" } }, "node_modules/@ngageoint/mage.service/node_modules/strip-ansi": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", "optional": true, "peer": true, "dependencies": { - "ansi-regex": "^2.0.0" + "ansi-regex": "^5.0.1" }, "engines": { - "node": ">=0.10.0" + "node": ">=8" } }, "node_modules/@ngageoint/mage.service/node_modules/strip-ansi-cjs": { @@ -12369,33 +13591,34 @@ "node": ">=8" } }, - "node_modules/@ngageoint/mage.service/node_modules/strip-ansi-cjs/node_modules/ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "extraneous": true, - "engines": { - "node": ">=8" - } - }, "node_modules/@ngageoint/mage.service/node_modules/strip-bom": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", - "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=", + "integrity": "sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==", "extraneous": true, "engines": { "node": ">=4" } }, "node_modules/@ngageoint/mage.service/node_modules/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=", - "peer": true, + "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==", + "extraneous": true, "engines": { - "node": ">=0.10.0" + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/@ngageoint/mage.service/node_modules/strnum": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/strnum/-/strnum-1.0.5.tgz", + "integrity": "sha512-J8bbNyKKXl5qYcR36TIO8W3mVGVHrmmxsd5PAItGkmyzwJvybiw2IVq5nqd0i4LSNSkB/sx9VHllbfFdr9k1JA==", + "optional": true, + "peer": true + }, "node_modules/@ngageoint/mage.service/node_modules/strtok3": { "version": "6.3.0", "resolved": "https://registry.npmjs.org/strtok3/-/strtok3-6.3.0.tgz", @@ -12417,6 +13640,8 @@ "version": "8.1.2", "resolved": "https://registry.npmjs.org/superagent/-/superagent-8.1.2.tgz", "integrity": "sha512-6WTxW1EB6yCxV5VFOIPQruWGHqc3yI7hEmZK6h+pyk69Lk/Ut7rLUY6W/ONF2MjBuGjvmMiIpsrVJ2vjrHlslA==", + "deprecated": "Please upgrade to v9.0.0+ as we have fixed a public vulnerability with formidable dependency. Note that v9.0.0+ requires Node.js v14.18.0+. See https://github.com/ladjs/superagent/pull/1800 for insight. This project is supported and maintained by the team at Forward Email @ https://forwardemail.net", + "license": "MIT", "peer": true, "dependencies": { "component-emitter": "^1.3.0", @@ -12434,105 +13659,27 @@ "node": ">=6.4.0 <13 || >=14" } }, - "node_modules/@ngageoint/mage.service/node_modules/superagent/node_modules/debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", - "peer": true, - "dependencies": { - "ms": "2.1.2" - }, - "engines": { - "node": ">=6.0" - }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } - } - }, - "node_modules/@ngageoint/mage.service/node_modules/superagent/node_modules/form-data": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz", - "integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==", - "peer": true, - "dependencies": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.8", - "mime-types": "^2.1.12" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/@ngageoint/mage.service/node_modules/superagent/node_modules/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==", - "peer": true, - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, "node_modules/@ngageoint/mage.service/node_modules/superagent/node_modules/mime": { "version": "2.6.0", "resolved": "https://registry.npmjs.org/mime/-/mime-2.6.0.tgz", - "integrity": "sha512-USPkMeET31rOMiarsBNIHZKLGgvKc/LrjofAnBlOttf5ajRvqiRA8QsenbcooctK6d6Ts6aqZXBA+XbkKthiQg==", - "peer": true, - "bin": { - "mime": "cli.js" - }, - "engines": { - "node": ">=4.0.0" - } - }, - "node_modules/@ngageoint/mage.service/node_modules/superagent/node_modules/ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "peer": true - }, - "node_modules/@ngageoint/mage.service/node_modules/superagent/node_modules/qs": { - "version": "6.11.2", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.11.2.tgz", - "integrity": "sha512-tDNIz22aBzCDxLtVH++VnTfzxlfeK5CbqohpSqpJgj1Wg/cQbStNAz3NuqCs5vV+pjBsK4x4pN9HlVh7rcYRiA==", - "peer": true, - "dependencies": { - "side-channel": "^1.0.4" - }, - "engines": { - "node": ">=0.6" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/@ngageoint/mage.service/node_modules/superagent/node_modules/semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", + "integrity": "sha512-USPkMeET31rOMiarsBNIHZKLGgvKc/LrjofAnBlOttf5ajRvqiRA8QsenbcooctK6d6Ts6aqZXBA+XbkKthiQg==", "peer": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, "bin": { - "semver": "bin/semver.js" + "mime": "cli.js" }, "engines": { - "node": ">=10" + "node": ">=4.0.0" } }, "node_modules/@ngageoint/mage.service/node_modules/supertest": { - "version": "6.3.3", - "resolved": "https://registry.npmjs.org/supertest/-/supertest-6.3.3.tgz", - "integrity": "sha512-EMCG6G8gDu5qEqRQ3JjjPs6+FYT1a7Hv5ApHvtSghmOFJYtsU5S+pSb6Y2EUeCEY3CmEL3mmQ8YWlPOzQomabA==", + "version": "6.3.4", + "resolved": "https://registry.npmjs.org/supertest/-/supertest-6.3.4.tgz", + "integrity": "sha512-erY3HFDG0dPnhw4U+udPfrzXa4xhSG+n4rxfRuZWCUvjFWwKl+OxWf/7zk50s84/fAAs7vf5QAb9uRa0cCykxw==", "extraneous": true, + "license": "MIT", "dependencies": { "methods": "^1.1.2", - "superagent": "^8.0.5" + "superagent": "^8.1.2" }, "engines": { "node": ">=6.4.0" @@ -12575,28 +13722,11 @@ "node": ">=4.x" } }, - "node_modules/@ngageoint/mage.service/node_modules/tar": { - "version": "6.1.15", - "resolved": "https://registry.npmjs.org/tar/-/tar-6.1.15.tgz", - "integrity": "sha512-/zKt9UyngnxIT/EAGYuxaMYgOIJiP81ab9ZfkILq4oNLPFX50qyYmu7jRj9qeXoxmJHjGlbH0+cm2uy1WCs10A==", - "optional": true, - "peer": true, - "dependencies": { - "chownr": "^2.0.0", - "fs-minipass": "^2.0.0", - "minipass": "^5.0.0", - "minizlib": "^2.1.1", - "mkdirp": "^1.0.3", - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, "node_modules/@ngageoint/mage.service/node_modules/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==", + "optional": true, "peer": true, "dependencies": { "chownr": "^1.1.1", @@ -12621,39 +13751,6 @@ "node": ">=6" } }, - "node_modules/@ngageoint/mage.service/node_modules/tar-stream/node_modules/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==", - "peer": true, - "dependencies": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/@ngageoint/mage.service/node_modules/tar-stream/node_modules/string_decoder": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", - "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", - "peer": true, - "dependencies": { - "safe-buffer": "~5.2.0" - } - }, - "node_modules/@ngageoint/mage.service/node_modules/tar/node_modules/chownr": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", - "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==", - "optional": true, - "peer": true, - "engines": { - "node": ">=10" - } - }, "node_modules/@ngageoint/mage.service/node_modules/test-exclude": { "version": "5.2.3", "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-5.2.3.tgz", @@ -12669,81 +13766,48 @@ "node": ">=6" } }, - "node_modules/@ngageoint/mage.service/node_modules/test-exclude/node_modules/find-up": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", - "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", - "extraneous": true, - "dependencies": { - "locate-path": "^3.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/@ngageoint/mage.service/node_modules/test-exclude/node_modules/locate-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", - "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", - "extraneous": true, - "dependencies": { - "p-locate": "^3.0.0", - "path-exists": "^3.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/@ngageoint/mage.service/node_modules/test-exclude/node_modules/p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "node_modules/@ngageoint/mage.service/node_modules/test-exclude/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", "extraneous": true, "dependencies": { - "p-try": "^2.0.0" - }, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" } }, - "node_modules/@ngageoint/mage.service/node_modules/test-exclude/node_modules/p-locate": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", - "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "node_modules/@ngageoint/mage.service/node_modules/test-exclude/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", "extraneous": true, "dependencies": { - "p-limit": "^2.0.0" + "brace-expansion": "^1.1.7" }, "engines": { - "node": ">=6" + "node": "*" } }, - "node_modules/@ngageoint/mage.service/node_modules/test-exclude/node_modules/read-pkg-up": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-4.0.0.tgz", - "integrity": "sha512-6etQSH7nJGsK0RbG/2TeDzZFa8shjQ1um+SwQQ5cwKy0dhSXdOncEhb1CPpvQG4h7FyOV6EB6YlV0yJvZQNAkA==", + "node_modules/@ngageoint/mage.service/node_modules/text-decoder": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/text-decoder/-/text-decoder-1.2.3.tgz", + "integrity": "sha512-3/o9z3X0X0fTupwsYvR03pJ/DjWuqqrfwBgTQzdWDiQSm9KitAyz/9WqsT2JQW7KV2m+bC2ol/zqpW37NHxLaA==", "extraneous": true, + "license": "Apache-2.0", "dependencies": { - "find-up": "^3.0.0", - "read-pkg": "^3.0.0" - }, - "engines": { - "node": ">=6" + "b4a": "^1.6.4" } }, "node_modules/@ngageoint/mage.service/node_modules/text-table": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", - "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=", + "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==", "extraneous": true }, "node_modules/@ngageoint/mage.service/node_modules/through": { "version": "2.3.8", "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", - "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=", + "integrity": "sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==", "peer": true }, "node_modules/@ngageoint/mage.service/node_modules/tiny-inflate": { @@ -12765,6 +13829,15 @@ "node": ">=0.6.0" } }, + "node_modules/@ngageoint/mage.service/node_modules/to-fast-properties": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", + "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==", + "peer": true, + "engines": { + "node": ">=4" + } + }, "node_modules/@ngageoint/mage.service/node_modules/to-regex-range": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", @@ -12781,6 +13854,7 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz", "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==", + "license": "MIT", "peer": true, "engines": { "node": ">=0.6" @@ -12793,28 +13867,22 @@ "peer": true }, "node_modules/@ngageoint/mage.service/node_modules/token-types": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/token-types/-/token-types-2.1.1.tgz", - "integrity": "sha512-wnQcqlreS6VjthyHO3Y/kpK/emflxDBNhlNUPfh7wE39KnuDdOituXomIbyI79vBtF0Ninpkh72mcuRHo+RG3Q==", + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/token-types/-/token-types-4.2.1.tgz", + "integrity": "sha512-6udB24Q737UD/SDsKAHI9FCRP7Bqc9D/MQUV02ORQg5iskjtLJlZJNdN4kKtcdtwCeWIwIHDGaUsTsCCAa8sFQ==", "peer": true, "dependencies": { - "@tokenizer/token": "^0.1.1", + "@tokenizer/token": "^0.3.0", "ieee754": "^1.2.1" }, "engines": { - "node": ">=0.1.98" + "node": ">=10" }, "funding": { "type": "github", "url": "https://github.com/sponsors/Borewit" } }, - "node_modules/@ngageoint/mage.service/node_modules/token-types/node_modules/@tokenizer/token": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/@tokenizer/token/-/token-0.1.1.tgz", - "integrity": "sha512-XO6INPbZCxdprl+9qa/AAbFFOMzzwqYxpjPgLICrMD6C2FCw6qfJOPcBk6JqqPLSaZ/Qx87qn4rpPmPMwaAK6w==", - "peer": true - }, "node_modules/@ngageoint/mage.service/node_modules/tough-cookie": { "version": "2.5.0", "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz", @@ -12829,43 +13897,41 @@ } }, "node_modules/@ngageoint/mage.service/node_modules/tr46": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", - "integrity": "sha1-gYT9NH2snNwYWZLzpmIuFLnZq2o=", - "peer": true + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-3.0.0.tgz", + "integrity": "sha512-l7FvfAHlcmulp8kr+flpQZmVwtu7nfRV7NZujtN0OqES8EL4O4e0qqzL0DC5gAvx/ZC/9lk6rhcUwYvkBnBnYA==", + "peer": true, + "dependencies": { + "punycode": "^2.1.1" + }, + "engines": { + "node": ">=12" + } }, "node_modules/@ngageoint/mage.service/node_modules/ts-api-utils": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-1.0.3.tgz", - "integrity": "sha512-wNMeqtMz5NtwpT/UZGY5alT+VoKdSsOOP/kqHFcUW1P/VRhH2wJ48+DN2WwUliNbQ976ETwDL0Ifd2VVvgonvg==", + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-1.3.0.tgz", + "integrity": "sha512-UQMIo7pb8WRomKR1/+MFVLTroIvDVtMX3K6OUir8ynLyzB8Jeriont2bTAtmNPa1ekAgN7YPDyf6V+ygrdU+eQ==", "extraneous": true, "engines": { - "node": ">=16.13.0" + "node": ">=16" }, "peerDependencies": { "typescript": ">=4.2.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/ts-mockito": { - "version": "2.6.1", - "resolved": "https://registry.npmjs.org/ts-mockito/-/ts-mockito-2.6.1.tgz", - "integrity": "sha512-qU9m/oEBQrKq5hwfbJ7MgmVN5Gu6lFnIGWvpxSjrqq6YYEVv+RwVFWySbZMBgazsWqv6ctAyVBpo9TmAxnOEKw==", - "extraneous": true, - "dependencies": { - "lodash": "^4.17.5" - } - }, "node_modules/@ngageoint/mage.service/node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.3.tgz", + "integrity": "sha512-xNvxJEOUiWPGhUuUdQgAJPKOOJfGnIyKySOc09XkKsgdUV/3E2zvwZYdejjmRgPCgcym1juLH3226yA7sEFJKQ==", "optional": true, "peer": true }, "node_modules/@ngageoint/mage.service/node_modules/tunnel-agent": { "version": "0.6.0", "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", - "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", + "integrity": "sha512-McnNiV1l8RYeY8tBgEpuodCC1mLUdbSN+CYBL7kJsJNInOP8UjDDEwdk6Mw60vdLLrr5NHKZhMAOSrR2NZuQ+w==", + "optional": true, "peer": true, "dependencies": { "safe-buffer": "^5.0.1" @@ -12877,7 +13943,7 @@ "node_modules/@ngageoint/mage.service/node_modules/tweetnacl": { "version": "0.14.5", "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", - "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=", + "integrity": "sha512-KXXFFdAbFXY4geFIwoyNK+f5Z1b7swfXABfL7HXCmoIWMKU3dmS26672A4EeQtDzLKy7SXmfBu51JolvEKwtGA==", "extraneous": true }, "node_modules/@ngageoint/mage.service/node_modules/type-check": { @@ -12902,11 +13968,10 @@ } }, "node_modules/@ngageoint/mage.service/node_modules/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==", - "optional": true, - "peer": true, + "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==", + "extraneous": true, "engines": { "node": ">=10" }, @@ -12927,16 +13992,89 @@ "node": ">= 0.6" } }, + "node_modules/@ngageoint/mage.service/node_modules/typed-array-buffer": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/typed-array-buffer/-/typed-array-buffer-1.0.2.tgz", + "integrity": "sha512-gEymJYKZtKXzzBzM4jqa9w6Q1Jjm7x2d+sh19AdsD4wqnMPDYyvwpsIc2Q/835kHuo3BEQ7CjelGhfTsoBb2MQ==", + "extraneous": true, + "dependencies": { + "call-bind": "^1.0.7", + "es-errors": "^1.3.0", + "is-typed-array": "^1.1.13" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/typed-array-byte-length": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/typed-array-byte-length/-/typed-array-byte-length-1.0.1.tgz", + "integrity": "sha512-3iMJ9q0ao7WE9tWcaYKIptkNBuOIcZCCT0d4MRvuuH88fEoEH62IuQe0OtraD3ebQEoTRk8XCBoknUNc1Y67pw==", + "extraneous": true, + "dependencies": { + "call-bind": "^1.0.7", + "for-each": "^0.3.3", + "gopd": "^1.0.1", + "has-proto": "^1.0.3", + "is-typed-array": "^1.1.13" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/typed-array-byte-offset": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/typed-array-byte-offset/-/typed-array-byte-offset-1.0.2.tgz", + "integrity": "sha512-Ous0vodHa56FviZucS2E63zkgtgrACj7omjwd/8lTEMEPFFyjfixMZ1ZXenpgCFBBt4EC1J2XsyVS2gkG0eTFA==", + "extraneous": true, + "dependencies": { + "available-typed-arrays": "^1.0.7", + "call-bind": "^1.0.7", + "for-each": "^0.3.3", + "gopd": "^1.0.1", + "has-proto": "^1.0.3", + "is-typed-array": "^1.1.13" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/typed-array-length": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/typed-array-length/-/typed-array-length-1.0.6.tgz", + "integrity": "sha512-/OxDN6OtAk5KBpGb28T+HZc2M+ADtvRxXrKKbUwtsLgdoxgX13hyy7ek6bFRl5+aBs2yZzB0c4CnQfAtVypW/g==", + "extraneous": true, + "dependencies": { + "call-bind": "^1.0.7", + "for-each": "^0.3.3", + "gopd": "^1.0.1", + "has-proto": "^1.0.3", + "is-typed-array": "^1.1.13", + "possible-typed-array-names": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/@ngageoint/mage.service/node_modules/typedarray": { "version": "0.0.6", "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", - "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=", + "integrity": "sha512-/aCDEGatGvZ2BIk+HmLf4ifCJFwvKFNb9/JeZPMulfgFracn9QFcAf5GO8B/mweUjSoblS5In0cWhqpfs/5PQA==", "peer": true }, "node_modules/@ngageoint/mage.service/node_modules/typescript": { - "version": "4.6.4", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.6.4.tgz", - "integrity": "sha512-9ia/jWHIEbo49HfjrLGfKbZSuWo9iTMwXO+Ca3pRsSpbsMbc7/IU8NKdCZVRRBafVPGnoJeFL76ZOAA84I9fEg==", + "version": "4.9.5", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.9.5.tgz", + "integrity": "sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g==", "extraneous": true, "bin": { "tsc": "bin/tsc", @@ -12965,14 +14103,14 @@ "peer": true }, "node_modules/@ngageoint/mage.service/node_modules/unbox-primitive": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.1.tgz", - "integrity": "sha512-tZU/3NqK3dA5gpE1KtyiJUrEB0lxnGkMFHptJ7q6ewdZ8s12QrODwNbhIJStmJkd1QDXa1NRA8aF2A1zk/Ypyw==", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.2.tgz", + "integrity": "sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==", "extraneous": true, "dependencies": { - "function-bind": "^1.1.1", - "has-bigints": "^1.0.1", - "has-symbols": "^1.0.2", + "call-bind": "^1.0.2", + "has-bigints": "^1.0.2", + "has-symbols": "^1.0.3", "which-boxed-primitive": "^1.0.2" }, "funding": { @@ -12980,15 +14118,24 @@ } }, "node_modules/@ngageoint/mage.service/node_modules/underscore": { - "version": "1.8.3", - "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.8.3.tgz", - "integrity": "sha1-Tz+1OxBuYJf8+ctBCfKl6b36UCI=", + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.12.1.tgz", + "integrity": "sha512-hEQt0+ZLDVUMhebKxL4x1BTtDY7bavVofhZ9KZ4aI26X9SRaE+Y3m83XUL1UP2jn8ynjndwCCpEHdUG+9pP1Tw==", + "license": "MIT", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/undici-types": { + "version": "5.26.5", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-5.26.5.tgz", + "integrity": "sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==", + "license": "MIT", "peer": true }, "node_modules/@ngageoint/mage.service/node_modules/uniqid": { "version": "5.4.0", "resolved": "https://registry.npmjs.org/uniqid/-/uniqid-5.4.0.tgz", "integrity": "sha512-38JRbJ4Fj94VmnC7G/J/5n5SC7Ab46OM5iNtSstB/ko3l1b5g7ALt4qzHFgGciFkyiRNtDXtLNb+VsxtMSE77A==", + "license": "MIT", "peer": true }, "node_modules/@ngageoint/mage.service/node_modules/universalify": { @@ -13003,7 +14150,7 @@ "node_modules/@ngageoint/mage.service/node_modules/unpipe": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", - "integrity": "sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw=", + "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==", "peer": true, "engines": { "node": ">= 0.8" @@ -13018,43 +14165,33 @@ "punycode": "^2.1.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/util": { - "version": "0.12.4", - "resolved": "https://registry.npmjs.org/util/-/util-0.12.4.tgz", - "integrity": "sha512-bxZ9qtSlGUWSOy9Qa9Xgk11kSslpuZwaxCg4sNIDj6FLucDab2JxnHwyNTCpHMtK1MjoQiWQ6DiUMZYbSrO+Sw==", - "extraneous": true, - "dependencies": { - "inherits": "^2.0.3", - "is-arguments": "^1.0.4", - "is-generator-function": "^1.0.7", - "is-typed-array": "^1.1.3", - "safe-buffer": "^5.1.2", - "which-typed-array": "^1.1.2" - } - }, "node_modules/@ngageoint/mage.service/node_modules/util-deprecate": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=", + "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", "peer": true }, "node_modules/@ngageoint/mage.service/node_modules/utils-merge": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", - "integrity": "sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM=", + "integrity": "sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==", "peer": true, "engines": { "node": ">= 0.4.0" } }, "node_modules/@ngageoint/mage.service/node_modules/uuid": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", - "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==", - "deprecated": "Please upgrade to version 7 or higher. Older versions may use Math.random() in certain circumstances, which is known to be problematic. See https://v8.dev/blog/math-random for details.", - "extraneous": true, + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-9.0.1.tgz", + "integrity": "sha512-b+1eJOlsR9K8HJpow9Ok3fiWOWSIcIzXodvv0rQjVoOVNpWMpxf1wZNpt4y9h10odCNrqnYp1OBzRktckBe3sA==", + "funding": [ + "https://github.com/sponsors/broofa", + "https://github.com/sponsors/ctavan" + ], + "optional": true, + "peer": true, "bin": { - "uuid": "bin/uuid" + "uuid": "dist/bin/uuid" } }, "node_modules/@ngageoint/mage.service/node_modules/validate-npm-package-license": { @@ -13070,7 +14207,7 @@ "node_modules/@ngageoint/mage.service/node_modules/vary": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", - "integrity": "sha1-IpnwLG3tMNSllhsLn3RSShj2NPw=", + "integrity": "sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==", "peer": true, "engines": { "node": ">= 0.8" @@ -13088,12 +14225,6 @@ "verror": "1.10.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/vasync/node_modules/core-util-is": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", - "integrity": "sha512-3lqz5YjWTYnW6dlDa5TLaTCcShfar1e40rmcJVwCBJC6mWlFuj0eCHIElmG1g5kyuJ/GD+8Wn4FFCcz4gJPfaQ==", - "peer": true - }, "node_modules/@ngageoint/mage.service/node_modules/vasync/node_modules/verror": { "version": "1.10.0", "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", @@ -13122,12 +14253,6 @@ "node": ">=0.6.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/verror/node_modules/core-util-is": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", - "integrity": "sha512-3lqz5YjWTYnW6dlDa5TLaTCcShfar1e40rmcJVwCBJC6mWlFuj0eCHIElmG1g5kyuJ/GD+8Wn4FFCcz4gJPfaQ==", - "peer": true - }, "node_modules/@ngageoint/mage.service/node_modules/void-elements": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/void-elements/-/void-elements-3.1.0.tgz", @@ -13138,19 +14263,23 @@ } }, "node_modules/@ngageoint/mage.service/node_modules/walk": { - "version": "2.3.4", - "resolved": "https://registry.npmjs.org/walk/-/walk-2.3.4.tgz", - "integrity": "sha1-Bs4VQVNTE+iswo6S60Jem2T0xQA=", + "version": "2.3.15", + "resolved": "https://registry.npmjs.org/walk/-/walk-2.3.15.tgz", + "integrity": "sha512-4eRTBZljBfIISK1Vnt69Gvr2w/wc3U6Vtrw7qiN5iqYJPH7LElcYh/iU4XWhdCy2dZqv1ToMyYlybDylfG/5Vg==", + "license": "(MIT OR Apache-2.0)", "peer": true, "dependencies": { - "foreachasync": "3.x" + "foreachasync": "^3.0.0" } }, "node_modules/@ngageoint/mage.service/node_modules/webidl-conversions": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", - "integrity": "sha1-JFNCdeKnvGvnvIZhHMFq4KVlSHE=", - "peer": true + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-7.0.0.tgz", + "integrity": "sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==", + "peer": true, + "engines": { + "node": ">=12" + } }, "node_modules/@ngageoint/mage.service/node_modules/webworkify": { "version": "1.5.0", @@ -13159,25 +14288,31 @@ "peer": true }, "node_modules/@ngageoint/mage.service/node_modules/whatwg-url": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", - "integrity": "sha1-lmRU6HZUYuN2RNNib2dCzotwll0=", + "version": "11.0.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-11.0.0.tgz", + "integrity": "sha512-RKT8HExMpoYx4igMiVMY83lN6UeITKJlBQ+vR/8ZJ8OCdSiN3RwCq+9gH0+Xzj0+5IrM6i4j/6LuvzbZIQgEcQ==", "peer": true, "dependencies": { - "tr46": "~0.0.3", - "webidl-conversions": "^3.0.0" + "tr46": "^3.0.0", + "webidl-conversions": "^7.0.0" + }, + "engines": { + "node": ">=12" } }, "node_modules/@ngageoint/mage.service/node_modules/which": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", - "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", - "peer": true, + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "extraneous": true, "dependencies": { "isexe": "^2.0.0" }, "bin": { - "which": "bin/which" + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" } }, "node_modules/@ngageoint/mage.service/node_modules/which-boxed-primitive": { @@ -13197,38 +14332,40 @@ } }, "node_modules/@ngageoint/mage.service/node_modules/which-collection": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/which-collection/-/which-collection-1.0.1.tgz", - "integrity": "sha512-W8xeTUwaln8i3K/cY1nGXzdnVZlidBcagyNFtBdD5kxnb4TvGKR7FfSIS3mYpwWS1QUCutfKz8IY8RjftB0+1A==", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/which-collection/-/which-collection-1.0.2.tgz", + "integrity": "sha512-K4jVyjnBdgvc86Y6BkaLZEN933SwYOuBFkdmBu9ZfkcAbdVbpITnDmjvZ/aQjRXQrv5EPkTnD1s39GiiqbngCw==", "extraneous": true, "dependencies": { - "is-map": "^2.0.1", - "is-set": "^2.0.1", - "is-weakmap": "^2.0.1", - "is-weakset": "^2.0.1" + "is-map": "^2.0.3", + "is-set": "^2.0.3", + "is-weakmap": "^2.0.2", + "is-weakset": "^2.0.3" + }, + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" } }, "node_modules/@ngageoint/mage.service/node_modules/which-module": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", - "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.1.tgz", + "integrity": "sha512-iBdZ57RDvnOR9AGBhML2vFZf7h8vmBjhoaZqODJBFWHVtKkDmKuHai3cx5PgVMrX5YDNp27AofYbAwctSS+vhQ==", "extraneous": true }, "node_modules/@ngageoint/mage.service/node_modules/which-typed-array": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.7.tgz", - "integrity": "sha512-vjxaB4nfDqwKI0ws7wZpxIlde1XrLX5uB0ZjpfshgmapJMD7jJWhZI+yToJTqaFByF0eNBcYxbjmCzoRP7CfEw==", + "version": "1.1.15", + "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.15.tgz", + "integrity": "sha512-oV0jmFtUky6CXfkqehVvBP/LSWJ2sy4vWMioiENyJLePrBO/yKyV9OyJySfAKosh+RYkIl5zJCNZ8/4JncrpdA==", "extraneous": true, "dependencies": { - "available-typed-arrays": "^1.0.5", - "call-bind": "^1.0.2", - "es-abstract": "^1.18.5", - "foreach": "^2.0.5", - "has-tostringtag": "^1.0.0", - "is-typed-array": "^1.1.7" + "available-typed-arrays": "^1.0.7", + "call-bind": "^1.0.7", + "for-each": "^0.3.3", + "gopd": "^1.0.1", + "has-tostringtag": "^1.0.2" }, "engines": { "node": ">= 0.4" @@ -13237,23 +14374,14 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/@ngageoint/mage.service/node_modules/wide-align": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.5.tgz", - "integrity": "sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==", - "optional": true, - "peer": true, - "dependencies": { - "string-width": "^1.0.2 || 2 || 3 || 4" - } - }, "node_modules/@ngageoint/mage.service/node_modules/winston": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/winston/-/winston-1.0.1.tgz", - "integrity": "sha1-TG9aEWfrxRasKbduTq24c8FSiaQ=", + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/winston/-/winston-1.1.2.tgz", + "integrity": "sha512-rl9hA8se2gjdYI6nP1f+kjjSCFCZrObIJB/eXOcMdzWxxcYp7exyc5Bs248fwLT+wHA/+aK0VtBlPHL8qO0T0w==", + "license": "MIT", "peer": true, "dependencies": { - "async": "0.9.x", + "async": "~1.0.0", "colors": "1.0.x", "cycle": "1.0.x", "eyes": "0.1.x", @@ -13266,9 +14394,10 @@ } }, "node_modules/@ngageoint/mage.service/node_modules/winston/node_modules/async": { - "version": "0.9.2", - "resolved": "https://registry.npmjs.org/async/-/async-0.9.2.tgz", - "integrity": "sha1-rqdNXmHB+JlhO/ZL2mbUx48v0X0=", + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/async/-/async-1.0.0.tgz", + "integrity": "sha512-5mO7DX4CbJzp9zjaFXusQQ4tzKJARjNB1Ih1pVBi8wkbmXy/xzIDgEMXxWePLzt2OdFwaxfneIlT1nCiXubrPQ==", + "license": "MIT", "peer": true }, "node_modules/@ngageoint/mage.service/node_modules/with": { @@ -13287,44 +14416,62 @@ } }, "node_modules/@ngageoint/mage.service/node_modules/wkt-parser": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/wkt-parser/-/wkt-parser-1.3.2.tgz", - "integrity": "sha512-A26BOOo7sHAagyxG7iuRhnKMO7Q3mEOiOT4oGUmohtN/Li5wameeU4S6f8vWw6NADTVKljBs8bzA8JPQgSEMVQ==", + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/wkt-parser/-/wkt-parser-1.3.3.tgz", + "integrity": "sha512-ZnV3yH8/k58ZPACOXeiHaMuXIiaTk1t0hSUVisbO0t4RjA5wPpUytcxeyiN2h+LZRrmuHIh/1UlrR9e7DHDvTw==", "peer": true }, "node_modules/@ngageoint/mage.service/node_modules/wkx": { - "version": "0.4.8", - "resolved": "https://registry.npmjs.org/wkx/-/wkx-0.4.8.tgz", - "integrity": "sha512-ikPXMM9IR/gy/LwiOSqWlSL3X/J5uk9EO2hHNRXS41eTLXaUFEVw9fn/593jW/tE5tedNg8YjT5HkCa4FqQZyQ==", + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/wkx/-/wkx-0.5.0.tgz", + "integrity": "sha512-Xng/d4Ichh8uN4l0FToV/258EjMGU9MGcA0HV2d9B/ZpZB3lqQm7nkOdZdm5GhKtLLhAE7PiVQwN4eN+2YJJUg==", + "license": "MIT", "peer": true, "dependencies": { "@types/node": "*" } }, "node_modules/@ngageoint/mage.service/node_modules/wms-capabilities": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/wms-capabilities/-/wms-capabilities-0.4.1.tgz", - "integrity": "sha512-BfGzjDtF3GdWRFvySqf8y9EU1gBIzAd6zIlg+J6q9rYxiqz+YMAmSOHnMPRNOuP2VGPvcNkxXZdxBtMO0D652g==", + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/wms-capabilities/-/wms-capabilities-0.6.0.tgz", + "integrity": "sha512-yTbtesuSyKkHhw1TUX4VklXEkbQByc+hyo7TWq1sGjBA6tQ+XN32w546TPDTzROuwFTE/Dcq5F5FN4aA9nesaQ==", + "license": "BSD-2-Clause", "peer": true, - "dependencies": { - "minimist": "^1.2.0" - }, "bin": { "wmscapabilities": "bin/wmscapabilities" } }, + "node_modules/@ngageoint/mage.service/node_modules/word-wrap": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.5.tgz", + "integrity": "sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==", + "extraneous": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/workerpool": { + "version": "6.5.1", + "resolved": "https://registry.npmjs.org/workerpool/-/workerpool-6.5.1.tgz", + "integrity": "sha512-Fs4dNYcsdpYSAfVxhnl1L5zTksjvOJxtC5hzMNl+1t9B8hTJTdKDyZ5ju7ztgPy+ft9tBFXoOlDNiOT9WUXZlA==", + "extraneous": true, + "license": "Apache-2.0" + }, "node_modules/@ngageoint/mage.service/node_modules/wrap-ansi": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-5.1.0.tgz", - "integrity": "sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q==", + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", "extraneous": true, "dependencies": { - "ansi-styles": "^3.2.0", - "string-width": "^3.0.0", - "strip-ansi": "^5.0.0" + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" }, "engines": { - "node": ">=6" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" } }, "node_modules/@ngageoint/mage.service/node_modules/wrap-ansi-cjs": { @@ -13345,541 +14492,909 @@ "url": "https://github.com/chalk/wrap-ansi?sponsor=1" } }, - "node_modules/@ngageoint/mage.service/node_modules/wrap-ansi-cjs/node_modules/ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "node_modules/@ngageoint/mage.service/node_modules/wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/write-file-atomic": { + "version": "2.4.3", + "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-2.4.3.tgz", + "integrity": "sha512-GaETH5wwsX+GcnzhPgKcKjJ6M2Cq3/iZp1WyY/X1CSqrW+jVNM9Y7D8EC2sM4ZG/V8wZlSniJnCKWPmBYAucRQ==", "extraneous": true, + "dependencies": { + "graceful-fs": "^4.1.11", + "imurmurhash": "^0.1.4", + "signal-exit": "^3.0.2" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/xml-crypto": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/xml-crypto/-/xml-crypto-3.2.0.tgz", + "integrity": "sha512-qVurBUOQrmvlgmZqIVBqmb06TD2a/PpEUfFPgD7BuBfjmoH4zgkqaWSIJrnymlCvM2GGt9x+XtJFA+ttoAufqg==", + "peer": true, + "dependencies": { + "@xmldom/xmldom": "^0.8.8", + "xpath": "0.0.32" + }, "engines": { - "node": ">=8" + "node": ">=4.0.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/wrap-ansi-cjs/node_modules/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==", + "node_modules/@ngageoint/mage.service/node_modules/xml-crypto/node_modules/@xmldom/xmldom": { + "version": "0.8.10", + "resolved": "https://registry.npmjs.org/@xmldom/xmldom/-/xmldom-0.8.10.tgz", + "integrity": "sha512-2WALfTl4xo2SkGCYRt6rDTFfk9R1czmBvUQy12gK2KuRKIpWEhcbbzy8EZXtz/jkRqHX8bFEc6FC1HjX4TUWYw==", + "license": "MIT", + "peer": true, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/xml-crypto/node_modules/xpath": { + "version": "0.0.32", + "resolved": "https://registry.npmjs.org/xpath/-/xpath-0.0.32.tgz", + "integrity": "sha512-rxMJhSIoiO8vXcWvSifKqhvV96GjiD5wYb8/QHdoRyQvraTpp4IEv944nhGausZZ3u7dhQXteZuZbaqfpB7uYw==", + "peer": true, + "engines": { + "node": ">=0.6.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/xml-encryption": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/xml-encryption/-/xml-encryption-3.0.2.tgz", + "integrity": "sha512-VxYXPvsWB01/aqVLd6ZMPWZ+qaj0aIdF+cStrVJMcFj3iymwZeI0ABzB3VqMYv48DkSpRhnrXqTUkR34j+UDyg==", + "peer": true, + "dependencies": { + "@xmldom/xmldom": "^0.8.5", + "escape-html": "^1.0.3", + "xpath": "0.0.32" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/xml-encryption/node_modules/@xmldom/xmldom": { + "version": "0.8.10", + "resolved": "https://registry.npmjs.org/@xmldom/xmldom/-/xmldom-0.8.10.tgz", + "integrity": "sha512-2WALfTl4xo2SkGCYRt6rDTFfk9R1czmBvUQy12gK2KuRKIpWEhcbbzy8EZXtz/jkRqHX8bFEc6FC1HjX4TUWYw==", + "license": "MIT", + "peer": true, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/xml-encryption/node_modules/xpath": { + "version": "0.0.32", + "resolved": "https://registry.npmjs.org/xpath/-/xpath-0.0.32.tgz", + "integrity": "sha512-rxMJhSIoiO8vXcWvSifKqhvV96GjiD5wYb8/QHdoRyQvraTpp4IEv944nhGausZZ3u7dhQXteZuZbaqfpB7uYw==", + "peer": true, + "engines": { + "node": ">=0.6.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/xml2js": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/xml2js/-/xml2js-0.5.0.tgz", + "integrity": "sha512-drPFnkQJik/O+uPKpqSgr22mpuFHqKdbS835iAQrUC73L2F5WkboIRd63ai/2Yg6I1jzifPFKH2NTK+cfglkIA==", + "peer": true, + "dependencies": { + "sax": ">=0.6.0", + "xmlbuilder": "~11.0.0" + }, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/xml2js/node_modules/xmlbuilder": { + "version": "11.0.1", + "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-11.0.1.tgz", + "integrity": "sha512-fDlsI/kFEx7gLvbecc0/ohLG50fugQp8ryHzMTuW9vSa1GJ0XYWKnhsUx7oie3G98+r56aTQIUB4kht42R3JvA==", + "peer": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/xmlbuilder": { + "version": "15.1.1", + "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-15.1.1.tgz", + "integrity": "sha512-yMqGBqtXyeN1e3TGYvgNgDVZ3j84W4cwkOXQswghol6APgZWaff9lnbvN7MHYJOiXsvGPXtjTYJEiC9J2wv9Eg==", + "peer": true, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/xmlbuilder2": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/xmlbuilder2/-/xmlbuilder2-3.1.1.tgz", + "integrity": "sha512-WCSfbfZnQDdLQLiMdGUQpMxxckeQ4oZNMNhLVkcekTu7xhD4tuUDyAPoY8CwXvBYE6LwBHd6QW2WZXlOWr1vCw==", + "license": "MIT", + "peer": true, + "dependencies": { + "@oozcitak/dom": "1.15.10", + "@oozcitak/infra": "1.0.8", + "@oozcitak/util": "8.3.8", + "js-yaml": "3.14.1" + }, + "engines": { + "node": ">=12.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/xmlbuilder2/node_modules/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==", + "license": "MIT", + "peer": true, + "dependencies": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/xpath": { + "version": "0.0.34", + "resolved": "https://registry.npmjs.org/xpath/-/xpath-0.0.34.tgz", + "integrity": "sha512-FxF6+rkr1rNSQrhUNYrAFJpRXNzlDoMxeXN5qI84939ylEv3qqPFKa85Oxr6tDaJKqwW6KKyo2v26TSv3k6LeA==", + "license": "MIT", + "peer": true, + "engines": { + "node": ">=0.6.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/xtend": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", + "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==", + "peer": true, + "engines": { + "node": ">=0.4" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/y18n": { + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", + "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", + "extraneous": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/yallist": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", + "integrity": "sha512-ncTzHV7NvsQZkYe1DW7cbDLm0YpzHmZF5r/iyP3ZnQtMiJ+pjzisCiMNI+Sj+xQF5pXhSHxSB3uDbsBTzY/c2A==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/yaml": { + "version": "1.10.2", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz", + "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==", + "license": "ISC", + "peer": true, + "engines": { + "node": ">= 6" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/yargs": { + "version": "16.2.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", + "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", + "extraneous": true, + "dependencies": { + "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" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/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==", "extraneous": true, + "license": "ISC", "engines": { - "node": ">=8" + "node": ">=10" } }, - "node_modules/@ngageoint/mage.service/node_modules/wrap-ansi-cjs/node_modules/string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "node_modules/@ngageoint/mage.service/node_modules/yargs-unparser": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/yargs-unparser/-/yargs-unparser-2.0.0.tgz", + "integrity": "sha512-7pRTIA9Qc1caZ0bZ6RYRGbHJthJWuakf+WmHK0rVeLkNrrGhfoabBNdue6kdINI6r4if7ocq9aD/n7xwKOdzOA==", "extraneous": true, "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" + "camelcase": "^6.0.0", + "decamelize": "^4.0.0", + "flat": "^5.0.2", + "is-plain-obj": "^2.1.0" }, "engines": { - "node": ">=8" + "node": ">=10" } }, - "node_modules/@ngageoint/mage.service/node_modules/wrap-ansi-cjs/node_modules/strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "node_modules/@ngageoint/mage.service/node_modules/yauzl": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/yauzl/-/yauzl-3.2.0.tgz", + "integrity": "sha512-Ow9nuGZE+qp1u4JIPvg+uCiUr7xGQWdff7JQSk5VGYTAZMDe2q8lxJ10ygv10qmSj031Ty/6FNJpLO4o1Sgc+w==", "extraneous": true, + "license": "MIT", "dependencies": { - "ansi-regex": "^5.0.1" + "buffer-crc32": "~0.2.3", + "pend": "~1.2.0" }, "engines": { - "node": ">=8" + "node": ">=12" } }, - "node_modules/@ngageoint/mage.service/node_modules/wrap-ansi/node_modules/ansi-regex": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.1.tgz", - "integrity": "sha512-ILlv4k/3f6vfQ4OoP2AGvirOktlQ98ZEL1k9FaQjxa3L1abBgbuTDAdPOpvbGncC0BTVQrl+OM8xZGK6tWXt7g==", + "node_modules/@ngageoint/mage.service/node_modules/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==", "extraneous": true, "engines": { - "node": ">=6" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@ngageoint/mage.service/node_modules/wrap-ansi/node_modules/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==", - "extraneous": true, + "node_modules/@ngageoint/mage.service/node_modules/zip-stream": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/zip-stream/-/zip-stream-4.1.1.tgz", + "integrity": "sha512-9qv4rlDiopXg4E69k+vMHjNN63YFMe9sZMrdlvKnCjlCRWeCBswPPMPUfx+ipsAWq1LXHe70RcbaHdJJpS6hyQ==", + "peer": true, "dependencies": { - "color-convert": "^1.9.0" + "archiver-utils": "^3.0.4", + "compress-commons": "^4.1.2", + "readable-stream": "^3.6.0" }, "engines": { - "node": ">=4" + "node": ">= 10" } }, - "node_modules/@ngageoint/mage.service/node_modules/wrap-ansi/node_modules/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==", - "extraneous": true, + "node_modules/@ngageoint/mage.service/node_modules/zip-stream/node_modules/archiver-utils": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/archiver-utils/-/archiver-utils-3.0.4.tgz", + "integrity": "sha512-KVgf4XQVrTjhyWmx6cte4RxonPLR9onExufI1jhvw/MQ4BB6IsZD5gT8Lq+u/+pRkWna/6JoHpiQioaqFP5Rzw==", + "peer": true, "dependencies": { - "color-name": "1.1.3" + "glob": "^7.2.3", + "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": "^3.6.0" + }, + "engines": { + "node": ">= 10" } }, - "node_modules/@ngageoint/mage.service/node_modules/wrap-ansi/node_modules/color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", - "extraneous": true + "node_modules/@pkgjs/parseargs": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/@pkgjs/parseargs/-/parseargs-0.11.0.tgz", + "integrity": "sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==", + "dev": true, + "optional": true, + "engines": { + "node": ">=14" + } }, - "node_modules/@ngageoint/mage.service/node_modules/wrap-ansi/node_modules/emoji-regex": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", - "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", - "extraneous": true + "node_modules/@smithy/abort-controller": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/@smithy/abort-controller/-/abort-controller-4.0.1.tgz", + "integrity": "sha512-fiUIYgIgRjMWznk6iLJz35K2YxSLHzLBA/RC6lBrKfQ8fHbPfvk7Pk9UvpKoHgJjI18MnbPuEju53zcVy6KF1g==", + "optional": true, + "peer": true, + "dependencies": { + "@smithy/types": "^4.1.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=18.0.0" + } }, - "node_modules/@ngageoint/mage.service/node_modules/wrap-ansi/node_modules/is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", - "extraneous": true, + "node_modules/@smithy/config-resolver": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/@smithy/config-resolver/-/config-resolver-4.0.1.tgz", + "integrity": "sha512-Igfg8lKu3dRVkTSEm98QpZUvKEOa71jDX4vKRcvJVyRc3UgN3j7vFMf0s7xLQhYmKa8kyJGQgUJDOV5V3neVlQ==", + "optional": true, + "peer": true, + "dependencies": { + "@smithy/node-config-provider": "^4.0.1", + "@smithy/types": "^4.1.0", + "@smithy/util-config-provider": "^4.0.0", + "@smithy/util-middleware": "^4.0.1", + "tslib": "^2.6.2" + }, "engines": { - "node": ">=4" + "node": ">=18.0.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/wrap-ansi/node_modules/string-width": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", - "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", - "extraneous": true, + "node_modules/@smithy/core": { + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/@smithy/core/-/core-3.1.5.tgz", + "integrity": "sha512-HLclGWPkCsekQgsyzxLhCQLa8THWXtB5PxyYN+2O6nkyLt550KQKTlbV2D1/j5dNIQapAZM1+qFnpBFxZQkgCA==", + "optional": true, + "peer": true, "dependencies": { - "emoji-regex": "^7.0.1", - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^5.1.0" + "@smithy/middleware-serde": "^4.0.2", + "@smithy/protocol-http": "^5.0.1", + "@smithy/types": "^4.1.0", + "@smithy/util-body-length-browser": "^4.0.0", + "@smithy/util-middleware": "^4.0.1", + "@smithy/util-stream": "^4.1.2", + "@smithy/util-utf8": "^4.0.0", + "tslib": "^2.6.2" }, "engines": { - "node": ">=6" + "node": ">=18.0.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/wrap-ansi/node_modules/strip-ansi": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", - "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", - "extraneous": true, + "node_modules/@smithy/credential-provider-imds": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/@smithy/credential-provider-imds/-/credential-provider-imds-4.0.1.tgz", + "integrity": "sha512-l/qdInaDq1Zpznpmev/+52QomsJNZ3JkTl5yrTl02V6NBgJOQ4LY0SFw/8zsMwj3tLe8vqiIuwF6nxaEwgf6mg==", + "optional": true, + "peer": true, "dependencies": { - "ansi-regex": "^4.1.0" + "@smithy/node-config-provider": "^4.0.1", + "@smithy/property-provider": "^4.0.1", + "@smithy/types": "^4.1.0", + "@smithy/url-parser": "^4.0.1", + "tslib": "^2.6.2" }, "engines": { - "node": ">=6" + "node": ">=18.0.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/wrappy": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", - "peer": true + "node_modules/@smithy/fetch-http-handler": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/@smithy/fetch-http-handler/-/fetch-http-handler-5.0.1.tgz", + "integrity": "sha512-3aS+fP28urrMW2KTjb6z9iFow6jO8n3MFfineGbndvzGZit3taZhKWtTorf+Gp5RpFDDafeHlhfsGlDCXvUnJA==", + "optional": true, + "peer": true, + "dependencies": { + "@smithy/protocol-http": "^5.0.1", + "@smithy/querystring-builder": "^4.0.1", + "@smithy/types": "^4.1.0", + "@smithy/util-base64": "^4.0.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=18.0.0" + } }, - "node_modules/@ngageoint/mage.service/node_modules/write-file-atomic": { - "version": "2.4.3", - "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-2.4.3.tgz", - "integrity": "sha512-GaETH5wwsX+GcnzhPgKcKjJ6M2Cq3/iZp1WyY/X1CSqrW+jVNM9Y7D8EC2sM4ZG/V8wZlSniJnCKWPmBYAucRQ==", - "extraneous": true, + "node_modules/@smithy/hash-node": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/@smithy/hash-node/-/hash-node-4.0.1.tgz", + "integrity": "sha512-TJ6oZS+3r2Xu4emVse1YPB3Dq3d8RkZDKcPr71Nj/lJsdAP1c7oFzYqEn1IBc915TsgLl2xIJNuxCz+gLbLE0w==", + "optional": true, + "peer": true, "dependencies": { - "graceful-fs": "^4.1.11", - "imurmurhash": "^0.1.4", - "signal-exit": "^3.0.2" + "@smithy/types": "^4.1.0", + "@smithy/util-buffer-from": "^4.0.0", + "@smithy/util-utf8": "^4.0.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=18.0.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/wtfnode": { - "version": "0.8.4", - "resolved": "https://registry.npmjs.org/wtfnode/-/wtfnode-0.8.4.tgz", - "integrity": "sha512-64GEKtMt/MUBuAm+8kHqP74ojjafzu00aT0JKsmkIwYmjRQ/odO0yhbzKLm+Z9v1gMla+8dwITRKzTAlHsB+Og==", - "extraneous": true, - "bin": { - "wtfnode": "proxy.js" + "node_modules/@smithy/invalid-dependency": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/@smithy/invalid-dependency/-/invalid-dependency-4.0.1.tgz", + "integrity": "sha512-gdudFPf4QRQ5pzj7HEnu6FhKRi61BfH/Gk5Yf6O0KiSbr1LlVhgjThcvjdu658VE6Nve8vaIWB8/fodmS1rBPQ==", + "optional": true, + "peer": true, + "dependencies": { + "@smithy/types": "^4.1.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=18.0.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/xml-crypto": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/xml-crypto/-/xml-crypto-3.2.0.tgz", - "integrity": "sha512-qVurBUOQrmvlgmZqIVBqmb06TD2a/PpEUfFPgD7BuBfjmoH4zgkqaWSIJrnymlCvM2GGt9x+XtJFA+ttoAufqg==", + "node_modules/@smithy/is-array-buffer": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@smithy/is-array-buffer/-/is-array-buffer-4.0.0.tgz", + "integrity": "sha512-saYhF8ZZNoJDTvJBEWgeBccCg+yvp1CX+ed12yORU3NilJScfc6gfch2oVb4QgxZrGUx3/ZJlb+c/dJbyupxlw==", + "optional": true, "peer": true, "dependencies": { - "@xmldom/xmldom": "^0.8.8", - "xpath": "0.0.32" + "tslib": "^2.6.2" }, "engines": { - "node": ">=4.0.0" + "node": ">=18.0.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/xml-crypto/node_modules/xpath": { - "version": "0.0.32", - "resolved": "https://registry.npmjs.org/xpath/-/xpath-0.0.32.tgz", - "integrity": "sha512-rxMJhSIoiO8vXcWvSifKqhvV96GjiD5wYb8/QHdoRyQvraTpp4IEv944nhGausZZ3u7dhQXteZuZbaqfpB7uYw==", + "node_modules/@smithy/middleware-content-length": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/@smithy/middleware-content-length/-/middleware-content-length-4.0.1.tgz", + "integrity": "sha512-OGXo7w5EkB5pPiac7KNzVtfCW2vKBTZNuCctn++TTSOMpe6RZO/n6WEC1AxJINn3+vWLKW49uad3lo/u0WJ9oQ==", + "optional": true, "peer": true, + "dependencies": { + "@smithy/protocol-http": "^5.0.1", + "@smithy/types": "^4.1.0", + "tslib": "^2.6.2" + }, "engines": { - "node": ">=0.6.0" + "node": ">=18.0.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/xml-encryption": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/xml-encryption/-/xml-encryption-3.0.2.tgz", - "integrity": "sha512-VxYXPvsWB01/aqVLd6ZMPWZ+qaj0aIdF+cStrVJMcFj3iymwZeI0ABzB3VqMYv48DkSpRhnrXqTUkR34j+UDyg==", + "node_modules/@smithy/middleware-endpoint": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/@smithy/middleware-endpoint/-/middleware-endpoint-4.0.6.tgz", + "integrity": "sha512-ftpmkTHIFqgaFugcjzLZv3kzPEFsBFSnq1JsIkr2mwFzCraZVhQk2gqN51OOeRxqhbPTkRFj39Qd2V91E/mQxg==", + "optional": true, "peer": true, "dependencies": { - "@xmldom/xmldom": "^0.8.5", - "escape-html": "^1.0.3", - "xpath": "0.0.32" + "@smithy/core": "^3.1.5", + "@smithy/middleware-serde": "^4.0.2", + "@smithy/node-config-provider": "^4.0.1", + "@smithy/shared-ini-file-loader": "^4.0.1", + "@smithy/types": "^4.1.0", + "@smithy/url-parser": "^4.0.1", + "@smithy/util-middleware": "^4.0.1", + "tslib": "^2.6.2" }, "engines": { - "node": ">=12" + "node": ">=18.0.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/xml-encryption/node_modules/xpath": { - "version": "0.0.32", - "resolved": "https://registry.npmjs.org/xpath/-/xpath-0.0.32.tgz", - "integrity": "sha512-rxMJhSIoiO8vXcWvSifKqhvV96GjiD5wYb8/QHdoRyQvraTpp4IEv944nhGausZZ3u7dhQXteZuZbaqfpB7uYw==", + "node_modules/@smithy/middleware-retry": { + "version": "4.0.7", + "resolved": "https://registry.npmjs.org/@smithy/middleware-retry/-/middleware-retry-4.0.7.tgz", + "integrity": "sha512-58j9XbUPLkqAcV1kHzVX/kAR16GT+j7DUZJqwzsxh1jtz7G82caZiGyyFgUvogVfNTg3TeAOIJepGc8TXF4AVQ==", + "optional": true, "peer": true, + "dependencies": { + "@smithy/node-config-provider": "^4.0.1", + "@smithy/protocol-http": "^5.0.1", + "@smithy/service-error-classification": "^4.0.1", + "@smithy/smithy-client": "^4.1.6", + "@smithy/types": "^4.1.0", + "@smithy/util-middleware": "^4.0.1", + "@smithy/util-retry": "^4.0.1", + "tslib": "^2.6.2", + "uuid": "^9.0.1" + }, "engines": { - "node": ">=0.6.0" + "node": ">=18.0.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/xml2js": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/xml2js/-/xml2js-0.5.0.tgz", - "integrity": "sha512-drPFnkQJik/O+uPKpqSgr22mpuFHqKdbS835iAQrUC73L2F5WkboIRd63ai/2Yg6I1jzifPFKH2NTK+cfglkIA==", + "node_modules/@smithy/middleware-serde": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/@smithy/middleware-serde/-/middleware-serde-4.0.2.tgz", + "integrity": "sha512-Sdr5lOagCn5tt+zKsaW+U2/iwr6bI9p08wOkCp6/eL6iMbgdtc2R5Ety66rf87PeohR0ExI84Txz9GYv5ou3iQ==", + "optional": true, "peer": true, "dependencies": { - "sax": ">=0.6.0", - "xmlbuilder": "~11.0.0" + "@smithy/types": "^4.1.0", + "tslib": "^2.6.2" }, "engines": { - "node": ">=4.0.0" + "node": ">=18.0.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/xml2js/node_modules/xmlbuilder": { - "version": "11.0.1", - "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-11.0.1.tgz", - "integrity": "sha512-fDlsI/kFEx7gLvbecc0/ohLG50fugQp8ryHzMTuW9vSa1GJ0XYWKnhsUx7oie3G98+r56aTQIUB4kht42R3JvA==", + "node_modules/@smithy/middleware-stack": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/@smithy/middleware-stack/-/middleware-stack-4.0.1.tgz", + "integrity": "sha512-dHwDmrtR/ln8UTHpaIavRSzeIk5+YZTBtLnKwDW3G2t6nAupCiQUvNzNoHBpik63fwUaJPtlnMzXbQrNFWssIA==", + "optional": true, "peer": true, + "dependencies": { + "@smithy/types": "^4.1.0", + "tslib": "^2.6.2" + }, "engines": { - "node": ">=4.0" + "node": ">=18.0.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/xmlbuilder": { - "version": "15.1.1", - "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-15.1.1.tgz", - "integrity": "sha512-yMqGBqtXyeN1e3TGYvgNgDVZ3j84W4cwkOXQswghol6APgZWaff9lnbvN7MHYJOiXsvGPXtjTYJEiC9J2wv9Eg==", + "node_modules/@smithy/node-config-provider": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/@smithy/node-config-provider/-/node-config-provider-4.0.1.tgz", + "integrity": "sha512-8mRTjvCtVET8+rxvmzRNRR0hH2JjV0DFOmwXPrISmTIJEfnCBugpYYGAsCj8t41qd+RB5gbheSQ/6aKZCQvFLQ==", + "optional": true, "peer": true, + "dependencies": { + "@smithy/property-provider": "^4.0.1", + "@smithy/shared-ini-file-loader": "^4.0.1", + "@smithy/types": "^4.1.0", + "tslib": "^2.6.2" + }, "engines": { - "node": ">=8.0" + "node": ">=18.0.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/xmlbuilder2": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/xmlbuilder2/-/xmlbuilder2-3.0.2.tgz", - "integrity": "sha512-h4MUawGY21CTdhV4xm3DG9dgsqyhDkZvVJBx88beqX8wJs3VgyGQgAn5VreHuae6unTQxh115aMK5InCVmOIKw==", + "node_modules/@smithy/node-http-handler": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@smithy/node-http-handler/-/node-http-handler-4.0.3.tgz", + "integrity": "sha512-dYCLeINNbYdvmMLtW0VdhW1biXt+PPCGazzT5ZjKw46mOtdgToQEwjqZSS9/EN8+tNs/RO0cEWG044+YZs97aA==", + "optional": true, "peer": true, "dependencies": { - "@oozcitak/dom": "1.15.10", - "@oozcitak/infra": "1.0.8", - "@oozcitak/util": "8.3.8", - "@types/node": "*", - "js-yaml": "3.14.0" + "@smithy/abort-controller": "^4.0.1", + "@smithy/protocol-http": "^5.0.1", + "@smithy/querystring-builder": "^4.0.1", + "@smithy/types": "^4.1.0", + "tslib": "^2.6.2" }, "engines": { - "node": ">=12.0" + "node": ">=18.0.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/xmlbuilder2/node_modules/esprima": { + "node_modules/@smithy/property-provider": { "version": "4.0.1", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", - "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", + "resolved": "https://registry.npmjs.org/@smithy/property-provider/-/property-provider-4.0.1.tgz", + "integrity": "sha512-o+VRiwC2cgmk/WFV0jaETGOtX16VNPp2bSQEzu0whbReqE1BMqsP2ami2Vi3cbGVdKu1kq9gQkDAGKbt0WOHAQ==", + "optional": true, "peer": true, - "bin": { - "esparse": "bin/esparse.js", - "esvalidate": "bin/esvalidate.js" + "dependencies": { + "@smithy/types": "^4.1.0", + "tslib": "^2.6.2" }, "engines": { - "node": ">=4" + "node": ">=18.0.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/xmlbuilder2/node_modules/js-yaml": { - "version": "3.14.0", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.0.tgz", - "integrity": "sha512-/4IbIeHcD9VMHFqDR/gQ7EdZdLimOvW2DdcxFjdyyZ9NsbS+ccrXqVWDtab/lRl5AlUqmpBx8EhPaWR+OtY17A==", + "node_modules/@smithy/protocol-http": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/@smithy/protocol-http/-/protocol-http-5.0.1.tgz", + "integrity": "sha512-TE4cpj49jJNB/oHyh/cRVEgNZaoPaxd4vteJNB0yGidOCVR0jCw/hjPVsT8Q8FRmj8Bd3bFZt8Dh7xGCT+xMBQ==", + "optional": true, "peer": true, "dependencies": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" + "@smithy/types": "^4.1.0", + "tslib": "^2.6.2" }, - "bin": { - "js-yaml": "bin/js-yaml.js" + "engines": { + "node": ">=18.0.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/xpath": { - "version": "0.0.23", - "resolved": "https://registry.npmjs.org/xpath/-/xpath-0.0.23.tgz", - "integrity": "sha1-9ej9xr3H5yiFsyNPQMuiZpWAqvo=", + "node_modules/@smithy/querystring-builder": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/@smithy/querystring-builder/-/querystring-builder-4.0.1.tgz", + "integrity": "sha512-wU87iWZoCbcqrwszsOewEIuq+SU2mSoBE2CcsLwE0I19m0B2gOJr1MVjxWcDQYOzHbR1xCk7AcOBbGFUYOKvdg==", + "optional": true, "peer": true, + "dependencies": { + "@smithy/types": "^4.1.0", + "@smithy/util-uri-escape": "^4.0.0", + "tslib": "^2.6.2" + }, "engines": { - "node": ">=0.6.0" + "node": ">=18.0.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/xtend": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", - "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==", + "node_modules/@smithy/querystring-parser": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/@smithy/querystring-parser/-/querystring-parser-4.0.1.tgz", + "integrity": "sha512-Ma2XC7VS9aV77+clSFylVUnPZRindhB7BbmYiNOdr+CHt/kZNJoPP0cd3QxCnCFyPXC4eybmyE98phEHkqZ5Jw==", + "optional": true, "peer": true, + "dependencies": { + "@smithy/types": "^4.1.0", + "tslib": "^2.6.2" + }, "engines": { - "node": ">=0.4" + "node": ">=18.0.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/y18n": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz", - "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==", - "extraneous": true - }, - "node_modules/@ngageoint/mage.service/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "peer": true - }, - "node_modules/@ngageoint/mage.service/node_modules/yaml": { - "version": "1.10.2", - "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz", - "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==", + "node_modules/@smithy/service-error-classification": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/@smithy/service-error-classification/-/service-error-classification-4.0.1.tgz", + "integrity": "sha512-3JNjBfOWpj/mYfjXJHB4Txc/7E4LVq32bwzE7m28GN79+M1f76XHflUaSUkhOriprPDzev9cX/M+dEB80DNDKA==", + "optional": true, "peer": true, + "dependencies": { + "@smithy/types": "^4.1.0" + }, "engines": { - "node": ">= 6" + "node": ">=18.0.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/yargs-unparser": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/yargs-unparser/-/yargs-unparser-1.6.0.tgz", - "integrity": "sha512-W9tKgmSn0DpSatfri0nx52Joq5hVXgeLiqR/5G0sZNDoLZFOr/xjBUDcShCOGNsBnEMNo1KAMBkTej1Hm62HTw==", - "extraneous": true, + "node_modules/@smithy/shared-ini-file-loader": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/@smithy/shared-ini-file-loader/-/shared-ini-file-loader-4.0.1.tgz", + "integrity": "sha512-hC8F6qTBbuHRI/uqDgqqi6J0R4GtEZcgrZPhFQnMhfJs3MnUTGSnR1NSJCJs5VWlMydu0kJz15M640fJlRsIOw==", + "optional": true, + "peer": true, "dependencies": { - "flat": "^4.1.0", - "lodash": "^4.17.15", - "yargs": "^13.3.0" + "@smithy/types": "^4.1.0", + "tslib": "^2.6.2" }, "engines": { - "node": ">=6" + "node": ">=18.0.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/yargs-unparser/node_modules/ansi-regex": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.1.tgz", - "integrity": "sha512-ILlv4k/3f6vfQ4OoP2AGvirOktlQ98ZEL1k9FaQjxa3L1abBgbuTDAdPOpvbGncC0BTVQrl+OM8xZGK6tWXt7g==", - "extraneous": true, + "node_modules/@smithy/signature-v4": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/@smithy/signature-v4/-/signature-v4-5.0.1.tgz", + "integrity": "sha512-nCe6fQ+ppm1bQuw5iKoeJ0MJfz2os7Ic3GBjOkLOPtavbD1ONoyE3ygjBfz2ythFWm4YnRm6OxW+8p/m9uCoIA==", + "optional": true, + "peer": true, + "dependencies": { + "@smithy/is-array-buffer": "^4.0.0", + "@smithy/protocol-http": "^5.0.1", + "@smithy/types": "^4.1.0", + "@smithy/util-hex-encoding": "^4.0.0", + "@smithy/util-middleware": "^4.0.1", + "@smithy/util-uri-escape": "^4.0.0", + "@smithy/util-utf8": "^4.0.0", + "tslib": "^2.6.2" + }, "engines": { - "node": ">=6" + "node": ">=18.0.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/yargs-unparser/node_modules/camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "extraneous": true, + "node_modules/@smithy/smithy-client": { + "version": "4.1.6", + "resolved": "https://registry.npmjs.org/@smithy/smithy-client/-/smithy-client-4.1.6.tgz", + "integrity": "sha512-UYDolNg6h2O0L+cJjtgSyKKvEKCOa/8FHYJnBobyeoeWDmNpXjwOAtw16ezyeu1ETuuLEOZbrynK0ZY1Lx9Jbw==", + "optional": true, + "peer": true, + "dependencies": { + "@smithy/core": "^3.1.5", + "@smithy/middleware-endpoint": "^4.0.6", + "@smithy/middleware-stack": "^4.0.1", + "@smithy/protocol-http": "^5.0.1", + "@smithy/types": "^4.1.0", + "@smithy/util-stream": "^4.1.2", + "tslib": "^2.6.2" + }, "engines": { - "node": ">=6" + "node": ">=18.0.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/yargs-unparser/node_modules/cliui": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-5.0.0.tgz", - "integrity": "sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA==", - "extraneous": true, + "node_modules/@smithy/types": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/@smithy/types/-/types-4.1.0.tgz", + "integrity": "sha512-enhjdwp4D7CXmwLtD6zbcDMbo6/T6WtuuKCY49Xxc6OMOmUWlBEBDREsxxgV2LIdeQPW756+f97GzcgAwp3iLw==", + "optional": true, + "peer": true, "dependencies": { - "string-width": "^3.1.0", - "strip-ansi": "^5.2.0", - "wrap-ansi": "^5.1.0" + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=18.0.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/yargs-unparser/node_modules/emoji-regex": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", - "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", - "extraneous": true - }, - "node_modules/@ngageoint/mage.service/node_modules/yargs-unparser/node_modules/find-up": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", - "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", - "extraneous": true, + "node_modules/@smithy/url-parser": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/@smithy/url-parser/-/url-parser-4.0.1.tgz", + "integrity": "sha512-gPXcIEUtw7VlK8f/QcruNXm7q+T5hhvGu9tl63LsJPZ27exB6dtNwvh2HIi0v7JcXJ5emBxB+CJxwaLEdJfA+g==", + "optional": true, + "peer": true, "dependencies": { - "locate-path": "^3.0.0" + "@smithy/querystring-parser": "^4.0.1", + "@smithy/types": "^4.1.0", + "tslib": "^2.6.2" }, "engines": { - "node": ">=6" + "node": ">=18.0.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/yargs-unparser/node_modules/is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", - "extraneous": true, + "node_modules/@smithy/util-base64": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@smithy/util-base64/-/util-base64-4.0.0.tgz", + "integrity": "sha512-CvHfCmO2mchox9kjrtzoHkWHxjHZzaFojLc8quxXY7WAAMAg43nuxwv95tATVgQFNDwd4M9S1qFzj40Ul41Kmg==", + "optional": true, + "peer": true, + "dependencies": { + "@smithy/util-buffer-from": "^4.0.0", + "@smithy/util-utf8": "^4.0.0", + "tslib": "^2.6.2" + }, "engines": { - "node": ">=4" + "node": ">=18.0.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/yargs-unparser/node_modules/locate-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", - "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", - "extraneous": true, + "node_modules/@smithy/util-body-length-browser": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@smithy/util-body-length-browser/-/util-body-length-browser-4.0.0.tgz", + "integrity": "sha512-sNi3DL0/k64/LO3A256M+m3CDdG6V7WKWHdAiBBMUN8S3hK3aMPhwnPik2A/a2ONN+9doY9UxaLfgqsIRg69QA==", + "optional": true, + "peer": true, "dependencies": { - "p-locate": "^3.0.0", - "path-exists": "^3.0.0" + "tslib": "^2.6.2" }, "engines": { - "node": ">=6" + "node": ">=18.0.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/yargs-unparser/node_modules/p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", - "extraneous": true, + "node_modules/@smithy/util-body-length-node": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@smithy/util-body-length-node/-/util-body-length-node-4.0.0.tgz", + "integrity": "sha512-q0iDP3VsZzqJyje8xJWEJCNIu3lktUGVoSy1KB0UWym2CL1siV3artm+u1DFYTLejpsrdGyCSWBdGNjJzfDPjg==", + "optional": true, + "peer": true, "dependencies": { - "p-try": "^2.0.0" + "tslib": "^2.6.2" }, "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=18.0.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/yargs-unparser/node_modules/p-locate": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", - "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", - "extraneous": true, + "node_modules/@smithy/util-buffer-from": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@smithy/util-buffer-from/-/util-buffer-from-4.0.0.tgz", + "integrity": "sha512-9TOQ7781sZvddgO8nxueKi3+yGvkY35kotA0Y6BWRajAv8jjmigQ1sBwz0UX47pQMYXJPahSKEKYFgt+rXdcug==", + "optional": true, + "peer": true, "dependencies": { - "p-limit": "^2.0.0" + "@smithy/is-array-buffer": "^4.0.0", + "tslib": "^2.6.2" }, "engines": { - "node": ">=6" + "node": ">=18.0.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/yargs-unparser/node_modules/string-width": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", - "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", - "extraneous": true, + "node_modules/@smithy/util-config-provider": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@smithy/util-config-provider/-/util-config-provider-4.0.0.tgz", + "integrity": "sha512-L1RBVzLyfE8OXH+1hsJ8p+acNUSirQnWQ6/EgpchV88G6zGBTDPdXiiExei6Z1wR2RxYvxY/XLw6AMNCCt8H3w==", + "optional": true, + "peer": true, "dependencies": { - "emoji-regex": "^7.0.1", - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^5.1.0" + "tslib": "^2.6.2" }, "engines": { - "node": ">=6" + "node": ">=18.0.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/yargs-unparser/node_modules/strip-ansi": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", - "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", - "extraneous": true, + "node_modules/@smithy/util-defaults-mode-browser": { + "version": "4.0.7", + "resolved": "https://registry.npmjs.org/@smithy/util-defaults-mode-browser/-/util-defaults-mode-browser-4.0.7.tgz", + "integrity": "sha512-CZgDDrYHLv0RUElOsmZtAnp1pIjwDVCSuZWOPhIOBvG36RDfX1Q9+6lS61xBf+qqvHoqRjHxgINeQz47cYFC2Q==", + "optional": true, + "peer": true, "dependencies": { - "ansi-regex": "^4.1.0" + "@smithy/property-provider": "^4.0.1", + "@smithy/smithy-client": "^4.1.6", + "@smithy/types": "^4.1.0", + "bowser": "^2.11.0", + "tslib": "^2.6.2" }, "engines": { - "node": ">=6" + "node": ">=18.0.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/yargs-unparser/node_modules/yargs": { - "version": "13.3.2", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-13.3.2.tgz", - "integrity": "sha512-AX3Zw5iPruN5ie6xGRIDgqkT+ZhnRlZMLMHAs8tg7nRruy2Nb+i5o9bwghAogtM08q1dpr2LVoS8KSTMYpWXUw==", - "extraneous": true, + "node_modules/@smithy/util-defaults-mode-node": { + "version": "4.0.7", + "resolved": "https://registry.npmjs.org/@smithy/util-defaults-mode-node/-/util-defaults-mode-node-4.0.7.tgz", + "integrity": "sha512-79fQW3hnfCdrfIi1soPbK3zmooRFnLpSx3Vxi6nUlqaaQeC5dm8plt4OTNDNqEEEDkvKghZSaoti684dQFVrGQ==", + "optional": true, + "peer": true, "dependencies": { - "cliui": "^5.0.0", - "find-up": "^3.0.0", - "get-caller-file": "^2.0.1", - "require-directory": "^2.1.1", - "require-main-filename": "^2.0.0", - "set-blocking": "^2.0.0", - "string-width": "^3.0.0", - "which-module": "^2.0.0", - "y18n": "^4.0.0", - "yargs-parser": "^13.1.2" + "@smithy/config-resolver": "^4.0.1", + "@smithy/credential-provider-imds": "^4.0.1", + "@smithy/node-config-provider": "^4.0.1", + "@smithy/property-provider": "^4.0.1", + "@smithy/smithy-client": "^4.1.6", + "@smithy/types": "^4.1.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=18.0.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/yargs-unparser/node_modules/yargs-parser": { - "version": "13.1.2", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.2.tgz", - "integrity": "sha512-3lbsNRf/j+A4QuSZfDRA7HRSfWrzO0YjqTJd5kjAq37Zep1CEgaYmrH9Q3GwPiB9cHyd1Y1UwggGhJGoxipbzg==", - "extraneous": true, + "node_modules/@smithy/util-endpoints": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@smithy/util-endpoints/-/util-endpoints-3.0.1.tgz", + "integrity": "sha512-zVdUENQpdtn9jbpD9SCFK4+aSiavRb9BxEtw9ZGUR1TYo6bBHbIoi7VkrFQ0/RwZlzx0wRBaRmPclj8iAoJCLA==", + "optional": true, + "peer": true, "dependencies": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" + "@smithy/node-config-provider": "^4.0.1", + "@smithy/types": "^4.1.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=18.0.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/yauzl": { - "version": "2.10.0", - "resolved": "https://registry.npmjs.org/yauzl/-/yauzl-2.10.0.tgz", - "integrity": "sha512-p4a9I6X6nu6IhoGmBqAcbJy1mlC4j27vEPZX9F4L4/vZT3Lyq1VkFHw/V/PUcB9Buo+DG3iHkT0x3Qya58zc3g==", - "extraneous": true, + "node_modules/@smithy/util-hex-encoding": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@smithy/util-hex-encoding/-/util-hex-encoding-4.0.0.tgz", + "integrity": "sha512-Yk5mLhHtfIgW2W2WQZWSg5kuMZCVbvhFmC7rV4IO2QqnZdbEFPmQnCcGMAX2z/8Qj3B9hYYNjZOhWym+RwhePw==", + "optional": true, + "peer": true, "dependencies": { - "buffer-crc32": "~0.2.3", - "fd-slicer": "~1.1.0" + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=18.0.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/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==", - "extraneous": true, - "engines": { - "node": ">=10" + "node_modules/@smithy/util-middleware": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/@smithy/util-middleware/-/util-middleware-4.0.1.tgz", + "integrity": "sha512-HiLAvlcqhbzhuiOa0Lyct5IIlyIz0PQO5dnMlmQ/ubYM46dPInB+3yQGkfxsk6Q24Y0n3/JmcA1v5iEhmOF5mA==", + "optional": true, + "peer": true, + "dependencies": { + "@smithy/types": "^4.1.0", + "tslib": "^2.6.2" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "engines": { + "node": ">=18.0.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/zip-stream": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/zip-stream/-/zip-stream-4.1.0.tgz", - "integrity": "sha512-zshzwQW7gG7hjpBlgeQP9RuyPGNxvJdzR8SUM3QhxCnLjWN2E7j3dOvpeDcQoETfHx0urRS7EtmVToql7YpU4A==", + "node_modules/@smithy/util-retry": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/@smithy/util-retry/-/util-retry-4.0.1.tgz", + "integrity": "sha512-WmRHqNVwn3kI3rKk1LsKcVgPBG6iLTBGC1iYOV3GQegwJ3E8yjzHytPt26VNzOWr1qu0xE03nK0Ug8S7T7oufw==", + "optional": true, "peer": true, "dependencies": { - "archiver-utils": "^2.1.0", - "compress-commons": "^4.1.0", - "readable-stream": "^3.6.0" + "@smithy/service-error-classification": "^4.0.1", + "@smithy/types": "^4.1.0", + "tslib": "^2.6.2" }, "engines": { - "node": ">= 10" + "node": ">=18.0.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/zip-stream/node_modules/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==", + "node_modules/@smithy/util-stream": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/@smithy/util-stream/-/util-stream-4.1.2.tgz", + "integrity": "sha512-44PKEqQ303d3rlQuiDpcCcu//hV8sn+u2JBo84dWCE0rvgeiVl0IlLMagbU++o0jCWhYCsHaAt9wZuZqNe05Hw==", + "optional": true, "peer": true, "dependencies": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" + "@smithy/fetch-http-handler": "^5.0.1", + "@smithy/node-http-handler": "^4.0.3", + "@smithy/types": "^4.1.0", + "@smithy/util-base64": "^4.0.0", + "@smithy/util-buffer-from": "^4.0.0", + "@smithy/util-hex-encoding": "^4.0.0", + "@smithy/util-utf8": "^4.0.0", + "tslib": "^2.6.2" }, "engines": { - "node": ">= 6" + "node": ">=18.0.0" } }, - "node_modules/@ngageoint/mage.service/node_modules/zip-stream/node_modules/string_decoder": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", - "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "node_modules/@smithy/util-uri-escape": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@smithy/util-uri-escape/-/util-uri-escape-4.0.0.tgz", + "integrity": "sha512-77yfbCbQMtgtTylO9itEAdpPXSog3ZxMe09AEhm0dU0NLTalV70ghDZFR+Nfi1C60jnJoh/Re4090/DuZh2Omg==", + "optional": true, "peer": true, "dependencies": { - "safe-buffer": "~5.2.0" + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=18.0.0" } }, - "node_modules/@pkgjs/parseargs": { - "version": "0.11.0", - "resolved": "https://registry.npmjs.org/@pkgjs/parseargs/-/parseargs-0.11.0.tgz", - "integrity": "sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==", - "dev": true, + "node_modules/@smithy/util-utf8": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@smithy/util-utf8/-/util-utf8-4.0.0.tgz", + "integrity": "sha512-b+zebfKCfRdgNJDknHCob3O7FpeYQN6ZG6YLExMcasDHsCXlsXCEuiPZeLnJLpwa5dvPetGlnGCiMHuLwGvFow==", "optional": true, + "peer": true, + "dependencies": { + "@smithy/util-buffer-from": "^4.0.0", + "tslib": "^2.6.2" + }, "engines": { - "node": ">=14" + "node": ">=18.0.0" } }, "node_modules/@tokenizer/token": { @@ -13889,35 +15404,39 @@ "dev": true }, "node_modules/@types/body-parser": { - "version": "1.19.3", + "version": "1.19.5", + "resolved": "https://registry.npmjs.org/@types/body-parser/-/body-parser-1.19.5.tgz", + "integrity": "sha512-fB3Zu92ucau0iQ0JMCFQE7b/dv8Ot07NI3KaZIkIUNXq82k4eBAqUaneXfleGY9JWskeS9y+u0nXMyspcuQrCg==", "dev": true, - "license": "MIT", "dependencies": { "@types/connect": "*", "@types/node": "*" } }, "node_modules/@types/bson": { - "version": "1.0.11", - "resolved": "https://registry.npmjs.org/@types/bson/-/bson-1.0.11.tgz", - "integrity": "sha512-j+UcCWI+FsbI5/FQP/Kj2CXyplWAz39ktHFkXk84h7dNblKRSoNJs95PZFRd96NQGqsPEPgeclqnznWZr14ZDA==", + "version": "4.2.4", + "resolved": "https://registry.npmjs.org/@types/bson/-/bson-4.2.4.tgz", + "integrity": "sha512-SG23E3JDH6y8qF20a4G9txLuUl+TCV16gxsKyntmGiJez2V9VBJr1Y8WxTBBD6OgBVcvspQ7sxgdNMkXFVcaEA==", + "deprecated": "This is a stub types definition. bson provides its own type definitions, so you do not need this installed.", "dev": true, "dependencies": { - "@types/node": "*" + "bson": "*" } }, "node_modules/@types/connect": { - "version": "3.4.36", + "version": "3.4.38", + "resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.38.tgz", + "integrity": "sha512-K6uROf1LD88uDQqJCktA4yzL1YYAK6NgfsI0v/mTgyPKWsX1CnJ0XPSDhViejru1GcRkLWb8RlzFYJRqGUbaug==", "dev": true, - "license": "MIT", "dependencies": { "@types/node": "*" } }, "node_modules/@types/express": { - "version": "4.17.19", + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/@types/express/-/express-4.17.21.tgz", + "integrity": "sha512-ejlPM315qwLpaQlQDTjPdsUFSc6ZsP4AN6AlWnogPjQ7CVi7PYF3YVz+CY3jE2pwYf7E/7HlDAN0rV2GxTG0HQ==", "dev": true, - "license": "MIT", "dependencies": { "@types/body-parser": "*", "@types/express-serve-static-core": "^4.17.33", @@ -13926,9 +15445,10 @@ } }, "node_modules/@types/express-serve-static-core": { - "version": "4.17.37", + "version": "4.19.6", + "resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.19.6.tgz", + "integrity": "sha512-N4LZ2xG7DatVqhCZzOGb1Yi5lMbXSZcmdLDe9EzSndPV2HpWYWzRbaerl2n27irrm94EPpprqa8KpskPT085+A==", "dev": true, - "license": "MIT", "dependencies": { "@types/node": "*", "@types/qs": "*", @@ -13937,91 +15457,111 @@ } }, "node_modules/@types/http-errors": { - "version": "2.0.2", - "dev": true, - "license": "MIT" + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/@types/http-errors/-/http-errors-2.0.4.tgz", + "integrity": "sha512-D0CFMMtydbJAegzOyHjtiKPLlvnm3iTZyZRSZoLq2mRhDdmLfIWOCYPfQJ4cu2erKghU++QvjcUjp/5h7hESpA==", + "dev": true }, "node_modules/@types/jasmine": { - "version": "3.10.14", - "dev": true, - "license": "MIT" + "version": "3.10.18", + "resolved": "https://registry.npmjs.org/@types/jasmine/-/jasmine-3.10.18.tgz", + "integrity": "sha512-jOk52a1Kz+1oU5fNWwAcNe64/GsE7r/Q6ronwDox0D3ETo/cr4ICMQyeXrj7G6FPW1n8YjRoAZA2F0XBr6GicQ==", + "dev": true }, "node_modules/@types/lodash": { - "version": "4.14.199", - "dev": true, - "license": "MIT" + "version": "4.17.16", + "resolved": "https://registry.npmjs.org/@types/lodash/-/lodash-4.17.16.tgz", + "integrity": "sha512-HX7Em5NYQAXKW+1T+FiuG27NGwzJfCX3s1GjOa7ujxZa52kjJLOr4FUxT+giF6Tgxv1e+/czV/iTtBw27WTU9g==", + "dev": true }, "node_modules/@types/mime": { - "version": "1.3.3", - "dev": true, - "license": "MIT" - }, - "node_modules/@types/mongodb": { - "version": "3.6.20", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/bson": "*", - "@types/node": "*" - } - }, - "node_modules/@types/mongoose": { - "version": "4.7.56", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/mongodb": "*", - "@types/node": "*" - } + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/@types/mime/-/mime-1.3.5.tgz", + "integrity": "sha512-/pyBZWSLD2n0dcHE3hq8s8ZvcETHtEuF+3E7XVt0Ig2nvsVQXdghHVcEkIWjy9A0wKfTn97a/PSDYohKIlnP/w==", + "dev": true }, "node_modules/@types/node": { - "version": "20.8.4", - "dev": true, - "license": "MIT", + "version": "22.13.10", + "resolved": "https://registry.npmjs.org/@types/node/-/node-22.13.10.tgz", + "integrity": "sha512-I6LPUvlRH+O6VRUqYOcMudhaIdUVWfsjnZavnsraHvpBwaEyMN29ry+0UVJhImYL16xsscu0aske3yA+uPOWfw==", "dependencies": { - "undici-types": "~5.25.1" + "undici-types": "~6.20.0" } }, "node_modules/@types/qs": { - "version": "6.9.8", - "dev": true, - "license": "MIT" + "version": "6.9.18", + "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.18.tgz", + "integrity": "sha512-kK7dgTYDyGqS+e2Q4aK9X3D7q234CIZ1Bv0q/7Z5IwRDoADNU81xXJK/YVyLbLTZCoIwUoDoffFeF+p/eIklAA==", + "dev": true }, "node_modules/@types/range-parser": { - "version": "1.2.5", - "dev": true, - "license": "MIT" + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/@types/range-parser/-/range-parser-1.2.7.tgz", + "integrity": "sha512-hKormJbkJqzQGhziax5PItDUTMAM9uE2XXQmM37dyd4hVM+5aVl7oVxMVUiVQn2oCQFN/LKCZdvSM0pFRqbSmQ==", + "dev": true }, "node_modules/@types/send": { - "version": "0.17.2", + "version": "0.17.4", + "resolved": "https://registry.npmjs.org/@types/send/-/send-0.17.4.tgz", + "integrity": "sha512-x2EM6TJOybec7c52BX0ZspPodMsQUd5L6PRwOunVyVUhXiBSKf3AezDL8Dgvgt5o0UfKNfuA0eMLr2wLT4AiBA==", "dev": true, - "license": "MIT", "dependencies": { "@types/mime": "^1", "@types/node": "*" } }, "node_modules/@types/serve-static": { - "version": "1.15.3", + "version": "1.15.7", + "resolved": "https://registry.npmjs.org/@types/serve-static/-/serve-static-1.15.7.tgz", + "integrity": "sha512-W8Ym+h8nhuRwaKPaDw34QUkwsGi6Rc4yYqvKFo5rm2FUEhCFbzVWrxXUxuKK8TASjWsysJY0nsmNCGhCOIsrOw==", "dev": true, - "license": "MIT", "dependencies": { "@types/http-errors": "*", - "@types/mime": "*", - "@types/node": "*" + "@types/node": "*", + "@types/send": "*" } }, "node_modules/@types/sharp": { "version": "0.30.5", + "resolved": "https://registry.npmjs.org/@types/sharp/-/sharp-0.30.5.tgz", + "integrity": "sha512-EhO29617AIBqxoVtpd1qdBanWpspk/kD2B6qTFRJ31Q23Rdf+DNU1xlHSwtqvwq1vgOqBwq1i38SX+HGCymIQg==", "dev": true, - "license": "MIT", "dependencies": { "@types/node": "*" } }, + "node_modules/@types/webidl-conversions": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/@types/webidl-conversions/-/webidl-conversions-7.0.3.tgz", + "integrity": "sha512-CiJJvcRtIgzadHCYXw7dqEnMNRjhGZlYK05Mj9OyktqV8uVT8fD2BFOB7S1uwBE3Kj2Z+4UyPmFw/Ixgw/LAlA==", + "peer": true + }, + "node_modules/@types/whatwg-url": { + "version": "8.2.2", + "resolved": "https://registry.npmjs.org/@types/whatwg-url/-/whatwg-url-8.2.2.tgz", + "integrity": "sha512-FtQu10RWgn3D9U4aazdwIE2yzphmTJREDqNdODHrbrZmmMqI0vMheC/6NE/J1Yveaj8H+ela+YwWTjq5PGmuhA==", + "peer": true, + "dependencies": { + "@types/node": "*", + "@types/webidl-conversions": "*" + } + }, + "node_modules/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==", + "dev": true, + "dependencies": { + "event-target-shim": "^5.0.0" + }, + "engines": { + "node": ">=6.5" + } + }, "node_modules/accepts": { "version": "1.3.8", - "license": "MIT", + "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz", + "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==", "peer": true, "dependencies": { "mime-types": "~2.1.34", @@ -14032,9 +15572,9 @@ } }, "node_modules/ansi-regex": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", - "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==", + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.1.0.tgz", + "integrity": "sha512-7HSX4QQb4CspciLpVFwyRe79O3xsIZDDLER21kERQ71oaPodF8jL725AgJMFAYbooIqolJoRLuM81SpeUkpkvA==", "dev": true, "engines": { "node": ">=12" @@ -14045,8 +15585,9 @@ }, "node_modules/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, - "license": "MIT", "dependencies": { "color-convert": "^1.9.0" }, @@ -14061,12 +15602,16 @@ "dev": true }, "node_modules/array-buffer-byte-length": { - "version": "1.0.0", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.2.tgz", + "integrity": "sha512-LHE+8BuR7RYGDKvnrmcuSq3tDcKv9OFEXQt/HpbZhY7V6h0zlUXutnAD82GiFx9rdieCMjkvtcsPqBwgUl1Iiw==", "dev": true, - "license": "MIT", "dependencies": { - "call-bind": "^1.0.2", - "is-array-buffer": "^3.0.1" + "call-bound": "^1.0.3", + "is-array-buffer": "^3.0.5" + }, + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" @@ -14074,21 +15619,23 @@ }, "node_modules/array-flatten": { "version": "1.1.1", - "license": "MIT", + "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", + "integrity": "sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==", "peer": true }, "node_modules/arraybuffer.prototype.slice": { - "version": "1.0.2", + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.4.tgz", + "integrity": "sha512-BNoCY6SXXPQ7gF2opIP4GBE+Xw7U+pHMYKuzjgCN3GwiaIR09UUeKfheyIry77QtrCBlC0KK0q5/TER/tYh3PQ==", "dev": true, - "license": "MIT", "dependencies": { - "array-buffer-byte-length": "^1.0.0", - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1", - "get-intrinsic": "^1.2.1", - "is-array-buffer": "^3.0.2", - "is-shared-array-buffer": "^1.0.2" + "array-buffer-byte-length": "^1.0.1", + "call-bind": "^1.0.8", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.5", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.6", + "is-array-buffer": "^3.0.4" }, "engines": { "node": ">= 0.4" @@ -14097,10 +15644,23 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/async-function": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/async-function/-/async-function-1.0.0.tgz", + "integrity": "sha512-hsU18Ae8CDTR6Kgu9DYf0EbCr/a5iGL0rytQDobUcdpYOKokk8LEjVphnXkDkgpi0wYVsqrXuP0bZxJaTqdgoA==", + "dev": true, + "engines": { + "node": ">= 0.4" + } + }, "node_modules/available-typed-arrays": { - "version": "1.0.5", + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.7.tgz", + "integrity": "sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==", "dev": true, - "license": "MIT", + "dependencies": { + "possible-typed-array-names": "^1.0.0" + }, "engines": { "node": ">= 0.4" }, @@ -14110,12 +15670,14 @@ }, "node_modules/balanced-match": { "version": "1.0.2", - "dev": true, - "license": "MIT" + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", + "dev": true }, "node_modules/base64-js": { "version": "1.5.1", - "dev": true, + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", + "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", "funding": [ { "type": "github", @@ -14129,13 +15691,7 @@ "type": "consulting", "url": "https://feross.org/support" } - ], - "license": "MIT" - }, - "node_modules/bluebird": { - "version": "3.5.0", - "dev": true, - "license": "MIT" + ] }, "node_modules/bmp-js": { "version": "0.1.0", @@ -14144,20 +15700,21 @@ "dev": true }, "node_modules/body-parser": { - "version": "1.20.1", - "license": "MIT", + "version": "1.20.3", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.3.tgz", + "integrity": "sha512-7rAxByjUMqQ3/bHJy7D6OGXvx/MMc4IqBn/X0fcM1QUcAItpZrBEYhWGem+tzXH90c+G01ypMcYJBO9Y30203g==", "peer": true, "dependencies": { "bytes": "3.1.2", - "content-type": "~1.0.4", + "content-type": "~1.0.5", "debug": "2.6.9", "depd": "2.0.0", "destroy": "1.2.0", "http-errors": "2.0.0", "iconv-lite": "0.4.24", "on-finished": "2.4.1", - "qs": "6.11.0", - "raw-body": "2.5.1", + "qs": "6.13.0", + "raw-body": "2.5.2", "type-is": "~1.6.18", "unpipe": "1.0.0" }, @@ -14166,18 +15723,36 @@ "npm": "1.2.8000 || >= 1.4.16" } }, + "node_modules/bowser": { + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/bowser/-/bowser-2.11.0.tgz", + "integrity": "sha512-AlcaJBi/pqqJBIQ8U9Mcpc9i8Aqxn88Skv5d+xBX006BY5u8N3mGLHa5Lgppa7L/HfwgwLgZ6NYs+Ag6uUmJRA==", + "optional": true, + "peer": true + }, "node_modules/brace-expansion": { "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", "dev": true, - "license": "MIT", "dependencies": { "balanced-match": "^1.0.0", "concat-map": "0.0.1" } }, + "node_modules/bson": { + "version": "6.10.3", + "resolved": "https://registry.npmjs.org/bson/-/bson-6.10.3.tgz", + "integrity": "sha512-MTxGsqgYTwfshYWTRdmZRC+M7FnG1b4y7RO7p2k3X24Wq0yv1m77Wsj0BzlPzd/IowgESfsruQCUToa7vbOpPQ==", + "dev": true, + "engines": { + "node": ">=16.20.1" + } + }, "node_modules/buffer": { "version": "5.7.1", - "dev": true, + "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", + "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", "funding": [ { "type": "github", @@ -14192,7 +15767,6 @@ "url": "https://feross.org/support" } ], - "license": "MIT", "dependencies": { "base64-js": "^1.3.1", "ieee754": "^1.1.13" @@ -14207,34 +15781,74 @@ "node": ">=0.4.0" } }, - "node_modules/buffer-shims": { - "version": "1.0.0", - "dev": true, - "license": "MIT" - }, "node_modules/bytes": { "version": "3.1.2", - "license": "MIT", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", + "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", "peer": true, "engines": { "node": ">= 0.8" } }, "node_modules/call-bind": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.8.tgz", + "integrity": "sha512-oKlSFMcMwpUg2ednkhQ454wfWiU/ul3CkJe/PEHcTKuiX6RpbehUiFMXu13HalGZxfUwCQzZG747YXBn1im9ww==", + "dev": true, + "dependencies": { + "call-bind-apply-helpers": "^1.0.0", + "es-define-property": "^1.0.0", + "get-intrinsic": "^1.2.4", + "set-function-length": "^1.2.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/call-bind-apply-helpers": { "version": "1.0.2", - "license": "MIT", + "resolved": "https://registry.npmjs.org/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.2.tgz", + "integrity": "sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==", + "dependencies": { + "es-errors": "^1.3.0", + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/call-bound": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/call-bound/-/call-bound-1.0.4.tgz", + "integrity": "sha512-+ys997U96po4Kx/ABpBCqhA9EuxJaQWDQg7295H4hBphv3IZg0boBKuwYpt4YXp6MZ5AmZQnU/tyMTlRpaSejg==", "dependencies": { - "function-bind": "^1.1.1", - "get-intrinsic": "^1.0.2" + "call-bind-apply-helpers": "^1.0.2", + "get-intrinsic": "^1.3.0" + }, + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/centra": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/centra/-/centra-2.7.0.tgz", + "integrity": "sha512-PbFMgMSrmgx6uxCdm57RUos9Tc3fclMvhLSATYN39XsDV29B89zZ3KA89jmY0vwSGazyU+uerqwa6t+KaodPcg==", + "dev": true, + "dependencies": { + "follow-redirects": "^1.15.6" + } + }, "node_modules/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, - "license": "MIT", "dependencies": { "ansi-styles": "^3.2.1", "escape-string-regexp": "^1.0.5", @@ -14246,7 +15860,8 @@ }, "node_modules/color": { "version": "4.2.3", - "license": "MIT", + "resolved": "https://registry.npmjs.org/color/-/color-4.2.3.tgz", + "integrity": "sha512-1rXeuUUiGGrykh+CeBdu5Ie7OJwinCgQY0bc7GCRxy5xVHy+moaqkpL/jqQq0MtQOeYcrqEz4abc5f0KtU7W4A==", "dependencies": { "color-convert": "^2.0.1", "color-string": "^1.9.0" @@ -14257,19 +15872,22 @@ }, "node_modules/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, - "license": "MIT", "dependencies": { "color-name": "1.1.3" } }, "node_modules/color-name": { "version": "1.1.3", - "license": "MIT" + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==" }, "node_modules/color-string": { "version": "1.9.1", - "license": "MIT", + "resolved": "https://registry.npmjs.org/color-string/-/color-string-1.9.1.tgz", + "integrity": "sha512-shrVawQFojnZv6xM40anx4CkoDP+fZsw/ZerEMsW/pyzsRbElpsL/DBVW7q3ExxwusdNXI3lXpuhEZkzs8p5Eg==", "dependencies": { "color-name": "^1.0.0", "simple-swizzle": "^0.2.2" @@ -14277,7 +15895,8 @@ }, "node_modules/color/node_modules/color-convert": { "version": "2.0.1", - "license": "MIT", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", "dependencies": { "color-name": "~1.1.4" }, @@ -14287,16 +15906,19 @@ }, "node_modules/color/node_modules/color-name": { "version": "1.1.4", - "license": "MIT" + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" }, "node_modules/concat-map": { "version": "0.0.1", - "dev": true, - "license": "MIT" + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", + "dev": true }, "node_modules/content-disposition": { "version": "0.5.4", - "license": "MIT", + "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz", + "integrity": "sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==", "peer": true, "dependencies": { "safe-buffer": "5.2.1" @@ -14307,15 +15929,17 @@ }, "node_modules/content-type": { "version": "1.0.5", - "license": "MIT", + "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.5.tgz", + "integrity": "sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==", "peer": true, "engines": { "node": ">= 0.6" } }, "node_modules/cookie": { - "version": "0.5.0", - "license": "MIT", + "version": "0.7.1", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.7.1.tgz", + "integrity": "sha512-6DnInpx7SJ2AK3+CTUE/ZM0vWTUboZCegxhC2xiIydHR9jNuTAASBrfEpHhiGOZw/nX51bHt6YQl8jsGo4y/0w==", "peer": true, "engines": { "node": ">= 0.6" @@ -14323,97 +15947,108 @@ }, "node_modules/cookie-signature": { "version": "1.0.6", - "license": "MIT", + "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", + "integrity": "sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==", "peer": true }, - "node_modules/core-util-is": { - "version": "1.0.3", - "dev": true, - "license": "MIT" - }, "node_modules/cross-spawn": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", - "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "version": "6.0.6", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.6.tgz", + "integrity": "sha512-VqCUuhcd1iB+dsv8gxPttb5iZh/D0iubSP21g36KXdEuf6I5JiioesUVjpCdHV9MZRUfVFlvwtIUyPfxo5trtw==", "dev": true, "dependencies": { - "path-key": "^3.1.0", - "shebang-command": "^2.0.0", - "which": "^2.0.1" + "nice-try": "^1.0.4", + "path-key": "^2.0.1", + "semver": "^5.5.0", + "shebang-command": "^1.2.0", + "which": "^1.2.9" }, "engines": { - "node": ">= 8" - } - }, - "node_modules/cross-spawn/node_modules/path-key": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", - "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", - "dev": true, - "engines": { - "node": ">=8" + "node": ">=4.8" } }, - "node_modules/cross-spawn/node_modules/shebang-command": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", - "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "node_modules/data-view-buffer": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/data-view-buffer/-/data-view-buffer-1.0.2.tgz", + "integrity": "sha512-EmKO5V3OLXh1rtK2wgXRansaK1/mtVdTUEiEI0W8RkvgT05kfxaH29PliLnpLP73yYO6142Q72QNa8Wx/A5CqQ==", "dev": true, "dependencies": { - "shebang-regex": "^3.0.0" + "call-bound": "^1.0.3", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.2" }, "engines": { - "node": ">=8" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/cross-spawn/node_modules/shebang-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", - "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "node_modules/data-view-byte-length": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/data-view-byte-length/-/data-view-byte-length-1.0.2.tgz", + "integrity": "sha512-tuhGbE6CfTM9+5ANGf+oQb72Ky/0+s3xKUpHvShfiz2RxMFgFPjsXuRLBVMtvMs15awe45SRb83D6wH4ew6wlQ==", "dev": true, + "dependencies": { + "call-bound": "^1.0.3", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.2" + }, "engines": { - "node": ">=8" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/inspect-js" } }, - "node_modules/cross-spawn/node_modules/which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "node_modules/data-view-byte-offset": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/data-view-byte-offset/-/data-view-byte-offset-1.0.1.tgz", + "integrity": "sha512-BS8PfmtDGnrgYdOonGZQdLZslWIeCGFP9tpan0hi1Co2Zr2NKADsvGYA8XxuG/4UWgJ6Cjtv+YJnB6MM69QGlQ==", "dev": true, "dependencies": { - "isexe": "^2.0.0" - }, - "bin": { - "node-which": "bin/node-which" + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.1" }, "engines": { - "node": ">= 8" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, "node_modules/debug": { "version": "2.6.9", - "license": "MIT", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "peer": true, "dependencies": { "ms": "2.0.0" } }, "node_modules/define-data-property": { - "version": "1.1.0", + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.4.tgz", + "integrity": "sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==", "dev": true, - "license": "MIT", "dependencies": { - "get-intrinsic": "^1.2.1", - "gopd": "^1.0.1", - "has-property-descriptors": "^1.0.0" + "es-define-property": "^1.0.0", + "es-errors": "^1.3.0", + "gopd": "^1.0.1" }, "engines": { "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, "node_modules/define-properties": { "version": "1.2.1", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.2.1.tgz", + "integrity": "sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==", "dev": true, - "license": "MIT", "dependencies": { "define-data-property": "^1.0.1", "has-property-descriptors": "^1.0.0", @@ -14428,7 +16063,8 @@ }, "node_modules/depd": { "version": "2.0.0", - "license": "MIT", + "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", + "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==", "peer": true, "engines": { "node": ">= 0.8" @@ -14436,7 +16072,8 @@ }, "node_modules/destroy": { "version": "1.2.0", - "license": "MIT", + "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz", + "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==", "peer": true, "engines": { "node": ">= 0.8", @@ -14444,9 +16081,9 @@ } }, "node_modules/detect-libc": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.0.2.tgz", - "integrity": "sha512-UX6sGumvvqSaXgdKGUsgZWqcUyIXZ/vZTrlRT/iobiKhGL0zL4d3osHj3uqllWJK+i+sixDS/3COVEOFbupFyw==", + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.0.3.tgz", + "integrity": "sha512-bwy0MGW55bG41VqxxypOsdSdGqLwXPI/focwgTYCFMbdUiBAxLg9CFzG08sz2aqzknwiX7Hkl0bQENjg8iLByw==", "engines": { "node": ">=8" } @@ -14457,6 +16094,19 @@ "integrity": "sha512-6QvTW9mrGeIegrFXdtQi9pk7O/nSK6lSdXW2eqUspN5LWD7UTji2Fqw5V2YLjBpHEoU9Xl/eUWNpDeZvoyOv2w==", "dev": true }, + "node_modules/dunder-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.1.tgz", + "integrity": "sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==", + "dependencies": { + "call-bind-apply-helpers": "^1.0.1", + "es-errors": "^1.3.0", + "gopd": "^1.2.0" + }, + "engines": { + "node": ">= 0.4" + } + }, "node_modules/eastasianwidth": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz", @@ -14465,7 +16115,8 @@ }, "node_modules/ee-first": { "version": "1.1.1", - "license": "MIT", + "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", + "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==", "peer": true }, "node_modules/emoji-regex": { @@ -14475,8 +16126,9 @@ "dev": true }, "node_modules/encodeurl": { - "version": "1.0.2", - "license": "MIT", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-2.0.0.tgz", + "integrity": "sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg==", "peer": true, "engines": { "node": ">= 0.8" @@ -14484,56 +16136,70 @@ }, "node_modules/error-ex": { "version": "1.3.2", + "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", + "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", "dev": true, - "license": "MIT", "dependencies": { "is-arrayish": "^0.2.1" } }, "node_modules/es-abstract": { - "version": "1.22.2", + "version": "1.23.9", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.23.9.tgz", + "integrity": "sha512-py07lI0wjxAC/DcfK1S6G7iANonniZwTISvdPzk9hzeH0IZIshbuuFxLIU96OyF89Yb9hiqWn8M/bY83KY5vzA==", "dev": true, - "license": "MIT", "dependencies": { - "array-buffer-byte-length": "^1.0.0", - "arraybuffer.prototype.slice": "^1.0.2", - "available-typed-arrays": "^1.0.5", - "call-bind": "^1.0.2", - "es-set-tostringtag": "^2.0.1", - "es-to-primitive": "^1.2.1", - "function.prototype.name": "^1.1.6", - "get-intrinsic": "^1.2.1", - "get-symbol-description": "^1.0.0", - "globalthis": "^1.0.3", - "gopd": "^1.0.1", - "has": "^1.0.3", - "has-property-descriptors": "^1.0.0", - "has-proto": "^1.0.1", - "has-symbols": "^1.0.3", - "internal-slot": "^1.0.5", - "is-array-buffer": "^3.0.2", + "array-buffer-byte-length": "^1.0.2", + "arraybuffer.prototype.slice": "^1.0.4", + "available-typed-arrays": "^1.0.7", + "call-bind": "^1.0.8", + "call-bound": "^1.0.3", + "data-view-buffer": "^1.0.2", + "data-view-byte-length": "^1.0.2", + "data-view-byte-offset": "^1.0.1", + "es-define-property": "^1.0.1", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.0.0", + "es-set-tostringtag": "^2.1.0", + "es-to-primitive": "^1.3.0", + "function.prototype.name": "^1.1.8", + "get-intrinsic": "^1.2.7", + "get-proto": "^1.0.0", + "get-symbol-description": "^1.1.0", + "globalthis": "^1.0.4", + "gopd": "^1.2.0", + "has-property-descriptors": "^1.0.2", + "has-proto": "^1.2.0", + "has-symbols": "^1.1.0", + "hasown": "^2.0.2", + "internal-slot": "^1.1.0", + "is-array-buffer": "^3.0.5", "is-callable": "^1.2.7", - "is-negative-zero": "^2.0.2", - "is-regex": "^1.1.4", - "is-shared-array-buffer": "^1.0.2", - "is-string": "^1.0.7", - "is-typed-array": "^1.1.12", - "is-weakref": "^1.0.2", - "object-inspect": "^1.12.3", + "is-data-view": "^1.0.2", + "is-regex": "^1.2.1", + "is-shared-array-buffer": "^1.0.4", + "is-string": "^1.1.1", + "is-typed-array": "^1.1.15", + "is-weakref": "^1.1.0", + "math-intrinsics": "^1.1.0", + "object-inspect": "^1.13.3", "object-keys": "^1.1.1", - "object.assign": "^4.1.4", - "regexp.prototype.flags": "^1.5.1", - "safe-array-concat": "^1.0.1", - "safe-regex-test": "^1.0.0", - "string.prototype.trim": "^1.2.8", - "string.prototype.trimend": "^1.0.7", - "string.prototype.trimstart": "^1.0.7", - "typed-array-buffer": "^1.0.0", - "typed-array-byte-length": "^1.0.0", - "typed-array-byte-offset": "^1.0.0", - "typed-array-length": "^1.0.4", - "unbox-primitive": "^1.0.2", - "which-typed-array": "^1.1.11" + "object.assign": "^4.1.7", + "own-keys": "^1.0.1", + "regexp.prototype.flags": "^1.5.3", + "safe-array-concat": "^1.1.3", + "safe-push-apply": "^1.0.0", + "safe-regex-test": "^1.1.0", + "set-proto": "^1.0.0", + "string.prototype.trim": "^1.2.10", + "string.prototype.trimend": "^1.0.9", + "string.prototype.trimstart": "^1.0.8", + "typed-array-buffer": "^1.0.3", + "typed-array-byte-length": "^1.0.3", + "typed-array-byte-offset": "^1.0.4", + "typed-array-length": "^1.0.7", + "unbox-primitive": "^1.1.0", + "which-typed-array": "^1.1.18" }, "engines": { "node": ">= 0.4" @@ -14542,27 +16208,57 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/es-define-property": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.1.tgz", + "integrity": "sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-errors": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz", + "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-object-atoms": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.1.1.tgz", + "integrity": "sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==", + "dependencies": { + "es-errors": "^1.3.0" + }, + "engines": { + "node": ">= 0.4" + } + }, "node_modules/es-set-tostringtag": { - "version": "2.0.1", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.1.0.tgz", + "integrity": "sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA==", "dev": true, - "license": "MIT", "dependencies": { - "get-intrinsic": "^1.1.3", - "has": "^1.0.3", - "has-tostringtag": "^1.0.0" + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.6", + "has-tostringtag": "^1.0.2", + "hasown": "^2.0.2" }, "engines": { "node": ">= 0.4" } }, "node_modules/es-to-primitive": { - "version": "1.2.1", + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.3.0.tgz", + "integrity": "sha512-w+5mJ3GuFL+NjVtJlvydShqE1eN3h3PbI7/5LAsYJP/2qtuMXjfL2LpHSRqo4b4eSF5K/DH1JXKUAHSB2UW50g==", "dev": true, - "license": "MIT", "dependencies": { - "is-callable": "^1.1.4", - "is-date-object": "^1.0.1", - "is-symbol": "^1.0.2" + "is-callable": "^1.2.7", + "is-date-object": "^1.0.5", + "is-symbol": "^1.0.4" }, "engines": { "node": ">= 0.4" @@ -14571,32 +16267,48 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/es6-promise": { - "version": "3.2.1", - "dev": true, - "license": "MIT" - }, "node_modules/escape-html": { "version": "1.0.3", - "license": "MIT", + "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", + "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==", "peer": true }, "node_modules/escape-string-regexp": { "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", "dev": true, - "license": "MIT", "engines": { "node": ">=0.8.0" } }, "node_modules/etag": { "version": "1.8.1", - "license": "MIT", + "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", + "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==", "peer": true, "engines": { "node": ">= 0.6" } }, + "node_modules/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==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/events": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", + "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", + "dev": true, + "engines": { + "node": ">=0.8.x" + } + }, "node_modules/exif-parser": { "version": "0.1.12", "resolved": "https://registry.npmjs.org/exif-parser/-/exif-parser-0.1.12.tgz", @@ -14604,36 +16316,37 @@ "dev": true }, "node_modules/express": { - "version": "4.18.2", - "license": "MIT", + "version": "4.21.2", + "resolved": "https://registry.npmjs.org/express/-/express-4.21.2.tgz", + "integrity": "sha512-28HqgMZAmih1Czt9ny7qr6ek2qddF4FclbMzwhCREB6OFfH+rXAnuNCwo1/wFvrtbgsQDb4kSbX9de9lFbrXnA==", "peer": true, "dependencies": { "accepts": "~1.3.8", "array-flatten": "1.1.1", - "body-parser": "1.20.1", + "body-parser": "1.20.3", "content-disposition": "0.5.4", "content-type": "~1.0.4", - "cookie": "0.5.0", + "cookie": "0.7.1", "cookie-signature": "1.0.6", "debug": "2.6.9", "depd": "2.0.0", - "encodeurl": "~1.0.2", + "encodeurl": "~2.0.0", "escape-html": "~1.0.3", "etag": "~1.8.1", - "finalhandler": "1.2.0", + "finalhandler": "1.3.1", "fresh": "0.5.2", "http-errors": "2.0.0", - "merge-descriptors": "1.0.1", + "merge-descriptors": "1.0.3", "methods": "~1.1.2", "on-finished": "2.4.1", "parseurl": "~1.3.3", - "path-to-regexp": "0.1.7", + "path-to-regexp": "0.1.12", "proxy-addr": "~2.0.7", - "qs": "6.11.0", + "qs": "6.13.0", "range-parser": "~1.2.1", "safe-buffer": "5.2.1", - "send": "0.18.0", - "serve-static": "1.15.0", + "send": "0.19.0", + "serve-static": "1.16.2", "setprototypeof": "1.2.0", "statuses": "2.0.1", "type-is": "~1.6.18", @@ -14642,6 +16355,33 @@ }, "engines": { "node": ">= 0.10.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/express" + } + }, + "node_modules/fast-xml-parser": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/fast-xml-parser/-/fast-xml-parser-4.4.1.tgz", + "integrity": "sha512-xkjOecfnKGkSsOwtZ5Pz7Us/T6mrbPQrq0nh+aCO5V9nk5NLWmasAHumTKjiPJPWANe+kAZ84Jc8ooJkzZ88Sw==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/NaturalIntelligence" + }, + { + "type": "paypal", + "url": "https://paypal.me/naturalintelligence" + } + ], + "optional": true, + "peer": true, + "dependencies": { + "strnum": "^1.0.5" + }, + "bin": { + "fxparser": "src/cli/cli.js" } }, "node_modules/file-type": { @@ -14662,12 +16402,13 @@ } }, "node_modules/finalhandler": { - "version": "1.2.0", - "license": "MIT", + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.3.1.tgz", + "integrity": "sha512-6BN9trH7bp3qvnrRyzsBz+g3lZxTNZTbVO2EV1CS0WIcDbawYVdYvGflME/9QP0h0pYlCDBCTjYa9nZzMDpyxQ==", "peer": true, "dependencies": { "debug": "2.6.9", - "encodeurl": "~1.0.2", + "encodeurl": "~2.0.0", "escape-html": "~1.0.3", "on-finished": "2.4.1", "parseurl": "~1.3.3", @@ -14678,21 +16419,48 @@ "node": ">= 0.8" } }, + "node_modules/follow-redirects": { + "version": "1.15.9", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.9.tgz", + "integrity": "sha512-gew4GsXizNgdoRyqmyfMHyAmXsZDk6mHkSxZFCzW9gwlbtOW44CDtYavM+y+72qD/Vq2l550kMF52DT8fOLJqQ==", + "dev": true, + "funding": [ + { + "type": "individual", + "url": "https://github.com/sponsors/RubenVerborgh" + } + ], + "engines": { + "node": ">=4.0" + }, + "peerDependenciesMeta": { + "debug": { + "optional": true + } + } + }, "node_modules/for-each": { - "version": "0.3.3", + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.5.tgz", + "integrity": "sha512-dKx12eRCVIzqCxFGplyFKJMPvLEWgmNtUrpTiJIR5u97zEhRG8ySrtboPHZXx7daLxQVrl643cTzbab2tkQjxg==", "dev": true, - "license": "MIT", "dependencies": { - "is-callable": "^1.1.3" + "is-callable": "^1.2.7" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, "node_modules/foreground-child": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.1.1.tgz", - "integrity": "sha512-TMKDUnIte6bfb5nWv7V/caI169OHgvwjb7V4WkeUvbQQdjr5rWKqHFiKWb/fcOwB+CzBT+qbWjvj+DVwRskpIg==", + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.3.1.tgz", + "integrity": "sha512-gIXjKqtFuWEgzFRJA9WCQeSJLZDjgJUOMCMzxtvFq/37KojM1BFGufqsCy0r4qSQmYLsZYMeyRqzIWOMup03sw==", "dev": true, "dependencies": { - "cross-spawn": "^7.0.0", + "cross-spawn": "^7.0.6", "signal-exit": "^4.0.1" }, "engines": { @@ -14702,9 +16470,69 @@ "url": "https://github.com/sponsors/isaacs" } }, + "node_modules/foreground-child/node_modules/cross-spawn": { + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", + "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==", + "dev": true, + "dependencies": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/foreground-child/node_modules/path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/foreground-child/node_modules/shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "dev": true, + "dependencies": { + "shebang-regex": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/foreground-child/node_modules/shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/foreground-child/node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, "node_modules/forwarded": { "version": "0.2.0", - "license": "MIT", + "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz", + "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==", "peer": true, "engines": { "node": ">= 0.6" @@ -14712,7 +16540,8 @@ }, "node_modules/fresh": { "version": "0.5.2", - "license": "MIT", + "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", + "integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==", "peer": true, "engines": { "node": ">= 0.6" @@ -14720,22 +16549,43 @@ }, "node_modules/fs.realpath": { "version": "1.0.0", - "dev": true, - "license": "ISC" + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", + "dev": true + }, + "node_modules/fsevents": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", + "hasInstallScript": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } }, "node_modules/function-bind": { - "version": "1.1.1", - "license": "MIT" + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", + "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, "node_modules/function.prototype.name": { - "version": "1.1.6", + "version": "1.1.8", + "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.8.tgz", + "integrity": "sha512-e5iwyodOHhbMr/yNrc7fDYG4qlbIvI5gajyzPnb5TCwyhjApznQh1BMFou9b30SevY43gCJKXycoCBjMbsuW0Q==", "dev": true, - "license": "MIT", "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1", - "functions-have-names": "^1.2.3" + "call-bind": "^1.0.8", + "call-bound": "^1.0.3", + "define-properties": "^1.2.1", + "functions-have-names": "^1.2.3", + "hasown": "^2.0.2", + "is-callable": "^1.2.7" }, "engines": { "node": ">= 0.4" @@ -14746,32 +16596,57 @@ }, "node_modules/functions-have-names": { "version": "1.2.3", + "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz", + "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==", "dev": true, - "license": "MIT", "funding": { "url": "https://github.com/sponsors/ljharb" } }, "node_modules/get-intrinsic": { - "version": "1.2.1", - "license": "MIT", + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.3.0.tgz", + "integrity": "sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ==", "dependencies": { - "function-bind": "^1.1.1", - "has": "^1.0.3", - "has-proto": "^1.0.1", - "has-symbols": "^1.0.3" + "call-bind-apply-helpers": "^1.0.2", + "es-define-property": "^1.0.1", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.1.1", + "function-bind": "^1.1.2", + "get-proto": "^1.0.1", + "gopd": "^1.2.0", + "has-symbols": "^1.1.0", + "hasown": "^2.0.2", + "math-intrinsics": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/get-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/get-proto/-/get-proto-1.0.1.tgz", + "integrity": "sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==", + "dependencies": { + "dunder-proto": "^1.0.1", + "es-object-atoms": "^1.0.0" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "engines": { + "node": ">= 0.4" } }, "node_modules/get-symbol-description": { - "version": "1.0.0", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.1.0.tgz", + "integrity": "sha512-w9UMqWwJxHNOvoNzSJ2oPF5wvYcvP7jUvYzhp67yEhTi17ZDBBC1z9pTdGuzjD+EFIqLSYRweZjqfiPzQ06Ebg==", "dev": true, - "license": "MIT", "dependencies": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.1.1" + "call-bound": "^1.0.3", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.6" }, "engines": { "node": ">= 0.4" @@ -14792,8 +16667,10 @@ }, "node_modules/glob": { "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "deprecated": "Glob versions prior to v9 are no longer supported", "dev": true, - "license": "ISC", "dependencies": { "fs.realpath": "^1.0.0", "inflight": "^1.0.4", @@ -14820,11 +16697,13 @@ } }, "node_modules/globalthis": { - "version": "1.0.3", + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.4.tgz", + "integrity": "sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ==", "dev": true, - "license": "MIT", "dependencies": { - "define-properties": "^1.1.3" + "define-properties": "^1.2.1", + "gopd": "^1.0.1" }, "engines": { "node": ">= 0.4" @@ -14834,11 +16713,11 @@ } }, "node_modules/gopd": { - "version": "1.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "get-intrinsic": "^1.1.3" + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.2.0.tgz", + "integrity": "sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==", + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" @@ -14846,46 +16725,51 @@ }, "node_modules/graceful-fs": { "version": "4.2.11", - "dev": true, - "license": "ISC" - }, - "node_modules/has": { - "version": "1.0.4", - "license": "MIT", - "engines": { - "node": ">= 0.4.0" - } + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", + "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==", + "dev": true }, "node_modules/has-bigints": { - "version": "1.0.2", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.1.0.tgz", + "integrity": "sha512-R3pbpkcIqv2Pm3dUwgjclDRVmWpTJW2DcMzcIhEXEx1oh/CEMObMm3KLmRJOdvhM7o4uQBnwr8pzRK2sJWIqfg==", "dev": true, - "license": "MIT", + "engines": { + "node": ">= 0.4" + }, "funding": { "url": "https://github.com/sponsors/ljharb" } }, "node_modules/has-flag": { "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", "dev": true, - "license": "MIT", "engines": { "node": ">=4" } }, "node_modules/has-property-descriptors": { - "version": "1.0.0", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz", + "integrity": "sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==", "dev": true, - "license": "MIT", "dependencies": { - "get-intrinsic": "^1.1.1" + "es-define-property": "^1.0.0" }, "funding": { "url": "https://github.com/sponsors/ljharb" } }, "node_modules/has-proto": { - "version": "1.0.1", - "license": "MIT", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.2.0.tgz", + "integrity": "sha512-KIL7eQPfHQRC8+XluaIw7BHUwwqL19bQn4hzNgdr+1wXoU0KKj6rufu47lhY7KbJR2C6T6+PfyN0Ea7wkSS+qQ==", + "dev": true, + "dependencies": { + "dunder-proto": "^1.0.0" + }, "engines": { "node": ">= 0.4" }, @@ -14894,8 +16778,9 @@ } }, "node_modules/has-symbols": { - "version": "1.0.3", - "license": "MIT", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.1.0.tgz", + "integrity": "sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==", "engines": { "node": ">= 0.4" }, @@ -14904,11 +16789,12 @@ } }, "node_modules/has-tostringtag": { - "version": "1.0.0", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.2.tgz", + "integrity": "sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==", "dev": true, - "license": "MIT", "dependencies": { - "has-symbols": "^1.0.2" + "has-symbols": "^1.0.3" }, "engines": { "node": ">= 0.4" @@ -14917,21 +16803,27 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/hooks-fixed": { + "node_modules/hasown": { "version": "2.0.2", - "dev": true, + "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", + "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", + "dependencies": { + "function-bind": "^1.1.2" + }, "engines": { - "node": ">=0.4.0" + "node": ">= 0.4" } }, "node_modules/hosted-git-info": { "version": "2.8.9", - "dev": true, - "license": "ISC" + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz", + "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==", + "dev": true }, "node_modules/http-errors": { "version": "2.0.0", - "license": "MIT", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", + "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==", "peer": true, "dependencies": { "depd": "2.0.0", @@ -14946,7 +16838,8 @@ }, "node_modules/iconv-lite": { "version": "0.4.24", - "license": "MIT", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", + "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", "peer": true, "dependencies": { "safer-buffer": ">= 2.1.2 < 3" @@ -14957,7 +16850,8 @@ }, "node_modules/ieee754": { "version": "1.2.1", - "dev": true, + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", + "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", "funding": [ { "type": "github", @@ -14971,8 +16865,7 @@ "type": "consulting", "url": "https://feross.org/support" } - ], - "license": "BSD-3-Clause" + ] }, "node_modules/image-q": { "version": "4.0.0", @@ -14991,8 +16884,10 @@ }, "node_modules/inflight": { "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "deprecated": "This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.", "dev": true, - "license": "ISC", "dependencies": { "once": "^1.3.0", "wrappy": "1" @@ -15000,37 +16895,57 @@ }, "node_modules/inherits": { "version": "2.0.4", - "license": "ISC" + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" }, "node_modules/internal-slot": { - "version": "1.0.5", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.1.0.tgz", + "integrity": "sha512-4gd7VpWNQNB4UKKCFFVcp1AVv+FMOgs9NKzjHKusc8jTMhd5eL1NqQqOpE0KzMds804/yHlglp3uxgluOqAPLw==", "dev": true, - "license": "MIT", "dependencies": { - "get-intrinsic": "^1.2.0", - "has": "^1.0.3", - "side-channel": "^1.0.4" + "es-errors": "^1.3.0", + "hasown": "^2.0.2", + "side-channel": "^1.1.0" }, "engines": { "node": ">= 0.4" } }, + "node_modules/ip-address": { + "version": "9.0.5", + "resolved": "https://registry.npmjs.org/ip-address/-/ip-address-9.0.5.tgz", + "integrity": "sha512-zHtQzGojZXTwZTHQqra+ETKd4Sn3vgi7uBmlPoXVWZqYvuKmtI0l/VZTjqGmJY9x88GGOaZ9+G9ES8hC4T4X8g==", + "peer": true, + "dependencies": { + "jsbn": "1.1.0", + "sprintf-js": "^1.1.3" + }, + "engines": { + "node": ">= 12" + } + }, "node_modules/ipaddr.js": { "version": "1.9.1", - "license": "MIT", + "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz", + "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==", "peer": true, "engines": { "node": ">= 0.10" } }, "node_modules/is-array-buffer": { - "version": "3.0.2", + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.5.tgz", + "integrity": "sha512-DDfANUiiG2wC1qawP66qlTugJeL5HyzMpfr8lLK+jMQirGzNod0B12cFB/9q838Ru27sBwfw78/rdoU7RERz6A==", "dev": true, - "license": "MIT", "dependencies": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.2.0", - "is-typed-array": "^1.1.10" + "call-bind": "^1.0.8", + "call-bound": "^1.0.3", + "get-intrinsic": "^1.2.6" + }, + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" @@ -15038,27 +16953,52 @@ }, "node_modules/is-arrayish": { "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==", + "dev": true + }, + "node_modules/is-async-function": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-async-function/-/is-async-function-2.1.1.tgz", + "integrity": "sha512-9dgM/cZBnNvjzaMYHVoxxfPj2QXt22Ev7SuuPrs+xav0ukGB0S6d4ydZdEiM48kLx5kDV+QBPrpVnFyefL8kkQ==", "dev": true, - "license": "MIT" + "dependencies": { + "async-function": "^1.0.0", + "call-bound": "^1.0.3", + "get-proto": "^1.0.1", + "has-tostringtag": "^1.0.2", + "safe-regex-test": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, "node_modules/is-bigint": { - "version": "1.0.4", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.1.0.tgz", + "integrity": "sha512-n4ZT37wG78iz03xPRKJrHTdZbe3IicyucEtdRsV5yglwc3GyUfbAfpSeD0FJ41NbUNSt5wbhqfp1fS+BgnvDFQ==", "dev": true, - "license": "MIT", "dependencies": { - "has-bigints": "^1.0.1" + "has-bigints": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" } }, "node_modules/is-boolean-object": { - "version": "1.1.2", + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.2.2.tgz", + "integrity": "sha512-wa56o2/ElJMYqjCjGkXri7it5FbebW5usLw/nPmCMs5DeZ7eziSYZhSmPRn0txqeW4LnAmQQU7FgqLpsEFKM4A==", "dev": true, - "license": "MIT", "dependencies": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" + "call-bound": "^1.0.3", + "has-tostringtag": "^1.0.2" }, "engines": { "node": ">= 0.4" @@ -15069,8 +17009,9 @@ }, "node_modules/is-callable": { "version": "1.2.7", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz", + "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==", "dev": true, - "license": "MIT", "engines": { "node": ">= 0.4" }, @@ -15079,22 +17020,60 @@ } }, "node_modules/is-core-module": { - "version": "2.13.0", + "version": "2.16.1", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.16.1.tgz", + "integrity": "sha512-UfoeMA6fIJ8wTYFEUjelnaGI67v6+N7qXJEvQuIGa99l4xsCruSYOVSQ0uPANn4dAzm8lkYPaKLrrijLq7x23w==", + "dev": true, + "dependencies": { + "hasown": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-data-view": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-data-view/-/is-data-view-1.0.2.tgz", + "integrity": "sha512-RKtWF8pGmS87i2D6gqQu/l7EYRlVdfzemCJN/P3UOs//x1QE7mfhvzHIApBTRf7axvT6DMGwSwBXYCT0nfB9xw==", "dev": true, - "license": "MIT", "dependencies": { - "has": "^1.0.3" + "call-bound": "^1.0.2", + "get-intrinsic": "^1.2.6", + "is-typed-array": "^1.1.13" + }, + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" } }, "node_modules/is-date-object": { - "version": "1.0.5", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.1.0.tgz", + "integrity": "sha512-PwwhEakHVKTdRNVOw+/Gyh0+MzlCl4R6qKvkhuvLtPMggI1WAHt9sOwZxQLSGpUaDnrdyDsomoRgNnCfKNSXXg==", "dev": true, - "license": "MIT", "dependencies": { - "has-tostringtag": "^1.0.0" + "call-bound": "^1.0.2", + "has-tostringtag": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-finalizationregistry": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-finalizationregistry/-/is-finalizationregistry-1.1.1.tgz", + "integrity": "sha512-1pC6N8qWJbWoPtEjgcL2xyhQOP491EQjeUo3qTKcmV8YSDDJrOepfG8pcC7h/QgnQHYSv0mJ3Z/ZWxmatVrysg==", + "dev": true, + "dependencies": { + "call-bound": "^1.0.3" }, "engines": { "node": ">= 0.4" @@ -15118,10 +17097,29 @@ "integrity": "sha512-lw7DUp0aWXYg+CBCN+JKkcE0Q2RayZnSvnZBlwgxHBQhqt5pZNVy4Ri7H9GmmXkdu7LUthszM+Tor1u/2iBcpQ==", "dev": true }, - "node_modules/is-negative-zero": { - "version": "2.0.2", + "node_modules/is-generator-function": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-generator-function/-/is-generator-function-1.1.0.tgz", + "integrity": "sha512-nPUB5km40q9e8UfN/Zc24eLlzdSf9OfKByBw9CIdw4H1giPMeA0OIJvbchsCu4npfI2QcMVBsGEBHKZ7wLTWmQ==", + "dev": true, + "dependencies": { + "call-bound": "^1.0.3", + "get-proto": "^1.0.0", + "has-tostringtag": "^1.0.2", + "safe-regex-test": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-map": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/is-map/-/is-map-2.0.3.tgz", + "integrity": "sha512-1Qed0/Hr2m+YqxnM09CjA2d/i6YZNfF6R2oRAOj36eUdS6qIV/huPJNSEpKbupewFs+ZsJlxsjjPbc0/afW6Lw==", "dev": true, - "license": "MIT", "engines": { "node": ">= 0.4" }, @@ -15130,11 +17128,13 @@ } }, "node_modules/is-number-object": { - "version": "1.0.7", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.1.1.tgz", + "integrity": "sha512-lZhclumE1G6VYD8VHe35wFaIif+CTy5SJIi5+3y4psDgWu4wPDoBhF8NxUOinEc7pHgiTsT6MaBb92rKhhD+Xw==", "dev": true, - "license": "MIT", "dependencies": { - "has-tostringtag": "^1.0.0" + "call-bound": "^1.0.3", + "has-tostringtag": "^1.0.2" }, "engines": { "node": ">= 0.4" @@ -15144,13 +17144,28 @@ } }, "node_modules/is-regex": { - "version": "1.1.4", + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.2.1.tgz", + "integrity": "sha512-MjYsKHO5O7mCsmRGxWcLWheFqN9DJ/2TmngvjKXihe6efViPqc274+Fx/4fYj/r03+ESvBdTXK0V6tA3rgez1g==", "dev": true, - "license": "MIT", "dependencies": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" + "call-bound": "^1.0.2", + "gopd": "^1.2.0", + "has-tostringtag": "^1.0.2", + "hasown": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-set": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/is-set/-/is-set-2.0.3.tgz", + "integrity": "sha512-iPAjerrse27/ygGLxw+EBR9agv9Y6uLeYVJMu+QNCoouJ1/1ri0mGrcWpfCqFZuzzx3WjtwxG098X+n4OuRkPg==", + "dev": true, "engines": { "node": ">= 0.4" }, @@ -15159,22 +17174,28 @@ } }, "node_modules/is-shared-array-buffer": { - "version": "1.0.2", + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.4.tgz", + "integrity": "sha512-ISWac8drv4ZGfwKl5slpHG9OwPNty4jOWPRIhBpxOoD+hqITiwuipOQ2bNthAzwA3B4fIjO4Nln74N0S9byq8A==", "dev": true, - "license": "MIT", "dependencies": { - "call-bind": "^1.0.2" + "call-bound": "^1.0.3" + }, + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" } }, "node_modules/is-string": { - "version": "1.0.7", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.1.1.tgz", + "integrity": "sha512-BtEeSsoaQjlSPBemMQIrY1MY0uM6vnS1g5fmufYOtnxLGUZM2178PKbhsk7Ffv58IX+ZtcvoGwccYsh0PglkAA==", "dev": true, - "license": "MIT", "dependencies": { - "has-tostringtag": "^1.0.0" + "call-bound": "^1.0.3", + "has-tostringtag": "^1.0.2" }, "engines": { "node": ">= 0.4" @@ -15184,11 +17205,14 @@ } }, "node_modules/is-symbol": { - "version": "1.0.4", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.1.1.tgz", + "integrity": "sha512-9gGx6GTtCQM73BgmHQXfDmLtfjjTUDSyoxTCbp5WtoixAhfgsDirWIcVQ/IHpvI5Vgd5i/J5F7B9cN/WlVbC/w==", "dev": true, - "license": "MIT", "dependencies": { - "has-symbols": "^1.0.2" + "call-bound": "^1.0.2", + "has-symbols": "^1.1.0", + "safe-regex-test": "^1.1.0" }, "engines": { "node": ">= 0.4" @@ -15198,12 +17222,25 @@ } }, "node_modules/is-typed-array": { - "version": "1.1.12", + "version": "1.1.15", + "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.15.tgz", + "integrity": "sha512-p3EcsicXjit7SaskXHs1hA91QxgTw46Fv6EFKKGS5DRFLD8yKnohjF3hxoju94b/OcMZoQukzpPpBE9uLVKzgQ==", "dev": true, - "license": "MIT", "dependencies": { - "which-typed-array": "^1.1.11" + "which-typed-array": "^1.1.16" + }, + "engines": { + "node": ">= 0.4" }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-weakmap": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/is-weakmap/-/is-weakmap-2.0.2.tgz", + "integrity": "sha512-K5pXYOm9wqY1RgjpL3YTkF39tni1XajUIkawTLUo9EZEVUFga5gSQJF8nNS7ZwJQ02y+1YCNYcMh+HIf1ZqE+w==", + "dev": true, "engines": { "node": ">= 0.4" }, @@ -15212,25 +17249,47 @@ } }, "node_modules/is-weakref": { - "version": "1.0.2", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.1.1.tgz", + "integrity": "sha512-6i9mGWSlqzNMEqpCp93KwRS1uUOodk2OJ6b+sq7ZPDSy2WuI5NFIxp/254TytR8ftefexkWn5xNiHUNpPOfSew==", "dev": true, - "license": "MIT", "dependencies": { - "call-bind": "^1.0.2" + "call-bound": "^1.0.3" + }, + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/isarray": { - "version": "1.0.0", + "node_modules/is-weakset": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-weakset/-/is-weakset-2.0.4.tgz", + "integrity": "sha512-mfcwb6IzQyOKTs84CQMrOwW4gQcaTOAWJ0zzJCl2WSPDrWk/OzDaImWFH3djXhb24g4eudZfLRozAvPGw4d9hQ==", "dev": true, - "license": "MIT" + "dependencies": { + "call-bound": "^1.0.3", + "get-intrinsic": "^1.2.6" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/isarray": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", + "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==", + "dev": true }, "node_modules/isexe": { "version": "2.0.0", - "dev": true, - "license": "ISC" + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", + "dev": true }, "node_modules/isomorphic-fetch": { "version": "3.0.0", @@ -15243,16 +17302,13 @@ } }, "node_modules/jackspeak": { - "version": "2.3.6", - "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-2.3.6.tgz", - "integrity": "sha512-N3yCS/NegsOBokc8GAdM8UcmfsKiSS8cipheD/nivzr700H+nsMOxJjQnvwOcRYVuFkdH0wGUvW2WbXGmrZGbQ==", + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-3.4.3.tgz", + "integrity": "sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw==", "dev": true, "dependencies": { "@isaacs/cliui": "^8.0.2" }, - "engines": { - "node": ">=14" - }, "funding": { "url": "https://github.com/sponsors/isaacs" }, @@ -15262,8 +17318,9 @@ }, "node_modules/jasmine": { "version": "3.99.0", + "resolved": "https://registry.npmjs.org/jasmine/-/jasmine-3.99.0.tgz", + "integrity": "sha512-YIThBuHzaIIcjxeuLmPD40SjxkEcc8i//sGMDKCgkRMVgIwRJf5qyExtlJpQeh7pkeoBSOe6lQEdg+/9uKg9mw==", "dev": true, - "license": "MIT", "dependencies": { "glob": "^7.1.6", "jasmine-core": "~3.99.0" @@ -15274,18 +17331,19 @@ }, "node_modules/jasmine-core": { "version": "3.99.1", - "dev": true, - "license": "MIT" + "resolved": "https://registry.npmjs.org/jasmine-core/-/jasmine-core-3.99.1.tgz", + "integrity": "sha512-Hu1dmuoGcZ7AfyynN3LsfruwMbxMALMka+YtZeGoLuDEySVmVAPaonkNoBRIw/ectu8b9tVQCJNgp4a4knp+tg==", + "dev": true }, "node_modules/jimp": { - "version": "0.22.10", - "resolved": "https://registry.npmjs.org/jimp/-/jimp-0.22.10.tgz", - "integrity": "sha512-lCaHIJAgTOsplyJzC1w/laxSxrbSsEBw4byKwXgUdMmh+ayPsnidTblenQm+IvhIs44Gcuvlb6pd2LQ0wcKaKg==", + "version": "0.22.12", + "resolved": "https://registry.npmjs.org/jimp/-/jimp-0.22.12.tgz", + "integrity": "sha512-R5jZaYDnfkxKJy1dwLpj/7cvyjxiclxU3F4TrI/J4j2rS0niq6YDUMoPn5hs8GDpO+OZGo7Ky057CRtWesyhfg==", "dev": true, "dependencies": { - "@jimp/custom": "^0.22.10", - "@jimp/plugins": "^0.22.10", - "@jimp/types": "^0.22.10", + "@jimp/custom": "^0.22.12", + "@jimp/plugins": "^0.22.12", + "@jimp/types": "^0.22.12", "regenerator-runtime": "^0.13.3" } }, @@ -15295,20 +17353,31 @@ "integrity": "sha512-WZzeDOEtTOBK4Mdsar0IqEU5sMr3vSV2RqkAIzUEV2BHnUfKGyswWFPFwK5EeDo93K3FohSHbLAjj0s1Wzd+dg==", "dev": true }, + "node_modules/jsbn": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-1.1.0.tgz", + "integrity": "sha512-4bYVV3aAMtDTTu4+xsDYa6sy9GyJ69/amsu9sYF2zqjiEoZA5xJi3BrfX3uY+/IekIu7MwdObdbDWpoZdBv3/A==", + "peer": true + }, "node_modules/json-parse-better-errors": { "version": "1.0.2", - "dev": true, - "license": "MIT" + "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz", + "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==", + "dev": true }, "node_modules/kareem": { - "version": "1.5.0", - "dev": true, - "license": "Apache 2.0" + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/kareem/-/kareem-2.5.1.tgz", + "integrity": "sha512-7jFxRVm+jD+rkq3kY0iZDJfsO2/t4BBPeEb2qKn2lR/9KhuksYk5hxzfRYWMPV8P/x2d0kHD306YyWLzjjH+uA==", + "peer": true, + "engines": { + "node": ">=12.0.0" + } }, "node_modules/load-bmfont": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/load-bmfont/-/load-bmfont-1.4.1.tgz", - "integrity": "sha512-8UyQoYmdRDy81Brz6aLAUhfZLwr5zV0L3taTQ4hju7m6biuwiWiJXjPhBJxbUQJA8PrkvJ/7Enqmwk2sM14soA==", + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/load-bmfont/-/load-bmfont-1.4.2.tgz", + "integrity": "sha512-qElWkmjW9Oq1F9EI5Gt7aD9zcdHb9spJCW1L/dmPf7KzCCEJxq8nhHz5eCgI9aMf7vrG/wyaCqdsI+Iy9ZTlog==", "dev": true, "dependencies": { "buffer-equal": "0.0.1", @@ -15316,15 +17385,16 @@ "parse-bmfont-ascii": "^1.0.3", "parse-bmfont-binary": "^1.0.5", "parse-bmfont-xml": "^1.1.4", - "phin": "^2.9.1", + "phin": "^3.7.1", "xhr": "^2.0.1", "xtend": "^4.0.0" } }, "node_modules/load-json-file": { "version": "4.0.0", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-4.0.0.tgz", + "integrity": "sha512-Kx8hMakjX03tiGTLAIdJ+lL0htKnXjEZN6hk/tozf/WOuYGdZBJrZ+rCJRbVCugsjB3jMLn9746NsQIf5VjBMw==", "dev": true, - "license": "MIT", "dependencies": { "graceful-fs": "^4.1.2", "parse-json": "^4.0.0", @@ -15337,46 +17407,62 @@ }, "node_modules/lodash": { "version": "4.17.21", - "dev": true, - "license": "MIT" - }, - "node_modules/lodash.get": { - "version": "4.4.2", - "dev": true, - "license": "MIT" + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", + "dev": true }, "node_modules/lru-cache": { - "version": "10.2.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.2.0.tgz", - "integrity": "sha512-2bIM8x+VAf6JT4bKAljS1qUWgMsqZRPGJS6FSahIMPVvctcNhyVp7AJu7quxOW9jwkryBReKZY5tY5JYv2n/7Q==", - "dev": true, + "version": "10.4.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", + "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==", + "dev": true + }, + "node_modules/math-intrinsics": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/math-intrinsics/-/math-intrinsics-1.1.0.tgz", + "integrity": "sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==", "engines": { - "node": "14 || >=16.14" + "node": ">= 0.4" } }, "node_modules/media-typer": { "version": "0.3.0", - "license": "MIT", + "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", + "integrity": "sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==", "peer": true, "engines": { "node": ">= 0.6" } }, + "node_modules/memory-pager": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/memory-pager/-/memory-pager-1.5.0.tgz", + "integrity": "sha512-ZS4Bp4r/Zoeq6+NLJpP+0Zzm0pR8whtGPf1XExKLJBAczGMnSi3It14OiNCStjQjM6NU1okjQGSxgEZN8eBYKg==", + "optional": true, + "peer": true + }, "node_modules/memorystream": { "version": "0.3.1", + "resolved": "https://registry.npmjs.org/memorystream/-/memorystream-0.3.1.tgz", + "integrity": "sha512-S3UwM3yj5mtUSEfP41UZmt/0SCoVYUcU1rkXv+BQ5Ig8ndL4sPoJNBUJERafdPb5jjHJGuMgytgKvKIf58XNBw==", "dev": true, "engines": { "node": ">= 0.10.0" } }, "node_modules/merge-descriptors": { - "version": "1.0.1", - "license": "MIT", - "peer": true + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.3.tgz", + "integrity": "sha512-gaNvAS7TZ897/rVaZ0nMtAyxNyi/pdbjbAwUpFQpN70GqnVfOiXpeUUMKRBmzXaSQ8DdTX4/0ms62r2K+hE6mQ==", + "peer": true, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } }, "node_modules/methods": { "version": "1.1.2", - "license": "MIT", + "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", + "integrity": "sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==", "peer": true, "engines": { "node": ">= 0.6" @@ -15384,7 +17470,8 @@ }, "node_modules/mime": { "version": "1.6.0", - "license": "MIT", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", + "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", "bin": { "mime": "cli.js" }, @@ -15394,7 +17481,8 @@ }, "node_modules/mime-db": { "version": "1.52.0", - "license": "MIT", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", "peer": true, "engines": { "node": ">= 0.6" @@ -15402,7 +17490,8 @@ }, "node_modules/mime-types": { "version": "2.1.35", - "license": "MIT", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", + "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", "peer": true, "dependencies": { "mime-db": "1.52.0" @@ -15422,8 +17511,9 @@ }, "node_modules/minimatch": { "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", "dev": true, - "license": "ISC", "dependencies": { "brace-expansion": "^1.1.7" }, @@ -15432,124 +17522,148 @@ } }, "node_modules/minipass": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.0.4.tgz", - "integrity": "sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ==", + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.2.tgz", + "integrity": "sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==", "dev": true, "engines": { "node": ">=16 || 14 >=14.17" } }, "node_modules/mongodb": { - "version": "2.2.34", - "dev": true, - "license": "Apache-2.0", + "version": "4.17.2", + "resolved": "https://registry.npmjs.org/mongodb/-/mongodb-4.17.2.tgz", + "integrity": "sha512-mLV7SEiov2LHleRJPMPrK2PMyhXFZt2UQLC4VD4pnth3jMjYKHhtqfwwkkvS/NXuo/Fp3vbhaNcXrIDaLRb9Tg==", + "peer": true, "dependencies": { - "es6-promise": "3.2.1", - "mongodb-core": "2.1.18", - "readable-stream": "2.2.7" + "bson": "^4.7.2", + "mongodb-connection-string-url": "^2.6.0", + "socks": "^2.7.1" }, "engines": { - "node": ">=0.10.3" + "node": ">=12.9.0" + }, + "optionalDependencies": { + "@aws-sdk/credential-providers": "^3.186.0", + "@mongodb-js/saslprep": "^1.1.0" } }, - "node_modules/mongodb-core": { - "version": "2.1.18", - "dev": true, - "license": "Apache-2.0", + "node_modules/mongodb-connection-string-url": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/mongodb-connection-string-url/-/mongodb-connection-string-url-2.6.0.tgz", + "integrity": "sha512-WvTZlI9ab0QYtTYnuMLgobULWhokRjtC7db9LtcVfJ+Hsnyr5eo6ZtNAt3Ly24XZScGMelOcGtm7lSn0332tPQ==", + "peer": true, "dependencies": { - "bson": "~1.0.4", - "require_optional": "~1.0.0" + "@types/whatwg-url": "^8.2.1", + "whatwg-url": "^11.0.0" } }, - "node_modules/mongodb-core/node_modules/bson": { - "version": "1.0.9", - "dev": true, - "license": "Apache-2.0", + "node_modules/mongodb/node_modules/bson": { + "version": "4.7.2", + "resolved": "https://registry.npmjs.org/bson/-/bson-4.7.2.tgz", + "integrity": "sha512-Ry9wCtIZ5kGqkJoi6aD8KjxFZEx78guTQDnpXWiNthsxzrxAK/i8E6pCHAIZTbaEFWcOCvbecMukfK7XUvyLpQ==", + "peer": true, + "dependencies": { + "buffer": "^5.6.0" + }, "engines": { - "node": ">=0.6.19" + "node": ">=6.9.0" } }, "node_modules/mongoose": { - "version": "4.13.21", - "dev": true, - "license": "MIT", + "version": "6.13.8", + "resolved": "https://registry.npmjs.org/mongoose/-/mongoose-6.13.8.tgz", + "integrity": "sha512-JHKco/533CyVrqCbyQsnqMpLn8ZCiKrPDTd2mvo2W7ygIvhygWjX2wj+RPjn6upZZgw0jC6U51RD7kUsyK8NBg==", + "peer": true, "dependencies": { - "async": "2.6.0", - "bson": "~1.0.4", - "hooks-fixed": "2.0.2", - "kareem": "1.5.0", - "lodash.get": "4.4.2", - "mongodb": "2.2.34", - "mpath": "0.5.1", - "mpromise": "0.5.5", - "mquery": "2.3.3", - "ms": "2.0.0", - "muri": "1.3.0", - "regexp-clone": "0.0.1", - "sliced": "1.0.1" + "bson": "^4.7.2", + "kareem": "2.5.1", + "mongodb": "4.17.2", + "mpath": "0.9.0", + "mquery": "4.0.3", + "ms": "2.1.3", + "sift": "16.0.1" }, "engines": { - "node": ">=0.6.19" - } - }, - "node_modules/mongoose/node_modules/async": { - "version": "2.6.0", - "dev": true, - "license": "MIT", - "dependencies": { - "lodash": "^4.14.0" + "node": ">=12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/mongoose" } }, "node_modules/mongoose/node_modules/bson": { - "version": "1.0.9", - "dev": true, - "license": "Apache-2.0", + "version": "4.7.2", + "resolved": "https://registry.npmjs.org/bson/-/bson-4.7.2.tgz", + "integrity": "sha512-Ry9wCtIZ5kGqkJoi6aD8KjxFZEx78guTQDnpXWiNthsxzrxAK/i8E6pCHAIZTbaEFWcOCvbecMukfK7XUvyLpQ==", + "peer": true, + "dependencies": { + "buffer": "^5.6.0" + }, "engines": { - "node": ">=0.6.19" + "node": ">=6.9.0" } }, + "node_modules/mongoose/node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "peer": true + }, "node_modules/mpath": { - "version": "0.5.1", - "dev": true, - "license": "MIT", + "version": "0.9.0", + "resolved": "https://registry.npmjs.org/mpath/-/mpath-0.9.0.tgz", + "integrity": "sha512-ikJRQTk8hw5DEoFVxHG1Gn9T/xcjtdnOKIU1JTmGjZZlg9LST2mBLmcX3/ICIbgJydT2GOc15RnNy5mHmzfSew==", + "peer": true, "engines": { "node": ">=4.0.0" } }, - "node_modules/mpromise": { - "version": "0.5.5", - "dev": true, - "license": "MIT" - }, "node_modules/mquery": { - "version": "2.3.3", - "dev": true, - "license": "MIT", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/mquery/-/mquery-4.0.3.tgz", + "integrity": "sha512-J5heI+P08I6VJ2Ky3+33IpCdAvlYGTSUjwTPxkAr8i8EoduPMBX2OY/wa3IKZIQl7MU4SbFk8ndgSKyB/cl1zA==", + "peer": true, "dependencies": { - "bluebird": "3.5.0", - "debug": "2.6.9", - "regexp-clone": "0.0.1", - "sliced": "0.0.5" + "debug": "4.x" + }, + "engines": { + "node": ">=12.0.0" } }, - "node_modules/mquery/node_modules/sliced": { - "version": "0.0.5", - "dev": true, - "license": "MIT" + "node_modules/mquery/node_modules/debug": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.0.tgz", + "integrity": "sha512-6WTZ/IxCY/T6BALoZHaE4ctp9xm+Z5kY/pzYaCHRFeyVhojxlrm+46y68HA6hr0TcwEssoxNiDEUJQjfPZ/RYA==", + "peer": true, + "dependencies": { + "ms": "^2.1.3" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/mquery/node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "peer": true }, "node_modules/ms": { "version": "2.0.0", - "license": "MIT" - }, - "node_modules/muri": { - "version": "1.3.0", - "dev": true, - "license": "MIT" + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "peer": true }, "node_modules/negotiator": { "version": "0.6.3", - "license": "MIT", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", + "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==", "peer": true, "engines": { "node": ">= 0.6" @@ -15557,8 +17671,9 @@ }, "node_modules/nice-try": { "version": "1.0.5", - "dev": true, - "license": "MIT" + "resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz", + "integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==", + "dev": true }, "node_modules/node-fetch": { "version": "2.7.0", @@ -15580,10 +17695,33 @@ } } }, + "node_modules/node-fetch/node_modules/tr46": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", + "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==", + "dev": true + }, + "node_modules/node-fetch/node_modules/webidl-conversions": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", + "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==", + "dev": true + }, + "node_modules/node-fetch/node_modules/whatwg-url": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", + "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", + "dev": true, + "dependencies": { + "tr46": "~0.0.3", + "webidl-conversions": "^3.0.0" + } + }, "node_modules/normalize-package-data": { "version": "2.5.0", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", + "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", "dev": true, - "license": "BSD-2-Clause", "dependencies": { "hosted-git-info": "^2.1.4", "resolve": "^1.10.0", @@ -15593,8 +17731,9 @@ }, "node_modules/npm-run-all": { "version": "4.1.5", + "resolved": "https://registry.npmjs.org/npm-run-all/-/npm-run-all-4.1.5.tgz", + "integrity": "sha512-Oo82gJDAVcaMdi3nuoKFavkIHBRVqQ1qvMb+9LHk/cF4P6B2m8aP04hGf7oL6wZ9BuGwX1onlLhpuoofSyoQDQ==", "dev": true, - "license": "MIT", "dependencies": { "ansi-styles": "^3.2.1", "chalk": "^2.4.1", @@ -15615,44 +17754,37 @@ "node": ">= 4" } }, - "node_modules/npm-run-all/node_modules/cross-spawn": { - "version": "6.0.5", - "dev": true, - "license": "MIT", - "dependencies": { - "nice-try": "^1.0.4", - "path-key": "^2.0.1", - "semver": "^5.5.0", - "shebang-command": "^1.2.0", - "which": "^1.2.9" - }, - "engines": { - "node": ">=4.8" - } - }, "node_modules/object-inspect": { - "version": "1.12.3", - "license": "MIT", + "version": "1.13.4", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.4.tgz", + "integrity": "sha512-W67iLl4J2EXEGTbfeHCffrjDfitvLANg0UlX3wFUUSTx92KXRFegMHUVgSqE+wvhAbi4WqjGg9czysTV2Epbew==", + "engines": { + "node": ">= 0.4" + }, "funding": { "url": "https://github.com/sponsors/ljharb" } }, "node_modules/object-keys": { "version": "1.1.1", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", + "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", "dev": true, - "license": "MIT", "engines": { "node": ">= 0.4" } }, "node_modules/object.assign": { - "version": "4.1.4", + "version": "4.1.7", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.7.tgz", + "integrity": "sha512-nK28WOo+QIjBkDduTINE4JkF/UJJKyf2EJxvJKfblDpyg0Q+pkOHNTL0Qwy6NP6FhE/EnzV73BxxqcJaXY9anw==", "dev": true, - "license": "MIT", "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "has-symbols": "^1.0.3", + "call-bind": "^1.0.8", + "call-bound": "^1.0.3", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0", + "has-symbols": "^1.1.0", "object-keys": "^1.1.1" }, "engines": { @@ -15670,7 +17802,8 @@ }, "node_modules/on-finished": { "version": "2.4.1", - "license": "MIT", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz", + "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==", "peer": true, "dependencies": { "ee-first": "1.1.1" @@ -15681,12 +17814,36 @@ }, "node_modules/once": { "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", "dev": true, - "license": "ISC", "dependencies": { "wrappy": "1" } }, + "node_modules/own-keys": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/own-keys/-/own-keys-1.0.1.tgz", + "integrity": "sha512-qFOyK5PjiWZd+QQIh+1jhdb9LpxTF0qs7Pm8o5QHYZ0M3vKqSqzsZaEB6oWlxZ+q2sJBMI/Ktgd2N5ZwQoRHfg==", + "dev": true, + "dependencies": { + "get-intrinsic": "^1.2.6", + "object-keys": "^1.1.1", + "safe-push-apply": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/package-json-from-dist": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/package-json-from-dist/-/package-json-from-dist-1.0.1.tgz", + "integrity": "sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw==", + "dev": true + }, "node_modules/pako": { "version": "1.0.11", "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz", @@ -15723,8 +17880,9 @@ }, "node_modules/parse-json": { "version": "4.0.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", + "integrity": "sha512-aOIos8bujGN93/8Ox/jPLh7RwVnPEysynVFE+fQZyg6jKELEHwzgKdLRFHUgXJL6kylijVSBC4BvN9OmsB48Rw==", "dev": true, - "license": "MIT", "dependencies": { "error-ex": "^1.3.1", "json-parse-better-errors": "^1.0.1" @@ -15735,7 +17893,8 @@ }, "node_modules/parseurl": { "version": "1.3.3", - "license": "MIT", + "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", + "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==", "peer": true, "engines": { "node": ">= 0.8" @@ -15743,50 +17902,55 @@ }, "node_modules/path-is-absolute": { "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", "dev": true, - "license": "MIT", "engines": { "node": ">=0.10.0" } }, "node_modules/path-key": { "version": "2.0.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", + "integrity": "sha512-fEHGKCSmUSDPv4uoj8AlD+joPlq3peND+HRYyxFz4KPw4z926S/b8rIuFs2FYJg3BwsxJf6A9/3eIdLaYC+9Dw==", "dev": true, - "license": "MIT", "engines": { "node": ">=4" } }, "node_modules/path-parse": { "version": "1.0.7", - "dev": true, - "license": "MIT" + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", + "dev": true }, "node_modules/path-scurry": { - "version": "1.10.1", - "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.10.1.tgz", - "integrity": "sha512-MkhCqzzBEpPvxxQ71Md0b1Kk51W01lrYvlMzSUaIzNsODdd7mqhiimSZlr+VegAz5Z6Vzt9Xg2ttE//XBhH3EQ==", + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.11.1.tgz", + "integrity": "sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==", "dev": true, "dependencies": { - "lru-cache": "^9.1.1 || ^10.0.0", + "lru-cache": "^10.2.0", "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0" }, "engines": { - "node": ">=16 || 14 >=14.17" + "node": ">=16 || 14 >=14.18" }, "funding": { "url": "https://github.com/sponsors/isaacs" } }, "node_modules/path-to-regexp": { - "version": "0.1.7", - "license": "MIT", + "version": "0.1.12", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.12.tgz", + "integrity": "sha512-RA1GjUVMnvYFxuqovrEqZoxxW5NUZqbwKtYz/Tt7nXerk0LbLblQmrsgdeOxV5SFHf0UDggjS/bSeOZwt1pmEQ==", "peer": true }, "node_modules/path-type": { "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz", + "integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==", "dev": true, - "license": "MIT", "dependencies": { "pify": "^3.0.0" }, @@ -15808,16 +17972,22 @@ } }, "node_modules/phin": { - "version": "2.9.3", - "resolved": "https://registry.npmjs.org/phin/-/phin-2.9.3.tgz", - "integrity": "sha512-CzFr90qM24ju5f88quFC/6qohjC144rehe5n6DH900lgXmUe86+xCKc10ev56gRKC4/BkHUoG4uSiQgBiIXwDA==", - "deprecated": "Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.", - "dev": true + "version": "3.7.1", + "resolved": "https://registry.npmjs.org/phin/-/phin-3.7.1.tgz", + "integrity": "sha512-GEazpTWwTZaEQ9RhL7Nyz0WwqilbqgLahDM3D0hxWwmVDI52nXEybHqiN6/elwpkJBhcuj+WbBu+QfT0uhPGfQ==", + "dev": true, + "dependencies": { + "centra": "^2.7.0" + }, + "engines": { + "node": ">= 8" + } }, "node_modules/pidtree": { "version": "0.3.1", + "resolved": "https://registry.npmjs.org/pidtree/-/pidtree-0.3.1.tgz", + "integrity": "sha512-qQbW94hLHEqCg7nhby4yRC7G2+jYHY4Rguc2bjw7Uug4GIJuu1tvf2uHaZv5Q8zdt+WKJ6qK1FOI6amaWUo5FA==", "dev": true, - "license": "MIT", "bin": { "pidtree": "bin/pidtree.js" }, @@ -15827,8 +17997,9 @@ }, "node_modules/pify": { "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", + "integrity": "sha512-C3FsVNH1udSEX48gGX1xfvwTWfsYWj5U+8/uK15BGzIGrKoUpghX8hWZwa/OFnakBiiVNmBvemTJR5mcy7iPcg==", "dev": true, - "license": "MIT", "engines": { "node": ">=4" } @@ -15863,6 +18034,15 @@ "node": ">=12.13.0" } }, + "node_modules/possible-typed-array-names": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/possible-typed-array-names/-/possible-typed-array-names-1.1.0.tgz", + "integrity": "sha512-/+5VFTchJDoVj3bhoqi6UeymcD00DAwb1nJwamzPvHEszJ4FpF6SNNbUbOS8yI56qHzdV8eK0qEfOSiodkTdxg==", + "dev": true, + "engines": { + "node": ">= 0.4" + } + }, "node_modules/process": { "version": "0.11.10", "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", @@ -15872,14 +18052,10 @@ "node": ">= 0.6.0" } }, - "node_modules/process-nextick-args": { - "version": "1.0.7", - "dev": true, - "license": "MIT" - }, "node_modules/proxy-addr": { "version": "2.0.7", - "license": "MIT", + "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz", + "integrity": "sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==", "peer": true, "dependencies": { "forwarded": "0.2.0", @@ -15889,12 +18065,22 @@ "node": ">= 0.10" } }, + "node_modules/punycode": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz", + "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==", + "peer": true, + "engines": { + "node": ">=6" + } + }, "node_modules/qs": { - "version": "6.11.0", - "license": "BSD-3-Clause", + "version": "6.13.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.13.0.tgz", + "integrity": "sha512-+38qI9SOr8tfZ4QmJNplMUxqjbe7LKvvZgWdExBOmd+egZTtjLB67Gu0HRX3u/XOq7UU2Nx6nsjvS16Z9uwfpg==", "peer": true, "dependencies": { - "side-channel": "^1.0.4" + "side-channel": "^1.0.6" }, "engines": { "node": ">=0.6" @@ -15905,15 +18091,17 @@ }, "node_modules/range-parser": { "version": "1.2.1", - "license": "MIT", + "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", + "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==", "peer": true, "engines": { "node": ">= 0.6" } }, "node_modules/raw-body": { - "version": "2.5.1", - "license": "MIT", + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.2.tgz", + "integrity": "sha512-8zGqypfENjCIqGhgXToC8aB2r7YrBX+AQAfIPs/Mlk+BtPTztOvTS01NRW/3Eh60J+a48lt8qsCzirQ6loCVfA==", "peer": true, "dependencies": { "bytes": "3.1.2", @@ -15927,8 +18115,9 @@ }, "node_modules/read-pkg": { "version": "3.0.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-3.0.0.tgz", + "integrity": "sha512-BLq/cCO9two+lBgiTYNqD6GdtK8s4NpaWrl6/rCO9w0TUS8oJl7cmToOZfRYllKTISY6nt1U7jQ53brmKqY6BA==", "dev": true, - "license": "MIT", "dependencies": { "load-json-file": "^4.0.0", "normalize-package-data": "^2.3.2", @@ -15939,26 +18128,52 @@ } }, "node_modules/readable-stream": { - "version": "2.2.7", + "version": "4.7.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-4.7.0.tgz", + "integrity": "sha512-oIGGmcpTLwPga8Bn6/Z75SVaH1z5dUut2ibSyAMVhmUggWpmDn2dapB0n7f8nwaSiRtepAsfJyfXIO5DCVAODg==", "dev": true, - "license": "MIT", "dependencies": { - "buffer-shims": "~1.0.0", - "core-util-is": "~1.0.0", - "inherits": "~2.0.1", - "isarray": "~1.0.0", - "process-nextick-args": "~1.0.6", - "string_decoder": "~1.0.0", - "util-deprecate": "~1.0.1" + "abort-controller": "^3.0.0", + "buffer": "^6.0.3", + "events": "^3.3.0", + "process": "^0.11.10", + "string_decoder": "^1.3.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + } + }, + "node_modules/readable-stream/node_modules/buffer": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz", + "integrity": "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "dependencies": { + "base64-js": "^1.3.1", + "ieee754": "^1.2.1" } }, "node_modules/readable-web-to-node-stream": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/readable-web-to-node-stream/-/readable-web-to-node-stream-3.0.2.tgz", - "integrity": "sha512-ePeK6cc1EcKLEhJFt/AebMCLL+GgSKhuygrZ/GLaKZYEecIgIECf4UaUuaByiGtzckwR4ain9VzUh95T1exYGw==", + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/readable-web-to-node-stream/-/readable-web-to-node-stream-3.0.4.tgz", + "integrity": "sha512-9nX56alTf5bwXQ3ZDipHJhusu9NTQJ/CVPtb/XHAJCXihZeitfJvIRS4GqQ/mfIoOE3IelHMrpayVrosdHBuLw==", "dev": true, "dependencies": { - "readable-stream": "^3.6.0" + "readable-stream": "^4.7.0" }, "engines": { "node": ">=8" @@ -15968,27 +18183,26 @@ "url": "https://github.com/sponsors/Borewit" } }, - "node_modules/readable-web-to-node-stream/node_modules/readable-stream": { - "version": "3.6.2", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", - "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", + "node_modules/reflect.getprototypeof": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/reflect.getprototypeof/-/reflect.getprototypeof-1.0.10.tgz", + "integrity": "sha512-00o4I+DVrefhv+nX0ulyi3biSHCPDe+yLv5o/p6d/UVlirijB8E16FtfwSAi4g3tcqrQ4lRAqQSoFEZJehYEcw==", "dev": true, "dependencies": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" + "call-bind": "^1.0.8", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.9", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.0.0", + "get-intrinsic": "^1.2.7", + "get-proto": "^1.0.1", + "which-builtin-type": "^1.2.1" }, "engines": { - "node": ">= 6" - } - }, - "node_modules/readable-web-to-node-stream/node_modules/string_decoder": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", - "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", - "dev": true, - "dependencies": { - "safe-buffer": "~5.2.0" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, "node_modules/regenerator-runtime": { @@ -15997,19 +18211,18 @@ "integrity": "sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==", "dev": true }, - "node_modules/regexp-clone": { - "version": "0.0.1", - "dev": true, - "license": "MIT" - }, "node_modules/regexp.prototype.flags": { - "version": "1.5.1", + "version": "1.5.4", + "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.4.tgz", + "integrity": "sha512-dYqgNSZbDwkaJ2ceRd9ojCGjBq+mOm9LmtXnAnEGyHhN/5R7iDW2TRw3h+o/jCFxus3P2LfWIIiwowAjANm7IA==", "dev": true, - "license": "MIT", "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "set-function-name": "^2.0.0" + "call-bind": "^1.0.8", + "define-properties": "^1.2.1", + "es-errors": "^1.3.0", + "get-proto": "^1.0.1", + "gopd": "^1.2.0", + "set-function-name": "^2.0.2" }, "engines": { "node": ">= 0.4" @@ -16018,43 +18231,30 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/require_optional": { - "version": "1.0.1", - "dev": true, - "license": "Apache-2.0", - "dependencies": { - "resolve-from": "^2.0.0", - "semver": "^5.1.0" - } - }, "node_modules/resolve": { - "version": "1.22.8", + "version": "1.22.10", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.10.tgz", + "integrity": "sha512-NPRy+/ncIMeDlTAsuqwKIiferiawhefFJtkNSW0qZJEqMEb+qBt/77B/jGeeek+F0uOeN05CDa6HXbbIgtVX4w==", "dev": true, - "license": "MIT", "dependencies": { - "is-core-module": "^2.13.0", + "is-core-module": "^2.16.0", "path-parse": "^1.0.7", "supports-preserve-symlinks-flag": "^1.0.0" }, "bin": { "resolve": "bin/resolve" }, + "engines": { + "node": ">= 0.4" + }, "funding": { "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/resolve-from": { - "version": "2.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/rimraf": { - "version": "5.0.5", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-5.0.5.tgz", - "integrity": "sha512-CqDakW+hMe/Bz202FPEymy68P+G50RfMQK+Qo5YUqc9SPipvbGjCGKd0RSKEelbsfQuw3g5NZDSrlZZAJurH1A==", + "version": "5.0.10", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-5.0.10.tgz", + "integrity": "sha512-l0OE8wL34P4nJH/H2ffoaniAokM2qSmrtXHmlpvYr5AVVX8msAyW0l8NVJFDxlSK4u3Uh/f41cQheDVdnYijwQ==", "dev": true, "dependencies": { "glob": "^10.3.7" @@ -16062,9 +18262,6 @@ "bin": { "rimraf": "dist/esm/bin.mjs" }, - "engines": { - "node": ">=14" - }, "funding": { "url": "https://github.com/sponsors/isaacs" } @@ -16079,31 +18276,29 @@ } }, "node_modules/rimraf/node_modules/glob": { - "version": "10.3.10", - "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.10.tgz", - "integrity": "sha512-fa46+tv1Ak0UPK1TOy/pZrIybNNt4HCv7SDzwyfiOZkvZLEbjsZkJBPtDHVshZjbecAoAGSC20MjLDG/qr679g==", + "version": "10.4.5", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.5.tgz", + "integrity": "sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==", "dev": true, "dependencies": { "foreground-child": "^3.1.0", - "jackspeak": "^2.3.5", - "minimatch": "^9.0.1", - "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0", - "path-scurry": "^1.10.1" + "jackspeak": "^3.1.2", + "minimatch": "^9.0.4", + "minipass": "^7.1.2", + "package-json-from-dist": "^1.0.0", + "path-scurry": "^1.11.1" }, "bin": { "glob": "dist/esm/bin.mjs" }, - "engines": { - "node": ">=16 || 14 >=14.17" - }, "funding": { "url": "https://github.com/sponsors/isaacs" } }, "node_modules/rimraf/node_modules/minimatch": { - "version": "9.0.3", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", - "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", + "version": "9.0.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", + "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", "dev": true, "dependencies": { "brace-expansion": "^2.0.1" @@ -16116,13 +18311,15 @@ } }, "node_modules/safe-array-concat": { - "version": "1.0.1", + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/safe-array-concat/-/safe-array-concat-1.1.3.tgz", + "integrity": "sha512-AURm5f0jYEOydBj7VQlVvDrjeFgthDdEF5H1dP+6mNpoXOMo1quQqJ4wvJDyRZ9+pO3kGWoOdmV08cSv2aJV6Q==", "dev": true, - "license": "MIT", "dependencies": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.2.1", - "has-symbols": "^1.0.3", + "call-bind": "^1.0.8", + "call-bound": "^1.0.2", + "get-intrinsic": "^1.2.6", + "has-symbols": "^1.1.0", "isarray": "^2.0.5" }, "engines": { @@ -16132,13 +18329,10 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/safe-array-concat/node_modules/isarray": { - "version": "2.0.5", - "dev": true, - "license": "MIT" - }, "node_modules/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==", "funding": [ { "type": "github", @@ -16152,17 +18346,36 @@ "type": "consulting", "url": "https://feross.org/support" } - ], - "license": "MIT" + ] }, - "node_modules/safe-regex-test": { + "node_modules/safe-push-apply": { "version": "1.0.0", + "resolved": "https://registry.npmjs.org/safe-push-apply/-/safe-push-apply-1.0.0.tgz", + "integrity": "sha512-iKE9w/Z7xCzUMIZqdBsp6pEQvwuEebH4vdpjcDWnyzaI6yl6O9FHvVpmGelvEHNsoY6wGblkxR6Zty/h00WiSA==", "dev": true, - "license": "MIT", "dependencies": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.1.3", - "is-regex": "^1.1.4" + "es-errors": "^1.3.0", + "isarray": "^2.0.5" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/safe-regex-test": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.1.0.tgz", + "integrity": "sha512-x/+Cz4YrimQxQccJf5mKEbIa1NzeCRNI5Ecl/ekmlYaampdNLPalVyIcCZNNH3MvmqBugV5TMYZXv0ljslUlaw==", + "dev": true, + "dependencies": { + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "is-regex": "^1.2.1" + }, + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" @@ -16170,26 +18383,29 @@ }, "node_modules/safer-buffer": { "version": "2.1.2", - "license": "MIT", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", "peer": true }, "node_modules/sax": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/sax/-/sax-1.3.0.tgz", - "integrity": "sha512-0s+oAmw9zLl1V1cS9BtZN7JAd0cW5e0QH4W3LWEK6a4LaLEA2OTpGYWDY+6XasBLtz6wkm3u1xRw95mRuJ59WA==", + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/sax/-/sax-1.4.1.tgz", + "integrity": "sha512-+aWOz7yVScEGoKNd4PA10LZ8sk0A/z5+nXQG5giUO5rprX9jgYsTdov9qCchZiPIZezbZH+jRut8nPodFAX4Jg==", "dev": true }, "node_modules/semver": { "version": "5.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", + "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", "dev": true, - "license": "ISC", "bin": { "semver": "bin/semver" } }, "node_modules/send": { - "version": "0.18.0", - "license": "MIT", + "version": "0.19.0", + "resolved": "https://registry.npmjs.org/send/-/send-0.19.0.tgz", + "integrity": "sha512-dW41u5VfLXu8SJh5bwRmyYUbAoSB3c9uQh6L8h/KtsFREPWpbX1lrljJo186Jc4nmci/sGUZ9a0a0J2zgfq2hw==", "peer": true, "dependencies": { "debug": "2.6.9", @@ -16210,33 +18426,77 @@ "node": ">= 0.8.0" } }, + "node_modules/send/node_modules/encodeurl": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", + "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==", + "peer": true, + "engines": { + "node": ">= 0.8" + } + }, "node_modules/send/node_modules/ms": { "version": "2.1.3", - "license": "MIT", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", "peer": true }, "node_modules/serve-static": { - "version": "1.15.0", - "license": "MIT", + "version": "1.16.2", + "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.16.2.tgz", + "integrity": "sha512-VqpjJZKadQB/PEbEwvFdO43Ax5dFBZ2UECszz8bQ7pi7wt//PWe1P6MN7eCnjsatYtBT6EuiClbjSWP2WrIoTw==", "peer": true, "dependencies": { - "encodeurl": "~1.0.2", + "encodeurl": "~2.0.0", "escape-html": "~1.0.3", "parseurl": "~1.3.3", - "send": "0.18.0" + "send": "0.19.0" }, "engines": { "node": ">= 0.8.0" } }, + "node_modules/set-function-length": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/set-function-length/-/set-function-length-1.2.2.tgz", + "integrity": "sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==", + "dev": true, + "dependencies": { + "define-data-property": "^1.1.4", + "es-errors": "^1.3.0", + "function-bind": "^1.1.2", + "get-intrinsic": "^1.2.4", + "gopd": "^1.0.1", + "has-property-descriptors": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + } + }, "node_modules/set-function-name": { - "version": "2.0.1", + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/set-function-name/-/set-function-name-2.0.2.tgz", + "integrity": "sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ==", "dev": true, - "license": "MIT", "dependencies": { - "define-data-property": "^1.0.1", + "define-data-property": "^1.1.4", + "es-errors": "^1.3.0", "functions-have-names": "^1.2.3", - "has-property-descriptors": "^1.0.0" + "has-property-descriptors": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/set-proto": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/set-proto/-/set-proto-1.0.0.tgz", + "integrity": "sha512-RJRdvCo6IAnPdsvP/7m6bsQqNnn1FCBX5ZNtFL98MmFF/4xAIJTIg1YbHW5DC2W5SKZanrC6i4HsJqlajw/dZw==", + "dev": true, + "dependencies": { + "dunder-proto": "^1.0.1", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.0.0" }, "engines": { "node": ">= 0.4" @@ -16244,64 +18504,52 @@ }, "node_modules/setprototypeof": { "version": "1.2.0", - "license": "ISC", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", + "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==", "peer": true }, "node_modules/sharp": { - "version": "0.33.2", - "resolved": "https://registry.npmjs.org/sharp/-/sharp-0.33.2.tgz", - "integrity": "sha512-WlYOPyyPDiiM07j/UO+E720ju6gtNtHjEGg5vovUk1Lgxyjm2LFO+37Nt/UI3MMh2l6hxTWQWi7qk3cXJTutcQ==", + "version": "0.33.5", + "resolved": "https://registry.npmjs.org/sharp/-/sharp-0.33.5.tgz", + "integrity": "sha512-haPVm1EkS9pgvHrQ/F3Xy+hgcuMV0Wm9vfIBSiwZ05k+xgb0PkBQpGsAA/oWdDobNaZTH5ppvHtzCFbnSEwHVw==", "hasInstallScript": true, "dependencies": { "color": "^4.2.3", - "detect-libc": "^2.0.2", - "semver": "^7.5.4" + "detect-libc": "^2.0.3", + "semver": "^7.6.3" }, "engines": { - "libvips": ">=8.15.1", "node": "^18.17.0 || ^20.3.0 || >=21.0.0" }, "funding": { "url": "https://opencollective.com/libvips" }, "optionalDependencies": { - "@img/sharp-darwin-arm64": "0.33.2", - "@img/sharp-darwin-x64": "0.33.2", - "@img/sharp-libvips-darwin-arm64": "1.0.1", - "@img/sharp-libvips-darwin-x64": "1.0.1", - "@img/sharp-libvips-linux-arm": "1.0.1", - "@img/sharp-libvips-linux-arm64": "1.0.1", - "@img/sharp-libvips-linux-s390x": "1.0.1", - "@img/sharp-libvips-linux-x64": "1.0.1", - "@img/sharp-libvips-linuxmusl-arm64": "1.0.1", - "@img/sharp-libvips-linuxmusl-x64": "1.0.1", - "@img/sharp-linux-arm": "0.33.2", - "@img/sharp-linux-arm64": "0.33.2", - "@img/sharp-linux-s390x": "0.33.2", - "@img/sharp-linux-x64": "0.33.2", - "@img/sharp-linuxmusl-arm64": "0.33.2", - "@img/sharp-linuxmusl-x64": "0.33.2", - "@img/sharp-wasm32": "0.33.2", - "@img/sharp-win32-ia32": "0.33.2", - "@img/sharp-win32-x64": "0.33.2" - } - }, - "node_modules/sharp/node_modules/lru-cache": { - "version": "6.0.0", - "license": "ISC", - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" + "@img/sharp-darwin-arm64": "0.33.5", + "@img/sharp-darwin-x64": "0.33.5", + "@img/sharp-libvips-darwin-arm64": "1.0.4", + "@img/sharp-libvips-darwin-x64": "1.0.4", + "@img/sharp-libvips-linux-arm": "1.0.5", + "@img/sharp-libvips-linux-arm64": "1.0.4", + "@img/sharp-libvips-linux-s390x": "1.0.4", + "@img/sharp-libvips-linux-x64": "1.0.4", + "@img/sharp-libvips-linuxmusl-arm64": "1.0.4", + "@img/sharp-libvips-linuxmusl-x64": "1.0.4", + "@img/sharp-linux-arm": "0.33.5", + "@img/sharp-linux-arm64": "0.33.5", + "@img/sharp-linux-s390x": "0.33.5", + "@img/sharp-linux-x64": "0.33.5", + "@img/sharp-linuxmusl-arm64": "0.33.5", + "@img/sharp-linuxmusl-x64": "0.33.5", + "@img/sharp-wasm32": "0.33.5", + "@img/sharp-win32-ia32": "0.33.5", + "@img/sharp-win32-x64": "0.33.5" } }, "node_modules/sharp/node_modules/semver": { - "version": "7.5.4", - "license": "ISC", - "dependencies": { - "lru-cache": "^6.0.0" - }, + "version": "7.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", + "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", "bin": { "semver": "bin/semver.js" }, @@ -16309,14 +18557,11 @@ "node": ">=10" } }, - "node_modules/sharp/node_modules/yallist": { - "version": "4.0.0", - "license": "ISC" - }, "node_modules/shebang-command": { "version": "1.2.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", + "integrity": "sha512-EV3L1+UQWGor21OmnvojK36mhg+TyIKDh3iFBKBohr5xeXIhNBcx8oWdgkTEEQ+BEFFYdLRuqMfd5L84N1V5Vg==", "dev": true, - "license": "MIT", "dependencies": { "shebang-regex": "^1.0.0" }, @@ -16326,32 +18571,99 @@ }, "node_modules/shebang-regex": { "version": "1.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", + "integrity": "sha512-wpoSFAxys6b2a2wHZ1XpDSgD7N9iVjg29Ph9uV/uaP9Ex/KXlkTZTeddxDPSYQpgvzKLGJke2UU0AzoGCjNIvQ==", "dev": true, - "license": "MIT", "engines": { "node": ">=0.10.0" } }, "node_modules/shell-quote": { - "version": "1.8.1", + "version": "1.8.2", + "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.8.2.tgz", + "integrity": "sha512-AzqKpGKjrj7EM6rKVQEPpB288oCfnrEIuyoT9cyF4nmGa7V8Zk6f7RRqYisX8X9m+Q7bd632aZW4ky7EhbQztA==", "dev": true, - "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/side-channel": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.1.0.tgz", + "integrity": "sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw==", + "dependencies": { + "es-errors": "^1.3.0", + "object-inspect": "^1.13.3", + "side-channel-list": "^1.0.0", + "side-channel-map": "^1.0.1", + "side-channel-weakmap": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/side-channel-list": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/side-channel-list/-/side-channel-list-1.0.0.tgz", + "integrity": "sha512-FCLHtRD/gnpCiCHEiJLOwdmFP+wzCmDEkc9y7NsYxeF4u7Btsn1ZuwgwJGxImImHicJArLP4R0yX4c2KCrMrTA==", + "dependencies": { + "es-errors": "^1.3.0", + "object-inspect": "^1.13.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/side-channel-map": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/side-channel-map/-/side-channel-map-1.0.1.tgz", + "integrity": "sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA==", + "dependencies": { + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.5", + "object-inspect": "^1.13.3" + }, + "engines": { + "node": ">= 0.4" + }, "funding": { "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/side-channel": { - "version": "1.0.4", - "license": "MIT", + "node_modules/side-channel-weakmap": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/side-channel-weakmap/-/side-channel-weakmap-1.0.2.tgz", + "integrity": "sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A==", "dependencies": { - "call-bind": "^1.0.0", - "get-intrinsic": "^1.0.2", - "object-inspect": "^1.9.0" + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.5", + "object-inspect": "^1.13.3", + "side-channel-map": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/sift": { + "version": "16.0.1", + "resolved": "https://registry.npmjs.org/sift/-/sift-16.0.1.tgz", + "integrity": "sha512-Wv6BjQ5zbhW7VFefWusVP33T/EM0vYikCaQ2qR8yULbsilAT8/wQaXvuQ3ptGLpoKx+lihJE3y2UTgKDyyNHZQ==", + "peer": true + }, "node_modules/signal-exit": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", @@ -16366,69 +18678,107 @@ }, "node_modules/simple-swizzle": { "version": "0.2.2", - "license": "MIT", + "resolved": "https://registry.npmjs.org/simple-swizzle/-/simple-swizzle-0.2.2.tgz", + "integrity": "sha512-JA//kQgZtbuY83m+xT+tXJkmJncGMTFT+C+g2h2R9uxkYIrE2yy9sgmcLhCnw57/WSD+Eh3J97FPEDFnbXnDUg==", "dependencies": { "is-arrayish": "^0.3.1" } }, "node_modules/simple-swizzle/node_modules/is-arrayish": { "version": "0.3.2", - "license": "MIT" + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.3.2.tgz", + "integrity": "sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==" }, - "node_modules/sliced": { - "version": "1.0.1", - "dev": true, - "license": "MIT" + "node_modules/smart-buffer": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.2.0.tgz", + "integrity": "sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==", + "peer": true, + "engines": { + "node": ">= 6.0.0", + "npm": ">= 3.0.0" + } + }, + "node_modules/socks": { + "version": "2.8.4", + "resolved": "https://registry.npmjs.org/socks/-/socks-2.8.4.tgz", + "integrity": "sha512-D3YaD0aRxR3mEcqnidIs7ReYJFVzWdd6fXJYUM8ixcQcJRGTka/b3saV0KflYhyVJXKhb947GndU35SxYNResQ==", + "peer": true, + "dependencies": { + "ip-address": "^9.0.5", + "smart-buffer": "^4.2.0" + }, + "engines": { + "node": ">= 10.0.0", + "npm": ">= 3.0.0" + } + }, + "node_modules/sparse-bitfield": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/sparse-bitfield/-/sparse-bitfield-3.0.3.tgz", + "integrity": "sha512-kvzhi7vqKTfkh0PZU+2D2PIllw2ymqJKujUcyPMd9Y75Nv4nPbGJZXNhxsgdQab2BmlDct1YnfQCguEvHr7VsQ==", + "optional": true, + "peer": true, + "dependencies": { + "memory-pager": "^1.0.2" + } }, "node_modules/spdx-correct": { "version": "3.2.0", + "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.2.0.tgz", + "integrity": "sha512-kN9dJbvnySHULIluDHy32WHRUu3Og7B9sbY7tsFLctQkIqnMh3hErYgdMjTYuqmcXX+lK5T1lnUt3G7zNswmZA==", "dev": true, - "license": "Apache-2.0", "dependencies": { "spdx-expression-parse": "^3.0.0", "spdx-license-ids": "^3.0.0" } }, "node_modules/spdx-exceptions": { - "version": "2.3.0", - "dev": true, - "license": "CC-BY-3.0" + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.5.0.tgz", + "integrity": "sha512-PiU42r+xO4UbUS1buo3LPJkjlO7430Xn5SVAhdpzzsPHsjbYVflnnFdATgabnLude+Cqu25p6N+g2lw/PFsa4w==", + "dev": true }, "node_modules/spdx-expression-parse": { "version": "3.0.1", + "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", + "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", "dev": true, - "license": "MIT", "dependencies": { "spdx-exceptions": "^2.1.0", "spdx-license-ids": "^3.0.0" } }, "node_modules/spdx-license-ids": { - "version": "3.0.16", - "dev": true, - "license": "CC0-1.0" + "version": "3.0.21", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.21.tgz", + "integrity": "sha512-Bvg/8F5XephndSK3JffaRqdT+gyhfqIPwDHpX80tJrF8QQRYMo8sNMeaZ2Dp5+jhwKnUmIOyFFQfHRkjJm5nXg==", + "dev": true + }, + "node_modules/sprintf-js": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.1.3.tgz", + "integrity": "sha512-Oo+0REFV59/rz3gfJNKQiBlwfHaSESl1pcGyABQsnnIfWOFt6JNj5gCog2U6MLZ//IGYD+nA8nI+mTShREReaA==", + "peer": true }, "node_modules/statuses": { "version": "2.0.1", - "license": "MIT", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", + "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", "peer": true, "engines": { "node": ">= 0.8" } }, "node_modules/string_decoder": { - "version": "1.0.3", + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", "dev": true, - "license": "MIT", "dependencies": { - "safe-buffer": "~5.1.0" + "safe-buffer": "~5.2.0" } }, - "node_modules/string_decoder/node_modules/safe-buffer": { - "version": "5.1.2", - "dev": true, - "license": "MIT" - }, "node_modules/string-width": { "version": "5.1.2", "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz", @@ -16489,13 +18839,15 @@ } }, "node_modules/string.prototype.padend": { - "version": "3.1.5", + "version": "3.1.6", + "resolved": "https://registry.npmjs.org/string.prototype.padend/-/string.prototype.padend-3.1.6.tgz", + "integrity": "sha512-XZpspuSB7vJWhvJc9DLSlrXl1mcA2BdoY5jjnS135ydXqLoqhs96JjDtCkjJEQHvfqZIp9hBuBMgI589peyx9Q==", "dev": true, - "license": "MIT", "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1" + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.2", + "es-object-atoms": "^1.0.0" }, "engines": { "node": ">= 0.4" @@ -16505,13 +18857,18 @@ } }, "node_modules/string.prototype.trim": { - "version": "1.2.8", + "version": "1.2.10", + "resolved": "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.10.tgz", + "integrity": "sha512-Rs66F0P/1kedk5lyYyH9uBzuiI/kNRmwJAR9quK6VOtIpZ2G+hMZd+HQbbv25MgCA6gEffoMZYxlTod4WcdrKA==", "dev": true, - "license": "MIT", "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1" + "call-bind": "^1.0.8", + "call-bound": "^1.0.2", + "define-data-property": "^1.1.4", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.5", + "es-object-atoms": "^1.0.0", + "has-property-descriptors": "^1.0.2" }, "engines": { "node": ">= 0.4" @@ -16521,26 +18878,35 @@ } }, "node_modules/string.prototype.trimend": { - "version": "1.0.7", + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.9.tgz", + "integrity": "sha512-G7Ok5C6E/j4SGfyLCloXTrngQIQU3PWtXGst3yM7Bea9FRURf1S42ZHlZZtsNque2FN2PoUhfZXYLNWwEr4dLQ==", "dev": true, - "license": "MIT", "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1" + "call-bind": "^1.0.8", + "call-bound": "^1.0.2", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" } }, "node_modules/string.prototype.trimstart": { - "version": "1.0.7", + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.8.tgz", + "integrity": "sha512-UXSH262CSZY1tfu3G3Secr6uGLCFVPMhIqHjlgCUtCCcgihYc/xKs9djMTMUOb2j1mVSeU8EU6NWc/iQKU6Gfg==", "dev": true, - "license": "MIT", "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1" + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" @@ -16585,12 +18951,26 @@ }, "node_modules/strip-bom": { "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", + "integrity": "sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==", "dev": true, - "license": "MIT", "engines": { "node": ">=4" } }, + "node_modules/strnum": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/strnum/-/strnum-1.1.2.tgz", + "integrity": "sha512-vrN+B7DBIoTTZjnPNewwhx6cBA/H+IS7rfW68n7XxC1y7uoiGQBxaKzqucGUgavX15dJgiGztLJ8vxuEzwqBdA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/NaturalIntelligence" + } + ], + "optional": true, + "peer": true + }, "node_modules/strtok3": { "version": "6.3.0", "resolved": "https://registry.npmjs.org/strtok3/-/strtok3-6.3.0.tgz", @@ -16610,8 +18990,9 @@ }, "node_modules/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, - "license": "MIT", "dependencies": { "has-flag": "^3.0.0" }, @@ -16621,8 +19002,9 @@ }, "node_modules/supports-preserve-symlinks-flag": { "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", "dev": true, - "license": "MIT", "engines": { "node": ">= 0.4" }, @@ -16644,7 +19026,8 @@ }, "node_modules/toidentifier": { "version": "1.0.1", - "license": "MIT", + "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz", + "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==", "peer": true, "engines": { "node": ">=0.6" @@ -16668,20 +19051,27 @@ } }, "node_modules/tr46": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", - "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==", - "dev": true + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-3.0.0.tgz", + "integrity": "sha512-l7FvfAHlcmulp8kr+flpQZmVwtu7nfRV7NZujtN0OqES8EL4O4e0qqzL0DC5gAvx/ZC/9lk6rhcUwYvkBnBnYA==", + "peer": true, + "dependencies": { + "punycode": "^2.1.1" + }, + "engines": { + "node": ">=12" + } }, "node_modules/tslib": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz", - "integrity": "sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==", + "version": "2.8.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz", + "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==", "optional": true }, "node_modules/type-is": { "version": "1.6.18", - "license": "MIT", + "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz", + "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==", "peer": true, "dependencies": { "media-typer": "0.3.0", @@ -16692,27 +19082,30 @@ } }, "node_modules/typed-array-buffer": { - "version": "1.0.0", + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/typed-array-buffer/-/typed-array-buffer-1.0.3.tgz", + "integrity": "sha512-nAYYwfY3qnzX30IkA6AQZjVbtK6duGontcQm1WSG1MD94YLqK0515GNApXkoxKOWMusVssAHWLh9SeaoefYFGw==", "dev": true, - "license": "MIT", "dependencies": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.2.1", - "is-typed-array": "^1.1.10" + "call-bound": "^1.0.3", + "es-errors": "^1.3.0", + "is-typed-array": "^1.1.14" }, "engines": { "node": ">= 0.4" } }, "node_modules/typed-array-byte-length": { - "version": "1.0.0", + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/typed-array-byte-length/-/typed-array-byte-length-1.0.3.tgz", + "integrity": "sha512-BaXgOuIxz8n8pIq3e7Atg/7s+DpiYrxn4vdot3w9KbnBhcRQq6o3xemQdIfynqSeXeDrF32x+WvfzmOjPiY9lg==", "dev": true, - "license": "MIT", "dependencies": { - "call-bind": "^1.0.2", + "call-bind": "^1.0.8", "for-each": "^0.3.3", - "has-proto": "^1.0.1", - "is-typed-array": "^1.1.10" + "gopd": "^1.2.0", + "has-proto": "^1.2.0", + "is-typed-array": "^1.1.14" }, "engines": { "node": ">= 0.4" @@ -16722,15 +19115,18 @@ } }, "node_modules/typed-array-byte-offset": { - "version": "1.0.0", + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/typed-array-byte-offset/-/typed-array-byte-offset-1.0.4.tgz", + "integrity": "sha512-bTlAFB/FBYMcuX81gbL4OcpH5PmlFHqlCCpAl8AlEzMz5k53oNDvN8p1PNOWLEmI2x4orp3raOFB51tv9X+MFQ==", "dev": true, - "license": "MIT", "dependencies": { - "available-typed-arrays": "^1.0.5", - "call-bind": "^1.0.2", + "available-typed-arrays": "^1.0.7", + "call-bind": "^1.0.8", "for-each": "^0.3.3", - "has-proto": "^1.0.1", - "is-typed-array": "^1.1.10" + "gopd": "^1.2.0", + "has-proto": "^1.2.0", + "is-typed-array": "^1.1.15", + "reflect.getprototypeof": "^1.0.9" }, "engines": { "node": ">= 0.4" @@ -16740,22 +19136,30 @@ } }, "node_modules/typed-array-length": { - "version": "1.0.4", + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/typed-array-length/-/typed-array-length-1.0.7.tgz", + "integrity": "sha512-3KS2b+kL7fsuk/eJZ7EQdnEmQoaho/r6KUef7hxvltNA5DR8NAUM+8wJMbJyZ4G9/7i3v5zPBIMN5aybAh2/Jg==", "dev": true, - "license": "MIT", "dependencies": { - "call-bind": "^1.0.2", + "call-bind": "^1.0.7", "for-each": "^0.3.3", - "is-typed-array": "^1.1.9" + "gopd": "^1.0.1", + "is-typed-array": "^1.1.13", + "possible-typed-array-names": "^1.0.0", + "reflect.getprototypeof": "^1.0.6" + }, + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" } }, "node_modules/typescript": { - "version": "4.6.4", + "version": "4.9.5", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.9.5.tgz", + "integrity": "sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g==", "dev": true, - "license": "Apache-2.0", "bin": { "tsc": "bin/tsc", "tsserver": "bin/tsserver" @@ -16765,27 +19169,32 @@ } }, "node_modules/unbox-primitive": { - "version": "1.0.2", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.1.0.tgz", + "integrity": "sha512-nWJ91DjeOkej/TA8pXQ3myruKpKEYgqvpw9lz4OPHj/NWFNluYrjbz9j01CJ8yKQd2g4jFoOkINCTW2I5LEEyw==", "dev": true, - "license": "MIT", "dependencies": { - "call-bind": "^1.0.2", + "call-bound": "^1.0.3", "has-bigints": "^1.0.2", - "has-symbols": "^1.0.3", - "which-boxed-primitive": "^1.0.2" + "has-symbols": "^1.1.0", + "which-boxed-primitive": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" } }, "node_modules/undici-types": { - "version": "5.25.3", - "dev": true, - "license": "MIT" + "version": "6.20.0", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.20.0.tgz", + "integrity": "sha512-Ny6QZ2Nju20vw1SRHe3d9jVu6gJ+4e3+MMpqu7pqE5HT6WsTSlce++GQmK5UXS8mzV8DSYHrQH+Xrf2jVcuKNg==" }, "node_modules/unpipe": { "version": "1.0.0", - "license": "MIT", + "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", + "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==", "peer": true, "engines": { "node": ">= 0.8" @@ -16800,23 +19209,34 @@ "pako": "^1.0.11" } }, - "node_modules/util-deprecate": { - "version": "1.0.2", - "dev": true, - "license": "MIT" - }, "node_modules/utils-merge": { "version": "1.0.1", - "license": "MIT", + "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", + "integrity": "sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==", "peer": true, "engines": { "node": ">= 0.4.0" } }, + "node_modules/uuid": { + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-9.0.1.tgz", + "integrity": "sha512-b+1eJOlsR9K8HJpow9Ok3fiWOWSIcIzXodvv0rQjVoOVNpWMpxf1wZNpt4y9h10odCNrqnYp1OBzRktckBe3sA==", + "funding": [ + "https://github.com/sponsors/broofa", + "https://github.com/sponsors/ctavan" + ], + "optional": true, + "peer": true, + "bin": { + "uuid": "dist/bin/uuid" + } + }, "node_modules/validate-npm-package-license": { "version": "3.0.4", + "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", + "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", "dev": true, - "license": "Apache-2.0", "dependencies": { "spdx-correct": "^3.0.0", "spdx-expression-parse": "^3.0.0" @@ -16824,17 +19244,21 @@ }, "node_modules/vary": { "version": "1.1.2", - "license": "MIT", + "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", + "integrity": "sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==", "peer": true, "engines": { "node": ">= 0.8" } }, "node_modules/webidl-conversions": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", - "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==", - "dev": true + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-7.0.0.tgz", + "integrity": "sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==", + "peer": true, + "engines": { + "node": ">=12" + } }, "node_modules/whatwg-fetch": { "version": "3.6.20", @@ -16843,19 +19267,23 @@ "dev": true }, "node_modules/whatwg-url": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", - "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", - "dev": true, + "version": "11.0.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-11.0.0.tgz", + "integrity": "sha512-RKT8HExMpoYx4igMiVMY83lN6UeITKJlBQ+vR/8ZJ8OCdSiN3RwCq+9gH0+Xzj0+5IrM6i4j/6LuvzbZIQgEcQ==", + "peer": true, "dependencies": { - "tr46": "~0.0.3", - "webidl-conversions": "^3.0.0" + "tr46": "^3.0.0", + "webidl-conversions": "^7.0.0" + }, + "engines": { + "node": ">=12" } }, "node_modules/which": { "version": "1.3.1", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", "dev": true, - "license": "ISC", "dependencies": { "isexe": "^2.0.0" }, @@ -16864,30 +19292,82 @@ } }, "node_modules/which-boxed-primitive": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.1.1.tgz", + "integrity": "sha512-TbX3mj8n0odCBFVlY8AxkqcHASw3L60jIuF8jFP78az3C2YhmGvqbHBpAjTRH2/xqYunrJ9g1jSyjCjpoWzIAA==", + "dev": true, + "dependencies": { + "is-bigint": "^1.1.0", + "is-boolean-object": "^1.2.1", + "is-number-object": "^1.1.1", + "is-string": "^1.1.1", + "is-symbol": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/which-builtin-type": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/which-builtin-type/-/which-builtin-type-1.2.1.tgz", + "integrity": "sha512-6iBczoX+kDQ7a3+YJBnh3T+KZRxM/iYNPXicqk66/Qfm1b93iu+yOImkg0zHbj5LNOcNv1TEADiZ0xa34B4q6Q==", + "dev": true, + "dependencies": { + "call-bound": "^1.0.2", + "function.prototype.name": "^1.1.6", + "has-tostringtag": "^1.0.2", + "is-async-function": "^2.0.0", + "is-date-object": "^1.1.0", + "is-finalizationregistry": "^1.1.0", + "is-generator-function": "^1.0.10", + "is-regex": "^1.2.1", + "is-weakref": "^1.0.2", + "isarray": "^2.0.5", + "which-boxed-primitive": "^1.1.0", + "which-collection": "^1.0.2", + "which-typed-array": "^1.1.16" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/which-collection": { "version": "1.0.2", + "resolved": "https://registry.npmjs.org/which-collection/-/which-collection-1.0.2.tgz", + "integrity": "sha512-K4jVyjnBdgvc86Y6BkaLZEN933SwYOuBFkdmBu9ZfkcAbdVbpITnDmjvZ/aQjRXQrv5EPkTnD1s39GiiqbngCw==", "dev": true, - "license": "MIT", "dependencies": { - "is-bigint": "^1.0.1", - "is-boolean-object": "^1.1.0", - "is-number-object": "^1.0.4", - "is-string": "^1.0.5", - "is-symbol": "^1.0.3" + "is-map": "^2.0.3", + "is-set": "^2.0.3", + "is-weakmap": "^2.0.2", + "is-weakset": "^2.0.3" + }, + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" } }, "node_modules/which-typed-array": { - "version": "1.1.11", + "version": "1.1.19", + "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.19.tgz", + "integrity": "sha512-rEvr90Bck4WZt9HHFC4DJMsjvu7x+r6bImz0/BrbWb7A2djJ8hnZMrWnHo9F8ssv0OMErasDhftrfROTyqSDrw==", "dev": true, - "license": "MIT", "dependencies": { - "available-typed-arrays": "^1.0.5", - "call-bind": "^1.0.2", - "for-each": "^0.3.3", - "gopd": "^1.0.1", - "has-tostringtag": "^1.0.0" + "available-typed-arrays": "^1.0.7", + "call-bind": "^1.0.8", + "call-bound": "^1.0.4", + "for-each": "^0.3.5", + "get-proto": "^1.0.1", + "gopd": "^1.2.0", + "has-tostringtag": "^1.0.2" }, "engines": { "node": ">= 0.4" @@ -17019,8 +19499,9 @@ }, "node_modules/wrappy": { "version": "1.0.2", - "dev": true, - "license": "ISC" + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", + "dev": true }, "node_modules/xhr": { "version": "2.6.0", diff --git a/plugins/image/service/package.json b/plugins/image/service/package.json index 371eff136..b38a6230e 100644 --- a/plugins/image/service/package.json +++ b/plugins/image/service/package.json @@ -1,8 +1,12 @@ { "name": "@ngageoint/mage.image.service", - "version": "1.0.6", + "version": "1.1.0-beta.2", "description": "Orient images attached to MAGE observations according to EXIF meta-data and generate configurable size thumbnails.", "main": "lib/index.js", + "files": [ + "lib/", + "src/" + ], "scripts": { "build": "tsc", "test": "npm-run-all build test:run", @@ -32,24 +36,32 @@ "sharp": "^0.33.2" }, "peerDependencies": { - "@ngageoint/mage.service": "^6.2.0 || ~6.2.12-beta", - "express": "^4.17.0", - "mongoose": "^4.0.0" + "@ngageoint/mage.service": "6.3.0-beta.8", + "express": "~4.21.2", + "mongoose": "^6.13.0" + }, + "optionalDependencies": { + "fsevents": "^2.3.3" }, + "os": [ + "darwin", + "linux" + ], + "cpu": [ + "x64", + "arm64" + ], "devDependencies": { - "@types/bson": "^1.0.11", - "@types/express": "^4.17.13", + "@types/bson": "^4.0.2", + "@types/express": "~4.17.17", "@types/jasmine": "^3.10.3", "@types/lodash": "^4.14.182", - "@types/mongodb": "^3.6.20", - "@types/mongoose": "^4.7.56", "@types/sharp": "^0.30.4", "jasmine": "^3.10.0", "jimp": "^0.22.10", "lodash": "^4.17.21", - "mongoose": "^4.13.21", "npm-run-all": "^4.1.5", "rimraf": "^5.0.5", - "typescript": "~4.6.0" + "typescript": "^4.9.5" } -} +} \ No newline at end of file diff --git a/plugins/image/service/src/adapters.db.mongo.ts b/plugins/image/service/src/adapters.db.mongo.ts index 15be4d91a..111af233e 100644 --- a/plugins/image/service/src/adapters.db.mongo.ts +++ b/plugins/image/service/src/adapters.db.mongo.ts @@ -21,7 +21,7 @@ export function FindUnprocessedAttachments(getDbConn: GetDbConnection, console: const collection = conn.collection(eventState.collectionName) const cursor = await collection.aggregate(queryStages) for await (const doc of cursor) { - yield { eventId: eventState.event.id, observationId: doc.observationId.toHexString(), attachmentId: doc.attachmentId.toHexString() } + yield { eventId: eventState.event.id, observationId: doc.observationId.toString(), attachmentId: doc.attachmentId.toString() } if (--remainingCount === 0) { console.info(`reached unprocessed attachment limit ${limit}; cancelling query iteration`) return await cursor.close().then(_ => eventStateCursor.return!(null)).then(_ => null) diff --git a/plugins/image/service/src/index.ts b/plugins/image/service/src/index.ts index 60c31ec29..f2b99ae66 100644 --- a/plugins/image/service/src/index.ts +++ b/plugins/image/service/src/index.ts @@ -54,39 +54,41 @@ const imagePluginHooks: InitPluginHook = { const control = await createImagePluginControl(stateRepo, eventRepo, obsRepoForEvent, attachmentStore, queryAttachments, imageService, console) control.start() return { - webRoutes(requestContext: GetAppRequestContext): express.Router { - // TODO: add api routes to save image processing settings - const routes = express.Router() - .use(express.json()) - .use(async (req, res, next) => { - const context = requestContext(req) - const user = context.requestingPrincipal() - if (!user.role.permissions.find(x => x === SettingPermission.UPDATE_SETTINGS)) { - return res.status(403).json({ message: 'unauthorized' }) - } - next() - }) - routes.route('/config') - .get(async (req, res, next) => { - const config = await control.getConfig() - res.json(config) - }) - .put(async (req, res, next) => { - const bodyConfig = req.body as any - const configPatch: Partial = { - enabled: typeof bodyConfig.enabled === 'boolean' ? bodyConfig.enabled : undefined, - intervalBatchSize: typeof bodyConfig.intervalBatchSize === 'number' ? bodyConfig.intervalBatchSize : undefined, - intervalSeconds: typeof bodyConfig.intervalSeconds === 'number' ? bodyConfig.intervalSeconds : undefined, - thumbnailSizes: Array.isArray(bodyConfig.thumbnailSizes) ? - bodyConfig.thumbnailSizes.reduce((sizes: number[], size: any) => { - return typeof size === 'number' ? [ ...sizes, size ] : sizes - }, [] as number[]) - : [] - } - const config = await control.applyConfig(configPatch) - res.json(config) - }) - return routes + webRoutes: { + protected(requestContext: GetAppRequestContext): express.Router { + // TODO: add api routes to save image processing settings + const routes = express.Router() + .use(express.json()) + .use(async (req, res, next) => { + const context = requestContext(req) + const user = context.requestingPrincipal() + if (!user.role.permissions.find(x => x === SettingPermission.UPDATE_SETTINGS)) { + return res.status(403).json({ message: 'unauthorized' }) + } + next() + }) + routes.route('/config') + .get(async (req, res, next) => { + const config = await control.getConfig() + res.json(config) + }) + .put(async (req, res, next) => { + const bodyConfig = req.body as any + const configPatch: Partial = { + enabled: typeof bodyConfig.enabled === 'boolean' ? bodyConfig.enabled : undefined, + intervalBatchSize: typeof bodyConfig.intervalBatchSize === 'number' ? bodyConfig.intervalBatchSize : undefined, + intervalSeconds: typeof bodyConfig.intervalSeconds === 'number' ? bodyConfig.intervalSeconds : undefined, + thumbnailSizes: Array.isArray(bodyConfig.thumbnailSizes) ? + bodyConfig.thumbnailSizes.reduce((sizes: number[], size: any) => { + return typeof size === 'number' ? [...sizes, size] : sizes + }, [] as number[]) + : [] + } + const config = await control.applyConfig(configPatch) + res.json(config) + }) + return routes + } } } } diff --git a/plugins/image/web-app/.gitignore b/plugins/image/web-app/.gitignore index 86d943a9b..53a8849ee 100644 --- a/plugins/image/web-app/.gitignore +++ b/plugins/image/web-app/.gitignore @@ -32,6 +32,7 @@ speed-measure-plugin*.json .history/* # misc +/.angular/cache /.sass-cache /connect.lock /coverage diff --git a/plugins/image/web-app/angular.json b/plugins/image/web-app/angular.json index d94d60ee0..639a8d684 100644 --- a/plugins/image/web-app/angular.json +++ b/plugins/image/web-app/angular.json @@ -10,12 +10,17 @@ "prefix": "lib", "architect": { "build": { - "builder": "@angular-devkit/build-ng-packagr:build", + "builder": "@angular-devkit/build-angular:ng-packagr", "options": { "tsConfig": "projects/mage-image/tsconfig.lib.json", "project": "projects/mage-image/ng-package.json" } - }, + , "configurations": { + "production": { + "tsConfig": "projects/mage-image/tsconfig.lib.prod.json" + } + } +}, "test": { "builder": "@angular-devkit/build-angular:karma", "options": { @@ -23,21 +28,8 @@ "tsConfig": "projects/mage-image/tsconfig.spec.json", "karmaConfig": "projects/mage-image/karma.conf.js" } - }, - "lint": { - "builder": "@angular-devkit/build-angular:tslint", - "options": { - "tsConfig": [ - "projects/image/tsconfig.lib.json", - "projects/image/tsconfig.spec.json" - ], - "exclude": [ - "**/node_modules/**" - ] - } } } } - }, - "defaultProject": "mage-image" -} \ No newline at end of file + } +} diff --git a/plugins/image/web-app/package-lock.json b/plugins/image/web-app/package-lock.json index c4d87574f..dc4e15149 100644 --- a/plugins/image/web-app/package-lock.json +++ b/plugins/image/web-app/package-lock.json @@ -4,1529 +4,990 @@ "lockfileVersion": 1, "requires": true, "dependencies": { - "@angular-devkit/architect": { - "version": "0.803.25", - "resolved": "https://registry.npmjs.org/@angular-devkit/architect/-/architect-0.803.25.tgz", - "integrity": "sha512-usV/zEncKCKQuF6AD3pRU6N5i5fbaAux/qZb+nbOz9/2G5jrXwe5sH+y3vxbgqB83e3LqusEQCTu7/tfg6LwZg==", + "@adobe/css-tools": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/@adobe/css-tools/-/css-tools-4.0.1.tgz", + "integrity": "sha512-+u76oB43nOHrF4DDWRLWDCtci7f3QJoEBigemIdIeTi1ODqjx6Tad9NCVnPRwewWlKkVab5PlK8DCtPTyX7S8g==", + "dev": true + }, + "@ampproject/remapping": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.0.tgz", + "integrity": "sha512-qRmjj8nj9qmLTQXXmaR1cck3UXSRMPrbsLJAasZpF+t3riI71BXed5ebIOYwQntykeZuhjsdweEc9BxH5Jc26w==", "dev": true, "requires": { - "@angular-devkit/core": "8.3.25", - "rxjs": "6.4.0" - } - }, - "@angular-devkit/build-angular": { - "version": "0.803.25", - "resolved": "https://registry.npmjs.org/@angular-devkit/build-angular/-/build-angular-0.803.25.tgz", - "integrity": "sha512-WY0E7NgXuog3phhz5ZdutZPWQ9nbOr+omGN5KI1e8MZs1sJO4xkyaGRT8zOulkogkqJ2NboTBq3j9uSbZkcYeg==", - "dev": true, - "requires": { - "@angular-devkit/architect": "0.803.25", - "@angular-devkit/build-optimizer": "0.803.25", - "@angular-devkit/build-webpack": "0.803.25", - "@angular-devkit/core": "8.3.25", - "@babel/core": "7.8.3", - "@babel/preset-env": "7.8.3", - "@ngtools/webpack": "8.3.25", - "ajv": "6.10.2", - "autoprefixer": "9.6.1", - "browserslist": "4.8.6", - "cacache": "12.0.2", - "caniuse-lite": "1.0.30001024", - "circular-dependency-plugin": "5.2.0", - "clean-css": "4.2.1", - "copy-webpack-plugin": "5.1.1", - "core-js": "3.6.4", - "coverage-istanbul-loader": "2.0.3", - "file-loader": "4.2.0", - "find-cache-dir": "3.0.0", - "glob": "7.1.4", - "jest-worker": "24.9.0", - "karma-source-map-support": "1.4.0", - "less": "3.9.0", - "less-loader": "5.0.0", - "license-webpack-plugin": "2.1.2", - "loader-utils": "1.2.3", - "mini-css-extract-plugin": "0.8.0", - "minimatch": "3.0.4", - "open": "6.4.0", - "parse5": "4.0.0", - "postcss": "7.0.17", - "postcss-import": "12.0.1", - "postcss-loader": "3.0.0", - "raw-loader": "3.1.0", - "regenerator-runtime": "0.13.3", - "rxjs": "6.4.0", - "sass": "1.22.9", - "sass-loader": "7.2.0", - "semver": "6.3.0", - "source-map": "0.7.3", - "source-map-loader": "0.2.4", - "source-map-support": "0.5.13", - "speed-measure-webpack-plugin": "1.3.1", - "style-loader": "1.0.0", - "stylus": "0.54.5", - "stylus-loader": "3.0.2", - "terser": "4.6.3", - "terser-webpack-plugin": "1.4.3", - "tree-kill": "1.2.2", - "webpack": "4.39.2", - "webpack-dev-middleware": "3.7.2", - "webpack-dev-server": "3.9.0", - "webpack-merge": "4.2.1", - "webpack-sources": "1.4.3", - "webpack-subresource-integrity": "1.1.0-rc.6", - "worker-plugin": "3.2.0" + "@jridgewell/gen-mapping": "^0.1.0", + "@jridgewell/trace-mapping": "^0.3.9" } }, - "@angular-devkit/build-ng-packagr": { - "version": "0.803.25", - "resolved": "https://registry.npmjs.org/@angular-devkit/build-ng-packagr/-/build-ng-packagr-0.803.25.tgz", - "integrity": "sha512-bCtREHIHCG4d3MsvfB4vE+7R1QWPpwL8HrN9eeuVvHQgyTe/kVp9gvdoJA/0MDcj3IKTzTb5avKz/xtDA4V3BQ==", + "@angular-devkit/architect": { + "version": "0.1402.10", + "resolved": "https://registry.npmjs.org/@angular-devkit/architect/-/architect-0.1402.10.tgz", + "integrity": "sha512-/6YmPrgataj1jD2Uqd1ED+CG4DaZGacoeZd/89hH7hF76Nno8K18DrSOqJAEmDnOWegpSRGVLd0qP09IHmaG5w==", "dev": true, "requires": { - "@angular-devkit/architect": "0.803.25", - "rxjs": "6.4.0" + "@angular-devkit/core": "14.2.10", + "rxjs": "6.6.7" + }, + "dependencies": { + "rxjs": { + "version": "6.6.7", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", + "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", + "dev": true, + "requires": { + "tslib": "^1.9.0" + } + }, + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "dev": true + } } }, - "@angular-devkit/build-optimizer": { - "version": "0.803.25", - "resolved": "https://registry.npmjs.org/@angular-devkit/build-optimizer/-/build-optimizer-0.803.25.tgz", - "integrity": "sha512-MiQimuEs8QeM3xo7bR3Yk1OWHHlp2pGCc2GLUMIcWhKqM+QjoRky0HoGoBazbznx292l+xjFjANvPEKbqJ2v7Q==", - "dev": true, - "requires": { - "loader-utils": "1.2.3", - "source-map": "0.7.3", - "tslib": "1.10.0", - "typescript": "3.5.3", - "webpack-sources": "1.4.3" + "@angular-devkit/build-angular": { + "version": "14.2.10", + "resolved": "https://registry.npmjs.org/@angular-devkit/build-angular/-/build-angular-14.2.10.tgz", + "integrity": "sha512-VCeZAyq4uPCJukKInaSiD4i/GgxgcU4jFlLFQtoYNmaBS4xbPOymL19forRIihiV0dwNEa2L694vRTAPMBxIfw==", + "dev": true, + "requires": { + "@ampproject/remapping": "2.2.0", + "@angular-devkit/architect": "0.1402.10", + "@angular-devkit/build-webpack": "0.1402.10", + "@angular-devkit/core": "14.2.10", + "@babel/core": "7.18.10", + "@babel/generator": "7.18.12", + "@babel/helper-annotate-as-pure": "7.18.6", + "@babel/plugin-proposal-async-generator-functions": "7.18.10", + "@babel/plugin-transform-async-to-generator": "7.18.6", + "@babel/plugin-transform-runtime": "7.18.10", + "@babel/preset-env": "7.18.10", + "@babel/runtime": "7.18.9", + "@babel/template": "7.18.10", + "@discoveryjs/json-ext": "0.5.7", + "@ngtools/webpack": "14.2.10", + "ansi-colors": "4.1.3", + "babel-loader": "8.2.5", + "babel-plugin-istanbul": "6.1.1", + "browserslist": "^4.9.1", + "cacache": "16.1.2", + "copy-webpack-plugin": "11.0.0", + "critters": "0.0.16", + "css-loader": "6.7.1", + "esbuild": "0.15.5", + "esbuild-wasm": "0.15.5", + "glob": "8.0.3", + "https-proxy-agent": "5.0.1", + "inquirer": "8.2.4", + "jsonc-parser": "3.1.0", + "karma-source-map-support": "1.4.0", + "less": "4.1.3", + "less-loader": "11.0.0", + "license-webpack-plugin": "4.0.2", + "loader-utils": "3.2.1", + "mini-css-extract-plugin": "2.6.1", + "minimatch": "5.1.0", + "open": "8.4.0", + "ora": "5.4.1", + "parse5-html-rewriting-stream": "6.0.1", + "piscina": "3.2.0", + "postcss": "8.4.16", + "postcss-import": "15.0.0", + "postcss-loader": "7.0.1", + "postcss-preset-env": "7.8.0", + "regenerator-runtime": "0.13.9", + "resolve-url-loader": "5.0.0", + "rxjs": "6.6.7", + "sass": "1.54.4", + "sass-loader": "13.0.2", + "semver": "7.3.7", + "source-map-loader": "4.0.0", + "source-map-support": "0.5.21", + "stylus": "0.59.0", + "stylus-loader": "7.0.0", + "terser": "5.14.2", + "text-table": "0.2.0", + "tree-kill": "1.2.2", + "tslib": "2.4.0", + "webpack": "5.74.0", + "webpack-dev-middleware": "5.3.3", + "webpack-dev-server": "4.11.0", + "webpack-merge": "5.8.0", + "webpack-subresource-integrity": "5.1.0" }, "dependencies": { + "esbuild": { + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.15.5.tgz", + "integrity": "sha512-VSf6S1QVqvxfIsSKb3UKr3VhUCis7wgDbtF4Vd9z84UJr05/Sp2fRKmzC+CSPG/dNAPPJZ0BTBLTT1Fhd6N9Gg==", + "dev": true, + "optional": true, + "requires": { + "@esbuild/linux-loong64": "0.15.5", + "esbuild-android-64": "0.15.5", + "esbuild-android-arm64": "0.15.5", + "esbuild-darwin-64": "0.15.5", + "esbuild-darwin-arm64": "0.15.5", + "esbuild-freebsd-64": "0.15.5", + "esbuild-freebsd-arm64": "0.15.5", + "esbuild-linux-32": "0.15.5", + "esbuild-linux-64": "0.15.5", + "esbuild-linux-arm": "0.15.5", + "esbuild-linux-arm64": "0.15.5", + "esbuild-linux-mips64le": "0.15.5", + "esbuild-linux-ppc64le": "0.15.5", + "esbuild-linux-riscv64": "0.15.5", + "esbuild-linux-s390x": "0.15.5", + "esbuild-netbsd-64": "0.15.5", + "esbuild-openbsd-64": "0.15.5", + "esbuild-sunos-64": "0.15.5", + "esbuild-windows-32": "0.15.5", + "esbuild-windows-64": "0.15.5", + "esbuild-windows-arm64": "0.15.5" + } + }, + "rxjs": { + "version": "6.6.7", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", + "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", + "dev": true, + "requires": { + "tslib": "^1.9.0" + }, + "dependencies": { + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "dev": true + } + } + }, "tslib": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.10.0.tgz", - "integrity": "sha512-qOebF53frne81cf0S9B41ByenJ3/IuH8yJKngAX35CmiZySA0khhkovshKK+jGCaMnVomla7gVlIcc3EvKPbTQ==", + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz", + "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==", "dev": true } } }, "@angular-devkit/build-webpack": { - "version": "0.803.25", - "resolved": "https://registry.npmjs.org/@angular-devkit/build-webpack/-/build-webpack-0.803.25.tgz", - "integrity": "sha512-WR7HWJIWL6TB3WHG7ZFn8s0z3WlojeQlod75UIKl5i+f4OU90kp8kxcoH5G6OCXu56x5w40oIi1ve5ljjWSJkw==", + "version": "0.1402.10", + "resolved": "https://registry.npmjs.org/@angular-devkit/build-webpack/-/build-webpack-0.1402.10.tgz", + "integrity": "sha512-h+2MaSY7QSvoJ3R+Hvin21jVCfPGOTLdASIUk4Jmq6J3y5BSku3KSSaV8dWoBOBkFCwQyPQMRjiHoHKLpC1K7g==", "dev": true, "requires": { - "@angular-devkit/architect": "0.803.25", - "@angular-devkit/core": "8.3.25", - "rxjs": "6.4.0" + "@angular-devkit/architect": "0.1402.10", + "rxjs": "6.6.7" + }, + "dependencies": { + "rxjs": { + "version": "6.6.7", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", + "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", + "dev": true, + "requires": { + "tslib": "^1.9.0" + } + }, + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "dev": true + } } }, "@angular-devkit/core": { - "version": "8.3.25", - "resolved": "https://registry.npmjs.org/@angular-devkit/core/-/core-8.3.25.tgz", - "integrity": "sha512-l7Gqy1tMrTpRmPVlovcFX8UA3mtXRlgO8kcSsbJ9MKRKNTCcxlfsWEYY5igyDBUVh6ADkgSIu0nuk31ZGTe0lw==", + "version": "14.2.10", + "resolved": "https://registry.npmjs.org/@angular-devkit/core/-/core-14.2.10.tgz", + "integrity": "sha512-K4AO7mROTdbhQ7chtyQd6oPwmuL+BPUh+wn6Aq1qrmYJK4UZYFOPp8fi/Ehs8meCEeywtrssOPfrOE4Gsre9dg==", "dev": true, "requires": { - "ajv": "6.10.2", - "fast-json-stable-stringify": "2.0.0", - "magic-string": "0.25.3", - "rxjs": "6.4.0", - "source-map": "0.7.3" + "ajv": "8.11.0", + "ajv-formats": "2.1.1", + "jsonc-parser": "3.1.0", + "rxjs": "6.6.7", + "source-map": "0.7.4" + }, + "dependencies": { + "rxjs": { + "version": "6.6.7", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", + "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", + "dev": true, + "requires": { + "tslib": "^1.9.0" + } + }, + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "dev": true + } } }, "@angular-devkit/schematics": { - "version": "8.3.25", - "resolved": "https://registry.npmjs.org/@angular-devkit/schematics/-/schematics-8.3.25.tgz", - "integrity": "sha512-/p1MkfursfLy+JRGXlJGPEmX55lrFCsR/2khWAVXZcMaFR3QlR/b6/zvB8I2pHFfr0/XWnYTT/BsF7rJjO3RmA==", + "version": "14.2.10", + "resolved": "https://registry.npmjs.org/@angular-devkit/schematics/-/schematics-14.2.10.tgz", + "integrity": "sha512-MMp31KpJTwKHisXOq+6VOXYApq97hZxFaFmZk396X5aIFTCELUwjcezQDk+u2nEs5iK/COUfnN3plGcfJxYhQA==", "dev": true, "requires": { - "@angular-devkit/core": "8.3.25", - "rxjs": "6.4.0" + "@angular-devkit/core": "14.2.10", + "jsonc-parser": "3.1.0", + "magic-string": "0.26.2", + "ora": "5.4.1", + "rxjs": "6.6.7" + }, + "dependencies": { + "rxjs": { + "version": "6.6.7", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", + "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", + "dev": true, + "requires": { + "tslib": "^1.9.0" + } + }, + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "dev": true + } } }, "@angular/animations": { - "version": "8.2.14", - "resolved": "https://registry.npmjs.org/@angular/animations/-/animations-8.2.14.tgz", - "integrity": "sha512-3Vc9TnNpKdtvKIXcWDFINSsnwgEMiDmLzjceWg1iYKwpeZGQahUXPoesLwQazBMmxJzQiA4HOMj0TTXKZ+Jzkg==", + "version": "14.2.12", + "resolved": "https://registry.npmjs.org/@angular/animations/-/animations-14.2.12.tgz", + "integrity": "sha512-gwdnFZkvVUr+enUNfhfCGRGGqNHn1+vTA81apLfHYhJxgjiLUtETc4KTOrQevtDm022pEd+LSrvr8r+7ag+jkw==", "requires": { - "tslib": "^1.9.0" + "tslib": "^2.3.0" } }, "@angular/cli": { - "version": "8.3.25", - "resolved": "https://registry.npmjs.org/@angular/cli/-/cli-8.3.25.tgz", - "integrity": "sha512-CPJI5nnbBvvyBUFwOHfRXy/KVwsiYlcbDAeIk1klcjQjbVFYZbnY0iAhNupy9j7rPQhb7jle5oslU3TLfbqOTQ==", + "version": "14.2.10", + "resolved": "https://registry.npmjs.org/@angular/cli/-/cli-14.2.10.tgz", + "integrity": "sha512-gX9sAKOwq4lKdPWeABB7TzKDHdjQXvkUU8NmPJA6mEAVXvm3lhQtFvHDalZstwK8au2LY0LaXTcEtcKYOt3AXQ==", "dev": true, "requires": { - "@angular-devkit/architect": "0.803.25", - "@angular-devkit/core": "8.3.25", - "@angular-devkit/schematics": "8.3.25", - "@schematics/angular": "8.3.25", - "@schematics/update": "0.803.25", + "@angular-devkit/architect": "0.1402.10", + "@angular-devkit/core": "14.2.10", + "@angular-devkit/schematics": "14.2.10", + "@schematics/angular": "14.2.10", "@yarnpkg/lockfile": "1.1.0", - "ansi-colors": "4.1.1", - "debug": "^4.1.1", - "ini": "1.3.5", - "inquirer": "6.5.1", - "npm-package-arg": "6.1.0", - "npm-pick-manifest": "3.0.2", - "open": "6.4.0", - "pacote": "9.5.5", - "read-package-tree": "5.3.1", - "rimraf": "3.0.0", - "semver": "6.3.0", - "symbol-observable": "1.2.0", - "universal-analytics": "^0.4.20", - "uuid": "^3.3.2" - }, - "dependencies": { - "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 - }, - "rimraf": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.0.tgz", - "integrity": "sha512-NDGVxTsjqfunkds7CqsOiEnxln4Bo7Nddl3XhS4pXg5OzwkLqJ971ZVAAnB+DDLnF76N+VnDEiBHaVV8I06SUg==", - "dev": true, - "requires": { - "glob": "^7.1.3" - } - } + "ansi-colors": "4.1.3", + "debug": "4.3.4", + "ini": "3.0.0", + "inquirer": "8.2.4", + "jsonc-parser": "3.1.0", + "npm-package-arg": "9.1.0", + "npm-pick-manifest": "7.0.1", + "open": "8.4.0", + "ora": "5.4.1", + "pacote": "13.6.2", + "resolve": "1.22.1", + "semver": "7.3.7", + "symbol-observable": "4.0.0", + "uuid": "8.3.2", + "yargs": "17.5.1" } }, "@angular/common": { - "version": "8.2.14", - "resolved": "https://registry.npmjs.org/@angular/common/-/common-8.2.14.tgz", - "integrity": "sha512-Qmt+aX2quUW54kaNT7QH7WGXnFxr/cC2C6sf5SW5SdkZfDQSiz8IaItvieZfXVQUbBOQKFRJ7TlSkt0jI/yjvw==", + "version": "14.2.12", + "resolved": "https://registry.npmjs.org/@angular/common/-/common-14.2.12.tgz", + "integrity": "sha512-oZunh9wfInFWhNO1P8uoEs/o4u8kerKMhw8GruywKm1TV7gHDP2Fi5WHGjFqq3XYptgBTPCTSEfyLX6Cwq1PUw==", "requires": { - "tslib": "^1.9.0" + "tslib": "^2.3.0" } }, "@angular/compiler": { - "version": "8.2.14", - "resolved": "https://registry.npmjs.org/@angular/compiler/-/compiler-8.2.14.tgz", - "integrity": "sha512-ABZO4E7eeFA1QyJ2trDezxeQM5ZFa1dXw1Mpl/+1vuXDKNjJgNyWYwKp/NwRkLmrsuV0yv4UDCDe4kJOGbPKnw==", + "version": "14.2.12", + "resolved": "https://registry.npmjs.org/@angular/compiler/-/compiler-14.2.12.tgz", + "integrity": "sha512-u2MH9+NRwbbFDRNiPWPexed9CnCq9+pGHLuyACSP2uR6Ik68cE6cayeZbIeoEV5vWpda/XsLmJgPJysw7dAZLQ==", "requires": { - "tslib": "^1.9.0" + "tslib": "^2.3.0" } }, "@angular/compiler-cli": { - "version": "8.2.14", - "resolved": "https://registry.npmjs.org/@angular/compiler-cli/-/compiler-cli-8.2.14.tgz", - "integrity": "sha512-XDrTyrlIZM+0NquVT+Kbg5bn48AaWFT+B3bAT288PENrTdkuxuF9AhjFRZj8jnMdmaE4O2rioEkXBtl6z3zptA==", + "version": "14.2.12", + "resolved": "https://registry.npmjs.org/@angular/compiler-cli/-/compiler-cli-14.2.12.tgz", + "integrity": "sha512-9Gkb9KFkaQPz8XaS8ZwwTioRZ4ywykdAWyceICEi78/Y9ConYrTX2SbFogzI2dPUZU8a04tMlbqTSmHjVbJftQ==", "dev": true, "requires": { - "canonical-path": "1.0.0", - "chokidar": "^2.1.1", + "@babel/core": "^7.17.2", + "chokidar": "^3.0.0", "convert-source-map": "^1.5.1", - "dependency-graph": "^0.7.2", - "magic-string": "^0.25.0", - "minimist": "^1.2.0", + "dependency-graph": "^0.11.0", + "magic-string": "^0.26.0", "reflect-metadata": "^0.1.2", - "source-map": "^0.6.1", - "tslib": "^1.9.0", - "yargs": "13.1.0" + "semver": "^7.0.0", + "sourcemap-codec": "^1.4.8", + "tslib": "^2.3.0", + "yargs": "^17.2.1" + } + }, + "@angular/core": { + "version": "14.2.12", + "resolved": "https://registry.npmjs.org/@angular/core/-/core-14.2.12.tgz", + "integrity": "sha512-sGQxU5u4uawwvJa6jOTmGoisJiQ5HIN/RoBw99CmoqZIVyUSg9IRJJC1KVdH8gbpWBNLkElZv21lwJTL/msWyg==", + "requires": { + "tslib": "^2.3.0" + } + }, + "@angular/forms": { + "version": "14.2.12", + "resolved": "https://registry.npmjs.org/@angular/forms/-/forms-14.2.12.tgz", + "integrity": "sha512-7abYlGIT2JnAtutQUlH3fQS6QEpbfftgvsVcZJCyvX0rXL3u2w2vUQkDHJH4YJJp3AHFVCH4/l7R4VcaPnrwvA==", + "requires": { + "tslib": "^2.3.0" + } + }, + "@angular/language-service": { + "version": "14.2.12", + "resolved": "https://registry.npmjs.org/@angular/language-service/-/language-service-14.2.12.tgz", + "integrity": "sha512-YmW6simyEVmpDmbYVUhZ2IxSP6pmsWrV120rB9Y21/BeM39WIXA4NCNirVWlAd/KAKY9O7Sbn1nXI6rSDfhopQ==", + "dev": true + }, + "@angular/platform-browser": { + "version": "14.2.12", + "resolved": "https://registry.npmjs.org/@angular/platform-browser/-/platform-browser-14.2.12.tgz", + "integrity": "sha512-vOarWym8ucl1gjYWCzdwyBha+MTvL381mvTTUu8aUx6nVhHFjv4bvpjlZnZgojecqUPyxOwmPLLHvCZPJVHZYg==", + "requires": { + "tslib": "^2.3.0" + } + }, + "@angular/platform-browser-dynamic": { + "version": "14.2.12", + "resolved": "https://registry.npmjs.org/@angular/platform-browser-dynamic/-/platform-browser-dynamic-14.2.12.tgz", + "integrity": "sha512-oZhNJeaBmgw8+KBSYpKz2RYqEDyETC+HJXH8dwIFcP6BqqwL2NE70FdSR7EnOa5c41MEtTmMCGhrJSFR60x5/w==", + "requires": { + "tslib": "^2.3.0" + } + }, + "@angular/router": { + "version": "14.2.12", + "resolved": "https://registry.npmjs.org/@angular/router/-/router-14.2.12.tgz", + "integrity": "sha512-r5tVus5RJDNc4U2v0jMtjPiAS1xDsVsJ70lS313DgZmBDHIVZP1cWIehdxwgNlGwQQtAA36eG7toBwqUU3gb/A==", + "requires": { + "tslib": "^2.3.0" + } + }, + "@angular/upgrade": { + "version": "14.2.12", + "resolved": "https://registry.npmjs.org/@angular/upgrade/-/upgrade-14.2.12.tgz", + "integrity": "sha512-oGsSyWdx0jh4hv4fxZQ4GaWfTxgiCpgiXlZJQq5FfoWu2r00bPzCCIiPsyx3CJvMQ5o4DbG/kLpwnw5Px8pxHA==", + "requires": { + "tslib": "^2.3.0" + } + }, + "@assemblyscript/loader": { + "version": "0.10.1", + "resolved": "https://registry.npmjs.org/@assemblyscript/loader/-/loader-0.10.1.tgz", + "integrity": "sha512-H71nDOOL8Y7kWRLqf6Sums+01Q5msqBW2KhDUTemh1tvY04eSkSXrK0uj/4mmY0Xr16/3zyZmsrxN7CKuRbNRg==", + "dev": true + }, + "@babel/code-frame": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.18.6.tgz", + "integrity": "sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q==", + "dev": true, + "requires": { + "@babel/highlight": "^7.18.6" + } + }, + "@babel/compat-data": { + "version": "7.20.5", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.20.5.tgz", + "integrity": "sha512-KZXo2t10+/jxmkhNXc7pZTqRvSOIvVv/+lJwHS+B2rErwOyjuVRh60yVpb7liQ1U5t7lLJ1bz+t8tSypUZdm0g==", + "dev": true + }, + "@babel/core": { + "version": "7.18.10", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.18.10.tgz", + "integrity": "sha512-JQM6k6ENcBFKVtWvLavlvi/mPcpYZ3+R+2EySDEMSMbp7Mn4FexlbbJVrx2R7Ijhr01T8gyqrOaABWIOgxeUyw==", + "dev": true, + "requires": { + "@ampproject/remapping": "^2.1.0", + "@babel/code-frame": "^7.18.6", + "@babel/generator": "^7.18.10", + "@babel/helper-compilation-targets": "^7.18.9", + "@babel/helper-module-transforms": "^7.18.9", + "@babel/helpers": "^7.18.9", + "@babel/parser": "^7.18.10", + "@babel/template": "^7.18.10", + "@babel/traverse": "^7.18.10", + "@babel/types": "^7.18.10", + "convert-source-map": "^1.7.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.2", + "json5": "^2.2.1", + "semver": "^6.3.0" }, "dependencies": { - "ansi-regex": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", - "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", "dev": true - }, - "anymatch": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-2.0.0.tgz", - "integrity": "sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw==", + } + } + }, + "@babel/generator": { + "version": "7.18.12", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.18.12.tgz", + "integrity": "sha512-dfQ8ebCN98SvyL7IxNMCUtZQSq5R7kxgN+r8qYTGDmmSion1hX2C0zq2yo1bsCDhXixokv1SAWTZUMYbO/V5zg==", + "dev": true, + "requires": { + "@babel/types": "^7.18.10", + "@jridgewell/gen-mapping": "^0.3.2", + "jsesc": "^2.5.1" + }, + "dependencies": { + "@jridgewell/gen-mapping": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz", + "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==", "dev": true, "requires": { - "micromatch": "^3.1.4", - "normalize-path": "^2.1.1" - }, - "dependencies": { - "normalize-path": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", - "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", - "dev": true, - "requires": { - "remove-trailing-separator": "^1.0.1" - } - } + "@jridgewell/set-array": "^1.0.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.9" } - }, - "binary-extensions": { - "version": "1.13.1", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.13.1.tgz", - "integrity": "sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw==", + } + } + }, + "@babel/helper-annotate-as-pure": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.18.6.tgz", + "integrity": "sha512-duORpUiYrEpzKIop6iNbjnwKLAKnJ47csTyRACyEmWj0QdUrm5aqNJGHSSEQSUAvNW0ojX0dOmK9dZduvkfeXA==", + "dev": true, + "requires": { + "@babel/types": "^7.18.6" + } + }, + "@babel/helper-builder-binary-assignment-operator-visitor": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.18.9.tgz", + "integrity": "sha512-yFQ0YCHoIqarl8BCRwBL8ulYUaZpz3bNsA7oFepAzee+8/+ImtADXNOmO5vJvsPff3qi+hvpkY/NYBTrBQgdNw==", + "dev": true, + "requires": { + "@babel/helper-explode-assignable-expression": "^7.18.6", + "@babel/types": "^7.18.9" + } + }, + "@babel/helper-compilation-targets": { + "version": "7.20.0", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.20.0.tgz", + "integrity": "sha512-0jp//vDGp9e8hZzBc6N/KwA5ZK3Wsm/pfm4CrY7vzegkVxc65SgSn6wYOnwHe9Js9HRQ1YTCKLGPzDtaS3RoLQ==", + "dev": true, + "requires": { + "@babel/compat-data": "^7.20.0", + "@babel/helper-validator-option": "^7.18.6", + "browserslist": "^4.21.3", + "semver": "^6.3.0" + }, + "dependencies": { + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", "dev": true - }, - "braces": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", - "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", - "dev": true, - "requires": { - "arr-flatten": "^1.1.0", - "array-unique": "^0.3.2", - "extend-shallow": "^2.0.1", - "fill-range": "^4.0.0", - "isobject": "^3.0.1", - "repeat-element": "^1.1.2", - "snapdragon": "^0.8.1", - "snapdragon-node": "^2.0.1", - "split-string": "^3.0.2", - "to-regex": "^3.0.1" - } - }, - "chokidar": { - "version": "2.1.8", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-2.1.8.tgz", - "integrity": "sha512-ZmZUazfOzf0Nve7duiCKD23PFSCs4JPoYyccjUFF3aQkQadqBhfzhjkwBH2mNOG9cTBwhamM37EIsIkZw3nRgg==", - "dev": true, - "requires": { - "anymatch": "^2.0.0", - "async-each": "^1.0.1", - "braces": "^2.3.2", - "fsevents": "^1.2.7", - "glob-parent": "^3.1.0", - "inherits": "^2.0.3", - "is-binary-path": "^1.0.0", - "is-glob": "^4.0.0", - "normalize-path": "^3.0.0", - "path-is-absolute": "^1.0.0", - "readdirp": "^2.2.1", - "upath": "^1.1.1" - } - }, - "emoji-regex": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", - "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", + } + } + }, + "@babel/helper-create-class-features-plugin": { + "version": "7.20.5", + "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.20.5.tgz", + "integrity": "sha512-3RCdA/EmEaikrhayahwToF0fpweU/8o2p8vhc1c/1kftHOdTKuC65kik/TLc+qfbS8JKw4qqJbne4ovICDhmww==", + "dev": true, + "requires": { + "@babel/helper-annotate-as-pure": "^7.18.6", + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-function-name": "^7.19.0", + "@babel/helper-member-expression-to-functions": "^7.18.9", + "@babel/helper-optimise-call-expression": "^7.18.6", + "@babel/helper-replace-supers": "^7.19.1", + "@babel/helper-split-export-declaration": "^7.18.6" + } + }, + "@babel/helper-create-regexp-features-plugin": { + "version": "7.20.5", + "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.20.5.tgz", + "integrity": "sha512-m68B1lkg3XDGX5yCvGO0kPx3v9WIYLnzjKfPcQiwntEQa5ZeRkPmo2X/ISJc8qxWGfwUr+kvZAeEzAwLec2r2w==", + "dev": true, + "requires": { + "@babel/helper-annotate-as-pure": "^7.18.6", + "regexpu-core": "^5.2.1" + } + }, + "@babel/helper-define-polyfill-provider": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.3.3.tgz", + "integrity": "sha512-z5aQKU4IzbqCC1XH0nAqfsFLMVSo22SBKUc0BxGrLkolTdPTructy0ToNnlO2zA4j9Q/7pjMZf0DSY+DSTYzww==", + "dev": true, + "requires": { + "@babel/helper-compilation-targets": "^7.17.7", + "@babel/helper-plugin-utils": "^7.16.7", + "debug": "^4.1.1", + "lodash.debounce": "^4.0.8", + "resolve": "^1.14.2", + "semver": "^6.1.2" + }, + "dependencies": { + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", "dev": true - }, - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - }, - "fill-range": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", - "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", - "dev": true, - "requires": { - "extend-shallow": "^2.0.1", - "is-number": "^3.0.0", - "repeat-string": "^1.6.1", - "to-regex-range": "^2.1.0" - } - }, - "fsevents": { - "version": "1.2.11", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.11.tgz", - "integrity": "sha512-+ux3lx6peh0BpvY0JebGyZoiR4D+oYzdPZMKJwkZ+sFkNJzpL7tXc/wehS49gUAxg3tmMHPHZkA8JU2rhhgDHw==", - "dev": true, - "optional": true, - "requires": { - "bindings": "^1.5.0", - "nan": "^2.12.1", - "node-pre-gyp": "*" - }, - "dependencies": { - "abbrev": { - "version": "1.1.1", - "bundled": true, - "dev": true, - "optional": true - }, - "ansi-regex": { - "version": "2.1.1", - "bundled": true, - "dev": true, - "optional": true - }, - "aproba": { - "version": "1.2.0", - "bundled": true, - "dev": true, - "optional": true - }, - "are-we-there-yet": { - "version": "1.1.5", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "delegates": "^1.0.0", - "readable-stream": "^2.0.6" - } - }, - "balanced-match": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "optional": true - }, - "brace-expansion": { - "version": "1.1.11", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "chownr": { - "version": "1.1.3", - "bundled": true, - "dev": true, - "optional": true - }, - "code-point-at": { - "version": "1.1.0", - "bundled": true, - "dev": true, - "optional": true - }, - "concat-map": { - "version": "0.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "console-control-strings": { - "version": "1.1.0", - "bundled": true, - "dev": true, - "optional": true - }, - "core-util-is": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "optional": true - }, - "debug": { - "version": "3.2.6", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "ms": "^2.1.1" - } - }, - "deep-extend": { - "version": "0.6.0", - "bundled": true, - "dev": true, - "optional": true - }, - "delegates": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "optional": true - }, - "detect-libc": { - "version": "1.0.3", - "bundled": true, - "dev": true, - "optional": true - }, - "fs-minipass": { - "version": "1.2.7", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "minipass": "^2.6.0" - } - }, - "fs.realpath": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "optional": true - }, - "gauge": { - "version": "2.7.4", - "bundled": true, - "dev": true, - "optional": true, - "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" - } - }, - "glob": { - "version": "7.1.6", - "bundled": true, - "dev": true, - "optional": 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" - } - }, - "has-unicode": { - "version": "2.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "iconv-lite": { - "version": "0.4.24", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "safer-buffer": ">= 2.1.2 < 3" - } - }, - "ignore-walk": { - "version": "3.0.3", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "minimatch": "^3.0.4" - } - }, - "inflight": { - "version": "1.0.6", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "inherits": { - "version": "2.0.4", - "bundled": true, - "dev": true, - "optional": true - }, - "ini": { - "version": "1.3.5", - "bundled": true, - "dev": true, - "optional": true - }, - "is-fullwidth-code-point": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "number-is-nan": "^1.0.0" - } - }, - "isarray": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "optional": true - }, - "minimatch": { - "version": "3.0.4", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "brace-expansion": "^1.1.7" - } - }, - "minimist": { - "version": "0.0.8", - "bundled": true, - "dev": true, - "optional": true - }, - "minipass": { - "version": "2.9.0", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "safe-buffer": "^5.1.2", - "yallist": "^3.0.0" - } - }, - "minizlib": { - "version": "1.3.3", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "minipass": "^2.9.0" - } - }, - "mkdirp": { - "version": "0.5.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "minimist": "0.0.8" - } - }, - "ms": { - "version": "2.1.2", - "bundled": true, - "dev": true, - "optional": true - }, - "needle": { - "version": "2.4.0", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "debug": "^3.2.6", - "iconv-lite": "^0.4.4", - "sax": "^1.2.4" - } - }, - "node-pre-gyp": { - "version": "0.14.0", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "detect-libc": "^1.0.2", - "mkdirp": "^0.5.1", - "needle": "^2.2.1", - "nopt": "^4.0.1", - "npm-packlist": "^1.1.6", - "npmlog": "^4.0.2", - "rc": "^1.2.7", - "rimraf": "^2.6.1", - "semver": "^5.3.0", - "tar": "^4.4.2" - } - }, - "nopt": { - "version": "4.0.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "abbrev": "1", - "osenv": "^0.1.4" - } - }, - "npm-bundled": { - "version": "1.1.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "npm-normalize-package-bin": "^1.0.1" - } - }, - "npm-normalize-package-bin": { - "version": "1.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "npm-packlist": { - "version": "1.4.7", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "ignore-walk": "^3.0.1", - "npm-bundled": "^1.0.1" - } - }, - "npmlog": { - "version": "4.1.2", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "are-we-there-yet": "~1.1.2", - "console-control-strings": "~1.1.0", - "gauge": "~2.7.3", - "set-blocking": "~2.0.0" - } - }, - "number-is-nan": { - "version": "1.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "object-assign": { - "version": "4.1.1", - "bundled": true, - "dev": true, - "optional": true - }, - "once": { - "version": "1.4.0", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "wrappy": "1" - } - }, - "os-homedir": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "optional": true - }, - "os-tmpdir": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "optional": true - }, - "osenv": { - "version": "0.1.5", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "os-homedir": "^1.0.0", - "os-tmpdir": "^1.0.0" - } - }, - "path-is-absolute": { - "version": "1.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "process-nextick-args": { - "version": "2.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "rc": { - "version": "1.2.8", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "deep-extend": "^0.6.0", - "ini": "~1.3.0", - "minimist": "^1.2.0", - "strip-json-comments": "~2.0.1" - }, - "dependencies": { - "minimist": { - "version": "1.2.0", - "bundled": true, - "dev": true, - "optional": true - } - } - }, - "readable-stream": { - "version": "2.3.6", - "bundled": true, - "dev": true, - "optional": 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" - } - }, - "rimraf": { - "version": "2.7.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "glob": "^7.1.3" - } - }, - "safe-buffer": { - "version": "5.1.2", - "bundled": true, - "dev": true, - "optional": true - }, - "safer-buffer": { - "version": "2.1.2", - "bundled": true, - "dev": true, - "optional": true - }, - "sax": { - "version": "1.2.4", - "bundled": true, - "dev": true, - "optional": true - }, - "semver": { - "version": "5.7.1", - "bundled": true, - "dev": true, - "optional": true - }, - "set-blocking": { - "version": "2.0.0", - "bundled": true, - "dev": true, - "optional": true - }, - "signal-exit": { - "version": "3.0.2", - "bundled": true, - "dev": true, - "optional": true - }, - "string-width": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "optional": true, - "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", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "safe-buffer": "~5.1.0" - } - }, - "strip-ansi": { - "version": "3.0.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "ansi-regex": "^2.0.0" - } - }, - "strip-json-comments": { - "version": "2.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "tar": { - "version": "4.4.13", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "chownr": "^1.1.1", - "fs-minipass": "^1.2.5", - "minipass": "^2.8.6", - "minizlib": "^1.2.1", - "mkdirp": "^0.5.0", - "safe-buffer": "^5.1.2", - "yallist": "^3.0.3" - } - }, - "util-deprecate": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "optional": true - }, - "wide-align": { - "version": "1.1.3", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "string-width": "^1.0.2 || 2" - } - }, - "wrappy": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "optional": true - }, - "yallist": { - "version": "3.1.1", - "bundled": true, - "dev": true, - "optional": 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 - }, - "is-binary-path": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz", - "integrity": "sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg=", - "dev": true, - "requires": { - "binary-extensions": "^1.0.0" - } - }, - "is-number": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", - "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", - "dev": true, - "requires": { - "kind-of": "^3.0.2" - } - }, - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - }, - "readdirp": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.2.1.tgz", - "integrity": "sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ==", - "dev": true, - "requires": { - "graceful-fs": "^4.1.11", - "micromatch": "^3.1.10", - "readable-stream": "^2.0.2" - } - }, - "require-main-filename": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz", - "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==", - "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 - }, - "string-width": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", - "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", - "dev": true, - "requires": { - "emoji-regex": "^7.0.1", - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^5.1.0" - } - }, - "strip-ansi": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", - "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", - "dev": true, - "requires": { - "ansi-regex": "^4.1.0" - } - }, - "to-regex-range": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", - "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=", - "dev": true, - "requires": { - "is-number": "^3.0.0", - "repeat-string": "^1.6.1" - } - }, - "yargs": { - "version": "13.1.0", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-13.1.0.tgz", - "integrity": "sha512-1UhJbXfzHiPqkfXNHYhiz79qM/kZqjTE8yGlEjZa85Q+3+OwcV6NRkV7XOV1W2Eom2bzILeUn55pQYffjVOLAg==", - "dev": true, - "requires": { - "cliui": "^4.0.0", - "find-up": "^3.0.0", - "get-caller-file": "^2.0.1", - "os-locale": "^3.1.0", - "require-directory": "^2.1.1", - "require-main-filename": "^2.0.0", - "set-blocking": "^2.0.0", - "string-width": "^3.0.0", - "which-module": "^2.0.0", - "y18n": "^4.0.0", - "yargs-parser": "^13.0.0" - } - }, - "yargs-parser": { - "version": "13.1.1", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.1.tgz", - "integrity": "sha512-oVAVsHz6uFrg3XQheFII8ESO2ssAf9luWuAd6Wexsu4F3OtIW0o8IribPXYrD4WC24LWtPrJlGy87y5udK+dxQ==", - "dev": true, - "requires": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" - } } } }, - "@angular/core": { - "version": "8.2.14", - "resolved": "https://registry.npmjs.org/@angular/core/-/core-8.2.14.tgz", - "integrity": "sha512-zeePkigi+hPh3rN7yoNENG/YUBUsIvUXdxx+AZq+QPaFeKEA2FBSrKn36ojHFrdJUjKzl0lPMEiGC2b6a6bo6g==", + "@babel/helper-environment-visitor": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.9.tgz", + "integrity": "sha512-3r/aACDJ3fhQ/EVgFy0hpj8oHyHpQc+LPtJoY9SzTThAsStm4Ptegq92vqKoE3vD706ZVFWITnMnxucw+S9Ipg==", + "dev": true + }, + "@babel/helper-explode-assignable-expression": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.18.6.tgz", + "integrity": "sha512-eyAYAsQmB80jNfg4baAtLeWAQHfHFiR483rzFK+BhETlGZaQC9bsfrugfXDCbRHLQbIA7U5NxhhOxN7p/dWIcg==", + "dev": true, "requires": { - "tslib": "^1.9.0" + "@babel/types": "^7.18.6" } }, - "@angular/forms": { - "version": "8.2.14", - "resolved": "https://registry.npmjs.org/@angular/forms/-/forms-8.2.14.tgz", - "integrity": "sha512-zhyKL3CFIqcyHJ/TQF/h1OZztK611a6rxuPHCrt/5Sn1SuBTJJQ1pPTkOYIDy6IrCrtyANc8qB6P17Mao71DNQ==", + "@babel/helper-function-name": { + "version": "7.19.0", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.19.0.tgz", + "integrity": "sha512-WAwHBINyrpqywkUH0nTnNgI5ina5TFn85HKS0pbPDfxFfhyR/aNQEn4hGi1P1JyT//I0t4OgXUlofzWILRvS5w==", + "dev": true, "requires": { - "tslib": "^1.9.0" + "@babel/template": "^7.18.10", + "@babel/types": "^7.19.0" } }, - "@angular/language-service": { - "version": "8.2.14", - "resolved": "https://registry.npmjs.org/@angular/language-service/-/language-service-8.2.14.tgz", - "integrity": "sha512-7EhN9JJbAJcH2xCa+rIOmekjiEuB0qwPdHuD5qn/wwMfRzMZo+Db4hHbR9KHrLH6H82PTwYKye/LLpDaZqoHOA==", - "dev": true + "@babel/helper-hoist-variables": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.18.6.tgz", + "integrity": "sha512-UlJQPkFqFULIcyW5sbzgbkxn2FKRgwWiRexcuaR8RNJRy8+LLveqPjwZV/bwrLZCN0eUHD/x8D0heK1ozuoo6Q==", + "dev": true, + "requires": { + "@babel/types": "^7.18.6" + } }, - "@angular/platform-browser": { - "version": "8.2.14", - "resolved": "https://registry.npmjs.org/@angular/platform-browser/-/platform-browser-8.2.14.tgz", - "integrity": "sha512-MtJptptyKzsE37JZ2VB/tI4cvMrdAH+cT9pMBYZd66YSZfKjIj5s+AZo7z8ncoskQSB1o3HMfDjSK7QXGx1mLQ==", + "@babel/helper-member-expression-to-functions": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.18.9.tgz", + "integrity": "sha512-RxifAh2ZoVU67PyKIO4AMi1wTenGfMR/O/ae0CCRqwgBAt5v7xjdtRw7UoSbsreKrQn5t7r89eruK/9JjYHuDg==", + "dev": true, "requires": { - "tslib": "^1.9.0" + "@babel/types": "^7.18.9" } }, - "@angular/platform-browser-dynamic": { - "version": "8.2.14", - "resolved": "https://registry.npmjs.org/@angular/platform-browser-dynamic/-/platform-browser-dynamic-8.2.14.tgz", - "integrity": "sha512-mO2JPR5kLU/A3AQngy9+R/Q5gaF9csMStBQjwsCRI0wNtlItOIGL6+wTYpiTuh/ux+WVN1F2sLcEYU4Zf1ud9A==", + "@babel/helper-module-imports": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.18.6.tgz", + "integrity": "sha512-0NFvs3VkuSYbFi1x2Vd6tKrywq+z/cLeYC/RJNFrIX/30Bf5aiGYbtvGXolEktzJH8o5E5KJ3tT+nkxuuZFVlA==", + "dev": true, "requires": { - "tslib": "^1.9.0" + "@babel/types": "^7.18.6" } }, - "@angular/router": { - "version": "8.2.14", - "resolved": "https://registry.npmjs.org/@angular/router/-/router-8.2.14.tgz", - "integrity": "sha512-DHA2BhODqV7F0g6ZKgFaZgbsqzHHWRcfWchCOrOVKu2rYiKUTwwHVLBgZAhrpNeinq2pWanVYSIhMr7wy+LfEA==", + "@babel/helper-module-transforms": { + "version": "7.20.2", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.20.2.tgz", + "integrity": "sha512-zvBKyJXRbmK07XhMuujYoJ48B5yvvmM6+wcpv6Ivj4Yg6qO7NOZOSnvZN9CRl1zz1Z4cKf8YejmCMh8clOoOeA==", + "dev": true, "requires": { - "tslib": "^1.9.0" + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-module-imports": "^7.18.6", + "@babel/helper-simple-access": "^7.20.2", + "@babel/helper-split-export-declaration": "^7.18.6", + "@babel/helper-validator-identifier": "^7.19.1", + "@babel/template": "^7.18.10", + "@babel/traverse": "^7.20.1", + "@babel/types": "^7.20.2" } }, - "@angular/upgrade": { - "version": "8.2.14", - "resolved": "https://registry.npmjs.org/@angular/upgrade/-/upgrade-8.2.14.tgz", - "integrity": "sha512-ggPFonnVg3LtPHxw/q/LIfzjCCwdZmmDaEzU+CO5lfzCB6FJRVdmxzMQ7/ZFMqid41GsDP7TvX4UxbKHS5+W/Q==", + "@babel/helper-optimise-call-expression": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.18.6.tgz", + "integrity": "sha512-HP59oD9/fEHQkdcbgFCnbmgH5vIQTJbxh2yf+CdM89/glUNnuzr87Q8GIjGEnOktTROemO0Pe0iPAYbqZuOUiA==", + "dev": true, "requires": { - "tslib": "^1.9.0" + "@babel/types": "^7.18.6" } }, - "@babel/code-frame": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.8.3.tgz", - "integrity": "sha512-a9gxpmdXtZEInkCSHUJDLHZVBgb1QS0jhss4cPP93EW7s+uC5bikET2twEF3KV+7rDblJcmNvTR7VJejqd2C2g==", + "@babel/helper-plugin-utils": { + "version": "7.20.2", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.20.2.tgz", + "integrity": "sha512-8RvlJG2mj4huQ4pZ+rU9lqKi9ZKiRmuvGuM2HlWmkmgOhbs6zEAw6IEiJ5cQqGbDzGZOhwuOQNtZMi/ENLjZoQ==", + "dev": true + }, + "@babel/helper-remap-async-to-generator": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.18.9.tgz", + "integrity": "sha512-dI7q50YKd8BAv3VEfgg7PS7yD3Rtbi2J1XMXaalXO0W0164hYLnh8zpjRS0mte9MfVp/tltvr/cfdXPvJr1opA==", "dev": true, "requires": { - "@babel/highlight": "^7.8.3" + "@babel/helper-annotate-as-pure": "^7.18.6", + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-wrap-function": "^7.18.9", + "@babel/types": "^7.18.9" } }, - "@babel/compat-data": { - "version": "7.8.6", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.8.6.tgz", - "integrity": "sha512-CurCIKPTkS25Mb8mz267vU95vy+TyUpnctEX2lV33xWNmHAfjruztgiPBbXZRh3xZZy1CYvGx6XfxyTVS+sk7Q==", + "@babel/helper-replace-supers": { + "version": "7.19.1", + "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.19.1.tgz", + "integrity": "sha512-T7ahH7wV0Hfs46SFh5Jz3s0B6+o8g3c+7TMxu7xKfmHikg7EAZ3I2Qk9LFhjxXq8sL7UkP5JflezNwoZa8WvWw==", "dev": true, "requires": { - "browserslist": "^4.8.5", - "invariant": "^2.2.4", - "semver": "^5.5.0" - }, - "dependencies": { - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "dev": true - } + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-member-expression-to-functions": "^7.18.9", + "@babel/helper-optimise-call-expression": "^7.18.6", + "@babel/traverse": "^7.19.1", + "@babel/types": "^7.19.0" } }, - "@babel/core": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.8.3.tgz", - "integrity": "sha512-4XFkf8AwyrEG7Ziu3L2L0Cv+WyY47Tcsp70JFmpftbAA1K7YL/sgE9jh9HyNj08Y/U50ItUchpN0w6HxAoX1rA==", + "@babel/helper-simple-access": { + "version": "7.20.2", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.20.2.tgz", + "integrity": "sha512-+0woI/WPq59IrqDYbVGfshjT5Dmk/nnbdpcF8SnMhhXObpTq2KNBdLFRFrkVdbDOyUmHBCxzm5FHV1rACIkIbA==", "dev": true, "requires": { - "@babel/code-frame": "^7.8.3", - "@babel/generator": "^7.8.3", - "@babel/helpers": "^7.8.3", - "@babel/parser": "^7.8.3", - "@babel/template": "^7.8.3", - "@babel/traverse": "^7.8.3", - "@babel/types": "^7.8.3", - "convert-source-map": "^1.7.0", - "debug": "^4.1.0", - "gensync": "^1.0.0-beta.1", - "json5": "^2.1.0", - "lodash": "^4.17.13", - "resolve": "^1.3.2", - "semver": "^5.4.1", - "source-map": "^0.5.0" - }, - "dependencies": { - "json5": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/json5/-/json5-2.1.1.tgz", - "integrity": "sha512-l+3HXD0GEI3huGq1njuqtzYK8OYJyXMkOLtQ53pjWh89tvWS2h6l+1zMkYWqlb57+SiQodKZyvMEFb2X+KrFhQ==", - "dev": true, - "requires": { - "minimist": "^1.2.0" - } - }, - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "dev": true - }, - "source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", - "dev": true - } + "@babel/types": "^7.20.2" } }, - "@babel/generator": { - "version": "7.8.7", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.8.7.tgz", - "integrity": "sha512-DQwjiKJqH4C3qGiyQCAExJHoZssn49JTMJgZ8SANGgVFdkupcUhLOdkAeoC6kmHZCPfoDG5M0b6cFlSN5wW7Ew==", + "@babel/helper-skip-transparent-expression-wrappers": { + "version": "7.20.0", + "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.20.0.tgz", + "integrity": "sha512-5y1JYeNKfvnT8sZcK9DVRtpTbGiomYIHviSP3OQWmDPU3DeH4a1ZlT/N2lyQ5P8egjcRaT/Y9aNqUxK0WsnIIg==", "dev": true, "requires": { - "@babel/types": "^7.8.7", - "jsesc": "^2.5.1", - "lodash": "^4.17.13", - "source-map": "^0.5.0" - }, - "dependencies": { - "source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", - "dev": true - } + "@babel/types": "^7.20.0" } }, - "@babel/helper-annotate-as-pure": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.8.3.tgz", - "integrity": "sha512-6o+mJrZBxOoEX77Ezv9zwW7WV8DdluouRKNY/IR5u/YTMuKHgugHOzYWlYvYLpLA9nPsQCAAASpCIbjI9Mv+Uw==", + "@babel/helper-split-export-declaration": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.18.6.tgz", + "integrity": "sha512-bde1etTx6ZyTmobl9LLMMQsaizFVZrquTEHOqKeQESMKo4PlObf+8+JA25ZsIpZhT/WEd39+vOdLXAFG/nELpA==", "dev": true, "requires": { - "@babel/types": "^7.8.3" + "@babel/types": "^7.18.6" } }, - "@babel/helper-builder-binary-assignment-operator-visitor": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.8.3.tgz", - "integrity": "sha512-5eFOm2SyFPK4Rh3XMMRDjN7lBH0orh3ss0g3rTYZnBQ+r6YPj7lgDyCvPphynHvUrobJmeMignBr6Acw9mAPlw==", - "dev": true, - "requires": { - "@babel/helper-explode-assignable-expression": "^7.8.3", - "@babel/types": "^7.8.3" - } + "@babel/helper-string-parser": { + "version": "7.19.4", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.19.4.tgz", + "integrity": "sha512-nHtDoQcuqFmwYNYPz3Rah5ph2p8PFeFCsZk9A/48dPc/rGocJ5J3hAAZ7pb76VWX3fZKu+uEr/FhH5jLx7umrw==", + "dev": true }, - "@babel/helper-call-delegate": { - "version": "7.8.7", - "resolved": "https://registry.npmjs.org/@babel/helper-call-delegate/-/helper-call-delegate-7.8.7.tgz", - "integrity": "sha512-doAA5LAKhsFCR0LAFIf+r2RSMmC+m8f/oQ+URnUET/rWeEzC0yTRmAGyWkD4sSu3xwbS7MYQ2u+xlt1V5R56KQ==", - "dev": true, - "requires": { - "@babel/helper-hoist-variables": "^7.8.3", - "@babel/traverse": "^7.8.3", - "@babel/types": "^7.8.7" - } + "@babel/helper-validator-identifier": { + "version": "7.19.1", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.19.1.tgz", + "integrity": "sha512-awrNfaMtnHUr653GgGEs++LlAvW6w+DcPrOliSMXWCKo597CwL5Acf/wWdNkf/tfEQE3mjkeD1YOVZOUV/od1w==", + "dev": true }, - "@babel/helper-compilation-targets": { - "version": "7.8.7", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.8.7.tgz", - "integrity": "sha512-4mWm8DCK2LugIS+p1yArqvG1Pf162upsIsjE7cNBjez+NjliQpVhj20obE520nao0o14DaTnFJv+Fw5a0JpoUw==", - "dev": true, - "requires": { - "@babel/compat-data": "^7.8.6", - "browserslist": "^4.9.1", - "invariant": "^2.2.4", - "levenary": "^1.1.1", - "semver": "^5.5.0" - }, - "dependencies": { - "browserslist": { - "version": "4.9.1", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.9.1.tgz", - "integrity": "sha512-Q0DnKq20End3raFulq6Vfp1ecB9fh8yUNV55s8sekaDDeqBaCtWlRHCUdaWyUeSSBJM7IbM6HcsyaeYqgeDhnw==", - "dev": true, - "requires": { - "caniuse-lite": "^1.0.30001030", - "electron-to-chromium": "^1.3.363", - "node-releases": "^1.1.50" - } - }, - "caniuse-lite": { - "version": "1.0.30001031", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001031.tgz", - "integrity": "sha512-DpAP5a1NGRLgYfaNCaXIRyGARi+3tJA2quZXNNA1Du26VyVkqvy2tznNu5ANyN1Y5aX44QDotZSVSUSi2uMGjg==", - "dev": true - }, - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "dev": true - } - } + "@babel/helper-validator-option": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.18.6.tgz", + "integrity": "sha512-XO7gESt5ouv/LRJdrVjkShckw6STTaB7l9BrpBaAHDeF5YZT+01PCwmR0SJHnkW6i8OwW/EVWRShfi4j2x+KQw==", + "dev": true }, - "@babel/helper-create-regexp-features-plugin": { - "version": "7.8.6", - "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.8.6.tgz", - "integrity": "sha512-bPyujWfsHhV/ztUkwGHz/RPV1T1TDEsSZDsN42JPehndA+p1KKTh3npvTadux0ZhCrytx9tvjpWNowKby3tM6A==", + "@babel/helper-wrap-function": { + "version": "7.20.5", + "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.20.5.tgz", + "integrity": "sha512-bYMxIWK5mh+TgXGVqAtnu5Yn1un+v8DDZtqyzKRLUzrh70Eal2O3aZ7aPYiMADO4uKlkzOiRiZ6GX5q3qxvW9Q==", "dev": true, "requires": { - "@babel/helper-annotate-as-pure": "^7.8.3", - "@babel/helper-regex": "^7.8.3", - "regexpu-core": "^4.6.0" + "@babel/helper-function-name": "^7.19.0", + "@babel/template": "^7.18.10", + "@babel/traverse": "^7.20.5", + "@babel/types": "^7.20.5" } }, - "@babel/helper-define-map": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-define-map/-/helper-define-map-7.8.3.tgz", - "integrity": "sha512-PoeBYtxoZGtct3md6xZOCWPcKuMuk3IHhgxsRRNtnNShebf4C8YonTSblsK4tvDbm+eJAw2HAPOfCr+Q/YRG/g==", + "@babel/helpers": { + "version": "7.20.6", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.20.6.tgz", + "integrity": "sha512-Pf/OjgfgFRW5bApskEz5pvidpim7tEDPlFtKcNRXWmfHGn9IEI2W2flqRQXTFb7gIPTyK++N6rVHuwKut4XK6w==", "dev": true, "requires": { - "@babel/helper-function-name": "^7.8.3", - "@babel/types": "^7.8.3", - "lodash": "^4.17.13" + "@babel/template": "^7.18.10", + "@babel/traverse": "^7.20.5", + "@babel/types": "^7.20.5" } }, - "@babel/helper-explode-assignable-expression": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.8.3.tgz", - "integrity": "sha512-N+8eW86/Kj147bO9G2uclsg5pwfs/fqqY5rwgIL7eTBklgXjcOJ3btzS5iM6AitJcftnY7pm2lGsrJVYLGjzIw==", + "@babel/highlight": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.18.6.tgz", + "integrity": "sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g==", "dev": true, "requires": { - "@babel/traverse": "^7.8.3", - "@babel/types": "^7.8.3" + "@babel/helper-validator-identifier": "^7.18.6", + "chalk": "^2.0.0", + "js-tokens": "^4.0.0" } }, - "@babel/helper-function-name": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.8.3.tgz", - "integrity": "sha512-BCxgX1BC2hD/oBlIFUgOCQDOPV8nSINxCwM3o93xP4P9Fq6aV5sgv2cOOITDMtCfQ+3PvHp3l689XZvAM9QyOA==", - "dev": true, - "requires": { - "@babel/helper-get-function-arity": "^7.8.3", - "@babel/template": "^7.8.3", - "@babel/types": "^7.8.3" - } + "@babel/parser": { + "version": "7.20.5", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.20.5.tgz", + "integrity": "sha512-r27t/cy/m9uKLXQNWWebeCUHgnAZq0CpG1OwKRxzJMP1vpSU4bSIK2hq+/cp0bQxetkXx38n09rNu8jVkcK/zA==", + "dev": true }, - "@babel/helper-get-function-arity": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.8.3.tgz", - "integrity": "sha512-FVDR+Gd9iLjUMY1fzE2SR0IuaJToR4RkCDARVfsBBPSP53GEqSFjD8gNyxg246VUyc/ALRxFaAK8rVG7UT7xRA==", + "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.18.6.tgz", + "integrity": "sha512-Dgxsyg54Fx1d4Nge8UnvTrED63vrwOdPmyvPzlNN/boaliRP54pm3pGzZD1SJUwrBA+Cs/xdG8kXX6Mn/RfISQ==", "dev": true, "requires": { - "@babel/types": "^7.8.3" + "@babel/helper-plugin-utils": "^7.18.6" } }, - "@babel/helper-hoist-variables": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.8.3.tgz", - "integrity": "sha512-ky1JLOjcDUtSc+xkt0xhYff7Z6ILTAHKmZLHPxAhOP0Nd77O+3nCsd6uSVYur6nJnCI029CrNbYlc0LoPfAPQg==", + "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.18.9.tgz", + "integrity": "sha512-AHrP9jadvH7qlOj6PINbgSuphjQUAK7AOT7DPjBo9EHoLhQTnnK5u45e1Hd4DbSQEO9nqPWtQ89r+XEOWFScKg==", "dev": true, "requires": { - "@babel/types": "^7.8.3" + "@babel/helper-plugin-utils": "^7.18.9", + "@babel/helper-skip-transparent-expression-wrappers": "^7.18.9", + "@babel/plugin-proposal-optional-chaining": "^7.18.9" } }, - "@babel/helper-member-expression-to-functions": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.8.3.tgz", - "integrity": "sha512-fO4Egq88utkQFjbPrSHGmGLFqmrshs11d46WI+WZDESt7Wu7wN2G2Iu+NMMZJFDOVRHAMIkB5SNh30NtwCA7RA==", + "@babel/plugin-proposal-async-generator-functions": { + "version": "7.18.10", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.18.10.tgz", + "integrity": "sha512-1mFuY2TOsR1hxbjCo4QL+qlIjV07p4H4EUYw2J/WCqsvFV6V9X9z9YhXbWndc/4fw+hYGlDT7egYxliMp5O6Ew==", "dev": true, "requires": { - "@babel/types": "^7.8.3" + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-plugin-utils": "^7.18.9", + "@babel/helper-remap-async-to-generator": "^7.18.9", + "@babel/plugin-syntax-async-generators": "^7.8.4" } }, - "@babel/helper-module-imports": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.8.3.tgz", - "integrity": "sha512-R0Bx3jippsbAEtzkpZ/6FIiuzOURPcMjHp+Z6xPe6DtApDJx+w7UYyOLanZqO8+wKR9G10s/FmHXvxaMd9s6Kg==", + "@babel/plugin-proposal-class-properties": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.18.6.tgz", + "integrity": "sha512-cumfXOF0+nzZrrN8Rf0t7M+tF6sZc7vhQwYQck9q1/5w2OExlD+b4v4RpMJFaV1Z7WcDRgO6FqvxqxGlwo+RHQ==", "dev": true, "requires": { - "@babel/types": "^7.8.3" + "@babel/helper-create-class-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" } }, - "@babel/helper-module-transforms": { - "version": "7.8.6", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.8.6.tgz", - "integrity": "sha512-RDnGJSR5EFBJjG3deY0NiL0K9TO8SXxS9n/MPsbPK/s9LbQymuLNtlzvDiNS7IpecuL45cMeLVkA+HfmlrnkRg==", + "@babel/plugin-proposal-class-static-block": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-static-block/-/plugin-proposal-class-static-block-7.18.6.tgz", + "integrity": "sha512-+I3oIiNxrCpup3Gi8n5IGMwj0gOCAjcJUSQEcotNnCCPMEnixawOQ+KeJPlgfjzx+FKQ1QSyZOWe7wmoJp7vhw==", "dev": true, "requires": { - "@babel/helper-module-imports": "^7.8.3", - "@babel/helper-replace-supers": "^7.8.6", - "@babel/helper-simple-access": "^7.8.3", - "@babel/helper-split-export-declaration": "^7.8.3", - "@babel/template": "^7.8.6", - "@babel/types": "^7.8.6", - "lodash": "^4.17.13" + "@babel/helper-create-class-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6", + "@babel/plugin-syntax-class-static-block": "^7.14.5" } }, - "@babel/helper-optimise-call-expression": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.8.3.tgz", - "integrity": "sha512-Kag20n86cbO2AvHca6EJsvqAd82gc6VMGule4HwebwMlwkpXuVqrNRj6CkCV2sKxgi9MyAUnZVnZ6lJ1/vKhHQ==", + "@babel/plugin-proposal-dynamic-import": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.18.6.tgz", + "integrity": "sha512-1auuwmK+Rz13SJj36R+jqFPMJWyKEDd7lLSdOj4oJK0UTgGueSAtkrCvz9ewmgyU/P941Rv2fQwZJN8s6QruXw==", "dev": true, "requires": { - "@babel/types": "^7.8.3" + "@babel/helper-plugin-utils": "^7.18.6", + "@babel/plugin-syntax-dynamic-import": "^7.8.3" } }, - "@babel/helper-plugin-utils": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.8.3.tgz", - "integrity": "sha512-j+fq49Xds2smCUNYmEHF9kGNkhbet6yVIBp4e6oeQpH1RUs/Ir06xUKzDjDkGcaaokPiTNs2JBWHjaE4csUkZQ==", - "dev": true - }, - "@babel/helper-regex": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-regex/-/helper-regex-7.8.3.tgz", - "integrity": "sha512-BWt0QtYv/cg/NecOAZMdcn/waj/5P26DR4mVLXfFtDokSR6fyuG0Pj+e2FqtSME+MqED1khnSMulkmGl8qWiUQ==", + "@babel/plugin-proposal-export-namespace-from": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-export-namespace-from/-/plugin-proposal-export-namespace-from-7.18.9.tgz", + "integrity": "sha512-k1NtHyOMvlDDFeb9G5PhUXuGj8m/wiwojgQVEhJ/fsVsMCpLyOP4h0uGEjYJKrRI+EVPlb5Jk+Gt9P97lOGwtA==", "dev": true, "requires": { - "lodash": "^4.17.13" + "@babel/helper-plugin-utils": "^7.18.9", + "@babel/plugin-syntax-export-namespace-from": "^7.8.3" } }, - "@babel/helper-remap-async-to-generator": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.8.3.tgz", - "integrity": "sha512-kgwDmw4fCg7AVgS4DukQR/roGp+jP+XluJE5hsRZwxCYGg+Rv9wSGErDWhlI90FODdYfd4xG4AQRiMDjjN0GzA==", + "@babel/plugin-proposal-json-strings": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.18.6.tgz", + "integrity": "sha512-lr1peyn9kOdbYc0xr0OdHTZ5FMqS6Di+H0Fz2I/JwMzGmzJETNeOFq2pBySw6X/KFL5EWDjlJuMsUGRFb8fQgQ==", "dev": true, "requires": { - "@babel/helper-annotate-as-pure": "^7.8.3", - "@babel/helper-wrap-function": "^7.8.3", - "@babel/template": "^7.8.3", - "@babel/traverse": "^7.8.3", - "@babel/types": "^7.8.3" + "@babel/helper-plugin-utils": "^7.18.6", + "@babel/plugin-syntax-json-strings": "^7.8.3" } }, - "@babel/helper-replace-supers": { - "version": "7.8.6", - "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.8.6.tgz", - "integrity": "sha512-PeMArdA4Sv/Wf4zXwBKPqVj7n9UF/xg6slNRtZW84FM7JpE1CbG8B612FyM4cxrf4fMAMGO0kR7voy1ForHHFA==", + "@babel/plugin-proposal-logical-assignment-operators": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-logical-assignment-operators/-/plugin-proposal-logical-assignment-operators-7.18.9.tgz", + "integrity": "sha512-128YbMpjCrP35IOExw2Fq+x55LMP42DzhOhX2aNNIdI9avSWl2PI0yuBWarr3RYpZBSPtabfadkH2yeRiMD61Q==", "dev": true, "requires": { - "@babel/helper-member-expression-to-functions": "^7.8.3", - "@babel/helper-optimise-call-expression": "^7.8.3", - "@babel/traverse": "^7.8.6", - "@babel/types": "^7.8.6" + "@babel/helper-plugin-utils": "^7.18.9", + "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4" } }, - "@babel/helper-simple-access": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.8.3.tgz", - "integrity": "sha512-VNGUDjx5cCWg4vvCTR8qQ7YJYZ+HBjxOgXEl7ounz+4Sn7+LMD3CFrCTEU6/qXKbA2nKg21CwhhBzO0RpRbdCw==", + "@babel/plugin-proposal-nullish-coalescing-operator": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.18.6.tgz", + "integrity": "sha512-wQxQzxYeJqHcfppzBDnm1yAY0jSRkUXR2z8RePZYrKwMKgMlE8+Z6LUno+bd6LvbGh8Gltvy74+9pIYkr+XkKA==", "dev": true, "requires": { - "@babel/template": "^7.8.3", - "@babel/types": "^7.8.3" + "@babel/helper-plugin-utils": "^7.18.6", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3" } }, - "@babel/helper-split-export-declaration": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.8.3.tgz", - "integrity": "sha512-3x3yOeyBhW851hroze7ElzdkeRXQYQbFIb7gLK1WQYsw2GWDay5gAJNw1sWJ0VFP6z5J1whqeXH/WCdCjZv6dA==", + "@babel/plugin-proposal-numeric-separator": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.18.6.tgz", + "integrity": "sha512-ozlZFogPqoLm8WBr5Z8UckIoE4YQ5KESVcNudyXOR8uqIkliTEgJ3RoketfG6pmzLdeZF0H/wjE9/cCEitBl7Q==", "dev": true, "requires": { - "@babel/types": "^7.8.3" + "@babel/helper-plugin-utils": "^7.18.6", + "@babel/plugin-syntax-numeric-separator": "^7.10.4" } }, - "@babel/helper-wrap-function": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.8.3.tgz", - "integrity": "sha512-LACJrbUET9cQDzb6kG7EeD7+7doC3JNvUgTEQOx2qaO1fKlzE/Bf05qs9w1oXQMmXlPO65lC3Tq9S6gZpTErEQ==", + "@babel/plugin-proposal-object-rest-spread": { + "version": "7.20.2", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.20.2.tgz", + "integrity": "sha512-Ks6uej9WFK+fvIMesSqbAto5dD8Dz4VuuFvGJFKgIGSkJuRGcrwGECPA1fDgQK3/DbExBJpEkTeYeB8geIFCSQ==", "dev": true, "requires": { - "@babel/helper-function-name": "^7.8.3", - "@babel/template": "^7.8.3", - "@babel/traverse": "^7.8.3", - "@babel/types": "^7.8.3" + "@babel/compat-data": "^7.20.1", + "@babel/helper-compilation-targets": "^7.20.0", + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/plugin-syntax-object-rest-spread": "^7.8.3", + "@babel/plugin-transform-parameters": "^7.20.1" } }, - "@babel/helpers": { - "version": "7.8.4", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.8.4.tgz", - "integrity": "sha512-VPbe7wcQ4chu4TDQjimHv/5tj73qz88o12EPkO2ValS2QiQS/1F2SsjyIGNnAD0vF/nZS6Cf9i+vW6HIlnaR8w==", + "@babel/plugin-proposal-optional-catch-binding": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.18.6.tgz", + "integrity": "sha512-Q40HEhs9DJQyaZfUjjn6vE8Cv4GmMHCYuMGIWUnlxH6400VGxOuwWsPt4FxXxJkC/5eOzgn0z21M9gMT4MOhbw==", "dev": true, "requires": { - "@babel/template": "^7.8.3", - "@babel/traverse": "^7.8.4", - "@babel/types": "^7.8.3" + "@babel/helper-plugin-utils": "^7.18.6", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.3" } }, - "@babel/highlight": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.8.3.tgz", - "integrity": "sha512-PX4y5xQUvy0fnEVHrYOarRPXVWafSjTW9T0Hab8gVIawpl2Sj0ORyrygANq+KjcNlSSTw0YCLSNA8OyZ1I4yEg==", + "@babel/plugin-proposal-optional-chaining": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.18.9.tgz", + "integrity": "sha512-v5nwt4IqBXihxGsW2QmCWMDS3B3bzGIk/EQVZz2ei7f3NJl8NzAJVvUmpDW5q1CRNY+Beb/k58UAH1Km1N411w==", "dev": true, "requires": { - "chalk": "^2.0.0", - "esutils": "^2.0.2", - "js-tokens": "^4.0.0" + "@babel/helper-plugin-utils": "^7.18.9", + "@babel/helper-skip-transparent-expression-wrappers": "^7.18.9", + "@babel/plugin-syntax-optional-chaining": "^7.8.3" } }, - "@babel/parser": { - "version": "7.8.7", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.8.7.tgz", - "integrity": "sha512-9JWls8WilDXFGxs0phaXAZgpxTZhSk/yOYH2hTHC0X1yC7Z78IJfvR1vJ+rmJKq3I35td2XzXzN6ZLYlna+r/A==", - "dev": true - }, - "@babel/plugin-proposal-async-generator-functions": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.8.3.tgz", - "integrity": "sha512-NZ9zLv848JsV3hs8ryEh7Uaz/0KsmPLqv0+PdkDJL1cJy0K4kOCFa8zc1E3mp+RHPQcpdfb/6GovEsW4VDrOMw==", + "@babel/plugin-proposal-private-methods": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-methods/-/plugin-proposal-private-methods-7.18.6.tgz", + "integrity": "sha512-nutsvktDItsNn4rpGItSNV2sz1XwS+nfU0Rg8aCx3W3NOKVzdMjJRu0O5OkgDp3ZGICSTbgRpxZoWsxoKRvbeA==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.8.3", - "@babel/helper-remap-async-to-generator": "^7.8.3", - "@babel/plugin-syntax-async-generators": "^7.8.0" + "@babel/helper-create-class-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" } }, - "@babel/plugin-proposal-dynamic-import": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.8.3.tgz", - "integrity": "sha512-NyaBbyLFXFLT9FP+zk0kYlUlA8XtCUbehs67F0nnEg7KICgMc2mNkIeu9TYhKzyXMkrapZFwAhXLdnt4IYHy1w==", + "@babel/plugin-proposal-private-property-in-object": { + "version": "7.20.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.20.5.tgz", + "integrity": "sha512-Vq7b9dUA12ByzB4EjQTPo25sFhY+08pQDBSZRtUAkj7lb7jahaHR5igera16QZ+3my1nYR4dKsNdYj5IjPHilQ==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.8.3", - "@babel/plugin-syntax-dynamic-import": "^7.8.0" + "@babel/helper-annotate-as-pure": "^7.18.6", + "@babel/helper-create-class-features-plugin": "^7.20.5", + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/plugin-syntax-private-property-in-object": "^7.14.5" } }, - "@babel/plugin-proposal-json-strings": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.8.3.tgz", - "integrity": "sha512-KGhQNZ3TVCQG/MjRbAUwuH+14y9q0tpxs1nWWs3pbSleRdDro9SAMMDyye8HhY1gqZ7/NqIc8SKhya0wRDgP1Q==", + "@babel/plugin-proposal-unicode-property-regex": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.18.6.tgz", + "integrity": "sha512-2BShG/d5yoZyXZfVePH91urL5wTG6ASZU9M4o03lKK8u8UW1y08OMttBSOADTcJrnPMpvDXRG3G8fyLh4ovs8w==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.8.3", - "@babel/plugin-syntax-json-strings": "^7.8.0" + "@babel/helper-create-regexp-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" } }, - "@babel/plugin-proposal-nullish-coalescing-operator": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.8.3.tgz", - "integrity": "sha512-TS9MlfzXpXKt6YYomudb/KU7nQI6/xnapG6in1uZxoxDghuSMZsPb6D2fyUwNYSAp4l1iR7QtFOjkqcRYcUsfw==", + "@babel/plugin-syntax-async-generators": { + "version": "7.8.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz", + "integrity": "sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.8.3", - "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.0" + "@babel/helper-plugin-utils": "^7.8.0" } }, - "@babel/plugin-proposal-object-rest-spread": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.8.3.tgz", - "integrity": "sha512-8qvuPwU/xxUCt78HocNlv0mXXo0wdh9VT1R04WU8HGOfaOob26pF+9P5/lYjN/q7DHOX1bvX60hnhOvuQUJdbA==", + "@babel/plugin-syntax-class-properties": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz", + "integrity": "sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.8.3", - "@babel/plugin-syntax-object-rest-spread": "^7.8.0" + "@babel/helper-plugin-utils": "^7.12.13" } }, - "@babel/plugin-proposal-optional-catch-binding": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.8.3.tgz", - "integrity": "sha512-0gkX7J7E+AtAw9fcwlVQj8peP61qhdg/89D5swOkjYbkboA2CVckn3kiyum1DE0wskGb7KJJxBdyEBApDLLVdw==", + "@babel/plugin-syntax-class-static-block": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-static-block/-/plugin-syntax-class-static-block-7.14.5.tgz", + "integrity": "sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.8.3", - "@babel/plugin-syntax-optional-catch-binding": "^7.8.0" + "@babel/helper-plugin-utils": "^7.14.5" } }, - "@babel/plugin-proposal-optional-chaining": { + "@babel/plugin-syntax-dynamic-import": { "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.8.3.tgz", - "integrity": "sha512-QIoIR9abkVn+seDE3OjA08jWcs3eZ9+wJCKSRgo3WdEU2csFYgdScb+8qHB3+WXsGJD55u+5hWCISI7ejXS+kg==", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz", + "integrity": "sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.8.3", - "@babel/plugin-syntax-optional-chaining": "^7.8.0" + "@babel/helper-plugin-utils": "^7.8.0" } }, - "@babel/plugin-proposal-unicode-property-regex": { + "@babel/plugin-syntax-export-namespace-from": { "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.8.3.tgz", - "integrity": "sha512-1/1/rEZv2XGweRwwSkLpY+s60za9OZ1hJs4YDqFHCw0kYWYwL5IFljVY1MYBL+weT1l9pokDO2uhSTLVxzoHkQ==", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-export-namespace-from/-/plugin-syntax-export-namespace-from-7.8.3.tgz", + "integrity": "sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q==", "dev": true, "requires": { - "@babel/helper-create-regexp-features-plugin": "^7.8.3", "@babel/helper-plugin-utils": "^7.8.3" } }, - "@babel/plugin-syntax-async-generators": { - "version": "7.8.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz", - "integrity": "sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==", + "@babel/plugin-syntax-import-assertions": { + "version": "7.20.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.20.0.tgz", + "integrity": "sha512-IUh1vakzNoWalR8ch/areW7qFopR2AEw03JlG7BbrDqmQ4X3q9uuipQwSGrUn7oGiemKjtSLDhNtQHzMHr1JdQ==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.8.0" + "@babel/helper-plugin-utils": "^7.19.0" } }, - "@babel/plugin-syntax-dynamic-import": { + "@babel/plugin-syntax-json-strings": { "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz", - "integrity": "sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz", + "integrity": "sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==", "dev": true, "requires": { "@babel/helper-plugin-utils": "^7.8.0" } }, - "@babel/plugin-syntax-json-strings": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz", - "integrity": "sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==", + "@babel/plugin-syntax-logical-assignment-operators": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz", + "integrity": "sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.8.0" + "@babel/helper-plugin-utils": "^7.10.4" } }, "@babel/plugin-syntax-nullish-coalescing-operator": { @@ -1538,6 +999,15 @@ "@babel/helper-plugin-utils": "^7.8.0" } }, + "@babel/plugin-syntax-numeric-separator": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz", + "integrity": "sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.10.4" + } + }, "@babel/plugin-syntax-object-rest-spread": { "version": "7.8.3", "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz", @@ -1565,1889 +1035,2049 @@ "@babel/helper-plugin-utils": "^7.8.0" } }, + "@babel/plugin-syntax-private-property-in-object": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-private-property-in-object/-/plugin-syntax-private-property-in-object-7.14.5.tgz", + "integrity": "sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.14.5" + } + }, "@babel/plugin-syntax-top-level-await": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.8.3.tgz", - "integrity": "sha512-kwj1j9lL/6Wd0hROD3b/OZZ7MSrZLqqn9RAZ5+cYYsflQ9HZBIKCUkr3+uL1MEJ1NePiUbf98jjiMQSv0NMR9g==", + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz", + "integrity": "sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.8.3" + "@babel/helper-plugin-utils": "^7.14.5" } }, "@babel/plugin-transform-arrow-functions": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.8.3.tgz", - "integrity": "sha512-0MRF+KC8EqH4dbuITCWwPSzsyO3HIWWlm30v8BbbpOrS1B++isGxPnnuq/IZvOX5J2D/p7DQalQm+/2PnlKGxg==", + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.18.6.tgz", + "integrity": "sha512-9S9X9RUefzrsHZmKMbDXxweEH+YlE8JJEuat9FdvW9Qh1cw7W64jELCtWNkPBPX5En45uy28KGvA/AySqUh8CQ==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.8.3" + "@babel/helper-plugin-utils": "^7.18.6" } }, "@babel/plugin-transform-async-to-generator": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.8.3.tgz", - "integrity": "sha512-imt9tFLD9ogt56Dd5CI/6XgpukMwd/fLGSrix2httihVe7LOGVPhyhMh1BU5kDM7iHD08i8uUtmV2sWaBFlHVQ==", + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.18.6.tgz", + "integrity": "sha512-ARE5wZLKnTgPW7/1ftQmSi1CmkqqHo2DNmtztFhvgtOWSDfq0Cq9/9L+KnZNYSNrydBekhW3rwShduf59RoXag==", "dev": true, "requires": { - "@babel/helper-module-imports": "^7.8.3", - "@babel/helper-plugin-utils": "^7.8.3", - "@babel/helper-remap-async-to-generator": "^7.8.3" + "@babel/helper-module-imports": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6", + "@babel/helper-remap-async-to-generator": "^7.18.6" } }, "@babel/plugin-transform-block-scoped-functions": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.8.3.tgz", - "integrity": "sha512-vo4F2OewqjbB1+yaJ7k2EJFHlTP3jR634Z9Cj9itpqNjuLXvhlVxgnjsHsdRgASR8xYDrx6onw4vW5H6We0Jmg==", + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.18.6.tgz", + "integrity": "sha512-ExUcOqpPWnliRcPqves5HJcJOvHvIIWfuS4sroBUenPuMdmW+SMHDakmtS7qOo13sVppmUijqeTv7qqGsvURpQ==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.8.3" + "@babel/helper-plugin-utils": "^7.18.6" } }, "@babel/plugin-transform-block-scoping": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.8.3.tgz", - "integrity": "sha512-pGnYfm7RNRgYRi7bids5bHluENHqJhrV4bCZRwc5GamaWIIs07N4rZECcmJL6ZClwjDz1GbdMZFtPs27hTB06w==", + "version": "7.20.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.20.5.tgz", + "integrity": "sha512-WvpEIW9Cbj9ApF3yJCjIEEf1EiNJLtXagOrL5LNWEZOo3jv8pmPoYTSNJQvqej8OavVlgOoOPw6/htGZro6IkA==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.8.3", - "lodash": "^4.17.13" + "@babel/helper-plugin-utils": "^7.20.2" } }, "@babel/plugin-transform-classes": { - "version": "7.8.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.8.6.tgz", - "integrity": "sha512-k9r8qRay/R6v5aWZkrEclEhKO6mc1CCQr2dLsVHBmOQiMpN6I2bpjX3vgnldUWeEI1GHVNByULVxZ4BdP4Hmdg==", - "dev": true, - "requires": { - "@babel/helper-annotate-as-pure": "^7.8.3", - "@babel/helper-define-map": "^7.8.3", - "@babel/helper-function-name": "^7.8.3", - "@babel/helper-optimise-call-expression": "^7.8.3", - "@babel/helper-plugin-utils": "^7.8.3", - "@babel/helper-replace-supers": "^7.8.6", - "@babel/helper-split-export-declaration": "^7.8.3", + "version": "7.20.2", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.20.2.tgz", + "integrity": "sha512-9rbPp0lCVVoagvtEyQKSo5L8oo0nQS/iif+lwlAz29MccX2642vWDlSZK+2T2buxbopotId2ld7zZAzRfz9j1g==", + "dev": true, + "requires": { + "@babel/helper-annotate-as-pure": "^7.18.6", + "@babel/helper-compilation-targets": "^7.20.0", + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-function-name": "^7.19.0", + "@babel/helper-optimise-call-expression": "^7.18.6", + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/helper-replace-supers": "^7.19.1", + "@babel/helper-split-export-declaration": "^7.18.6", "globals": "^11.1.0" } }, "@babel/plugin-transform-computed-properties": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.8.3.tgz", - "integrity": "sha512-O5hiIpSyOGdrQZRQ2ccwtTVkgUDBBiCuK//4RJ6UfePllUTCENOzKxfh6ulckXKc0DixTFLCfb2HVkNA7aDpzA==", + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.18.9.tgz", + "integrity": "sha512-+i0ZU1bCDymKakLxn5srGHrsAPRELC2WIbzwjLhHW9SIE1cPYkLCL0NlnXMZaM1vhfgA2+M7hySk42VBvrkBRw==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.8.3" + "@babel/helper-plugin-utils": "^7.18.9" } }, "@babel/plugin-transform-destructuring": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.8.3.tgz", - "integrity": "sha512-H4X646nCkiEcHZUZaRkhE2XVsoz0J/1x3VVujnn96pSoGCtKPA99ZZA+va+gK+92Zycd6OBKCD8tDb/731bhgQ==", + "version": "7.20.2", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.20.2.tgz", + "integrity": "sha512-mENM+ZHrvEgxLTBXUiQ621rRXZes3KWUv6NdQlrnr1TkWVw+hUjQBZuP2X32qKlrlG2BzgR95gkuCRSkJl8vIw==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.8.3" + "@babel/helper-plugin-utils": "^7.20.2" } }, "@babel/plugin-transform-dotall-regex": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.8.3.tgz", - "integrity": "sha512-kLs1j9Nn4MQoBYdRXH6AeaXMbEJFaFu/v1nQkvib6QzTj8MZI5OQzqmD83/2jEM1z0DLilra5aWO5YpyC0ALIw==", + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.18.6.tgz", + "integrity": "sha512-6S3jpun1eEbAxq7TdjLotAsl4WpQI9DxfkycRcKrjhQYzU87qpXdknpBg/e+TdcMehqGnLFi7tnFUBR02Vq6wg==", "dev": true, "requires": { - "@babel/helper-create-regexp-features-plugin": "^7.8.3", - "@babel/helper-plugin-utils": "^7.8.3" + "@babel/helper-create-regexp-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" } }, "@babel/plugin-transform-duplicate-keys": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.8.3.tgz", - "integrity": "sha512-s8dHiBUbcbSgipS4SMFuWGqCvyge5V2ZeAWzR6INTVC3Ltjig/Vw1G2Gztv0vU/hRG9X8IvKvYdoksnUfgXOEQ==", + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.18.9.tgz", + "integrity": "sha512-d2bmXCtZXYc59/0SanQKbiWINadaJXqtvIQIzd4+hNwkWBgyCd5F/2t1kXoUdvPMrxzPvhK6EMQRROxsue+mfw==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.8.3" + "@babel/helper-plugin-utils": "^7.18.9" } }, "@babel/plugin-transform-exponentiation-operator": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.8.3.tgz", - "integrity": "sha512-zwIpuIymb3ACcInbksHaNcR12S++0MDLKkiqXHl3AzpgdKlFNhog+z/K0+TGW+b0w5pgTq4H6IwV/WhxbGYSjQ==", + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.18.6.tgz", + "integrity": "sha512-wzEtc0+2c88FVR34aQmiz56dxEkxr2g8DQb/KfaFa1JYXOFVsbhvAonFN6PwVWj++fKmku8NP80plJ5Et4wqHw==", "dev": true, "requires": { - "@babel/helper-builder-binary-assignment-operator-visitor": "^7.8.3", - "@babel/helper-plugin-utils": "^7.8.3" + "@babel/helper-builder-binary-assignment-operator-visitor": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" } }, "@babel/plugin-transform-for-of": { - "version": "7.8.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.8.6.tgz", - "integrity": "sha512-M0pw4/1/KI5WAxPsdcUL/w2LJ7o89YHN3yLkzNjg7Yl15GlVGgzHyCU+FMeAxevHGsLVmUqbirlUIKTafPmzdw==", + "version": "7.18.8", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.18.8.tgz", + "integrity": "sha512-yEfTRnjuskWYo0k1mHUqrVWaZwrdq8AYbfrpqULOJOaucGSp4mNMVps+YtA8byoevxS/urwU75vyhQIxcCgiBQ==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.8.3" + "@babel/helper-plugin-utils": "^7.18.6" } }, "@babel/plugin-transform-function-name": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.8.3.tgz", - "integrity": "sha512-rO/OnDS78Eifbjn5Py9v8y0aR+aSYhDhqAwVfsTl0ERuMZyr05L1aFSCJnbv2mmsLkit/4ReeQ9N2BgLnOcPCQ==", + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.18.9.tgz", + "integrity": "sha512-WvIBoRPaJQ5yVHzcnJFor7oS5Ls0PYixlTYE63lCj2RtdQEl15M68FXQlxnG6wdraJIXRdR7KI+hQ7q/9QjrCQ==", "dev": true, "requires": { - "@babel/helper-function-name": "^7.8.3", - "@babel/helper-plugin-utils": "^7.8.3" + "@babel/helper-compilation-targets": "^7.18.9", + "@babel/helper-function-name": "^7.18.9", + "@babel/helper-plugin-utils": "^7.18.9" } }, "@babel/plugin-transform-literals": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.8.3.tgz", - "integrity": "sha512-3Tqf8JJ/qB7TeldGl+TT55+uQei9JfYaregDcEAyBZ7akutriFrt6C/wLYIer6OYhleVQvH/ntEhjE/xMmy10A==", + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.18.9.tgz", + "integrity": "sha512-IFQDSRoTPnrAIrI5zoZv73IFeZu2dhu6irxQjY9rNjTT53VmKg9fenjvoiOWOkJ6mm4jKVPtdMzBY98Fp4Z4cg==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.8.3" + "@babel/helper-plugin-utils": "^7.18.9" } }, "@babel/plugin-transform-member-expression-literals": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.8.3.tgz", - "integrity": "sha512-3Wk2EXhnw+rP+IDkK6BdtPKsUE5IeZ6QOGrPYvw52NwBStw9V1ZVzxgK6fSKSxqUvH9eQPR3tm3cOq79HlsKYA==", + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.18.6.tgz", + "integrity": "sha512-qSF1ihLGO3q+/g48k85tUjD033C29TNTVB2paCwZPVmOsjn9pClvYYrM2VeJpBY2bcNkuny0YUyTNRyRxJ54KA==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.8.3" + "@babel/helper-plugin-utils": "^7.18.6" } }, "@babel/plugin-transform-modules-amd": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.8.3.tgz", - "integrity": "sha512-MadJiU3rLKclzT5kBH4yxdry96odTUwuqrZM+GllFI/VhxfPz+k9MshJM+MwhfkCdxxclSbSBbUGciBngR+kEQ==", + "version": "7.19.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.19.6.tgz", + "integrity": "sha512-uG3od2mXvAtIFQIh0xrpLH6r5fpSQN04gIVovl+ODLdUMANokxQLZnPBHcjmv3GxRjnqwLuHvppjjcelqUFZvg==", "dev": true, "requires": { - "@babel/helper-module-transforms": "^7.8.3", - "@babel/helper-plugin-utils": "^7.8.3", - "babel-plugin-dynamic-import-node": "^2.3.0" + "@babel/helper-module-transforms": "^7.19.6", + "@babel/helper-plugin-utils": "^7.19.0" } }, "@babel/plugin-transform-modules-commonjs": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.8.3.tgz", - "integrity": "sha512-JpdMEfA15HZ/1gNuB9XEDlZM1h/gF/YOH7zaZzQu2xCFRfwc01NXBMHHSTT6hRjlXJJs5x/bfODM3LiCk94Sxg==", + "version": "7.19.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.19.6.tgz", + "integrity": "sha512-8PIa1ym4XRTKuSsOUXqDG0YaOlEuTVvHMe5JCfgBMOtHvJKw/4NGovEGN33viISshG/rZNVrACiBmPQLvWN8xQ==", "dev": true, "requires": { - "@babel/helper-module-transforms": "^7.8.3", - "@babel/helper-plugin-utils": "^7.8.3", - "@babel/helper-simple-access": "^7.8.3", - "babel-plugin-dynamic-import-node": "^2.3.0" + "@babel/helper-module-transforms": "^7.19.6", + "@babel/helper-plugin-utils": "^7.19.0", + "@babel/helper-simple-access": "^7.19.4" } }, "@babel/plugin-transform-modules-systemjs": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.8.3.tgz", - "integrity": "sha512-8cESMCJjmArMYqa9AO5YuMEkE4ds28tMpZcGZB/jl3n0ZzlsxOAi3mC+SKypTfT8gjMupCnd3YiXCkMjj2jfOg==", + "version": "7.19.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.19.6.tgz", + "integrity": "sha512-fqGLBepcc3kErfR9R3DnVpURmckXP7gj7bAlrTQyBxrigFqszZCkFkcoxzCp2v32XmwXLvbw+8Yq9/b+QqksjQ==", "dev": true, "requires": { - "@babel/helper-hoist-variables": "^7.8.3", - "@babel/helper-module-transforms": "^7.8.3", - "@babel/helper-plugin-utils": "^7.8.3", - "babel-plugin-dynamic-import-node": "^2.3.0" + "@babel/helper-hoist-variables": "^7.18.6", + "@babel/helper-module-transforms": "^7.19.6", + "@babel/helper-plugin-utils": "^7.19.0", + "@babel/helper-validator-identifier": "^7.19.1" } }, "@babel/plugin-transform-modules-umd": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.8.3.tgz", - "integrity": "sha512-evhTyWhbwbI3/U6dZAnx/ePoV7H6OUG+OjiJFHmhr9FPn0VShjwC2kdxqIuQ/+1P50TMrneGzMeyMTFOjKSnAw==", + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.18.6.tgz", + "integrity": "sha512-dcegErExVeXcRqNtkRU/z8WlBLnvD4MRnHgNs3MytRO1Mn1sHRyhbcpYbVMGclAqOjdW+9cfkdZno9dFdfKLfQ==", "dev": true, "requires": { - "@babel/helper-module-transforms": "^7.8.3", - "@babel/helper-plugin-utils": "^7.8.3" + "@babel/helper-module-transforms": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" } }, "@babel/plugin-transform-named-capturing-groups-regex": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.8.3.tgz", - "integrity": "sha512-f+tF/8UVPU86TrCb06JoPWIdDpTNSGGcAtaD9mLP0aYGA0OS0j7j7DHJR0GTFrUZPUU6loZhbsVZgTh0N+Qdnw==", + "version": "7.20.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.20.5.tgz", + "integrity": "sha512-mOW4tTzi5iTLnw+78iEq3gr8Aoq4WNRGpmSlrogqaiCBoR1HFhpU4JkpQFOHfeYx3ReVIFWOQJS4aZBRvuZ6mA==", "dev": true, "requires": { - "@babel/helper-create-regexp-features-plugin": "^7.8.3" + "@babel/helper-create-regexp-features-plugin": "^7.20.5", + "@babel/helper-plugin-utils": "^7.20.2" } }, "@babel/plugin-transform-new-target": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.8.3.tgz", - "integrity": "sha512-QuSGysibQpyxexRyui2vca+Cmbljo8bcRckgzYV4kRIsHpVeyeC3JDO63pY+xFZ6bWOBn7pfKZTqV4o/ix9sFw==", + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.18.6.tgz", + "integrity": "sha512-DjwFA/9Iu3Z+vrAn+8pBUGcjhxKguSMlsFqeCKbhb9BAV756v0krzVK04CRDi/4aqmk8BsHb4a/gFcaA5joXRw==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.8.3" + "@babel/helper-plugin-utils": "^7.18.6" } }, "@babel/plugin-transform-object-super": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.8.3.tgz", - "integrity": "sha512-57FXk+gItG/GejofIyLIgBKTas4+pEU47IXKDBWFTxdPd7F80H8zybyAY7UoblVfBhBGs2EKM+bJUu2+iUYPDQ==", + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.18.6.tgz", + "integrity": "sha512-uvGz6zk+pZoS1aTZrOvrbj6Pp/kK2mp45t2B+bTDre2UgsZZ8EZLSJtUg7m/no0zOJUWgFONpB7Zv9W2tSaFlA==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.8.3", - "@babel/helper-replace-supers": "^7.8.3" + "@babel/helper-plugin-utils": "^7.18.6", + "@babel/helper-replace-supers": "^7.18.6" } }, "@babel/plugin-transform-parameters": { - "version": "7.8.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.8.7.tgz", - "integrity": "sha512-brYWaEPTRimOctz2NDA3jnBbDi7SVN2T4wYuu0aqSzxC3nozFZngGaw29CJ9ZPweB7k+iFmZuoG3IVPIcXmD2g==", + "version": "7.20.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.20.5.tgz", + "integrity": "sha512-h7plkOmcndIUWXZFLgpbrh2+fXAi47zcUX7IrOQuZdLD0I0KvjJ6cvo3BEcAOsDOcZhVKGJqv07mkSqK0y2isQ==", "dev": true, "requires": { - "@babel/helper-call-delegate": "^7.8.7", - "@babel/helper-get-function-arity": "^7.8.3", - "@babel/helper-plugin-utils": "^7.8.3" + "@babel/helper-plugin-utils": "^7.20.2" } }, "@babel/plugin-transform-property-literals": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.8.3.tgz", - "integrity": "sha512-uGiiXAZMqEoQhRWMK17VospMZh5sXWg+dlh2soffpkAl96KAm+WZuJfa6lcELotSRmooLqg0MWdH6UUq85nmmg==", + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.18.6.tgz", + "integrity": "sha512-cYcs6qlgafTud3PAzrrRNbQtfpQ8+y/+M5tKmksS9+M1ckbH6kzY8MrexEM9mcA6JDsukE19iIRvAyYl463sMg==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.8.3" + "@babel/helper-plugin-utils": "^7.18.6" } }, "@babel/plugin-transform-regenerator": { - "version": "7.8.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.8.7.tgz", - "integrity": "sha512-TIg+gAl4Z0a3WmD3mbYSk+J9ZUH6n/Yc57rtKRnlA/7rcCvpekHXe0CMZHP1gYp7/KLe9GHTuIba0vXmls6drA==", + "version": "7.20.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.20.5.tgz", + "integrity": "sha512-kW/oO7HPBtntbsahzQ0qSE3tFvkFwnbozz3NWFhLGqH75vLEg+sCGngLlhVkePlCs3Jv0dBBHDzCHxNiFAQKCQ==", "dev": true, "requires": { - "regenerator-transform": "^0.14.2" + "@babel/helper-plugin-utils": "^7.20.2", + "regenerator-transform": "^0.15.1" } }, "@babel/plugin-transform-reserved-words": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.8.3.tgz", - "integrity": "sha512-mwMxcycN3omKFDjDQUl+8zyMsBfjRFr0Zn/64I41pmjv4NJuqcYlEtezwYtw9TFd9WR1vN5kiM+O0gMZzO6L0A==", + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.18.6.tgz", + "integrity": "sha512-oX/4MyMoypzHjFrT1CdivfKZ+XvIPMFXwwxHp/r0Ddy2Vuomt4HDFGmft1TAY2yiTKiNSsh3kjBAzcM8kSdsjA==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.8.3" + "@babel/helper-plugin-utils": "^7.18.6" + } + }, + "@babel/plugin-transform-runtime": { + "version": "7.18.10", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.18.10.tgz", + "integrity": "sha512-q5mMeYAdfEbpBAgzl7tBre/la3LeCxmDO1+wMXRdPWbcoMjR3GiXlCLk7JBZVVye0bqTGNMbt0yYVXX1B1jEWQ==", + "dev": true, + "requires": { + "@babel/helper-module-imports": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.9", + "babel-plugin-polyfill-corejs2": "^0.3.2", + "babel-plugin-polyfill-corejs3": "^0.5.3", + "babel-plugin-polyfill-regenerator": "^0.4.0", + "semver": "^6.3.0" + }, + "dependencies": { + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true + } } }, "@babel/plugin-transform-shorthand-properties": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.8.3.tgz", - "integrity": "sha512-I9DI6Odg0JJwxCHzbzW08ggMdCezoWcuQRz3ptdudgwaHxTjxw5HgdFJmZIkIMlRymL6YiZcped4TTCB0JcC8w==", + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.18.6.tgz", + "integrity": "sha512-eCLXXJqv8okzg86ywZJbRn19YJHU4XUa55oz2wbHhaQVn/MM+XhukiT7SYqp/7o00dg52Rj51Ny+Ecw4oyoygw==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.8.3" + "@babel/helper-plugin-utils": "^7.18.6" } }, "@babel/plugin-transform-spread": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.8.3.tgz", - "integrity": "sha512-CkuTU9mbmAoFOI1tklFWYYbzX5qCIZVXPVy0jpXgGwkplCndQAa58s2jr66fTeQnA64bDox0HL4U56CFYoyC7g==", + "version": "7.19.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.19.0.tgz", + "integrity": "sha512-RsuMk7j6n+r752EtzyScnWkQyuJdli6LdO5Klv8Yx0OfPVTcQkIUfS8clx5e9yHXzlnhOZF3CbQ8C2uP5j074w==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.8.3" + "@babel/helper-plugin-utils": "^7.19.0", + "@babel/helper-skip-transparent-expression-wrappers": "^7.18.9" } }, "@babel/plugin-transform-sticky-regex": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.8.3.tgz", - "integrity": "sha512-9Spq0vGCD5Bb4Z/ZXXSK5wbbLFMG085qd2vhL1JYu1WcQ5bXqZBAYRzU1d+p79GcHs2szYv5pVQCX13QgldaWw==", + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.18.6.tgz", + "integrity": "sha512-kfiDrDQ+PBsQDO85yj1icueWMfGfJFKN1KCkndygtu/C9+XUfydLC8Iv5UYJqRwy4zk8EcplRxEOeLyjq1gm6Q==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.8.3", - "@babel/helper-regex": "^7.8.3" + "@babel/helper-plugin-utils": "^7.18.6" } }, "@babel/plugin-transform-template-literals": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.8.3.tgz", - "integrity": "sha512-820QBtykIQOLFT8NZOcTRJ1UNuztIELe4p9DCgvj4NK+PwluSJ49we7s9FB1HIGNIYT7wFUJ0ar2QpCDj0escQ==", + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.18.9.tgz", + "integrity": "sha512-S8cOWfT82gTezpYOiVaGHrCbhlHgKhQt8XH5ES46P2XWmX92yisoZywf5km75wv5sYcXDUCLMmMxOLCtthDgMA==", "dev": true, "requires": { - "@babel/helper-annotate-as-pure": "^7.8.3", - "@babel/helper-plugin-utils": "^7.8.3" + "@babel/helper-plugin-utils": "^7.18.9" } }, "@babel/plugin-transform-typeof-symbol": { - "version": "7.8.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.8.4.tgz", - "integrity": "sha512-2QKyfjGdvuNfHsb7qnBBlKclbD4CfshH2KvDabiijLMGXPHJXGxtDzwIF7bQP+T0ysw8fYTtxPafgfs/c1Lrqg==", + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.18.9.tgz", + "integrity": "sha512-SRfwTtF11G2aemAZWivL7PD+C9z52v9EvMqH9BuYbabyPuKUvSWks3oCg6041pT925L4zVFqaVBeECwsmlguEw==", "dev": true, "requires": { - "@babel/helper-plugin-utils": "^7.8.3" + "@babel/helper-plugin-utils": "^7.18.9" + } + }, + "@babel/plugin-transform-unicode-escapes": { + "version": "7.18.10", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.18.10.tgz", + "integrity": "sha512-kKAdAI+YzPgGY/ftStBFXTI1LZFju38rYThnfMykS+IXy8BVx+res7s2fxf1l8I35DV2T97ezo6+SGrXz6B3iQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.18.9" } }, "@babel/plugin-transform-unicode-regex": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.8.3.tgz", - "integrity": "sha512-+ufgJjYdmWfSQ+6NS9VGUR2ns8cjJjYbrbi11mZBTaWm+Fui/ncTLFF28Ei1okavY+xkojGr1eJxNsWYeA5aZw==", + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.18.6.tgz", + "integrity": "sha512-gE7A6Lt7YLnNOL3Pb9BNeZvi+d8l7tcRrG4+pwJjK9hD2xX4mEvjlQW60G9EEmfXVYRPv9VRQcyegIVHCql/AA==", "dev": true, "requires": { - "@babel/helper-create-regexp-features-plugin": "^7.8.3", - "@babel/helper-plugin-utils": "^7.8.3" + "@babel/helper-create-regexp-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" } }, "@babel/preset-env": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.8.3.tgz", - "integrity": "sha512-Rs4RPL2KjSLSE2mWAx5/iCH+GC1ikKdxPrhnRS6PfFVaiZeom22VFKN4X8ZthyN61kAaR05tfXTbCvatl9WIQg==", - "dev": true, - "requires": { - "@babel/compat-data": "^7.8.0", - "@babel/helper-compilation-targets": "^7.8.3", - "@babel/helper-module-imports": "^7.8.3", - "@babel/helper-plugin-utils": "^7.8.3", - "@babel/plugin-proposal-async-generator-functions": "^7.8.3", - "@babel/plugin-proposal-dynamic-import": "^7.8.3", - "@babel/plugin-proposal-json-strings": "^7.8.3", - "@babel/plugin-proposal-nullish-coalescing-operator": "^7.8.3", - "@babel/plugin-proposal-object-rest-spread": "^7.8.3", - "@babel/plugin-proposal-optional-catch-binding": "^7.8.3", - "@babel/plugin-proposal-optional-chaining": "^7.8.3", - "@babel/plugin-proposal-unicode-property-regex": "^7.8.3", - "@babel/plugin-syntax-async-generators": "^7.8.0", - "@babel/plugin-syntax-dynamic-import": "^7.8.0", - "@babel/plugin-syntax-json-strings": "^7.8.0", - "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.0", - "@babel/plugin-syntax-object-rest-spread": "^7.8.0", - "@babel/plugin-syntax-optional-catch-binding": "^7.8.0", - "@babel/plugin-syntax-optional-chaining": "^7.8.0", - "@babel/plugin-syntax-top-level-await": "^7.8.3", - "@babel/plugin-transform-arrow-functions": "^7.8.3", - "@babel/plugin-transform-async-to-generator": "^7.8.3", - "@babel/plugin-transform-block-scoped-functions": "^7.8.3", - "@babel/plugin-transform-block-scoping": "^7.8.3", - "@babel/plugin-transform-classes": "^7.8.3", - "@babel/plugin-transform-computed-properties": "^7.8.3", - "@babel/plugin-transform-destructuring": "^7.8.3", - "@babel/plugin-transform-dotall-regex": "^7.8.3", - "@babel/plugin-transform-duplicate-keys": "^7.8.3", - "@babel/plugin-transform-exponentiation-operator": "^7.8.3", - "@babel/plugin-transform-for-of": "^7.8.3", - "@babel/plugin-transform-function-name": "^7.8.3", - "@babel/plugin-transform-literals": "^7.8.3", - "@babel/plugin-transform-member-expression-literals": "^7.8.3", - "@babel/plugin-transform-modules-amd": "^7.8.3", - "@babel/plugin-transform-modules-commonjs": "^7.8.3", - "@babel/plugin-transform-modules-systemjs": "^7.8.3", - "@babel/plugin-transform-modules-umd": "^7.8.3", - "@babel/plugin-transform-named-capturing-groups-regex": "^7.8.3", - "@babel/plugin-transform-new-target": "^7.8.3", - "@babel/plugin-transform-object-super": "^7.8.3", - "@babel/plugin-transform-parameters": "^7.8.3", - "@babel/plugin-transform-property-literals": "^7.8.3", - "@babel/plugin-transform-regenerator": "^7.8.3", - "@babel/plugin-transform-reserved-words": "^7.8.3", - "@babel/plugin-transform-shorthand-properties": "^7.8.3", - "@babel/plugin-transform-spread": "^7.8.3", - "@babel/plugin-transform-sticky-regex": "^7.8.3", - "@babel/plugin-transform-template-literals": "^7.8.3", - "@babel/plugin-transform-typeof-symbol": "^7.8.3", - "@babel/plugin-transform-unicode-regex": "^7.8.3", - "@babel/types": "^7.8.3", - "browserslist": "^4.8.2", - "core-js-compat": "^3.6.2", - "invariant": "^2.2.2", - "levenary": "^1.1.0", - "semver": "^5.5.0" + "version": "7.18.10", + "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.18.10.tgz", + "integrity": "sha512-wVxs1yjFdW3Z/XkNfXKoblxoHgbtUF7/l3PvvP4m02Qz9TZ6uZGxRVYjSQeR87oQmHco9zWitW5J82DJ7sCjvA==", + "dev": true, + "requires": { + "@babel/compat-data": "^7.18.8", + "@babel/helper-compilation-targets": "^7.18.9", + "@babel/helper-plugin-utils": "^7.18.9", + "@babel/helper-validator-option": "^7.18.6", + "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "^7.18.6", + "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.18.9", + "@babel/plugin-proposal-async-generator-functions": "^7.18.10", + "@babel/plugin-proposal-class-properties": "^7.18.6", + "@babel/plugin-proposal-class-static-block": "^7.18.6", + "@babel/plugin-proposal-dynamic-import": "^7.18.6", + "@babel/plugin-proposal-export-namespace-from": "^7.18.9", + "@babel/plugin-proposal-json-strings": "^7.18.6", + "@babel/plugin-proposal-logical-assignment-operators": "^7.18.9", + "@babel/plugin-proposal-nullish-coalescing-operator": "^7.18.6", + "@babel/plugin-proposal-numeric-separator": "^7.18.6", + "@babel/plugin-proposal-object-rest-spread": "^7.18.9", + "@babel/plugin-proposal-optional-catch-binding": "^7.18.6", + "@babel/plugin-proposal-optional-chaining": "^7.18.9", + "@babel/plugin-proposal-private-methods": "^7.18.6", + "@babel/plugin-proposal-private-property-in-object": "^7.18.6", + "@babel/plugin-proposal-unicode-property-regex": "^7.18.6", + "@babel/plugin-syntax-async-generators": "^7.8.4", + "@babel/plugin-syntax-class-properties": "^7.12.13", + "@babel/plugin-syntax-class-static-block": "^7.14.5", + "@babel/plugin-syntax-dynamic-import": "^7.8.3", + "@babel/plugin-syntax-export-namespace-from": "^7.8.3", + "@babel/plugin-syntax-import-assertions": "^7.18.6", + "@babel/plugin-syntax-json-strings": "^7.8.3", + "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", + "@babel/plugin-syntax-numeric-separator": "^7.10.4", + "@babel/plugin-syntax-object-rest-spread": "^7.8.3", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.3", + "@babel/plugin-syntax-optional-chaining": "^7.8.3", + "@babel/plugin-syntax-private-property-in-object": "^7.14.5", + "@babel/plugin-syntax-top-level-await": "^7.14.5", + "@babel/plugin-transform-arrow-functions": "^7.18.6", + "@babel/plugin-transform-async-to-generator": "^7.18.6", + "@babel/plugin-transform-block-scoped-functions": "^7.18.6", + "@babel/plugin-transform-block-scoping": "^7.18.9", + "@babel/plugin-transform-classes": "^7.18.9", + "@babel/plugin-transform-computed-properties": "^7.18.9", + "@babel/plugin-transform-destructuring": "^7.18.9", + "@babel/plugin-transform-dotall-regex": "^7.18.6", + "@babel/plugin-transform-duplicate-keys": "^7.18.9", + "@babel/plugin-transform-exponentiation-operator": "^7.18.6", + "@babel/plugin-transform-for-of": "^7.18.8", + "@babel/plugin-transform-function-name": "^7.18.9", + "@babel/plugin-transform-literals": "^7.18.9", + "@babel/plugin-transform-member-expression-literals": "^7.18.6", + "@babel/plugin-transform-modules-amd": "^7.18.6", + "@babel/plugin-transform-modules-commonjs": "^7.18.6", + "@babel/plugin-transform-modules-systemjs": "^7.18.9", + "@babel/plugin-transform-modules-umd": "^7.18.6", + "@babel/plugin-transform-named-capturing-groups-regex": "^7.18.6", + "@babel/plugin-transform-new-target": "^7.18.6", + "@babel/plugin-transform-object-super": "^7.18.6", + "@babel/plugin-transform-parameters": "^7.18.8", + "@babel/plugin-transform-property-literals": "^7.18.6", + "@babel/plugin-transform-regenerator": "^7.18.6", + "@babel/plugin-transform-reserved-words": "^7.18.6", + "@babel/plugin-transform-shorthand-properties": "^7.18.6", + "@babel/plugin-transform-spread": "^7.18.9", + "@babel/plugin-transform-sticky-regex": "^7.18.6", + "@babel/plugin-transform-template-literals": "^7.18.9", + "@babel/plugin-transform-typeof-symbol": "^7.18.9", + "@babel/plugin-transform-unicode-escapes": "^7.18.10", + "@babel/plugin-transform-unicode-regex": "^7.18.6", + "@babel/preset-modules": "^0.1.5", + "@babel/types": "^7.18.10", + "babel-plugin-polyfill-corejs2": "^0.3.2", + "babel-plugin-polyfill-corejs3": "^0.5.3", + "babel-plugin-polyfill-regenerator": "^0.4.0", + "core-js-compat": "^3.22.1", + "semver": "^6.3.0" }, "dependencies": { "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", "dev": true } } }, + "@babel/preset-modules": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.5.tgz", + "integrity": "sha512-A57th6YRG7oR3cq/yt/Y84MvGgE0eJG2F1JLhKuyG+jFxEgrd/HAMJatiFtmOiZurz+0DkrvbheCLaV5f2JfjA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0", + "@babel/plugin-proposal-unicode-property-regex": "^7.4.4", + "@babel/plugin-transform-dotall-regex": "^7.4.4", + "@babel/types": "^7.4.4", + "esutils": "^2.0.2" + } + }, "@babel/runtime": { - "version": "7.8.7", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.8.7.tgz", - "integrity": "sha512-+AATMUFppJDw6aiR5NVPHqIQBlV/Pj8wY/EZH+lmvRdUo9xBaz/rF3alAwFJQavvKfeOlPE7oaaDHVbcySbCsg==", + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.18.9.tgz", + "integrity": "sha512-lkqXDcvlFT5rvEjiu6+QYO+1GXrEHRo2LOtS7E4GtX5ESIZOgepqsZBVIj6Pv+a6zqsya9VCgiK1KAK4BvJDAw==", "dev": true, "requires": { "regenerator-runtime": "^0.13.4" - }, - "dependencies": { - "regenerator-runtime": { - "version": "0.13.4", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.4.tgz", - "integrity": "sha512-plpwicqEzfEyTQohIKktWigcLzmNStMGwbOUbykx51/29Z3JOGYldaaNGK7ngNXV+UcoqvIMmloZ48Sr74sd+g==", - "dev": true - } } }, "@babel/template": { - "version": "7.8.6", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.8.6.tgz", - "integrity": "sha512-zbMsPMy/v0PWFZEhQJ66bqjhH+z0JgMoBWuikXybgG3Gkd/3t5oQ1Rw2WQhnSrsOmsKXnZOx15tkC4qON/+JPg==", + "version": "7.18.10", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.18.10.tgz", + "integrity": "sha512-TI+rCtooWHr3QJ27kJxfjutghu44DLnasDMwpDqCXVTal9RLp3RSYNh4NdBrRP2cQAoG9A8juOQl6P6oZG4JxA==", "dev": true, "requires": { - "@babel/code-frame": "^7.8.3", - "@babel/parser": "^7.8.6", - "@babel/types": "^7.8.6" + "@babel/code-frame": "^7.18.6", + "@babel/parser": "^7.18.10", + "@babel/types": "^7.18.10" } }, "@babel/traverse": { - "version": "7.8.6", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.8.6.tgz", - "integrity": "sha512-2B8l0db/DPi8iinITKuo7cbPznLCEk0kCxDoB9/N6gGNg/gxOXiR/IcymAFPiBwk5w6TtQ27w4wpElgp9btR9A==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.8.3", - "@babel/generator": "^7.8.6", - "@babel/helper-function-name": "^7.8.3", - "@babel/helper-split-export-declaration": "^7.8.3", - "@babel/parser": "^7.8.6", - "@babel/types": "^7.8.6", + "version": "7.20.5", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.20.5.tgz", + "integrity": "sha512-WM5ZNN3JITQIq9tFZaw1ojLU3WgWdtkxnhM1AegMS+PvHjkM5IXjmYEGY7yukz5XS4sJyEf2VzWjI8uAavhxBQ==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.18.6", + "@babel/generator": "^7.20.5", + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-function-name": "^7.19.0", + "@babel/helper-hoist-variables": "^7.18.6", + "@babel/helper-split-export-declaration": "^7.18.6", + "@babel/parser": "^7.20.5", + "@babel/types": "^7.20.5", "debug": "^4.1.0", - "globals": "^11.1.0", - "lodash": "^4.17.13" + "globals": "^11.1.0" + }, + "dependencies": { + "@babel/generator": { + "version": "7.20.5", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.20.5.tgz", + "integrity": "sha512-jl7JY2Ykn9S0yj4DQP82sYvPU+T3g0HFcWTqDLqiuA9tGRNIj9VfbtXGAYTTkyNEnQk1jkMGOdYka8aG/lulCA==", + "dev": true, + "requires": { + "@babel/types": "^7.20.5", + "@jridgewell/gen-mapping": "^0.3.2", + "jsesc": "^2.5.1" + } + }, + "@jridgewell/gen-mapping": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz", + "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==", + "dev": true, + "requires": { + "@jridgewell/set-array": "^1.0.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.9" + } + } } }, "@babel/types": { - "version": "7.8.7", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.8.7.tgz", - "integrity": "sha512-k2TreEHxFA4CjGkL+GYjRyx35W0Mr7DP5+9q6WMkyKXB+904bYmG40syjMFV0oLlhhFCwWl0vA0DyzTDkwAiJw==", + "version": "7.20.5", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.20.5.tgz", + "integrity": "sha512-c9fst/h2/dcF7H+MJKZ2T0KjEQ8hY/BNnDk/H3XY8C4Aw/eWQXWn/lWntHF9ooUBnGmEvbfGrTgLWc+um0YDUg==", "dev": true, "requires": { - "esutils": "^2.0.2", - "lodash": "^4.17.13", + "@babel/helper-string-parser": "^7.19.4", + "@babel/helper-validator-identifier": "^7.19.1", "to-fast-properties": "^2.0.0" } }, - "@istanbuljs/schema": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.2.tgz", - "integrity": "sha512-tsAQNx32a8CoFhjhijUIhI4kccIAgmGhy8LZMZgGfmXcpMbPRUqn5LWmgRttILi6yeGmBJd2xsPkFMs0PzgPCw==", + "@colors/colors": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/@colors/colors/-/colors-1.5.0.tgz", + "integrity": "sha512-ooWCrlZP11i8GImSjTHYHLkvFDP48nS4+204nGb1RiX/WXYHmJA2III9/e2DWVabCESdW7hBAEzHRqUn9OUVvQ==", "dev": true }, - "@ngtools/webpack": { - "version": "8.3.25", - "resolved": "https://registry.npmjs.org/@ngtools/webpack/-/webpack-8.3.25.tgz", - "integrity": "sha512-yHvgxXUXlgdWijtzcRjTaUqzK+6TVK/8p7PreBR00GsLxhl4U1jQSC6yDaZUCjOaEkiczFWl4hEuC4wTU/hLdg==", + "@csstools/postcss-cascade-layers": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@csstools/postcss-cascade-layers/-/postcss-cascade-layers-1.1.1.tgz", + "integrity": "sha512-+KdYrpKC5TgomQr2DlZF4lDEpHcoxnj5IGddYYfBWJAKfj1JtuHUIqMa+E1pJJ+z3kvDViWMqyqPlG4Ja7amQA==", "dev": true, "requires": { - "@angular-devkit/core": "8.3.25", - "enhanced-resolve": "4.1.0", - "rxjs": "6.4.0", - "tree-kill": "1.2.2", - "webpack-sources": "1.4.3" + "@csstools/selector-specificity": "^2.0.2", + "postcss-selector-parser": "^6.0.10" } }, - "@schematics/angular": { - "version": "8.3.25", - "resolved": "https://registry.npmjs.org/@schematics/angular/-/angular-8.3.25.tgz", - "integrity": "sha512-/vEPtE+fvgsWPml/MVqzmlGPBujadPPNwaTuuj5Uz1aVcKeEYzLkbN8YQOpml4vxZHCF8RDwNdGiU4SZg63Jfg==", + "@csstools/postcss-color-function": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@csstools/postcss-color-function/-/postcss-color-function-1.1.1.tgz", + "integrity": "sha512-Bc0f62WmHdtRDjf5f3e2STwRAl89N2CLb+9iAwzrv4L2hncrbDwnQD9PCq0gtAt7pOI2leIV08HIBUd4jxD8cw==", "dev": true, "requires": { - "@angular-devkit/core": "8.3.25", - "@angular-devkit/schematics": "8.3.25" + "@csstools/postcss-progressive-custom-properties": "^1.1.0", + "postcss-value-parser": "^4.2.0" } }, - "@schematics/update": { - "version": "0.803.25", - "resolved": "https://registry.npmjs.org/@schematics/update/-/update-0.803.25.tgz", - "integrity": "sha512-VIlqhJsCStA3aO4llxZ7lAOvQUqppyZdrEO7f/ApIJmuofPQTkO5Hx21tnv0dyExwoqPCSIHzEu4Tmc0/TWM1A==", + "@csstools/postcss-font-format-keywords": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@csstools/postcss-font-format-keywords/-/postcss-font-format-keywords-1.0.1.tgz", + "integrity": "sha512-ZgrlzuUAjXIOc2JueK0X5sZDjCtgimVp/O5CEqTcs5ShWBa6smhWYbS0x5cVc/+rycTDbjjzoP0KTDnUneZGOg==", "dev": true, "requires": { - "@angular-devkit/core": "8.3.25", - "@angular-devkit/schematics": "8.3.25", - "@yarnpkg/lockfile": "1.1.0", - "ini": "1.3.5", - "pacote": "9.5.5", - "rxjs": "6.4.0", - "semver": "6.3.0", - "semver-intersect": "1.4.0" + "postcss-value-parser": "^4.2.0" } }, - "@sindresorhus/is": { - "version": "0.14.0", - "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-0.14.0.tgz", - "integrity": "sha512-9NET910DNaIPngYnLLPeg+Ogzqsi9uM4mSboU5y6p8S5DzMTVEsJZrawi+BoDNUVBa2DhJqQYUFvMDfgU062LQ==", - "dev": true - }, - "@szmarczak/http-timer": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@szmarczak/http-timer/-/http-timer-1.1.2.tgz", - "integrity": "sha512-XIB2XbzHTN6ieIjfIMV9hlVcfPU26s2vafYWQcZHWXHOxiaRZYEDKEwdl129Zyg50+foYV2jCgtrqSA6qNuNSA==", + "@csstools/postcss-hwb-function": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@csstools/postcss-hwb-function/-/postcss-hwb-function-1.0.2.tgz", + "integrity": "sha512-YHdEru4o3Rsbjmu6vHy4UKOXZD+Rn2zmkAmLRfPet6+Jz4Ojw8cbWxe1n42VaXQhD3CQUXXTooIy8OkVbUcL+w==", "dev": true, "requires": { - "defer-to-connect": "^1.0.1" + "postcss-value-parser": "^4.2.0" } }, - "@types/estree": { - "version": "0.0.42", - "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.42.tgz", - "integrity": "sha512-K1DPVvnBCPxzD+G51/cxVIoc2X8uUVl1zpJeE6iKcgHMj4+tbat5Xu4TjV7v2QSDbIeAfLi2hIk+u2+s0MlpUQ==", - "dev": true - }, - "@types/events": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@types/events/-/events-3.0.0.tgz", - "integrity": "sha512-EaObqwIvayI5a8dCzhFrjKzVwKLxjoG9T6Ppd5CEo07LRKfQ8Yokw54r5+Wq7FaBQ+yXRvQAYPrHwya1/UFt9g==", - "dev": true - }, - "@types/glob": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/@types/glob/-/glob-7.1.1.tgz", - "integrity": "sha512-1Bh06cbWJUHMC97acuD6UMG29nMt0Aqz1vF3guLfG+kHHJhy3AyohZFFxYk2f7Q1SQIrNwvncxAE0N/9s70F2w==", + "@csstools/postcss-ic-unit": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@csstools/postcss-ic-unit/-/postcss-ic-unit-1.0.1.tgz", + "integrity": "sha512-Ot1rcwRAaRHNKC9tAqoqNZhjdYBzKk1POgWfhN4uCOE47ebGcLRqXjKkApVDpjifL6u2/55ekkpnFcp+s/OZUw==", "dev": true, "requires": { - "@types/events": "*", - "@types/minimatch": "*", - "@types/node": "*" + "@csstools/postcss-progressive-custom-properties": "^1.1.0", + "postcss-value-parser": "^4.2.0" } }, - "@types/jasmine": { - "version": "3.3.16", - "resolved": "https://registry.npmjs.org/@types/jasmine/-/jasmine-3.3.16.tgz", - "integrity": "sha512-Nveep4zKGby8uIvG2AEUyYOwZS8uVeHK9TgbuWYSawUDDdIgfhCKz28QzamTo//Jk7Ztt9PO3f+vzlB6a4GV1Q==", - "dev": true - }, - "@types/jasminewd2": { - "version": "2.0.8", - "resolved": "https://registry.npmjs.org/@types/jasminewd2/-/jasminewd2-2.0.8.tgz", - "integrity": "sha512-d9p31r7Nxk0ZH0U39PTH0hiDlJ+qNVGjlt1ucOoTUptxb2v+Y5VMnsxfwN+i3hK4yQnqBi3FMmoMFcd1JHDxdg==", + "@csstools/postcss-is-pseudo-class": { + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/@csstools/postcss-is-pseudo-class/-/postcss-is-pseudo-class-2.0.7.tgz", + "integrity": "sha512-7JPeVVZHd+jxYdULl87lvjgvWldYu+Bc62s9vD/ED6/QTGjy0jy0US/f6BG53sVMTBJ1lzKZFpYmofBN9eaRiA==", "dev": true, "requires": { - "@types/jasmine": "*" + "@csstools/selector-specificity": "^2.0.0", + "postcss-selector-parser": "^6.0.10" } }, - "@types/minimatch": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-3.0.3.tgz", - "integrity": "sha512-tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA==", - "dev": true - }, - "@types/node": { - "version": "8.9.5", - "resolved": "https://registry.npmjs.org/@types/node/-/node-8.9.5.tgz", - "integrity": "sha512-jRHfWsvyMtXdbhnz5CVHxaBgnV6duZnPlQuRSo/dm/GnmikNcmZhxIES4E9OZjUmQ8C+HCl4KJux+cXN/ErGDQ==", - "dev": true - }, - "@types/normalize-package-data": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/@types/normalize-package-data/-/normalize-package-data-2.4.0.tgz", - "integrity": "sha512-f5j5b/Gf71L+dbqxIpQ4Z2WlmI/mPJ0fOkGGmFgtb6sAu97EPczzbS3/tJKxmcYDj55OX6ssqwDAWOHIYDRDGA==", - "dev": true - }, - "@types/q": { - "version": "0.0.32", - "resolved": "https://registry.npmjs.org/@types/q/-/q-0.0.32.tgz", - "integrity": "sha1-vShOV8hPEyXacCur/IKlMoGQwMU=", - "dev": true - }, - "@types/resolve": { - "version": "0.0.8", - "resolved": "https://registry.npmjs.org/@types/resolve/-/resolve-0.0.8.tgz", - "integrity": "sha512-auApPaJf3NPfe18hSoJkp8EbZzer2ISk7o8mCC3M9he/a04+gbMF97NkpD2S8riMGvm4BMRI59/SZQSaLTKpsQ==", + "@csstools/postcss-nested-calc": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@csstools/postcss-nested-calc/-/postcss-nested-calc-1.0.0.tgz", + "integrity": "sha512-JCsQsw1wjYwv1bJmgjKSoZNvf7R6+wuHDAbi5f/7MbFhl2d/+v+TvBTU4BJH3G1X1H87dHl0mh6TfYogbT/dJQ==", "dev": true, "requires": { - "@types/node": "*" + "postcss-value-parser": "^4.2.0" } }, - "@types/selenium-webdriver": { - "version": "3.0.17", - "resolved": "https://registry.npmjs.org/@types/selenium-webdriver/-/selenium-webdriver-3.0.17.tgz", - "integrity": "sha512-tGomyEuzSC1H28y2zlW6XPCaDaXFaD6soTdb4GNdmte2qfHtrKqhy0ZFs4r/1hpazCfEZqeTSRLvSasmEx89uw==", - "dev": true - }, - "@types/source-list-map": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/@types/source-list-map/-/source-list-map-0.1.2.tgz", - "integrity": "sha512-K5K+yml8LTo9bWJI/rECfIPrGgxdpeNbj+d53lwN4QjW1MCwlkhUms+gtdzigTeUyBr09+u8BwOIY3MXvHdcsA==", - "dev": true - }, - "@types/webpack-sources": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/@types/webpack-sources/-/webpack-sources-0.1.6.tgz", - "integrity": "sha512-FtAWR7wR5ocJ9+nP137DV81tveD/ZgB1sadnJ/axUGM3BUVfRPx8oQNMtv3JNfTeHx3VP7cXiyfR/jmtEsVHsQ==", + "@csstools/postcss-normalize-display-values": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@csstools/postcss-normalize-display-values/-/postcss-normalize-display-values-1.0.1.tgz", + "integrity": "sha512-jcOanIbv55OFKQ3sYeFD/T0Ti7AMXc9nM1hZWu8m/2722gOTxFg7xYu4RDLJLeZmPUVQlGzo4jhzvTUq3x4ZUw==", "dev": true, "requires": { - "@types/node": "*", - "@types/source-list-map": "*", - "source-map": "^0.6.1" - }, - "dependencies": { - "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 - } + "postcss-value-parser": "^4.2.0" } }, - "@uirouter/angular": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/@uirouter/angular/-/angular-6.0.1.tgz", - "integrity": "sha512-7UU3rv1rY0oobL3gUpeJ8QpazbgcDxG1JomBvzE7kYyxkVNBZ3rDhPRbzXTniaUXC2J56CEBE9PMtXNPDSxPyQ==", + "@csstools/postcss-oklab-function": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@csstools/postcss-oklab-function/-/postcss-oklab-function-1.1.1.tgz", + "integrity": "sha512-nJpJgsdA3dA9y5pgyb/UfEzE7W5Ka7u0CX0/HIMVBNWzWemdcTH3XwANECU6anWv/ao4vVNLTMxhiPNZsTK6iA==", + "dev": true, "requires": { - "tslib": "^1.9.0" + "@csstools/postcss-progressive-custom-properties": "^1.1.0", + "postcss-value-parser": "^4.2.0" } }, - "@uirouter/angular-hybrid": { - "version": "10.0.1", - "resolved": "https://registry.npmjs.org/@uirouter/angular-hybrid/-/angular-hybrid-10.0.1.tgz", - "integrity": "sha512-Htc38UxuijB0fEjEgzvV0oxd/3GbH6faO6Y9um7E3V33CLGnEfmQLG2lMVHOWkp3S3rx+/iIkdYKP/GClycEew==", + "@csstools/postcss-progressive-custom-properties": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/@csstools/postcss-progressive-custom-properties/-/postcss-progressive-custom-properties-1.3.0.tgz", + "integrity": "sha512-ASA9W1aIy5ygskZYuWams4BzafD12ULvSypmaLJT2jvQ8G0M3I8PRQhC0h7mG0Z3LI05+agZjqSR9+K9yaQQjA==", + "dev": true, "requires": { - "tslib": "^1.9.0" + "postcss-value-parser": "^4.2.0" } }, - "@uirouter/angularjs": { - "version": "1.0.25", - "resolved": "https://registry.npmjs.org/@uirouter/angularjs/-/angularjs-1.0.25.tgz", - "integrity": "sha512-kf9bxBhqa1ZUw0aDlz4H17VqAD30MVJY6HM7J628vDeNN9yZt7SDYpwqSrR3y6NBadZUPjaKsDoKsyQQSWArNA==", + "@csstools/postcss-stepped-value-functions": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@csstools/postcss-stepped-value-functions/-/postcss-stepped-value-functions-1.0.1.tgz", + "integrity": "sha512-dz0LNoo3ijpTOQqEJLY8nyaapl6umbmDcgj4AD0lgVQ572b2eqA1iGZYTTWhrcrHztWDDRAX2DGYyw2VBjvCvQ==", + "dev": true, "requires": { - "@uirouter/core": "6.0.4" + "postcss-value-parser": "^4.2.0" } }, - "@uirouter/core": { - "version": "6.0.4", - "resolved": "https://registry.npmjs.org/@uirouter/core/-/core-6.0.4.tgz", - "integrity": "sha512-TQ9XOzZY+jmWKkU4993MAEBIy7Bs3kijDzj+A6RHR8gq/3UoQm3Q/l1igfao5GZyBjid7eRVeipPK14ovCYQ3g==" - }, - "@uirouter/rx": { - "version": "0.6.5", - "resolved": "https://registry.npmjs.org/@uirouter/rx/-/rx-0.6.5.tgz", - "integrity": "sha512-srGdX+BAVTfpZ1Kl7tvdEN1ss8yctKO4YrGyy9E/4s80bGFp4KMe9Qf2L3UHn0iugBZlX7Nbmp305AQSzWXYrw==" + "@csstools/postcss-text-decoration-shorthand": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@csstools/postcss-text-decoration-shorthand/-/postcss-text-decoration-shorthand-1.0.0.tgz", + "integrity": "sha512-c1XwKJ2eMIWrzQenN0XbcfzckOLLJiczqy+YvfGmzoVXd7pT9FfObiSEfzs84bpE/VqfpEuAZ9tCRbZkZxxbdw==", + "dev": true, + "requires": { + "postcss-value-parser": "^4.2.0" + } }, - "@webassemblyjs/ast": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.8.5.tgz", - "integrity": "sha512-aJMfngIZ65+t71C3y2nBBg5FFG0Okt9m0XEgWZ7Ywgn1oMAT8cNwx00Uv1cQyHtidq0Xn94R4TAywO+LCQ+ZAQ==", + "@csstools/postcss-trigonometric-functions": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@csstools/postcss-trigonometric-functions/-/postcss-trigonometric-functions-1.0.2.tgz", + "integrity": "sha512-woKaLO///4bb+zZC2s80l+7cm07M7268MsyG3M0ActXXEFi6SuhvriQYcb58iiKGbjwwIU7n45iRLEHypB47Og==", "dev": true, "requires": { - "@webassemblyjs/helper-module-context": "1.8.5", - "@webassemblyjs/helper-wasm-bytecode": "1.8.5", - "@webassemblyjs/wast-parser": "1.8.5" + "postcss-value-parser": "^4.2.0" } }, - "@webassemblyjs/floating-point-hex-parser": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.8.5.tgz", - "integrity": "sha512-9p+79WHru1oqBh9ewP9zW95E3XAo+90oth7S5Re3eQnECGq59ly1Ri5tsIipKGpiStHsUYmY3zMLqtk3gTcOtQ==", + "@csstools/postcss-unset-value": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@csstools/postcss-unset-value/-/postcss-unset-value-1.0.2.tgz", + "integrity": "sha512-c8J4roPBILnelAsdLr4XOAR/GsTm0GJi4XpcfvoWk3U6KiTCqiFYc63KhRMQQX35jYMp4Ao8Ij9+IZRgMfJp1g==", "dev": true }, - "@webassemblyjs/helper-api-error": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.8.5.tgz", - "integrity": "sha512-Za/tnzsvnqdaSPOUXHyKJ2XI7PDX64kWtURyGiJJZKVEdFOsdKUCPTNEVFZq3zJ2R0G5wc2PZ5gvdTRFgm81zA==", + "@csstools/selector-specificity": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/@csstools/selector-specificity/-/selector-specificity-2.0.2.tgz", + "integrity": "sha512-IkpVW/ehM1hWKln4fCA3NzJU8KwD+kIOvPZA4cqxoJHtE21CCzjyp+Kxbu0i5I4tBNOlXPL9mjwnWlL0VEG4Fg==", "dev": true }, - "@webassemblyjs/helper-buffer": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.8.5.tgz", - "integrity": "sha512-Ri2R8nOS0U6G49Q86goFIPNgjyl6+oE1abW1pS84BuhP1Qcr5JqMwRFT3Ah3ADDDYGEgGs1iyb1DGX+kAi/c/Q==", + "@discoveryjs/json-ext": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/@discoveryjs/json-ext/-/json-ext-0.5.7.tgz", + "integrity": "sha512-dBVuXR082gk3jsFp7Rd/JI4kytwGHecnCoTtXFb7DB6CNHp4rg5k1bhg0nWdLGLnOV71lmDzGQaLMy8iPLY0pw==", "dev": true }, - "@webassemblyjs/helper-code-frame": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-code-frame/-/helper-code-frame-1.8.5.tgz", - "integrity": "sha512-VQAadSubZIhNpH46IR3yWO4kZZjMxN1opDrzePLdVKAZ+DFjkGD/rf4v1jap744uPVU6yjL/smZbRIIJTOUnKQ==", + "@esbuild/android-arm": { + "version": "0.15.18", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.15.18.tgz", + "integrity": "sha512-5GT+kcs2WVGjVs7+boataCkO5Fg0y4kCjzkB5bAip7H4jfnOS3dA6KPiww9W1OEKTKeAcUVhdZGvgI65OXmUnw==", "dev": true, - "requires": { - "@webassemblyjs/wast-printer": "1.8.5" - } + "optional": true + }, + "@esbuild/linux-loong64": { + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.15.5.tgz", + "integrity": "sha512-UHkDFCfSGTuXq08oQltXxSZmH1TXyWsL+4QhZDWvvLl6mEJQqk3u7/wq1LjhrrAXYIllaTtRSzUXl4Olkf2J8A==", + "dev": true, + "optional": true }, - "@webassemblyjs/helper-fsm": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-fsm/-/helper-fsm-1.8.5.tgz", - "integrity": "sha512-kRuX/saORcg8se/ft6Q2UbRpZwP4y7YrWsLXPbbmtepKr22i8Z4O3V5QE9DbZK908dh5Xya4Un57SDIKwB9eow==", + "@gar/promisify": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/@gar/promisify/-/promisify-1.1.3.tgz", + "integrity": "sha512-k2Ty1JcVojjJFwrg/ThKi2ujJ7XNLYaFGNB/bWT9wGR+oSMJHMa5w+CUq6p/pVrKeNNgA7pCqEcjSnHVoqJQFw==", "dev": true }, - "@webassemblyjs/helper-module-context": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-module-context/-/helper-module-context-1.8.5.tgz", - "integrity": "sha512-/O1B236mN7UNEU4t9X7Pj38i4VoU8CcMHyy3l2cV/kIF4U5KoHXDVqcDuOs1ltkac90IM4vZdHc52t1x8Yfs3g==", + "@istanbuljs/load-nyc-config": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz", + "integrity": "sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==", "dev": true, "requires": { - "@webassemblyjs/ast": "1.8.5", - "mamacro": "^0.0.3" + "camelcase": "^5.3.1", + "find-up": "^4.1.0", + "get-package-type": "^0.1.0", + "js-yaml": "^3.13.1", + "resolve-from": "^5.0.0" } }, - "@webassemblyjs/helper-wasm-bytecode": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.8.5.tgz", - "integrity": "sha512-Cu4YMYG3Ddl72CbmpjU/wbP6SACcOPVbHN1dI4VJNJVgFwaKf1ppeFJrwydOG3NDHxVGuCfPlLZNyEdIYlQ6QQ==", + "@istanbuljs/schema": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz", + "integrity": "sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==", "dev": true }, - "@webassemblyjs/helper-wasm-section": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.8.5.tgz", - "integrity": "sha512-VV083zwR+VTrIWWtgIUpqfvVdK4ff38loRmrdDBgBT8ADXYsEZ5mPQ4Nde90N3UYatHdYoDIFb7oHzMncI02tA==", + "@jridgewell/gen-mapping": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.1.1.tgz", + "integrity": "sha512-sQXCasFk+U8lWYEe66WxRDOE9PjVz4vSM51fTu3Hw+ClTpUSQb718772vH3pyS5pShp6lvQM7SxgIDXXXmOX7w==", "dev": true, "requires": { - "@webassemblyjs/ast": "1.8.5", - "@webassemblyjs/helper-buffer": "1.8.5", - "@webassemblyjs/helper-wasm-bytecode": "1.8.5", - "@webassemblyjs/wasm-gen": "1.8.5" + "@jridgewell/set-array": "^1.0.0", + "@jridgewell/sourcemap-codec": "^1.4.10" } }, - "@webassemblyjs/ieee754": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.8.5.tgz", - "integrity": "sha512-aaCvQYrvKbY/n6wKHb/ylAJr27GglahUO89CcGXMItrOBqRarUMxWLJgxm9PJNuKULwN5n1csT9bYoMeZOGF3g==", + "@jridgewell/resolve-uri": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz", + "integrity": "sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==", + "dev": true + }, + "@jridgewell/set-array": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz", + "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==", + "dev": true + }, + "@jridgewell/source-map": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.2.tgz", + "integrity": "sha512-m7O9o2uR8k2ObDysZYzdfhb08VuEml5oWGiosa1VdaPZ/A6QyPkAJuwN0Q1lhULOf6B7MtQmHENS743hWtCrgw==", "dev": true, "requires": { - "@xtuc/ieee754": "^1.2.0" + "@jridgewell/gen-mapping": "^0.3.0", + "@jridgewell/trace-mapping": "^0.3.9" + }, + "dependencies": { + "@jridgewell/gen-mapping": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz", + "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==", + "dev": true, + "requires": { + "@jridgewell/set-array": "^1.0.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.9" + } + } } }, - "@webassemblyjs/leb128": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.8.5.tgz", - "integrity": "sha512-plYUuUwleLIziknvlP8VpTgO4kqNaH57Y3JnNa6DLpu/sGcP6hbVdfdX5aHAV716pQBKrfuU26BJK29qY37J7A==", + "@jridgewell/sourcemap-codec": { + "version": "1.4.14", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz", + "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==", + "dev": true + }, + "@jridgewell/trace-mapping": { + "version": "0.3.17", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.17.tgz", + "integrity": "sha512-MCNzAp77qzKca9+W/+I0+sEpaUnZoeasnghNeVc41VZCEKaCH73Vq3BZZ/SzWIgrqE4H4ceI+p+b6C0mHf9T4g==", "dev": true, "requires": { - "@xtuc/long": "4.2.2" + "@jridgewell/resolve-uri": "3.1.0", + "@jridgewell/sourcemap-codec": "1.4.14" } }, - "@webassemblyjs/utf8": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.8.5.tgz", - "integrity": "sha512-U7zgftmQriw37tfD934UNInokz6yTmn29inT2cAetAsaU9YeVCveWEwhKL1Mg4yS7q//NGdzy79nlXh3bT8Kjw==", + "@leichtgewicht/ip-codec": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/@leichtgewicht/ip-codec/-/ip-codec-2.0.4.tgz", + "integrity": "sha512-Hcv+nVC0kZnQ3tD9GVu5xSMR4VVYOteQIr/hwFPVEvPdlXqgGEuRjiheChHgdM+JyqdgNcmzZOX/tnl0JOiI7A==", "dev": true }, - "@webassemblyjs/wasm-edit": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.8.5.tgz", - "integrity": "sha512-A41EMy8MWw5yvqj7MQzkDjU29K7UJq1VrX2vWLzfpRHt3ISftOXqrtojn7nlPsZ9Ijhp5NwuODuycSvfAO/26Q==", + "@ngtools/webpack": { + "version": "14.2.10", + "resolved": "https://registry.npmjs.org/@ngtools/webpack/-/webpack-14.2.10.tgz", + "integrity": "sha512-sLHapZLVub6mEz5b19tf1VfIV1w3tYfg7FNPLeni79aldxu1FbP1v2WmiFAnMzrswqyK0bhTtxrl+Z/CLKqyoQ==", + "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": { - "@webassemblyjs/ast": "1.8.5", - "@webassemblyjs/helper-buffer": "1.8.5", - "@webassemblyjs/helper-wasm-bytecode": "1.8.5", - "@webassemblyjs/helper-wasm-section": "1.8.5", - "@webassemblyjs/wasm-gen": "1.8.5", - "@webassemblyjs/wasm-opt": "1.8.5", - "@webassemblyjs/wasm-parser": "1.8.5", - "@webassemblyjs/wast-printer": "1.8.5" + "@nodelib/fs.stat": "2.0.5", + "run-parallel": "^1.1.9" } }, - "@webassemblyjs/wasm-gen": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.8.5.tgz", - "integrity": "sha512-BCZBT0LURC0CXDzj5FXSc2FPTsxwp3nWcqXQdOZE4U7h7i8FqtFK5Egia6f9raQLpEKT1VL7zr4r3+QX6zArWg==", + "@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": { - "@webassemblyjs/ast": "1.8.5", - "@webassemblyjs/helper-wasm-bytecode": "1.8.5", - "@webassemblyjs/ieee754": "1.8.5", - "@webassemblyjs/leb128": "1.8.5", - "@webassemblyjs/utf8": "1.8.5" + "@nodelib/fs.scandir": "2.1.5", + "fastq": "^1.6.0" } }, - "@webassemblyjs/wasm-opt": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.8.5.tgz", - "integrity": "sha512-HKo2mO/Uh9A6ojzu7cjslGaHaUU14LdLbGEKqTR7PBKwT6LdPtLLh9fPY33rmr5wcOMrsWDbbdCHq4hQUdd37Q==", + "@npmcli/fs": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/@npmcli/fs/-/fs-2.1.2.tgz", + "integrity": "sha512-yOJKRvohFOaLqipNtwYB9WugyZKhC/DZC4VYPmpaCzDBrA8YpK3qHZ8/HGscMnE4GqbkLNuVcCnxkeQEdGt6LQ==", "dev": true, "requires": { - "@webassemblyjs/ast": "1.8.5", - "@webassemblyjs/helper-buffer": "1.8.5", - "@webassemblyjs/wasm-gen": "1.8.5", - "@webassemblyjs/wasm-parser": "1.8.5" + "@gar/promisify": "^1.1.3", + "semver": "^7.3.5" } }, - "@webassemblyjs/wasm-parser": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.8.5.tgz", - "integrity": "sha512-pi0SYE9T6tfcMkthwcgCpL0cM9nRYr6/6fjgDtL6q/ZqKHdMWvxitRi5JcZ7RI4SNJJYnYNaWy5UUrHQy998lw==", + "@npmcli/git": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@npmcli/git/-/git-3.0.2.tgz", + "integrity": "sha512-CAcd08y3DWBJqJDpfuVL0uijlq5oaXaOJEKHKc4wqrjd00gkvTZB+nFuLn+doOOKddaQS9JfqtNoFCO2LCvA3w==", "dev": true, "requires": { - "@webassemblyjs/ast": "1.8.5", - "@webassemblyjs/helper-api-error": "1.8.5", - "@webassemblyjs/helper-wasm-bytecode": "1.8.5", - "@webassemblyjs/ieee754": "1.8.5", - "@webassemblyjs/leb128": "1.8.5", - "@webassemblyjs/utf8": "1.8.5" + "@npmcli/promise-spawn": "^3.0.0", + "lru-cache": "^7.4.4", + "mkdirp": "^1.0.4", + "npm-pick-manifest": "^7.0.0", + "proc-log": "^2.0.0", + "promise-inflight": "^1.0.1", + "promise-retry": "^2.0.1", + "semver": "^7.3.5", + "which": "^2.0.2" } }, - "@webassemblyjs/wast-parser": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-parser/-/wast-parser-1.8.5.tgz", - "integrity": "sha512-daXC1FyKWHF1i11obK086QRlsMsY4+tIOKgBqI1lxAnkp9xe9YMcgOxm9kLe+ttjs5aWV2KKE1TWJCN57/Btsg==", + "@npmcli/installed-package-contents": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/@npmcli/installed-package-contents/-/installed-package-contents-1.0.7.tgz", + "integrity": "sha512-9rufe0wnJusCQoLpV9ZPKIVP55itrM5BxOXs10DmdbRfgWtHy1LDyskbwRnBghuB0PrF7pNPOqREVtpz4HqzKw==", "dev": true, "requires": { - "@webassemblyjs/ast": "1.8.5", - "@webassemblyjs/floating-point-hex-parser": "1.8.5", - "@webassemblyjs/helper-api-error": "1.8.5", - "@webassemblyjs/helper-code-frame": "1.8.5", - "@webassemblyjs/helper-fsm": "1.8.5", - "@xtuc/long": "4.2.2" + "npm-bundled": "^1.1.1", + "npm-normalize-package-bin": "^1.0.1" } }, - "@webassemblyjs/wast-printer": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.8.5.tgz", - "integrity": "sha512-w0U0pD4EhlnvRyeJzBqaVSJAo9w/ce7/WPogeXLzGkO6hzhr4GnQIZ4W4uUt5b9ooAaXPtnXlj0gzsXEOUNYMg==", + "@npmcli/move-file": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/@npmcli/move-file/-/move-file-2.0.1.tgz", + "integrity": "sha512-mJd2Z5TjYWq/ttPLLGqArdtnC74J6bOzg4rMDnN+p1xTacZ2yPRCk2y0oSWQtygLR9YVQXgOcONrwtnk3JupxQ==", "dev": true, "requires": { - "@webassemblyjs/ast": "1.8.5", - "@webassemblyjs/wast-parser": "1.8.5", - "@xtuc/long": "4.2.2" + "mkdirp": "^1.0.4", + "rimraf": "^3.0.2" } }, - "@xtuc/ieee754": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz", - "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==", - "dev": true - }, - "@xtuc/long": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/@xtuc/long/-/long-4.2.2.tgz", - "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==", - "dev": true - }, - "@yarnpkg/lockfile": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@yarnpkg/lockfile/-/lockfile-1.1.0.tgz", - "integrity": "sha512-GpSwvyXOcOOlV70vbnzjj4fW5xW/FdUF6nQEt1ENy7m4ZCczi1+/buVUPAqmGfqznsORNFzUMjctTIp8a9tuCQ==", + "@npmcli/node-gyp": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@npmcli/node-gyp/-/node-gyp-2.0.0.tgz", + "integrity": "sha512-doNI35wIe3bBaEgrlPfdJPaCpUR89pJWep4Hq3aRdh6gKazIVWfs0jHttvSSoq47ZXgC7h73kDsUl8AoIQUB+A==", "dev": true }, - "JSONStream": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/JSONStream/-/JSONStream-1.3.5.tgz", - "integrity": "sha512-E+iruNOY8VV9s4JEbe1aNEm6MiszPRr/UfcHMz0TQh1BXSxHK+ASV1R6W4HpjBhSeS+54PIsAMCBmwD06LLsqQ==", - "dev": true, - "requires": { - "jsonparse": "^1.2.0", - "through": ">=2.2.7 <3" - } - }, - "accepts": { - "version": "1.3.7", - "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.7.tgz", - "integrity": "sha512-Il80Qs2WjYlJIBNzNkK6KYqlVMTbZLXgHx2oT0pU/fjRHyEp+PEfEPY0R3WCwAGVOtauxh1hOxNgIf5bv7dQpA==", + "@npmcli/promise-spawn": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@npmcli/promise-spawn/-/promise-spawn-3.0.0.tgz", + "integrity": "sha512-s9SgS+p3a9Eohe68cSI3fi+hpcZUmXq5P7w0kMlAsWVtR7XbK3ptkZqKT2cK1zLDObJ3sR+8P59sJE0w/KTL1g==", "dev": true, "requires": { - "mime-types": "~2.1.24", - "negotiator": "0.6.2" + "infer-owner": "^1.0.4" } }, - "acorn": { - "version": "6.4.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.4.0.tgz", - "integrity": "sha512-gac8OEcQ2Li1dxIEWGZzsp2BitJxwkwcOm0zHAJLcPJaVvm58FRnk6RkuLRpU1EujipU2ZFODv2P9DLMfnV8mw==", - "dev": true - }, - "adm-zip": { - "version": "0.4.14", - "resolved": "https://registry.npmjs.org/adm-zip/-/adm-zip-0.4.14.tgz", - "integrity": "sha512-/9aQCnQHF+0IiCl0qhXoK7qs//SwYE7zX8lsr/DNk1BRAHYxeLZPL4pguwK29gUEqasYQjqPtEpDRSWEkdHn9g==", - "dev": true - }, - "after": { - "version": "0.8.2", - "resolved": "https://registry.npmjs.org/after/-/after-0.8.2.tgz", - "integrity": "sha1-/ts5T58OAqqXaOcCvaI7UF+ufh8=", - "dev": true - }, - "agent-base": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-4.3.0.tgz", - "integrity": "sha512-salcGninV0nPrwpGNn4VTXBb1SOuXQBiqbrNXoeizJsHrsL6ERFM2Ne3JUSBWRE6aeNJI2ROP/WEEIDUiDe3cg==", + "@npmcli/run-script": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/@npmcli/run-script/-/run-script-4.2.1.tgz", + "integrity": "sha512-7dqywvVudPSrRCW5nTHpHgeWnbBtz8cFkOuKrecm6ih+oO9ciydhWt6OF7HlqupRRmB8Q/gECVdB9LMfToJbRg==", "dev": true, "requires": { - "es6-promisify": "^5.0.0" + "@npmcli/node-gyp": "^2.0.0", + "@npmcli/promise-spawn": "^3.0.0", + "node-gyp": "^9.0.0", + "read-package-json-fast": "^2.0.3", + "which": "^2.0.2" } }, - "agentkeepalive": { - "version": "3.5.2", - "resolved": "https://registry.npmjs.org/agentkeepalive/-/agentkeepalive-3.5.2.tgz", - "integrity": "sha512-e0L/HNe6qkQ7H19kTlRRqUibEAwDK5AFk6y3PtMsuut2VAH6+Q4xZml1tNDJD7kSAyqmbG/K08K5WEJYtUrSlQ==", + "@rollup/plugin-json": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/@rollup/plugin-json/-/plugin-json-4.1.0.tgz", + "integrity": "sha512-yfLbTdNS6amI/2OpmbiBoW12vngr5NW2jCJVZSBEz+H5KfUJZ2M7sDjk0U6GOOdCWFVScShte29o9NezJ53TPw==", "dev": true, "requires": { - "humanize-ms": "^1.2.1" + "@rollup/pluginutils": "^3.0.8" } }, - "ajv": { - "version": "6.10.2", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.10.2.tgz", - "integrity": "sha512-TXtUUEYHuaTEbLZWIKUr5pmBuhDLy+8KYtPYdcV8qC+pOZL+NKqYwvWSRrVXHn+ZmRRAu8vJTAznH7Oag6RVRw==", + "@rollup/plugin-node-resolve": { + "version": "13.3.0", + "resolved": "https://registry.npmjs.org/@rollup/plugin-node-resolve/-/plugin-node-resolve-13.3.0.tgz", + "integrity": "sha512-Lus8rbUo1eEcnS4yTFKLZrVumLPY+YayBdWXgFSHYhTT2iJbMhoaaBL3xl5NCdeRytErGr8tZ0L71BMRmnlwSw==", "dev": true, "requires": { - "fast-deep-equal": "^2.0.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" + "@rollup/pluginutils": "^3.1.0", + "@types/resolve": "1.17.1", + "deepmerge": "^4.2.2", + "is-builtin-module": "^3.1.0", + "is-module": "^1.0.0", + "resolve": "^1.19.0" } }, - "ajv-errors": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/ajv-errors/-/ajv-errors-1.0.1.tgz", - "integrity": "sha512-DCRfO/4nQ+89p/RK43i8Ezd41EqdGIU4ld7nGF8OQ14oc/we5rEntLCUa7+jrn3nn83BosfwZA0wb4pon2o8iQ==", - "dev": true - }, - "ajv-keywords": { - "version": "3.4.1", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.4.1.tgz", - "integrity": "sha512-RO1ibKvd27e6FEShVFfPALuHI3WjSVNeK5FIsmme/LYRNxjKuNj+Dt7bucLa6NdSv3JcVTyMlm9kGR84z1XpaQ==", - "dev": true - }, - "amdefine": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/amdefine/-/amdefine-1.0.1.tgz", - "integrity": "sha1-SlKCrBZHKek2Gbz9OtFR+BfOkfU=", - "dev": true - }, - "angular": { - "version": "1.5.11", - "resolved": "https://registry.npmjs.org/angular/-/angular-1.5.11.tgz", - "integrity": "sha1-jFunOG8VllyazzQp9ogVU6raMNY=" - }, - "ansi-align": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-align/-/ansi-align-3.0.0.tgz", - "integrity": "sha512-ZpClVKqXN3RGBmKibdfWzqCY4lnjEuoNzU5T0oEFpfd/z5qJHVarukridD4juLO2FXMiwUQxr9WqQtaYa8XRYw==", + "@rollup/pluginutils": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-3.1.0.tgz", + "integrity": "sha512-GksZ6pr6TpIjHm8h9lSQ8pi8BE9VeubNT0OMJ3B5uZJ8pz73NPiqOtCog/x2/QzM1ENChPKxMDhiQuRHsqc+lg==", "dev": true, "requires": { - "string-width": "^3.0.0" + "@types/estree": "0.0.39", + "estree-walker": "^1.0.1", + "picomatch": "^2.2.2" }, "dependencies": { - "ansi-regex": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", - "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", - "dev": true - }, - "emoji-regex": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", - "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", + "@types/estree": { + "version": "0.0.39", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.39.tgz", + "integrity": "sha512-EYNwp3bU+98cpU4lAWYYL7Zz+2gryWH1qbdDTidVd6hkiR6weksdbMadyXKXNPEkQFhXM+hVO9ZygomHXp+AIw==", "dev": true - }, - "string-width": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", - "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", - "dev": true, - "requires": { - "emoji-regex": "^7.0.1", - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^5.1.0" - } - }, - "strip-ansi": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", - "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", - "dev": true, - "requires": { - "ansi-regex": "^4.1.0" - } } } }, - "ansi-colors": { - "version": "3.2.4", - "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-3.2.4.tgz", - "integrity": "sha512-hHUXGagefjN2iRrID63xckIvotOXOojhQKWIPUZ4mNUZ9nLZW+7FMNoE1lOkEhNWYsx/7ysGIuJYCiMAA9FnrA==", - "dev": true - }, - "ansi-escapes": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.1.tgz", - "integrity": "sha512-JWF7ocqNrp8u9oqpgV+wH5ftbt+cfvv+PTjOvKLT3AdYly/LmORARfEVT1iyjwN+4MqE5UmVKoAdIBqeoCHgLA==", + "@schematics/angular": { + "version": "14.2.10", + "resolved": "https://registry.npmjs.org/@schematics/angular/-/angular-14.2.10.tgz", + "integrity": "sha512-YFTc/9QJdx422XcApizEcVLKoyknu8b9zHIlAepZCu7WkV8GPT0hvVEHQ7KBWys5aQ7pPZMT0JpZLeAz0F2xYQ==", "dev": true, "requires": { - "type-fest": "^0.11.0" + "@angular-devkit/core": "14.2.10", + "@angular-devkit/schematics": "14.2.10", + "jsonc-parser": "3.1.0" } }, - "ansi-html": { - "version": "0.0.7", - "resolved": "https://registry.npmjs.org/ansi-html/-/ansi-html-0.0.7.tgz", - "integrity": "sha1-gTWEAhliqenm/QOflA0S9WynhZ4=", + "@socket.io/component-emitter": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@socket.io/component-emitter/-/component-emitter-3.1.0.tgz", + "integrity": "sha512-+9jVqKhRSpsc591z5vX+X5Yyw+he/HCB4iQ/RYxw35CEPaY1gnsNE43nf9n9AaYjAQrTiI/mOwKUKdUs9vf7Xg==", "dev": true }, - "ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", + "@tootallnate/once": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-2.0.0.tgz", + "integrity": "sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A==", "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==", + "@types/body-parser": { + "version": "1.19.2", + "resolved": "https://registry.npmjs.org/@types/body-parser/-/body-parser-1.19.2.tgz", + "integrity": "sha512-ALYone6pm6QmwZoAgeyNksccT9Q4AWZQ6PvfwR37GT6r6FWUPguq6sUmNGSMV2Wr761oQoBxwGGa6DR5o1DC9g==", "dev": true, "requires": { - "color-convert": "^1.9.0" + "@types/connect": "*", + "@types/node": "*" } }, - "anymatch": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.1.tgz", - "integrity": "sha512-mM8522psRCqzV+6LhomX5wgp25YVibjh8Wj23I5RPkPppSVSjyKD2A2mBJmWGa+KN7f2D6LNh9jkBCeyLktzjg==", + "@types/bonjour": { + "version": "3.5.10", + "resolved": "https://registry.npmjs.org/@types/bonjour/-/bonjour-3.5.10.tgz", + "integrity": "sha512-p7ienRMiS41Nu2/igbJxxLDWrSZ0WxM8UQgCeO9KhoVF7cOVFkrKsiDr1EsJIla8vV3oEEjGcz11jc5yimhzZw==", "dev": true, "requires": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" + "@types/node": "*" } }, - "app-root-path": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/app-root-path/-/app-root-path-2.2.1.tgz", - "integrity": "sha512-91IFKeKk7FjfmezPKkwtaRvSpnUc4gDwPAjA1YZ9Gn0q0PPeW+vbeUsZuyDwjI7+QTHhcLen2v25fi/AmhvbJA==", - "dev": true + "@types/connect": { + "version": "3.4.35", + "resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.35.tgz", + "integrity": "sha512-cdeYyv4KWoEgpBISTxWvqYsVy444DOqehiF3fM3ne10AmJ62RSyNkUnxMJXHQWRQQX2eR94m5y1IZyDwBjV9FQ==", + "dev": true, + "requires": { + "@types/node": "*" + } }, - "append-transform": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/append-transform/-/append-transform-1.0.0.tgz", - "integrity": "sha512-P009oYkeHyU742iSZJzZZywj4QRJdnTWffaKuJQLablCZ1uz6/cW4yaRgcDaoQ+uwOxxnt0gRUcwfsNP2ri0gw==", + "@types/connect-history-api-fallback": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/@types/connect-history-api-fallback/-/connect-history-api-fallback-1.3.5.tgz", + "integrity": "sha512-h8QJa8xSb1WD4fpKBDcATDNGXghFj6/3GRWG6dhmRcu0RX1Ubasur2Uvx5aeEwlf0MwblEC2bMzzMQntxnw/Cw==", "dev": true, "requires": { - "default-require-extensions": "^2.0.0" + "@types/express-serve-static-core": "*", + "@types/node": "*" } }, - "aproba": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", - "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==", + "@types/cookie": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/@types/cookie/-/cookie-0.4.1.tgz", + "integrity": "sha512-XW/Aa8APYr6jSVVA1y/DEIZX0/GMKLEVekNG727R8cs56ahETkRAy/3DR7+fJyh7oUgGwNQaRfXCun0+KbWY7Q==", "dev": true }, - "argparse": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "@types/cors": { + "version": "2.8.13", + "resolved": "https://registry.npmjs.org/@types/cors/-/cors-2.8.13.tgz", + "integrity": "sha512-RG8AStHlUiV5ysZQKq97copd2UmVYw3/pRMLefISZ3S1hK104Cwm7iLQ3fTKx+lsUH2CE8FlLaYeEA2LSeqYUA==", "dev": true, "requires": { - "sprintf-js": "~1.0.2" + "@types/node": "*" } }, - "aria-query": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/aria-query/-/aria-query-3.0.0.tgz", - "integrity": "sha1-ZbP8wcoRVajJrmTW7uKX8V1RM8w=", + "@types/eslint": { + "version": "8.4.10", + "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.4.10.tgz", + "integrity": "sha512-Sl/HOqN8NKPmhWo2VBEPm0nvHnu2LL3v9vKo8MEq0EtbJ4eVzGPl41VNPvn5E1i5poMk4/XD8UriLHpJvEP/Nw==", "dev": true, "requires": { - "ast-types-flow": "0.0.7", - "commander": "^2.11.0" + "@types/estree": "*", + "@types/json-schema": "*" } }, - "arr-diff": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz", - "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=", - "dev": true - }, - "arr-flatten": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz", - "integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==", - "dev": true - }, - "arr-union": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz", - "integrity": "sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ=", - "dev": true - }, - "array-flatten": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-2.1.2.tgz", - "integrity": "sha512-hNfzcOV8W4NdualtqBFPyVO+54DSJuZGY9qT4pRroB6S9e3iiido2ISIC5h9R2sPJ8H3FHCIiEnsv1lPXO3KtQ==", - "dev": true - }, - "array-union": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz", - "integrity": "sha1-mjRBDk9OPaI96jdb5b5w8kd47Dk=", + "@types/eslint-scope": { + "version": "3.7.4", + "resolved": "https://registry.npmjs.org/@types/eslint-scope/-/eslint-scope-3.7.4.tgz", + "integrity": "sha512-9K4zoImiZc3HlIp6AVUDE4CWYx22a+lhSZMYNpbjW04+YF0KWj4pJXnEMjdnFTiQibFFmElcsasJXDbdI/EPhA==", "dev": true, "requires": { - "array-uniq": "^1.0.1" + "@types/eslint": "*", + "@types/estree": "*" } }, - "array-uniq": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz", - "integrity": "sha1-r2rId6Jcx/dOBYiUdThY39sk/bY=", - "dev": true - }, - "array-unique": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz", - "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=", - "dev": true - }, - "arraybuffer.slice": { - "version": "0.0.7", - "resolved": "https://registry.npmjs.org/arraybuffer.slice/-/arraybuffer.slice-0.0.7.tgz", - "integrity": "sha512-wGUIVQXuehL5TCqQun8OW81jGzAWycqzFF8lFp+GOM5BXLYj3bKNsYC4daB7n6XjCqxQA/qgTJ+8ANR3acjrog==", - "dev": true - }, - "arrify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", - "integrity": "sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0=", - "dev": true - }, - "asap": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz", - "integrity": "sha1-5QNHYR1+aQlDIIu9r+vLwvuGbUY=", + "@types/estree": { + "version": "0.0.51", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.51.tgz", + "integrity": "sha512-CuPgU6f3eT/XgKKPqKd/gLZV1Xmvf1a2R5POBOGQa6uv82xpls89HU5zKeVoyR8XzHd1RGNOlQlvUe3CFkjWNQ==", "dev": true }, - "asn1": { - "version": "0.2.4", - "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.4.tgz", - "integrity": "sha512-jxwzQpLQjSmWXgwaCZE9Nz+glAG01yF1QnWgbhGwHI5A6FRIEY6IVqtHhIepHqI7/kyEyQEagBC5mBEFlIYvdg==", + "@types/express": { + "version": "4.17.14", + "resolved": "https://registry.npmjs.org/@types/express/-/express-4.17.14.tgz", + "integrity": "sha512-TEbt+vaPFQ+xpxFLFssxUDXj5cWCxZJjIcB7Yg0k0GMHGtgtQgpvx/MUQUeAkNbA9AAGrwkAsoeItdTgS7FMyg==", "dev": true, "requires": { - "safer-buffer": "~2.1.0" + "@types/body-parser": "*", + "@types/express-serve-static-core": "^4.17.18", + "@types/qs": "*", + "@types/serve-static": "*" } }, - "asn1.js": { - "version": "4.10.1", - "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-4.10.1.tgz", - "integrity": "sha512-p32cOF5q0Zqs9uBiONKYLm6BClCoBCM5O9JfeUSlnQLBTxYdTK+pW+nXflm8UkKd2UYlEbYz5qEi0JuZR9ckSw==", + "@types/express-serve-static-core": { + "version": "4.17.31", + "resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.17.31.tgz", + "integrity": "sha512-DxMhY+NAsTwMMFHBTtJFNp5qiHKJ7TeqOo23zVEM9alT1Ml27Q3xcTH0xwxn7Q0BbMcVEJOs/7aQtUWupUQN3Q==", "dev": true, "requires": { - "bn.js": "^4.0.0", - "inherits": "^2.0.1", - "minimalistic-assert": "^1.0.0" + "@types/node": "*", + "@types/qs": "*", + "@types/range-parser": "*" } }, - "assert": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/assert/-/assert-1.5.0.tgz", - "integrity": "sha512-EDsgawzwoun2CZkCgtxJbv392v4nbk9XDD06zI+kQYoBM/3RBWLlEyJARDOmhAAosBjWACEkKL6S+lIZtcAubA==", + "@types/http-proxy": { + "version": "1.17.9", + "resolved": "https://registry.npmjs.org/@types/http-proxy/-/http-proxy-1.17.9.tgz", + "integrity": "sha512-QsbSjA/fSk7xB+UXlCT3wHBy5ai9wOcNDWwZAtud+jXhwOM3l+EYZh8Lng4+/6n8uar0J7xILzqftJdJ/Wdfkw==", "dev": true, "requires": { - "object-assign": "^4.1.1", - "util": "0.10.3" - }, - "dependencies": { - "inherits": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz", - "integrity": "sha1-sX0I0ya0Qj5Wjv9xn5GwscvfafE=", - "dev": true - }, - "util": { - "version": "0.10.3", - "resolved": "https://registry.npmjs.org/util/-/util-0.10.3.tgz", - "integrity": "sha1-evsa/lCAUkZInj23/g7TeTNqwPk=", - "dev": true, - "requires": { - "inherits": "2.0.1" - } - } + "@types/node": "*" } }, - "assert-plus": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", - "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=", + "@types/jasmine": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/@types/jasmine/-/jasmine-4.3.1.tgz", + "integrity": "sha512-Vu8l+UGcshYmV1VWwULgnV/2RDbBaO6i2Ptx7nd//oJPIZGhoI1YLST4VKagD2Pq/Bc2/7zvtvhM7F3p4SN7kQ==", "dev": true }, - "assign-symbols": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/assign-symbols/-/assign-symbols-1.0.0.tgz", - "integrity": "sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c=", + "@types/jasminewd2": { + "version": "2.0.10", + "resolved": "https://registry.npmjs.org/@types/jasminewd2/-/jasminewd2-2.0.10.tgz", + "integrity": "sha512-J7mDz7ovjwjc+Y9rR9rY53hFWKATcIkrr9DwQWmOas4/pnIPJTXawnzjwpHm3RSxz/e3ZVUvQ7cRbd5UQLo10g==", + "dev": true, + "requires": { + "@types/jasmine": "*" + } + }, + "@types/json-schema": { + "version": "7.0.11", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.11.tgz", + "integrity": "sha512-wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ==", "dev": true }, - "ast-types-flow": { - "version": "0.0.7", - "resolved": "https://registry.npmjs.org/ast-types-flow/-/ast-types-flow-0.0.7.tgz", - "integrity": "sha1-9wtzXGvKGlycItmCw+Oef+ujva0=", + "@types/mime": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@types/mime/-/mime-3.0.1.tgz", + "integrity": "sha512-Y4XFY5VJAuw0FgAqPNd6NNoV44jbq9Bz2L7Rh/J6jLTiHBSBJa9fxqQIvkIld4GsoDOcCbvzOUAbLPsSKKg+uA==", "dev": true }, - "async": { - "version": "2.6.3", - "resolved": "https://registry.npmjs.org/async/-/async-2.6.3.tgz", - "integrity": "sha512-zflvls11DCy+dQWzTW2dzuilv8Z5X/pjfmZOWba6TNIVDm+2UDaJmXSOXlasHKfNBs8oo3M0aT50fDEWfKZjXg==", - "dev": true, - "requires": { - "lodash": "^4.17.14" - } + "@types/node": { + "version": "18.11.13", + "resolved": "https://registry.npmjs.org/@types/node/-/node-18.11.13.tgz", + "integrity": "sha512-IASpMGVcWpUsx5xBOrxMj7Bl8lqfuTY7FKAnPmu5cHkfQVWF8GulWS1jbRqA934qZL35xh5xN/+Xe/i26Bod4w==", + "dev": true }, - "async-each": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/async-each/-/async-each-1.0.3.tgz", - "integrity": "sha512-z/WhQ5FPySLdvREByI2vZiTWwCnF0moMJ1hK9YQwDTHKh6I7/uSckMetoRGb5UBZPC1z0jlw+n/XCgjeH7y1AQ==", + "@types/parse-json": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.0.tgz", + "integrity": "sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA==", "dev": true }, - "async-limiter": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/async-limiter/-/async-limiter-1.0.1.tgz", - "integrity": "sha512-csOlWGAcRFJaI6m+F2WKdnMKr4HhdhFVBk0H/QbJFMCr+uO2kwohwXQPxw/9OCxp05r5ghVBFSyioixx3gfkNQ==", + "@types/q": { + "version": "0.0.32", + "resolved": "https://registry.npmjs.org/@types/q/-/q-0.0.32.tgz", + "integrity": "sha512-qYi3YV9inU/REEfxwVcGZzbS3KG/Xs90lv0Pr+lDtuVjBPGd1A+eciXzVSaRvLify132BfcvhvEjeVahrUl0Ug==", "dev": true }, - "asynckit": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", - "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=", + "@types/qs": { + "version": "6.9.7", + "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.7.tgz", + "integrity": "sha512-FGa1F62FT09qcrueBA6qYTrJPVDzah9a+493+o2PCXsesWHIn27G98TsSMs3WPNbZIEj4+VJf6saSFpvD+3Zsw==", "dev": true }, - "atob": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz", - "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==", + "@types/range-parser": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/@types/range-parser/-/range-parser-1.2.4.tgz", + "integrity": "sha512-EEhsLsD6UsDM1yFhAvy0Cjr6VwmpMWqFBCb9w07wVugF7w9nfajxLuVmngTIpgS6svCnm6Vaw+MZhoDCKnOfsw==", "dev": true }, - "autoprefixer": { - "version": "9.6.1", - "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-9.6.1.tgz", - "integrity": "sha512-aVo5WxR3VyvyJxcJC3h4FKfwCQvQWb1tSI5VHNibddCVWrcD1NvlxEweg3TSgiPztMnWfjpy2FURKA2kvDE+Tw==", + "@types/resolve": { + "version": "1.17.1", + "resolved": "https://registry.npmjs.org/@types/resolve/-/resolve-1.17.1.tgz", + "integrity": "sha512-yy7HuzQhj0dhGpD8RLXSZWEkLsV9ibvxvi6EiJ3bkqLAO1RGo0WbkWQiwpRlSFymTJRz0d3k5LM3kkx8ArDbLw==", "dev": true, "requires": { - "browserslist": "^4.6.3", - "caniuse-lite": "^1.0.30000980", - "chalk": "^2.4.2", - "normalize-range": "^0.1.2", - "num2fraction": "^1.2.2", - "postcss": "^7.0.17", - "postcss-value-parser": "^4.0.0" + "@types/node": "*" } }, - "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=", + "@types/retry": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/@types/retry/-/retry-0.12.0.tgz", + "integrity": "sha512-wWKOClTTiizcZhXnPY4wikVAwmdYHp8q6DmC+EJUzAMsycb7HB32Kh9RN4+0gExjmPmZSAQjgURXIGATPegAvA==", "dev": true }, - "aws4": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.9.1.tgz", - "integrity": "sha512-wMHVg2EOHaMRxbzgFJ9gtjOOCrI80OHLG14rxi28XwOW8ux6IiEbRCGGGqCtdAIg4FQCbW20k9RsT4y3gJlFug==", + "@types/selenium-webdriver": { + "version": "3.0.20", + "resolved": "https://registry.npmjs.org/@types/selenium-webdriver/-/selenium-webdriver-3.0.20.tgz", + "integrity": "sha512-6d8Q5fqS9DWOXEhMDiF6/2FjyHdmP/jSTAUyeQR7QwrFeNmYyzmvGxD5aLIHL445HjWgibs0eAig+KPnbaesXA==", "dev": true }, - "axobject-query": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/axobject-query/-/axobject-query-2.0.2.tgz", - "integrity": "sha512-MCeek8ZH7hKyO1rWUbKNQBbl4l2eY0ntk7OGi+q0RlafrCnfPxC06WZA+uebCfmYp4mNU9jRBP1AhGyf8+W3ww==", + "@types/serve-index": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/@types/serve-index/-/serve-index-1.9.1.tgz", + "integrity": "sha512-d/Hs3nWDxNL2xAczmOVZNj92YZCS6RGxfBPjKzuu/XirCgXdpKEb88dYNbrYGint6IVWLNP+yonwVAuRC0T2Dg==", "dev": true, "requires": { - "ast-types-flow": "0.0.7" + "@types/express": "*" } }, - "babel-code-frame": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.26.0.tgz", - "integrity": "sha1-Y/1D99weO7fONZR9uP42mj9Yx0s=", + "@types/serve-static": { + "version": "1.15.0", + "resolved": "https://registry.npmjs.org/@types/serve-static/-/serve-static-1.15.0.tgz", + "integrity": "sha512-z5xyF6uh8CbjAu9760KDKsH2FcDxZ2tFCsA4HIMWE6IkiYMXfVoa+4f9KX+FN0ZLsaMw1WNG2ETLA6N+/YA+cg==", "dev": true, "requires": { - "chalk": "^1.1.3", - "esutils": "^2.0.2", - "js-tokens": "^3.0.2" - }, - "dependencies": { - "ansi-styles": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", - "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", - "dev": true - }, - "chalk": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", - "dev": true, - "requires": { - "ansi-styles": "^2.2.1", - "escape-string-regexp": "^1.0.2", - "has-ansi": "^2.0.0", - "strip-ansi": "^3.0.0", - "supports-color": "^2.0.0" - } - }, - "js-tokens": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz", - "integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls=", - "dev": true - }, - "supports-color": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", - "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", - "dev": true - } + "@types/mime": "*", + "@types/node": "*" } }, - "babel-plugin-dynamic-import-node": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/babel-plugin-dynamic-import-node/-/babel-plugin-dynamic-import-node-2.3.0.tgz", - "integrity": "sha512-o6qFkpeQEBxcqt0XYlWzAVxNCSCZdUgcR8IRlhD/8DylxjjO4foPcvTW0GGKa/cVt3rvxZ7o5ippJ+/0nvLhlQ==", + "@types/sockjs": { + "version": "0.3.33", + "resolved": "https://registry.npmjs.org/@types/sockjs/-/sockjs-0.3.33.tgz", + "integrity": "sha512-f0KEEe05NvUnat+boPTZ0dgaLZ4SfSouXUgv5noUiefG2ajgKjmETo9ZJyuqsl7dfl2aHlLJUiki6B4ZYldiiw==", "dev": true, "requires": { - "object.assign": "^4.1.0" + "@types/node": "*" } }, - "backo2": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/backo2/-/backo2-1.0.2.tgz", - "integrity": "sha1-MasayLEpNjRj41s+u2n038+6eUc=", - "dev": true + "@types/ws": { + "version": "8.5.3", + "resolved": "https://registry.npmjs.org/@types/ws/-/ws-8.5.3.tgz", + "integrity": "sha512-6YOoWjruKj1uLf3INHH7D3qTXwFfEsg1kf3c0uDdSBJwfa/llkwIjrAGV7j7mVgGNbzTQ3HiHKKDXl6bJPD97w==", + "dev": true, + "requires": { + "@types/node": "*" + } }, - "balanced-match": { + "@uirouter/angular": { + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/@uirouter/angular/-/angular-9.1.0.tgz", + "integrity": "sha512-YB3VM4tsdCtDTpXHWg99+uXJ135ySAZRy+oczH7vqJTRYIwxJ1DKA3Sc5ROnIHw4bhyCs0zC/yn+3zL0KwJtkQ==", + "requires": { + "tslib": "^2.3.0" + } + }, + "@uirouter/angular-hybrid": { + "version": "13.0.0", + "resolved": "https://registry.npmjs.org/@uirouter/angular-hybrid/-/angular-hybrid-13.0.0.tgz", + "integrity": "sha512-DvhMyRcRrN/t/mNrfVb9u/8VJrMKEWQgRL3bwwpmIqOkSjnamQOHvF0HMeH68djchIaAt9PH/qJ0r6wvfZgkOQ==", + "requires": { + "tslib": "^2.3.0" + } + }, + "@uirouter/angularjs": { + "version": "1.0.30", + "resolved": "https://registry.npmjs.org/@uirouter/angularjs/-/angularjs-1.0.30.tgz", + "integrity": "sha512-qkc3RFZc91S5K0gc/QVAXc9LGDPXjR04vDgG/11j8+yyZEuQojXxKxdLhKIepiPzqLmGRVqzBmBc27gtqaEeZg==", + "requires": { + "@uirouter/core": "6.0.8" + } + }, + "@uirouter/core": { + "version": "6.0.8", + "resolved": "https://registry.npmjs.org/@uirouter/core/-/core-6.0.8.tgz", + "integrity": "sha512-Gc/BAW47i4L54p8dqYCJJZuv2s3tqlXQ0fvl6Zp2xrblELPVfxmjnc0eurx3XwfQdaqm3T6uls6tQKkof/4QMw==" + }, + "@uirouter/rx": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", - "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=", - "dev": true + "resolved": "https://registry.npmjs.org/@uirouter/rx/-/rx-1.0.0.tgz", + "integrity": "sha512-dqPmLFC+qqF6RIdJVKktXSON6WILy2oyLhADDk74F3GAUZ/VvOu3QSPLDtZEP3LMSo6vkGQvwcUdjgNVWL3YJA==" }, - "base": { - "version": "0.11.2", - "resolved": "https://registry.npmjs.org/base/-/base-0.11.2.tgz", - "integrity": "sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg==", + "@webassemblyjs/ast": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.11.1.tgz", + "integrity": "sha512-ukBh14qFLjxTQNTXocdyksN5QdM28S1CxHt2rdskFyL+xFV7VremuBLVbmCePj+URalXBENx/9Lm7lnhihtCSw==", "dev": true, "requires": { - "cache-base": "^1.0.1", - "class-utils": "^0.3.5", - "component-emitter": "^1.2.1", - "define-property": "^1.0.0", - "isobject": "^3.0.1", - "mixin-deep": "^1.2.0", - "pascalcase": "^0.1.1" - }, - "dependencies": { - "define-property": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", - "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", - "dev": true, - "requires": { - "is-descriptor": "^1.0.0" - } - }, - "is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-data-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", - "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-descriptor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", - "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", - "dev": true, - "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - } - } + "@webassemblyjs/helper-numbers": "1.11.1", + "@webassemblyjs/helper-wasm-bytecode": "1.11.1" } }, - "base64-arraybuffer": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/base64-arraybuffer/-/base64-arraybuffer-0.1.5.tgz", - "integrity": "sha1-c5JncZI7Whl0etZmqlzUv5xunOg=", + "@webassemblyjs/floating-point-hex-parser": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.11.1.tgz", + "integrity": "sha512-iGRfyc5Bq+NnNuX8b5hwBrRjzf0ocrJPI6GWFodBFzmFnyvrQ83SHKhmilCU/8Jv67i4GJZBMhEzltxzcNagtQ==", "dev": true }, - "base64-js": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.3.1.tgz", - "integrity": "sha512-mLQ4i2QO1ytvGWFWmcngKO//JXAQueZvwEKtjgQFM4jIK0kU+ytMfplL8j+n5mspOfjHwoAg+9yhb7BwAHm36g==", + "@webassemblyjs/helper-api-error": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.11.1.tgz", + "integrity": "sha512-RlhS8CBCXfRUR/cwo2ho9bkheSXG0+NwooXcc3PAILALf2QLdFyj7KGsKRbVc95hZnhnERon4kW/D3SZpp6Tcg==", "dev": true }, - "base64id": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/base64id/-/base64id-1.0.0.tgz", - "integrity": "sha1-R2iMuZu2gE8OBtPnY7HDLlfY5rY=", + "@webassemblyjs/helper-buffer": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.11.1.tgz", + "integrity": "sha512-gwikF65aDNeeXa8JxXa2BAk+REjSyhrNC9ZwdT0f8jc4dQQeDQ7G4m0f2QCLPJiMTTO6wfDmRmj/pW0PsUvIcA==", "dev": true }, - "batch": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/batch/-/batch-0.6.1.tgz", - "integrity": "sha1-3DQxT05nkxgJP8dgJyUl+UvyXBY=", + "@webassemblyjs/helper-numbers": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.1.tgz", + "integrity": "sha512-vDkbxiB8zfnPdNK9Rajcey5C0w+QJugEglN0of+kmO8l7lDb77AnlKYQF7aarZuCrv+l0UvqL+68gSDr3k9LPQ==", + "dev": true, + "requires": { + "@webassemblyjs/floating-point-hex-parser": "1.11.1", + "@webassemblyjs/helper-api-error": "1.11.1", + "@xtuc/long": "4.2.2" + } + }, + "@webassemblyjs/helper-wasm-bytecode": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.1.tgz", + "integrity": "sha512-PvpoOGiJwXeTrSf/qfudJhwlvDQxFgelbMqtq52WWiXC6Xgg1IREdngmPN3bs4RoO83PnL/nFrxucXj1+BX62Q==", "dev": true }, - "bcrypt-pbkdf": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", - "integrity": "sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4=", + "@webassemblyjs/helper-wasm-section": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.11.1.tgz", + "integrity": "sha512-10P9No29rYX1j7F3EVPX3JvGPQPae+AomuSTPiF9eBQeChHI6iqjMIwR9JmOJXwpnn/oVGDk7I5IlskuMwU/pg==", "dev": true, "requires": { - "tweetnacl": "^0.14.3" + "@webassemblyjs/ast": "1.11.1", + "@webassemblyjs/helper-buffer": "1.11.1", + "@webassemblyjs/helper-wasm-bytecode": "1.11.1", + "@webassemblyjs/wasm-gen": "1.11.1" } }, - "better-assert": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/better-assert/-/better-assert-1.0.2.tgz", - "integrity": "sha1-QIZrnhueC1W0gYlDEeaPr/rrxSI=", + "@webassemblyjs/ieee754": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.11.1.tgz", + "integrity": "sha512-hJ87QIPtAMKbFq6CGTkZYJivEwZDbQUgYd3qKSadTNOhVY7p+gfP6Sr0lLRVTaG1JjFj+r3YchoqRYxNH3M0GQ==", "dev": true, "requires": { - "callsite": "1.0.0" + "@xtuc/ieee754": "^1.2.0" } }, - "big.js": { - "version": "5.2.2", - "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz", - "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==", - "dev": true - }, - "binary-extensions": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.0.0.tgz", - "integrity": "sha512-Phlt0plgpIIBOGTT/ehfFnbNlfsDEiqmzE2KRXoX1bLIlir4X/MR+zSyBEkL05ffWgnRSf/DXv+WrUAVr93/ow==", - "dev": true - }, - "bindings": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/bindings/-/bindings-1.5.0.tgz", - "integrity": "sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==", + "@webassemblyjs/leb128": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.11.1.tgz", + "integrity": "sha512-BJ2P0hNZ0u+Th1YZXJpzW6miwqQUGcIHT1G/sf72gLVD9DZ5AdYTqPNbHZh6K1M5VmKvFXwGSWZADz+qBWxeRw==", "dev": true, - "optional": true, "requires": { - "file-uri-to-path": "1.0.0" + "@xtuc/long": "4.2.2" } }, - "blob": { - "version": "0.0.5", - "resolved": "https://registry.npmjs.org/blob/-/blob-0.0.5.tgz", - "integrity": "sha512-gaqbzQPqOoamawKg0LGVd7SzLgXS+JH61oWprSLH+P+abTczqJbhTR8CmJ2u9/bUYNmHTGJx/UEmn6doAvvuig==", + "@webassemblyjs/utf8": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.11.1.tgz", + "integrity": "sha512-9kqcxAEdMhiwQkHpkNiorZzqpGrodQQ2IGrHHxCy+Ozng0ofyMA0lTqiLkVs1uzTRejX+/O0EOT7KxqVPuXosQ==", "dev": true }, - "blocking-proxy": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/blocking-proxy/-/blocking-proxy-1.0.1.tgz", - "integrity": "sha512-KE8NFMZr3mN2E0HcvCgRtX7DjhiIQrwle+nSVJVC/yqFb9+xznHl2ZcoBp2L9qzkI4t4cBFJ1efXF8Dwi132RA==", + "@webassemblyjs/wasm-edit": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.11.1.tgz", + "integrity": "sha512-g+RsupUC1aTHfR8CDgnsVRVZFJqdkFHpsHMfJuWQzWU3tvnLC07UqHICfP+4XyL2tnr1amvl1Sdp06TnYCmVkA==", "dev": true, "requires": { - "minimist": "^1.2.0" + "@webassemblyjs/ast": "1.11.1", + "@webassemblyjs/helper-buffer": "1.11.1", + "@webassemblyjs/helper-wasm-bytecode": "1.11.1", + "@webassemblyjs/helper-wasm-section": "1.11.1", + "@webassemblyjs/wasm-gen": "1.11.1", + "@webassemblyjs/wasm-opt": "1.11.1", + "@webassemblyjs/wasm-parser": "1.11.1", + "@webassemblyjs/wast-printer": "1.11.1" } }, - "bluebird": { - "version": "3.7.2", - "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz", - "integrity": "sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==", - "dev": true + "@webassemblyjs/wasm-gen": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.11.1.tgz", + "integrity": "sha512-F7QqKXwwNlMmsulj6+O7r4mmtAlCWfO/0HdgOxSklZfQcDu0TpLiD1mRt/zF25Bk59FIjEuGAIyn5ei4yMfLhA==", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.11.1", + "@webassemblyjs/helper-wasm-bytecode": "1.11.1", + "@webassemblyjs/ieee754": "1.11.1", + "@webassemblyjs/leb128": "1.11.1", + "@webassemblyjs/utf8": "1.11.1" + } }, - "bn.js": { - "version": "4.11.8", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.8.tgz", - "integrity": "sha512-ItfYfPLkWHUjckQCk8xC+LwxgK8NYcXywGigJgSwOP8Y2iyWT4f2vsZnoOXTTbo+o5yXmIUJ4gn5538SO5S3gA==", - "dev": true + "@webassemblyjs/wasm-opt": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.11.1.tgz", + "integrity": "sha512-VqnkNqnZlU5EB64pp1l7hdm3hmQw7Vgqa0KF/KCNO9sIpI6Fk6brDEiX+iCOYrvMuBWDws0NkTOxYEb85XQHHw==", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.11.1", + "@webassemblyjs/helper-buffer": "1.11.1", + "@webassemblyjs/wasm-gen": "1.11.1", + "@webassemblyjs/wasm-parser": "1.11.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==", + "@webassemblyjs/wasm-parser": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.11.1.tgz", + "integrity": "sha512-rrBujw+dJu32gYB7/Lup6UhdkPx9S9SnobZzRVL7VcBH9Bt9bCBLEuX/YXOOtBsOZ4NQrRykKhffRWHvigQvOA==", "dev": true, "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": { - "bytes": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.0.tgz", - "integrity": "sha512-zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg==", - "dev": true - }, - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true - }, - "qs": { - "version": "6.7.0", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.7.0.tgz", - "integrity": "sha512-VCdBRNFTX1fyE7Nb6FYoURo/SPe62QCaAyzJvUjwRaIsc+NePBEniHlvxFmmX56+HZphIGtV0XeCirBtpDrTyQ==", - "dev": true - } + "@webassemblyjs/ast": "1.11.1", + "@webassemblyjs/helper-api-error": "1.11.1", + "@webassemblyjs/helper-wasm-bytecode": "1.11.1", + "@webassemblyjs/ieee754": "1.11.1", + "@webassemblyjs/leb128": "1.11.1", + "@webassemblyjs/utf8": "1.11.1" } }, - "bonjour": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/bonjour/-/bonjour-3.5.0.tgz", - "integrity": "sha1-jokKGD2O6aI5OzhExpGkK897yfU=", + "@webassemblyjs/wast-printer": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.11.1.tgz", + "integrity": "sha512-IQboUWM4eKzWW+N/jij2sRatKMh99QEelo3Eb2q0qXkvPRISAj8Qxtmw5itwqK+TTkBuUIE45AxYPToqPtL5gg==", "dev": true, "requires": { - "array-flatten": "^2.1.0", - "deep-equal": "^1.0.1", - "dns-equal": "^1.0.0", - "dns-txt": "^2.0.2", - "multicast-dns": "^6.0.1", - "multicast-dns-service-types": "^1.1.0" + "@webassemblyjs/ast": "1.11.1", + "@xtuc/long": "4.2.2" } }, - "boxen": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/boxen/-/boxen-3.2.0.tgz", - "integrity": "sha512-cU4J/+NodM3IHdSL2yN8bqYqnmlBTidDR4RC7nJs61ZmtGz8VZzM3HLQX0zY5mrSmPtR3xWwsq2jOUQqFZN8+A==", + "@xtuc/ieee754": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz", + "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==", + "dev": true + }, + "@xtuc/long": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/@xtuc/long/-/long-4.2.2.tgz", + "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==", + "dev": true + }, + "@yarnpkg/lockfile": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@yarnpkg/lockfile/-/lockfile-1.1.0.tgz", + "integrity": "sha512-GpSwvyXOcOOlV70vbnzjj4fW5xW/FdUF6nQEt1ENy7m4ZCczi1+/buVUPAqmGfqznsORNFzUMjctTIp8a9tuCQ==", + "dev": true + }, + "abab": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/abab/-/abab-2.0.6.tgz", + "integrity": "sha512-j2afSsaIENvHZN2B8GOpF566vZ5WVk5opAiMTvWgaQT8DkbOqsTfvNAvHoRGU2zzP8cPoqys+xHTRDWW8L+/BA==", + "dev": true + }, + "abbrev": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", + "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==", + "dev": true + }, + "accepts": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz", + "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==", "dev": true, "requires": { - "ansi-align": "^3.0.0", - "camelcase": "^5.3.1", - "chalk": "^2.4.2", - "cli-boxes": "^2.2.0", - "string-width": "^3.0.0", - "term-size": "^1.2.0", - "type-fest": "^0.3.0", - "widest-line": "^2.0.0" + "mime-types": "~2.1.34", + "negotiator": "0.6.3" + } + }, + "acorn": { + "version": "8.8.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.8.1.tgz", + "integrity": "sha512-7zFpHzhnqYKrkYdUjF1HI1bzd0VygEGX8lFk4k5zVMqHEoES+P+7TKI+EvLO9WVMJ8eekdO0aDEK044xTXwPPA==", + "dev": true + }, + "acorn-import-assertions": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/acorn-import-assertions/-/acorn-import-assertions-1.8.0.tgz", + "integrity": "sha512-m7VZ3jwz4eK6A4Vtt8Ew1/mNbP24u0FhdyfA7fSvnJR6LMdfOYnmuIrrJAgrYfYJ10F/otaHTtrtrtmHdMNzEw==", + "dev": true + }, + "adjust-sourcemap-loader": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/adjust-sourcemap-loader/-/adjust-sourcemap-loader-4.0.0.tgz", + "integrity": "sha512-OXwN5b9pCUXNQHJpwwD2qP40byEmSgzj8B4ydSN0uMNYWiFmJ6x6KwUllMmfk8Rwu/HJDFR7U8ubsWBoN0Xp0A==", + "dev": true, + "requires": { + "loader-utils": "^2.0.0", + "regex-parser": "^2.2.11" }, "dependencies": { - "ansi-regex": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", - "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", - "dev": true - }, - "emoji-regex": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", - "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", - "dev": true - }, - "string-width": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", - "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", - "dev": true, - "requires": { - "emoji-regex": "^7.0.1", - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^5.1.0" - } - }, - "strip-ansi": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", - "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "loader-utils": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.4.tgz", + "integrity": "sha512-xXqpXoINfFhgua9xiqD8fPFHgkoq1mmmpE92WlDbm9rNRd/EbRb+Gqf908T2DMfuHjjJlksiK2RbHVOdD/MqSw==", "dev": true, "requires": { - "ansi-regex": "^4.1.0" + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^2.1.2" } - }, - "type-fest": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.3.1.tgz", - "integrity": "sha512-cUGJnCdr4STbePCgqNFbpVNCepa+kAVohJs1sLhxzdH+gnEoOd8VhbYa7pD3zZYGiURWM2xzEII3fQcRizDkYQ==", - "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" - } + "adm-zip": { + "version": "0.4.16", + "resolved": "https://registry.npmjs.org/adm-zip/-/adm-zip-0.4.16.tgz", + "integrity": "sha512-TFi4HBKSGfIKsK5YCkKaaFG2m4PEDyViZmEwof3MTIgzimHLto6muaHVpbrljdIvIrFZzEq/p4nafOeLcYegrg==", + "dev": true }, - "braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "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": { - "fill-range": "^7.0.1" + "debug": "4" } }, - "brorand": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz", - "integrity": "sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8=", - "dev": true - }, - "browserify-aes": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz", - "integrity": "sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==", + "agentkeepalive": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/agentkeepalive/-/agentkeepalive-4.2.1.tgz", + "integrity": "sha512-Zn4cw2NEqd+9fiSVWMscnjyQ1a8Yfoc5oBajLeo5w+YBHgDUcEBY2hS4YpTz6iN5f/2zQiktcuM6tS8x1p9dpA==", "dev": true, "requires": { - "buffer-xor": "^1.0.3", - "cipher-base": "^1.0.0", - "create-hash": "^1.1.0", - "evp_bytestokey": "^1.0.3", - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" + "debug": "^4.1.0", + "depd": "^1.1.2", + "humanize-ms": "^1.2.1" + }, + "dependencies": { + "depd": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", + "integrity": "sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==", + "dev": true + } } }, - "browserify-cipher": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/browserify-cipher/-/browserify-cipher-1.0.1.tgz", - "integrity": "sha512-sPhkz0ARKbf4rRQt2hTpAHqn47X3llLkUGn+xEJzLjwY8LRs2p0v7ljvI5EyoRO/mexrNunNECisZs+gw2zz1w==", + "aggregate-error": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", + "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", "dev": true, "requires": { - "browserify-aes": "^1.0.4", - "browserify-des": "^1.0.0", - "evp_bytestokey": "^1.0.0" + "clean-stack": "^2.0.0", + "indent-string": "^4.0.0" } }, - "browserify-des": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/browserify-des/-/browserify-des-1.0.2.tgz", - "integrity": "sha512-BioO1xf3hFwz4kc6iBhI3ieDFompMhrMlnDFC4/0/vd5MokpuAc3R+LYbwTA9A5Yc9pq9UYPqffKpW2ObuwX5A==", + "ajv": { + "version": "8.11.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.11.0.tgz", + "integrity": "sha512-wGgprdCvMalC0BztXvitD2hC04YffAvtsUn93JbGXYLAtCUO4xd17mCCZQxUOItiBwZvJScWo8NIvQMQ71rdpg==", "dev": true, "requires": { - "cipher-base": "^1.0.1", - "des.js": "^1.0.0", - "inherits": "^2.0.1", - "safe-buffer": "^5.1.2" + "fast-deep-equal": "^3.1.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2", + "uri-js": "^4.2.2" } }, - "browserify-rsa": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.0.1.tgz", - "integrity": "sha1-IeCr+vbyApzy+vsTNWenAdQTVSQ=", + "ajv-formats": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ajv-formats/-/ajv-formats-2.1.1.tgz", + "integrity": "sha512-Wx0Kx52hxE7C18hkMEggYlEifqWZtYaRgouJor+WMdPnQyEK13vgEWyVNup7SoeeoLMsr4kf5h6dOW11I15MUA==", "dev": true, "requires": { - "bn.js": "^4.1.0", - "randombytes": "^2.0.1" + "ajv": "^8.0.0" } }, - "browserify-sign": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/browserify-sign/-/browserify-sign-4.0.4.tgz", - "integrity": "sha1-qk62jl17ZYuqa/alfmMMvXqT0pg=", + "ajv-keywords": { + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", + "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", + "dev": true + }, + "angular": { + "version": "1.5.11", + "resolved": "https://registry.npmjs.org/angular/-/angular-1.5.11.tgz", + "integrity": "sha512-09DBOVVWo6rOQfdCBKGfEL0ZZIhf6P3fbeP3BU+ty5FU50DPiavVeDn8hQ4wXE8o4vKEEpzY1aRcRHJMCixWYA==" + }, + "ansi-colors": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.3.tgz", + "integrity": "sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==", + "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==", "dev": true, "requires": { - "bn.js": "^4.1.1", - "browserify-rsa": "^4.0.0", - "create-hash": "^1.1.0", - "create-hmac": "^1.1.2", - "elliptic": "^6.0.0", - "inherits": "^2.0.1", - "parse-asn1": "^5.0.0" + "type-fest": "^0.21.3" } }, - "browserify-zlib": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/browserify-zlib/-/browserify-zlib-0.2.0.tgz", - "integrity": "sha512-Z942RysHXmJrhqk88FmKBVq/v5tqmSkDz7p54G/MGyjMnCFFnC79XWNbg+Vta8W6Wb2qtSZTSxIGkJrRpCFEiA==", + "ansi-html-community": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/ansi-html-community/-/ansi-html-community-0.0.8.tgz", + "integrity": "sha512-1APHAyr3+PCamwNw3bXCPp4HFLONZt/yIH0sZp0/469KWNTEy+qN5jQ3GVX6DMZ1UXAi34yVwtTeaG/HpBuuzw==", + "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": "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": { - "pako": "~1.0.5" + "color-convert": "^1.9.0" } }, - "browserslist": { - "version": "4.8.6", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.8.6.tgz", - "integrity": "sha512-ZHao85gf0eZ0ESxLfCp73GG9O/VTytYDIkIiZDlURppLTI9wErSM/5yAKEq6rcUdxBLjMELmrYUJGg5sxGKMHg==", + "anymatch": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", + "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", "dev": true, "requires": { - "caniuse-lite": "^1.0.30001023", - "electron-to-chromium": "^1.3.341", - "node-releases": "^1.1.47" + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" } }, - "browserstack": { - "version": "1.5.3", - "resolved": "https://registry.npmjs.org/browserstack/-/browserstack-1.5.3.tgz", - "integrity": "sha512-AO+mECXsW4QcqC9bxwM29O7qWa7bJT94uBFzeb5brylIQwawuEziwq20dPYbins95GlWzOawgyDNdjYAo32EKg==", + "app-root-path": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/app-root-path/-/app-root-path-3.1.0.tgz", + "integrity": "sha512-biN3PwB2gUtjaYy/isrU3aNWI5w+fAfvHkSvCKeQGxhmYpwKFUxudR3Yya+KqVRHBmEDYh+/lTozYCFbmzX4nA==", + "dev": true + }, + "aproba": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/aproba/-/aproba-2.0.0.tgz", + "integrity": "sha512-lYe4Gx7QT+MKGbDsA+Z+he/Wtef0BiwDOlK/XkBrdfsh9J/jPPXbX0tE9x9cl27Tmu5gg3QUbUrQYa/y+KOHPQ==", + "dev": true + }, + "are-we-there-yet": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-3.0.1.tgz", + "integrity": "sha512-QZW4EDmGwlYur0Yyf/b2uGucHQMa8aFUP7eu9ddR73vvhFyt4V0Vl3QHPcTNJ8l6qYOBdxgXdnBXQrHilfRQBg==", "dev": true, "requires": { - "https-proxy-agent": "^2.2.1" + "delegates": "^1.0.0", + "readable-stream": "^3.6.0" } }, - "buffer": { - "version": "4.9.2", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-4.9.2.tgz", - "integrity": "sha512-xq+q3SRMOxGivLhBNaUdC64hDTQwejJ+H0T/NB1XMtTVEwNTrfFF3gAxiyW0Bu/xWEGhjVKgUcMhCrUy2+uCWg==", + "argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", "dev": true, "requires": { - "base64-js": "^1.0.2", - "ieee754": "^1.1.4", - "isarray": "^1.0.0" + "sprintf-js": "~1.0.2" } }, - "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==", + "aria-query": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/aria-query/-/aria-query-3.0.0.tgz", + "integrity": "sha512-majUxHgLehQTeSA+hClx+DY09OVUqG3GtezWkF1krgLGNdlDu9l9V8DaqNMWbq4Eddc8wsyDA0hpDUtnYxQEXw==", "dev": true, "requires": { - "buffer-alloc-unsafe": "^1.1.0", - "buffer-fill": "^1.0.0" + "ast-types-flow": "0.0.7", + "commander": "^2.11.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==", + "array-flatten": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-2.1.2.tgz", + "integrity": "sha512-hNfzcOV8W4NdualtqBFPyVO+54DSJuZGY9qT4pRroB6S9e3iiido2ISIC5h9R2sPJ8H3FHCIiEnsv1lPXO3KtQ==", "dev": true }, - "buffer-fill": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/buffer-fill/-/buffer-fill-1.0.0.tgz", - "integrity": "sha1-+PeLdniYiO858gXNY39o5wISKyw=", - "dev": true + "array-union": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz", + "integrity": "sha512-Dxr6QJj/RdU/hCaBjOfxW+q6lyuVE6JFWIrAUpuOOhoJJoQ99cUn3igRaHVB5P9WrgFVN0FfArM3x0cueOU8ng==", + "dev": true, + "requires": { + "array-uniq": "^1.0.1" + } }, - "buffer-from": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz", - "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==", + "array-uniq": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz", + "integrity": "sha512-MNha4BWQ6JbwhFhj03YK552f7cb3AzoE8SzeljgChvL1dl3IcvggXVz1DilzySZkCja+CXuZbdW7yATchWn8/Q==", "dev": true }, - "buffer-indexof": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/buffer-indexof/-/buffer-indexof-1.1.1.tgz", - "integrity": "sha512-4/rOEg86jivtPTeOUUT61jJO1Ya1TrR/OkqCSZDyq84WJh3LuuiphBYJN+fm5xufIk4XAFcEwte/8WzC8If/1g==", + "arrify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", + "integrity": "sha512-3CYzex9M9FGQjCGMGyi6/31c8GJbgb0qGyrx5HWxPd0aCwh4cB2YjMb2Xf9UuoogrMrlO9cTqnB5rI5GHZTcUA==", "dev": true }, - "buffer-xor": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz", - "integrity": "sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk=", - "dev": true + "asn1": { + "version": "0.2.6", + "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.6.tgz", + "integrity": "sha512-ix/FxPn0MDjeyJ7i/yoHGFt/EX6LyNbxSEhPPXODPL+KB0VPk86UYfL0lMdy+KCnv+fmvIzySwaK5COwqVbWTQ==", + "dev": true, + "requires": { + "safer-buffer": "~2.1.0" + } }, - "builtin-modules": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-3.1.0.tgz", - "integrity": "sha512-k0KL0aWZuBt2lrxrcASWDfwOLMnodeQjodT/1SxEQAXsHANgo6ZC/VEaSEHCXt7aSTZ4/4H5LKa+tBXmW7Vtvw==", + "assert-plus": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", + "integrity": "sha512-NfJ4UzBCcQGLDlQq7nHxH+tv3kyZ0hHQqF5BO6J7tNJeP5do1llPr8dZ8zHonfhAu0PHAdMkSo+8o0wxg9lZWw==", "dev": true }, - "builtin-status-codes": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz", - "integrity": "sha1-hZgoeOIbmOHGZCXgPQF0eI9Wnug=", + "ast-types-flow": { + "version": "0.0.7", + "resolved": "https://registry.npmjs.org/ast-types-flow/-/ast-types-flow-0.0.7.tgz", + "integrity": "sha512-eBvWn1lvIApYMhzQMsu9ciLfkBY499mFZlNqG+/9WR7PVlroQw0vG30cOQQbaKz3sCEc44TAOu2ykzqXSNnwag==", "dev": true }, - "builtins": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/builtins/-/builtins-1.0.3.tgz", - "integrity": "sha1-y5T662HIaWRR2zZTThQi+U8K7og=", + "asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==", "dev": true }, - "bytes": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz", - "integrity": "sha1-0ygVQE1olpn4Wk6k+odV3ROpYEg=", + "atob": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz", + "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==", "dev": true }, - "cacache": { - "version": "12.0.2", - "resolved": "https://registry.npmjs.org/cacache/-/cacache-12.0.2.tgz", - "integrity": "sha512-ifKgxH2CKhJEg6tNdAwziu6Q33EvuG26tYcda6PT3WKisZcYDXsnEdnRv67Po3yCzFfaSoMjGZzJyD2c3DT1dg==", + "autoprefixer": { + "version": "10.4.13", + "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.13.tgz", + "integrity": "sha512-49vKpMqcZYsJjwotvt4+h/BCjJVnhGwcLpDt5xkcaOG3eLrG/HUYLagrihYsQ+qrIBgIzX1Rw7a6L8I/ZA1Atg==", "dev": true, "requires": { - "bluebird": "^3.5.5", - "chownr": "^1.1.1", - "figgy-pudding": "^3.5.1", - "glob": "^7.1.4", - "graceful-fs": "^4.1.15", - "infer-owner": "^1.0.3", - "lru-cache": "^5.1.1", - "mississippi": "^3.0.0", - "mkdirp": "^0.5.1", - "move-concurrently": "^1.0.1", - "promise-inflight": "^1.0.1", - "rimraf": "^2.6.3", - "ssri": "^6.0.1", - "unique-filename": "^1.1.1", - "y18n": "^4.0.0" + "browserslist": "^4.21.4", + "caniuse-lite": "^1.0.30001426", + "fraction.js": "^4.2.0", + "normalize-range": "^0.1.2", + "picocolors": "^1.0.0", + "postcss-value-parser": "^4.2.0" } }, - "cache-base": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/cache-base/-/cache-base-1.0.1.tgz", - "integrity": "sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ==", + "aws-sign2": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", + "integrity": "sha512-08kcGqnYf/YmjoRhfxyu+CLxBjUtHLXLXX/vUfx9l2LYzG3c1m61nrpyFUZI6zeS+Li/wWMMidD9KgrqtGq3mA==", + "dev": true + }, + "aws4": { + "version": "1.11.0", + "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.11.0.tgz", + "integrity": "sha512-xh1Rl34h6Fi1DC2WWKfxUTVqRsNnr6LsKz2+hfwDxQJWmrx8+c7ylaqBMcHfl1U1r2dsifOvKX3LQuLNZ+XSvA==", + "dev": true + }, + "axobject-query": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/axobject-query/-/axobject-query-2.0.2.tgz", + "integrity": "sha512-MCeek8ZH7hKyO1rWUbKNQBbl4l2eY0ntk7OGi+q0RlafrCnfPxC06WZA+uebCfmYp4mNU9jRBP1AhGyf8+W3ww==", "dev": true, "requires": { - "collection-visit": "^1.0.0", - "component-emitter": "^1.2.1", - "get-value": "^2.0.6", - "has-value": "^1.0.0", - "isobject": "^3.0.1", - "set-value": "^2.0.0", - "to-object-path": "^0.3.0", - "union-value": "^1.0.0", - "unset-value": "^1.0.0" + "ast-types-flow": "0.0.7" } }, - "cacheable-request": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/cacheable-request/-/cacheable-request-6.1.0.tgz", - "integrity": "sha512-Oj3cAGPCqOZX7Rz64Uny2GYAZNliQSqfbePrgAQ1wKAihYmCUnraBtJtKcGR4xz7wF+LoJC+ssFZvv5BgF9Igg==", + "babel-loader": { + "version": "8.2.5", + "resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-8.2.5.tgz", + "integrity": "sha512-OSiFfH89LrEMiWd4pLNqGz4CwJDtbs2ZVc+iGu2HrkRfPxId9F2anQj38IxWpmRfsUY0aBZYi1EFcd3mhtRMLQ==", "dev": true, "requires": { - "clone-response": "^1.0.2", - "get-stream": "^5.1.0", - "http-cache-semantics": "^4.0.0", - "keyv": "^3.0.0", - "lowercase-keys": "^2.0.0", - "normalize-url": "^4.1.0", - "responselike": "^1.0.2" + "find-cache-dir": "^3.3.1", + "loader-utils": "^2.0.0", + "make-dir": "^3.1.0", + "schema-utils": "^2.6.5" }, "dependencies": { - "get-stream": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.1.0.tgz", - "integrity": "sha512-EXr1FOzrzTfGeL0gQdeFEvOMm2mzMOglyiOXSTpPC+iAjAKftbr3jpCMWynogwYnM+eSj9sHGc6wjIcDvYiygw==", + "loader-utils": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.4.tgz", + "integrity": "sha512-xXqpXoINfFhgua9xiqD8fPFHgkoq1mmmpE92WlDbm9rNRd/EbRb+Gqf908T2DMfuHjjJlksiK2RbHVOdD/MqSw==", "dev": true, "requires": { - "pump": "^3.0.0" + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^2.1.2" } - }, - "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==", - "dev": true - }, - "lowercase-keys": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-2.0.0.tgz", - "integrity": "sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA==", - "dev": true - }, - "normalize-url": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-4.5.0.tgz", - "integrity": "sha512-2s47yzUxdexf1OhyRi4Em83iQk0aPvwTddtFz4hnSSw9dCEsLEGf6SwIO8ss/19S9iBb5sJaOuTvTGDeZI00BQ==", - "dev": true } } }, - "caller-callsite": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/caller-callsite/-/caller-callsite-2.0.0.tgz", - "integrity": "sha1-hH4PzgoiN1CpoCfFSzNzGtMVQTQ=", + "babel-plugin-istanbul": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz", + "integrity": "sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA==", "dev": true, "requires": { - "callsites": "^2.0.0" + "@babel/helper-plugin-utils": "^7.0.0", + "@istanbuljs/load-nyc-config": "^1.0.0", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-instrument": "^5.0.4", + "test-exclude": "^6.0.0" } }, - "caller-path": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/caller-path/-/caller-path-2.0.0.tgz", - "integrity": "sha1-Ro+DBE42mrIBD6xfBs7uFbsssfQ=", + "babel-plugin-polyfill-corejs2": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.3.3.tgz", + "integrity": "sha512-8hOdmFYFSZhqg2C/JgLUQ+t52o5nirNwaWM2B9LWteozwIvM14VSwdsCAUET10qT+kmySAlseadmfeeSWFCy+Q==", "dev": true, "requires": { - "caller-callsite": "^2.0.0" - } + "@babel/compat-data": "^7.17.7", + "@babel/helper-define-polyfill-provider": "^0.3.3", + "semver": "^6.1.1" + }, + "dependencies": { + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true + } + } + }, + "babel-plugin-polyfill-corejs3": { + "version": "0.5.3", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.5.3.tgz", + "integrity": "sha512-zKsXDh0XjnrUEW0mxIHLfjBfnXSMr5Q/goMe/fxpQnLm07mcOZiIZHBNWCMx60HmdvjxfXcalac0tfFg0wqxyw==", + "dev": true, + "requires": { + "@babel/helper-define-polyfill-provider": "^0.3.2", + "core-js-compat": "^3.21.0" + } + }, + "babel-plugin-polyfill-regenerator": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.4.1.tgz", + "integrity": "sha512-NtQGmyQDXjQqQ+IzRkBVwEOz9lQ4zxAQZgoAYEtU9dJjnl1Oc98qnN7jcp+bE7O7aYzVpavXE3/VKXNzUbh7aw==", + "dev": true, + "requires": { + "@babel/helper-define-polyfill-provider": "^0.3.3" + } + }, + "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 + }, + "base64-js": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", + "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", + "dev": true + }, + "base64id": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/base64id/-/base64id-2.0.0.tgz", + "integrity": "sha512-lGe34o6EHj9y3Kts9R4ZYs/Gr+6N7MCaMlIFA3F1R2O5/m7K06AxfSeO5530PEERE6/WyEg3lsuyw4GHlPZHog==", + "dev": true + }, + "batch": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/batch/-/batch-0.6.1.tgz", + "integrity": "sha512-x+VAiMRL6UPkx+kudNvxTl6hB2XNNCG2r+7wixVfIYwu/2HKRXimwQyaumLjMveWvT2Hkd/cAJw+QBMfJ/EKVw==", + "dev": true + }, + "bcrypt-pbkdf": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", + "integrity": "sha512-qeFIXtP4MSoi6NLqO12WfqARWWuCKi2Rn/9hJLEmtB5yTNr9DqFWkJRCf2qShWzPeAMRnOgCrq0sg/KLv5ES9w==", + "dev": true, + "requires": { + "tweetnacl": "^0.14.3" + } + }, + "big.js": { + "version": "5.2.2", + "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz", + "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==", + "dev": true + }, + "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==", + "dev": true, + "requires": { + "buffer": "^5.5.0", + "inherits": "^2.0.4", + "readable-stream": "^3.4.0" + } + }, + "blocking-proxy": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/blocking-proxy/-/blocking-proxy-1.0.1.tgz", + "integrity": "sha512-KE8NFMZr3mN2E0HcvCgRtX7DjhiIQrwle+nSVJVC/yqFb9+xznHl2ZcoBp2L9qzkI4t4cBFJ1efXF8Dwi132RA==", + "dev": true, + "requires": { + "minimist": "^1.2.0" + } + }, + "body-parser": { + "version": "1.20.1", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.1.tgz", + "integrity": "sha512-jWi7abTbYwajOytWCQc37VulmWiRae5RyTpaCyDcS5/lMdtwSz5lOpDE67srw/HYe35f1z3fDQw+3txg7gNtWw==", + "dev": true, + "requires": { + "bytes": "3.1.2", + "content-type": "~1.0.4", + "debug": "2.6.9", + "depd": "2.0.0", + "destroy": "1.2.0", + "http-errors": "2.0.0", + "iconv-lite": "0.4.24", + "on-finished": "2.4.1", + "qs": "6.11.0", + "raw-body": "2.5.1", + "type-is": "~1.6.18", + "unpipe": "1.0.0" + }, + "dependencies": { + "bytes": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", + "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", + "dev": true + }, + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true + } + } + }, + "bonjour-service": { + "version": "1.0.14", + "resolved": "https://registry.npmjs.org/bonjour-service/-/bonjour-service-1.0.14.tgz", + "integrity": "sha512-HIMbgLnk1Vqvs6B4Wq5ep7mxvj9sGz5d1JJyDNSGNIdA/w2MCz6GTjWTdjqOJV1bEPj+6IkxDvWNFKEBxNt4kQ==", + "dev": true, + "requires": { + "array-flatten": "^2.1.2", + "dns-equal": "^1.0.0", + "fast-deep-equal": "^3.1.3", + "multicast-dns": "^7.2.5" + } }, - "callsite": { + "boolbase": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/callsite/-/callsite-1.0.0.tgz", - "integrity": "sha1-KAOY5dZkvXQDi28JBRU+borxvCA=", + "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", + "integrity": "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==", + "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" + } + }, + "browserslist": { + "version": "4.21.4", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.4.tgz", + "integrity": "sha512-CBHJJdDmgjl3daYjN5Cp5kbTf1mUhZoS+beLklHIvkOWscs83YAhLlF3Wsh/lciQYAcbBJgTOD44VtG31ZM4Hw==", + "dev": true, + "requires": { + "caniuse-lite": "^1.0.30001400", + "electron-to-chromium": "^1.4.251", + "node-releases": "^2.0.6", + "update-browserslist-db": "^1.0.9" + } + }, + "browserstack": { + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/browserstack/-/browserstack-1.6.1.tgz", + "integrity": "sha512-GxtFjpIaKdbAyzHfFDKixKO8IBT7wR3NjbzrGc78nNs/Ciys9wU3/nBtsqsWv5nDSrdI5tz0peKuzCPuNXNUiw==", + "dev": true, + "requires": { + "https-proxy-agent": "^2.2.1" + }, + "dependencies": { + "agent-base": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-4.3.0.tgz", + "integrity": "sha512-salcGninV0nPrwpGNn4VTXBb1SOuXQBiqbrNXoeizJsHrsL6ERFM2Ne3JUSBWRE6aeNJI2ROP/WEEIDUiDe3cg==", + "dev": true, + "requires": { + "es6-promisify": "^5.0.0" + } + }, + "debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + }, + "https-proxy-agent": { + "version": "2.2.4", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-2.2.4.tgz", + "integrity": "sha512-OmvfoQ53WLjtA9HeYP9RNrWMJzzAz1JGaSFr1nijg0PVR1JaD/xbJq1mdEIIlxGpXp9eSe/O2LgU9DJmTPd0Eg==", + "dev": true, + "requires": { + "agent-base": "^4.3.0", + "debug": "^3.1.0" + } + } + } + }, + "buffer": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", + "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", + "dev": true, + "requires": { + "base64-js": "^1.3.1", + "ieee754": "^1.1.13" + } + }, + "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 + }, + "builtin-modules": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-3.3.0.tgz", + "integrity": "sha512-zhaCDicdLuWN5UbN5IMnFqNMhNfo919sH85y2/ea+5Yg9TsTkeZxpL+JLbp6cgYFS4sRLp3YV4S6yDuqVWHYOw==", + "dev": true + }, + "builtins": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/builtins/-/builtins-5.0.1.tgz", + "integrity": "sha512-qwVpFEHNfhYJIzNRBvd2C1kyo6jz3ZSMPyyuR47OPdiKWlbYnZNyDWuyR175qDnAJLiCo5fBBqPb3RiXgWlkOQ==", + "dev": true, + "requires": { + "semver": "^7.0.0" + } + }, + "bytes": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz", + "integrity": "sha512-pMhOfFDPiv9t5jjIXkHosWmkSyQbvsgEVNkz0ERHbuLh2T/7j4Mqqpz523Fe8MVY89KC6Sh/QfS2sM+SjgFDcw==", "dev": true }, + "cacache": { + "version": "16.1.2", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-16.1.2.tgz", + "integrity": "sha512-Xx+xPlfCZIUHagysjjOAje9nRo8pRDczQCcXb4J2O0BLtH+xeVue6ba4y1kfJfQMAnM2mkcoMIAyOctlaRGWYA==", + "dev": true, + "requires": { + "@npmcli/fs": "^2.1.0", + "@npmcli/move-file": "^2.0.0", + "chownr": "^2.0.0", + "fs-minipass": "^2.1.0", + "glob": "^8.0.1", + "infer-owner": "^1.0.4", + "lru-cache": "^7.7.1", + "minipass": "^3.1.6", + "minipass-collect": "^1.0.2", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "mkdirp": "^1.0.4", + "p-map": "^4.0.0", + "promise-inflight": "^1.0.1", + "rimraf": "^3.0.2", + "ssri": "^9.0.0", + "tar": "^6.1.11", + "unique-filename": "^1.1.1" + } + }, + "call-bind": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", + "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", + "dev": true, + "requires": { + "function-bind": "^1.1.1", + "get-intrinsic": "^1.0.2" + } + }, "callsites": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/callsites/-/callsites-2.0.0.tgz", - "integrity": "sha1-BuuE8A7qQT2oav/vrL/7Ngk7PFA=", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", "dev": true }, "camelcase": { @@ -3457,21 +3087,15 @@ "dev": true }, "caniuse-lite": { - "version": "1.0.30001024", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001024.tgz", - "integrity": "sha512-LubRSEPpOlKlhZw9wGlLHo8ZVj6ugGU3xGUfLPneNBledSd9lIM5cCGZ9Mz/mMCJUhEt4jZpYteZNVRdJw5FRA==", - "dev": true - }, - "canonical-path": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/canonical-path/-/canonical-path-1.0.0.tgz", - "integrity": "sha512-feylzsbDxi1gPZ1IjystzIQZagYYLvfKrSuygUCgf7z6x790VEzze5QEkdSV1U58RA7Hi0+v6fv4K54atOzATg==", + "version": "1.0.30001439", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001439.tgz", + "integrity": "sha512-1MgUzEkoMO6gKfXflStpYgZDlFM7M/ck/bgfVCACO5vnAf0fXoNVHdWtqGU+MYca+4bL9Z5bpOVmR33cWW9G2A==", "dev": true }, "caseless": { "version": "0.12.0", "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", - "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=", + "integrity": "sha512-4tYFyifaFfGacoiObjJegolkwSU4xQNGbVgUiNYVUxbQ2x2lUsFvY4hVgVzGiIe6WLOPqycWXA40l+PWsxthUw==", "dev": true }, "chalk": { @@ -3492,25 +3116,25 @@ "dev": true }, "chokidar": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.3.1.tgz", - "integrity": "sha512-4QYCEWOcK3OJrxwvyyAOxFuhpvOVCYkr33LPfFNBjAD/w3sEzWsp2BUOkI4l9bHvWioAd0rc6NlHUOEaWkTeqg==", + "version": "3.5.3", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", + "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", "dev": true, "requires": { - "anymatch": "~3.1.1", + "anymatch": "~3.1.2", "braces": "~3.0.2", - "fsevents": "~2.1.2", - "glob-parent": "~5.1.0", + "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.3.0" + "readdirp": "~3.6.0" }, "dependencies": { "glob-parent": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.0.tgz", - "integrity": "sha512-qjtRgnIVmOfnKUE3NJAQEdk+lKrxfw8t5ke7SXtfMTHcjsBfOfWXCQfdb30zfDoZQ2IRSIiidmjtbHZPZ++Ihw==", + "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" @@ -3519,86 +3143,21 @@ } }, "chownr": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz", - "integrity": "sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==", - "dev": true - }, - "chrome-trace-event": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.2.tgz", - "integrity": "sha512-9e/zx1jw7B4CO+c/RXoCsfg/x1AfUBioy4owYH0bJprEYAx5hRFLRhWBqHAG57D0ZM4H7vxbP7bPe0VwhQRYDQ==", - "dev": true, - "requires": { - "tslib": "^1.9.0" - } - }, - "ci-info": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-2.0.0.tgz", - "integrity": "sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", + "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==", "dev": true }, - "cipher-base": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.4.tgz", - "integrity": "sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==", - "dev": true, - "requires": { - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" - } - }, - "circular-dependency-plugin": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/circular-dependency-plugin/-/circular-dependency-plugin-5.2.0.tgz", - "integrity": "sha512-7p4Kn/gffhQaavNfyDFg7LS5S/UT1JAjyGd4UqR2+jzoYF02eDkj0Ec3+48TsIa4zghjLY87nQHIh/ecK9qLdw==", + "chrome-trace-event": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.3.tgz", + "integrity": "sha512-p3KULyQg4S7NIHixdwbGX+nFHkoBiA4YQmyWtjb8XngSKV124nJmRysgAeujbUVb15vh+RvFUfCPqU7rXk+hZg==", "dev": true }, - "class-utils": { - "version": "0.3.6", - "resolved": "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz", - "integrity": "sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==", - "dev": true, - "requires": { - "arr-union": "^3.1.0", - "define-property": "^0.2.5", - "isobject": "^3.0.0", - "static-extend": "^0.1.1" - }, - "dependencies": { - "define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "dev": true, - "requires": { - "is-descriptor": "^0.1.0" - } - } - } - }, - "clean-css": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-4.2.1.tgz", - "integrity": "sha512-4ZxI6dy4lrY6FHzfiy1aEOXgu4LIsW2MhwG0VBKdcoGoH/XLFgaHSdLTGr4O8Be6A8r3MOphEiI8Gc1n0ecf3g==", - "dev": true, - "requires": { - "source-map": "~0.6.0" - }, - "dependencies": { - "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 - } - } - }, - "cli-boxes": { + "clean-stack": { "version": "2.2.0", - "resolved": "https://registry.npmjs.org/cli-boxes/-/cli-boxes-2.2.0.tgz", - "integrity": "sha512-gpaBrMAizVEANOpfZp/EEUixTXDyGt7DFzdK5hU+UbWt/J0lB0w20ncZj59Z9a93xHb9u12zF5BS6i9RKbtg4w==", + "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", + "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", "dev": true }, "cli-cursor": { @@ -3610,44 +3169,33 @@ "restore-cursor": "^3.1.0" } }, + "cli-spinners": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.7.0.tgz", + "integrity": "sha512-qu3pN8Y3qHNgE2AFweciB1IfMnmZ/fsNTEE+NOFjmGB2F/7rLhnhzppvpCnN4FovtP26k8lHyy9ptEbNwWFLzw==", + "dev": true + }, "cli-width": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-2.2.0.tgz", - "integrity": "sha1-/xnt6Kml5XkyQUewwR8PvLq+1jk=", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-3.0.0.tgz", + "integrity": "sha512-FxqpkPPwu1HjuN93Omfm4h8uIanXofW0RxVEW3k5RKx+mJJYSthzNhp32Kzxxy3YAEZ/Dc/EWN1vZRY0+kOhbw==", "dev": true }, "cliui": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-4.1.0.tgz", - "integrity": "sha512-4FG+RSG9DL7uEwRUZXZn3SS34DiDPfzP0VOiEwtUWlE+AR2EIg+hSyvrIgUUfhdgR/UkAeW2QHgeP+hWrXs7jQ==", + "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": "^2.1.1", - "strip-ansi": "^4.0.0", - "wrap-ansi": "^2.0.0" - }, - "dependencies": { - "ansi-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", - "dev": true - }, - "strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", - "dev": true, - "requires": { - "ansi-regex": "^3.0.0" - } - } + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^7.0.0" } }, "clone": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/clone/-/clone-2.1.2.tgz", - "integrity": "sha1-G39Ln1kfHo+DZwQBYANFoCiHQ18=", + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz", + "integrity": "sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg==", "dev": true }, "clone-deep": { @@ -3661,42 +3209,53 @@ "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=", + "codelyzer": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/codelyzer/-/codelyzer-6.0.2.tgz", + "integrity": "sha512-v3+E0Ucu2xWJMOJ2fA/q9pDT/hlxHftHGPUay1/1cTgyPV5JTHFdO9hqo837Sx2s9vKBMTt5gO+lhF95PO6J+g==", "dev": true, "requires": { - "mimic-response": "^1.0.0" - } - }, - "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 - }, - "codelyzer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/codelyzer/-/codelyzer-5.2.1.tgz", - "integrity": "sha512-awBZXFcJUyC5HMYXiHzjr3D24tww2l1D1OqtfA9vUhEtYr32a65A+Gblm/OvsO+HuKLYzn8EDMw1inSM3VbxWA==", - "dev": true, - "requires": { - "app-root-path": "^2.2.1", + "@angular/compiler": "9.0.0", + "@angular/core": "9.0.0", + "app-root-path": "^3.0.0", "aria-query": "^3.0.0", "axobject-query": "2.0.2", "css-selector-tokenizer": "^0.7.1", "cssauron": "^1.4.0", "damerau-levenshtein": "^1.0.4", + "rxjs": "^6.5.3", "semver-dsl": "^1.0.1", "source-map": "^0.5.7", - "sprintf-js": "^1.1.2" + "sprintf-js": "^1.1.2", + "tslib": "^1.10.0", + "zone.js": "~0.10.3" }, "dependencies": { + "@angular/compiler": { + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/@angular/compiler/-/compiler-9.0.0.tgz", + "integrity": "sha512-ctjwuntPfZZT2mNj2NDIVu51t9cvbhl/16epc5xEwyzyDt76pX9UgwvY+MbXrf/C/FWwdtmNtfP698BKI+9leQ==", + "dev": true + }, + "@angular/core": { + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/@angular/core/-/core-9.0.0.tgz", + "integrity": "sha512-6Pxgsrf0qF9iFFqmIcWmjJGkkCaCm6V5QNnxMy2KloO3SDq6QuMVRbN9RtC8Urmo25LP+eZ6ZgYqFYpdD8Hd9w==", + "dev": true + }, + "rxjs": { + "version": "6.6.7", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", + "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", + "dev": true, + "requires": { + "tslib": "^1.9.0" + } + }, "source-map": { "version": "0.5.7", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==", "dev": true }, "sprintf-js": { @@ -3704,19 +3263,21 @@ "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.1.2.tgz", "integrity": "sha512-VE0SOVEHCk7Qc8ulkWw3ntAzXuqf7S2lvwQaDLRnUeIEaKNQJzV6BwmLKhOqT61aGhfUMrXeaBk+oDGCzvhcug==", "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 + }, + "zone.js": { + "version": "0.10.3", + "resolved": "https://registry.npmjs.org/zone.js/-/zone.js-0.10.3.tgz", + "integrity": "sha512-LXVLVEq0NNOqK/fLJo3d0kfzd4sxwn2/h67/02pjCjfKDxgx1i9QqpvtHD8CrBnSSwMw5+dy11O7FRX5mkO7Cg==", + "dev": true } } }, - "collection-visit": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz", - "integrity": "sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA=", - "dev": true, - "requires": { - "map-visit": "^1.0.0", - "object-visit": "^1.0.0" - } - }, "color-convert": { "version": "1.9.3", "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", @@ -3729,13 +3290,25 @@ "color-name": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", + "dev": true + }, + "color-support": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-support/-/color-support-1.1.3.tgz", + "integrity": "sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==", + "dev": true + }, + "colorette": { + "version": "2.0.19", + "resolved": "https://registry.npmjs.org/colorette/-/colorette-2.0.19.tgz", + "integrity": "sha512-3tlv/dIP7FWvj3BsbHrGLJ6l/oKh1O3TcgBqMn+yyCagOxc23fyzDS6HypQbgxWbkpDnf52p1LuR4eWDQ/K9WQ==", "dev": true }, "colors": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/colors/-/colors-1.1.2.tgz", - "integrity": "sha1-FopHAXVran9RoSzgyXv6KMCE7WM=", + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/colors/-/colors-1.4.0.tgz", + "integrity": "sha512-a+UqTh4kgZg/SlGvfbzDHpgRu7AAQOmmqRHJnxhRZICKFUT91brVhNNt58CMWU9PsBbv3PDCZUHbVxuDiH2mtA==", "dev": true }, "combined-stream": { @@ -3756,31 +3329,7 @@ "commondir": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", - "integrity": "sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs=", - "dev": 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 - }, - "component-bind": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/component-bind/-/component-bind-1.0.0.tgz", - "integrity": "sha1-AMYIq33Nk4l8AAllGx06jh5zu9E=", - "dev": true - }, - "component-emitter": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz", - "integrity": "sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==", - "dev": true - }, - "component-inherit": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/component-inherit/-/component-inherit-0.0.3.tgz", - "integrity": "sha1-ZF/ErfWLcrZJ1crmUTVhnbJv8UM=", + "integrity": "sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==", "dev": true }, "compressible": { @@ -3819,7 +3368,13 @@ "ms": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true + }, + "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 } } @@ -3827,52 +3382,9 @@ "concat-map": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", "dev": true }, - "concat-stream": { - "version": "1.6.2", - "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz", - "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==", - "dev": true, - "requires": { - "buffer-from": "^1.0.0", - "inherits": "^2.0.3", - "readable-stream": "^2.2.2", - "typedarray": "^0.0.6" - } - }, - "configstore": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/configstore/-/configstore-4.0.0.tgz", - "integrity": "sha512-CmquAXFBocrzaSM8mtGPMM/HiWmyIpr4CcJl/rgY2uCObZ/S7cKU0silxslqJejl+t/T9HS8E0PUNQD81JGUEQ==", - "dev": true, - "requires": { - "dot-prop": "^4.1.0", - "graceful-fs": "^4.1.2", - "make-dir": "^1.0.0", - "unique-string": "^1.0.0", - "write-file-atomic": "^2.0.0", - "xdg-basedir": "^3.0.0" - }, - "dependencies": { - "make-dir": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-1.3.0.tgz", - "integrity": "sha512-2w31R7SJtieJJnQtGc7RVL2StM2vGYVfqUOvUDxH6bC6aJTxPxTF0GnIgCyu7tjockiUWAYQRbxa7vKn34s5sQ==", - "dev": true, - "requires": { - "pify": "^3.0.0" - } - }, - "pify": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", - "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", - "dev": true - } - } - }, "connect": { "version": "3.7.0", "resolved": "https://registry.npmjs.org/connect/-/connect-3.7.0.tgz", @@ -3894,39 +3406,63 @@ "ms": "2.0.0" } }, + "finalhandler": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.2.tgz", + "integrity": "sha512-aAWcW57uxVNrQZqFXjITpW3sIUQmHGG3qSb9mUah9MgMC4NeWhNOlNjXEYq3HjRAvL6arUviZGGJsBg6z0zsWA==", + "dev": true, + "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" + } + }, "ms": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true + }, + "on-finished": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", + "integrity": "sha512-ikqdkGAAyf/X/gPhXGvfgAytDZtDbr+bkNUJ0N9h5MI/dmdgCs3l6hoHrcUv41sRKew3jIwrp4qQDXiK99Utww==", + "dev": true, + "requires": { + "ee-first": "1.1.1" + } + }, + "statuses": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", + "integrity": "sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA==", "dev": true } } }, "connect-history-api-fallback": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/connect-history-api-fallback/-/connect-history-api-fallback-1.6.0.tgz", - "integrity": "sha512-e54B99q/OUoH64zYYRf3HBP5z24G38h5D3qXu23JGRoigpX5Ss4r9ZnDk3g0Z8uQC2x2lPaJ+UlWBc1ZWBWdLg==", - "dev": true - }, - "console-browserify": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/console-browserify/-/console-browserify-1.2.0.tgz", - "integrity": "sha512-ZMkYO/LkF17QvCPqM0gxw8yUzigAOZOSWSHg91FH6orS7vcEj5dVZTidN2fQ14yBSdg97RqhSNwLUXInd52OTA==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/connect-history-api-fallback/-/connect-history-api-fallback-2.0.0.tgz", + "integrity": "sha512-U73+6lQFmfiNPrYbXqr6kZ1i1wiRqXnp2nhMsINseWXO8lDau0LGEffJ8kQi4EjLZympVgRdvqjAgiZ1tgzDDA==", "dev": true }, - "constants-browserify": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/constants-browserify/-/constants-browserify-1.0.0.tgz", - "integrity": "sha1-wguW2MYXdIqvHBYCF2DNJ/y4y3U=", + "console-control-strings": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", + "integrity": "sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ==", "dev": true }, "content-disposition": { - "version": "0.5.3", - "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.3.tgz", - "integrity": "sha512-ExO0774ikEObIAEV9kDo50o+79VCUdEB6n6lzKgGwupcVeRlhrj3qGAfwq8G6uBJjkqLrhT0qEYFcWng8z1z0g==", + "version": "0.5.4", + "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz", + "integrity": "sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==", "dev": true, "requires": { - "safe-buffer": "5.1.2" + "safe-buffer": "5.2.1" } }, "content-type": { @@ -3936,278 +3472,267 @@ "dev": true }, "convert-source-map": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.7.0.tgz", - "integrity": "sha512-4FJkXzKXEDB1snCFZlLP4gpC3JILicCpGbzG9f9G7tGqGCzETQ2hWPrcinA9oU4wtf2biUaEH5065UnMeR33oA==", - "dev": true, - "requires": { - "safe-buffer": "~5.1.1" - } + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.9.0.tgz", + "integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==", + "dev": true }, "cookie": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.0.tgz", - "integrity": "sha512-+Hp8fLp57wnUSt0tY0tHEXh4voZRDnoIrZPqlo3DPiI4y9lwg/jqx+1Om94/W6ZaPDOUbnjOt/99w66zk+l1Xg==", + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.5.0.tgz", + "integrity": "sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw==", "dev": true }, "cookie-signature": { "version": "1.0.6", "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", - "integrity": "sha1-4wOogrNCzD7oylE6eZmXNNqzriw=", + "integrity": "sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==", "dev": true }, - "copy-concurrently": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/copy-concurrently/-/copy-concurrently-1.0.5.tgz", - "integrity": "sha512-f2domd9fsVDFtaFcbaRZuYXwtdmnzqbADSwhSWYxYB/Q8zsdUUFMXVRwXGDMWmbEzAn1kdRrtI1T/KTFOL4X2A==", + "copy-anything": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/copy-anything/-/copy-anything-2.0.6.tgz", + "integrity": "sha512-1j20GZTsvKNkc4BY3NpMOM8tt///wY3FpIzozTOFO2ffuZcV61nojHXVKIy3WM+7ADCy5FVhdZYHYDdgTU0yJw==", "dev": true, "requires": { - "aproba": "^1.1.1", - "fs-write-stream-atomic": "^1.0.8", - "iferr": "^0.1.5", - "mkdirp": "^0.5.1", - "rimraf": "^2.5.4", - "run-queue": "^1.0.0" + "is-what": "^3.14.1" } }, - "copy-descriptor": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz", - "integrity": "sha1-Z29us8OZl8LuGsOpJP1hJHSPV40=", - "dev": true - }, "copy-webpack-plugin": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/copy-webpack-plugin/-/copy-webpack-plugin-5.1.1.tgz", - "integrity": "sha512-P15M5ZC8dyCjQHWwd4Ia/dm0SgVvZJMYeykVIVYXbGyqO4dWB5oyPHp9i7wjwo5LhtlhKbiBCdS2NvM07Wlybg==", + "version": "11.0.0", + "resolved": "https://registry.npmjs.org/copy-webpack-plugin/-/copy-webpack-plugin-11.0.0.tgz", + "integrity": "sha512-fX2MWpamkW0hZxMEg0+mYnA40LTosOSa5TqZ9GYIBzyJa9C3QUaMPSE2xAi/buNr8u89SfD9wHSQVBzrRa/SOQ==", "dev": true, "requires": { - "cacache": "^12.0.3", - "find-cache-dir": "^2.1.0", - "glob-parent": "^3.1.0", - "globby": "^7.1.1", - "is-glob": "^4.0.1", - "loader-utils": "^1.2.3", - "minimatch": "^3.0.4", + "fast-glob": "^3.2.11", + "glob-parent": "^6.0.1", + "globby": "^13.1.1", "normalize-path": "^3.0.0", - "p-limit": "^2.2.1", - "schema-utils": "^1.0.0", - "serialize-javascript": "^2.1.2", - "webpack-log": "^2.0.0" + "schema-utils": "^4.0.0", + "serialize-javascript": "^6.0.0" }, "dependencies": { - "cacache": { - "version": "12.0.3", - "resolved": "https://registry.npmjs.org/cacache/-/cacache-12.0.3.tgz", - "integrity": "sha512-kqdmfXEGFepesTuROHMs3MpFLWrPkSSpRqOw80RCflZXy/khxaArvFrQ7uJxSUduzAufc6G0g1VUCOZXxWavPw==", + "ajv-keywords": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz", + "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", "dev": true, "requires": { - "bluebird": "^3.5.5", - "chownr": "^1.1.1", - "figgy-pudding": "^3.5.1", - "glob": "^7.1.4", - "graceful-fs": "^4.1.15", - "infer-owner": "^1.0.3", - "lru-cache": "^5.1.1", - "mississippi": "^3.0.0", - "mkdirp": "^0.5.1", - "move-concurrently": "^1.0.1", - "promise-inflight": "^1.0.1", - "rimraf": "^2.6.3", - "ssri": "^6.0.1", - "unique-filename": "^1.1.1", - "y18n": "^4.0.0" + "fast-deep-equal": "^3.1.3" } }, - "find-cache-dir": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-2.1.0.tgz", - "integrity": "sha512-Tq6PixE0w/VMFfCgbONnkiQIVol/JJL7nRMi20fqzA4NRs9AfeqMGeRdPi3wIhYkxjeBaWh2rxwapn5Tu3IqOQ==", + "schema-utils": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.0.0.tgz", + "integrity": "sha512-1edyXKgh6XnJsJSQ8mKWXnN/BVaIbFMLpouRUrXgVq7WYne5kw3MW7UPhO44uRXQSIpTSXoJbmrR2X0w9kUTyg==", "dev": true, "requires": { - "commondir": "^1.0.1", - "make-dir": "^2.0.0", - "pkg-dir": "^3.0.0" + "@types/json-schema": "^7.0.9", + "ajv": "^8.8.0", + "ajv-formats": "^2.1.1", + "ajv-keywords": "^5.0.0" } } } }, - "core-js": { - "version": "3.6.4", - "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.6.4.tgz", - "integrity": "sha512-4paDGScNgZP2IXXilaffL9X7968RuvwlkK3xWtZRVqgd8SYNiVKRJvkFd1aqqEuPfN7E68ZHEp9hDj6lHj4Hyw==", - "dev": true - }, "core-js-compat": { - "version": "3.6.4", - "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.6.4.tgz", - "integrity": "sha512-zAa3IZPvsJ0slViBQ2z+vgyyTuhd3MFn1rBQjZSKVEgB0UMYhUkCj9jJUVPgGTGqWvsBVmfnruXgTcNyTlEiSA==", + "version": "3.26.1", + "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.26.1.tgz", + "integrity": "sha512-622/KzTudvXCDLRw70iHW4KKs1aGpcRcowGWyYJr2DEBfRrd6hNJybxSWJFuZYD4ma86xhrwDDHxmDaIq4EA8A==", "dev": true, "requires": { - "browserslist": "^4.8.3", - "semver": "7.0.0" - }, - "dependencies": { - "semver": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.0.0.tgz", - "integrity": "sha512-+GB6zVA9LWh6zovYQLALHwv5rb2PHGlJi3lfiqIHxR0uuwCgefcOJc59v9fv1w8GbStwxuuqqAjI9NMAOOgq1A==", - "dev": true - } + "browserslist": "^4.21.4" } }, "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=", + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz", + "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==", "dev": true }, + "cors": { + "version": "2.8.5", + "resolved": "https://registry.npmjs.org/cors/-/cors-2.8.5.tgz", + "integrity": "sha512-KIHbLJqu73RGr/hnbrO9uBeixNGuvSQjul/jdFvS/KFSIH1hWVd1ng7zOHx+YrEfInLG7q4n6GHQ9cDtxv/P6g==", + "dev": true, + "requires": { + "object-assign": "^4", + "vary": "^1" + } + }, "cosmiconfig": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-5.2.1.tgz", - "integrity": "sha512-H65gsXo1SKjf8zmrJ67eJk8aIRKV5ff2D4uKZIBZShbhGSpEmsQOPW/SKMKYhSTrqR7ufy6RP69rPogdaPh/kA==", + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.1.0.tgz", + "integrity": "sha512-AdmX6xUzdNASswsFtmwSt7Vj8po9IuqXm0UXz7QKPuEUmPB4XyjGfaAr2PSuELMwkRMVH1EpIkX5bTZGRB3eCA==", "dev": true, "requires": { - "import-fresh": "^2.0.0", - "is-directory": "^0.3.1", - "js-yaml": "^3.13.1", - "parse-json": "^4.0.0" + "@types/parse-json": "^4.0.0", + "import-fresh": "^3.2.1", + "parse-json": "^5.0.0", + "path-type": "^4.0.0", + "yaml": "^1.10.0" } }, - "coverage-istanbul-loader": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/coverage-istanbul-loader/-/coverage-istanbul-loader-2.0.3.tgz", - "integrity": "sha512-LiGRvyIuzVYs3M1ZYK1tF0HekjH0DJ8zFdUwAZq378EJzqOgToyb1690dp3TAUlP6Y+82uu42LRjuROVeJ54CA==", + "critters": { + "version": "0.0.16", + "resolved": "https://registry.npmjs.org/critters/-/critters-0.0.16.tgz", + "integrity": "sha512-JwjgmO6i3y6RWtLYmXwO5jMd+maZt8Tnfu7VVISmEWyQqfLpB8soBswf8/2bu6SBXxtKA68Al3c+qIG1ApT68A==", "dev": true, "requires": { - "convert-source-map": "^1.7.0", - "istanbul-lib-instrument": "^4.0.0", - "loader-utils": "^1.2.3", - "merge-source-map": "^1.1.0", - "schema-utils": "^2.6.1" + "chalk": "^4.1.0", + "css-select": "^4.2.0", + "parse5": "^6.0.1", + "parse5-htmlparser2-tree-adapter": "^6.0.1", + "postcss": "^8.3.7", + "pretty-bytes": "^5.3.0" }, "dependencies": { - "schema-utils": { - "version": "2.6.4", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-2.6.4.tgz", - "integrity": "sha512-VNjcaUxVnEeun6B2fiiUDjXXBtD4ZSH7pdbfIu1pOFwgptDPLMo/z9jr4sUfsjFVPqDCEin/F7IYlq7/E6yDbQ==", + "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": { - "ajv": "^6.10.2", - "ajv-keywords": "^3.4.1" + "color-convert": "^2.0.1" + } + }, + "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" + } + }, + "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" } } } }, - "create-ecdh": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/create-ecdh/-/create-ecdh-4.0.3.tgz", - "integrity": "sha512-GbEHQPMOswGpKXM9kCWVrremUcBmjteUaQ01T9rkKCPDXfUHX0IoP9LpHYo2NPFampa4e+/pFDc3jQdxrxQLaw==", + "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": { - "bn.js": "^4.1.0", - "elliptic": "^6.0.0" + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" } }, - "create-hash": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz", - "integrity": "sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==", + "css-blank-pseudo": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/css-blank-pseudo/-/css-blank-pseudo-3.0.3.tgz", + "integrity": "sha512-VS90XWtsHGqoM0t4KpH053c4ehxZ2E6HtGI7x68YFV0pTo/QmkV/YFA+NnlvK8guxZVNWGQhVNJGC39Q8XF4OQ==", "dev": true, "requires": { - "cipher-base": "^1.0.1", - "inherits": "^2.0.1", - "md5.js": "^1.3.4", - "ripemd160": "^2.0.1", - "sha.js": "^2.4.0" + "postcss-selector-parser": "^6.0.9" } }, - "create-hmac": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz", - "integrity": "sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==", + "css-has-pseudo": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/css-has-pseudo/-/css-has-pseudo-3.0.4.tgz", + "integrity": "sha512-Vse0xpR1K9MNlp2j5w1pgWIJtm1a8qS0JwS9goFYcImjlHEmywP9VUF05aGBXzGpDJF86QXk4L0ypBmwPhGArw==", "dev": true, "requires": { - "cipher-base": "^1.0.3", - "create-hash": "^1.1.0", - "inherits": "^2.0.1", - "ripemd160": "^2.0.0", - "safe-buffer": "^5.0.1", - "sha.js": "^2.4.8" + "postcss-selector-parser": "^6.0.9" } }, - "cross-spawn": { - "version": "6.0.5", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", - "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", + "css-loader": { + "version": "6.7.1", + "resolved": "https://registry.npmjs.org/css-loader/-/css-loader-6.7.1.tgz", + "integrity": "sha512-yB5CNFa14MbPJcomwNh3wLThtkZgcNyI2bNMRt8iE5Z8Vwl7f8vQXFAzn2HDOJvtDq2NTZBUGMSUNNyrv3/+cw==", "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" - }, - "dependencies": { - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "dev": true - } + "icss-utils": "^5.1.0", + "postcss": "^8.4.7", + "postcss-modules-extract-imports": "^3.0.0", + "postcss-modules-local-by-default": "^4.0.0", + "postcss-modules-scope": "^3.0.0", + "postcss-modules-values": "^4.0.0", + "postcss-value-parser": "^4.2.0", + "semver": "^7.3.5" } }, - "crypto-browserify": { - "version": "3.12.0", - "resolved": "https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-3.12.0.tgz", - "integrity": "sha512-fz4spIh+znjO2VjL+IdhEpRJ3YN6sMzITSBijk6FK2UvTqruSQW+/cCZTSNsMiZNvUeq0CqurF+dAbyiGOY6Wg==", + "css-prefers-color-scheme": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/css-prefers-color-scheme/-/css-prefers-color-scheme-6.0.3.tgz", + "integrity": "sha512-4BqMbZksRkJQx2zAjrokiGMd07RqOa2IxIrrN10lyBe9xhn9DEvjUK79J6jkeiv9D9hQFXKb6g1jwU62jziJZA==", + "dev": true + }, + "css-select": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/css-select/-/css-select-4.3.0.tgz", + "integrity": "sha512-wPpOYtnsVontu2mODhA19JrqWxNsfdatRKd64kmpRbQgh1KtItko5sTnEpPdpSaJszTOhEMlF/RPz28qj4HqhQ==", "dev": true, "requires": { - "browserify-cipher": "^1.0.0", - "browserify-sign": "^4.0.0", - "create-ecdh": "^4.0.0", - "create-hash": "^1.1.0", - "create-hmac": "^1.1.0", - "diffie-hellman": "^5.0.0", - "inherits": "^2.0.1", - "pbkdf2": "^3.0.3", - "public-encrypt": "^4.0.0", - "randombytes": "^2.0.0", - "randomfill": "^1.0.3" + "boolbase": "^1.0.0", + "css-what": "^6.0.1", + "domhandler": "^4.3.1", + "domutils": "^2.8.0", + "nth-check": "^2.0.1" } }, - "crypto-random-string": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-1.0.0.tgz", - "integrity": "sha1-ojD2T1aDEOFJgAmUB5DsmVRbyn4=", - "dev": true - }, - "css-parse": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/css-parse/-/css-parse-1.7.0.tgz", - "integrity": "sha1-Mh9s9zeCpv91ERE5D8BeLGV9jJs=", - "dev": true - }, "css-selector-tokenizer": { - "version": "0.7.2", - "resolved": "https://registry.npmjs.org/css-selector-tokenizer/-/css-selector-tokenizer-0.7.2.tgz", - "integrity": "sha512-yj856NGuAymN6r8bn8/Jl46pR+OC3eEvAhfGYDUe7YPtTPAYrSSw4oAniZ9Y8T5B92hjhwTBLUen0/vKPxf6pw==", + "version": "0.7.3", + "resolved": "https://registry.npmjs.org/css-selector-tokenizer/-/css-selector-tokenizer-0.7.3.tgz", + "integrity": "sha512-jWQv3oCEL5kMErj4wRnK/OPoBi0D+P1FR2cDCKYPaMeD2eW3/mttav8HT4hT1CKopiJI/psEULjkClhvJo4Lvg==", "dev": true, "requires": { "cssesc": "^3.0.0", - "fastparse": "^1.1.2", - "regexpu-core": "^4.6.0" + "fastparse": "^1.1.2" } }, + "css-what": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/css-what/-/css-what-6.1.0.tgz", + "integrity": "sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw==", + "dev": true + }, "cssauron": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/cssauron/-/cssauron-1.4.0.tgz", - "integrity": "sha1-pmAt/34EqDBtwNuaVR6S6LVmKtg=", + "integrity": "sha512-Ht70DcFBh+/ekjVrYS2PlDMdSQEl3OFNmjK6lcn49HptBgilXf/Zwg4uFh9Xn0pX3Q8YOkSjIFOfK2osvdqpBw==", "dev": true, "requires": { "through": "X.X.X" } }, + "cssdb": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/cssdb/-/cssdb-7.2.0.tgz", + "integrity": "sha512-JYlIsE7eKHSi0UNuCyo96YuIDFqvhGgHw4Ck6lsN+DP0Tp8M64UTDT2trGbkMDqnCoEjks7CkS0XcjU0rkvBdg==", + "dev": true + }, "cssesc": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", @@ -4217,207 +3742,152 @@ "cuint": { "version": "0.2.2", "resolved": "https://registry.npmjs.org/cuint/-/cuint-0.2.2.tgz", - "integrity": "sha1-QICG1AlVDCYxFVYZ6fp7ytw7mRs=", + "integrity": "sha512-d4ZVpCW31eWwCMe1YT3ur7mUDnTXbgwyzaL320DrcRT45rfjYxkt5QWLrmOJ+/UEAI2+fQgKe/fCjR8l4TpRgw==", "dev": true }, "custom-event": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/custom-event/-/custom-event-1.0.1.tgz", - "integrity": "sha1-XQKkaFCt8bSjF5RqOSj8y1v9BCU=", - "dev": true - }, - "cyclist": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/cyclist/-/cyclist-1.0.1.tgz", - "integrity": "sha1-WW6WmP0MgOEgOMK4LW6xs1tiJNk=", + "integrity": "sha512-GAj5FOq0Hd+RsCGVJxZuKaIDXDf3h6GQoNEjFgbLLI/trgtavwUbSnZ5pVfg27DVCaWjIohryS0JFwIJyT2cMg==", "dev": true }, "damerau-levenshtein": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/damerau-levenshtein/-/damerau-levenshtein-1.0.6.tgz", - "integrity": "sha512-JVrozIeElnj3QzfUIt8tB8YMluBJom4Vw9qTPpjGYQ9fYlB3D/rb6OordUxf3xeFB35LKWs0xqcO5U6ySvBtug==", + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/damerau-levenshtein/-/damerau-levenshtein-1.0.8.tgz", + "integrity": "sha512-sdQSFB7+llfUcQHUQO3+B8ERRj0Oa4w9POWMI/puGtuf7gFywGmkaLCElnudfTiKZV+NvHqL0ifzdrI8Ro7ESA==", "dev": true }, "dashdash": { "version": "1.14.1", "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", - "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=", + "integrity": "sha512-jRFi8UDGo6j+odZiEpjazZaWqEal3w/basFjQHQEwVtZJGDpxbH1MeYluwCS8Xq5wmLJooDlMgvVarmWfGM44g==", "dev": true, "requires": { "assert-plus": "^1.0.0" } }, "date-format": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/date-format/-/date-format-2.1.0.tgz", - "integrity": "sha512-bYQuGLeFxhkxNOF3rcMtiZxvCBAquGzZm6oWA1oZ0g2THUzivaRhv8uOhdr19LmoobSOLoIAxeUK2RdbM8IFTA==", + "version": "4.0.14", + "resolved": "https://registry.npmjs.org/date-format/-/date-format-4.0.14.tgz", + "integrity": "sha512-39BOQLs9ZjKh0/patS9nrT8wc3ioX3/eA/zgbKNopnF2wCqJEoxywwwElATYvRsXdnOxA/OQeQoFZ3rFjVajhg==", "dev": true }, "debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", "dev": true, "requires": { - "ms": "^2.1.1" + "ms": "2.1.2" } }, - "debuglog": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/debuglog/-/debuglog-1.0.1.tgz", - "integrity": "sha1-qiT/uaw9+aI1GDfPstJ5NgzXhJI=", - "dev": true - }, "decamelize": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", - "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", + "integrity": "sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA==", "dev": true }, "decode-uri-component": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz", - "integrity": "sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU=", + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.2.tgz", + "integrity": "sha512-FqUYQ+8o158GyGTrMFJms9qh3CqTKvAqgqsTnkLI8sKu0028orqBhxNMFkFen0zGyg6epACD32pjVk58ngIErQ==", "dev": true }, - "decompress-response": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-3.3.0.tgz", - "integrity": "sha1-gKTdMjdIOEv6JICDYirt7Jgq3/M=", - "dev": true, - "requires": { - "mimic-response": "^1.0.0" - } - }, - "deep-equal": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-1.1.1.tgz", - "integrity": "sha512-yd9c5AdiqVcR+JjcwUQb9DkhJc8ngNr0MahEBGvDiJw8puWab2yZlh+nkasOnZP+EGTAP6rRp2JzJhJZzvNF8g==", - "dev": true, - "requires": { - "is-arguments": "^1.0.4", - "is-date-object": "^1.0.1", - "is-regex": "^1.0.4", - "object-is": "^1.0.1", - "object-keys": "^1.1.1", - "regexp.prototype.flags": "^1.2.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==", + "deepmerge": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.2.2.tgz", + "integrity": "sha512-FJ3UgI4gIl+PHZm53knsuSFpE+nESMr7M4v9QcgB7S63Kj/6WqMiFQJpBBYz1Pt+66bZpP3Q7Lye0Oo9MPKEdg==", "dev": true }, "default-gateway": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/default-gateway/-/default-gateway-4.2.0.tgz", - "integrity": "sha512-h6sMrVB1VMWVrW13mSc6ia/DwYYw5MN6+exNu1OaJeFac5aSAvwM7lZ0NVfTABuSkQelr4h5oebg3KB1XPdjgA==", + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/default-gateway/-/default-gateway-6.0.3.tgz", + "integrity": "sha512-fwSOJsbbNzZ/CUFpqFBqYfYNLj1NbMPm8MMCIzHjC83iSJRBEGmDUxU+WP661BaBQImeC2yHwXtz+P/O9o+XEg==", "dev": true, "requires": { - "execa": "^1.0.0", - "ip-regex": "^2.1.0" + "execa": "^5.0.0" } }, - "default-require-extensions": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/default-require-extensions/-/default-require-extensions-2.0.0.tgz", - "integrity": "sha1-9fj7sYp9bVCyH2QfZJ67Uiz+JPc=", + "defaults": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/defaults/-/defaults-1.0.4.tgz", + "integrity": "sha512-eFuaLoy/Rxalv2kr+lqMlUnrDWV+3j4pljOIJgLIhI058IQfWJ7vXhyEIHu+HtC738klGALYxOKDO0bQP3tg8A==", "dev": true, "requires": { - "strip-bom": "^3.0.0" + "clone": "^1.0.2" } }, - "defer-to-connect": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/defer-to-connect/-/defer-to-connect-1.1.3.tgz", - "integrity": "sha512-0ISdNousHvZT2EiFlZeZAHBUvSxmKswVCEf8hW7KWgG4a8MVEu/3Vb6uWYozkjylyCxe0JBIiRB1jV45S70WVQ==", + "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==", "dev": true }, - "define-properties": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz", - "integrity": "sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==", - "dev": true, - "requires": { - "object-keys": "^1.0.12" - } - }, - "define-property": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz", - "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==", + "del": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/del/-/del-2.2.2.tgz", + "integrity": "sha512-Z4fzpbIRjOu7lO5jCETSWoqUDVe0IPOlfugBsF6suen2LKDlVb4QZpKEM9P+buNJ4KI1eN7I083w/pbKUpsrWQ==", "dev": true, "requires": { - "is-descriptor": "^1.0.2", - "isobject": "^3.0.1" + "globby": "^5.0.0", + "is-path-cwd": "^1.0.0", + "is-path-in-cwd": "^1.0.0", + "object-assign": "^4.0.1", + "pify": "^2.0.0", + "pinkie-promise": "^2.0.0", + "rimraf": "^2.2.8" }, "dependencies": { - "is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", "dev": true, "requires": { - "kind-of": "^6.0.0" + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" } }, - "is-data-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", - "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "globby": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/globby/-/globby-5.0.0.tgz", + "integrity": "sha512-HJRTIH2EeH44ka+LWig+EqT2ONSYpVlNfx6pyd592/VF1TbfljJ7elwie7oSwcViLGqOdWocSdu2txwBF9bjmQ==", "dev": true, "requires": { - "kind-of": "^6.0.0" + "array-union": "^1.0.1", + "arrify": "^1.0.0", + "glob": "^7.0.3", + "object-assign": "^4.0.1", + "pify": "^2.0.0", + "pinkie-promise": "^2.0.0" } }, - "is-descriptor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", - "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "requires": { + "brace-expansion": "^1.1.7" + } + }, + "pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==", + "dev": true + }, + "rimraf": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", + "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", "dev": true, "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - } - } - } - }, - "del": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/del/-/del-4.1.1.tgz", - "integrity": "sha512-QwGuEUouP2kVwQenAsOof5Fv8K9t3D8Ca8NxcXKrIpEHjTXK5J2nXLdP+ALI1cgv8wj7KuwBhTwBkOZSJKM5XQ==", - "dev": true, - "requires": { - "@types/glob": "^7.1.1", - "globby": "^6.1.0", - "is-path-cwd": "^2.0.0", - "is-path-in-cwd": "^2.0.0", - "p-map": "^2.0.0", - "pify": "^4.0.1", - "rimraf": "^2.6.3" - }, - "dependencies": { - "globby": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/globby/-/globby-6.1.0.tgz", - "integrity": "sha1-9abXDoOV4hyFj7BInWTfAkJNUGw=", - "dev": true, - "requires": { - "array-union": "^1.0.1", - "glob": "^7.0.3", - "object-assign": "^4.0.1", - "pify": "^2.0.0", - "pinkie-promise": "^2.0.0" - }, - "dependencies": { - "pify": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", - "dev": true - } + "glob": "^7.1.3" } } } @@ -4425,57 +3895,43 @@ "delayed-stream": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", - "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=", + "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==", + "dev": true + }, + "delegates": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", + "integrity": "sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ==", "dev": true }, "depd": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", - "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", + "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==", "dev": true }, "dependency-graph": { - "version": "0.7.2", - "resolved": "https://registry.npmjs.org/dependency-graph/-/dependency-graph-0.7.2.tgz", - "integrity": "sha512-KqtH4/EZdtdfWX0p6MGP9jljvxSY6msy/pRUD4jgNwVpv3v1QmNLlsB3LDSSUg79BRVSn7jI1QPRtArGABovAQ==", + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/dependency-graph/-/dependency-graph-0.11.0.tgz", + "integrity": "sha512-JeMq7fEshyepOWDfcfHK06N3MhyPhz++vtqWhMT5O9A3K42rdsEDpfdVqjaqaAhsw6a+ZqeDvQVtD0hFHQWrzg==", "dev": true }, - "des.js": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/des.js/-/des.js-1.0.1.tgz", - "integrity": "sha512-Q0I4pfFrv2VPd34/vfLrFOoRmlYj3OV50i7fskps1jZWK1kApMWWT9G6RRUeYedLcBDIhnSDaUvJMb3AhUlaEA==", - "dev": true, - "requires": { - "inherits": "^2.0.1", - "minimalistic-assert": "^1.0.0" - } - }, "destroy": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz", - "integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA=", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz", + "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==", "dev": true }, "detect-node": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/detect-node/-/detect-node-2.0.4.tgz", - "integrity": "sha512-ZIzRpLJrOj7jjP2miAtgqIfmzbxa4ZOr5jJc601zklsfEx9oTzmmj2nVpIPRpNlRTIh8lc1kyViIY7BWSGNmKw==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/detect-node/-/detect-node-2.1.0.tgz", + "integrity": "sha512-T0NIuQpnTvFDATNuHN5roPwSBG83rFsuO+MXXH9/3N1eFbn4wcPjttvjMLEPWJ0RGUYgQE7cGgS3tNxbqCGM7g==", "dev": true }, - "dezalgo": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/dezalgo/-/dezalgo-1.0.3.tgz", - "integrity": "sha1-f3Qt4Gb8dIvI24IFad3c5Jvw1FY=", - "dev": true, - "requires": { - "asap": "^2.0.0", - "wrappy": "1" - } - }, "di": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/di/-/di-0.0.1.tgz", - "integrity": "sha1-gGZJMmzqp8qjMG112YXqJ0i6kTw=", + "integrity": "sha512-uJaamHkagcZtHPqCIHZxnFrXlunQXgBOsZSUOWwFw31QJCAbyTBoHMW75YOTur5ZNx8pIeAKgf6GWIgaqqiLhA==", "dev": true }, "diff": { @@ -4484,55 +3940,34 @@ "integrity": "sha512-A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA==", "dev": true }, - "diffie-hellman": { - "version": "5.0.3", - "resolved": "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz", - "integrity": "sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg==", - "dev": true, - "requires": { - "bn.js": "^4.1.0", - "miller-rabin": "^4.0.0", - "randombytes": "^2.0.0" - } - }, "dir-glob": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-2.2.2.tgz", - "integrity": "sha512-f9LBi5QWzIW3I6e//uxZoLBlUt9kcp66qo0sSCxL6YZKc75R1c4MFCoe/LaZiBGmgujvQdxc5Bn3QhfyvK5Hsw==", + "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": "^3.0.0" + "path-type": "^4.0.0" } }, "dns-equal": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/dns-equal/-/dns-equal-1.0.0.tgz", - "integrity": "sha1-s55/HabrCnW6nBcySzR1PEfgZU0=", + "integrity": "sha512-z+paD6YUQsk+AbGCEM4PrOXSss5gd66QfcVBFTKR/HpFL9jCqikS94HYwKww6fQyO7IxrIIyUu+g0Ka9tUS2Cg==", "dev": true }, "dns-packet": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/dns-packet/-/dns-packet-1.3.1.tgz", - "integrity": "sha512-0UxfQkMhYAUaZI+xrNZOz/as5KgDU0M/fQ9b6SpkyLbk3GEswDi6PADJVaYJradtRVsRIlF1zLyOodbcTCDzUg==", - "dev": true, - "requires": { - "ip": "^1.1.0", - "safe-buffer": "^5.0.1" - } - }, - "dns-txt": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/dns-txt/-/dns-txt-2.0.2.tgz", - "integrity": "sha1-uR2Ab10nGI5Ks+fRB9iBocxGQrY=", + "version": "5.4.0", + "resolved": "https://registry.npmjs.org/dns-packet/-/dns-packet-5.4.0.tgz", + "integrity": "sha512-EgqGeaBB8hLiHLZtp/IbaDQTL8pZ0+IvwzSHA6d7VyMDM+B9hgddEMa9xjK5oYnw0ci0JQ6g2XCD7/f6cafU6g==", "dev": true, "requires": { - "buffer-indexof": "^1.0.0" + "@leichtgewicht/ip-codec": "^2.0.1" } }, "dom-serialize": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/dom-serialize/-/dom-serialize-2.2.1.tgz", - "integrity": "sha1-ViromZ9Evl6jB29UGdzVnrQ6yVs=", + "integrity": "sha512-Yra4DbvoW7/Z6LBN560ZwXMjoNOSAN2wRsKFGc4iBeso+mpIA6qj1vfdf9HpMaKAqG6wXTy+1SYEzmNpKXOSsQ==", "dev": true, "requires": { "custom-event": "~1.0.0", @@ -4541,43 +3976,47 @@ "void-elements": "^2.0.0" } }, - "domain-browser": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/domain-browser/-/domain-browser-1.2.0.tgz", - "integrity": "sha512-jnjyiM6eRyZl2H+W8Q/zLMA481hzi0eszAaBUzIVnmYVDBbnLxVNnfu1HgEBvCbL+71FrxMl3E6lpKH7Ge3OXA==", - "dev": true - }, - "dot-prop": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-4.2.0.tgz", - "integrity": "sha512-tUMXrxlExSW6U2EXiiKGSBVdYgtV8qlHL+C10TsW4PURY/ic+eaysnSkwB4kA/mBlCyy/IKDJ+Lc3wbWeaXtuQ==", + "dom-serializer": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.4.1.tgz", + "integrity": "sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag==", "dev": true, "requires": { - "is-obj": "^1.0.0" + "domelementtype": "^2.0.1", + "domhandler": "^4.2.0", + "entities": "^2.0.0" } }, - "duplexer3": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/duplexer3/-/duplexer3-0.1.4.tgz", - "integrity": "sha1-7gHdHKwO08vH/b6jfcCo8c4ALOI=", + "domelementtype": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz", + "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==", "dev": true }, - "duplexify": { - "version": "3.7.1", - "resolved": "https://registry.npmjs.org/duplexify/-/duplexify-3.7.1.tgz", - "integrity": "sha512-07z8uv2wMyS51kKhD1KsdXJg5WQ6t93RneqRxUHnskXVtlYYkLqM0gqStQZ3pj073g687jPCHrqNfCzawLYh5g==", + "domhandler": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.3.1.tgz", + "integrity": "sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==", "dev": true, "requires": { - "end-of-stream": "^1.0.0", - "inherits": "^2.0.1", - "readable-stream": "^2.0.0", - "stream-shift": "^1.0.0" + "domelementtype": "^2.2.0" + } + }, + "domutils": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-2.8.0.tgz", + "integrity": "sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==", + "dev": true, + "requires": { + "dom-serializer": "^1.0.1", + "domelementtype": "^2.2.0", + "domhandler": "^4.2.0" } }, "ecc-jsbn": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz", - "integrity": "sha1-OoOpBOVDUyh4dMVkt1SThoSamMk=", + "integrity": "sha512-eh9O+hwRHNbG4BLTjEl3nw044CkGm5X6LoaCf7LPp7UU8Qrt47JYNi6nPX8xjW97TKGKm1ouctg0QSpZe9qrnw==", "dev": true, "requires": { "jsbn": "~0.1.0", @@ -4587,30 +4026,15 @@ "ee-first": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", - "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=", + "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==", "dev": true }, "electron-to-chromium": { - "version": "1.3.368", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.368.tgz", - "integrity": "sha512-fqzDipW3p+uDkHUHFPrdW3wINRKcJsbnJwBD7hgaQEQwcuLSvNLw6SeUp5gKDpTbmTl7zri7IZfhsdTUTnygJg==", + "version": "1.4.284", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.284.tgz", + "integrity": "sha512-M8WEXFuKXMYMVr45fo8mq0wUrrJHheiKZf6BArTKk9ZBYCKJEOU5H8cdWgDT+qCVZf7Na4lVUaZsA+h6uA9+PA==", "dev": true }, - "elliptic": { - "version": "6.5.2", - "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.2.tgz", - "integrity": "sha512-f4x70okzZbIQl/NSRLkI/+tteV/9WqL98zx+SQ69KbXxmVrmjwsNUPn/gYJJ0sHvEak24cZgHIPegRePAtA/xw==", - "dev": true, - "requires": { - "bn.js": "^4.4.0", - "brorand": "^1.0.1", - "hash.js": "^1.0.0", - "hmac-drbg": "^1.0.0", - "inherits": "^2.0.1", - "minimalistic-assert": "^1.0.0", - "minimalistic-crypto-utils": "^1.0.0" - } - }, "emoji-regex": { "version": "8.0.0", "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", @@ -4618,177 +4042,117 @@ "dev": true }, "emojis-list": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-2.1.0.tgz", - "integrity": "sha1-TapNnbAPmBmIDHn6RXrlsJof04k=", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-3.0.0.tgz", + "integrity": "sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==", "dev": true }, "encodeurl": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", - "integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k=", + "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==", "dev": true }, "encoding": { - "version": "0.1.12", - "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.12.tgz", - "integrity": "sha1-U4tm8+5izRq1HsMjgp0flIDHS+s=", - "dev": true, - "requires": { - "iconv-lite": "~0.4.13" - } - }, - "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==", - "dev": true, - "requires": { - "once": "^1.4.0" - } - }, - "engine.io": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/engine.io/-/engine.io-3.2.1.tgz", - "integrity": "sha512-+VlKzHzMhaU+GsCIg4AoXF1UdDFjHHwMmMKqMJNDNLlUlejz58FCy4LBqB2YVJskHGYl06BatYWKP2TVdVXE5w==", + "version": "0.1.13", + "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.13.tgz", + "integrity": "sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==", "dev": true, + "optional": true, "requires": { - "accepts": "~1.3.4", - "base64id": "1.0.0", - "cookie": "0.3.1", - "debug": "~3.1.0", - "engine.io-parser": "~2.1.0", - "ws": "~3.3.1" + "iconv-lite": "^0.6.2" }, "dependencies": { - "cookie": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.3.1.tgz", - "integrity": "sha1-5+Ch+e9DtMi6klxcWpboBtFoc7s=", - "dev": true - }, - "debug": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", - "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true - }, - "ws": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/ws/-/ws-3.3.3.tgz", - "integrity": "sha512-nnWLa/NwZSt4KQJu51MYlCcSQ5g7INpOrOMt4XV8j4dqTXdmlUmSHQ8/oLC069ckre0fRsgfvsKwbTdtKLCDkA==", + "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==", "dev": true, + "optional": true, "requires": { - "async-limiter": "~1.0.0", - "safe-buffer": "~5.1.0", - "ultron": "~1.1.0" + "safer-buffer": ">= 2.1.2 < 3.0.0" } } } }, - "engine.io-client": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/engine.io-client/-/engine.io-client-3.2.1.tgz", - "integrity": "sha512-y5AbkytWeM4jQr7m/koQLc5AxpRKC1hEVUb/s1FUAWEJq5AzJJ4NLvzuKPuxtDi5Mq755WuDvZ6Iv2rXj4PTzw==", - "dev": true, - "requires": { - "component-emitter": "1.2.1", - "component-inherit": "0.0.3", - "debug": "~3.1.0", - "engine.io-parser": "~2.1.1", - "has-cors": "1.1.0", - "indexof": "0.0.1", - "parseqs": "0.0.5", - "parseuri": "0.0.5", - "ws": "~3.3.1", - "xmlhttprequest-ssl": "~1.5.4", - "yeast": "0.1.2" + "engine.io": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/engine.io/-/engine.io-6.2.1.tgz", + "integrity": "sha512-ECceEFcAaNRybd3lsGQKas3ZlMVjN3cyWwMP25D2i0zWfyiytVbTpRPa34qrr+FHddtpBVOmq4H/DCv1O0lZRA==", + "dev": true, + "requires": { + "@types/cookie": "^0.4.1", + "@types/cors": "^2.8.12", + "@types/node": ">=10.0.0", + "accepts": "~1.3.4", + "base64id": "2.0.0", + "cookie": "~0.4.1", + "cors": "~2.8.5", + "debug": "~4.3.1", + "engine.io-parser": "~5.0.3", + "ws": "~8.2.3" }, "dependencies": { - "component-emitter": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.2.1.tgz", - "integrity": "sha1-E3kY1teCg/ffemt8WmPhQOaUJeY=", - "dev": true - }, - "debug": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", - "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "cookie": { + "version": "0.4.2", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.2.tgz", + "integrity": "sha512-aSWTXFzaKWkvHO1Ny/s+ePFpvKsPnjc551iI41v3ny/ow6tBG5Vd+FuqGNhh1LxOmVzOlGUriIlOaokOvhaStA==", "dev": true }, "ws": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/ws/-/ws-3.3.3.tgz", - "integrity": "sha512-nnWLa/NwZSt4KQJu51MYlCcSQ5g7INpOrOMt4XV8j4dqTXdmlUmSHQ8/oLC069ckre0fRsgfvsKwbTdtKLCDkA==", - "dev": true, - "requires": { - "async-limiter": "~1.0.0", - "safe-buffer": "~5.1.0", - "ultron": "~1.1.0" - } + "version": "8.2.3", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.2.3.tgz", + "integrity": "sha512-wBuoj1BDpC6ZQ1B7DWQBYVLphPWkm8i9Y0/3YdHjHKHiohOJ1ws+3OccDWtH+PoC9DZD5WOTrJvNbWvjS6JWaA==", + "dev": true } } }, "engine.io-parser": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-2.1.3.tgz", - "integrity": "sha512-6HXPre2O4Houl7c4g7Ic/XzPnHBvaEmN90vtRO9uLmwtRqQmTOw0QMevL1TOfL2Cpu1VzsaTmMotQgMdkzGkVA==", - "dev": true, - "requires": { - "after": "0.8.2", - "arraybuffer.slice": "~0.0.7", - "base64-arraybuffer": "0.1.5", - "blob": "0.0.5", - "has-binary2": "~1.0.2" - } + "version": "5.0.4", + "resolved": "https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-5.0.4.tgz", + "integrity": "sha512-+nVFp+5z1E3HcToEnO7ZIj3g+3k9389DvWtvJZz0T6/eOCPIyyxehFcedoYrZQrp0LgQbD9pPXhpMBKMd5QURg==", + "dev": true }, "enhanced-resolve": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-4.1.0.tgz", - "integrity": "sha512-F/7vkyTtyc/llOIn8oWclcB25KdRaiPBpZYDgJHgh/UHtpgT2p2eldQgtQnLtUvfMKPKxbRaQM/hHkvLHt1Vng==", + "version": "5.12.0", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.12.0.tgz", + "integrity": "sha512-QHTXI/sZQmko1cbDoNAa3mJ5qhWUUNAq3vR0/YiD379fWQrcfuoX1+HW2S0MTt7XmoPLapdaDKUtelUSPic7hQ==", "dev": true, "requires": { - "graceful-fs": "^4.1.2", - "memory-fs": "^0.4.0", - "tapable": "^1.0.0" + "graceful-fs": "^4.2.4", + "tapable": "^2.2.0" } }, "ent": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/ent/-/ent-2.2.0.tgz", - "integrity": "sha1-6WQhkyWiHQX0RGai9obtbOX13R0=", + "integrity": "sha512-GHrMyVZQWvTIdDtpiEXdHZnFQKzeO09apj8Cbl4pKWy4i0Oprcq17usfDt5aO63swf0JOeMWjWQE/LzgSRuWpA==", + "dev": true + }, + "entities": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", + "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==", + "dev": true + }, + "env-paths": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/env-paths/-/env-paths-2.2.1.tgz", + "integrity": "sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==", "dev": true }, "err-code": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/err-code/-/err-code-1.1.2.tgz", - "integrity": "sha1-BuARbTAo9q70gGhJ6w6mp0iuaWA=", + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/err-code/-/err-code-2.0.3.tgz", + "integrity": "sha512-2bmlRpNKBxT/CRmPOlyISQpNj+qSeYvcym/uT0Jx2bMOlKLtSy1ZmLuVxSEKKyor/N5yhvp/ZiG1oE3DEYMSFA==", "dev": true }, "errno": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/errno/-/errno-0.1.7.tgz", - "integrity": "sha512-MfrRBDWzIWifgq6tJj60gkAwtLNb6sQPlcFrSOflcP1aFmmruKQ2wRnze/8V6kgyz7H3FF8Npzv78mZ7XLLflg==", + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/errno/-/errno-0.1.8.tgz", + "integrity": "sha512-dJ6oBr5SQ1VSd9qkk7ByRgb/1SH4JZjCHSW/mr63/QcXO9zLVxvJ6Oy13nio03rxpSnVDDjFor75SjVeZWPW/A==", "dev": true, + "optional": true, "requires": { "prr": "~1.0.1" } @@ -4802,35 +4166,11 @@ "is-arrayish": "^0.2.1" } }, - "es-abstract": { - "version": "1.17.4", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.17.4.tgz", - "integrity": "sha512-Ae3um/gb8F0mui/jPL+QiqmglkUsaQf7FwBEHYIFkztkneosu9imhqHpBzQ3h1vit8t5iQ74t6PEVvphBZiuiQ==", - "dev": true, - "requires": { - "es-to-primitive": "^1.2.1", - "function-bind": "^1.1.1", - "has": "^1.0.3", - "has-symbols": "^1.0.1", - "is-callable": "^1.1.5", - "is-regex": "^1.0.5", - "object-inspect": "^1.7.0", - "object-keys": "^1.1.1", - "object.assign": "^4.1.0", - "string.prototype.trimleft": "^2.1.1", - "string.prototype.trimright": "^2.1.1" - } - }, - "es-to-primitive": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", - "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", - "dev": true, - "requires": { - "is-callable": "^1.1.4", - "is-date-object": "^1.0.1", - "is-symbol": "^1.0.2" - } + "es-module-lexer": { + "version": "0.9.3", + "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-0.9.3.tgz", + "integrity": "sha512-1HQ2M2sPtxwnvOvT1ZClHyQDiggdNjURWpY2we6aMKCQiUVxTmVs2UYPLIrD84sS+kMdUwfBSylbJPwNnBrnHQ==", + "dev": true }, "es6-promise": { "version": "4.2.8", @@ -4841,31 +4181,183 @@ "es6-promisify": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/es6-promisify/-/es6-promisify-5.0.0.tgz", - "integrity": "sha1-UQnWLz5W6pZ8S2NQWu8IKRyKUgM=", + "integrity": "sha512-C+d6UdsYDk0lMebHNR4S2NybQMMngAOnOwYBQjTOiv0MkoJMP0Myw2mgpDLBcpfCmRLxyFqYhS/CfOENq4SJhQ==", "dev": true, "requires": { "es6-promise": "^4.0.3" } }, + "esbuild-android-64": { + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-android-64/-/esbuild-android-64-0.15.5.tgz", + "integrity": "sha512-dYPPkiGNskvZqmIK29OPxolyY3tp+c47+Fsc2WYSOVjEPWNCHNyqhtFqQadcXMJDQt8eN0NMDukbyQgFcHquXg==", + "dev": true, + "optional": true + }, + "esbuild-android-arm64": { + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-android-arm64/-/esbuild-android-arm64-0.15.5.tgz", + "integrity": "sha512-YyEkaQl08ze3cBzI/4Cm1S+rVh8HMOpCdq8B78JLbNFHhzi4NixVN93xDrHZLztlocEYqi45rHHCgA8kZFidFg==", + "dev": true, + "optional": true + }, + "esbuild-darwin-64": { + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-darwin-64/-/esbuild-darwin-64-0.15.5.tgz", + "integrity": "sha512-Cr0iIqnWKx3ZTvDUAzG0H/u9dWjLE4c2gTtRLz4pqOBGjfjqdcZSfAObFzKTInLLSmD0ZV1I/mshhPoYSBMMCQ==", + "dev": true, + "optional": true + }, + "esbuild-darwin-arm64": { + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-darwin-arm64/-/esbuild-darwin-arm64-0.15.5.tgz", + "integrity": "sha512-WIfQkocGtFrz7vCu44ypY5YmiFXpsxvz2xqwe688jFfSVCnUsCn2qkEVDo7gT8EpsLOz1J/OmqjExePL1dr1Kg==", + "dev": true, + "optional": true + }, + "esbuild-freebsd-64": { + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-freebsd-64/-/esbuild-freebsd-64-0.15.5.tgz", + "integrity": "sha512-M5/EfzV2RsMd/wqwR18CELcenZ8+fFxQAAEO7TJKDmP3knhWSbD72ILzrXFMMwshlPAS1ShCZ90jsxkm+8FlaA==", + "dev": true, + "optional": true + }, + "esbuild-freebsd-arm64": { + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-freebsd-arm64/-/esbuild-freebsd-arm64-0.15.5.tgz", + "integrity": "sha512-2JQQ5Qs9J0440F/n/aUBNvY6lTo4XP/4lt1TwDfHuo0DY3w5++anw+jTjfouLzbJmFFiwmX7SmUhMnysocx96w==", + "dev": true, + "optional": true + }, + "esbuild-linux-32": { + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-linux-32/-/esbuild-linux-32-0.15.5.tgz", + "integrity": "sha512-gO9vNnIN0FTUGjvTFucIXtBSr1Woymmx/aHQtuU+2OllGU6YFLs99960UD4Dib1kFovVgs59MTXwpFdVoSMZoQ==", + "dev": true, + "optional": true + }, + "esbuild-linux-64": { + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-linux-64/-/esbuild-linux-64-0.15.5.tgz", + "integrity": "sha512-ne0GFdNLsm4veXbTnYAWjbx3shpNKZJUd6XpNbKNUZaNllDZfYQt0/zRqOg0sc7O8GQ+PjSMv9IpIEULXVTVmg==", + "dev": true, + "optional": true + }, + "esbuild-linux-arm": { + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-linux-arm/-/esbuild-linux-arm-0.15.5.tgz", + "integrity": "sha512-wvAoHEN+gJ/22gnvhZnS/+2H14HyAxM07m59RSLn3iXrQsdS518jnEWRBnJz3fR6BJa+VUTo0NxYjGaNt7RA7Q==", + "dev": true, + "optional": true + }, + "esbuild-linux-arm64": { + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-linux-arm64/-/esbuild-linux-arm64-0.15.5.tgz", + "integrity": "sha512-7EgFyP2zjO065XTfdCxiXVEk+f83RQ1JsryN1X/VSX2li9rnHAt2swRbpoz5Vlrl6qjHrCmq5b6yxD13z6RheA==", + "dev": true, + "optional": true + }, + "esbuild-linux-mips64le": { + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-linux-mips64le/-/esbuild-linux-mips64le-0.15.5.tgz", + "integrity": "sha512-KdnSkHxWrJ6Y40ABu+ipTZeRhFtc8dowGyFsZY5prsmMSr1ZTG9zQawguN4/tunJ0wy3+kD54GaGwdcpwWAvZQ==", + "dev": true, + "optional": true + }, + "esbuild-linux-ppc64le": { + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-linux-ppc64le/-/esbuild-linux-ppc64le-0.15.5.tgz", + "integrity": "sha512-QdRHGeZ2ykl5P0KRmfGBZIHmqcwIsUKWmmpZTOq573jRWwmpfRmS7xOhmDHBj9pxv+6qRMH8tLr2fe+ZKQvCYw==", + "dev": true, + "optional": true + }, + "esbuild-linux-riscv64": { + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-linux-riscv64/-/esbuild-linux-riscv64-0.15.5.tgz", + "integrity": "sha512-p+WE6RX+jNILsf+exR29DwgV6B73khEQV0qWUbzxaycxawZ8NE0wA6HnnTxbiw5f4Gx9sJDUBemh9v49lKOORA==", + "dev": true, + "optional": true + }, + "esbuild-linux-s390x": { + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-linux-s390x/-/esbuild-linux-s390x-0.15.5.tgz", + "integrity": "sha512-J2ngOB4cNzmqLHh6TYMM/ips8aoZIuzxJnDdWutBw5482jGXiOzsPoEF4j2WJ2mGnm7FBCO4StGcwzOgic70JQ==", + "dev": true, + "optional": true + }, + "esbuild-netbsd-64": { + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-netbsd-64/-/esbuild-netbsd-64-0.15.5.tgz", + "integrity": "sha512-MmKUYGDizYjFia0Rwt8oOgmiFH7zaYlsoQ3tIOfPxOqLssAsEgG0MUdRDm5lliqjiuoog8LyDu9srQk5YwWF3w==", + "dev": true, + "optional": true + }, + "esbuild-openbsd-64": { + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-openbsd-64/-/esbuild-openbsd-64-0.15.5.tgz", + "integrity": "sha512-2mMFfkLk3oPWfopA9Plj4hyhqHNuGyp5KQyTT9Rc8hFd8wAn5ZrbJg+gNcLMo2yzf8Uiu0RT6G9B15YN9WQyMA==", + "dev": true, + "optional": true + }, + "esbuild-sunos-64": { + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-sunos-64/-/esbuild-sunos-64-0.15.5.tgz", + "integrity": "sha512-2sIzhMUfLNoD+rdmV6AacilCHSxZIoGAU2oT7XmJ0lXcZWnCvCtObvO6D4puxX9YRE97GodciRGDLBaiC6x1SA==", + "dev": true, + "optional": true + }, + "esbuild-wasm": { + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-wasm/-/esbuild-wasm-0.15.5.tgz", + "integrity": "sha512-lTJOEKekN/4JI/eOEq0wLcx53co2N6vaT/XjBz46D1tvIVoUEyM0o2K6txW6gEotf31szFD/J1PbxmnbkGlK9A==", + "dev": true + }, + "esbuild-windows-32": { + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-windows-32/-/esbuild-windows-32-0.15.5.tgz", + "integrity": "sha512-e+duNED9UBop7Vnlap6XKedA/53lIi12xv2ebeNS4gFmu7aKyTrok7DPIZyU5w/ftHD4MUDs5PJUkQPP9xJRzg==", + "dev": true, + "optional": true + }, + "esbuild-windows-64": { + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-windows-64/-/esbuild-windows-64-0.15.5.tgz", + "integrity": "sha512-v+PjvNtSASHOjPDMIai9Yi+aP+Vwox+3WVdg2JB8N9aivJ7lyhp4NVU+J0MV2OkWFPnVO8AE/7xH+72ibUUEnw==", + "dev": true, + "optional": true + }, + "esbuild-windows-arm64": { + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-windows-arm64/-/esbuild-windows-arm64-0.15.5.tgz", + "integrity": "sha512-Yz8w/D8CUPYstvVQujByu6mlf48lKmXkq6bkeSZZxTA626efQOJb26aDGLzmFWx6eg/FwrXgt6SZs9V8Pwy/aA==", + "dev": true, + "optional": true + }, + "escalade": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", + "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", + "dev": true + }, "escape-html": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", - "integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg=", + "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==", "dev": true }, "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=", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", "dev": true }, "eslint-scope": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-4.0.3.tgz", - "integrity": "sha512-p7VutNr1O/QrxysMo3E45FjYDTeXBy0iTltPFNSqKAIfjDSXC+4dj+qfyuD8bfAXrW/y6lW3O76VaYNPKfpKrg==", + "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.1.0", + "esrecurse": "^4.3.0", "estraverse": "^4.1.1" } }, @@ -4876,12 +4368,20 @@ "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==", + "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": "^4.1.0" + "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": { @@ -4891,9 +4391,9 @@ "dev": true }, "estree-walker": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-0.6.1.tgz", - "integrity": "sha512-SqmZANLWS0mnatqbSfRP5g8OXZC12Fgg1IwNtLsyHDzJizORW4khDfjPqJZsemPWBB2uqykUah5YpQ6epsqC/w==", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-1.0.1.tgz", + "integrity": "sha512-1fMXF3YP4pZZVozF8j/ZLfvnR8NSIljt56UhbZ5PeeDmmGHpgpdwQt7ITlGvYaQukCvuBRMLEiKiYC+oeIg4cg==", "dev": true }, "esutils": { @@ -4905,144 +4405,84 @@ "etag": { "version": "1.8.1", "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", - "integrity": "sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc=", + "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==", + "dev": true + }, + "eventemitter-asyncresource": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/eventemitter-asyncresource/-/eventemitter-asyncresource-1.0.0.tgz", + "integrity": "sha512-39F7TBIV0G7gTelxwbEqnwhp90eqCPON1k0NwNfwhgKn4Co4ybUbj2pECcXT0B3ztRKZ7Pw1JujUUgmQJHcVAQ==", "dev": true }, "eventemitter3": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.0.tgz", - "integrity": "sha512-qerSRB0p+UDEssxTtm6EDKcE7W4OaoisfIMl4CngyEhjpYglocpNg6UEqCvemdGhosAsg4sO2dXJOdyBifPGCg==", + "version": "4.0.7", + "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.7.tgz", + "integrity": "sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==", "dev": true }, "events": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/events/-/events-3.1.0.tgz", - "integrity": "sha512-Rv+u8MLHNOdMjTAFeT3nCjHn2aGlx435FP/sDHNaRhDEMwyI/aB22Kj2qIN8R0cw3z28psEQLYwxVKLsKrMgWg==", + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", + "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", "dev": true }, - "eventsource": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/eventsource/-/eventsource-1.0.7.tgz", - "integrity": "sha512-4Ln17+vVT0k8aWq+t/bF5arcS3EpT9gYtW66EPacdj/mAFevznsnyoHLPy2BA8gbIQeIHoPsvwmfBftfcG//BQ==", - "dev": true, - "requires": { - "original": "^1.0.0" - } - }, - "evp_bytestokey": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz", - "integrity": "sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==", - "dev": true, - "requires": { - "md5.js": "^1.3.4", - "safe-buffer": "^5.1.1" - } - }, "execa": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/execa/-/execa-1.0.0.tgz", - "integrity": "sha512-adbxcyWV46qiHyvSp50TKt05tB4tK3HcmF7/nxfAdhnox83seTDbwnaqKO4sXRy7roHAIFqJP/Rw/AuEbX61LA==", + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz", + "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", "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" + "cross-spawn": "^7.0.3", + "get-stream": "^6.0.0", + "human-signals": "^2.1.0", + "is-stream": "^2.0.0", + "merge-stream": "^2.0.0", + "npm-run-path": "^4.0.1", + "onetime": "^5.1.2", + "signal-exit": "^3.0.3", + "strip-final-newline": "^2.0.0" } }, "exit": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz", - "integrity": "sha1-BjJjj42HfMghB9MKD/8aF8uhzQw=", + "integrity": "sha512-Zk/eNKV2zbjpKzrsQ+n1G6poVbErQxJ0LBOJXaKZ1EViLzH+hrLu9cdXI4zw9dBQJslwBEpbQ2P1oS7nDxs6jQ==", "dev": true }, - "expand-brackets": { - "version": "2.1.4", - "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-2.1.4.tgz", - "integrity": "sha1-t3c14xXOMPa27/D4OwQVGiJEliI=", + "express": { + "version": "4.18.2", + "resolved": "https://registry.npmjs.org/express/-/express-4.18.2.tgz", + "integrity": "sha512-5/PsL6iGPdfQ/lKM1UuielYgv3BUoJfz1aUwU9vHZ+J7gyvwdQXFEBIEIaxeGf0GIcreATNyBExtalisDbuMqQ==", "dev": true, "requires": { - "debug": "^2.3.3", - "define-property": "^0.2.5", - "extend-shallow": "^2.0.1", - "posix-character-classes": "^0.1.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.1" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "dev": true, - "requires": { - "is-descriptor": "^0.1.0" - } - }, - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true - } - } - }, - "express": { - "version": "4.17.1", - "resolved": "https://registry.npmjs.org/express/-/express-4.17.1.tgz", - "integrity": "sha512-mHJ9O79RqluphRrcw2X/GTh3k9tVv8YcoyY4Kkh4WDMUYKRZUq0h1o0w2rrrxBqM7VoeUVqgb27xlEMXTnYt4g==", - "dev": true, - "requires": { - "accepts": "~1.3.7", + "accepts": "~1.3.8", "array-flatten": "1.1.1", - "body-parser": "1.19.0", - "content-disposition": "0.5.3", + "body-parser": "1.20.1", + "content-disposition": "0.5.4", "content-type": "~1.0.4", - "cookie": "0.4.0", + "cookie": "0.5.0", "cookie-signature": "1.0.6", "debug": "2.6.9", - "depd": "~1.1.2", + "depd": "2.0.0", "encodeurl": "~1.0.2", "escape-html": "~1.0.3", "etag": "~1.8.1", - "finalhandler": "~1.1.2", + "finalhandler": "1.2.0", "fresh": "0.5.2", + "http-errors": "2.0.0", "merge-descriptors": "1.0.1", "methods": "~1.1.2", - "on-finished": "~2.3.0", + "on-finished": "2.4.1", "parseurl": "~1.3.3", "path-to-regexp": "0.1.7", - "proxy-addr": "~2.0.5", - "qs": "6.7.0", + "proxy-addr": "~2.0.7", + "qs": "6.11.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", + "safe-buffer": "5.2.1", + "send": "0.18.0", + "serve-static": "1.15.0", + "setprototypeof": "1.2.0", + "statuses": "2.0.1", "type-is": "~1.6.18", "utils-merge": "1.0.1", "vary": "~1.1.2" @@ -5051,7 +4491,7 @@ "array-flatten": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", - "integrity": "sha1-ml9pkFGx5wczKPKgCJaLZOopVdI=", + "integrity": "sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==", "dev": true }, "debug": { @@ -5066,13 +4506,7 @@ "ms": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true - }, - "qs": { - "version": "6.7.0", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.7.0.tgz", - "integrity": "sha512-VCdBRNFTX1fyE7Nb6FYoURo/SPe62QCaAyzJvUjwRaIsc+NePBEniHlvxFmmX56+HZphIGtV0XeCirBtpDrTyQ==", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", "dev": true } } @@ -5083,27 +4517,6 @@ "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==", "dev": true }, - "extend-shallow": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", - "integrity": "sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=", - "dev": true, - "requires": { - "assign-symbols": "^1.0.0", - "is-extendable": "^1.0.1" - }, - "dependencies": { - "is-extendable": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", - "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", - "dev": true, - "requires": { - "is-plain-object": "^2.0.4" - } - } - } - }, "external-editor": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz", @@ -5115,87 +4528,46 @@ "tmp": "^0.0.33" } }, - "extglob": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz", - "integrity": "sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==", - "dev": true, - "requires": { - "array-unique": "^0.3.2", - "define-property": "^1.0.0", - "expand-brackets": "^2.1.4", - "extend-shallow": "^2.0.1", - "fragment-cache": "^0.2.1", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.1" - }, - "dependencies": { - "define-property": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", - "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", - "dev": true, - "requires": { - "is-descriptor": "^1.0.0" - } - }, - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - }, - "is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-data-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", - "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-descriptor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", - "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", - "dev": true, - "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - } - } - } - }, "extsprintf": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", - "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=", + "integrity": "sha512-11Ndz7Nv+mvAC1j0ktTa7fAb0vLyGGX+rMHNBYQviQDGU0Hw7lhctJANqbPhu9nV9/izT/IntTgZ7Im/9LJs9g==", "dev": true }, "fast-deep-equal": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz", - "integrity": "sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk=", + "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.12", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.12.tgz", + "integrity": "sha512-DVj4CQIYYow0BlaelwK1pHl5n5cRSJfM60UA0zK891sVInoPri2Ekj7+e1CT3/3qxXenpI+nBBmQAcJPJgaj4w==", + "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" + }, + "dependencies": { + "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" + } + } + } + }, "fast-json-stable-stringify": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz", - "integrity": "sha1-1RQsDK7msRifh9OnYREGT4bIu/I=", + "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 }, "fastparse": { @@ -5204,21 +4576,24 @@ "integrity": "sha512-483XLLxTVIwWK3QTrMGRqUfUpoOs/0hbQrl2oz4J0pAcm3A3bu84wxTFqGqkJzewCLdME38xJLJAxBABfQT8sQ==", "dev": true }, + "fastq": { + "version": "1.14.0", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.14.0.tgz", + "integrity": "sha512-eR2D+V9/ExcbF9ls441yIuN6TI2ED1Y2ZcA5BmMtJsOkWOFRJQ0Jt0g1UwqXJJVAb+V+umH5Dfr8oh4EVP7VVg==", + "dev": true, + "requires": { + "reusify": "^1.0.4" + } + }, "faye-websocket": { - "version": "0.10.0", - "resolved": "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.10.0.tgz", - "integrity": "sha1-TkkvjQTftviQA1B/btvy1QHnxvQ=", + "version": "0.11.4", + "resolved": "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.11.4.tgz", + "integrity": "sha512-CzbClwlXAuiRQAlUyfqPgvPoNKTckTPGfwZV4ZdAhVcP2lh9KUxJg2b5GkE7XbjKQ3YJnQ9z6D9ntLAlB+tP8g==", "dev": true, "requires": { "websocket-driver": ">=0.5.1" } }, - "figgy-pudding": { - "version": "3.5.1", - "resolved": "https://registry.npmjs.org/figgy-pudding/-/figgy-pudding-3.5.1.tgz", - "integrity": "sha512-vNKxJHTEKNThjfrdJwHc7brvM6eVevuO5nTj6ez8ZQ1qbXTvGthucRF7S4vf2cr71QVnT70V34v0S1DyQsti0w==", - "dev": true - }, "figures": { "version": "3.2.0", "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz", @@ -5228,45 +4603,6 @@ "escape-string-regexp": "^1.0.5" } }, - "file-loader": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/file-loader/-/file-loader-4.2.0.tgz", - "integrity": "sha512-+xZnaK5R8kBJrHK0/6HRlrKNamvVS5rjyuju+rnyxRGuwUJwpAMsVzUl5dz6rK8brkzjV6JpcFNjp6NqV0g1OQ==", - "dev": true, - "requires": { - "loader-utils": "^1.2.3", - "schema-utils": "^2.0.0" - }, - "dependencies": { - "schema-utils": { - "version": "2.6.4", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-2.6.4.tgz", - "integrity": "sha512-VNjcaUxVnEeun6B2fiiUDjXXBtD4ZSH7pdbfIu1pOFwgptDPLMo/z9jr4sUfsjFVPqDCEin/F7IYlq7/E6yDbQ==", - "dev": true, - "requires": { - "ajv": "^6.10.2", - "ajv-keywords": "^3.4.1" - } - } - } - }, - "file-uri-to-path": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz", - "integrity": "sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==", - "dev": true, - "optional": true - }, - "fileset": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/fileset/-/fileset-2.0.3.tgz", - "integrity": "sha1-jnVIqW08wjJ+5eZ0FocjozO7oqA=", - "dev": true, - "requires": { - "glob": "^7.0.3", - "minimatch": "^3.0.3" - } - }, "fill-range": { "version": "7.0.1", "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", @@ -5277,17 +4613,17 @@ } }, "finalhandler": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.2.tgz", - "integrity": "sha512-aAWcW57uxVNrQZqFXjITpW3sIUQmHGG3qSb9mUah9MgMC4NeWhNOlNjXEYq3HjRAvL6arUviZGGJsBg6z0zsWA==", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.2.0.tgz", + "integrity": "sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg==", "dev": true, "requires": { "debug": "2.6.9", "encodeurl": "~1.0.2", "escape-html": "~1.0.3", - "on-finished": "~2.3.0", + "on-finished": "2.4.1", "parseurl": "~1.3.3", - "statuses": "~1.5.0", + "statuses": "2.0.1", "unpipe": "~1.0.0" }, "dependencies": { @@ -5303,137 +4639,48 @@ "ms": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", "dev": true } } }, "find-cache-dir": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-3.0.0.tgz", - "integrity": "sha512-t7ulV1fmbxh5G9l/492O1p5+EBbr3uwpt6odhFTMc+nWyhmbloe+ja9BZ8pIBtqFWhOmCWVjx+pTW4zDkFoclw==", + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-3.3.2.tgz", + "integrity": "sha512-wXZV5emFEjrridIgED11OoUKLxiYjAcqot/NJdAkOhlJ+vGzwhOAfcG5OX1jP+S0PcjEn8bdMJv+g2jwQ3Onig==", "dev": true, "requires": { "commondir": "^1.0.1", - "make-dir": "^3.0.0", + "make-dir": "^3.0.2", "pkg-dir": "^4.1.0" - }, - "dependencies": { - "find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", - "dev": true, - "requires": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - } - }, - "locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", - "dev": true, - "requires": { - "p-locate": "^4.1.0" - } - }, - "make-dir": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.0.2.tgz", - "integrity": "sha512-rYKABKutXa6vXTXhoV18cBE7PaewPXHe/Bdq4v+ZLMhxbWApkFFplT0LcbMW+6BbjnQXzZ/sAvSE/JdguApG5w==", - "dev": true, - "requires": { - "semver": "^6.0.0" - } - }, - "p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", - "dev": true, - "requires": { - "p-limit": "^2.2.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 - }, - "pkg-dir": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", - "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", - "dev": true, - "requires": { - "find-up": "^4.0.0" - } - } } }, - "find-parent-dir": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/find-parent-dir/-/find-parent-dir-0.3.0.tgz", - "integrity": "sha1-M8RLQpqysvBkYpnF+fcY83b/jVQ=", - "dev": true - }, "find-up": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", - "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", "dev": true, "requires": { - "locate-path": "^3.0.0" + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" } }, "flatted": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-2.0.1.tgz", - "integrity": "sha512-a1hQMktqW9Nmqr5aktAux3JMNqaucxGcjtjWnZLHX7yyPCmlSV3M54nGYbqT8K+0GhF3NBgmJCc3ma+WOgX8Jg==", + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.7.tgz", + "integrity": "sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ==", "dev": true }, - "flush-write-stream": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/flush-write-stream/-/flush-write-stream-1.1.1.tgz", - "integrity": "sha512-3Z4XhFZ3992uIq0XOqb9AreonueSYphE6oYbpt5+3u06JWklbsPkNv3ZKkP9Bz/r+1MWCaMoSQ28P85+1Yc77w==", - "dev": true, - "requires": { - "inherits": "^2.0.3", - "readable-stream": "^2.3.6" - } - }, "follow-redirects": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.10.0.tgz", - "integrity": "sha512-4eyLK6s6lH32nOvLLwlIOnr9zrL8Sm+OvW4pVTJNoXeGzYIkHVf+pADQi+OJ0E67hiuSLezPVPyBcIZO50TmmQ==", - "dev": true, - "requires": { - "debug": "^3.0.0" - }, - "dependencies": { - "debug": { - "version": "3.2.6", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", - "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - } - } - }, - "for-in": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", - "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=", + "version": "1.15.2", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.2.tgz", + "integrity": "sha512-VQLG33o04KaQ8uYi2tVNbdrWp1QWxNNea+nmIB4EVM28v0hmP17z7aG1+wAkNzVq4KeXTq3221ye5qTJP91JwA==", "dev": true }, "forever-agent": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", - "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=", + "integrity": "sha512-j0KLYPhm6zeac4lz3oJ3o65qvgQCcPubiyotZrXqEaG4hNagNYO8qdlUrX5vwqv9ohqeT/Z3j6+yW067yWWdUw==", "dev": true }, "form-data": { @@ -5448,87 +4695,59 @@ } }, "forwarded": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.1.2.tgz", - "integrity": "sha1-mMI9qxF1ZXuMBXPozszZGw/xjIQ=", + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz", + "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==", "dev": true }, - "fragment-cache": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/fragment-cache/-/fragment-cache-0.2.1.tgz", - "integrity": "sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk=", - "dev": true, - "requires": { - "map-cache": "^0.2.2" - } + "fraction.js": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-4.2.0.tgz", + "integrity": "sha512-MhLuK+2gUcnZe8ZHlaaINnQLl0xRIGRfcGk2yl8xoQAfHrSsL3rYu6FCmBdkdbhc9EPlwyGHewaRsvwRMJtAlA==", + "dev": true }, "fresh": { "version": "0.5.2", "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", - "integrity": "sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac=", + "integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==", "dev": true }, - "from2": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/from2/-/from2-2.3.0.tgz", - "integrity": "sha1-i/tVAr3kpNNs/e6gB/zKIdfjgq8=", - "dev": true, - "requires": { - "inherits": "^2.0.1", - "readable-stream": "^2.0.0" - } - }, - "fs-access": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/fs-access/-/fs-access-1.0.1.tgz", - "integrity": "sha1-1qh/JiJxzv6+wwxVNAf7mV2od3o=", - "dev": true, - "requires": { - "null-check": "^1.0.0" - } - }, "fs-extra": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-7.0.1.tgz", - "integrity": "sha512-YJDaCJZEnBmcbw13fvdAM9AwNOJwOzrE4pqMqBq5nFiEqXUqHwlK4B+3pUw6JNvfSPtX05xFHtYy/1ni01eGCw==", + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", + "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==", "dev": true, "requires": { - "graceful-fs": "^4.1.2", + "graceful-fs": "^4.2.0", "jsonfile": "^4.0.0", "universalify": "^0.1.0" } }, "fs-minipass": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-1.2.7.tgz", - "integrity": "sha512-GWSSJGFy4e9GUeCcbIkED+bgAoFyj7XF1mV8rma3QW4NIqX9Kyx79N/PF61H5udOV3aY1IaMLs6pGbH71nlCTA==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", + "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", "dev": true, "requires": { - "minipass": "^2.6.0" + "minipass": "^3.0.0" } }, - "fs-write-stream-atomic": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/fs-write-stream-atomic/-/fs-write-stream-atomic-1.0.10.tgz", - "integrity": "sha1-tH31NJPvkR33VzHnCp3tAYnbQMk=", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "iferr": "^0.1.5", - "imurmurhash": "^0.1.4", - "readable-stream": "1 || 2" - } + "fs-monkey": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/fs-monkey/-/fs-monkey-1.0.3.tgz", + "integrity": "sha512-cybjIfiiE+pTWicSCLFHSrXZ6EilF30oh91FDP9S2B051prEa7QWfrVTQm10/dDpswBDXZugPa1Ogu8Yh+HV0Q==", + "dev": true }, "fs.realpath": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", "dev": true }, "fsevents": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.1.2.tgz", - "integrity": "sha512-R4wDiBwZ0KzpgOWetKDug1FZcYhqYnUYKtfZYt4mD5SBz76q0KR4Q9o7GIPamsVPGmW3EYPPJ0dOOjvx32ldZA==", + "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 }, @@ -5538,91 +4757,93 @@ "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", "dev": true }, - "genfun": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/genfun/-/genfun-5.0.0.tgz", - "integrity": "sha512-KGDOARWVga7+rnB3z9Sd2Letx515owfk0hSxHGuqjANb1M+x2bGZGqHLiozPsYMdM2OubeMni/Hpwmjq6qIUhA==", - "dev": true + "gauge": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/gauge/-/gauge-4.0.4.tgz", + "integrity": "sha512-f9m+BEN5jkg6a0fZjleidjN51VE1X+mPFQ2DJ0uv1V39oCLCbsGe6yjbBnp7eK7z/+GAon99a3nHuqbuuthyPg==", + "dev": true, + "requires": { + "aproba": "^1.0.3 || ^2.0.0", + "color-support": "^1.1.3", + "console-control-strings": "^1.1.0", + "has-unicode": "^2.0.1", + "signal-exit": "^3.0.7", + "string-width": "^4.2.3", + "strip-ansi": "^6.0.1", + "wide-align": "^1.1.5" + } }, "gensync": { - "version": "1.0.0-beta.1", - "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.1.tgz", - "integrity": "sha512-r8EC6NO1sngH/zdD9fiRDLdcgnbayXah+mLgManTaIZJqEC1MZstmnox8KpnI2/fxQwrp5OpCOYWLp4rBl4Jcg==", + "version": "1.0.0-beta.2", + "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", + "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", "dev": true }, "get-caller-file": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.3.tgz", - "integrity": "sha512-3t6rVToeoZfYSGd8YoLFR2DJkiQrIiUrGcjvFX2mDw3bn6k2OtwHN0TNCLbBO+w8qTvimhDkv+LSscbJY1vE6w==", + "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 }, - "get-stream": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz", - "integrity": "sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==", + "get-intrinsic": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.3.tgz", + "integrity": "sha512-QJVz1Tj7MS099PevUG5jvnt9tSkXN8K14dxQlikJuPt4uD9hHAHjLyLBiLR5zELelBdD9QNRAXZzsJx0WaDL9A==", "dev": true, "requires": { - "pump": "^3.0.0" + "function-bind": "^1.1.1", + "has": "^1.0.3", + "has-symbols": "^1.0.3" } }, - "get-value": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz", - "integrity": "sha1-3BXKHGcjh8p2vTesCjlbogQqLCg=", + "get-package-type": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz", + "integrity": "sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==", + "dev": true + }, + "get-stream": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", + "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", "dev": true }, "getpass": { "version": "0.1.7", "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", - "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=", + "integrity": "sha512-0fzj9JxOLfJ+XGLhR8ze3unN0KZCgZwiSSDz168VERjK8Wl8kVSdcu2kspd4s4wtAa1y/qrVRiAA0WclVsu0ng==", "dev": true, "requires": { "assert-plus": "^1.0.0" } }, "glob": { - "version": "7.1.4", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.4.tgz", - "integrity": "sha512-hkLPepehmnKk41pUGm3sYxoFs/umurYfYJCerbXEyFIWcAzvpipAgVkBqqT9RBKMGjnq6kMuyYwha6csxbiM1A==", + "version": "8.0.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-8.0.3.tgz", + "integrity": "sha512-ull455NHSHI/Y1FqGaaYFaLGkNMMJbavMrEGFXG/PGrg6y7sutWHUHrz6gy6WEBH6akM1M414dWKCNs+IhKdiQ==", "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" + "minimatch": "^5.0.1", + "once": "^1.3.0" } }, "glob-parent": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz", - "integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=", + "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": "^3.1.0", - "path-dirname": "^1.0.0" - }, - "dependencies": { - "is-glob": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", - "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", - "dev": true, - "requires": { - "is-extglob": "^2.1.0" - } - } + "is-glob": "^4.0.3" } }, - "global-dirs": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/global-dirs/-/global-dirs-0.1.1.tgz", - "integrity": "sha1-sxnA3UYH81PzvpzKTHL8FIxJ9EU=", - "dev": true, - "requires": { - "ini": "^1.3.4" - } + "glob-to-regexp": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz", + "integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==", + "dev": true }, "globals": { "version": "11.12.0", @@ -5631,72 +4852,64 @@ "dev": true }, "globby": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/globby/-/globby-7.1.1.tgz", - "integrity": "sha1-+yzP+UAfhgCUXfral0QMypcrhoA=", - "dev": true, - "requires": { - "array-union": "^1.0.1", - "dir-glob": "^2.0.0", - "glob": "^7.1.2", - "ignore": "^3.3.5", - "pify": "^3.0.0", - "slash": "^1.0.0" - }, - "dependencies": { - "pify": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", - "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", - "dev": true - } - } - }, - "got": { - "version": "9.6.0", - "resolved": "https://registry.npmjs.org/got/-/got-9.6.0.tgz", - "integrity": "sha512-R7eWptXuGYxwijs0eV+v3o6+XH1IqVK8dJOEecQfTmkncw9AV4dcw/Dhxi8MdlqPthxxpZyizMzyg8RTmEsG+Q==", + "version": "13.1.2", + "resolved": "https://registry.npmjs.org/globby/-/globby-13.1.2.tgz", + "integrity": "sha512-LKSDZXToac40u8Q1PQtZihbNdTYSNMuWe+K5l+oa6KgDzSvVrHXlJy40hUP522RjAIoNLJYBJi7ow+rbFpIhHQ==", "dev": true, "requires": { - "@sindresorhus/is": "^0.14.0", - "@szmarczak/http-timer": "^1.1.2", - "cacheable-request": "^6.0.0", - "decompress-response": "^3.3.0", - "duplexer3": "^0.1.4", - "get-stream": "^4.1.0", - "lowercase-keys": "^1.0.1", - "mimic-response": "^1.0.1", - "p-cancelable": "^1.0.0", - "to-readable-stream": "^1.0.0", - "url-parse-lax": "^3.0.0" + "dir-glob": "^3.0.1", + "fast-glob": "^3.2.11", + "ignore": "^5.2.0", + "merge2": "^1.4.1", + "slash": "^4.0.0" } }, "graceful-fs": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.3.tgz", - "integrity": "sha512-a30VEBm4PEdx1dRB7MFK7BejejvCvBronbLjht+sHuGYj8PHs7M/5Z+rt5lw551vZ7yfTCj4Vuyy3mSJytDWRQ==", + "version": "4.2.10", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", + "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==", "dev": true }, "handle-thing": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/handle-thing/-/handle-thing-2.0.0.tgz", - "integrity": "sha512-d4sze1JNC454Wdo2fkuyzCr6aHcbL6PGGuFAz0Li/NcOm1tCHGnWDRmJP85dh9IhQErTc2svWFEX5xHIOo//kQ==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/handle-thing/-/handle-thing-2.0.1.tgz", + "integrity": "sha512-9Qn4yBxelxoh2Ow62nP+Ka/kMnOXRi8BXnRaUwezLNhqelnN49xKz4F/dPP8OYLxLxq6JDtZb2i9XznUQbNPTg==", "dev": true }, "har-schema": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz", - "integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=", + "integrity": "sha512-Oqluz6zhGX8cyRaTQlFMPw80bSJVG2x/cFb8ZPhUILGgHka9SsokCCOQgpveePerqidZOrT14ipqfJb7ILcW5Q==", "dev": true }, "har-validator": { - "version": "5.1.3", - "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.3.tgz", - "integrity": "sha512-sNvOCzEQNr/qrvJgc3UG/kD4QtlHycrzwS+6mfTrrSq97BvaYcPZZI1ZSqGSPR73Cxn4LKTD4PttRwfU7jWq5g==", + "version": "5.1.5", + "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.5.tgz", + "integrity": "sha512-nmT2T0lljbxdQZfspsno9hgrG3Uir6Ks5afism62poxqBM6sDnMEuPmzTq8XN0OEwqKLLdh1jQI3qyE66Nzb3w==", "dev": true, "requires": { - "ajv": "^6.5.5", + "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==", + "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" + } + }, + "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 + } } }, "has": { @@ -5711,209 +4924,155 @@ "has-ansi": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", - "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", + "integrity": "sha512-C8vBJ8DwUCx19vhm7urhTuUsr4/IyP6l4VzNQDv+ryHQObW3TTTp9yB68WpYgRe2bbaGuZ/se74IqFeVnMnLZg==", "dev": true, "requires": { "ansi-regex": "^2.0.0" - } - }, - "has-binary2": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has-binary2/-/has-binary2-1.0.3.tgz", - "integrity": "sha512-G1LWKhDSvhGeAQ8mPVQlqNcOB2sJdwATtZKl2pDKKHfpf/rYj24lkinxf69blJbnsvtqqNU+L3SL50vzZhXOnw==", - "dev": true, - "requires": { - "isarray": "2.0.1" }, "dependencies": { - "isarray": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.1.tgz", - "integrity": "sha1-o32U7ZzaLVmGXJ92/llu4fM4dB4=", + "ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==", "dev": true } } }, - "has-cors": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/has-cors/-/has-cors-1.1.0.tgz", - "integrity": "sha1-XkdHk/fqmEPRu5nCPu9J/xJv/zk=", - "dev": true - }, "has-flag": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", "dev": true }, "has-symbols": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.1.tgz", - "integrity": "sha512-PLcsoqu++dmEIZB+6totNFKq/7Do+Z0u4oT0zKOJNl3lYK6vGwwu2hjHs+68OEZbTjiUE9bgOABXbP/GvrS0Kg==", + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", + "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", "dev": true }, - "has-value": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-value/-/has-value-1.0.0.tgz", - "integrity": "sha1-GLKB2lhbHFxR3vJMkw7SmgvmsXc=", - "dev": true, - "requires": { - "get-value": "^2.0.6", - "has-values": "^1.0.0", - "isobject": "^3.0.0" - } - }, - "has-values": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-values/-/has-values-1.0.0.tgz", - "integrity": "sha1-lbC2P+whRmGab+V/51Yo1aOe/k8=", - "dev": true, - "requires": { - "is-number": "^3.0.0", - "kind-of": "^4.0.0" - }, - "dependencies": { - "is-number": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", - "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", - "dev": true, - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "kind-of": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz", - "integrity": "sha1-IIE989cSkosgc3hpGkUGb65y3Vc=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "has-yarn": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/has-yarn/-/has-yarn-2.1.0.tgz", - "integrity": "sha512-UqBRqi4ju7T+TqGNdqAO0PaSVGsDGJUBQvk9eUWNGRY1CFGDzYhLWoM7JQEemnlvVcv/YEmc2wNW8BC24EnUsw==", + "has-unicode": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", + "integrity": "sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ==", "dev": true }, - "hash-base": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.0.4.tgz", - "integrity": "sha1-X8hoaEfs1zSZQDMZprCj8/auSRg=", + "hdr-histogram-js": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/hdr-histogram-js/-/hdr-histogram-js-2.0.3.tgz", + "integrity": "sha512-Hkn78wwzWHNCp2uarhzQ2SGFLU3JY8SBDDd3TAABK4fc30wm+MuPOrg5QVFVfkKOQd6Bfz3ukJEI+q9sXEkK1g==", "dev": true, "requires": { - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" + "@assemblyscript/loader": "^0.10.1", + "base64-js": "^1.2.0", + "pako": "^1.0.3" } }, - "hash.js": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.7.tgz", - "integrity": "sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==", - "dev": true, - "requires": { - "inherits": "^2.0.3", - "minimalistic-assert": "^1.0.1" - } + "hdr-histogram-percentiles-obj": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/hdr-histogram-percentiles-obj/-/hdr-histogram-percentiles-obj-3.0.0.tgz", + "integrity": "sha512-7kIufnBqdsBGcSZLPJwqHT3yhk1QTsSlFsVD3kx5ixH/AlgBs9yM1q6DPhXZ8f8gtdqgh7N7/5btRLpQsS2gHw==", + "dev": true }, - "hmac-drbg": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz", - "integrity": "sha1-0nRXAQJabHdabFRXk+1QL8DGSaE=", + "hosted-git-info": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-5.2.1.tgz", + "integrity": "sha512-xIcQYMnhcx2Nr4JTjsFmwwnr9vldugPy9uVm0o87bjqqWMv9GaqsTeT+i99wTl0mk1uLxJtHxLb8kymqTENQsw==", "dev": true, "requires": { - "hash.js": "^1.0.3", - "minimalistic-assert": "^1.0.0", - "minimalistic-crypto-utils": "^1.0.1" + "lru-cache": "^7.5.1" } }, - "hosted-git-info": { - "version": "2.8.8", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.8.tgz", - "integrity": "sha512-f/wzC2QaWBs7t9IYqB4T3sR1xviIViXJRJTWBlx2Gf3g0Xi5vI7Yy4koXQ1c9OYDGHN9sBy1DQ2AB8fqZBWhUg==", - "dev": true - }, "hpack.js": { "version": "2.1.6", "resolved": "https://registry.npmjs.org/hpack.js/-/hpack.js-2.1.6.tgz", - "integrity": "sha1-h3dMCUnlE/QuhFdbPEVoH63ioLI=", + "integrity": "sha512-zJxVehUdMGIKsRaNt7apO2Gqp0BdqW5yaiGHXXmbpvxgBYVZnAql+BJb4RO5ad2MgpbZKn5G6nMnegrH1FcNYQ==", "dev": true, "requires": { "inherits": "^2.0.1", "obuf": "^1.0.0", "readable-stream": "^2.0.1", "wbuf": "^1.1.0" + }, + "dependencies": { + "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" + } + }, + "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 + }, + "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" + } + } } }, "html-entities": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/html-entities/-/html-entities-1.2.1.tgz", - "integrity": "sha1-DfKTUfByEWNRXfueVUPl9u7VFi8=", + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/html-entities/-/html-entities-2.3.3.tgz", + "integrity": "sha512-DV5Ln36z34NNTDgnz0EWGBLZENelNAtkiFA4kyNOG2tDI6Mz1uSWiq1wAKdyjnJwyDiDO7Fa2SO1CTxPXL8VxA==", "dev": true }, "html-escaper": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.0.tgz", - "integrity": "sha512-a4u9BeERWGu/S8JiWEAQcdrg9v4QArtP9keViQjGMdff20fBdd8waotXaNmODqBe6uZ3Nafi7K/ho4gCQHV3Ig==", + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", + "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", "dev": true }, "http-cache-semantics": { - "version": "3.8.1", - "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-3.8.1.tgz", - "integrity": "sha512-5ai2iksyV8ZXmnZhHH4rWPoxxistEexSi5936zIQ1bnNTW5VnA85B6P/VpXiRM017IgRvb2kKo1a//y+0wSp3w==", + "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==", "dev": true }, "http-deceiver": { "version": "1.2.7", "resolved": "https://registry.npmjs.org/http-deceiver/-/http-deceiver-1.2.7.tgz", - "integrity": "sha1-+nFolEq5pRnTN8sL7HKE3D5yPYc=", + "integrity": "sha512-LmpOGxTfbpgtGVxJrj5k7asXHCgNZp5nLfp+hWc8QQRqtb7fUy6kRY3BO1h9ddF6yIPYUARgxGOwB42DnxIaNw==", "dev": true }, "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==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", + "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==", "dev": true, "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=", - "dev": true - } + "depd": "2.0.0", + "inherits": "2.0.4", + "setprototypeof": "1.2.0", + "statuses": "2.0.1", + "toidentifier": "1.0.1" } }, "http-parser-js": { - "version": "0.4.10", - "resolved": "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.4.10.tgz", - "integrity": "sha1-ksnBN0w1CF912zWexWzCV8u5P6Q=", + "version": "0.5.8", + "resolved": "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.5.8.tgz", + "integrity": "sha512-SGeBX54F94Wgu5RH3X5jsDtf4eHyRogWX1XGT3b4HuW3tQPM4AaBzoUji/4AAJNXCEOWZ5O0DgZmJw1947gD5Q==", "dev": true }, "http-proxy": { - "version": "1.18.0", - "resolved": "https://registry.npmjs.org/http-proxy/-/http-proxy-1.18.0.tgz", - "integrity": "sha512-84I2iJM/n1d4Hdgc6y2+qY5mDaz2PUVjlg9znE9byl+q0uC3DeByqBGReQu5tpLK0TAqTIXScRUV+dg7+bUPpQ==", + "version": "1.18.1", + "resolved": "https://registry.npmjs.org/http-proxy/-/http-proxy-1.18.1.tgz", + "integrity": "sha512-7mz/721AbnJwIVbnaSv1Cz3Am0ZLT/UBwkC92VlxhXv/k/BBQfM2fXElQNC27BVGr0uwUpplYPQM9LnaBMR5NQ==", "dev": true, "requires": { "eventemitter3": "^4.0.0", @@ -5922,48 +5081,33 @@ } }, "http-proxy-agent": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-2.1.0.tgz", - "integrity": "sha512-qwHbBLV7WviBl0rQsOzH6o5lwyOIvwp/BdFnvVxXORldu5TmjFfjzBcWUWS5kWAZhmv+JtiDhSuQCp4sBfbIgg==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-5.0.0.tgz", + "integrity": "sha512-n2hY8YdoRE1i7r6M0w9DIw5GgZN0G25P8zLCRQ8rjXtTU3vsNFBI/vWK/UIeE6g5MUUz6avwAPXmL6Fy9D/90w==", "dev": true, "requires": { - "agent-base": "4", - "debug": "3.1.0" - }, - "dependencies": { - "debug": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", - "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true - } + "@tootallnate/once": "2", + "agent-base": "6", + "debug": "4" } }, "http-proxy-middleware": { - "version": "0.19.1", - "resolved": "https://registry.npmjs.org/http-proxy-middleware/-/http-proxy-middleware-0.19.1.tgz", - "integrity": "sha512-yHYTgWMQO8VvwNS22eLLloAkvungsKdKTLO8AJlftYIKNfJr3GK3zK0ZCfzDDGUBttdGc8xFy1mCitvNKQtC3Q==", + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/http-proxy-middleware/-/http-proxy-middleware-2.0.6.tgz", + "integrity": "sha512-ya/UeJ6HVBYxrgYotAZo1KvPWlgB48kUJLDePFeneHsVujFaW5WNj2NgWCAE//B1Dl02BIfYlpNgBy8Kf8Rjmw==", "dev": true, "requires": { - "http-proxy": "^1.17.0", - "is-glob": "^4.0.0", - "lodash": "^4.17.11", - "micromatch": "^3.1.10" + "@types/http-proxy": "^1.17.8", + "http-proxy": "^1.18.1", + "is-glob": "^4.0.1", + "is-plain-obj": "^3.0.0", + "micromatch": "^4.0.2" } }, "http-signature": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", - "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=", + "integrity": "sha512-CAbnr6Rz4CYQkLYUtSNXxQPUH2gK8f3iWexVlsnMeD+GjlsQ0Xsy1cOX+mN3dtxYomRy21CiOzU8Uhw6OwncEQ==", "dev": true, "requires": { "assert-plus": "^1.0.0", @@ -5971,37 +5115,26 @@ "sshpk": "^1.7.0" } }, - "https-browserify": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/https-browserify/-/https-browserify-1.0.0.tgz", - "integrity": "sha1-7AbBDgo0wPL68Zn3/X/Hj//QPHM=", - "dev": true - }, "https-proxy-agent": { - "version": "2.2.4", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-2.2.4.tgz", - "integrity": "sha512-OmvfoQ53WLjtA9HeYP9RNrWMJzzAz1JGaSFr1nijg0PVR1JaD/xbJq1mdEIIlxGpXp9eSe/O2LgU9DJmTPd0Eg==", + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", + "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", "dev": true, "requires": { - "agent-base": "^4.3.0", - "debug": "^3.1.0" - }, - "dependencies": { - "debug": { - "version": "3.2.6", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", - "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - } + "agent-base": "6", + "debug": "4" } }, + "human-signals": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz", + "integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==", + "dev": true + }, "humanize-ms": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/humanize-ms/-/humanize-ms-1.2.1.tgz", - "integrity": "sha1-xG4xWaKT9riW2ikxbYtv6Lt5u+0=", + "integrity": "sha512-Fl70vYtsAFb/C06PTS9dZBo7ihau+Tu/DNCk/OyHhea07S+aeMWpFFkUaXRa8fI+ScZbEI8dfSxwY7gxZ9SAVQ==", "dev": true, "requires": { "ms": "^2.0.0" @@ -6016,100 +5149,80 @@ "safer-buffer": ">= 2.1.2 < 3" } }, - "ieee754": { - "version": "1.1.13", - "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.1.13.tgz", - "integrity": "sha512-4vf7I2LYV/HaWerSo3XmlMkp5eZ83i+/CDluXi/IGTs/O1sejBNhTtnxzmRZfvOUqj7lZjqHkeTvpgSFDlWZTg==", + "icss-utils": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/icss-utils/-/icss-utils-5.1.0.tgz", + "integrity": "sha512-soFhflCVWLfRNOPU3iv5Z9VUdT44xFRbzjLsEzSr5AQmgqPMTHdU3PMT1Cf1ssx8fLNJDA1juftYl+PUcv3MqA==", "dev": true }, - "iferr": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/iferr/-/iferr-0.1.5.tgz", - "integrity": "sha1-xg7taebY/bazEEofy8ocGS3FtQE=", + "ieee754": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", + "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", "dev": true }, "ignore": { - "version": "3.3.10", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-3.3.10.tgz", - "integrity": "sha512-Pgs951kaMm5GXP7MOvxERINe3gsaVjUWFm+UZPSq9xYriQAksyhg0csnS0KXSNRD5NmNdapXEpjxG49+AKh/ug==", + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.1.tgz", + "integrity": "sha512-d2qQLzTJ9WxQftPAuEQpSPmKqzxePjzVbpAVv62AQ64NTL+wR4JkrVqR/LqFsFEUsHDAiId52mJteHDFuDkElA==", "dev": true }, "ignore-walk": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/ignore-walk/-/ignore-walk-3.0.3.tgz", - "integrity": "sha512-m7o6xuOaT1aqheYHKf8W6J5pYH85ZI9w077erOzLje3JsB1gkafkAhHHY19dqjulgIZHFm32Cp5uNZgcQqdJKw==", + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ignore-walk/-/ignore-walk-5.0.1.tgz", + "integrity": "sha512-yemi4pMf51WKT7khInJqAvsIGzoqYXblnsz0ql8tM+yi1EKYTY1evX4NAbJrLL/Aanr2HyZeluqU+Oi7MGHokw==", "dev": true, "requires": { - "minimatch": "^3.0.4" + "minimatch": "^5.0.1" } }, "image-size": { "version": "0.5.5", "resolved": "https://registry.npmjs.org/image-size/-/image-size-0.5.5.tgz", - "integrity": "sha1-Cd/Uq50g4p6xw+gLiZA3jfnjy5w=", + "integrity": "sha512-6TDAlDPZxUFCv+fuOkIoXT/V/f3Qbq8e37p+YOiYrUv3v9cc3/6x78VdfPgFVaB9dZYeLUfKgHRebpkm/oP2VQ==", "dev": true, "optional": true }, "immediate": { "version": "3.0.6", "resolved": "https://registry.npmjs.org/immediate/-/immediate-3.0.6.tgz", - "integrity": "sha1-nbHb0Pr43m++D13V5Wu2BigN5ps=", + "integrity": "sha512-XXOFtyqDjNDAQxVfYxuF7g9Il/IbWmmlQg2MYKOH8ExIT1qg6xc4zyS3HaEEATgs1btfzxq15ciUiY7gjSXRGQ==", "dev": true }, - "import-cwd": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/import-cwd/-/import-cwd-2.1.0.tgz", - "integrity": "sha1-qmzzbnInYShcs3HsZRn1PiQ1sKk=", - "dev": true, - "requires": { - "import-from": "^2.1.0" - } - }, - "import-fresh": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-2.0.0.tgz", - "integrity": "sha1-2BNVwVYS04bGH53dOSLUMEgipUY=", - "dev": true, - "requires": { - "caller-path": "^2.0.0", - "resolve-from": "^3.0.0" - } - }, - "import-from": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/import-from/-/import-from-2.1.0.tgz", - "integrity": "sha1-M1238qev/VOqpHHUuAId7ja387E=", - "dev": true, - "requires": { - "resolve-from": "^3.0.0" - } - }, - "import-lazy": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/import-lazy/-/import-lazy-2.1.0.tgz", - "integrity": "sha1-BWmOPUXIjo1+nZLLBYTnfwlvPkM=", + "immutable": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.1.0.tgz", + "integrity": "sha512-oNkuqVTA8jqG1Q6c+UglTOD1xhC1BtjKI7XkCXRkZHrN5m18/XsnUp8Q89GkQO/z+0WjonSvl0FLhDYftp46nQ==", "dev": true }, - "import-local": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/import-local/-/import-local-2.0.0.tgz", - "integrity": "sha512-b6s04m3O+s3CGSbqDIyP4R6aAwAeYlVq9+WUWep6iHa8ETRf9yei1U48C5MmfJmV9AiLYYBKPMq/W+/WRpQmCQ==", + "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": { - "pkg-dir": "^3.0.0", - "resolve-cwd": "^2.0.0" + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" + }, + "dependencies": { + "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 + } } }, "imurmurhash": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", - "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", + "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", "dev": true }, - "indexof": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/indexof/-/indexof-0.0.1.tgz", - "integrity": "sha1-gtwzbSMrkGIXnQWrMpOmYFn9Q10=", + "indent-string": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", + "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", "dev": true }, "infer-owner": { @@ -6121,7 +5234,7 @@ "inflight": { "version": "1.0.6", "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", + "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", "dev": true, "requires": { "once": "^1.3.0", @@ -6135,170 +5248,110 @@ "dev": true }, "ini": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.5.tgz", - "integrity": "sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ini/-/ini-3.0.0.tgz", + "integrity": "sha512-TxYQaeNW/N8ymDvwAxPyRbhMBtnEwuvaTYpOQkFx1nSeusgezHniEc/l35Vo4iCq/mMiTJbpD7oYxN98hFlfmw==", "dev": true }, "injection-js": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/injection-js/-/injection-js-2.3.0.tgz", - "integrity": "sha512-rhS6E5jv603kbaO72ylOt0hGF1LT03oqQ4GU5KOO0qSaRbIWmdUCHjXq+VT79jL6/NmXtw9ccfK6dh/CzjoYjA==", - "dev": true + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/injection-js/-/injection-js-2.4.0.tgz", + "integrity": "sha512-6jiJt0tCAo9zjHbcwLiPL+IuNe9SQ6a9g0PEzafThW3fOQi0mrmiJGBJvDD6tmhPh8cQHIQtCOrJuBfQME4kPA==", + "dev": true, + "requires": { + "tslib": "^2.0.0" + } }, "inquirer": { - "version": "6.5.1", - "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-6.5.1.tgz", - "integrity": "sha512-uxNHBeQhRXIoHWTSNYUFhQVrHYFThIt6IVo2fFmSe8aBwdR3/w6b58hJpiL/fMukFkvGzjg+hSxFtwvVmKZmXw==", + "version": "8.2.4", + "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-8.2.4.tgz", + "integrity": "sha512-nn4F01dxU8VeKfq192IjLsxu0/OmMZ4Lg3xKAns148rCaXP6ntAoEkVYZThWjwON8AlzdZZi6oqnhNbxUG9hVg==", "dev": true, "requires": { "ansi-escapes": "^4.2.1", - "chalk": "^2.4.2", + "chalk": "^4.1.1", "cli-cursor": "^3.1.0", - "cli-width": "^2.0.0", + "cli-width": "^3.0.0", "external-editor": "^3.0.3", "figures": "^3.0.0", - "lodash": "^4.17.15", + "lodash": "^4.17.21", "mute-stream": "0.0.8", - "run-async": "^2.2.0", - "rxjs": "^6.4.0", + "ora": "^5.4.1", + "run-async": "^2.4.0", + "rxjs": "^7.5.5", "string-width": "^4.1.0", - "strip-ansi": "^5.1.0", - "through": "^2.3.6" + "strip-ansi": "^6.0.0", + "through": "^2.3.6", + "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==", - "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" + } }, - "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 + "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" + } }, - "string-width": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.0.tgz", - "integrity": "sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg==", + "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": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.0" - }, - "dependencies": { - "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" - } - } + "color-name": "~1.1.4" } }, - "strip-ansi": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", - "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "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": { - "ansi-regex": "^4.1.0" - }, - "dependencies": { - "ansi-regex": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", - "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", - "dev": true - } + "has-flag": "^4.0.0" } } } }, - "internal-ip": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/internal-ip/-/internal-ip-4.3.0.tgz", - "integrity": "sha512-S1zBo1D6zcsyuC6PMmY5+55YMILQ9av8lotMx447Bq6SAgo/sDK6y6uUKmuYhW7eacnIhFfsPmCNYdDzsnnDCg==", - "dev": true, - "requires": { - "default-gateway": "^4.2.0", - "ipaddr.js": "^1.9.0" - } - }, - "invariant": { - "version": "2.2.4", - "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz", - "integrity": "sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==", - "dev": true, - "requires": { - "loose-envify": "^1.0.0" - } - }, - "invert-kv": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/invert-kv/-/invert-kv-2.0.0.tgz", - "integrity": "sha512-wPVv/y/QQ/Uiirj/vh3oP+1Ww+AWehmi1g5fFWGPF6IpCBCDVrhgHRMvrLfdYcwDh3QJbGXDW4JAuzxElLSqKA==", - "dev": true - }, "ip": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/ip/-/ip-1.1.5.tgz", - "integrity": "sha1-vd7XARQpCCjAoDnnLvJfWq7ENUo=", - "dev": true - }, - "ip-regex": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/ip-regex/-/ip-regex-2.1.0.tgz", - "integrity": "sha1-+ni/XS5pE8kRzp+BnuUUa7bYROk=", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ip/-/ip-2.0.0.tgz", + "integrity": "sha512-WKa+XuLG1A1R0UWhl2+1XQSi+fZWMsYKffMZTTYsiZaUD8k2yDAj5atimTUD2TZkyCkNEeYE5NhFZmupOGtjYQ==", "dev": true }, "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==", - "dev": true - }, - "is-absolute-url": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/is-absolute-url/-/is-absolute-url-3.0.3.tgz", - "integrity": "sha512-opmNIX7uFnS96NtPmhWQgQx6/NYFgsUXYMllcfzwWKUMwfo8kku1TvE6hkNcH+Q1ts5cMVrsY7j0bxXQDciu9Q==", - "dev": true - }, - "is-accessor-descriptor": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", - "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", - "dev": true, - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "is-arguments": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-arguments/-/is-arguments-1.0.4.tgz", - "integrity": "sha512-xPh0Rmt8NE65sNzvyUmWgI1tz3mKq74lGA0mL8LYZcoIzKOzDh6HmrYm3d18k60nHerC8A9Km8kYu87zfSFnLA==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-2.0.1.tgz", + "integrity": "sha512-1qTgH9NG+IIJ4yfKs2e6Pp1bZg8wbDbKHT21HrLIeYBTRLgMYKnMTPAuI3Lcs61nfx5h1xlXnbJtH1kX5/d/ng==", "dev": true }, "is-arrayish": { "version": "0.2.1", "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", - "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=", + "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==", "dev": true }, "is-binary-path": { @@ -6310,136 +5363,67 @@ "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==", - "dev": true - }, - "is-callable": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.1.5.tgz", - "integrity": "sha512-ESKv5sMCJB2jnHTWZ3O5itG+O128Hsus4K4Qh1h2/cgn2vbgnLSVqfV46AeJA9D5EeeLa9w81KUXMtn34zhX+Q==", - "dev": true - }, - "is-ci": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-2.0.0.tgz", - "integrity": "sha512-YfJT7rkpQB0updsdHLGWrvhBJfcfzNNawYDNIyQXJz0IViGf75O8EBPKSdvw2rF+LGCsX4FZ8tcr3b19LcZq4w==", + "is-builtin-module": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/is-builtin-module/-/is-builtin-module-3.2.0.tgz", + "integrity": "sha512-phDA4oSGt7vl1n5tJvTWooWWAsXLY+2xCnxNqvKhGEzujg+A43wPlPOyDg3C8XQHN+6k/JTQWJ/j0dQh/qr+Hw==", "dev": true, "requires": { - "ci-info": "^2.0.0" + "builtin-modules": "^3.3.0" } }, - "is-data-descriptor": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", - "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", + "is-core-module": { + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.11.0.tgz", + "integrity": "sha512-RRjxlvLDkD1YJwDbroBHMb+cukurkDWNyHx7D3oNB5x9rb5ogcksMC5wHCadcXoo67gVr/+3GFySh3134zi6rw==", "dev": true, "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } + "has": "^1.0.3" } }, - "is-date-object": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.2.tgz", - "integrity": "sha512-USlDT524woQ08aoZFzh3/Z6ch9Y/EWXEHQ/AaRN0SkKq4t2Jw2R2339tSXmwuVoY7LLlBCbOIlx2myP/L5zk0g==", - "dev": true - }, - "is-descriptor": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", - "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", - "dev": true, - "requires": { - "is-accessor-descriptor": "^0.1.6", - "is-data-descriptor": "^0.1.4", - "kind-of": "^5.0.0" - }, - "dependencies": { - "kind-of": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", - "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", - "dev": true - } - } - }, - "is-directory": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/is-directory/-/is-directory-0.3.1.tgz", - "integrity": "sha1-YTObbyR1/Hcv2cnYP1yFddwVSuE=", - "dev": true - }, - "is-extendable": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", - "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=", + "is-docker": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz", + "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==", "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=", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", "dev": true }, "is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "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==", + "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-installed-globally": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/is-installed-globally/-/is-installed-globally-0.1.0.tgz", - "integrity": "sha1-Df2Y9akRFxbdU13aZJL2e/PSWoA=", - "dev": true, - "requires": { - "global-dirs": "^0.1.0", - "is-path-inside": "^1.0.0" - }, - "dependencies": { - "is-path-inside": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-1.0.1.tgz", - "integrity": "sha1-jvW33lBDej/cprToZe96pVy0gDY=", - "dev": true, - "requires": { - "path-is-inside": "^1.0.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==", + "dev": true + }, + "is-lambda": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-lambda/-/is-lambda-1.0.1.tgz", + "integrity": "sha512-z7CMFGNrENq5iFB9Bqo64Xk6Y9sg+epq1myIcdHaGnbMTYOxvzsEtdYqQUylB7LxfkvgrrjP32T6Ywciio9UIQ==", + "dev": true }, "is-module": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-module/-/is-module-1.0.0.tgz", - "integrity": "sha1-Mlj7afeMFNW4FdZkM2tM/7ZEFZE=", - "dev": true - }, - "is-npm": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-npm/-/is-npm-3.0.0.tgz", - "integrity": "sha512-wsigDr1Kkschp2opC4G3yA6r9EgVA6NjRpWzIi9axXqeIaAATPRJc4uLujXe3Nd9uO8KoDyA4MD6aZSeXTADhA==", + "integrity": "sha512-51ypPSPCoTEIN9dy5Oy+h4pShgJmPCygKfyRCISBI+JoWT/2oJvK8QPxmwv7b/p239jXrm9M1mlQbyKJ5A152g==", "dev": true }, "is-number": { @@ -6448,40 +5432,34 @@ "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", "dev": true }, - "is-obj": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-1.0.1.tgz", - "integrity": "sha1-PkcprB9f3gJc19g6iW2rn09n2w8=", - "dev": true - }, "is-path-cwd": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/is-path-cwd/-/is-path-cwd-2.2.0.tgz", - "integrity": "sha512-w942bTcih8fdJPJmQHFzkS76NEP8Kzzvmw92cXsazb8intwLqPibPPdXf4ANdKV3rYMuuQYGIWtvz9JilB3NFQ==", + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-path-cwd/-/is-path-cwd-1.0.0.tgz", + "integrity": "sha512-cnS56eR9SPAscL77ik76ATVqoPARTqPIVkMDVxRaWH06zT+6+CzIroYRJ0VVvm0Z1zfAvxvz9i/D3Ppjaqt5Nw==", "dev": true }, "is-path-in-cwd": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-path-in-cwd/-/is-path-in-cwd-2.1.0.tgz", - "integrity": "sha512-rNocXHgipO+rvnP6dk3zI20RpOtrAM/kzbB258Uw5BWr3TpXi861yzjo16Dn4hUox07iw5AyeMLHWsujkjzvRQ==", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-path-in-cwd/-/is-path-in-cwd-1.0.1.tgz", + "integrity": "sha512-FjV1RTW48E7CWM7eE/J2NJvAEEVektecDBVBE5Hh3nM1Jd0kvhHtX68Pr3xsDf857xt3Y4AkwVULK1Vku62aaQ==", "dev": true, "requires": { - "is-path-inside": "^2.1.0" + "is-path-inside": "^1.0.0" } }, "is-path-inside": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-2.1.0.tgz", - "integrity": "sha512-wiyhTzfDWsvwAW53OBWF5zuvaOGlZ6PwYxAbPVDhpm+gM09xKQGjBq/8uYN12aDvMxnAnq3dxTyoSoRNmg5YFg==", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-1.0.1.tgz", + "integrity": "sha512-qhsCR/Esx4U4hg/9I19OVUAJkGWtjRYHMRgUMZE2TDdj+Ag+kttZanLupfddNyglzz50cUlmWzUaI37GDfNx/g==", "dev": true, "requires": { - "path-is-inside": "^1.0.2" + "path-is-inside": "^1.0.1" } }, "is-plain-obj": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz", - "integrity": "sha1-caUMhCnfync8kqOQpKA7OfzVHT4=", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-3.0.0.tgz", + "integrity": "sha512-gwsOE28k+23GP1B6vFl1oVh/WOzmawBrKwo5Ev6wMKzPkaXaCDIQKzLnvsA42DRlbVTWorkgTKIviAKCWkfUwA==", "dev": true }, "is-plain-object": { @@ -6493,208 +5471,120 @@ "isobject": "^3.0.1" } }, - "is-promise": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-2.1.0.tgz", - "integrity": "sha1-eaKp7OfwlugPNtKy87wWwf9L8/o=", - "dev": true - }, - "is-reference": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/is-reference/-/is-reference-1.1.4.tgz", - "integrity": "sha512-uJA/CDPO3Tao3GTrxYn6AwkM4nUPJiGGYu5+cB8qbC7WGFlrKZbiRo7SFKxUAEpFUfiHofWCXBUNhvYJMh+6zw==", - "dev": true, - "requires": { - "@types/estree": "0.0.39" - }, - "dependencies": { - "@types/estree": { - "version": "0.0.39", - "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.39.tgz", - "integrity": "sha512-EYNwp3bU+98cpU4lAWYYL7Zz+2gryWH1qbdDTidVd6hkiR6weksdbMadyXKXNPEkQFhXM+hVO9ZygomHXp+AIw==", - "dev": true - } - } - }, - "is-regex": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.0.5.tgz", - "integrity": "sha512-vlKW17SNq44owv5AQR3Cq0bQPEb8+kF3UKZ2fiZNOWtztYE5i0CzCZxFDwO58qAOWtxdBRVO/V5Qin1wjCqFYQ==", - "dev": true, - "requires": { - "has": "^1.0.3" - } - }, "is-stream": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", - "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", + "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", "dev": true }, - "is-symbol": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.3.tgz", - "integrity": "sha512-OwijhaRSgqvhm/0ZdAcXNZt9lYdKFpcRDT5ULUuYXPoT794UNOdU+gpT6Rzo7b4V2HUl/op6GqY894AZwv9faQ==", - "dev": true, - "requires": { - "has-symbols": "^1.0.1" - } - }, "is-typedarray": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", - "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=", + "integrity": "sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA==", "dev": true }, - "is-windows": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz", - "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==", + "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 }, - "is-wsl": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-1.1.0.tgz", - "integrity": "sha1-HxbkqiKwTRM2tmGIpmrzxgDDpm0=", + "is-what": { + "version": "3.14.1", + "resolved": "https://registry.npmjs.org/is-what/-/is-what-3.14.1.tgz", + "integrity": "sha512-sNxgpk9793nzSs7bA6JQJGeIuRBQhAaNGG77kzYQgMkrID+lS6SlK07K5LaptscDlSaIgH+GPFzf+d75FVxozA==", "dev": true }, - "is-yarn-global": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/is-yarn-global/-/is-yarn-global-0.3.0.tgz", - "integrity": "sha512-VjSeb/lHmkoyd8ryPVIKvOCn4D1koMqY+vqyjjUfc3xyKtP4dYOxM44sZrnqQSzSds3xyOrUTLTC9LVCVgLngw==", - "dev": true + "is-wsl": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", + "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==", + "dev": true, + "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=", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", "dev": true }, "isbinaryfile": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/isbinaryfile/-/isbinaryfile-3.0.3.tgz", - "integrity": "sha512-8cJBL5tTd2OS0dM4jz07wQd5g0dCCqIhUxPIGtZfa5L6hWlvV5MHTITy/DBAsF+Oe2LS1X3krBUhNwaGUWpWxw==", - "dev": true, - "requires": { - "buffer-alloc": "^1.2.0" - } + "version": "4.0.10", + "resolved": "https://registry.npmjs.org/isbinaryfile/-/isbinaryfile-4.0.10.tgz", + "integrity": "sha512-iHrqe5shvBUcFbmZq9zOQHBoeOhZJu6RQGrDpBgenUm/Am+F3JM2MgQj+rK3Z601fzrL5gLZWtAPH2OBaSVcyw==", + "dev": true }, "isexe": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", "dev": true }, "isobject": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==", "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=", + "integrity": "sha512-Yljz7ffyPbrLpLngrMtZ7NduUgVvi6wG9RJ9IUcyCd59YQ911PBJphODUcbOVbqYfxe1wuYf/LJ8PauMRwsM/g==", "dev": true }, - "istanbul-api": { - "version": "2.1.6", - "resolved": "https://registry.npmjs.org/istanbul-api/-/istanbul-api-2.1.6.tgz", - "integrity": "sha512-x0Eicp6KsShG1k1rMgBAi/1GgY7kFGEBwQpw3PXGEmu+rBcBNhqU8g2DgY9mlepAsLPzrzrbqSgCGANnki4POA==", - "dev": true, - "requires": { - "async": "^2.6.2", - "compare-versions": "^3.4.0", - "fileset": "^2.0.3", - "istanbul-lib-coverage": "^2.0.5", - "istanbul-lib-hook": "^2.0.7", - "istanbul-lib-instrument": "^3.3.0", - "istanbul-lib-report": "^2.0.8", - "istanbul-lib-source-maps": "^3.0.6", - "istanbul-reports": "^2.2.4", - "js-yaml": "^3.13.1", - "make-dir": "^2.1.0", - "minimatch": "^3.0.4", - "once": "^1.4.0" - }, - "dependencies": { - "istanbul-lib-coverage": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.5.tgz", - "integrity": "sha512-8aXznuEPCJvGnMSRft4udDRDtb1V3pkQkMMI5LI+6HuQz5oQ4J2UFn1H82raA3qJtyOLkkwVqICBQkjnGtn5mA==", - "dev": true - }, - "istanbul-lib-instrument": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-3.3.0.tgz", - "integrity": "sha512-5nnIN4vo5xQZHdXno/YDXJ0G+I3dAm4XgzfSVTPLQpj/zAV2dV6Juy0yaf10/zrJOJeHoN3fraFe+XRq2bFVZA==", - "dev": true, - "requires": { - "@babel/generator": "^7.4.0", - "@babel/parser": "^7.4.3", - "@babel/template": "^7.4.0", - "@babel/traverse": "^7.4.3", - "@babel/types": "^7.4.0", - "istanbul-lib-coverage": "^2.0.5", - "semver": "^6.0.0" - } - } - } - }, "istanbul-lib-coverage": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.0.0.tgz", - "integrity": "sha512-UiUIqxMgRDET6eR+o5HbfRYP1l0hqkWOs7vNxC/mggutCMUIhWMm8gAHb8tHlyfD3/l6rlgNA5cKdDzEAf6hEg==", + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.0.tgz", + "integrity": "sha512-eOeJ5BHCmHYvQK7xt9GkdHuzuCGS1Y6g9Gvnx3Ym33fz/HpLRYxiS0wHNr+m/MBC8B647Xt608vCDEvhl9c6Mw==", "dev": true }, - "istanbul-lib-hook": { - "version": "2.0.7", - "resolved": "https://registry.npmjs.org/istanbul-lib-hook/-/istanbul-lib-hook-2.0.7.tgz", - "integrity": "sha512-vrRztU9VRRFDyC+aklfLoeXyNdTfga2EI3udDGn4cZ6fpSXpHLV9X6CHvfoMCPtggg8zvDDmC4b9xfu0z6/llA==", - "dev": true, - "requires": { - "append-transform": "^1.0.0" - } - }, "istanbul-lib-instrument": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-4.0.1.tgz", - "integrity": "sha512-imIchxnodll7pvQBYOqUu88EufLCU56LMeFPZZM/fJZ1irYcYdqroaV+ACK1Ila8ls09iEYArp+nqyC6lW1Vfg==", + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.1.tgz", + "integrity": "sha512-pzqtp31nLv/XFOzXGuvhCb8qhjmTVo5vjVk19XE4CRlSWz0KoeJ3bw9XsA7nOp9YBf4qHjwBxkDzKcME/J29Yg==", "dev": true, "requires": { - "@babel/core": "^7.7.5", - "@babel/parser": "^7.7.5", - "@babel/template": "^7.7.4", - "@babel/traverse": "^7.7.4", + "@babel/core": "^7.12.3", + "@babel/parser": "^7.14.7", "@istanbuljs/schema": "^0.1.2", - "istanbul-lib-coverage": "^3.0.0", + "istanbul-lib-coverage": "^3.2.0", "semver": "^6.3.0" + }, + "dependencies": { + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true + } } }, "istanbul-lib-report": { - "version": "2.0.8", - "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-2.0.8.tgz", - "integrity": "sha512-fHBeG573EIihhAblwgxrSenp0Dby6tJMFR/HvlerBsrCTD5bkUuoNtn3gVh29ZCS824cGGBPn7Sg7cNk+2xUsQ==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz", + "integrity": "sha512-wcdi+uAKzfiGT2abPpKZ0hSU1rGQjUQnLvtY5MpQ7QCTahD3VODhcu4wcfY1YtkGaDD5yuydOLINXsfbus9ROw==", "dev": true, "requires": { - "istanbul-lib-coverage": "^2.0.5", - "make-dir": "^2.1.0", - "supports-color": "^6.1.0" + "istanbul-lib-coverage": "^3.0.0", + "make-dir": "^3.0.0", + "supports-color": "^7.1.0" }, "dependencies": { - "istanbul-lib-coverage": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.5.tgz", - "integrity": "sha512-8aXznuEPCJvGnMSRft4udDRDtb1V3pkQkMMI5LI+6HuQz5oQ4J2UFn1H82raA3qJtyOLkkwVqICBQkjnGtn5mA==", + "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": "6.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", - "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "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": "^3.0.0" + "has-flag": "^4.0.0" } } } @@ -6712,12 +5602,60 @@ "source-map": "^0.6.1" }, "dependencies": { + "glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "dev": true, + "requires": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + }, "istanbul-lib-coverage": { "version": "2.0.5", "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.5.tgz", "integrity": "sha512-8aXznuEPCJvGnMSRft4udDRDtb1V3pkQkMMI5LI+6HuQz5oQ4J2UFn1H82raA3qJtyOLkkwVqICBQkjnGtn5mA==", "dev": true }, + "make-dir": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", + "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", + "dev": true, + "requires": { + "pify": "^4.0.1", + "semver": "^5.6.0" + } + }, + "minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "requires": { + "brace-expansion": "^1.1.7" + } + }, + "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" + } + }, + "semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "dev": true + }, "source-map": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", @@ -6727,18 +5665,19 @@ } }, "istanbul-reports": { - "version": "2.2.7", - "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-2.2.7.tgz", - "integrity": "sha512-uu1F/L1o5Y6LzPVSVZXNOoD/KXpJue9aeLRd0sM9uMXfZvzomB0WxVamWb5ue8kA2vVWEmW7EG+A5n3f1kqHKg==", + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.5.tgz", + "integrity": "sha512-nUsEMa9pBt/NOHqbcbeJEgqIlY/K7rVWUX6Lql2orY5e9roQOthbR3vtY4zzf2orPELg80fnxxk9zUyPlgwD1w==", "dev": true, "requires": { - "html-escaper": "^2.0.0" + "html-escaper": "^2.0.0", + "istanbul-lib-report": "^3.0.0" } }, "jasmine": { "version": "2.8.0", "resolved": "https://registry.npmjs.org/jasmine/-/jasmine-2.8.0.tgz", - "integrity": "sha1-awicChFXax8W3xG4AUbZHU6Lij4=", + "integrity": "sha512-KbdGQTf5jbZgltoHs31XGiChAPumMSY64OZMWLNYnEnMfG5uwGBhffePwuskexjT+/Jea/gU3qAU8344hNohSw==", "dev": true, "requires": { "exit": "^0.1.2", @@ -6746,52 +5685,82 @@ "jasmine-core": "~2.8.0" }, "dependencies": { + "glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "dev": true, + "requires": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + }, "jasmine-core": { "version": "2.8.0", "resolved": "https://registry.npmjs.org/jasmine-core/-/jasmine-core-2.8.0.tgz", - "integrity": "sha1-vMl5rh+f0FcB5F5S5l06XWPxok4=", + "integrity": "sha512-SNkOkS+/jMZvLhuSx1fjhcNWUC/KG6oVyFUGkSBEr9n1axSNduWU8GlI7suaHXr4yxjet6KjrUZxUTE5WzzWwQ==", "dev": true + }, + "minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "requires": { + "brace-expansion": "^1.1.7" + } } } }, "jasmine-core": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/jasmine-core/-/jasmine-core-3.4.0.tgz", - "integrity": "sha512-HU/YxV4i6GcmiH4duATwAbJQMlE0MsDIR5XmSVxURxKHn3aGAdbY1/ZJFmVRbKtnLwIxxMJD7gYaPsypcbYimg==", + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/jasmine-core/-/jasmine-core-4.5.0.tgz", + "integrity": "sha512-9PMzyvhtocxb3aXJVOPqBDswdgyAeSB81QnLop4npOpbqnheaTEwPc9ZloQeVswugPManznQBjD8kWDTjlnHuw==", "dev": true }, "jasmine-spec-reporter": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/jasmine-spec-reporter/-/jasmine-spec-reporter-4.2.1.tgz", - "integrity": "sha512-FZBoZu7VE5nR7Nilzy+Np8KuVIOxF4oXDPDknehCYBDE080EnlPu0afdZNmpGDBRCUBv3mj5qgqCRmk6W/K8vg==", + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/jasmine-spec-reporter/-/jasmine-spec-reporter-7.0.0.tgz", + "integrity": "sha512-OtC7JRasiTcjsaCBPtMO0Tl8glCejM4J4/dNuOJdA8lBjz4PmWjYQ6pzb0uzpBNAWJMDudYuj9OdXJWqM2QTJg==", "dev": true, "requires": { - "colors": "1.1.2" + "colors": "1.4.0" } }, "jasminewd2": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/jasminewd2/-/jasminewd2-2.2.0.tgz", - "integrity": "sha1-43zwsX8ZnM4jvqcbIDk5Uka07E4=", + "integrity": "sha512-Rn0nZe4rfDhzA63Al3ZGh0E+JTmM6ESZYXJGKuqKGZObsAB9fwXPD03GjtIEvJBDOhN94T5MzbwZSqzFHSQPzg==", "dev": true }, "jest-worker": { - "version": "24.9.0", - "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-24.9.0.tgz", - "integrity": "sha512-51PE4haMSXcHohnSMdM42anbvZANYTqMrr52tVKPqqsPJMzoP6FYYDVqahX/HrAoKEKz3uUPzSvKs9A3qR4iVw==", + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", + "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", "dev": true, "requires": { + "@types/node": "*", "merge-stream": "^2.0.0", - "supports-color": "^6.1.0" + "supports-color": "^8.0.0" }, "dependencies": { + "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": "6.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", - "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "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": "^3.0.0" + "has-flag": "^4.0.0" } } } @@ -6803,9 +5772,9 @@ "dev": true }, "js-yaml": { - "version": "3.13.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.13.1.tgz", - "integrity": "sha512-YfbcO7jXDdyj0DGxYVSlSeQNHbD7XPWvrVWeVUujrQEoZzWJIRrCPoyk6kL6IAjAG2IolMK4T0hNUe0HOUs5Jw==", + "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", @@ -6815,7 +5784,7 @@ "jsbn": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", - "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=", + "integrity": "sha512-UVU9dibq2JcFWxQPA6KCqj5O42VOmAY3zQUfEKxU0KpTGXwNoCjkX1e13eHNvw/xPynt6pU0rZ1htjWTNTSXsg==", "dev": true }, "jsesc": { @@ -6824,55 +5793,46 @@ "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", "dev": true }, - "json-buffer": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.0.tgz", - "integrity": "sha1-Wx85evx11ne96Lz8Dkfh+aPZqJg=", - "dev": true - }, - "json-parse-better-errors": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz", - "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==", + "json-parse-even-better-errors": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", + "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", "dev": true }, "json-schema": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz", - "integrity": "sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM=", + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.4.0.tgz", + "integrity": "sha512-es94M3nTIfsEPisRafak+HDLfHXnKBhV3vU5eqPcS3flIWqcxJWgXHXiey3YrpaNsanY5ei1VoYEbOzijuq9BA==", "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==", + "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 }, "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=", + "integrity": "sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA==", "dev": true }, - "json3": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/json3/-/json3-3.3.3.tgz", - "integrity": "sha512-c7/8mbUsKigAbLkD5B010BK4D9LZm7A1pNItkEwiUZRpIN66exu/e7YQWysGun+TRKaJp8MhemM+VkfWv42aCA==", + "json5": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.1.tgz", + "integrity": "sha512-1hqLFMSrGHRHxav9q9gNjJ5EXznIxGVO09xQRrwplcS8qs28pZ8s8hupZAmqDwZUmVZ2Qb2jnyPOWcDH8m8dlA==", "dev": true }, - "json5": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", - "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", - "dev": true, - "requires": { - "minimist": "^1.2.0" - } + "jsonc-parser": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-3.1.0.tgz", + "integrity": "sha512-DRf0QjnNeCUds3xTjKlQQ3DpJD51GvDjJfnxUVWg6PZTo2otSm+slzNAxU/35hF8/oJIKoG9slq30JYOsF2azg==", + "dev": true }, "jsonfile": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", - "integrity": "sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss=", + "integrity": "sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==", "dev": true, "requires": { "graceful-fs": "^4.1.6" @@ -6881,813 +5841,230 @@ "jsonparse": { "version": "1.3.1", "resolved": "https://registry.npmjs.org/jsonparse/-/jsonparse-1.3.1.tgz", - "integrity": "sha1-P02uSpH6wxX3EGL4UhzCOfE2YoA=", + "integrity": "sha512-POQXvpdL69+CluYsillJ7SUhKvytYjW9vG/GKpnf+xP8UWgYEM/RaMzHHofbALDiKbbP1W8UEYmgGl39WkPZsg==", "dev": true }, "jsprim": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz", - "integrity": "sha1-MT5mvB5cwG5Di8G3SZwuXFastqI=", + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.2.tgz", + "integrity": "sha512-P2bSOMAc/ciLz6DzgjVlGJP9+BrJWu5UDGK70C2iweC5QBIeFf0ZXRvGjEj2uYgrY2MkAAhsSWHDWlFtEroZWw==", "dev": true, "requires": { "assert-plus": "1.0.0", "extsprintf": "1.3.0", - "json-schema": "0.2.3", + "json-schema": "0.4.0", "verror": "1.10.0" } }, "jszip": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/jszip/-/jszip-3.2.2.tgz", - "integrity": "sha512-NmKajvAFQpbg3taXQXr/ccS2wcucR1AZ+NtyWp2Nq7HHVsXhcJFR8p0Baf32C2yVvBylFWVeKf+WI2AnvlPhpA==", + "version": "3.10.1", + "resolved": "https://registry.npmjs.org/jszip/-/jszip-3.10.1.tgz", + "integrity": "sha512-xXDvecyTpGLrqFrvkrUSoxxfJI5AH7U8zxxtVclpsUtMCq4JQ290LY8AW5c7Ggnr/Y/oK+bQMbqK2qmtk3pN4g==", "dev": true, "requires": { "lie": "~3.3.0", "pako": "~1.0.2", "readable-stream": "~2.3.6", - "set-immediate-shim": "~1.0.1" + "setimmediate": "^1.0.5" + }, + "dependencies": { + "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" + } + }, + "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 + }, + "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" + } + } } }, "karma": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/karma/-/karma-4.1.0.tgz", - "integrity": "sha512-xckiDqyNi512U4dXGOOSyLKPwek6X/vUizSy2f3geYevbLj+UIdvNwbn7IwfUIL2g1GXEPWt/87qFD1fBbl/Uw==", + "version": "6.4.1", + "resolved": "https://registry.npmjs.org/karma/-/karma-6.4.1.tgz", + "integrity": "sha512-Cj57NKOskK7wtFWSlMvZf459iX+kpYIPXmkNUzP2WAFcA7nhr/ALn5R7sw3w+1udFDcpMx/tuB8d5amgm3ijaA==", "dev": true, "requires": { - "bluebird": "^3.3.0", - "body-parser": "^1.16.1", - "braces": "^2.3.2", - "chokidar": "^2.0.3", - "colors": "^1.1.0", - "connect": "^3.6.0", - "core-js": "^2.2.0", + "@colors/colors": "1.5.0", + "body-parser": "^1.19.0", + "braces": "^3.0.2", + "chokidar": "^3.5.1", + "connect": "^3.7.0", "di": "^0.0.1", - "dom-serialize": "^2.2.0", - "flatted": "^2.0.0", - "glob": "^7.1.1", - "graceful-fs": "^4.1.2", - "http-proxy": "^1.13.0", - "isbinaryfile": "^3.0.0", - "lodash": "^4.17.11", - "log4js": "^4.0.0", - "mime": "^2.3.1", - "minimatch": "^3.0.2", - "optimist": "^0.6.1", - "qjobs": "^1.1.4", - "range-parser": "^1.2.0", - "rimraf": "^2.6.0", - "safe-buffer": "^5.0.1", - "socket.io": "2.1.1", + "dom-serialize": "^2.2.1", + "glob": "^7.1.7", + "graceful-fs": "^4.2.6", + "http-proxy": "^1.18.1", + "isbinaryfile": "^4.0.8", + "lodash": "^4.17.21", + "log4js": "^6.4.1", + "mime": "^2.5.2", + "minimatch": "^3.0.4", + "mkdirp": "^0.5.5", + "qjobs": "^1.2.0", + "range-parser": "^1.2.1", + "rimraf": "^3.0.2", + "socket.io": "^4.4.1", "source-map": "^0.6.1", - "tmp": "0.0.33", - "useragent": "2.3.0" + "tmp": "^0.2.1", + "ua-parser-js": "^0.7.30", + "yargs": "^16.1.1" }, "dependencies": { - "anymatch": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-2.0.0.tgz", - "integrity": "sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw==", + "glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", "dev": true, "requires": { - "micromatch": "^3.1.4", - "normalize-path": "^2.1.1" - }, - "dependencies": { - "normalize-path": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", - "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", - "dev": true, - "requires": { - "remove-trailing-separator": "^1.0.1" - } - } + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" } }, - "binary-extensions": { - "version": "1.13.1", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.13.1.tgz", - "integrity": "sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw==", + "mime": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-2.6.0.tgz", + "integrity": "sha512-USPkMeET31rOMiarsBNIHZKLGgvKc/LrjofAnBlOttf5ajRvqiRA8QsenbcooctK6d6Ts6aqZXBA+XbkKthiQg==", "dev": true }, - "braces": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", - "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", + "minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", "dev": true, "requires": { - "arr-flatten": "^1.1.0", - "array-unique": "^0.3.2", - "extend-shallow": "^2.0.1", - "fill-range": "^4.0.0", - "isobject": "^3.0.1", - "repeat-element": "^1.1.2", - "snapdragon": "^0.8.1", - "snapdragon-node": "^2.0.1", - "split-string": "^3.0.2", - "to-regex": "^3.0.1" + "brace-expansion": "^1.1.7" } }, - "chokidar": { - "version": "2.1.8", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-2.1.8.tgz", - "integrity": "sha512-ZmZUazfOzf0Nve7duiCKD23PFSCs4JPoYyccjUFF3aQkQadqBhfzhjkwBH2mNOG9cTBwhamM37EIsIkZw3nRgg==", + "mkdirp": { + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", + "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", "dev": true, "requires": { - "anymatch": "^2.0.0", - "async-each": "^1.0.1", - "braces": "^2.3.2", - "fsevents": "^1.2.7", - "glob-parent": "^3.1.0", - "inherits": "^2.0.3", - "is-binary-path": "^1.0.0", - "is-glob": "^4.0.0", - "normalize-path": "^3.0.0", - "path-is-absolute": "^1.0.0", - "readdirp": "^2.2.1", - "upath": "^1.1.1" + "minimist": "^1.2.6" } }, - "core-js": { - "version": "2.6.11", - "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.6.11.tgz", - "integrity": "sha512-5wjnpaT/3dV+XB4borEsnAYQchn00XSgTAWKDkEqv+K8KevjbzmofK6hfJ9TZIlpj2N0xQpazy7PiRQiWHqzWg==", + "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 }, - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "tmp": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.2.1.tgz", + "integrity": "sha512-76SUhtfqR2Ijn+xllcI5P1oyannHNHByD80W1q447gU3mp9G9PSpGdWmjUOHRDPiHYacIk66W7ubDTuPF3BEtQ==", "dev": true, "requires": { - "is-extendable": "^0.1.0" + "rimraf": "^3.0.0" } }, - "fill-range": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", - "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", + "yargs": { + "version": "16.2.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", + "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", "dev": true, "requires": { - "extend-shallow": "^2.0.1", - "is-number": "^3.0.0", - "repeat-string": "^1.6.1", - "to-regex-range": "^2.1.0" + "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" } }, - "fsevents": { - "version": "1.2.11", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.11.tgz", - "integrity": "sha512-+ux3lx6peh0BpvY0JebGyZoiR4D+oYzdPZMKJwkZ+sFkNJzpL7tXc/wehS49gUAxg3tmMHPHZkA8JU2rhhgDHw==", - "dev": true, - "optional": true, - "requires": { - "bindings": "^1.5.0", - "nan": "^2.12.1", - "node-pre-gyp": "*" - }, - "dependencies": { - "abbrev": { - "version": "1.1.1", - "bundled": true, - "dev": true, - "optional": true - }, - "ansi-regex": { - "version": "2.1.1", - "bundled": true, - "dev": true, - "optional": true - }, - "aproba": { - "version": "1.2.0", - "bundled": true, - "dev": true, - "optional": true - }, - "are-we-there-yet": { - "version": "1.1.5", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "delegates": "^1.0.0", - "readable-stream": "^2.0.6" - } - }, - "balanced-match": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "optional": true - }, - "brace-expansion": { - "version": "1.1.11", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "chownr": { - "version": "1.1.3", - "bundled": true, - "dev": true, - "optional": true - }, - "code-point-at": { - "version": "1.1.0", - "bundled": true, - "dev": true, - "optional": true - }, - "concat-map": { - "version": "0.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "console-control-strings": { - "version": "1.1.0", - "bundled": true, - "dev": true, - "optional": true - }, - "core-util-is": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "optional": true - }, - "debug": { - "version": "3.2.6", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "ms": "^2.1.1" - } - }, - "deep-extend": { - "version": "0.6.0", - "bundled": true, - "dev": true, - "optional": true - }, - "delegates": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "optional": true - }, - "detect-libc": { - "version": "1.0.3", - "bundled": true, - "dev": true, - "optional": true - }, - "fs-minipass": { - "version": "1.2.7", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "minipass": "^2.6.0" - } - }, - "fs.realpath": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "optional": true - }, - "gauge": { - "version": "2.7.4", - "bundled": true, - "dev": true, - "optional": true, - "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" - } - }, - "glob": { - "version": "7.1.6", - "bundled": true, - "dev": true, - "optional": 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" - } - }, - "has-unicode": { - "version": "2.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "iconv-lite": { - "version": "0.4.24", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "safer-buffer": ">= 2.1.2 < 3" - } - }, - "ignore-walk": { - "version": "3.0.3", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "minimatch": "^3.0.4" - } - }, - "inflight": { - "version": "1.0.6", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "inherits": { - "version": "2.0.4", - "bundled": true, - "dev": true, - "optional": true - }, - "ini": { - "version": "1.3.5", - "bundled": true, - "dev": true, - "optional": true - }, - "is-fullwidth-code-point": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "number-is-nan": "^1.0.0" - } - }, - "isarray": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "optional": true - }, - "minimatch": { - "version": "3.0.4", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "brace-expansion": "^1.1.7" - } - }, - "minimist": { - "version": "0.0.8", - "bundled": true, - "dev": true, - "optional": true - }, - "minipass": { - "version": "2.9.0", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "safe-buffer": "^5.1.2", - "yallist": "^3.0.0" - } - }, - "minizlib": { - "version": "1.3.3", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "minipass": "^2.9.0" - } - }, - "mkdirp": { - "version": "0.5.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "minimist": "0.0.8" - } - }, - "ms": { - "version": "2.1.2", - "bundled": true, - "dev": true, - "optional": true - }, - "needle": { - "version": "2.4.0", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "debug": "^3.2.6", - "iconv-lite": "^0.4.4", - "sax": "^1.2.4" - } - }, - "node-pre-gyp": { - "version": "0.14.0", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "detect-libc": "^1.0.2", - "mkdirp": "^0.5.1", - "needle": "^2.2.1", - "nopt": "^4.0.1", - "npm-packlist": "^1.1.6", - "npmlog": "^4.0.2", - "rc": "^1.2.7", - "rimraf": "^2.6.1", - "semver": "^5.3.0", - "tar": "^4.4.2" - } - }, - "nopt": { - "version": "4.0.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "abbrev": "1", - "osenv": "^0.1.4" - } - }, - "npm-bundled": { - "version": "1.1.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "npm-normalize-package-bin": "^1.0.1" - } - }, - "npm-normalize-package-bin": { - "version": "1.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "npm-packlist": { - "version": "1.4.7", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "ignore-walk": "^3.0.1", - "npm-bundled": "^1.0.1" - } - }, - "npmlog": { - "version": "4.1.2", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "are-we-there-yet": "~1.1.2", - "console-control-strings": "~1.1.0", - "gauge": "~2.7.3", - "set-blocking": "~2.0.0" - } - }, - "number-is-nan": { - "version": "1.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "object-assign": { - "version": "4.1.1", - "bundled": true, - "dev": true, - "optional": true - }, - "once": { - "version": "1.4.0", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "wrappy": "1" - } - }, - "os-homedir": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "optional": true - }, - "os-tmpdir": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "optional": true - }, - "osenv": { - "version": "0.1.5", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "os-homedir": "^1.0.0", - "os-tmpdir": "^1.0.0" - } - }, - "path-is-absolute": { - "version": "1.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "process-nextick-args": { - "version": "2.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "rc": { - "version": "1.2.8", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "deep-extend": "^0.6.0", - "ini": "~1.3.0", - "minimist": "^1.2.0", - "strip-json-comments": "~2.0.1" - }, - "dependencies": { - "minimist": { - "version": "1.2.0", - "bundled": true, - "dev": true, - "optional": true - } - } - }, - "readable-stream": { - "version": "2.3.6", - "bundled": true, - "dev": true, - "optional": 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" - } - }, - "rimraf": { - "version": "2.7.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "glob": "^7.1.3" - } - }, - "safe-buffer": { - "version": "5.1.2", - "bundled": true, - "dev": true, - "optional": true - }, - "safer-buffer": { - "version": "2.1.2", - "bundled": true, - "dev": true, - "optional": true - }, - "sax": { - "version": "1.2.4", - "bundled": true, - "dev": true, - "optional": true - }, - "semver": { - "version": "5.7.1", - "bundled": true, - "dev": true, - "optional": true - }, - "set-blocking": { - "version": "2.0.0", - "bundled": true, - "dev": true, - "optional": true - }, - "signal-exit": { - "version": "3.0.2", - "bundled": true, - "dev": true, - "optional": true - }, - "string-width": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "optional": true, - "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", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "safe-buffer": "~5.1.0" - } - }, - "strip-ansi": { - "version": "3.0.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "ansi-regex": "^2.0.0" - } - }, - "strip-json-comments": { - "version": "2.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "tar": { - "version": "4.4.13", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "chownr": "^1.1.1", - "fs-minipass": "^1.2.5", - "minipass": "^2.8.6", - "minizlib": "^1.2.1", - "mkdirp": "^0.5.0", - "safe-buffer": "^5.1.2", - "yallist": "^3.0.3" - } - }, - "util-deprecate": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "optional": true - }, - "wide-align": { - "version": "1.1.3", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "string-width": "^1.0.2 || 2" - } - }, - "wrappy": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "optional": true - }, - "yallist": { - "version": "3.1.1", - "bundled": true, - "dev": true, - "optional": true - } - } - }, - "is-binary-path": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz", - "integrity": "sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg=", - "dev": true, - "requires": { - "binary-extensions": "^1.0.0" - } - }, - "is-number": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", - "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", - "dev": true, - "requires": { - "kind-of": "^3.0.2" - } - }, - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - }, - "mime": { - "version": "2.4.4", - "resolved": "https://registry.npmjs.org/mime/-/mime-2.4.4.tgz", - "integrity": "sha512-LRxmNwziLPT828z+4YkNzloCFC2YM4wrB99k+AV5ZbEyfGNWfG8SO1FUXLmLDBSo89NrJZ4DIWeLjy1CHGhMGA==", - "dev": true - }, - "readdirp": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.2.1.tgz", - "integrity": "sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ==", - "dev": true, - "requires": { - "graceful-fs": "^4.1.11", - "micromatch": "^3.1.10", - "readable-stream": "^2.0.2" - } - }, - "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 - }, - "to-regex-range": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", - "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=", + "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==", + "dev": true + } + } + }, + "karma-chrome-launcher": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/karma-chrome-launcher/-/karma-chrome-launcher-3.1.1.tgz", + "integrity": "sha512-hsIglcq1vtboGPAN+DGCISCFOxW+ZVnIqhDQcCMqqCp+4dmJ0Qpq5QAjkbA0X2L9Mi6OBkHi2Srrbmm7pUKkzQ==", + "dev": true, + "requires": { + "which": "^1.2.1" + }, + "dependencies": { + "which": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", "dev": true, "requires": { - "is-number": "^3.0.0", - "repeat-string": "^1.6.1" + "isexe": "^2.0.0" } } } }, - "karma-chrome-launcher": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/karma-chrome-launcher/-/karma-chrome-launcher-2.2.0.tgz", - "integrity": "sha512-uf/ZVpAabDBPvdPdveyk1EPgbnloPvFFGgmRhYLTDH7gEB4nZdSBk8yTU47w1g/drLSx5uMOkjKk7IWKfWg/+w==", - "dev": true, - "requires": { - "fs-access": "^1.0.0", - "which": "^1.2.1" - } - }, "karma-coverage-istanbul-reporter": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/karma-coverage-istanbul-reporter/-/karma-coverage-istanbul-reporter-2.0.6.tgz", - "integrity": "sha512-WFh77RI8bMIKdOvI/1/IBmgnM+Q7NOLhnwG91QJrM8lW+CIXCjTzhhUsT/svLvAkLmR10uWY4RyYbHMLkTglvg==", + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/karma-coverage-istanbul-reporter/-/karma-coverage-istanbul-reporter-3.0.3.tgz", + "integrity": "sha512-wE4VFhG/QZv2Y4CdAYWDbMmcAHeS926ZIji4z+FkB2aF/EposRb6DP6G5ncT/wXhqUfAb/d7kZrNKPonbvsATw==", "dev": true, "requires": { - "istanbul-api": "^2.1.6", + "istanbul-lib-coverage": "^3.0.0", + "istanbul-lib-report": "^3.0.0", + "istanbul-lib-source-maps": "^3.0.6", + "istanbul-reports": "^3.0.2", "minimatch": "^3.0.4" + }, + "dependencies": { + "minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "requires": { + "brace-expansion": "^1.1.7" + } + } } }, "karma-jasmine": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/karma-jasmine/-/karma-jasmine-2.0.1.tgz", - "integrity": "sha512-iuC0hmr9b+SNn1DaUD2QEYtUxkS1J+bSJSn7ejdEexs7P8EYvA1CWkEdrDQ+8jVH3AgWlCNwjYsT1chjcNW9lA==", + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/karma-jasmine/-/karma-jasmine-5.1.0.tgz", + "integrity": "sha512-i/zQLFrfEpRyQoJF9fsCdTMOF5c2dK7C7OmsuKg2D0YSsuZSfQDiLuaiktbuio6F2wiCsZSnSnieIQ0ant/uzQ==", "dev": true, "requires": { - "jasmine-core": "^3.3" + "jasmine-core": "^4.1.0" } }, "karma-jasmine-html-reporter": { - "version": "1.5.2", - "resolved": "https://registry.npmjs.org/karma-jasmine-html-reporter/-/karma-jasmine-html-reporter-1.5.2.tgz", - "integrity": "sha512-ILBPsXqQ3eomq+oaQsM311/jxsypw5/d0LnZXj26XkfThwq7jZ55A2CFSKJVA5VekbbOGvMyv7d3juZj0SeTxA==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/karma-jasmine-html-reporter/-/karma-jasmine-html-reporter-2.0.0.tgz", + "integrity": "sha512-SB8HNNiazAHXM1vGEzf8/tSyEhkfxuDdhYdPBX2Mwgzt0OuF2gicApQ+uvXLID/gXyJQgvrM9+1/2SxZFUUDIA==", "dev": true }, "karma-source-map-support": { @@ -7699,62 +6076,54 @@ "source-map-support": "^0.5.5" } }, - "keyv": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/keyv/-/keyv-3.1.0.tgz", - "integrity": "sha512-9ykJ/46SN/9KPM/sichzQ7OvXyGDYKGTaDlKMGCAlg2UK8KRy4jb0d8sFc+0Tt0YYnThq8X2RZgCg74RPxgcVA==", - "dev": true, - "requires": { - "json-buffer": "3.0.0" - } - }, - "killable": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/killable/-/killable-1.0.1.tgz", - "integrity": "sha512-LzqtLKlUwirEUyl/nicirVmNiPvYs7l5n8wOPP7fyJVpUPkvCnW/vuiXGpylGUlnPDnB7311rARzAt3Mhswpjg==", - "dev": true - }, "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 }, - "latest-version": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/latest-version/-/latest-version-5.1.0.tgz", - "integrity": "sha512-weT+r0kTkRQdCdYCNtkMwWXQTMEswKrFBkm4ckQOMVhhqhIMI1UT2hMj+1iigIhgSZm5gTmrRXBNoGUgaTY1xA==", - "dev": true, - "requires": { - "package-json": "^6.3.0" - } - }, - "lcid": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/lcid/-/lcid-2.0.0.tgz", - "integrity": "sha512-avPEb8P8EGnwXKClwsNUgryVjllcRqtMYa49NTsbQagYuT1DcXnl1915oxWjoyGrXR6zH/Y0Zc96xWsPcoDKeA==", - "dev": true, - "requires": { - "invert-kv": "^2.0.0" - } + "klona": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/klona/-/klona-2.0.5.tgz", + "integrity": "sha512-pJiBpiXMbt7dkzXe8Ghj/u4FfXOOa98fPW+bihOJ4SjnoijweJrNThJfd3ifXpXhREjpoF2mZVH1GfS9LV3kHQ==", + "dev": true }, "less": { - "version": "3.9.0", - "resolved": "https://registry.npmjs.org/less/-/less-3.9.0.tgz", - "integrity": "sha512-31CmtPEZraNUtuUREYjSqRkeETFdyEHSEPAGq4erDlUXtda7pzNmctdljdIagSb589d/qXGWiiP31R5JVf+v0w==", + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/less/-/less-4.1.3.tgz", + "integrity": "sha512-w16Xk/Ta9Hhyei0Gpz9m7VS8F28nieJaL/VyShID7cYvP6IL5oHeL6p4TXSDJqZE/lNv0oJ2pGVjJsRkfwm5FA==", "dev": true, "requires": { - "clone": "^2.1.2", + "copy-anything": "^2.0.1", "errno": "^0.1.1", "graceful-fs": "^4.1.2", "image-size": "~0.5.0", + "make-dir": "^2.1.0", "mime": "^1.4.1", - "mkdirp": "^0.5.0", - "promise": "^7.1.1", - "request": "^2.83.0", - "source-map": "~0.6.0" + "needle": "^3.1.0", + "parse-node-version": "^1.0.1", + "source-map": "~0.6.0", + "tslib": "^2.3.0" }, "dependencies": { + "make-dir": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", + "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", + "dev": true, + "optional": true, + "requires": { + "pify": "^4.0.1", + "semver": "^5.6.0" + } + }, + "semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "dev": true, + "optional": true + }, "source-map": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", @@ -7765,66 +6134,21 @@ } }, "less-loader": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/less-loader/-/less-loader-5.0.0.tgz", - "integrity": "sha512-bquCU89mO/yWLaUq0Clk7qCsKhsF/TZpJUzETRvJa9KSVEL9SO3ovCvdEHISBhrC81OwC8QSVX7E0bzElZj9cg==", - "dev": true, - "requires": { - "clone": "^2.1.1", - "loader-utils": "^1.1.0", - "pify": "^4.0.1" - } - }, - "less-plugin-npm-import": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/less-plugin-npm-import/-/less-plugin-npm-import-2.1.0.tgz", - "integrity": "sha1-gj5phskzGKmBccqFiEi2vq1Vvz4=", - "dev": true, - "requires": { - "promise": "~7.0.1", - "resolve": "~1.1.6" - }, - "dependencies": { - "promise": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/promise/-/promise-7.0.4.tgz", - "integrity": "sha1-Nj6EpMNsg1a4kP7WLJHOhdAu1Tk=", - "dev": true, - "requires": { - "asap": "~2.0.3" - } - }, - "resolve": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.1.7.tgz", - "integrity": "sha1-IDEU2CrSxe2ejgQRs5ModeiJ6Xs=", - "dev": true - } - } - }, - "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 - }, - "levenary": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/levenary/-/levenary-1.1.1.tgz", - "integrity": "sha512-mkAdOIt79FD6irqjYSs4rdbnlT5vRonMEvBVPVb3XmevfS8kgRXwfes0dhPdEtzTWD/1eNE/Bm/G1iRt6DcnQQ==", + "version": "11.0.0", + "resolved": "https://registry.npmjs.org/less-loader/-/less-loader-11.0.0.tgz", + "integrity": "sha512-9+LOWWjuoectIEx3zrfN83NAGxSUB5pWEabbbidVQVgZhN+wN68pOvuyirVlH1IK4VT1f3TmlyvAnCXh8O5KEw==", "dev": true, "requires": { - "leven": "^3.1.0" + "klona": "^2.0.4" } }, "license-webpack-plugin": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/license-webpack-plugin/-/license-webpack-plugin-2.1.2.tgz", - "integrity": "sha512-7poZHRla+ae0eEButlwMrPpkXyhNVBf2EHePYWT0jyLnI6311/OXJkTI2sOIRungRpQgU2oDMpro5bSFPT5F0A==", + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/license-webpack-plugin/-/license-webpack-plugin-4.0.2.tgz", + "integrity": "sha512-771TFWFD70G1wLTC4oU2Cw4qvtmNrIw+wRvBtn+okgHl7slJVi7zfNcdmqDL72BojM30VNJ2UHylr1o77U37Jw==", "dev": true, "requires": { - "@types/webpack-sources": "^0.1.5", - "webpack-sources": "^1.2.0" + "webpack-sources": "^3.0.0" } }, "lie": { @@ -7837,116 +6161,146 @@ } }, "lines-and-columns": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.1.6.tgz", - "integrity": "sha1-HADHQ7QzzQpOgHWPe2SldEDZ/wA=", + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", + "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==", "dev": true }, "loader-runner": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-2.4.0.tgz", - "integrity": "sha512-Jsmr89RcXGIwivFY21FcRrisYZfvLMTWx5kOLc+JTxtpBOG6xML0vzbc6SEQG2FO9/4Fc3wW4LVcB5DmGflaRw==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-4.3.0.tgz", + "integrity": "sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg==", "dev": true }, "loader-utils": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.2.3.tgz", - "integrity": "sha512-fkpz8ejdnEMG3s37wGL07iSBDg99O9D5yflE9RGNH3hRdx9SOwYfnGYdZOUIZitN8E+E2vkq3MUMYMvPYl5ZZA==", - "dev": true, - "requires": { - "big.js": "^5.2.2", - "emojis-list": "^2.0.0", - "json5": "^1.0.1" - } + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-3.2.1.tgz", + "integrity": "sha512-ZvFw1KWS3GVyYBYb7qkmRM/WwL2TQQBxgCK62rlvm4WpVQ23Nb4tYjApUlfjrEGvOs7KHEsmyUn75OHZrJMWPw==", + "dev": true }, "locate-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", - "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", "dev": true, "requires": { - "p-locate": "^3.0.0", - "path-exists": "^3.0.0" + "p-locate": "^4.1.0" } }, "lodash": { - "version": "4.17.15", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.15.tgz", - "integrity": "sha512-8xOcRHvCjnocdS5cpwXQXVzmmh5e5+saE2QGoeQmbKmRS6J3VQppPOIt0MnmE+4xlZoumy0GPG0D0MVIQbNA1A==", + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", "dev": true }, - "lodash.clonedeep": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz", - "integrity": "sha1-4j8/nE+Pvd6HJSnBBxhXoIblzO8=", + "lodash.debounce": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", + "integrity": "sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==", "dev": true }, - "log4js": { - "version": "4.5.1", - "resolved": "https://registry.npmjs.org/log4js/-/log4js-4.5.1.tgz", - "integrity": "sha512-EEEgFcE9bLgaYUKuozyFfytQM2wDHtXn4tAN41pkaxpNjAykv11GVdeI4tHtmPWW4Xrgh9R/2d7XYghDVjbKKw==", + "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": { - "date-format": "^2.0.0", - "debug": "^4.1.1", - "flatted": "^2.0.0", - "rfdc": "^1.1.4", - "streamroller": "^1.0.6" + "chalk": "^4.1.0", + "is-unicode-supported": "^0.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" + } + }, + "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" + } + }, + "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" + } + } } }, - "loglevel": { - "version": "1.6.7", - "resolved": "https://registry.npmjs.org/loglevel/-/loglevel-1.6.7.tgz", - "integrity": "sha512-cY2eLFrQSAfVPhCgH1s7JI73tMbg9YC3v3+ZHVW67sBS7UxWzNEk/ZBbSfLykBWHp33dqqtOv82gjhKEi81T/A==", - "dev": true - }, - "loose-envify": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", - "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", + "log4js": { + "version": "6.7.1", + "resolved": "https://registry.npmjs.org/log4js/-/log4js-6.7.1.tgz", + "integrity": "sha512-lzbd0Eq1HRdWM2abSD7mk6YIVY0AogGJzb/z+lqzRk+8+XJP+M6L1MS5FUSc3jjGru4dbKjEMJmqlsoYYpuivQ==", "dev": true, "requires": { - "js-tokens": "^3.0.0 || ^4.0.0" + "date-format": "^4.0.14", + "debug": "^4.3.4", + "flatted": "^3.2.7", + "rfdc": "^1.3.0", + "streamroller": "^3.1.3" } }, - "lowercase-keys": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.1.tgz", - "integrity": "sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA==", - "dev": true - }, "lru-cache": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", - "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", - "dev": true, - "requires": { - "yallist": "^3.0.2" - } + "version": "7.14.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.14.1.tgz", + "integrity": "sha512-ysxwsnTKdAx96aTRdhDOCQfDgbHnt8SK0KY8SEjO0wHinhWOFTESbjVCMPbU1uGXg/ch4lifqx0wfjOawU2+WA==", + "dev": true }, "magic-string": { - "version": "0.25.3", - "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.25.3.tgz", - "integrity": "sha512-6QK0OpF/phMz0Q2AxILkX2mFhi7m+WMwTRg0LQKq/WBB0cDP4rYH3Wp4/d3OTXlrPLVJT/RFqj8tFeAR4nk8AA==", + "version": "0.26.2", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.26.2.tgz", + "integrity": "sha512-NzzlXpclt5zAbmo6h6jNc8zl2gNRGHvmsZW4IvZhTC4W7k4OlLP+S5YLussa/r3ixNT66KOQfNORlXHSOy/X4A==", "dev": true, "requires": { - "sourcemap-codec": "^1.4.4" + "sourcemap-codec": "^1.4.8" } }, "make-dir": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", - "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", "dev": true, "requires": { - "pify": "^4.0.1", - "semver": "^5.6.0" + "semver": "^6.0.0" }, "dependencies": { "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", "dev": true } } @@ -7958,240 +6312,76 @@ "dev": true }, "make-fetch-happen": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-5.0.2.tgz", - "integrity": "sha512-07JHC0r1ykIoruKO8ifMXu+xEU8qOXDFETylktdug6vJDACnP+HKevOu3PXyNPzFyTSlz8vrBYlBO1JZRe8Cag==", - "dev": true, - "requires": { - "agentkeepalive": "^3.4.1", - "cacache": "^12.0.0", - "http-cache-semantics": "^3.8.1", - "http-proxy-agent": "^2.1.0", - "https-proxy-agent": "^2.2.3", - "lru-cache": "^5.1.1", - "mississippi": "^3.0.0", - "node-fetch-npm": "^2.0.2", - "promise-retry": "^1.1.1", - "socks-proxy-agent": "^4.0.0", - "ssri": "^6.0.0" - } - }, - "mamacro": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/mamacro/-/mamacro-0.0.3.tgz", - "integrity": "sha512-qMEwh+UujcQ+kbz3T6V+wAmO2U8veoq2w+3wY8MquqwVA3jChfwY+Tk52GZKDfACEPjuZ7r2oJLejwpt8jtwTA==", - "dev": true - }, - "map-age-cleaner": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/map-age-cleaner/-/map-age-cleaner-0.1.3.tgz", - "integrity": "sha512-bJzx6nMoP6PDLPBFmg7+xRKeFZvFboMrGlxmNj9ClvX53KrmvM5bXFXEWjbz4cz1AFn+jWJ9z/DJSz7hrs0w3w==", - "dev": true, - "requires": { - "p-defer": "^1.0.0" - } - }, - "map-cache": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz", - "integrity": "sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8=", - "dev": true - }, - "map-visit": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/map-visit/-/map-visit-1.0.0.tgz", - "integrity": "sha1-7Nyo8TFE5mDxtb1B8S80edmN+48=", - "dev": true, - "requires": { - "object-visit": "^1.0.0" - } - }, - "md5.js": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.5.tgz", - "integrity": "sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==", - "dev": true, - "requires": { - "hash-base": "^3.0.0", - "inherits": "^2.0.1", - "safe-buffer": "^5.1.2" + "version": "10.2.1", + "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-10.2.1.tgz", + "integrity": "sha512-NgOPbRiaQM10DYXvN3/hhGVI2M5MtITFryzBGxHM5p4wnFxsVCbxkrBrDsk+EZ5OB4jEOT7AjDxtdF+KVEFT7w==", + "dev": true, + "requires": { + "agentkeepalive": "^4.2.1", + "cacache": "^16.1.0", + "http-cache-semantics": "^4.1.0", + "http-proxy-agent": "^5.0.0", + "https-proxy-agent": "^5.0.0", + "is-lambda": "^1.0.1", + "lru-cache": "^7.7.1", + "minipass": "^3.1.6", + "minipass-collect": "^1.0.2", + "minipass-fetch": "^2.0.3", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "negotiator": "^0.6.3", + "promise-retry": "^2.0.1", + "socks-proxy-agent": "^7.0.0", + "ssri": "^9.0.0" } }, "media-typer": { "version": "0.3.0", "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", - "integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=", + "integrity": "sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==", "dev": true }, - "mem": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/mem/-/mem-4.3.0.tgz", - "integrity": "sha512-qX2bG48pTqYRVmDB37rn/6PT7LcR8T7oAX3bf99u1Tt1nzxYfxkgqDwUwolPlXweM0XzBOBFzSx4kfp7KP1s/w==", - "dev": true, - "requires": { - "map-age-cleaner": "^0.1.1", - "mimic-fn": "^2.0.0", - "p-is-promise": "^2.0.0" - } - }, - "memory-fs": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/memory-fs/-/memory-fs-0.4.1.tgz", - "integrity": "sha1-OpoguEYlI+RHz7x+i7gO1me/xVI=", + "memfs": { + "version": "3.4.12", + "resolved": "https://registry.npmjs.org/memfs/-/memfs-3.4.12.tgz", + "integrity": "sha512-BcjuQn6vfqP+k100e0E9m61Hyqa//Brp+I3f0OBmN0ATHlFA8vx3Lt8z57R3u2bPqe3WGDBC+nF72fTH7isyEw==", "dev": true, "requires": { - "errno": "^0.1.3", - "readable-stream": "^2.0.1" + "fs-monkey": "^1.0.3" } }, "merge-descriptors": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", - "integrity": "sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E=", + "integrity": "sha512-cCi6g3/Zr1iqQi6ySbseM1Xvooa98N0w31jzUYrXPX2xqObmFGHJ0tQ5u74H3mVh7wLouTseZyYIq39g8cNp1w==", "dev": true }, - "merge-source-map": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/merge-source-map/-/merge-source-map-1.1.0.tgz", - "integrity": "sha512-Qkcp7P2ygktpMPh2mCQZaf3jhN6D3Z/qVZHSdWvQ+2Ef5HgRAPBO57A77+ENm0CPx2+1Ce/MYKi3ymqdfuqibw==", - "dev": true, - "requires": { - "source-map": "^0.6.1" - }, - "dependencies": { - "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 - } - } - }, "merge-stream": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", "dev": true }, + "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=", + "integrity": "sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==", "dev": true }, "micromatch": { - "version": "3.1.10", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", - "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", - "dev": true, - "requires": { - "arr-diff": "^4.0.0", - "array-unique": "^0.3.2", - "braces": "^2.3.1", - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "extglob": "^2.0.4", - "fragment-cache": "^0.2.1", - "kind-of": "^6.0.2", - "nanomatch": "^1.2.9", - "object.pick": "^1.3.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.2" - }, - "dependencies": { - "braces": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", - "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", - "dev": true, - "requires": { - "arr-flatten": "^1.1.0", - "array-unique": "^0.3.2", - "extend-shallow": "^2.0.1", - "fill-range": "^4.0.0", - "isobject": "^3.0.1", - "repeat-element": "^1.1.2", - "snapdragon": "^0.8.1", - "snapdragon-node": "^2.0.1", - "split-string": "^3.0.2", - "to-regex": "^3.0.1" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "fill-range": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", - "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", - "dev": true, - "requires": { - "extend-shallow": "^2.0.1", - "is-number": "^3.0.0", - "repeat-string": "^1.6.1", - "to-regex-range": "^2.1.0" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "is-number": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", - "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", - "dev": true, - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "to-regex-range": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", - "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=", - "dev": true, - "requires": { - "is-number": "^3.0.0", - "repeat-string": "^1.6.1" - } - } - } - }, - "miller-rabin": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/miller-rabin/-/miller-rabin-4.0.1.tgz", - "integrity": "sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA==", + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", + "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", "dev": true, "requires": { - "bn.js": "^4.0.0", - "brorand": "^1.0.1" + "braces": "^3.0.2", + "picomatch": "^2.3.1" } }, "mime": { @@ -8201,18 +6391,18 @@ "dev": true }, "mime-db": { - "version": "1.43.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.43.0.tgz", - "integrity": "sha512-+5dsGEEovYbT8UY9yD7eE4XTc4UwJ1jBYlgaQQF38ENsKR3wj/8q8RFZrF9WIZpB2V1ArTVFUva8sAul1NzRzQ==", + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", "dev": true }, "mime-types": { - "version": "2.1.26", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.26.tgz", - "integrity": "sha512-01paPWYgLrkqAyrlDorC1uDwl2p3qZT7yl806vW7DvDoxwXi46jsjFbg+WdwotBIk6/MbEhO/dh5aZ5sNj/dWQ==", + "version": "2.1.35", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", + "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", "dev": true, "requires": { - "mime-db": "1.43.0" + "mime-db": "1.52.0" } }, "mimic-fn": { @@ -8221,22 +6411,36 @@ "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", "dev": true }, - "mimic-response": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz", - "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==", - "dev": true - }, "mini-css-extract-plugin": { - "version": "0.8.0", - "resolved": "https://registry.npmjs.org/mini-css-extract-plugin/-/mini-css-extract-plugin-0.8.0.tgz", - "integrity": "sha512-MNpRGbNA52q6U92i0qbVpQNsgk7LExy41MdAlG84FeytfDOtRIf/mCHdEgG8rpTKOaNKiqUnZdlptF469hxqOw==", + "version": "2.6.1", + "resolved": "https://registry.npmjs.org/mini-css-extract-plugin/-/mini-css-extract-plugin-2.6.1.tgz", + "integrity": "sha512-wd+SD57/K6DiV7jIR34P+s3uckTRuQvx0tKPcvjFlrEylk6P4mQ2KSWk1hblj1Kxaqok7LogKOieygXqBczNlg==", "dev": true, "requires": { - "loader-utils": "^1.1.0", - "normalize-url": "1.9.1", - "schema-utils": "^1.0.0", - "webpack-sources": "^1.1.0" + "schema-utils": "^4.0.0" + }, + "dependencies": { + "ajv-keywords": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz", + "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", + "dev": true, + "requires": { + "fast-deep-equal": "^3.1.3" + } + }, + "schema-utils": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.0.0.tgz", + "integrity": "sha512-1edyXKgh6XnJsJSQ8mKWXnN/BVaIbFMLpouRUrXgVq7WYne5kw3MW7UPhO44uRXQSIpTSXoJbmrR2X0w9kUTyg==", + "dev": true, + "requires": { + "@types/json-schema": "^7.0.9", + "ajv": "^8.8.0", + "ajv-formats": "^2.1.1", + "ajv-keywords": "^5.0.0" + } + } } }, "minimalistic-assert": { @@ -8245,343 +6449,507 @@ "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==", "dev": true }, - "minimalistic-crypto-utils": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz", - "integrity": "sha1-9sAMHAsIIkblxNmd+4x8CDsrWCo=", - "dev": true - }, "minimatch": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", - "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.0.tgz", + "integrity": "sha512-9TPBGGak4nHfGZsPBohm9AWg6NoT7QTCehS3BIJABslyZbzxfV78QM2Y6+i741OPZIafFAaiiEMh5OyIrJPgtg==", "dev": true, "requires": { - "brace-expansion": "^1.1.7" + "brace-expansion": "^2.0.1" + }, + "dependencies": { + "brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dev": true, + "requires": { + "balanced-match": "^1.0.0" + } + } } }, "minimist": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", - "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.7.tgz", + "integrity": "sha512-bzfL1YUZsP41gmu/qjrEk0Q6i2ix/cVeAhbCbqH9u3zYutS1cLg00qhrD0M2MVdCcx4Sc0UpP2eBWo9rotpq6g==", "dev": true }, "minipass": { - "version": "2.9.0", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-2.9.0.tgz", - "integrity": "sha512-wxfUjg9WebH+CUDX/CdbRlh5SmfZiy/hpkxaRI16Y9W56Pa75sWgd/rvFilSgrauD9NyFymP/+JFV3KwzIsJeg==", + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", "dev": true, "requires": { - "safe-buffer": "^5.1.2", - "yallist": "^3.0.0" + "yallist": "^4.0.0" } }, - "minizlib": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-1.3.3.tgz", - "integrity": "sha512-6ZYMOEnmVsdCeTJVE0W9ZD+pVnE8h9Hma/iOwwRDsdQoePpoX56/8B6z3P9VNwppJuBKNRuFDRNRqRWexT9G9Q==", + "minipass-collect": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/minipass-collect/-/minipass-collect-1.0.2.tgz", + "integrity": "sha512-6T6lH0H8OG9kITm/Jm6tdooIbogG9e0tLgpY6mphXSm/A9u8Nq1ryBG+Qspiub9LjWlBPsPS3tWQ/Botq4FdxA==", "dev": true, "requires": { - "minipass": "^2.9.0" + "minipass": "^3.0.0" } }, - "mississippi": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/mississippi/-/mississippi-3.0.0.tgz", - "integrity": "sha512-x471SsVjUtBRtcvd4BzKE9kFC+/2TeWgKCgw0bZcw1b9l2X3QX5vCWgF+KaZaYm87Ss//rHnWryupDrgLvmSkA==", + "minipass-fetch": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-2.1.2.tgz", + "integrity": "sha512-LT49Zi2/WMROHYoqGgdlQIZh8mLPZmOrN2NdJjMXxYe4nkN6FUyuPuOAOedNJDrx0IRGg9+4guZewtp8hE6TxA==", "dev": true, "requires": { - "concat-stream": "^1.5.0", - "duplexify": "^3.4.2", - "end-of-stream": "^1.1.0", - "flush-write-stream": "^1.0.0", - "from2": "^2.1.0", - "parallel-transform": "^1.1.0", - "pump": "^3.0.0", - "pumpify": "^1.3.3", - "stream-each": "^1.1.0", - "through2": "^2.0.0" + "encoding": "^0.1.13", + "minipass": "^3.1.6", + "minipass-sized": "^1.0.3", + "minizlib": "^2.1.2" } }, - "mixin-deep": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.2.tgz", - "integrity": "sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA==", + "minipass-flush": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/minipass-flush/-/minipass-flush-1.0.5.tgz", + "integrity": "sha512-JmQSYYpPUqX5Jyn1mXaRwOda1uQ8HP5KAT/oDSLCzt1BYRhQU0/hDtsB1ufZfEEzMZ9aAVmsBw8+FWsIXlClWw==", "dev": true, "requires": { - "for-in": "^1.0.2", - "is-extendable": "^1.0.1" - }, - "dependencies": { - "is-extendable": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", - "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", - "dev": true, - "requires": { - "is-plain-object": "^2.0.4" - } - } + "minipass": "^3.0.0" } }, - "mkdirp": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", - "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", + "minipass-json-stream": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minipass-json-stream/-/minipass-json-stream-1.0.1.tgz", + "integrity": "sha512-ODqY18UZt/I8k+b7rl2AENgbWE8IDYam+undIJONvigAz8KR5GWblsFTEfQs0WODsjbSXWlm+JHEv8Gr6Tfdbg==", "dev": true, "requires": { - "minimist": "0.0.8" - }, - "dependencies": { - "minimist": { - "version": "0.0.8", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", - "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=", - "dev": true - } + "jsonparse": "^1.3.1", + "minipass": "^3.0.0" } }, - "move-concurrently": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/move-concurrently/-/move-concurrently-1.0.1.tgz", - "integrity": "sha1-viwAX9oy4LKa8fBdfEszIUxwH5I=", + "minipass-pipeline": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/minipass-pipeline/-/minipass-pipeline-1.2.4.tgz", + "integrity": "sha512-xuIq7cIOt09RPRJ19gdi4b+RiNvDFYe5JH+ggNvBqGqpQXcru3PcRmOZuHBKWK1Txf9+cQ+HMVN4d6z46LZP7A==", "dev": true, "requires": { - "aproba": "^1.1.1", - "copy-concurrently": "^1.0.0", - "fs-write-stream-atomic": "^1.0.8", - "mkdirp": "^0.5.1", - "rimraf": "^2.5.4", - "run-queue": "^1.0.3" + "minipass": "^3.0.0" } }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "minipass-sized": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/minipass-sized/-/minipass-sized-1.0.3.tgz", + "integrity": "sha512-MbkQQ2CTiBMlA2Dm/5cY+9SWFEN8pzzOXi6rlM5Xxq0Yqbda5ZQy9sU75a673FE9ZK0Zsbr6Y5iP6u9nktfg2g==", + "dev": true, + "requires": { + "minipass": "^3.0.0" + } + }, + "minizlib": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz", + "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==", + "dev": true, + "requires": { + "minipass": "^3.0.0", + "yallist": "^4.0.0" + } + }, + "mkdirp": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", + "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", + "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==", "dev": true }, "multicast-dns": { - "version": "6.2.3", - "resolved": "https://registry.npmjs.org/multicast-dns/-/multicast-dns-6.2.3.tgz", - "integrity": "sha512-ji6J5enbMyGRHIAkAOu3WdV8nggqviKCEKtXcOqfphZZtQrmHKycfynJ2V7eVPUA4NhJ6V7Wf4TmGbTwKE9B6g==", + "version": "7.2.5", + "resolved": "https://registry.npmjs.org/multicast-dns/-/multicast-dns-7.2.5.tgz", + "integrity": "sha512-2eznPJP8z2BFLX50tf0LuODrpINqP1RVIm/CObbTcBRITQgmC/TjcREF1NeTBzIcR5XO/ukWo+YHOjBbFwIupg==", "dev": true, "requires": { - "dns-packet": "^1.3.1", + "dns-packet": "^5.2.2", "thunky": "^1.0.2" } }, - "multicast-dns-service-types": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/multicast-dns-service-types/-/multicast-dns-service-types-1.1.0.tgz", - "integrity": "sha1-iZ8R2WhuXgXLkbNdXw5jt3PPyQE=", - "dev": true - }, "mute-stream": { "version": "0.0.8", "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz", "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==", "dev": true }, - "nan": { - "version": "2.14.0", - "resolved": "https://registry.npmjs.org/nan/-/nan-2.14.0.tgz", - "integrity": "sha512-INOFj37C7k3AfaNTtX8RhsTw7qRy7eLET14cROi9+5HAVbbHuIWUHEauBv5qT4Av2tWasiTY1Jw6puUNqRJXQg==", - "dev": true, - "optional": true + "nanoid": { + "version": "3.3.4", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.4.tgz", + "integrity": "sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw==", + "dev": true }, - "nanomatch": { - "version": "1.2.13", - "resolved": "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.13.tgz", - "integrity": "sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA==", + "needle": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/needle/-/needle-3.2.0.tgz", + "integrity": "sha512-oUvzXnyLiVyVGoianLijF9O/RecZUf7TkBfimjGrLM4eQhXyeJwM6GeAWccwfQ9aa4gMCZKqhAOuLaMIcQxajQ==", "dev": true, + "optional": true, "requires": { - "arr-diff": "^4.0.0", - "array-unique": "^0.3.2", - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "fragment-cache": "^0.2.1", - "is-windows": "^1.0.2", - "kind-of": "^6.0.2", - "object.pick": "^1.3.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.1" + "debug": "^3.2.6", + "iconv-lite": "^0.6.3", + "sax": "^1.2.4" + }, + "dependencies": { + "debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "dev": true, + "optional": true, + "requires": { + "ms": "^2.1.1" + } + }, + "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==", + "dev": true, + "optional": true, + "requires": { + "safer-buffer": ">= 2.1.2 < 3.0.0" + } + } } }, "negotiator": { - "version": "0.6.2", - "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.2.tgz", - "integrity": "sha512-hZXc7K2e+PgeI1eDBe/10Ard4ekbfrrqG8Ep+8Jmf4JID2bNg7NvCPOZN+kfF574pFQI7mum2AUqDidoKqcTOw==", + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", + "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==", "dev": true }, "neo-async": { - "version": "2.6.1", - "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.1.tgz", - "integrity": "sha512-iyam8fBuCUpWeKPGpaNMetEocMt364qkCsfL9JuhjXX6dRnguRVOfk2GZaDpPjcOKiiXCPINZC1GczQ7iTq3Zw==", + "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 }, "ng-packagr": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/ng-packagr/-/ng-packagr-5.7.1.tgz", - "integrity": "sha512-NDAUcMtLyZnF3bP6JtC3ANpIQRclRDPilF7C0DsjQuIz1q0V3mT7f1PwV0jnRWy8iRpSZmJZr6AGl736gloHtQ==", - "dev": true, - "requires": { - "ajv": "^6.10.2", - "autoprefixer": "^9.6.0", - "browserslist": "^4.0.0", - "chalk": "^2.3.1", - "chokidar": "^3.0.0", - "clean-css": "^4.1.11", - "commander": "^3.0.0", - "fs-extra": "^8.0.0", - "glob": "^7.1.2", - "injection-js": "^2.2.1", - "less": "^3.8.0", - "less-plugin-npm-import": "^2.1.0", - "node-sass-tilde-importer": "^1.0.0", - "postcss": "^7.0.0", - "postcss-url": "^8.0.0", - "read-pkg-up": "^5.0.0", - "rimraf": "^3.0.0", - "rollup": "1.25.2", - "rollup-plugin-commonjs": "^10.0.0", - "rollup-plugin-json": "^4.0.0", - "rollup-plugin-node-resolve": "^5.0.0", - "rollup-plugin-sourcemaps": "^0.4.2", - "rxjs": "^6.0.0", - "sass": "^1.17.3", - "stylus": "^0.54.5", - "terser": "^4.1.2", - "update-notifier": "^3.0.0" - }, - "dependencies": { + "version": "14.2.2", + "resolved": "https://registry.npmjs.org/ng-packagr/-/ng-packagr-14.2.2.tgz", + "integrity": "sha512-AqwHcMM6x+JkCHT++IsbulnTdyoXcC2Cr4tbPamuieacc77+fFbB195hdcqEFwsKX5410cymx/ZUyHird9rxlg==", + "dev": true, + "requires": { + "@rollup/plugin-json": "^4.1.0", + "@rollup/plugin-node-resolve": "^13.1.3", + "ajv": "^8.10.0", + "ansi-colors": "^4.1.1", + "browserslist": "^4.20.0", + "cacache": "^16.0.0", + "chokidar": "^3.5.3", + "commander": "^9.0.0", + "dependency-graph": "^0.11.0", + "esbuild": "^0.15.0", + "esbuild-wasm": "^0.15.0", + "find-cache-dir": "^3.3.2", + "glob": "^8.0.0", + "injection-js": "^2.4.0", + "jsonc-parser": "^3.0.0", + "less": "^4.1.2", + "ora": "^5.1.0", + "postcss": "^8.4.8", + "postcss-preset-env": "^7.4.2", + "postcss-url": "^10.1.3", + "rollup": "^2.70.0", + "rollup-plugin-sourcemaps": "^0.6.3", + "rxjs": "^7.5.5", + "sass": "^1.49.9", + "stylus": "^0.59.0" + }, + "dependencies": { + "@esbuild/linux-loong64": { + "version": "0.15.18", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.15.18.tgz", + "integrity": "sha512-L4jVKS82XVhw2nvzLg/19ClLWg0y27ulRwuP7lcyL6AbUWB5aPglXY3M21mauDQMDfRLs8cQmeT03r/+X3cZYQ==", + "dev": true, + "optional": true + }, "commander": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/commander/-/commander-3.0.2.tgz", - "integrity": "sha512-Gar0ASD4BDyKC4hl4DwHqDrmvjoxWKZigVnAbn5H1owvm4CxCPdb0HQDehwNYMJpla5+M2tPmPARzhtYuwpHow==", + "version": "9.4.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-9.4.1.tgz", + "integrity": "sha512-5EEkTNyHNGFPD2H+c/dXXfQZYa/scCKasxWcXJaWnNJ99pnQN9Vnmqow+p+PlFPE63Q6mThaZws1T+HxfpgtPw==", "dev": true }, - "fs-extra": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", - "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==", + "esbuild": { + "version": "0.15.18", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.15.18.tgz", + "integrity": "sha512-x/R72SmW3sSFRm5zrrIjAhCeQSAWoni3CmHEqfQrZIQTM3lVCdehdwuIqaOtfC2slvpdlLa62GYoN8SxT23m6Q==", "dev": true, + "optional": true, "requires": { - "graceful-fs": "^4.2.0", - "jsonfile": "^4.0.0", - "universalify": "^0.1.0" - } + "@esbuild/android-arm": "0.15.18", + "@esbuild/linux-loong64": "0.15.18", + "esbuild-android-64": "0.15.18", + "esbuild-android-arm64": "0.15.18", + "esbuild-darwin-64": "0.15.18", + "esbuild-darwin-arm64": "0.15.18", + "esbuild-freebsd-64": "0.15.18", + "esbuild-freebsd-arm64": "0.15.18", + "esbuild-linux-32": "0.15.18", + "esbuild-linux-64": "0.15.18", + "esbuild-linux-arm": "0.15.18", + "esbuild-linux-arm64": "0.15.18", + "esbuild-linux-mips64le": "0.15.18", + "esbuild-linux-ppc64le": "0.15.18", + "esbuild-linux-riscv64": "0.15.18", + "esbuild-linux-s390x": "0.15.18", + "esbuild-netbsd-64": "0.15.18", + "esbuild-openbsd-64": "0.15.18", + "esbuild-sunos-64": "0.15.18", + "esbuild-windows-32": "0.15.18", + "esbuild-windows-64": "0.15.18", + "esbuild-windows-arm64": "0.15.18" + } + }, + "esbuild-android-64": { + "version": "0.15.18", + "resolved": "https://registry.npmjs.org/esbuild-android-64/-/esbuild-android-64-0.15.18.tgz", + "integrity": "sha512-wnpt3OXRhcjfIDSZu9bnzT4/TNTDsOUvip0foZOUBG7QbSt//w3QV4FInVJxNhKc/ErhUxc5z4QjHtMi7/TbgA==", + "dev": true, + "optional": true }, - "rimraf": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "esbuild-android-arm64": { + "version": "0.15.18", + "resolved": "https://registry.npmjs.org/esbuild-android-arm64/-/esbuild-android-arm64-0.15.18.tgz", + "integrity": "sha512-G4xu89B8FCzav9XU8EjsXacCKSG2FT7wW9J6hOc18soEHJdtWu03L3TQDGf0geNxfLTtxENKBzMSq9LlbjS8OQ==", "dev": true, - "requires": { - "glob": "^7.1.3" - } + "optional": true + }, + "esbuild-darwin-64": { + "version": "0.15.18", + "resolved": "https://registry.npmjs.org/esbuild-darwin-64/-/esbuild-darwin-64-0.15.18.tgz", + "integrity": "sha512-2WAvs95uPnVJPuYKP0Eqx+Dl/jaYseZEUUT1sjg97TJa4oBtbAKnPnl3b5M9l51/nbx7+QAEtuummJZW0sBEmg==", + "dev": true, + "optional": true + }, + "esbuild-darwin-arm64": { + "version": "0.15.18", + "resolved": "https://registry.npmjs.org/esbuild-darwin-arm64/-/esbuild-darwin-arm64-0.15.18.tgz", + "integrity": "sha512-tKPSxcTJ5OmNb1btVikATJ8NftlyNlc8BVNtyT/UAr62JFOhwHlnoPrhYWz09akBLHI9nElFVfWSTSRsrZiDUA==", + "dev": true, + "optional": true + }, + "esbuild-freebsd-64": { + "version": "0.15.18", + "resolved": "https://registry.npmjs.org/esbuild-freebsd-64/-/esbuild-freebsd-64-0.15.18.tgz", + "integrity": "sha512-TT3uBUxkteAjR1QbsmvSsjpKjOX6UkCstr8nMr+q7zi3NuZ1oIpa8U41Y8I8dJH2fJgdC3Dj3CXO5biLQpfdZA==", + "dev": true, + "optional": true + }, + "esbuild-freebsd-arm64": { + "version": "0.15.18", + "resolved": "https://registry.npmjs.org/esbuild-freebsd-arm64/-/esbuild-freebsd-arm64-0.15.18.tgz", + "integrity": "sha512-R/oVr+X3Tkh+S0+tL41wRMbdWtpWB8hEAMsOXDumSSa6qJR89U0S/PpLXrGF7Wk/JykfpWNokERUpCeHDl47wA==", + "dev": true, + "optional": true + }, + "esbuild-linux-32": { + "version": "0.15.18", + "resolved": "https://registry.npmjs.org/esbuild-linux-32/-/esbuild-linux-32-0.15.18.tgz", + "integrity": "sha512-lphF3HiCSYtaa9p1DtXndiQEeQDKPl9eN/XNoBf2amEghugNuqXNZA/ZovthNE2aa4EN43WroO0B85xVSjYkbg==", + "dev": true, + "optional": true + }, + "esbuild-linux-64": { + "version": "0.15.18", + "resolved": "https://registry.npmjs.org/esbuild-linux-64/-/esbuild-linux-64-0.15.18.tgz", + "integrity": "sha512-hNSeP97IviD7oxLKFuii5sDPJ+QHeiFTFLoLm7NZQligur8poNOWGIgpQ7Qf8Balb69hptMZzyOBIPtY09GZYw==", + "dev": true, + "optional": true + }, + "esbuild-linux-arm": { + "version": "0.15.18", + "resolved": "https://registry.npmjs.org/esbuild-linux-arm/-/esbuild-linux-arm-0.15.18.tgz", + "integrity": "sha512-UH779gstRblS4aoS2qpMl3wjg7U0j+ygu3GjIeTonCcN79ZvpPee12Qun3vcdxX+37O5LFxz39XeW2I9bybMVA==", + "dev": true, + "optional": true + }, + "esbuild-linux-arm64": { + "version": "0.15.18", + "resolved": "https://registry.npmjs.org/esbuild-linux-arm64/-/esbuild-linux-arm64-0.15.18.tgz", + "integrity": "sha512-54qr8kg/6ilcxd+0V3h9rjT4qmjc0CccMVWrjOEM/pEcUzt8X62HfBSeZfT2ECpM7104mk4yfQXkosY8Quptug==", + "dev": true, + "optional": true + }, + "esbuild-linux-mips64le": { + "version": "0.15.18", + "resolved": "https://registry.npmjs.org/esbuild-linux-mips64le/-/esbuild-linux-mips64le-0.15.18.tgz", + "integrity": "sha512-Mk6Ppwzzz3YbMl/ZZL2P0q1tnYqh/trYZ1VfNP47C31yT0K8t9s7Z077QrDA/guU60tGNp2GOwCQnp+DYv7bxQ==", + "dev": true, + "optional": true + }, + "esbuild-linux-ppc64le": { + "version": "0.15.18", + "resolved": "https://registry.npmjs.org/esbuild-linux-ppc64le/-/esbuild-linux-ppc64le-0.15.18.tgz", + "integrity": "sha512-b0XkN4pL9WUulPTa/VKHx2wLCgvIAbgwABGnKMY19WhKZPT+8BxhZdqz6EgkqCLld7X5qiCY2F/bfpUUlnFZ9w==", + "dev": true, + "optional": true + }, + "esbuild-linux-riscv64": { + "version": "0.15.18", + "resolved": "https://registry.npmjs.org/esbuild-linux-riscv64/-/esbuild-linux-riscv64-0.15.18.tgz", + "integrity": "sha512-ba2COaoF5wL6VLZWn04k+ACZjZ6NYniMSQStodFKH/Pu6RxzQqzsmjR1t9QC89VYJxBeyVPTaHuBMCejl3O/xg==", + "dev": true, + "optional": true + }, + "esbuild-linux-s390x": { + "version": "0.15.18", + "resolved": "https://registry.npmjs.org/esbuild-linux-s390x/-/esbuild-linux-s390x-0.15.18.tgz", + "integrity": "sha512-VbpGuXEl5FCs1wDVp93O8UIzl3ZrglgnSQ+Hu79g7hZu6te6/YHgVJxCM2SqfIila0J3k0csfnf8VD2W7u2kzQ==", + "dev": true, + "optional": true + }, + "esbuild-netbsd-64": { + "version": "0.15.18", + "resolved": "https://registry.npmjs.org/esbuild-netbsd-64/-/esbuild-netbsd-64-0.15.18.tgz", + "integrity": "sha512-98ukeCdvdX7wr1vUYQzKo4kQ0N2p27H7I11maINv73fVEXt2kyh4K4m9f35U1K43Xc2QGXlzAw0K9yoU7JUjOg==", + "dev": true, + "optional": true + }, + "esbuild-openbsd-64": { + "version": "0.15.18", + "resolved": "https://registry.npmjs.org/esbuild-openbsd-64/-/esbuild-openbsd-64-0.15.18.tgz", + "integrity": "sha512-yK5NCcH31Uae076AyQAXeJzt/vxIo9+omZRKj1pauhk3ITuADzuOx5N2fdHrAKPxN+zH3w96uFKlY7yIn490xQ==", + "dev": true, + "optional": true + }, + "esbuild-sunos-64": { + "version": "0.15.18", + "resolved": "https://registry.npmjs.org/esbuild-sunos-64/-/esbuild-sunos-64-0.15.18.tgz", + "integrity": "sha512-On22LLFlBeLNj/YF3FT+cXcyKPEI263nflYlAhz5crxtp3yRG1Ugfr7ITyxmCmjm4vbN/dGrb/B7w7U8yJR9yw==", + "dev": true, + "optional": true + }, + "esbuild-windows-32": { + "version": "0.15.18", + "resolved": "https://registry.npmjs.org/esbuild-windows-32/-/esbuild-windows-32-0.15.18.tgz", + "integrity": "sha512-o+eyLu2MjVny/nt+E0uPnBxYuJHBvho8vWsC2lV61A7wwTWC3jkN2w36jtA+yv1UgYkHRihPuQsL23hsCYGcOQ==", + "dev": true, + "optional": true + }, + "esbuild-windows-64": { + "version": "0.15.18", + "resolved": "https://registry.npmjs.org/esbuild-windows-64/-/esbuild-windows-64-0.15.18.tgz", + "integrity": "sha512-qinug1iTTaIIrCorAUjR0fcBk24fjzEedFYhhispP8Oc7SFvs+XeW3YpAKiKp8dRpizl4YYAhxMjlftAMJiaUw==", + "dev": true, + "optional": true + }, + "esbuild-windows-arm64": { + "version": "0.15.18", + "resolved": "https://registry.npmjs.org/esbuild-windows-arm64/-/esbuild-windows-arm64-0.15.18.tgz", + "integrity": "sha512-q9bsYzegpZcLziq0zgUi5KqGVtfhjxGbnksaBFYmWLxeV/S1fK4OLdq2DFYnXcLMjlZw2L0jLsk1eGoB522WXQ==", + "dev": true, + "optional": true } } }, - "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-fetch-npm": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/node-fetch-npm/-/node-fetch-npm-2.0.2.tgz", - "integrity": "sha512-nJIxm1QmAj4v3nfCvEeCrYSoVwXyxLnaPBK5W1W5DGEJwjlKuC2VEUycGw5oxk+4zZahRrB84PUJJgEmhFTDFw==", + "nice-napi": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/nice-napi/-/nice-napi-1.0.2.tgz", + "integrity": "sha512-px/KnJAJZf5RuBGcfD+Sp2pAKq0ytz8j+1NehvgIGFkvtvFrDM3T8E4x/JJODXK9WZow8RRGrbA9QQ3hs+pDhA==", "dev": true, + "optional": true, "requires": { - "encoding": "^0.1.11", - "json-parse-better-errors": "^1.0.0", - "safe-buffer": "^5.1.1" + "node-addon-api": "^3.0.0", + "node-gyp-build": "^4.2.2" } }, + "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==", + "dev": true, + "optional": true + }, "node-forge": { - "version": "0.9.0", - "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-0.9.0.tgz", - "integrity": "sha512-7ASaDa3pD+lJ3WvXFsxekJQelBKRpne+GOVbLbtHYdd7pFspyeuJHnWfLplGf3SwKGbfs/aYl5V/JCIaHVUKKQ==", + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-1.3.1.tgz", + "integrity": "sha512-dPEtOeMvF9VMcYV/1Wb8CPoVAXtp6MKMlcbAt4ddqmGqUJ6fQZFXkNZNkNlfevtNkGtaSoXf/vNNNSvgrdXwtA==", "dev": true }, - "node-libs-browser": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/node-libs-browser/-/node-libs-browser-2.2.1.tgz", - "integrity": "sha512-h/zcD8H9kaDZ9ALUWwlBUDo6TKF8a7qBSCSEGfjTVIYeqsioSKaAX+BN7NgiMGp6iSIXZ3PxgCu8KS3b71YK5Q==", - "dev": true, - "requires": { - "assert": "^1.1.1", - "browserify-zlib": "^0.2.0", - "buffer": "^4.3.0", - "console-browserify": "^1.1.0", - "constants-browserify": "^1.0.0", - "crypto-browserify": "^3.11.0", - "domain-browser": "^1.1.1", - "events": "^3.0.0", - "https-browserify": "^1.0.0", - "os-browserify": "^0.3.0", - "path-browserify": "0.0.1", - "process": "^0.11.10", - "punycode": "^1.2.4", - "querystring-es3": "^0.2.0", - "readable-stream": "^2.3.3", - "stream-browserify": "^2.0.1", - "stream-http": "^2.7.2", - "string_decoder": "^1.0.0", - "timers-browserify": "^2.0.4", - "tty-browserify": "0.0.0", - "url": "^0.11.0", - "util": "^0.11.0", - "vm-browserify": "^1.0.1" + "node-gyp": { + "version": "9.3.0", + "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-9.3.0.tgz", + "integrity": "sha512-A6rJWfXFz7TQNjpldJ915WFb1LnhO4lIve3ANPbWreuEoLoKlFT3sxIepPBkLhM27crW8YmN+pjlgbasH6cH/Q==", + "dev": true, + "requires": { + "env-paths": "^2.2.0", + "glob": "^7.1.4", + "graceful-fs": "^4.2.6", + "make-fetch-happen": "^10.0.3", + "nopt": "^6.0.0", + "npmlog": "^6.0.0", + "rimraf": "^3.0.2", + "semver": "^7.3.5", + "tar": "^6.1.2", + "which": "^2.0.2" }, "dependencies": { - "punycode": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", - "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=", - "dev": true + "glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "dev": true, + "requires": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + }, + "minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "requires": { + "brace-expansion": "^1.1.7" + } } } }, - "node-releases": { - "version": "1.1.50", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-1.1.50.tgz", - "integrity": "sha512-lgAmPv9eYZ0bGwUYAKlr8MG6K4CvWliWqnkcT2P8mMAgVrH3lqfBPorFlxiG1pHQnqmavJZ9vbMXUTNyMLbrgQ==", + "node-gyp-build": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.5.0.tgz", + "integrity": "sha512-2iGbaQBV+ITgCz76ZEjmhUKAKVf7xfY1sRl4UiKQspfZMH2h06SyhNsnSVy50cwkFQDGLyif6m/6uFXHkOZ6rg==", "dev": true, - "requires": { - "semver": "^6.3.0" - } + "optional": true }, - "node-sass-tilde-importer": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/node-sass-tilde-importer/-/node-sass-tilde-importer-1.0.2.tgz", - "integrity": "sha512-Swcmr38Y7uB78itQeBm3mThjxBy9/Ah/ykPIaURY/L6Nec9AyRoL/jJ7ECfMR+oZeCTVQNxVMu/aHU+TLRVbdg==", + "node-releases": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.6.tgz", + "integrity": "sha512-PiVXnNuFm5+iYkLBNeq5211hvO38y63T0i2KKh2KnUs3RpzJ+JtODFjkD8yjLwnDkTYF1eKXheUwdssR+NRZdg==", + "dev": true + }, + "nopt": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/nopt/-/nopt-6.0.0.tgz", + "integrity": "sha512-ZwLpbTgdhuZUnZzjd7nb1ZV+4DoiC6/sfiVKok72ym/4Tlf+DFdlHYmT2JPmcNNWV6Pi3SDf1kT+A4r9RTuT9g==", "dev": true, "requires": { - "find-parent-dir": "^0.3.0" + "abbrev": "^1.0.0" } }, "normalize-package-data": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", - "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-4.0.1.tgz", + "integrity": "sha512-EBk5QKKuocMJhB3BILuKhmaPjI8vNRSpIfO9woLC6NyHVkKKdVEdAO1mrT0ZfxNR1lKwCcTkuZfmGIFdizZ8Pg==", "dev": true, "requires": { - "hosted-git-info": "^2.1.4", - "resolve": "^1.10.0", - "semver": "2 || 3 || 4 || 5", - "validate-npm-package-license": "^3.0.1" - }, - "dependencies": { - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "dev": true - } + "hosted-git-info": "^5.0.0", + "is-core-module": "^2.8.1", + "semver": "^7.3.5", + "validate-npm-package-license": "^3.0.4" } }, "normalize-path": { @@ -8593,28 +6961,25 @@ "normalize-range": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz", - "integrity": "sha1-LRDAa9/TEuqXd2laTShDlFa3WUI=", + "integrity": "sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==", "dev": true }, - "normalize-url": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-1.9.1.tgz", - "integrity": "sha1-LMDWazHqIwNkWENuNiDYWVTGbDw=", + "npm-bundled": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/npm-bundled/-/npm-bundled-1.1.2.tgz", + "integrity": "sha512-x5DHup0SuyQcmL3s7Rx/YQ8sbw/Hzg0rj48eN0dV7hf5cmQq5PXIeioroH3raV1QC1yh3uTYuMThvEQF3iKgGQ==", "dev": true, "requires": { - "object-assign": "^4.0.1", - "prepend-http": "^1.0.0", - "query-string": "^4.1.0", - "sort-keys": "^1.0.0" + "npm-normalize-package-bin": "^1.0.1" } }, - "npm-bundled": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/npm-bundled/-/npm-bundled-1.1.1.tgz", - "integrity": "sha512-gqkfgGePhTpAEgUsGEgcq1rqPXA+tv/aVBlgEzfXwA1yiUJF7xtEt3CtVwOjNYQOVknDk0F20w58Fnm3EtG0fA==", + "npm-install-checks": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/npm-install-checks/-/npm-install-checks-5.0.0.tgz", + "integrity": "sha512-65lUsMI8ztHCxFz5ckCEC44DRvEGdZX5usQFriauxHEwt7upv1FKaQEmAtU0YnOAdwuNWCmk64xYiQABNrEyLA==", "dev": true, "requires": { - "npm-normalize-package-bin": "^1.0.1" + "semver": "^7.1.1" } }, "npm-normalize-package-bin": { @@ -8624,104 +6989,102 @@ "dev": true }, "npm-package-arg": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-6.1.0.tgz", - "integrity": "sha512-zYbhP2k9DbJhA0Z3HKUePUgdB1x7MfIfKssC+WLPFMKTBZKpZh5m13PgexJjCq6KW7j17r0jHWcCpxEqnnncSA==", + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-9.1.0.tgz", + "integrity": "sha512-4J0GL+u2Nh6OnhvUKXRr2ZMG4lR8qtLp+kv7UiV00Y+nGiSxtttCyIRHCt5L5BNkXQld/RceYItau3MDOoGiBw==", "dev": true, "requires": { - "hosted-git-info": "^2.6.0", - "osenv": "^0.1.5", - "semver": "^5.5.0", - "validate-npm-package-name": "^3.0.0" - }, - "dependencies": { - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "dev": true - } + "hosted-git-info": "^5.0.0", + "proc-log": "^2.0.1", + "semver": "^7.3.5", + "validate-npm-package-name": "^4.0.0" } }, "npm-packlist": { - "version": "1.4.8", - "resolved": "https://registry.npmjs.org/npm-packlist/-/npm-packlist-1.4.8.tgz", - "integrity": "sha512-5+AZgwru5IevF5ZdnFglB5wNlHG1AOOuw28WhUq8/8emhBmLv6jX5by4WJCh7lW0uSYZYS6DXqIsyZVIXRZU9A==", + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/npm-packlist/-/npm-packlist-5.1.3.tgz", + "integrity": "sha512-263/0NGrn32YFYi4J533qzrQ/krmmrWwhKkzwTuM4f/07ug51odoaNjUexxO4vxlzURHcmYMH1QjvHjsNDKLVg==", "dev": true, "requires": { - "ignore-walk": "^3.0.1", - "npm-bundled": "^1.0.1", - "npm-normalize-package-bin": "^1.0.1" + "glob": "^8.0.1", + "ignore-walk": "^5.0.1", + "npm-bundled": "^2.0.0", + "npm-normalize-package-bin": "^2.0.0" + }, + "dependencies": { + "npm-bundled": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/npm-bundled/-/npm-bundled-2.0.1.tgz", + "integrity": "sha512-gZLxXdjEzE/+mOstGDqR6b0EkhJ+kM6fxM6vUuckuctuVPh80Q6pw/rSZj9s4Gex9GxWtIicO1pc8DB9KZWudw==", + "dev": true, + "requires": { + "npm-normalize-package-bin": "^2.0.0" + } + }, + "npm-normalize-package-bin": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/npm-normalize-package-bin/-/npm-normalize-package-bin-2.0.0.tgz", + "integrity": "sha512-awzfKUO7v0FscrSpRoogyNm0sajikhBWpU0QMrW09AMi9n1PoKU6WaIqUzuJSQnpciZZmJ/jMZ2Egfmb/9LiWQ==", + "dev": true + } } }, "npm-pick-manifest": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/npm-pick-manifest/-/npm-pick-manifest-3.0.2.tgz", - "integrity": "sha512-wNprTNg+X5nf+tDi+hbjdHhM4bX+mKqv6XmPh7B5eG+QY9VARfQPfCEH013H5GqfNj6ee8Ij2fg8yk0mzps1Vw==", + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/npm-pick-manifest/-/npm-pick-manifest-7.0.1.tgz", + "integrity": "sha512-IA8+tuv8KujbsbLQvselW2XQgmXWS47t3CB0ZrzsRZ82DbDfkcFunOaPm4X7qNuhMfq+FmV7hQT4iFVpHqV7mg==", "dev": true, "requires": { - "figgy-pudding": "^3.5.1", - "npm-package-arg": "^6.0.0", - "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==", - "dev": true - } + "npm-install-checks": "^5.0.0", + "npm-normalize-package-bin": "^1.0.1", + "npm-package-arg": "^9.0.0", + "semver": "^7.3.5" } }, "npm-registry-fetch": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-4.0.3.tgz", - "integrity": "sha512-WGvUx0lkKFhu9MbiGFuT9nG2NpfQ+4dCJwRwwtK2HK5izJEvwDxMeUyqbuMS7N/OkpVCqDorV6rO5E4V9F8lJw==", + "version": "13.3.1", + "resolved": "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-13.3.1.tgz", + "integrity": "sha512-eukJPi++DKRTjSBRcDZSDDsGqRK3ehbxfFUcgaRd0Yp6kRwOwh2WVn0r+8rMB4nnuzvAk6rQVzl6K5CkYOmnvw==", "dev": true, "requires": { - "JSONStream": "^1.3.4", - "bluebird": "^3.5.1", - "figgy-pudding": "^3.4.1", - "lru-cache": "^5.1.1", - "make-fetch-happen": "^5.0.0", - "npm-package-arg": "^6.1.0", - "safe-buffer": "^5.2.0" - }, - "dependencies": { - "safe-buffer": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.0.tgz", - "integrity": "sha512-fZEwUGbVl7kouZs1jCdMLdt95hdIv0ZeHg6L7qPeciMZhZ+/gdesW4wgTARkrFWEpspjEATAzUGPG8N2jJiwbg==", - "dev": true - } + "make-fetch-happen": "^10.0.6", + "minipass": "^3.1.6", + "minipass-fetch": "^2.0.3", + "minipass-json-stream": "^1.0.1", + "minizlib": "^2.1.2", + "npm-package-arg": "^9.0.1", + "proc-log": "^2.0.0" } }, "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=", + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", + "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", "dev": true, "requires": { - "path-key": "^2.0.0" + "path-key": "^3.0.0" } }, - "null-check": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/null-check/-/null-check-1.0.0.tgz", - "integrity": "sha1-l33/1xdgErnsMNKjnbXPcqBDnt0=", - "dev": true - }, - "num2fraction": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/num2fraction/-/num2fraction-1.2.2.tgz", - "integrity": "sha1-b2gragJ6Tp3fpFZM0lidHU5mnt4=", - "dev": true + "npmlog": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-6.0.2.tgz", + "integrity": "sha512-/vBvz5Jfr9dT/aFWd0FIRf+T/Q2WBsLENygUaFUqstqsycmZAP/t5BvFJTK0viFmSUxiUKTUplWy5vt+rvKIxg==", + "dev": true, + "requires": { + "are-we-there-yet": "^3.0.0", + "console-control-strings": "^1.1.0", + "gauge": "^4.0.3", + "set-blocking": "^2.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=", - "dev": true + "nth-check": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.1.1.tgz", + "integrity": "sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==", + "dev": true, + "requires": { + "boolbase": "^1.0.0" + } }, "oauth-sign": { "version": "0.9.0", @@ -8732,282 +7095,174 @@ "object-assign": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", + "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", "dev": true }, - "object-component": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/object-component/-/object-component-0.0.3.tgz", - "integrity": "sha1-8MaapQ78lbhmwYb0AKM3acsvEpE=", + "object-inspect": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.2.tgz", + "integrity": "sha512-z+cPxW0QGUp0mcqcsgQyLVRDoXFQbXOwBaqyF7VIgI4TWNQsDHrBpUQslRmIfAoYWdYzs6UlKJtB2XJpTaNSpQ==", "dev": true }, - "object-copy": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/object-copy/-/object-copy-0.1.0.tgz", - "integrity": "sha1-fn2Fi3gb18mRpBupde04EnVOmYw=", + "obuf": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/obuf/-/obuf-1.1.2.tgz", + "integrity": "sha512-PX1wu0AmAdPqOL1mWhqmlOd8kOIZQwGZw6rh7uby9fTc5lhaOWFLX3I6R1hrF9k3zUY40e6igsLGkDXK92LJNg==", + "dev": true + }, + "on-finished": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz", + "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==", "dev": true, "requires": { - "copy-descriptor": "^0.1.0", - "define-property": "^0.2.5", - "kind-of": "^3.0.3" - }, - "dependencies": { - "define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "dev": true, - "requires": { - "is-descriptor": "^0.1.0" - } - }, - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } + "ee-first": "1.1.1" } }, - "object-inspect": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.7.0.tgz", - "integrity": "sha512-a7pEHdh1xKIAgTySUGgLMx/xwDZskN1Ud6egYYN3EdRW4ZMPNEDUTF+hwy2LUC+Bl+SyLXANnwz/jyh/qutKUw==", - "dev": true - }, - "object-is": { + "on-headers": { "version": "1.0.2", - "resolved": "https://registry.npmjs.org/object-is/-/object-is-1.0.2.tgz", - "integrity": "sha512-Epah+btZd5wrrfjkJZq1AOB9O6OxUQto45hzFd7lXGrpHPGE0W1k+426yrZV+k6NJOzLNNW/nVsmZdIWsAqoOQ==", - "dev": true - }, - "object-keys": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", - "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", - "dev": true - }, - "object-visit": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/object-visit/-/object-visit-1.0.1.tgz", - "integrity": "sha1-95xEk68MU3e1n+OdOV5BBC3QRbs=", - "dev": true, - "requires": { - "isobject": "^3.0.0" - } - }, - "object.assign": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.0.tgz", - "integrity": "sha512-exHJeq6kBKj58mqGyTQ9DFvrZC/eR6OwxzoM9YRoGBqrXYonaFyGiFMuc9VZrXf7DarreEwMpurG3dd+CNyW5w==", - "dev": true, - "requires": { - "define-properties": "^1.1.2", - "function-bind": "^1.1.1", - "has-symbols": "^1.0.0", - "object-keys": "^1.0.11" - } - }, - "object.getownpropertydescriptors": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.1.0.tgz", - "integrity": "sha512-Z53Oah9A3TdLoblT7VKJaTDdXdT+lQO+cNpKVnya5JDe9uLvzu1YyY1yFDFrcxrlRgWrEFH0jJtD/IbuwjcEVg==", - "dev": true, - "requires": { - "define-properties": "^1.1.3", - "es-abstract": "^1.17.0-next.1" - } - }, - "object.pick": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz", - "integrity": "sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c=", - "dev": true, - "requires": { - "isobject": "^3.0.1" - } - }, - "obuf": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/obuf/-/obuf-1.1.2.tgz", - "integrity": "sha512-PX1wu0AmAdPqOL1mWhqmlOd8kOIZQwGZw6rh7uby9fTc5lhaOWFLX3I6R1hrF9k3zUY40e6igsLGkDXK92LJNg==", - "dev": true - }, - "on-finished": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", - "integrity": "sha1-IPEzZIGwg811M3mSoWlxqi2QaUc=", - "dev": true, - "requires": { - "ee-first": "1.1.1" - } - }, - "on-headers": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/on-headers/-/on-headers-1.0.2.tgz", - "integrity": "sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA==", + "resolved": "https://registry.npmjs.org/on-headers/-/on-headers-1.0.2.tgz", + "integrity": "sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA==", "dev": true }, "once": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", "dev": true, "requires": { "wrappy": "1" } }, "onetime": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.0.tgz", - "integrity": "sha512-5NcSkPHhwTVFIQN+TUqXoS5+dlElHXdpAWu9I0HP20YOtIi+aZ0Ct82jdlILDxjLEAWwvm+qj1m6aEtsDVmm6Q==", + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", + "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", "dev": true, "requires": { "mimic-fn": "^2.1.0" } }, "open": { - "version": "6.4.0", - "resolved": "https://registry.npmjs.org/open/-/open-6.4.0.tgz", - "integrity": "sha512-IFenVPgF70fSm1keSd2iDBIDIBZkroLeuffXq+wKTzTJlBpesFWojV9lb8mzOfaAzM1sr7HQHuO0vtV0zYekGg==", - "dev": true, - "requires": { - "is-wsl": "^1.1.0" - } - }, - "opn": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/opn/-/opn-5.5.0.tgz", - "integrity": "sha512-PqHpggC9bLV0VeWcdKhkpxY+3JTzetLSqTCWL/z/tFIbI6G8JCjondXklT1JinczLz2Xib62sSp0T/gKT4KksA==", + "version": "8.4.0", + "resolved": "https://registry.npmjs.org/open/-/open-8.4.0.tgz", + "integrity": "sha512-XgFPPM+B28FtCCgSb9I+s9szOC1vZRSwgWsRUA5ylIxRTgKozqjOCrVOqGsYABPYK5qnfqClxZTFBa8PKt2v6Q==", "dev": true, "requires": { - "is-wsl": "^1.1.0" + "define-lazy-prop": "^2.0.0", + "is-docker": "^2.1.1", + "is-wsl": "^2.2.0" } }, - "optimist": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/optimist/-/optimist-0.6.1.tgz", - "integrity": "sha1-2j6nRob6IaGaERwybpDrFaAZZoY=", + "ora": { + "version": "5.4.1", + "resolved": "https://registry.npmjs.org/ora/-/ora-5.4.1.tgz", + "integrity": "sha512-5b6Y85tPxZZ7QytO+BQzysW31HJku27cRIlkbAXaNx+BdcVi+LlRFmVXzeF6a7JCwJpyw5c4b+YSVImQIrBpuQ==", "dev": true, "requires": { - "minimist": "~0.0.1", - "wordwrap": "~0.0.2" + "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": { - "minimist": { - "version": "0.0.10", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.10.tgz", - "integrity": "sha1-3j+YVD2/lggr5IrRoMfNqDYwHc8=", + "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" + } + }, + "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" + } + }, + "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" + } } } }, - "original": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/original/-/original-1.0.2.tgz", - "integrity": "sha512-hyBVl6iqqUOJ8FqRe+l/gS8H+kKYjrEndd5Pm1MfBtsEKA038HkkdbAl/72EAXGyonD/PFsvmVG+EvcIpliMBg==", - "dev": true, - "requires": { - "url-parse": "^1.4.3" - } - }, - "os-browserify": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/os-browserify/-/os-browserify-0.3.0.tgz", - "integrity": "sha1-hUNzx/XCMVkU/Jv8a9gjj92h7Cc=", - "dev": true - }, - "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-locale": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-3.1.0.tgz", - "integrity": "sha512-Z8l3R4wYWM40/52Z+S265okfFj8Kt2cC2MKY+xNi3kFs+XGI7WXu/I309QQQYbRW4ijiZ+yxs9pqEhJh0DqW3Q==", - "dev": true, - "requires": { - "execa": "^1.0.0", - "lcid": "^2.0.0", - "mem": "^4.0.0" - } - }, "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=", - "dev": true - }, - "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": "1.1.0", - "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-1.1.0.tgz", - "integrity": "sha512-s73XxOZ4zpt1edZYZzvhqFa6uvQc1vwUa0K0BdtIZgQMAJj9IbebH+JkgKZc9h+B05PKHLOTl4ajG1BmNrVZlw==", - "dev": true - }, - "p-defer": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/p-defer/-/p-defer-1.0.0.tgz", - "integrity": "sha1-n26xgvbJqozXQwBKfU+WsZaw+ww=", - "dev": true - }, - "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-is-promise": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/p-is-promise/-/p-is-promise-2.1.0.tgz", - "integrity": "sha512-Y3W0wlRPK8ZMRbNq97l4M5otioeA5lm1z7bkNkxCka8HSPjR0xRWmpCmc9utiaLP9Jb1eD8BgeIxTW4AIF45Pg==", + "integrity": "sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==", "dev": true }, "p-limit": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.2.2.tgz", - "integrity": "sha512-WGR+xHecKTr7EbUEhyLSh5Dube9JtdiG78ufaeLxTgpudf/20KqyMioIUZJAezlTIi6evxuoUs9YXc11cU+yzQ==", + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", "dev": true, "requires": { "p-try": "^2.0.0" } }, "p-locate": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", - "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", "dev": true, "requires": { - "p-limit": "^2.0.0" + "p-limit": "^2.2.0" } }, "p-map": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/p-map/-/p-map-2.1.0.tgz", - "integrity": "sha512-y3b8Kpd8OAN444hxfBbFfj1FY/RjtTd8tzYwhUqNYXx0fXx2iX4maP4Qr6qhIKbQXI02wTLAda4fYUbDagTUFw==", - "dev": true + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", + "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", + "dev": true, + "requires": { + "aggregate-error": "^3.0.0" + } }, "p-retry": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/p-retry/-/p-retry-3.0.1.tgz", - "integrity": "sha512-XE6G4+YTTkT2a0UWb2kjZe8xNwf8bIbnqpc/IS/idOBVhyves0mK5OJgeocjx7q5pvX/6m23xuzVPYT1uGM73w==", + "version": "4.6.2", + "resolved": "https://registry.npmjs.org/p-retry/-/p-retry-4.6.2.tgz", + "integrity": "sha512-312Id396EbJdvRONlngUx0NydfrIQ5lsYu0znKVUzVvArzEIt08V1qhtyESbGVd1FGX7UKtiFp5uwKZdM8wIuQ==", "dev": true, "requires": { - "retry": "^0.12.0" + "@types/retry": "0.12.0", + "retry": "^0.13.1" } }, "p-try": { @@ -9016,71 +7271,33 @@ "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", "dev": true }, - "package-json": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/package-json/-/package-json-6.5.0.tgz", - "integrity": "sha512-k3bdm2n25tkyxcjSKzB5x8kfVxlMdgsbPr0GkZcwHsLpba6cBjqCt1KlcChKEvxHIcTB1FVMuwoijZ26xex5MQ==", - "dev": true, - "requires": { - "got": "^9.6.0", - "registry-auth-token": "^4.0.0", - "registry-url": "^5.0.0", - "semver": "^6.2.0" - } - }, "pacote": { - "version": "9.5.5", - "resolved": "https://registry.npmjs.org/pacote/-/pacote-9.5.5.tgz", - "integrity": "sha512-jAEP+Nqj4kyMWyNpfTU/Whx1jA7jEc5cCOlurm0/0oL+v8TAp1QSsK83N7bYe+2bEdFzMAtPG5TBebjzzGV0cA==", - "dev": true, - "requires": { - "bluebird": "^3.5.3", - "cacache": "^12.0.2", - "figgy-pudding": "^3.5.1", - "get-stream": "^4.1.0", - "glob": "^7.1.3", + "version": "13.6.2", + "resolved": "https://registry.npmjs.org/pacote/-/pacote-13.6.2.tgz", + "integrity": "sha512-Gu8fU3GsvOPkak2CkbojR7vjs3k3P9cA6uazKTHdsdV0gpCEQq2opelnEv30KRQWgVzP5Vd/5umjcedma3MKtg==", + "dev": true, + "requires": { + "@npmcli/git": "^3.0.0", + "@npmcli/installed-package-contents": "^1.0.7", + "@npmcli/promise-spawn": "^3.0.0", + "@npmcli/run-script": "^4.1.0", + "cacache": "^16.0.0", + "chownr": "^2.0.0", + "fs-minipass": "^2.1.0", "infer-owner": "^1.0.4", - "lru-cache": "^5.1.1", - "make-fetch-happen": "^5.0.0", - "minimatch": "^3.0.4", - "minipass": "^2.3.5", - "mississippi": "^3.0.0", - "mkdirp": "^0.5.1", - "normalize-package-data": "^2.4.0", - "npm-package-arg": "^6.1.0", - "npm-packlist": "^1.1.12", - "npm-pick-manifest": "^2.2.3", - "npm-registry-fetch": "^4.0.0", - "osenv": "^0.1.5", - "promise-inflight": "^1.0.1", - "promise-retry": "^1.1.1", - "protoduck": "^5.0.1", - "rimraf": "^2.6.2", - "safe-buffer": "^5.1.2", - "semver": "^5.6.0", - "ssri": "^6.0.1", - "tar": "^4.4.8", - "unique-filename": "^1.1.1", - "which": "^1.3.1" - }, - "dependencies": { - "npm-pick-manifest": { - "version": "2.2.3", - "resolved": "https://registry.npmjs.org/npm-pick-manifest/-/npm-pick-manifest-2.2.3.tgz", - "integrity": "sha512-+IluBC5K201+gRU85vFlUwX3PFShZAbAgDNp2ewJdWMVSppdo/Zih0ul2Ecky/X7b51J7LrrUAP+XOmOCvYZqA==", - "dev": true, - "requires": { - "figgy-pudding": "^3.5.1", - "npm-package-arg": "^6.0.0", - "semver": "^5.4.1" - } - }, - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "dev": true - } + "minipass": "^3.1.6", + "mkdirp": "^1.0.4", + "npm-package-arg": "^9.0.0", + "npm-packlist": "^5.1.0", + "npm-pick-manifest": "^7.0.0", + "npm-registry-fetch": "^13.0.1", + "proc-log": "^2.0.0", + "promise-retry": "^2.0.1", + "read-package-json": "^5.0.0", + "read-package-json-fast": "^2.0.3", + "rimraf": "^3.0.2", + "ssri": "^9.0.0", + "tar": "^6.1.11" } }, "pako": { @@ -9089,63 +7306,65 @@ "integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==", "dev": true }, - "parallel-transform": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/parallel-transform/-/parallel-transform-1.2.0.tgz", - "integrity": "sha512-P2vSmIu38uIlvdcU7fDkyrxj33gTUy/ABO5ZUbGowxNCopBq/OoD42bP4UmMrJoPyk4Uqf0mu3mtWBhHCZD8yg==", - "dev": true, - "requires": { - "cyclist": "^1.0.1", - "inherits": "^2.0.3", - "readable-stream": "^2.1.5" - } - }, - "parse-asn1": { - "version": "5.1.5", - "resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.5.tgz", - "integrity": "sha512-jkMYn1dcJqF6d5CpU689bq7w/b5ALS9ROVSpQDPrZsqqesUJii9qutvoT5ltGedNXMO2e16YUWIghG9KxaViTQ==", + "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": { - "asn1.js": "^4.0.0", - "browserify-aes": "^1.0.0", - "create-hash": "^1.1.0", - "evp_bytestokey": "^1.0.0", - "pbkdf2": "^3.0.3", - "safe-buffer": "^5.1.1" + "callsites": "^3.0.0" } }, "parse-json": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", - "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=", + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", + "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", "dev": true, "requires": { + "@babel/code-frame": "^7.0.0", "error-ex": "^1.3.1", - "json-parse-better-errors": "^1.0.1" + "json-parse-even-better-errors": "^2.3.0", + "lines-and-columns": "^1.1.6" } }, + "parse-node-version": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parse-node-version/-/parse-node-version-1.0.1.tgz", + "integrity": "sha512-3YHlOa/JgH6Mnpr05jP9eDG254US9ek25LyIxZlDItp2iJtwyaXQb57lBYLdT3MowkUFYEV2XXNAYIPlESvJlA==", + "dev": true + }, "parse5": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/parse5/-/parse5-4.0.0.tgz", - "integrity": "sha512-VrZ7eOd3T1Fk4XWNXMgiGBK/z0MG48BWG2uQNU4I72fkQuKUTZpl+u9k+CxEG0twMVzSmXEEz12z5Fnw1jIQFA==", + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", + "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==", "dev": true }, - "parseqs": { - "version": "0.0.5", - "resolved": "https://registry.npmjs.org/parseqs/-/parseqs-0.0.5.tgz", - "integrity": "sha1-1SCKNzjkZ2bikbouoXNoSSGouJ0=", + "parse5-html-rewriting-stream": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/parse5-html-rewriting-stream/-/parse5-html-rewriting-stream-6.0.1.tgz", + "integrity": "sha512-vwLQzynJVEfUlURxgnf51yAJDQTtVpNyGD8tKi2Za7m+akukNHxCcUQMAa/mUGLhCeicFdpy7Tlvj8ZNKadprg==", + "dev": true, + "requires": { + "parse5": "^6.0.1", + "parse5-sax-parser": "^6.0.1" + } + }, + "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": { - "better-assert": "~1.0.0" + "parse5": "^6.0.1" } }, - "parseuri": { - "version": "0.0.5", - "resolved": "https://registry.npmjs.org/parseuri/-/parseuri-0.0.5.tgz", - "integrity": "sha1-gCBKUNTbt3m/3G6+J3jZDkvOMgo=", + "parse5-sax-parser": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/parse5-sax-parser/-/parse5-sax-parser-6.0.1.tgz", + "integrity": "sha512-kXX+5S81lgESA0LsDuGjAlBybImAChYRMT+/uKCEXFBFOeEhS52qUCydGhU3qLRD8D9DVjaUo821WK7DM4iCeg==", "dev": true, "requires": { - "better-assert": "~1.0.0" + "parse5": "^6.0.1" } }, "parseurl": { @@ -9154,100 +7373,64 @@ "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==", "dev": true }, - "pascalcase": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/pascalcase/-/pascalcase-0.1.1.tgz", - "integrity": "sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ=", - "dev": true - }, - "path-browserify": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-0.0.1.tgz", - "integrity": "sha512-BapA40NHICOS+USX9SN4tyhq+A2RrN/Ws5F0Z5aMHDp98Fl86lX8Oti8B7uN93L4Ifv4fHOEA+pQw87gmMO/lQ==", - "dev": true - }, - "path-dirname": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/path-dirname/-/path-dirname-1.0.2.tgz", - "integrity": "sha1-zDPSTVJeCZpTiMAzbG4yuRYGCeA=", - "dev": true - }, "path-exists": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", - "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", + "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=", + "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", "dev": true }, "path-is-inside": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/path-is-inside/-/path-is-inside-1.0.2.tgz", - "integrity": "sha1-NlQX3t5EQw0cEa9hAn+s8HS9/FM=", + "integrity": "sha512-DUWJr3+ULp4zXmol/SZkFf3JGsS9/SIv+Y3Rt93/UjPpDpklB5f1er4O3POIbUuUJ3FXgqte2Q7SrU6zAqwk8w==", "dev": true }, "path-key": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", - "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=", + "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-parse": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.6.tgz", - "integrity": "sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==", + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", "dev": true }, "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=", + "integrity": "sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ==", "dev": true }, "path-type": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz", - "integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==", - "dev": true, - "requires": { - "pify": "^3.0.0" - }, - "dependencies": { - "pify": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", - "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", - "dev": true - } - } - }, - "pbkdf2": { - "version": "3.0.17", - "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.0.17.tgz", - "integrity": "sha512-U/il5MsrZp7mGg3mSQfn742na2T+1/vHDCG5/iTI3X9MKUuYUZVLQhyRsg06mCgDBTd57TxzgZt7P+fYfjRLtA==", - "dev": true, - "requires": { - "create-hash": "^1.1.2", - "create-hmac": "^1.1.4", - "ripemd160": "^2.0.1", - "safe-buffer": "^5.0.1", - "sha.js": "^2.4.8" - } + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", + "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", + "dev": true }, "performance-now": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", - "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=", + "integrity": "sha512-7EAHlyLHI56VEIdK57uwHdHKIaAGbnXPiw0yWbarQZOKaKpvUIgW0jWRVLiatnM+XXlSwsanIBH/hzGMJulMow==", + "dev": true + }, + "picocolors": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", + "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==", "dev": true }, "picomatch": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.2.1.tgz", - "integrity": "sha512-ISBaA8xQNmwELC7eOjqFKMESB2VIqt4PPDD0nsS95b/9dZXvVKOlz9keMSnoGGKcOHXfTvDD6WMaRoSc9UuhRA==", + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", "dev": true }, "pify": { @@ -9259,223 +7442,486 @@ "pinkie": { "version": "2.0.4", "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz", - "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=", + "integrity": "sha512-MnUuEycAemtSaeFSjXKW/aroV7akBbY+Sv+RkyqFjgAe73F+MR0TBWKBRDkmfWq/HiFmdavfZ1G7h4SPZXaCSg==", "dev": true }, "pinkie-promise": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", - "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=", + "integrity": "sha512-0Gni6D4UcLTbv9c57DfxDGdr41XfgUjqWZu492f0cIGr16zDU06BWP/RAEvOuo7CQ0CNjHaLlM59YJJFm3NWlw==", "dev": true, "requires": { "pinkie": "^2.0.0" } }, - "pkg-dir": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-3.0.0.tgz", - "integrity": "sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw==", + "piscina": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/piscina/-/piscina-3.2.0.tgz", + "integrity": "sha512-yn/jMdHRw+q2ZJhFhyqsmANcbF6V2QwmD84c6xRau+QpQOmtrBCoRGdvTfeuFDYXB5W2m6MfLkjkvQa9lUSmIA==", "dev": true, "requires": { - "find-up": "^3.0.0" + "eventemitter-asyncresource": "^1.0.0", + "hdr-histogram-js": "^2.0.1", + "hdr-histogram-percentiles-obj": "^3.0.0", + "nice-napi": "^1.0.2" } }, - "portfinder": { - "version": "1.0.25", - "resolved": "https://registry.npmjs.org/portfinder/-/portfinder-1.0.25.tgz", - "integrity": "sha512-6ElJnHBbxVA1XSLgBp7G1FiCkQdlqGzuF7DswL5tcea+E8UpuvPU7beVAjjRwCioTS9ZluNbu+ZyRvgTsmqEBg==", + "pkg-dir": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", + "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", "dev": true, "requires": { - "async": "^2.6.2", - "debug": "^3.1.1", - "mkdirp": "^0.5.1" - }, - "dependencies": { - "debug": { - "version": "3.2.6", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", - "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - } + "find-up": "^4.0.0" } }, - "posix-character-classes": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/posix-character-classes/-/posix-character-classes-0.1.1.tgz", - "integrity": "sha1-AerA/jta9xoqbAL+q7jB/vfgDqs=", - "dev": true - }, "postcss": { - "version": "7.0.17", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.17.tgz", - "integrity": "sha512-546ZowA+KZ3OasvQZHsbuEpysvwTZNGJv9EfyCQdsIDltPSWHAeTQ5fQy/Npi2ZDtLI3zs7Ps/p6wThErhm9fQ==", + "version": "8.4.16", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.16.tgz", + "integrity": "sha512-ipHE1XBvKzm5xI7hiHCZJCSugxvsdq2mPnsq5+UF+VHCjiBvtDrlxJfMBToWaP9D5XlgNmcFGqoHmUn0EYEaRQ==", "dev": true, "requires": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - }, - "dependencies": { - "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 - }, - "supports-color": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", - "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - } + "nanoid": "^3.3.4", + "picocolors": "^1.0.0", + "source-map-js": "^1.0.2" } }, - "postcss-import": { - "version": "12.0.1", - "resolved": "https://registry.npmjs.org/postcss-import/-/postcss-import-12.0.1.tgz", - "integrity": "sha512-3Gti33dmCjyKBgimqGxL3vcV8w9+bsHwO5UrBawp796+jdardbcFl4RP5w/76BwNL7aGzpKstIfF9I+kdE8pTw==", + "postcss-attribute-case-insensitive": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/postcss-attribute-case-insensitive/-/postcss-attribute-case-insensitive-5.0.2.tgz", + "integrity": "sha512-XIidXV8fDr0kKt28vqki84fRK8VW8eTuIa4PChv2MqKuT6C9UjmSKzen6KaWhWEoYvwxFCa7n/tC1SZ3tyq4SQ==", "dev": true, "requires": { - "postcss": "^7.0.1", - "postcss-value-parser": "^3.2.3", - "read-cache": "^1.0.0", - "resolve": "^1.1.7" - }, - "dependencies": { - "postcss-value-parser": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", - "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", - "dev": true - } + "postcss-selector-parser": "^6.0.10" } }, - "postcss-load-config": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/postcss-load-config/-/postcss-load-config-2.1.0.tgz", - "integrity": "sha512-4pV3JJVPLd5+RueiVVB+gFOAa7GWc25XQcMp86Zexzke69mKf6Nx9LRcQywdz7yZI9n1udOxmLuAwTBypypF8Q==", + "postcss-clamp": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/postcss-clamp/-/postcss-clamp-4.1.0.tgz", + "integrity": "sha512-ry4b1Llo/9zz+PKC+030KUnPITTJAHeOwjfAyyB60eT0AorGLdzp52s31OsPRHRf8NchkgFoG2y6fCfn1IV1Ow==", "dev": true, "requires": { - "cosmiconfig": "^5.0.0", - "import-cwd": "^2.0.0" + "postcss-value-parser": "^4.2.0" } }, - "postcss-loader": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/postcss-loader/-/postcss-loader-3.0.0.tgz", - "integrity": "sha512-cLWoDEY5OwHcAjDnkyRQzAXfs2jrKjXpO/HQFcc5b5u/r7aa471wdmChmwfnv7x2u840iat/wi0lQ5nbRgSkUA==", + "postcss-color-functional-notation": { + "version": "4.2.4", + "resolved": "https://registry.npmjs.org/postcss-color-functional-notation/-/postcss-color-functional-notation-4.2.4.tgz", + "integrity": "sha512-2yrTAUZUab9s6CpxkxC4rVgFEVaR6/2Pipvi6qcgvnYiVqZcbDHEoBDhrXzyb7Efh2CCfHQNtcqWcIruDTIUeg==", "dev": true, "requires": { - "loader-utils": "^1.1.0", - "postcss": "^7.0.0", - "postcss-load-config": "^2.0.0", - "schema-utils": "^1.0.0" + "postcss-value-parser": "^4.2.0" } }, - "postcss-url": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/postcss-url/-/postcss-url-8.0.0.tgz", - "integrity": "sha512-E2cbOQ5aii2zNHh8F6fk1cxls7QVFZjLPSrqvmiza8OuXLzIpErij8BDS5Y3STPfJgpIMNCPEr8JlKQWEoozUw==", + "postcss-color-hex-alpha": { + "version": "8.0.4", + "resolved": "https://registry.npmjs.org/postcss-color-hex-alpha/-/postcss-color-hex-alpha-8.0.4.tgz", + "integrity": "sha512-nLo2DCRC9eE4w2JmuKgVA3fGL3d01kGq752pVALF68qpGLmx2Qrk91QTKkdUqqp45T1K1XV8IhQpcu1hoAQflQ==", "dev": true, "requires": { - "mime": "^2.3.1", - "minimatch": "^3.0.4", - "mkdirp": "^0.5.0", - "postcss": "^7.0.2", - "xxhashjs": "^0.2.1" - }, - "dependencies": { - "mime": { - "version": "2.4.4", - "resolved": "https://registry.npmjs.org/mime/-/mime-2.4.4.tgz", - "integrity": "sha512-LRxmNwziLPT828z+4YkNzloCFC2YM4wrB99k+AV5ZbEyfGNWfG8SO1FUXLmLDBSo89NrJZ4DIWeLjy1CHGhMGA==", - "dev": true - } + "postcss-value-parser": "^4.2.0" } }, - "postcss-value-parser": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.0.3.tgz", - "integrity": "sha512-N7h4pG+Nnu5BEIzyeaaIYWs0LI5XC40OrRh5L60z0QjFsqGWcHcbkBvpe1WYpcIS9yQ8sOi/vIPt1ejQCrMVrg==", - "dev": true + "postcss-color-rebeccapurple": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/postcss-color-rebeccapurple/-/postcss-color-rebeccapurple-7.1.1.tgz", + "integrity": "sha512-pGxkuVEInwLHgkNxUc4sdg4g3py7zUeCQ9sMfwyHAT+Ezk8a4OaaVZ8lIY5+oNqA/BXXgLyXv0+5wHP68R79hg==", + "dev": true, + "requires": { + "postcss-value-parser": "^4.2.0" + } }, - "prepend-http": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-1.0.4.tgz", - "integrity": "sha1-1PRWKwzjaW5BrFLQ4ALlemNdxtw=", + "postcss-custom-media": { + "version": "8.0.2", + "resolved": "https://registry.npmjs.org/postcss-custom-media/-/postcss-custom-media-8.0.2.tgz", + "integrity": "sha512-7yi25vDAoHAkbhAzX9dHx2yc6ntS4jQvejrNcC+csQJAXjj15e7VcWfMgLqBNAbOvqi5uIa9huOVwdHbf+sKqg==", + "dev": true, + "requires": { + "postcss-value-parser": "^4.2.0" + } + }, + "postcss-custom-properties": { + "version": "12.1.11", + "resolved": "https://registry.npmjs.org/postcss-custom-properties/-/postcss-custom-properties-12.1.11.tgz", + "integrity": "sha512-0IDJYhgU8xDv1KY6+VgUwuQkVtmYzRwu+dMjnmdMafXYv86SWqfxkc7qdDvWS38vsjaEtv8e0vGOUQrAiMBLpQ==", + "dev": true, + "requires": { + "postcss-value-parser": "^4.2.0" + } + }, + "postcss-custom-selectors": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/postcss-custom-selectors/-/postcss-custom-selectors-6.0.3.tgz", + "integrity": "sha512-fgVkmyiWDwmD3JbpCmB45SvvlCD6z9CG6Ie6Iere22W5aHea6oWa7EM2bpnv2Fj3I94L3VbtvX9KqwSi5aFzSg==", + "dev": true, + "requires": { + "postcss-selector-parser": "^6.0.4" + } + }, + "postcss-dir-pseudo-class": { + "version": "6.0.5", + "resolved": "https://registry.npmjs.org/postcss-dir-pseudo-class/-/postcss-dir-pseudo-class-6.0.5.tgz", + "integrity": "sha512-eqn4m70P031PF7ZQIvSgy9RSJ5uI2171O/OO/zcRNYpJbvaeKFUlar1aJ7rmgiQtbm0FSPsRewjpdS0Oew7MPA==", + "dev": true, + "requires": { + "postcss-selector-parser": "^6.0.10" + } + }, + "postcss-double-position-gradients": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/postcss-double-position-gradients/-/postcss-double-position-gradients-3.1.2.tgz", + "integrity": "sha512-GX+FuE/uBR6eskOK+4vkXgT6pDkexLokPaz/AbJna9s5Kzp/yl488pKPjhy0obB475ovfT1Wv8ho7U/cHNaRgQ==", + "dev": true, + "requires": { + "@csstools/postcss-progressive-custom-properties": "^1.1.0", + "postcss-value-parser": "^4.2.0" + } + }, + "postcss-env-function": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/postcss-env-function/-/postcss-env-function-4.0.6.tgz", + "integrity": "sha512-kpA6FsLra+NqcFnL81TnsU+Z7orGtDTxcOhl6pwXeEq1yFPpRMkCDpHhrz8CFQDr/Wfm0jLiNQ1OsGGPjlqPwA==", + "dev": true, + "requires": { + "postcss-value-parser": "^4.2.0" + } + }, + "postcss-focus-visible": { + "version": "6.0.4", + "resolved": "https://registry.npmjs.org/postcss-focus-visible/-/postcss-focus-visible-6.0.4.tgz", + "integrity": "sha512-QcKuUU/dgNsstIK6HELFRT5Y3lbrMLEOwG+A4s5cA+fx3A3y/JTq3X9LaOj3OC3ALH0XqyrgQIgey/MIZ8Wczw==", + "dev": true, + "requires": { + "postcss-selector-parser": "^6.0.9" + } + }, + "postcss-focus-within": { + "version": "5.0.4", + "resolved": "https://registry.npmjs.org/postcss-focus-within/-/postcss-focus-within-5.0.4.tgz", + "integrity": "sha512-vvjDN++C0mu8jz4af5d52CB184ogg/sSxAFS+oUJQq2SuCe7T5U2iIsVJtsCp2d6R4j0jr5+q3rPkBVZkXD9fQ==", + "dev": true, + "requires": { + "postcss-selector-parser": "^6.0.9" + } + }, + "postcss-font-variant": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/postcss-font-variant/-/postcss-font-variant-5.0.0.tgz", + "integrity": "sha512-1fmkBaCALD72CK2a9i468mA/+tr9/1cBxRRMXOUaZqO43oWPR5imcyPjXwuv7PXbCid4ndlP5zWhidQVVa3hmA==", "dev": true }, - "private": { - "version": "0.1.8", - "resolved": "https://registry.npmjs.org/private/-/private-0.1.8.tgz", - "integrity": "sha512-VvivMrbvd2nKkiG38qjULzlc+4Vx4wm/whI9pQD35YrARNnhxeiRktSOhSukRLFNlzg6Br/cJPet5J/u19r/mg==", + "postcss-gap-properties": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/postcss-gap-properties/-/postcss-gap-properties-3.0.5.tgz", + "integrity": "sha512-IuE6gKSdoUNcvkGIqdtjtcMtZIFyXZhmFd5RUlg97iVEvp1BZKV5ngsAjCjrVy+14uhGBQl9tzmi1Qwq4kqVOg==", "dev": true }, - "process": { - "version": "0.11.10", - "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", - "integrity": "sha1-czIwDoQBYb2j5podHZGn1LwW8YI=", + "postcss-image-set-function": { + "version": "4.0.7", + "resolved": "https://registry.npmjs.org/postcss-image-set-function/-/postcss-image-set-function-4.0.7.tgz", + "integrity": "sha512-9T2r9rsvYzm5ndsBE8WgtrMlIT7VbtTfE7b3BQnudUqnBcBo7L758oc+o+pdj/dUV0l5wjwSdjeOH2DZtfv8qw==", + "dev": true, + "requires": { + "postcss-value-parser": "^4.2.0" + } + }, + "postcss-import": { + "version": "15.0.0", + "resolved": "https://registry.npmjs.org/postcss-import/-/postcss-import-15.0.0.tgz", + "integrity": "sha512-Y20shPQ07RitgBGv2zvkEAu9bqvrD77C9axhj/aA1BQj4czape2MdClCExvB27EwYEJdGgKZBpKanb0t1rK2Kg==", + "dev": true, + "requires": { + "postcss-value-parser": "^4.0.0", + "read-cache": "^1.0.0", + "resolve": "^1.1.7" + } + }, + "postcss-initial": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/postcss-initial/-/postcss-initial-4.0.1.tgz", + "integrity": "sha512-0ueD7rPqX8Pn1xJIjay0AZeIuDoF+V+VvMt/uOnn+4ezUKhZM/NokDeP6DwMNyIoYByuN/94IQnt5FEkaN59xQ==", "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==", + "postcss-lab-function": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/postcss-lab-function/-/postcss-lab-function-4.2.1.tgz", + "integrity": "sha512-xuXll4isR03CrQsmxyz92LJB2xX9n+pZJ5jE9JgcnmsCammLyKdlzrBin+25dy6wIjfhJpKBAN80gsTlCgRk2w==", + "dev": true, + "requires": { + "@csstools/postcss-progressive-custom-properties": "^1.1.0", + "postcss-value-parser": "^4.2.0" + } + }, + "postcss-loader": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/postcss-loader/-/postcss-loader-7.0.1.tgz", + "integrity": "sha512-VRviFEyYlLjctSM93gAZtcJJ/iSkPZ79zWbN/1fSH+NisBByEiVLqpdVDrPLVSi8DX0oJo12kL/GppTBdKVXiQ==", + "dev": true, + "requires": { + "cosmiconfig": "^7.0.0", + "klona": "^2.0.5", + "semver": "^7.3.7" + } + }, + "postcss-logical": { + "version": "5.0.4", + "resolved": "https://registry.npmjs.org/postcss-logical/-/postcss-logical-5.0.4.tgz", + "integrity": "sha512-RHXxplCeLh9VjinvMrZONq7im4wjWGlRJAqmAVLXyZaXwfDWP73/oq4NdIp+OZwhQUMj0zjqDfM5Fj7qby+B4g==", + "dev": true + }, + "postcss-media-minmax": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/postcss-media-minmax/-/postcss-media-minmax-5.0.0.tgz", + "integrity": "sha512-yDUvFf9QdFZTuCUg0g0uNSHVlJ5X1lSzDZjPSFaiCWvjgsvu8vEVxtahPrLMinIDEEGnx6cBe6iqdx5YWz08wQ==", + "dev": true + }, + "postcss-modules-extract-imports": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/postcss-modules-extract-imports/-/postcss-modules-extract-imports-3.0.0.tgz", + "integrity": "sha512-bdHleFnP3kZ4NYDhuGlVK+CMrQ/pqUm8bx/oGL93K6gVwiclvX5x0n76fYMKuIGKzlABOy13zsvqjb0f92TEXw==", "dev": true }, - "promise": { - "version": "7.3.1", - "resolved": "https://registry.npmjs.org/promise/-/promise-7.3.1.tgz", - "integrity": "sha512-nolQXZ/4L+bP/UGlkfaIujX9BKxGwmQ9OT4mOt5yvy8iK1h3wqTEJCijzGANTCCl9nWjY41juyAn2K3Q1hLLTg==", + "postcss-modules-local-by-default": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/postcss-modules-local-by-default/-/postcss-modules-local-by-default-4.0.0.tgz", + "integrity": "sha512-sT7ihtmGSF9yhm6ggikHdV0hlziDTX7oFoXtuVWeDd3hHObNkcHRo9V3yg7vCAY7cONyxJC/XXCmmiHHcvX7bQ==", + "dev": true, + "requires": { + "icss-utils": "^5.0.0", + "postcss-selector-parser": "^6.0.2", + "postcss-value-parser": "^4.1.0" + } + }, + "postcss-modules-scope": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/postcss-modules-scope/-/postcss-modules-scope-3.0.0.tgz", + "integrity": "sha512-hncihwFA2yPath8oZ15PZqvWGkWf+XUfQgUGamS4LqoP1anQLOsOJw0vr7J7IwLpoY9fatA2qiGUGmuZL0Iqlg==", + "dev": true, + "requires": { + "postcss-selector-parser": "^6.0.4" + } + }, + "postcss-modules-values": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/postcss-modules-values/-/postcss-modules-values-4.0.0.tgz", + "integrity": "sha512-RDxHkAiEGI78gS2ofyvCsu7iycRv7oqw5xMWn9iMoR0N/7mf9D50ecQqUo5BZ9Zh2vH4bCUR/ktCqbB9m8vJjQ==", + "dev": true, + "requires": { + "icss-utils": "^5.0.0" + } + }, + "postcss-nesting": { + "version": "10.2.0", + "resolved": "https://registry.npmjs.org/postcss-nesting/-/postcss-nesting-10.2.0.tgz", + "integrity": "sha512-EwMkYchxiDiKUhlJGzWsD9b2zvq/r2SSubcRrgP+jujMXFzqvANLt16lJANC+5uZ6hjI7lpRmI6O8JIl+8l1KA==", + "dev": true, + "requires": { + "@csstools/selector-specificity": "^2.0.0", + "postcss-selector-parser": "^6.0.10" + } + }, + "postcss-opacity-percentage": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/postcss-opacity-percentage/-/postcss-opacity-percentage-1.1.2.tgz", + "integrity": "sha512-lyUfF7miG+yewZ8EAk9XUBIlrHyUE6fijnesuz+Mj5zrIHIEw6KcIZSOk/elVMqzLvREmXB83Zi/5QpNRYd47w==", + "dev": true + }, + "postcss-overflow-shorthand": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/postcss-overflow-shorthand/-/postcss-overflow-shorthand-3.0.4.tgz", + "integrity": "sha512-otYl/ylHK8Y9bcBnPLo3foYFLL6a6Ak+3EQBPOTR7luMYCOsiVTUk1iLvNf6tVPNGXcoL9Hoz37kpfriRIFb4A==", "dev": true, - "optional": true, "requires": { - "asap": "~2.0.3" + "postcss-value-parser": "^4.2.0" } }, + "postcss-page-break": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/postcss-page-break/-/postcss-page-break-3.0.4.tgz", + "integrity": "sha512-1JGu8oCjVXLa9q9rFTo4MbeeA5FMe00/9C7lN4va606Rdb+HkxXtXsmEDrIraQ11fGz/WvKWa8gMuCKkrXpTsQ==", + "dev": true + }, + "postcss-place": { + "version": "7.0.5", + "resolved": "https://registry.npmjs.org/postcss-place/-/postcss-place-7.0.5.tgz", + "integrity": "sha512-wR8igaZROA6Z4pv0d+bvVrvGY4GVHihBCBQieXFY3kuSuMyOmEnnfFzHl/tQuqHZkfkIVBEbDvYcFfHmpSet9g==", + "dev": true, + "requires": { + "postcss-value-parser": "^4.2.0" + } + }, + "postcss-preset-env": { + "version": "7.8.0", + "resolved": "https://registry.npmjs.org/postcss-preset-env/-/postcss-preset-env-7.8.0.tgz", + "integrity": "sha512-leqiqLOellpLKfbHkD06E04P6d9ZQ24mat6hu4NSqun7WG0UhspHR5Myiv/510qouCjoo4+YJtNOqg5xHaFnCA==", + "dev": true, + "requires": { + "@csstools/postcss-cascade-layers": "^1.0.5", + "@csstools/postcss-color-function": "^1.1.1", + "@csstools/postcss-font-format-keywords": "^1.0.1", + "@csstools/postcss-hwb-function": "^1.0.2", + "@csstools/postcss-ic-unit": "^1.0.1", + "@csstools/postcss-is-pseudo-class": "^2.0.7", + "@csstools/postcss-nested-calc": "^1.0.0", + "@csstools/postcss-normalize-display-values": "^1.0.1", + "@csstools/postcss-oklab-function": "^1.1.1", + "@csstools/postcss-progressive-custom-properties": "^1.3.0", + "@csstools/postcss-stepped-value-functions": "^1.0.1", + "@csstools/postcss-text-decoration-shorthand": "^1.0.0", + "@csstools/postcss-trigonometric-functions": "^1.0.2", + "@csstools/postcss-unset-value": "^1.0.2", + "autoprefixer": "^10.4.8", + "browserslist": "^4.21.3", + "css-blank-pseudo": "^3.0.3", + "css-has-pseudo": "^3.0.4", + "css-prefers-color-scheme": "^6.0.3", + "cssdb": "^7.0.0", + "postcss-attribute-case-insensitive": "^5.0.2", + "postcss-clamp": "^4.1.0", + "postcss-color-functional-notation": "^4.2.4", + "postcss-color-hex-alpha": "^8.0.4", + "postcss-color-rebeccapurple": "^7.1.1", + "postcss-custom-media": "^8.0.2", + "postcss-custom-properties": "^12.1.8", + "postcss-custom-selectors": "^6.0.3", + "postcss-dir-pseudo-class": "^6.0.5", + "postcss-double-position-gradients": "^3.1.2", + "postcss-env-function": "^4.0.6", + "postcss-focus-visible": "^6.0.4", + "postcss-focus-within": "^5.0.4", + "postcss-font-variant": "^5.0.0", + "postcss-gap-properties": "^3.0.5", + "postcss-image-set-function": "^4.0.7", + "postcss-initial": "^4.0.1", + "postcss-lab-function": "^4.2.1", + "postcss-logical": "^5.0.4", + "postcss-media-minmax": "^5.0.0", + "postcss-nesting": "^10.1.10", + "postcss-opacity-percentage": "^1.1.2", + "postcss-overflow-shorthand": "^3.0.4", + "postcss-page-break": "^3.0.4", + "postcss-place": "^7.0.5", + "postcss-pseudo-class-any-link": "^7.1.6", + "postcss-replace-overflow-wrap": "^4.0.0", + "postcss-selector-not": "^6.0.1", + "postcss-value-parser": "^4.2.0" + } + }, + "postcss-pseudo-class-any-link": { + "version": "7.1.6", + "resolved": "https://registry.npmjs.org/postcss-pseudo-class-any-link/-/postcss-pseudo-class-any-link-7.1.6.tgz", + "integrity": "sha512-9sCtZkO6f/5ML9WcTLcIyV1yz9D1rf0tWc+ulKcvV30s0iZKS/ONyETvoWsr6vnrmW+X+KmuK3gV/w5EWnT37w==", + "dev": true, + "requires": { + "postcss-selector-parser": "^6.0.10" + } + }, + "postcss-replace-overflow-wrap": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/postcss-replace-overflow-wrap/-/postcss-replace-overflow-wrap-4.0.0.tgz", + "integrity": "sha512-KmF7SBPphT4gPPcKZc7aDkweHiKEEO8cla/GjcBK+ckKxiZslIu3C4GCRW3DNfL0o7yW7kMQu9xlZ1kXRXLXtw==", + "dev": true + }, + "postcss-selector-not": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/postcss-selector-not/-/postcss-selector-not-6.0.1.tgz", + "integrity": "sha512-1i9affjAe9xu/y9uqWH+tD4r6/hDaXJruk8xn2x1vzxC2U3J3LKO3zJW4CyxlNhA56pADJ/djpEwpH1RClI2rQ==", + "dev": true, + "requires": { + "postcss-selector-parser": "^6.0.10" + } + }, + "postcss-selector-parser": { + "version": "6.0.11", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.11.tgz", + "integrity": "sha512-zbARubNdogI9j7WY4nQJBiNqQf3sLS3wCP4WfOidu+p28LofJqDH1tcXypGrcmMHhDk2t9wGhCsYe/+szLTy1g==", + "dev": true, + "requires": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + } + }, + "postcss-url": { + "version": "10.1.3", + "resolved": "https://registry.npmjs.org/postcss-url/-/postcss-url-10.1.3.tgz", + "integrity": "sha512-FUzyxfI5l2tKmXdYc6VTu3TWZsInayEKPbiyW+P6vmmIrrb4I6CGX0BFoewgYHLK+oIL5FECEK02REYRpBvUCw==", + "dev": true, + "requires": { + "make-dir": "~3.1.0", + "mime": "~2.5.2", + "minimatch": "~3.0.4", + "xxhashjs": "~0.2.2" + }, + "dependencies": { + "mime": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/mime/-/mime-2.5.2.tgz", + "integrity": "sha512-tqkh47FzKeCPD2PUiPB6pkbMzsCasjxAfC62/Wap5qrUWcb+sFasXUC5I3gYM5iBM8v/Qpn4UK0x+j0iHyFPDg==", + "dev": true + }, + "minimatch": { + "version": "3.0.8", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.8.tgz", + "integrity": "sha512-6FsRAQsxQ61mw+qP1ZzbL9Bc78x2p5OqNgNpnoAFLTrX8n5Kxph0CsnhmKKNXTWjXqU5L0pGPR7hYk+XWZr60Q==", + "dev": true, + "requires": { + "brace-expansion": "^1.1.7" + } + } + } + }, + "postcss-value-parser": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz", + "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==", + "dev": true + }, + "pretty-bytes": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/pretty-bytes/-/pretty-bytes-5.6.0.tgz", + "integrity": "sha512-FFw039TmrBqFK8ma/7OL3sDz/VytdtJr044/QUJtH0wK9lb9jLq9tJyIxUwtQJHwar2BqtiA4iCWSwo9JLkzFg==", + "dev": true + }, + "proc-log": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/proc-log/-/proc-log-2.0.1.tgz", + "integrity": "sha512-Kcmo2FhfDTXdcbfDH76N7uBYHINxc/8GW7UAVuVP9I+Va3uHSerrnKV6dLooga/gh7GlgzuCCr/eoldnL1muGw==", + "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 + }, "promise-inflight": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/promise-inflight/-/promise-inflight-1.0.1.tgz", - "integrity": "sha1-mEcocL8igTL8vdhoEputEsPAKeM=", + "integrity": "sha512-6zWPyEOFaQBJYcGMHBKTKJ3u6TBsnMFOIZSa6ce1e/ZrrsOlnHRHbabMjLiBYKp+n44X9eUI6VUPaukCXHuG4g==", "dev": true }, "promise-retry": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/promise-retry/-/promise-retry-1.1.1.tgz", - "integrity": "sha1-ZznpaOMFHaIM5kl/srUPaRHfPW0=", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/promise-retry/-/promise-retry-2.0.1.tgz", + "integrity": "sha512-y+WKFlBR8BGXnsNlIHFGPZmyDf3DFMoLhaflAnyZgV6rG6xu+JwesTo2Q9R6XwYmtmwAFCkAk3e35jEdoeh/3g==", "dev": true, "requires": { - "err-code": "^1.0.0", - "retry": "^0.10.0" + "err-code": "^2.0.2", + "retry": "^0.12.0" }, "dependencies": { "retry": { - "version": "0.10.1", - "resolved": "https://registry.npmjs.org/retry/-/retry-0.10.1.tgz", - "integrity": "sha1-52OI0heZLCUnUCQdPTlW/tmNj/Q=", + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/retry/-/retry-0.12.0.tgz", + "integrity": "sha512-9LkiTwjUh6rT555DtE9rTX+BKByPfrMzEAtnlEtdEwr3Nkffwiihqe2bWADg+OQRjt9gl6ICdmB/ZFDCGAtSow==", "dev": true } } }, - "protoduck": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/protoduck/-/protoduck-5.0.1.tgz", - "integrity": "sha512-WxoCeDCoCBY55BMvj4cAEjdVUFGRWed9ZxPlqTKYyw1nDDTQ4pqmnIMAGfJlg7Dx35uB/M+PHJPTmGOvaCaPTg==", - "dev": true, - "requires": { - "genfun": "^5.0.0" - } - }, "protractor": { - "version": "5.4.3", - "resolved": "https://registry.npmjs.org/protractor/-/protractor-5.4.3.tgz", - "integrity": "sha512-7pMAolv8Ah1yJIqaorDTzACtn3gk7BamVKPTeO5lqIGOrfosjPgXFx/z1dqSI+m5EeZc2GMJHPr5DYlodujDNA==", + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/protractor/-/protractor-7.0.0.tgz", + "integrity": "sha512-UqkFjivi4GcvUQYzqGYNe0mLzfn5jiLmO8w9nMhQoJRLhy2grJonpga2IWhI6yJO30LibWXJJtA4MOIZD2GgZw==", "dev": true, "requires": { "@types/q": "^0.0.32", @@ -9486,25 +7932,31 @@ "glob": "^7.0.3", "jasmine": "2.8.0", "jasminewd2": "^2.1.0", - "optimist": "~0.6.0", "q": "1.4.1", "saucelabs": "^1.5.0", "selenium-webdriver": "3.6.0", "source-map-support": "~0.4.0", "webdriver-js-extender": "2.1.0", - "webdriver-manager": "^12.0.6" + "webdriver-manager": "^12.1.7", + "yargs": "^15.3.1" }, "dependencies": { + "ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==", + "dev": true + }, "ansi-styles": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", - "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", + "integrity": "sha512-kmCevFghRiWM7HB5zTPULl4r9bVFSWjz62MhqizDGUrq2NWuNMQyuv4tHHoKJHs69M/MF64lEcHdYIocrdWQYA==", "dev": true }, "chalk": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "integrity": "sha512-U3lRVLMSlsCfjqYPbLyVv11M9CPW4I728d6TCKMAOJueEeB9/8o+eSsMnxPJD+Q+K909sdESg7C+tIkoH6on1A==", "dev": true, "requires": { "ansi-styles": "^2.2.1", @@ -9514,64 +7966,86 @@ "supports-color": "^2.0.0" } }, - "del": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/del/-/del-2.2.2.tgz", - "integrity": "sha1-wSyYHQZ4RshLyvhiz/kw2Qf/0ag=", + "cliui": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz", + "integrity": "sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==", "dev": true, "requires": { - "globby": "^5.0.0", - "is-path-cwd": "^1.0.0", - "is-path-in-cwd": "^1.0.0", - "object-assign": "^4.0.1", - "pify": "^2.0.0", - "pinkie-promise": "^2.0.0", - "rimraf": "^2.2.8" + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^6.2.0" + }, + "dependencies": { + "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 + }, + "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" + } + } } }, - "globby": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/globby/-/globby-5.0.0.tgz", - "integrity": "sha1-69hGZ8oNuzMLmbz8aOrCvFQ3Dg0=", + "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": { - "array-union": "^1.0.1", - "arrify": "^1.0.0", - "glob": "^7.0.3", - "object-assign": "^4.0.1", - "pify": "^2.0.0", - "pinkie-promise": "^2.0.0" + "color-name": "~1.1.4" } }, - "is-path-cwd": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-path-cwd/-/is-path-cwd-1.0.0.tgz", - "integrity": "sha1-0iXsIxMuie3Tj9p2dHLmLmXxEG0=", + "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 }, - "is-path-in-cwd": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-path-in-cwd/-/is-path-in-cwd-1.0.1.tgz", - "integrity": "sha512-FjV1RTW48E7CWM7eE/J2NJvAEEVektecDBVBE5Hh3nM1Jd0kvhHtX68Pr3xsDf857xt3Y4AkwVULK1Vku62aaQ==", + "glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", "dev": true, "requires": { - "is-path-inside": "^1.0.0" + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" } }, - "is-path-inside": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-1.0.1.tgz", - "integrity": "sha1-jvW33lBDej/cprToZe96pVy0gDY=", + "ini": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", + "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==", + "dev": true + }, + "minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", "dev": true, "requires": { - "path-is-inside": "^1.0.1" + "brace-expansion": "^1.1.7" } }, - "pify": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", - "dev": true + "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" + } }, "semver": { "version": "5.7.1", @@ -9582,7 +8056,7 @@ "source-map": { "version": "0.5.7", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==", "dev": true }, "source-map-support": { @@ -9594,16 +8068,25 @@ "source-map": "^0.5.6" } }, + "strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg==", + "dev": true, + "requires": { + "ansi-regex": "^2.0.0" + } + }, "supports-color": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", - "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", + "integrity": "sha512-KKNVtd6pCYgPIKU4cp2733HWYCpplQhddZLBUryaAHou723x+FRzQ5Df824Fj+IyyuiQTRoub4SnIFfIcrp70g==", "dev": true }, "webdriver-manager": { - "version": "12.1.7", - "resolved": "https://registry.npmjs.org/webdriver-manager/-/webdriver-manager-12.1.7.tgz", - "integrity": "sha512-XINj6b8CYuUYC93SG3xPkxlyUc3IJbD6Vvo75CVGuG9uzsefDzWQrhz0Lq8vbPxtb4d63CZdYophF8k8Or/YiA==", + "version": "12.1.8", + "resolved": "https://registry.npmjs.org/webdriver-manager/-/webdriver-manager-12.1.8.tgz", + "integrity": "sha512-qJR36SXG2VwKugPcdwhaqcLQOD7r8P2Xiv9sfNbfZrKBnX243iAkOueX1yAmeNgIKhJ3YAT/F2gq6IiEZzahsg==", "dev": true, "requires": { "adm-zip": "^0.4.9", @@ -9618,94 +8101,122 @@ "semver": "^5.3.0", "xml2js": "^0.4.17" } + }, + "wrap-ansi": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", + "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", + "dev": true, + "requires": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "dependencies": { + "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" + } + }, + "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" + } + } + } + }, + "y18n": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz", + "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==", + "dev": true + }, + "yargs": { + "version": "15.4.1", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-15.4.1.tgz", + "integrity": "sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A==", + "dev": true, + "requires": { + "cliui": "^6.0.0", + "decamelize": "^1.2.0", + "find-up": "^4.1.0", + "get-caller-file": "^2.0.1", + "require-directory": "^2.1.1", + "require-main-filename": "^2.0.0", + "set-blocking": "^2.0.0", + "string-width": "^4.2.0", + "which-module": "^2.0.0", + "y18n": "^4.0.0", + "yargs-parser": "^18.1.2" + } + }, + "yargs-parser": { + "version": "18.1.3", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz", + "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==", + "dev": true, + "requires": { + "camelcase": "^5.0.0", + "decamelize": "^1.2.0" + } } } }, "proxy-addr": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.6.tgz", - "integrity": "sha512-dh/frvCBVmSsDYzw6n926jv974gddhkFPfiN8hPOi30Wax25QZyZEGveluCgliBnqmuM+UJmBErbAUFIoDbjOw==", + "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==", "dev": true, "requires": { - "forwarded": "~0.1.2", + "forwarded": "0.2.0", "ipaddr.js": "1.9.1" + }, + "dependencies": { + "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==", + "dev": true + } } }, "prr": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/prr/-/prr-1.0.1.tgz", - "integrity": "sha1-0/wRS6BplaRexok/SEzrHXj19HY=", + "integrity": "sha512-yPw4Sng1gWghHQWj0B3ZggWUm4qVbPwPFcRG8KyxiU7J2OHFSoEHKS+EZ3fv5l1t9CyCiop6l/ZYeWbrgoQejw==", + "dev": true, + "optional": true + }, + "psl": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/psl/-/psl-1.9.0.tgz", + "integrity": "sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag==", "dev": true }, - "pseudomap": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", - "integrity": "sha1-8FKijacOYYkX7wqKw0wa5aaChrM=", + "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 }, - "psl": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/psl/-/psl-1.7.0.tgz", - "integrity": "sha512-5NsSEDv8zY70ScRnOTn7bK7eanl2MvFrOrS/R6x+dBt5g1ghnj9Zv90kO8GwT8gxcu2ANyFprnFYB85IogIJOQ==", - "dev": true - }, - "public-encrypt": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/public-encrypt/-/public-encrypt-4.0.3.tgz", - "integrity": "sha512-zVpa8oKZSz5bTMTFClc1fQOnyyEzpl5ozpi1B5YcvBrdohMjH2rfsBtyXcuNuwjsDIXmBYlF2N5FlJYhR29t8Q==", - "dev": true, - "requires": { - "bn.js": "^4.1.0", - "browserify-rsa": "^4.0.0", - "create-hash": "^1.1.0", - "parse-asn1": "^5.0.0", - "randombytes": "^2.0.1", - "safe-buffer": "^5.1.2" - } - }, - "pump": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", - "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", - "dev": true, - "requires": { - "end-of-stream": "^1.1.0", - "once": "^1.3.1" - } - }, - "pumpify": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/pumpify/-/pumpify-1.5.1.tgz", - "integrity": "sha512-oClZI37HvuUJJxSKKrC17bZ9Cu0ZYhEAGPsPUy9KlMUmv9dKX2o77RUmq7f3XjIxbwyGwYzbzQ1L2Ks8sIradQ==", - "dev": true, - "requires": { - "duplexify": "^3.6.0", - "inherits": "^2.0.3", - "pump": "^2.0.0" - }, - "dependencies": { - "pump": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/pump/-/pump-2.0.1.tgz", - "integrity": "sha512-ruPMNRkN3MHP1cWJc9OWr+T/xDP0jhXYCLfJcBuX54hhfIBnaQmAUMfDcG4DM5UMWByBbJY69QSphm3jtDKIkA==", - "dev": true, - "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==", - "dev": true - }, - "q": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/q/-/q-1.4.1.tgz", - "integrity": "sha1-VXBbzZPF82c1MMLCy8DCs63cKG4=", + "q": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/q/-/q-1.4.1.tgz", + "integrity": "sha512-/CdEdaw49VZVmyIDGUQKDDT53c7qBkO6g5CefWz91Ae+l4+cRtcDYwMTXh6me4O8TMldeGHG3N2Bl84V78Ywbg==", "dev": true }, "qjobs": { @@ -9715,37 +8226,18 @@ "dev": true }, "qs": { - "version": "6.5.2", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz", - "integrity": "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==", - "dev": true - }, - "query-string": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/query-string/-/query-string-4.3.4.tgz", - "integrity": "sha1-u7aTucqRXCMlFbIosaArYJBD2+s=", + "version": "6.11.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.11.0.tgz", + "integrity": "sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==", "dev": true, "requires": { - "object-assign": "^4.1.0", - "strict-uri-encode": "^1.0.0" + "side-channel": "^1.0.4" } }, - "querystring": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/querystring/-/querystring-0.2.0.tgz", - "integrity": "sha1-sgmEkgO7Jd+CDadW50cAWHhSFiA=", - "dev": true - }, - "querystring-es3": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/querystring-es3/-/querystring-es3-0.2.1.tgz", - "integrity": "sha1-nsYfeQSYdXB9aUFFlv2Qek1xHnM=", - "dev": true - }, - "querystringify": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/querystringify/-/querystringify-2.1.1.tgz", - "integrity": "sha512-w7fLxIRCRT7U8Qu53jQnJyPkYZIaR4n5151KMfcJlO/A9397Wxb1amJvROTK6TOnp7PfoAmg/qXiNHI+08jRfA==", + "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": { @@ -9757,16 +8249,6 @@ "safe-buffer": "^5.1.0" } }, - "randomfill": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/randomfill/-/randomfill-1.0.4.tgz", - "integrity": "sha512-87lcbR8+MhcWcUiQ+9e+Rwx8MyR2P7qnt15ynUlbm3TU/fjbgz4GsvfSUDTemtCCtVCqb4ZcEFlyPNTh9bBTLw==", - "dev": true, - "requires": { - "randombytes": "^2.0.5", - "safe-buffer": "^5.1.0" - } - }, "range-parser": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", @@ -9774,63 +8256,29 @@ "dev": true }, "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==", + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.1.tgz", + "integrity": "sha512-qqJBtEyVgS0ZmPGdCFPWJ3FreoqvG4MVQln/kCgF7Olq95IbOp0/BWyMwbdtn4VTvkM8Y7khCQ2Xgk/tcrCXig==", "dev": true, "requires": { - "bytes": "3.1.0", - "http-errors": "1.7.2", + "bytes": "3.1.2", + "http-errors": "2.0.0", "iconv-lite": "0.4.24", "unpipe": "1.0.0" }, "dependencies": { "bytes": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.0.tgz", - "integrity": "sha512-zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg==", + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", + "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", "dev": true } } }, - "raw-loader": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/raw-loader/-/raw-loader-3.1.0.tgz", - "integrity": "sha512-lzUVMuJ06HF4rYveaz9Tv0WRlUMxJ0Y1hgSkkgg+50iEdaI0TthyEDe08KIHb0XsF6rn8WYTqPCaGTZg3sX+qA==", - "dev": true, - "requires": { - "loader-utils": "^1.1.0", - "schema-utils": "^2.0.1" - }, - "dependencies": { - "schema-utils": { - "version": "2.6.4", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-2.6.4.tgz", - "integrity": "sha512-VNjcaUxVnEeun6B2fiiUDjXXBtD4ZSH7pdbfIu1pOFwgptDPLMo/z9jr4sUfsjFVPqDCEin/F7IYlq7/E6yDbQ==", - "dev": true, - "requires": { - "ajv": "^6.10.2", - "ajv-keywords": "^3.4.1" - } - } - } - }, - "rc": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", - "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==", - "dev": true, - "requires": { - "deep-extend": "^0.6.0", - "ini": "~1.3.0", - "minimist": "^1.2.0", - "strip-json-comments": "~2.0.1" - } - }, "read-cache": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/read-cache/-/read-cache-1.0.0.tgz", - "integrity": "sha1-5mTvMRYRZsl1HNvo28+GtftY93Q=", + "integrity": "sha512-Owdv/Ft7IjOgm/i0xvNDZ1LrRANRfew4b2prF3OWMQLxLfu3bS8FVhCsrSCMK4lR56Y9ya+AThoTpDCTxCmpRA==", "dev": true, "requires": { "pify": "^2.3.0" @@ -9839,111 +8287,59 @@ "pify": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", + "integrity": "sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==", "dev": true } } }, "read-package-json": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/read-package-json/-/read-package-json-2.1.1.tgz", - "integrity": "sha512-dAiqGtVc/q5doFz6096CcnXhpYk0ZN8dEKVkGLU0CsASt8SrgF6SF7OTKAYubfvFhWaqofl+Y8HK19GR8jwW+A==", - "dev": true, - "requires": { - "glob": "^7.1.1", - "graceful-fs": "^4.1.2", - "json-parse-better-errors": "^1.0.1", - "normalize-package-data": "^2.0.0", - "npm-normalize-package-bin": "^1.0.0" - } - }, - "read-package-tree": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/read-package-tree/-/read-package-tree-5.3.1.tgz", - "integrity": "sha512-mLUDsD5JVtlZxjSlPPx1RETkNjjvQYuweKwNVt1Sn8kP5Jh44pvYuUHCp6xSVDZWbNxVxG5lyZJ921aJH61sTw==", - "dev": true, - "requires": { - "read-package-json": "^2.0.0", - "readdir-scoped-modules": "^1.0.0", - "util-promisify": "^2.1.0" - } - }, - "read-pkg": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-5.2.0.tgz", - "integrity": "sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==", + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/read-package-json/-/read-package-json-5.0.2.tgz", + "integrity": "sha512-BSzugrt4kQ/Z0krro8zhTwV1Kd79ue25IhNN/VtHFy1mG/6Tluyi+msc0UpwaoQzxSHa28mntAjIZY6kEgfR9Q==", "dev": true, "requires": { - "@types/normalize-package-data": "^2.4.0", - "normalize-package-data": "^2.5.0", - "parse-json": "^5.0.0", - "type-fest": "^0.6.0" + "glob": "^8.0.1", + "json-parse-even-better-errors": "^2.3.1", + "normalize-package-data": "^4.0.0", + "npm-normalize-package-bin": "^2.0.0" }, "dependencies": { - "parse-json": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.0.0.tgz", - "integrity": "sha512-OOY5b7PAEFV0E2Fir1KOkxchnZNCdowAJgQ5NuxjpBKTRP3pQhwkrkxqQjeoKJ+fO7bCpmIZaogI4eZGDMEGOw==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.0.0", - "error-ex": "^1.3.1", - "json-parse-better-errors": "^1.0.1", - "lines-and-columns": "^1.1.6" - } - }, - "type-fest": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.6.0.tgz", - "integrity": "sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==", + "npm-normalize-package-bin": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/npm-normalize-package-bin/-/npm-normalize-package-bin-2.0.0.tgz", + "integrity": "sha512-awzfKUO7v0FscrSpRoogyNm0sajikhBWpU0QMrW09AMi9n1PoKU6WaIqUzuJSQnpciZZmJ/jMZ2Egfmb/9LiWQ==", "dev": true } } }, - "read-pkg-up": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-5.0.0.tgz", - "integrity": "sha512-XBQjqOBtTzyol2CpsQOw8LHV0XbDZVG7xMMjmXAJomlVY03WOBRmYgDJETlvcg0H63AJvPRwT7GFi5rvOzUOKg==", + "read-package-json-fast": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/read-package-json-fast/-/read-package-json-fast-2.0.3.tgz", + "integrity": "sha512-W/BKtbL+dUjTuRL2vziuYhp76s5HZ9qQhd/dKfWIZveD0O40453QNyZhC0e63lqZrAQ4jiOapVoeJ7JrszenQQ==", "dev": true, "requires": { - "find-up": "^3.0.0", - "read-pkg": "^5.0.0" + "json-parse-even-better-errors": "^2.3.0", + "npm-normalize-package-bin": "^1.0.1" } }, "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" - } - }, - "readdir-scoped-modules": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/readdir-scoped-modules/-/readdir-scoped-modules-1.1.0.tgz", - "integrity": "sha512-asaikDeqAQg7JifRsZn1NJZXo9E+VwlyCfbkZhwyISinqk5zNS6266HS5kah6P0SaQKGF6SkNnZVHUzHFYxYDw==", + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", "dev": true, "requires": { - "debuglog": "^1.0.1", - "dezalgo": "^1.0.0", - "graceful-fs": "^4.1.2", - "once": "^1.3.0" + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" } }, "readdirp": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.3.0.tgz", - "integrity": "sha512-zz0pAkSPOXXm1viEwygWIPSPkcBYjW1xU5j/JBh5t9bGCJwa6f9+BJa6VaB2g+b55yVrmXzqkyLf4xaWYM0IkQ==", + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", "dev": true, "requires": { - "picomatch": "^2.0.7" + "picomatch": "^2.2.1" } }, "reflect-metadata": { @@ -9953,98 +8349,65 @@ "dev": true }, "regenerate": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.0.tgz", - "integrity": "sha512-1G6jJVDWrt0rK99kBjvEtziZNCICAuvIPkSiUFIQxVP06RCVpq3dmDo2oi6ABpYaDYaTRr67BEhL8r1wgEZZKg==", + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.2.tgz", + "integrity": "sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==", "dev": true }, "regenerate-unicode-properties": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-8.1.0.tgz", - "integrity": "sha512-LGZzkgtLY79GeXLm8Dp0BVLdQlWICzBnJz/ipWUgo59qBaZ+BHtq51P2q1uVZlppMuUAT37SDk39qUbjTWB7bA==", + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-10.1.0.tgz", + "integrity": "sha512-d1VudCLoIGitcU/hEg2QqvyGZQmdC0Lf8BqdOMXGFSvJP4bNV1+XqbPQeHHLD51Jh4QJJ225dlIFvY4Ly6MXmQ==", "dev": true, "requires": { - "regenerate": "^1.4.0" + "regenerate": "^1.4.2" } }, "regenerator-runtime": { - "version": "0.13.3", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.3.tgz", - "integrity": "sha512-naKIZz2GQ8JWh///G7L3X6LaQUAMp2lvb1rvwwsURe/VXwD6VMfr+/1NuNw3ag8v2kY1aQ/go5SNn79O9JU7yw==", + "version": "0.13.9", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.9.tgz", + "integrity": "sha512-p3VT+cOEgxFsRRA9X4lkI1E+k2/CtnKtU4gcxyaCUreilL/vqI6CdZ3wxVUx3UOUg+gnUOQQcRI7BmSI656MYA==", "dev": true }, "regenerator-transform": { - "version": "0.14.2", - "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.14.2.tgz", - "integrity": "sha512-V4+lGplCM/ikqi5/mkkpJ06e9Bujq1NFmNLvsCs56zg3ZbzrnUzAtizZ24TXxtRX/W2jcdScwQCnbL0CICTFkQ==", - "dev": true, - "requires": { - "@babel/runtime": "^7.8.4", - "private": "^0.1.8" - } - }, - "regex-not": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/regex-not/-/regex-not-1.0.2.tgz", - "integrity": "sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A==", + "version": "0.15.1", + "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.15.1.tgz", + "integrity": "sha512-knzmNAcuyxV+gQCufkYcvOqX/qIIfHLv0u5x79kRxuGojfYVky1f15TzZEu2Avte8QGepvUNTnLskf8E6X6Vyg==", "dev": true, "requires": { - "extend-shallow": "^3.0.2", - "safe-regex": "^1.1.0" + "@babel/runtime": "^7.8.4" } }, - "regexp.prototype.flags": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.3.0.tgz", - "integrity": "sha512-2+Q0C5g951OlYlJz6yu5/M33IcsESLlLfsyIaLJaG4FA2r4yP8MvVMJUUP/fVBkSpbbbZlS5gynbEWLipiiXiQ==", - "dev": true, - "requires": { - "define-properties": "^1.1.3", - "es-abstract": "^1.17.0-next.1" - } + "regex-parser": { + "version": "2.2.11", + "resolved": "https://registry.npmjs.org/regex-parser/-/regex-parser-2.2.11.tgz", + "integrity": "sha512-jbD/FT0+9MBU2XAZluI7w2OBs1RBi6p9M83nkoZayQXXU9e8Robt69FcZc7wU4eJD/YFTjn1JdCk3rbMJajz8Q==", + "dev": true }, "regexpu-core": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-4.6.0.tgz", - "integrity": "sha512-YlVaefl8P5BnFYOITTNzDvan1ulLOiXJzCNZxduTIosN17b87h3bvG9yHMoHaRuo88H4mQ06Aodj5VtYGGGiTg==", - "dev": true, - "requires": { - "regenerate": "^1.4.0", - "regenerate-unicode-properties": "^8.1.0", - "regjsgen": "^0.5.0", - "regjsparser": "^0.6.0", - "unicode-match-property-ecmascript": "^1.0.4", - "unicode-match-property-value-ecmascript": "^1.1.0" - } - }, - "registry-auth-token": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/registry-auth-token/-/registry-auth-token-4.1.1.tgz", - "integrity": "sha512-9bKS7nTl9+/A1s7tnPeGrUpRcVY+LUh7bfFgzpndALdPfXQBfQV77rQVtqgUV3ti4vc/Ik81Ex8UJDWDQ12zQA==", - "dev": true, - "requires": { - "rc": "^1.2.8" - } - }, - "registry-url": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/registry-url/-/registry-url-5.1.0.tgz", - "integrity": "sha512-8acYXXTI0AkQv6RAOjE3vOaIXZkT9wo4LOFbBKYQEEnnMNBpKqdUrI6S4NT0KPIo/WVvJ5tE/X5LF/TQUf0ekw==", + "version": "5.2.2", + "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-5.2.2.tgz", + "integrity": "sha512-T0+1Zp2wjF/juXMrMxHxidqGYn8U4R+zleSJhX9tQ1PUsS8a9UtYfbsF9LdiVgNX3kiX8RNaKM42nfSgvFJjmw==", "dev": true, "requires": { - "rc": "^1.2.8" + "regenerate": "^1.4.2", + "regenerate-unicode-properties": "^10.1.0", + "regjsgen": "^0.7.1", + "regjsparser": "^0.9.1", + "unicode-match-property-ecmascript": "^2.0.0", + "unicode-match-property-value-ecmascript": "^2.1.0" } }, "regjsgen": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.5.1.tgz", - "integrity": "sha512-5qxzGZjDs9w4tzT3TPhCJqWdCc3RLYwy9J2NB0nm5Lz+S273lvWcpjaTGHsT1dc6Hhfq41uSEOw8wBmxrKOuyg==", + "version": "0.7.1", + "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.7.1.tgz", + "integrity": "sha512-RAt+8H2ZEzHeYWxZ3H2z6tF18zyyOnlcdaafLrm21Bguj7uZy6ULibiAFdXEtKQY4Sy7wDTwDiOazasMLc4KPA==", "dev": true }, "regjsparser": { - "version": "0.6.3", - "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.6.3.tgz", - "integrity": "sha512-8uZvYbnfAtEm9Ab8NTb3hdLwL4g/LQzEYP7Xs27T96abJCCE2d6r3cPZPQEsLKy0vRSGVNG+/zVGtLr86HQduA==", + "version": "0.9.1", + "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.9.1.tgz", + "integrity": "sha512-dQUtn90WanSNl+7mQKcXAgZxvUe7Z0SqXlgzv0za4LwiUhyzBC58yQO3liFoUgu8GiJVInAhJjkj1N0EtQ5nkQ==", "dev": true, "requires": { "jsesc": "~0.5.0" @@ -10053,29 +8416,11 @@ "jsesc": { "version": "0.5.0", "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", - "integrity": "sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0=", + "integrity": "sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA==", "dev": true } } }, - "remove-trailing-separator": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz", - "integrity": "sha1-wkvOKig62tW8P1jg1IJJuSN52O8=", - "dev": true - }, - "repeat-element": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.3.tgz", - "integrity": "sha512-ahGq0ZnV5m5XtZLMb+vP76kcAM5nkLqk0lpqAuojSKGgQtn4eRi4ZZGm2olo2zKFH+sMsWaqOCW1dqAnOru72g==", - "dev": true - }, - "repeat-string": { - "version": "1.6.1", - "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz", - "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=", - "dev": true - }, "request": { "version": "2.88.2", "resolved": "https://registry.npmjs.org/request/-/request-2.88.2.tgz", @@ -10102,63 +8447,93 @@ "tough-cookie": "~2.5.0", "tunnel-agent": "^0.6.0", "uuid": "^3.3.2" + }, + "dependencies": { + "qs": { + "version": "6.5.3", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.3.tgz", + "integrity": "sha512-qxXIEh4pCGfHICj1mAJQ2/2XVZkjCDTcEgfoSQxc/fYivUZxTkk7L3bDBJSoNrEzXI17oUO5Dp07ktqE5KzczA==", + "dev": true + }, + "uuid": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", + "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==", + "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=", + "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", + "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 }, "require-main-filename": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-1.0.1.tgz", - "integrity": "sha1-l/cXtp1IeE9fUmpsWqj/3aBVpNE=", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz", + "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==", "dev": true }, "requires-port": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz", - "integrity": "sha1-kl0mAdOaxIXgkc8NpcbmlNw9yv8=", + "integrity": "sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==", "dev": true }, "resolve": { - "version": "1.15.1", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.15.1.tgz", - "integrity": "sha512-84oo6ZTtoTUpjgNEr5SJyzQhzL72gaRodsSfyxC/AXRvwu0Yse9H8eF9IpGo7b8YetZhlI6v7ZQ6bKBFV/6S7w==", - "dev": true, - "requires": { - "path-parse": "^1.0.6" - } - }, - "resolve-cwd": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-2.0.0.tgz", - "integrity": "sha1-AKn3OHVW4nA46uIyyqNypqWbZlo=", + "version": "1.22.1", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz", + "integrity": "sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==", "dev": true, "requires": { - "resolve-from": "^3.0.0" + "is-core-module": "^2.9.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" } }, "resolve-from": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-3.0.0.tgz", - "integrity": "sha1-six699nWiBvItuZTM17rywoYh0g=", - "dev": true - }, - "resolve-url": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz", - "integrity": "sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo=", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", + "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", "dev": true }, - "responselike": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/responselike/-/responselike-1.0.2.tgz", - "integrity": "sha1-kYcg7ztjHFZCvgaPFa3lpG9Loec=", + "resolve-url-loader": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/resolve-url-loader/-/resolve-url-loader-5.0.0.tgz", + "integrity": "sha512-uZtduh8/8srhBoMx//5bwqjQ+rfYOUq8zC9NrMUGtjBiGTtFJM42s58/36+hTqeqINcnYe08Nj3LkK9lW4N8Xg==", "dev": true, "requires": { - "lowercase-keys": "^1.0.0" + "adjust-sourcemap-loader": "^4.0.0", + "convert-source-map": "^1.7.0", + "loader-utils": "^2.0.0", + "postcss": "^8.2.14", + "source-map": "0.6.1" + }, + "dependencies": { + "loader-utils": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.4.tgz", + "integrity": "sha512-xXqpXoINfFhgua9xiqD8fPFHgkoq1mmmpE92WlDbm9rNRd/EbRb+Gqf908T2DMfuHjjJlksiK2RbHVOdD/MqSw==", + "dev": true, + "requires": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^2.1.2" + } + }, + "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 + } } }, "restore-cursor": { @@ -10171,157 +8546,106 @@ "signal-exit": "^3.0.2" } }, - "ret": { - "version": "0.1.15", - "resolved": "https://registry.npmjs.org/ret/-/ret-0.1.15.tgz", - "integrity": "sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==", + "retry": { + "version": "0.13.1", + "resolved": "https://registry.npmjs.org/retry/-/retry-0.13.1.tgz", + "integrity": "sha512-XQBQ3I8W1Cge0Seh+6gjj03LbmRFWuoszgK9ooCpwYIrhhoO80pfq4cUkU5DkknwfOfFteRwlZ56PYOGYyFWdg==", "dev": true }, - "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 }, "rfdc": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/rfdc/-/rfdc-1.1.4.tgz", - "integrity": "sha512-5C9HXdzK8EAqN7JDif30jqsBzavB7wLpaubisuQIGHWf2gUXSpzy6ArX/+Da8RjFpagWsCn+pIgxTMAmKw9Zug==", + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/rfdc/-/rfdc-1.3.0.tgz", + "integrity": "sha512-V2hovdzFbOi77/WajaSMXk2OLm+xNIeQdMMuB7icj7bk6zi2F8GGAxigcnDFpJHbNyNcgyJDiP+8nOrY5cZGrA==", "dev": true }, "rimraf": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", - "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", + "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" - } - }, - "ripemd160": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.2.tgz", - "integrity": "sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==", - "dev": true, - "requires": { - "hash-base": "^3.0.0", - "inherits": "^2.0.1" - } - }, - "rollup": { - "version": "1.25.2", - "resolved": "https://registry.npmjs.org/rollup/-/rollup-1.25.2.tgz", - "integrity": "sha512-+7z6Wab/L45QCPcfpuTZKwKiB0tynj05s/+s2U3F2Bi7rOLPr9UcjUwO7/xpjlPNXA/hwnth6jBExFRGyf3tMg==", - "dev": true, - "requires": { - "@types/estree": "*", - "@types/node": "*", - "acorn": "^7.1.0" }, "dependencies": { - "acorn": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.1.1.tgz", - "integrity": "sha512-add7dgA5ppRPxCFJoAGfMDi7PIBXq1RtGo7BhbLaxwrXPOmw8gq48Y9ozT01hUKy9byMjlR20EJhu5zlkErEkg==", - "dev": true + "glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "dev": true, + "requires": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + }, + "minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "requires": { + "brace-expansion": "^1.1.7" + } } } }, - "rollup-plugin-commonjs": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/rollup-plugin-commonjs/-/rollup-plugin-commonjs-10.1.0.tgz", - "integrity": "sha512-jlXbjZSQg8EIeAAvepNwhJj++qJWNJw1Cl0YnOqKtP5Djx+fFGkp3WRh+W0ASCaFG5w1jhmzDxgu3SJuVxPF4Q==", - "dev": true, - "requires": { - "estree-walker": "^0.6.1", - "is-reference": "^1.1.2", - "magic-string": "^0.25.2", - "resolve": "^1.11.0", - "rollup-pluginutils": "^2.8.1" - } - }, - "rollup-plugin-json": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/rollup-plugin-json/-/rollup-plugin-json-4.0.0.tgz", - "integrity": "sha512-hgb8N7Cgfw5SZAkb3jf0QXii6QX/FOkiIq2M7BAQIEydjHvTyxXHQiIzZaTFgx1GK0cRCHOCBHIyEkkLdWKxow==", - "dev": true, - "requires": { - "rollup-pluginutils": "^2.5.0" - } - }, - "rollup-plugin-node-resolve": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/rollup-plugin-node-resolve/-/rollup-plugin-node-resolve-5.2.0.tgz", - "integrity": "sha512-jUlyaDXts7TW2CqQ4GaO5VJ4PwwaV8VUGA7+km3n6k6xtOEacf61u0VXwN80phY/evMcaS+9eIeJ9MOyDxt5Zw==", + "rollup": { + "version": "2.79.1", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-2.79.1.tgz", + "integrity": "sha512-uKxbd0IhMZOhjAiD5oAFp7BqvkA4Dv47qpOCtaNvng4HBwdbWtdOh8f5nZNuk2rp51PMGk3bzfWu5oayNEuYnw==", "dev": true, "requires": { - "@types/resolve": "0.0.8", - "builtin-modules": "^3.1.0", - "is-module": "^1.0.0", - "resolve": "^1.11.1", - "rollup-pluginutils": "^2.8.1" + "fsevents": "~2.3.2" } }, "rollup-plugin-sourcemaps": { - "version": "0.4.2", - "resolved": "https://registry.npmjs.org/rollup-plugin-sourcemaps/-/rollup-plugin-sourcemaps-0.4.2.tgz", - "integrity": "sha1-YhJaqUCHqt97g+9N+vYptHMTXoc=", - "dev": true, - "requires": { - "rollup-pluginutils": "^2.0.1", - "source-map-resolve": "^0.5.0" - } - }, - "rollup-pluginutils": { - "version": "2.8.2", - "resolved": "https://registry.npmjs.org/rollup-pluginutils/-/rollup-pluginutils-2.8.2.tgz", - "integrity": "sha512-EEp9NhnUkwY8aif6bxgovPHMoMoNr2FulJziTndpt5H9RdwC47GSGuII9XxpSdzVGM0GWrNPHV6ie1LTNJPaLQ==", + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/rollup-plugin-sourcemaps/-/rollup-plugin-sourcemaps-0.6.3.tgz", + "integrity": "sha512-paFu+nT1xvuO1tPFYXGe+XnQvg4Hjqv/eIhG8i5EspfYYPBKL57X7iVbfv55aNVASg3dzWvES9dmWsL2KhfByw==", "dev": true, "requires": { - "estree-walker": "^0.6.1" + "@rollup/pluginutils": "^3.0.9", + "source-map-resolve": "^0.6.0" } }, "run-async": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.4.0.tgz", - "integrity": "sha512-xJTbh/d7Lm7SBhc1tNvTpeCHaEzoyxPrqNlvSdMfBTYwaY++UJFyXUOxAtsRUXjlqOfj8luNaR9vjCh4KeV+pg==", - "dev": true, - "requires": { - "is-promise": "^2.1.0" - } + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.4.1.tgz", + "integrity": "sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==", + "dev": true }, - "run-queue": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/run-queue/-/run-queue-1.0.3.tgz", - "integrity": "sha1-6Eg5bwV9Ij8kOGkkYY4laUFh7Ec=", + "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": { - "aproba": "^1.1.1" + "queue-microtask": "^1.2.2" } }, "rxjs": { - "version": "6.4.0", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.4.0.tgz", - "integrity": "sha512-Z9Yfa11F6B9Sg/BK9MnqnQ+aQYicPLtilXBp2yUtDt2JRCE0h26d33EnfO3ZxoNxG0T92OUucP3Ct7cpfkdFfw==", + "version": "7.6.0", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.6.0.tgz", + "integrity": "sha512-DDa7d8TFNUalGC9VqXvQ1euWNN7sc63TrUCuM9J998+ViviahMIjKSOU7rfcgFOF+FCD71BhDRv4hrFz+ImDLQ==", "requires": { - "tslib": "^1.9.0" + "tslib": "^2.1.0" } }, "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==", + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", "dev": true }, - "safe-regex": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz", - "integrity": "sha1-QKNmnzsHfR6UPURinhV91IAjvy4=", - "dev": true, - "requires": { - "ret": "~0.1.10" - } - }, "safer-buffer": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", @@ -10329,33 +8653,24 @@ "dev": true }, "sass": { - "version": "1.22.9", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.22.9.tgz", - "integrity": "sha512-FzU1X2V8DlnqabrL4u7OBwD2vcOzNMongEJEx3xMEhWY/v26FFR3aG0hyeu2T965sfR0E9ufJwmG+Qjz78vFPQ==", + "version": "1.54.4", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.54.4.tgz", + "integrity": "sha512-3tmF16yvnBwtlPrNBHw/H907j8MlOX8aTBnlNX1yrKx24RKcJGPyLhFUwkoKBKesR3unP93/2z14Ll8NicwQUA==", "dev": true, "requires": { - "chokidar": ">=2.0.0 <4.0.0" + "chokidar": ">=3.0.0 <4.0.0", + "immutable": "^4.0.0", + "source-map-js": ">=0.6.2 <2.0.0" } }, "sass-loader": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/sass-loader/-/sass-loader-7.2.0.tgz", - "integrity": "sha512-h8yUWaWtsbuIiOCgR9fd9c2lRXZ2uG+h8Dzg/AGNj+Hg/3TO8+BBAW9mEP+mh8ei+qBKqSJ0F1FLlYjNBc61OA==", + "version": "13.0.2", + "resolved": "https://registry.npmjs.org/sass-loader/-/sass-loader-13.0.2.tgz", + "integrity": "sha512-BbiqbVmbfJaWVeOOAu2o7DhYWtcNmTfvroVgFXa6k2hHheMxNAeDHLNoDy/Q5aoaVlz0LH+MbMktKwm9vN/j8Q==", "dev": true, "requires": { - "clone-deep": "^4.0.1", - "loader-utils": "^1.0.1", - "neo-async": "^2.5.0", - "pify": "^4.0.1", - "semver": "^5.5.0" - }, - "dependencies": { - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "dev": true - } + "klona": "^2.0.4", + "neo-async": "^2.6.2" } }, "saucelabs": { @@ -10365,29 +8680,79 @@ "dev": true, "requires": { "https-proxy-agent": "^2.2.1" - } - }, - "sax": { - "version": "0.5.8", - "resolved": "https://registry.npmjs.org/sax/-/sax-0.5.8.tgz", - "integrity": "sha1-1HLbIo6zMcJQaw6MFVJK25OdEsE=", - "dev": true - }, + }, + "dependencies": { + "agent-base": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-4.3.0.tgz", + "integrity": "sha512-salcGninV0nPrwpGNn4VTXBb1SOuXQBiqbrNXoeizJsHrsL6ERFM2Ne3JUSBWRE6aeNJI2ROP/WEEIDUiDe3cg==", + "dev": true, + "requires": { + "es6-promisify": "^5.0.0" + } + }, + "debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + }, + "https-proxy-agent": { + "version": "2.2.4", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-2.2.4.tgz", + "integrity": "sha512-OmvfoQ53WLjtA9HeYP9RNrWMJzzAz1JGaSFr1nijg0PVR1JaD/xbJq1mdEIIlxGpXp9eSe/O2LgU9DJmTPd0Eg==", + "dev": true, + "requires": { + "agent-base": "^4.3.0", + "debug": "^3.1.0" + } + } + } + }, + "sax": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", + "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==", + "dev": true + }, "schema-utils": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-1.0.0.tgz", - "integrity": "sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g==", + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-2.7.1.tgz", + "integrity": "sha512-SHiNtMOUGWBQJwzISiVYKu82GiV4QYGePp3odlY1tuKO7gPtphAT5R/py0fA6xtbgLL/RvtJZnU9b8s0F1q0Xg==", "dev": true, "requires": { - "ajv": "^6.1.0", - "ajv-errors": "^1.0.0", - "ajv-keywords": "^3.1.0" + "@types/json-schema": "^7.0.5", + "ajv": "^6.12.4", + "ajv-keywords": "^3.5.2" + }, + "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" + } + }, + "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 + } } }, "select-hose": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/select-hose/-/select-hose-2.0.0.tgz", - "integrity": "sha1-Yl2GWPhlr0Psliv8N2o3NZpJlMo=", + "integrity": "sha512-mEugaLK+YfkijB4fx0e6kImuJdCIt2LxCRcbEYPqRGCs4F2ogyfZU5IAZRdjCP8JPq2AtdNoC/Dux63d9Kiryg==", "dev": true }, "selenium-webdriver": { @@ -10402,10 +8767,42 @@ "xml2js": "^0.4.17" }, "dependencies": { + "glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "dev": true, + "requires": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + }, + "minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "requires": { + "brace-expansion": "^1.1.7" + } + }, + "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=", + "integrity": "sha512-HXdTB7lvMwcb55XFfrTM8CPr/IYREk4hVBFaQ4b/6nInrluSL86hfHm7vu0luYKCfyBZp2trCjpc8caC3vVM3w==", "dev": true, "requires": { "os-tmpdir": "~1.0.1" @@ -10414,41 +8811,38 @@ } }, "selfsigned": { - "version": "1.10.7", - "resolved": "https://registry.npmjs.org/selfsigned/-/selfsigned-1.10.7.tgz", - "integrity": "sha512-8M3wBCzeWIJnQfl43IKwOmC4H/RAp50S8DF60znzjW5GVqTcSe2vWclt7hmYVPkKPlHWOu5EaWOMZ2Y6W8ZXTA==", + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/selfsigned/-/selfsigned-2.1.1.tgz", + "integrity": "sha512-GSL3aowiF7wa/WtSFwnUrludWFoNhftq8bUkH9pkzjpN2XSPOAYEgg6e0sS9s0rZwgJzJiQRPU18A6clnoW5wQ==", "dev": true, "requires": { - "node-forge": "0.9.0" + "node-forge": "^1" } }, "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - }, - "semver-diff": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/semver-diff/-/semver-diff-2.1.0.tgz", - "integrity": "sha1-S7uEN8jTfksM8aaP1ybsbWRdbTY=", + "version": "7.3.7", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.7.tgz", + "integrity": "sha512-QlYTucUYOews+WeEujDoEGziz4K6c47V/Bd+LjSSYcA94p+DmINdf7ncaUinThfvZyu13lN9OY1XDxt8C0Tw0g==", "dev": true, "requires": { - "semver": "^5.0.3" + "lru-cache": "^6.0.0" }, "dependencies": { - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "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" + } } } }, "semver-dsl": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/semver-dsl/-/semver-dsl-1.0.1.tgz", - "integrity": "sha1-02eN5VVeimH2Ke7QJTZq5fJzQKA=", + "integrity": "sha512-e8BOaTo007E3dMuQQTnPdalbKTABKNS7UxoBIDnwOqRa+QwMrCPjynB8zAlPF6xlqUfdLPPLIJ13hJNmhtq8Ng==", "dev": true, "requires": { "semver": "^5.3.0" @@ -10462,42 +8856,25 @@ } } }, - "semver-intersect": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/semver-intersect/-/semver-intersect-1.4.0.tgz", - "integrity": "sha512-d8fvGg5ycKAq0+I6nfWeCx6ffaWJCsBYU0H2Rq56+/zFePYfT8mXkB3tWBSjR5BerkHNZ5eTPIk1/LBYas35xQ==", - "dev": true, - "requires": { - "semver": "^5.0.0" - }, - "dependencies": { - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "dev": true - } - } - }, "send": { - "version": "0.17.1", - "resolved": "https://registry.npmjs.org/send/-/send-0.17.1.tgz", - "integrity": "sha512-BsVKsiGcQMFwT8UxypobUKyv7irCNRHk1T0G680vk88yf6LBByGcZJOTJCrTP2xVN6yI+XjPJcNuE3V4fT9sAg==", + "version": "0.18.0", + "resolved": "https://registry.npmjs.org/send/-/send-0.18.0.tgz", + "integrity": "sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==", "dev": true, "requires": { "debug": "2.6.9", - "depd": "~1.1.2", - "destroy": "~1.0.4", + "depd": "2.0.0", + "destroy": "1.2.0", "encodeurl": "~1.0.2", "escape-html": "~1.0.3", "etag": "~1.8.1", "fresh": "0.5.2", - "http-errors": "~1.7.2", + "http-errors": "2.0.0", "mime": "1.6.0", - "ms": "2.1.1", - "on-finished": "~2.3.0", + "ms": "2.1.3", + "on-finished": "2.4.1", "range-parser": "~1.2.1", - "statuses": "~1.5.0" + "statuses": "2.0.1" }, "dependencies": { "debug": { @@ -10512,29 +8889,32 @@ "ms": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", "dev": true } } }, "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==", + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", "dev": true } } }, "serialize-javascript": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-2.1.2.tgz", - "integrity": "sha512-rs9OggEUF0V4jUSecXazOYsLfu7OGK2qIn3c7IPBiffz32XniEp/TX9Xmc9LQfK2nQ2QKHvZ2oygKUGU0lG4jQ==", - "dev": true + "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" + } }, "serve-index": { "version": "1.9.1", "resolved": "https://registry.npmjs.org/serve-index/-/serve-index-1.9.1.tgz", - "integrity": "sha1-03aNabHn2C5c4FD/9bRTvqEqkjk=", + "integrity": "sha512-pXHfKNP4qujrtteMrSBb0rc8HJ9Ms/GrXwcUtUtD5s4ewDJI8bT3Cz2zTVRMKtri49pLx2e0Ya8ziP5Ya2pZZw==", "dev": true, "requires": { "accepts": "~1.3.4", @@ -10555,10 +8935,16 @@ "ms": "2.0.0" } }, + "depd": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", + "integrity": "sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==", + "dev": true + }, "http-errors": { "version": "1.6.3", "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz", - "integrity": "sha1-i1VoC7S+KDoLW/TqLjhYC+HZMg0=", + "integrity": "sha512-lks+lVC8dgGyh97jxvxeYTWQFvh4uw4yC12gVl63Cg30sjPX4wuGcdkICVXDAESr6OJGjqGA8Iz5mkeN6zlD7A==", "dev": true, "requires": { "depd": "~1.1.2", @@ -10570,13 +8956,13 @@ "inherits": { "version": "2.0.3", "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=", + "integrity": "sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw==", "dev": true }, "ms": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", "dev": true }, "setprototypeof": { @@ -10584,78 +8970,45 @@ "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz", "integrity": "sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==", "dev": true + }, + "statuses": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", + "integrity": "sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA==", + "dev": true } } }, "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==", + "version": "1.15.0", + "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.15.0.tgz", + "integrity": "sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==", "dev": true, "requires": { "encodeurl": "~1.0.2", "escape-html": "~1.0.3", "parseurl": "~1.3.3", - "send": "0.17.1" + "send": "0.18.0" } }, "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 - }, - "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=", + "integrity": "sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==", "dev": true }, - "set-value": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/set-value/-/set-value-2.0.1.tgz", - "integrity": "sha512-JxHc1weCN68wRY0fhCoXpyK55m/XPHafOmK4UWD7m2CI14GMcFypt4w/0+NV5f/ZMby2F6S2wwA7fgynh9gWSw==", - "dev": true, - "requires": { - "extend-shallow": "^2.0.1", - "is-extendable": "^0.1.1", - "is-plain-object": "^2.0.3", - "split-string": "^3.0.1" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, "setimmediate": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", - "integrity": "sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU=", + "integrity": "sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA==", "dev": true }, "setprototypeof": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.1.tgz", - "integrity": "sha512-JvdAWfbXeIGaZ9cILp38HntZSFSo3mWg6xGcJJsd+d4aRMOqauag1C63dJfDw7OaMYwEbHMOxEZ1lqVRYP2OAw==", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", + "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==", "dev": true }, - "sha.js": { - "version": "2.4.11", - "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz", - "integrity": "sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==", - "dev": true, - "requires": { - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" - } - }, "shallow-clone": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/shallow-clone/-/shallow-clone-3.0.1.tgz", @@ -10666,431 +9019,173 @@ } }, "shebang-command": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", - "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=", + "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": "^1.0.0" + "shebang-regex": "^3.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=", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", "dev": true }, + "side-channel": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", + "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", + "dev": true, + "requires": { + "call-bind": "^1.0.0", + "get-intrinsic": "^1.0.2", + "object-inspect": "^1.9.0" + } + }, "signal-exit": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.2.tgz", - "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=", + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", + "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", "dev": true }, "slash": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-1.0.0.tgz", - "integrity": "sha1-xB8vbDn8FtHNF61LXYlhFK5HDVU=", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-4.0.0.tgz", + "integrity": "sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==", "dev": true }, "smart-buffer": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.1.0.tgz", - "integrity": "sha512-iVICrxOzCynf/SNaBQCw34eM9jROU/s5rzIhpOvzhzuYHfJR/DhZfDkXiZSgKXfgv26HT3Yni3AV/DGw0cGnnw==", + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.2.0.tgz", + "integrity": "sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==", "dev": true }, - "snapdragon": { - "version": "0.8.2", - "resolved": "https://registry.npmjs.org/snapdragon/-/snapdragon-0.8.2.tgz", - "integrity": "sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg==", + "socket.io": { + "version": "4.5.4", + "resolved": "https://registry.npmjs.org/socket.io/-/socket.io-4.5.4.tgz", + "integrity": "sha512-m3GC94iK9MfIEeIBfbhJs5BqFibMtkRk8ZpKwG2QwxV0m/eEhPIV4ara6XCF1LWNAus7z58RodiZlAH71U3EhQ==", "dev": true, "requires": { - "base": "^0.11.1", - "debug": "^2.2.0", - "define-property": "^0.2.5", - "extend-shallow": "^2.0.1", - "map-cache": "^0.2.2", - "source-map": "^0.5.6", - "source-map-resolve": "^0.5.0", - "use": "^3.1.0" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "dev": true, - "requires": { - "is-descriptor": "^0.1.0" - } - }, - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true - }, - "source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", - "dev": true - } + "accepts": "~1.3.4", + "base64id": "~2.0.0", + "debug": "~4.3.2", + "engine.io": "~6.2.1", + "socket.io-adapter": "~2.4.0", + "socket.io-parser": "~4.2.1" } }, - "snapdragon-node": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/snapdragon-node/-/snapdragon-node-2.1.1.tgz", - "integrity": "sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw==", + "socket.io-adapter": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/socket.io-adapter/-/socket.io-adapter-2.4.0.tgz", + "integrity": "sha512-W4N+o69rkMEGVuk2D/cvca3uYsvGlMwsySWV447y99gUPghxq42BxqLNMndb+a1mm/5/7NeXVQS7RLa2XyXvYg==", + "dev": true + }, + "socket.io-parser": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/socket.io-parser/-/socket.io-parser-4.2.1.tgz", + "integrity": "sha512-V4GrkLy+HeF1F/en3SpUaM+7XxYXpuMUWLGde1kSSh5nQMN4hLrbPIkD+otwh6q9R6NOQBN4AMaOZ2zVjui82g==", "dev": true, "requires": { - "define-property": "^1.0.0", - "isobject": "^3.0.0", - "snapdragon-util": "^3.0.1" - }, - "dependencies": { - "define-property": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", - "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", - "dev": true, - "requires": { - "is-descriptor": "^1.0.0" - } - }, - "is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-data-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", - "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-descriptor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", - "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", - "dev": true, - "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - } - } + "@socket.io/component-emitter": "~3.1.0", + "debug": "~4.3.1" } }, - "snapdragon-util": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/snapdragon-util/-/snapdragon-util-3.0.1.tgz", - "integrity": "sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ==", + "sockjs": { + "version": "0.3.24", + "resolved": "https://registry.npmjs.org/sockjs/-/sockjs-0.3.24.tgz", + "integrity": "sha512-GJgLTZ7vYb/JtPSSZ10hsOYIvEYsjbNU+zPdIHcUaWVNUEPivzxku31865sSSud0Da0W4lEeOPlmw93zLQchuQ==", "dev": true, "requires": { - "kind-of": "^3.2.0" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } + "faye-websocket": "^0.11.3", + "uuid": "^8.3.2", + "websocket-driver": "^0.7.4" } }, - "socket.io": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/socket.io/-/socket.io-2.1.1.tgz", - "integrity": "sha512-rORqq9c+7W0DAK3cleWNSyfv/qKXV99hV4tZe+gGLfBECw3XEhBy7x85F3wypA9688LKjtwO9pX9L33/xQI8yA==", + "socks": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/socks/-/socks-2.7.1.tgz", + "integrity": "sha512-7maUZy1N7uo6+WVEX6psASxtNlKaNVMlGQKkG/63nEDdLOWNbiUMoLK7X4uYoLhQstau72mLgfEWcXcwsaHbYQ==", "dev": true, "requires": { - "debug": "~3.1.0", - "engine.io": "~3.2.0", - "has-binary2": "~1.0.2", - "socket.io-adapter": "~1.1.0", - "socket.io-client": "2.1.1", - "socket.io-parser": "~3.2.0" - }, - "dependencies": { - "debug": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", - "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true - } + "ip": "^2.0.0", + "smart-buffer": "^4.2.0" } }, - "socket.io-adapter": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/socket.io-adapter/-/socket.io-adapter-1.1.2.tgz", - "integrity": "sha512-WzZRUj1kUjrTIrUKpZLEzFZ1OLj5FwLlAFQs9kuZJzJi5DKdU7FsWc36SNmA8iDOtwBQyT8FkrriRM8vXLYz8g==", + "socks-proxy-agent": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-7.0.0.tgz", + "integrity": "sha512-Fgl0YPZ902wEsAyiQ+idGd1A7rSFx/ayC1CQVMw5P+EQx2V0SgpGtf6OKFhVjPflPUl9YMmEOnmfjCdMUsygww==", + "dev": true, + "requires": { + "agent-base": "^6.0.2", + "debug": "^4.3.3", + "socks": "^2.6.2" + } + }, + "source-map": { + "version": "0.7.4", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz", + "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==", "dev": true }, - "socket.io-client": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/socket.io-client/-/socket.io-client-2.1.1.tgz", - "integrity": "sha512-jxnFyhAuFxYfjqIgduQlhzqTcOEQSn+OHKVfAxWaNWa7ecP7xSNk2Dx/3UEsDcY7NcFafxvNvKPmmO7HTwTxGQ==", - "dev": true, - "requires": { - "backo2": "1.0.2", - "base64-arraybuffer": "0.1.5", - "component-bind": "1.0.0", - "component-emitter": "1.2.1", - "debug": "~3.1.0", - "engine.io-client": "~3.2.0", - "has-binary2": "~1.0.2", - "has-cors": "1.1.0", - "indexof": "0.0.1", - "object-component": "0.0.3", - "parseqs": "0.0.5", - "parseuri": "0.0.5", - "socket.io-parser": "~3.2.0", - "to-array": "0.1.4" + "source-map-js": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz", + "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==", + "dev": true + }, + "source-map-loader": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/source-map-loader/-/source-map-loader-4.0.0.tgz", + "integrity": "sha512-i3KVgM3+QPAHNbGavK+VBq03YoJl24m9JWNbLgsjTj8aJzXG9M61bantBTNBt7CNwY2FYf+RJRYJ3pzalKjIrw==", + "dev": true, + "requires": { + "abab": "^2.0.6", + "iconv-lite": "^0.6.3", + "source-map-js": "^1.0.2" }, "dependencies": { - "component-emitter": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.2.1.tgz", - "integrity": "sha1-E3kY1teCg/ffemt8WmPhQOaUJeY=", - "dev": true - }, - "debug": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", - "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", + "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==", "dev": true, "requires": { - "ms": "2.0.0" + "safer-buffer": ">= 2.1.2 < 3.0.0" } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true } } }, - "socket.io-parser": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/socket.io-parser/-/socket.io-parser-3.2.0.tgz", - "integrity": "sha512-FYiBx7rc/KORMJlgsXysflWx/RIvtqZbyGLlHZvjfmPTPeuD/I8MaW7cfFrj5tRltICJdgwflhfZ3NVVbVLFQA==", + "source-map-resolve": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.6.0.tgz", + "integrity": "sha512-KXBr9d/fO/bWo97NXsPIAW1bFSBOuCnjbNTBMO7N59hsv5i9yzRDfcYwwt0l04+VqnKC+EwzvJZIP/qkuMgR/w==", + "dev": true, + "requires": { + "atob": "^2.1.2", + "decode-uri-component": "^0.2.0" + } + }, + "source-map-support": { + "version": "0.5.21", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", + "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", "dev": true, "requires": { - "component-emitter": "1.2.1", - "debug": "~3.1.0", - "isarray": "2.0.1" + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" }, "dependencies": { - "component-emitter": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.2.1.tgz", - "integrity": "sha1-E3kY1teCg/ffemt8WmPhQOaUJeY=", - "dev": true - }, - "debug": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", - "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "isarray": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.1.tgz", - "integrity": "sha1-o32U7ZzaLVmGXJ92/llu4fM4dB4=", - "dev": true - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true - } - } - }, - "sockjs": { - "version": "0.3.19", - "resolved": "https://registry.npmjs.org/sockjs/-/sockjs-0.3.19.tgz", - "integrity": "sha512-V48klKZl8T6MzatbLlzzRNhMepEys9Y4oGFpypBFFn1gLI/QQ9HtLLyWJNbPlwGLelOVOEijUbTTJeLLI59jLw==", - "dev": true, - "requires": { - "faye-websocket": "^0.10.0", - "uuid": "^3.0.1" - } - }, - "sockjs-client": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/sockjs-client/-/sockjs-client-1.4.0.tgz", - "integrity": "sha512-5zaLyO8/nri5cua0VtOrFXBPK1jbL4+1cebT/mmKA1E1ZXOvJrII75bPu0l0k843G/+iAbhEqzyKr0w/eCCj7g==", - "dev": true, - "requires": { - "debug": "^3.2.5", - "eventsource": "^1.0.7", - "faye-websocket": "~0.11.1", - "inherits": "^2.0.3", - "json3": "^3.3.2", - "url-parse": "^1.4.3" - }, - "dependencies": { - "debug": { - "version": "3.2.6", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", - "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - }, - "faye-websocket": { - "version": "0.11.3", - "resolved": "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.11.3.tgz", - "integrity": "sha512-D2y4bovYpzziGgbHYtGCMjlJM36vAl/y+xUyn1C+FVx8szd1E+86KwVw6XvYSzOP8iMpm1X0I4xJD+QtUb36OA==", - "dev": true, - "requires": { - "websocket-driver": ">=0.5.1" - } - } - } - }, - "socks": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/socks/-/socks-2.3.3.tgz", - "integrity": "sha512-o5t52PCNtVdiOvzMry7wU4aOqYWL0PeCXRWBEiJow4/i/wr+wpsJQ9awEu1EonLIqsfGd5qSgDdxEOvCdmBEpA==", - "dev": true, - "requires": { - "ip": "1.1.5", - "smart-buffer": "^4.1.0" - } - }, - "socks-proxy-agent": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-4.0.2.tgz", - "integrity": "sha512-NT6syHhI9LmuEMSK6Kd2V7gNv5KFZoLE7V5udWmn0de+3Mkj3UMA/AJPLyeNUVmElCurSHtUdM3ETpR3z770Wg==", - "dev": true, - "requires": { - "agent-base": "~4.2.1", - "socks": "~2.3.2" - }, - "dependencies": { - "agent-base": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-4.2.1.tgz", - "integrity": "sha512-JVwXMr9nHYTUXsBFKUqhJwvlcYU/blreOEUkhNR2eXZIvwd+c+o5V4MgDPKWnMS/56awN3TRzIP+KoPn+roQtg==", - "dev": true, - "requires": { - "es6-promisify": "^5.0.0" - } - } - } - }, - "sort-keys": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/sort-keys/-/sort-keys-1.1.2.tgz", - "integrity": "sha1-RBttTTRnmPG05J6JIK37oOVD+a0=", - "dev": true, - "requires": { - "is-plain-obj": "^1.0.0" - } - }, - "source-list-map": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/source-list-map/-/source-list-map-2.0.1.tgz", - "integrity": "sha512-qnQ7gVMxGNxsiL4lEuJwe/To8UnK7fAnmbGEEH8RpLouuKbeEm0lhbQVFIrNSuB+G7tVrAlVsZgETT5nljf+Iw==", - "dev": true - }, - "source-map": { - "version": "0.7.3", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz", - "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==", - "dev": true - }, - "source-map-loader": { - "version": "0.2.4", - "resolved": "https://registry.npmjs.org/source-map-loader/-/source-map-loader-0.2.4.tgz", - "integrity": "sha512-OU6UJUty+i2JDpTItnizPrlpOIBLmQbWMuBg9q5bVtnHACqw1tn9nNwqJLbv0/00JjnJb/Ee5g5WS5vrRv7zIQ==", - "dev": true, - "requires": { - "async": "^2.5.0", - "loader-utils": "^1.1.0" - } - }, - "source-map-resolve": { - "version": "0.5.3", - "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.3.tgz", - "integrity": "sha512-Htz+RnsXWk5+P2slx5Jh3Q66vhQj1Cllm0zvnaY98+NFx+Dv2CF/f5O/t8x+KaNdrdIAsruNzoh/KpialbqAnw==", - "dev": true, - "requires": { - "atob": "^2.1.2", - "decode-uri-component": "^0.2.0", - "resolve-url": "^0.2.1", - "source-map-url": "^0.4.0", - "urix": "^0.1.0" - } - }, - "source-map-support": { - "version": "0.5.13", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.13.tgz", - "integrity": "sha512-SHSKFHadjVA5oR4PPqhtAVdcBWwRYVd6g6cAXnIbRiIwc2EhPrTuKUBdSLvlEKyIP3GCf89fltvcZiP9MMFA1w==", - "dev": true, - "requires": { - "buffer-from": "^1.0.0", - "source-map": "^0.6.0" - }, - "dependencies": { - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "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-url": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/source-map-url/-/source-map-url-0.4.0.tgz", - "integrity": "sha1-PpNdfd1zYxuXZZlW1VEo6HtQhKM=", - "dev": true - }, "sourcemap-codec": { "version": "1.4.8", "resolved": "https://registry.npmjs.org/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz", @@ -11098,9 +9193,9 @@ "dev": true }, "spdx-correct": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.0.tgz", - "integrity": "sha512-lr2EZCctC2BNR7j7WzJ2FpDznxky1sjfxvvYEyzxNyb6lZXHODmEoJeFu4JupYlkfha1KZpJyoqiJ7pgA1qq8Q==", + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz", + "integrity": "sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==", "dev": true, "requires": { "spdx-expression-parse": "^3.0.0", @@ -11108,15 +9203,15 @@ } }, "spdx-exceptions": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.2.0.tgz", - "integrity": "sha512-2XQACfElKi9SlVb1CYadKDXvoajPgBVPn/gOQLrTvHdElaVhr7ZEbqJaRnJLVNeaI4cMEAgVCeBMKF6MWRDCRA==", + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz", + "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==", "dev": true }, "spdx-expression-parse": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.0.tgz", - "integrity": "sha512-Yg6D3XpRD4kkOmTpdgbUiEJFKghJH03fiC1OPll5h/0sO6neh2jqRDVHOQ4o/LMea0tgCkbMgea5ip/e+MkWyg==", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", + "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", "dev": true, "requires": { "spdx-exceptions": "^2.1.0", @@ -11124,15 +9219,15 @@ } }, "spdx-license-ids": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.5.tgz", - "integrity": "sha512-J+FWzZoynJEXGphVIS+XEh3kFSjZX/1i9gFBaWQcB+/tmpe2qUsSBABpcxqxnAxFdiUFEgAX1bjYGQvIZmoz9Q==", + "version": "3.0.12", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.12.tgz", + "integrity": "sha512-rr+VVSXtRhO4OHbXUiAF7xW3Bo9DuuF6C5jH+q/x15j2jniycgKbxU09Hr0WqlSLUs4i4ltHGXqTe7VHclYWyA==", "dev": true }, "spdy": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/spdy/-/spdy-4.0.1.tgz", - "integrity": "sha512-HeZS3PBdMA+sZSu0qwpCxl3DeALD5ASx8pAX0jZdKXSpPWbQ6SYGnlg3BBmYLx5LtiZrmkAZfErCm2oECBcioA==", + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/spdy/-/spdy-4.0.2.tgz", + "integrity": "sha512-r46gZQZQV+Kl9oItvl1JZZqJKGr+oEkB08A6BzkiR7593/7IbtuncXHd2YoYeTsG4157ZssMu9KYvUHLcjcDoA==", "dev": true, "requires": { "debug": "^4.1.0", @@ -11154,49 +9249,18 @@ "obuf": "^1.1.2", "readable-stream": "^3.0.6", "wbuf": "^1.7.3" - }, - "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==", - "dev": true, - "requires": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - } - } - } - }, - "speed-measure-webpack-plugin": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/speed-measure-webpack-plugin/-/speed-measure-webpack-plugin-1.3.1.tgz", - "integrity": "sha512-qVIkJvbtS9j/UeZumbdfz0vg+QfG/zxonAjzefZrqzkr7xOncLVXkeGbTpzd1gjCBM4PmVNkWlkeTVhgskAGSQ==", - "dev": true, - "requires": { - "chalk": "^2.0.1" - } - }, - "split-string": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/split-string/-/split-string-3.1.0.tgz", - "integrity": "sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw==", - "dev": true, - "requires": { - "extend-shallow": "^3.0.0" } }, "sprintf-js": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", + "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", "dev": true }, "sshpk": { - "version": "1.16.1", - "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.16.1.tgz", - "integrity": "sha512-HXXqVUq7+pcKeLqqZj6mHFUMvXtOJt1uoUx09pFW6011inTMxqI8BA8PM95myrIyyKwdnzjdFjLiE6KBPVtJIg==", + "version": "1.17.0", + "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.17.0.tgz", + "integrity": "sha512-/9HIEs1ZXGhSPE8X6Ccm7Nam1z8KcoCqPdI7ecm1N33EzAetWahvQWVqLZtaZQ+IDKX4IyA2o0gBzqIMkAagHQ==", "dev": true, "requires": { "asn1": "~0.2.3", @@ -11211,263 +9275,113 @@ } }, "ssri": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/ssri/-/ssri-6.0.1.tgz", - "integrity": "sha512-3Wge10hNcT1Kur4PDFwEieXSCMCJs/7WvSACcrMYrNp+b8kDL1/0wJch5Ni2WrtwEa2IO8OsVfeKIciKCDx/QA==", - "dev": true, - "requires": { - "figgy-pudding": "^3.5.1" - } - }, - "static-extend": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/static-extend/-/static-extend-0.1.2.tgz", - "integrity": "sha1-YICcOcv/VTNyJv1eC1IPNB8ftcY=", + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/ssri/-/ssri-9.0.1.tgz", + "integrity": "sha512-o57Wcn66jMQvfHG1FlYbWeZWW/dHZhJXjpIcTfXldXEk5nz5lStPo3mK0OJQfGR3RbZUlbISexbljkJzuEj/8Q==", "dev": true, "requires": { - "define-property": "^0.2.5", - "object-copy": "^0.1.0" - }, - "dependencies": { - "define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "dev": true, - "requires": { - "is-descriptor": "^0.1.0" - } - } + "minipass": "^3.1.1" } }, "statuses": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", - "integrity": "sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow=", - "dev": true - }, - "stream-browserify": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/stream-browserify/-/stream-browserify-2.0.2.tgz", - "integrity": "sha512-nX6hmklHs/gr2FuxYDltq8fJA1GDlxKQCz8O/IM4atRqBH8OORmBNgfvW5gG10GT/qQ9u0CzIvr2X5Pkt6ntqg==", - "dev": true, - "requires": { - "inherits": "~2.0.1", - "readable-stream": "^2.0.2" - } - }, - "stream-each": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/stream-each/-/stream-each-1.2.3.tgz", - "integrity": "sha512-vlMC2f8I2u/bZGqkdfLQW/13Zihpej/7PmSiMQsbYddxuTsJp8vRe2x2FvVExZg7FaOds43ROAuFJwPR4MTZLw==", - "dev": true, - "requires": { - "end-of-stream": "^1.1.0", - "stream-shift": "^1.0.0" - } - }, - "stream-http": { - "version": "2.8.3", - "resolved": "https://registry.npmjs.org/stream-http/-/stream-http-2.8.3.tgz", - "integrity": "sha512-+TSkfINHDo4J+ZobQLWiMouQYB+UVYFttRA94FpEzzJ7ZdqcL4uUUQ7WkdkI4DSozGmgBUE/a47L+38PenXhUw==", - "dev": true, - "requires": { - "builtin-status-codes": "^3.0.0", - "inherits": "^2.0.1", - "readable-stream": "^2.3.6", - "to-arraybuffer": "^1.0.0", - "xtend": "^4.0.0" - } - }, - "stream-shift": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/stream-shift/-/stream-shift-1.0.1.tgz", - "integrity": "sha512-AiisoFqQ0vbGcZgQPY1cdP2I76glaVA/RauYR4G4thNFgkTqr90yXTo4LYX60Jl+sIlPNHHdGSwo01AvbKUSVQ==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", + "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", "dev": true }, "streamroller": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/streamroller/-/streamroller-1.0.6.tgz", - "integrity": "sha512-3QC47Mhv3/aZNFpDDVO44qQb9gwB9QggMEE0sQmkTAwBVYdBRWISdsywlkfm5II1Q5y/pmrHflti/IgmIzdDBg==", + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/streamroller/-/streamroller-3.1.3.tgz", + "integrity": "sha512-CphIJyFx2SALGHeINanjFRKQ4l7x2c+rXYJ4BMq0gd+ZK0gi4VT8b+eHe2wi58x4UayBAKx4xtHpXT/ea1cz8w==", "dev": true, "requires": { - "async": "^2.6.2", - "date-format": "^2.0.0", - "debug": "^3.2.6", - "fs-extra": "^7.0.1", - "lodash": "^4.17.14" - }, - "dependencies": { - "debug": { - "version": "3.2.6", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", - "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - } + "date-format": "^4.0.14", + "debug": "^4.3.4", + "fs-extra": "^8.1.0" } }, - "strict-uri-encode": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/strict-uri-encode/-/strict-uri-encode-1.1.0.tgz", - "integrity": "sha1-J5siXfHVgrH1TmWt3UNS4Y+qBxM=", - "dev": true - }, "string-width": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", - "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", - "dev": true, - "requires": { - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^4.0.0" - }, - "dependencies": { - "ansi-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", - "dev": true - }, - "strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", - "dev": true, - "requires": { - "ansi-regex": "^3.0.0" - } - } - } - }, - "string.prototype.trimleft": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/string.prototype.trimleft/-/string.prototype.trimleft-2.1.1.tgz", - "integrity": "sha512-iu2AGd3PuP5Rp7x2kEZCrB2Nf41ehzh+goo8TV7z8/XDBbsvc6HQIlUl9RjkZ4oyrW1XM5UwlGl1oVEaDjg6Ag==", - "dev": true, - "requires": { - "define-properties": "^1.1.3", - "function-bind": "^1.1.1" - } - }, - "string.prototype.trimright": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/string.prototype.trimright/-/string.prototype.trimright-2.1.1.tgz", - "integrity": "sha512-qFvWL3/+QIgZXVmJBfpHmxLB7xsUXz6HsUmP8+5dRaC3Q7oKUv9Vo6aMCRZC1smrtyECFsIT30PqBJ1gTjAs+g==", + "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": { - "define-properties": "^1.1.3", - "function-bind": "^1.1.1" + "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==", + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", "dev": true, "requires": { - "safe-buffer": "~5.1.0" + "safe-buffer": "~5.2.0" } }, "strip-ansi": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "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": "^2.0.0" + "ansi-regex": "^5.0.1" } }, - "strip-bom": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", - "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=", - "dev": true - }, - "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=", + "strip-final-newline": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz", + "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==", "dev": true }, - "style-loader": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/style-loader/-/style-loader-1.0.0.tgz", - "integrity": "sha512-B0dOCFwv7/eY31a5PCieNwMgMhVGFe9w+rh7s/Bx8kfFkrth9zfTZquoYvdw8URgiqxObQKcpW51Ugz1HjfdZw==", - "dev": true, - "requires": { - "loader-utils": "^1.2.3", - "schema-utils": "^2.0.1" - }, - "dependencies": { - "schema-utils": { - "version": "2.6.4", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-2.6.4.tgz", - "integrity": "sha512-VNjcaUxVnEeun6B2fiiUDjXXBtD4ZSH7pdbfIu1pOFwgptDPLMo/z9jr4sUfsjFVPqDCEin/F7IYlq7/E6yDbQ==", - "dev": true, - "requires": { - "ajv": "^6.10.2", - "ajv-keywords": "^3.4.1" - } - } - } - }, "stylus": { - "version": "0.54.5", - "resolved": "https://registry.npmjs.org/stylus/-/stylus-0.54.5.tgz", - "integrity": "sha1-QrlWCTHKcJDOhRWnmLqeaqPW3Hk=", + "version": "0.59.0", + "resolved": "https://registry.npmjs.org/stylus/-/stylus-0.59.0.tgz", + "integrity": "sha512-lQ9w/XIOH5ZHVNuNbWW8D822r+/wBSO/d6XvtyHLF7LW4KaCIDeVbvn5DF8fGCJAUCwVhVi/h6J0NUcnylUEjg==", "dev": true, "requires": { - "css-parse": "1.7.x", - "debug": "*", - "glob": "7.0.x", - "mkdirp": "0.5.x", - "sax": "0.5.x", - "source-map": "0.1.x" + "@adobe/css-tools": "^4.0.1", + "debug": "^4.3.2", + "glob": "^7.1.6", + "sax": "~1.2.4", + "source-map": "^0.7.3" }, "dependencies": { "glob": { - "version": "7.0.6", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.0.6.tgz", - "integrity": "sha1-IRuvr0nlJbjNkyYNFKsTYVKz9Xo=", + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", "dev": true, "requires": { "fs.realpath": "^1.0.0", "inflight": "^1.0.4", "inherits": "2", - "minimatch": "^3.0.2", + "minimatch": "^3.1.1", "once": "^1.3.0", "path-is-absolute": "^1.0.0" } }, - "source-map": { - "version": "0.1.43", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.1.43.tgz", - "integrity": "sha1-wkvBRspRfBRx9drL4lcbK3+eM0Y=", + "minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", "dev": true, "requires": { - "amdefine": ">=0.0.4" + "brace-expansion": "^1.1.7" } } } }, "stylus-loader": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/stylus-loader/-/stylus-loader-3.0.2.tgz", - "integrity": "sha512-+VomPdZ6a0razP+zinir61yZgpw2NfljeSsdUF5kJuEzlo3khXhY19Fn6l8QQz1GRJGtMCo8nG5C04ePyV7SUA==", + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/stylus-loader/-/stylus-loader-7.0.0.tgz", + "integrity": "sha512-WTbtLrNfOfLgzTaR9Lj/BPhQroKk/LC1hfTXSUbrxmxgfUo3Y3LpmKRVA2R1XbjvTAvOfaian9vOyfv1z99E+A==", "dev": true, "requires": { - "loader-utils": "^1.0.2", - "lodash.clonedeep": "^4.5.0", - "when": "~3.6.x" + "fast-glob": "^3.2.11", + "klona": "^2.0.5", + "normalize-path": "^3.0.0" } }, "supports-color": { @@ -11479,178 +9393,159 @@ "has-flag": "^3.0.0" } }, + "supports-preserve-symlinks-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", + "dev": true + }, "symbol-observable": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/symbol-observable/-/symbol-observable-1.2.0.tgz", - "integrity": "sha512-e900nM8RRtGhlV36KGEU9k65K3mPb1WV70OdjfxlG2EAuM1noi/E/BaW/uMhL7bPEssK8QV57vN3esixjUvcXQ==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/symbol-observable/-/symbol-observable-4.0.0.tgz", + "integrity": "sha512-b19dMThMV4HVFynSAM1++gBHAbk2Tc/osgLIBZMKsyqh34jb2e8Os7T6ZW/Bt3pJFdBTd2JwAnAAEQV7rSNvcQ==", "dev": true }, "tapable": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/tapable/-/tapable-1.1.3.tgz", - "integrity": "sha512-4WK/bYZmj8xLr+HUCODHGF1ZFzsYffasLUgEiMBY4fgtltdO6B4WJtlSbPaDTLpYTcGVwM2qLnFTICEcNxs3kA==", + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz", + "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==", "dev": true }, "tar": { - "version": "4.4.13", - "resolved": "https://registry.npmjs.org/tar/-/tar-4.4.13.tgz", - "integrity": "sha512-w2VwSrBoHa5BsSyH+KxEqeQBAllHhccyMFVHtGtdMpF4W7IRWfZjFiQceJPChOeTsSDVUpER2T8FA93pr0L+QA==", + "version": "6.1.13", + "resolved": "https://registry.npmjs.org/tar/-/tar-6.1.13.tgz", + "integrity": "sha512-jdIBIN6LTIe2jqzay/2vtYLlBHa3JF42ot3h1dW8Q0PaAG4v8rm0cvpVePtau5C6OKXGGcgO9q2AMNSWxiLqKw==", "dev": true, "requires": { - "chownr": "^1.1.1", - "fs-minipass": "^1.2.5", - "minipass": "^2.8.6", - "minizlib": "^1.2.1", - "mkdirp": "^0.5.0", - "safe-buffer": "^5.1.2", - "yallist": "^3.0.3" + "chownr": "^2.0.0", + "fs-minipass": "^2.0.0", + "minipass": "^4.0.0", + "minizlib": "^2.1.1", + "mkdirp": "^1.0.3", + "yallist": "^4.0.0" + }, + "dependencies": { + "minipass": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-4.0.0.tgz", + "integrity": "sha512-g2Uuh2jEKoht+zvO6vJqXmYpflPqzRBT+Th2h01DKh5z7wbY/AZ2gCQ78cP70YoHPyFdY30YBV5WxgLOEwOykw==", + "dev": true, + "requires": { + "yallist": "^4.0.0" + } + } } }, - "term-size": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/term-size/-/term-size-1.2.0.tgz", - "integrity": "sha1-RYuDiH8oj8Vtb/+/rSYuJmOO+mk=", + "terser": { + "version": "5.14.2", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.14.2.tgz", + "integrity": "sha512-oL0rGeM/WFQCUd0y2QrWxYnq7tfSuKBiqTjRPWrRgB46WD/kiwHwF8T23z78H6Q6kGCuuHcPB+KULHRdxvVGQA==", + "dev": true, + "requires": { + "@jridgewell/source-map": "^0.3.2", + "acorn": "^8.5.0", + "commander": "^2.20.0", + "source-map-support": "~0.5.20" + } + }, + "terser-webpack-plugin": { + "version": "5.3.6", + "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.3.6.tgz", + "integrity": "sha512-kfLFk+PoLUQIbLmB1+PZDMRSZS99Mp+/MHqDNmMA6tOItzRt+Npe3E+fsMs5mfcM0wCtrrdU387UnV+vnSffXQ==", "dev": true, "requires": { - "execa": "^0.7.0" + "@jridgewell/trace-mapping": "^0.3.14", + "jest-worker": "^27.4.5", + "schema-utils": "^3.1.1", + "serialize-javascript": "^6.0.0", + "terser": "^5.14.1" }, "dependencies": { - "cross-spawn": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-5.1.0.tgz", - "integrity": "sha1-6L0O/uWPz/b4+UUQoKVUu/ojVEk=", - "dev": true, - "requires": { - "lru-cache": "^4.0.1", - "shebang-command": "^1.2.0", - "which": "^1.2.9" - } - }, - "execa": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/execa/-/execa-0.7.0.tgz", - "integrity": "sha1-lEvs00zEHuMqY6n68nrVpl/Fl3c=", + "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": { - "cross-spawn": "^5.0.1", - "get-stream": "^3.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" + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" } }, - "get-stream": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz", - "integrity": "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ=", + "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 }, - "lru-cache": { - "version": "4.1.5", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz", - "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==", + "schema-utils": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.1.tgz", + "integrity": "sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==", "dev": true, "requires": { - "pseudomap": "^1.0.2", - "yallist": "^2.1.2" + "@types/json-schema": "^7.0.8", + "ajv": "^6.12.5", + "ajv-keywords": "^3.5.2" } - }, - "yallist": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", - "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=", - "dev": true } } }, - "terser": { - "version": "4.6.3", - "resolved": "https://registry.npmjs.org/terser/-/terser-4.6.3.tgz", - "integrity": "sha512-Lw+ieAXmY69d09IIc/yqeBqXpEQIpDGZqT34ui1QWXIUpR2RjbqEkT8X7Lgex19hslSqcWM5iMN2kM11eMsESQ==", + "test-exclude": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz", + "integrity": "sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==", "dev": true, "requires": { - "commander": "^2.20.0", - "source-map": "~0.6.1", - "source-map-support": "~0.5.12" - }, - "dependencies": { - "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 - } - } - }, - "terser-webpack-plugin": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-1.4.3.tgz", - "integrity": "sha512-QMxecFz/gHQwteWwSo5nTc6UaICqN1bMedC5sMtUc7y3Ha3Q8y6ZO0iCR8pq4RJC8Hjf0FEPEHZqcMB/+DFCrA==", - "dev": true, - "requires": { - "cacache": "^12.0.2", - "find-cache-dir": "^2.1.0", - "is-wsl": "^1.1.0", - "schema-utils": "^1.0.0", - "serialize-javascript": "^2.1.2", - "source-map": "^0.6.1", - "terser": "^4.1.2", - "webpack-sources": "^1.4.0", - "worker-farm": "^1.7.0" + "@istanbuljs/schema": "^0.1.2", + "glob": "^7.1.4", + "minimatch": "^3.0.4" }, "dependencies": { - "find-cache-dir": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-2.1.0.tgz", - "integrity": "sha512-Tq6PixE0w/VMFfCgbONnkiQIVol/JJL7nRMi20fqzA4NRs9AfeqMGeRdPi3wIhYkxjeBaWh2rxwapn5Tu3IqOQ==", + "glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", "dev": true, "requires": { - "commondir": "^1.0.1", - "make-dir": "^2.0.0", - "pkg-dir": "^3.0.0" + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" } }, - "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 + "minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "requires": { + "brace-expansion": "^1.1.7" + } } } }, + "text-table": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", + "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==", + "dev": true + }, "through": { "version": "2.3.8", "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", - "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=", + "integrity": "sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==", "dev": true }, - "through2": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz", - "integrity": "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==", - "dev": true, - "requires": { - "readable-stream": "~2.3.6", - "xtend": "~4.0.1" - } - }, "thunky": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/thunky/-/thunky-1.1.0.tgz", "integrity": "sha512-eHY7nBftgThBqOyHGVN+l8gF0BucP09fMo0oO/Lb0w1OF80dJv+lDVpXG60WMQvkcxAkNybKsrEIE3ZtKGmPrA==", "dev": true }, - "timers-browserify": { - "version": "2.0.11", - "resolved": "https://registry.npmjs.org/timers-browserify/-/timers-browserify-2.0.11.tgz", - "integrity": "sha512-60aV6sgJ5YEbzUdn9c8kYGIqOubPoUdqQCul3SBAsRCZ40s6Y5cMcrW4dt3/k/EsbLVJNl9n6Vz3fTc+k2GeKQ==", - "dev": true, - "requires": { - "setimmediate": "^1.0.4" - } - }, "tmp": { "version": "0.0.33", "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", @@ -11660,62 +9555,12 @@ "os-tmpdir": "~1.0.2" } }, - "to-array": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/to-array/-/to-array-0.1.4.tgz", - "integrity": "sha1-F+bBH3PdTz10zaek/zI46a2b+JA=", - "dev": true - }, - "to-arraybuffer": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/to-arraybuffer/-/to-arraybuffer-1.0.1.tgz", - "integrity": "sha1-fSKbH8xjfkZsoIEYCDanqr/4P0M=", - "dev": true - }, "to-fast-properties": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", - "integrity": "sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4=", - "dev": true - }, - "to-object-path": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/to-object-path/-/to-object-path-0.3.0.tgz", - "integrity": "sha1-KXWIt7Dn4KwI4E5nL4XB9JmeF68=", - "dev": true, - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "to-readable-stream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/to-readable-stream/-/to-readable-stream-1.0.0.tgz", - "integrity": "sha512-Iq25XBt6zD5npPhlLVXGFN3/gyR2/qODcKNNyTMd4vbm39HUaOiAM4PMq0eMVC/Tkxz+Zjdsc55g9yyz+Yq00Q==", + "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==", "dev": true }, - "to-regex": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/to-regex/-/to-regex-3.0.2.tgz", - "integrity": "sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw==", - "dev": true, - "requires": { - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "regex-not": "^1.0.2", - "safe-regex": "^1.1.0" - } - }, "to-regex-range": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", @@ -11726,9 +9571,9 @@ } }, "toidentifier": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.0.tgz", - "integrity": "sha512-yaOH/Pk/VEhBWWTlhI+qXxDFXlejDGcQipMlyxda9nthulaxLZUNcUqFxokp0vcYnvteJln5FNQDRrxj3YcbVw==", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz", + "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==", "dev": true }, "tough-cookie": { @@ -11761,51 +9606,100 @@ "mkdirp": "^0.5.1", "source-map-support": "^0.5.6", "yn": "^2.0.0" + }, + "dependencies": { + "mkdirp": { + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", + "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", + "dev": true, + "requires": { + "minimist": "^1.2.6" + } + } } }, - "tsickle": { - "version": "0.37.1", - "resolved": "https://registry.npmjs.org/tsickle/-/tsickle-0.37.1.tgz", - "integrity": "sha512-0GwgOJEnsmRsrONXCvcbAWY0CvdqF3UugPVoupUpA8Ul0qCPTuqqq0ou/hLqtKZOyyulzCP6MYRjb9/J1g9bJg==", - "dev": true - }, "tslib": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.11.1.tgz", - "integrity": "sha512-aZW88SY8kQbU7gpV19lN24LtXh/yD4ZZg6qieAJDDg+YBsJcSmLGK9QpnUjAKVG/xefmvJGd1WUmfpT/g6AJGA==" + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.1.tgz", + "integrity": "sha512-tGyy4dAjRIEwI7BzsB0lynWgOpfqjUdq91XXAlIWD2OwKBH7oCl/GZG/HT4BOHrTlPMOASlMQ7veyTqpmRcrNA==" }, "tslint": { - "version": "5.15.0", - "resolved": "https://registry.npmjs.org/tslint/-/tslint-5.15.0.tgz", - "integrity": "sha512-6bIEujKR21/3nyeoX2uBnE8s+tMXCQXhqMmaIPJpHmXJoBJPTLcI7/VHRtUwMhnLVdwLqqY3zmd8Dxqa5CVdJA==", + "version": "6.1.3", + "resolved": "https://registry.npmjs.org/tslint/-/tslint-6.1.3.tgz", + "integrity": "sha512-IbR4nkT96EQOvKE2PW/djGz8iGNeJ4rF2mBfiYaR/nvUWYKJhLwimoJKgjIFEIDibBtOevj7BqCRL4oHeWWUCg==", "dev": true, "requires": { - "babel-code-frame": "^6.22.0", + "@babel/code-frame": "^7.0.0", "builtin-modules": "^1.1.1", "chalk": "^2.3.0", "commander": "^2.12.1", - "diff": "^3.2.0", + "diff": "^4.0.1", "glob": "^7.1.1", - "js-yaml": "^3.13.0", + "js-yaml": "^3.13.1", "minimatch": "^3.0.4", - "mkdirp": "^0.5.1", + "mkdirp": "^0.5.3", "resolve": "^1.3.2", "semver": "^5.3.0", - "tslib": "^1.8.0", + "tslib": "^1.13.0", "tsutils": "^2.29.0" }, "dependencies": { "builtin-modules": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-1.1.1.tgz", - "integrity": "sha1-Jw8HbFpywC9bZaR9+Uxf46J4iS8=", + "integrity": "sha512-wxXCdllwGhI2kCC0MnvTGYTMvnVZTvqgypkiTI8Pa5tcz2i6VqsqwYGgqwXji+4RgCzms6EajE4IxiUH6HH8nQ==", + "dev": true + }, + "diff": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz", + "integrity": "sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==", "dev": true }, + "glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "dev": true, + "requires": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + }, + "minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "requires": { + "brace-expansion": "^1.1.7" + } + }, + "mkdirp": { + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", + "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", + "dev": true, + "requires": { + "minimist": "^1.2.6" + } + }, "semver": { "version": "5.7.1", "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", "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 } } }, @@ -11816,18 +9710,20 @@ "dev": true, "requires": { "tslib": "^1.8.1" + }, + "dependencies": { + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "dev": true + } } }, - "tty-browserify": { - "version": "0.0.0", - "resolved": "https://registry.npmjs.org/tty-browserify/-/tty-browserify-0.0.0.tgz", - "integrity": "sha1-oVe6QC2iTpv5V/mqadUk7tQpAaY=", - "dev": true - }, "tunnel-agent": { "version": "0.6.0", "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", - "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", + "integrity": "sha512-McnNiV1l8RYeY8tBgEpuodCC1mLUdbSN+CYBL7kJsJNInOP8UjDDEwdk6Mw60vdLLrr5NHKZhMAOSrR2NZuQ+w==", "dev": true, "requires": { "safe-buffer": "^5.0.1" @@ -11836,13 +9732,13 @@ "tweetnacl": { "version": "0.14.5", "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", - "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=", + "integrity": "sha512-KXXFFdAbFXY4geFIwoyNK+f5Z1b7swfXABfL7HXCmoIWMKU3dmS26672A4EeQtDzLKy7SXmfBu51JolvEKwtGA==", "dev": true }, "type-fest": { - "version": "0.11.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.11.0.tgz", - "integrity": "sha512-OdjXJxnCN1AvyLSzeKIgXTXxV+99ZuXl3Hpo9XpJAv9MBcHrrJOQ5kV7ypXOuQie+AmWG25hLbiKdwYTifzcfQ==", + "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==", "dev": true }, "type-is": { @@ -11855,1997 +9751,412 @@ "mime-types": "~2.1.24" } }, - "typedarray": { - "version": "0.0.6", - "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", - "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=", + "typed-assert": { + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/typed-assert/-/typed-assert-1.0.9.tgz", + "integrity": "sha512-KNNZtayBCtmnNmbo5mG47p1XsCyrx6iVqomjcZnec/1Y5GGARaxPs6r49RnSPeUP3YjNYiU9sQHAtY4BBvnZwg==", "dev": true }, "typescript": { - "version": "3.5.3", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-3.5.3.tgz", - "integrity": "sha512-ACzBtm/PhXBDId6a6sDJfroT2pOWt/oOnk4/dElG5G33ZL776N3Y6/6bKZJBFpd+b05F3Ct9qDjMeJmRWtE2/g==", + "version": "4.6.4", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.6.4.tgz", + "integrity": "sha512-9ia/jWHIEbo49HfjrLGfKbZSuWo9iTMwXO+Ca3pRsSpbsMbc7/IU8NKdCZVRRBafVPGnoJeFL76ZOAA84I9fEg==", "dev": true }, - "ultron": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/ultron/-/ultron-1.1.1.tgz", - "integrity": "sha512-UIEXBNeYmKptWH6z8ZnqTeS8fV74zG0/eRU9VGkpzz+LIJNs8W/zM/L+7ctCkRrgbNnnR0xxw4bKOr0cW0N0Og==", + "ua-parser-js": { + "version": "0.7.32", + "resolved": "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-0.7.32.tgz", + "integrity": "sha512-f9BESNVhzlhEFf2CHMSj40NWOjYPl1YKYbrvIr/hFTDEmLq7SRbWvm7FcdcpCYT95zrOhC7gZSxjdnnTpBcwVw==", "dev": true }, "unicode-canonical-property-names-ecmascript": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-1.0.4.tgz", - "integrity": "sha512-jDrNnXWHd4oHiTZnx/ZG7gtUTVp+gCcTTKr8L0HjlwphROEW3+Him+IpvC+xcJEFegapiMZyZe02CyuOnRmbnQ==", - "dev": true - }, - "unicode-match-property-ecmascript": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-1.0.4.tgz", - "integrity": "sha512-L4Qoh15vTfntsn4P1zqnHulG0LdXgjSO035fEpdtp6YxXhMT51Q6vgM5lYdG/5X3MjS+k/Y9Xw4SFCY9IkR0rg==", - "dev": true, - "requires": { - "unicode-canonical-property-names-ecmascript": "^1.0.4", - "unicode-property-aliases-ecmascript": "^1.0.4" - } - }, - "unicode-match-property-value-ecmascript": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-1.1.0.tgz", - "integrity": "sha512-hDTHvaBk3RmFzvSl0UVrUmC3PuW9wKVnpoUDYH0JDkSIovzw+J5viQmeYHxVSBptubnr7PbH2e0fnpDRQnQl5g==", - "dev": true - }, - "unicode-property-aliases-ecmascript": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-1.0.5.tgz", - "integrity": "sha512-L5RAqCfXqAwR3RriF8pM0lU0w4Ryf/GgzONwi6KnL1taJQa7x1TCxdJnILX59WIGOwR57IVxn7Nej0fz1Ny6fw==", - "dev": true - }, - "union-value": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/union-value/-/union-value-1.0.1.tgz", - "integrity": "sha512-tJfXmxMeWYnczCVs7XAEvIV7ieppALdyepWMkHkwciRpZraG/xwT+s2JN8+pr1+8jCRf80FFzvr+MpQeeoF4Xg==", - "dev": true, - "requires": { - "arr-union": "^3.1.0", - "get-value": "^2.0.6", - "is-extendable": "^0.1.1", - "set-value": "^2.0.1" - } - }, - "unique-filename": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-1.1.1.tgz", - "integrity": "sha512-Vmp0jIp2ln35UTXuryvjzkjGdRyf9b2lTXuSYUiPmzRcl3FDtYqAwOnTJkAngD9SWhnoJzDbTKwaOrZ+STtxNQ==", - "dev": true, - "requires": { - "unique-slug": "^2.0.0" - } - }, - "unique-slug": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-2.0.2.tgz", - "integrity": "sha512-zoWr9ObaxALD3DOPfjPSqxt4fnZiWblxHIgeWqW8x7UqDzEtHEQLzji2cuJYQFCU6KmoJikOYAZlrTHHebjx2w==", - "dev": true, - "requires": { - "imurmurhash": "^0.1.4" - } - }, - "unique-string": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/unique-string/-/unique-string-1.0.0.tgz", - "integrity": "sha1-nhBXzKhRq7kzmPizOuGHuZyuwRo=", - "dev": true, - "requires": { - "crypto-random-string": "^1.0.0" - } - }, - "universal-analytics": { - "version": "0.4.20", - "resolved": "https://registry.npmjs.org/universal-analytics/-/universal-analytics-0.4.20.tgz", - "integrity": "sha512-gE91dtMvNkjO+kWsPstHRtSwHXz0l2axqptGYp5ceg4MsuurloM0PU3pdOfpb5zBXUvyjT4PwhWK2m39uczZuw==", - "dev": true, - "requires": { - "debug": "^3.0.0", - "request": "^2.88.0", - "uuid": "^3.0.0" - }, - "dependencies": { - "debug": { - "version": "3.2.6", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", - "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - } - } - }, - "universalify": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", - "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", - "dev": true - }, - "unpipe": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", - "integrity": "sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw=", - "dev": true - }, - "unset-value": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/unset-value/-/unset-value-1.0.0.tgz", - "integrity": "sha1-g3aHP30jNRef+x5vw6jtDfyKtVk=", - "dev": true, - "requires": { - "has-value": "^0.3.1", - "isobject": "^3.0.0" - }, - "dependencies": { - "has-value": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/has-value/-/has-value-0.3.1.tgz", - "integrity": "sha1-ex9YutpiyoJ+wKIHgCVlSEWZXh8=", - "dev": true, - "requires": { - "get-value": "^2.0.3", - "has-values": "^0.1.4", - "isobject": "^2.0.0" - }, - "dependencies": { - "isobject": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz", - "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=", - "dev": true, - "requires": { - "isarray": "1.0.0" - } - } - } - }, - "has-values": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/has-values/-/has-values-0.1.4.tgz", - "integrity": "sha1-bWHeldkd/Km5oCCJrThL/49it3E=", - "dev": true - } - } - }, - "upath": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/upath/-/upath-1.2.0.tgz", - "integrity": "sha512-aZwGpamFO61g3OlfT7OQCHqhGnW43ieH9WZeP7QxN/G/jS4jfqUkZxoryvJgVPEcrl5NL/ggHsSmLMHuH64Lhg==", - "dev": true - }, - "update-notifier": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/update-notifier/-/update-notifier-3.0.1.tgz", - "integrity": "sha512-grrmrB6Zb8DUiyDIaeRTBCkgISYUgETNe7NglEbVsrLWXeESnlCSP50WfRSj/GmzMPl6Uchj24S/p80nP/ZQrQ==", - "dev": true, - "requires": { - "boxen": "^3.0.0", - "chalk": "^2.0.1", - "configstore": "^4.0.0", - "has-yarn": "^2.1.0", - "import-lazy": "^2.1.0", - "is-ci": "^2.0.0", - "is-installed-globally": "^0.1.0", - "is-npm": "^3.0.0", - "is-yarn-global": "^0.3.0", - "latest-version": "^5.0.0", - "semver-diff": "^2.0.0", - "xdg-basedir": "^3.0.0" - } - }, - "uri-js": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.2.2.tgz", - "integrity": "sha512-KY9Frmirql91X2Qgjry0Wd4Y+YTdrdZheS8TFwvkbLWf/G5KNJDCh6pKL5OZctEW4+0Baa5idK2ZQuELRwPznQ==", - "dev": true, - "requires": { - "punycode": "^2.1.0" - } - }, - "urix": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/urix/-/urix-0.1.0.tgz", - "integrity": "sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI=", - "dev": true - }, - "url": { - "version": "0.11.0", - "resolved": "https://registry.npmjs.org/url/-/url-0.11.0.tgz", - "integrity": "sha1-ODjpfPxgUh63PFJajlW/3Z4uKPE=", - "dev": true, - "requires": { - "punycode": "1.3.2", - "querystring": "0.2.0" - }, - "dependencies": { - "punycode": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.3.2.tgz", - "integrity": "sha1-llOgNvt8HuQjQvIyXM7v6jkmxI0=", - "dev": true - } - } - }, - "url-parse": { - "version": "1.4.7", - "resolved": "https://registry.npmjs.org/url-parse/-/url-parse-1.4.7.tgz", - "integrity": "sha512-d3uaVyzDB9tQoSXFvuSUNFibTd9zxd2bkVrDRvF5TmvWWQwqE4lgYJ5m+x1DbecWkw+LK4RNl2CU1hHuOKPVlg==", - "dev": true, - "requires": { - "querystringify": "^2.1.1", - "requires-port": "^1.0.0" - } - }, - "url-parse-lax": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-3.0.0.tgz", - "integrity": "sha1-FrXK/Afb42dsGxmZF3gj1lA6yww=", - "dev": true, - "requires": { - "prepend-http": "^2.0.0" - }, - "dependencies": { - "prepend-http": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-2.0.0.tgz", - "integrity": "sha1-6SQ0v6XqjBn0HN/UAddBo8gZ2Jc=", - "dev": true - } - } - }, - "use": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/use/-/use-3.1.1.tgz", - "integrity": "sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==", - "dev": true - }, - "useragent": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/useragent/-/useragent-2.3.0.tgz", - "integrity": "sha512-4AoH4pxuSvHCjqLO04sU6U/uE65BYza8l/KKBS0b0hnUPWi+cQ2BpeTEwejCSx9SPV5/U03nniDTrWx5NrmKdw==", - "dev": true, - "requires": { - "lru-cache": "4.1.x", - "tmp": "0.0.x" - }, - "dependencies": { - "lru-cache": { - "version": "4.1.5", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz", - "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==", - "dev": true, - "requires": { - "pseudomap": "^1.0.2", - "yallist": "^2.1.2" - } - }, - "yallist": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", - "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=", - "dev": true - } - } - }, - "util": { - "version": "0.11.1", - "resolved": "https://registry.npmjs.org/util/-/util-0.11.1.tgz", - "integrity": "sha512-HShAsny+zS2TZfaXxD9tYj4HQGlBezXZMZuM/S5PKLLoZkShZiGk9o5CzukI1LVHZvjdvZ2Sj1aW/Ndn2NB/HQ==", - "dev": true, - "requires": { - "inherits": "2.0.3" - }, - "dependencies": { - "inherits": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=", - "dev": true - } - } - }, - "util-deprecate": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=", - "dev": true - }, - "util-promisify": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/util-promisify/-/util-promisify-2.1.0.tgz", - "integrity": "sha1-PCI2R2xNMsX/PEcAKt18E7moKlM=", - "dev": true, - "requires": { - "object.getownpropertydescriptors": "^2.0.3" - } - }, - "utils-merge": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", - "integrity": "sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM=", - "dev": true - }, - "uuid": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", - "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==", - "dev": true - }, - "validate-npm-package-license": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", - "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", - "dev": true, - "requires": { - "spdx-correct": "^3.0.0", - "spdx-expression-parse": "^3.0.0" - } - }, - "validate-npm-package-name": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-3.0.0.tgz", - "integrity": "sha1-X6kS2B630MdK/BQN5zF/DKffQ34=", - "dev": true, - "requires": { - "builtins": "^1.0.3" - } - }, - "vary": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", - "integrity": "sha1-IpnwLG3tMNSllhsLn3RSShj2NPw=", - "dev": true - }, - "verror": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", - "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=", - "dev": true, - "requires": { - "assert-plus": "^1.0.0", - "core-util-is": "1.0.2", - "extsprintf": "^1.2.0" - } - }, - "vm-browserify": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/vm-browserify/-/vm-browserify-1.1.2.tgz", - "integrity": "sha512-2ham8XPWTONajOR0ohOKOHXkm3+gaBmGut3SRuu75xLd/RRaY6vqgh8NBYYk7+RW3u5AtzPQZG8F10LHkl0lAQ==", - "dev": true - }, - "void-elements": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/void-elements/-/void-elements-2.0.1.tgz", - "integrity": "sha1-wGavtYK7HLQSjWDqkjkulNXp2+w=", - "dev": true - }, - "watchpack": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-1.6.0.tgz", - "integrity": "sha512-i6dHe3EyLjMmDlU1/bGQpEw25XSjkJULPuAVKCbNRefQVq48yXKUpwg538F7AZTf9kyr57zj++pQFltUa5H7yA==", - "dev": true, - "requires": { - "chokidar": "^2.0.2", - "graceful-fs": "^4.1.2", - "neo-async": "^2.5.0" - }, - "dependencies": { - "anymatch": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-2.0.0.tgz", - "integrity": "sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw==", - "dev": true, - "requires": { - "micromatch": "^3.1.4", - "normalize-path": "^2.1.1" - }, - "dependencies": { - "normalize-path": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", - "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", - "dev": true, - "requires": { - "remove-trailing-separator": "^1.0.1" - } - } - } - }, - "binary-extensions": { - "version": "1.13.1", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.13.1.tgz", - "integrity": "sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw==", - "dev": true - }, - "braces": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", - "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", - "dev": true, - "requires": { - "arr-flatten": "^1.1.0", - "array-unique": "^0.3.2", - "extend-shallow": "^2.0.1", - "fill-range": "^4.0.0", - "isobject": "^3.0.1", - "repeat-element": "^1.1.2", - "snapdragon": "^0.8.1", - "snapdragon-node": "^2.0.1", - "split-string": "^3.0.2", - "to-regex": "^3.0.1" - } - }, - "chokidar": { - "version": "2.1.8", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-2.1.8.tgz", - "integrity": "sha512-ZmZUazfOzf0Nve7duiCKD23PFSCs4JPoYyccjUFF3aQkQadqBhfzhjkwBH2mNOG9cTBwhamM37EIsIkZw3nRgg==", - "dev": true, - "requires": { - "anymatch": "^2.0.0", - "async-each": "^1.0.1", - "braces": "^2.3.2", - "fsevents": "^1.2.7", - "glob-parent": "^3.1.0", - "inherits": "^2.0.3", - "is-binary-path": "^1.0.0", - "is-glob": "^4.0.0", - "normalize-path": "^3.0.0", - "path-is-absolute": "^1.0.0", - "readdirp": "^2.2.1", - "upath": "^1.1.1" - } - }, - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - }, - "fill-range": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", - "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", - "dev": true, - "requires": { - "extend-shallow": "^2.0.1", - "is-number": "^3.0.0", - "repeat-string": "^1.6.1", - "to-regex-range": "^2.1.0" - } - }, - "fsevents": { - "version": "1.2.11", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.11.tgz", - "integrity": "sha512-+ux3lx6peh0BpvY0JebGyZoiR4D+oYzdPZMKJwkZ+sFkNJzpL7tXc/wehS49gUAxg3tmMHPHZkA8JU2rhhgDHw==", - "dev": true, - "optional": true, - "requires": { - "bindings": "^1.5.0", - "nan": "^2.12.1", - "node-pre-gyp": "*" - }, - "dependencies": { - "abbrev": { - "version": "1.1.1", - "bundled": true, - "dev": true, - "optional": true - }, - "ansi-regex": { - "version": "2.1.1", - "bundled": true, - "dev": true, - "optional": true - }, - "aproba": { - "version": "1.2.0", - "bundled": true, - "dev": true, - "optional": true - }, - "are-we-there-yet": { - "version": "1.1.5", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "delegates": "^1.0.0", - "readable-stream": "^2.0.6" - } - }, - "balanced-match": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "optional": true - }, - "brace-expansion": { - "version": "1.1.11", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "chownr": { - "version": "1.1.3", - "bundled": true, - "dev": true, - "optional": true - }, - "code-point-at": { - "version": "1.1.0", - "bundled": true, - "dev": true, - "optional": true - }, - "concat-map": { - "version": "0.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "console-control-strings": { - "version": "1.1.0", - "bundled": true, - "dev": true, - "optional": true - }, - "core-util-is": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "optional": true - }, - "debug": { - "version": "3.2.6", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "ms": "^2.1.1" - } - }, - "deep-extend": { - "version": "0.6.0", - "bundled": true, - "dev": true, - "optional": true - }, - "delegates": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "optional": true - }, - "detect-libc": { - "version": "1.0.3", - "bundled": true, - "dev": true, - "optional": true - }, - "fs-minipass": { - "version": "1.2.7", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "minipass": "^2.6.0" - } - }, - "fs.realpath": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "optional": true - }, - "gauge": { - "version": "2.7.4", - "bundled": true, - "dev": true, - "optional": true, - "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" - } - }, - "glob": { - "version": "7.1.6", - "bundled": true, - "dev": true, - "optional": 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" - } - }, - "has-unicode": { - "version": "2.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "iconv-lite": { - "version": "0.4.24", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "safer-buffer": ">= 2.1.2 < 3" - } - }, - "ignore-walk": { - "version": "3.0.3", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "minimatch": "^3.0.4" - } - }, - "inflight": { - "version": "1.0.6", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "inherits": { - "version": "2.0.4", - "bundled": true, - "dev": true, - "optional": true - }, - "ini": { - "version": "1.3.5", - "bundled": true, - "dev": true, - "optional": true - }, - "is-fullwidth-code-point": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "number-is-nan": "^1.0.0" - } - }, - "isarray": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "optional": true - }, - "minimatch": { - "version": "3.0.4", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "brace-expansion": "^1.1.7" - } - }, - "minimist": { - "version": "0.0.8", - "bundled": true, - "dev": true, - "optional": true - }, - "minipass": { - "version": "2.9.0", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "safe-buffer": "^5.1.2", - "yallist": "^3.0.0" - } - }, - "minizlib": { - "version": "1.3.3", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "minipass": "^2.9.0" - } - }, - "mkdirp": { - "version": "0.5.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "minimist": "0.0.8" - } - }, - "ms": { - "version": "2.1.2", - "bundled": true, - "dev": true, - "optional": true - }, - "needle": { - "version": "2.4.0", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "debug": "^3.2.6", - "iconv-lite": "^0.4.4", - "sax": "^1.2.4" - } - }, - "node-pre-gyp": { - "version": "0.14.0", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "detect-libc": "^1.0.2", - "mkdirp": "^0.5.1", - "needle": "^2.2.1", - "nopt": "^4.0.1", - "npm-packlist": "^1.1.6", - "npmlog": "^4.0.2", - "rc": "^1.2.7", - "rimraf": "^2.6.1", - "semver": "^5.3.0", - "tar": "^4.4.2" - } - }, - "nopt": { - "version": "4.0.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "abbrev": "1", - "osenv": "^0.1.4" - } - }, - "npm-bundled": { - "version": "1.1.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "npm-normalize-package-bin": "^1.0.1" - } - }, - "npm-normalize-package-bin": { - "version": "1.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "npm-packlist": { - "version": "1.4.7", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "ignore-walk": "^3.0.1", - "npm-bundled": "^1.0.1" - } - }, - "npmlog": { - "version": "4.1.2", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "are-we-there-yet": "~1.1.2", - "console-control-strings": "~1.1.0", - "gauge": "~2.7.3", - "set-blocking": "~2.0.0" - } - }, - "number-is-nan": { - "version": "1.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "object-assign": { - "version": "4.1.1", - "bundled": true, - "dev": true, - "optional": true - }, - "once": { - "version": "1.4.0", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "wrappy": "1" - } - }, - "os-homedir": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "optional": true - }, - "os-tmpdir": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "optional": true - }, - "osenv": { - "version": "0.1.5", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "os-homedir": "^1.0.0", - "os-tmpdir": "^1.0.0" - } - }, - "path-is-absolute": { - "version": "1.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "process-nextick-args": { - "version": "2.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "rc": { - "version": "1.2.8", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "deep-extend": "^0.6.0", - "ini": "~1.3.0", - "minimist": "^1.2.0", - "strip-json-comments": "~2.0.1" - }, - "dependencies": { - "minimist": { - "version": "1.2.0", - "bundled": true, - "dev": true, - "optional": true - } - } - }, - "readable-stream": { - "version": "2.3.6", - "bundled": true, - "dev": true, - "optional": 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" - } - }, - "rimraf": { - "version": "2.7.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "glob": "^7.1.3" - } - }, - "safe-buffer": { - "version": "5.1.2", - "bundled": true, - "dev": true, - "optional": true - }, - "safer-buffer": { - "version": "2.1.2", - "bundled": true, - "dev": true, - "optional": true - }, - "sax": { - "version": "1.2.4", - "bundled": true, - "dev": true, - "optional": true - }, - "semver": { - "version": "5.7.1", - "bundled": true, - "dev": true, - "optional": true - }, - "set-blocking": { - "version": "2.0.0", - "bundled": true, - "dev": true, - "optional": true - }, - "signal-exit": { - "version": "3.0.2", - "bundled": true, - "dev": true, - "optional": true - }, - "string-width": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "optional": true, - "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", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "safe-buffer": "~5.1.0" - } - }, - "strip-ansi": { - "version": "3.0.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "ansi-regex": "^2.0.0" - } - }, - "strip-json-comments": { - "version": "2.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "tar": { - "version": "4.4.13", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "chownr": "^1.1.1", - "fs-minipass": "^1.2.5", - "minipass": "^2.8.6", - "minizlib": "^1.2.1", - "mkdirp": "^0.5.0", - "safe-buffer": "^5.1.2", - "yallist": "^3.0.3" - } - }, - "util-deprecate": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "optional": true - }, - "wide-align": { - "version": "1.1.3", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "string-width": "^1.0.2 || 2" - } - }, - "wrappy": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "optional": true - }, - "yallist": { - "version": "3.1.1", - "bundled": true, - "dev": true, - "optional": true - } - } - }, - "is-binary-path": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz", - "integrity": "sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg=", - "dev": true, - "requires": { - "binary-extensions": "^1.0.0" - } - }, - "is-number": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", - "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", - "dev": true, - "requires": { - "kind-of": "^3.0.2" - } - }, - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - }, - "readdirp": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.2.1.tgz", - "integrity": "sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ==", - "dev": true, - "requires": { - "graceful-fs": "^4.1.11", - "micromatch": "^3.1.10", - "readable-stream": "^2.0.2" - } - }, - "to-regex-range": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", - "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=", - "dev": true, - "requires": { - "is-number": "^3.0.0", - "repeat-string": "^1.6.1" - } - } - } - }, - "wbuf": { - "version": "1.7.3", - "resolved": "https://registry.npmjs.org/wbuf/-/wbuf-1.7.3.tgz", - "integrity": "sha512-O84QOnr0icsbFGLS0O3bI5FswxzRr8/gHwWkDlQFskhSPryQXvrTMxjxGP4+iWYoauLoBvfDpkrOauZ+0iZpDA==", - "dev": true, - "requires": { - "minimalistic-assert": "^1.0.0" - } - }, - "webdriver-js-extender": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/webdriver-js-extender/-/webdriver-js-extender-2.1.0.tgz", - "integrity": "sha512-lcUKrjbBfCK6MNsh7xaY2UAUmZwe+/ib03AjVOpFobX4O7+83BUveSrLfU0Qsyb1DaKJdQRbuU+kM9aZ6QUhiQ==", - "dev": true, - "requires": { - "@types/selenium-webdriver": "^3.0.0", - "selenium-webdriver": "^3.0.1" - } - }, - "webpack": { - "version": "4.39.2", - "resolved": "https://registry.npmjs.org/webpack/-/webpack-4.39.2.tgz", - "integrity": "sha512-AKgTfz3xPSsEibH00JfZ9sHXGUwIQ6eZ9tLN8+VLzachk1Cw2LVmy+4R7ZiwTa9cZZ15tzySjeMui/UnSCAZhA==", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.8.5", - "@webassemblyjs/helper-module-context": "1.8.5", - "@webassemblyjs/wasm-edit": "1.8.5", - "@webassemblyjs/wasm-parser": "1.8.5", - "acorn": "^6.2.1", - "ajv": "^6.10.2", - "ajv-keywords": "^3.4.1", - "chrome-trace-event": "^1.0.2", - "enhanced-resolve": "^4.1.0", - "eslint-scope": "^4.0.3", - "json-parse-better-errors": "^1.0.2", - "loader-runner": "^2.4.0", - "loader-utils": "^1.2.3", - "memory-fs": "^0.4.1", - "micromatch": "^3.1.10", - "mkdirp": "^0.5.1", - "neo-async": "^2.6.1", - "node-libs-browser": "^2.2.1", - "schema-utils": "^1.0.0", - "tapable": "^1.1.3", - "terser-webpack-plugin": "^1.4.1", - "watchpack": "^1.6.0", - "webpack-sources": "^1.4.1" - } - }, - "webpack-core": { - "version": "0.6.9", - "resolved": "https://registry.npmjs.org/webpack-core/-/webpack-core-0.6.9.tgz", - "integrity": "sha1-/FcViMhVjad76e+23r3Fo7FyvcI=", - "dev": true, - "requires": { - "source-list-map": "~0.1.7", - "source-map": "~0.4.1" - }, - "dependencies": { - "source-list-map": { - "version": "0.1.8", - "resolved": "https://registry.npmjs.org/source-list-map/-/source-list-map-0.1.8.tgz", - "integrity": "sha1-xVCyq1Qn9rPyH1r+rYjE9Vh7IQY=", - "dev": true - }, - "source-map": { - "version": "0.4.4", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.4.4.tgz", - "integrity": "sha1-66T12pwNyZneaAMti092FzZSA2s=", - "dev": true, - "requires": { - "amdefine": ">=0.0.4" - } - } - } - }, - "webpack-dev-middleware": { - "version": "3.7.2", - "resolved": "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-3.7.2.tgz", - "integrity": "sha512-1xC42LxbYoqLNAhV6YzTYacicgMZQTqRd27Sim9wn5hJrX3I5nxYy1SxSd4+gjUFsz1dQFj+yEe6zEVmSkeJjw==", - "dev": true, - "requires": { - "memory-fs": "^0.4.1", - "mime": "^2.4.4", - "mkdirp": "^0.5.1", - "range-parser": "^1.2.1", - "webpack-log": "^2.0.0" - }, - "dependencies": { - "mime": { - "version": "2.4.4", - "resolved": "https://registry.npmjs.org/mime/-/mime-2.4.4.tgz", - "integrity": "sha512-LRxmNwziLPT828z+4YkNzloCFC2YM4wrB99k+AV5ZbEyfGNWfG8SO1FUXLmLDBSo89NrJZ4DIWeLjy1CHGhMGA==", - "dev": true - } - } - }, - "webpack-dev-server": { - "version": "3.9.0", - "resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-3.9.0.tgz", - "integrity": "sha512-E6uQ4kRrTX9URN9s/lIbqTAztwEPdvzVrcmHE8EQ9YnuT9J8Es5Wrd8n9BKg1a0oZ5EgEke/EQFgUsp18dSTBw==", - "dev": true, - "requires": { - "ansi-html": "0.0.7", - "bonjour": "^3.5.0", - "chokidar": "^2.1.8", - "compression": "^1.7.4", - "connect-history-api-fallback": "^1.6.0", - "debug": "^4.1.1", - "del": "^4.1.1", - "express": "^4.17.1", - "html-entities": "^1.2.1", - "http-proxy-middleware": "0.19.1", - "import-local": "^2.0.0", - "internal-ip": "^4.3.0", - "ip": "^1.1.5", - "is-absolute-url": "^3.0.3", - "killable": "^1.0.1", - "loglevel": "^1.6.4", - "opn": "^5.5.0", - "p-retry": "^3.0.1", - "portfinder": "^1.0.25", - "schema-utils": "^1.0.0", - "selfsigned": "^1.10.7", - "semver": "^6.3.0", - "serve-index": "^1.9.1", - "sockjs": "0.3.19", - "sockjs-client": "1.4.0", - "spdy": "^4.0.1", - "strip-ansi": "^3.0.1", - "supports-color": "^6.1.0", - "url": "^0.11.0", - "webpack-dev-middleware": "^3.7.2", - "webpack-log": "^2.0.0", - "ws": "^6.2.1", - "yargs": "12.0.5" - }, - "dependencies": { - "anymatch": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-2.0.0.tgz", - "integrity": "sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw==", - "dev": true, - "requires": { - "micromatch": "^3.1.4", - "normalize-path": "^2.1.1" - }, - "dependencies": { - "normalize-path": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", - "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", - "dev": true, - "requires": { - "remove-trailing-separator": "^1.0.1" - } - } - } - }, - "binary-extensions": { - "version": "1.13.1", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.13.1.tgz", - "integrity": "sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw==", - "dev": true - }, - "braces": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", - "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", - "dev": true, - "requires": { - "arr-flatten": "^1.1.0", - "array-unique": "^0.3.2", - "extend-shallow": "^2.0.1", - "fill-range": "^4.0.0", - "isobject": "^3.0.1", - "repeat-element": "^1.1.2", - "snapdragon": "^0.8.1", - "snapdragon-node": "^2.0.1", - "split-string": "^3.0.2", - "to-regex": "^3.0.1" - } - }, - "chokidar": { - "version": "2.1.8", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-2.1.8.tgz", - "integrity": "sha512-ZmZUazfOzf0Nve7duiCKD23PFSCs4JPoYyccjUFF3aQkQadqBhfzhjkwBH2mNOG9cTBwhamM37EIsIkZw3nRgg==", - "dev": true, - "requires": { - "anymatch": "^2.0.0", - "async-each": "^1.0.1", - "braces": "^2.3.2", - "fsevents": "^1.2.7", - "glob-parent": "^3.1.0", - "inherits": "^2.0.3", - "is-binary-path": "^1.0.0", - "is-glob": "^4.0.0", - "normalize-path": "^3.0.0", - "path-is-absolute": "^1.0.0", - "readdirp": "^2.2.1", - "upath": "^1.1.1" - } - }, - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - }, - "fill-range": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", - "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", - "dev": true, - "requires": { - "extend-shallow": "^2.0.1", - "is-number": "^3.0.0", - "repeat-string": "^1.6.1", - "to-regex-range": "^2.1.0" - } - }, - "fsevents": { - "version": "1.2.11", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.11.tgz", - "integrity": "sha512-+ux3lx6peh0BpvY0JebGyZoiR4D+oYzdPZMKJwkZ+sFkNJzpL7tXc/wehS49gUAxg3tmMHPHZkA8JU2rhhgDHw==", - "dev": true, - "optional": true, - "requires": { - "bindings": "^1.5.0", - "nan": "^2.12.1", - "node-pre-gyp": "*" - }, - "dependencies": { - "abbrev": { - "version": "1.1.1", - "bundled": true, - "dev": true, - "optional": true - }, - "ansi-regex": { - "version": "2.1.1", - "bundled": true, - "dev": true, - "optional": true - }, - "aproba": { - "version": "1.2.0", - "bundled": true, - "dev": true, - "optional": true - }, - "are-we-there-yet": { - "version": "1.1.5", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "delegates": "^1.0.0", - "readable-stream": "^2.0.6" - } - }, - "balanced-match": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "optional": true - }, - "brace-expansion": { - "version": "1.1.11", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "chownr": { - "version": "1.1.3", - "bundled": true, - "dev": true, - "optional": true - }, - "code-point-at": { - "version": "1.1.0", - "bundled": true, - "dev": true, - "optional": true - }, - "concat-map": { - "version": "0.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "console-control-strings": { - "version": "1.1.0", - "bundled": true, - "dev": true, - "optional": true - }, - "core-util-is": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "optional": true - }, - "debug": { - "version": "3.2.6", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "ms": "^2.1.1" - } - }, - "deep-extend": { - "version": "0.6.0", - "bundled": true, - "dev": true, - "optional": true - }, - "delegates": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "optional": true - }, - "detect-libc": { - "version": "1.0.3", - "bundled": true, - "dev": true, - "optional": true - }, - "fs-minipass": { - "version": "1.2.7", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "minipass": "^2.6.0" - } - }, - "fs.realpath": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "optional": true - }, - "gauge": { - "version": "2.7.4", - "bundled": true, - "dev": true, - "optional": true, - "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" - } - }, - "glob": { - "version": "7.1.6", - "bundled": true, - "dev": true, - "optional": 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" - } - }, - "has-unicode": { - "version": "2.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "iconv-lite": { - "version": "0.4.24", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "safer-buffer": ">= 2.1.2 < 3" - } - }, - "ignore-walk": { - "version": "3.0.3", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "minimatch": "^3.0.4" - } - }, - "inflight": { - "version": "1.0.6", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "inherits": { - "version": "2.0.4", - "bundled": true, - "dev": true, - "optional": true - }, - "ini": { - "version": "1.3.5", - "bundled": true, - "dev": true, - "optional": true - }, - "is-fullwidth-code-point": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "number-is-nan": "^1.0.0" - } - }, - "isarray": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "optional": true - }, - "minimatch": { - "version": "3.0.4", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "brace-expansion": "^1.1.7" - } - }, - "minimist": { - "version": "0.0.8", - "bundled": true, - "dev": true, - "optional": true - }, - "minipass": { - "version": "2.9.0", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "safe-buffer": "^5.1.2", - "yallist": "^3.0.0" - } - }, - "minizlib": { - "version": "1.3.3", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "minipass": "^2.9.0" - } - }, - "mkdirp": { - "version": "0.5.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "minimist": "0.0.8" - } - }, - "ms": { - "version": "2.1.2", - "bundled": true, - "dev": true, - "optional": true - }, - "needle": { - "version": "2.4.0", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "debug": "^3.2.6", - "iconv-lite": "^0.4.4", - "sax": "^1.2.4" - } - }, - "node-pre-gyp": { - "version": "0.14.0", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "detect-libc": "^1.0.2", - "mkdirp": "^0.5.1", - "needle": "^2.2.1", - "nopt": "^4.0.1", - "npm-packlist": "^1.1.6", - "npmlog": "^4.0.2", - "rc": "^1.2.7", - "rimraf": "^2.6.1", - "semver": "^5.3.0", - "tar": "^4.4.2" - } - }, - "nopt": { - "version": "4.0.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "abbrev": "1", - "osenv": "^0.1.4" - } - }, - "npm-bundled": { - "version": "1.1.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "npm-normalize-package-bin": "^1.0.1" - } - }, - "npm-normalize-package-bin": { - "version": "1.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "npm-packlist": { - "version": "1.4.7", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "ignore-walk": "^3.0.1", - "npm-bundled": "^1.0.1" - } - }, - "npmlog": { - "version": "4.1.2", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "are-we-there-yet": "~1.1.2", - "console-control-strings": "~1.1.0", - "gauge": "~2.7.3", - "set-blocking": "~2.0.0" - } - }, - "number-is-nan": { - "version": "1.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "object-assign": { - "version": "4.1.1", - "bundled": true, - "dev": true, - "optional": true - }, - "once": { - "version": "1.4.0", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "wrappy": "1" - } - }, - "os-homedir": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "optional": true - }, - "os-tmpdir": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "optional": true - }, - "osenv": { - "version": "0.1.5", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "os-homedir": "^1.0.0", - "os-tmpdir": "^1.0.0" - } - }, - "path-is-absolute": { - "version": "1.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "process-nextick-args": { - "version": "2.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "rc": { - "version": "1.2.8", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "deep-extend": "^0.6.0", - "ini": "~1.3.0", - "minimist": "^1.2.0", - "strip-json-comments": "~2.0.1" - }, - "dependencies": { - "minimist": { - "version": "1.2.0", - "bundled": true, - "dev": true, - "optional": true - } - } - }, - "readable-stream": { - "version": "2.3.6", - "bundled": true, - "dev": true, - "optional": 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" - } - }, - "rimraf": { - "version": "2.7.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "glob": "^7.1.3" - } - }, - "safe-buffer": { - "version": "5.1.2", - "bundled": true, - "dev": true, - "optional": true - }, - "safer-buffer": { - "version": "2.1.2", - "bundled": true, - "dev": true, - "optional": true - }, - "sax": { - "version": "1.2.4", - "bundled": true, - "dev": true, - "optional": true - }, - "semver": { - "version": "5.7.1", - "bundled": true, - "dev": true, - "optional": true - }, - "set-blocking": { - "version": "2.0.0", - "bundled": true, - "dev": true, - "optional": true - }, - "signal-exit": { - "version": "3.0.2", - "bundled": true, - "dev": true, - "optional": true - }, - "string-width": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "optional": true, - "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", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "safe-buffer": "~5.1.0" - } - }, - "strip-ansi": { - "version": "3.0.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "ansi-regex": "^2.0.0" - } - }, - "strip-json-comments": { - "version": "2.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "tar": { - "version": "4.4.13", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "chownr": "^1.1.1", - "fs-minipass": "^1.2.5", - "minipass": "^2.8.6", - "minizlib": "^1.2.1", - "mkdirp": "^0.5.0", - "safe-buffer": "^5.1.2", - "yallist": "^3.0.3" - } - }, - "util-deprecate": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "optional": true - }, - "wide-align": { - "version": "1.1.3", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "string-width": "^1.0.2 || 2" - } - }, - "wrappy": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "optional": true - }, - "yallist": { - "version": "3.1.1", - "bundled": true, - "dev": true, - "optional": true - } - } - }, - "is-binary-path": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz", - "integrity": "sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg=", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.0.tgz", + "integrity": "sha512-yY5PpDlfVIU5+y/BSCxAJRBIS1Zc2dDG3Ujq+sR0U+JjUevW2JhocOF+soROYDSaAezOzOKuyyixhD6mBknSmQ==", + "dev": true + }, + "unicode-match-property-ecmascript": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-2.0.0.tgz", + "integrity": "sha512-5kaZCrbp5mmbz5ulBkDkbY0SsPOjKqVS35VpL9ulMPfSl0J0Xsm+9Evphv9CoIZFwre7aJoa94AY6seMKGVN5Q==", + "dev": true, + "requires": { + "unicode-canonical-property-names-ecmascript": "^2.0.0", + "unicode-property-aliases-ecmascript": "^2.0.0" + } + }, + "unicode-match-property-value-ecmascript": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.1.0.tgz", + "integrity": "sha512-qxkjQt6qjg/mYscYMC0XKRn3Rh0wFPlfxB0xkt9CfyTvpX1Ra0+rAmdX2QyAobptSEvuy4RtpPRui6XkV+8wjA==", + "dev": true + }, + "unicode-property-aliases-ecmascript": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-2.1.0.tgz", + "integrity": "sha512-6t3foTQI9qne+OZoVQB/8x8rk2k1eVy1gRXhV3oFQ5T6R1dqQ1xtin3XqSlx3+ATBkliTaR/hHyJBm+LVPNM8w==", + "dev": true + }, + "unique-filename": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-1.1.1.tgz", + "integrity": "sha512-Vmp0jIp2ln35UTXuryvjzkjGdRyf9b2lTXuSYUiPmzRcl3FDtYqAwOnTJkAngD9SWhnoJzDbTKwaOrZ+STtxNQ==", + "dev": true, + "requires": { + "unique-slug": "^2.0.0" + } + }, + "unique-slug": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-2.0.2.tgz", + "integrity": "sha512-zoWr9ObaxALD3DOPfjPSqxt4fnZiWblxHIgeWqW8x7UqDzEtHEQLzji2cuJYQFCU6KmoJikOYAZlrTHHebjx2w==", + "dev": true, + "requires": { + "imurmurhash": "^0.1.4" + } + }, + "universalify": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", + "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", + "dev": true + }, + "unpipe": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", + "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==", + "dev": true + }, + "update-browserslist-db": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.10.tgz", + "integrity": "sha512-OztqDenkfFkbSG+tRxBeAnCVPckDBcvibKd35yDONx6OU8N7sqgwc7rCbkJ/WcYtVRZ4ba68d6byhC21GFh7sQ==", + "dev": true, + "requires": { + "escalade": "^3.1.1", + "picocolors": "^1.0.0" + } + }, + "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": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", + "dev": true + }, + "utils-merge": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", + "integrity": "sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==", + "dev": true + }, + "uuid": { + "version": "8.3.2", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", + "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==", + "dev": true + }, + "validate-npm-package-license": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", + "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", + "dev": true, + "requires": { + "spdx-correct": "^3.0.0", + "spdx-expression-parse": "^3.0.0" + } + }, + "validate-npm-package-name": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-4.0.0.tgz", + "integrity": "sha512-mzR0L8ZDktZjpX4OB46KT+56MAhl4EIazWP/+G/HPGuvfdaqg4YsCdtOm6U9+LOFyYDoh4dpnpxZRB9MQQns5Q==", + "dev": true, + "requires": { + "builtins": "^5.0.0" + } + }, + "vary": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", + "integrity": "sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==", + "dev": true + }, + "verror": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", + "integrity": "sha512-ZZKSmDAEFOijERBLkmYfJ+vmk3w+7hOLYDNkRCuRuMJGEmqYNCNLyBBFwWKVMhfwaEF3WOd0Zlw86U/WC/+nYw==", + "dev": true, + "requires": { + "assert-plus": "^1.0.0", + "core-util-is": "1.0.2", + "extsprintf": "^1.2.0" + }, + "dependencies": { + "core-util-is": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", + "integrity": "sha512-3lqz5YjWTYnW6dlDa5TLaTCcShfar1e40rmcJVwCBJC6mWlFuj0eCHIElmG1g5kyuJ/GD+8Wn4FFCcz4gJPfaQ==", + "dev": true + } + } + }, + "void-elements": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/void-elements/-/void-elements-2.0.1.tgz", + "integrity": "sha512-qZKX4RnBzH2ugr8Lxa7x+0V6XD9Sb/ouARtiasEQCHB1EVU4NXtmHsDDrx1dO4ne5fc3J6EW05BP1Dl0z0iung==", + "dev": true + }, + "watchpack": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.0.tgz", + "integrity": "sha512-Lcvm7MGST/4fup+ifyKi2hjyIAwcdI4HRgtvTpIUxBRhB+RFtUh8XtDOxUfctVCnhVi+QQj49i91OyvzkJl6cg==", + "dev": true, + "requires": { + "glob-to-regexp": "^0.4.1", + "graceful-fs": "^4.1.2" + } + }, + "wbuf": { + "version": "1.7.3", + "resolved": "https://registry.npmjs.org/wbuf/-/wbuf-1.7.3.tgz", + "integrity": "sha512-O84QOnr0icsbFGLS0O3bI5FswxzRr8/gHwWkDlQFskhSPryQXvrTMxjxGP4+iWYoauLoBvfDpkrOauZ+0iZpDA==", + "dev": true, + "requires": { + "minimalistic-assert": "^1.0.0" + } + }, + "wcwidth": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/wcwidth/-/wcwidth-1.0.1.tgz", + "integrity": "sha512-XHPEwS0q6TaxcvG85+8EYkbiCux2XtWG2mkc47Ng2A77BQu9+DqIOJldST4HgPkuea7dvKSj5VgX3P1d4rW8Tg==", + "dev": true, + "requires": { + "defaults": "^1.0.3" + } + }, + "webdriver-js-extender": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/webdriver-js-extender/-/webdriver-js-extender-2.1.0.tgz", + "integrity": "sha512-lcUKrjbBfCK6MNsh7xaY2UAUmZwe+/ib03AjVOpFobX4O7+83BUveSrLfU0Qsyb1DaKJdQRbuU+kM9aZ6QUhiQ==", + "dev": true, + "requires": { + "@types/selenium-webdriver": "^3.0.0", + "selenium-webdriver": "^3.0.1" + } + }, + "webpack": { + "version": "5.74.0", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.74.0.tgz", + "integrity": "sha512-A2InDwnhhGN4LYctJj6M1JEaGL7Luj6LOmyBHjcI8529cm5p6VXiTIW2sn6ffvEAKmveLzvu4jrihwXtPojlAA==", + "dev": true, + "requires": { + "@types/eslint-scope": "^3.7.3", + "@types/estree": "^0.0.51", + "@webassemblyjs/ast": "1.11.1", + "@webassemblyjs/wasm-edit": "1.11.1", + "@webassemblyjs/wasm-parser": "1.11.1", + "acorn": "^8.7.1", + "acorn-import-assertions": "^1.7.6", + "browserslist": "^4.14.5", + "chrome-trace-event": "^1.0.2", + "enhanced-resolve": "^5.10.0", + "es-module-lexer": "^0.9.0", + "eslint-scope": "5.1.1", + "events": "^3.2.0", + "glob-to-regexp": "^0.4.1", + "graceful-fs": "^4.2.9", + "json-parse-even-better-errors": "^2.3.1", + "loader-runner": "^4.2.0", + "mime-types": "^2.1.27", + "neo-async": "^2.6.2", + "schema-utils": "^3.1.0", + "tapable": "^2.1.1", + "terser-webpack-plugin": "^5.1.3", + "watchpack": "^2.4.0", + "webpack-sources": "^3.2.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": { - "binary-extensions": "^1.0.0" + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" } }, - "is-number": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", - "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", + "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 + }, + "schema-utils": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.1.tgz", + "integrity": "sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==", "dev": true, "requires": { - "kind-of": "^3.0.2" + "@types/json-schema": "^7.0.8", + "ajv": "^6.12.5", + "ajv-keywords": "^3.5.2" } - }, - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + } + } + }, + "webpack-dev-middleware": { + "version": "5.3.3", + "resolved": "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-5.3.3.tgz", + "integrity": "sha512-hj5CYrY0bZLB+eTO+x/j67Pkrquiy7kWepMHmUMoPsmcUaeEnQJqFzHJOyxgWlq746/wUuA64p9ta34Kyb01pA==", + "dev": true, + "requires": { + "colorette": "^2.0.10", + "memfs": "^3.4.3", + "mime-types": "^2.1.31", + "range-parser": "^1.2.1", + "schema-utils": "^4.0.0" + }, + "dependencies": { + "ajv-keywords": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz", + "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", "dev": true, "requires": { - "is-buffer": "^1.1.5" + "fast-deep-equal": "^3.1.3" } }, - "readdirp": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.2.1.tgz", - "integrity": "sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ==", + "schema-utils": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.0.0.tgz", + "integrity": "sha512-1edyXKgh6XnJsJSQ8mKWXnN/BVaIbFMLpouRUrXgVq7WYne5kw3MW7UPhO44uRXQSIpTSXoJbmrR2X0w9kUTyg==", "dev": true, "requires": { - "graceful-fs": "^4.1.11", - "micromatch": "^3.1.10", - "readable-stream": "^2.0.2" + "@types/json-schema": "^7.0.9", + "ajv": "^8.8.0", + "ajv-formats": "^2.1.1", + "ajv-keywords": "^5.0.0" } - }, - "supports-color": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", - "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + } + } + }, + "webpack-dev-server": { + "version": "4.11.0", + "resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-4.11.0.tgz", + "integrity": "sha512-L5S4Q2zT57SK7tazgzjMiSMBdsw+rGYIX27MgPgx7LDhWO0lViPrHKoLS7jo5In06PWYAhlYu3PbyoC6yAThbw==", + "dev": true, + "requires": { + "@types/bonjour": "^3.5.9", + "@types/connect-history-api-fallback": "^1.3.5", + "@types/express": "^4.17.13", + "@types/serve-index": "^1.9.1", + "@types/serve-static": "^1.13.10", + "@types/sockjs": "^0.3.33", + "@types/ws": "^8.5.1", + "ansi-html-community": "^0.0.8", + "bonjour-service": "^1.0.11", + "chokidar": "^3.5.3", + "colorette": "^2.0.10", + "compression": "^1.7.4", + "connect-history-api-fallback": "^2.0.0", + "default-gateway": "^6.0.3", + "express": "^4.17.3", + "graceful-fs": "^4.2.6", + "html-entities": "^2.3.2", + "http-proxy-middleware": "^2.0.3", + "ipaddr.js": "^2.0.1", + "open": "^8.0.9", + "p-retry": "^4.5.0", + "rimraf": "^3.0.2", + "schema-utils": "^4.0.0", + "selfsigned": "^2.0.1", + "serve-index": "^1.9.1", + "sockjs": "^0.3.24", + "spdy": "^4.0.2", + "webpack-dev-middleware": "^5.3.1", + "ws": "^8.4.2" + }, + "dependencies": { + "ajv-keywords": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz", + "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", "dev": true, "requires": { - "has-flag": "^3.0.0" + "fast-deep-equal": "^3.1.3" } }, - "to-regex-range": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", - "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=", + "schema-utils": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.0.0.tgz", + "integrity": "sha512-1edyXKgh6XnJsJSQ8mKWXnN/BVaIbFMLpouRUrXgVq7WYne5kw3MW7UPhO44uRXQSIpTSXoJbmrR2X0w9kUTyg==", "dev": true, "requires": { - "is-number": "^3.0.0", - "repeat-string": "^1.6.1" + "@types/json-schema": "^7.0.9", + "ajv": "^8.8.0", + "ajv-formats": "^2.1.1", + "ajv-keywords": "^5.0.0" } } } }, - "webpack-log": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/webpack-log/-/webpack-log-2.0.0.tgz", - "integrity": "sha512-cX8G2vR/85UYG59FgkoMamwHUIkSSlV3bBMRsbxVXVUk2j6NleCKjQ/WE9eYg9WY4w25O9w8wKP4rzNZFmUcUg==", - "dev": true, - "requires": { - "ansi-colors": "^3.0.0", - "uuid": "^3.3.2" - } - }, "webpack-merge": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/webpack-merge/-/webpack-merge-4.2.1.tgz", - "integrity": "sha512-4p8WQyS98bUJcCvFMbdGZyZmsKuWjWVnVHnAS3FFg0HDaRVrPbkivx2RYCre8UiemD67RsiFFLfn4JhLAin8Vw==", + "version": "5.8.0", + "resolved": "https://registry.npmjs.org/webpack-merge/-/webpack-merge-5.8.0.tgz", + "integrity": "sha512-/SaI7xY0831XwP6kzuwhKWVKDP9t1QY1h65lAFLbZqMPIuYcD9QAW4u9STIbU9kaJbPBB/geU/gLr1wDjOhQ+Q==", "dev": true, "requires": { - "lodash": "^4.17.5" + "clone-deep": "^4.0.1", + "wildcard": "^2.0.0" } }, "webpack-sources": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-1.4.3.tgz", - "integrity": "sha512-lgTS3Xhv1lCOKo7SA5TjKXMjpSM4sBjNV5+q2bqesbSPs5FjGmU6jjtBSkX9b4qW87vDIsCIlUPOEhbZrMdjeQ==", - "dev": true, - "requires": { - "source-list-map": "^2.0.0", - "source-map": "~0.6.1" - }, - "dependencies": { - "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 - } - } + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-3.2.3.tgz", + "integrity": "sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w==", + "dev": true }, "webpack-subresource-integrity": { - "version": "1.1.0-rc.6", - "resolved": "https://registry.npmjs.org/webpack-subresource-integrity/-/webpack-subresource-integrity-1.1.0-rc.6.tgz", - "integrity": "sha512-Az7y8xTniNhaA0620AV1KPwWOqawurVVDzQSpPAeR5RwNbL91GoBSJAAo9cfd+GiFHwsS5bbHepBw1e6Hzxy4w==", + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/webpack-subresource-integrity/-/webpack-subresource-integrity-5.1.0.tgz", + "integrity": "sha512-sacXoX+xd8r4WKsy9MvH/q/vBtEHr86cpImXwyg74pFIpERKt6FmB8cXpeuh0ZLgclOlHI4Wcll7+R5L02xk9Q==", "dev": true, "requires": { - "webpack-core": "^0.6.8" + "typed-assert": "^1.0.8" } }, "websocket-driver": { - "version": "0.7.3", - "resolved": "https://registry.npmjs.org/websocket-driver/-/websocket-driver-0.7.3.tgz", - "integrity": "sha512-bpxWlvbbB459Mlipc5GBzzZwhoZgGEZLuqPaR0INBGnPAY1vdBX6hPnoFXiw+3yWxDuHyQjO2oXTMyS8A5haFg==", + "version": "0.7.4", + "resolved": "https://registry.npmjs.org/websocket-driver/-/websocket-driver-0.7.4.tgz", + "integrity": "sha512-b17KeDIQVjvb0ssuSDF2cYXSg2iztliJ4B9WdsuB6J952qCPKmnVq4DyW5motImXHDC1cBT/1UezrJVsKw5zjg==", "dev": true, "requires": { - "http-parser-js": ">=0.4.0 <0.4.11", + "http-parser-js": ">=0.5.1", "safe-buffer": ">=5.1.0", "websocket-extensions": ">=0.1.1" } }, "websocket-extensions": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/websocket-extensions/-/websocket-extensions-0.1.3.tgz", - "integrity": "sha512-nqHUnMXmBzT0w570r2JpJxfiSD1IzoI+HGVdd3aZ0yNi3ngvQ4jv1dtHt5VGxfI2yj5yqImPhOK4vmIh2xMbGg==", - "dev": true - }, - "when": { - "version": "3.6.4", - "resolved": "https://registry.npmjs.org/when/-/when-3.6.4.tgz", - "integrity": "sha1-RztRfsFZ4rhQBUl6E5g/CVQS404=", + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/websocket-extensions/-/websocket-extensions-0.1.4.tgz", + "integrity": "sha512-OqedPIGOfsDlo31UNwYbCFMSaO9m9G/0faIHj5/dZFDMFqPTcx6UwqyOy3COEaEOg/9VsGIpdqn62W5KhoKSpg==", "dev": true }, "which": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", - "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "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" @@ -13854,104 +10165,71 @@ "which-module": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", - "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=", + "integrity": "sha512-B+enWhmw6cjfVC7kS8Pj9pCrKSc5txArRyaYGe088shv/FGWH+0Rjx/xPgtsWfsUtS27FkP697E4DDhgrgoc0Q==", "dev": true }, - "widest-line": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/widest-line/-/widest-line-2.0.1.tgz", - "integrity": "sha512-Ba5m9/Fa4Xt9eb2ELXt77JxVDV8w7qQrH0zS/TWSJdLyAwQjWoOzpzj5lwVftDz6n/EOu3tNACS84v509qwnJA==", + "wide-align": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.5.tgz", + "integrity": "sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==", "dev": true, "requires": { - "string-width": "^2.1.1" + "string-width": "^1.0.2 || 2 || 3 || 4" } }, - "wordwrap": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.3.tgz", - "integrity": "sha1-o9XabNXAvAAI03I0u68b7WMFkQc=", + "wildcard": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/wildcard/-/wildcard-2.0.0.tgz", + "integrity": "sha512-JcKqAHLPxcdb9KM49dufGXn2x3ssnfjbcaQdLlfZsL9rH9wgDQjUtDxbo8NE0F6SFvydeu1VhZe7hZuHsB2/pw==", "dev": true }, - "worker-farm": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/worker-farm/-/worker-farm-1.7.0.tgz", - "integrity": "sha512-rvw3QTZc8lAxyVrqcSGVm5yP/IJ2UcB3U0graE3LCFoZ0Yn2x4EoVSqJKdB/T5M+FLcRPjz4TDacRf3OCfNUzw==", - "dev": true, - "requires": { - "errno": "~0.1.7" - } - }, - "worker-plugin": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/worker-plugin/-/worker-plugin-3.2.0.tgz", - "integrity": "sha512-W5nRkw7+HlbsEt3qRP6MczwDDISjiRj2GYt9+bpe8A2La00TmJdwzG5bpdMXhRt1qcWmwAvl1TiKaHRa+XDS9Q==", - "dev": true, - "requires": { - "loader-utils": "^1.1.0" - } - }, "wrap-ansi": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-2.1.0.tgz", - "integrity": "sha1-2Pw9KE3QV5T+hJc8rs3Rz4JP3YU=", + "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": { - "string-width": "^1.0.1", - "strip-ansi": "^3.0.1" + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" }, "dependencies": { - "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=", + "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": { - "number-is-nan": "^1.0.0" + "color-convert": "^2.0.1" } }, - "string-width": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", - "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "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": { - "code-point-at": "^1.0.0", - "is-fullwidth-code-point": "^1.0.0", - "strip-ansi": "^3.0.0" + "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 } } }, "wrappy": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", "dev": true }, - "write-file-atomic": { - "version": "2.4.3", - "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-2.4.3.tgz", - "integrity": "sha512-GaETH5wwsX+GcnzhPgKcKjJ6M2Cq3/iZp1WyY/X1CSqrW+jVNM9Y7D8EC2sM4ZG/V8wZlSniJnCKWPmBYAucRQ==", - "dev": true, - "requires": { - "graceful-fs": "^4.1.11", - "imurmurhash": "^0.1.4", - "signal-exit": "^3.0.2" - } - }, "ws": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/ws/-/ws-6.2.1.tgz", - "integrity": "sha512-GIyAXC2cB7LjvpgMt9EKS2ldqr0MTrORaleiOno6TweZ6r3TKtoFQWay/2PceJ3RuBasOHzXNn5Lrw1X0bEjqA==", - "dev": true, - "requires": { - "async-limiter": "~1.0.0" - } - }, - "xdg-basedir": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/xdg-basedir/-/xdg-basedir-3.0.0.tgz", - "integrity": "sha1-SWsswQnsqNus/i3HK2A8F8WHCtQ=", + "version": "8.11.0", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.11.0.tgz", + "integrity": "sha512-HPG3wQd9sNQoT9xHyNCXoDUa+Xw/VevmY9FoHyQ+g+rrMn4j6FB4np7Z0OhdTgjx6MgQLK7jwSy1YecU1+4Asg==", "dev": true }, "xml2js": { @@ -13962,14 +10240,6 @@ "requires": { "sax": ">=0.6.0", "xmlbuilder": "~11.0.0" - }, - "dependencies": { - "sax": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", - "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==", - "dev": true - } } }, "xmlbuilder": { @@ -13978,18 +10248,6 @@ "integrity": "sha512-fDlsI/kFEx7gLvbecc0/ohLG50fugQp8ryHzMTuW9vSa1GJ0XYWKnhsUx7oie3G98+r56aTQIUB4kht42R3JvA==", "dev": true }, - "xmlhttprequest-ssl": { - "version": "1.5.5", - "resolved": "https://registry.npmjs.org/xmlhttprequest-ssl/-/xmlhttprequest-ssl-1.5.5.tgz", - "integrity": "sha1-wodrBhaKrcQOV9l+gRkayPQ5iz4=", - "dev": true - }, - "xtend": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", - "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==", - "dev": true - }, "xxhashjs": { "version": "0.2.2", "resolved": "https://registry.npmjs.org/xxhashjs/-/xxhashjs-0.2.2.tgz", @@ -14000,63 +10258,57 @@ } }, "y18n": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.0.tgz", - "integrity": "sha512-r9S/ZyXu/Xu9q1tYlpsLIsa3EeLXXk0VwlxqTcFRfg9EhMW+17kbt9G0NrgCmhGb5vT2hyhJZLfDGx+7+5Uj/w==", + "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": "3.1.1", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", - "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "yaml": { + "version": "1.10.2", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz", + "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==", "dev": true }, "yargs": { - "version": "12.0.5", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-12.0.5.tgz", - "integrity": "sha512-Lhz8TLaYnxq/2ObqHDql8dX8CJi97oHxrjUcYtzKbbykPtVW9WB+poxI+NM2UIzsMgNCZTIf0AQwsjK5yMAqZw==", + "version": "17.5.1", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.5.1.tgz", + "integrity": "sha512-t6YAJcxDkNX7NFYiVtKvWUz8l+PaKTLiL63mJYWR2GnHq2gjEWISzsLp9wg3aY36dY1j+gfIEL3pIF+XlJJfbA==", "dev": true, "requires": { - "cliui": "^4.0.0", - "decamelize": "^1.2.0", - "find-up": "^3.0.0", - "get-caller-file": "^1.0.1", - "os-locale": "^3.0.0", + "cliui": "^7.0.2", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", "require-directory": "^2.1.1", - "require-main-filename": "^1.0.1", - "set-blocking": "^2.0.0", - "string-width": "^2.0.0", - "which-module": "^2.0.0", - "y18n": "^3.2.1 || ^4.0.0", - "yargs-parser": "^11.1.1" + "string-width": "^4.2.3", + "y18n": "^5.0.5", + "yargs-parser": "^21.0.0" } }, "yargs-parser": { - "version": "11.1.1", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-11.1.1.tgz", - "integrity": "sha512-C6kB/WJDiaxONLJQnF8ccx9SEeoTTLek8RVbaOIsrAUS8VrBEXfmeSnCZxygc+XC2sNMBIwOOnfcxiynjHsVSQ==", - "dev": true, - "requires": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" - } - }, - "yeast": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/yeast/-/yeast-0.1.2.tgz", - "integrity": "sha1-AI4G2AlDIMNy28L47XagymyKxBk=", + "version": "21.1.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", + "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", "dev": true }, "yn": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/yn/-/yn-2.0.0.tgz", - "integrity": "sha1-5a2ryKz0CPY4X8dklWhMiOavaJo=", + "integrity": "sha512-uTv8J/wiWTgUTg+9vLTi//leUl5vDQS6uii/emeTb2ssY7vl6QWf2fFbIIGjnhjvbdKlU0ed7QPgY1htTC86jQ==", "dev": true }, "zone.js": { - "version": "0.9.1", - "resolved": "https://registry.npmjs.org/zone.js/-/zone.js-0.9.1.tgz", - "integrity": "sha512-GkPiJL8jifSrKReKaTZ5jkhrMEgXbXYC+IPo1iquBjayRa0q86w3Dipjn8b415jpitMExe9lV8iTsv8tk3DGag==" + "version": "0.11.8", + "resolved": "https://registry.npmjs.org/zone.js/-/zone.js-0.11.8.tgz", + "integrity": "sha512-82bctBg2hKcEJ21humWIkXRlLBBmrc3nN7DFh5LGGhcyycO2S7FN8NmdvlcKaGFDNVL4/9kFLmwmInTavdJERA==", + "requires": { + "tslib": "^2.3.0" + } } } } diff --git a/plugins/image/web-app/package.json b/plugins/image/web-app/package.json index 6c020507c..7dfcd14f7 100644 --- a/plugins/image/web-app/package.json +++ b/plugins/image/web-app/package.json @@ -11,46 +11,45 @@ }, "private": true, "dependencies": { - "@angular/animations": "~8.2.14", - "@angular/common": "~8.2.14", - "@angular/compiler": "~8.2.14", - "@angular/core": "~8.2.14", - "@angular/forms": "~8.2.14", - "@angular/platform-browser": "~8.2.14", - "@angular/platform-browser-dynamic": "~8.2.14", - "@angular/router": "~8.2.14", - "@angular/upgrade": "~8.2.14", - "@uirouter/angular": "^6.0.1", - "@uirouter/angular-hybrid": "^10.0.1", - "@uirouter/angularjs": "^1.0.24", - "@uirouter/rx": "^0.6.5", + "@angular/animations": "^14.2.12", + "@angular/common": "^14.2.12", + "@angular/compiler": "^14.2.12", + "@angular/core": "^14.2.12", + "@angular/forms": "^14.2.12", + "@angular/platform-browser": "^14.2.12", + "@angular/platform-browser-dynamic": "^14.2.12", + "@angular/router": "^14.2.12", + "@angular/upgrade": "^14.2.12", + "@uirouter/angular": "9.1.0", + "@uirouter/angular-hybrid": "^13.0.0", + "@uirouter/angularjs": "1.0.30", + "@uirouter/rx": "^1.0.0", "angular": "1.5.11", - "rxjs": "~6.4.0", - "tslib": "^1.10.0", - "zone.js": "~0.9.1" + "rxjs": "~7.6.0", + "tslib": "^2.0.0", + "zone.js": "~0.11.4" }, "devDependencies": { - "@angular-devkit/build-angular": "~0.803.23", - "@angular-devkit/build-ng-packagr": "~0.803.23", - "@angular/cli": "~8.3.23", - "@angular/compiler-cli": "~8.2.14", - "@angular/language-service": "~8.2.14", - "@types/node": "~8.9.4", - "@types/jasmine": "~3.3.8", - "@types/jasminewd2": "~2.0.3", - "codelyzer": "^5.0.0", - "jasmine-core": "~3.4.0", - "jasmine-spec-reporter": "~4.2.1", - "karma": "~4.1.0", - "karma-chrome-launcher": "~2.2.0", - "karma-coverage-istanbul-reporter": "~2.0.1", - "karma-jasmine": "~2.0.1", - "karma-jasmine-html-reporter": "^1.4.0", - "ng-packagr": "^5.4.0", - "protractor": "~5.4.0", + "@angular-devkit/build-angular": "^14.2.10", + "@angular-devkit/core": "^14.2.10", + "@angular/cli": "^14.2.10", + "@angular/compiler-cli": "^14.2.12", + "@angular/language-service": "^14.2.12", + "@types/node": "^18.11.13", + "@types/jasmine": "~4.3.1", + "@types/jasminewd2": "~2.0.10", + "codelyzer": "^6.0.0", + "jasmine-core": "~4.5.0", + "jasmine-spec-reporter": "~7.0.0", + "karma": "~6.4.1", + "karma-chrome-launcher": "~3.1.1", + "karma-coverage-istanbul-reporter": "~3.0.3", + "karma-jasmine": "~5.1.0", + "karma-jasmine-html-reporter": "^2.0.0", + "ng-packagr": "^14.2.2", + "protractor": "~7.0.0", "ts-node": "~7.0.0", - "tsickle": "^0.37.0", - "tslint": "~5.15.0", - "typescript": "~3.5.3" + "tslint": "~6.1.3", + "typescript": "~4.6.4" } } diff --git a/plugins/image/web-app/projects/mage-image/package.json b/plugins/image/web-app/projects/mage-image/package.json index 323c041af..9e784d98a 100644 --- a/plugins/image/web-app/projects/mage-image/package.json +++ b/plugins/image/web-app/projects/mage-image/package.json @@ -1,9 +1,12 @@ { "name": "@ngageoint/mage.image.web-app.admin", "version": "0.0.1", + "dependencies": { + "tslib": "^2.0.0" + }, "peerDependencies": { - "@angular/common": "^8.2.14", - "@angular/core": "^8.2.14", - "@uirouter/angular-hybrid": "^10.0.1" + "@angular/common": "^14.2.12", + "@angular/core": "^14.2.12", + "@uirouter/angular-hybrid": "^14.0.0" } -} \ No newline at end of file +} diff --git a/plugins/image/web-app/projects/mage-image/src/lib/mage-image.service.spec.ts b/plugins/image/web-app/projects/mage-image/src/lib/mage-image.service.spec.ts index 24bfa1743..89b1b3031 100644 --- a/plugins/image/web-app/projects/mage-image/src/lib/mage-image.service.spec.ts +++ b/plugins/image/web-app/projects/mage-image/src/lib/mage-image.service.spec.ts @@ -6,7 +6,7 @@ describe('ImageService', () => { beforeEach(() => TestBed.configureTestingModule({})); it('should be created', () => { - const service: ImageService = TestBed.get(ImageService); + const service: ImageService = TestBed.inject(ImageService); expect(service).toBeTruthy(); }); }); diff --git a/plugins/image/web-app/projects/mage-image/src/test.ts b/plugins/image/web-app/projects/mage-image/src/test.ts index 978c64fb8..72284da9c 100644 --- a/plugins/image/web-app/projects/mage-image/src/test.ts +++ b/plugins/image/web-app/projects/mage-image/src/test.ts @@ -1,7 +1,7 @@ // This file is required by karma.conf.js and loads recursively all the .spec and framework files -import 'zone.js/dist/zone'; -import 'zone.js/dist/zone-testing'; +import 'zone.js'; +import 'zone.js/testing'; import { getTestBed } from '@angular/core/testing'; import { BrowserDynamicTestingModule, @@ -13,7 +13,9 @@ declare const require: any; // First, initialize the Angular testing environment. getTestBed().initTestEnvironment( BrowserDynamicTestingModule, - platformBrowserDynamicTesting() + platformBrowserDynamicTesting(), { + teardown: { destroyAfterEach: false } +} ); // Then we find all the tests. const context = require.context('./', true, /\.spec\.ts$/); diff --git a/plugins/image/web-app/projects/mage-image/tsconfig.lib.json b/plugins/image/web-app/projects/mage-image/tsconfig.lib.json index bd23948e5..ced4e5ccc 100644 --- a/plugins/image/web-app/projects/mage-image/tsconfig.lib.json +++ b/plugins/image/web-app/projects/mage-image/tsconfig.lib.json @@ -2,7 +2,8 @@ "extends": "../../tsconfig.json", "compilerOptions": { "outDir": "../../out-tsc/lib", - "target": "es2015", + "declarationMap": true, + "target": "es2020", "declaration": true, "inlineSources": true, "types": [], @@ -12,7 +13,6 @@ ] }, "angularCompilerOptions": { - "annotateForClosureCompiler": true, "skipTemplateCodegen": true, "strictMetadataEmit": true, "fullTemplateTypeCheck": true, diff --git a/plugins/image/web-app/projects/mage-image/tsconfig.lib.prod.json b/plugins/image/web-app/projects/mage-image/tsconfig.lib.prod.json new file mode 100644 index 000000000..6330633d9 --- /dev/null +++ b/plugins/image/web-app/projects/mage-image/tsconfig.lib.prod.json @@ -0,0 +1,9 @@ +{ + "extends": "./tsconfig.lib.json", + "compilerOptions": { + "declarationMap": false + }, + "angularCompilerOptions": { + "compilationMode": "partial" + } +} \ No newline at end of file diff --git a/plugins/image/web-app/tsconfig.json b/plugins/image/web-app/tsconfig.json index f749050c1..838c52090 100644 --- a/plugins/image/web-app/tsconfig.json +++ b/plugins/image/web-app/tsconfig.json @@ -7,10 +7,10 @@ "declaration": false, "downlevelIteration": true, "experimentalDecorators": true, - "module": "esnext", + "module": "es2020", "moduleResolution": "node", "importHelpers": true, - "target": "es2015", + "target": "es2020", "typeRoots": [ "node_modules/@types" ], diff --git a/plugins/image/web-app/tslint.json b/plugins/image/web-app/tslint.json index e77091336..430576cb1 100644 --- a/plugins/image/web-app/tslint.json +++ b/plugins/image/web-app/tslint.json @@ -4,8 +4,15 @@ "codelyzer" ], "rules": { + "align": { + "options": [ + "parameters", + "statements" + ] + }, "array-type": false, "arrow-parens": false, + "arrow-return-shorthand": true, "deprecation": { "severity": "warning" }, @@ -13,12 +20,20 @@ true, "rxjs/Rx" ], + "curly": true, "interface-name": false, "max-classes-per-file": false, + "eofline": true, "max-line-length": [ true, 140 ], + "import-spacing": true, + "indent": { + "options": [ + "spaces" + ] + }, "member-access": false, "member-ordering": [ true, @@ -70,10 +85,59 @@ "no-output-native": true, "no-output-on-prefix": true, "no-output-rename": true, + "semicolon": { + "options": [ + "always" + ] + }, + "space-before-function-paren": { + "options": { + "anonymous": "never", + "asyncArrow": "always", + "constructor": "never", + "method": "never", + "named": "never" + } + }, "no-outputs-metadata-property": true, "template-banana-in-box": true, "template-no-negated-async": true, + "typedef-whitespace": { + "options": [ + { + "call-signature": "nospace", + "index-signature": "nospace", + "parameter": "nospace", + "property-declaration": "nospace", + "variable-declaration": "nospace" + }, + { + "call-signature": "onespace", + "index-signature": "onespace", + "parameter": "onespace", + "property-declaration": "onespace", + "variable-declaration": "onespace" + } + ] + }, "use-lifecycle-interface": true, - "use-pipe-transform-interface": true + "use-pipe-transform-interface": true, + "variable-name": { + "options": [ + "ban-keywords", + "check-format", + "allow-pascal-case" + ] + }, + "whitespace": { + "options": [ + "check-branch", + "check-decl", + "check-operator", + "check-separator", + "check-type", + "check-typecast" + ] + } } } diff --git a/plugins/nga-msi/package-lock.json b/plugins/nga-msi/package-lock.json index 5e1cee86e..da8ff6adb 100644 --- a/plugins/nga-msi/package-lock.json +++ b/plugins/nga-msi/package-lock.json @@ -1,332 +1,227 @@ { "name": "@ngageoint/mage.nga-msi", - "version": "1.0.4", + "version": "1.0.5", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@ngageoint/mage.nga-msi", - "version": "1.0.4", + "version": "1.0.5", "license": "MIT", "dependencies": { - "@types/geojson": "^7946.0.7", - "axios": "^0.27.2" + "axios": "0.27.2" }, "devDependencies": { - "@types/jest": "^26.0.3", - "cpy-cli": "^3.1.1", - "jest": "^26.1.0", - "nock": "^12.0.3", - "npm-run-all": "^4.1.5", - "ts-jest": "^26.1.1", - "typescript": "^4.6.3" + "@types/geojson": "7946.0.16", + "@types/jest": "29.5.14", + "@types/json-schema": "7.0.15", + "jest": "29.7.0", + "ts-jest": "29.2.6", + "typescript": "5.8.2" }, "peerDependencies": { - "@ngageoint/mage.service": "^6.2.3 || ~6.2.12-beta" + "@ngageoint/mage.service": "6.3.0-beta.7" } }, - "../../service": { - "name": "@ngageoint/mage.service", - "version": "6.2.12-beta.1", - "peer": true, + "node_modules/@ampproject/remapping": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.3.0.tgz", + "integrity": "sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==", + "dev": true, + "license": "Apache-2.0", "dependencies": { - "@ngageoint/geopackage": "^4.2.6", - "@node-saml/passport-saml": "^4.0.4", - "@turf/centroid": "^6.5.0", - "@turf/kinks": "^6.5.0", - "@types/geojson": "^7946.0.7", - "@types/json-schema": "^7.0.11", - "@types/mime-types": "^2.1.1", - "@xmldom/xmldom": "^0.8.10", - "adm-zip": "0.4.9", - "archiver": "5.3.0", - "async": "^3.2.4", - "base-64": "1.0.0", - "better-sqlite3": "^8.6.0", - "body-parser": "~1.19.0", - "busboy": "^1.6.0", - "cfenv": "1.0.3", - "commander": "^8.2.0", - "dbf": "0.1.0", - "express": "^4.18.2", - "express-session": "1.17.2", - "file-type": "^16.5.4", - "fs-extra": "4.0.3", - "geojson": "^0.5.0", - "geojson-validation": "^1.0.2", - "gm": "1.23.1", - "json2csv": "4.5.1", - "jsonwebtoken": "^9.0.2", - "lodash": "^4.17.21", - "mgrs": "^1.0.0", - "mime-types": "^2.1.35", - "moment": "^2.29.4", - "mongodb-migrations": "0.8.5", - "mongoose": "^4.13.21", - "mongoose-beautiful-unique-validation": "7.1.1", - "multer": "^1.4.5-lts.1", - "node-fetch": "^2.6.0", - "passport": "^0.6.0", - "passport-anonymous": "1.0.1", - "passport-http-bearer": "1.0.1", - "passport-ldapauth": "^3.0.1", - "passport-local": "1.0.0", - "passport-oauth2": "1.6.0", - "passport-openidconnect": "0.1.1", - "pem-jwk": "1.5.1", - "pem2jwk": "1.0.2", - "pug": "^3.0.2", - "rfc5646": "^3.0.0", - "superagent": "^8.0.0", - "svg-captcha": "^1.4.0", - "uniqid": "^5.2.0", - "walk": "2.3.4", - "winston": "1.0.1", - "wkx": "0.4.8", - "wms-capabilities": "^0.4.0", - "xmlbuilder2": "3.0.2", - "xpath": "0.0.23", - "yaml": "^1.8.2" - }, - "bin": { - "mage.service": "bin/mage.service.js" - }, - "devDependencies": { - "@fluffy-spoon/substitute": "^1.196.0", - "@types/archiver": "^5.3.4", - "@types/async": "^3.0.5", - "@types/bson": "^1.0.11", - "@types/busboy": "^1.5.0", - "@types/chai": "^4.2.19", - "@types/chai-as-promised": "^7.1.2", - "@types/deep-equal": "^1.0.1", - "@types/express": "^4.17.19", - "@types/express-serve-static-core": "~4.17.0", - "@types/fs-extra": "^8.0.1", - "@types/json2csv": "~4.5.0", - "@types/lodash": "^4.14.155", - "@types/mocha": "^7.0.2", - "@types/mongodb": "^3.6.20", - "@types/mongoose": "^4.7.56", - "@types/multer": "^1.4.7", - "@types/node": "^18.18.4", - "@types/node-fetch": "^2.5.4", - "@types/passport": "^1.0.3", - "@types/sinon": "^9.0.4", - "@types/sinon-chai": "^3.2.4", - "@types/superagent": "^8.1.3", - "@types/supertest": "^2.0.16", - "@types/uniqid": "^5.2.0", - "@typescript-eslint/eslint-plugin": "^6.7.5", - "@typescript-eslint/parser": "^6.7.5", - "ajv": "^6.11.0", - "assert": "2.0.0", - "axios": "^1.6.5", - "chai": "^4.3.6", - "chai-as-promised": "^7.1.1", - "coveralls": "3.0.4", - "cpy-cli": "^5.0.0", - "deep-equal": "^2.0.2", - "eslint": "^8.51.0", - "eslint-config-prettier": "^6.9.0", - "eslint-plugin-prettier": "^3.1.2", - "iconv-lite": "^0.5.1", - "jszip": "^3.7.1", - "mocha": "^7.1.1", - "mock-fs": "4.13.0", - "mongodb-memory-server": "^9.1.3", - "nock": "^11.7.2", - "npm-run-all": "^4.1.5", - "nyc": "^14.1.1", - "openapi-enforcer": "1.15.5", - "prettier": "^1.19.1", - "proxyquire": "2.1.3", - "rimraf": "^5.0.5", - "sinon": "7.5.0", - "sinon-chai": "3.3.0", - "sinon-mongoose": "2.3.0", - "supertest": "^6.3.3", - "ts-mockito": "^2.5.0", - "typescript": "~4.6.0", - "wtfnode": "^0.8.4" - }, - "engines": { - "node": ">= 16.x", - "npm": ">= 8.x" - } - }, - "../../service/node_modules/@babel/code-frame": { - "version": "7.16.7", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "@babel/highlight": "^7.16.7" + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.24" }, "engines": { - "node": ">=6.9.0" + "node": ">=6.0.0" } }, - "../../service/node_modules/@babel/generator": { - "version": "7.17.9", + "node_modules/@babel/code-frame": { + "version": "7.26.2", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.26.2.tgz", + "integrity": "sha512-RJlIHRueQgwWitWgF8OdFYGZX328Ax5BCemNGlqHfplnRT9ESi8JkFlvaVYbS+UubVY6dpv87Fs2u5M29iNFVQ==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "@babel/types": "^7.17.0", - "jsesc": "^2.5.1", - "source-map": "^0.5.0" + "@babel/helper-validator-identifier": "^7.25.9", + "js-tokens": "^4.0.0", + "picocolors": "^1.0.0" }, "engines": { "node": ">=6.9.0" } }, - "../../service/node_modules/@babel/generator/node_modules/source-map": { - "version": "0.5.7", + "node_modules/@babel/compat-data": { + "version": "7.26.8", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.26.8.tgz", + "integrity": "sha512-oH5UPLMWR3L2wEFLnFJ1TZXqHufiTKAiLfqw5zkhS4dKXLJ10yVztfil/twG8EDTA4F/tvVNw9nOl4ZMslB8rQ==", "dev": true, - "license": "BSD-3-Clause", - "peer": true, + "license": "MIT", "engines": { - "node": ">=0.10.0" + "node": ">=6.9.0" } }, - "../../service/node_modules/@babel/helper-environment-visitor": { - "version": "7.16.7", + "node_modules/@babel/core": { + "version": "7.26.10", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.26.10.tgz", + "integrity": "sha512-vMqyb7XCDMPvJFFOaT9kxtiRh42GwlZEg1/uIgtZshS5a/8OaduUfCi7kynKgc3Tw/6Uo2D+db9qBttghhmxwQ==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "@babel/types": "^7.16.7" + "@ampproject/remapping": "^2.2.0", + "@babel/code-frame": "^7.26.2", + "@babel/generator": "^7.26.10", + "@babel/helper-compilation-targets": "^7.26.5", + "@babel/helper-module-transforms": "^7.26.0", + "@babel/helpers": "^7.26.10", + "@babel/parser": "^7.26.10", + "@babel/template": "^7.26.9", + "@babel/traverse": "^7.26.10", + "@babel/types": "^7.26.10", + "convert-source-map": "^2.0.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.2", + "json5": "^2.2.3", + "semver": "^6.3.1" }, "engines": { "node": ">=6.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/babel" } }, - "../../service/node_modules/@babel/helper-function-name": { - "version": "7.17.9", + "node_modules/@babel/generator": { + "version": "7.27.0", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.27.0.tgz", + "integrity": "sha512-VybsKvpiN1gU1sdMZIp7FcqphVVKEwcuj02x73uvcHE0PTihx1nlBcowYWhDwjpoAXRv43+gDzyggGnn1XZhVw==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "@babel/template": "^7.16.7", - "@babel/types": "^7.17.0" + "@babel/parser": "^7.27.0", + "@babel/types": "^7.27.0", + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.25", + "jsesc": "^3.0.2" }, "engines": { "node": ">=6.9.0" } }, - "../../service/node_modules/@babel/helper-hoist-variables": { - "version": "7.16.7", + "node_modules/@babel/helper-compilation-targets": { + "version": "7.27.0", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.27.0.tgz", + "integrity": "sha512-LVk7fbXml0H2xH34dFzKQ7TDZ2G4/rVTOrq9V+icbbadjbVxxeFeDsNHv2SrZeWoA+6ZiTyWYWtScEIW07EAcA==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "@babel/types": "^7.16.7" + "@babel/compat-data": "^7.26.8", + "@babel/helper-validator-option": "^7.25.9", + "browserslist": "^4.24.0", + "lru-cache": "^5.1.1", + "semver": "^6.3.1" }, "engines": { "node": ">=6.9.0" } }, - "../../service/node_modules/@babel/helper-split-export-declaration": { - "version": "7.16.7", + "node_modules/@babel/helper-module-imports": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.25.9.tgz", + "integrity": "sha512-tnUA4RsrmflIM6W6RFTLFSXITtl0wKjgpnLgXyowocVPrbYrLUXSBXDgTs8BlbmIzIdlBySRQjINYs2BAkiLtw==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "@babel/types": "^7.16.7" + "@babel/traverse": "^7.25.9", + "@babel/types": "^7.25.9" }, "engines": { "node": ">=6.9.0" } }, - "../../service/node_modules/@babel/helper-validator-identifier": { - "version": "7.16.7", - "license": "MIT", - "peer": true, - "engines": { - "node": ">=6.9.0" - } - }, - "../../service/node_modules/@babel/highlight": { - "version": "7.17.9", + "node_modules/@babel/helper-module-transforms": { + "version": "7.26.0", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.26.0.tgz", + "integrity": "sha512-xO+xu6B5K2czEnQye6BHA7DolFFmS3LB7stHZFaOLb1pAwO1HWLS8fXA+eh0A2yIvltPVmx3eNNDBJA2SLHXFw==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "@babel/helper-validator-identifier": "^7.16.7", - "chalk": "^2.0.0", - "js-tokens": "^4.0.0" + "@babel/helper-module-imports": "^7.25.9", + "@babel/helper-validator-identifier": "^7.25.9", + "@babel/traverse": "^7.25.9" }, "engines": { "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" } }, - "../../service/node_modules/@babel/highlight/node_modules/ansi-styles": { - "version": "3.2.1", + "node_modules/@babel/helper-plugin-utils": { + "version": "7.26.5", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.26.5.tgz", + "integrity": "sha512-RS+jZcRdZdRFzMyr+wcsaqOmld1/EqTghfaBGQQd/WnRdzdlvSZ//kF7U8VQTxf1ynZ4cjUcYgjVGx13ewNPMg==", "dev": true, "license": "MIT", - "peer": true, - "dependencies": { - "color-convert": "^1.9.0" - }, "engines": { - "node": ">=4" + "node": ">=6.9.0" } }, - "../../service/node_modules/@babel/highlight/node_modules/chalk": { - "version": "2.4.2", + "node_modules/@babel/helper-string-parser": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.25.9.tgz", + "integrity": "sha512-4A/SCr/2KLd5jrtOMFzaKjVtAei3+2r/NChoBNoZ3EyP/+GlhoaEGoWOZUmFmoITP7zOJyHIMm+DYRd8o3PvHA==", "dev": true, "license": "MIT", - "peer": true, - "dependencies": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, "engines": { - "node": ">=4" + "node": ">=6.9.0" } }, - "../../service/node_modules/@babel/highlight/node_modules/color-convert": { - "version": "1.9.3", + "node_modules/@babel/helper-validator-identifier": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.25.9.tgz", + "integrity": "sha512-Ed61U6XJc3CVRfkERJWDz4dJwKe7iLmmJsbOGu9wSloNSFttHV0I8g6UAgb7qnK5ly5bGLPd4oXZlxCdANBOWQ==", "dev": true, "license": "MIT", - "peer": true, - "dependencies": { - "color-name": "1.1.3" + "engines": { + "node": ">=6.9.0" } }, - "../../service/node_modules/@babel/highlight/node_modules/color-name": { - "version": "1.1.3", - "dev": true, - "license": "MIT", - "peer": true - }, - "../../service/node_modules/@babel/highlight/node_modules/has-flag": { - "version": "3.0.0", + "node_modules/@babel/helper-validator-option": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.25.9.tgz", + "integrity": "sha512-e/zv1co8pp55dNdEcCynfj9X7nyUKUXoUEwfXqaZt0omVOmDe9oOTdKStH4GmAw6zxMFs50ZayuMfHDKlO7Tfw==", "dev": true, "license": "MIT", - "peer": true, "engines": { - "node": ">=4" + "node": ">=6.9.0" } }, - "../../service/node_modules/@babel/highlight/node_modules/supports-color": { - "version": "5.5.0", + "node_modules/@babel/helpers": { + "version": "7.27.0", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.27.0.tgz", + "integrity": "sha512-U5eyP/CTFPuNE3qk+WZMxFkp/4zUzdceQlfzf7DdGdhp+Fezd7HD+i8Y24ZuTMKX3wQBld449jijbGq6OdGNQg==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "has-flag": "^3.0.0" + "@babel/template": "^7.27.0", + "@babel/types": "^7.27.0" }, "engines": { - "node": ">=4" + "node": ">=6.9.0" } }, - "../../service/node_modules/@babel/parser": { - "version": "7.17.9", + "node_modules/@babel/parser": { + "version": "7.27.0", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.27.0.tgz", + "integrity": "sha512-iaepho73/2Pz7w2eMS0Q5f83+0RKI7i4xmiYeBmDzfRVbQtTOG7Ts0S4HzJVsTMGI9keU8rNfuZr8DKfSt7Yyg==", + "dev": true, "license": "MIT", - "peer": true, + "dependencies": { + "@babel/types": "^7.27.0" + }, "bin": { "parser": "bin/babel-parser.js" }, @@ -334,3667 +229,4462 @@ "node": ">=6.0.0" } }, - "../../service/node_modules/@babel/template": { - "version": "7.16.7", + "node_modules/@babel/plugin-syntax-async-generators": { + "version": "7.8.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz", + "integrity": "sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "@babel/code-frame": "^7.16.7", - "@babel/parser": "^7.16.7", - "@babel/types": "^7.16.7" + "@babel/helper-plugin-utils": "^7.8.0" }, - "engines": { - "node": ">=6.9.0" + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "../../service/node_modules/@babel/traverse": { - "version": "7.17.9", + "node_modules/@babel/plugin-syntax-bigint": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-bigint/-/plugin-syntax-bigint-7.8.3.tgz", + "integrity": "sha512-wnTnFlG+YxQm3vDxpGE57Pj0srRU4sHE/mDkt1qv2YJJSeUAec2ma4WLUnUPeKjyrfntVwe/N6dCXpU+zL3Npg==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "@babel/code-frame": "^7.16.7", - "@babel/generator": "^7.17.9", - "@babel/helper-environment-visitor": "^7.16.7", - "@babel/helper-function-name": "^7.17.9", - "@babel/helper-hoist-variables": "^7.16.7", - "@babel/helper-split-export-declaration": "^7.16.7", - "@babel/parser": "^7.17.9", - "@babel/types": "^7.17.0", - "debug": "^4.1.0", - "globals": "^11.1.0" + "@babel/helper-plugin-utils": "^7.8.0" }, - "engines": { - "node": ">=6.9.0" + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "../../service/node_modules/@babel/traverse/node_modules/debug": { - "version": "4.3.4", + "node_modules/@babel/plugin-syntax-class-properties": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz", + "integrity": "sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "ms": "2.1.2" - }, - "engines": { - "node": ">=6.0" + "@babel/helper-plugin-utils": "^7.12.13" }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "../../service/node_modules/@babel/traverse/node_modules/globals": { - "version": "11.12.0", + "node_modules/@babel/plugin-syntax-class-static-block": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-static-block/-/plugin-syntax-class-static-block-7.14.5.tgz", + "integrity": "sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw==", "dev": true, "license": "MIT", - "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, "engines": { - "node": ">=4" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "../../service/node_modules/@babel/traverse/node_modules/ms": { - "version": "2.1.2", + "node_modules/@babel/plugin-syntax-import-attributes": { + "version": "7.26.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-attributes/-/plugin-syntax-import-attributes-7.26.0.tgz", + "integrity": "sha512-e2dttdsJ1ZTpi3B9UYGLw41hifAubg19AtCu/2I/F1QNVclOBr1dYpTdmdyZ84Xiz43BS/tCUkMAZNLv12Pi+A==", "dev": true, "license": "MIT", - "peer": true - }, - "../../service/node_modules/@babel/types": { - "version": "7.17.0", - "license": "MIT", - "peer": true, "dependencies": { - "@babel/helper-validator-identifier": "^7.16.7", - "to-fast-properties": "^2.0.0" + "@babel/helper-plugin-utils": "^7.25.9" }, "engines": { "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "../../service/node_modules/@babel/types/node_modules/to-fast-properties": { - "version": "2.0.0", + "node_modules/@babel/plugin-syntax-import-meta": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz", + "integrity": "sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==", + "dev": true, "license": "MIT", - "peer": true, - "engines": { - "node": ">=4" + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "../../service/node_modules/@fluffy-spoon/substitute": { - "version": "1.208.0", + "node_modules/@babel/plugin-syntax-json-strings": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz", + "integrity": "sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==", "dev": true, "license": "MIT", - "peer": true, - "engines": { - "node": ">=10" + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/substitute-js#section-contribute" + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "../../service/node_modules/@ngageoint/geopackage": { - "version": "4.2.4", + "node_modules/@babel/plugin-syntax-jsx": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.25.9.tgz", + "integrity": "sha512-ld6oezHQMZsZfp6pWtbjaNDF2tiiCYYDqQszHt5VV437lewP9aSi2Of99CK0D0XB21k7FLgnLcmQKyKzynfeAA==", + "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "@turf/bbox": "6.3.0", - "@turf/boolean-clockwise": "6.5.0", - "@turf/boolean-point-in-polygon": "6.5.0", - "@turf/boolean-within": "6.5.0", - "@turf/distance": "6.5.0", - "@turf/helpers": "6.5.0", - "@turf/intersect": "6.5.0", - "@turf/line-intersect": "6.5.0", - "@turf/point-to-line-distance": "6.5.0", - "@turf/polygon-to-line": "6.5.0", - "@types/geojson": "7946.0.8", - "@types/proj4": "2.5.2", - "file-type": "12.4.0", - "image-size": "0.8.3", - "lodash": "4.17.21", - "proj4": "2.8.0", - "reproject": "1.2.5", - "rtree-sql.js": "1.7.0", - "simplify-js": "1.2.4", - "webworkify": "1.5.0", - "wkx": "0.4.8" + "@babel/helper-plugin-utils": "^7.25.9" }, - "bin": { - "geopackage": "cli" + "engines": { + "node": ">=6.9.0" }, - "optionalDependencies": { - "better-sqlite3": "7.4.1", - "chalk": "4.1.1", - "inquirer": "8.0.0" + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "../../service/node_modules/@ngageoint/geopackage/node_modules/better-sqlite3": { - "version": "7.4.1", - "hasInstallScript": true, + "node_modules/@babel/plugin-syntax-logical-assignment-operators": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz", + "integrity": "sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==", + "dev": true, "license": "MIT", - "optional": true, - "peer": true, "dependencies": { - "bindings": "^1.5.0", - "prebuild-install": "^6.0.1", - "tar": "^6.1.0" + "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "../../service/node_modules/@ngageoint/geopackage/node_modules/decompress-response": { - "version": "4.2.1", + "node_modules/@babel/plugin-syntax-nullish-coalescing-operator": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz", + "integrity": "sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==", + "dev": true, "license": "MIT", - "optional": true, - "peer": true, "dependencies": { - "mimic-response": "^2.0.0" + "@babel/helper-plugin-utils": "^7.8.0" }, - "engines": { - "node": ">=8" + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "../../service/node_modules/@ngageoint/geopackage/node_modules/detect-libc": { - "version": "1.0.3", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "bin": { - "detect-libc": "bin/detect-libc.js" + "node_modules/@babel/plugin-syntax-numeric-separator": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz", + "integrity": "sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" }, - "engines": { - "node": ">=0.10" + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "../../service/node_modules/@ngageoint/geopackage/node_modules/file-type": { - "version": "12.4.0", - "license": "MIT", - "peer": true, - "engines": { - "node": ">=8" - } - }, - "../../service/node_modules/@ngageoint/geopackage/node_modules/mimic-response": { - "version": "2.1.0", + "node_modules/@babel/plugin-syntax-object-rest-spread": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz", + "integrity": "sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==", + "dev": true, "license": "MIT", - "optional": true, - "peer": true, - "engines": { - "node": ">=8" + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "../../service/node_modules/@ngageoint/geopackage/node_modules/minimist": { - "version": "1.2.8", + "node_modules/@babel/plugin-syntax-optional-catch-binding": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz", + "integrity": "sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==", + "dev": true, "license": "MIT", - "optional": true, - "peer": true, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "../../service/node_modules/@ngageoint/geopackage/node_modules/node-abi": { - "version": "2.30.1", + "node_modules/@babel/plugin-syntax-optional-chaining": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz", + "integrity": "sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==", + "dev": true, "license": "MIT", - "optional": true, - "peer": true, "dependencies": { - "semver": "^5.4.1" + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "../../service/node_modules/@ngageoint/geopackage/node_modules/prebuild-install": { - "version": "6.1.4", + "node_modules/@babel/plugin-syntax-private-property-in-object": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-private-property-in-object/-/plugin-syntax-private-property-in-object-7.14.5.tgz", + "integrity": "sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==", + "dev": true, "license": "MIT", - "optional": true, - "peer": true, "dependencies": { - "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" - }, - "bin": { - "prebuild-install": "bin.js" + "@babel/helper-plugin-utils": "^7.14.5" }, "engines": { - "node": ">=6" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "../../service/node_modules/@ngageoint/geopackage/node_modules/simple-get": { - "version": "3.1.1", + "node_modules/@babel/plugin-syntax-top-level-await": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz", + "integrity": "sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==", + "dev": true, "license": "MIT", - "optional": true, - "peer": true, "dependencies": { - "decompress-response": "^4.2.0", - "once": "^1.3.1", - "simple-concat": "^1.0.0" + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "../../service/node_modules/@node-saml/node-saml": { - "version": "4.0.5", + "node_modules/@babel/plugin-syntax-typescript": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.25.9.tgz", + "integrity": "sha512-hjMgRy5hb8uJJjUcdWunWVcoi9bGpJp8p5Ol1229PoN6aytsLwNMgmdftO23wnCLMfVmTwZDWMPNq/D1SY60JQ==", + "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "@types/debug": "^4.1.7", - "@types/passport": "^1.0.11", - "@types/xml-crypto": "^1.4.2", - "@types/xml-encryption": "^1.2.1", - "@types/xml2js": "^0.4.11", - "@xmldom/xmldom": "^0.8.6", - "debug": "^4.3.4", - "xml-crypto": "^3.0.1", - "xml-encryption": "^3.0.2", - "xml2js": "^0.5.0", - "xmlbuilder": "^15.1.1" + "@babel/helper-plugin-utils": "^7.25.9" }, "engines": { - "node": ">= 14" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "../../service/node_modules/@node-saml/node-saml/node_modules/debug": { - "version": "4.3.4", + "node_modules/@babel/template": { + "version": "7.27.0", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.27.0.tgz", + "integrity": "sha512-2ncevenBqXI6qRMukPlXwHKHchC7RyMuu4xv5JBXRfOGVcTy1mXCD12qrp7Jsoxll1EV3+9sE4GugBVRjT2jFA==", + "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "ms": "2.1.2" + "@babel/code-frame": "^7.26.2", + "@babel/parser": "^7.27.0", + "@babel/types": "^7.27.0" }, "engines": { - "node": ">=6.0" - }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } + "node": ">=6.9.0" } }, - "../../service/node_modules/@node-saml/node-saml/node_modules/ms": { - "version": "2.1.2", + "node_modules/@babel/traverse": { + "version": "7.27.0", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.27.0.tgz", + "integrity": "sha512-19lYZFzYVQkkHkl4Cy4WrAVcqBkgvV2YM2TU3xG6DIwO7O3ecbDPfW3yM3bjAGcqcQHi+CCtjMR3dIEHxsd6bA==", + "dev": true, "license": "MIT", - "peer": true + "dependencies": { + "@babel/code-frame": "^7.26.2", + "@babel/generator": "^7.27.0", + "@babel/parser": "^7.27.0", + "@babel/template": "^7.27.0", + "@babel/types": "^7.27.0", + "debug": "^4.3.1", + "globals": "^11.1.0" + }, + "engines": { + "node": ">=6.9.0" + } }, - "../../service/node_modules/@node-saml/passport-saml": { - "version": "4.0.4", + "node_modules/@babel/types": { + "version": "7.27.0", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.27.0.tgz", + "integrity": "sha512-H45s8fVLYjbhFH62dIJ3WtmJ6RSPt/3DRO0ZcT2SUiYiQyz3BLVb9ADEnLl91m74aQPS3AzzeajZHYOalWe3bg==", + "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "@node-saml/node-saml": "^4.0.4", - "@types/express": "^4.17.14", - "@types/passport": "^1.0.11", - "@types/passport-strategy": "^0.2.35", - "passport": "^0.6.0", - "passport-strategy": "^1.0.0" + "@babel/helper-string-parser": "^7.25.9", + "@babel/helper-validator-identifier": "^7.25.9" }, "engines": { - "node": ">= 14" + "node": ">=6.9.0" } }, - "../../service/node_modules/@nodelib/fs.scandir": { - "version": "2.1.5", + "node_modules/@bcoe/v8-coverage": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz", + "integrity": "sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==", "dev": true, - "license": "MIT", - "peer": true, + "license": "MIT" + }, + "node_modules/@istanbuljs/load-nyc-config": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz", + "integrity": "sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==", + "dev": true, + "license": "ISC", "dependencies": { - "@nodelib/fs.stat": "2.0.5", - "run-parallel": "^1.1.9" + "camelcase": "^5.3.1", + "find-up": "^4.1.0", + "get-package-type": "^0.1.0", + "js-yaml": "^3.13.1", + "resolve-from": "^5.0.0" }, "engines": { - "node": ">= 8" + "node": ">=8" } }, - "../../service/node_modules/@nodelib/fs.stat": { - "version": "2.0.5", + "node_modules/@istanbuljs/schema": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz", + "integrity": "sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==", "dev": true, "license": "MIT", - "peer": true, "engines": { - "node": ">= 8" + "node": ">=8" } }, - "../../service/node_modules/@nodelib/fs.walk": { - "version": "1.2.8", + "node_modules/@jest/console": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/console/-/console-29.7.0.tgz", + "integrity": "sha512-5Ni4CU7XHQi32IJ398EEP4RrB8eV09sXP2ROqD4bksHrnTree52PsxvX8tpL8LvTZ3pFzXyPbNQReSN41CAhOg==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "@nodelib/fs.scandir": "2.1.5", - "fastq": "^1.6.0" + "@jest/types": "^29.6.3", + "@types/node": "*", + "chalk": "^4.0.0", + "jest-message-util": "^29.7.0", + "jest-util": "^29.7.0", + "slash": "^3.0.0" }, "engines": { - "node": ">= 8" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "../../service/node_modules/@oozcitak/dom": { - "version": "1.15.10", + "node_modules/@jest/core": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/core/-/core-29.7.0.tgz", + "integrity": "sha512-n7aeXWKMnGtDA48y8TLWJPJmLmmZ642Ceo78cYWEpiD7FzDgmNDV/GCVRorPABdXLJZ/9wzzgZAlHjXjxDHGsg==", + "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "@oozcitak/infra": "1.0.8", - "@oozcitak/url": "1.0.4", - "@oozcitak/util": "8.3.8" + "@jest/console": "^29.7.0", + "@jest/reporters": "^29.7.0", + "@jest/test-result": "^29.7.0", + "@jest/transform": "^29.7.0", + "@jest/types": "^29.6.3", + "@types/node": "*", + "ansi-escapes": "^4.2.1", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "exit": "^0.1.2", + "graceful-fs": "^4.2.9", + "jest-changed-files": "^29.7.0", + "jest-config": "^29.7.0", + "jest-haste-map": "^29.7.0", + "jest-message-util": "^29.7.0", + "jest-regex-util": "^29.6.3", + "jest-resolve": "^29.7.0", + "jest-resolve-dependencies": "^29.7.0", + "jest-runner": "^29.7.0", + "jest-runtime": "^29.7.0", + "jest-snapshot": "^29.7.0", + "jest-util": "^29.7.0", + "jest-validate": "^29.7.0", + "jest-watcher": "^29.7.0", + "micromatch": "^4.0.4", + "pretty-format": "^29.7.0", + "slash": "^3.0.0", + "strip-ansi": "^6.0.0" }, "engines": { - "node": ">=8.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" + }, + "peerDependenciesMeta": { + "node-notifier": { + "optional": true + } } }, - "../../service/node_modules/@oozcitak/infra": { - "version": "1.0.8", + "node_modules/@jest/environment": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-29.7.0.tgz", + "integrity": "sha512-aQIfHDq33ExsN4jP1NWGXhxgQ/wixs60gDiKO+XVMd8Mn0NWPWgc34ZQDTb2jKaUWQ7MuwoitXAsN2XVXNMpAw==", + "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "@oozcitak/util": "8.3.8" + "@jest/fake-timers": "^29.7.0", + "@jest/types": "^29.6.3", + "@types/node": "*", + "jest-mock": "^29.7.0" }, "engines": { - "node": ">=6.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "../../service/node_modules/@oozcitak/url": { - "version": "1.0.4", + "node_modules/@jest/expect": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/expect/-/expect-29.7.0.tgz", + "integrity": "sha512-8uMeAMycttpva3P1lBHB8VciS9V0XAr3GymPpipdyQXbBcuhkLQOSe8E/p92RyAdToS6ZD1tFkX+CkhoECE0dQ==", + "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "@oozcitak/infra": "1.0.8", - "@oozcitak/util": "8.3.8" + "expect": "^29.7.0", + "jest-snapshot": "^29.7.0" }, "engines": { - "node": ">=8.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "../../service/node_modules/@oozcitak/util": { - "version": "8.3.8", + "node_modules/@jest/expect-utils": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/expect-utils/-/expect-utils-29.7.0.tgz", + "integrity": "sha512-GlsNBWiFQFCVi9QVSx7f5AgMeLxe9YCCs5PuP2O2LdjDAA8Jh9eX7lA1Jq/xdXw3Wb3hyvlFNfZIfcRetSzYcA==", + "dev": true, "license": "MIT", - "peer": true, + "dependencies": { + "jest-get-type": "^29.6.3" + }, "engines": { - "node": ">=8.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "../../service/node_modules/@sinonjs/commons": { - "version": "1.8.3", + "node_modules/@jest/fake-timers": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-29.7.0.tgz", + "integrity": "sha512-q4DH1Ha4TTFPdxLsqDXK1d3+ioSL7yL5oCMJZgDYm6i+6CygW5E5xVr/D1HdsGxjt1ZWSfUAs9OxSB/BNelWrQ==", "dev": true, - "license": "BSD-3-Clause", - "peer": true, + "license": "MIT", "dependencies": { - "type-detect": "4.0.8" + "@jest/types": "^29.6.3", + "@sinonjs/fake-timers": "^10.0.2", + "@types/node": "*", + "jest-message-util": "^29.7.0", + "jest-mock": "^29.7.0", + "jest-util": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "../../service/node_modules/@sinonjs/formatio": { - "version": "3.2.2", + "node_modules/@jest/globals": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/globals/-/globals-29.7.0.tgz", + "integrity": "sha512-mpiz3dutLbkW2MNFubUGUEVLkTGiqW6yLVTA+JbP6fI6J5iL9Y0Nlg8k95pcF8ctKwCS7WVxteBs29hhfAotzQ==", "dev": true, - "license": "BSD-3-Clause", - "peer": true, + "license": "MIT", "dependencies": { - "@sinonjs/commons": "^1", - "@sinonjs/samsam": "^3.1.0" + "@jest/environment": "^29.7.0", + "@jest/expect": "^29.7.0", + "@jest/types": "^29.6.3", + "jest-mock": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "../../service/node_modules/@sinonjs/samsam": { - "version": "3.3.3", + "node_modules/@jest/reporters": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/reporters/-/reporters-29.7.0.tgz", + "integrity": "sha512-DApq0KJbJOEzAFYjHADNNxAE3KbhxQB1y5Kplb5Waqw6zVbuWatSnMjE5gs8FUgEPmNsnZA3NCWl9NG0ia04Pg==", "dev": true, - "license": "BSD-3-Clause", - "peer": true, + "license": "MIT", "dependencies": { - "@sinonjs/commons": "^1.3.0", - "array-from": "^2.1.1", - "lodash": "^4.17.15" + "@bcoe/v8-coverage": "^0.2.3", + "@jest/console": "^29.7.0", + "@jest/test-result": "^29.7.0", + "@jest/transform": "^29.7.0", + "@jest/types": "^29.6.3", + "@jridgewell/trace-mapping": "^0.3.18", + "@types/node": "*", + "chalk": "^4.0.0", + "collect-v8-coverage": "^1.0.0", + "exit": "^0.1.2", + "glob": "^7.1.3", + "graceful-fs": "^4.2.9", + "istanbul-lib-coverage": "^3.0.0", + "istanbul-lib-instrument": "^6.0.0", + "istanbul-lib-report": "^3.0.0", + "istanbul-lib-source-maps": "^4.0.0", + "istanbul-reports": "^3.1.3", + "jest-message-util": "^29.7.0", + "jest-util": "^29.7.0", + "jest-worker": "^29.7.0", + "slash": "^3.0.0", + "string-length": "^4.0.1", + "strip-ansi": "^6.0.0", + "v8-to-istanbul": "^9.0.1" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" + }, + "peerDependenciesMeta": { + "node-notifier": { + "optional": true + } } }, - "../../service/node_modules/@sinonjs/text-encoding": { - "version": "0.7.1", + "node_modules/@jest/schemas": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/@jest/schemas/-/schemas-29.6.3.tgz", + "integrity": "sha512-mo5j5X+jIZmJQveBKeS/clAueipV7KgiX1vMgCxam1RNYiqE1w62n0/tJJnHtjW8ZHcQco5gY85jA3mi0L+nSA==", "dev": true, - "license": "(Unlicense OR Apache-2.0)", - "peer": true - }, - "../../service/node_modules/@tokenizer/token": { - "version": "0.3.0", "license": "MIT", - "peer": true - }, - "../../service/node_modules/@turf/bbox": { - "version": "6.3.0", - "license": "MIT", - "peer": true, "dependencies": { - "@turf/helpers": "^6.3.0", - "@turf/meta": "^6.3.0" + "@sinclair/typebox": "^0.27.8" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "../../service/node_modules/@turf/bearing": { - "version": "6.5.0", + "node_modules/@jest/source-map": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/@jest/source-map/-/source-map-29.6.3.tgz", + "integrity": "sha512-MHjT95QuipcPrpLM+8JMSzFx6eHp5Bm+4XeFDJlwsvVBjmKNiIAvasGK2fxz2WbGRlnvqehFbh07MMa7n3YJnw==", + "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "@turf/helpers": "^6.5.0", - "@turf/invariant": "^6.5.0" + "@jridgewell/trace-mapping": "^0.3.18", + "callsites": "^3.0.0", + "graceful-fs": "^4.2.9" }, - "funding": { - "url": "https://opencollective.com/turf" + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "../../service/node_modules/@turf/boolean-clockwise": { - "version": "6.5.0", + "node_modules/@jest/test-result": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-29.7.0.tgz", + "integrity": "sha512-Fdx+tv6x1zlkJPcWXmMDAG2HBnaR9XPSd5aDWQVsfrZmLVT3lU1cwyxLgRmXR9yrq4NBoEm9BMsfgFzTQAbJYA==", + "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "@turf/helpers": "^6.5.0", - "@turf/invariant": "^6.5.0" + "@jest/console": "^29.7.0", + "@jest/types": "^29.6.3", + "@types/istanbul-lib-coverage": "^2.0.0", + "collect-v8-coverage": "^1.0.0" }, - "funding": { - "url": "https://opencollective.com/turf" + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "../../service/node_modules/@turf/boolean-point-in-polygon": { - "version": "6.5.0", + "node_modules/@jest/test-sequencer": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-29.7.0.tgz", + "integrity": "sha512-GQwJ5WZVrKnOJuiYiAF52UNUJXgTZx1NHjFSEB0qEMmSZKAkdMoIzw/Cj6x6NF4AvV23AUqDpFzQkN/eYCYTxw==", + "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "@turf/helpers": "^6.5.0", - "@turf/invariant": "^6.5.0" + "@jest/test-result": "^29.7.0", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^29.7.0", + "slash": "^3.0.0" }, - "funding": { - "url": "https://opencollective.com/turf" + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "../../service/node_modules/@turf/boolean-point-on-line": { - "version": "6.5.0", + "node_modules/@jest/transform": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-29.7.0.tgz", + "integrity": "sha512-ok/BTPFzFKVMwO5eOHRrvnBVHdRy9IrsrW1GpMaQ9MCnilNLXQKmAX8s1YXDFaai9xJpac2ySzV0YeRRECr2Vw==", + "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "@turf/helpers": "^6.5.0", - "@turf/invariant": "^6.5.0" + "@babel/core": "^7.11.6", + "@jest/types": "^29.6.3", + "@jridgewell/trace-mapping": "^0.3.18", + "babel-plugin-istanbul": "^6.1.1", + "chalk": "^4.0.0", + "convert-source-map": "^2.0.0", + "fast-json-stable-stringify": "^2.1.0", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^29.7.0", + "jest-regex-util": "^29.6.3", + "jest-util": "^29.7.0", + "micromatch": "^4.0.4", + "pirates": "^4.0.4", + "slash": "^3.0.0", + "write-file-atomic": "^4.0.2" }, - "funding": { - "url": "https://opencollective.com/turf" + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "../../service/node_modules/@turf/boolean-within": { - "version": "6.5.0", + "node_modules/@jest/types": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-29.6.3.tgz", + "integrity": "sha512-u3UPsIilWKOM3F9CXtrG8LEJmNxwoCQC/XVj4IKYXvvpx7QIi/Kg1LI5uDmDpKlac62NUtX7eLjRh+jVZcLOzw==", + "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "@turf/bbox": "^6.5.0", - "@turf/boolean-point-in-polygon": "^6.5.0", - "@turf/boolean-point-on-line": "^6.5.0", - "@turf/helpers": "^6.5.0", - "@turf/invariant": "^6.5.0" + "@jest/schemas": "^29.6.3", + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^17.0.8", + "chalk": "^4.0.0" }, - "funding": { - "url": "https://opencollective.com/turf" + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "../../service/node_modules/@turf/boolean-within/node_modules/@turf/bbox": { - "version": "6.5.0", + "node_modules/@jridgewell/gen-mapping": { + "version": "0.3.8", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.8.tgz", + "integrity": "sha512-imAbBGkb+ebQyxKgzv5Hu2nmROxoDOXHh80evxdoXNOrvAnVx7zimzc1Oo5h9RlfV4vPXaE2iM5pOFbvOCClWA==", + "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "@turf/helpers": "^6.5.0", - "@turf/meta": "^6.5.0" + "@jridgewell/set-array": "^1.2.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.24" }, - "funding": { - "url": "https://opencollective.com/turf" + "engines": { + "node": ">=6.0.0" } }, - "../../service/node_modules/@turf/centroid": { - "version": "6.0.2", + "node_modules/@jridgewell/resolve-uri": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz", + "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==", + "dev": true, "license": "MIT", - "peer": true, - "dependencies": { - "@turf/helpers": "6.x", - "@turf/meta": "6.x" + "engines": { + "node": ">=6.0.0" } }, - "../../service/node_modules/@turf/clone": { - "version": "6.5.0", + "node_modules/@jridgewell/set-array": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.2.1.tgz", + "integrity": "sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.0.tgz", + "integrity": "sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/@jridgewell/trace-mapping": { + "version": "0.3.25", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz", + "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==", + "dev": true, "license": "MIT", - "peer": true, "dependencies": { - "@turf/helpers": "^6.5.0" + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" + } + }, + "node_modules/@ngageoint/mage.service": { + "version": "6.3.0-beta.7", + "resolved": "https://registry.npmjs.org/@ngageoint/mage.service/-/mage.service-6.3.0-beta.7.tgz", + "integrity": "sha512-hauwJfO7gg/+Gh+bfmoj1HbB0VFJB+/X+igAZVehidV9V39cwI/KlIJKUiie/6qZqK5bsMDhJ66N638qcfK2lA==", + "hasShrinkwrap": true, + "peer": true, + "dependencies": { + "@ngageoint/geopackage": "4.2.6", + "@ngageoint/mongodb-migrations": "1.0.0", + "@node-saml/passport-saml": "4.0.4", + "@turf/centroid": "6.5.0", + "@turf/kinks": "6.5.0", + "@types/geojson": "7946.0.16", + "@types/json-schema": "7.0.15", + "@types/mime-types": "2.1.4", + "@xmldom/xmldom": "0.9.8", + "adm-zip": "0.5.16", + "archiver": "5.3.2", + "async": "3.2.6", + "async-lock": "1.4.1", + "base-64": "1.0.0", + "busboy": "1.6.0", + "cfenv": "1.2.4", + "commander": "8.3.0", + "express": "4.21.2", + "express-session": "1.18.1", + "file-type": "16.5.4", + "fs-extra": "4.0.3", + "geojson": "0.5.0", + "geojson-validation": "1.0.2", + "json2csv": "4.5.4", + "jsonwebtoken": "9.0.2", + "lodash": "4.17.21", + "mgrs": "1.0.0", + "mime-types": "2.1.35", + "moment": "2.30.1", + "mongoose": "6.13.8", + "multer": "1.4.5-lts.1", + "node-fetch": "2.7.0", + "passport": "0.7.0", + "passport-anonymous": "1.0.1", + "passport-http-bearer": "1.0.1", + "passport-ldapauth": "3.0.1", + "passport-local": "1.0.0", + "passport-oauth2": "1.8.0", + "passport-openidconnect": "0.1.2", + "pug": "3.0.3", + "rfc5646": "3.0.0", + "superagent": "8.1.2", + "svg-captcha": "1.4.0", + "uniqid": "5.4.0", + "walk": "2.3.15", + "winston": "1.1.2", + "wkx": "0.5.0", + "wms-capabilities": "0.6.0", + "xmlbuilder2": "3.1.1", + "xpath": "0.0.34", + "yaml": "1.10.2" }, - "funding": { - "url": "https://opencollective.com/turf" + "bin": { + "mage.service": "bin/mage.service.js" + }, + "engines": { + "node": ">= 16", + "npm": ">= 8" } }, - "../../service/node_modules/@turf/distance": { - "version": "6.5.0", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@aws-crypto/sha256-browser": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/sha256-browser/-/sha256-browser-5.2.0.tgz", + "integrity": "sha512-AXfN/lGotSQwu6HNcEsIASo7kWXZ5HYWvfOmSNKDsEqC4OashTp8alTmaz+F7TC2L083SFv5RdB+qU3Vs1kZqw==", + "optional": true, "peer": true, "dependencies": { - "@turf/helpers": "^6.5.0", - "@turf/invariant": "^6.5.0" + "@aws-crypto/sha256-js": "^5.2.0", + "@aws-crypto/supports-web-crypto": "^5.2.0", + "@aws-crypto/util": "^5.2.0", + "@aws-sdk/types": "^3.222.0", + "@aws-sdk/util-locate-window": "^3.0.0", + "@smithy/util-utf8": "^2.0.0", + "tslib": "^2.6.2" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@aws-crypto/sha256-browser/node_modules/@smithy/is-array-buffer": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@smithy/is-array-buffer/-/is-array-buffer-2.2.0.tgz", + "integrity": "sha512-GGP3O9QFD24uGeAXYUjwSTXARoqpZykHadOmA8G5vfJPK0/DC67qa//0qvqrJzL1xc8WQWX7/yc7fwudjPHPhA==", + "optional": true, + "peer": true, + "dependencies": { + "tslib": "^2.6.2" }, - "funding": { - "url": "https://opencollective.com/turf" + "engines": { + "node": ">=14.0.0" } }, - "../../service/node_modules/@turf/helpers": { - "version": "6.5.0", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@aws-crypto/sha256-browser/node_modules/@smithy/util-buffer-from": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@smithy/util-buffer-from/-/util-buffer-from-2.2.0.tgz", + "integrity": "sha512-IJdWBbTcMQ6DA0gdNhh/BwrLkDR+ADW5Kr1aZmd4k3DIF6ezMV4R2NIAmT08wQJ3yUK82thHWmC/TnK/wpMMIA==", + "optional": true, "peer": true, - "funding": { - "url": "https://opencollective.com/turf" + "dependencies": { + "@smithy/is-array-buffer": "^2.2.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=14.0.0" } }, - "../../service/node_modules/@turf/intersect": { - "version": "6.5.0", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@aws-crypto/sha256-browser/node_modules/@smithy/util-utf8": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/@smithy/util-utf8/-/util-utf8-2.3.0.tgz", + "integrity": "sha512-R8Rdn8Hy72KKcebgLiv8jQcQkXoLMOGGv5uI1/k0l+snqkOzQ1R0ChUBCxWMlBsFMekWjq0wRudIweFs7sKT5A==", + "optional": true, "peer": true, "dependencies": { - "@turf/helpers": "^6.5.0", - "@turf/invariant": "^6.5.0", - "polygon-clipping": "^0.15.3" + "@smithy/util-buffer-from": "^2.2.0", + "tslib": "^2.6.2" }, - "funding": { - "url": "https://opencollective.com/turf" + "engines": { + "node": ">=14.0.0" } }, - "../../service/node_modules/@turf/invariant": { - "version": "6.5.0", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@aws-crypto/sha256-js": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/sha256-js/-/sha256-js-5.2.0.tgz", + "integrity": "sha512-FFQQyu7edu4ufvIZ+OadFpHHOt+eSTBaYaki44c+akjg7qZg9oOQeLlk77F6tSYqjDAFClrHJk9tMf0HdVyOvA==", + "optional": true, "peer": true, "dependencies": { - "@turf/helpers": "^6.5.0" + "@aws-crypto/util": "^5.2.0", + "@aws-sdk/types": "^3.222.0", + "tslib": "^2.6.2" }, - "funding": { - "url": "https://opencollective.com/turf" + "engines": { + "node": ">=16.0.0" } }, - "../../service/node_modules/@turf/kinks": { - "version": "6.0.0", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@aws-crypto/supports-web-crypto": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/supports-web-crypto/-/supports-web-crypto-5.2.0.tgz", + "integrity": "sha512-iAvUotm021kM33eCdNfwIN//F77/IADDSs58i+MDaOqFrVjZo9bAal0NK7HurRuWLLpF1iLX7gbWrjHjeo+YFg==", + "optional": true, "peer": true, "dependencies": { - "@turf/helpers": "6.x" + "tslib": "^2.6.2" } }, - "../../service/node_modules/@turf/line-intersect": { - "version": "6.5.0", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@aws-crypto/util": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/util/-/util-5.2.0.tgz", + "integrity": "sha512-4RkU9EsI6ZpBve5fseQlGNUWKMa1RLPQ1dnjnQoe07ldfIzcsGb5hC5W0Dm7u423KWzawlrpbjXBrXCEv9zazQ==", + "optional": true, "peer": true, "dependencies": { - "@turf/helpers": "^6.5.0", - "@turf/invariant": "^6.5.0", - "@turf/line-segment": "^6.5.0", - "@turf/meta": "^6.5.0", - "geojson-rbush": "3.x" - }, - "funding": { - "url": "https://opencollective.com/turf" + "@aws-sdk/types": "^3.222.0", + "@smithy/util-utf8": "^2.0.0", + "tslib": "^2.6.2" } }, - "../../service/node_modules/@turf/line-segment": { - "version": "6.5.0", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@aws-crypto/util/node_modules/@smithy/is-array-buffer": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@smithy/is-array-buffer/-/is-array-buffer-2.2.0.tgz", + "integrity": "sha512-GGP3O9QFD24uGeAXYUjwSTXARoqpZykHadOmA8G5vfJPK0/DC67qa//0qvqrJzL1xc8WQWX7/yc7fwudjPHPhA==", + "optional": true, "peer": true, "dependencies": { - "@turf/helpers": "^6.5.0", - "@turf/invariant": "^6.5.0", - "@turf/meta": "^6.5.0" + "tslib": "^2.6.2" }, - "funding": { - "url": "https://opencollective.com/turf" + "engines": { + "node": ">=14.0.0" } }, - "../../service/node_modules/@turf/meta": { - "version": "6.5.0", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@aws-crypto/util/node_modules/@smithy/util-buffer-from": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@smithy/util-buffer-from/-/util-buffer-from-2.2.0.tgz", + "integrity": "sha512-IJdWBbTcMQ6DA0gdNhh/BwrLkDR+ADW5Kr1aZmd4k3DIF6ezMV4R2NIAmT08wQJ3yUK82thHWmC/TnK/wpMMIA==", + "optional": true, "peer": true, "dependencies": { - "@turf/helpers": "^6.5.0" + "@smithy/is-array-buffer": "^2.2.0", + "tslib": "^2.6.2" }, - "funding": { - "url": "https://opencollective.com/turf" + "engines": { + "node": ">=14.0.0" } }, - "../../service/node_modules/@turf/point-to-line-distance": { - "version": "6.5.0", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@aws-crypto/util/node_modules/@smithy/util-utf8": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/@smithy/util-utf8/-/util-utf8-2.3.0.tgz", + "integrity": "sha512-R8Rdn8Hy72KKcebgLiv8jQcQkXoLMOGGv5uI1/k0l+snqkOzQ1R0ChUBCxWMlBsFMekWjq0wRudIweFs7sKT5A==", + "optional": true, "peer": true, "dependencies": { - "@turf/bearing": "^6.5.0", - "@turf/distance": "^6.5.0", - "@turf/helpers": "^6.5.0", - "@turf/invariant": "^6.5.0", - "@turf/meta": "^6.5.0", - "@turf/projection": "^6.5.0", - "@turf/rhumb-bearing": "^6.5.0", - "@turf/rhumb-distance": "^6.5.0" + "@smithy/util-buffer-from": "^2.2.0", + "tslib": "^2.6.2" }, - "funding": { - "url": "https://opencollective.com/turf" + "engines": { + "node": ">=14.0.0" } }, - "../../service/node_modules/@turf/polygon-to-line": { - "version": "6.5.0", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@aws-sdk/client-cognito-identity": { + "version": "3.606.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-cognito-identity/-/client-cognito-identity-3.606.0.tgz", + "integrity": "sha512-CJ3kovUg7HAn3trqo0WxVw3PJoaHxiGU1U+Ok8Vx/sL81+auyyiasT09M/NcchRqwAooKvUi44sVD0ih7Zi9Nw==", + "optional": true, "peer": true, "dependencies": { - "@turf/helpers": "^6.5.0", - "@turf/invariant": "^6.5.0" + "@aws-crypto/sha256-browser": "5.2.0", + "@aws-crypto/sha256-js": "5.2.0", + "@aws-sdk/client-sso-oidc": "3.606.0", + "@aws-sdk/client-sts": "3.606.0", + "@aws-sdk/core": "3.598.0", + "@aws-sdk/credential-provider-node": "3.600.0", + "@aws-sdk/middleware-host-header": "3.598.0", + "@aws-sdk/middleware-logger": "3.598.0", + "@aws-sdk/middleware-recursion-detection": "3.598.0", + "@aws-sdk/middleware-user-agent": "3.598.0", + "@aws-sdk/region-config-resolver": "3.598.0", + "@aws-sdk/types": "3.598.0", + "@aws-sdk/util-endpoints": "3.598.0", + "@aws-sdk/util-user-agent-browser": "3.598.0", + "@aws-sdk/util-user-agent-node": "3.598.0", + "@smithy/config-resolver": "^3.0.2", + "@smithy/core": "^2.2.1", + "@smithy/fetch-http-handler": "^3.0.2", + "@smithy/hash-node": "^3.0.1", + "@smithy/invalid-dependency": "^3.0.1", + "@smithy/middleware-content-length": "^3.0.1", + "@smithy/middleware-endpoint": "^3.0.2", + "@smithy/middleware-retry": "^3.0.4", + "@smithy/middleware-serde": "^3.0.1", + "@smithy/middleware-stack": "^3.0.1", + "@smithy/node-config-provider": "^3.1.1", + "@smithy/node-http-handler": "^3.0.1", + "@smithy/protocol-http": "^4.0.1", + "@smithy/smithy-client": "^3.1.2", + "@smithy/types": "^3.1.0", + "@smithy/url-parser": "^3.0.1", + "@smithy/util-base64": "^3.0.0", + "@smithy/util-body-length-browser": "^3.0.0", + "@smithy/util-body-length-node": "^3.0.0", + "@smithy/util-defaults-mode-browser": "^3.0.4", + "@smithy/util-defaults-mode-node": "^3.0.4", + "@smithy/util-endpoints": "^2.0.2", + "@smithy/util-middleware": "^3.0.1", + "@smithy/util-retry": "^3.0.1", + "@smithy/util-utf8": "^3.0.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@aws-sdk/client-sso": { + "version": "3.598.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.598.0.tgz", + "integrity": "sha512-nOI5lqPYa+YZlrrzwAJywJSw3MKVjvu6Ge2fCqQUNYMfxFB0NAaDFnl0EPjXi+sEbtCuz/uWE77poHbqiZ+7Iw==", + "optional": true, + "peer": true, + "dependencies": { + "@aws-crypto/sha256-browser": "5.2.0", + "@aws-crypto/sha256-js": "5.2.0", + "@aws-sdk/core": "3.598.0", + "@aws-sdk/middleware-host-header": "3.598.0", + "@aws-sdk/middleware-logger": "3.598.0", + "@aws-sdk/middleware-recursion-detection": "3.598.0", + "@aws-sdk/middleware-user-agent": "3.598.0", + "@aws-sdk/region-config-resolver": "3.598.0", + "@aws-sdk/types": "3.598.0", + "@aws-sdk/util-endpoints": "3.598.0", + "@aws-sdk/util-user-agent-browser": "3.598.0", + "@aws-sdk/util-user-agent-node": "3.598.0", + "@smithy/config-resolver": "^3.0.2", + "@smithy/core": "^2.2.1", + "@smithy/fetch-http-handler": "^3.0.2", + "@smithy/hash-node": "^3.0.1", + "@smithy/invalid-dependency": "^3.0.1", + "@smithy/middleware-content-length": "^3.0.1", + "@smithy/middleware-endpoint": "^3.0.2", + "@smithy/middleware-retry": "^3.0.4", + "@smithy/middleware-serde": "^3.0.1", + "@smithy/middleware-stack": "^3.0.1", + "@smithy/node-config-provider": "^3.1.1", + "@smithy/node-http-handler": "^3.0.1", + "@smithy/protocol-http": "^4.0.1", + "@smithy/smithy-client": "^3.1.2", + "@smithy/types": "^3.1.0", + "@smithy/url-parser": "^3.0.1", + "@smithy/util-base64": "^3.0.0", + "@smithy/util-body-length-browser": "^3.0.0", + "@smithy/util-body-length-node": "^3.0.0", + "@smithy/util-defaults-mode-browser": "^3.0.4", + "@smithy/util-defaults-mode-node": "^3.0.4", + "@smithy/util-endpoints": "^2.0.2", + "@smithy/util-middleware": "^3.0.1", + "@smithy/util-retry": "^3.0.1", + "@smithy/util-utf8": "^3.0.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@aws-sdk/client-sso-oidc": { + "version": "3.606.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso-oidc/-/client-sso-oidc-3.606.0.tgz", + "integrity": "sha512-gL1FHPS6hwgMNS/A+Qh5bUyHOeRVOqdb7c6+i+9gR3wtGvt2lvoSm8w5DhS08Xiiacz2AqYRDEapp0xuyCrbBQ==", + "optional": true, + "peer": true, + "dependencies": { + "@aws-crypto/sha256-browser": "5.2.0", + "@aws-crypto/sha256-js": "5.2.0", + "@aws-sdk/core": "3.598.0", + "@aws-sdk/credential-provider-node": "3.600.0", + "@aws-sdk/middleware-host-header": "3.598.0", + "@aws-sdk/middleware-logger": "3.598.0", + "@aws-sdk/middleware-recursion-detection": "3.598.0", + "@aws-sdk/middleware-user-agent": "3.598.0", + "@aws-sdk/region-config-resolver": "3.598.0", + "@aws-sdk/types": "3.598.0", + "@aws-sdk/util-endpoints": "3.598.0", + "@aws-sdk/util-user-agent-browser": "3.598.0", + "@aws-sdk/util-user-agent-node": "3.598.0", + "@smithy/config-resolver": "^3.0.2", + "@smithy/core": "^2.2.1", + "@smithy/fetch-http-handler": "^3.0.2", + "@smithy/hash-node": "^3.0.1", + "@smithy/invalid-dependency": "^3.0.1", + "@smithy/middleware-content-length": "^3.0.1", + "@smithy/middleware-endpoint": "^3.0.2", + "@smithy/middleware-retry": "^3.0.4", + "@smithy/middleware-serde": "^3.0.1", + "@smithy/middleware-stack": "^3.0.1", + "@smithy/node-config-provider": "^3.1.1", + "@smithy/node-http-handler": "^3.0.1", + "@smithy/protocol-http": "^4.0.1", + "@smithy/smithy-client": "^3.1.2", + "@smithy/types": "^3.1.0", + "@smithy/url-parser": "^3.0.1", + "@smithy/util-base64": "^3.0.0", + "@smithy/util-body-length-browser": "^3.0.0", + "@smithy/util-body-length-node": "^3.0.0", + "@smithy/util-defaults-mode-browser": "^3.0.4", + "@smithy/util-defaults-mode-node": "^3.0.4", + "@smithy/util-endpoints": "^2.0.2", + "@smithy/util-middleware": "^3.0.1", + "@smithy/util-retry": "^3.0.1", + "@smithy/util-utf8": "^3.0.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" }, - "funding": { - "url": "https://opencollective.com/turf" + "peerDependencies": { + "@aws-sdk/client-sts": "^3.606.0" } }, - "../../service/node_modules/@turf/projection": { - "version": "6.5.0", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@aws-sdk/client-sts": { + "version": "3.606.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sts/-/client-sts-3.606.0.tgz", + "integrity": "sha512-b11mAhjrkm3MMiAPoMGcmd6vsaz2120lg8rHG/NZCo9vB1K6Kc7WP+a1Q05TRMseer2egTtpWJfn44aVO97VqA==", + "optional": true, "peer": true, "dependencies": { - "@turf/clone": "^6.5.0", - "@turf/helpers": "^6.5.0", - "@turf/meta": "^6.5.0" + "@aws-crypto/sha256-browser": "5.2.0", + "@aws-crypto/sha256-js": "5.2.0", + "@aws-sdk/client-sso-oidc": "3.606.0", + "@aws-sdk/core": "3.598.0", + "@aws-sdk/credential-provider-node": "3.600.0", + "@aws-sdk/middleware-host-header": "3.598.0", + "@aws-sdk/middleware-logger": "3.598.0", + "@aws-sdk/middleware-recursion-detection": "3.598.0", + "@aws-sdk/middleware-user-agent": "3.598.0", + "@aws-sdk/region-config-resolver": "3.598.0", + "@aws-sdk/types": "3.598.0", + "@aws-sdk/util-endpoints": "3.598.0", + "@aws-sdk/util-user-agent-browser": "3.598.0", + "@aws-sdk/util-user-agent-node": "3.598.0", + "@smithy/config-resolver": "^3.0.2", + "@smithy/core": "^2.2.1", + "@smithy/fetch-http-handler": "^3.0.2", + "@smithy/hash-node": "^3.0.1", + "@smithy/invalid-dependency": "^3.0.1", + "@smithy/middleware-content-length": "^3.0.1", + "@smithy/middleware-endpoint": "^3.0.2", + "@smithy/middleware-retry": "^3.0.4", + "@smithy/middleware-serde": "^3.0.1", + "@smithy/middleware-stack": "^3.0.1", + "@smithy/node-config-provider": "^3.1.1", + "@smithy/node-http-handler": "^3.0.1", + "@smithy/protocol-http": "^4.0.1", + "@smithy/smithy-client": "^3.1.2", + "@smithy/types": "^3.1.0", + "@smithy/url-parser": "^3.0.1", + "@smithy/util-base64": "^3.0.0", + "@smithy/util-body-length-browser": "^3.0.0", + "@smithy/util-body-length-node": "^3.0.0", + "@smithy/util-defaults-mode-browser": "^3.0.4", + "@smithy/util-defaults-mode-node": "^3.0.4", + "@smithy/util-endpoints": "^2.0.2", + "@smithy/util-middleware": "^3.0.1", + "@smithy/util-retry": "^3.0.1", + "@smithy/util-utf8": "^3.0.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@aws-sdk/core": { + "version": "3.598.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/core/-/core-3.598.0.tgz", + "integrity": "sha512-HaSjt7puO5Cc7cOlrXFCW0rtA0BM9lvzjl56x0A20Pt+0wxXGeTOZZOkXQIepbrFkV2e/HYukuT9e99vXDm59g==", + "optional": true, + "peer": true, + "dependencies": { + "@smithy/core": "^2.2.1", + "@smithy/protocol-http": "^4.0.1", + "@smithy/signature-v4": "^3.1.0", + "@smithy/smithy-client": "^3.1.2", + "@smithy/types": "^3.1.0", + "fast-xml-parser": "4.2.5", + "tslib": "^2.6.2" }, - "funding": { - "url": "https://opencollective.com/turf" + "engines": { + "node": ">=16.0.0" } }, - "../../service/node_modules/@turf/rhumb-bearing": { - "version": "6.5.0", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@aws-sdk/credential-provider-cognito-identity": { + "version": "3.606.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-cognito-identity/-/credential-provider-cognito-identity-3.606.0.tgz", + "integrity": "sha512-4wGvXilFLkozs4/dMnn9NvxZbL9oyyReoF9aR3kGUZ0QVO8cCBp/Zkr8IXZifhVBo9/esJdMFnR9lEXR7Yuleg==", + "optional": true, "peer": true, "dependencies": { - "@turf/helpers": "^6.5.0", - "@turf/invariant": "^6.5.0" + "@aws-sdk/client-cognito-identity": "3.606.0", + "@aws-sdk/types": "3.598.0", + "@smithy/property-provider": "^3.1.1", + "@smithy/types": "^3.1.0", + "tslib": "^2.6.2" }, - "funding": { - "url": "https://opencollective.com/turf" + "engines": { + "node": ">=16.0.0" } }, - "../../service/node_modules/@turf/rhumb-distance": { - "version": "6.5.0", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@aws-sdk/credential-provider-env": { + "version": "3.598.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-env/-/credential-provider-env-3.598.0.tgz", + "integrity": "sha512-vi1khgn7yXzLCcgSIzQrrtd2ilUM0dWodxj3PQ6BLfP0O+q1imO3hG1nq7DVyJtq7rFHs6+9N8G4mYvTkxby2w==", + "optional": true, "peer": true, "dependencies": { - "@turf/helpers": "^6.5.0", - "@turf/invariant": "^6.5.0" + "@aws-sdk/types": "3.598.0", + "@smithy/property-provider": "^3.1.1", + "@smithy/types": "^3.1.0", + "tslib": "^2.6.2" }, - "funding": { - "url": "https://opencollective.com/turf" + "engines": { + "node": ">=16.0.0" } }, - "../../service/node_modules/@types/async": { - "version": "3.2.12", - "dev": true, - "license": "MIT", - "peer": true - }, - "../../service/node_modules/@types/body-parser": { - "version": "1.19.2", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@aws-sdk/credential-provider-http": { + "version": "3.598.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-http/-/credential-provider-http-3.598.0.tgz", + "integrity": "sha512-N7cIafi4HVlQvEgvZSo1G4T9qb/JMLGMdBsDCT5XkeJrF0aptQWzTFH0jIdZcLrMYvzPcuEyO3yCBe6cy/ba0g==", + "optional": true, "peer": true, "dependencies": { - "@types/connect": "*", - "@types/node": "*" + "@aws-sdk/types": "3.598.0", + "@smithy/fetch-http-handler": "^3.0.2", + "@smithy/node-http-handler": "^3.0.1", + "@smithy/property-provider": "^3.1.1", + "@smithy/protocol-http": "^4.0.1", + "@smithy/smithy-client": "^3.1.2", + "@smithy/types": "^3.1.0", + "@smithy/util-stream": "^3.0.2", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" } }, - "../../service/node_modules/@types/bson": { - "version": "1.0.11", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@aws-sdk/credential-provider-ini": { + "version": "3.598.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.598.0.tgz", + "integrity": "sha512-/ppcIVUbRwDIwJDoYfp90X3+AuJo2mvE52Y1t2VSrvUovYn6N4v95/vXj6LS8CNDhz2jvEJYmu+0cTMHdhI6eA==", + "optional": true, "peer": true, "dependencies": { - "@types/node": "*" + "@aws-sdk/credential-provider-env": "3.598.0", + "@aws-sdk/credential-provider-http": "3.598.0", + "@aws-sdk/credential-provider-process": "3.598.0", + "@aws-sdk/credential-provider-sso": "3.598.0", + "@aws-sdk/credential-provider-web-identity": "3.598.0", + "@aws-sdk/types": "3.598.0", + "@smithy/credential-provider-imds": "^3.1.1", + "@smithy/property-provider": "^3.1.1", + "@smithy/shared-ini-file-loader": "^3.1.1", + "@smithy/types": "^3.1.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" + }, + "peerDependencies": { + "@aws-sdk/client-sts": "^3.598.0" } }, - "../../service/node_modules/@types/busboy": { - "version": "1.5.0", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@aws-sdk/credential-provider-node": { + "version": "3.600.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.600.0.tgz", + "integrity": "sha512-1pC7MPMYD45J7yFjA90SxpR0yaSvy+yZiq23aXhAPZLYgJBAxHLu0s0mDCk/piWGPh8+UGur5K0bVdx4B1D5hw==", + "optional": true, "peer": true, "dependencies": { - "@types/node": "*" + "@aws-sdk/credential-provider-env": "3.598.0", + "@aws-sdk/credential-provider-http": "3.598.0", + "@aws-sdk/credential-provider-ini": "3.598.0", + "@aws-sdk/credential-provider-process": "3.598.0", + "@aws-sdk/credential-provider-sso": "3.598.0", + "@aws-sdk/credential-provider-web-identity": "3.598.0", + "@aws-sdk/types": "3.598.0", + "@smithy/credential-provider-imds": "^3.1.1", + "@smithy/property-provider": "^3.1.1", + "@smithy/shared-ini-file-loader": "^3.1.1", + "@smithy/types": "^3.1.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" } }, - "../../service/node_modules/@types/chai": { - "version": "4.3.0", - "dev": true, - "license": "MIT", - "peer": true - }, - "../../service/node_modules/@types/chai-as-promised": { - "version": "7.1.5", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@aws-sdk/credential-provider-process": { + "version": "3.598.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-process/-/credential-provider-process-3.598.0.tgz", + "integrity": "sha512-rM707XbLW8huMk722AgjVyxu2tMZee++fNA8TJVNgs1Ma02Wx6bBrfIvlyK0rCcIRb0WdQYP6fe3Xhiu4e8IBA==", + "optional": true, "peer": true, "dependencies": { - "@types/chai": "*" + "@aws-sdk/types": "3.598.0", + "@smithy/property-provider": "^3.1.1", + "@smithy/shared-ini-file-loader": "^3.1.1", + "@smithy/types": "^3.1.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" } }, - "../../service/node_modules/@types/connect": { - "version": "3.4.35", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@aws-sdk/credential-provider-sso": { + "version": "3.598.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.598.0.tgz", + "integrity": "sha512-5InwUmrAuqQdOOgxTccRayMMkSmekdLk6s+az9tmikq0QFAHUCtofI+/fllMXSR9iL6JbGYi1940+EUmS4pHJA==", + "optional": true, "peer": true, "dependencies": { - "@types/node": "*" + "@aws-sdk/client-sso": "3.598.0", + "@aws-sdk/token-providers": "3.598.0", + "@aws-sdk/types": "3.598.0", + "@smithy/property-provider": "^3.1.1", + "@smithy/shared-ini-file-loader": "^3.1.1", + "@smithy/types": "^3.1.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" } }, - "../../service/node_modules/@types/cookiejar": { - "version": "2.1.2", - "dev": true, - "license": "MIT", - "peer": true - }, - "../../service/node_modules/@types/debug": { - "version": "4.1.9", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@aws-sdk/credential-provider-web-identity": { + "version": "3.598.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.598.0.tgz", + "integrity": "sha512-GV5GdiMbz5Tz9JO4NJtRoFXjW0GPEujA0j+5J/B723rTN+REHthJu48HdBKouHGhdzkDWkkh1bu52V02Wprw8w==", + "optional": true, "peer": true, "dependencies": { - "@types/ms": "*" + "@aws-sdk/types": "3.598.0", + "@smithy/property-provider": "^3.1.1", + "@smithy/types": "^3.1.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" + }, + "peerDependencies": { + "@aws-sdk/client-sts": "^3.598.0" } }, - "../../service/node_modules/@types/deep-equal": { - "version": "1.0.1", - "dev": true, - "license": "MIT", - "peer": true - }, - "../../service/node_modules/@types/eslint-visitor-keys": { - "version": "1.0.0", - "dev": true, - "license": "MIT", - "peer": true - }, - "../../service/node_modules/@types/express": { - "version": "4.17.19", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@aws-sdk/credential-providers": { + "version": "3.606.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-providers/-/credential-providers-3.606.0.tgz", + "integrity": "sha512-34hswGNDWBFvp4Hi4Gv9DIJ4Ks0Nbg8w3emFsPVHLqqI6X2Wd0hJTf+mi1kMhy/AQXt5LisKLw6wjNIKD2+KGg==", + "optional": true, "peer": true, "dependencies": { - "@types/body-parser": "*", - "@types/express-serve-static-core": "^4.17.33", - "@types/qs": "*", - "@types/serve-static": "*" + "@aws-sdk/client-cognito-identity": "3.606.0", + "@aws-sdk/client-sso": "3.598.0", + "@aws-sdk/client-sts": "3.606.0", + "@aws-sdk/credential-provider-cognito-identity": "3.606.0", + "@aws-sdk/credential-provider-env": "3.598.0", + "@aws-sdk/credential-provider-http": "3.598.0", + "@aws-sdk/credential-provider-ini": "3.598.0", + "@aws-sdk/credential-provider-node": "3.600.0", + "@aws-sdk/credential-provider-process": "3.598.0", + "@aws-sdk/credential-provider-sso": "3.598.0", + "@aws-sdk/credential-provider-web-identity": "3.598.0", + "@aws-sdk/types": "3.598.0", + "@smithy/credential-provider-imds": "^3.1.1", + "@smithy/property-provider": "^3.1.1", + "@smithy/types": "^3.1.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" } }, - "../../service/node_modules/@types/express-serve-static-core": { - "version": "4.17.37", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@aws-sdk/middleware-host-header": { + "version": "3.598.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-host-header/-/middleware-host-header-3.598.0.tgz", + "integrity": "sha512-WiaG059YBQwQraNejLIi0gMNkX7dfPZ8hDIhvMr5aVPRbaHH8AYF3iNSsXYCHvA2Cfa1O9haYXsuMF9flXnCmA==", + "optional": true, "peer": true, "dependencies": { - "@types/node": "*", - "@types/qs": "*", - "@types/range-parser": "*", - "@types/send": "*" + "@aws-sdk/types": "3.598.0", + "@smithy/protocol-http": "^4.0.1", + "@smithy/types": "^3.1.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" } }, - "../../service/node_modules/@types/fs-extra": { - "version": "8.1.2", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@aws-sdk/middleware-logger": { + "version": "3.598.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-logger/-/middleware-logger-3.598.0.tgz", + "integrity": "sha512-bxBjf/VYiu3zfu8SYM2S9dQQc3tz5uBAOcPz/Bt8DyyK3GgOpjhschH/2XuUErsoUO1gDJqZSdGOmuHGZQn00Q==", + "optional": true, "peer": true, "dependencies": { - "@types/node": "*" + "@aws-sdk/types": "3.598.0", + "@smithy/types": "^3.1.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" } }, - "../../service/node_modules/@types/geojson": { - "version": "7946.0.8", - "license": "MIT", - "peer": true - }, - "../../service/node_modules/@types/json-schema": { - "version": "7.0.11", - "license": "MIT", - "peer": true - }, - "../../service/node_modules/@types/ldapjs": { - "version": "1.0.11", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@aws-sdk/middleware-recursion-detection": { + "version": "3.598.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-recursion-detection/-/middleware-recursion-detection-3.598.0.tgz", + "integrity": "sha512-vjT9BeFY9FeN0f8hm2l6F53tI0N5bUq6RcDkQXKNabXBnQxKptJRad6oP2X5y3FoVfBLOuDkQgiC2940GIPxtQ==", + "optional": true, "peer": true, "dependencies": { - "@types/node": "*" + "@aws-sdk/types": "3.598.0", + "@smithy/protocol-http": "^4.0.1", + "@smithy/types": "^3.1.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" } }, - "../../service/node_modules/@types/lodash": { - "version": "4.14.181", - "dev": true, - "license": "MIT", - "peer": true - }, - "../../service/node_modules/@types/mime": { - "version": "1.3.2", - "license": "MIT", - "peer": true - }, - "../../service/node_modules/@types/mime-types": { - "version": "2.1.1", - "license": "MIT", - "peer": true - }, - "../../service/node_modules/@types/mocha": { - "version": "7.0.2", - "dev": true, - "license": "MIT", - "peer": true - }, - "../../service/node_modules/@types/mongodb": { - "version": "3.6.20", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@aws-sdk/middleware-user-agent": { + "version": "3.598.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-user-agent/-/middleware-user-agent-3.598.0.tgz", + "integrity": "sha512-4tjESlHG5B5MdjUaLK7tQs/miUtHbb6deauQx8ryqSBYOhfHVgb1ZnzvQR0bTrhpqUg0WlybSkDaZAICf9xctg==", + "optional": true, "peer": true, "dependencies": { - "@types/bson": "*", - "@types/node": "*" + "@aws-sdk/types": "3.598.0", + "@aws-sdk/util-endpoints": "3.598.0", + "@smithy/protocol-http": "^4.0.1", + "@smithy/types": "^3.1.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" } }, - "../../service/node_modules/@types/mongoose": { - "version": "4.7.56", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@aws-sdk/region-config-resolver": { + "version": "3.598.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/region-config-resolver/-/region-config-resolver-3.598.0.tgz", + "integrity": "sha512-oYXhmTokSav4ytmWleCr3rs/1nyvZW/S0tdi6X7u+dLNL5Jee+uMxWGzgOrWK6wrQOzucLVjS4E/wA11Kv2GTw==", + "optional": true, "peer": true, "dependencies": { - "@types/mongodb": "*", - "@types/node": "*" + "@aws-sdk/types": "3.598.0", + "@smithy/node-config-provider": "^3.1.1", + "@smithy/types": "^3.1.0", + "@smithy/util-config-provider": "^3.0.0", + "@smithy/util-middleware": "^3.0.1", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" } }, - "../../service/node_modules/@types/ms": { - "version": "0.7.32", - "license": "MIT", - "peer": true - }, - "../../service/node_modules/@types/multer": { - "version": "1.4.7", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@aws-sdk/token-providers": { + "version": "3.598.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/token-providers/-/token-providers-3.598.0.tgz", + "integrity": "sha512-TKY1EVdHVBnZqpyxyTHdpZpa1tUpb6nxVeRNn1zWG8QB5MvH4ALLd/jR+gtmWDNQbIG4cVuBOZFVL8hIYicKTA==", + "optional": true, "peer": true, "dependencies": { - "@types/express": "*" + "@aws-sdk/types": "3.598.0", + "@smithy/property-provider": "^3.1.1", + "@smithy/shared-ini-file-loader": "^3.1.1", + "@smithy/types": "^3.1.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" + }, + "peerDependencies": { + "@aws-sdk/client-sso-oidc": "^3.598.0" } }, - "../../service/node_modules/@types/node": { - "version": "18.18.4", - "license": "MIT", - "peer": true - }, - "../../service/node_modules/@types/node-fetch": { - "version": "2.6.1", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@aws-sdk/types": { + "version": "3.598.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.598.0.tgz", + "integrity": "sha512-742uRl6z7u0LFmZwDrFP6r1wlZcgVPw+/TilluDJmCAR8BgRw3IR+743kUXKBGd8QZDRW2n6v/PYsi/AWCDDMQ==", + "optional": true, "peer": true, "dependencies": { - "@types/node": "*", - "form-data": "^3.0.0" + "@smithy/types": "^3.1.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" } }, - "../../service/node_modules/@types/node-fetch/node_modules/form-data": { - "version": "3.0.1", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@aws-sdk/util-endpoints": { + "version": "3.598.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-endpoints/-/util-endpoints-3.598.0.tgz", + "integrity": "sha512-Qo9UoiVVZxcOEdiOMZg3xb1mzkTxrhd4qSlg5QQrfWPJVx/QOg+Iy0NtGxPtHtVZNHZxohYwDwV/tfsnDSE2gQ==", + "optional": true, "peer": true, "dependencies": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.8", - "mime-types": "^2.1.12" + "@aws-sdk/types": "3.598.0", + "@smithy/types": "^3.1.0", + "@smithy/util-endpoints": "^2.0.2", + "tslib": "^2.6.2" }, "engines": { - "node": ">= 6" + "node": ">=16.0.0" } }, - "../../service/node_modules/@types/passport": { - "version": "1.0.13", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@aws-sdk/util-locate-window": { + "version": "3.568.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-locate-window/-/util-locate-window-3.568.0.tgz", + "integrity": "sha512-3nh4TINkXYr+H41QaPelCceEB2FXP3fxp93YZXB/kqJvX0U9j0N0Uk45gvsjmEPzG8XxkPEeLIfT2I1M7A6Lig==", + "optional": true, "peer": true, "dependencies": { - "@types/express": "*" + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" } }, - "../../service/node_modules/@types/passport-strategy": { - "version": "0.2.36", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@aws-sdk/util-user-agent-browser": { + "version": "3.598.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-browser/-/util-user-agent-browser-3.598.0.tgz", + "integrity": "sha512-36Sxo6F+ykElaL1mWzWjlg+1epMpSe8obwhCN1yGE7Js9ywy5U6k6l+A3q3YM9YRbm740sNxncbwLklMvuhTKw==", + "optional": true, "peer": true, "dependencies": { - "@types/express": "*", - "@types/passport": "*" + "@aws-sdk/types": "3.598.0", + "@smithy/types": "^3.1.0", + "bowser": "^2.11.0", + "tslib": "^2.6.2" } }, - "../../service/node_modules/@types/proj4": { - "version": "2.5.2", - "license": "MIT", - "peer": true - }, - "../../service/node_modules/@types/qs": { - "version": "6.9.7", - "license": "MIT", - "peer": true - }, - "../../service/node_modules/@types/range-parser": { - "version": "1.2.4", - "license": "MIT", - "peer": true - }, - "../../service/node_modules/@types/send": { - "version": "0.17.2", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@aws-sdk/util-user-agent-node": { + "version": "3.598.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.598.0.tgz", + "integrity": "sha512-oyWGcOlfTdzkC6SVplyr0AGh54IMrDxbhg5RxJ5P+V4BKfcDoDcZV9xenUk9NsOi9MuUjxMumb9UJGkDhM1m0A==", + "optional": true, "peer": true, "dependencies": { - "@types/mime": "^1", - "@types/node": "*" + "@aws-sdk/types": "3.598.0", + "@smithy/node-config-provider": "^3.1.1", + "@smithy/types": "^3.1.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" + }, + "peerDependencies": { + "aws-crt": ">=1.0.0" + }, + "peerDependenciesMeta": { + "aws-crt": { + "optional": true + } } }, - "../../service/node_modules/@types/serve-static": { - "version": "1.13.10", - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/@babel/code-frame": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.24.7.tgz", + "integrity": "sha512-BcYH1CVJBO9tvyIZ2jVeXgSIMvGZ2FDRvDdOIVQyuklNKSsx+eppDEBq/g47Ayw+RqNFE+URvOShmf+f/qwAlA==", + "extraneous": true, "dependencies": { - "@types/mime": "^1", - "@types/node": "*" + "@babel/highlight": "^7.24.7", + "picocolors": "^1.0.0" + }, + "engines": { + "node": ">=6.9.0" } }, - "../../service/node_modules/@types/sinon": { - "version": "9.0.11", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/@babel/generator": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.24.7.tgz", + "integrity": "sha512-oipXieGC3i45Y1A41t4tAqpnEZWgB/lC6Ehh6+rOviR5XWpTtMmLN+fGjz9vOiNRt0p6RtO6DtD0pdU3vpqdSA==", + "extraneous": true, "dependencies": { - "@types/sinonjs__fake-timers": "*" + "@babel/types": "^7.24.7", + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.25", + "jsesc": "^2.5.1" + }, + "engines": { + "node": ">=6.9.0" } }, - "../../service/node_modules/@types/sinon-chai": { - "version": "3.2.8", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/@babel/helper-environment-visitor": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.24.7.tgz", + "integrity": "sha512-DoiN84+4Gnd0ncbBOM9AZENV4a5ZiL39HYMyZJGZ/AZEykHYdJw0wW3kdcsh9/Kn+BRXHLkkklZ51ecPKmI1CQ==", + "extraneous": true, "dependencies": { - "@types/chai": "*", - "@types/sinon": "*" + "@babel/types": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" } }, - "../../service/node_modules/@types/sinonjs__fake-timers": { - "version": "8.1.2", - "dev": true, - "license": "MIT", - "peer": true - }, - "../../service/node_modules/@types/superagent": { - "version": "4.1.15", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/@babel/helper-function-name": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.24.7.tgz", + "integrity": "sha512-FyoJTsj/PEUWu1/TYRiXTIHc8lbw+TDYkZuoE43opPS5TrI7MyONBE1oNvfguEXAD9yhQRrVBnXdXzSLQl9XnA==", + "extraneous": true, "dependencies": { - "@types/cookiejar": "*", - "@types/node": "*" + "@babel/template": "^7.24.7", + "@babel/types": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" } }, - "../../service/node_modules/@types/supertest": { - "version": "2.0.12", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/@babel/helper-hoist-variables": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.24.7.tgz", + "integrity": "sha512-MJJwhkoGy5c4ehfoRyrJ/owKeMl19U54h27YYftT0o2teQ3FJ3nQUf/I3LlJsX4l3qlw7WRXUmiyajvHXoTubQ==", + "extraneous": true, "dependencies": { - "@types/superagent": "*" + "@babel/types": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" } }, - "../../service/node_modules/@types/tmp": { - "version": "0.2.3", - "dev": true, - "license": "MIT", - "peer": true - }, - "../../service/node_modules/@types/uniqid": { - "version": "5.3.2", - "dev": true, - "license": "MIT", - "peer": true - }, - "../../service/node_modules/@types/webidl-conversions": { - "version": "6.1.1", - "dev": true, - "license": "MIT", - "peer": true - }, - "../../service/node_modules/@types/whatwg-url": { - "version": "8.2.1", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/@babel/helper-split-export-declaration": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.24.7.tgz", + "integrity": "sha512-oy5V7pD+UvfkEATUKvIjvIAH/xCzfsFVw7ygW2SI6NClZzquT+mwdTfgfdbUiceh6iQO0CHtCPsyze/MZ2YbAA==", + "extraneous": true, "dependencies": { - "@types/node": "*", - "@types/webidl-conversions": "*" + "@babel/types": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" } }, - "../../service/node_modules/@types/xml-crypto": { - "version": "1.4.3", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@babel/helper-string-parser": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.24.7.tgz", + "integrity": "sha512-7MbVt6xrwFQbunH2DNQsAP5sTGxfqQtErvBIvIMi6EQnbgUOuVYanvREcmFrOPhoXBrTtjhhP+lW+o5UfK+tDg==", "peer": true, - "dependencies": { - "@types/node": "*", - "xpath": "0.0.27" + "engines": { + "node": ">=6.9.0" } }, - "../../service/node_modules/@types/xml-crypto/node_modules/xpath": { - "version": "0.0.27", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@babel/helper-validator-identifier": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.24.7.tgz", + "integrity": "sha512-rR+PBcQ1SMQDDyF6X0wxtG8QyLCgUB0eRAGguqRLfkCA87l7yAP7ehq8SNj96OOGTO8OBV70KhuFYcIkHXOg0w==", "peer": true, "engines": { - "node": ">=0.6.0" + "node": ">=6.9.0" } }, - "../../service/node_modules/@types/xml-encryption": { - "version": "1.2.2", - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/@babel/highlight": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.24.7.tgz", + "integrity": "sha512-EStJpq4OuY8xYfhGVXngigBJRWxftKX9ksiGDnmlY3o7B/V7KIAc9X4oiK87uPJSc/vs5L869bem5fhZa8caZw==", + "extraneous": true, "dependencies": { - "@types/node": "*" + "@babel/helper-validator-identifier": "^7.24.7", + "chalk": "^2.4.2", + "js-tokens": "^4.0.0", + "picocolors": "^1.0.0" + }, + "engines": { + "node": ">=6.9.0" } }, - "../../service/node_modules/@types/xml2js": { - "version": "0.4.12", - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/@babel/highlight/node_modules/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==", + "extraneous": true, "dependencies": { - "@types/node": "*" + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" } }, - "../../service/node_modules/@typescript-eslint/eslint-plugin": { - "version": "2.21.0", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/@babel/highlight/node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "extraneous": true, "dependencies": { - "@typescript-eslint/experimental-utils": "2.21.0", - "eslint-utils": "^1.4.3", - "functional-red-black-tree": "^1.0.1", - "regexpp": "^3.0.0", - "tsutils": "^3.17.1" + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" }, "engines": { - "node": "^8.10.0 || ^10.13.0 || >=11.10.1" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "@typescript-eslint/parser": "^2.0.0", - "eslint": "^5.0.0 || ^6.0.0" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } + "node": ">=4" } }, - "../../service/node_modules/@typescript-eslint/experimental-utils": { - "version": "2.21.0", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/@babel/highlight/node_modules/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==", + "extraneous": true, "dependencies": { - "@types/json-schema": "^7.0.3", - "@typescript-eslint/typescript-estree": "2.21.0", - "eslint-scope": "^5.0.0" - }, + "color-name": "1.1.3" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@babel/highlight/node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/@babel/highlight/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "extraneous": true, "engines": { - "node": "^8.10.0 || ^10.13.0 || >=11.10.1" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "eslint": "*" + "node": ">=0.8.0" } }, - "../../service/node_modules/@typescript-eslint/parser": { - "version": "2.21.0", - "dev": true, - "license": "BSD-2-Clause", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/@babel/highlight/node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "extraneous": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@babel/highlight/node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "extraneous": true, "dependencies": { - "@types/eslint-visitor-keys": "^1.0.0", - "@typescript-eslint/experimental-utils": "2.21.0", - "@typescript-eslint/typescript-estree": "2.21.0", - "eslint-visitor-keys": "^1.1.0" + "has-flag": "^3.0.0" }, "engines": { - "node": "^8.10.0 || ^10.13.0 || >=11.10.1" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "eslint": "^5.0.0 || ^6.0.0" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } + "node": ">=4" } }, - "../../service/node_modules/@typescript-eslint/typescript-estree": { - "version": "2.21.0", - "dev": true, - "license": "BSD-2-Clause", + "node_modules/@ngageoint/mage.service/node_modules/@babel/parser": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.24.7.tgz", + "integrity": "sha512-9uUYRm6OqQrCqQdG1iCBwBPZgN8ciDBro2nIOFaiRz1/BCxaI7CNvQbDHvsArAC7Tw9Hda/B3U+6ui9u4HWXPw==", "peer": true, - "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": "^6.3.0", - "tsutils": "^3.17.1" + "bin": { + "parser": "bin/babel-parser.js" }, "engines": { - "node": "^8.10.0 || ^10.13.0 || >=11.10.1" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } + "node": ">=6.0.0" } }, - "../../service/node_modules/@typescript-eslint/typescript-estree/node_modules/debug": { - "version": "4.3.4", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/@babel/template": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.24.7.tgz", + "integrity": "sha512-jYqfPrU9JTF0PmPy1tLYHW4Mp4KlgxJD9l2nP9fD6yT/ICi554DmrWBAEYpIelzjHf1msDP3PxJIRt/nFNfBig==", + "extraneous": true, "dependencies": { - "ms": "2.1.2" + "@babel/code-frame": "^7.24.7", + "@babel/parser": "^7.24.7", + "@babel/types": "^7.24.7" }, "engines": { - "node": ">=6.0" - }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } + "node": ">=6.9.0" } }, - "../../service/node_modules/@typescript-eslint/typescript-estree/node_modules/ms": { - "version": "2.1.2", - "dev": true, - "license": "MIT", - "peer": true - }, - "../../service/node_modules/@typescript-eslint/typescript-estree/node_modules/semver": { - "version": "6.3.0", - "dev": true, - "license": "ISC", - "peer": true, - "bin": { - "semver": "bin/semver.js" + "node_modules/@ngageoint/mage.service/node_modules/@babel/traverse": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.24.7.tgz", + "integrity": "sha512-yb65Ed5S/QAcewNPh0nZczy9JdYXkkAbIsEo+P7BE7yO3txAY30Y/oPa3QkQ5It3xVG2kpKMg9MsdxZaO31uKA==", + "extraneous": true, + "dependencies": { + "@babel/code-frame": "^7.24.7", + "@babel/generator": "^7.24.7", + "@babel/helper-environment-visitor": "^7.24.7", + "@babel/helper-function-name": "^7.24.7", + "@babel/helper-hoist-variables": "^7.24.7", + "@babel/helper-split-export-declaration": "^7.24.7", + "@babel/parser": "^7.24.7", + "@babel/types": "^7.24.7", + "debug": "^4.3.1", + "globals": "^11.1.0" + }, + "engines": { + "node": ">=6.9.0" } }, - "../../service/node_modules/@xmldom/xmldom": { - "version": "0.8.10", - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/@babel/traverse/node_modules/globals": { + "version": "11.12.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", + "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", + "extraneous": true, "engines": { - "node": ">=10.0.0" + "node": ">=4" } }, - "../../service/node_modules/accepts": { - "version": "1.3.8", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@babel/types": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.24.7.tgz", + "integrity": "sha512-XEFXSlxiG5td2EJRe8vOmRbaXVgfcBlszKujvVmWIK/UpywWljQCfzAv3RQCGujWQ1RD4YYWEAqDXfuJiy8f5Q==", "peer": true, "dependencies": { - "mime-types": "~2.1.34", - "negotiator": "0.6.3" + "@babel/helper-string-parser": "^7.24.7", + "@babel/helper-validator-identifier": "^7.24.7", + "to-fast-properties": "^2.0.0" }, "engines": { - "node": ">= 0.6" + "node": ">=6.9.0" } }, - "../../service/node_modules/acorn": { - "version": "8.8.2", - "dev": true, - "license": "MIT", - "peer": true, - "bin": { - "acorn": "bin/acorn" + "node_modules/@ngageoint/mage.service/node_modules/@eslint-community/eslint-utils": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.4.0.tgz", + "integrity": "sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==", + "extraneous": true, + "dependencies": { + "eslint-visitor-keys": "^3.3.0" }, "engines": { - "node": ">=0.4.0" - } - }, - "../../service/node_modules/acorn-jsx": { - "version": "5.3.2", - "dev": true, - "license": "MIT", - "peer": true, + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, "peerDependencies": { - "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" + "eslint": "^6.0.0 || ^7.0.0 || >=8.0.0" } }, - "../../service/node_modules/adm-zip": { - "version": "0.4.9", - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/@eslint-community/regexpp": { + "version": "4.11.0", + "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.11.0.tgz", + "integrity": "sha512-G/M/tIiMrTAxEWRfLfQJMmGNX28IxBg4PBz8XqQhqUHLFI6TL2htpIB1iQCj144V5ee/JaKyT9/WZ0MGZWfA7A==", + "extraneous": true, "engines": { - "node": ">=0.3.0" + "node": "^12.0.0 || ^14.0.0 || >=16.0.0" } }, - "../../service/node_modules/agent-base": { - "version": "6.0.2", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/@eslint/eslintrc": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.4.tgz", + "integrity": "sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ==", + "extraneous": true, "dependencies": { - "debug": "4" + "ajv": "^6.12.4", + "debug": "^4.3.2", + "espree": "^9.6.0", + "globals": "^13.19.0", + "ignore": "^5.2.0", + "import-fresh": "^3.2.1", + "js-yaml": "^4.1.0", + "minimatch": "^3.1.2", + "strip-json-comments": "^3.1.1" }, "engines": { - "node": ">= 6.0.0" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" } }, - "../../service/node_modules/agent-base/node_modules/debug": { - "version": "4.3.4", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/@eslint/eslintrc/node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/@eslint/eslintrc/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "extraneous": true, "dependencies": { - "ms": "2.1.2" - }, - "engines": { - "node": ">=6.0" - }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" } }, - "../../service/node_modules/agent-base/node_modules/ms": { - "version": "2.1.2", - "dev": true, - "license": "MIT", - "peer": true + "node_modules/@ngageoint/mage.service/node_modules/@eslint/eslintrc/node_modules/js-yaml": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", + "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", + "extraneous": true, + "dependencies": { + "argparse": "^2.0.1" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } }, - "../../service/node_modules/ajv": { - "version": "6.12.6", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/@eslint/eslintrc/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "extraneous": true, "dependencies": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" + "brace-expansion": "^1.1.7" }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/epoberezkin" + "engines": { + "node": "*" } }, - "../../service/node_modules/ansi-colors": { - "version": "3.2.3", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/@eslint/js": { + "version": "8.57.1", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.57.1.tgz", + "integrity": "sha512-d9zaMRSTIKDLhctzH12MtXvJKSSUhaHcjV+2Z+GK+EEY7XKpP5yR4x+N3TAcHTcu963nIr+TMcCb4DBCYX1z6Q==", + "extraneous": true, "license": "MIT", - "peer": true, "engines": { - "node": ">=6" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" } }, - "../../service/node_modules/ansi-escapes": { - "version": "4.3.2", - "devOptional": true, + "node_modules/@ngageoint/mage.service/node_modules/@fluffy-spoon/substitute": { + "version": "1.208.0", + "resolved": "https://registry.npmjs.org/@fluffy-spoon/substitute/-/substitute-1.208.0.tgz", + "integrity": "sha512-BU5vKRoK4OYlKzDtyg4HbtWnUNLOvV0ntqEZIphz+mq2G0HlVFywwJ7M+FbIcnJVDbUReS01FyL5x8R01r7zBg==", + "extraneous": true, "license": "MIT", - "peer": true, - "dependencies": { - "type-fest": "^0.21.3" - }, "engines": { - "node": ">=8" + "node": ">=10" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "type": "opencollective", + "url": "https://opencollective.com/substitute-js#section-contribute" } }, - "../../service/node_modules/ansi-regex": { - "version": "2.1.1", - "devOptional": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/@humanwhocodes/config-array": { + "version": "0.13.0", + "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.13.0.tgz", + "integrity": "sha512-DZLEEqFWQFiyK6h5YIeynKx7JlvCYWL0cImfSRXZ9l4Sg2efkFGTuFf6vzXjK1cq6IYkU+Eg/JizXw+TD2vRNw==", + "deprecated": "Use @eslint/config-array instead", + "extraneous": true, + "license": "Apache-2.0", + "dependencies": { + "@humanwhocodes/object-schema": "^2.0.3", + "debug": "^4.3.1", + "minimatch": "^3.0.5" + }, "engines": { - "node": ">=0.10.0" + "node": ">=10.10.0" } }, - "../../service/node_modules/ansi-styles": { - "version": "4.3.0", + "node_modules/@ngageoint/mage.service/node_modules/@humanwhocodes/config-array/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "extraneous": true, "license": "MIT", - "optional": true, - "peer": true, "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" } }, - "../../service/node_modules/anymatch": { + "node_modules/@ngageoint/mage.service/node_modules/@humanwhocodes/config-array/node_modules/minimatch": { "version": "3.1.2", - "dev": true, + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "extraneous": true, "license": "ISC", - "peer": true, "dependencies": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" + "brace-expansion": "^1.1.7" }, "engines": { - "node": ">= 8" + "node": "*" } }, - "../../service/node_modules/append-field": { - "version": "1.0.0", - "license": "MIT", - "peer": true + "node_modules/@ngageoint/mage.service/node_modules/@humanwhocodes/module-importer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", + "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==", + "extraneous": true, + "engines": { + "node": ">=12.22" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/nzakas" + } }, - "../../service/node_modules/append-transform": { - "version": "1.0.0", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/@humanwhocodes/object-schema": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-2.0.3.tgz", + "integrity": "sha512-93zYdMES/c1D69yZiKDBj0V24vqNzB/koF26KPaagAfd3P/4gUlh3Dys5ogAK+Exi9QyzlD8x/08Zt7wIKcDcA==", + "deprecated": "Use @eslint/object-schema instead", + "extraneous": true, + "license": "BSD-3-Clause" + }, + "node_modules/@ngageoint/mage.service/node_modules/@isaacs/cliui": { + "version": "8.0.2", + "resolved": "https://registry.npmjs.org/@isaacs/cliui/-/cliui-8.0.2.tgz", + "integrity": "sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==", + "extraneous": true, "dependencies": { - "default-require-extensions": "^2.0.0" + "string-width": "^5.1.2", + "string-width-cjs": "npm:string-width@^4.2.0", + "strip-ansi": "^7.0.1", + "strip-ansi-cjs": "npm:strip-ansi@^6.0.1", + "wrap-ansi": "^8.1.0", + "wrap-ansi-cjs": "npm:wrap-ansi@^7.0.0" }, "engines": { - "node": ">=4" + "node": ">=12" } }, - "../../service/node_modules/aproba": { - "version": "1.2.0", - "license": "ISC", - "optional": true, - "peer": true + "node_modules/@ngageoint/mage.service/node_modules/@isaacs/cliui/node_modules/ansi-regex": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", + "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==", + "extraneous": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-regex?sponsor=1" + } }, - "../../service/node_modules/archiver": { - "version": "5.3.0", - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/@isaacs/cliui/node_modules/ansi-styles": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz", + "integrity": "sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==", + "extraneous": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@isaacs/cliui/node_modules/emoji-regex": { + "version": "9.2.2", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", + "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/@isaacs/cliui/node_modules/string-width": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz", + "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==", + "extraneous": true, "dependencies": { - "archiver-utils": "^2.1.0", - "async": "^3.2.0", - "buffer-crc32": "^0.2.1", - "readable-stream": "^3.6.0", - "readdir-glob": "^1.0.0", - "tar-stream": "^2.2.0", - "zip-stream": "^4.1.0" + "eastasianwidth": "^0.2.0", + "emoji-regex": "^9.2.2", + "strip-ansi": "^7.0.1" }, "engines": { - "node": ">= 10" + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "../../service/node_modules/archiver-utils": { - "version": "2.1.0", - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/@isaacs/cliui/node_modules/strip-ansi": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz", + "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==", + "extraneous": true, "dependencies": { - "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" + "ansi-regex": "^6.0.1" }, "engines": { - "node": ">= 6" + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/strip-ansi?sponsor=1" } }, - "../../service/node_modules/archiver/node_modules/readable-stream": { - "version": "3.6.0", - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/@isaacs/cliui/node_modules/wrap-ansi": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-8.1.0.tgz", + "integrity": "sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==", + "extraneous": true, "dependencies": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" + "ansi-styles": "^6.1.0", + "string-width": "^5.0.1", + "strip-ansi": "^7.0.1" }, "engines": { - "node": ">= 6" + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" } }, - "../../service/node_modules/archiver/node_modules/string_decoder": { - "version": "1.3.0", - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/@jridgewell/gen-mapping": { + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz", + "integrity": "sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==", + "extraneous": true, "dependencies": { - "safe-buffer": "~5.2.0" + "@jridgewell/set-array": "^1.2.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.24" + }, + "engines": { + "node": ">=6.0.0" } }, - "../../service/node_modules/archy": { - "version": "1.0.0", - "dev": true, - "license": "MIT", - "peer": true + "node_modules/@ngageoint/mage.service/node_modules/@jridgewell/resolve-uri": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz", + "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==", + "extraneous": true, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@jridgewell/set-array": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.2.1.tgz", + "integrity": "sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==", + "extraneous": true, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@jridgewell/sourcemap-codec": { + "version": "1.4.15", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz", + "integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/@jridgewell/trace-mapping": { + "version": "0.3.25", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz", + "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==", + "extraneous": true, + "dependencies": { + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" + } }, - "../../service/node_modules/are-we-there-yet": { + "node_modules/@ngageoint/mage.service/node_modules/@mongodb-js/saslprep": { "version": "1.1.7", - "license": "ISC", + "resolved": "https://registry.npmjs.org/@mongodb-js/saslprep/-/saslprep-1.1.7.tgz", + "integrity": "sha512-dCHW/oEX0KJ4NjDULBo3JiOaK5+6axtpBbS+ao2ZInoAL9/YRQLhXzSNAFz7hP4nzLkIqsfYAK/PDE3+XHny0Q==", "optional": true, "peer": true, "dependencies": { - "delegates": "^1.0.0", - "readable-stream": "^2.0.6" + "sparse-bitfield": "^3.0.3" } }, - "../../service/node_modules/argparse": { - "version": "1.0.10", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@ngageoint/geopackage": { + "version": "4.2.6", + "resolved": "https://registry.npmjs.org/@ngageoint/geopackage/-/geopackage-4.2.6.tgz", + "integrity": "sha512-HT0WAhAySTv+p462SUkvOKlXoPWDI6LETdBqNl0mC55YxE7PSvPByRIh3r/ajqSirhJeydaoN2wCw0nw+es2bA==", "peer": true, "dependencies": { - "sprintf-js": "~1.0.2" + "@turf/bbox": "6.3.0", + "@turf/boolean-clockwise": "6.5.0", + "@turf/boolean-point-in-polygon": "6.5.0", + "@turf/boolean-within": "6.5.0", + "@turf/distance": "6.5.0", + "@turf/helpers": "6.5.0", + "@turf/intersect": "6.5.0", + "@turf/line-intersect": "6.5.0", + "@turf/point-to-line-distance": "6.5.0", + "@turf/polygon-to-line": "6.5.0", + "@types/geojson": "7946.0.8", + "@types/proj4": "2.5.2", + "file-type": "^16.5.4", + "image-size": "0.8.3", + "lodash": "4.17.21", + "proj4": "2.8.0", + "reproject": "1.2.5", + "rtree-sql.js": "1.7.0", + "simplify-js": "1.2.4", + "webworkify": "1.5.0", + "wkx": "0.4.8" + }, + "bin": { + "geopackage": "cli" + }, + "optionalDependencies": { + "better-sqlite3": "^9.1.1", + "chalk": "4.1.1", + "inquirer": "8.0.0" } }, - "../../service/node_modules/array-flatten": { - "version": "1.1.1", - "license": "MIT", - "peer": true - }, - "../../service/node_modules/array-from": { - "version": "2.1.1", - "dev": true, - "license": "MIT", - "peer": true - }, - "../../service/node_modules/array-parallel": { - "version": "0.1.3", - "license": "MIT", - "peer": true - }, - "../../service/node_modules/array-series": { - "version": "0.1.5", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@ngageoint/geopackage/node_modules/@types/geojson": { + "version": "7946.0.8", + "resolved": "https://registry.npmjs.org/@types/geojson/-/geojson-7946.0.8.tgz", + "integrity": "sha512-1rkryxURpr6aWP7R786/UQOkJ3PcpQiWkAXBmdWc7ryFWqN6a4xfK7BtjXvFBKO9LjQ+MWQSWxYeZX1OApnArA==", "peer": true }, - "../../service/node_modules/arrify": { - "version": "3.0.0", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/@ngageoint/geopackage/node_modules/better-sqlite3": { + "version": "9.6.0", + "resolved": "https://registry.npmjs.org/better-sqlite3/-/better-sqlite3-9.6.0.tgz", + "integrity": "sha512-yR5HATnqeYNVnkaUTf4bOP2dJSnyhP4puJN/QPRyx4YkBEEUxib422n2XzPqDEHjQQqazoYoADdAm5vE15+dAQ==", + "hasInstallScript": true, "license": "MIT", + "optional": true, "peer": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "dependencies": { + "bindings": "^1.5.0", + "prebuild-install": "^7.1.1" } }, - "../../service/node_modules/asap": { - "version": "2.0.6", - "license": "MIT", - "peer": true - }, - "../../service/node_modules/asn1": { - "version": "0.2.3", - "license": "MIT", - "peer": true - }, - "../../service/node_modules/assert": { - "version": "2.0.0", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/@ngageoint/geopackage/node_modules/wkx": { + "version": "0.4.8", + "resolved": "https://registry.npmjs.org/wkx/-/wkx-0.4.8.tgz", + "integrity": "sha512-ikPXMM9IR/gy/LwiOSqWlSL3X/J5uk9EO2hHNRXS41eTLXaUFEVw9fn/593jW/tE5tedNg8YjT5HkCa4FqQZyQ==", "license": "MIT", "peer": true, "dependencies": { - "es6-object-assign": "^1.1.0", - "is-nan": "^1.2.1", - "object-is": "^1.0.1", - "util": "^0.12.0" + "@types/node": "*" } }, - "../../service/node_modules/assert-never": { - "version": "1.2.1", - "license": "MIT", - "peer": true - }, - "../../service/node_modules/assert-plus": { + "node_modules/@ngageoint/mage.service/node_modules/@ngageoint/mongodb-migrations": { "version": "1.0.0", - "license": "MIT", + "resolved": "https://registry.npmjs.org/@ngageoint/mongodb-migrations/-/mongodb-migrations-1.0.0.tgz", + "integrity": "sha512-SOjJk+xuPfMmevyZOhRCm3odFFW//zg8tKSkiKfgAslMIaZUII6rbrBQRjBPqyFewqg/dabY4xYnXelZSY7/cw==", "peer": true, - "engines": { - "node": ">=0.8" + "dependencies": { + "bluebird": "^3.7.2", + "coffeescript": "^2.7.0", + "lodash": "^4.17.21", + "mkdirp": "^0.5.6", + "mongodb": "^4.8.1", + "nomnom": "^1.8.1" + }, + "bin": { + "mm": "bin/mm" } }, - "../../service/node_modules/assertion-error": { - "version": "1.1.0", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@node-saml/node-saml": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/@node-saml/node-saml/-/node-saml-4.0.5.tgz", + "integrity": "sha512-J5DglElbY1tjOuaR1NPtjOXkXY5bpUhDoKVoeucYN98A3w4fwgjIOPqIGcb6cQsqFq2zZ6vTCeKn5C/hvefSaw==", "peer": true, + "dependencies": { + "@types/debug": "^4.1.7", + "@types/passport": "^1.0.11", + "@types/xml-crypto": "^1.4.2", + "@types/xml-encryption": "^1.2.1", + "@types/xml2js": "^0.4.11", + "@xmldom/xmldom": "^0.8.6", + "debug": "^4.3.4", + "xml-crypto": "^3.0.1", + "xml-encryption": "^3.0.2", + "xml2js": "^0.5.0", + "xmlbuilder": "^15.1.1" + }, "engines": { - "node": "*" + "node": ">= 14" } }, - "../../service/node_modules/astral-regex": { - "version": "1.0.0", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/@node-saml/node-saml/node_modules/@xmldom/xmldom": { + "version": "0.8.10", + "resolved": "https://registry.npmjs.org/@xmldom/xmldom/-/xmldom-0.8.10.tgz", + "integrity": "sha512-2WALfTl4xo2SkGCYRt6rDTFfk9R1czmBvUQy12gK2KuRKIpWEhcbbzy8EZXtz/jkRqHX8bFEc6FC1HjX4TUWYw==", "license": "MIT", "peer": true, "engines": { - "node": ">=4" + "node": ">=10.0.0" } }, - "../../service/node_modules/async": { - "version": "3.2.4", - "license": "MIT", - "peer": true - }, - "../../service/node_modules/async-mutex": { - "version": "0.3.2", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@node-saml/passport-saml": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/@node-saml/passport-saml/-/passport-saml-4.0.4.tgz", + "integrity": "sha512-xFw3gw0yo+K1mzlkW15NeBF7cVpRHN/4vpjmBKzov5YFImCWh/G0LcTZ8krH3yk2/eRPc3Or8LRPudVJBjmYaw==", "peer": true, "dependencies": { - "tslib": "^2.3.1" + "@node-saml/node-saml": "^4.0.4", + "@types/express": "^4.17.14", + "@types/passport": "^1.0.11", + "@types/passport-strategy": "^0.2.35", + "passport": "^0.6.0", + "passport-strategy": "^1.0.0" + }, + "engines": { + "node": ">= 14" } }, - "../../service/node_modules/async-mutex/node_modules/tslib": { - "version": "2.3.1", - "dev": true, - "license": "0BSD", - "peer": true - }, - "../../service/node_modules/asynckit": { - "version": "0.4.0", - "license": "MIT", - "peer": true - }, - "../../service/node_modules/available-typed-arrays": { - "version": "1.0.5", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/@node-saml/passport-saml/node_modules/passport": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/passport/-/passport-0.6.0.tgz", + "integrity": "sha512-0fe+p3ZnrWRW74fe8+SvCyf4a3Pb2/h7gFkQ8yTJpAO50gDzlfjZUZTO1k5Eg9kUct22OxHLqDZoKUWRHOh9ug==", "license": "MIT", "peer": true, + "dependencies": { + "passport-strategy": "1.x.x", + "pause": "0.0.1", + "utils-merge": "^1.0.1" + }, "engines": { - "node": ">= 0.4" + "node": ">= 0.4.0" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "type": "github", + "url": "https://github.com/sponsors/jaredhanson" } }, - "../../service/node_modules/aws-sign2": { - "version": "0.7.0", - "dev": true, - "license": "Apache-2.0", - "peer": true, - "engines": { - "node": "*" + "node_modules/@ngageoint/mage.service/node_modules/@nodelib/fs.scandir": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", + "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", + "extraneous": true, + "dependencies": { + "@nodelib/fs.stat": "2.0.5", + "run-parallel": "^1.1.9" + }, + "engines": { + "node": ">= 8" } }, - "../../service/node_modules/aws4": { - "version": "1.11.0", - "dev": true, - "license": "MIT", - "peer": true + "node_modules/@ngageoint/mage.service/node_modules/@nodelib/fs.stat": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", + "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", + "extraneous": true, + "engines": { + "node": ">= 8" + } }, - "../../service/node_modules/axios": { - "version": "0.21.4", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@nodelib/fs.walk": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", + "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", + "extraneous": true, + "dependencies": { + "@nodelib/fs.scandir": "2.1.5", + "fastq": "^1.6.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@oozcitak/dom": { + "version": "1.15.10", + "resolved": "https://registry.npmjs.org/@oozcitak/dom/-/dom-1.15.10.tgz", + "integrity": "sha512-0JT29/LaxVgRcGKvHmSrUTEvZ8BXvZhGl2LASRUgHqDTC1M5g1pLmVv56IYNyt3bG2CUjDkc67wnyZC14pbQrQ==", "peer": true, "dependencies": { - "follow-redirects": "^1.14.0" + "@oozcitak/infra": "1.0.8", + "@oozcitak/url": "1.0.4", + "@oozcitak/util": "8.3.8" + }, + "engines": { + "node": ">=8.0" } }, - "../../service/node_modules/babel-walk": { - "version": "3.0.0-canary-5", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@oozcitak/infra": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/@oozcitak/infra/-/infra-1.0.8.tgz", + "integrity": "sha512-JRAUc9VR6IGHOL7OGF+yrvs0LO8SlqGnPAMqyzOuFZPSZSXI7Xf2O9+awQPSMXgIWGtgUf/dA6Hs6X6ySEaWTg==", "peer": true, "dependencies": { - "@babel/types": "^7.9.6" + "@oozcitak/util": "8.3.8" }, "engines": { - "node": ">= 10.0.0" + "node": ">=6.0" } }, - "../../service/node_modules/backoff": { - "version": "2.5.0", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@oozcitak/url": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/@oozcitak/url/-/url-1.0.4.tgz", + "integrity": "sha512-kDcD8y+y3FCSOvnBI6HJgl00viO/nGbQoCINmQ0h98OhnGITrWR3bOGfwYCthgcrV8AnTJz8MzslTQbC3SOAmw==", "peer": true, "dependencies": { - "precond": "0.2" + "@oozcitak/infra": "1.0.8", + "@oozcitak/util": "8.3.8" }, "engines": { - "node": ">= 0.6" + "node": ">=8.0" } }, - "../../service/node_modules/balanced-match": { - "version": "1.0.2", - "license": "MIT", - "peer": true + "node_modules/@ngageoint/mage.service/node_modules/@oozcitak/util": { + "version": "8.3.8", + "resolved": "https://registry.npmjs.org/@oozcitak/util/-/util-8.3.8.tgz", + "integrity": "sha512-T8TbSnGsxo6TDBJx/Sgv/BlVJL3tshxZP7Aq5R1mSnM5OcHY2dQaxLMu2+E8u3gN0MLOzdjurqN4ZRVuzQycOQ==", + "peer": true, + "engines": { + "node": ">=8.0" + } }, - "../../service/node_modules/base-64": { - "version": "1.0.0", - "license": "MIT", - "peer": true + "node_modules/@ngageoint/mage.service/node_modules/@pkgjs/parseargs": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/@pkgjs/parseargs/-/parseargs-0.11.0.tgz", + "integrity": "sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==", + "extraneous": true, + "engines": { + "node": ">=14" + } }, - "../../service/node_modules/base64-js": { - "version": "1.5.1", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "license": "MIT", - "peer": true + "node_modules/@ngageoint/mage.service/node_modules/@sinonjs/commons": { + "version": "1.8.6", + "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.8.6.tgz", + "integrity": "sha512-Ky+XkAkqPZSm3NLBeUng77EBQl3cmeJhITaGHdYH8kjVB+aun3S4XBRti2zt17mtt0mIUDiNxYeoJm6drVvBJQ==", + "extraneous": true, + "dependencies": { + "type-detect": "4.0.8" + } }, - "../../service/node_modules/base64url": { - "version": "3.0.1", - "license": "MIT", - "peer": true, - "engines": { - "node": ">=6.0.0" + "node_modules/@ngageoint/mage.service/node_modules/@sinonjs/formatio": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/@sinonjs/formatio/-/formatio-3.2.2.tgz", + "integrity": "sha512-B8SEsgd8gArBLMD6zpRw3juQ2FVSsmdd7qlevyDqzS9WTCtvF55/gAL+h6gue8ZvPYcdiPdvueM/qm//9XzyTQ==", + "extraneous": true, + "dependencies": { + "@sinonjs/commons": "^1", + "@sinonjs/samsam": "^3.1.0" } }, - "../../service/node_modules/bcrypt-pbkdf": { - "version": "1.0.2", - "dev": true, - "license": "BSD-3-Clause", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/@sinonjs/samsam": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/@sinonjs/samsam/-/samsam-3.3.3.tgz", + "integrity": "sha512-bKCMKZvWIjYD0BLGnNrxVuw4dkWCYsLqFOUWw8VgKF/+5Y+mE7LfHWPIYoDXowH+3a9LsWDMo0uAP8YDosPvHQ==", + "extraneous": true, "dependencies": { - "tweetnacl": "^0.14.3" + "@sinonjs/commons": "^1.3.0", + "array-from": "^2.1.1", + "lodash": "^4.17.15" } }, - "../../service/node_modules/bcryptjs": { - "version": "2.4.3", - "license": "MIT", - "peer": true + "node_modules/@ngageoint/mage.service/node_modules/@sinonjs/text-encoding": { + "version": "0.7.2", + "resolved": "https://registry.npmjs.org/@sinonjs/text-encoding/-/text-encoding-0.7.2.tgz", + "integrity": "sha512-sXXKG+uL9IrKqViTtao2Ws6dy0znu9sOaP1di/jKGW1M6VssO8vlpXCQcpZ+jisQ1tTFAC5Jo/EOzFbggBagFQ==", + "extraneous": true }, - "../../service/node_modules/better-sqlite3": { - "version": "8.6.0", - "hasInstallScript": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@smithy/abort-controller": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/@smithy/abort-controller/-/abort-controller-3.1.1.tgz", + "integrity": "sha512-MBJBiidoe+0cTFhyxT8g+9g7CeVccLM0IOKKUMCNQ1CNMJ/eIfoo0RTfVrXOONEI1UCN1W+zkiHSbzUNE9dZtQ==", + "optional": true, "peer": true, "dependencies": { - "bindings": "^1.5.0", - "prebuild-install": "^7.1.1" + "@smithy/types": "^3.3.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" } }, - "../../service/node_modules/binary-extensions": { - "version": "2.2.0", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@smithy/config-resolver": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@smithy/config-resolver/-/config-resolver-3.0.4.tgz", + "integrity": "sha512-VwiOk7TwXoE7NlNguV/aPq1hFH72tqkHCw8eWXbr2xHspRyyv9DLpLXhq+Ieje+NwoqXrY0xyQjPXdOE6cGcHA==", + "optional": true, "peer": true, + "dependencies": { + "@smithy/node-config-provider": "^3.1.3", + "@smithy/types": "^3.3.0", + "@smithy/util-config-provider": "^3.0.0", + "@smithy/util-middleware": "^3.0.3", + "tslib": "^2.6.2" + }, "engines": { - "node": ">=8" + "node": ">=16.0.0" } }, - "../../service/node_modules/bindings": { - "version": "1.5.0", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@smithy/core": { + "version": "2.2.4", + "resolved": "https://registry.npmjs.org/@smithy/core/-/core-2.2.4.tgz", + "integrity": "sha512-qdY3LpMOUyLM/gfjjMQZui+UTNS7kBRDWlvyIhVOql5dn2J3isk9qUTBtQ1CbDH8MTugHis1zu3h4rH+Qmmh4g==", + "optional": true, "peer": true, "dependencies": { - "file-uri-to-path": "1.0.0" + "@smithy/middleware-endpoint": "^3.0.4", + "@smithy/middleware-retry": "^3.0.7", + "@smithy/middleware-serde": "^3.0.3", + "@smithy/protocol-http": "^4.0.3", + "@smithy/smithy-client": "^3.1.5", + "@smithy/types": "^3.3.0", + "@smithy/util-middleware": "^3.0.3", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" } }, - "../../service/node_modules/bl": { - "version": "4.1.0", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@smithy/credential-provider-imds": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/@smithy/credential-provider-imds/-/credential-provider-imds-3.1.3.tgz", + "integrity": "sha512-U1Yrv6hx/mRK6k8AncuI6jLUx9rn0VVSd9NPEX6pyYFBfkSkChOc/n4zUb8alHUVg83TbI4OdZVo1X0Zfj3ijA==", + "optional": true, "peer": true, "dependencies": { - "buffer": "^5.5.0", - "inherits": "^2.0.4", - "readable-stream": "^3.4.0" + "@smithy/node-config-provider": "^3.1.3", + "@smithy/property-provider": "^3.1.3", + "@smithy/types": "^3.3.0", + "@smithy/url-parser": "^3.0.3", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" } }, - "../../service/node_modules/bl/node_modules/readable-stream": { - "version": "3.6.0", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@smithy/fetch-http-handler": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/@smithy/fetch-http-handler/-/fetch-http-handler-3.2.0.tgz", + "integrity": "sha512-vFvDxMrc6sO5Atec8PaISckMcAwsCrRhYxwUylg97bRT2KZoumOF7qk5+6EVUtuM1IG9AJV5aqXnHln9ZdXHpg==", + "optional": true, "peer": true, "dependencies": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" + "@smithy/protocol-http": "^4.0.3", + "@smithy/querystring-builder": "^3.0.3", + "@smithy/types": "^3.3.0", + "@smithy/util-base64": "^3.0.0", + "tslib": "^2.6.2" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@smithy/hash-node": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@smithy/hash-node/-/hash-node-3.0.3.tgz", + "integrity": "sha512-2ctBXpPMG+B3BtWSGNnKELJ7SH9e4TNefJS0cd2eSkOOROeBnnVBnAy9LtJ8tY4vUEoe55N4CNPxzbWvR39iBw==", + "optional": true, + "peer": true, + "dependencies": { + "@smithy/types": "^3.3.0", + "@smithy/util-buffer-from": "^3.0.0", + "@smithy/util-utf8": "^3.0.0", + "tslib": "^2.6.2" }, "engines": { - "node": ">= 6" + "node": ">=16.0.0" } }, - "../../service/node_modules/bl/node_modules/string_decoder": { - "version": "1.3.0", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@smithy/invalid-dependency": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@smithy/invalid-dependency/-/invalid-dependency-3.0.3.tgz", + "integrity": "sha512-ID1eL/zpDULmHJbflb864k72/SNOZCADRc9i7Exq3RUNJw6raWUSlFEQ+3PX3EYs++bTxZB2dE9mEHTQLv61tw==", + "optional": true, "peer": true, "dependencies": { - "safe-buffer": "~5.2.0" + "@smithy/types": "^3.3.0", + "tslib": "^2.6.2" } }, - "../../service/node_modules/bluebird": { - "version": "3.7.2", - "license": "MIT", - "peer": true - }, - "../../service/node_modules/body-parser": { - "version": "1.19.2", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@smithy/is-array-buffer": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@smithy/is-array-buffer/-/is-array-buffer-3.0.0.tgz", + "integrity": "sha512-+Fsu6Q6C4RSJiy81Y8eApjEB5gVtM+oFKTffg+jSuwtvomJJrhUJBu2zS8wjXSgH/g1MKEWrzyChTBe6clb5FQ==", + "optional": true, "peer": true, "dependencies": { - "bytes": "3.1.2", - "content-type": "~1.0.4", - "debug": "2.6.9", - "depd": "~1.1.2", - "http-errors": "1.8.1", - "iconv-lite": "0.4.24", - "on-finished": "~2.3.0", - "qs": "6.9.7", - "raw-body": "2.4.3", - "type-is": "~1.6.18" + "tslib": "^2.6.2" }, "engines": { - "node": ">= 0.8" + "node": ">=16.0.0" } }, - "../../service/node_modules/body-parser/node_modules/iconv-lite": { - "version": "0.4.24", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@smithy/middleware-content-length": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@smithy/middleware-content-length/-/middleware-content-length-3.0.3.tgz", + "integrity": "sha512-Dbz2bzexReYIQDWMr+gZhpwBetNXzbhnEMhYKA6urqmojO14CsXjnsoPYO8UL/xxcawn8ZsuVU61ElkLSltIUQ==", + "optional": true, "peer": true, "dependencies": { - "safer-buffer": ">= 2.1.2 < 3" + "@smithy/protocol-http": "^4.0.3", + "@smithy/types": "^3.3.0", + "tslib": "^2.6.2" }, "engines": { - "node": ">=0.10.0" + "node": ">=16.0.0" } }, - "../../service/node_modules/body-parser/node_modules/qs": { - "version": "6.9.7", - "license": "BSD-3-Clause", + "node_modules/@ngageoint/mage.service/node_modules/@smithy/middleware-endpoint": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@smithy/middleware-endpoint/-/middleware-endpoint-3.0.4.tgz", + "integrity": "sha512-whUJMEPwl3ANIbXjBXZVdJNgfV2ZU8ayln7xUM47rXL2txuenI7jQ/VFFwCzy5lCmXScjp6zYtptW5Evud8e9g==", + "optional": true, "peer": true, - "engines": { - "node": ">=0.6" + "dependencies": { + "@smithy/middleware-serde": "^3.0.3", + "@smithy/node-config-provider": "^3.1.3", + "@smithy/shared-ini-file-loader": "^3.1.3", + "@smithy/types": "^3.3.0", + "@smithy/url-parser": "^3.0.3", + "@smithy/util-middleware": "^3.0.3", + "tslib": "^2.6.2" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "engines": { + "node": ">=16.0.0" } }, - "../../service/node_modules/brace-expansion": { - "version": "1.1.11", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@smithy/middleware-retry": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/@smithy/middleware-retry/-/middleware-retry-3.0.7.tgz", + "integrity": "sha512-f5q7Y09G+2h5ivkSx5CHvlAT4qRR3jBFEsfXyQ9nFNiWQlr8c48blnu5cmbTQ+p1xmIO14UXzKoF8d7Tm0Gsjw==", + "optional": true, "peer": true, "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" + "@smithy/node-config-provider": "^3.1.3", + "@smithy/protocol-http": "^4.0.3", + "@smithy/service-error-classification": "^3.0.3", + "@smithy/smithy-client": "^3.1.5", + "@smithy/types": "^3.3.0", + "@smithy/util-middleware": "^3.0.3", + "@smithy/util-retry": "^3.0.3", + "tslib": "^2.6.2", + "uuid": "^9.0.1" + }, + "engines": { + "node": ">=16.0.0" } }, - "../../service/node_modules/braces": { - "version": "3.0.2", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@smithy/middleware-serde": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@smithy/middleware-serde/-/middleware-serde-3.0.3.tgz", + "integrity": "sha512-puUbyJQBcg9eSErFXjKNiGILJGtiqmuuNKEYNYfUD57fUl4i9+mfmThtQhvFXU0hCVG0iEJhvQUipUf+/SsFdA==", + "optional": true, "peer": true, "dependencies": { - "fill-range": "^7.0.1" + "@smithy/types": "^3.3.0", + "tslib": "^2.6.2" }, "engines": { - "node": ">=8" + "node": ">=16.0.0" } }, - "../../service/node_modules/brorand": { - "version": "1.1.0", - "license": "MIT", - "peer": true - }, - "../../service/node_modules/browser-stdout": { - "version": "1.3.1", - "dev": true, - "license": "ISC", - "peer": true - }, - "../../service/node_modules/browserify-aes": { - "version": "1.2.0", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@smithy/middleware-stack": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@smithy/middleware-stack/-/middleware-stack-3.0.3.tgz", + "integrity": "sha512-r4klY9nFudB0r9UdSMaGSyjyQK5adUyPnQN/ZM6M75phTxOdnc/AhpvGD1fQUvgmqjQEBGCwpnPbDm8pH5PapA==", + "optional": true, "peer": true, "dependencies": { - "buffer-xor": "^1.0.3", - "cipher-base": "^1.0.0", - "create-hash": "^1.1.0", - "evp_bytestokey": "^1.0.3", - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" + "@smithy/types": "^3.3.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" } }, - "../../service/node_modules/bson": { - "version": "1.0.9", - "license": "Apache-2.0", + "node_modules/@ngageoint/mage.service/node_modules/@smithy/node-config-provider": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/@smithy/node-config-provider/-/node-config-provider-3.1.3.tgz", + "integrity": "sha512-rxdpAZczzholz6CYZxtqDu/aKTxATD5DAUDVj7HoEulq+pDSQVWzbg0btZDlxeFfa6bb2b5tUvgdX5+k8jUqcg==", + "optional": true, "peer": true, + "dependencies": { + "@smithy/property-provider": "^3.1.3", + "@smithy/shared-ini-file-loader": "^3.1.3", + "@smithy/types": "^3.3.0", + "tslib": "^2.6.2" + }, "engines": { - "node": ">=0.6.19" + "node": ">=16.0.0" } }, - "../../service/node_modules/buffer": { - "version": "5.7.1", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@smithy/node-http-handler": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/@smithy/node-http-handler/-/node-http-handler-3.1.1.tgz", + "integrity": "sha512-L71NLyPeP450r2J/mfu1jMc//Z1YnqJt2eSNw7uhiItaONnBLDA68J5jgxq8+MBDsYnFwNAIc7dBG1ImiWBiwg==", + "optional": true, "peer": true, "dependencies": { - "base64-js": "^1.3.1", - "ieee754": "^1.1.13" + "@smithy/abort-controller": "^3.1.1", + "@smithy/protocol-http": "^4.0.3", + "@smithy/querystring-builder": "^3.0.3", + "@smithy/types": "^3.3.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" } }, - "../../service/node_modules/buffer-crc32": { - "version": "0.2.13", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@smithy/property-provider": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/@smithy/property-provider/-/property-provider-3.1.3.tgz", + "integrity": "sha512-zahyOVR9Q4PEoguJ/NrFP4O7SMAfYO1HLhB18M+q+Z4KFd4V2obiMnlVoUFzFLSPeVt1POyNWneHHrZaTMoc/g==", + "optional": true, "peer": true, + "dependencies": { + "@smithy/types": "^3.3.0", + "tslib": "^2.6.2" + }, "engines": { - "node": "*" + "node": ">=16.0.0" } }, - "../../service/node_modules/buffer-equal-constant-time": { - "version": "1.0.1", - "license": "BSD-3-Clause", - "peer": true + "node_modules/@ngageoint/mage.service/node_modules/@smithy/protocol-http": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@smithy/protocol-http/-/protocol-http-4.0.3.tgz", + "integrity": "sha512-x5jmrCWwQlx+Zv4jAtc33ijJ+vqqYN+c/ZkrnpvEe/uDas7AT7A/4Rc2CdfxgWv4WFGmEqODIrrUToPN6DDkGw==", + "optional": true, + "peer": true, + "dependencies": { + "@smithy/types": "^3.3.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" + } }, - "../../service/node_modules/buffer-from": { - "version": "1.1.2", - "license": "MIT", - "peer": true - }, - "../../service/node_modules/buffer-shims": { - "version": "1.0.0", - "license": "MIT", - "peer": true - }, - "../../service/node_modules/buffer-xor": { - "version": "1.0.3", - "license": "MIT", - "peer": true - }, - "../../service/node_modules/bunyan": { - "version": "1.8.15", - "engines": [ - "node >=0.10.0" - ], - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@smithy/querystring-builder": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@smithy/querystring-builder/-/querystring-builder-3.0.3.tgz", + "integrity": "sha512-vyWckeUeesFKzCDaRwWLUA1Xym9McaA6XpFfAK5qI9DKJ4M33ooQGqvM4J+LalH4u/Dq9nFiC8U6Qn1qi0+9zw==", + "optional": true, "peer": true, - "bin": { - "bunyan": "bin/bunyan" + "dependencies": { + "@smithy/types": "^3.3.0", + "@smithy/util-uri-escape": "^3.0.0", + "tslib": "^2.6.2" }, - "optionalDependencies": { - "dtrace-provider": "~0.8", - "moment": "^2.19.3", - "mv": "~2", - "safe-json-stringify": "~1" + "engines": { + "node": ">=16.0.0" } }, - "../../service/node_modules/busboy": { - "version": "1.6.0", + "node_modules/@ngageoint/mage.service/node_modules/@smithy/querystring-parser": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@smithy/querystring-parser/-/querystring-parser-3.0.3.tgz", + "integrity": "sha512-zahM1lQv2YjmznnfQsWbYojFe55l0SLG/988brlLv1i8z3dubloLF+75ATRsqPBboUXsW6I9CPGE5rQgLfY0vQ==", + "optional": true, "peer": true, "dependencies": { - "streamsearch": "^1.1.0" + "@smithy/types": "^3.3.0", + "tslib": "^2.6.2" }, "engines": { - "node": ">=10.16.0" + "node": ">=16.0.0" } }, - "../../service/node_modules/bytes": { - "version": "3.1.2", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@smithy/service-error-classification": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@smithy/service-error-classification/-/service-error-classification-3.0.3.tgz", + "integrity": "sha512-Jn39sSl8cim/VlkLsUhRFq/dKDnRUFlfRkvhOJaUbLBXUsLRLNf9WaxDv/z9BjuQ3A6k/qE8af1lsqcwm7+DaQ==", + "optional": true, "peer": true, + "dependencies": { + "@smithy/types": "^3.3.0" + }, "engines": { - "node": ">= 0.8" + "node": ">=16.0.0" } }, - "../../service/node_modules/caching-transform": { - "version": "3.0.2", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@smithy/shared-ini-file-loader": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/@smithy/shared-ini-file-loader/-/shared-ini-file-loader-3.1.3.tgz", + "integrity": "sha512-Z8Y3+08vgoDgl4HENqNnnzSISAaGrF2RoKupoC47u2wiMp+Z8P/8mDh1CL8+8ujfi2U5naNvopSBmP/BUj8b5w==", + "optional": true, "peer": true, "dependencies": { - "hasha": "^3.0.0", - "make-dir": "^2.0.0", - "package-hash": "^3.0.0", - "write-file-atomic": "^2.4.2" + "@smithy/types": "^3.3.0", + "tslib": "^2.6.2" }, "engines": { - "node": ">=6" + "node": ">=16.0.0" } }, - "../../service/node_modules/call-bind": { - "version": "1.0.2", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@smithy/signature-v4": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@smithy/signature-v4/-/signature-v4-3.1.2.tgz", + "integrity": "sha512-3BcPylEsYtD0esM4Hoyml/+s7WP2LFhcM3J2AGdcL2vx9O60TtfpDOL72gjb4lU8NeRPeKAwR77YNyyGvMbuEA==", + "optional": true, "peer": true, "dependencies": { - "function-bind": "^1.1.1", - "get-intrinsic": "^1.0.2" + "@smithy/is-array-buffer": "^3.0.0", + "@smithy/types": "^3.3.0", + "@smithy/util-hex-encoding": "^3.0.0", + "@smithy/util-middleware": "^3.0.3", + "@smithy/util-uri-escape": "^3.0.0", + "@smithy/util-utf8": "^3.0.0", + "tslib": "^2.6.2" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "engines": { + "node": ">=16.0.0" } }, - "../../service/node_modules/call-me-maybe": { - "version": "1.0.1", - "dev": true, - "license": "MIT", - "peer": true - }, - "../../service/node_modules/callsites": { - "version": "3.1.0", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@smithy/smithy-client": { + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/@smithy/smithy-client/-/smithy-client-3.1.5.tgz", + "integrity": "sha512-x9bL9Mx2CT2P1OiUlHM+ZNpbVU6TgT32f9CmTRzqIHA7M4vYrROCWEoC3o4xHNJASoGd4Opos3cXYPgh+/m4Ww==", + "optional": true, "peer": true, + "dependencies": { + "@smithy/middleware-endpoint": "^3.0.4", + "@smithy/middleware-stack": "^3.0.3", + "@smithy/protocol-http": "^4.0.3", + "@smithy/types": "^3.3.0", + "@smithy/util-stream": "^3.0.5", + "tslib": "^2.6.2" + }, "engines": { - "node": ">=6" + "node": ">=16.0.0" } }, - "../../service/node_modules/caseless": { - "version": "0.12.0", - "dev": true, - "license": "Apache-2.0", - "peer": true + "node_modules/@ngageoint/mage.service/node_modules/@smithy/types": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/@smithy/types/-/types-3.3.0.tgz", + "integrity": "sha512-IxvBBCTFDHbVoK7zIxqA1ZOdc4QfM5HM7rGleCuHi7L1wnKv5Pn69xXJQ9hgxH60ZVygH9/JG0jRgtUncE3QUA==", + "optional": true, + "peer": true, + "dependencies": { + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" + } }, - "../../service/node_modules/cfenv": { - "version": "1.0.3", - "license": "Apache-2.0", + "node_modules/@ngageoint/mage.service/node_modules/@smithy/url-parser": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@smithy/url-parser/-/url-parser-3.0.3.tgz", + "integrity": "sha512-pw3VtZtX2rg+s6HMs6/+u9+hu6oY6U7IohGhVNnjbgKy86wcIsSZwgHrFR+t67Uyxvp4Xz3p3kGXXIpTNisq8A==", + "optional": true, "peer": true, "dependencies": { - "js-yaml": "3.4.x", - "ports": "1.1.x", - "underscore": "1.8.x" + "@smithy/querystring-parser": "^3.0.3", + "@smithy/types": "^3.3.0", + "tslib": "^2.6.2" } }, - "../../service/node_modules/chai": { - "version": "4.3.6", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@smithy/util-base64": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@smithy/util-base64/-/util-base64-3.0.0.tgz", + "integrity": "sha512-Kxvoh5Qtt0CDsfajiZOCpJxgtPHXOKwmM+Zy4waD43UoEMA+qPxxa98aE/7ZhdnBFZFXMOiBR5xbcaMhLtznQQ==", + "optional": true, "peer": true, "dependencies": { - "assertion-error": "^1.1.0", - "check-error": "^1.0.2", - "deep-eql": "^3.0.1", - "get-func-name": "^2.0.0", - "loupe": "^2.3.1", - "pathval": "^1.1.1", - "type-detect": "^4.0.5" + "@smithy/util-buffer-from": "^3.0.0", + "@smithy/util-utf8": "^3.0.0", + "tslib": "^2.6.2" }, "engines": { - "node": ">=4" + "node": ">=16.0.0" } }, - "../../service/node_modules/chai-as-promised": { - "version": "7.1.1", - "dev": true, - "license": "WTFPL", + "node_modules/@ngageoint/mage.service/node_modules/@smithy/util-body-length-browser": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@smithy/util-body-length-browser/-/util-body-length-browser-3.0.0.tgz", + "integrity": "sha512-cbjJs2A1mLYmqmyVl80uoLTJhAcfzMOyPgjwAYusWKMdLeNtzmMz9YxNl3/jRLoxSS3wkqkf0jwNdtXWtyEBaQ==", + "optional": true, "peer": true, "dependencies": { - "check-error": "^1.0.2" - }, - "peerDependencies": { - "chai": ">= 2.1.2 < 5" + "tslib": "^2.6.2" } }, - "../../service/node_modules/chai/node_modules/deep-eql": { - "version": "3.0.1", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@smithy/util-body-length-node": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@smithy/util-body-length-node/-/util-body-length-node-3.0.0.tgz", + "integrity": "sha512-Tj7pZ4bUloNUP6PzwhN7K386tmSmEET9QtQg0TgdNOnxhZvCssHji+oZTUIuzxECRfG8rdm2PMw2WCFs6eIYkA==", + "optional": true, "peer": true, "dependencies": { - "type-detect": "^4.0.0" + "tslib": "^2.6.2" }, "engines": { - "node": ">=0.12" + "node": ">=16.0.0" } }, - "../../service/node_modules/chalk": { - "version": "4.1.1", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@smithy/util-buffer-from": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@smithy/util-buffer-from/-/util-buffer-from-3.0.0.tgz", + "integrity": "sha512-aEOHCgq5RWFbP+UDPvPot26EJHjOC+bRgse5A8V3FSShqd5E5UN4qc7zkwsvJPPAVsf73QwYcHN1/gt/rtLwQA==", "optional": true, "peer": true, "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" + "@smithy/is-array-buffer": "^3.0.0", + "tslib": "^2.6.2" }, "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" + "node": ">=16.0.0" } }, - "../../service/node_modules/character-parser": { - "version": "2.2.0", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@smithy/util-config-provider": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@smithy/util-config-provider/-/util-config-provider-3.0.0.tgz", + "integrity": "sha512-pbjk4s0fwq3Di/ANL+rCvJMKM5bzAQdE5S/6RL5NXgMExFAi6UgQMPOm5yPaIWPpr+EOXKXRonJ3FoxKf4mCJQ==", + "optional": true, "peer": true, "dependencies": { - "is-regex": "^1.0.3" - } - }, - "../../service/node_modules/chardet": { - "version": "0.7.0", - "devOptional": true, - "license": "MIT", - "peer": true - }, - "../../service/node_modules/check-error": { - "version": "1.0.2", - "dev": true, - "license": "MIT", - "peer": true, + "tslib": "^2.6.2" + }, "engines": { - "node": "*" + "node": ">=16.0.0" } }, - "../../service/node_modules/chokidar": { - "version": "3.3.0", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@smithy/util-defaults-mode-browser": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/@smithy/util-defaults-mode-browser/-/util-defaults-mode-browser-3.0.7.tgz", + "integrity": "sha512-Q2txLyvQyGfmjsaDbVV7Sg8psefpFcrnlGapDzXGFRPFKRBeEg6OvFK8FljqjeHSaCZ6/UuzQExUPqBR/2qlDA==", + "optional": true, "peer": true, "dependencies": { - "anymatch": "~3.1.1", - "braces": "~3.0.2", - "glob-parent": "~5.1.0", - "is-binary-path": "~2.1.0", - "is-glob": "~4.0.1", - "normalize-path": "~3.0.0", - "readdirp": "~3.2.0" + "@smithy/property-provider": "^3.1.3", + "@smithy/smithy-client": "^3.1.5", + "@smithy/types": "^3.3.0", + "bowser": "^2.11.0", + "tslib": "^2.6.2" }, "engines": { - "node": ">= 8.10.0" - }, - "optionalDependencies": { - "fsevents": "~2.1.1" + "node": ">= 10.0.0" } }, - "../../service/node_modules/chownr": { - "version": "1.1.4", - "license": "ISC", - "peer": true - }, - "../../service/node_modules/cipher-base": { - "version": "1.0.4", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@smithy/util-defaults-mode-node": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/@smithy/util-defaults-mode-node/-/util-defaults-mode-node-3.0.7.tgz", + "integrity": "sha512-F4Qcj1fG6MGi2BSWCslfsMSwllws/WzYONBGtLybyY+halAcXdWhcew+mej8M5SKd5hqPYp4f7b+ABQEaeytgg==", + "optional": true, "peer": true, "dependencies": { - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" + "@smithy/config-resolver": "^3.0.4", + "@smithy/credential-provider-imds": "^3.1.3", + "@smithy/node-config-provider": "^3.1.3", + "@smithy/property-provider": "^3.1.3", + "@smithy/smithy-client": "^3.1.5", + "@smithy/types": "^3.3.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">= 10.0.0" } }, - "../../service/node_modules/cli-cursor": { - "version": "3.1.0", - "devOptional": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@smithy/util-endpoints": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/@smithy/util-endpoints/-/util-endpoints-2.0.4.tgz", + "integrity": "sha512-ZAtNf+vXAsgzgRutDDiklU09ZzZiiV/nATyqde4Um4priTmasDH+eLpp3tspL0hS2dEootyFMhu1Y6Y+tzpWBQ==", + "optional": true, "peer": true, "dependencies": { - "restore-cursor": "^3.1.0" + "@smithy/node-config-provider": "^3.1.3", + "@smithy/types": "^3.3.0", + "tslib": "^2.6.2" }, "engines": { - "node": ">=8" + "node": ">=16.0.0" } }, - "../../service/node_modules/cli-width": { + "node_modules/@ngageoint/mage.service/node_modules/@smithy/util-hex-encoding": { "version": "3.0.0", - "devOptional": true, - "license": "ISC", + "resolved": "https://registry.npmjs.org/@smithy/util-hex-encoding/-/util-hex-encoding-3.0.0.tgz", + "integrity": "sha512-eFndh1WEK5YMUYvy3lPlVmYY/fZcQE1D8oSf41Id2vCeIkKJXPcYDCZD+4+xViI6b1XSd7tE+s5AmXzz5ilabQ==", + "optional": true, "peer": true, + "dependencies": { + "tslib": "^2.6.2" + }, "engines": { - "node": ">= 10" + "node": ">=16.0.0" } }, - "../../service/node_modules/code-point-at": { - "version": "1.1.0", - "devOptional": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@smithy/util-middleware": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@smithy/util-middleware/-/util-middleware-3.0.3.tgz", + "integrity": "sha512-l+StyYYK/eO3DlVPbU+4Bi06Jjal+PFLSMmlWM1BEwyLxZ3aKkf1ROnoIakfaA7mC6uw3ny7JBkau4Yc+5zfWw==", + "optional": true, "peer": true, + "dependencies": { + "@smithy/types": "^3.3.0", + "tslib": "^2.6.2" + }, "engines": { - "node": ">=0.10.0" + "node": ">=16.0.0" } }, - "../../service/node_modules/color-convert": { - "version": "2.0.1", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@smithy/util-retry": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@smithy/util-retry/-/util-retry-3.0.3.tgz", + "integrity": "sha512-AFw+hjpbtVApzpNDhbjNG5NA3kyoMs7vx0gsgmlJF4s+yz1Zlepde7J58zpIRIsdjc+emhpAITxA88qLkPF26w==", "optional": true, "peer": true, "dependencies": { - "color-name": "~1.1.4" + "@smithy/service-error-classification": "^3.0.3", + "@smithy/types": "^3.3.0", + "tslib": "^2.6.2" }, "engines": { - "node": ">=7.0.0" + "node": ">=16.0.0" } }, - "../../service/node_modules/color-name": { - "version": "1.1.4", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@smithy/util-stream": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/@smithy/util-stream/-/util-stream-3.0.5.tgz", + "integrity": "sha512-xC3L5PKMAT/Bh8fmHNXP9sdQ4+4aKVUU3EEJ2CF/lLk7R+wtMJM+v/1B4en7jO++Wa5spGzFDBCl0QxgbUc5Ug==", "optional": true, - "peer": true - }, - "../../service/node_modules/colors": { - "version": "1.0.3", - "license": "MIT", "peer": true, + "dependencies": { + "@smithy/fetch-http-handler": "^3.2.0", + "@smithy/node-http-handler": "^3.1.1", + "@smithy/types": "^3.3.0", + "@smithy/util-base64": "^3.0.0", + "@smithy/util-buffer-from": "^3.0.0", + "@smithy/util-hex-encoding": "^3.0.0", + "@smithy/util-utf8": "^3.0.0", + "tslib": "^2.6.2" + }, "engines": { - "node": ">=0.1.90" + "node": ">=16.0.0" } }, - "../../service/node_modules/combined-stream": { - "version": "1.0.8", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@smithy/util-uri-escape": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@smithy/util-uri-escape/-/util-uri-escape-3.0.0.tgz", + "integrity": "sha512-LqR7qYLgZTD7nWLBecUi4aqolw8Mhza9ArpNEQ881MJJIU2sE5iHCK6TdyqqzcDLy0OPe10IY4T8ctVdtynubg==", + "optional": true, "peer": true, "dependencies": { - "delayed-stream": "~1.0.0" + "tslib": "^2.6.2" }, "engines": { - "node": ">= 0.8" + "node": ">=16.0.0" } }, - "../../service/node_modules/commander": { - "version": "8.3.0", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@smithy/util-utf8": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@smithy/util-utf8/-/util-utf8-3.0.0.tgz", + "integrity": "sha512-rUeT12bxFnplYDe815GXbq/oixEGHfRFFtcTF3YdDi/JaENIM6aSYYLJydG83UNzLXeRI5K8abYd/8Sp/QM0kA==", + "optional": true, "peer": true, + "dependencies": { + "@smithy/util-buffer-from": "^3.0.0", + "tslib": "^2.6.2" + }, "engines": { - "node": ">= 12" + "node": ">=16.0.0" } }, - "../../service/node_modules/commondir": { - "version": "1.0.1", - "dev": true, - "license": "MIT", - "peer": true - }, - "../../service/node_modules/component-emitter": { - "version": "1.3.0", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@tokenizer/token": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/@tokenizer/token/-/token-0.3.0.tgz", + "integrity": "sha512-OvjF+z51L3ov0OyAU0duzsYuvO01PH7x4t6DJx+guahgTnBHkhJdG7soQeTSFLWN3efnHyibZ4Z8l2EuWwJN3A==", "peer": true }, - "../../service/node_modules/compress-commons": { - "version": "4.1.1", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@turf/bbox": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/@turf/bbox/-/bbox-6.3.0.tgz", + "integrity": "sha512-N4ue5Xopu1qieSHP2MA/CJGWHPKaTrVXQJjzHRNcY1vtsO126xbSaJhWUrFc5x5vVkXp0dcucGryO0r5m4o/KA==", "peer": true, "dependencies": { - "buffer-crc32": "^0.2.13", - "crc32-stream": "^4.0.2", - "normalize-path": "^3.0.0", - "readable-stream": "^3.6.0" - }, - "engines": { - "node": ">= 10" + "@turf/helpers": "^6.3.0", + "@turf/meta": "^6.3.0" } }, - "../../service/node_modules/compress-commons/node_modules/readable-stream": { - "version": "3.6.0", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@turf/bearing": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/bearing/-/bearing-6.5.0.tgz", + "integrity": "sha512-dxINYhIEMzgDOztyMZc20I7ssYVNEpSv04VbMo5YPQsqa80KO3TFvbuCahMsCAW5z8Tncc8dwBlEFrmRjJG33A==", "peer": true, "dependencies": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" + "@turf/helpers": "^6.5.0", + "@turf/invariant": "^6.5.0" }, - "engines": { - "node": ">= 6" + "funding": { + "url": "https://opencollective.com/turf" } }, - "../../service/node_modules/compress-commons/node_modules/string_decoder": { - "version": "1.3.0", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@turf/boolean-clockwise": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/boolean-clockwise/-/boolean-clockwise-6.5.0.tgz", + "integrity": "sha512-45+C7LC5RMbRWrxh3Z0Eihsc8db1VGBO5d9BLTOAwU4jR6SgsunTfRWR16X7JUwIDYlCVEmnjcXJNi/kIU3VIw==", "peer": true, "dependencies": { - "safe-buffer": "~5.2.0" + "@turf/helpers": "^6.5.0", + "@turf/invariant": "^6.5.0" + }, + "funding": { + "url": "https://opencollective.com/turf" } }, - "../../service/node_modules/concat-map": { - "version": "0.0.1", - "license": "MIT", - "peer": true - }, - "../../service/node_modules/concat-stream": { - "version": "1.5.2", - "engines": [ - "node >= 0.8" - ], - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@turf/boolean-point-in-polygon": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/boolean-point-in-polygon/-/boolean-point-in-polygon-6.5.0.tgz", + "integrity": "sha512-DtSuVFB26SI+hj0SjrvXowGTUCHlgevPAIsukssW6BG5MlNSBQAo70wpICBNJL6RjukXg8d2eXaAWuD/CqL00A==", "peer": true, "dependencies": { - "inherits": "~2.0.1", - "readable-stream": "~2.0.0", - "typedarray": "~0.0.5" + "@turf/helpers": "^6.5.0", + "@turf/invariant": "^6.5.0" + }, + "funding": { + "url": "https://opencollective.com/turf" } }, - "../../service/node_modules/console-control-strings": { - "version": "1.1.0", - "license": "ISC", - "optional": true, - "peer": true - }, - "../../service/node_modules/constantinople": { - "version": "4.0.1", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@turf/boolean-point-on-line": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/boolean-point-on-line/-/boolean-point-on-line-6.5.0.tgz", + "integrity": "sha512-A1BbuQ0LceLHvq7F/P7w3QvfpmZqbmViIUPHdNLvZimFNLo4e6IQunmzbe+8aSStH9QRZm3VOflyvNeXvvpZEQ==", "peer": true, "dependencies": { - "@babel/parser": "^7.6.0", - "@babel/types": "^7.6.1" + "@turf/helpers": "^6.5.0", + "@turf/invariant": "^6.5.0" + }, + "funding": { + "url": "https://opencollective.com/turf" } }, - "../../service/node_modules/content-disposition": { - "version": "0.5.4", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@turf/boolean-within": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/boolean-within/-/boolean-within-6.5.0.tgz", + "integrity": "sha512-YQB3oU18Inx35C/LU930D36RAVe7LDXk1kWsQ8mLmuqYn9YdPsDQTMTkLJMhoQ8EbN7QTdy333xRQ4MYgToteQ==", "peer": true, "dependencies": { - "safe-buffer": "5.2.1" + "@turf/bbox": "^6.5.0", + "@turf/boolean-point-in-polygon": "^6.5.0", + "@turf/boolean-point-on-line": "^6.5.0", + "@turf/helpers": "^6.5.0", + "@turf/invariant": "^6.5.0" }, - "engines": { - "node": ">= 0.6" + "funding": { + "url": "https://opencollective.com/turf" } }, - "../../service/node_modules/content-type": { - "version": "1.0.4", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@turf/boolean-within/node_modules/@turf/bbox": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/bbox/-/bbox-6.5.0.tgz", + "integrity": "sha512-RBbLaao5hXTYyyg577iuMtDB8ehxMlUqHEJiMs8jT1GHkFhr6sYre3lmLsPeYEi/ZKj5TP5tt7fkzNdJ4GIVyw==", "peer": true, - "engines": { - "node": ">= 0.6" + "dependencies": { + "@turf/helpers": "^6.5.0", + "@turf/meta": "^6.5.0" + }, + "funding": { + "url": "https://opencollective.com/turf" } }, - "../../service/node_modules/convert-source-map": { - "version": "1.8.0", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@turf/centroid": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/centroid/-/centroid-6.5.0.tgz", + "integrity": "sha512-MwE1oq5E3isewPprEClbfU5pXljIK/GUOMbn22UM3IFPDJX0KeoyLNwghszkdmFp/qMGL/M13MMWvU+GNLXP/A==", "peer": true, "dependencies": { - "safe-buffer": "~5.1.1" + "@turf/helpers": "^6.5.0", + "@turf/meta": "^6.5.0" + }, + "funding": { + "url": "https://opencollective.com/turf" } }, - "../../service/node_modules/convert-source-map/node_modules/safe-buffer": { - "version": "5.1.2", - "dev": true, - "license": "MIT", - "peer": true - }, - "../../service/node_modules/cookie": { - "version": "0.5.0", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@turf/clone": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/clone/-/clone-6.5.0.tgz", + "integrity": "sha512-mzVtTFj/QycXOn6ig+annKrM6ZlimreKYz6f/GSERytOpgzodbQyOgkfwru100O1KQhhjSudKK4DsQ0oyi9cTw==", "peer": true, - "engines": { - "node": ">= 0.6" + "dependencies": { + "@turf/helpers": "^6.5.0" + }, + "funding": { + "url": "https://opencollective.com/turf" } }, - "../../service/node_modules/cookie-signature": { - "version": "1.0.6", - "license": "MIT", - "peer": true - }, - "../../service/node_modules/cookiejar": { - "version": "2.1.3", - "license": "MIT", - "peer": true - }, - "../../service/node_modules/core-util-is": { - "version": "1.0.3", - "license": "MIT", - "peer": true - }, - "../../service/node_modules/coveralls": { - "version": "3.0.4", - "dev": true, - "license": "BSD-2-Clause", + "node_modules/@ngageoint/mage.service/node_modules/@turf/distance": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/distance/-/distance-6.5.0.tgz", + "integrity": "sha512-xzykSLfoURec5qvQJcfifw/1mJa+5UwByZZ5TZ8iaqjGYN0vomhV9aiSLeYdUGtYRESZ+DYC/OzY+4RclZYgMg==", "peer": true, "dependencies": { - "growl": "~> 1.10.0", - "js-yaml": "^3.11.0", - "lcov-parse": "^0.0.10", - "log-driver": "^1.2.7", - "minimist": "^1.2.0", - "request": "^2.86.0" - }, - "bin": { - "coveralls": "bin/coveralls.js" + "@turf/helpers": "^6.5.0", + "@turf/invariant": "^6.5.0" }, - "engines": { - "node": ">=4.0.0" + "funding": { + "url": "https://opencollective.com/turf" } }, - "../../service/node_modules/coveralls/node_modules/esprima": { - "version": "4.0.1", - "dev": true, - "license": "BSD-2-Clause", + "node_modules/@ngageoint/mage.service/node_modules/@turf/helpers": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/helpers/-/helpers-6.5.0.tgz", + "integrity": "sha512-VbI1dV5bLFzohYYdgqwikdMVpe7pJ9X3E+dlr425wa2/sMJqYDhTO++ec38/pcPvPE6oD9WEEeU3Xu3gza+VPw==", "peer": true, - "bin": { - "esparse": "bin/esparse.js", - "esvalidate": "bin/esvalidate.js" - }, - "engines": { - "node": ">=4" + "funding": { + "url": "https://opencollective.com/turf" } }, - "../../service/node_modules/coveralls/node_modules/js-yaml": { - "version": "3.14.1", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@turf/intersect": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/intersect/-/intersect-6.5.0.tgz", + "integrity": "sha512-2legGJeKrfFkzntcd4GouPugoqPUjexPZnOvfez+3SfIMrHvulw8qV8u7pfVyn2Yqs53yoVCEjS5sEpvQ5YRQg==", "peer": true, "dependencies": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" + "@turf/helpers": "^6.5.0", + "@turf/invariant": "^6.5.0", + "polygon-clipping": "^0.15.3" }, - "bin": { - "js-yaml": "bin/js-yaml.js" + "funding": { + "url": "https://opencollective.com/turf" } }, - "../../service/node_modules/cp-file": { - "version": "6.2.0", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@turf/invariant": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/invariant/-/invariant-6.5.0.tgz", + "integrity": "sha512-Wv8PRNCtPD31UVbdJE/KVAWKe7l6US+lJItRR/HOEW3eh+U/JwRCSUl/KZ7bmjM/C+zLNoreM2TU6OoLACs4eg==", "peer": true, "dependencies": { - "graceful-fs": "^4.1.2", - "make-dir": "^2.0.0", - "nested-error-stacks": "^2.0.0", - "pify": "^4.0.1", - "safe-buffer": "^5.0.1" + "@turf/helpers": "^6.5.0" }, - "engines": { - "node": ">=6" + "funding": { + "url": "https://opencollective.com/turf" } }, - "../../service/node_modules/cp-file/node_modules/pify": { - "version": "4.0.1", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@turf/kinks": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/kinks/-/kinks-6.5.0.tgz", + "integrity": "sha512-ViCngdPt1eEL7hYUHR2eHR662GvCgTc35ZJFaNR6kRtr6D8plLaDju0FILeFFWSc+o8e3fwxZEJKmFj9IzPiIQ==", "peer": true, - "engines": { - "node": ">=6" + "dependencies": { + "@turf/helpers": "^6.5.0" + }, + "funding": { + "url": "https://opencollective.com/turf" } }, - "../../service/node_modules/cpy": { - "version": "10.1.0", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@turf/line-intersect": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/line-intersect/-/line-intersect-6.5.0.tgz", + "integrity": "sha512-CS6R1tZvVQD390G9Ea4pmpM6mJGPWoL82jD46y0q1KSor9s6HupMIo1kY4Ny+AEYQl9jd21V3Scz20eldpbTVA==", "peer": true, "dependencies": { - "arrify": "^3.0.0", - "cp-file": "^10.0.0", - "globby": "^13.1.4", - "junk": "^4.0.1", - "micromatch": "^4.0.5", - "nested-error-stacks": "^2.1.1", - "p-filter": "^3.0.0", - "p-map": "^6.0.0" - }, - "engines": { - "node": ">=16" + "@turf/helpers": "^6.5.0", + "@turf/invariant": "^6.5.0", + "@turf/line-segment": "^6.5.0", + "@turf/meta": "^6.5.0", + "geojson-rbush": "3.x" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://opencollective.com/turf" } }, - "../../service/node_modules/cpy-cli": { - "version": "5.0.0", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@turf/line-segment": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/line-segment/-/line-segment-6.5.0.tgz", + "integrity": "sha512-jI625Ho4jSuJESNq66Mmi290ZJ5pPZiQZruPVpmHkUw257Pew0alMmb6YrqYNnLUuiVVONxAAKXUVeeUGtycfw==", "peer": true, "dependencies": { - "cpy": "^10.1.0", - "meow": "^12.0.1" - }, - "bin": { - "cpy": "cli.js" - }, - "engines": { - "node": ">=16" + "@turf/helpers": "^6.5.0", + "@turf/invariant": "^6.5.0", + "@turf/meta": "^6.5.0" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://opencollective.com/turf" } }, - "../../service/node_modules/cpy/node_modules/cp-file": { - "version": "10.0.0", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@turf/meta": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/meta/-/meta-6.5.0.tgz", + "integrity": "sha512-RrArvtsV0vdsCBegoBtOalgdSOfkBrTJ07VkpiCnq/491W67hnMWmDu7e6Ztw0C3WldRYTXkg3SumfdzZxLBHA==", "peer": true, "dependencies": { - "graceful-fs": "^4.2.10", - "nested-error-stacks": "^2.1.1", - "p-event": "^5.0.1" - }, - "engines": { - "node": ">=14.16" + "@turf/helpers": "^6.5.0" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://opencollective.com/turf" } }, - "../../service/node_modules/crc-32": { - "version": "1.2.2", - "license": "Apache-2.0", + "node_modules/@ngageoint/mage.service/node_modules/@turf/point-to-line-distance": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/point-to-line-distance/-/point-to-line-distance-6.5.0.tgz", + "integrity": "sha512-opHVQ4vjUhNBly1bob6RWy+F+hsZDH9SA0UW36pIRzfpu27qipU18xup0XXEePfY6+wvhF6yL/WgCO2IbrLqEA==", "peer": true, - "bin": { - "crc32": "bin/crc32.njs" + "dependencies": { + "@turf/bearing": "^6.5.0", + "@turf/distance": "^6.5.0", + "@turf/helpers": "^6.5.0", + "@turf/invariant": "^6.5.0", + "@turf/meta": "^6.5.0", + "@turf/projection": "^6.5.0", + "@turf/rhumb-bearing": "^6.5.0", + "@turf/rhumb-distance": "^6.5.0" }, - "engines": { - "node": ">=0.8" + "funding": { + "url": "https://opencollective.com/turf" } }, - "../../service/node_modules/crc32-stream": { - "version": "4.0.2", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@turf/polygon-to-line": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/polygon-to-line/-/polygon-to-line-6.5.0.tgz", + "integrity": "sha512-5p4n/ij97EIttAq+ewSnKt0ruvuM+LIDzuczSzuHTpq4oS7Oq8yqg5TQ4nzMVuK41r/tALCk7nAoBuw3Su4Gcw==", "peer": true, "dependencies": { - "crc-32": "^1.2.0", - "readable-stream": "^3.4.0" + "@turf/helpers": "^6.5.0", + "@turf/invariant": "^6.5.0" }, - "engines": { - "node": ">= 10" + "funding": { + "url": "https://opencollective.com/turf" } }, - "../../service/node_modules/crc32-stream/node_modules/readable-stream": { - "version": "3.6.0", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@turf/projection": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/projection/-/projection-6.5.0.tgz", + "integrity": "sha512-/Pgh9mDvQWWu8HRxqpM+tKz8OzgauV+DiOcr3FCjD6ubDnrrmMJlsf6fFJmggw93mtVPrZRL6yyi9aYCQBOIvg==", "peer": true, "dependencies": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" + "@turf/clone": "^6.5.0", + "@turf/helpers": "^6.5.0", + "@turf/meta": "^6.5.0" }, - "engines": { - "node": ">= 6" + "funding": { + "url": "https://opencollective.com/turf" } }, - "../../service/node_modules/crc32-stream/node_modules/string_decoder": { - "version": "1.3.0", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@turf/rhumb-bearing": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/rhumb-bearing/-/rhumb-bearing-6.5.0.tgz", + "integrity": "sha512-jMyqiMRK4hzREjQmnLXmkJ+VTNTx1ii8vuqRwJPcTlKbNWfjDz/5JqJlb5NaFDcdMpftWovkW5GevfnuzHnOYA==", "peer": true, "dependencies": { - "safe-buffer": "~5.2.0" + "@turf/helpers": "^6.5.0", + "@turf/invariant": "^6.5.0" + }, + "funding": { + "url": "https://opencollective.com/turf" } }, - "../../service/node_modules/create-hash": { - "version": "1.2.0", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@turf/rhumb-distance": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/rhumb-distance/-/rhumb-distance-6.5.0.tgz", + "integrity": "sha512-oKp8KFE8E4huC2Z1a1KNcFwjVOqa99isxNOwfo4g3SUABQ6NezjKDDrnvC4yI5YZ3/huDjULLBvhed45xdCrzg==", "peer": true, "dependencies": { - "cipher-base": "^1.0.1", - "inherits": "^2.0.1", - "md5.js": "^1.3.4", - "ripemd160": "^2.0.1", - "sha.js": "^2.4.0" + "@turf/helpers": "^6.5.0", + "@turf/invariant": "^6.5.0" + }, + "funding": { + "url": "https://opencollective.com/turf" } }, - "../../service/node_modules/create-hmac": { - "version": "1.1.7", - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/@types/archiver": { + "version": "5.3.4", + "resolved": "https://registry.npmjs.org/@types/archiver/-/archiver-5.3.4.tgz", + "integrity": "sha512-Lj7fLBIMwYFgViVVZHEdExZC3lVYsl+QL0VmdNdIzGZH544jHveYWij6qdnBgJQDnR7pMKliN9z2cPZFEbhyPw==", + "extraneous": true, "dependencies": { - "cipher-base": "^1.0.3", - "create-hash": "^1.1.0", - "inherits": "^2.0.1", - "ripemd160": "^2.0.0", - "safe-buffer": "^5.0.1", - "sha.js": "^2.4.8" + "@types/readdir-glob": "*" } }, - "../../service/node_modules/cross-spawn": { - "version": "4.0.2", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@types/async": { + "version": "3.2.24", + "resolved": "https://registry.npmjs.org/@types/async/-/async-3.2.24.tgz", + "integrity": "sha512-8iHVLHsCCOBKjCF2KwFe0p9Z3rfM9mL+sSP8btyR5vTjJRAqpBYD28/ZLgXPf0pjG1VxOvtCV/BgXkQbpSe8Hw==", + "extraneous": true, + "license": "MIT" + }, + "node_modules/@ngageoint/mage.service/node_modules/@types/body-parser": { + "version": "1.19.5", + "resolved": "https://registry.npmjs.org/@types/body-parser/-/body-parser-1.19.5.tgz", + "integrity": "sha512-fB3Zu92ucau0iQ0JMCFQE7b/dv8Ot07NI3KaZIkIUNXq82k4eBAqUaneXfleGY9JWskeS9y+u0nXMyspcuQrCg==", "peer": true, "dependencies": { - "lru-cache": "^4.0.1", - "which": "^1.2.9" - } + "@types/connect": "*", + "@types/node": "*" + } }, - "../../service/node_modules/cycle": { - "version": "1.0.3", - "peer": true, - "engines": { - "node": ">=0.4.0" + "node_modules/@ngageoint/mage.service/node_modules/@types/bson": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/@types/bson/-/bson-1.0.11.tgz", + "integrity": "sha512-j+UcCWI+FsbI5/FQP/Kj2CXyplWAz39ktHFkXk84h7dNblKRSoNJs95PZFRd96NQGqsPEPgeclqnznWZr14ZDA==", + "extraneous": true, + "dependencies": { + "@types/node": "*" } }, - "../../service/node_modules/dashdash": { - "version": "1.14.1", + "node_modules/@ngageoint/mage.service/node_modules/@types/busboy": { + "version": "1.5.4", + "resolved": "https://registry.npmjs.org/@types/busboy/-/busboy-1.5.4.tgz", + "integrity": "sha512-kG7WrUuAKK0NoyxfQHsVE6j1m01s6kMma64E+OZenQABMQyTJop1DumUWcLwAQ2JzpefU7PDYoRDKl8uZosFjw==", + "extraneous": true, "license": "MIT", - "peer": true, "dependencies": { - "assert-plus": "^1.0.0" - }, - "engines": { - "node": ">=0.10" + "@types/node": "*" } }, - "../../service/node_modules/dbf": { - "version": "0.1.0", - "license": "BSD-2-Clause", + "node_modules/@ngageoint/mage.service/node_modules/@types/chai": { + "version": "4.3.20", + "resolved": "https://registry.npmjs.org/@types/chai/-/chai-4.3.20.tgz", + "integrity": "sha512-/pC9HAB5I/xMlc5FP77qjCnI16ChlJfW0tGa0IUcFn38VJrTV6DeZ60NU5KZBtaOZqjdpwTWohz5HU1RrhiYxQ==", + "extraneous": true, + "license": "MIT" + }, + "node_modules/@ngageoint/mage.service/node_modules/@types/chai-as-promised": { + "version": "7.1.8", + "resolved": "https://registry.npmjs.org/@types/chai-as-promised/-/chai-as-promised-7.1.8.tgz", + "integrity": "sha512-ThlRVIJhr69FLlh6IctTXFkmhtP3NpMZ2QGq69StYLyKZFp/HOp1VdKZj7RvfNWYYcJ1xlbLGLLWj1UvP5u/Gw==", + "extraneous": true, + "license": "MIT", + "dependencies": { + "@types/chai": "*" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@types/connect": { + "version": "3.4.38", + "resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.38.tgz", + "integrity": "sha512-K6uROf1LD88uDQqJCktA4yzL1YYAK6NgfsI0v/mTgyPKWsX1CnJ0XPSDhViejru1GcRkLWb8RlzFYJRqGUbaug==", "peer": true, "dependencies": { - "jdataview": "~2.4.4" + "@types/node": "*" } }, - "../../service/node_modules/debug": { - "version": "2.6.9", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@types/cookiejar": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@types/cookiejar/-/cookiejar-2.1.5.tgz", + "integrity": "sha512-he+DHOWReW0nghN24E1WUqM0efK4kI9oTqDm6XmK8ZPe2djZ90BSNdGnIyCLzCPw7/pogPlGbzI2wHGGmi4O/Q==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/@types/debug": { + "version": "4.1.12", + "resolved": "https://registry.npmjs.org/@types/debug/-/debug-4.1.12.tgz", + "integrity": "sha512-vIChWdVG3LG1SMxEvI/AK+FWJthlrqlTu7fbrlywTkkaONwk/UAGaULXRlf8vkzFBLVm0zkMdCquhL5aOjhXPQ==", "peer": true, "dependencies": { - "ms": "2.0.0" + "@types/ms": "*" } }, - "../../service/node_modules/decamelize": { - "version": "1.2.0", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/@types/deep-equal": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/@types/deep-equal/-/deep-equal-1.0.4.tgz", + "integrity": "sha512-tqdiS4otQP4KmY0PR3u6KbZ5EWvhNdUoS/jc93UuK23C220lOZ/9TvjfxdPcKvqwwDVtmtSCrnr0p/2dirAxkA==", + "extraneous": true, + "license": "MIT" + }, + "node_modules/@ngageoint/mage.service/node_modules/@types/express": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/@types/express/-/express-4.17.21.tgz", + "integrity": "sha512-ejlPM315qwLpaQlQDTjPdsUFSc6ZsP4AN6AlWnogPjQ7CVi7PYF3YVz+CY3jE2pwYf7E/7HlDAN0rV2GxTG0HQ==", "license": "MIT", "peer": true, - "engines": { - "node": ">=0.10.0" + "dependencies": { + "@types/body-parser": "*", + "@types/express-serve-static-core": "^4.17.33", + "@types/qs": "*", + "@types/serve-static": "*" } }, - "../../service/node_modules/decompress-response": { - "version": "6.0.0", + "node_modules/@ngageoint/mage.service/node_modules/@types/express-serve-static-core": { + "version": "4.19.6", + "resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.19.6.tgz", + "integrity": "sha512-N4LZ2xG7DatVqhCZzOGb1Yi5lMbXSZcmdLDe9EzSndPV2HpWYWzRbaerl2n27irrm94EPpprqa8KpskPT085+A==", "license": "MIT", "peer": true, "dependencies": { - "mimic-response": "^3.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "@types/node": "*", + "@types/qs": "*", + "@types/range-parser": "*", + "@types/send": "*" } }, - "../../service/node_modules/deep-equal": { - "version": "2.0.5", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/@types/fs-extra": { + "version": "8.1.5", + "resolved": "https://registry.npmjs.org/@types/fs-extra/-/fs-extra-8.1.5.tgz", + "integrity": "sha512-0dzKcwO+S8s2kuF5Z9oUWatQJj5Uq/iqphEtE3GQJVRRYm/tD1LglU2UnXi2A8jLq5umkGouOXOR9y0n613ZwQ==", + "extraneous": true, "license": "MIT", - "peer": true, "dependencies": { - "call-bind": "^1.0.0", - "es-get-iterator": "^1.1.1", - "get-intrinsic": "^1.0.1", - "is-arguments": "^1.0.4", - "is-date-object": "^1.0.2", - "is-regex": "^1.1.1", - "isarray": "^2.0.5", - "object-is": "^1.1.4", - "object-keys": "^1.1.1", - "object.assign": "^4.1.2", - "regexp.prototype.flags": "^1.3.0", - "side-channel": "^1.0.3", - "which-boxed-primitive": "^1.0.1", - "which-collection": "^1.0.1", - "which-typed-array": "^1.1.2" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "@types/node": "*" } }, - "../../service/node_modules/deep-equal/node_modules/isarray": { - "version": "2.0.5", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/@types/geojson": { + "version": "7946.0.16", + "resolved": "https://registry.npmjs.org/@types/geojson/-/geojson-7946.0.16.tgz", + "integrity": "sha512-6C8nqWur3j98U6+lXDfTUWIfgvZU+EumvpHKcYjujKH7woYyLj2sUmff0tRhrqM7BohUw7Pz3ZB1jj2gW9Fvmg==", "license": "MIT", "peer": true }, - "../../service/node_modules/deep-extend": { - "version": "0.6.0", - "license": "MIT", - "peer": true, - "engines": { - "node": ">=4.0.0" - } + "node_modules/@ngageoint/mage.service/node_modules/@types/http-errors": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/@types/http-errors/-/http-errors-2.0.4.tgz", + "integrity": "sha512-D0CFMMtydbJAegzOyHjtiKPLlvnm3iTZyZRSZoLq2mRhDdmLfIWOCYPfQJ4cu2erKghU++QvjcUjp/5h7hESpA==", + "peer": true }, - "../../service/node_modules/deep-is": { - "version": "0.1.4", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/@types/json-schema": { + "version": "7.0.15", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.15.tgz", + "integrity": "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==", "license": "MIT", "peer": true }, - "../../service/node_modules/default-require-extensions": { - "version": "2.0.0", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/@types/json2csv": { + "version": "4.5.1", + "resolved": "https://registry.npmjs.org/@types/json2csv/-/json2csv-4.5.1.tgz", + "integrity": "sha512-sZbRdrTddxYzhydkC5eMEbRXU8pjcV8Zyxf2If7YO3GVxWY18fs0P5YJyjRfkMKTAsA8ynTRQWhvWbHhBzBFVA==", + "extraneous": true, "license": "MIT", - "peer": true, "dependencies": { - "strip-bom": "^3.0.0" - }, - "engines": { - "node": ">=4" + "@types/node": "*" } }, - "../../service/node_modules/define-properties": { - "version": "1.1.3", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@types/ldapjs": { + "version": "2.2.5", + "resolved": "https://registry.npmjs.org/@types/ldapjs/-/ldapjs-2.2.5.tgz", + "integrity": "sha512-Lv/nD6QDCmcT+V1vaTRnEKE8UgOilVv5pHcQuzkU1LcRe4mbHHuUo/KHi0LKrpdHhQY8FJzryF38fcVdeUIrzg==", "peer": true, "dependencies": { - "object-keys": "^1.0.12" - }, - "engines": { - "node": ">= 0.4" + "@types/node": "*" } }, - "../../service/node_modules/delayed-stream": { - "version": "1.0.0", - "license": "MIT", - "peer": true, - "engines": { - "node": ">=0.4.0" - } + "node_modules/@ngageoint/mage.service/node_modules/@types/lodash": { + "version": "4.17.16", + "resolved": "https://registry.npmjs.org/@types/lodash/-/lodash-4.17.16.tgz", + "integrity": "sha512-HX7Em5NYQAXKW+1T+FiuG27NGwzJfCX3s1GjOa7ujxZa52kjJLOr4FUxT+giF6Tgxv1e+/czV/iTtBw27WTU9g==", + "extraneous": true, + "license": "MIT" }, - "../../service/node_modules/delegates": { - "version": "1.0.0", - "license": "MIT", - "optional": true, - "peer": true + "node_modules/@ngageoint/mage.service/node_modules/@types/methods": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/@types/methods/-/methods-1.1.4.tgz", + "integrity": "sha512-ymXWVrDiCxTBE3+RIrrP533E70eA+9qu7zdWoHuOmGujkYtzf4HQF96b8nwHLqhuf4ykX61IGRIB38CC6/sImQ==", + "extraneous": true }, - "../../service/node_modules/denque": { - "version": "2.0.1", - "dev": true, - "license": "Apache-2.0", - "peer": true, - "engines": { - "node": ">=0.10" - } + "node_modules/@ngageoint/mage.service/node_modules/@types/mime": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/@types/mime/-/mime-1.3.5.tgz", + "integrity": "sha512-/pyBZWSLD2n0dcHE3hq8s8ZvcETHtEuF+3E7XVt0Ig2nvsVQXdghHVcEkIWjy9A0wKfTn97a/PSDYohKIlnP/w==", + "peer": true }, - "../../service/node_modules/depd": { - "version": "1.1.2", + "node_modules/@ngageoint/mage.service/node_modules/@types/mime-types": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/@types/mime-types/-/mime-types-2.1.4.tgz", + "integrity": "sha512-lfU4b34HOri+kAY5UheuFMWPDOI+OPceBSHZKp69gEyTL/mmJ4cnU6Y/rlme3UL3GyOn6Y42hyIEw0/q8sWx5w==", "license": "MIT", - "peer": true, - "engines": { - "node": ">= 0.6" - } + "peer": true }, - "../../service/node_modules/destroy": { - "version": "1.2.0", - "license": "MIT", - "peer": true, - "engines": { - "node": ">= 0.8", - "npm": "1.2.8000 || >= 1.4.16" - } + "node_modules/@ngageoint/mage.service/node_modules/@types/mocha": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-7.0.2.tgz", + "integrity": "sha512-ZvO2tAcjmMi8V/5Z3JsyofMe3hasRcaw88cto5etSVMwVQfeivGAlEYmaQgceUSVYFofVjT+ioHsATjdWcFt1w==", + "extraneous": true }, - "../../service/node_modules/detect-libc": { - "version": "2.0.2", - "license": "Apache-2.0", - "peer": true, - "engines": { - "node": ">=8" - } + "node_modules/@ngageoint/mage.service/node_modules/@types/ms": { + "version": "0.7.34", + "resolved": "https://registry.npmjs.org/@types/ms/-/ms-0.7.34.tgz", + "integrity": "sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==", + "peer": true }, - "../../service/node_modules/dezalgo": { - "version": "1.0.3", - "license": "ISC", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/@types/multer": { + "version": "1.4.12", + "resolved": "https://registry.npmjs.org/@types/multer/-/multer-1.4.12.tgz", + "integrity": "sha512-pQ2hoqvXiJt2FP9WQVLPRO+AmiIm/ZYkavPlIQnx282u4ZrVdztx0pkh3jjpQt0Kz+YI0YhSG264y08UJKoUQg==", + "extraneous": true, + "license": "MIT", "dependencies": { - "asap": "^2.0.0", - "wrappy": "1" + "@types/express": "*" } }, - "../../service/node_modules/diff": { - "version": "3.5.0", - "dev": true, - "license": "BSD-3-Clause", + "node_modules/@ngageoint/mage.service/node_modules/@types/node": { + "version": "18.19.80", + "resolved": "https://registry.npmjs.org/@types/node/-/node-18.19.80.tgz", + "integrity": "sha512-kEWeMwMeIvxYkeg1gTc01awpwLbfMRZXdIhwRcakd/KlK53jmRC26LqcbIt7fnAQTu5GzlnWmzA3H6+l1u6xxQ==", + "license": "MIT", "peer": true, - "engines": { - "node": ">=0.3.1" + "dependencies": { + "undici-types": "~5.26.4" } }, - "../../service/node_modules/dir-glob": { - "version": "3.0.1", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/@types/node-fetch": { + "version": "2.6.12", + "resolved": "https://registry.npmjs.org/@types/node-fetch/-/node-fetch-2.6.12.tgz", + "integrity": "sha512-8nneRWKCg3rMtF69nLQJnOYUcbafYeFSjqkw3jCRLsqkWFlHaoQrr5mXmofFGOx3DKn7UfmBMyov8ySvLRVldA==", + "extraneous": true, "license": "MIT", - "peer": true, "dependencies": { - "path-type": "^4.0.0" - }, - "engines": { - "node": ">=8" + "@types/node": "*", + "form-data": "^4.0.0" } }, - "../../service/node_modules/dir-glob/node_modules/path-type": { - "version": "4.0.0", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/@types/passport": { + "version": "1.0.17", + "resolved": "https://registry.npmjs.org/@types/passport/-/passport-1.0.17.tgz", + "integrity": "sha512-aciLyx+wDwT2t2/kJGJR2AEeBz0nJU4WuRX04Wu9Dqc5lSUtwu0WERPHYsLhF9PtseiAMPBGNUOtFjxZ56prsg==", "license": "MIT", "peer": true, - "engines": { - "node": ">=8" + "dependencies": { + "@types/express": "*" } }, - "../../service/node_modules/doctrine": { - "version": "3.0.0", - "dev": true, - "license": "Apache-2.0", + "node_modules/@ngageoint/mage.service/node_modules/@types/passport-strategy": { + "version": "0.2.38", + "resolved": "https://registry.npmjs.org/@types/passport-strategy/-/passport-strategy-0.2.38.tgz", + "integrity": "sha512-GC6eMqqojOooq993Tmnmp7AUTbbQSgilyvpCYQjT+H6JfG/g6RGc7nXEniZlp0zyKJ0WUdOiZWLBZft9Yug1uA==", "peer": true, "dependencies": { - "esutils": "^2.0.2" - }, - "engines": { - "node": ">=6.0.0" + "@types/express": "*", + "@types/passport": "*" } }, - "../../service/node_modules/doctypes": { - "version": "1.1.0", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@types/proj4": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/@types/proj4/-/proj4-2.5.2.tgz", + "integrity": "sha512-/Nmfn9p08yaYw6xo5f2b0L+2oHk2kZeOkp5v+4VCeNfq+ETlLQbmHmC97/pjDIEZy8jxwz7pdPpwNzDHM5cuJw==", "peer": true }, - "../../service/node_modules/drange": { - "version": "1.1.1", - "dev": true, - "license": "MIT", - "peer": true, - "engines": { - "node": ">=4" - } + "node_modules/@ngageoint/mage.service/node_modules/@types/qs": { + "version": "6.9.15", + "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.15.tgz", + "integrity": "sha512-uXHQKES6DQKKCLh441Xv/dwxOq1TVS3JPUMlEqoEglvlhR6Mxnlew/Xq/LRVHpLyk7iK3zODe1qYHIMltO7XGg==", + "peer": true }, - "../../service/node_modules/dtrace-provider": { - "version": "0.8.8", - "hasInstallScript": true, - "license": "BSD-2-Clause", - "optional": true, - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/@types/range-parser": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/@types/range-parser/-/range-parser-1.2.7.tgz", + "integrity": "sha512-hKormJbkJqzQGhziax5PItDUTMAM9uE2XXQmM37dyd4hVM+5aVl7oVxMVUiVQn2oCQFN/LKCZdvSM0pFRqbSmQ==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/@types/readdir-glob": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/@types/readdir-glob/-/readdir-glob-1.1.5.tgz", + "integrity": "sha512-raiuEPUYqXu+nvtY2Pe8s8FEmZ3x5yAH4VkLdihcPdalvsHltomrRC9BzuStrJ9yk06470hS0Crw0f1pXqD+Hg==", + "extraneous": true, "dependencies": { - "nan": "^2.14.0" - }, - "engines": { - "node": ">=0.10" + "@types/node": "*" } }, - "../../service/node_modules/duplexer": { - "version": "0.1.2", - "license": "MIT", - "peer": true + "node_modules/@ngageoint/mage.service/node_modules/@types/semver": { + "version": "7.5.8", + "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.5.8.tgz", + "integrity": "sha512-I8EUhyrgfLrcTkzV3TSsGyl1tSuPrEDzr0yd5m90UgNxQkyDXULk3b6MlQqTCpZpNtWe1K0hzclnZkTcLBe2UQ==", + "extraneous": true, + "license": "MIT" }, - "../../service/node_modules/ecc-jsbn": { - "version": "0.1.2", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@types/send": { + "version": "0.17.4", + "resolved": "https://registry.npmjs.org/@types/send/-/send-0.17.4.tgz", + "integrity": "sha512-x2EM6TJOybec7c52BX0ZspPodMsQUd5L6PRwOunVyVUhXiBSKf3AezDL8Dgvgt5o0UfKNfuA0eMLr2wLT4AiBA==", "peer": true, "dependencies": { - "jsbn": "~0.1.0", - "safer-buffer": "^2.1.0" + "@types/mime": "^1", + "@types/node": "*" } }, - "../../service/node_modules/ecdsa-sig-formatter": { - "version": "1.0.11", - "license": "Apache-2.0", + "node_modules/@ngageoint/mage.service/node_modules/@types/serve-static": { + "version": "1.15.7", + "resolved": "https://registry.npmjs.org/@types/serve-static/-/serve-static-1.15.7.tgz", + "integrity": "sha512-W8Ym+h8nhuRwaKPaDw34QUkwsGi6Rc4yYqvKFo5rm2FUEhCFbzVWrxXUxuKK8TASjWsysJY0nsmNCGhCOIsrOw==", "peer": true, "dependencies": { - "safe-buffer": "^5.0.1" + "@types/http-errors": "*", + "@types/node": "*", + "@types/send": "*" } }, - "../../service/node_modules/ee-first": { - "version": "1.1.1", - "license": "MIT", - "peer": true - }, - "../../service/node_modules/elliptic": { - "version": "6.5.4", + "node_modules/@ngageoint/mage.service/node_modules/@types/sinon": { + "version": "9.0.11", + "resolved": "https://registry.npmjs.org/@types/sinon/-/sinon-9.0.11.tgz", + "integrity": "sha512-PwP4UY33SeeVKodNE37ZlOsR9cReypbMJOhZ7BVE0lB+Hix3efCOxiJWiE5Ia+yL9Cn2Ch72EjFTRze8RZsNtg==", + "extraneous": true, "license": "MIT", - "peer": true, "dependencies": { - "bn.js": "^4.11.9", - "brorand": "^1.1.0", - "hash.js": "^1.0.0", - "hmac-drbg": "^1.0.1", - "inherits": "^2.0.4", - "minimalistic-assert": "^1.0.1", - "minimalistic-crypto-utils": "^1.0.1" + "@types/sinonjs__fake-timers": "*" } }, - "../../service/node_modules/elliptic/node_modules/bn.js": { - "version": "4.12.0", + "node_modules/@ngageoint/mage.service/node_modules/@types/sinon-chai": { + "version": "3.2.12", + "resolved": "https://registry.npmjs.org/@types/sinon-chai/-/sinon-chai-3.2.12.tgz", + "integrity": "sha512-9y0Gflk3b0+NhQZ/oxGtaAJDvRywCa5sIyaVnounqLvmf93yBF4EgIRspePtkMs3Tr844nCclYMlcCNmLCvjuQ==", + "extraneous": true, "license": "MIT", - "peer": true + "dependencies": { + "@types/chai": "*", + "@types/sinon": "*" + } }, - "../../service/node_modules/emoji-regex": { - "version": "8.0.0", - "devOptional": true, - "license": "MIT", - "peer": true + "node_modules/@ngageoint/mage.service/node_modules/@types/sinonjs__fake-timers": { + "version": "8.1.5", + "resolved": "https://registry.npmjs.org/@types/sinonjs__fake-timers/-/sinonjs__fake-timers-8.1.5.tgz", + "integrity": "sha512-mQkU2jY8jJEF7YHjHvsQO8+3ughTL1mcnn96igfhONmR+fUPSKIkefQYpSe8bsly2Ep7oQbn/6VG5/9/0qcArQ==", + "extraneous": true }, - "../../service/node_modules/encodeurl": { - "version": "1.0.2", + "node_modules/@ngageoint/mage.service/node_modules/@types/superagent": { + "version": "8.1.9", + "resolved": "https://registry.npmjs.org/@types/superagent/-/superagent-8.1.9.tgz", + "integrity": "sha512-pTVjI73witn+9ILmoJdajHGW2jkSaOzhiFYF1Rd3EQ94kymLqB9PjD9ISg7WaALC7+dCHT0FGe9T2LktLq/3GQ==", + "extraneous": true, "license": "MIT", - "peer": true, - "engines": { - "node": ">= 0.8" + "dependencies": { + "@types/cookiejar": "^2.1.5", + "@types/methods": "^1.1.4", + "@types/node": "*", + "form-data": "^4.0.0" } }, - "../../service/node_modules/end-of-stream": { - "version": "1.4.4", - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/@types/supertest": { + "version": "2.0.16", + "resolved": "https://registry.npmjs.org/@types/supertest/-/supertest-2.0.16.tgz", + "integrity": "sha512-6c2ogktZ06tr2ENoZivgm7YnprnhYE4ZoXGMY+oA7IuAf17M8FWvujXZGmxLv8y0PTyts4x5A+erSwVUFA8XSg==", + "extraneous": true, "dependencies": { - "once": "^1.4.0" + "@types/superagent": "*" } }, - "../../service/node_modules/error-ex": { - "version": "1.3.2", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@types/uniqid": { + "version": "5.3.4", + "resolved": "https://registry.npmjs.org/@types/uniqid/-/uniqid-5.3.4.tgz", + "integrity": "sha512-AgC+o3/8/QEHuU3w5w2jZ8auQtjSJ/s8G8RfEk9CYLogK1RGXqxhHH0wOEAu8uHXjvj8oh/dRtfgok4IHKxh/Q==", + "extraneous": true, + "license": "MIT" + }, + "node_modules/@ngageoint/mage.service/node_modules/@types/webidl-conversions": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/@types/webidl-conversions/-/webidl-conversions-7.0.3.tgz", + "integrity": "sha512-CiJJvcRtIgzadHCYXw7dqEnMNRjhGZlYK05Mj9OyktqV8uVT8fD2BFOB7S1uwBE3Kj2Z+4UyPmFw/Ixgw/LAlA==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/@types/whatwg-url": { + "version": "8.2.2", + "resolved": "https://registry.npmjs.org/@types/whatwg-url/-/whatwg-url-8.2.2.tgz", + "integrity": "sha512-FtQu10RWgn3D9U4aazdwIE2yzphmTJREDqNdODHrbrZmmMqI0vMheC/6NE/J1Yveaj8H+ela+YwWTjq5PGmuhA==", "peer": true, "dependencies": { - "is-arrayish": "^0.2.1" + "@types/node": "*", + "@types/webidl-conversions": "*" } }, - "../../service/node_modules/es-abstract": { - "version": "1.19.4", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@types/xml-crypto": { + "version": "1.4.6", + "resolved": "https://registry.npmjs.org/@types/xml-crypto/-/xml-crypto-1.4.6.tgz", + "integrity": "sha512-A6jEW2FxLZo1CXsRWnZHUX2wzR3uDju2Bozt6rDbSmU/W8gkilaVbwFEVN0/NhnUdMVzwYobWtM6bU1QJJFb7Q==", "peer": true, "dependencies": { - "call-bind": "^1.0.2", - "es-to-primitive": "^1.2.1", - "function-bind": "^1.1.1", - "get-intrinsic": "^1.1.1", - "get-symbol-description": "^1.0.0", - "has": "^1.0.3", - "has-symbols": "^1.0.3", - "internal-slot": "^1.0.3", - "is-callable": "^1.2.4", - "is-negative-zero": "^2.0.2", - "is-regex": "^1.1.4", - "is-shared-array-buffer": "^1.0.2", - "is-string": "^1.0.7", - "is-weakref": "^1.0.2", - "object-inspect": "^1.12.0", - "object-keys": "^1.1.1", - "object.assign": "^4.1.2", - "string.prototype.trimend": "^1.0.4", - "string.prototype.trimstart": "^1.0.4", - "unbox-primitive": "^1.0.1" - }, + "@types/node": "*", + "xpath": "0.0.27" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@types/xml-crypto/node_modules/xpath": { + "version": "0.0.27", + "resolved": "https://registry.npmjs.org/xpath/-/xpath-0.0.27.tgz", + "integrity": "sha512-fg03WRxtkCV6ohClePNAECYsmpKKTv5L8y/X3Dn1hQrec3POx2jHZ/0P2qQ6HvsrU1BmeqXcof3NGGueG6LxwQ==", + "peer": true, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=0.6.0" } }, - "../../service/node_modules/es-get-iterator": { - "version": "1.1.2", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/@types/xml-encryption": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/@types/xml-encryption/-/xml-encryption-1.2.4.tgz", + "integrity": "sha512-I69K/WW1Dv7j6O3jh13z0X8sLWJRXbu5xnHDl9yHzUNDUBtUoBY058eb5s+x/WG6yZC1h8aKdI2EoyEPjyEh+Q==", "peer": true, "dependencies": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.1.0", - "has-symbols": "^1.0.1", - "is-arguments": "^1.1.0", - "is-map": "^2.0.2", - "is-set": "^2.0.2", - "is-string": "^1.0.5", - "isarray": "^2.0.5" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "@types/node": "*" } }, - "../../service/node_modules/es-get-iterator/node_modules/isarray": { - "version": "2.0.5", - "dev": true, - "license": "MIT", - "peer": true + "node_modules/@ngageoint/mage.service/node_modules/@types/xml2js": { + "version": "0.4.14", + "resolved": "https://registry.npmjs.org/@types/xml2js/-/xml2js-0.4.14.tgz", + "integrity": "sha512-4YnrRemBShWRO2QjvUin8ESA41rH+9nQGLUGZV/1IDhi3SL9OhdpNC/MrulTWuptXKwhx/aDxE7toV0f/ypIXQ==", + "peer": true, + "dependencies": { + "@types/node": "*" + } }, - "../../service/node_modules/es-to-primitive": { - "version": "1.2.1", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/@typescript-eslint/eslint-plugin": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-6.21.0.tgz", + "integrity": "sha512-oy9+hTPCUFpngkEZUSzbf9MxI65wbKFoQYsgPdILTfbUldp5ovUuphZVe4i30emU9M/kP+T64Di0mxl7dSw3MA==", + "extraneous": true, "license": "MIT", - "peer": true, "dependencies": { - "is-callable": "^1.1.4", - "is-date-object": "^1.0.1", - "is-symbol": "^1.0.2" + "@eslint-community/regexpp": "^4.5.1", + "@typescript-eslint/scope-manager": "6.21.0", + "@typescript-eslint/type-utils": "6.21.0", + "@typescript-eslint/utils": "6.21.0", + "@typescript-eslint/visitor-keys": "6.21.0", + "debug": "^4.3.4", + "graphemer": "^1.4.0", + "ignore": "^5.2.4", + "natural-compare": "^1.4.0", + "semver": "^7.5.4", + "ts-api-utils": "^1.0.1" }, "engines": { - "node": ">= 0.4" + "node": "^16.0.0 || >=18.0.0" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "@typescript-eslint/parser": "^6.0.0 || ^6.0.0-alpha", + "eslint": "^7.0.0 || ^8.0.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } } }, - "../../service/node_modules/es6-error": { - "version": "4.1.1", - "dev": true, - "license": "MIT", - "peer": true - }, - "../../service/node_modules/es6-object-assign": { - "version": "1.1.0", - "dev": true, - "license": "MIT", - "peer": true - }, - "../../service/node_modules/es6-promise": { - "version": "3.2.1", - "license": "MIT", - "peer": true - }, - "../../service/node_modules/escape-html": { - "version": "1.0.3", - "license": "MIT", - "peer": true - }, - "../../service/node_modules/escape-string-regexp": { - "version": "1.0.5", - "devOptional": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/@typescript-eslint/parser": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-6.21.0.tgz", + "integrity": "sha512-tbsV1jPne5CkFQCgPBcDOt30ItF7aJoZL997JSF7MhGQqOeT3svWRYxiqlfA5RUdlHN6Fi+EI9bxqbdyAUZjYQ==", + "extraneous": true, + "license": "BSD-2-Clause", + "dependencies": { + "@typescript-eslint/scope-manager": "6.21.0", + "@typescript-eslint/types": "6.21.0", + "@typescript-eslint/typescript-estree": "6.21.0", + "@typescript-eslint/visitor-keys": "6.21.0", + "debug": "^4.3.4" + }, "engines": { - "node": ">=0.8.0" + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^7.0.0 || ^8.0.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } } }, - "../../service/node_modules/eslint": { - "version": "6.8.0", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/@typescript-eslint/scope-manager": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-6.21.0.tgz", + "integrity": "sha512-OwLUIWZJry80O99zvqXVEioyniJMa+d2GrqpUTqi5/v5D5rOrppJVBPa0yKCblcigC0/aYAzxxqQ1B+DS2RYsg==", + "extraneous": true, "license": "MIT", - "peer": true, "dependencies": { - "@babel/code-frame": "^7.0.0", - "ajv": "^6.10.0", - "chalk": "^2.1.0", - "cross-spawn": "^6.0.5", - "debug": "^4.0.1", - "doctrine": "^3.0.0", - "eslint-scope": "^5.0.0", - "eslint-utils": "^1.4.3", - "eslint-visitor-keys": "^1.1.0", - "espree": "^6.1.2", - "esquery": "^1.0.1", - "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.3.0", - "lodash": "^4.17.14", - "minimatch": "^3.0.4", - "mkdirp": "^0.5.1", - "natural-compare": "^1.4.0", - "optionator": "^0.8.3", - "progress": "^2.0.0", - "regexpp": "^2.0.1", - "semver": "^6.1.2", - "strip-ansi": "^5.2.0", - "strip-json-comments": "^3.0.1", - "table": "^5.2.3", - "text-table": "^0.2.0", - "v8-compile-cache": "^2.0.3" - }, - "bin": { - "eslint": "bin/eslint.js" + "@typescript-eslint/types": "6.21.0", + "@typescript-eslint/visitor-keys": "6.21.0" }, "engines": { - "node": "^8.10.0 || ^10.13.0 || >=11.10.1" + "node": "^16.0.0 || >=18.0.0" }, "funding": { - "url": "https://opencollective.com/eslint" + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" } }, - "../../service/node_modules/eslint-config-prettier": { - "version": "6.15.0", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/@typescript-eslint/type-utils": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-6.21.0.tgz", + "integrity": "sha512-rZQI7wHfao8qMX3Rd3xqeYSMCL3SoiSQLBATSiVKARdFGCYSRvmViieZjqc58jKgs8Y8i9YvVVhRbHSTA4VBag==", + "extraneous": true, "license": "MIT", - "peer": true, "dependencies": { - "get-stdin": "^6.0.0" + "@typescript-eslint/typescript-estree": "6.21.0", + "@typescript-eslint/utils": "6.21.0", + "debug": "^4.3.4", + "ts-api-utils": "^1.0.1" }, - "bin": { - "eslint-config-prettier-check": "bin/cli.js" + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" }, "peerDependencies": { - "eslint": ">=3.14.1" + "eslint": "^7.0.0 || ^8.0.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } } }, - "../../service/node_modules/eslint-plugin-prettier": { - "version": "3.4.1", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/@typescript-eslint/types": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-6.21.0.tgz", + "integrity": "sha512-1kFmZ1rOm5epu9NZEZm1kckCDGj5UJEf7P1kliH4LKu/RkwpsfqqGmY2OOcUs18lSlQBKLDYBOGxRVtrMN5lpg==", + "extraneous": true, "license": "MIT", - "peer": true, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@typescript-eslint/typescript-estree": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-6.21.0.tgz", + "integrity": "sha512-6npJTkZcO+y2/kr+z0hc4HwNfrrP4kNYh57ek7yCNlrBjWQ1Y0OS7jiZTkgumrvkX5HkEKXFZkkdFNkaW2wmUQ==", + "extraneous": true, + "license": "BSD-2-Clause", "dependencies": { - "prettier-linter-helpers": "^1.0.0" + "@typescript-eslint/types": "6.21.0", + "@typescript-eslint/visitor-keys": "6.21.0", + "debug": "^4.3.4", + "globby": "^11.1.0", + "is-glob": "^4.0.3", + "minimatch": "9.0.3", + "semver": "^7.5.4", + "ts-api-utils": "^1.0.1" }, "engines": { - "node": ">=6.0.0" + "node": "^16.0.0 || >=18.0.0" }, - "peerDependencies": { - "eslint": ">=5.0.0", - "prettier": ">=1.13.0" + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" }, "peerDependenciesMeta": { - "eslint-config-prettier": { + "typescript": { "optional": true } } }, - "../../service/node_modules/eslint-scope": { - "version": "5.1.1", - "dev": true, - "license": "BSD-2-Clause", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/@typescript-eslint/utils": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-6.21.0.tgz", + "integrity": "sha512-NfWVaC8HP9T8cbKQxHcsJBY5YE1O33+jpMwN45qzWWaPDZgLIbo12toGMWnmhvCpd3sIxkpDw3Wv1B3dYrbDQQ==", + "extraneous": true, + "license": "MIT", "dependencies": { - "esrecurse": "^4.3.0", - "estraverse": "^4.1.1" + "@eslint-community/eslint-utils": "^4.4.0", + "@types/json-schema": "^7.0.12", + "@types/semver": "^7.5.0", + "@typescript-eslint/scope-manager": "6.21.0", + "@typescript-eslint/types": "6.21.0", + "@typescript-eslint/typescript-estree": "6.21.0", + "semver": "^7.5.4" }, "engines": { - "node": ">=8.0.0" + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^7.0.0 || ^8.0.0" } }, - "../../service/node_modules/eslint-utils": { - "version": "1.4.3", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/@typescript-eslint/visitor-keys": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-6.21.0.tgz", + "integrity": "sha512-JJtkDduxLi9bivAB+cYOVMtbkqdPOhZ+ZI5LC47MIRrDV4Yn2o+ZnW10Nkmr28xRpSpdJ6Sm42Hjf2+REYXm0A==", + "extraneous": true, "license": "MIT", - "peer": true, "dependencies": { - "eslint-visitor-keys": "^1.1.0" + "@typescript-eslint/types": "6.21.0", + "eslint-visitor-keys": "^3.4.1" }, "engines": { - "node": ">=6" + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" } }, - "../../service/node_modules/eslint-visitor-keys": { + "node_modules/@ngageoint/mage.service/node_modules/@ungap/structured-clone": { "version": "1.3.0", - "dev": true, - "license": "Apache-2.0", - "peer": true, - "engines": { - "node": ">=4" - } + "resolved": "https://registry.npmjs.org/@ungap/structured-clone/-/structured-clone-1.3.0.tgz", + "integrity": "sha512-WmoN8qaIAo7WTYWbAZuG8PYEhn5fkz7dZrqTBZ7dtt//lL2Gwms1IcnQ5yHqjDfX8Ft5j4YzDM23f87zBfDe9g==", + "extraneous": true, + "license": "ISC" }, - "../../service/node_modules/eslint/node_modules/ansi-regex": { - "version": "5.0.1", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/@xmldom/xmldom": { + "version": "0.9.8", + "resolved": "https://registry.npmjs.org/@xmldom/xmldom/-/xmldom-0.9.8.tgz", + "integrity": "sha512-p96FSY54r+WJ50FIOsCOjyj/wavs8921hG5+kVMmZgKcvIKxMXHTrjNJvRgWa/zuX3B6t2lijLNFaOyuxUH+2A==", "license": "MIT", "peer": true, "engines": { - "node": ">=8" + "node": ">=14.6" } }, - "../../service/node_modules/eslint/node_modules/ansi-styles": { - "version": "3.2.1", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/abstract-logging": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/abstract-logging/-/abstract-logging-2.0.1.tgz", + "integrity": "sha512-2BjRTZxTPvheOvGbBslFSYOUkr+SjPtOnrLP33f+VIWLzezQpZcqVg7ja3L4dBXmzzgwT+a029jRx5PCi3JuiA==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/accepts": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz", + "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==", "peer": true, "dependencies": { - "color-convert": "^1.9.0" + "mime-types": "~2.1.34", + "negotiator": "0.6.3" }, "engines": { - "node": ">=4" + "node": ">= 0.6" } }, - "../../service/node_modules/eslint/node_modules/chalk": { - "version": "2.4.2", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" + "node_modules/@ngageoint/mage.service/node_modules/acorn": { + "version": "8.12.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.12.0.tgz", + "integrity": "sha512-RTvkC4w+KNXrM39/lWCUaG0IbRkWdCv7W/IOW9oU6SawyxulvkQy5HQPVTKxEjczcUvapcrw3cFx/60VN/NRNw==", + "extraneous": true, + "bin": { + "acorn": "bin/acorn" }, "engines": { - "node": ">=4" + "node": ">=0.4.0" } }, - "../../service/node_modules/eslint/node_modules/color-convert": { - "version": "1.9.3", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "color-name": "1.1.3" + "node_modules/@ngageoint/mage.service/node_modules/acorn-jsx": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", + "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", + "extraneous": true, + "peerDependencies": { + "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" } }, - "../../service/node_modules/eslint/node_modules/color-name": { - "version": "1.1.3", - "dev": true, - "license": "MIT", - "peer": true - }, - "../../service/node_modules/eslint/node_modules/cross-spawn": { - "version": "6.0.5", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/adm-zip": { + "version": "0.5.16", + "resolved": "https://registry.npmjs.org/adm-zip/-/adm-zip-0.5.16.tgz", + "integrity": "sha512-TGw5yVi4saajsSEgz25grObGHEUaDrniwvA2qwSC060KfqGPdglhvPMA2lPIoxs3PQIItj2iag35fONcQqgUaQ==", "license": "MIT", "peer": true, - "dependencies": { - "nice-try": "^1.0.4", - "path-key": "^2.0.1", - "semver": "^5.5.0", - "shebang-command": "^1.2.0", - "which": "^1.2.9" - }, "engines": { - "node": ">=4.8" + "node": ">=12.0" } }, - "../../service/node_modules/eslint/node_modules/cross-spawn/node_modules/semver": { - "version": "5.7.1", - "dev": true, - "license": "ISC", - "peer": true, - "bin": { - "semver": "bin/semver" + "node_modules/@ngageoint/mage.service/node_modules/agent-base": { + "version": "7.1.3", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.3.tgz", + "integrity": "sha512-jRR5wdylq8CkOe6hei19GGZnxM6rBGwFl3Bg0YItGDimvjGtAvdZk4Pu6Cl4u4Igsws4a1fd1Vq3ezrhn4KmFw==", + "extraneous": true, + "license": "MIT", + "engines": { + "node": ">= 14" } }, - "../../service/node_modules/eslint/node_modules/debug": { - "version": "4.3.4", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/aggregate-error": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-4.0.1.tgz", + "integrity": "sha512-0poP0T7el6Vq3rstR8Mn4V/IQrpBLO6POkUSrN7RhyY+GF/InCFShQzsQ39T25gkHhLgSLByyAz+Kjb+c2L98w==", + "extraneous": true, "dependencies": { - "ms": "2.1.2" + "clean-stack": "^4.0.0", + "indent-string": "^5.0.0" }, "engines": { - "node": ">=6.0" - }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } - } - }, - "../../service/node_modules/eslint/node_modules/esprima": { - "version": "4.0.1", - "dev": true, - "license": "BSD-2-Clause", - "peer": true, - "bin": { - "esparse": "bin/esparse.js", - "esvalidate": "bin/esvalidate.js" + "node": ">=12" }, - "engines": { - "node": ">=4" + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "../../service/node_modules/eslint/node_modules/has-flag": { - "version": "3.0.0", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "extraneous": true, "license": "MIT", - "peer": true, - "engines": { - "node": ">=4" + "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" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" } }, - "../../service/node_modules/eslint/node_modules/inquirer": { - "version": "7.3.3", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/ansi-colors": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.3.tgz", + "integrity": "sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==", + "extraneous": true, "license": "MIT", - "peer": true, - "dependencies": { - "ansi-escapes": "^4.2.1", - "chalk": "^4.1.0", - "cli-cursor": "^3.1.0", - "cli-width": "^3.0.0", - "external-editor": "^3.0.3", - "figures": "^3.0.0", - "lodash": "^4.17.19", - "mute-stream": "0.0.8", - "run-async": "^2.4.0", - "rxjs": "^6.6.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0", - "through": "^2.3.6" - }, "engines": { - "node": ">=8.0.0" + "node": ">=6" } }, - "../../service/node_modules/eslint/node_modules/inquirer/node_modules/ansi-styles": { - "version": "4.3.0", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/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==", + "optional": true, "peer": true, "dependencies": { - "color-convert": "^2.0.1" + "type-fest": "^0.21.3" }, "engines": { "node": ">=8" }, "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" + "url": "https://github.com/sponsors/sindresorhus" } }, - "../../service/node_modules/eslint/node_modules/inquirer/node_modules/chalk": { - "version": "4.1.2", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/ansi-escapes/node_modules/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==", + "optional": true, "peer": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, "engines": { "node": ">=10" }, "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" + "url": "https://github.com/sponsors/sindresorhus" } }, - "../../service/node_modules/eslint/node_modules/inquirer/node_modules/color-convert": { - "version": "2.0.1", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "optional": true, "peer": true, - "dependencies": { - "color-name": "~1.1.4" - }, "engines": { - "node": ">=7.0.0" + "node": ">=8" } }, - "../../service/node_modules/eslint/node_modules/inquirer/node_modules/color-name": { - "version": "1.1.4", - "dev": true, - "license": "MIT", - "peer": true - }, - "../../service/node_modules/eslint/node_modules/inquirer/node_modules/has-flag": { - "version": "4.0.0", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "optional": true, "peer": true, + "dependencies": { + "color-convert": "^2.0.1" + }, "engines": { "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "../../service/node_modules/eslint/node_modules/inquirer/node_modules/strip-ansi": { - "version": "6.0.1", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/anymatch": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", + "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", + "extraneous": true, + "license": "ISC", "dependencies": { - "ansi-regex": "^5.0.1" + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" }, "engines": { - "node": ">=8" + "node": ">= 8" } }, - "../../service/node_modules/eslint/node_modules/inquirer/node_modules/supports-color": { - "version": "7.2.0", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/append-field": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/append-field/-/append-field-1.0.0.tgz", + "integrity": "sha512-klpgFSWLW1ZEs8svjfb7g4qWY0YS5imI82dTg+QahUvJ8YqAY0P10Uk8tTyh9ZGuYEZEMaeJYCF5BFuX552hsw==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/append-transform": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/append-transform/-/append-transform-1.0.0.tgz", + "integrity": "sha512-P009oYkeHyU742iSZJzZZywj4QRJdnTWffaKuJQLablCZ1uz6/cW4yaRgcDaoQ+uwOxxnt0gRUcwfsNP2ri0gw==", + "extraneous": true, "dependencies": { - "has-flag": "^4.0.0" + "default-require-extensions": "^2.0.0" }, "engines": { - "node": ">=8" + "node": ">=4" } }, - "../../service/node_modules/eslint/node_modules/is-fullwidth-code-point": { - "version": "3.0.0", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/archiver": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/archiver/-/archiver-5.3.2.tgz", + "integrity": "sha512-+25nxyyznAXF7Nef3y0EbBeqmGZgeN/BxHX29Rs39djAfaFalmQ89SE6CWyDCHzGL0yt/ycBtNOmGTW0FyGWNw==", "license": "MIT", "peer": true, + "dependencies": { + "archiver-utils": "^2.1.0", + "async": "^3.2.4", + "buffer-crc32": "^0.2.1", + "readable-stream": "^3.6.0", + "readdir-glob": "^1.1.2", + "tar-stream": "^2.2.0", + "zip-stream": "^4.1.0" + }, "engines": { - "node": ">=8" + "node": ">= 10" } }, - "../../service/node_modules/eslint/node_modules/js-yaml": { - "version": "3.14.1", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/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==", "peer": true, "dependencies": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" + "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" }, - "bin": { - "js-yaml": "bin/js-yaml.js" + "engines": { + "node": ">= 6" } }, - "../../service/node_modules/eslint/node_modules/minimist": { - "version": "1.2.6", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/archiver-utils/node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", "peer": true }, - "../../service/node_modules/eslint/node_modules/mkdirp": { - "version": "0.5.6", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/archiver-utils/node_modules/readable-stream": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", + "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", "peer": true, "dependencies": { - "minimist": "^1.2.6" - }, - "bin": { - "mkdirp": "bin/cmd.js" + "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" } }, - "../../service/node_modules/eslint/node_modules/ms": { - "version": "2.1.2", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/archiver-utils/node_modules/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==", "peer": true }, - "../../service/node_modules/eslint/node_modules/regexpp": { - "version": "2.0.1", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/archiver-utils/node_modules/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==", "peer": true, - "engines": { - "node": ">=6.5.0" + "dependencies": { + "safe-buffer": "~5.1.0" } }, - "../../service/node_modules/eslint/node_modules/semver": { - "version": "6.3.0", - "dev": true, - "license": "ISC", - "peer": true, - "bin": { - "semver": "bin/semver.js" - } + "node_modules/@ngageoint/mage.service/node_modules/archy": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/archy/-/archy-1.0.0.tgz", + "integrity": "sha512-Xg+9RwCg/0p32teKdGMPTPnVXKD0w3DfHnFTficozsAgsvq2XenPJq/MYpzzQ/v8zrOyJn6Ds39VA4JIDwFfqw==", + "extraneous": true }, - "../../service/node_modules/eslint/node_modules/string-width": { - "version": "4.2.3", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", "peer": true, "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=8" + "sprintf-js": "~1.0.2" } }, - "../../service/node_modules/eslint/node_modules/string-width/node_modules/strip-ansi": { - "version": "6.0.1", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/array-buffer-byte-length": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.1.tgz", + "integrity": "sha512-ahC5W1xgou+KTXix4sAO8Ki12Q+jf4i0+tmk3sC+zgcynshkHxzpXdImBehiUYKKKDwvfFiJl1tZt6ewscS1Mg==", + "extraneous": true, "dependencies": { - "ansi-regex": "^5.0.1" + "call-bind": "^1.0.5", + "is-array-buffer": "^3.0.4" }, "engines": { - "node": ">=8" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "../../service/node_modules/eslint/node_modules/strip-ansi": { - "version": "5.2.0", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/array-flatten": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", + "integrity": "sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/array-from": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/array-from/-/array-from-2.1.1.tgz", + "integrity": "sha512-GQTc6Uupx1FCavi5mPzBvVT7nEOeWMmUA9P95wpfpW1XwMSKs+KaymD5C2Up7KAUKg/mYwbsUYzdZWcoajlNZg==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/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==", + "extraneous": true, "license": "MIT", - "peer": true, - "dependencies": { - "ansi-regex": "^4.1.0" - }, "engines": { - "node": ">=6" + "node": ">=8" } }, - "../../service/node_modules/eslint/node_modules/strip-ansi/node_modules/ansi-regex": { - "version": "4.1.1", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/arraybuffer.prototype.slice": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.3.tgz", + "integrity": "sha512-bMxMKAjg13EBSVscxTaYA4mRc5t1UAXa2kXiGTNfZ079HIWXEkKmkgFrh/nJqamaLSrXO5H4WFFkPEaLJWbs3A==", + "extraneous": true, + "dependencies": { + "array-buffer-byte-length": "^1.0.1", + "call-bind": "^1.0.5", + "define-properties": "^1.2.1", + "es-abstract": "^1.22.3", + "es-errors": "^1.2.1", + "get-intrinsic": "^1.2.3", + "is-array-buffer": "^3.0.4", + "is-shared-array-buffer": "^1.0.2" + }, "engines": { - "node": ">=6" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "../../service/node_modules/eslint/node_modules/strip-json-comments": { - "version": "3.1.1", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/arrify": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/arrify/-/arrify-3.0.0.tgz", + "integrity": "sha512-tLkvA81vQG/XqE2mjDkGQHoOINtMHtysSnemrmoGe6PydDPMRbVugqyk4A6V/WDWEfm3l+0d8anA9r8cv/5Jaw==", + "extraneous": true, "engines": { - "node": ">=8" + "node": ">=12" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "../../service/node_modules/eslint/node_modules/supports-color": { - "version": "5.5.0", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/asap": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz", + "integrity": "sha512-BSHWgDSAiKs50o2Re8ppvp3seVHXSRM44cdSsT9FfNEUUZLOGWVCsiWaRPWM1Znn+mqZ1OfVZ3z3DWEzSp7hRA==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/asn1": { + "version": "0.2.6", + "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.6.tgz", + "integrity": "sha512-ix/FxPn0MDjeyJ7i/yoHGFt/EX6LyNbxSEhPPXODPL+KB0VPk86UYfL0lMdy+KCnv+fmvIzySwaK5COwqVbWTQ==", "peer": true, "dependencies": { - "has-flag": "^3.0.0" - }, - "engines": { - "node": ">=4" + "safer-buffer": "~2.1.0" } }, - "../../service/node_modules/espree": { - "version": "6.2.1", - "dev": true, - "license": "BSD-2-Clause", - "peer": true, - "dependencies": { - "acorn": "^7.1.1", - "acorn-jsx": "^5.2.0", - "eslint-visitor-keys": "^1.1.0" - }, - "engines": { - "node": ">=6.0.0" - } + "node_modules/@ngageoint/mage.service/node_modules/assert-never": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/assert-never/-/assert-never-1.2.1.tgz", + "integrity": "sha512-TaTivMB6pYI1kXwrFlEhLeGfOqoDNdTxjCdwRfFFkEA30Eu+k48W34nlok2EYWJfFFzqaEmichdNM7th6M5HNw==", + "peer": true }, - "../../service/node_modules/espree/node_modules/acorn": { - "version": "7.4.1", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/assert-plus": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", + "integrity": "sha512-NfJ4UzBCcQGLDlQq7nHxH+tv3kyZ0hHQqF5BO6J7tNJeP5do1llPr8dZ8zHonfhAu0PHAdMkSo+8o0wxg9lZWw==", "peer": true, - "bin": { - "acorn": "bin/acorn" - }, "engines": { - "node": ">=0.4.0" + "node": ">=0.8" } }, - "../../service/node_modules/esprima": { - "version": "2.7.3", - "license": "BSD-2-Clause", - "peer": true, - "bin": { - "esparse": "bin/esparse.js", - "esvalidate": "bin/esvalidate.js" - }, + "node_modules/@ngageoint/mage.service/node_modules/assertion-error": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/assertion-error/-/assertion-error-1.1.0.tgz", + "integrity": "sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw==", + "extraneous": true, "engines": { - "node": ">=0.10.0" + "node": "*" } }, - "../../service/node_modules/esquery": { - "version": "1.4.0", - "dev": true, - "license": "BSD-3-Clause", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/async": { + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/async/-/async-3.2.6.tgz", + "integrity": "sha512-htCUDlxyyCLMgaM3xXg0C0LW2xqfuQ6p05pCEIsXuyQ+a1koYKTuBMzRNwmybfLgvJDMd0r1LTn4+E0Ti6C2AA==", + "license": "MIT", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/async-lock": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/async-lock/-/async-lock-1.4.1.tgz", + "integrity": "sha512-Az2ZTpuytrtqENulXwO3GGv1Bztugx6TT37NIo7imr/Qo0gsYiGtSdBa2B6fsXhTpVZDNfu1Qn3pk531e3q+nQ==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/async-mutex": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/async-mutex/-/async-mutex-0.4.1.tgz", + "integrity": "sha512-WfoBo4E/TbCX1G95XTjbWTE3X2XLG0m1Xbv2cwOtuPdyH9CZvnaA5nCt1ucjaKEgW2A5IF71hxrRhr83Je5xjA==", + "extraneous": true, + "license": "MIT", "dependencies": { - "estraverse": "^5.1.0" - }, - "engines": { - "node": ">=0.10" + "tslib": "^2.4.0" } }, - "../../service/node_modules/esquery/node_modules/estraverse": { - "version": "5.3.0", - "dev": true, - "license": "BSD-2-Clause", - "peer": true, - "engines": { - "node": ">=4.0" - } + "node_modules/@ngageoint/mage.service/node_modules/asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==", + "peer": true }, - "../../service/node_modules/esrecurse": { - "version": "4.3.0", - "dev": true, - "license": "BSD-2-Clause", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/available-typed-arrays": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.7.tgz", + "integrity": "sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==", + "extraneous": true, "dependencies": { - "estraverse": "^5.2.0" + "possible-typed-array-names": "^1.0.0" }, "engines": { - "node": ">=4.0" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "../../service/node_modules/esrecurse/node_modules/estraverse": { - "version": "5.3.0", - "dev": true, - "license": "BSD-2-Clause", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/aws-sign2": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", + "integrity": "sha512-08kcGqnYf/YmjoRhfxyu+CLxBjUtHLXLXX/vUfx9l2LYzG3c1m61nrpyFUZI6zeS+Li/wWMMidD9KgrqtGq3mA==", + "extraneous": true, "engines": { - "node": ">=4.0" + "node": "*" } }, - "../../service/node_modules/estraverse": { - "version": "4.3.0", - "dev": true, - "license": "BSD-2-Clause", - "peer": true, - "engines": { - "node": ">=4.0" + "node_modules/@ngageoint/mage.service/node_modules/aws4": { + "version": "1.13.0", + "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.13.0.tgz", + "integrity": "sha512-3AungXC4I8kKsS9PuS4JH2nc+0bVY/mjgrephHTIi8fpEeGsTHBUJeosp0Wc1myYMElmD0B3Oc4XL/HVJ4PV2g==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/axios": { + "version": "1.8.4", + "resolved": "https://registry.npmjs.org/axios/-/axios-1.8.4.tgz", + "integrity": "sha512-eBSYY4Y68NNlHbHBMdeDmKNtDgXWhQsJcGqzO3iLUM0GraQFSS9cVgPX5I9b3lbdFKyYoAEGAZF1DwhTaljNAw==", + "extraneous": true, + "license": "MIT", + "dependencies": { + "follow-redirects": "^1.15.6", + "form-data": "^4.0.0", + "proxy-from-env": "^1.1.0" } }, - "../../service/node_modules/esutils": { - "version": "2.0.3", - "dev": true, - "license": "BSD-2-Clause", + "node_modules/@ngageoint/mage.service/node_modules/b4a": { + "version": "1.6.7", + "resolved": "https://registry.npmjs.org/b4a/-/b4a-1.6.7.tgz", + "integrity": "sha512-OnAYlL5b7LEkALw87fUVafQw5rVR9RjwGd4KUwNQ6DrrNmaVaUCgLipfVlzrPQ4tWOR9P0IXGNOx50jYCCdSJg==", + "extraneous": true, + "license": "Apache-2.0" + }, + "node_modules/@ngageoint/mage.service/node_modules/babel-walk": { + "version": "3.0.0-canary-5", + "resolved": "https://registry.npmjs.org/babel-walk/-/babel-walk-3.0.0-canary-5.tgz", + "integrity": "sha512-GAwkz0AihzY5bkwIY5QDR+LvsRQgB/B+1foMPvi0FZPMl5fjD7ICiznUiBdLYMH1QYe6vqu4gWYytZOccLouFw==", "peer": true, + "dependencies": { + "@babel/types": "^7.9.6" + }, "engines": { - "node": ">=0.10.0" + "node": ">= 10.0.0" } }, - "../../service/node_modules/etag": { - "version": "1.8.1", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/backoff": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/backoff/-/backoff-2.5.0.tgz", + "integrity": "sha512-wC5ihrnUXmR2douXmXLCe5O3zg3GKIyvRi/hi58a/XyRxVI+3/yM0PYueQOZXPXQ9pxBislYkw+sF9b7C/RuMA==", "peer": true, + "dependencies": { + "precond": "0.2" + }, "engines": { "node": ">= 0.6" } }, - "../../service/node_modules/event-stream": { - "version": "4.0.1", - "license": "MIT", - "peer": true, - "dependencies": { - "duplexer": "^0.1.1", - "from": "^0.1.7", - "map-stream": "0.0.7", - "pause-stream": "^0.0.11", - "split": "^1.0.1", - "stream-combiner": "^0.2.2", - "through": "^2.3.8" - } + "node_modules/@ngageoint/mage.service/node_modules/balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", + "peer": true }, - "../../service/node_modules/evp_bytestokey": { - "version": "1.0.3", - "license": "MIT", - "peer": true, - "dependencies": { - "md5.js": "^1.3.4", - "safe-buffer": "^5.1.1" - } + "node_modules/@ngageoint/mage.service/node_modules/bare-events": { + "version": "2.5.4", + "resolved": "https://registry.npmjs.org/bare-events/-/bare-events-2.5.4.tgz", + "integrity": "sha512-+gFfDkR8pj4/TrWCGUGWmJIkBwuxPS5F+a5yWjOHQt2hHvNZd5YLzadjmDUtFmMM4y429bnKLa8bYBMHcYdnQA==", + "extraneous": true, + "license": "Apache-2.0" }, - "../../service/node_modules/expand-template": { - "version": "2.0.3", - "license": "(MIT OR WTFPL)", + "node_modules/@ngageoint/mage.service/node_modules/base-64": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/base-64/-/base-64-1.0.0.tgz", + "integrity": "sha512-kwDPIFCGx0NZHog36dj+tHiwP4QMzsZ3AgMViUBKI0+V5n4U0ufTCUMhnQ04diaRI8EX/QcPfql7zlhZ7j4zgg==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/base64-js": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", + "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/base64url": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/base64url/-/base64url-3.0.1.tgz", + "integrity": "sha512-ir1UPr3dkwexU7FdV8qBBbNDRUhMmIekYMFZfi+C/sLNnRESKPl23nB9b2pltqfOQNnGzsDdId90AEtG5tCx4A==", "peer": true, "engines": { - "node": ">=6" + "node": ">=6.0.0" } }, - "../../service/node_modules/express": { - "version": "4.18.2", - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/bcrypt-pbkdf": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", + "integrity": "sha512-qeFIXtP4MSoi6NLqO12WfqARWWuCKi2Rn/9hJLEmtB5yTNr9DqFWkJRCf2qShWzPeAMRnOgCrq0sg/KLv5ES9w==", + "extraneous": true, "dependencies": { - "accepts": "~1.3.8", - "array-flatten": "1.1.1", - "body-parser": "1.20.1", - "content-disposition": "0.5.4", - "content-type": "~1.0.4", - "cookie": "0.5.0", - "cookie-signature": "1.0.6", - "debug": "2.6.9", - "depd": "2.0.0", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "etag": "~1.8.1", - "finalhandler": "1.2.0", - "fresh": "0.5.2", - "http-errors": "2.0.0", - "merge-descriptors": "1.0.1", - "methods": "~1.1.2", - "on-finished": "2.4.1", - "parseurl": "~1.3.3", - "path-to-regexp": "0.1.7", - "proxy-addr": "~2.0.7", - "qs": "6.11.0", - "range-parser": "~1.2.1", - "safe-buffer": "5.2.1", - "send": "0.18.0", - "serve-static": "1.15.0", - "setprototypeof": "1.2.0", - "statuses": "2.0.1", - "type-is": "~1.6.18", - "utils-merge": "1.0.1", - "vary": "~1.1.2" - }, - "engines": { - "node": ">= 0.10.0" + "tweetnacl": "^0.14.3" } }, - "../../service/node_modules/express-session": { - "version": "1.17.2", + "node_modules/@ngageoint/mage.service/node_modules/bcryptjs": { + "version": "2.4.3", + "resolved": "https://registry.npmjs.org/bcryptjs/-/bcryptjs-2.4.3.tgz", + "integrity": "sha512-V/Hy/X9Vt7f3BbPJEi8BdVFMByHi+jNXrYkW3huaybV/kQ0KJg0Y6PkEMbn+zeT+i+SiKZ/HMqJGIIt4LZDqNQ==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/binary-extensions": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.3.0.tgz", + "integrity": "sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==", + "extraneous": true, "license": "MIT", - "peer": true, - "dependencies": { - "cookie": "0.4.1", - "cookie-signature": "1.0.6", - "debug": "2.6.9", - "depd": "~2.0.0", - "on-headers": "~1.0.2", - "parseurl": "~1.3.3", - "safe-buffer": "5.2.1", - "uid-safe": "~2.1.5" - }, "engines": { - "node": ">= 0.8.0" + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "../../service/node_modules/express-session/node_modules/cookie": { - "version": "0.4.1", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/bindings": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/bindings/-/bindings-1.5.0.tgz", + "integrity": "sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==", + "optional": true, "peer": true, - "engines": { - "node": ">= 0.6" + "dependencies": { + "file-uri-to-path": "1.0.0" } }, - "../../service/node_modules/express-session/node_modules/depd": { - "version": "2.0.0", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/bl": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz", + "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==", "peer": true, - "engines": { - "node": ">= 0.8" + "dependencies": { + "buffer": "^5.5.0", + "inherits": "^2.0.4", + "readable-stream": "^3.4.0" } }, - "../../service/node_modules/express/node_modules/body-parser": { - "version": "1.20.1", + "node_modules/@ngageoint/mage.service/node_modules/bluebird": { + "version": "3.7.2", + "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz", + "integrity": "sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/body-parser": { + "version": "1.20.3", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.3.tgz", + "integrity": "sha512-7rAxByjUMqQ3/bHJy7D6OGXvx/MMc4IqBn/X0fcM1QUcAItpZrBEYhWGem+tzXH90c+G01ypMcYJBO9Y30203g==", "license": "MIT", "peer": true, "dependencies": { "bytes": "3.1.2", - "content-type": "~1.0.4", + "content-type": "~1.0.5", "debug": "2.6.9", "depd": "2.0.0", "destroy": "1.2.0", "http-errors": "2.0.0", "iconv-lite": "0.4.24", "on-finished": "2.4.1", - "qs": "6.11.0", - "raw-body": "2.5.1", + "qs": "6.13.0", + "raw-body": "2.5.2", "type-is": "~1.6.18", "unpipe": "1.0.0" }, @@ -4003,32 +4693,19 @@ "npm": "1.2.8000 || >= 1.4.16" } }, - "../../service/node_modules/express/node_modules/depd": { - "version": "2.0.0", - "license": "MIT", - "peer": true, - "engines": { - "node": ">= 0.8" - } - }, - "../../service/node_modules/express/node_modules/http-errors": { - "version": "2.0.0", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/body-parser/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", "peer": true, "dependencies": { - "depd": "2.0.0", - "inherits": "2.0.4", - "setprototypeof": "1.2.0", - "statuses": "2.0.1", - "toidentifier": "1.0.1" - }, - "engines": { - "node": ">= 0.8" + "ms": "2.0.0" } }, - "../../service/node_modules/express/node_modules/iconv-lite": { + "node_modules/@ngageoint/mage.service/node_modules/body-parser/node_modules/iconv-lite": { "version": "0.4.24", - "license": "MIT", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", + "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", "peer": true, "dependencies": { "safer-buffer": ">= 2.1.2 < 3" @@ -4037,759 +4714,768 @@ "node": ">=0.10.0" } }, - "../../service/node_modules/express/node_modules/on-finished": { - "version": "2.4.1", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/body-parser/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/bowser": { + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/bowser/-/bowser-2.11.0.tgz", + "integrity": "sha512-AlcaJBi/pqqJBIQ8U9Mcpc9i8Aqxn88Skv5d+xBX006BY5u8N3mGLHa5Lgppa7L/HfwgwLgZ6NYs+Ag6uUmJRA==", + "optional": true, + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", "peer": true, "dependencies": { - "ee-first": "1.1.1" + "balanced-match": "^1.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/braces": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", + "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", + "extraneous": true, + "dependencies": { + "fill-range": "^7.1.1" }, "engines": { - "node": ">= 0.8" + "node": ">=8" } }, - "../../service/node_modules/express/node_modules/qs": { - "version": "6.11.0", - "license": "BSD-3-Clause", + "node_modules/@ngageoint/mage.service/node_modules/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==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/bson": { + "version": "4.7.2", + "resolved": "https://registry.npmjs.org/bson/-/bson-4.7.2.tgz", + "integrity": "sha512-Ry9wCtIZ5kGqkJoi6aD8KjxFZEx78guTQDnpXWiNthsxzrxAK/i8E6pCHAIZTbaEFWcOCvbecMukfK7XUvyLpQ==", "peer": true, "dependencies": { - "side-channel": "^1.0.4" + "buffer": "^5.6.0" }, "engines": { - "node": ">=0.6" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=6.9.0" } }, - "../../service/node_modules/express/node_modules/raw-body": { - "version": "2.5.1", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/buffer": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", + "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], "peer": true, "dependencies": { - "bytes": "3.1.2", - "http-errors": "2.0.0", - "iconv-lite": "0.4.24", - "unpipe": "1.0.0" - }, - "engines": { - "node": ">= 0.8" + "base64-js": "^1.3.1", + "ieee754": "^1.1.13" } }, - "../../service/node_modules/express/node_modules/statuses": { - "version": "2.0.1", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/buffer-crc32": { + "version": "0.2.13", + "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", + "integrity": "sha512-VO9Ht/+p3SN7SKWqcrgEzjGbRSJYTx+Q1pTQC0wrWqHx0vpJraQ6GtHx8tvcg1rlK1byhU5gccxgOgj7B0TDkQ==", "peer": true, "engines": { - "node": ">= 0.8" + "node": "*" } }, - "../../service/node_modules/extend": { - "version": "3.0.2", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/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": "sha512-zRpUiDwd/xk6ADqPMATG8vc9VPrkck7T07OIx0gnjmJAnHnTVXNQG3vfvWNuiZIkwu9KrKdA1iJKfsfTVxE6NA==", "peer": true }, - "../../service/node_modules/external-editor": { - "version": "3.1.0", - "devOptional": true, - "license": "MIT", - "peer": true, - "dependencies": { - "chardet": "^0.7.0", - "iconv-lite": "^0.4.24", - "tmp": "^0.0.33" - }, - "engines": { - "node": ">=4" - } + "node_modules/@ngageoint/mage.service/node_modules/buffer-from": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", + "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", + "peer": true }, - "../../service/node_modules/external-editor/node_modules/iconv-lite": { - "version": "0.4.24", - "devOptional": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/busboy": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/busboy/-/busboy-1.6.0.tgz", + "integrity": "sha512-8SFQbg/0hQ9xy3UNTB0YEnsNBbWfhf7RtnzpL7TkBiTBRfrQ9Fxcnz7VJsleJpyp6rVLvXiuORqjlHi5q+PYuA==", "peer": true, "dependencies": { - "safer-buffer": ">= 2.1.2 < 3" + "streamsearch": "^1.1.0" }, "engines": { - "node": ">=0.10.0" + "node": ">=10.16.0" } }, - "../../service/node_modules/extsprintf": { - "version": "1.2.0", - "engines": [ - "node >=0.6.0" - ], + "node_modules/@ngageoint/mage.service/node_modules/bytes": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", + "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", "license": "MIT", - "peer": true - }, - "../../service/node_modules/eyes": { - "version": "0.1.8", "peer": true, "engines": { - "node": "> 0.1.90" + "node": ">= 0.8" } }, - "../../service/node_modules/fast-deep-equal": { - "version": "3.1.3", - "dev": true, - "license": "MIT", - "peer": true - }, - "../../service/node_modules/fast-diff": { - "version": "1.2.0", - "dev": true, - "license": "Apache-2.0", - "peer": true - }, - "../../service/node_modules/fast-glob": { - "version": "3.3.1", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/caching-transform": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/caching-transform/-/caching-transform-3.0.2.tgz", + "integrity": "sha512-Mtgcv3lh3U0zRii/6qVgQODdPA4G3zhG+jtbCWj39RXuUFTMzH0vcdMtaJS1jPowd+It2Pqr6y3NJMQqOqCE2w==", + "extraneous": true, "dependencies": { - "@nodelib/fs.stat": "^2.0.2", - "@nodelib/fs.walk": "^1.2.3", - "glob-parent": "^5.1.2", - "merge2": "^1.3.0", - "micromatch": "^4.0.4" + "hasha": "^3.0.0", + "make-dir": "^2.0.0", + "package-hash": "^3.0.0", + "write-file-atomic": "^2.4.2" }, "engines": { - "node": ">=8.6.0" + "node": ">=6" } }, - "../../service/node_modules/fast-json-stable-stringify": { + "node_modules/@ngageoint/mage.service/node_modules/caching-transform/node_modules/make-dir": { "version": "2.1.0", - "dev": true, - "license": "MIT", - "peer": true - }, - "../../service/node_modules/fast-levenshtein": { - "version": "2.0.6", - "dev": true, - "license": "MIT", - "peer": true - }, - "../../service/node_modules/fast-safe-stringify": { - "version": "2.1.1", - "license": "MIT", - "peer": true - }, - "../../service/node_modules/fastq": { - "version": "1.15.0", - "dev": true, - "license": "ISC", - "peer": true, + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", + "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", + "extraneous": true, "dependencies": { - "reusify": "^1.0.4" + "pify": "^4.0.1", + "semver": "^5.6.0" + }, + "engines": { + "node": ">=6" } }, - "../../service/node_modules/fd-slicer": { - "version": "1.1.0", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "pend": "~1.2.0" + "node_modules/@ngageoint/mage.service/node_modules/caching-transform/node_modules/pify": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", + "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", + "extraneous": true, + "engines": { + "node": ">=6" } }, - "../../service/node_modules/figures": { - "version": "3.2.0", - "devOptional": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/caching-transform/node_modules/semver": { + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", + "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", + "extraneous": true, + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/call-bind": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.7.tgz", + "integrity": "sha512-GHTSNSYICQ7scH7sZ+M2rFopRoLh8t2bLSW6BbgrtLsahOIB5iyAVJf9GjWK3cYTDaMj4XdBpM1cA6pIS0Kv2w==", "peer": true, "dependencies": { - "escape-string-regexp": "^1.0.5" + "es-define-property": "^1.0.0", + "es-errors": "^1.3.0", + "function-bind": "^1.1.2", + "get-intrinsic": "^1.2.4", + "set-function-length": "^1.2.1" }, "engines": { - "node": ">=8" + "node": ">= 0.4" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://github.com/sponsors/ljharb" } }, - "../../service/node_modules/file-entry-cache": { - "version": "5.0.1", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/call-bind-apply-helpers": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.2.tgz", + "integrity": "sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==", "license": "MIT", "peer": true, "dependencies": { - "flat-cache": "^2.0.1" + "es-errors": "^1.3.0", + "function-bind": "^1.1.2" }, "engines": { - "node": ">=4" + "node": ">= 0.4" } }, - "../../service/node_modules/file-type": { - "version": "16.5.0", + "node_modules/@ngageoint/mage.service/node_modules/call-bound": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/call-bound/-/call-bound-1.0.4.tgz", + "integrity": "sha512-+ys997U96po4Kx/ABpBCqhA9EuxJaQWDQg7295H4hBphv3IZg0boBKuwYpt4YXp6MZ5AmZQnU/tyMTlRpaSejg==", "license": "MIT", "peer": true, "dependencies": { - "readable-web-to-node-stream": "^3.0.0", - "strtok3": "^6.0.3", - "token-types": "^2.0.0" + "call-bind-apply-helpers": "^1.0.2", + "get-intrinsic": "^1.3.0" }, "engines": { - "node": ">=8" + "node": ">= 0.4" }, "funding": { - "url": "https://github.com/sindresorhus/file-type?sponsor=1" + "url": "https://github.com/sponsors/ljharb" } }, - "../../service/node_modules/file-uri-to-path": { - "version": "1.0.0", - "license": "MIT", - "peer": true + "node_modules/@ngageoint/mage.service/node_modules/callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "extraneous": true, + "engines": { + "node": ">=6" + } }, - "../../service/node_modules/fill-keys": { - "version": "1.0.2", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "is-object": "~1.0.1", - "merge-descriptors": "~1.0.0" - }, + "node_modules/@ngageoint/mage.service/node_modules/camelcase": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", + "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", + "extraneous": true, "engines": { - "node": ">=0.10.0" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "../../service/node_modules/fill-range": { - "version": "7.0.1", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/caseless": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", + "integrity": "sha512-4tYFyifaFfGacoiObjJegolkwSU4xQNGbVgUiNYVUxbQ2x2lUsFvY4hVgVzGiIe6WLOPqycWXA40l+PWsxthUw==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/cfenv": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/cfenv/-/cfenv-1.2.4.tgz", + "integrity": "sha512-jWQ+3UXZauYyOXwHpMm74C0wM7+LDQmgMxWBGchg4as7+YyTL0pyx/CZ3dEvJyZVOB4SgKATc5naJky6cd9zYw==", + "license": "Apache-2.0", "peer": true, "dependencies": { - "to-regex-range": "^5.0.1" - }, - "engines": { - "node": ">=8" + "js-yaml": "4.0.x", + "ports": "1.1.x", + "underscore": "1.12.x" } }, - "../../service/node_modules/finalhandler": { - "version": "1.2.0", + "node_modules/@ngageoint/mage.service/node_modules/chai": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/chai/-/chai-4.5.0.tgz", + "integrity": "sha512-RITGBfijLkBddZvnn8jdqoTypxvqbOLYQkGGxXzeFjVHvudaPw0HNFD9x928/eUwYWd2dPCugVqspGALTZZQKw==", + "extraneous": true, "license": "MIT", - "peer": true, "dependencies": { - "debug": "2.6.9", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "on-finished": "2.4.1", - "parseurl": "~1.3.3", - "statuses": "2.0.1", - "unpipe": "~1.0.0" + "assertion-error": "^1.1.0", + "check-error": "^1.0.3", + "deep-eql": "^4.1.3", + "get-func-name": "^2.0.2", + "loupe": "^2.3.6", + "pathval": "^1.1.1", + "type-detect": "^4.1.0" }, "engines": { - "node": ">= 0.8" + "node": ">=4" } }, - "../../service/node_modules/finalhandler/node_modules/on-finished": { - "version": "2.4.1", - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/chai-as-promised": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/chai-as-promised/-/chai-as-promised-7.1.2.tgz", + "integrity": "sha512-aBDHZxRzYnUYuIAIPBH2s511DjlKPzXNlXSGFC8CwmroWQLfrW0LtE1nK3MAwwNhJPa9raEjNCmRoFpG0Hurdw==", + "extraneous": true, + "license": "WTFPL", "dependencies": { - "ee-first": "1.1.1" + "check-error": "^1.0.2" }, - "engines": { - "node": ">= 0.8" + "peerDependencies": { + "chai": ">= 2.1.2 < 6" } }, - "../../service/node_modules/finalhandler/node_modules/statuses": { - "version": "2.0.1", + "node_modules/@ngageoint/mage.service/node_modules/chai/node_modules/type-detect": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.1.0.tgz", + "integrity": "sha512-Acylog8/luQ8L7il+geoSxhEkazvkslg7PSNKOX59mbB9cOveP5aq9h74Y7YU8yDpJwetzQQrfIwtf4Wp4LKcw==", + "extraneous": true, "license": "MIT", - "peer": true, "engines": { - "node": ">= 0.8" + "node": ">=4" } }, - "../../service/node_modules/find-cache-dir": { - "version": "3.3.2", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/chalk": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.1.tgz", + "integrity": "sha512-diHzdDKxcU+bAsUboHLPEDQiw0qEe0qd7SYUn3HgcFlWgbDcfLGswOHYeGrHKzG9z6UYf01d9VFMfZxPM1xZSg==", + "optional": true, "peer": true, "dependencies": { - "commondir": "^1.0.1", - "make-dir": "^3.0.2", - "pkg-dir": "^4.1.0" + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" }, "engines": { - "node": ">=8" + "node": ">=10" }, "funding": { - "url": "https://github.com/avajs/find-cache-dir?sponsor=1" + "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "../../service/node_modules/find-cache-dir/node_modules/make-dir": { - "version": "3.1.0", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/character-parser": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/character-parser/-/character-parser-2.2.0.tgz", + "integrity": "sha512-+UqJQjFEFaTAs3bNsF2j2kEN1baG/zghZbdqoYEDxGZtJo9LBzl1A+m0D4n3qKx8N2FNv8/Xp6yV9mQmBuptaw==", "peer": true, "dependencies": { - "semver": "^6.0.0" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "is-regex": "^1.0.3" } }, - "../../service/node_modules/find-cache-dir/node_modules/semver": { - "version": "6.3.0", - "dev": true, - "license": "ISC", - "peer": true, - "bin": { - "semver": "bin/semver.js" - } + "node_modules/@ngageoint/mage.service/node_modules/chardet": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz", + "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==", + "optional": true, + "peer": true }, - "../../service/node_modules/flat": { - "version": "4.1.1", - "dev": true, - "license": "BSD-3-Clause", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/check-error": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/check-error/-/check-error-1.0.3.tgz", + "integrity": "sha512-iKEoDYaRmd1mxM90a2OEfWhjsjPpYPuQ+lMYsoxB126+t8fw7ySEO48nmDg5COTjxDI65/Y2OWpeEHk3ZOe8zg==", + "extraneous": true, "dependencies": { - "is-buffer": "~2.0.3" + "get-func-name": "^2.0.2" }, - "bin": { - "flat": "cli.js" + "engines": { + "node": "*" } }, - "../../service/node_modules/flat-cache": { - "version": "2.0.1", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/chokidar": { + "version": "3.5.3", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", + "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", + "extraneous": true, + "funding": [ + { + "type": "individual", + "url": "https://paulmillr.com/funding/" + } + ], "license": "MIT", - "peer": true, "dependencies": { - "flatted": "^2.0.0", - "rimraf": "2.6.3", - "write": "1.0.3" + "anymatch": "~3.1.2", + "braces": "~3.0.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" }, "engines": { - "node": ">=4" + "node": ">= 8.10.0" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" } }, - "../../service/node_modules/flat-cache/node_modules/rimraf": { - "version": "2.6.3", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/chokidar/node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "extraneous": true, "license": "ISC", - "peer": true, "dependencies": { - "glob": "^7.1.3" + "is-glob": "^4.0.1" }, - "bin": { - "rimraf": "bin.js" - } - }, - "../../service/node_modules/flat/node_modules/is-buffer": { - "version": "2.0.5", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "license": "MIT", - "peer": true, "engines": { - "node": ">=4" + "node": ">= 6" } }, - "../../service/node_modules/flatted": { - "version": "2.0.2", - "dev": true, - "license": "ISC", + "node_modules/@ngageoint/mage.service/node_modules/chownr": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz", + "integrity": "sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==", + "optional": true, "peer": true }, - "../../service/node_modules/follow-redirects": { - "version": "1.15.1", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://github.com/sponsors/RubenVerborgh" - } - ], - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/clean-stack": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-4.2.0.tgz", + "integrity": "sha512-LYv6XPxoyODi36Dp976riBtSY27VmFo+MKqEU9QCCWyTrdEPDog+RWA7xQWHi6Vbp61j5c4cdzzX1NidnwtUWg==", + "extraneous": true, + "dependencies": { + "escape-string-regexp": "5.0.0" + }, "engines": { - "node": ">=4.0" + "node": ">=12" }, - "peerDependenciesMeta": { - "debug": { - "optional": true - } + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "../../service/node_modules/foreach": { - "version": "2.0.5", - "dev": true, - "license": "MIT", - "peer": true - }, - "../../service/node_modules/foreachasync": { - "version": "3.0.0", - "license": "Apache2", - "peer": true + "node_modules/@ngageoint/mage.service/node_modules/clean-stack/node_modules/escape-string-regexp": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz", + "integrity": "sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==", + "extraneous": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } }, - "../../service/node_modules/foreground-child": { - "version": "1.5.6", - "dev": true, - "license": "ISC", + "node_modules/@ngageoint/mage.service/node_modules/cli-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz", + "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", + "optional": true, "peer": true, "dependencies": { - "cross-spawn": "^4", - "signal-exit": "^3.0.0" + "restore-cursor": "^3.1.0" + }, + "engines": { + "node": ">=8" } }, - "../../service/node_modules/forever-agent": { - "version": "0.6.1", - "dev": true, - "license": "Apache-2.0", + "node_modules/@ngageoint/mage.service/node_modules/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==", + "optional": true, "peer": true, "engines": { - "node": "*" + "node": ">= 10" } }, - "../../service/node_modules/form-data": { - "version": "2.3.3", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/cliui": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", + "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", + "extraneous": true, "dependencies": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.6", - "mime-types": "^2.1.12" + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^7.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/coffeescript": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/coffeescript/-/coffeescript-2.7.0.tgz", + "integrity": "sha512-hzWp6TUE2d/jCcN67LrW1eh5b/rSDKQK6oD6VMLlggYVUUFexgTH9z3dNYihzX4RMhze5FTUsUmOXViJKFQR/A==", + "peer": true, + "bin": { + "cake": "bin/cake", + "coffee": "bin/coffee" }, "engines": { - "node": ">= 0.12" + "node": ">=6" } }, - "../../service/node_modules/format-util": { - "version": "1.0.5", - "dev": true, - "license": "MIT", - "peer": true - }, - "../../service/node_modules/formidable": { + "node_modules/@ngageoint/mage.service/node_modules/color-convert": { "version": "2.0.1", - "license": "MIT", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "optional": true, "peer": true, "dependencies": { - "dezalgo": "1.0.3", - "hexoid": "1.0.0", - "once": "1.4.0", - "qs": "6.9.3" + "color-name": "~1.1.4" }, - "funding": { - "url": "https://ko-fi.com/tunnckoCore/commissions" + "engines": { + "node": ">=7.0.0" } }, - "../../service/node_modules/formidable/node_modules/qs": { - "version": "6.9.3", - "license": "BSD-3-Clause", + "node_modules/@ngageoint/mage.service/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "optional": true, + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/colors": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/colors/-/colors-1.0.3.tgz", + "integrity": "sha512-pFGrxThWcWQ2MsAz6RtgeWe4NK2kUE1WfsrvvlctdII745EW9I0yflqhe7++M5LEc7bV2c/9/5zc8sFcpL0Drw==", "peer": true, "engines": { - "node": ">=0.6" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=0.1.90" } }, - "../../service/node_modules/forwarded": { - "version": "0.2.0", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/combined-stream": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", + "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", "peer": true, + "dependencies": { + "delayed-stream": "~1.0.0" + }, "engines": { - "node": ">= 0.6" + "node": ">= 0.8" } }, - "../../service/node_modules/fresh": { - "version": "0.5.2", + "node_modules/@ngageoint/mage.service/node_modules/commander": { + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-8.3.0.tgz", + "integrity": "sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww==", "license": "MIT", "peer": true, "engines": { - "node": ">= 0.6" + "node": ">= 12" } }, - "../../service/node_modules/from": { - "version": "0.1.7", - "license": "MIT", - "peer": true - }, - "../../service/node_modules/fs-constants": { - "version": "1.0.0", - "license": "MIT", - "peer": true + "node_modules/@ngageoint/mage.service/node_modules/commondir": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", + "integrity": "sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==", + "extraneous": true }, - "../../service/node_modules/fs-extra": { - "version": "4.0.3", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/component-emitter": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.1.tgz", + "integrity": "sha512-T0+barUSQRTUQASh8bx02dl+DhF54GtIDY13Y3m9oWTklKbb3Wv974meRpeZ3lp1JpLVECWWNHC4vaG2XHXouQ==", "peer": true, - "dependencies": { - "graceful-fs": "^4.1.2", - "jsonfile": "^4.0.0", - "universalify": "^0.1.0" + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "../../service/node_modules/fs-minipass": { - "version": "2.1.0", - "license": "ISC", - "optional": true, + "node_modules/@ngageoint/mage.service/node_modules/compress-commons": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/compress-commons/-/compress-commons-4.1.2.tgz", + "integrity": "sha512-D3uMHtGc/fcO1Gt1/L7i1e33VOvD4A9hfQLP+6ewd+BvG/gQ84Yh4oftEhAdjSMgBgwGL+jsppT7JYNpo6MHHg==", "peer": true, "dependencies": { - "minipass": "^3.0.0" + "buffer-crc32": "^0.2.13", + "crc32-stream": "^4.0.2", + "normalize-path": "^3.0.0", + "readable-stream": "^3.6.0" }, "engines": { - "node": ">= 8" + "node": ">= 10" } }, - "../../service/node_modules/fs-minipass/node_modules/minipass": { - "version": "3.3.6", - "license": "ISC", - "optional": true, + "node_modules/@ngageoint/mage.service/node_modules/concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/concat-stream": { + "version": "1.6.2", + "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz", + "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==", + "engines": [ + "node >= 0.8" + ], "peer": true, "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=8" + "buffer-from": "^1.0.0", + "inherits": "^2.0.3", + "readable-stream": "^2.2.2", + "typedarray": "^0.0.6" } }, - "../../service/node_modules/fs.realpath": { + "node_modules/@ngageoint/mage.service/node_modules/concat-stream/node_modules/isarray": { "version": "1.0.0", - "license": "ISC", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", "peer": true }, - "../../service/node_modules/fsevents": { - "version": "2.1.3", - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "darwin" - ], + "node_modules/@ngageoint/mage.service/node_modules/concat-stream/node_modules/readable-stream": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", + "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", "peer": true, - "engines": { - "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + "dependencies": { + "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" } }, - "../../service/node_modules/function-bind": { - "version": "1.1.1", - "license": "MIT", - "peer": true - }, - "../../service/node_modules/functional-red-black-tree": { - "version": "1.0.1", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/concat-stream/node_modules/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==", "peer": true }, - "../../service/node_modules/gauge": { - "version": "2.7.4", - "license": "ISC", - "optional": true, + "node_modules/@ngageoint/mage.service/node_modules/concat-stream/node_modules/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==", "peer": true, "dependencies": { - "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" - } - }, - "../../service/node_modules/geojson": { - "version": "0.5.0", - "license": "MIT", - "peer": true, - "engines": { - "node": ">= 0.10" + "safe-buffer": "~5.1.0" } }, - "../../service/node_modules/geojson-rbush": { - "version": "3.2.0", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/constantinople": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/constantinople/-/constantinople-4.0.1.tgz", + "integrity": "sha512-vCrqcSIq4//Gx74TXXCGnHpulY1dskqLTFGDmhrGxzeXL8lF8kvXv6mpNWlJj1uD4DW23D4ljAqbY4RRaaUZIw==", "peer": true, "dependencies": { - "@turf/bbox": "*", - "@turf/helpers": "6.x", - "@turf/meta": "6.x", - "@types/geojson": "7946.0.8", - "rbush": "^3.0.1" + "@babel/parser": "^7.6.0", + "@babel/types": "^7.6.1" } }, - "../../service/node_modules/geojson-stream": { - "version": "0.1.0", - "license": "BSD-2-Clause", + "node_modules/@ngageoint/mage.service/node_modules/content-disposition": { + "version": "0.5.4", + "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz", + "integrity": "sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==", "peer": true, "dependencies": { - "JSONStream": "^1.0.0", - "through": "^2.3.4" + "safe-buffer": "5.2.1" + }, + "engines": { + "node": ">= 0.6" } }, - "../../service/node_modules/geojson-validation": { - "version": "1.0.2", - "license": "LGPL-3", - "peer": true, - "bin": { - "gjv": "bin/gjv" - } - }, - "../../service/node_modules/get-caller-file": { - "version": "2.0.5", - "dev": true, - "license": "ISC", + "node_modules/@ngageoint/mage.service/node_modules/content-type": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.5.tgz", + "integrity": "sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==", "peer": true, "engines": { - "node": "6.* || 8.* || >= 10.*" + "node": ">= 0.6" } }, - "../../service/node_modules/get-func-name": { - "version": "2.0.0", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/convert-source-map": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.9.0.tgz", + "integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/cookie": { + "version": "0.7.1", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.7.1.tgz", + "integrity": "sha512-6DnInpx7SJ2AK3+CTUE/ZM0vWTUboZCegxhC2xiIydHR9jNuTAASBrfEpHhiGOZw/nX51bHt6YQl8jsGo4y/0w==", "license": "MIT", "peer": true, "engines": { - "node": "*" + "node": ">= 0.6" } }, - "../../service/node_modules/get-intrinsic": { - "version": "1.1.1", - "license": "MIT", - "peer": true, - "dependencies": { - "function-bind": "^1.1.1", - "has": "^1.0.3", - "has-symbols": "^1.0.1" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } + "node_modules/@ngageoint/mage.service/node_modules/cookie-signature": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", + "integrity": "sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==", + "peer": true }, - "../../service/node_modules/get-port": { - "version": "5.1.1", - "dev": true, - "license": "MIT", - "peer": true, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } + "node_modules/@ngageoint/mage.service/node_modules/cookiejar": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/cookiejar/-/cookiejar-2.1.4.tgz", + "integrity": "sha512-LDx6oHrK+PhzLKJU9j5S7/Y3jM/mUHvD/DeI1WQmJn652iPC5Y4TBzC9l+5OMOXlyTTA+SmVUPm0HQUwpD5Jqw==", + "peer": true }, - "../../service/node_modules/get-stdin": { - "version": "6.0.0", - "dev": true, - "license": "MIT", - "peer": true, - "engines": { - "node": ">=4" - } + "node_modules/@ngageoint/mage.service/node_modules/core-util-is": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", + "integrity": "sha512-3lqz5YjWTYnW6dlDa5TLaTCcShfar1e40rmcJVwCBJC6mWlFuj0eCHIElmG1g5kyuJ/GD+8Wn4FFCcz4gJPfaQ==", + "peer": true }, - "../../service/node_modules/get-symbol-description": { - "version": "1.0.0", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/coveralls": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/coveralls/-/coveralls-3.1.1.tgz", + "integrity": "sha512-+dxnG2NHncSD1NrqbSM3dn/lE57O6Qf/koe9+I7c+wzkqRmEvcp0kgJdxKInzYzkICKkFMZsX3Vct3++tsF9ww==", + "extraneous": true, + "license": "BSD-2-Clause", "dependencies": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.1.1" + "js-yaml": "^3.13.1", + "lcov-parse": "^1.0.0", + "log-driver": "^1.2.7", + "minimist": "^1.2.5", + "request": "^2.88.2" }, - "engines": { - "node": ">= 0.4" + "bin": { + "coveralls": "bin/coveralls.js" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "engines": { + "node": ">=6" } }, - "../../service/node_modules/getpass": { - "version": "0.1.7", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/coveralls/node_modules/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==", + "extraneous": true, "dependencies": { - "assert-plus": "^1.0.0" + "argparse": "^1.0.7", + "esprima": "^4.0.0" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" } }, - "../../service/node_modules/github-from-package": { - "version": "0.0.0", - "license": "MIT", - "peer": true - }, - "../../service/node_modules/glob": { - "version": "7.2.0", - "license": "ISC", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/cp-file": { + "version": "10.0.0", + "resolved": "https://registry.npmjs.org/cp-file/-/cp-file-10.0.0.tgz", + "integrity": "sha512-vy2Vi1r2epK5WqxOLnskeKeZkdZvTKfFZQCplE3XWsP+SUJyd5XAUFC9lFgTjjXJF2GMne/UML14iEmkAaDfFg==", + "extraneous": true, "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" + "graceful-fs": "^4.2.10", + "nested-error-stacks": "^2.1.1", + "p-event": "^5.0.1" }, "engines": { - "node": "*" + "node": ">=14.16" }, "funding": { - "url": "https://github.com/sponsors/isaacs" + "url": "https://github.com/sponsors/sindresorhus" } }, - "../../service/node_modules/glob-parent": { - "version": "5.1.2", - "dev": true, - "license": "ISC", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/cpy": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/cpy/-/cpy-10.1.0.tgz", + "integrity": "sha512-VC2Gs20JcTyeQob6UViBLnyP0bYHkBh6EiKzot9vi2DmeGlFT9Wd7VG3NBrkNx/jYvFBeyDOMMHdHQhbtKLgHQ==", + "extraneous": true, "dependencies": { - "is-glob": "^4.0.1" + "arrify": "^3.0.0", + "cp-file": "^10.0.0", + "globby": "^13.1.4", + "junk": "^4.0.1", + "micromatch": "^4.0.5", + "nested-error-stacks": "^2.1.1", + "p-filter": "^3.0.0", + "p-map": "^6.0.0" }, "engines": { - "node": ">= 6" + "node": ">=16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "../../service/node_modules/globals": { - "version": "12.4.0", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/cpy-cli": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/cpy-cli/-/cpy-cli-5.0.0.tgz", + "integrity": "sha512-fb+DZYbL9KHc0BC4NYqGRrDIJZPXUmjjtqdw4XRRg8iV8dIfghUX/WiL+q4/B/KFTy3sK6jsbUhBaz0/Hxg7IQ==", + "extraneous": true, "dependencies": { - "type-fest": "^0.8.1" + "cpy": "^10.1.0", + "meow": "^12.0.1" + }, + "bin": { + "cpy": "cli.js" }, "engines": { - "node": ">=8" + "node": ">=16" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "../../service/node_modules/globals/node_modules/type-fest": { - "version": "0.8.1", - "dev": true, - "license": "(MIT OR CC0-1.0)", - "peer": true, - "engines": { - "node": ">=8" - } - }, - "../../service/node_modules/globby": { + "node_modules/@ngageoint/mage.service/node_modules/cpy/node_modules/globby": { "version": "13.2.2", - "dev": true, - "license": "MIT", - "peer": true, + "resolved": "https://registry.npmjs.org/globby/-/globby-13.2.2.tgz", + "integrity": "sha512-Y1zNGV+pzQdh7H39l9zgB4PJqjRNqydvdYCDG4HFXM4XuvSaQQlEc91IU1yALL8gUTDomgBAfz3XJdmUS+oo0w==", + "extraneous": true, "dependencies": { "dir-glob": "^3.0.1", "fast-glob": "^3.3.0", @@ -4804,119 +5490,106 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "../../service/node_modules/globby/node_modules/ignore": { - "version": "5.2.4", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/cpy/node_modules/slash": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-4.0.0.tgz", + "integrity": "sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==", + "extraneous": true, "engines": { - "node": ">= 4" + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "../../service/node_modules/gm": { - "version": "1.23.1", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/crc-32": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/crc-32/-/crc-32-1.2.2.tgz", + "integrity": "sha512-ROmzCKrTnOwybPcJApAA6WBWij23HVfGVNKqqrZpuyZOHqK2CwHSvpGuyt/UNNvaIjEd8X5IFGp4Mh+Ie1IHJQ==", "peer": true, - "dependencies": { - "array-parallel": "~0.1.3", - "array-series": "~0.1.5", - "cross-spawn": "^4.0.0", - "debug": "^3.1.0" + "bin": { + "crc32": "bin/crc32.njs" }, "engines": { - "node": ">= 0.10.0" + "node": ">=0.8" } }, - "../../service/node_modules/gm/node_modules/debug": { - "version": "3.2.7", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/crc32-stream": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/crc32-stream/-/crc32-stream-4.0.3.tgz", + "integrity": "sha512-NT7w2JVU7DFroFdYkeq8cywxrgjPHWkdX1wjpRQXPX5Asews3tA+Ght6lddQO5Mkumffp3X7GEqku3epj2toIw==", "peer": true, "dependencies": { - "ms": "^2.1.1" + "crc-32": "^1.2.0", + "readable-stream": "^3.4.0" + }, + "engines": { + "node": ">= 10" } }, - "../../service/node_modules/gm/node_modules/ms": { - "version": "2.1.3", - "license": "MIT", - "peer": true - }, - "../../service/node_modules/graceful-fs": { - "version": "4.2.10", - "license": "ISC", - "peer": true - }, - "../../service/node_modules/growl": { - "version": "1.10.5", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/cross-spawn": { + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", + "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==", + "extraneous": true, "license": "MIT", - "peer": true, + "dependencies": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + }, "engines": { - "node": ">=4.x" + "node": ">= 8" } }, - "../../service/node_modules/har-schema": { - "version": "2.0.0", - "dev": true, - "license": "ISC", + "node_modules/@ngageoint/mage.service/node_modules/cycle": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/cycle/-/cycle-1.0.3.tgz", + "integrity": "sha512-TVF6svNzeQCOpjCqsy0/CSy8VgObG3wXusJ73xW2GbG5rGx7lC8zxDSURicsXI2UsGdi2L0QNRCi745/wUDvsA==", "peer": true, "engines": { - "node": ">=4" + "node": ">=0.4.0" } }, - "../../service/node_modules/har-validator": { - "version": "5.1.5", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/dashdash": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", + "integrity": "sha512-jRFi8UDGo6j+odZiEpjazZaWqEal3w/basFjQHQEwVtZJGDpxbH1MeYluwCS8Xq5wmLJooDlMgvVarmWfGM44g==", + "extraneous": true, "dependencies": { - "ajv": "^6.12.3", - "har-schema": "^2.0.0" + "assert-plus": "^1.0.0" }, "engines": { - "node": ">=6" + "node": ">=0.10" } }, - "../../service/node_modules/has": { - "version": "1.0.3", - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/data-view-buffer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/data-view-buffer/-/data-view-buffer-1.0.1.tgz", + "integrity": "sha512-0lht7OugA5x3iJLOWFhWK/5ehONdprk0ISXqVFn/NFrDu+cuc8iADFrGQz5BnRK7LLU3JmkbXSxaqX+/mXYtUA==", + "extraneous": true, "dependencies": { - "function-bind": "^1.1.1" + "call-bind": "^1.0.6", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.1" }, "engines": { - "node": ">= 0.4.0" - } - }, - "../../service/node_modules/has-bigints": { - "version": "1.0.1", - "dev": true, - "license": "MIT", - "peer": true, + "node": ">= 0.4" + }, "funding": { "url": "https://github.com/sponsors/ljharb" } }, - "../../service/node_modules/has-color": { - "version": "0.1.7", - "license": "MIT", - "peer": true, - "engines": { - "node": ">=0.10.0" - } - }, - "../../service/node_modules/has-flag": { - "version": "4.0.0", - "license": "MIT", - "optional": true, - "peer": true, - "engines": { - "node": ">=8" - } - }, - "../../service/node_modules/has-symbols": { - "version": "1.0.3", - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/data-view-byte-length": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/data-view-byte-length/-/data-view-byte-length-1.0.1.tgz", + "integrity": "sha512-4J7wRJD3ABAzr8wP+OcIcqq2dlUKp4DVflx++hs5h5ZKydWMI6/D/fAot+yh6g2tHh8fLFTvNOaVN357NvSrOQ==", + "extraneous": true, + "dependencies": { + "call-bind": "^1.0.7", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.1" + }, "engines": { "node": ">= 0.4" }, @@ -4924,12 +5597,15 @@ "url": "https://github.com/sponsors/ljharb" } }, - "../../service/node_modules/has-tostringtag": { + "node_modules/@ngageoint/mage.service/node_modules/data-view-byte-offset": { "version": "1.0.0", - "license": "MIT", - "peer": true, + "resolved": "https://registry.npmjs.org/data-view-byte-offset/-/data-view-byte-offset-1.0.0.tgz", + "integrity": "sha512-t/Ygsytq+R995EJ5PZlD4Cu56sWa8InXySaViRzw9apusqsOO2bQP+SbYzAhR0pFKoB+43lYy8rWban9JSuXnA==", + "extraneous": true, "dependencies": { - "has-symbols": "^1.0.2" + "call-bind": "^1.0.6", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.1" }, "engines": { "node": ">= 0.4" @@ -4938,4234 +5614,5569 @@ "url": "https://github.com/sponsors/ljharb" } }, - "../../service/node_modules/has-unicode": { - "version": "2.0.1", - "license": "ISC", - "optional": true, - "peer": true - }, - "../../service/node_modules/hash-base": { - "version": "3.1.0", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/debug": { + "version": "4.3.5", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.5.tgz", + "integrity": "sha512-pt0bNEmneDIvdL1Xsd9oDQ/wrQRkXDT4AUWlNZNPKvW5x/jyO9VFXkJUP07vQ2upmw5PlaITaPKc31jK13V+jg==", "peer": true, "dependencies": { - "inherits": "^2.0.4", - "readable-stream": "^3.6.0", - "safe-buffer": "^5.2.0" + "ms": "2.1.2" }, "engines": { - "node": ">=4" + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } } }, - "../../service/node_modules/hash-base/node_modules/readable-stream": { - "version": "3.6.0", - "license": "MIT", - "peer": true, - "dependencies": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - }, + "node_modules/@ngageoint/mage.service/node_modules/decamelize": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-4.0.0.tgz", + "integrity": "sha512-9iE1PgSik9HeIIw2JO94IidnE3eBoQrFJ3w7sFuzSX4DpmZ3v5sZpUiV5Swcf6mQEF+Y0ru8Neo+p+nyh2J+hQ==", + "extraneous": true, "engines": { - "node": ">= 6" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "../../service/node_modules/hash-base/node_modules/string_decoder": { - "version": "1.3.0", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/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==", + "optional": true, "peer": true, "dependencies": { - "safe-buffer": "~5.2.0" + "mimic-response": "^3.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "../../service/node_modules/hash.js": { - "version": "1.1.7", + "node_modules/@ngageoint/mage.service/node_modules/deep-eql": { + "version": "4.1.4", + "resolved": "https://registry.npmjs.org/deep-eql/-/deep-eql-4.1.4.tgz", + "integrity": "sha512-SUwdGfqdKOwxCPeVYjwSyRpJ7Z+fhpwIAtmCUdZIWZ/YP5R9WAsyuSgpLVDi9bjWoN2LXHNss/dk3urXtdQxGg==", + "extraneous": true, "license": "MIT", - "peer": true, "dependencies": { - "inherits": "^2.0.3", - "minimalistic-assert": "^1.0.1" + "type-detect": "^4.0.0" + }, + "engines": { + "node": ">=6" } }, - "../../service/node_modules/hasha": { - "version": "3.0.0", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/deep-equal": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-2.2.3.tgz", + "integrity": "sha512-ZIwpnevOurS8bpT4192sqAowWM76JDKSHYzMLty3BZGSswgq6pBaH3DhCSW5xVAZICZyKdOBPjwww5wfgT/6PA==", + "extraneous": true, "license": "MIT", + "dependencies": { + "array-buffer-byte-length": "^1.0.0", + "call-bind": "^1.0.5", + "es-get-iterator": "^1.1.3", + "get-intrinsic": "^1.2.2", + "is-arguments": "^1.1.1", + "is-array-buffer": "^3.0.2", + "is-date-object": "^1.0.5", + "is-regex": "^1.1.4", + "is-shared-array-buffer": "^1.0.2", + "isarray": "^2.0.5", + "object-is": "^1.1.5", + "object-keys": "^1.1.1", + "object.assign": "^4.1.4", + "regexp.prototype.flags": "^1.5.1", + "side-channel": "^1.0.4", + "which-boxed-primitive": "^1.0.2", + "which-collection": "^1.0.1", + "which-typed-array": "^1.1.13" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/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==", + "optional": true, "peer": true, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/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==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/default-require-extensions": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/default-require-extensions/-/default-require-extensions-2.0.0.tgz", + "integrity": "sha512-B0n2zDIXpzLzKeoEozorDSa1cHc1t0NjmxP0zuAxbizNU2MBqYJJKYXrrFdKuQliojXynrxgd7l4ahfg/+aA5g==", + "extraneous": true, "dependencies": { - "is-stream": "^1.0.1" + "strip-bom": "^3.0.0" }, "engines": { "node": ">=4" } }, - "../../service/node_modules/he": { - "version": "1.2.0", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/define-data-property": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.4.tgz", + "integrity": "sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==", "peer": true, - "bin": { - "he": "bin/he" + "dependencies": { + "es-define-property": "^1.0.0", + "es-errors": "^1.3.0", + "gopd": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/define-properties": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.2.1.tgz", + "integrity": "sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==", + "extraneous": true, + "dependencies": { + "define-data-property": "^1.0.1", + "has-property-descriptors": "^1.0.0", + "object-keys": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "../../service/node_modules/hexoid": { + "node_modules/@ngageoint/mage.service/node_modules/delayed-stream": { "version": "1.0.0", - "license": "MIT", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==", "peer": true, "engines": { - "node": ">=8" + "node": ">=0.4.0" } }, - "../../service/node_modules/hmac-drbg": { - "version": "1.0.1", + "node_modules/@ngageoint/mage.service/node_modules/depd": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", + "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==", "license": "MIT", "peer": true, - "dependencies": { - "hash.js": "^1.0.3", - "minimalistic-assert": "^1.0.0", - "minimalistic-crypto-utils": "^1.0.1" + "engines": { + "node": ">= 0.8" } }, - "../../service/node_modules/hooks-fixed": { - "version": "2.0.2", + "node_modules/@ngageoint/mage.service/node_modules/destroy": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz", + "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==", "peer": true, "engines": { - "node": ">=0.4.0" + "node": ">= 0.8", + "npm": "1.2.8000 || >= 1.4.16" } }, - "../../service/node_modules/hosted-git-info": { - "version": "2.8.9", - "dev": true, - "license": "ISC", - "peer": true - }, - "../../service/node_modules/html-escaper": { - "version": "2.0.2", - "dev": true, - "license": "MIT", - "peer": true - }, - "../../service/node_modules/http-errors": { - "version": "1.8.1", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/detect-libc": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.0.3.tgz", + "integrity": "sha512-bwy0MGW55bG41VqxxypOsdSdGqLwXPI/focwgTYCFMbdUiBAxLg9CFzG08sz2aqzknwiX7Hkl0bQENjg8iLByw==", + "optional": true, "peer": true, - "dependencies": { - "depd": "~1.1.2", - "inherits": "2.0.4", - "setprototypeof": "1.2.0", - "statuses": ">= 1.5.0 < 2", - "toidentifier": "1.0.1" - }, "engines": { - "node": ">= 0.6" + "node": ">=8" } }, - "../../service/node_modules/http-signature": { - "version": "1.2.0", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/dezalgo": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/dezalgo/-/dezalgo-1.0.4.tgz", + "integrity": "sha512-rXSP0bf+5n0Qonsb+SVVfNfIsimO4HEtmnIpPHY8Q1UCzKlQrDMfdobr8nJOOsRgWCyMRqeSBQzmWUMq7zvVig==", "peer": true, "dependencies": { - "assert-plus": "^1.0.0", - "jsprim": "^1.2.2", - "sshpk": "^1.7.0" - }, + "asap": "^2.0.0", + "wrappy": "1" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/diff": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/diff/-/diff-5.2.0.tgz", + "integrity": "sha512-uIFDxqpRZGZ6ThOk84hEfqWoHx2devRFvpTZcTHur85vImfaxUbTW9Ryh4CpCuDnToOP1CEtXKIgytHBPVff5A==", + "extraneous": true, + "license": "BSD-3-Clause", "engines": { - "node": ">=0.8", - "npm": ">=1.3.7" + "node": ">=0.3.1" } }, - "../../service/node_modules/https-proxy-agent": { - "version": "5.0.0", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/dir-glob": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", + "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", + "extraneous": true, "dependencies": { - "agent-base": "6", - "debug": "4" + "path-type": "^4.0.0" }, "engines": { - "node": ">= 6" + "node": ">=8" } }, - "../../service/node_modules/https-proxy-agent/node_modules/debug": { - "version": "4.3.4", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/doctrine": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", + "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", + "extraneous": true, "dependencies": { - "ms": "2.1.2" + "esutils": "^2.0.2" }, "engines": { - "node": ">=6.0" - }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } + "node": ">=6.0.0" } }, - "../../service/node_modules/https-proxy-agent/node_modules/ms": { - "version": "2.1.2", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/doctypes": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/doctypes/-/doctypes-1.1.0.tgz", + "integrity": "sha512-LLBi6pEqS6Do3EKQ3J0NqHWV5hhb78Pi8vvESYwyOy2c31ZEZVdtitdzsQsKb7878PEERhzUk0ftqGhG6Mz+pQ==", "peer": true }, - "../../service/node_modules/iconv-lite": { - "version": "0.5.2", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/drange": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/drange/-/drange-1.1.1.tgz", + "integrity": "sha512-pYxfDYpued//QpnLIm4Avk7rsNtAtQkUES2cwAYSvD/wd2pKD71gN2Ebj3e7klzXwjocvE8c5vx/1fxwpqmSxA==", + "extraneous": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/dunder-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.1.tgz", + "integrity": "sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==", "license": "MIT", "peer": true, "dependencies": { - "safer-buffer": ">= 2.1.2 < 3" + "call-bind-apply-helpers": "^1.0.1", + "es-errors": "^1.3.0", + "gopd": "^1.2.0" }, "engines": { - "node": ">=0.10.0" + "node": ">= 0.4" } }, - "../../service/node_modules/ieee754": { - "version": "1.2.1", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "license": "BSD-3-Clause", + "node_modules/@ngageoint/mage.service/node_modules/duplexer": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/duplexer/-/duplexer-0.1.2.tgz", + "integrity": "sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg==", "peer": true }, - "../../service/node_modules/ignore": { - "version": "4.0.6", - "dev": true, - "license": "MIT", - "peer": true, - "engines": { - "node": ">= 4" + "node_modules/@ngageoint/mage.service/node_modules/eastasianwidth": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz", + "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/ecc-jsbn": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz", + "integrity": "sha512-eh9O+hwRHNbG4BLTjEl3nw044CkGm5X6LoaCf7LPp7UU8Qrt47JYNi6nPX8xjW97TKGKm1ouctg0QSpZe9qrnw==", + "extraneous": true, + "dependencies": { + "jsbn": "~0.1.0", + "safer-buffer": "^2.1.0" } }, - "../../service/node_modules/image-size": { - "version": "0.8.3", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/ecc-jsbn/node_modules/jsbn": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", + "integrity": "sha512-UVU9dibq2JcFWxQPA6KCqj5O42VOmAY3zQUfEKxU0KpTGXwNoCjkX1e13eHNvw/xPynt6pU0rZ1htjWTNTSXsg==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/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==", "peer": true, "dependencies": { - "queue": "6.0.1" - }, - "bin": { - "image-size": "bin/image-size.js" - }, - "engines": { - "node": ">=6.9.0" + "safe-buffer": "^5.0.1" } }, - "../../service/node_modules/immediate": { - "version": "3.0.6", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/ee-first": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", + "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==", "license": "MIT", "peer": true }, - "../../service/node_modules/import-fresh": { - "version": "3.3.0", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "optional": true, + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/encodeurl": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-2.0.0.tgz", + "integrity": "sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg==", "license": "MIT", "peer": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/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==", + "peer": true, "dependencies": { - "parent-module": "^1.0.0", - "resolve-from": "^4.0.0" + "once": "^1.4.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/error-ex": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", + "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", + "extraneous": true, + "dependencies": { + "is-arrayish": "^0.2.1" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/es-abstract": { + "version": "1.23.3", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.23.3.tgz", + "integrity": "sha512-e+HfNH61Bj1X9/jLc5v1owaLYuHdeHHSQlkhCBiTK8rBvKaULl/beGMxwrMXjpYrv4pz22BlY570vVePA2ho4A==", + "extraneous": true, + "dependencies": { + "array-buffer-byte-length": "^1.0.1", + "arraybuffer.prototype.slice": "^1.0.3", + "available-typed-arrays": "^1.0.7", + "call-bind": "^1.0.7", + "data-view-buffer": "^1.0.1", + "data-view-byte-length": "^1.0.1", + "data-view-byte-offset": "^1.0.0", + "es-define-property": "^1.0.0", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.0.0", + "es-set-tostringtag": "^2.0.3", + "es-to-primitive": "^1.2.1", + "function.prototype.name": "^1.1.6", + "get-intrinsic": "^1.2.4", + "get-symbol-description": "^1.0.2", + "globalthis": "^1.0.3", + "gopd": "^1.0.1", + "has-property-descriptors": "^1.0.2", + "has-proto": "^1.0.3", + "has-symbols": "^1.0.3", + "hasown": "^2.0.2", + "internal-slot": "^1.0.7", + "is-array-buffer": "^3.0.4", + "is-callable": "^1.2.7", + "is-data-view": "^1.0.1", + "is-negative-zero": "^2.0.3", + "is-regex": "^1.1.4", + "is-shared-array-buffer": "^1.0.3", + "is-string": "^1.0.7", + "is-typed-array": "^1.1.13", + "is-weakref": "^1.0.2", + "object-inspect": "^1.13.1", + "object-keys": "^1.1.1", + "object.assign": "^4.1.5", + "regexp.prototype.flags": "^1.5.2", + "safe-array-concat": "^1.1.2", + "safe-regex-test": "^1.0.3", + "string.prototype.trim": "^1.2.9", + "string.prototype.trimend": "^1.0.8", + "string.prototype.trimstart": "^1.0.8", + "typed-array-buffer": "^1.0.2", + "typed-array-byte-length": "^1.0.1", + "typed-array-byte-offset": "^1.0.2", + "typed-array-length": "^1.0.6", + "unbox-primitive": "^1.0.2", + "which-typed-array": "^1.1.15" }, "engines": { - "node": ">=6" + "node": ">= 0.4" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://github.com/sponsors/ljharb" } }, - "../../service/node_modules/import-fresh/node_modules/resolve-from": { - "version": "4.0.0", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/es-define-property": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.1.tgz", + "integrity": "sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==", "license": "MIT", "peer": true, "engines": { - "node": ">=4" + "node": ">= 0.4" } }, - "../../service/node_modules/imurmurhash": { - "version": "0.1.4", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/es-errors": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz", + "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==", "peer": true, "engines": { - "node": ">=0.8.19" + "node": ">= 0.4" } }, - "../../service/node_modules/inflight": { - "version": "1.0.6", - "license": "ISC", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/es-get-iterator": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/es-get-iterator/-/es-get-iterator-1.1.3.tgz", + "integrity": "sha512-sPZmqHBe6JIiTfN5q2pEi//TwxmAFHwj/XEuYjTuse78i8KxaqMTTzxPoFKuzRpDpTJ+0NAbpfenkmH2rePtuw==", + "extraneous": true, "dependencies": { - "once": "^1.3.0", - "wrappy": "1" + "call-bind": "^1.0.2", + "get-intrinsic": "^1.1.3", + "has-symbols": "^1.0.3", + "is-arguments": "^1.1.1", + "is-map": "^2.0.2", + "is-set": "^2.0.2", + "is-string": "^1.0.7", + "isarray": "^2.0.5", + "stop-iteration-iterator": "^1.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "../../service/node_modules/inherit": { - "version": "2.2.7", - "license": "MIT", - "peer": true - }, - "../../service/node_modules/inherits": { - "version": "2.0.4", - "license": "ISC", - "peer": true - }, - "../../service/node_modules/ini": { - "version": "1.3.8", - "license": "ISC", - "peer": true - }, - "../../service/node_modules/inquirer": { - "version": "8.0.0", + "node_modules/@ngageoint/mage.service/node_modules/es-object-atoms": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.1.1.tgz", + "integrity": "sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==", "license": "MIT", - "optional": true, "peer": true, "dependencies": { - "ansi-escapes": "^4.2.1", - "chalk": "^4.1.0", - "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", - "run-async": "^2.4.0", - "rxjs": "^6.6.6", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0", - "through": "^2.3.6" + "es-errors": "^1.3.0" }, "engines": { - "node": ">=8.0.0" - } - }, - "../../service/node_modules/inquirer/node_modules/ansi-regex": { - "version": "5.0.1", - "license": "MIT", - "optional": true, - "peer": true, - "engines": { - "node": ">=8" - } - }, - "../../service/node_modules/inquirer/node_modules/is-fullwidth-code-point": { - "version": "3.0.0", - "license": "MIT", - "optional": true, - "peer": true, - "engines": { - "node": ">=8" + "node": ">= 0.4" } }, - "../../service/node_modules/inquirer/node_modules/string-width": { - "version": "4.2.3", - "license": "MIT", - "optional": true, - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/es-set-tostringtag": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.0.3.tgz", + "integrity": "sha512-3T8uNMC3OQTHkFUsFq8r/BwAXLHvU/9O9mE0fBc/MY5iq/8H7ncvO947LmYA6ldWw9Uh8Yhf25zu6n7nML5QWQ==", + "extraneous": true, "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" + "get-intrinsic": "^1.2.4", + "has-tostringtag": "^1.0.2", + "hasown": "^2.0.1" }, "engines": { - "node": ">=8" + "node": ">= 0.4" } }, - "../../service/node_modules/inquirer/node_modules/strip-ansi": { - "version": "6.0.1", - "license": "MIT", - "optional": true, - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/es-to-primitive": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", + "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", + "extraneous": true, "dependencies": { - "ansi-regex": "^5.0.1" + "is-callable": "^1.1.4", + "is-date-object": "^1.0.1", + "is-symbol": "^1.0.2" }, "engines": { - "node": ">=8" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "../../service/node_modules/internal-slot": { - "version": "1.0.3", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "get-intrinsic": "^1.1.0", - "has": "^1.0.3", - "side-channel": "^1.0.4" - }, + "node_modules/@ngageoint/mage.service/node_modules/es6-error": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/es6-error/-/es6-error-4.1.1.tgz", + "integrity": "sha512-Um/+FxMr9CISWh0bi5Zv0iOD+4cFh5qLeks1qhAopKVAJw3drgKbKySikp7wGhDL0HPeaja0P5ULZrxLkniUVg==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/escalade": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.2.tgz", + "integrity": "sha512-ErCHMCae19vR8vQGe50xIsVomy19rg6gFu3+r3jkEO46suLMWBksvVyoGgQV+jOfl84ZSOSlmv6Gxa89PmTGmA==", + "extraneous": true, "engines": { - "node": ">= 0.4" + "node": ">=6" } }, - "../../service/node_modules/ip": { - "version": "1.1.5", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/escape-html": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", + "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==", "peer": true }, - "../../service/node_modules/ipaddr.js": { - "version": "1.9.1", - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/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==", + "extraneous": true, "engines": { - "node": ">= 0.10" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "../../service/node_modules/is-arguments": { - "version": "1.1.1", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/eslint": { + "version": "8.57.1", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.57.1.tgz", + "integrity": "sha512-ypowyDxpVSYpkXr9WPv2PAZCtNip1Mv5KTW0SCurXv/9iOpcrH9PaqUElksqEB6pChqHGDRCFTyrZlGhnLNGiA==", + "deprecated": "This version is no longer supported. Please see https://eslint.org/version-support for other options.", + "extraneous": true, "license": "MIT", - "peer": true, "dependencies": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" + "@eslint-community/eslint-utils": "^4.2.0", + "@eslint-community/regexpp": "^4.6.1", + "@eslint/eslintrc": "^2.1.4", + "@eslint/js": "8.57.1", + "@humanwhocodes/config-array": "^0.13.0", + "@humanwhocodes/module-importer": "^1.0.1", + "@nodelib/fs.walk": "^1.2.8", + "@ungap/structured-clone": "^1.2.0", + "ajv": "^6.12.4", + "chalk": "^4.0.0", + "cross-spawn": "^7.0.2", + "debug": "^4.3.2", + "doctrine": "^3.0.0", + "escape-string-regexp": "^4.0.0", + "eslint-scope": "^7.2.2", + "eslint-visitor-keys": "^3.4.3", + "espree": "^9.6.1", + "esquery": "^1.4.2", + "esutils": "^2.0.2", + "fast-deep-equal": "^3.1.3", + "file-entry-cache": "^6.0.1", + "find-up": "^5.0.0", + "glob-parent": "^6.0.2", + "globals": "^13.19.0", + "graphemer": "^1.4.0", + "ignore": "^5.2.0", + "imurmurhash": "^0.1.4", + "is-glob": "^4.0.0", + "is-path-inside": "^3.0.3", + "js-yaml": "^4.1.0", + "json-stable-stringify-without-jsonify": "^1.0.1", + "levn": "^0.4.1", + "lodash.merge": "^4.6.2", + "minimatch": "^3.1.2", + "natural-compare": "^1.4.0", + "optionator": "^0.9.3", + "strip-ansi": "^6.0.1", + "text-table": "^0.2.0" + }, + "bin": { + "eslint": "bin/eslint.js" }, "engines": { - "node": ">= 0.4" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "url": "https://opencollective.com/eslint" } }, - "../../service/node_modules/is-arrayish": { - "version": "0.2.1", - "dev": true, - "license": "MIT", - "peer": true - }, - "../../service/node_modules/is-bigint": { - "version": "1.0.4", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/eslint-config-prettier": { + "version": "6.15.0", + "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-6.15.0.tgz", + "integrity": "sha512-a1+kOYLR8wMGustcgAjdydMsQ2A/2ipRPwRKUmfYaSxc9ZPcrku080Ctl6zrZzZNs/U82MjSv+qKREkoq3bJaw==", + "extraneous": true, "license": "MIT", - "peer": true, "dependencies": { - "has-bigints": "^1.0.1" + "get-stdin": "^6.0.0" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "bin": { + "eslint-config-prettier-check": "bin/cli.js" + }, + "peerDependencies": { + "eslint": ">=3.14.1" } }, - "../../service/node_modules/is-binary-path": { - "version": "2.1.0", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/eslint-plugin-prettier": { + "version": "3.4.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-prettier/-/eslint-plugin-prettier-3.4.1.tgz", + "integrity": "sha512-htg25EUYUeIhKHXjOinK4BgCcDwtLHjqaxCDsMy5nbnUMkKFvIhMVCp+5GFUXQ4Nr8lBsPqtGAqBenbpFqAA2g==", + "extraneous": true, "license": "MIT", - "peer": true, "dependencies": { - "binary-extensions": "^2.0.0" + "prettier-linter-helpers": "^1.0.0" }, "engines": { - "node": ">=8" + "node": ">=6.0.0" + }, + "peerDependencies": { + "eslint": ">=5.0.0", + "prettier": ">=1.13.0" + }, + "peerDependenciesMeta": { + "eslint-config-prettier": { + "optional": true + } } }, - "../../service/node_modules/is-boolean-object": { - "version": "1.1.2", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/eslint-scope": { + "version": "7.2.2", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.2.tgz", + "integrity": "sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==", + "extraneous": true, "dependencies": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" + "esrecurse": "^4.3.0", + "estraverse": "^5.2.0" }, "engines": { - "node": ">= 0.4" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "url": "https://opencollective.com/eslint" } }, - "../../service/node_modules/is-callable": { - "version": "1.2.4", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/eslint-visitor-keys": { + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", + "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", + "extraneous": true, "engines": { - "node": ">= 0.4" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "url": "https://opencollective.com/eslint" } }, - "../../service/node_modules/is-core-module": { - "version": "2.8.1", - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/eslint/node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/eslint/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "extraneous": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/eslint/node_modules/js-yaml": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", + "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", + "extraneous": true, "dependencies": { - "has": "^1.0.3" + "argparse": "^2.0.1" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "bin": { + "js-yaml": "bin/js-yaml.js" } }, - "../../service/node_modules/is-date-object": { - "version": "1.0.5", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/eslint/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "extraneous": true, "dependencies": { - "has-tostringtag": "^1.0.0" + "brace-expansion": "^1.1.7" }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": "*" } }, - "../../service/node_modules/is-expression": { - "version": "4.0.0", - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/espree": { + "version": "9.6.1", + "resolved": "https://registry.npmjs.org/espree/-/espree-9.6.1.tgz", + "integrity": "sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==", + "extraneous": true, "dependencies": { - "acorn": "^7.1.1", - "object-assign": "^4.1.1" + "acorn": "^8.9.0", + "acorn-jsx": "^5.3.2", + "eslint-visitor-keys": "^3.4.1" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" } }, - "../../service/node_modules/is-expression/node_modules/acorn": { - "version": "7.4.1", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", + "license": "BSD-2-Clause", "peer": true, "bin": { - "acorn": "bin/acorn" + "esparse": "bin/esparse.js", + "esvalidate": "bin/esvalidate.js" }, "engines": { - "node": ">=0.4.0" + "node": ">=4" } }, - "../../service/node_modules/is-extglob": { - "version": "2.1.1", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/esquery": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.5.0.tgz", + "integrity": "sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==", + "extraneous": true, + "dependencies": { + "estraverse": "^5.1.0" + }, "engines": { - "node": ">=0.10.0" + "node": ">=0.10" } }, - "../../service/node_modules/is-fullwidth-code-point": { - "version": "1.0.0", - "devOptional": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/esrecurse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", + "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", + "extraneous": true, "dependencies": { - "number-is-nan": "^1.0.0" + "estraverse": "^5.2.0" }, "engines": { - "node": ">=0.10.0" + "node": ">=4.0" } }, - "../../service/node_modules/is-generator-function": { - "version": "1.0.10", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "has-tostringtag": "^1.0.0" - }, + "node_modules/@ngageoint/mage.service/node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "extraneous": true, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=4.0" } }, - "../../service/node_modules/is-glob": { - "version": "4.0.3", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "is-extglob": "^2.1.1" - }, + "node_modules/@ngageoint/mage.service/node_modules/esutils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", + "extraneous": true, "engines": { "node": ">=0.10.0" } }, - "../../service/node_modules/is-map": { - "version": "2.0.2", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/etag": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", + "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==", "license": "MIT", "peer": true, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "engines": { + "node": ">= 0.6" } }, - "../../service/node_modules/is-nan": { - "version": "1.3.2", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/event-stream": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/event-stream/-/event-stream-4.0.1.tgz", + "integrity": "sha512-qACXdu/9VHPBzcyhdOWR5/IahhGMf0roTeZJfzz077GwylcDd90yOHLouhmv7GJ5XzPi6ekaQWd8AvPP2nOvpA==", + "peer": true, + "dependencies": { + "duplexer": "^0.1.1", + "from": "^0.1.7", + "map-stream": "0.0.7", + "pause-stream": "^0.0.11", + "split": "^1.0.1", + "stream-combiner": "^0.2.2", + "through": "^2.3.8" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/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==", + "optional": true, + "peer": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/express": { + "version": "4.21.2", + "resolved": "https://registry.npmjs.org/express/-/express-4.21.2.tgz", + "integrity": "sha512-28HqgMZAmih1Czt9ny7qr6ek2qddF4FclbMzwhCREB6OFfH+rXAnuNCwo1/wFvrtbgsQDb4kSbX9de9lFbrXnA==", "license": "MIT", "peer": true, "dependencies": { - "call-bind": "^1.0.0", - "define-properties": "^1.1.3" + "accepts": "~1.3.8", + "array-flatten": "1.1.1", + "body-parser": "1.20.3", + "content-disposition": "0.5.4", + "content-type": "~1.0.4", + "cookie": "0.7.1", + "cookie-signature": "1.0.6", + "debug": "2.6.9", + "depd": "2.0.0", + "encodeurl": "~2.0.0", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "finalhandler": "1.3.1", + "fresh": "0.5.2", + "http-errors": "2.0.0", + "merge-descriptors": "1.0.3", + "methods": "~1.1.2", + "on-finished": "2.4.1", + "parseurl": "~1.3.3", + "path-to-regexp": "0.1.12", + "proxy-addr": "~2.0.7", + "qs": "6.13.0", + "range-parser": "~1.2.1", + "safe-buffer": "5.2.1", + "send": "0.19.0", + "serve-static": "1.16.2", + "setprototypeof": "1.2.0", + "statuses": "2.0.1", + "type-is": "~1.6.18", + "utils-merge": "1.0.1", + "vary": "~1.1.2" }, "engines": { - "node": ">= 0.4" + "node": ">= 0.10.0" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "type": "opencollective", + "url": "https://opencollective.com/express" } }, - "../../service/node_modules/is-negative-zero": { - "version": "2.0.2", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/express-session": { + "version": "1.18.1", + "resolved": "https://registry.npmjs.org/express-session/-/express-session-1.18.1.tgz", + "integrity": "sha512-a5mtTqEaZvBCL9A9aqkrtfz+3SMDhOVUnjafjo+s7A9Txkq+SVX2DLvSp1Zrv4uCXa3lMSK3viWnh9Gg07PBUA==", "license": "MIT", "peer": true, - "engines": { - "node": ">= 0.4" + "dependencies": { + "cookie": "0.7.2", + "cookie-signature": "1.0.7", + "debug": "2.6.9", + "depd": "~2.0.0", + "on-headers": "~1.0.2", + "parseurl": "~1.3.3", + "safe-buffer": "5.2.1", + "uid-safe": "~2.1.5" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "engines": { + "node": ">= 0.8.0" } }, - "../../service/node_modules/is-number": { - "version": "7.0.0", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/express-session/node_modules/cookie": { + "version": "0.7.2", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.7.2.tgz", + "integrity": "sha512-yki5XnKuf750l50uGTllt6kKILY4nQ1eNIQatoXEByZ5dWgnKqbnqmTrBE5B4N7lrMJKQ2ytWMiTO2o0v6Ew/w==", "license": "MIT", "peer": true, "engines": { - "node": ">=0.12.0" + "node": ">= 0.6" } }, - "../../service/node_modules/is-number-object": { + "node_modules/@ngageoint/mage.service/node_modules/express-session/node_modules/cookie-signature": { "version": "1.0.7", - "dev": true, + "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.7.tgz", + "integrity": "sha512-NXdYc3dLr47pBkpUCHtKSwIOQXLVn8dZEuywboCOJY/osA0wFSLlSawr3KN8qXJEyX66FcONTH8EIlVuK0yyFA==", "license": "MIT", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/express-session/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", "peer": true, "dependencies": { - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "ms": "2.0.0" } }, - "../../service/node_modules/is-object": { - "version": "1.0.2", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/express-session/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/express/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", "license": "MIT", "peer": true, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "dependencies": { + "ms": "2.0.0" } }, - "../../service/node_modules/is-promise": { - "version": "2.2.2", + "node_modules/@ngageoint/mage.service/node_modules/express/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", "license": "MIT", "peer": true }, - "../../service/node_modules/is-regex": { - "version": "1.1.4", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/extend": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", + "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/external-editor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz", + "integrity": "sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==", + "optional": true, "peer": true, "dependencies": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" + "chardet": "^0.7.0", + "iconv-lite": "^0.4.24", + "tmp": "^0.0.33" }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=4" } }, - "../../service/node_modules/is-set": { - "version": "2.0.2", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/external-editor/node_modules/iconv-lite": { + "version": "0.4.24", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", + "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", + "optional": true, "peer": true, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3" + }, + "engines": { + "node": ">=0.10.0" } }, - "../../service/node_modules/is-shared-array-buffer": { - "version": "1.0.2", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/extsprintf": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", + "integrity": "sha512-11Ndz7Nv+mvAC1j0ktTa7fAb0vLyGGX+rMHNBYQviQDGU0Hw7lhctJANqbPhu9nV9/izT/IntTgZ7Im/9LJs9g==", + "engines": [ + "node >=0.6.0" + ], + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/eyes": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/eyes/-/eyes-0.1.8.tgz", + "integrity": "sha512-GipyPsXO1anza0AOZdy69Im7hGFCNB7Y/NGjDlZGJ3GJJLtwNSb2vrzYrTYJRrRloVx7pl+bhUaTB8yiccPvFQ==", "peer": true, + "engines": { + "node": "> 0.1.90" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/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==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/fast-diff": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/fast-diff/-/fast-diff-1.3.0.tgz", + "integrity": "sha512-VxPP4NqbUjj6MaAOafWeUn2cXWLcCtljklUtZf0Ind4XQ+QPtmA0b18zZy0jIQx+ExRVCR/ZQpBmik5lXshNsw==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/fast-fifo": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/fast-fifo/-/fast-fifo-1.3.2.tgz", + "integrity": "sha512-/d9sfos4yxzpwkDkuN7k2SqFKtYNmCTzgfEpz82x34IM9/zc8KGxQoXg1liNC/izpRM/MBdt44Nmx41ZWqk+FQ==", + "extraneous": true, + "license": "MIT" + }, + "node_modules/@ngageoint/mage.service/node_modules/fast-glob": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.2.tgz", + "integrity": "sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==", + "extraneous": true, "dependencies": { - "call-bind": "^1.0.2" + "@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" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "engines": { + "node": ">=8.6.0" } }, - "../../service/node_modules/is-stream": { - "version": "1.1.0", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/fast-glob/node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "extraneous": true, + "dependencies": { + "is-glob": "^4.0.1" + }, "engines": { - "node": ">=0.10.0" + "node": ">= 6" } }, - "../../service/node_modules/is-string": { - "version": "1.0.7", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/fast-json-stable-stringify": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/fast-levenshtein": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", + "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/fast-safe-stringify": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/fast-safe-stringify/-/fast-safe-stringify-2.1.1.tgz", + "integrity": "sha512-W+KJc2dmILlPplD/H4K9l9LcAHAfPtP6BY84uVLXQ6Evcz9Lcg33Y2z1IVblT6xdY54PXYVHEv+0Wpq8Io6zkA==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/fast-xml-parser": { + "version": "4.2.5", + "resolved": "https://registry.npmjs.org/fast-xml-parser/-/fast-xml-parser-4.2.5.tgz", + "integrity": "sha512-B9/wizE4WngqQftFPmdaMYlXoJlJOYxGQOanC77fq9k8+Z0v5dDSVh+3glErdIROP//s/jgb7ZuxKfB8nVyo0g==", + "funding": [ + { + "type": "paypal", + "url": "https://paypal.me/naturalintelligence" + }, + { + "type": "github", + "url": "https://github.com/sponsors/NaturalIntelligence" + } + ], + "optional": true, "peer": true, "dependencies": { - "has-tostringtag": "^1.0.0" + "strnum": "^1.0.5" + }, + "bin": { + "fxparser": "src/cli/cli.js" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/fastq": { + "version": "1.17.1", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.17.1.tgz", + "integrity": "sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w==", + "extraneous": true, + "dependencies": { + "reusify": "^1.0.4" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/figures": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz", + "integrity": "sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==", + "optional": true, + "peer": true, + "dependencies": { + "escape-string-regexp": "^1.0.5" }, "engines": { - "node": ">= 0.4" + "node": ">=8" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "url": "https://github.com/sponsors/sindresorhus" } }, - "../../service/node_modules/is-symbol": { - "version": "1.0.4", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/figures/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "optional": true, "peer": true, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/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==", + "extraneous": true, "dependencies": { - "has-symbols": "^1.0.2" + "flat-cache": "^3.0.4" }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": "^10.12.0 || >=12.0.0" } }, - "../../service/node_modules/is-typed-array": { - "version": "1.1.8", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/file-type": { + "version": "16.5.4", + "resolved": "https://registry.npmjs.org/file-type/-/file-type-16.5.4.tgz", + "integrity": "sha512-/yFHK0aGjFEgDJjEKP0pWCplsPFPhwyfwevf/pVxiN0tmE4L9LmwWxWukdJSHdoCli4VgQLehjJtwQBnqmsKcw==", "peer": true, "dependencies": { - "available-typed-arrays": "^1.0.5", - "call-bind": "^1.0.2", - "es-abstract": "^1.18.5", - "foreach": "^2.0.5", - "has-tostringtag": "^1.0.0" + "readable-web-to-node-stream": "^3.0.0", + "strtok3": "^6.2.4", + "token-types": "^4.1.1" }, "engines": { - "node": ">= 0.4" + "node": ">=10" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "url": "https://github.com/sindresorhus/file-type?sponsor=1" } }, - "../../service/node_modules/is-typedarray": { + "node_modules/@ngageoint/mage.service/node_modules/file-uri-to-path": { "version": "1.0.0", - "dev": true, - "license": "MIT", + "resolved": "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz", + "integrity": "sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==", + "optional": true, "peer": true }, - "../../service/node_modules/is-weakmap": { - "version": "2.0.1", - "dev": true, - "license": "MIT", - "peer": true, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "../../service/node_modules/is-weakref": { + "node_modules/@ngageoint/mage.service/node_modules/fill-keys": { "version": "1.0.2", - "dev": true, - "license": "MIT", - "peer": true, + "resolved": "https://registry.npmjs.org/fill-keys/-/fill-keys-1.0.2.tgz", + "integrity": "sha512-tcgI872xXjwFF4xgQmLxi76GnwJG3g/3isB1l4/G5Z4zrbddGpBjqZCO9oEAcB5wX0Hj/5iQB3toxfO7in1hHA==", + "extraneous": true, "dependencies": { - "call-bind": "^1.0.2" + "is-object": "~1.0.1", + "merge-descriptors": "~1.0.0" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "engines": { + "node": ">=0.10.0" } }, - "../../service/node_modules/is-weakset": { - "version": "2.0.2", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/fill-range": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", + "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", + "extraneous": true, + "dependencies": { + "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/finalhandler": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.3.1.tgz", + "integrity": "sha512-6BN9trH7bp3qvnrRyzsBz+g3lZxTNZTbVO2EV1CS0WIcDbawYVdYvGflME/9QP0h0pYlCDBCTjYa9nZzMDpyxQ==", "license": "MIT", "peer": true, "dependencies": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.1.1" + "debug": "2.6.9", + "encodeurl": "~2.0.0", + "escape-html": "~1.0.3", + "on-finished": "2.4.1", + "parseurl": "~1.3.3", + "statuses": "2.0.1", + "unpipe": "~1.0.0" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "engines": { + "node": ">= 0.8" } }, - "../../service/node_modules/isarray": { - "version": "1.0.0", + "node_modules/@ngageoint/mage.service/node_modules/finalhandler/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", "license": "MIT", - "peer": true + "peer": true, + "dependencies": { + "ms": "2.0.0" + } }, - "../../service/node_modules/isexe": { + "node_modules/@ngageoint/mage.service/node_modules/finalhandler/node_modules/ms": { "version": "2.0.0", - "license": "ISC", - "peer": true - }, - "../../service/node_modules/isstream": { - "version": "0.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", "license": "MIT", "peer": true }, - "../../service/node_modules/istanbul-lib-coverage": { - "version": "2.0.5", - "dev": true, - "license": "BSD-3-Clause", - "peer": true, - "engines": { - "node": ">=6" - } - }, - "../../service/node_modules/istanbul-lib-hook": { - "version": "2.0.7", - "dev": true, - "license": "BSD-3-Clause", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/find-cache-dir": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-3.3.2.tgz", + "integrity": "sha512-wXZV5emFEjrridIgED11OoUKLxiYjAcqot/NJdAkOhlJ+vGzwhOAfcG5OX1jP+S0PcjEn8bdMJv+g2jwQ3Onig==", + "extraneous": true, + "license": "MIT", "dependencies": { - "append-transform": "^1.0.0" + "commondir": "^1.0.1", + "make-dir": "^3.0.2", + "pkg-dir": "^4.1.0" }, "engines": { - "node": ">=6" + "node": ">=8" + }, + "funding": { + "url": "https://github.com/avajs/find-cache-dir?sponsor=1" } }, - "../../service/node_modules/istanbul-lib-instrument": { - "version": "3.3.0", - "dev": true, - "license": "BSD-3-Clause", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/find-up": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "extraneous": true, "dependencies": { - "@babel/generator": "^7.4.0", - "@babel/parser": "^7.4.3", - "@babel/template": "^7.4.0", - "@babel/traverse": "^7.4.3", - "@babel/types": "^7.4.0", - "istanbul-lib-coverage": "^2.0.5", - "semver": "^6.0.0" + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" }, "engines": { - "node": ">=6" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "../../service/node_modules/istanbul-lib-instrument/node_modules/semver": { - "version": "6.3.0", - "dev": true, - "license": "ISC", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/flat": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/flat/-/flat-5.0.2.tgz", + "integrity": "sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ==", + "extraneous": true, "bin": { - "semver": "bin/semver.js" + "flat": "cli.js" } }, - "../../service/node_modules/istanbul-lib-report": { - "version": "2.0.8", - "dev": true, - "license": "BSD-3-Clause", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/flat-cache": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.2.0.tgz", + "integrity": "sha512-CYcENa+FtcUKLmhhqyctpclsq7QF38pKjZHsGNiSQF5r4FtoKDWabFDl3hzaEQMvT1LHEysw5twgLvpYYb4vbw==", + "extraneous": true, "dependencies": { - "istanbul-lib-coverage": "^2.0.5", - "make-dir": "^2.1.0", - "supports-color": "^6.1.0" + "flatted": "^3.2.9", + "keyv": "^4.5.3", + "rimraf": "^3.0.2" }, "engines": { - "node": ">=6" - } - }, - "../../service/node_modules/istanbul-lib-report/node_modules/has-flag": { - "version": "3.0.0", - "dev": true, - "license": "MIT", - "peer": true, - "engines": { - "node": ">=4" + "node": "^10.12.0 || >=12.0.0" } }, - "../../service/node_modules/istanbul-lib-report/node_modules/supports-color": { - "version": "6.1.0", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/flat-cache/node_modules/rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "deprecated": "Rimraf versions prior to v4 are no longer supported", + "extraneous": true, "dependencies": { - "has-flag": "^3.0.0" + "glob": "^7.1.3" }, - "engines": { - "node": ">=6" - } - }, - "../../service/node_modules/istanbul-lib-source-maps": { - "version": "3.0.6", - "dev": true, - "license": "BSD-3-Clause", - "peer": true, - "dependencies": { - "debug": "^4.1.1", - "istanbul-lib-coverage": "^2.0.5", - "make-dir": "^2.1.0", - "rimraf": "^2.6.3", - "source-map": "^0.6.1" + "bin": { + "rimraf": "bin.js" }, - "engines": { - "node": ">=6" + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "../../service/node_modules/istanbul-lib-source-maps/node_modules/debug": { - "version": "4.3.4", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/flatted": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.3.1.tgz", + "integrity": "sha512-X8cqMLLie7KsNUDSdzeN8FYK9rEt4Dt67OsG/DNGnYTSDBG4uFAJFBnUeiV+zCVAvwFy56IjM9sH51jVaEhNxw==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/follow-redirects": { + "version": "1.15.9", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.9.tgz", + "integrity": "sha512-gew4GsXizNgdoRyqmyfMHyAmXsZDk6mHkSxZFCzW9gwlbtOW44CDtYavM+y+72qD/Vq2l550kMF52DT8fOLJqQ==", + "extraneous": true, + "funding": [ + { + "type": "individual", + "url": "https://github.com/sponsors/RubenVerborgh" + } + ], "license": "MIT", - "peer": true, - "dependencies": { - "ms": "2.1.2" - }, "engines": { - "node": ">=6.0" + "node": ">=4.0" }, "peerDependenciesMeta": { - "supports-color": { + "debug": { "optional": true } } }, - "../../service/node_modules/istanbul-lib-source-maps/node_modules/ms": { - "version": "2.1.2", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/for-each": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.3.tgz", + "integrity": "sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==", + "extraneous": true, + "dependencies": { + "is-callable": "^1.1.3" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/foreachasync": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/foreachasync/-/foreachasync-3.0.0.tgz", + "integrity": "sha512-J+ler7Ta54FwwNcx6wQRDhTIbNeyDcARMkOcguEqnEdtm0jKvN3Li3PDAb2Du3ubJYEWfYL83XMROXdsXAXycw==", "peer": true }, - "../../service/node_modules/istanbul-lib-source-maps/node_modules/rimraf": { - "version": "2.7.1", - "dev": true, - "license": "ISC", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/foreground-child": { + "version": "1.5.6", + "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-1.5.6.tgz", + "integrity": "sha512-3TOY+4TKV0Ml83PXJQY+JFQaHNV38lzQDIzzXYg1kWdBLenGgoZhAs0CKgzI31vi2pWEpQMq/Yi4bpKwCPkw7g==", + "extraneous": true, "dependencies": { - "glob": "^7.1.3" + "cross-spawn": "^4", + "signal-exit": "^3.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/foreground-child/node_modules/cross-spawn": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-4.0.2.tgz", + "integrity": "sha512-yAXz/pA1tD8Gtg2S98Ekf/sewp3Lcp3YoFKJ4Hkp5h5yLWnKVTDU0kwjKJ8NDCYcfTLfyGkzTikst+jWypT1iA==", + "extraneous": true, + "dependencies": { + "lru-cache": "^4.0.1", + "which": "^1.2.9" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/foreground-child/node_modules/lru-cache": { + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz", + "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==", + "extraneous": true, + "dependencies": { + "pseudomap": "^1.0.2", + "yallist": "^2.1.2" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/foreground-child/node_modules/which": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "extraneous": true, + "dependencies": { + "isexe": "^2.0.0" }, "bin": { - "rimraf": "bin.js" + "which": "bin/which" } }, - "../../service/node_modules/istanbul-reports": { - "version": "2.2.7", - "dev": true, - "license": "BSD-3-Clause", + "node_modules/@ngageoint/mage.service/node_modules/forever-agent": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", + "integrity": "sha512-j0KLYPhm6zeac4lz3oJ3o65qvgQCcPubiyotZrXqEaG4hNagNYO8qdlUrX5vwqv9ohqeT/Z3j6+yW067yWWdUw==", + "extraneous": true, + "engines": { + "node": "*" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/form-data": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz", + "integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==", "peer": true, "dependencies": { - "html-escaper": "^2.0.0" + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "mime-types": "^2.1.12" }, "engines": { - "node": ">=6" + "node": ">= 6" } }, - "../../service/node_modules/jdataview": { - "version": "2.4.6", - "peer": true - }, - "../../service/node_modules/js-stringify": { - "version": "1.0.2", - "license": "MIT", - "peer": true - }, - "../../service/node_modules/js-tokens": { - "version": "4.0.0", - "dev": true, - "license": "MIT", - "peer": true - }, - "../../service/node_modules/js-yaml": { - "version": "3.4.6", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/formidable": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/formidable/-/formidable-2.1.2.tgz", + "integrity": "sha512-CM3GuJ57US06mlpQ47YcunuUZ9jpm8Vx+P2CGt2j7HpgkKZO/DJYQ0Bobim8G6PFQmK5lOqOOdUXboU+h73A4g==", "peer": true, "dependencies": { - "argparse": "^1.0.2", - "esprima": "^2.6.0", - "inherit": "^2.2.2" + "dezalgo": "^1.0.4", + "hexoid": "^1.0.0", + "once": "^1.4.0", + "qs": "^6.11.0" }, - "bin": { - "js-yaml": "bin/js-yaml.js" + "funding": { + "url": "https://ko-fi.com/tunnckoCore/commissions" } }, - "../../service/node_modules/jsbn": { - "version": "0.1.1", - "dev": true, - "license": "MIT", - "peer": true + "node_modules/@ngageoint/mage.service/node_modules/forwarded": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz", + "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==", + "peer": true, + "engines": { + "node": ">= 0.6" + } }, - "../../service/node_modules/jsesc": { - "version": "2.5.2", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/fresh": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", + "integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==", "license": "MIT", "peer": true, - "bin": { - "jsesc": "bin/jsesc" - }, "engines": { - "node": ">=4" + "node": ">= 0.6" } }, - "../../service/node_modules/json-parse-better-errors": { - "version": "1.0.2", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/from": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/from/-/from-0.1.7.tgz", + "integrity": "sha512-twe20eF1OxVxp/ML/kq2p1uc6KvFK/+vs8WjEbeKmV2He22MKm7YF2ANIt+EOqhJ5L3K/SuuPhk0hWQDjOM23g==", "peer": true }, - "../../service/node_modules/json-schema": { - "version": "0.4.0", - "dev": true, - "license": "(AFL-2.1 OR BSD-3-Clause)", + "node_modules/@ngageoint/mage.service/node_modules/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==", "peer": true }, - "../../service/node_modules/json-schema-ref-parser": { - "version": "6.1.0", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/fs-extra": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-4.0.3.tgz", + "integrity": "sha512-q6rbdDd1o2mAnQreO7YADIxf/Whx4AHBiRf6d+/cVT8h44ss+lHgxf1FemcqDnQt9X3ct4McHr+JMGlYSsK7Cg==", "peer": true, "dependencies": { - "call-me-maybe": "^1.0.1", - "js-yaml": "^3.12.1", - "ono": "^4.0.11" + "graceful-fs": "^4.1.2", + "jsonfile": "^4.0.0", + "universalify": "^0.1.0" } }, - "../../service/node_modules/json-schema-ref-parser/node_modules/esprima": { - "version": "4.0.1", - "dev": true, - "license": "BSD-2-Clause", - "peer": true, - "bin": { - "esparse": "bin/esparse.js", - "esvalidate": "bin/esvalidate.js" - }, + "node_modules/@ngageoint/mage.service/node_modules/fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/fsevents": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", + "extraneous": true, + "hasInstallScript": true, + "license": "MIT", + "os": [ + "darwin" + ], "engines": { - "node": ">=4" + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" } }, - "../../service/node_modules/json-schema-ref-parser/node_modules/js-yaml": { - "version": "3.14.1", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/function-bind": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", + "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", "peer": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/function.prototype.name": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.6.tgz", + "integrity": "sha512-Z5kx79swU5P27WEayXM1tBi5Ze/lbIyiNgU3qyXUOf9b2rgXYyF9Dy9Cx+IQv/Lc8WCG6L82zwUPpSS9hGehIg==", + "extraneous": true, "dependencies": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1", + "functions-have-names": "^1.2.3" }, - "bin": { - "js-yaml": "bin/js-yaml.js" + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "../../service/node_modules/json-schema-traverse": { - "version": "0.4.1", - "dev": true, - "license": "MIT", - "peer": true - }, - "../../service/node_modules/json-stable-stringify-without-jsonify": { - "version": "1.0.1", - "dev": true, - "license": "MIT", - "peer": true + "node_modules/@ngageoint/mage.service/node_modules/functions-have-names": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz", + "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==", + "extraneous": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, - "../../service/node_modules/json-stringify-safe": { - "version": "5.0.1", - "dev": true, - "license": "ISC", - "peer": true + "node_modules/@ngageoint/mage.service/node_modules/geojson": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/geojson/-/geojson-0.5.0.tgz", + "integrity": "sha512-/Bx5lEn+qRF4TfQ5aLu6NH+UKtvIv7Lhc487y/c8BdludrCTpiWf9wyI0RTyqg49MFefIAvFDuEi5Dfd/zgNxQ==", + "peer": true, + "engines": { + "node": ">= 0.10" + } }, - "../../service/node_modules/json2csv": { - "version": "4.5.1", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/geojson-rbush": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/geojson-rbush/-/geojson-rbush-3.2.0.tgz", + "integrity": "sha512-oVltQTXolxvsz1sZnutlSuLDEcQAKYC/uXt9zDzJJ6bu0W+baTI8LZBaTup5afzibEH4N3jlq2p+a152wlBJ7w==", "peer": true, "dependencies": { - "commander": "^2.15.1", - "jsonparse": "^1.3.1", - "lodash.get": "^4.4.2" - }, - "bin": { - "json2csv": "bin/json2csv.js" + "@turf/bbox": "*", + "@turf/helpers": "6.x", + "@turf/meta": "6.x", + "@types/geojson": "7946.0.8", + "rbush": "^3.0.1" } }, - "../../service/node_modules/json2csv/node_modules/commander": { - "version": "2.20.3", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/geojson-rbush/node_modules/@types/geojson": { + "version": "7946.0.8", + "resolved": "https://registry.npmjs.org/@types/geojson/-/geojson-7946.0.8.tgz", + "integrity": "sha512-1rkryxURpr6aWP7R786/UQOkJ3PcpQiWkAXBmdWc7ryFWqN6a4xfK7BtjXvFBKO9LjQ+MWQSWxYeZX1OApnArA==", "peer": true }, - "../../service/node_modules/jsonfile": { - "version": "4.0.0", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/geojson-stream": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/geojson-stream/-/geojson-stream-0.1.0.tgz", + "integrity": "sha512-svSg5fFXPaTiqzEBGXScA+nISaeC9rLvku2PH+wM5LToATUw2bLIrvls43ymnT9Xnp51nBPVyK9m4Af40KpJ7w==", "peer": true, - "optionalDependencies": { - "graceful-fs": "^4.1.6" + "dependencies": { + "JSONStream": "^1.0.0", + "through": "^2.3.4" } }, - "../../service/node_modules/jsonparse": { - "version": "1.3.1", - "engines": [ - "node >= 0.2.0" - ], - "license": "MIT", - "peer": true - }, - "../../service/node_modules/JSONStream": { - "version": "1.3.5", - "license": "(MIT OR Apache-2.0)", + "node_modules/@ngageoint/mage.service/node_modules/geojson-validation": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/geojson-validation/-/geojson-validation-1.0.2.tgz", + "integrity": "sha512-K5jrJ4wFvORn2pRKeg181LL0QPYuEKn2KHPvfH1m2QtFlAXFLKdseqt0XwBM3ELOY7kNM1fglRQ6ZwUQZ5S00A==", "peer": true, - "dependencies": { - "jsonparse": "^1.2.0", - "through": ">=2.2.7 <3" - }, "bin": { - "JSONStream": "bin.js" - }, + "gjv": "bin/gjv" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/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==", + "extraneous": true, + "engines": { + "node": "6.* || 8.* || >= 10.*" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/get-func-name": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/get-func-name/-/get-func-name-2.0.2.tgz", + "integrity": "sha512-8vXOvuE167CtIc3OyItco7N/dpRtBbYOsPsXCz7X/PMnlGjYjSGuZJgM1Y7mmew7BKf9BqvLX2tnOVy1BBUsxQ==", + "extraneous": true, "engines": { "node": "*" } }, - "../../service/node_modules/jsonwebtoken": { - "version": "9.0.2", + "node_modules/@ngageoint/mage.service/node_modules/get-intrinsic": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.3.0.tgz", + "integrity": "sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ==", "license": "MIT", "peer": true, "dependencies": { - "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": "^7.5.4" + "call-bind-apply-helpers": "^1.0.2", + "es-define-property": "^1.0.1", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.1.1", + "function-bind": "^1.1.2", + "get-proto": "^1.0.1", + "gopd": "^1.2.0", + "has-symbols": "^1.1.0", + "hasown": "^2.0.2", + "math-intrinsics": "^1.1.0" }, "engines": { - "node": ">=12", - "npm": ">=6" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "../../service/node_modules/jsonwebtoken/node_modules/lru-cache": { - "version": "6.0.0", - "license": "ISC", + "node_modules/@ngageoint/mage.service/node_modules/get-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/get-proto/-/get-proto-1.0.1.tgz", + "integrity": "sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==", + "license": "MIT", "peer": true, "dependencies": { - "yallist": "^4.0.0" + "dunder-proto": "^1.0.1", + "es-object-atoms": "^1.0.0" }, "engines": { - "node": ">=10" + "node": ">= 0.4" } }, - "../../service/node_modules/jsonwebtoken/node_modules/ms": { - "version": "2.1.3", - "license": "MIT", - "peer": true - }, - "../../service/node_modules/jsonwebtoken/node_modules/semver": { - "version": "7.5.4", - "license": "ISC", - "peer": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, + "node_modules/@ngageoint/mage.service/node_modules/get-stdin": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-6.0.0.tgz", + "integrity": "sha512-jp4tHawyV7+fkkSKyvjuLZswblUtz+SQKzSWnBbii16BuZksJlU1wuBYXY75r+duh/llF1ur6oNwi+2ZzjKZ7g==", + "extraneous": true, "engines": { - "node": ">=10" + "node": ">=4" } }, - "../../service/node_modules/jsprim": { - "version": "1.4.2", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/get-symbol-description": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.2.tgz", + "integrity": "sha512-g0QYk1dZBxGwk+Ngc+ltRH2IBp2f7zBkBMBJZCDerh6EhlhSR6+9irMCuT/09zD6qkarHUSn529sK/yL4S27mg==", + "extraneous": true, "dependencies": { - "assert-plus": "1.0.0", - "extsprintf": "1.3.0", - "json-schema": "0.4.0", - "verror": "1.10.0" + "call-bind": "^1.0.5", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.4" }, "engines": { - "node": ">=0.6.0" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "../../service/node_modules/jsprim/node_modules/core-util-is": { - "version": "1.0.2", - "dev": true, - "license": "MIT", - "peer": true + "node_modules/@ngageoint/mage.service/node_modules/getpass": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", + "integrity": "sha512-0fzj9JxOLfJ+XGLhR8ze3unN0KZCgZwiSSDz168VERjK8Wl8kVSdcu2kspd4s4wtAa1y/qrVRiAA0WclVsu0ng==", + "extraneous": true, + "dependencies": { + "assert-plus": "^1.0.0" + } }, - "../../service/node_modules/jsprim/node_modules/extsprintf": { - "version": "1.3.0", - "dev": true, - "engines": [ - "node >=0.6.0" - ], - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/github-from-package": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/github-from-package/-/github-from-package-0.0.0.tgz", + "integrity": "sha512-SyHy3T1v2NUXn29OsWdxmK6RwHD+vkj3v8en8AOBZ1wBQ/hCAQ5bAQTD02kW4W9tUp/3Qh6J8r9EvntiyCmOOw==", + "optional": true, "peer": true }, - "../../service/node_modules/jsprim/node_modules/verror": { - "version": "1.10.0", - "dev": true, - "engines": [ - "node >=0.6.0" - ], - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "deprecated": "Glob versions prior to v9 are no longer supported", "peer": true, "dependencies": { - "assert-plus": "^1.0.0", - "core-util-is": "1.0.2", - "extsprintf": "^1.2.0" + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "../../service/node_modules/jstransformer": { - "version": "1.0.0", - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/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==", + "extraneous": true, "dependencies": { - "is-promise": "^2.0.0", - "promise": "^7.0.1" + "is-glob": "^4.0.3" + }, + "engines": { + "node": ">=10.13.0" } }, - "../../service/node_modules/jszip": { - "version": "3.9.1", - "dev": true, - "license": "(MIT OR GPL-3.0-or-later)", + "node_modules/@ngageoint/mage.service/node_modules/glob/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", "peer": true, "dependencies": { - "lie": "~3.3.0", - "pako": "~1.0.2", - "readable-stream": "~2.3.6", - "set-immediate-shim": "~1.0.1" + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" } }, - "../../service/node_modules/jszip/node_modules/process-nextick-args": { - "version": "2.0.1", - "dev": true, - "license": "MIT", - "peer": true - }, - "../../service/node_modules/jszip/node_modules/readable-stream": { - "version": "2.3.7", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/glob/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", "peer": true, "dependencies": { - "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" + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" } }, - "../../service/node_modules/jszip/node_modules/safe-buffer": { - "version": "5.1.2", - "dev": true, - "license": "MIT", - "peer": true - }, - "../../service/node_modules/jszip/node_modules/string_decoder": { - "version": "1.1.1", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/globals": { + "version": "13.24.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.24.0.tgz", + "integrity": "sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==", + "extraneous": true, "dependencies": { - "safe-buffer": "~5.1.0" - } - }, - "../../service/node_modules/junk": { - "version": "4.0.1", - "dev": true, - "license": "MIT", - "peer": true, + "type-fest": "^0.20.2" + }, "engines": { - "node": ">=12.20" + "node": ">=8" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "../../service/node_modules/just-extend": { - "version": "4.2.1", - "dev": true, - "license": "MIT", - "peer": true - }, - "../../service/node_modules/jwa": { - "version": "1.4.1", - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/globalthis": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.4.tgz", + "integrity": "sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ==", + "extraneous": true, "dependencies": { - "buffer-equal-constant-time": "1.0.1", - "ecdsa-sig-formatter": "1.0.11", - "safe-buffer": "^5.0.1" + "define-properties": "^1.2.1", + "gopd": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "../../service/node_modules/jws": { - "version": "3.2.2", + "node_modules/@ngageoint/mage.service/node_modules/globby": { + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz", + "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==", + "extraneous": true, "license": "MIT", - "peer": true, "dependencies": { - "jwa": "^1.4.1", - "safe-buffer": "^5.0.1" + "array-union": "^2.1.0", + "dir-glob": "^3.0.1", + "fast-glob": "^3.2.9", + "ignore": "^5.2.0", + "merge2": "^1.4.1", + "slash": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "../../service/node_modules/kareem": { - "version": "1.5.0", - "license": "Apache 2.0", - "peer": true - }, - "../../service/node_modules/lazystream": { - "version": "1.0.1", + "node_modules/@ngageoint/mage.service/node_modules/gopd": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.2.0.tgz", + "integrity": "sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==", "license": "MIT", "peer": true, - "dependencies": { - "readable-stream": "^2.0.5" - }, "engines": { - "node": ">= 0.6.3" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "../../service/node_modules/lcov-parse": { - "version": "0.0.10", - "dev": true, - "license": "BSD-3-Clause", + "node_modules/@ngageoint/mage.service/node_modules/graceful-fs": { + "version": "4.2.11", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", + "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==", "peer": true }, - "../../service/node_modules/ldap-filter": { - "version": "0.2.2", - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/graphemer": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/graphemer/-/graphemer-1.4.0.tgz", + "integrity": "sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/har-schema": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz", + "integrity": "sha512-Oqluz6zhGX8cyRaTQlFMPw80bSJVG2x/cFb8ZPhUILGgHka9SsokCCOQgpveePerqidZOrT14ipqfJb7ILcW5Q==", + "extraneous": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/har-validator": { + "version": "5.1.5", + "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.5.tgz", + "integrity": "sha512-nmT2T0lljbxdQZfspsno9hgrG3Uir6Ks5afism62poxqBM6sDnMEuPmzTq8XN0OEwqKLLdh1jQI3qyE66Nzb3w==", + "deprecated": "this library is no longer supported", + "extraneous": true, "dependencies": { - "assert-plus": "0.1.5" + "ajv": "^6.12.3", + "har-schema": "^2.0.0" }, "engines": { - "node": ">=0.8" + "node": ">=6" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/has-bigints": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz", + "integrity": "sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==", + "extraneous": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "../../service/node_modules/ldap-filter/node_modules/assert-plus": { - "version": "0.1.5", + "node_modules/@ngageoint/mage.service/node_modules/has-color": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/has-color/-/has-color-0.1.7.tgz", + "integrity": "sha512-kaNz5OTAYYmt646Hkqw50/qyxP2vFnTVu5AQ1Zmk22Kk5+4Qx6BpO8+u7IKsML5fOsFk0ZT0AcCJNYwcvaLBvw==", "peer": true, "engines": { - "node": ">=0.8" + "node": ">=0.10.0" } }, - "../../service/node_modules/ldapauth-fork": { - "version": "4.3.3", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "optional": true, "peer": true, - "dependencies": { - "@types/ldapjs": "^1.0.0", - "@types/node": "*", - "bcryptjs": "^2.4.0", - "ldapjs": "^1.0.2", - "lru-cache": "^5.1.1" - }, "engines": { - "node": ">=0.8.0" + "node": ">=8" } }, - "../../service/node_modules/ldapauth-fork/node_modules/lru-cache": { - "version": "5.1.1", - "license": "ISC", + "node_modules/@ngageoint/mage.service/node_modules/has-property-descriptors": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz", + "integrity": "sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==", "peer": true, "dependencies": { - "yallist": "^3.0.2" + "es-define-property": "^1.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "../../service/node_modules/ldapauth-fork/node_modules/yallist": { - "version": "3.1.1", - "license": "ISC", - "peer": true + "node_modules/@ngageoint/mage.service/node_modules/has-proto": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.3.tgz", + "integrity": "sha512-SJ1amZAJUiZS+PhsVLf5tGydlaVB8EdFpaSO4gmiUKUOxk8qzn5AIy4ZeJUmh22znIdk/uMAUT2pl3FxzVUH+Q==", + "extraneous": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, - "../../service/node_modules/ldapjs": { - "version": "1.0.2", + "node_modules/@ngageoint/mage.service/node_modules/has-symbols": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.1.0.tgz", + "integrity": "sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==", "license": "MIT", "peer": true, - "dependencies": { - "asn1": "0.2.3", - "assert-plus": "^1.0.0", - "backoff": "^2.5.0", - "bunyan": "^1.8.3", - "dashdash": "^1.14.0", - "ldap-filter": "0.2.2", - "once": "^1.4.0", - "vasync": "^1.6.4", - "verror": "^1.8.1" - }, - "bin": { - "ldapjs-add": "bin/ldapjs-add", - "ldapjs-compare": "bin/ldapjs-compare", - "ldapjs-delete": "bin/ldapjs-delete", - "ldapjs-modify": "bin/ldapjs-modify", - "ldapjs-search": "bin/ldapjs-search" - }, "engines": { - "node": ">=0.10" + "node": ">= 0.4" }, - "optionalDependencies": { - "dtrace-provider": "~0.8" + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "../../service/node_modules/levn": { - "version": "0.3.0", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/has-tostringtag": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.2.tgz", + "integrity": "sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==", "peer": true, "dependencies": { - "prelude-ls": "~1.1.2", - "type-check": "~0.3.2" + "has-symbols": "^1.0.3" }, "engines": { - "node": ">= 0.8.0" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "../../service/node_modules/lie": { - "version": "3.3.0", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/hasha": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/hasha/-/hasha-3.0.0.tgz", + "integrity": "sha512-w0Kz8lJFBoyaurBiNrIvxPqr/gJ6fOfSkpAPOepN3oECqGJag37xPbOv57izi/KP8auHgNYxn5fXtAb+1LsJ6w==", + "extraneous": true, "dependencies": { - "immediate": "~3.0.5" + "is-stream": "^1.0.1" + }, + "engines": { + "node": ">=4" } }, - "../../service/node_modules/load-json-file": { - "version": "4.0.0", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/hasown": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", + "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", "peer": true, "dependencies": { - "graceful-fs": "^4.1.2", - "parse-json": "^4.0.0", - "pify": "^3.0.0", - "strip-bom": "^3.0.0" + "function-bind": "^1.1.2" }, "engines": { - "node": ">=4" + "node": ">= 0.4" } }, - "../../service/node_modules/lodash": { - "version": "4.17.21", - "license": "MIT", - "peer": true - }, - "../../service/node_modules/lodash.defaults": { - "version": "4.2.0", - "license": "MIT", - "peer": true - }, - "../../service/node_modules/lodash.difference": { - "version": "4.5.0", - "license": "MIT", - "peer": true - }, - "../../service/node_modules/lodash.flatten": { - "version": "4.4.0", - "license": "MIT", - "peer": true - }, - "../../service/node_modules/lodash.flattendeep": { - "version": "4.4.0", - "dev": true, - "license": "MIT", - "peer": true - }, - "../../service/node_modules/lodash.get": { - "version": "4.4.2", - "license": "MIT", - "peer": true - }, - "../../service/node_modules/lodash.includes": { - "version": "4.3.0", - "license": "MIT", - "peer": true - }, - "../../service/node_modules/lodash.isboolean": { - "version": "3.0.3", - "license": "MIT", - "peer": true - }, - "../../service/node_modules/lodash.isinteger": { - "version": "4.0.4", - "license": "MIT", - "peer": true - }, - "../../service/node_modules/lodash.isnumber": { - "version": "3.0.3", - "license": "MIT", - "peer": true - }, - "../../service/node_modules/lodash.isplainobject": { - "version": "4.0.6", - "license": "MIT", - "peer": true - }, - "../../service/node_modules/lodash.isstring": { - "version": "4.0.1", - "license": "MIT", - "peer": true - }, - "../../service/node_modules/lodash.once": { - "version": "4.1.1", - "license": "MIT", - "peer": true - }, - "../../service/node_modules/lodash.union": { - "version": "4.6.0", - "license": "MIT", - "peer": true + "node_modules/@ngageoint/mage.service/node_modules/he": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz", + "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==", + "extraneous": true, + "bin": { + "he": "bin/he" + } }, - "../../service/node_modules/log-driver": { - "version": "1.2.7", - "dev": true, - "license": "ISC", + "node_modules/@ngageoint/mage.service/node_modules/hexoid": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/hexoid/-/hexoid-1.0.0.tgz", + "integrity": "sha512-QFLV0taWQOZtvIRIAdBChesmogZrtuXvVWsFHZTk2SU+anspqZ2vMnoLg7IE1+Uk16N19APic1BuF8bC8c2m5g==", "peer": true, "engines": { - "node": ">=0.8.6" + "node": ">=8" } }, - "../../service/node_modules/log-symbols": { - "version": "3.0.0", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/hosted-git-info": { + "version": "2.8.9", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz", + "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/html-escaper": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", + "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/http-errors": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", + "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==", "license": "MIT", "peer": true, "dependencies": { - "chalk": "^2.4.2" + "depd": "2.0.0", + "inherits": "2.0.4", + "setprototypeof": "1.2.0", + "statuses": "2.0.1", + "toidentifier": "1.0.1" }, "engines": { - "node": ">=8" + "node": ">= 0.8" } }, - "../../service/node_modules/log-symbols/node_modules/ansi-styles": { - "version": "3.2.1", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/http-signature": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", + "integrity": "sha512-CAbnr6Rz4CYQkLYUtSNXxQPUH2gK8f3iWexVlsnMeD+GjlsQ0Xsy1cOX+mN3dtxYomRy21CiOzU8Uhw6OwncEQ==", + "extraneous": true, "dependencies": { - "color-convert": "^1.9.0" + "assert-plus": "^1.0.0", + "jsprim": "^1.2.2", + "sshpk": "^1.7.0" }, "engines": { - "node": ">=4" + "node": ">=0.8", + "npm": ">=1.3.7" } }, - "../../service/node_modules/log-symbols/node_modules/chalk": { - "version": "2.4.2", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/https-proxy-agent": { + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.6.tgz", + "integrity": "sha512-vK9P5/iUfdl95AI+JVyUuIcVtd4ofvtrOr3HNtM2yxC9bnMbEdp3x01OhQNnjb8IJYi38VlTE3mBXwcfvywuSw==", + "extraneous": true, "license": "MIT", - "peer": true, "dependencies": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" + "agent-base": "^7.1.2", + "debug": "4" }, "engines": { - "node": ">=4" + "node": ">= 14" } }, - "../../service/node_modules/log-symbols/node_modules/color-convert": { - "version": "1.9.3", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/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==", + "extraneous": true, "license": "MIT", - "peer": true, "dependencies": { - "color-name": "1.1.3" + "safer-buffer": ">= 2.1.2 < 3.0.0" + }, + "engines": { + "node": ">=0.10.0" } }, - "../../service/node_modules/log-symbols/node_modules/color-name": { - "version": "1.1.3", - "dev": true, - "license": "MIT", - "peer": true - }, - "../../service/node_modules/log-symbols/node_modules/has-flag": { - "version": "3.0.0", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/ieee754": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", + "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/ignore": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.1.tgz", + "integrity": "sha512-5Fytz/IraMjqpwfd34ke28PTVMjZjJG2MPn5t7OE4eUCUNf8BAa7b5WUS9/Qvr6mwOQS7Mk6vdsMno5he+T8Xw==", + "extraneous": true, "engines": { - "node": ">=4" + "node": ">= 4" } }, - "../../service/node_modules/log-symbols/node_modules/supports-color": { - "version": "5.5.0", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/image-size": { + "version": "0.8.3", + "resolved": "https://registry.npmjs.org/image-size/-/image-size-0.8.3.tgz", + "integrity": "sha512-SMtq1AJ+aqHB45c3FsB4ERK0UCiA2d3H1uq8s+8T0Pf8A3W4teyBQyaFaktH6xvZqh+npwlKU7i4fJo0r7TYTg==", "peer": true, "dependencies": { - "has-flag": "^3.0.0" + "queue": "6.0.1" + }, + "bin": { + "image-size": "bin/image-size.js" }, "engines": { - "node": ">=4" + "node": ">=6.9.0" } }, - "../../service/node_modules/lolex": { - "version": "4.2.0", - "dev": true, - "license": "BSD-3-Clause", - "peer": true + "node_modules/@ngageoint/mage.service/node_modules/immediate": { + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/immediate/-/immediate-3.0.6.tgz", + "integrity": "sha512-XXOFtyqDjNDAQxVfYxuF7g9Il/IbWmmlQg2MYKOH8ExIT1qg6xc4zyS3HaEEATgs1btfzxq15ciUiY7gjSXRGQ==", + "extraneous": true }, - "../../service/node_modules/loupe": { - "version": "2.3.4", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/import-fresh": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", + "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", + "extraneous": true, "dependencies": { - "get-func-name": "^2.0.0" + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "../../service/node_modules/lru-cache": { - "version": "4.1.5", - "license": "ISC", - "peer": true, - "dependencies": { - "pseudomap": "^1.0.2", - "yallist": "^2.1.2" + "node_modules/@ngageoint/mage.service/node_modules/imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", + "extraneous": true, + "engines": { + "node": ">=0.8.19" } }, - "../../service/node_modules/lru-cache/node_modules/yallist": { - "version": "2.1.2", - "license": "ISC", - "peer": true - }, - "../../service/node_modules/make-dir": { - "version": "2.1.0", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "pify": "^4.0.1", - "semver": "^5.6.0" - }, + "node_modules/@ngageoint/mage.service/node_modules/indent-string": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-5.0.0.tgz", + "integrity": "sha512-m6FAo/spmsW2Ab2fU35JTYwtOKa2yAwXSwgjSv1TJzh4Mh7mC3lzAOVLBprb72XsTrgkEIsl7YrFNAiDiRhIGg==", + "extraneous": true, "engines": { - "node": ">=6" + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "../../service/node_modules/make-dir/node_modules/pify": { - "version": "4.0.1", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "deprecated": "This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.", "peer": true, - "engines": { - "node": ">=6" + "dependencies": { + "once": "^1.3.0", + "wrappy": "1" } }, - "../../service/node_modules/map-stream": { - "version": "0.0.7", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", "peer": true }, - "../../service/node_modules/md5-file": { - "version": "5.0.0", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/ini": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", + "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==", + "optional": true, + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/inquirer": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-8.0.0.tgz", + "integrity": "sha512-ON8pEJPPCdyjxj+cxsYRe6XfCJepTxANdNnTebsTuQgXpRyZRRT9t4dJwjRubgmvn20CLSEnozRUayXyM9VTXA==", + "optional": true, "peer": true, - "bin": { - "md5-file": "cli.js" + "dependencies": { + "ansi-escapes": "^4.2.1", + "chalk": "^4.1.0", + "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", + "run-async": "^2.4.0", + "rxjs": "^6.6.6", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0", + "through": "^2.3.6" }, "engines": { - "node": ">=10.13.0" + "node": ">=8.0.0" } }, - "../../service/node_modules/md5.js": { - "version": "1.3.5", - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/internal-slot": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.7.tgz", + "integrity": "sha512-NGnrKwXzSms2qUUih/ILZ5JBqNTSa1+ZmP6flaIp6KmSElgE9qdndzS3cqjrDovwFdmwsGsLdeFgB6suw+1e9g==", + "extraneous": true, "dependencies": { - "hash-base": "^3.0.0", - "inherits": "^2.0.1", - "safe-buffer": "^5.1.2" + "es-errors": "^1.3.0", + "hasown": "^2.0.0", + "side-channel": "^1.0.4" + }, + "engines": { + "node": ">= 0.4" } }, - "../../service/node_modules/media-typer": { - "version": "0.3.0", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/ip-address": { + "version": "9.0.5", + "resolved": "https://registry.npmjs.org/ip-address/-/ip-address-9.0.5.tgz", + "integrity": "sha512-zHtQzGojZXTwZTHQqra+ETKd4Sn3vgi7uBmlPoXVWZqYvuKmtI0l/VZTjqGmJY9x88GGOaZ9+G9ES8hC4T4X8g==", "peer": true, + "dependencies": { + "jsbn": "1.1.0", + "sprintf-js": "^1.1.3" + }, "engines": { - "node": ">= 0.6" + "node": ">= 12" } }, - "../../service/node_modules/memory-pager": { - "version": "1.5.0", - "dev": true, - "license": "MIT", - "optional": true, + "node_modules/@ngageoint/mage.service/node_modules/ip-address/node_modules/sprintf-js": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.1.3.tgz", + "integrity": "sha512-Oo+0REFV59/rz3gfJNKQiBlwfHaSESl1pcGyABQsnnIfWOFt6JNj5gCog2U6MLZ//IGYD+nA8nI+mTShREReaA==", "peer": true }, - "../../service/node_modules/memorystream": { - "version": "0.3.1", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/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==", "peer": true, "engines": { - "node": ">= 0.10.0" + "node": ">= 0.10" } }, - "../../service/node_modules/meow": { - "version": "12.1.1", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/is-arguments": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-arguments/-/is-arguments-1.1.1.tgz", + "integrity": "sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA==", + "extraneous": true, + "dependencies": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + }, "engines": { - "node": ">=16.10" + "node": ">= 0.4" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://github.com/sponsors/ljharb" } }, - "../../service/node_modules/merge-descriptors": { - "version": "1.0.1", - "license": "MIT", - "peer": true + "node_modules/@ngageoint/mage.service/node_modules/is-array-buffer": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.4.tgz", + "integrity": "sha512-wcjaerHw0ydZwfhiKbXJWLDY8A7yV7KhjQOpb83hGgGfId/aQa4TOvwyzn2PuswW2gPCYEL/nEAiSVpdOj1lXw==", + "extraneous": true, + "dependencies": { + "call-bind": "^1.0.2", + "get-intrinsic": "^1.2.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, - "../../service/node_modules/merge-source-map": { - "version": "1.1.0", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/is-arrayish": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/is-bigint": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz", + "integrity": "sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==", + "extraneous": true, "dependencies": { - "source-map": "^0.6.1" + "has-bigints": "^1.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "../../service/node_modules/merge2": { - "version": "1.4.1", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/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==", + "extraneous": true, "license": "MIT", - "peer": true, + "dependencies": { + "binary-extensions": "^2.0.0" + }, "engines": { - "node": ">= 8" + "node": ">=8" } }, - "../../service/node_modules/methods": { + "node_modules/@ngageoint/mage.service/node_modules/is-boolean-object": { "version": "1.1.2", - "license": "MIT", - "peer": true, + "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz", + "integrity": "sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==", + "extraneous": true, + "dependencies": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + }, "engines": { - "node": ">= 0.6" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "../../service/node_modules/mgrs": { - "version": "1.0.0", - "license": "MIT", - "peer": true + "node_modules/@ngageoint/mage.service/node_modules/is-callable": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz", + "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==", + "extraneous": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, - "../../service/node_modules/micromatch": { - "version": "4.0.5", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/is-core-module": { + "version": "2.14.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.14.0.tgz", + "integrity": "sha512-a5dFJih5ZLYlRtDc0dZWP7RiKr6xIKzmn/oAYCDvdLThadVgyJwlaoQPmRtMSpz+rk0OGAgIu+TcM9HUF0fk1A==", "peer": true, "dependencies": { - "braces": "^3.0.2", - "picomatch": "^2.3.1" + "hasown": "^2.0.2" }, "engines": { - "node": ">=8.6" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "../../service/node_modules/mime-db": { - "version": "1.52.0", - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/is-data-view": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-data-view/-/is-data-view-1.0.1.tgz", + "integrity": "sha512-AHkaJrsUVW6wq6JS8y3JnM/GJF/9cf+k20+iDzlSaJrinEo5+7vRiteOSwBhHRiAyQATN1AmY4hwzxJKPmYf+w==", + "extraneous": true, + "dependencies": { + "is-typed-array": "^1.1.13" + }, "engines": { - "node": ">= 0.6" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "../../service/node_modules/mime-types": { - "version": "2.1.35", - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/is-date-object": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz", + "integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==", + "extraneous": true, "dependencies": { - "mime-db": "1.52.0" + "has-tostringtag": "^1.0.0" }, "engines": { - "node": ">= 0.6" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "../../service/node_modules/mimic-fn": { - "version": "2.1.0", - "devOptional": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/is-expression": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/is-expression/-/is-expression-4.0.0.tgz", + "integrity": "sha512-zMIXX63sxzG3XrkHkrAPvm/OVZVSCPNkwMHU8oTX7/U3AL78I0QXCEICXUM13BIa8TYGZ68PiTKfQz3yaTNr4A==", "peer": true, - "engines": { - "node": ">=6" + "dependencies": { + "acorn": "^7.1.1", + "object-assign": "^4.1.1" } }, - "../../service/node_modules/mimic-response": { - "version": "3.1.0", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/is-expression/node_modules/acorn": { + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", + "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", "peer": true, - "engines": { - "node": ">=10" + "bin": { + "acorn": "bin/acorn" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "engines": { + "node": ">=0.4.0" } }, - "../../service/node_modules/minimalistic-assert": { - "version": "1.0.1", - "license": "ISC", - "peer": true - }, - "../../service/node_modules/minimalistic-crypto-utils": { - "version": "1.0.1", - "license": "MIT", - "peer": true - }, - "../../service/node_modules/minimatch": { - "version": "3.1.2", - "license": "ISC", - "peer": true, - "dependencies": { - "brace-expansion": "^1.1.7" - }, + "node_modules/@ngageoint/mage.service/node_modules/is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", + "extraneous": true, "engines": { - "node": "*" + "node": ">=0.10.0" } }, - "../../service/node_modules/minimist": { - "version": "1.2.0", - "license": "MIT", - "peer": true - }, - "../../service/node_modules/minipass": { - "version": "5.0.0", - "license": "ISC", + "node_modules/@ngageoint/mage.service/node_modules/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==", "optional": true, "peer": true, "engines": { "node": ">=8" } }, - "../../service/node_modules/minizlib": { - "version": "2.1.2", - "license": "MIT", - "optional": true, - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/is-glob": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "extraneous": true, "dependencies": { - "minipass": "^3.0.0", - "yallist": "^4.0.0" + "is-extglob": "^2.1.1" }, "engines": { - "node": ">= 8" + "node": ">=0.10.0" } }, - "../../service/node_modules/minizlib/node_modules/minipass": { - "version": "3.3.6", - "license": "ISC", - "optional": true, - "peer": true, - "dependencies": { - "yallist": "^4.0.0" - }, + "node_modules/@ngageoint/mage.service/node_modules/is-map": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/is-map/-/is-map-2.0.3.tgz", + "integrity": "sha512-1Qed0/Hr2m+YqxnM09CjA2d/i6YZNfF6R2oRAOj36eUdS6qIV/huPJNSEpKbupewFs+ZsJlxsjjPbc0/afW6Lw==", + "extraneous": true, "engines": { - "node": ">=8" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "../../service/node_modules/mkdirp": { - "version": "1.0.4", - "license": "MIT", - "optional": true, - "peer": true, - "bin": { - "mkdirp": "bin/cmd.js" - }, + "node_modules/@ngageoint/mage.service/node_modules/is-negative-zero": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.3.tgz", + "integrity": "sha512-5KoIu2Ngpyek75jXodFvnafB6DJgr3u8uuK0LEZJjrU19DrMD3EVERaR8sjz8CCGgpZvxPl9SuE1GMVPFHx1mw==", + "extraneous": true, "engines": { - "node": ">=10" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "../../service/node_modules/mkdirp-classic": { - "version": "0.5.3", - "license": "MIT", - "peer": true + "node_modules/@ngageoint/mage.service/node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "extraneous": true, + "engines": { + "node": ">=0.12.0" + } }, - "../../service/node_modules/mocha": { - "version": "7.2.0", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/is-number-object": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.7.tgz", + "integrity": "sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==", + "extraneous": true, "dependencies": { - "ansi-colors": "3.2.3", - "browser-stdout": "1.3.1", - "chokidar": "3.3.0", - "debug": "3.2.6", - "diff": "3.5.0", - "escape-string-regexp": "1.0.5", - "find-up": "3.0.0", - "glob": "7.1.3", - "growl": "1.10.5", - "he": "1.2.0", - "js-yaml": "3.13.1", - "log-symbols": "3.0.0", - "minimatch": "3.0.4", - "mkdirp": "0.5.5", - "ms": "2.1.1", - "node-environment-flags": "1.0.6", - "object.assign": "4.1.0", - "strip-json-comments": "2.0.1", - "supports-color": "6.0.0", - "which": "1.3.1", - "wide-align": "1.1.3", - "yargs": "13.3.2", - "yargs-parser": "13.1.2", - "yargs-unparser": "1.6.0" - }, - "bin": { - "_mocha": "bin/_mocha", - "mocha": "bin/mocha" + "has-tostringtag": "^1.0.0" }, "engines": { - "node": ">= 8.10.0" + "node": ">= 0.4" }, "funding": { - "type": "opencollective", - "url": "https://opencollective.com/mochajs" + "url": "https://github.com/sponsors/ljharb" } }, - "../../service/node_modules/mocha/node_modules/ansi-regex": { - "version": "4.1.1", - "dev": true, - "license": "MIT", - "peer": true, - "engines": { - "node": ">=6" + "node_modules/@ngageoint/mage.service/node_modules/is-object": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-object/-/is-object-1.0.2.tgz", + "integrity": "sha512-2rRIahhZr2UWb45fIOuvZGpFtz0TyOZLf32KxBbSoUCeZR495zCKlWUKKUByk3geS2eAs7ZAABt0Y/Rx0GiQGA==", + "extraneous": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "../../service/node_modules/mocha/node_modules/camelcase": { - "version": "5.3.1", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/is-path-inside": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", + "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==", + "extraneous": true, "engines": { - "node": ">=6" + "node": ">=8" } }, - "../../service/node_modules/mocha/node_modules/cliui": { - "version": "5.0.0", - "dev": true, - "license": "ISC", - "peer": true, - "dependencies": { - "string-width": "^3.1.0", - "strip-ansi": "^5.2.0", - "wrap-ansi": "^5.1.0" + "node_modules/@ngageoint/mage.service/node_modules/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==", + "extraneous": true, + "engines": { + "node": ">=8" } }, - "../../service/node_modules/mocha/node_modules/cliui/node_modules/string-width": { - "version": "3.1.0", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/is-promise": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-2.2.2.tgz", + "integrity": "sha512-+lP4/6lKUBfQjZ2pdxThZvLUAafmZb8OAxFb8XXtiQmS35INgr85hdOGoEs124ez1FCnZJt6jau/T+alh58QFQ==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/is-regex": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz", + "integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==", "peer": true, "dependencies": { - "emoji-regex": "^7.0.1", - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^5.1.0" + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" }, "engines": { - "node": ">=6" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "../../service/node_modules/mocha/node_modules/debug": { - "version": "3.2.6", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/is-set": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/is-set/-/is-set-2.0.3.tgz", + "integrity": "sha512-iPAjerrse27/ygGLxw+EBR9agv9Y6uLeYVJMu+QNCoouJ1/1ri0mGrcWpfCqFZuzzx3WjtwxG098X+n4OuRkPg==", + "extraneous": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/is-shared-array-buffer": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.3.tgz", + "integrity": "sha512-nA2hv5XIhLR3uVzDDfCIknerhx8XUKnstuOERPNNIinXG7v9u+ohXF67vxm4TPTEPU6lm61ZkwP3c9PCB97rhg==", + "extraneous": true, "dependencies": { - "ms": "^2.1.1" + "call-bind": "^1.0.7" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "../../service/node_modules/mocha/node_modules/emoji-regex": { - "version": "7.0.3", - "dev": true, - "license": "MIT", - "peer": true + "node_modules/@ngageoint/mage.service/node_modules/is-stream": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", + "integrity": "sha512-uQPm8kcs47jx38atAcWTVxyltQYoPT68y9aWYdV6yWXSyW8mzSat0TL6CiWdZeCdF3KrAvpVtnHbTv4RN+rqdQ==", + "extraneous": true, + "engines": { + "node": ">=0.10.0" + } }, - "../../service/node_modules/mocha/node_modules/esprima": { - "version": "4.0.1", - "dev": true, - "license": "BSD-2-Clause", - "peer": true, - "bin": { - "esparse": "bin/esparse.js", - "esvalidate": "bin/esvalidate.js" + "node_modules/@ngageoint/mage.service/node_modules/is-string": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz", + "integrity": "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==", + "extraneous": true, + "dependencies": { + "has-tostringtag": "^1.0.0" }, "engines": { - "node": ">=4" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "../../service/node_modules/mocha/node_modules/find-up": { - "version": "3.0.0", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/is-symbol": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz", + "integrity": "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==", + "extraneous": true, "dependencies": { - "locate-path": "^3.0.0" + "has-symbols": "^1.0.2" }, "engines": { - "node": ">=6" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "../../service/node_modules/mocha/node_modules/glob": { - "version": "7.1.3", - "dev": true, - "license": "ISC", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/is-typed-array": { + "version": "1.1.13", + "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.13.tgz", + "integrity": "sha512-uZ25/bUAlUY5fR4OKT4rZQEBrzQWYV9ZJYGGsUmEJ6thodVJ1HX64ePQ6Z0qPWP+m+Uq6e9UugrE38jeYsDSMw==", + "extraneous": true, "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" + "which-typed-array": "^1.1.14" }, "engines": { - "node": "*" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "../../service/node_modules/mocha/node_modules/has-flag": { - "version": "3.0.0", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/is-typedarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", + "integrity": "sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/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==", + "extraneous": true, "engines": { - "node": ">=4" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "../../service/node_modules/mocha/node_modules/is-fullwidth-code-point": { - "version": "2.0.0", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/is-weakmap": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/is-weakmap/-/is-weakmap-2.0.2.tgz", + "integrity": "sha512-K5pXYOm9wqY1RgjpL3YTkF39tni1XajUIkawTLUo9EZEVUFga5gSQJF8nNS7ZwJQ02y+1YCNYcMh+HIf1ZqE+w==", + "extraneous": true, "engines": { - "node": ">=4" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "../../service/node_modules/mocha/node_modules/js-yaml": { - "version": "3.13.1", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/is-weakref": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.2.tgz", + "integrity": "sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==", + "extraneous": true, "dependencies": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" + "call-bind": "^1.0.2" }, - "bin": { - "js-yaml": "bin/js-yaml.js" + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "../../service/node_modules/mocha/node_modules/locate-path": { - "version": "3.0.0", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/is-weakset": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/is-weakset/-/is-weakset-2.0.3.tgz", + "integrity": "sha512-LvIm3/KWzS9oRFHugab7d+M/GcBXuXX5xZkzPmN+NxihdQlZUQ4dWuSV1xR/sq6upL1TJEDrfBgRepHFdBtSNQ==", + "extraneous": true, "dependencies": { - "p-locate": "^3.0.0", - "path-exists": "^3.0.0" + "call-bind": "^1.0.7", + "get-intrinsic": "^1.2.4" }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/isarray": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", + "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/isstream": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", + "integrity": "sha512-Yljz7ffyPbrLpLngrMtZ7NduUgVvi6wG9RJ9IUcyCd59YQ911PBJphODUcbOVbqYfxe1wuYf/LJ8PauMRwsM/g==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/istanbul-lib-coverage": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.5.tgz", + "integrity": "sha512-8aXznuEPCJvGnMSRft4udDRDtb1V3pkQkMMI5LI+6HuQz5oQ4J2UFn1H82raA3qJtyOLkkwVqICBQkjnGtn5mA==", + "extraneous": true, "engines": { "node": ">=6" } }, - "../../service/node_modules/mocha/node_modules/minimatch": { - "version": "3.0.4", - "dev": true, - "license": "ISC", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/istanbul-lib-hook": { + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/istanbul-lib-hook/-/istanbul-lib-hook-2.0.7.tgz", + "integrity": "sha512-vrRztU9VRRFDyC+aklfLoeXyNdTfga2EI3udDGn4cZ6fpSXpHLV9X6CHvfoMCPtggg8zvDDmC4b9xfu0z6/llA==", + "extraneous": true, "dependencies": { - "brace-expansion": "^1.1.7" + "append-transform": "^1.0.0" }, "engines": { - "node": "*" + "node": ">=6" } }, - "../../service/node_modules/mocha/node_modules/minimist": { - "version": "1.2.6", - "dev": true, - "license": "MIT", - "peer": true - }, - "../../service/node_modules/mocha/node_modules/mkdirp": { - "version": "0.5.5", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/istanbul-lib-instrument": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-3.3.0.tgz", + "integrity": "sha512-5nnIN4vo5xQZHdXno/YDXJ0G+I3dAm4XgzfSVTPLQpj/zAV2dV6Juy0yaf10/zrJOJeHoN3fraFe+XRq2bFVZA==", + "extraneous": true, "dependencies": { - "minimist": "^1.2.5" + "@babel/generator": "^7.4.0", + "@babel/parser": "^7.4.3", + "@babel/template": "^7.4.0", + "@babel/traverse": "^7.4.3", + "@babel/types": "^7.4.0", + "istanbul-lib-coverage": "^2.0.5", + "semver": "^6.0.0" }, - "bin": { - "mkdirp": "bin/cmd.js" + "engines": { + "node": ">=6" } }, - "../../service/node_modules/mocha/node_modules/ms": { - "version": "2.1.1", - "dev": true, - "license": "MIT", - "peer": true - }, - "../../service/node_modules/mocha/node_modules/object.assign": { - "version": "4.1.0", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "define-properties": "^1.1.2", - "function-bind": "^1.1.1", - "has-symbols": "^1.0.0", - "object-keys": "^1.0.11" - }, - "engines": { - "node": ">= 0.4" + "node_modules/@ngageoint/mage.service/node_modules/istanbul-lib-instrument/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "extraneous": true, + "bin": { + "semver": "bin/semver.js" } }, - "../../service/node_modules/mocha/node_modules/p-limit": { - "version": "2.3.0", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/istanbul-lib-report": { + "version": "2.0.8", + "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-2.0.8.tgz", + "integrity": "sha512-fHBeG573EIihhAblwgxrSenp0Dby6tJMFR/HvlerBsrCTD5bkUuoNtn3gVh29ZCS824cGGBPn7Sg7cNk+2xUsQ==", + "extraneous": true, "dependencies": { - "p-try": "^2.0.0" + "istanbul-lib-coverage": "^2.0.5", + "make-dir": "^2.1.0", + "supports-color": "^6.1.0" }, "engines": { "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" } }, - "../../service/node_modules/mocha/node_modules/p-locate": { + "node_modules/@ngageoint/mage.service/node_modules/istanbul-lib-report/node_modules/has-flag": { "version": "3.0.0", - "dev": true, - "license": "MIT", - "peer": true, + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "extraneous": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/istanbul-lib-report/node_modules/make-dir": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", + "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", + "extraneous": true, "dependencies": { - "p-limit": "^2.0.0" + "pify": "^4.0.1", + "semver": "^5.6.0" }, "engines": { "node": ">=6" } }, - "../../service/node_modules/mocha/node_modules/p-try": { - "version": "2.2.0", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/istanbul-lib-report/node_modules/pify": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", + "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", + "extraneous": true, "engines": { "node": ">=6" } }, - "../../service/node_modules/mocha/node_modules/strip-ansi": { - "version": "5.2.0", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/istanbul-lib-report/node_modules/semver": { + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", + "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", + "extraneous": true, + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/istanbul-lib-report/node_modules/supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "extraneous": true, "dependencies": { - "ansi-regex": "^4.1.0" + "has-flag": "^3.0.0" }, "engines": { "node": ">=6" } }, - "../../service/node_modules/mocha/node_modules/supports-color": { - "version": "6.0.0", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/istanbul-lib-source-maps": { + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-3.0.6.tgz", + "integrity": "sha512-R47KzMtDJH6X4/YW9XTx+jrLnZnscW4VpNN+1PViSYTejLVPWv7oov+Duf8YQSPyVRUvueQqz1TcsC6mooZTXw==", + "extraneous": true, "dependencies": { - "has-flag": "^3.0.0" + "debug": "^4.1.1", + "istanbul-lib-coverage": "^2.0.5", + "make-dir": "^2.1.0", + "rimraf": "^2.6.3", + "source-map": "^0.6.1" }, "engines": { "node": ">=6" } }, - "../../service/node_modules/mocha/node_modules/wide-align": { - "version": "1.1.3", - "dev": true, - "license": "ISC", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/istanbul-lib-source-maps/node_modules/make-dir": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", + "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", + "extraneous": true, "dependencies": { - "string-width": "^1.0.2 || 2" + "pify": "^4.0.1", + "semver": "^5.6.0" + }, + "engines": { + "node": ">=6" } }, - "../../service/node_modules/mocha/node_modules/yargs": { - "version": "13.3.2", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "cliui": "^5.0.0", - "find-up": "^3.0.0", - "get-caller-file": "^2.0.1", - "require-directory": "^2.1.1", - "require-main-filename": "^2.0.0", - "set-blocking": "^2.0.0", - "string-width": "^3.0.0", - "which-module": "^2.0.0", - "y18n": "^4.0.0", - "yargs-parser": "^13.1.2" + "node_modules/@ngageoint/mage.service/node_modules/istanbul-lib-source-maps/node_modules/pify": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", + "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", + "extraneous": true, + "engines": { + "node": ">=6" } }, - "../../service/node_modules/mocha/node_modules/yargs-parser": { - "version": "13.1.2", - "dev": true, - "license": "ISC", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/istanbul-lib-source-maps/node_modules/rimraf": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", + "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", + "deprecated": "Rimraf versions prior to v4 are no longer supported", + "extraneous": true, "dependencies": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" } }, - "../../service/node_modules/mocha/node_modules/yargs/node_modules/string-width": { - "version": "3.1.0", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/istanbul-lib-source-maps/node_modules/semver": { + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", + "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", + "extraneous": true, + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/istanbul-reports": { + "version": "2.2.7", + "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-2.2.7.tgz", + "integrity": "sha512-uu1F/L1o5Y6LzPVSVZXNOoD/KXpJue9aeLRd0sM9uMXfZvzomB0WxVamWb5ue8kA2vVWEmW7EG+A5n3f1kqHKg==", + "extraneous": true, "dependencies": { - "emoji-regex": "^7.0.1", - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^5.1.0" + "html-escaper": "^2.0.0" }, "engines": { "node": ">=6" } }, - "../../service/node_modules/mock-fs": { - "version": "4.13.0", - "dev": true, - "license": "MIT", - "peer": true - }, - "../../service/node_modules/module-not-found-error": { - "version": "1.0.1", - "dev": true, - "license": "MIT", - "peer": true - }, - "../../service/node_modules/moment": { - "version": "2.29.4", - "license": "MIT", - "peer": true, - "engines": { - "node": "*" - } - }, - "../../service/node_modules/mongodb": { - "version": "2.2.36", - "license": "Apache-2.0", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/jackspeak": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-3.4.0.tgz", + "integrity": "sha512-JVYhQnN59LVPFCEcVa2C3CrEKYacvjRfqIQl+h8oi91aLYQVWRYbxjPcv1bUiUy/kLmQaANrYfNMCO3kuEDHfw==", + "extraneous": true, "dependencies": { - "es6-promise": "3.2.1", - "mongodb-core": "2.1.20", - "readable-stream": "2.2.7" + "@isaacs/cliui": "^8.0.2" }, "engines": { - "node": ">=0.10.3" + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + }, + "optionalDependencies": { + "@pkgjs/parseargs": "^0.11.0" } }, - "../../service/node_modules/mongodb-connection-string-url": { - "version": "2.5.2", - "dev": true, - "license": "Apache-2.0", - "peer": true, - "dependencies": { - "@types/whatwg-url": "^8.2.1", - "whatwg-url": "^11.0.0" - } + "node_modules/@ngageoint/mage.service/node_modules/js-stringify": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/js-stringify/-/js-stringify-1.0.2.tgz", + "integrity": "sha512-rtS5ATOo2Q5k1G+DADISilDA6lv79zIiwFd6CcjuIxGKLFm5C+RLImRscVap9k55i+MOZwgliw+NejvkLuGD5g==", + "peer": true }, - "../../service/node_modules/mongodb-connection-string-url/node_modules/tr46": { - "version": "3.0.0", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/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==", "license": "MIT", "peer": true, "dependencies": { - "punycode": "^2.1.1" + "argparse": "^2.0.1" }, - "engines": { - "node": ">=12" + "bin": { + "js-yaml": "bin/js-yaml.js" } }, - "../../service/node_modules/mongodb-connection-string-url/node_modules/webidl-conversions": { - "version": "7.0.0", - "dev": true, - "license": "BSD-2-Clause", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/js-yaml/node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "license": "Python-2.0", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/jsbn": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-1.1.0.tgz", + "integrity": "sha512-4bYVV3aAMtDTTu4+xsDYa6sy9GyJ69/amsu9sYF2zqjiEoZA5xJi3BrfX3uY+/IekIu7MwdObdbDWpoZdBv3/A==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/jsesc": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", + "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", + "extraneous": true, + "bin": { + "jsesc": "bin/jsesc" + }, "engines": { - "node": ">=12" + "node": ">=4" } }, - "../../service/node_modules/mongodb-connection-string-url/node_modules/whatwg-url": { - "version": "11.0.0", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/json-buffer": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz", + "integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/json-parse-better-errors": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz", + "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/json-schema": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.4.0.tgz", + "integrity": "sha512-es94M3nTIfsEPisRafak+HDLfHXnKBhV3vU5eqPcS3flIWqcxJWgXHXiey3YrpaNsanY5ei1VoYEbOzijuq9BA==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/json-stable-stringify-without-jsonify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", + "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/json-stringify-safe": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", + "integrity": "sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/json2csv": { + "version": "4.5.4", + "resolved": "https://registry.npmjs.org/json2csv/-/json2csv-4.5.4.tgz", + "integrity": "sha512-YxBhY4Lmn8IvVZ36nqg5omxneLy9JlorkqW1j/EDCeqvmi+CQ4uM+wsvXlcIqvGDewIPXMC/O/oF8DX9EH5aoA==", + "deprecated": "Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.", "license": "MIT", "peer": true, "dependencies": { - "tr46": "^3.0.0", - "webidl-conversions": "^7.0.0" + "commander": "^2.15.1", + "jsonparse": "^1.3.1", + "lodash.get": "^4.4.2" }, - "engines": { - "node": ">=12" + "bin": { + "json2csv": "bin/json2csv.js" } }, - "../../service/node_modules/mongodb-core": { - "version": "2.1.20", - "license": "Apache-2.0", - "peer": true, - "dependencies": { - "bson": "~1.0.4", - "require_optional": "~1.0.0" - } + "node_modules/@ngageoint/mage.service/node_modules/json2csv/node_modules/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==", + "peer": true }, - "../../service/node_modules/mongodb-memory-server": { - "version": "8.4.2", - "dev": true, - "hasInstallScript": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/jsonfile": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", + "integrity": "sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==", "peer": true, - "dependencies": { - "mongodb-memory-server-core": "8.4.2", - "tslib": "^2.3.1" - }, - "engines": { - "node": ">=12.22.0" + "optionalDependencies": { + "graceful-fs": "^4.1.6" } }, - "../../service/node_modules/mongodb-memory-server-core": { - "version": "8.4.2", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/jsonparse": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/jsonparse/-/jsonparse-1.3.1.tgz", + "integrity": "sha512-POQXvpdL69+CluYsillJ7SUhKvytYjW9vG/GKpnf+xP8UWgYEM/RaMzHHofbALDiKbbP1W8UEYmgGl39WkPZsg==", + "engines": [ + "node >= 0.2.0" + ], + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/JSONStream": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/JSONStream/-/JSONStream-1.3.5.tgz", + "integrity": "sha512-E+iruNOY8VV9s4JEbe1aNEm6MiszPRr/UfcHMz0TQh1BXSxHK+ASV1R6W4HpjBhSeS+54PIsAMCBmwD06LLsqQ==", "peer": true, "dependencies": { - "@types/tmp": "^0.2.3", - "async-mutex": "^0.3.2", - "camelcase": "^6.3.0", - "debug": "^4.3.3", - "find-cache-dir": "^3.3.2", - "get-port": "^5.1.1", - "https-proxy-agent": "^5.0.0", - "md5-file": "^5.0.0", - "mongodb": "^4.4.0", - "new-find-package-json": "^1.1.0", - "semver": "^7.3.5", - "tar-stream": "^2.1.4", - "tmp": "^0.2.1", - "tslib": "^2.3.1", - "uuid": "^8.3.1", - "yauzl": "^2.10.0" + "jsonparse": "^1.2.0", + "through": ">=2.2.7 <3" + }, + "bin": { + "JSONStream": "bin.js" }, "engines": { - "node": ">=12.22.0" + "node": "*" } }, - "../../service/node_modules/mongodb-memory-server-core/node_modules/bson": { - "version": "4.6.2", - "dev": true, - "license": "Apache-2.0", + "node_modules/@ngageoint/mage.service/node_modules/jsonwebtoken": { + "version": "9.0.2", + "resolved": "https://registry.npmjs.org/jsonwebtoken/-/jsonwebtoken-9.0.2.tgz", + "integrity": "sha512-PRp66vJ865SSqOlgqS8hujT5U4AOgMfhrwYIuIhfKaoSCZcirrmASQr8CX7cUg+RMih+hgznrjp99o+W4pJLHQ==", "peer": true, "dependencies": { - "buffer": "^5.6.0" + "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": "^7.5.4" }, "engines": { - "node": ">=6.9.0" + "node": ">=12", + "npm": ">=6" } }, - "../../service/node_modules/mongodb-memory-server-core/node_modules/camelcase": { - "version": "6.3.0", - "dev": true, - "license": "MIT", - "peer": true, - "engines": { - "node": ">=10" + "node_modules/@ngageoint/mage.service/node_modules/jsprim": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.2.tgz", + "integrity": "sha512-P2bSOMAc/ciLz6DzgjVlGJP9+BrJWu5UDGK70C2iweC5QBIeFf0ZXRvGjEj2uYgrY2MkAAhsSWHDWlFtEroZWw==", + "extraneous": true, + "dependencies": { + "assert-plus": "1.0.0", + "extsprintf": "1.3.0", + "json-schema": "0.4.0", + "verror": "1.10.0" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "engines": { + "node": ">=0.6.0" } }, - "../../service/node_modules/mongodb-memory-server-core/node_modules/debug": { - "version": "4.3.4", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/jsprim/node_modules/verror": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", + "integrity": "sha512-ZZKSmDAEFOijERBLkmYfJ+vmk3w+7hOLYDNkRCuRuMJGEmqYNCNLyBBFwWKVMhfwaEF3WOd0Zlw86U/WC/+nYw==", + "engines": [ + "node >=0.6.0" + ], + "extraneous": true, "dependencies": { - "ms": "2.1.2" - }, - "engines": { - "node": ">=6.0" - }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } + "assert-plus": "^1.0.0", + "core-util-is": "1.0.2", + "extsprintf": "^1.2.0" } }, - "../../service/node_modules/mongodb-memory-server-core/node_modules/lru-cache": { - "version": "6.0.0", - "dev": true, - "license": "ISC", + "node_modules/@ngageoint/mage.service/node_modules/jstransformer": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/jstransformer/-/jstransformer-1.0.0.tgz", + "integrity": "sha512-C9YK3Rf8q6VAPDCCU9fnqo3mAfOH6vUGnMcP4AQAYIEpWtfGLpwOTmZ+igtdK5y+VvI2n3CyYSzy4Qh34eq24A==", "peer": true, "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" + "is-promise": "^2.0.0", + "promise": "^7.0.1" } }, - "../../service/node_modules/mongodb-memory-server-core/node_modules/mongodb": { - "version": "4.5.0", - "dev": true, - "license": "Apache-2.0", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/jszip": { + "version": "3.10.1", + "resolved": "https://registry.npmjs.org/jszip/-/jszip-3.10.1.tgz", + "integrity": "sha512-xXDvecyTpGLrqFrvkrUSoxxfJI5AH7U8zxxtVclpsUtMCq4JQ290LY8AW5c7Ggnr/Y/oK+bQMbqK2qmtk3pN4g==", + "extraneous": true, + "license": "(MIT OR GPL-3.0-or-later)", "dependencies": { - "bson": "^4.6.2", - "denque": "^2.0.1", - "mongodb-connection-string-url": "^2.5.2", - "socks": "^2.6.2" - }, - "engines": { - "node": ">=12.9.0" - }, - "optionalDependencies": { - "saslprep": "^1.0.3" + "lie": "~3.3.0", + "pako": "~1.0.2", + "readable-stream": "~2.3.6", + "setimmediate": "^1.0.5" } }, - "../../service/node_modules/mongodb-memory-server-core/node_modules/ms": { - "version": "2.1.2", - "dev": true, - "license": "MIT", - "peer": true + "node_modules/@ngageoint/mage.service/node_modules/jszip/node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", + "extraneous": true }, - "../../service/node_modules/mongodb-memory-server-core/node_modules/rimraf": { - "version": "3.0.2", - "dev": true, - "license": "ISC", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/jszip/node_modules/readable-stream": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", + "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", + "extraneous": true, "dependencies": { - "glob": "^7.1.3" - }, - "bin": { - "rimraf": "bin.js" + "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" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/jszip/node_modules/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==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/jszip/node_modules/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==", + "extraneous": true, + "dependencies": { + "safe-buffer": "~5.1.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/junk": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/junk/-/junk-4.0.1.tgz", + "integrity": "sha512-Qush0uP+G8ZScpGMZvHUiRfI0YBWuB3gVBYlI0v0vvOJt5FLicco+IkP0a50LqTTQhmts/m6tP5SWE+USyIvcQ==", + "extraneous": true, + "engines": { + "node": ">=12.20" }, "funding": { - "url": "https://github.com/sponsors/isaacs" + "url": "https://github.com/sponsors/sindresorhus" } }, - "../../service/node_modules/mongodb-memory-server-core/node_modules/semver": { - "version": "7.3.7", - "dev": true, - "license": "ISC", + "node_modules/@ngageoint/mage.service/node_modules/just-extend": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/just-extend/-/just-extend-4.2.1.tgz", + "integrity": "sha512-g3UB796vUFIY90VIv/WX3L2c8CS2MdWUww3CNrYmqza1Fg0DURc2K/O4YrnklBdQarSJ/y8JnJYDGc+1iumQjg==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/jwa": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/jwa/-/jwa-1.4.1.tgz", + "integrity": "sha512-qiLX/xhEEFKUAJ6FiBMbes3w9ATzyk5W7Hvzpa/SLYdxNtng+gcurvrI7TbACjIXlsJyr05/S1oUhZrc63evQA==", "peer": true, "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" + "buffer-equal-constant-time": "1.0.1", + "ecdsa-sig-formatter": "1.0.11", + "safe-buffer": "^5.0.1" } }, - "../../service/node_modules/mongodb-memory-server-core/node_modules/tmp": { - "version": "0.2.1", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/jws": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/jws/-/jws-3.2.2.tgz", + "integrity": "sha512-YHlZCB6lMTllWDtSPHz/ZXTsi8S00usEV6v1tjq8tOUZzw7DpSDWVXjXDre6ed1w/pd495ODpHZYSdkRTsa0HA==", "peer": true, "dependencies": { - "rimraf": "^3.0.0" - }, - "engines": { - "node": ">=8.17.0" + "jwa": "^1.4.1", + "safe-buffer": "^5.0.1" } }, - "../../service/node_modules/mongodb-memory-server-core/node_modules/tslib": { - "version": "2.3.1", - "dev": true, - "license": "0BSD", - "peer": true - }, - "../../service/node_modules/mongodb-memory-server-core/node_modules/uuid": { - "version": "8.3.2", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/kareem": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/kareem/-/kareem-2.5.1.tgz", + "integrity": "sha512-7jFxRVm+jD+rkq3kY0iZDJfsO2/t4BBPeEb2qKn2lR/9KhuksYk5hxzfRYWMPV8P/x2d0kHD306YyWLzjjH+uA==", "peer": true, - "bin": { - "uuid": "dist/bin/uuid" + "engines": { + "node": ">=12.0.0" } }, - "../../service/node_modules/mongodb-memory-server/node_modules/tslib": { - "version": "2.3.1", - "dev": true, - "license": "0BSD", - "peer": true - }, - "../../service/node_modules/mongodb-migrations": { - "version": "0.8.5", - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/keyv": { + "version": "4.5.4", + "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz", + "integrity": "sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==", + "extraneous": true, "dependencies": { - "bluebird": "^3.4.1", - "lodash": "^4.13.0", - "mkdirp": "^0.5.1", - "mongodb": "^2.2.1", - "nomnom": "^1.6.2" - }, - "bin": { - "mm": "bin/mm" + "json-buffer": "3.0.1" } }, - "../../service/node_modules/mongodb-migrations/node_modules/minimist": { - "version": "1.2.6", - "license": "MIT", - "peer": true - }, - "../../service/node_modules/mongodb-migrations/node_modules/mkdirp": { - "version": "0.5.6", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/lazystream": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/lazystream/-/lazystream-1.0.1.tgz", + "integrity": "sha512-b94GiNHQNy6JNTrt5w6zNyffMrNkXZb3KTkCZJb2V1xaEGCk093vkZ2jk3tpaeP33/OiXC+WvK9AxUebnf5nbw==", "peer": true, "dependencies": { - "minimist": "^1.2.6" + "readable-stream": "^2.0.5" }, - "bin": { - "mkdirp": "bin/cmd.js" + "engines": { + "node": ">= 0.6.3" } }, - "../../service/node_modules/mongodb/node_modules/readable-stream": { - "version": "2.2.7", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/lazystream/node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/lazystream/node_modules/readable-stream": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", + "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", "peer": true, "dependencies": { - "buffer-shims": "~1.0.0", "core-util-is": "~1.0.0", - "inherits": "~2.0.1", + "inherits": "~2.0.3", "isarray": "~1.0.0", - "process-nextick-args": "~1.0.6", - "string_decoder": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", "util-deprecate": "~1.0.1" } }, - "../../service/node_modules/mongodb/node_modules/safe-buffer": { + "node_modules/@ngageoint/mage.service/node_modules/lazystream/node_modules/safe-buffer": { "version": "5.1.2", - "license": "MIT", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", "peer": true }, - "../../service/node_modules/mongodb/node_modules/string_decoder": { - "version": "1.0.3", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/lazystream/node_modules/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==", "peer": true, "dependencies": { "safe-buffer": "~5.1.0" } }, - "../../service/node_modules/mongoose": { - "version": "4.13.21", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/lcov-parse": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/lcov-parse/-/lcov-parse-1.0.0.tgz", + "integrity": "sha512-aprLII/vPzuQvYZnDRU78Fns9I2Ag3gi4Ipga/hxnVMCZC8DnR2nI7XBqrPoywGfxqIx/DgarGvDJZAD3YBTgQ==", + "extraneous": true, + "license": "BSD-3-Clause", + "bin": { + "lcov-parse": "bin/cli.js" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/ldap-filter": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/ldap-filter/-/ldap-filter-0.3.3.tgz", + "integrity": "sha512-/tFkx5WIn4HuO+6w9lsfxq4FN3O+fDZeO9Mek8dCD8rTUpqzRa766BOBO7BcGkn3X86m5+cBm1/2S/Shzz7gMg==", "peer": true, "dependencies": { - "async": "2.6.0", - "bson": "~1.0.4", - "hooks-fixed": "2.0.2", - "kareem": "1.5.0", - "lodash.get": "4.4.2", - "mongodb": "2.2.34", - "mpath": "0.5.1", - "mpromise": "0.5.5", - "mquery": "2.3.3", - "ms": "2.0.0", - "muri": "1.3.0", - "regexp-clone": "0.0.1", - "sliced": "1.0.1" + "assert-plus": "^1.0.0" }, "engines": { - "node": ">=0.6.19" + "node": ">=0.8" } }, - "../../service/node_modules/mongoose-beautiful-unique-validation": { - "version": "7.1.1", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/ldapauth-fork": { + "version": "5.0.5", + "resolved": "https://registry.npmjs.org/ldapauth-fork/-/ldapauth-fork-5.0.5.tgz", + "integrity": "sha512-LWUk76+V4AOZbny/3HIPQtGPWZyA3SW2tRhsWIBi9imP22WJktKLHV1ofd8Jo/wY7Ve6vAT7FCI5mEn3blZTjw==", "peer": true, - "engines": { - "node": ">=0.10.0" + "dependencies": { + "@types/ldapjs": "^2.2.2", + "bcryptjs": "^2.4.0", + "ldapjs": "^2.2.1", + "lru-cache": "^7.10.1" }, - "peerDependencies": { - "mongoose": ">=4.11.4" + "engines": { + "node": ">=0.8.0" } }, - "../../service/node_modules/mongoose/node_modules/async": { - "version": "2.6.0", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/ldapjs": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/ldapjs/-/ldapjs-2.3.3.tgz", + "integrity": "sha512-75QiiLJV/PQqtpH+HGls44dXweviFwQ6SiIK27EqzKQ5jU/7UFrl2E5nLdQ3IYRBzJ/AVFJI66u0MZ0uofKYwg==", + "deprecated": "This package has been decomissioned. See https://github.com/ldapjs/node-ldapjs/blob/8ffd0bc9c149088a10ec4c1ec6a18450f76ad05d/README.md", "peer": true, "dependencies": { - "lodash": "^4.14.0" + "abstract-logging": "^2.0.0", + "asn1": "^0.2.4", + "assert-plus": "^1.0.0", + "backoff": "^2.5.0", + "ldap-filter": "^0.3.3", + "once": "^1.4.0", + "vasync": "^2.2.0", + "verror": "^1.8.1" + }, + "engines": { + "node": ">=10.13.0" } }, - "../../service/node_modules/mongoose/node_modules/mongodb": { - "version": "2.2.34", - "license": "Apache-2.0", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/levn": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", + "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", + "extraneous": true, "dependencies": { - "es6-promise": "3.2.1", - "mongodb-core": "2.1.18", - "readable-stream": "2.2.7" + "prelude-ls": "^1.2.1", + "type-check": "~0.4.0" }, "engines": { - "node": ">=0.10.3" + "node": ">= 0.8.0" } }, - "../../service/node_modules/mongoose/node_modules/mongodb-core": { - "version": "2.1.18", - "license": "Apache-2.0", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/lie": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/lie/-/lie-3.3.0.tgz", + "integrity": "sha512-UaiMJzeWRlEujzAuw5LokY1L5ecNQYZKfmyZ9L7wDHb/p5etKaxXhohBcrw0EYby+G/NA52vRSN4N39dxHAIwQ==", + "extraneous": true, "dependencies": { - "bson": "~1.0.4", - "require_optional": "~1.0.0" + "immediate": "~3.0.5" } }, - "../../service/node_modules/mongoose/node_modules/readable-stream": { - "version": "2.2.7", - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/load-json-file": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-4.0.0.tgz", + "integrity": "sha512-Kx8hMakjX03tiGTLAIdJ+lL0htKnXjEZN6hk/tozf/WOuYGdZBJrZ+rCJRbVCugsjB3jMLn9746NsQIf5VjBMw==", + "extraneous": true, "dependencies": { - "buffer-shims": "~1.0.0", - "core-util-is": "~1.0.0", - "inherits": "~2.0.1", - "isarray": "~1.0.0", - "process-nextick-args": "~1.0.6", - "string_decoder": "~1.0.0", - "util-deprecate": "~1.0.1" + "graceful-fs": "^4.1.2", + "parse-json": "^4.0.0", + "pify": "^3.0.0", + "strip-bom": "^3.0.0" + }, + "engines": { + "node": ">=4" } }, - "../../service/node_modules/mongoose/node_modules/safe-buffer": { - "version": "5.1.2", - "license": "MIT", - "peer": true - }, - "../../service/node_modules/mongoose/node_modules/string_decoder": { - "version": "1.0.3", - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/locate-path": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", + "extraneous": true, "dependencies": { - "safe-buffer": "~5.1.0" - } - }, - "../../service/node_modules/mpath": { - "version": "0.5.1", - "license": "MIT", - "peer": true, + "p-locate": "^5.0.0" + }, "engines": { - "node": ">=4.0.0" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "../../service/node_modules/mpromise": { - "version": "0.5.5", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/lodash": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", "peer": true }, - "../../service/node_modules/mquery": { - "version": "2.3.3", - "license": "MIT", - "peer": true, - "dependencies": { - "bluebird": "3.5.0", - "debug": "2.6.9", - "regexp-clone": "0.0.1", - "sliced": "0.0.5" - } + "node_modules/@ngageoint/mage.service/node_modules/lodash.defaults": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/lodash.defaults/-/lodash.defaults-4.2.0.tgz", + "integrity": "sha512-qjxPLHd3r5DnsdGacqOMU6pb/avJzdh9tFX2ymgoZE27BmjXrNy/y4LoaiTeAb+O3gL8AfpJGtqfX/ae2leYYQ==", + "peer": true }, - "../../service/node_modules/mquery/node_modules/bluebird": { - "version": "3.5.0", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/lodash.difference": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.difference/-/lodash.difference-4.5.0.tgz", + "integrity": "sha512-dS2j+W26TQ7taQBGN8Lbbq04ssV3emRw4NY58WErlTO29pIqS0HmoT5aJ9+TUQ1N3G+JOZSji4eugsWwGp9yPA==", "peer": true }, - "../../service/node_modules/mquery/node_modules/sliced": { - "version": "0.0.5", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/lodash.flatten": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/lodash.flatten/-/lodash.flatten-4.4.0.tgz", + "integrity": "sha512-C5N2Z3DgnnKr0LOpv/hKCgKdb7ZZwafIrsesve6lmzvZIRZRGaZ/l6Q8+2W7NaT+ZwO3fFlSCzCzrDCFdJfZ4g==", "peer": true }, - "../../service/node_modules/ms": { - "version": "2.0.0", - "license": "MIT", - "peer": true - }, - "../../service/node_modules/multer": { - "version": "1.4.5-lts.1", - "license": "MIT", - "peer": true, - "dependencies": { - "append-field": "^1.0.0", - "busboy": "^1.0.0", - "concat-stream": "^1.5.2", - "mkdirp": "^0.5.4", - "object-assign": "^4.1.1", - "type-is": "^1.6.4", - "xtend": "^4.0.0" - }, - "engines": { - "node": ">= 6.0.0" - } + "node_modules/@ngageoint/mage.service/node_modules/lodash.flattendeep": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/lodash.flattendeep/-/lodash.flattendeep-4.4.0.tgz", + "integrity": "sha512-uHaJFihxmJcEX3kT4I23ABqKKalJ/zDrDg0lsFtc1h+3uw49SIJ5beyhx5ExVRti3AvKoOJngIj7xz3oylPdWQ==", + "extraneous": true }, - "../../service/node_modules/multer/node_modules/minimist": { - "version": "1.2.6", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/lodash.get": { + "version": "4.4.2", + "resolved": "https://registry.npmjs.org/lodash.get/-/lodash.get-4.4.2.tgz", + "integrity": "sha512-z+Uw/vLuy6gQe8cfaFWD7p0wVv8fJl3mbzXh33RS+0oW2wvUqiRXiQ69gLWSLpgB5/6sU+r6BlQR0MBILadqTQ==", "peer": true }, - "../../service/node_modules/multer/node_modules/mkdirp": { - "version": "0.5.6", - "license": "MIT", - "peer": true, - "dependencies": { - "minimist": "^1.2.6" - }, - "bin": { - "mkdirp": "bin/cmd.js" - } - }, - "../../service/node_modules/muri": { - "version": "1.3.0", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/lodash.includes": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/lodash.includes/-/lodash.includes-4.3.0.tgz", + "integrity": "sha512-W3Bx6mdkRTGtlJISOvVD/lbqjTlPPUDTMnlXZFnVwi9NKJ6tiAk6LVdlhZMm17VZisqhKcgzpO5Wz91PCt5b0w==", "peer": true }, - "../../service/node_modules/mute-stream": { - "version": "0.0.8", - "devOptional": true, - "license": "ISC", + "node_modules/@ngageoint/mage.service/node_modules/lodash.isboolean": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/lodash.isboolean/-/lodash.isboolean-3.0.3.tgz", + "integrity": "sha512-Bz5mupy2SVbPHURB98VAcw+aHh4vRV5IPNhILUCsOzRmsTmSQ17jIuqopAentWoehktxGd9e/hbIXq980/1QJg==", "peer": true }, - "../../service/node_modules/mv": { - "version": "2.1.1", - "license": "MIT", - "optional": true, - "peer": true, - "dependencies": { - "mkdirp": "~0.5.1", - "ncp": "~2.0.0", - "rimraf": "~2.4.0" - }, - "engines": { - "node": ">=0.8.0" - } + "node_modules/@ngageoint/mage.service/node_modules/lodash.isinteger": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/lodash.isinteger/-/lodash.isinteger-4.0.4.tgz", + "integrity": "sha512-DBwtEWN2caHQ9/imiNeEA5ys1JoRtRfY3d7V9wkqtbycnAmTvRRmbHKDV4a0EYc678/dia0jrte4tjYwVBaZUA==", + "peer": true }, - "../../service/node_modules/mv/node_modules/minimist": { - "version": "1.2.6", - "license": "MIT", - "optional": true, + "node_modules/@ngageoint/mage.service/node_modules/lodash.isnumber": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/lodash.isnumber/-/lodash.isnumber-3.0.3.tgz", + "integrity": "sha512-QYqzpfwO3/CWf3XP+Z+tkQsfaLL/EnUlXWVkIk5FUPc4sBdTehEqZONuyRt2P67PXAk+NXmTBcc97zw9t1FQrw==", "peer": true }, - "../../service/node_modules/mv/node_modules/mkdirp": { - "version": "0.5.6", - "license": "MIT", - "optional": true, - "peer": true, - "dependencies": { - "minimist": "^1.2.6" - }, - "bin": { - "mkdirp": "bin/cmd.js" - } + "node_modules/@ngageoint/mage.service/node_modules/lodash.isplainobject": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz", + "integrity": "sha512-oSXzaWypCMHkPC3NvBEaPHf0KsA5mvPrOPgQWDsbg8n7orZ290M0BmC/jgRZ4vcJ6DTAhjrsSYgdsW/F+MFOBA==", + "peer": true }, - "../../service/node_modules/nan": { - "version": "2.15.0", - "license": "MIT", - "optional": true, + "node_modules/@ngageoint/mage.service/node_modules/lodash.isstring": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/lodash.isstring/-/lodash.isstring-4.0.1.tgz", + "integrity": "sha512-0wJxfxH1wgO3GrbuP+dTTk7op+6L41QCXbGINEmD+ny/G/eCqGzxyCsh7159S+mgDDcoarnBw6PC1PS5+wUGgw==", "peer": true }, - "../../service/node_modules/napi-build-utils": { - "version": "1.0.2", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/lodash.merge": { + "version": "4.6.2", + "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", + "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/lodash.once": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/lodash.once/-/lodash.once-4.1.1.tgz", + "integrity": "sha512-Sb487aTOCr9drQVL8pIxOzVhafOjZN9UU54hiN8PU3uAiSV7lx1yYNpbNmex2PK6dSJoNTSJUUswT651yww3Mg==", "peer": true }, - "../../service/node_modules/natural-compare": { - "version": "1.4.0", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/lodash.union": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/lodash.union/-/lodash.union-4.6.0.tgz", + "integrity": "sha512-c4pB2CdGrGdjMKYLA+XiRDO7Y0PRQbm/Gzg8qMj+QH+pFVAoTp5sBpO0odL3FjoPCGjK96p6qsP+yQoiLoOBcw==", "peer": true }, - "../../service/node_modules/ncp": { - "version": "2.0.0", - "license": "MIT", - "optional": true, - "peer": true, - "bin": { - "ncp": "bin/ncp" + "node_modules/@ngageoint/mage.service/node_modules/log-driver": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/log-driver/-/log-driver-1.2.7.tgz", + "integrity": "sha512-U7KCmLdqsGHBLeWqYlFA0V0Sl6P08EE1ZrmA9cxjUE0WVqT9qnyVDPz1kzpFEP0jdJuFnasWIfSd7fsaNXkpbg==", + "extraneous": true, + "engines": { + "node": ">=0.8.6" } }, - "../../service/node_modules/negotiator": { - "version": "0.6.3", - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/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==", + "extraneous": true, + "dependencies": { + "chalk": "^4.1.0", + "is-unicode-supported": "^0.1.0" + }, "engines": { - "node": ">= 0.6" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "../../service/node_modules/nested-error-stacks": { - "version": "2.1.1", - "dev": true, - "license": "MIT", - "peer": true + "node_modules/@ngageoint/mage.service/node_modules/lolex": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/lolex/-/lolex-4.2.0.tgz", + "integrity": "sha512-gKO5uExCXvSm6zbF562EvM+rd1kQDnB9AZBbiQVzf1ZmdDpxUSvpnAaVOP83N/31mRK8Ml8/VE8DMvsAZQ+7wg==", + "extraneous": true }, - "../../service/node_modules/new-find-package-json": { - "version": "1.1.0", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/loupe": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/loupe/-/loupe-2.3.7.tgz", + "integrity": "sha512-zSMINGVYkdpYSOBmLi0D1Uo7JU9nVdQKrHxC8eYlV+9YKK9WePqAlL7lSlorG/U2Fw1w0hTBmaa/jrQ3UbPHtA==", + "extraneous": true, "dependencies": { - "debug": "^4.3.2", - "tslib": "^2.3.0" - }, + "get-func-name": "^2.0.1" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/lru-cache": { + "version": "7.18.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", + "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", + "peer": true, "engines": { - "node": ">=12.22.0" + "node": ">=12" } }, - "../../service/node_modules/new-find-package-json/node_modules/debug": { - "version": "4.3.4", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/make-dir": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "extraneous": true, "license": "MIT", - "peer": true, "dependencies": { - "ms": "2.1.2" + "semver": "^6.0.0" }, "engines": { - "node": ">=6.0" + "node": ">=8" }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "../../service/node_modules/new-find-package-json/node_modules/ms": { - "version": "2.1.2", - "dev": true, - "license": "MIT", - "peer": true + "node_modules/@ngageoint/mage.service/node_modules/make-dir/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "extraneous": true, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + } }, - "../../service/node_modules/new-find-package-json/node_modules/tslib": { - "version": "2.3.1", - "dev": true, - "license": "0BSD", + "node_modules/@ngageoint/mage.service/node_modules/map-stream": { + "version": "0.0.7", + "resolved": "https://registry.npmjs.org/map-stream/-/map-stream-0.0.7.tgz", + "integrity": "sha512-C0X0KQmGm3N2ftbTGBhSyuydQ+vV1LC3f3zPvT3RXHXNZrvfPZcoXp/N5DOa8vedX/rTMm2CjTtivFg2STJMRQ==", "peer": true }, - "../../service/node_modules/nice-try": { - "version": "1.0.5", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/math-intrinsics": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/math-intrinsics/-/math-intrinsics-1.1.0.tgz", + "integrity": "sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==", "license": "MIT", - "peer": true + "peer": true, + "engines": { + "node": ">= 0.4" + } }, - "../../service/node_modules/nise": { - "version": "1.5.3", - "dev": true, - "license": "BSD-3-Clause", + "node_modules/@ngageoint/mage.service/node_modules/media-typer": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", + "integrity": "sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==", "peer": true, - "dependencies": { - "@sinonjs/formatio": "^3.2.1", - "@sinonjs/text-encoding": "^0.7.1", - "just-extend": "^4.0.2", - "lolex": "^5.0.1", - "path-to-regexp": "^1.7.0" + "engines": { + "node": ">= 0.6" } }, - "../../service/node_modules/nise/node_modules/isarray": { - "version": "0.0.1", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/memory-pager": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/memory-pager/-/memory-pager-1.5.0.tgz", + "integrity": "sha512-ZS4Bp4r/Zoeq6+NLJpP+0Zzm0pR8whtGPf1XExKLJBAczGMnSi3It14OiNCStjQjM6NU1okjQGSxgEZN8eBYKg==", + "optional": true, "peer": true }, - "../../service/node_modules/nise/node_modules/lolex": { - "version": "5.1.2", - "dev": true, - "license": "BSD-3-Clause", - "peer": true, - "dependencies": { - "@sinonjs/commons": "^1.7.0" + "node_modules/@ngageoint/mage.service/node_modules/memorystream": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/memorystream/-/memorystream-0.3.1.tgz", + "integrity": "sha512-S3UwM3yj5mtUSEfP41UZmt/0SCoVYUcU1rkXv+BQ5Ig8ndL4sPoJNBUJERafdPb5jjHJGuMgytgKvKIf58XNBw==", + "extraneous": true, + "engines": { + "node": ">= 0.10.0" } }, - "../../service/node_modules/nise/node_modules/path-to-regexp": { - "version": "1.8.0", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "isarray": "0.0.1" + "node_modules/@ngageoint/mage.service/node_modules/meow": { + "version": "12.1.1", + "resolved": "https://registry.npmjs.org/meow/-/meow-12.1.1.tgz", + "integrity": "sha512-BhXM0Au22RwUneMPwSCnyhTOizdWoIEPU9sp0Aqa1PnDMR5Wv2FGXYDjuzJEIX+Eo2Rb8xuYe5jrnm5QowQFkw==", + "extraneous": true, + "engines": { + "node": ">=16.10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "../../service/node_modules/nock": { - "version": "11.9.1", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/merge-descriptors": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.3.tgz", + "integrity": "sha512-gaNvAS7TZ897/rVaZ0nMtAyxNyi/pdbjbAwUpFQpN70GqnVfOiXpeUUMKRBmzXaSQ8DdTX4/0ms62r2K+hE6mQ==", "license": "MIT", "peer": true, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/merge-source-map": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/merge-source-map/-/merge-source-map-1.1.0.tgz", + "integrity": "sha512-Qkcp7P2ygktpMPh2mCQZaf3jhN6D3Z/qVZHSdWvQ+2Ef5HgRAPBO57A77+ENm0CPx2+1Ce/MYKi3ymqdfuqibw==", + "extraneous": true, "dependencies": { - "debug": "^4.1.0", - "json-stringify-safe": "^5.0.1", - "lodash": "^4.17.13", - "mkdirp": "^0.5.0", - "propagate": "^2.0.0" - }, + "source-map": "^0.6.1" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/merge2": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", + "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", + "extraneous": true, "engines": { - "node": ">= 8.0" + "node": ">= 8" } }, - "../../service/node_modules/nock/node_modules/debug": { - "version": "4.3.4", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/methods": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", + "integrity": "sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==", "peer": true, - "dependencies": { - "ms": "2.1.2" - }, "engines": { - "node": ">=6.0" - }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } + "node": ">= 0.6" } }, - "../../service/node_modules/nock/node_modules/minimist": { - "version": "1.2.6", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/mgrs": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/mgrs/-/mgrs-1.0.0.tgz", + "integrity": "sha512-awNbTOqCxK1DBGjalK3xqWIstBZgN6fxsMSiXLs9/spqWkF2pAhb2rrYCFSsr1/tT7PhcDGjZndG8SWYn0byYA==", "peer": true }, - "../../service/node_modules/nock/node_modules/mkdirp": { - "version": "0.5.6", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/micromatch": { + "version": "4.0.7", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.7.tgz", + "integrity": "sha512-LPP/3KorzCwBxfeUuZmaR6bG2kdeHSbe0P2tY3FLRU4vYrjYz5hI4QZwV0njUx3jeuKe67YukQ1LSPZBKDqO/Q==", + "extraneous": true, "dependencies": { - "minimist": "^1.2.6" + "braces": "^3.0.3", + "picomatch": "^2.3.1" }, - "bin": { - "mkdirp": "bin/cmd.js" + "engines": { + "node": ">=8.6" } }, - "../../service/node_modules/nock/node_modules/ms": { - "version": "2.1.2", - "dev": true, - "license": "MIT", - "peer": true - }, - "../../service/node_modules/node-abi": { - "version": "3.47.0", + "node_modules/@ngageoint/mage.service/node_modules/mime": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", + "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", "license": "MIT", "peer": true, - "dependencies": { - "semver": "^7.3.5" + "bin": { + "mime": "cli.js" }, "engines": { - "node": ">=10" + "node": ">=4" } }, - "../../service/node_modules/node-abi/node_modules/lru-cache": { - "version": "6.0.0", - "license": "ISC", + "node_modules/@ngageoint/mage.service/node_modules/mime-db": { + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", "peer": true, - "dependencies": { - "yallist": "^4.0.0" - }, "engines": { - "node": ">=10" + "node": ">= 0.6" } }, - "../../service/node_modules/node-abi/node_modules/semver": { - "version": "7.5.4", - "license": "ISC", + "node_modules/@ngageoint/mage.service/node_modules/mime-types": { + "version": "2.1.35", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", + "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", "peer": true, "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" + "mime-db": "1.52.0" }, "engines": { - "node": ">=10" + "node": ">= 0.6" } }, - "../../service/node_modules/node-environment-flags": { - "version": "1.0.6", - "dev": true, - "license": "Apache-2.0", + "node_modules/@ngageoint/mage.service/node_modules/mimic-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", + "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", + "optional": true, "peer": true, - "dependencies": { - "object.getownpropertydescriptors": "^2.0.3", - "semver": "^5.7.0" + "engines": { + "node": ">=6" } }, - "../../service/node_modules/node-fetch": { - "version": "2.6.7", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/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==", + "optional": true, "peer": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/minimatch": { + "version": "9.0.3", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", + "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", + "extraneous": true, + "license": "ISC", "dependencies": { - "whatwg-url": "^5.0.0" + "brace-expansion": "^2.0.1" }, "engines": { - "node": "4.x || >=6.0.0" - }, - "peerDependencies": { - "encoding": "^0.1.0" + "node": ">=16 || 14 >=14.17" }, - "peerDependenciesMeta": { - "encoding": { - "optional": true - } + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "../../service/node_modules/nomnom": { - "version": "1.8.1", + "node_modules/@ngageoint/mage.service/node_modules/minimist": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", + "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", "peer": true, - "dependencies": { - "chalk": "~0.4.0", - "underscore": "~1.6.0" + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "../../service/node_modules/nomnom/node_modules/ansi-styles": { - "version": "1.0.0", - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/minipass": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.2.tgz", + "integrity": "sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==", + "extraneous": true, "engines": { - "node": ">=0.8.0" + "node": ">=16 || 14 >=14.17" } }, - "../../service/node_modules/nomnom/node_modules/chalk": { - "version": "0.4.0", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/mkdirp": { + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", + "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", "peer": true, "dependencies": { - "ansi-styles": "~1.0.0", - "has-color": "~0.1.0", - "strip-ansi": "~0.1.0" + "minimist": "^1.2.6" }, - "engines": { - "node": ">=0.8.0" + "bin": { + "mkdirp": "bin/cmd.js" } }, - "../../service/node_modules/nomnom/node_modules/strip-ansi": { - "version": "0.1.1", - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/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==", + "optional": true, + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/mocha": { + "version": "10.8.2", + "resolved": "https://registry.npmjs.org/mocha/-/mocha-10.8.2.tgz", + "integrity": "sha512-VZlYo/WE8t1tstuRmqgeyBgCbJc/lEdopaa+axcKzTBJ+UIdlAB9XnmvTCAH4pwR4ElNInaedhEBmZD8iCSVEg==", + "extraneous": true, + "license": "MIT", + "dependencies": { + "ansi-colors": "^4.1.3", + "browser-stdout": "^1.3.1", + "chokidar": "^3.5.3", + "debug": "^4.3.5", + "diff": "^5.2.0", + "escape-string-regexp": "^4.0.0", + "find-up": "^5.0.0", + "glob": "^8.1.0", + "he": "^1.2.0", + "js-yaml": "^4.1.0", + "log-symbols": "^4.1.0", + "minimatch": "^5.1.6", + "ms": "^2.1.3", + "serialize-javascript": "^6.0.2", + "strip-json-comments": "^3.1.1", + "supports-color": "^8.1.1", + "workerpool": "^6.5.1", + "yargs": "^16.2.0", + "yargs-parser": "^20.2.9", + "yargs-unparser": "^2.0.0" + }, "bin": { - "strip-ansi": "cli.js" + "_mocha": "bin/_mocha", + "mocha": "bin/mocha.js" }, "engines": { - "node": ">=0.8.0" + "node": ">= 14.0.0" } }, - "../../service/node_modules/nomnom/node_modules/underscore": { - "version": "1.6.0", - "peer": true + "node_modules/@ngageoint/mage.service/node_modules/mocha/node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "extraneous": true }, - "../../service/node_modules/normalize-package-data": { - "version": "2.5.0", - "dev": true, - "license": "BSD-2-Clause", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/mocha/node_modules/glob": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/glob/-/glob-8.1.0.tgz", + "integrity": "sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ==", + "deprecated": "Glob versions prior to v9 are no longer supported", + "extraneous": true, "dependencies": { - "hosted-git-info": "^2.1.4", - "resolve": "^1.10.0", - "semver": "2 || 3 || 4 || 5", - "validate-npm-package-license": "^3.0.1" - } - }, - "../../service/node_modules/normalize-path": { - "version": "3.0.0", - "license": "MIT", - "peer": true, + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^5.0.1", + "once": "^1.3.0" + }, "engines": { - "node": ">=0.10.0" + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "../../service/node_modules/npm-run-all": { - "version": "4.1.5", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/mocha/node_modules/js-yaml": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", + "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", + "extraneous": true, "dependencies": { - "ansi-styles": "^3.2.1", - "chalk": "^2.4.1", - "cross-spawn": "^6.0.5", - "memorystream": "^0.3.1", - "minimatch": "^3.0.4", - "pidtree": "^0.3.0", - "read-pkg": "^3.0.0", - "shell-quote": "^1.6.1", - "string.prototype.padend": "^3.0.0" + "argparse": "^2.0.1" }, "bin": { - "npm-run-all": "bin/npm-run-all/index.js", - "run-p": "bin/run-p/index.js", - "run-s": "bin/run-s/index.js" + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/mocha/node_modules/minimatch": { + "version": "5.1.6", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz", + "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==", + "extraneous": true, + "license": "ISC", + "dependencies": { + "brace-expansion": "^2.0.1" }, "engines": { - "node": ">= 4" + "node": ">=10" } }, - "../../service/node_modules/npm-run-all/node_modules/ansi-styles": { - "version": "3.2.1", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/mocha/node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/mocha/node_modules/supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "extraneous": true, "dependencies": { - "color-convert": "^1.9.0" + "has-flag": "^4.0.0" }, "engines": { - "node": ">=4" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/supports-color?sponsor=1" } }, - "../../service/node_modules/npm-run-all/node_modules/chalk": { - "version": "2.4.2", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/mock-fs": { + "version": "4.14.0", + "resolved": "https://registry.npmjs.org/mock-fs/-/mock-fs-4.14.0.tgz", + "integrity": "sha512-qYvlv/exQ4+svI3UOvPUpLDF0OMX5euvUH0Ny4N5QyRyhNdgAgUrVH3iUINSzEPLvx0kbo/Bp28GJKIqvE7URw==", + "extraneous": true, + "license": "MIT" + }, + "node_modules/@ngageoint/mage.service/node_modules/module-not-found-error": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/module-not-found-error/-/module-not-found-error-1.0.1.tgz", + "integrity": "sha512-pEk4ECWQXV6z2zjhRZUongnLJNUeGQJ3w6OQ5ctGwD+i5o93qjRQUk2Rt6VdNeu3sEP0AB4LcfvdebpxBRVr4g==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/moment": { + "version": "2.30.1", + "resolved": "https://registry.npmjs.org/moment/-/moment-2.30.1.tgz", + "integrity": "sha512-uEmtNhbDOrWPFS+hdjFCBfy9f2YoyzRpwcl+DqpC6taX21FzsTLQVbMV/W7PzNSX6x/bhC1zA3c2UQ5NzH6how==", "license": "MIT", "peer": true, + "engines": { + "node": "*" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/mongodb": { + "version": "4.17.2", + "resolved": "https://registry.npmjs.org/mongodb/-/mongodb-4.17.2.tgz", + "integrity": "sha512-mLV7SEiov2LHleRJPMPrK2PMyhXFZt2UQLC4VD4pnth3jMjYKHhtqfwwkkvS/NXuo/Fp3vbhaNcXrIDaLRb9Tg==", + "peer": true, "dependencies": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" + "bson": "^4.7.2", + "mongodb-connection-string-url": "^2.6.0", + "socks": "^2.7.1" }, "engines": { - "node": ">=4" + "node": ">=12.9.0" + }, + "optionalDependencies": { + "@aws-sdk/credential-providers": "^3.186.0", + "@mongodb-js/saslprep": "^1.1.0" } }, - "../../service/node_modules/npm-run-all/node_modules/color-convert": { - "version": "1.9.3", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/mongodb-connection-string-url": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/mongodb-connection-string-url/-/mongodb-connection-string-url-2.6.0.tgz", + "integrity": "sha512-WvTZlI9ab0QYtTYnuMLgobULWhokRjtC7db9LtcVfJ+Hsnyr5eo6ZtNAt3Ly24XZScGMelOcGtm7lSn0332tPQ==", "peer": true, "dependencies": { - "color-name": "1.1.3" + "@types/whatwg-url": "^8.2.1", + "whatwg-url": "^11.0.0" } }, - "../../service/node_modules/npm-run-all/node_modules/color-name": { - "version": "1.1.3", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/mongodb-memory-server": { + "version": "9.5.0", + "resolved": "https://registry.npmjs.org/mongodb-memory-server/-/mongodb-memory-server-9.5.0.tgz", + "integrity": "sha512-In3zRT40cLlVtpy7FK6b96Lby6JBAdXj8Kf9YrH4p1Aa2X4ptojq7SmiRR3x47Lo0/UCXXIwhJpkdbYY8kRZAw==", + "extraneous": true, + "hasInstallScript": true, "license": "MIT", - "peer": true + "dependencies": { + "mongodb-memory-server-core": "9.5.0", + "tslib": "^2.6.3" + }, + "engines": { + "node": ">=14.20.1" + } }, - "../../service/node_modules/npm-run-all/node_modules/cross-spawn": { - "version": "6.0.5", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/mongodb-memory-server-core": { + "version": "9.5.0", + "resolved": "https://registry.npmjs.org/mongodb-memory-server-core/-/mongodb-memory-server-core-9.5.0.tgz", + "integrity": "sha512-Jb/V80JeYAKWaF4bPFme7SmTR6ew1PWgkpPUepLDfRraeN49i1cruxICeA4zz4T33W/o31N+zazP8wI8ebf7yw==", + "extraneous": true, "license": "MIT", - "peer": true, "dependencies": { - "nice-try": "^1.0.4", - "path-key": "^2.0.1", - "semver": "^5.5.0", - "shebang-command": "^1.2.0", - "which": "^1.2.9" + "async-mutex": "^0.4.1", + "camelcase": "^6.3.0", + "debug": "^4.3.7", + "find-cache-dir": "^3.3.2", + "follow-redirects": "^1.15.9", + "https-proxy-agent": "^7.0.5", + "mongodb": "^5.9.2", + "new-find-package-json": "^2.0.0", + "semver": "^7.6.3", + "tar-stream": "^3.1.7", + "tslib": "^2.6.3", + "yauzl": "^3.1.3" }, "engines": { - "node": ">=4.8" + "node": ">=14.20.1" } }, - "../../service/node_modules/npm-run-all/node_modules/has-flag": { - "version": "3.0.0", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/mongodb-memory-server-core/node_modules/bson": { + "version": "5.5.1", + "resolved": "https://registry.npmjs.org/bson/-/bson-5.5.1.tgz", + "integrity": "sha512-ix0EwukN2EpC0SRWIj/7B5+A6uQMQy6KMREI9qQqvgpkV2frH63T0UDVd1SYedL6dNCmDBYB3QtXi4ISk9YT+g==", + "extraneous": true, + "license": "Apache-2.0", + "engines": { + "node": ">=14.20.1" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/mongodb-memory-server-core/node_modules/debug": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.0.tgz", + "integrity": "sha512-6WTZ/IxCY/T6BALoZHaE4ctp9xm+Z5kY/pzYaCHRFeyVhojxlrm+46y68HA6hr0TcwEssoxNiDEUJQjfPZ/RYA==", + "extraneous": true, "license": "MIT", - "peer": true, + "dependencies": { + "ms": "^2.1.3" + }, "engines": { - "node": ">=4" + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } } }, - "../../service/node_modules/npm-run-all/node_modules/supports-color": { - "version": "5.5.0", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/mongodb-memory-server-core/node_modules/mongodb": { + "version": "5.9.2", + "resolved": "https://registry.npmjs.org/mongodb/-/mongodb-5.9.2.tgz", + "integrity": "sha512-H60HecKO4Bc+7dhOv4sJlgvenK4fQNqqUIlXxZYQNbfEWSALGAwGoyJd/0Qwk4TttFXUOHJ2ZJQe/52ScaUwtQ==", + "extraneous": true, + "license": "Apache-2.0", + "dependencies": { + "bson": "^5.5.0", + "mongodb-connection-string-url": "^2.6.0", + "socks": "^2.7.1" + }, + "engines": { + "node": ">=14.20.1" + }, + "optionalDependencies": { + "@mongodb-js/saslprep": "^1.1.0" + }, + "peerDependencies": { + "@aws-sdk/credential-providers": "^3.188.0", + "@mongodb-js/zstd": "^1.0.0", + "kerberos": "^1.0.0 || ^2.0.0", + "mongodb-client-encryption": ">=2.3.0 <3", + "snappy": "^7.2.2" + }, + "peerDependenciesMeta": { + "@aws-sdk/credential-providers": { + "optional": true + }, + "@mongodb-js/zstd": { + "optional": true + }, + "kerberos": { + "optional": true + }, + "mongodb-client-encryption": { + "optional": true + }, + "snappy": { + "optional": true + } + } + }, + "node_modules/@ngageoint/mage.service/node_modules/mongodb-memory-server-core/node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "extraneous": true, + "license": "MIT" + }, + "node_modules/@ngageoint/mage.service/node_modules/mongodb-memory-server-core/node_modules/tar-stream": { + "version": "3.1.7", + "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-3.1.7.tgz", + "integrity": "sha512-qJj60CXt7IU1Ffyc3NJMjh6EkuCFej46zUqJ4J7pqYlThyd9bO0XBTmcOIhSzZJVWfsLks0+nle/j538YAW9RQ==", + "extraneous": true, + "license": "MIT", + "dependencies": { + "b4a": "^1.6.4", + "fast-fifo": "^1.2.0", + "streamx": "^2.15.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/mongoose": { + "version": "6.13.8", + "resolved": "https://registry.npmjs.org/mongoose/-/mongoose-6.13.8.tgz", + "integrity": "sha512-JHKco/533CyVrqCbyQsnqMpLn8ZCiKrPDTd2mvo2W7ygIvhygWjX2wj+RPjn6upZZgw0jC6U51RD7kUsyK8NBg==", "license": "MIT", "peer": true, "dependencies": { - "has-flag": "^3.0.0" + "bson": "^4.7.2", + "kareem": "2.5.1", + "mongodb": "4.17.2", + "mpath": "0.9.0", + "mquery": "4.0.3", + "ms": "2.1.3", + "sift": "16.0.1" }, "engines": { - "node": ">=4" + "node": ">=12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/mongoose" } }, - "../../service/node_modules/npmlog": { - "version": "4.1.2", - "license": "ISC", - "optional": true, + "node_modules/@ngageoint/mage.service/node_modules/mongoose/node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/mpath": { + "version": "0.9.0", + "resolved": "https://registry.npmjs.org/mpath/-/mpath-0.9.0.tgz", + "integrity": "sha512-ikJRQTk8hw5DEoFVxHG1Gn9T/xcjtdnOKIU1JTmGjZZlg9LST2mBLmcX3/ICIbgJydT2GOc15RnNy5mHmzfSew==", "peer": true, - "dependencies": { - "are-we-there-yet": "~1.1.2", - "console-control-strings": "~1.1.0", - "gauge": "~2.7.3", - "set-blocking": "~2.0.0" + "engines": { + "node": ">=4.0.0" } }, - "../../service/node_modules/number-is-nan": { - "version": "1.0.1", - "devOptional": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/mquery": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/mquery/-/mquery-4.0.3.tgz", + "integrity": "sha512-J5heI+P08I6VJ2Ky3+33IpCdAvlYGTSUjwTPxkAr8i8EoduPMBX2OY/wa3IKZIQl7MU4SbFk8ndgSKyB/cl1zA==", "peer": true, + "dependencies": { + "debug": "4.x" + }, "engines": { - "node": ">=0.10.0" + "node": ">=12.0.0" } }, - "../../service/node_modules/nyc": { - "version": "14.1.1", - "dev": true, - "license": "ISC", + "node_modules/@ngageoint/mage.service/node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/multer": { + "version": "1.4.5-lts.1", + "resolved": "https://registry.npmjs.org/multer/-/multer-1.4.5-lts.1.tgz", + "integrity": "sha512-ywPWvcDMeH+z9gQq5qYHCCy+ethsk4goepZ45GLD63fOu0YcNecQxi64nDs3qluZB+murG3/D4dJ7+dGctcCQQ==", "peer": true, "dependencies": { - "archy": "^1.0.0", - "caching-transform": "^3.0.2", - "convert-source-map": "^1.6.0", - "cp-file": "^6.2.0", - "find-cache-dir": "^2.1.0", - "find-up": "^3.0.0", - "foreground-child": "^1.5.6", - "glob": "^7.1.3", - "istanbul-lib-coverage": "^2.0.5", - "istanbul-lib-hook": "^2.0.7", - "istanbul-lib-instrument": "^3.3.0", - "istanbul-lib-report": "^2.0.8", - "istanbul-lib-source-maps": "^3.0.6", - "istanbul-reports": "^2.2.4", - "js-yaml": "^3.13.1", - "make-dir": "^2.1.0", - "merge-source-map": "^1.1.0", - "resolve-from": "^4.0.0", - "rimraf": "^2.6.3", - "signal-exit": "^3.0.2", - "spawn-wrap": "^1.4.2", - "test-exclude": "^5.2.3", - "uuid": "^3.3.2", - "yargs": "^13.2.2", - "yargs-parser": "^13.0.0" - }, - "bin": { - "nyc": "bin/nyc.js" + "append-field": "^1.0.0", + "busboy": "^1.0.0", + "concat-stream": "^1.5.2", + "mkdirp": "^0.5.4", + "object-assign": "^4.1.1", + "type-is": "^1.6.4", + "xtend": "^4.0.0" }, "engines": { - "node": ">=6" + "node": ">= 6.0.0" } }, - "../../service/node_modules/nyc/node_modules/ansi-regex": { - "version": "4.1.1", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/mute-stream": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz", + "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==", + "optional": true, + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/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==", + "optional": true, + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/natural-compare": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", + "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/negotiator": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", + "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==", "peer": true, "engines": { - "node": ">=6" + "node": ">= 0.6" } }, - "../../service/node_modules/nyc/node_modules/camelcase": { - "version": "5.3.1", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/nested-error-stacks": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/nested-error-stacks/-/nested-error-stacks-2.1.1.tgz", + "integrity": "sha512-9iN1ka/9zmX1ZvLV9ewJYEk9h7RyRRtqdK0woXcqohu8EWIerfPUjYJPg0ULy0UqP7cslmdGc8xKDJcojlKiaw==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/new-find-package-json": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/new-find-package-json/-/new-find-package-json-2.0.0.tgz", + "integrity": "sha512-lDcBsjBSMlj3LXH2v/FW3txlh2pYTjmbOXPYJD93HI5EwuLzI11tdHSIpUMmfq/IOsldj4Ps8M8flhm+pCK4Ew==", + "extraneous": true, "license": "MIT", - "peer": true, + "dependencies": { + "debug": "^4.3.4" + }, "engines": { - "node": ">=6" + "node": ">=12.22.0" } }, - "../../service/node_modules/nyc/node_modules/cliui": { - "version": "5.0.0", - "dev": true, - "license": "ISC", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/nice-try": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz", + "integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/nise": { + "version": "1.5.3", + "resolved": "https://registry.npmjs.org/nise/-/nise-1.5.3.tgz", + "integrity": "sha512-Ymbac/94xeIrMf59REBPOv0thr+CJVFMhrlAkW/gjCIE58BGQdCj0x7KRCb3yz+Ga2Rz3E9XXSvUyyxqqhjQAQ==", + "extraneous": true, "dependencies": { - "string-width": "^3.1.0", - "strip-ansi": "^5.2.0", - "wrap-ansi": "^5.1.0" + "@sinonjs/formatio": "^3.2.1", + "@sinonjs/text-encoding": "^0.7.1", + "just-extend": "^4.0.2", + "lolex": "^5.0.1", + "path-to-regexp": "^1.7.0" } }, - "../../service/node_modules/nyc/node_modules/emoji-regex": { - "version": "7.0.3", - "dev": true, - "license": "MIT", - "peer": true + "node_modules/@ngageoint/mage.service/node_modules/nise/node_modules/isarray": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", + "integrity": "sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ==", + "extraneous": true }, - "../../service/node_modules/nyc/node_modules/esprima": { - "version": "4.0.1", - "dev": true, - "license": "BSD-2-Clause", - "peer": true, - "bin": { - "esparse": "bin/esparse.js", - "esvalidate": "bin/esvalidate.js" - }, - "engines": { - "node": ">=4" + "node_modules/@ngageoint/mage.service/node_modules/nise/node_modules/lolex": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/lolex/-/lolex-5.1.2.tgz", + "integrity": "sha512-h4hmjAvHTmd+25JSwrtTIuwbKdwg5NzZVRMLn9saij4SZaepCrTCxPr35H/3bjwfMJtN+t3CX8672UIkglz28A==", + "extraneous": true, + "dependencies": { + "@sinonjs/commons": "^1.7.0" } }, - "../../service/node_modules/nyc/node_modules/find-cache-dir": { - "version": "2.1.0", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/nise/node_modules/path-to-regexp": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-1.8.0.tgz", + "integrity": "sha512-n43JRhlUKUAlibEJhPeir1ncUID16QnEjNpwzNdO3Lm4ywrBpBZ5oLD0I6br9evr1Y9JTqwRtAh7JLoOzAQdVA==", + "extraneous": true, + "dependencies": { + "isarray": "0.0.1" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/nock": { + "version": "11.9.1", + "resolved": "https://registry.npmjs.org/nock/-/nock-11.9.1.tgz", + "integrity": "sha512-U5wPctaY4/ar2JJ5Jg4wJxlbBfayxgKbiAeGh+a1kk6Pwnc2ZEuKviLyDSG6t0uXl56q7AALIxoM6FJrBSsVXA==", + "extraneous": true, "license": "MIT", - "peer": true, "dependencies": { - "commondir": "^1.0.1", - "make-dir": "^2.0.0", - "pkg-dir": "^3.0.0" + "debug": "^4.1.0", + "json-stringify-safe": "^5.0.1", + "lodash": "^4.17.13", + "mkdirp": "^0.5.0", + "propagate": "^2.0.0" }, "engines": { - "node": ">=6" + "node": ">= 8.0" } }, - "../../service/node_modules/nyc/node_modules/find-up": { - "version": "3.0.0", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/node-abi": { + "version": "3.65.0", + "resolved": "https://registry.npmjs.org/node-abi/-/node-abi-3.65.0.tgz", + "integrity": "sha512-ThjYBfoDNr08AWx6hGaRbfPwxKV9kVzAzOzlLKbk2CuqXE2xnCh+cbAGnwM3t8Lq4v9rUB7VfondlkBckcJrVA==", + "optional": true, "peer": true, "dependencies": { - "locate-path": "^3.0.0" + "semver": "^7.3.5" }, "engines": { - "node": ">=6" + "node": ">=10" } }, - "../../service/node_modules/nyc/node_modules/is-fullwidth-code-point": { - "version": "2.0.0", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/node-fetch": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.7.0.tgz", + "integrity": "sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==", "license": "MIT", "peer": true, + "dependencies": { + "whatwg-url": "^5.0.0" + }, "engines": { - "node": ">=4" + "node": "4.x || >=6.0.0" + }, + "peerDependencies": { + "encoding": "^0.1.0" + }, + "peerDependenciesMeta": { + "encoding": { + "optional": true + } } }, - "../../service/node_modules/nyc/node_modules/js-yaml": { - "version": "3.14.1", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/node-fetch/node_modules/tr46": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", + "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==", + "license": "MIT", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/node-fetch/node_modules/webidl-conversions": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", + "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==", + "license": "BSD-2-Clause", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/node-fetch/node_modules/whatwg-url": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", + "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", "license": "MIT", "peer": true, "dependencies": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" - }, - "bin": { - "js-yaml": "bin/js-yaml.js" + "tr46": "~0.0.3", + "webidl-conversions": "^3.0.0" } }, - "../../service/node_modules/nyc/node_modules/locate-path": { - "version": "3.0.0", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/nomnom": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/nomnom/-/nomnom-1.8.1.tgz", + "integrity": "sha512-5s0JxqhDx9/rksG2BTMVN1enjWSvPidpoSgViZU4ZXULyTe+7jxcCRLB6f42Z0l1xYJpleCBtSyY6Lwg3uu5CQ==", + "deprecated": "Package no longer supported. Contact support@npmjs.com for more info.", "peer": true, "dependencies": { - "p-locate": "^3.0.0", - "path-exists": "^3.0.0" - }, - "engines": { - "node": ">=6" + "chalk": "~0.4.0", + "underscore": "~1.6.0" } }, - "../../service/node_modules/nyc/node_modules/p-limit": { - "version": "2.3.0", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/nomnom/node_modules/ansi-styles": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-1.0.0.tgz", + "integrity": "sha512-3iF4FIKdxaVYT3JqQuY3Wat/T2t7TRbbQ94Fu50ZUCbLy4TFbTzr90NOHQodQkNqmeEGCw8WbeP78WNi6SKYUA==", "peer": true, - "dependencies": { - "p-try": "^2.0.0" - }, "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=0.8.0" } }, - "../../service/node_modules/nyc/node_modules/p-locate": { - "version": "3.0.0", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/nomnom/node_modules/chalk": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-0.4.0.tgz", + "integrity": "sha512-sQfYDlfv2DGVtjdoQqxS0cEZDroyG8h6TamA6rvxwlrU5BaSLDx9xhatBYl2pxZ7gmpNaPFVwBtdGdu5rQ+tYQ==", "peer": true, "dependencies": { - "p-limit": "^2.0.0" + "ansi-styles": "~1.0.0", + "has-color": "~0.1.0", + "strip-ansi": "~0.1.0" }, "engines": { - "node": ">=6" + "node": ">=0.8.0" } }, - "../../service/node_modules/nyc/node_modules/p-try": { - "version": "2.2.0", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/nomnom/node_modules/strip-ansi": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-0.1.1.tgz", + "integrity": "sha512-behete+3uqxecWlDAm5lmskaSaISA+ThQ4oNNBDTBJt0x2ppR6IPqfZNuj6BLaLJ/Sji4TPZlcRyOis8wXQTLg==", "peer": true, + "bin": { + "strip-ansi": "cli.js" + }, "engines": { - "node": ">=6" + "node": ">=0.8.0" } }, - "../../service/node_modules/nyc/node_modules/pkg-dir": { - "version": "3.0.0", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/nomnom/node_modules/underscore": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.6.0.tgz", + "integrity": "sha512-z4o1fvKUojIWh9XuaVLUDdf86RQiq13AC1dmHbTpoyuu+bquHms76v16CjycCbec87J7z0k//SiQVk0sMdFmpQ==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/normalize-package-data": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", + "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", + "extraneous": true, "dependencies": { - "find-up": "^3.0.0" - }, - "engines": { - "node": ">=6" + "hosted-git-info": "^2.1.4", + "resolve": "^1.10.0", + "semver": "2 || 3 || 4 || 5", + "validate-npm-package-license": "^3.0.1" } }, - "../../service/node_modules/nyc/node_modules/resolve-from": { - "version": "4.0.0", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/normalize-package-data/node_modules/semver": { + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", + "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", + "extraneous": true, + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", "peer": true, "engines": { - "node": ">=4" + "node": ">=0.10.0" } }, - "../../service/node_modules/nyc/node_modules/rimraf": { - "version": "2.7.1", - "dev": true, - "license": "ISC", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/npm-run-all": { + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/npm-run-all/-/npm-run-all-4.1.5.tgz", + "integrity": "sha512-Oo82gJDAVcaMdi3nuoKFavkIHBRVqQ1qvMb+9LHk/cF4P6B2m8aP04hGf7oL6wZ9BuGwX1onlLhpuoofSyoQDQ==", + "extraneous": true, "dependencies": { - "glob": "^7.1.3" + "ansi-styles": "^3.2.1", + "chalk": "^2.4.1", + "cross-spawn": "^6.0.5", + "memorystream": "^0.3.1", + "minimatch": "^3.0.4", + "pidtree": "^0.3.0", + "read-pkg": "^3.0.0", + "shell-quote": "^1.6.1", + "string.prototype.padend": "^3.0.0" }, "bin": { - "rimraf": "bin.js" + "npm-run-all": "bin/npm-run-all/index.js", + "run-p": "bin/run-p/index.js", + "run-s": "bin/run-s/index.js" + }, + "engines": { + "node": ">= 4" } }, - "../../service/node_modules/nyc/node_modules/string-width": { - "version": "3.1.0", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/npm-run-all/node_modules/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==", + "extraneous": true, "dependencies": { - "emoji-regex": "^7.0.1", - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^5.1.0" + "color-convert": "^1.9.0" }, "engines": { - "node": ">=6" + "node": ">=4" } }, - "../../service/node_modules/nyc/node_modules/strip-ansi": { - "version": "5.2.0", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/npm-run-all/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "extraneous": true, "dependencies": { - "ansi-regex": "^4.1.0" + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/npm-run-all/node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "extraneous": true, + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" }, "engines": { - "node": ">=6" + "node": ">=4" } }, - "../../service/node_modules/nyc/node_modules/yargs": { - "version": "13.3.2", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/npm-run-all/node_modules/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==", + "extraneous": true, "dependencies": { - "cliui": "^5.0.0", - "find-up": "^3.0.0", - "get-caller-file": "^2.0.1", - "require-directory": "^2.1.1", - "require-main-filename": "^2.0.0", - "set-blocking": "^2.0.0", - "string-width": "^3.0.0", - "which-module": "^2.0.0", - "y18n": "^4.0.0", - "yargs-parser": "^13.1.2" + "color-name": "1.1.3" } }, - "../../service/node_modules/nyc/node_modules/yargs-parser": { - "version": "13.1.2", - "dev": true, - "license": "ISC", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/npm-run-all/node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/npm-run-all/node_modules/cross-spawn": { + "version": "6.0.5", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", + "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", + "extraneous": true, "dependencies": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" + "nice-try": "^1.0.4", + "path-key": "^2.0.1", + "semver": "^5.5.0", + "shebang-command": "^1.2.0", + "which": "^1.2.9" + }, + "engines": { + "node": ">=4.8" } }, - "../../service/node_modules/oauth": { - "version": "0.9.15", - "license": "MIT", - "peer": true + "node_modules/@ngageoint/mage.service/node_modules/npm-run-all/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "extraneous": true, + "engines": { + "node": ">=0.8.0" + } }, - "../../service/node_modules/oauth-sign": { - "version": "0.9.0", - "dev": true, - "license": "Apache-2.0", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/npm-run-all/node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "extraneous": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/npm-run-all/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "extraneous": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, "engines": { "node": "*" } }, - "../../service/node_modules/object-assign": { - "version": "4.1.1", - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/npm-run-all/node_modules/path-key": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", + "integrity": "sha512-fEHGKCSmUSDPv4uoj8AlD+joPlq3peND+HRYyxFz4KPw4z926S/b8rIuFs2FYJg3BwsxJf6A9/3eIdLaYC+9Dw==", + "extraneous": true, "engines": { - "node": ">=0.10.0" + "node": ">=4" } }, - "../../service/node_modules/object-inspect": { - "version": "1.12.0", - "license": "MIT", - "peer": true, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node_modules/@ngageoint/mage.service/node_modules/npm-run-all/node_modules/semver": { + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", + "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", + "extraneous": true, + "bin": { + "semver": "bin/semver" } }, - "../../service/node_modules/object-is": { - "version": "1.1.5", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/npm-run-all/node_modules/shebang-command": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", + "integrity": "sha512-EV3L1+UQWGor21OmnvojK36mhg+TyIKDh3iFBKBohr5xeXIhNBcx8oWdgkTEEQ+BEFFYdLRuqMfd5L84N1V5Vg==", + "extraneous": true, "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3" + "shebang-regex": "^1.0.0" }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=0.10.0" } }, - "../../service/node_modules/object-keys": { - "version": "1.1.1", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/npm-run-all/node_modules/shebang-regex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", + "integrity": "sha512-wpoSFAxys6b2a2wHZ1XpDSgD7N9iVjg29Ph9uV/uaP9Ex/KXlkTZTeddxDPSYQpgvzKLGJke2UU0AzoGCjNIvQ==", + "extraneous": true, "engines": { - "node": ">= 0.4" + "node": ">=0.10.0" } }, - "../../service/node_modules/object.assign": { - "version": "4.1.2", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/npm-run-all/node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "extraneous": true, "dependencies": { - "call-bind": "^1.0.0", - "define-properties": "^1.1.3", - "has-symbols": "^1.0.1", - "object-keys": "^1.1.1" + "has-flag": "^3.0.0" }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=4" } }, - "../../service/node_modules/object.getownpropertydescriptors": { - "version": "2.1.3", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/npm-run-all/node_modules/which": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "extraneous": true, "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3", - "es-abstract": "^1.19.1" - }, - "engines": { - "node": ">= 0.8" + "isexe": "^2.0.0" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "bin": { + "which": "bin/which" } }, - "../../service/node_modules/on-finished": { - "version": "2.3.0", - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/nyc": { + "version": "14.1.1", + "resolved": "https://registry.npmjs.org/nyc/-/nyc-14.1.1.tgz", + "integrity": "sha512-OI0vm6ZGUnoGZv/tLdZ2esSVzDwUC88SNs+6JoSOMVxA+gKMB8Tk7jBwgemLx4O40lhhvZCVw1C+OYLOBOPXWw==", + "extraneous": true, "dependencies": { - "ee-first": "1.1.1" + "archy": "^1.0.0", + "caching-transform": "^3.0.2", + "convert-source-map": "^1.6.0", + "cp-file": "^6.2.0", + "find-cache-dir": "^2.1.0", + "find-up": "^3.0.0", + "foreground-child": "^1.5.6", + "glob": "^7.1.3", + "istanbul-lib-coverage": "^2.0.5", + "istanbul-lib-hook": "^2.0.7", + "istanbul-lib-instrument": "^3.3.0", + "istanbul-lib-report": "^2.0.8", + "istanbul-lib-source-maps": "^3.0.6", + "istanbul-reports": "^2.2.4", + "js-yaml": "^3.13.1", + "make-dir": "^2.1.0", + "merge-source-map": "^1.1.0", + "resolve-from": "^4.0.0", + "rimraf": "^2.6.3", + "signal-exit": "^3.0.2", + "spawn-wrap": "^1.4.2", + "test-exclude": "^5.2.3", + "uuid": "^3.3.2", + "yargs": "^13.2.2", + "yargs-parser": "^13.0.0" + }, + "bin": { + "nyc": "bin/nyc.js" }, "engines": { - "node": ">= 0.8" + "node": ">=6" } }, - "../../service/node_modules/on-headers": { - "version": "1.0.2", - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/nyc/node_modules/ansi-regex": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.1.tgz", + "integrity": "sha512-ILlv4k/3f6vfQ4OoP2AGvirOktlQ98ZEL1k9FaQjxa3L1abBgbuTDAdPOpvbGncC0BTVQrl+OM8xZGK6tWXt7g==", + "extraneous": true, "engines": { - "node": ">= 0.8" + "node": ">=6" } }, - "../../service/node_modules/once": { - "version": "1.4.0", - "license": "ISC", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/nyc/node_modules/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==", + "extraneous": true, "dependencies": { - "wrappy": "1" + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" } }, - "../../service/node_modules/onetime": { - "version": "5.1.2", - "devOptional": true, - "license": "MIT", - "peer": true, - "dependencies": { - "mimic-fn": "^2.1.0" - }, + "node_modules/@ngageoint/mage.service/node_modules/nyc/node_modules/camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "extraneous": true, "engines": { "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" } }, - "../../service/node_modules/ono": { - "version": "4.0.11", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/nyc/node_modules/cliui": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-5.0.0.tgz", + "integrity": "sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA==", + "extraneous": true, "dependencies": { - "format-util": "^1.0.3" + "string-width": "^3.1.0", + "strip-ansi": "^5.2.0", + "wrap-ansi": "^5.1.0" } }, - "../../service/node_modules/openapi-enforcer": { - "version": "1.15.5", - "dev": true, - "license": "Apache-2.0", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/nyc/node_modules/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==", + "extraneous": true, "dependencies": { - "axios": "^0.21.1", - "json-schema-ref-parser": "^6.1.0", - "randexp": "^0.5.3" + "color-name": "1.1.3" } }, - "../../service/node_modules/opentype.js": { - "version": "0.7.3", - "license": "MIT", - "peer": true, - "dependencies": { - "tiny-inflate": "^1.0.2" - }, - "bin": { - "ot": "bin/ot" - } + "node_modules/@ngageoint/mage.service/node_modules/nyc/node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", + "extraneous": true }, - "../../service/node_modules/optionator": { - "version": "0.8.3", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/nyc/node_modules/cp-file": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/cp-file/-/cp-file-6.2.0.tgz", + "integrity": "sha512-fmvV4caBnofhPe8kOcitBwSn2f39QLjnAnGq3gO9dfd75mUytzKNZB1hde6QHunW2Rt+OwuBOMc3i1tNElbszA==", + "extraneous": true, "dependencies": { - "deep-is": "~0.1.3", - "fast-levenshtein": "~2.0.6", - "levn": "~0.3.0", - "prelude-ls": "~1.1.2", - "type-check": "~0.3.2", - "word-wrap": "~1.2.3" + "graceful-fs": "^4.1.2", + "make-dir": "^2.0.0", + "nested-error-stacks": "^2.0.0", + "pify": "^4.0.1", + "safe-buffer": "^5.0.1" }, "engines": { - "node": ">= 0.8.0" + "node": ">=6" } }, - "../../service/node_modules/os-homedir": { - "version": "1.0.2", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/nyc/node_modules/decamelize": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", + "integrity": "sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA==", + "extraneous": true, "engines": { "node": ">=0.10.0" } }, - "../../service/node_modules/os-tmpdir": { - "version": "1.0.2", - "devOptional": true, - "license": "MIT", - "peer": true, - "engines": { - "node": ">=0.10.0" - } + "node_modules/@ngageoint/mage.service/node_modules/nyc/node_modules/emoji-regex": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", + "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", + "extraneous": true }, - "../../service/node_modules/p-event": { - "version": "5.0.1", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/nyc/node_modules/find-cache-dir": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-2.1.0.tgz", + "integrity": "sha512-Tq6PixE0w/VMFfCgbONnkiQIVol/JJL7nRMi20fqzA4NRs9AfeqMGeRdPi3wIhYkxjeBaWh2rxwapn5Tu3IqOQ==", + "extraneous": true, "dependencies": { - "p-timeout": "^5.0.2" + "commondir": "^1.0.1", + "make-dir": "^2.0.0", + "pkg-dir": "^3.0.0" }, "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=6" } }, - "../../service/node_modules/p-event/node_modules/p-timeout": { - "version": "5.1.0", - "dev": true, - "license": "MIT", - "peer": true, - "engines": { - "node": ">=12" + "node_modules/@ngageoint/mage.service/node_modules/nyc/node_modules/find-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "extraneous": true, + "dependencies": { + "locate-path": "^3.0.0" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "engines": { + "node": ">=6" } }, - "../../service/node_modules/p-filter": { + "node_modules/@ngageoint/mage.service/node_modules/nyc/node_modules/is-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha512-VHskAKYM8RfSFXwee5t5cbN5PZeq1Wrh6qd5bkyiXIf6UQcN6w/A0eXM9r6t8d+GYOh+o6ZhiEnb88LN/Y8m2w==", + "extraneous": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/nyc/node_modules/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==", + "extraneous": true, + "dependencies": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/nyc/node_modules/locate-path": { "version": "3.0.0", - "dev": true, - "license": "MIT", - "peer": true, + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "extraneous": true, "dependencies": { - "p-map": "^5.1.0" + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" }, "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + "node": ">=6" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/nyc/node_modules/make-dir": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", + "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", + "extraneous": true, + "dependencies": { + "pify": "^4.0.1", + "semver": "^5.6.0" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "engines": { + "node": ">=6" } }, - "../../service/node_modules/p-filter/node_modules/aggregate-error": { - "version": "4.0.1", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/nyc/node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "extraneous": true, "dependencies": { - "clean-stack": "^4.0.0", - "indent-string": "^5.0.0" + "p-try": "^2.0.0" }, "engines": { - "node": ">=12" + "node": ">=6" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "../../service/node_modules/p-filter/node_modules/clean-stack": { - "version": "4.2.0", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/nyc/node_modules/p-locate": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "extraneous": true, "dependencies": { - "escape-string-regexp": "5.0.0" + "p-limit": "^2.0.0" }, "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=6" } }, - "../../service/node_modules/p-filter/node_modules/escape-string-regexp": { - "version": "5.0.0", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/nyc/node_modules/path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==", + "extraneous": true, "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=4" } }, - "../../service/node_modules/p-filter/node_modules/indent-string": { - "version": "5.0.0", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/nyc/node_modules/pify": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", + "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", + "extraneous": true, "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=6" } }, - "../../service/node_modules/p-filter/node_modules/p-map": { - "version": "5.5.0", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/nyc/node_modules/pkg-dir": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-3.0.0.tgz", + "integrity": "sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw==", + "extraneous": true, "dependencies": { - "aggregate-error": "^4.0.0" + "find-up": "^3.0.0" }, "engines": { - "node": ">=12" + "node": ">=6" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/nyc/node_modules/rimraf": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", + "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", + "deprecated": "Rimraf versions prior to v4 are no longer supported", + "extraneous": true, + "dependencies": { + "glob": "^7.1.3" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "bin": { + "rimraf": "bin.js" } }, - "../../service/node_modules/p-map": { - "version": "6.0.0", - "dev": true, - "license": "MIT", - "peer": true, - "engines": { - "node": ">=16" + "node_modules/@ngageoint/mage.service/node_modules/nyc/node_modules/semver": { + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", + "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", + "extraneous": true, + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/nyc/node_modules/string-width": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", + "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", + "extraneous": true, + "dependencies": { + "emoji-regex": "^7.0.1", + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^5.1.0" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "engines": { + "node": ">=6" } }, - "../../service/node_modules/package-hash": { - "version": "3.0.0", - "dev": true, - "license": "ISC", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/nyc/node_modules/strip-ansi": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", + "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "extraneous": true, "dependencies": { - "graceful-fs": "^4.1.15", - "hasha": "^3.0.0", - "lodash.flattendeep": "^4.4.0", - "release-zalgo": "^1.0.0" + "ansi-regex": "^4.1.0" }, "engines": { "node": ">=6" } }, - "../../service/node_modules/pako": { - "version": "1.0.11", - "dev": true, - "license": "(MIT AND Zlib)", - "peer": true + "node_modules/@ngageoint/mage.service/node_modules/nyc/node_modules/uuid": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", + "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==", + "deprecated": "Please upgrade to version 7 or higher. Older versions may use Math.random() in certain circumstances, which is known to be problematic. See https://v8.dev/blog/math-random for details.", + "extraneous": true, + "bin": { + "uuid": "bin/uuid" + } }, - "../../service/node_modules/parent-module": { - "version": "1.0.1", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/nyc/node_modules/wrap-ansi": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-5.1.0.tgz", + "integrity": "sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q==", + "extraneous": true, "dependencies": { - "callsites": "^3.0.0" + "ansi-styles": "^3.2.0", + "string-width": "^3.0.0", + "strip-ansi": "^5.0.0" }, "engines": { "node": ">=6" } }, - "../../service/node_modules/parse-asn1": { - "version": "5.1.6", - "license": "ISC", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/nyc/node_modules/y18n": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz", + "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/nyc/node_modules/yargs": { + "version": "13.3.2", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-13.3.2.tgz", + "integrity": "sha512-AX3Zw5iPruN5ie6xGRIDgqkT+ZhnRlZMLMHAs8tg7nRruy2Nb+i5o9bwghAogtM08q1dpr2LVoS8KSTMYpWXUw==", + "extraneous": true, "dependencies": { - "asn1.js": "^5.2.0", - "browserify-aes": "^1.0.0", - "evp_bytestokey": "^1.0.0", - "pbkdf2": "^3.0.3", - "safe-buffer": "^5.1.1" + "cliui": "^5.0.0", + "find-up": "^3.0.0", + "get-caller-file": "^2.0.1", + "require-directory": "^2.1.1", + "require-main-filename": "^2.0.0", + "set-blocking": "^2.0.0", + "string-width": "^3.0.0", + "which-module": "^2.0.0", + "y18n": "^4.0.0", + "yargs-parser": "^13.1.2" } }, - "../../service/node_modules/parse-asn1/node_modules/asn1.js": { - "version": "5.4.1", - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/nyc/node_modules/yargs-parser": { + "version": "13.1.2", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.2.tgz", + "integrity": "sha512-3lbsNRf/j+A4QuSZfDRA7HRSfWrzO0YjqTJd5kjAq37Zep1CEgaYmrH9Q3GwPiB9cHyd1Y1UwggGhJGoxipbzg==", + "extraneous": true, "dependencies": { - "bn.js": "^4.0.0", - "inherits": "^2.0.1", - "minimalistic-assert": "^1.0.0", - "safer-buffer": "^2.1.0" + "camelcase": "^5.0.0", + "decamelize": "^1.2.0" } }, - "../../service/node_modules/parse-asn1/node_modules/bn.js": { - "version": "4.12.0", + "node_modules/@ngageoint/mage.service/node_modules/oauth": { + "version": "0.10.2", + "resolved": "https://registry.npmjs.org/oauth/-/oauth-0.10.2.tgz", + "integrity": "sha512-JtFnB+8nxDEXgNyniwz573xxbKSOu3R8D40xQKqcjwJ2CDkYqUDI53o6IuzDJBx60Z8VKCm271+t8iFjakrl8Q==", "license": "MIT", "peer": true }, - "../../service/node_modules/parse-json": { - "version": "4.0.0", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "error-ex": "^1.3.1", - "json-parse-better-errors": "^1.0.1" - }, + "node_modules/@ngageoint/mage.service/node_modules/oauth-sign": { + "version": "0.9.0", + "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz", + "integrity": "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==", + "extraneous": true, "engines": { - "node": ">=4" + "node": "*" } }, - "../../service/node_modules/parseurl": { - "version": "1.3.3", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", "peer": true, "engines": { - "node": ">= 0.8" + "node": ">=0.10.0" } }, - "../../service/node_modules/passport": { - "version": "0.6.0", + "node_modules/@ngageoint/mage.service/node_modules/object-inspect": { + "version": "1.13.4", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.4.tgz", + "integrity": "sha512-W67iLl4J2EXEGTbfeHCffrjDfitvLANg0UlX3wFUUSTx92KXRFegMHUVgSqE+wvhAbi4WqjGg9czysTV2Epbew==", "license": "MIT", "peer": true, - "dependencies": { - "passport-strategy": "1.x.x", - "pause": "0.0.1", - "utils-merge": "^1.0.1" - }, "engines": { - "node": ">= 0.4.0" + "node": ">= 0.4" }, "funding": { - "type": "github", - "url": "https://github.com/sponsors/jaredhanson" + "url": "https://github.com/sponsors/ljharb" } }, - "../../service/node_modules/passport-anonymous": { - "version": "1.0.1", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/object-is": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/object-is/-/object-is-1.1.6.tgz", + "integrity": "sha512-F8cZ+KfGlSGi09lJT7/Nd6KJZ9ygtvYC0/UYYLI9nmQKLMnydpB9yvbv9K1uSkEu7FU9vYPmVwLg328tX+ot3Q==", + "extraneous": true, "dependencies": { - "passport-strategy": "1.x.x" + "call-bind": "^1.0.7", + "define-properties": "^1.2.1" }, "engines": { - "node": ">= 0.4.0" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "../../service/node_modules/passport-http-bearer": { - "version": "1.0.1", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/object-keys": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", + "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", + "extraneous": true, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/object.assign": { + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.5.tgz", + "integrity": "sha512-byy+U7gp+FVwmyzKPYhW2h5l3crpmGsxl7X2s8y43IgxvG4g3QZ6CffDtsNQy1WsmZpQbO+ybo0AlW7TY6DcBQ==", + "extraneous": true, "dependencies": { - "passport-strategy": "1.x.x" + "call-bind": "^1.0.5", + "define-properties": "^1.2.1", + "has-symbols": "^1.0.3", + "object-keys": "^1.1.1" }, "engines": { - "node": ">= 0.4.0" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "../../service/node_modules/passport-ldapauth": { - "version": "2.1.3", + "node_modules/@ngageoint/mage.service/node_modules/on-finished": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz", + "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==", "license": "MIT", "peer": true, "dependencies": { - "@types/node": "^10.12.26", - "@types/passport": "^1.0.0", - "ldapauth-fork": "^4.2.0", - "passport-strategy": "^1.0.0" + "ee-first": "1.1.1" }, "engines": { - "node": ">=0.8.0" + "node": ">= 0.8" } }, - "../../service/node_modules/passport-ldapauth/node_modules/@types/node": { - "version": "10.17.60", - "license": "MIT", - "peer": true - }, - "../../service/node_modules/passport-local": { - "version": "1.0.0", + "node_modules/@ngageoint/mage.service/node_modules/on-headers": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/on-headers/-/on-headers-1.0.2.tgz", + "integrity": "sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA==", "peer": true, - "dependencies": { - "passport-strategy": "1.x.x" - }, "engines": { - "node": ">= 0.4.0" + "node": ">= 0.8" } }, - "../../service/node_modules/passport-oauth2": { - "version": "1.6.0", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", "peer": true, "dependencies": { - "base64url": "3.x.x", - "oauth": "0.9.x", - "passport-strategy": "1.x.x", - "uid2": "0.0.x", - "utils-merge": "1.x.x" - }, - "engines": { - "node": ">= 0.4.0" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/jaredhanson" + "wrappy": "1" } }, - "../../service/node_modules/passport-openidconnect": { - "version": "0.1.1", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/onetime": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", + "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", + "optional": true, "peer": true, "dependencies": { - "oauth": "0.9.x", - "passport-strategy": "1.x.x" + "mimic-fn": "^2.1.0" }, "engines": { - "node": ">= 0.6.0" + "node": ">=6" }, "funding": { - "type": "github", - "url": "https://github.com/sponsors/jaredhanson" + "url": "https://github.com/sponsors/sindresorhus" } }, - "../../service/node_modules/passport-strategy": { - "version": "1.0.0", - "peer": true, - "engines": { - "node": ">= 0.4.0" + "node_modules/@ngageoint/mage.service/node_modules/openapi-enforcer": { + "version": "1.23.0", + "resolved": "https://registry.npmjs.org/openapi-enforcer/-/openapi-enforcer-1.23.0.tgz", + "integrity": "sha512-Ja6kvNQ28jvCHpotNZkB129/dBg2IslMDV56aUSl1Dcs+bcd8lGJTq1NatGYsspGpURXvQnFA/q2K8V3AQoO3Q==", + "extraneous": true, + "license": "Apache-2.0", + "dependencies": { + "js-yaml": "^4.1.0", + "randexp": "^0.5.3" } }, - "../../service/node_modules/path-exists": { - "version": "3.0.0", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/openapi-enforcer/node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "extraneous": true, + "license": "Python-2.0" + }, + "node_modules/@ngageoint/mage.service/node_modules/openapi-enforcer/node_modules/js-yaml": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", + "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", + "extraneous": true, "license": "MIT", + "dependencies": { + "argparse": "^2.0.1" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/opentype.js": { + "version": "0.7.3", + "resolved": "https://registry.npmjs.org/opentype.js/-/opentype.js-0.7.3.tgz", + "integrity": "sha512-Veui5vl2bLonFJ/SjX/WRWJT3SncgiZNnKUyahmXCc2sa1xXW15u3R/3TN5+JFiP7RsjK5ER4HA5eWaEmV9deA==", "peer": true, + "dependencies": { + "tiny-inflate": "^1.0.2" + }, + "bin": { + "ot": "bin/ot" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/optionator": { + "version": "0.9.4", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.4.tgz", + "integrity": "sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==", + "extraneous": true, + "dependencies": { + "deep-is": "^0.1.3", + "fast-levenshtein": "^2.0.6", + "levn": "^0.4.1", + "prelude-ls": "^1.2.1", + "type-check": "^0.4.0", + "word-wrap": "^1.2.5" + }, "engines": { - "node": ">=4" + "node": ">= 0.8.0" } }, - "../../service/node_modules/path-is-absolute": { - "version": "1.0.1", - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/os-homedir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", + "integrity": "sha512-B5JU3cabzk8c67mRRd3ECmROafjYMXbuzlwtqdM8IbS8ktlTix8aFGb2bAGKrSRIlnfKwovGUUr72JUPyOb6kQ==", + "extraneous": true, "engines": { "node": ">=0.10.0" } }, - "../../service/node_modules/path-key": { - "version": "2.0.1", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/os-tmpdir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", + "integrity": "sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==", + "optional": true, "peer": true, "engines": { - "node": ">=4" + "node": ">=0.10.0" } }, - "../../service/node_modules/path-parse": { - "version": "1.0.7", - "license": "MIT", - "peer": true - }, - "../../service/node_modules/path-to-regexp": { - "version": "0.1.7", - "license": "MIT", - "peer": true + "node_modules/@ngageoint/mage.service/node_modules/p-event": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/p-event/-/p-event-5.0.1.tgz", + "integrity": "sha512-dd589iCQ7m1L0bmC5NLlVYfy3TbBEsMUfWx9PyAgPeIcFZ/E2yaTZ4Rz4MiBmmJShviiftHVXOqfnfzJ6kyMrQ==", + "extraneous": true, + "dependencies": { + "p-timeout": "^5.0.2" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } }, - "../../service/node_modules/path-type": { + "node_modules/@ngageoint/mage.service/node_modules/p-filter": { "version": "3.0.0", - "dev": true, - "license": "MIT", - "peer": true, + "resolved": "https://registry.npmjs.org/p-filter/-/p-filter-3.0.0.tgz", + "integrity": "sha512-QtoWLjXAW++uTX67HZQz1dbTpqBfiidsB6VtQUC9iR85S120+s0T5sO6s+B5MLzFcZkrEd/DGMmCjR+f2Qpxwg==", + "extraneous": true, "dependencies": { - "pify": "^3.0.0" + "p-map": "^5.1.0" }, "engines": { - "node": ">=4" + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "../../service/node_modules/pathval": { - "version": "1.1.1", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/p-filter/node_modules/p-map": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-5.5.0.tgz", + "integrity": "sha512-VFqfGDHlx87K66yZrNdI4YGtD70IRyd+zSvgks6mzHPRNkoKy+9EKP4SFC77/vTTQYmRmti7dvqC+m5jBrBAcg==", + "extraneous": true, + "dependencies": { + "aggregate-error": "^4.0.0" + }, "engines": { - "node": "*" + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "../../service/node_modules/pause": { - "version": "0.0.1", - "peer": true - }, - "../../service/node_modules/pause-stream": { - "version": "0.0.11", - "license": [ - "MIT", - "Apache2" - ], - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "extraneous": true, "dependencies": { - "through": "~2.3" + "yocto-queue": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "../../service/node_modules/pbkdf2": { - "version": "3.1.2", - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/p-locate": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", + "extraneous": true, "dependencies": { - "create-hash": "^1.1.2", - "create-hmac": "^1.1.4", - "ripemd160": "^2.0.1", - "safe-buffer": "^5.0.1", - "sha.js": "^2.4.8" + "p-limit": "^3.0.2" }, "engines": { - "node": ">=0.12" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "../../service/node_modules/peek-readable": { - "version": "4.1.0", - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/p-map": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-6.0.0.tgz", + "integrity": "sha512-T8BatKGY+k5rU+Q/GTYgrEf2r4xRMevAN5mtXc2aPc4rS1j3s+vWTaO2Wag94neXuCAUAs8cxBL9EeB5EA6diw==", + "extraneous": true, "engines": { - "node": ">=8" + "node": ">=16" }, "funding": { - "type": "github", - "url": "https://github.com/sponsors/Borewit" + "url": "https://github.com/sponsors/sindresorhus" } }, - "../../service/node_modules/pem-jwk": { - "version": "1.5.1", - "license": "MPL 2.0", - "peer": true, - "dependencies": { - "asn1.js": "1.0.3" + "node_modules/@ngageoint/mage.service/node_modules/p-timeout": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/p-timeout/-/p-timeout-5.1.0.tgz", + "integrity": "sha512-auFDyzzzGZZZdHz3BtET9VEz0SE/uMEAx7uWfGPucfzEwwe/xH0iVeZibQmANYE/hp9T2+UUZT5m+BKyrDp3Ew==", + "extraneous": true, + "engines": { + "node": ">=12" }, - "bin": { - "pem-jwk": "bin/pem-jwk.js" + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "../../service/node_modules/pem-jwk/node_modules/asn1.js": { - "version": "1.0.3", - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "extraneous": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/package-hash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/package-hash/-/package-hash-3.0.0.tgz", + "integrity": "sha512-lOtmukMDVvtkL84rJHI7dpTYq+0rli8N2wlnqUcBuDWCfVhRUfOmnR9SsoHFMLpACvEV60dX7rd0rFaYDZI+FA==", + "extraneous": true, "dependencies": { - "inherits": "^2.0.1", - "minimalistic-assert": "^1.0.0" + "graceful-fs": "^4.1.15", + "hasha": "^3.0.0", + "lodash.flattendeep": "^4.4.0", + "release-zalgo": "^1.0.0" }, - "optionalDependencies": { - "bn.js": "^1.0.0" + "engines": { + "node": ">=6" } }, - "../../service/node_modules/pem-jwk/node_modules/bn.js": { - "version": "1.3.0", - "license": "MIT", - "optional": true, - "peer": true + "node_modules/@ngageoint/mage.service/node_modules/package-json-from-dist": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/package-json-from-dist/-/package-json-from-dist-1.0.0.tgz", + "integrity": "sha512-dATvCeZN/8wQsGywez1mzHtTlP22H8OEfPrVMLNr4/eGa+ijtLn/6M5f0dY8UKNrC2O9UCU6SSoG3qRKnt7STw==", + "extraneous": true }, - "../../service/node_modules/pem2jwk": { + "node_modules/@ngageoint/mage.service/node_modules/pako": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz", + "integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/parent-module": { "version": "1.0.1", - "license": "MIT", - "peer": true, + "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", + "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", + "extraneous": true, "dependencies": { - "elliptic": "^6.4.0", - "parse-asn1": "^5.1.0" + "callsites": "^3.0.0" + }, + "engines": { + "node": ">=6" } }, - "../../service/node_modules/pend": { - "version": "1.2.0", - "dev": true, - "license": "MIT", - "peer": true - }, - "../../service/node_modules/performance-now": { - "version": "2.1.0", - "dev": true, - "license": "MIT", - "peer": true + "node_modules/@ngageoint/mage.service/node_modules/parse-json": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", + "integrity": "sha512-aOIos8bujGN93/8Ox/jPLh7RwVnPEysynVFE+fQZyg6jKELEHwzgKdLRFHUgXJL6kylijVSBC4BvN9OmsB48Rw==", + "extraneous": true, + "dependencies": { + "error-ex": "^1.3.1", + "json-parse-better-errors": "^1.0.1" + }, + "engines": { + "node": ">=4" + } }, - "../../service/node_modules/picomatch": { - "version": "2.3.1", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/parseurl": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", + "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==", "peer": true, "engines": { - "node": ">=8.6" - }, - "funding": { - "url": "https://github.com/sponsors/jonschlinkert" + "node": ">= 0.8" } }, - "../../service/node_modules/pidtree": { - "version": "0.3.1", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/passport": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/passport/-/passport-0.7.0.tgz", + "integrity": "sha512-cPLl+qZpSc+ireUvt+IzqbED1cHHkDoVYMo30jbJIdOOjQ1MQYZBPiNvmi8UM6lJuOpTPXJGZQk0DtC4y61MYQ==", "license": "MIT", "peer": true, - "bin": { - "pidtree": "bin/pidtree.js" + "dependencies": { + "passport-strategy": "1.x.x", + "pause": "0.0.1", + "utils-merge": "^1.0.1" }, "engines": { - "node": ">=0.10" + "node": ">= 0.4.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/jaredhanson" } }, - "../../service/node_modules/pify": { - "version": "3.0.0", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/passport-anonymous": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/passport-anonymous/-/passport-anonymous-1.0.1.tgz", + "integrity": "sha512-Mk2dls97nLTzHpsWCYQ54IVGucWaiWSHHr3+IhWYAebg4dRgRQIfyoeYrixoxB2z2z4+EM7p9yjC+a3yMB5z5A==", "peer": true, + "dependencies": { + "passport-strategy": "1.x.x" + }, "engines": { - "node": ">=4" + "node": ">= 0.4.0" } }, - "../../service/node_modules/pkg-dir": { - "version": "4.2.0", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/passport-http-bearer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/passport-http-bearer/-/passport-http-bearer-1.0.1.tgz", + "integrity": "sha512-SELQM+dOTuMigr9yu8Wo4Fm3ciFfkMq5h/ZQ8ffi4ELgZrX1xh9PlglqZdcUZ1upzJD/whVyt+YWF62s3U6Ipw==", "peer": true, "dependencies": { - "find-up": "^4.0.0" + "passport-strategy": "1.x.x" }, "engines": { - "node": ">=8" + "node": ">= 0.4.0" } }, - "../../service/node_modules/pkg-dir/node_modules/find-up": { - "version": "4.1.0", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/passport-ldapauth": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/passport-ldapauth/-/passport-ldapauth-3.0.1.tgz", + "integrity": "sha512-TRRx3BHi8GC8MfCT9wmghjde/EGeKjll7zqHRRfGRxXbLcaDce2OftbQrFG7/AWaeFhR6zpZHtBQ/IkINdLVjQ==", "peer": true, "dependencies": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" + "ldapauth-fork": "^5.0.1", + "passport-strategy": "^1.0.0" }, "engines": { - "node": ">=8" + "node": ">=0.8.0" } }, - "../../service/node_modules/pkg-dir/node_modules/locate-path": { - "version": "5.0.0", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/passport-local": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/passport-local/-/passport-local-1.0.0.tgz", + "integrity": "sha512-9wCE6qKznvf9mQYYbgJ3sVOHmCWoUNMVFoZzNoznmISbhnNNPhN9xfY3sLmScHMetEJeoY7CXwfhCe7argfQow==", "peer": true, "dependencies": { - "p-locate": "^4.1.0" + "passport-strategy": "1.x.x" }, "engines": { - "node": ">=8" + "node": ">= 0.4.0" } }, - "../../service/node_modules/pkg-dir/node_modules/p-limit": { - "version": "2.3.0", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/passport-oauth2": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/passport-oauth2/-/passport-oauth2-1.8.0.tgz", + "integrity": "sha512-cjsQbOrXIDE4P8nNb3FQRCCmJJ/utnFKEz2NX209f7KOHPoX18gF7gBzBbLLsj2/je4KrgiwLLGjf0lm9rtTBA==", "license": "MIT", "peer": true, "dependencies": { - "p-try": "^2.0.0" + "base64url": "3.x.x", + "oauth": "0.10.x", + "passport-strategy": "1.x.x", + "uid2": "0.0.x", + "utils-merge": "1.x.x" }, "engines": { - "node": ">=6" + "node": ">= 0.4.0" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "type": "github", + "url": "https://github.com/sponsors/jaredhanson" } }, - "../../service/node_modules/pkg-dir/node_modules/p-locate": { - "version": "4.1.0", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/passport-openidconnect": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/passport-openidconnect/-/passport-openidconnect-0.1.2.tgz", + "integrity": "sha512-JX3rTyW+KFZ/E9OF/IpXJPbyLO9vGzcmXB5FgSP2jfL3LGKJPdV7zUE8rWeKeeI/iueQggOeFa3onrCmhxXZTg==", "license": "MIT", "peer": true, "dependencies": { - "p-limit": "^2.2.0" + "oauth": "0.10.x", + "passport-strategy": "1.x.x" }, "engines": { - "node": ">=8" + "node": ">= 0.6.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/jaredhanson" } }, - "../../service/node_modules/pkg-dir/node_modules/p-try": { - "version": "2.2.0", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/passport-strategy": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/passport-strategy/-/passport-strategy-1.0.0.tgz", + "integrity": "sha512-CB97UUvDKJde2V0KDWWB3lyf6PC3FaZP7YxZ2G8OAtn9p4HI9j9JLP9qjOGZFvyl8uwNT8qM+hGnz/n16NI7oA==", "peer": true, "engines": { - "node": ">=6" + "node": ">= 0.4.0" } }, - "../../service/node_modules/pkg-dir/node_modules/path-exists": { + "node_modules/@ngageoint/mage.service/node_modules/path-exists": { "version": "4.0.0", - "dev": true, - "license": "MIT", - "peer": true, + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "extraneous": true, "engines": { "node": ">=8" } }, - "../../service/node_modules/pkginfo": { + "node_modules/@ngageoint/mage.service/node_modules/path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", + "peer": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "extraneous": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/path-parse": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/path-scurry": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.11.1.tgz", + "integrity": "sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==", + "extraneous": true, + "dependencies": { + "lru-cache": "^10.2.0", + "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0" + }, + "engines": { + "node": ">=16 || 14 >=14.18" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/path-scurry/node_modules/lru-cache": { + "version": "10.3.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.3.0.tgz", + "integrity": "sha512-CQl19J/g+Hbjbv4Y3mFNNXFEL/5t/KCg8POCuUqd4rMKjGG+j1ybER83hxV58zL+dFI1PTkt3GNFSHRt+d8qEQ==", + "extraneous": true, + "engines": { + "node": "14 || >=16.14" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/path-to-regexp": { + "version": "0.1.12", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.12.tgz", + "integrity": "sha512-RA1GjUVMnvYFxuqovrEqZoxxW5NUZqbwKtYz/Tt7nXerk0LbLblQmrsgdeOxV5SFHf0UDggjS/bSeOZwt1pmEQ==", + "license": "MIT", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/path-type": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", + "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", + "extraneous": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/pathval": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/pathval/-/pathval-1.1.1.tgz", + "integrity": "sha512-Dp6zGqpTdETdR63lehJYPeIOqpiNBNtc7BpWSLrOje7UaIsE5aY92r/AunQA7rsXvet3lrJ3JnZX29UPTKXyKQ==", + "extraneous": true, + "engines": { + "node": "*" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/pause": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/pause/-/pause-0.0.1.tgz", + "integrity": "sha512-KG8UEiEVkR3wGEb4m5yZkVCzigAD+cVEJck2CzYZO37ZGJfctvVptVO192MwrtPhzONn6go8ylnOdMhKqi4nfg==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/pause-stream": { + "version": "0.0.11", + "resolved": "https://registry.npmjs.org/pause-stream/-/pause-stream-0.0.11.tgz", + "integrity": "sha512-e3FBlXLmN/D1S+zHzanP4E/4Z60oFAa3O051qt1pxa7DEJWKAyil6upYVXCWadEnuoqa4Pkc9oUx9zsxYeRv8A==", + "peer": true, + "dependencies": { + "through": "~2.3" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/peek-readable": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/peek-readable/-/peek-readable-4.1.0.tgz", + "integrity": "sha512-ZI3LnwUv5nOGbQzD9c2iDG6toheuXSZP5esSHBjopsXH4dg19soufvpUGA3uohi5anFtGb2lhAVdHzH6R/Evvg==", + "peer": true, + "engines": { + "node": ">=8" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/Borewit" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/pend": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz", + "integrity": "sha512-F3asv42UuXchdzt+xXqfW1OGlVBe+mxa2mqI0pg5yAHZPvFmY3Y6drSf/GQ1A86WgWEN9Kzh/WrgKa6iGcHXLg==", + "extraneous": true, + "license": "MIT" + }, + "node_modules/@ngageoint/mage.service/node_modules/performance-now": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", + "integrity": "sha512-7EAHlyLHI56VEIdK57uwHdHKIaAGbnXPiw0yWbarQZOKaKpvUIgW0jWRVLiatnM+XXlSwsanIBH/hzGMJulMow==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/picocolors": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.1.tgz", + "integrity": "sha512-anP1Z8qwhkbmu7MFP5iTt+wQKXgwzf7zTyGlcdzabySa9vd0Xt392U0rVmz9poOaBj0uHJKyyo9/upk0HrEQew==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "extraneous": true, + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/pidtree": { "version": "0.3.1", + "resolved": "https://registry.npmjs.org/pidtree/-/pidtree-0.3.1.tgz", + "integrity": "sha512-qQbW94hLHEqCg7nhby4yRC7G2+jYHY4Rguc2bjw7Uug4GIJuu1tvf2uHaZv5Q8zdt+WKJ6qK1FOI6amaWUo5FA==", + "extraneous": true, + "bin": { + "pidtree": "bin/pidtree.js" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/pify": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", + "integrity": "sha512-C3FsVNH1udSEX48gGX1xfvwTWfsYWj5U+8/uK15BGzIGrKoUpghX8hWZwa/OFnakBiiVNmBvemTJR5mcy7iPcg==", + "extraneous": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/pkg-dir": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", + "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", + "extraneous": true, + "license": "MIT", + "dependencies": { + "find-up": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/pkg-dir/node_modules/find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "extraneous": true, + "license": "MIT", + "dependencies": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/pkg-dir/node_modules/locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "extraneous": true, + "license": "MIT", + "dependencies": { + "p-locate": "^4.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/pkg-dir/node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "extraneous": true, + "license": "MIT", + "dependencies": { + "p-try": "^2.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/pkg-dir/node_modules/p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "extraneous": true, "license": "MIT", + "dependencies": { + "p-limit": "^2.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/pkginfo": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/pkginfo/-/pkginfo-0.3.1.tgz", + "integrity": "sha512-yO5feByMzAp96LtP58wvPKSbaKAi/1C4kV9XpTctr6EepnP6F33RBNOiVrdz9BrPA98U2BMFsTNHo44TWcbQ2A==", "peer": true, "engines": { "node": ">= 0.4.0" } }, - "../../service/node_modules/polygon-clipping": { - "version": "0.15.3", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/polygon-clipping": { + "version": "0.15.7", + "resolved": "https://registry.npmjs.org/polygon-clipping/-/polygon-clipping-0.15.7.tgz", + "integrity": "sha512-nhfdr83ECBg6xtqOAJab1tbksbBAOMUltN60bU+llHVOL0e5Onm1WpAXXWXVB39L8AJFssoIhEVuy/S90MmotA==", "peer": true, "dependencies": { + "robust-predicates": "^3.0.2", "splaytree": "^3.1.0" } }, - "../../service/node_modules/ports": { + "node_modules/@ngageoint/mage.service/node_modules/ports": { "version": "1.1.0", - "license": "Apache 2.0", + "resolved": "https://registry.npmjs.org/ports/-/ports-1.1.0.tgz", + "integrity": "sha512-XmS7dspHnkTXZC75NkG0ti2hLj8aSyg1Izp87/2cWT7QhTo1vdtWsQ4ldp4BEQ/EXqy0s4yTATJUZ3t9RGZVpg==", "peer": true }, - "../../service/node_modules/prebuild-install": { - "version": "7.1.1", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/possible-typed-array-names": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/possible-typed-array-names/-/possible-typed-array-names-1.0.0.tgz", + "integrity": "sha512-d7Uw+eZoloe0EHDIYoe+bQ5WXnGMOpmiZFTuMWCwpjzzkL2nTjcKiAk4hh8TjnGye2TwWOk3UXucZ+3rbmBa8Q==", + "extraneous": true, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/prebuild-install": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/prebuild-install/-/prebuild-install-7.1.2.tgz", + "integrity": "sha512-UnNke3IQb6sgarcZIDU3gbMeTp/9SSU1DAIkil7PrqG1vZlBtY5msYccSKSHDqa3hNg436IXK+SNImReuA1wEQ==", + "optional": true, "peer": true, "dependencies": { "detect-libc": "^2.0.0", @@ -9188,34 +11199,29 @@ "node": ">=10" } }, - "../../service/node_modules/prebuild-install/node_modules/minimist": { - "version": "1.2.8", - "license": "MIT", - "peer": true, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "../../service/node_modules/precond": { + "node_modules/@ngageoint/mage.service/node_modules/precond": { "version": "0.2.3", + "resolved": "https://registry.npmjs.org/precond/-/precond-0.2.3.tgz", + "integrity": "sha512-QCYG84SgGyGzqJ/vlMsxeXd/pgL/I94ixdNFyh1PusWmTCyVfPJjZ1K1jvHtsbfnXQs2TSkEP2fR7QiMZAnKFQ==", "peer": true, "engines": { "node": ">= 0.6" } }, - "../../service/node_modules/prelude-ls": { - "version": "1.1.2", - "dev": true, - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/prelude-ls": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", + "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", + "extraneous": true, "engines": { "node": ">= 0.8.0" } }, - "../../service/node_modules/prettier": { + "node_modules/@ngageoint/mage.service/node_modules/prettier": { "version": "1.19.1", - "dev": true, - "license": "MIT", - "peer": true, + "resolved": "https://registry.npmjs.org/prettier/-/prettier-1.19.1.tgz", + "integrity": "sha512-s7PoyDv/II1ObgQunCbB9PdLmUcBZcnWOcxDh7O0N/UwDEsHyqkW+Qh28jW+mVuCdx7gLB0BotYI1Y6uI9iyew==", + "extraneous": true, "bin": { "prettier": "bin-prettier.js" }, @@ -9223,11 +11229,11 @@ "node": ">=4" } }, - "../../service/node_modules/prettier-linter-helpers": { + "node_modules/@ngageoint/mage.service/node_modules/prettier-linter-helpers": { "version": "1.0.0", - "dev": true, - "license": "MIT", - "peer": true, + "resolved": "https://registry.npmjs.org/prettier-linter-helpers/-/prettier-linter-helpers-1.0.0.tgz", + "integrity": "sha512-GbK2cP9nraSSUF9N2XwUwqfzlAFlMNYYl+ShE/V+H8a9uNl/oUqB1w2EL54Jh0OlyRSd8RfWYJ3coVS4TROP2w==", + "extraneous": true, "dependencies": { "fast-diff": "^1.1.2" }, @@ -9235,49 +11241,44 @@ "node": ">=6.0.0" } }, - "../../service/node_modules/process-nextick-args": { - "version": "1.0.7", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/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==", "peer": true }, - "../../service/node_modules/progress": { - "version": "2.0.3", - "dev": true, - "license": "MIT", - "peer": true, - "engines": { - "node": ">=0.4.0" - } - }, - "../../service/node_modules/proj4": { + "node_modules/@ngageoint/mage.service/node_modules/proj4": { "version": "2.8.0", - "license": "MIT", + "resolved": "https://registry.npmjs.org/proj4/-/proj4-2.8.0.tgz", + "integrity": "sha512-baC+YcD4xsSqJ+CpCZljj2gcQDhlKb+J+Zjv/2KSBwWNjk4M0pafgQsE+mWurd84tflMIsP+7j7mtIpFDHzQfQ==", "peer": true, "dependencies": { "mgrs": "1.0.0", "wkt-parser": "^1.3.1" } }, - "../../service/node_modules/promise": { + "node_modules/@ngageoint/mage.service/node_modules/promise": { "version": "7.3.1", - "license": "MIT", + "resolved": "https://registry.npmjs.org/promise/-/promise-7.3.1.tgz", + "integrity": "sha512-nolQXZ/4L+bP/UGlkfaIujX9BKxGwmQ9OT4mOt5yvy8iK1h3wqTEJCijzGANTCCl9nWjY41juyAn2K3Q1hLLTg==", "peer": true, "dependencies": { "asap": "~2.0.3" } }, - "../../service/node_modules/propagate": { + "node_modules/@ngageoint/mage.service/node_modules/propagate": { "version": "2.0.1", - "dev": true, - "license": "MIT", - "peer": true, + "resolved": "https://registry.npmjs.org/propagate/-/propagate-2.0.1.tgz", + "integrity": "sha512-vGrhOavPSTz4QVNuBNdcNXePNdNMaO1xj9yBeH1ScQPjk/rhg9sSlCXPhMkFuaNNW/syTvYqsnbIJxMBfRbbag==", + "extraneous": true, "engines": { "node": ">= 8" } }, - "../../service/node_modules/proxy-addr": { + "node_modules/@ngageoint/mage.service/node_modules/proxy-addr": { "version": "2.0.7", - "license": "MIT", + "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz", + "integrity": "sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==", "peer": true, "dependencies": { "forwarded": "0.2.0", @@ -9287,34 +11288,43 @@ "node": ">= 0.10" } }, - "../../service/node_modules/proxyquire": { + "node_modules/@ngageoint/mage.service/node_modules/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==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/proxyquire": { "version": "2.1.3", - "dev": true, - "license": "MIT", - "peer": true, + "resolved": "https://registry.npmjs.org/proxyquire/-/proxyquire-2.1.3.tgz", + "integrity": "sha512-BQWfCqYM+QINd+yawJz23tbBM40VIGXOdDw3X344KcclI/gtBbdWF6SlQ4nK/bYhF9d27KYug9WzljHC6B9Ysg==", + "extraneous": true, "dependencies": { "fill-keys": "^1.0.2", "module-not-found-error": "^1.0.1", "resolve": "^1.11.1" } }, - "../../service/node_modules/pseudomap": { + "node_modules/@ngageoint/mage.service/node_modules/pseudomap": { "version": "1.0.2", - "license": "ISC", - "peer": true + "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", + "integrity": "sha512-b/YwNhb8lk1Zz2+bXXpS/LK9OisiZZ1SNsSLxN1x2OXVEhW2Ckr/7mWE5vrC1ZTiJlD9g19jWszTmJsB+oEpFQ==", + "extraneous": true }, - "../../service/node_modules/psl": { - "version": "1.8.0", - "dev": true, - "license": "MIT", - "peer": true + "node_modules/@ngageoint/mage.service/node_modules/psl": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/psl/-/psl-1.9.0.tgz", + "integrity": "sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag==", + "extraneous": true }, - "../../service/node_modules/pug": { - "version": "3.0.2", + "node_modules/@ngageoint/mage.service/node_modules/pug": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/pug/-/pug-3.0.3.tgz", + "integrity": "sha512-uBi6kmc9f3SZ3PXxqcHiUZLmIXgfgWooKWXcwSGwQd2Zi5Rb0bT14+8CJjJgI8AB+nndLaNgHGrcc6bPIB665g==", "license": "MIT", "peer": true, "dependencies": { - "pug-code-gen": "^3.0.2", + "pug-code-gen": "^3.0.3", "pug-filters": "^4.0.0", "pug-lexer": "^5.0.1", "pug-linker": "^4.0.0", @@ -9324,9 +11334,10 @@ "pug-strip-comments": "^2.0.0" } }, - "../../service/node_modules/pug-attrs": { + "node_modules/@ngageoint/mage.service/node_modules/pug-attrs": { "version": "3.0.0", - "license": "MIT", + "resolved": "https://registry.npmjs.org/pug-attrs/-/pug-attrs-3.0.0.tgz", + "integrity": "sha512-azINV9dUtzPMFQktvTXciNAfAuVh/L/JCl0vtPCwvOA21uZrC08K/UnmrL+SXGEVc1FwzjW62+xw5S/uaLj6cA==", "peer": true, "dependencies": { "constantinople": "^4.0.1", @@ -9334,29 +11345,32 @@ "pug-runtime": "^3.0.0" } }, - "../../service/node_modules/pug-code-gen": { - "version": "3.0.2", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/pug-code-gen": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/pug-code-gen/-/pug-code-gen-3.0.3.tgz", + "integrity": "sha512-cYQg0JW0w32Ux+XTeZnBEeuWrAY7/HNE6TWnhiHGnnRYlCgyAUPoyh9KzCMa9WhcJlJ1AtQqpEYHc+vbCzA+Aw==", "peer": true, "dependencies": { "constantinople": "^4.0.1", "doctypes": "^1.1.0", "js-stringify": "^1.0.2", "pug-attrs": "^3.0.0", - "pug-error": "^2.0.0", - "pug-runtime": "^3.0.0", + "pug-error": "^2.1.0", + "pug-runtime": "^3.0.1", "void-elements": "^3.1.0", "with": "^7.0.0" } }, - "../../service/node_modules/pug-error": { - "version": "2.0.0", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/pug-error": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/pug-error/-/pug-error-2.1.0.tgz", + "integrity": "sha512-lv7sU9e5Jk8IeUheHata6/UThZ7RK2jnaaNztxfPYUY+VxZyk/ePVaNZ/vwmH8WqGvDz3LrNYt/+gA55NDg6Pg==", "peer": true }, - "../../service/node_modules/pug-filters": { + "node_modules/@ngageoint/mage.service/node_modules/pug-filters": { "version": "4.0.0", - "license": "MIT", + "resolved": "https://registry.npmjs.org/pug-filters/-/pug-filters-4.0.0.tgz", + "integrity": "sha512-yeNFtq5Yxmfz0f9z2rMXGw/8/4i1cCFecw/Q7+D0V2DdtII5UvqE12VaZ2AY7ri6o5RNXiweGH79OCq+2RQU4A==", "peer": true, "dependencies": { "constantinople": "^4.0.1", @@ -9366,9 +11380,10 @@ "resolve": "^1.15.1" } }, - "../../service/node_modules/pug-lexer": { + "node_modules/@ngageoint/mage.service/node_modules/pug-lexer": { "version": "5.0.1", - "license": "MIT", + "resolved": "https://registry.npmjs.org/pug-lexer/-/pug-lexer-5.0.1.tgz", + "integrity": "sha512-0I6C62+keXlZPZkOJeVam9aBLVP2EnbeDw3An+k0/QlqdwH6rv8284nko14Na7c0TtqtogfWXcRoFE4O4Ff20w==", "peer": true, "dependencies": { "character-parser": "^2.2.0", @@ -9376,89 +11391,107 @@ "pug-error": "^2.0.0" } }, - "../../service/node_modules/pug-linker": { + "node_modules/@ngageoint/mage.service/node_modules/pug-linker": { "version": "4.0.0", - "license": "MIT", + "resolved": "https://registry.npmjs.org/pug-linker/-/pug-linker-4.0.0.tgz", + "integrity": "sha512-gjD1yzp0yxbQqnzBAdlhbgoJL5qIFJw78juN1NpTLt/mfPJ5VgC4BvkoD3G23qKzJtIIXBbcCt6FioLSFLOHdw==", "peer": true, "dependencies": { "pug-error": "^2.0.0", "pug-walk": "^2.0.0" } }, - "../../service/node_modules/pug-load": { + "node_modules/@ngageoint/mage.service/node_modules/pug-load": { "version": "3.0.0", - "license": "MIT", + "resolved": "https://registry.npmjs.org/pug-load/-/pug-load-3.0.0.tgz", + "integrity": "sha512-OCjTEnhLWZBvS4zni/WUMjH2YSUosnsmjGBB1An7CsKQarYSWQ0GCVyd4eQPMFJqZ8w9xgs01QdiZXKVjk92EQ==", "peer": true, "dependencies": { "object-assign": "^4.1.1", "pug-walk": "^2.0.0" } }, - "../../service/node_modules/pug-parser": { + "node_modules/@ngageoint/mage.service/node_modules/pug-parser": { "version": "6.0.0", - "license": "MIT", + "resolved": "https://registry.npmjs.org/pug-parser/-/pug-parser-6.0.0.tgz", + "integrity": "sha512-ukiYM/9cH6Cml+AOl5kETtM9NR3WulyVP2y4HOU45DyMim1IeP/OOiyEWRr6qk5I5klpsBnbuHpwKmTx6WURnw==", "peer": true, "dependencies": { "pug-error": "^2.0.0", "token-stream": "1.0.0" } }, - "../../service/node_modules/pug-runtime": { + "node_modules/@ngageoint/mage.service/node_modules/pug-runtime": { "version": "3.0.1", - "license": "MIT", + "resolved": "https://registry.npmjs.org/pug-runtime/-/pug-runtime-3.0.1.tgz", + "integrity": "sha512-L50zbvrQ35TkpHwv0G6aLSuueDRwc/97XdY8kL3tOT0FmhgG7UypU3VztfV/LATAvmUfYi4wNxSajhSAeNN+Kg==", "peer": true }, - "../../service/node_modules/pug-strip-comments": { + "node_modules/@ngageoint/mage.service/node_modules/pug-strip-comments": { "version": "2.0.0", - "license": "MIT", + "resolved": "https://registry.npmjs.org/pug-strip-comments/-/pug-strip-comments-2.0.0.tgz", + "integrity": "sha512-zo8DsDpH7eTkPHCXFeAk1xZXJbyoTfdPlNR0bK7rpOMuhBYb0f5qUVCO1xlsitYd3w5FQTK7zpNVKb3rZoUrrQ==", "peer": true, "dependencies": { "pug-error": "^2.0.0" } }, - "../../service/node_modules/pug-walk": { + "node_modules/@ngageoint/mage.service/node_modules/pug-walk": { "version": "2.0.0", - "license": "MIT", + "resolved": "https://registry.npmjs.org/pug-walk/-/pug-walk-2.0.0.tgz", + "integrity": "sha512-yYELe9Q5q9IQhuvqsZNwA5hfPkMJ8u92bQLIMcsMxf/VADjNtEYptU+inlufAFYcWdHlwNfZOEnOOQrZrcyJCQ==", "peer": true }, - "../../service/node_modules/pump": { + "node_modules/@ngageoint/mage.service/node_modules/pump": { "version": "3.0.0", - "license": "MIT", + "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", + "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", + "optional": true, "peer": true, "dependencies": { "end-of-stream": "^1.1.0", "once": "^1.3.1" } }, - "../../service/node_modules/punycode": { - "version": "2.1.1", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/punycode": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz", + "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==", "peer": true, "engines": { "node": ">=6" } }, - "../../service/node_modules/qs": { - "version": "6.5.2", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/qs": { + "version": "6.13.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.13.0.tgz", + "integrity": "sha512-+38qI9SOr8tfZ4QmJNplMUxqjbe7LKvvZgWdExBOmd+egZTtjLB67Gu0HRX3u/XOq7UU2Nx6nsjvS16Z9uwfpg==", "license": "BSD-3-Clause", "peer": true, + "dependencies": { + "side-channel": "^1.0.6" + }, "engines": { "node": ">=0.6" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "../../service/node_modules/queue": { + "node_modules/@ngageoint/mage.service/node_modules/queue": { "version": "6.0.1", - "license": "MIT", + "resolved": "https://registry.npmjs.org/queue/-/queue-6.0.1.tgz", + "integrity": "sha512-AJBQabRCCNr9ANq8v77RJEv73DPbn55cdTb+Giq4X0AVnNVZvMHlYp7XlQiN+1npCZj1DuSmaA2hYVUUDgxFDg==", "peer": true, "dependencies": { "inherits": "~2.0.3" } }, - "../../service/node_modules/queue-microtask": { + "node_modules/@ngageoint/mage.service/node_modules/queue-microtask": { "version": "1.2.3", - "dev": true, + "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", + "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", + "extraneous": true, "funding": [ { "type": "github", @@ -9472,20 +11505,19 @@ "type": "consulting", "url": "https://feross.org/support" } - ], - "license": "MIT", - "peer": true + ] }, - "../../service/node_modules/quickselect": { + "node_modules/@ngageoint/mage.service/node_modules/quickselect": { "version": "2.0.0", - "license": "ISC", + "resolved": "https://registry.npmjs.org/quickselect/-/quickselect-2.0.0.tgz", + "integrity": "sha512-RKJ22hX8mHe3Y6wH/N3wCM6BWtjaxIyyUIkpHOvfFnxdI4yD4tBXEBKSbriGujF6jnSVkJrffuo6vxACiSSxIw==", "peer": true }, - "../../service/node_modules/randexp": { + "node_modules/@ngageoint/mage.service/node_modules/randexp": { "version": "0.5.3", - "dev": true, - "license": "MIT", - "peer": true, + "resolved": "https://registry.npmjs.org/randexp/-/randexp-0.5.3.tgz", + "integrity": "sha512-U+5l2KrcMNOUPYvazA3h5ekF80FHTUG+87SEAmHZmolh1M+i/WyTCxVzmi+tidIa1tM4BSe8g2Y/D3loWDjj+w==", + "extraneous": true, "dependencies": { "drange": "^1.0.2", "ret": "^0.2.0" @@ -9494,29 +11526,44 @@ "node": ">=4" } }, - "../../service/node_modules/random-bytes": { + "node_modules/@ngageoint/mage.service/node_modules/random-bytes": { "version": "1.0.0", - "license": "MIT", + "resolved": "https://registry.npmjs.org/random-bytes/-/random-bytes-1.0.0.tgz", + "integrity": "sha512-iv7LhNVO047HzYR3InF6pUcUsPQiHTM1Qal51DcGSuZFBil1aBBWG5eHPNek7bvILMaYJ/8RU1e8w1AMdHmLQQ==", "peer": true, "engines": { "node": ">= 0.8" } }, - "../../service/node_modules/range-parser": { + "node_modules/@ngageoint/mage.service/node_modules/randombytes": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", + "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", + "extraneous": true, + "license": "MIT", + "dependencies": { + "safe-buffer": "^5.1.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/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==", "license": "MIT", "peer": true, "engines": { "node": ">= 0.6" } }, - "../../service/node_modules/raw-body": { - "version": "2.4.3", + "node_modules/@ngageoint/mage.service/node_modules/raw-body": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.2.tgz", + "integrity": "sha512-8zGqypfENjCIqGhgXToC8aB2r7YrBX+AQAfIPs/Mlk+BtPTztOvTS01NRW/3Eh60J+a48lt8qsCzirQ6loCVfA==", "license": "MIT", "peer": true, "dependencies": { "bytes": "3.1.2", - "http-errors": "1.8.1", + "http-errors": "2.0.0", "iconv-lite": "0.4.24", "unpipe": "1.0.0" }, @@ -9524,8 +11571,10 @@ "node": ">= 0.8" } }, - "../../service/node_modules/raw-body/node_modules/iconv-lite": { + "node_modules/@ngageoint/mage.service/node_modules/raw-body/node_modules/iconv-lite": { "version": "0.4.24", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", + "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", "license": "MIT", "peer": true, "dependencies": { @@ -9535,17 +11584,20 @@ "node": ">=0.10.0" } }, - "../../service/node_modules/rbush": { + "node_modules/@ngageoint/mage.service/node_modules/rbush": { "version": "3.0.1", - "license": "MIT", + "resolved": "https://registry.npmjs.org/rbush/-/rbush-3.0.1.tgz", + "integrity": "sha512-XRaVO0YecOpEuIvbhbpTrZgoiI6xBlz6hnlr6EHhd+0x9ase6EmeN+hdwwUaJvLcsFFQ8iWVF1GAK1yB0BWi0w==", "peer": true, "dependencies": { "quickselect": "^2.0.0" } }, - "../../service/node_modules/rc": { + "node_modules/@ngageoint/mage.service/node_modules/rc": { "version": "1.2.8", - "license": "(BSD-2-Clause OR MIT OR Apache-2.0)", + "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", + "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==", + "optional": true, "peer": true, "dependencies": { "deep-extend": "^0.6.0", @@ -9557,11 +11609,21 @@ "rc": "cli.js" } }, - "../../service/node_modules/read-pkg": { - "version": "3.0.0", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/rc/node_modules/strip-json-comments": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", + "integrity": "sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ==", + "optional": true, "peer": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/read-pkg": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-3.0.0.tgz", + "integrity": "sha512-BLq/cCO9two+lBgiTYNqD6GdtK8s4NpaWrl6/rCO9w0TUS8oJl7cmToOZfRYllKTISY6nt1U7jQ53brmKqY6BA==", + "extraneous": true, "dependencies": { "load-json-file": "^4.0.0", "normalize-package-data": "^2.3.2", @@ -9571,37 +11633,96 @@ "node": ">=4" } }, - "../../service/node_modules/readable-stream": { - "version": "2.0.6", - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/read-pkg-up": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-4.0.0.tgz", + "integrity": "sha512-6etQSH7nJGsK0RbG/2TeDzZFa8shjQ1um+SwQQ5cwKy0dhSXdOncEhb1CPpvQG4h7FyOV6EB6YlV0yJvZQNAkA==", + "extraneous": true, "dependencies": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.1", - "isarray": "~1.0.0", - "process-nextick-args": "~1.0.6", - "string_decoder": "~0.10.x", - "util-deprecate": "~1.0.1" + "find-up": "^3.0.0", + "read-pkg": "^3.0.0" + }, + "engines": { + "node": ">=6" } }, - "../../service/node_modules/readable-web-to-node-stream": { - "version": "3.0.2", - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/read-pkg-up/node_modules/find-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "extraneous": true, "dependencies": { - "readable-stream": "^3.6.0" + "locate-path": "^3.0.0" }, "engines": { - "node": ">=8" + "node": ">=6" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/read-pkg-up/node_modules/locate-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "extraneous": true, + "dependencies": { + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/read-pkg-up/node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "extraneous": true, + "dependencies": { + "p-try": "^2.0.0" + }, + "engines": { + "node": ">=6" }, "funding": { - "type": "github", - "url": "https://github.com/sponsors/Borewit" + "url": "https://github.com/sponsors/sindresorhus" } }, - "../../service/node_modules/readable-web-to-node-stream/node_modules/readable-stream": { - "version": "3.6.0", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/read-pkg-up/node_modules/p-locate": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "extraneous": true, + "dependencies": { + "p-limit": "^2.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/read-pkg-up/node_modules/path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==", + "extraneous": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/read-pkg/node_modules/path-type": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz", + "integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==", + "extraneous": true, + "dependencies": { + "pify": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/readable-stream": { + "version": "3.6.2", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", + "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", "peer": true, "dependencies": { "inherits": "^2.0.3", @@ -9612,72 +11733,79 @@ "node": ">= 6" } }, - "../../service/node_modules/readable-web-to-node-stream/node_modules/string_decoder": { - "version": "1.3.0", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/readable-web-to-node-stream": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/readable-web-to-node-stream/-/readable-web-to-node-stream-3.0.2.tgz", + "integrity": "sha512-ePeK6cc1EcKLEhJFt/AebMCLL+GgSKhuygrZ/GLaKZYEecIgIECf4UaUuaByiGtzckwR4ain9VzUh95T1exYGw==", "peer": true, "dependencies": { - "safe-buffer": "~5.2.0" + "readable-stream": "^3.6.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/Borewit" } }, - "../../service/node_modules/readdir-glob": { - "version": "1.1.1", - "license": "Apache-2.0", + "node_modules/@ngageoint/mage.service/node_modules/readdir-glob": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/readdir-glob/-/readdir-glob-1.1.3.tgz", + "integrity": "sha512-v05I2k7xN8zXvPD9N+z/uhXPaj0sUFCe2rcWZIpBsqxfP7xXFQ0tipAd/wjj1YxWyWtUS5IDJpOG82JKt2EAVA==", "peer": true, "dependencies": { - "minimatch": "^3.0.4" + "minimatch": "^5.1.0" } }, - "../../service/node_modules/readdirp": { - "version": "3.2.0", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/readdir-glob/node_modules/minimatch": { + "version": "5.1.6", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz", + "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==", "peer": true, "dependencies": { - "picomatch": "^2.0.4" + "brace-expansion": "^2.0.1" }, "engines": { - "node": ">= 8" + "node": ">=10" } }, - "../../service/node_modules/regexp-clone": { - "version": "0.0.1", - "license": "MIT", - "peer": true - }, - "../../service/node_modules/regexp.prototype.flags": { - "version": "1.4.2", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/readdirp": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "extraneous": true, "license": "MIT", - "peer": true, "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3" + "picomatch": "^2.2.1" }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=8.10.0" } }, - "../../service/node_modules/regexpp": { - "version": "3.2.0", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/regexp.prototype.flags": { + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.2.tgz", + "integrity": "sha512-NcDiDkTLuPR+++OCKB0nWafEmhg/Da8aUPLPMQbK+bxKKCm1/S5he+AqYa4PlMCVBalb4/yxIRub6qkEx5yJbw==", + "extraneous": true, + "dependencies": { + "call-bind": "^1.0.6", + "define-properties": "^1.2.1", + "es-errors": "^1.3.0", + "set-function-name": "^2.0.1" + }, "engines": { - "node": ">=8" + "node": ">= 0.4" }, "funding": { - "url": "https://github.com/sponsors/mysticatea" + "url": "https://github.com/sponsors/ljharb" } }, - "../../service/node_modules/release-zalgo": { + "node_modules/@ngageoint/mage.service/node_modules/release-zalgo": { "version": "1.0.0", - "dev": true, - "license": "ISC", - "peer": true, + "resolved": "https://registry.npmjs.org/release-zalgo/-/release-zalgo-1.0.0.tgz", + "integrity": "sha512-gUAyHVHPPC5wdqX/LG4LWtRYtgjxyX78oanFNTMMyFEfOqdC54s3eE82imuWKbOeqYht2CrNf64Qb8vgmmtZGA==", + "extraneous": true, "dependencies": { "es6-error": "^4.0.1" }, @@ -9685,9 +11813,10 @@ "node": ">=4" } }, - "../../service/node_modules/reproject": { + "node_modules/@ngageoint/mage.service/node_modules/reproject": { "version": "1.2.5", - "license": "MIT", + "resolved": "https://registry.npmjs.org/reproject/-/reproject-1.2.5.tgz", + "integrity": "sha512-cTH78fi1uuv5gzW/GVepO4LbCvOUhO0X2BEyyvrKkYb4KPRmDPs7cZnIxemHPUIch/CoSI8MPLmXRHZFSHjbKw==", "peer": true, "dependencies": { "concat-stream": "^2.0.0", @@ -9700,12 +11829,13 @@ "reproject": "cli.js" } }, - "../../service/node_modules/reproject/node_modules/concat-stream": { + "node_modules/@ngageoint/mage.service/node_modules/reproject/node_modules/concat-stream": { "version": "2.0.0", + "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-2.0.0.tgz", + "integrity": "sha512-MWufYdFw53ccGjCA+Ol7XJYpAlW6/prSMzuPOTRnJGcGzuhLn4Scrz7qf6o8bROZ514ltazcIFJZevcfbo0x7A==", "engines": [ "node >= 6.0" ], - "license": "MIT", "peer": true, "dependencies": { "buffer-from": "^1.0.0", @@ -9714,32 +11844,12 @@ "typedarray": "^0.0.6" } }, - "../../service/node_modules/reproject/node_modules/readable-stream": { - "version": "3.6.0", - "license": "MIT", - "peer": true, - "dependencies": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - }, - "engines": { - "node": ">= 6" - } - }, - "../../service/node_modules/reproject/node_modules/string_decoder": { - "version": "1.3.0", - "license": "MIT", - "peer": true, - "dependencies": { - "safe-buffer": "~5.2.0" - } - }, - "../../service/node_modules/request": { + "node_modules/@ngageoint/mage.service/node_modules/request": { "version": "2.88.2", - "dev": true, - "license": "Apache-2.0", - "peer": true, + "resolved": "https://registry.npmjs.org/request/-/request-2.88.2.tgz", + "integrity": "sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw==", + "deprecated": "request has been deprecated, see https://github.com/request/request/issues/3142", + "extraneous": true, "dependencies": { "aws-sign2": "~0.7.0", "aws4": "^1.8.0", @@ -9766,36 +11876,61 @@ "node": ">= 6" } }, - "../../service/node_modules/require_optional": { - "version": "1.0.1", - "license": "Apache-2.0", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/request/node_modules/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==", + "extraneous": true, "dependencies": { - "resolve-from": "^2.0.0", - "semver": "^5.1.0" + "asynckit": "^0.4.0", + "combined-stream": "^1.0.6", + "mime-types": "^2.1.12" + }, + "engines": { + "node": ">= 0.12" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/request/node_modules/qs": { + "version": "6.5.3", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.3.tgz", + "integrity": "sha512-qxXIEh4pCGfHICj1mAJQ2/2XVZkjCDTcEgfoSQxc/fYivUZxTkk7L3bDBJSoNrEzXI17oUO5Dp07ktqE5KzczA==", + "extraneous": true, + "engines": { + "node": ">=0.6" } }, - "../../service/node_modules/require-directory": { + "node_modules/@ngageoint/mage.service/node_modules/request/node_modules/uuid": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", + "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==", + "deprecated": "Please upgrade to version 7 or higher. Older versions may use Math.random() in certain circumstances, which is known to be problematic. See https://v8.dev/blog/math-random for details.", + "extraneous": true, + "bin": { + "uuid": "bin/uuid" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/require-directory": { "version": "2.1.1", - "dev": true, - "license": "MIT", - "peer": true, + "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", + "extraneous": true, "engines": { "node": ">=0.10.0" } }, - "../../service/node_modules/require-main-filename": { + "node_modules/@ngageoint/mage.service/node_modules/require-main-filename": { "version": "2.0.0", - "dev": true, - "license": "ISC", - "peer": true + "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz", + "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==", + "extraneous": true }, - "../../service/node_modules/resolve": { - "version": "1.22.0", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/resolve": { + "version": "1.22.8", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.8.tgz", + "integrity": "sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==", "peer": true, "dependencies": { - "is-core-module": "^2.8.1", + "is-core-module": "^2.13.0", "path-parse": "^1.0.7", "supports-preserve-symlinks-flag": "^1.0.0" }, @@ -9806,18 +11941,20 @@ "url": "https://github.com/sponsors/ljharb" } }, - "../../service/node_modules/resolve-from": { - "version": "2.0.0", - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/resolve-from": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", + "extraneous": true, "engines": { - "node": ">=0.10.0" + "node": ">=4" } }, - "../../service/node_modules/restore-cursor": { + "node_modules/@ngageoint/mage.service/node_modules/restore-cursor": { "version": "3.1.0", - "devOptional": true, - "license": "MIT", + "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz", + "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==", + "optional": true, "peer": true, "dependencies": { "onetime": "^5.1.0", @@ -9827,84 +11964,140 @@ "node": ">=8" } }, - "../../service/node_modules/ret": { + "node_modules/@ngageoint/mage.service/node_modules/ret": { "version": "0.2.2", - "dev": true, - "license": "MIT", - "peer": true, + "resolved": "https://registry.npmjs.org/ret/-/ret-0.2.2.tgz", + "integrity": "sha512-M0b3YWQs7R3Z917WRQy1HHA7Ba7D8hvZg6UE5mLykJxQVE2ju0IXbGlaHPPlkY+WN7wFP+wUMXmBFA0aV6vYGQ==", + "extraneous": true, "engines": { "node": ">=4" } }, - "../../service/node_modules/reusify": { + "node_modules/@ngageoint/mage.service/node_modules/reusify": { "version": "1.0.4", - "dev": true, - "license": "MIT", - "peer": true, + "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", + "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", + "extraneous": true, "engines": { "iojs": ">=1.0.0", "node": ">=0.10.0" } }, - "../../service/node_modules/rfc5646": { + "node_modules/@ngageoint/mage.service/node_modules/rfc5646": { "version": "3.0.0", - "license": "Public Domain", + "resolved": "https://registry.npmjs.org/rfc5646/-/rfc5646-3.0.0.tgz", + "integrity": "sha512-yFQuMO3ANS0jhQLB3b4NJGQ13RTm6tA9ZRf70nRSmOKchaT88pzh4fBdhcXEOptYdGw22vNqH7IRD/7pjDILZQ==", "peer": true }, - "../../service/node_modules/rimraf": { - "version": "2.4.5", - "devOptional": true, + "node_modules/@ngageoint/mage.service/node_modules/rimraf": { + "version": "5.0.10", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-5.0.10.tgz", + "integrity": "sha512-l0OE8wL34P4nJH/H2ffoaniAokM2qSmrtXHmlpvYr5AVVX8msAyW0l8NVJFDxlSK4u3Uh/f41cQheDVdnYijwQ==", + "extraneous": true, "license": "ISC", - "peer": true, "dependencies": { - "glob": "^6.0.1" + "glob": "^10.3.7" }, "bin": { - "rimraf": "bin.js" + "rimraf": "dist/esm/bin.mjs" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "../../service/node_modules/rimraf/node_modules/glob": { - "version": "6.0.4", - "devOptional": true, - "license": "ISC", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/rimraf/node_modules/foreground-child": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.2.1.tgz", + "integrity": "sha512-PXUUyLqrR2XCWICfv6ukppP96sdFwWbNEnfEMt7jNsISjMsvaLNinAHNDYyvkyU+SZG2BTSbT5NjG+vZslfGTA==", + "extraneous": true, "dependencies": { - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "2 || 3", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" + "cross-spawn": "^7.0.0", + "signal-exit": "^4.0.1" }, "engines": { - "node": "*" + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "../../service/node_modules/ripemd160": { - "version": "2.0.2", - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/rimraf/node_modules/glob": { + "version": "10.4.2", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.2.tgz", + "integrity": "sha512-GwMlUF6PkPo3Gk21UxkCohOv0PLcIXVtKyLlpEI28R/cO/4eNOdmLk3CMW1wROV/WR/EsZOWAfBbBOqYvs88/w==", + "extraneous": true, + "dependencies": { + "foreground-child": "^3.1.0", + "jackspeak": "^3.1.2", + "minimatch": "^9.0.4", + "minipass": "^7.1.2", + "package-json-from-dist": "^1.0.0", + "path-scurry": "^1.11.1" + }, + "bin": { + "glob": "dist/esm/bin.mjs" + }, + "engines": { + "node": ">=16 || 14 >=14.18" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/rimraf/node_modules/minimatch": { + "version": "9.0.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", + "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", + "extraneous": true, "dependencies": { - "hash-base": "^3.0.0", - "inherits": "^2.0.1" + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/rimraf/node_modules/signal-exit": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", + "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", + "extraneous": true, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "../../service/node_modules/rtree-sql.js": { + "node_modules/@ngageoint/mage.service/node_modules/robust-predicates": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/robust-predicates/-/robust-predicates-3.0.2.tgz", + "integrity": "sha512-IXgzBWvWQwE6PrDI05OvmXUIruQTcoMDzRsOd5CDvHCVLcLHMTSYvOK5Cm46kWqlV3yAbuSpBZdJ5oP5OUoStg==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/rtree-sql.js": { "version": "1.7.0", - "license": "MIT", + "resolved": "https://registry.npmjs.org/rtree-sql.js/-/rtree-sql.js-1.7.0.tgz", + "integrity": "sha512-hue7klBnBrM6pvUPSnXNNgA0yN9FIjmhb8QveVY9q5h/3b//Cd8jaafUE0Ty89fuiamaLEHRw8eQq8mTn6Df5Q==", "peer": true }, - "../../service/node_modules/run-async": { + "node_modules/@ngageoint/mage.service/node_modules/run-async": { "version": "2.4.1", - "devOptional": true, - "license": "MIT", + "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.4.1.tgz", + "integrity": "sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==", + "optional": true, "peer": true, "engines": { "node": ">=0.12.0" } }, - "../../service/node_modules/run-parallel": { + "node_modules/@ngageoint/mage.service/node_modules/run-parallel": { "version": "1.2.0", - "dev": true, + "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", + "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", + "extraneous": true, "funding": [ { "type": "github", @@ -9919,16 +12112,15 @@ "url": "https://feross.org/support" } ], - "license": "MIT", - "peer": true, "dependencies": { "queue-microtask": "^1.2.2" } }, - "../../service/node_modules/rxjs": { + "node_modules/@ngageoint/mage.service/node_modules/rxjs": { "version": "6.6.7", - "devOptional": true, - "license": "Apache-2.0", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", + "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", + "optional": true, "peer": true, "dependencies": { "tslib": "^1.9.0" @@ -9937,8 +12129,35 @@ "npm": ">=2.0.0" } }, - "../../service/node_modules/safe-buffer": { + "node_modules/@ngageoint/mage.service/node_modules/rxjs/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "optional": true, + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/safe-array-concat": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/safe-array-concat/-/safe-array-concat-1.1.2.tgz", + "integrity": "sha512-vj6RsCsWBCf19jIeHEfkRMw8DPiBb+DMXklQ/1SGDHOMlHdPUkZXFQ2YdplS23zESTijAcurb1aSgJA3AgMu1Q==", + "extraneous": true, + "dependencies": { + "call-bind": "^1.0.7", + "get-intrinsic": "^1.2.4", + "has-symbols": "^1.0.3", + "isarray": "^2.0.5" + }, + "engines": { + "node": ">=0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/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==", "funding": [ { "type": "github", @@ -9953,48 +12172,54 @@ "url": "https://feross.org/support" } ], - "license": "MIT", - "peer": true - }, - "../../service/node_modules/safe-json-stringify": { - "version": "1.2.0", - "license": "MIT", - "optional": true, - "peer": true - }, - "../../service/node_modules/safer-buffer": { - "version": "2.1.2", - "license": "MIT", "peer": true }, - "../../service/node_modules/saslprep": { + "node_modules/@ngageoint/mage.service/node_modules/safe-regex-test": { "version": "1.0.3", - "dev": true, - "license": "MIT", - "optional": true, - "peer": true, + "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.0.3.tgz", + "integrity": "sha512-CdASjNJPvRa7roO6Ra/gLYBTzYzzPyyBXxIMdGW3USQLyjWEls2RgW5UBTXaQVp+OrpeCK3bLem8smtmheoRuw==", + "extraneous": true, "dependencies": { - "sparse-bitfield": "^3.0.3" + "call-bind": "^1.0.6", + "es-errors": "^1.3.0", + "is-regex": "^1.1.4" }, "engines": { - "node": ">=6" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "../../service/node_modules/sax": { - "version": "1.3.0", - "license": "ISC", + "node_modules/@ngageoint/mage.service/node_modules/safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", "peer": true }, - "../../service/node_modules/semver": { - "version": "5.7.1", + "node_modules/@ngageoint/mage.service/node_modules/sax": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/sax/-/sax-1.4.1.tgz", + "integrity": "sha512-+aWOz7yVScEGoKNd4PA10LZ8sk0A/z5+nXQG5giUO5rprX9jgYsTdov9qCchZiPIZezbZH+jRut8nPodFAX4Jg==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/semver": { + "version": "7.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", + "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", "license": "ISC", "peer": true, "bin": { - "semver": "bin/semver" + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" } }, - "../../service/node_modules/send": { - "version": "0.18.0", + "node_modules/@ngageoint/mage.service/node_modules/send": { + "version": "0.19.0", + "resolved": "https://registry.npmjs.org/send/-/send-0.19.0.tgz", + "integrity": "sha512-dW41u5VfLXu8SJh5bwRmyYUbAoSB3c9uQh6L8h/KtsFREPWpbX1lrljJo186Jc4nmci/sGUZ9a0a0J2zgfq2hw==", "license": "MIT", "peer": true, "dependencies": { @@ -10016,158 +12241,241 @@ "node": ">= 0.8.0" } }, - "../../service/node_modules/send/node_modules/depd": { - "version": "2.0.0", + "node_modules/@ngageoint/mage.service/node_modules/send/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", "license": "MIT", "peer": true, - "engines": { - "node": ">= 0.8" + "dependencies": { + "ms": "2.0.0" } }, - "../../service/node_modules/send/node_modules/http-errors": { + "node_modules/@ngageoint/mage.service/node_modules/send/node_modules/debug/node_modules/ms": { "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", "license": "MIT", - "peer": true, - "dependencies": { - "depd": "2.0.0", - "inherits": "2.0.4", - "setprototypeof": "1.2.0", - "statuses": "2.0.1", - "toidentifier": "1.0.1" - }, - "engines": { - "node": ">= 0.8" - } + "peer": true }, - "../../service/node_modules/send/node_modules/mime": { - "version": "1.6.0", + "node_modules/@ngageoint/mage.service/node_modules/send/node_modules/encodeurl": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", + "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==", "license": "MIT", "peer": true, - "bin": { - "mime": "cli.js" - }, "engines": { - "node": ">=4" + "node": ">= 0.8" } }, - "../../service/node_modules/send/node_modules/ms": { + "node_modules/@ngageoint/mage.service/node_modules/send/node_modules/ms": { "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", "license": "MIT", "peer": true }, - "../../service/node_modules/send/node_modules/on-finished": { - "version": "2.4.1", - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/serialize-javascript": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.2.tgz", + "integrity": "sha512-Saa1xPByTTq2gdeFZYLLo+RFE35NHZkAbqZeWNd3BpzppeVisAqpDjcp8dyf6uIvEqJRd46jemmyA4iFIeVk8g==", + "extraneous": true, + "license": "BSD-3-Clause", "dependencies": { - "ee-first": "1.1.1" - }, - "engines": { - "node": ">= 0.8" - } - }, - "../../service/node_modules/send/node_modules/statuses": { - "version": "2.0.1", - "license": "MIT", - "peer": true, - "engines": { - "node": ">= 0.8" + "randombytes": "^2.1.0" } }, - "../../service/node_modules/serve-static": { - "version": "1.15.0", + "node_modules/@ngageoint/mage.service/node_modules/serve-static": { + "version": "1.16.2", + "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.16.2.tgz", + "integrity": "sha512-VqpjJZKadQB/PEbEwvFdO43Ax5dFBZ2UECszz8bQ7pi7wt//PWe1P6MN7eCnjsatYtBT6EuiClbjSWP2WrIoTw==", "license": "MIT", "peer": true, "dependencies": { - "encodeurl": "~1.0.2", + "encodeurl": "~2.0.0", "escape-html": "~1.0.3", "parseurl": "~1.3.3", - "send": "0.18.0" + "send": "0.19.0" }, "engines": { "node": ">= 0.8.0" } }, - "../../service/node_modules/set-blocking": { + "node_modules/@ngageoint/mage.service/node_modules/set-blocking": { "version": "2.0.0", - "devOptional": true, - "license": "ISC", - "peer": true + "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", + "integrity": "sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==", + "extraneous": true }, - "../../service/node_modules/set-immediate-shim": { - "version": "1.0.1", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/set-function-length": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/set-function-length/-/set-function-length-1.2.2.tgz", + "integrity": "sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==", "peer": true, + "dependencies": { + "define-data-property": "^1.1.4", + "es-errors": "^1.3.0", + "function-bind": "^1.1.2", + "get-intrinsic": "^1.2.4", + "gopd": "^1.0.1", + "has-property-descriptors": "^1.0.2" + }, "engines": { - "node": ">=0.10.0" + "node": ">= 0.4" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/set-function-name": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/set-function-name/-/set-function-name-2.0.2.tgz", + "integrity": "sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ==", + "extraneous": true, + "dependencies": { + "define-data-property": "^1.1.4", + "es-errors": "^1.3.0", + "functions-have-names": "^1.2.3", + "has-property-descriptors": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" } }, - "../../service/node_modules/setprototypeof": { + "node_modules/@ngageoint/mage.service/node_modules/setimmediate": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", + "integrity": "sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA==", + "extraneous": true, + "license": "MIT" + }, + "node_modules/@ngageoint/mage.service/node_modules/setprototypeof": { "version": "1.2.0", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", + "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==", "license": "ISC", "peer": true }, - "../../service/node_modules/sha.js": { - "version": "2.4.11", - "license": "(MIT AND BSD-3-Clause)", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "extraneous": true, "dependencies": { - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" + "shebang-regex": "^3.0.0" }, - "bin": { - "sha.js": "bin.js" + "engines": { + "node": ">=8" } }, - "../../service/node_modules/shebang-command": { - "version": "1.2.0", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "extraneous": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/shell-quote": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.8.1.tgz", + "integrity": "sha512-6j1W9l1iAs/4xYBI1SYOVZyFcCis9b4KCLQ8fgAGG07QvzaRLVVRQvAy85yNmmZSjYjg4MWh4gNvlPujU/5LpA==", + "extraneous": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/side-channel": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.1.0.tgz", + "integrity": "sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw==", "license": "MIT", "peer": true, "dependencies": { - "shebang-regex": "^1.0.0" + "es-errors": "^1.3.0", + "object-inspect": "^1.13.3", + "side-channel-list": "^1.0.0", + "side-channel-map": "^1.0.1", + "side-channel-weakmap": "^1.0.2" }, "engines": { - "node": ">=0.10.0" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "../../service/node_modules/shebang-regex": { + "node_modules/@ngageoint/mage.service/node_modules/side-channel-list": { "version": "1.0.0", - "dev": true, + "resolved": "https://registry.npmjs.org/side-channel-list/-/side-channel-list-1.0.0.tgz", + "integrity": "sha512-FCLHtRD/gnpCiCHEiJLOwdmFP+wzCmDEkc9y7NsYxeF4u7Btsn1ZuwgwJGxImImHicJArLP4R0yX4c2KCrMrTA==", "license": "MIT", "peer": true, + "dependencies": { + "es-errors": "^1.3.0", + "object-inspect": "^1.13.3" + }, "engines": { - "node": ">=0.10.0" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "../../service/node_modules/shell-quote": { - "version": "1.7.3", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/side-channel-map": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/side-channel-map/-/side-channel-map-1.0.1.tgz", + "integrity": "sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA==", "license": "MIT", - "peer": true + "peer": true, + "dependencies": { + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.5", + "object-inspect": "^1.13.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, - "../../service/node_modules/side-channel": { - "version": "1.0.4", + "node_modules/@ngageoint/mage.service/node_modules/side-channel-weakmap": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/side-channel-weakmap/-/side-channel-weakmap-1.0.2.tgz", + "integrity": "sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A==", "license": "MIT", "peer": true, "dependencies": { - "call-bind": "^1.0.0", - "get-intrinsic": "^1.0.2", - "object-inspect": "^1.9.0" + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.5", + "object-inspect": "^1.13.3", + "side-channel-map": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" } }, - "../../service/node_modules/signal-exit": { + "node_modules/@ngageoint/mage.service/node_modules/sift": { + "version": "16.0.1", + "resolved": "https://registry.npmjs.org/sift/-/sift-16.0.1.tgz", + "integrity": "sha512-Wv6BjQ5zbhW7VFefWusVP33T/EM0vYikCaQ2qR8yULbsilAT8/wQaXvuQ3ptGLpoKx+lihJE3y2UTgKDyyNHZQ==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/signal-exit": { "version": "3.0.7", - "devOptional": true, - "license": "ISC", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", + "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", + "optional": true, "peer": true }, - "../../service/node_modules/simple-concat": { + "node_modules/@ngageoint/mage.service/node_modules/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==", "funding": [ { "type": "github", @@ -10182,11 +12490,13 @@ "url": "https://feross.org/support" } ], - "license": "MIT", + "optional": true, "peer": true }, - "../../service/node_modules/simple-get": { + "node_modules/@ngageoint/mage.service/node_modules/simple-get": { "version": "4.0.1", + "resolved": "https://registry.npmjs.org/simple-get/-/simple-get-4.0.1.tgz", + "integrity": "sha512-brv7p5WgH0jmQJr1ZDDfKDOSeWWg+OVypG99A/5vYGPqJ6pxiaHLy8nxtFjBA7oMa01ebA9gfh1uMCFqOuXxvA==", "funding": [ { "type": "github", @@ -10201,7 +12511,7 @@ "url": "https://feross.org/support" } ], - "license": "MIT", + "optional": true, "peer": true, "dependencies": { "decompress-response": "^6.0.0", @@ -10209,16 +12519,18 @@ "simple-concat": "^1.0.0" } }, - "../../service/node_modules/simplify-js": { + "node_modules/@ngageoint/mage.service/node_modules/simplify-js": { "version": "1.2.4", - "license": "BSD-2-Clause", + "resolved": "https://registry.npmjs.org/simplify-js/-/simplify-js-1.2.4.tgz", + "integrity": "sha512-vITfSlwt7h/oyrU42R83mtzFpwYk3+mkH9bOHqq/Qw6n8rtR7aE3NZQ5fbcyCUVVmuMJR6ynsAhOfK2qoah8Jg==", "peer": true }, - "../../service/node_modules/sinon": { + "node_modules/@ngageoint/mage.service/node_modules/sinon": { "version": "7.5.0", - "dev": true, - "license": "BSD-3-Clause", - "peer": true, + "resolved": "https://registry.npmjs.org/sinon/-/sinon-7.5.0.tgz", + "integrity": "sha512-AoD0oJWerp0/rY9czP/D6hDTTUYGpObhZjMpd7Cl/A6+j0xBE+ayL/ldfggkBXUs0IkvIiM1ljM8+WkOc5k78Q==", + "deprecated": "16.1.1", + "extraneous": true, "dependencies": { "@sinonjs/commons": "^1.4.0", "@sinonjs/formatio": "^3.2.1", @@ -10229,161 +12541,114 @@ "supports-color": "^5.5.0" } }, - "../../service/node_modules/sinon-chai": { - "version": "3.3.0", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/sinon-chai": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/sinon-chai/-/sinon-chai-3.7.0.tgz", + "integrity": "sha512-mf5NURdUaSdnatJx3uhoBOrY9dtL19fiOtAdT1Azxg3+lNJFiuN0uzaU3xX1LeAfL17kHQhTAJgpsfhbMJMY2g==", + "extraneous": true, "license": "(BSD-2-Clause OR WTFPL)", - "peer": true, "peerDependencies": { "chai": "^4.0.0", - "sinon": ">=4.0.0 <8.0.0" + "sinon": ">=4.0.0" } }, - "../../service/node_modules/sinon-mongoose": { + "node_modules/@ngageoint/mage.service/node_modules/sinon-mongoose": { "version": "2.3.0", - "dev": true, - "license": "MIT", - "peer": true, + "resolved": "https://registry.npmjs.org/sinon-mongoose/-/sinon-mongoose-2.3.0.tgz", + "integrity": "sha512-d0rrL53wuDDs91GMCFAvQam64IpdVfkaxA4cGLTZfw1d5tTg6+F/D7F080d1n3d1gSHJBZLUf9pGpijC/x7xKQ==", + "extraneous": true, "peerDependencies": { "sinon": "5 - 7" } }, - "../../service/node_modules/sinon/node_modules/has-flag": { - "version": "3.0.0", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/sinon/node_modules/diff": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/diff/-/diff-3.5.0.tgz", + "integrity": "sha512-A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA==", + "extraneous": true, "engines": { - "node": ">=4" + "node": ">=0.3.1" } }, - "../../service/node_modules/sinon/node_modules/supports-color": { - "version": "5.5.0", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "has-flag": "^3.0.0" - }, + "node_modules/@ngageoint/mage.service/node_modules/sinon/node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "extraneous": true, "engines": { "node": ">=4" } }, - "../../service/node_modules/slash": { - "version": "4.0.0", - "dev": true, - "license": "MIT", - "peer": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "../../service/node_modules/slice-ansi": { - "version": "2.1.0", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "ansi-styles": "^3.2.0", - "astral-regex": "^1.0.0", - "is-fullwidth-code-point": "^2.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "../../service/node_modules/slice-ansi/node_modules/ansi-styles": { - "version": "3.2.1", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/sinon/node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "extraneous": true, "dependencies": { - "color-convert": "^1.9.0" + "has-flag": "^3.0.0" }, "engines": { "node": ">=4" } }, - "../../service/node_modules/slice-ansi/node_modules/color-convert": { - "version": "1.9.3", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "color-name": "1.1.3" - } - }, - "../../service/node_modules/slice-ansi/node_modules/color-name": { - "version": "1.1.3", - "dev": true, - "license": "MIT", - "peer": true - }, - "../../service/node_modules/slice-ansi/node_modules/is-fullwidth-code-point": { - "version": "2.0.0", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "extraneous": true, "license": "MIT", - "peer": true, "engines": { - "node": ">=4" + "node": ">=8" } }, - "../../service/node_modules/sliced": { - "version": "1.0.1", - "license": "MIT", - "peer": true - }, - "../../service/node_modules/smart-buffer": { + "node_modules/@ngageoint/mage.service/node_modules/smart-buffer": { "version": "4.2.0", - "dev": true, - "license": "MIT", + "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.2.0.tgz", + "integrity": "sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==", "peer": true, "engines": { "node": ">= 6.0.0", "npm": ">= 3.0.0" } }, - "../../service/node_modules/socks": { - "version": "2.6.2", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/socks": { + "version": "2.8.3", + "resolved": "https://registry.npmjs.org/socks/-/socks-2.8.3.tgz", + "integrity": "sha512-l5x7VUUWbjVFbafGLxPWkYsHIhEvmF85tbIeFZWc8ZPtoMyybuEhL7Jye/ooC4/d48FgOjSJXgsF/AJPYCW8Zw==", "peer": true, "dependencies": { - "ip": "^1.1.5", + "ip-address": "^9.0.5", "smart-buffer": "^4.2.0" }, "engines": { - "node": ">= 10.13.0", + "node": ">= 10.0.0", "npm": ">= 3.0.0" } }, - "../../service/node_modules/source-map": { + "node_modules/@ngageoint/mage.service/node_modules/source-map": { "version": "0.6.1", - "dev": true, - "license": "BSD-3-Clause", - "peer": true, + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "extraneous": true, "engines": { "node": ">=0.10.0" } }, - "../../service/node_modules/sparse-bitfield": { + "node_modules/@ngageoint/mage.service/node_modules/sparse-bitfield": { "version": "3.0.3", - "dev": true, - "license": "MIT", + "resolved": "https://registry.npmjs.org/sparse-bitfield/-/sparse-bitfield-3.0.3.tgz", + "integrity": "sha512-kvzhi7vqKTfkh0PZU+2D2PIllw2ymqJKujUcyPMd9Y75Nv4nPbGJZXNhxsgdQab2BmlDct1YnfQCguEvHr7VsQ==", "optional": true, "peer": true, "dependencies": { "memory-pager": "^1.0.2" } }, - "../../service/node_modules/spawn-wrap": { + "node_modules/@ngageoint/mage.service/node_modules/spawn-wrap": { "version": "1.4.3", - "dev": true, - "license": "ISC", - "peer": true, + "resolved": "https://registry.npmjs.org/spawn-wrap/-/spawn-wrap-1.4.3.tgz", + "integrity": "sha512-IgB8md0QW/+tWqcavuFgKYR/qIRvJkRLPJDFaoXtLLUaVcCDK0+HeFTkmQHj3eprcYhc+gOl0aEA1w7qZlYezw==", + "extraneous": true, "dependencies": { "foreground-child": "^1.5.6", "mkdirp": "^0.5.0", @@ -10393,76 +12658,73 @@ "which": "^1.3.0" } }, - "../../service/node_modules/spawn-wrap/node_modules/minimist": { - "version": "1.2.6", - "dev": true, - "license": "MIT", - "peer": true - }, - "../../service/node_modules/spawn-wrap/node_modules/mkdirp": { - "version": "0.5.6", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/spawn-wrap/node_modules/rimraf": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", + "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", + "deprecated": "Rimraf versions prior to v4 are no longer supported", + "extraneous": true, "dependencies": { - "minimist": "^1.2.6" + "glob": "^7.1.3" }, "bin": { - "mkdirp": "bin/cmd.js" + "rimraf": "bin.js" } }, - "../../service/node_modules/spawn-wrap/node_modules/rimraf": { - "version": "2.7.1", - "dev": true, - "license": "ISC", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/spawn-wrap/node_modules/which": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "extraneous": true, "dependencies": { - "glob": "^7.1.3" + "isexe": "^2.0.0" }, "bin": { - "rimraf": "bin.js" + "which": "bin/which" } }, - "../../service/node_modules/spdx-correct": { - "version": "3.1.1", - "dev": true, - "license": "Apache-2.0", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/spdx-correct": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.2.0.tgz", + "integrity": "sha512-kN9dJbvnySHULIluDHy32WHRUu3Og7B9sbY7tsFLctQkIqnMh3hErYgdMjTYuqmcXX+lK5T1lnUt3G7zNswmZA==", + "extraneous": true, "dependencies": { "spdx-expression-parse": "^3.0.0", "spdx-license-ids": "^3.0.0" } }, - "../../service/node_modules/spdx-exceptions": { - "version": "2.3.0", - "dev": true, - "license": "CC-BY-3.0", - "peer": true + "node_modules/@ngageoint/mage.service/node_modules/spdx-exceptions": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.5.0.tgz", + "integrity": "sha512-PiU42r+xO4UbUS1buo3LPJkjlO7430Xn5SVAhdpzzsPHsjbYVflnnFdATgabnLude+Cqu25p6N+g2lw/PFsa4w==", + "extraneous": true }, - "../../service/node_modules/spdx-expression-parse": { + "node_modules/@ngageoint/mage.service/node_modules/spdx-expression-parse": { "version": "3.0.1", - "dev": true, - "license": "MIT", - "peer": true, + "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", + "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", + "extraneous": true, "dependencies": { "spdx-exceptions": "^2.1.0", "spdx-license-ids": "^3.0.0" } }, - "../../service/node_modules/spdx-license-ids": { - "version": "3.0.11", - "dev": true, - "license": "CC0-1.0", - "peer": true + "node_modules/@ngageoint/mage.service/node_modules/spdx-license-ids": { + "version": "3.0.18", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.18.tgz", + "integrity": "sha512-xxRs31BqRYHwiMzudOrpSiHtZ8i/GeionCBDSilhYRj+9gIcI8wCZTlXZKu9vZIVqViP3dcp9qE5G6AlIaD+TQ==", + "extraneous": true }, - "../../service/node_modules/splaytree": { - "version": "3.1.1", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/splaytree": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/splaytree/-/splaytree-3.1.2.tgz", + "integrity": "sha512-4OM2BJgC5UzrhVnnJA4BkHKGtjXNzzUfpQjCO8I05xYPsfS/VuQDwjCGGMi8rYQilHEV4j8NBqTFbls/PZEE7A==", "peer": true }, - "../../service/node_modules/split": { + "node_modules/@ngageoint/mage.service/node_modules/split": { "version": "1.0.1", - "license": "MIT", + "resolved": "https://registry.npmjs.org/split/-/split-1.0.1.tgz", + "integrity": "sha512-mTyOoPbrivtXnwnIxZRFYRrPNtEFKlpB2fvjSnCQUiAA6qAZzqwna5envK4uk6OIeP17CsdF3rSBGYVBsU0Tkg==", "peer": true, "dependencies": { "through": "2" @@ -10471,16 +12733,17 @@ "node": "*" } }, - "../../service/node_modules/sprintf-js": { + "node_modules/@ngageoint/mage.service/node_modules/sprintf-js": { "version": "1.0.3", - "license": "BSD-3-Clause", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", "peer": true }, - "../../service/node_modules/sshpk": { - "version": "1.17.0", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/sshpk": { + "version": "1.18.0", + "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.18.0.tgz", + "integrity": "sha512-2p2KJZTSqQ/I3+HX42EpYOa2l3f8Erv8MWKsy2I9uf4wA7yFIkXRffYdsx86y6z4vHtV8u7g+pPlr8/4ouAxsQ==", + "extraneous": true, "dependencies": { "asn1": "~0.2.3", "assert-plus": "^1.0.0", @@ -10501,66 +12764,125 @@ "node": ">=0.10.0" } }, - "../../service/node_modules/stack-trace": { + "node_modules/@ngageoint/mage.service/node_modules/sshpk/node_modules/jsbn": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", + "integrity": "sha512-UVU9dibq2JcFWxQPA6KCqj5O42VOmAY3zQUfEKxU0KpTGXwNoCjkX1e13eHNvw/xPynt6pU0rZ1htjWTNTSXsg==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/stack-trace": { "version": "0.0.10", - "license": "MIT", + "resolved": "https://registry.npmjs.org/stack-trace/-/stack-trace-0.0.10.tgz", + "integrity": "sha512-KGzahc7puUKkzyMt+IqAep+TVNbKP+k2Lmwhub39m1AsTSkaDutx56aDCo+HLDzf/D26BIHTJWNiTG1KAJiQCg==", "peer": true, "engines": { "node": "*" } }, - "../../service/node_modules/statuses": { - "version": "1.5.0", + "node_modules/@ngageoint/mage.service/node_modules/statuses": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", + "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", "license": "MIT", "peer": true, "engines": { - "node": ">= 0.6" + "node": ">= 0.8" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/stop-iteration-iterator": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/stop-iteration-iterator/-/stop-iteration-iterator-1.0.0.tgz", + "integrity": "sha512-iCGQj+0l0HOdZ2AEeBADlsRC+vsnDsZsbdSiH1yNSjcfKM7fdpCMfqAL/dwF5BLiw/XhRft/Wax6zQbhq2BcjQ==", + "extraneous": true, + "dependencies": { + "internal-slot": "^1.0.4" + }, + "engines": { + "node": ">= 0.4" } }, - "../../service/node_modules/stream-combiner": { + "node_modules/@ngageoint/mage.service/node_modules/stream-combiner": { "version": "0.2.2", - "license": "MIT", + "resolved": "https://registry.npmjs.org/stream-combiner/-/stream-combiner-0.2.2.tgz", + "integrity": "sha512-6yHMqgLYDzQDcAkL+tjJDC5nSNuNIx0vZtRZeiPh7Saef7VHX9H5Ijn9l2VIol2zaNYlYEX6KyuT/237A58qEQ==", "peer": true, "dependencies": { "duplexer": "~0.1.1", "through": "~2.3.4" } }, - "../../service/node_modules/streamsearch": { + "node_modules/@ngageoint/mage.service/node_modules/streamsearch": { "version": "1.1.0", + "resolved": "https://registry.npmjs.org/streamsearch/-/streamsearch-1.1.0.tgz", + "integrity": "sha512-Mcc5wHehp9aXz1ax6bZUyY5afg9u2rv5cqQI3mRrYkGC8rW2hM02jWuwjtL++LS5qinSyhj2QfLyNsuc+VsExg==", "peer": true, "engines": { "node": ">=10.0.0" } }, - "../../service/node_modules/string_decoder": { - "version": "0.10.31", + "node_modules/@ngageoint/mage.service/node_modules/streamx": { + "version": "2.22.0", + "resolved": "https://registry.npmjs.org/streamx/-/streamx-2.22.0.tgz", + "integrity": "sha512-sLh1evHOzBy/iWRiR6d1zRcLao4gGZr3C1kzNz4fopCOKJb6xD9ub8Mpi9Mr1R6id5o43S+d93fI48UC5uM9aw==", + "extraneous": true, "license": "MIT", - "peer": true + "dependencies": { + "fast-fifo": "^1.3.2", + "text-decoder": "^1.1.0" + }, + "optionalDependencies": { + "bare-events": "^2.2.0" + } }, - "../../service/node_modules/string-width": { - "version": "1.0.2", - "devOptional": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/string_decoder": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "peer": true, + "dependencies": { + "safe-buffer": "~5.2.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "optional": true, "peer": true, "dependencies": { - "code-point-at": "^1.0.0", - "is-fullwidth-code-point": "^1.0.0", - "strip-ansi": "^3.0.0" + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" }, "engines": { - "node": ">=0.10.0" + "node": ">=8" } }, - "../../service/node_modules/string.prototype.padend": { - "version": "3.1.3", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/string-width-cjs": { + "name": "string-width", + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "extraneous": true, "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3", - "es-abstract": "^1.19.1" + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/string.prototype.padend": { + "version": "3.1.6", + "resolved": "https://registry.npmjs.org/string.prototype.padend/-/string.prototype.padend-3.1.6.tgz", + "integrity": "sha512-XZpspuSB7vJWhvJc9DLSlrXl1mcA2BdoY5jjnS135ydXqLoqhs96JjDtCkjJEQHvfqZIp9hBuBMgI589peyx9Q==", + "extraneous": true, + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.2", + "es-object-atoms": "^1.0.0" }, "engines": { "node": ">= 0.4" @@ -10569,64 +12891,113 @@ "url": "https://github.com/sponsors/ljharb" } }, - "../../service/node_modules/string.prototype.trimend": { - "version": "1.0.4", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/string.prototype.trim": { + "version": "1.2.9", + "resolved": "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.9.tgz", + "integrity": "sha512-klHuCNxiMZ8MlsOihJhJEBJAiMVqU3Z2nEXWfWnIqjN0gEFS9J9+IxKozWWtQGcgoa1WUZzLjKPTr4ZHNFTFxw==", + "extraneous": true, "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3" + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.0", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" } }, - "../../service/node_modules/string.prototype.trimstart": { - "version": "1.0.4", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/string.prototype.trimend": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.8.tgz", + "integrity": "sha512-p73uL5VCHCO2BZZ6krwwQE3kCzM7NKmis8S//xEC6fQonchbum4eP6kR4DLEjQFO3Wnj3Fuo8NM0kOSjVdHjZQ==", + "extraneous": true, "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3" + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0" }, "funding": { "url": "https://github.com/sponsors/ljharb" } }, - "../../service/node_modules/strip-ansi": { - "version": "3.0.1", - "devOptional": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/string.prototype.trimstart": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.8.tgz", + "integrity": "sha512-UXSH262CSZY1tfu3G3Secr6uGLCFVPMhIqHjlgCUtCCcgihYc/xKs9djMTMUOb2j1mVSeU8EU6NWc/iQKU6Gfg==", + "extraneous": true, + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "optional": true, "peer": true, "dependencies": { - "ansi-regex": "^2.0.0" + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/strip-ansi-cjs": { + "name": "strip-ansi", + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "extraneous": true, + "dependencies": { + "ansi-regex": "^5.0.1" }, "engines": { - "node": ">=0.10.0" + "node": ">=8" } }, - "../../service/node_modules/strip-bom": { + "node_modules/@ngageoint/mage.service/node_modules/strip-bom": { "version": "3.0.0", - "dev": true, - "license": "MIT", - "peer": true, + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", + "integrity": "sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==", + "extraneous": true, "engines": { "node": ">=4" } }, - "../../service/node_modules/strip-json-comments": { - "version": "2.0.1", - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/strip-json-comments": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", + "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", + "extraneous": true, "engines": { - "node": ">=0.10.0" + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "../../service/node_modules/strtok3": { + "node_modules/@ngageoint/mage.service/node_modules/strnum": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/strnum/-/strnum-1.0.5.tgz", + "integrity": "sha512-J8bbNyKKXl5qYcR36TIO8W3mVGVHrmmxsd5PAItGkmyzwJvybiw2IVq5nqd0i4LSNSkB/sx9VHllbfFdr9k1JA==", + "optional": true, + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/strtok3": { "version": "6.3.0", - "license": "MIT", + "resolved": "https://registry.npmjs.org/strtok3/-/strtok3-6.3.0.tgz", + "integrity": "sha512-fZtbhtvI9I48xDSywd/somNqgUHl2L2cstmXCCif0itOf96jeW18MBSyrLuNicYQVkvpOxkZtkzujiTJ9LW5Jw==", "peer": true, "dependencies": { "@tokenizer/token": "^0.3.0", @@ -10640,8983 +13011,4205 @@ "url": "https://github.com/sponsors/Borewit" } }, - "../../service/node_modules/superagent": { - "version": "8.0.0", + "node_modules/@ngageoint/mage.service/node_modules/superagent": { + "version": "8.1.2", + "resolved": "https://registry.npmjs.org/superagent/-/superagent-8.1.2.tgz", + "integrity": "sha512-6WTxW1EB6yCxV5VFOIPQruWGHqc3yI7hEmZK6h+pyk69Lk/Ut7rLUY6W/ONF2MjBuGjvmMiIpsrVJ2vjrHlslA==", + "deprecated": "Please upgrade to v9.0.0+ as we have fixed a public vulnerability with formidable dependency. Note that v9.0.0+ requires Node.js v14.18.0+. See https://github.com/ladjs/superagent/pull/1800 for insight. This project is supported and maintained by the team at Forward Email @ https://forwardemail.net", "license": "MIT", "peer": true, "dependencies": { "component-emitter": "^1.3.0", - "cookiejar": "^2.1.3", + "cookiejar": "^2.1.4", "debug": "^4.3.4", "fast-safe-stringify": "^2.1.1", "form-data": "^4.0.0", - "formidable": "^2.0.1", + "formidable": "^2.1.2", "methods": "^1.1.2", "mime": "2.6.0", - "qs": "^6.10.3", - "readable-stream": "^3.6.0", - "semver": "^7.3.7" + "qs": "^6.11.0", + "semver": "^7.3.8" }, "engines": { "node": ">=6.4.0 <13 || >=14" } }, - "../../service/node_modules/superagent/node_modules/debug": { - "version": "4.3.4", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/superagent/node_modules/mime": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-2.6.0.tgz", + "integrity": "sha512-USPkMeET31rOMiarsBNIHZKLGgvKc/LrjofAnBlOttf5ajRvqiRA8QsenbcooctK6d6Ts6aqZXBA+XbkKthiQg==", "peer": true, - "dependencies": { - "ms": "2.1.2" + "bin": { + "mime": "cli.js" }, "engines": { - "node": ">=6.0" - }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } + "node": ">=4.0.0" } }, - "../../service/node_modules/superagent/node_modules/form-data": { - "version": "4.0.0", + "node_modules/@ngageoint/mage.service/node_modules/supertest": { + "version": "6.3.4", + "resolved": "https://registry.npmjs.org/supertest/-/supertest-6.3.4.tgz", + "integrity": "sha512-erY3HFDG0dPnhw4U+udPfrzXa4xhSG+n4rxfRuZWCUvjFWwKl+OxWf/7zk50s84/fAAs7vf5QAb9uRa0cCykxw==", + "extraneous": true, "license": "MIT", - "peer": true, "dependencies": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.8", - "mime-types": "^2.1.12" + "methods": "^1.1.2", + "superagent": "^8.1.2" }, "engines": { - "node": ">= 6" + "node": ">=6.4.0" } }, - "../../service/node_modules/superagent/node_modules/lru-cache": { - "version": "6.0.0", - "license": "ISC", + "node_modules/@ngageoint/mage.service/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "optional": true, "peer": true, "dependencies": { - "yallist": "^4.0.0" + "has-flag": "^4.0.0" }, "engines": { - "node": ">=10" + "node": ">=8" } }, - "../../service/node_modules/superagent/node_modules/mime": { - "version": "2.6.0", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/supports-preserve-symlinks-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", "peer": true, - "bin": { - "mime": "cli.js" - }, "engines": { - "node": ">=4.0.0" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "../../service/node_modules/superagent/node_modules/ms": { - "version": "2.1.2", - "license": "MIT", - "peer": true - }, - "../../service/node_modules/superagent/node_modules/qs": { - "version": "6.10.3", - "license": "BSD-3-Clause", + "node_modules/@ngageoint/mage.service/node_modules/svg-captcha": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/svg-captcha/-/svg-captcha-1.4.0.tgz", + "integrity": "sha512-/fkkhavXPE57zRRCjNqAP3txRCSncpMx3NnNZL7iEoyAtYwUjPhJxW6FQTQPG5UPEmCrbFoXS10C3YdJlW7PDg==", "peer": true, "dependencies": { - "side-channel": "^1.0.4" + "opentype.js": "^0.7.3" }, "engines": { - "node": ">=0.6" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=4.x" } }, - "../../service/node_modules/superagent/node_modules/readable-stream": { - "version": "3.6.0", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/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==", + "optional": true, + "peer": true, + "dependencies": { + "chownr": "^1.1.1", + "mkdirp-classic": "^0.5.2", + "pump": "^3.0.0", + "tar-stream": "^2.1.4" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/tar-stream": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-2.2.0.tgz", + "integrity": "sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ==", "peer": true, "dependencies": { + "bl": "^4.0.3", + "end-of-stream": "^1.4.1", + "fs-constants": "^1.0.0", "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" + "readable-stream": "^3.1.1" }, "engines": { - "node": ">= 6" + "node": ">=6" } }, - "../../service/node_modules/superagent/node_modules/semver": { - "version": "7.3.7", - "license": "ISC", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/test-exclude": { + "version": "5.2.3", + "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-5.2.3.tgz", + "integrity": "sha512-M+oxtseCFO3EDtAaGH7iiej3CBkzXqFMbzqYAACdzKui4eZA+pq3tZEwChvOdNfa7xxy8BfbmgJSIr43cC/+2g==", + "extraneous": true, "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" + "glob": "^7.1.3", + "minimatch": "^3.0.4", + "read-pkg-up": "^4.0.0", + "require-main-filename": "^2.0.0" }, "engines": { - "node": ">=10" + "node": ">=6" } }, - "../../service/node_modules/superagent/node_modules/string_decoder": { - "version": "1.3.0", - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/test-exclude/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "extraneous": true, "dependencies": { - "safe-buffer": "~5.2.0" + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" } }, - "../../service/node_modules/supertest": { - "version": "6.0.1", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/test-exclude/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "extraneous": true, "dependencies": { - "methods": "1.1.2", - "superagent": "6.1.0" + "brace-expansion": "^1.1.7" }, "engines": { - "node": ">=6.0.0" + "node": "*" } }, - "../../service/node_modules/supertest/node_modules/debug": { - "version": "4.3.4", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/text-decoder": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/text-decoder/-/text-decoder-1.2.3.tgz", + "integrity": "sha512-3/o9z3X0X0fTupwsYvR03pJ/DjWuqqrfwBgTQzdWDiQSm9KitAyz/9WqsT2JQW7KV2m+bC2ol/zqpW37NHxLaA==", + "extraneous": true, + "license": "Apache-2.0", "dependencies": { - "ms": "2.1.2" - }, - "engines": { - "node": ">=6.0" - }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } + "b4a": "^1.6.4" } }, - "../../service/node_modules/supertest/node_modules/form-data": { - "version": "3.0.1", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/text-table": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", + "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/through": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", + "integrity": "sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/tiny-inflate": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/tiny-inflate/-/tiny-inflate-1.0.3.tgz", + "integrity": "sha512-pkY1fj1cKHb2seWDy0B16HeWyczlJA9/WW3u3c4z/NiWDsO3DOU5D7nhTLE9CF0yXv/QZFY7sEJmj24dK+Rrqw==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/tmp": { + "version": "0.0.33", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", + "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", + "optional": true, "peer": true, "dependencies": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.8", - "mime-types": "^2.1.12" + "os-tmpdir": "~1.0.2" }, "engines": { - "node": ">= 6" + "node": ">=0.6.0" } }, - "../../service/node_modules/supertest/node_modules/formidable": { - "version": "1.2.6", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/to-fast-properties": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", + "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==", "peer": true, - "funding": { - "url": "https://ko-fi.com/tunnckoCore/commissions" + "engines": { + "node": ">=4" } }, - "../../service/node_modules/supertest/node_modules/lru-cache": { - "version": "6.0.0", - "dev": true, - "license": "ISC", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "extraneous": true, "dependencies": { - "yallist": "^4.0.0" + "is-number": "^7.0.0" }, "engines": { - "node": ">=10" + "node": ">=8.0" } }, - "../../service/node_modules/supertest/node_modules/mime": { - "version": "2.6.0", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/toidentifier": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz", + "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==", "license": "MIT", "peer": true, - "bin": { - "mime": "cli.js" - }, "engines": { - "node": ">=4.0.0" + "node": ">=0.6" } }, - "../../service/node_modules/supertest/node_modules/ms": { - "version": "2.1.2", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/token-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/token-stream/-/token-stream-1.0.0.tgz", + "integrity": "sha512-VSsyNPPW74RpHwR8Fc21uubwHY7wMDeJLys2IX5zJNih+OnAnaifKHo+1LHT7DAdloQ7apeaaWg8l7qnf/TnEg==", "peer": true }, - "../../service/node_modules/supertest/node_modules/qs": { - "version": "6.11.0", - "dev": true, - "license": "BSD-3-Clause", + "node_modules/@ngageoint/mage.service/node_modules/token-types": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/token-types/-/token-types-4.2.1.tgz", + "integrity": "sha512-6udB24Q737UD/SDsKAHI9FCRP7Bqc9D/MQUV02ORQg5iskjtLJlZJNdN4kKtcdtwCeWIwIHDGaUsTsCCAa8sFQ==", "peer": true, "dependencies": { - "side-channel": "^1.0.4" + "@tokenizer/token": "^0.3.0", + "ieee754": "^1.2.1" }, "engines": { - "node": ">=0.6" + "node": ">=10" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "type": "github", + "url": "https://github.com/sponsors/Borewit" } }, - "../../service/node_modules/supertest/node_modules/readable-stream": { - "version": "3.6.0", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/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==", + "extraneous": true, "dependencies": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" + "psl": "^1.1.28", + "punycode": "^2.1.1" }, "engines": { - "node": ">= 6" + "node": ">=0.8" } }, - "../../service/node_modules/supertest/node_modules/semver": { - "version": "7.3.7", - "dev": true, - "license": "ISC", + "node_modules/@ngageoint/mage.service/node_modules/tr46": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-3.0.0.tgz", + "integrity": "sha512-l7FvfAHlcmulp8kr+flpQZmVwtu7nfRV7NZujtN0OqES8EL4O4e0qqzL0DC5gAvx/ZC/9lk6rhcUwYvkBnBnYA==", "peer": true, "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" + "punycode": "^2.1.1" }, "engines": { - "node": ">=10" + "node": ">=12" } }, - "../../service/node_modules/supertest/node_modules/string_decoder": { + "node_modules/@ngageoint/mage.service/node_modules/ts-api-utils": { "version": "1.3.0", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "safe-buffer": "~5.2.0" + "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-1.3.0.tgz", + "integrity": "sha512-UQMIo7pb8WRomKR1/+MFVLTroIvDVtMX3K6OUir8ynLyzB8Jeriont2bTAtmNPa1ekAgN7YPDyf6V+ygrdU+eQ==", + "extraneous": true, + "engines": { + "node": ">=16" + }, + "peerDependencies": { + "typescript": ">=4.2.0" } }, - "../../service/node_modules/supertest/node_modules/superagent": { - "version": "6.1.0", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/tslib": { + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.3.tgz", + "integrity": "sha512-xNvxJEOUiWPGhUuUdQgAJPKOOJfGnIyKySOc09XkKsgdUV/3E2zvwZYdejjmRgPCgcym1juLH3226yA7sEFJKQ==", + "optional": true, + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/tunnel-agent": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", + "integrity": "sha512-McnNiV1l8RYeY8tBgEpuodCC1mLUdbSN+CYBL7kJsJNInOP8UjDDEwdk6Mw60vdLLrr5NHKZhMAOSrR2NZuQ+w==", + "optional": true, "peer": true, "dependencies": { - "component-emitter": "^1.3.0", - "cookiejar": "^2.1.2", - "debug": "^4.1.1", - "fast-safe-stringify": "^2.0.7", - "form-data": "^3.0.0", - "formidable": "^1.2.2", - "methods": "^1.1.2", - "mime": "^2.4.6", - "qs": "^6.9.4", - "readable-stream": "^3.6.0", - "semver": "^7.3.2" + "safe-buffer": "^5.0.1" }, "engines": { - "node": ">= 7.0.0" + "node": "*" } }, - "../../service/node_modules/supports-color": { - "version": "7.2.0", - "license": "MIT", - "optional": true, - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/tweetnacl": { + "version": "0.14.5", + "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", + "integrity": "sha512-KXXFFdAbFXY4geFIwoyNK+f5Z1b7swfXABfL7HXCmoIWMKU3dmS26672A4EeQtDzLKy7SXmfBu51JolvEKwtGA==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/type-check": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", + "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", + "extraneous": true, "dependencies": { - "has-flag": "^4.0.0" + "prelude-ls": "^1.2.1" }, "engines": { - "node": ">=8" + "node": ">= 0.8.0" } }, - "../../service/node_modules/supports-preserve-symlinks-flag": { - "version": "1.0.0", - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/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==", + "extraneous": true, "engines": { - "node": ">= 0.4" + "node": ">=4" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/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==", + "extraneous": true, + "engines": { + "node": ">=10" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "url": "https://github.com/sponsors/sindresorhus" } }, - "../../service/node_modules/svg-captcha": { - "version": "1.4.0", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/type-is": { + "version": "1.6.18", + "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz", + "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==", "peer": true, "dependencies": { - "opentype.js": "^0.7.3" + "media-typer": "0.3.0", + "mime-types": "~2.1.24" }, "engines": { - "node": ">=4.x" + "node": ">= 0.6" } }, - "../../service/node_modules/table": { - "version": "5.4.6", - "dev": true, - "license": "BSD-3-Clause", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/typed-array-buffer": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/typed-array-buffer/-/typed-array-buffer-1.0.2.tgz", + "integrity": "sha512-gEymJYKZtKXzzBzM4jqa9w6Q1Jjm7x2d+sh19AdsD4wqnMPDYyvwpsIc2Q/835kHuo3BEQ7CjelGhfTsoBb2MQ==", + "extraneous": true, "dependencies": { - "ajv": "^6.10.2", - "lodash": "^4.17.14", - "slice-ansi": "^2.1.0", - "string-width": "^3.0.0" + "call-bind": "^1.0.7", + "es-errors": "^1.3.0", + "is-typed-array": "^1.1.13" }, "engines": { - "node": ">=6.0.0" + "node": ">= 0.4" } }, - "../../service/node_modules/table/node_modules/ansi-regex": { - "version": "4.1.1", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/typed-array-byte-length": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/typed-array-byte-length/-/typed-array-byte-length-1.0.1.tgz", + "integrity": "sha512-3iMJ9q0ao7WE9tWcaYKIptkNBuOIcZCCT0d4MRvuuH88fEoEH62IuQe0OtraD3ebQEoTRk8XCBoknUNc1Y67pw==", + "extraneous": true, + "dependencies": { + "call-bind": "^1.0.7", + "for-each": "^0.3.3", + "gopd": "^1.0.1", + "has-proto": "^1.0.3", + "is-typed-array": "^1.1.13" + }, "engines": { - "node": ">=6" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "../../service/node_modules/table/node_modules/emoji-regex": { - "version": "7.0.3", - "dev": true, - "license": "MIT", - "peer": true - }, - "../../service/node_modules/table/node_modules/is-fullwidth-code-point": { - "version": "2.0.0", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/typed-array-byte-offset": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/typed-array-byte-offset/-/typed-array-byte-offset-1.0.2.tgz", + "integrity": "sha512-Ous0vodHa56FviZucS2E63zkgtgrACj7omjwd/8lTEMEPFFyjfixMZ1ZXenpgCFBBt4EC1J2XsyVS2gkG0eTFA==", + "extraneous": true, + "dependencies": { + "available-typed-arrays": "^1.0.7", + "call-bind": "^1.0.7", + "for-each": "^0.3.3", + "gopd": "^1.0.1", + "has-proto": "^1.0.3", + "is-typed-array": "^1.1.13" + }, "engines": { - "node": ">=4" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "../../service/node_modules/table/node_modules/string-width": { - "version": "3.1.0", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/typed-array-length": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/typed-array-length/-/typed-array-length-1.0.6.tgz", + "integrity": "sha512-/OxDN6OtAk5KBpGb28T+HZc2M+ADtvRxXrKKbUwtsLgdoxgX13hyy7ek6bFRl5+aBs2yZzB0c4CnQfAtVypW/g==", + "extraneous": true, "dependencies": { - "emoji-regex": "^7.0.1", - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^5.1.0" + "call-bind": "^1.0.7", + "for-each": "^0.3.3", + "gopd": "^1.0.1", + "has-proto": "^1.0.3", + "is-typed-array": "^1.1.13", + "possible-typed-array-names": "^1.0.0" }, "engines": { - "node": ">=6" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "../../service/node_modules/table/node_modules/strip-ansi": { - "version": "5.2.0", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "ansi-regex": "^4.1.0" + "node_modules/@ngageoint/mage.service/node_modules/typedarray": { + "version": "0.0.6", + "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", + "integrity": "sha512-/aCDEGatGvZ2BIk+HmLf4ifCJFwvKFNb9/JeZPMulfgFracn9QFcAf5GO8B/mweUjSoblS5In0cWhqpfs/5PQA==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/typescript": { + "version": "4.9.5", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.9.5.tgz", + "integrity": "sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g==", + "extraneous": true, + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" }, "engines": { - "node": ">=6" + "node": ">=4.2.0" } }, - "../../service/node_modules/tar": { - "version": "6.1.15", - "license": "ISC", - "optional": true, + "node_modules/@ngageoint/mage.service/node_modules/uid-safe": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/uid-safe/-/uid-safe-2.1.5.tgz", + "integrity": "sha512-KPHm4VL5dDXKz01UuEd88Df+KzynaohSL9fBh096KWAxSKZQDI2uBrVqtvRM4rwrIrRRKsdLNML/lnaaVSRioA==", "peer": true, "dependencies": { - "chownr": "^2.0.0", - "fs-minipass": "^2.0.0", - "minipass": "^5.0.0", - "minizlib": "^2.1.1", - "mkdirp": "^1.0.3", - "yallist": "^4.0.0" + "random-bytes": "~1.0.0" }, "engines": { - "node": ">=10" + "node": ">= 0.8" } }, - "../../service/node_modules/tar-fs": { - "version": "2.1.1", - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/uid2": { + "version": "0.0.4", + "resolved": "https://registry.npmjs.org/uid2/-/uid2-0.0.4.tgz", + "integrity": "sha512-IevTus0SbGwQzYh3+fRsAMTVVPOoIVufzacXcHPmdlle1jUpq7BRL+mw3dgeLanvGZdwwbWhRV6XrcFNdBmjWA==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/unbox-primitive": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.2.tgz", + "integrity": "sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==", + "extraneous": true, "dependencies": { - "chownr": "^1.1.1", - "mkdirp-classic": "^0.5.2", - "pump": "^3.0.0", - "tar-stream": "^2.1.4" + "call-bind": "^1.0.2", + "has-bigints": "^1.0.2", + "has-symbols": "^1.0.3", + "which-boxed-primitive": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "../../service/node_modules/tar-stream": { - "version": "2.2.0", + "node_modules/@ngageoint/mage.service/node_modules/underscore": { + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.12.1.tgz", + "integrity": "sha512-hEQt0+ZLDVUMhebKxL4x1BTtDY7bavVofhZ9KZ4aI26X9SRaE+Y3m83XUL1UP2jn8ynjndwCCpEHdUG+9pP1Tw==", + "license": "MIT", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/undici-types": { + "version": "5.26.5", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-5.26.5.tgz", + "integrity": "sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==", + "license": "MIT", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/uniqid": { + "version": "5.4.0", + "resolved": "https://registry.npmjs.org/uniqid/-/uniqid-5.4.0.tgz", + "integrity": "sha512-38JRbJ4Fj94VmnC7G/J/5n5SC7Ab46OM5iNtSstB/ko3l1b5g7ALt4qzHFgGciFkyiRNtDXtLNb+VsxtMSE77A==", "license": "MIT", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/universalify": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", + "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", "peer": true, - "dependencies": { - "bl": "^4.0.3", - "end-of-stream": "^1.4.1", - "fs-constants": "^1.0.0", - "inherits": "^2.0.3", - "readable-stream": "^3.1.1" - }, "engines": { - "node": ">=6" + "node": ">= 4.0.0" } }, - "../../service/node_modules/tar-stream/node_modules/readable-stream": { - "version": "3.6.0", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/unpipe": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", + "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==", "peer": true, - "dependencies": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - }, "engines": { - "node": ">= 6" + "node": ">= 0.8" } }, - "../../service/node_modules/tar-stream/node_modules/string_decoder": { - "version": "1.3.0", - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/uri-js": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", + "extraneous": true, "dependencies": { - "safe-buffer": "~5.2.0" + "punycode": "^2.1.0" } }, - "../../service/node_modules/tar/node_modules/chownr": { - "version": "2.0.0", - "license": "ISC", - "optional": true, + "node_modules/@ngageoint/mage.service/node_modules/util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/utils-merge": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", + "integrity": "sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==", "peer": true, "engines": { - "node": ">=10" + "node": ">= 0.4.0" } }, - "../../service/node_modules/test-exclude": { - "version": "5.2.3", - "dev": true, - "license": "ISC", + "node_modules/@ngageoint/mage.service/node_modules/uuid": { + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-9.0.1.tgz", + "integrity": "sha512-b+1eJOlsR9K8HJpow9Ok3fiWOWSIcIzXodvv0rQjVoOVNpWMpxf1wZNpt4y9h10odCNrqnYp1OBzRktckBe3sA==", + "funding": [ + "https://github.com/sponsors/broofa", + "https://github.com/sponsors/ctavan" + ], + "optional": true, "peer": true, + "bin": { + "uuid": "dist/bin/uuid" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/validate-npm-package-license": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", + "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", + "extraneous": true, "dependencies": { - "glob": "^7.1.3", - "minimatch": "^3.0.4", - "read-pkg-up": "^4.0.0", - "require-main-filename": "^2.0.0" - }, - "engines": { - "node": ">=6" + "spdx-correct": "^3.0.0", + "spdx-expression-parse": "^3.0.0" } }, - "../../service/node_modules/test-exclude/node_modules/find-up": { - "version": "3.0.0", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/vary": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", + "integrity": "sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==", "peer": true, - "dependencies": { - "locate-path": "^3.0.0" - }, "engines": { - "node": ">=6" + "node": ">= 0.8" } }, - "../../service/node_modules/test-exclude/node_modules/locate-path": { - "version": "3.0.0", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/vasync": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/vasync/-/vasync-2.2.1.tgz", + "integrity": "sha512-Hq72JaTpcTFdWiNA4Y22Amej2GH3BFmBaKPPlDZ4/oC8HNn2ISHLkFrJU4Ds8R3jcUi7oo5Y9jcMHKjES+N9wQ==", + "engines": [ + "node >=0.6.0" + ], "peer": true, "dependencies": { - "p-locate": "^3.0.0", - "path-exists": "^3.0.0" - }, - "engines": { - "node": ">=6" + "verror": "1.10.0" } }, - "../../service/node_modules/test-exclude/node_modules/p-limit": { - "version": "2.3.0", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/vasync/node_modules/verror": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", + "integrity": "sha512-ZZKSmDAEFOijERBLkmYfJ+vmk3w+7hOLYDNkRCuRuMJGEmqYNCNLyBBFwWKVMhfwaEF3WOd0Zlw86U/WC/+nYw==", + "engines": [ + "node >=0.6.0" + ], "peer": true, "dependencies": { - "p-try": "^2.0.0" - }, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "assert-plus": "^1.0.0", + "core-util-is": "1.0.2", + "extsprintf": "^1.2.0" } }, - "../../service/node_modules/test-exclude/node_modules/p-locate": { - "version": "3.0.0", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/verror": { + "version": "1.10.1", + "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.1.tgz", + "integrity": "sha512-veufcmxri4e3XSrT0xwfUR7kguIkaxBeosDg00yDWhk49wdwkSUrvvsm7nc75e1PUyvIeZj6nS8VQRYz2/S4Xg==", "peer": true, "dependencies": { - "p-limit": "^2.0.0" + "assert-plus": "^1.0.0", + "core-util-is": "1.0.2", + "extsprintf": "^1.2.0" }, "engines": { - "node": ">=6" + "node": ">=0.6.0" } }, - "../../service/node_modules/test-exclude/node_modules/p-try": { - "version": "2.2.0", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/void-elements": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/void-elements/-/void-elements-3.1.0.tgz", + "integrity": "sha512-Dhxzh5HZuiHQhbvTW9AMetFfBHDMYpo23Uo9btPXgdYP+3T5S+p+jgNy7spra+veYhBP2dCSgxR/i2Y02h5/6w==", "peer": true, "engines": { - "node": ">=6" + "node": ">=0.10.0" } }, - "../../service/node_modules/test-exclude/node_modules/read-pkg-up": { - "version": "4.0.0", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/walk": { + "version": "2.3.15", + "resolved": "https://registry.npmjs.org/walk/-/walk-2.3.15.tgz", + "integrity": "sha512-4eRTBZljBfIISK1Vnt69Gvr2w/wc3U6Vtrw7qiN5iqYJPH7LElcYh/iU4XWhdCy2dZqv1ToMyYlybDylfG/5Vg==", + "license": "(MIT OR Apache-2.0)", "peer": true, "dependencies": { - "find-up": "^3.0.0", - "read-pkg": "^3.0.0" - }, - "engines": { - "node": ">=6" + "foreachasync": "^3.0.0" } }, - "../../service/node_modules/text-table": { - "version": "0.2.0", - "dev": true, - "license": "MIT", - "peer": true - }, - "../../service/node_modules/through": { - "version": "2.3.8", - "license": "MIT", - "peer": true + "node_modules/@ngageoint/mage.service/node_modules/webidl-conversions": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-7.0.0.tgz", + "integrity": "sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==", + "peer": true, + "engines": { + "node": ">=12" + } }, - "../../service/node_modules/tiny-inflate": { - "version": "1.0.3", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/webworkify": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/webworkify/-/webworkify-1.5.0.tgz", + "integrity": "sha512-AMcUeyXAhbACL8S2hqqdqOLqvJ8ylmIbNwUIqQujRSouf4+eUFaXbG6F1Rbu+srlJMmxQWsiU7mOJi0nMBfM1g==", "peer": true }, - "../../service/node_modules/tmp": { - "version": "0.0.33", - "devOptional": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/whatwg-url": { + "version": "11.0.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-11.0.0.tgz", + "integrity": "sha512-RKT8HExMpoYx4igMiVMY83lN6UeITKJlBQ+vR/8ZJ8OCdSiN3RwCq+9gH0+Xzj0+5IrM6i4j/6LuvzbZIQgEcQ==", "peer": true, "dependencies": { - "os-tmpdir": "~1.0.2" + "tr46": "^3.0.0", + "webidl-conversions": "^7.0.0" }, "engines": { - "node": ">=0.6.0" + "node": ">=12" } }, - "../../service/node_modules/to-regex-range": { - "version": "5.0.1", - "dev": true, - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "extraneous": true, "dependencies": { - "is-number": "^7.0.0" + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" }, "engines": { - "node": ">=8.0" + "node": ">= 8" } }, - "../../service/node_modules/toidentifier": { - "version": "1.0.1", - "license": "MIT", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/which-boxed-primitive": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz", + "integrity": "sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==", + "extraneous": true, + "dependencies": { + "is-bigint": "^1.0.1", + "is-boolean-object": "^1.1.0", + "is-number-object": "^1.0.4", + "is-string": "^1.0.5", + "is-symbol": "^1.0.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/which-collection": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/which-collection/-/which-collection-1.0.2.tgz", + "integrity": "sha512-K4jVyjnBdgvc86Y6BkaLZEN933SwYOuBFkdmBu9ZfkcAbdVbpITnDmjvZ/aQjRXQrv5EPkTnD1s39GiiqbngCw==", + "extraneous": true, + "dependencies": { + "is-map": "^2.0.3", + "is-set": "^2.0.3", + "is-weakmap": "^2.0.2", + "is-weakset": "^2.0.3" + }, "engines": { - "node": ">=0.6" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "../../service/node_modules/token-stream": { - "version": "1.0.0", - "license": "MIT", - "peer": true + "node_modules/@ngageoint/mage.service/node_modules/which-module": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.1.tgz", + "integrity": "sha512-iBdZ57RDvnOR9AGBhML2vFZf7h8vmBjhoaZqODJBFWHVtKkDmKuHai3cx5PgVMrX5YDNp27AofYbAwctSS+vhQ==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/which-typed-array": { + "version": "1.1.15", + "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.15.tgz", + "integrity": "sha512-oV0jmFtUky6CXfkqehVvBP/LSWJ2sy4vWMioiENyJLePrBO/yKyV9OyJySfAKosh+RYkIl5zJCNZ8/4JncrpdA==", + "extraneous": true, + "dependencies": { + "available-typed-arrays": "^1.0.7", + "call-bind": "^1.0.7", + "for-each": "^0.3.3", + "gopd": "^1.0.1", + "has-tostringtag": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, - "../../service/node_modules/token-types": { - "version": "2.1.1", + "node_modules/@ngageoint/mage.service/node_modules/winston": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/winston/-/winston-1.1.2.tgz", + "integrity": "sha512-rl9hA8se2gjdYI6nP1f+kjjSCFCZrObIJB/eXOcMdzWxxcYp7exyc5Bs248fwLT+wHA/+aK0VtBlPHL8qO0T0w==", "license": "MIT", "peer": true, "dependencies": { - "@tokenizer/token": "^0.1.1", - "ieee754": "^1.2.1" + "async": "~1.0.0", + "colors": "1.0.x", + "cycle": "1.0.x", + "eyes": "0.1.x", + "isstream": "0.1.x", + "pkginfo": "0.3.x", + "stack-trace": "0.0.x" }, "engines": { - "node": ">=0.1.98" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/Borewit" + "node": ">= 0.8.0" } }, - "../../service/node_modules/token-types/node_modules/@tokenizer/token": { - "version": "0.1.1", + "node_modules/@ngageoint/mage.service/node_modules/winston/node_modules/async": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/async/-/async-1.0.0.tgz", + "integrity": "sha512-5mO7DX4CbJzp9zjaFXusQQ4tzKJARjNB1Ih1pVBi8wkbmXy/xzIDgEMXxWePLzt2OdFwaxfneIlT1nCiXubrPQ==", "license": "MIT", "peer": true }, - "../../service/node_modules/tough-cookie": { - "version": "2.5.0", - "dev": true, - "license": "BSD-3-Clause", + "node_modules/@ngageoint/mage.service/node_modules/with": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/with/-/with-7.0.2.tgz", + "integrity": "sha512-RNGKj82nUPg3g5ygxkQl0R937xLyho1J24ItRCBTr/m1YnZkzJy1hUiHUJrc/VlsDQzsCnInEGSg3bci0Lmd4w==", "peer": true, "dependencies": { - "psl": "^1.1.28", - "punycode": "^2.1.1" + "@babel/parser": "^7.9.6", + "@babel/types": "^7.9.6", + "assert-never": "^1.2.1", + "babel-walk": "3.0.0-canary-5" }, "engines": { - "node": ">=0.8" + "node": ">= 10.0.0" } }, - "../../service/node_modules/tr46": { - "version": "0.0.3", - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/wkt-parser": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/wkt-parser/-/wkt-parser-1.3.3.tgz", + "integrity": "sha512-ZnV3yH8/k58ZPACOXeiHaMuXIiaTk1t0hSUVisbO0t4RjA5wPpUytcxeyiN2h+LZRrmuHIh/1UlrR9e7DHDvTw==", "peer": true }, - "../../service/node_modules/ts-mockito": { - "version": "2.6.1", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/wkx": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/wkx/-/wkx-0.5.0.tgz", + "integrity": "sha512-Xng/d4Ichh8uN4l0FToV/258EjMGU9MGcA0HV2d9B/ZpZB3lqQm7nkOdZdm5GhKtLLhAE7PiVQwN4eN+2YJJUg==", "license": "MIT", "peer": true, "dependencies": { - "lodash": "^4.17.5" + "@types/node": "*" } }, - "../../service/node_modules/tslib": { - "version": "1.14.1", - "devOptional": true, - "license": "0BSD", - "peer": true - }, - "../../service/node_modules/tsutils": { - "version": "3.21.0", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/wms-capabilities": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/wms-capabilities/-/wms-capabilities-0.6.0.tgz", + "integrity": "sha512-yTbtesuSyKkHhw1TUX4VklXEkbQByc+hyo7TWq1sGjBA6tQ+XN32w546TPDTzROuwFTE/Dcq5F5FN4aA9nesaQ==", + "license": "BSD-2-Clause", "peer": true, + "bin": { + "wmscapabilities": "bin/wmscapabilities" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/word-wrap": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.5.tgz", + "integrity": "sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==", + "extraneous": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/workerpool": { + "version": "6.5.1", + "resolved": "https://registry.npmjs.org/workerpool/-/workerpool-6.5.1.tgz", + "integrity": "sha512-Fs4dNYcsdpYSAfVxhnl1L5zTksjvOJxtC5hzMNl+1t9B8hTJTdKDyZ5ju7ztgPy+ft9tBFXoOlDNiOT9WUXZlA==", + "extraneous": true, + "license": "Apache-2.0" + }, + "node_modules/@ngageoint/mage.service/node_modules/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==", + "extraneous": true, "dependencies": { - "tslib": "^1.8.1" + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" }, "engines": { - "node": ">= 6" + "node": ">=10" }, - "peerDependencies": { - "typescript": ">=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta" + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" } }, - "../../service/node_modules/tunnel-agent": { - "version": "0.6.0", - "license": "Apache-2.0", - "peer": true, + "node_modules/@ngageoint/mage.service/node_modules/wrap-ansi-cjs": { + "name": "wrap-ansi", + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "extraneous": true, "dependencies": { - "safe-buffer": "^5.0.1" + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" }, "engines": { - "node": "*" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" } }, - "../../service/node_modules/tweetnacl": { - "version": "0.14.5", - "dev": true, - "license": "Unlicense", + "node_modules/@ngageoint/mage.service/node_modules/wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", "peer": true }, - "../../service/node_modules/type-check": { - "version": "0.3.2", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/write-file-atomic": { + "version": "2.4.3", + "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-2.4.3.tgz", + "integrity": "sha512-GaETH5wwsX+GcnzhPgKcKjJ6M2Cq3/iZp1WyY/X1CSqrW+jVNM9Y7D8EC2sM4ZG/V8wZlSniJnCKWPmBYAucRQ==", + "extraneous": true, + "dependencies": { + "graceful-fs": "^4.1.11", + "imurmurhash": "^0.1.4", + "signal-exit": "^3.0.2" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/xml-crypto": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/xml-crypto/-/xml-crypto-3.2.0.tgz", + "integrity": "sha512-qVurBUOQrmvlgmZqIVBqmb06TD2a/PpEUfFPgD7BuBfjmoH4zgkqaWSIJrnymlCvM2GGt9x+XtJFA+ttoAufqg==", "peer": true, "dependencies": { - "prelude-ls": "~1.1.2" + "@xmldom/xmldom": "^0.8.8", + "xpath": "0.0.32" }, "engines": { - "node": ">= 0.8.0" + "node": ">=4.0.0" } }, - "../../service/node_modules/type-detect": { - "version": "4.0.8", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/xml-crypto/node_modules/@xmldom/xmldom": { + "version": "0.8.10", + "resolved": "https://registry.npmjs.org/@xmldom/xmldom/-/xmldom-0.8.10.tgz", + "integrity": "sha512-2WALfTl4xo2SkGCYRt6rDTFfk9R1czmBvUQy12gK2KuRKIpWEhcbbzy8EZXtz/jkRqHX8bFEc6FC1HjX4TUWYw==", "license": "MIT", "peer": true, "engines": { - "node": ">=4" + "node": ">=10.0.0" } }, - "../../service/node_modules/type-fest": { - "version": "0.21.3", - "devOptional": true, - "license": "(MIT OR CC0-1.0)", + "node_modules/@ngageoint/mage.service/node_modules/xml-crypto/node_modules/xpath": { + "version": "0.0.32", + "resolved": "https://registry.npmjs.org/xpath/-/xpath-0.0.32.tgz", + "integrity": "sha512-rxMJhSIoiO8vXcWvSifKqhvV96GjiD5wYb8/QHdoRyQvraTpp4IEv944nhGausZZ3u7dhQXteZuZbaqfpB7uYw==", "peer": true, "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=0.6.0" } }, - "../../service/node_modules/type-is": { - "version": "1.6.18", - "license": "MIT", - "peer": true, - "dependencies": { - "media-typer": "0.3.0", - "mime-types": "~2.1.24" - }, - "engines": { - "node": ">= 0.6" - } - }, - "../../service/node_modules/typedarray": { - "version": "0.0.6", - "license": "MIT", - "peer": true - }, - "../../service/node_modules/typescript": { - "version": "4.6.4", - "dev": true, - "license": "Apache-2.0", - "peer": true, - "bin": { - "tsc": "bin/tsc", - "tsserver": "bin/tsserver" - }, - "engines": { - "node": ">=4.2.0" - } - }, - "../../service/node_modules/uid-safe": { - "version": "2.1.5", - "license": "MIT", - "peer": true, - "dependencies": { - "random-bytes": "~1.0.0" - }, - "engines": { - "node": ">= 0.8" - } - }, - "../../service/node_modules/uid2": { - "version": "0.0.4", - "license": "MIT", - "peer": true - }, - "../../service/node_modules/unbox-primitive": { - "version": "1.0.1", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "function-bind": "^1.1.1", - "has-bigints": "^1.0.1", - "has-symbols": "^1.0.2", - "which-boxed-primitive": "^1.0.2" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "../../service/node_modules/underscore": { - "version": "1.8.3", - "license": "MIT", - "peer": true - }, - "../../service/node_modules/uniqid": { - "version": "5.4.0", - "license": "MIT", - "peer": true - }, - "../../service/node_modules/universalify": { - "version": "0.1.2", - "license": "MIT", - "peer": true, - "engines": { - "node": ">= 4.0.0" - } - }, - "../../service/node_modules/unpipe": { - "version": "1.0.0", - "license": "MIT", - "peer": true, - "engines": { - "node": ">= 0.8" - } - }, - "../../service/node_modules/uri-js": { - "version": "4.4.1", - "dev": true, - "license": "BSD-2-Clause", - "peer": true, - "dependencies": { - "punycode": "^2.1.0" - } - }, - "../../service/node_modules/util": { - "version": "0.12.4", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "inherits": "^2.0.3", - "is-arguments": "^1.0.4", - "is-generator-function": "^1.0.7", - "is-typed-array": "^1.1.3", - "safe-buffer": "^5.1.2", - "which-typed-array": "^1.1.2" - } - }, - "../../service/node_modules/util-deprecate": { - "version": "1.0.2", - "license": "MIT", - "peer": true - }, - "../../service/node_modules/utils-merge": { - "version": "1.0.1", - "license": "MIT", - "peer": true, - "engines": { - "node": ">= 0.4.0" - } - }, - "../../service/node_modules/uuid": { - "version": "3.4.0", - "dev": true, - "license": "MIT", - "peer": true, - "bin": { - "uuid": "bin/uuid" - } - }, - "../../service/node_modules/v8-compile-cache": { - "version": "2.3.0", - "dev": true, - "license": "MIT", - "peer": true - }, - "../../service/node_modules/validate-npm-package-license": { - "version": "3.0.4", - "dev": true, - "license": "Apache-2.0", - "peer": true, - "dependencies": { - "spdx-correct": "^3.0.0", - "spdx-expression-parse": "^3.0.0" - } - }, - "../../service/node_modules/vary": { - "version": "1.1.2", - "license": "MIT", - "peer": true, - "engines": { - "node": ">= 0.8" - } - }, - "../../service/node_modules/vasync": { - "version": "1.6.4", - "engines": [ - "node >=0.6.0" - ], - "license": "MIT", - "peer": true, - "dependencies": { - "verror": "1.6.0" - } - }, - "../../service/node_modules/vasync/node_modules/verror": { - "version": "1.6.0", - "engines": [ - "node >=0.6.0" - ], - "license": "MIT", - "peer": true, - "dependencies": { - "extsprintf": "1.2.0" - } - }, - "../../service/node_modules/verror": { - "version": "1.10.1", - "license": "MIT", - "peer": true, - "dependencies": { - "assert-plus": "^1.0.0", - "core-util-is": "1.0.2", - "extsprintf": "^1.2.0" - }, - "engines": { - "node": ">=0.6.0" - } - }, - "../../service/node_modules/verror/node_modules/core-util-is": { - "version": "1.0.2", - "license": "MIT", - "peer": true - }, - "../../service/node_modules/void-elements": { - "version": "3.1.0", - "license": "MIT", - "peer": true, - "engines": { - "node": ">=0.10.0" - } - }, - "../../service/node_modules/walk": { - "version": "2.3.4", - "peer": true, - "dependencies": { - "foreachasync": "3.x" - } - }, - "../../service/node_modules/webidl-conversions": { - "version": "3.0.1", - "license": "BSD-2-Clause", - "peer": true - }, - "../../service/node_modules/webworkify": { - "version": "1.5.0", - "license": "MIT", - "peer": true - }, - "../../service/node_modules/whatwg-url": { - "version": "5.0.0", - "license": "MIT", - "peer": true, - "dependencies": { - "tr46": "~0.0.3", - "webidl-conversions": "^3.0.0" - } - }, - "../../service/node_modules/which": { - "version": "1.3.1", - "license": "ISC", - "peer": true, - "dependencies": { - "isexe": "^2.0.0" - }, - "bin": { - "which": "bin/which" - } - }, - "../../service/node_modules/which-boxed-primitive": { - "version": "1.0.2", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "is-bigint": "^1.0.1", - "is-boolean-object": "^1.1.0", - "is-number-object": "^1.0.4", - "is-string": "^1.0.5", - "is-symbol": "^1.0.3" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "../../service/node_modules/which-collection": { - "version": "1.0.1", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "is-map": "^2.0.1", - "is-set": "^2.0.1", - "is-weakmap": "^2.0.1", - "is-weakset": "^2.0.1" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "../../service/node_modules/which-module": { - "version": "2.0.0", - "dev": true, - "license": "ISC", - "peer": true - }, - "../../service/node_modules/which-typed-array": { - "version": "1.1.7", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/xml-encryption": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/xml-encryption/-/xml-encryption-3.0.2.tgz", + "integrity": "sha512-VxYXPvsWB01/aqVLd6ZMPWZ+qaj0aIdF+cStrVJMcFj3iymwZeI0ABzB3VqMYv48DkSpRhnrXqTUkR34j+UDyg==", "peer": true, "dependencies": { - "available-typed-arrays": "^1.0.5", - "call-bind": "^1.0.2", - "es-abstract": "^1.18.5", - "foreach": "^2.0.5", - "has-tostringtag": "^1.0.0", - "is-typed-array": "^1.1.7" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "../../service/node_modules/wide-align": { - "version": "1.1.5", - "license": "ISC", - "optional": true, - "peer": true, - "dependencies": { - "string-width": "^1.0.2 || 2 || 3 || 4" - } - }, - "../../service/node_modules/winston": { - "version": "1.0.1", - "license": "MIT", - "peer": true, - "dependencies": { - "async": "0.9.x", - "colors": "1.0.x", - "cycle": "1.0.x", - "eyes": "0.1.x", - "isstream": "0.1.x", - "pkginfo": "0.3.x", - "stack-trace": "0.0.x" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "../../service/node_modules/winston/node_modules/async": { - "version": "0.9.2", - "license": "MIT", - "peer": true - }, - "../../service/node_modules/with": { - "version": "7.0.2", - "license": "MIT", - "peer": true, - "dependencies": { - "@babel/parser": "^7.9.6", - "@babel/types": "^7.9.6", - "assert-never": "^1.2.1", - "babel-walk": "3.0.0-canary-5" - }, - "engines": { - "node": ">= 10.0.0" - } - }, - "../../service/node_modules/wkt-parser": { - "version": "1.3.2", - "license": "MIT", - "peer": true - }, - "../../service/node_modules/wkx": { - "version": "0.4.8", - "license": "MIT", - "peer": true, - "dependencies": { - "@types/node": "*" - } - }, - "../../service/node_modules/wms-capabilities": { - "version": "0.4.1", - "license": "BSD-2-Clause", - "peer": true, - "dependencies": { - "minimist": "^1.2.0" - }, - "bin": { - "wmscapabilities": "bin/wmscapabilities" - } - }, - "../../service/node_modules/word-wrap": { - "version": "1.2.3", - "dev": true, - "license": "MIT", - "peer": true, - "engines": { - "node": ">=0.10.0" - } - }, - "../../service/node_modules/wrap-ansi": { - "version": "5.1.0", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "ansi-styles": "^3.2.0", - "string-width": "^3.0.0", - "strip-ansi": "^5.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "../../service/node_modules/wrap-ansi/node_modules/ansi-regex": { - "version": "4.1.1", - "dev": true, - "license": "MIT", - "peer": true, - "engines": { - "node": ">=6" - } - }, - "../../service/node_modules/wrap-ansi/node_modules/ansi-styles": { - "version": "3.2.1", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "color-convert": "^1.9.0" - }, - "engines": { - "node": ">=4" - } - }, - "../../service/node_modules/wrap-ansi/node_modules/color-convert": { - "version": "1.9.3", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "color-name": "1.1.3" - } - }, - "../../service/node_modules/wrap-ansi/node_modules/color-name": { - "version": "1.1.3", - "dev": true, - "license": "MIT", - "peer": true - }, - "../../service/node_modules/wrap-ansi/node_modules/emoji-regex": { - "version": "7.0.3", - "dev": true, - "license": "MIT", - "peer": true - }, - "../../service/node_modules/wrap-ansi/node_modules/is-fullwidth-code-point": { - "version": "2.0.0", - "dev": true, - "license": "MIT", - "peer": true, - "engines": { - "node": ">=4" - } - }, - "../../service/node_modules/wrap-ansi/node_modules/string-width": { - "version": "3.1.0", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "emoji-regex": "^7.0.1", - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^5.1.0" - }, - "engines": { - "node": ">=6" - } - }, - "../../service/node_modules/wrap-ansi/node_modules/strip-ansi": { - "version": "5.2.0", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "ansi-regex": "^4.1.0" - }, - "engines": { - "node": ">=6" - } - }, - "../../service/node_modules/wrappy": { - "version": "1.0.2", - "license": "ISC", - "peer": true - }, - "../../service/node_modules/write": { - "version": "1.0.3", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "mkdirp": "^0.5.1" - }, - "engines": { - "node": ">=4" - } - }, - "../../service/node_modules/write-file-atomic": { - "version": "2.4.3", - "dev": true, - "license": "ISC", - "peer": true, - "dependencies": { - "graceful-fs": "^4.1.11", - "imurmurhash": "^0.1.4", - "signal-exit": "^3.0.2" - } - }, - "../../service/node_modules/write/node_modules/minimist": { - "version": "1.2.6", - "dev": true, - "license": "MIT", - "peer": true - }, - "../../service/node_modules/write/node_modules/mkdirp": { - "version": "0.5.6", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "minimist": "^1.2.6" - }, - "bin": { - "mkdirp": "bin/cmd.js" - } - }, - "../../service/node_modules/wtfnode": { - "version": "0.8.4", - "dev": true, - "license": "ISC", - "peer": true, - "bin": { - "wtfnode": "proxy.js" - } - }, - "../../service/node_modules/xml-crypto": { - "version": "3.2.0", - "license": "MIT", - "peer": true, - "dependencies": { - "@xmldom/xmldom": "^0.8.8", - "xpath": "0.0.32" - }, - "engines": { - "node": ">=4.0.0" - } - }, - "../../service/node_modules/xml-crypto/node_modules/xpath": { - "version": "0.0.32", - "license": "MIT", - "peer": true, - "engines": { - "node": ">=0.6.0" - } - }, - "../../service/node_modules/xml-encryption": { - "version": "3.0.2", - "license": "MIT", - "peer": true, - "dependencies": { - "@xmldom/xmldom": "^0.8.5", - "escape-html": "^1.0.3", - "xpath": "0.0.32" + "@xmldom/xmldom": "^0.8.5", + "escape-html": "^1.0.3", + "xpath": "0.0.32" }, "engines": { "node": ">=12" } }, - "../../service/node_modules/xml-encryption/node_modules/xpath": { - "version": "0.0.32", - "license": "MIT", - "peer": true, - "engines": { - "node": ">=0.6.0" - } - }, - "../../service/node_modules/xml2js": { - "version": "0.5.0", - "license": "MIT", - "peer": true, - "dependencies": { - "sax": ">=0.6.0", - "xmlbuilder": "~11.0.0" - }, - "engines": { - "node": ">=4.0.0" - } - }, - "../../service/node_modules/xml2js/node_modules/xmlbuilder": { - "version": "11.0.1", - "license": "MIT", - "peer": true, - "engines": { - "node": ">=4.0" - } - }, - "../../service/node_modules/xmlbuilder": { - "version": "15.1.1", - "license": "MIT", - "peer": true, - "engines": { - "node": ">=8.0" - } - }, - "../../service/node_modules/xmlbuilder2": { - "version": "3.0.2", - "license": "MIT", - "peer": true, - "dependencies": { - "@oozcitak/dom": "1.15.10", - "@oozcitak/infra": "1.0.8", - "@oozcitak/util": "8.3.8", - "@types/node": "*", - "js-yaml": "3.14.0" - }, - "engines": { - "node": ">=12.0" - } - }, - "../../service/node_modules/xmlbuilder2/node_modules/esprima": { - "version": "4.0.1", - "license": "BSD-2-Clause", - "peer": true, - "bin": { - "esparse": "bin/esparse.js", - "esvalidate": "bin/esvalidate.js" - }, - "engines": { - "node": ">=4" - } - }, - "../../service/node_modules/xmlbuilder2/node_modules/js-yaml": { - "version": "3.14.0", - "license": "MIT", - "peer": true, - "dependencies": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" - }, - "bin": { - "js-yaml": "bin/js-yaml.js" - } - }, - "../../service/node_modules/xpath": { - "version": "0.0.23", - "license": "Creative Commons", - "peer": true, - "engines": { - "node": ">=0.6.0" - } - }, - "../../service/node_modules/xtend": { - "version": "4.0.2", - "license": "MIT", - "peer": true, - "engines": { - "node": ">=0.4" - } - }, - "../../service/node_modules/y18n": { - "version": "4.0.3", - "dev": true, - "license": "ISC", - "peer": true - }, - "../../service/node_modules/yallist": { - "version": "4.0.0", - "license": "ISC", - "peer": true - }, - "../../service/node_modules/yaml": { - "version": "1.10.2", - "license": "ISC", - "peer": true, - "engines": { - "node": ">= 6" - } - }, - "../../service/node_modules/yargs-unparser": { - "version": "1.6.0", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "flat": "^4.1.0", - "lodash": "^4.17.15", - "yargs": "^13.3.0" - }, - "engines": { - "node": ">=6" - } - }, - "../../service/node_modules/yargs-unparser/node_modules/ansi-regex": { - "version": "4.1.1", - "dev": true, - "license": "MIT", - "peer": true, - "engines": { - "node": ">=6" - } - }, - "../../service/node_modules/yargs-unparser/node_modules/camelcase": { - "version": "5.3.1", - "dev": true, - "license": "MIT", - "peer": true, - "engines": { - "node": ">=6" - } - }, - "../../service/node_modules/yargs-unparser/node_modules/cliui": { - "version": "5.0.0", - "dev": true, - "license": "ISC", - "peer": true, - "dependencies": { - "string-width": "^3.1.0", - "strip-ansi": "^5.2.0", - "wrap-ansi": "^5.1.0" - } - }, - "../../service/node_modules/yargs-unparser/node_modules/emoji-regex": { - "version": "7.0.3", - "dev": true, - "license": "MIT", - "peer": true - }, - "../../service/node_modules/yargs-unparser/node_modules/find-up": { - "version": "3.0.0", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "locate-path": "^3.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "../../service/node_modules/yargs-unparser/node_modules/is-fullwidth-code-point": { - "version": "2.0.0", - "dev": true, - "license": "MIT", - "peer": true, - "engines": { - "node": ">=4" - } - }, - "../../service/node_modules/yargs-unparser/node_modules/locate-path": { - "version": "3.0.0", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "p-locate": "^3.0.0", - "path-exists": "^3.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "../../service/node_modules/yargs-unparser/node_modules/p-limit": { - "version": "2.3.0", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "p-try": "^2.0.0" - }, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "../../service/node_modules/yargs-unparser/node_modules/p-locate": { - "version": "3.0.0", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "p-limit": "^2.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "../../service/node_modules/yargs-unparser/node_modules/p-try": { - "version": "2.2.0", - "dev": true, - "license": "MIT", - "peer": true, - "engines": { - "node": ">=6" - } - }, - "../../service/node_modules/yargs-unparser/node_modules/string-width": { - "version": "3.1.0", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "emoji-regex": "^7.0.1", - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^5.1.0" - }, - "engines": { - "node": ">=6" - } - }, - "../../service/node_modules/yargs-unparser/node_modules/strip-ansi": { - "version": "5.2.0", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "ansi-regex": "^4.1.0" - }, - "engines": { - "node": ">=6" - } - }, - "../../service/node_modules/yargs-unparser/node_modules/yargs": { - "version": "13.3.2", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "cliui": "^5.0.0", - "find-up": "^3.0.0", - "get-caller-file": "^2.0.1", - "require-directory": "^2.1.1", - "require-main-filename": "^2.0.0", - "set-blocking": "^2.0.0", - "string-width": "^3.0.0", - "which-module": "^2.0.0", - "y18n": "^4.0.0", - "yargs-parser": "^13.1.2" - } - }, - "../../service/node_modules/yargs-unparser/node_modules/yargs-parser": { - "version": "13.1.2", - "dev": true, - "license": "ISC", - "peer": true, - "dependencies": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" - } - }, - "../../service/node_modules/yauzl": { - "version": "2.10.0", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "buffer-crc32": "~0.2.3", - "fd-slicer": "~1.1.0" - } - }, - "../../service/node_modules/zip-stream": { - "version": "4.1.0", - "license": "MIT", - "peer": true, - "dependencies": { - "archiver-utils": "^2.1.0", - "compress-commons": "^4.1.0", - "readable-stream": "^3.6.0" - }, - "engines": { - "node": ">= 10" - } - }, - "../../service/node_modules/zip-stream/node_modules/readable-stream": { - "version": "3.6.0", - "license": "MIT", - "peer": true, - "dependencies": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - }, - "engines": { - "node": ">= 6" - } - }, - "../../service/node_modules/zip-stream/node_modules/string_decoder": { - "version": "1.3.0", - "license": "MIT", - "peer": true, - "dependencies": { - "safe-buffer": "~5.2.0" - } - }, - "node_modules/@ampproject/remapping": { - "version": "2.2.1", - "dev": true, - "license": "Apache-2.0", - "dependencies": { - "@jridgewell/gen-mapping": "^0.3.0", - "@jridgewell/trace-mapping": "^0.3.9" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@babel/code-frame": { - "version": "7.22.10", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/highlight": "^7.22.10", - "chalk": "^2.4.2" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/code-frame/node_modules/ansi-styles": { - "version": "3.2.1", - "dev": true, - "license": "MIT", - "dependencies": { - "color-convert": "^1.9.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/@babel/code-frame/node_modules/chalk": { - "version": "2.4.2", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/@babel/code-frame/node_modules/color-convert": { - "version": "1.9.3", - "dev": true, - "license": "MIT", - "dependencies": { - "color-name": "1.1.3" - } - }, - "node_modules/@babel/code-frame/node_modules/color-name": { - "version": "1.1.3", - "dev": true, - "license": "MIT" - }, - "node_modules/@babel/code-frame/node_modules/escape-string-regexp": { - "version": "1.0.5", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/@babel/code-frame/node_modules/has-flag": { - "version": "3.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=4" - } - }, - "node_modules/@babel/code-frame/node_modules/supports-color": { - "version": "5.5.0", - "dev": true, - "license": "MIT", - "dependencies": { - "has-flag": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/@babel/compat-data": { - "version": "7.22.9", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/core": { - "version": "7.22.11", - "dev": true, - "license": "MIT", - "dependencies": { - "@ampproject/remapping": "^2.2.0", - "@babel/code-frame": "^7.22.10", - "@babel/generator": "^7.22.10", - "@babel/helper-compilation-targets": "^7.22.10", - "@babel/helper-module-transforms": "^7.22.9", - "@babel/helpers": "^7.22.11", - "@babel/parser": "^7.22.11", - "@babel/template": "^7.22.5", - "@babel/traverse": "^7.22.11", - "@babel/types": "^7.22.11", - "convert-source-map": "^1.7.0", - "debug": "^4.1.0", - "gensync": "^1.0.0-beta.2", - "json5": "^2.2.3", - "semver": "^6.3.1" - }, - "engines": { - "node": ">=6.9.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/babel" - } - }, - "node_modules/@babel/core/node_modules/debug": { - "version": "4.3.4", - "dev": true, - "license": "MIT", - "dependencies": { - "ms": "2.1.2" - }, - "engines": { - "node": ">=6.0" - }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } - } - }, - "node_modules/@babel/core/node_modules/ms": { - "version": "2.1.2", - "dev": true, - "license": "MIT" - }, - "node_modules/@babel/generator": { - "version": "7.22.10", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/types": "^7.22.10", - "@jridgewell/gen-mapping": "^0.3.2", - "@jridgewell/trace-mapping": "^0.3.17", - "jsesc": "^2.5.1" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-compilation-targets": { - "version": "7.22.10", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/compat-data": "^7.22.9", - "@babel/helper-validator-option": "^7.22.5", - "browserslist": "^4.21.9", - "lru-cache": "^5.1.1", - "semver": "^6.3.1" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-environment-visitor": { - "version": "7.22.5", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-function-name": { - "version": "7.22.5", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/template": "^7.22.5", - "@babel/types": "^7.22.5" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-hoist-variables": { - "version": "7.22.5", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/types": "^7.22.5" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-module-imports": { - "version": "7.22.5", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/types": "^7.22.5" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-module-transforms": { - "version": "7.22.9", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/helper-environment-visitor": "^7.22.5", - "@babel/helper-module-imports": "^7.22.5", - "@babel/helper-simple-access": "^7.22.5", - "@babel/helper-split-export-declaration": "^7.22.6", - "@babel/helper-validator-identifier": "^7.22.5" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" - } - }, - "node_modules/@babel/helper-plugin-utils": { - "version": "7.22.5", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-simple-access": { - "version": "7.22.5", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/types": "^7.22.5" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-split-export-declaration": { - "version": "7.22.6", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/types": "^7.22.5" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-string-parser": { - "version": "7.22.5", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-validator-identifier": { - "version": "7.22.5", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-validator-option": { - "version": "7.22.5", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helpers": { - "version": "7.22.11", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/template": "^7.22.5", - "@babel/traverse": "^7.22.11", - "@babel/types": "^7.22.11" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/highlight": { - "version": "7.22.10", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/helper-validator-identifier": "^7.22.5", - "chalk": "^2.4.2", - "js-tokens": "^4.0.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/highlight/node_modules/ansi-styles": { - "version": "3.2.1", - "dev": true, - "license": "MIT", - "dependencies": { - "color-convert": "^1.9.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/@babel/highlight/node_modules/chalk": { - "version": "2.4.2", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/@babel/highlight/node_modules/color-convert": { - "version": "1.9.3", - "dev": true, - "license": "MIT", - "dependencies": { - "color-name": "1.1.3" - } - }, - "node_modules/@babel/highlight/node_modules/color-name": { - "version": "1.1.3", - "dev": true, - "license": "MIT" - }, - "node_modules/@babel/highlight/node_modules/escape-string-regexp": { - "version": "1.0.5", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/@babel/highlight/node_modules/has-flag": { - "version": "3.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=4" - } - }, - "node_modules/@babel/highlight/node_modules/supports-color": { - "version": "5.5.0", - "dev": true, - "license": "MIT", - "dependencies": { - "has-flag": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/@babel/parser": { - "version": "7.22.11", - "dev": true, - "license": "MIT", - "bin": { - "parser": "bin/babel-parser.js" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@babel/plugin-syntax-async-generators": { - "version": "7.8.4", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-bigint": { - "version": "7.8.3", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-class-properties": { - "version": "7.12.13", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/helper-plugin-utils": "^7.12.13" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-import-meta": { - "version": "7.10.4", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-json-strings": { - "version": "7.8.3", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-logical-assignment-operators": { - "version": "7.10.4", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-nullish-coalescing-operator": { - "version": "7.8.3", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-numeric-separator": { - "version": "7.10.4", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-object-rest-spread": { - "version": "7.8.3", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-optional-catch-binding": { - "version": "7.8.3", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-optional-chaining": { - "version": "7.8.3", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-top-level-await": { - "version": "7.14.5", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/helper-plugin-utils": "^7.14.5" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/template": { - "version": "7.22.5", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/code-frame": "^7.22.5", - "@babel/parser": "^7.22.5", - "@babel/types": "^7.22.5" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/traverse": { - "version": "7.22.11", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/code-frame": "^7.22.10", - "@babel/generator": "^7.22.10", - "@babel/helper-environment-visitor": "^7.22.5", - "@babel/helper-function-name": "^7.22.5", - "@babel/helper-hoist-variables": "^7.22.5", - "@babel/helper-split-export-declaration": "^7.22.6", - "@babel/parser": "^7.22.11", - "@babel/types": "^7.22.11", - "debug": "^4.1.0", - "globals": "^11.1.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/traverse/node_modules/debug": { - "version": "4.3.4", - "dev": true, - "license": "MIT", - "dependencies": { - "ms": "2.1.2" - }, - "engines": { - "node": ">=6.0" - }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } - } - }, - "node_modules/@babel/traverse/node_modules/ms": { - "version": "2.1.2", - "dev": true, - "license": "MIT" - }, - "node_modules/@babel/types": { - "version": "7.22.11", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/helper-string-parser": "^7.22.5", - "@babel/helper-validator-identifier": "^7.22.5", - "to-fast-properties": "^2.0.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@bcoe/v8-coverage": { - "version": "0.2.3", - "dev": true, - "license": "MIT" - }, - "node_modules/@cnakazawa/watch": { - "version": "1.0.4", - "dev": true, - "license": "Apache-2.0", - "dependencies": { - "exec-sh": "^0.3.2", - "minimist": "^1.2.0" - }, - "bin": { - "watch": "cli.js" - }, - "engines": { - "node": ">=0.1.95" - } - }, - "node_modules/@istanbuljs/load-nyc-config": { - "version": "1.1.0", - "dev": true, - "license": "ISC", - "dependencies": { - "camelcase": "^5.3.1", - "find-up": "^4.1.0", - "get-package-type": "^0.1.0", - "js-yaml": "^3.13.1", - "resolve-from": "^5.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/@istanbuljs/schema": { - "version": "0.1.3", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/@jest/console": { - "version": "26.6.2", - "dev": true, - "license": "MIT", - "dependencies": { - "@jest/types": "^26.6.2", - "@types/node": "*", - "chalk": "^4.0.0", - "jest-message-util": "^26.6.2", - "jest-util": "^26.6.2", - "slash": "^3.0.0" - }, - "engines": { - "node": ">= 10.14.2" - } - }, - "node_modules/@jest/console/node_modules/slash": { - "version": "3.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/@jest/core": { - "version": "26.6.3", - "dev": true, - "license": "MIT", - "dependencies": { - "@jest/console": "^26.6.2", - "@jest/reporters": "^26.6.2", - "@jest/test-result": "^26.6.2", - "@jest/transform": "^26.6.2", - "@jest/types": "^26.6.2", - "@types/node": "*", - "ansi-escapes": "^4.2.1", - "chalk": "^4.0.0", - "exit": "^0.1.2", - "graceful-fs": "^4.2.4", - "jest-changed-files": "^26.6.2", - "jest-config": "^26.6.3", - "jest-haste-map": "^26.6.2", - "jest-message-util": "^26.6.2", - "jest-regex-util": "^26.0.0", - "jest-resolve": "^26.6.2", - "jest-resolve-dependencies": "^26.6.3", - "jest-runner": "^26.6.3", - "jest-runtime": "^26.6.3", - "jest-snapshot": "^26.6.2", - "jest-util": "^26.6.2", - "jest-validate": "^26.6.2", - "jest-watcher": "^26.6.2", - "micromatch": "^4.0.2", - "p-each-series": "^2.1.0", - "rimraf": "^3.0.0", - "slash": "^3.0.0", - "strip-ansi": "^6.0.0" - }, - "engines": { - "node": ">= 10.14.2" - } - }, - "node_modules/@jest/core/node_modules/braces": { - "version": "3.0.2", - "dev": true, - "license": "MIT", - "dependencies": { - "fill-range": "^7.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/@jest/core/node_modules/fill-range": { - "version": "7.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "to-regex-range": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/@jest/core/node_modules/is-number": { - "version": "7.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.12.0" - } - }, - "node_modules/@jest/core/node_modules/micromatch": { - "version": "4.0.5", - "dev": true, - "license": "MIT", - "dependencies": { - "braces": "^3.0.2", - "picomatch": "^2.3.1" - }, - "engines": { - "node": ">=8.6" - } - }, - "node_modules/@jest/core/node_modules/slash": { - "version": "3.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/@jest/core/node_modules/to-regex-range": { - "version": "5.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "is-number": "^7.0.0" - }, - "engines": { - "node": ">=8.0" - } - }, - "node_modules/@jest/environment": { - "version": "26.6.2", - "dev": true, - "license": "MIT", - "dependencies": { - "@jest/fake-timers": "^26.6.2", - "@jest/types": "^26.6.2", - "@types/node": "*", - "jest-mock": "^26.6.2" - }, - "engines": { - "node": ">= 10.14.2" - } - }, - "node_modules/@jest/fake-timers": { - "version": "26.6.2", - "dev": true, - "license": "MIT", - "dependencies": { - "@jest/types": "^26.6.2", - "@sinonjs/fake-timers": "^6.0.1", - "@types/node": "*", - "jest-message-util": "^26.6.2", - "jest-mock": "^26.6.2", - "jest-util": "^26.6.2" - }, - "engines": { - "node": ">= 10.14.2" - } - }, - "node_modules/@jest/globals": { - "version": "26.6.2", - "dev": true, - "license": "MIT", - "dependencies": { - "@jest/environment": "^26.6.2", - "@jest/types": "^26.6.2", - "expect": "^26.6.2" - }, - "engines": { - "node": ">= 10.14.2" - } - }, - "node_modules/@jest/reporters": { - "version": "26.6.2", - "dev": true, - "license": "MIT", - "dependencies": { - "@bcoe/v8-coverage": "^0.2.3", - "@jest/console": "^26.6.2", - "@jest/test-result": "^26.6.2", - "@jest/transform": "^26.6.2", - "@jest/types": "^26.6.2", - "chalk": "^4.0.0", - "collect-v8-coverage": "^1.0.0", - "exit": "^0.1.2", - "glob": "^7.1.2", - "graceful-fs": "^4.2.4", - "istanbul-lib-coverage": "^3.0.0", - "istanbul-lib-instrument": "^4.0.3", - "istanbul-lib-report": "^3.0.0", - "istanbul-lib-source-maps": "^4.0.0", - "istanbul-reports": "^3.0.2", - "jest-haste-map": "^26.6.2", - "jest-resolve": "^26.6.2", - "jest-util": "^26.6.2", - "jest-worker": "^26.6.2", - "slash": "^3.0.0", - "source-map": "^0.6.0", - "string-length": "^4.0.1", - "terminal-link": "^2.0.0", - "v8-to-istanbul": "^7.0.0" - }, - "engines": { - "node": ">= 10.14.2" - }, - "optionalDependencies": { - "node-notifier": "^8.0.0" - } - }, - "node_modules/@jest/reporters/node_modules/slash": { - "version": "3.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/@jest/source-map": { - "version": "26.6.2", - "dev": true, - "license": "MIT", - "dependencies": { - "callsites": "^3.0.0", - "graceful-fs": "^4.2.4", - "source-map": "^0.6.0" - }, - "engines": { - "node": ">= 10.14.2" - } - }, - "node_modules/@jest/test-result": { - "version": "26.6.2", - "dev": true, - "license": "MIT", - "dependencies": { - "@jest/console": "^26.6.2", - "@jest/types": "^26.6.2", - "@types/istanbul-lib-coverage": "^2.0.0", - "collect-v8-coverage": "^1.0.0" - }, - "engines": { - "node": ">= 10.14.2" - } - }, - "node_modules/@jest/test-sequencer": { - "version": "26.6.3", - "dev": true, - "license": "MIT", - "dependencies": { - "@jest/test-result": "^26.6.2", - "graceful-fs": "^4.2.4", - "jest-haste-map": "^26.6.2", - "jest-runner": "^26.6.3", - "jest-runtime": "^26.6.3" - }, - "engines": { - "node": ">= 10.14.2" - } - }, - "node_modules/@jest/transform": { - "version": "26.6.2", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/core": "^7.1.0", - "@jest/types": "^26.6.2", - "babel-plugin-istanbul": "^6.0.0", - "chalk": "^4.0.0", - "convert-source-map": "^1.4.0", - "fast-json-stable-stringify": "^2.0.0", - "graceful-fs": "^4.2.4", - "jest-haste-map": "^26.6.2", - "jest-regex-util": "^26.0.0", - "jest-util": "^26.6.2", - "micromatch": "^4.0.2", - "pirates": "^4.0.1", - "slash": "^3.0.0", - "source-map": "^0.6.1", - "write-file-atomic": "^3.0.0" - }, - "engines": { - "node": ">= 10.14.2" - } - }, - "node_modules/@jest/transform/node_modules/braces": { - "version": "3.0.2", - "dev": true, - "license": "MIT", - "dependencies": { - "fill-range": "^7.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/@jest/transform/node_modules/fill-range": { - "version": "7.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "to-regex-range": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/@jest/transform/node_modules/is-number": { - "version": "7.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.12.0" - } - }, - "node_modules/@jest/transform/node_modules/micromatch": { - "version": "4.0.5", - "dev": true, - "license": "MIT", - "dependencies": { - "braces": "^3.0.2", - "picomatch": "^2.3.1" - }, - "engines": { - "node": ">=8.6" - } - }, - "node_modules/@jest/transform/node_modules/slash": { - "version": "3.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/@jest/transform/node_modules/to-regex-range": { - "version": "5.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "is-number": "^7.0.0" - }, - "engines": { - "node": ">=8.0" - } - }, - "node_modules/@jest/types": { - "version": "26.6.2", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/istanbul-lib-coverage": "^2.0.0", - "@types/istanbul-reports": "^3.0.0", - "@types/node": "*", - "@types/yargs": "^15.0.0", - "chalk": "^4.0.0" - }, - "engines": { - "node": ">= 10.14.2" - } - }, - "node_modules/@jridgewell/gen-mapping": { - "version": "0.3.3", - "dev": true, - "license": "MIT", - "dependencies": { - "@jridgewell/set-array": "^1.0.1", - "@jridgewell/sourcemap-codec": "^1.4.10", - "@jridgewell/trace-mapping": "^0.3.9" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@jridgewell/resolve-uri": { - "version": "3.1.1", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@jridgewell/set-array": { - "version": "1.1.2", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@jridgewell/sourcemap-codec": { - "version": "1.4.15", - "dev": true, - "license": "MIT" - }, - "node_modules/@jridgewell/trace-mapping": { - "version": "0.3.19", - "dev": true, - "license": "MIT", - "dependencies": { - "@jridgewell/resolve-uri": "^3.1.0", - "@jridgewell/sourcemap-codec": "^1.4.14" - } - }, - "node_modules/@mrmlnc/readdir-enhanced": { - "version": "2.2.1", - "dev": true, - "license": "MIT", - "dependencies": { - "call-me-maybe": "^1.0.1", - "glob-to-regexp": "^0.3.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/@ngageoint/mage.service": { - "resolved": "../../service", - "link": true - }, - "node_modules/@nodelib/fs.stat": { - "version": "1.1.3", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 6" - } - }, - "node_modules/@sinonjs/commons": { - "version": "1.8.6", - "dev": true, - "license": "BSD-3-Clause", - "dependencies": { - "type-detect": "4.0.8" - } - }, - "node_modules/@sinonjs/fake-timers": { - "version": "6.0.1", - "dev": true, - "license": "BSD-3-Clause", - "dependencies": { - "@sinonjs/commons": "^1.7.0" - } - }, - "node_modules/@tootallnate/once": { - "version": "1.1.2", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 6" - } - }, - "node_modules/@types/babel__core": { - "version": "7.20.1", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/parser": "^7.20.7", - "@babel/types": "^7.20.7", - "@types/babel__generator": "*", - "@types/babel__template": "*", - "@types/babel__traverse": "*" - } - }, - "node_modules/@types/babel__generator": { - "version": "7.6.4", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/types": "^7.0.0" - } - }, - "node_modules/@types/babel__template": { - "version": "7.4.1", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/parser": "^7.1.0", - "@babel/types": "^7.0.0" - } - }, - "node_modules/@types/babel__traverse": { - "version": "7.20.1", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/types": "^7.20.7" - } - }, - "node_modules/@types/geojson": { - "version": "7946.0.10", - "license": "MIT" - }, - "node_modules/@types/glob": { - "version": "7.2.0", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/minimatch": "*", - "@types/node": "*" - } - }, - "node_modules/@types/graceful-fs": { - "version": "4.1.6", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/node": "*" - } - }, - "node_modules/@types/istanbul-lib-coverage": { - "version": "2.0.4", - "dev": true, - "license": "MIT" - }, - "node_modules/@types/istanbul-lib-report": { - "version": "3.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/istanbul-lib-coverage": "*" - } - }, - "node_modules/@types/istanbul-reports": { - "version": "3.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/istanbul-lib-report": "*" - } - }, - "node_modules/@types/jest": { - "version": "26.0.24", - "dev": true, - "license": "MIT", - "dependencies": { - "jest-diff": "^26.0.0", - "pretty-format": "^26.0.0" - } - }, - "node_modules/@types/minimatch": { - "version": "5.1.2", - "dev": true, - "license": "MIT" - }, - "node_modules/@types/minimist": { - "version": "1.2.2", - "dev": true, - "license": "MIT" - }, - "node_modules/@types/node": { - "version": "20.5.6", - "dev": true, - "license": "MIT" - }, - "node_modules/@types/normalize-package-data": { - "version": "2.4.1", - "dev": true, - "license": "MIT" - }, - "node_modules/@types/prettier": { - "version": "2.7.3", - "dev": true, - "license": "MIT" - }, - "node_modules/@types/stack-utils": { - "version": "2.0.1", - "dev": true, - "license": "MIT" - }, - "node_modules/@types/yargs": { - "version": "15.0.15", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/yargs-parser": "*" - } - }, - "node_modules/@types/yargs-parser": { - "version": "21.0.0", - "dev": true, - "license": "MIT" - }, - "node_modules/abab": { - "version": "2.0.6", - "dev": true, - "license": "BSD-3-Clause" - }, - "node_modules/acorn": { - "version": "8.10.0", - "dev": true, - "license": "MIT", - "bin": { - "acorn": "bin/acorn" - }, - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/acorn-globals": { - "version": "6.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "acorn": "^7.1.1", - "acorn-walk": "^7.1.1" - } - }, - "node_modules/acorn-globals/node_modules/acorn": { - "version": "7.4.1", - "dev": true, - "license": "MIT", - "bin": { - "acorn": "bin/acorn" - }, - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/acorn-walk": { - "version": "7.2.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/agent-base": { - "version": "6.0.2", - "dev": true, - "license": "MIT", - "dependencies": { - "debug": "4" - }, - "engines": { - "node": ">= 6.0.0" - } - }, - "node_modules/agent-base/node_modules/debug": { - "version": "4.3.4", - "dev": true, - "license": "MIT", - "dependencies": { - "ms": "2.1.2" - }, - "engines": { - "node": ">=6.0" - }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } - } - }, - "node_modules/agent-base/node_modules/ms": { - "version": "2.1.2", - "dev": true, - "license": "MIT" - }, - "node_modules/aggregate-error": { - "version": "3.1.0", - "dev": true, - "license": "MIT", - "dependencies": { - "clean-stack": "^2.0.0", - "indent-string": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/ansi-escapes": { - "version": "4.3.2", - "dev": true, - "license": "MIT", - "dependencies": { - "type-fest": "^0.21.3" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/ansi-regex": { - "version": "5.0.1", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/ansi-styles": { - "version": "4.3.0", - "dev": true, - "license": "MIT", - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/anymatch": { - "version": "3.1.3", - "dev": true, - "license": "ISC", - "dependencies": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/argparse": { - "version": "1.0.10", - "dev": true, - "license": "MIT", - "dependencies": { - "sprintf-js": "~1.0.2" - } - }, - "node_modules/arr-diff": { - "version": "4.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/arr-flatten": { - "version": "1.1.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/arr-union": { - "version": "3.1.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/array-buffer-byte-length": { - "version": "1.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.2", - "is-array-buffer": "^3.0.1" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/array-union": { - "version": "1.0.2", - "dev": true, - "license": "MIT", - "dependencies": { - "array-uniq": "^1.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/array-uniq": { - "version": "1.0.3", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/array-unique": { - "version": "0.3.2", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/arraybuffer.prototype.slice": { - "version": "1.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "array-buffer-byte-length": "^1.0.0", - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "get-intrinsic": "^1.2.1", - "is-array-buffer": "^3.0.2", - "is-shared-array-buffer": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/arrify": { - "version": "2.0.1", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/assign-symbols": { - "version": "1.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/asynckit": { - "version": "0.4.0", - "license": "MIT" - }, - "node_modules/atob": { - "version": "2.1.2", - "dev": true, - "license": "(MIT OR Apache-2.0)", - "bin": { - "atob": "bin/atob.js" - }, - "engines": { - "node": ">= 4.5.0" - } - }, - "node_modules/available-typed-arrays": { - "version": "1.0.5", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/axios": { - "version": "0.27.2", - "license": "MIT", - "dependencies": { - "follow-redirects": "^1.14.9", - "form-data": "^4.0.0" - } - }, - "node_modules/axios/node_modules/form-data": { - "version": "4.0.0", - "license": "MIT", - "dependencies": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.8", - "mime-types": "^2.1.12" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/babel-jest": { - "version": "26.6.3", - "dev": true, - "license": "MIT", - "dependencies": { - "@jest/transform": "^26.6.2", - "@jest/types": "^26.6.2", - "@types/babel__core": "^7.1.7", - "babel-plugin-istanbul": "^6.0.0", - "babel-preset-jest": "^26.6.2", - "chalk": "^4.0.0", - "graceful-fs": "^4.2.4", - "slash": "^3.0.0" - }, - "engines": { - "node": ">= 10.14.2" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" - } - }, - "node_modules/babel-jest/node_modules/slash": { - "version": "3.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/babel-plugin-istanbul": { - "version": "6.1.1", - "dev": true, - "license": "BSD-3-Clause", - "dependencies": { - "@babel/helper-plugin-utils": "^7.0.0", - "@istanbuljs/load-nyc-config": "^1.0.0", - "@istanbuljs/schema": "^0.1.2", - "istanbul-lib-instrument": "^5.0.4", - "test-exclude": "^6.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/babel-plugin-istanbul/node_modules/istanbul-lib-instrument": { - "version": "5.2.1", - "dev": true, - "license": "BSD-3-Clause", - "dependencies": { - "@babel/core": "^7.12.3", - "@babel/parser": "^7.14.7", - "@istanbuljs/schema": "^0.1.2", - "istanbul-lib-coverage": "^3.2.0", - "semver": "^6.3.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/babel-plugin-jest-hoist": { - "version": "26.6.2", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/template": "^7.3.3", - "@babel/types": "^7.3.3", - "@types/babel__core": "^7.0.0", - "@types/babel__traverse": "^7.0.6" - }, - "engines": { - "node": ">= 10.14.2" - } - }, - "node_modules/babel-preset-current-node-syntax": { - "version": "1.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/plugin-syntax-async-generators": "^7.8.4", - "@babel/plugin-syntax-bigint": "^7.8.3", - "@babel/plugin-syntax-class-properties": "^7.8.3", - "@babel/plugin-syntax-import-meta": "^7.8.3", - "@babel/plugin-syntax-json-strings": "^7.8.3", - "@babel/plugin-syntax-logical-assignment-operators": "^7.8.3", - "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", - "@babel/plugin-syntax-numeric-separator": "^7.8.3", - "@babel/plugin-syntax-object-rest-spread": "^7.8.3", - "@babel/plugin-syntax-optional-catch-binding": "^7.8.3", - "@babel/plugin-syntax-optional-chaining": "^7.8.3", - "@babel/plugin-syntax-top-level-await": "^7.8.3" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" - } - }, - "node_modules/babel-preset-jest": { - "version": "26.6.2", - "dev": true, - "license": "MIT", - "dependencies": { - "babel-plugin-jest-hoist": "^26.6.2", - "babel-preset-current-node-syntax": "^1.0.0" - }, - "engines": { - "node": ">= 10.14.2" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" - } - }, - "node_modules/balanced-match": { - "version": "1.0.2", - "dev": true, - "license": "MIT" - }, - "node_modules/base": { - "version": "0.11.2", - "dev": true, - "license": "MIT", - "dependencies": { - "cache-base": "^1.0.1", - "class-utils": "^0.3.5", - "component-emitter": "^1.2.1", - "define-property": "^1.0.0", - "isobject": "^3.0.1", - "mixin-deep": "^1.2.0", - "pascalcase": "^0.1.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/base/node_modules/define-property": { - "version": "1.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "is-descriptor": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/brace-expansion": { - "version": "1.1.11", - "dev": true, - "license": "MIT", - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "node_modules/braces": { - "version": "2.3.2", - "dev": true, - "license": "MIT", - "dependencies": { - "arr-flatten": "^1.1.0", - "array-unique": "^0.3.2", - "extend-shallow": "^2.0.1", - "fill-range": "^4.0.0", - "isobject": "^3.0.1", - "repeat-element": "^1.1.2", - "snapdragon": "^0.8.1", - "snapdragon-node": "^2.0.1", - "split-string": "^3.0.2", - "to-regex": "^3.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/braces/node_modules/extend-shallow": { - "version": "2.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "is-extendable": "^0.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/braces/node_modules/is-extendable": { - "version": "0.1.1", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/browser-process-hrtime": { - "version": "1.0.0", - "dev": true, - "license": "BSD-2-Clause" - }, - "node_modules/browserslist": { - "version": "4.21.10", - "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/browserslist" - }, - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], - "license": "MIT", - "dependencies": { - "caniuse-lite": "^1.0.30001517", - "electron-to-chromium": "^1.4.477", - "node-releases": "^2.0.13", - "update-browserslist-db": "^1.0.11" - }, - "bin": { - "browserslist": "cli.js" - }, - "engines": { - "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" - } - }, - "node_modules/bs-logger": { - "version": "0.2.6", - "dev": true, - "license": "MIT", - "dependencies": { - "fast-json-stable-stringify": "2.x" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/bser": { - "version": "2.1.1", - "dev": true, - "license": "Apache-2.0", - "dependencies": { - "node-int64": "^0.4.0" - } - }, - "node_modules/buffer-from": { - "version": "1.1.2", - "dev": true, - "license": "MIT" - }, - "node_modules/cache-base": { - "version": "1.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "collection-visit": "^1.0.0", - "component-emitter": "^1.2.1", - "get-value": "^2.0.6", - "has-value": "^1.0.0", - "isobject": "^3.0.1", - "set-value": "^2.0.0", - "to-object-path": "^0.3.0", - "union-value": "^1.0.0", - "unset-value": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/call-bind": { - "version": "1.0.2", - "dev": true, - "license": "MIT", - "dependencies": { - "function-bind": "^1.1.1", - "get-intrinsic": "^1.0.2" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/call-me-maybe": { - "version": "1.0.2", - "dev": true, - "license": "MIT" - }, - "node_modules/callsites": { - "version": "3.1.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "node_modules/camelcase": { - "version": "5.3.1", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "node_modules/camelcase-keys": { - "version": "6.2.2", - "dev": true, - "license": "MIT", - "dependencies": { - "camelcase": "^5.3.1", - "map-obj": "^4.0.0", - "quick-lru": "^4.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/caniuse-lite": { - "version": "1.0.30001523", - "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/caniuse-lite" - }, - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], - "license": "CC-BY-4.0" - }, - "node_modules/capture-exit": { - "version": "2.0.0", - "dev": true, - "license": "ISC", - "dependencies": { - "rsvp": "^4.8.4" - }, - "engines": { - "node": "6.* || 8.* || >= 10.*" - } - }, - "node_modules/chalk": { - "version": "4.1.2", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/char-regex": { - "version": "1.0.2", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=10" - } - }, - "node_modules/ci-info": { - "version": "2.0.0", - "dev": true, - "license": "MIT" - }, - "node_modules/cjs-module-lexer": { - "version": "0.6.0", - "dev": true, - "license": "MIT" - }, - "node_modules/class-utils": { - "version": "0.3.6", - "dev": true, - "license": "MIT", - "dependencies": { - "arr-union": "^3.1.0", - "define-property": "^0.2.5", - "isobject": "^3.0.0", - "static-extend": "^0.1.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/class-utils/node_modules/define-property": { - "version": "0.2.5", - "dev": true, - "license": "MIT", - "dependencies": { - "is-descriptor": "^0.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/class-utils/node_modules/is-accessor-descriptor": { - "version": "0.1.6", - "dev": true, - "license": "MIT", - "dependencies": { - "kind-of": "^3.0.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/class-utils/node_modules/is-accessor-descriptor/node_modules/kind-of": { - "version": "3.2.2", - "dev": true, - "license": "MIT", - "dependencies": { - "is-buffer": "^1.1.5" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/class-utils/node_modules/is-data-descriptor": { - "version": "0.1.4", - "dev": true, - "license": "MIT", - "dependencies": { - "kind-of": "^3.0.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/class-utils/node_modules/is-data-descriptor/node_modules/kind-of": { - "version": "3.2.2", - "dev": true, - "license": "MIT", - "dependencies": { - "is-buffer": "^1.1.5" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/class-utils/node_modules/is-descriptor": { - "version": "0.1.6", - "dev": true, - "license": "MIT", - "dependencies": { - "is-accessor-descriptor": "^0.1.6", - "is-data-descriptor": "^0.1.4", - "kind-of": "^5.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/class-utils/node_modules/kind-of": { - "version": "5.1.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/clean-stack": { - "version": "2.2.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "node_modules/cliui": { - "version": "6.0.0", - "dev": true, - "license": "ISC", - "dependencies": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", - "wrap-ansi": "^6.2.0" - } - }, - "node_modules/co": { - "version": "4.6.0", - "dev": true, - "license": "MIT", - "engines": { - "iojs": ">= 1.0.0", - "node": ">= 0.12.0" - } - }, - "node_modules/collect-v8-coverage": { - "version": "1.0.2", - "dev": true, - "license": "MIT" - }, - "node_modules/collection-visit": { - "version": "1.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "map-visit": "^1.0.0", - "object-visit": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/color-convert": { - "version": "2.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/color-name": { - "version": "1.1.4", - "dev": true, - "license": "MIT" - }, - "node_modules/combined-stream": { - "version": "1.0.8", - "license": "MIT", - "dependencies": { - "delayed-stream": "~1.0.0" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/component-emitter": { - "version": "1.3.0", - "dev": true, - "license": "MIT" - }, - "node_modules/concat-map": { - "version": "0.0.1", - "dev": true, - "license": "MIT" - }, - "node_modules/convert-source-map": { - "version": "1.9.0", - "dev": true, - "license": "MIT" - }, - "node_modules/copy-descriptor": { - "version": "0.1.1", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/cp-file": { - "version": "7.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "graceful-fs": "^4.1.2", - "make-dir": "^3.0.0", - "nested-error-stacks": "^2.0.0", - "p-event": "^4.1.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/cpy": { - "version": "8.1.2", - "dev": true, - "license": "MIT", - "dependencies": { - "arrify": "^2.0.1", - "cp-file": "^7.0.0", - "globby": "^9.2.0", - "has-glob": "^1.0.0", - "junk": "^3.1.0", - "nested-error-stacks": "^2.1.0", - "p-all": "^2.1.0", - "p-filter": "^2.1.0", - "p-map": "^3.0.0" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/cpy-cli": { - "version": "3.1.1", - "dev": true, - "license": "MIT", - "dependencies": { - "cpy": "^8.0.0", - "meow": "^6.1.1" - }, - "bin": { - "cpy": "cli.js" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/cross-spawn": { - "version": "7.0.3", - "dev": true, - "license": "MIT", - "dependencies": { - "path-key": "^3.1.0", - "shebang-command": "^2.0.0", - "which": "^2.0.1" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/cssom": { - "version": "0.4.4", - "dev": true, - "license": "MIT" - }, - "node_modules/cssstyle": { - "version": "2.3.0", - "dev": true, - "license": "MIT", - "dependencies": { - "cssom": "~0.3.6" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/cssstyle/node_modules/cssom": { - "version": "0.3.8", - "dev": true, - "license": "MIT" - }, - "node_modules/data-urls": { - "version": "2.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "abab": "^2.0.3", - "whatwg-mimetype": "^2.3.0", - "whatwg-url": "^8.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/decamelize": { - "version": "1.2.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/decamelize-keys": { - "version": "1.1.1", - "dev": true, - "license": "MIT", - "dependencies": { - "decamelize": "^1.1.0", - "map-obj": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/decamelize-keys/node_modules/map-obj": { - "version": "1.0.1", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/decimal.js": { - "version": "10.4.3", - "dev": true, - "license": "MIT" - }, - "node_modules/decode-uri-component": { - "version": "0.2.2", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10" - } - }, - "node_modules/deepmerge": { - "version": "4.3.1", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/define-properties": { - "version": "1.2.0", - "dev": true, - "license": "MIT", - "dependencies": { - "has-property-descriptors": "^1.0.0", - "object-keys": "^1.1.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/define-property": { - "version": "2.0.2", - "dev": true, - "license": "MIT", - "dependencies": { - "is-descriptor": "^1.0.2", - "isobject": "^3.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/delayed-stream": { - "version": "1.0.0", - "license": "MIT", - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/detect-newline": { - "version": "3.1.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/diff-sequences": { - "version": "26.6.2", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 10.14.2" - } - }, - "node_modules/dir-glob": { - "version": "2.2.2", - "dev": true, - "license": "MIT", - "dependencies": { - "path-type": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/domexception": { - "version": "2.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "webidl-conversions": "^5.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/domexception/node_modules/webidl-conversions": { - "version": "5.0.0", - "dev": true, - "license": "BSD-2-Clause", - "engines": { - "node": ">=8" - } - }, - "node_modules/electron-to-chromium": { - "version": "1.4.502", - "dev": true, - "license": "ISC" - }, - "node_modules/emittery": { - "version": "0.7.2", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sindresorhus/emittery?sponsor=1" - } - }, - "node_modules/emoji-regex": { - "version": "8.0.0", - "dev": true, - "license": "MIT" - }, - "node_modules/end-of-stream": { - "version": "1.4.4", - "dev": true, - "license": "MIT", - "dependencies": { - "once": "^1.4.0" - } - }, - "node_modules/error-ex": { - "version": "1.3.2", - "dev": true, - "license": "MIT", - "dependencies": { - "is-arrayish": "^0.2.1" - } - }, - "node_modules/es-abstract": { - "version": "1.22.1", - "dev": true, - "license": "MIT", - "dependencies": { - "array-buffer-byte-length": "^1.0.0", - "arraybuffer.prototype.slice": "^1.0.1", - "available-typed-arrays": "^1.0.5", - "call-bind": "^1.0.2", - "es-set-tostringtag": "^2.0.1", - "es-to-primitive": "^1.2.1", - "function.prototype.name": "^1.1.5", - "get-intrinsic": "^1.2.1", - "get-symbol-description": "^1.0.0", - "globalthis": "^1.0.3", - "gopd": "^1.0.1", - "has": "^1.0.3", - "has-property-descriptors": "^1.0.0", - "has-proto": "^1.0.1", - "has-symbols": "^1.0.3", - "internal-slot": "^1.0.5", - "is-array-buffer": "^3.0.2", - "is-callable": "^1.2.7", - "is-negative-zero": "^2.0.2", - "is-regex": "^1.1.4", - "is-shared-array-buffer": "^1.0.2", - "is-string": "^1.0.7", - "is-typed-array": "^1.1.10", - "is-weakref": "^1.0.2", - "object-inspect": "^1.12.3", - "object-keys": "^1.1.1", - "object.assign": "^4.1.4", - "regexp.prototype.flags": "^1.5.0", - "safe-array-concat": "^1.0.0", - "safe-regex-test": "^1.0.0", - "string.prototype.trim": "^1.2.7", - "string.prototype.trimend": "^1.0.6", - "string.prototype.trimstart": "^1.0.6", - "typed-array-buffer": "^1.0.0", - "typed-array-byte-length": "^1.0.0", - "typed-array-byte-offset": "^1.0.0", - "typed-array-length": "^1.0.4", - "unbox-primitive": "^1.0.2", - "which-typed-array": "^1.1.10" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/es-set-tostringtag": { - "version": "2.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "get-intrinsic": "^1.1.3", - "has": "^1.0.3", - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/es-to-primitive": { - "version": "1.2.1", - "dev": true, - "license": "MIT", - "dependencies": { - "is-callable": "^1.1.4", - "is-date-object": "^1.0.1", - "is-symbol": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/escalade": { - "version": "3.1.1", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "node_modules/escape-string-regexp": { - "version": "2.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/escodegen": { - "version": "2.1.0", - "dev": true, - "license": "BSD-2-Clause", - "dependencies": { - "esprima": "^4.0.1", - "estraverse": "^5.2.0", - "esutils": "^2.0.2" - }, - "bin": { - "escodegen": "bin/escodegen.js", - "esgenerate": "bin/esgenerate.js" - }, - "engines": { - "node": ">=6.0" - }, - "optionalDependencies": { - "source-map": "~0.6.1" - } - }, - "node_modules/esprima": { - "version": "4.0.1", - "dev": true, - "license": "BSD-2-Clause", - "bin": { - "esparse": "bin/esparse.js", - "esvalidate": "bin/esvalidate.js" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/estraverse": { - "version": "5.3.0", - "dev": true, - "license": "BSD-2-Clause", - "engines": { - "node": ">=4.0" - } - }, - "node_modules/esutils": { - "version": "2.0.3", - "dev": true, - "license": "BSD-2-Clause", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/exec-sh": { - "version": "0.3.6", - "dev": true, - "license": "MIT" - }, - "node_modules/execa": { - "version": "4.1.0", - "dev": true, - "license": "MIT", - "dependencies": { - "cross-spawn": "^7.0.0", - "get-stream": "^5.0.0", - "human-signals": "^1.1.1", - "is-stream": "^2.0.0", - "merge-stream": "^2.0.0", - "npm-run-path": "^4.0.0", - "onetime": "^5.1.0", - "signal-exit": "^3.0.2", - "strip-final-newline": "^2.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sindresorhus/execa?sponsor=1" - } - }, - "node_modules/exit": { - "version": "0.1.2", - "dev": true, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/expand-brackets": { - "version": "2.1.4", - "dev": true, - "license": "MIT", - "dependencies": { - "debug": "^2.3.3", - "define-property": "^0.2.5", - "extend-shallow": "^2.0.1", - "posix-character-classes": "^0.1.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/expand-brackets/node_modules/debug": { - "version": "2.6.9", - "dev": true, - "license": "MIT", - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/expand-brackets/node_modules/define-property": { - "version": "0.2.5", - "dev": true, - "license": "MIT", - "dependencies": { - "is-descriptor": "^0.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/expand-brackets/node_modules/extend-shallow": { - "version": "2.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "is-extendable": "^0.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/expand-brackets/node_modules/is-accessor-descriptor": { - "version": "0.1.6", - "dev": true, - "license": "MIT", - "dependencies": { - "kind-of": "^3.0.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/expand-brackets/node_modules/is-accessor-descriptor/node_modules/kind-of": { - "version": "3.2.2", - "dev": true, - "license": "MIT", - "dependencies": { - "is-buffer": "^1.1.5" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/expand-brackets/node_modules/is-data-descriptor": { - "version": "0.1.4", - "dev": true, - "license": "MIT", - "dependencies": { - "kind-of": "^3.0.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/expand-brackets/node_modules/is-data-descriptor/node_modules/kind-of": { - "version": "3.2.2", - "dev": true, - "license": "MIT", - "dependencies": { - "is-buffer": "^1.1.5" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/expand-brackets/node_modules/is-descriptor": { - "version": "0.1.6", - "dev": true, - "license": "MIT", - "dependencies": { - "is-accessor-descriptor": "^0.1.6", - "is-data-descriptor": "^0.1.4", - "kind-of": "^5.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/expand-brackets/node_modules/is-extendable": { - "version": "0.1.1", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/expand-brackets/node_modules/kind-of": { - "version": "5.1.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/expect": { - "version": "26.6.2", - "dev": true, - "license": "MIT", - "dependencies": { - "@jest/types": "^26.6.2", - "ansi-styles": "^4.0.0", - "jest-get-type": "^26.3.0", - "jest-matcher-utils": "^26.6.2", - "jest-message-util": "^26.6.2", - "jest-regex-util": "^26.0.0" - }, - "engines": { - "node": ">= 10.14.2" - } - }, - "node_modules/extend-shallow": { - "version": "3.0.2", - "dev": true, - "license": "MIT", - "dependencies": { - "assign-symbols": "^1.0.0", - "is-extendable": "^1.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/extglob": { - "version": "2.0.4", - "dev": true, - "license": "MIT", - "dependencies": { - "array-unique": "^0.3.2", - "define-property": "^1.0.0", - "expand-brackets": "^2.1.4", - "extend-shallow": "^2.0.1", - "fragment-cache": "^0.2.1", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/extglob/node_modules/define-property": { - "version": "1.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "is-descriptor": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/extglob/node_modules/extend-shallow": { - "version": "2.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "is-extendable": "^0.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/extglob/node_modules/is-extendable": { - "version": "0.1.1", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/fast-glob": { - "version": "2.2.7", - "dev": true, - "license": "MIT", - "dependencies": { - "@mrmlnc/readdir-enhanced": "^2.2.1", - "@nodelib/fs.stat": "^1.1.2", - "glob-parent": "^3.1.0", - "is-glob": "^4.0.0", - "merge2": "^1.2.3", - "micromatch": "^3.1.10" - }, - "engines": { - "node": ">=4.0.0" - } - }, - "node_modules/fast-json-stable-stringify": { - "version": "2.1.0", - "dev": true, - "license": "MIT" - }, - "node_modules/fb-watchman": { - "version": "2.0.2", - "dev": true, - "license": "Apache-2.0", - "dependencies": { - "bser": "2.1.1" - } - }, - "node_modules/fill-range": { - "version": "4.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "extend-shallow": "^2.0.1", - "is-number": "^3.0.0", - "repeat-string": "^1.6.1", - "to-regex-range": "^2.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/fill-range/node_modules/extend-shallow": { - "version": "2.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "is-extendable": "^0.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/fill-range/node_modules/is-extendable": { - "version": "0.1.1", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/find-up": { - "version": "4.1.0", - "dev": true, - "license": "MIT", - "dependencies": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/follow-redirects": { - "version": "1.15.3", - "funding": [ - { - "type": "individual", - "url": "https://github.com/sponsors/RubenVerborgh" - } - ], - "license": "MIT", - "engines": { - "node": ">=4.0" - }, - "peerDependenciesMeta": { - "debug": { - "optional": true - } - } - }, - "node_modules/for-each": { - "version": "0.3.3", - "dev": true, - "license": "MIT", - "dependencies": { - "is-callable": "^1.1.3" - } - }, - "node_modules/for-in": { - "version": "1.0.2", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/form-data": { - "version": "3.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.8", - "mime-types": "^2.1.12" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/fragment-cache": { - "version": "0.2.1", - "dev": true, - "license": "MIT", - "dependencies": { - "map-cache": "^0.2.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/fs.realpath": { - "version": "1.0.0", - "dev": true, - "license": "ISC" - }, - "node_modules/fsevents": { - "version": "2.3.3", - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": "^8.16.0 || ^10.6.0 || >=11.0.0" - } - }, - "node_modules/function-bind": { - "version": "1.1.1", - "dev": true, - "license": "MIT" - }, - "node_modules/function.prototype.name": { - "version": "1.1.5", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3", - "es-abstract": "^1.19.0", - "functions-have-names": "^1.2.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/functions-have-names": { - "version": "1.2.3", - "dev": true, - "license": "MIT", - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/gensync": { - "version": "1.0.0-beta.2", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/get-caller-file": { - "version": "2.0.5", - "dev": true, - "license": "ISC", - "engines": { - "node": "6.* || 8.* || >= 10.*" - } - }, - "node_modules/get-intrinsic": { - "version": "1.2.1", - "dev": true, - "license": "MIT", - "dependencies": { - "function-bind": "^1.1.1", - "has": "^1.0.3", - "has-proto": "^1.0.1", - "has-symbols": "^1.0.3" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/get-package-type": { - "version": "0.1.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8.0.0" - } - }, - "node_modules/get-stream": { - "version": "5.2.0", - "dev": true, - "license": "MIT", - "dependencies": { - "pump": "^3.0.0" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/get-symbol-description": { - "version": "1.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.1.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/get-value": { - "version": "2.0.6", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/glob": { - "version": "7.2.3", - "dev": true, - "license": "ISC", - "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - }, - "engines": { - "node": "*" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/glob-parent": { - "version": "3.1.0", - "dev": true, - "license": "ISC", - "dependencies": { - "is-glob": "^3.1.0", - "path-dirname": "^1.0.0" - } - }, - "node_modules/glob-parent/node_modules/is-glob": { - "version": "3.1.0", - "dev": true, - "license": "MIT", - "dependencies": { - "is-extglob": "^2.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/glob-to-regexp": { - "version": "0.3.0", - "dev": true, - "license": "BSD" - }, - "node_modules/globals": { - "version": "11.12.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=4" - } - }, - "node_modules/globalthis": { - "version": "1.0.3", - "dev": true, - "license": "MIT", - "dependencies": { - "define-properties": "^1.1.3" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/globby": { - "version": "9.2.0", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/glob": "^7.1.1", - "array-union": "^1.0.2", - "dir-glob": "^2.2.2", - "fast-glob": "^2.2.6", - "glob": "^7.1.3", - "ignore": "^4.0.3", - "pify": "^4.0.1", - "slash": "^2.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/gopd": { - "version": "1.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "get-intrinsic": "^1.1.3" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/graceful-fs": { - "version": "4.2.11", - "dev": true, - "license": "ISC" - }, - "node_modules/growly": { - "version": "1.3.0", - "dev": true, - "license": "MIT", - "optional": true - }, - "node_modules/hard-rejection": { - "version": "2.1.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "node_modules/has": { - "version": "1.0.3", - "dev": true, - "license": "MIT", - "dependencies": { - "function-bind": "^1.1.1" - }, - "engines": { - "node": ">= 0.4.0" - } - }, - "node_modules/has-bigints": { - "version": "1.0.2", - "dev": true, - "license": "MIT", - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/has-flag": { - "version": "4.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/has-glob": { - "version": "1.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "is-glob": "^3.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/has-glob/node_modules/is-glob": { - "version": "3.1.0", - "dev": true, - "license": "MIT", - "dependencies": { - "is-extglob": "^2.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/has-property-descriptors": { - "version": "1.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "get-intrinsic": "^1.1.1" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/has-proto": { - "version": "1.0.1", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/has-symbols": { - "version": "1.0.3", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/has-tostringtag": { - "version": "1.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "has-symbols": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/has-value": { - "version": "1.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "get-value": "^2.0.6", - "has-values": "^1.0.0", - "isobject": "^3.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/has-values": { - "version": "1.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "is-number": "^3.0.0", - "kind-of": "^4.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/has-values/node_modules/kind-of": { - "version": "4.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "is-buffer": "^1.1.5" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/hosted-git-info": { - "version": "2.8.9", - "dev": true, - "license": "ISC" - }, - "node_modules/html-encoding-sniffer": { - "version": "2.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "whatwg-encoding": "^1.0.5" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/html-escaper": { - "version": "2.0.2", - "dev": true, - "license": "MIT" - }, - "node_modules/http-proxy-agent": { - "version": "4.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "@tootallnate/once": "1", - "agent-base": "6", - "debug": "4" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/http-proxy-agent/node_modules/debug": { - "version": "4.3.4", - "dev": true, - "license": "MIT", - "dependencies": { - "ms": "2.1.2" - }, - "engines": { - "node": ">=6.0" - }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } - } - }, - "node_modules/http-proxy-agent/node_modules/ms": { - "version": "2.1.2", - "dev": true, - "license": "MIT" - }, - "node_modules/https-proxy-agent": { - "version": "5.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "agent-base": "6", - "debug": "4" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/https-proxy-agent/node_modules/debug": { - "version": "4.3.4", - "dev": true, - "license": "MIT", - "dependencies": { - "ms": "2.1.2" - }, - "engines": { - "node": ">=6.0" - }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } - } - }, - "node_modules/https-proxy-agent/node_modules/ms": { - "version": "2.1.2", - "dev": true, - "license": "MIT" - }, - "node_modules/human-signals": { - "version": "1.1.1", - "dev": true, - "license": "Apache-2.0", - "engines": { - "node": ">=8.12.0" - } - }, - "node_modules/iconv-lite": { - "version": "0.4.24", - "dev": true, - "license": "MIT", - "dependencies": { - "safer-buffer": ">= 2.1.2 < 3" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/ignore": { - "version": "4.0.6", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 4" - } - }, - "node_modules/import-local": { - "version": "3.1.0", - "dev": true, - "license": "MIT", - "dependencies": { - "pkg-dir": "^4.2.0", - "resolve-cwd": "^3.0.0" - }, - "bin": { - "import-local-fixture": "fixtures/cli.js" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/imurmurhash": { - "version": "0.1.4", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.8.19" - } - }, - "node_modules/indent-string": { - "version": "4.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/inflight": { - "version": "1.0.6", - "dev": true, - "license": "ISC", - "dependencies": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "node_modules/inherits": { - "version": "2.0.4", - "dev": true, - "license": "ISC" - }, - "node_modules/internal-slot": { - "version": "1.0.5", - "dev": true, - "license": "MIT", - "dependencies": { - "get-intrinsic": "^1.2.0", - "has": "^1.0.3", - "side-channel": "^1.0.4" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/is-accessor-descriptor": { - "version": "1.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "kind-of": "^6.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-array-buffer": { - "version": "3.0.2", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.2.0", - "is-typed-array": "^1.1.10" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-arrayish": { - "version": "0.2.1", - "dev": true, - "license": "MIT" - }, - "node_modules/is-bigint": { - "version": "1.0.4", - "dev": true, - "license": "MIT", - "dependencies": { - "has-bigints": "^1.0.1" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-boolean-object": { - "version": "1.1.2", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-buffer": { - "version": "1.1.6", - "dev": true, - "license": "MIT" - }, - "node_modules/is-callable": { - "version": "1.2.7", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-ci": { - "version": "2.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "ci-info": "^2.0.0" - }, - "bin": { - "is-ci": "bin.js" - } - }, - "node_modules/is-core-module": { - "version": "2.13.0", - "dev": true, - "license": "MIT", - "dependencies": { - "has": "^1.0.3" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-data-descriptor": { - "version": "1.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "kind-of": "^6.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-date-object": { - "version": "1.0.5", - "dev": true, - "license": "MIT", - "dependencies": { - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-descriptor": { - "version": "1.0.2", - "dev": true, - "license": "MIT", - "dependencies": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-docker": { - "version": "2.2.1", - "dev": true, - "license": "MIT", - "optional": true, - "bin": { - "is-docker": "cli.js" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/is-extendable": { - "version": "1.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "is-plain-object": "^2.0.4" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-extglob": { - "version": "2.1.1", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-fullwidth-code-point": { - "version": "3.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/is-generator-fn": { - "version": "2.1.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "node_modules/is-glob": { - "version": "4.0.3", - "dev": true, - "license": "MIT", - "dependencies": { - "is-extglob": "^2.1.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-negative-zero": { - "version": "2.0.2", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-number": { - "version": "3.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "kind-of": "^3.0.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-number-object": { - "version": "1.0.7", - "dev": true, - "license": "MIT", - "dependencies": { - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-number/node_modules/kind-of": { - "version": "3.2.2", - "dev": true, - "license": "MIT", - "dependencies": { - "is-buffer": "^1.1.5" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-plain-obj": { - "version": "1.1.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-plain-object": { - "version": "2.0.4", - "dev": true, - "license": "MIT", - "dependencies": { - "isobject": "^3.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-potential-custom-element-name": { - "version": "1.0.1", - "dev": true, - "license": "MIT" - }, - "node_modules/is-regex": { - "version": "1.1.4", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-shared-array-buffer": { - "version": "1.0.2", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.2" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-stream": { - "version": "2.0.1", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/is-string": { - "version": "1.0.7", - "dev": true, - "license": "MIT", - "dependencies": { - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-symbol": { - "version": "1.0.4", - "dev": true, - "license": "MIT", - "dependencies": { - "has-symbols": "^1.0.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-typed-array": { - "version": "1.1.12", - "dev": true, - "license": "MIT", - "dependencies": { - "which-typed-array": "^1.1.11" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-typedarray": { - "version": "1.0.0", - "dev": true, - "license": "MIT" - }, - "node_modules/is-weakref": { - "version": "1.0.2", - "dev": true, - "license": "MIT", - "dependencies": { - "call-bind": "^1.0.2" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-windows": { - "version": "1.0.2", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-wsl": { - "version": "2.2.0", - "dev": true, - "license": "MIT", - "optional": true, - "dependencies": { - "is-docker": "^2.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/isarray": { - "version": "2.0.5", - "dev": true, - "license": "MIT" - }, - "node_modules/isexe": { - "version": "2.0.0", - "dev": true, - "license": "ISC" - }, - "node_modules/isobject": { - "version": "3.0.1", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/istanbul-lib-coverage": { - "version": "3.2.0", - "dev": true, - "license": "BSD-3-Clause", - "engines": { - "node": ">=8" - } - }, - "node_modules/istanbul-lib-instrument": { - "version": "4.0.3", - "dev": true, - "license": "BSD-3-Clause", - "dependencies": { - "@babel/core": "^7.7.5", - "@istanbuljs/schema": "^0.1.2", - "istanbul-lib-coverage": "^3.0.0", - "semver": "^6.3.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/istanbul-lib-report": { - "version": "3.0.1", - "dev": true, - "license": "BSD-3-Clause", - "dependencies": { - "istanbul-lib-coverage": "^3.0.0", - "make-dir": "^4.0.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/istanbul-lib-report/node_modules/lru-cache": { - "version": "6.0.0", - "dev": true, - "license": "ISC", - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/istanbul-lib-report/node_modules/make-dir": { - "version": "4.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "semver": "^7.5.3" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/istanbul-lib-report/node_modules/semver": { - "version": "7.5.4", - "dev": true, - "license": "ISC", - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/istanbul-lib-report/node_modules/yallist": { - "version": "4.0.0", - "dev": true, - "license": "ISC" - }, - "node_modules/istanbul-lib-source-maps": { - "version": "4.0.1", - "dev": true, - "license": "BSD-3-Clause", - "dependencies": { - "debug": "^4.1.1", - "istanbul-lib-coverage": "^3.0.0", - "source-map": "^0.6.1" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/istanbul-lib-source-maps/node_modules/debug": { - "version": "4.3.4", - "dev": true, - "license": "MIT", - "dependencies": { - "ms": "2.1.2" - }, - "engines": { - "node": ">=6.0" - }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } - } - }, - "node_modules/istanbul-lib-source-maps/node_modules/ms": { - "version": "2.1.2", - "dev": true, - "license": "MIT" - }, - "node_modules/istanbul-reports": { - "version": "3.1.6", - "dev": true, - "license": "BSD-3-Clause", - "dependencies": { - "html-escaper": "^2.0.0", - "istanbul-lib-report": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/jest": { - "version": "26.6.3", - "dev": true, - "license": "MIT", - "dependencies": { - "@jest/core": "^26.6.3", - "import-local": "^3.0.2", - "jest-cli": "^26.6.3" - }, - "bin": { - "jest": "bin/jest.js" - }, - "engines": { - "node": ">= 10.14.2" - } - }, - "node_modules/jest-changed-files": { - "version": "26.6.2", - "dev": true, - "license": "MIT", - "dependencies": { - "@jest/types": "^26.6.2", - "execa": "^4.0.0", - "throat": "^5.0.0" - }, - "engines": { - "node": ">= 10.14.2" - } - }, - "node_modules/jest-cli": { - "version": "26.6.3", - "dev": true, - "license": "MIT", - "dependencies": { - "@jest/core": "^26.6.3", - "@jest/test-result": "^26.6.2", - "@jest/types": "^26.6.2", - "chalk": "^4.0.0", - "exit": "^0.1.2", - "graceful-fs": "^4.2.4", - "import-local": "^3.0.2", - "is-ci": "^2.0.0", - "jest-config": "^26.6.3", - "jest-util": "^26.6.2", - "jest-validate": "^26.6.2", - "prompts": "^2.0.1", - "yargs": "^15.4.1" - }, - "bin": { - "jest": "bin/jest.js" - }, - "engines": { - "node": ">= 10.14.2" - } - }, - "node_modules/jest-config": { - "version": "26.6.3", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/core": "^7.1.0", - "@jest/test-sequencer": "^26.6.3", - "@jest/types": "^26.6.2", - "babel-jest": "^26.6.3", - "chalk": "^4.0.0", - "deepmerge": "^4.2.2", - "glob": "^7.1.1", - "graceful-fs": "^4.2.4", - "jest-environment-jsdom": "^26.6.2", - "jest-environment-node": "^26.6.2", - "jest-get-type": "^26.3.0", - "jest-jasmine2": "^26.6.3", - "jest-regex-util": "^26.0.0", - "jest-resolve": "^26.6.2", - "jest-util": "^26.6.2", - "jest-validate": "^26.6.2", - "micromatch": "^4.0.2", - "pretty-format": "^26.6.2" - }, - "engines": { - "node": ">= 10.14.2" - }, - "peerDependencies": { - "ts-node": ">=9.0.0" - }, - "peerDependenciesMeta": { - "ts-node": { - "optional": true - } - } - }, - "node_modules/jest-config/node_modules/braces": { - "version": "3.0.2", - "dev": true, - "license": "MIT", - "dependencies": { - "fill-range": "^7.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/jest-config/node_modules/fill-range": { - "version": "7.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "to-regex-range": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/jest-config/node_modules/is-number": { - "version": "7.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.12.0" - } - }, - "node_modules/jest-config/node_modules/micromatch": { - "version": "4.0.5", - "dev": true, - "license": "MIT", - "dependencies": { - "braces": "^3.0.2", - "picomatch": "^2.3.1" - }, - "engines": { - "node": ">=8.6" - } - }, - "node_modules/jest-config/node_modules/to-regex-range": { - "version": "5.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "is-number": "^7.0.0" - }, - "engines": { - "node": ">=8.0" - } - }, - "node_modules/jest-diff": { - "version": "26.6.2", - "dev": true, - "license": "MIT", - "dependencies": { - "chalk": "^4.0.0", - "diff-sequences": "^26.6.2", - "jest-get-type": "^26.3.0", - "pretty-format": "^26.6.2" - }, - "engines": { - "node": ">= 10.14.2" - } - }, - "node_modules/jest-docblock": { - "version": "26.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "detect-newline": "^3.0.0" - }, - "engines": { - "node": ">= 10.14.2" - } - }, - "node_modules/jest-each": { - "version": "26.6.2", - "dev": true, - "license": "MIT", - "dependencies": { - "@jest/types": "^26.6.2", - "chalk": "^4.0.0", - "jest-get-type": "^26.3.0", - "jest-util": "^26.6.2", - "pretty-format": "^26.6.2" - }, - "engines": { - "node": ">= 10.14.2" - } - }, - "node_modules/jest-environment-jsdom": { - "version": "26.6.2", - "dev": true, - "license": "MIT", - "dependencies": { - "@jest/environment": "^26.6.2", - "@jest/fake-timers": "^26.6.2", - "@jest/types": "^26.6.2", - "@types/node": "*", - "jest-mock": "^26.6.2", - "jest-util": "^26.6.2", - "jsdom": "^16.4.0" - }, - "engines": { - "node": ">= 10.14.2" - } - }, - "node_modules/jest-environment-node": { - "version": "26.6.2", - "dev": true, - "license": "MIT", - "dependencies": { - "@jest/environment": "^26.6.2", - "@jest/fake-timers": "^26.6.2", - "@jest/types": "^26.6.2", - "@types/node": "*", - "jest-mock": "^26.6.2", - "jest-util": "^26.6.2" - }, - "engines": { - "node": ">= 10.14.2" - } - }, - "node_modules/jest-get-type": { - "version": "26.3.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 10.14.2" - } - }, - "node_modules/jest-haste-map": { - "version": "26.6.2", - "dev": true, - "license": "MIT", - "dependencies": { - "@jest/types": "^26.6.2", - "@types/graceful-fs": "^4.1.2", - "@types/node": "*", - "anymatch": "^3.0.3", - "fb-watchman": "^2.0.0", - "graceful-fs": "^4.2.4", - "jest-regex-util": "^26.0.0", - "jest-serializer": "^26.6.2", - "jest-util": "^26.6.2", - "jest-worker": "^26.6.2", - "micromatch": "^4.0.2", - "sane": "^4.0.3", - "walker": "^1.0.7" - }, - "engines": { - "node": ">= 10.14.2" - }, - "optionalDependencies": { - "fsevents": "^2.1.2" - } - }, - "node_modules/jest-haste-map/node_modules/braces": { - "version": "3.0.2", - "dev": true, - "license": "MIT", - "dependencies": { - "fill-range": "^7.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/jest-haste-map/node_modules/fill-range": { - "version": "7.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "to-regex-range": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/jest-haste-map/node_modules/is-number": { - "version": "7.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.12.0" - } - }, - "node_modules/jest-haste-map/node_modules/micromatch": { - "version": "4.0.5", - "dev": true, - "license": "MIT", - "dependencies": { - "braces": "^3.0.2", - "picomatch": "^2.3.1" - }, - "engines": { - "node": ">=8.6" - } - }, - "node_modules/jest-haste-map/node_modules/to-regex-range": { - "version": "5.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "is-number": "^7.0.0" - }, - "engines": { - "node": ">=8.0" - } - }, - "node_modules/jest-jasmine2": { - "version": "26.6.3", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/traverse": "^7.1.0", - "@jest/environment": "^26.6.2", - "@jest/source-map": "^26.6.2", - "@jest/test-result": "^26.6.2", - "@jest/types": "^26.6.2", - "@types/node": "*", - "chalk": "^4.0.0", - "co": "^4.6.0", - "expect": "^26.6.2", - "is-generator-fn": "^2.0.0", - "jest-each": "^26.6.2", - "jest-matcher-utils": "^26.6.2", - "jest-message-util": "^26.6.2", - "jest-runtime": "^26.6.3", - "jest-snapshot": "^26.6.2", - "jest-util": "^26.6.2", - "pretty-format": "^26.6.2", - "throat": "^5.0.0" - }, - "engines": { - "node": ">= 10.14.2" - } - }, - "node_modules/jest-leak-detector": { - "version": "26.6.2", - "dev": true, - "license": "MIT", - "dependencies": { - "jest-get-type": "^26.3.0", - "pretty-format": "^26.6.2" - }, - "engines": { - "node": ">= 10.14.2" - } - }, - "node_modules/jest-matcher-utils": { - "version": "26.6.2", - "dev": true, - "license": "MIT", - "dependencies": { - "chalk": "^4.0.0", - "jest-diff": "^26.6.2", - "jest-get-type": "^26.3.0", - "pretty-format": "^26.6.2" - }, - "engines": { - "node": ">= 10.14.2" - } - }, - "node_modules/jest-message-util": { - "version": "26.6.2", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/code-frame": "^7.0.0", - "@jest/types": "^26.6.2", - "@types/stack-utils": "^2.0.0", - "chalk": "^4.0.0", - "graceful-fs": "^4.2.4", - "micromatch": "^4.0.2", - "pretty-format": "^26.6.2", - "slash": "^3.0.0", - "stack-utils": "^2.0.2" - }, - "engines": { - "node": ">= 10.14.2" - } - }, - "node_modules/jest-message-util/node_modules/braces": { - "version": "3.0.2", - "dev": true, - "license": "MIT", - "dependencies": { - "fill-range": "^7.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/jest-message-util/node_modules/fill-range": { - "version": "7.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "to-regex-range": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/jest-message-util/node_modules/is-number": { - "version": "7.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.12.0" - } - }, - "node_modules/jest-message-util/node_modules/micromatch": { - "version": "4.0.5", - "dev": true, - "license": "MIT", - "dependencies": { - "braces": "^3.0.2", - "picomatch": "^2.3.1" - }, - "engines": { - "node": ">=8.6" - } - }, - "node_modules/jest-message-util/node_modules/slash": { - "version": "3.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/jest-message-util/node_modules/to-regex-range": { - "version": "5.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "is-number": "^7.0.0" - }, - "engines": { - "node": ">=8.0" - } - }, - "node_modules/jest-mock": { - "version": "26.6.2", - "dev": true, - "license": "MIT", - "dependencies": { - "@jest/types": "^26.6.2", - "@types/node": "*" - }, - "engines": { - "node": ">= 10.14.2" - } - }, - "node_modules/jest-pnp-resolver": { - "version": "1.2.3", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6" - }, - "peerDependencies": { - "jest-resolve": "*" - }, - "peerDependenciesMeta": { - "jest-resolve": { - "optional": true - } - } - }, - "node_modules/jest-regex-util": { - "version": "26.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 10.14.2" - } - }, - "node_modules/jest-resolve": { - "version": "26.6.2", - "dev": true, - "license": "MIT", - "dependencies": { - "@jest/types": "^26.6.2", - "chalk": "^4.0.0", - "graceful-fs": "^4.2.4", - "jest-pnp-resolver": "^1.2.2", - "jest-util": "^26.6.2", - "read-pkg-up": "^7.0.1", - "resolve": "^1.18.1", - "slash": "^3.0.0" - }, - "engines": { - "node": ">= 10.14.2" - } - }, - "node_modules/jest-resolve-dependencies": { - "version": "26.6.3", - "dev": true, - "license": "MIT", - "dependencies": { - "@jest/types": "^26.6.2", - "jest-regex-util": "^26.0.0", - "jest-snapshot": "^26.6.2" - }, - "engines": { - "node": ">= 10.14.2" - } - }, - "node_modules/jest-resolve/node_modules/slash": { - "version": "3.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/jest-runner": { - "version": "26.6.3", - "dev": true, - "license": "MIT", - "dependencies": { - "@jest/console": "^26.6.2", - "@jest/environment": "^26.6.2", - "@jest/test-result": "^26.6.2", - "@jest/types": "^26.6.2", - "@types/node": "*", - "chalk": "^4.0.0", - "emittery": "^0.7.1", - "exit": "^0.1.2", - "graceful-fs": "^4.2.4", - "jest-config": "^26.6.3", - "jest-docblock": "^26.0.0", - "jest-haste-map": "^26.6.2", - "jest-leak-detector": "^26.6.2", - "jest-message-util": "^26.6.2", - "jest-resolve": "^26.6.2", - "jest-runtime": "^26.6.3", - "jest-util": "^26.6.2", - "jest-worker": "^26.6.2", - "source-map-support": "^0.5.6", - "throat": "^5.0.0" - }, - "engines": { - "node": ">= 10.14.2" - } - }, - "node_modules/jest-runtime": { - "version": "26.6.3", - "dev": true, - "license": "MIT", - "dependencies": { - "@jest/console": "^26.6.2", - "@jest/environment": "^26.6.2", - "@jest/fake-timers": "^26.6.2", - "@jest/globals": "^26.6.2", - "@jest/source-map": "^26.6.2", - "@jest/test-result": "^26.6.2", - "@jest/transform": "^26.6.2", - "@jest/types": "^26.6.2", - "@types/yargs": "^15.0.0", - "chalk": "^4.0.0", - "cjs-module-lexer": "^0.6.0", - "collect-v8-coverage": "^1.0.0", - "exit": "^0.1.2", - "glob": "^7.1.3", - "graceful-fs": "^4.2.4", - "jest-config": "^26.6.3", - "jest-haste-map": "^26.6.2", - "jest-message-util": "^26.6.2", - "jest-mock": "^26.6.2", - "jest-regex-util": "^26.0.0", - "jest-resolve": "^26.6.2", - "jest-snapshot": "^26.6.2", - "jest-util": "^26.6.2", - "jest-validate": "^26.6.2", - "slash": "^3.0.0", - "strip-bom": "^4.0.0", - "yargs": "^15.4.1" - }, - "bin": { - "jest-runtime": "bin/jest-runtime.js" - }, - "engines": { - "node": ">= 10.14.2" - } - }, - "node_modules/jest-runtime/node_modules/slash": { - "version": "3.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/jest-serializer": { - "version": "26.6.2", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/node": "*", - "graceful-fs": "^4.2.4" - }, - "engines": { - "node": ">= 10.14.2" - } - }, - "node_modules/jest-snapshot": { - "version": "26.6.2", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/types": "^7.0.0", - "@jest/types": "^26.6.2", - "@types/babel__traverse": "^7.0.4", - "@types/prettier": "^2.0.0", - "chalk": "^4.0.0", - "expect": "^26.6.2", - "graceful-fs": "^4.2.4", - "jest-diff": "^26.6.2", - "jest-get-type": "^26.3.0", - "jest-haste-map": "^26.6.2", - "jest-matcher-utils": "^26.6.2", - "jest-message-util": "^26.6.2", - "jest-resolve": "^26.6.2", - "natural-compare": "^1.4.0", - "pretty-format": "^26.6.2", - "semver": "^7.3.2" - }, - "engines": { - "node": ">= 10.14.2" - } - }, - "node_modules/jest-snapshot/node_modules/lru-cache": { - "version": "6.0.0", - "dev": true, - "license": "ISC", - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/jest-snapshot/node_modules/semver": { - "version": "7.5.4", - "dev": true, - "license": "ISC", - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/jest-snapshot/node_modules/yallist": { - "version": "4.0.0", - "dev": true, - "license": "ISC" - }, - "node_modules/jest-util": { - "version": "26.6.2", - "dev": true, - "license": "MIT", - "dependencies": { - "@jest/types": "^26.6.2", - "@types/node": "*", - "chalk": "^4.0.0", - "graceful-fs": "^4.2.4", - "is-ci": "^2.0.0", - "micromatch": "^4.0.2" - }, - "engines": { - "node": ">= 10.14.2" - } - }, - "node_modules/jest-util/node_modules/braces": { - "version": "3.0.2", - "dev": true, - "license": "MIT", - "dependencies": { - "fill-range": "^7.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/jest-util/node_modules/fill-range": { - "version": "7.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "to-regex-range": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/jest-util/node_modules/is-number": { - "version": "7.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.12.0" - } - }, - "node_modules/jest-util/node_modules/micromatch": { - "version": "4.0.5", - "dev": true, - "license": "MIT", - "dependencies": { - "braces": "^3.0.2", - "picomatch": "^2.3.1" - }, - "engines": { - "node": ">=8.6" - } - }, - "node_modules/jest-util/node_modules/to-regex-range": { - "version": "5.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "is-number": "^7.0.0" - }, - "engines": { - "node": ">=8.0" - } - }, - "node_modules/jest-validate": { - "version": "26.6.2", - "dev": true, - "license": "MIT", - "dependencies": { - "@jest/types": "^26.6.2", - "camelcase": "^6.0.0", - "chalk": "^4.0.0", - "jest-get-type": "^26.3.0", - "leven": "^3.1.0", - "pretty-format": "^26.6.2" - }, - "engines": { - "node": ">= 10.14.2" - } - }, - "node_modules/jest-validate/node_modules/camelcase": { - "version": "6.3.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/jest-watcher": { - "version": "26.6.2", - "dev": true, - "license": "MIT", - "dependencies": { - "@jest/test-result": "^26.6.2", - "@jest/types": "^26.6.2", - "@types/node": "*", - "ansi-escapes": "^4.2.1", - "chalk": "^4.0.0", - "jest-util": "^26.6.2", - "string-length": "^4.0.1" - }, - "engines": { - "node": ">= 10.14.2" - } - }, - "node_modules/jest-worker": { - "version": "26.6.2", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/node": "*", - "merge-stream": "^2.0.0", - "supports-color": "^7.0.0" - }, - "engines": { - "node": ">= 10.13.0" - } - }, - "node_modules/js-tokens": { - "version": "4.0.0", - "dev": true, - "license": "MIT" - }, - "node_modules/js-yaml": { - "version": "3.14.1", - "dev": true, - "license": "MIT", - "dependencies": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" - }, - "bin": { - "js-yaml": "bin/js-yaml.js" - } - }, - "node_modules/jsdom": { - "version": "16.7.0", - "dev": true, - "license": "MIT", - "dependencies": { - "abab": "^2.0.5", - "acorn": "^8.2.4", - "acorn-globals": "^6.0.0", - "cssom": "^0.4.4", - "cssstyle": "^2.3.0", - "data-urls": "^2.0.0", - "decimal.js": "^10.2.1", - "domexception": "^2.0.1", - "escodegen": "^2.0.0", - "form-data": "^3.0.0", - "html-encoding-sniffer": "^2.0.1", - "http-proxy-agent": "^4.0.1", - "https-proxy-agent": "^5.0.0", - "is-potential-custom-element-name": "^1.0.1", - "nwsapi": "^2.2.0", - "parse5": "6.0.1", - "saxes": "^5.0.1", - "symbol-tree": "^3.2.4", - "tough-cookie": "^4.0.0", - "w3c-hr-time": "^1.0.2", - "w3c-xmlserializer": "^2.0.0", - "webidl-conversions": "^6.1.0", - "whatwg-encoding": "^1.0.5", - "whatwg-mimetype": "^2.3.0", - "whatwg-url": "^8.5.0", - "ws": "^7.4.6", - "xml-name-validator": "^3.0.0" - }, - "engines": { - "node": ">=10" - }, - "peerDependencies": { - "canvas": "^2.5.0" - }, - "peerDependenciesMeta": { - "canvas": { - "optional": true - } - } - }, - "node_modules/jsesc": { - "version": "2.5.2", - "dev": true, - "license": "MIT", - "bin": { - "jsesc": "bin/jsesc" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/json-parse-better-errors": { - "version": "1.0.2", - "dev": true, - "license": "MIT" - }, - "node_modules/json-parse-even-better-errors": { - "version": "2.3.1", - "dev": true, - "license": "MIT" - }, - "node_modules/json-stringify-safe": { - "version": "5.0.1", - "dev": true, - "license": "ISC" - }, - "node_modules/json5": { - "version": "2.2.3", - "dev": true, - "license": "MIT", - "bin": { - "json5": "lib/cli.js" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/junk": { - "version": "3.1.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/kind-of": { - "version": "6.0.3", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/kleur": { - "version": "3.0.3", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "node_modules/leven": { - "version": "3.1.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "node_modules/lines-and-columns": { - "version": "1.2.4", - "dev": true, - "license": "MIT" - }, - "node_modules/load-json-file": { - "version": "4.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "graceful-fs": "^4.1.2", - "parse-json": "^4.0.0", - "pify": "^3.0.0", - "strip-bom": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/load-json-file/node_modules/pify": { - "version": "3.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=4" - } - }, - "node_modules/load-json-file/node_modules/strip-bom": { - "version": "3.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=4" - } - }, - "node_modules/locate-path": { - "version": "5.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "p-locate": "^4.1.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/lodash": { - "version": "4.17.21", - "dev": true, - "license": "MIT" - }, - "node_modules/lru-cache": { - "version": "5.1.1", - "dev": true, - "license": "ISC", - "dependencies": { - "yallist": "^3.0.2" - } - }, - "node_modules/make-dir": { - "version": "3.1.0", - "dev": true, - "license": "MIT", - "dependencies": { - "semver": "^6.0.0" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/make-error": { - "version": "1.3.6", - "dev": true, - "license": "ISC" - }, - "node_modules/makeerror": { - "version": "1.0.12", - "dev": true, - "license": "BSD-3-Clause", - "dependencies": { - "tmpl": "1.0.5" - } - }, - "node_modules/map-cache": { - "version": "0.2.2", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/map-obj": { - "version": "4.3.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/map-visit": { - "version": "1.0.0", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/xml-encryption/node_modules/@xmldom/xmldom": { + "version": "0.8.10", + "resolved": "https://registry.npmjs.org/@xmldom/xmldom/-/xmldom-0.8.10.tgz", + "integrity": "sha512-2WALfTl4xo2SkGCYRt6rDTFfk9R1czmBvUQy12gK2KuRKIpWEhcbbzy8EZXtz/jkRqHX8bFEc6FC1HjX4TUWYw==", "license": "MIT", - "dependencies": { - "object-visit": "^1.0.0" - }, + "peer": true, "engines": { - "node": ">=0.10.0" + "node": ">=10.0.0" } }, - "node_modules/memorystream": { - "version": "0.3.1", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/xml-encryption/node_modules/xpath": { + "version": "0.0.32", + "resolved": "https://registry.npmjs.org/xpath/-/xpath-0.0.32.tgz", + "integrity": "sha512-rxMJhSIoiO8vXcWvSifKqhvV96GjiD5wYb8/QHdoRyQvraTpp4IEv944nhGausZZ3u7dhQXteZuZbaqfpB7uYw==", + "peer": true, "engines": { - "node": ">= 0.10.0" + "node": ">=0.6.0" } }, - "node_modules/meow": { - "version": "6.1.1", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/xml2js": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/xml2js/-/xml2js-0.5.0.tgz", + "integrity": "sha512-drPFnkQJik/O+uPKpqSgr22mpuFHqKdbS835iAQrUC73L2F5WkboIRd63ai/2Yg6I1jzifPFKH2NTK+cfglkIA==", + "peer": true, "dependencies": { - "@types/minimist": "^1.2.0", - "camelcase-keys": "^6.2.2", - "decamelize-keys": "^1.1.0", - "hard-rejection": "^2.1.0", - "minimist-options": "^4.0.2", - "normalize-package-data": "^2.5.0", - "read-pkg-up": "^7.0.1", - "redent": "^3.0.0", - "trim-newlines": "^3.0.0", - "type-fest": "^0.13.1", - "yargs-parser": "^18.1.3" + "sax": ">=0.6.0", + "xmlbuilder": "~11.0.0" }, "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=4.0.0" } }, - "node_modules/meow/node_modules/type-fest": { - "version": "0.13.1", - "dev": true, - "license": "(MIT OR CC0-1.0)", + "node_modules/@ngageoint/mage.service/node_modules/xml2js/node_modules/xmlbuilder": { + "version": "11.0.1", + "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-11.0.1.tgz", + "integrity": "sha512-fDlsI/kFEx7gLvbecc0/ohLG50fugQp8ryHzMTuW9vSa1GJ0XYWKnhsUx7oie3G98+r56aTQIUB4kht42R3JvA==", + "peer": true, "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=4.0" } }, - "node_modules/merge-stream": { - "version": "2.0.0", - "dev": true, - "license": "MIT" - }, - "node_modules/merge2": { - "version": "1.4.1", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/xmlbuilder": { + "version": "15.1.1", + "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-15.1.1.tgz", + "integrity": "sha512-yMqGBqtXyeN1e3TGYvgNgDVZ3j84W4cwkOXQswghol6APgZWaff9lnbvN7MHYJOiXsvGPXtjTYJEiC9J2wv9Eg==", + "peer": true, "engines": { - "node": ">= 8" + "node": ">=8.0" } }, - "node_modules/micromatch": { - "version": "3.1.10", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/xmlbuilder2": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/xmlbuilder2/-/xmlbuilder2-3.1.1.tgz", + "integrity": "sha512-WCSfbfZnQDdLQLiMdGUQpMxxckeQ4oZNMNhLVkcekTu7xhD4tuUDyAPoY8CwXvBYE6LwBHd6QW2WZXlOWr1vCw==", "license": "MIT", + "peer": true, "dependencies": { - "arr-diff": "^4.0.0", - "array-unique": "^0.3.2", - "braces": "^2.3.1", - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "extglob": "^2.0.4", - "fragment-cache": "^0.2.1", - "kind-of": "^6.0.2", - "nanomatch": "^1.2.9", - "object.pick": "^1.3.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.2" + "@oozcitak/dom": "1.15.10", + "@oozcitak/infra": "1.0.8", + "@oozcitak/util": "8.3.8", + "js-yaml": "3.14.1" }, "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/mime-db": { - "version": "1.52.0", - "license": "MIT", - "engines": { - "node": ">= 0.6" + "node": ">=12.0" } }, - "node_modules/mime-types": { - "version": "2.1.35", + "node_modules/@ngageoint/mage.service/node_modules/xmlbuilder2/node_modules/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==", "license": "MIT", + "peer": true, "dependencies": { - "mime-db": "1.52.0" + "argparse": "^1.0.7", + "esprima": "^4.0.0" }, - "engines": { - "node": ">= 0.6" + "bin": { + "js-yaml": "bin/js-yaml.js" } }, - "node_modules/mimic-fn": { - "version": "2.1.0", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/xpath": { + "version": "0.0.34", + "resolved": "https://registry.npmjs.org/xpath/-/xpath-0.0.34.tgz", + "integrity": "sha512-FxF6+rkr1rNSQrhUNYrAFJpRXNzlDoMxeXN5qI84939ylEv3qqPFKa85Oxr6tDaJKqwW6KKyo2v26TSv3k6LeA==", "license": "MIT", + "peer": true, "engines": { - "node": ">=6" + "node": ">=0.6.0" } }, - "node_modules/min-indent": { - "version": "1.0.1", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/xtend": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", + "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==", + "peer": true, "engines": { - "node": ">=4" + "node": ">=0.4" } }, - "node_modules/minimatch": { - "version": "3.1.2", - "dev": true, - "license": "ISC", - "dependencies": { - "brace-expansion": "^1.1.7" - }, + "node_modules/@ngageoint/mage.service/node_modules/y18n": { + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", + "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", + "extraneous": true, "engines": { - "node": "*" + "node": ">=10" } }, - "node_modules/minimist": { - "version": "1.2.8", - "dev": true, - "license": "MIT", - "funding": { - "url": "https://github.com/sponsors/ljharb" - } + "node_modules/@ngageoint/mage.service/node_modules/yallist": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", + "integrity": "sha512-ncTzHV7NvsQZkYe1DW7cbDLm0YpzHmZF5r/iyP3ZnQtMiJ+pjzisCiMNI+Sj+xQF5pXhSHxSB3uDbsBTzY/c2A==", + "extraneous": true }, - "node_modules/minimist-options": { - "version": "4.1.0", - "dev": true, - "license": "MIT", - "dependencies": { - "arrify": "^1.0.1", - "is-plain-obj": "^1.1.0", - "kind-of": "^6.0.3" - }, + "node_modules/@ngageoint/mage.service/node_modules/yaml": { + "version": "1.10.2", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz", + "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==", + "license": "ISC", + "peer": true, "engines": { "node": ">= 6" } }, - "node_modules/minimist-options/node_modules/arrify": { - "version": "1.0.1", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/mixin-deep": { - "version": "1.3.2", - "dev": true, - "license": "MIT", + "node_modules/@ngageoint/mage.service/node_modules/yargs": { + "version": "16.2.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", + "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", + "extraneous": true, "dependencies": { - "for-in": "^1.0.2", - "is-extendable": "^1.0.1" + "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" }, "engines": { - "node": ">=0.10.0" + "node": ">=10" } }, - "node_modules/mkdirp": { - "version": "1.0.4", - "dev": true, - "license": "MIT", - "bin": { - "mkdirp": "bin/cmd.js" - }, + "node_modules/@ngageoint/mage.service/node_modules/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==", + "extraneous": true, + "license": "ISC", "engines": { "node": ">=10" } }, - "node_modules/ms": { + "node_modules/@ngageoint/mage.service/node_modules/yargs-unparser": { "version": "2.0.0", - "dev": true, - "license": "MIT" - }, - "node_modules/nanomatch": { - "version": "1.2.13", - "dev": true, - "license": "MIT", + "resolved": "https://registry.npmjs.org/yargs-unparser/-/yargs-unparser-2.0.0.tgz", + "integrity": "sha512-7pRTIA9Qc1caZ0bZ6RYRGbHJthJWuakf+WmHK0rVeLkNrrGhfoabBNdue6kdINI6r4if7ocq9aD/n7xwKOdzOA==", + "extraneous": true, "dependencies": { - "arr-diff": "^4.0.0", - "array-unique": "^0.3.2", - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "fragment-cache": "^0.2.1", - "is-windows": "^1.0.2", - "kind-of": "^6.0.2", - "object.pick": "^1.3.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.1" + "camelcase": "^6.0.0", + "decamelize": "^4.0.0", + "flat": "^5.0.2", + "is-plain-obj": "^2.1.0" }, "engines": { - "node": ">=0.10.0" + "node": ">=10" } }, - "node_modules/natural-compare": { - "version": "1.4.0", - "dev": true, - "license": "MIT" - }, - "node_modules/nested-error-stacks": { - "version": "2.1.1", - "dev": true, - "license": "MIT" - }, - "node_modules/nice-try": { - "version": "1.0.5", - "dev": true, - "license": "MIT" - }, - "node_modules/nock": { - "version": "12.0.3", - "dev": true, + "node_modules/@ngageoint/mage.service/node_modules/yauzl": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/yauzl/-/yauzl-3.2.0.tgz", + "integrity": "sha512-Ow9nuGZE+qp1u4JIPvg+uCiUr7xGQWdff7JQSk5VGYTAZMDe2q8lxJ10ygv10qmSj031Ty/6FNJpLO4o1Sgc+w==", + "extraneous": true, "license": "MIT", "dependencies": { - "debug": "^4.1.0", - "json-stringify-safe": "^5.0.1", - "lodash": "^4.17.13", - "propagate": "^2.0.0" + "buffer-crc32": "~0.2.3", + "pend": "~1.2.0" }, "engines": { - "node": ">= 10.13" + "node": ">=12" } }, - "node_modules/nock/node_modules/debug": { - "version": "4.3.4", - "dev": true, - "license": "MIT", - "dependencies": { - "ms": "2.1.2" - }, + "node_modules/@ngageoint/mage.service/node_modules/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==", + "extraneous": true, "engines": { - "node": ">=6.0" + "node": ">=10" }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } - } - }, - "node_modules/nock/node_modules/ms": { - "version": "2.1.2", - "dev": true, - "license": "MIT" - }, - "node_modules/node-int64": { - "version": "0.4.0", - "dev": true, - "license": "MIT" - }, - "node_modules/node-notifier": { - "version": "8.0.2", - "dev": true, - "license": "MIT", - "optional": true, - "dependencies": { - "growly": "^1.3.0", - "is-wsl": "^2.2.0", - "semver": "^7.3.2", - "shellwords": "^0.1.1", - "uuid": "^8.3.0", - "which": "^2.0.2" + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/node-notifier/node_modules/lru-cache": { - "version": "6.0.0", - "dev": true, - "license": "ISC", - "optional": true, + "node_modules/@ngageoint/mage.service/node_modules/zip-stream": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/zip-stream/-/zip-stream-4.1.1.tgz", + "integrity": "sha512-9qv4rlDiopXg4E69k+vMHjNN63YFMe9sZMrdlvKnCjlCRWeCBswPPMPUfx+ipsAWq1LXHe70RcbaHdJJpS6hyQ==", + "peer": true, "dependencies": { - "yallist": "^4.0.0" + "archiver-utils": "^3.0.4", + "compress-commons": "^4.1.2", + "readable-stream": "^3.6.0" }, "engines": { - "node": ">=10" + "node": ">= 10" } }, - "node_modules/node-notifier/node_modules/semver": { - "version": "7.5.4", - "dev": true, - "license": "ISC", - "optional": true, + "node_modules/@ngageoint/mage.service/node_modules/zip-stream/node_modules/archiver-utils": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/archiver-utils/-/archiver-utils-3.0.4.tgz", + "integrity": "sha512-KVgf4XQVrTjhyWmx6cte4RxonPLR9onExufI1jhvw/MQ4BB6IsZD5gT8Lq+u/+pRkWna/6JoHpiQioaqFP5Rzw==", + "peer": true, "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" + "glob": "^7.2.3", + "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": "^3.6.0" }, "engines": { - "node": ">=10" + "node": ">= 10" } }, - "node_modules/node-notifier/node_modules/yallist": { - "version": "4.0.0", + "node_modules/@sinclair/typebox": { + "version": "0.27.8", + "resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.27.8.tgz", + "integrity": "sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA==", "dev": true, - "license": "ISC", - "optional": true + "license": "MIT" }, - "node_modules/node-releases": { - "version": "2.0.13", + "node_modules/@sinonjs/commons": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-3.0.1.tgz", + "integrity": "sha512-K3mCHKQ9sVh8o1C9cxkwxaOmXoAMlDxC1mYyHrjqOWEcBjYr76t96zL2zlj5dUGZ3HSw240X1qgH3Mjf1yJWpQ==", "dev": true, - "license": "MIT" + "license": "BSD-3-Clause", + "dependencies": { + "type-detect": "4.0.8" + } }, - "node_modules/normalize-package-data": { - "version": "2.5.0", + "node_modules/@sinonjs/fake-timers": { + "version": "10.3.0", + "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-10.3.0.tgz", + "integrity": "sha512-V4BG07kuYSUkTCSBHG8G8TNhM+F19jXFWnQtzj+we8DrkpSBCee9Z3Ms8yiGer/dlmhe35/Xdgyo3/0rQKg7YA==", "dev": true, - "license": "BSD-2-Clause", + "license": "BSD-3-Clause", "dependencies": { - "hosted-git-info": "^2.1.4", - "resolve": "^1.10.0", - "semver": "2 || 3 || 4 || 5", - "validate-npm-package-license": "^3.0.1" + "@sinonjs/commons": "^3.0.0" } }, - "node_modules/normalize-package-data/node_modules/semver": { - "version": "5.7.2", + "node_modules/@types/babel__core": { + "version": "7.20.5", + "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.20.5.tgz", + "integrity": "sha512-qoQprZvz5wQFJwMDqeseRXWv3rqMvhgpbXFfVyWhbx9X47POIA6i/+dXefEmZKoAgOaTdaIgNSMqMIU61yRyzA==", "dev": true, - "license": "ISC", - "bin": { - "semver": "bin/semver" + "license": "MIT", + "dependencies": { + "@babel/parser": "^7.20.7", + "@babel/types": "^7.20.7", + "@types/babel__generator": "*", + "@types/babel__template": "*", + "@types/babel__traverse": "*" } }, - "node_modules/normalize-path": { - "version": "3.0.0", + "node_modules/@types/babel__generator": { + "version": "7.6.8", + "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.6.8.tgz", + "integrity": "sha512-ASsj+tpEDsEiFr1arWrlN6V3mdfjRMZt6LtK/Vp/kreFLnr5QH5+DhvD5nINYZXzwJvXeGq+05iUXcAzVrqWtw==", "dev": true, "license": "MIT", - "engines": { - "node": ">=0.10.0" + "dependencies": { + "@babel/types": "^7.0.0" } }, - "node_modules/npm-run-all": { - "version": "4.1.5", + "node_modules/@types/babel__template": { + "version": "7.4.4", + "resolved": "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.4.4.tgz", + "integrity": "sha512-h/NUaSyG5EyxBIp8YRxo4RMe2/qQgvyowRwVMzhYhBCONbW8PUsg4lkFMrhgZhUe5z3L3MiLDuvyJ/CaPa2A8A==", "dev": true, "license": "MIT", "dependencies": { - "ansi-styles": "^3.2.1", - "chalk": "^2.4.1", - "cross-spawn": "^6.0.5", - "memorystream": "^0.3.1", - "minimatch": "^3.0.4", - "pidtree": "^0.3.0", - "read-pkg": "^3.0.0", - "shell-quote": "^1.6.1", - "string.prototype.padend": "^3.0.0" - }, - "bin": { - "npm-run-all": "bin/npm-run-all/index.js", - "run-p": "bin/run-p/index.js", - "run-s": "bin/run-s/index.js" - }, - "engines": { - "node": ">= 4" + "@babel/parser": "^7.1.0", + "@babel/types": "^7.0.0" } }, - "node_modules/npm-run-all/node_modules/ansi-styles": { - "version": "3.2.1", + "node_modules/@types/babel__traverse": { + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.20.7.tgz", + "integrity": "sha512-dkO5fhS7+/oos4ciWxyEyjWe48zmG6wbCheo/G2ZnHx4fs3EU6YC6UM8rk56gAjNJ9P3MTH2jo5jb92/K6wbng==", "dev": true, "license": "MIT", "dependencies": { - "color-convert": "^1.9.0" - }, - "engines": { - "node": ">=4" + "@babel/types": "^7.20.7" } }, - "node_modules/npm-run-all/node_modules/chalk": { - "version": "2.4.2", + "node_modules/@types/geojson": { + "version": "7946.0.16", + "resolved": "https://registry.npmjs.org/@types/geojson/-/geojson-7946.0.16.tgz", + "integrity": "sha512-6C8nqWur3j98U6+lXDfTUWIfgvZU+EumvpHKcYjujKH7woYyLj2sUmff0tRhrqM7BohUw7Pz3ZB1jj2gW9Fvmg==", "dev": true, - "license": "MIT", - "dependencies": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "engines": { - "node": ">=4" - } + "license": "MIT" }, - "node_modules/npm-run-all/node_modules/color-convert": { - "version": "1.9.3", + "node_modules/@types/graceful-fs": { + "version": "4.1.9", + "resolved": "https://registry.npmjs.org/@types/graceful-fs/-/graceful-fs-4.1.9.tgz", + "integrity": "sha512-olP3sd1qOEe5dXTSaFvQG+02VdRXcdytWLAZsAq1PecU8uqQAhkrnbli7DagjtXKW/Bl7YJbUsa8MPcuc8LHEQ==", "dev": true, "license": "MIT", "dependencies": { - "color-name": "1.1.3" + "@types/node": "*" } }, - "node_modules/npm-run-all/node_modules/color-name": { - "version": "1.1.3", + "node_modules/@types/istanbul-lib-coverage": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.6.tgz", + "integrity": "sha512-2QF/t/auWm0lsy8XtKVPG19v3sSOQlJe/YHZgfjb/KBBHOGSV+J2q/S671rcq9uTBrLAXmZpqJiaQbMT+zNU1w==", "dev": true, "license": "MIT" }, - "node_modules/npm-run-all/node_modules/cross-spawn": { - "version": "6.0.5", + "node_modules/@types/istanbul-lib-report": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.3.tgz", + "integrity": "sha512-NQn7AHQnk/RSLOxrBbGyJM/aVQ+pjj5HCgasFxc0K/KhoATfQ/47AyUl15I2yBUpihjmas+a+VJBOqecrFH+uA==", "dev": true, "license": "MIT", "dependencies": { - "nice-try": "^1.0.4", - "path-key": "^2.0.1", - "semver": "^5.5.0", - "shebang-command": "^1.2.0", - "which": "^1.2.9" - }, - "engines": { - "node": ">=4.8" + "@types/istanbul-lib-coverage": "*" } }, - "node_modules/npm-run-all/node_modules/escape-string-regexp": { - "version": "1.0.5", + "node_modules/@types/istanbul-reports": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-3.0.4.tgz", + "integrity": "sha512-pk2B1NWalF9toCRu6gjBzR69syFjP4Od8WRAX+0mmf9lAjCRicLOWc+ZrxZHx/0XRjotgkF9t6iaMJ+aXcOdZQ==", "dev": true, "license": "MIT", - "engines": { - "node": ">=0.8.0" + "dependencies": { + "@types/istanbul-lib-report": "*" } }, - "node_modules/npm-run-all/node_modules/has-flag": { - "version": "3.0.0", + "node_modules/@types/jest": { + "version": "29.5.14", + "resolved": "https://registry.npmjs.org/@types/jest/-/jest-29.5.14.tgz", + "integrity": "sha512-ZN+4sdnLUbo8EVvVc2ao0GFW6oVrQRPn4K2lglySj7APvSrgzxHiNNK99us4WDMi57xxA2yggblIAMNhXOotLQ==", "dev": true, "license": "MIT", - "engines": { - "node": ">=4" + "dependencies": { + "expect": "^29.0.0", + "pretty-format": "^29.0.0" } }, - "node_modules/npm-run-all/node_modules/path-key": { - "version": "2.0.1", + "node_modules/@types/json-schema": { + "version": "7.0.15", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.15.tgz", + "integrity": "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/node": { + "version": "22.13.13", + "resolved": "https://registry.npmjs.org/@types/node/-/node-22.13.13.tgz", + "integrity": "sha512-ClsL5nMwKaBRwPcCvH8E7+nU4GxHVx1axNvMZTFHMEfNI7oahimt26P5zjVCRrjiIWj6YFXfE1v3dEp94wLcGQ==", "dev": true, "license": "MIT", - "engines": { - "node": ">=4" + "dependencies": { + "undici-types": "~6.20.0" } }, - "node_modules/npm-run-all/node_modules/semver": { - "version": "5.7.2", + "node_modules/@types/stack-utils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-2.0.3.tgz", + "integrity": "sha512-9aEbYZ3TbYMznPdcdr3SmIrLXwC/AKZXQeCf9Pgao5CKb8CyHuEX5jzWPTkvregvhRJHcpRO6BFoGW9ycaOkYw==", "dev": true, - "license": "ISC", - "bin": { - "semver": "bin/semver" + "license": "MIT" + }, + "node_modules/@types/yargs": { + "version": "17.0.33", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.33.tgz", + "integrity": "sha512-WpxBCKWPLr4xSsHgz511rFJAM+wS28w2zEO1QDNY5zM/S8ok70NNfztH0xwhqKyaK0OHCbN98LDAZuy1ctxDkA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/yargs-parser": "*" } }, - "node_modules/npm-run-all/node_modules/shebang-command": { - "version": "1.2.0", + "node_modules/@types/yargs-parser": { + "version": "21.0.3", + "resolved": "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-21.0.3.tgz", + "integrity": "sha512-I4q9QU9MQv4oEOz4tAHJtNz1cwuLxn2F3xcc2iV5WdqLPpUnj30aUuxt1mAxYTG+oe8CZMV/+6rU4S4gRDzqtQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/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==", "dev": true, "license": "MIT", "dependencies": { - "shebang-regex": "^1.0.0" + "type-fest": "^0.21.3" }, "engines": { - "node": ">=0.10.0" + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/npm-run-all/node_modules/shebang-regex": { - "version": "1.0.0", + "node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", "dev": true, "license": "MIT", "engines": { - "node": ">=0.10.0" + "node": ">=8" } }, - "node_modules/npm-run-all/node_modules/supports-color": { - "version": "5.5.0", + "node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", "dev": true, "license": "MIT", "dependencies": { - "has-flag": "^3.0.0" + "color-convert": "^2.0.1" }, "engines": { - "node": ">=4" + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/npm-run-all/node_modules/which": { - "version": "1.3.1", + "node_modules/anymatch": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", + "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", "dev": true, "license": "ISC", "dependencies": { - "isexe": "^2.0.0" + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" }, - "bin": { - "which": "bin/which" + "engines": { + "node": ">= 8" } }, - "node_modules/npm-run-path": { - "version": "4.0.1", + "node_modules/argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", "dev": true, "license": "MIT", "dependencies": { - "path-key": "^3.0.0" - }, - "engines": { - "node": ">=8" + "sprintf-js": "~1.0.2" } }, - "node_modules/nwsapi": { - "version": "2.2.7", + "node_modules/async": { + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/async/-/async-3.2.6.tgz", + "integrity": "sha512-htCUDlxyyCLMgaM3xXg0C0LW2xqfuQ6p05pCEIsXuyQ+a1koYKTuBMzRNwmybfLgvJDMd0r1LTn4+E0Ti6C2AA==", "dev": true, "license": "MIT" }, - "node_modules/object-copy": { - "version": "0.1.0", - "dev": true, + "node_modules/asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==", + "license": "MIT" + }, + "node_modules/axios": { + "version": "0.27.2", + "resolved": "https://registry.npmjs.org/axios/-/axios-0.27.2.tgz", + "integrity": "sha512-t+yRIyySRTp/wua5xEr+z1q60QmLq8ABsS5O9Me1AsE5dfKqgnCFzwiCZZ/cGNd1lq4/7akDWMxdhVlucjmnOQ==", "license": "MIT", "dependencies": { - "copy-descriptor": "^0.1.0", - "define-property": "^0.2.5", - "kind-of": "^3.0.3" - }, - "engines": { - "node": ">=0.10.0" + "follow-redirects": "^1.14.9", + "form-data": "^4.0.0" } }, - "node_modules/object-copy/node_modules/define-property": { - "version": "0.2.5", + "node_modules/babel-jest": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-29.7.0.tgz", + "integrity": "sha512-BrvGY3xZSwEcCzKvKsCi2GgHqDqsYkOP4/by5xCgIwGXQxIEh+8ew3gmrE1y7XRR6LHZIj6yLYnUi/mm2KXKBg==", "dev": true, "license": "MIT", "dependencies": { - "is-descriptor": "^0.1.0" + "@jest/transform": "^29.7.0", + "@types/babel__core": "^7.1.14", + "babel-plugin-istanbul": "^6.1.1", + "babel-preset-jest": "^29.6.3", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "slash": "^3.0.0" }, "engines": { - "node": ">=0.10.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "@babel/core": "^7.8.0" } }, - "node_modules/object-copy/node_modules/is-accessor-descriptor": { - "version": "0.1.6", + "node_modules/babel-plugin-istanbul": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz", + "integrity": "sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA==", "dev": true, - "license": "MIT", + "license": "BSD-3-Clause", "dependencies": { - "kind-of": "^3.0.2" + "@babel/helper-plugin-utils": "^7.0.0", + "@istanbuljs/load-nyc-config": "^1.0.0", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-instrument": "^5.0.4", + "test-exclude": "^6.0.0" }, "engines": { - "node": ">=0.10.0" + "node": ">=8" } }, - "node_modules/object-copy/node_modules/is-data-descriptor": { - "version": "0.1.4", + "node_modules/babel-plugin-istanbul/node_modules/istanbul-lib-instrument": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.1.tgz", + "integrity": "sha512-pzqtp31nLv/XFOzXGuvhCb8qhjmTVo5vjVk19XE4CRlSWz0KoeJ3bw9XsA7nOp9YBf4qHjwBxkDzKcME/J29Yg==", "dev": true, - "license": "MIT", + "license": "BSD-3-Clause", "dependencies": { - "kind-of": "^3.0.2" + "@babel/core": "^7.12.3", + "@babel/parser": "^7.14.7", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-coverage": "^3.2.0", + "semver": "^6.3.0" }, "engines": { - "node": ">=0.10.0" + "node": ">=8" } }, - "node_modules/object-copy/node_modules/is-descriptor": { - "version": "0.1.6", + "node_modules/babel-plugin-jest-hoist": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-29.6.3.tgz", + "integrity": "sha512-ESAc/RJvGTFEzRwOTT4+lNDk/GNHMkKbNzsvT0qKRfDyyYTskxB5rnU2njIDYVxXCBHHEI1c0YwHob3WaYujOg==", "dev": true, "license": "MIT", "dependencies": { - "is-accessor-descriptor": "^0.1.6", - "is-data-descriptor": "^0.1.4", - "kind-of": "^5.0.0" + "@babel/template": "^7.3.3", + "@babel/types": "^7.3.3", + "@types/babel__core": "^7.1.14", + "@types/babel__traverse": "^7.0.6" }, "engines": { - "node": ">=0.10.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/object-copy/node_modules/is-descriptor/node_modules/kind-of": { - "version": "5.1.0", + "node_modules/babel-preset-current-node-syntax": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-1.1.0.tgz", + "integrity": "sha512-ldYss8SbBlWva1bs28q78Ju5Zq1F+8BrqBZZ0VFhLBvhh6lCpC2o3gDJi/5DRLs9FgYZCnmPYIVFU4lRXCkyUw==", "dev": true, "license": "MIT", - "engines": { - "node": ">=0.10.0" + "dependencies": { + "@babel/plugin-syntax-async-generators": "^7.8.4", + "@babel/plugin-syntax-bigint": "^7.8.3", + "@babel/plugin-syntax-class-properties": "^7.12.13", + "@babel/plugin-syntax-class-static-block": "^7.14.5", + "@babel/plugin-syntax-import-attributes": "^7.24.7", + "@babel/plugin-syntax-import-meta": "^7.10.4", + "@babel/plugin-syntax-json-strings": "^7.8.3", + "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", + "@babel/plugin-syntax-numeric-separator": "^7.10.4", + "@babel/plugin-syntax-object-rest-spread": "^7.8.3", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.3", + "@babel/plugin-syntax-optional-chaining": "^7.8.3", + "@babel/plugin-syntax-private-property-in-object": "^7.14.5", + "@babel/plugin-syntax-top-level-await": "^7.14.5" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" } }, - "node_modules/object-copy/node_modules/kind-of": { - "version": "3.2.2", + "node_modules/babel-preset-jest": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-29.6.3.tgz", + "integrity": "sha512-0B3bhxR6snWXJZtR/RliHTDPRgn1sNHOR0yVtq/IiQFyuOVjFS+wuio/R4gSNkyYmKmJB4wGZv2NZanmKmTnNA==", "dev": true, "license": "MIT", "dependencies": { - "is-buffer": "^1.1.5" + "babel-plugin-jest-hoist": "^29.6.3", + "babel-preset-current-node-syntax": "^1.0.0" }, "engines": { - "node": ">=0.10.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" } }, - "node_modules/object-inspect": { - "version": "1.12.3", + "node_modules/balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", "dev": true, - "license": "MIT", - "funding": { - "url": "https://github.com/sponsors/ljharb" - } + "license": "MIT" }, - "node_modules/object-keys": { - "version": "1.1.1", + "node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", "dev": true, "license": "MIT", - "engines": { - "node": ">= 0.4" + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" } }, - "node_modules/object-visit": { - "version": "1.0.1", + "node_modules/braces": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", + "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", "dev": true, "license": "MIT", "dependencies": { - "isobject": "^3.0.0" + "fill-range": "^7.1.1" }, "engines": { - "node": ">=0.10.0" + "node": ">=8" } }, - "node_modules/object.assign": { - "version": "4.1.4", + "node_modules/browserslist": { + "version": "4.24.4", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.24.4.tgz", + "integrity": "sha512-KDi1Ny1gSePi1vm0q4oxSF8b4DR44GF4BbmS2YdhPLOEqd8pDviZOGH/GsmRwoWJ2+5Lr085X7naowMwKHDG1A==", "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], "license": "MIT", "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "has-symbols": "^1.0.3", - "object-keys": "^1.1.1" + "caniuse-lite": "^1.0.30001688", + "electron-to-chromium": "^1.5.73", + "node-releases": "^2.0.19", + "update-browserslist-db": "^1.1.1" }, - "engines": { - "node": ">= 0.4" + "bin": { + "browserslist": "cli.js" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "engines": { + "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" } }, - "node_modules/object.pick": { - "version": "1.3.0", + "node_modules/bs-logger": { + "version": "0.2.6", + "resolved": "https://registry.npmjs.org/bs-logger/-/bs-logger-0.2.6.tgz", + "integrity": "sha512-pd8DCoxmbgc7hyPKOvxtqNcjYoOsABPQdcCUjGp3d42VR2CX1ORhk2A87oqqu5R1kk+76nsxZupkmyd+MVtCog==", "dev": true, "license": "MIT", "dependencies": { - "isobject": "^3.0.1" + "fast-json-stable-stringify": "2.x" }, "engines": { - "node": ">=0.10.0" + "node": ">= 6" } }, - "node_modules/once": { - "version": "1.4.0", + "node_modules/bser": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/bser/-/bser-2.1.1.tgz", + "integrity": "sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ==", "dev": true, - "license": "ISC", + "license": "Apache-2.0", "dependencies": { - "wrappy": "1" + "node-int64": "^0.4.0" } }, - "node_modules/onetime": { - "version": "5.1.2", + "node_modules/buffer-from": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", + "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", "dev": true, + "license": "MIT" + }, + "node_modules/call-bind-apply-helpers": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.2.tgz", + "integrity": "sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==", "license": "MIT", "dependencies": { - "mimic-fn": "^2.1.0" + "es-errors": "^1.3.0", + "function-bind": "^1.1.2" }, "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">= 0.4" } }, - "node_modules/p-all": { - "version": "2.1.0", + "node_modules/callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", "dev": true, "license": "MIT", - "dependencies": { - "p-map": "^2.0.0" - }, "engines": { "node": ">=6" } }, - "node_modules/p-all/node_modules/p-map": { - "version": "2.1.0", + "node_modules/camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", "dev": true, "license": "MIT", "engines": { "node": ">=6" } }, - "node_modules/p-each-series": { - "version": "2.2.0", + "node_modules/caniuse-lite": { + "version": "1.0.30001707", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001707.tgz", + "integrity": "sha512-3qtRjw/HQSMlDWf+X79N206fepf4SOOU6SQLMaq/0KkZLmSjPxAkBOQQ+FxbHKfHmYLZFfdWsO3KA90ceHPSnw==", "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/caniuse-lite" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "CC-BY-4.0" }, - "node_modules/p-event": { - "version": "4.2.0", + "node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", "dev": true, "license": "MIT", "dependencies": { - "p-timeout": "^3.1.0" + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" }, "engines": { - "node": ">=8" + "node": ">=10" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/p-filter": { - "version": "2.1.0", + "node_modules/char-regex": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/char-regex/-/char-regex-1.0.2.tgz", + "integrity": "sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw==", "dev": true, "license": "MIT", - "dependencies": { - "p-map": "^2.0.0" - }, "engines": { - "node": ">=8" + "node": ">=10" } }, - "node_modules/p-filter/node_modules/p-map": { - "version": "2.1.0", + "node_modules/ci-info": { + "version": "3.9.0", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.9.0.tgz", + "integrity": "sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ==", "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/sibiraj-s" + } + ], "license": "MIT", "engines": { - "node": ">=6" + "node": ">=8" } }, - "node_modules/p-finally": { - "version": "1.0.0", + "node_modules/cjs-module-lexer": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/cjs-module-lexer/-/cjs-module-lexer-1.4.3.tgz", + "integrity": "sha512-9z8TZaGM1pfswYeXrUpzPrkx8UnWYdhJclsiYMm6x/w5+nN+8Tf/LnAgfLGQCm59qAOxU8WwHEq2vNwF6i4j+Q==", "dev": true, - "license": "MIT", + "license": "MIT" + }, + "node_modules/cliui": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", + "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", + "dev": true, + "license": "ISC", + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.1", + "wrap-ansi": "^7.0.0" + }, "engines": { - "node": ">=4" + "node": ">=12" } }, - "node_modules/p-limit": { - "version": "2.3.0", + "node_modules/co": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", + "integrity": "sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ==", "dev": true, "license": "MIT", - "dependencies": { - "p-try": "^2.0.0" - }, "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "iojs": ">= 1.0.0", + "node": ">= 0.12.0" } }, - "node_modules/p-locate": { - "version": "4.1.0", + "node_modules/collect-v8-coverage": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/collect-v8-coverage/-/collect-v8-coverage-1.0.2.tgz", + "integrity": "sha512-lHl4d5/ONEbLlJvaJNtsF/Lz+WvB07u2ycqTYbdrq7UypDXailES4valYb2eWiJFxZlVmpGekfqoxQhzyFdT4Q==", + "dev": true, + "license": "MIT" + }, + "node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", "dev": true, "license": "MIT", "dependencies": { - "p-limit": "^2.2.0" + "color-name": "~1.1.4" }, "engines": { - "node": ">=8" + "node": ">=7.0.0" } }, - "node_modules/p-map": { - "version": "3.0.0", + "node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", "dev": true, + "license": "MIT" + }, + "node_modules/combined-stream": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", + "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", "license": "MIT", "dependencies": { - "aggregate-error": "^3.0.0" + "delayed-stream": "~1.0.0" }, "engines": { - "node": ">=8" + "node": ">= 0.8" } }, - "node_modules/p-timeout": { - "version": "3.2.0", + "node_modules/concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", + "dev": true, + "license": "MIT" + }, + "node_modules/convert-source-map": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", + "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==", + "dev": true, + "license": "MIT" + }, + "node_modules/create-jest": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/create-jest/-/create-jest-29.7.0.tgz", + "integrity": "sha512-Adz2bdH0Vq3F53KEMJOoftQFutWCukm6J24wbPWRO4k1kMY7gS7ds/uoJkNuV8wDCtWWnuwGcJwpWcih+zEW1Q==", "dev": true, "license": "MIT", "dependencies": { - "p-finally": "^1.0.0" + "@jest/types": "^29.6.3", + "chalk": "^4.0.0", + "exit": "^0.1.2", + "graceful-fs": "^4.2.9", + "jest-config": "^29.7.0", + "jest-util": "^29.7.0", + "prompts": "^2.0.1" + }, + "bin": { + "create-jest": "bin/create-jest.js" }, "engines": { - "node": ">=8" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/p-try": { - "version": "2.2.0", + "node_modules/cross-spawn": { + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", + "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==", "dev": true, "license": "MIT", + "dependencies": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + }, "engines": { - "node": ">=6" + "node": ">= 8" } }, - "node_modules/parse-json": { - "version": "4.0.0", + "node_modules/debug": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.0.tgz", + "integrity": "sha512-6WTZ/IxCY/T6BALoZHaE4ctp9xm+Z5kY/pzYaCHRFeyVhojxlrm+46y68HA6hr0TcwEssoxNiDEUJQjfPZ/RYA==", "dev": true, "license": "MIT", "dependencies": { - "error-ex": "^1.3.1", - "json-parse-better-errors": "^1.0.1" + "ms": "^2.1.3" }, "engines": { - "node": ">=4" + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } } }, - "node_modules/parse5": { - "version": "6.0.1", + "node_modules/dedent": { + "version": "1.5.3", + "resolved": "https://registry.npmjs.org/dedent/-/dedent-1.5.3.tgz", + "integrity": "sha512-NHQtfOOW68WD8lgypbLA5oT+Bt0xXJhiYvoR6SmmNXZfpzOGXwdKWmcwG8N7PwVVWV3eF/68nmD9BaJSsTBhyQ==", "dev": true, - "license": "MIT" + "license": "MIT", + "peerDependencies": { + "babel-plugin-macros": "^3.1.0" + }, + "peerDependenciesMeta": { + "babel-plugin-macros": { + "optional": true + } + } }, - "node_modules/pascalcase": { - "version": "0.1.1", + "node_modules/deepmerge": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.1.tgz", + "integrity": "sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==", "dev": true, "license": "MIT", "engines": { "node": ">=0.10.0" } }, - "node_modules/path-dirname": { - "version": "1.0.2", - "dev": true, - "license": "MIT" - }, - "node_modules/path-exists": { - "version": "4.0.0", - "dev": true, + "node_modules/delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==", "license": "MIT", "engines": { - "node": ">=8" + "node": ">=0.4.0" } }, - "node_modules/path-is-absolute": { - "version": "1.0.1", + "node_modules/detect-newline": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/detect-newline/-/detect-newline-3.1.0.tgz", + "integrity": "sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA==", "dev": true, "license": "MIT", "engines": { - "node": ">=0.10.0" + "node": ">=8" } }, - "node_modules/path-key": { - "version": "3.1.1", + "node_modules/diff-sequences": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-29.6.3.tgz", + "integrity": "sha512-EjePK1srD3P08o2j4f0ExnylqRs5B9tJjcp9t1krH2qRi8CCdsYfwe9JgSLurFBWwq4uOlipzfk5fHNvwFKr8Q==", "dev": true, "license": "MIT", "engines": { - "node": ">=8" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/path-parse": { - "version": "1.0.7", - "dev": true, - "license": "MIT" - }, - "node_modules/path-type": { - "version": "3.0.0", - "dev": true, + "node_modules/dunder-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.1.tgz", + "integrity": "sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==", "license": "MIT", "dependencies": { - "pify": "^3.0.0" + "call-bind-apply-helpers": "^1.0.1", + "es-errors": "^1.3.0", + "gopd": "^1.2.0" }, "engines": { - "node": ">=4" + "node": ">= 0.4" } }, - "node_modules/path-type/node_modules/pify": { - "version": "3.0.0", + "node_modules/ejs": { + "version": "3.1.10", + "resolved": "https://registry.npmjs.org/ejs/-/ejs-3.1.10.tgz", + "integrity": "sha512-UeJmFfOrAQS8OJWPZ4qtgHyWExa088/MtK5UEyoJGFH67cDEXkZSviOiKRCZ4Xij0zxI3JECgYs3oKx+AizQBA==", "dev": true, - "license": "MIT", + "license": "Apache-2.0", + "dependencies": { + "jake": "^10.8.5" + }, + "bin": { + "ejs": "bin/cli.js" + }, "engines": { - "node": ">=4" + "node": ">=0.10.0" } }, - "node_modules/picocolors": { - "version": "1.0.0", + "node_modules/electron-to-chromium": { + "version": "1.5.125", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.125.tgz", + "integrity": "sha512-A2+qEsSUc95QvyFDl7PNwkDDNphIKBVfBBtWWkPGRbiWEgzLo0SvLygYF6HgzVduHd+4WGPB/WD64POFgwzY3g==", "dev": true, "license": "ISC" }, - "node_modules/picomatch": { - "version": "2.3.1", + "node_modules/emittery": { + "version": "0.13.1", + "resolved": "https://registry.npmjs.org/emittery/-/emittery-0.13.1.tgz", + "integrity": "sha512-DeWwawk6r5yR9jFgnDKYt4sLS0LmHJJi3ZOnb5/JdbYwj3nW+FxQnHIjhBKz8YLC7oRNPVM9NQ47I3CVx34eqQ==", "dev": true, "license": "MIT", "engines": { - "node": ">=8.6" + "node": ">=12" }, "funding": { - "url": "https://github.com/sponsors/jonschlinkert" + "url": "https://github.com/sindresorhus/emittery?sponsor=1" } }, - "node_modules/pidtree": { - "version": "0.3.1", + "node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true, + "license": "MIT" + }, + "node_modules/error-ex": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", + "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", "dev": true, "license": "MIT", - "bin": { - "pidtree": "bin/pidtree.js" - }, - "engines": { - "node": ">=0.10" + "dependencies": { + "is-arrayish": "^0.2.1" } }, - "node_modules/pify": { - "version": "4.0.1", - "dev": true, + "node_modules/es-define-property": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.1.tgz", + "integrity": "sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==", "license": "MIT", "engines": { - "node": ">=6" + "node": ">= 0.4" } }, - "node_modules/pirates": { - "version": "4.0.6", - "dev": true, + "node_modules/es-errors": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz", + "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==", "license": "MIT", "engines": { - "node": ">= 6" + "node": ">= 0.4" } }, - "node_modules/pkg-dir": { - "version": "4.2.0", - "dev": true, + "node_modules/es-object-atoms": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.1.1.tgz", + "integrity": "sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==", "license": "MIT", "dependencies": { - "find-up": "^4.0.0" + "es-errors": "^1.3.0" }, "engines": { - "node": ">=8" - } - }, - "node_modules/posix-character-classes": { - "version": "0.1.1", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" + "node": ">= 0.4" } }, - "node_modules/pretty-format": { - "version": "26.6.2", - "dev": true, + "node_modules/es-set-tostringtag": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.1.0.tgz", + "integrity": "sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA==", "license": "MIT", "dependencies": { - "@jest/types": "^26.6.2", - "ansi-regex": "^5.0.0", - "ansi-styles": "^4.0.0", - "react-is": "^17.0.1" + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.6", + "has-tostringtag": "^1.0.2", + "hasown": "^2.0.2" }, "engines": { - "node": ">= 10" + "node": ">= 0.4" } }, - "node_modules/prompts": { - "version": "2.4.2", + "node_modules/escalade": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz", + "integrity": "sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==", "dev": true, "license": "MIT", - "dependencies": { - "kleur": "^3.0.3", - "sisteransi": "^1.0.5" - }, "engines": { - "node": ">= 6" + "node": ">=6" } }, - "node_modules/propagate": { - "version": "2.0.1", + "node_modules/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, "license": "MIT", "engines": { - "node": ">= 8" + "node": ">=8" } }, - "node_modules/psl": { - "version": "1.9.0", + "node_modules/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, - "license": "MIT" + "license": "BSD-2-Clause", + "bin": { + "esparse": "bin/esparse.js", + "esvalidate": "bin/esvalidate.js" + }, + "engines": { + "node": ">=4" + } }, - "node_modules/pump": { - "version": "3.0.0", + "node_modules/execa": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz", + "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", "dev": true, "license": "MIT", "dependencies": { - "end-of-stream": "^1.1.0", - "once": "^1.3.1" + "cross-spawn": "^7.0.3", + "get-stream": "^6.0.0", + "human-signals": "^2.1.0", + "is-stream": "^2.0.0", + "merge-stream": "^2.0.0", + "npm-run-path": "^4.0.1", + "onetime": "^5.1.2", + "signal-exit": "^3.0.3", + "strip-final-newline": "^2.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sindresorhus/execa?sponsor=1" } }, - "node_modules/punycode": { - "version": "2.3.0", + "node_modules/exit": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz", + "integrity": "sha512-Zk/eNKV2zbjpKzrsQ+n1G6poVbErQxJ0LBOJXaKZ1EViLzH+hrLu9cdXI4zw9dBQJslwBEpbQ2P1oS7nDxs6jQ==", "dev": true, - "license": "MIT", "engines": { - "node": ">=6" + "node": ">= 0.8.0" } }, - "node_modules/querystringify": { - "version": "2.2.0", - "dev": true, - "license": "MIT" - }, - "node_modules/quick-lru": { - "version": "4.0.1", + "node_modules/expect": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/expect/-/expect-29.7.0.tgz", + "integrity": "sha512-2Zks0hf1VLFYI1kbh0I5jP3KHHyCHpkfyHBzsSXRFgl/Bg9mWYfMW8oD+PdMPlEwy5HNsR9JutYy6pMeOh61nw==", "dev": true, "license": "MIT", + "dependencies": { + "@jest/expect-utils": "^29.7.0", + "jest-get-type": "^29.6.3", + "jest-matcher-utils": "^29.7.0", + "jest-message-util": "^29.7.0", + "jest-util": "^29.7.0" + }, "engines": { - "node": ">=8" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/react-is": { - "version": "17.0.2", + "node_modules/fast-json-stable-stringify": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", "dev": true, "license": "MIT" }, - "node_modules/read-pkg": { - "version": "3.0.0", + "node_modules/fb-watchman": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/fb-watchman/-/fb-watchman-2.0.2.tgz", + "integrity": "sha512-p5161BqbuCaSnB8jIbzQHOlpgsPmK5rJVDfDKO91Axs5NC1uu3HRQm6wt9cd9/+GtQQIO53JdGXXoyDpTAsgYA==", "dev": true, - "license": "MIT", + "license": "Apache-2.0", "dependencies": { - "load-json-file": "^4.0.0", - "normalize-package-data": "^2.3.2", - "path-type": "^3.0.0" - }, - "engines": { - "node": ">=4" + "bser": "2.1.1" } }, - "node_modules/read-pkg-up": { - "version": "7.0.1", + "node_modules/filelist": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/filelist/-/filelist-1.0.4.tgz", + "integrity": "sha512-w1cEuf3S+DrLCQL7ET6kz+gmlJdbq9J7yXCSjK/OZCPA+qEN1WyF4ZAf0YYJa4/shHJra2t/d/r8SV4Ji+x+8Q==", "dev": true, - "license": "MIT", + "license": "Apache-2.0", "dependencies": { - "find-up": "^4.1.0", - "read-pkg": "^5.2.0", - "type-fest": "^0.8.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "minimatch": "^5.0.1" } }, - "node_modules/read-pkg-up/node_modules/parse-json": { - "version": "5.2.0", + "node_modules/filelist/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", "dev": true, "license": "MIT", "dependencies": { - "@babel/code-frame": "^7.0.0", - "error-ex": "^1.3.1", - "json-parse-even-better-errors": "^2.3.0", - "lines-and-columns": "^1.1.6" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "balanced-match": "^1.0.0" } }, - "node_modules/read-pkg-up/node_modules/read-pkg": { - "version": "5.2.0", + "node_modules/filelist/node_modules/minimatch": { + "version": "5.1.6", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz", + "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==", "dev": true, - "license": "MIT", + "license": "ISC", "dependencies": { - "@types/normalize-package-data": "^2.4.0", - "normalize-package-data": "^2.5.0", - "parse-json": "^5.0.0", - "type-fest": "^0.6.0" + "brace-expansion": "^2.0.1" }, "engines": { - "node": ">=8" - } - }, - "node_modules/read-pkg-up/node_modules/read-pkg/node_modules/type-fest": { - "version": "0.6.0", - "dev": true, - "license": "(MIT OR CC0-1.0)", - "engines": { - "node": ">=8" + "node": ">=10" } }, - "node_modules/read-pkg-up/node_modules/type-fest": { - "version": "0.8.1", + "node_modules/fill-range": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", + "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", "dev": true, - "license": "(MIT OR CC0-1.0)", + "license": "MIT", + "dependencies": { + "to-regex-range": "^5.0.1" + }, "engines": { "node": ">=8" } }, - "node_modules/redent": { - "version": "3.0.0", + "node_modules/find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", "dev": true, "license": "MIT", "dependencies": { - "indent-string": "^4.0.0", - "strip-indent": "^3.0.0" + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" }, "engines": { "node": ">=8" } }, - "node_modules/regex-not": { - "version": "1.0.2", - "dev": true, + "node_modules/follow-redirects": { + "version": "1.15.9", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.9.tgz", + "integrity": "sha512-gew4GsXizNgdoRyqmyfMHyAmXsZDk6mHkSxZFCzW9gwlbtOW44CDtYavM+y+72qD/Vq2l550kMF52DT8fOLJqQ==", + "funding": [ + { + "type": "individual", + "url": "https://github.com/sponsors/RubenVerborgh" + } + ], "license": "MIT", - "dependencies": { - "extend-shallow": "^3.0.2", - "safe-regex": "^1.1.0" - }, "engines": { - "node": ">=0.10.0" + "node": ">=4.0" + }, + "peerDependenciesMeta": { + "debug": { + "optional": true + } } }, - "node_modules/regexp.prototype.flags": { - "version": "1.5.0", - "dev": true, + "node_modules/form-data": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.2.tgz", + "integrity": "sha512-hGfm/slu0ZabnNt4oaRZ6uREyfCj6P4fT/n6A1rGV+Z0VdGXjfOhVUpkn6qVQONHGIFwmveGXyDs75+nr6FM8w==", "license": "MIT", "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "functions-have-names": "^1.2.3" + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "es-set-tostringtag": "^2.1.0", + "mime-types": "^2.1.12" }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">= 6" } }, - "node_modules/remove-trailing-separator": { - "version": "1.1.0", + "node_modules/fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", "dev": true, "license": "ISC" }, - "node_modules/repeat-element": { - "version": "1.1.4", + "node_modules/fsevents": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", "dev": true, + "hasInstallScript": true, "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], "engines": { - "node": ">=0.10.0" + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" } }, - "node_modules/repeat-string": { - "version": "1.6.1", - "dev": true, + "node_modules/function-bind": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", + "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", "license": "MIT", - "engines": { - "node": ">=0.10" + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/require-directory": { - "version": "2.1.1", + "node_modules/gensync": { + "version": "1.0.0-beta.2", + "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", + "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", "dev": true, "license": "MIT", "engines": { - "node": ">=0.10.0" + "node": ">=6.9.0" } }, - "node_modules/require-main-filename": { - "version": "2.0.0", - "dev": true, - "license": "ISC" - }, - "node_modules/requires-port": { - "version": "1.0.0", + "node_modules/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, - "license": "MIT" + "license": "ISC", + "engines": { + "node": "6.* || 8.* || >= 10.*" + } }, - "node_modules/resolve": { - "version": "1.22.4", - "dev": true, + "node_modules/get-intrinsic": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.3.0.tgz", + "integrity": "sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ==", "license": "MIT", "dependencies": { - "is-core-module": "^2.13.0", - "path-parse": "^1.0.7", - "supports-preserve-symlinks-flag": "^1.0.0" + "call-bind-apply-helpers": "^1.0.2", + "es-define-property": "^1.0.1", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.1.1", + "function-bind": "^1.1.2", + "get-proto": "^1.0.1", + "gopd": "^1.2.0", + "has-symbols": "^1.1.0", + "hasown": "^2.0.2", + "math-intrinsics": "^1.1.0" }, - "bin": { - "resolve": "bin/resolve" + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/resolve-cwd": { - "version": "3.0.0", + "node_modules/get-package-type": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz", + "integrity": "sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==", "dev": true, "license": "MIT", - "dependencies": { - "resolve-from": "^5.0.0" - }, "engines": { - "node": ">=8" + "node": ">=8.0.0" } }, - "node_modules/resolve-from": { - "version": "5.0.0", - "dev": true, + "node_modules/get-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/get-proto/-/get-proto-1.0.1.tgz", + "integrity": "sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==", "license": "MIT", + "dependencies": { + "dunder-proto": "^1.0.1", + "es-object-atoms": "^1.0.0" + }, "engines": { - "node": ">=8" + "node": ">= 0.4" } }, - "node_modules/resolve-url": { - "version": "0.2.1", - "dev": true, - "license": "MIT" - }, - "node_modules/ret": { - "version": "0.1.15", + "node_modules/get-stream": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", + "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", "dev": true, "license": "MIT", "engines": { - "node": ">=0.12" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/rimraf": { - "version": "3.0.2", + "node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "deprecated": "Glob versions prior to v9 are no longer supported", "dev": true, "license": "ISC", "dependencies": { - "glob": "^7.1.3" + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" }, - "bin": { - "rimraf": "bin.js" + "engines": { + "node": "*" }, "funding": { "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/rsvp": { - "version": "4.8.5", + "node_modules/globals": { + "version": "11.12.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", + "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", "dev": true, "license": "MIT", "engines": { - "node": "6.* || >= 7.*" + "node": ">=4" } }, - "node_modules/safe-array-concat": { - "version": "1.0.0", - "dev": true, + "node_modules/gopd": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.2.0.tgz", + "integrity": "sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==", "license": "MIT", - "dependencies": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.2.0", - "has-symbols": "^1.0.3", - "isarray": "^2.0.5" - }, "engines": { - "node": ">=0.4" + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/safe-regex": { - "version": "1.1.0", + "node_modules/graceful-fs": { + "version": "4.2.11", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", + "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==", + "dev": true, + "license": "ISC" + }, + "node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", "dev": true, "license": "MIT", - "dependencies": { - "ret": "~0.1.10" + "engines": { + "node": ">=8" } }, - "node_modules/safe-regex-test": { - "version": "1.0.0", - "dev": true, + "node_modules/has-symbols": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.1.0.tgz", + "integrity": "sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==", + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-tostringtag": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.2.tgz", + "integrity": "sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==", "license": "MIT", "dependencies": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.1.3", - "is-regex": "^1.1.4" + "has-symbols": "^1.0.3" + }, + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/safer-buffer": { - "version": "2.1.2", + "node_modules/hasown": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", + "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", + "license": "MIT", + "dependencies": { + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/html-escaper": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", + "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", "dev": true, "license": "MIT" }, - "node_modules/sane": { - "version": "4.1.0", + "node_modules/human-signals": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz", + "integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": ">=10.17.0" + } + }, + "node_modules/import-local": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/import-local/-/import-local-3.2.0.tgz", + "integrity": "sha512-2SPlun1JUPWoM6t3F0dw0FkCF/jWY8kttcY4f599GLTSjh2OCuuhdTkJQsEcZzBqbXZGKMK2OqW1oZsjtf/gQA==", "dev": true, "license": "MIT", "dependencies": { - "@cnakazawa/watch": "^1.0.3", - "anymatch": "^2.0.0", - "capture-exit": "^2.0.0", - "exec-sh": "^0.3.2", - "execa": "^1.0.0", - "fb-watchman": "^2.0.0", - "micromatch": "^3.1.4", - "minimist": "^1.1.1", - "walker": "~1.0.5" + "pkg-dir": "^4.2.0", + "resolve-cwd": "^3.0.0" }, "bin": { - "sane": "src/cli.js" + "import-local-fixture": "fixtures/cli.js" }, "engines": { - "node": "6.* || 8.* || >= 10.*" + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/sane/node_modules/anymatch": { - "version": "2.0.0", + "node_modules/imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.8.19" + } + }, + "node_modules/inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "deprecated": "This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.", "dev": true, "license": "ISC", "dependencies": { - "micromatch": "^3.1.4", - "normalize-path": "^2.1.1" + "once": "^1.3.0", + "wrappy": "1" } }, - "node_modules/sane/node_modules/cross-spawn": { - "version": "6.0.5", + "node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", + "dev": true, + "license": "ISC" + }, + "node_modules/is-arrayish": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==", + "dev": true, + "license": "MIT" + }, + "node_modules/is-core-module": { + "version": "2.16.1", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.16.1.tgz", + "integrity": "sha512-UfoeMA6fIJ8wTYFEUjelnaGI67v6+N7qXJEvQuIGa99l4xsCruSYOVSQ0uPANn4dAzm8lkYPaKLrrijLq7x23w==", "dev": true, "license": "MIT", "dependencies": { - "nice-try": "^1.0.4", - "path-key": "^2.0.1", - "semver": "^5.5.0", - "shebang-command": "^1.2.0", - "which": "^1.2.9" + "hasown": "^2.0.2" }, "engines": { - "node": ">=4.8" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/sane/node_modules/execa": { - "version": "1.0.0", + "node_modules/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, "license": "MIT", - "dependencies": { - "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" - }, "engines": { - "node": ">=6" + "node": ">=8" } }, - "node_modules/sane/node_modules/get-stream": { - "version": "4.1.0", + "node_modules/is-generator-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-generator-fn/-/is-generator-fn-2.1.0.tgz", + "integrity": "sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ==", "dev": true, "license": "MIT", - "dependencies": { - "pump": "^3.0.0" - }, "engines": { "node": ">=6" } }, - "node_modules/sane/node_modules/is-stream": { - "version": "1.1.0", + "node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", "dev": true, "license": "MIT", "engines": { - "node": ">=0.10.0" + "node": ">=0.12.0" } }, - "node_modules/sane/node_modules/normalize-path": { - "version": "2.1.1", + "node_modules/is-stream": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", + "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", "dev": true, "license": "MIT", - "dependencies": { - "remove-trailing-separator": "^1.0.1" - }, "engines": { - "node": ">=0.10.0" + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/sane/node_modules/npm-run-path": { - "version": "2.0.2", + "node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", "dev": true, - "license": "MIT", - "dependencies": { - "path-key": "^2.0.0" - }, + "license": "ISC" + }, + "node_modules/istanbul-lib-coverage": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.2.tgz", + "integrity": "sha512-O8dpsF+r0WV/8MNRKfnmrtCWhuKjxrq2w+jpzBL5UZKTi2LeVWnWOmWRxFlesJONmc+wLAGvKQZEOanko0LFTg==", + "dev": true, + "license": "BSD-3-Clause", "engines": { - "node": ">=4" + "node": ">=8" } }, - "node_modules/sane/node_modules/path-key": { - "version": "2.0.1", + "node_modules/istanbul-lib-instrument": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-6.0.3.tgz", + "integrity": "sha512-Vtgk7L/R2JHyyGW07spoFlB8/lpjiOLTjMdms6AFMraYt3BaJauod/NGrfnVG/y4Ix1JEuMRPDPEj2ua+zz1/Q==", "dev": true, - "license": "MIT", + "license": "BSD-3-Clause", + "dependencies": { + "@babel/core": "^7.23.9", + "@babel/parser": "^7.23.9", + "@istanbuljs/schema": "^0.1.3", + "istanbul-lib-coverage": "^3.2.0", + "semver": "^7.5.4" + }, "engines": { - "node": ">=4" + "node": ">=10" } }, - "node_modules/sane/node_modules/semver": { - "version": "5.7.2", + "node_modules/istanbul-lib-instrument/node_modules/semver": { + "version": "7.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", + "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", "dev": true, "license": "ISC", "bin": { - "semver": "bin/semver" + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" } }, - "node_modules/sane/node_modules/shebang-command": { - "version": "1.2.0", + "node_modules/istanbul-lib-report": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.1.tgz", + "integrity": "sha512-GCfE1mtsHGOELCU8e/Z7YWzpmybrx/+dSTfLrvY8qRmaY6zXTKWn6WQIjaAFw069icm6GVMNkgu0NzI4iPZUNw==", "dev": true, - "license": "MIT", + "license": "BSD-3-Clause", "dependencies": { - "shebang-regex": "^1.0.0" + "istanbul-lib-coverage": "^3.0.0", + "make-dir": "^4.0.0", + "supports-color": "^7.1.0" }, "engines": { - "node": ">=0.10.0" + "node": ">=10" } }, - "node_modules/sane/node_modules/shebang-regex": { - "version": "1.0.0", + "node_modules/istanbul-lib-source-maps": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz", + "integrity": "sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==", "dev": true, - "license": "MIT", + "license": "BSD-3-Clause", + "dependencies": { + "debug": "^4.1.1", + "istanbul-lib-coverage": "^3.0.0", + "source-map": "^0.6.1" + }, "engines": { - "node": ">=0.10.0" + "node": ">=10" } }, - "node_modules/sane/node_modules/which": { - "version": "1.3.1", + "node_modules/istanbul-reports": { + "version": "3.1.7", + "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.7.tgz", + "integrity": "sha512-BewmUXImeuRk2YY0PVbxgKAysvhRPUQE0h5QRM++nVWyubKGV0l8qQ5op8+B2DOmwSe63Jivj0BjkPQVf8fP5g==", "dev": true, - "license": "ISC", + "license": "BSD-3-Clause", "dependencies": { - "isexe": "^2.0.0" + "html-escaper": "^2.0.0", + "istanbul-lib-report": "^3.0.0" }, - "bin": { - "which": "bin/which" + "engines": { + "node": ">=8" } }, - "node_modules/saxes": { - "version": "5.0.1", + "node_modules/jake": { + "version": "10.9.2", + "resolved": "https://registry.npmjs.org/jake/-/jake-10.9.2.tgz", + "integrity": "sha512-2P4SQ0HrLQ+fw6llpLnOaGAvN2Zu6778SJMrCUwns4fOoG9ayrTiZk3VV8sCPkVZF8ab0zksVpS8FDY5pRCNBA==", "dev": true, - "license": "ISC", + "license": "Apache-2.0", "dependencies": { - "xmlchars": "^2.2.0" + "async": "^3.2.3", + "chalk": "^4.0.2", + "filelist": "^1.0.4", + "minimatch": "^3.1.2" + }, + "bin": { + "jake": "bin/cli.js" }, "engines": { "node": ">=10" } }, - "node_modules/semver": { - "version": "6.3.1", + "node_modules/jest": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest/-/jest-29.7.0.tgz", + "integrity": "sha512-NIy3oAFp9shda19hy4HK0HRTWKtPJmGdnvywu01nOqNC2vZg+Z+fvJDxpMQA88eb2I9EcafcdjYgsDthnYTvGw==", "dev": true, - "license": "ISC", + "license": "MIT", + "dependencies": { + "@jest/core": "^29.7.0", + "@jest/types": "^29.6.3", + "import-local": "^3.0.2", + "jest-cli": "^29.7.0" + }, "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/set-blocking": { - "version": "2.0.0", - "dev": true, - "license": "ISC" + "jest": "bin/jest.js" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" + }, + "peerDependenciesMeta": { + "node-notifier": { + "optional": true + } + } }, - "node_modules/set-value": { - "version": "2.0.1", + "node_modules/jest-changed-files": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-29.7.0.tgz", + "integrity": "sha512-fEArFiwf1BpQ+4bXSprcDc3/x4HSzL4al2tozwVpDFpsxALjLYdyiIK4e5Vz66GQJIbXJ82+35PtysofptNX2w==", "dev": true, "license": "MIT", "dependencies": { - "extend-shallow": "^2.0.1", - "is-extendable": "^0.1.1", - "is-plain-object": "^2.0.3", - "split-string": "^3.0.1" + "execa": "^5.0.0", + "jest-util": "^29.7.0", + "p-limit": "^3.1.0" }, "engines": { - "node": ">=0.10.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/set-value/node_modules/extend-shallow": { - "version": "2.0.1", + "node_modules/jest-circus": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-circus/-/jest-circus-29.7.0.tgz", + "integrity": "sha512-3E1nCMgipcTkCocFwM90XXQab9bS+GMsjdpmPrlelaxwD93Ad8iVEjX/vvHPdLPnFf+L40u+5+iutRdA1N9myw==", "dev": true, "license": "MIT", "dependencies": { - "is-extendable": "^0.1.0" + "@jest/environment": "^29.7.0", + "@jest/expect": "^29.7.0", + "@jest/test-result": "^29.7.0", + "@jest/types": "^29.6.3", + "@types/node": "*", + "chalk": "^4.0.0", + "co": "^4.6.0", + "dedent": "^1.0.0", + "is-generator-fn": "^2.0.0", + "jest-each": "^29.7.0", + "jest-matcher-utils": "^29.7.0", + "jest-message-util": "^29.7.0", + "jest-runtime": "^29.7.0", + "jest-snapshot": "^29.7.0", + "jest-util": "^29.7.0", + "p-limit": "^3.1.0", + "pretty-format": "^29.7.0", + "pure-rand": "^6.0.0", + "slash": "^3.0.0", + "stack-utils": "^2.0.3" }, "engines": { - "node": ">=0.10.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/set-value/node_modules/is-extendable": { - "version": "0.1.1", + "node_modules/jest-cli": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-cli/-/jest-cli-29.7.0.tgz", + "integrity": "sha512-OVVobw2IubN/GSYsxETi+gOe7Ka59EFMR/twOU3Jb2GnKKeMGJB5SGUUrEz3SFVmJASUdZUzy83sLNNQ2gZslg==", "dev": true, "license": "MIT", + "dependencies": { + "@jest/core": "^29.7.0", + "@jest/test-result": "^29.7.0", + "@jest/types": "^29.6.3", + "chalk": "^4.0.0", + "create-jest": "^29.7.0", + "exit": "^0.1.2", + "import-local": "^3.0.2", + "jest-config": "^29.7.0", + "jest-util": "^29.7.0", + "jest-validate": "^29.7.0", + "yargs": "^17.3.1" + }, + "bin": { + "jest": "bin/jest.js" + }, "engines": { - "node": ">=0.10.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" + }, + "peerDependenciesMeta": { + "node-notifier": { + "optional": true + } } }, - "node_modules/shebang-command": { - "version": "2.0.0", + "node_modules/jest-config": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-config/-/jest-config-29.7.0.tgz", + "integrity": "sha512-uXbpfeQ7R6TZBqI3/TxCU4q4ttk3u0PJeC+E0zbfSoSjq6bJ7buBPxzQPL0ifrkY4DNu4JUdk0ImlBUYi840eQ==", "dev": true, "license": "MIT", "dependencies": { - "shebang-regex": "^3.0.0" + "@babel/core": "^7.11.6", + "@jest/test-sequencer": "^29.7.0", + "@jest/types": "^29.6.3", + "babel-jest": "^29.7.0", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "deepmerge": "^4.2.2", + "glob": "^7.1.3", + "graceful-fs": "^4.2.9", + "jest-circus": "^29.7.0", + "jest-environment-node": "^29.7.0", + "jest-get-type": "^29.6.3", + "jest-regex-util": "^29.6.3", + "jest-resolve": "^29.7.0", + "jest-runner": "^29.7.0", + "jest-util": "^29.7.0", + "jest-validate": "^29.7.0", + "micromatch": "^4.0.4", + "parse-json": "^5.2.0", + "pretty-format": "^29.7.0", + "slash": "^3.0.0", + "strip-json-comments": "^3.1.1" }, "engines": { - "node": ">=8" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "@types/node": "*", + "ts-node": ">=9.0.0" + }, + "peerDependenciesMeta": { + "@types/node": { + "optional": true + }, + "ts-node": { + "optional": true + } } }, - "node_modules/shebang-regex": { - "version": "3.0.0", + "node_modules/jest-diff": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-29.7.0.tgz", + "integrity": "sha512-LMIgiIrhigmPrs03JHpxUh2yISK3vLFPkAodPeo0+BuF7wA2FoQbkEg1u8gBYBThncu7e1oEDUfIXVuTqLRUjw==", "dev": true, "license": "MIT", + "dependencies": { + "chalk": "^4.0.0", + "diff-sequences": "^29.6.3", + "jest-get-type": "^29.6.3", + "pretty-format": "^29.7.0" + }, "engines": { - "node": ">=8" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/shell-quote": { - "version": "1.8.1", + "node_modules/jest-docblock": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-docblock/-/jest-docblock-29.7.0.tgz", + "integrity": "sha512-q617Auw3A612guyaFgsbFeYpNP5t2aoUNLwBUbc/0kD1R4t9ixDbyFTHd1nok4epoVFpr7PmeWHrhvuV3XaJ4g==", "dev": true, "license": "MIT", - "funding": { - "url": "https://github.com/sponsors/ljharb" + "dependencies": { + "detect-newline": "^3.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/shellwords": { - "version": "0.1.1", + "node_modules/jest-each": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-each/-/jest-each-29.7.0.tgz", + "integrity": "sha512-gns+Er14+ZrEoC5fhOfYCY1LOHHr0TI+rQUHZS8Ttw2l7gl+80eHc/gFf2Ktkw0+SIACDTeWvpFcv3B04VembQ==", "dev": true, "license": "MIT", - "optional": true + "dependencies": { + "@jest/types": "^29.6.3", + "chalk": "^4.0.0", + "jest-get-type": "^29.6.3", + "jest-util": "^29.7.0", + "pretty-format": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } }, - "node_modules/side-channel": { - "version": "1.0.4", + "node_modules/jest-environment-node": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-29.7.0.tgz", + "integrity": "sha512-DOSwCRqXirTOyheM+4d5YZOrWcdu0LNZ87ewUoywbcb2XR4wKgqiG8vNeYwhjFMbEkfju7wx2GYH0P2gevGvFw==", "dev": true, "license": "MIT", "dependencies": { - "call-bind": "^1.0.0", - "get-intrinsic": "^1.0.2", - "object-inspect": "^1.9.0" + "@jest/environment": "^29.7.0", + "@jest/fake-timers": "^29.7.0", + "@jest/types": "^29.6.3", + "@types/node": "*", + "jest-mock": "^29.7.0", + "jest-util": "^29.7.0" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/signal-exit": { - "version": "3.0.7", - "dev": true, - "license": "ISC" - }, - "node_modules/sisteransi": { - "version": "1.0.5", - "dev": true, - "license": "MIT" - }, - "node_modules/slash": { - "version": "2.0.0", + "node_modules/jest-get-type": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-29.6.3.tgz", + "integrity": "sha512-zrteXnqYxfQh7l5FHyL38jL39di8H8rHoecLH3JNxH3BwOrBsNeabdap5e0I23lD4HHI8W5VFBZqG4Eaq5LNcw==", "dev": true, "license": "MIT", "engines": { - "node": ">=6" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/snapdragon": { - "version": "0.8.2", + "node_modules/jest-haste-map": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-29.7.0.tgz", + "integrity": "sha512-fP8u2pyfqx0K1rGn1R9pyE0/KTn+G7PxktWidOBTqFPLYX0b9ksaMFkhK5vrS3DVun09pckLdlx90QthlW7AmA==", "dev": true, "license": "MIT", "dependencies": { - "base": "^0.11.1", - "debug": "^2.2.0", - "define-property": "^0.2.5", - "extend-shallow": "^2.0.1", - "map-cache": "^0.2.2", - "source-map": "^0.5.6", - "source-map-resolve": "^0.5.0", - "use": "^3.1.0" + "@jest/types": "^29.6.3", + "@types/graceful-fs": "^4.1.3", + "@types/node": "*", + "anymatch": "^3.0.3", + "fb-watchman": "^2.0.0", + "graceful-fs": "^4.2.9", + "jest-regex-util": "^29.6.3", + "jest-util": "^29.7.0", + "jest-worker": "^29.7.0", + "micromatch": "^4.0.4", + "walker": "^1.0.8" }, "engines": { - "node": ">=0.10.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "optionalDependencies": { + "fsevents": "^2.3.2" } }, - "node_modules/snapdragon-node": { - "version": "2.1.1", + "node_modules/jest-leak-detector": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-29.7.0.tgz", + "integrity": "sha512-kYA8IJcSYtST2BY9I+SMC32nDpBT3J2NvWJx8+JCuCdl/CR1I4EKUJROiP8XtCcxqgTTBGJNdbB1A8XRKbTetw==", "dev": true, "license": "MIT", "dependencies": { - "define-property": "^1.0.0", - "isobject": "^3.0.0", - "snapdragon-util": "^3.0.1" + "jest-get-type": "^29.6.3", + "pretty-format": "^29.7.0" }, "engines": { - "node": ">=0.10.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/snapdragon-node/node_modules/define-property": { - "version": "1.0.0", + "node_modules/jest-matcher-utils": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-29.7.0.tgz", + "integrity": "sha512-sBkD+Xi9DtcChsI3L3u0+N0opgPYnCRPtGcQYrgXmR+hmt/fYfWAL0xRXYU8eWOdfuLgBe0YCW3AFtnRLagq/g==", "dev": true, "license": "MIT", "dependencies": { - "is-descriptor": "^1.0.0" + "chalk": "^4.0.0", + "jest-diff": "^29.7.0", + "jest-get-type": "^29.6.3", + "pretty-format": "^29.7.0" }, "engines": { - "node": ">=0.10.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/snapdragon-util": { - "version": "3.0.1", + "node_modules/jest-message-util": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-29.7.0.tgz", + "integrity": "sha512-GBEV4GRADeP+qtB2+6u61stea8mGcOT4mCtrYISZwfu9/ISHFJ/5zOMXYbpBE9RsS5+Gb63DW4FgmnKJ79Kf6w==", "dev": true, "license": "MIT", "dependencies": { - "kind-of": "^3.2.0" + "@babel/code-frame": "^7.12.13", + "@jest/types": "^29.6.3", + "@types/stack-utils": "^2.0.0", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "micromatch": "^4.0.4", + "pretty-format": "^29.7.0", + "slash": "^3.0.0", + "stack-utils": "^2.0.3" }, "engines": { - "node": ">=0.10.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/snapdragon-util/node_modules/kind-of": { - "version": "3.2.2", + "node_modules/jest-mock": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-29.7.0.tgz", + "integrity": "sha512-ITOMZn+UkYS4ZFh83xYAOzWStloNzJFO2s8DWrE4lhtGD+AorgnbkiKERe4wQVBydIGPx059g6riW5Btp6Llnw==", "dev": true, "license": "MIT", "dependencies": { - "is-buffer": "^1.1.5" + "@jest/types": "^29.6.3", + "@types/node": "*", + "jest-util": "^29.7.0" }, "engines": { - "node": ">=0.10.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/snapdragon/node_modules/debug": { - "version": "2.6.9", + "node_modules/jest-pnp-resolver": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/jest-pnp-resolver/-/jest-pnp-resolver-1.2.3.tgz", + "integrity": "sha512-+3NpwQEnRoIBtx4fyhblQDPgJI0H1IEIkX7ShLUjPGA7TtUTvI1oiKi3SR4oBR0hQhQR80l4WAe5RrXBwWMA8w==", "dev": true, "license": "MIT", - "dependencies": { - "ms": "2.0.0" + "engines": { + "node": ">=6" + }, + "peerDependencies": { + "jest-resolve": "*" + }, + "peerDependenciesMeta": { + "jest-resolve": { + "optional": true + } + } + }, + "node_modules/jest-regex-util": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-29.6.3.tgz", + "integrity": "sha512-KJJBsRCyyLNWCNBOvZyRDnAIfUiRJ8v+hOBQYGn8gDyF3UegwiP4gwRR3/SDa42g1YbVycTidUF3rKjyLFDWbg==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/snapdragon/node_modules/define-property": { - "version": "0.2.5", + "node_modules/jest-resolve": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-29.7.0.tgz", + "integrity": "sha512-IOVhZSrg+UvVAshDSDtHyFCCBUl/Q3AAJv8iZ6ZjnZ74xzvwuzLXid9IIIPgTnY62SJjfuupMKZsZQRsCvxEgA==", "dev": true, "license": "MIT", "dependencies": { - "is-descriptor": "^0.1.0" + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^29.7.0", + "jest-pnp-resolver": "^1.2.2", + "jest-util": "^29.7.0", + "jest-validate": "^29.7.0", + "resolve": "^1.20.0", + "resolve.exports": "^2.0.0", + "slash": "^3.0.0" }, "engines": { - "node": ">=0.10.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/snapdragon/node_modules/extend-shallow": { - "version": "2.0.1", + "node_modules/jest-resolve-dependencies": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-29.7.0.tgz", + "integrity": "sha512-un0zD/6qxJ+S0et7WxeI3H5XSe9lTBBR7bOHCHXkKR6luG5mwDDlIzVQ0V5cZCuoTgEdcdwzTghYkTWfubi+nA==", "dev": true, "license": "MIT", "dependencies": { - "is-extendable": "^0.1.0" + "jest-regex-util": "^29.6.3", + "jest-snapshot": "^29.7.0" }, "engines": { - "node": ">=0.10.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/snapdragon/node_modules/is-accessor-descriptor": { - "version": "0.1.6", + "node_modules/jest-runner": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-runner/-/jest-runner-29.7.0.tgz", + "integrity": "sha512-fsc4N6cPCAahybGBfTRcq5wFR6fpLznMg47sY5aDpsoejOcVYFb07AHuSnR0liMcPTgBsA3ZJL6kFOjPdoNipQ==", "dev": true, "license": "MIT", "dependencies": { - "kind-of": "^3.0.2" + "@jest/console": "^29.7.0", + "@jest/environment": "^29.7.0", + "@jest/test-result": "^29.7.0", + "@jest/transform": "^29.7.0", + "@jest/types": "^29.6.3", + "@types/node": "*", + "chalk": "^4.0.0", + "emittery": "^0.13.1", + "graceful-fs": "^4.2.9", + "jest-docblock": "^29.7.0", + "jest-environment-node": "^29.7.0", + "jest-haste-map": "^29.7.0", + "jest-leak-detector": "^29.7.0", + "jest-message-util": "^29.7.0", + "jest-resolve": "^29.7.0", + "jest-runtime": "^29.7.0", + "jest-util": "^29.7.0", + "jest-watcher": "^29.7.0", + "jest-worker": "^29.7.0", + "p-limit": "^3.1.0", + "source-map-support": "0.5.13" }, "engines": { - "node": ">=0.10.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/snapdragon/node_modules/is-accessor-descriptor/node_modules/kind-of": { - "version": "3.2.2", + "node_modules/jest-runtime": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-runtime/-/jest-runtime-29.7.0.tgz", + "integrity": "sha512-gUnLjgwdGqW7B4LvOIkbKs9WGbn+QLqRQQ9juC6HndeDiezIwhDP+mhMwHWCEcfQ5RUXa6OPnFF8BJh5xegwwQ==", "dev": true, "license": "MIT", "dependencies": { - "is-buffer": "^1.1.5" + "@jest/environment": "^29.7.0", + "@jest/fake-timers": "^29.7.0", + "@jest/globals": "^29.7.0", + "@jest/source-map": "^29.6.3", + "@jest/test-result": "^29.7.0", + "@jest/transform": "^29.7.0", + "@jest/types": "^29.6.3", + "@types/node": "*", + "chalk": "^4.0.0", + "cjs-module-lexer": "^1.0.0", + "collect-v8-coverage": "^1.0.0", + "glob": "^7.1.3", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^29.7.0", + "jest-message-util": "^29.7.0", + "jest-mock": "^29.7.0", + "jest-regex-util": "^29.6.3", + "jest-resolve": "^29.7.0", + "jest-snapshot": "^29.7.0", + "jest-util": "^29.7.0", + "slash": "^3.0.0", + "strip-bom": "^4.0.0" }, "engines": { - "node": ">=0.10.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/snapdragon/node_modules/is-data-descriptor": { - "version": "0.1.4", + "node_modules/jest-snapshot": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-29.7.0.tgz", + "integrity": "sha512-Rm0BMWtxBcioHr1/OX5YCP8Uov4riHvKPknOGs804Zg9JGZgmIBkbtlxJC/7Z4msKYVbIJtfU+tKb8xlYNfdkw==", "dev": true, "license": "MIT", "dependencies": { - "kind-of": "^3.0.2" + "@babel/core": "^7.11.6", + "@babel/generator": "^7.7.2", + "@babel/plugin-syntax-jsx": "^7.7.2", + "@babel/plugin-syntax-typescript": "^7.7.2", + "@babel/types": "^7.3.3", + "@jest/expect-utils": "^29.7.0", + "@jest/transform": "^29.7.0", + "@jest/types": "^29.6.3", + "babel-preset-current-node-syntax": "^1.0.0", + "chalk": "^4.0.0", + "expect": "^29.7.0", + "graceful-fs": "^4.2.9", + "jest-diff": "^29.7.0", + "jest-get-type": "^29.6.3", + "jest-matcher-utils": "^29.7.0", + "jest-message-util": "^29.7.0", + "jest-util": "^29.7.0", + "natural-compare": "^1.4.0", + "pretty-format": "^29.7.0", + "semver": "^7.5.3" }, "engines": { - "node": ">=0.10.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/snapdragon/node_modules/is-data-descriptor/node_modules/kind-of": { - "version": "3.2.2", + "node_modules/jest-snapshot/node_modules/semver": { + "version": "7.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", + "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/jest-util": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-29.7.0.tgz", + "integrity": "sha512-z6EbKajIpqGKU56y5KBUgy1dt1ihhQJgWzUlZHArA/+X2ad7Cb5iF+AK1EWVL/Bo7Rz9uurpqw6SiBCefUbCGA==", "dev": true, "license": "MIT", "dependencies": { - "is-buffer": "^1.1.5" + "@jest/types": "^29.6.3", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" }, "engines": { - "node": ">=0.10.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/snapdragon/node_modules/is-descriptor": { - "version": "0.1.6", + "node_modules/jest-validate": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-29.7.0.tgz", + "integrity": "sha512-ZB7wHqaRGVw/9hST/OuFUReG7M8vKeq0/J2egIGLdvjHCmYqGARhzXmtgi+gVeZ5uXFF219aOc3Ls2yLg27tkw==", "dev": true, "license": "MIT", "dependencies": { - "is-accessor-descriptor": "^0.1.6", - "is-data-descriptor": "^0.1.4", - "kind-of": "^5.0.0" + "@jest/types": "^29.6.3", + "camelcase": "^6.2.0", + "chalk": "^4.0.0", + "jest-get-type": "^29.6.3", + "leven": "^3.1.0", + "pretty-format": "^29.7.0" }, "engines": { - "node": ">=0.10.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/snapdragon/node_modules/is-extendable": { - "version": "0.1.1", + "node_modules/jest-validate/node_modules/camelcase": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", + "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", "dev": true, "license": "MIT", "engines": { - "node": ">=0.10.0" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/snapdragon/node_modules/kind-of": { - "version": "5.1.0", + "node_modules/jest-watcher": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-watcher/-/jest-watcher-29.7.0.tgz", + "integrity": "sha512-49Fg7WXkU3Vl2h6LbLtMQ/HyB6rXSIX7SqvBLQmssRBGN9I0PNvPmAmCWSOY6SOvrjhI/F7/bGAv9RtnsPA03g==", "dev": true, "license": "MIT", + "dependencies": { + "@jest/test-result": "^29.7.0", + "@jest/types": "^29.6.3", + "@types/node": "*", + "ansi-escapes": "^4.2.1", + "chalk": "^4.0.0", + "emittery": "^0.13.1", + "jest-util": "^29.7.0", + "string-length": "^4.0.1" + }, "engines": { - "node": ">=0.10.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/snapdragon/node_modules/source-map": { - "version": "0.5.7", + "node_modules/jest-worker": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-29.7.0.tgz", + "integrity": "sha512-eIz2msL/EzL9UFTFFx7jBTkeZfku0yUAyZZZmJ93H2TYEiroIx2PQjEXcwYtYl8zXCxb+PAmA2hLIt/6ZEkPHw==", "dev": true, - "license": "BSD-3-Clause", + "license": "MIT", + "dependencies": { + "@types/node": "*", + "jest-util": "^29.7.0", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" + }, "engines": { - "node": ">=0.10.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/source-map": { - "version": "0.6.1", + "node_modules/jest-worker/node_modules/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, - "license": "BSD-3-Clause", + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, "engines": { - "node": ">=0.10.0" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/supports-color?sponsor=1" } }, - "node_modules/source-map-resolve": { - "version": "0.5.3", + "node_modules/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, + "license": "MIT" + }, + "node_modules/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, "license": "MIT", "dependencies": { - "atob": "^2.1.2", - "decode-uri-component": "^0.2.0", - "resolve-url": "^0.2.1", - "source-map-url": "^0.4.0", - "urix": "^0.1.0" + "argparse": "^1.0.7", + "esprima": "^4.0.0" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" } }, - "node_modules/source-map-support": { - "version": "0.5.21", + "node_modules/jsesc": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-3.1.0.tgz", + "integrity": "sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==", "dev": true, "license": "MIT", - "dependencies": { - "buffer-from": "^1.0.0", - "source-map": "^0.6.0" + "bin": { + "jsesc": "bin/jsesc" + }, + "engines": { + "node": ">=6" } }, - "node_modules/source-map-url": { - "version": "0.4.1", + "node_modules/json-parse-even-better-errors": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", + "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", "dev": true, "license": "MIT" }, - "node_modules/spdx-correct": { - "version": "3.2.0", + "node_modules/json5": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", + "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", "dev": true, - "license": "Apache-2.0", - "dependencies": { - "spdx-expression-parse": "^3.0.0", - "spdx-license-ids": "^3.0.0" + "license": "MIT", + "bin": { + "json5": "lib/cli.js" + }, + "engines": { + "node": ">=6" } }, - "node_modules/spdx-exceptions": { - "version": "2.3.0", + "node_modules/kleur": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz", + "integrity": "sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==", "dev": true, - "license": "CC-BY-3.0" + "license": "MIT", + "engines": { + "node": ">=6" + } }, - "node_modules/spdx-expression-parse": { - "version": "3.0.1", + "node_modules/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, "license": "MIT", - "dependencies": { - "spdx-exceptions": "^2.1.0", - "spdx-license-ids": "^3.0.0" + "engines": { + "node": ">=6" } }, - "node_modules/spdx-license-ids": { - "version": "3.0.13", + "node_modules/lines-and-columns": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", + "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==", "dev": true, - "license": "CC0-1.0" + "license": "MIT" }, - "node_modules/split-string": { - "version": "3.1.0", + "node_modules/locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", "dev": true, "license": "MIT", "dependencies": { - "extend-shallow": "^3.0.0" + "p-locate": "^4.1.0" }, "engines": { - "node": ">=0.10.0" + "node": ">=8" } }, - "node_modules/sprintf-js": { - "version": "1.0.3", + "node_modules/lodash.memoize": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-4.1.2.tgz", + "integrity": "sha512-t7j+NzmgnQzTAYXcsHYLgimltOV1MXHtlOWf6GjL9Kj8GK5FInw5JotxvbOs+IvV1/Dzo04/fCGfLVs7aXb4Ag==", "dev": true, - "license": "BSD-3-Clause" + "license": "MIT" }, - "node_modules/stack-utils": { - "version": "2.0.6", + "node_modules/lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "dev": true, + "license": "ISC", + "dependencies": { + "yallist": "^3.0.2" + } + }, + "node_modules/make-dir": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-4.0.0.tgz", + "integrity": "sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw==", "dev": true, "license": "MIT", "dependencies": { - "escape-string-regexp": "^2.0.0" + "semver": "^7.5.3" }, "engines": { "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/static-extend": { - "version": "0.1.2", + "node_modules/make-dir/node_modules/semver": { + "version": "7.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", + "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", "dev": true, - "license": "MIT", - "dependencies": { - "define-property": "^0.2.5", - "object-copy": "^0.1.0" + "license": "ISC", + "bin": { + "semver": "bin/semver.js" }, "engines": { - "node": ">=0.10.0" + "node": ">=10" } }, - "node_modules/static-extend/node_modules/define-property": { - "version": "0.2.5", + "node_modules/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, + "license": "ISC" + }, + "node_modules/makeerror": { + "version": "1.0.12", + "resolved": "https://registry.npmjs.org/makeerror/-/makeerror-1.0.12.tgz", + "integrity": "sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg==", "dev": true, - "license": "MIT", + "license": "BSD-3-Clause", "dependencies": { - "is-descriptor": "^0.1.0" - }, + "tmpl": "1.0.5" + } + }, + "node_modules/math-intrinsics": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/math-intrinsics/-/math-intrinsics-1.1.0.tgz", + "integrity": "sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==", + "license": "MIT", "engines": { - "node": ">=0.10.0" + "node": ">= 0.4" } }, - "node_modules/static-extend/node_modules/is-accessor-descriptor": { - "version": "0.1.6", + "node_modules/merge-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", + "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", + "dev": true, + "license": "MIT" + }, + "node_modules/micromatch": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz", + "integrity": "sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==", "dev": true, "license": "MIT", "dependencies": { - "kind-of": "^3.0.2" + "braces": "^3.0.3", + "picomatch": "^2.3.1" }, "engines": { - "node": ">=0.10.0" + "node": ">=8.6" } }, - "node_modules/static-extend/node_modules/is-accessor-descriptor/node_modules/kind-of": { - "version": "3.2.2", - "dev": true, + "node_modules/mime-db": { + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", "license": "MIT", - "dependencies": { - "is-buffer": "^1.1.5" - }, "engines": { - "node": ">=0.10.0" + "node": ">= 0.6" } }, - "node_modules/static-extend/node_modules/is-data-descriptor": { - "version": "0.1.4", - "dev": true, + "node_modules/mime-types": { + "version": "2.1.35", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", + "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", "license": "MIT", "dependencies": { - "kind-of": "^3.0.2" + "mime-db": "1.52.0" }, "engines": { - "node": ">=0.10.0" + "node": ">= 0.6" } }, - "node_modules/static-extend/node_modules/is-data-descriptor/node_modules/kind-of": { - "version": "3.2.2", + "node_modules/mimic-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", + "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", "dev": true, "license": "MIT", - "dependencies": { - "is-buffer": "^1.1.5" - }, "engines": { - "node": ">=0.10.0" + "node": ">=6" } }, - "node_modules/static-extend/node_modules/is-descriptor": { - "version": "0.1.6", + "node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", "dev": true, - "license": "MIT", + "license": "ISC", "dependencies": { - "is-accessor-descriptor": "^0.1.6", - "is-data-descriptor": "^0.1.4", - "kind-of": "^5.0.0" + "brace-expansion": "^1.1.7" }, "engines": { - "node": ">=0.10.0" + "node": "*" } }, - "node_modules/static-extend/node_modules/kind-of": { - "version": "5.1.0", + "node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "dev": true, + "license": "MIT" + }, + "node_modules/natural-compare": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", + "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", + "dev": true, + "license": "MIT" + }, + "node_modules/node-int64": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/node-int64/-/node-int64-0.4.0.tgz", + "integrity": "sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw==", + "dev": true, + "license": "MIT" + }, + "node_modules/node-releases": { + "version": "2.0.19", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.19.tgz", + "integrity": "sha512-xxOWJsBKtzAq7DY0J+DTzuz58K8e7sJbdgwkbMWQe8UYB6ekmsQ45q0M/tJDsGaZmbC+l7n57UV8Hl5tHxO9uw==", + "dev": true, + "license": "MIT" + }, + "node_modules/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, "license": "MIT", "engines": { "node": ">=0.10.0" } }, - "node_modules/string-length": { - "version": "4.0.2", + "node_modules/npm-run-path": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", + "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", "dev": true, "license": "MIT", "dependencies": { - "char-regex": "^1.0.2", - "strip-ansi": "^6.0.0" + "path-key": "^3.0.0" }, "engines": { - "node": ">=10" + "node": ">=8" } }, - "node_modules/string-width": { - "version": "4.2.3", + "node_modules/once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", "dev": true, - "license": "MIT", + "license": "ISC", "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=8" + "wrappy": "1" } }, - "node_modules/string.prototype.padend": { - "version": "3.1.4", + "node_modules/onetime": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", + "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", "dev": true, "license": "MIT", "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4" + "mimic-fn": "^2.1.0" }, "engines": { - "node": ">= 0.4" + "node": ">=6" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/string.prototype.trim": { - "version": "1.2.7", + "node_modules/p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", "dev": true, "license": "MIT", "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4" + "yocto-queue": "^0.1.0" }, "engines": { - "node": ">= 0.4" + "node": ">=10" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/string.prototype.trimend": { - "version": "1.0.6", + "node_modules/p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", "dev": true, "license": "MIT", "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4" + "p-limit": "^2.2.0" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "engines": { + "node": ">=8" } }, - "node_modules/string.prototype.trimstart": { - "version": "1.0.6", + "node_modules/p-locate/node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", "dev": true, "license": "MIT", "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4" + "p-try": "^2.0.0" + }, + "engines": { + "node": ">=6" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/strip-ansi": { - "version": "6.0.1", + "node_modules/p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/parse-json": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", + "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", "dev": true, "license": "MIT", "dependencies": { - "ansi-regex": "^5.0.1" + "@babel/code-frame": "^7.0.0", + "error-ex": "^1.3.1", + "json-parse-even-better-errors": "^2.3.0", + "lines-and-columns": "^1.1.6" }, "engines": { "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/strip-bom": { + "node_modules/path-exists": { "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", "dev": true, "license": "MIT", "engines": { "node": ">=8" } }, - "node_modules/strip-eof": { - "version": "1.0.0", + "node_modules/path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", "dev": true, "license": "MIT", "engines": { "node": ">=0.10.0" } }, - "node_modules/strip-final-newline": { - "version": "2.0.0", + "node_modules/path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", "dev": true, "license": "MIT", "engines": { - "node": ">=6" + "node": ">=8" } }, - "node_modules/strip-indent": { - "version": "3.0.0", + "node_modules/path-parse": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", + "dev": true, + "license": "MIT" + }, + "node_modules/picocolors": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz", + "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==", + "dev": true, + "license": "ISC" + }, + "node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", "dev": true, "license": "MIT", - "dependencies": { - "min-indent": "^1.0.0" - }, "engines": { - "node": ">=8" + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" } }, - "node_modules/supports-color": { - "version": "7.2.0", + "node_modules/pirates": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.6.tgz", + "integrity": "sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==", "dev": true, "license": "MIT", - "dependencies": { - "has-flag": "^4.0.0" - }, "engines": { - "node": ">=8" + "node": ">= 6" } }, - "node_modules/supports-hyperlinks": { - "version": "2.3.0", + "node_modules/pkg-dir": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", + "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", "dev": true, "license": "MIT", "dependencies": { - "has-flag": "^4.0.0", - "supports-color": "^7.0.0" + "find-up": "^4.0.0" }, "engines": { "node": ">=8" } }, - "node_modules/supports-preserve-symlinks-flag": { - "version": "1.0.0", + "node_modules/pretty-format": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.7.0.tgz", + "integrity": "sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==", "dev": true, "license": "MIT", - "engines": { - "node": ">= 0.4" + "dependencies": { + "@jest/schemas": "^29.6.3", + "ansi-styles": "^5.0.0", + "react-is": "^18.0.0" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/symbol-tree": { - "version": "3.2.4", - "dev": true, - "license": "MIT" - }, - "node_modules/terminal-link": { - "version": "2.1.1", + "node_modules/pretty-format/node_modules/ansi-styles": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", + "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", "dev": true, "license": "MIT", - "dependencies": { - "ansi-escapes": "^4.2.1", - "supports-hyperlinks": "^2.0.0" - }, "engines": { - "node": ">=8" + "node": ">=10" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/test-exclude": { - "version": "6.0.0", + "node_modules/prompts": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/prompts/-/prompts-2.4.2.tgz", + "integrity": "sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==", "dev": true, - "license": "ISC", + "license": "MIT", "dependencies": { - "@istanbuljs/schema": "^0.1.2", - "glob": "^7.1.4", - "minimatch": "^3.0.4" + "kleur": "^3.0.3", + "sisteransi": "^1.0.5" }, "engines": { - "node": ">=8" + "node": ">= 6" } }, - "node_modules/throat": { - "version": "5.0.0", + "node_modules/pure-rand": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/pure-rand/-/pure-rand-6.1.0.tgz", + "integrity": "sha512-bVWawvoZoBYpp6yIoQtQXHZjmz35RSVHnUOTefl8Vcjr8snTPY1wnpSPMWekcFwbxI6gtmT7rSYPFvz71ldiOA==", "dev": true, + "funding": [ + { + "type": "individual", + "url": "https://github.com/sponsors/dubzzz" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/fast-check" + } + ], "license": "MIT" }, - "node_modules/tmpl": { - "version": "1.0.5", + "node_modules/react-is": { + "version": "18.3.1", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.3.1.tgz", + "integrity": "sha512-/LLMVyas0ljjAtoYiPqYiL8VWXzUUdThrmU5+n20DZv+a+ClRoevUzw5JxU+Ieh5/c87ytoTBV9G1FiKfNJdmg==", "dev": true, - "license": "BSD-3-Clause" + "license": "MIT" }, - "node_modules/to-fast-properties": { - "version": "2.0.0", + "node_modules/require-directory": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", "dev": true, "license": "MIT", "engines": { - "node": ">=4" + "node": ">=0.10.0" } }, - "node_modules/to-object-path": { - "version": "0.3.0", + "node_modules/resolve": { + "version": "1.22.10", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.10.tgz", + "integrity": "sha512-NPRy+/ncIMeDlTAsuqwKIiferiawhefFJtkNSW0qZJEqMEb+qBt/77B/jGeeek+F0uOeN05CDa6HXbbIgtVX4w==", "dev": true, "license": "MIT", "dependencies": { - "kind-of": "^3.0.2" + "is-core-module": "^2.16.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" }, "engines": { - "node": ">=0.10.0" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/to-object-path/node_modules/kind-of": { - "version": "3.2.2", + "node_modules/resolve-cwd": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-3.0.0.tgz", + "integrity": "sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==", "dev": true, "license": "MIT", "dependencies": { - "is-buffer": "^1.1.5" + "resolve-from": "^5.0.0" }, "engines": { - "node": ">=0.10.0" + "node": ">=8" } }, - "node_modules/to-regex": { - "version": "3.0.2", + "node_modules/resolve-from": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", + "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", "dev": true, "license": "MIT", - "dependencies": { - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "regex-not": "^1.0.2", - "safe-regex": "^1.1.0" - }, "engines": { - "node": ">=0.10.0" + "node": ">=8" } }, - "node_modules/to-regex-range": { - "version": "2.1.1", + "node_modules/resolve.exports": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/resolve.exports/-/resolve.exports-2.0.3.tgz", + "integrity": "sha512-OcXjMsGdhL4XnbShKpAcSqPMzQoYkYyhbEaeSko47MjRP9NfEQMhZkXL1DoFlt9LWQn4YttrdnV6X2OiyzBi+A==", "dev": true, "license": "MIT", - "dependencies": { - "is-number": "^3.0.0", - "repeat-string": "^1.6.1" - }, "engines": { - "node": ">=0.10.0" + "node": ">=10" } }, - "node_modules/tough-cookie": { - "version": "4.1.3", + "node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", "dev": true, - "license": "BSD-3-Clause", - "dependencies": { - "psl": "^1.1.33", - "punycode": "^2.1.1", - "universalify": "^0.2.0", - "url-parse": "^1.5.3" - }, - "engines": { - "node": ">=6" + "license": "ISC", + "bin": { + "semver": "bin/semver.js" } }, - "node_modules/tr46": { - "version": "2.1.0", + "node_modules/shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", "dev": true, "license": "MIT", "dependencies": { - "punycode": "^2.1.1" + "shebang-regex": "^3.0.0" }, "engines": { "node": ">=8" } }, - "node_modules/trim-newlines": { - "version": "3.0.1", + "node_modules/shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", "dev": true, "license": "MIT", "engines": { "node": ">=8" } }, - "node_modules/ts-jest": { - "version": "26.5.6", + "node_modules/signal-exit": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", + "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", + "dev": true, + "license": "ISC" + }, + "node_modules/sisteransi": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.5.tgz", + "integrity": "sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==", + "dev": true, + "license": "MIT" + }, + "node_modules/slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", "dev": true, "license": "MIT", - "dependencies": { - "bs-logger": "0.x", - "buffer-from": "1.x", - "fast-json-stable-stringify": "2.x", - "jest-util": "^26.1.0", - "json5": "2.x", - "lodash": "4.x", - "make-error": "1.x", - "mkdirp": "1.x", - "semver": "7.x", - "yargs-parser": "20.x" - }, - "bin": { - "ts-jest": "cli.js" - }, "engines": { - "node": ">= 10" - }, - "peerDependencies": { - "jest": ">=26 <27", - "typescript": ">=3.8 <5.0" + "node": ">=8" } }, - "node_modules/ts-jest/node_modules/lru-cache": { - "version": "6.0.0", + "node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", "dev": true, - "license": "ISC", - "dependencies": { - "yallist": "^4.0.0" - }, + "license": "BSD-3-Clause", "engines": { - "node": ">=10" + "node": ">=0.10.0" } }, - "node_modules/ts-jest/node_modules/semver": { - "version": "7.5.4", + "node_modules/source-map-support": { + "version": "0.5.13", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.13.tgz", + "integrity": "sha512-SHSKFHadjVA5oR4PPqhtAVdcBWwRYVd6g6cAXnIbRiIwc2EhPrTuKUBdSLvlEKyIP3GCf89fltvcZiP9MMFA1w==", "dev": true, - "license": "ISC", + "license": "MIT", "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" } }, - "node_modules/ts-jest/node_modules/yallist": { - "version": "4.0.0", + "node_modules/sprintf-js": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", "dev": true, - "license": "ISC" + "license": "BSD-3-Clause" }, - "node_modules/ts-jest/node_modules/yargs-parser": { - "version": "20.2.9", + "node_modules/stack-utils": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.6.tgz", + "integrity": "sha512-XlkWvfIm6RmsWtNJx+uqtKLS8eqFbxUg0ZzLXqY0caEy9l7hruX8IpiDnjsLavoBgqCCR71TqWO8MaXYheJ3RQ==", "dev": true, - "license": "ISC", + "license": "MIT", + "dependencies": { + "escape-string-regexp": "^2.0.0" + }, "engines": { "node": ">=10" } }, - "node_modules/type-detect": { - "version": "4.0.8", + "node_modules/string-length": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/string-length/-/string-length-4.0.2.tgz", + "integrity": "sha512-+l6rNN5fYHNhZZy41RXsYptCjA2Igmq4EG7kZAYFQI1E1VTXarr6ZPXBg6eq7Y6eK4FEhY6AJlyuFIb/v/S0VQ==", "dev": true, "license": "MIT", + "dependencies": { + "char-regex": "^1.0.2", + "strip-ansi": "^6.0.0" + }, "engines": { - "node": ">=4" + "node": ">=10" } }, - "node_modules/type-fest": { - "version": "0.21.3", + "node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", "dev": true, - "license": "(MIT OR CC0-1.0)", - "engines": { - "node": ">=10" + "license": "MIT", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "engines": { + "node": ">=8" } }, - "node_modules/typed-array-buffer": { - "version": "1.0.0", + "node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", "dev": true, "license": "MIT", "dependencies": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.2.1", - "is-typed-array": "^1.1.10" + "ansi-regex": "^5.0.1" }, "engines": { - "node": ">= 0.4" + "node": ">=8" } }, - "node_modules/typed-array-byte-length": { - "version": "1.0.0", + "node_modules/strip-bom": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-4.0.0.tgz", + "integrity": "sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w==", "dev": true, "license": "MIT", - "dependencies": { - "call-bind": "^1.0.2", - "for-each": "^0.3.3", - "has-proto": "^1.0.1", - "is-typed-array": "^1.1.10" - }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=8" } }, - "node_modules/typed-array-byte-offset": { - "version": "1.0.0", + "node_modules/strip-final-newline": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz", + "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==", "dev": true, "license": "MIT", - "dependencies": { - "available-typed-arrays": "^1.0.5", - "call-bind": "^1.0.2", - "for-each": "^0.3.3", - "has-proto": "^1.0.1", - "is-typed-array": "^1.1.10" - }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=6" } }, - "node_modules/typed-array-length": { - "version": "1.0.4", + "node_modules/strip-json-comments": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", + "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", "dev": true, "license": "MIT", - "dependencies": { - "call-bind": "^1.0.2", - "for-each": "^0.3.3", - "is-typed-array": "^1.1.9" + "engines": { + "node": ">=8" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/typedarray-to-buffer": { - "version": "3.1.5", + "node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", "dev": true, "license": "MIT", "dependencies": { - "is-typedarray": "^1.0.0" - } - }, - "node_modules/typescript": { - "version": "4.9.5", - "dev": true, - "license": "Apache-2.0", - "bin": { - "tsc": "bin/tsc", - "tsserver": "bin/tsserver" + "has-flag": "^4.0.0" }, "engines": { - "node": ">=4.2.0" + "node": ">=8" } }, - "node_modules/unbox-primitive": { - "version": "1.0.2", + "node_modules/supports-preserve-symlinks-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", "dev": true, "license": "MIT", - "dependencies": { - "call-bind": "^1.0.2", - "has-bigints": "^1.0.2", - "has-symbols": "^1.0.3", - "which-boxed-primitive": "^1.0.2" + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/union-value": { - "version": "1.0.1", + "node_modules/test-exclude": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz", + "integrity": "sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==", "dev": true, - "license": "MIT", + "license": "ISC", "dependencies": { - "arr-union": "^3.1.0", - "get-value": "^2.0.6", - "is-extendable": "^0.1.1", - "set-value": "^2.0.1" + "@istanbuljs/schema": "^0.1.2", + "glob": "^7.1.4", + "minimatch": "^3.0.4" }, "engines": { - "node": ">=0.10.0" + "node": ">=8" } }, - "node_modules/union-value/node_modules/is-extendable": { - "version": "0.1.1", + "node_modules/tmpl": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/tmpl/-/tmpl-1.0.5.tgz", + "integrity": "sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw==", "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } + "license": "BSD-3-Clause" }, - "node_modules/universalify": { - "version": "0.2.0", + "node_modules/to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", "dev": true, "license": "MIT", + "dependencies": { + "is-number": "^7.0.0" + }, "engines": { - "node": ">= 4.0.0" + "node": ">=8.0" } }, - "node_modules/unset-value": { - "version": "1.0.0", + "node_modules/ts-jest": { + "version": "29.2.6", + "resolved": "https://registry.npmjs.org/ts-jest/-/ts-jest-29.2.6.tgz", + "integrity": "sha512-yTNZVZqc8lSixm+QGVFcPe6+yj7+TWZwIesuOWvfcn4B9bz5x4NDzVCQQjOs7Hfouu36aEqfEbo9Qpo+gq8dDg==", "dev": true, "license": "MIT", "dependencies": { - "has-value": "^0.3.1", - "isobject": "^3.0.0" + "bs-logger": "^0.2.6", + "ejs": "^3.1.10", + "fast-json-stable-stringify": "^2.1.0", + "jest-util": "^29.0.0", + "json5": "^2.2.3", + "lodash.memoize": "^4.1.2", + "make-error": "^1.3.6", + "semver": "^7.7.1", + "yargs-parser": "^21.1.1" + }, + "bin": { + "ts-jest": "cli.js" }, "engines": { - "node": ">=0.10.0" + "node": "^14.15.0 || ^16.10.0 || ^18.0.0 || >=20.0.0" + }, + "peerDependencies": { + "@babel/core": ">=7.0.0-beta.0 <8", + "@jest/transform": "^29.0.0", + "@jest/types": "^29.0.0", + "babel-jest": "^29.0.0", + "jest": "^29.0.0", + "typescript": ">=4.3 <6" + }, + "peerDependenciesMeta": { + "@babel/core": { + "optional": true + }, + "@jest/transform": { + "optional": true + }, + "@jest/types": { + "optional": true + }, + "babel-jest": { + "optional": true + }, + "esbuild": { + "optional": true + } } }, - "node_modules/unset-value/node_modules/has-value": { - "version": "0.3.1", + "node_modules/ts-jest/node_modules/semver": { + "version": "7.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", + "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", "dev": true, - "license": "MIT", - "dependencies": { - "get-value": "^2.0.3", - "has-values": "^0.1.4", - "isobject": "^2.0.0" + "license": "ISC", + "bin": { + "semver": "bin/semver.js" }, "engines": { - "node": ">=0.10.0" + "node": ">=10" } }, - "node_modules/unset-value/node_modules/has-value/node_modules/isobject": { - "version": "2.1.0", + "node_modules/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==", "dev": true, "license": "MIT", - "dependencies": { - "isarray": "1.0.0" - }, "engines": { - "node": ">=0.10.0" + "node": ">=4" } }, - "node_modules/unset-value/node_modules/has-values": { - "version": "0.1.4", + "node_modules/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==", "dev": true, - "license": "MIT", + "license": "(MIT OR CC0-1.0)", "engines": { - "node": ">=0.10.0" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/unset-value/node_modules/isarray": { - "version": "1.0.0", + "node_modules/typescript": { + "version": "5.8.2", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.8.2.tgz", + "integrity": "sha512-aJn6wq13/afZp/jT9QZmwEjDqqvSGp1VT5GVg+f/t6/oVyrgXM6BY1h9BRh/O5p3PlUPAe+WuiEZOmb/49RqoQ==", + "dev": true, + "license": "Apache-2.0", + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=14.17" + } + }, + "node_modules/undici-types": { + "version": "6.20.0", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.20.0.tgz", + "integrity": "sha512-Ny6QZ2Nju20vw1SRHe3d9jVu6gJ+4e3+MMpqu7pqE5HT6WsTSlce++GQmK5UXS8mzV8DSYHrQH+Xrf2jVcuKNg==", "dev": true, "license": "MIT" }, "node_modules/update-browserslist-db": { - "version": "1.0.11", + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.1.3.tgz", + "integrity": "sha512-UxhIZQ+QInVdunkDAaiazvvT/+fXL5Osr0JZlJulepYu6Jd7qJtDZjlur0emRlT71EN3ScPoE7gvsuIKKNavKw==", "dev": true, "funding": [ { @@ -19634,8 +17227,8 @@ ], "license": "MIT", "dependencies": { - "escalade": "^3.1.1", - "picocolors": "^1.0.0" + "escalade": "^3.2.0", + "picocolors": "^1.1.1" }, "bin": { "update-browserslist-db": "cli.js" @@ -19644,130 +17237,35 @@ "browserslist": ">= 4.21.0" } }, - "node_modules/urix": { - "version": "0.1.0", - "dev": true, - "license": "MIT" - }, - "node_modules/url-parse": { - "version": "1.5.10", - "dev": true, - "license": "MIT", - "dependencies": { - "querystringify": "^2.1.1", - "requires-port": "^1.0.0" - } - }, - "node_modules/use": { - "version": "3.1.1", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/uuid": { - "version": "8.3.2", - "dev": true, - "license": "MIT", - "optional": true, - "bin": { - "uuid": "dist/bin/uuid" - } - }, "node_modules/v8-to-istanbul": { - "version": "7.1.2", + "version": "9.3.0", + "resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-9.3.0.tgz", + "integrity": "sha512-kiGUalWN+rgBJ/1OHZsBtU4rXZOfj/7rKQxULKlIzwzQSvMJUUNgPwJEEh7gU6xEVxC0ahoOBvN2YI8GH6FNgA==", "dev": true, "license": "ISC", "dependencies": { + "@jridgewell/trace-mapping": "^0.3.12", "@types/istanbul-lib-coverage": "^2.0.1", - "convert-source-map": "^1.6.0", - "source-map": "^0.7.3" - }, - "engines": { - "node": ">=10.10.0" - } - }, - "node_modules/v8-to-istanbul/node_modules/source-map": { - "version": "0.7.4", - "dev": true, - "license": "BSD-3-Clause", - "engines": { - "node": ">= 8" - } - }, - "node_modules/validate-npm-package-license": { - "version": "3.0.4", - "dev": true, - "license": "Apache-2.0", - "dependencies": { - "spdx-correct": "^3.0.0", - "spdx-expression-parse": "^3.0.0" - } - }, - "node_modules/w3c-hr-time": { - "version": "1.0.2", - "dev": true, - "license": "MIT", - "dependencies": { - "browser-process-hrtime": "^1.0.0" - } - }, - "node_modules/w3c-xmlserializer": { - "version": "2.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "xml-name-validator": "^3.0.0" + "convert-source-map": "^2.0.0" }, "engines": { - "node": ">=10" + "node": ">=10.12.0" } }, "node_modules/walker": { "version": "1.0.8", + "resolved": "https://registry.npmjs.org/walker/-/walker-1.0.8.tgz", + "integrity": "sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ==", "dev": true, "license": "Apache-2.0", "dependencies": { "makeerror": "1.0.12" } }, - "node_modules/webidl-conversions": { - "version": "6.1.0", - "dev": true, - "license": "BSD-2-Clause", - "engines": { - "node": ">=10.4" - } - }, - "node_modules/whatwg-encoding": { - "version": "1.0.5", - "dev": true, - "license": "MIT", - "dependencies": { - "iconv-lite": "0.4.24" - } - }, - "node_modules/whatwg-mimetype": { - "version": "2.3.0", - "dev": true, - "license": "MIT" - }, - "node_modules/whatwg-url": { - "version": "8.7.0", - "dev": true, - "license": "MIT", - "dependencies": { - "lodash": "^4.7.0", - "tr46": "^2.1.0", - "webidl-conversions": "^6.1.0" - }, - "engines": { - "node": ">=10" - } - }, "node_modules/which": { "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", "dev": true, "license": "ISC", "dependencies": { @@ -19780,46 +17278,10 @@ "node": ">= 8" } }, - "node_modules/which-boxed-primitive": { - "version": "1.0.2", - "dev": true, - "license": "MIT", - "dependencies": { - "is-bigint": "^1.0.1", - "is-boolean-object": "^1.1.0", - "is-number-object": "^1.0.4", - "is-string": "^1.0.5", - "is-symbol": "^1.0.3" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/which-module": { - "version": "2.0.1", - "dev": true, - "license": "ISC" - }, - "node_modules/which-typed-array": { - "version": "1.1.11", - "dev": true, - "license": "MIT", - "dependencies": { - "available-typed-arrays": "^1.0.5", - "call-bind": "^1.0.2", - "for-each": "^0.3.3", - "gopd": "^1.0.1", - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, "node_modules/wrap-ansi": { - "version": "6.2.0", + "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, "license": "MIT", "dependencies": { @@ -19828,96 +17290,90 @@ "strip-ansi": "^6.0.0" }, "engines": { - "node": ">=8" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" } }, "node_modules/wrappy": { "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", "dev": true, "license": "ISC" }, "node_modules/write-file-atomic": { - "version": "3.0.3", + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-4.0.2.tgz", + "integrity": "sha512-7KxauUdBmSdWnmpaGFg+ppNjKF8uNLry8LyzjauQDOVONfFLNKrKvQOxZ/VuTIcS/gge/YNahf5RIIQWTSarlg==", "dev": true, "license": "ISC", "dependencies": { "imurmurhash": "^0.1.4", - "is-typedarray": "^1.0.0", - "signal-exit": "^3.0.2", - "typedarray-to-buffer": "^3.1.5" - } - }, - "node_modules/ws": { - "version": "7.5.9", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8.3.0" + "signal-exit": "^3.0.7" }, - "peerDependencies": { - "bufferutil": "^4.0.1", - "utf-8-validate": "^5.0.2" - }, - "peerDependenciesMeta": { - "bufferutil": { - "optional": true - }, - "utf-8-validate": { - "optional": true - } + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "node_modules/xml-name-validator": { - "version": "3.0.0", - "dev": true, - "license": "Apache-2.0" - }, - "node_modules/xmlchars": { - "version": "2.2.0", - "dev": true, - "license": "MIT" - }, "node_modules/y18n": { - "version": "4.0.3", + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", + "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", "dev": true, - "license": "ISC" + "license": "ISC", + "engines": { + "node": ">=10" + } }, "node_modules/yallist": { "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", "dev": true, "license": "ISC" }, "node_modules/yargs": { - "version": "15.4.1", + "version": "17.7.2", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.2.tgz", + "integrity": "sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==", "dev": true, "license": "MIT", "dependencies": { - "cliui": "^6.0.0", - "decamelize": "^1.2.0", - "find-up": "^4.1.0", - "get-caller-file": "^2.0.1", + "cliui": "^8.0.1", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", "require-directory": "^2.1.1", - "require-main-filename": "^2.0.0", - "set-blocking": "^2.0.0", - "string-width": "^4.2.0", - "which-module": "^2.0.0", - "y18n": "^4.0.0", - "yargs-parser": "^18.1.2" + "string-width": "^4.2.3", + "y18n": "^5.0.5", + "yargs-parser": "^21.1.1" }, "engines": { - "node": ">=8" + "node": ">=12" } }, "node_modules/yargs-parser": { - "version": "18.1.3", + "version": "21.1.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", + "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", "dev": true, "license": "ISC", - "dependencies": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" - }, "engines": { - "node": ">=6" + "node": ">=12" + } + }, + "node_modules/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, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } } } diff --git a/plugins/nga-msi/package.json b/plugins/nga-msi/package.json index 50be7d157..7560520a9 100644 --- a/plugins/nga-msi/package.json +++ b/plugins/nga-msi/package.json @@ -1,6 +1,6 @@ { "name": "@ngageoint/mage.nga-msi", - "version": "1.0.4", + "version": "1.0.5", "description": "The NGA-MSI package is a MAGE server plugin that provides feeds from National Geospatial-Intelligence Agency's Maritime Safety Information API.", "main": "lib/index.js", "files": [ @@ -13,9 +13,9 @@ }, "scripts": { "build:tsc": "tsc -b src", - "build": "npm-run-all build:tsc", + "build": "tsc -b src", "test:run": "jest lib", - "test": "npm-run-all build test:run", + "test": "tsc -b src && jest lib", "clean": "rm -rf lib" }, "repository": { @@ -38,19 +38,17 @@ }, "homepage": "https://github.com/ngageoint/mage-server#readme", "dependencies": { - "@types/geojson": "^7946.0.7", - "axios": "^0.27.2" + "axios": "0.27.2" }, "devDependencies": { - "@types/jest": "^26.0.3", - "cpy-cli": "^3.1.1", - "jest": "^26.1.0", - "nock": "^12.0.3", - "npm-run-all": "^4.1.5", - "ts-jest": "^26.1.1", - "typescript": "^4.6.3" + "@types/geojson": "7946.0.16", + "@types/jest": "29.5.14", + "@types/json-schema": "7.0.15", + "jest": "29.7.0", + "ts-jest": "29.2.6", + "typescript": "5.8.2" }, "peerDependencies": { - "@ngageoint/mage.service": "^6.2.3 || ~6.2.12-beta" + "@ngageoint/mage.service": "6.3.0-beta.7" } -} +} \ No newline at end of file diff --git a/plugins/nga-msi/src/tsconfig.json b/plugins/nga-msi/src/tsconfig.json index 7f1e7d462..8cff2347a 100644 --- a/plugins/nga-msi/src/tsconfig.json +++ b/plugins/nga-msi/src/tsconfig.json @@ -1,5 +1,5 @@ { - "extends": "../tsconfig", + "extends": "../tsconfig.json", "include": [ "./**/*" ], diff --git a/plugins/nga-msi/tsconfig.json b/plugins/nga-msi/tsconfig.json index 427d33b93..60c36ca2a 100644 --- a/plugins/nga-msi/tsconfig.json +++ b/plugins/nga-msi/tsconfig.json @@ -7,7 +7,7 @@ ], "compilerOptions": { /* Basic Options */ - "target": "es2015", /* Specify ECMAScript target version: 'ES3' (default), 'ES5', 'ES2015', 'ES2016', 'ES2017','ES2018' or 'ESNEXT'. */ + "target": "ES2016", /* Specify ECMAScript target version: 'ES3' (default), 'ES5', 'ES2015', 'ES2016', 'ES2017','ES2018' or 'ESNEXT'. */ "module": "commonjs", /* Specify module code generation: 'none', 'commonjs', 'amd', 'system', 'umd', 'es2015', or 'ESNext'. */ "lib": [ "ES2016" ], /* Specify library files to be included in the compilation. */ "allowJs": true, /* Allow javascript files to be compiled. */ diff --git a/plugins/rage/config.json b/plugins/rage/config.json index 7ad30b640..32e2148a7 100644 --- a/plugins/rage/config.json +++ b/plugins/rage/config.json @@ -9,6 +9,7 @@ "interval": 60, "mongodb": { "url": "mongodb://localhost/magedb", - "poolSize": 1 + "minPoolSize": 1, + "maxPoolSize": 1 } } diff --git a/plugins/rage/package-lock.json b/plugins/rage/package-lock.json index 3636688ec..a587e81be 100644 --- a/plugins/rage/package-lock.json +++ b/plugins/rage/package-lock.json @@ -1,24 +1,465 @@ { "name": "mage-rage", "version": "0.0.1", - "lockfileVersion": 1, + "lockfileVersion": 2, "requires": true, + "packages": { + "": { + "name": "mage-rage", + "version": "0.0.1", + "dependencies": { + "request": "2.88.0" + } + }, + "node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "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" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/asn1": { + "version": "0.2.6", + "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.6.tgz", + "integrity": "sha512-ix/FxPn0MDjeyJ7i/yoHGFt/EX6LyNbxSEhPPXODPL+KB0VPk86UYfL0lMdy+KCnv+fmvIzySwaK5COwqVbWTQ==", + "dependencies": { + "safer-buffer": "~2.1.0" + } + }, + "node_modules/assert-plus": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", + "integrity": "sha512-NfJ4UzBCcQGLDlQq7nHxH+tv3kyZ0hHQqF5BO6J7tNJeP5do1llPr8dZ8zHonfhAu0PHAdMkSo+8o0wxg9lZWw==", + "engines": { + "node": ">=0.8" + } + }, + "node_modules/asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==" + }, + "node_modules/aws-sign2": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", + "integrity": "sha512-08kcGqnYf/YmjoRhfxyu+CLxBjUtHLXLXX/vUfx9l2LYzG3c1m61nrpyFUZI6zeS+Li/wWMMidD9KgrqtGq3mA==", + "engines": { + "node": "*" + } + }, + "node_modules/aws4": { + "version": "1.11.0", + "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.11.0.tgz", + "integrity": "sha512-xh1Rl34h6Fi1DC2WWKfxUTVqRsNnr6LsKz2+hfwDxQJWmrx8+c7ylaqBMcHfl1U1r2dsifOvKX3LQuLNZ+XSvA==" + }, + "node_modules/bcrypt-pbkdf": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", + "integrity": "sha512-qeFIXtP4MSoi6NLqO12WfqARWWuCKi2Rn/9hJLEmtB5yTNr9DqFWkJRCf2qShWzPeAMRnOgCrq0sg/KLv5ES9w==", + "dependencies": { + "tweetnacl": "^0.14.3" + } + }, + "node_modules/caseless": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", + "integrity": "sha512-4tYFyifaFfGacoiObjJegolkwSU4xQNGbVgUiNYVUxbQ2x2lUsFvY4hVgVzGiIe6WLOPqycWXA40l+PWsxthUw==" + }, + "node_modules/combined-stream": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", + "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", + "dependencies": { + "delayed-stream": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/core-util-is": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", + "integrity": "sha512-3lqz5YjWTYnW6dlDa5TLaTCcShfar1e40rmcJVwCBJC6mWlFuj0eCHIElmG1g5kyuJ/GD+8Wn4FFCcz4gJPfaQ==" + }, + "node_modules/dashdash": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", + "integrity": "sha512-jRFi8UDGo6j+odZiEpjazZaWqEal3w/basFjQHQEwVtZJGDpxbH1MeYluwCS8Xq5wmLJooDlMgvVarmWfGM44g==", + "dependencies": { + "assert-plus": "^1.0.0" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==", + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/ecc-jsbn": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz", + "integrity": "sha512-eh9O+hwRHNbG4BLTjEl3nw044CkGm5X6LoaCf7LPp7UU8Qrt47JYNi6nPX8xjW97TKGKm1ouctg0QSpZe9qrnw==", + "dependencies": { + "jsbn": "~0.1.0", + "safer-buffer": "^2.1.0" + } + }, + "node_modules/extend": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", + "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==" + }, + "node_modules/extsprintf": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", + "integrity": "sha512-11Ndz7Nv+mvAC1j0ktTa7fAb0vLyGGX+rMHNBYQviQDGU0Hw7lhctJANqbPhu9nV9/izT/IntTgZ7Im/9LJs9g==", + "engines": [ + "node >=0.6.0" + ] + }, + "node_modules/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==" + }, + "node_modules/fast-json-stable-stringify": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==" + }, + "node_modules/forever-agent": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", + "integrity": "sha512-j0KLYPhm6zeac4lz3oJ3o65qvgQCcPubiyotZrXqEaG4hNagNYO8qdlUrX5vwqv9ohqeT/Z3j6+yW067yWWdUw==", + "engines": { + "node": "*" + } + }, + "node_modules/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==", + "dependencies": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.6", + "mime-types": "^2.1.12" + }, + "engines": { + "node": ">= 0.12" + } + }, + "node_modules/getpass": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", + "integrity": "sha512-0fzj9JxOLfJ+XGLhR8ze3unN0KZCgZwiSSDz168VERjK8Wl8kVSdcu2kspd4s4wtAa1y/qrVRiAA0WclVsu0ng==", + "dependencies": { + "assert-plus": "^1.0.0" + } + }, + "node_modules/har-schema": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz", + "integrity": "sha512-Oqluz6zhGX8cyRaTQlFMPw80bSJVG2x/cFb8ZPhUILGgHka9SsokCCOQgpveePerqidZOrT14ipqfJb7ILcW5Q==", + "engines": { + "node": ">=4" + } + }, + "node_modules/har-validator": { + "version": "5.1.5", + "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.5.tgz", + "integrity": "sha512-nmT2T0lljbxdQZfspsno9hgrG3Uir6Ks5afism62poxqBM6sDnMEuPmzTq8XN0OEwqKLLdh1jQI3qyE66Nzb3w==", + "deprecated": "this library is no longer supported", + "dependencies": { + "ajv": "^6.12.3", + "har-schema": "^2.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/http-signature": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", + "integrity": "sha512-CAbnr6Rz4CYQkLYUtSNXxQPUH2gK8f3iWexVlsnMeD+GjlsQ0Xsy1cOX+mN3dtxYomRy21CiOzU8Uhw6OwncEQ==", + "dependencies": { + "assert-plus": "^1.0.0", + "jsprim": "^1.2.2", + "sshpk": "^1.7.0" + }, + "engines": { + "node": ">=0.8", + "npm": ">=1.3.7" + } + }, + "node_modules/is-typedarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", + "integrity": "sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA==" + }, + "node_modules/isstream": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", + "integrity": "sha512-Yljz7ffyPbrLpLngrMtZ7NduUgVvi6wG9RJ9IUcyCd59YQ911PBJphODUcbOVbqYfxe1wuYf/LJ8PauMRwsM/g==" + }, + "node_modules/jsbn": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", + "integrity": "sha512-UVU9dibq2JcFWxQPA6KCqj5O42VOmAY3zQUfEKxU0KpTGXwNoCjkX1e13eHNvw/xPynt6pU0rZ1htjWTNTSXsg==" + }, + "node_modules/json-schema": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.4.0.tgz", + "integrity": "sha512-es94M3nTIfsEPisRafak+HDLfHXnKBhV3vU5eqPcS3flIWqcxJWgXHXiey3YrpaNsanY5ei1VoYEbOzijuq9BA==" + }, + "node_modules/json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==" + }, + "node_modules/json-stringify-safe": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", + "integrity": "sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA==" + }, + "node_modules/jsprim": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.2.tgz", + "integrity": "sha512-P2bSOMAc/ciLz6DzgjVlGJP9+BrJWu5UDGK70C2iweC5QBIeFf0ZXRvGjEj2uYgrY2MkAAhsSWHDWlFtEroZWw==", + "dependencies": { + "assert-plus": "1.0.0", + "extsprintf": "1.3.0", + "json-schema": "0.4.0", + "verror": "1.10.0" + }, + "engines": { + "node": ">=0.6.0" + } + }, + "node_modules/mime-db": { + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mime-types": { + "version": "2.1.35", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", + "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", + "dependencies": { + "mime-db": "1.52.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/oauth-sign": { + "version": "0.9.0", + "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz", + "integrity": "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==", + "engines": { + "node": "*" + } + }, + "node_modules/performance-now": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", + "integrity": "sha512-7EAHlyLHI56VEIdK57uwHdHKIaAGbnXPiw0yWbarQZOKaKpvUIgW0jWRVLiatnM+XXlSwsanIBH/hzGMJulMow==" + }, + "node_modules/psl": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/psl/-/psl-1.9.0.tgz", + "integrity": "sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag==" + }, + "node_modules/punycode": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", + "integrity": "sha512-jmYNElW7yvO7TV33CjSmvSiE2yco3bV2czu/OzDKdMNVZQWfxCblURLhf+47syQRBntjfLdd/H0egrzIG+oaFQ==" + }, + "node_modules/qs": { + "version": "6.5.3", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.3.tgz", + "integrity": "sha512-qxXIEh4pCGfHICj1mAJQ2/2XVZkjCDTcEgfoSQxc/fYivUZxTkk7L3bDBJSoNrEzXI17oUO5Dp07ktqE5KzczA==", + "engines": { + "node": ">=0.6" + } + }, + "node_modules/request": { + "version": "2.88.0", + "resolved": "https://registry.npmjs.org/request/-/request-2.88.0.tgz", + "integrity": "sha512-NAqBSrijGLZdM0WZNsInLJpkJokL72XYjUpnB0iwsRgxh7dB6COrHnTBNwN0E+lHDAJzu7kLAkDeY08z2/A0hg==", + "deprecated": "request has been deprecated, see https://github.com/request/request/issues/3142", + "dependencies": { + "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.0", + "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.4.3", + "tunnel-agent": "^0.6.0", + "uuid": "^3.3.2" + }, + "engines": { + "node": ">= 4" + } + }, + "node_modules/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==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" + }, + "node_modules/sshpk": { + "version": "1.17.0", + "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.17.0.tgz", + "integrity": "sha512-/9HIEs1ZXGhSPE8X6Ccm7Nam1z8KcoCqPdI7ecm1N33EzAetWahvQWVqLZtaZQ+IDKX4IyA2o0gBzqIMkAagHQ==", + "dependencies": { + "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" + }, + "bin": { + "sshpk-conv": "bin/sshpk-conv", + "sshpk-sign": "bin/sshpk-sign", + "sshpk-verify": "bin/sshpk-verify" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/tough-cookie": { + "version": "2.4.3", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.4.3.tgz", + "integrity": "sha512-Q5srk/4vDM54WJsJio3XNn6K2sCG+CQ8G5Wz6bZhRZoAe/+TxjWB/GlFAnYEbkYVlON9FMk/fE3h2RLpPXo4lQ==", + "dependencies": { + "psl": "^1.1.24", + "punycode": "^1.4.1" + }, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/tunnel-agent": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", + "integrity": "sha512-McnNiV1l8RYeY8tBgEpuodCC1mLUdbSN+CYBL7kJsJNInOP8UjDDEwdk6Mw60vdLLrr5NHKZhMAOSrR2NZuQ+w==", + "dependencies": { + "safe-buffer": "^5.0.1" + }, + "engines": { + "node": "*" + } + }, + "node_modules/tweetnacl": { + "version": "0.14.5", + "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", + "integrity": "sha512-KXXFFdAbFXY4geFIwoyNK+f5Z1b7swfXABfL7HXCmoIWMKU3dmS26672A4EeQtDzLKy7SXmfBu51JolvEKwtGA==" + }, + "node_modules/uri-js": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", + "dependencies": { + "punycode": "^2.1.0" + } + }, + "node_modules/uri-js/node_modules/punycode": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", + "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", + "engines": { + "node": ">=6" + } + }, + "node_modules/uuid": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", + "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==", + "deprecated": "Please upgrade to version 7 or higher. Older versions may use Math.random() in certain circumstances, which is known to be problematic. See https://v8.dev/blog/math-random for details.", + "bin": { + "uuid": "bin/uuid" + } + }, + "node_modules/verror": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", + "integrity": "sha512-ZZKSmDAEFOijERBLkmYfJ+vmk3w+7hOLYDNkRCuRuMJGEmqYNCNLyBBFwWKVMhfwaEF3WOd0Zlw86U/WC/+nYw==", + "engines": [ + "node >=0.6.0" + ], + "dependencies": { + "assert-plus": "^1.0.0", + "core-util-is": "1.0.2", + "extsprintf": "^1.2.0" + } + } + }, "dependencies": { "ajv": { - "version": "5.5.2", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-5.5.2.tgz", - "integrity": "sha1-c7Xuyj+rZT49P5Qis0GtQiBdyWU=", + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", "requires": { - "co": "^4.6.0", - "fast-deep-equal": "^1.0.0", + "fast-deep-equal": "^3.1.1", "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.3.0" + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" } }, "asn1": { - "version": "0.2.4", - "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.4.tgz", - "integrity": "sha512-jxwzQpLQjSmWXgwaCZE9Nz+glAG01yF1QnWgbhGwHI5A6FRIEY6IVqtHhIepHqI7/kyEyQEagBC5mBEFlIYvdg==", + "version": "0.2.6", + "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.6.tgz", + "integrity": "sha512-ix/FxPn0MDjeyJ7i/yoHGFt/EX6LyNbxSEhPPXODPL+KB0VPk86UYfL0lMdy+KCnv+fmvIzySwaK5COwqVbWTQ==", "requires": { "safer-buffer": "~2.1.0" } @@ -26,28 +467,27 @@ "assert-plus": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", - "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=" + "integrity": "sha512-NfJ4UzBCcQGLDlQq7nHxH+tv3kyZ0hHQqF5BO6J7tNJeP5do1llPr8dZ8zHonfhAu0PHAdMkSo+8o0wxg9lZWw==" }, "asynckit": { "version": "0.4.0", "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", - "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=" + "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==" }, "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=" + "integrity": "sha512-08kcGqnYf/YmjoRhfxyu+CLxBjUtHLXLXX/vUfx9l2LYzG3c1m61nrpyFUZI6zeS+Li/wWMMidD9KgrqtGq3mA==" }, "aws4": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.8.0.tgz", - "integrity": "sha512-ReZxvNHIOv88FlT7rxcXIIC0fPt4KZqZbOlivyWtXLt8ESx84zd3kMC6iK5jVeS2qt+g7ftS7ye4fi06X5rtRQ==" + "version": "1.11.0", + "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.11.0.tgz", + "integrity": "sha512-xh1Rl34h6Fi1DC2WWKfxUTVqRsNnr6LsKz2+hfwDxQJWmrx8+c7ylaqBMcHfl1U1r2dsifOvKX3LQuLNZ+XSvA==" }, "bcrypt-pbkdf": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", - "integrity": "sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4=", - "optional": true, + "integrity": "sha512-qeFIXtP4MSoi6NLqO12WfqARWWuCKi2Rn/9hJLEmtB5yTNr9DqFWkJRCf2qShWzPeAMRnOgCrq0sg/KLv5ES9w==", "requires": { "tweetnacl": "^0.14.3" } @@ -55,17 +495,12 @@ "caseless": { "version": "0.12.0", "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", - "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=" - }, - "co": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", - "integrity": "sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ=" + "integrity": "sha512-4tYFyifaFfGacoiObjJegolkwSU4xQNGbVgUiNYVUxbQ2x2lUsFvY4hVgVzGiIe6WLOPqycWXA40l+PWsxthUw==" }, "combined-stream": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.6.tgz", - "integrity": "sha1-cj599ugBrFYTETp+RFqbactjKBg=", + "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" } @@ -73,12 +508,12 @@ "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": "sha512-3lqz5YjWTYnW6dlDa5TLaTCcShfar1e40rmcJVwCBJC6mWlFuj0eCHIElmG1g5kyuJ/GD+8Wn4FFCcz4gJPfaQ==" }, "dashdash": { "version": "1.14.1", "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", - "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=", + "integrity": "sha512-jRFi8UDGo6j+odZiEpjazZaWqEal3w/basFjQHQEwVtZJGDpxbH1MeYluwCS8Xq5wmLJooDlMgvVarmWfGM44g==", "requires": { "assert-plus": "^1.0.0" } @@ -86,13 +521,12 @@ "delayed-stream": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", - "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=" + "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==" }, "ecc-jsbn": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz", - "integrity": "sha1-OoOpBOVDUyh4dMVkt1SThoSamMk=", - "optional": true, + "integrity": "sha512-eh9O+hwRHNbG4BLTjEl3nw044CkGm5X6LoaCf7LPp7UU8Qrt47JYNi6nPX8xjW97TKGKm1ouctg0QSpZe9qrnw==", "requires": { "jsbn": "~0.1.0", "safer-buffer": "^2.1.0" @@ -106,37 +540,37 @@ "extsprintf": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", - "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=" + "integrity": "sha512-11Ndz7Nv+mvAC1j0ktTa7fAb0vLyGGX+rMHNBYQviQDGU0Hw7lhctJANqbPhu9nV9/izT/IntTgZ7Im/9LJs9g==" }, "fast-deep-equal": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-1.1.0.tgz", - "integrity": "sha1-wFNHeBfIa1HaqFPIHgWbcz0CNhQ=" + "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-json-stable-stringify": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz", - "integrity": "sha1-1RQsDK7msRifh9OnYREGT4bIu/I=" + "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==" }, "forever-agent": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", - "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=" + "integrity": "sha512-j0KLYPhm6zeac4lz3oJ3o65qvgQCcPubiyotZrXqEaG4hNagNYO8qdlUrX5vwqv9ohqeT/Z3j6+yW067yWWdUw==" }, "form-data": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.2.tgz", - "integrity": "sha1-SXBJi+YEwgwAXU9cI67NIda0kJk=", + "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", + "combined-stream": "^1.0.6", "mime-types": "^2.1.12" } }, "getpass": { "version": "0.1.7", "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", - "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=", + "integrity": "sha512-0fzj9JxOLfJ+XGLhR8ze3unN0KZCgZwiSSDz168VERjK8Wl8kVSdcu2kspd4s4wtAa1y/qrVRiAA0WclVsu0ng==", "requires": { "assert-plus": "^1.0.0" } @@ -144,21 +578,21 @@ "har-schema": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz", - "integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=" + "integrity": "sha512-Oqluz6zhGX8cyRaTQlFMPw80bSJVG2x/cFb8ZPhUILGgHka9SsokCCOQgpveePerqidZOrT14ipqfJb7ILcW5Q==" }, "har-validator": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.0.tgz", - "integrity": "sha512-+qnmNjI4OfH2ipQ9VQOw23bBd/ibtfbVdK2fYbY4acTDqKTW/YDp9McimZdDbG8iV9fZizUqQMD5xvriB146TA==", + "version": "5.1.5", + "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.5.tgz", + "integrity": "sha512-nmT2T0lljbxdQZfspsno9hgrG3Uir6Ks5afism62poxqBM6sDnMEuPmzTq8XN0OEwqKLLdh1jQI3qyE66Nzb3w==", "requires": { - "ajv": "^5.3.0", + "ajv": "^6.12.3", "har-schema": "^2.0.0" } }, "http-signature": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", - "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=", + "integrity": "sha512-CAbnr6Rz4CYQkLYUtSNXxQPUH2gK8f3iWexVlsnMeD+GjlsQ0Xsy1cOX+mN3dtxYomRy21CiOzU8Uhw6OwncEQ==", "requires": { "assert-plus": "^1.0.0", "jsprim": "^1.2.2", @@ -168,56 +602,55 @@ "is-typedarray": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", - "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=" + "integrity": "sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA==" }, "isstream": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", - "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=" + "integrity": "sha512-Yljz7ffyPbrLpLngrMtZ7NduUgVvi6wG9RJ9IUcyCd59YQ911PBJphODUcbOVbqYfxe1wuYf/LJ8PauMRwsM/g==" }, "jsbn": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", - "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=", - "optional": true + "integrity": "sha512-UVU9dibq2JcFWxQPA6KCqj5O42VOmAY3zQUfEKxU0KpTGXwNoCjkX1e13eHNvw/xPynt6pU0rZ1htjWTNTSXsg==" }, "json-schema": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz", - "integrity": "sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM=" + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.4.0.tgz", + "integrity": "sha512-es94M3nTIfsEPisRafak+HDLfHXnKBhV3vU5eqPcS3flIWqcxJWgXHXiey3YrpaNsanY5ei1VoYEbOzijuq9BA==" }, "json-schema-traverse": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.3.1.tgz", - "integrity": "sha1-NJptRMU6Ud6JtAgFxdXlm0F9M0A=" + "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==" }, "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=" + "integrity": "sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA==" }, "jsprim": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz", - "integrity": "sha1-MT5mvB5cwG5Di8G3SZwuXFastqI=", + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.2.tgz", + "integrity": "sha512-P2bSOMAc/ciLz6DzgjVlGJP9+BrJWu5UDGK70C2iweC5QBIeFf0ZXRvGjEj2uYgrY2MkAAhsSWHDWlFtEroZWw==", "requires": { "assert-plus": "1.0.0", "extsprintf": "1.3.0", - "json-schema": "0.2.3", + "json-schema": "0.4.0", "verror": "1.10.0" } }, "mime-db": { - "version": "1.35.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.35.0.tgz", - "integrity": "sha512-JWT/IcCTsB0Io3AhWUMjRqucrHSPsSf2xKLaRldJVULioggvkJvggZ3VXNNSRkCddE6D+BUI4HEIZIA2OjwIvg==" + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==" }, "mime-types": { - "version": "2.1.19", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.19.tgz", - "integrity": "sha512-P1tKYHVSZ6uFo26mtnve4HQFE3koh1UWVkp8YUC+ESBHe945xWSoXuHHiGarDqcEZ+whpCDnlNw5LON0kLo+sw==", + "version": "2.1.35", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", + "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", "requires": { - "mime-db": "~1.35.0" + "mime-db": "1.52.0" } }, "oauth-sign": { @@ -228,22 +661,22 @@ "performance-now": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", - "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=" + "integrity": "sha512-7EAHlyLHI56VEIdK57uwHdHKIaAGbnXPiw0yWbarQZOKaKpvUIgW0jWRVLiatnM+XXlSwsanIBH/hzGMJulMow==" }, "psl": { - "version": "1.1.29", - "resolved": "https://registry.npmjs.org/psl/-/psl-1.1.29.tgz", - "integrity": "sha512-AeUmQ0oLN02flVHXWh9sSJF7mcdFq0ppid/JkErufc3hGIV/AMa8Fo9VgDo/cT2jFdOWoFvHp90qqBH54W+gjQ==" + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/psl/-/psl-1.9.0.tgz", + "integrity": "sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag==" }, "punycode": { "version": "1.4.1", "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", - "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=" + "integrity": "sha512-jmYNElW7yvO7TV33CjSmvSiE2yco3bV2czu/OzDKdMNVZQWfxCblURLhf+47syQRBntjfLdd/H0egrzIG+oaFQ==" }, "qs": { - "version": "6.5.2", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz", - "integrity": "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==" + "version": "6.5.3", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.3.tgz", + "integrity": "sha512-qxXIEh4pCGfHICj1mAJQ2/2XVZkjCDTcEgfoSQxc/fYivUZxTkk7L3bDBJSoNrEzXI17oUO5Dp07ktqE5KzczA==" }, "request": { "version": "2.88.0", @@ -273,9 +706,9 @@ } }, "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==" + "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", @@ -283,9 +716,9 @@ "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" }, "sshpk": { - "version": "1.14.2", - "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.14.2.tgz", - "integrity": "sha1-xvxhZIo9nE52T9P8306hBeSSupg=", + "version": "1.17.0", + "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.17.0.tgz", + "integrity": "sha512-/9HIEs1ZXGhSPE8X6Ccm7Nam1z8KcoCqPdI7ecm1N33EzAetWahvQWVqLZtaZQ+IDKX4IyA2o0gBzqIMkAagHQ==", "requires": { "asn1": "~0.2.3", "assert-plus": "^1.0.0", @@ -310,7 +743,7 @@ "tunnel-agent": { "version": "0.6.0", "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", - "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", + "integrity": "sha512-McnNiV1l8RYeY8tBgEpuodCC1mLUdbSN+CYBL7kJsJNInOP8UjDDEwdk6Mw60vdLLrr5NHKZhMAOSrR2NZuQ+w==", "requires": { "safe-buffer": "^5.0.1" } @@ -318,18 +751,32 @@ "tweetnacl": { "version": "0.14.5", "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", - "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=", - "optional": true + "integrity": "sha512-KXXFFdAbFXY4geFIwoyNK+f5Z1b7swfXABfL7HXCmoIWMKU3dmS26672A4EeQtDzLKy7SXmfBu51JolvEKwtGA==" + }, + "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" + }, + "dependencies": { + "punycode": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", + "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==" + } + } }, "uuid": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.3.2.tgz", - "integrity": "sha512-yXJmeNaw3DnnKAOKJE51sL/ZaYfWJRl1pK9dr19YFCu0ObS231AB1/LbqTKRAQ5kw8A90rA6fr4riOUpTZvQZA==" + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", + "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==" }, "verror": { "version": "1.10.0", "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", - "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=", + "integrity": "sha512-ZZKSmDAEFOijERBLkmYfJ+vmk3w+7hOLYDNkRCuRuMJGEmqYNCNLyBBFwWKVMhfwaEF3WOd0Zlw86U/WC/+nYw==", "requires": { "assert-plus": "^1.0.0", "core-util-is": "1.0.2", diff --git a/plugins/random/package-lock.json b/plugins/random/package-lock.json index bd5a19b50..6e346f87a 100644 --- a/plugins/random/package-lock.json +++ b/plugins/random/package-lock.json @@ -3,17032 +3,22058 @@ "version": "2.0.0", "lockfileVersion": 1, "requires": true, - "dependencies": { - "@ampproject/remapping": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.1.2.tgz", - "integrity": "sha512-hoyByceqwKirw7w3Z7gnIIZC3Wx3J484Y3L/cMpXFbr7d9ZQj2mODrirNzcJa+SM3UlpWXYvKV4RlRpFXlWgXg==", + "packages": { + "": { + "name": "@ngageoint/mage.random", + "version": "1.0.1", + "license": "MIT", + "dependencies": { + "@types/geojson": "^7946.0.7" + }, + "devDependencies": { + "@ngageoint/mage.service": "file:../../service", + "@types/jest": "^26.0.3", + "cpy-cli": "^3.1.1", + "jest": "^26.1.0", + "nock": "^12.0.3", + "npm-run-all": "^4.1.5", + "ts-jest": "^26.5.6", + "typescript": "^4.6.3" + }, + "peerDependencies": { + "@ngageoint/mage.service": "^6.2.0" + } + }, + "node_modules/@ampproject/remapping": { + "version": "2.2.0", "dev": true, - "requires": { - "@jridgewell/trace-mapping": "^0.3.0" + "license": "Apache-2.0", + "dependencies": { + "@jridgewell/gen-mapping": "^0.1.0", + "@jridgewell/trace-mapping": "^0.3.9" + }, + "engines": { + "node": ">=6.0.0" } }, - "@babel/code-frame": { - "version": "7.10.3", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.10.3.tgz", - "integrity": "sha512-fDx9eNW0qz0WkUeqL6tXEXzVlPh6Y5aCDEZesl0xBGA8ndRukX91Uk44ZqnkECp01NAZUdCAl+aiQNGi0k88Eg==", + "node_modules/@aws-crypto/ie11-detection": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/ie11-detection/-/ie11-detection-3.0.0.tgz", + "integrity": "sha512-341lBBkiY1DfDNKai/wXM3aujNBkXR7tq1URPQDL9wi3AUbI80NR74uF1TXHMm7po1AcnFk8iu2S2IeU/+/A+Q==", "dev": true, - "requires": { - "@babel/highlight": "^7.10.3" + "optional": true, + "dependencies": { + "tslib": "^1.11.1" } }, - "@babel/compat-data": { - "version": "7.17.7", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.17.7.tgz", - "integrity": "sha512-p8pdE6j0a29TNGebNm7NzYZWB3xVZJBZ7XGs42uAKzQo8VQ3F0By/cQCtUEABwIqw5zo6WA4NbmxsfzADzMKnQ==", - "dev": true + "node_modules/@aws-crypto/ie11-detection/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "dev": true, + "optional": true }, - "@babel/core": { - "version": "7.17.9", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.17.9.tgz", - "integrity": "sha512-5ug+SfZCpDAkVp9SFIZAzlW18rlzsOcJGaetCjkySnrXXDUw9AR8cDUm1iByTmdWM6yxX6/zycaV76w3YTF2gw==", + "node_modules/@aws-crypto/sha256-browser": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/sha256-browser/-/sha256-browser-3.0.0.tgz", + "integrity": "sha512-8VLmW2B+gjFbU5uMeqtQM6Nj0/F1bro80xQXCW6CQBWgosFWXTx77aeOF5CAIAmbOK64SdMBJdNr6J41yP5mvQ==", "dev": true, - "requires": { - "@ampproject/remapping": "^2.1.0", - "@babel/code-frame": "^7.16.7", - "@babel/generator": "^7.17.9", - "@babel/helper-compilation-targets": "^7.17.7", - "@babel/helper-module-transforms": "^7.17.7", - "@babel/helpers": "^7.17.9", - "@babel/parser": "^7.17.9", - "@babel/template": "^7.16.7", - "@babel/traverse": "^7.17.9", - "@babel/types": "^7.17.0", - "convert-source-map": "^1.7.0", - "debug": "^4.1.0", - "gensync": "^1.0.0-beta.2", - "json5": "^2.2.1", - "semver": "^6.3.0" - }, + "optional": true, "dependencies": { - "@babel/code-frame": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.16.7.tgz", - "integrity": "sha512-iAXqUn8IIeBTNd72xsFlgaXHkMBMt6y4HJp1tIaK465CWLT/fG1aqB7ykr95gHHmlBdGbFeWWfyB4NJJ0nmeIg==", - "dev": true, - "requires": { - "@babel/highlight": "^7.16.7" - } - }, - "@babel/helper-validator-identifier": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.16.7.tgz", - "integrity": "sha512-hsEnFemeiW4D08A5gUAZxLBTXpZ39P+a+DGDsHw1yxqyQ/jzFEnxf5uTEGp+3bzAbNOxU1paTgYS4ECU/IgfDw==", - "dev": true - }, - "@babel/highlight": { - "version": "7.17.9", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.17.9.tgz", - "integrity": "sha512-J9PfEKCbFIv2X5bjTMiZu6Vf341N05QIY+d6FvVKynkG1S7G0j3I0QoRtWIrXhZ+/Nlb5Q0MzqL7TokEJ5BNHg==", - "dev": true, - "requires": { - "@babel/helper-validator-identifier": "^7.16.7", - "chalk": "^2.0.0", - "js-tokens": "^4.0.0" - } - }, - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - } + "@aws-crypto/ie11-detection": "^3.0.0", + "@aws-crypto/sha256-js": "^3.0.0", + "@aws-crypto/supports-web-crypto": "^3.0.0", + "@aws-crypto/util": "^3.0.0", + "@aws-sdk/types": "^3.222.0", + "@aws-sdk/util-locate-window": "^3.0.0", + "@aws-sdk/util-utf8-browser": "^3.0.0", + "tslib": "^1.11.1" } }, - "@babel/generator": { - "version": "7.17.9", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.17.9.tgz", - "integrity": "sha512-rAdDousTwxbIxbz5I7GEQ3lUip+xVCXooZNbsydCWs3xA7ZsYOv+CFRdzGxRX78BmQHu9B1Eso59AOZQOJDEdQ==", + "node_modules/@aws-crypto/sha256-browser/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", "dev": true, - "requires": { - "@babel/types": "^7.17.0", - "jsesc": "^2.5.1", - "source-map": "^0.5.0" - }, + "optional": true + }, + "node_modules/@aws-crypto/sha256-js": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/sha256-js/-/sha256-js-3.0.0.tgz", + "integrity": "sha512-PnNN7os0+yd1XvXAy23CFOmTbMaDxgxXtTKHybrJ39Y8kGzBATgBFibWJKH6BhytLI/Zyszs87xCOBNyBig6vQ==", + "dev": true, + "optional": true, "dependencies": { - "source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", - "dev": true - } + "@aws-crypto/util": "^3.0.0", + "@aws-sdk/types": "^3.222.0", + "tslib": "^1.11.1" } }, - "@babel/helper-compilation-targets": { - "version": "7.17.7", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.17.7.tgz", - "integrity": "sha512-UFzlz2jjd8kroj0hmCFV5zr+tQPi1dpC2cRsDV/3IEW8bJfCPrPpmcSN6ZS8RqIq4LXcmpipCQFPddyFA5Yc7w==", + "node_modules/@aws-crypto/sha256-js/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", "dev": true, - "requires": { - "@babel/compat-data": "^7.17.7", - "@babel/helper-validator-option": "^7.16.7", - "browserslist": "^4.17.5", - "semver": "^6.3.0" - }, + "optional": true + }, + "node_modules/@aws-crypto/supports-web-crypto": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/supports-web-crypto/-/supports-web-crypto-3.0.0.tgz", + "integrity": "sha512-06hBdMwUAb2WFTuGG73LSC0wfPu93xWwo5vL2et9eymgmu3Id5vFAHBbajVWiGhPO37qcsdCap/FqXvJGJWPIg==", + "dev": true, + "optional": true, "dependencies": { - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - } + "tslib": "^1.11.1" } }, - "@babel/helper-environment-visitor": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.16.7.tgz", - "integrity": "sha512-SLLb0AAn6PkUeAfKJCCOl9e1R53pQlGAfc4y4XuMRZfqeMYLE0dM1LMhqbGAlGQY0lfw5/ohoYWAe9V1yibRag==", + "node_modules/@aws-crypto/supports-web-crypto/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", "dev": true, - "requires": { - "@babel/types": "^7.16.7" - } + "optional": true }, - "@babel/helper-function-name": { - "version": "7.17.9", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.17.9.tgz", - "integrity": "sha512-7cRisGlVtiVqZ0MW0/yFB4atgpGLWEHUVYnb448hZK4x+vih0YO5UoS11XIYtZYqHd0dIPMdUSv8q5K4LdMnIg==", + "node_modules/@aws-crypto/util": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/util/-/util-3.0.0.tgz", + "integrity": "sha512-2OJlpeJpCR48CC8r+uKVChzs9Iungj9wkZrl8Z041DWEWvyIHILYKCPNzJghKsivj+S3mLo6BVc7mBNzdxA46w==", "dev": true, - "requires": { - "@babel/template": "^7.16.7", - "@babel/types": "^7.17.0" + "optional": true, + "dependencies": { + "@aws-sdk/types": "^3.222.0", + "@aws-sdk/util-utf8-browser": "^3.0.0", + "tslib": "^1.11.1" } }, - "@babel/helper-hoist-variables": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.16.7.tgz", - "integrity": "sha512-m04d/0Op34H5v7pbZw6pSKP7weA6lsMvfiIAMeIvkY/R4xQtBSMFEigu9QTZ2qB/9l22vsxtM8a+Q8CzD255fg==", + "node_modules/@aws-crypto/util/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", "dev": true, - "requires": { - "@babel/types": "^7.16.7" - } + "optional": true }, - "@babel/helper-module-imports": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.16.7.tgz", - "integrity": "sha512-LVtS6TqjJHFc+nYeITRo6VLXve70xmq7wPhWTqDJusJEgGmkAACWwMiTNrvfoQo6hEhFwAIixNkvB0jPXDL8Wg==", + "node_modules/@aws-sdk/abort-controller": { + "version": "3.306.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/abort-controller/-/abort-controller-3.306.0.tgz", + "integrity": "sha512-ewCvdUrMJMlnkNaqXdG7L2H6O7CDI036y6lkTU8gQqa2lCzZvqBkzz6R5NbWqb8TJPi69Z7lXEITgk2b0+pl6w==", "dev": true, - "requires": { - "@babel/types": "^7.16.7" + "optional": true, + "dependencies": { + "@aws-sdk/types": "3.306.0", + "tslib": "^2.5.0" + }, + "engines": { + "node": ">=14.0.0" } }, - "@babel/helper-module-transforms": { - "version": "7.17.7", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.17.7.tgz", - "integrity": "sha512-VmZD99F3gNTYB7fJRDTi+u6l/zxY0BE6OIxPSU7a50s6ZUQkHwSDmV92FfM+oCG0pZRVojGYhkR8I0OGeCVREw==", + "node_modules/@aws-sdk/client-cognito-identity": { + "version": "3.309.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-cognito-identity/-/client-cognito-identity-3.309.0.tgz", + "integrity": "sha512-6UMOK77QndamzxOC3x02fPNNpTSgwbNBPnjru4yX0vyF3XRLHyUsMnDzm/PVZs1JFlQUtaeBEqOruY8yuHAwGg==", "dev": true, - "requires": { - "@babel/helper-environment-visitor": "^7.16.7", - "@babel/helper-module-imports": "^7.16.7", - "@babel/helper-simple-access": "^7.17.7", - "@babel/helper-split-export-declaration": "^7.16.7", - "@babel/helper-validator-identifier": "^7.16.7", - "@babel/template": "^7.16.7", - "@babel/traverse": "^7.17.3", - "@babel/types": "^7.17.0" - }, + "optional": true, "dependencies": { - "@babel/helper-validator-identifier": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.16.7.tgz", - "integrity": "sha512-hsEnFemeiW4D08A5gUAZxLBTXpZ39P+a+DGDsHw1yxqyQ/jzFEnxf5uTEGp+3bzAbNOxU1paTgYS4ECU/IgfDw==", - "dev": true - } + "@aws-crypto/sha256-browser": "3.0.0", + "@aws-crypto/sha256-js": "3.0.0", + "@aws-sdk/client-sts": "3.309.0", + "@aws-sdk/config-resolver": "3.306.0", + "@aws-sdk/credential-provider-node": "3.309.0", + "@aws-sdk/fetch-http-handler": "3.306.0", + "@aws-sdk/hash-node": "3.306.0", + "@aws-sdk/invalid-dependency": "3.306.0", + "@aws-sdk/middleware-content-length": "3.306.0", + "@aws-sdk/middleware-endpoint": "3.306.0", + "@aws-sdk/middleware-host-header": "3.306.0", + "@aws-sdk/middleware-logger": "3.306.0", + "@aws-sdk/middleware-recursion-detection": "3.306.0", + "@aws-sdk/middleware-retry": "3.306.0", + "@aws-sdk/middleware-serde": "3.306.0", + "@aws-sdk/middleware-signing": "3.306.0", + "@aws-sdk/middleware-stack": "3.306.0", + "@aws-sdk/middleware-user-agent": "3.306.0", + "@aws-sdk/node-config-provider": "3.306.0", + "@aws-sdk/node-http-handler": "3.306.0", + "@aws-sdk/protocol-http": "3.306.0", + "@aws-sdk/smithy-client": "3.309.0", + "@aws-sdk/types": "3.306.0", + "@aws-sdk/url-parser": "3.306.0", + "@aws-sdk/util-base64": "3.303.0", + "@aws-sdk/util-body-length-browser": "3.303.0", + "@aws-sdk/util-body-length-node": "3.303.0", + "@aws-sdk/util-defaults-mode-browser": "3.309.0", + "@aws-sdk/util-defaults-mode-node": "3.309.0", + "@aws-sdk/util-endpoints": "3.306.0", + "@aws-sdk/util-retry": "3.306.0", + "@aws-sdk/util-user-agent-browser": "3.306.0", + "@aws-sdk/util-user-agent-node": "3.306.0", + "@aws-sdk/util-utf8": "3.303.0", + "tslib": "^2.5.0" + }, + "engines": { + "node": ">=14.0.0" } }, - "@babel/helper-plugin-utils": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.16.7.tgz", - "integrity": "sha512-Qg3Nk7ZxpgMrsox6HreY1ZNKdBq7K72tDSliA6dCl5f007jR4ne8iD5UzuNnCJH2xBf2BEEVGr+/OL6Gdp7RxA==", - "dev": true - }, - "@babel/helper-simple-access": { - "version": "7.17.7", - "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.17.7.tgz", - "integrity": "sha512-txyMCGroZ96i+Pxr3Je3lzEJjqwaRC9buMUgtomcrLe5Nd0+fk1h0LLA+ixUF5OW7AhHuQ7Es1WcQJZmZsz2XA==", + "node_modules/@aws-sdk/client-sso": { + "version": "3.309.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.309.0.tgz", + "integrity": "sha512-2Tr3AROBzZOy+BuANlmDrwgyX+Q2kb6SIlANg6b9mrIzlflC48hRH0ngEe4C5RT6RruKIP+6R0al6vAq8lCk6A==", "dev": true, - "requires": { - "@babel/types": "^7.17.0" + "optional": true, + "dependencies": { + "@aws-crypto/sha256-browser": "3.0.0", + "@aws-crypto/sha256-js": "3.0.0", + "@aws-sdk/config-resolver": "3.306.0", + "@aws-sdk/fetch-http-handler": "3.306.0", + "@aws-sdk/hash-node": "3.306.0", + "@aws-sdk/invalid-dependency": "3.306.0", + "@aws-sdk/middleware-content-length": "3.306.0", + "@aws-sdk/middleware-endpoint": "3.306.0", + "@aws-sdk/middleware-host-header": "3.306.0", + "@aws-sdk/middleware-logger": "3.306.0", + "@aws-sdk/middleware-recursion-detection": "3.306.0", + "@aws-sdk/middleware-retry": "3.306.0", + "@aws-sdk/middleware-serde": "3.306.0", + "@aws-sdk/middleware-stack": "3.306.0", + "@aws-sdk/middleware-user-agent": "3.306.0", + "@aws-sdk/node-config-provider": "3.306.0", + "@aws-sdk/node-http-handler": "3.306.0", + "@aws-sdk/protocol-http": "3.306.0", + "@aws-sdk/smithy-client": "3.309.0", + "@aws-sdk/types": "3.306.0", + "@aws-sdk/url-parser": "3.306.0", + "@aws-sdk/util-base64": "3.303.0", + "@aws-sdk/util-body-length-browser": "3.303.0", + "@aws-sdk/util-body-length-node": "3.303.0", + "@aws-sdk/util-defaults-mode-browser": "3.309.0", + "@aws-sdk/util-defaults-mode-node": "3.309.0", + "@aws-sdk/util-endpoints": "3.306.0", + "@aws-sdk/util-retry": "3.306.0", + "@aws-sdk/util-user-agent-browser": "3.306.0", + "@aws-sdk/util-user-agent-node": "3.306.0", + "@aws-sdk/util-utf8": "3.303.0", + "tslib": "^2.5.0" + }, + "engines": { + "node": ">=14.0.0" } }, - "@babel/helper-split-export-declaration": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.16.7.tgz", - "integrity": "sha512-xbWoy/PFoxSWazIToT9Sif+jJTlrMcndIsaOKvTA6u7QEo7ilkRZpjew18/W3c7nm8fXdUDXh02VXTbZ0pGDNw==", + "node_modules/@aws-sdk/client-sso-oidc": { + "version": "3.309.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso-oidc/-/client-sso-oidc-3.309.0.tgz", + "integrity": "sha512-5hQMibuKWxDJo6IN+4ah0gskjJa16R41PqkeAOwExthTTyNzgoVyP9wyhnETyntYlHIBrHEmHTwdG06YiAxm4A==", "dev": true, - "requires": { - "@babel/types": "^7.16.7" + "optional": true, + "dependencies": { + "@aws-crypto/sha256-browser": "3.0.0", + "@aws-crypto/sha256-js": "3.0.0", + "@aws-sdk/config-resolver": "3.306.0", + "@aws-sdk/fetch-http-handler": "3.306.0", + "@aws-sdk/hash-node": "3.306.0", + "@aws-sdk/invalid-dependency": "3.306.0", + "@aws-sdk/middleware-content-length": "3.306.0", + "@aws-sdk/middleware-endpoint": "3.306.0", + "@aws-sdk/middleware-host-header": "3.306.0", + "@aws-sdk/middleware-logger": "3.306.0", + "@aws-sdk/middleware-recursion-detection": "3.306.0", + "@aws-sdk/middleware-retry": "3.306.0", + "@aws-sdk/middleware-serde": "3.306.0", + "@aws-sdk/middleware-stack": "3.306.0", + "@aws-sdk/middleware-user-agent": "3.306.0", + "@aws-sdk/node-config-provider": "3.306.0", + "@aws-sdk/node-http-handler": "3.306.0", + "@aws-sdk/protocol-http": "3.306.0", + "@aws-sdk/smithy-client": "3.309.0", + "@aws-sdk/types": "3.306.0", + "@aws-sdk/url-parser": "3.306.0", + "@aws-sdk/util-base64": "3.303.0", + "@aws-sdk/util-body-length-browser": "3.303.0", + "@aws-sdk/util-body-length-node": "3.303.0", + "@aws-sdk/util-defaults-mode-browser": "3.309.0", + "@aws-sdk/util-defaults-mode-node": "3.309.0", + "@aws-sdk/util-endpoints": "3.306.0", + "@aws-sdk/util-retry": "3.306.0", + "@aws-sdk/util-user-agent-browser": "3.306.0", + "@aws-sdk/util-user-agent-node": "3.306.0", + "@aws-sdk/util-utf8": "3.303.0", + "tslib": "^2.5.0" + }, + "engines": { + "node": ">=14.0.0" } }, - "@babel/helper-validator-identifier": { - "version": "7.10.3", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.10.3.tgz", - "integrity": "sha512-bU8JvtlYpJSBPuj1VUmKpFGaDZuLxASky3LhaKj3bmpSTY6VWooSM8msk+Z0CZoErFye2tlABF6yDkT3FOPAXw==", - "dev": true - }, - "@babel/helper-validator-option": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.16.7.tgz", - "integrity": "sha512-TRtenOuRUVo9oIQGPC5G9DgK4743cdxvtOw0weQNpZXaS16SCBi5MNjZF8vba3ETURjZpTbVn7Vvcf2eAwFozQ==", - "dev": true - }, - "@babel/helpers": { - "version": "7.17.9", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.17.9.tgz", - "integrity": "sha512-cPCt915ShDWUEzEp3+UNRktO2n6v49l5RSnG9M5pS24hA+2FAc5si+Pn1i4VVbQQ+jh+bIZhPFQOJOzbrOYY1Q==", + "node_modules/@aws-sdk/client-sts": { + "version": "3.309.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sts/-/client-sts-3.309.0.tgz", + "integrity": "sha512-rBVm50ft5o1FLaCNjSFY4c/lI7qPG5MMhOr4sdvEUaU1Mkniyd6M+3Pch9S3a5NtF0Kfzw9dWQpjAL+nqJaITQ==", "dev": true, - "requires": { - "@babel/template": "^7.16.7", - "@babel/traverse": "^7.17.9", - "@babel/types": "^7.17.0" + "optional": true, + "dependencies": { + "@aws-crypto/sha256-browser": "3.0.0", + "@aws-crypto/sha256-js": "3.0.0", + "@aws-sdk/config-resolver": "3.306.0", + "@aws-sdk/credential-provider-node": "3.309.0", + "@aws-sdk/fetch-http-handler": "3.306.0", + "@aws-sdk/hash-node": "3.306.0", + "@aws-sdk/invalid-dependency": "3.306.0", + "@aws-sdk/middleware-content-length": "3.306.0", + "@aws-sdk/middleware-endpoint": "3.306.0", + "@aws-sdk/middleware-host-header": "3.306.0", + "@aws-sdk/middleware-logger": "3.306.0", + "@aws-sdk/middleware-recursion-detection": "3.306.0", + "@aws-sdk/middleware-retry": "3.306.0", + "@aws-sdk/middleware-sdk-sts": "3.306.0", + "@aws-sdk/middleware-serde": "3.306.0", + "@aws-sdk/middleware-signing": "3.306.0", + "@aws-sdk/middleware-stack": "3.306.0", + "@aws-sdk/middleware-user-agent": "3.306.0", + "@aws-sdk/node-config-provider": "3.306.0", + "@aws-sdk/node-http-handler": "3.306.0", + "@aws-sdk/protocol-http": "3.306.0", + "@aws-sdk/smithy-client": "3.309.0", + "@aws-sdk/types": "3.306.0", + "@aws-sdk/url-parser": "3.306.0", + "@aws-sdk/util-base64": "3.303.0", + "@aws-sdk/util-body-length-browser": "3.303.0", + "@aws-sdk/util-body-length-node": "3.303.0", + "@aws-sdk/util-defaults-mode-browser": "3.309.0", + "@aws-sdk/util-defaults-mode-node": "3.309.0", + "@aws-sdk/util-endpoints": "3.306.0", + "@aws-sdk/util-retry": "3.306.0", + "@aws-sdk/util-user-agent-browser": "3.306.0", + "@aws-sdk/util-user-agent-node": "3.306.0", + "@aws-sdk/util-utf8": "3.303.0", + "fast-xml-parser": "4.1.2", + "tslib": "^2.5.0" + }, + "engines": { + "node": ">=14.0.0" } }, - "@babel/highlight": { - "version": "7.10.3", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.10.3.tgz", - "integrity": "sha512-Ih9B/u7AtgEnySE2L2F0Xm0GaM729XqqLfHkalTsbjXGyqmf/6M0Cu0WpvqueUlW+xk88BHw9Nkpj49naU+vWw==", + "node_modules/@aws-sdk/config-resolver": { + "version": "3.306.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/config-resolver/-/config-resolver-3.306.0.tgz", + "integrity": "sha512-kpqHu6LvNMYxullm+tLCsY6KQ2mZUxZTdyWJKTYLZCTxj4HcGJxf4Jxj9dwFAZVl/clcVPGWcHJaQJjyjwzBzw==", "dev": true, - "requires": { - "@babel/helper-validator-identifier": "^7.10.3", - "chalk": "^2.0.0", - "js-tokens": "^4.0.0" + "optional": true, + "dependencies": { + "@aws-sdk/types": "3.306.0", + "@aws-sdk/util-config-provider": "3.295.0", + "@aws-sdk/util-middleware": "3.306.0", + "tslib": "^2.5.0" + }, + "engines": { + "node": ">=14.0.0" } }, - "@babel/parser": { - "version": "7.17.9", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.17.9.tgz", - "integrity": "sha512-vqUSBLP8dQHFPdPi9bc5GK9vRkYHJ49fsZdtoJ8EQ8ibpwk5rPKfvNIwChB0KVXcIjcepEBBd2VHC5r9Gy8ueg==", - "dev": true - }, - "@babel/plugin-syntax-async-generators": { - "version": "7.8.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz", - "integrity": "sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==", + "node_modules/@aws-sdk/credential-provider-cognito-identity": { + "version": "3.309.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-cognito-identity/-/credential-provider-cognito-identity-3.309.0.tgz", + "integrity": "sha512-alpBaKa3sTb1bYQGqnLAqZVbFh5JldwQg+pIuXPt8CKwtpP00heeDPQ60e+9VYk5vKPoNYIbiDy7WmgOkLFMeg==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" + "optional": true, + "dependencies": { + "@aws-sdk/client-cognito-identity": "3.309.0", + "@aws-sdk/property-provider": "3.306.0", + "@aws-sdk/types": "3.306.0", + "tslib": "^2.5.0" + }, + "engines": { + "node": ">=14.0.0" } }, - "@babel/plugin-syntax-bigint": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-bigint/-/plugin-syntax-bigint-7.8.3.tgz", - "integrity": "sha512-wnTnFlG+YxQm3vDxpGE57Pj0srRU4sHE/mDkt1qv2YJJSeUAec2ma4WLUnUPeKjyrfntVwe/N6dCXpU+zL3Npg==", + "node_modules/@aws-sdk/credential-provider-env": { + "version": "3.306.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-env/-/credential-provider-env-3.306.0.tgz", + "integrity": "sha512-DTH+aMvMu+LAoWW+yfPkWzFXt/CPNFQ7+/4xiMnc7FWf+tjt+HZIrPECAV2rBVppNCkh7PC+xDSN61PFvBYOsw==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" + "optional": true, + "dependencies": { + "@aws-sdk/property-provider": "3.306.0", + "@aws-sdk/types": "3.306.0", + "tslib": "^2.5.0" + }, + "engines": { + "node": ">=14.0.0" } }, - "@babel/plugin-syntax-class-properties": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz", - "integrity": "sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==", + "node_modules/@aws-sdk/credential-provider-imds": { + "version": "3.306.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-imds/-/credential-provider-imds-3.306.0.tgz", + "integrity": "sha512-WdrNhq2MwvjZk2I8Of+bZ/qWHG2hREQpwlBiG3tMeEkuywx7M1x3Rt0eHgiR1sTcm05kxNn0rB4OeWOeek37cA==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.12.13" + "optional": true, + "dependencies": { + "@aws-sdk/node-config-provider": "3.306.0", + "@aws-sdk/property-provider": "3.306.0", + "@aws-sdk/types": "3.306.0", + "@aws-sdk/url-parser": "3.306.0", + "tslib": "^2.5.0" + }, + "engines": { + "node": ">=14.0.0" } }, - "@babel/plugin-syntax-import-meta": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz", - "integrity": "sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==", + "node_modules/@aws-sdk/credential-provider-ini": { + "version": "3.309.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.309.0.tgz", + "integrity": "sha512-7xAqfbuvEdQdz2YcS5OPWH6uv09pMEW6lvmEwM8tf3gn/c3mxFm0/geFeO3+hnkIjByPM02PW7qQJXmPu1l7AA==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.10.4" + "optional": true, + "dependencies": { + "@aws-sdk/credential-provider-env": "3.306.0", + "@aws-sdk/credential-provider-imds": "3.306.0", + "@aws-sdk/credential-provider-process": "3.306.0", + "@aws-sdk/credential-provider-sso": "3.309.0", + "@aws-sdk/credential-provider-web-identity": "3.306.0", + "@aws-sdk/property-provider": "3.306.0", + "@aws-sdk/shared-ini-file-loader": "3.306.0", + "@aws-sdk/types": "3.306.0", + "tslib": "^2.5.0" + }, + "engines": { + "node": ">=14.0.0" } }, - "@babel/plugin-syntax-json-strings": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz", - "integrity": "sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==", + "node_modules/@aws-sdk/credential-provider-node": { + "version": "3.309.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.309.0.tgz", + "integrity": "sha512-rgf53RH9mcATr+5rRGGqRmoOEceX+XSbQvGM1QRHxROJJiYsZWdBQu9w+UuKcQF03qLMfi4G+6iNHect5TVs2Q==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" + "optional": true, + "dependencies": { + "@aws-sdk/credential-provider-env": "3.306.0", + "@aws-sdk/credential-provider-imds": "3.306.0", + "@aws-sdk/credential-provider-ini": "3.309.0", + "@aws-sdk/credential-provider-process": "3.306.0", + "@aws-sdk/credential-provider-sso": "3.309.0", + "@aws-sdk/credential-provider-web-identity": "3.306.0", + "@aws-sdk/property-provider": "3.306.0", + "@aws-sdk/shared-ini-file-loader": "3.306.0", + "@aws-sdk/types": "3.306.0", + "tslib": "^2.5.0" + }, + "engines": { + "node": ">=14.0.0" } }, - "@babel/plugin-syntax-logical-assignment-operators": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz", - "integrity": "sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==", + "node_modules/@aws-sdk/credential-provider-process": { + "version": "3.306.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-process/-/credential-provider-process-3.306.0.tgz", + "integrity": "sha512-2RezGskHqJeHtGbK7CqhGNAoqXgQJb7FfPFqwUQ9oVDZS8f145jVwajjHcc7Qn3IwGoqylMF3uXIljUv89uDzA==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.10.4" + "optional": true, + "dependencies": { + "@aws-sdk/property-provider": "3.306.0", + "@aws-sdk/shared-ini-file-loader": "3.306.0", + "@aws-sdk/types": "3.306.0", + "tslib": "^2.5.0" + }, + "engines": { + "node": ">=14.0.0" } }, - "@babel/plugin-syntax-nullish-coalescing-operator": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz", - "integrity": "sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==", + "node_modules/@aws-sdk/credential-provider-sso": { + "version": "3.309.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.309.0.tgz", + "integrity": "sha512-uMphs47O2S9NK7I5CsDttp88X7b/JktGOrW8RTLRw1QURQ8v0uP+MLHFogRtWi4E7+zo86Equ0njlpYlFvrpSA==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" + "optional": true, + "dependencies": { + "@aws-sdk/client-sso": "3.309.0", + "@aws-sdk/property-provider": "3.306.0", + "@aws-sdk/shared-ini-file-loader": "3.306.0", + "@aws-sdk/token-providers": "3.309.0", + "@aws-sdk/types": "3.306.0", + "tslib": "^2.5.0" + }, + "engines": { + "node": ">=14.0.0" } }, - "@babel/plugin-syntax-numeric-separator": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz", - "integrity": "sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==", + "node_modules/@aws-sdk/credential-provider-web-identity": { + "version": "3.306.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.306.0.tgz", + "integrity": "sha512-MOQGQaOtdo4zLQZ1bRjD2n1PUzfNty+sKe+1wlm5bIqTN93UX3S8f0QznucZr7uJxI4Z14ZLwuYeAUV4Tgchlw==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.10.4" + "optional": true, + "dependencies": { + "@aws-sdk/property-provider": "3.306.0", + "@aws-sdk/types": "3.306.0", + "tslib": "^2.5.0" + }, + "engines": { + "node": ">=14.0.0" } }, - "@babel/plugin-syntax-object-rest-spread": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz", - "integrity": "sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==", + "node_modules/@aws-sdk/credential-providers": { + "version": "3.309.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-providers/-/credential-providers-3.309.0.tgz", + "integrity": "sha512-hNb1Qh494JAKk0WPkdd09RoXllwnOctTFfBNHZPeG1zS/hrEiKO5M/EiHstA1DolI3GQTwnxqRs29L1nMbFLWQ==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" + "optional": true, + "dependencies": { + "@aws-sdk/client-cognito-identity": "3.309.0", + "@aws-sdk/client-sso": "3.309.0", + "@aws-sdk/client-sts": "3.309.0", + "@aws-sdk/credential-provider-cognito-identity": "3.309.0", + "@aws-sdk/credential-provider-env": "3.306.0", + "@aws-sdk/credential-provider-imds": "3.306.0", + "@aws-sdk/credential-provider-ini": "3.309.0", + "@aws-sdk/credential-provider-node": "3.309.0", + "@aws-sdk/credential-provider-process": "3.306.0", + "@aws-sdk/credential-provider-sso": "3.309.0", + "@aws-sdk/credential-provider-web-identity": "3.306.0", + "@aws-sdk/property-provider": "3.306.0", + "@aws-sdk/types": "3.306.0", + "tslib": "^2.5.0" + }, + "engines": { + "node": ">=14.0.0" } }, - "@babel/plugin-syntax-optional-catch-binding": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz", - "integrity": "sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==", + "node_modules/@aws-sdk/fetch-http-handler": { + "version": "3.306.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/fetch-http-handler/-/fetch-http-handler-3.306.0.tgz", + "integrity": "sha512-T8OODOnPpDqkXS+XSMIkd6hf90h833JLN93wq3ibbyD/WvGveufFFHsbsNyccE9+CSv/BjEuN5QbHqTKTp3BlA==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" + "optional": true, + "dependencies": { + "@aws-sdk/protocol-http": "3.306.0", + "@aws-sdk/querystring-builder": "3.306.0", + "@aws-sdk/types": "3.306.0", + "@aws-sdk/util-base64": "3.303.0", + "tslib": "^2.5.0" } }, - "@babel/plugin-syntax-optional-chaining": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz", - "integrity": "sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==", + "node_modules/@aws-sdk/hash-node": { + "version": "3.306.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/hash-node/-/hash-node-3.306.0.tgz", + "integrity": "sha512-EcSLd6gKoDEEBPZqEv+Ky9gIyefwyyrAJGILGKoYBmcOIY7Y0xKId0hxCa9/1xvWTaVC1u+rA06DGgksZOa78w==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" + "optional": true, + "dependencies": { + "@aws-sdk/types": "3.306.0", + "@aws-sdk/util-buffer-from": "3.303.0", + "@aws-sdk/util-utf8": "3.303.0", + "tslib": "^2.5.0" + }, + "engines": { + "node": ">=14.0.0" } }, - "@babel/plugin-syntax-top-level-await": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz", - "integrity": "sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==", + "node_modules/@aws-sdk/invalid-dependency": { + "version": "3.306.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/invalid-dependency/-/invalid-dependency-3.306.0.tgz", + "integrity": "sha512-9Mkcr+qG7QR4R5bJcA8bBNd8E2x6WaZStsQ3QeFbdQr3V3Tunvra/KlCFsEL55GgU8BZt5isOaHqq7uxs5ILtQ==", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.14.5" + "optional": true, + "dependencies": { + "@aws-sdk/types": "3.306.0", + "tslib": "^2.5.0" } }, - "@babel/template": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.16.7.tgz", - "integrity": "sha512-I8j/x8kHUrbYRTUxXrrMbfCa7jxkE7tZre39x3kjr9hvI82cK1FfqLygotcWN5kdPGWcLdWMHpSBavse5tWw3w==", + "node_modules/@aws-sdk/is-array-buffer": { + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/is-array-buffer/-/is-array-buffer-3.303.0.tgz", + "integrity": "sha512-IitBTr+pou7v5BrYLFH/SbIf3g1LIgMhcI3bDXBq2FjzmDftj4bW8BOmg05b9YKf2TrrggvJ4yk/jH+yYFXoJQ==", "dev": true, - "requires": { - "@babel/code-frame": "^7.16.7", - "@babel/parser": "^7.16.7", - "@babel/types": "^7.16.7" - }, + "optional": true, "dependencies": { - "@babel/code-frame": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.16.7.tgz", - "integrity": "sha512-iAXqUn8IIeBTNd72xsFlgaXHkMBMt6y4HJp1tIaK465CWLT/fG1aqB7ykr95gHHmlBdGbFeWWfyB4NJJ0nmeIg==", - "dev": true, - "requires": { - "@babel/highlight": "^7.16.7" - } - }, - "@babel/helper-validator-identifier": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.16.7.tgz", - "integrity": "sha512-hsEnFemeiW4D08A5gUAZxLBTXpZ39P+a+DGDsHw1yxqyQ/jzFEnxf5uTEGp+3bzAbNOxU1paTgYS4ECU/IgfDw==", - "dev": true - }, - "@babel/highlight": { - "version": "7.17.9", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.17.9.tgz", - "integrity": "sha512-J9PfEKCbFIv2X5bjTMiZu6Vf341N05QIY+d6FvVKynkG1S7G0j3I0QoRtWIrXhZ+/Nlb5Q0MzqL7TokEJ5BNHg==", - "dev": true, - "requires": { - "@babel/helper-validator-identifier": "^7.16.7", - "chalk": "^2.0.0", - "js-tokens": "^4.0.0" - } - } + "tslib": "^2.5.0" + }, + "engines": { + "node": ">=14.0.0" } }, - "@babel/traverse": { - "version": "7.17.9", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.17.9.tgz", - "integrity": "sha512-PQO8sDIJ8SIwipTPiR71kJQCKQYB5NGImbOviK8K+kg5xkNSYXLBupuX9QhatFowrsvo9Hj8WgArg3W7ijNAQw==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.16.7", - "@babel/generator": "^7.17.9", - "@babel/helper-environment-visitor": "^7.16.7", - "@babel/helper-function-name": "^7.17.9", - "@babel/helper-hoist-variables": "^7.16.7", - "@babel/helper-split-export-declaration": "^7.16.7", - "@babel/parser": "^7.17.9", - "@babel/types": "^7.17.0", - "debug": "^4.1.0", - "globals": "^11.1.0" - }, + "node_modules/@aws-sdk/middleware-content-length": { + "version": "3.306.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-content-length/-/middleware-content-length-3.306.0.tgz", + "integrity": "sha512-JbONf2Ms+/DVRcpFNsKGdOQU94Js56KV+AhlPJmCwLxfyWvQjTt0KxFC1Dd+cjeNEXUduvBarrehgsqFlWnoHQ==", + "dev": true, + "optional": true, "dependencies": { - "@babel/code-frame": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.16.7.tgz", - "integrity": "sha512-iAXqUn8IIeBTNd72xsFlgaXHkMBMt6y4HJp1tIaK465CWLT/fG1aqB7ykr95gHHmlBdGbFeWWfyB4NJJ0nmeIg==", - "dev": true, - "requires": { - "@babel/highlight": "^7.16.7" - } - }, - "@babel/helper-validator-identifier": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.16.7.tgz", - "integrity": "sha512-hsEnFemeiW4D08A5gUAZxLBTXpZ39P+a+DGDsHw1yxqyQ/jzFEnxf5uTEGp+3bzAbNOxU1paTgYS4ECU/IgfDw==", - "dev": true - }, - "@babel/highlight": { - "version": "7.17.9", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.17.9.tgz", - "integrity": "sha512-J9PfEKCbFIv2X5bjTMiZu6Vf341N05QIY+d6FvVKynkG1S7G0j3I0QoRtWIrXhZ+/Nlb5Q0MzqL7TokEJ5BNHg==", - "dev": true, - "requires": { - "@babel/helper-validator-identifier": "^7.16.7", - "chalk": "^2.0.0", - "js-tokens": "^4.0.0" - } - } + "@aws-sdk/protocol-http": "3.306.0", + "@aws-sdk/types": "3.306.0", + "tslib": "^2.5.0" + }, + "engines": { + "node": ">=14.0.0" } }, - "@babel/types": { - "version": "7.17.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.17.0.tgz", - "integrity": "sha512-TmKSNO4D5rzhL5bjWFcVHHLETzfQ/AmbKpKPOSjlP0WoHZ6L911fgoOKY4Alp/emzG4cHJdyN49zpgkbXFEHHw==", + "node_modules/@aws-sdk/middleware-endpoint": { + "version": "3.306.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-endpoint/-/middleware-endpoint-3.306.0.tgz", + "integrity": "sha512-i3QRiwgkcsuVN55O7l8I/QGwCypGRZXdYkPjU56LI2w2oiZ82f/nVMNXVc+ZFm2YH7WbCE+5jguw2J7HXdOlyQ==", "dev": true, - "requires": { - "@babel/helper-validator-identifier": "^7.16.7", - "to-fast-properties": "^2.0.0" - }, + "optional": true, "dependencies": { - "@babel/helper-validator-identifier": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.16.7.tgz", - "integrity": "sha512-hsEnFemeiW4D08A5gUAZxLBTXpZ39P+a+DGDsHw1yxqyQ/jzFEnxf5uTEGp+3bzAbNOxU1paTgYS4ECU/IgfDw==", - "dev": true - } + "@aws-sdk/middleware-serde": "3.306.0", + "@aws-sdk/types": "3.306.0", + "@aws-sdk/url-parser": "3.306.0", + "@aws-sdk/util-middleware": "3.306.0", + "tslib": "^2.5.0" + }, + "engines": { + "node": ">=14.0.0" } }, - "@bcoe/v8-coverage": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz", - "integrity": "sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==", - "dev": true - }, - "@cnakazawa/watch": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/@cnakazawa/watch/-/watch-1.0.4.tgz", - "integrity": "sha512-v9kIhKwjeZThiWrLmj0y17CWoyddASLj9O2yvbZkbvw/N3rWOYy9zkV66ursAoVr0mV15bL8g0c4QZUE6cdDoQ==", + "node_modules/@aws-sdk/middleware-host-header": { + "version": "3.306.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-host-header/-/middleware-host-header-3.306.0.tgz", + "integrity": "sha512-mHDHK9E+c7HwMlrCJ+VFSB6tkq8oJVkYEHCvPkdrnzN/g9P/d/UhPIeGapZXMbAIZEaLpEGqs536mYzeRKZG8A==", "dev": true, - "requires": { - "exec-sh": "^0.3.2", - "minimist": "^1.2.0" + "optional": true, + "dependencies": { + "@aws-sdk/protocol-http": "3.306.0", + "@aws-sdk/types": "3.306.0", + "tslib": "^2.5.0" + }, + "engines": { + "node": ">=14.0.0" } }, - "@istanbuljs/load-nyc-config": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz", - "integrity": "sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==", + "node_modules/@aws-sdk/middleware-logger": { + "version": "3.306.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-logger/-/middleware-logger-3.306.0.tgz", + "integrity": "sha512-1FRHp/QB0Lb+CgP+c9CYW6BZh+q+5pnuOKo/Rd6hjYiM+kT1G/cWdXnMJQBR4rbTCTixbqCnObNJ1EyP/ofQhQ==", "dev": true, - "requires": { - "camelcase": "^5.3.1", - "find-up": "^4.1.0", - "get-package-type": "^0.1.0", - "js-yaml": "^3.13.1", - "resolve-from": "^5.0.0" + "optional": true, + "dependencies": { + "@aws-sdk/types": "3.306.0", + "tslib": "^2.5.0" + }, + "engines": { + "node": ">=14.0.0" } }, - "@istanbuljs/schema": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz", - "integrity": "sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==", - "dev": true - }, - "@jest/console": { - "version": "26.6.2", - "resolved": "https://registry.npmjs.org/@jest/console/-/console-26.6.2.tgz", - "integrity": "sha512-IY1R2i2aLsLr7Id3S6p2BA82GNWryt4oSvEXLAKc+L2zdi89dSkE8xC1C+0kpATG4JhBJREnQOH7/zmccM2B0g==", + "node_modules/@aws-sdk/middleware-recursion-detection": { + "version": "3.306.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-recursion-detection/-/middleware-recursion-detection-3.306.0.tgz", + "integrity": "sha512-Hpj42ZLmwCy/CtVxi57NTeOEPoUJlivF3VIgowZ9JhaF61cakVKyrJ+f3jwXciDUtuYrdKm5Wf6prW6apWo0YA==", "dev": true, - "requires": { - "@jest/types": "^26.6.2", - "@types/node": "*", - "chalk": "^4.0.0", - "jest-message-util": "^26.6.2", - "jest-util": "^26.6.2", - "slash": "^3.0.0" - }, + "optional": true, "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" - } - }, - "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" - } - }, - "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" - } - } + "@aws-sdk/protocol-http": "3.306.0", + "@aws-sdk/types": "3.306.0", + "tslib": "^2.5.0" + }, + "engines": { + "node": ">=14.0.0" } }, - "@jest/core": { - "version": "26.6.3", - "resolved": "https://registry.npmjs.org/@jest/core/-/core-26.6.3.tgz", - "integrity": "sha512-xvV1kKbhfUqFVuZ8Cyo+JPpipAHHAV3kcDBftiduK8EICXmTFddryy3P7NfZt8Pv37rA9nEJBKCCkglCPt/Xjw==", + "node_modules/@aws-sdk/middleware-retry": { + "version": "3.306.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-retry/-/middleware-retry-3.306.0.tgz", + "integrity": "sha512-eMyfr/aeurXXDz4x+WVrvLI8fVDP6klJOjziBEWZ/MUNP/hTFhkiQsMVbvT6O4Pspp7+FgCSdcUPG6Os2gK+CQ==", "dev": true, - "requires": { - "@jest/console": "^26.6.2", - "@jest/reporters": "^26.6.2", - "@jest/test-result": "^26.6.2", - "@jest/transform": "^26.6.2", - "@jest/types": "^26.6.2", - "@types/node": "*", - "ansi-escapes": "^4.2.1", - "chalk": "^4.0.0", - "exit": "^0.1.2", - "graceful-fs": "^4.2.4", - "jest-changed-files": "^26.6.2", - "jest-config": "^26.6.3", - "jest-haste-map": "^26.6.2", - "jest-message-util": "^26.6.2", - "jest-regex-util": "^26.0.0", - "jest-resolve": "^26.6.2", - "jest-resolve-dependencies": "^26.6.3", - "jest-runner": "^26.6.3", - "jest-runtime": "^26.6.3", - "jest-snapshot": "^26.6.2", - "jest-util": "^26.6.2", - "jest-validate": "^26.6.2", - "jest-watcher": "^26.6.2", - "micromatch": "^4.0.2", - "p-each-series": "^2.1.0", - "rimraf": "^3.0.0", - "slash": "^3.0.0", - "strip-ansi": "^6.0.0" - }, + "optional": true, "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" - } - }, - "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" - } - }, - "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" - } - } + "@aws-sdk/protocol-http": "3.306.0", + "@aws-sdk/service-error-classification": "3.306.0", + "@aws-sdk/types": "3.306.0", + "@aws-sdk/util-middleware": "3.306.0", + "@aws-sdk/util-retry": "3.306.0", + "tslib": "^2.5.0", + "uuid": "^8.3.2" + }, + "engines": { + "node": ">=14.0.0" } }, - "@jest/environment": { - "version": "26.6.2", - "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-26.6.2.tgz", - "integrity": "sha512-nFy+fHl28zUrRsCeMB61VDThV1pVTtlEokBRgqPrcT1JNq4yRNIyTHfyht6PqtUvY9IsuLGTrbG8kPXjSZIZwA==", + "node_modules/@aws-sdk/middleware-sdk-sts": { + "version": "3.306.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-sdk-sts/-/middleware-sdk-sts-3.306.0.tgz", + "integrity": "sha512-2rSAR3nc5faYuEnh1KxQMCMCkEkJyaDfA3zwWLqZ+/TBCH0PlPkBv+Z9yXmteEki0vI5Hr+e+atTutJZoyG13g==", "dev": true, - "requires": { - "@jest/fake-timers": "^26.6.2", - "@jest/types": "^26.6.2", - "@types/node": "*", - "jest-mock": "^26.6.2" + "optional": true, + "dependencies": { + "@aws-sdk/middleware-signing": "3.306.0", + "@aws-sdk/types": "3.306.0", + "tslib": "^2.5.0" + }, + "engines": { + "node": ">=14.0.0" } }, - "@jest/fake-timers": { - "version": "26.6.2", - "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-26.6.2.tgz", - "integrity": "sha512-14Uleatt7jdzefLPYM3KLcnUl1ZNikaKq34enpb5XG9i81JpppDb5muZvonvKyrl7ftEHkKS5L5/eB/kxJ+bvA==", + "node_modules/@aws-sdk/middleware-serde": { + "version": "3.306.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-serde/-/middleware-serde-3.306.0.tgz", + "integrity": "sha512-M3gyPLPduZXMvdgt4XEpVO+3t0ZVPdgeQQwG6JnXv0dgyUizshYs4lrVOAb1KwF6StsmkrAgSN+I273elLiKjA==", "dev": true, - "requires": { - "@jest/types": "^26.6.2", - "@sinonjs/fake-timers": "^6.0.1", - "@types/node": "*", - "jest-message-util": "^26.6.2", - "jest-mock": "^26.6.2", - "jest-util": "^26.6.2" + "optional": true, + "dependencies": { + "@aws-sdk/types": "3.306.0", + "tslib": "^2.5.0" + }, + "engines": { + "node": ">=14.0.0" } }, - "@jest/globals": { - "version": "26.6.2", - "resolved": "https://registry.npmjs.org/@jest/globals/-/globals-26.6.2.tgz", - "integrity": "sha512-85Ltnm7HlB/KesBUuALwQ68YTU72w9H2xW9FjZ1eL1U3lhtefjjl5c2MiUbpXt/i6LaPRvoOFJ22yCBSfQ0JIA==", + "node_modules/@aws-sdk/middleware-signing": { + "version": "3.306.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-signing/-/middleware-signing-3.306.0.tgz", + "integrity": "sha512-JhpSriN4xa4a/p5gAPL0OWFKJF4eWYU3K+LLlXBNGMbxg/qNL4skgT4dMFe3ii9EW8kI+r6tpvSgC+lP7/Tyng==", "dev": true, - "requires": { - "@jest/environment": "^26.6.2", - "@jest/types": "^26.6.2", - "expect": "^26.6.2" + "optional": true, + "dependencies": { + "@aws-sdk/property-provider": "3.306.0", + "@aws-sdk/protocol-http": "3.306.0", + "@aws-sdk/signature-v4": "3.306.0", + "@aws-sdk/types": "3.306.0", + "@aws-sdk/util-middleware": "3.306.0", + "tslib": "^2.5.0" + }, + "engines": { + "node": ">=14.0.0" } }, - "@jest/reporters": { - "version": "26.6.2", - "resolved": "https://registry.npmjs.org/@jest/reporters/-/reporters-26.6.2.tgz", - "integrity": "sha512-h2bW53APG4HvkOnVMo8q3QXa6pcaNt1HkwVsOPMBV6LD/q9oSpxNSYZQYkAnjdMjrJ86UuYeLo+aEZClV6opnw==", + "node_modules/@aws-sdk/middleware-stack": { + "version": "3.306.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-stack/-/middleware-stack-3.306.0.tgz", + "integrity": "sha512-G//a6MVSxyFVpOMZ+dzT3+w7XblOd2tRJ5g+/okjn3pNBLbo5o9Hu33K/bz0SQjT/m5mU2F9m0wcdCPYbRPysg==", "dev": true, - "requires": { - "@bcoe/v8-coverage": "^0.2.3", - "@jest/console": "^26.6.2", - "@jest/test-result": "^26.6.2", - "@jest/transform": "^26.6.2", - "@jest/types": "^26.6.2", - "chalk": "^4.0.0", - "collect-v8-coverage": "^1.0.0", - "exit": "^0.1.2", - "glob": "^7.1.2", - "graceful-fs": "^4.2.4", - "istanbul-lib-coverage": "^3.0.0", - "istanbul-lib-instrument": "^4.0.3", - "istanbul-lib-report": "^3.0.0", - "istanbul-lib-source-maps": "^4.0.0", - "istanbul-reports": "^3.0.2", - "jest-haste-map": "^26.6.2", - "jest-resolve": "^26.6.2", - "jest-util": "^26.6.2", - "jest-worker": "^26.6.2", - "node-notifier": "^8.0.0", - "slash": "^3.0.0", - "source-map": "^0.6.0", - "string-length": "^4.0.1", - "terminal-link": "^2.0.0", - "v8-to-istanbul": "^7.0.0" - }, + "optional": true, "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" - } - }, - "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" - } - }, - "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" - } - } + "tslib": "^2.5.0" + }, + "engines": { + "node": ">=14.0.0" } }, - "@jest/source-map": { - "version": "26.6.2", - "resolved": "https://registry.npmjs.org/@jest/source-map/-/source-map-26.6.2.tgz", - "integrity": "sha512-YwYcCwAnNmOVsZ8mr3GfnzdXDAl4LaenZP5z+G0c8bzC9/dugL8zRmxZzdoTl4IaS3CryS1uWnROLPFmb6lVvA==", + "node_modules/@aws-sdk/middleware-user-agent": { + "version": "3.306.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-user-agent/-/middleware-user-agent-3.306.0.tgz", + "integrity": "sha512-tP6I+Lbs68muPfdMA6Rfc+8fYo49nEn9A3RMiOU2COClWsmiZatpbK9UYlqIOxeGB/s2jI7hXmQq6tT2LStLSg==", "dev": true, - "requires": { - "callsites": "^3.0.0", - "graceful-fs": "^4.2.4", - "source-map": "^0.6.0" + "optional": true, + "dependencies": { + "@aws-sdk/protocol-http": "3.306.0", + "@aws-sdk/types": "3.306.0", + "@aws-sdk/util-endpoints": "3.306.0", + "tslib": "^2.5.0" + }, + "engines": { + "node": ">=14.0.0" } }, - "@jest/test-result": { - "version": "26.6.2", - "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-26.6.2.tgz", - "integrity": "sha512-5O7H5c/7YlojphYNrK02LlDIV2GNPYisKwHm2QTKjNZeEzezCbwYs9swJySv2UfPMyZ0VdsmMv7jIlD/IKYQpQ==", + "node_modules/@aws-sdk/node-config-provider": { + "version": "3.306.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/node-config-provider/-/node-config-provider-3.306.0.tgz", + "integrity": "sha512-+m+ALxNx5E1zLPPijO1pAbT5tnofLzZFWlnSYBEiOIwzaRU44rLYDqAhgXJkMMbOECkffDrv6ym0oWJIwJI+DA==", "dev": true, - "requires": { - "@jest/console": "^26.6.2", - "@jest/types": "^26.6.2", - "@types/istanbul-lib-coverage": "^2.0.0", - "collect-v8-coverage": "^1.0.0" + "optional": true, + "dependencies": { + "@aws-sdk/property-provider": "3.306.0", + "@aws-sdk/shared-ini-file-loader": "3.306.0", + "@aws-sdk/types": "3.306.0", + "tslib": "^2.5.0" + }, + "engines": { + "node": ">=14.0.0" } }, - "@jest/test-sequencer": { - "version": "26.6.3", - "resolved": "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-26.6.3.tgz", - "integrity": "sha512-YHlVIjP5nfEyjlrSr8t/YdNfU/1XEt7c5b4OxcXCjyRhjzLYu/rO69/WHPuYcbCWkz8kAeZVZp2N2+IOLLEPGw==", + "node_modules/@aws-sdk/node-http-handler": { + "version": "3.306.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/node-http-handler/-/node-http-handler-3.306.0.tgz", + "integrity": "sha512-qvNSIVdGf0pnWEXsAulIqXk7LML25Zc1yxbujxoAj8oX5y+mDhzQdHKrMgc0FuI4RKoEd9px4DYoUbmTWrrxwA==", "dev": true, - "requires": { - "@jest/test-result": "^26.6.2", - "graceful-fs": "^4.2.4", - "jest-haste-map": "^26.6.2", - "jest-runner": "^26.6.3", - "jest-runtime": "^26.6.3" + "optional": true, + "dependencies": { + "@aws-sdk/abort-controller": "3.306.0", + "@aws-sdk/protocol-http": "3.306.0", + "@aws-sdk/querystring-builder": "3.306.0", + "@aws-sdk/types": "3.306.0", + "tslib": "^2.5.0" + }, + "engines": { + "node": ">=14.0.0" } }, - "@jest/transform": { - "version": "26.6.2", - "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-26.6.2.tgz", - "integrity": "sha512-E9JjhUgNzvuQ+vVAL21vlyfy12gP0GhazGgJC4h6qUt1jSdUXGWJ1wfu/X7Sd8etSgxV4ovT1pb9v5D6QW4XgA==", + "node_modules/@aws-sdk/property-provider": { + "version": "3.306.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/property-provider/-/property-provider-3.306.0.tgz", + "integrity": "sha512-37PnbjpANjHys0Y+DVmKUz1JbSGZ/mAndZeplTUsFDUtbNwJRw/fDyWUvGC82JWB4gNSP5muWscFvetZnK2l8A==", "dev": true, - "requires": { - "@babel/core": "^7.1.0", - "@jest/types": "^26.6.2", - "babel-plugin-istanbul": "^6.0.0", - "chalk": "^4.0.0", - "convert-source-map": "^1.4.0", - "fast-json-stable-stringify": "^2.0.0", - "graceful-fs": "^4.2.4", - "jest-haste-map": "^26.6.2", - "jest-regex-util": "^26.0.0", - "jest-util": "^26.6.2", - "micromatch": "^4.0.2", - "pirates": "^4.0.1", - "slash": "^3.0.0", - "source-map": "^0.6.1", - "write-file-atomic": "^3.0.0" + "optional": true, + "dependencies": { + "@aws-sdk/types": "3.306.0", + "tslib": "^2.5.0" }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/protocol-http": { + "version": "3.306.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/protocol-http/-/protocol-http-3.306.0.tgz", + "integrity": "sha512-6Z8bqB8Ydz/qG7+lJzjwsjIca2w2zp4nZ2HjxMoUm0NBbVXGDx7H9qy9eOUqEiCbdXbsfK2BmVQreLhFLt056Q==", + "dev": true, + "optional": true, "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" - } - }, - "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" - } - }, - "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" - } - } + "@aws-sdk/types": "3.306.0", + "tslib": "^2.5.0" + }, + "engines": { + "node": ">=14.0.0" } }, - "@jest/types": { - "version": "26.6.2", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-26.6.2.tgz", - "integrity": "sha512-fC6QCp7Sc5sX6g8Tvbmj4XUTbyrik0akgRy03yjXbQaBWWNWGE7SGtJk98m0N8nzegD/7SggrUlivxo5ax4KWQ==", + "node_modules/@aws-sdk/querystring-builder": { + "version": "3.306.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/querystring-builder/-/querystring-builder-3.306.0.tgz", + "integrity": "sha512-kvz6fLwE4KojTxbphuo9JPwKKuhau2mmSurnqhtf77t9+0cOh2uzyYhIUtOFewpLj+qGoh4b2EODlJqczc7IKg==", "dev": true, - "requires": { - "@types/istanbul-lib-coverage": "^2.0.0", - "@types/istanbul-reports": "^3.0.0", - "@types/node": "*", - "@types/yargs": "^15.0.0", - "chalk": "^4.0.0" + "optional": true, + "dependencies": { + "@aws-sdk/types": "3.306.0", + "@aws-sdk/util-uri-escape": "3.303.0", + "tslib": "^2.5.0" }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/querystring-parser": { + "version": "3.306.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/querystring-parser/-/querystring-parser-3.306.0.tgz", + "integrity": "sha512-YjOdLcyS/8sNkFPgnxyUx+cM/P2XFGCA2WjQ0e9AXX8xFFkmnY6U5w2EknQ5zyvKy+R/KAV0KAMJBUB+ofjg0A==", + "dev": true, + "optional": true, "dependencies": { - "@types/istanbul-reports": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-3.0.1.tgz", - "integrity": "sha512-c3mAZEuK0lvBp8tmuL74XRKn1+y2dcwOUpH7x4WrF6gk1GIgiluDRgMYQtw2OFcBvAJWlt6ASU3tSqxp0Uu0Aw==", - "dev": true, - "requires": { - "@types/istanbul-lib-report": "*" - } - }, - "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" - } - }, - "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" - } - }, - "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" - } - } + "@aws-sdk/types": "3.306.0", + "tslib": "^2.5.0" + }, + "engines": { + "node": ">=14.0.0" } }, - "@jridgewell/resolve-uri": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.0.5.tgz", - "integrity": "sha512-VPeQ7+wH0itvQxnG+lIzWgkysKIr3L9sslimFW55rHMdGu/qCQ5z5h9zq4gI8uBtqkpHhsF4Z/OwExufUCThew==", - "dev": true + "node_modules/@aws-sdk/service-error-classification": { + "version": "3.306.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/service-error-classification/-/service-error-classification-3.306.0.tgz", + "integrity": "sha512-lmXIVHWU5J60GmmTgyj79kupWYg5ntyNrUPt1P9FYTsXz+tdk4YYH7/2IxZ1XjBr4jEsN56gfSI0cfT07ztQJA==", + "dev": true, + "optional": true, + "engines": { + "node": ">=14.0.0" + } }, - "@jridgewell/sourcemap-codec": { - "version": "1.4.11", - "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.11.tgz", - "integrity": "sha512-Fg32GrJo61m+VqYSdRSjRXMjQ06j8YIYfcTqndLYVAaHmroZHLJZCydsWBOTDqXS2v+mjxohBWEMfg97GXmYQg==", - "dev": true + "node_modules/@aws-sdk/shared-ini-file-loader": { + "version": "3.306.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/shared-ini-file-loader/-/shared-ini-file-loader-3.306.0.tgz", + "integrity": "sha512-mDmBRN+Y0+EBD5megId97UIJGV/rmRsAds22qy0mmVdD3X7qlxn974btXVgfZyda6qw/pX6hgi8X99Qj6Wjb0w==", + "dev": true, + "optional": true, + "dependencies": { + "@aws-sdk/types": "3.306.0", + "tslib": "^2.5.0" + }, + "engines": { + "node": ">=14.0.0" + } }, - "@jridgewell/trace-mapping": { - "version": "0.3.9", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz", - "integrity": "sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==", + "node_modules/@aws-sdk/signature-v4": { + "version": "3.306.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/signature-v4/-/signature-v4-3.306.0.tgz", + "integrity": "sha512-yoQTo6wLirKHg34Zhm8tKmfEaK8fOn+psVdMtRs2vGq3uzKLb+YW5zywnujoVwBvygQTWxiDMwRxDduWAisccA==", "dev": true, - "requires": { - "@jridgewell/resolve-uri": "^3.0.3", - "@jridgewell/sourcemap-codec": "^1.4.10" + "optional": true, + "dependencies": { + "@aws-sdk/is-array-buffer": "3.303.0", + "@aws-sdk/types": "3.306.0", + "@aws-sdk/util-hex-encoding": "3.295.0", + "@aws-sdk/util-middleware": "3.306.0", + "@aws-sdk/util-uri-escape": "3.303.0", + "@aws-sdk/util-utf8": "3.303.0", + "tslib": "^2.5.0" + }, + "engines": { + "node": ">=14.0.0" } }, - "@mrmlnc/readdir-enhanced": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/@mrmlnc/readdir-enhanced/-/readdir-enhanced-2.2.1.tgz", - "integrity": "sha512-bPHp6Ji8b41szTOcaP63VlnbbO5Ny6dwAATtY6JTjh5N2OLrb5Qk/Th5cRkRQhkWCt+EJsYrNB0MiL+Gpn6e3g==", + "node_modules/@aws-sdk/smithy-client": { + "version": "3.309.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/smithy-client/-/smithy-client-3.309.0.tgz", + "integrity": "sha512-2+LJD8/J9yoYmfjLZuMTI/IF8qFMMclWdDJaalj4Rzzd7qBWDS3Q23UxpZi9VR155nqpgr/R+TFZMgze1EhRHg==", "dev": true, - "requires": { - "call-me-maybe": "^1.0.1", - "glob-to-regexp": "^0.3.0" + "optional": true, + "dependencies": { + "@aws-sdk/middleware-stack": "3.306.0", + "@aws-sdk/types": "3.306.0", + "tslib": "^2.5.0" + }, + "engines": { + "node": ">=14.0.0" } }, - "@ngageoint/mage.service": { - "version": "file:../../service", + "node_modules/@aws-sdk/token-providers": { + "version": "3.309.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/token-providers/-/token-providers-3.309.0.tgz", + "integrity": "sha512-rB79nQArhVT3l8UglZyinZVm13hFRF4xqzrmSLNknxdlMLamrON/94H7S6lFLywdTags2SUdAxQ/LlStlFf78A==", "dev": true, - "requires": { - "@mapbox/togeojson": "0.16.0", - "@ngageoint/geopackage": "^4.1.0-beta.1", - "@turf/centroid": "~6.0.0", - "@turf/kinks": "~6.0.0", - "adm-zip": "0.4.9", - "archiver": "5.3.0", - "async": "0.2.x", - "base-64": "1.0.0", - "body-parser": "1.18.3", - "cfenv": "1.0.3", - "commander": "^8.2.0", - "dbf": "0.1.0", - "express": "~4.17.0", - "express-session": "1.17.2", - "file-type": "16.5.0", - "fs-extra": "4.0.3", - "geojson": "^0.5.0", - "geojson-validation": "^1.0.2", - "geojson-vt": "3.1.3", - "gm": "1.23.1", - "jose": "0.3.2", - "json2csv": "4.5.1", - "jsonwebtoken": "^8.5.1", - "lodash": "^4.17.21", - "mgrs": "^1.0.0", - "moment": "2.22.2", - "mongodb-migrations": "0.8.5", - "mongoose": "^4.13.21", - "mongoose-beautiful-unique-validation": "7.1.1", - "multer": "^1.4.2", - "node-fetch": "^2.6.0", - "openapi-enforcer": "^1.8.2", - "openid-client": "2.2.1", - "passport": "0.4.1", - "passport-anonymous": "1.0.1", - "passport-http-bearer": "1.0.1", - "passport-ldapauth": "2.1.3", - "passport-local": "1.0.0", - "passport-oauth2": "1.6.0", - "passport-openidconnect": "0.0.2", - "passport-saml": "^1.3.1", - "pem-jwk": "1.5.1", - "pem2jwk": "1.0.1", - "pug": "2.0.4", - "rfc5646": "^3.0.0", - "svg-captcha": "^1.4.0", - "terraformer": "1.0.4", - "terraformer-arcgis-parser": "1.0.4", - "uniqid": "^5.2.0", - "walk": "2.3.4", - "winston": "1.0.1", - "wkx": "0.4.8", - "wms-capabilities": "^0.4.0", - "xmlbuilder2": "3.0.2", - "xmldom": "0.1.22", - "xpath": "0.0.23", - "yaml": "^1.8.2" + "optional": true, + "dependencies": { + "@aws-sdk/client-sso-oidc": "3.309.0", + "@aws-sdk/property-provider": "3.306.0", + "@aws-sdk/shared-ini-file-loader": "3.306.0", + "@aws-sdk/types": "3.306.0", + "tslib": "^2.5.0" }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/types": { + "version": "3.306.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.306.0.tgz", + "integrity": "sha512-RnyknWWpQcRmNH7AsNr89sdhOoltCU/4YEwBMw34Eh+/36l7HfA5PdEKbsOkO7MO4+2g5qmmm/AHcnHRvymApg==", + "dev": true, + "optional": true, "dependencies": { - "@babel/code-frame": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.8.3.tgz", - "integrity": "sha512-a9gxpmdXtZEInkCSHUJDLHZVBgb1QS0jhss4cPP93EW7s+uC5bikET2twEF3KV+7rDblJcmNvTR7VJejqd2C2g==", - "requires": { - "@babel/highlight": "^7.8.3" - } - }, - "@babel/generator": { - "version": "7.8.6", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.8.6.tgz", - "integrity": "sha512-4bpOR5ZBz+wWcMeVtcf7FbjcFzCp+817z2/gHNncIRcM9MmKzUhtWCYAq27RAfUrAFwb+OCG1s9WEaVxfi6cjg==", - "requires": { - "@babel/types": "^7.8.6", - "jsesc": "^2.5.1", - "lodash": "^4.17.13", - "source-map": "^0.5.0" - }, - "dependencies": { - "source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=" - } - } - }, - "@babel/helper-environment-visitor": { - "version": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.16.7.tgz", - "integrity": "sha512-SLLb0AAn6PkUeAfKJCCOl9e1R53pQlGAfc4y4XuMRZfqeMYLE0dM1LMhqbGAlGQY0lfw5/ohoYWAe9V1yibRag==" - }, - "@babel/helper-function-name": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.8.3.tgz", - "integrity": "sha512-BCxgX1BC2hD/oBlIFUgOCQDOPV8nSINxCwM3o93xP4P9Fq6aV5sgv2cOOITDMtCfQ+3PvHp3l689XZvAM9QyOA==", - "requires": { - "@babel/helper-get-function-arity": "^7.8.3", - "@babel/template": "^7.8.3", - "@babel/types": "^7.8.3" - } - }, - "@babel/helper-get-function-arity": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.8.3.tgz", - "integrity": "sha512-FVDR+Gd9iLjUMY1fzE2SR0IuaJToR4RkCDARVfsBBPSP53GEqSFjD8gNyxg246VUyc/ALRxFaAK8rVG7UT7xRA==", - "requires": { - "@babel/types": "^7.8.3" - } - }, - "@babel/helper-hoist-variables": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.14.5.tgz", - "integrity": "sha512-R1PXiz31Uc0Vxy4OEOm07x0oSjKAdPPCh3tPivn/Eo8cvz6gveAeuyUUPB21Hoiif0uoPQSSdhIPS3352nvdyQ==" - }, - "@babel/helper-split-export-declaration": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.8.3.tgz", - "integrity": "sha512-3x3yOeyBhW851hroze7ElzdkeRXQYQbFIb7gLK1WQYsw2GWDay5gAJNw1sWJ0VFP6z5J1whqeXH/WCdCjZv6dA==", - "requires": { - "@babel/types": "^7.8.3" - } - }, - "@babel/helper-validator-identifier": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.14.5.tgz", - "integrity": "sha512-5lsetuxCLilmVGyiLEfoHBRX8UCFD+1m2x3Rj97WrW3V7H3u4RWRXA4evMjImCsin2J2YT0QaVDGf+z8ondbAg==" - }, - "@babel/highlight": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.8.3.tgz", - "integrity": "sha512-PX4y5xQUvy0fnEVHrYOarRPXVWafSjTW9T0Hab8gVIawpl2Sj0ORyrygANq+KjcNlSSTw0YCLSNA8OyZ1I4yEg==", - "requires": { - "chalk": "^2.0.0", - "esutils": "^2.0.2", - "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==", - "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==", - "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==", - "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=" - }, - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=" - }, - "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "@babel/parser": { - "version": "7.8.6", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.8.6.tgz", - "integrity": "sha512-trGNYSfwq5s0SgM1BMEB8hX3NDmO7EP2wsDGDexiaKMB92BaRpS+qZfpkMqUBhcsOTBwNy9B/jieo4ad/t/z2g==" - }, - "@babel/runtime": { - "version": "7.8.7", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.8.7.tgz", - "integrity": "sha512-+AATMUFppJDw6aiR5NVPHqIQBlV/Pj8wY/EZH+lmvRdUo9xBaz/rF3alAwFJQavvKfeOlPE7oaaDHVbcySbCsg==", - "dev": true, - "requires": { - "regenerator-runtime": "^0.13.4" - }, - "dependencies": { - "regenerator-runtime": { - "version": "0.13.5", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.5.tgz", - "integrity": "sha512-ZS5w8CpKFinUzOwW3c83oPeVXoNsrLsaCoLtJvAClH135j/R77RuymhiSErhm2lKcwSCIpmvIWSbDkIfAqKQlA==", - "dev": true - } - } - }, - "@babel/template": { - "version": "7.8.6", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.8.6.tgz", - "integrity": "sha512-zbMsPMy/v0PWFZEhQJ66bqjhH+z0JgMoBWuikXybgG3Gkd/3t5oQ1Rw2WQhnSrsOmsKXnZOx15tkC4qON/+JPg==", - "requires": { - "@babel/code-frame": "^7.8.3", - "@babel/parser": "^7.8.6", - "@babel/types": "^7.8.6" - } - }, - "@babel/traverse": { - "version": "7.8.6", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.8.6.tgz", - "integrity": "sha512-2B8l0db/DPi8iinITKuo7cbPznLCEk0kCxDoB9/N6gGNg/gxOXiR/IcymAFPiBwk5w6TtQ27w4wpElgp9btR9A==", - "requires": { - "@babel/code-frame": "^7.8.3", - "@babel/generator": "^7.8.6", - "@babel/helper-function-name": "^7.8.3", - "@babel/helper-split-export-declaration": "^7.8.3", - "@babel/parser": "^7.8.6", - "@babel/types": "^7.8.6", - "debug": "^4.1.0", - "globals": "^11.1.0", - "lodash": "^4.17.13" - }, - "dependencies": { - "debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", - "requires": { - "ms": "^2.1.1" - } - }, - "globals": { - "version": "11.12.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", - "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==" - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" - } - } - }, - "@babel/types": { - "version": "7.8.6", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.8.6.tgz", - "integrity": "sha512-wqz7pgWMIrht3gquyEFPVXeXCti72Rm8ep9b5tQKz9Yg9LzJA3HxosF1SB3Kc81KD1A3XBkkVYtJvCKS2Z/QrA==", - "requires": { - "esutils": "^2.0.2", - "lodash": "^4.17.13", - "to-fast-properties": "^2.0.0" - }, - "dependencies": { - "to-fast-properties": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", - "integrity": "sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4=" - } - } - }, - "@fluffy-spoon/substitute": { - "version": "https://registry.npmjs.org/@fluffy-spoon/substitute/-/substitute-1.130.0.tgz", - "integrity": "sha512-fi/h0KZ4DbrL7RHMd6Ynx/BMWfNjYwW39PdgomgYggCasyO/snBf3WogHrZptKtshF+78jN5WWzcPQUa1Pwshw==" - }, - "@mapbox/togeojson": { - "version": "0.16.0", - "resolved": "https://registry.npmjs.org/@mapbox/togeojson/-/togeojson-0.16.0.tgz", - "integrity": "sha1-WygwAQeEMYIdx04oesr1ahHOs3w=", - "dev": true, - "requires": { - "concat-stream": "~1.5.1", - "minimist": "1.2.0", - "xmldom": "~0.1.19" - } - }, - "@mrmlnc/readdir-enhanced": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/@mrmlnc/readdir-enhanced/-/readdir-enhanced-2.2.1.tgz", - "integrity": "sha512-bPHp6Ji8b41szTOcaP63VlnbbO5Ny6dwAATtY6JTjh5N2OLrb5Qk/Th5cRkRQhkWCt+EJsYrNB0MiL+Gpn6e3g==", - "requires": { - "call-me-maybe": "^1.0.1", - "glob-to-regexp": "^0.3.0" - } - }, - "@ngageoint/geopackage": { - "version": "4.1.0-beta.1", - "resolved": "https://registry.npmjs.org/@ngageoint/geopackage/-/geopackage-4.1.0-beta.1.tgz", - "integrity": "sha512-HC0u6omwkhY0bxnADNqQq90v+AQEL1Ah2WZh2/bhBIhrNHt8QrmXUyzxYLX/hQOfzshac9LK2F+aPXLejmjILw==", - "dev": true, - "requires": { - "@turf/bbox": "6.3.0", - "@turf/boolean-clockwise": "6.5.0", - "@turf/boolean-point-in-polygon": "6.5.0", - "@turf/boolean-within": "6.5.0", - "@turf/distance": "6.5.0", - "@turf/helpers": "6.5.0", - "@turf/intersect": "6.5.0", - "@turf/line-intersect": "6.5.0", - "@turf/point-to-line-distance": "6.5.0", - "@turf/polygon-to-line": "6.5.0", - "@types/geojson": "7946.0.8", - "@types/proj4": "2.5.2", - "better-sqlite3": "7.4.1", - "chalk": "4.1.1", - "file-type": "12.4.0", - "image-size": "0.8.3", - "inquirer": "8.0.0", - "lodash": "4.17.21", - "proj4": "2.7.2", - "reproject": "1.2.5", - "rtree-sql.js": "1.0.0", - "simplify-js": "1.2.4", - "webworkify": "1.5.0", - "wkx": "0.4.8" - }, - "dependencies": { - "@turf/helpers": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@turf/helpers/-/helpers-6.5.0.tgz", - "integrity": "sha512-VbI1dV5bLFzohYYdgqwikdMVpe7pJ9X3E+dlr425wa2/sMJqYDhTO++ec38/pcPvPE6oD9WEEeU3Xu3gza+VPw==", - "dev": true - }, - "file-type": { - "version": "12.4.0", - "resolved": "https://registry.npmjs.org/file-type/-/file-type-12.4.0.tgz", - "integrity": "sha512-WTvyKq8yjtNmUtVAD8LGcTkvtCdJglM6ks2HTqEClm6+65XTqM6MoZYA1Vtra50DLRWLiM38fEs1y56f5VhnUA==", - "dev": true - } - } - }, - "@nodelib/fs.stat": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-1.1.3.tgz", - "integrity": "sha512-shAmDyaQC4H92APFoIaVDHCx5bStIocgvbwQyxPRrbUY20V1EYTbSDchWbuwlMG3V17cprZhA6+78JfB+3DTPw==" - }, - "@oozcitak/dom": { - "version": "1.15.10", - "resolved": "https://registry.npmjs.org/@oozcitak/dom/-/dom-1.15.10.tgz", - "integrity": "sha512-0JT29/LaxVgRcGKvHmSrUTEvZ8BXvZhGl2LASRUgHqDTC1M5g1pLmVv56IYNyt3bG2CUjDkc67wnyZC14pbQrQ==", - "dev": true, - "requires": { - "@oozcitak/infra": "1.0.8", - "@oozcitak/url": "1.0.4", - "@oozcitak/util": "8.3.8" - } - }, - "@oozcitak/infra": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/@oozcitak/infra/-/infra-1.0.8.tgz", - "integrity": "sha512-JRAUc9VR6IGHOL7OGF+yrvs0LO8SlqGnPAMqyzOuFZPSZSXI7Xf2O9+awQPSMXgIWGtgUf/dA6Hs6X6ySEaWTg==", - "dev": true, - "requires": { - "@oozcitak/util": "8.3.8" - } - }, - "@oozcitak/url": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/@oozcitak/url/-/url-1.0.4.tgz", - "integrity": "sha512-kDcD8y+y3FCSOvnBI6HJgl00viO/nGbQoCINmQ0h98OhnGITrWR3bOGfwYCthgcrV8AnTJz8MzslTQbC3SOAmw==", - "dev": true, - "requires": { - "@oozcitak/infra": "1.0.8", - "@oozcitak/util": "8.3.8" - } - }, - "@oozcitak/util": { - "version": "8.3.8", - "resolved": "https://registry.npmjs.org/@oozcitak/util/-/util-8.3.8.tgz", - "integrity": "sha512-T8TbSnGsxo6TDBJx/Sgv/BlVJL3tshxZP7Aq5R1mSnM5OcHY2dQaxLMu2+E8u3gN0MLOzdjurqN4ZRVuzQycOQ==", - "dev": true - }, - "@sindresorhus/is": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-0.7.0.tgz", - "integrity": "sha512-ONhaKPIufzzrlNbqtWFFd+jlnemX6lJAgq9ZeiZtS7I1PIf/la7CW4m83rTXRnVnsMbW2k56pGYu7AUFJD9Pow==", - "dev": true - }, - "@sinonjs/commons": { - "version": "1.7.1", - "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.7.1.tgz", - "integrity": "sha512-Debi3Baff1Qu1Unc3mjJ96MgpbwTn43S1+9yJ0llWygPwDNu2aaWBD6yc9y/Z8XDRNhx7U+u2UDg2OGQXkclUQ==", - "requires": { - "type-detect": "4.0.8" - } - }, - "@sinonjs/formatio": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/@sinonjs/formatio/-/formatio-3.2.2.tgz", - "integrity": "sha512-B8SEsgd8gArBLMD6zpRw3juQ2FVSsmdd7qlevyDqzS9WTCtvF55/gAL+h6gue8ZvPYcdiPdvueM/qm//9XzyTQ==", - "requires": { - "@sinonjs/commons": "^1", - "@sinonjs/samsam": "^3.1.0" - } - }, - "@sinonjs/samsam": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/@sinonjs/samsam/-/samsam-3.3.3.tgz", - "integrity": "sha512-bKCMKZvWIjYD0BLGnNrxVuw4dkWCYsLqFOUWw8VgKF/+5Y+mE7LfHWPIYoDXowH+3a9LsWDMo0uAP8YDosPvHQ==", - "requires": { - "@sinonjs/commons": "^1.3.0", - "array-from": "^2.1.1", - "lodash": "^4.17.15" - } - }, - "@sinonjs/text-encoding": { - "version": "0.7.1", - "resolved": "https://registry.npmjs.org/@sinonjs/text-encoding/-/text-encoding-0.7.1.tgz", - "integrity": "sha512-+iTbntw2IZPb/anVDbypzfQa+ay64MW0Zo8aJ8gZPWMMK6/OubMVb6lUPMagqjOPnmtauXnFCACVl3O7ogjeqQ==" - }, - "@tokenizer/token": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/@tokenizer/token/-/token-0.3.0.tgz", - "integrity": "sha512-OvjF+z51L3ov0OyAU0duzsYuvO01PH7x4t6DJx+guahgTnBHkhJdG7soQeTSFLWN3efnHyibZ4Z8l2EuWwJN3A==", - "dev": true - }, - "@turf/bbox": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/@turf/bbox/-/bbox-6.3.0.tgz", - "integrity": "sha512-N4ue5Xopu1qieSHP2MA/CJGWHPKaTrVXQJjzHRNcY1vtsO126xbSaJhWUrFc5x5vVkXp0dcucGryO0r5m4o/KA==", - "dev": true, - "requires": { - "@turf/helpers": "^6.3.0", - "@turf/meta": "^6.3.0" - }, - "dependencies": { - "@turf/helpers": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@turf/helpers/-/helpers-6.5.0.tgz", - "integrity": "sha512-VbI1dV5bLFzohYYdgqwikdMVpe7pJ9X3E+dlr425wa2/sMJqYDhTO++ec38/pcPvPE6oD9WEEeU3Xu3gza+VPw==", - "dev": true - } - } - }, - "@turf/bearing": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@turf/bearing/-/bearing-6.5.0.tgz", - "integrity": "sha512-dxINYhIEMzgDOztyMZc20I7ssYVNEpSv04VbMo5YPQsqa80KO3TFvbuCahMsCAW5z8Tncc8dwBlEFrmRjJG33A==", - "dev": true, - "requires": { - "@turf/helpers": "^6.5.0", - "@turf/invariant": "^6.5.0" - }, - "dependencies": { - "@turf/helpers": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@turf/helpers/-/helpers-6.5.0.tgz", - "integrity": "sha512-VbI1dV5bLFzohYYdgqwikdMVpe7pJ9X3E+dlr425wa2/sMJqYDhTO++ec38/pcPvPE6oD9WEEeU3Xu3gza+VPw==", - "dev": true - } - } - }, - "@turf/boolean-clockwise": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@turf/boolean-clockwise/-/boolean-clockwise-6.5.0.tgz", - "integrity": "sha512-45+C7LC5RMbRWrxh3Z0Eihsc8db1VGBO5d9BLTOAwU4jR6SgsunTfRWR16X7JUwIDYlCVEmnjcXJNi/kIU3VIw==", - "dev": true, - "requires": { - "@turf/helpers": "^6.5.0", - "@turf/invariant": "^6.5.0" - }, - "dependencies": { - "@turf/helpers": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@turf/helpers/-/helpers-6.5.0.tgz", - "integrity": "sha512-VbI1dV5bLFzohYYdgqwikdMVpe7pJ9X3E+dlr425wa2/sMJqYDhTO++ec38/pcPvPE6oD9WEEeU3Xu3gza+VPw==", - "dev": true - } - } - }, - "@turf/boolean-point-in-polygon": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@turf/boolean-point-in-polygon/-/boolean-point-in-polygon-6.5.0.tgz", - "integrity": "sha512-DtSuVFB26SI+hj0SjrvXowGTUCHlgevPAIsukssW6BG5MlNSBQAo70wpICBNJL6RjukXg8d2eXaAWuD/CqL00A==", - "dev": true, - "requires": { - "@turf/helpers": "^6.5.0", - "@turf/invariant": "^6.5.0" - }, - "dependencies": { - "@turf/helpers": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@turf/helpers/-/helpers-6.5.0.tgz", - "integrity": "sha512-VbI1dV5bLFzohYYdgqwikdMVpe7pJ9X3E+dlr425wa2/sMJqYDhTO++ec38/pcPvPE6oD9WEEeU3Xu3gza+VPw==", - "dev": true - } - } - }, - "@turf/boolean-point-on-line": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@turf/boolean-point-on-line/-/boolean-point-on-line-6.5.0.tgz", - "integrity": "sha512-A1BbuQ0LceLHvq7F/P7w3QvfpmZqbmViIUPHdNLvZimFNLo4e6IQunmzbe+8aSStH9QRZm3VOflyvNeXvvpZEQ==", - "dev": true, - "requires": { - "@turf/helpers": "^6.5.0", - "@turf/invariant": "^6.5.0" - }, - "dependencies": { - "@turf/helpers": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@turf/helpers/-/helpers-6.5.0.tgz", - "integrity": "sha512-VbI1dV5bLFzohYYdgqwikdMVpe7pJ9X3E+dlr425wa2/sMJqYDhTO++ec38/pcPvPE6oD9WEEeU3Xu3gza+VPw==", - "dev": true - } - } - }, - "@turf/boolean-within": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@turf/boolean-within/-/boolean-within-6.5.0.tgz", - "integrity": "sha512-YQB3oU18Inx35C/LU930D36RAVe7LDXk1kWsQ8mLmuqYn9YdPsDQTMTkLJMhoQ8EbN7QTdy333xRQ4MYgToteQ==", - "dev": true, - "requires": { - "@turf/bbox": "^6.5.0", - "@turf/boolean-point-in-polygon": "^6.5.0", - "@turf/boolean-point-on-line": "^6.5.0", - "@turf/helpers": "^6.5.0", - "@turf/invariant": "^6.5.0" - }, - "dependencies": { - "@turf/bbox": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@turf/bbox/-/bbox-6.5.0.tgz", - "integrity": "sha512-RBbLaao5hXTYyyg577iuMtDB8ehxMlUqHEJiMs8jT1GHkFhr6sYre3lmLsPeYEi/ZKj5TP5tt7fkzNdJ4GIVyw==", - "dev": true, - "requires": { - "@turf/helpers": "^6.5.0", - "@turf/meta": "^6.5.0" - } - }, - "@turf/helpers": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@turf/helpers/-/helpers-6.5.0.tgz", - "integrity": "sha512-VbI1dV5bLFzohYYdgqwikdMVpe7pJ9X3E+dlr425wa2/sMJqYDhTO++ec38/pcPvPE6oD9WEEeU3Xu3gza+VPw==", - "dev": true - } - } - }, - "@turf/centroid": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/@turf/centroid/-/centroid-6.0.2.tgz", - "integrity": "sha512-auyDauOtC4eddH7GC3CHFTDu2PKhpSeKCRhwhHhXtJqn2dWCJQNIoCeJRmfXRIbzCWhWvgvQafvvhq8HNvmvWw==", - "dev": true, - "requires": { - "@turf/helpers": "6.x", - "@turf/meta": "6.x" - }, - "dependencies": { - "@turf/meta": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/@turf/meta/-/meta-6.0.2.tgz", - "integrity": "sha512-VA7HJkx7qF1l3+GNGkDVn2oXy4+QoLP6LktXAaZKjuT1JI0YESat7quUkbCMy4zP9lAUuvS4YMslLyTtr919FA==", - "dev": true, - "requires": { - "@turf/helpers": "6.x" - } - } - } - }, - "@turf/clone": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@turf/clone/-/clone-6.5.0.tgz", - "integrity": "sha512-mzVtTFj/QycXOn6ig+annKrM6ZlimreKYz6f/GSERytOpgzodbQyOgkfwru100O1KQhhjSudKK4DsQ0oyi9cTw==", - "dev": true, - "requires": { - "@turf/helpers": "^6.5.0" - }, - "dependencies": { - "@turf/helpers": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@turf/helpers/-/helpers-6.5.0.tgz", - "integrity": "sha512-VbI1dV5bLFzohYYdgqwikdMVpe7pJ9X3E+dlr425wa2/sMJqYDhTO++ec38/pcPvPE6oD9WEEeU3Xu3gza+VPw==", - "dev": true - } - } - }, - "@turf/distance": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@turf/distance/-/distance-6.5.0.tgz", - "integrity": "sha512-xzykSLfoURec5qvQJcfifw/1mJa+5UwByZZ5TZ8iaqjGYN0vomhV9aiSLeYdUGtYRESZ+DYC/OzY+4RclZYgMg==", - "dev": true, - "requires": { - "@turf/helpers": "^6.5.0", - "@turf/invariant": "^6.5.0" - }, - "dependencies": { - "@turf/helpers": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@turf/helpers/-/helpers-6.5.0.tgz", - "integrity": "sha512-VbI1dV5bLFzohYYdgqwikdMVpe7pJ9X3E+dlr425wa2/sMJqYDhTO++ec38/pcPvPE6oD9WEEeU3Xu3gza+VPw==", - "dev": true - } - } - }, - "@turf/helpers": { - "version": "6.1.4", - "resolved": "https://registry.npmjs.org/@turf/helpers/-/helpers-6.1.4.tgz", - "integrity": "sha512-vJvrdOZy1ngC7r3MDA7zIGSoIgyrkWcGnNIEaqn/APmw+bVLF2gAW7HIsdTxd12s5wQMqEpqIQrmrbRRZ0xC7g==", - "dev": true - }, - "@turf/intersect": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@turf/intersect/-/intersect-6.5.0.tgz", - "integrity": "sha512-2legGJeKrfFkzntcd4GouPugoqPUjexPZnOvfez+3SfIMrHvulw8qV8u7pfVyn2Yqs53yoVCEjS5sEpvQ5YRQg==", - "dev": true, - "requires": { - "@turf/helpers": "^6.5.0", - "@turf/invariant": "^6.5.0", - "polygon-clipping": "^0.15.3" - }, - "dependencies": { - "@turf/helpers": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@turf/helpers/-/helpers-6.5.0.tgz", - "integrity": "sha512-VbI1dV5bLFzohYYdgqwikdMVpe7pJ9X3E+dlr425wa2/sMJqYDhTO++ec38/pcPvPE6oD9WEEeU3Xu3gza+VPw==", - "dev": true - } - } - }, - "@turf/invariant": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@turf/invariant/-/invariant-6.5.0.tgz", - "integrity": "sha512-Wv8PRNCtPD31UVbdJE/KVAWKe7l6US+lJItRR/HOEW3eh+U/JwRCSUl/KZ7bmjM/C+zLNoreM2TU6OoLACs4eg==", - "dev": true, - "requires": { - "@turf/helpers": "^6.5.0" - }, - "dependencies": { - "@turf/helpers": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@turf/helpers/-/helpers-6.5.0.tgz", - "integrity": "sha512-VbI1dV5bLFzohYYdgqwikdMVpe7pJ9X3E+dlr425wa2/sMJqYDhTO++ec38/pcPvPE6oD9WEEeU3Xu3gza+VPw==", - "dev": true - } - } - }, - "@turf/kinks": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/@turf/kinks/-/kinks-6.0.0.tgz", - "integrity": "sha512-X2xk3+Sr9aeu51t1vBa7Iwowvjxcbl5fePLIo/dDOU4j5WeFoqGCto+DdEHQcC3y8HVUin4i8GaHVaM9sVTphg==", - "dev": true, - "requires": { - "@turf/helpers": "6.x" - } - }, - "@turf/line-intersect": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@turf/line-intersect/-/line-intersect-6.5.0.tgz", - "integrity": "sha512-CS6R1tZvVQD390G9Ea4pmpM6mJGPWoL82jD46y0q1KSor9s6HupMIo1kY4Ny+AEYQl9jd21V3Scz20eldpbTVA==", - "dev": true, - "requires": { - "@turf/helpers": "^6.5.0", - "@turf/invariant": "^6.5.0", - "@turf/line-segment": "^6.5.0", - "@turf/meta": "^6.5.0", - "geojson-rbush": "3.x" - }, - "dependencies": { - "@turf/helpers": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@turf/helpers/-/helpers-6.5.0.tgz", - "integrity": "sha512-VbI1dV5bLFzohYYdgqwikdMVpe7pJ9X3E+dlr425wa2/sMJqYDhTO++ec38/pcPvPE6oD9WEEeU3Xu3gza+VPw==", - "dev": true - } - } - }, - "@turf/line-segment": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@turf/line-segment/-/line-segment-6.5.0.tgz", - "integrity": "sha512-jI625Ho4jSuJESNq66Mmi290ZJ5pPZiQZruPVpmHkUw257Pew0alMmb6YrqYNnLUuiVVONxAAKXUVeeUGtycfw==", - "dev": true, - "requires": { - "@turf/helpers": "^6.5.0", - "@turf/invariant": "^6.5.0", - "@turf/meta": "^6.5.0" - }, - "dependencies": { - "@turf/helpers": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@turf/helpers/-/helpers-6.5.0.tgz", - "integrity": "sha512-VbI1dV5bLFzohYYdgqwikdMVpe7pJ9X3E+dlr425wa2/sMJqYDhTO++ec38/pcPvPE6oD9WEEeU3Xu3gza+VPw==", - "dev": true - } - } - }, - "@turf/meta": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@turf/meta/-/meta-6.5.0.tgz", - "integrity": "sha512-RrArvtsV0vdsCBegoBtOalgdSOfkBrTJ07VkpiCnq/491W67hnMWmDu7e6Ztw0C3WldRYTXkg3SumfdzZxLBHA==", - "dev": true, - "requires": { - "@turf/helpers": "^6.5.0" - }, - "dependencies": { - "@turf/helpers": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@turf/helpers/-/helpers-6.5.0.tgz", - "integrity": "sha512-VbI1dV5bLFzohYYdgqwikdMVpe7pJ9X3E+dlr425wa2/sMJqYDhTO++ec38/pcPvPE6oD9WEEeU3Xu3gza+VPw==", - "dev": true - } - } - }, - "@turf/point-to-line-distance": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@turf/point-to-line-distance/-/point-to-line-distance-6.5.0.tgz", - "integrity": "sha512-opHVQ4vjUhNBly1bob6RWy+F+hsZDH9SA0UW36pIRzfpu27qipU18xup0XXEePfY6+wvhF6yL/WgCO2IbrLqEA==", - "dev": true, - "requires": { - "@turf/bearing": "^6.5.0", - "@turf/distance": "^6.5.0", - "@turf/helpers": "^6.5.0", - "@turf/invariant": "^6.5.0", - "@turf/meta": "^6.5.0", - "@turf/projection": "^6.5.0", - "@turf/rhumb-bearing": "^6.5.0", - "@turf/rhumb-distance": "^6.5.0" - }, - "dependencies": { - "@turf/helpers": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@turf/helpers/-/helpers-6.5.0.tgz", - "integrity": "sha512-VbI1dV5bLFzohYYdgqwikdMVpe7pJ9X3E+dlr425wa2/sMJqYDhTO++ec38/pcPvPE6oD9WEEeU3Xu3gza+VPw==", - "dev": true - } - } - }, - "@turf/polygon-to-line": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@turf/polygon-to-line/-/polygon-to-line-6.5.0.tgz", - "integrity": "sha512-5p4n/ij97EIttAq+ewSnKt0ruvuM+LIDzuczSzuHTpq4oS7Oq8yqg5TQ4nzMVuK41r/tALCk7nAoBuw3Su4Gcw==", - "dev": true, - "requires": { - "@turf/helpers": "^6.5.0", - "@turf/invariant": "^6.5.0" - }, - "dependencies": { - "@turf/helpers": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@turf/helpers/-/helpers-6.5.0.tgz", - "integrity": "sha512-VbI1dV5bLFzohYYdgqwikdMVpe7pJ9X3E+dlr425wa2/sMJqYDhTO++ec38/pcPvPE6oD9WEEeU3Xu3gza+VPw==", - "dev": true - } - } - }, - "@turf/projection": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@turf/projection/-/projection-6.5.0.tgz", - "integrity": "sha512-/Pgh9mDvQWWu8HRxqpM+tKz8OzgauV+DiOcr3FCjD6ubDnrrmMJlsf6fFJmggw93mtVPrZRL6yyi9aYCQBOIvg==", - "dev": true, - "requires": { - "@turf/clone": "^6.5.0", - "@turf/helpers": "^6.5.0", - "@turf/meta": "^6.5.0" - }, - "dependencies": { - "@turf/helpers": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@turf/helpers/-/helpers-6.5.0.tgz", - "integrity": "sha512-VbI1dV5bLFzohYYdgqwikdMVpe7pJ9X3E+dlr425wa2/sMJqYDhTO++ec38/pcPvPE6oD9WEEeU3Xu3gza+VPw==", - "dev": true - } - } - }, - "@turf/rhumb-bearing": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@turf/rhumb-bearing/-/rhumb-bearing-6.5.0.tgz", - "integrity": "sha512-jMyqiMRK4hzREjQmnLXmkJ+VTNTx1ii8vuqRwJPcTlKbNWfjDz/5JqJlb5NaFDcdMpftWovkW5GevfnuzHnOYA==", - "dev": true, - "requires": { - "@turf/helpers": "^6.5.0", - "@turf/invariant": "^6.5.0" - }, - "dependencies": { - "@turf/helpers": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@turf/helpers/-/helpers-6.5.0.tgz", - "integrity": "sha512-VbI1dV5bLFzohYYdgqwikdMVpe7pJ9X3E+dlr425wa2/sMJqYDhTO++ec38/pcPvPE6oD9WEEeU3Xu3gza+VPw==", - "dev": true - } - } - }, - "@turf/rhumb-distance": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@turf/rhumb-distance/-/rhumb-distance-6.5.0.tgz", - "integrity": "sha512-oKp8KFE8E4huC2Z1a1KNcFwjVOqa99isxNOwfo4g3SUABQ6NezjKDDrnvC4yI5YZ3/huDjULLBvhed45xdCrzg==", - "dev": true, - "requires": { - "@turf/helpers": "^6.5.0", - "@turf/invariant": "^6.5.0" - }, - "dependencies": { - "@turf/helpers": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@turf/helpers/-/helpers-6.5.0.tgz", - "integrity": "sha512-VbI1dV5bLFzohYYdgqwikdMVpe7pJ9X3E+dlr425wa2/sMJqYDhTO++ec38/pcPvPE6oD9WEEeU3Xu3gza+VPw==", - "dev": true - } - } - }, - "@types/async": { - "version": "3.0.8", - "resolved": "https://registry.npmjs.org/@types/async/-/async-3.0.8.tgz", - "integrity": "sha512-wIM8bCrHeQHCUyDqJYXyvG8P98YeERaOB1NeOvcjnjlM32pn21S13j6tZqhiWX+nkpU3EvhtE/nuO1ItCpZ+HQ==" - }, - "@types/babel-types": { - "version": "7.0.7", - "resolved": "https://registry.npmjs.org/@types/babel-types/-/babel-types-7.0.7.tgz", - "integrity": "sha512-dBtBbrc+qTHy1WdfHYjBwRln4+LWqASWakLHsWHR2NWHIFkv4W3O070IGoGLEBrJBvct3r0L1BUPuvURi7kYUQ==", - "dev": true - }, - "@types/babylon": { - "version": "6.16.5", - "resolved": "https://registry.npmjs.org/@types/babylon/-/babylon-6.16.5.tgz", - "integrity": "sha512-xH2e58elpj1X4ynnKp9qSnWlsRTIs6n3tgLGNfwAGHwePw0mulHQllV34n0T25uYSu1k0hRKkWXF890B1yS47w==", - "dev": true, - "requires": { - "@types/babel-types": "*" - } - }, - "@types/body-parser": { - "version": "1.19.0", - "resolved": "https://registry.npmjs.org/@types/body-parser/-/body-parser-1.19.0.tgz", - "integrity": "sha512-W98JrE0j2K78swW4ukqMleo8R7h/pFETjM2DQ90MF6XK2i4LO4W3gQ71Lt4w3bfm2EvVSyWHplECvB5sK22yFQ==", - "requires": { - "@types/connect": "*", - "@types/node": "*" - }, - "dependencies": { - "@types/node": { - "version": "15.12.2", - "resolved": "https://registry.npmjs.org/@types/node/-/node-15.12.2.tgz", - "integrity": "sha512-zjQ69G564OCIWIOHSXyQEEDpdpGl+G348RAKY0XXy9Z5kU9Vzv1GMNnkar/ZJ8dzXB3COzD9Mo9NtRZ4xfgUww==" - } - } - }, - "@types/bson": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/@types/bson/-/bson-4.0.1.tgz", - "integrity": "sha512-K6VAEdLVJFBxKp8m5cRTbUfeZpuSvOuLKJLrgw9ANIXo00RiyGzgH4BKWWR4F520gV4tWmxG7q9sKQRVDuzrBw==", - "requires": { - "@types/node": "*" - } - }, - "@types/chai": { - "version": "4.2.10", - "resolved": "https://registry.npmjs.org/@types/chai/-/chai-4.2.10.tgz", - "integrity": "sha512-TlWWgb21+0LdkuFqEqfmy7NEgfB/7Jjux15fWQAh3P93gbmXuwTM/vxEdzW89APIcI2BgKR48yjeAkdeH+4qvQ==" - }, - "@types/chai-as-promised": { - "version": "7.1.2", - "resolved": "https://registry.npmjs.org/@types/chai-as-promised/-/chai-as-promised-7.1.2.tgz", - "integrity": "sha512-PO2gcfR3Oxa+u0QvECLe1xKXOqYTzCmWf0FhLhjREoW3fPAVamjihL7v1MOVLJLsnAMdLcjkfrs01yvDMwVK4Q==", - "requires": { - "@types/chai": "*" - } - }, - "@types/color-name": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@types/color-name/-/color-name-1.1.1.tgz", - "integrity": "sha512-rr+OQyAjxze7GgWrSaJwydHStIhHq2lvY3BOC2Mj7KnzI7XK0Uw1TOOdI9lDoajEbSWLiYgoo4f1R51erQfhPQ==" - }, - "@types/connect": { - "version": "3.4.33", - "resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.33.tgz", - "integrity": "sha512-2+FrkXY4zllzTNfJth7jOqEHC+enpLeGslEhpnTAkg21GkRrWV4SsAtqchtT4YS9/nODBU2/ZfsBY2X4J/dX7A==", - "requires": { - "@types/node": "*" - }, - "dependencies": { - "@types/node": { - "version": "15.12.2", - "resolved": "https://registry.npmjs.org/@types/node/-/node-15.12.2.tgz", - "integrity": "sha512-zjQ69G564OCIWIOHSXyQEEDpdpGl+G348RAKY0XXy9Z5kU9Vzv1GMNnkar/ZJ8dzXB3COzD9Mo9NtRZ4xfgUww==" - } - } - }, - "@types/cookiejar": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/@types/cookiejar/-/cookiejar-2.1.1.tgz", - "integrity": "sha512-aRnpPa7ysx3aNW60hTiCtLHlQaIFsXFCgQlpakNgDNVFzbtusSY8PwjAQgRWfSk0ekNoBjO51eQRB6upA9uuyw==" - }, - "@types/deep-equal": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@types/deep-equal/-/deep-equal-1.0.1.tgz", - "integrity": "sha512-mMUu4nWHLBlHtxXY17Fg6+ucS/MnndyOWyOe7MmwkoMYxvfQU2ajtRaEvqSUv+aVkMqH/C0NCI8UoVfRNQ10yg==" - }, - "@types/eslint-visitor-keys": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@types/eslint-visitor-keys/-/eslint-visitor-keys-1.0.0.tgz", - "integrity": "sha512-OCutwjDZ4aFS6PB1UZ988C4YgwlBHJd6wCeQqaLdmadZ/7e+w79+hbMUFC1QXDNCmdyoRfAFdm0RypzwR+Qpag==" - }, - "@types/events": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@types/events/-/events-3.0.0.tgz", - "integrity": "sha512-EaObqwIvayI5a8dCzhFrjKzVwKLxjoG9T6Ppd5CEo07LRKfQ8Yokw54r5+Wq7FaBQ+yXRvQAYPrHwya1/UFt9g==" - }, - "@types/express": { - "version": "4.17.6", - "resolved": "https://registry.npmjs.org/@types/express/-/express-4.17.6.tgz", - "integrity": "sha512-n/mr9tZI83kd4azlPG5y997C/M4DNABK9yErhFM6hKdym4kkmd9j0vtsJyjFIwfRBxtrxZtAfGZCNRIBMFLK5w==", - "requires": { - "@types/body-parser": "*", - "@types/express-serve-static-core": "*", - "@types/qs": "*", - "@types/serve-static": "*" - } - }, - "@types/express-serve-static-core": { - "version": "4.17.4", - "resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.17.4.tgz", - "integrity": "sha512-dPs6CaRWxsfHbYDVU51VjEJaUJEcli4UI0fFMT4oWmgCvHj+j7oIxz5MLHVL0Rv++N004c21ylJNdWQvPkkb5w==", - "requires": { - "@types/node": "*", - "@types/range-parser": "*" - }, - "dependencies": { - "@types/node": { - "version": "15.12.2", - "resolved": "https://registry.npmjs.org/@types/node/-/node-15.12.2.tgz", - "integrity": "sha512-zjQ69G564OCIWIOHSXyQEEDpdpGl+G348RAKY0XXy9Z5kU9Vzv1GMNnkar/ZJ8dzXB3COzD9Mo9NtRZ4xfgUww==" - } - } - }, - "@types/fs-extra": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/@types/fs-extra/-/fs-extra-8.1.0.tgz", - "integrity": "sha512-UoOfVEzAUpeSPmjm7h1uk5MH6KZma2z2O7a75onTGjnNvAvMVrPzPL/vBbT65iIGHWj6rokwfmYcmxmlSf2uwg==", - "requires": { - "@types/node": "*" - } - }, - "@types/geojson": { - "version": "7946.0.8", - "resolved": "https://registry.npmjs.org/@types/geojson/-/geojson-7946.0.8.tgz", - "integrity": "sha512-1rkryxURpr6aWP7R786/UQOkJ3PcpQiWkAXBmdWc7ryFWqN6a4xfK7BtjXvFBKO9LjQ+MWQSWxYeZX1OApnArA==", - "dev": true - }, - "@types/glob": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/@types/glob/-/glob-7.1.1.tgz", - "integrity": "sha512-1Bh06cbWJUHMC97acuD6UMG29nMt0Aqz1vF3guLfG+kHHJhy3AyohZFFxYk2f7Q1SQIrNwvncxAE0N/9s70F2w==", - "requires": { - "@types/events": "*", - "@types/minimatch": "*", - "@types/node": "*" - } - }, - "@types/json-schema": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.4.tgz", - "integrity": "sha512-8+KAKzEvSUdeo+kmqnKrqgeE+LcA0tjYWFY7RPProVYwnqDjukzO+3b6dLD56rYX5TdWejnEOLJYOIeh4CXKuA==" - }, - "@types/ldapjs": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/@types/ldapjs/-/ldapjs-1.0.5.tgz", - "integrity": "sha512-hrtMZjVfWNPxkwFkYhLAU0ITZ3/reDft4jDzLBvrGDSKCbEvW+GeZb4PgM3jlSwSsv0cXqnDeWcupFLIgW9E0Q==", - "dev": true, - "requires": { - "@types/node": "*" - }, - "dependencies": { - "@types/node": { - "version": "15.12.2", - "resolved": "https://registry.npmjs.org/@types/node/-/node-15.12.2.tgz", - "integrity": "sha512-zjQ69G564OCIWIOHSXyQEEDpdpGl+G348RAKY0XXy9Z5kU9Vzv1GMNnkar/ZJ8dzXB3COzD9Mo9NtRZ4xfgUww==", - "dev": true - } - } - }, - "@types/lodash": { - "version": "4.14.155", - "resolved": "https://registry.npmjs.org/@types/lodash/-/lodash-4.14.155.tgz", - "integrity": "sha512-vEcX7S7aPhsBCivxMwAANQburHBtfN9RdyXFk84IJmu2Z4Hkg1tOFgaslRiEqqvoLtbCBi6ika1EMspE+NZ9Lg==" - }, - "@types/mime": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/@types/mime/-/mime-2.0.1.tgz", - "integrity": "sha512-FwI9gX75FgVBJ7ywgnq/P7tw+/o1GUbtP0KzbtusLigAOgIgNISRK0ZPl4qertvXSIE8YbsVJueQ90cDt9YYyw==" - }, - "@types/minimatch": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-3.0.3.tgz", - "integrity": "sha512-tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA==" - }, - "@types/mocha": { - "version": "7.0.2", - "resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-7.0.2.tgz", - "integrity": "sha512-ZvO2tAcjmMi8V/5Z3JsyofMe3hasRcaw88cto5etSVMwVQfeivGAlEYmaQgceUSVYFofVjT+ioHsATjdWcFt1w==" - }, - "@types/mongodb": { - "version": "3.5.1", - "resolved": "https://registry.npmjs.org/@types/mongodb/-/mongodb-3.5.1.tgz", - "integrity": "sha512-jKfefl92UJn9SXcHc9CRnJnM6FrWfLULhATZayDAlXhprGWq8KQddkHf1tT5Eox/oAjzWHbzsyb3Fb+mIOJchg==", - "requires": { - "@types/bson": "*", - "@types/node": "*" - } - }, - "@types/mongoose": { - "version": "https://registry.npmjs.org/@types/mongoose/-/mongoose-4.7.52.tgz", - "integrity": "sha512-s6ppIWbLtbQX2CZJrnzCmUUHAu34caBV4Jc1uqGZgqnFAgQj92PW0cVNcd8UF+/DghEhz33t6+mNzeo6dx2+Lg==", - "requires": { - "@types/mongodb": "*", - "@types/node": "*" - } - }, - "@types/multer": { - "version": "1.4.5", - "resolved": "https://registry.npmjs.org/@types/multer/-/multer-1.4.5.tgz", - "integrity": "sha512-9b/0a8JyrR0r2nQhL73JR86obWL7cogfX12augvlrvcpciCo/hkvEsgu80Z4S2g2DHGVXHr8pUIi1VhqFJ8Ufw==", - "requires": { - "@types/express": "*" - } - }, - "@types/node": { - "version": "13.7.7", - "resolved": "https://registry.npmjs.org/@types/node/-/node-13.7.7.tgz", - "integrity": "sha512-Uo4chgKbnPNlxQwoFmYIwctkQVkMMmsAoGGU4JKwLuvBefF0pCq4FybNSnfkfRCpC7ZW7kttcC/TrRtAJsvGtg==" - }, - "@types/node-fetch": { - "version": "2.5.5", - "resolved": "https://registry.npmjs.org/@types/node-fetch/-/node-fetch-2.5.5.tgz", - "integrity": "sha512-IWwjsyYjGw+em3xTvWVQi5MgYKbRs0du57klfTaZkv/B24AEQ/p/IopNeqIYNy3EsfHOpg8ieQSDomPcsYMHpA==", - "requires": { - "@types/node": "*", - "form-data": "^3.0.0" - }, - "dependencies": { - "form-data": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-3.0.0.tgz", - "integrity": "sha512-CKMFDglpbMi6PyN+brwB9Q/GOw0eAnsrEZDgcsH5Krhz5Od/haKHAX0NmQfha2zPPz0JpWzA7GJHGSnvCRLWsg==", - "requires": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.8", - "mime-types": "^2.1.12" - } - } - } - }, - "@types/passport": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/@types/passport/-/passport-1.0.3.tgz", - "integrity": "sha512-nyztuxtDPQv9utCzU0qW7Gl8BY2Dn8BKlYAFFyxKipFxjaVd96celbkLCV/tRqqBUZ+JB8If3UfgV8347DTo3Q==", - "dev": true, - "requires": { - "@types/express": "*" - } - }, - "@types/proj4": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/@types/proj4/-/proj4-2.5.2.tgz", - "integrity": "sha512-/Nmfn9p08yaYw6xo5f2b0L+2oHk2kZeOkp5v+4VCeNfq+ETlLQbmHmC97/pjDIEZy8jxwz7pdPpwNzDHM5cuJw==", - "dev": true - }, - "@types/qs": { - "version": "6.9.1", - "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.1.tgz", - "integrity": "sha512-lhbQXx9HKZAPgBkISrBcmAcMpZsmpe/Cd/hY7LGZS5OfkySUBItnPZHgQPssWYUET8elF+yCFBbP1Q0RZPTdaw==" - }, - "@types/range-parser": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/@types/range-parser/-/range-parser-1.2.3.tgz", - "integrity": "sha512-ewFXqrQHlFsgc09MK5jP5iR7vumV/BYayNC6PgJO2LPe8vrnNFyjQjSppfEngITi0qvfKtzFvgKymGheFM9UOA==" - }, - "@types/serve-static": { - "version": "1.13.3", - "resolved": "https://registry.npmjs.org/@types/serve-static/-/serve-static-1.13.3.tgz", - "integrity": "sha512-oprSwp094zOglVrXdlo/4bAHtKTAxX6VT8FOZlBKrmyLbNvE1zxZyJ6yikMVtHIvwP45+ZQGJn+FdXGKTozq0g==", - "requires": { - "@types/express-serve-static-core": "*", - "@types/mime": "*" - }, - "dependencies": { - "@types/node": { - "version": "15.12.2", - "resolved": "https://registry.npmjs.org/@types/node/-/node-15.12.2.tgz", - "integrity": "sha512-zjQ69G564OCIWIOHSXyQEEDpdpGl+G348RAKY0XXy9Z5kU9Vzv1GMNnkar/ZJ8dzXB3COzD9Mo9NtRZ4xfgUww==" - } - } - }, - "@types/sinon": { - "version": "9.0.4", - "resolved": "https://registry.npmjs.org/@types/sinon/-/sinon-9.0.4.tgz", - "integrity": "sha512-sJmb32asJZY6Z2u09bl0G2wglSxDlROlAejCjsnor+LzBMz17gu8IU7vKC/vWDnv9zEq2wqADHVXFjf4eE8Gdw==", - "requires": { - "@types/sinonjs__fake-timers": "*" - } - }, - "@types/sinon-chai": { - "version": "3.2.4", - "resolved": "https://registry.npmjs.org/@types/sinon-chai/-/sinon-chai-3.2.4.tgz", - "integrity": "sha512-xq5KOWNg70PRC7dnR2VOxgYQ6paumW+4pTZP+6uTSdhpYsAUEeeT5bw6rRHHQrZ4KyR+M5ojOR+lje6TGSpUxA==", - "requires": { - "@types/chai": "*", - "@types/sinon": "*" - } - }, - "@types/sinonjs__fake-timers": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/@types/sinonjs__fake-timers/-/sinonjs__fake-timers-6.0.1.tgz", - "integrity": "sha512-yYezQwGWty8ziyYLdZjwxyMb0CZR49h8JALHGrxjQHWlqGgc8kLdHEgWrgL0uZ29DMvEVBDnHU2Wg36zKSIUtA==" - }, - "@types/superagent": { - "version": "4.1.7", - "resolved": "https://registry.npmjs.org/@types/superagent/-/superagent-4.1.7.tgz", - "integrity": "sha512-JSwNPgRYjIC4pIeOqLwWwfGj6iP1n5NE6kNBEbGx2V8H78xCPwx7QpNp9plaI30+W3cFEzJO7BIIsXE+dbtaGg==", - "requires": { - "@types/cookiejar": "*", - "@types/node": "*" - } - }, - "@types/supertest": { - "version": "2.0.8", - "resolved": "https://registry.npmjs.org/@types/supertest/-/supertest-2.0.8.tgz", - "integrity": "sha512-wcax7/ip4XSSJRLbNzEIUVy2xjcBIZZAuSd2vtltQfRK7kxhx5WMHbLHkYdxN3wuQCrwpYrg86/9byDjPXoGMA==", - "requires": { - "@types/superagent": "*" - } - }, - "@types/uniqid": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/@types/uniqid/-/uniqid-5.2.0.tgz", - "integrity": "sha512-ZBIIQJj0y49rgMfWDEr3miyNhOxyfhvf5/1VVbLObJpfkdGl0Vj2J8qENWwfT2W9OBq5FhwtnJ3nTs2dnY3w2A==" - }, - "@types/webidl-conversions": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/@types/webidl-conversions/-/webidl-conversions-6.1.1.tgz", - "integrity": "sha512-XAahCdThVuCFDQLT7R7Pk/vqeObFNL3YqRyFZg+AqAP/W1/w3xHaIxuW7WszQqTbIBOPRcItYJIou3i/mppu3Q==" - }, - "@types/whatwg-url": { - "version": "8.2.1", - "resolved": "https://registry.npmjs.org/@types/whatwg-url/-/whatwg-url-8.2.1.tgz", - "integrity": "sha512-2YubE1sjj5ifxievI5Ge1sckb9k/Er66HyR2c+3+I6VDUUg1TLPdYYTEbQ+DjRkS4nTxMJhgWfSfMRD2sl2EYQ==", - "requires": { - "@types/node": "*", - "@types/webidl-conversions": "*" - } - }, - "@typescript-eslint/eslint-plugin": { - "version": "2.21.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-2.21.0.tgz", - "integrity": "sha512-b5jjjDMxzcjh/Sbjuo7WyhrQmVJg0WipTHQgXh5Xwx10uYm6nPWqN1WGOsaNq4HR3Zh4wUx4IRQdDkCHwyewyw==", - "requires": { - "@typescript-eslint/experimental-utils": "2.21.0", - "eslint-utils": "^1.4.3", - "functional-red-black-tree": "^1.0.1", - "regexpp": "^3.0.0", - "tsutils": "^3.17.1" - }, - "dependencies": { - "tsutils": { - "version": "3.17.1", - "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-3.17.1.tgz", - "integrity": "sha512-kzeQ5B8H3w60nFY2g8cJIuH7JDpsALXySGtwGJ0p2LSjLgay3NdIpqq5SoOBe46bKDW2iq25irHCr8wjomUS2g==", - "requires": { - "tslib": "^1.8.1" - } - } - } - }, - "@typescript-eslint/experimental-utils": { - "version": "2.21.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/experimental-utils/-/experimental-utils-2.21.0.tgz", - "integrity": "sha512-olKw9JP/XUkav4lq0I7S1mhGgONJF9rHNhKFn9wJlpfRVjNo3PPjSvybxEldvCXnvD+WAshSzqH5cEjPp9CsBA==", - "requires": { - "@types/json-schema": "^7.0.3", - "@typescript-eslint/typescript-estree": "2.21.0", - "eslint-scope": "^5.0.0" - } - }, - "@typescript-eslint/parser": { - "version": "2.21.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-2.21.0.tgz", - "integrity": "sha512-VrmbdrrrvvI6cPPOG7uOgGUFXNYTiSbnRq8ZMyuGa4+qmXJXVLEEz78hKuqupvkpwJQNk1Ucz1TenrRP90gmBg==", - "requires": { - "@types/eslint-visitor-keys": "^1.0.0", - "@typescript-eslint/experimental-utils": "2.21.0", - "@typescript-eslint/typescript-estree": "2.21.0", - "eslint-visitor-keys": "^1.1.0" - } - }, - "@typescript-eslint/typescript-estree": { - "version": "2.21.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-2.21.0.tgz", - "integrity": "sha512-NC/nogZNb9IK2MEFQqyDBAciOT8Lp8O3KgAfvHx2Skx6WBo+KmDqlU3R9KxHONaijfTIKtojRe3SZQyMjr3wBw==", - "requires": { - "debug": "^4.1.1", - "eslint-visitor-keys": "^1.1.0", - "glob": "^7.1.6", - "is-glob": "^4.0.1", - "lodash": "^4.17.15", - "semver": "^6.3.0", - "tsutils": "^3.17.1" - }, - "dependencies": { - "debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", - "requires": { - "ms": "^2.1.1" - } - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" - }, - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==" - }, - "tsutils": { - "version": "3.17.1", - "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-3.17.1.tgz", - "integrity": "sha512-kzeQ5B8H3w60nFY2g8cJIuH7JDpsALXySGtwGJ0p2LSjLgay3NdIpqq5SoOBe46bKDW2iq25irHCr8wjomUS2g==", - "requires": { - "tslib": "^1.8.1" - } - } - } - }, - "@xmldom/xmldom": { - "version": "https://registry.npmjs.org/@xmldom/xmldom/-/xmldom-0.7.5.tgz", - "integrity": "sha512-V3BIhmY36fXZ1OtVcI9W+FxQqxVLsPKcNjWigIaa81dLC9IolJl5Mt4Cvhmr0flUnjSpTdrbMTSbXqYqV5dT6A==" - }, - "JSONStream": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/JSONStream/-/JSONStream-1.3.5.tgz", - "integrity": "sha512-E+iruNOY8VV9s4JEbe1aNEm6MiszPRr/UfcHMz0TQh1BXSxHK+ASV1R6W4HpjBhSeS+54PIsAMCBmwD06LLsqQ==", - "dev": true, - "requires": { - "jsonparse": "^1.2.0", - "through": ">=2.2.7 <3" - } - }, - "accepts": { - "version": "1.3.7", - "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.7.tgz", - "integrity": "sha512-Il80Qs2WjYlJIBNzNkK6KYqlVMTbZLXgHx2oT0pU/fjRHyEp+PEfEPY0R3WCwAGVOtauxh1hOxNgIf5bv7dQpA==", - "dev": true, - "requires": { - "mime-types": "~2.1.24", - "negotiator": "0.6.2" - } - }, - "acorn": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-3.3.0.tgz", - "integrity": "sha1-ReN/s56No/JbruP/U2niu18iAXo=", - "dev": true - }, - "acorn-globals": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/acorn-globals/-/acorn-globals-3.1.0.tgz", - "integrity": "sha1-/YJw9x+7SZawBPqIDuXUZXOnMb8=", - "dev": true, - "requires": { - "acorn": "^4.0.4" - }, - "dependencies": { - "acorn": { - "version": "4.0.13", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-4.0.13.tgz", - "integrity": "sha1-EFSVrlNh1pe9GVyCUZLhrX8lN4c=", - "dev": true - } - } - }, - "acorn-jsx": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.2.0.tgz", - "integrity": "sha512-HiUX/+K2YpkpJ+SzBffkM/AQ2YE03S0U1kjTLVpoJdhZMOWy8qvXVN9JdLqv2QsaQ6MPYQIuNmwD8zOiYUofLQ==" - }, - "adm-zip": { - "version": "0.4.9", - "resolved": "https://registry.npmjs.org/adm-zip/-/adm-zip-0.4.9.tgz", - "integrity": "sha512-eknaJ3Io/JasGGinVeqY5TsPlQgHbiNlHnK5zdFPRNs9XRggDykKz8zPesneOMEZJxWji7G3CfsUW0Ds9Dw0Bw==", - "dev": true - }, - "aggregate-error": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-1.0.0.tgz", - "integrity": "sha1-iINE2tAiCnLjr1CQYRf0h3GSX6w=", - "dev": true, - "requires": { - "clean-stack": "^1.0.0", - "indent-string": "^3.0.0" - } - }, - "ajv": { - "version": "6.12.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.0.tgz", - "integrity": "sha512-D6gFiFA0RRLyUbvijN74DWAjXSFxWKaWP7mldxkVhyhAV3+SWA9HEJPHQ2c9soIeTFJqcSdFDGFgdqs1iUU2Hw==", - "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" - } - }, - "align-text": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/align-text/-/align-text-0.1.4.tgz", - "integrity": "sha1-DNkKVhCT810KmSVsIrcGlDP60Rc=", - "dev": true, - "requires": { - "kind-of": "^3.0.2", - "longest": "^1.0.1", - "repeat-string": "^1.5.2" - } - }, - "ansi-colors": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-3.2.3.tgz", - "integrity": "sha512-LEHHyuhlPY3TmuUYMh2oz89lTShfvgbmzaBcxve9t/9Wuy7Dwf4yoAKcND7KFT1HAQfqZ12qtc+DUrBMeKF9nw==" - }, - "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==", - "dev": true, - "optional": true, - "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=", - "dev": true, - "optional": 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, - "optional": true, - "requires": { - "color-convert": "^2.0.1" - }, - "dependencies": { - "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, - "optional": 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, - "optional": true - } - } - }, - "anymatch": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.1.tgz", - "integrity": "sha512-mM8522psRCqzV+6LhomX5wgp25YVibjh8Wj23I5RPkPppSVSjyKD2A2mBJmWGa+KN7f2D6LNh9jkBCeyLktzjg==", - "requires": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" - }, - "dependencies": { - "normalize-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", - "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==" - } - } - }, - "append-field": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/append-field/-/append-field-1.0.0.tgz", - "integrity": "sha1-HjRA6RXwsSA9I3SOeO3XubW0PlY=", - "dev": true - }, - "append-transform": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/append-transform/-/append-transform-1.0.0.tgz", - "integrity": "sha512-P009oYkeHyU742iSZJzZZywj4QRJdnTWffaKuJQLablCZ1uz6/cW4yaRgcDaoQ+uwOxxnt0gRUcwfsNP2ri0gw==", - "requires": { - "default-require-extensions": "^2.0.0" - } - }, - "aproba": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", - "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==", - "dev": true, - "optional": true - }, - "archiver": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/archiver/-/archiver-5.3.0.tgz", - "integrity": "sha512-iUw+oDwK0fgNpvveEsdQ0Ase6IIKztBJU2U0E9MzszMfmVVUyv1QJhS2ITW9ZCqx8dktAxVAjWWkKehuZE8OPg==", - "dev": true, - "requires": { - "archiver-utils": "^2.1.0", - "async": "^3.2.0", - "buffer-crc32": "^0.2.1", - "readable-stream": "^3.6.0", - "readdir-glob": "^1.0.0", - "tar-stream": "^2.2.0", - "zip-stream": "^4.1.0" - }, - "dependencies": { - "async": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/async/-/async-3.2.3.tgz", - "integrity": "sha512-spZRyzKL5l5BZQrr/6m/SqFdBN0q3OCI0f9rjfBzCMBIP4p75P620rR3gTmaksNOhmzgdxcaxdNfMy6anrbM0g==", - "dev": true - }, - "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==", - "dev": true, - "requires": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - } - }, - "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==", - "dev": true - }, - "string_decoder": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", - "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", - "dev": true, - "requires": { - "safe-buffer": "~5.2.0" - } - } - } - }, - "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==", - "dev": true, - "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" - } - }, - "archy": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/archy/-/archy-1.0.0.tgz", - "integrity": "sha1-+cjBN1fMHde8N5rHeyxipcKGjEA=" - }, - "are-we-there-yet": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.7.tgz", - "integrity": "sha512-nxwy40TuMiUGqMyRHgCSWZ9FM4VAoRP4xUYSTv5ImRog+h9yISPbVH7H8fASCIzYn9wlEv4zvFL7uKDMCFQm3g==", - "dev": true, - "optional": true, - "requires": { - "delegates": "^1.0.0", - "readable-stream": "^2.0.6" - } - }, - "argparse": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", - "requires": { - "sprintf-js": "~1.0.2" - } - }, - "arr-diff": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz", - "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=" - }, - "arr-flatten": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz", - "integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==" - }, - "arr-union": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz", - "integrity": "sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ=" - }, - "array-filter": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/array-filter/-/array-filter-1.0.0.tgz", - "integrity": "sha1-uveeYubvTCpMC4MSMtr/7CUfnYM=" - }, - "array-find-index": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/array-find-index/-/array-find-index-1.0.2.tgz", - "integrity": "sha1-3wEKoSh+Fku9pvlyOwqWoexBh6E=" - }, - "array-flatten": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", - "integrity": "sha1-ml9pkFGx5wczKPKgCJaLZOopVdI=", - "dev": true - }, - "array-from": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/array-from/-/array-from-2.1.1.tgz", - "integrity": "sha1-z+nYwmYoudxa7MYqn12PHzUsEZU=" - }, - "array-parallel": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/array-parallel/-/array-parallel-0.1.3.tgz", - "integrity": "sha1-j3hTCJJu1apHjEfmTRszS2wMlH0=", - "dev": true - }, - "array-series": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/array-series/-/array-series-0.1.5.tgz", - "integrity": "sha1-3103v8XC7wdV4qpPkv6ufUtaly8=", - "dev": true - }, - "array-union": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz", - "integrity": "sha1-mjRBDk9OPaI96jdb5b5w8kd47Dk=", - "requires": { - "array-uniq": "^1.0.1" - } - }, - "array-uniq": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz", - "integrity": "sha1-r2rId6Jcx/dOBYiUdThY39sk/bY=" - }, - "array-unique": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz", - "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=" - }, - "arrify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", - "integrity": "sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0=" - }, - "asap": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz", - "integrity": "sha1-5QNHYR1+aQlDIIu9r+vLwvuGbUY=", - "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" - } - }, - "asn1.js": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-2.2.1.tgz", - "integrity": "sha1-yLpN1o6EQxKIEmIwyyBFvfqfv+E=", - "dev": true, - "requires": { - "bn.js": "^2.0.0", - "inherits": "^2.0.1", - "minimalistic-assert": "^1.0.0" - }, - "dependencies": { - "bn.js": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-2.2.0.tgz", - "integrity": "sha1-EhYrwq5x/EClYmwzQ486h1zTdiU=", - "dev": true - } - } - }, - "assert": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/assert/-/assert-2.0.0.tgz", - "integrity": "sha512-se5Cd+js9dXJnu6Ag2JFc00t+HmHOen+8Q+L7O9zI0PqQXr20uk2J0XQqMxZEeo5U50o8Nvmmx7dZrl+Ufr35A==", - "requires": { - "es6-object-assign": "^1.1.0", - "is-nan": "^1.2.1", - "object-is": "^1.0.1", - "util": "^0.12.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==" - }, - "assign-symbols": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/assign-symbols/-/assign-symbols-1.0.0.tgz", - "integrity": "sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c=" - }, - "astral-regex": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-1.0.0.tgz", - "integrity": "sha512-+Ryf6g3BKoRc7jfp7ad8tM4TtMiaWvbF/1/sQcZPkkS7ag3D5nMBCe2UfOTONtAkaG0tO0ij3C5Lwmf1EiyjHg==" - }, - "async": { - "version": "0.2.10", - "resolved": "https://registry.npmjs.org/async/-/async-0.2.10.tgz", - "integrity": "sha1-trvgsGdLnXGXCMo43owjfLUmw9E=", - "dev": true - }, - "async-mutex": { - "version": "https://registry.npmjs.org/async-mutex/-/async-mutex-0.3.2.tgz", - "integrity": "sha512-HuTK7E7MT7jZEh1P9GtRW9+aTWiDWWi9InbZ5hjxrnRa39KS4BW04+xLBhYNS2aXhHUIKZSw3gj4Pn1pj+qGAA==", - "requires": { - "tslib": "^2.3.1" - }, - "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=" - }, - "atob": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz", - "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==" - }, - "available-typed-arrays": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.2.tgz", - "integrity": "sha512-XWX3OX8Onv97LMk/ftVyBibpGwY5a8SmuxZPzeOxqmuEqUCOM9ZE+uIaD1VNJ5QnvU2UQusvmKbuM1FR8QWGfQ==", - "requires": { - "array-filter": "^1.0.0" - } - }, - "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.9.1", - "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.9.1.tgz", - "integrity": "sha512-wMHVg2EOHaMRxbzgFJ9gtjOOCrI80OHLG14rxi28XwOW8ux6IiEbRCGGGqCtdAIg4FQCbW20k9RsT4y3gJlFug==" - }, - "axios": { - "version": "0.19.2", - "resolved": "https://registry.npmjs.org/axios/-/axios-0.19.2.tgz", - "integrity": "sha512-fjgm5MvRHLhx+osE2xoekY70AhARk3a6hkN+3Io1jc00jtquGvxYlKlsFUhmUET0V5te6CcZI7lcv2Ym61mjHA==", - "dev": true, - "requires": { - "follow-redirects": "1.5.10" - } - }, - "babel-runtime": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz", - "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=", - "dev": true, - "requires": { - "core-js": "^2.4.0", - "regenerator-runtime": "^0.11.0" - } - }, - "babel-types": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-types/-/babel-types-6.26.0.tgz", - "integrity": "sha1-o7Bz+Uq0nrb6Vc1lInozQ4BjJJc=", - "dev": true, - "requires": { - "babel-runtime": "^6.26.0", - "esutils": "^2.0.2", - "lodash": "^4.17.4", - "to-fast-properties": "^1.0.3" - } - }, - "babylon": { - "version": "6.18.0", - "resolved": "https://registry.npmjs.org/babylon/-/babylon-6.18.0.tgz", - "integrity": "sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==", - "dev": true - }, - "backoff": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/backoff/-/backoff-2.5.0.tgz", - "integrity": "sha1-9hbtqdPktmuMp/ynn2lXIsX44m8=", - "dev": true, - "requires": { - "precond": "0.2" - } - }, - "balanced-match": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", - "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=" - }, - "base": { - "version": "0.11.2", - "resolved": "https://registry.npmjs.org/base/-/base-0.11.2.tgz", - "integrity": "sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg==", - "requires": { - "cache-base": "^1.0.1", - "class-utils": "^0.3.5", - "component-emitter": "^1.2.1", - "define-property": "^1.0.0", - "isobject": "^3.0.1", - "mixin-deep": "^1.2.0", - "pascalcase": "^0.1.1" - }, - "dependencies": { - "define-property": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", - "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", - "requires": { - "is-descriptor": "^1.0.0" - } - }, - "is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-data-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", - "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-descriptor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", - "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", - "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - } - }, - "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==" - } - } - }, - "base-64": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/base-64/-/base-64-1.0.0.tgz", - "integrity": "sha512-kwDPIFCGx0NZHog36dj+tHiwP4QMzsZ3AgMViUBKI0+V5n4U0ufTCUMhnQ04diaRI8EX/QcPfql7zlhZ7j4zgg==", - "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==", - "dev": true - }, - "base64url": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/base64url/-/base64url-3.0.1.tgz", - "integrity": "sha512-ir1UPr3dkwexU7FdV8qBBbNDRUhMmIekYMFZfi+C/sLNnRESKPl23nB9b2pltqfOQNnGzsDdId90AEtG5tCx4A==" - }, - "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" - } - }, - "bcryptjs": { - "version": "2.4.3", - "resolved": "https://registry.npmjs.org/bcryptjs/-/bcryptjs-2.4.3.tgz", - "integrity": "sha1-mrVie5PmBiH/fNrF2pczAn3x0Ms=", - "dev": true - }, - "better-sqlite3": { - "version": "7.4.1", - "resolved": "https://registry.npmjs.org/better-sqlite3/-/better-sqlite3-7.4.1.tgz", - "integrity": "sha512-sk1kW3PsWE7W7G9qbi5TQxCROlQVR8YWlp4srbyrwN5DrLeamKfrm3JExwOiNSAYyJv8cw5/2HOfvF/ipZj4qg==", - "dev": true, - "optional": true, - "requires": { - "bindings": "^1.5.0", - "prebuild-install": "^6.0.1", - "tar": "^6.1.0" - } - }, - "binary-extensions": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.0.0.tgz", - "integrity": "sha512-Phlt0plgpIIBOGTT/ehfFnbNlfsDEiqmzE2KRXoX1bLIlir4X/MR+zSyBEkL05ffWgnRSf/DXv+WrUAVr93/ow==" - }, - "bindings": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/bindings/-/bindings-1.5.0.tgz", - "integrity": "sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==", - "dev": true, - "optional": true, - "requires": { - "file-uri-to-path": "1.0.0" - } - }, - "bl": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz", - "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==", - "dev": true, - "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==", - "dev": true, - "requires": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - } - }, - "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==", - "dev": true - }, - "string_decoder": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", - "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", - "dev": true, - "requires": { - "safe-buffer": "~5.2.0" - } - } - } - }, - "bluebird": { - "version": "3.7.2", - "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz", - "integrity": "sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==", - "dev": true - }, - "bn.js": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-3.3.0.tgz", - "integrity": "sha1-ETjld4if3Je72rUYRPIZDfwK49c=", - "dev": true - }, - "body-parser": { - "version": "1.18.3", - "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.18.3.tgz", - "integrity": "sha1-WykhmP/dVTs6DyDe0FkrlWlVyLQ=", - "dev": true, - "requires": { - "bytes": "3.0.0", - "content-type": "~1.0.4", - "debug": "2.6.9", - "depd": "~1.1.2", - "http-errors": "~1.6.3", - "iconv-lite": "0.4.23", - "on-finished": "~2.3.0", - "qs": "6.5.2", - "raw-body": "2.3.3", - "type-is": "~1.6.16" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "iconv-lite": { - "version": "0.4.23", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.23.tgz", - "integrity": "sha512-neyTUVFtahjf0mB3dZT77u+8O0QB89jFdnBkd5P1JgYPbPaia3gXXOVL2fq8VyU2gMMD7SaN7QukTB/pmXYvDA==", - "dev": true, - "requires": { - "safer-buffer": ">= 2.1.2 < 3" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "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": "2.3.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", - "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", - "requires": { - "arr-flatten": "^1.1.0", - "array-unique": "^0.3.2", - "extend-shallow": "^2.0.1", - "fill-range": "^4.0.0", - "isobject": "^3.0.1", - "repeat-element": "^1.1.2", - "snapdragon": "^0.8.1", - "snapdragon-node": "^2.0.1", - "split-string": "^3.0.2", - "to-regex": "^3.0.1" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "brorand": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz", - "integrity": "sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8=", - "dev": true - }, - "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==" - }, - "browserify-aes": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz", - "integrity": "sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==", - "dev": true, - "requires": { - "buffer-xor": "^1.0.3", - "cipher-base": "^1.0.0", - "create-hash": "^1.1.0", - "evp_bytestokey": "^1.0.3", - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" - } - }, - "browserify-zlib": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/browserify-zlib/-/browserify-zlib-0.2.0.tgz", - "integrity": "sha512-Z942RysHXmJrhqk88FmKBVq/v5tqmSkDz7p54G/MGyjMnCFFnC79XWNbg+Vta8W6Wb2qtSZTSxIGkJrRpCFEiA==" - }, - "bson": { - "version": "1.0.9", - "resolved": "https://registry.npmjs.org/bson/-/bson-1.0.9.tgz", - "integrity": "sha512-IQX9/h7WdMBIW/q/++tGd+emQr0XMdeZ6icnT/74Xk9fnabWn+gZgpE+9V+gujL3hhJOoNrnDVY7tWdzc7NUTg==", - "dev": true - }, - "buffer": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", - "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", - "dev": true, - "requires": { - "base64-js": "^1.3.1", - "ieee754": "^1.1.13" - } - }, - "buffer-crc32": { - "version": "0.2.13", - "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", - "integrity": "sha1-DTM+PwDqxQqhRUq9MO+MKl2ackI=", - "dev": true - }, - "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-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 - }, - "buffer-shims": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/buffer-shims/-/buffer-shims-1.0.0.tgz", - "integrity": "sha1-mXjOMXOIxkmth5MCjDR37wRKi1E=", - "dev": true - }, - "buffer-xor": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz", - "integrity": "sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk=", - "dev": true - }, - "bunyan": { - "version": "1.8.12", - "resolved": "https://registry.npmjs.org/bunyan/-/bunyan-1.8.12.tgz", - "integrity": "sha1-8VDw9nSKvdcq6uhPBEA74u8RN5c=", - "dev": true, - "requires": { - "dtrace-provider": "~0.8", - "moment": "^2.10.6", - "mv": "~2", - "safe-json-stringify": "~1" - } - }, - "busboy": { - "version": "0.2.14", - "resolved": "https://registry.npmjs.org/busboy/-/busboy-0.2.14.tgz", - "integrity": "sha1-bCpiLvz0fFe7vh4qnDetNseSVFM=", - "dev": true, - "requires": { - "dicer": "0.2.5", - "readable-stream": "1.1.x" - }, - "dependencies": { - "isarray": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", - "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=", - "dev": true - }, - "readable-stream": { - "version": "1.1.14", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz", - "integrity": "sha1-fPTFTvZI44EwhMY23SB54WbAgdk=", - "dev": true, - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.1", - "isarray": "0.0.1", - "string_decoder": "~0.10.x" - } - } - } - }, - "bytes": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz", - "integrity": "sha1-0ygVQE1olpn4Wk6k+odV3ROpYEg=", - "dev": true - }, - "cache-base": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/cache-base/-/cache-base-1.0.1.tgz", - "integrity": "sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ==", - "requires": { - "collection-visit": "^1.0.0", - "component-emitter": "^1.2.1", - "get-value": "^2.0.6", - "has-value": "^1.0.0", - "isobject": "^3.0.1", - "set-value": "^2.0.0", - "to-object-path": "^0.3.0", - "union-value": "^1.0.0", - "unset-value": "^1.0.0" - } - }, - "cacheable-request": { - "version": "2.1.4", - "resolved": "https://registry.npmjs.org/cacheable-request/-/cacheable-request-2.1.4.tgz", - "integrity": "sha1-DYCIAbY0KtM8kd+dC0TcCbkeXD0=", - "dev": true, - "requires": { - "clone-response": "1.0.2", - "get-stream": "3.0.0", - "http-cache-semantics": "3.8.1", - "keyv": "3.0.0", - "lowercase-keys": "1.0.0", - "normalize-url": "2.0.1", - "responselike": "1.0.2" - }, - "dependencies": { - "lowercase-keys": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.0.tgz", - "integrity": "sha1-TjNms55/VFfjXxMkvfb4jQv8cwY=", - "dev": true - } - } - }, - "caching-transform": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/caching-transform/-/caching-transform-3.0.2.tgz", - "integrity": "sha512-Mtgcv3lh3U0zRii/6qVgQODdPA4G3zhG+jtbCWj39RXuUFTMzH0vcdMtaJS1jPowd+It2Pqr6y3NJMQqOqCE2w==", - "requires": { - "hasha": "^3.0.0", - "make-dir": "^2.0.0", - "package-hash": "^3.0.0", - "write-file-atomic": "^2.4.2" - } - }, - "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==" - }, - "camelcase": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-1.2.1.tgz", - "integrity": "sha1-m7UwTS4LVmmLLHWLCKPqqdqlijk=", - "dev": true - }, - "camelcase-keys": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-4.2.0.tgz", - "integrity": "sha1-oqpfsa9oh1glnDLBQUJteJI7m3c=", - "requires": { - "camelcase": "^4.1.0", - "map-obj": "^2.0.0", - "quick-lru": "^1.0.0" - }, - "dependencies": { - "camelcase": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz", - "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=" - } - } - }, - "caseless": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", - "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=" - }, - "center-align": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/center-align/-/center-align-0.1.3.tgz", - "integrity": "sha1-qg0yYptu6XIgBBHL1EYckHvCt60=", - "dev": true, - "requires": { - "align-text": "^0.1.3", - "lazy-cache": "^1.0.3" - } - }, - "cfenv": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/cfenv/-/cfenv-1.0.3.tgz", - "integrity": "sha1-Ry/QwFs72y0O3ndeEkgDqxJXJ5M=", - "dev": true, - "requires": { - "js-yaml": "3.4.x", - "ports": "1.1.x", - "underscore": "1.8.x" - } - }, - "chai": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/chai/-/chai-4.2.0.tgz", - "integrity": "sha512-XQU3bhBukrOsQCuwZndwGcCVQHyZi53fQ6Ys1Fym7E4olpIqqZZhhoFJoaKVvV17lWQoXYwgWN2nF5crA8J2jw==", - "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.0", - "type-detect": "^4.0.5" - }, - "dependencies": { - "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" - } - } - } - }, - "chai-as-promised": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/chai-as-promised/-/chai-as-promised-7.1.1.tgz", - "integrity": "sha512-azL6xMoi+uxu6z4rhWQ1jbdUhOMhis2PvscD/xjLqNMkv3BPPp2JyyuTHOrf9BOosGpNQ11v6BKv/g57RXbiaA==", - "requires": { - "check-error": "^1.0.2" - } - }, - "chalk": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.1.tgz", - "integrity": "sha512-diHzdDKxcU+bAsUboHLPEDQiw0qEe0qd7SYUn3HgcFlWgbDcfLGswOHYeGrHKzG9z6UYf01d9VFMfZxPM1xZSg==", - "dev": true, - "optional": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "character-parser": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/character-parser/-/character-parser-2.2.0.tgz", - "integrity": "sha1-x84o821LzZdE5f/CxfzeHHMmH8A=", - "dev": true, - "requires": { - "is-regex": "^1.0.3" - } - }, - "chardet": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz", - "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==" - }, - "check-error": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/check-error/-/check-error-1.0.2.tgz", - "integrity": "sha1-V00xLt2Iu13YkS6Sht1sCu1KrII=" - }, - "chokidar": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.3.0.tgz", - "integrity": "sha512-dGmKLDdT3Gdl7fBUe8XK+gAtGmzy5Fn0XkkWQuYxGIgWVPPse2CxFA5mtrlD0TOHaHjEUqkWNyP1XdHoJES/4A==", - "requires": { - "anymatch": "~3.1.1", - "braces": "~3.0.2", - "fsevents": "~2.1.1", - "glob-parent": "~5.1.0", - "is-binary-path": "~2.1.0", - "is-glob": "~4.0.1", - "normalize-path": "~3.0.0", - "readdirp": "~3.2.0" - }, - "dependencies": { - "braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", - "requires": { - "fill-range": "^7.0.1" - } - }, - "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==", - "requires": { - "to-regex-range": "^5.0.1" - } - }, - "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==", - "requires": { - "is-glob": "^4.0.1" - } - }, - "is-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==" - }, - "normalize-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", - "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==" - }, - "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==", - "requires": { - "is-number": "^7.0.0" - } - } - } - }, - "chownr": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz", - "integrity": "sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==", - "dev": true, - "optional": true - }, - "cipher-base": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.4.tgz", - "integrity": "sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==", - "dev": true, - "requires": { - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" - } - }, - "class-utils": { - "version": "0.3.6", - "resolved": "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz", - "integrity": "sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==", - "requires": { - "arr-union": "^3.1.0", - "define-property": "^0.2.5", - "isobject": "^3.0.0", - "static-extend": "^0.1.1" - }, - "dependencies": { - "define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "requires": { - "is-descriptor": "^0.1.0" - } - } - } - }, - "clean-css": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-4.2.3.tgz", - "integrity": "sha512-VcMWDN54ZN/DS+g58HYL5/n4Zrqe8vHJpGA8KdgUXFU4fuP/aHNw8eld9SyEIyabIMJX/0RaY/fplOo5hYLSFA==", - "dev": true, - "requires": { - "source-map": "~0.6.0" - } - }, - "clean-stack": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-1.3.0.tgz", - "integrity": "sha1-noIVAa6XmYbEax1m0tQy2y/UrjE=", - "dev": true - }, - "cli-cursor": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz", - "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", - "dev": true, - "optional": true, - "requires": { - "restore-cursor": "^3.1.0" - } - }, - "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==", - "dev": true, - "optional": true - }, - "cliui": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-2.1.0.tgz", - "integrity": "sha1-S0dXYP+AJkx2LDoXGQMukcf+oNE=", - "dev": true, - "requires": { - "center-align": "^0.1.1", - "right-align": "^0.1.1", - "wordwrap": "0.0.2" - } - }, - "clone-response": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/clone-response/-/clone-response-1.0.2.tgz", - "integrity": "sha1-0dyXOSAxTfZ/vrlCI7TuNQI56Ws=", - "dev": true, - "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==", - "dev": true - } - } - }, - "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, - "optional": true - }, - "collection-visit": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz", - "integrity": "sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA=", - "requires": { - "map-visit": "^1.0.0", - "object-visit": "^1.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==", - "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=" - }, - "colors": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/colors/-/colors-1.0.3.tgz", - "integrity": "sha1-BDP0TYCWgP3rYO0mDxsMJi6CpAs=", - "dev": true - }, - "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": "8.3.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-8.3.0.tgz", - "integrity": "sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww==", - "dev": true - }, - "commondir": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", - "integrity": "sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs=" - }, - "component-emitter": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz", - "integrity": "sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==" - }, - "compress-commons": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/compress-commons/-/compress-commons-4.1.1.tgz", - "integrity": "sha512-QLdDLCKNV2dtoTorqgxngQCMA+gWXkM/Nwu7FpeBhk/RdkzimqC3jueb/FDmaZeXh+uby1jkBqE3xArsLBE5wQ==", - "dev": true, - "requires": { - "buffer-crc32": "^0.2.13", - "crc32-stream": "^4.0.2", - "normalize-path": "^3.0.0", - "readable-stream": "^3.6.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==", - "dev": true, - "requires": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - } - }, - "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==", - "dev": true - }, - "string_decoder": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", - "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", - "dev": true, - "requires": { - "safe-buffer": "~5.2.0" - } - } - } - }, - "concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=" - }, - "concat-stream": { - "version": "1.5.2", - "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.5.2.tgz", - "integrity": "sha1-cIl4Yk2FavQaWnQd790mHadSwmY=", - "dev": true, - "requires": { - "inherits": "~2.0.1", - "readable-stream": "~2.0.0", - "typedarray": "~0.0.5" - } - }, - "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, - "optional": true - }, - "constantinople": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/constantinople/-/constantinople-3.1.2.tgz", - "integrity": "sha512-yePcBqEFhLOqSBtwYOGGS1exHo/s1xjekXiinh4itpNQGCu4KA1euPh1fg07N2wMITZXQkBz75Ntdt1ctGZouw==", - "dev": true, - "requires": { - "@types/babel-types": "^7.0.0", - "@types/babylon": "^6.16.2", - "babel-types": "^6.26.0", - "babylon": "^6.18.0" - } - }, - "content-disposition": { - "version": "0.5.3", - "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.3.tgz", - "integrity": "sha512-ExO0774ikEObIAEV9kDo50o+79VCUdEB6n6lzKgGwupcVeRlhrj3qGAfwq8G6uBJjkqLrhT0qEYFcWng8z1z0g==", - "dev": true, - "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==", - "dev": true - } - } - }, - "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==", - "dev": true - }, - "convert-source-map": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.7.0.tgz", - "integrity": "sha512-4FJkXzKXEDB1snCFZlLP4gpC3JILicCpGbzG9f9G7tGqGCzETQ2hWPrcinA9oU4wtf2biUaEH5065UnMeR33oA==", - "requires": { - "safe-buffer": "~5.1.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==" - } - } - }, - "cookie": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.0.tgz", - "integrity": "sha512-+Hp8fLp57wnUSt0tY0tHEXh4voZRDnoIrZPqlo3DPiI4y9lwg/jqx+1Om94/W6ZaPDOUbnjOt/99w66zk+l1Xg==", - "dev": true - }, - "cookie-session": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/cookie-session/-/cookie-session-1.3.2.tgz", - "integrity": "sha1-Rp26djCMAQtSnpp8+dh7ZJvgGQs=", - "requires": { - "cookies": "0.7.1", - "debug": "2.6.9", - "on-headers": "~1.0.1" - }, - "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=" - } - } - }, - "cookie-signature": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", - "integrity": "sha1-4wOogrNCzD7oylE6eZmXNNqzriw=", - "dev": true - }, - "cookiejar": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/cookiejar/-/cookiejar-2.1.2.tgz", - "integrity": "sha512-Mw+adcfzPxcPeI+0WlvRrr/3lGVO0bD75SxX6811cxSh1Wbxx7xZBGK1eVtDf6si8rg2lhnUjsVLMFMfbRIuwA==" - }, - "cookies": { - "version": "0.7.1", - "resolved": "https://registry.npmjs.org/cookies/-/cookies-0.7.1.tgz", - "integrity": "sha1-fIphX1SBxhq58WyDNzG8uPZjuZs=", - "requires": { - "depd": "~1.1.1", - "keygrip": "~1.0.2" - } - }, - "copy-descriptor": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz", - "integrity": "sha1-Z29us8OZl8LuGsOpJP1hJHSPV40=" - }, - "core-js": { - "version": "2.6.11", - "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.6.11.tgz", - "integrity": "sha512-5wjnpaT/3dV+XB4borEsnAYQchn00XSgTAWKDkEqv+K8KevjbzmofK6hfJ9TZIlpj2N0xQpazy7PiRQiWHqzWg==", - "dev": true - }, - "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=" - }, - "coveralls": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/coveralls/-/coveralls-3.0.4.tgz", - "integrity": "sha512-eyqUWA/7RT0JagiL0tThVhjbIjoiEUyWCjtUJoOPcWoeofP5WK/jb2OJYoBFrR6DvplR+AxOyuBqk4JHkk5ykA==", - "requires": { - "growl": "~> 1.10.0", - "js-yaml": "^3.11.0", - "lcov-parse": "^0.0.10", - "log-driver": "^1.2.7", - "minimist": "^1.2.0", - "request": "^2.86.0" - }, - "dependencies": { - "esprima": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", - "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==" - }, - "js-yaml": { - "version": "3.13.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.13.1.tgz", - "integrity": "sha512-YfbcO7jXDdyj0DGxYVSlSeQNHbD7XPWvrVWeVUujrQEoZzWJIRrCPoyk6kL6IAjAG2IolMK4T0hNUe0HOUs5Jw==", - "requires": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" - } - } - } - }, - "cp-file": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/cp-file/-/cp-file-6.2.0.tgz", - "integrity": "sha512-fmvV4caBnofhPe8kOcitBwSn2f39QLjnAnGq3gO9dfd75mUytzKNZB1hde6QHunW2Rt+OwuBOMc3i1tNElbszA==", - "requires": { - "graceful-fs": "^4.1.2", - "make-dir": "^2.0.0", - "nested-error-stacks": "^2.0.0", - "pify": "^4.0.1", - "safe-buffer": "^5.0.1" - }, - "dependencies": { - "pify": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", - "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==" - } - } - }, - "cpy": { - "version": "7.3.0", - "resolved": "https://registry.npmjs.org/cpy/-/cpy-7.3.0.tgz", - "integrity": "sha512-auvDu6h/J+cO1uqV40ymL/VoPM0+qPpNGaNttTzkYVXO/+GeynuyAK/MwFcWgU/P82ezcZw7RaN34CIIWajKLA==", - "requires": { - "arrify": "^1.0.1", - "cp-file": "^6.1.0", - "globby": "^9.2.0", - "nested-error-stacks": "^2.1.0" - } - }, - "cpy-cli": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/cpy-cli/-/cpy-cli-2.0.0.tgz", - "integrity": "sha512-LzrtY3lBWvFZcw4lXgkEbbDUd7y78juC3C5l7gj3UyezMEZF0Be9fjCVLN1HoZAzdMDeC3KHehWpHBJvgVAPkw==", - "requires": { - "cpy": "^7.0.0", - "meow": "^5.0.0" - } - }, - "crc-32": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/crc-32/-/crc-32-1.2.1.tgz", - "integrity": "sha512-Dn/xm/1vFFgs3nfrpEVScHoIslO9NZRITWGz/1E/St6u4xw99vfZzVkW0OSnzx2h9egej9xwMCEut6sqwokM/w==", - "dev": true, - "requires": { - "exit-on-epipe": "~1.0.1", - "printj": "~1.3.1" - } - }, - "crc32-stream": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/crc32-stream/-/crc32-stream-4.0.2.tgz", - "integrity": "sha512-DxFZ/Hk473b/muq1VJ///PMNLj0ZMnzye9thBpmjpJKCc5eMgB95aK8zCGrGfQ90cWo561Te6HK9D+j4KPdM6w==", - "dev": true, - "requires": { - "crc-32": "^1.2.0", - "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==", - "dev": true, - "requires": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - } - }, - "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==", - "dev": true - }, - "string_decoder": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", - "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", - "dev": true, - "requires": { - "safe-buffer": "~5.2.0" - } - } - } - }, - "create-hash": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz", - "integrity": "sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==", - "dev": true, - "requires": { - "cipher-base": "^1.0.1", - "inherits": "^2.0.1", - "md5.js": "^1.3.4", - "ripemd160": "^2.0.1", - "sha.js": "^2.4.0" - } - }, - "create-hmac": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz", - "integrity": "sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==", - "dev": true, - "requires": { - "cipher-base": "^1.0.3", - "create-hash": "^1.1.0", - "inherits": "^2.0.1", - "ripemd160": "^2.0.0", - "safe-buffer": "^5.0.1", - "sha.js": "^2.4.8" - } - }, - "cross-spawn": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-4.0.2.tgz", - "integrity": "sha1-e5JHYhwjrf3ThWAEqCPL45dCTUE=", - "requires": { - "lru-cache": "^4.0.1", - "which": "^1.2.9" - } - }, - "currently-unhandled": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/currently-unhandled/-/currently-unhandled-0.4.1.tgz", - "integrity": "sha1-mI3zP+qxke95mmE2nddsF635V+o=", - "requires": { - "array-find-index": "^1.0.1" - } - }, - "cycle": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/cycle/-/cycle-1.0.3.tgz", - "integrity": "sha1-IegLK+hYD5i0aPN5QwZisEbDStI=", - "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" - } - }, - "dbf": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/dbf/-/dbf-0.1.0.tgz", - "integrity": "sha1-1WNrdWq9NoilbU3+tZD0gqBjvq0=", - "dev": true, - "requires": { - "jdataview": "~2.4.4" - } - }, - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "decamelize": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", - "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=" - }, - "decamelize-keys": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/decamelize-keys/-/decamelize-keys-1.1.0.tgz", - "integrity": "sha1-0XGoeTMlKAfrPLYdwcFEXQeN8tk=", - "requires": { - "decamelize": "^1.1.0", - "map-obj": "^1.0.0" - }, - "dependencies": { - "map-obj": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz", - "integrity": "sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0=" - } - } - }, - "decode-uri-component": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz", - "integrity": "sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU=" - }, - "decompress-response": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-3.3.0.tgz", - "integrity": "sha1-gKTdMjdIOEv6JICDYirt7Jgq3/M=", - "requires": { - "mimic-response": "^1.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-equal": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-2.0.2.tgz", - "integrity": "sha512-kX0bjV7tdMuhrhzKPEnVwqfQCuf+IEfN+4Xqv4eKd75xGRyn8yzdQ9ujPY6a221rgJKyQC4KBu1PibDTpa6m9w==", - "requires": { - "es-abstract": "^1.17.5", - "es-get-iterator": "^1.1.0", - "is-arguments": "^1.0.4", - "is-date-object": "^1.0.2", - "is-regex": "^1.0.5", - "isarray": "^2.0.5", - "object-is": "^1.0.2", - "object-keys": "^1.1.1", - "regexp.prototype.flags": "^1.3.0", - "side-channel": "^1.0.2", - "which-boxed-primitive": "^1.0.1", - "which-collection": "^1.0.1", - "which-typed-array": "^1.1.1" - }, - "dependencies": { - "es-abstract": { - "version": "1.17.5", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.17.5.tgz", - "integrity": "sha512-BR9auzDbySxOcfog0tLECW8l28eRGpDpU3Dm3Hp4q/N+VtLTmyj4EUN088XZWQDW/hzj6sYRDXeOFsaAODKvpg==", - "requires": { - "es-to-primitive": "^1.2.1", - "function-bind": "^1.1.1", - "has": "^1.0.3", - "has-symbols": "^1.0.1", - "is-callable": "^1.1.5", - "is-regex": "^1.0.5", - "object-inspect": "^1.7.0", - "object-keys": "^1.1.1", - "object.assign": "^4.1.0", - "string.prototype.trimleft": "^2.1.1", - "string.prototype.trimright": "^2.1.1" - } - }, - "isarray": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", - "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==" - } - } - }, - "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==", - "dev": true, - "optional": true - }, - "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=" - }, - "default-require-extensions": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/default-require-extensions/-/default-require-extensions-2.0.0.tgz", - "integrity": "sha1-9fj7sYp9bVCyH2QfZJ67Uiz+JPc=", - "requires": { - "strip-bom": "^3.0.0" - } - }, - "define-properties": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz", - "integrity": "sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==", - "requires": { - "object-keys": "^1.0.12" - } - }, - "define-property": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz", - "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==", - "requires": { - "is-descriptor": "^1.0.2", - "isobject": "^3.0.1" - }, - "dependencies": { - "is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-data-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", - "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-descriptor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", - "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", - "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - } - }, - "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==" - } - } - }, - "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=", - "dev": true, - "optional": 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=", - "dev": true - }, - "detect-libc": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-1.0.3.tgz", - "integrity": "sha1-+hN8S9aY7fVc1c0CrFWfkaTEups=", - "dev": true, - "optional": true - }, - "dicer": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/dicer/-/dicer-0.2.5.tgz", - "integrity": "sha1-WZbAhrszIYyBLAkL3cCc0S+stw8=", - "dev": true, - "requires": { - "readable-stream": "1.1.x", - "streamsearch": "0.1.2" - }, - "dependencies": { - "isarray": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", - "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=", - "dev": true - }, - "readable-stream": { - "version": "1.1.14", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz", - "integrity": "sha1-fPTFTvZI44EwhMY23SB54WbAgdk=", - "dev": true, - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.1", - "isarray": "0.0.1", - "string_decoder": "~0.10.x" - } - } - } - }, - "diff": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/diff/-/diff-3.5.0.tgz", - "integrity": "sha512-A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA==" - }, - "dir-glob": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-2.2.2.tgz", - "integrity": "sha512-f9LBi5QWzIW3I6e//uxZoLBlUt9kcp66qo0sSCxL6YZKc75R1c4MFCoe/LaZiBGmgujvQdxc5Bn3QhfyvK5Hsw==", - "requires": { - "path-type": "^3.0.0" - } - }, - "doctrine": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", - "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", - "requires": { - "esutils": "^2.0.2" - } - }, - "doctypes": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/doctypes/-/doctypes-1.1.0.tgz", - "integrity": "sha1-6oCxBqh1OHdOijpKWv4pPeSJ4Kk=", - "dev": true - }, - "drange": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/drange/-/drange-1.1.1.tgz", - "integrity": "sha512-pYxfDYpued//QpnLIm4Avk7rsNtAtQkUES2cwAYSvD/wd2pKD71gN2Ebj3e7klzXwjocvE8c5vx/1fxwpqmSxA==" - }, - "dtrace-provider": { - "version": "0.8.8", - "resolved": "https://registry.npmjs.org/dtrace-provider/-/dtrace-provider-0.8.8.tgz", - "integrity": "sha512-b7Z7cNtHPhH9EJhNNbbeqTcXB8LGFFZhq1PGgEvpeHlzd36bhbdTWoE/Ba/YguqpBSlAPKnARWhVlhunCMwfxg==", - "dev": true, - "optional": true, - "requires": { - "nan": "^2.14.0" - }, - "dependencies": { - "nan": { - "version": "2.14.0", - "resolved": "https://registry.npmjs.org/nan/-/nan-2.14.0.tgz", - "integrity": "sha512-INOFj37C7k3AfaNTtX8RhsTw7qRy7eLET14cROi9+5HAVbbHuIWUHEauBv5qT4Av2tWasiTY1Jw6puUNqRJXQg==", - "dev": true, - "optional": true - } - } - }, - "duplexer": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/duplexer/-/duplexer-0.1.2.tgz", - "integrity": "sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg==", - "dev": true - }, - "duplexer3": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/duplexer3/-/duplexer3-0.1.4.tgz", - "integrity": "sha1-7gHdHKwO08vH/b6jfcCo8c4ALOI=", - "dev": true - }, - "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=", - "dev": true - }, - "elliptic": { - "version": "6.5.2", - "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.2.tgz", - "integrity": "sha512-f4x70okzZbIQl/NSRLkI/+tteV/9WqL98zx+SQ69KbXxmVrmjwsNUPn/gYJJ0sHvEak24cZgHIPegRePAtA/xw==", - "dev": true, - "requires": { - "bn.js": "^4.4.0", - "brorand": "^1.0.1", - "hash.js": "^1.0.0", - "hmac-drbg": "^1.0.0", - "inherits": "^2.0.1", - "minimalistic-assert": "^1.0.0", - "minimalistic-crypto-utils": "^1.0.0" - }, - "dependencies": { - "bn.js": { - "version": "4.11.8", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.8.tgz", - "integrity": "sha512-ItfYfPLkWHUjckQCk8xC+LwxgK8NYcXywGigJgSwOP8Y2iyWT4f2vsZnoOXTTbo+o5yXmIUJ4gn5538SO5S3gA==", - "dev": true - } - } - }, - "emoji-regex": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", - "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==" - }, - "encodeurl": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", - "integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k=", - "dev": true - }, - "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==", - "dev": true, - "requires": { - "once": "^1.4.0" - } - }, - "error-ex": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", - "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", - "requires": { - "is-arrayish": "^0.2.1" - } - }, - "es-abstract": { - "version": "1.17.4", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.17.4.tgz", - "integrity": "sha512-Ae3um/gb8F0mui/jPL+QiqmglkUsaQf7FwBEHYIFkztkneosu9imhqHpBzQ3h1vit8t5iQ74t6PEVvphBZiuiQ==", - "requires": { - "es-to-primitive": "^1.2.1", - "function-bind": "^1.1.1", - "has": "^1.0.3", - "has-symbols": "^1.0.1", - "is-callable": "^1.1.5", - "is-regex": "^1.0.5", - "object-inspect": "^1.7.0", - "object-keys": "^1.1.1", - "object.assign": "^4.1.0", - "string.prototype.trimleft": "^2.1.1", - "string.prototype.trimright": "^2.1.1" - } - }, - "es-get-iterator": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/es-get-iterator/-/es-get-iterator-1.1.0.tgz", - "integrity": "sha512-UfrmHuWQlNMTs35e1ypnvikg6jCz3SK8v8ImvmDsh36fCVUR1MqoFDiyn0/k52C8NqO3YsO8Oe0azeesNuqSsQ==", - "requires": { - "es-abstract": "^1.17.4", - "has-symbols": "^1.0.1", - "is-arguments": "^1.0.4", - "is-map": "^2.0.1", - "is-set": "^2.0.1", - "is-string": "^1.0.5", - "isarray": "^2.0.5" - }, - "dependencies": { - "isarray": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", - "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==" - } - } - }, - "es-to-primitive": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", - "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", - "requires": { - "is-callable": "^1.1.4", - "is-date-object": "^1.0.1", - "is-symbol": "^1.0.2" - } - }, - "es6-error": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/es6-error/-/es6-error-4.1.1.tgz", - "integrity": "sha512-Um/+FxMr9CISWh0bi5Zv0iOD+4cFh5qLeks1qhAopKVAJw3drgKbKySikp7wGhDL0HPeaja0P5ULZrxLkniUVg==" - }, - "es6-object-assign": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/es6-object-assign/-/es6-object-assign-1.1.0.tgz", - "integrity": "sha1-wsNYJlYkfDnqEHyx5mUrb58kUjw=" - }, - "es6-promise": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-3.2.1.tgz", - "integrity": "sha1-7FYjOGgDKQkgcXDDlEjiREndH8Q=", - "dev": true - }, - "escape-html": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", - "integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg=", - "dev": true - }, - "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": "6.8.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-6.8.0.tgz", - "integrity": "sha512-K+Iayyo2LtyYhDSYwz5D5QdWw0hCacNzyq1Y821Xna2xSJj7cijoLLYmLxTQgcgZ9mC61nryMy9S7GRbYpI5Ig==", - "requires": { - "@babel/code-frame": "^7.0.0", - "ajv": "^6.10.0", - "chalk": "^2.1.0", - "cross-spawn": "^6.0.5", - "debug": "^4.0.1", - "doctrine": "^3.0.0", - "eslint-scope": "^5.0.0", - "eslint-utils": "^1.4.3", - "eslint-visitor-keys": "^1.1.0", - "espree": "^6.1.2", - "esquery": "^1.0.1", - "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.3.0", - "lodash": "^4.17.14", - "minimatch": "^3.0.4", - "mkdirp": "^0.5.1", - "natural-compare": "^1.4.0", - "optionator": "^0.8.3", - "progress": "^2.0.0", - "regexpp": "^2.0.1", - "semver": "^6.1.2", - "strip-ansi": "^5.2.0", - "strip-json-comments": "^3.0.1", - "table": "^5.2.3", - "text-table": "^0.2.0", - "v8-compile-cache": "^2.0.3" - }, - "dependencies": { - "ansi-escapes": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.1.tgz", - "integrity": "sha512-JWF7ocqNrp8u9oqpgV+wH5ftbt+cfvv+PTjOvKLT3AdYly/LmORARfEVT1iyjwN+4MqE5UmVKoAdIBqeoCHgLA==", - "requires": { - "type-fest": "^0.11.0" - }, - "dependencies": { - "type-fest": { - "version": "0.11.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.11.0.tgz", - "integrity": "sha512-OdjXJxnCN1AvyLSzeKIgXTXxV+99ZuXl3Hpo9XpJAv9MBcHrrJOQ5kV7ypXOuQie+AmWG25hLbiKdwYTifzcfQ==" - } - } - }, - "ansi-regex": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", - "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==" - }, - "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==", - "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==", - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - } - }, - "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-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==" - }, - "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==" - }, - "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==" - }, - "cross-spawn": { - "version": "6.0.5", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", - "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", - "requires": { - "nice-try": "^1.0.4", - "path-key": "^2.0.1", - "semver": "^5.5.0", - "shebang-command": "^1.2.0", - "which": "^1.2.9" - }, - "dependencies": { - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==" - } - } - }, - "debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", - "requires": { - "ms": "^2.1.1" - } - }, - "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==" - }, - "esprima": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", - "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==" - }, - "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" - } - }, - "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" - } - }, - "glob-parent": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.0.tgz", - "integrity": "sha512-qjtRgnIVmOfnKUE3NJAQEdk+lKrxfw8t5ke7SXtfMTHcjsBfOfWXCQfdb30zfDoZQ2IRSIiidmjtbHZPZ++Ihw==", - "requires": { - "is-glob": "^4.0.1" - } - }, - "globals": { - "version": "12.3.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-12.3.0.tgz", - "integrity": "sha512-wAfjdLgFsPZsklLJvOBUBmzYE8/CwhEqSBEMRXA3qxIiNtyqvjYurAtIfDh6chlEPUfmTY3MnZh5Hfh4q0UlIw==", - "requires": { - "type-fest": "^0.8.1" - } - }, - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=" - }, - "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" - } - }, - "inquirer": { - "version": "7.0.6", - "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-7.0.6.tgz", - "integrity": "sha512-7SVO4h+QIdMq6XcqIqrNte3gS5MzCCKZdsq9DO4PJziBFNYzP3PGFbDjgadDb//MCahzgjCxvQ/O2wa7kx9o4w==", - "requires": { - "ansi-escapes": "^4.2.1", - "chalk": "^3.0.0", - "cli-cursor": "^3.1.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" - }, - "dependencies": { - "ansi-styles": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", - "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", - "requires": { - "@types/color-name": "^1.1.1", - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", - "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.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==", - "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==" - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==" - }, - "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" - } - }, - "supports-color": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", - "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", - "requires": { - "has-flag": "^4.0.0" - } - } - } - }, - "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==" - }, - "js-yaml": { - "version": "3.13.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.13.1.tgz", - "integrity": "sha512-YfbcO7jXDdyj0DGxYVSlSeQNHbD7XPWvrVWeVUujrQEoZzWJIRrCPoyk6kL6IAjAG2IolMK4T0hNUe0HOUs5Jw==", - "requires": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" - } - }, - "minimist": { - "version": "1.2.6", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.6.tgz", - "integrity": "sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==" - }, - "mkdirp": { - "version": "0.5.6", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", - "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", - "requires": { - "minimist": "^1.2.6" - } - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" - }, - "mute-stream": { - "version": "0.0.8", - "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz", - "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==" - }, - "onetime": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.0.tgz", - "integrity": "sha512-5NcSkPHhwTVFIQN+TUqXoS5+dlElHXdpAWu9I0HP20YOtIi+aZ0Ct82jdlILDxjLEAWwvm+qj1m6aEtsDVmm6Q==", - "requires": { - "mimic-fn": "^2.1.0" - } - }, - "path-key": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", - "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=" - }, - "regexpp": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-2.0.1.tgz", - "integrity": "sha512-lv0M6+TkDVniA3aD1Eg0DVpfU/booSu7Eev3TDO/mZKHBfVjgCGTV4t4buppESEYDtkArYFOxTJWv6S5C+iaNw==" - }, - "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" - } - }, - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==" - }, - "shebang-command": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", - "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=", - "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=" - }, - "string-width": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.0.tgz", - "integrity": "sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg==", - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.0" - }, - "dependencies": { - "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" - } - } - } - }, - "strip-ansi": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", - "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", - "requires": { - "ansi-regex": "^4.1.0" - }, - "dependencies": { - "ansi-regex": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", - "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==" - } - } - }, - "strip-json-comments": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.0.1.tgz", - "integrity": "sha512-VTyMAUfdm047mwKl+u79WIdrZxtFtn+nBxHeb844XBQ9uMNTuTHdx2hc5RiAJYqwTj3wc/xe5HLSdJSkJ+WfZw==" - }, - "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "requires": { - "has-flag": "^3.0.0" - } - }, - "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" - } - }, - "type-fest": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", - "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==" - } - } - }, - "eslint-config-prettier": { - "version": "6.10.0", - "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-6.10.0.tgz", - "integrity": "sha512-AtndijGte1rPILInUdHjvKEGbIV06NuvPrqlIEaEaWtbtvJh464mDeyGMdZEQMsGvC0ZVkiex1fSNcC4HAbRGg==", - "requires": { - "get-stdin": "^6.0.0" - } - }, - "eslint-plugin-prettier": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/eslint-plugin-prettier/-/eslint-plugin-prettier-3.1.2.tgz", - "integrity": "sha512-GlolCC9y3XZfv3RQfwGew7NnuFDKsfI4lbvRK+PIIo23SFH+LemGs4cKwzAaRa+Mdb+lQO/STaIayno8T5sJJA==", - "requires": { - "prettier-linter-helpers": "^1.0.0" - } - }, - "eslint-scope": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.0.0.tgz", - "integrity": "sha512-oYrhJW7S0bxAFDvWqzvMPRm6pcgcnWc4QnofCAqRTRfQC0JcwenzGglTtsLyIuuWFfkqDG9vz67cnttSd53djw==", - "requires": { - "esrecurse": "^4.1.0", - "estraverse": "^4.1.1" - } - }, - "eslint-utils": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-1.4.3.tgz", - "integrity": "sha512-fbBN5W2xdY45KulGXmLHZ3c3FHfVYmKg0IrAKGOkT/464PQsx2UeIzfz1RmEci+KLm1bBaAzZAh8+/E+XAeZ8Q==", - "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==" - }, - "espree": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/espree/-/espree-6.2.0.tgz", - "integrity": "sha512-Xs8airJ7RQolnDIbLtRutmfvSsAe0xqMMAantCN/GMoqf81TFbeI1T7Jpd56qYu1uuh32dOG5W/X9uO+ghPXzA==", - "requires": { - "acorn": "^7.1.0", - "acorn-jsx": "^5.2.0", - "eslint-visitor-keys": "^1.1.0" - }, - "dependencies": { - "acorn": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.1.1.tgz", - "integrity": "sha512-add7dgA5ppRPxCFJoAGfMDi7PIBXq1RtGo7BhbLaxwrXPOmw8gq48Y9ozT01hUKy9byMjlR20EJhu5zlkErEkg==" - } - } - }, - "esprima": { - "version": "2.7.3", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-2.7.3.tgz", - "integrity": "sha1-luO3DVd59q1JzQMmc9HDEnZ7pYE=", - "dev": true - }, - "esquery": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.1.0.tgz", - "integrity": "sha512-MxYW9xKmROWF672KqjO75sszsA8Mxhw06YFeS5VHlB98KDHbOSurm3ArsjO60Eaf3QmGMCP1yn+0JQkNLo/97Q==", - "dependencies": { - "estraverse": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz", - "integrity": "sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==" - } - } - }, - "esrecurse": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.2.1.tgz", - "integrity": "sha512-64RBB++fIOAXPw3P9cy89qfMlvZEXZkqqJkjqqXIvzP5ezRZjW+lPWjw35UX/3EhUPFYbg5ER4JYgDw4007/DQ==", - "dependencies": { - "estraverse": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz", - "integrity": "sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==" - } - } - }, - "estraverse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", - "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==" - }, - "esutils": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", - "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==" - }, - "etag": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", - "integrity": "sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc=", - "dev": true - }, - "event-stream": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/event-stream/-/event-stream-4.0.1.tgz", - "integrity": "sha512-qACXdu/9VHPBzcyhdOWR5/IahhGMf0roTeZJfzz077GwylcDd90yOHLouhmv7GJ5XzPi6ekaQWd8AvPP2nOvpA==", - "dev": true, - "requires": { - "duplexer": "^0.1.1", - "from": "^0.1.7", - "map-stream": "0.0.7", - "pause-stream": "^0.0.11", - "split": "^1.0.1", - "stream-combiner": "^0.2.2", - "through": "^2.3.8" - } - }, - "evp_bytestokey": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz", - "integrity": "sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==", - "dev": true, - "requires": { - "md5.js": "^1.3.4", - "safe-buffer": "^5.1.1" - } - }, - "exit-on-epipe": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/exit-on-epipe/-/exit-on-epipe-1.0.1.tgz", - "integrity": "sha512-h2z5mrROTxce56S+pnvAV890uu7ls7f1kEvVGJbw1OlFH3/mlJ5bkXu0KRyW94v37zzHPiUd55iLn3DA7TjWpw==", - "dev": true - }, - "expand-brackets": { - "version": "2.1.4", - "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-2.1.4.tgz", - "integrity": "sha1-t3c14xXOMPa27/D4OwQVGiJEliI=", - "requires": { - "debug": "^2.3.3", - "define-property": "^0.2.5", - "extend-shallow": "^2.0.1", - "posix-character-classes": "^0.1.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.1" - }, - "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" - } - }, - "define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "requires": { - "is-descriptor": "^0.1.0" - } - }, - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "requires": { - "is-extendable": "^0.1.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" - } - } - }, - "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==", - "dev": true, - "optional": true - }, - "express": { - "version": "4.17.1", - "resolved": "https://registry.npmjs.org/express/-/express-4.17.1.tgz", - "integrity": "sha512-mHJ9O79RqluphRrcw2X/GTh3k9tVv8YcoyY4Kkh4WDMUYKRZUq0h1o0w2rrrxBqM7VoeUVqgb27xlEMXTnYt4g==", - "dev": true, - "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": { - "body-parser": { - "version": "1.19.0", - "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.19.0.tgz", - "integrity": "sha512-dhEPs72UPbDnAQJ9ZKMNTP6ptJaionhP5cBb541nXPlW60Jepo9RV/a4fX4XWW9CuFNK22krhrj1+rgzifNCsw==", - "dev": true, - "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" - } - }, - "bytes": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.0.tgz", - "integrity": "sha512-zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg==", - "dev": true - }, - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "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==", - "dev": true, - "requires": { - "depd": "~1.1.2", - "inherits": "2.0.3", - "setprototypeof": "1.1.1", - "statuses": ">= 1.5.0 < 2", - "toidentifier": "1.0.0" - } - }, - "iconv-lite": { - "version": "0.4.24", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", - "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", - "dev": true, - "requires": { - "safer-buffer": ">= 2.1.2 < 3" - } - }, - "inherits": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=", - "dev": true - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true - }, - "qs": { - "version": "6.7.0", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.7.0.tgz", - "integrity": "sha512-VCdBRNFTX1fyE7Nb6FYoURo/SPe62QCaAyzJvUjwRaIsc+NePBEniHlvxFmmX56+HZphIGtV0XeCirBtpDrTyQ==", - "dev": true - }, - "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==", - "dev": true, - "requires": { - "bytes": "3.1.0", - "http-errors": "1.7.2", - "iconv-lite": "0.4.24", - "unpipe": "1.0.0" - } - }, - "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 - }, - "setprototypeof": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.1.tgz", - "integrity": "sha512-JvdAWfbXeIGaZ9cILp38HntZSFSo3mWg6xGcJJsd+d4aRMOqauag1C63dJfDw7OaMYwEbHMOxEZ1lqVRYP2OAw==", - "dev": true - } - } - }, - "express-session": { - "version": "1.17.2", - "resolved": "https://registry.npmjs.org/express-session/-/express-session-1.17.2.tgz", - "integrity": "sha512-mPcYcLA0lvh7D4Oqr5aNJFMtBMKPLl++OKKxkHzZ0U0oDq1rpKBnkR5f5vCHR26VeArlTOEF9td4x5IjICksRQ==", - "dev": true, - "requires": { - "cookie": "0.4.1", - "cookie-signature": "1.0.6", - "debug": "2.6.9", - "depd": "~2.0.0", - "on-headers": "~1.0.2", - "parseurl": "~1.3.3", - "safe-buffer": "5.2.1", - "uid-safe": "~2.1.5" - }, - "dependencies": { - "cookie": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.1.tgz", - "integrity": "sha512-ZwrFkGJxUR3EIoXtO+yVE69Eb7KlixbaeAWfBQB9vVsNn/o+Yw69gBWSSDK825hQNdN+wF8zELf3dFNl/kxkUA==", - "dev": true - }, - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "depd": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", - "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==", - "dev": true - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true - }, - "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==", - "dev": true - } - } - }, - "extend": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", - "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==" - }, - "extend-shallow": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", - "integrity": "sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=", - "requires": { - "assign-symbols": "^1.0.0", - "is-extendable": "^1.0.1" - }, - "dependencies": { - "is-extendable": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", - "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", - "requires": { - "is-plain-object": "^2.0.4" - } - } - } - }, - "external-editor": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz", - "integrity": "sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==", - "dev": true, - "optional": true, - "requires": { - "chardet": "^0.7.0", - "iconv-lite": "^0.4.24", - "tmp": "^0.0.33" - }, - "dependencies": { - "iconv-lite": { - "version": "0.4.24", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", - "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", - "dev": true, - "optional": true, - "requires": { - "safer-buffer": ">= 2.1.2 < 3" - } - } - } - }, - "extglob": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz", - "integrity": "sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==", - "requires": { - "array-unique": "^0.3.2", - "define-property": "^1.0.0", - "expand-brackets": "^2.1.4", - "extend-shallow": "^2.0.1", - "fragment-cache": "^0.2.1", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.1" - }, - "dependencies": { - "define-property": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", - "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", - "requires": { - "is-descriptor": "^1.0.0" - } - }, - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "requires": { - "is-extendable": "^0.1.0" - } - }, - "is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-data-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", - "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-descriptor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", - "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", - "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - } - }, - "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==" - } - } - }, - "extsprintf": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", - "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=", - "dev": true - }, - "eyes": { - "version": "0.1.8", - "resolved": "https://registry.npmjs.org/eyes/-/eyes-0.1.8.tgz", - "integrity": "sha1-Ys8SAjTGg3hdkCNIqADvPgzCC8A=", - "dev": true - }, - "fast-deep-equal": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.1.tgz", - "integrity": "sha512-8UEa58QDLauDNfpbrX55Q9jrGHThw2ZMdOky5Gl1CDtVeJDPVrG4Jxx1N8jw2gkWaff5UUuX1KJd+9zGe2B+ZA==" - }, - "fast-diff": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/fast-diff/-/fast-diff-1.2.0.tgz", - "integrity": "sha512-xJuoT5+L99XlZ8twedaRf6Ax2TgQVxvgZOYoPKqZufmJib0tL2tegPBOZb1pVNgIhlqDlA0eO0c3wBvQcmzx4w==" - }, - "fast-glob": { - "version": "2.2.7", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-2.2.7.tgz", - "integrity": "sha512-g1KuQwHOZAmOZMuBtHdxDtju+T2RT8jgCC9aANsbpdiDDTSnjgfuVsIBNKbUeJI3oKMRExcfNDtJl4OhbffMsw==", - "requires": { - "@mrmlnc/readdir-enhanced": "^2.2.1", - "@nodelib/fs.stat": "^1.1.2", - "glob-parent": "^3.1.0", - "is-glob": "^4.0.0", - "merge2": "^1.2.3", - "micromatch": "^3.1.10" - } - }, - "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=" - }, - "fast-safe-stringify": { - "version": "2.0.7", - "resolved": "https://registry.npmjs.org/fast-safe-stringify/-/fast-safe-stringify-2.0.7.tgz", - "integrity": "sha512-Utm6CdzT+6xsDk2m8S6uL8VHxNwI6Jub+e9NYTcAms28T84pTa25GJQV9j0CY0N1rM8hK4x6grpF2BQf+2qwVA==" - }, - "figures": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz", - "integrity": "sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==", - "dev": true, - "optional": true, - "requires": { - "escape-string-regexp": "^1.0.5" - } - }, - "file-entry-cache": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-5.0.1.tgz", - "integrity": "sha512-bCg29ictuBaKUwwArK4ouCaqDgLZcysCFLmM/Yn/FDoqndh/9vNuQfXRDvTuXKLxfD/JtZQGKFT8MGcJBK644g==", - "requires": { - "flat-cache": "^2.0.1" - } - }, - "file-type": { - "version": "16.5.0", - "resolved": "https://registry.npmjs.org/file-type/-/file-type-16.5.0.tgz", - "integrity": "sha512-OxgWA9tbL8N/WP00GD1z8O0MiwQKFyWRs1q+3FhjdvcGgKqwxcejyGWso3n4/IMU6DdwV+ARZ4A7TTnPkDcSiw==", - "dev": true, - "requires": { - "readable-web-to-node-stream": "^3.0.0", - "strtok3": "^6.0.3", - "token-types": "^2.0.0" - } - }, - "file-uri-to-path": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz", - "integrity": "sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==", - "dev": true, - "optional": true - }, - "fill-keys": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/fill-keys/-/fill-keys-1.0.2.tgz", - "integrity": "sha1-mo+jb06K1jTjv2tPPIiCVRRS6yA=", - "requires": { - "is-object": "~1.0.1", - "merge-descriptors": "~1.0.0" - } - }, - "fill-range": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", - "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", - "requires": { - "extend-shallow": "^2.0.1", - "is-number": "^3.0.0", - "repeat-string": "^1.6.1", - "to-regex-range": "^2.1.0" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "finalhandler": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.2.tgz", - "integrity": "sha512-aAWcW57uxVNrQZqFXjITpW3sIUQmHGG3qSb9mUah9MgMC4NeWhNOlNjXEYq3HjRAvL6arUviZGGJsBg6z0zsWA==", - "dev": true, - "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==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true - } - } - }, - "find-up": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", - "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", - "requires": { - "locate-path": "^2.0.0" - } - }, - "flat": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/flat/-/flat-4.1.0.tgz", - "integrity": "sha512-Px/TiLIznH7gEDlPXcUD4KnBusa6kR6ayRUVcnEAbreRIuhkqow/mun59BuRXwoYk7ZQOLW1ZM05ilIvK38hFw==", - "requires": { - "is-buffer": "~2.0.3" - }, - "dependencies": { - "is-buffer": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-2.0.4.tgz", - "integrity": "sha512-Kq1rokWXOPXWuaMAqZiJW4XxsmD9zGx9q4aePabbn3qCRGedtH7Cm+zV8WETitMfu1wdh+Rvd6w5egwSngUX2A==" - } - } - }, - "flat-cache": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-2.0.1.tgz", - "integrity": "sha512-LoQe6yDuUMDzQAEH8sgmh4Md6oZnc/7PjtwjNFSzveXqSHt6ka9fPBuso7IGf9Rz4uqnSnWiFH2B/zj24a5ReA==", - "requires": { - "flatted": "^2.0.0", - "rimraf": "2.6.3", - "write": "1.0.3" - }, - "dependencies": { - "rimraf": { - "version": "2.6.3", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.3.tgz", - "integrity": "sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==", - "requires": { - "glob": "^7.1.3" - } - } - } - }, - "flatted": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-2.0.1.tgz", - "integrity": "sha512-a1hQMktqW9Nmqr5aktAux3JMNqaucxGcjtjWnZLHX7yyPCmlSV3M54nGYbqT8K+0GhF3NBgmJCc3ma+WOgX8Jg==" - }, - "follow-redirects": { - "version": "1.5.10", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.5.10.tgz", - "integrity": "sha512-0V5l4Cizzvqt5D44aTXbFZz+FtyXV1vrDN6qrelxtfYQKW0KO0W2T/hkE8xvGa/540LkZlkaUjO4ailYTFtHVQ==", - "dev": true, - "requires": { - "debug": "=3.1.0" - }, - "dependencies": { - "debug": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", - "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - } - } - }, - "for-in": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", - "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=" - }, - "foreach": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/foreach/-/foreach-2.0.5.tgz", - "integrity": "sha1-C+4AUBiusmDQo6865ljdATbsG5k=" - }, - "foreachasync": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/foreachasync/-/foreachasync-3.0.0.tgz", - "integrity": "sha1-VQKYfchxS+M5IJfzLgBxyd7gfPY=", - "dev": true - }, - "foreground-child": { - "version": "1.5.6", - "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-1.5.6.tgz", - "integrity": "sha1-T9ca0t/elnibmApcCilZN8svXOk=", - "requires": { - "cross-spawn": "^4", - "signal-exit": "^3.0.0" - } - }, - "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.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" - } - }, - "format-util": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/format-util/-/format-util-1.0.5.tgz", - "integrity": "sha512-varLbTj0e0yVyRpqQhuWV+8hlePAgaoFRhNFj50BNjEIrw1/DphHSObtqwskVCPWNgzwPoQrZAbfa/SBiicNeg==", - "dev": true - }, - "formidable": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/formidable/-/formidable-1.2.2.tgz", - "integrity": "sha512-V8gLm+41I/8kguQ4/o1D3RIHRmhYFG4pnNyonvua+40rqcEmT4+V71yaZ3B457xbbgCsCfjSPi65u/W6vK1U5Q==" - }, - "forwarded": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz", - "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==", - "dev": true - }, - "fragment-cache": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/fragment-cache/-/fragment-cache-0.2.1.tgz", - "integrity": "sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk=", - "requires": { - "map-cache": "^0.2.2" - } - }, - "fresh": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", - "integrity": "sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac=", - "dev": true - }, - "from": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/from/-/from-0.1.7.tgz", - "integrity": "sha1-g8YK/Fi5xWmXAH7Rp2izqzA6RP4=", - "dev": true - }, - "from2": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/from2/-/from2-2.3.0.tgz", - "integrity": "sha1-i/tVAr3kpNNs/e6gB/zKIdfjgq8=", - "dev": true, - "requires": { - "inherits": "^2.0.1", - "readable-stream": "^2.0.0" - } - }, - "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==", - "dev": true - }, - "fs-extra": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-4.0.3.tgz", - "integrity": "sha512-q6rbdDd1o2mAnQreO7YADIxf/Whx4AHBiRf6d+/cVT8h44ss+lHgxf1FemcqDnQt9X3ct4McHr+JMGlYSsK7Cg==", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "jsonfile": "^4.0.0", - "universalify": "^0.1.0" - } - }, - "fs-minipass": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", - "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", - "dev": true, - "optional": true, - "requires": { - "minipass": "^3.0.0" - } - }, - "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.1.2", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.1.2.tgz", - "integrity": "sha512-R4wDiBwZ0KzpgOWetKDug1FZcYhqYnUYKtfZYt4mD5SBz76q0KR4Q9o7GIPamsVPGmW3EYPPJ0dOOjvx32ldZA==", - "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=" - }, - "gauge": { - "version": "2.7.4", - "resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz", - "integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=", - "dev": true, - "optional": true, - "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" - } - }, - "geojson": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/geojson/-/geojson-0.5.0.tgz", - "integrity": "sha1-PNbJY5m+ZbVu5VWWEW/pGRznAcA=", - "dev": true - }, - "geojson-rbush": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/geojson-rbush/-/geojson-rbush-3.2.0.tgz", - "integrity": "sha512-oVltQTXolxvsz1sZnutlSuLDEcQAKYC/uXt9zDzJJ6bu0W+baTI8LZBaTup5afzibEH4N3jlq2p+a152wlBJ7w==", - "dev": true, - "requires": { - "@turf/bbox": "*", - "@turf/helpers": "6.x", - "@turf/meta": "6.x", - "@types/geojson": "7946.0.8", - "rbush": "^3.0.1" - } - }, - "geojson-stream": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/geojson-stream/-/geojson-stream-0.1.0.tgz", - "integrity": "sha512-svSg5fFXPaTiqzEBGXScA+nISaeC9rLvku2PH+wM5LToATUw2bLIrvls43ymnT9Xnp51nBPVyK9m4Af40KpJ7w==", - "dev": true, - "requires": { - "JSONStream": "^1.0.0", - "through": "^2.3.4" - } - }, - "geojson-validation": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/geojson-validation/-/geojson-validation-1.0.2.tgz", - "integrity": "sha512-K5jrJ4wFvORn2pRKeg181LL0QPYuEKn2KHPvfH1m2QtFlAXFLKdseqt0XwBM3ELOY7kNM1fglRQ6ZwUQZ5S00A==", - "dev": true - }, - "geojson-vt": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/geojson-vt/-/geojson-vt-3.1.3.tgz", - "integrity": "sha512-oWaMsd08gUa1c4B4s2Z3LIX+oUIe8G/i5vp9JLjXlROuveMUpEwT49WDGHp5Gs4RVaJ0B51h1QTcj/dvtT+w9A==", - "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==" - }, - "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-stdin": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-6.0.0.tgz", - "integrity": "sha512-jp4tHawyV7+fkkSKyvjuLZswblUtz+SQKzSWnBbii16BuZksJlU1wuBYXY75r+duh/llF1ur6oNwi+2ZzjKZ7g==" - }, - "get-stream": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz", - "integrity": "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ=", - "dev": true - }, - "get-symbol-description": { - "version": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.0.tgz", - "integrity": "sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==", - "requires": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.1.1" - } - }, - "get-value": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz", - "integrity": "sha1-3BXKHGcjh8p2vTesCjlbogQqLCg=" - }, - "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=", - "dev": true, - "optional": true - }, - "glob": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.0.tgz", - "integrity": "sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==", - "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": "3.1.0", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz", - "integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=", - "requires": { - "is-glob": "^3.1.0", - "path-dirname": "^1.0.0" - }, - "dependencies": { - "is-glob": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", - "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", - "requires": { - "is-extglob": "^2.1.0" - } - } - } - }, - "glob-to-regexp": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.3.0.tgz", - "integrity": "sha1-jFoUlNIGbFcMw7/kSWF1rMTVAqs=" - }, - "globals": { - "version": "11.12.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", - "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", - "dependencies": { - "type-fest": { - "version": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", - "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==" - } - } - }, - "globby": { - "version": "9.2.0", - "resolved": "https://registry.npmjs.org/globby/-/globby-9.2.0.tgz", - "integrity": "sha512-ollPHROa5mcxDEkwg6bPt3QbEf4pDQSNtd6JPL1YvOvAo/7/0VAm9TccUeoTmarjPw4pfUthSCqcyfNB1I3ZSg==", - "requires": { - "@types/glob": "^7.1.1", - "array-union": "^1.0.2", - "dir-glob": "^2.2.2", - "fast-glob": "^2.2.6", - "glob": "^7.1.3", - "ignore": "^4.0.3", - "pify": "^4.0.1", - "slash": "^2.0.0" - }, - "dependencies": { - "pify": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", - "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==" - } - } - }, - "gm": { - "version": "1.23.1", - "resolved": "https://registry.npmjs.org/gm/-/gm-1.23.1.tgz", - "integrity": "sha1-Lt7rlYCE0PjqeYjl2ZWxx9/BR3c=", - "dev": true, - "requires": { - "array-parallel": "~0.1.3", - "array-series": "~0.1.5", - "cross-spawn": "^4.0.0", - "debug": "^3.1.0" - }, - "dependencies": { - "debug": { - "version": "3.2.6", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", - "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - }, - "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 - } - } - }, - "google-auth-library": { - "version": "0.11.0", - "resolved": "https://registry.npmjs.org/google-auth-library/-/google-auth-library-0.11.0.tgz", - "integrity": "sha512-vDHBtAjXHMR5T137Xu3ShPqUdABYGQFm6LZJJWtg0gKWfQCMIx1ebQygvr8gZrkHw/0cAjRJjr0sUPgDWfcg7w==", - "requires": { - "gtoken": "^1.2.1", - "jws": "^3.1.4", - "lodash.isstring": "^4.0.1", - "lodash.merge": "^4.6.0", - "request": "^2.81.0" - } - }, - "google-p12-pem": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/google-p12-pem/-/google-p12-pem-0.1.2.tgz", - "integrity": "sha1-M8RqsCGqc0+gMys5YKmj/8svMXc=", - "requires": { - "node-forge": "^0.7.1" - } - }, - "got": { - "version": "8.3.2", - "resolved": "https://registry.npmjs.org/got/-/got-8.3.2.tgz", - "integrity": "sha512-qjUJ5U/hawxosMryILofZCkm3C84PLJS/0grRIpjAwu+Lkxxj5cxeCU25BG0/3mDSpXKTyZr8oh8wIgLaH0QCw==", - "dev": true, - "requires": { - "@sindresorhus/is": "^0.7.0", - "cacheable-request": "^2.1.1", - "decompress-response": "^3.3.0", - "duplexer3": "^0.1.4", - "get-stream": "^3.0.0", - "into-stream": "^3.1.0", - "is-retry-allowed": "^1.1.0", - "isurl": "^1.0.0-alpha5", - "lowercase-keys": "^1.0.0", - "mimic-response": "^1.0.0", - "p-cancelable": "^0.4.0", - "p-timeout": "^2.0.1", - "pify": "^3.0.0", - "safe-buffer": "^5.1.1", - "timed-out": "^4.0.1", - "url-parse-lax": "^3.0.0", - "url-to-options": "^1.0.1" - }, - "dependencies": { - "decompress-response": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-3.3.0.tgz", - "integrity": "sha1-gKTdMjdIOEv6JICDYirt7Jgq3/M=", - "dev": true, - "requires": { - "mimic-response": "^1.0.0" - } - }, - "mimic-response": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz", - "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==", - "dev": true - } - } - }, - "graceful-fs": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.3.tgz", - "integrity": "sha512-a30VEBm4PEdx1dRB7MFK7BejejvCvBronbLjht+sHuGYj8PHs7M/5Z+rt5lw551vZ7yfTCj4Vuyy3mSJytDWRQ==" - }, - "growl": { - "version": "1.10.5", - "resolved": "https://registry.npmjs.org/growl/-/growl-1.10.5.tgz", - "integrity": "sha512-qBr4OuELkhPenW6goKVXiv47US3clb3/IbuWF9KNKEijAy9oeHxU9IgzjvJhHkUzhaj7rOUD7+YGWqUjLp5oSA==" - }, - "gtoken": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/gtoken/-/gtoken-1.2.3.tgz", - "integrity": "sha512-wQAJflfoqSgMWrSBk9Fg86q+sd6s7y6uJhIvvIPz++RElGlMtEqsdAR2oWwZ/WTEtp7P9xFbJRrT976oRgzJ/w==", - "requires": { - "google-p12-pem": "^0.1.0", - "jws": "^3.0.0", - "mime": "^1.4.1", - "request": "^2.72.0" - } - }, - "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.3", - "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.3.tgz", - "integrity": "sha512-sNvOCzEQNr/qrvJgc3UG/kD4QtlHycrzwS+6mfTrrSq97BvaYcPZZI1ZSqGSPR73Cxn4LKTD4PttRwfU7jWq5g==", - "requires": { - "ajv": "^6.5.5", - "har-schema": "^2.0.0" - } - }, - "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-bigints": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.1.tgz", - "integrity": "sha512-LSBS2LjbNBTf6287JEbEzvJgftkF5qFkmCo9hDRpAzKhUOlJ+hx8dd4USs00SgsUNwc4617J9ki5YtEClM2ffA==" - }, - "has-color": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/has-color/-/has-color-0.1.7.tgz", - "integrity": "sha1-ZxRKUmDDT8PMpnfQQdr1L+e3iy8=", - "dev": true - }, - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=" - }, - "has-symbol-support-x": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/has-symbol-support-x/-/has-symbol-support-x-1.4.2.tgz", - "integrity": "sha512-3ToOva++HaW+eCpgqZrCfN51IPB+7bJNVT6CUATzueB5Heb8o6Nam0V3HG5dlDvZU1Gn5QLcbahiKw/XVk5JJw==", - "dev": true - }, - "has-symbols": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.1.tgz", - "integrity": "sha512-PLcsoqu++dmEIZB+6totNFKq/7Do+Z0u4oT0zKOJNl3lYK6vGwwu2hjHs+68OEZbTjiUE9bgOABXbP/GvrS0Kg==" - }, - "has-to-string-tag-x": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/has-to-string-tag-x/-/has-to-string-tag-x-1.4.1.tgz", - "integrity": "sha512-vdbKfmw+3LoOYVr+mtxHaX5a96+0f3DljYd8JOqvOLsf5mw2Otda2qCDT9qRqLAhrjyQ0h7ual5nOiASpsGNFw==", - "dev": true, - "requires": { - "has-symbol-support-x": "^1.4.1" - } - }, - "has-tostringtag": { - "version": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz", - "integrity": "sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==" - }, - "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, - "optional": true - }, - "has-value": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-value/-/has-value-1.0.0.tgz", - "integrity": "sha1-GLKB2lhbHFxR3vJMkw7SmgvmsXc=", - "requires": { - "get-value": "^2.0.6", - "has-values": "^1.0.0", - "isobject": "^3.0.0" - } - }, - "has-values": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-values/-/has-values-1.0.0.tgz", - "integrity": "sha1-lbC2P+whRmGab+V/51Yo1aOe/k8=", - "requires": { - "is-number": "^3.0.0", - "kind-of": "^4.0.0" - }, - "dependencies": { - "kind-of": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz", - "integrity": "sha1-IIE989cSkosgc3hpGkUGb65y3Vc=", - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "hash-base": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.0.4.tgz", - "integrity": "sha1-X8hoaEfs1zSZQDMZprCj8/auSRg=", - "dev": true, - "requires": { - "inherits": "^2.0.1", - "safe-buffer": "^5.0.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" - } - }, - "string_decoder": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", - "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==" - } - } - }, - "hash.js": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.7.tgz", - "integrity": "sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==", - "dev": true, - "requires": { - "inherits": "^2.0.3", - "minimalistic-assert": "^1.0.1" - } - }, - "hasha": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/hasha/-/hasha-3.0.0.tgz", - "integrity": "sha1-UqMvq4Vp1BymmmH/GiFPjrfIvTk=", - "requires": { - "is-stream": "^1.0.1" - } - }, - "he": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz", - "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==" - }, - "hmac-drbg": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz", - "integrity": "sha1-0nRXAQJabHdabFRXk+1QL8DGSaE=", - "dev": true, - "requires": { - "hash.js": "^1.0.3", - "minimalistic-assert": "^1.0.0", - "minimalistic-crypto-utils": "^1.0.1" - } - }, - "hooks-fixed": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/hooks-fixed/-/hooks-fixed-2.0.2.tgz", - "integrity": "sha512-YurCM4gQSetcrhwEtpQHhQ4M7Zo7poNGqY4kQGeBS6eZtOcT3tnNs01ThFa0jYBByAiYt1MjMjP/YApG0EnAvQ==", - "dev": true - }, - "hosted-git-info": { - "version": "2.8.8", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.8.tgz", - "integrity": "sha512-f/wzC2QaWBs7t9IYqB4T3sR1xviIViXJRJTWBlx2Gf3g0Xi5vI7Yy4koXQ1c9OYDGHN9sBy1DQ2AB8fqZBWhUg==" - }, - "html-escaper": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.0.tgz", - "integrity": "sha512-a4u9BeERWGu/S8JiWEAQcdrg9v4QArtP9keViQjGMdff20fBdd8waotXaNmODqBe6uZ3Nafi7K/ho4gCQHV3Ig==" - }, - "http-cache-semantics": { - "version": "3.8.1", - "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-3.8.1.tgz", - "integrity": "sha512-5ai2iksyV8ZXmnZhHH4rWPoxxistEexSi5936zIQ1bnNTW5VnA85B6P/VpXiRM017IgRvb2kKo1a//y+0wSp3w==", - "dev": true - }, - "http-errors": { - "version": "1.6.3", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz", - "integrity": "sha1-i1VoC7S+KDoLW/TqLjhYC+HZMg0=", - "dev": true, - "requires": { - "depd": "~1.1.2", - "inherits": "2.0.3", - "setprototypeof": "1.1.0", - "statuses": ">= 1.4.0 < 2" - }, - "dependencies": { - "inherits": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=", - "dev": true - } - } - }, - "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" - } - }, - "iconv-lite": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.5.1.tgz", - "integrity": "sha512-ONHr16SQvKZNSqjQT9gy5z24Jw+uqfO02/ngBSBoqChZ+W8qXX7GPRa1RoUnzGADw8K63R1BXUMzarCVQBpY8Q==", - "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==", - "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==" - }, - "image-size": { - "version": "0.8.3", - "resolved": "https://registry.npmjs.org/image-size/-/image-size-0.8.3.tgz", - "integrity": "sha512-SMtq1AJ+aqHB45c3FsB4ERK0UCiA2d3H1uq8s+8T0Pf8A3W4teyBQyaFaktH6xvZqh+npwlKU7i4fJo0r7TYTg==", - "dev": true, - "requires": { - "queue": "6.0.1" - } - }, - "immediate": { - "version": "3.0.6", - "resolved": "https://registry.npmjs.org/immediate/-/immediate-3.0.6.tgz", - "integrity": "sha1-nbHb0Pr43m++D13V5Wu2BigN5ps=" - }, - "import-fresh": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.2.1.tgz", - "integrity": "sha512-6e1q1cnWP2RXD9/keSkxHScg508CdXqXWgWBaETNhyuBFz+kUZlKboh+ISK+bU++DmbHimVBrOz/zzPe0sZ3sQ==", - "requires": { - "parent-module": "^1.0.0", - "resolve-from": "^4.0.0" - }, - "dependencies": { - "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==" - } - } - }, - "imurmurhash": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", - "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=" - }, - "indent-string": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-3.2.0.tgz", - "integrity": "sha1-Sl/W0nzDMvN+VBmlBNu4NxBckok=" - }, - "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" - } - }, - "inherit": { - "version": "2.2.7", - "resolved": "https://registry.npmjs.org/inherit/-/inherit-2.2.7.tgz", - "integrity": "sha512-dxJmC1j0Q32NFAjvbd6g3lXYLZ49HgzotgbSMwMkoiTXGhC9412Oc24g7A7M9cPPkw/vDsF2cSII+2zJwocUtQ==", - "dev": true - }, - "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==", - "dev": true, - "optional": true - }, - "inquirer": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-8.0.0.tgz", - "integrity": "sha512-ON8pEJPPCdyjxj+cxsYRe6XfCJepTxANdNnTebsTuQgXpRyZRRT9t4dJwjRubgmvn20CLSEnozRUayXyM9VTXA==", - "dev": true, - "optional": true, - "requires": { - "ansi-escapes": "^4.2.1", - "chalk": "^4.1.0", - "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", - "run-async": "^2.4.0", - "rxjs": "^6.6.6", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0", - "through": "^2.3.6" - }, - "dependencies": { - "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, - "optional": true - }, - "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, - "optional": 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, - "optional": true - }, - "rxjs": { - "version": "6.6.7", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", - "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", - "dev": true, - "optional": true, - "requires": { - "tslib": "^1.9.0" - } - }, - "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, - "optional": true, - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - } - }, - "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, - "optional": true, - "requires": { - "ansi-regex": "^5.0.1" - } - } - } - }, - "internal-slot": { - "version": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.3.tgz", - "integrity": "sha512-O0DB1JC/sPyZl7cIo78n5dR7eUSwwpYPiXRhTzNxZVAMUuB8vlnRFyLxdrVToks6XPLVnFfbzaVd5WLjhgg+vA==", - "requires": { - "get-intrinsic": "^1.1.0", - "has": "^1.0.3" - } - }, - "into-stream": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/into-stream/-/into-stream-3.1.0.tgz", - "integrity": "sha1-lvsKk2wSur1v8XUqF9BWFqvQlMY=", - "dev": true, - "requires": { - "from2": "^2.1.1", - "p-is-promise": "^1.1.0" - } - }, - "ip": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/ip/-/ip-1.1.5.tgz", - "integrity": "sha1-vd7XARQpCCjAoDnnLvJfWq7ENUo=" - }, - "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==", - "dev": true - }, - "is-accessor-descriptor": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", - "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", - "requires": { - "kind-of": "^3.0.2" - } - }, - "is-arguments": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-arguments/-/is-arguments-1.0.4.tgz", - "integrity": "sha512-xPh0Rmt8NE65sNzvyUmWgI1tz3mKq74lGA0mL8LYZcoIzKOzDh6HmrYm3d18k60nHerC8A9Km8kYu87zfSFnLA==" - }, - "is-arrayish": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", - "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=" - }, - "is-bigint": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.0.tgz", - "integrity": "sha512-t5mGUXC/xRheCK431ylNiSkGGpBp8bHENBcENTkDT6ppwPzEVxNGZRvgvmOEfbWkFhA7D2GEuE2mmQTr78sl2g==" - }, - "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==", - "requires": { - "binary-extensions": "^2.0.0" - } - }, - "is-boolean-object": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.0.1.tgz", - "integrity": "sha512-TqZuVwa/sppcrhUCAYkGBk7w0yxfQQnxq28fjkO53tnK9FQXmdwz2JS5+GjsWQ6RByES1K40nI+yDic5c9/aAQ==" - }, - "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-callable": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.1.5.tgz", - "integrity": "sha512-ESKv5sMCJB2jnHTWZ3O5itG+O128Hsus4K4Qh1h2/cgn2vbgnLSVqfV46AeJA9D5EeeLa9w81KUXMtn34zhX+Q==" - }, - "is-core-module": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.4.0.tgz", - "integrity": "sha512-6A2fkfq1rfeQZjxrZJGerpLCTHRNEBiSgnu0+obeJpEPZRUooHgsizvzv0ZjJwOz3iWIHdJtVWJ/tmPr3D21/A==", - "requires": { - "has": "^1.0.3" - } - }, - "is-data-descriptor": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", - "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", - "requires": { - "kind-of": "^3.0.2" - } - }, - "is-date-object": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.2.tgz", - "integrity": "sha512-USlDT524woQ08aoZFzh3/Z6ch9Y/EWXEHQ/AaRN0SkKq4t2Jw2R2339tSXmwuVoY7LLlBCbOIlx2myP/L5zk0g==" - }, - "is-descriptor": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", - "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", - "requires": { - "is-accessor-descriptor": "^0.1.6", - "is-data-descriptor": "^0.1.4", - "kind-of": "^5.0.0" - }, - "dependencies": { - "kind-of": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", - "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==" - } - } - }, - "is-expression": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-expression/-/is-expression-3.0.0.tgz", - "integrity": "sha1-Oayqa+f9HzRx3ELHQW5hwkMXrJ8=", - "dev": true, - "requires": { - "acorn": "~4.0.2", - "object-assign": "^4.0.1" - }, - "dependencies": { - "acorn": { - "version": "4.0.13", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-4.0.13.tgz", - "integrity": "sha1-EFSVrlNh1pe9GVyCUZLhrX8lN4c=", - "dev": true - } - } - }, - "is-extendable": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", - "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=" - }, - "is-extglob": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", - "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=" - }, - "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=", - "dev": true, - "optional": true, - "requires": { - "number-is-nan": "^1.0.0" - } - }, - "is-generator-function": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/is-generator-function/-/is-generator-function-1.0.7.tgz", - "integrity": "sha512-YZc5EwyO4f2kWCax7oegfuSr9mFz1ZvieNYBEjmukLxgXfBUbxAWGVF7GZf0zidYtoBl3WvC07YK0wT76a+Rtw==" - }, - "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==", - "requires": { - "is-extglob": "^2.1.1" - } - }, - "is-map": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-map/-/is-map-2.0.1.tgz", - "integrity": "sha512-T/S49scO8plUiAOA2DBTBG3JHpn1yiw0kRp6dgiZ0v2/6twi5eiB0rHtHFH9ZIrvlWc6+4O+m4zg5+Z833aXgw==" - }, - "is-nan": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/is-nan/-/is-nan-1.3.0.tgz", - "integrity": "sha512-z7bbREymOqt2CCaZVly8aC4ML3Xhfi0ekuOnjO2L8vKdl+CttdVoGZQhd4adMFAsxQ5VeRVwORs4tU8RH+HFtQ==", - "requires": { - "define-properties": "^1.1.3" - } - }, - "is-negative-zero": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.1.tgz", - "integrity": "sha512-2z6JzQvZRa9A2Y7xC6dQQm4FSTSTNWjKIYYTt4246eMTJmIo0Q+ZyOsU66X8lxK1AbB92dFeglPLrhwpeRKO6w==" - }, - "is-number": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", - "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", - "requires": { - "kind-of": "^3.0.2" - } - }, - "is-number-object": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.4.tgz", - "integrity": "sha512-zohwelOAur+5uXtk8O3GPQ1eAcu4ZX3UwxQhUlfFFMNpUd83gXgjbhJh6HmB6LUNV/ieOLQuDwJO3dWJosUeMw==" - }, - "is-object": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-object/-/is-object-1.0.1.tgz", - "integrity": "sha1-iVJojF7C/9awPsyF52ngKQMINHA=" - }, - "is-plain-obj": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz", - "integrity": "sha1-caUMhCnfync8kqOQpKA7OfzVHT4=" - }, - "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==", - "requires": { - "isobject": "^3.0.1" - } - }, - "is-promise": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-2.1.0.tgz", - "integrity": "sha1-eaKp7OfwlugPNtKy87wWwf9L8/o=", - "dev": true - }, - "is-regex": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.0.5.tgz", - "integrity": "sha512-vlKW17SNq44owv5AQR3Cq0bQPEb8+kF3UKZ2fiZNOWtztYE5i0CzCZxFDwO58qAOWtxdBRVO/V5Qin1wjCqFYQ==", - "requires": { - "has": "^1.0.3" - } - }, - "is-retry-allowed": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/is-retry-allowed/-/is-retry-allowed-1.2.0.tgz", - "integrity": "sha512-RUbUeKwvm3XG2VYamhJL1xFktgjvPzL0Hq8C+6yrWIswDy3BIXGqCxhxkc30N9jqK311gVU137K8Ei55/zVJRg==", - "dev": true - }, - "is-set": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-set/-/is-set-2.0.1.tgz", - "integrity": "sha512-eJEzOtVyenDs1TMzSQ3kU3K+E0GUS9sno+F0OBT97xsgcJsF9nXMBtkT9/kut5JEpM7oL7X/0qxR17K3mcwIAA==" - }, - "is-shared-array-buffer": { - "version": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz", - "integrity": "sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==", - "requires": { - "call-bind": "^1.0.2" - } - }, - "is-stream": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", - "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=" - }, - "is-string": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.5.tgz", - "integrity": "sha512-buY6VNRjhQMiF1qWDouloZlQbRhDPCebwxSjxMjxgemYT46YMd2NR0/H+fBhEfWX4A/w9TBJ+ol+okqJKFE6vQ==" - }, - "is-symbol": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.3.tgz", - "integrity": "sha512-OwijhaRSgqvhm/0ZdAcXNZt9lYdKFpcRDT5ULUuYXPoT794UNOdU+gpT6Rzo7b4V2HUl/op6GqY894AZwv9faQ==", - "requires": { - "has-symbols": "^1.0.1" - } - }, - "is-typed-array": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.3.tgz", - "integrity": "sha512-BSYUBOK/HJibQ30wWkWold5txYwMUXQct9YHAQJr8fSwvZoiglcqB0pd7vEN23+Tsi9IUEjztdOSzl4qLVYGTQ==", - "requires": { - "available-typed-arrays": "^1.0.0", - "es-abstract": "^1.17.4", - "foreach": "^2.0.5", - "has-symbols": "^1.0.1" - } - }, - "is-typedarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", - "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=" - }, - "is-weakmap": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-weakmap/-/is-weakmap-2.0.1.tgz", - "integrity": "sha512-NSBR4kH5oVj1Uwvv970ruUkCV7O1mzgVFO4/rev2cLRda9Tm9HrL70ZPut4rOHgY0FNrUu9BCbXA2sdQ+x0chA==" - }, - "is-weakref": { - "version": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.2.tgz", - "integrity": "sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==", - "requires": { - "call-bind": "^1.0.2" - } - }, - "is-weakset": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-weakset/-/is-weakset-2.0.1.tgz", - "integrity": "sha512-pi4vhbhVHGLxohUw7PhGsueT4vRGFoXhP7+RGN0jKIv9+8PWYCQTqtADngrxOm2g46hoH0+g8uZZBzMrvVGDmw==" - }, - "is-windows": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz", - "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==" - }, - "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=" - }, - "isobject": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=" - }, - "isstream": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", - "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=" - }, - "istanbul-lib-coverage": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.5.tgz", - "integrity": "sha512-8aXznuEPCJvGnMSRft4udDRDtb1V3pkQkMMI5LI+6HuQz5oQ4J2UFn1H82raA3qJtyOLkkwVqICBQkjnGtn5mA==" - }, - "istanbul-lib-hook": { - "version": "2.0.7", - "resolved": "https://registry.npmjs.org/istanbul-lib-hook/-/istanbul-lib-hook-2.0.7.tgz", - "integrity": "sha512-vrRztU9VRRFDyC+aklfLoeXyNdTfga2EI3udDGn4cZ6fpSXpHLV9X6CHvfoMCPtggg8zvDDmC4b9xfu0z6/llA==", - "requires": { - "append-transform": "^1.0.0" - } - }, - "istanbul-lib-instrument": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-3.3.0.tgz", - "integrity": "sha512-5nnIN4vo5xQZHdXno/YDXJ0G+I3dAm4XgzfSVTPLQpj/zAV2dV6Juy0yaf10/zrJOJeHoN3fraFe+XRq2bFVZA==", - "requires": { - "@babel/generator": "^7.4.0", - "@babel/parser": "^7.4.3", - "@babel/template": "^7.4.0", - "@babel/traverse": "^7.4.3", - "@babel/types": "^7.4.0", - "istanbul-lib-coverage": "^2.0.5", - "semver": "^6.0.0" - }, - "dependencies": { - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==" - } - } - }, - "istanbul-lib-report": { - "version": "2.0.8", - "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-2.0.8.tgz", - "integrity": "sha512-fHBeG573EIihhAblwgxrSenp0Dby6tJMFR/HvlerBsrCTD5bkUuoNtn3gVh29ZCS824cGGBPn7Sg7cNk+2xUsQ==", - "requires": { - "istanbul-lib-coverage": "^2.0.5", - "make-dir": "^2.1.0", - "supports-color": "^6.1.0" - }, - "dependencies": { - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=" - }, - "supports-color": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", - "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "istanbul-lib-source-maps": { - "version": "3.0.6", - "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-3.0.6.tgz", - "integrity": "sha512-R47KzMtDJH6X4/YW9XTx+jrLnZnscW4VpNN+1PViSYTejLVPWv7oov+Duf8YQSPyVRUvueQqz1TcsC6mooZTXw==", - "requires": { - "debug": "^4.1.1", - "istanbul-lib-coverage": "^2.0.5", - "make-dir": "^2.1.0", - "rimraf": "^2.6.3", - "source-map": "^0.6.1" - }, - "dependencies": { - "debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", - "requires": { - "ms": "^2.1.1" - } - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" - }, - "rimraf": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", - "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", - "requires": { - "glob": "^7.1.3" - } - } - } - }, - "istanbul-reports": { - "version": "2.2.7", - "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-2.2.7.tgz", - "integrity": "sha512-uu1F/L1o5Y6LzPVSVZXNOoD/KXpJue9aeLRd0sM9uMXfZvzomB0WxVamWb5ue8kA2vVWEmW7EG+A5n3f1kqHKg==", - "requires": { - "html-escaper": "^2.0.0" - } - }, - "isurl": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isurl/-/isurl-1.0.0.tgz", - "integrity": "sha512-1P/yWsxPlDtn7QeRD+ULKQPaIaN6yF368GZ2vDfv0AL0NwpStafjWCDDdn0k8wgFMWpVAqG7oJhxHnlud42i9w==", - "dev": true, - "requires": { - "has-to-string-tag-x": "^1.2.0", - "is-object": "^1.0.1" - } - }, - "jdataview": { - "version": "2.4.6", - "resolved": "https://registry.npmjs.org/jdataview/-/jdataview-2.4.6.tgz", - "integrity": "sha1-Qapcdfl5TxFgWIPSm9qvCZizVSs=", - "dev": true - }, - "jose": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/jose/-/jose-0.3.2.tgz", - "integrity": "sha1-aWmN/LbnKMhDmEt+naRZSn+NssM=", - "dev": true, - "requires": { - "asn1.js": "^2.2.0", - "bn.js": "^3.1.2" - } - }, - "js-stringify": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/js-stringify/-/js-stringify-1.0.2.tgz", - "integrity": "sha1-Fzb939lyTyijaCrcYjCufk6Weds=", - "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==" - }, - "js-yaml": { - "version": "3.4.6", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.4.6.tgz", - "integrity": "sha1-a+GyP2JJ9T0pM3D9TRqqY84bTrA=", - "dev": true, - "requires": { - "argparse": "^1.0.2", - "esprima": "^2.6.0", - "inherit": "^2.2.2" - } - }, - "jsbn": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", - "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=" - }, - "jsesc": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", - "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==" - }, - "json-buffer": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.0.tgz", - "integrity": "sha1-Wx85evx11ne96Lz8Dkfh+aPZqJg=", - "dev": true - }, - "json-parse-better-errors": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz", - "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==" - }, - "json-schema": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz", - "integrity": "sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM=" - }, - "json-schema-ref-parser": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/json-schema-ref-parser/-/json-schema-ref-parser-6.1.0.tgz", - "integrity": "sha512-pXe9H1m6IgIpXmE5JSb8epilNTGsmTb2iPohAXpOdhqGFbQjNeHHsZxU+C8w6T81GZxSPFLeUoqDJmzxx5IGuw==", - "dev": true, - "requires": { - "call-me-maybe": "^1.0.1", - "js-yaml": "^3.12.1", - "ono": "^4.0.11" - }, - "dependencies": { - "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 - }, - "js-yaml": { - "version": "3.13.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.13.1.tgz", - "integrity": "sha512-YfbcO7jXDdyj0DGxYVSlSeQNHbD7XPWvrVWeVUujrQEoZzWJIRrCPoyk6kL6IAjAG2IolMK4T0hNUe0HOUs5Jw==", - "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==" - }, - "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=" - }, - "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=" - }, - "json2csv": { - "version": "4.5.1", - "resolved": "https://registry.npmjs.org/json2csv/-/json2csv-4.5.1.tgz", - "integrity": "sha512-o90Xa1ziGk3i7AJEO79Jac4+7SEUk58/DxS5mDPW6GF7poX0y7Y0pm1FbWrkz9VzKE4MpUW9aKBOCpJ0U1Ua8A==", - "dev": true, - "requires": { - "commander": "^2.15.1", - "jsonparse": "^1.3.1", - "lodash.get": "^4.4.2" - }, - "dependencies": { - "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==", - "dev": true - } - } - }, - "jsonfile": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", - "integrity": "sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss=", - "dev": true, - "requires": { - "graceful-fs": "^4.1.6" - } - }, - "jsonparse": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/jsonparse/-/jsonparse-1.3.1.tgz", - "integrity": "sha1-P02uSpH6wxX3EGL4UhzCOfE2YoA=", - "dev": true - }, - "jsonwebtoken": { - "version": "8.5.1", - "resolved": "https://registry.npmjs.org/jsonwebtoken/-/jsonwebtoken-8.5.1.tgz", - "integrity": "sha512-XjwVfRS6jTMsqYs0EsuJ4LGxXV14zQybNd4L2r0UvbVnSF9Af8x7p5MzbJ90Ioz/9TI41/hTCvznF/loiSzn8w==", - "dev": true, - "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" - }, - "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 - } - } - }, - "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" - }, - "dependencies": { - "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=" - }, - "extsprintf": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", - "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=" - }, - "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" - } - } - } - }, - "jstransformer": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/jstransformer/-/jstransformer-1.0.0.tgz", - "integrity": "sha1-7Yvwkh4vPx7U1cGkT2hwntJHIsM=", - "dev": true, - "requires": { - "is-promise": "^2.0.0", - "promise": "^7.0.1" - } - }, - "jszip": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/jszip/-/jszip-2.5.0.tgz", - "integrity": "sha1-dET9hVHd8+XacZj+oMkbyDCMwnQ=", - "requires": { - "pako": "~0.2.5" - }, - "dependencies": { - "pako": { - "version": "0.2.9", - "resolved": "https://registry.npmjs.org/pako/-/pako-0.2.9.tgz", - "integrity": "sha1-8/dSL073gjSNqBYbrZ7P1Rv4OnU=" - }, - "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==" - }, - "readable-stream": { - "version": "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" - } - }, - "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==" - }, - "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" - } - } - } - }, - "just-extend": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/just-extend/-/just-extend-4.1.0.tgz", - "integrity": "sha512-ApcjaOdVTJ7y4r08xI5wIqpvwS48Q0PBG4DJROcEkH1f8MdAiNFyFxz3xoL0LWAVwjrwPYZdVHHxhRHcx/uGLA==" - }, - "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" - } - }, - "kareem": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/kareem/-/kareem-1.5.0.tgz", - "integrity": "sha1-4+QQHZ3P3imXadr0tNtk2JXRdEg=", - "dev": true - }, - "keygrip": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/keygrip/-/keygrip-1.0.3.tgz", - "integrity": "sha512-/PpesirAIfaklxUzp4Yb7xBper9MwP6hNRA6BGGUFCgbJ+BM5CKBtsoxinNXkLHAr+GXS1/lSlF2rP7cv5Fl+g==" - }, - "keyv": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/keyv/-/keyv-3.0.0.tgz", - "integrity": "sha512-eguHnq22OE3uVoSYG0LVWNP+4ppamWr9+zWBe1bsNcovIMy6huUJFPgy4mGwCd/rnl3vOLGW1MTlu4c57CT1xA==", - "dev": true, - "requires": { - "json-buffer": "3.0.0" - } - }, - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "requires": { - "is-buffer": "^1.1.5" - } - }, - "lazy-cache": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/lazy-cache/-/lazy-cache-1.0.4.tgz", - "integrity": "sha1-odePw6UEdMuAhF07O24dpJpEbo4=", - "dev": true - }, - "lazystream": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/lazystream/-/lazystream-1.0.1.tgz", - "integrity": "sha512-b94GiNHQNy6JNTrt5w6zNyffMrNkXZb3KTkCZJb2V1xaEGCk093vkZ2jk3tpaeP33/OiXC+WvK9AxUebnf5nbw==", - "dev": true, - "requires": { - "readable-stream": "^2.0.5" - } - }, - "lcov-parse": { - "version": "0.0.10", - "resolved": "https://registry.npmjs.org/lcov-parse/-/lcov-parse-0.0.10.tgz", - "integrity": "sha1-GwuP+ayceIklBYK3C3ExXZ2m2aM=" - }, - "ldap-filter": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/ldap-filter/-/ldap-filter-0.2.2.tgz", - "integrity": "sha1-8rhCvguG2jNSeYUFsx68rlkNd9A=", - "dev": true, - "requires": { - "assert-plus": "0.1.5" - }, - "dependencies": { - "assert-plus": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-0.1.5.tgz", - "integrity": "sha1-7nQAlBMALYTOxyGcasgRgS5yMWA=", - "dev": true - } - } - }, - "ldapauth-fork": { - "version": "4.3.2", - "resolved": "https://registry.npmjs.org/ldapauth-fork/-/ldapauth-fork-4.3.2.tgz", - "integrity": "sha512-XaO/kLaY9XGH/O58qTgtGtS0u7Qfq9IMDYWBvjRDuNfh7PbqOA5JXwF7DeKW6kIWQ842fGoIpB/cZmJ0SaJFbQ==", - "dev": true, - "requires": { - "@types/ldapjs": "^1.0.0", - "@types/node": "*", - "bcryptjs": "^2.4.0", - "ldapjs": "^1.0.2", - "lru-cache": "^5.1.1" - }, - "dependencies": { - "@types/node": { - "version": "15.12.2", - "resolved": "https://registry.npmjs.org/@types/node/-/node-15.12.2.tgz", - "integrity": "sha512-zjQ69G564OCIWIOHSXyQEEDpdpGl+G348RAKY0XXy9Z5kU9Vzv1GMNnkar/ZJ8dzXB3COzD9Mo9NtRZ4xfgUww==", - "dev": true - }, - "lru-cache": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", - "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", - "dev": true, - "requires": { - "yallist": "^3.0.2" - } - }, - "yallist": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", - "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", - "dev": true - } - } - }, - "ldapjs": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/ldapjs/-/ldapjs-1.0.2.tgz", - "integrity": "sha1-VE/3Ayt7g8aPBwEyjZKXqmlDQPk=", - "dev": true, - "requires": { - "asn1": "0.2.3", - "assert-plus": "^1.0.0", - "backoff": "^2.5.0", - "bunyan": "^1.8.3", - "dashdash": "^1.14.0", - "dtrace-provider": "~0.8", - "ldap-filter": "0.2.2", - "once": "^1.4.0", - "vasync": "^1.6.4", - "verror": "^1.8.1" - }, - "dependencies": { - "asn1": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.3.tgz", - "integrity": "sha1-2sh4dxPJlmhJ/IGAd36+nB3fO4Y=", - "dev": true - } - } - }, - "levn": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", - "integrity": "sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4=", - "requires": { - "prelude-ls": "~1.1.2", - "type-check": "~0.3.2" - } - }, - "lie": { - "version": "https://registry.npmjs.org/lie/-/lie-3.3.0.tgz", - "integrity": "sha512-UaiMJzeWRlEujzAuw5LokY1L5ecNQYZKfmyZ9L7wDHb/p5etKaxXhohBcrw0EYby+G/NA52vRSN4N39dxHAIwQ==", - "requires": { - "immediate": "~3.0.5" - } - }, - "load-json-file": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-4.0.0.tgz", - "integrity": "sha1-L19Fq5HjMhYjT9U62rZo607AmTs=", - "requires": { - "graceful-fs": "^4.1.2", - "parse-json": "^4.0.0", - "pify": "^3.0.0", - "strip-bom": "^3.0.0" - } - }, - "locate-path": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", - "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", - "requires": { - "p-locate": "^2.0.0", - "path-exists": "^3.0.0" - } - }, - "lodash": { - "version": "4.17.21", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", - "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" - }, - "lodash.defaults": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/lodash.defaults/-/lodash.defaults-4.2.0.tgz", - "integrity": "sha1-0JF4cW/+pN3p5ft7N/bwgCJ0WAw=", - "dev": true - }, - "lodash.difference": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/lodash.difference/-/lodash.difference-4.5.0.tgz", - "integrity": "sha1-nMtOUF1Ia5FlE0V3KIWi3yf9AXw=", - "dev": true - }, - "lodash.flatten": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/lodash.flatten/-/lodash.flatten-4.4.0.tgz", - "integrity": "sha1-8xwiIlqWMtK7+OSt2+8kCqdlph8=", - "dev": true - }, - "lodash.flattendeep": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/lodash.flattendeep/-/lodash.flattendeep-4.4.0.tgz", - "integrity": "sha1-+wMJF/hqMTTlvJvsDWngAT3f7bI=" - }, - "lodash.get": { - "version": "4.4.2", - "resolved": "https://registry.npmjs.org/lodash.get/-/lodash.get-4.4.2.tgz", - "integrity": "sha1-LRd/ZS+jHpObRDjVNBSZ36OCXpk=", - "dev": true - }, - "lodash.includes": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/lodash.includes/-/lodash.includes-4.3.0.tgz", - "integrity": "sha1-YLuYqHy5I8aMoeUTJUgzFISfVT8=", - "dev": true - }, - "lodash.isboolean": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/lodash.isboolean/-/lodash.isboolean-3.0.3.tgz", - "integrity": "sha1-bC4XHbKiV82WgC/UOwGyDV9YcPY=", - "dev": true - }, - "lodash.isinteger": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/lodash.isinteger/-/lodash.isinteger-4.0.4.tgz", - "integrity": "sha1-YZwK89A/iwTDH1iChAt3sRzWg0M=", - "dev": true - }, - "lodash.isnumber": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/lodash.isnumber/-/lodash.isnumber-3.0.3.tgz", - "integrity": "sha1-POdoEMWSjQM1IwGsKHMX8RwLH/w=", - "dev": true - }, - "lodash.isplainobject": { - "version": "4.0.6", - "resolved": "https://registry.npmjs.org/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz", - "integrity": "sha1-fFJqUtibRcRcxpC4gWO+BJf1UMs=", - "dev": true - }, - "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==" - }, - "lodash.once": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/lodash.once/-/lodash.once-4.1.1.tgz", - "integrity": "sha1-DdOXEhPHxW34gJd9UEyI+0cal6w=", - "dev": true - }, - "lodash.union": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/lodash.union/-/lodash.union-4.6.0.tgz", - "integrity": "sha1-SLtQiECfFvGCFmZkHETdGqrjzYg=", - "dev": true - }, - "log-driver": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/log-driver/-/log-driver-1.2.7.tgz", - "integrity": "sha512-U7KCmLdqsGHBLeWqYlFA0V0Sl6P08EE1ZrmA9cxjUE0WVqT9qnyVDPz1kzpFEP0jdJuFnasWIfSd7fsaNXkpbg==" - }, - "log-symbols": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-3.0.0.tgz", - "integrity": "sha512-dSkNGuI7iG3mfvDzUuYZyvk5dD9ocYCYzNU6CYDE6+Xqd+gwme6Z00NS3dUh8mq/73HaEtT7m6W+yUPtU6BZnQ==", - "requires": { - "chalk": "^2.4.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==", - "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==", - "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==", - "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=" - }, - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=" - }, - "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "lolex": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/lolex/-/lolex-4.2.0.tgz", - "integrity": "sha512-gKO5uExCXvSm6zbF562EvM+rd1kQDnB9AZBbiQVzf1ZmdDpxUSvpnAaVOP83N/31mRK8Ml8/VE8DMvsAZQ+7wg==" - }, - "long": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/long/-/long-4.0.0.tgz", - "integrity": "sha512-XsP+KhQif4bjX1kbuSiySJFNAehNxgLb6hPRGJ9QsUr8ajHkuXGdrHmFUTUUXhDwVX2R5bY4JNZEwbUiMhV+MA==", - "dev": true - }, - "longest": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/longest/-/longest-1.0.1.tgz", - "integrity": "sha1-MKCy2jj3N3DoKUoNIuZiXtd9AJc=", - "dev": true - }, - "loud-rejection": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/loud-rejection/-/loud-rejection-1.6.0.tgz", - "integrity": "sha1-W0b4AUft7leIcPCG0Eghz5mOVR8=", - "requires": { - "currently-unhandled": "^0.4.1", - "signal-exit": "^3.0.0" - } - }, - "lowercase-keys": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.1.tgz", - "integrity": "sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA==", - "dev": true - }, - "lru-cache": { - "version": "4.1.5", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz", - "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==", - "requires": { - "pseudomap": "^1.0.2", - "yallist": "^2.1.2" - }, - "dependencies": { - "yallist": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", - "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=" - } - } - }, - "make-dir": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", - "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", - "requires": { - "pify": "^4.0.1", - "semver": "^5.6.0" - }, - "dependencies": { - "pify": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", - "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==" - } - } - }, - "map-cache": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz", - "integrity": "sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8=" - }, - "map-obj": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-2.0.0.tgz", - "integrity": "sha1-plzSkIepJZi4eRJXpSPgISIqwfk=" - }, - "map-stream": { - "version": "0.0.7", - "resolved": "https://registry.npmjs.org/map-stream/-/map-stream-0.0.7.tgz", - "integrity": "sha1-ih8HiW2CsQkmvTdEokIACfiJdKg=", - "dev": true - }, - "map-visit": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/map-visit/-/map-visit-1.0.0.tgz", - "integrity": "sha1-7Nyo8TFE5mDxtb1B8S80edmN+48=", - "requires": { - "object-visit": "^1.0.0" - } - }, - "md5.js": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.5.tgz", - "integrity": "sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==", - "dev": true, - "requires": { - "hash-base": "^3.0.0", - "inherits": "^2.0.1", - "safe-buffer": "^5.1.2" - } - }, - "media-typer": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", - "integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=", - "dev": true - }, - "memorystream": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/memorystream/-/memorystream-0.3.1.tgz", - "integrity": "sha1-htcJCzDORV1j+64S3aUaR93K+bI=" - }, - "meow": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/meow/-/meow-5.0.0.tgz", - "integrity": "sha512-CbTqYU17ABaLefO8vCU153ZZlprKYWDljcndKKDCFcYQITzWCXZAVk4QMFZPgvzrnUQ3uItnIE/LoUOwrT15Ig==", - "requires": { - "camelcase-keys": "^4.0.0", - "decamelize-keys": "^1.0.0", - "loud-rejection": "^1.0.0", - "minimist-options": "^3.0.1", - "normalize-package-data": "^2.3.4", - "read-pkg-up": "^3.0.0", - "redent": "^2.0.0", - "trim-newlines": "^2.0.0", - "yargs-parser": "^10.0.0" - } - }, - "merge-descriptors": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", - "integrity": "sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E=" - }, - "merge-source-map": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/merge-source-map/-/merge-source-map-1.1.0.tgz", - "integrity": "sha512-Qkcp7P2ygktpMPh2mCQZaf3jhN6D3Z/qVZHSdWvQ+2Ef5HgRAPBO57A77+ENm0CPx2+1Ce/MYKi3ymqdfuqibw==", - "requires": { - "source-map": "^0.6.1" - } - }, - "merge2": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.3.0.tgz", - "integrity": "sha512-2j4DAdlBOkiSZIsaXk4mTE3sRS02yBHAtfy127xRV3bQUFqXkjHCHLW6Scv7DwNRbIWNHH8zpnz9zMaKXIdvYw==" - }, - "methods": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", - "integrity": "sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4=" - }, - "mgrs": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/mgrs/-/mgrs-1.0.0.tgz", - "integrity": "sha1-+5FYjnjJACVnI5XLQLJffNatGCk=", - "dev": true - }, - "micromatch": { - "version": "3.1.10", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", - "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", - "requires": { - "arr-diff": "^4.0.0", - "array-unique": "^0.3.2", - "braces": "^2.3.1", - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "extglob": "^2.0.4", - "fragment-cache": "^0.2.1", - "kind-of": "^6.0.2", - "nanomatch": "^1.2.9", - "object.pick": "^1.3.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.2" - }, - "dependencies": { - "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==" - } - } - }, - "mime": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/mime/-/mime-1.4.1.tgz", - "integrity": "sha512-KI1+qOZu5DcW6wayYHSzR/tXKCDC5Om4s1z2QJjDULzLcmf3DvzS7oluY4HCTrc+9FiKmWUgeNLg7W3uIQvxtQ==" - }, - "mime-db": { - "version": "1.43.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.43.0.tgz", - "integrity": "sha512-+5dsGEEovYbT8UY9yD7eE4XTc4UwJ1jBYlgaQQF38ENsKR3wj/8q8RFZrF9WIZpB2V1ArTVFUva8sAul1NzRzQ==" - }, - "mime-types": { - "version": "2.1.26", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.26.tgz", - "integrity": "sha512-01paPWYgLrkqAyrlDorC1uDwl2p3qZT7yl806vW7DvDoxwXi46jsjFbg+WdwotBIk6/MbEhO/dh5aZ5sNj/dWQ==", - "requires": { - "mime-db": "1.43.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": "1.0.1", - "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz", - "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==" - }, - "minimalistic-assert": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", - "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==", - "dev": true - }, - "minimalistic-crypto-utils": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz", - "integrity": "sha1-9sAMHAsIIkblxNmd+4x8CDsrWCo=", - "dev": true - }, - "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.0", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", - "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=" - }, - "minimist-options": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/minimist-options/-/minimist-options-3.0.2.tgz", - "integrity": "sha512-FyBrT/d0d4+uiZRbqznPXqw3IpZZG3gl3wKWiX784FycUKVwBt0uLBFkQrtE4tZOrgo78nZp2jnKz3L65T5LdQ==", - "requires": { - "arrify": "^1.0.1", - "is-plain-obj": "^1.1.0" - } - }, - "minipass": { - "version": "3.1.6", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.1.6.tgz", - "integrity": "sha512-rty5kpw9/z8SX9dmxblFA6edItUmwJgMeYDZRrwlIVN27i8gysGbznJwUggw2V/FVqFSDdWy040ZPS811DYAqQ==", - "dev": true, - "optional": true, - "requires": { - "yallist": "^4.0.0" - }, - "dependencies": { - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true, - "optional": true - } - } - }, - "minizlib": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz", - "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==", - "dev": true, - "optional": true, - "requires": { - "minipass": "^3.0.0", - "yallist": "^4.0.0" - }, - "dependencies": { - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true, - "optional": true - } - } - }, - "mixin-deep": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.2.tgz", - "integrity": "sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA==", - "requires": { - "for-in": "^1.0.2", - "is-extendable": "^1.0.1" - }, - "dependencies": { - "is-extendable": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", - "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", - "requires": { - "is-plain-object": "^2.0.4" - } - } - } - }, - "mkdirp": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", - "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", - "requires": { - "minimist": "0.0.8" - }, - "dependencies": { - "minimist": { - "version": "0.0.8", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", - "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=" - } - } - }, - "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==", - "dev": true, - "optional": true - }, - "mocha": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/mocha/-/mocha-7.1.1.tgz", - "integrity": "sha512-3qQsu3ijNS3GkWcccT5Zw0hf/rWvu1fTN9sPvEd81hlwsr30GX2GcDSSoBxo24IR8FelmrAydGC6/1J5QQP4WA==", - "requires": { - "ansi-colors": "3.2.3", - "browser-stdout": "1.3.1", - "chokidar": "3.3.0", - "debug": "3.2.6", - "diff": "3.5.0", - "escape-string-regexp": "1.0.5", - "find-up": "3.0.0", - "glob": "7.1.3", - "growl": "1.10.5", - "he": "1.2.0", - "js-yaml": "3.13.1", - "log-symbols": "3.0.0", - "minimatch": "3.0.4", - "mkdirp": "0.5.3", - "ms": "2.1.1", - "node-environment-flags": "1.0.6", - "object.assign": "4.1.0", - "strip-json-comments": "2.0.1", - "supports-color": "6.0.0", - "which": "1.3.1", - "wide-align": "1.1.3", - "yargs": "13.3.2", - "yargs-parser": "13.1.2", - "yargs-unparser": "1.6.0" - }, - "dependencies": { - "ansi-regex": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", - "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==" - }, - "camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==" - }, - "cliui": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-5.0.0.tgz", - "integrity": "sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA==", - "requires": { - "string-width": "^3.1.0", - "strip-ansi": "^5.2.0", - "wrap-ansi": "^5.1.0" - }, - "dependencies": { - "string-width": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", - "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", - "requires": { - "emoji-regex": "^7.0.1", - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^5.1.0" - } - } - } - }, - "debug": { - "version": "3.2.6", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", - "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", - "requires": { - "ms": "^2.1.1" - } - }, - "emoji-regex": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", - "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==" - }, - "esprima": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", - "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==" - }, - "find-up": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", - "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", - "requires": { - "locate-path": "^3.0.0" - } - }, - "glob": { - "version": "7.1.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.3.tgz", - "integrity": "sha512-vcfuiIxogLV4DlGBHIUOwI0IbrJ8HWPc4MU7HzviGeNho/UJDfi6B5p3sHeWIQ0KGIU0Jpxi5ZHxemQfLkkAwQ==", - "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" - } - }, - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=" - }, - "is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=" - }, - "js-yaml": { - "version": "3.13.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.13.1.tgz", - "integrity": "sha512-YfbcO7jXDdyj0DGxYVSlSeQNHbD7XPWvrVWeVUujrQEoZzWJIRrCPoyk6kL6IAjAG2IolMK4T0hNUe0HOUs5Jw==", - "requires": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" - } - }, - "locate-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", - "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", - "requires": { - "p-locate": "^3.0.0", - "path-exists": "^3.0.0" - } - }, - "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.3", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.3.tgz", - "integrity": "sha512-P+2gwrFqx8lhew375MQHHeTlY8AuOJSrGf0R5ddkEndUkmwpgUob/vQuBD1V22/Cw1/lJr4x+EjllSezBThzBg==", - "requires": { - "minimist": "^1.2.5" - } - }, - "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==" - }, - "object.assign": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.0.tgz", - "integrity": "sha512-exHJeq6kBKj58mqGyTQ9DFvrZC/eR6OwxzoM9YRoGBqrXYonaFyGiFMuc9VZrXf7DarreEwMpurG3dd+CNyW5w==", - "requires": { - "define-properties": "^1.1.2", - "function-bind": "^1.1.1", - "has-symbols": "^1.0.0", - "object-keys": "^1.0.11" - } - }, - "p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", - "requires": { - "p-try": "^2.0.0" - } - }, - "p-locate": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", - "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", - "requires": { - "p-limit": "^2.0.0" - } - }, - "p-try": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", - "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==" - }, - "string-width": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", - "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", - "requires": { - "emoji-regex": "^7.0.1", - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^5.1.0" - } - }, - "strip-ansi": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", - "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", - "requires": { - "ansi-regex": "^4.1.0" - } - }, - "supports-color": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.0.0.tgz", - "integrity": "sha512-on9Kwidc1IUQo+bQdhi8+Tijpo0e1SS6RoGo2guUwn5vdaxw8RXOF9Vb2ws+ihWOmh4JnCJOvaziZWP1VABaLg==", - "requires": { - "has-flag": "^3.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==" - }, - "yargs": { - "version": "13.3.2", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-13.3.2.tgz", - "integrity": "sha512-AX3Zw5iPruN5ie6xGRIDgqkT+ZhnRlZMLMHAs8tg7nRruy2Nb+i5o9bwghAogtM08q1dpr2LVoS8KSTMYpWXUw==", - "requires": { - "cliui": "^5.0.0", - "find-up": "^3.0.0", - "get-caller-file": "^2.0.1", - "require-directory": "^2.1.1", - "require-main-filename": "^2.0.0", - "set-blocking": "^2.0.0", - "string-width": "^3.0.0", - "which-module": "^2.0.0", - "y18n": "^4.0.0", - "yargs-parser": "^13.1.2" - }, - "dependencies": { - "string-width": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", - "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", - "requires": { - "emoji-regex": "^7.0.1", - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^5.1.0" - } - } - } - }, - "yargs-parser": { - "version": "13.1.2", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.2.tgz", - "integrity": "sha512-3lbsNRf/j+A4QuSZfDRA7HRSfWrzO0YjqTJd5kjAq37Zep1CEgaYmrH9Q3GwPiB9cHyd1Y1UwggGhJGoxipbzg==", - "requires": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" - } - } - } - }, - "mock-fs": { - "version": "https://registry.npmjs.org/mock-fs/-/mock-fs-4.10.1.tgz", - "integrity": "sha512-w22rOL5ZYu6HbUehB5deurghGM0hS/xBVyHMGKOuQctkk93J9z9VEOhDsiWrXOprVNQpP9uzGKdl8v9mFspKuw==" - }, - "module-not-found-error": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/module-not-found-error/-/module-not-found-error-1.0.1.tgz", - "integrity": "sha1-z4tP9PKWQGdNbN0CsOO8UjwrvcA=" - }, - "moment": { - "version": "2.22.2", - "resolved": "https://registry.npmjs.org/moment/-/moment-2.22.2.tgz", - "integrity": "sha1-PCV/mDn8DpP/UxSWMiOeuQeD/2Y=", - "dev": true - }, - "mongodb": { - "version": "2.2.36", - "resolved": "https://registry.npmjs.org/mongodb/-/mongodb-2.2.36.tgz", - "integrity": "sha512-P2SBLQ8Z0PVx71ngoXwo12+FiSfbNfGOClAao03/bant5DgLNkOPAck5IaJcEk4gKlQhDEURzfR3xuBG1/B+IA==", - "dev": true, - "requires": { - "es6-promise": "3.2.1", - "mongodb-core": "2.1.20", - "readable-stream": "2.2.7" - }, - "dependencies": { - "readable-stream": { - "version": "2.2.7", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.2.7.tgz", - "integrity": "sha1-BwV6y+JGeyIELTb5jFrVBwVOlbE=", - "dev": true, - "requires": { - "buffer-shims": "~1.0.0", - "core-util-is": "~1.0.0", - "inherits": "~2.0.1", - "isarray": "~1.0.0", - "process-nextick-args": "~1.0.6", - "string_decoder": "~1.0.0", - "util-deprecate": "~1.0.1" - } - }, - "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 - }, - "string_decoder": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.0.3.tgz", - "integrity": "sha512-4AH6Z5fzNNBcH+6XDMfA/BTt87skxqJlO0lAh3Dker5zThcAxG6mKz+iGu308UKoPPQ8Dcqx/4JhujzltRa+hQ==", - "dev": true, - "requires": { - "safe-buffer": "~5.1.0" - } - } - } - }, - "mongodb-connection-string-url": { - "version": "https://registry.npmjs.org/mongodb-connection-string-url/-/mongodb-connection-string-url-2.5.2.tgz", - "integrity": "sha512-tWDyIG8cQlI5k3skB6ywaEA5F9f5OntrKKsT/Lteub2zgwSUlhqEN2inGgBTm8bpYJf8QYBdA/5naz65XDpczA==", - "requires": { - "@types/whatwg-url": "^8.2.1", - "whatwg-url": "^11.0.0" - }, - "dependencies": { - "tr46": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-3.0.0.tgz", - "integrity": "sha512-l7FvfAHlcmulp8kr+flpQZmVwtu7nfRV7NZujtN0OqES8EL4O4e0qqzL0DC5gAvx/ZC/9lk6rhcUwYvkBnBnYA==", - "requires": { - "punycode": "^2.1.1" - } - }, - "webidl-conversions": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-7.0.0.tgz", - "integrity": "sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==" - }, - "whatwg-url": { - "version": "11.0.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-11.0.0.tgz", - "integrity": "sha512-RKT8HExMpoYx4igMiVMY83lN6UeITKJlBQ+vR/8ZJ8OCdSiN3RwCq+9gH0+Xzj0+5IrM6i4j/6LuvzbZIQgEcQ==", - "requires": { - "tr46": "^3.0.0", - "webidl-conversions": "^7.0.0" - } - } - } - }, - "mongodb-core": { - "version": "2.1.20", - "resolved": "https://registry.npmjs.org/mongodb-core/-/mongodb-core-2.1.20.tgz", - "integrity": "sha512-IN57CX5/Q1bhDq6ShAR6gIv4koFsZP7L8WOK1S0lR0pVDQaScffSMV5jxubLsmZ7J+UdqmykKw4r9hG3XQEGgQ==", - "dev": true, - "requires": { - "bson": "~1.0.4", - "require_optional": "~1.0.0" - } - }, - "mongodb-memory-server-global": { - "version": "6.9.6", - "resolved": "https://registry.npmjs.org/mongodb-memory-server-global/-/mongodb-memory-server-global-6.9.6.tgz", - "integrity": "sha512-pdtr0gRvbL1wHNeLDWsHbQWeSkPPySdQ0moUyo+LxXHqCnJJGs+0Y5vgDCo1UYkCH9ZkbwFnw+CPmAX3YUXnvQ==", - "requires": { - "os": "^0.1.1" - } - }, - "mongodb-migrations": { - "version": "0.8.5", - "resolved": "https://registry.npmjs.org/mongodb-migrations/-/mongodb-migrations-0.8.5.tgz", - "integrity": "sha1-0CfvEPuwHxc3NfALdLoH3PPLsBc=", - "dev": true, - "requires": { - "bluebird": "^3.4.1", - "lodash": "^4.13.0", - "mkdirp": "^0.5.1", - "mongodb": "^2.2.1", - "nomnom": "^1.6.2" - }, - "dependencies": { - "minimist": { - "version": "1.2.6", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.6.tgz", - "integrity": "sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==", - "dev": true - }, - "mkdirp": { - "version": "0.5.6", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", - "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", - "dev": true, - "requires": { - "minimist": "^1.2.6" - } - } - } - }, - "mongoose": { - "version": "4.13.21", - "resolved": "https://registry.npmjs.org/mongoose/-/mongoose-4.13.21.tgz", - "integrity": "sha512-0VZtQu1rSUPwUtbb7zh6CymI0nNkVInOIDbtWNlna070qnUO14On8PpSVSwlx3gwmkKL2OkP4ioCj5YHC6trMg==", - "dev": true, - "requires": { - "async": "2.6.0", - "bson": "~1.0.4", - "hooks-fixed": "2.0.2", - "kareem": "1.5.0", - "lodash.get": "4.4.2", - "mongodb": "2.2.34", - "mpath": "0.5.1", - "mpromise": "0.5.5", - "mquery": "2.3.3", - "ms": "2.0.0", - "muri": "1.3.0", - "regexp-clone": "0.0.1", - "sliced": "1.0.1" - }, - "dependencies": { - "async": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/async/-/async-2.6.0.tgz", - "integrity": "sha512-xAfGg1/NTLBBKlHFmnd7PlmUW9KhVQIUuSrYem9xzFUZy13ScvtyGGejaae9iAVRiRq9+Cx7DPFaAAhCpyxyPw==", - "dev": true, - "requires": { - "lodash": "^4.14.0" - } - }, - "mongodb": { - "version": "2.2.34", - "resolved": "https://registry.npmjs.org/mongodb/-/mongodb-2.2.34.tgz", - "integrity": "sha1-o09Zu+thdUrsQy3nLD/iFSakTBo=", - "dev": true, - "requires": { - "es6-promise": "3.2.1", - "mongodb-core": "2.1.18", - "readable-stream": "2.2.7" - } - }, - "mongodb-core": { - "version": "2.1.18", - "resolved": "https://registry.npmjs.org/mongodb-core/-/mongodb-core-2.1.18.tgz", - "integrity": "sha1-TEYTm986HwMt7ZHbSfOO7AFlkFA=", - "dev": true, - "requires": { - "bson": "~1.0.4", - "require_optional": "~1.0.0" - } - }, - "readable-stream": { - "version": "2.2.7", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.2.7.tgz", - "integrity": "sha1-BwV6y+JGeyIELTb5jFrVBwVOlbE=", - "dev": true, - "requires": { - "buffer-shims": "~1.0.0", - "core-util-is": "~1.0.0", - "inherits": "~2.0.1", - "isarray": "~1.0.0", - "process-nextick-args": "~1.0.6", - "string_decoder": "~1.0.0", - "util-deprecate": "~1.0.1" - } - }, - "string_decoder": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.0.3.tgz", - "integrity": "sha512-4AH6Z5fzNNBcH+6XDMfA/BTt87skxqJlO0lAh3Dker5zThcAxG6mKz+iGu308UKoPPQ8Dcqx/4JhujzltRa+hQ==", - "dev": true, - "requires": { - "safe-buffer": "~5.1.0" - } - } - } - }, - "mongoose-beautiful-unique-validation": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/mongoose-beautiful-unique-validation/-/mongoose-beautiful-unique-validation-7.1.1.tgz", - "integrity": "sha512-fprzp8nY9Qjg0+RZFMl7gVmbINRt2H53fpqyjJWwPO7nxJ9RZZB/Lo3y+mXaMP4nNMOeoJb2v3dNou6h+iLh8w==", - "dev": true - }, - "mpath": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/mpath/-/mpath-0.5.1.tgz", - "integrity": "sha512-H8OVQ+QEz82sch4wbODFOz+3YQ61FYz/z3eJ5pIdbMEaUzDqA268Wd+Vt4Paw9TJfvDgVKaayC0gBzMIw2jhsg==", - "dev": true - }, - "mpromise": { - "version": "0.5.5", - "resolved": "https://registry.npmjs.org/mpromise/-/mpromise-0.5.5.tgz", - "integrity": "sha1-9bJCWddjrMIlewoMjG2Gb9UXMuY=", - "dev": true - }, - "mquery": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/mquery/-/mquery-2.3.3.tgz", - "integrity": "sha512-NC8L14kn+qxJbbJ1gbcEMDxF0sC3sv+1cbRReXXwVvowcwY1y9KoVZFq0ebwARibsadu8lx8nWGvm3V0Pf0ZWQ==", - "dev": true, - "requires": { - "bluebird": "3.5.0", - "debug": "2.6.9", - "regexp-clone": "0.0.1", - "sliced": "0.0.5" - }, - "dependencies": { - "bluebird": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.5.0.tgz", - "integrity": "sha1-eRQg1/VR7qKJdFOop3ZT+WYG1nw=", - "dev": true - }, - "sliced": { - "version": "0.0.5", - "resolved": "https://registry.npmjs.org/sliced/-/sliced-0.0.5.tgz", - "integrity": "sha1-XtwETKTrb3gW1Qui/GPiXY/kcH8=", - "dev": true - } - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true - }, - "multer": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/multer/-/multer-1.4.2.tgz", - "integrity": "sha512-xY8pX7V+ybyUpbYMxtjM9KAiD9ixtg5/JkeKUTD6xilfDv0vzzOFcCp4Ljb1UU3tSOM3VTZtKo63OmzOrGi3Cg==", - "dev": true, - "requires": { - "append-field": "^1.0.0", - "busboy": "^0.2.11", - "concat-stream": "^1.5.2", - "mkdirp": "^0.5.1", - "object-assign": "^4.1.1", - "on-finished": "^2.3.0", - "type-is": "^1.6.4", - "xtend": "^4.0.0" - }, - "dependencies": { - "minimist": { - "version": "1.2.6", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.6.tgz", - "integrity": "sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==", - "dev": true - }, - "mkdirp": { - "version": "0.5.6", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", - "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", - "dev": true, - "requires": { - "minimist": "^1.2.6" - } - } - } - }, - "muri": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/muri/-/muri-1.3.0.tgz", - "integrity": "sha512-FiaFwKl864onHFFUV/a2szAl7X0fxVlSKNdhTf+BM8i8goEgYut8u5P9MqQqIYwvaMxjzVESsoEm/2kfkFH1rg==", - "dev": true - }, - "mute-stream": { - "version": "0.0.8", - "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz", - "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==", - "dev": true, - "optional": true - }, - "mv": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/mv/-/mv-2.1.1.tgz", - "integrity": "sha1-rmzg1vbV4KT32JN5jQPB6pVZtqI=", - "dev": true, - "optional": true, - "requires": { - "mkdirp": "~0.5.1", - "ncp": "~2.0.0", - "rimraf": "~2.4.0" - }, - "dependencies": { - "glob": { - "version": "6.0.4", - "resolved": "https://registry.npmjs.org/glob/-/glob-6.0.4.tgz", - "integrity": "sha1-DwiGD2oVUSey+t1PnOJLGqtuTSI=", - "dev": true, - "optional": true, - "requires": { - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "2 || 3", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "minimist": { - "version": "1.2.6", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.6.tgz", - "integrity": "sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==", - "dev": true, - "optional": true - }, - "mkdirp": { - "version": "0.5.6", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", - "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", - "dev": true, - "optional": true, - "requires": { - "minimist": "^1.2.6" - } - }, - "rimraf": { - "version": "2.4.5", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.4.5.tgz", - "integrity": "sha1-7nEM5dk6j9uFb7Xqj/Di11k0sto=", - "dev": true, - "optional": true, - "requires": { - "glob": "^6.0.1" - } - } - } - }, - "nan": { - "version": "2.14.2", - "resolved": "https://registry.npmjs.org/nan/-/nan-2.14.2.tgz", - "integrity": "sha512-M2ufzIiINKCuDfBSAUr1vWQ+vuVcA9kqx8JJUsbQi6yf1uGRyb7HfpdfUr5qLXf3B/t8dPvcjhKMmlfnP47EzQ==" - }, - "nanomatch": { - "version": "1.2.13", - "resolved": "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.13.tgz", - "integrity": "sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA==", - "requires": { - "arr-diff": "^4.0.0", - "array-unique": "^0.3.2", - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "fragment-cache": "^0.2.1", - "is-windows": "^1.0.2", - "kind-of": "^6.0.2", - "object.pick": "^1.3.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.1" - }, - "dependencies": { - "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==" - } - } - }, - "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==", - "dev": true, - "optional": true - }, - "natural-compare": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", - "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=" - }, - "ncp": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ncp/-/ncp-2.0.0.tgz", - "integrity": "sha1-GVoh1sRuNh0vsSgbo4uR6d9727M=", - "dev": true, - "optional": true - }, - "negotiator": { - "version": "0.6.2", - "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.2.tgz", - "integrity": "sha512-hZXc7K2e+PgeI1eDBe/10Ard4ekbfrrqG8Ep+8Jmf4JID2bNg7NvCPOZN+kfF574pFQI7mum2AUqDidoKqcTOw==", - "dev": true - }, - "nested-error-stacks": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/nested-error-stacks/-/nested-error-stacks-2.1.0.tgz", - "integrity": "sha512-AO81vsIO1k1sM4Zrd6Hu7regmJN1NSiAja10gc4bX3F0wd+9rQmcuHQaHVQCYIEC8iFXnE+mavh23GOt7wBgug==" - }, - "new-find-package-json": { - "version": "https://registry.npmjs.org/new-find-package-json/-/new-find-package-json-1.1.0.tgz", - "integrity": "sha512-KOH3BNZcTKPzEkaJgG2iSUaurxKmefqRKmCOYH+8xqJytNIgjqU4J88BHfK+gy/UlEzlhccLyuJDJAcCgexSwA==", - "requires": { - "debug": "^4.3.2", - "tslib": "^2.3.0" - }, - "dependencies": { - "debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", - "requires": { - "ms": "2.1.2" - } - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" - }, - "tslib": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.1.tgz", - "integrity": "sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw==" - } - } - }, - "nice-try": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz", - "integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==" - }, - "nise": { - "version": "1.5.3", - "resolved": "https://registry.npmjs.org/nise/-/nise-1.5.3.tgz", - "integrity": "sha512-Ymbac/94xeIrMf59REBPOv0thr+CJVFMhrlAkW/gjCIE58BGQdCj0x7KRCb3yz+Ga2Rz3E9XXSvUyyxqqhjQAQ==", - "requires": { - "@sinonjs/formatio": "^3.2.1", - "@sinonjs/text-encoding": "^0.7.1", - "just-extend": "^4.0.2", - "lolex": "^5.0.1", - "path-to-regexp": "^1.7.0" - }, - "dependencies": { - "isarray": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", - "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=" - }, - "lolex": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/lolex/-/lolex-5.1.2.tgz", - "integrity": "sha512-h4hmjAvHTmd+25JSwrtTIuwbKdwg5NzZVRMLn9saij4SZaepCrTCxPr35H/3bjwfMJtN+t3CX8672UIkglz28A==", - "requires": { - "@sinonjs/commons": "^1.7.0" - } - }, - "path-to-regexp": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-1.8.0.tgz", - "integrity": "sha512-n43JRhlUKUAlibEJhPeir1ncUID16QnEjNpwzNdO3Lm4ywrBpBZ5oLD0I6br9evr1Y9JTqwRtAh7JLoOzAQdVA==", - "requires": { - "isarray": "0.0.1" - } - } - } - }, - "nock": { - "version": "11.9.1", - "resolved": "https://registry.npmjs.org/nock/-/nock-11.9.1.tgz", - "integrity": "sha512-U5wPctaY4/ar2JJ5Jg4wJxlbBfayxgKbiAeGh+a1kk6Pwnc2ZEuKviLyDSG6t0uXl56q7AALIxoM6FJrBSsVXA==", - "requires": { - "debug": "^4.1.0", - "json-stringify-safe": "^5.0.1", - "lodash": "^4.17.13", - "mkdirp": "^0.5.0", - "propagate": "^2.0.0" - }, - "dependencies": { - "debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", - "requires": { - "ms": "^2.1.1" - } - }, - "minimist": { - "version": "1.2.6", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.6.tgz", - "integrity": "sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==" - }, - "mkdirp": { - "version": "0.5.6", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", - "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", - "requires": { - "minimist": "^1.2.6" - } - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" - } - } - }, - "node-abi": { - "version": "2.30.1", - "resolved": "https://registry.npmjs.org/node-abi/-/node-abi-2.30.1.tgz", - "integrity": "sha512-/2D0wOQPgaUWzVSVgRMx+trKJRC2UG4SUc4oCJoXx9Uxjtp0Vy3/kt7zcbxHF8+Z/pK3UloLWzBISg72brfy1w==", - "dev": true, - "optional": true, - "requires": { - "semver": "^5.4.1" - } - }, - "node-environment-flags": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/node-environment-flags/-/node-environment-flags-1.0.6.tgz", - "integrity": "sha512-5Evy2epuL+6TM0lCQGpFIj6KwiEsGh1SrHUhTbNX+sLbBtjidPZFAnVK9y5yU1+h//RitLbRHTIMyxQPtxMdHw==", - "requires": { - "object.getownpropertydescriptors": "^2.0.3", - "semver": "^5.7.0" - } - }, - "node-fetch": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.0.tgz", - "integrity": "sha512-8dG4H5ujfvFiqDmVu9fQ5bOHUC15JMjMY/Zumv26oOvvVJjM67KF8koCWIabKQ1GJIa9r2mMZscBq/TbdOcmNA==", - "dev": true - }, - "node-forge": { - "version": "0.7.6", - "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-0.7.6.tgz", - "integrity": "sha512-sol30LUpz1jQFBjOKwbjxijiE3b6pjd74YwfD0fJOKPjF+fONKb2Yg8rYgS6+bK6VDl+/wfr4IYpC7jDzLUIfw==" - }, - "node-jose": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/node-jose/-/node-jose-1.1.3.tgz", - "integrity": "sha512-kupfi4uGWhRjnOmtie2T64cLge5a1TZyalEa8uWWWBgtKBcu41A4IGKpI9twZAxRnmviamEUQRK7LSyfFb2w8A==", - "dev": true, - "requires": { - "base64url": "^3.0.1", - "es6-promise": "^4.2.6", - "lodash": "^4.17.11", - "long": "^4.0.0", - "node-forge": "^0.8.1", - "uuid": "^3.3.2" - }, - "dependencies": { - "es6-promise": { - "version": "4.2.8", - "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-4.2.8.tgz", - "integrity": "sha512-HJDGx5daxeIvxdBxvG2cb9g4tEvwIk3i8+nhX0yGrYmZUzbkdg8QbDevheDB8gd0//uPj4c1EQua8Q+MViT0/w==", - "dev": true - }, - "node-forge": { - "version": "0.8.5", - "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-0.8.5.tgz", - "integrity": "sha512-vFMQIWt+J/7FLNyKouZ9TazT74PRV3wgv9UT4cRjC8BffxFbKXkgIWR42URCPSnHm/QDz6BOlb2Q0U4+VQT67Q==", - "dev": true - } - } - }, - "nomnom": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/nomnom/-/nomnom-1.8.1.tgz", - "integrity": "sha1-IVH3Ikcrp55Qp2/BJbuMjy5Nwqc=", - "dev": true, - "requires": { - "chalk": "~0.4.0", - "underscore": "~1.6.0" - }, - "dependencies": { - "ansi-styles": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-1.0.0.tgz", - "integrity": "sha1-yxAt8cVvUSPquLZ817mAJ6AnkXg=", - "dev": true - }, - "chalk": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-0.4.0.tgz", - "integrity": "sha1-UZmj3c0MHv4jvAjBsCewYXbgxk8=", - "dev": true, - "requires": { - "ansi-styles": "~1.0.0", - "has-color": "~0.1.0", - "strip-ansi": "~0.1.0" - } - }, - "strip-ansi": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-0.1.1.tgz", - "integrity": "sha1-OeipjQRNFQZgq+SmgIrPcLt7yZE=", - "dev": true - }, - "underscore": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.6.0.tgz", - "integrity": "sha1-izixDKze9jM3uLJOT/htRa6lKag=", - "dev": true - } - } - }, - "normalize-package-data": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", - "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", - "requires": { - "hosted-git-info": "^2.1.4", - "resolve": "^1.10.0", - "semver": "2 || 3 || 4 || 5", - "validate-npm-package-license": "^3.0.1" - } - }, - "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 - }, - "normalize-url": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-2.0.1.tgz", - "integrity": "sha512-D6MUW4K/VzoJ4rJ01JFKxDrtY1v9wrgzCX5f2qj/lzH1m/lW6MhUZFKerVsnyjOhOsYzI9Kqqak+10l4LvLpMw==", - "dev": true, - "requires": { - "prepend-http": "^2.0.0", - "query-string": "^5.0.1", - "sort-keys": "^2.0.0" - } - }, - "npm-run-all": { - "version": "4.1.5", - "resolved": "https://registry.npmjs.org/npm-run-all/-/npm-run-all-4.1.5.tgz", - "integrity": "sha512-Oo82gJDAVcaMdi3nuoKFavkIHBRVqQ1qvMb+9LHk/cF4P6B2m8aP04hGf7oL6wZ9BuGwX1onlLhpuoofSyoQDQ==", - "requires": { - "ansi-styles": "^3.2.1", - "chalk": "^2.4.1", - "cross-spawn": "^6.0.5", - "memorystream": "^0.3.1", - "minimatch": "^3.0.4", - "pidtree": "^0.3.0", - "read-pkg": "^3.0.0", - "shell-quote": "^1.6.1", - "string.prototype.padend": "^3.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==", - "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==", - "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==", - "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=" - }, - "cross-spawn": { - "version": "6.0.5", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", - "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", - "requires": { - "nice-try": "^1.0.4", - "path-key": "^2.0.1", - "semver": "^5.5.0", - "shebang-command": "^1.2.0", - "which": "^1.2.9" - } - }, - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=" - }, - "path-key": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", - "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=" - }, - "shebang-command": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", - "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=", - "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=" - }, - "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "npmlog": { - "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, - "optional": true, - "requires": { - "are-we-there-yet": "~1.1.2", - "console-control-strings": "~1.1.0", - "gauge": "~2.7.3", - "set-blocking": "~2.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=", - "dev": true, - "optional": true - }, - "nyc": { - "version": "14.1.1", - "resolved": "https://registry.npmjs.org/nyc/-/nyc-14.1.1.tgz", - "integrity": "sha512-OI0vm6ZGUnoGZv/tLdZ2esSVzDwUC88SNs+6JoSOMVxA+gKMB8Tk7jBwgemLx4O40lhhvZCVw1C+OYLOBOPXWw==", - "requires": { - "archy": "^1.0.0", - "caching-transform": "^3.0.2", - "convert-source-map": "^1.6.0", - "cp-file": "^6.2.0", - "find-cache-dir": "^2.1.0", - "find-up": "^3.0.0", - "foreground-child": "^1.5.6", - "glob": "^7.1.3", - "istanbul-lib-coverage": "^2.0.5", - "istanbul-lib-hook": "^2.0.7", - "istanbul-lib-instrument": "^3.3.0", - "istanbul-lib-report": "^2.0.8", - "istanbul-lib-source-maps": "^3.0.6", - "istanbul-reports": "^2.2.4", - "js-yaml": "^3.13.1", - "make-dir": "^2.1.0", - "merge-source-map": "^1.1.0", - "resolve-from": "^4.0.0", - "rimraf": "^2.6.3", - "signal-exit": "^3.0.2", - "spawn-wrap": "^1.4.2", - "test-exclude": "^5.2.3", - "uuid": "^3.3.2", - "yargs": "^13.2.2", - "yargs-parser": "^13.0.0" - }, - "dependencies": { - "ansi-regex": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", - "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==" - }, - "camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==" - }, - "cliui": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-5.0.0.tgz", - "integrity": "sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA==", - "requires": { - "string-width": "^3.1.0", - "strip-ansi": "^5.2.0", - "wrap-ansi": "^5.1.0" - } - }, - "emoji-regex": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", - "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==" - }, - "esprima": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", - "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==" - }, - "find-cache-dir": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-2.1.0.tgz", - "integrity": "sha512-Tq6PixE0w/VMFfCgbONnkiQIVol/JJL7nRMi20fqzA4NRs9AfeqMGeRdPi3wIhYkxjeBaWh2rxwapn5Tu3IqOQ==", - "requires": { - "commondir": "^1.0.1", - "make-dir": "^2.0.0", - "pkg-dir": "^3.0.0" - } - }, - "find-up": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", - "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", - "requires": { - "locate-path": "^3.0.0" - } - }, - "is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=" - }, - "js-yaml": { - "version": "3.13.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.13.1.tgz", - "integrity": "sha512-YfbcO7jXDdyj0DGxYVSlSeQNHbD7XPWvrVWeVUujrQEoZzWJIRrCPoyk6kL6IAjAG2IolMK4T0hNUe0HOUs5Jw==", - "requires": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" - } - }, - "locate-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", - "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", - "requires": { - "p-locate": "^3.0.0", - "path-exists": "^3.0.0" - } - }, - "p-limit": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.2.2.tgz", - "integrity": "sha512-WGR+xHecKTr7EbUEhyLSh5Dube9JtdiG78ufaeLxTgpudf/20KqyMioIUZJAezlTIi6evxuoUs9YXc11cU+yzQ==", - "requires": { - "p-try": "^2.0.0" - } - }, - "p-locate": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", - "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", - "requires": { - "p-limit": "^2.0.0" - } - }, - "p-try": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", - "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==" - }, - "pkg-dir": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-3.0.0.tgz", - "integrity": "sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw==", - "requires": { - "find-up": "^3.0.0" - } - }, - "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==" - }, - "rimraf": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", - "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", - "requires": { - "glob": "^7.1.3" - } - }, - "string-width": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", - "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", - "requires": { - "emoji-regex": "^7.0.1", - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^5.1.0" - } - }, - "strip-ansi": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", - "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", - "requires": { - "ansi-regex": "^4.1.0" - } - }, - "yargs": { - "version": "13.3.0", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-13.3.0.tgz", - "integrity": "sha512-2eehun/8ALW8TLoIl7MVaRUrg+yCnenu8B4kBlRxj3GJGDKU1Og7sMXPNm1BYyM1DOJmTZ4YeN/Nwxv+8XJsUA==", - "requires": { - "cliui": "^5.0.0", - "find-up": "^3.0.0", - "get-caller-file": "^2.0.1", - "require-directory": "^2.1.1", - "require-main-filename": "^2.0.0", - "set-blocking": "^2.0.0", - "string-width": "^3.0.0", - "which-module": "^2.0.0", - "y18n": "^4.0.0", - "yargs-parser": "^13.1.1" - } - }, - "yargs-parser": { - "version": "13.1.1", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.1.tgz", - "integrity": "sha512-oVAVsHz6uFrg3XQheFII8ESO2ssAf9luWuAd6Wexsu4F3OtIW0o8IribPXYrD4WC24LWtPrJlGy87y5udK+dxQ==", - "requires": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" - } - } - } - }, - "oauth": { - "version": "0.9.15", - "resolved": "https://registry.npmjs.org/oauth/-/oauth-0.9.15.tgz", - "integrity": "sha1-vR/vr2hslrdUda7VGWQS/2DPucE=" - }, - "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=", - "dev": true - }, - "object-copy": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/object-copy/-/object-copy-0.1.0.tgz", - "integrity": "sha1-fn2Fi3gb18mRpBupde04EnVOmYw=", - "requires": { - "copy-descriptor": "^0.1.0", - "define-property": "^0.2.5", - "kind-of": "^3.0.3" - }, - "dependencies": { - "define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "requires": { - "is-descriptor": "^0.1.0" - } - } - } - }, - "object-inspect": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.7.0.tgz", - "integrity": "sha512-a7pEHdh1xKIAgTySUGgLMx/xwDZskN1Ud6egYYN3EdRW4ZMPNEDUTF+hwy2LUC+Bl+SyLXANnwz/jyh/qutKUw==" - }, - "object-is": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/object-is/-/object-is-1.0.2.tgz", - "integrity": "sha512-Epah+btZd5wrrfjkJZq1AOB9O6OxUQto45hzFd7lXGrpHPGE0W1k+426yrZV+k6NJOzLNNW/nVsmZdIWsAqoOQ==" - }, - "object-keys": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", - "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==" - }, - "object-visit": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/object-visit/-/object-visit-1.0.1.tgz", - "integrity": "sha1-95xEk68MU3e1n+OdOV5BBC3QRbs=", - "requires": { - "isobject": "^3.0.0" - } - }, - "object.assign": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.0.tgz", - "integrity": "sha512-exHJeq6kBKj58mqGyTQ9DFvrZC/eR6OwxzoM9YRoGBqrXYonaFyGiFMuc9VZrXf7DarreEwMpurG3dd+CNyW5w==", - "requires": { - "define-properties": "^1.1.2", - "function-bind": "^1.1.1", - "has-symbols": "^1.0.0", - "object-keys": "^1.0.11" - } - }, - "object.getownpropertydescriptors": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.1.0.tgz", - "integrity": "sha512-Z53Oah9A3TdLoblT7VKJaTDdXdT+lQO+cNpKVnya5JDe9uLvzu1YyY1yFDFrcxrlRgWrEFH0jJtD/IbuwjcEVg==", - "requires": { - "define-properties": "^1.1.3", - "es-abstract": "^1.17.0-next.1" - } - }, - "object.pick": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz", - "integrity": "sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c=", - "requires": { - "isobject": "^3.0.1" - } - }, - "oidc-token-hash": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/oidc-token-hash/-/oidc-token-hash-3.0.2.tgz", - "integrity": "sha512-dTzp80/y/da+um+i+sOucNqiPpwRL7M/xPwj7pH1TFA2/bqQ+OK2sJahSXbemEoLtPkHcFLyhLhLWZa9yW5+RA==", - "dev": true - }, - "on-finished": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", - "integrity": "sha1-IPEzZIGwg811M3mSoWlxqi2QaUc=", - "dev": true, - "requires": { - "ee-first": "1.1.1" - } - }, - "on-headers": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/on-headers/-/on-headers-1.0.2.tgz", - "integrity": "sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA==" - }, - "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==", - "dev": true, - "optional": true, - "requires": { - "mimic-fn": "^2.1.0" - } - }, - "ono": { - "version": "4.0.11", - "resolved": "https://registry.npmjs.org/ono/-/ono-4.0.11.tgz", - "integrity": "sha512-jQ31cORBFE6td25deYeD80wxKBMj+zBmHTrVxnc6CKhx8gho6ipmWM5zj/oeoqioZ99yqBls9Z/9Nss7J26G2g==", - "dev": true, - "requires": { - "format-util": "^1.0.3" - } - }, - "openapi-enforcer": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/openapi-enforcer/-/openapi-enforcer-1.10.0.tgz", - "integrity": "sha512-WsBGfbZqBrkCdK1c2fEuMk9baHqB9WhS+y+SRT/pSDQhWG1aBvt3s61A0ChHilUTGW951qk7upGRO57eo9bxtA==", - "dev": true, - "requires": { - "axios": "^0.19.2", - "json-schema-ref-parser": "^6.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==" - }, - "js-yaml": { - "version": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", - "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", - "requires": { - "argparse": "^2.0.1" - } - } - } - }, - "openid-client": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/openid-client/-/openid-client-2.2.1.tgz", - "integrity": "sha512-7UOMZeEyCkTrpKLfWP8O7Rv6LATtKQGIghfIbf7t94CfxNJjMOek2s90wm086s7F5Go903AAm9qTxL9WqKV8Tw==", - "dev": true, - "requires": { - "base64url": "^3.0.0", - "got": "^8.3.1", - "lodash": "^4.17.10", - "lru-cache": "^4.1.3", - "node-jose": "^1.0.0", - "oidc-token-hash": "^3.0.1", - "p-any": "^1.1.0", - "uuid": "^3.2.1" - } - }, - "opentype.js": { - "version": "0.7.3", - "resolved": "https://registry.npmjs.org/opentype.js/-/opentype.js-0.7.3.tgz", - "integrity": "sha1-QPuM4Yv9YOdESO/f5EKDQJg5eqs=", - "dev": true, - "requires": { - "tiny-inflate": "^1.0.2" - } - }, - "optional-require": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/optional-require/-/optional-require-1.0.3.tgz", - "integrity": "sha512-RV2Zp2MY2aeYK5G+B/Sps8lW5NHAzE5QClbFP15j+PWmP+T9PxlJXBOOLoSAdgwFvS4t0aMR4vpedMkbHfh0nA==" - }, - "optionator": { - "version": "0.8.3", - "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.3.tgz", - "integrity": "sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA==", - "requires": { - "deep-is": "~0.1.3", - "fast-levenshtein": "~2.0.6", - "levn": "~0.3.0", - "prelude-ls": "~1.1.2", - "type-check": "~0.3.2", - "word-wrap": "~1.2.3" - } - }, - "os": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/os/-/os-0.1.1.tgz", - "integrity": "sha1-IIhF6J4ZOtTZcUdLk5R3NqVtE/M=" - }, - "os-homedir": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", - "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=" - }, - "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=" - }, - "p-any": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/p-any/-/p-any-1.1.0.tgz", - "integrity": "sha512-Ef0tVa4CZ5pTAmKn+Cg3w8ABBXh+hHO1aV8281dKOoUHfX+3tjG2EaFcC+aZyagg9b4EYGsHEjz21DnEE8Og2g==", - "dev": true, - "requires": { - "p-some": "^2.0.0" - } - }, - "p-cancelable": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-0.4.1.tgz", - "integrity": "sha512-HNa1A8LvB1kie7cERyy21VNeHb2CWJJYqyyC2o3klWFfMGlFmWv2Z7sFgZH8ZiaYL95ydToKTFVXgMV/Os0bBQ==", - "dev": true - }, - "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-is-promise": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/p-is-promise/-/p-is-promise-1.1.0.tgz", - "integrity": "sha1-nJRWmJ6fZYgBewQ01WCXZ1w9oF4=", - "dev": true - }, - "p-limit": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", - "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", - "requires": { - "p-try": "^1.0.0" - } - }, - "p-locate": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", - "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", - "requires": { - "p-limit": "^1.1.0" - } - }, - "p-some": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/p-some/-/p-some-2.0.1.tgz", - "integrity": "sha1-Zdh8ixVO289SIdFnd4ttLhUPbwY=", - "dev": true, - "requires": { - "aggregate-error": "^1.0.0" - } - }, - "p-timeout": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/p-timeout/-/p-timeout-2.0.1.tgz", - "integrity": "sha512-88em58dDVB/KzPEx1X0N3LwFfYZPyDc4B6eF38M1rk9VTZMbxXXgjugz8mmwpS9Ox4BDZ+t6t3QP5+/gazweIA==", - "dev": true, - "requires": { - "p-finally": "^1.0.0" - } - }, - "p-try": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", - "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=" - }, - "package-hash": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/package-hash/-/package-hash-3.0.0.tgz", - "integrity": "sha512-lOtmukMDVvtkL84rJHI7dpTYq+0rli8N2wlnqUcBuDWCfVhRUfOmnR9SsoHFMLpACvEV60dX7rd0rFaYDZI+FA==", - "requires": { - "graceful-fs": "^4.1.15", - "hasha": "^3.0.0", - "lodash.flattendeep": "^4.4.0", - "release-zalgo": "^1.0.0" - } - }, - "pako": { - "version": "0.2.9", - "resolved": "https://registry.npmjs.org/pako/-/pako-0.2.9.tgz", - "integrity": "sha1-8/dSL073gjSNqBYbrZ7P1Rv4OnU=" - }, - "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==", - "requires": { - "callsites": "^3.0.0" - } - }, - "parse-asn1": { - "version": "5.1.5", - "resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.5.tgz", - "integrity": "sha512-jkMYn1dcJqF6d5CpU689bq7w/b5ALS9ROVSpQDPrZsqqesUJii9qutvoT5ltGedNXMO2e16YUWIghG9KxaViTQ==", - "dev": true, - "requires": { - "asn1.js": "^4.0.0", - "browserify-aes": "^1.0.0", - "create-hash": "^1.1.0", - "evp_bytestokey": "^1.0.0", - "pbkdf2": "^3.0.3", - "safe-buffer": "^5.1.1" - }, - "dependencies": { - "asn1.js": { - "version": "4.10.1", - "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-4.10.1.tgz", - "integrity": "sha512-p32cOF5q0Zqs9uBiONKYLm6BClCoBCM5O9JfeUSlnQLBTxYdTK+pW+nXflm8UkKd2UYlEbYz5qEi0JuZR9ckSw==", - "dev": true, - "requires": { - "bn.js": "^4.0.0", - "inherits": "^2.0.1", - "minimalistic-assert": "^1.0.0" - } - }, - "bn.js": { - "version": "4.11.8", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.8.tgz", - "integrity": "sha512-ItfYfPLkWHUjckQCk8xC+LwxgK8NYcXywGigJgSwOP8Y2iyWT4f2vsZnoOXTTbo+o5yXmIUJ4gn5538SO5S3gA==", - "dev": true - } - } - }, - "parse-json": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", - "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=", - "requires": { - "error-ex": "^1.3.1", - "json-parse-better-errors": "^1.0.1" - } - }, - "parseurl": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", - "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==", - "dev": true - }, - "pascalcase": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/pascalcase/-/pascalcase-0.1.1.tgz", - "integrity": "sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ=" - }, - "passport": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/passport/-/passport-0.4.1.tgz", - "integrity": "sha512-IxXgZZs8d7uFSt3eqNjM9NQ3g3uQCW5avD8mRNoXV99Yig50vjuaez6dQK2qC0kVWPRTujxY0dWgGfT09adjYg==", - "dev": true, - "requires": { - "passport-strategy": "1.x.x", - "pause": "0.0.1" - } - }, - "passport-anonymous": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/passport-anonymous/-/passport-anonymous-1.0.1.tgz", - "integrity": "sha1-JB43J07ETft/bK0jS0HEODhrwRc=", - "dev": true, - "requires": { - "passport-strategy": "1.x.x" - } - }, - "passport-geoaxis-oauth20": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/passport-geoaxis-oauth20/-/passport-geoaxis-oauth20-0.1.1.tgz", - "integrity": "sha1-y28toxMhz3rwDR8gNGgvrcOBLlA=" - }, - "passport-google-oauth": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/passport-google-oauth/-/passport-google-oauth-2.0.0.tgz", - "integrity": "sha512-JKxZpBx6wBQXX1/a1s7VmdBgwOugohH+IxCy84aPTZNq/iIPX6u7Mqov1zY7MKRz3niFPol0KJz8zPLBoHKtYA==", - "requires": { - "passport-google-oauth1": "1.x.x", - "passport-google-oauth20": "2.x.x" - } - }, - "passport-google-oauth1": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/passport-google-oauth1/-/passport-google-oauth1-1.0.0.tgz", - "integrity": "sha1-r3SoA99R7GRvZqRNgigr5vEI4Mw=", - "requires": { - "passport-oauth1": "1.x.x" - } - }, - "passport-google-oauth20": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/passport-google-oauth20/-/passport-google-oauth20-2.0.0.tgz", - "integrity": "sha512-KSk6IJ15RoxuGq7D1UKK/8qKhNfzbLeLrG3gkLZ7p4A6DBCcv7xpyQwuXtWdpyR0+E0mwkpjY1VfPOhxQrKzdQ==", - "requires": { - "passport-oauth2": "1.x.x" - } - }, - "passport-http-bearer": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/passport-http-bearer/-/passport-http-bearer-1.0.1.tgz", - "integrity": "sha1-FHRp6jZp4qhMYWfvmdu3fh8AmKg=", - "dev": true, - "requires": { - "passport-strategy": "1.x.x" - } - }, - "passport-ldapauth": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/passport-ldapauth/-/passport-ldapauth-2.1.3.tgz", - "integrity": "sha512-23n425UTasN6XhcXG0qQ0h0YrS/zfo8kNIEhSLfPsNpglhYhhQFfB1pmDc5RrH+Kiz5fKLkki5BpvkKHCwkixg==", - "dev": true, - "requires": { - "@types/node": "^10.12.26", - "@types/passport": "^1.0.0", - "ldapauth-fork": "^4.2.0", - "passport-strategy": "^1.0.0" - }, - "dependencies": { - "@types/node": { - "version": "10.17.17", - "resolved": "https://registry.npmjs.org/@types/node/-/node-10.17.17.tgz", - "integrity": "sha512-gpNnRnZP3VWzzj5k3qrpRC6Rk3H/uclhAVo1aIvwzK5p5cOrs9yEyQ8H/HBsBY0u5rrWxXEiVPQ0dEB6pkjE8Q==", - "dev": true - } - } - }, - "passport-local": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/passport-local/-/passport-local-1.0.0.tgz", - "integrity": "sha1-H+YyaMkudWBmJkN+O5BmYsFbpu4=", - "dev": true, - "requires": { - "passport-strategy": "1.x.x" - } - }, - "passport-oauth1": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/passport-oauth1/-/passport-oauth1-1.1.0.tgz", - "integrity": "sha1-p96YiiEfnPRoc3cTDqdN8ycwyRg=", - "requires": { - "oauth": "0.9.x", - "passport-strategy": "1.x.x", - "utils-merge": "1.x.x" - } - }, - "passport-oauth2": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/passport-oauth2/-/passport-oauth2-1.6.0.tgz", - "integrity": "sha512-emXPLqLcVEcLFR/QvQXZcwLmfK8e9CqvMgmOFJxcNT3okSFMtUbRRKpY20x5euD+01uHsjjCa07DYboEeLXYiw==", - "requires": { - "base64url": "3.x.x", - "oauth": "0.9.x", - "passport-strategy": "1.x.x", - "uid2": "0.0.x", - "utils-merge": "1.x.x" - } - }, - "passport-openidconnect": { - "version": "0.0.2", - "resolved": "https://registry.npmjs.org/passport-openidconnect/-/passport-openidconnect-0.0.2.tgz", - "integrity": "sha1-5Ij4vbOGyan9OckdWrjIgBVugVM=", - "dev": true, - "requires": { - "oauth": "0.9.x", - "passport-strategy": "1.x.x", - "request": "^2.75.0", - "webfinger": "0.4.x" - } - }, - "passport-saml": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/passport-saml/-/passport-saml-1.3.3.tgz", - "integrity": "sha512-54ecY/A6UEsyCehJws6a+J6THvwtYnGl9cnAUxx5DjsuKgZrDs0tSy58K4hCk1XG/LOcdQSF1TR3xlRXgTULhA==", - "dev": true, - "requires": { - "debug": "^3.1.0", - "passport-strategy": "*", - "q": "^1.5.0", - "xml-crypto": "^1.4.0", - "xml-encryption": "^1.0.0", - "xml2js": "0.4.x", - "xmlbuilder": "^11.0.0", - "xmldom": "0.1.x" - }, - "dependencies": { - "debug": { - "version": "3.2.6", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", - "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - }, - "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 - }, - "xml2js": { - "version": "0.4.23", - "resolved": "https://registry.npmjs.org/xml2js/-/xml2js-0.4.23.tgz", - "integrity": "sha512-ySPiMjM0+pLDftHgXY4By0uswI3SPKLDw/i3UXbnO8M/p28zqexCUoPmQFrYD+/1BzhGJSs2i1ERWKJAtiLrug==", - "dev": true, - "requires": { - "sax": ">=0.6.0", - "xmlbuilder": "~11.0.0" - } - } - } - }, - "passport-strategy": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/passport-strategy/-/passport-strategy-1.0.0.tgz", - "integrity": "sha1-tVOaqPwiWj0a0XlHbd8ja0QPUuQ=" - }, - "path-dirname": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/path-dirname/-/path-dirname-1.0.2.tgz", - "integrity": "sha1-zDPSTVJeCZpTiMAzbG4yuRYGCeA=" - }, - "path-exists": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", - "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=" - }, - "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-parse": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.6.tgz", - "integrity": "sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==" - }, - "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=", - "dev": true - }, - "path-type": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz", - "integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==", - "requires": { - "pify": "^3.0.0" - } - }, - "pathval": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/pathval/-/pathval-1.1.0.tgz", - "integrity": "sha1-uULm1L3mUwBe9rcTYd74cn0GReA=" - }, - "pause": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/pause/-/pause-0.0.1.tgz", - "integrity": "sha1-HUCLP9t2kjuVQ9lvtMnf1TXZy10=", - "dev": true - }, - "pause-stream": { - "version": "0.0.11", - "resolved": "https://registry.npmjs.org/pause-stream/-/pause-stream-0.0.11.tgz", - "integrity": "sha1-/lo0sMvOErWqaitAPuLnO2AvFEU=", - "dev": true, - "requires": { - "through": "~2.3" - } - }, - "pbkdf2": { - "version": "3.0.17", - "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.0.17.tgz", - "integrity": "sha512-U/il5MsrZp7mGg3mSQfn742na2T+1/vHDCG5/iTI3X9MKUuYUZVLQhyRsg06mCgDBTd57TxzgZt7P+fYfjRLtA==", - "dev": true, - "requires": { - "create-hash": "^1.1.2", - "create-hmac": "^1.1.4", - "ripemd160": "^2.0.1", - "safe-buffer": "^5.0.1", - "sha.js": "^2.4.8" - } - }, - "peek-readable": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/peek-readable/-/peek-readable-4.0.1.tgz", - "integrity": "sha512-7qmhptnR0WMSpxT5rMHG9bW/mYSR1uqaPFj2MHvT+y/aOUu6msJijpKt5SkTDKySwg65OWG2JwTMBlgcbwMHrQ==", - "dev": true - }, - "pem-jwk": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/pem-jwk/-/pem-jwk-1.5.1.tgz", - "integrity": "sha1-eoY3/S9nqCflfAxC4cI8P9Us+wE=", - "dev": true, - "requires": { - "asn1.js": "1.0.3" - }, - "dependencies": { - "asn1.js": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-1.0.3.tgz", - "integrity": "sha1-KBuj7B8kSP52X5Kk7s+IP+E2S1Q=", - "dev": true, - "requires": { - "bn.js": "^1.0.0", - "inherits": "^2.0.1", - "minimalistic-assert": "^1.0.0" - } - }, - "bn.js": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-1.3.0.tgz", - "integrity": "sha1-DbTL+W+PI7dC9by50ap6mZSgXoM=", - "dev": true, - "optional": true - } - } - }, - "pem2jwk": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/pem2jwk/-/pem2jwk-1.0.1.tgz", - "integrity": "sha512-OAPoqXBz01G4yL3tAHvLiC2TCIVKuzsg90zpw23GWGDz6i9Wsf1M8n1mcVmIAX2pG3JF0Oi8MehDr8PVL3K0QA==", - "dev": true, - "requires": { - "elliptic": "^6.4.0", - "parse-asn1": "^5.1.0" - } - }, - "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.2.2", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.2.2.tgz", - "integrity": "sha512-q0M/9eZHzmr0AulXyPwNfZjtwZ/RBZlbN3K3CErVrk50T2ASYI7Bye0EvekFY3IP1Nt2DHu0re+V2ZHIpMkuWg==" - }, - "pidtree": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/pidtree/-/pidtree-0.3.0.tgz", - "integrity": "sha512-9CT4NFlDcosssyg8KVFltgokyKZIFjoBxw8CTGy+5F38Y1eQWrt8tRayiUOXE+zVKQnYu5BR8JjCtvK3BcnBhg==" - }, - "pify": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", - "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=" - }, - "pkginfo": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/pkginfo/-/pkginfo-0.3.1.tgz", - "integrity": "sha1-Wyn2qB9wcXFC4J52W76rl7T4HiE=", - "dev": true - }, - "polygon-clipping": { - "version": "0.15.3", - "resolved": "https://registry.npmjs.org/polygon-clipping/-/polygon-clipping-0.15.3.tgz", - "integrity": "sha512-ho0Xx5DLkgxRx/+n4O74XyJ67DcyN3Tu9bGYKsnTukGAW6ssnuak6Mwcyb1wHy9MZc9xsUWqIoiazkZB5weECg==", - "dev": true, - "requires": { - "splaytree": "^3.1.0" - } - }, - "ports": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/ports/-/ports-1.1.0.tgz", - "integrity": "sha1-twGqKF6V2ujJbNonUhdySh9/bGA=", - "dev": true - }, - "posix-character-classes": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/posix-character-classes/-/posix-character-classes-0.1.1.tgz", - "integrity": "sha1-AerA/jta9xoqbAL+q7jB/vfgDqs=" - }, - "prebuild-install": { - "version": "6.1.4", - "resolved": "https://registry.npmjs.org/prebuild-install/-/prebuild-install-6.1.4.tgz", - "integrity": "sha512-Z4vpywnK1lBg+zdPCVCsKq0xO66eEV9rWo2zrROGGiRS4JtueBOdlB1FnY8lcy7JsUud/Q3ijUxyWN26Ika0vQ==", - "dev": true, - "optional": true, - "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" - }, - "dependencies": { - "minimist": { - "version": "1.2.6", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.6.tgz", - "integrity": "sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==", - "dev": true, - "optional": true - } - } - }, - "precond": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/precond/-/precond-0.2.3.tgz", - "integrity": "sha1-qpWRvKokkj8eD0hJ0kD0fvwQdaw=", - "dev": true - }, - "prelude-ls": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz", - "integrity": "sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=" - }, - "prepend-http": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-2.0.0.tgz", - "integrity": "sha1-6SQ0v6XqjBn0HN/UAddBo8gZ2Jc=", - "dev": true - }, - "prettier": { - "version": "1.19.1", - "resolved": "https://registry.npmjs.org/prettier/-/prettier-1.19.1.tgz", - "integrity": "sha512-s7PoyDv/II1ObgQunCbB9PdLmUcBZcnWOcxDh7O0N/UwDEsHyqkW+Qh28jW+mVuCdx7gLB0BotYI1Y6uI9iyew==" - }, - "prettier-linter-helpers": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/prettier-linter-helpers/-/prettier-linter-helpers-1.0.0.tgz", - "integrity": "sha512-GbK2cP9nraSSUF9N2XwUwqfzlAFlMNYYl+ShE/V+H8a9uNl/oUqB1w2EL54Jh0OlyRSd8RfWYJ3coVS4TROP2w==", - "requires": { - "fast-diff": "^1.1.2" - } - }, - "printj": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/printj/-/printj-1.3.1.tgz", - "integrity": "sha512-GA3TdL8szPK4AQ2YnOe/b+Y1jUFwmmGMMK/qbY7VcE3Z7FU8JstbKiKRzO6CIiAKPhTO8m01NoQ0V5f3jc4OGg==", - "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": "1.0.7", - "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-1.0.7.tgz", - "integrity": "sha1-FQ4gt1ZZCtP5EJPyWk8q2L/zC6M=", - "dev": true - }, - "progress": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz", - "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==" - }, - "proj4": { - "version": "2.7.2", - "resolved": "https://registry.npmjs.org/proj4/-/proj4-2.7.2.tgz", - "integrity": "sha512-x/EboBmIq48a9FED0Z9zWCXkd8VIpXHLsyEXljGtsnzeztC41bFjPjJ0S//wBbNLDnDYRe0e6c3FSSiqMCebDA==", - "dev": true, - "requires": { - "mgrs": "1.0.0", - "wkt-parser": "^1.2.4" - } - }, - "promise": { - "version": "7.3.1", - "resolved": "https://registry.npmjs.org/promise/-/promise-7.3.1.tgz", - "integrity": "sha512-nolQXZ/4L+bP/UGlkfaIujX9BKxGwmQ9OT4mOt5yvy8iK1h3wqTEJCijzGANTCCl9nWjY41juyAn2K3Q1hLLTg==", - "dev": true, - "requires": { - "asap": "~2.0.3" - } - }, - "propagate": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/propagate/-/propagate-2.0.1.tgz", - "integrity": "sha512-vGrhOavPSTz4QVNuBNdcNXePNdNMaO1xj9yBeH1ScQPjk/rhg9sSlCXPhMkFuaNNW/syTvYqsnbIJxMBfRbbag==" - }, - "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==", - "dev": true, - "requires": { - "forwarded": "0.2.0", - "ipaddr.js": "1.9.1" - } - }, - "proxyquire": { - "version": "https://registry.npmjs.org/proxyquire/-/proxyquire-2.1.0.tgz", - "integrity": "sha512-kptdFArCfGRtQFv3Qwjr10lwbEV0TBJYvfqzhwucyfEXqVgmnAkyEw/S3FYzR5HI9i5QOq4rcqQjZ6AlknlCDQ==", - "requires": { - "fill-keys": "^1.0.2", - "module-not-found-error": "^1.0.0", - "resolve": "~1.8.1" - }, - "dependencies": { - "resolve": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.8.1.tgz", - "integrity": "sha512-AicPrAC7Qu1JxPCZ9ZgCZlY35QgFnNqc+0LtbRNxnVw4TXvjQ72wnuL9JQcEBgXkI9JM8MsT9kaQoHcpCRJOYA==", - "requires": { - "path-parse": "^1.0.5" - } - } - } - }, - "pseudomap": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", - "integrity": "sha1-8FKijacOYYkX7wqKw0wa5aaChrM=" - }, - "psl": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/psl/-/psl-1.7.0.tgz", - "integrity": "sha512-5NsSEDv8zY70ScRnOTn7bK7eanl2MvFrOrS/R6x+dBt5g1ghnj9Zv90kO8GwT8gxcu2ANyFprnFYB85IogIJOQ==" - }, - "pug": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/pug/-/pug-2.0.4.tgz", - "integrity": "sha512-XhoaDlvi6NIzL49nu094R2NA6P37ijtgMDuWE+ofekDChvfKnzFal60bhSdiy8y2PBO6fmz3oMEIcfpBVRUdvw==", - "dev": true, - "requires": { - "pug-code-gen": "^2.0.2", - "pug-filters": "^3.1.1", - "pug-lexer": "^4.1.0", - "pug-linker": "^3.0.6", - "pug-load": "^2.0.12", - "pug-parser": "^5.0.1", - "pug-runtime": "^2.0.5", - "pug-strip-comments": "^1.0.4" - } - }, - "pug-attrs": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/pug-attrs/-/pug-attrs-2.0.4.tgz", - "integrity": "sha512-TaZ4Z2TWUPDJcV3wjU3RtUXMrd3kM4Wzjbe3EWnSsZPsJ3LDI0F3yCnf2/W7PPFF+edUFQ0HgDL1IoxSz5K8EQ==", - "dev": true, - "requires": { - "constantinople": "^3.0.1", - "js-stringify": "^1.0.1", - "pug-runtime": "^2.0.5" - } - }, - "pug-code-gen": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/pug-code-gen/-/pug-code-gen-2.0.2.tgz", - "integrity": "sha512-kROFWv/AHx/9CRgoGJeRSm+4mLWchbgpRzTEn8XCiwwOy6Vh0gAClS8Vh5TEJ9DBjaP8wCjS3J6HKsEsYdvaCw==", - "dev": true, - "requires": { - "constantinople": "^3.1.2", - "doctypes": "^1.1.0", - "js-stringify": "^1.0.1", - "pug-attrs": "^2.0.4", - "pug-error": "^1.3.3", - "pug-runtime": "^2.0.5", - "void-elements": "^2.0.1", - "with": "^5.0.0" - } - }, - "pug-error": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/pug-error/-/pug-error-1.3.3.tgz", - "integrity": "sha512-qE3YhESP2mRAWMFJgKdtT5D7ckThRScXRwkfo+Erqga7dyJdY3ZquspprMCj/9sJ2ijm5hXFWQE/A3l4poMWiQ==", - "dev": true - }, - "pug-filters": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/pug-filters/-/pug-filters-3.1.1.tgz", - "integrity": "sha512-lFfjNyGEyVWC4BwX0WyvkoWLapI5xHSM3xZJFUhx4JM4XyyRdO8Aucc6pCygnqV2uSgJFaJWW3Ft1wCWSoQkQg==", - "dev": true, - "requires": { - "clean-css": "^4.1.11", - "constantinople": "^3.0.1", - "jstransformer": "1.0.0", - "pug-error": "^1.3.3", - "pug-walk": "^1.1.8", - "resolve": "^1.1.6", - "uglify-js": "^2.6.1" - } - }, - "pug-lexer": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/pug-lexer/-/pug-lexer-4.1.0.tgz", - "integrity": "sha512-i55yzEBtjm0mlplW4LoANq7k3S8gDdfC6+LThGEvsK4FuobcKfDAwt6V4jKPH9RtiE3a2Akfg5UpafZ1OksaPA==", - "dev": true, - "requires": { - "character-parser": "^2.1.1", - "is-expression": "^3.0.0", - "pug-error": "^1.3.3" - } - }, - "pug-linker": { - "version": "3.0.6", - "resolved": "https://registry.npmjs.org/pug-linker/-/pug-linker-3.0.6.tgz", - "integrity": "sha512-bagfuHttfQOpANGy1Y6NJ+0mNb7dD2MswFG2ZKj22s8g0wVsojpRlqveEQHmgXXcfROB2RT6oqbPYr9EN2ZWzg==", - "dev": true, - "requires": { - "pug-error": "^1.3.3", - "pug-walk": "^1.1.8" - } - }, - "pug-load": { - "version": "2.0.12", - "resolved": "https://registry.npmjs.org/pug-load/-/pug-load-2.0.12.tgz", - "integrity": "sha512-UqpgGpyyXRYgJs/X60sE6SIf8UBsmcHYKNaOccyVLEuT6OPBIMo6xMPhoJnqtB3Q3BbO4Z3Bjz5qDsUWh4rXsg==", - "dev": true, - "requires": { - "object-assign": "^4.1.0", - "pug-walk": "^1.1.8" - } - }, - "pug-parser": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/pug-parser/-/pug-parser-5.0.1.tgz", - "integrity": "sha512-nGHqK+w07p5/PsPIyzkTQfzlYfuqoiGjaoqHv1LjOv2ZLXmGX1O+4Vcvps+P4LhxZ3drYSljjq4b+Naid126wA==", - "dev": true, - "requires": { - "pug-error": "^1.3.3", - "token-stream": "0.0.1" - } - }, - "pug-runtime": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/pug-runtime/-/pug-runtime-2.0.5.tgz", - "integrity": "sha512-P+rXKn9un4fQY77wtpcuFyvFaBww7/91f3jHa154qU26qFAnOe6SW1CbIDcxiG5lLK9HazYrMCCuDvNgDQNptw==", - "dev": true - }, - "pug-strip-comments": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/pug-strip-comments/-/pug-strip-comments-1.0.4.tgz", - "integrity": "sha512-i5j/9CS4yFhSxHp5iKPHwigaig/VV9g+FgReLJWWHEHbvKsbqL0oP/K5ubuLco6Wu3Kan5p7u7qk8A4oLLh6vw==", - "dev": true, - "requires": { - "pug-error": "^1.3.3" - } - }, - "pug-walk": { - "version": "1.1.8", - "resolved": "https://registry.npmjs.org/pug-walk/-/pug-walk-1.1.8.tgz", - "integrity": "sha512-GMu3M5nUL3fju4/egXwZO0XLi6fW/K3T3VTgFQ14GxNi8btlxgT5qZL//JwZFm/2Fa64J/PNS8AZeys3wiMkVA==", - "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==", - "dev": true, - "optional": true, - "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==" - }, - "q": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/q/-/q-1.5.1.tgz", - "integrity": "sha1-fjL3W0E4EpHQRhHxvxQQmsAGUdc=", - "dev": true - }, - "qs": { - "version": "6.5.2", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz", - "integrity": "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==" - }, - "query-string": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/query-string/-/query-string-5.1.1.tgz", - "integrity": "sha512-gjWOsm2SoGlgLEdAGt7a6slVOk9mGiXmPFMqrEhLQ68rhQuBnpfs3+EmlvqKyxnCo9/PPlF+9MtY02S1aFg+Jw==", - "dev": true, - "requires": { - "decode-uri-component": "^0.2.0", - "object-assign": "^4.1.0", - "strict-uri-encode": "^1.0.0" - } - }, - "queue": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/queue/-/queue-6.0.1.tgz", - "integrity": "sha512-AJBQabRCCNr9ANq8v77RJEv73DPbn55cdTb+Giq4X0AVnNVZvMHlYp7XlQiN+1npCZj1DuSmaA2hYVUUDgxFDg==", - "dev": true, - "requires": { - "inherits": "~2.0.3" - } - }, - "quick-lru": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-1.1.0.tgz", - "integrity": "sha1-Q2CxfGETatOAeDl/8RQW4Ybc+7g=" - }, - "quickselect": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/quickselect/-/quickselect-2.0.0.tgz", - "integrity": "sha512-RKJ22hX8mHe3Y6wH/N3wCM6BWtjaxIyyUIkpHOvfFnxdI4yD4tBXEBKSbriGujF6jnSVkJrffuo6vxACiSSxIw==", - "dev": true - }, - "randexp": { - "version": "0.5.3", - "resolved": "https://registry.npmjs.org/randexp/-/randexp-0.5.3.tgz", - "integrity": "sha512-U+5l2KrcMNOUPYvazA3h5ekF80FHTUG+87SEAmHZmolh1M+i/WyTCxVzmi+tidIa1tM4BSe8g2Y/D3loWDjj+w==", - "requires": { - "drange": "^1.0.2" - } - }, - "random-bytes": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/random-bytes/-/random-bytes-1.0.0.tgz", - "integrity": "sha1-T2ih3Arli9P7lYSMMDJNt11kNgs=", - "dev": true - }, - "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==", - "dev": true - }, - "raw-body": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.3.3.tgz", - "integrity": "sha512-9esiElv1BrZoI3rCDuOuKCBRbuApGGaDPQfjSflGxdy4oyzqghxu6klEkkVIvBje+FF0BX9coEv8KqW6X/7njw==", - "dev": true, - "requires": { - "bytes": "3.0.0", - "http-errors": "1.6.3", - "iconv-lite": "0.4.23", - "unpipe": "1.0.0" - }, - "dependencies": { - "iconv-lite": { - "version": "0.4.23", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.23.tgz", - "integrity": "sha512-neyTUVFtahjf0mB3dZT77u+8O0QB89jFdnBkd5P1JgYPbPaia3gXXOVL2fq8VyU2gMMD7SaN7QukTB/pmXYvDA==", - "dev": true, - "requires": { - "safer-buffer": ">= 2.1.2 < 3" - } - } - } - }, - "rbush": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/rbush/-/rbush-3.0.1.tgz", - "integrity": "sha512-XRaVO0YecOpEuIvbhbpTrZgoiI6xBlz6hnlr6EHhd+0x9ase6EmeN+hdwwUaJvLcsFFQ8iWVF1GAK1yB0BWi0w==", - "dev": true, - "requires": { - "quickselect": "^2.0.0" - } - }, - "rc": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", - "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==", - "dev": true, - "optional": true, - "requires": { - "deep-extend": "^0.6.0", - "ini": "~1.3.0", - "minimist": "^1.2.0", - "strip-json-comments": "~2.0.1" - } - }, - "react-zlib-js": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/react-zlib-js/-/react-zlib-js-1.0.5.tgz", - "integrity": "sha512-TLcPdmqhIl+ylwOwlfm1WUuI7NVvhAv3L74d1AabhjyaAbmLOROTA/Q4EQ/UMCFCOjIkVim9fT3UZOQSFk/mlA==" - }, - "read-pkg": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-3.0.0.tgz", - "integrity": "sha1-nLxoaXj+5l0WwA4rGcI3/Pbjg4k=", - "requires": { - "load-json-file": "^4.0.0", - "normalize-package-data": "^2.3.2", - "path-type": "^3.0.0" - } - }, - "read-pkg-up": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-3.0.0.tgz", - "integrity": "sha1-PtSWaF26D4/hGNBpHcUfSh/5bwc=", - "requires": { - "find-up": "^2.0.0", - "read-pkg": "^3.0.0" - } - }, - "readable-stream": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.0.6.tgz", - "integrity": "sha1-j5A0HmilPMySh4jaz80Rs265t44=", - "dev": true, - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.1", - "isarray": "~1.0.0", - "process-nextick-args": "~1.0.6", - "string_decoder": "~0.10.x", - "util-deprecate": "~1.0.1" - } - }, - "readable-web-to-node-stream": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/readable-web-to-node-stream/-/readable-web-to-node-stream-3.0.2.tgz", - "integrity": "sha512-ePeK6cc1EcKLEhJFt/AebMCLL+GgSKhuygrZ/GLaKZYEecIgIECf4UaUuaByiGtzckwR4ain9VzUh95T1exYGw==", - "dev": true, - "requires": { - "readable-stream": "^3.6.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==", - "dev": true, - "requires": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - } - }, - "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==", - "dev": true - }, - "string_decoder": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", - "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", - "dev": true, - "requires": { - "safe-buffer": "~5.2.0" - } - } - } - }, - "readdir-glob": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/readdir-glob/-/readdir-glob-1.1.1.tgz", - "integrity": "sha512-91/k1EzZwDx6HbERR+zucygRFfiPl2zkIYZtv3Jjr6Mn7SkKcVct8aVO+sSRiGMc6fLf72du3d92/uY63YPdEA==", - "dev": true, - "requires": { - "minimatch": "^3.0.4" - } - }, - "readdirp": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.2.0.tgz", - "integrity": "sha512-crk4Qu3pmXwgxdSgGhgA/eXiJAPQiX4GMOZZMXnqKxHX7TaoL+3gQVo/WeuAiogr07DpnfjIMpXXa+PAIvwPGQ==", - "requires": { - "picomatch": "^2.0.4" - } - }, - "redent": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/redent/-/redent-2.0.0.tgz", - "integrity": "sha1-wbIAe0LVfrE4kHmzyDM2OdXhzKo=", - "requires": { - "indent-string": "^3.0.0", - "strip-indent": "^2.0.0" - } - }, - "regenerator-runtime": { - "version": "0.11.1", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz", - "integrity": "sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg==", - "dev": true - }, - "regex-not": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/regex-not/-/regex-not-1.0.2.tgz", - "integrity": "sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A==", - "requires": { - "extend-shallow": "^3.0.2", - "safe-regex": "^1.1.0" - } - }, - "regexp-clone": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/regexp-clone/-/regexp-clone-0.0.1.tgz", - "integrity": "sha1-p8LgmJH9vzj7sQ03b7cwA+aKxYk=", - "dev": true - }, - "regexp.prototype.flags": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.3.0.tgz", - "integrity": "sha512-2+Q0C5g951OlYlJz6yu5/M33IcsESLlLfsyIaLJaG4FA2r4yP8MvVMJUUP/fVBkSpbbbZlS5gynbEWLipiiXiQ==", - "requires": { - "define-properties": "^1.1.3", - "es-abstract": "^1.17.0-next.1" - } - }, - "regexpp": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-3.0.0.tgz", - "integrity": "sha512-Z+hNr7RAVWxznLPuA7DIh8UNX1j9CDrUQxskw9IrBE1Dxue2lyXT+shqEIeLUjrokxIP8CMy1WkjgG3rTsd5/g==" - }, - "release-zalgo": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/release-zalgo/-/release-zalgo-1.0.0.tgz", - "integrity": "sha1-CXALflB0Mpc5Mw5TXFqQ+2eFFzA=", - "requires": { - "es6-error": "^4.0.1" - } - }, - "repeat-element": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.3.tgz", - "integrity": "sha512-ahGq0ZnV5m5XtZLMb+vP76kcAM5nkLqk0lpqAuojSKGgQtn4eRi4ZZGm2olo2zKFH+sMsWaqOCW1dqAnOru72g==" - }, - "repeat-string": { - "version": "1.6.1", - "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz", - "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=" - }, - "reproject": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/reproject/-/reproject-1.2.5.tgz", - "integrity": "sha512-cTH78fi1uuv5gzW/GVepO4LbCvOUhO0X2BEyyvrKkYb4KPRmDPs7cZnIxemHPUIch/CoSI8MPLmXRHZFSHjbKw==", - "dev": true, - "requires": { - "concat-stream": "^2.0.0", - "event-stream": "^4.0.0", - "geojson-stream": "0.1.0", - "minimist": "^1.2.0", - "proj4": "^2.4.4" - }, - "dependencies": { - "concat-stream": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-2.0.0.tgz", - "integrity": "sha512-MWufYdFw53ccGjCA+Ol7XJYpAlW6/prSMzuPOTRnJGcGzuhLn4Scrz7qf6o8bROZ514ltazcIFJZevcfbo0x7A==", - "dev": true, - "requires": { - "buffer-from": "^1.0.0", - "inherits": "^2.0.3", - "readable-stream": "^3.0.2", - "typedarray": "^0.0.6" - } - }, - "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==", - "dev": true, - "requires": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - } - }, - "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==", - "dev": true - }, - "string_decoder": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", - "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", - "dev": true, - "requires": { - "safe-buffer": "~5.2.0" - } - } - } - }, - "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" - } - }, - "require-directory": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", - "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=" - }, - "require-main-filename": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz", - "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==" - }, - "require_optional": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/require_optional/-/require_optional-1.0.1.tgz", - "integrity": "sha512-qhM/y57enGWHAe3v/NcwML6a3/vfESLe/sGM2dII+gEO0BpKRUkWZow/tyloNqJyN6kXSl3RyyM8Ll5D/sJP8g==", - "dev": true, - "requires": { - "resolve-from": "^2.0.0", - "semver": "^5.1.0" - } - }, - "resolve": { - "version": "1.15.1", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.15.1.tgz", - "integrity": "sha512-84oo6ZTtoTUpjgNEr5SJyzQhzL72gaRodsSfyxC/AXRvwu0Yse9H8eF9IpGo7b8YetZhlI6v7ZQ6bKBFV/6S7w==", - "requires": { - "path-parse": "^1.0.6" - } + "tslib": "^2.5.0" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/url-parser": { + "version": "3.306.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/url-parser/-/url-parser-3.306.0.tgz", + "integrity": "sha512-mhyOjtycZgxKYo2CoDhDQONuRd5TLfEwmyGWVgFrfubF0LejQ3rkBRLC5zT9TBZ8RJHNlqU2oGdsZCy3JV6Rlw==", + "dev": true, + "optional": true, + "dependencies": { + "@aws-sdk/querystring-parser": "3.306.0", + "@aws-sdk/types": "3.306.0", + "tslib": "^2.5.0" + } + }, + "node_modules/@aws-sdk/util-base64": { + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-base64/-/util-base64-3.303.0.tgz", + "integrity": "sha512-oj+p/GHHPcZEKjiiOHU/CyNQeh8i+8dfMMzU+VGdoK5jHaVG8h2b+V7GPf7I4wDkG2ySCK5b5Jw5NUHwdTJ13Q==", + "dev": true, + "optional": true, + "dependencies": { + "@aws-sdk/util-buffer-from": "3.303.0", + "tslib": "^2.5.0" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/util-body-length-browser": { + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-body-length-browser/-/util-body-length-browser-3.303.0.tgz", + "integrity": "sha512-T643m0pKzgjAvPFy4W8zL+aszG3T22U8hb6stlMvT0z++Smv8QfIvkIkXjWyH2KlOt5GKliHwdOv8SAi0FSMJQ==", + "dev": true, + "optional": true, + "dependencies": { + "tslib": "^2.5.0" + } + }, + "node_modules/@aws-sdk/util-body-length-node": { + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-body-length-node/-/util-body-length-node-3.303.0.tgz", + "integrity": "sha512-/hS8z6e18Le60hJr2TUIFoUjUiAsnQsuDn6DxX74GXhMOHeSwZDJ9jHF39quYkNMmAE37GrVH4MI9vE0pN27qw==", + "dev": true, + "optional": true, + "dependencies": { + "tslib": "^2.5.0" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/util-buffer-from": { + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-buffer-from/-/util-buffer-from-3.303.0.tgz", + "integrity": "sha512-hUU+NW+SW6RNojtAKnnmz+tDShVKlEx2YsS4a5fSfrKRUes+zWz10cxVX0RQfysd3R6tdSHhbjsSj8eCIybheg==", + "dev": true, + "optional": true, + "dependencies": { + "@aws-sdk/is-array-buffer": "3.303.0", + "tslib": "^2.5.0" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/util-config-provider": { + "version": "3.295.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-config-provider/-/util-config-provider-3.295.0.tgz", + "integrity": "sha512-/5Dl1aV2yI8YQjqwmg4RTnl/E9NmNsx7HIwBZt+dTcOrM0LMUwczQBFFcLyqCj/qv5y+VsvLoAAA/OiBT7hb3w==", + "dev": true, + "optional": true, + "dependencies": { + "tslib": "^2.5.0" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/util-defaults-mode-browser": { + "version": "3.309.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-defaults-mode-browser/-/util-defaults-mode-browser-3.309.0.tgz", + "integrity": "sha512-KTmoR24PhUCT9A8/f5rb7MQvzXqGJY7/VnYxNaQ6AzJZfZ3y3UYfvuJR9LRjWn+zQDy1lnTyjSh5eokf2VBOoQ==", + "dev": true, + "optional": true, + "dependencies": { + "@aws-sdk/property-provider": "3.306.0", + "@aws-sdk/types": "3.306.0", + "bowser": "^2.11.0", + "tslib": "^2.5.0" + }, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@aws-sdk/util-defaults-mode-node": { + "version": "3.309.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-defaults-mode-node/-/util-defaults-mode-node-3.309.0.tgz", + "integrity": "sha512-3YIEWY6O5kyW6dbV+1jWdlsqjEN76sxY62841v5A9Vr/MGLowhm6YYW8MYWPye9RABl9osTs0NCeL2p6Re+IPw==", + "dev": true, + "optional": true, + "dependencies": { + "@aws-sdk/config-resolver": "3.306.0", + "@aws-sdk/credential-provider-imds": "3.306.0", + "@aws-sdk/node-config-provider": "3.306.0", + "@aws-sdk/property-provider": "3.306.0", + "@aws-sdk/types": "3.306.0", + "tslib": "^2.5.0" + }, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@aws-sdk/util-endpoints": { + "version": "3.306.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-endpoints/-/util-endpoints-3.306.0.tgz", + "integrity": "sha512-aPTqU4VGhec8LDhKZrfA3/sBHTYRa0favKEo8aEa/vIZJTNBAFlUhvr5z7peAr8gBOtZZcElzX8PiK3jjn3ILw==", + "dev": true, + "optional": true, + "dependencies": { + "@aws-sdk/types": "3.306.0", + "tslib": "^2.5.0" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/util-hex-encoding": { + "version": "3.295.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-hex-encoding/-/util-hex-encoding-3.295.0.tgz", + "integrity": "sha512-XJcoVo41kHzhe28PBm/rqt5mdCp8R6abwiW9ug1dA6FOoPUO8kBUxDv6xaOmA2hfRvd2ocFfBXaUCBqUowkGcQ==", + "dev": true, + "optional": true, + "dependencies": { + "tslib": "^2.5.0" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/util-locate-window": { + "version": "3.295.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-locate-window/-/util-locate-window-3.295.0.tgz", + "integrity": "sha512-d/s+zhUx5Kh4l/ecMP/TBjzp1GR/g89Q4nWH6+wH5WgdHsK+LG+vmsk6mVNuP/8wsCofYG4NBqp5Ulbztbm9QA==", + "dev": true, + "optional": true, + "dependencies": { + "tslib": "^2.5.0" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/util-middleware": { + "version": "3.306.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-middleware/-/util-middleware-3.306.0.tgz", + "integrity": "sha512-14CSm1mTrfSNBGbkZu8vSjXYg7DUMfZc74IinOajcFtTswa/6SyiyhU9DK0a837qqwxSfFGpnE2thVeJIF/7FA==", + "dev": true, + "optional": true, + "dependencies": { + "tslib": "^2.5.0" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/util-retry": { + "version": "3.306.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-retry/-/util-retry-3.306.0.tgz", + "integrity": "sha512-zcgTEIehQAIAm4vBNWfXZpDNbIrDM095vZmpbozQwK/pfDqMGvq7j3r9atKuEGTtoomoGoYwj3x/KEhO6JXJLg==", + "dev": true, + "optional": true, + "dependencies": { + "@aws-sdk/service-error-classification": "3.306.0", + "tslib": "^2.5.0" + }, + "engines": { + "node": ">= 14.0.0" + } + }, + "node_modules/@aws-sdk/util-uri-escape": { + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-uri-escape/-/util-uri-escape-3.303.0.tgz", + "integrity": "sha512-N3ULNuHCL3QzAlCTY+XRRkRQTYCTU8RRuzFCJX0pDpz9t2K+tLT7DbxqupWGNFGl5Xlulf1Is14J3BP/Dx91rA==", + "dev": true, + "optional": true, + "dependencies": { + "tslib": "^2.5.0" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/util-user-agent-browser": { + "version": "3.306.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-browser/-/util-user-agent-browser-3.306.0.tgz", + "integrity": "sha512-uZAtpvCasUdWRlB/nEjN0gf6G7810hT50VyWjpd6mQW78myV8M5fu/R03UFAZ+D8fhqqIdzR/IXDY1QUGp8bCA==", + "dev": true, + "optional": true, + "dependencies": { + "@aws-sdk/types": "3.306.0", + "bowser": "^2.11.0", + "tslib": "^2.5.0" + } + }, + "node_modules/@aws-sdk/util-user-agent-node": { + "version": "3.306.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.306.0.tgz", + "integrity": "sha512-zLp9wIx7FZ0qFLimYW3lJ1uJM5gqxmmcQjNimUaUq/4a1caDkaiF/QeyyMFva+wIjyHRv22P5abUBjIEZrs5WA==", + "dev": true, + "optional": true, + "dependencies": { + "@aws-sdk/node-config-provider": "3.306.0", + "@aws-sdk/types": "3.306.0", + "tslib": "^2.5.0" + }, + "engines": { + "node": ">=14.0.0" + }, + "peerDependencies": { + "aws-crt": ">=1.0.0" + }, + "peerDependenciesMeta": { + "aws-crt": { + "optional": true + } + } + }, + "node_modules/@aws-sdk/util-utf8": { + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-utf8/-/util-utf8-3.303.0.tgz", + "integrity": "sha512-tZXVuMOIONPOuOGBs/XRdzxv6jUvTM620dRFFIHZwlGiW8bo0x0LlonrzDAJZA4e9ZwmxJIj8Ji13WVRBGvZWg==", + "dev": true, + "optional": true, + "dependencies": { + "@aws-sdk/util-buffer-from": "3.303.0", + "tslib": "^2.5.0" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/util-utf8-browser": { + "version": "3.259.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-utf8-browser/-/util-utf8-browser-3.259.0.tgz", + "integrity": "sha512-UvFa/vR+e19XookZF8RzFZBrw2EUkQWxiBW0yYQAhvk3C+QVGl0H3ouca8LDBlBfQKXwmW3huo/59H8rwb1wJw==", + "dev": true, + "optional": true, + "dependencies": { + "tslib": "^2.3.1" + } + }, + "node_modules/@babel/code-frame": { + "version": "7.18.6", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/highlight": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/compat-data": { + "version": "7.20.5", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/core": { + "version": "7.20.5", + "dev": true, + "license": "MIT", + "dependencies": { + "@ampproject/remapping": "^2.1.0", + "@babel/code-frame": "^7.18.6", + "@babel/generator": "^7.20.5", + "@babel/helper-compilation-targets": "^7.20.0", + "@babel/helper-module-transforms": "^7.20.2", + "@babel/helpers": "^7.20.5", + "@babel/parser": "^7.20.5", + "@babel/template": "^7.18.10", + "@babel/traverse": "^7.20.5", + "@babel/types": "^7.20.5", + "convert-source-map": "^1.7.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.2", + "json5": "^2.2.1", + "semver": "^6.3.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/babel" + } + }, + "node_modules/@babel/generator": { + "version": "7.20.5", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/types": "^7.20.5", + "@jridgewell/gen-mapping": "^0.3.2", + "jsesc": "^2.5.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/generator/node_modules/@jridgewell/gen-mapping": { + "version": "0.3.2", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/set-array": "^1.0.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.9" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/helper-compilation-targets": { + "version": "7.20.0", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/compat-data": "^7.20.0", + "@babel/helper-validator-option": "^7.18.6", + "browserslist": "^4.21.3", + "semver": "^6.3.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-environment-visitor": { + "version": "7.18.9", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-function-name": { + "version": "7.19.0", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/template": "^7.18.10", + "@babel/types": "^7.19.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-hoist-variables": { + "version": "7.18.6", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/types": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-imports": { + "version": "7.18.6", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/types": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-transforms": { + "version": "7.20.2", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-module-imports": "^7.18.6", + "@babel/helper-simple-access": "^7.20.2", + "@babel/helper-split-export-declaration": "^7.18.6", + "@babel/helper-validator-identifier": "^7.19.1", + "@babel/template": "^7.18.10", + "@babel/traverse": "^7.20.1", + "@babel/types": "^7.20.2" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-plugin-utils": { + "version": "7.20.2", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-simple-access": { + "version": "7.20.2", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/types": "^7.20.2" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-split-export-declaration": { + "version": "7.18.6", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/types": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-string-parser": { + "version": "7.19.4", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-identifier": { + "version": "7.19.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-option": { + "version": "7.18.6", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helpers": { + "version": "7.20.6", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/template": "^7.18.10", + "@babel/traverse": "^7.20.5", + "@babel/types": "^7.20.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/highlight": { + "version": "7.18.6", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-validator-identifier": "^7.18.6", + "chalk": "^2.0.0", + "js-tokens": "^4.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/highlight/node_modules/ansi-styles": { + "version": "3.2.1", + "dev": true, + "license": "MIT", + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/highlight/node_modules/chalk": { + "version": "2.4.2", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/highlight/node_modules/color-convert": { + "version": "1.9.3", + "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/@babel/highlight/node_modules/color-name": { + "version": "1.1.3", + "dev": true, + "license": "MIT" + }, + "node_modules/@babel/highlight/node_modules/escape-string-regexp": { + "version": "1.0.5", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/@babel/highlight/node_modules/has-flag": { + "version": "3.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/highlight/node_modules/supports-color": { + "version": "5.5.0", + "dev": true, + "license": "MIT", + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/parser": { + "version": "7.20.5", + "dev": true, + "license": "MIT", + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/plugin-syntax-async-generators": { + "version": "7.8.4", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-bigint": { + "version": "7.8.3", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-class-properties": { + "version": "7.12.13", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.12.13" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-import-meta": { + "version": "7.10.4", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-json-strings": { + "version": "7.8.3", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-logical-assignment-operators": { + "version": "7.10.4", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-nullish-coalescing-operator": { + "version": "7.8.3", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-numeric-separator": { + "version": "7.10.4", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-object-rest-spread": { + "version": "7.8.3", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-optional-catch-binding": { + "version": "7.8.3", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-optional-chaining": { + "version": "7.8.3", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-top-level-await": { + "version": "7.14.5", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/template": { + "version": "7.18.10", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.18.6", + "@babel/parser": "^7.18.10", + "@babel/types": "^7.18.10" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/traverse": { + "version": "7.20.5", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.18.6", + "@babel/generator": "^7.20.5", + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-function-name": "^7.19.0", + "@babel/helper-hoist-variables": "^7.18.6", + "@babel/helper-split-export-declaration": "^7.18.6", + "@babel/parser": "^7.20.5", + "@babel/types": "^7.20.5", + "debug": "^4.1.0", + "globals": "^11.1.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/types": { + "version": "7.20.5", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-string-parser": "^7.19.4", + "@babel/helper-validator-identifier": "^7.19.1", + "to-fast-properties": "^2.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@bcoe/v8-coverage": { + "version": "0.2.3", + "dev": true, + "license": "MIT" + }, + "node_modules/@cnakazawa/watch": { + "version": "1.0.4", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "exec-sh": "^0.3.2", + "minimist": "^1.2.0" + }, + "bin": { + "watch": "cli.js" + }, + "engines": { + "node": ">=0.1.95" + } + }, + "node_modules/@istanbuljs/load-nyc-config": { + "version": "1.1.0", + "dev": true, + "license": "ISC", + "dependencies": { + "camelcase": "^5.3.1", + "find-up": "^4.1.0", + "get-package-type": "^0.1.0", + "js-yaml": "^3.13.1", + "resolve-from": "^5.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@istanbuljs/schema": { + "version": "0.1.3", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/console": { + "version": "26.6.2", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/types": "^26.6.2", + "@types/node": "*", + "chalk": "^4.0.0", + "jest-message-util": "^26.6.2", + "jest-util": "^26.6.2", + "slash": "^3.0.0" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/@jest/console/node_modules/slash": { + "version": "3.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/core": { + "version": "26.6.3", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/console": "^26.6.2", + "@jest/reporters": "^26.6.2", + "@jest/test-result": "^26.6.2", + "@jest/transform": "^26.6.2", + "@jest/types": "^26.6.2", + "@types/node": "*", + "ansi-escapes": "^4.2.1", + "chalk": "^4.0.0", + "exit": "^0.1.2", + "graceful-fs": "^4.2.4", + "jest-changed-files": "^26.6.2", + "jest-config": "^26.6.3", + "jest-haste-map": "^26.6.2", + "jest-message-util": "^26.6.2", + "jest-regex-util": "^26.0.0", + "jest-resolve": "^26.6.2", + "jest-resolve-dependencies": "^26.6.3", + "jest-runner": "^26.6.3", + "jest-runtime": "^26.6.3", + "jest-snapshot": "^26.6.2", + "jest-util": "^26.6.2", + "jest-validate": "^26.6.2", + "jest-watcher": "^26.6.2", + "micromatch": "^4.0.2", + "p-each-series": "^2.1.0", + "rimraf": "^3.0.0", + "slash": "^3.0.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/@jest/core/node_modules/braces": { + "version": "3.0.2", + "dev": true, + "license": "MIT", + "dependencies": { + "fill-range": "^7.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/core/node_modules/fill-range": { + "version": "7.0.1", + "dev": true, + "license": "MIT", + "dependencies": { + "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/core/node_modules/is-number": { + "version": "7.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/@jest/core/node_modules/micromatch": { + "version": "4.0.5", + "dev": true, + "license": "MIT", + "dependencies": { + "braces": "^3.0.2", + "picomatch": "^2.3.1" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/@jest/core/node_modules/slash": { + "version": "3.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/core/node_modules/to-regex-range": { + "version": "5.0.1", + "dev": true, + "license": "MIT", + "dependencies": { + "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/@jest/environment": { + "version": "26.6.2", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/fake-timers": "^26.6.2", + "@jest/types": "^26.6.2", + "@types/node": "*", + "jest-mock": "^26.6.2" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/@jest/fake-timers": { + "version": "26.6.2", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/types": "^26.6.2", + "@sinonjs/fake-timers": "^6.0.1", + "@types/node": "*", + "jest-message-util": "^26.6.2", + "jest-mock": "^26.6.2", + "jest-util": "^26.6.2" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/@jest/globals": { + "version": "26.6.2", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/environment": "^26.6.2", + "@jest/types": "^26.6.2", + "expect": "^26.6.2" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/@jest/reporters": { + "version": "26.6.2", + "dev": true, + "license": "MIT", + "dependencies": { + "@bcoe/v8-coverage": "^0.2.3", + "@jest/console": "^26.6.2", + "@jest/test-result": "^26.6.2", + "@jest/transform": "^26.6.2", + "@jest/types": "^26.6.2", + "chalk": "^4.0.0", + "collect-v8-coverage": "^1.0.0", + "exit": "^0.1.2", + "glob": "^7.1.2", + "graceful-fs": "^4.2.4", + "istanbul-lib-coverage": "^3.0.0", + "istanbul-lib-instrument": "^4.0.3", + "istanbul-lib-report": "^3.0.0", + "istanbul-lib-source-maps": "^4.0.0", + "istanbul-reports": "^3.0.2", + "jest-haste-map": "^26.6.2", + "jest-resolve": "^26.6.2", + "jest-util": "^26.6.2", + "jest-worker": "^26.6.2", + "slash": "^3.0.0", + "source-map": "^0.6.0", + "string-length": "^4.0.1", + "terminal-link": "^2.0.0", + "v8-to-istanbul": "^7.0.0" + }, + "engines": { + "node": ">= 10.14.2" + }, + "optionalDependencies": { + "node-notifier": "^8.0.0" + } + }, + "node_modules/@jest/reporters/node_modules/slash": { + "version": "3.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/source-map": { + "version": "26.6.2", + "dev": true, + "license": "MIT", + "dependencies": { + "callsites": "^3.0.0", + "graceful-fs": "^4.2.4", + "source-map": "^0.6.0" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/@jest/test-result": { + "version": "26.6.2", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/console": "^26.6.2", + "@jest/types": "^26.6.2", + "@types/istanbul-lib-coverage": "^2.0.0", + "collect-v8-coverage": "^1.0.0" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/@jest/test-sequencer": { + "version": "26.6.3", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/test-result": "^26.6.2", + "graceful-fs": "^4.2.4", + "jest-haste-map": "^26.6.2", + "jest-runner": "^26.6.3", + "jest-runtime": "^26.6.3" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/@jest/transform": { + "version": "26.6.2", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/core": "^7.1.0", + "@jest/types": "^26.6.2", + "babel-plugin-istanbul": "^6.0.0", + "chalk": "^4.0.0", + "convert-source-map": "^1.4.0", + "fast-json-stable-stringify": "^2.0.0", + "graceful-fs": "^4.2.4", + "jest-haste-map": "^26.6.2", + "jest-regex-util": "^26.0.0", + "jest-util": "^26.6.2", + "micromatch": "^4.0.2", + "pirates": "^4.0.1", + "slash": "^3.0.0", + "source-map": "^0.6.1", + "write-file-atomic": "^3.0.0" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/@jest/transform/node_modules/braces": { + "version": "3.0.2", + "dev": true, + "license": "MIT", + "dependencies": { + "fill-range": "^7.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/transform/node_modules/fill-range": { + "version": "7.0.1", + "dev": true, + "license": "MIT", + "dependencies": { + "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/transform/node_modules/is-number": { + "version": "7.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/@jest/transform/node_modules/micromatch": { + "version": "4.0.5", + "dev": true, + "license": "MIT", + "dependencies": { + "braces": "^3.0.2", + "picomatch": "^2.3.1" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/@jest/transform/node_modules/slash": { + "version": "3.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/transform/node_modules/to-regex-range": { + "version": "5.0.1", + "dev": true, + "license": "MIT", + "dependencies": { + "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/@jest/types": { + "version": "26.6.2", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^15.0.0", + "chalk": "^4.0.0" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/@jridgewell/gen-mapping": { + "version": "0.1.1", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/set-array": "^1.0.0", + "@jridgewell/sourcemap-codec": "^1.4.10" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/resolve-uri": { + "version": "3.1.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/set-array": { + "version": "1.1.2", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.4.14", + "dev": true, + "license": "MIT" + }, + "node_modules/@jridgewell/trace-mapping": { + "version": "0.3.17", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/resolve-uri": "3.1.0", + "@jridgewell/sourcemap-codec": "1.4.14" + } + }, + "node_modules/@mapbox/togeojson": { + "version": "0.16.0", + "resolved": "https://registry.npmjs.org/@mapbox/togeojson/-/togeojson-0.16.0.tgz", + "integrity": "sha512-PeBrRQ+kuVP5j3lqa5JtnYBd9E7eQdWnsmOmUq8aWs0caNzLbCqnXSkKxrIGURukf7lZ82aOxjustLRX3f9GOA==", + "dev": true, + "dependencies": { + "concat-stream": "~1.5.1", + "minimist": "1.2.0", + "xmldom": "~0.1.19" + }, + "bin": { + "togeojson": "togeojson" + } + }, + "node_modules/@mapbox/togeojson/node_modules/minimist": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", + "integrity": "sha512-7Wl+Jz+IGWuSdgsQEJ4JunV0si/iMhg42MnQQG6h1R6TNeVenp4U9x5CC5v/gYqz/fENLQITAWXidNtVL0NNbw==", + "dev": true + }, + "node_modules/@mrmlnc/readdir-enhanced": { + "version": "2.2.1", + "dev": true, + "license": "MIT", + "dependencies": { + "call-me-maybe": "^1.0.1", + "glob-to-regexp": "^0.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@ngageoint/geopackage": { + "version": "4.2.4", + "resolved": "https://registry.npmjs.org/@ngageoint/geopackage/-/geopackage-4.2.4.tgz", + "integrity": "sha512-x6U2RV2iJFX/mITLSOLgrv2LAtnJjegAgKP5fNnbXzpVNFecmkLntB0+B7ZKU+5/HVn8YqUDdLJT8Oq8D2qNOw==", + "dev": true, + "dependencies": { + "@turf/bbox": "6.3.0", + "@turf/boolean-clockwise": "6.5.0", + "@turf/boolean-point-in-polygon": "6.5.0", + "@turf/boolean-within": "6.5.0", + "@turf/distance": "6.5.0", + "@turf/helpers": "6.5.0", + "@turf/intersect": "6.5.0", + "@turf/line-intersect": "6.5.0", + "@turf/point-to-line-distance": "6.5.0", + "@turf/polygon-to-line": "6.5.0", + "@types/geojson": "7946.0.8", + "@types/proj4": "2.5.2", + "file-type": "12.4.0", + "image-size": "0.8.3", + "lodash": "4.17.21", + "proj4": "2.8.0", + "reproject": "1.2.5", + "rtree-sql.js": "1.7.0", + "simplify-js": "1.2.4", + "webworkify": "1.5.0", + "wkx": "0.4.8" + }, + "bin": { + "geopackage": "cli" + }, + "optionalDependencies": { + "better-sqlite3": "7.4.1", + "chalk": "4.1.1", + "inquirer": "8.0.0" + } + }, + "node_modules/@ngageoint/geopackage/node_modules/@types/geojson": { + "version": "7946.0.8", + "resolved": "https://registry.npmjs.org/@types/geojson/-/geojson-7946.0.8.tgz", + "integrity": "sha512-1rkryxURpr6aWP7R786/UQOkJ3PcpQiWkAXBmdWc7ryFWqN6a4xfK7BtjXvFBKO9LjQ+MWQSWxYeZX1OApnArA==", + "dev": true + }, + "node_modules/@ngageoint/geopackage/node_modules/chalk": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.1.tgz", + "integrity": "sha512-diHzdDKxcU+bAsUboHLPEDQiw0qEe0qd7SYUn3HgcFlWgbDcfLGswOHYeGrHKzG9z6UYf01d9VFMfZxPM1xZSg==", + "dev": true, + "optional": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/@ngageoint/geopackage/node_modules/file-type": { + "version": "12.4.0", + "resolved": "https://registry.npmjs.org/file-type/-/file-type-12.4.0.tgz", + "integrity": "sha512-WTvyKq8yjtNmUtVAD8LGcTkvtCdJglM6ks2HTqEClm6+65XTqM6MoZYA1Vtra50DLRWLiM38fEs1y56f5VhnUA==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@ngageoint/mage.service": { + "version": "6.3.0-beta.2", + "resolved": "file:../../service", + "dev": true, + "dependencies": { + "@mapbox/togeojson": "0.16.0", + "@ngageoint/geopackage": "^4.2.4", + "@ngageoint/mongodb-migrations": "^1.0.0", + "@turf/centroid": "~6.0.0", + "@turf/kinks": "~6.0.0", + "@types/geojson": "^7946.0.7", + "@types/json-schema": "^7.0.11", + "@types/mime-types": "^2.1.1", + "adm-zip": "0.4.9", + "archiver": "5.3.0", + "async": "0.2.x", + "async-lock": "^1.4.0", + "base-64": "1.0.0", + "body-parser": "1.18.3", + "busboy": "^1.6.0", + "cfenv": "1.0.3", + "commander": "^8.2.0", + "dbf": "0.1.0", + "express": "~4.17.0", + "express-session": "1.17.2", + "file-type": "16.5.0", + "fs-extra": "4.0.3", + "geojson": "^0.5.0", + "geojson-validation": "^1.0.2", + "geojson-vt": "3.1.3", + "gm": "1.23.1", + "jose": "0.3.2", + "json2csv": "4.5.1", + "jsonwebtoken": "^9.0.0", + "lodash": "^4.17.21", + "mgrs": "^1.0.0", + "mime-types": "^2.1.35", + "moment": "2.22.2", + "mongoose": "^6.7.4", + "mongoose-beautiful-unique-validation": "7.1.1", + "multer": "^1.4.2", + "node-fetch": "^2.6.0", + "passport": "0.4.1", + "passport-anonymous": "1.0.1", + "passport-http-bearer": "1.0.1", + "passport-ldapauth": "2.1.3", + "passport-local": "1.0.0", + "passport-oauth2": "1.6.1", + "passport-openidconnect": "0.1.1", + "passport-saml": "^1.3.1", + "pem-jwk": "1.5.1", + "pem2jwk": "1.0.1", + "pug": "2.0.4", + "rfc5646": "^3.0.0", + "superagent": "^8.0.0", + "svg-captcha": "^1.4.0", + "terraformer": "1.0.4", + "terraformer-arcgis-parser": "1.0.4", + "uniqid": "^5.2.0", + "walk": "2.3.4", + "winston": "1.0.1", + "wkx": "0.4.8", + "wms-capabilities": "^0.4.0", + "xmlbuilder2": "3.0.2", + "xmldom": "0.1.22", + "xpath": "0.0.23", + "yaml": "^1.8.2" + }, + "bin": { + "mage.service": "bin/mage.service.js" + }, + "engines": { + "node": ">= 16", + "npm": ">= 8" + } + }, + "node_modules/@ngageoint/mongodb-migrations": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@ngageoint/mongodb-migrations/-/mongodb-migrations-1.0.0.tgz", + "integrity": "sha512-SOjJk+xuPfMmevyZOhRCm3odFFW//zg8tKSkiKfgAslMIaZUII6rbrBQRjBPqyFewqg/dabY4xYnXelZSY7/cw==", + "dev": true, + "dependencies": { + "bluebird": "^3.7.2", + "coffeescript": "^2.7.0", + "lodash": "^4.17.21", + "mkdirp": "^0.5.6", + "mongodb": "^4.8.1", + "nomnom": "^1.8.1" + }, + "bin": { + "mm": "bin/mm" + } + }, + "node_modules/@ngageoint/mongodb-migrations/node_modules/mkdirp": { + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", + "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", + "dev": true, + "dependencies": { + "minimist": "^1.2.6" + }, + "bin": { + "mkdirp": "bin/cmd.js" + } + }, + "node_modules/@nodelib/fs.stat": { + "version": "1.1.3", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 6" + } + }, + "node_modules/@oozcitak/dom": { + "version": "1.15.10", + "resolved": "https://registry.npmjs.org/@oozcitak/dom/-/dom-1.15.10.tgz", + "integrity": "sha512-0JT29/LaxVgRcGKvHmSrUTEvZ8BXvZhGl2LASRUgHqDTC1M5g1pLmVv56IYNyt3bG2CUjDkc67wnyZC14pbQrQ==", + "dev": true, + "dependencies": { + "@oozcitak/infra": "1.0.8", + "@oozcitak/url": "1.0.4", + "@oozcitak/util": "8.3.8" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/@oozcitak/infra": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/@oozcitak/infra/-/infra-1.0.8.tgz", + "integrity": "sha512-JRAUc9VR6IGHOL7OGF+yrvs0LO8SlqGnPAMqyzOuFZPSZSXI7Xf2O9+awQPSMXgIWGtgUf/dA6Hs6X6ySEaWTg==", + "dev": true, + "dependencies": { + "@oozcitak/util": "8.3.8" + }, + "engines": { + "node": ">=6.0" + } + }, + "node_modules/@oozcitak/url": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/@oozcitak/url/-/url-1.0.4.tgz", + "integrity": "sha512-kDcD8y+y3FCSOvnBI6HJgl00viO/nGbQoCINmQ0h98OhnGITrWR3bOGfwYCthgcrV8AnTJz8MzslTQbC3SOAmw==", + "dev": true, + "dependencies": { + "@oozcitak/infra": "1.0.8", + "@oozcitak/util": "8.3.8" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/@oozcitak/util": { + "version": "8.3.8", + "resolved": "https://registry.npmjs.org/@oozcitak/util/-/util-8.3.8.tgz", + "integrity": "sha512-T8TbSnGsxo6TDBJx/Sgv/BlVJL3tshxZP7Aq5R1mSnM5OcHY2dQaxLMu2+E8u3gN0MLOzdjurqN4ZRVuzQycOQ==", + "dev": true, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/@sinonjs/commons": { + "version": "1.8.6", + "dev": true, + "license": "BSD-3-Clause", + "dependencies": { + "type-detect": "4.0.8" + } + }, + "node_modules/@sinonjs/fake-timers": { + "version": "6.0.1", + "dev": true, + "license": "BSD-3-Clause", + "dependencies": { + "@sinonjs/commons": "^1.7.0" + } + }, + "node_modules/@tokenizer/token": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/@tokenizer/token/-/token-0.3.0.tgz", + "integrity": "sha512-OvjF+z51L3ov0OyAU0duzsYuvO01PH7x4t6DJx+guahgTnBHkhJdG7soQeTSFLWN3efnHyibZ4Z8l2EuWwJN3A==", + "dev": true + }, + "node_modules/@tootallnate/once": { + "version": "1.1.2", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 6" + } + }, + "node_modules/@turf/bbox": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/@turf/bbox/-/bbox-6.3.0.tgz", + "integrity": "sha512-N4ue5Xopu1qieSHP2MA/CJGWHPKaTrVXQJjzHRNcY1vtsO126xbSaJhWUrFc5x5vVkXp0dcucGryO0r5m4o/KA==", + "dev": true, + "dependencies": { + "@turf/helpers": "^6.3.0", + "@turf/meta": "^6.3.0" + } + }, + "node_modules/@turf/bearing": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/bearing/-/bearing-6.5.0.tgz", + "integrity": "sha512-dxINYhIEMzgDOztyMZc20I7ssYVNEpSv04VbMo5YPQsqa80KO3TFvbuCahMsCAW5z8Tncc8dwBlEFrmRjJG33A==", + "dev": true, + "dependencies": { + "@turf/helpers": "^6.5.0", + "@turf/invariant": "^6.5.0" + }, + "funding": { + "url": "https://opencollective.com/turf" + } + }, + "node_modules/@turf/boolean-clockwise": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/boolean-clockwise/-/boolean-clockwise-6.5.0.tgz", + "integrity": "sha512-45+C7LC5RMbRWrxh3Z0Eihsc8db1VGBO5d9BLTOAwU4jR6SgsunTfRWR16X7JUwIDYlCVEmnjcXJNi/kIU3VIw==", + "dev": true, + "dependencies": { + "@turf/helpers": "^6.5.0", + "@turf/invariant": "^6.5.0" + }, + "funding": { + "url": "https://opencollective.com/turf" + } + }, + "node_modules/@turf/boolean-point-in-polygon": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/boolean-point-in-polygon/-/boolean-point-in-polygon-6.5.0.tgz", + "integrity": "sha512-DtSuVFB26SI+hj0SjrvXowGTUCHlgevPAIsukssW6BG5MlNSBQAo70wpICBNJL6RjukXg8d2eXaAWuD/CqL00A==", + "dev": true, + "dependencies": { + "@turf/helpers": "^6.5.0", + "@turf/invariant": "^6.5.0" + }, + "funding": { + "url": "https://opencollective.com/turf" + } + }, + "node_modules/@turf/boolean-point-on-line": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/boolean-point-on-line/-/boolean-point-on-line-6.5.0.tgz", + "integrity": "sha512-A1BbuQ0LceLHvq7F/P7w3QvfpmZqbmViIUPHdNLvZimFNLo4e6IQunmzbe+8aSStH9QRZm3VOflyvNeXvvpZEQ==", + "dev": true, + "dependencies": { + "@turf/helpers": "^6.5.0", + "@turf/invariant": "^6.5.0" + }, + "funding": { + "url": "https://opencollective.com/turf" + } + }, + "node_modules/@turf/boolean-within": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/boolean-within/-/boolean-within-6.5.0.tgz", + "integrity": "sha512-YQB3oU18Inx35C/LU930D36RAVe7LDXk1kWsQ8mLmuqYn9YdPsDQTMTkLJMhoQ8EbN7QTdy333xRQ4MYgToteQ==", + "dev": true, + "dependencies": { + "@turf/bbox": "^6.5.0", + "@turf/boolean-point-in-polygon": "^6.5.0", + "@turf/boolean-point-on-line": "^6.5.0", + "@turf/helpers": "^6.5.0", + "@turf/invariant": "^6.5.0" + }, + "funding": { + "url": "https://opencollective.com/turf" + } + }, + "node_modules/@turf/boolean-within/node_modules/@turf/bbox": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/bbox/-/bbox-6.5.0.tgz", + "integrity": "sha512-RBbLaao5hXTYyyg577iuMtDB8ehxMlUqHEJiMs8jT1GHkFhr6sYre3lmLsPeYEi/ZKj5TP5tt7fkzNdJ4GIVyw==", + "dev": true, + "dependencies": { + "@turf/helpers": "^6.5.0", + "@turf/meta": "^6.5.0" + }, + "funding": { + "url": "https://opencollective.com/turf" + } + }, + "node_modules/@turf/centroid": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/@turf/centroid/-/centroid-6.0.2.tgz", + "integrity": "sha512-auyDauOtC4eddH7GC3CHFTDu2PKhpSeKCRhwhHhXtJqn2dWCJQNIoCeJRmfXRIbzCWhWvgvQafvvhq8HNvmvWw==", + "dev": true, + "dependencies": { + "@turf/helpers": "6.x", + "@turf/meta": "6.x" + } + }, + "node_modules/@turf/clone": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/clone/-/clone-6.5.0.tgz", + "integrity": "sha512-mzVtTFj/QycXOn6ig+annKrM6ZlimreKYz6f/GSERytOpgzodbQyOgkfwru100O1KQhhjSudKK4DsQ0oyi9cTw==", + "dev": true, + "dependencies": { + "@turf/helpers": "^6.5.0" + }, + "funding": { + "url": "https://opencollective.com/turf" + } + }, + "node_modules/@turf/distance": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/distance/-/distance-6.5.0.tgz", + "integrity": "sha512-xzykSLfoURec5qvQJcfifw/1mJa+5UwByZZ5TZ8iaqjGYN0vomhV9aiSLeYdUGtYRESZ+DYC/OzY+4RclZYgMg==", + "dev": true, + "dependencies": { + "@turf/helpers": "^6.5.0", + "@turf/invariant": "^6.5.0" + }, + "funding": { + "url": "https://opencollective.com/turf" + } + }, + "node_modules/@turf/helpers": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/helpers/-/helpers-6.5.0.tgz", + "integrity": "sha512-VbI1dV5bLFzohYYdgqwikdMVpe7pJ9X3E+dlr425wa2/sMJqYDhTO++ec38/pcPvPE6oD9WEEeU3Xu3gza+VPw==", + "dev": true, + "funding": { + "url": "https://opencollective.com/turf" + } + }, + "node_modules/@turf/intersect": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/intersect/-/intersect-6.5.0.tgz", + "integrity": "sha512-2legGJeKrfFkzntcd4GouPugoqPUjexPZnOvfez+3SfIMrHvulw8qV8u7pfVyn2Yqs53yoVCEjS5sEpvQ5YRQg==", + "dev": true, + "dependencies": { + "@turf/helpers": "^6.5.0", + "@turf/invariant": "^6.5.0", + "polygon-clipping": "^0.15.3" + }, + "funding": { + "url": "https://opencollective.com/turf" + } + }, + "node_modules/@turf/invariant": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/invariant/-/invariant-6.5.0.tgz", + "integrity": "sha512-Wv8PRNCtPD31UVbdJE/KVAWKe7l6US+lJItRR/HOEW3eh+U/JwRCSUl/KZ7bmjM/C+zLNoreM2TU6OoLACs4eg==", + "dev": true, + "dependencies": { + "@turf/helpers": "^6.5.0" + }, + "funding": { + "url": "https://opencollective.com/turf" + } + }, + "node_modules/@turf/kinks": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/@turf/kinks/-/kinks-6.0.0.tgz", + "integrity": "sha512-X2xk3+Sr9aeu51t1vBa7Iwowvjxcbl5fePLIo/dDOU4j5WeFoqGCto+DdEHQcC3y8HVUin4i8GaHVaM9sVTphg==", + "dev": true, + "dependencies": { + "@turf/helpers": "6.x" + } + }, + "node_modules/@turf/line-intersect": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/line-intersect/-/line-intersect-6.5.0.tgz", + "integrity": "sha512-CS6R1tZvVQD390G9Ea4pmpM6mJGPWoL82jD46y0q1KSor9s6HupMIo1kY4Ny+AEYQl9jd21V3Scz20eldpbTVA==", + "dev": true, + "dependencies": { + "@turf/helpers": "^6.5.0", + "@turf/invariant": "^6.5.0", + "@turf/line-segment": "^6.5.0", + "@turf/meta": "^6.5.0", + "geojson-rbush": "3.x" + }, + "funding": { + "url": "https://opencollective.com/turf" + } + }, + "node_modules/@turf/line-segment": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/line-segment/-/line-segment-6.5.0.tgz", + "integrity": "sha512-jI625Ho4jSuJESNq66Mmi290ZJ5pPZiQZruPVpmHkUw257Pew0alMmb6YrqYNnLUuiVVONxAAKXUVeeUGtycfw==", + "dev": true, + "dependencies": { + "@turf/helpers": "^6.5.0", + "@turf/invariant": "^6.5.0", + "@turf/meta": "^6.5.0" + }, + "funding": { + "url": "https://opencollective.com/turf" + } + }, + "node_modules/@turf/meta": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/meta/-/meta-6.5.0.tgz", + "integrity": "sha512-RrArvtsV0vdsCBegoBtOalgdSOfkBrTJ07VkpiCnq/491W67hnMWmDu7e6Ztw0C3WldRYTXkg3SumfdzZxLBHA==", + "dev": true, + "dependencies": { + "@turf/helpers": "^6.5.0" + }, + "funding": { + "url": "https://opencollective.com/turf" + } + }, + "node_modules/@turf/point-to-line-distance": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/point-to-line-distance/-/point-to-line-distance-6.5.0.tgz", + "integrity": "sha512-opHVQ4vjUhNBly1bob6RWy+F+hsZDH9SA0UW36pIRzfpu27qipU18xup0XXEePfY6+wvhF6yL/WgCO2IbrLqEA==", + "dev": true, + "dependencies": { + "@turf/bearing": "^6.5.0", + "@turf/distance": "^6.5.0", + "@turf/helpers": "^6.5.0", + "@turf/invariant": "^6.5.0", + "@turf/meta": "^6.5.0", + "@turf/projection": "^6.5.0", + "@turf/rhumb-bearing": "^6.5.0", + "@turf/rhumb-distance": "^6.5.0" + }, + "funding": { + "url": "https://opencollective.com/turf" + } + }, + "node_modules/@turf/polygon-to-line": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/polygon-to-line/-/polygon-to-line-6.5.0.tgz", + "integrity": "sha512-5p4n/ij97EIttAq+ewSnKt0ruvuM+LIDzuczSzuHTpq4oS7Oq8yqg5TQ4nzMVuK41r/tALCk7nAoBuw3Su4Gcw==", + "dev": true, + "dependencies": { + "@turf/helpers": "^6.5.0", + "@turf/invariant": "^6.5.0" + }, + "funding": { + "url": "https://opencollective.com/turf" + } + }, + "node_modules/@turf/projection": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/projection/-/projection-6.5.0.tgz", + "integrity": "sha512-/Pgh9mDvQWWu8HRxqpM+tKz8OzgauV+DiOcr3FCjD6ubDnrrmMJlsf6fFJmggw93mtVPrZRL6yyi9aYCQBOIvg==", + "dev": true, + "dependencies": { + "@turf/clone": "^6.5.0", + "@turf/helpers": "^6.5.0", + "@turf/meta": "^6.5.0" + }, + "funding": { + "url": "https://opencollective.com/turf" + } + }, + "node_modules/@turf/rhumb-bearing": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/rhumb-bearing/-/rhumb-bearing-6.5.0.tgz", + "integrity": "sha512-jMyqiMRK4hzREjQmnLXmkJ+VTNTx1ii8vuqRwJPcTlKbNWfjDz/5JqJlb5NaFDcdMpftWovkW5GevfnuzHnOYA==", + "dev": true, + "dependencies": { + "@turf/helpers": "^6.5.0", + "@turf/invariant": "^6.5.0" + }, + "funding": { + "url": "https://opencollective.com/turf" + } + }, + "node_modules/@turf/rhumb-distance": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/rhumb-distance/-/rhumb-distance-6.5.0.tgz", + "integrity": "sha512-oKp8KFE8E4huC2Z1a1KNcFwjVOqa99isxNOwfo4g3SUABQ6NezjKDDrnvC4yI5YZ3/huDjULLBvhed45xdCrzg==", + "dev": true, + "dependencies": { + "@turf/helpers": "^6.5.0", + "@turf/invariant": "^6.5.0" + }, + "funding": { + "url": "https://opencollective.com/turf" + } + }, + "node_modules/@types/babel__core": { + "version": "7.1.20", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/parser": "^7.1.0", + "@babel/types": "^7.0.0", + "@types/babel__generator": "*", + "@types/babel__template": "*", + "@types/babel__traverse": "*" + } + }, + "node_modules/@types/babel__generator": { + "version": "7.6.4", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/types": "^7.0.0" + } + }, + "node_modules/@types/babel__template": { + "version": "7.4.1", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/parser": "^7.1.0", + "@babel/types": "^7.0.0" + } + }, + "node_modules/@types/babel__traverse": { + "version": "7.18.3", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/types": "^7.3.0" + } + }, + "node_modules/@types/babel-types": { + "version": "7.0.11", + "resolved": "https://registry.npmjs.org/@types/babel-types/-/babel-types-7.0.11.tgz", + "integrity": "sha512-pkPtJUUY+Vwv6B1inAz55rQvivClHJxc9aVEPPmaq2cbyeMLCiDpbKpcKyX4LAwpNGi+SHBv0tHv6+0gXv0P2A==", + "dev": true + }, + "node_modules/@types/babylon": { + "version": "6.16.6", + "resolved": "https://registry.npmjs.org/@types/babylon/-/babylon-6.16.6.tgz", + "integrity": "sha512-G4yqdVlhr6YhzLXFKy5F7HtRBU8Y23+iWy7UKthMq/OSQnL1hbsoeXESQ2LY8zEDlknipDG3nRGhUC9tkwvy/w==", + "dev": true, + "dependencies": { + "@types/babel-types": "*" + } + }, + "node_modules/@types/body-parser": { + "version": "1.19.2", + "resolved": "https://registry.npmjs.org/@types/body-parser/-/body-parser-1.19.2.tgz", + "integrity": "sha512-ALYone6pm6QmwZoAgeyNksccT9Q4AWZQ6PvfwR37GT6r6FWUPguq6sUmNGSMV2Wr761oQoBxwGGa6DR5o1DC9g==", + "dev": true, + "dependencies": { + "@types/connect": "*", + "@types/node": "*" + } + }, + "node_modules/@types/connect": { + "version": "3.4.35", + "resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.35.tgz", + "integrity": "sha512-cdeYyv4KWoEgpBISTxWvqYsVy444DOqehiF3fM3ne10AmJ62RSyNkUnxMJXHQWRQQX2eR94m5y1IZyDwBjV9FQ==", + "dev": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/express": { + "version": "4.17.17", + "resolved": "https://registry.npmjs.org/@types/express/-/express-4.17.17.tgz", + "integrity": "sha512-Q4FmmuLGBG58btUnfS1c1r/NQdlp3DMfGDGig8WhfpA2YRUtEkxAjkZb0yvplJGYdF1fsQ81iMDcH24sSCNC/Q==", + "dev": true, + "dependencies": { + "@types/body-parser": "*", + "@types/express-serve-static-core": "^4.17.33", + "@types/qs": "*", + "@types/serve-static": "*" + } + }, + "node_modules/@types/express-serve-static-core": { + "version": "4.17.33", + "resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.17.33.tgz", + "integrity": "sha512-TPBqmR/HRYI3eC2E5hmiivIzv+bidAfXofM+sbonAGvyDhySGw9/PQZFt2BLOrjUUR++4eJVpx6KnLQK1Fk9tA==", + "dev": true, + "dependencies": { + "@types/node": "*", + "@types/qs": "*", + "@types/range-parser": "*" + } + }, + "node_modules/@types/geojson": { + "version": "7946.0.10", + "license": "MIT" + }, + "node_modules/@types/glob": { + "version": "7.2.0", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/minimatch": "*", + "@types/node": "*" + } + }, + "node_modules/@types/graceful-fs": { + "version": "4.1.5", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/istanbul-lib-coverage": { + "version": "2.0.4", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/istanbul-lib-report": { + "version": "3.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/istanbul-lib-coverage": "*" + } + }, + "node_modules/@types/istanbul-reports": { + "version": "3.0.1", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/istanbul-lib-report": "*" + } + }, + "node_modules/@types/jest": { + "version": "26.0.24", + "dev": true, + "license": "MIT", + "dependencies": { + "jest-diff": "^26.0.0", + "pretty-format": "^26.0.0" + } + }, + "node_modules/@types/json-schema": { + "version": "7.0.11", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.11.tgz", + "integrity": "sha512-wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ==", + "dev": true + }, + "node_modules/@types/ldapjs": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/@types/ldapjs/-/ldapjs-1.0.11.tgz", + "integrity": "sha512-O4D1frY6xy2mQr5WouNPeltMe5EHdmU4FxbLDC6TMDX5HXOuafusGu+7Y9WAoqBaYHZ5hcFa7jfkpggyexfeXQ==", + "dev": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/mime": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@types/mime/-/mime-3.0.1.tgz", + "integrity": "sha512-Y4XFY5VJAuw0FgAqPNd6NNoV44jbq9Bz2L7Rh/J6jLTiHBSBJa9fxqQIvkIld4GsoDOcCbvzOUAbLPsSKKg+uA==", + "dev": true + }, + "node_modules/@types/mime-types": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/@types/mime-types/-/mime-types-2.1.1.tgz", + "integrity": "sha512-vXOTGVSLR2jMw440moWTC7H19iUyLtP3Z1YTj7cSsubOICinjMxFeb/V57v9QdyyPGbbWolUFSSmSiRSn94tFw==", + "dev": true + }, + "node_modules/@types/minimatch": { + "version": "5.1.2", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/minimist": { + "version": "1.2.2", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/node": { + "version": "18.11.9", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/normalize-package-data": { + "version": "2.4.1", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/passport": { + "version": "1.0.12", + "resolved": "https://registry.npmjs.org/@types/passport/-/passport-1.0.12.tgz", + "integrity": "sha512-QFdJ2TiAEoXfEQSNDISJR1Tm51I78CymqcBa8imbjo6dNNu+l2huDxxbDEIoFIwOSKMkOfHEikyDuZ38WwWsmw==", + "dev": true, + "dependencies": { + "@types/express": "*" + } + }, + "node_modules/@types/prettier": { + "version": "2.7.1", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/proj4": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/@types/proj4/-/proj4-2.5.2.tgz", + "integrity": "sha512-/Nmfn9p08yaYw6xo5f2b0L+2oHk2kZeOkp5v+4VCeNfq+ETlLQbmHmC97/pjDIEZy8jxwz7pdPpwNzDHM5cuJw==", + "dev": true + }, + "node_modules/@types/qs": { + "version": "6.9.7", + "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.7.tgz", + "integrity": "sha512-FGa1F62FT09qcrueBA6qYTrJPVDzah9a+493+o2PCXsesWHIn27G98TsSMs3WPNbZIEj4+VJf6saSFpvD+3Zsw==", + "dev": true + }, + "node_modules/@types/range-parser": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/@types/range-parser/-/range-parser-1.2.4.tgz", + "integrity": "sha512-EEhsLsD6UsDM1yFhAvy0Cjr6VwmpMWqFBCb9w07wVugF7w9nfajxLuVmngTIpgS6svCnm6Vaw+MZhoDCKnOfsw==", + "dev": true + }, + "node_modules/@types/serve-static": { + "version": "1.15.1", + "resolved": "https://registry.npmjs.org/@types/serve-static/-/serve-static-1.15.1.tgz", + "integrity": "sha512-NUo5XNiAdULrJENtJXZZ3fHtfMolzZwczzBbnAeBbqBwG+LaG6YaJtuwzwGSQZ2wsCrxjEhNNjAkKigy3n8teQ==", + "dev": true, + "dependencies": { + "@types/mime": "*", + "@types/node": "*" + } + }, + "node_modules/@types/stack-utils": { + "version": "2.0.1", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/webidl-conversions": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@types/webidl-conversions/-/webidl-conversions-7.0.0.tgz", + "integrity": "sha512-xTE1E+YF4aWPJJeUzaZI5DRntlkY3+BCVJi0axFptnjGmAoWxkyREIh/XMrfxVLejwQxMCfDXdICo0VLxThrog==", + "dev": true + }, + "node_modules/@types/whatwg-url": { + "version": "8.2.2", + "resolved": "https://registry.npmjs.org/@types/whatwg-url/-/whatwg-url-8.2.2.tgz", + "integrity": "sha512-FtQu10RWgn3D9U4aazdwIE2yzphmTJREDqNdODHrbrZmmMqI0vMheC/6NE/J1Yveaj8H+ela+YwWTjq5PGmuhA==", + "dev": true, + "dependencies": { + "@types/node": "*", + "@types/webidl-conversions": "*" + } + }, + "node_modules/@types/yargs": { + "version": "15.0.14", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/yargs-parser": "*" + } + }, + "node_modules/@types/yargs-parser": { + "version": "21.0.0", + "dev": true, + "license": "MIT" + }, + "node_modules/@xmldom/xmldom": { + "version": "0.7.10", + "resolved": "https://registry.npmjs.org/@xmldom/xmldom/-/xmldom-0.7.10.tgz", + "integrity": "sha512-hb9QhOg5MGmpVkFcoZ9XJMe1em5gd0e2eqqjK87O1dwULedXsnY/Zg/Ju6lcohA+t6jVkmKpe7I1etqhvdRdrQ==", + "dev": true, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/abab": { + "version": "2.0.6", + "dev": true, + "license": "BSD-3-Clause" + }, + "node_modules/accepts": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz", + "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==", + "dev": true, + "dependencies": { + "mime-types": "~2.1.34", + "negotiator": "0.6.3" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/acorn": { + "version": "8.8.1", + "dev": true, + "license": "MIT", + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/acorn-globals": { + "version": "6.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "acorn": "^7.1.1", + "acorn-walk": "^7.1.1" + } + }, + "node_modules/acorn-globals/node_modules/acorn": { + "version": "7.4.1", + "dev": true, + "license": "MIT", + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/acorn-walk": { + "version": "7.2.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/adm-zip": { + "version": "0.4.9", + "resolved": "https://registry.npmjs.org/adm-zip/-/adm-zip-0.4.9.tgz", + "integrity": "sha512-eknaJ3Io/JasGGinVeqY5TsPlQgHbiNlHnK5zdFPRNs9XRggDykKz8zPesneOMEZJxWji7G3CfsUW0Ds9Dw0Bw==", + "dev": true, + "engines": { + "node": ">=0.3.0" + } + }, + "node_modules/agent-base": { + "version": "6.0.2", + "dev": true, + "license": "MIT", + "dependencies": { + "debug": "4" + }, + "engines": { + "node": ">= 6.0.0" + } + }, + "node_modules/aggregate-error": { + "version": "3.1.0", + "dev": true, + "license": "MIT", + "dependencies": { + "clean-stack": "^2.0.0", + "indent-string": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/align-text": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/align-text/-/align-text-0.1.4.tgz", + "integrity": "sha512-GrTZLRpmp6wIC2ztrWW9MjjTgSKccffgFagbNDOX95/dcjEcYZibYTeaOntySQLcdw1ztBoFkviiUvTMbb9MYg==", + "dev": true, + "dependencies": { + "kind-of": "^3.0.2", + "longest": "^1.0.1", + "repeat-string": "^1.5.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/align-text/node_modules/kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "dev": true, + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ansi-escapes": { + "version": "4.3.2", + "dev": true, + "license": "MIT", + "dependencies": { + "type-fest": "^0.21.3" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/ansi-regex": { + "version": "5.0.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/ansi-styles": { + "version": "4.3.0", + "dev": true, + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/anymatch": { + "version": "3.1.3", + "dev": true, + "license": "ISC", + "dependencies": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/append-field": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/append-field/-/append-field-1.0.0.tgz", + "integrity": "sha512-klpgFSWLW1ZEs8svjfb7g4qWY0YS5imI82dTg+QahUvJ8YqAY0P10Uk8tTyh9ZGuYEZEMaeJYCF5BFuX552hsw==", + "dev": true + }, + "node_modules/aproba": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", + "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==", + "dev": true, + "optional": true + }, + "node_modules/archiver": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/archiver/-/archiver-5.3.0.tgz", + "integrity": "sha512-iUw+oDwK0fgNpvveEsdQ0Ase6IIKztBJU2U0E9MzszMfmVVUyv1QJhS2ITW9ZCqx8dktAxVAjWWkKehuZE8OPg==", + "dev": true, + "dependencies": { + "archiver-utils": "^2.1.0", + "async": "^3.2.0", + "buffer-crc32": "^0.2.1", + "readable-stream": "^3.6.0", + "readdir-glob": "^1.0.0", + "tar-stream": "^2.2.0", + "zip-stream": "^4.1.0" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/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==", + "dev": true, + "dependencies": { + "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" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/archiver-utils/node_modules/readable-stream": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", + "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", + "dev": true, + "dependencies": { + "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" + } + }, + "node_modules/archiver-utils/node_modules/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 + }, + "node_modules/archiver-utils/node_modules/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, + "dependencies": { + "safe-buffer": "~5.1.0" + } + }, + "node_modules/archiver/node_modules/async": { + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/async/-/async-3.2.4.tgz", + "integrity": "sha512-iAB+JbDEGXhyIUavoDl9WP/Jj106Kz9DEn1DPgYw5ruDn0e3Wgi3sKFm55sASdGBNOQB8F59d9qQ7deqrHA8wQ==", + "dev": true + }, + "node_modules/are-we-there-yet": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.7.tgz", + "integrity": "sha512-nxwy40TuMiUGqMyRHgCSWZ9FM4VAoRP4xUYSTv5ImRog+h9yISPbVH7H8fASCIzYn9wlEv4zvFL7uKDMCFQm3g==", + "dev": true, + "optional": true, + "dependencies": { + "delegates": "^1.0.0", + "readable-stream": "^2.0.6" + } + }, + "node_modules/are-we-there-yet/node_modules/readable-stream": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", + "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", + "dev": true, + "optional": true, + "dependencies": { + "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" + } + }, + "node_modules/are-we-there-yet/node_modules/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, + "optional": true + }, + "node_modules/are-we-there-yet/node_modules/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, + "optional": true, + "dependencies": { + "safe-buffer": "~5.1.0" + } + }, + "node_modules/argparse": { + "version": "1.0.10", + "dev": true, + "license": "MIT", + "dependencies": { + "sprintf-js": "~1.0.2" + } + }, + "node_modules/arr-diff": { + "version": "4.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/arr-flatten": { + "version": "1.1.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/arr-union": { + "version": "3.1.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/array-flatten": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", + "integrity": "sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==", + "dev": true + }, + "node_modules/array-parallel": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/array-parallel/-/array-parallel-0.1.3.tgz", + "integrity": "sha512-TDPTwSWW5E4oiFiKmz6RGJ/a80Y91GuLgUYuLd49+XBS75tYo8PNgaT2K/OxuQYqkoI852MDGBorg9OcUSTQ8w==", + "dev": true + }, + "node_modules/array-series": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/array-series/-/array-series-0.1.5.tgz", + "integrity": "sha512-L0XlBwfx9QetHOsbLDrE/vh2t018w9462HM3iaFfxRiK83aJjAt/Ja3NMkOW7FICwWTlQBa3ZbL5FKhuQWkDrg==", + "dev": true + }, + "node_modules/array-union": { + "version": "1.0.2", + "dev": true, + "license": "MIT", + "dependencies": { + "array-uniq": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/array-uniq": { + "version": "1.0.3", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/array-unique": { + "version": "0.3.2", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/arrify": { + "version": "2.0.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/asap": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz", + "integrity": "sha512-BSHWgDSAiKs50o2Re8ppvp3seVHXSRM44cdSsT9FfNEUUZLOGWVCsiWaRPWM1Znn+mqZ1OfVZ3z3DWEzSp7hRA==", + "dev": true + }, + "node_modules/asn1": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.3.tgz", + "integrity": "sha512-6i37w/+EhlWlGUJff3T/Q8u1RGmP5wgbiwYnOnbOqvtrPxT63/sYFyP9RcpxtxGymtfA075IvmOnL7ycNOWl3w==", + "dev": true + }, + "node_modules/asn1.js": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-2.2.1.tgz", + "integrity": "sha512-x1HxYATfjnV+SrtHZR9rxzRvTgZaGAtT/nJB3TPmBxtoEVQVRPArNSzCA+1fVYlHYV/zmMLUJhtZVRcn7WMjfQ==", + "dev": true, + "dependencies": { + "bn.js": "^2.0.0", + "inherits": "^2.0.1", + "minimalistic-assert": "^1.0.0" + } + }, + "node_modules/asn1.js/node_modules/bn.js": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-2.2.0.tgz", + "integrity": "sha512-nlotTGN6qr+NpeCb8d5mdXR47r6GXiyoX4fEeqBF2u9wp/3XgzIwyftMX9TE+StQRJSOUJtyYr9MVk0rn2ftAg==", + "dev": true + }, + "node_modules/assert-plus": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", + "integrity": "sha512-NfJ4UzBCcQGLDlQq7nHxH+tv3kyZ0hHQqF5BO6J7tNJeP5do1llPr8dZ8zHonfhAu0PHAdMkSo+8o0wxg9lZWw==", + "dev": true, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/assign-symbols": { + "version": "1.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/async": { + "version": "0.2.10", + "resolved": "https://registry.npmjs.org/async/-/async-0.2.10.tgz", + "integrity": "sha512-eAkdoKxU6/LkKDBzLpT+t6Ff5EtfSF4wx1WfJiPEEV7WNLnDaRXk0oVysiEPm262roaachGexwUv94WhSgN5TQ==", + "dev": true + }, + "node_modules/async-lock": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/async-lock/-/async-lock-1.4.0.tgz", + "integrity": "sha512-coglx5yIWuetakm3/1dsX9hxCNox22h7+V80RQOu2XUUMidtArxKoZoOtHUPuR84SycKTXzgGzAUR5hJxujyJQ==", + "dev": true + }, + "node_modules/asynckit": { + "version": "0.4.0", + "dev": true, + "license": "MIT" + }, + "node_modules/atob": { + "version": "2.1.2", + "dev": true, + "license": "(MIT OR Apache-2.0)", + "bin": { + "atob": "bin/atob.js" + }, + "engines": { + "node": ">= 4.5.0" + } + }, + "node_modules/babel-jest": { + "version": "26.6.3", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/transform": "^26.6.2", + "@jest/types": "^26.6.2", + "@types/babel__core": "^7.1.7", + "babel-plugin-istanbul": "^6.0.0", + "babel-preset-jest": "^26.6.2", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.4", + "slash": "^3.0.0" + }, + "engines": { + "node": ">= 10.14.2" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/babel-jest/node_modules/slash": { + "version": "3.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/babel-plugin-istanbul": { + "version": "6.1.1", + "dev": true, + "license": "BSD-3-Clause", + "dependencies": { + "@babel/helper-plugin-utils": "^7.0.0", + "@istanbuljs/load-nyc-config": "^1.0.0", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-instrument": "^5.0.4", + "test-exclude": "^6.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/babel-plugin-istanbul/node_modules/istanbul-lib-instrument": { + "version": "5.2.1", + "dev": true, + "license": "BSD-3-Clause", + "dependencies": { + "@babel/core": "^7.12.3", + "@babel/parser": "^7.14.7", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-coverage": "^3.2.0", + "semver": "^6.3.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/babel-plugin-jest-hoist": { + "version": "26.6.2", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/template": "^7.3.3", + "@babel/types": "^7.3.3", + "@types/babel__core": "^7.0.0", + "@types/babel__traverse": "^7.0.6" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/babel-preset-current-node-syntax": { + "version": "1.0.1", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/plugin-syntax-async-generators": "^7.8.4", + "@babel/plugin-syntax-bigint": "^7.8.3", + "@babel/plugin-syntax-class-properties": "^7.8.3", + "@babel/plugin-syntax-import-meta": "^7.8.3", + "@babel/plugin-syntax-json-strings": "^7.8.3", + "@babel/plugin-syntax-logical-assignment-operators": "^7.8.3", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", + "@babel/plugin-syntax-numeric-separator": "^7.8.3", + "@babel/plugin-syntax-object-rest-spread": "^7.8.3", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.3", + "@babel/plugin-syntax-optional-chaining": "^7.8.3", + "@babel/plugin-syntax-top-level-await": "^7.8.3" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/babel-preset-jest": { + "version": "26.6.2", + "dev": true, + "license": "MIT", + "dependencies": { + "babel-plugin-jest-hoist": "^26.6.2", + "babel-preset-current-node-syntax": "^1.0.0" + }, + "engines": { + "node": ">= 10.14.2" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/babel-runtime": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz", + "integrity": "sha512-ITKNuq2wKlW1fJg9sSW52eepoYgZBggvOAHC0u/CYu/qxQ9EVzThCgR69BnSXLHjy2f7SY5zaQ4yt7H9ZVxY2g==", + "dev": true, + "dependencies": { + "core-js": "^2.4.0", + "regenerator-runtime": "^0.11.0" + } + }, + "node_modules/babel-types": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-types/-/babel-types-6.26.0.tgz", + "integrity": "sha512-zhe3V/26rCWsEZK8kZN+HaQj5yQ1CilTObixFzKW1UWjqG7618Twz6YEsCnjfg5gBcJh02DrpCkS9h98ZqDY+g==", + "dev": true, + "dependencies": { + "babel-runtime": "^6.26.0", + "esutils": "^2.0.2", + "lodash": "^4.17.4", + "to-fast-properties": "^1.0.3" + } + }, + "node_modules/babel-types/node_modules/to-fast-properties": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-1.0.3.tgz", + "integrity": "sha512-lxrWP8ejsq+7E3nNjwYmUBMAgjMTZoTI+sdBOpvNyijeDLa29LUn9QaoXAHv4+Z578hbmHHJKZknzxVtvo77og==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/babylon": { + "version": "6.18.0", + "resolved": "https://registry.npmjs.org/babylon/-/babylon-6.18.0.tgz", + "integrity": "sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==", + "dev": true, + "bin": { + "babylon": "bin/babylon.js" + } + }, + "node_modules/backoff": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/backoff/-/backoff-2.5.0.tgz", + "integrity": "sha512-wC5ihrnUXmR2douXmXLCe5O3zg3GKIyvRi/hi58a/XyRxVI+3/yM0PYueQOZXPXQ9pxBislYkw+sF9b7C/RuMA==", + "dev": true, + "dependencies": { + "precond": "0.2" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/balanced-match": { + "version": "1.0.2", + "dev": true, + "license": "MIT" + }, + "node_modules/base": { + "version": "0.11.2", + "dev": true, + "license": "MIT", + "dependencies": { + "cache-base": "^1.0.1", + "class-utils": "^0.3.5", + "component-emitter": "^1.2.1", + "define-property": "^1.0.0", + "isobject": "^3.0.1", + "mixin-deep": "^1.2.0", + "pascalcase": "^0.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/base-64": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/base-64/-/base-64-1.0.0.tgz", + "integrity": "sha512-kwDPIFCGx0NZHog36dj+tHiwP4QMzsZ3AgMViUBKI0+V5n4U0ufTCUMhnQ04diaRI8EX/QcPfql7zlhZ7j4zgg==", + "dev": true + }, + "node_modules/base/node_modules/define-property": { + "version": "1.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "is-descriptor": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/base64-js": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", + "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" }, - "resolve-from": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-2.0.0.tgz", - "integrity": "sha1-lICrIOlP+h2egKgEx+oUdhGWa1c=", - "dev": true + { + "type": "patreon", + "url": "https://www.patreon.com/feross" }, - "resolve-url": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz", - "integrity": "sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo=" + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/base64url": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/base64url/-/base64url-3.0.1.tgz", + "integrity": "sha512-ir1UPr3dkwexU7FdV8qBBbNDRUhMmIekYMFZfi+C/sLNnRESKPl23nB9b2pltqfOQNnGzsDdId90AEtG5tCx4A==", + "dev": true, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/bcryptjs": { + "version": "2.4.3", + "resolved": "https://registry.npmjs.org/bcryptjs/-/bcryptjs-2.4.3.tgz", + "integrity": "sha512-V/Hy/X9Vt7f3BbPJEi8BdVFMByHi+jNXrYkW3huaybV/kQ0KJg0Y6PkEMbn+zeT+i+SiKZ/HMqJGIIt4LZDqNQ==", + "dev": true + }, + "node_modules/better-sqlite3": { + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/better-sqlite3/-/better-sqlite3-7.4.1.tgz", + "integrity": "sha512-sk1kW3PsWE7W7G9qbi5TQxCROlQVR8YWlp4srbyrwN5DrLeamKfrm3JExwOiNSAYyJv8cw5/2HOfvF/ipZj4qg==", + "dev": true, + "hasInstallScript": true, + "optional": true, + "dependencies": { + "bindings": "^1.5.0", + "prebuild-install": "^6.0.1", + "tar": "^6.1.0" + } + }, + "node_modules/bindings": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/bindings/-/bindings-1.5.0.tgz", + "integrity": "sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==", + "dev": true, + "optional": true, + "dependencies": { + "file-uri-to-path": "1.0.0" + } + }, + "node_modules/bl": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz", + "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==", + "dev": true, + "dependencies": { + "buffer": "^5.5.0", + "inherits": "^2.0.4", + "readable-stream": "^3.4.0" + } + }, + "node_modules/bluebird": { + "version": "3.7.2", + "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz", + "integrity": "sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==", + "dev": true + }, + "node_modules/bn.js": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-3.3.0.tgz", + "integrity": "sha512-wRAI2v+ylbyIJ4FTTJKWcd9RqKhmTw2O6qB+Mj+CCuK0NH4vTcJx3DdTONglMhoO0tQGRTis5wmlG6OQC+k/kA==", + "dev": true + }, + "node_modules/body-parser": { + "version": "1.18.3", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.18.3.tgz", + "integrity": "sha512-YQyoqQG3sO8iCmf8+hyVpgHHOv0/hCEFiS4zTGUwTA1HjAFX66wRcNQrVCeJq9pgESMRvUAOvSil5MJlmccuKQ==", + "dev": true, + "dependencies": { + "bytes": "3.0.0", + "content-type": "~1.0.4", + "debug": "2.6.9", + "depd": "~1.1.2", + "http-errors": "~1.6.3", + "iconv-lite": "0.4.23", + "on-finished": "~2.3.0", + "qs": "6.5.2", + "raw-body": "2.3.3", + "type-is": "~1.6.16" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/body-parser/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/body-parser/node_modules/iconv-lite": { + "version": "0.4.23", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.23.tgz", + "integrity": "sha512-neyTUVFtahjf0mB3dZT77u+8O0QB89jFdnBkd5P1JgYPbPaia3gXXOVL2fq8VyU2gMMD7SaN7QukTB/pmXYvDA==", + "dev": true, + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/body-parser/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true + }, + "node_modules/bowser": { + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/bowser/-/bowser-2.11.0.tgz", + "integrity": "sha512-AlcaJBi/pqqJBIQ8U9Mcpc9i8Aqxn88Skv5d+xBX006BY5u8N3mGLHa5Lgppa7L/HfwgwLgZ6NYs+Ag6uUmJRA==", + "dev": true, + "optional": true + }, + "node_modules/brace-expansion": { + "version": "1.1.11", + "dev": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/braces": { + "version": "2.3.2", + "dev": true, + "license": "MIT", + "dependencies": { + "arr-flatten": "^1.1.0", + "array-unique": "^0.3.2", + "extend-shallow": "^2.0.1", + "fill-range": "^4.0.0", + "isobject": "^3.0.1", + "repeat-element": "^1.1.2", + "snapdragon": "^0.8.1", + "snapdragon-node": "^2.0.1", + "split-string": "^3.0.2", + "to-regex": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/braces/node_modules/extend-shallow": { + "version": "2.0.1", + "dev": true, + "license": "MIT", + "dependencies": { + "is-extendable": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/braces/node_modules/is-extendable": { + "version": "0.1.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/brorand": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz", + "integrity": "sha512-cKV8tMCEpQs4hK/ik71d6LrPOnpkpGBR0wzxqr68g2m/LB2GxVYQroAjMJZRVM1Y4BCjCKc3vAamxSzOY2RP+w==", + "dev": true + }, + "node_modules/browser-process-hrtime": { + "version": "1.0.0", + "dev": true, + "license": "BSD-2-Clause" + }, + "node_modules/browserify-aes": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz", + "integrity": "sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==", + "dev": true, + "dependencies": { + "buffer-xor": "^1.0.3", + "cipher-base": "^1.0.0", + "create-hash": "^1.1.0", + "evp_bytestokey": "^1.0.3", + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + } + }, + "node_modules/browserslist": { + "version": "4.21.4", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" }, - "responselike": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/responselike/-/responselike-1.0.2.tgz", - "integrity": "sha1-kYcg7ztjHFZCvgaPFa3lpG9Loec=", - "dev": true, - "requires": { - "lowercase-keys": "^1.0.0" - } + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + } + ], + "license": "MIT", + "dependencies": { + "caniuse-lite": "^1.0.30001400", + "electron-to-chromium": "^1.4.251", + "node-releases": "^2.0.6", + "update-browserslist-db": "^1.0.9" + }, + "bin": { + "browserslist": "cli.js" + }, + "engines": { + "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" + } + }, + "node_modules/bs-logger": { + "version": "0.2.6", + "dev": true, + "license": "MIT", + "dependencies": { + "fast-json-stable-stringify": "2.x" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/bser": { + "version": "2.1.1", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "node-int64": "^0.4.0" + } + }, + "node_modules/bson": { + "version": "4.7.2", + "resolved": "https://registry.npmjs.org/bson/-/bson-4.7.2.tgz", + "integrity": "sha512-Ry9wCtIZ5kGqkJoi6aD8KjxFZEx78guTQDnpXWiNthsxzrxAK/i8E6pCHAIZTbaEFWcOCvbecMukfK7XUvyLpQ==", + "dev": true, + "dependencies": { + "buffer": "^5.6.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/buffer": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", + "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" }, - "restore-cursor": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz", - "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==", - "dev": true, - "optional": true, - "requires": { - "onetime": "^5.1.0", - "signal-exit": "^3.0.2" - } + { + "type": "patreon", + "url": "https://www.patreon.com/feross" }, - "ret": { - "version": "0.1.15", - "resolved": "https://registry.npmjs.org/ret/-/ret-0.1.15.tgz", - "integrity": "sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==" + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "dependencies": { + "base64-js": "^1.3.1", + "ieee754": "^1.1.13" + } + }, + "node_modules/buffer-crc32": { + "version": "0.2.13", + "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", + "integrity": "sha512-VO9Ht/+p3SN7SKWqcrgEzjGbRSJYTx+Q1pTQC0wrWqHx0vpJraQ6GtHx8tvcg1rlK1byhU5gccxgOgj7B0TDkQ==", + "dev": true, + "engines": { + "node": "*" + } + }, + "node_modules/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": "sha512-zRpUiDwd/xk6ADqPMATG8vc9VPrkck7T07OIx0gnjmJAnHnTVXNQG3vfvWNuiZIkwu9KrKdA1iJKfsfTVxE6NA==", + "dev": true + }, + "node_modules/buffer-from": { + "version": "1.1.2", + "dev": true, + "license": "MIT" + }, + "node_modules/buffer-xor": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz", + "integrity": "sha512-571s0T7nZWK6vB67HI5dyUF7wXiNcfaPPPTl6zYCNApANjIvYJTg7hlud/+cJpdAhS7dVzqMLmfhfHR3rAcOjQ==", + "dev": true + }, + "node_modules/bunyan": { + "version": "1.8.15", + "resolved": "https://registry.npmjs.org/bunyan/-/bunyan-1.8.15.tgz", + "integrity": "sha512-0tECWShh6wUysgucJcBAoYegf3JJoZWibxdqhTm7OHPeT42qdjkZ29QCMcKwbgU1kiH+auSIasNRXMLWXafXig==", + "dev": true, + "engines": [ + "node >=0.10.0" + ], + "bin": { + "bunyan": "bin/bunyan" + }, + "optionalDependencies": { + "dtrace-provider": "~0.8", + "moment": "^2.19.3", + "mv": "~2", + "safe-json-stringify": "~1" + } + }, + "node_modules/busboy": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/busboy/-/busboy-1.6.0.tgz", + "integrity": "sha512-8SFQbg/0hQ9xy3UNTB0YEnsNBbWfhf7RtnzpL7TkBiTBRfrQ9Fxcnz7VJsleJpyp6rVLvXiuORqjlHi5q+PYuA==", + "dev": true, + "dependencies": { + "streamsearch": "^1.1.0" + }, + "engines": { + "node": ">=10.16.0" + } + }, + "node_modules/bytes": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz", + "integrity": "sha512-pMhOfFDPiv9t5jjIXkHosWmkSyQbvsgEVNkz0ERHbuLh2T/7j4Mqqpz523Fe8MVY89KC6Sh/QfS2sM+SjgFDcw==", + "dev": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/cache-base": { + "version": "1.0.1", + "dev": true, + "license": "MIT", + "dependencies": { + "collection-visit": "^1.0.0", + "component-emitter": "^1.2.1", + "get-value": "^2.0.6", + "has-value": "^1.0.0", + "isobject": "^3.0.1", + "set-value": "^2.0.0", + "to-object-path": "^0.3.0", + "union-value": "^1.0.0", + "unset-value": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/call-bind": { + "version": "1.0.2", + "dev": true, + "license": "MIT", + "dependencies": { + "function-bind": "^1.1.1", + "get-intrinsic": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/call-me-maybe": { + "version": "1.0.2", + "dev": true, + "license": "MIT" + }, + "node_modules/callsites": { + "version": "3.1.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/camelcase": { + "version": "5.3.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/camelcase-keys": { + "version": "6.2.2", + "dev": true, + "license": "MIT", + "dependencies": { + "camelcase": "^5.3.1", + "map-obj": "^4.0.0", + "quick-lru": "^4.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/caniuse-lite": { + "version": "1.0.30001434", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" }, - "rfc5646": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/rfc5646/-/rfc5646-3.0.0.tgz", - "integrity": "sha512-yFQuMO3ANS0jhQLB3b4NJGQ13RTm6tA9ZRf70nRSmOKchaT88pzh4fBdhcXEOptYdGw22vNqH7IRD/7pjDILZQ==", - "dev": true + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/caniuse-lite" + } + ], + "license": "CC-BY-4.0" + }, + "node_modules/capture-exit": { + "version": "2.0.0", + "dev": true, + "license": "ISC", + "dependencies": { + "rsvp": "^4.8.4" + }, + "engines": { + "node": "6.* || 8.* || >= 10.*" + } + }, + "node_modules/center-align": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/center-align/-/center-align-0.1.3.tgz", + "integrity": "sha512-Baz3aNe2gd2LP2qk5U+sDk/m4oSuwSDcBfayTCTBoWpfIGO5XFxPmjILQII4NGiZjD6DoDI6kf7gKaxkf7s3VQ==", + "dev": true, + "dependencies": { + "align-text": "^0.1.3", + "lazy-cache": "^1.0.3" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/cfenv": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/cfenv/-/cfenv-1.0.3.tgz", + "integrity": "sha512-IG7zAVvo7XOBKv4eAcfBwqtO4SEGPTHss/Rl8ozG9HyE/ouaEBzw/TaPKZWL/ppu5/JRzZ5VOu8v6j0VldIIXg==", + "dev": true, + "dependencies": { + "js-yaml": "3.4.x", + "ports": "1.1.x", + "underscore": "1.8.x" + } + }, + "node_modules/cfenv/node_modules/esprima": { + "version": "2.7.3", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-2.7.3.tgz", + "integrity": "sha512-OarPfz0lFCiW4/AV2Oy1Rp9qu0iusTKqykwTspGCZtPxmF81JR4MmIebvF1F9+UOKth2ZubLQ4XGGaU+hSn99A==", + "dev": true, + "bin": { + "esparse": "bin/esparse.js", + "esvalidate": "bin/esvalidate.js" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/cfenv/node_modules/js-yaml": { + "version": "3.4.6", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.4.6.tgz", + "integrity": "sha512-k9JCHDD9Hefc/S1BhsZTHO93mgZ6Z6VrGrZnGLf1pm1KAFhKjERum6v/4Exk8q9MkQyTRKIqlF+IM0BAPxLduw==", + "dev": true, + "dependencies": { + "argparse": "^1.0.2", + "esprima": "^2.6.0", + "inherit": "^2.2.2" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/chalk": { + "version": "4.1.2", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/char-regex": { + "version": "1.0.2", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + } + }, + "node_modules/character-parser": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/character-parser/-/character-parser-2.2.0.tgz", + "integrity": "sha512-+UqJQjFEFaTAs3bNsF2j2kEN1baG/zghZbdqoYEDxGZtJo9LBzl1A+m0D4n3qKx8N2FNv8/Xp6yV9mQmBuptaw==", + "dev": true, + "dependencies": { + "is-regex": "^1.0.3" + } + }, + "node_modules/chardet": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz", + "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==", + "dev": true, + "optional": true + }, + "node_modules/chownr": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", + "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==", + "dev": true, + "optional": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/ci-info": { + "version": "2.0.0", + "dev": true, + "license": "MIT" + }, + "node_modules/cipher-base": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.4.tgz", + "integrity": "sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==", + "dev": true, + "dependencies": { + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + } + }, + "node_modules/cjs-module-lexer": { + "version": "0.6.0", + "dev": true, + "license": "MIT" + }, + "node_modules/class-utils": { + "version": "0.3.6", + "dev": true, + "license": "MIT", + "dependencies": { + "arr-union": "^3.1.0", + "define-property": "^0.2.5", + "isobject": "^3.0.0", + "static-extend": "^0.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/class-utils/node_modules/define-property": { + "version": "0.2.5", + "dev": true, + "license": "MIT", + "dependencies": { + "is-descriptor": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/class-utils/node_modules/is-accessor-descriptor": { + "version": "0.1.6", + "dev": true, + "license": "MIT", + "dependencies": { + "kind-of": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/class-utils/node_modules/is-accessor-descriptor/node_modules/kind-of": { + "version": "3.2.2", + "dev": true, + "license": "MIT", + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/class-utils/node_modules/is-data-descriptor": { + "version": "0.1.4", + "dev": true, + "license": "MIT", + "dependencies": { + "kind-of": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/class-utils/node_modules/is-data-descriptor/node_modules/kind-of": { + "version": "3.2.2", + "dev": true, + "license": "MIT", + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/class-utils/node_modules/is-descriptor": { + "version": "0.1.6", + "dev": true, + "license": "MIT", + "dependencies": { + "is-accessor-descriptor": "^0.1.6", + "is-data-descriptor": "^0.1.4", + "kind-of": "^5.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/class-utils/node_modules/kind-of": { + "version": "5.1.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/clean-css": { + "version": "4.2.4", + "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-4.2.4.tgz", + "integrity": "sha512-EJUDT7nDVFDvaQgAo2G/PJvxmp1o/c6iXLbswsBbUFXi1Nr+AjA2cKmfbKDMjMvzEe75g3P6JkaDDAKk96A85A==", + "dev": true, + "dependencies": { + "source-map": "~0.6.0" + }, + "engines": { + "node": ">= 4.0" + } + }, + "node_modules/clean-stack": { + "version": "2.2.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/cli-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz", + "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", + "dev": true, + "optional": true, + "dependencies": { + "restore-cursor": "^3.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/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==", + "dev": true, + "optional": true, + "engines": { + "node": ">= 10" + } + }, + "node_modules/cliui": { + "version": "6.0.0", + "dev": true, + "license": "ISC", + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^6.2.0" + } + }, + "node_modules/co": { + "version": "4.6.0", + "dev": true, + "license": "MIT", + "engines": { + "iojs": ">= 1.0.0", + "node": ">= 0.12.0" + } + }, + "node_modules/code-point-at": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", + "integrity": "sha512-RpAVKQA5T63xEj6/giIbUEtZwJ4UFIc3ZtvEkiaUERylqe8xb5IvqcgOurZLahv93CLKfxcw5YI+DZcUBRyLXA==", + "dev": true, + "optional": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/coffeescript": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/coffeescript/-/coffeescript-2.7.0.tgz", + "integrity": "sha512-hzWp6TUE2d/jCcN67LrW1eh5b/rSDKQK6oD6VMLlggYVUUFexgTH9z3dNYihzX4RMhze5FTUsUmOXViJKFQR/A==", + "dev": true, + "bin": { + "cake": "bin/cake", + "coffee": "bin/coffee" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/collect-v8-coverage": { + "version": "1.0.1", + "dev": true, + "license": "MIT" + }, + "node_modules/collection-visit": { + "version": "1.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "map-visit": "^1.0.0", + "object-visit": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/color-convert": { + "version": "2.0.1", + "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/color-name": { + "version": "1.1.4", + "dev": true, + "license": "MIT" + }, + "node_modules/colors": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/colors/-/colors-1.0.3.tgz", + "integrity": "sha512-pFGrxThWcWQ2MsAz6RtgeWe4NK2kUE1WfsrvvlctdII745EW9I0yflqhe7++M5LEc7bV2c/9/5zc8sFcpL0Drw==", + "dev": true, + "engines": { + "node": ">=0.1.90" + } + }, + "node_modules/combined-stream": { + "version": "1.0.8", + "dev": true, + "license": "MIT", + "dependencies": { + "delayed-stream": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/commander": { + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-8.3.0.tgz", + "integrity": "sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww==", + "dev": true, + "engines": { + "node": ">= 12" + } + }, + "node_modules/component-emitter": { + "version": "1.3.0", + "dev": true, + "license": "MIT" + }, + "node_modules/compress-commons": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/compress-commons/-/compress-commons-4.1.1.tgz", + "integrity": "sha512-QLdDLCKNV2dtoTorqgxngQCMA+gWXkM/Nwu7FpeBhk/RdkzimqC3jueb/FDmaZeXh+uby1jkBqE3xArsLBE5wQ==", + "dev": true, + "dependencies": { + "buffer-crc32": "^0.2.13", + "crc32-stream": "^4.0.2", + "normalize-path": "^3.0.0", + "readable-stream": "^3.6.0" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/concat-map": { + "version": "0.0.1", + "dev": true, + "license": "MIT" + }, + "node_modules/concat-stream": { + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.5.2.tgz", + "integrity": "sha512-H6xsIBfQ94aESBG8jGHXQ7i5AEpy5ZeVaLDOisDICiTCKpqEfr34/KmTrspKQNoLKNu9gTkovlpQcUi630AKiQ==", + "dev": true, + "engines": [ + "node >= 0.8" + ], + "dependencies": { + "inherits": "~2.0.1", + "readable-stream": "~2.0.0", + "typedarray": "~0.0.5" + } + }, + "node_modules/concat-stream/node_modules/process-nextick-args": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-1.0.7.tgz", + "integrity": "sha512-yN0WQmuCX63LP/TMvAg31nvT6m4vDqJEiiv2CAZqWOGNWutc9DfDk1NPYYmKUFmaVM2UwDowH4u5AHWYP/jxKw==", + "dev": true + }, + "node_modules/concat-stream/node_modules/readable-stream": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.0.6.tgz", + "integrity": "sha512-TXcFfb63BQe1+ySzsHZI/5v1aJPCShfqvWJ64ayNImXMsN1Cd0YGk/wm8KB7/OeessgPc9QvS9Zou8QTkFzsLw==", + "dev": true, + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.1", + "isarray": "~1.0.0", + "process-nextick-args": "~1.0.6", + "string_decoder": "~0.10.x", + "util-deprecate": "~1.0.1" + } + }, + "node_modules/concat-stream/node_modules/string_decoder": { + "version": "0.10.31", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", + "integrity": "sha512-ev2QzSzWPYmy9GuqfIVildA4OdcGLeFZQrq5ys6RtiuF+RQQiZWr8TZNyAcuVXyQRYfEO+MsoB/1BuQVhOJuoQ==", + "dev": true + }, + "node_modules/console-control-strings": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", + "integrity": "sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ==", + "dev": true, + "optional": true + }, + "node_modules/constantinople": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/constantinople/-/constantinople-3.1.2.tgz", + "integrity": "sha512-yePcBqEFhLOqSBtwYOGGS1exHo/s1xjekXiinh4itpNQGCu4KA1euPh1fg07N2wMITZXQkBz75Ntdt1ctGZouw==", + "dev": true, + "dependencies": { + "@types/babel-types": "^7.0.0", + "@types/babylon": "^6.16.2", + "babel-types": "^6.26.0", + "babylon": "^6.18.0" + } + }, + "node_modules/content-disposition": { + "version": "0.5.4", + "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz", + "integrity": "sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==", + "dev": true, + "dependencies": { + "safe-buffer": "5.2.1" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/content-type": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.5.tgz", + "integrity": "sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/convert-source-map": { + "version": "1.9.0", + "dev": true, + "license": "MIT" + }, + "node_modules/cookie": { + "version": "0.4.2", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.2.tgz", + "integrity": "sha512-aSWTXFzaKWkvHO1Ny/s+ePFpvKsPnjc551iI41v3ny/ow6tBG5Vd+FuqGNhh1LxOmVzOlGUriIlOaokOvhaStA==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/cookie-signature": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", + "integrity": "sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==", + "dev": true + }, + "node_modules/cookiejar": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/cookiejar/-/cookiejar-2.1.4.tgz", + "integrity": "sha512-LDx6oHrK+PhzLKJU9j5S7/Y3jM/mUHvD/DeI1WQmJn652iPC5Y4TBzC9l+5OMOXlyTTA+SmVUPm0HQUwpD5Jqw==", + "dev": true + }, + "node_modules/copy-descriptor": { + "version": "0.1.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/core-js": { + "version": "2.6.12", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.6.12.tgz", + "integrity": "sha512-Kb2wC0fvsWfQrgk8HU5lW6U/Lcs8+9aaYcy4ZFc6DDlo4nZ7n70dEgE5rtR0oG6ufKDUnrwfWL1mXR5ljDatrQ==", + "deprecated": "core-js@<3.23.3 is no longer maintained and not recommended for usage due to the number of issues. Because of the V8 engine whims, feature detection in old core-js versions could cause a slowdown up to 100x even if nothing is polyfilled. Some versions have web compatibility issues. Please, upgrade your dependencies to the actual version of core-js.", + "dev": true, + "hasInstallScript": true + }, + "node_modules/core-util-is": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", + "integrity": "sha512-3lqz5YjWTYnW6dlDa5TLaTCcShfar1e40rmcJVwCBJC6mWlFuj0eCHIElmG1g5kyuJ/GD+8Wn4FFCcz4gJPfaQ==", + "dev": true + }, + "node_modules/cp-file": { + "version": "7.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "graceful-fs": "^4.1.2", + "make-dir": "^3.0.0", + "nested-error-stacks": "^2.0.0", + "p-event": "^4.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/cpy": { + "version": "8.1.2", + "dev": true, + "license": "MIT", + "dependencies": { + "arrify": "^2.0.1", + "cp-file": "^7.0.0", + "globby": "^9.2.0", + "has-glob": "^1.0.0", + "junk": "^3.1.0", + "nested-error-stacks": "^2.1.0", + "p-all": "^2.1.0", + "p-filter": "^2.1.0", + "p-map": "^3.0.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/cpy-cli": { + "version": "3.1.1", + "dev": true, + "license": "MIT", + "dependencies": { + "cpy": "^8.0.0", + "meow": "^6.1.1" + }, + "bin": { + "cpy": "cli.js" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/crc-32": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/crc-32/-/crc-32-1.2.2.tgz", + "integrity": "sha512-ROmzCKrTnOwybPcJApAA6WBWij23HVfGVNKqqrZpuyZOHqK2CwHSvpGuyt/UNNvaIjEd8X5IFGp4Mh+Ie1IHJQ==", + "dev": true, + "bin": { + "crc32": "bin/crc32.njs" + }, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/crc32-stream": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/crc32-stream/-/crc32-stream-4.0.2.tgz", + "integrity": "sha512-DxFZ/Hk473b/muq1VJ///PMNLj0ZMnzye9thBpmjpJKCc5eMgB95aK8zCGrGfQ90cWo561Te6HK9D+j4KPdM6w==", + "dev": true, + "dependencies": { + "crc-32": "^1.2.0", + "readable-stream": "^3.4.0" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/create-hash": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz", + "integrity": "sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==", + "dev": true, + "dependencies": { + "cipher-base": "^1.0.1", + "inherits": "^2.0.1", + "md5.js": "^1.3.4", + "ripemd160": "^2.0.1", + "sha.js": "^2.4.0" + } + }, + "node_modules/create-hmac": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz", + "integrity": "sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==", + "dev": true, + "dependencies": { + "cipher-base": "^1.0.3", + "create-hash": "^1.1.0", + "inherits": "^2.0.1", + "ripemd160": "^2.0.0", + "safe-buffer": "^5.0.1", + "sha.js": "^2.4.8" + } + }, + "node_modules/cross-spawn": { + "version": "7.0.3", + "dev": true, + "license": "MIT", + "dependencies": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/cssom": { + "version": "0.4.4", + "dev": true, + "license": "MIT" + }, + "node_modules/cssstyle": { + "version": "2.3.0", + "dev": true, + "license": "MIT", + "dependencies": { + "cssom": "~0.3.6" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/cssstyle/node_modules/cssom": { + "version": "0.3.8", + "dev": true, + "license": "MIT" + }, + "node_modules/cycle": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/cycle/-/cycle-1.0.3.tgz", + "integrity": "sha512-TVF6svNzeQCOpjCqsy0/CSy8VgObG3wXusJ73xW2GbG5rGx7lC8zxDSURicsXI2UsGdi2L0QNRCi745/wUDvsA==", + "dev": true, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/dashdash": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", + "integrity": "sha512-jRFi8UDGo6j+odZiEpjazZaWqEal3w/basFjQHQEwVtZJGDpxbH1MeYluwCS8Xq5wmLJooDlMgvVarmWfGM44g==", + "dev": true, + "dependencies": { + "assert-plus": "^1.0.0" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/data-urls": { + "version": "2.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "abab": "^2.0.3", + "whatwg-mimetype": "^2.3.0", + "whatwg-url": "^8.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/dbf": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/dbf/-/dbf-0.1.0.tgz", + "integrity": "sha512-wQE9VKjJyLus8f2Q1M5XRKLpBpERKAbMXRcdSKzvDuabyskRVrL/7oBdLFrG4ZNOzzFA6juXNcwCoM99E5jGLg==", + "dev": true, + "dependencies": { + "jdataview": "~2.4.4" + } + }, + "node_modules/debug": { + "version": "4.3.4", + "dev": true, + "license": "MIT", + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/decamelize": { + "version": "1.2.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/decamelize-keys": { + "version": "1.1.1", + "dev": true, + "license": "MIT", + "dependencies": { + "decamelize": "^1.1.0", + "map-obj": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/decamelize-keys/node_modules/map-obj": { + "version": "1.0.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/decimal.js": { + "version": "10.4.2", + "dev": true, + "license": "MIT" + }, + "node_modules/decode-uri-component": { + "version": "0.2.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10" + } + }, + "node_modules/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==", + "dev": true, + "optional": true, + "dependencies": { + "mimic-response": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/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==", + "dev": true, + "optional": true, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/deep-is": { + "version": "0.1.4", + "dev": true, + "license": "MIT" + }, + "node_modules/deepmerge": { + "version": "4.2.2", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/define-properties": { + "version": "1.1.4", + "dev": true, + "license": "MIT", + "dependencies": { + "has-property-descriptors": "^1.0.0", + "object-keys": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/define-property": { + "version": "2.0.2", + "dev": true, + "license": "MIT", + "dependencies": { + "is-descriptor": "^1.0.2", + "isobject": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/delayed-stream": { + "version": "1.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/delegates": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", + "integrity": "sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ==", + "dev": true, + "optional": true + }, + "node_modules/depd": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", + "integrity": "sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/destroy": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz", + "integrity": "sha512-3NdhDuEXnfun/z7x9GOElY49LoqVHoGScmOKwmxhsS8N5Y+Z8KyPPDnaSzqWgYt/ji4mqwfTS34Htrk0zPIXVg==", + "dev": true + }, + "node_modules/detect-libc": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-1.0.3.tgz", + "integrity": "sha512-pGjwhsmsp4kL2RTz08wcOlGN83otlqHeD/Z5T8GXZB+/YcpQ/dgo+lbU8ZsGxV0HIvqqxo9l7mqYwyYMD9bKDg==", + "dev": true, + "optional": true, + "bin": { + "detect-libc": "bin/detect-libc.js" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/detect-newline": { + "version": "3.1.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/dezalgo": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/dezalgo/-/dezalgo-1.0.4.tgz", + "integrity": "sha512-rXSP0bf+5n0Qonsb+SVVfNfIsimO4HEtmnIpPHY8Q1UCzKlQrDMfdobr8nJOOsRgWCyMRqeSBQzmWUMq7zvVig==", + "dev": true, + "dependencies": { + "asap": "^2.0.0", + "wrappy": "1" + } + }, + "node_modules/dicer": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/dicer/-/dicer-0.2.5.tgz", + "integrity": "sha512-FDvbtnq7dzlPz0wyYlOExifDEZcu8h+rErEXgfxqmLfRfC/kJidEFh4+effJRO3P0xmfqyPbSMG0LveNRfTKVg==", + "dev": true, + "dependencies": { + "readable-stream": "1.1.x", + "streamsearch": "0.1.2" + }, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/dicer/node_modules/isarray": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", + "integrity": "sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ==", + "dev": true + }, + "node_modules/dicer/node_modules/readable-stream": { + "version": "1.1.14", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz", + "integrity": "sha512-+MeVjFf4L44XUkhM1eYbD8fyEsxcV81pqMSR5gblfcLCHfZvbrqy4/qYHE+/R5HoBUT11WV5O08Cr1n3YXkWVQ==", + "dev": true, + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.1", + "isarray": "0.0.1", + "string_decoder": "~0.10.x" + } + }, + "node_modules/dicer/node_modules/streamsearch": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/streamsearch/-/streamsearch-0.1.2.tgz", + "integrity": "sha512-jos8u++JKm0ARcSUTAZXOVC0mSox7Bhn6sBgty73P1f3JGf7yG2clTbBNHUdde/kdvP2FESam+vM6l8jBrNxHA==", + "dev": true, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/dicer/node_modules/string_decoder": { + "version": "0.10.31", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", + "integrity": "sha512-ev2QzSzWPYmy9GuqfIVildA4OdcGLeFZQrq5ys6RtiuF+RQQiZWr8TZNyAcuVXyQRYfEO+MsoB/1BuQVhOJuoQ==", + "dev": true + }, + "node_modules/diff-sequences": { + "version": "26.6.2", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/dir-glob": { + "version": "2.2.2", + "dev": true, + "license": "MIT", + "dependencies": { + "path-type": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/doctypes": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/doctypes/-/doctypes-1.1.0.tgz", + "integrity": "sha512-LLBi6pEqS6Do3EKQ3J0NqHWV5hhb78Pi8vvESYwyOy2c31ZEZVdtitdzsQsKb7878PEERhzUk0ftqGhG6Mz+pQ==", + "dev": true + }, + "node_modules/domexception": { + "version": "2.0.1", + "dev": true, + "license": "MIT", + "dependencies": { + "webidl-conversions": "^5.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/domexception/node_modules/webidl-conversions": { + "version": "5.0.0", + "dev": true, + "license": "BSD-2-Clause", + "engines": { + "node": ">=8" + } + }, + "node_modules/dtrace-provider": { + "version": "0.8.8", + "resolved": "https://registry.npmjs.org/dtrace-provider/-/dtrace-provider-0.8.8.tgz", + "integrity": "sha512-b7Z7cNtHPhH9EJhNNbbeqTcXB8LGFFZhq1PGgEvpeHlzd36bhbdTWoE/Ba/YguqpBSlAPKnARWhVlhunCMwfxg==", + "dev": true, + "hasInstallScript": true, + "optional": true, + "dependencies": { + "nan": "^2.14.0" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/duplexer": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/duplexer/-/duplexer-0.1.2.tgz", + "integrity": "sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg==", + "dev": true + }, + "node_modules/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==", + "dev": true, + "dependencies": { + "safe-buffer": "^5.0.1" + } + }, + "node_modules/ee-first": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", + "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==", + "dev": true + }, + "node_modules/electron-to-chromium": { + "version": "1.4.284", + "dev": true, + "license": "ISC" + }, + "node_modules/elliptic": { + "version": "6.5.4", + "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.4.tgz", + "integrity": "sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ==", + "dev": true, + "dependencies": { + "bn.js": "^4.11.9", + "brorand": "^1.1.0", + "hash.js": "^1.0.0", + "hmac-drbg": "^1.0.1", + "inherits": "^2.0.4", + "minimalistic-assert": "^1.0.1", + "minimalistic-crypto-utils": "^1.0.1" + } + }, + "node_modules/elliptic/node_modules/bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", + "dev": true + }, + "node_modules/emittery": { + "version": "0.7.2", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sindresorhus/emittery?sponsor=1" + } + }, + "node_modules/emoji-regex": { + "version": "8.0.0", + "dev": true, + "license": "MIT" + }, + "node_modules/encodeurl": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", + "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==", + "dev": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/end-of-stream": { + "version": "1.4.4", + "dev": true, + "license": "MIT", + "dependencies": { + "once": "^1.4.0" + } + }, + "node_modules/error-ex": { + "version": "1.3.2", + "dev": true, + "license": "MIT", + "dependencies": { + "is-arrayish": "^0.2.1" + } + }, + "node_modules/es-abstract": { + "version": "1.20.4", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.2", + "es-to-primitive": "^1.2.1", + "function-bind": "^1.1.1", + "function.prototype.name": "^1.1.5", + "get-intrinsic": "^1.1.3", + "get-symbol-description": "^1.0.0", + "has": "^1.0.3", + "has-property-descriptors": "^1.0.0", + "has-symbols": "^1.0.3", + "internal-slot": "^1.0.3", + "is-callable": "^1.2.7", + "is-negative-zero": "^2.0.2", + "is-regex": "^1.1.4", + "is-shared-array-buffer": "^1.0.2", + "is-string": "^1.0.7", + "is-weakref": "^1.0.2", + "object-inspect": "^1.12.2", + "object-keys": "^1.1.1", + "object.assign": "^4.1.4", + "regexp.prototype.flags": "^1.4.3", + "safe-regex-test": "^1.0.0", + "string.prototype.trimend": "^1.0.5", + "string.prototype.trimstart": "^1.0.5", + "unbox-primitive": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/es-to-primitive": { + "version": "1.2.1", + "dev": true, + "license": "MIT", + "dependencies": { + "is-callable": "^1.1.4", + "is-date-object": "^1.0.1", + "is-symbol": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/escalade": { + "version": "3.1.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/escape-html": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", + "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==", + "dev": true + }, + "node_modules/escape-string-regexp": { + "version": "2.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/escodegen": { + "version": "2.0.0", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "esprima": "^4.0.1", + "estraverse": "^5.2.0", + "esutils": "^2.0.2", + "optionator": "^0.8.1" + }, + "bin": { + "escodegen": "bin/escodegen.js", + "esgenerate": "bin/esgenerate.js" + }, + "engines": { + "node": ">=6.0" + }, + "optionalDependencies": { + "source-map": "~0.6.1" + } + }, + "node_modules/esprima": { + "version": "4.0.1", + "dev": true, + "license": "BSD-2-Clause", + "bin": { + "esparse": "bin/esparse.js", + "esvalidate": "bin/esvalidate.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/estraverse": { + "version": "5.3.0", + "dev": true, + "license": "BSD-2-Clause", + "engines": { + "node": ">=4.0" + } + }, + "node_modules/esutils": { + "version": "2.0.3", + "dev": true, + "license": "BSD-2-Clause", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/etag": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", + "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/event-stream": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/event-stream/-/event-stream-4.0.1.tgz", + "integrity": "sha512-qACXdu/9VHPBzcyhdOWR5/IahhGMf0roTeZJfzz077GwylcDd90yOHLouhmv7GJ5XzPi6ekaQWd8AvPP2nOvpA==", + "dev": true, + "dependencies": { + "duplexer": "^0.1.1", + "from": "^0.1.7", + "map-stream": "0.0.7", + "pause-stream": "^0.0.11", + "split": "^1.0.1", + "stream-combiner": "^0.2.2", + "through": "^2.3.8" + } + }, + "node_modules/evp_bytestokey": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz", + "integrity": "sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==", + "dev": true, + "dependencies": { + "md5.js": "^1.3.4", + "safe-buffer": "^5.1.1" + } + }, + "node_modules/exec-sh": { + "version": "0.3.6", + "dev": true, + "license": "MIT" + }, + "node_modules/execa": { + "version": "4.1.0", + "dev": true, + "license": "MIT", + "dependencies": { + "cross-spawn": "^7.0.0", + "get-stream": "^5.0.0", + "human-signals": "^1.1.1", + "is-stream": "^2.0.0", + "merge-stream": "^2.0.0", + "npm-run-path": "^4.0.0", + "onetime": "^5.1.0", + "signal-exit": "^3.0.2", + "strip-final-newline": "^2.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sindresorhus/execa?sponsor=1" + } + }, + "node_modules/exit": { + "version": "0.1.2", + "dev": true, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/expand-brackets": { + "version": "2.1.4", + "dev": true, + "license": "MIT", + "dependencies": { + "debug": "^2.3.3", + "define-property": "^0.2.5", + "extend-shallow": "^2.0.1", + "posix-character-classes": "^0.1.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/expand-brackets/node_modules/debug": { + "version": "2.6.9", + "dev": true, + "license": "MIT", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/expand-brackets/node_modules/define-property": { + "version": "0.2.5", + "dev": true, + "license": "MIT", + "dependencies": { + "is-descriptor": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/expand-brackets/node_modules/extend-shallow": { + "version": "2.0.1", + "dev": true, + "license": "MIT", + "dependencies": { + "is-extendable": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/expand-brackets/node_modules/is-accessor-descriptor": { + "version": "0.1.6", + "dev": true, + "license": "MIT", + "dependencies": { + "kind-of": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/expand-brackets/node_modules/is-accessor-descriptor/node_modules/kind-of": { + "version": "3.2.2", + "dev": true, + "license": "MIT", + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/expand-brackets/node_modules/is-data-descriptor": { + "version": "0.1.4", + "dev": true, + "license": "MIT", + "dependencies": { + "kind-of": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/expand-brackets/node_modules/is-data-descriptor/node_modules/kind-of": { + "version": "3.2.2", + "dev": true, + "license": "MIT", + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/expand-brackets/node_modules/is-descriptor": { + "version": "0.1.6", + "dev": true, + "license": "MIT", + "dependencies": { + "is-accessor-descriptor": "^0.1.6", + "is-data-descriptor": "^0.1.4", + "kind-of": "^5.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/expand-brackets/node_modules/is-extendable": { + "version": "0.1.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/expand-brackets/node_modules/kind-of": { + "version": "5.1.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/expand-brackets/node_modules/ms": { + "version": "2.0.0", + "dev": true, + "license": "MIT" + }, + "node_modules/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==", + "dev": true, + "optional": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/expect": { + "version": "26.6.2", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/types": "^26.6.2", + "ansi-styles": "^4.0.0", + "jest-get-type": "^26.3.0", + "jest-matcher-utils": "^26.6.2", + "jest-message-util": "^26.6.2", + "jest-regex-util": "^26.0.0" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/express": { + "version": "4.17.3", + "resolved": "https://registry.npmjs.org/express/-/express-4.17.3.tgz", + "integrity": "sha512-yuSQpz5I+Ch7gFrPCk4/c+dIBKlQUxtgwqzph132bsT6qhuzss6I8cLJQz7B3rFblzd6wtcI0ZbGltH/C4LjUg==", + "dev": true, + "dependencies": { + "accepts": "~1.3.8", + "array-flatten": "1.1.1", + "body-parser": "1.19.2", + "content-disposition": "0.5.4", + "content-type": "~1.0.4", + "cookie": "0.4.2", + "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.7", + "qs": "6.9.7", + "range-parser": "~1.2.1", + "safe-buffer": "5.2.1", + "send": "0.17.2", + "serve-static": "1.14.2", + "setprototypeof": "1.2.0", + "statuses": "~1.5.0", + "type-is": "~1.6.18", + "utils-merge": "1.0.1", + "vary": "~1.1.2" + }, + "engines": { + "node": ">= 0.10.0" + } + }, + "node_modules/express-session": { + "version": "1.17.2", + "resolved": "https://registry.npmjs.org/express-session/-/express-session-1.17.2.tgz", + "integrity": "sha512-mPcYcLA0lvh7D4Oqr5aNJFMtBMKPLl++OKKxkHzZ0U0oDq1rpKBnkR5f5vCHR26VeArlTOEF9td4x5IjICksRQ==", + "dev": true, + "dependencies": { + "cookie": "0.4.1", + "cookie-signature": "1.0.6", + "debug": "2.6.9", + "depd": "~2.0.0", + "on-headers": "~1.0.2", + "parseurl": "~1.3.3", + "safe-buffer": "5.2.1", + "uid-safe": "~2.1.5" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/express-session/node_modules/cookie": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.1.tgz", + "integrity": "sha512-ZwrFkGJxUR3EIoXtO+yVE69Eb7KlixbaeAWfBQB9vVsNn/o+Yw69gBWSSDK825hQNdN+wF8zELf3dFNl/kxkUA==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/express-session/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/express-session/node_modules/depd": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", + "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==", + "dev": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/express-session/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true + }, + "node_modules/express/node_modules/body-parser": { + "version": "1.19.2", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.19.2.tgz", + "integrity": "sha512-SAAwOxgoCKMGs9uUAUFHygfLAyaniaoun6I8mFY9pRAJL9+Kec34aU+oIjDhTycub1jozEfEwx1W1IuOYxVSFw==", + "dev": true, + "dependencies": { + "bytes": "3.1.2", + "content-type": "~1.0.4", + "debug": "2.6.9", + "depd": "~1.1.2", + "http-errors": "1.8.1", + "iconv-lite": "0.4.24", + "on-finished": "~2.3.0", + "qs": "6.9.7", + "raw-body": "2.4.3", + "type-is": "~1.6.18" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/express/node_modules/bytes": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", + "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", + "dev": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/express/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/express/node_modules/http-errors": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.8.1.tgz", + "integrity": "sha512-Kpk9Sm7NmI+RHhnj6OIWDI1d6fIoFAtFt9RLaTMRlg/8w49juAStsrBgp0Dp4OdxdVbRIeKhtCUvoi/RuAhO4g==", + "dev": true, + "dependencies": { + "depd": "~1.1.2", + "inherits": "2.0.4", + "setprototypeof": "1.2.0", + "statuses": ">= 1.5.0 < 2", + "toidentifier": "1.0.1" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/express/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true + }, + "node_modules/express/node_modules/qs": { + "version": "6.9.7", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.9.7.tgz", + "integrity": "sha512-IhMFgUmuNpyRfxA90umL7ByLlgRXu6tIfKPpF5TmcfRLlLCckfP/g3IQmju6jjpu+Hh8rA+2p6A27ZSPOOHdKw==", + "dev": true, + "engines": { + "node": ">=0.6" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/express/node_modules/raw-body": { + "version": "2.4.3", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.4.3.tgz", + "integrity": "sha512-UlTNLIcu0uzb4D2f4WltY6cVjLi+/jEN4lgEUj3E04tpMDpUlkBo/eSn6zou9hum2VMNpCCUone0O0WeJim07g==", + "dev": true, + "dependencies": { + "bytes": "3.1.2", + "http-errors": "1.8.1", + "iconv-lite": "0.4.24", + "unpipe": "1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/extend-shallow": { + "version": "3.0.2", + "dev": true, + "license": "MIT", + "dependencies": { + "assign-symbols": "^1.0.0", + "is-extendable": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/external-editor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz", + "integrity": "sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==", + "dev": true, + "optional": true, + "dependencies": { + "chardet": "^0.7.0", + "iconv-lite": "^0.4.24", + "tmp": "^0.0.33" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/extglob": { + "version": "2.0.4", + "dev": true, + "license": "MIT", + "dependencies": { + "array-unique": "^0.3.2", + "define-property": "^1.0.0", + "expand-brackets": "^2.1.4", + "extend-shallow": "^2.0.1", + "fragment-cache": "^0.2.1", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/extglob/node_modules/define-property": { + "version": "1.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "is-descriptor": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/extglob/node_modules/extend-shallow": { + "version": "2.0.1", + "dev": true, + "license": "MIT", + "dependencies": { + "is-extendable": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/extglob/node_modules/is-extendable": { + "version": "0.1.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/extsprintf": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.4.1.tgz", + "integrity": "sha512-Wrk35e8ydCKDj/ArClo1VrPVmN8zph5V4AtHwIuHhvMXsKf73UT3BOD+azBIW+3wOJ4FhEH7zyaJCFvChjYvMA==", + "dev": true, + "engines": [ + "node >=0.6.0" + ] + }, + "node_modules/eyes": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/eyes/-/eyes-0.1.8.tgz", + "integrity": "sha512-GipyPsXO1anza0AOZdy69Im7hGFCNB7Y/NGjDlZGJ3GJJLtwNSb2vrzYrTYJRrRloVx7pl+bhUaTB8yiccPvFQ==", + "dev": true, + "engines": { + "node": "> 0.1.90" + } + }, + "node_modules/fast-glob": { + "version": "2.2.7", + "dev": true, + "license": "MIT", + "dependencies": { + "@mrmlnc/readdir-enhanced": "^2.2.1", + "@nodelib/fs.stat": "^1.1.2", + "glob-parent": "^3.1.0", + "is-glob": "^4.0.0", + "merge2": "^1.2.3", + "micromatch": "^3.1.10" + }, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/fast-json-stable-stringify": { + "version": "2.1.0", + "dev": true, + "license": "MIT" + }, + "node_modules/fast-levenshtein": { + "version": "2.0.6", + "dev": true, + "license": "MIT" + }, + "node_modules/fast-safe-stringify": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/fast-safe-stringify/-/fast-safe-stringify-2.1.1.tgz", + "integrity": "sha512-W+KJc2dmILlPplD/H4K9l9LcAHAfPtP6BY84uVLXQ6Evcz9Lcg33Y2z1IVblT6xdY54PXYVHEv+0Wpq8Io6zkA==", + "dev": true + }, + "node_modules/fast-xml-parser": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/fast-xml-parser/-/fast-xml-parser-4.1.2.tgz", + "integrity": "sha512-CDYeykkle1LiA/uqQyNwYpFbyF6Axec6YapmpUP+/RHWIoR1zKjocdvNaTsxCxZzQ6v9MLXaSYm9Qq0thv0DHg==", + "dev": true, + "optional": true, + "dependencies": { + "strnum": "^1.0.5" + }, + "bin": { + "fxparser": "src/cli/cli.js" + }, + "funding": { + "type": "paypal", + "url": "https://paypal.me/naturalintelligence" + } + }, + "node_modules/fb-watchman": { + "version": "2.0.2", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "bser": "2.1.1" + } + }, + "node_modules/figures": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz", + "integrity": "sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==", + "dev": true, + "optional": true, + "dependencies": { + "escape-string-regexp": "^1.0.5" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/figures/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "dev": true, + "optional": true, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/file-type": { + "version": "16.5.0", + "resolved": "https://registry.npmjs.org/file-type/-/file-type-16.5.0.tgz", + "integrity": "sha512-OxgWA9tbL8N/WP00GD1z8O0MiwQKFyWRs1q+3FhjdvcGgKqwxcejyGWso3n4/IMU6DdwV+ARZ4A7TTnPkDcSiw==", + "dev": true, + "dependencies": { + "readable-web-to-node-stream": "^3.0.0", + "strtok3": "^6.0.3", + "token-types": "^2.0.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sindresorhus/file-type?sponsor=1" + } + }, + "node_modules/file-uri-to-path": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz", + "integrity": "sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==", + "dev": true, + "optional": true + }, + "node_modules/fill-range": { + "version": "4.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "extend-shallow": "^2.0.1", + "is-number": "^3.0.0", + "repeat-string": "^1.6.1", + "to-regex-range": "^2.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/fill-range/node_modules/extend-shallow": { + "version": "2.0.1", + "dev": true, + "license": "MIT", + "dependencies": { + "is-extendable": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/fill-range/node_modules/is-extendable": { + "version": "0.1.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/finalhandler": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.2.tgz", + "integrity": "sha512-aAWcW57uxVNrQZqFXjITpW3sIUQmHGG3qSb9mUah9MgMC4NeWhNOlNjXEYq3HjRAvL6arUviZGGJsBg6z0zsWA==", + "dev": true, + "dependencies": { + "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" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/finalhandler/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/finalhandler/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true + }, + "node_modules/find-up": { + "version": "4.1.0", + "dev": true, + "license": "MIT", + "dependencies": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/for-in": { + "version": "1.0.2", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/foreachasync": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/foreachasync/-/foreachasync-3.0.0.tgz", + "integrity": "sha512-J+ler7Ta54FwwNcx6wQRDhTIbNeyDcARMkOcguEqnEdtm0jKvN3Li3PDAb2Du3ubJYEWfYL83XMROXdsXAXycw==", + "dev": true + }, + "node_modules/form-data": { + "version": "3.0.1", + "dev": true, + "license": "MIT", + "dependencies": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "mime-types": "^2.1.12" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/formidable": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/formidable/-/formidable-2.1.2.tgz", + "integrity": "sha512-CM3GuJ57US06mlpQ47YcunuUZ9jpm8Vx+P2CGt2j7HpgkKZO/DJYQ0Bobim8G6PFQmK5lOqOOdUXboU+h73A4g==", + "dev": true, + "dependencies": { + "dezalgo": "^1.0.4", + "hexoid": "^1.0.0", + "once": "^1.4.0", + "qs": "^6.11.0" + }, + "funding": { + "url": "https://ko-fi.com/tunnckoCore/commissions" + } + }, + "node_modules/formidable/node_modules/qs": { + "version": "6.11.1", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.11.1.tgz", + "integrity": "sha512-0wsrzgTz/kAVIeuxSjnpGC56rzYtr6JT/2BwEvMaPhFIoYa1aGO8LbzuU1R0uUYQkLpWBTOj0l/CLAJB64J6nQ==", + "dev": true, + "dependencies": { + "side-channel": "^1.0.4" + }, + "engines": { + "node": ">=0.6" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/forwarded": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz", + "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/fragment-cache": { + "version": "0.2.1", + "dev": true, + "license": "MIT", + "dependencies": { + "map-cache": "^0.2.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/fresh": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", + "integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/from": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/from/-/from-0.1.7.tgz", + "integrity": "sha512-twe20eF1OxVxp/ML/kq2p1uc6KvFK/+vs8WjEbeKmV2He22MKm7YF2ANIt+EOqhJ5L3K/SuuPhk0hWQDjOM23g==", + "dev": true + }, + "node_modules/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==", + "dev": true + }, + "node_modules/fs-extra": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-4.0.3.tgz", + "integrity": "sha512-q6rbdDd1o2mAnQreO7YADIxf/Whx4AHBiRf6d+/cVT8h44ss+lHgxf1FemcqDnQt9X3ct4McHr+JMGlYSsK7Cg==", + "dev": true, + "dependencies": { + "graceful-fs": "^4.1.2", + "jsonfile": "^4.0.0", + "universalify": "^0.1.0" + } + }, + "node_modules/fs-extra/node_modules/universalify": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", + "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", + "dev": true, + "engines": { + "node": ">= 4.0.0" + } + }, + "node_modules/fs-minipass": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", + "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", + "dev": true, + "optional": true, + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/fs-minipass/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "dev": true, + "optional": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/fs.realpath": { + "version": "1.0.0", + "dev": true, + "license": "ISC" + }, + "node_modules/fsevents": { + "version": "2.3.2", + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, + "node_modules/function-bind": { + "version": "1.1.1", + "dev": true, + "license": "MIT" + }, + "node_modules/function.prototype.name": { + "version": "1.1.5", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3", + "es-abstract": "^1.19.0", + "functions-have-names": "^1.2.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/functions-have-names": { + "version": "1.2.3", + "dev": true, + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/gauge": { + "version": "2.7.4", + "resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz", + "integrity": "sha512-14x4kjc6lkD3ltw589k0NrPD6cCNTD6CWoVUNpB85+DrtONoZn+Rug6xZU5RvSC4+TZPxA5AnBibQYAvZn41Hg==", + "dev": true, + "optional": true, + "dependencies": { + "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" + } + }, + "node_modules/gauge/node_modules/ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==", + "dev": true, + "optional": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/gauge/node_modules/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": "sha512-1pqUqRjkhPJ9miNq9SwMfdvi6lBJcd6eFxvfaivQhaH3SgisfiuudvFntdKOmxuee/77l+FPjKrQjWvmPjWrRw==", + "dev": true, + "optional": true, + "dependencies": { + "number-is-nan": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/gauge/node_modules/string-width": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", + "integrity": "sha512-0XsVpQLnVCXHJfyEs8tC0zpTVIr5PKKsQtkT29IwupnPTjtPmQ3xT/4yCREF9hYkV/3M3kzcUTSAZT6a6h81tw==", + "dev": true, + "optional": true, + "dependencies": { + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/gauge/node_modules/strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg==", + "dev": true, + "optional": true, + "dependencies": { + "ansi-regex": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/gensync": { + "version": "1.0.0-beta.2", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/geojson": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/geojson/-/geojson-0.5.0.tgz", + "integrity": "sha512-/Bx5lEn+qRF4TfQ5aLu6NH+UKtvIv7Lhc487y/c8BdludrCTpiWf9wyI0RTyqg49MFefIAvFDuEi5Dfd/zgNxQ==", + "dev": true, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/geojson-rbush": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/geojson-rbush/-/geojson-rbush-3.2.0.tgz", + "integrity": "sha512-oVltQTXolxvsz1sZnutlSuLDEcQAKYC/uXt9zDzJJ6bu0W+baTI8LZBaTup5afzibEH4N3jlq2p+a152wlBJ7w==", + "dev": true, + "dependencies": { + "@turf/bbox": "*", + "@turf/helpers": "6.x", + "@turf/meta": "6.x", + "@types/geojson": "7946.0.8", + "rbush": "^3.0.1" + } + }, + "node_modules/geojson-rbush/node_modules/@types/geojson": { + "version": "7946.0.8", + "resolved": "https://registry.npmjs.org/@types/geojson/-/geojson-7946.0.8.tgz", + "integrity": "sha512-1rkryxURpr6aWP7R786/UQOkJ3PcpQiWkAXBmdWc7ryFWqN6a4xfK7BtjXvFBKO9LjQ+MWQSWxYeZX1OApnArA==", + "dev": true + }, + "node_modules/geojson-stream": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/geojson-stream/-/geojson-stream-0.1.0.tgz", + "integrity": "sha512-svSg5fFXPaTiqzEBGXScA+nISaeC9rLvku2PH+wM5LToATUw2bLIrvls43ymnT9Xnp51nBPVyK9m4Af40KpJ7w==", + "dev": true, + "dependencies": { + "JSONStream": "^1.0.0", + "through": "^2.3.4" + } + }, + "node_modules/geojson-validation": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/geojson-validation/-/geojson-validation-1.0.2.tgz", + "integrity": "sha512-K5jrJ4wFvORn2pRKeg181LL0QPYuEKn2KHPvfH1m2QtFlAXFLKdseqt0XwBM3ELOY7kNM1fglRQ6ZwUQZ5S00A==", + "dev": true, + "bin": { + "gjv": "bin/gjv" + } + }, + "node_modules/geojson-vt": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/geojson-vt/-/geojson-vt-3.1.3.tgz", + "integrity": "sha512-oWaMsd08gUa1c4B4s2Z3LIX+oUIe8G/i5vp9JLjXlROuveMUpEwT49WDGHp5Gs4RVaJ0B51h1QTcj/dvtT+w9A==", + "dev": true + }, + "node_modules/get-caller-file": { + "version": "2.0.5", + "dev": true, + "license": "ISC", + "engines": { + "node": "6.* || 8.* || >= 10.*" + } + }, + "node_modules/get-intrinsic": { + "version": "1.1.3", + "dev": true, + "license": "MIT", + "dependencies": { + "function-bind": "^1.1.1", + "has": "^1.0.3", + "has-symbols": "^1.0.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/get-package-type": { + "version": "0.1.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/get-stream": { + "version": "5.2.0", + "dev": true, + "license": "MIT", + "dependencies": { + "pump": "^3.0.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/get-symbol-description": { + "version": "1.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.2", + "get-intrinsic": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/get-value": { + "version": "2.0.6", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/github-from-package": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/github-from-package/-/github-from-package-0.0.0.tgz", + "integrity": "sha512-SyHy3T1v2NUXn29OsWdxmK6RwHD+vkj3v8en8AOBZ1wBQ/hCAQ5bAQTD02kW4W9tUp/3Qh6J8r9EvntiyCmOOw==", + "dev": true, + "optional": true + }, + "node_modules/glob": { + "version": "7.2.3", + "dev": true, + "license": "ISC", + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/glob-parent": { + "version": "3.1.0", + "dev": true, + "license": "ISC", + "dependencies": { + "is-glob": "^3.1.0", + "path-dirname": "^1.0.0" + } + }, + "node_modules/glob-parent/node_modules/is-glob": { + "version": "3.1.0", + "dev": true, + "license": "MIT", + "dependencies": { + "is-extglob": "^2.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/glob-to-regexp": { + "version": "0.3.0", + "dev": true, + "license": "BSD" + }, + "node_modules/globals": { + "version": "11.12.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/globby": { + "version": "9.2.0", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/glob": "^7.1.1", + "array-union": "^1.0.2", + "dir-glob": "^2.2.2", + "fast-glob": "^2.2.6", + "glob": "^7.1.3", + "ignore": "^4.0.3", + "pify": "^4.0.1", + "slash": "^2.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/gm": { + "version": "1.23.1", + "resolved": "https://registry.npmjs.org/gm/-/gm-1.23.1.tgz", + "integrity": "sha512-wYGVAa8/sh9ggF5qWoOs6eArcAgwEPkDNvf637jHRHkMUznvs7m/Q2vrc0KLN6B8px3nnRJqJcXK4mTK6lLFmg==", + "dev": true, + "dependencies": { + "array-parallel": "~0.1.3", + "array-series": "~0.1.5", + "cross-spawn": "^4.0.0", + "debug": "^3.1.0" + }, + "engines": { + "node": ">= 0.10.0" + } + }, + "node_modules/gm/node_modules/cross-spawn": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-4.0.2.tgz", + "integrity": "sha512-yAXz/pA1tD8Gtg2S98Ekf/sewp3Lcp3YoFKJ4Hkp5h5yLWnKVTDU0kwjKJ8NDCYcfTLfyGkzTikst+jWypT1iA==", + "dev": true, + "dependencies": { + "lru-cache": "^4.0.1", + "which": "^1.2.9" + } + }, + "node_modules/gm/node_modules/debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "dev": true, + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/gm/node_modules/lru-cache": { + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz", + "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==", + "dev": true, + "dependencies": { + "pseudomap": "^1.0.2", + "yallist": "^2.1.2" + } + }, + "node_modules/gm/node_modules/which": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "dev": true, + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "which": "bin/which" + } + }, + "node_modules/gm/node_modules/yallist": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", + "integrity": "sha512-ncTzHV7NvsQZkYe1DW7cbDLm0YpzHmZF5r/iyP3ZnQtMiJ+pjzisCiMNI+Sj+xQF5pXhSHxSB3uDbsBTzY/c2A==", + "dev": true + }, + "node_modules/graceful-fs": { + "version": "4.2.10", + "dev": true, + "license": "ISC" + }, + "node_modules/growly": { + "version": "1.3.0", + "dev": true, + "license": "MIT", + "optional": true + }, + "node_modules/hard-rejection": { + "version": "2.1.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/has": { + "version": "1.0.3", + "dev": true, + "license": "MIT", + "dependencies": { + "function-bind": "^1.1.1" + }, + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/has-bigints": { + "version": "1.0.2", + "dev": true, + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-color": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/has-color/-/has-color-0.1.7.tgz", + "integrity": "sha512-kaNz5OTAYYmt646Hkqw50/qyxP2vFnTVu5AQ1Zmk22Kk5+4Qx6BpO8+u7IKsML5fOsFk0ZT0AcCJNYwcvaLBvw==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/has-flag": { + "version": "4.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/has-glob": { + "version": "1.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "is-glob": "^3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/has-glob/node_modules/is-glob": { + "version": "3.1.0", + "dev": true, + "license": "MIT", + "dependencies": { + "is-extglob": "^2.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/has-property-descriptors": { + "version": "1.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "get-intrinsic": "^1.1.1" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-symbols": { + "version": "1.0.3", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-tostringtag": { + "version": "1.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "has-symbols": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-unicode": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", + "integrity": "sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ==", + "dev": true, + "optional": true + }, + "node_modules/has-value": { + "version": "1.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "get-value": "^2.0.6", + "has-values": "^1.0.0", + "isobject": "^3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/has-values": { + "version": "1.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "is-number": "^3.0.0", + "kind-of": "^4.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/has-values/node_modules/kind-of": { + "version": "4.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/hash-base": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.1.0.tgz", + "integrity": "sha512-1nmYp/rhMDiE7AYkDw+lLwlAzz0AntGIe51F3RfFfEqyQ3feY2eI/NcwC6umIQVOASPMsWJLJScWKSSvzL9IVA==", + "dev": true, + "dependencies": { + "inherits": "^2.0.4", + "readable-stream": "^3.6.0", + "safe-buffer": "^5.2.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/hash.js": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.7.tgz", + "integrity": "sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==", + "dev": true, + "dependencies": { + "inherits": "^2.0.3", + "minimalistic-assert": "^1.0.1" + } + }, + "node_modules/hexoid": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/hexoid/-/hexoid-1.0.0.tgz", + "integrity": "sha512-QFLV0taWQOZtvIRIAdBChesmogZrtuXvVWsFHZTk2SU+anspqZ2vMnoLg7IE1+Uk16N19APic1BuF8bC8c2m5g==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/hmac-drbg": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz", + "integrity": "sha512-Tti3gMqLdZfhOQY1Mzf/AanLiqh1WTiJgEj26ZuYQ9fbkLomzGchCws4FyrSd4VkpBfiNhaE1On+lOz894jvXg==", + "dev": true, + "dependencies": { + "hash.js": "^1.0.3", + "minimalistic-assert": "^1.0.0", + "minimalistic-crypto-utils": "^1.0.1" + } + }, + "node_modules/hosted-git-info": { + "version": "2.8.9", + "dev": true, + "license": "ISC" + }, + "node_modules/html-encoding-sniffer": { + "version": "2.0.1", + "dev": true, + "license": "MIT", + "dependencies": { + "whatwg-encoding": "^1.0.5" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/html-escaper": { + "version": "2.0.2", + "dev": true, + "license": "MIT" + }, + "node_modules/http-errors": { + "version": "1.6.3", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz", + "integrity": "sha512-lks+lVC8dgGyh97jxvxeYTWQFvh4uw4yC12gVl63Cg30sjPX4wuGcdkICVXDAESr6OJGjqGA8Iz5mkeN6zlD7A==", + "dev": true, + "dependencies": { + "depd": "~1.1.2", + "inherits": "2.0.3", + "setprototypeof": "1.1.0", + "statuses": ">= 1.4.0 < 2" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/http-errors/node_modules/inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw==", + "dev": true + }, + "node_modules/http-errors/node_modules/setprototypeof": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz", + "integrity": "sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==", + "dev": true + }, + "node_modules/http-proxy-agent": { + "version": "4.0.1", + "dev": true, + "license": "MIT", + "dependencies": { + "@tootallnate/once": "1", + "agent-base": "6", + "debug": "4" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/https-proxy-agent": { + "version": "5.0.1", + "dev": true, + "license": "MIT", + "dependencies": { + "agent-base": "6", + "debug": "4" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/human-signals": { + "version": "1.1.1", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": ">=8.12.0" + } + }, + "node_modules/iconv-lite": { + "version": "0.4.24", + "dev": true, + "license": "MIT", + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ieee754": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", + "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" }, - "right-align": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/right-align/-/right-align-0.1.3.tgz", - "integrity": "sha1-YTObci/mo1FWiSENJOFMlhSGE+8=", - "dev": true, - "requires": { - "align-text": "^0.1.1" - } + { + "type": "patreon", + "url": "https://www.patreon.com/feross" }, - "rimraf": { - "version": "2.4.5", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.4.5.tgz", - "integrity": "sha1-7nEM5dk6j9uFb7Xqj/Di11k0sto=", - "requires": { - "glob": "^6.0.1" - }, - "dependencies": { - "glob": { - "version": "6.0.4", - "resolved": "https://registry.npmjs.org/glob/-/glob-6.0.4.tgz", - "integrity": "sha1-DwiGD2oVUSey+t1PnOJLGqtuTSI=", - "requires": { - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "2 || 3", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - } - } + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/ignore": { + "version": "4.0.6", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 4" + } + }, + "node_modules/image-size": { + "version": "0.8.3", + "resolved": "https://registry.npmjs.org/image-size/-/image-size-0.8.3.tgz", + "integrity": "sha512-SMtq1AJ+aqHB45c3FsB4ERK0UCiA2d3H1uq8s+8T0Pf8A3W4teyBQyaFaktH6xvZqh+npwlKU7i4fJo0r7TYTg==", + "dev": true, + "dependencies": { + "queue": "6.0.1" + }, + "bin": { + "image-size": "bin/image-size.js" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/import-local": { + "version": "3.1.0", + "dev": true, + "license": "MIT", + "dependencies": { + "pkg-dir": "^4.2.0", + "resolve-cwd": "^3.0.0" + }, + "bin": { + "import-local-fixture": "fixtures/cli.js" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/imurmurhash": { + "version": "0.1.4", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.8.19" + } + }, + "node_modules/indent-string": { + "version": "4.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/inflight": { + "version": "1.0.6", + "dev": true, + "license": "ISC", + "dependencies": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "node_modules/inherit": { + "version": "2.2.7", + "resolved": "https://registry.npmjs.org/inherit/-/inherit-2.2.7.tgz", + "integrity": "sha512-dxJmC1j0Q32NFAjvbd6g3lXYLZ49HgzotgbSMwMkoiTXGhC9412Oc24g7A7M9cPPkw/vDsF2cSII+2zJwocUtQ==", + "dev": true + }, + "node_modules/inherits": { + "version": "2.0.4", + "dev": true, + "license": "ISC" + }, + "node_modules/ini": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", + "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==", + "dev": true, + "optional": true + }, + "node_modules/inquirer": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-8.0.0.tgz", + "integrity": "sha512-ON8pEJPPCdyjxj+cxsYRe6XfCJepTxANdNnTebsTuQgXpRyZRRT9t4dJwjRubgmvn20CLSEnozRUayXyM9VTXA==", + "dev": true, + "optional": true, + "dependencies": { + "ansi-escapes": "^4.2.1", + "chalk": "^4.1.0", + "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", + "run-async": "^2.4.0", + "rxjs": "^6.6.6", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0", + "through": "^2.3.6" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/internal-slot": { + "version": "1.0.3", + "dev": true, + "license": "MIT", + "dependencies": { + "get-intrinsic": "^1.1.0", + "has": "^1.0.3", + "side-channel": "^1.0.4" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/ip": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ip/-/ip-2.0.0.tgz", + "integrity": "sha512-WKa+XuLG1A1R0UWhl2+1XQSi+fZWMsYKffMZTTYsiZaUD8k2yDAj5atimTUD2TZkyCkNEeYE5NhFZmupOGtjYQ==", + "dev": true + }, + "node_modules/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==", + "dev": true, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/is-accessor-descriptor": { + "version": "1.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "kind-of": "^6.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-arrayish": { + "version": "0.2.1", + "dev": true, + "license": "MIT" + }, + "node_modules/is-bigint": { + "version": "1.0.4", + "dev": true, + "license": "MIT", + "dependencies": { + "has-bigints": "^1.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-boolean-object": { + "version": "1.1.2", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-buffer": { + "version": "1.1.6", + "dev": true, + "license": "MIT" + }, + "node_modules/is-callable": { + "version": "1.2.7", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-ci": { + "version": "2.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "ci-info": "^2.0.0" + }, + "bin": { + "is-ci": "bin.js" + } + }, + "node_modules/is-core-module": { + "version": "2.11.0", + "dev": true, + "license": "MIT", + "dependencies": { + "has": "^1.0.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-data-descriptor": { + "version": "1.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "kind-of": "^6.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-date-object": { + "version": "1.0.5", + "dev": true, + "license": "MIT", + "dependencies": { + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-descriptor": { + "version": "1.0.2", + "dev": true, + "license": "MIT", + "dependencies": { + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-docker": { + "version": "2.2.1", + "dev": true, + "license": "MIT", + "optional": true, + "bin": { + "is-docker": "cli.js" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-expression": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-expression/-/is-expression-3.0.0.tgz", + "integrity": "sha512-vyMeQMq+AiH5uUnoBfMTwf18tO3bM6k1QXBE9D6ueAAquEfCZe3AJPtud9g6qS0+4X8xA7ndpZiDyeb2l2qOBw==", + "dev": true, + "dependencies": { + "acorn": "~4.0.2", + "object-assign": "^4.0.1" + } + }, + "node_modules/is-expression/node_modules/acorn": { + "version": "4.0.13", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-4.0.13.tgz", + "integrity": "sha512-fu2ygVGuMmlzG8ZeRJ0bvR41nsAkxxhbyk8bZ1SS521Z7vmgJFTQQlfz/Mp/nJexGBz+v8sC9bM6+lNgskt4Ug==", + "dev": true, + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/is-extendable": { + "version": "1.0.1", + "dev": true, + "license": "MIT", + "dependencies": { + "is-plain-object": "^2.0.4" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-extglob": { + "version": "2.1.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/is-generator-fn": { + "version": "2.1.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/is-glob": { + "version": "4.0.3", + "dev": true, + "license": "MIT", + "dependencies": { + "is-extglob": "^2.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-negative-zero": { + "version": "2.0.2", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-number": { + "version": "3.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "kind-of": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-number-object": { + "version": "1.0.7", + "dev": true, + "license": "MIT", + "dependencies": { + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-number/node_modules/kind-of": { + "version": "3.2.2", + "dev": true, + "license": "MIT", + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-plain-obj": { + "version": "1.1.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-plain-object": { + "version": "2.0.4", + "dev": true, + "license": "MIT", + "dependencies": { + "isobject": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-potential-custom-element-name": { + "version": "1.0.1", + "dev": true, + "license": "MIT" + }, + "node_modules/is-promise": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-2.2.2.tgz", + "integrity": "sha512-+lP4/6lKUBfQjZ2pdxThZvLUAafmZb8OAxFb8XXtiQmS35INgr85hdOGoEs124ez1FCnZJt6jau/T+alh58QFQ==", + "dev": true + }, + "node_modules/is-regex": { + "version": "1.1.4", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-shared-array-buffer": { + "version": "1.0.2", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-stream": { + "version": "2.0.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-string": { + "version": "1.0.7", + "dev": true, + "license": "MIT", + "dependencies": { + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-symbol": { + "version": "1.0.4", + "dev": true, + "license": "MIT", + "dependencies": { + "has-symbols": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-typedarray": { + "version": "1.0.0", + "dev": true, + "license": "MIT" + }, + "node_modules/is-weakref": { + "version": "1.0.2", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-windows": { + "version": "1.0.2", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-wsl": { + "version": "2.2.0", + "dev": true, + "license": "MIT", + "optional": true, + "dependencies": { + "is-docker": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/isarray": { + "version": "1.0.0", + "dev": true, + "license": "MIT" + }, + "node_modules/isexe": { + "version": "2.0.0", + "dev": true, + "license": "ISC" + }, + "node_modules/isobject": { + "version": "3.0.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/isstream": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", + "integrity": "sha512-Yljz7ffyPbrLpLngrMtZ7NduUgVvi6wG9RJ9IUcyCd59YQ911PBJphODUcbOVbqYfxe1wuYf/LJ8PauMRwsM/g==", + "dev": true + }, + "node_modules/istanbul-lib-coverage": { + "version": "3.2.0", + "dev": true, + "license": "BSD-3-Clause", + "engines": { + "node": ">=8" + } + }, + "node_modules/istanbul-lib-instrument": { + "version": "4.0.3", + "dev": true, + "license": "BSD-3-Clause", + "dependencies": { + "@babel/core": "^7.7.5", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-coverage": "^3.0.0", + "semver": "^6.3.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/istanbul-lib-report": { + "version": "3.0.0", + "dev": true, + "license": "BSD-3-Clause", + "dependencies": { + "istanbul-lib-coverage": "^3.0.0", + "make-dir": "^3.0.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/istanbul-lib-source-maps": { + "version": "4.0.1", + "dev": true, + "license": "BSD-3-Clause", + "dependencies": { + "debug": "^4.1.1", + "istanbul-lib-coverage": "^3.0.0", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/istanbul-reports": { + "version": "3.1.5", + "dev": true, + "license": "BSD-3-Clause", + "dependencies": { + "html-escaper": "^2.0.0", + "istanbul-lib-report": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jdataview": { + "version": "2.4.6", + "resolved": "https://registry.npmjs.org/jdataview/-/jdataview-2.4.6.tgz", + "integrity": "sha512-nDAdfHj2a+MBEj6eEiefq6zV7HCzW2mYKEw1y9oipRXpghE+5gGieQZOFiIdnXFYdMZh9OxloEUrTH956hV7PA==", + "dev": true + }, + "node_modules/jest": { + "version": "26.6.3", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/core": "^26.6.3", + "import-local": "^3.0.2", + "jest-cli": "^26.6.3" + }, + "bin": { + "jest": "bin/jest.js" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-changed-files": { + "version": "26.6.2", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/types": "^26.6.2", + "execa": "^4.0.0", + "throat": "^5.0.0" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-cli": { + "version": "26.6.3", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/core": "^26.6.3", + "@jest/test-result": "^26.6.2", + "@jest/types": "^26.6.2", + "chalk": "^4.0.0", + "exit": "^0.1.2", + "graceful-fs": "^4.2.4", + "import-local": "^3.0.2", + "is-ci": "^2.0.0", + "jest-config": "^26.6.3", + "jest-util": "^26.6.2", + "jest-validate": "^26.6.2", + "prompts": "^2.0.1", + "yargs": "^15.4.1" + }, + "bin": { + "jest": "bin/jest.js" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-config": { + "version": "26.6.3", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/core": "^7.1.0", + "@jest/test-sequencer": "^26.6.3", + "@jest/types": "^26.6.2", + "babel-jest": "^26.6.3", + "chalk": "^4.0.0", + "deepmerge": "^4.2.2", + "glob": "^7.1.1", + "graceful-fs": "^4.2.4", + "jest-environment-jsdom": "^26.6.2", + "jest-environment-node": "^26.6.2", + "jest-get-type": "^26.3.0", + "jest-jasmine2": "^26.6.3", + "jest-regex-util": "^26.0.0", + "jest-resolve": "^26.6.2", + "jest-util": "^26.6.2", + "jest-validate": "^26.6.2", + "micromatch": "^4.0.2", + "pretty-format": "^26.6.2" + }, + "engines": { + "node": ">= 10.14.2" + }, + "peerDependencies": { + "ts-node": ">=9.0.0" + }, + "peerDependenciesMeta": { + "ts-node": { + "optional": true + } + } + }, + "node_modules/jest-config/node_modules/braces": { + "version": "3.0.2", + "dev": true, + "license": "MIT", + "dependencies": { + "fill-range": "^7.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-config/node_modules/fill-range": { + "version": "7.0.1", + "dev": true, + "license": "MIT", + "dependencies": { + "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-config/node_modules/is-number": { + "version": "7.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/jest-config/node_modules/micromatch": { + "version": "4.0.5", + "dev": true, + "license": "MIT", + "dependencies": { + "braces": "^3.0.2", + "picomatch": "^2.3.1" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/jest-config/node_modules/to-regex-range": { + "version": "5.0.1", + "dev": true, + "license": "MIT", + "dependencies": { + "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/jest-diff": { + "version": "26.6.2", + "dev": true, + "license": "MIT", + "dependencies": { + "chalk": "^4.0.0", + "diff-sequences": "^26.6.2", + "jest-get-type": "^26.3.0", + "pretty-format": "^26.6.2" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-docblock": { + "version": "26.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "detect-newline": "^3.0.0" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-each": { + "version": "26.6.2", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/types": "^26.6.2", + "chalk": "^4.0.0", + "jest-get-type": "^26.3.0", + "jest-util": "^26.6.2", + "pretty-format": "^26.6.2" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-environment-jsdom": { + "version": "26.6.2", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/environment": "^26.6.2", + "@jest/fake-timers": "^26.6.2", + "@jest/types": "^26.6.2", + "@types/node": "*", + "jest-mock": "^26.6.2", + "jest-util": "^26.6.2", + "jsdom": "^16.4.0" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-environment-node": { + "version": "26.6.2", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/environment": "^26.6.2", + "@jest/fake-timers": "^26.6.2", + "@jest/types": "^26.6.2", + "@types/node": "*", + "jest-mock": "^26.6.2", + "jest-util": "^26.6.2" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-get-type": { + "version": "26.3.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-haste-map": { + "version": "26.6.2", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/types": "^26.6.2", + "@types/graceful-fs": "^4.1.2", + "@types/node": "*", + "anymatch": "^3.0.3", + "fb-watchman": "^2.0.0", + "graceful-fs": "^4.2.4", + "jest-regex-util": "^26.0.0", + "jest-serializer": "^26.6.2", + "jest-util": "^26.6.2", + "jest-worker": "^26.6.2", + "micromatch": "^4.0.2", + "sane": "^4.0.3", + "walker": "^1.0.7" + }, + "engines": { + "node": ">= 10.14.2" + }, + "optionalDependencies": { + "fsevents": "^2.1.2" + } + }, + "node_modules/jest-haste-map/node_modules/braces": { + "version": "3.0.2", + "dev": true, + "license": "MIT", + "dependencies": { + "fill-range": "^7.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-haste-map/node_modules/fill-range": { + "version": "7.0.1", + "dev": true, + "license": "MIT", + "dependencies": { + "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-haste-map/node_modules/is-number": { + "version": "7.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/jest-haste-map/node_modules/micromatch": { + "version": "4.0.5", + "dev": true, + "license": "MIT", + "dependencies": { + "braces": "^3.0.2", + "picomatch": "^2.3.1" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/jest-haste-map/node_modules/to-regex-range": { + "version": "5.0.1", + "dev": true, + "license": "MIT", + "dependencies": { + "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/jest-jasmine2": { + "version": "26.6.3", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/traverse": "^7.1.0", + "@jest/environment": "^26.6.2", + "@jest/source-map": "^26.6.2", + "@jest/test-result": "^26.6.2", + "@jest/types": "^26.6.2", + "@types/node": "*", + "chalk": "^4.0.0", + "co": "^4.6.0", + "expect": "^26.6.2", + "is-generator-fn": "^2.0.0", + "jest-each": "^26.6.2", + "jest-matcher-utils": "^26.6.2", + "jest-message-util": "^26.6.2", + "jest-runtime": "^26.6.3", + "jest-snapshot": "^26.6.2", + "jest-util": "^26.6.2", + "pretty-format": "^26.6.2", + "throat": "^5.0.0" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-leak-detector": { + "version": "26.6.2", + "dev": true, + "license": "MIT", + "dependencies": { + "jest-get-type": "^26.3.0", + "pretty-format": "^26.6.2" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-matcher-utils": { + "version": "26.6.2", + "dev": true, + "license": "MIT", + "dependencies": { + "chalk": "^4.0.0", + "jest-diff": "^26.6.2", + "jest-get-type": "^26.3.0", + "pretty-format": "^26.6.2" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-message-util": { + "version": "26.6.2", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.0.0", + "@jest/types": "^26.6.2", + "@types/stack-utils": "^2.0.0", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.4", + "micromatch": "^4.0.2", + "pretty-format": "^26.6.2", + "slash": "^3.0.0", + "stack-utils": "^2.0.2" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-message-util/node_modules/braces": { + "version": "3.0.2", + "dev": true, + "license": "MIT", + "dependencies": { + "fill-range": "^7.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-message-util/node_modules/fill-range": { + "version": "7.0.1", + "dev": true, + "license": "MIT", + "dependencies": { + "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-message-util/node_modules/is-number": { + "version": "7.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/jest-message-util/node_modules/micromatch": { + "version": "4.0.5", + "dev": true, + "license": "MIT", + "dependencies": { + "braces": "^3.0.2", + "picomatch": "^2.3.1" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/jest-message-util/node_modules/slash": { + "version": "3.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-message-util/node_modules/to-regex-range": { + "version": "5.0.1", + "dev": true, + "license": "MIT", + "dependencies": { + "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/jest-mock": { + "version": "26.6.2", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/types": "^26.6.2", + "@types/node": "*" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-pnp-resolver": { + "version": "1.2.3", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + }, + "peerDependencies": { + "jest-resolve": "*" + }, + "peerDependenciesMeta": { + "jest-resolve": { + "optional": true + } + } + }, + "node_modules/jest-regex-util": { + "version": "26.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-resolve": { + "version": "26.6.2", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/types": "^26.6.2", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.4", + "jest-pnp-resolver": "^1.2.2", + "jest-util": "^26.6.2", + "read-pkg-up": "^7.0.1", + "resolve": "^1.18.1", + "slash": "^3.0.0" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-resolve-dependencies": { + "version": "26.6.3", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/types": "^26.6.2", + "jest-regex-util": "^26.0.0", + "jest-snapshot": "^26.6.2" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-resolve/node_modules/slash": { + "version": "3.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-runner": { + "version": "26.6.3", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/console": "^26.6.2", + "@jest/environment": "^26.6.2", + "@jest/test-result": "^26.6.2", + "@jest/types": "^26.6.2", + "@types/node": "*", + "chalk": "^4.0.0", + "emittery": "^0.7.1", + "exit": "^0.1.2", + "graceful-fs": "^4.2.4", + "jest-config": "^26.6.3", + "jest-docblock": "^26.0.0", + "jest-haste-map": "^26.6.2", + "jest-leak-detector": "^26.6.2", + "jest-message-util": "^26.6.2", + "jest-resolve": "^26.6.2", + "jest-runtime": "^26.6.3", + "jest-util": "^26.6.2", + "jest-worker": "^26.6.2", + "source-map-support": "^0.5.6", + "throat": "^5.0.0" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-runtime": { + "version": "26.6.3", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/console": "^26.6.2", + "@jest/environment": "^26.6.2", + "@jest/fake-timers": "^26.6.2", + "@jest/globals": "^26.6.2", + "@jest/source-map": "^26.6.2", + "@jest/test-result": "^26.6.2", + "@jest/transform": "^26.6.2", + "@jest/types": "^26.6.2", + "@types/yargs": "^15.0.0", + "chalk": "^4.0.0", + "cjs-module-lexer": "^0.6.0", + "collect-v8-coverage": "^1.0.0", + "exit": "^0.1.2", + "glob": "^7.1.3", + "graceful-fs": "^4.2.4", + "jest-config": "^26.6.3", + "jest-haste-map": "^26.6.2", + "jest-message-util": "^26.6.2", + "jest-mock": "^26.6.2", + "jest-regex-util": "^26.0.0", + "jest-resolve": "^26.6.2", + "jest-snapshot": "^26.6.2", + "jest-util": "^26.6.2", + "jest-validate": "^26.6.2", + "slash": "^3.0.0", + "strip-bom": "^4.0.0", + "yargs": "^15.4.1" + }, + "bin": { + "jest-runtime": "bin/jest-runtime.js" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-runtime/node_modules/slash": { + "version": "3.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-serializer": { + "version": "26.6.2", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/node": "*", + "graceful-fs": "^4.2.4" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-snapshot": { + "version": "26.6.2", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/types": "^7.0.0", + "@jest/types": "^26.6.2", + "@types/babel__traverse": "^7.0.4", + "@types/prettier": "^2.0.0", + "chalk": "^4.0.0", + "expect": "^26.6.2", + "graceful-fs": "^4.2.4", + "jest-diff": "^26.6.2", + "jest-get-type": "^26.3.0", + "jest-haste-map": "^26.6.2", + "jest-matcher-utils": "^26.6.2", + "jest-message-util": "^26.6.2", + "jest-resolve": "^26.6.2", + "natural-compare": "^1.4.0", + "pretty-format": "^26.6.2", + "semver": "^7.3.2" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-snapshot/node_modules/semver": { + "version": "7.3.8", + "dev": true, + "license": "ISC", + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/jest-util": { + "version": "26.6.2", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/types": "^26.6.2", + "@types/node": "*", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.4", + "is-ci": "^2.0.0", + "micromatch": "^4.0.2" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-util/node_modules/braces": { + "version": "3.0.2", + "dev": true, + "license": "MIT", + "dependencies": { + "fill-range": "^7.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-util/node_modules/fill-range": { + "version": "7.0.1", + "dev": true, + "license": "MIT", + "dependencies": { + "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-util/node_modules/is-number": { + "version": "7.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/jest-util/node_modules/micromatch": { + "version": "4.0.5", + "dev": true, + "license": "MIT", + "dependencies": { + "braces": "^3.0.2", + "picomatch": "^2.3.1" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/jest-util/node_modules/to-regex-range": { + "version": "5.0.1", + "dev": true, + "license": "MIT", + "dependencies": { + "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/jest-validate": { + "version": "26.6.2", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/types": "^26.6.2", + "camelcase": "^6.0.0", + "chalk": "^4.0.0", + "jest-get-type": "^26.3.0", + "leven": "^3.1.0", + "pretty-format": "^26.6.2" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-validate/node_modules/camelcase": { + "version": "6.3.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/jest-watcher": { + "version": "26.6.2", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/test-result": "^26.6.2", + "@jest/types": "^26.6.2", + "@types/node": "*", + "ansi-escapes": "^4.2.1", + "chalk": "^4.0.0", + "jest-util": "^26.6.2", + "string-length": "^4.0.1" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-worker": { + "version": "26.6.2", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^7.0.0" + }, + "engines": { + "node": ">= 10.13.0" + } + }, + "node_modules/jose": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/jose/-/jose-0.3.2.tgz", + "integrity": "sha512-zgssbxYYw3JIz01E8YlOv346Jrq/cmnIJCwwuzc+6xRrSoTrQ1OryRtEErwI8DhykdyKG0s3r8i0G+l26JC8NA==", + "deprecated": "this version is no longer supported", + "dev": true, + "dependencies": { + "asn1.js": "^2.2.0", + "bn.js": "^3.1.2" + } + }, + "node_modules/js-stringify": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/js-stringify/-/js-stringify-1.0.2.tgz", + "integrity": "sha512-rtS5ATOo2Q5k1G+DADISilDA6lv79zIiwFd6CcjuIxGKLFm5C+RLImRscVap9k55i+MOZwgliw+NejvkLuGD5g==", + "dev": true + }, + "node_modules/js-tokens": { + "version": "4.0.0", + "dev": true, + "license": "MIT" + }, + "node_modules/js-yaml": { + "version": "3.14.1", + "dev": true, + "license": "MIT", + "dependencies": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/jsdom": { + "version": "16.7.0", + "dev": true, + "license": "MIT", + "dependencies": { + "abab": "^2.0.5", + "acorn": "^8.2.4", + "acorn-globals": "^6.0.0", + "cssom": "^0.4.4", + "cssstyle": "^2.3.0", + "data-urls": "^2.0.0", + "decimal.js": "^10.2.1", + "domexception": "^2.0.1", + "escodegen": "^2.0.0", + "form-data": "^3.0.0", + "html-encoding-sniffer": "^2.0.1", + "http-proxy-agent": "^4.0.1", + "https-proxy-agent": "^5.0.0", + "is-potential-custom-element-name": "^1.0.1", + "nwsapi": "^2.2.0", + "parse5": "6.0.1", + "saxes": "^5.0.1", + "symbol-tree": "^3.2.4", + "tough-cookie": "^4.0.0", + "w3c-hr-time": "^1.0.2", + "w3c-xmlserializer": "^2.0.0", + "webidl-conversions": "^6.1.0", + "whatwg-encoding": "^1.0.5", + "whatwg-mimetype": "^2.3.0", + "whatwg-url": "^8.5.0", + "ws": "^7.4.6", + "xml-name-validator": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "peerDependencies": { + "canvas": "^2.5.0" + }, + "peerDependenciesMeta": { + "canvas": { + "optional": true + } + } + }, + "node_modules/jsesc": { + "version": "2.5.2", + "dev": true, + "license": "MIT", + "bin": { + "jsesc": "bin/jsesc" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/json-parse-better-errors": { + "version": "1.0.2", + "dev": true, + "license": "MIT" + }, + "node_modules/json-parse-even-better-errors": { + "version": "2.3.1", + "dev": true, + "license": "MIT" + }, + "node_modules/json-stringify-safe": { + "version": "5.0.1", + "dev": true, + "license": "ISC" + }, + "node_modules/json2csv": { + "version": "4.5.1", + "resolved": "https://registry.npmjs.org/json2csv/-/json2csv-4.5.1.tgz", + "integrity": "sha512-o90Xa1ziGk3i7AJEO79Jac4+7SEUk58/DxS5mDPW6GF7poX0y7Y0pm1FbWrkz9VzKE4MpUW9aKBOCpJ0U1Ua8A==", + "deprecated": "Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.", + "dev": true, + "dependencies": { + "commander": "^2.15.1", + "jsonparse": "^1.3.1", + "lodash.get": "^4.4.2" + }, + "bin": { + "json2csv": "bin/json2csv.js" + } + }, + "node_modules/json2csv/node_modules/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==", + "dev": true + }, + "node_modules/json5": { + "version": "2.2.1", + "dev": true, + "license": "MIT", + "bin": { + "json5": "lib/cli.js" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/jsonfile": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", + "integrity": "sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==", + "dev": true, + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/jsonparse": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/jsonparse/-/jsonparse-1.3.1.tgz", + "integrity": "sha512-POQXvpdL69+CluYsillJ7SUhKvytYjW9vG/GKpnf+xP8UWgYEM/RaMzHHofbALDiKbbP1W8UEYmgGl39WkPZsg==", + "dev": true, + "engines": [ + "node >= 0.2.0" + ] + }, + "node_modules/JSONStream": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/JSONStream/-/JSONStream-1.3.5.tgz", + "integrity": "sha512-E+iruNOY8VV9s4JEbe1aNEm6MiszPRr/UfcHMz0TQh1BXSxHK+ASV1R6W4HpjBhSeS+54PIsAMCBmwD06LLsqQ==", + "dev": true, + "dependencies": { + "jsonparse": "^1.2.0", + "through": ">=2.2.7 <3" + }, + "bin": { + "JSONStream": "bin.js" + }, + "engines": { + "node": "*" + } + }, + "node_modules/jsonwebtoken": { + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/jsonwebtoken/-/jsonwebtoken-9.0.0.tgz", + "integrity": "sha512-tuGfYXxkQGDPnLJ7SibiQgVgeDgfbPq2k2ICcbgqW8WxWLBAxKQM/ZCu/IT8SOSwmaYl4dpTFCW5xZv7YbbWUw==", + "dev": true, + "dependencies": { + "jws": "^3.2.2", + "lodash": "^4.17.21", + "ms": "^2.1.1", + "semver": "^7.3.8" + }, + "engines": { + "node": ">=12", + "npm": ">=6" + } + }, + "node_modules/jsonwebtoken/node_modules/semver": { + "version": "7.3.8", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", + "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", + "dev": true, + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/jstransformer": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/jstransformer/-/jstransformer-1.0.0.tgz", + "integrity": "sha512-C9YK3Rf8q6VAPDCCU9fnqo3mAfOH6vUGnMcP4AQAYIEpWtfGLpwOTmZ+igtdK5y+VvI2n3CyYSzy4Qh34eq24A==", + "dev": true, + "dependencies": { + "is-promise": "^2.0.0", + "promise": "^7.0.1" + } + }, + "node_modules/junk": { + "version": "3.1.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/jwa": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/jwa/-/jwa-1.4.1.tgz", + "integrity": "sha512-qiLX/xhEEFKUAJ6FiBMbes3w9ATzyk5W7Hvzpa/SLYdxNtng+gcurvrI7TbACjIXlsJyr05/S1oUhZrc63evQA==", + "dev": true, + "dependencies": { + "buffer-equal-constant-time": "1.0.1", + "ecdsa-sig-formatter": "1.0.11", + "safe-buffer": "^5.0.1" + } + }, + "node_modules/jws": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/jws/-/jws-3.2.2.tgz", + "integrity": "sha512-YHlZCB6lMTllWDtSPHz/ZXTsi8S00usEV6v1tjq8tOUZzw7DpSDWVXjXDre6ed1w/pd495ODpHZYSdkRTsa0HA==", + "dev": true, + "dependencies": { + "jwa": "^1.4.1", + "safe-buffer": "^5.0.1" + } + }, + "node_modules/kareem": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/kareem/-/kareem-2.5.1.tgz", + "integrity": "sha512-7jFxRVm+jD+rkq3kY0iZDJfsO2/t4BBPeEb2qKn2lR/9KhuksYk5hxzfRYWMPV8P/x2d0kHD306YyWLzjjH+uA==", + "dev": true, + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/kind-of": { + "version": "6.0.3", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/kleur": { + "version": "3.0.3", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/lazy-cache": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/lazy-cache/-/lazy-cache-1.0.4.tgz", + "integrity": "sha512-RE2g0b5VGZsOCFOCgP7omTRYFqydmZkBwl5oNnQ1lDYC57uyO9KqNnNVxT7COSHTxrRCWVcAVOcbjk+tvh/rgQ==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/lazystream": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/lazystream/-/lazystream-1.0.1.tgz", + "integrity": "sha512-b94GiNHQNy6JNTrt5w6zNyffMrNkXZb3KTkCZJb2V1xaEGCk093vkZ2jk3tpaeP33/OiXC+WvK9AxUebnf5nbw==", + "dev": true, + "dependencies": { + "readable-stream": "^2.0.5" + }, + "engines": { + "node": ">= 0.6.3" + } + }, + "node_modules/lazystream/node_modules/readable-stream": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", + "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", + "dev": true, + "dependencies": { + "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" + } + }, + "node_modules/lazystream/node_modules/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 + }, + "node_modules/lazystream/node_modules/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, + "dependencies": { + "safe-buffer": "~5.1.0" + } + }, + "node_modules/ldap-filter": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/ldap-filter/-/ldap-filter-0.2.2.tgz", + "integrity": "sha512-HDnDRNY/z0E3qljSjDWtu7xXCUdiXzwadz7m1jIwl3XHhPMrqUyurOd32YWH5IZ3zZMP4PrG7gKdRIB2uZHKGA==", + "dev": true, + "dependencies": { + "assert-plus": "0.1.5" + }, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/ldap-filter/node_modules/assert-plus": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-0.1.5.tgz", + "integrity": "sha512-brU24g7ryhRwGCI2y+1dGQmQXiZF7TtIj583S96y0jjdajIe6wn8BuXyELYhvD22dtIxDQVFk04YTJwwdwOYJw==", + "dev": true, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/ldapauth-fork": { + "version": "4.3.3", + "resolved": "https://registry.npmjs.org/ldapauth-fork/-/ldapauth-fork-4.3.3.tgz", + "integrity": "sha512-x76VpQ5ZqkwAJmqwcD6KIwDiNEbgIGIPGwC/eA17e1dxWhlTx36w0DlLOFwjTuZ2iuaLTsZsUprlVqvSlwc/1Q==", + "dev": true, + "dependencies": { + "@types/ldapjs": "^1.0.0", + "@types/node": "*", + "bcryptjs": "^2.4.0", + "ldapjs": "^1.0.2", + "lru-cache": "^5.1.1" + }, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/ldapauth-fork/node_modules/lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "dev": true, + "dependencies": { + "yallist": "^3.0.2" + } + }, + "node_modules/ldapauth-fork/node_modules/yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", + "dev": true + }, + "node_modules/ldapjs": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/ldapjs/-/ldapjs-1.0.2.tgz", + "integrity": "sha512-Y8fRYFXOWWKBs9I2QRNXb0FncDcG0Gjc7YU6XI3kIV9hLMRaFKH5QHi2TZeB7FrpgXuabOgL0GdYALbssHxH5Q==", + "dev": true, + "dependencies": { + "asn1": "0.2.3", + "assert-plus": "^1.0.0", + "backoff": "^2.5.0", + "bunyan": "^1.8.3", + "dashdash": "^1.14.0", + "ldap-filter": "0.2.2", + "once": "^1.4.0", + "vasync": "^1.6.4", + "verror": "^1.8.1" + }, + "bin": { + "ldapjs-add": "bin/ldapjs-add", + "ldapjs-compare": "bin/ldapjs-compare", + "ldapjs-delete": "bin/ldapjs-delete", + "ldapjs-modify": "bin/ldapjs-modify", + "ldapjs-search": "bin/ldapjs-search" + }, + "engines": { + "node": ">=0.10" + }, + "optionalDependencies": { + "dtrace-provider": "~0.8" + } + }, + "node_modules/leven": { + "version": "3.1.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/levn": { + "version": "0.3.0", + "dev": true, + "license": "MIT", + "dependencies": { + "prelude-ls": "~1.1.2", + "type-check": "~0.3.2" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/lines-and-columns": { + "version": "1.2.4", + "dev": true, + "license": "MIT" + }, + "node_modules/load-json-file": { + "version": "4.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "graceful-fs": "^4.1.2", + "parse-json": "^4.0.0", + "pify": "^3.0.0", + "strip-bom": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/load-json-file/node_modules/pify": { + "version": "3.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/load-json-file/node_modules/strip-bom": { + "version": "3.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/locate-path": { + "version": "5.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "p-locate": "^4.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/lodash": { + "version": "4.17.21", + "dev": true, + "license": "MIT" + }, + "node_modules/lodash.defaults": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/lodash.defaults/-/lodash.defaults-4.2.0.tgz", + "integrity": "sha512-qjxPLHd3r5DnsdGacqOMU6pb/avJzdh9tFX2ymgoZE27BmjXrNy/y4LoaiTeAb+O3gL8AfpJGtqfX/ae2leYYQ==", + "dev": true + }, + "node_modules/lodash.difference": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.difference/-/lodash.difference-4.5.0.tgz", + "integrity": "sha512-dS2j+W26TQ7taQBGN8Lbbq04ssV3emRw4NY58WErlTO29pIqS0HmoT5aJ9+TUQ1N3G+JOZSji4eugsWwGp9yPA==", + "dev": true + }, + "node_modules/lodash.flatten": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/lodash.flatten/-/lodash.flatten-4.4.0.tgz", + "integrity": "sha512-C5N2Z3DgnnKr0LOpv/hKCgKdb7ZZwafIrsesve6lmzvZIRZRGaZ/l6Q8+2W7NaT+ZwO3fFlSCzCzrDCFdJfZ4g==", + "dev": true + }, + "node_modules/lodash.get": { + "version": "4.4.2", + "resolved": "https://registry.npmjs.org/lodash.get/-/lodash.get-4.4.2.tgz", + "integrity": "sha512-z+Uw/vLuy6gQe8cfaFWD7p0wVv8fJl3mbzXh33RS+0oW2wvUqiRXiQ69gLWSLpgB5/6sU+r6BlQR0MBILadqTQ==", + "dev": true + }, + "node_modules/lodash.isplainobject": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz", + "integrity": "sha512-oSXzaWypCMHkPC3NvBEaPHf0KsA5mvPrOPgQWDsbg8n7orZ290M0BmC/jgRZ4vcJ6DTAhjrsSYgdsW/F+MFOBA==", + "dev": true + }, + "node_modules/lodash.union": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/lodash.union/-/lodash.union-4.6.0.tgz", + "integrity": "sha512-c4pB2CdGrGdjMKYLA+XiRDO7Y0PRQbm/Gzg8qMj+QH+pFVAoTp5sBpO0odL3FjoPCGjK96p6qsP+yQoiLoOBcw==", + "dev": true + }, + "node_modules/longest": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/longest/-/longest-1.0.1.tgz", + "integrity": "sha512-k+yt5n3l48JU4k8ftnKG6V7u32wyH2NfKzeMto9F/QRE0amxy/LayxwlvjjkZEIzqR+19IrtFO8p5kB9QaYUFg==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/lru-cache": { + "version": "6.0.0", + "dev": true, + "license": "ISC", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/make-dir": { + "version": "3.1.0", + "dev": true, + "license": "MIT", + "dependencies": { + "semver": "^6.0.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/make-error": { + "version": "1.3.6", + "dev": true, + "license": "ISC" + }, + "node_modules/makeerror": { + "version": "1.0.12", + "dev": true, + "license": "BSD-3-Clause", + "dependencies": { + "tmpl": "1.0.5" + } + }, + "node_modules/map-cache": { + "version": "0.2.2", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/map-obj": { + "version": "4.3.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/map-stream": { + "version": "0.0.7", + "resolved": "https://registry.npmjs.org/map-stream/-/map-stream-0.0.7.tgz", + "integrity": "sha512-C0X0KQmGm3N2ftbTGBhSyuydQ+vV1LC3f3zPvT3RXHXNZrvfPZcoXp/N5DOa8vedX/rTMm2CjTtivFg2STJMRQ==", + "dev": true + }, + "node_modules/map-visit": { + "version": "1.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "object-visit": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/md5.js": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.5.tgz", + "integrity": "sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==", + "dev": true, + "dependencies": { + "hash-base": "^3.0.0", + "inherits": "^2.0.1", + "safe-buffer": "^5.1.2" + } + }, + "node_modules/media-typer": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", + "integrity": "sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/memory-pager": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/memory-pager/-/memory-pager-1.5.0.tgz", + "integrity": "sha512-ZS4Bp4r/Zoeq6+NLJpP+0Zzm0pR8whtGPf1XExKLJBAczGMnSi3It14OiNCStjQjM6NU1okjQGSxgEZN8eBYKg==", + "dev": true, + "optional": true + }, + "node_modules/memorystream": { + "version": "0.3.1", + "dev": true, + "engines": { + "node": ">= 0.10.0" + } + }, + "node_modules/meow": { + "version": "6.1.1", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/minimist": "^1.2.0", + "camelcase-keys": "^6.2.2", + "decamelize-keys": "^1.1.0", + "hard-rejection": "^2.1.0", + "minimist-options": "^4.0.2", + "normalize-package-data": "^2.5.0", + "read-pkg-up": "^7.0.1", + "redent": "^3.0.0", + "trim-newlines": "^3.0.0", + "type-fest": "^0.13.1", + "yargs-parser": "^18.1.3" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/meow/node_modules/type-fest": { + "version": "0.13.1", + "dev": true, + "license": "(MIT OR CC0-1.0)", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/merge-descriptors": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", + "integrity": "sha512-cCi6g3/Zr1iqQi6ySbseM1Xvooa98N0w31jzUYrXPX2xqObmFGHJ0tQ5u74H3mVh7wLouTseZyYIq39g8cNp1w==", + "dev": true + }, + "node_modules/merge-stream": { + "version": "2.0.0", + "dev": true, + "license": "MIT" + }, + "node_modules/merge2": { + "version": "1.4.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 8" + } + }, + "node_modules/methods": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", + "integrity": "sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mgrs": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/mgrs/-/mgrs-1.0.0.tgz", + "integrity": "sha512-awNbTOqCxK1DBGjalK3xqWIstBZgN6fxsMSiXLs9/spqWkF2pAhb2rrYCFSsr1/tT7PhcDGjZndG8SWYn0byYA==", + "dev": true + }, + "node_modules/micromatch": { + "version": "3.1.10", + "dev": true, + "license": "MIT", + "dependencies": { + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "braces": "^2.3.1", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "extglob": "^2.0.4", + "fragment-cache": "^0.2.1", + "kind-of": "^6.0.2", + "nanomatch": "^1.2.9", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/mime": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", + "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", + "dev": true, + "bin": { + "mime": "cli.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/mime-db": { + "version": "1.52.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mime-types": { + "version": "2.1.35", + "dev": true, + "license": "MIT", + "dependencies": { + "mime-db": "1.52.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mimic-fn": { + "version": "2.1.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/mimic-response": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-2.1.0.tgz", + "integrity": "sha512-wXqjST+SLt7R009ySCglWBCFpjUygmCIfD790/kVbiGmUgfYGuB14PiTd5DwVxSV4NcYHjzMkoj5LjQZwTQLEA==", + "dev": true, + "optional": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/min-indent": { + "version": "1.0.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/minimalistic-assert": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", + "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==", + "dev": true + }, + "node_modules/minimalistic-crypto-utils": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz", + "integrity": "sha512-JIYlbt6g8i5jKfJ3xz7rF0LXmv2TkDxBLUkiBeZ7bAx4GnnNMr8xFpGnOxn6GhTEHx3SjRrZEoU+j04prX1ktg==", + "dev": true + }, + "node_modules/minimatch": { + "version": "3.1.2", + "dev": true, + "license": "ISC", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/minimist": { + "version": "1.2.7", + "dev": true, + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/minimist-options": { + "version": "4.1.0", + "dev": true, + "license": "MIT", + "dependencies": { + "arrify": "^1.0.1", + "is-plain-obj": "^1.1.0", + "kind-of": "^6.0.3" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/minimist-options/node_modules/arrify": { + "version": "1.0.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/minipass": { + "version": "4.2.5", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-4.2.5.tgz", + "integrity": "sha512-+yQl7SX3bIT83Lhb4BVorMAHVuqsskxRdlmO9kTpyukp8vsm2Sn/fUOV9xlnG8/a5JsypJzap21lz/y3FBMJ8Q==", + "dev": true, + "optional": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/minizlib": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz", + "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==", + "dev": true, + "optional": true, + "dependencies": { + "minipass": "^3.0.0", + "yallist": "^4.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/minizlib/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "dev": true, + "optional": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/mixin-deep": { + "version": "1.3.2", + "dev": true, + "license": "MIT", + "dependencies": { + "for-in": "^1.0.2", + "is-extendable": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/mkdirp": { + "version": "1.0.4", + "dev": true, + "license": "MIT", + "bin": { + "mkdirp": "bin/cmd.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/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==", + "dev": true, + "optional": true + }, + "node_modules/moment": { + "version": "2.22.2", + "resolved": "https://registry.npmjs.org/moment/-/moment-2.22.2.tgz", + "integrity": "sha512-LRvkBHaJGnrcWvqsElsOhHCzj8mU39wLx5pQ0pc6s153GynCTsPdGdqsVNKAQD9sKnWj11iF7TZx9fpLwdD3fw==", + "dev": true, + "engines": { + "node": "*" + } + }, + "node_modules/mongodb": { + "version": "4.15.0", + "resolved": "https://registry.npmjs.org/mongodb/-/mongodb-4.15.0.tgz", + "integrity": "sha512-1iM2fF2fSNVrecOq4pW9zaJHFNuk63RX3SsppIjC2df8JkBv6odGOIu9FuqnI6gQD0KAF2az4zZdQdabqGSLDQ==", + "dev": true, + "dependencies": { + "bson": "^4.7.2", + "mongodb-connection-string-url": "^2.5.4", + "socks": "^2.7.1" + }, + "engines": { + "node": ">=12.9.0" + }, + "optionalDependencies": { + "@aws-sdk/credential-providers": "^3.186.0", + "saslprep": "^1.0.3" + } + }, + "node_modules/mongodb-connection-string-url": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/mongodb-connection-string-url/-/mongodb-connection-string-url-2.6.0.tgz", + "integrity": "sha512-WvTZlI9ab0QYtTYnuMLgobULWhokRjtC7db9LtcVfJ+Hsnyr5eo6ZtNAt3Ly24XZScGMelOcGtm7lSn0332tPQ==", + "dev": true, + "dependencies": { + "@types/whatwg-url": "^8.2.1", + "whatwg-url": "^11.0.0" + } + }, + "node_modules/mongodb-connection-string-url/node_modules/tr46": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-3.0.0.tgz", + "integrity": "sha512-l7FvfAHlcmulp8kr+flpQZmVwtu7nfRV7NZujtN0OqES8EL4O4e0qqzL0DC5gAvx/ZC/9lk6rhcUwYvkBnBnYA==", + "dev": true, + "dependencies": { + "punycode": "^2.1.1" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/mongodb-connection-string-url/node_modules/webidl-conversions": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-7.0.0.tgz", + "integrity": "sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==", + "dev": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/mongodb-connection-string-url/node_modules/whatwg-url": { + "version": "11.0.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-11.0.0.tgz", + "integrity": "sha512-RKT8HExMpoYx4igMiVMY83lN6UeITKJlBQ+vR/8ZJ8OCdSiN3RwCq+9gH0+Xzj0+5IrM6i4j/6LuvzbZIQgEcQ==", + "dev": true, + "dependencies": { + "tr46": "^3.0.0", + "webidl-conversions": "^7.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/mongoose": { + "version": "6.10.5", + "resolved": "https://registry.npmjs.org/mongoose/-/mongoose-6.10.5.tgz", + "integrity": "sha512-y4HL4/9EySec7L0gJ+pCm9heLSF45uIIvRS4fSeAFWDfe4vXW1vRZJwTz7OGkra3ZoSfRnFTo9bNZkuggDVlVA==", + "dev": true, + "dependencies": { + "bson": "^4.7.0", + "kareem": "2.5.1", + "mongodb": "4.14.0", + "mpath": "0.9.0", + "mquery": "4.0.3", + "ms": "2.1.3", + "sift": "16.0.1" + }, + "engines": { + "node": ">=12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/mongoose" + } + }, + "node_modules/mongoose-beautiful-unique-validation": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/mongoose-beautiful-unique-validation/-/mongoose-beautiful-unique-validation-7.1.1.tgz", + "integrity": "sha512-fprzp8nY9Qjg0+RZFMl7gVmbINRt2H53fpqyjJWwPO7nxJ9RZZB/Lo3y+mXaMP4nNMOeoJb2v3dNou6h+iLh8w==", + "dev": true, + "engines": { + "node": ">=0.10.0" + }, + "peerDependencies": { + "mongoose": ">=4.11.4" + } + }, + "node_modules/mongoose/node_modules/mongodb": { + "version": "4.14.0", + "resolved": "https://registry.npmjs.org/mongodb/-/mongodb-4.14.0.tgz", + "integrity": "sha512-coGKkWXIBczZPr284tYKFLg+KbGPPLlSbdgfKAb6QqCFt5bo5VFZ50O3FFzsw4rnkqjwT6D8Qcoo9nshYKM7Mg==", + "dev": true, + "dependencies": { + "bson": "^4.7.0", + "mongodb-connection-string-url": "^2.5.4", + "socks": "^2.7.1" + }, + "engines": { + "node": ">=12.9.0" + }, + "optionalDependencies": { + "@aws-sdk/credential-providers": "^3.186.0", + "saslprep": "^1.0.3" + } + }, + "node_modules/mongoose/node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "dev": true + }, + "node_modules/mpath": { + "version": "0.9.0", + "resolved": "https://registry.npmjs.org/mpath/-/mpath-0.9.0.tgz", + "integrity": "sha512-ikJRQTk8hw5DEoFVxHG1Gn9T/xcjtdnOKIU1JTmGjZZlg9LST2mBLmcX3/ICIbgJydT2GOc15RnNy5mHmzfSew==", + "dev": true, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/mquery": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/mquery/-/mquery-4.0.3.tgz", + "integrity": "sha512-J5heI+P08I6VJ2Ky3+33IpCdAvlYGTSUjwTPxkAr8i8EoduPMBX2OY/wa3IKZIQl7MU4SbFk8ndgSKyB/cl1zA==", + "dev": true, + "dependencies": { + "debug": "4.x" + }, + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/ms": { + "version": "2.1.2", + "dev": true, + "license": "MIT" + }, + "node_modules/multer": { + "version": "1.4.4", + "resolved": "https://registry.npmjs.org/multer/-/multer-1.4.4.tgz", + "integrity": "sha512-2wY2+xD4udX612aMqMcB8Ws2Voq6NIUPEtD1be6m411T4uDH/VtL9i//xvcyFlTVfRdaBsk7hV5tgrGQqhuBiw==", + "deprecated": "Multer 1.x is affected by CVE-2022-24434. This is fixed in v1.4.4-lts.1 which drops support for versions of Node.js before 6. Please upgrade to at least Node.js 6 and version 1.4.4-lts.1 of Multer. If you need support for older versions of Node.js, we are open to accepting patches that would fix the CVE on the main 1.x release line, whilst maintaining compatibility with Node.js 0.10.", + "dev": true, + "dependencies": { + "append-field": "^1.0.0", + "busboy": "^0.2.11", + "concat-stream": "^1.5.2", + "mkdirp": "^0.5.4", + "object-assign": "^4.1.1", + "on-finished": "^2.3.0", + "type-is": "^1.6.4", + "xtend": "^4.0.0" + }, + "engines": { + "node": ">= 0.10.0" + } + }, + "node_modules/multer/node_modules/busboy": { + "version": "0.2.14", + "resolved": "https://registry.npmjs.org/busboy/-/busboy-0.2.14.tgz", + "integrity": "sha512-InWFDomvlkEj+xWLBfU3AvnbVYqeTWmQopiW0tWWEy5yehYm2YkGEc59sUmw/4ty5Zj/b0WHGs1LgecuBSBGrg==", + "dev": true, + "dependencies": { + "dicer": "0.2.5", + "readable-stream": "1.1.x" + }, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/multer/node_modules/isarray": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", + "integrity": "sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ==", + "dev": true + }, + "node_modules/multer/node_modules/mkdirp": { + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", + "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", + "dev": true, + "dependencies": { + "minimist": "^1.2.6" + }, + "bin": { + "mkdirp": "bin/cmd.js" + } + }, + "node_modules/multer/node_modules/readable-stream": { + "version": "1.1.14", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz", + "integrity": "sha512-+MeVjFf4L44XUkhM1eYbD8fyEsxcV81pqMSR5gblfcLCHfZvbrqy4/qYHE+/R5HoBUT11WV5O08Cr1n3YXkWVQ==", + "dev": true, + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.1", + "isarray": "0.0.1", + "string_decoder": "~0.10.x" + } + }, + "node_modules/multer/node_modules/string_decoder": { + "version": "0.10.31", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", + "integrity": "sha512-ev2QzSzWPYmy9GuqfIVildA4OdcGLeFZQrq5ys6RtiuF+RQQiZWr8TZNyAcuVXyQRYfEO+MsoB/1BuQVhOJuoQ==", + "dev": true + }, + "node_modules/mute-stream": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz", + "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==", + "dev": true, + "optional": true + }, + "node_modules/mv": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/mv/-/mv-2.1.1.tgz", + "integrity": "sha512-at/ZndSy3xEGJ8i0ygALh8ru9qy7gWW1cmkaqBN29JmMlIvM//MEO9y1sk/avxuwnPcfhkejkLsuPxH81BrkSg==", + "dev": true, + "optional": true, + "dependencies": { + "mkdirp": "~0.5.1", + "ncp": "~2.0.0", + "rimraf": "~2.4.0" + }, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/mv/node_modules/glob": { + "version": "6.0.4", + "resolved": "https://registry.npmjs.org/glob/-/glob-6.0.4.tgz", + "integrity": "sha512-MKZeRNyYZAVVVG1oZeLaWie1uweH40m9AZwIwxyPbTSX4hHrVYSzLg0Ro5Z5R7XKkIX+Cc6oD1rqeDJnwsB8/A==", + "dev": true, + "optional": true, + "dependencies": { + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "2 || 3", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + } + }, + "node_modules/mv/node_modules/mkdirp": { + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", + "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", + "dev": true, + "optional": true, + "dependencies": { + "minimist": "^1.2.6" + }, + "bin": { + "mkdirp": "bin/cmd.js" + } + }, + "node_modules/mv/node_modules/rimraf": { + "version": "2.4.5", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.4.5.tgz", + "integrity": "sha512-J5xnxTyqaiw06JjMftq7L9ouA448dw/E7dKghkP9WpKNuwmARNNg+Gk8/u5ryb9N/Yo2+z3MCwuqFK/+qPOPfQ==", + "dev": true, + "optional": true, + "dependencies": { + "glob": "^6.0.1" + }, + "bin": { + "rimraf": "bin.js" + } + }, + "node_modules/nan": { + "version": "2.17.0", + "resolved": "https://registry.npmjs.org/nan/-/nan-2.17.0.tgz", + "integrity": "sha512-2ZTgtl0nJsO0KQCjEpxcIr5D+Yv90plTitZt9JBfQvVJDS5seMl3FOvsh3+9CoYWXf/1l5OaZzzF6nDm4cagaQ==", + "dev": true, + "optional": true + }, + "node_modules/nanomatch": { + "version": "1.2.13", + "dev": true, + "license": "MIT", + "dependencies": { + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "fragment-cache": "^0.2.1", + "is-windows": "^1.0.2", + "kind-of": "^6.0.2", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/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==", + "dev": true, + "optional": true + }, + "node_modules/natural-compare": { + "version": "1.4.0", + "dev": true, + "license": "MIT" + }, + "node_modules/ncp": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ncp/-/ncp-2.0.0.tgz", + "integrity": "sha512-zIdGUrPRFTUELUvr3Gmc7KZ2Sw/h1PiVM0Af/oHB6zgnV1ikqSfRk+TOufi79aHYCW3NiOXmr1BP5nWbzojLaA==", + "dev": true, + "optional": true, + "bin": { + "ncp": "bin/ncp" + } + }, + "node_modules/negotiator": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", + "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/nested-error-stacks": { + "version": "2.1.1", + "dev": true, + "license": "MIT" + }, + "node_modules/nice-try": { + "version": "1.0.5", + "dev": true, + "license": "MIT" + }, + "node_modules/nock": { + "version": "12.0.3", + "dev": true, + "license": "MIT", + "dependencies": { + "debug": "^4.1.0", + "json-stringify-safe": "^5.0.1", + "lodash": "^4.17.13", + "propagate": "^2.0.0" + }, + "engines": { + "node": ">= 10.13" + } + }, + "node_modules/node-abi": { + "version": "2.30.1", + "resolved": "https://registry.npmjs.org/node-abi/-/node-abi-2.30.1.tgz", + "integrity": "sha512-/2D0wOQPgaUWzVSVgRMx+trKJRC2UG4SUc4oCJoXx9Uxjtp0Vy3/kt7zcbxHF8+Z/pK3UloLWzBISg72brfy1w==", + "dev": true, + "optional": true, + "dependencies": { + "semver": "^5.4.1" + } + }, + "node_modules/node-abi/node_modules/semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "dev": true, + "optional": true, + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/node-fetch": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.9.tgz", + "integrity": "sha512-DJm/CJkZkRjKKj4Zi4BsKVZh3ValV5IR5s7LVZnW+6YMh0W1BfNA8XSs6DLMGYlId5F3KnA70uu2qepcR08Qqg==", + "dev": true, + "dependencies": { + "whatwg-url": "^5.0.0" + }, + "engines": { + "node": "4.x || >=6.0.0" + }, + "peerDependencies": { + "encoding": "^0.1.0" + }, + "peerDependenciesMeta": { + "encoding": { + "optional": true + } + } + }, + "node_modules/node-fetch/node_modules/tr46": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", + "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==", + "dev": true + }, + "node_modules/node-fetch/node_modules/webidl-conversions": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", + "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==", + "dev": true + }, + "node_modules/node-fetch/node_modules/whatwg-url": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", + "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", + "dev": true, + "dependencies": { + "tr46": "~0.0.3", + "webidl-conversions": "^3.0.0" + } + }, + "node_modules/node-forge": { + "version": "0.10.0", + "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-0.10.0.tgz", + "integrity": "sha512-PPmu8eEeG9saEUvI97fm4OYxXVB6bFvyNTyiUOBichBpFG8A1Ljw3bY62+5oOjDEMHRnd0Y7HQ+x7uzxOzC6JA==", + "dev": true, + "engines": { + "node": ">= 6.0.0" + } + }, + "node_modules/node-int64": { + "version": "0.4.0", + "dev": true, + "license": "MIT" + }, + "node_modules/node-notifier": { + "version": "8.0.2", + "dev": true, + "license": "MIT", + "optional": true, + "dependencies": { + "growly": "^1.3.0", + "is-wsl": "^2.2.0", + "semver": "^7.3.2", + "shellwords": "^0.1.1", + "uuid": "^8.3.0", + "which": "^2.0.2" + } + }, + "node_modules/node-notifier/node_modules/semver": { + "version": "7.3.8", + "dev": true, + "license": "ISC", + "optional": true, + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/node-releases": { + "version": "2.0.6", + "dev": true, + "license": "MIT" + }, + "node_modules/nomnom": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/nomnom/-/nomnom-1.8.1.tgz", + "integrity": "sha512-5s0JxqhDx9/rksG2BTMVN1enjWSvPidpoSgViZU4ZXULyTe+7jxcCRLB6f42Z0l1xYJpleCBtSyY6Lwg3uu5CQ==", + "deprecated": "Package no longer supported. Contact support@npmjs.com for more info.", + "dev": true, + "dependencies": { + "chalk": "~0.4.0", + "underscore": "~1.6.0" + } + }, + "node_modules/nomnom/node_modules/ansi-styles": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-1.0.0.tgz", + "integrity": "sha512-3iF4FIKdxaVYT3JqQuY3Wat/T2t7TRbbQ94Fu50ZUCbLy4TFbTzr90NOHQodQkNqmeEGCw8WbeP78WNi6SKYUA==", + "dev": true, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/nomnom/node_modules/chalk": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-0.4.0.tgz", + "integrity": "sha512-sQfYDlfv2DGVtjdoQqxS0cEZDroyG8h6TamA6rvxwlrU5BaSLDx9xhatBYl2pxZ7gmpNaPFVwBtdGdu5rQ+tYQ==", + "dev": true, + "dependencies": { + "ansi-styles": "~1.0.0", + "has-color": "~0.1.0", + "strip-ansi": "~0.1.0" + }, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/nomnom/node_modules/strip-ansi": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-0.1.1.tgz", + "integrity": "sha512-behete+3uqxecWlDAm5lmskaSaISA+ThQ4oNNBDTBJt0x2ppR6IPqfZNuj6BLaLJ/Sji4TPZlcRyOis8wXQTLg==", + "dev": true, + "bin": { + "strip-ansi": "cli.js" + }, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/nomnom/node_modules/underscore": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.6.0.tgz", + "integrity": "sha512-z4o1fvKUojIWh9XuaVLUDdf86RQiq13AC1dmHbTpoyuu+bquHms76v16CjycCbec87J7z0k//SiQVk0sMdFmpQ==", + "dev": true + }, + "node_modules/normalize-package-data": { + "version": "2.5.0", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "hosted-git-info": "^2.1.4", + "resolve": "^1.10.0", + "semver": "2 || 3 || 4 || 5", + "validate-npm-package-license": "^3.0.1" + } + }, + "node_modules/normalize-package-data/node_modules/semver": { + "version": "5.7.1", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/normalize-path": { + "version": "3.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/npm-run-all": { + "version": "4.1.5", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^3.2.1", + "chalk": "^2.4.1", + "cross-spawn": "^6.0.5", + "memorystream": "^0.3.1", + "minimatch": "^3.0.4", + "pidtree": "^0.3.0", + "read-pkg": "^3.0.0", + "shell-quote": "^1.6.1", + "string.prototype.padend": "^3.0.0" + }, + "bin": { + "npm-run-all": "bin/npm-run-all/index.js", + "run-p": "bin/run-p/index.js", + "run-s": "bin/run-s/index.js" + }, + "engines": { + "node": ">= 4" + } + }, + "node_modules/npm-run-all/node_modules/ansi-styles": { + "version": "3.2.1", + "dev": true, + "license": "MIT", + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/npm-run-all/node_modules/chalk": { + "version": "2.4.2", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/npm-run-all/node_modules/color-convert": { + "version": "1.9.3", + "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/npm-run-all/node_modules/color-name": { + "version": "1.1.3", + "dev": true, + "license": "MIT" + }, + "node_modules/npm-run-all/node_modules/cross-spawn": { + "version": "6.0.5", + "dev": true, + "license": "MIT", + "dependencies": { + "nice-try": "^1.0.4", + "path-key": "^2.0.1", + "semver": "^5.5.0", + "shebang-command": "^1.2.0", + "which": "^1.2.9" + }, + "engines": { + "node": ">=4.8" + } + }, + "node_modules/npm-run-all/node_modules/escape-string-regexp": { + "version": "1.0.5", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/npm-run-all/node_modules/has-flag": { + "version": "3.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/npm-run-all/node_modules/path-key": { + "version": "2.0.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/npm-run-all/node_modules/semver": { + "version": "5.7.1", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/npm-run-all/node_modules/shebang-command": { + "version": "1.2.0", + "dev": true, + "license": "MIT", + "dependencies": { + "shebang-regex": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/npm-run-all/node_modules/shebang-regex": { + "version": "1.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/npm-run-all/node_modules/supports-color": { + "version": "5.5.0", + "dev": true, + "license": "MIT", + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/npm-run-all/node_modules/which": { + "version": "1.3.1", + "dev": true, + "license": "ISC", + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "which": "bin/which" + } + }, + "node_modules/npm-run-path": { + "version": "4.0.1", + "dev": true, + "license": "MIT", + "dependencies": { + "path-key": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/npmlog": { + "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, + "optional": true, + "dependencies": { + "are-we-there-yet": "~1.1.2", + "console-control-strings": "~1.1.0", + "gauge": "~2.7.3", + "set-blocking": "~2.0.0" + } + }, + "node_modules/number-is-nan": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", + "integrity": "sha512-4jbtZXNAsfZbAHiiqjLPBiCl16dES1zI4Hpzzxw61Tk+loF+sBDBKx1ICKKKwIqQ7M0mFn1TmkN7euSncWgHiQ==", + "dev": true, + "optional": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/nwsapi": { + "version": "2.2.2", + "dev": true, + "license": "MIT" + }, + "node_modules/oauth": { + "version": "0.9.15", + "resolved": "https://registry.npmjs.org/oauth/-/oauth-0.9.15.tgz", + "integrity": "sha512-a5ERWK1kh38ExDEfoO6qUHJb32rd7aYmPHuyCu3Fta/cnICvYmgd2uhuKXvPD+PXB+gCEYYEaQdIRAjCOwAKNA==", + "dev": true + }, + "node_modules/object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-copy": { + "version": "0.1.0", + "dev": true, + "license": "MIT", + "dependencies": { + "copy-descriptor": "^0.1.0", + "define-property": "^0.2.5", + "kind-of": "^3.0.3" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-copy/node_modules/define-property": { + "version": "0.2.5", + "dev": true, + "license": "MIT", + "dependencies": { + "is-descriptor": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-copy/node_modules/is-accessor-descriptor": { + "version": "0.1.6", + "dev": true, + "license": "MIT", + "dependencies": { + "kind-of": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-copy/node_modules/is-data-descriptor": { + "version": "0.1.4", + "dev": true, + "license": "MIT", + "dependencies": { + "kind-of": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-copy/node_modules/is-descriptor": { + "version": "0.1.6", + "dev": true, + "license": "MIT", + "dependencies": { + "is-accessor-descriptor": "^0.1.6", + "is-data-descriptor": "^0.1.4", + "kind-of": "^5.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-copy/node_modules/is-descriptor/node_modules/kind-of": { + "version": "5.1.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-copy/node_modules/kind-of": { + "version": "3.2.2", + "dev": true, + "license": "MIT", + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-inspect": { + "version": "1.12.2", + "dev": true, + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object-keys": { + "version": "1.1.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/object-visit": { + "version": "1.0.1", + "dev": true, + "license": "MIT", + "dependencies": { + "isobject": "^3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object.assign": { + "version": "4.1.4", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "has-symbols": "^1.0.3", + "object-keys": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object.pick": { + "version": "1.3.0", + "dev": true, + "license": "MIT", + "dependencies": { + "isobject": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/on-finished": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", + "integrity": "sha512-ikqdkGAAyf/X/gPhXGvfgAytDZtDbr+bkNUJ0N9h5MI/dmdgCs3l6hoHrcUv41sRKew3jIwrp4qQDXiK99Utww==", + "dev": true, + "dependencies": { + "ee-first": "1.1.1" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/on-headers": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/on-headers/-/on-headers-1.0.2.tgz", + "integrity": "sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA==", + "dev": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/once": { + "version": "1.4.0", + "dev": true, + "license": "ISC", + "dependencies": { + "wrappy": "1" + } + }, + "node_modules/onetime": { + "version": "5.1.2", + "dev": true, + "license": "MIT", + "dependencies": { + "mimic-fn": "^2.1.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/opentype.js": { + "version": "0.7.3", + "resolved": "https://registry.npmjs.org/opentype.js/-/opentype.js-0.7.3.tgz", + "integrity": "sha512-Veui5vl2bLonFJ/SjX/WRWJT3SncgiZNnKUyahmXCc2sa1xXW15u3R/3TN5+JFiP7RsjK5ER4HA5eWaEmV9deA==", + "dev": true, + "dependencies": { + "tiny-inflate": "^1.0.2" + }, + "bin": { + "ot": "bin/ot" + } + }, + "node_modules/optionator": { + "version": "0.8.3", + "dev": true, + "license": "MIT", + "dependencies": { + "deep-is": "~0.1.3", + "fast-levenshtein": "~2.0.6", + "levn": "~0.3.0", + "prelude-ls": "~1.1.2", + "type-check": "~0.3.2", + "word-wrap": "~1.2.3" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/os-tmpdir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", + "integrity": "sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==", + "dev": true, + "optional": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/p-all": { + "version": "2.1.0", + "dev": true, + "license": "MIT", + "dependencies": { + "p-map": "^2.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/p-all/node_modules/p-map": { + "version": "2.1.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/p-each-series": { + "version": "2.2.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-event": { + "version": "4.2.0", + "dev": true, + "license": "MIT", + "dependencies": { + "p-timeout": "^3.1.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-filter": { + "version": "2.1.0", + "dev": true, + "license": "MIT", + "dependencies": { + "p-map": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/p-filter/node_modules/p-map": { + "version": "2.1.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/p-finally": { + "version": "1.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/p-limit": { + "version": "2.3.0", + "dev": true, + "license": "MIT", + "dependencies": { + "p-try": "^2.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-locate": { + "version": "4.1.0", + "dev": true, + "license": "MIT", + "dependencies": { + "p-limit": "^2.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/p-map": { + "version": "3.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "aggregate-error": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/p-timeout": { + "version": "3.2.0", + "dev": true, + "license": "MIT", + "dependencies": { + "p-finally": "^1.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/p-try": { + "version": "2.2.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/parse-asn1": { + "version": "5.1.6", + "resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.6.tgz", + "integrity": "sha512-RnZRo1EPU6JBnra2vGHj0yhp6ebyjBZpmUCLHWiFhxlzvBCCpAuZ7elsBp1PVAbQN0/04VD/19rfzlBSwLstMw==", + "dev": true, + "dependencies": { + "asn1.js": "^5.2.0", + "browserify-aes": "^1.0.0", + "evp_bytestokey": "^1.0.0", + "pbkdf2": "^3.0.3", + "safe-buffer": "^5.1.1" + } + }, + "node_modules/parse-asn1/node_modules/asn1.js": { + "version": "5.4.1", + "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-5.4.1.tgz", + "integrity": "sha512-+I//4cYPccV8LdmBLiX8CYvf9Sp3vQsrqu2QNXRcrbiWvcx/UdlFiqUJJzxRQxgsZmvhXhn4cSKeSmoFjVdupA==", + "dev": true, + "dependencies": { + "bn.js": "^4.0.0", + "inherits": "^2.0.1", + "minimalistic-assert": "^1.0.0", + "safer-buffer": "^2.1.0" + } + }, + "node_modules/parse-asn1/node_modules/bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", + "dev": true + }, + "node_modules/parse-json": { + "version": "4.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "error-ex": "^1.3.1", + "json-parse-better-errors": "^1.0.1" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/parse5": { + "version": "6.0.1", + "dev": true, + "license": "MIT" + }, + "node_modules/parseurl": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", + "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==", + "dev": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/pascalcase": { + "version": "0.1.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/passport": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/passport/-/passport-0.4.1.tgz", + "integrity": "sha512-IxXgZZs8d7uFSt3eqNjM9NQ3g3uQCW5avD8mRNoXV99Yig50vjuaez6dQK2qC0kVWPRTujxY0dWgGfT09adjYg==", + "dev": true, + "dependencies": { + "passport-strategy": "1.x.x", + "pause": "0.0.1" + }, + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/passport-anonymous": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/passport-anonymous/-/passport-anonymous-1.0.1.tgz", + "integrity": "sha512-Mk2dls97nLTzHpsWCYQ54IVGucWaiWSHHr3+IhWYAebg4dRgRQIfyoeYrixoxB2z2z4+EM7p9yjC+a3yMB5z5A==", + "dev": true, + "dependencies": { + "passport-strategy": "1.x.x" + }, + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/passport-http-bearer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/passport-http-bearer/-/passport-http-bearer-1.0.1.tgz", + "integrity": "sha512-SELQM+dOTuMigr9yu8Wo4Fm3ciFfkMq5h/ZQ8ffi4ELgZrX1xh9PlglqZdcUZ1upzJD/whVyt+YWF62s3U6Ipw==", + "dev": true, + "dependencies": { + "passport-strategy": "1.x.x" + }, + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/passport-ldapauth": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/passport-ldapauth/-/passport-ldapauth-2.1.3.tgz", + "integrity": "sha512-23n425UTasN6XhcXG0qQ0h0YrS/zfo8kNIEhSLfPsNpglhYhhQFfB1pmDc5RrH+Kiz5fKLkki5BpvkKHCwkixg==", + "dev": true, + "dependencies": { + "@types/node": "^10.12.26", + "@types/passport": "^1.0.0", + "ldapauth-fork": "^4.2.0", + "passport-strategy": "^1.0.0" + }, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/passport-ldapauth/node_modules/@types/node": { + "version": "10.17.60", + "resolved": "https://registry.npmjs.org/@types/node/-/node-10.17.60.tgz", + "integrity": "sha512-F0KIgDJfy2nA3zMLmWGKxcH2ZVEtCZXHHdOQs2gSaQ27+lNeEfGxzkIw90aXswATX7AZ33tahPbzy6KAfUreVw==", + "dev": true + }, + "node_modules/passport-local": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/passport-local/-/passport-local-1.0.0.tgz", + "integrity": "sha512-9wCE6qKznvf9mQYYbgJ3sVOHmCWoUNMVFoZzNoznmISbhnNNPhN9xfY3sLmScHMetEJeoY7CXwfhCe7argfQow==", + "dev": true, + "dependencies": { + "passport-strategy": "1.x.x" + }, + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/passport-oauth2": { + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/passport-oauth2/-/passport-oauth2-1.6.1.tgz", + "integrity": "sha512-ZbV43Hq9d/SBSYQ22GOiglFsjsD1YY/qdiptA+8ej+9C1dL1TVB+mBE5kDH/D4AJo50+2i8f4bx0vg4/yDDZCQ==", + "dev": true, + "dependencies": { + "base64url": "3.x.x", + "oauth": "0.9.x", + "passport-strategy": "1.x.x", + "uid2": "0.0.x", + "utils-merge": "1.x.x" + }, + "engines": { + "node": ">= 0.4.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/jaredhanson" + } + }, + "node_modules/passport-openidconnect": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/passport-openidconnect/-/passport-openidconnect-0.1.1.tgz", + "integrity": "sha512-r0QJiWEzwCg2MeCIXVP5G6YxVRqnEsZ2HpgKRthZ9AiQHJrgGUytXpsdcGF9BRwd3yMrEesb/uG/Yxb86rrY0g==", + "dev": true, + "dependencies": { + "oauth": "0.9.x", + "passport-strategy": "1.x.x" + }, + "engines": { + "node": ">= 0.6.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/jaredhanson" + } + }, + "node_modules/passport-saml": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/passport-saml/-/passport-saml-1.5.0.tgz", + "integrity": "sha512-6f4bfnu/X2KNbuqshOryPap0g8BvhOrlt1qDtJdA44qzQXZ5QUMwaTmexAHIf96LTqPqQ91MzPvi5MGsOgTYTw==", + "deprecated": "For versions >= 4, please use scopped package @node-saml/passport-saml", + "dev": true, + "dependencies": { + "debug": "^3.1.0", + "passport-strategy": "*", + "xml-crypto": "^2.0.0", + "xml-encryption": "1.2.1", + "xml2js": "0.4.x", + "xmlbuilder": "^11.0.0", + "xmldom": "0.1.x" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/passport-saml/node_modules/debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "dev": true, + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/passport-strategy": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/passport-strategy/-/passport-strategy-1.0.0.tgz", + "integrity": "sha512-CB97UUvDKJde2V0KDWWB3lyf6PC3FaZP7YxZ2G8OAtn9p4HI9j9JLP9qjOGZFvyl8uwNT8qM+hGnz/n16NI7oA==", + "dev": true, + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/path-dirname": { + "version": "1.0.2", + "dev": true, + "license": "MIT" + }, + "node_modules/path-exists": { + "version": "4.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/path-is-absolute": { + "version": "1.0.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/path-key": { + "version": "3.1.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/path-parse": { + "version": "1.0.7", + "dev": true, + "license": "MIT" + }, + "node_modules/path-to-regexp": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", + "integrity": "sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ==", + "dev": true + }, + "node_modules/path-type": { + "version": "3.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "pify": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/path-type/node_modules/pify": { + "version": "3.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/pause": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/pause/-/pause-0.0.1.tgz", + "integrity": "sha512-KG8UEiEVkR3wGEb4m5yZkVCzigAD+cVEJck2CzYZO37ZGJfctvVptVO192MwrtPhzONn6go8ylnOdMhKqi4nfg==", + "dev": true + }, + "node_modules/pause-stream": { + "version": "0.0.11", + "resolved": "https://registry.npmjs.org/pause-stream/-/pause-stream-0.0.11.tgz", + "integrity": "sha512-e3FBlXLmN/D1S+zHzanP4E/4Z60oFAa3O051qt1pxa7DEJWKAyil6upYVXCWadEnuoqa4Pkc9oUx9zsxYeRv8A==", + "dev": true, + "dependencies": { + "through": "~2.3" + } + }, + "node_modules/pbkdf2": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.1.2.tgz", + "integrity": "sha512-iuh7L6jA7JEGu2WxDwtQP1ddOpaJNC4KlDEFfdQajSGgGPNi4OyDc2R7QnbY2bR9QjBVGwgvTdNJZoE7RaxUMA==", + "dev": true, + "dependencies": { + "create-hash": "^1.1.2", + "create-hmac": "^1.1.4", + "ripemd160": "^2.0.1", + "safe-buffer": "^5.0.1", + "sha.js": "^2.4.8" + }, + "engines": { + "node": ">=0.12" + } + }, + "node_modules/peek-readable": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/peek-readable/-/peek-readable-4.1.0.tgz", + "integrity": "sha512-ZI3LnwUv5nOGbQzD9c2iDG6toheuXSZP5esSHBjopsXH4dg19soufvpUGA3uohi5anFtGb2lhAVdHzH6R/Evvg==", + "dev": true, + "engines": { + "node": ">=8" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/Borewit" + } + }, + "node_modules/pem-jwk": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/pem-jwk/-/pem-jwk-1.5.1.tgz", + "integrity": "sha512-XdxDIGc+dy5lKW31oMTgdrwNui2uGrTPGe0GljQUJtCKTnpgZp0zj+WzgEkXC4X+E3rgSjkzZlLYQrVyeWBHQg==", + "dev": true, + "dependencies": { + "asn1.js": "1.0.3" + }, + "bin": { + "pem-jwk": "bin/pem-jwk.js" + } + }, + "node_modules/pem-jwk/node_modules/asn1.js": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-1.0.3.tgz", + "integrity": "sha512-RMdxDP9snnfh4wlMwT/Pk/IkQcJaVnKbPZOf8m1h4eblllW/T1wCCHEb03HfPRUzvxPK22MLd1PwHpovMOLKLQ==", + "dev": true, + "dependencies": { + "inherits": "^2.0.1", + "minimalistic-assert": "^1.0.0" + }, + "optionalDependencies": { + "bn.js": "^1.0.0" + } + }, + "node_modules/pem-jwk/node_modules/bn.js": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-1.3.0.tgz", + "integrity": "sha512-AbS5zhpzu2uAZpSyC9wMIXmaHKRakdf4rn8kqASOe59N/vxGjw/r0UbbCVUW+YPdQbZyqOc8ne3mxkmGanYD2w==", + "dev": true, + "optional": true + }, + "node_modules/pem2jwk": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/pem2jwk/-/pem2jwk-1.0.1.tgz", + "integrity": "sha512-OAPoqXBz01G4yL3tAHvLiC2TCIVKuzsg90zpw23GWGDz6i9Wsf1M8n1mcVmIAX2pG3JF0Oi8MehDr8PVL3K0QA==", + "dev": true, + "dependencies": { + "elliptic": "^6.4.0", + "parse-asn1": "^5.1.0" + } + }, + "node_modules/picocolors": { + "version": "1.0.0", + "dev": true, + "license": "ISC" + }, + "node_modules/picomatch": { + "version": "2.3.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/pidtree": { + "version": "0.3.1", + "dev": true, + "license": "MIT", + "bin": { + "pidtree": "bin/pidtree.js" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/pify": { + "version": "4.0.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/pirates": { + "version": "4.0.5", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 6" + } + }, + "node_modules/pkg-dir": { + "version": "4.2.0", + "dev": true, + "license": "MIT", + "dependencies": { + "find-up": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/pkginfo": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/pkginfo/-/pkginfo-0.3.1.tgz", + "integrity": "sha512-yO5feByMzAp96LtP58wvPKSbaKAi/1C4kV9XpTctr6EepnP6F33RBNOiVrdz9BrPA98U2BMFsTNHo44TWcbQ2A==", + "dev": true, + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/polygon-clipping": { + "version": "0.15.3", + "resolved": "https://registry.npmjs.org/polygon-clipping/-/polygon-clipping-0.15.3.tgz", + "integrity": "sha512-ho0Xx5DLkgxRx/+n4O74XyJ67DcyN3Tu9bGYKsnTukGAW6ssnuak6Mwcyb1wHy9MZc9xsUWqIoiazkZB5weECg==", + "dev": true, + "dependencies": { + "splaytree": "^3.1.0" + } + }, + "node_modules/ports": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/ports/-/ports-1.1.0.tgz", + "integrity": "sha512-XmS7dspHnkTXZC75NkG0ti2hLj8aSyg1Izp87/2cWT7QhTo1vdtWsQ4ldp4BEQ/EXqy0s4yTATJUZ3t9RGZVpg==", + "dev": true + }, + "node_modules/posix-character-classes": { + "version": "0.1.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/prebuild-install": { + "version": "6.1.4", + "resolved": "https://registry.npmjs.org/prebuild-install/-/prebuild-install-6.1.4.tgz", + "integrity": "sha512-Z4vpywnK1lBg+zdPCVCsKq0xO66eEV9rWo2zrROGGiRS4JtueBOdlB1FnY8lcy7JsUud/Q3ijUxyWN26Ika0vQ==", + "dev": true, + "optional": true, + "dependencies": { + "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" + }, + "bin": { + "prebuild-install": "bin.js" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/precond": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/precond/-/precond-0.2.3.tgz", + "integrity": "sha512-QCYG84SgGyGzqJ/vlMsxeXd/pgL/I94ixdNFyh1PusWmTCyVfPJjZ1K1jvHtsbfnXQs2TSkEP2fR7QiMZAnKFQ==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/prelude-ls": { + "version": "1.1.2", + "dev": true, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/pretty-format": { + "version": "26.6.2", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/types": "^26.6.2", + "ansi-regex": "^5.0.0", + "ansi-styles": "^4.0.0", + "react-is": "^17.0.1" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/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 + }, + "node_modules/proj4": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/proj4/-/proj4-2.8.0.tgz", + "integrity": "sha512-baC+YcD4xsSqJ+CpCZljj2gcQDhlKb+J+Zjv/2KSBwWNjk4M0pafgQsE+mWurd84tflMIsP+7j7mtIpFDHzQfQ==", + "dev": true, + "dependencies": { + "mgrs": "1.0.0", + "wkt-parser": "^1.3.1" + } + }, + "node_modules/promise": { + "version": "7.3.1", + "resolved": "https://registry.npmjs.org/promise/-/promise-7.3.1.tgz", + "integrity": "sha512-nolQXZ/4L+bP/UGlkfaIujX9BKxGwmQ9OT4mOt5yvy8iK1h3wqTEJCijzGANTCCl9nWjY41juyAn2K3Q1hLLTg==", + "dev": true, + "dependencies": { + "asap": "~2.0.3" + } + }, + "node_modules/prompts": { + "version": "2.4.2", + "dev": true, + "license": "MIT", + "dependencies": { + "kleur": "^3.0.3", + "sisteransi": "^1.0.5" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/propagate": { + "version": "2.0.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 8" + } + }, + "node_modules/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==", + "dev": true, + "dependencies": { + "forwarded": "0.2.0", + "ipaddr.js": "1.9.1" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/pseudomap": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", + "integrity": "sha512-b/YwNhb8lk1Zz2+bXXpS/LK9OisiZZ1SNsSLxN1x2OXVEhW2Ckr/7mWE5vrC1ZTiJlD9g19jWszTmJsB+oEpFQ==", + "dev": true + }, + "node_modules/psl": { + "version": "1.9.0", + "dev": true, + "license": "MIT" + }, + "node_modules/pug": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/pug/-/pug-2.0.4.tgz", + "integrity": "sha512-XhoaDlvi6NIzL49nu094R2NA6P37ijtgMDuWE+ofekDChvfKnzFal60bhSdiy8y2PBO6fmz3oMEIcfpBVRUdvw==", + "dev": true, + "dependencies": { + "pug-code-gen": "^2.0.2", + "pug-filters": "^3.1.1", + "pug-lexer": "^4.1.0", + "pug-linker": "^3.0.6", + "pug-load": "^2.0.12", + "pug-parser": "^5.0.1", + "pug-runtime": "^2.0.5", + "pug-strip-comments": "^1.0.4" + } + }, + "node_modules/pug-attrs": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/pug-attrs/-/pug-attrs-2.0.4.tgz", + "integrity": "sha512-TaZ4Z2TWUPDJcV3wjU3RtUXMrd3kM4Wzjbe3EWnSsZPsJ3LDI0F3yCnf2/W7PPFF+edUFQ0HgDL1IoxSz5K8EQ==", + "dev": true, + "dependencies": { + "constantinople": "^3.0.1", + "js-stringify": "^1.0.1", + "pug-runtime": "^2.0.5" + } + }, + "node_modules/pug-code-gen": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/pug-code-gen/-/pug-code-gen-2.0.3.tgz", + "integrity": "sha512-r9sezXdDuZJfW9J91TN/2LFbiqDhmltTFmGpHTsGdrNGp3p4SxAjjXEfnuK2e4ywYsRIVP0NeLbSAMHUcaX1EA==", + "dev": true, + "dependencies": { + "constantinople": "^3.1.2", + "doctypes": "^1.1.0", + "js-stringify": "^1.0.1", + "pug-attrs": "^2.0.4", + "pug-error": "^1.3.3", + "pug-runtime": "^2.0.5", + "void-elements": "^2.0.1", + "with": "^5.0.0" + } + }, + "node_modules/pug-error": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/pug-error/-/pug-error-1.3.3.tgz", + "integrity": "sha512-qE3YhESP2mRAWMFJgKdtT5D7ckThRScXRwkfo+Erqga7dyJdY3ZquspprMCj/9sJ2ijm5hXFWQE/A3l4poMWiQ==", + "dev": true + }, + "node_modules/pug-filters": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/pug-filters/-/pug-filters-3.1.1.tgz", + "integrity": "sha512-lFfjNyGEyVWC4BwX0WyvkoWLapI5xHSM3xZJFUhx4JM4XyyRdO8Aucc6pCygnqV2uSgJFaJWW3Ft1wCWSoQkQg==", + "dev": true, + "dependencies": { + "clean-css": "^4.1.11", + "constantinople": "^3.0.1", + "jstransformer": "1.0.0", + "pug-error": "^1.3.3", + "pug-walk": "^1.1.8", + "resolve": "^1.1.6", + "uglify-js": "^2.6.1" + } + }, + "node_modules/pug-lexer": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/pug-lexer/-/pug-lexer-4.1.0.tgz", + "integrity": "sha512-i55yzEBtjm0mlplW4LoANq7k3S8gDdfC6+LThGEvsK4FuobcKfDAwt6V4jKPH9RtiE3a2Akfg5UpafZ1OksaPA==", + "dev": true, + "dependencies": { + "character-parser": "^2.1.1", + "is-expression": "^3.0.0", + "pug-error": "^1.3.3" + } + }, + "node_modules/pug-linker": { + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/pug-linker/-/pug-linker-3.0.6.tgz", + "integrity": "sha512-bagfuHttfQOpANGy1Y6NJ+0mNb7dD2MswFG2ZKj22s8g0wVsojpRlqveEQHmgXXcfROB2RT6oqbPYr9EN2ZWzg==", + "dev": true, + "dependencies": { + "pug-error": "^1.3.3", + "pug-walk": "^1.1.8" + } + }, + "node_modules/pug-load": { + "version": "2.0.12", + "resolved": "https://registry.npmjs.org/pug-load/-/pug-load-2.0.12.tgz", + "integrity": "sha512-UqpgGpyyXRYgJs/X60sE6SIf8UBsmcHYKNaOccyVLEuT6OPBIMo6xMPhoJnqtB3Q3BbO4Z3Bjz5qDsUWh4rXsg==", + "dev": true, + "dependencies": { + "object-assign": "^4.1.0", + "pug-walk": "^1.1.8" + } + }, + "node_modules/pug-parser": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/pug-parser/-/pug-parser-5.0.1.tgz", + "integrity": "sha512-nGHqK+w07p5/PsPIyzkTQfzlYfuqoiGjaoqHv1LjOv2ZLXmGX1O+4Vcvps+P4LhxZ3drYSljjq4b+Naid126wA==", + "dev": true, + "dependencies": { + "pug-error": "^1.3.3", + "token-stream": "0.0.1" + } + }, + "node_modules/pug-runtime": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/pug-runtime/-/pug-runtime-2.0.5.tgz", + "integrity": "sha512-P+rXKn9un4fQY77wtpcuFyvFaBww7/91f3jHa154qU26qFAnOe6SW1CbIDcxiG5lLK9HazYrMCCuDvNgDQNptw==", + "dev": true + }, + "node_modules/pug-strip-comments": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/pug-strip-comments/-/pug-strip-comments-1.0.4.tgz", + "integrity": "sha512-i5j/9CS4yFhSxHp5iKPHwigaig/VV9g+FgReLJWWHEHbvKsbqL0oP/K5ubuLco6Wu3Kan5p7u7qk8A4oLLh6vw==", + "dev": true, + "dependencies": { + "pug-error": "^1.3.3" + } + }, + "node_modules/pug-walk": { + "version": "1.1.8", + "resolved": "https://registry.npmjs.org/pug-walk/-/pug-walk-1.1.8.tgz", + "integrity": "sha512-GMu3M5nUL3fju4/egXwZO0XLi6fW/K3T3VTgFQ14GxNi8btlxgT5qZL//JwZFm/2Fa64J/PNS8AZeys3wiMkVA==", + "dev": true + }, + "node_modules/pump": { + "version": "3.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + } + }, + "node_modules/punycode": { + "version": "2.1.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/qs": { + "version": "6.5.2", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz", + "integrity": "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==", + "dev": true, + "engines": { + "node": ">=0.6" + } + }, + "node_modules/querystringify": { + "version": "2.2.0", + "dev": true, + "license": "MIT" + }, + "node_modules/queue": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/queue/-/queue-6.0.1.tgz", + "integrity": "sha512-AJBQabRCCNr9ANq8v77RJEv73DPbn55cdTb+Giq4X0AVnNVZvMHlYp7XlQiN+1npCZj1DuSmaA2hYVUUDgxFDg==", + "dev": true, + "dependencies": { + "inherits": "~2.0.3" + } + }, + "node_modules/quick-lru": { + "version": "4.0.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/quickselect": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/quickselect/-/quickselect-2.0.0.tgz", + "integrity": "sha512-RKJ22hX8mHe3Y6wH/N3wCM6BWtjaxIyyUIkpHOvfFnxdI4yD4tBXEBKSbriGujF6jnSVkJrffuo6vxACiSSxIw==", + "dev": true + }, + "node_modules/random-bytes": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/random-bytes/-/random-bytes-1.0.0.tgz", + "integrity": "sha512-iv7LhNVO047HzYR3InF6pUcUsPQiHTM1Qal51DcGSuZFBil1aBBWG5eHPNek7bvILMaYJ/8RU1e8w1AMdHmLQQ==", + "dev": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/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==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/raw-body": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.3.3.tgz", + "integrity": "sha512-9esiElv1BrZoI3rCDuOuKCBRbuApGGaDPQfjSflGxdy4oyzqghxu6klEkkVIvBje+FF0BX9coEv8KqW6X/7njw==", + "dev": true, + "dependencies": { + "bytes": "3.0.0", + "http-errors": "1.6.3", + "iconv-lite": "0.4.23", + "unpipe": "1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/raw-body/node_modules/iconv-lite": { + "version": "0.4.23", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.23.tgz", + "integrity": "sha512-neyTUVFtahjf0mB3dZT77u+8O0QB89jFdnBkd5P1JgYPbPaia3gXXOVL2fq8VyU2gMMD7SaN7QukTB/pmXYvDA==", + "dev": true, + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/rbush": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/rbush/-/rbush-3.0.1.tgz", + "integrity": "sha512-XRaVO0YecOpEuIvbhbpTrZgoiI6xBlz6hnlr6EHhd+0x9ase6EmeN+hdwwUaJvLcsFFQ8iWVF1GAK1yB0BWi0w==", + "dev": true, + "dependencies": { + "quickselect": "^2.0.0" + } + }, + "node_modules/rc": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", + "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==", + "dev": true, + "optional": true, + "dependencies": { + "deep-extend": "^0.6.0", + "ini": "~1.3.0", + "minimist": "^1.2.0", + "strip-json-comments": "~2.0.1" + }, + "bin": { + "rc": "cli.js" + } + }, + "node_modules/react-is": { + "version": "17.0.2", + "dev": true, + "license": "MIT" + }, + "node_modules/read-pkg": { + "version": "3.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "load-json-file": "^4.0.0", + "normalize-package-data": "^2.3.2", + "path-type": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/read-pkg-up": { + "version": "7.0.1", + "dev": true, + "license": "MIT", + "dependencies": { + "find-up": "^4.1.0", + "read-pkg": "^5.2.0", + "type-fest": "^0.8.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/read-pkg-up/node_modules/parse-json": { + "version": "5.2.0", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.0.0", + "error-ex": "^1.3.1", + "json-parse-even-better-errors": "^2.3.0", + "lines-and-columns": "^1.1.6" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/read-pkg-up/node_modules/read-pkg": { + "version": "5.2.0", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/normalize-package-data": "^2.4.0", + "normalize-package-data": "^2.5.0", + "parse-json": "^5.0.0", + "type-fest": "^0.6.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/read-pkg-up/node_modules/read-pkg/node_modules/type-fest": { + "version": "0.6.0", + "dev": true, + "license": "(MIT OR CC0-1.0)", + "engines": { + "node": ">=8" + } + }, + "node_modules/read-pkg-up/node_modules/type-fest": { + "version": "0.8.1", + "dev": true, + "license": "(MIT OR CC0-1.0)", + "engines": { + "node": ">=8" + } + }, + "node_modules/readable-stream": { + "version": "3.6.2", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", + "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", + "dev": true, + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/readable-web-to-node-stream": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/readable-web-to-node-stream/-/readable-web-to-node-stream-3.0.2.tgz", + "integrity": "sha512-ePeK6cc1EcKLEhJFt/AebMCLL+GgSKhuygrZ/GLaKZYEecIgIECf4UaUuaByiGtzckwR4ain9VzUh95T1exYGw==", + "dev": true, + "dependencies": { + "readable-stream": "^3.6.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/Borewit" + } + }, + "node_modules/readdir-glob": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/readdir-glob/-/readdir-glob-1.1.3.tgz", + "integrity": "sha512-v05I2k7xN8zXvPD9N+z/uhXPaj0sUFCe2rcWZIpBsqxfP7xXFQ0tipAd/wjj1YxWyWtUS5IDJpOG82JKt2EAVA==", + "dev": true, + "dependencies": { + "minimatch": "^5.1.0" + } + }, + "node_modules/readdir-glob/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/readdir-glob/node_modules/minimatch": { + "version": "5.1.6", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz", + "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==", + "dev": true, + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/redent": { + "version": "3.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "indent-string": "^4.0.0", + "strip-indent": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/regenerator-runtime": { + "version": "0.11.1", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz", + "integrity": "sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg==", + "dev": true + }, + "node_modules/regex-not": { + "version": "1.0.2", + "dev": true, + "license": "MIT", + "dependencies": { + "extend-shallow": "^3.0.2", + "safe-regex": "^1.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/regexp.prototype.flags": { + "version": "1.4.3", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3", + "functions-have-names": "^1.2.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/remove-trailing-separator": { + "version": "1.1.0", + "dev": true, + "license": "ISC" + }, + "node_modules/repeat-element": { + "version": "1.1.4", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/repeat-string": { + "version": "1.6.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10" + } + }, + "node_modules/reproject": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/reproject/-/reproject-1.2.5.tgz", + "integrity": "sha512-cTH78fi1uuv5gzW/GVepO4LbCvOUhO0X2BEyyvrKkYb4KPRmDPs7cZnIxemHPUIch/CoSI8MPLmXRHZFSHjbKw==", + "dev": true, + "dependencies": { + "concat-stream": "^2.0.0", + "event-stream": "^4.0.0", + "geojson-stream": "0.1.0", + "minimist": "^1.2.0", + "proj4": "^2.4.4" + }, + "bin": { + "reproject": "cli.js" + } + }, + "node_modules/reproject/node_modules/concat-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-2.0.0.tgz", + "integrity": "sha512-MWufYdFw53ccGjCA+Ol7XJYpAlW6/prSMzuPOTRnJGcGzuhLn4Scrz7qf6o8bROZ514ltazcIFJZevcfbo0x7A==", + "dev": true, + "engines": [ + "node >= 6.0" + ], + "dependencies": { + "buffer-from": "^1.0.0", + "inherits": "^2.0.3", + "readable-stream": "^3.0.2", + "typedarray": "^0.0.6" + } + }, + "node_modules/reproject/node_modules/typedarray": { + "version": "0.0.6", + "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", + "integrity": "sha512-/aCDEGatGvZ2BIk+HmLf4ifCJFwvKFNb9/JeZPMulfgFracn9QFcAf5GO8B/mweUjSoblS5In0cWhqpfs/5PQA==", + "dev": true + }, + "node_modules/require-directory": { + "version": "2.1.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/require-main-filename": { + "version": "2.0.0", + "dev": true, + "license": "ISC" + }, + "node_modules/requires-port": { + "version": "1.0.0", + "dev": true, + "license": "MIT" + }, + "node_modules/resolve": { + "version": "1.22.1", + "dev": true, + "license": "MIT", + "dependencies": { + "is-core-module": "^2.9.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/resolve-cwd": { + "version": "3.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "resolve-from": "^5.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/resolve-from": { + "version": "5.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/resolve-url": { + "version": "0.2.1", + "dev": true, + "license": "MIT" + }, + "node_modules/restore-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz", + "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==", + "dev": true, + "optional": true, + "dependencies": { + "onetime": "^5.1.0", + "signal-exit": "^3.0.2" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/ret": { + "version": "0.1.15", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.12" + } + }, + "node_modules/rfc5646": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/rfc5646/-/rfc5646-3.0.0.tgz", + "integrity": "sha512-yFQuMO3ANS0jhQLB3b4NJGQ13RTm6tA9ZRf70nRSmOKchaT88pzh4fBdhcXEOptYdGw22vNqH7IRD/7pjDILZQ==", + "dev": true + }, + "node_modules/right-align": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/right-align/-/right-align-0.1.3.tgz", + "integrity": "sha512-yqINtL/G7vs2v+dFIZmFUDbnVyFUJFKd6gK22Kgo6R4jfJGFtisKyncWDDULgjfqf4ASQuIQyjJ7XZ+3aWpsAg==", + "dev": true, + "dependencies": { + "align-text": "^0.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/rimraf": { + "version": "3.0.2", + "dev": true, + "license": "ISC", + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/ripemd160": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.2.tgz", + "integrity": "sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==", + "dev": true, + "dependencies": { + "hash-base": "^3.0.0", + "inherits": "^2.0.1" + } + }, + "node_modules/rsvp": { + "version": "4.8.5", + "dev": true, + "license": "MIT", + "engines": { + "node": "6.* || >= 7.*" + } + }, + "node_modules/rtree-sql.js": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/rtree-sql.js/-/rtree-sql.js-1.7.0.tgz", + "integrity": "sha512-hue7klBnBrM6pvUPSnXNNgA0yN9FIjmhb8QveVY9q5h/3b//Cd8jaafUE0Ty89fuiamaLEHRw8eQq8mTn6Df5Q==", + "dev": true + }, + "node_modules/run-async": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.4.1.tgz", + "integrity": "sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==", + "dev": true, + "optional": true, + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/rxjs": { + "version": "6.6.7", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", + "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", + "dev": true, + "optional": true, + "dependencies": { + "tslib": "^1.9.0" + }, + "engines": { + "npm": ">=2.0.0" + } + }, + "node_modules/rxjs/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "dev": true, + "optional": true + }, + "node_modules/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==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" }, - "ripemd160": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.2.tgz", - "integrity": "sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==", - "dev": true, - "requires": { - "hash-base": "^3.0.0", - "inherits": "^2.0.1" - } + { + "type": "patreon", + "url": "https://www.patreon.com/feross" }, - "rtree-sql.js": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/rtree-sql.js/-/rtree-sql.js-1.0.0.tgz", - "integrity": "sha512-2ISdbYUyUmOU757K8g/vBBp45MUoolAUV2v7bMm0LxI5wdEIESz1ExutcEMjdQ/gp4zcofGjEa/0FBL1P9rXAg==", - "dev": true + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/safe-json-stringify": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/safe-json-stringify/-/safe-json-stringify-1.2.0.tgz", + "integrity": "sha512-gH8eh2nZudPQO6TytOvbxnuhYBOvDBBLW52tz5q6X58lJcd/tkmqFR+5Z9adS8aJtURSXWThWy/xJtJwixErvg==", + "dev": true, + "optional": true + }, + "node_modules/safe-regex": { + "version": "1.1.0", + "dev": true, + "license": "MIT", + "dependencies": { + "ret": "~0.1.10" + } + }, + "node_modules/safe-regex-test": { + "version": "1.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.2", + "get-intrinsic": "^1.1.3", + "is-regex": "^1.1.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/safer-buffer": { + "version": "2.1.2", + "dev": true, + "license": "MIT" + }, + "node_modules/sane": { + "version": "4.1.0", + "dev": true, + "license": "MIT", + "dependencies": { + "@cnakazawa/watch": "^1.0.3", + "anymatch": "^2.0.0", + "capture-exit": "^2.0.0", + "exec-sh": "^0.3.2", + "execa": "^1.0.0", + "fb-watchman": "^2.0.0", + "micromatch": "^3.1.4", + "minimist": "^1.1.1", + "walker": "~1.0.5" + }, + "bin": { + "sane": "src/cli.js" + }, + "engines": { + "node": "6.* || 8.* || >= 10.*" + } + }, + "node_modules/sane/node_modules/anymatch": { + "version": "2.0.0", + "dev": true, + "license": "ISC", + "dependencies": { + "micromatch": "^3.1.4", + "normalize-path": "^2.1.1" + } + }, + "node_modules/sane/node_modules/cross-spawn": { + "version": "6.0.5", + "dev": true, + "license": "MIT", + "dependencies": { + "nice-try": "^1.0.4", + "path-key": "^2.0.1", + "semver": "^5.5.0", + "shebang-command": "^1.2.0", + "which": "^1.2.9" + }, + "engines": { + "node": ">=4.8" + } + }, + "node_modules/sane/node_modules/execa": { + "version": "1.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "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" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/sane/node_modules/get-stream": { + "version": "4.1.0", + "dev": true, + "license": "MIT", + "dependencies": { + "pump": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/sane/node_modules/is-stream": { + "version": "1.1.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/sane/node_modules/normalize-path": { + "version": "2.1.1", + "dev": true, + "license": "MIT", + "dependencies": { + "remove-trailing-separator": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/sane/node_modules/npm-run-path": { + "version": "2.0.2", + "dev": true, + "license": "MIT", + "dependencies": { + "path-key": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/sane/node_modules/path-key": { + "version": "2.0.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/sane/node_modules/semver": { + "version": "5.7.1", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/sane/node_modules/shebang-command": { + "version": "1.2.0", + "dev": true, + "license": "MIT", + "dependencies": { + "shebang-regex": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/sane/node_modules/shebang-regex": { + "version": "1.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/sane/node_modules/which": { + "version": "1.3.1", + "dev": true, + "license": "ISC", + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "which": "bin/which" + } + }, + "node_modules/saslprep": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/saslprep/-/saslprep-1.0.3.tgz", + "integrity": "sha512-/MY/PEMbk2SuY5sScONwhUDsV2p77Znkb/q3nSVstq/yQzYJOH/Azh29p9oJLsl3LnQwSvZDKagDGBsBwSooag==", + "dev": true, + "optional": true, + "dependencies": { + "sparse-bitfield": "^3.0.3" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/sax": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", + "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==", + "dev": true + }, + "node_modules/saxes": { + "version": "5.0.1", + "dev": true, + "license": "ISC", + "dependencies": { + "xmlchars": "^2.2.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/semver": { + "version": "6.3.0", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/send": { + "version": "0.17.2", + "resolved": "https://registry.npmjs.org/send/-/send-0.17.2.tgz", + "integrity": "sha512-UJYB6wFSJE3G00nEivR5rgWp8c2xXvJ3OPWPhmuteU0IKj8nKbG3DrjiOmLwpnHGYWAVwA69zmTm++YG0Hmwww==", + "dev": true, + "dependencies": { + "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.8.1", + "mime": "1.6.0", + "ms": "2.1.3", + "on-finished": "~2.3.0", + "range-parser": "~1.2.1", + "statuses": "~1.5.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/send/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/send/node_modules/debug/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true + }, + "node_modules/send/node_modules/http-errors": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.8.1.tgz", + "integrity": "sha512-Kpk9Sm7NmI+RHhnj6OIWDI1d6fIoFAtFt9RLaTMRlg/8w49juAStsrBgp0Dp4OdxdVbRIeKhtCUvoi/RuAhO4g==", + "dev": true, + "dependencies": { + "depd": "~1.1.2", + "inherits": "2.0.4", + "setprototypeof": "1.2.0", + "statuses": ">= 1.5.0 < 2", + "toidentifier": "1.0.1" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/send/node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "dev": true + }, + "node_modules/serve-static": { + "version": "1.14.2", + "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.14.2.tgz", + "integrity": "sha512-+TMNA9AFxUEGuC0z2mevogSnn9MXKb4fa7ngeRMJaaGv8vTwnIEkKi+QGvPt33HSnf8pRS+WGM0EbMtCJLKMBQ==", + "dev": true, + "dependencies": { + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "parseurl": "~1.3.3", + "send": "0.17.2" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/set-blocking": { + "version": "2.0.0", + "dev": true, + "license": "ISC" + }, + "node_modules/set-value": { + "version": "2.0.1", + "dev": true, + "license": "MIT", + "dependencies": { + "extend-shallow": "^2.0.1", + "is-extendable": "^0.1.1", + "is-plain-object": "^2.0.3", + "split-string": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/set-value/node_modules/extend-shallow": { + "version": "2.0.1", + "dev": true, + "license": "MIT", + "dependencies": { + "is-extendable": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/set-value/node_modules/is-extendable": { + "version": "0.1.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/setprototypeof": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", + "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==", + "dev": true + }, + "node_modules/sha.js": { + "version": "2.4.11", + "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz", + "integrity": "sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==", + "dev": true, + "dependencies": { + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + }, + "bin": { + "sha.js": "bin.js" + } + }, + "node_modules/shebang-command": { + "version": "2.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "shebang-regex": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/shebang-regex": { + "version": "3.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/shell-quote": { + "version": "1.7.4", + "dev": true, + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/shellwords": { + "version": "0.1.1", + "dev": true, + "license": "MIT", + "optional": true + }, + "node_modules/side-channel": { + "version": "1.0.4", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.0", + "get-intrinsic": "^1.0.2", + "object-inspect": "^1.9.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/sift": { + "version": "16.0.1", + "resolved": "https://registry.npmjs.org/sift/-/sift-16.0.1.tgz", + "integrity": "sha512-Wv6BjQ5zbhW7VFefWusVP33T/EM0vYikCaQ2qR8yULbsilAT8/wQaXvuQ3ptGLpoKx+lihJE3y2UTgKDyyNHZQ==", + "dev": true + }, + "node_modules/signal-exit": { + "version": "3.0.7", + "dev": true, + "license": "ISC" + }, + "node_modules/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==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" }, - "run-async": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.4.1.tgz", - "integrity": "sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==" + { + "type": "patreon", + "url": "https://www.patreon.com/feross" }, - "rxjs": { - "version": "6.5.4", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.5.4.tgz", - "integrity": "sha512-naMQXcgEo3csAEGvw/NydRA0fuS2nDZJiw1YUWFKU7aPPAPGZEsD4Iimit96qwCieH6y614MCLYwdkrWx7z/7Q==", - "requires": { - "tslib": "^1.9.0" - } + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "optional": true + }, + "node_modules/simple-get": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/simple-get/-/simple-get-3.1.1.tgz", + "integrity": "sha512-CQ5LTKGfCpvE1K0n2us+kuMPbk/q0EKl82s4aheV9oXjFEz6W/Y7oQFVJuU6QG77hRT4Ghb5RURteF5vnWjupA==", + "dev": true, + "optional": true, + "dependencies": { + "decompress-response": "^4.2.0", + "once": "^1.3.1", + "simple-concat": "^1.0.0" + } + }, + "node_modules/simplify-js": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/simplify-js/-/simplify-js-1.2.4.tgz", + "integrity": "sha512-vITfSlwt7h/oyrU42R83mtzFpwYk3+mkH9bOHqq/Qw6n8rtR7aE3NZQ5fbcyCUVVmuMJR6ynsAhOfK2qoah8Jg==", + "dev": true + }, + "node_modules/sisteransi": { + "version": "1.0.5", + "dev": true, + "license": "MIT" + }, + "node_modules/slash": { + "version": "2.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/smart-buffer": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.2.0.tgz", + "integrity": "sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==", + "dev": true, + "engines": { + "node": ">= 6.0.0", + "npm": ">= 3.0.0" + } + }, + "node_modules/snapdragon": { + "version": "0.8.2", + "dev": true, + "license": "MIT", + "dependencies": { + "base": "^0.11.1", + "debug": "^2.2.0", + "define-property": "^0.2.5", + "extend-shallow": "^2.0.1", + "map-cache": "^0.2.2", + "source-map": "^0.5.6", + "source-map-resolve": "^0.5.0", + "use": "^3.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/snapdragon-node": { + "version": "2.1.1", + "dev": true, + "license": "MIT", + "dependencies": { + "define-property": "^1.0.0", + "isobject": "^3.0.0", + "snapdragon-util": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/snapdragon-node/node_modules/define-property": { + "version": "1.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "is-descriptor": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/snapdragon-util": { + "version": "3.0.1", + "dev": true, + "license": "MIT", + "dependencies": { + "kind-of": "^3.2.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/snapdragon-util/node_modules/kind-of": { + "version": "3.2.2", + "dev": true, + "license": "MIT", + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/snapdragon/node_modules/debug": { + "version": "2.6.9", + "dev": true, + "license": "MIT", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/snapdragon/node_modules/define-property": { + "version": "0.2.5", + "dev": true, + "license": "MIT", + "dependencies": { + "is-descriptor": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/snapdragon/node_modules/extend-shallow": { + "version": "2.0.1", + "dev": true, + "license": "MIT", + "dependencies": { + "is-extendable": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/snapdragon/node_modules/is-accessor-descriptor": { + "version": "0.1.6", + "dev": true, + "license": "MIT", + "dependencies": { + "kind-of": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/snapdragon/node_modules/is-accessor-descriptor/node_modules/kind-of": { + "version": "3.2.2", + "dev": true, + "license": "MIT", + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/snapdragon/node_modules/is-data-descriptor": { + "version": "0.1.4", + "dev": true, + "license": "MIT", + "dependencies": { + "kind-of": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/snapdragon/node_modules/is-data-descriptor/node_modules/kind-of": { + "version": "3.2.2", + "dev": true, + "license": "MIT", + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/snapdragon/node_modules/is-descriptor": { + "version": "0.1.6", + "dev": true, + "license": "MIT", + "dependencies": { + "is-accessor-descriptor": "^0.1.6", + "is-data-descriptor": "^0.1.4", + "kind-of": "^5.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/snapdragon/node_modules/is-extendable": { + "version": "0.1.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/snapdragon/node_modules/kind-of": { + "version": "5.1.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/snapdragon/node_modules/ms": { + "version": "2.0.0", + "dev": true, + "license": "MIT" + }, + "node_modules/snapdragon/node_modules/source-map": { + "version": "0.5.7", + "dev": true, + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/socks": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/socks/-/socks-2.7.1.tgz", + "integrity": "sha512-7maUZy1N7uo6+WVEX6psASxtNlKaNVMlGQKkG/63nEDdLOWNbiUMoLK7X4uYoLhQstau72mLgfEWcXcwsaHbYQ==", + "dev": true, + "dependencies": { + "ip": "^2.0.0", + "smart-buffer": "^4.2.0" + }, + "engines": { + "node": ">= 10.13.0", + "npm": ">= 3.0.0" + } + }, + "node_modules/source-map": { + "version": "0.6.1", + "dev": true, + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/source-map-resolve": { + "version": "0.5.3", + "dev": true, + "license": "MIT", + "dependencies": { + "atob": "^2.1.2", + "decode-uri-component": "^0.2.0", + "resolve-url": "^0.2.1", + "source-map-url": "^0.4.0", + "urix": "^0.1.0" + } + }, + "node_modules/source-map-support": { + "version": "0.5.21", + "dev": true, + "license": "MIT", + "dependencies": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" + } + }, + "node_modules/source-map-url": { + "version": "0.4.1", + "dev": true, + "license": "MIT" + }, + "node_modules/sparse-bitfield": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/sparse-bitfield/-/sparse-bitfield-3.0.3.tgz", + "integrity": "sha512-kvzhi7vqKTfkh0PZU+2D2PIllw2ymqJKujUcyPMd9Y75Nv4nPbGJZXNhxsgdQab2BmlDct1YnfQCguEvHr7VsQ==", + "dev": true, + "optional": true, + "dependencies": { + "memory-pager": "^1.0.2" + } + }, + "node_modules/spdx-correct": { + "version": "3.1.1", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "spdx-expression-parse": "^3.0.0", + "spdx-license-ids": "^3.0.0" + } + }, + "node_modules/spdx-exceptions": { + "version": "2.3.0", + "dev": true, + "license": "CC-BY-3.0" + }, + "node_modules/spdx-expression-parse": { + "version": "3.0.1", + "dev": true, + "license": "MIT", + "dependencies": { + "spdx-exceptions": "^2.1.0", + "spdx-license-ids": "^3.0.0" + } + }, + "node_modules/spdx-license-ids": { + "version": "3.0.12", + "dev": true, + "license": "CC0-1.0" + }, + "node_modules/splaytree": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/splaytree/-/splaytree-3.1.1.tgz", + "integrity": "sha512-9FaQ18FF0+sZc/ieEeXHt+Jw2eSpUgUtTLDYB/HXKWvhYVyOc7h1hzkn5MMO3GPib9MmXG1go8+OsBBzs/NMww==", + "dev": true + }, + "node_modules/split": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/split/-/split-1.0.1.tgz", + "integrity": "sha512-mTyOoPbrivtXnwnIxZRFYRrPNtEFKlpB2fvjSnCQUiAA6qAZzqwna5envK4uk6OIeP17CsdF3rSBGYVBsU0Tkg==", + "dev": true, + "dependencies": { + "through": "2" + }, + "engines": { + "node": "*" + } + }, + "node_modules/split-string": { + "version": "3.1.0", + "dev": true, + "license": "MIT", + "dependencies": { + "extend-shallow": "^3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/sprintf-js": { + "version": "1.0.3", + "dev": true, + "license": "BSD-3-Clause" + }, + "node_modules/stack-trace": { + "version": "0.0.10", + "resolved": "https://registry.npmjs.org/stack-trace/-/stack-trace-0.0.10.tgz", + "integrity": "sha512-KGzahc7puUKkzyMt+IqAep+TVNbKP+k2Lmwhub39m1AsTSkaDutx56aDCo+HLDzf/D26BIHTJWNiTG1KAJiQCg==", + "dev": true, + "engines": { + "node": "*" + } + }, + "node_modules/stack-utils": { + "version": "2.0.6", + "dev": true, + "license": "MIT", + "dependencies": { + "escape-string-regexp": "^2.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/static-extend": { + "version": "0.1.2", + "dev": true, + "license": "MIT", + "dependencies": { + "define-property": "^0.2.5", + "object-copy": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/static-extend/node_modules/define-property": { + "version": "0.2.5", + "dev": true, + "license": "MIT", + "dependencies": { + "is-descriptor": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/static-extend/node_modules/is-accessor-descriptor": { + "version": "0.1.6", + "dev": true, + "license": "MIT", + "dependencies": { + "kind-of": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/static-extend/node_modules/is-accessor-descriptor/node_modules/kind-of": { + "version": "3.2.2", + "dev": true, + "license": "MIT", + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/static-extend/node_modules/is-data-descriptor": { + "version": "0.1.4", + "dev": true, + "license": "MIT", + "dependencies": { + "kind-of": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/static-extend/node_modules/is-data-descriptor/node_modules/kind-of": { + "version": "3.2.2", + "dev": true, + "license": "MIT", + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/static-extend/node_modules/is-descriptor": { + "version": "0.1.6", + "dev": true, + "license": "MIT", + "dependencies": { + "is-accessor-descriptor": "^0.1.6", + "is-data-descriptor": "^0.1.4", + "kind-of": "^5.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/static-extend/node_modules/kind-of": { + "version": "5.1.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/statuses": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", + "integrity": "sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/stream-combiner": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/stream-combiner/-/stream-combiner-0.2.2.tgz", + "integrity": "sha512-6yHMqgLYDzQDcAkL+tjJDC5nSNuNIx0vZtRZeiPh7Saef7VHX9H5Ijn9l2VIol2zaNYlYEX6KyuT/237A58qEQ==", + "dev": true, + "dependencies": { + "duplexer": "~0.1.1", + "through": "~2.3.4" + } + }, + "node_modules/streamsearch": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/streamsearch/-/streamsearch-1.1.0.tgz", + "integrity": "sha512-Mcc5wHehp9aXz1ax6bZUyY5afg9u2rv5cqQI3mRrYkGC8rW2hM02jWuwjtL++LS5qinSyhj2QfLyNsuc+VsExg==", + "dev": true, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/string_decoder": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "dev": true, + "dependencies": { + "safe-buffer": "~5.2.0" + } + }, + "node_modules/string-length": { + "version": "4.0.2", + "dev": true, + "license": "MIT", + "dependencies": { + "char-regex": "^1.0.2", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/string-width": { + "version": "4.2.3", + "dev": true, + "license": "MIT", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/string.prototype.padend": { + "version": "3.1.4", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/string.prototype.trimend": { + "version": "1.0.6", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/string.prototype.trimstart": { + "version": "1.0.6", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/strip-ansi": { + "version": "6.0.1", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-bom": { + "version": "4.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-eof": { + "version": "1.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/strip-final-newline": { + "version": "2.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/strip-indent": { + "version": "3.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "min-indent": "^1.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-json-comments": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", + "integrity": "sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ==", + "dev": true, + "optional": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/strnum": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/strnum/-/strnum-1.0.5.tgz", + "integrity": "sha512-J8bbNyKKXl5qYcR36TIO8W3mVGVHrmmxsd5PAItGkmyzwJvybiw2IVq5nqd0i4LSNSkB/sx9VHllbfFdr9k1JA==", + "dev": true, + "optional": true + }, + "node_modules/strtok3": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/strtok3/-/strtok3-6.3.0.tgz", + "integrity": "sha512-fZtbhtvI9I48xDSywd/somNqgUHl2L2cstmXCCif0itOf96jeW18MBSyrLuNicYQVkvpOxkZtkzujiTJ9LW5Jw==", + "dev": true, + "dependencies": { + "@tokenizer/token": "^0.3.0", + "peek-readable": "^4.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/Borewit" + } + }, + "node_modules/superagent": { + "version": "8.0.9", + "resolved": "https://registry.npmjs.org/superagent/-/superagent-8.0.9.tgz", + "integrity": "sha512-4C7Bh5pyHTvU33KpZgwrNKh/VQnvgtCSqPRfJAUdmrtSYePVzVg4E4OzsrbkhJj9O7SO6Bnv75K/F8XVZT8YHA==", + "dev": true, + "dependencies": { + "component-emitter": "^1.3.0", + "cookiejar": "^2.1.4", + "debug": "^4.3.4", + "fast-safe-stringify": "^2.1.1", + "form-data": "^4.0.0", + "formidable": "^2.1.2", + "methods": "^1.1.2", + "mime": "2.6.0", + "qs": "^6.11.0", + "semver": "^7.3.8" + }, + "engines": { + "node": ">=6.4.0 <13 || >=14" + } + }, + "node_modules/superagent/node_modules/form-data": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz", + "integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==", + "dev": true, + "dependencies": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "mime-types": "^2.1.12" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/superagent/node_modules/mime": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-2.6.0.tgz", + "integrity": "sha512-USPkMeET31rOMiarsBNIHZKLGgvKc/LrjofAnBlOttf5ajRvqiRA8QsenbcooctK6d6Ts6aqZXBA+XbkKthiQg==", + "dev": true, + "bin": { + "mime": "cli.js" + }, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/superagent/node_modules/qs": { + "version": "6.11.1", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.11.1.tgz", + "integrity": "sha512-0wsrzgTz/kAVIeuxSjnpGC56rzYtr6JT/2BwEvMaPhFIoYa1aGO8LbzuU1R0uUYQkLpWBTOj0l/CLAJB64J6nQ==", + "dev": true, + "dependencies": { + "side-channel": "^1.0.4" + }, + "engines": { + "node": ">=0.6" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/superagent/node_modules/semver": { + "version": "7.3.8", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", + "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", + "dev": true, + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/supports-color": { + "version": "7.2.0", + "dev": true, + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/supports-hyperlinks": { + "version": "2.3.0", + "dev": true, + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0", + "supports-color": "^7.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/supports-preserve-symlinks-flag": { + "version": "1.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/svg-captcha": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/svg-captcha/-/svg-captcha-1.4.0.tgz", + "integrity": "sha512-/fkkhavXPE57zRRCjNqAP3txRCSncpMx3NnNZL7iEoyAtYwUjPhJxW6FQTQPG5UPEmCrbFoXS10C3YdJlW7PDg==", + "dev": true, + "dependencies": { + "opentype.js": "^0.7.3" + }, + "engines": { + "node": ">=4.x" + } + }, + "node_modules/symbol-tree": { + "version": "3.2.4", + "dev": true, + "license": "MIT" + }, + "node_modules/tar": { + "version": "6.1.13", + "resolved": "https://registry.npmjs.org/tar/-/tar-6.1.13.tgz", + "integrity": "sha512-jdIBIN6LTIe2jqzay/2vtYLlBHa3JF42ot3h1dW8Q0PaAG4v8rm0cvpVePtau5C6OKXGGcgO9q2AMNSWxiLqKw==", + "dev": true, + "optional": true, + "dependencies": { + "chownr": "^2.0.0", + "fs-minipass": "^2.0.0", + "minipass": "^4.0.0", + "minizlib": "^2.1.1", + "mkdirp": "^1.0.3", + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/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==", + "dev": true, + "optional": true, + "dependencies": { + "chownr": "^1.1.1", + "mkdirp-classic": "^0.5.2", + "pump": "^3.0.0", + "tar-stream": "^2.1.4" + } + }, + "node_modules/tar-fs/node_modules/chownr": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz", + "integrity": "sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==", + "dev": true, + "optional": true + }, + "node_modules/tar-stream": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-2.2.0.tgz", + "integrity": "sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ==", + "dev": true, + "dependencies": { + "bl": "^4.0.3", + "end-of-stream": "^1.4.1", + "fs-constants": "^1.0.0", + "inherits": "^2.0.3", + "readable-stream": "^3.1.1" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/terminal-link": { + "version": "2.1.1", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-escapes": "^4.2.1", + "supports-hyperlinks": "^2.0.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/terraformer": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/terraformer/-/terraformer-1.0.4.tgz", + "integrity": "sha512-F5H7z0Dboi32wn0QdJzr+Hat8DIiJPPY2WCtV5qk0A6hZYL6Jgy4Wso095tWda3CGyiaYDfbHmRFhkQbEbaxqA==", + "deprecated": "terraformer is deprecated and no longer supported. Please use @terraformer/arcgis.", + "dev": true + }, + "node_modules/terraformer-arcgis-parser": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/terraformer-arcgis-parser/-/terraformer-arcgis-parser-1.0.4.tgz", + "integrity": "sha512-N8TRnJMN6cWznH19NcyPB2oFYV6dr1MIqThqBsVy0SxGtj2euRamj0Z+wZKUiWEsKFYfuUgEda3xfFzrrkuY+w==", + "deprecated": "terraformer-arcgis-parser is deprecated and no longer supported. Please use @terraformer/arcgis.", + "dev": true, + "dependencies": { + "terraformer": "~1.0.4" + } + }, + "node_modules/test-exclude": { + "version": "6.0.0", + "dev": true, + "license": "ISC", + "dependencies": { + "@istanbuljs/schema": "^0.1.2", + "glob": "^7.1.4", + "minimatch": "^3.0.4" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/throat": { + "version": "5.0.0", + "dev": true, + "license": "MIT" + }, + "node_modules/through": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", + "integrity": "sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==", + "dev": true + }, + "node_modules/tiny-inflate": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/tiny-inflate/-/tiny-inflate-1.0.3.tgz", + "integrity": "sha512-pkY1fj1cKHb2seWDy0B16HeWyczlJA9/WW3u3c4z/NiWDsO3DOU5D7nhTLE9CF0yXv/QZFY7sEJmj24dK+Rrqw==", + "dev": true + }, + "node_modules/tmp": { + "version": "0.0.33", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", + "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", + "dev": true, + "optional": true, + "dependencies": { + "os-tmpdir": "~1.0.2" + }, + "engines": { + "node": ">=0.6.0" + } + }, + "node_modules/tmpl": { + "version": "1.0.5", + "dev": true, + "license": "BSD-3-Clause" + }, + "node_modules/to-fast-properties": { + "version": "2.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/to-object-path": { + "version": "0.3.0", + "dev": true, + "license": "MIT", + "dependencies": { + "kind-of": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/to-object-path/node_modules/kind-of": { + "version": "3.2.2", + "dev": true, + "license": "MIT", + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/to-regex": { + "version": "3.0.2", + "dev": true, + "license": "MIT", + "dependencies": { + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "regex-not": "^1.0.2", + "safe-regex": "^1.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/to-regex-range": { + "version": "2.1.1", + "dev": true, + "license": "MIT", + "dependencies": { + "is-number": "^3.0.0", + "repeat-string": "^1.6.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/toidentifier": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz", + "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==", + "dev": true, + "engines": { + "node": ">=0.6" + } + }, + "node_modules/token-stream": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/token-stream/-/token-stream-0.0.1.tgz", + "integrity": "sha512-nfjOAu/zAWmX9tgwi5NRp7O7zTDUD1miHiB40klUnAh9qnL1iXdgzcz/i5dMaL5jahcBAaSfmNOBBJBLJW8TEg==", + "dev": true + }, + "node_modules/token-types": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/token-types/-/token-types-2.1.1.tgz", + "integrity": "sha512-wnQcqlreS6VjthyHO3Y/kpK/emflxDBNhlNUPfh7wE39KnuDdOituXomIbyI79vBtF0Ninpkh72mcuRHo+RG3Q==", + "dev": true, + "dependencies": { + "@tokenizer/token": "^0.1.1", + "ieee754": "^1.2.1" + }, + "engines": { + "node": ">=0.1.98" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/Borewit" + } + }, + "node_modules/token-types/node_modules/@tokenizer/token": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@tokenizer/token/-/token-0.1.1.tgz", + "integrity": "sha512-XO6INPbZCxdprl+9qa/AAbFFOMzzwqYxpjPgLICrMD6C2FCw6qfJOPcBk6JqqPLSaZ/Qx87qn4rpPmPMwaAK6w==", + "dev": true + }, + "node_modules/tough-cookie": { + "version": "4.1.2", + "dev": true, + "license": "BSD-3-Clause", + "dependencies": { + "psl": "^1.1.33", + "punycode": "^2.1.1", + "universalify": "^0.2.0", + "url-parse": "^1.5.3" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/tr46": { + "version": "2.1.0", + "dev": true, + "license": "MIT", + "dependencies": { + "punycode": "^2.1.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/trim-newlines": { + "version": "3.0.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/ts-jest": { + "version": "26.5.6", + "dev": true, + "license": "MIT", + "dependencies": { + "bs-logger": "0.x", + "buffer-from": "1.x", + "fast-json-stable-stringify": "2.x", + "jest-util": "^26.1.0", + "json5": "2.x", + "lodash": "4.x", + "make-error": "1.x", + "mkdirp": "1.x", + "semver": "7.x", + "yargs-parser": "20.x" + }, + "bin": { + "ts-jest": "cli.js" + }, + "engines": { + "node": ">= 10" + }, + "peerDependencies": { + "jest": ">=26 <27", + "typescript": ">=3.8 <5.0" + } + }, + "node_modules/ts-jest/node_modules/semver": { + "version": "7.3.8", + "dev": true, + "license": "ISC", + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/ts-jest/node_modules/yargs-parser": { + "version": "20.2.9", + "dev": true, + "license": "ISC", + "engines": { + "node": ">=10" + } + }, + "node_modules/tslib": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.5.0.tgz", + "integrity": "sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg==", + "dev": true, + "optional": true + }, + "node_modules/tunnel-agent": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", + "integrity": "sha512-McnNiV1l8RYeY8tBgEpuodCC1mLUdbSN+CYBL7kJsJNInOP8UjDDEwdk6Mw60vdLLrr5NHKZhMAOSrR2NZuQ+w==", + "dev": true, + "optional": true, + "dependencies": { + "safe-buffer": "^5.0.1" + }, + "engines": { + "node": "*" + } + }, + "node_modules/type-check": { + "version": "0.3.2", + "dev": true, + "license": "MIT", + "dependencies": { + "prelude-ls": "~1.1.2" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/type-detect": { + "version": "4.0.8", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/type-fest": { + "version": "0.21.3", + "dev": true, + "license": "(MIT OR CC0-1.0)", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/type-is": { + "version": "1.6.18", + "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz", + "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==", + "dev": true, + "dependencies": { + "media-typer": "0.3.0", + "mime-types": "~2.1.24" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/typedarray": { + "version": "0.0.7", + "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.7.tgz", + "integrity": "sha512-ueeb9YybpjhivjbHP2LdFDAjbS948fGEPj+ACAMs4xCMmh72OCOMQWBQKlaN4ZNQ04yfLSDLSx1tGRIoWimObQ==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/typedarray-to-buffer": { + "version": "3.1.5", + "dev": true, + "license": "MIT", + "dependencies": { + "is-typedarray": "^1.0.0" + } + }, + "node_modules/typescript": { + "version": "4.9.3", + "dev": true, + "license": "Apache-2.0", + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=4.2.0" + } + }, + "node_modules/uglify-js": { + "version": "2.8.29", + "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-2.8.29.tgz", + "integrity": "sha512-qLq/4y2pjcU3vhlhseXGGJ7VbFO4pBANu0kwl8VCa9KEI0V8VfZIx2Fy3w01iSTA/pGwKZSmu/+I4etLNDdt5w==", + "dev": true, + "dependencies": { + "source-map": "~0.5.1", + "yargs": "~3.10.0" + }, + "bin": { + "uglifyjs": "bin/uglifyjs" + }, + "engines": { + "node": ">=0.8.0" + }, + "optionalDependencies": { + "uglify-to-browserify": "~1.0.0" + } + }, + "node_modules/uglify-js/node_modules/camelcase": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-1.2.1.tgz", + "integrity": "sha512-wzLkDa4K/mzI1OSITC+DUyjgIl/ETNHE9QvYgy6J6Jvqyyz4C0Xfd+lQhb19sX2jMpZV4IssUn0VDVmglV+s4g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/uglify-js/node_modules/cliui": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-2.1.0.tgz", + "integrity": "sha512-GIOYRizG+TGoc7Wgc1LiOTLare95R3mzKgoln+Q/lE4ceiYH19gUpl0l0Ffq4lJDEf3FxujMe6IBfOCs7pfqNA==", + "dev": true, + "dependencies": { + "center-align": "^0.1.1", + "right-align": "^0.1.1", + "wordwrap": "0.0.2" + } + }, + "node_modules/uglify-js/node_modules/source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/uglify-js/node_modules/yargs": { + "version": "3.10.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-3.10.0.tgz", + "integrity": "sha512-QFzUah88GAGy9lyDKGBqZdkYApt63rCXYBGYnEP4xDJPXNqXXnBDACnbrXnViV6jRSqAePwrATi2i8mfYm4L1A==", + "dev": true, + "dependencies": { + "camelcase": "^1.0.2", + "cliui": "^2.1.0", + "decamelize": "^1.0.0", + "window-size": "0.1.0" + } + }, + "node_modules/uglify-to-browserify": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/uglify-to-browserify/-/uglify-to-browserify-1.0.2.tgz", + "integrity": "sha512-vb2s1lYx2xBtUgy+ta+b2J/GLVUR+wmpINwHePmPRhOsIVCG2wDzKJ0n14GslH1BifsqVzSOwQhRaCAsZ/nI4Q==", + "dev": true, + "optional": true + }, + "node_modules/uid-safe": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/uid-safe/-/uid-safe-2.1.5.tgz", + "integrity": "sha512-KPHm4VL5dDXKz01UuEd88Df+KzynaohSL9fBh096KWAxSKZQDI2uBrVqtvRM4rwrIrRRKsdLNML/lnaaVSRioA==", + "dev": true, + "dependencies": { + "random-bytes": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/uid2": { + "version": "0.0.4", + "resolved": "https://registry.npmjs.org/uid2/-/uid2-0.0.4.tgz", + "integrity": "sha512-IevTus0SbGwQzYh3+fRsAMTVVPOoIVufzacXcHPmdlle1jUpq7BRL+mw3dgeLanvGZdwwbWhRV6XrcFNdBmjWA==", + "dev": true + }, + "node_modules/unbox-primitive": { + "version": "1.0.2", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.2", + "has-bigints": "^1.0.2", + "has-symbols": "^1.0.3", + "which-boxed-primitive": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/underscore": { + "version": "1.8.3", + "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.8.3.tgz", + "integrity": "sha512-5WsVTFcH1ut/kkhAaHf4PVgI8c7++GiVcpCGxPouI6ZVjsqPnSDf8h/8HtVqc0t4fzRXwnMK70EcZeAs3PIddg==", + "dev": true + }, + "node_modules/union-value": { + "version": "1.0.1", + "dev": true, + "license": "MIT", + "dependencies": { + "arr-union": "^3.1.0", + "get-value": "^2.0.6", + "is-extendable": "^0.1.1", + "set-value": "^2.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/union-value/node_modules/is-extendable": { + "version": "0.1.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/uniqid": { + "version": "5.4.0", + "resolved": "https://registry.npmjs.org/uniqid/-/uniqid-5.4.0.tgz", + "integrity": "sha512-38JRbJ4Fj94VmnC7G/J/5n5SC7Ab46OM5iNtSstB/ko3l1b5g7ALt4qzHFgGciFkyiRNtDXtLNb+VsxtMSE77A==", + "dev": true + }, + "node_modules/universalify": { + "version": "0.2.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 4.0.0" + } + }, + "node_modules/unpipe": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", + "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==", + "dev": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/unset-value": { + "version": "1.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "has-value": "^0.3.1", + "isobject": "^3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/unset-value/node_modules/has-value": { + "version": "0.3.1", + "dev": true, + "license": "MIT", + "dependencies": { + "get-value": "^2.0.3", + "has-values": "^0.1.4", + "isobject": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/unset-value/node_modules/has-value/node_modules/isobject": { + "version": "2.1.0", + "dev": true, + "license": "MIT", + "dependencies": { + "isarray": "1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/unset-value/node_modules/has-values": { + "version": "0.1.4", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/update-browserslist-db": { + "version": "1.0.10", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" }, - "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==" + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + } + ], + "license": "MIT", + "dependencies": { + "escalade": "^3.1.1", + "picocolors": "^1.0.0" + }, + "bin": { + "browserslist-lint": "cli.js" + }, + "peerDependencies": { + "browserslist": ">= 4.21.0" + } + }, + "node_modules/urix": { + "version": "0.1.0", + "dev": true, + "license": "MIT" + }, + "node_modules/url-parse": { + "version": "1.5.10", + "dev": true, + "license": "MIT", + "dependencies": { + "querystringify": "^2.1.1", + "requires-port": "^1.0.0" + } + }, + "node_modules/use": { + "version": "3.1.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", + "dev": true + }, + "node_modules/utils-merge": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", + "integrity": "sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==", + "dev": true, + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/uuid": { + "version": "8.3.2", + "dev": true, + "license": "MIT", + "optional": true, + "bin": { + "uuid": "dist/bin/uuid" + } + }, + "node_modules/v8-to-istanbul": { + "version": "7.1.2", + "dev": true, + "license": "ISC", + "dependencies": { + "@types/istanbul-lib-coverage": "^2.0.1", + "convert-source-map": "^1.6.0", + "source-map": "^0.7.3" + }, + "engines": { + "node": ">=10.10.0" + } + }, + "node_modules/v8-to-istanbul/node_modules/source-map": { + "version": "0.7.4", + "dev": true, + "license": "BSD-3-Clause", + "engines": { + "node": ">= 8" + } + }, + "node_modules/validate-npm-package-license": { + "version": "3.0.4", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "spdx-correct": "^3.0.0", + "spdx-expression-parse": "^3.0.0" + } + }, + "node_modules/vary": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", + "integrity": "sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==", + "dev": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/vasync": { + "version": "1.6.4", + "resolved": "https://registry.npmjs.org/vasync/-/vasync-1.6.4.tgz", + "integrity": "sha512-3oQMomVgQgHzNe5iKuT8PGOhMCQcg1wfh00Nh/Kl39ERdTlw/uNS7kbrhEraDMDKWHdDdc0iBFahPEd/Ft2b+A==", + "dev": true, + "engines": [ + "node >=0.6.0" + ], + "dependencies": { + "verror": "1.6.0" + } + }, + "node_modules/vasync/node_modules/extsprintf": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.2.0.tgz", + "integrity": "sha512-T3PYC6HucmF4OfunfZb5d1nRvTSvWYhsr/Og33HANcCuCtGPUtWVyt/tTs8SU9sR0SGh5Z/xQCuX/D72ph2H+A==", + "dev": true, + "engines": [ + "node >=0.6.0" + ] + }, + "node_modules/vasync/node_modules/verror": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/verror/-/verror-1.6.0.tgz", + "integrity": "sha512-bIOaZx4+Bf6a7sIORfmYnyKLDLk/lhVym6rjYlq+vkitYKnhFmUpmPpDTCltWFrUTlGKs6sCeoDWfMA0oOOneA==", + "dev": true, + "engines": [ + "node >=0.6.0" + ], + "dependencies": { + "extsprintf": "1.2.0" + } + }, + "node_modules/verror": { + "version": "1.10.1", + "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.1.tgz", + "integrity": "sha512-veufcmxri4e3XSrT0xwfUR7kguIkaxBeosDg00yDWhk49wdwkSUrvvsm7nc75e1PUyvIeZj6nS8VQRYz2/S4Xg==", + "dev": true, + "dependencies": { + "assert-plus": "^1.0.0", + "core-util-is": "1.0.2", + "extsprintf": "^1.2.0" + }, + "engines": { + "node": ">=0.6.0" + } + }, + "node_modules/void-elements": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/void-elements/-/void-elements-2.0.1.tgz", + "integrity": "sha512-qZKX4RnBzH2ugr8Lxa7x+0V6XD9Sb/ouARtiasEQCHB1EVU4NXtmHsDDrx1dO4ne5fc3J6EW05BP1Dl0z0iung==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/w3c-hr-time": { + "version": "1.0.2", + "dev": true, + "license": "MIT", + "dependencies": { + "browser-process-hrtime": "^1.0.0" + } + }, + "node_modules/w3c-xmlserializer": { + "version": "2.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "xml-name-validator": "^3.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/walk": { + "version": "2.3.4", + "resolved": "https://registry.npmjs.org/walk/-/walk-2.3.4.tgz", + "integrity": "sha512-7E59PL35OcXlKpblHK4IUhr4rVGFDsUl1rndkdUlW4JKdnTNAVRaAp6EzLJQZTHwugepEsCVQpvFlGRRSveAAw==", + "dev": true, + "dependencies": { + "foreachasync": "3.x" + } + }, + "node_modules/walker": { + "version": "1.0.8", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "makeerror": "1.0.12" + } + }, + "node_modules/webidl-conversions": { + "version": "6.1.0", + "dev": true, + "license": "BSD-2-Clause", + "engines": { + "node": ">=10.4" + } + }, + "node_modules/webworkify": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/webworkify/-/webworkify-1.5.0.tgz", + "integrity": "sha512-AMcUeyXAhbACL8S2hqqdqOLqvJ8ylmIbNwUIqQujRSouf4+eUFaXbG6F1Rbu+srlJMmxQWsiU7mOJi0nMBfM1g==", + "dev": true + }, + "node_modules/whatwg-encoding": { + "version": "1.0.5", + "dev": true, + "license": "MIT", + "dependencies": { + "iconv-lite": "0.4.24" + } + }, + "node_modules/whatwg-mimetype": { + "version": "2.3.0", + "dev": true, + "license": "MIT" + }, + "node_modules/whatwg-url": { + "version": "8.7.0", + "dev": true, + "license": "MIT", + "dependencies": { + "lodash": "^4.7.0", + "tr46": "^2.1.0", + "webidl-conversions": "^6.1.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/which": { + "version": "2.0.2", + "dev": true, + "license": "ISC", + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/which-boxed-primitive": { + "version": "1.0.2", + "dev": true, + "license": "MIT", + "dependencies": { + "is-bigint": "^1.0.1", + "is-boolean-object": "^1.1.0", + "is-number-object": "^1.0.4", + "is-string": "^1.0.5", + "is-symbol": "^1.0.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/which-module": { + "version": "2.0.0", + "dev": true, + "license": "ISC" + }, + "node_modules/wide-align": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.5.tgz", + "integrity": "sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==", + "dev": true, + "optional": true, + "dependencies": { + "string-width": "^1.0.2 || 2 || 3 || 4" + } + }, + "node_modules/window-size": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/window-size/-/window-size-0.1.0.tgz", + "integrity": "sha512-1pTPQDKTdd61ozlKGNCjhNRd+KPmgLSGa3mZTHoOliaGcESD8G1PXhh7c1fgiPjVbNVfgy2Faw4BI8/m0cC8Mg==", + "dev": true, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/winston": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/winston/-/winston-1.0.1.tgz", + "integrity": "sha512-MDfzOMhdpt0EJHNd7FInsIoNZak7v4c5a8dPH5OnxkKwvs0qq75HG99e7uPIGRQmOnPJOHXnPiatXIbhKNvBZA==", + "dev": true, + "dependencies": { + "async": "0.9.x", + "colors": "1.0.x", + "cycle": "1.0.x", + "eyes": "0.1.x", + "isstream": "0.1.x", + "pkginfo": "0.3.x", + "stack-trace": "0.0.x" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/winston/node_modules/async": { + "version": "0.9.2", + "resolved": "https://registry.npmjs.org/async/-/async-0.9.2.tgz", + "integrity": "sha512-l6ToIJIotphWahxxHyzK9bnLR6kM4jJIIgLShZeqLY7iboHoGkdgFl7W2/Ivi4SkMJYGKqW8vSuk0uKUj6qsSw==", + "dev": true + }, + "node_modules/with": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/with/-/with-5.1.1.tgz", + "integrity": "sha512-uAnSsFGfSpF6DNhBXStvlZILfHJfJu4eUkfbRGk94kGO1Ta7bg6FwfvoOhhyHAJuFbCw+0xk4uJ3u57jLvlCJg==", + "dev": true, + "dependencies": { + "acorn": "^3.1.0", + "acorn-globals": "^3.0.0" + } + }, + "node_modules/with/node_modules/acorn": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-3.3.0.tgz", + "integrity": "sha512-OLUyIIZ7mF5oaAUT1w0TFqQS81q3saT46x8t7ukpPjMNk+nbs4ZHhs7ToV8EWnLYLepjETXd4XaCE4uxkMeqUw==", + "dev": true, + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/with/node_modules/acorn-globals": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/acorn-globals/-/acorn-globals-3.1.0.tgz", + "integrity": "sha512-uWttZCk96+7itPxK8xCzY86PnxKTMrReKDqrHzv42VQY0K30PUO8WY13WMOuI+cOdX4EIdzdvQ8k6jkuGRFMYw==", + "dev": true, + "dependencies": { + "acorn": "^4.0.4" + } + }, + "node_modules/with/node_modules/acorn-globals/node_modules/acorn": { + "version": "4.0.13", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-4.0.13.tgz", + "integrity": "sha512-fu2ygVGuMmlzG8ZeRJ0bvR41nsAkxxhbyk8bZ1SS521Z7vmgJFTQQlfz/Mp/nJexGBz+v8sC9bM6+lNgskt4Ug==", + "dev": true, + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/wkt-parser": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/wkt-parser/-/wkt-parser-1.3.2.tgz", + "integrity": "sha512-A26BOOo7sHAagyxG7iuRhnKMO7Q3mEOiOT4oGUmohtN/Li5wameeU4S6f8vWw6NADTVKljBs8bzA8JPQgSEMVQ==", + "dev": true + }, + "node_modules/wkx": { + "version": "0.4.8", + "resolved": "https://registry.npmjs.org/wkx/-/wkx-0.4.8.tgz", + "integrity": "sha512-ikPXMM9IR/gy/LwiOSqWlSL3X/J5uk9EO2hHNRXS41eTLXaUFEVw9fn/593jW/tE5tedNg8YjT5HkCa4FqQZyQ==", + "dev": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/wms-capabilities": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/wms-capabilities/-/wms-capabilities-0.4.1.tgz", + "integrity": "sha512-BfGzjDtF3GdWRFvySqf8y9EU1gBIzAd6zIlg+J6q9rYxiqz+YMAmSOHnMPRNOuP2VGPvcNkxXZdxBtMO0D652g==", + "dev": true, + "dependencies": { + "minimist": "^1.2.0" + }, + "bin": { + "wmscapabilities": "bin/wmscapabilities" + } + }, + "node_modules/word-wrap": { + "version": "1.2.3", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/wordwrap": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.2.tgz", + "integrity": "sha512-xSBsCeh+g+dinoBv3GAOWM4LcVVO68wLXRanibtBSdUvkGWQRGeE9P7IwU9EmDDi4jA6L44lz15CGMwdw9N5+Q==", + "dev": true, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/wrap-ansi": { + "version": "6.2.0", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/wrappy": { + "version": "1.0.2", + "dev": true, + "license": "ISC" + }, + "node_modules/write-file-atomic": { + "version": "3.0.3", + "dev": true, + "license": "ISC", + "dependencies": { + "imurmurhash": "^0.1.4", + "is-typedarray": "^1.0.0", + "signal-exit": "^3.0.2", + "typedarray-to-buffer": "^3.1.5" + } + }, + "node_modules/ws": { + "version": "7.5.9", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8.3.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": "^5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true }, - "safe-json-stringify": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/safe-json-stringify/-/safe-json-stringify-1.2.0.tgz", - "integrity": "sha512-gH8eh2nZudPQO6TytOvbxnuhYBOvDBBLW52tz5q6X58lJcd/tkmqFR+5Z9adS8aJtURSXWThWy/xJtJwixErvg==", + "utf-8-validate": { + "optional": true + } + } + }, + "node_modules/xml-crypto": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/xml-crypto/-/xml-crypto-2.1.5.tgz", + "integrity": "sha512-xOSJmGFm+BTXmaPYk8pPV3duKo6hJuZ5niN4uMzoNcTlwYs0jAu/N3qY+ud9MhE4N7eMRuC1ayC7Yhmb7MmAWg==", + "dev": true, + "dependencies": { + "@xmldom/xmldom": "^0.7.9", + "xpath": "0.0.32" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/xml-crypto/node_modules/xpath": { + "version": "0.0.32", + "resolved": "https://registry.npmjs.org/xpath/-/xpath-0.0.32.tgz", + "integrity": "sha512-rxMJhSIoiO8vXcWvSifKqhvV96GjiD5wYb8/QHdoRyQvraTpp4IEv944nhGausZZ3u7dhQXteZuZbaqfpB7uYw==", + "dev": true, + "engines": { + "node": ">=0.6.0" + } + }, + "node_modules/xml-encryption": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/xml-encryption/-/xml-encryption-1.2.1.tgz", + "integrity": "sha512-hn5w3l5p2+nGjlmM0CAhMChDzVGhW+M37jH35Z+GJIipXbn9PUlAIRZ6I5Wm7ynlqZjFrMAr83d/CIp9VZJMTA==", + "dev": true, + "dependencies": { + "escape-html": "^1.0.3", + "node-forge": "^0.10.0", + "xmldom": "~0.1.15", + "xpath": "0.0.27" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/xml-encryption/node_modules/xpath": { + "version": "0.0.27", + "resolved": "https://registry.npmjs.org/xpath/-/xpath-0.0.27.tgz", + "integrity": "sha512-fg03WRxtkCV6ohClePNAECYsmpKKTv5L8y/X3Dn1hQrec3POx2jHZ/0P2qQ6HvsrU1BmeqXcof3NGGueG6LxwQ==", + "dev": true, + "engines": { + "node": ">=0.6.0" + } + }, + "node_modules/xml-name-validator": { + "version": "3.0.0", + "dev": true, + "license": "Apache-2.0" + }, + "node_modules/xml2js": { + "version": "0.4.23", + "resolved": "https://registry.npmjs.org/xml2js/-/xml2js-0.4.23.tgz", + "integrity": "sha512-ySPiMjM0+pLDftHgXY4By0uswI3SPKLDw/i3UXbnO8M/p28zqexCUoPmQFrYD+/1BzhGJSs2i1ERWKJAtiLrug==", + "dev": true, + "dependencies": { + "sax": ">=0.6.0", + "xmlbuilder": "~11.0.0" + }, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/xmlbuilder": { + "version": "11.0.1", + "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-11.0.1.tgz", + "integrity": "sha512-fDlsI/kFEx7gLvbecc0/ohLG50fugQp8ryHzMTuW9vSa1GJ0XYWKnhsUx7oie3G98+r56aTQIUB4kht42R3JvA==", + "dev": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/xmlbuilder2": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/xmlbuilder2/-/xmlbuilder2-3.0.2.tgz", + "integrity": "sha512-h4MUawGY21CTdhV4xm3DG9dgsqyhDkZvVJBx88beqX8wJs3VgyGQgAn5VreHuae6unTQxh115aMK5InCVmOIKw==", + "dev": true, + "dependencies": { + "@oozcitak/dom": "1.15.10", + "@oozcitak/infra": "1.0.8", + "@oozcitak/util": "8.3.8", + "@types/node": "*", + "js-yaml": "3.14.0" + }, + "engines": { + "node": ">=12.0" + } + }, + "node_modules/xmlbuilder2/node_modules/js-yaml": { + "version": "3.14.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.0.tgz", + "integrity": "sha512-/4IbIeHcD9VMHFqDR/gQ7EdZdLimOvW2DdcxFjdyyZ9NsbS+ccrXqVWDtab/lRl5AlUqmpBx8EhPaWR+OtY17A==", + "dev": true, + "dependencies": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/xmlchars": { + "version": "2.2.0", + "dev": true, + "license": "MIT" + }, + "node_modules/xmldom": { + "version": "0.1.22", + "resolved": "https://registry.npmjs.org/xmldom/-/xmldom-0.1.22.tgz", + "integrity": "sha512-/9PWF/8TkkmZZmUtRYRw3wq1cT0ubaff/elSmdy+wYMrbyGH5CdSyr6XwDpH6HTkSIljXenjfVkBij46eescFQ==", + "deprecated": "Deprecated due to CVE-2021-21366 resolved in 0.5.0", + "dev": true, + "engines": { + "node": ">=0.1" + } + }, + "node_modules/xpath": { + "version": "0.0.23", + "resolved": "https://registry.npmjs.org/xpath/-/xpath-0.0.23.tgz", + "integrity": "sha512-WHBD7+PebdFl+vGmhl/TnFLHDCTytivkerph52SF+2IUtil+lbOEK0BHHAoL+z4JOHIaF5R7Dh9VgrpnzVOFRA==", + "dev": true, + "engines": { + "node": ">=0.6.0" + } + }, + "node_modules/xtend": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", + "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==", + "dev": true, + "engines": { + "node": ">=0.4" + } + }, + "node_modules/y18n": { + "version": "4.0.3", + "dev": true, + "license": "ISC" + }, + "node_modules/yallist": { + "version": "4.0.0", + "dev": true, + "license": "ISC" + }, + "node_modules/yaml": { + "version": "1.10.2", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz", + "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==", + "dev": true, + "engines": { + "node": ">= 6" + } + }, + "node_modules/yargs": { + "version": "15.4.1", + "dev": true, + "license": "MIT", + "dependencies": { + "cliui": "^6.0.0", + "decamelize": "^1.2.0", + "find-up": "^4.1.0", + "get-caller-file": "^2.0.1", + "require-directory": "^2.1.1", + "require-main-filename": "^2.0.0", + "set-blocking": "^2.0.0", + "string-width": "^4.2.0", + "which-module": "^2.0.0", + "y18n": "^4.0.0", + "yargs-parser": "^18.1.2" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/yargs-parser": { + "version": "18.1.3", + "dev": true, + "license": "ISC", + "dependencies": { + "camelcase": "^5.0.0", + "decamelize": "^1.2.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/zip-stream": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/zip-stream/-/zip-stream-4.1.0.tgz", + "integrity": "sha512-zshzwQW7gG7hjpBlgeQP9RuyPGNxvJdzR8SUM3QhxCnLjWN2E7j3dOvpeDcQoETfHx0urRS7EtmVToql7YpU4A==", + "dev": true, + "dependencies": { + "archiver-utils": "^2.1.0", + "compress-commons": "^4.1.0", + "readable-stream": "^3.6.0" + }, + "engines": { + "node": ">= 10" + } + } + }, + "dependencies": { + "@ampproject/remapping": { + "version": "2.2.0", + "dev": true, + "requires": { + "@jridgewell/gen-mapping": "^0.1.0", + "@jridgewell/trace-mapping": "^0.3.9" + } + }, + "@aws-crypto/ie11-detection": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/ie11-detection/-/ie11-detection-3.0.0.tgz", + "integrity": "sha512-341lBBkiY1DfDNKai/wXM3aujNBkXR7tq1URPQDL9wi3AUbI80NR74uF1TXHMm7po1AcnFk8iu2S2IeU/+/A+Q==", + "dev": true, + "optional": true, + "requires": { + "tslib": "^1.11.1" + }, + "dependencies": { + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", "dev": true, "optional": true - }, - "safe-regex": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz", - "integrity": "sha1-QKNmnzsHfR6UPURinhV91IAjvy4=", - "requires": { - "ret": "~0.1.10" - }, - "dependencies": { - "ret": { - "version": "0.1.15", - "resolved": "https://registry.npmjs.org/ret/-/ret-0.1.15.tgz", - "integrity": "sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==" - } - } - }, - "safer-buffer": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", - "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" - }, - "sax": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", - "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==" - }, - "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==", + } + } + }, + "@aws-crypto/sha256-browser": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/sha256-browser/-/sha256-browser-3.0.0.tgz", + "integrity": "sha512-8VLmW2B+gjFbU5uMeqtQM6Nj0/F1bro80xQXCW6CQBWgosFWXTx77aeOF5CAIAmbOK64SdMBJdNr6J41yP5mvQ==", + "dev": true, + "optional": true, + "requires": { + "@aws-crypto/ie11-detection": "^3.0.0", + "@aws-crypto/sha256-js": "^3.0.0", + "@aws-crypto/supports-web-crypto": "^3.0.0", + "@aws-crypto/util": "^3.0.0", + "@aws-sdk/types": "^3.222.0", + "@aws-sdk/util-locate-window": "^3.0.0", + "@aws-sdk/util-utf8-browser": "^3.0.0", + "tslib": "^1.11.1" + }, + "dependencies": { + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", "dev": true, - "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==", - "dev": true, - "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=", - "dev": true - } - } - }, - "http-errors": { - "version": "1.7.3", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.7.3.tgz", - "integrity": "sha512-ZTTX0MWrsQ2ZAhA1cejAwDLycFsd7I7nVtnkT3Ol0aqodaKW+0CTZDQ1uBv5whptCnc8e8HeRRJxRs0kmm/Qfw==", - "dev": true, - "requires": { - "depd": "~1.1.2", - "inherits": "2.0.4", - "setprototypeof": "1.1.1", - "statuses": ">= 1.5.0 < 2", - "toidentifier": "1.0.0" - } - }, - "mime": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", - "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", - "dev": true - }, - "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==", - "dev": true - }, - "setprototypeof": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.1.tgz", - "integrity": "sha512-JvdAWfbXeIGaZ9cILp38HntZSFSo3mWg6xGcJJsd+d4aRMOqauag1C63dJfDw7OaMYwEbHMOxEZ1lqVRYP2OAw==", - "dev": true - } - } - }, - "serve-static": { + "optional": true + } + } + }, + "@aws-crypto/sha256-js": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/sha256-js/-/sha256-js-3.0.0.tgz", + "integrity": "sha512-PnNN7os0+yd1XvXAy23CFOmTbMaDxgxXtTKHybrJ39Y8kGzBATgBFibWJKH6BhytLI/Zyszs87xCOBNyBig6vQ==", + "dev": true, + "optional": true, + "requires": { + "@aws-crypto/util": "^3.0.0", + "@aws-sdk/types": "^3.222.0", + "tslib": "^1.11.1" + }, + "dependencies": { + "tslib": { "version": "1.14.1", - "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.14.1.tgz", - "integrity": "sha512-JMrvUwE54emCYWlTI+hGrGv5I8dEwmco/00EvkzIIsR7MqrHonbD9pO2MOfFnpFntl7ecpZs+3mW+XbQZu9QCg==", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", "dev": true, - "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": "https://registry.npmjs.org/set-immediate-shim/-/set-immediate-shim-1.0.1.tgz", - "integrity": "sha1-SysbJ+uAip+NzEgaWOXlb1mfP2E=" - }, - "set-value": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/set-value/-/set-value-2.0.1.tgz", - "integrity": "sha512-JxHc1weCN68wRY0fhCoXpyK55m/XPHafOmK4UWD7m2CI14GMcFypt4w/0+NV5f/ZMby2F6S2wwA7fgynh9gWSw==", - "requires": { - "extend-shallow": "^2.0.1", - "is-extendable": "^0.1.1", - "is-plain-object": "^2.0.3", - "split-string": "^3.0.1" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "setprototypeof": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz", - "integrity": "sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==", - "dev": true - }, - "sha.js": { - "version": "2.4.11", - "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz", - "integrity": "sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==", + "optional": true + } + } + }, + "@aws-crypto/supports-web-crypto": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/supports-web-crypto/-/supports-web-crypto-3.0.0.tgz", + "integrity": "sha512-06hBdMwUAb2WFTuGG73LSC0wfPu93xWwo5vL2et9eymgmu3Id5vFAHBbajVWiGhPO37qcsdCap/FqXvJGJWPIg==", + "dev": true, + "optional": true, + "requires": { + "tslib": "^1.11.1" + }, + "dependencies": { + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", "dev": true, - "requires": { - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" - } - }, - "shell-quote": { - "version": "1.7.2", - "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.7.2.tgz", - "integrity": "sha512-mRz/m/JVscCrkMyPqHc/bczi3OQHkLTqXHEFu0zDhK/qfv3UcOA4SVmRCLmos4bhjr9ekVQubj/R7waKapmiQg==" - }, - "shp-write": { - "version": "git+https://github.com/newmanw/shp-write.git#82bbc9f636c444644ecbcaf4cfe8153ca6a7d40e", - "from": "git+https://github.com/newmanw/shp-write.git#fix-polygon-export", - "requires": { - "dbf": "0.1.4", - "jszip": "2.5.0" - }, - "dependencies": { - "dbf": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/dbf/-/dbf-0.1.4.tgz", - "integrity": "sha1-Fi8Nj9HbN8l2RYrG/m9VtIxy9GY=", - "requires": { - "jdataview": "~2.5.0" - } - }, - "jdataview": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/jdataview/-/jdataview-2.5.0.tgz", - "integrity": "sha1-MIGz/qZR+TF+xr1P6y3cmKpB1ZU=" - } - } - }, - "side-channel": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.2.tgz", - "integrity": "sha512-7rL9YlPHg7Ancea1S96Pa8/QWb4BtXL/TZvS6B8XFetGBeuhAsfmUspK6DokBeZ64+Kj9TCNRD/30pVz1BvQNA==", - "requires": { - "es-abstract": "^1.17.0-next.1", - "object-inspect": "^1.7.0" - } - }, - "signal-exit": { - "version": "3.0.7", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", - "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==" - }, - "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==", + "optional": true + } + } + }, + "@aws-crypto/util": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/util/-/util-3.0.0.tgz", + "integrity": "sha512-2OJlpeJpCR48CC8r+uKVChzs9Iungj9wkZrl8Z041DWEWvyIHILYKCPNzJghKsivj+S3mLo6BVc7mBNzdxA46w==", + "dev": true, + "optional": true, + "requires": { + "@aws-sdk/types": "^3.222.0", + "@aws-sdk/util-utf8-browser": "^3.0.0", + "tslib": "^1.11.1" + }, + "dependencies": { + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", "dev": true, "optional": true - }, - "simple-get": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/simple-get/-/simple-get-3.1.1.tgz", - "integrity": "sha512-CQ5LTKGfCpvE1K0n2us+kuMPbk/q0EKl82s4aheV9oXjFEz6W/Y7oQFVJuU6QG77hRT4Ghb5RURteF5vnWjupA==", + } + } + }, + "@aws-sdk/abort-controller": { + "version": "3.306.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/abort-controller/-/abort-controller-3.306.0.tgz", + "integrity": "sha512-ewCvdUrMJMlnkNaqXdG7L2H6O7CDI036y6lkTU8gQqa2lCzZvqBkzz6R5NbWqb8TJPi69Z7lXEITgk2b0+pl6w==", + "dev": true, + "optional": true, + "requires": { + "@aws-sdk/types": "3.306.0", + "tslib": "^2.5.0" + } + }, + "@aws-sdk/client-cognito-identity": { + "version": "3.309.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-cognito-identity/-/client-cognito-identity-3.309.0.tgz", + "integrity": "sha512-6UMOK77QndamzxOC3x02fPNNpTSgwbNBPnjru4yX0vyF3XRLHyUsMnDzm/PVZs1JFlQUtaeBEqOruY8yuHAwGg==", + "dev": true, + "optional": true, + "requires": { + "@aws-crypto/sha256-browser": "3.0.0", + "@aws-crypto/sha256-js": "3.0.0", + "@aws-sdk/client-sts": "3.309.0", + "@aws-sdk/config-resolver": "3.306.0", + "@aws-sdk/credential-provider-node": "3.309.0", + "@aws-sdk/fetch-http-handler": "3.306.0", + "@aws-sdk/hash-node": "3.306.0", + "@aws-sdk/invalid-dependency": "3.306.0", + "@aws-sdk/middleware-content-length": "3.306.0", + "@aws-sdk/middleware-endpoint": "3.306.0", + "@aws-sdk/middleware-host-header": "3.306.0", + "@aws-sdk/middleware-logger": "3.306.0", + "@aws-sdk/middleware-recursion-detection": "3.306.0", + "@aws-sdk/middleware-retry": "3.306.0", + "@aws-sdk/middleware-serde": "3.306.0", + "@aws-sdk/middleware-signing": "3.306.0", + "@aws-sdk/middleware-stack": "3.306.0", + "@aws-sdk/middleware-user-agent": "3.306.0", + "@aws-sdk/node-config-provider": "3.306.0", + "@aws-sdk/node-http-handler": "3.306.0", + "@aws-sdk/protocol-http": "3.306.0", + "@aws-sdk/smithy-client": "3.309.0", + "@aws-sdk/types": "3.306.0", + "@aws-sdk/url-parser": "3.306.0", + "@aws-sdk/util-base64": "3.303.0", + "@aws-sdk/util-body-length-browser": "3.303.0", + "@aws-sdk/util-body-length-node": "3.303.0", + "@aws-sdk/util-defaults-mode-browser": "3.309.0", + "@aws-sdk/util-defaults-mode-node": "3.309.0", + "@aws-sdk/util-endpoints": "3.306.0", + "@aws-sdk/util-retry": "3.306.0", + "@aws-sdk/util-user-agent-browser": "3.306.0", + "@aws-sdk/util-user-agent-node": "3.306.0", + "@aws-sdk/util-utf8": "3.303.0", + "tslib": "^2.5.0" + } + }, + "@aws-sdk/client-sso": { + "version": "3.309.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.309.0.tgz", + "integrity": "sha512-2Tr3AROBzZOy+BuANlmDrwgyX+Q2kb6SIlANg6b9mrIzlflC48hRH0ngEe4C5RT6RruKIP+6R0al6vAq8lCk6A==", + "dev": true, + "optional": true, + "requires": { + "@aws-crypto/sha256-browser": "3.0.0", + "@aws-crypto/sha256-js": "3.0.0", + "@aws-sdk/config-resolver": "3.306.0", + "@aws-sdk/fetch-http-handler": "3.306.0", + "@aws-sdk/hash-node": "3.306.0", + "@aws-sdk/invalid-dependency": "3.306.0", + "@aws-sdk/middleware-content-length": "3.306.0", + "@aws-sdk/middleware-endpoint": "3.306.0", + "@aws-sdk/middleware-host-header": "3.306.0", + "@aws-sdk/middleware-logger": "3.306.0", + "@aws-sdk/middleware-recursion-detection": "3.306.0", + "@aws-sdk/middleware-retry": "3.306.0", + "@aws-sdk/middleware-serde": "3.306.0", + "@aws-sdk/middleware-stack": "3.306.0", + "@aws-sdk/middleware-user-agent": "3.306.0", + "@aws-sdk/node-config-provider": "3.306.0", + "@aws-sdk/node-http-handler": "3.306.0", + "@aws-sdk/protocol-http": "3.306.0", + "@aws-sdk/smithy-client": "3.309.0", + "@aws-sdk/types": "3.306.0", + "@aws-sdk/url-parser": "3.306.0", + "@aws-sdk/util-base64": "3.303.0", + "@aws-sdk/util-body-length-browser": "3.303.0", + "@aws-sdk/util-body-length-node": "3.303.0", + "@aws-sdk/util-defaults-mode-browser": "3.309.0", + "@aws-sdk/util-defaults-mode-node": "3.309.0", + "@aws-sdk/util-endpoints": "3.306.0", + "@aws-sdk/util-retry": "3.306.0", + "@aws-sdk/util-user-agent-browser": "3.306.0", + "@aws-sdk/util-user-agent-node": "3.306.0", + "@aws-sdk/util-utf8": "3.303.0", + "tslib": "^2.5.0" + } + }, + "@aws-sdk/client-sso-oidc": { + "version": "3.309.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso-oidc/-/client-sso-oidc-3.309.0.tgz", + "integrity": "sha512-5hQMibuKWxDJo6IN+4ah0gskjJa16R41PqkeAOwExthTTyNzgoVyP9wyhnETyntYlHIBrHEmHTwdG06YiAxm4A==", + "dev": true, + "optional": true, + "requires": { + "@aws-crypto/sha256-browser": "3.0.0", + "@aws-crypto/sha256-js": "3.0.0", + "@aws-sdk/config-resolver": "3.306.0", + "@aws-sdk/fetch-http-handler": "3.306.0", + "@aws-sdk/hash-node": "3.306.0", + "@aws-sdk/invalid-dependency": "3.306.0", + "@aws-sdk/middleware-content-length": "3.306.0", + "@aws-sdk/middleware-endpoint": "3.306.0", + "@aws-sdk/middleware-host-header": "3.306.0", + "@aws-sdk/middleware-logger": "3.306.0", + "@aws-sdk/middleware-recursion-detection": "3.306.0", + "@aws-sdk/middleware-retry": "3.306.0", + "@aws-sdk/middleware-serde": "3.306.0", + "@aws-sdk/middleware-stack": "3.306.0", + "@aws-sdk/middleware-user-agent": "3.306.0", + "@aws-sdk/node-config-provider": "3.306.0", + "@aws-sdk/node-http-handler": "3.306.0", + "@aws-sdk/protocol-http": "3.306.0", + "@aws-sdk/smithy-client": "3.309.0", + "@aws-sdk/types": "3.306.0", + "@aws-sdk/url-parser": "3.306.0", + "@aws-sdk/util-base64": "3.303.0", + "@aws-sdk/util-body-length-browser": "3.303.0", + "@aws-sdk/util-body-length-node": "3.303.0", + "@aws-sdk/util-defaults-mode-browser": "3.309.0", + "@aws-sdk/util-defaults-mode-node": "3.309.0", + "@aws-sdk/util-endpoints": "3.306.0", + "@aws-sdk/util-retry": "3.306.0", + "@aws-sdk/util-user-agent-browser": "3.306.0", + "@aws-sdk/util-user-agent-node": "3.306.0", + "@aws-sdk/util-utf8": "3.303.0", + "tslib": "^2.5.0" + } + }, + "@aws-sdk/client-sts": { + "version": "3.309.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sts/-/client-sts-3.309.0.tgz", + "integrity": "sha512-rBVm50ft5o1FLaCNjSFY4c/lI7qPG5MMhOr4sdvEUaU1Mkniyd6M+3Pch9S3a5NtF0Kfzw9dWQpjAL+nqJaITQ==", + "dev": true, + "optional": true, + "requires": { + "@aws-crypto/sha256-browser": "3.0.0", + "@aws-crypto/sha256-js": "3.0.0", + "@aws-sdk/config-resolver": "3.306.0", + "@aws-sdk/credential-provider-node": "3.309.0", + "@aws-sdk/fetch-http-handler": "3.306.0", + "@aws-sdk/hash-node": "3.306.0", + "@aws-sdk/invalid-dependency": "3.306.0", + "@aws-sdk/middleware-content-length": "3.306.0", + "@aws-sdk/middleware-endpoint": "3.306.0", + "@aws-sdk/middleware-host-header": "3.306.0", + "@aws-sdk/middleware-logger": "3.306.0", + "@aws-sdk/middleware-recursion-detection": "3.306.0", + "@aws-sdk/middleware-retry": "3.306.0", + "@aws-sdk/middleware-sdk-sts": "3.306.0", + "@aws-sdk/middleware-serde": "3.306.0", + "@aws-sdk/middleware-signing": "3.306.0", + "@aws-sdk/middleware-stack": "3.306.0", + "@aws-sdk/middleware-user-agent": "3.306.0", + "@aws-sdk/node-config-provider": "3.306.0", + "@aws-sdk/node-http-handler": "3.306.0", + "@aws-sdk/protocol-http": "3.306.0", + "@aws-sdk/smithy-client": "3.309.0", + "@aws-sdk/types": "3.306.0", + "@aws-sdk/url-parser": "3.306.0", + "@aws-sdk/util-base64": "3.303.0", + "@aws-sdk/util-body-length-browser": "3.303.0", + "@aws-sdk/util-body-length-node": "3.303.0", + "@aws-sdk/util-defaults-mode-browser": "3.309.0", + "@aws-sdk/util-defaults-mode-node": "3.309.0", + "@aws-sdk/util-endpoints": "3.306.0", + "@aws-sdk/util-retry": "3.306.0", + "@aws-sdk/util-user-agent-browser": "3.306.0", + "@aws-sdk/util-user-agent-node": "3.306.0", + "@aws-sdk/util-utf8": "3.303.0", + "fast-xml-parser": "4.1.2", + "tslib": "^2.5.0" + } + }, + "@aws-sdk/config-resolver": { + "version": "3.306.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/config-resolver/-/config-resolver-3.306.0.tgz", + "integrity": "sha512-kpqHu6LvNMYxullm+tLCsY6KQ2mZUxZTdyWJKTYLZCTxj4HcGJxf4Jxj9dwFAZVl/clcVPGWcHJaQJjyjwzBzw==", + "dev": true, + "optional": true, + "requires": { + "@aws-sdk/types": "3.306.0", + "@aws-sdk/util-config-provider": "3.295.0", + "@aws-sdk/util-middleware": "3.306.0", + "tslib": "^2.5.0" + } + }, + "@aws-sdk/credential-provider-cognito-identity": { + "version": "3.309.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-cognito-identity/-/credential-provider-cognito-identity-3.309.0.tgz", + "integrity": "sha512-alpBaKa3sTb1bYQGqnLAqZVbFh5JldwQg+pIuXPt8CKwtpP00heeDPQ60e+9VYk5vKPoNYIbiDy7WmgOkLFMeg==", + "dev": true, + "optional": true, + "requires": { + "@aws-sdk/client-cognito-identity": "3.309.0", + "@aws-sdk/property-provider": "3.306.0", + "@aws-sdk/types": "3.306.0", + "tslib": "^2.5.0" + } + }, + "@aws-sdk/credential-provider-env": { + "version": "3.306.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-env/-/credential-provider-env-3.306.0.tgz", + "integrity": "sha512-DTH+aMvMu+LAoWW+yfPkWzFXt/CPNFQ7+/4xiMnc7FWf+tjt+HZIrPECAV2rBVppNCkh7PC+xDSN61PFvBYOsw==", + "dev": true, + "optional": true, + "requires": { + "@aws-sdk/property-provider": "3.306.0", + "@aws-sdk/types": "3.306.0", + "tslib": "^2.5.0" + } + }, + "@aws-sdk/credential-provider-imds": { + "version": "3.306.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-imds/-/credential-provider-imds-3.306.0.tgz", + "integrity": "sha512-WdrNhq2MwvjZk2I8Of+bZ/qWHG2hREQpwlBiG3tMeEkuywx7M1x3Rt0eHgiR1sTcm05kxNn0rB4OeWOeek37cA==", + "dev": true, + "optional": true, + "requires": { + "@aws-sdk/node-config-provider": "3.306.0", + "@aws-sdk/property-provider": "3.306.0", + "@aws-sdk/types": "3.306.0", + "@aws-sdk/url-parser": "3.306.0", + "tslib": "^2.5.0" + } + }, + "@aws-sdk/credential-provider-ini": { + "version": "3.309.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.309.0.tgz", + "integrity": "sha512-7xAqfbuvEdQdz2YcS5OPWH6uv09pMEW6lvmEwM8tf3gn/c3mxFm0/geFeO3+hnkIjByPM02PW7qQJXmPu1l7AA==", + "dev": true, + "optional": true, + "requires": { + "@aws-sdk/credential-provider-env": "3.306.0", + "@aws-sdk/credential-provider-imds": "3.306.0", + "@aws-sdk/credential-provider-process": "3.306.0", + "@aws-sdk/credential-provider-sso": "3.309.0", + "@aws-sdk/credential-provider-web-identity": "3.306.0", + "@aws-sdk/property-provider": "3.306.0", + "@aws-sdk/shared-ini-file-loader": "3.306.0", + "@aws-sdk/types": "3.306.0", + "tslib": "^2.5.0" + } + }, + "@aws-sdk/credential-provider-node": { + "version": "3.309.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.309.0.tgz", + "integrity": "sha512-rgf53RH9mcATr+5rRGGqRmoOEceX+XSbQvGM1QRHxROJJiYsZWdBQu9w+UuKcQF03qLMfi4G+6iNHect5TVs2Q==", + "dev": true, + "optional": true, + "requires": { + "@aws-sdk/credential-provider-env": "3.306.0", + "@aws-sdk/credential-provider-imds": "3.306.0", + "@aws-sdk/credential-provider-ini": "3.309.0", + "@aws-sdk/credential-provider-process": "3.306.0", + "@aws-sdk/credential-provider-sso": "3.309.0", + "@aws-sdk/credential-provider-web-identity": "3.306.0", + "@aws-sdk/property-provider": "3.306.0", + "@aws-sdk/shared-ini-file-loader": "3.306.0", + "@aws-sdk/types": "3.306.0", + "tslib": "^2.5.0" + } + }, + "@aws-sdk/credential-provider-process": { + "version": "3.306.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-process/-/credential-provider-process-3.306.0.tgz", + "integrity": "sha512-2RezGskHqJeHtGbK7CqhGNAoqXgQJb7FfPFqwUQ9oVDZS8f145jVwajjHcc7Qn3IwGoqylMF3uXIljUv89uDzA==", + "dev": true, + "optional": true, + "requires": { + "@aws-sdk/property-provider": "3.306.0", + "@aws-sdk/shared-ini-file-loader": "3.306.0", + "@aws-sdk/types": "3.306.0", + "tslib": "^2.5.0" + } + }, + "@aws-sdk/credential-provider-sso": { + "version": "3.309.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.309.0.tgz", + "integrity": "sha512-uMphs47O2S9NK7I5CsDttp88X7b/JktGOrW8RTLRw1QURQ8v0uP+MLHFogRtWi4E7+zo86Equ0njlpYlFvrpSA==", + "dev": true, + "optional": true, + "requires": { + "@aws-sdk/client-sso": "3.309.0", + "@aws-sdk/property-provider": "3.306.0", + "@aws-sdk/shared-ini-file-loader": "3.306.0", + "@aws-sdk/token-providers": "3.309.0", + "@aws-sdk/types": "3.306.0", + "tslib": "^2.5.0" + } + }, + "@aws-sdk/credential-provider-web-identity": { + "version": "3.306.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.306.0.tgz", + "integrity": "sha512-MOQGQaOtdo4zLQZ1bRjD2n1PUzfNty+sKe+1wlm5bIqTN93UX3S8f0QznucZr7uJxI4Z14ZLwuYeAUV4Tgchlw==", + "dev": true, + "optional": true, + "requires": { + "@aws-sdk/property-provider": "3.306.0", + "@aws-sdk/types": "3.306.0", + "tslib": "^2.5.0" + } + }, + "@aws-sdk/credential-providers": { + "version": "3.309.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-providers/-/credential-providers-3.309.0.tgz", + "integrity": "sha512-hNb1Qh494JAKk0WPkdd09RoXllwnOctTFfBNHZPeG1zS/hrEiKO5M/EiHstA1DolI3GQTwnxqRs29L1nMbFLWQ==", + "dev": true, + "optional": true, + "requires": { + "@aws-sdk/client-cognito-identity": "3.309.0", + "@aws-sdk/client-sso": "3.309.0", + "@aws-sdk/client-sts": "3.309.0", + "@aws-sdk/credential-provider-cognito-identity": "3.309.0", + "@aws-sdk/credential-provider-env": "3.306.0", + "@aws-sdk/credential-provider-imds": "3.306.0", + "@aws-sdk/credential-provider-ini": "3.309.0", + "@aws-sdk/credential-provider-node": "3.309.0", + "@aws-sdk/credential-provider-process": "3.306.0", + "@aws-sdk/credential-provider-sso": "3.309.0", + "@aws-sdk/credential-provider-web-identity": "3.306.0", + "@aws-sdk/property-provider": "3.306.0", + "@aws-sdk/types": "3.306.0", + "tslib": "^2.5.0" + } + }, + "@aws-sdk/fetch-http-handler": { + "version": "3.306.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/fetch-http-handler/-/fetch-http-handler-3.306.0.tgz", + "integrity": "sha512-T8OODOnPpDqkXS+XSMIkd6hf90h833JLN93wq3ibbyD/WvGveufFFHsbsNyccE9+CSv/BjEuN5QbHqTKTp3BlA==", + "dev": true, + "optional": true, + "requires": { + "@aws-sdk/protocol-http": "3.306.0", + "@aws-sdk/querystring-builder": "3.306.0", + "@aws-sdk/types": "3.306.0", + "@aws-sdk/util-base64": "3.303.0", + "tslib": "^2.5.0" + } + }, + "@aws-sdk/hash-node": { + "version": "3.306.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/hash-node/-/hash-node-3.306.0.tgz", + "integrity": "sha512-EcSLd6gKoDEEBPZqEv+Ky9gIyefwyyrAJGILGKoYBmcOIY7Y0xKId0hxCa9/1xvWTaVC1u+rA06DGgksZOa78w==", + "dev": true, + "optional": true, + "requires": { + "@aws-sdk/types": "3.306.0", + "@aws-sdk/util-buffer-from": "3.303.0", + "@aws-sdk/util-utf8": "3.303.0", + "tslib": "^2.5.0" + } + }, + "@aws-sdk/invalid-dependency": { + "version": "3.306.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/invalid-dependency/-/invalid-dependency-3.306.0.tgz", + "integrity": "sha512-9Mkcr+qG7QR4R5bJcA8bBNd8E2x6WaZStsQ3QeFbdQr3V3Tunvra/KlCFsEL55GgU8BZt5isOaHqq7uxs5ILtQ==", + "dev": true, + "optional": true, + "requires": { + "@aws-sdk/types": "3.306.0", + "tslib": "^2.5.0" + } + }, + "@aws-sdk/is-array-buffer": { + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/is-array-buffer/-/is-array-buffer-3.303.0.tgz", + "integrity": "sha512-IitBTr+pou7v5BrYLFH/SbIf3g1LIgMhcI3bDXBq2FjzmDftj4bW8BOmg05b9YKf2TrrggvJ4yk/jH+yYFXoJQ==", + "dev": true, + "optional": true, + "requires": { + "tslib": "^2.5.0" + } + }, + "@aws-sdk/middleware-content-length": { + "version": "3.306.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-content-length/-/middleware-content-length-3.306.0.tgz", + "integrity": "sha512-JbONf2Ms+/DVRcpFNsKGdOQU94Js56KV+AhlPJmCwLxfyWvQjTt0KxFC1Dd+cjeNEXUduvBarrehgsqFlWnoHQ==", + "dev": true, + "optional": true, + "requires": { + "@aws-sdk/protocol-http": "3.306.0", + "@aws-sdk/types": "3.306.0", + "tslib": "^2.5.0" + } + }, + "@aws-sdk/middleware-endpoint": { + "version": "3.306.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-endpoint/-/middleware-endpoint-3.306.0.tgz", + "integrity": "sha512-i3QRiwgkcsuVN55O7l8I/QGwCypGRZXdYkPjU56LI2w2oiZ82f/nVMNXVc+ZFm2YH7WbCE+5jguw2J7HXdOlyQ==", + "dev": true, + "optional": true, + "requires": { + "@aws-sdk/middleware-serde": "3.306.0", + "@aws-sdk/types": "3.306.0", + "@aws-sdk/url-parser": "3.306.0", + "@aws-sdk/util-middleware": "3.306.0", + "tslib": "^2.5.0" + } + }, + "@aws-sdk/middleware-host-header": { + "version": "3.306.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-host-header/-/middleware-host-header-3.306.0.tgz", + "integrity": "sha512-mHDHK9E+c7HwMlrCJ+VFSB6tkq8oJVkYEHCvPkdrnzN/g9P/d/UhPIeGapZXMbAIZEaLpEGqs536mYzeRKZG8A==", + "dev": true, + "optional": true, + "requires": { + "@aws-sdk/protocol-http": "3.306.0", + "@aws-sdk/types": "3.306.0", + "tslib": "^2.5.0" + } + }, + "@aws-sdk/middleware-logger": { + "version": "3.306.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-logger/-/middleware-logger-3.306.0.tgz", + "integrity": "sha512-1FRHp/QB0Lb+CgP+c9CYW6BZh+q+5pnuOKo/Rd6hjYiM+kT1G/cWdXnMJQBR4rbTCTixbqCnObNJ1EyP/ofQhQ==", + "dev": true, + "optional": true, + "requires": { + "@aws-sdk/types": "3.306.0", + "tslib": "^2.5.0" + } + }, + "@aws-sdk/middleware-recursion-detection": { + "version": "3.306.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-recursion-detection/-/middleware-recursion-detection-3.306.0.tgz", + "integrity": "sha512-Hpj42ZLmwCy/CtVxi57NTeOEPoUJlivF3VIgowZ9JhaF61cakVKyrJ+f3jwXciDUtuYrdKm5Wf6prW6apWo0YA==", + "dev": true, + "optional": true, + "requires": { + "@aws-sdk/protocol-http": "3.306.0", + "@aws-sdk/types": "3.306.0", + "tslib": "^2.5.0" + } + }, + "@aws-sdk/middleware-retry": { + "version": "3.306.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-retry/-/middleware-retry-3.306.0.tgz", + "integrity": "sha512-eMyfr/aeurXXDz4x+WVrvLI8fVDP6klJOjziBEWZ/MUNP/hTFhkiQsMVbvT6O4Pspp7+FgCSdcUPG6Os2gK+CQ==", + "dev": true, + "optional": true, + "requires": { + "@aws-sdk/protocol-http": "3.306.0", + "@aws-sdk/service-error-classification": "3.306.0", + "@aws-sdk/types": "3.306.0", + "@aws-sdk/util-middleware": "3.306.0", + "@aws-sdk/util-retry": "3.306.0", + "tslib": "^2.5.0", + "uuid": "^8.3.2" + } + }, + "@aws-sdk/middleware-sdk-sts": { + "version": "3.306.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-sdk-sts/-/middleware-sdk-sts-3.306.0.tgz", + "integrity": "sha512-2rSAR3nc5faYuEnh1KxQMCMCkEkJyaDfA3zwWLqZ+/TBCH0PlPkBv+Z9yXmteEki0vI5Hr+e+atTutJZoyG13g==", + "dev": true, + "optional": true, + "requires": { + "@aws-sdk/middleware-signing": "3.306.0", + "@aws-sdk/types": "3.306.0", + "tslib": "^2.5.0" + } + }, + "@aws-sdk/middleware-serde": { + "version": "3.306.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-serde/-/middleware-serde-3.306.0.tgz", + "integrity": "sha512-M3gyPLPduZXMvdgt4XEpVO+3t0ZVPdgeQQwG6JnXv0dgyUizshYs4lrVOAb1KwF6StsmkrAgSN+I273elLiKjA==", + "dev": true, + "optional": true, + "requires": { + "@aws-sdk/types": "3.306.0", + "tslib": "^2.5.0" + } + }, + "@aws-sdk/middleware-signing": { + "version": "3.306.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-signing/-/middleware-signing-3.306.0.tgz", + "integrity": "sha512-JhpSriN4xa4a/p5gAPL0OWFKJF4eWYU3K+LLlXBNGMbxg/qNL4skgT4dMFe3ii9EW8kI+r6tpvSgC+lP7/Tyng==", + "dev": true, + "optional": true, + "requires": { + "@aws-sdk/property-provider": "3.306.0", + "@aws-sdk/protocol-http": "3.306.0", + "@aws-sdk/signature-v4": "3.306.0", + "@aws-sdk/types": "3.306.0", + "@aws-sdk/util-middleware": "3.306.0", + "tslib": "^2.5.0" + } + }, + "@aws-sdk/middleware-stack": { + "version": "3.306.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-stack/-/middleware-stack-3.306.0.tgz", + "integrity": "sha512-G//a6MVSxyFVpOMZ+dzT3+w7XblOd2tRJ5g+/okjn3pNBLbo5o9Hu33K/bz0SQjT/m5mU2F9m0wcdCPYbRPysg==", + "dev": true, + "optional": true, + "requires": { + "tslib": "^2.5.0" + } + }, + "@aws-sdk/middleware-user-agent": { + "version": "3.306.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-user-agent/-/middleware-user-agent-3.306.0.tgz", + "integrity": "sha512-tP6I+Lbs68muPfdMA6Rfc+8fYo49nEn9A3RMiOU2COClWsmiZatpbK9UYlqIOxeGB/s2jI7hXmQq6tT2LStLSg==", + "dev": true, + "optional": true, + "requires": { + "@aws-sdk/protocol-http": "3.306.0", + "@aws-sdk/types": "3.306.0", + "@aws-sdk/util-endpoints": "3.306.0", + "tslib": "^2.5.0" + } + }, + "@aws-sdk/node-config-provider": { + "version": "3.306.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/node-config-provider/-/node-config-provider-3.306.0.tgz", + "integrity": "sha512-+m+ALxNx5E1zLPPijO1pAbT5tnofLzZFWlnSYBEiOIwzaRU44rLYDqAhgXJkMMbOECkffDrv6ym0oWJIwJI+DA==", + "dev": true, + "optional": true, + "requires": { + "@aws-sdk/property-provider": "3.306.0", + "@aws-sdk/shared-ini-file-loader": "3.306.0", + "@aws-sdk/types": "3.306.0", + "tslib": "^2.5.0" + } + }, + "@aws-sdk/node-http-handler": { + "version": "3.306.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/node-http-handler/-/node-http-handler-3.306.0.tgz", + "integrity": "sha512-qvNSIVdGf0pnWEXsAulIqXk7LML25Zc1yxbujxoAj8oX5y+mDhzQdHKrMgc0FuI4RKoEd9px4DYoUbmTWrrxwA==", + "dev": true, + "optional": true, + "requires": { + "@aws-sdk/abort-controller": "3.306.0", + "@aws-sdk/protocol-http": "3.306.0", + "@aws-sdk/querystring-builder": "3.306.0", + "@aws-sdk/types": "3.306.0", + "tslib": "^2.5.0" + } + }, + "@aws-sdk/property-provider": { + "version": "3.306.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/property-provider/-/property-provider-3.306.0.tgz", + "integrity": "sha512-37PnbjpANjHys0Y+DVmKUz1JbSGZ/mAndZeplTUsFDUtbNwJRw/fDyWUvGC82JWB4gNSP5muWscFvetZnK2l8A==", + "dev": true, + "optional": true, + "requires": { + "@aws-sdk/types": "3.306.0", + "tslib": "^2.5.0" + } + }, + "@aws-sdk/protocol-http": { + "version": "3.306.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/protocol-http/-/protocol-http-3.306.0.tgz", + "integrity": "sha512-6Z8bqB8Ydz/qG7+lJzjwsjIca2w2zp4nZ2HjxMoUm0NBbVXGDx7H9qy9eOUqEiCbdXbsfK2BmVQreLhFLt056Q==", + "dev": true, + "optional": true, + "requires": { + "@aws-sdk/types": "3.306.0", + "tslib": "^2.5.0" + } + }, + "@aws-sdk/querystring-builder": { + "version": "3.306.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/querystring-builder/-/querystring-builder-3.306.0.tgz", + "integrity": "sha512-kvz6fLwE4KojTxbphuo9JPwKKuhau2mmSurnqhtf77t9+0cOh2uzyYhIUtOFewpLj+qGoh4b2EODlJqczc7IKg==", + "dev": true, + "optional": true, + "requires": { + "@aws-sdk/types": "3.306.0", + "@aws-sdk/util-uri-escape": "3.303.0", + "tslib": "^2.5.0" + } + }, + "@aws-sdk/querystring-parser": { + "version": "3.306.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/querystring-parser/-/querystring-parser-3.306.0.tgz", + "integrity": "sha512-YjOdLcyS/8sNkFPgnxyUx+cM/P2XFGCA2WjQ0e9AXX8xFFkmnY6U5w2EknQ5zyvKy+R/KAV0KAMJBUB+ofjg0A==", + "dev": true, + "optional": true, + "requires": { + "@aws-sdk/types": "3.306.0", + "tslib": "^2.5.0" + } + }, + "@aws-sdk/service-error-classification": { + "version": "3.306.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/service-error-classification/-/service-error-classification-3.306.0.tgz", + "integrity": "sha512-lmXIVHWU5J60GmmTgyj79kupWYg5ntyNrUPt1P9FYTsXz+tdk4YYH7/2IxZ1XjBr4jEsN56gfSI0cfT07ztQJA==", + "dev": true, + "optional": true + }, + "@aws-sdk/shared-ini-file-loader": { + "version": "3.306.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/shared-ini-file-loader/-/shared-ini-file-loader-3.306.0.tgz", + "integrity": "sha512-mDmBRN+Y0+EBD5megId97UIJGV/rmRsAds22qy0mmVdD3X7qlxn974btXVgfZyda6qw/pX6hgi8X99Qj6Wjb0w==", + "dev": true, + "optional": true, + "requires": { + "@aws-sdk/types": "3.306.0", + "tslib": "^2.5.0" + } + }, + "@aws-sdk/signature-v4": { + "version": "3.306.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/signature-v4/-/signature-v4-3.306.0.tgz", + "integrity": "sha512-yoQTo6wLirKHg34Zhm8tKmfEaK8fOn+psVdMtRs2vGq3uzKLb+YW5zywnujoVwBvygQTWxiDMwRxDduWAisccA==", + "dev": true, + "optional": true, + "requires": { + "@aws-sdk/is-array-buffer": "3.303.0", + "@aws-sdk/types": "3.306.0", + "@aws-sdk/util-hex-encoding": "3.295.0", + "@aws-sdk/util-middleware": "3.306.0", + "@aws-sdk/util-uri-escape": "3.303.0", + "@aws-sdk/util-utf8": "3.303.0", + "tslib": "^2.5.0" + } + }, + "@aws-sdk/smithy-client": { + "version": "3.309.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/smithy-client/-/smithy-client-3.309.0.tgz", + "integrity": "sha512-2+LJD8/J9yoYmfjLZuMTI/IF8qFMMclWdDJaalj4Rzzd7qBWDS3Q23UxpZi9VR155nqpgr/R+TFZMgze1EhRHg==", + "dev": true, + "optional": true, + "requires": { + "@aws-sdk/middleware-stack": "3.306.0", + "@aws-sdk/types": "3.306.0", + "tslib": "^2.5.0" + } + }, + "@aws-sdk/token-providers": { + "version": "3.309.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/token-providers/-/token-providers-3.309.0.tgz", + "integrity": "sha512-rB79nQArhVT3l8UglZyinZVm13hFRF4xqzrmSLNknxdlMLamrON/94H7S6lFLywdTags2SUdAxQ/LlStlFf78A==", + "dev": true, + "optional": true, + "requires": { + "@aws-sdk/client-sso-oidc": "3.309.0", + "@aws-sdk/property-provider": "3.306.0", + "@aws-sdk/shared-ini-file-loader": "3.306.0", + "@aws-sdk/types": "3.306.0", + "tslib": "^2.5.0" + } + }, + "@aws-sdk/types": { + "version": "3.306.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.306.0.tgz", + "integrity": "sha512-RnyknWWpQcRmNH7AsNr89sdhOoltCU/4YEwBMw34Eh+/36l7HfA5PdEKbsOkO7MO4+2g5qmmm/AHcnHRvymApg==", + "dev": true, + "optional": true, + "requires": { + "tslib": "^2.5.0" + } + }, + "@aws-sdk/url-parser": { + "version": "3.306.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/url-parser/-/url-parser-3.306.0.tgz", + "integrity": "sha512-mhyOjtycZgxKYo2CoDhDQONuRd5TLfEwmyGWVgFrfubF0LejQ3rkBRLC5zT9TBZ8RJHNlqU2oGdsZCy3JV6Rlw==", + "dev": true, + "optional": true, + "requires": { + "@aws-sdk/querystring-parser": "3.306.0", + "@aws-sdk/types": "3.306.0", + "tslib": "^2.5.0" + } + }, + "@aws-sdk/util-base64": { + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-base64/-/util-base64-3.303.0.tgz", + "integrity": "sha512-oj+p/GHHPcZEKjiiOHU/CyNQeh8i+8dfMMzU+VGdoK5jHaVG8h2b+V7GPf7I4wDkG2ySCK5b5Jw5NUHwdTJ13Q==", + "dev": true, + "optional": true, + "requires": { + "@aws-sdk/util-buffer-from": "3.303.0", + "tslib": "^2.5.0" + } + }, + "@aws-sdk/util-body-length-browser": { + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-body-length-browser/-/util-body-length-browser-3.303.0.tgz", + "integrity": "sha512-T643m0pKzgjAvPFy4W8zL+aszG3T22U8hb6stlMvT0z++Smv8QfIvkIkXjWyH2KlOt5GKliHwdOv8SAi0FSMJQ==", + "dev": true, + "optional": true, + "requires": { + "tslib": "^2.5.0" + } + }, + "@aws-sdk/util-body-length-node": { + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-body-length-node/-/util-body-length-node-3.303.0.tgz", + "integrity": "sha512-/hS8z6e18Le60hJr2TUIFoUjUiAsnQsuDn6DxX74GXhMOHeSwZDJ9jHF39quYkNMmAE37GrVH4MI9vE0pN27qw==", + "dev": true, + "optional": true, + "requires": { + "tslib": "^2.5.0" + } + }, + "@aws-sdk/util-buffer-from": { + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-buffer-from/-/util-buffer-from-3.303.0.tgz", + "integrity": "sha512-hUU+NW+SW6RNojtAKnnmz+tDShVKlEx2YsS4a5fSfrKRUes+zWz10cxVX0RQfysd3R6tdSHhbjsSj8eCIybheg==", + "dev": true, + "optional": true, + "requires": { + "@aws-sdk/is-array-buffer": "3.303.0", + "tslib": "^2.5.0" + } + }, + "@aws-sdk/util-config-provider": { + "version": "3.295.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-config-provider/-/util-config-provider-3.295.0.tgz", + "integrity": "sha512-/5Dl1aV2yI8YQjqwmg4RTnl/E9NmNsx7HIwBZt+dTcOrM0LMUwczQBFFcLyqCj/qv5y+VsvLoAAA/OiBT7hb3w==", + "dev": true, + "optional": true, + "requires": { + "tslib": "^2.5.0" + } + }, + "@aws-sdk/util-defaults-mode-browser": { + "version": "3.309.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-defaults-mode-browser/-/util-defaults-mode-browser-3.309.0.tgz", + "integrity": "sha512-KTmoR24PhUCT9A8/f5rb7MQvzXqGJY7/VnYxNaQ6AzJZfZ3y3UYfvuJR9LRjWn+zQDy1lnTyjSh5eokf2VBOoQ==", + "dev": true, + "optional": true, + "requires": { + "@aws-sdk/property-provider": "3.306.0", + "@aws-sdk/types": "3.306.0", + "bowser": "^2.11.0", + "tslib": "^2.5.0" + } + }, + "@aws-sdk/util-defaults-mode-node": { + "version": "3.309.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-defaults-mode-node/-/util-defaults-mode-node-3.309.0.tgz", + "integrity": "sha512-3YIEWY6O5kyW6dbV+1jWdlsqjEN76sxY62841v5A9Vr/MGLowhm6YYW8MYWPye9RABl9osTs0NCeL2p6Re+IPw==", + "dev": true, + "optional": true, + "requires": { + "@aws-sdk/config-resolver": "3.306.0", + "@aws-sdk/credential-provider-imds": "3.306.0", + "@aws-sdk/node-config-provider": "3.306.0", + "@aws-sdk/property-provider": "3.306.0", + "@aws-sdk/types": "3.306.0", + "tslib": "^2.5.0" + } + }, + "@aws-sdk/util-endpoints": { + "version": "3.306.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-endpoints/-/util-endpoints-3.306.0.tgz", + "integrity": "sha512-aPTqU4VGhec8LDhKZrfA3/sBHTYRa0favKEo8aEa/vIZJTNBAFlUhvr5z7peAr8gBOtZZcElzX8PiK3jjn3ILw==", + "dev": true, + "optional": true, + "requires": { + "@aws-sdk/types": "3.306.0", + "tslib": "^2.5.0" + } + }, + "@aws-sdk/util-hex-encoding": { + "version": "3.295.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-hex-encoding/-/util-hex-encoding-3.295.0.tgz", + "integrity": "sha512-XJcoVo41kHzhe28PBm/rqt5mdCp8R6abwiW9ug1dA6FOoPUO8kBUxDv6xaOmA2hfRvd2ocFfBXaUCBqUowkGcQ==", + "dev": true, + "optional": true, + "requires": { + "tslib": "^2.5.0" + } + }, + "@aws-sdk/util-locate-window": { + "version": "3.295.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-locate-window/-/util-locate-window-3.295.0.tgz", + "integrity": "sha512-d/s+zhUx5Kh4l/ecMP/TBjzp1GR/g89Q4nWH6+wH5WgdHsK+LG+vmsk6mVNuP/8wsCofYG4NBqp5Ulbztbm9QA==", + "dev": true, + "optional": true, + "requires": { + "tslib": "^2.5.0" + } + }, + "@aws-sdk/util-middleware": { + "version": "3.306.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-middleware/-/util-middleware-3.306.0.tgz", + "integrity": "sha512-14CSm1mTrfSNBGbkZu8vSjXYg7DUMfZc74IinOajcFtTswa/6SyiyhU9DK0a837qqwxSfFGpnE2thVeJIF/7FA==", + "dev": true, + "optional": true, + "requires": { + "tslib": "^2.5.0" + } + }, + "@aws-sdk/util-retry": { + "version": "3.306.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-retry/-/util-retry-3.306.0.tgz", + "integrity": "sha512-zcgTEIehQAIAm4vBNWfXZpDNbIrDM095vZmpbozQwK/pfDqMGvq7j3r9atKuEGTtoomoGoYwj3x/KEhO6JXJLg==", + "dev": true, + "optional": true, + "requires": { + "@aws-sdk/service-error-classification": "3.306.0", + "tslib": "^2.5.0" + } + }, + "@aws-sdk/util-uri-escape": { + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-uri-escape/-/util-uri-escape-3.303.0.tgz", + "integrity": "sha512-N3ULNuHCL3QzAlCTY+XRRkRQTYCTU8RRuzFCJX0pDpz9t2K+tLT7DbxqupWGNFGl5Xlulf1Is14J3BP/Dx91rA==", + "dev": true, + "optional": true, + "requires": { + "tslib": "^2.5.0" + } + }, + "@aws-sdk/util-user-agent-browser": { + "version": "3.306.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-browser/-/util-user-agent-browser-3.306.0.tgz", + "integrity": "sha512-uZAtpvCasUdWRlB/nEjN0gf6G7810hT50VyWjpd6mQW78myV8M5fu/R03UFAZ+D8fhqqIdzR/IXDY1QUGp8bCA==", + "dev": true, + "optional": true, + "requires": { + "@aws-sdk/types": "3.306.0", + "bowser": "^2.11.0", + "tslib": "^2.5.0" + } + }, + "@aws-sdk/util-user-agent-node": { + "version": "3.306.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.306.0.tgz", + "integrity": "sha512-zLp9wIx7FZ0qFLimYW3lJ1uJM5gqxmmcQjNimUaUq/4a1caDkaiF/QeyyMFva+wIjyHRv22P5abUBjIEZrs5WA==", + "dev": true, + "optional": true, + "requires": { + "@aws-sdk/node-config-provider": "3.306.0", + "@aws-sdk/types": "3.306.0", + "tslib": "^2.5.0" + } + }, + "@aws-sdk/util-utf8": { + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-utf8/-/util-utf8-3.303.0.tgz", + "integrity": "sha512-tZXVuMOIONPOuOGBs/XRdzxv6jUvTM620dRFFIHZwlGiW8bo0x0LlonrzDAJZA4e9ZwmxJIj8Ji13WVRBGvZWg==", + "dev": true, + "optional": true, + "requires": { + "@aws-sdk/util-buffer-from": "3.303.0", + "tslib": "^2.5.0" + } + }, + "@aws-sdk/util-utf8-browser": { + "version": "3.259.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-utf8-browser/-/util-utf8-browser-3.259.0.tgz", + "integrity": "sha512-UvFa/vR+e19XookZF8RzFZBrw2EUkQWxiBW0yYQAhvk3C+QVGl0H3ouca8LDBlBfQKXwmW3huo/59H8rwb1wJw==", + "dev": true, + "optional": true, + "requires": { + "tslib": "^2.3.1" + } + }, + "@babel/code-frame": { + "version": "7.18.6", + "dev": true, + "requires": { + "@babel/highlight": "^7.18.6" + } + }, + "@babel/compat-data": { + "version": "7.20.5", + "dev": true + }, + "@babel/core": { + "version": "7.20.5", + "dev": true, + "requires": { + "@ampproject/remapping": "^2.1.0", + "@babel/code-frame": "^7.18.6", + "@babel/generator": "^7.20.5", + "@babel/helper-compilation-targets": "^7.20.0", + "@babel/helper-module-transforms": "^7.20.2", + "@babel/helpers": "^7.20.5", + "@babel/parser": "^7.20.5", + "@babel/template": "^7.18.10", + "@babel/traverse": "^7.20.5", + "@babel/types": "^7.20.5", + "convert-source-map": "^1.7.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.2", + "json5": "^2.2.1", + "semver": "^6.3.0" + } + }, + "@babel/generator": { + "version": "7.20.5", + "dev": true, + "requires": { + "@babel/types": "^7.20.5", + "@jridgewell/gen-mapping": "^0.3.2", + "jsesc": "^2.5.1" + }, + "dependencies": { + "@jridgewell/gen-mapping": { + "version": "0.3.2", "dev": true, - "optional": true, - "requires": { - "decompress-response": "^4.2.0", - "once": "^1.3.1", - "simple-concat": "^1.0.0" - }, - "dependencies": { - "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==", - "dev": true, - "optional": true, - "requires": { - "mimic-response": "^2.0.0" - } - }, - "mimic-response": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-2.1.0.tgz", - "integrity": "sha512-wXqjST+SLt7R009ySCglWBCFpjUygmCIfD790/kVbiGmUgfYGuB14PiTd5DwVxSV4NcYHjzMkoj5LjQZwTQLEA==", - "dev": true, - "optional": true - } - } - }, - "simplify-js": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/simplify-js/-/simplify-js-1.2.4.tgz", - "integrity": "sha512-vITfSlwt7h/oyrU42R83mtzFpwYk3+mkH9bOHqq/Qw6n8rtR7aE3NZQ5fbcyCUVVmuMJR6ynsAhOfK2qoah8Jg==", - "dev": true - }, - "sinon": { - "version": "7.5.0", - "resolved": "https://registry.npmjs.org/sinon/-/sinon-7.5.0.tgz", - "integrity": "sha512-AoD0oJWerp0/rY9czP/D6hDTTUYGpObhZjMpd7Cl/A6+j0xBE+ayL/ldfggkBXUs0IkvIiM1ljM8+WkOc5k78Q==", - "requires": { - "@sinonjs/commons": "^1.4.0", - "@sinonjs/formatio": "^3.2.1", - "@sinonjs/samsam": "^3.3.3", - "diff": "^3.5.0", - "lolex": "^4.2.0", - "nise": "^1.5.2", - "supports-color": "^5.5.0" - }, - "dependencies": { - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=" - }, - "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "sinon-chai": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/sinon-chai/-/sinon-chai-3.3.0.tgz", - "integrity": "sha512-r2JhDY7gbbmh5z3Q62pNbrjxZdOAjpsqW/8yxAZRSqLZqowmfGZPGUZPFf3UX36NLis0cv8VEM5IJh9HgkSOAA==" - }, - "sinon-mongoose": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/sinon-mongoose/-/sinon-mongoose-2.3.0.tgz", - "integrity": "sha512-d0rrL53wuDDs91GMCFAvQam64IpdVfkaxA4cGLTZfw1d5tTg6+F/D7F080d1n3d1gSHJBZLUf9pGpijC/x7xKQ==" - }, - "slash": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-2.0.0.tgz", - "integrity": "sha512-ZYKh3Wh2z1PpEXWr0MpSBZ0V6mZHAQfYevttO11c51CaWjGTaadiKZ+wVt1PbMlDV5qhMFslpZCemhwOK7C89A==" - }, - "slice-ansi": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-2.1.0.tgz", - "integrity": "sha512-Qu+VC3EwYLldKa1fCxuuvULvSJOKEgk9pi8dZeCVK7TqBfUNTH4sFkk4joj8afVSfAYgJoSOetjx9QWOJ5mYoQ==", - "requires": { - "ansi-styles": "^3.2.0", - "astral-regex": "^1.0.0", - "is-fullwidth-code-point": "^2.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==", - "requires": { - "color-convert": "^1.9.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==", - "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=" - }, - "is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=" - } - } - }, - "sliced": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/sliced/-/sliced-1.0.1.tgz", - "integrity": "sha1-CzpmK10Ewxd7GSa+qCsD+Dei70E=", - "dev": true - }, - "smart-buffer": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.2.0.tgz", - "integrity": "sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==" - }, - "snapdragon": { - "version": "0.8.2", - "resolved": "https://registry.npmjs.org/snapdragon/-/snapdragon-0.8.2.tgz", - "integrity": "sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg==", - "requires": { - "base": "^0.11.1", - "debug": "^2.2.0", - "define-property": "^0.2.5", - "extend-shallow": "^2.0.1", - "map-cache": "^0.2.2", - "source-map": "^0.5.6", - "source-map-resolve": "^0.5.0", - "use": "^3.1.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" - } - }, - "define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "requires": { - "is-descriptor": "^0.1.0" - } - }, - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "requires": { - "is-extendable": "^0.1.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" - }, - "source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=" - } - } - }, - "snapdragon-node": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/snapdragon-node/-/snapdragon-node-2.1.1.tgz", - "integrity": "sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw==", - "requires": { - "define-property": "^1.0.0", - "isobject": "^3.0.0", - "snapdragon-util": "^3.0.1" - }, - "dependencies": { - "define-property": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", - "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", - "requires": { - "is-descriptor": "^1.0.0" - } - }, - "is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-data-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", - "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-descriptor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", - "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", - "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - } - }, - "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==" - } - } - }, - "snapdragon-util": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/snapdragon-util/-/snapdragon-util-3.0.1.tgz", - "integrity": "sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ==", "requires": { - "kind-of": "^3.2.0" + "@jridgewell/set-array": "^1.0.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.9" } - }, - "socks": { - "version": "https://registry.npmjs.org/socks/-/socks-2.6.2.tgz", - "integrity": "sha512-zDZhHhZRY9PxRruRMR7kMhnf3I8hDs4S3f9RecfnGxvcBHQcKcIH/oUcEWffsfl1XxdYlA7nnlGbbTvPz9D8gA==", - "requires": { - "ip": "^1.1.5", - "smart-buffer": "^4.2.0" - } - }, - "sort-keys": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/sort-keys/-/sort-keys-2.0.0.tgz", - "integrity": "sha1-ZYU1WEhh7JfXMNbPQYIuH1ZoQSg=", + } + } + }, + "@babel/helper-compilation-targets": { + "version": "7.20.0", + "dev": true, + "requires": { + "@babel/compat-data": "^7.20.0", + "@babel/helper-validator-option": "^7.18.6", + "browserslist": "^4.21.3", + "semver": "^6.3.0" + } + }, + "@babel/helper-environment-visitor": { + "version": "7.18.9", + "dev": true + }, + "@babel/helper-function-name": { + "version": "7.19.0", + "dev": true, + "requires": { + "@babel/template": "^7.18.10", + "@babel/types": "^7.19.0" + } + }, + "@babel/helper-hoist-variables": { + "version": "7.18.6", + "dev": true, + "requires": { + "@babel/types": "^7.18.6" + } + }, + "@babel/helper-module-imports": { + "version": "7.18.6", + "dev": true, + "requires": { + "@babel/types": "^7.18.6" + } + }, + "@babel/helper-module-transforms": { + "version": "7.20.2", + "dev": true, + "requires": { + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-module-imports": "^7.18.6", + "@babel/helper-simple-access": "^7.20.2", + "@babel/helper-split-export-declaration": "^7.18.6", + "@babel/helper-validator-identifier": "^7.19.1", + "@babel/template": "^7.18.10", + "@babel/traverse": "^7.20.1", + "@babel/types": "^7.20.2" + } + }, + "@babel/helper-plugin-utils": { + "version": "7.20.2", + "dev": true + }, + "@babel/helper-simple-access": { + "version": "7.20.2", + "dev": true, + "requires": { + "@babel/types": "^7.20.2" + } + }, + "@babel/helper-split-export-declaration": { + "version": "7.18.6", + "dev": true, + "requires": { + "@babel/types": "^7.18.6" + } + }, + "@babel/helper-string-parser": { + "version": "7.19.4", + "dev": true + }, + "@babel/helper-validator-identifier": { + "version": "7.19.1", + "dev": true + }, + "@babel/helper-validator-option": { + "version": "7.18.6", + "dev": true + }, + "@babel/helpers": { + "version": "7.20.6", + "dev": true, + "requires": { + "@babel/template": "^7.18.10", + "@babel/traverse": "^7.20.5", + "@babel/types": "^7.20.5" + } + }, + "@babel/highlight": { + "version": "7.18.6", + "dev": true, + "requires": { + "@babel/helper-validator-identifier": "^7.18.6", + "chalk": "^2.0.0", + "js-tokens": "^4.0.0" + }, + "dependencies": { + "ansi-styles": { + "version": "3.2.1", "dev": true, "requires": { - "is-plain-obj": "^1.0.0" + "color-convert": "^1.9.0" } }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==" - }, - "source-map-resolve": { - "version": "0.5.3", - "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.3.tgz", - "integrity": "sha512-Htz+RnsXWk5+P2slx5Jh3Q66vhQj1Cllm0zvnaY98+NFx+Dv2CF/f5O/t8x+KaNdrdIAsruNzoh/KpialbqAnw==", + "chalk": { + "version": "2.4.2", + "dev": true, "requires": { - "atob": "^2.1.2", - "decode-uri-component": "^0.2.0", - "resolve-url": "^0.2.1", - "source-map-url": "^0.4.0", - "urix": "^0.1.0" + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" } }, - "source-map-url": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/source-map-url/-/source-map-url-0.4.0.tgz", - "integrity": "sha1-PpNdfd1zYxuXZZlW1VEo6HtQhKM=" - }, - "spawn-wrap": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/spawn-wrap/-/spawn-wrap-1.4.3.tgz", - "integrity": "sha512-IgB8md0QW/+tWqcavuFgKYR/qIRvJkRLPJDFaoXtLLUaVcCDK0+HeFTkmQHj3eprcYhc+gOl0aEA1w7qZlYezw==", + "color-convert": { + "version": "1.9.3", + "dev": true, "requires": { - "foreground-child": "^1.5.6", - "mkdirp": "^0.5.0", - "os-homedir": "^1.0.1", - "rimraf": "^2.6.2", - "signal-exit": "^3.0.2", - "which": "^1.3.0" - }, - "dependencies": { - "minimist": { - "version": "1.2.6", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.6.tgz", - "integrity": "sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==" - }, - "mkdirp": { - "version": "0.5.6", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", - "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", - "requires": { - "minimist": "^1.2.6" - } - }, - "rimraf": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", - "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", - "requires": { - "glob": "^7.1.3" - } - } + "color-name": "1.1.3" } }, - "spdx-correct": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.0.tgz", - "integrity": "sha512-lr2EZCctC2BNR7j7WzJ2FpDznxky1sjfxvvYEyzxNyb6lZXHODmEoJeFu4JupYlkfha1KZpJyoqiJ7pgA1qq8Q==", - "requires": { - "spdx-expression-parse": "^3.0.0", - "spdx-license-ids": "^3.0.0" - } + "color-name": { + "version": "1.1.3", + "dev": true }, - "spdx-exceptions": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.2.0.tgz", - "integrity": "sha512-2XQACfElKi9SlVb1CYadKDXvoajPgBVPn/gOQLrTvHdElaVhr7ZEbqJaRnJLVNeaI4cMEAgVCeBMKF6MWRDCRA==" + "escape-string-regexp": { + "version": "1.0.5", + "dev": true }, - "spdx-expression-parse": { + "has-flag": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.0.tgz", - "integrity": "sha512-Yg6D3XpRD4kkOmTpdgbUiEJFKghJH03fiC1OPll5h/0sO6neh2jqRDVHOQ4o/LMea0tgCkbMgea5ip/e+MkWyg==", - "requires": { - "spdx-exceptions": "^2.1.0", - "spdx-license-ids": "^3.0.0" - } - }, - "spdx-license-ids": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.5.tgz", - "integrity": "sha512-J+FWzZoynJEXGphVIS+XEh3kFSjZX/1i9gFBaWQcB+/tmpe2qUsSBABpcxqxnAxFdiUFEgAX1bjYGQvIZmoz9Q==" - }, - "splaytree": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/splaytree/-/splaytree-3.1.1.tgz", - "integrity": "sha512-9FaQ18FF0+sZc/ieEeXHt+Jw2eSpUgUtTLDYB/HXKWvhYVyOc7h1hzkn5MMO3GPib9MmXG1go8+OsBBzs/NMww==", "dev": true }, - "split": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/split/-/split-1.0.1.tgz", - "integrity": "sha512-mTyOoPbrivtXnwnIxZRFYRrPNtEFKlpB2fvjSnCQUiAA6qAZzqwna5envK4uk6OIeP17CsdF3rSBGYVBsU0Tkg==", + "supports-color": { + "version": "5.5.0", "dev": true, "requires": { - "through": "2" - } - }, - "split-string": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/split-string/-/split-string-3.1.0.tgz", - "integrity": "sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw==", - "requires": { - "extend-shallow": "^3.0.0" - } - }, - "sprintf-js": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=" - }, - "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-trace": { - "version": "0.0.10", - "resolved": "https://registry.npmjs.org/stack-trace/-/stack-trace-0.0.10.tgz", - "integrity": "sha1-VHxws0fo0ytOEI6hoqFZ5f3eGcA=", - "dev": true - }, - "static-extend": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/static-extend/-/static-extend-0.1.2.tgz", - "integrity": "sha1-YICcOcv/VTNyJv1eC1IPNB8ftcY=", - "requires": { - "define-property": "^0.2.5", - "object-copy": "^0.1.0" - }, - "dependencies": { - "define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "requires": { - "is-descriptor": "^0.1.0" - } - } + "has-flag": "^3.0.0" } - }, - "statuses": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", - "integrity": "sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow=", - "dev": true - }, - "step": { - "version": "0.0.6", - "resolved": "https://registry.npmjs.org/step/-/step-0.0.6.tgz", - "integrity": "sha1-FD54SaXX0/SgiP4pr5SRUhbu7eI=", + } + } + }, + "@babel/parser": { + "version": "7.20.5", + "dev": true + }, + "@babel/plugin-syntax-async-generators": { + "version": "7.8.4", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.8.0" + } + }, + "@babel/plugin-syntax-bigint": { + "version": "7.8.3", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.8.0" + } + }, + "@babel/plugin-syntax-class-properties": { + "version": "7.12.13", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.12.13" + } + }, + "@babel/plugin-syntax-import-meta": { + "version": "7.10.4", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.10.4" + } + }, + "@babel/plugin-syntax-json-strings": { + "version": "7.8.3", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.8.0" + } + }, + "@babel/plugin-syntax-logical-assignment-operators": { + "version": "7.10.4", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.10.4" + } + }, + "@babel/plugin-syntax-nullish-coalescing-operator": { + "version": "7.8.3", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.8.0" + } + }, + "@babel/plugin-syntax-numeric-separator": { + "version": "7.10.4", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.10.4" + } + }, + "@babel/plugin-syntax-object-rest-spread": { + "version": "7.8.3", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.8.0" + } + }, + "@babel/plugin-syntax-optional-catch-binding": { + "version": "7.8.3", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.8.0" + } + }, + "@babel/plugin-syntax-optional-chaining": { + "version": "7.8.3", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.8.0" + } + }, + "@babel/plugin-syntax-top-level-await": { + "version": "7.14.5", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.14.5" + } + }, + "@babel/template": { + "version": "7.18.10", + "dev": true, + "requires": { + "@babel/code-frame": "^7.18.6", + "@babel/parser": "^7.18.10", + "@babel/types": "^7.18.10" + } + }, + "@babel/traverse": { + "version": "7.20.5", + "dev": true, + "requires": { + "@babel/code-frame": "^7.18.6", + "@babel/generator": "^7.20.5", + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-function-name": "^7.19.0", + "@babel/helper-hoist-variables": "^7.18.6", + "@babel/helper-split-export-declaration": "^7.18.6", + "@babel/parser": "^7.20.5", + "@babel/types": "^7.20.5", + "debug": "^4.1.0", + "globals": "^11.1.0" + } + }, + "@babel/types": { + "version": "7.20.5", + "dev": true, + "requires": { + "@babel/helper-string-parser": "^7.19.4", + "@babel/helper-validator-identifier": "^7.19.1", + "to-fast-properties": "^2.0.0" + } + }, + "@bcoe/v8-coverage": { + "version": "0.2.3", + "dev": true + }, + "@cnakazawa/watch": { + "version": "1.0.4", + "dev": true, + "requires": { + "exec-sh": "^0.3.2", + "minimist": "^1.2.0" + } + }, + "@istanbuljs/load-nyc-config": { + "version": "1.1.0", + "dev": true, + "requires": { + "camelcase": "^5.3.1", + "find-up": "^4.1.0", + "get-package-type": "^0.1.0", + "js-yaml": "^3.13.1", + "resolve-from": "^5.0.0" + } + }, + "@istanbuljs/schema": { + "version": "0.1.3", + "dev": true + }, + "@jest/console": { + "version": "26.6.2", + "dev": true, + "requires": { + "@jest/types": "^26.6.2", + "@types/node": "*", + "chalk": "^4.0.0", + "jest-message-util": "^26.6.2", + "jest-util": "^26.6.2", + "slash": "^3.0.0" + }, + "dependencies": { + "slash": { + "version": "3.0.0", "dev": true - }, - "stream-combiner": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/stream-combiner/-/stream-combiner-0.2.2.tgz", - "integrity": "sha1-rsjLrBd7Vrb0+kec7YwZEs7lKFg=", + } + } + }, + "@jest/core": { + "version": "26.6.3", + "dev": true, + "requires": { + "@jest/console": "^26.6.2", + "@jest/reporters": "^26.6.2", + "@jest/test-result": "^26.6.2", + "@jest/transform": "^26.6.2", + "@jest/types": "^26.6.2", + "@types/node": "*", + "ansi-escapes": "^4.2.1", + "chalk": "^4.0.0", + "exit": "^0.1.2", + "graceful-fs": "^4.2.4", + "jest-changed-files": "^26.6.2", + "jest-config": "^26.6.3", + "jest-haste-map": "^26.6.2", + "jest-message-util": "^26.6.2", + "jest-regex-util": "^26.0.0", + "jest-resolve": "^26.6.2", + "jest-resolve-dependencies": "^26.6.3", + "jest-runner": "^26.6.3", + "jest-runtime": "^26.6.3", + "jest-snapshot": "^26.6.2", + "jest-util": "^26.6.2", + "jest-validate": "^26.6.2", + "jest-watcher": "^26.6.2", + "micromatch": "^4.0.2", + "p-each-series": "^2.1.0", + "rimraf": "^3.0.0", + "slash": "^3.0.0", + "strip-ansi": "^6.0.0" + }, + "dependencies": { + "braces": { + "version": "3.0.2", "dev": true, "requires": { - "duplexer": "~0.1.1", - "through": "~2.3.4" + "fill-range": "^7.0.1" } }, - "streamsearch": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/streamsearch/-/streamsearch-0.1.2.tgz", - "integrity": "sha1-gIudDlb8Jz2Am6VzOOkpkZoanxo=", - "dev": true - }, - "strict-uri-encode": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/strict-uri-encode/-/strict-uri-encode-1.1.0.tgz", - "integrity": "sha1-J5siXfHVgrH1TmWt3UNS4Y+qBxM=", - "dev": true - }, - "string-width": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", - "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "fill-range": { + "version": "7.0.1", "dev": true, - "optional": true, - "requires": { - "code-point-at": "^1.0.0", - "is-fullwidth-code-point": "^1.0.0", - "strip-ansi": "^3.0.0" - } - }, - "string.prototype.padend": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/string.prototype.padend/-/string.prototype.padend-3.1.0.tgz", - "integrity": "sha512-3aIv8Ffdp8EZj8iLwREGpQaUZiPyrWrpzMBHvkiSW/bK/EGve9np07Vwy7IJ5waydpGXzQZu/F8Oze2/IWkBaA==", - "requires": { - "define-properties": "^1.1.3", - "es-abstract": "^1.17.0-next.1" - } - }, - "string.prototype.trimend": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.4.tgz", - "integrity": "sha512-y9xCjw1P23Awk8EvTpcyL2NIr1j7wJ39f+k6lvRnSMz+mz9CGz9NYPelDk42kOz6+ql8xjfK8oYzy3jAP5QU5A==", "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3" + "to-regex-range": "^5.0.1" } }, - "string.prototype.trimleft": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/string.prototype.trimleft/-/string.prototype.trimleft-2.1.1.tgz", - "integrity": "sha512-iu2AGd3PuP5Rp7x2kEZCrB2Nf41ehzh+goo8TV7z8/XDBbsvc6HQIlUl9RjkZ4oyrW1XM5UwlGl1oVEaDjg6Ag==", - "requires": { - "define-properties": "^1.1.3", - "function-bind": "^1.1.1" - } - }, - "string.prototype.trimright": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/string.prototype.trimright/-/string.prototype.trimright-2.1.1.tgz", - "integrity": "sha512-qFvWL3/+QIgZXVmJBfpHmxLB7xsUXz6HsUmP8+5dRaC3Q7oKUv9Vo6aMCRZC1smrtyECFsIT30PqBJ1gTjAs+g==", - "requires": { - "define-properties": "^1.1.3", - "function-bind": "^1.1.1" - } - }, - "string.prototype.trimstart": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.4.tgz", - "integrity": "sha512-jh6e984OBfvxS50tdY2nRZnoC5/mLFKOREQfw8t5yytkoUsJRNxvI/E39qu1sD0OtWI3OC0XgKSmcWwziwYuZw==", - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3" - } - }, - "string_decoder": { - "version": "0.10.31", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", - "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=", + "is-number": { + "version": "7.0.0", "dev": true }, - "strip-ansi": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "micromatch": { + "version": "4.0.5", "dev": true, - "optional": true, "requires": { - "ansi-regex": "^2.0.0" + "braces": "^3.0.2", + "picomatch": "^2.3.1" } }, - "strip-bom": { + "slash": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", - "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=" - }, - "strip-indent": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-2.0.0.tgz", - "integrity": "sha1-XvjbKV0B5u1sv3qrlpmNeCJSe2g=" - }, - "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=" - }, - "strtok3": { - "version": "6.2.4", - "resolved": "https://registry.npmjs.org/strtok3/-/strtok3-6.2.4.tgz", - "integrity": "sha512-GO8IcFF9GmFDvqduIspUBwCzCbqzegyVKIsSymcMgiZKeCfrN9SowtUoi8+b59WZMAjIzVZic/Ft97+pynR3Iw==", - "dev": true, - "requires": { - "@tokenizer/token": "^0.3.0", - "peek-readable": "^4.0.1" - } - }, - "superagent": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/superagent/-/superagent-6.1.0.tgz", - "integrity": "sha512-OUDHEssirmplo3F+1HWKUrUjvnQuA+nZI6i/JJBdXb5eq9IyEQwPyPpqND+SSsxf6TygpBEkUjISVRN4/VOpeg==", - "requires": { - "component-emitter": "^1.3.0", - "cookiejar": "^2.1.2", - "debug": "^4.1.1", - "fast-safe-stringify": "^2.0.7", - "form-data": "^3.0.0", - "formidable": "^1.2.2", - "methods": "^1.1.2", - "mime": "^2.4.6", - "qs": "^6.9.4", - "readable-stream": "^3.6.0", - "semver": "^7.3.2" - }, - "dependencies": { - "debug": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz", - "integrity": "sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==", - "requires": { - "ms": "2.1.2" - } - }, - "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" - } - }, - "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" - } - }, - "mime": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/mime/-/mime-2.5.2.tgz", - "integrity": "sha512-tqkh47FzKeCPD2PUiPB6pkbMzsCasjxAfC62/Wap5qrUWcb+sFasXUC5I3gYM5iBM8v/Qpn4UK0x+j0iHyFPDg==" - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" - }, - "qs": { - "version": "6.10.1", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.10.1.tgz", - "integrity": "sha512-M528Hph6wsSVOBiYUnGf+K/7w0hNshs/duGsNXPUCLH5XAqjEtiPGwNONLV0tBH8NoGb0mvD5JubnUTrujKDTg==" - }, - "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" - } - }, - "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" - } - }, - "string_decoder": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", - "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==" - }, - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" - } - } - }, - "supertest": { - "version": "https://registry.npmjs.org/supertest/-/supertest-4.0.2.tgz", - "integrity": "sha512-1BAbvrOZsGA3YTCWqbmh14L0YEq0EGICX/nBnfkfVJn7SrxQV1I3pMYjSzG9y/7ZU2V9dWqyqk2POwxlb09duQ==", - "requires": { - "methods": "^1.1.2", - "superagent": "^3.8.3" - }, - "dependencies": { - "debug": { - "version": "3.2.6", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", - "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", - "requires": { - "ms": "^2.1.1" - } - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" - }, - "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==" - }, - "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" - } - }, - "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" - } - }, - "superagent": { - "version": "3.8.3", - "resolved": "https://registry.npmjs.org/superagent/-/superagent-3.8.3.tgz", - "integrity": "sha512-GLQtLMCoEIK4eDv6OGtkOoSMt3D+oq0y3dsxMuYuDvaNUvuT8eFBuLmfR0iYYzHC1e8hpzC6ZsxbuP6DIalMFA==", - "requires": { - "component-emitter": "^1.2.0", - "cookiejar": "^2.1.0", - "debug": "^3.1.0", - "extend": "^3.0.0", - "form-data": "^2.3.1", - "formidable": "^1.2.0", - "methods": "^1.1.1", - "mime": "^1.4.1", - "qs": "^6.5.1", - "readable-stream": "^2.3.5" - } - } - } - }, - "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, - "optional": true, - "requires": { - "has-flag": "^4.0.0" - }, - "dependencies": { - "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, - "optional": true - } - } - }, - "supports-preserve-symlinks-flag": { - "version": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", - "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==" + "dev": true }, - "svg-captcha": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/svg-captcha/-/svg-captcha-1.4.0.tgz", - "integrity": "sha512-/fkkhavXPE57zRRCjNqAP3txRCSncpMx3NnNZL7iEoyAtYwUjPhJxW6FQTQPG5UPEmCrbFoXS10C3YdJlW7PDg==", + "to-regex-range": { + "version": "5.0.1", "dev": true, "requires": { - "opentype.js": "^0.7.3" - } - }, - "table": { - "version": "5.4.6", - "resolved": "https://registry.npmjs.org/table/-/table-5.4.6.tgz", - "integrity": "sha512-wmEc8m4fjnob4gt5riFRtTu/6+4rSe12TpAELNSqHMfF3IqnA+CH37USM6/YR3qRZv7e56kAEAtd6nKZaxe0Ug==", - "requires": { - "ajv": "^6.10.2", - "lodash": "^4.17.14", - "slice-ansi": "^2.1.0", - "string-width": "^3.0.0" - }, - "dependencies": { - "ansi-regex": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", - "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==" - }, - "emoji-regex": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", - "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==" - }, - "is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=" - }, - "string-width": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", - "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", - "requires": { - "emoji-regex": "^7.0.1", - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^5.1.0" - } - }, - "strip-ansi": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", - "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", - "requires": { - "ansi-regex": "^4.1.0" - } - } + "is-number": "^7.0.0" } - }, - "tar": { - "version": "6.1.11", - "resolved": "https://registry.npmjs.org/tar/-/tar-6.1.11.tgz", - "integrity": "sha512-an/KZQzQUkZCkuoAA64hM92X0Urb6VpRhAFllDzz44U2mcD5scmT3zBc4VgVpkugF580+DQn8eAFSyoQt0tznA==", + } + } + }, + "@jest/environment": { + "version": "26.6.2", + "dev": true, + "requires": { + "@jest/fake-timers": "^26.6.2", + "@jest/types": "^26.6.2", + "@types/node": "*", + "jest-mock": "^26.6.2" + } + }, + "@jest/fake-timers": { + "version": "26.6.2", + "dev": true, + "requires": { + "@jest/types": "^26.6.2", + "@sinonjs/fake-timers": "^6.0.1", + "@types/node": "*", + "jest-message-util": "^26.6.2", + "jest-mock": "^26.6.2", + "jest-util": "^26.6.2" + } + }, + "@jest/globals": { + "version": "26.6.2", + "dev": true, + "requires": { + "@jest/environment": "^26.6.2", + "@jest/types": "^26.6.2", + "expect": "^26.6.2" + } + }, + "@jest/reporters": { + "version": "26.6.2", + "dev": true, + "requires": { + "@bcoe/v8-coverage": "^0.2.3", + "@jest/console": "^26.6.2", + "@jest/test-result": "^26.6.2", + "@jest/transform": "^26.6.2", + "@jest/types": "^26.6.2", + "chalk": "^4.0.0", + "collect-v8-coverage": "^1.0.0", + "exit": "^0.1.2", + "glob": "^7.1.2", + "graceful-fs": "^4.2.4", + "istanbul-lib-coverage": "^3.0.0", + "istanbul-lib-instrument": "^4.0.3", + "istanbul-lib-report": "^3.0.0", + "istanbul-lib-source-maps": "^4.0.0", + "istanbul-reports": "^3.0.2", + "jest-haste-map": "^26.6.2", + "jest-resolve": "^26.6.2", + "jest-util": "^26.6.2", + "jest-worker": "^26.6.2", + "node-notifier": "^8.0.0", + "slash": "^3.0.0", + "source-map": "^0.6.0", + "string-length": "^4.0.1", + "terminal-link": "^2.0.0", + "v8-to-istanbul": "^7.0.0" + }, + "dependencies": { + "slash": { + "version": "3.0.0", + "dev": true + } + } + }, + "@jest/source-map": { + "version": "26.6.2", + "dev": true, + "requires": { + "callsites": "^3.0.0", + "graceful-fs": "^4.2.4", + "source-map": "^0.6.0" + } + }, + "@jest/test-result": { + "version": "26.6.2", + "dev": true, + "requires": { + "@jest/console": "^26.6.2", + "@jest/types": "^26.6.2", + "@types/istanbul-lib-coverage": "^2.0.0", + "collect-v8-coverage": "^1.0.0" + } + }, + "@jest/test-sequencer": { + "version": "26.6.3", + "dev": true, + "requires": { + "@jest/test-result": "^26.6.2", + "graceful-fs": "^4.2.4", + "jest-haste-map": "^26.6.2", + "jest-runner": "^26.6.3", + "jest-runtime": "^26.6.3" + } + }, + "@jest/transform": { + "version": "26.6.2", + "dev": true, + "requires": { + "@babel/core": "^7.1.0", + "@jest/types": "^26.6.2", + "babel-plugin-istanbul": "^6.0.0", + "chalk": "^4.0.0", + "convert-source-map": "^1.4.0", + "fast-json-stable-stringify": "^2.0.0", + "graceful-fs": "^4.2.4", + "jest-haste-map": "^26.6.2", + "jest-regex-util": "^26.0.0", + "jest-util": "^26.6.2", + "micromatch": "^4.0.2", + "pirates": "^4.0.1", + "slash": "^3.0.0", + "source-map": "^0.6.1", + "write-file-atomic": "^3.0.0" + }, + "dependencies": { + "braces": { + "version": "3.0.2", "dev": true, - "optional": true, "requires": { - "chownr": "^2.0.0", - "fs-minipass": "^2.0.0", - "minipass": "^3.0.0", - "minizlib": "^2.1.1", - "mkdirp": "^1.0.3", - "yallist": "^4.0.0" - }, - "dependencies": { - "chownr": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", - "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==", - "dev": true, - "optional": true - }, - "mkdirp": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", - "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", - "dev": true, - "optional": true - }, - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true, - "optional": true - } + "fill-range": "^7.0.1" } }, - "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==", + "fill-range": { + "version": "7.0.1", "dev": true, - "optional": true, "requires": { - "chownr": "^1.1.1", - "mkdirp-classic": "^0.5.2", - "pump": "^3.0.0", - "tar-stream": "^2.1.4" + "to-regex-range": "^5.0.1" } }, - "tar-stream": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-2.2.0.tgz", - "integrity": "sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ==", + "is-number": { + "version": "7.0.0", + "dev": true + }, + "micromatch": { + "version": "4.0.5", "dev": true, "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==", - "dev": true, - "requires": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - } - }, - "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==", - "dev": true - }, - "string_decoder": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", - "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", - "dev": true, - "requires": { - "safe-buffer": "~5.2.0" - } - } + "braces": "^3.0.2", + "picomatch": "^2.3.1" } }, - "terraformer": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/terraformer/-/terraformer-1.0.4.tgz", - "integrity": "sha1-RrSIL7lbCct0YxXBPDW7BJwWKyQ=", + "slash": { + "version": "3.0.0", "dev": true }, - "terraformer-arcgis-parser": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/terraformer-arcgis-parser/-/terraformer-arcgis-parser-1.0.4.tgz", - "integrity": "sha1-W8r3qZFraei9nwDsPlqBX8Vy9jU=", + "to-regex-range": { + "version": "5.0.1", "dev": true, "requires": { - "terraformer": "~1.0.4" - } - }, - "test-exclude": { - "version": "5.2.3", - "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-5.2.3.tgz", - "integrity": "sha512-M+oxtseCFO3EDtAaGH7iiej3CBkzXqFMbzqYAACdzKui4eZA+pq3tZEwChvOdNfa7xxy8BfbmgJSIr43cC/+2g==", - "requires": { - "glob": "^7.1.3", - "minimatch": "^3.0.4", - "read-pkg-up": "^4.0.0", - "require-main-filename": "^2.0.0" - }, - "dependencies": { - "find-up": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", - "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", - "requires": { - "locate-path": "^3.0.0" - } - }, - "locate-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", - "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", - "requires": { - "p-locate": "^3.0.0", - "path-exists": "^3.0.0" - } - }, - "p-limit": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.2.2.tgz", - "integrity": "sha512-WGR+xHecKTr7EbUEhyLSh5Dube9JtdiG78ufaeLxTgpudf/20KqyMioIUZJAezlTIi6evxuoUs9YXc11cU+yzQ==", - "requires": { - "p-try": "^2.0.0" - } - }, - "p-locate": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", - "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", - "requires": { - "p-limit": "^2.0.0" - } - }, - "p-try": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", - "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==" - }, - "read-pkg-up": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-4.0.0.tgz", - "integrity": "sha512-6etQSH7nJGsK0RbG/2TeDzZFa8shjQ1um+SwQQ5cwKy0dhSXdOncEhb1CPpvQG4h7FyOV6EB6YlV0yJvZQNAkA==", - "requires": { - "find-up": "^3.0.0", - "read-pkg": "^3.0.0" - } - } + "is-number": "^7.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=" - }, - "through": { - "version": "2.3.8", - "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", - "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=" - }, - "timed-out": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/timed-out/-/timed-out-4.0.1.tgz", - "integrity": "sha1-8y6srFoXW+ol1/q1Zas+2HQe9W8=", + } + } + }, + "@jest/types": { + "version": "26.6.2", + "dev": true, + "requires": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^15.0.0", + "chalk": "^4.0.0" + } + }, + "@jridgewell/gen-mapping": { + "version": "0.1.1", + "dev": true, + "requires": { + "@jridgewell/set-array": "^1.0.0", + "@jridgewell/sourcemap-codec": "^1.4.10" + } + }, + "@jridgewell/resolve-uri": { + "version": "3.1.0", + "dev": true + }, + "@jridgewell/set-array": { + "version": "1.1.2", + "dev": true + }, + "@jridgewell/sourcemap-codec": { + "version": "1.4.14", + "dev": true + }, + "@jridgewell/trace-mapping": { + "version": "0.3.17", + "dev": true, + "requires": { + "@jridgewell/resolve-uri": "3.1.0", + "@jridgewell/sourcemap-codec": "1.4.14" + } + }, + "@mapbox/togeojson": { + "version": "0.16.0", + "resolved": "https://registry.npmjs.org/@mapbox/togeojson/-/togeojson-0.16.0.tgz", + "integrity": "sha512-PeBrRQ+kuVP5j3lqa5JtnYBd9E7eQdWnsmOmUq8aWs0caNzLbCqnXSkKxrIGURukf7lZ82aOxjustLRX3f9GOA==", + "dev": true, + "requires": { + "concat-stream": "~1.5.1", + "minimist": "1.2.0", + "xmldom": "~0.1.19" + }, + "dependencies": { + "minimist": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", + "integrity": "sha512-7Wl+Jz+IGWuSdgsQEJ4JunV0si/iMhg42MnQQG6h1R6TNeVenp4U9x5CC5v/gYqz/fENLQITAWXidNtVL0NNbw==", "dev": true - }, - "tiny-inflate": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/tiny-inflate/-/tiny-inflate-1.0.3.tgz", - "integrity": "sha512-pkY1fj1cKHb2seWDy0B16HeWyczlJA9/WW3u3c4z/NiWDsO3DOU5D7nhTLE9CF0yXv/QZFY7sEJmj24dK+Rrqw==", + } + } + }, + "@mrmlnc/readdir-enhanced": { + "version": "2.2.1", + "dev": true, + "requires": { + "call-me-maybe": "^1.0.1", + "glob-to-regexp": "^0.3.0" + } + }, + "@ngageoint/geopackage": { + "version": "4.2.4", + "resolved": "https://registry.npmjs.org/@ngageoint/geopackage/-/geopackage-4.2.4.tgz", + "integrity": "sha512-x6U2RV2iJFX/mITLSOLgrv2LAtnJjegAgKP5fNnbXzpVNFecmkLntB0+B7ZKU+5/HVn8YqUDdLJT8Oq8D2qNOw==", + "dev": true, + "requires": { + "@turf/bbox": "6.3.0", + "@turf/boolean-clockwise": "6.5.0", + "@turf/boolean-point-in-polygon": "6.5.0", + "@turf/boolean-within": "6.5.0", + "@turf/distance": "6.5.0", + "@turf/helpers": "6.5.0", + "@turf/intersect": "6.5.0", + "@turf/line-intersect": "6.5.0", + "@turf/point-to-line-distance": "6.5.0", + "@turf/polygon-to-line": "6.5.0", + "@types/geojson": "7946.0.8", + "@types/proj4": "2.5.2", + "better-sqlite3": "7.4.1", + "chalk": "4.1.1", + "file-type": "12.4.0", + "image-size": "0.8.3", + "inquirer": "8.0.0", + "lodash": "4.17.21", + "proj4": "2.8.0", + "reproject": "1.2.5", + "rtree-sql.js": "1.7.0", + "simplify-js": "1.2.4", + "webworkify": "1.5.0", + "wkx": "0.4.8" + }, + "dependencies": { + "@types/geojson": { + "version": "7946.0.8", + "resolved": "https://registry.npmjs.org/@types/geojson/-/geojson-7946.0.8.tgz", + "integrity": "sha512-1rkryxURpr6aWP7R786/UQOkJ3PcpQiWkAXBmdWc7ryFWqN6a4xfK7BtjXvFBKO9LjQ+MWQSWxYeZX1OApnArA==", "dev": true }, - "tmp": { - "version": "0.0.33", - "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", - "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", + "chalk": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.1.tgz", + "integrity": "sha512-diHzdDKxcU+bAsUboHLPEDQiw0qEe0qd7SYUn3HgcFlWgbDcfLGswOHYeGrHKzG9z6UYf01d9VFMfZxPM1xZSg==", "dev": true, "optional": true, "requires": { - "os-tmpdir": "~1.0.2" - } - }, - "to-fast-properties": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-1.0.3.tgz", - "integrity": "sha1-uDVx+k2MJbguIxsG46MFXeTKGkc=", - "dev": true - }, - "to-object-path": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/to-object-path/-/to-object-path-0.3.0.tgz", - "integrity": "sha1-KXWIt7Dn4KwI4E5nL4XB9JmeF68=", - "requires": { - "kind-of": "^3.0.2" - } - }, - "to-regex": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/to-regex/-/to-regex-3.0.2.tgz", - "integrity": "sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw==", - "requires": { - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "regex-not": "^1.0.2", - "safe-regex": "^1.1.0" - } - }, - "to-regex-range": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", - "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=", - "requires": { - "is-number": "^3.0.0", - "repeat-string": "^1.6.1" + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" } }, - "toidentifier": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.0.tgz", - "integrity": "sha512-yaOH/Pk/VEhBWWTlhI+qXxDFXlejDGcQipMlyxda9nthulaxLZUNcUqFxokp0vcYnvteJln5FNQDRrxj3YcbVw==", - "dev": true - }, - "token-stream": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/token-stream/-/token-stream-0.0.1.tgz", - "integrity": "sha1-zu78cXp2xDFvEm0LnbqlXX598Bo=", + "file-type": { + "version": "12.4.0", + "resolved": "https://registry.npmjs.org/file-type/-/file-type-12.4.0.tgz", + "integrity": "sha512-WTvyKq8yjtNmUtVAD8LGcTkvtCdJglM6ks2HTqEClm6+65XTqM6MoZYA1Vtra50DLRWLiM38fEs1y56f5VhnUA==", "dev": true - }, - "token-types": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/token-types/-/token-types-2.1.1.tgz", - "integrity": "sha512-wnQcqlreS6VjthyHO3Y/kpK/emflxDBNhlNUPfh7wE39KnuDdOituXomIbyI79vBtF0Ninpkh72mcuRHo+RG3Q==", + } + } + }, + "@ngageoint/mage.service": { + "version": "6.3.0-beta.2", + "dev": true, + "requires": { + "@mapbox/togeojson": "0.16.0", + "@ngageoint/geopackage": "^4.2.4", + "@ngageoint/mongodb-migrations": "^1.0.0", + "@turf/centroid": "~6.0.0", + "@turf/kinks": "~6.0.0", + "@types/geojson": "^7946.0.7", + "@types/json-schema": "^7.0.11", + "@types/mime-types": "^2.1.1", + "adm-zip": "0.4.9", + "archiver": "5.3.0", + "async": "0.2.x", + "async-lock": "^1.4.0", + "base-64": "1.0.0", + "body-parser": "1.18.3", + "busboy": "^1.6.0", + "cfenv": "1.0.3", + "commander": "^8.2.0", + "dbf": "0.1.0", + "express": "~4.17.0", + "express-session": "1.17.2", + "file-type": "16.5.0", + "fs-extra": "4.0.3", + "geojson": "^0.5.0", + "geojson-validation": "^1.0.2", + "geojson-vt": "3.1.3", + "gm": "1.23.1", + "jose": "0.3.2", + "json2csv": "4.5.1", + "jsonwebtoken": "^9.0.0", + "lodash": "^4.17.21", + "mgrs": "^1.0.0", + "mime-types": "^2.1.35", + "moment": "2.22.2", + "mongoose": "^6.7.4", + "mongoose-beautiful-unique-validation": "7.1.1", + "multer": "^1.4.2", + "node-fetch": "^2.6.0", + "passport": "0.4.1", + "passport-anonymous": "1.0.1", + "passport-http-bearer": "1.0.1", + "passport-ldapauth": "2.1.3", + "passport-local": "1.0.0", + "passport-oauth2": "1.6.1", + "passport-openidconnect": "0.1.1", + "passport-saml": "^1.3.1", + "pem-jwk": "1.5.1", + "pem2jwk": "1.0.1", + "pug": "2.0.4", + "rfc5646": "^3.0.0", + "superagent": "^8.0.0", + "svg-captcha": "^1.4.0", + "terraformer": "1.0.4", + "terraformer-arcgis-parser": "1.0.4", + "uniqid": "^5.2.0", + "walk": "2.3.4", + "winston": "1.0.1", + "wkx": "0.4.8", + "wms-capabilities": "^0.4.0", + "xmlbuilder2": "3.0.2", + "xmldom": "0.1.22", + "xpath": "0.0.23", + "yaml": "^1.8.2" + } + }, + "@ngageoint/mongodb-migrations": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@ngageoint/mongodb-migrations/-/mongodb-migrations-1.0.0.tgz", + "integrity": "sha512-SOjJk+xuPfMmevyZOhRCm3odFFW//zg8tKSkiKfgAslMIaZUII6rbrBQRjBPqyFewqg/dabY4xYnXelZSY7/cw==", + "dev": true, + "requires": { + "bluebird": "^3.7.2", + "coffeescript": "^2.7.0", + "lodash": "^4.17.21", + "mkdirp": "^0.5.6", + "mongodb": "^4.8.1", + "nomnom": "^1.8.1" + }, + "dependencies": { + "mkdirp": { + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", + "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", "dev": true, "requires": { - "@tokenizer/token": "^0.1.1", - "ieee754": "^1.2.1" - }, - "dependencies": { - "@tokenizer/token": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/@tokenizer/token/-/token-0.1.1.tgz", - "integrity": "sha512-XO6INPbZCxdprl+9qa/AAbFFOMzzwqYxpjPgLICrMD6C2FCw6qfJOPcBk6JqqPLSaZ/Qx87qn4rpPmPMwaAK6w==", - "dev": true - } - } - }, - "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" - } - }, - "tr46": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", - "integrity": "sha1-gYT9NH2snNwYWZLzpmIuFLnZq2o=" - }, - "trim-newlines": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-2.0.0.tgz", - "integrity": "sha1-tAPQuRvlDDMd/EuC7s6yLD3hbSA=" - }, - "ts-mockito": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/ts-mockito/-/ts-mockito-2.5.0.tgz", - "integrity": "sha512-b3qUeMfghRq5k5jw3xNJcnU9RKhqKnRn0k9v9QkN+YpuawrFuMIiGwzFZCpdi5MHy26o7YPnK8gag2awURl3nA==", - "requires": { - "lodash": "^4.17.5" - } - }, - "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==", - "requires": { - "tslib": "^1.8.1" - } - }, - "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.3.2", - "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz", - "integrity": "sha1-WITKtRLPHTVeP7eE8wgEsrUg23I=", - "requires": { - "prelude-ls": "~1.1.2" + "minimist": "^1.2.6" } - }, - "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==", - "dev": true, - "optional": true - }, - "type-is": { - "version": "1.6.18", - "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz", - "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==", + } + } + }, + "@nodelib/fs.stat": { + "version": "1.1.3", + "dev": true + }, + "@oozcitak/dom": { + "version": "1.15.10", + "resolved": "https://registry.npmjs.org/@oozcitak/dom/-/dom-1.15.10.tgz", + "integrity": "sha512-0JT29/LaxVgRcGKvHmSrUTEvZ8BXvZhGl2LASRUgHqDTC1M5g1pLmVv56IYNyt3bG2CUjDkc67wnyZC14pbQrQ==", + "dev": true, + "requires": { + "@oozcitak/infra": "1.0.8", + "@oozcitak/url": "1.0.4", + "@oozcitak/util": "8.3.8" + } + }, + "@oozcitak/infra": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/@oozcitak/infra/-/infra-1.0.8.tgz", + "integrity": "sha512-JRAUc9VR6IGHOL7OGF+yrvs0LO8SlqGnPAMqyzOuFZPSZSXI7Xf2O9+awQPSMXgIWGtgUf/dA6Hs6X6ySEaWTg==", + "dev": true, + "requires": { + "@oozcitak/util": "8.3.8" + } + }, + "@oozcitak/url": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/@oozcitak/url/-/url-1.0.4.tgz", + "integrity": "sha512-kDcD8y+y3FCSOvnBI6HJgl00viO/nGbQoCINmQ0h98OhnGITrWR3bOGfwYCthgcrV8AnTJz8MzslTQbC3SOAmw==", + "dev": true, + "requires": { + "@oozcitak/infra": "1.0.8", + "@oozcitak/util": "8.3.8" + } + }, + "@oozcitak/util": { + "version": "8.3.8", + "resolved": "https://registry.npmjs.org/@oozcitak/util/-/util-8.3.8.tgz", + "integrity": "sha512-T8TbSnGsxo6TDBJx/Sgv/BlVJL3tshxZP7Aq5R1mSnM5OcHY2dQaxLMu2+E8u3gN0MLOzdjurqN4ZRVuzQycOQ==", + "dev": true + }, + "@sinonjs/commons": { + "version": "1.8.6", + "dev": true, + "requires": { + "type-detect": "4.0.8" + } + }, + "@sinonjs/fake-timers": { + "version": "6.0.1", + "dev": true, + "requires": { + "@sinonjs/commons": "^1.7.0" + } + }, + "@tokenizer/token": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/@tokenizer/token/-/token-0.3.0.tgz", + "integrity": "sha512-OvjF+z51L3ov0OyAU0duzsYuvO01PH7x4t6DJx+guahgTnBHkhJdG7soQeTSFLWN3efnHyibZ4Z8l2EuWwJN3A==", + "dev": true + }, + "@tootallnate/once": { + "version": "1.1.2", + "dev": true + }, + "@turf/bbox": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/@turf/bbox/-/bbox-6.3.0.tgz", + "integrity": "sha512-N4ue5Xopu1qieSHP2MA/CJGWHPKaTrVXQJjzHRNcY1vtsO126xbSaJhWUrFc5x5vVkXp0dcucGryO0r5m4o/KA==", + "dev": true, + "requires": { + "@turf/helpers": "^6.3.0", + "@turf/meta": "^6.3.0" + } + }, + "@turf/bearing": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/bearing/-/bearing-6.5.0.tgz", + "integrity": "sha512-dxINYhIEMzgDOztyMZc20I7ssYVNEpSv04VbMo5YPQsqa80KO3TFvbuCahMsCAW5z8Tncc8dwBlEFrmRjJG33A==", + "dev": true, + "requires": { + "@turf/helpers": "^6.5.0", + "@turf/invariant": "^6.5.0" + } + }, + "@turf/boolean-clockwise": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/boolean-clockwise/-/boolean-clockwise-6.5.0.tgz", + "integrity": "sha512-45+C7LC5RMbRWrxh3Z0Eihsc8db1VGBO5d9BLTOAwU4jR6SgsunTfRWR16X7JUwIDYlCVEmnjcXJNi/kIU3VIw==", + "dev": true, + "requires": { + "@turf/helpers": "^6.5.0", + "@turf/invariant": "^6.5.0" + } + }, + "@turf/boolean-point-in-polygon": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/boolean-point-in-polygon/-/boolean-point-in-polygon-6.5.0.tgz", + "integrity": "sha512-DtSuVFB26SI+hj0SjrvXowGTUCHlgevPAIsukssW6BG5MlNSBQAo70wpICBNJL6RjukXg8d2eXaAWuD/CqL00A==", + "dev": true, + "requires": { + "@turf/helpers": "^6.5.0", + "@turf/invariant": "^6.5.0" + } + }, + "@turf/boolean-point-on-line": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/boolean-point-on-line/-/boolean-point-on-line-6.5.0.tgz", + "integrity": "sha512-A1BbuQ0LceLHvq7F/P7w3QvfpmZqbmViIUPHdNLvZimFNLo4e6IQunmzbe+8aSStH9QRZm3VOflyvNeXvvpZEQ==", + "dev": true, + "requires": { + "@turf/helpers": "^6.5.0", + "@turf/invariant": "^6.5.0" + } + }, + "@turf/boolean-within": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/boolean-within/-/boolean-within-6.5.0.tgz", + "integrity": "sha512-YQB3oU18Inx35C/LU930D36RAVe7LDXk1kWsQ8mLmuqYn9YdPsDQTMTkLJMhoQ8EbN7QTdy333xRQ4MYgToteQ==", + "dev": true, + "requires": { + "@turf/bbox": "^6.5.0", + "@turf/boolean-point-in-polygon": "^6.5.0", + "@turf/boolean-point-on-line": "^6.5.0", + "@turf/helpers": "^6.5.0", + "@turf/invariant": "^6.5.0" + }, + "dependencies": { + "@turf/bbox": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/bbox/-/bbox-6.5.0.tgz", + "integrity": "sha512-RBbLaao5hXTYyyg577iuMtDB8ehxMlUqHEJiMs8jT1GHkFhr6sYre3lmLsPeYEi/ZKj5TP5tt7fkzNdJ4GIVyw==", "dev": true, "requires": { - "media-typer": "0.3.0", - "mime-types": "~2.1.24" + "@turf/helpers": "^6.5.0", + "@turf/meta": "^6.5.0" } - }, - "typedarray": { - "version": "0.0.6", - "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", - "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=", + } + } + }, + "@turf/centroid": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/@turf/centroid/-/centroid-6.0.2.tgz", + "integrity": "sha512-auyDauOtC4eddH7GC3CHFTDu2PKhpSeKCRhwhHhXtJqn2dWCJQNIoCeJRmfXRIbzCWhWvgvQafvvhq8HNvmvWw==", + "dev": true, + "requires": { + "@turf/helpers": "6.x", + "@turf/meta": "6.x" + } + }, + "@turf/clone": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/clone/-/clone-6.5.0.tgz", + "integrity": "sha512-mzVtTFj/QycXOn6ig+annKrM6ZlimreKYz6f/GSERytOpgzodbQyOgkfwru100O1KQhhjSudKK4DsQ0oyi9cTw==", + "dev": true, + "requires": { + "@turf/helpers": "^6.5.0" + } + }, + "@turf/distance": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/distance/-/distance-6.5.0.tgz", + "integrity": "sha512-xzykSLfoURec5qvQJcfifw/1mJa+5UwByZZ5TZ8iaqjGYN0vomhV9aiSLeYdUGtYRESZ+DYC/OzY+4RclZYgMg==", + "dev": true, + "requires": { + "@turf/helpers": "^6.5.0", + "@turf/invariant": "^6.5.0" + } + }, + "@turf/helpers": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/helpers/-/helpers-6.5.0.tgz", + "integrity": "sha512-VbI1dV5bLFzohYYdgqwikdMVpe7pJ9X3E+dlr425wa2/sMJqYDhTO++ec38/pcPvPE6oD9WEEeU3Xu3gza+VPw==", + "dev": true + }, + "@turf/intersect": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/intersect/-/intersect-6.5.0.tgz", + "integrity": "sha512-2legGJeKrfFkzntcd4GouPugoqPUjexPZnOvfez+3SfIMrHvulw8qV8u7pfVyn2Yqs53yoVCEjS5sEpvQ5YRQg==", + "dev": true, + "requires": { + "@turf/helpers": "^6.5.0", + "@turf/invariant": "^6.5.0", + "polygon-clipping": "^0.15.3" + } + }, + "@turf/invariant": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/invariant/-/invariant-6.5.0.tgz", + "integrity": "sha512-Wv8PRNCtPD31UVbdJE/KVAWKe7l6US+lJItRR/HOEW3eh+U/JwRCSUl/KZ7bmjM/C+zLNoreM2TU6OoLACs4eg==", + "dev": true, + "requires": { + "@turf/helpers": "^6.5.0" + } + }, + "@turf/kinks": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/@turf/kinks/-/kinks-6.0.0.tgz", + "integrity": "sha512-X2xk3+Sr9aeu51t1vBa7Iwowvjxcbl5fePLIo/dDOU4j5WeFoqGCto+DdEHQcC3y8HVUin4i8GaHVaM9sVTphg==", + "dev": true, + "requires": { + "@turf/helpers": "6.x" + } + }, + "@turf/line-intersect": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/line-intersect/-/line-intersect-6.5.0.tgz", + "integrity": "sha512-CS6R1tZvVQD390G9Ea4pmpM6mJGPWoL82jD46y0q1KSor9s6HupMIo1kY4Ny+AEYQl9jd21V3Scz20eldpbTVA==", + "dev": true, + "requires": { + "@turf/helpers": "^6.5.0", + "@turf/invariant": "^6.5.0", + "@turf/line-segment": "^6.5.0", + "@turf/meta": "^6.5.0", + "geojson-rbush": "3.x" + } + }, + "@turf/line-segment": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/line-segment/-/line-segment-6.5.0.tgz", + "integrity": "sha512-jI625Ho4jSuJESNq66Mmi290ZJ5pPZiQZruPVpmHkUw257Pew0alMmb6YrqYNnLUuiVVONxAAKXUVeeUGtycfw==", + "dev": true, + "requires": { + "@turf/helpers": "^6.5.0", + "@turf/invariant": "^6.5.0", + "@turf/meta": "^6.5.0" + } + }, + "@turf/meta": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/meta/-/meta-6.5.0.tgz", + "integrity": "sha512-RrArvtsV0vdsCBegoBtOalgdSOfkBrTJ07VkpiCnq/491W67hnMWmDu7e6Ztw0C3WldRYTXkg3SumfdzZxLBHA==", + "dev": true, + "requires": { + "@turf/helpers": "^6.5.0" + } + }, + "@turf/point-to-line-distance": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/point-to-line-distance/-/point-to-line-distance-6.5.0.tgz", + "integrity": "sha512-opHVQ4vjUhNBly1bob6RWy+F+hsZDH9SA0UW36pIRzfpu27qipU18xup0XXEePfY6+wvhF6yL/WgCO2IbrLqEA==", + "dev": true, + "requires": { + "@turf/bearing": "^6.5.0", + "@turf/distance": "^6.5.0", + "@turf/helpers": "^6.5.0", + "@turf/invariant": "^6.5.0", + "@turf/meta": "^6.5.0", + "@turf/projection": "^6.5.0", + "@turf/rhumb-bearing": "^6.5.0", + "@turf/rhumb-distance": "^6.5.0" + } + }, + "@turf/polygon-to-line": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/polygon-to-line/-/polygon-to-line-6.5.0.tgz", + "integrity": "sha512-5p4n/ij97EIttAq+ewSnKt0ruvuM+LIDzuczSzuHTpq4oS7Oq8yqg5TQ4nzMVuK41r/tALCk7nAoBuw3Su4Gcw==", + "dev": true, + "requires": { + "@turf/helpers": "^6.5.0", + "@turf/invariant": "^6.5.0" + } + }, + "@turf/projection": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/projection/-/projection-6.5.0.tgz", + "integrity": "sha512-/Pgh9mDvQWWu8HRxqpM+tKz8OzgauV+DiOcr3FCjD6ubDnrrmMJlsf6fFJmggw93mtVPrZRL6yyi9aYCQBOIvg==", + "dev": true, + "requires": { + "@turf/clone": "^6.5.0", + "@turf/helpers": "^6.5.0", + "@turf/meta": "^6.5.0" + } + }, + "@turf/rhumb-bearing": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/rhumb-bearing/-/rhumb-bearing-6.5.0.tgz", + "integrity": "sha512-jMyqiMRK4hzREjQmnLXmkJ+VTNTx1ii8vuqRwJPcTlKbNWfjDz/5JqJlb5NaFDcdMpftWovkW5GevfnuzHnOYA==", + "dev": true, + "requires": { + "@turf/helpers": "^6.5.0", + "@turf/invariant": "^6.5.0" + } + }, + "@turf/rhumb-distance": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/rhumb-distance/-/rhumb-distance-6.5.0.tgz", + "integrity": "sha512-oKp8KFE8E4huC2Z1a1KNcFwjVOqa99isxNOwfo4g3SUABQ6NezjKDDrnvC4yI5YZ3/huDjULLBvhed45xdCrzg==", + "dev": true, + "requires": { + "@turf/helpers": "^6.5.0", + "@turf/invariant": "^6.5.0" + } + }, + "@types/babel__core": { + "version": "7.1.20", + "dev": true, + "requires": { + "@babel/parser": "^7.1.0", + "@babel/types": "^7.0.0", + "@types/babel__generator": "*", + "@types/babel__template": "*", + "@types/babel__traverse": "*" + } + }, + "@types/babel__generator": { + "version": "7.6.4", + "dev": true, + "requires": { + "@babel/types": "^7.0.0" + } + }, + "@types/babel__template": { + "version": "7.4.1", + "dev": true, + "requires": { + "@babel/parser": "^7.1.0", + "@babel/types": "^7.0.0" + } + }, + "@types/babel__traverse": { + "version": "7.18.3", + "dev": true, + "requires": { + "@babel/types": "^7.3.0" + } + }, + "@types/babel-types": { + "version": "7.0.11", + "resolved": "https://registry.npmjs.org/@types/babel-types/-/babel-types-7.0.11.tgz", + "integrity": "sha512-pkPtJUUY+Vwv6B1inAz55rQvivClHJxc9aVEPPmaq2cbyeMLCiDpbKpcKyX4LAwpNGi+SHBv0tHv6+0gXv0P2A==", + "dev": true + }, + "@types/babylon": { + "version": "6.16.6", + "resolved": "https://registry.npmjs.org/@types/babylon/-/babylon-6.16.6.tgz", + "integrity": "sha512-G4yqdVlhr6YhzLXFKy5F7HtRBU8Y23+iWy7UKthMq/OSQnL1hbsoeXESQ2LY8zEDlknipDG3nRGhUC9tkwvy/w==", + "dev": true, + "requires": { + "@types/babel-types": "*" + } + }, + "@types/body-parser": { + "version": "1.19.2", + "resolved": "https://registry.npmjs.org/@types/body-parser/-/body-parser-1.19.2.tgz", + "integrity": "sha512-ALYone6pm6QmwZoAgeyNksccT9Q4AWZQ6PvfwR37GT6r6FWUPguq6sUmNGSMV2Wr761oQoBxwGGa6DR5o1DC9g==", + "dev": true, + "requires": { + "@types/connect": "*", + "@types/node": "*" + } + }, + "@types/connect": { + "version": "3.4.35", + "resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.35.tgz", + "integrity": "sha512-cdeYyv4KWoEgpBISTxWvqYsVy444DOqehiF3fM3ne10AmJ62RSyNkUnxMJXHQWRQQX2eR94m5y1IZyDwBjV9FQ==", + "dev": true, + "requires": { + "@types/node": "*" + } + }, + "@types/express": { + "version": "4.17.17", + "resolved": "https://registry.npmjs.org/@types/express/-/express-4.17.17.tgz", + "integrity": "sha512-Q4FmmuLGBG58btUnfS1c1r/NQdlp3DMfGDGig8WhfpA2YRUtEkxAjkZb0yvplJGYdF1fsQ81iMDcH24sSCNC/Q==", + "dev": true, + "requires": { + "@types/body-parser": "*", + "@types/express-serve-static-core": "^4.17.33", + "@types/qs": "*", + "@types/serve-static": "*" + } + }, + "@types/express-serve-static-core": { + "version": "4.17.33", + "resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.17.33.tgz", + "integrity": "sha512-TPBqmR/HRYI3eC2E5hmiivIzv+bidAfXofM+sbonAGvyDhySGw9/PQZFt2BLOrjUUR++4eJVpx6KnLQK1Fk9tA==", + "dev": true, + "requires": { + "@types/node": "*", + "@types/qs": "*", + "@types/range-parser": "*" + } + }, + "@types/geojson": { + "version": "7946.0.10" + }, + "@types/glob": { + "version": "7.2.0", + "dev": true, + "requires": { + "@types/minimatch": "*", + "@types/node": "*" + } + }, + "@types/graceful-fs": { + "version": "4.1.5", + "dev": true, + "requires": { + "@types/node": "*" + } + }, + "@types/istanbul-lib-coverage": { + "version": "2.0.4", + "dev": true + }, + "@types/istanbul-lib-report": { + "version": "3.0.0", + "dev": true, + "requires": { + "@types/istanbul-lib-coverage": "*" + } + }, + "@types/istanbul-reports": { + "version": "3.0.1", + "dev": true, + "requires": { + "@types/istanbul-lib-report": "*" + } + }, + "@types/jest": { + "version": "26.0.24", + "dev": true, + "requires": { + "jest-diff": "^26.0.0", + "pretty-format": "^26.0.0" + } + }, + "@types/json-schema": { + "version": "7.0.11", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.11.tgz", + "integrity": "sha512-wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ==", + "dev": true + }, + "@types/ldapjs": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/@types/ldapjs/-/ldapjs-1.0.11.tgz", + "integrity": "sha512-O4D1frY6xy2mQr5WouNPeltMe5EHdmU4FxbLDC6TMDX5HXOuafusGu+7Y9WAoqBaYHZ5hcFa7jfkpggyexfeXQ==", + "dev": true, + "requires": { + "@types/node": "*" + } + }, + "@types/mime": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@types/mime/-/mime-3.0.1.tgz", + "integrity": "sha512-Y4XFY5VJAuw0FgAqPNd6NNoV44jbq9Bz2L7Rh/J6jLTiHBSBJa9fxqQIvkIld4GsoDOcCbvzOUAbLPsSKKg+uA==", + "dev": true + }, + "@types/mime-types": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/@types/mime-types/-/mime-types-2.1.1.tgz", + "integrity": "sha512-vXOTGVSLR2jMw440moWTC7H19iUyLtP3Z1YTj7cSsubOICinjMxFeb/V57v9QdyyPGbbWolUFSSmSiRSn94tFw==", + "dev": true + }, + "@types/minimatch": { + "version": "5.1.2", + "dev": true + }, + "@types/minimist": { + "version": "1.2.2", + "dev": true + }, + "@types/node": { + "version": "18.11.9", + "dev": true + }, + "@types/normalize-package-data": { + "version": "2.4.1", + "dev": true + }, + "@types/passport": { + "version": "1.0.12", + "resolved": "https://registry.npmjs.org/@types/passport/-/passport-1.0.12.tgz", + "integrity": "sha512-QFdJ2TiAEoXfEQSNDISJR1Tm51I78CymqcBa8imbjo6dNNu+l2huDxxbDEIoFIwOSKMkOfHEikyDuZ38WwWsmw==", + "dev": true, + "requires": { + "@types/express": "*" + } + }, + "@types/prettier": { + "version": "2.7.1", + "dev": true + }, + "@types/proj4": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/@types/proj4/-/proj4-2.5.2.tgz", + "integrity": "sha512-/Nmfn9p08yaYw6xo5f2b0L+2oHk2kZeOkp5v+4VCeNfq+ETlLQbmHmC97/pjDIEZy8jxwz7pdPpwNzDHM5cuJw==", + "dev": true + }, + "@types/qs": { + "version": "6.9.7", + "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.7.tgz", + "integrity": "sha512-FGa1F62FT09qcrueBA6qYTrJPVDzah9a+493+o2PCXsesWHIn27G98TsSMs3WPNbZIEj4+VJf6saSFpvD+3Zsw==", + "dev": true + }, + "@types/range-parser": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/@types/range-parser/-/range-parser-1.2.4.tgz", + "integrity": "sha512-EEhsLsD6UsDM1yFhAvy0Cjr6VwmpMWqFBCb9w07wVugF7w9nfajxLuVmngTIpgS6svCnm6Vaw+MZhoDCKnOfsw==", + "dev": true + }, + "@types/serve-static": { + "version": "1.15.1", + "resolved": "https://registry.npmjs.org/@types/serve-static/-/serve-static-1.15.1.tgz", + "integrity": "sha512-NUo5XNiAdULrJENtJXZZ3fHtfMolzZwczzBbnAeBbqBwG+LaG6YaJtuwzwGSQZ2wsCrxjEhNNjAkKigy3n8teQ==", + "dev": true, + "requires": { + "@types/mime": "*", + "@types/node": "*" + } + }, + "@types/stack-utils": { + "version": "2.0.1", + "dev": true + }, + "@types/webidl-conversions": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@types/webidl-conversions/-/webidl-conversions-7.0.0.tgz", + "integrity": "sha512-xTE1E+YF4aWPJJeUzaZI5DRntlkY3+BCVJi0axFptnjGmAoWxkyREIh/XMrfxVLejwQxMCfDXdICo0VLxThrog==", + "dev": true + }, + "@types/whatwg-url": { + "version": "8.2.2", + "resolved": "https://registry.npmjs.org/@types/whatwg-url/-/whatwg-url-8.2.2.tgz", + "integrity": "sha512-FtQu10RWgn3D9U4aazdwIE2yzphmTJREDqNdODHrbrZmmMqI0vMheC/6NE/J1Yveaj8H+ela+YwWTjq5PGmuhA==", + "dev": true, + "requires": { + "@types/node": "*", + "@types/webidl-conversions": "*" + } + }, + "@types/yargs": { + "version": "15.0.14", + "dev": true, + "requires": { + "@types/yargs-parser": "*" + } + }, + "@types/yargs-parser": { + "version": "21.0.0", + "dev": true + }, + "@xmldom/xmldom": { + "version": "0.7.10", + "resolved": "https://registry.npmjs.org/@xmldom/xmldom/-/xmldom-0.7.10.tgz", + "integrity": "sha512-hb9QhOg5MGmpVkFcoZ9XJMe1em5gd0e2eqqjK87O1dwULedXsnY/Zg/Ju6lcohA+t6jVkmKpe7I1etqhvdRdrQ==", + "dev": true + }, + "abab": { + "version": "2.0.6", + "dev": true + }, + "accepts": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz", + "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==", + "dev": true, + "requires": { + "mime-types": "~2.1.34", + "negotiator": "0.6.3" + } + }, + "acorn": { + "version": "8.8.1", + "dev": true + }, + "acorn-globals": { + "version": "6.0.0", + "dev": true, + "requires": { + "acorn": "^7.1.1", + "acorn-walk": "^7.1.1" + }, + "dependencies": { + "acorn": { + "version": "7.4.1", "dev": true - }, - "typescript": { - "version": "3.8.3", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-3.8.3.tgz", - "integrity": "sha512-MYlEfn5VrLNsgudQTVJeNaQFUAI7DkhnOjdpAp4T+ku1TfQClewlbSuTVHiA+8skNBgaf02TL/kLOvig4y3G8w==" - }, - "uglify-js": { - "version": "2.8.29", - "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-2.8.29.tgz", - "integrity": "sha1-KcVzMUgFe7Th913zW3qcty5qWd0=", - "dev": true, - "requires": { - "source-map": "~0.5.1", - "uglify-to-browserify": "~1.0.0", - "yargs": "~3.10.0" - }, - "dependencies": { - "source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", - "dev": true - } - } - }, - "uglify-to-browserify": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/uglify-to-browserify/-/uglify-to-browserify-1.0.2.tgz", - "integrity": "sha1-bgkk1r2mta/jSeOabWMoUKD4grc=", - "dev": true, - "optional": true - }, - "uid-safe": { - "version": "2.1.5", - "resolved": "https://registry.npmjs.org/uid-safe/-/uid-safe-2.1.5.tgz", - "integrity": "sha512-KPHm4VL5dDXKz01UuEd88Df+KzynaohSL9fBh096KWAxSKZQDI2uBrVqtvRM4rwrIrRRKsdLNML/lnaaVSRioA==", + } + } + }, + "acorn-walk": { + "version": "7.2.0", + "dev": true + }, + "adm-zip": { + "version": "0.4.9", + "resolved": "https://registry.npmjs.org/adm-zip/-/adm-zip-0.4.9.tgz", + "integrity": "sha512-eknaJ3Io/JasGGinVeqY5TsPlQgHbiNlHnK5zdFPRNs9XRggDykKz8zPesneOMEZJxWji7G3CfsUW0Ds9Dw0Bw==", + "dev": true + }, + "agent-base": { + "version": "6.0.2", + "dev": true, + "requires": { + "debug": "4" + } + }, + "aggregate-error": { + "version": "3.1.0", + "dev": true, + "requires": { + "clean-stack": "^2.0.0", + "indent-string": "^4.0.0" + } + }, + "align-text": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/align-text/-/align-text-0.1.4.tgz", + "integrity": "sha512-GrTZLRpmp6wIC2ztrWW9MjjTgSKccffgFagbNDOX95/dcjEcYZibYTeaOntySQLcdw1ztBoFkviiUvTMbb9MYg==", + "dev": true, + "requires": { + "kind-of": "^3.0.2", + "longest": "^1.0.1", + "repeat-string": "^1.5.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", "dev": true, "requires": { - "random-bytes": "~1.0.0" - } - }, - "uid2": { - "version": "0.0.4", - "resolved": "https://registry.npmjs.org/uid2/-/uid2-0.0.4.tgz", - "integrity": "sha512-IevTus0SbGwQzYh3+fRsAMTVVPOoIVufzacXcHPmdlle1jUpq7BRL+mw3dgeLanvGZdwwbWhRV6XrcFNdBmjWA==" - }, - "unbox-primitive": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.1.tgz", - "integrity": "sha512-tZU/3NqK3dA5gpE1KtyiJUrEB0lxnGkMFHptJ7q6ewdZ8s12QrODwNbhIJStmJkd1QDXa1NRA8aF2A1zk/Ypyw==", - "requires": { - "function-bind": "^1.1.1", - "has-bigints": "^1.0.1" - } - }, - "underscore": { - "version": "1.8.3", - "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.8.3.tgz", - "integrity": "sha1-Tz+1OxBuYJf8+ctBCfKl6b36UCI=", - "dev": true - }, - "union-value": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/union-value/-/union-value-1.0.1.tgz", - "integrity": "sha512-tJfXmxMeWYnczCVs7XAEvIV7ieppALdyepWMkHkwciRpZraG/xwT+s2JN8+pr1+8jCRf80FFzvr+MpQeeoF4Xg==", - "requires": { - "arr-union": "^3.1.0", - "get-value": "^2.0.6", - "is-extendable": "^0.1.1", - "set-value": "^2.0.1" + "is-buffer": "^1.1.5" } - }, - "uniqid": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/uniqid/-/uniqid-5.2.0.tgz", - "integrity": "sha512-LH8zsvwJ/GL6YtNfSOmMCrI9piraAUjBfw2MCvleNE6a4pVKJwXjG2+HWhkVeFcSg+nmaPKbMrMOoxwQluZ1Mg==", - "dev": true - }, - "universalify": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", - "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", - "dev": true - }, - "unpipe": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", - "integrity": "sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw=", + } + } + }, + "ansi-escapes": { + "version": "4.3.2", + "dev": true, + "requires": { + "type-fest": "^0.21.3" + } + }, + "ansi-regex": { + "version": "5.0.1", + "dev": true + }, + "ansi-styles": { + "version": "4.3.0", + "dev": true, + "requires": { + "color-convert": "^2.0.1" + } + }, + "anymatch": { + "version": "3.1.3", + "dev": true, + "requires": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + } + }, + "append-field": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/append-field/-/append-field-1.0.0.tgz", + "integrity": "sha512-klpgFSWLW1ZEs8svjfb7g4qWY0YS5imI82dTg+QahUvJ8YqAY0P10Uk8tTyh9ZGuYEZEMaeJYCF5BFuX552hsw==", + "dev": true + }, + "aproba": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", + "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==", + "dev": true, + "optional": true + }, + "archiver": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/archiver/-/archiver-5.3.0.tgz", + "integrity": "sha512-iUw+oDwK0fgNpvveEsdQ0Ase6IIKztBJU2U0E9MzszMfmVVUyv1QJhS2ITW9ZCqx8dktAxVAjWWkKehuZE8OPg==", + "dev": true, + "requires": { + "archiver-utils": "^2.1.0", + "async": "^3.2.0", + "buffer-crc32": "^0.2.1", + "readable-stream": "^3.6.0", + "readdir-glob": "^1.0.0", + "tar-stream": "^2.2.0", + "zip-stream": "^4.1.0" + }, + "dependencies": { + "async": { + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/async/-/async-3.2.4.tgz", + "integrity": "sha512-iAB+JbDEGXhyIUavoDl9WP/Jj106Kz9DEn1DPgYw5ruDn0e3Wgi3sKFm55sASdGBNOQB8F59d9qQ7deqrHA8wQ==", "dev": true - }, - "unset-value": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/unset-value/-/unset-value-1.0.0.tgz", - "integrity": "sha1-g3aHP30jNRef+x5vw6jtDfyKtVk=", - "requires": { - "has-value": "^0.3.1", - "isobject": "^3.0.0" - }, - "dependencies": { - "has-value": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/has-value/-/has-value-0.3.1.tgz", - "integrity": "sha1-ex9YutpiyoJ+wKIHgCVlSEWZXh8=", - "requires": { - "get-value": "^2.0.3", - "has-values": "^0.1.4", - "isobject": "^2.0.0" - }, - "dependencies": { - "isobject": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz", - "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=", - "requires": { - "isarray": "1.0.0" - } - } - } - }, - "has-values": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/has-values/-/has-values-0.1.4.tgz", - "integrity": "sha1-bWHeldkd/Km5oCCJrThL/49it3E=" - } - } - }, - "uri-js": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.2.2.tgz", - "integrity": "sha512-KY9Frmirql91X2Qgjry0Wd4Y+YTdrdZheS8TFwvkbLWf/G5KNJDCh6pKL5OZctEW4+0Baa5idK2ZQuELRwPznQ==", - "requires": { - "punycode": "^2.1.0" - } - }, - "urix": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/urix/-/urix-0.1.0.tgz", - "integrity": "sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI=" - }, - "url-parse-lax": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-3.0.0.tgz", - "integrity": "sha1-FrXK/Afb42dsGxmZF3gj1lA6yww=", + } + } + }, + "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==", + "dev": true, + "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" + }, + "dependencies": { + "readable-stream": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", + "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", "dev": true, "requires": { - "prepend-http": "^2.0.0" - } - }, - "url-to-options": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/url-to-options/-/url-to-options-1.0.1.tgz", - "integrity": "sha1-FQWgOiiaSMvXpDTvuu7FBV9WM6k=", - "dev": true - }, - "use": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/use/-/use-3.1.1.tgz", - "integrity": "sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==" - }, - "util": { - "version": "0.12.2", - "resolved": "https://registry.npmjs.org/util/-/util-0.12.2.tgz", - "integrity": "sha512-XE+MkWQvglYa+IOfBt5UFG93EmncEMP23UqpgDvVZVFBPxwmkK10QRp6pgU4xICPnWRf/t0zPv4noYSUq9gqUQ==", - "requires": { - "inherits": "^2.0.3", - "is-arguments": "^1.0.4", - "is-generator-function": "^1.0.7", - "safe-buffer": "^5.1.2" - } - }, - "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": "3.4.0", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", - "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==" - }, - "v8-compile-cache": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.1.0.tgz", - "integrity": "sha512-usZBT3PW+LOjM25wbqIlZwPeJV+3OSz3M1k1Ws8snlW39dZyYL9lOGC5FgPVHfk0jKmjiDV8Z0mIbVQPiwFs7g==" - }, - "validate-npm-package-license": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", - "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", - "requires": { - "spdx-correct": "^3.0.0", - "spdx-expression-parse": "^3.0.0" + "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" } }, - "vary": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", - "integrity": "sha1-IpnwLG3tMNSllhsLn3RSShj2NPw=", + "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 }, - "vasync": { - "version": "1.6.4", - "resolved": "https://registry.npmjs.org/vasync/-/vasync-1.6.4.tgz", - "integrity": "sha1-3+k2Fq0OeugBszKp2Iv8XNyOHR8=", - "dev": true, - "requires": { - "verror": "1.6.0" - }, - "dependencies": { - "extsprintf": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.2.0.tgz", - "integrity": "sha1-WtlGwi9bMrp/jNdCZxHG6KP8JSk=", - "dev": true - }, - "verror": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/verror/-/verror-1.6.0.tgz", - "integrity": "sha1-fROyex+swuLakEBetepuW90lLqU=", - "dev": true, - "requires": { - "extsprintf": "1.2.0" - } - } - } - }, - "verror": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", - "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=", + "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": { - "assert-plus": "^1.0.0", - "core-util-is": "1.0.2", - "extsprintf": "^1.2.0" - }, - "dependencies": { - "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 - } + "safe-buffer": "~5.1.0" } - }, - "void-elements": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/void-elements/-/void-elements-2.0.1.tgz", - "integrity": "sha1-wGavtYK7HLQSjWDqkjkulNXp2+w=", - "dev": true - }, - "walk": { - "version": "2.3.4", - "resolved": "https://registry.npmjs.org/walk/-/walk-2.3.4.tgz", - "integrity": "sha1-Bs4VQVNTE+iswo6S60Jem2T0xQA=", + } + } + }, + "are-we-there-yet": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.7.tgz", + "integrity": "sha512-nxwy40TuMiUGqMyRHgCSWZ9FM4VAoRP4xUYSTv5ImRog+h9yISPbVH7H8fASCIzYn9wlEv4zvFL7uKDMCFQm3g==", + "dev": true, + "optional": true, + "requires": { + "delegates": "^1.0.0", + "readable-stream": "^2.0.6" + }, + "dependencies": { + "readable-stream": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", + "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", "dev": true, + "optional": true, "requires": { - "foreachasync": "3.x" + "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" } }, - "webfinger": { - "version": "0.4.2", - "resolved": "https://registry.npmjs.org/webfinger/-/webfinger-0.4.2.tgz", - "integrity": "sha1-NHem2XeZRhiWA5/P/GULc0aO520=", + "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, + "optional": true + }, + "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, + "optional": true, "requires": { - "step": "0.0.x", - "xml2js": "0.1.x" - }, - "dependencies": { - "xml2js": { - "version": "0.1.14", - "resolved": "https://registry.npmjs.org/xml2js/-/xml2js-0.1.14.tgz", - "integrity": "sha1-UnTmf1pkxfkpdM2FE54DMq3GuQw=", - "dev": true, - "requires": { - "sax": ">=0.1.1" - } - } + "safe-buffer": "~5.1.0" } - }, - "webidl-conversions": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", - "integrity": "sha1-JFNCdeKnvGvnvIZhHMFq4KVlSHE=" - }, - "webworkify": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/webworkify/-/webworkify-1.5.0.tgz", - "integrity": "sha512-AMcUeyXAhbACL8S2hqqdqOLqvJ8ylmIbNwUIqQujRSouf4+eUFaXbG6F1Rbu+srlJMmxQWsiU7mOJi0nMBfM1g==", + } + } + }, + "argparse": { + "version": "1.0.10", + "dev": true, + "requires": { + "sprintf-js": "~1.0.2" + } + }, + "arr-diff": { + "version": "4.0.0", + "dev": true + }, + "arr-flatten": { + "version": "1.1.0", + "dev": true + }, + "arr-union": { + "version": "3.1.0", + "dev": true + }, + "array-flatten": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", + "integrity": "sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==", + "dev": true + }, + "array-parallel": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/array-parallel/-/array-parallel-0.1.3.tgz", + "integrity": "sha512-TDPTwSWW5E4oiFiKmz6RGJ/a80Y91GuLgUYuLd49+XBS75tYo8PNgaT2K/OxuQYqkoI852MDGBorg9OcUSTQ8w==", + "dev": true + }, + "array-series": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/array-series/-/array-series-0.1.5.tgz", + "integrity": "sha512-L0XlBwfx9QetHOsbLDrE/vh2t018w9462HM3iaFfxRiK83aJjAt/Ja3NMkOW7FICwWTlQBa3ZbL5FKhuQWkDrg==", + "dev": true + }, + "array-union": { + "version": "1.0.2", + "dev": true, + "requires": { + "array-uniq": "^1.0.1" + } + }, + "array-uniq": { + "version": "1.0.3", + "dev": true + }, + "array-unique": { + "version": "0.3.2", + "dev": true + }, + "arrify": { + "version": "2.0.1", + "dev": true + }, + "asap": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz", + "integrity": "sha512-BSHWgDSAiKs50o2Re8ppvp3seVHXSRM44cdSsT9FfNEUUZLOGWVCsiWaRPWM1Znn+mqZ1OfVZ3z3DWEzSp7hRA==", + "dev": true + }, + "asn1": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.3.tgz", + "integrity": "sha512-6i37w/+EhlWlGUJff3T/Q8u1RGmP5wgbiwYnOnbOqvtrPxT63/sYFyP9RcpxtxGymtfA075IvmOnL7ycNOWl3w==", + "dev": true + }, + "asn1.js": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-2.2.1.tgz", + "integrity": "sha512-x1HxYATfjnV+SrtHZR9rxzRvTgZaGAtT/nJB3TPmBxtoEVQVRPArNSzCA+1fVYlHYV/zmMLUJhtZVRcn7WMjfQ==", + "dev": true, + "requires": { + "bn.js": "^2.0.0", + "inherits": "^2.0.1", + "minimalistic-assert": "^1.0.0" + }, + "dependencies": { + "bn.js": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-2.2.0.tgz", + "integrity": "sha512-nlotTGN6qr+NpeCb8d5mdXR47r6GXiyoX4fEeqBF2u9wp/3XgzIwyftMX9TE+StQRJSOUJtyYr9MVk0rn2ftAg==", "dev": true - }, - "whatwg-url": { - "version": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", - "integrity": "sha1-lmRU6HZUYuN2RNNib2dCzotwll0=", + } + } + }, + "assert-plus": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", + "integrity": "sha512-NfJ4UzBCcQGLDlQq7nHxH+tv3kyZ0hHQqF5BO6J7tNJeP5do1llPr8dZ8zHonfhAu0PHAdMkSo+8o0wxg9lZWw==", + "dev": true + }, + "assign-symbols": { + "version": "1.0.0", + "dev": true + }, + "async": { + "version": "0.2.10", + "resolved": "https://registry.npmjs.org/async/-/async-0.2.10.tgz", + "integrity": "sha512-eAkdoKxU6/LkKDBzLpT+t6Ff5EtfSF4wx1WfJiPEEV7WNLnDaRXk0oVysiEPm262roaachGexwUv94WhSgN5TQ==", + "dev": true + }, + "async-lock": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/async-lock/-/async-lock-1.4.0.tgz", + "integrity": "sha512-coglx5yIWuetakm3/1dsX9hxCNox22h7+V80RQOu2XUUMidtArxKoZoOtHUPuR84SycKTXzgGzAUR5hJxujyJQ==", + "dev": true + }, + "asynckit": { + "version": "0.4.0", + "dev": true + }, + "atob": { + "version": "2.1.2", + "dev": true + }, + "babel-jest": { + "version": "26.6.3", + "dev": true, + "requires": { + "@jest/transform": "^26.6.2", + "@jest/types": "^26.6.2", + "@types/babel__core": "^7.1.7", + "babel-plugin-istanbul": "^6.0.0", + "babel-preset-jest": "^26.6.2", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.4", + "slash": "^3.0.0" + }, + "dependencies": { + "slash": { + "version": "3.0.0", + "dev": true + } + } + }, + "babel-plugin-istanbul": { + "version": "6.1.1", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0", + "@istanbuljs/load-nyc-config": "^1.0.0", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-instrument": "^5.0.4", + "test-exclude": "^6.0.0" + }, + "dependencies": { + "istanbul-lib-instrument": { + "version": "5.2.1", + "dev": true, "requires": { - "tr46": "~0.0.3", - "webidl-conversions": "^3.0.0" + "@babel/core": "^7.12.3", + "@babel/parser": "^7.14.7", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-coverage": "^3.2.0", + "semver": "^6.3.0" } - }, - "which": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", - "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + } + } + }, + "babel-plugin-jest-hoist": { + "version": "26.6.2", + "dev": true, + "requires": { + "@babel/template": "^7.3.3", + "@babel/types": "^7.3.3", + "@types/babel__core": "^7.0.0", + "@types/babel__traverse": "^7.0.6" + } + }, + "babel-preset-current-node-syntax": { + "version": "1.0.1", + "dev": true, + "requires": { + "@babel/plugin-syntax-async-generators": "^7.8.4", + "@babel/plugin-syntax-bigint": "^7.8.3", + "@babel/plugin-syntax-class-properties": "^7.8.3", + "@babel/plugin-syntax-import-meta": "^7.8.3", + "@babel/plugin-syntax-json-strings": "^7.8.3", + "@babel/plugin-syntax-logical-assignment-operators": "^7.8.3", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", + "@babel/plugin-syntax-numeric-separator": "^7.8.3", + "@babel/plugin-syntax-object-rest-spread": "^7.8.3", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.3", + "@babel/plugin-syntax-optional-chaining": "^7.8.3", + "@babel/plugin-syntax-top-level-await": "^7.8.3" + } + }, + "babel-preset-jest": { + "version": "26.6.2", + "dev": true, + "requires": { + "babel-plugin-jest-hoist": "^26.6.2", + "babel-preset-current-node-syntax": "^1.0.0" + } + }, + "babel-runtime": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz", + "integrity": "sha512-ITKNuq2wKlW1fJg9sSW52eepoYgZBggvOAHC0u/CYu/qxQ9EVzThCgR69BnSXLHjy2f7SY5zaQ4yt7H9ZVxY2g==", + "dev": true, + "requires": { + "core-js": "^2.4.0", + "regenerator-runtime": "^0.11.0" + } + }, + "babel-types": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-types/-/babel-types-6.26.0.tgz", + "integrity": "sha512-zhe3V/26rCWsEZK8kZN+HaQj5yQ1CilTObixFzKW1UWjqG7618Twz6YEsCnjfg5gBcJh02DrpCkS9h98ZqDY+g==", + "dev": true, + "requires": { + "babel-runtime": "^6.26.0", + "esutils": "^2.0.2", + "lodash": "^4.17.4", + "to-fast-properties": "^1.0.3" + }, + "dependencies": { + "to-fast-properties": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-1.0.3.tgz", + "integrity": "sha512-lxrWP8ejsq+7E3nNjwYmUBMAgjMTZoTI+sdBOpvNyijeDLa29LUn9QaoXAHv4+Z578hbmHHJKZknzxVtvo77og==", + "dev": true + } + } + }, + "babylon": { + "version": "6.18.0", + "resolved": "https://registry.npmjs.org/babylon/-/babylon-6.18.0.tgz", + "integrity": "sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==", + "dev": true + }, + "backoff": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/backoff/-/backoff-2.5.0.tgz", + "integrity": "sha512-wC5ihrnUXmR2douXmXLCe5O3zg3GKIyvRi/hi58a/XyRxVI+3/yM0PYueQOZXPXQ9pxBislYkw+sF9b7C/RuMA==", + "dev": true, + "requires": { + "precond": "0.2" + } + }, + "balanced-match": { + "version": "1.0.2", + "dev": true + }, + "base": { + "version": "0.11.2", + "dev": true, + "requires": { + "cache-base": "^1.0.1", + "class-utils": "^0.3.5", + "component-emitter": "^1.2.1", + "define-property": "^1.0.0", + "isobject": "^3.0.1", + "mixin-deep": "^1.2.0", + "pascalcase": "^0.1.1" + }, + "dependencies": { + "define-property": { + "version": "1.0.0", + "dev": true, "requires": { - "isexe": "^2.0.0" + "is-descriptor": "^1.0.0" } - }, - "which-boxed-primitive": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.1.tgz", - "integrity": "sha512-7BT4TwISdDGBgaemWU0N0OU7FeAEJ9Oo2P1PHRm/FCWoEi2VLWC9b6xvxAA3C/NMpxg3HXVgi0sMmGbNUbNepQ==", + } + } + }, + "base-64": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/base-64/-/base-64-1.0.0.tgz", + "integrity": "sha512-kwDPIFCGx0NZHog36dj+tHiwP4QMzsZ3AgMViUBKI0+V5n4U0ufTCUMhnQ04diaRI8EX/QcPfql7zlhZ7j4zgg==", + "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==", + "dev": true + }, + "base64url": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/base64url/-/base64url-3.0.1.tgz", + "integrity": "sha512-ir1UPr3dkwexU7FdV8qBBbNDRUhMmIekYMFZfi+C/sLNnRESKPl23nB9b2pltqfOQNnGzsDdId90AEtG5tCx4A==", + "dev": true + }, + "bcryptjs": { + "version": "2.4.3", + "resolved": "https://registry.npmjs.org/bcryptjs/-/bcryptjs-2.4.3.tgz", + "integrity": "sha512-V/Hy/X9Vt7f3BbPJEi8BdVFMByHi+jNXrYkW3huaybV/kQ0KJg0Y6PkEMbn+zeT+i+SiKZ/HMqJGIIt4LZDqNQ==", + "dev": true + }, + "better-sqlite3": { + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/better-sqlite3/-/better-sqlite3-7.4.1.tgz", + "integrity": "sha512-sk1kW3PsWE7W7G9qbi5TQxCROlQVR8YWlp4srbyrwN5DrLeamKfrm3JExwOiNSAYyJv8cw5/2HOfvF/ipZj4qg==", + "dev": true, + "optional": true, + "requires": { + "bindings": "^1.5.0", + "prebuild-install": "^6.0.1", + "tar": "^6.1.0" + } + }, + "bindings": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/bindings/-/bindings-1.5.0.tgz", + "integrity": "sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==", + "dev": true, + "optional": true, + "requires": { + "file-uri-to-path": "1.0.0" + } + }, + "bl": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz", + "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==", + "dev": true, + "requires": { + "buffer": "^5.5.0", + "inherits": "^2.0.4", + "readable-stream": "^3.4.0" + } + }, + "bluebird": { + "version": "3.7.2", + "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz", + "integrity": "sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==", + "dev": true + }, + "bn.js": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-3.3.0.tgz", + "integrity": "sha512-wRAI2v+ylbyIJ4FTTJKWcd9RqKhmTw2O6qB+Mj+CCuK0NH4vTcJx3DdTONglMhoO0tQGRTis5wmlG6OQC+k/kA==", + "dev": true + }, + "body-parser": { + "version": "1.18.3", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.18.3.tgz", + "integrity": "sha512-YQyoqQG3sO8iCmf8+hyVpgHHOv0/hCEFiS4zTGUwTA1HjAFX66wRcNQrVCeJq9pgESMRvUAOvSil5MJlmccuKQ==", + "dev": true, + "requires": { + "bytes": "3.0.0", + "content-type": "~1.0.4", + "debug": "2.6.9", + "depd": "~1.1.2", + "http-errors": "~1.6.3", + "iconv-lite": "0.4.23", + "on-finished": "~2.3.0", + "qs": "6.5.2", + "raw-body": "2.3.3", + "type-is": "~1.6.16" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, "requires": { - "is-bigint": "^1.0.0", - "is-boolean-object": "^1.0.0", - "is-number-object": "^1.0.3", - "is-string": "^1.0.4", - "is-symbol": "^1.0.2" + "ms": "2.0.0" } }, - "which-collection": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/which-collection/-/which-collection-1.0.1.tgz", - "integrity": "sha512-W8xeTUwaln8i3K/cY1nGXzdnVZlidBcagyNFtBdD5kxnb4TvGKR7FfSIS3mYpwWS1QUCutfKz8IY8RjftB0+1A==", + "iconv-lite": { + "version": "0.4.23", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.23.tgz", + "integrity": "sha512-neyTUVFtahjf0mB3dZT77u+8O0QB89jFdnBkd5P1JgYPbPaia3gXXOVL2fq8VyU2gMMD7SaN7QukTB/pmXYvDA==", + "dev": true, "requires": { - "is-map": "^2.0.1", - "is-set": "^2.0.1", - "is-weakmap": "^2.0.1", - "is-weakset": "^2.0.1" + "safer-buffer": ">= 2.1.2 < 3" } }, - "which-module": { + "ms": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", - "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=" - }, - "which-typed-array": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.2.tgz", - "integrity": "sha512-KT6okrd1tE6JdZAy3o2VhMoYPh3+J6EMZLyrxBQsZflI1QCZIxMrIYLkosd8Twf+YfknVIHmYQPgJt238p8dnQ==", - "requires": { - "available-typed-arrays": "^1.0.2", - "es-abstract": "^1.17.5", - "foreach": "^2.0.5", - "function-bind": "^1.1.1", - "has-symbols": "^1.0.1", - "is-typed-array": "^1.1.3" - }, - "dependencies": { - "es-abstract": { - "version": "1.17.5", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.17.5.tgz", - "integrity": "sha512-BR9auzDbySxOcfog0tLECW8l28eRGpDpU3Dm3Hp4q/N+VtLTmyj4EUN088XZWQDW/hzj6sYRDXeOFsaAODKvpg==", - "requires": { - "es-to-primitive": "^1.2.1", - "function-bind": "^1.1.1", - "has": "^1.0.3", - "has-symbols": "^1.0.1", - "is-callable": "^1.1.5", - "is-regex": "^1.0.5", - "object-inspect": "^1.7.0", - "object-keys": "^1.1.1", - "object.assign": "^4.1.0", - "string.prototype.trimleft": "^2.1.1", - "string.prototype.trimright": "^2.1.1" - } - } - } - }, - "wide-align": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.5.tgz", - "integrity": "sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true + } + } + }, + "bowser": { + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/bowser/-/bowser-2.11.0.tgz", + "integrity": "sha512-AlcaJBi/pqqJBIQ8U9Mcpc9i8Aqxn88Skv5d+xBX006BY5u8N3mGLHa5Lgppa7L/HfwgwLgZ6NYs+Ag6uUmJRA==", + "dev": true, + "optional": true + }, + "brace-expansion": { + "version": "1.1.11", + "dev": true, + "requires": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "braces": { + "version": "2.3.2", + "dev": true, + "requires": { + "arr-flatten": "^1.1.0", + "array-unique": "^0.3.2", + "extend-shallow": "^2.0.1", + "fill-range": "^4.0.0", + "isobject": "^3.0.1", + "repeat-element": "^1.1.2", + "snapdragon": "^0.8.1", + "snapdragon-node": "^2.0.1", + "split-string": "^3.0.2", + "to-regex": "^3.0.1" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", "dev": true, - "optional": true, "requires": { - "string-width": "^1.0.2 || 2 || 3 || 4" + "is-extendable": "^0.1.0" } }, - "window-size": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/window-size/-/window-size-0.1.0.tgz", - "integrity": "sha1-VDjNLqk7IC76Ohn+iIeu58lPnJ0=", + "is-extendable": { + "version": "0.1.1", + "dev": true + } + } + }, + "brorand": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz", + "integrity": "sha512-cKV8tMCEpQs4hK/ik71d6LrPOnpkpGBR0wzxqr68g2m/LB2GxVYQroAjMJZRVM1Y4BCjCKc3vAamxSzOY2RP+w==", + "dev": true + }, + "browser-process-hrtime": { + "version": "1.0.0", + "dev": true + }, + "browserify-aes": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz", + "integrity": "sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==", + "dev": true, + "requires": { + "buffer-xor": "^1.0.3", + "cipher-base": "^1.0.0", + "create-hash": "^1.1.0", + "evp_bytestokey": "^1.0.3", + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + } + }, + "browserslist": { + "version": "4.21.4", + "dev": true, + "requires": { + "caniuse-lite": "^1.0.30001400", + "electron-to-chromium": "^1.4.251", + "node-releases": "^2.0.6", + "update-browserslist-db": "^1.0.9" + } + }, + "bs-logger": { + "version": "0.2.6", + "dev": true, + "requires": { + "fast-json-stable-stringify": "2.x" + } + }, + "bser": { + "version": "2.1.1", + "dev": true, + "requires": { + "node-int64": "^0.4.0" + } + }, + "bson": { + "version": "4.7.2", + "resolved": "https://registry.npmjs.org/bson/-/bson-4.7.2.tgz", + "integrity": "sha512-Ry9wCtIZ5kGqkJoi6aD8KjxFZEx78guTQDnpXWiNthsxzrxAK/i8E6pCHAIZTbaEFWcOCvbecMukfK7XUvyLpQ==", + "dev": true, + "requires": { + "buffer": "^5.6.0" + } + }, + "buffer": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", + "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", + "dev": true, + "requires": { + "base64-js": "^1.3.1", + "ieee754": "^1.1.13" + } + }, + "buffer-crc32": { + "version": "0.2.13", + "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", + "integrity": "sha512-VO9Ht/+p3SN7SKWqcrgEzjGbRSJYTx+Q1pTQC0wrWqHx0vpJraQ6GtHx8tvcg1rlK1byhU5gccxgOgj7B0TDkQ==", + "dev": true + }, + "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": "sha512-zRpUiDwd/xk6ADqPMATG8vc9VPrkck7T07OIx0gnjmJAnHnTVXNQG3vfvWNuiZIkwu9KrKdA1iJKfsfTVxE6NA==", + "dev": true + }, + "buffer-from": { + "version": "1.1.2", + "dev": true + }, + "buffer-xor": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz", + "integrity": "sha512-571s0T7nZWK6vB67HI5dyUF7wXiNcfaPPPTl6zYCNApANjIvYJTg7hlud/+cJpdAhS7dVzqMLmfhfHR3rAcOjQ==", + "dev": true + }, + "bunyan": { + "version": "1.8.15", + "resolved": "https://registry.npmjs.org/bunyan/-/bunyan-1.8.15.tgz", + "integrity": "sha512-0tECWShh6wUysgucJcBAoYegf3JJoZWibxdqhTm7OHPeT42qdjkZ29QCMcKwbgU1kiH+auSIasNRXMLWXafXig==", + "dev": true, + "requires": { + "dtrace-provider": "~0.8", + "moment": "^2.19.3", + "mv": "~2", + "safe-json-stringify": "~1" + } + }, + "busboy": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/busboy/-/busboy-1.6.0.tgz", + "integrity": "sha512-8SFQbg/0hQ9xy3UNTB0YEnsNBbWfhf7RtnzpL7TkBiTBRfrQ9Fxcnz7VJsleJpyp6rVLvXiuORqjlHi5q+PYuA==", + "dev": true, + "requires": { + "streamsearch": "^1.1.0" + } + }, + "bytes": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz", + "integrity": "sha512-pMhOfFDPiv9t5jjIXkHosWmkSyQbvsgEVNkz0ERHbuLh2T/7j4Mqqpz523Fe8MVY89KC6Sh/QfS2sM+SjgFDcw==", + "dev": true + }, + "cache-base": { + "version": "1.0.1", + "dev": true, + "requires": { + "collection-visit": "^1.0.0", + "component-emitter": "^1.2.1", + "get-value": "^2.0.6", + "has-value": "^1.0.0", + "isobject": "^3.0.1", + "set-value": "^2.0.0", + "to-object-path": "^0.3.0", + "union-value": "^1.0.0", + "unset-value": "^1.0.0" + } + }, + "call-bind": { + "version": "1.0.2", + "dev": true, + "requires": { + "function-bind": "^1.1.1", + "get-intrinsic": "^1.0.2" + } + }, + "call-me-maybe": { + "version": "1.0.2", + "dev": true + }, + "callsites": { + "version": "3.1.0", + "dev": true + }, + "camelcase": { + "version": "5.3.1", + "dev": true + }, + "camelcase-keys": { + "version": "6.2.2", + "dev": true, + "requires": { + "camelcase": "^5.3.1", + "map-obj": "^4.0.0", + "quick-lru": "^4.0.1" + } + }, + "caniuse-lite": { + "version": "1.0.30001434", + "dev": true + }, + "capture-exit": { + "version": "2.0.0", + "dev": true, + "requires": { + "rsvp": "^4.8.4" + } + }, + "center-align": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/center-align/-/center-align-0.1.3.tgz", + "integrity": "sha512-Baz3aNe2gd2LP2qk5U+sDk/m4oSuwSDcBfayTCTBoWpfIGO5XFxPmjILQII4NGiZjD6DoDI6kf7gKaxkf7s3VQ==", + "dev": true, + "requires": { + "align-text": "^0.1.3", + "lazy-cache": "^1.0.3" + } + }, + "cfenv": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/cfenv/-/cfenv-1.0.3.tgz", + "integrity": "sha512-IG7zAVvo7XOBKv4eAcfBwqtO4SEGPTHss/Rl8ozG9HyE/ouaEBzw/TaPKZWL/ppu5/JRzZ5VOu8v6j0VldIIXg==", + "dev": true, + "requires": { + "js-yaml": "3.4.x", + "ports": "1.1.x", + "underscore": "1.8.x" + }, + "dependencies": { + "esprima": { + "version": "2.7.3", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-2.7.3.tgz", + "integrity": "sha512-OarPfz0lFCiW4/AV2Oy1Rp9qu0iusTKqykwTspGCZtPxmF81JR4MmIebvF1F9+UOKth2ZubLQ4XGGaU+hSn99A==", "dev": true }, - "winston": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/winston/-/winston-1.0.1.tgz", - "integrity": "sha1-TG9aEWfrxRasKbduTq24c8FSiaQ=", - "dev": true, - "requires": { - "async": "0.9.x", - "colors": "1.0.x", - "cycle": "1.0.x", - "eyes": "0.1.x", - "isstream": "0.1.x", - "pkginfo": "0.3.x", - "stack-trace": "0.0.x" - }, - "dependencies": { - "async": { - "version": "0.9.2", - "resolved": "https://registry.npmjs.org/async/-/async-0.9.2.tgz", - "integrity": "sha1-rqdNXmHB+JlhO/ZL2mbUx48v0X0=", - "dev": true - } - } - }, - "with": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/with/-/with-5.1.1.tgz", - "integrity": "sha1-+k2qktrzLE6pTtRTyB8EaGtXXf4=", + "js-yaml": { + "version": "3.4.6", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.4.6.tgz", + "integrity": "sha512-k9JCHDD9Hefc/S1BhsZTHO93mgZ6Z6VrGrZnGLf1pm1KAFhKjERum6v/4Exk8q9MkQyTRKIqlF+IM0BAPxLduw==", "dev": true, "requires": { - "acorn": "^3.1.0", - "acorn-globals": "^3.0.0" + "argparse": "^1.0.2", + "esprima": "^2.6.0", + "inherit": "^2.2.2" } - }, - "wkt-parser": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/wkt-parser/-/wkt-parser-1.3.2.tgz", - "integrity": "sha512-A26BOOo7sHAagyxG7iuRhnKMO7Q3mEOiOT4oGUmohtN/Li5wameeU4S6f8vWw6NADTVKljBs8bzA8JPQgSEMVQ==", - "dev": true - }, - "wkx": { - "version": "0.4.8", - "resolved": "https://registry.npmjs.org/wkx/-/wkx-0.4.8.tgz", - "integrity": "sha512-ikPXMM9IR/gy/LwiOSqWlSL3X/J5uk9EO2hHNRXS41eTLXaUFEVw9fn/593jW/tE5tedNg8YjT5HkCa4FqQZyQ==", + } + } + }, + "chalk": { + "version": "4.1.2", + "dev": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "char-regex": { + "version": "1.0.2", + "dev": true + }, + "character-parser": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/character-parser/-/character-parser-2.2.0.tgz", + "integrity": "sha512-+UqJQjFEFaTAs3bNsF2j2kEN1baG/zghZbdqoYEDxGZtJo9LBzl1A+m0D4n3qKx8N2FNv8/Xp6yV9mQmBuptaw==", + "dev": true, + "requires": { + "is-regex": "^1.0.3" + } + }, + "chardet": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz", + "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==", + "dev": true, + "optional": true + }, + "chownr": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", + "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==", + "dev": true, + "optional": true + }, + "ci-info": { + "version": "2.0.0", + "dev": true + }, + "cipher-base": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.4.tgz", + "integrity": "sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==", + "dev": true, + "requires": { + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + } + }, + "cjs-module-lexer": { + "version": "0.6.0", + "dev": true + }, + "class-utils": { + "version": "0.3.6", + "dev": true, + "requires": { + "arr-union": "^3.1.0", + "define-property": "^0.2.5", + "isobject": "^3.0.0", + "static-extend": "^0.1.1" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", "dev": true, "requires": { - "@types/node": "*" - }, - "dependencies": { - "@types/node": { - "version": "15.12.2", - "resolved": "https://registry.npmjs.org/@types/node/-/node-15.12.2.tgz", - "integrity": "sha512-zjQ69G564OCIWIOHSXyQEEDpdpGl+G348RAKY0XXy9Z5kU9Vzv1GMNnkar/ZJ8dzXB3COzD9Mo9NtRZ4xfgUww==", - "dev": true - } + "is-descriptor": "^0.1.0" } }, - "wms-capabilities": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/wms-capabilities/-/wms-capabilities-0.4.0.tgz", - "integrity": "sha512-dGe1SQ4GySIfsmGF+yk07QRsed0DgJJkPpimbmehE9nGXLqIGhbpi6pNk71YENqupLPSqcABDrKZ1UqepOhCyA==", + "is-accessor-descriptor": { + "version": "0.1.6", "dev": true, "requires": { - "minimist": "^1.2.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==" - }, - "wordwrap": { - "version": "0.0.2", - "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.2.tgz", - "integrity": "sha1-t5Zpu0LstAn4PVg8rVLKF+qhZD8=", - "dev": true - }, - "wrap-ansi": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-5.1.0.tgz", - "integrity": "sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q==", - "requires": { - "ansi-styles": "^3.2.0", - "string-width": "^3.0.0", - "strip-ansi": "^5.0.0" + "kind-of": "^3.0.2" }, "dependencies": { - "ansi-regex": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", - "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==" - }, - "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==", - "requires": { - "color-convert": "^1.9.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==", - "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=" - }, - "emoji-regex": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", - "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==" - }, - "is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=" - }, - "string-width": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", - "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", - "requires": { - "emoji-regex": "^7.0.1", - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^5.1.0" - } - }, - "strip-ansi": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", - "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "kind-of": { + "version": "3.2.2", + "dev": true, "requires": { - "ansi-regex": "^4.1.0" + "is-buffer": "^1.1.5" } } } }, - "wrappy": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" - }, - "write": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/write/-/write-1.0.3.tgz", - "integrity": "sha512-/lg70HAjtkUgWPVZhZcm+T4hkL8Zbtp1nFNOn3lRrxnlv50SRBv7cR7RqR+GMsd3hUXy9hWBo4CHTbFTcOYwig==", + "is-data-descriptor": { + "version": "0.1.4", + "dev": true, "requires": { - "mkdirp": "^0.5.1" + "kind-of": "^3.0.2" }, "dependencies": { - "minimist": { - "version": "1.2.6", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.6.tgz", - "integrity": "sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==" - }, - "mkdirp": { - "version": "0.5.6", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", - "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", + "kind-of": { + "version": "3.2.2", + "dev": true, "requires": { - "minimist": "^1.2.6" + "is-buffer": "^1.1.5" } } } }, - "write-file-atomic": { - "version": "2.4.3", - "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-2.4.3.tgz", - "integrity": "sha512-GaETH5wwsX+GcnzhPgKcKjJ6M2Cq3/iZp1WyY/X1CSqrW+jVNM9Y7D8EC2sM4ZG/V8wZlSniJnCKWPmBYAucRQ==", - "requires": { - "graceful-fs": "^4.1.11", - "imurmurhash": "^0.1.4", - "signal-exit": "^3.0.2" - } - }, - "wtfnode": { - "version": "https://registry.npmjs.org/wtfnode/-/wtfnode-0.8.1.tgz", - "integrity": "sha512-S7S7D8CGHVCtlTn1IWX+nEbxavpL9+fk3vk02RPZHiExyZFb9oKTTig3nEnMCL2yaJ4047V5lAkuulXuO2OsOw==" - }, - "xml-crypto": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/xml-crypto/-/xml-crypto-1.4.0.tgz", - "integrity": "sha512-K8FRdRxICVulK4WhiTUcJrRyAIJFPVOqxfurA3x/JlmXBTxy+SkEENF6GeRt7p/rB6WSOUS9g0gXNQw5n+407g==", - "dev": true, - "requires": { - "xmldom": "0.1.27", - "xpath": "0.0.27" - }, - "dependencies": { - "xmldom": { - "version": "0.1.27", - "resolved": "https://registry.npmjs.org/xmldom/-/xmldom-0.1.27.tgz", - "integrity": "sha1-1QH5ezvbQDr4757MIFcxh6rawOk=", - "dev": true - }, - "xpath": { - "version": "0.0.27", - "resolved": "https://registry.npmjs.org/xpath/-/xpath-0.0.27.tgz", - "integrity": "sha512-fg03WRxtkCV6ohClePNAECYsmpKKTv5L8y/X3Dn1hQrec3POx2jHZ/0P2qQ6HvsrU1BmeqXcof3NGGueG6LxwQ==", - "dev": true - } - } - }, - "xml-encryption": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/xml-encryption/-/xml-encryption-1.0.0.tgz", - "integrity": "sha512-xTqcgKPN3XOswvDPXrhtyvWZ96IFcO9Azv3vS060kOpBsK5T7OxbQDxb59bPLl4b4c2IgmSZC3kJB0n5WPr2Mw==", + "is-descriptor": { + "version": "0.1.6", "dev": true, "requires": { - "escape-html": "^1.0.3", - "node-forge": "^0.7.0", - "xmldom": "~0.1.15", - "xpath": "0.0.27" - }, - "dependencies": { - "node-forge": { - "version": "0.7.6", - "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-0.7.6.tgz", - "integrity": "sha512-sol30LUpz1jQFBjOKwbjxijiE3b6pjd74YwfD0fJOKPjF+fONKb2Yg8rYgS6+bK6VDl+/wfr4IYpC7jDzLUIfw==", - "dev": true - }, - "xpath": { - "version": "0.0.27", - "resolved": "https://registry.npmjs.org/xpath/-/xpath-0.0.27.tgz", - "integrity": "sha512-fg03WRxtkCV6ohClePNAECYsmpKKTv5L8y/X3Dn1hQrec3POx2jHZ/0P2qQ6HvsrU1BmeqXcof3NGGueG6LxwQ==", - "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" + "is-accessor-descriptor": "^0.1.6", + "is-data-descriptor": "^0.1.4", + "kind-of": "^5.0.0" } }, - "xmlbuilder": { - "version": "11.0.1", - "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-11.0.1.tgz", - "integrity": "sha512-fDlsI/kFEx7gLvbecc0/ohLG50fugQp8ryHzMTuW9vSa1GJ0XYWKnhsUx7oie3G98+r56aTQIUB4kht42R3JvA==" + "kind-of": { + "version": "5.1.0", + "dev": true + } + } + }, + "clean-css": { + "version": "4.2.4", + "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-4.2.4.tgz", + "integrity": "sha512-EJUDT7nDVFDvaQgAo2G/PJvxmp1o/c6iXLbswsBbUFXi1Nr+AjA2cKmfbKDMjMvzEe75g3P6JkaDDAKk96A85A==", + "dev": true, + "requires": { + "source-map": "~0.6.0" + } + }, + "clean-stack": { + "version": "2.2.0", + "dev": true + }, + "cli-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz", + "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", + "dev": true, + "optional": true, + "requires": { + "restore-cursor": "^3.1.0" + } + }, + "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==", + "dev": true, + "optional": true + }, + "cliui": { + "version": "6.0.0", + "dev": true, + "requires": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^6.2.0" + } + }, + "co": { + "version": "4.6.0", + "dev": true + }, + "code-point-at": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", + "integrity": "sha512-RpAVKQA5T63xEj6/giIbUEtZwJ4UFIc3ZtvEkiaUERylqe8xb5IvqcgOurZLahv93CLKfxcw5YI+DZcUBRyLXA==", + "dev": true, + "optional": true + }, + "coffeescript": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/coffeescript/-/coffeescript-2.7.0.tgz", + "integrity": "sha512-hzWp6TUE2d/jCcN67LrW1eh5b/rSDKQK6oD6VMLlggYVUUFexgTH9z3dNYihzX4RMhze5FTUsUmOXViJKFQR/A==", + "dev": true + }, + "collect-v8-coverage": { + "version": "1.0.1", + "dev": true + }, + "collection-visit": { + "version": "1.0.0", + "dev": true, + "requires": { + "map-visit": "^1.0.0", + "object-visit": "^1.0.0" + } + }, + "color-convert": { + "version": "2.0.1", + "dev": true, + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "dev": true + }, + "colors": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/colors/-/colors-1.0.3.tgz", + "integrity": "sha512-pFGrxThWcWQ2MsAz6RtgeWe4NK2kUE1WfsrvvlctdII745EW9I0yflqhe7++M5LEc7bV2c/9/5zc8sFcpL0Drw==", + "dev": true + }, + "combined-stream": { + "version": "1.0.8", + "dev": true, + "requires": { + "delayed-stream": "~1.0.0" + } + }, + "commander": { + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-8.3.0.tgz", + "integrity": "sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww==", + "dev": true + }, + "component-emitter": { + "version": "1.3.0", + "dev": true + }, + "compress-commons": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/compress-commons/-/compress-commons-4.1.1.tgz", + "integrity": "sha512-QLdDLCKNV2dtoTorqgxngQCMA+gWXkM/Nwu7FpeBhk/RdkzimqC3jueb/FDmaZeXh+uby1jkBqE3xArsLBE5wQ==", + "dev": true, + "requires": { + "buffer-crc32": "^0.2.13", + "crc32-stream": "^4.0.2", + "normalize-path": "^3.0.0", + "readable-stream": "^3.6.0" + } + }, + "concat-map": { + "version": "0.0.1", + "dev": true + }, + "concat-stream": { + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.5.2.tgz", + "integrity": "sha512-H6xsIBfQ94aESBG8jGHXQ7i5AEpy5ZeVaLDOisDICiTCKpqEfr34/KmTrspKQNoLKNu9gTkovlpQcUi630AKiQ==", + "dev": true, + "requires": { + "inherits": "~2.0.1", + "readable-stream": "~2.0.0", + "typedarray": "~0.0.5" + }, + "dependencies": { + "process-nextick-args": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-1.0.7.tgz", + "integrity": "sha512-yN0WQmuCX63LP/TMvAg31nvT6m4vDqJEiiv2CAZqWOGNWutc9DfDk1NPYYmKUFmaVM2UwDowH4u5AHWYP/jxKw==", + "dev": true }, - "xmlbuilder2": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/xmlbuilder2/-/xmlbuilder2-3.0.2.tgz", - "integrity": "sha512-h4MUawGY21CTdhV4xm3DG9dgsqyhDkZvVJBx88beqX8wJs3VgyGQgAn5VreHuae6unTQxh115aMK5InCVmOIKw==", + "readable-stream": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.0.6.tgz", + "integrity": "sha512-TXcFfb63BQe1+ySzsHZI/5v1aJPCShfqvWJ64ayNImXMsN1Cd0YGk/wm8KB7/OeessgPc9QvS9Zou8QTkFzsLw==", "dev": true, "requires": { - "@oozcitak/dom": "1.15.10", - "@oozcitak/infra": "1.0.8", - "@oozcitak/util": "8.3.8", - "@types/node": "*", - "js-yaml": "3.14.0" - }, - "dependencies": { - "@types/node": { - "version": "17.0.23", - "resolved": "https://registry.npmjs.org/@types/node/-/node-17.0.23.tgz", - "integrity": "sha512-UxDxWn7dl97rKVeVS61vErvw086aCYhDLyvRQZ5Rk65rZKepaFdm53GeqXaKBuOhED4e9uWq34IC3TdSdJJ2Gw==", - "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 - }, - "js-yaml": { - "version": "3.14.0", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.0.tgz", - "integrity": "sha512-/4IbIeHcD9VMHFqDR/gQ7EdZdLimOvW2DdcxFjdyyZ9NsbS+ccrXqVWDtab/lRl5AlUqmpBx8EhPaWR+OtY17A==", - "dev": true, - "requires": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" - } - } + "core-util-is": "~1.0.0", + "inherits": "~2.0.1", + "isarray": "~1.0.0", + "process-nextick-args": "~1.0.6", + "string_decoder": "~0.10.x", + "util-deprecate": "~1.0.1" } }, - "xmldom": { - "version": "0.1.22", - "resolved": "https://registry.npmjs.org/xmldom/-/xmldom-0.1.22.tgz", - "integrity": "sha1-EN5OXpZJgfA8jMcvrcCNFLbDqiY=", + "string_decoder": { + "version": "0.10.31", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", + "integrity": "sha512-ev2QzSzWPYmy9GuqfIVildA4OdcGLeFZQrq5ys6RtiuF+RQQiZWr8TZNyAcuVXyQRYfEO+MsoB/1BuQVhOJuoQ==", + "dev": true + } + } + }, + "console-control-strings": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", + "integrity": "sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ==", + "dev": true, + "optional": true + }, + "constantinople": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/constantinople/-/constantinople-3.1.2.tgz", + "integrity": "sha512-yePcBqEFhLOqSBtwYOGGS1exHo/s1xjekXiinh4itpNQGCu4KA1euPh1fg07N2wMITZXQkBz75Ntdt1ctGZouw==", + "dev": true, + "requires": { + "@types/babel-types": "^7.0.0", + "@types/babylon": "^6.16.2", + "babel-types": "^6.26.0", + "babylon": "^6.18.0" + } + }, + "content-disposition": { + "version": "0.5.4", + "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz", + "integrity": "sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==", + "dev": true, + "requires": { + "safe-buffer": "5.2.1" + } + }, + "content-type": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.5.tgz", + "integrity": "sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==", + "dev": true + }, + "convert-source-map": { + "version": "1.9.0", + "dev": true + }, + "cookie": { + "version": "0.4.2", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.2.tgz", + "integrity": "sha512-aSWTXFzaKWkvHO1Ny/s+ePFpvKsPnjc551iI41v3ny/ow6tBG5Vd+FuqGNhh1LxOmVzOlGUriIlOaokOvhaStA==", + "dev": true + }, + "cookie-signature": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", + "integrity": "sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==", + "dev": true + }, + "cookiejar": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/cookiejar/-/cookiejar-2.1.4.tgz", + "integrity": "sha512-LDx6oHrK+PhzLKJU9j5S7/Y3jM/mUHvD/DeI1WQmJn652iPC5Y4TBzC9l+5OMOXlyTTA+SmVUPm0HQUwpD5Jqw==", + "dev": true + }, + "copy-descriptor": { + "version": "0.1.1", + "dev": true + }, + "core-js": { + "version": "2.6.12", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.6.12.tgz", + "integrity": "sha512-Kb2wC0fvsWfQrgk8HU5lW6U/Lcs8+9aaYcy4ZFc6DDlo4nZ7n70dEgE5rtR0oG6ufKDUnrwfWL1mXR5ljDatrQ==", + "dev": true + }, + "core-util-is": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", + "integrity": "sha512-3lqz5YjWTYnW6dlDa5TLaTCcShfar1e40rmcJVwCBJC6mWlFuj0eCHIElmG1g5kyuJ/GD+8Wn4FFCcz4gJPfaQ==", + "dev": true + }, + "cp-file": { + "version": "7.0.0", + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "make-dir": "^3.0.0", + "nested-error-stacks": "^2.0.0", + "p-event": "^4.1.0" + } + }, + "cpy": { + "version": "8.1.2", + "dev": true, + "requires": { + "arrify": "^2.0.1", + "cp-file": "^7.0.0", + "globby": "^9.2.0", + "has-glob": "^1.0.0", + "junk": "^3.1.0", + "nested-error-stacks": "^2.1.0", + "p-all": "^2.1.0", + "p-filter": "^2.1.0", + "p-map": "^3.0.0" + } + }, + "cpy-cli": { + "version": "3.1.1", + "dev": true, + "requires": { + "cpy": "^8.0.0", + "meow": "^6.1.1" + } + }, + "crc-32": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/crc-32/-/crc-32-1.2.2.tgz", + "integrity": "sha512-ROmzCKrTnOwybPcJApAA6WBWij23HVfGVNKqqrZpuyZOHqK2CwHSvpGuyt/UNNvaIjEd8X5IFGp4Mh+Ie1IHJQ==", + "dev": true + }, + "crc32-stream": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/crc32-stream/-/crc32-stream-4.0.2.tgz", + "integrity": "sha512-DxFZ/Hk473b/muq1VJ///PMNLj0ZMnzye9thBpmjpJKCc5eMgB95aK8zCGrGfQ90cWo561Te6HK9D+j4KPdM6w==", + "dev": true, + "requires": { + "crc-32": "^1.2.0", + "readable-stream": "^3.4.0" + } + }, + "create-hash": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz", + "integrity": "sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==", + "dev": true, + "requires": { + "cipher-base": "^1.0.1", + "inherits": "^2.0.1", + "md5.js": "^1.3.4", + "ripemd160": "^2.0.1", + "sha.js": "^2.4.0" + } + }, + "create-hmac": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz", + "integrity": "sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==", + "dev": true, + "requires": { + "cipher-base": "^1.0.3", + "create-hash": "^1.1.0", + "inherits": "^2.0.1", + "ripemd160": "^2.0.0", + "safe-buffer": "^5.0.1", + "sha.js": "^2.4.8" + } + }, + "cross-spawn": { + "version": "7.0.3", + "dev": true, + "requires": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + } + }, + "cssom": { + "version": "0.4.4", + "dev": true + }, + "cssstyle": { + "version": "2.3.0", + "dev": true, + "requires": { + "cssom": "~0.3.6" + }, + "dependencies": { + "cssom": { + "version": "0.3.8", "dev": true - }, - "xpath": { - "version": "0.0.23", - "resolved": "https://registry.npmjs.org/xpath/-/xpath-0.0.23.tgz", - "integrity": "sha1-9ej9xr3H5yiFsyNPQMuiZpWAqvo=", + } + } + }, + "cycle": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/cycle/-/cycle-1.0.3.tgz", + "integrity": "sha512-TVF6svNzeQCOpjCqsy0/CSy8VgObG3wXusJ73xW2GbG5rGx7lC8zxDSURicsXI2UsGdi2L0QNRCi745/wUDvsA==", + "dev": true + }, + "dashdash": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", + "integrity": "sha512-jRFi8UDGo6j+odZiEpjazZaWqEal3w/basFjQHQEwVtZJGDpxbH1MeYluwCS8Xq5wmLJooDlMgvVarmWfGM44g==", + "dev": true, + "requires": { + "assert-plus": "^1.0.0" + } + }, + "data-urls": { + "version": "2.0.0", + "dev": true, + "requires": { + "abab": "^2.0.3", + "whatwg-mimetype": "^2.3.0", + "whatwg-url": "^8.0.0" + } + }, + "dbf": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/dbf/-/dbf-0.1.0.tgz", + "integrity": "sha512-wQE9VKjJyLus8f2Q1M5XRKLpBpERKAbMXRcdSKzvDuabyskRVrL/7oBdLFrG4ZNOzzFA6juXNcwCoM99E5jGLg==", + "dev": true, + "requires": { + "jdataview": "~2.4.4" + } + }, + "debug": { + "version": "4.3.4", + "dev": true, + "requires": { + "ms": "2.1.2" + } + }, + "decamelize": { + "version": "1.2.0", + "dev": true + }, + "decamelize-keys": { + "version": "1.1.1", + "dev": true, + "requires": { + "decamelize": "^1.1.0", + "map-obj": "^1.0.0" + }, + "dependencies": { + "map-obj": { + "version": "1.0.1", "dev": true - }, - "xtend": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", - "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==", + } + } + }, + "decimal.js": { + "version": "10.4.2", + "dev": true + }, + "decode-uri-component": { + "version": "0.2.0", + "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==", + "dev": true, + "optional": true, + "requires": { + "mimic-response": "^2.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==", + "dev": true, + "optional": true + }, + "deep-is": { + "version": "0.1.4", + "dev": true + }, + "deepmerge": { + "version": "4.2.2", + "dev": true + }, + "define-properties": { + "version": "1.1.4", + "dev": true, + "requires": { + "has-property-descriptors": "^1.0.0", + "object-keys": "^1.1.1" + } + }, + "define-property": { + "version": "2.0.2", + "dev": true, + "requires": { + "is-descriptor": "^1.0.2", + "isobject": "^3.0.1" + } + }, + "delayed-stream": { + "version": "1.0.0", + "dev": true + }, + "delegates": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", + "integrity": "sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ==", + "dev": true, + "optional": true + }, + "depd": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", + "integrity": "sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==", + "dev": true + }, + "destroy": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz", + "integrity": "sha512-3NdhDuEXnfun/z7x9GOElY49LoqVHoGScmOKwmxhsS8N5Y+Z8KyPPDnaSzqWgYt/ji4mqwfTS34Htrk0zPIXVg==", + "dev": true + }, + "detect-libc": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-1.0.3.tgz", + "integrity": "sha512-pGjwhsmsp4kL2RTz08wcOlGN83otlqHeD/Z5T8GXZB+/YcpQ/dgo+lbU8ZsGxV0HIvqqxo9l7mqYwyYMD9bKDg==", + "dev": true, + "optional": true + }, + "detect-newline": { + "version": "3.1.0", + "dev": true + }, + "dezalgo": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/dezalgo/-/dezalgo-1.0.4.tgz", + "integrity": "sha512-rXSP0bf+5n0Qonsb+SVVfNfIsimO4HEtmnIpPHY8Q1UCzKlQrDMfdobr8nJOOsRgWCyMRqeSBQzmWUMq7zvVig==", + "dev": true, + "requires": { + "asap": "^2.0.0", + "wrappy": "1" + } + }, + "dicer": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/dicer/-/dicer-0.2.5.tgz", + "integrity": "sha512-FDvbtnq7dzlPz0wyYlOExifDEZcu8h+rErEXgfxqmLfRfC/kJidEFh4+effJRO3P0xmfqyPbSMG0LveNRfTKVg==", + "dev": true, + "requires": { + "readable-stream": "1.1.x", + "streamsearch": "0.1.2" + }, + "dependencies": { + "isarray": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", + "integrity": "sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ==", "dev": true }, - "y18n": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.0.tgz", - "integrity": "sha512-r9S/ZyXu/Xu9q1tYlpsLIsa3EeLXXk0VwlxqTcFRfg9EhMW+17kbt9G0NrgCmhGb5vT2hyhJZLfDGx+7+5Uj/w==" - }, - "yallist": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", - "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=" - }, - "yaml": { - "version": "1.8.2", - "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.8.2.tgz", - "integrity": "sha512-omakb0d7FjMo3R1D2EbTKVIk6dAVLRxFXdLZMEUToeAvuqgG/YuHMuQOZ5fgk+vQ8cx+cnGKwyg+8g8PNT0xQg==", - "dev": true, - "requires": { - "@babel/runtime": "^7.8.7" - } - }, - "yargs": { - "version": "3.10.0", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-3.10.0.tgz", - "integrity": "sha1-9+572FfdfB0tOMDnTvvWgdFDH9E=", - "dev": true, - "requires": { - "camelcase": "^1.0.2", - "cliui": "^2.1.0", - "decamelize": "^1.0.0", - "window-size": "0.1.0" - } - }, - "yargs-parser": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-10.1.0.tgz", - "integrity": "sha512-VCIyR1wJoEBZUqk5PA+oOBF6ypbwh5aNB3I50guxAL/quggdfs4TtNHQrSazFA3fYZ+tEqfs0zIGlv0c/rgjbQ==", - "requires": { - "camelcase": "^4.1.0" - }, - "dependencies": { - "camelcase": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz", - "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=" - } - } - }, - "yargs-unparser": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/yargs-unparser/-/yargs-unparser-1.6.0.tgz", - "integrity": "sha512-W9tKgmSn0DpSatfri0nx52Joq5hVXgeLiqR/5G0sZNDoLZFOr/xjBUDcShCOGNsBnEMNo1KAMBkTej1Hm62HTw==", - "requires": { - "flat": "^4.1.0", - "lodash": "^4.17.15", - "yargs": "^13.3.0" - }, - "dependencies": { - "ansi-regex": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", - "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==" - }, - "camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==" - }, - "cliui": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-5.0.0.tgz", - "integrity": "sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA==", - "requires": { - "string-width": "^3.1.0", - "strip-ansi": "^5.2.0", - "wrap-ansi": "^5.1.0" - } - }, - "emoji-regex": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", - "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==" - }, - "find-up": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", - "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", - "requires": { - "locate-path": "^3.0.0" - } - }, - "is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=" - }, - "locate-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", - "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", - "requires": { - "p-locate": "^3.0.0", - "path-exists": "^3.0.0" - } - }, - "p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", - "requires": { - "p-try": "^2.0.0" - } - }, - "p-locate": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", - "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", - "requires": { - "p-limit": "^2.0.0" - } - }, - "p-try": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", - "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==" - }, - "string-width": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", - "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", - "requires": { - "emoji-regex": "^7.0.1", - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^5.1.0" - } - }, - "strip-ansi": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", - "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", - "requires": { - "ansi-regex": "^4.1.0" - } - }, - "yargs": { - "version": "13.3.2", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-13.3.2.tgz", - "integrity": "sha512-AX3Zw5iPruN5ie6xGRIDgqkT+ZhnRlZMLMHAs8tg7nRruy2Nb+i5o9bwghAogtM08q1dpr2LVoS8KSTMYpWXUw==", - "requires": { - "cliui": "^5.0.0", - "find-up": "^3.0.0", - "get-caller-file": "^2.0.1", - "require-directory": "^2.1.1", - "require-main-filename": "^2.0.0", - "set-blocking": "^2.0.0", - "string-width": "^3.0.0", - "which-module": "^2.0.0", - "y18n": "^4.0.0", - "yargs-parser": "^13.1.2" - } - }, - "yargs-parser": { - "version": "13.1.2", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.2.tgz", - "integrity": "sha512-3lbsNRf/j+A4QuSZfDRA7HRSfWrzO0YjqTJd5kjAq37Zep1CEgaYmrH9Q3GwPiB9cHyd1Y1UwggGhJGoxipbzg==", - "requires": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" - } - } - } - }, - "zip-stream": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/zip-stream/-/zip-stream-4.1.0.tgz", - "integrity": "sha512-zshzwQW7gG7hjpBlgeQP9RuyPGNxvJdzR8SUM3QhxCnLjWN2E7j3dOvpeDcQoETfHx0urRS7EtmVToql7YpU4A==", + "readable-stream": { + "version": "1.1.14", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz", + "integrity": "sha512-+MeVjFf4L44XUkhM1eYbD8fyEsxcV81pqMSR5gblfcLCHfZvbrqy4/qYHE+/R5HoBUT11WV5O08Cr1n3YXkWVQ==", "dev": true, "requires": { - "archiver-utils": "^2.1.0", - "compress-commons": "^4.1.0", - "readable-stream": "^3.6.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==", - "dev": true, - "requires": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - } - }, - "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==", - "dev": true - }, - "string_decoder": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", - "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", - "dev": true, - "requires": { - "safe-buffer": "~5.2.0" - } - } + "core-util-is": "~1.0.0", + "inherits": "~2.0.1", + "isarray": "0.0.1", + "string_decoder": "~0.10.x" } + }, + "streamsearch": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/streamsearch/-/streamsearch-0.1.2.tgz", + "integrity": "sha512-jos8u++JKm0ARcSUTAZXOVC0mSox7Bhn6sBgty73P1f3JGf7yG2clTbBNHUdde/kdvP2FESam+vM6l8jBrNxHA==", + "dev": true + }, + "string_decoder": { + "version": "0.10.31", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", + "integrity": "sha512-ev2QzSzWPYmy9GuqfIVildA4OdcGLeFZQrq5ys6RtiuF+RQQiZWr8TZNyAcuVXyQRYfEO+MsoB/1BuQVhOJuoQ==", + "dev": true } } }, - "@nodelib/fs.stat": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-1.1.3.tgz", - "integrity": "sha512-shAmDyaQC4H92APFoIaVDHCx5bStIocgvbwQyxPRrbUY20V1EYTbSDchWbuwlMG3V17cprZhA6+78JfB+3DTPw==", + "diff-sequences": { + "version": "26.6.2", "dev": true }, - "@sinonjs/commons": { - "version": "1.8.3", - "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.8.3.tgz", - "integrity": "sha512-xkNcLAn/wZaX14RPlwizcKicDk9G3F8m2nU3L7Ukm5zBgTwiT0wsoFAHx9Jq56fJA1z/7uKGtCRu16sOUCLIHQ==", + "dir-glob": { + "version": "2.2.2", "dev": true, "requires": { - "type-detect": "4.0.8" + "path-type": "^3.0.0" } }, - "@sinonjs/fake-timers": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-6.0.1.tgz", - "integrity": "sha512-MZPUxrmFubI36XS1DI3qmI0YdN1gks62JtFZvxR67ljjSNCeK6U08Zx4msEWOXuofgqUt6zPHSi1H9fbjR/NRA==", + "doctypes": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/doctypes/-/doctypes-1.1.0.tgz", + "integrity": "sha512-LLBi6pEqS6Do3EKQ3J0NqHWV5hhb78Pi8vvESYwyOy2c31ZEZVdtitdzsQsKb7878PEERhzUk0ftqGhG6Mz+pQ==", + "dev": true + }, + "domexception": { + "version": "2.0.1", "dev": true, "requires": { - "@sinonjs/commons": "^1.7.0" + "webidl-conversions": "^5.0.0" + }, + "dependencies": { + "webidl-conversions": { + "version": "5.0.0", + "dev": true + } } }, - "@tootallnate/once": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-1.1.2.tgz", - "integrity": "sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw==", + "dtrace-provider": { + "version": "0.8.8", + "resolved": "https://registry.npmjs.org/dtrace-provider/-/dtrace-provider-0.8.8.tgz", + "integrity": "sha512-b7Z7cNtHPhH9EJhNNbbeqTcXB8LGFFZhq1PGgEvpeHlzd36bhbdTWoE/Ba/YguqpBSlAPKnARWhVlhunCMwfxg==", + "dev": true, + "optional": true, + "requires": { + "nan": "^2.14.0" + } + }, + "duplexer": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/duplexer/-/duplexer-0.1.2.tgz", + "integrity": "sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg==", "dev": true }, - "@types/babel__core": { - "version": "7.1.19", - "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.1.19.tgz", - "integrity": "sha512-WEOTgRsbYkvA/KCsDwVEGkd7WAr1e3g31VHQ8zy5gul/V1qKullU/BU5I68X5v7V3GnB9eotmom4v5a5gjxorw==", + "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==", "dev": true, "requires": { - "@babel/parser": "^7.1.0", - "@babel/types": "^7.0.0", - "@types/babel__generator": "*", - "@types/babel__template": "*", - "@types/babel__traverse": "*" + "safe-buffer": "^5.0.1" } }, - "@types/babel__generator": { - "version": "7.6.4", - "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.6.4.tgz", - "integrity": "sha512-tFkciB9j2K755yrTALxD44McOrk+gfpIpvC3sxHjRawj6PfnQxrse4Clq5y/Rq+G3mrBurMax/lG8Qn2t9mSsg==", + "ee-first": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", + "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==", + "dev": true + }, + "electron-to-chromium": { + "version": "1.4.284", + "dev": true + }, + "elliptic": { + "version": "6.5.4", + "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.4.tgz", + "integrity": "sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ==", "dev": true, "requires": { - "@babel/types": "^7.0.0" + "bn.js": "^4.11.9", + "brorand": "^1.1.0", + "hash.js": "^1.0.0", + "hmac-drbg": "^1.0.1", + "inherits": "^2.0.4", + "minimalistic-assert": "^1.0.1", + "minimalistic-crypto-utils": "^1.0.1" + }, + "dependencies": { + "bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", + "dev": true + } } }, - "@types/babel__template": { - "version": "7.4.1", - "resolved": "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.4.1.tgz", - "integrity": "sha512-azBFKemX6kMg5Io+/rdGT0dkGreboUVR0Cdm3fz9QJWpaQGJRQXl7C+6hOTCZcMll7KFyEQpgbYI2lHdsS4U7g==", + "emittery": { + "version": "0.7.2", + "dev": true + }, + "emoji-regex": { + "version": "8.0.0", + "dev": true + }, + "encodeurl": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", + "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==", + "dev": true + }, + "end-of-stream": { + "version": "1.4.4", "dev": true, "requires": { - "@babel/parser": "^7.1.0", - "@babel/types": "^7.0.0" + "once": "^1.4.0" } }, - "@types/babel__traverse": { - "version": "7.17.0", - "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.17.0.tgz", - "integrity": "sha512-r8aveDbd+rzGP+ykSdF3oPuTVRWRfbBiHl0rVDM2yNEmSMXfkObQLV46b4RnCv3Lra51OlfnZhkkFaDl2MIRaA==", + "error-ex": { + "version": "1.3.2", "dev": true, "requires": { - "@babel/types": "^7.3.0" + "is-arrayish": "^0.2.1" } }, - "@types/color-name": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@types/color-name/-/color-name-1.1.1.tgz", - "integrity": "sha512-rr+OQyAjxze7GgWrSaJwydHStIhHq2lvY3BOC2Mj7KnzI7XK0Uw1TOOdI9lDoajEbSWLiYgoo4f1R51erQfhPQ==", + "es-abstract": { + "version": "1.20.4", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "es-to-primitive": "^1.2.1", + "function-bind": "^1.1.1", + "function.prototype.name": "^1.1.5", + "get-intrinsic": "^1.1.3", + "get-symbol-description": "^1.0.0", + "has": "^1.0.3", + "has-property-descriptors": "^1.0.0", + "has-symbols": "^1.0.3", + "internal-slot": "^1.0.3", + "is-callable": "^1.2.7", + "is-negative-zero": "^2.0.2", + "is-regex": "^1.1.4", + "is-shared-array-buffer": "^1.0.2", + "is-string": "^1.0.7", + "is-weakref": "^1.0.2", + "object-inspect": "^1.12.2", + "object-keys": "^1.1.1", + "object.assign": "^4.1.4", + "regexp.prototype.flags": "^1.4.3", + "safe-regex-test": "^1.0.0", + "string.prototype.trimend": "^1.0.5", + "string.prototype.trimstart": "^1.0.5", + "unbox-primitive": "^1.0.2" + } + }, + "es-to-primitive": { + "version": "1.2.1", + "dev": true, + "requires": { + "is-callable": "^1.1.4", + "is-date-object": "^1.0.1", + "is-symbol": "^1.0.2" + } + }, + "escalade": { + "version": "3.1.1", "dev": true }, - "@types/geojson": { - "version": "7946.0.7", - "resolved": "https://registry.npmjs.org/@types/geojson/-/geojson-7946.0.7.tgz", - "integrity": "sha512-wE2v81i4C4Ol09RtsWFAqg3BUitWbHSpSlIo+bNdsCJijO9sjme+zm+73ZMCa/qMC8UEERxzGbvmr1cffo2SiQ==" + "escape-html": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", + "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==", + "dev": true }, - "@types/glob": { - "version": "7.1.3", - "resolved": "https://registry.npmjs.org/@types/glob/-/glob-7.1.3.tgz", - "integrity": "sha512-SEYeGAIQIQX8NN6LDKprLjbrd5dARM5EXsd8GI/A5l0apYI1fGMWgPHSe4ZKL4eozlAyI+doUE9XbYS4xCkQ1w==", + "escape-string-regexp": { + "version": "2.0.0", + "dev": true + }, + "escodegen": { + "version": "2.0.0", "dev": true, "requires": { - "@types/minimatch": "*", - "@types/node": "*" + "esprima": "^4.0.1", + "estraverse": "^5.2.0", + "esutils": "^2.0.2", + "optionator": "^0.8.1", + "source-map": "~0.6.1" } }, - "@types/graceful-fs": { - "version": "4.1.5", - "resolved": "https://registry.npmjs.org/@types/graceful-fs/-/graceful-fs-4.1.5.tgz", - "integrity": "sha512-anKkLmZZ+xm4p8JWBf4hElkM4XR+EZeA2M9BAkkTldmcyDY4mbdIJnRghDJH3Ov5ooY7/UAoENtmdMSkaAd7Cw==", + "esprima": { + "version": "4.0.1", + "dev": true + }, + "estraverse": { + "version": "5.3.0", + "dev": true + }, + "esutils": { + "version": "2.0.3", + "dev": true + }, + "etag": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", + "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==", + "dev": true + }, + "event-stream": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/event-stream/-/event-stream-4.0.1.tgz", + "integrity": "sha512-qACXdu/9VHPBzcyhdOWR5/IahhGMf0roTeZJfzz077GwylcDd90yOHLouhmv7GJ5XzPi6ekaQWd8AvPP2nOvpA==", "dev": true, "requires": { - "@types/node": "*" + "duplexer": "^0.1.1", + "from": "^0.1.7", + "map-stream": "0.0.7", + "pause-stream": "^0.0.11", + "split": "^1.0.1", + "stream-combiner": "^0.2.2", + "through": "^2.3.8" } }, - "@types/istanbul-lib-coverage": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.3.tgz", - "integrity": "sha512-sz7iLqvVUg1gIedBOvlkxPlc8/uVzyS5OwGz1cKjXzkl3FpL3al0crU8YGU1WoHkxn0Wxbw5tyi6hvzJKNzFsw==", + "evp_bytestokey": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz", + "integrity": "sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==", + "dev": true, + "requires": { + "md5.js": "^1.3.4", + "safe-buffer": "^5.1.1" + } + }, + "exec-sh": { + "version": "0.3.6", "dev": true }, - "@types/istanbul-lib-report": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz", - "integrity": "sha512-plGgXAPfVKFoYfa9NpYDAkseG+g6Jr294RqeqcqDixSbU34MZVJRi/P+7Y8GDpzkEwLaGZZOpKIEmeVZNtKsrg==", + "execa": { + "version": "4.1.0", "dev": true, "requires": { - "@types/istanbul-lib-coverage": "*" + "cross-spawn": "^7.0.0", + "get-stream": "^5.0.0", + "human-signals": "^1.1.1", + "is-stream": "^2.0.0", + "merge-stream": "^2.0.0", + "npm-run-path": "^4.0.0", + "onetime": "^5.1.0", + "signal-exit": "^3.0.2", + "strip-final-newline": "^2.0.0" + } + }, + "exit": { + "version": "0.1.2", + "dev": true + }, + "expand-brackets": { + "version": "2.1.4", + "dev": true, + "requires": { + "debug": "^2.3.3", + "define-property": "^0.2.5", + "extend-shallow": "^2.0.1", + "posix-character-classes": "^0.1.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "define-property": { + "version": "0.2.5", + "dev": true, + "requires": { + "is-descriptor": "^0.1.0" + } + }, + "extend-shallow": { + "version": "2.0.1", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + }, + "is-accessor-descriptor": { + "version": "0.1.6", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "is-data-descriptor": { + "version": "0.1.4", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "is-descriptor": { + "version": "0.1.6", + "dev": true, + "requires": { + "is-accessor-descriptor": "^0.1.6", + "is-data-descriptor": "^0.1.4", + "kind-of": "^5.0.0" + } + }, + "is-extendable": { + "version": "0.1.1", + "dev": true + }, + "kind-of": { + "version": "5.1.0", + "dev": true + }, + "ms": { + "version": "2.0.0", + "dev": true + } } }, - "@types/istanbul-reports": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-1.1.2.tgz", - "integrity": "sha512-P/W9yOX/3oPZSpaYOCQzGqgCQRXn0FFO/V8bWrCQs+wLmvVVxk6CRBXALEvNs9OHIatlnlFokfhuDo2ug01ciw==", + "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==", + "dev": true, + "optional": true + }, + "expect": { + "version": "26.6.2", "dev": true, "requires": { - "@types/istanbul-lib-coverage": "*", - "@types/istanbul-lib-report": "*" + "@jest/types": "^26.6.2", + "ansi-styles": "^4.0.0", + "jest-get-type": "^26.3.0", + "jest-matcher-utils": "^26.6.2", + "jest-message-util": "^26.6.2", + "jest-regex-util": "^26.0.0" } }, - "@types/jest": { - "version": "26.0.3", - "resolved": "https://registry.npmjs.org/@types/jest/-/jest-26.0.3.tgz", - "integrity": "sha512-v89ga1clpVL/Y1+YI0eIu1VMW+KU7Xl8PhylVtDKVWaSUHBHYPLXMQGBdrpHewaKoTvlXkksbYqPgz8b4cmRZg==", - "dev": true, - "requires": { - "jest-diff": "^25.2.1", - "pretty-format": "^25.2.1" + "express": { + "version": "4.17.3", + "resolved": "https://registry.npmjs.org/express/-/express-4.17.3.tgz", + "integrity": "sha512-yuSQpz5I+Ch7gFrPCk4/c+dIBKlQUxtgwqzph132bsT6qhuzss6I8cLJQz7B3rFblzd6wtcI0ZbGltH/C4LjUg==", + "dev": true, + "requires": { + "accepts": "~1.3.8", + "array-flatten": "1.1.1", + "body-parser": "1.19.2", + "content-disposition": "0.5.4", + "content-type": "~1.0.4", + "cookie": "0.4.2", + "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.7", + "qs": "6.9.7", + "range-parser": "~1.2.1", + "safe-buffer": "5.2.1", + "send": "0.17.2", + "serve-static": "1.14.2", + "setprototypeof": "1.2.0", + "statuses": "~1.5.0", + "type-is": "~1.6.18", + "utils-merge": "1.0.1", + "vary": "~1.1.2" }, "dependencies": { - "@jest/types": { - "version": "25.5.0", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-25.5.0.tgz", - "integrity": "sha512-OXD0RgQ86Tu3MazKo8bnrkDRaDXXMGUqd+kTtLtK1Zb7CRzQcaSRPPPV37SvYTdevXEBVxe0HXylEjs8ibkmCw==", + "body-parser": { + "version": "1.19.2", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.19.2.tgz", + "integrity": "sha512-SAAwOxgoCKMGs9uUAUFHygfLAyaniaoun6I8mFY9pRAJL9+Kec34aU+oIjDhTycub1jozEfEwx1W1IuOYxVSFw==", "dev": true, "requires": { - "@types/istanbul-lib-coverage": "^2.0.0", - "@types/istanbul-reports": "^1.1.1", - "@types/yargs": "^15.0.0", - "chalk": "^3.0.0" + "bytes": "3.1.2", + "content-type": "~1.0.4", + "debug": "2.6.9", + "depd": "~1.1.2", + "http-errors": "1.8.1", + "iconv-lite": "0.4.24", + "on-finished": "~2.3.0", + "qs": "6.9.7", + "raw-body": "2.4.3", + "type-is": "~1.6.18" } }, - "ansi-styles": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", - "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", - "dev": true, - "requires": { - "@types/color-name": "^1.1.1", - "color-convert": "^2.0.1" - } + "bytes": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", + "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", + "dev": true }, - "chalk": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", - "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", "dev": true, "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" + "ms": "2.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==", + "http-errors": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.8.1.tgz", + "integrity": "sha512-Kpk9Sm7NmI+RHhnj6OIWDI1d6fIoFAtFt9RLaTMRlg/8w49juAStsrBgp0Dp4OdxdVbRIeKhtCUvoi/RuAhO4g==", "dev": true, "requires": { - "color-name": "~1.1.4" + "depd": "~1.1.2", + "inherits": "2.0.4", + "setprototypeof": "1.2.0", + "statuses": ">= 1.5.0 < 2", + "toidentifier": "1.0.1" } }, - "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==", + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", "dev": true }, - "diff-sequences": { - "version": "25.2.6", - "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-25.2.6.tgz", - "integrity": "sha512-Hq8o7+6GaZeoFjtpgvRBUknSXNeJiCx7V9Fr94ZMljNiCr9n9L8H8aJqgWOQiDDGdyn29fRNcDdRVJ5fdyihfg==", + "qs": { + "version": "6.9.7", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.9.7.tgz", + "integrity": "sha512-IhMFgUmuNpyRfxA90umL7ByLlgRXu6tIfKPpF5TmcfRLlLCckfP/g3IQmju6jjpu+Hh8rA+2p6A27ZSPOOHdKw==", "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==", + "raw-body": { + "version": "2.4.3", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.4.3.tgz", + "integrity": "sha512-UlTNLIcu0uzb4D2f4WltY6cVjLi+/jEN4lgEUj3E04tpMDpUlkBo/eSn6zou9hum2VMNpCCUone0O0WeJim07g==", + "dev": true, + "requires": { + "bytes": "3.1.2", + "http-errors": "1.8.1", + "iconv-lite": "0.4.24", + "unpipe": "1.0.0" + } + } + } + }, + "express-session": { + "version": "1.17.2", + "resolved": "https://registry.npmjs.org/express-session/-/express-session-1.17.2.tgz", + "integrity": "sha512-mPcYcLA0lvh7D4Oqr5aNJFMtBMKPLl++OKKxkHzZ0U0oDq1rpKBnkR5f5vCHR26VeArlTOEF9td4x5IjICksRQ==", + "dev": true, + "requires": { + "cookie": "0.4.1", + "cookie-signature": "1.0.6", + "debug": "2.6.9", + "depd": "~2.0.0", + "on-headers": "~1.0.2", + "parseurl": "~1.3.3", + "safe-buffer": "5.2.1", + "uid-safe": "~2.1.5" + }, + "dependencies": { + "cookie": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.1.tgz", + "integrity": "sha512-ZwrFkGJxUR3EIoXtO+yVE69Eb7KlixbaeAWfBQB9vVsNn/o+Yw69gBWSSDK825hQNdN+wF8zELf3dFNl/kxkUA==", "dev": true }, - "jest-diff": { - "version": "25.5.0", - "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-25.5.0.tgz", - "integrity": "sha512-z1kygetuPiREYdNIumRpAHY6RXiGmp70YHptjdaxTWGmA085W3iCnXNx0DhflK3vwrKmrRWyY1wUpkPMVxMK7A==", + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", "dev": true, "requires": { - "chalk": "^3.0.0", - "diff-sequences": "^25.2.6", - "jest-get-type": "^25.2.6", - "pretty-format": "^25.5.0" + "ms": "2.0.0" } }, - "jest-get-type": { - "version": "25.2.6", - "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-25.2.6.tgz", - "integrity": "sha512-DxjtyzOHjObRM+sM1knti6or+eOgcGU4xVSb2HNP1TqO4ahsT+rqZg+nyqHWJSvWgKC5cG3QjGFBqxLghiF/Ig==", + "depd": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", + "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==", "dev": true }, - "pretty-format": { - "version": "25.5.0", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-25.5.0.tgz", - "integrity": "sha512-kbo/kq2LQ/A/is0PQwsEHM7Ca6//bGPPvU6UnsdDRSKTWxT/ru/xb88v4BJf6a69H+uTytOEsTusT9ksd/1iWQ==", + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true + } + } + }, + "extend-shallow": { + "version": "3.0.2", + "dev": true, + "requires": { + "assign-symbols": "^1.0.0", + "is-extendable": "^1.0.1" + } + }, + "external-editor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz", + "integrity": "sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==", + "dev": true, + "optional": true, + "requires": { + "chardet": "^0.7.0", + "iconv-lite": "^0.4.24", + "tmp": "^0.0.33" + } + }, + "extglob": { + "version": "2.0.4", + "dev": true, + "requires": { + "array-unique": "^0.3.2", + "define-property": "^1.0.0", + "expand-brackets": "^2.1.4", + "extend-shallow": "^2.0.1", + "fragment-cache": "^0.2.1", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" + }, + "dependencies": { + "define-property": { + "version": "1.0.0", "dev": true, "requires": { - "@jest/types": "^25.5.0", - "ansi-regex": "^5.0.0", - "ansi-styles": "^4.0.0", - "react-is": "^16.12.0" + "is-descriptor": "^1.0.0" } }, - "supports-color": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", - "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", + "extend-shallow": { + "version": "2.0.1", "dev": true, "requires": { - "has-flag": "^4.0.0" + "is-extendable": "^0.1.0" } + }, + "is-extendable": { + "version": "0.1.1", + "dev": true } } }, - "@types/minimatch": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-3.0.4.tgz", - "integrity": "sha512-1z8k4wzFnNjVK/tlxvrWuK5WMt6mydWWP7+zvH5eFep4oj+UkrfiJTRtjCeBXNpwaA/FYqqtb4/QS4ianFpIRA==", + "extsprintf": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.4.1.tgz", + "integrity": "sha512-Wrk35e8ydCKDj/ArClo1VrPVmN8zph5V4AtHwIuHhvMXsKf73UT3BOD+azBIW+3wOJ4FhEH7zyaJCFvChjYvMA==", "dev": true }, - "@types/minimist": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/@types/minimist/-/minimist-1.2.1.tgz", - "integrity": "sha512-fZQQafSREFyuZcdWFAExYjBiCL7AUCdgsk80iO0q4yihYYdcIiH28CcuPTGFgLOCC8RlW49GSQxdHwZP+I7CNg==", + "eyes": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/eyes/-/eyes-0.1.8.tgz", + "integrity": "sha512-GipyPsXO1anza0AOZdy69Im7hGFCNB7Y/NGjDlZGJ3GJJLtwNSb2vrzYrTYJRrRloVx7pl+bhUaTB8yiccPvFQ==", "dev": true }, - "@types/node": { - "version": "14.0.14", - "resolved": "https://registry.npmjs.org/@types/node/-/node-14.0.14.tgz", - "integrity": "sha512-syUgf67ZQpaJj01/tRTknkMNoBBLWJOBODF0Zm4NrXmiSuxjymFrxnTu1QVYRubhVkRcZLYZG8STTwJRdVm/WQ==", - "dev": true + "fast-glob": { + "version": "2.2.7", + "dev": true, + "requires": { + "@mrmlnc/readdir-enhanced": "^2.2.1", + "@nodelib/fs.stat": "^1.1.2", + "glob-parent": "^3.1.0", + "is-glob": "^4.0.0", + "merge2": "^1.2.3", + "micromatch": "^3.1.10" + } }, - "@types/normalize-package-data": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/@types/normalize-package-data/-/normalize-package-data-2.4.0.tgz", - "integrity": "sha512-f5j5b/Gf71L+dbqxIpQ4Z2WlmI/mPJ0fOkGGmFgtb6sAu97EPczzbS3/tJKxmcYDj55OX6ssqwDAWOHIYDRDGA==", + "fast-json-stable-stringify": { + "version": "2.1.0", "dev": true }, - "@types/prettier": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/@types/prettier/-/prettier-2.6.0.tgz", - "integrity": "sha512-G/AdOadiZhnJp0jXCaBQU449W2h716OW/EoXeYkCytxKL06X1WCXB4DZpp8TpZ8eyIJVS1cw4lrlkkSYU21cDw==", + "fast-levenshtein": { + "version": "2.0.6", "dev": true }, - "@types/stack-utils": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-2.0.1.tgz", - "integrity": "sha512-Hl219/BT5fLAaz6NDkSuhzasy49dwQS/DSdu4MdggFB8zcXv7vflBI3xp7FEmkmdDkBUI2bPUNeMttp2knYdxw==", + "fast-safe-stringify": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/fast-safe-stringify/-/fast-safe-stringify-2.1.1.tgz", + "integrity": "sha512-W+KJc2dmILlPplD/H4K9l9LcAHAfPtP6BY84uVLXQ6Evcz9Lcg33Y2z1IVblT6xdY54PXYVHEv+0Wpq8Io6zkA==", "dev": true }, - "@types/yargs": { - "version": "15.0.5", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.5.tgz", - "integrity": "sha512-Dk/IDOPtOgubt/IaevIUbTgV7doaKkoorvOyYM2CMwuDyP89bekI7H4xLIwunNYiK9jhCkmc6pUrJk3cj2AB9w==", + "fast-xml-parser": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/fast-xml-parser/-/fast-xml-parser-4.1.2.tgz", + "integrity": "sha512-CDYeykkle1LiA/uqQyNwYpFbyF6Axec6YapmpUP+/RHWIoR1zKjocdvNaTsxCxZzQ6v9MLXaSYm9Qq0thv0DHg==", "dev": true, + "optional": true, "requires": { - "@types/yargs-parser": "*" + "strnum": "^1.0.5" } }, - "@types/yargs-parser": { - "version": "15.0.0", - "resolved": "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-15.0.0.tgz", - "integrity": "sha512-FA/BWv8t8ZWJ+gEOnLLd8ygxH/2UFbAvgEonyfN6yWGLKc7zVjbpl2Y4CTjid9h2RfgPP6SEt6uHwEOply00yw==", - "dev": true - }, - "abab": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/abab/-/abab-2.0.6.tgz", - "integrity": "sha512-j2afSsaIENvHZN2B8GOpF566vZ5WVk5opAiMTvWgaQT8DkbOqsTfvNAvHoRGU2zzP8cPoqys+xHTRDWW8L+/BA==", - "dev": true - }, - "acorn": { - "version": "8.7.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.7.0.tgz", - "integrity": "sha512-V/LGr1APy+PXIwKebEWrkZPwoeoF+w1jiOBUmuxuiUIaOHtob8Qc9BTrYo7VuI5fR8tqsy+buA2WFooR5olqvQ==", - "dev": true + "fb-watchman": { + "version": "2.0.2", + "dev": true, + "requires": { + "bser": "2.1.1" + } }, - "acorn-globals": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/acorn-globals/-/acorn-globals-6.0.0.tgz", - "integrity": "sha512-ZQl7LOWaF5ePqqcX4hLuv/bLXYQNfNWw2c0/yX/TsPRKamzHcTGQnlCjHT3TsmkOUVEPS3crCxiPfdzE/Trlhg==", + "figures": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz", + "integrity": "sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==", "dev": true, + "optional": true, "requires": { - "acorn": "^7.1.1", - "acorn-walk": "^7.1.1" + "escape-string-regexp": "^1.0.5" }, "dependencies": { - "acorn": { - "version": "7.4.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", - "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", - "dev": true + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "dev": true, + "optional": true } } }, - "acorn-walk": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-7.2.0.tgz", - "integrity": "sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA==", - "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==", + "file-type": { + "version": "16.5.0", + "resolved": "https://registry.npmjs.org/file-type/-/file-type-16.5.0.tgz", + "integrity": "sha512-OxgWA9tbL8N/WP00GD1z8O0MiwQKFyWRs1q+3FhjdvcGgKqwxcejyGWso3n4/IMU6DdwV+ARZ4A7TTnPkDcSiw==", "dev": true, "requires": { - "debug": "4" + "readable-web-to-node-stream": "^3.0.0", + "strtok3": "^6.0.3", + "token-types": "^2.0.0" } }, - "aggregate-error": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", - "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", + "file-uri-to-path": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz", + "integrity": "sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==", + "dev": true, + "optional": true + }, + "fill-range": { + "version": "4.0.0", "dev": true, "requires": { - "clean-stack": "^2.0.0", - "indent-string": "^4.0.0" + "extend-shallow": "^2.0.1", + "is-number": "^3.0.0", + "repeat-string": "^1.6.1", + "to-regex-range": "^2.1.0" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + }, + "is-extendable": { + "version": "0.1.1", + "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==", + "finalhandler": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.2.tgz", + "integrity": "sha512-aAWcW57uxVNrQZqFXjITpW3sIUQmHGG3qSb9mUah9MgMC4NeWhNOlNjXEYq3HjRAvL6arUviZGGJsBg6z0zsWA==", "dev": true, "requires": { - "type-fest": "^0.21.3" + "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": { - "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==", + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", "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==", + "find-up": { + "version": "4.1.0", "dev": true, "requires": { - "color-convert": "^1.9.0" + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" } }, - "anymatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.2.tgz", - "integrity": "sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==", + "for-in": { + "version": "1.0.2", + "dev": true + }, + "foreachasync": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/foreachasync/-/foreachasync-3.0.0.tgz", + "integrity": "sha512-J+ler7Ta54FwwNcx6wQRDhTIbNeyDcARMkOcguEqnEdtm0jKvN3Li3PDAb2Du3ubJYEWfYL83XMROXdsXAXycw==", + "dev": true + }, + "form-data": { + "version": "3.0.1", "dev": true, "requires": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "mime-types": "^2.1.12" } }, - "argparse": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "formidable": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/formidable/-/formidable-2.1.2.tgz", + "integrity": "sha512-CM3GuJ57US06mlpQ47YcunuUZ9jpm8Vx+P2CGt2j7HpgkKZO/DJYQ0Bobim8G6PFQmK5lOqOOdUXboU+h73A4g==", "dev": true, "requires": { - "sprintf-js": "~1.0.2" + "dezalgo": "^1.0.4", + "hexoid": "^1.0.0", + "once": "^1.4.0", + "qs": "^6.11.0" + }, + "dependencies": { + "qs": { + "version": "6.11.1", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.11.1.tgz", + "integrity": "sha512-0wsrzgTz/kAVIeuxSjnpGC56rzYtr6JT/2BwEvMaPhFIoYa1aGO8LbzuU1R0uUYQkLpWBTOj0l/CLAJB64J6nQ==", + "dev": true, + "requires": { + "side-channel": "^1.0.4" + } + } } }, - "arr-diff": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz", - "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=", - "dev": true - }, - "arr-flatten": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz", - "integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==", - "dev": true - }, - "arr-union": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz", - "integrity": "sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ=", + "forwarded": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz", + "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==", "dev": true }, - "array-union": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz", - "integrity": "sha1-mjRBDk9OPaI96jdb5b5w8kd47Dk=", + "fragment-cache": { + "version": "0.2.1", "dev": true, "requires": { - "array-uniq": "^1.0.1" + "map-cache": "^0.2.2" } }, - "array-uniq": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz", - "integrity": "sha1-r2rId6Jcx/dOBYiUdThY39sk/bY=", - "dev": true - }, - "array-unique": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz", - "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=", + "fresh": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", + "integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==", "dev": true }, - "arrify": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/arrify/-/arrify-2.0.1.tgz", - "integrity": "sha512-3duEwti880xqi4eAMN8AyR4a0ByT90zoYdLlevfrvU43vb0YZwZVfxOgxWrLXXXpyugL0hNZc9G6BiB5B3nUug==", + "from": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/from/-/from-0.1.7.tgz", + "integrity": "sha512-twe20eF1OxVxp/ML/kq2p1uc6KvFK/+vs8WjEbeKmV2He22MKm7YF2ANIt+EOqhJ5L3K/SuuPhk0hWQDjOM23g==", "dev": true }, - "assign-symbols": { + "fs-constants": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/assign-symbols/-/assign-symbols-1.0.0.tgz", - "integrity": "sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c=", - "dev": true - }, - "asynckit": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", - "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=", - "dev": true - }, - "atob": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz", - "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==", + "resolved": "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz", + "integrity": "sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==", "dev": true }, - "babel-jest": { - "version": "26.6.3", - "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-26.6.3.tgz", - "integrity": "sha512-pl4Q+GAVOHwvjrck6jKjvmGhnO3jHX/xuB9d27f+EJZ/6k+6nMuPjorrYp7s++bKKdANwzElBWnLWaObvTnaZA==", + "fs-extra": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-4.0.3.tgz", + "integrity": "sha512-q6rbdDd1o2mAnQreO7YADIxf/Whx4AHBiRf6d+/cVT8h44ss+lHgxf1FemcqDnQt9X3ct4McHr+JMGlYSsK7Cg==", "dev": true, "requires": { - "@jest/transform": "^26.6.2", - "@jest/types": "^26.6.2", - "@types/babel__core": "^7.1.7", - "babel-plugin-istanbul": "^6.0.0", - "babel-preset-jest": "^26.6.2", - "chalk": "^4.0.0", - "graceful-fs": "^4.2.4", - "slash": "^3.0.0" + "graceful-fs": "^4.1.2", + "jsonfile": "^4.0.0", + "universalify": "^0.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" - } - }, - "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" - } - }, - "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==", + "universalify": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", + "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", "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" - } } } }, - "babel-plugin-istanbul": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz", - "integrity": "sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA==", + "fs-minipass": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", + "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", "dev": true, + "optional": true, "requires": { - "@babel/helper-plugin-utils": "^7.0.0", - "@istanbuljs/load-nyc-config": "^1.0.0", - "@istanbuljs/schema": "^0.1.2", - "istanbul-lib-instrument": "^5.0.4", - "test-exclude": "^6.0.0" + "minipass": "^3.0.0" }, "dependencies": { - "istanbul-lib-instrument": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.0.tgz", - "integrity": "sha512-6Lthe1hqXHBNsqvgDzGO6l03XNeu3CrG4RqQ1KM9+l5+jNGpEJfIELx1NS3SEHmJQA8np/u+E4EPRKRiu6m19A==", + "minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", "dev": true, + "optional": true, "requires": { - "@babel/core": "^7.12.3", - "@babel/parser": "^7.14.7", - "@istanbuljs/schema": "^0.1.2", - "istanbul-lib-coverage": "^3.2.0", - "semver": "^6.3.0" + "yallist": "^4.0.0" } - }, - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true } } }, - "babel-plugin-jest-hoist": { - "version": "26.6.2", - "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-26.6.2.tgz", - "integrity": "sha512-PO9t0697lNTmcEHH69mdtYiOIkkOlj9fySqfO3K1eCcdISevLAE0xY59VLLUj0SoiPiTX/JU2CYFpILydUa5Lw==", - "dev": true, - "requires": { - "@babel/template": "^7.3.3", - "@babel/types": "^7.3.3", - "@types/babel__core": "^7.0.0", - "@types/babel__traverse": "^7.0.6" - } + "fs.realpath": { + "version": "1.0.0", + "dev": true }, - "babel-preset-current-node-syntax": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-1.0.1.tgz", - "integrity": "sha512-M7LQ0bxarkxQoN+vz5aJPsLBn77n8QgTFmo8WK0/44auK2xlCXrYcUxHFxgU7qW5Yzw/CjmLRK2uJzaCd7LvqQ==", + "fsevents": { + "version": "2.3.2", "dev": true, - "requires": { - "@babel/plugin-syntax-async-generators": "^7.8.4", - "@babel/plugin-syntax-bigint": "^7.8.3", - "@babel/plugin-syntax-class-properties": "^7.8.3", - "@babel/plugin-syntax-import-meta": "^7.8.3", - "@babel/plugin-syntax-json-strings": "^7.8.3", - "@babel/plugin-syntax-logical-assignment-operators": "^7.8.3", - "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", - "@babel/plugin-syntax-numeric-separator": "^7.8.3", - "@babel/plugin-syntax-object-rest-spread": "^7.8.3", - "@babel/plugin-syntax-optional-catch-binding": "^7.8.3", - "@babel/plugin-syntax-optional-chaining": "^7.8.3", - "@babel/plugin-syntax-top-level-await": "^7.8.3" - } + "optional": true }, - "babel-preset-jest": { - "version": "26.6.2", - "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-26.6.2.tgz", - "integrity": "sha512-YvdtlVm9t3k777c5NPQIv6cxFFFapys25HiUmuSgHwIZhfifweR5c5Sf5nwE3MAbfu327CYSvps8Yx6ANLyleQ==", + "function-bind": { + "version": "1.1.1", + "dev": true + }, + "function.prototype.name": { + "version": "1.1.5", "dev": true, "requires": { - "babel-plugin-jest-hoist": "^26.6.2", - "babel-preset-current-node-syntax": "^1.0.0" + "call-bind": "^1.0.2", + "define-properties": "^1.1.3", + "es-abstract": "^1.19.0", + "functions-have-names": "^1.2.2" } }, - "balanced-match": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", - "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=", + "functions-have-names": { + "version": "1.2.3", "dev": true }, - "base": { - "version": "0.11.2", - "resolved": "https://registry.npmjs.org/base/-/base-0.11.2.tgz", - "integrity": "sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg==", + "gauge": { + "version": "2.7.4", + "resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz", + "integrity": "sha512-14x4kjc6lkD3ltw589k0NrPD6cCNTD6CWoVUNpB85+DrtONoZn+Rug6xZU5RvSC4+TZPxA5AnBibQYAvZn41Hg==", "dev": true, + "optional": true, "requires": { - "cache-base": "^1.0.1", - "class-utils": "^0.3.5", - "component-emitter": "^1.2.1", - "define-property": "^1.0.0", - "isobject": "^3.0.1", - "mixin-deep": "^1.2.0", - "pascalcase": "^0.1.1" + "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" }, "dependencies": { - "define-property": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", - "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", + "ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==", "dev": true, - "requires": { - "is-descriptor": "^1.0.0" - } + "optional": true }, - "is-accessor-descriptor": { + "is-fullwidth-code-point": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", + "integrity": "sha512-1pqUqRjkhPJ9miNq9SwMfdvi6lBJcd6eFxvfaivQhaH3SgisfiuudvFntdKOmxuee/77l+FPjKrQjWvmPjWrRw==", "dev": true, + "optional": true, "requires": { - "kind-of": "^6.0.0" + "number-is-nan": "^1.0.0" } }, - "is-data-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", - "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "string-width": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", + "integrity": "sha512-0XsVpQLnVCXHJfyEs8tC0zpTVIr5PKKsQtkT29IwupnPTjtPmQ3xT/4yCREF9hYkV/3M3kzcUTSAZT6a6h81tw==", "dev": true, + "optional": true, "requires": { - "kind-of": "^6.0.0" + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" } }, - "is-descriptor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", - "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg==", "dev": true, + "optional": true, "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" + "ansi-regex": "^2.0.0" } } } }, - "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-process-hrtime": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/browser-process-hrtime/-/browser-process-hrtime-1.0.0.tgz", - "integrity": "sha512-9o5UecI3GhkpM6DrXr69PblIuWxPKk9Y0jHBRhdocZ2y7YECBFCsHm79Pr3OyR2AvjhDkabFJaDJMYRazHgsow==", + "gensync": { + "version": "1.0.0-beta.2", "dev": true }, - "browserslist": { - "version": "4.20.2", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.20.2.tgz", - "integrity": "sha512-CQOBCqp/9pDvDbx3xfMi+86pr4KXIf2FDkTTdeuYw8OxS9t898LA1Khq57gtufFILXpfgsSx5woNgsBgvGjpsA==", - "dev": true, - "requires": { - "caniuse-lite": "^1.0.30001317", - "electron-to-chromium": "^1.4.84", - "escalade": "^3.1.1", - "node-releases": "^2.0.2", - "picocolors": "^1.0.0" - } - }, - "bs-logger": { - "version": "0.2.6", - "resolved": "https://registry.npmjs.org/bs-logger/-/bs-logger-0.2.6.tgz", - "integrity": "sha512-pd8DCoxmbgc7hyPKOvxtqNcjYoOsABPQdcCUjGp3d42VR2CX1ORhk2A87oqqu5R1kk+76nsxZupkmyd+MVtCog==", - "dev": true, - "requires": { - "fast-json-stable-stringify": "2.x" - } - }, - "bser": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/bser/-/bser-2.1.1.tgz", - "integrity": "sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ==", - "dev": true, - "requires": { - "node-int64": "^0.4.0" - } - }, - "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==", + "geojson": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/geojson/-/geojson-0.5.0.tgz", + "integrity": "sha512-/Bx5lEn+qRF4TfQ5aLu6NH+UKtvIv7Lhc487y/c8BdludrCTpiWf9wyI0RTyqg49MFefIAvFDuEi5Dfd/zgNxQ==", "dev": true }, - "cache-base": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/cache-base/-/cache-base-1.0.1.tgz", - "integrity": "sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ==", + "geojson-rbush": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/geojson-rbush/-/geojson-rbush-3.2.0.tgz", + "integrity": "sha512-oVltQTXolxvsz1sZnutlSuLDEcQAKYC/uXt9zDzJJ6bu0W+baTI8LZBaTup5afzibEH4N3jlq2p+a152wlBJ7w==", "dev": true, "requires": { - "collection-visit": "^1.0.0", - "component-emitter": "^1.2.1", - "get-value": "^2.0.6", - "has-value": "^1.0.0", - "isobject": "^3.0.1", - "set-value": "^2.0.0", - "to-object-path": "^0.3.0", - "union-value": "^1.0.0", - "unset-value": "^1.0.0" + "@turf/bbox": "*", + "@turf/helpers": "6.x", + "@turf/meta": "6.x", + "@types/geojson": "7946.0.8", + "rbush": "^3.0.1" + }, + "dependencies": { + "@types/geojson": { + "version": "7946.0.8", + "resolved": "https://registry.npmjs.org/@types/geojson/-/geojson-7946.0.8.tgz", + "integrity": "sha512-1rkryxURpr6aWP7R786/UQOkJ3PcpQiWkAXBmdWc7ryFWqN6a4xfK7BtjXvFBKO9LjQ+MWQSWxYeZX1OApnArA==", + "dev": true + } } }, - "call-bind": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", - "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", + "geojson-stream": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/geojson-stream/-/geojson-stream-0.1.0.tgz", + "integrity": "sha512-svSg5fFXPaTiqzEBGXScA+nISaeC9rLvku2PH+wM5LToATUw2bLIrvls43ymnT9Xnp51nBPVyK9m4Af40KpJ7w==", "dev": true, "requires": { - "function-bind": "^1.1.1", - "get-intrinsic": "^1.0.2" + "JSONStream": "^1.0.0", + "through": "^2.3.4" } }, - "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=", + "geojson-validation": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/geojson-validation/-/geojson-validation-1.0.2.tgz", + "integrity": "sha512-K5jrJ4wFvORn2pRKeg181LL0QPYuEKn2KHPvfH1m2QtFlAXFLKdseqt0XwBM3ELOY7kNM1fglRQ6ZwUQZ5S00A==", "dev": true }, - "callsites": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", - "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "geojson-vt": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/geojson-vt/-/geojson-vt-3.1.3.tgz", + "integrity": "sha512-oWaMsd08gUa1c4B4s2Z3LIX+oUIe8G/i5vp9JLjXlROuveMUpEwT49WDGHp5Gs4RVaJ0B51h1QTcj/dvtT+w9A==", "dev": true }, - "camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "get-caller-file": { + "version": "2.0.5", "dev": true }, - "camelcase-keys": { - "version": "6.2.2", - "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-6.2.2.tgz", - "integrity": "sha512-YrwaA0vEKazPBkn0ipTiMpSajYDSe+KjQfrjhcBMxJt/znbvlHd8Pw/Vamaz5EB4Wfhs3SUR3Z9mwRu/P3s3Yg==", + "get-intrinsic": { + "version": "1.1.3", "dev": true, "requires": { - "camelcase": "^5.3.1", - "map-obj": "^4.0.0", - "quick-lru": "^4.0.1" + "function-bind": "^1.1.1", + "has": "^1.0.3", + "has-symbols": "^1.0.3" } }, - "caniuse-lite": { - "version": "1.0.30001332", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001332.tgz", - "integrity": "sha512-10T30NYOEQtN6C11YGg411yebhvpnC6Z102+B95eAsN0oB6KUs01ivE8u+G6FMIRtIrVlYXhL+LUwQ3/hXwDWw==", + "get-package-type": { + "version": "0.1.0", "dev": true }, - "capture-exit": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/capture-exit/-/capture-exit-2.0.0.tgz", - "integrity": "sha512-PiT/hQmTonHhl/HFGN+Lx3JJUznrVYJ3+AQsnthneZbvW7x+f08Tk7yLJTLEOUvBTbduLeeBkxEaYXUOUrRq6g==", + "get-stream": { + "version": "5.2.0", "dev": true, "requires": { - "rsvp": "^4.8.4" + "pump": "^3.0.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==", + "get-symbol-description": { + "version": "1.0.0", "dev": true, "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" + "call-bind": "^1.0.2", + "get-intrinsic": "^1.1.1" } }, - "char-regex": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/char-regex/-/char-regex-1.0.2.tgz", - "integrity": "sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw==", + "get-value": { + "version": "2.0.6", "dev": true }, - "ci-info": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-2.0.0.tgz", - "integrity": "sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==", + "github-from-package": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/github-from-package/-/github-from-package-0.0.0.tgz", + "integrity": "sha512-SyHy3T1v2NUXn29OsWdxmK6RwHD+vkj3v8en8AOBZ1wBQ/hCAQ5bAQTD02kW4W9tUp/3Qh6J8r9EvntiyCmOOw==", + "dev": true, + "optional": true + }, + "glob": { + "version": "7.2.3", + "dev": true, + "requires": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + }, + "glob-parent": { + "version": "3.1.0", + "dev": true, + "requires": { + "is-glob": "^3.1.0", + "path-dirname": "^1.0.0" + }, + "dependencies": { + "is-glob": { + "version": "3.1.0", + "dev": true, + "requires": { + "is-extglob": "^2.1.0" + } + } + } + }, + "glob-to-regexp": { + "version": "0.3.0", "dev": true }, - "cjs-module-lexer": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/cjs-module-lexer/-/cjs-module-lexer-0.6.0.tgz", - "integrity": "sha512-uc2Vix1frTfnuzxxu1Hp4ktSvM3QaI4oXl4ZUqL1wjTu/BGki9TrCWoqLTg/drR1KwAEarXuRFCG2Svr1GxPFw==", + "globals": { + "version": "11.12.0", "dev": true }, - "class-utils": { - "version": "0.3.6", - "resolved": "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz", - "integrity": "sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==", + "globby": { + "version": "9.2.0", "dev": true, "requires": { - "arr-union": "^3.1.0", - "define-property": "^0.2.5", - "isobject": "^3.0.0", - "static-extend": "^0.1.1" + "@types/glob": "^7.1.1", + "array-union": "^1.0.2", + "dir-glob": "^2.2.2", + "fast-glob": "^2.2.6", + "glob": "^7.1.3", + "ignore": "^4.0.3", + "pify": "^4.0.1", + "slash": "^2.0.0" + } + }, + "gm": { + "version": "1.23.1", + "resolved": "https://registry.npmjs.org/gm/-/gm-1.23.1.tgz", + "integrity": "sha512-wYGVAa8/sh9ggF5qWoOs6eArcAgwEPkDNvf637jHRHkMUznvs7m/Q2vrc0KLN6B8px3nnRJqJcXK4mTK6lLFmg==", + "dev": true, + "requires": { + "array-parallel": "~0.1.3", + "array-series": "~0.1.5", + "cross-spawn": "^4.0.0", + "debug": "^3.1.0" }, "dependencies": { - "define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "cross-spawn": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-4.0.2.tgz", + "integrity": "sha512-yAXz/pA1tD8Gtg2S98Ekf/sewp3Lcp3YoFKJ4Hkp5h5yLWnKVTDU0kwjKJ8NDCYcfTLfyGkzTikst+jWypT1iA==", "dev": true, "requires": { - "is-descriptor": "^0.1.0" + "lru-cache": "^4.0.1", + "which": "^1.2.9" + } + }, + "debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + }, + "lru-cache": { + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz", + "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==", + "dev": true, + "requires": { + "pseudomap": "^1.0.2", + "yallist": "^2.1.2" + } + }, + "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" } + }, + "yallist": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", + "integrity": "sha512-ncTzHV7NvsQZkYe1DW7cbDLm0YpzHmZF5r/iyP3ZnQtMiJ+pjzisCiMNI+Sj+xQF5pXhSHxSB3uDbsBTzY/c2A==", + "dev": true } } }, - "clean-stack": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", - "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", + "graceful-fs": { + "version": "4.2.10", "dev": true }, - "cliui": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz", - "integrity": "sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==", + "growly": { + "version": "1.3.0", + "dev": true, + "optional": true + }, + "hard-rejection": { + "version": "2.1.0", + "dev": true + }, + "has": { + "version": "1.0.3", "dev": true, "requires": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", - "wrap-ansi": "^6.2.0" + "function-bind": "^1.1.1" } }, - "co": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", - "integrity": "sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ=", + "has-bigints": { + "version": "1.0.2", "dev": true }, - "collect-v8-coverage": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/collect-v8-coverage/-/collect-v8-coverage-1.0.1.tgz", - "integrity": "sha512-iBPtljfCNcTKNAto0KEtDfZ3qzjJvqE3aTGZsbhjSBlorqpXJlaWWtPO35D+ZImoC3KWejX64o+yPGxhWSTzfg==", + "has-color": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/has-color/-/has-color-0.1.7.tgz", + "integrity": "sha512-kaNz5OTAYYmt646Hkqw50/qyxP2vFnTVu5AQ1Zmk22Kk5+4Qx6BpO8+u7IKsML5fOsFk0ZT0AcCJNYwcvaLBvw==", "dev": true }, - "collection-visit": { + "has-flag": { + "version": "4.0.0", + "dev": true + }, + "has-glob": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz", - "integrity": "sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA=", "dev": true, "requires": { - "map-visit": "^1.0.0", - "object-visit": "^1.0.0" + "is-glob": "^3.0.0" + }, + "dependencies": { + "is-glob": { + "version": "3.1.0", + "dev": true, + "requires": { + "is-extglob": "^2.1.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==", + "has-property-descriptors": { + "version": "1.0.0", "dev": true, "requires": { - "color-name": "1.1.3" + "get-intrinsic": "^1.1.1" } }, - "color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", + "has-symbols": { + "version": "1.0.3", "dev": true }, - "combined-stream": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", - "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", + "has-tostringtag": { + "version": "1.0.0", "dev": true, "requires": { - "delayed-stream": "~1.0.0" + "has-symbols": "^1.0.2" } }, - "component-emitter": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz", - "integrity": "sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==", - "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 + "has-unicode": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", + "integrity": "sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ==", + "dev": true, + "optional": true }, - "convert-source-map": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.8.0.tgz", - "integrity": "sha512-+OQdjP49zViI/6i7nIJpA8rAl4sV/JdPfU9nZs3VqOwGIgizICvuN2ru6fMd+4llL0tar18UYJXfZ/TWtmhUjA==", + "has-value": { + "version": "1.0.0", "dev": true, "requires": { - "safe-buffer": "~5.1.1" + "get-value": "^2.0.6", + "has-values": "^1.0.0", + "isobject": "^3.0.0" } }, - "copy-descriptor": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz", - "integrity": "sha1-Z29us8OZl8LuGsOpJP1hJHSPV40=", - "dev": true + "has-values": { + "version": "1.0.0", + "dev": true, + "requires": { + "is-number": "^3.0.0", + "kind-of": "^4.0.0" + }, + "dependencies": { + "kind-of": { + "version": "4.0.0", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } }, - "cp-file": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/cp-file/-/cp-file-7.0.0.tgz", - "integrity": "sha512-0Cbj7gyvFVApzpK/uhCtQ/9kE9UnYpxMzaq5nQQC/Dh4iaj5fxp7iEFIullrYwzj8nf0qnsI1Qsx34hAeAebvw==", + "hash-base": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.1.0.tgz", + "integrity": "sha512-1nmYp/rhMDiE7AYkDw+lLwlAzz0AntGIe51F3RfFfEqyQ3feY2eI/NcwC6umIQVOASPMsWJLJScWKSSvzL9IVA==", "dev": true, "requires": { - "graceful-fs": "^4.1.2", - "make-dir": "^3.0.0", - "nested-error-stacks": "^2.0.0", - "p-event": "^4.1.0" + "inherits": "^2.0.4", + "readable-stream": "^3.6.0", + "safe-buffer": "^5.2.0" } }, - "cpy": { - "version": "8.1.2", - "resolved": "https://registry.npmjs.org/cpy/-/cpy-8.1.2.tgz", - "integrity": "sha512-dmC4mUesv0OYH2kNFEidtf/skUwv4zePmGeepjyyJ0qTo5+8KhA1o99oIAwVVLzQMAeDJml74d6wPPKb6EZUTg==", + "hash.js": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.7.tgz", + "integrity": "sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==", "dev": true, "requires": { - "arrify": "^2.0.1", - "cp-file": "^7.0.0", - "globby": "^9.2.0", - "has-glob": "^1.0.0", - "junk": "^3.1.0", - "nested-error-stacks": "^2.1.0", - "p-all": "^2.1.0", - "p-filter": "^2.1.0", - "p-map": "^3.0.0" + "inherits": "^2.0.3", + "minimalistic-assert": "^1.0.1" } }, - "cpy-cli": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/cpy-cli/-/cpy-cli-3.1.1.tgz", - "integrity": "sha512-HCpNdBkQy3rw+uARLuIf0YurqsMXYzBa9ihhSAuxYJcNIrqrSq3BstPfr0cQN38AdMrQiO9Dp4hYy7GtGJsLPg==", + "hexoid": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/hexoid/-/hexoid-1.0.0.tgz", + "integrity": "sha512-QFLV0taWQOZtvIRIAdBChesmogZrtuXvVWsFHZTk2SU+anspqZ2vMnoLg7IE1+Uk16N19APic1BuF8bC8c2m5g==", + "dev": true + }, + "hmac-drbg": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz", + "integrity": "sha512-Tti3gMqLdZfhOQY1Mzf/AanLiqh1WTiJgEj26ZuYQ9fbkLomzGchCws4FyrSd4VkpBfiNhaE1On+lOz894jvXg==", "dev": true, "requires": { - "cpy": "^8.0.0", - "meow": "^6.1.1" + "hash.js": "^1.0.3", + "minimalistic-assert": "^1.0.0", + "minimalistic-crypto-utils": "^1.0.1" } }, - "cross-spawn": { - "version": "6.0.5", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", - "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", + "hosted-git-info": { + "version": "2.8.9", + "dev": true + }, + "html-encoding-sniffer": { + "version": "2.0.1", "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" + "whatwg-encoding": "^1.0.5" } }, - "cssom": { - "version": "0.4.4", - "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.4.4.tgz", - "integrity": "sha512-p3pvU7r1MyyqbTk+WbNJIgJjG2VmTIaB10rI93LzVPrmDJKkzKYMtxxyAvQXR/NS6otuzveI7+7BBq3SjBS2mw==", + "html-escaper": { + "version": "2.0.2", "dev": true }, - "cssstyle": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/cssstyle/-/cssstyle-2.3.0.tgz", - "integrity": "sha512-AZL67abkUzIuvcHqk7c09cezpGNcxUxU4Ioi/05xHk4DQeTkWmGYftIE6ctU6AEt+Gn4n1lDStOtj7FKycP71A==", + "http-errors": { + "version": "1.6.3", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz", + "integrity": "sha512-lks+lVC8dgGyh97jxvxeYTWQFvh4uw4yC12gVl63Cg30sjPX4wuGcdkICVXDAESr6OJGjqGA8Iz5mkeN6zlD7A==", "dev": true, "requires": { - "cssom": "~0.3.6" + "depd": "~1.1.2", + "inherits": "2.0.3", + "setprototypeof": "1.1.0", + "statuses": ">= 1.4.0 < 2" }, "dependencies": { - "cssom": { - "version": "0.3.8", - "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.3.8.tgz", - "integrity": "sha512-b0tGHbfegbhPJpxpiBPU2sCkigAqtM9O121le6bbOlgyV+NyGyCmVfJ6QW9eRjz8CpNfWEOYBIMIGRYkLwsIYg==", + "inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw==", + "dev": true + }, + "setprototypeof": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz", + "integrity": "sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==", "dev": true } } }, - "data-urls": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/data-urls/-/data-urls-2.0.0.tgz", - "integrity": "sha512-X5eWTSXO/BJmpdIKCRuKUgSCgAN0OwliVK3yPKbwIWU1Tdw5BRajxlzMidvh+gwko9AfQ9zIj52pzF91Q3YAvQ==", + "http-proxy-agent": { + "version": "4.0.1", "dev": true, "requires": { - "abab": "^2.0.3", - "whatwg-mimetype": "^2.3.0", - "whatwg-url": "^8.0.0" + "@tootallnate/once": "1", + "agent-base": "6", + "debug": "4" } }, - "debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "https-proxy-agent": { + "version": "5.0.1", "dev": true, "requires": { - "ms": "^2.1.1" + "agent-base": "6", + "debug": "4" } }, - "decamelize": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", - "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", + "human-signals": { + "version": "1.1.1", "dev": true }, - "decamelize-keys": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/decamelize-keys/-/decamelize-keys-1.1.0.tgz", - "integrity": "sha1-0XGoeTMlKAfrPLYdwcFEXQeN8tk=", + "iconv-lite": { + "version": "0.4.24", "dev": true, "requires": { - "decamelize": "^1.1.0", - "map-obj": "^1.0.0" - }, - "dependencies": { - "map-obj": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz", - "integrity": "sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0=", - "dev": true - } + "safer-buffer": ">= 2.1.2 < 3" } }, - "decimal.js": { - "version": "10.3.1", - "resolved": "https://registry.npmjs.org/decimal.js/-/decimal.js-10.3.1.tgz", - "integrity": "sha512-V0pfhfr8suzyPGOx3nmq4aHqabehUZn6Ch9kyFpV79TGDTWFmHqUqXdabR7QHqxzrYolF4+tVmJhUG4OURg5dQ==", - "dev": true - }, - "decode-uri-component": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz", - "integrity": "sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU=", - "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==", + "ieee754": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", + "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", "dev": true }, - "deepmerge": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.2.2.tgz", - "integrity": "sha512-FJ3UgI4gIl+PHZm53knsuSFpE+nESMr7M4v9QcgB7S63Kj/6WqMiFQJpBBYz1Pt+66bZpP3Q7Lye0Oo9MPKEdg==", + "ignore": { + "version": "4.0.6", "dev": true }, - "define-properties": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz", - "integrity": "sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==", + "image-size": { + "version": "0.8.3", + "resolved": "https://registry.npmjs.org/image-size/-/image-size-0.8.3.tgz", + "integrity": "sha512-SMtq1AJ+aqHB45c3FsB4ERK0UCiA2d3H1uq8s+8T0Pf8A3W4teyBQyaFaktH6xvZqh+npwlKU7i4fJo0r7TYTg==", "dev": true, "requires": { - "object-keys": "^1.0.12" + "queue": "6.0.1" } }, - "define-property": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz", - "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==", + "import-local": { + "version": "3.1.0", "dev": true, "requires": { - "is-descriptor": "^1.0.2", - "isobject": "^3.0.1" - }, - "dependencies": { - "is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-data-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", - "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-descriptor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", - "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", - "dev": true, - "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - } - } + "pkg-dir": "^4.2.0", + "resolve-cwd": "^3.0.0" } }, - "delayed-stream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", - "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=", + "imurmurhash": { + "version": "0.1.4", "dev": true }, - "detect-newline": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/detect-newline/-/detect-newline-3.1.0.tgz", - "integrity": "sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA==", + "indent-string": { + "version": "4.0.0", "dev": true }, - "diff-sequences": { - "version": "26.6.2", - "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-26.6.2.tgz", - "integrity": "sha512-Mv/TDa3nZ9sbc5soK+OoA74BsS3mL37yixCvUAQkiuA4Wz6YtwP/K47n2rv2ovzHZvoiQeA5FTQOschKkEwB0Q==", + "inflight": { + "version": "1.0.6", + "dev": true, + "requires": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "inherit": { + "version": "2.2.7", + "resolved": "https://registry.npmjs.org/inherit/-/inherit-2.2.7.tgz", + "integrity": "sha512-dxJmC1j0Q32NFAjvbd6g3lXYLZ49HgzotgbSMwMkoiTXGhC9412Oc24g7A7M9cPPkw/vDsF2cSII+2zJwocUtQ==", "dev": true }, - "dir-glob": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-2.2.2.tgz", - "integrity": "sha512-f9LBi5QWzIW3I6e//uxZoLBlUt9kcp66qo0sSCxL6YZKc75R1c4MFCoe/LaZiBGmgujvQdxc5Bn3QhfyvK5Hsw==", + "inherits": { + "version": "2.0.4", + "dev": true + }, + "ini": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", + "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==", + "dev": true, + "optional": true + }, + "inquirer": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-8.0.0.tgz", + "integrity": "sha512-ON8pEJPPCdyjxj+cxsYRe6XfCJepTxANdNnTebsTuQgXpRyZRRT9t4dJwjRubgmvn20CLSEnozRUayXyM9VTXA==", "dev": true, + "optional": true, "requires": { - "path-type": "^3.0.0" + "ansi-escapes": "^4.2.1", + "chalk": "^4.1.0", + "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", + "run-async": "^2.4.0", + "rxjs": "^6.6.6", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0", + "through": "^2.3.6" } }, - "domexception": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/domexception/-/domexception-2.0.1.tgz", - "integrity": "sha512-yxJ2mFy/sibVQlu5qHjOkf9J3K6zgmCxgJ94u2EdvDOV09H+32LtRswEcUsmUWN72pVLOEnTSRaIVVzVQgS0dg==", + "internal-slot": { + "version": "1.0.3", "dev": true, "requires": { - "webidl-conversions": "^5.0.0" - }, - "dependencies": { - "webidl-conversions": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-5.0.0.tgz", - "integrity": "sha512-VlZwKPCkYKxQgeSbH5EyngOmRp7Ww7I9rQLERETtf5ofd9pGeswWiOtogpEO850jziPRarreGxn5QIiTqpb2wA==", - "dev": true - } + "get-intrinsic": "^1.1.0", + "has": "^1.0.3", + "side-channel": "^1.0.4" } }, - "electron-to-chromium": { - "version": "1.4.117", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.117.tgz", - "integrity": "sha512-ypZHxY+Sf/PXu7LVN+xoeanyisnJeSOy8Ki439L/oLueZb4c72FI45zXcK3gPpmTwyufh9m6NnbMLXnJh/0Fxg==", - "dev": true - }, - "emittery": { - "version": "0.7.2", - "resolved": "https://registry.npmjs.org/emittery/-/emittery-0.7.2.tgz", - "integrity": "sha512-A8OG5SR/ij3SsJdWDJdkkSYUjQdCUx6APQXem0SaEePBSRg4eymGYwBkKo1Y6DU+af/Jn2dBQqDBvjnr9Vi8nQ==", + "ip": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ip/-/ip-2.0.0.tgz", + "integrity": "sha512-WKa+XuLG1A1R0UWhl2+1XQSi+fZWMsYKffMZTTYsiZaUD8k2yDAj5atimTUD2TZkyCkNEeYE5NhFZmupOGtjYQ==", "dev": true }, - "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==", + "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==", "dev": true }, - "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==", + "is-accessor-descriptor": { + "version": "1.0.0", "dev": true, "requires": { - "once": "^1.4.0" + "kind-of": "^6.0.0" } }, - "error-ex": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", - "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", - "dev": true, - "requires": { - "is-arrayish": "^0.2.1" - } + "is-arrayish": { + "version": "0.2.1", + "dev": true }, - "es-abstract": { - "version": "1.18.0", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.18.0.tgz", - "integrity": "sha512-LJzK7MrQa8TS0ja2w3YNLzUgJCGPdPOV1yVvezjNnS89D+VR08+Szt2mz3YB2Dck/+w5tfIq/RoUAFqJJGM2yw==", + "is-bigint": { + "version": "1.0.4", "dev": true, "requires": { - "call-bind": "^1.0.2", - "es-to-primitive": "^1.2.1", - "function-bind": "^1.1.1", - "get-intrinsic": "^1.1.1", - "has": "^1.0.3", - "has-symbols": "^1.0.2", - "is-callable": "^1.2.3", - "is-negative-zero": "^2.0.1", - "is-regex": "^1.1.2", - "is-string": "^1.0.5", - "object-inspect": "^1.9.0", - "object-keys": "^1.1.1", - "object.assign": "^4.1.2", - "string.prototype.trimend": "^1.0.4", - "string.prototype.trimstart": "^1.0.4", - "unbox-primitive": "^1.0.0" + "has-bigints": "^1.0.1" } }, - "es-to-primitive": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", - "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", + "is-boolean-object": { + "version": "1.1.2", "dev": true, "requires": { - "is-callable": "^1.1.4", - "is-date-object": "^1.0.1", - "is-symbol": "^1.0.2" + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" } }, - "escalade": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", - "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", + "is-buffer": { + "version": "1.1.6", "dev": true }, - "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=", + "is-callable": { + "version": "1.2.7", "dev": true }, - "escodegen": { + "is-ci": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-2.0.0.tgz", - "integrity": "sha512-mmHKys/C8BFUGI+MAWNcSYoORYLMdPzjrknd2Vc+bUsjN5bXcr8EhrNB+UTqfL1y3I9c4fw2ihgtMPQLBRiQxw==", "dev": true, "requires": { - "esprima": "^4.0.1", - "estraverse": "^5.2.0", - "esutils": "^2.0.2", - "optionator": "^0.8.1", - "source-map": "~0.6.1" + "ci-info": "^2.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 - }, - "estraverse": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", - "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", - "dev": true + "is-core-module": { + "version": "2.11.0", + "dev": true, + "requires": { + "has": "^1.0.3" + } }, - "esutils": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", - "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", - "dev": true + "is-data-descriptor": { + "version": "1.0.0", + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } }, - "exec-sh": { - "version": "0.3.6", - "resolved": "https://registry.npmjs.org/exec-sh/-/exec-sh-0.3.6.tgz", - "integrity": "sha512-nQn+hI3yp+oD0huYhKwvYI32+JFeq+XkNcD1GAo3Y/MjxsfVGmrrzrnzjWiNY6f+pUCP440fThsFh5gZrRAU/w==", - "dev": true + "is-date-object": { + "version": "1.0.5", + "dev": true, + "requires": { + "has-tostringtag": "^1.0.0" + } }, - "execa": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/execa/-/execa-1.0.0.tgz", - "integrity": "sha512-adbxcyWV46qiHyvSp50TKt05tB4tK3HcmF7/nxfAdhnox83seTDbwnaqKO4sXRy7roHAIFqJP/Rw/AuEbX61LA==", + "is-descriptor": { + "version": "1.0.2", "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" + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" } }, - "exit": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz", - "integrity": "sha1-BjJjj42HfMghB9MKD/8aF8uhzQw=", - "dev": true + "is-docker": { + "version": "2.2.1", + "dev": true, + "optional": true }, - "expand-brackets": { - "version": "2.1.4", - "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-2.1.4.tgz", - "integrity": "sha1-t3c14xXOMPa27/D4OwQVGiJEliI=", + "is-expression": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-expression/-/is-expression-3.0.0.tgz", + "integrity": "sha512-vyMeQMq+AiH5uUnoBfMTwf18tO3bM6k1QXBE9D6ueAAquEfCZe3AJPtud9g6qS0+4X8xA7ndpZiDyeb2l2qOBw==", "dev": true, "requires": { - "debug": "^2.3.3", - "define-property": "^0.2.5", - "extend-shallow": "^2.0.1", - "posix-character-classes": "^0.1.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.1" + "acorn": "~4.0.2", + "object-assign": "^4.0.1" }, "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "dev": true, - "requires": { - "is-descriptor": "^0.1.0" - } - }, - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "acorn": { + "version": "4.0.13", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-4.0.13.tgz", + "integrity": "sha512-fu2ygVGuMmlzG8ZeRJ0bvR41nsAkxxhbyk8bZ1SS521Z7vmgJFTQQlfz/Mp/nJexGBz+v8sC9bM6+lNgskt4Ug==", "dev": true } } }, - "expect": { - "version": "26.6.2", - "resolved": "https://registry.npmjs.org/expect/-/expect-26.6.2.tgz", - "integrity": "sha512-9/hlOBkQl2l/PLHJx6JjoDF6xPKcJEsUlWKb23rKE7KzeDqUZKXKNMW27KIue5JMdBV9HgmoJPcc8HtO85t9IA==", + "is-extendable": { + "version": "1.0.1", "dev": true, "requires": { - "@jest/types": "^26.6.2", - "ansi-styles": "^4.0.0", - "jest-get-type": "^26.3.0", - "jest-matcher-utils": "^26.6.2", - "jest-message-util": "^26.6.2", - "jest-regex-util": "^26.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 - } + "is-plain-object": "^2.0.4" } }, - "extend-shallow": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", - "integrity": "sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=", + "is-extglob": { + "version": "2.1.1", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "3.0.0", + "dev": true + }, + "is-generator-fn": { + "version": "2.1.0", + "dev": true + }, + "is-glob": { + "version": "4.0.3", "dev": true, "requires": { - "assign-symbols": "^1.0.0", - "is-extendable": "^1.0.1" - }, - "dependencies": { - "is-extendable": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", - "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", - "dev": true, - "requires": { - "is-plain-object": "^2.0.4" - } - } + "is-extglob": "^2.1.1" } }, - "extglob": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz", - "integrity": "sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==", + "is-negative-zero": { + "version": "2.0.2", + "dev": true + }, + "is-number": { + "version": "3.0.0", "dev": true, "requires": { - "array-unique": "^0.3.2", - "define-property": "^1.0.0", - "expand-brackets": "^2.1.4", - "extend-shallow": "^2.0.1", - "fragment-cache": "^0.2.1", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.1" + "kind-of": "^3.0.2" }, "dependencies": { - "define-property": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", - "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", - "dev": true, - "requires": { - "is-descriptor": "^1.0.0" - } - }, - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - }, - "is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-data-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", - "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-descriptor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", - "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "kind-of": { + "version": "3.2.2", "dev": true, "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" + "is-buffer": "^1.1.5" } } } }, - "fast-glob": { - "version": "2.2.7", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-2.2.7.tgz", - "integrity": "sha512-g1KuQwHOZAmOZMuBtHdxDtju+T2RT8jgCC9aANsbpdiDDTSnjgfuVsIBNKbUeJI3oKMRExcfNDtJl4OhbffMsw==", + "is-number-object": { + "version": "1.0.7", "dev": true, "requires": { - "@mrmlnc/readdir-enhanced": "^2.2.1", - "@nodelib/fs.stat": "^1.1.2", - "glob-parent": "^3.1.0", - "is-glob": "^4.0.0", - "merge2": "^1.2.3", - "micromatch": "^3.1.10" - }, - "dependencies": { - "braces": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", - "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", - "dev": true, - "requires": { - "arr-flatten": "^1.1.0", - "array-unique": "^0.3.2", - "extend-shallow": "^2.0.1", - "fill-range": "^4.0.0", - "isobject": "^3.0.1", - "repeat-element": "^1.1.2", - "snapdragon": "^0.8.1", - "snapdragon-node": "^2.0.1", - "split-string": "^3.0.2", - "to-regex": "^3.0.1" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "fill-range": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", - "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", - "dev": true, - "requires": { - "extend-shallow": "^2.0.1", - "is-number": "^3.0.0", - "repeat-string": "^1.6.1", - "to-regex-range": "^2.1.0" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "is-number": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", - "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", - "dev": true, - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "micromatch": { - "version": "3.1.10", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", - "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", - "dev": true, - "requires": { - "arr-diff": "^4.0.0", - "array-unique": "^0.3.2", - "braces": "^2.3.1", - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "extglob": "^2.0.4", - "fragment-cache": "^0.2.1", - "kind-of": "^6.0.2", - "nanomatch": "^1.2.9", - "object.pick": "^1.3.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.2" - } - }, - "to-regex-range": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", - "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=", - "dev": true, - "requires": { - "is-number": "^3.0.0", - "repeat-string": "^1.6.1" - } - } + "has-tostringtag": "^1.0.0" } }, - "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==", + "is-plain-obj": { + "version": "1.1.0", "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=", + "is-plain-object": { + "version": "2.0.4", + "dev": true, + "requires": { + "isobject": "^3.0.1" + } + }, + "is-potential-custom-element-name": { + "version": "1.0.1", "dev": true }, - "fb-watchman": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/fb-watchman/-/fb-watchman-2.0.1.tgz", - "integrity": "sha512-DkPJKQeY6kKwmuMretBhr7G6Vodr7bFwDYTXIkfG1gjvNpaxBTQV3PbXg6bR1c1UP4jPOX0jHUbbHANL9vRjVg==", + "is-promise": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-2.2.2.tgz", + "integrity": "sha512-+lP4/6lKUBfQjZ2pdxThZvLUAafmZb8OAxFb8XXtiQmS35INgr85hdOGoEs124ez1FCnZJt6jau/T+alh58QFQ==", + "dev": true + }, + "is-regex": { + "version": "1.1.4", "dev": true, "requires": { - "bser": "2.1.1" + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" } }, - "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==", + "is-shared-array-buffer": { + "version": "1.0.2", "dev": true, "requires": { - "to-regex-range": "^5.0.1" + "call-bind": "^1.0.2" } }, - "find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "is-stream": { + "version": "2.0.1", + "dev": true + }, + "is-string": { + "version": "1.0.7", "dev": true, "requires": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" + "has-tostringtag": "^1.0.0" } }, - "for-in": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", - "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=", + "is-symbol": { + "version": "1.0.4", + "dev": true, + "requires": { + "has-symbols": "^1.0.2" + } + }, + "is-typedarray": { + "version": "1.0.0", "dev": true }, - "form-data": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-3.0.1.tgz", - "integrity": "sha512-RHkBKtLWUVwd7SqRIvCZMEvAMoGUp0XU+seQiZejj0COz3RI3hWP4sCv3gZWWLjJTd7rGwcsF5eKZGii0r/hbg==", + "is-weakref": { + "version": "1.0.2", "dev": true, "requires": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.8", - "mime-types": "^2.1.12" + "call-bind": "^1.0.2" } }, - "fragment-cache": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/fragment-cache/-/fragment-cache-0.2.1.tgz", - "integrity": "sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk=", + "is-windows": { + "version": "1.0.2", + "dev": true + }, + "is-wsl": { + "version": "2.2.0", "dev": true, + "optional": true, "requires": { - "map-cache": "^0.2.2" + "is-docker": "^2.0.0" } }, - "fs.realpath": { + "isarray": { "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 + "isexe": { + "version": "2.0.0", + "dev": true }, - "function-bind": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", - "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", + "isobject": { + "version": "3.0.1", "dev": true }, - "gensync": { - "version": "1.0.0-beta.2", - "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", - "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", + "isstream": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", + "integrity": "sha512-Yljz7ffyPbrLpLngrMtZ7NduUgVvi6wG9RJ9IUcyCd59YQ911PBJphODUcbOVbqYfxe1wuYf/LJ8PauMRwsM/g==", "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==", + "istanbul-lib-coverage": { + "version": "3.2.0", "dev": true }, - "get-intrinsic": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.1.tgz", - "integrity": "sha512-kWZrnVM42QCiEA2Ig1bG8zjoIMOgxWwYCEeNdwY6Tv/cOSeGpcoX4pXHfKUxNKVoArnrEr2e9srnAxxGIraS9Q==", + "istanbul-lib-instrument": { + "version": "4.0.3", "dev": true, "requires": { - "function-bind": "^1.1.1", - "has": "^1.0.3", - "has-symbols": "^1.0.1" + "@babel/core": "^7.7.5", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-coverage": "^3.0.0", + "semver": "^6.3.0" } }, - "get-package-type": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz", - "integrity": "sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==", - "dev": true + "istanbul-lib-report": { + "version": "3.0.0", + "dev": true, + "requires": { + "istanbul-lib-coverage": "^3.0.0", + "make-dir": "^3.0.0", + "supports-color": "^7.1.0" + } }, - "get-stream": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz", - "integrity": "sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==", + "istanbul-lib-source-maps": { + "version": "4.0.1", "dev": true, "requires": { - "pump": "^3.0.0" + "debug": "^4.1.1", + "istanbul-lib-coverage": "^3.0.0", + "source-map": "^0.6.1" } }, - "get-value": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz", - "integrity": "sha1-3BXKHGcjh8p2vTesCjlbogQqLCg=", + "istanbul-reports": { + "version": "3.1.5", + "dev": true, + "requires": { + "html-escaper": "^2.0.0", + "istanbul-lib-report": "^3.0.0" + } + }, + "jdataview": { + "version": "2.4.6", + "resolved": "https://registry.npmjs.org/jdataview/-/jdataview-2.4.6.tgz", + "integrity": "sha512-nDAdfHj2a+MBEj6eEiefq6zV7HCzW2mYKEw1y9oipRXpghE+5gGieQZOFiIdnXFYdMZh9OxloEUrTH956hV7PA==", "dev": true }, - "glob": { - "version": "7.1.6", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz", - "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==", + "jest": { + "version": "26.6.3", "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" + "@jest/core": "^26.6.3", + "import-local": "^3.0.2", + "jest-cli": "^26.6.3" } }, - "glob-parent": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz", - "integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=", + "jest-changed-files": { + "version": "26.6.2", "dev": true, "requires": { - "is-glob": "^3.1.0", - "path-dirname": "^1.0.0" - }, - "dependencies": { - "is-glob": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", - "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", - "dev": true, - "requires": { - "is-extglob": "^2.1.0" - } - } + "@jest/types": "^26.6.2", + "execa": "^4.0.0", + "throat": "^5.0.0" } }, - "glob-to-regexp": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.3.0.tgz", - "integrity": "sha1-jFoUlNIGbFcMw7/kSWF1rMTVAqs=", - "dev": true - }, - "globals": { - "version": "11.12.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", - "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", - "dev": true + "jest-cli": { + "version": "26.6.3", + "dev": true, + "requires": { + "@jest/core": "^26.6.3", + "@jest/test-result": "^26.6.2", + "@jest/types": "^26.6.2", + "chalk": "^4.0.0", + "exit": "^0.1.2", + "graceful-fs": "^4.2.4", + "import-local": "^3.0.2", + "is-ci": "^2.0.0", + "jest-config": "^26.6.3", + "jest-util": "^26.6.2", + "jest-validate": "^26.6.2", + "prompts": "^2.0.1", + "yargs": "^15.4.1" + } }, - "globby": { - "version": "9.2.0", - "resolved": "https://registry.npmjs.org/globby/-/globby-9.2.0.tgz", - "integrity": "sha512-ollPHROa5mcxDEkwg6bPt3QbEf4pDQSNtd6JPL1YvOvAo/7/0VAm9TccUeoTmarjPw4pfUthSCqcyfNB1I3ZSg==", + "jest-config": { + "version": "26.6.3", "dev": true, "requires": { - "@types/glob": "^7.1.1", - "array-union": "^1.0.2", - "dir-glob": "^2.2.2", - "fast-glob": "^2.2.6", - "glob": "^7.1.3", - "ignore": "^4.0.3", - "pify": "^4.0.1", - "slash": "^2.0.0" + "@babel/core": "^7.1.0", + "@jest/test-sequencer": "^26.6.3", + "@jest/types": "^26.6.2", + "babel-jest": "^26.6.3", + "chalk": "^4.0.0", + "deepmerge": "^4.2.2", + "glob": "^7.1.1", + "graceful-fs": "^4.2.4", + "jest-environment-jsdom": "^26.6.2", + "jest-environment-node": "^26.6.2", + "jest-get-type": "^26.3.0", + "jest-jasmine2": "^26.6.3", + "jest-regex-util": "^26.0.0", + "jest-resolve": "^26.6.2", + "jest-util": "^26.6.2", + "jest-validate": "^26.6.2", + "micromatch": "^4.0.2", + "pretty-format": "^26.6.2" }, "dependencies": { - "pify": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", - "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", - "dev": true + "braces": { + "version": "3.0.2", + "dev": true, + "requires": { + "fill-range": "^7.0.1" + } }, - "slash": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-2.0.0.tgz", - "integrity": "sha512-ZYKh3Wh2z1PpEXWr0MpSBZ0V6mZHAQfYevttO11c51CaWjGTaadiKZ+wVt1PbMlDV5qhMFslpZCemhwOK7C89A==", + "fill-range": { + "version": "7.0.1", + "dev": true, + "requires": { + "to-regex-range": "^5.0.1" + } + }, + "is-number": { + "version": "7.0.0", "dev": true + }, + "micromatch": { + "version": "4.0.5", + "dev": true, + "requires": { + "braces": "^3.0.2", + "picomatch": "^2.3.1" + } + }, + "to-regex-range": { + "version": "5.0.1", + "dev": true, + "requires": { + "is-number": "^7.0.0" + } } } }, - "graceful-fs": { - "version": "4.2.4", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.4.tgz", - "integrity": "sha512-WjKPNJF79dtJAVniUlGGWHYGz2jWxT6VhN/4m1NdkbZ2nOsEF+cI1Edgql5zCRhs/VsQYRvrXctxktVXZUkixw==", - "dev": true + "jest-diff": { + "version": "26.6.2", + "dev": true, + "requires": { + "chalk": "^4.0.0", + "diff-sequences": "^26.6.2", + "jest-get-type": "^26.3.0", + "pretty-format": "^26.6.2" + } }, - "growly": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/growly/-/growly-1.3.0.tgz", - "integrity": "sha1-8QdIy+dq+WS3yWyTxrzCivEgwIE=", + "jest-docblock": { + "version": "26.0.0", "dev": true, - "optional": true + "requires": { + "detect-newline": "^3.0.0" + } }, - "hard-rejection": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/hard-rejection/-/hard-rejection-2.1.0.tgz", - "integrity": "sha512-VIZB+ibDhx7ObhAe7OVtoEbuP4h/MuOTHJ+J8h/eBXotJYl0fBgR72xDFCKgIh22OJZIOVNxBMWuhAr10r8HdA==", - "dev": true + "jest-each": { + "version": "26.6.2", + "dev": true, + "requires": { + "@jest/types": "^26.6.2", + "chalk": "^4.0.0", + "jest-get-type": "^26.3.0", + "jest-util": "^26.6.2", + "pretty-format": "^26.6.2" + } }, - "has": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", - "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", + "jest-environment-jsdom": { + "version": "26.6.2", "dev": true, "requires": { - "function-bind": "^1.1.1" + "@jest/environment": "^26.6.2", + "@jest/fake-timers": "^26.6.2", + "@jest/types": "^26.6.2", + "@types/node": "*", + "jest-mock": "^26.6.2", + "jest-util": "^26.6.2", + "jsdom": "^16.4.0" } }, - "has-bigints": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.1.tgz", - "integrity": "sha512-LSBS2LjbNBTf6287JEbEzvJgftkF5qFkmCo9hDRpAzKhUOlJ+hx8dd4USs00SgsUNwc4617J9ki5YtEClM2ffA==", - "dev": true + "jest-environment-node": { + "version": "26.6.2", + "dev": true, + "requires": { + "@jest/environment": "^26.6.2", + "@jest/fake-timers": "^26.6.2", + "@jest/types": "^26.6.2", + "@types/node": "*", + "jest-mock": "^26.6.2", + "jest-util": "^26.6.2" + } }, - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "jest-get-type": { + "version": "26.3.0", "dev": true }, - "has-glob": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-glob/-/has-glob-1.0.0.tgz", - "integrity": "sha1-mqqe7b/7G6OZCnsAEPtnjuAIEgc=", + "jest-haste-map": { + "version": "26.6.2", "dev": true, "requires": { - "is-glob": "^3.0.0" + "@jest/types": "^26.6.2", + "@types/graceful-fs": "^4.1.2", + "@types/node": "*", + "anymatch": "^3.0.3", + "fb-watchman": "^2.0.0", + "fsevents": "^2.1.2", + "graceful-fs": "^4.2.4", + "jest-regex-util": "^26.0.0", + "jest-serializer": "^26.6.2", + "jest-util": "^26.6.2", + "jest-worker": "^26.6.2", + "micromatch": "^4.0.2", + "sane": "^4.0.3", + "walker": "^1.0.7" }, "dependencies": { - "is-glob": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", - "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", + "braces": { + "version": "3.0.2", "dev": true, "requires": { - "is-extglob": "^2.1.0" + "fill-range": "^7.0.1" + } + }, + "fill-range": { + "version": "7.0.1", + "dev": true, + "requires": { + "to-regex-range": "^5.0.1" + } + }, + "is-number": { + "version": "7.0.0", + "dev": true + }, + "micromatch": { + "version": "4.0.5", + "dev": true, + "requires": { + "braces": "^3.0.2", + "picomatch": "^2.3.1" + } + }, + "to-regex-range": { + "version": "5.0.1", + "dev": true, + "requires": { + "is-number": "^7.0.0" } } } }, - "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==", - "dev": true + "jest-jasmine2": { + "version": "26.6.3", + "dev": true, + "requires": { + "@babel/traverse": "^7.1.0", + "@jest/environment": "^26.6.2", + "@jest/source-map": "^26.6.2", + "@jest/test-result": "^26.6.2", + "@jest/types": "^26.6.2", + "@types/node": "*", + "chalk": "^4.0.0", + "co": "^4.6.0", + "expect": "^26.6.2", + "is-generator-fn": "^2.0.0", + "jest-each": "^26.6.2", + "jest-matcher-utils": "^26.6.2", + "jest-message-util": "^26.6.2", + "jest-runtime": "^26.6.3", + "jest-snapshot": "^26.6.2", + "jest-util": "^26.6.2", + "pretty-format": "^26.6.2", + "throat": "^5.0.0" + } }, - "has-value": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-value/-/has-value-1.0.0.tgz", - "integrity": "sha1-GLKB2lhbHFxR3vJMkw7SmgvmsXc=", + "jest-leak-detector": { + "version": "26.6.2", "dev": true, "requires": { - "get-value": "^2.0.6", - "has-values": "^1.0.0", - "isobject": "^3.0.0" + "jest-get-type": "^26.3.0", + "pretty-format": "^26.6.2" } }, - "has-values": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-values/-/has-values-1.0.0.tgz", - "integrity": "sha1-lbC2P+whRmGab+V/51Yo1aOe/k8=", + "jest-matcher-utils": { + "version": "26.6.2", "dev": true, "requires": { - "is-number": "^3.0.0", - "kind-of": "^4.0.0" + "chalk": "^4.0.0", + "jest-diff": "^26.6.2", + "jest-get-type": "^26.3.0", + "pretty-format": "^26.6.2" + } + }, + "jest-message-util": { + "version": "26.6.2", + "dev": true, + "requires": { + "@babel/code-frame": "^7.0.0", + "@jest/types": "^26.6.2", + "@types/stack-utils": "^2.0.0", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.4", + "micromatch": "^4.0.2", + "pretty-format": "^26.6.2", + "slash": "^3.0.0", + "stack-utils": "^2.0.2" }, "dependencies": { + "braces": { + "version": "3.0.2", + "dev": true, + "requires": { + "fill-range": "^7.0.1" + } + }, + "fill-range": { + "version": "7.0.1", + "dev": true, + "requires": { + "to-regex-range": "^5.0.1" + } + }, "is-number": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", - "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", + "version": "7.0.0", + "dev": true + }, + "micromatch": { + "version": "4.0.5", "dev": true, "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } + "braces": "^3.0.2", + "picomatch": "^2.3.1" } }, - "kind-of": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz", - "integrity": "sha1-IIE989cSkosgc3hpGkUGb65y3Vc=", + "slash": { + "version": "3.0.0", + "dev": true + }, + "to-regex-range": { + "version": "5.0.1", "dev": true, "requires": { - "is-buffer": "^1.1.5" + "is-number": "^7.0.0" } } } }, - "hosted-git-info": { - "version": "2.8.8", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.8.tgz", - "integrity": "sha512-f/wzC2QaWBs7t9IYqB4T3sR1xviIViXJRJTWBlx2Gf3g0Xi5vI7Yy4koXQ1c9OYDGHN9sBy1DQ2AB8fqZBWhUg==", - "dev": true - }, - "html-encoding-sniffer": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/html-encoding-sniffer/-/html-encoding-sniffer-2.0.1.tgz", - "integrity": "sha512-D5JbOMBIR/TVZkubHT+OyT2705QvogUW4IBn6nHd756OwieSF9aDYFj4dv6HHEVGYbHaLETa3WggZYWWMyy3ZQ==", - "dev": true, - "requires": { - "whatwg-encoding": "^1.0.5" - } - }, - "html-escaper": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", - "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", - "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==", + "jest-mock": { + "version": "26.6.2", "dev": true, "requires": { - "@tootallnate/once": "1", - "agent-base": "6", - "debug": "4" + "@jest/types": "^26.6.2", + "@types/node": "*" } }, - "https-proxy-agent": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", - "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", + "jest-pnp-resolver": { + "version": "1.2.3", "dev": true, - "requires": { - "agent-base": "6", - "debug": "4" - } + "requires": {} }, - "human-signals": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-1.1.1.tgz", - "integrity": "sha512-SEQu7vl8KjNL2eoGBLF3+wAjpsNfA9XMlXAYj/3EdaNfAlxKthD1xjEQfGOUhllCGGJVNY34bRr6lPINhNjyZw==", + "jest-regex-util": { + "version": "26.0.0", "dev": true }, - "iconv-lite": { - "version": "0.4.24", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", - "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", + "jest-resolve": { + "version": "26.6.2", "dev": true, "requires": { - "safer-buffer": ">= 2.1.2 < 3" + "@jest/types": "^26.6.2", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.4", + "jest-pnp-resolver": "^1.2.2", + "jest-util": "^26.6.2", + "read-pkg-up": "^7.0.1", + "resolve": "^1.18.1", + "slash": "^3.0.0" + }, + "dependencies": { + "slash": { + "version": "3.0.0", + "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-local": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/import-local/-/import-local-3.1.0.tgz", - "integrity": "sha512-ASB07uLtnDs1o6EHjKpX34BKYDSqnFerfTOJL2HvMqF70LnxpjkzDB8J44oT9pu4AMPkQwf8jl6szgvNd2tRIg==", + "jest-resolve-dependencies": { + "version": "26.6.3", "dev": true, "requires": { - "pkg-dir": "^4.2.0", - "resolve-cwd": "^3.0.0" + "@jest/types": "^26.6.2", + "jest-regex-util": "^26.0.0", + "jest-snapshot": "^26.6.2" } }, - "imurmurhash": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", - "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", - "dev": true - }, - "indent-string": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", - "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", - "dev": true - }, - "inflight": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", + "jest-runner": { + "version": "26.6.3", "dev": true, "requires": { - "once": "^1.3.0", - "wrappy": "1" + "@jest/console": "^26.6.2", + "@jest/environment": "^26.6.2", + "@jest/test-result": "^26.6.2", + "@jest/types": "^26.6.2", + "@types/node": "*", + "chalk": "^4.0.0", + "emittery": "^0.7.1", + "exit": "^0.1.2", + "graceful-fs": "^4.2.4", + "jest-config": "^26.6.3", + "jest-docblock": "^26.0.0", + "jest-haste-map": "^26.6.2", + "jest-leak-detector": "^26.6.2", + "jest-message-util": "^26.6.2", + "jest-resolve": "^26.6.2", + "jest-runtime": "^26.6.3", + "jest-util": "^26.6.2", + "jest-worker": "^26.6.2", + "source-map-support": "^0.5.6", + "throat": "^5.0.0" } }, - "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-accessor-descriptor": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", - "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", + "jest-runtime": { + "version": "26.6.3", "dev": true, "requires": { - "kind-of": "^3.0.2" + "@jest/console": "^26.6.2", + "@jest/environment": "^26.6.2", + "@jest/fake-timers": "^26.6.2", + "@jest/globals": "^26.6.2", + "@jest/source-map": "^26.6.2", + "@jest/test-result": "^26.6.2", + "@jest/transform": "^26.6.2", + "@jest/types": "^26.6.2", + "@types/yargs": "^15.0.0", + "chalk": "^4.0.0", + "cjs-module-lexer": "^0.6.0", + "collect-v8-coverage": "^1.0.0", + "exit": "^0.1.2", + "glob": "^7.1.3", + "graceful-fs": "^4.2.4", + "jest-config": "^26.6.3", + "jest-haste-map": "^26.6.2", + "jest-message-util": "^26.6.2", + "jest-mock": "^26.6.2", + "jest-regex-util": "^26.0.0", + "jest-resolve": "^26.6.2", + "jest-snapshot": "^26.6.2", + "jest-util": "^26.6.2", + "jest-validate": "^26.6.2", + "slash": "^3.0.0", + "strip-bom": "^4.0.0", + "yargs": "^15.4.1" }, "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } + "slash": { + "version": "3.0.0", + "dev": true } } }, - "is-arrayish": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", - "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=", - "dev": true - }, - "is-bigint": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.1.tgz", - "integrity": "sha512-J0ELF4yHFxHy0cmSxZuheDOz2luOdVvqjwmEcj8H/L1JHeuEDSDbeRP+Dk9kFVk5RTFzbucJ2Kb9F7ixY2QaCg==", - "dev": true - }, - "is-boolean-object": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.0.tgz", - "integrity": "sha512-a7Uprx8UtD+HWdyYwnD1+ExtTgqQtD2k/1yJgtXP6wnMm8byhkoTZRl+95LLThpzNZJ5aEvi46cdH+ayMFRwmA==", - "dev": true, - "requires": { - "call-bind": "^1.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==", - "dev": true - }, - "is-callable": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.3.tgz", - "integrity": "sha512-J1DcMe8UYTBSrKezuIUTUwjXsho29693unXM2YhJUTR2txK/eG47bvNa/wipPFmZFgr/N6f1GA66dv0mEyTIyQ==", - "dev": true - }, - "is-ci": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-2.0.0.tgz", - "integrity": "sha512-YfJT7rkpQB0updsdHLGWrvhBJfcfzNNawYDNIyQXJz0IViGf75O8EBPKSdvw2rF+LGCsX4FZ8tcr3b19LcZq4w==", + "jest-serializer": { + "version": "26.6.2", "dev": true, "requires": { - "ci-info": "^2.0.0" + "@types/node": "*", + "graceful-fs": "^4.2.4" } }, - "is-core-module": { - "version": "2.9.0", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.9.0.tgz", - "integrity": "sha512-+5FPy5PnwmO3lvfMb0AsoPaBG+5KHUI0wYFXOtYPnVVVspTFUuMZNfNaNVRt3FZadstu2c8x23vykRW/NBoU6A==", + "jest-snapshot": { + "version": "26.6.2", "dev": true, "requires": { - "has": "^1.0.3" + "@babel/types": "^7.0.0", + "@jest/types": "^26.6.2", + "@types/babel__traverse": "^7.0.4", + "@types/prettier": "^2.0.0", + "chalk": "^4.0.0", + "expect": "^26.6.2", + "graceful-fs": "^4.2.4", + "jest-diff": "^26.6.2", + "jest-get-type": "^26.3.0", + "jest-haste-map": "^26.6.2", + "jest-matcher-utils": "^26.6.2", + "jest-message-util": "^26.6.2", + "jest-resolve": "^26.6.2", + "natural-compare": "^1.4.0", + "pretty-format": "^26.6.2", + "semver": "^7.3.2" + }, + "dependencies": { + "semver": { + "version": "7.3.8", + "dev": true, + "requires": { + "lru-cache": "^6.0.0" + } + } } }, - "is-data-descriptor": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", - "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", + "jest-util": { + "version": "26.6.2", "dev": true, "requires": { - "kind-of": "^3.0.2" + "@jest/types": "^26.6.2", + "@types/node": "*", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.4", + "is-ci": "^2.0.0", + "micromatch": "^4.0.2" }, "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "braces": { + "version": "3.0.2", "dev": true, "requires": { - "is-buffer": "^1.1.5" + "fill-range": "^7.0.1" + } + }, + "fill-range": { + "version": "7.0.1", + "dev": true, + "requires": { + "to-regex-range": "^5.0.1" + } + }, + "is-number": { + "version": "7.0.0", + "dev": true + }, + "micromatch": { + "version": "4.0.5", + "dev": true, + "requires": { + "braces": "^3.0.2", + "picomatch": "^2.3.1" + } + }, + "to-regex-range": { + "version": "5.0.1", + "dev": true, + "requires": { + "is-number": "^7.0.0" } } } }, - "is-date-object": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.2.tgz", - "integrity": "sha512-USlDT524woQ08aoZFzh3/Z6ch9Y/EWXEHQ/AaRN0SkKq4t2Jw2R2339tSXmwuVoY7LLlBCbOIlx2myP/L5zk0g==", - "dev": true - }, - "is-descriptor": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", - "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", + "jest-validate": { + "version": "26.6.2", "dev": true, "requires": { - "is-accessor-descriptor": "^0.1.6", - "is-data-descriptor": "^0.1.4", - "kind-of": "^5.0.0" + "@jest/types": "^26.6.2", + "camelcase": "^6.0.0", + "chalk": "^4.0.0", + "jest-get-type": "^26.3.0", + "leven": "^3.1.0", + "pretty-format": "^26.6.2" }, "dependencies": { - "kind-of": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", - "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", + "camelcase": { + "version": "6.3.0", "dev": true } } }, - "is-docker": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz", - "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==", - "dev": true, - "optional": true - }, - "is-extendable": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", - "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=", - "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-generator-fn": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-generator-fn/-/is-generator-fn-2.1.0.tgz", - "integrity": "sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ==", - "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==", + "jest-watcher": { + "version": "26.6.2", "dev": true, "requires": { - "is-extglob": "^2.1.1" + "@jest/test-result": "^26.6.2", + "@jest/types": "^26.6.2", + "@types/node": "*", + "ansi-escapes": "^4.2.1", + "chalk": "^4.0.0", + "jest-util": "^26.6.2", + "string-length": "^4.0.1" } }, - "is-negative-zero": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.1.tgz", - "integrity": "sha512-2z6JzQvZRa9A2Y7xC6dQQm4FSTSTNWjKIYYTt4246eMTJmIo0Q+ZyOsU66X8lxK1AbB92dFeglPLrhwpeRKO6w==", - "dev": true - }, - "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-number-object": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.4.tgz", - "integrity": "sha512-zohwelOAur+5uXtk8O3GPQ1eAcu4ZX3UwxQhUlfFFMNpUd83gXgjbhJh6HmB6LUNV/ieOLQuDwJO3dWJosUeMw==", - "dev": true - }, - "is-plain-obj": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz", - "integrity": "sha1-caUMhCnfync8kqOQpKA7OfzVHT4=", - "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==", + "jest-worker": { + "version": "26.6.2", "dev": true, "requires": { - "isobject": "^3.0.1" + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^7.0.0" } }, - "is-potential-custom-element-name": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-potential-custom-element-name/-/is-potential-custom-element-name-1.0.1.tgz", - "integrity": "sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ==", - "dev": true - }, - "is-regex": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.2.tgz", - "integrity": "sha512-axvdhb5pdhEVThqJzYXwMlVuZwC+FF2DpcOhTS+y/8jVq4trxyPgfcwIxIKiyeuLlSQYKkmUaPQJ8ZE4yNKXDg==", + "jose": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/jose/-/jose-0.3.2.tgz", + "integrity": "sha512-zgssbxYYw3JIz01E8YlOv346Jrq/cmnIJCwwuzc+6xRrSoTrQ1OryRtEErwI8DhykdyKG0s3r8i0G+l26JC8NA==", "dev": true, "requires": { - "call-bind": "^1.0.2", - "has-symbols": "^1.0.1" + "asn1.js": "^2.2.0", + "bn.js": "^3.1.2" } }, - "is-stream": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", - "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=", + "js-stringify": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/js-stringify/-/js-stringify-1.0.2.tgz", + "integrity": "sha512-rtS5ATOo2Q5k1G+DADISilDA6lv79zIiwFd6CcjuIxGKLFm5C+RLImRscVap9k55i+MOZwgliw+NejvkLuGD5g==", "dev": true }, - "is-string": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.5.tgz", - "integrity": "sha512-buY6VNRjhQMiF1qWDouloZlQbRhDPCebwxSjxMjxgemYT46YMd2NR0/H+fBhEfWX4A/w9TBJ+ol+okqJKFE6vQ==", + "js-tokens": { + "version": "4.0.0", "dev": true }, - "is-symbol": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.3.tgz", - "integrity": "sha512-OwijhaRSgqvhm/0ZdAcXNZt9lYdKFpcRDT5ULUuYXPoT794UNOdU+gpT6Rzo7b4V2HUl/op6GqY894AZwv9faQ==", + "js-yaml": { + "version": "3.14.1", "dev": true, "requires": { - "has-symbols": "^1.0.1" + "argparse": "^1.0.7", + "esprima": "^4.0.0" } }, - "is-typedarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", - "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=", - "dev": true - }, - "is-windows": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz", - "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==", - "dev": true - }, - "is-wsl": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", - "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==", + "jsdom": { + "version": "16.7.0", "dev": true, - "optional": true, "requires": { - "is-docker": "^2.0.0" + "abab": "^2.0.5", + "acorn": "^8.2.4", + "acorn-globals": "^6.0.0", + "cssom": "^0.4.4", + "cssstyle": "^2.3.0", + "data-urls": "^2.0.0", + "decimal.js": "^10.2.1", + "domexception": "^2.0.1", + "escodegen": "^2.0.0", + "form-data": "^3.0.0", + "html-encoding-sniffer": "^2.0.1", + "http-proxy-agent": "^4.0.1", + "https-proxy-agent": "^5.0.0", + "is-potential-custom-element-name": "^1.0.1", + "nwsapi": "^2.2.0", + "parse5": "6.0.1", + "saxes": "^5.0.1", + "symbol-tree": "^3.2.4", + "tough-cookie": "^4.0.0", + "w3c-hr-time": "^1.0.2", + "w3c-xmlserializer": "^2.0.0", + "webidl-conversions": "^6.1.0", + "whatwg-encoding": "^1.0.5", + "whatwg-mimetype": "^2.3.0", + "whatwg-url": "^8.5.0", + "ws": "^7.4.6", + "xml-name-validator": "^3.0.0" } }, - "isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", + "jsesc": { + "version": "2.5.2", "dev": true }, - "isexe": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", + "json-parse-better-errors": { + "version": "1.0.2", "dev": true }, - "isobject": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "json-parse-even-better-errors": { + "version": "2.3.1", "dev": true }, - "istanbul-lib-coverage": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.0.tgz", - "integrity": "sha512-eOeJ5BHCmHYvQK7xt9GkdHuzuCGS1Y6g9Gvnx3Ym33fz/HpLRYxiS0wHNr+m/MBC8B647Xt608vCDEvhl9c6Mw==", + "json-stringify-safe": { + "version": "5.0.1", "dev": true }, - "istanbul-lib-instrument": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-4.0.3.tgz", - "integrity": "sha512-BXgQl9kf4WTCPCCpmFGoJkz/+uhvm7h7PFKUYxh7qarQd3ER33vHG//qaE8eN25l07YqZPpHXU9I09l/RD5aGQ==", + "json2csv": { + "version": "4.5.1", + "resolved": "https://registry.npmjs.org/json2csv/-/json2csv-4.5.1.tgz", + "integrity": "sha512-o90Xa1ziGk3i7AJEO79Jac4+7SEUk58/DxS5mDPW6GF7poX0y7Y0pm1FbWrkz9VzKE4MpUW9aKBOCpJ0U1Ua8A==", "dev": true, "requires": { - "@babel/core": "^7.7.5", - "@istanbuljs/schema": "^0.1.2", - "istanbul-lib-coverage": "^3.0.0", - "semver": "^6.3.0" + "commander": "^2.15.1", + "jsonparse": "^1.3.1", + "lodash.get": "^4.4.2" }, "dependencies": { - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "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==", "dev": true } } }, - "istanbul-lib-report": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz", - "integrity": "sha512-wcdi+uAKzfiGT2abPpKZ0hSU1rGQjUQnLvtY5MpQ7QCTahD3VODhcu4wcfY1YtkGaDD5yuydOLINXsfbus9ROw==", + "json5": { + "version": "2.2.1", + "dev": true + }, + "jsonfile": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", + "integrity": "sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==", "dev": true, "requires": { - "istanbul-lib-coverage": "^3.0.0", - "make-dir": "^3.0.0", - "supports-color": "^7.1.0" + "graceful-fs": "^4.1.6" + } + }, + "jsonparse": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/jsonparse/-/jsonparse-1.3.1.tgz", + "integrity": "sha512-POQXvpdL69+CluYsillJ7SUhKvytYjW9vG/GKpnf+xP8UWgYEM/RaMzHHofbALDiKbbP1W8UEYmgGl39WkPZsg==", + "dev": true + }, + "JSONStream": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/JSONStream/-/JSONStream-1.3.5.tgz", + "integrity": "sha512-E+iruNOY8VV9s4JEbe1aNEm6MiszPRr/UfcHMz0TQh1BXSxHK+ASV1R6W4HpjBhSeS+54PIsAMCBmwD06LLsqQ==", + "dev": true, + "requires": { + "jsonparse": "^1.2.0", + "through": ">=2.2.7 <3" + } + }, + "jsonwebtoken": { + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/jsonwebtoken/-/jsonwebtoken-9.0.0.tgz", + "integrity": "sha512-tuGfYXxkQGDPnLJ7SibiQgVgeDgfbPq2k2ICcbgqW8WxWLBAxKQM/ZCu/IT8SOSwmaYl4dpTFCW5xZv7YbbWUw==", + "dev": true, + "requires": { + "jws": "^3.2.2", + "lodash": "^4.17.21", + "ms": "^2.1.1", + "semver": "^7.3.8" }, "dependencies": { - "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==", + "semver": { + "version": "7.3.8", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", + "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", "dev": true, "requires": { - "has-flag": "^4.0.0" + "lru-cache": "^6.0.0" } } } }, - "istanbul-lib-source-maps": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz", - "integrity": "sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==", + "jstransformer": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/jstransformer/-/jstransformer-1.0.0.tgz", + "integrity": "sha512-C9YK3Rf8q6VAPDCCU9fnqo3mAfOH6vUGnMcP4AQAYIEpWtfGLpwOTmZ+igtdK5y+VvI2n3CyYSzy4Qh34eq24A==", "dev": true, "requires": { - "debug": "^4.1.1", - "istanbul-lib-coverage": "^3.0.0", - "source-map": "^0.6.1" + "is-promise": "^2.0.0", + "promise": "^7.0.1" } }, - "istanbul-reports": { - "version": "3.1.4", - "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.4.tgz", - "integrity": "sha512-r1/DshN4KSE7xWEknZLLLLDn5CJybV3nw01VTkp6D5jzLuELlcbudfj/eSQFvrKsJuTVCGnePO7ho82Nw9zzfw==", + "junk": { + "version": "3.1.0", + "dev": true + }, + "jwa": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/jwa/-/jwa-1.4.1.tgz", + "integrity": "sha512-qiLX/xhEEFKUAJ6FiBMbes3w9ATzyk5W7Hvzpa/SLYdxNtng+gcurvrI7TbACjIXlsJyr05/S1oUhZrc63evQA==", "dev": true, "requires": { - "html-escaper": "^2.0.0", - "istanbul-lib-report": "^3.0.0" + "buffer-equal-constant-time": "1.0.1", + "ecdsa-sig-formatter": "1.0.11", + "safe-buffer": "^5.0.1" } }, - "jest": { - "version": "26.6.3", - "resolved": "https://registry.npmjs.org/jest/-/jest-26.6.3.tgz", - "integrity": "sha512-lGS5PXGAzR4RF7V5+XObhqz2KZIDUA1yD0DG6pBVmy10eh0ZIXQImRuzocsI/N2XZ1GrLFwTS27In2i2jlpq1Q==", + "jws": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/jws/-/jws-3.2.2.tgz", + "integrity": "sha512-YHlZCB6lMTllWDtSPHz/ZXTsi8S00usEV6v1tjq8tOUZzw7DpSDWVXjXDre6ed1w/pd495ODpHZYSdkRTsa0HA==", "dev": true, "requires": { - "@jest/core": "^26.6.3", - "import-local": "^3.0.2", - "jest-cli": "^26.6.3" - }, - "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" - } - }, - "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" - } - }, - "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 - }, - "jest-cli": { - "version": "26.6.3", - "resolved": "https://registry.npmjs.org/jest-cli/-/jest-cli-26.6.3.tgz", - "integrity": "sha512-GF9noBSa9t08pSyl3CY4frMrqp+aQXFGFkf5hEPbh/pIUFYWMK6ZLTfbmadxJVcJrdRoChlWQsA2VkJcDFK8hg==", - "dev": true, - "requires": { - "@jest/core": "^26.6.3", - "@jest/test-result": "^26.6.2", - "@jest/types": "^26.6.2", - "chalk": "^4.0.0", - "exit": "^0.1.2", - "graceful-fs": "^4.2.4", - "import-local": "^3.0.2", - "is-ci": "^2.0.0", - "jest-config": "^26.6.3", - "jest-util": "^26.6.2", - "jest-validate": "^26.6.2", - "prompts": "^2.0.1", - "yargs": "^15.4.1" - } - }, - "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" - } - } + "jwa": "^1.4.1", + "safe-buffer": "^5.0.1" } }, - "jest-changed-files": { - "version": "26.6.2", - "resolved": "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-26.6.2.tgz", - "integrity": "sha512-fDS7szLcY9sCtIip8Fjry9oGf3I2ht/QT21bAHm5Dmf0mD4X3ReNUf17y+bO6fR8WgbIZTlbyG1ak/53cbRzKQ==", + "kareem": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/kareem/-/kareem-2.5.1.tgz", + "integrity": "sha512-7jFxRVm+jD+rkq3kY0iZDJfsO2/t4BBPeEb2qKn2lR/9KhuksYk5hxzfRYWMPV8P/x2d0kHD306YyWLzjjH+uA==", + "dev": true + }, + "kind-of": { + "version": "6.0.3", + "dev": true + }, + "kleur": { + "version": "3.0.3", + "dev": true + }, + "lazy-cache": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/lazy-cache/-/lazy-cache-1.0.4.tgz", + "integrity": "sha512-RE2g0b5VGZsOCFOCgP7omTRYFqydmZkBwl5oNnQ1lDYC57uyO9KqNnNVxT7COSHTxrRCWVcAVOcbjk+tvh/rgQ==", + "dev": true + }, + "lazystream": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/lazystream/-/lazystream-1.0.1.tgz", + "integrity": "sha512-b94GiNHQNy6JNTrt5w6zNyffMrNkXZb3KTkCZJb2V1xaEGCk093vkZ2jk3tpaeP33/OiXC+WvK9AxUebnf5nbw==", "dev": true, "requires": { - "@jest/types": "^26.6.2", - "execa": "^4.0.0", - "throat": "^5.0.0" + "readable-stream": "^2.0.5" }, "dependencies": { - "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" - } - }, - "execa": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/execa/-/execa-4.1.0.tgz", - "integrity": "sha512-j5W0//W7f8UxAn8hXVnwG8tLwdiUy4FJLcSupCg6maBYZDpyBvTApK7KyuI4bKj8KOh1r2YH+6ucuYtJv1bTZA==", - "dev": true, - "requires": { - "cross-spawn": "^7.0.0", - "get-stream": "^5.0.0", - "human-signals": "^1.1.1", - "is-stream": "^2.0.0", - "merge-stream": "^2.0.0", - "npm-run-path": "^4.0.0", - "onetime": "^5.1.0", - "signal-exit": "^3.0.2", - "strip-final-newline": "^2.0.0" - } - }, - "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==", - "dev": true, - "requires": { - "pump": "^3.0.0" - } - }, - "is-stream": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", - "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", - "dev": true - }, - "npm-run-path": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", - "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", - "dev": true, - "requires": { - "path-key": "^3.0.0" - } - }, - "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 - }, - "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==", + "readable-stream": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", + "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", "dev": true, "requires": { - "shebang-regex": "^3.0.0" + "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" } }, - "shebang-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", - "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "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 }, - "which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "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": { - "isexe": "^2.0.0" + "safe-buffer": "~5.1.0" } } } }, - "jest-config": { - "version": "26.6.3", - "resolved": "https://registry.npmjs.org/jest-config/-/jest-config-26.6.3.tgz", - "integrity": "sha512-t5qdIj/bCj2j7NFVHb2nFB4aUdfucDn3JRKgrZnplb8nieAirAzRSHP8uDEd+qV6ygzg9Pz4YG7UTJf94LPSyg==", + "ldap-filter": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/ldap-filter/-/ldap-filter-0.2.2.tgz", + "integrity": "sha512-HDnDRNY/z0E3qljSjDWtu7xXCUdiXzwadz7m1jIwl3XHhPMrqUyurOd32YWH5IZ3zZMP4PrG7gKdRIB2uZHKGA==", "dev": true, "requires": { - "@babel/core": "^7.1.0", - "@jest/test-sequencer": "^26.6.3", - "@jest/types": "^26.6.2", - "babel-jest": "^26.6.3", - "chalk": "^4.0.0", - "deepmerge": "^4.2.2", - "glob": "^7.1.1", - "graceful-fs": "^4.2.4", - "jest-environment-jsdom": "^26.6.2", - "jest-environment-node": "^26.6.2", - "jest-get-type": "^26.3.0", - "jest-jasmine2": "^26.6.3", - "jest-regex-util": "^26.0.0", - "jest-resolve": "^26.6.2", - "jest-util": "^26.6.2", - "jest-validate": "^26.6.2", - "micromatch": "^4.0.2", - "pretty-format": "^26.6.2" + "assert-plus": "0.1.5" }, "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" - } - }, - "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" - } - }, - "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==", + "assert-plus": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-0.1.5.tgz", + "integrity": "sha512-brU24g7ryhRwGCI2y+1dGQmQXiZF7TtIj583S96y0jjdajIe6wn8BuXyELYhvD22dtIxDQVFk04YTJwwdwOYJw==", "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" - } } } }, - "jest-diff": { - "version": "26.6.2", - "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-26.6.2.tgz", - "integrity": "sha512-6m+9Z3Gv9wN0WFVasqjCL/06+EFCMTqDEUl/b87HYK2rAPTyfz4ZIuSlPhY51PIQRWx5TaxeF1qmXKe9gfN3sA==", + "ldapauth-fork": { + "version": "4.3.3", + "resolved": "https://registry.npmjs.org/ldapauth-fork/-/ldapauth-fork-4.3.3.tgz", + "integrity": "sha512-x76VpQ5ZqkwAJmqwcD6KIwDiNEbgIGIPGwC/eA17e1dxWhlTx36w0DlLOFwjTuZ2iuaLTsZsUprlVqvSlwc/1Q==", "dev": true, "requires": { - "chalk": "^4.0.0", - "diff-sequences": "^26.6.2", - "jest-get-type": "^26.3.0", - "pretty-format": "^26.6.2" + "@types/ldapjs": "^1.0.0", + "@types/node": "*", + "bcryptjs": "^2.4.0", + "ldapjs": "^1.0.2", + "lru-cache": "^5.1.1" }, "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" - } - }, - "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" - } - }, - "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==", + "lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", "dev": true, "requires": { - "color-name": "~1.1.4" + "yallist": "^3.0.2" } }, - "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==", + "yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", "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" - } } } }, - "jest-docblock": { - "version": "26.0.0", - "resolved": "https://registry.npmjs.org/jest-docblock/-/jest-docblock-26.0.0.tgz", - "integrity": "sha512-RDZ4Iz3QbtRWycd8bUEPxQsTlYazfYn/h5R65Fc6gOfwozFhoImx+affzky/FFBuqISPTqjXomoIGJVKBWoo0w==", + "ldapjs": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/ldapjs/-/ldapjs-1.0.2.tgz", + "integrity": "sha512-Y8fRYFXOWWKBs9I2QRNXb0FncDcG0Gjc7YU6XI3kIV9hLMRaFKH5QHi2TZeB7FrpgXuabOgL0GdYALbssHxH5Q==", + "dev": true, + "requires": { + "asn1": "0.2.3", + "assert-plus": "^1.0.0", + "backoff": "^2.5.0", + "bunyan": "^1.8.3", + "dashdash": "^1.14.0", + "dtrace-provider": "~0.8", + "ldap-filter": "0.2.2", + "once": "^1.4.0", + "vasync": "^1.6.4", + "verror": "^1.8.1" + } + }, + "leven": { + "version": "3.1.0", + "dev": true + }, + "levn": { + "version": "0.3.0", "dev": true, "requires": { - "detect-newline": "^3.0.0" + "prelude-ls": "~1.1.2", + "type-check": "~0.3.2" } }, - "jest-each": { - "version": "26.6.2", - "resolved": "https://registry.npmjs.org/jest-each/-/jest-each-26.6.2.tgz", - "integrity": "sha512-Mer/f0KaATbjl8MCJ+0GEpNdqmnVmDYqCTJYTvoo7rqmRiDllmp2AYN+06F93nXcY3ur9ShIjS+CO/uD+BbH4A==", + "lines-and-columns": { + "version": "1.2.4", + "dev": true + }, + "load-json-file": { + "version": "4.0.0", "dev": true, "requires": { - "@jest/types": "^26.6.2", - "chalk": "^4.0.0", - "jest-get-type": "^26.3.0", - "jest-util": "^26.6.2", - "pretty-format": "^26.6.2" + "graceful-fs": "^4.1.2", + "parse-json": "^4.0.0", + "pify": "^3.0.0", + "strip-bom": "^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" - } - }, - "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" - } - }, - "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==", + "pify": { + "version": "3.0.0", "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==", + "strip-bom": { + "version": "3.0.0", "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" - } } } }, - "jest-environment-jsdom": { - "version": "26.6.2", - "resolved": "https://registry.npmjs.org/jest-environment-jsdom/-/jest-environment-jsdom-26.6.2.tgz", - "integrity": "sha512-jgPqCruTlt3Kwqg5/WVFyHIOJHsiAvhcp2qiR2QQstuG9yWox5+iHpU3ZrcBxW14T4fe5Z68jAfLRh7joCSP2Q==", + "locate-path": { + "version": "5.0.0", "dev": true, "requires": { - "@jest/environment": "^26.6.2", - "@jest/fake-timers": "^26.6.2", - "@jest/types": "^26.6.2", - "@types/node": "*", - "jest-mock": "^26.6.2", - "jest-util": "^26.6.2", - "jsdom": "^16.4.0" + "p-locate": "^4.1.0" } }, - "jest-environment-node": { - "version": "26.6.2", - "resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-26.6.2.tgz", - "integrity": "sha512-zhtMio3Exty18dy8ee8eJ9kjnRyZC1N4C1Nt/VShN1apyXc8rWGtJ9lI7vqiWcyyXS4BVSEn9lxAM2D+07/Tag==", + "lodash": { + "version": "4.17.21", + "dev": true + }, + "lodash.defaults": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/lodash.defaults/-/lodash.defaults-4.2.0.tgz", + "integrity": "sha512-qjxPLHd3r5DnsdGacqOMU6pb/avJzdh9tFX2ymgoZE27BmjXrNy/y4LoaiTeAb+O3gL8AfpJGtqfX/ae2leYYQ==", + "dev": true + }, + "lodash.difference": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.difference/-/lodash.difference-4.5.0.tgz", + "integrity": "sha512-dS2j+W26TQ7taQBGN8Lbbq04ssV3emRw4NY58WErlTO29pIqS0HmoT5aJ9+TUQ1N3G+JOZSji4eugsWwGp9yPA==", + "dev": true + }, + "lodash.flatten": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/lodash.flatten/-/lodash.flatten-4.4.0.tgz", + "integrity": "sha512-C5N2Z3DgnnKr0LOpv/hKCgKdb7ZZwafIrsesve6lmzvZIRZRGaZ/l6Q8+2W7NaT+ZwO3fFlSCzCzrDCFdJfZ4g==", + "dev": true + }, + "lodash.get": { + "version": "4.4.2", + "resolved": "https://registry.npmjs.org/lodash.get/-/lodash.get-4.4.2.tgz", + "integrity": "sha512-z+Uw/vLuy6gQe8cfaFWD7p0wVv8fJl3mbzXh33RS+0oW2wvUqiRXiQ69gLWSLpgB5/6sU+r6BlQR0MBILadqTQ==", + "dev": true + }, + "lodash.isplainobject": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz", + "integrity": "sha512-oSXzaWypCMHkPC3NvBEaPHf0KsA5mvPrOPgQWDsbg8n7orZ290M0BmC/jgRZ4vcJ6DTAhjrsSYgdsW/F+MFOBA==", + "dev": true + }, + "lodash.union": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/lodash.union/-/lodash.union-4.6.0.tgz", + "integrity": "sha512-c4pB2CdGrGdjMKYLA+XiRDO7Y0PRQbm/Gzg8qMj+QH+pFVAoTp5sBpO0odL3FjoPCGjK96p6qsP+yQoiLoOBcw==", + "dev": true + }, + "longest": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/longest/-/longest-1.0.1.tgz", + "integrity": "sha512-k+yt5n3l48JU4k8ftnKG6V7u32wyH2NfKzeMto9F/QRE0amxy/LayxwlvjjkZEIzqR+19IrtFO8p5kB9QaYUFg==", + "dev": true + }, + "lru-cache": { + "version": "6.0.0", "dev": true, "requires": { - "@jest/environment": "^26.6.2", - "@jest/fake-timers": "^26.6.2", - "@jest/types": "^26.6.2", - "@types/node": "*", - "jest-mock": "^26.6.2", - "jest-util": "^26.6.2" + "yallist": "^4.0.0" } }, - "jest-get-type": { - "version": "26.3.0", - "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-26.3.0.tgz", - "integrity": "sha512-TpfaviN1R2pQWkIihlfEanwOXK0zcxrKEE4MlU6Tn7keoXdN6/3gK/xl0yEh8DOunn5pOVGKf8hB4R9gVh04ig==", + "make-dir": { + "version": "3.1.0", + "dev": true, + "requires": { + "semver": "^6.0.0" + } + }, + "make-error": { + "version": "1.3.6", "dev": true }, - "jest-haste-map": { - "version": "26.6.2", - "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-26.6.2.tgz", - "integrity": "sha512-easWIJXIw71B2RdR8kgqpjQrbMRWQBgiBwXYEhtGUTaX+doCjBheluShdDMeR8IMfJiTqH4+zfhtg29apJf/8w==", + "makeerror": { + "version": "1.0.12", "dev": true, "requires": { - "@jest/types": "^26.6.2", - "@types/graceful-fs": "^4.1.2", - "@types/node": "*", - "anymatch": "^3.0.3", - "fb-watchman": "^2.0.0", - "fsevents": "^2.1.2", - "graceful-fs": "^4.2.4", - "jest-regex-util": "^26.0.0", - "jest-serializer": "^26.6.2", - "jest-util": "^26.6.2", - "jest-worker": "^26.6.2", - "micromatch": "^4.0.2", - "sane": "^4.0.3", - "walker": "^1.0.7" + "tmpl": "1.0.5" } }, - "jest-jasmine2": { - "version": "26.6.3", - "resolved": "https://registry.npmjs.org/jest-jasmine2/-/jest-jasmine2-26.6.3.tgz", - "integrity": "sha512-kPKUrQtc8aYwBV7CqBg5pu+tmYXlvFlSFYn18ev4gPFtrRzB15N2gW/Roew3187q2w2eHuu0MU9TJz6w0/nPEg==", + "map-cache": { + "version": "0.2.2", + "dev": true + }, + "map-obj": { + "version": "4.3.0", + "dev": true + }, + "map-stream": { + "version": "0.0.7", + "resolved": "https://registry.npmjs.org/map-stream/-/map-stream-0.0.7.tgz", + "integrity": "sha512-C0X0KQmGm3N2ftbTGBhSyuydQ+vV1LC3f3zPvT3RXHXNZrvfPZcoXp/N5DOa8vedX/rTMm2CjTtivFg2STJMRQ==", + "dev": true + }, + "map-visit": { + "version": "1.0.0", "dev": true, "requires": { - "@babel/traverse": "^7.1.0", - "@jest/environment": "^26.6.2", - "@jest/source-map": "^26.6.2", - "@jest/test-result": "^26.6.2", - "@jest/types": "^26.6.2", - "@types/node": "*", - "chalk": "^4.0.0", - "co": "^4.6.0", - "expect": "^26.6.2", - "is-generator-fn": "^2.0.0", - "jest-each": "^26.6.2", - "jest-matcher-utils": "^26.6.2", - "jest-message-util": "^26.6.2", - "jest-runtime": "^26.6.3", - "jest-snapshot": "^26.6.2", - "jest-util": "^26.6.2", - "pretty-format": "^26.6.2", - "throat": "^5.0.0" + "object-visit": "^1.0.0" + } + }, + "md5.js": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.5.tgz", + "integrity": "sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==", + "dev": true, + "requires": { + "hash-base": "^3.0.0", + "inherits": "^2.0.1", + "safe-buffer": "^5.1.2" + } + }, + "media-typer": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", + "integrity": "sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==", + "dev": true + }, + "memory-pager": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/memory-pager/-/memory-pager-1.5.0.tgz", + "integrity": "sha512-ZS4Bp4r/Zoeq6+NLJpP+0Zzm0pR8whtGPf1XExKLJBAczGMnSi3It14OiNCStjQjM6NU1okjQGSxgEZN8eBYKg==", + "dev": true, + "optional": true + }, + "memorystream": { + "version": "0.3.1", + "dev": true + }, + "meow": { + "version": "6.1.1", + "dev": true, + "requires": { + "@types/minimist": "^1.2.0", + "camelcase-keys": "^6.2.2", + "decamelize-keys": "^1.1.0", + "hard-rejection": "^2.1.0", + "minimist-options": "^4.0.2", + "normalize-package-data": "^2.5.0", + "read-pkg-up": "^7.0.1", + "redent": "^3.0.0", + "trim-newlines": "^3.0.0", + "type-fest": "^0.13.1", + "yargs-parser": "^18.1.3" }, "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" - } - }, - "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" - } - }, - "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==", + "type-fest": { + "version": "0.13.1", "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" - } } } }, - "jest-leak-detector": { - "version": "26.6.2", - "resolved": "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-26.6.2.tgz", - "integrity": "sha512-i4xlXpsVSMeKvg2cEKdfhh0H39qlJlP5Ex1yQxwF9ubahboQYMgTtz5oML35AVA3B4Eu+YsmwaiKVev9KCvLxg==", + "merge-descriptors": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", + "integrity": "sha512-cCi6g3/Zr1iqQi6ySbseM1Xvooa98N0w31jzUYrXPX2xqObmFGHJ0tQ5u74H3mVh7wLouTseZyYIq39g8cNp1w==", + "dev": true + }, + "merge-stream": { + "version": "2.0.0", + "dev": true + }, + "merge2": { + "version": "1.4.1", + "dev": true + }, + "methods": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", + "integrity": "sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==", + "dev": true + }, + "mgrs": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/mgrs/-/mgrs-1.0.0.tgz", + "integrity": "sha512-awNbTOqCxK1DBGjalK3xqWIstBZgN6fxsMSiXLs9/spqWkF2pAhb2rrYCFSsr1/tT7PhcDGjZndG8SWYn0byYA==", + "dev": true + }, + "micromatch": { + "version": "3.1.10", + "dev": true, + "requires": { + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "braces": "^2.3.1", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "extglob": "^2.0.4", + "fragment-cache": "^0.2.1", + "kind-of": "^6.0.2", + "nanomatch": "^1.2.9", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.2" + } + }, + "mime": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", + "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", + "dev": true + }, + "mime-db": { + "version": "1.52.0", + "dev": true + }, + "mime-types": { + "version": "2.1.35", "dev": true, "requires": { - "jest-get-type": "^26.3.0", - "pretty-format": "^26.6.2" + "mime-db": "1.52.0" } }, - "jest-matcher-utils": { - "version": "26.6.2", - "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-26.6.2.tgz", - "integrity": "sha512-llnc8vQgYcNqDrqRDXWwMr9i7rS5XFiCwvh6DTP7Jqa2mqpcCBBlpCbn+trkG0KNhPu/h8rzyBkriOtBstvWhw==", + "mimic-fn": { + "version": "2.1.0", + "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==", + "dev": true, + "optional": true + }, + "min-indent": { + "version": "1.0.1", + "dev": true + }, + "minimalistic-assert": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", + "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==", + "dev": true + }, + "minimalistic-crypto-utils": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz", + "integrity": "sha512-JIYlbt6g8i5jKfJ3xz7rF0LXmv2TkDxBLUkiBeZ7bAx4GnnNMr8xFpGnOxn6GhTEHx3SjRrZEoU+j04prX1ktg==", + "dev": true + }, + "minimatch": { + "version": "3.1.2", "dev": true, "requires": { - "chalk": "^4.0.0", - "jest-diff": "^26.6.2", - "jest-get-type": "^26.3.0", - "pretty-format": "^26.6.2" + "brace-expansion": "^1.1.7" + } + }, + "minimist": { + "version": "1.2.7", + "dev": true + }, + "minimist-options": { + "version": "4.1.0", + "dev": true, + "requires": { + "arrify": "^1.0.1", + "is-plain-obj": "^1.1.0", + "kind-of": "^6.0.3" }, "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" - } - }, - "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" - } - }, - "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==", + "arrify": { + "version": "1.0.1", "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" - } } } }, - "jest-message-util": { - "version": "26.6.2", - "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-26.6.2.tgz", - "integrity": "sha512-rGiLePzQ3AzwUshu2+Rn+UMFk0pHN58sOG+IaJbk5Jxuqo3NYO1U2/MIR4S1sKgsoYSXSzdtSa0TgrmtUwEbmA==", + "minipass": { + "version": "4.2.5", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-4.2.5.tgz", + "integrity": "sha512-+yQl7SX3bIT83Lhb4BVorMAHVuqsskxRdlmO9kTpyukp8vsm2Sn/fUOV9xlnG8/a5JsypJzap21lz/y3FBMJ8Q==", + "dev": true, + "optional": true + }, + "minizlib": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz", + "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==", "dev": true, + "optional": true, "requires": { - "@babel/code-frame": "^7.0.0", - "@jest/types": "^26.6.2", - "@types/stack-utils": "^2.0.0", - "chalk": "^4.0.0", - "graceful-fs": "^4.2.4", - "micromatch": "^4.0.2", - "pretty-format": "^26.6.2", - "slash": "^3.0.0", - "stack-utils": "^2.0.2" + "minipass": "^3.0.0", + "yallist": "^4.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" - } - }, - "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" - } - }, - "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==", + "minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", "dev": true, + "optional": true, "requires": { - "has-flag": "^4.0.0" + "yallist": "^4.0.0" } } } }, - "jest-mock": { - "version": "26.6.2", - "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-26.6.2.tgz", - "integrity": "sha512-YyFjePHHp1LzpzYcmgqkJ0nm0gg/lJx2aZFzFy1S6eUqNjXsOqTK10zNRff2dNfssgokjkG65OlWNcIlgd3zew==", + "mixin-deep": { + "version": "1.3.2", "dev": true, "requires": { - "@jest/types": "^26.6.2", - "@types/node": "*" + "for-in": "^1.0.2", + "is-extendable": "^1.0.1" } }, - "jest-pnp-resolver": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/jest-pnp-resolver/-/jest-pnp-resolver-1.2.2.tgz", - "integrity": "sha512-olV41bKSMm8BdnuMsewT4jqlZ8+3TCARAXjZGT9jcoSnrfUnRCqnMoF9XEeoWjbzObpqF9dRhHQj0Xb9QdF6/w==", - "dev": true - }, - "jest-regex-util": { - "version": "26.0.0", - "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-26.0.0.tgz", - "integrity": "sha512-Gv3ZIs/nA48/Zvjrl34bf+oD76JHiGDUxNOVgUjh3j890sblXryjY4rss71fPtD/njchl6PSE2hIhvyWa1eT0A==", + "mkdirp": { + "version": "1.0.4", "dev": true }, - "jest-resolve": { - "version": "26.6.2", - "resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-26.6.2.tgz", - "integrity": "sha512-sOxsZOq25mT1wRsfHcbtkInS+Ek7Q8jCHUB0ZUTP0tc/c41QHriU/NunqMfCUWsL4H3MHpvQD4QR9kSYhS7UvQ==", + "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==", "dev": true, - "requires": { - "@jest/types": "^26.6.2", - "chalk": "^4.0.0", - "graceful-fs": "^4.2.4", - "jest-pnp-resolver": "^1.2.2", - "jest-util": "^26.6.2", - "read-pkg-up": "^7.0.1", - "resolve": "^1.18.1", - "slash": "^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" - } - }, - "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" - } - }, - "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 - }, - "path-parse": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", - "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", - "dev": true - }, - "resolve": { - "version": "1.22.0", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.0.tgz", - "integrity": "sha512-Hhtrw0nLeSrFQ7phPp4OOcVjLPIeMnRlr5mcnVuMe7M/7eBn98A3hmFRLoFo3DLZkivSYwhRUJTyPyWAk56WLw==", - "dev": true, - "requires": { - "is-core-module": "^2.8.1", - "path-parse": "^1.0.7", - "supports-preserve-symlinks-flag": "^1.0.0" - } - }, - "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" - } - } - } + "optional": true }, - "jest-resolve-dependencies": { - "version": "26.6.3", - "resolved": "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-26.6.3.tgz", - "integrity": "sha512-pVwUjJkxbhe4RY8QEWzN3vns2kqyuldKpxlxJlzEYfKSvY6/bMvxoFrYYzUO1Gx28yKWN37qyV7rIoIp2h8fTg==", + "moment": { + "version": "2.22.2", + "resolved": "https://registry.npmjs.org/moment/-/moment-2.22.2.tgz", + "integrity": "sha512-LRvkBHaJGnrcWvqsElsOhHCzj8mU39wLx5pQ0pc6s153GynCTsPdGdqsVNKAQD9sKnWj11iF7TZx9fpLwdD3fw==", + "dev": true + }, + "mongodb": { + "version": "4.15.0", + "resolved": "https://registry.npmjs.org/mongodb/-/mongodb-4.15.0.tgz", + "integrity": "sha512-1iM2fF2fSNVrecOq4pW9zaJHFNuk63RX3SsppIjC2df8JkBv6odGOIu9FuqnI6gQD0KAF2az4zZdQdabqGSLDQ==", "dev": true, "requires": { - "@jest/types": "^26.6.2", - "jest-regex-util": "^26.0.0", - "jest-snapshot": "^26.6.2" + "@aws-sdk/credential-providers": "^3.186.0", + "bson": "^4.7.2", + "mongodb-connection-string-url": "^2.5.4", + "saslprep": "^1.0.3", + "socks": "^2.7.1" } }, - "jest-runner": { - "version": "26.6.3", - "resolved": "https://registry.npmjs.org/jest-runner/-/jest-runner-26.6.3.tgz", - "integrity": "sha512-atgKpRHnaA2OvByG/HpGA4g6CSPS/1LK0jK3gATJAoptC1ojltpmVlYC3TYgdmGp+GLuhzpH30Gvs36szSL2JQ==", + "mongodb-connection-string-url": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/mongodb-connection-string-url/-/mongodb-connection-string-url-2.6.0.tgz", + "integrity": "sha512-WvTZlI9ab0QYtTYnuMLgobULWhokRjtC7db9LtcVfJ+Hsnyr5eo6ZtNAt3Ly24XZScGMelOcGtm7lSn0332tPQ==", "dev": true, "requires": { - "@jest/console": "^26.6.2", - "@jest/environment": "^26.6.2", - "@jest/test-result": "^26.6.2", - "@jest/types": "^26.6.2", - "@types/node": "*", - "chalk": "^4.0.0", - "emittery": "^0.7.1", - "exit": "^0.1.2", - "graceful-fs": "^4.2.4", - "jest-config": "^26.6.3", - "jest-docblock": "^26.0.0", - "jest-haste-map": "^26.6.2", - "jest-leak-detector": "^26.6.2", - "jest-message-util": "^26.6.2", - "jest-resolve": "^26.6.2", - "jest-runtime": "^26.6.3", - "jest-util": "^26.6.2", - "jest-worker": "^26.6.2", - "source-map-support": "^0.5.6", - "throat": "^5.0.0" + "@types/whatwg-url": "^8.2.1", + "whatwg-url": "^11.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" - } - }, - "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" - } - }, - "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==", + "tr46": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-3.0.0.tgz", + "integrity": "sha512-l7FvfAHlcmulp8kr+flpQZmVwtu7nfRV7NZujtN0OqES8EL4O4e0qqzL0DC5gAvx/ZC/9lk6rhcUwYvkBnBnYA==", "dev": true, "requires": { - "color-name": "~1.1.4" + "punycode": "^2.1.1" } }, - "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==", + "webidl-conversions": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-7.0.0.tgz", + "integrity": "sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==", "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==", + "whatwg-url": { + "version": "11.0.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-11.0.0.tgz", + "integrity": "sha512-RKT8HExMpoYx4igMiVMY83lN6UeITKJlBQ+vR/8ZJ8OCdSiN3RwCq+9gH0+Xzj0+5IrM6i4j/6LuvzbZIQgEcQ==", "dev": true, "requires": { - "has-flag": "^4.0.0" + "tr46": "^3.0.0", + "webidl-conversions": "^7.0.0" } } } }, - "jest-runtime": { - "version": "26.6.3", - "resolved": "https://registry.npmjs.org/jest-runtime/-/jest-runtime-26.6.3.tgz", - "integrity": "sha512-lrzyR3N8sacTAMeonbqpnSka1dHNux2uk0qqDXVkMv2c/A3wYnvQ4EXuI013Y6+gSKSCxdaczvf4HF0mVXHRdw==", + "mongoose": { + "version": "6.10.5", + "resolved": "https://registry.npmjs.org/mongoose/-/mongoose-6.10.5.tgz", + "integrity": "sha512-y4HL4/9EySec7L0gJ+pCm9heLSF45uIIvRS4fSeAFWDfe4vXW1vRZJwTz7OGkra3ZoSfRnFTo9bNZkuggDVlVA==", "dev": true, "requires": { - "@jest/console": "^26.6.2", - "@jest/environment": "^26.6.2", - "@jest/fake-timers": "^26.6.2", - "@jest/globals": "^26.6.2", - "@jest/source-map": "^26.6.2", - "@jest/test-result": "^26.6.2", - "@jest/transform": "^26.6.2", - "@jest/types": "^26.6.2", - "@types/yargs": "^15.0.0", - "chalk": "^4.0.0", - "cjs-module-lexer": "^0.6.0", - "collect-v8-coverage": "^1.0.0", - "exit": "^0.1.2", - "glob": "^7.1.3", - "graceful-fs": "^4.2.4", - "jest-config": "^26.6.3", - "jest-haste-map": "^26.6.2", - "jest-message-util": "^26.6.2", - "jest-mock": "^26.6.2", - "jest-regex-util": "^26.0.0", - "jest-resolve": "^26.6.2", - "jest-snapshot": "^26.6.2", - "jest-util": "^26.6.2", - "jest-validate": "^26.6.2", - "slash": "^3.0.0", - "strip-bom": "^4.0.0", - "yargs": "^15.4.1" + "bson": "^4.7.0", + "kareem": "2.5.1", + "mongodb": "4.14.0", + "mpath": "0.9.0", + "mquery": "4.0.3", + "ms": "2.1.3", + "sift": "16.0.1" }, "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" - } - }, - "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" - } - }, - "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==", + "mongodb": { + "version": "4.14.0", + "resolved": "https://registry.npmjs.org/mongodb/-/mongodb-4.14.0.tgz", + "integrity": "sha512-coGKkWXIBczZPr284tYKFLg+KbGPPLlSbdgfKAb6QqCFt5bo5VFZ50O3FFzsw4rnkqjwT6D8Qcoo9nshYKM7Mg==", "dev": true, "requires": { - "color-name": "~1.1.4" + "@aws-sdk/credential-providers": "^3.186.0", + "bson": "^4.7.0", + "mongodb-connection-string-url": "^2.5.4", + "saslprep": "^1.0.3", + "socks": "^2.7.1" } }, - "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 - }, - "strip-bom": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-4.0.0.tgz", - "integrity": "sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w==", + "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": "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" - } } } }, - "jest-serializer": { - "version": "26.6.2", - "resolved": "https://registry.npmjs.org/jest-serializer/-/jest-serializer-26.6.2.tgz", - "integrity": "sha512-S5wqyz0DXnNJPd/xfIzZ5Xnp1HrJWBczg8mMfMpN78OJ5eDxXyf+Ygld9wX1DnUWbIbhM1YDY95NjR4CBXkb2g==", + "mongoose-beautiful-unique-validation": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/mongoose-beautiful-unique-validation/-/mongoose-beautiful-unique-validation-7.1.1.tgz", + "integrity": "sha512-fprzp8nY9Qjg0+RZFMl7gVmbINRt2H53fpqyjJWwPO7nxJ9RZZB/Lo3y+mXaMP4nNMOeoJb2v3dNou6h+iLh8w==", "dev": true, - "requires": { - "@types/node": "*", - "graceful-fs": "^4.2.4" - } + "requires": {} }, - "jest-snapshot": { - "version": "26.6.2", - "resolved": "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-26.6.2.tgz", - "integrity": "sha512-OLhxz05EzUtsAmOMzuupt1lHYXCNib0ECyuZ/PZOx9TrZcC8vL0x+DUG3TL+GLX3yHG45e6YGjIm0XwDc3q3og==", + "mpath": { + "version": "0.9.0", + "resolved": "https://registry.npmjs.org/mpath/-/mpath-0.9.0.tgz", + "integrity": "sha512-ikJRQTk8hw5DEoFVxHG1Gn9T/xcjtdnOKIU1JTmGjZZlg9LST2mBLmcX3/ICIbgJydT2GOc15RnNy5mHmzfSew==", + "dev": true + }, + "mquery": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/mquery/-/mquery-4.0.3.tgz", + "integrity": "sha512-J5heI+P08I6VJ2Ky3+33IpCdAvlYGTSUjwTPxkAr8i8EoduPMBX2OY/wa3IKZIQl7MU4SbFk8ndgSKyB/cl1zA==", "dev": true, "requires": { - "@babel/types": "^7.0.0", - "@jest/types": "^26.6.2", - "@types/babel__traverse": "^7.0.4", - "@types/prettier": "^2.0.0", - "chalk": "^4.0.0", - "expect": "^26.6.2", - "graceful-fs": "^4.2.4", - "jest-diff": "^26.6.2", - "jest-get-type": "^26.3.0", - "jest-haste-map": "^26.6.2", - "jest-matcher-utils": "^26.6.2", - "jest-message-util": "^26.6.2", - "jest-resolve": "^26.6.2", - "natural-compare": "^1.4.0", - "pretty-format": "^26.6.2", - "semver": "^7.3.2" + "debug": "4.x" + } + }, + "ms": { + "version": "2.1.2", + "dev": true + }, + "multer": { + "version": "1.4.4", + "resolved": "https://registry.npmjs.org/multer/-/multer-1.4.4.tgz", + "integrity": "sha512-2wY2+xD4udX612aMqMcB8Ws2Voq6NIUPEtD1be6m411T4uDH/VtL9i//xvcyFlTVfRdaBsk7hV5tgrGQqhuBiw==", + "dev": true, + "requires": { + "append-field": "^1.0.0", + "busboy": "^0.2.11", + "concat-stream": "^1.5.2", + "mkdirp": "^0.5.4", + "object-assign": "^4.1.1", + "on-finished": "^2.3.0", + "type-is": "^1.6.4", + "xtend": "^4.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" - } - }, - "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" - } - }, - "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==", + "busboy": { + "version": "0.2.14", + "resolved": "https://registry.npmjs.org/busboy/-/busboy-0.2.14.tgz", + "integrity": "sha512-InWFDomvlkEj+xWLBfU3AvnbVYqeTWmQopiW0tWWEy5yehYm2YkGEc59sUmw/4ty5Zj/b0WHGs1LgecuBSBGrg==", "dev": true, "requires": { - "color-name": "~1.1.4" + "dicer": "0.2.5", + "readable-stream": "1.1.x" } }, - "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==", + "isarray": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", + "integrity": "sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ==", "dev": true }, - "semver": { - "version": "7.3.7", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.7.tgz", - "integrity": "sha512-QlYTucUYOews+WeEujDoEGziz4K6c47V/Bd+LjSSYcA94p+DmINdf7ncaUinThfvZyu13lN9OY1XDxt8C0Tw0g==", + "mkdirp": { + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", + "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", "dev": true, "requires": { - "lru-cache": "^6.0.0" + "minimist": "^1.2.6" } }, - "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==", + "readable-stream": { + "version": "1.1.14", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz", + "integrity": "sha512-+MeVjFf4L44XUkhM1eYbD8fyEsxcV81pqMSR5gblfcLCHfZvbrqy4/qYHE+/R5HoBUT11WV5O08Cr1n3YXkWVQ==", "dev": true, "requires": { - "has-flag": "^4.0.0" + "core-util-is": "~1.0.0", + "inherits": "~2.0.1", + "isarray": "0.0.1", + "string_decoder": "~0.10.x" } + }, + "string_decoder": { + "version": "0.10.31", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", + "integrity": "sha512-ev2QzSzWPYmy9GuqfIVildA4OdcGLeFZQrq5ys6RtiuF+RQQiZWr8TZNyAcuVXyQRYfEO+MsoB/1BuQVhOJuoQ==", + "dev": true } } }, - "jest-util": { - "version": "26.6.2", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-26.6.2.tgz", - "integrity": "sha512-MDW0fKfsn0OI7MS7Euz6h8HNDXVQ0gaM9uW6RjfDmd1DAFcaxX9OqIakHIqhbnmF08Cf2DLDG+ulq8YQQ0Lp0Q==", + "mute-stream": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz", + "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==", + "dev": true, + "optional": true + }, + "mv": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/mv/-/mv-2.1.1.tgz", + "integrity": "sha512-at/ZndSy3xEGJ8i0ygALh8ru9qy7gWW1cmkaqBN29JmMlIvM//MEO9y1sk/avxuwnPcfhkejkLsuPxH81BrkSg==", "dev": true, + "optional": true, "requires": { - "@jest/types": "^26.6.2", - "@types/node": "*", - "chalk": "^4.0.0", - "graceful-fs": "^4.2.4", - "is-ci": "^2.0.0", - "micromatch": "^4.0.2" + "mkdirp": "~0.5.1", + "ncp": "~2.0.0", + "rimraf": "~2.4.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==", + "glob": { + "version": "6.0.4", + "resolved": "https://registry.npmjs.org/glob/-/glob-6.0.4.tgz", + "integrity": "sha512-MKZeRNyYZAVVVG1oZeLaWie1uweH40m9AZwIwxyPbTSX4hHrVYSzLg0Ro5Z5R7XKkIX+Cc6oD1rqeDJnwsB8/A==", "dev": true, + "optional": true, "requires": { - "color-convert": "^2.0.1" + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "2 || 3", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" } }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "mkdirp": { + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", + "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", "dev": true, + "optional": true, "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" + "minimist": "^1.2.6" } }, - "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==", + "rimraf": { + "version": "2.4.5", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.4.5.tgz", + "integrity": "sha512-J5xnxTyqaiw06JjMftq7L9ouA448dw/E7dKghkP9WpKNuwmARNNg+Gk8/u5ryb9N/Yo2+z3MCwuqFK/+qPOPfQ==", "dev": true, + "optional": true, "requires": { - "color-name": "~1.1.4" + "glob": "^6.0.1" } - }, - "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==", + } + } + }, + "nan": { + "version": "2.17.0", + "resolved": "https://registry.npmjs.org/nan/-/nan-2.17.0.tgz", + "integrity": "sha512-2ZTgtl0nJsO0KQCjEpxcIr5D+Yv90plTitZt9JBfQvVJDS5seMl3FOvsh3+9CoYWXf/1l5OaZzzF6nDm4cagaQ==", + "dev": true, + "optional": true + }, + "nanomatch": { + "version": "1.2.13", + "dev": true, + "requires": { + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "fragment-cache": "^0.2.1", + "is-windows": "^1.0.2", + "kind-of": "^6.0.2", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" + } + }, + "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==", + "dev": true, + "optional": true + }, + "natural-compare": { + "version": "1.4.0", + "dev": true + }, + "ncp": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ncp/-/ncp-2.0.0.tgz", + "integrity": "sha512-zIdGUrPRFTUELUvr3Gmc7KZ2Sw/h1PiVM0Af/oHB6zgnV1ikqSfRk+TOufi79aHYCW3NiOXmr1BP5nWbzojLaA==", + "dev": true, + "optional": true + }, + "negotiator": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", + "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==", + "dev": true + }, + "nested-error-stacks": { + "version": "2.1.1", + "dev": true + }, + "nice-try": { + "version": "1.0.5", + "dev": true + }, + "nock": { + "version": "12.0.3", + "dev": true, + "requires": { + "debug": "^4.1.0", + "json-stringify-safe": "^5.0.1", + "lodash": "^4.17.13", + "propagate": "^2.0.0" + } + }, + "node-abi": { + "version": "2.30.1", + "resolved": "https://registry.npmjs.org/node-abi/-/node-abi-2.30.1.tgz", + "integrity": "sha512-/2D0wOQPgaUWzVSVgRMx+trKJRC2UG4SUc4oCJoXx9Uxjtp0Vy3/kt7zcbxHF8+Z/pK3UloLWzBISg72brfy1w==", + "dev": true, + "optional": true, + "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==", + "dev": true, + "optional": true + } + } + }, + "node-fetch": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.9.tgz", + "integrity": "sha512-DJm/CJkZkRjKKj4Zi4BsKVZh3ValV5IR5s7LVZnW+6YMh0W1BfNA8XSs6DLMGYlId5F3KnA70uu2qepcR08Qqg==", + "dev": true, + "requires": { + "whatwg-url": "^5.0.0" + }, + "dependencies": { + "tr46": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", + "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==", "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==", + "webidl-conversions": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", + "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==", "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==", + "whatwg-url": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", + "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", "dev": true, "requires": { - "has-flag": "^4.0.0" + "tr46": "~0.0.3", + "webidl-conversions": "^3.0.0" } } } }, - "jest-validate": { - "version": "26.6.2", - "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-26.6.2.tgz", - "integrity": "sha512-NEYZ9Aeyj0i5rQqbq+tpIOom0YS1u2MVu6+euBsvpgIme+FOfRmoC4R5p0JiAUpaFvFy24xgrpMknarR/93XjQ==", + "node-forge": { + "version": "0.10.0", + "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-0.10.0.tgz", + "integrity": "sha512-PPmu8eEeG9saEUvI97fm4OYxXVB6bFvyNTyiUOBichBpFG8A1Ljw3bY62+5oOjDEMHRnd0Y7HQ+x7uzxOzC6JA==", + "dev": true + }, + "node-int64": { + "version": "0.4.0", + "dev": true + }, + "node-notifier": { + "version": "8.0.2", "dev": true, + "optional": true, "requires": { - "@jest/types": "^26.6.2", - "camelcase": "^6.0.0", - "chalk": "^4.0.0", - "jest-get-type": "^26.3.0", - "leven": "^3.1.0", - "pretty-format": "^26.6.2" + "growly": "^1.3.0", + "is-wsl": "^2.2.0", + "semver": "^7.3.2", + "shellwords": "^0.1.1", + "uuid": "^8.3.0", + "which": "^2.0.2" }, "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "semver": { + "version": "7.3.8", "dev": true, + "optional": true, "requires": { - "color-convert": "^2.0.1" + "lru-cache": "^6.0.0" } - }, - "camelcase": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", - "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", + } + } + }, + "node-releases": { + "version": "2.0.6", + "dev": true + }, + "nomnom": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/nomnom/-/nomnom-1.8.1.tgz", + "integrity": "sha512-5s0JxqhDx9/rksG2BTMVN1enjWSvPidpoSgViZU4ZXULyTe+7jxcCRLB6f42Z0l1xYJpleCBtSyY6Lwg3uu5CQ==", + "dev": true, + "requires": { + "chalk": "~0.4.0", + "underscore": "~1.6.0" + }, + "dependencies": { + "ansi-styles": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-1.0.0.tgz", + "integrity": "sha512-3iF4FIKdxaVYT3JqQuY3Wat/T2t7TRbbQ94Fu50ZUCbLy4TFbTzr90NOHQodQkNqmeEGCw8WbeP78WNi6SKYUA==", "dev": true }, "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" - } - }, - "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==", + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-0.4.0.tgz", + "integrity": "sha512-sQfYDlfv2DGVtjdoQqxS0cEZDroyG8h6TamA6rvxwlrU5BaSLDx9xhatBYl2pxZ7gmpNaPFVwBtdGdu5rQ+tYQ==", "dev": true, "requires": { - "color-name": "~1.1.4" + "ansi-styles": "~1.0.0", + "has-color": "~0.1.0", + "strip-ansi": "~0.1.0" } }, - "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==", + "strip-ansi": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-0.1.1.tgz", + "integrity": "sha512-behete+3uqxecWlDAm5lmskaSaISA+ThQ4oNNBDTBJt0x2ppR6IPqfZNuj6BLaLJ/Sji4TPZlcRyOis8wXQTLg==", "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==", + "underscore": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.6.0.tgz", + "integrity": "sha512-z4o1fvKUojIWh9XuaVLUDdf86RQiq13AC1dmHbTpoyuu+bquHms76v16CjycCbec87J7z0k//SiQVk0sMdFmpQ==", "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" - } } } }, - "jest-watcher": { - "version": "26.6.2", - "resolved": "https://registry.npmjs.org/jest-watcher/-/jest-watcher-26.6.2.tgz", - "integrity": "sha512-WKJob0P/Em2csiVthsI68p6aGKTIcsfjH9Gsx1f0A3Italz43e3ho0geSAVsmj09RWOELP1AZ/DXyJgOgDKxXQ==", + "normalize-package-data": { + "version": "2.5.0", "dev": true, "requires": { - "@jest/test-result": "^26.6.2", - "@jest/types": "^26.6.2", - "@types/node": "*", - "ansi-escapes": "^4.2.1", - "chalk": "^4.0.0", - "jest-util": "^26.6.2", - "string-length": "^4.0.1" + "hosted-git-info": "^2.1.4", + "resolve": "^1.10.0", + "semver": "2 || 3 || 4 || 5", + "validate-npm-package-license": "^3.0.1" + }, + "dependencies": { + "semver": { + "version": "5.7.1", + "dev": true + } + } + }, + "normalize-path": { + "version": "3.0.0", + "dev": true + }, + "npm-run-all": { + "version": "4.1.5", + "dev": true, + "requires": { + "ansi-styles": "^3.2.1", + "chalk": "^2.4.1", + "cross-spawn": "^6.0.5", + "memorystream": "^0.3.1", + "minimatch": "^3.0.4", + "pidtree": "^0.3.0", + "read-pkg": "^3.0.0", + "shell-quote": "^1.6.1", + "string.prototype.padend": "^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==", + "version": "3.2.1", "dev": true, "requires": { - "color-convert": "^2.0.1" + "color-convert": "^1.9.0" } }, "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "version": "2.4.2", "dev": true, "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.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==", + "version": "1.9.3", "dev": true, "requires": { - "color-name": "~1.1.4" + "color-name": "1.1.3" } }, "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==", + "version": "1.1.3", + "dev": true + }, + "cross-spawn": { + "version": "6.0.5", + "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" + } + }, + "escape-string-regexp": { + "version": "1.0.5", "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==", + "version": "3.0.0", "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==", + "path-key": { + "version": "2.0.1", + "dev": true + }, + "semver": { + "version": "5.7.1", + "dev": true + }, + "shebang-command": { + "version": "1.2.0", "dev": true, "requires": { - "has-flag": "^4.0.0" + "shebang-regex": "^1.0.0" } - } - } - }, - "jest-worker": { - "version": "26.6.2", - "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-26.6.2.tgz", - "integrity": "sha512-KWYVV1c4i+jbMpaBC+U++4Va0cp8OisU185o73T1vo99hqi7w8tSJfUXYswwqqrjzwxa6KpRK54WhPvwf5w6PQ==", - "dev": true, - "requires": { - "@types/node": "*", - "merge-stream": "^2.0.0", - "supports-color": "^7.0.0" - }, - "dependencies": { - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + }, + "shebang-regex": { + "version": "1.0.0", "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==", + "version": "5.5.0", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + }, + "which": { + "version": "1.3.1", "dev": true, "requires": { - "has-flag": "^4.0.0" + "isexe": "^2.0.0" } } } }, - "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 + "npm-run-path": { + "version": "4.0.1", + "dev": true, + "requires": { + "path-key": "^3.0.0" + } }, - "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==", + "npmlog": { + "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, + "optional": true, "requires": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" + "are-we-there-yet": "~1.1.2", + "console-control-strings": "~1.1.0", + "gauge": "~2.7.3", + "set-blocking": "~2.0.0" } }, - "jsdom": { - "version": "16.7.0", - "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-16.7.0.tgz", - "integrity": "sha512-u9Smc2G1USStM+s/x1ru5Sxrl6mPYCbByG1U/hUmqaVsm4tbNyS7CicOSRyuGQYZhTu0h84qkZZQ/I+dzizSVw==", + "number-is-nan": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", + "integrity": "sha512-4jbtZXNAsfZbAHiiqjLPBiCl16dES1zI4Hpzzxw61Tk+loF+sBDBKx1ICKKKwIqQ7M0mFn1TmkN7euSncWgHiQ==", + "dev": true, + "optional": true + }, + "nwsapi": { + "version": "2.2.2", + "dev": true + }, + "oauth": { + "version": "0.9.15", + "resolved": "https://registry.npmjs.org/oauth/-/oauth-0.9.15.tgz", + "integrity": "sha512-a5ERWK1kh38ExDEfoO6qUHJb32rd7aYmPHuyCu3Fta/cnICvYmgd2uhuKXvPD+PXB+gCEYYEaQdIRAjCOwAKNA==", + "dev": true + }, + "object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", + "dev": true + }, + "object-copy": { + "version": "0.1.0", "dev": true, "requires": { - "abab": "^2.0.5", - "acorn": "^8.2.4", - "acorn-globals": "^6.0.0", - "cssom": "^0.4.4", - "cssstyle": "^2.3.0", - "data-urls": "^2.0.0", - "decimal.js": "^10.2.1", - "domexception": "^2.0.1", - "escodegen": "^2.0.0", - "form-data": "^3.0.0", - "html-encoding-sniffer": "^2.0.1", - "http-proxy-agent": "^4.0.1", - "https-proxy-agent": "^5.0.0", - "is-potential-custom-element-name": "^1.0.1", - "nwsapi": "^2.2.0", - "parse5": "6.0.1", - "saxes": "^5.0.1", - "symbol-tree": "^3.2.4", - "tough-cookie": "^4.0.0", - "w3c-hr-time": "^1.0.2", - "w3c-xmlserializer": "^2.0.0", - "webidl-conversions": "^6.1.0", - "whatwg-encoding": "^1.0.5", - "whatwg-mimetype": "^2.3.0", - "whatwg-url": "^8.5.0", - "ws": "^7.4.6", - "xml-name-validator": "^3.0.0" + "copy-descriptor": "^0.1.0", + "define-property": "^0.2.5", + "kind-of": "^3.0.3" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", + "dev": true, + "requires": { + "is-descriptor": "^0.1.0" + } + }, + "is-accessor-descriptor": { + "version": "0.1.6", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + } + }, + "is-data-descriptor": { + "version": "0.1.4", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + } + }, + "is-descriptor": { + "version": "0.1.6", + "dev": true, + "requires": { + "is-accessor-descriptor": "^0.1.6", + "is-data-descriptor": "^0.1.4", + "kind-of": "^5.0.0" + }, + "dependencies": { + "kind-of": { + "version": "5.1.0", + "dev": true + } + } + }, + "kind-of": { + "version": "3.2.2", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } } }, - "jsesc": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", - "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", + "object-inspect": { + "version": "1.12.2", "dev": true }, - "json-parse-better-errors": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz", - "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==", + "object-keys": { + "version": "1.1.1", "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=", - "dev": true + "object-visit": { + "version": "1.0.1", + "dev": true, + "requires": { + "isobject": "^3.0.0" + } }, - "json5": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.1.tgz", - "integrity": "sha512-1hqLFMSrGHRHxav9q9gNjJ5EXznIxGVO09xQRrwplcS8qs28pZ8s8hupZAmqDwZUmVZ2Qb2jnyPOWcDH8m8dlA==", - "dev": true + "object.assign": { + "version": "4.1.4", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "has-symbols": "^1.0.3", + "object-keys": "^1.1.1" + } }, - "junk": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/junk/-/junk-3.1.0.tgz", - "integrity": "sha512-pBxcB3LFc8QVgdggvZWyeys+hnrNWg4OcZIU/1X59k5jQdLBlCsYGRQaz234SqoRLTCgMH00fY0xRJH+F9METQ==", - "dev": true + "object.pick": { + "version": "1.3.0", + "dev": true, + "requires": { + "isobject": "^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 + "on-finished": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", + "integrity": "sha512-ikqdkGAAyf/X/gPhXGvfgAytDZtDbr+bkNUJ0N9h5MI/dmdgCs3l6hoHrcUv41sRKew3jIwrp4qQDXiK99Utww==", + "dev": true, + "requires": { + "ee-first": "1.1.1" + } }, - "kleur": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz", - "integrity": "sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==", + "on-headers": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/on-headers/-/on-headers-1.0.2.tgz", + "integrity": "sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA==", "dev": true }, - "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 + "once": { + "version": "1.4.0", + "dev": true, + "requires": { + "wrappy": "1" + } }, - "levn": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", - "integrity": "sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4=", + "onetime": { + "version": "5.1.2", "dev": true, "requires": { - "prelude-ls": "~1.1.2", - "type-check": "~0.3.2" + "mimic-fn": "^2.1.0" } }, - "lines-and-columns": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.1.6.tgz", - "integrity": "sha1-HADHQ7QzzQpOgHWPe2SldEDZ/wA=", - "dev": true + "opentype.js": { + "version": "0.7.3", + "resolved": "https://registry.npmjs.org/opentype.js/-/opentype.js-0.7.3.tgz", + "integrity": "sha512-Veui5vl2bLonFJ/SjX/WRWJT3SncgiZNnKUyahmXCc2sa1xXW15u3R/3TN5+JFiP7RsjK5ER4HA5eWaEmV9deA==", + "dev": true, + "requires": { + "tiny-inflate": "^1.0.2" + } }, - "load-json-file": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-4.0.0.tgz", - "integrity": "sha1-L19Fq5HjMhYjT9U62rZo607AmTs=", + "optionator": { + "version": "0.8.3", "dev": true, "requires": { - "graceful-fs": "^4.1.2", - "parse-json": "^4.0.0", - "pify": "^3.0.0", - "strip-bom": "^3.0.0" + "deep-is": "~0.1.3", + "fast-levenshtein": "~2.0.6", + "levn": "~0.3.0", + "prelude-ls": "~1.1.2", + "type-check": "~0.3.2", + "word-wrap": "~1.2.3" } }, - "locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "os-tmpdir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", + "integrity": "sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==", + "dev": true, + "optional": true + }, + "p-all": { + "version": "2.1.0", "dev": true, "requires": { - "p-locate": "^4.1.0" + "p-map": "^2.0.0" + }, + "dependencies": { + "p-map": { + "version": "2.1.0", + "dev": true + } } }, - "lodash": { - "version": "4.17.15", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.15.tgz", - "integrity": "sha512-8xOcRHvCjnocdS5cpwXQXVzmmh5e5+saE2QGoeQmbKmRS6J3VQppPOIt0MnmE+4xlZoumy0GPG0D0MVIQbNA1A==", + "p-each-series": { + "version": "2.2.0", "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==", + "p-event": { + "version": "4.2.0", "dev": true, "requires": { - "yallist": "^4.0.0" + "p-timeout": "^3.1.0" } }, - "make-dir": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", - "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "p-filter": { + "version": "2.1.0", "dev": true, "requires": { - "semver": "^6.0.0" + "p-map": "^2.0.0" }, "dependencies": { - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "p-map": { + "version": "2.1.0", "dev": true } } }, - "make-error": { - "version": "1.3.6", - "resolved": "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz", - "integrity": "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==", + "p-finally": { + "version": "1.0.0", "dev": true }, - "makeerror": { - "version": "1.0.12", - "resolved": "https://registry.npmjs.org/makeerror/-/makeerror-1.0.12.tgz", - "integrity": "sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg==", + "p-limit": { + "version": "2.3.0", "dev": true, "requires": { - "tmpl": "1.0.5" + "p-try": "^2.0.0" } }, - "map-cache": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz", - "integrity": "sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8=", - "dev": true + "p-locate": { + "version": "4.1.0", + "dev": true, + "requires": { + "p-limit": "^2.2.0" + } }, - "map-obj": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-4.2.0.tgz", - "integrity": "sha512-NAq0fCmZYGz9UFEQyndp7sisrow4GroyGeKluyKC/chuITZsPyOyC1UJZPJlVFImhXdROIP5xqouRLThT3BbpQ==", - "dev": true + "p-map": { + "version": "3.0.0", + "dev": true, + "requires": { + "aggregate-error": "^3.0.0" + } }, - "map-visit": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/map-visit/-/map-visit-1.0.0.tgz", - "integrity": "sha1-7Nyo8TFE5mDxtb1B8S80edmN+48=", + "p-timeout": { + "version": "3.2.0", "dev": true, "requires": { - "object-visit": "^1.0.0" + "p-finally": "^1.0.0" } }, - "memorystream": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/memorystream/-/memorystream-0.3.1.tgz", - "integrity": "sha1-htcJCzDORV1j+64S3aUaR93K+bI=", + "p-try": { + "version": "2.2.0", "dev": true }, - "meow": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/meow/-/meow-6.1.1.tgz", - "integrity": "sha512-3YffViIt2QWgTy6Pale5QpopX/IvU3LPL03jOTqp6pGj3VjesdO/U8CuHMKpnQr4shCNCM5fd5XFFvIIl6JBHg==", + "parse-asn1": { + "version": "5.1.6", + "resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.6.tgz", + "integrity": "sha512-RnZRo1EPU6JBnra2vGHj0yhp6ebyjBZpmUCLHWiFhxlzvBCCpAuZ7elsBp1PVAbQN0/04VD/19rfzlBSwLstMw==", "dev": true, "requires": { - "@types/minimist": "^1.2.0", - "camelcase-keys": "^6.2.2", - "decamelize-keys": "^1.1.0", - "hard-rejection": "^2.1.0", - "minimist-options": "^4.0.2", - "normalize-package-data": "^2.5.0", - "read-pkg-up": "^7.0.1", - "redent": "^3.0.0", - "trim-newlines": "^3.0.0", - "type-fest": "^0.13.1", - "yargs-parser": "^18.1.3" + "asn1.js": "^5.2.0", + "browserify-aes": "^1.0.0", + "evp_bytestokey": "^1.0.0", + "pbkdf2": "^3.0.3", + "safe-buffer": "^5.1.1" }, "dependencies": { - "type-fest": { - "version": "0.13.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.13.1.tgz", - "integrity": "sha512-34R7HTnG0XIJcBSn5XhDd7nNFPRcXYRZrBB2O2jdKqYODldSzBAqzsWoZYYvduky73toYS/ESqxPvkDf/F0XMg==", + "asn1.js": { + "version": "5.4.1", + "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-5.4.1.tgz", + "integrity": "sha512-+I//4cYPccV8LdmBLiX8CYvf9Sp3vQsrqu2QNXRcrbiWvcx/UdlFiqUJJzxRQxgsZmvhXhn4cSKeSmoFjVdupA==", + "dev": true, + "requires": { + "bn.js": "^4.0.0", + "inherits": "^2.0.1", + "minimalistic-assert": "^1.0.0", + "safer-buffer": "^2.1.0" + } + }, + "bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", "dev": true } } }, - "merge-stream": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", - "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", + "parse-json": { + "version": "4.0.0", + "dev": true, + "requires": { + "error-ex": "^1.3.1", + "json-parse-better-errors": "^1.0.1" + } + }, + "parse5": { + "version": "6.0.1", "dev": true }, - "merge2": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", - "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", + "parseurl": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", + "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==", "dev": true }, - "micromatch": { - "version": "4.0.5", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", - "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", + "pascalcase": { + "version": "0.1.1", + "dev": true + }, + "passport": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/passport/-/passport-0.4.1.tgz", + "integrity": "sha512-IxXgZZs8d7uFSt3eqNjM9NQ3g3uQCW5avD8mRNoXV99Yig50vjuaez6dQK2qC0kVWPRTujxY0dWgGfT09adjYg==", "dev": true, "requires": { - "braces": "^3.0.2", - "picomatch": "^2.3.1" + "passport-strategy": "1.x.x", + "pause": "0.0.1" } }, - "mime-db": { - "version": "1.52.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", - "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", - "dev": true - }, - "mime-types": { - "version": "2.1.35", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", - "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", + "passport-anonymous": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/passport-anonymous/-/passport-anonymous-1.0.1.tgz", + "integrity": "sha512-Mk2dls97nLTzHpsWCYQ54IVGucWaiWSHHr3+IhWYAebg4dRgRQIfyoeYrixoxB2z2z4+EM7p9yjC+a3yMB5z5A==", "dev": true, "requires": { - "mime-db": "1.52.0" + "passport-strategy": "1.x.x" } }, - "mimic-fn": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", - "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", - "dev": true - }, - "min-indent": { + "passport-http-bearer": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/min-indent/-/min-indent-1.0.1.tgz", - "integrity": "sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==", - "dev": true - }, - "minimatch": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", - "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", + "resolved": "https://registry.npmjs.org/passport-http-bearer/-/passport-http-bearer-1.0.1.tgz", + "integrity": "sha512-SELQM+dOTuMigr9yu8Wo4Fm3ciFfkMq5h/ZQ8ffi4ELgZrX1xh9PlglqZdcUZ1upzJD/whVyt+YWF62s3U6Ipw==", "dev": true, "requires": { - "brace-expansion": "^1.1.7" + "passport-strategy": "1.x.x" } }, - "minimist": { - "version": "1.2.6", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.6.tgz", - "integrity": "sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==", - "dev": true - }, - "minimist-options": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/minimist-options/-/minimist-options-4.1.0.tgz", - "integrity": "sha512-Q4r8ghd80yhO/0j1O3B2BjweX3fiHg9cdOwjJd2J76Q135c+NDxGCqdYKQ1SKBuFfgWbAUzBfvYjPUEeNgqN1A==", + "passport-ldapauth": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/passport-ldapauth/-/passport-ldapauth-2.1.3.tgz", + "integrity": "sha512-23n425UTasN6XhcXG0qQ0h0YrS/zfo8kNIEhSLfPsNpglhYhhQFfB1pmDc5RrH+Kiz5fKLkki5BpvkKHCwkixg==", "dev": true, "requires": { - "arrify": "^1.0.1", - "is-plain-obj": "^1.1.0", - "kind-of": "^6.0.3" + "@types/node": "^10.12.26", + "@types/passport": "^1.0.0", + "ldapauth-fork": "^4.2.0", + "passport-strategy": "^1.0.0" }, "dependencies": { - "arrify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", - "integrity": "sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0=", + "@types/node": { + "version": "10.17.60", + "resolved": "https://registry.npmjs.org/@types/node/-/node-10.17.60.tgz", + "integrity": "sha512-F0KIgDJfy2nA3zMLmWGKxcH2ZVEtCZXHHdOQs2gSaQ27+lNeEfGxzkIw90aXswATX7AZ33tahPbzy6KAfUreVw==", "dev": true } } }, - "mixin-deep": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.2.tgz", - "integrity": "sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA==", + "passport-local": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/passport-local/-/passport-local-1.0.0.tgz", + "integrity": "sha512-9wCE6qKznvf9mQYYbgJ3sVOHmCWoUNMVFoZzNoznmISbhnNNPhN9xfY3sLmScHMetEJeoY7CXwfhCe7argfQow==", + "dev": true, + "requires": { + "passport-strategy": "1.x.x" + } + }, + "passport-oauth2": { + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/passport-oauth2/-/passport-oauth2-1.6.1.tgz", + "integrity": "sha512-ZbV43Hq9d/SBSYQ22GOiglFsjsD1YY/qdiptA+8ej+9C1dL1TVB+mBE5kDH/D4AJo50+2i8f4bx0vg4/yDDZCQ==", + "dev": true, + "requires": { + "base64url": "3.x.x", + "oauth": "0.9.x", + "passport-strategy": "1.x.x", + "uid2": "0.0.x", + "utils-merge": "1.x.x" + } + }, + "passport-openidconnect": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/passport-openidconnect/-/passport-openidconnect-0.1.1.tgz", + "integrity": "sha512-r0QJiWEzwCg2MeCIXVP5G6YxVRqnEsZ2HpgKRthZ9AiQHJrgGUytXpsdcGF9BRwd3yMrEesb/uG/Yxb86rrY0g==", + "dev": true, + "requires": { + "oauth": "0.9.x", + "passport-strategy": "1.x.x" + } + }, + "passport-saml": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/passport-saml/-/passport-saml-1.5.0.tgz", + "integrity": "sha512-6f4bfnu/X2KNbuqshOryPap0g8BvhOrlt1qDtJdA44qzQXZ5QUMwaTmexAHIf96LTqPqQ91MzPvi5MGsOgTYTw==", "dev": true, "requires": { - "for-in": "^1.0.2", - "is-extendable": "^1.0.1" + "debug": "^3.1.0", + "passport-strategy": "*", + "xml-crypto": "^2.0.0", + "xml-encryption": "1.2.1", + "xml2js": "0.4.x", + "xmlbuilder": "^11.0.0", + "xmldom": "0.1.x" }, "dependencies": { - "is-extendable": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", - "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", + "debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", "dev": true, "requires": { - "is-plain-object": "^2.0.4" + "ms": "^2.1.1" } } } }, - "mkdirp": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", - "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", + "passport-strategy": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/passport-strategy/-/passport-strategy-1.0.0.tgz", + "integrity": "sha512-CB97UUvDKJde2V0KDWWB3lyf6PC3FaZP7YxZ2G8OAtn9p4HI9j9JLP9qjOGZFvyl8uwNT8qM+hGnz/n16NI7oA==", "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==", + "path-dirname": { + "version": "1.0.2", "dev": true }, - "nanomatch": { - "version": "1.2.13", - "resolved": "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.13.tgz", - "integrity": "sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA==", - "dev": true, - "requires": { - "arr-diff": "^4.0.0", - "array-unique": "^0.3.2", - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "fragment-cache": "^0.2.1", - "is-windows": "^1.0.2", - "kind-of": "^6.0.2", - "object.pick": "^1.3.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.1" - } - }, - "natural-compare": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", - "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=", + "path-exists": { + "version": "4.0.0", "dev": true }, - "nested-error-stacks": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/nested-error-stacks/-/nested-error-stacks-2.1.0.tgz", - "integrity": "sha512-AO81vsIO1k1sM4Zrd6Hu7regmJN1NSiAja10gc4bX3F0wd+9rQmcuHQaHVQCYIEC8iFXnE+mavh23GOt7wBgug==", + "path-is-absolute": { + "version": "1.0.1", "dev": true }, - "nice-try": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz", - "integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==", + "path-key": { + "version": "3.1.1", "dev": true }, - "nock": { - "version": "12.0.3", - "resolved": "https://registry.npmjs.org/nock/-/nock-12.0.3.tgz", - "integrity": "sha512-QNb/j8kbFnKCiyqi9C5DD0jH/FubFGj5rt9NQFONXwQm3IPB0CULECg/eS3AU1KgZb/6SwUa4/DTRKhVxkGABw==", - "dev": true, - "requires": { - "debug": "^4.1.0", - "json-stringify-safe": "^5.0.1", - "lodash": "^4.17.13", - "propagate": "^2.0.0" - } + "path-parse": { + "version": "1.0.7", + "dev": true }, - "node-int64": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/node-int64/-/node-int64-0.4.0.tgz", - "integrity": "sha1-h6kGXNs1XTGC2PlM4RGIuCXGijs=", + "path-to-regexp": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", + "integrity": "sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ==", "dev": true }, - "node-notifier": { - "version": "8.0.2", - "resolved": "https://registry.npmjs.org/node-notifier/-/node-notifier-8.0.2.tgz", - "integrity": "sha512-oJP/9NAdd9+x2Q+rfphB2RJCHjod70RcRLjosiPMMu5gjIfwVnOUGq2nbTjTUbmy0DJ/tFIVT30+Qe3nzl4TJg==", + "path-type": { + "version": "3.0.0", "dev": true, - "optional": true, "requires": { - "growly": "^1.3.0", - "is-wsl": "^2.2.0", - "semver": "^7.3.2", - "shellwords": "^0.1.1", - "uuid": "^8.3.0", - "which": "^2.0.2" + "pify": "^3.0.0" }, "dependencies": { - "semver": { - "version": "7.3.7", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.7.tgz", - "integrity": "sha512-QlYTucUYOews+WeEujDoEGziz4K6c47V/Bd+LjSSYcA94p+DmINdf7ncaUinThfvZyu13lN9OY1XDxt8C0Tw0g==", - "dev": true, - "optional": true, - "requires": { - "lru-cache": "^6.0.0" - } - }, - "which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, - "optional": true, - "requires": { - "isexe": "^2.0.0" - } + "pify": { + "version": "3.0.0", + "dev": true } } }, - "node-releases": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.3.tgz", - "integrity": "sha512-maHFz6OLqYxz+VQyCAtA3PTX4UP/53pa05fyDNc9CwjvJ0yEh6+xBwKsgCxMNhS8taUKBFYxfuiaD9U/55iFaw==", - "dev": true - }, - "normalize-package-data": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", - "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", - "dev": true, - "requires": { - "hosted-git-info": "^2.1.4", - "resolve": "^1.10.0", - "semver": "2 || 3 || 4 || 5", - "validate-npm-package-license": "^3.0.1" - } - }, - "normalize-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", - "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "pause": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/pause/-/pause-0.0.1.tgz", + "integrity": "sha512-KG8UEiEVkR3wGEb4m5yZkVCzigAD+cVEJck2CzYZO37ZGJfctvVptVO192MwrtPhzONn6go8ylnOdMhKqi4nfg==", "dev": true }, - "npm-run-all": { - "version": "4.1.5", - "resolved": "https://registry.npmjs.org/npm-run-all/-/npm-run-all-4.1.5.tgz", - "integrity": "sha512-Oo82gJDAVcaMdi3nuoKFavkIHBRVqQ1qvMb+9LHk/cF4P6B2m8aP04hGf7oL6wZ9BuGwX1onlLhpuoofSyoQDQ==", + "pause-stream": { + "version": "0.0.11", + "resolved": "https://registry.npmjs.org/pause-stream/-/pause-stream-0.0.11.tgz", + "integrity": "sha512-e3FBlXLmN/D1S+zHzanP4E/4Z60oFAa3O051qt1pxa7DEJWKAyil6upYVXCWadEnuoqa4Pkc9oUx9zsxYeRv8A==", "dev": true, "requires": { - "ansi-styles": "^3.2.1", - "chalk": "^2.4.1", - "cross-spawn": "^6.0.5", - "memorystream": "^0.3.1", - "minimatch": "^3.0.4", - "pidtree": "^0.3.0", - "read-pkg": "^3.0.0", - "shell-quote": "^1.6.1", - "string.prototype.padend": "^3.0.0" + "through": "~2.3" } }, - "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=", + "pbkdf2": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.1.2.tgz", + "integrity": "sha512-iuh7L6jA7JEGu2WxDwtQP1ddOpaJNC4KlDEFfdQajSGgGPNi4OyDc2R7QnbY2bR9QjBVGwgvTdNJZoE7RaxUMA==", "dev": true, "requires": { - "path-key": "^2.0.0" + "create-hash": "^1.1.2", + "create-hmac": "^1.1.4", + "ripemd160": "^2.0.1", + "safe-buffer": "^5.0.1", + "sha.js": "^2.4.8" } }, - "nwsapi": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/nwsapi/-/nwsapi-2.2.0.tgz", - "integrity": "sha512-h2AatdwYH+JHiZpv7pt/gSX1XoRGb7L/qSIeuqA6GwYoF9w1vP1cw42TO0aI2pNyshRK5893hNSl+1//vHK7hQ==", + "peek-readable": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/peek-readable/-/peek-readable-4.1.0.tgz", + "integrity": "sha512-ZI3LnwUv5nOGbQzD9c2iDG6toheuXSZP5esSHBjopsXH4dg19soufvpUGA3uohi5anFtGb2lhAVdHzH6R/Evvg==", "dev": true }, - "object-copy": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/object-copy/-/object-copy-0.1.0.tgz", - "integrity": "sha1-fn2Fi3gb18mRpBupde04EnVOmYw=", + "pem-jwk": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/pem-jwk/-/pem-jwk-1.5.1.tgz", + "integrity": "sha512-XdxDIGc+dy5lKW31oMTgdrwNui2uGrTPGe0GljQUJtCKTnpgZp0zj+WzgEkXC4X+E3rgSjkzZlLYQrVyeWBHQg==", "dev": true, "requires": { - "copy-descriptor": "^0.1.0", - "define-property": "^0.2.5", - "kind-of": "^3.0.3" + "asn1.js": "1.0.3" }, "dependencies": { - "define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "asn1.js": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-1.0.3.tgz", + "integrity": "sha512-RMdxDP9snnfh4wlMwT/Pk/IkQcJaVnKbPZOf8m1h4eblllW/T1wCCHEb03HfPRUzvxPK22MLd1PwHpovMOLKLQ==", "dev": true, "requires": { - "is-descriptor": "^0.1.0" + "bn.js": "^1.0.0", + "inherits": "^2.0.1", + "minimalistic-assert": "^1.0.0" } }, - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "bn.js": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-1.3.0.tgz", + "integrity": "sha512-AbS5zhpzu2uAZpSyC9wMIXmaHKRakdf4rn8kqASOe59N/vxGjw/r0UbbCVUW+YPdQbZyqOc8ne3mxkmGanYD2w==", "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } + "optional": true } } }, - "object-inspect": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.9.0.tgz", - "integrity": "sha512-i3Bp9iTqwhaLZBxGkRfo5ZbE07BQRT7MGu8+nNgwW9ItGp1TzCTw2DLEoWwjClxBjOFI/hWljTAmYGCEwmtnOw==", + "pem2jwk": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/pem2jwk/-/pem2jwk-1.0.1.tgz", + "integrity": "sha512-OAPoqXBz01G4yL3tAHvLiC2TCIVKuzsg90zpw23GWGDz6i9Wsf1M8n1mcVmIAX2pG3JF0Oi8MehDr8PVL3K0QA==", + "dev": true, + "requires": { + "elliptic": "^6.4.0", + "parse-asn1": "^5.1.0" + } + }, + "picocolors": { + "version": "1.0.0", "dev": true }, - "object-keys": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", - "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", + "picomatch": { + "version": "2.3.1", "dev": true }, - "object-visit": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/object-visit/-/object-visit-1.0.1.tgz", - "integrity": "sha1-95xEk68MU3e1n+OdOV5BBC3QRbs=", + "pidtree": { + "version": "0.3.1", + "dev": true + }, + "pify": { + "version": "4.0.1", + "dev": true + }, + "pirates": { + "version": "4.0.5", + "dev": true + }, + "pkg-dir": { + "version": "4.2.0", "dev": true, "requires": { - "isobject": "^3.0.0" + "find-up": "^4.0.0" } }, - "object.assign": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.2.tgz", - "integrity": "sha512-ixT2L5THXsApyiUPYKmW+2EHpXXe5Ii3M+f4e+aJFAHao5amFRW6J0OO6c/LU8Be47utCx2GL89hxGB6XSmKuQ==", + "pkginfo": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/pkginfo/-/pkginfo-0.3.1.tgz", + "integrity": "sha512-yO5feByMzAp96LtP58wvPKSbaKAi/1C4kV9XpTctr6EepnP6F33RBNOiVrdz9BrPA98U2BMFsTNHo44TWcbQ2A==", + "dev": true + }, + "polygon-clipping": { + "version": "0.15.3", + "resolved": "https://registry.npmjs.org/polygon-clipping/-/polygon-clipping-0.15.3.tgz", + "integrity": "sha512-ho0Xx5DLkgxRx/+n4O74XyJ67DcyN3Tu9bGYKsnTukGAW6ssnuak6Mwcyb1wHy9MZc9xsUWqIoiazkZB5weECg==", "dev": true, "requires": { - "call-bind": "^1.0.0", - "define-properties": "^1.1.3", - "has-symbols": "^1.0.1", - "object-keys": "^1.1.1" + "splaytree": "^3.1.0" } }, - "object.pick": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz", - "integrity": "sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c=", + "ports": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/ports/-/ports-1.1.0.tgz", + "integrity": "sha512-XmS7dspHnkTXZC75NkG0ti2hLj8aSyg1Izp87/2cWT7QhTo1vdtWsQ4ldp4BEQ/EXqy0s4yTATJUZ3t9RGZVpg==", + "dev": true + }, + "posix-character-classes": { + "version": "0.1.1", + "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==", "dev": true, + "optional": true, "requires": { - "isobject": "^3.0.1" + "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" + } + }, + "precond": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/precond/-/precond-0.2.3.tgz", + "integrity": "sha512-QCYG84SgGyGzqJ/vlMsxeXd/pgL/I94ixdNFyh1PusWmTCyVfPJjZ1K1jvHtsbfnXQs2TSkEP2fR7QiMZAnKFQ==", + "dev": true + }, + "prelude-ls": { + "version": "1.1.2", + "dev": true + }, + "pretty-format": { + "version": "26.6.2", + "dev": true, + "requires": { + "@jest/types": "^26.6.2", + "ansi-regex": "^5.0.0", + "ansi-styles": "^4.0.0", + "react-is": "^17.0.1" } }, - "once": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", + "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 + }, + "proj4": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/proj4/-/proj4-2.8.0.tgz", + "integrity": "sha512-baC+YcD4xsSqJ+CpCZljj2gcQDhlKb+J+Zjv/2KSBwWNjk4M0pafgQsE+mWurd84tflMIsP+7j7mtIpFDHzQfQ==", "dev": true, "requires": { - "wrappy": "1" + "mgrs": "1.0.0", + "wkt-parser": "^1.3.1" } }, - "onetime": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", - "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", + "promise": { + "version": "7.3.1", + "resolved": "https://registry.npmjs.org/promise/-/promise-7.3.1.tgz", + "integrity": "sha512-nolQXZ/4L+bP/UGlkfaIujX9BKxGwmQ9OT4mOt5yvy8iK1h3wqTEJCijzGANTCCl9nWjY41juyAn2K3Q1hLLTg==", "dev": true, "requires": { - "mimic-fn": "^2.1.0" + "asap": "~2.0.3" } }, - "optionator": { - "version": "0.8.3", - "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.3.tgz", - "integrity": "sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA==", + "prompts": { + "version": "2.4.2", "dev": true, "requires": { - "deep-is": "~0.1.3", - "fast-levenshtein": "~2.0.6", - "levn": "~0.3.0", - "prelude-ls": "~1.1.2", - "type-check": "~0.3.2", - "word-wrap": "~1.2.3" + "kleur": "^3.0.3", + "sisteransi": "^1.0.5" } }, - "p-all": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/p-all/-/p-all-2.1.0.tgz", - "integrity": "sha512-HbZxz5FONzz/z2gJfk6bFca0BCiSRF8jU3yCsWOen/vR6lZjfPOu/e7L3uFzTW1i0H8TlC3vqQstEJPQL4/uLA==", + "propagate": { + "version": "2.0.1", + "dev": true + }, + "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==", "dev": true, "requires": { - "p-map": "^2.0.0" - }, - "dependencies": { - "p-map": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/p-map/-/p-map-2.1.0.tgz", - "integrity": "sha512-y3b8Kpd8OAN444hxfBbFfj1FY/RjtTd8tzYwhUqNYXx0fXx2iX4maP4Qr6qhIKbQXI02wTLAda4fYUbDagTUFw==", - "dev": true - } + "forwarded": "0.2.0", + "ipaddr.js": "1.9.1" } }, - "p-each-series": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-each-series/-/p-each-series-2.2.0.tgz", - "integrity": "sha512-ycIL2+1V32th+8scbpTvyHNaHe02z0sjgh91XXjAk+ZeXoPN4Z46DVUnzdso0aX4KckKw0FNNFHdjZ2UsZvxiA==", + "pseudomap": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", + "integrity": "sha512-b/YwNhb8lk1Zz2+bXXpS/LK9OisiZZ1SNsSLxN1x2OXVEhW2Ckr/7mWE5vrC1ZTiJlD9g19jWszTmJsB+oEpFQ==", "dev": true }, - "p-event": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/p-event/-/p-event-4.2.0.tgz", - "integrity": "sha512-KXatOjCRXXkSePPb1Nbi0p0m+gQAwdlbhi4wQKJPI1HsMQS9g+Sqp2o+QHziPr7eYJyOZet836KoHEVM1mwOrQ==", + "psl": { + "version": "1.9.0", + "dev": true + }, + "pug": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/pug/-/pug-2.0.4.tgz", + "integrity": "sha512-XhoaDlvi6NIzL49nu094R2NA6P37ijtgMDuWE+ofekDChvfKnzFal60bhSdiy8y2PBO6fmz3oMEIcfpBVRUdvw==", "dev": true, "requires": { - "p-timeout": "^3.1.0" + "pug-code-gen": "^2.0.2", + "pug-filters": "^3.1.1", + "pug-lexer": "^4.1.0", + "pug-linker": "^3.0.6", + "pug-load": "^2.0.12", + "pug-parser": "^5.0.1", + "pug-runtime": "^2.0.5", + "pug-strip-comments": "^1.0.4" } }, - "p-filter": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/p-filter/-/p-filter-2.1.0.tgz", - "integrity": "sha512-ZBxxZ5sL2HghephhpGAQdoskxplTwr7ICaehZwLIlfL6acuVgZPm8yBNuRAFBGEqtD/hmUeq9eqLg2ys9Xr/yw==", + "pug-attrs": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/pug-attrs/-/pug-attrs-2.0.4.tgz", + "integrity": "sha512-TaZ4Z2TWUPDJcV3wjU3RtUXMrd3kM4Wzjbe3EWnSsZPsJ3LDI0F3yCnf2/W7PPFF+edUFQ0HgDL1IoxSz5K8EQ==", + "dev": true, + "requires": { + "constantinople": "^3.0.1", + "js-stringify": "^1.0.1", + "pug-runtime": "^2.0.5" + } + }, + "pug-code-gen": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/pug-code-gen/-/pug-code-gen-2.0.3.tgz", + "integrity": "sha512-r9sezXdDuZJfW9J91TN/2LFbiqDhmltTFmGpHTsGdrNGp3p4SxAjjXEfnuK2e4ywYsRIVP0NeLbSAMHUcaX1EA==", "dev": true, "requires": { - "p-map": "^2.0.0" - }, - "dependencies": { - "p-map": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/p-map/-/p-map-2.1.0.tgz", - "integrity": "sha512-y3b8Kpd8OAN444hxfBbFfj1FY/RjtTd8tzYwhUqNYXx0fXx2iX4maP4Qr6qhIKbQXI02wTLAda4fYUbDagTUFw==", - "dev": true - } + "constantinople": "^3.1.2", + "doctypes": "^1.1.0", + "js-stringify": "^1.0.1", + "pug-attrs": "^2.0.4", + "pug-error": "^1.3.3", + "pug-runtime": "^2.0.5", + "void-elements": "^2.0.1", + "with": "^5.0.0" } }, - "p-finally": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz", - "integrity": "sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=", + "pug-error": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/pug-error/-/pug-error-1.3.3.tgz", + "integrity": "sha512-qE3YhESP2mRAWMFJgKdtT5D7ckThRScXRwkfo+Erqga7dyJdY3ZquspprMCj/9sJ2ijm5hXFWQE/A3l4poMWiQ==", "dev": true }, - "p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "pug-filters": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/pug-filters/-/pug-filters-3.1.1.tgz", + "integrity": "sha512-lFfjNyGEyVWC4BwX0WyvkoWLapI5xHSM3xZJFUhx4JM4XyyRdO8Aucc6pCygnqV2uSgJFaJWW3Ft1wCWSoQkQg==", "dev": true, "requires": { - "p-try": "^2.0.0" + "clean-css": "^4.1.11", + "constantinople": "^3.0.1", + "jstransformer": "1.0.0", + "pug-error": "^1.3.3", + "pug-walk": "^1.1.8", + "resolve": "^1.1.6", + "uglify-js": "^2.6.1" } }, - "p-locate": { + "pug-lexer": { "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "resolved": "https://registry.npmjs.org/pug-lexer/-/pug-lexer-4.1.0.tgz", + "integrity": "sha512-i55yzEBtjm0mlplW4LoANq7k3S8gDdfC6+LThGEvsK4FuobcKfDAwt6V4jKPH9RtiE3a2Akfg5UpafZ1OksaPA==", "dev": true, "requires": { - "p-limit": "^2.2.0" + "character-parser": "^2.1.1", + "is-expression": "^3.0.0", + "pug-error": "^1.3.3" } }, - "p-map": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/p-map/-/p-map-3.0.0.tgz", - "integrity": "sha512-d3qXVTF/s+W+CdJ5A29wywV2n8CQQYahlgz2bFiA+4eVNJbHJodPZ+/gXwPGh0bOqA+j8S+6+ckmvLGPk1QpxQ==", + "pug-linker": { + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/pug-linker/-/pug-linker-3.0.6.tgz", + "integrity": "sha512-bagfuHttfQOpANGy1Y6NJ+0mNb7dD2MswFG2ZKj22s8g0wVsojpRlqveEQHmgXXcfROB2RT6oqbPYr9EN2ZWzg==", "dev": true, "requires": { - "aggregate-error": "^3.0.0" + "pug-error": "^1.3.3", + "pug-walk": "^1.1.8" } }, - "p-timeout": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/p-timeout/-/p-timeout-3.2.0.tgz", - "integrity": "sha512-rhIwUycgwwKcP9yTOOFK/AKsAopjjCakVqLHePO3CC6Mir1Z99xT+R63jZxAT5lFZLa2inS5h+ZS2GvR99/FBg==", + "pug-load": { + "version": "2.0.12", + "resolved": "https://registry.npmjs.org/pug-load/-/pug-load-2.0.12.tgz", + "integrity": "sha512-UqpgGpyyXRYgJs/X60sE6SIf8UBsmcHYKNaOccyVLEuT6OPBIMo6xMPhoJnqtB3Q3BbO4Z3Bjz5qDsUWh4rXsg==", "dev": true, "requires": { - "p-finally": "^1.0.0" + "object-assign": "^4.1.0", + "pug-walk": "^1.1.8" } }, - "p-try": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", - "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", - "dev": true - }, - "parse-json": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", - "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=", + "pug-parser": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/pug-parser/-/pug-parser-5.0.1.tgz", + "integrity": "sha512-nGHqK+w07p5/PsPIyzkTQfzlYfuqoiGjaoqHv1LjOv2ZLXmGX1O+4Vcvps+P4LhxZ3drYSljjq4b+Naid126wA==", "dev": true, "requires": { - "error-ex": "^1.3.1", - "json-parse-better-errors": "^1.0.1" + "pug-error": "^1.3.3", + "token-stream": "0.0.1" } }, - "parse5": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", - "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==", - "dev": true - }, - "pascalcase": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/pascalcase/-/pascalcase-0.1.1.tgz", - "integrity": "sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ=", - "dev": true - }, - "path-dirname": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/path-dirname/-/path-dirname-1.0.2.tgz", - "integrity": "sha1-zDPSTVJeCZpTiMAzbG4yuRYGCeA=", - "dev": true - }, - "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=", + "pug-runtime": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/pug-runtime/-/pug-runtime-2.0.5.tgz", + "integrity": "sha512-P+rXKn9un4fQY77wtpcuFyvFaBww7/91f3jHa154qU26qFAnOe6SW1CbIDcxiG5lLK9HazYrMCCuDvNgDQNptw==", "dev": true }, - "path-key": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", - "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=", - "dev": true + "pug-strip-comments": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/pug-strip-comments/-/pug-strip-comments-1.0.4.tgz", + "integrity": "sha512-i5j/9CS4yFhSxHp5iKPHwigaig/VV9g+FgReLJWWHEHbvKsbqL0oP/K5ubuLco6Wu3Kan5p7u7qk8A4oLLh6vw==", + "dev": true, + "requires": { + "pug-error": "^1.3.3" + } }, - "path-parse": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.6.tgz", - "integrity": "sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==", + "pug-walk": { + "version": "1.1.8", + "resolved": "https://registry.npmjs.org/pug-walk/-/pug-walk-1.1.8.tgz", + "integrity": "sha512-GMu3M5nUL3fju4/egXwZO0XLi6fW/K3T3VTgFQ14GxNi8btlxgT5qZL//JwZFm/2Fa64J/PNS8AZeys3wiMkVA==", "dev": true }, - "path-type": { + "pump": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz", - "integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==", "dev": true, "requires": { - "pify": "^3.0.0" + "end-of-stream": "^1.1.0", + "once": "^1.3.1" } }, - "picocolors": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", - "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==", - "dev": true - }, - "picomatch": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", - "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", - "dev": true - }, - "pidtree": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/pidtree/-/pidtree-0.3.1.tgz", - "integrity": "sha512-qQbW94hLHEqCg7nhby4yRC7G2+jYHY4Rguc2bjw7Uug4GIJuu1tvf2uHaZv5Q8zdt+WKJ6qK1FOI6amaWUo5FA==", + "punycode": { + "version": "2.1.1", "dev": true }, - "pify": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", - "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", + "qs": { + "version": "6.5.2", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz", + "integrity": "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==", "dev": true }, - "pirates": { - "version": "4.0.5", - "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.5.tgz", - "integrity": "sha512-8V9+HQPupnaXMA23c5hvl69zXvTwTzyAYasnkb0Tts4XvO4CliqONMOnvlq26rkhLC3nWDFBJf73LU1e1VZLaQ==", + "querystringify": { + "version": "2.2.0", "dev": true }, - "pkg-dir": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", - "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", + "queue": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/queue/-/queue-6.0.1.tgz", + "integrity": "sha512-AJBQabRCCNr9ANq8v77RJEv73DPbn55cdTb+Giq4X0AVnNVZvMHlYp7XlQiN+1npCZj1DuSmaA2hYVUUDgxFDg==", "dev": true, "requires": { - "find-up": "^4.0.0" + "inherits": "~2.0.3" } }, - "posix-character-classes": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/posix-character-classes/-/posix-character-classes-0.1.1.tgz", - "integrity": "sha1-AerA/jta9xoqbAL+q7jB/vfgDqs=", + "quick-lru": { + "version": "4.0.1", "dev": true }, - "prelude-ls": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz", - "integrity": "sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=", + "quickselect": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/quickselect/-/quickselect-2.0.0.tgz", + "integrity": "sha512-RKJ22hX8mHe3Y6wH/N3wCM6BWtjaxIyyUIkpHOvfFnxdI4yD4tBXEBKSbriGujF6jnSVkJrffuo6vxACiSSxIw==", "dev": true }, - "pretty-format": { - "version": "26.6.2", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-26.6.2.tgz", - "integrity": "sha512-7AeGuCYNGmycyQbCqd/3PWH4eOoX/OiCa0uphp57NVTeAGdJGaAliecxwBDHYQCIvrW7aDBZCYeNTP/WX69mkg==", + "random-bytes": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/random-bytes/-/random-bytes-1.0.0.tgz", + "integrity": "sha512-iv7LhNVO047HzYR3InF6pUcUsPQiHTM1Qal51DcGSuZFBil1aBBWG5eHPNek7bvILMaYJ/8RU1e8w1AMdHmLQQ==", + "dev": true + }, + "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==", + "dev": true + }, + "raw-body": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.3.3.tgz", + "integrity": "sha512-9esiElv1BrZoI3rCDuOuKCBRbuApGGaDPQfjSflGxdy4oyzqghxu6klEkkVIvBje+FF0BX9coEv8KqW6X/7njw==", "dev": true, "requires": { - "@jest/types": "^26.6.2", - "ansi-regex": "^5.0.0", - "ansi-styles": "^4.0.0", - "react-is": "^17.0.1" + "bytes": "3.0.0", + "http-errors": "1.6.3", + "iconv-lite": "0.4.23", + "unpipe": "1.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==", + "iconv-lite": { + "version": "0.4.23", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.23.tgz", + "integrity": "sha512-neyTUVFtahjf0mB3dZT77u+8O0QB89jFdnBkd5P1JgYPbPaia3gXXOVL2fq8VyU2gMMD7SaN7QukTB/pmXYvDA==", "dev": true, "requires": { - "color-name": "~1.1.4" + "safer-buffer": ">= 2.1.2 < 3" } - }, - "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 - }, - "react-is": { - "version": "17.0.2", - "resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz", - "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==", - "dev": true } } }, - "prompts": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/prompts/-/prompts-2.4.2.tgz", - "integrity": "sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==", + "rbush": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/rbush/-/rbush-3.0.1.tgz", + "integrity": "sha512-XRaVO0YecOpEuIvbhbpTrZgoiI6xBlz6hnlr6EHhd+0x9ase6EmeN+hdwwUaJvLcsFFQ8iWVF1GAK1yB0BWi0w==", "dev": true, "requires": { - "kleur": "^3.0.3", - "sisteransi": "^1.0.5" + "quickselect": "^2.0.0" } }, - "propagate": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/propagate/-/propagate-2.0.1.tgz", - "integrity": "sha512-vGrhOavPSTz4QVNuBNdcNXePNdNMaO1xj9yBeH1ScQPjk/rhg9sSlCXPhMkFuaNNW/syTvYqsnbIJxMBfRbbag==", - "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==", - "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==", + "rc": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", + "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==", "dev": true, + "optional": true, "requires": { - "end-of-stream": "^1.1.0", - "once": "^1.3.1" + "deep-extend": "^0.6.0", + "ini": "~1.3.0", + "minimist": "^1.2.0", + "strip-json-comments": "~2.0.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==", - "dev": true - }, - "quick-lru": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-4.0.1.tgz", - "integrity": "sha512-ARhCpm70fzdcvNQfPoy49IaanKkTlRWF2JMzqhcJbhSFRZv7nPTvZJdcY7301IPmvW+/p0RgIWnQDLJxifsQ7g==", - "dev": true - }, "react-is": { - "version": "16.13.1", - "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", - "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==", + "version": "17.0.2", "dev": true }, "read-pkg": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-3.0.0.tgz", - "integrity": "sha1-nLxoaXj+5l0WwA4rGcI3/Pbjg4k=", "dev": true, "requires": { "load-json-file": "^4.0.0", @@ -17038,8 +22064,6 @@ }, "read-pkg-up": { "version": "7.0.1", - "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-7.0.1.tgz", - "integrity": "sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg==", "dev": true, "requires": { "find-up": "^4.1.0", @@ -17048,21 +22072,17 @@ }, "dependencies": { "parse-json": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.0.0.tgz", - "integrity": "sha512-OOY5b7PAEFV0E2Fir1KOkxchnZNCdowAJgQ5NuxjpBKTRP3pQhwkrkxqQjeoKJ+fO7bCpmIZaogI4eZGDMEGOw==", + "version": "5.2.0", "dev": true, "requires": { "@babel/code-frame": "^7.0.0", "error-ex": "^1.3.1", - "json-parse-better-errors": "^1.0.1", + "json-parse-even-better-errors": "^2.3.0", "lines-and-columns": "^1.1.6" } }, "read-pkg": { "version": "5.2.0", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-5.2.0.tgz", - "integrity": "sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==", "dev": true, "requires": { "@types/normalize-package-data": "^2.4.0", @@ -17073,77 +22093,164 @@ "dependencies": { "type-fest": { "version": "0.6.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.6.0.tgz", - "integrity": "sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==", "dev": true } } + }, + "type-fest": { + "version": "0.8.1", + "dev": true + } + } + }, + "readable-stream": { + "version": "3.6.2", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", + "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", + "dev": true, + "requires": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + } + }, + "readable-web-to-node-stream": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/readable-web-to-node-stream/-/readable-web-to-node-stream-3.0.2.tgz", + "integrity": "sha512-ePeK6cc1EcKLEhJFt/AebMCLL+GgSKhuygrZ/GLaKZYEecIgIECf4UaUuaByiGtzckwR4ain9VzUh95T1exYGw==", + "dev": true, + "requires": { + "readable-stream": "^3.6.0" + } + }, + "readdir-glob": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/readdir-glob/-/readdir-glob-1.1.3.tgz", + "integrity": "sha512-v05I2k7xN8zXvPD9N+z/uhXPaj0sUFCe2rcWZIpBsqxfP7xXFQ0tipAd/wjj1YxWyWtUS5IDJpOG82JKt2EAVA==", + "dev": true, + "requires": { + "minimatch": "^5.1.0" + }, + "dependencies": { + "brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dev": true, + "requires": { + "balanced-match": "^1.0.0" + } + }, + "minimatch": { + "version": "5.1.6", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz", + "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==", + "dev": true, + "requires": { + "brace-expansion": "^2.0.1" + } } } }, "redent": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/redent/-/redent-3.0.0.tgz", - "integrity": "sha512-6tDA8g98We0zd0GvVeMT9arEOnTw9qM03L9cJXaCjrip1OO764RDBLBfrB4cwzNGDj5OA5ioymC9GkizgWJDUg==", "dev": true, "requires": { "indent-string": "^4.0.0", "strip-indent": "^3.0.0" } }, + "regenerator-runtime": { + "version": "0.11.1", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz", + "integrity": "sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg==", + "dev": true + }, "regex-not": { "version": "1.0.2", - "resolved": "https://registry.npmjs.org/regex-not/-/regex-not-1.0.2.tgz", - "integrity": "sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A==", "dev": true, "requires": { "extend-shallow": "^3.0.2", "safe-regex": "^1.1.0" } }, + "regexp.prototype.flags": { + "version": "1.4.3", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3", + "functions-have-names": "^1.2.2" + } + }, "remove-trailing-separator": { "version": "1.1.0", - "resolved": "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz", - "integrity": "sha1-wkvOKig62tW8P1jg1IJJuSN52O8=", "dev": true }, "repeat-element": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.3.tgz", - "integrity": "sha512-ahGq0ZnV5m5XtZLMb+vP76kcAM5nkLqk0lpqAuojSKGgQtn4eRi4ZZGm2olo2zKFH+sMsWaqOCW1dqAnOru72g==", + "version": "1.1.4", "dev": true }, "repeat-string": { "version": "1.6.1", - "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz", - "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=", "dev": true }, + "reproject": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/reproject/-/reproject-1.2.5.tgz", + "integrity": "sha512-cTH78fi1uuv5gzW/GVepO4LbCvOUhO0X2BEyyvrKkYb4KPRmDPs7cZnIxemHPUIch/CoSI8MPLmXRHZFSHjbKw==", + "dev": true, + "requires": { + "concat-stream": "^2.0.0", + "event-stream": "^4.0.0", + "geojson-stream": "0.1.0", + "minimist": "^1.2.0", + "proj4": "^2.4.4" + }, + "dependencies": { + "concat-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-2.0.0.tgz", + "integrity": "sha512-MWufYdFw53ccGjCA+Ol7XJYpAlW6/prSMzuPOTRnJGcGzuhLn4Scrz7qf6o8bROZ514ltazcIFJZevcfbo0x7A==", + "dev": true, + "requires": { + "buffer-from": "^1.0.0", + "inherits": "^2.0.3", + "readable-stream": "^3.0.2", + "typedarray": "^0.0.6" + } + }, + "typedarray": { + "version": "0.0.6", + "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", + "integrity": "sha512-/aCDEGatGvZ2BIk+HmLf4ifCJFwvKFNb9/JeZPMulfgFracn9QFcAf5GO8B/mweUjSoblS5In0cWhqpfs/5PQA==", + "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 }, "require-main-filename": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz", - "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==", + "dev": true + }, + "requires-port": { + "version": "1.0.0", "dev": true }, "resolve": { - "version": "1.17.0", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.17.0.tgz", - "integrity": "sha512-ic+7JYiV8Vi2yzQGFWOkiZD5Z9z7O2Zhm9XMaTxdJExKasieFCr+yXZ/WmXsckHiKl12ar0y6XiXDx3m4RHn1w==", + "version": "1.22.1", "dev": true, "requires": { - "path-parse": "^1.0.6" + "is-core-module": "^2.9.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" } }, "resolve-cwd": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-3.0.0.tgz", - "integrity": "sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==", "dev": true, "requires": { "resolve-from": "^5.0.0" @@ -17151,62 +22258,130 @@ }, "resolve-from": { "version": "5.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", - "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", "dev": true }, "resolve-url": { "version": "0.2.1", - "resolved": "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz", - "integrity": "sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo=", "dev": true }, + "restore-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz", + "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==", + "dev": true, + "optional": true, + "requires": { + "onetime": "^5.1.0", + "signal-exit": "^3.0.2" + } + }, "ret": { "version": "0.1.15", - "resolved": "https://registry.npmjs.org/ret/-/ret-0.1.15.tgz", - "integrity": "sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==", "dev": true }, + "rfc5646": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/rfc5646/-/rfc5646-3.0.0.tgz", + "integrity": "sha512-yFQuMO3ANS0jhQLB3b4NJGQ13RTm6tA9ZRf70nRSmOKchaT88pzh4fBdhcXEOptYdGw22vNqH7IRD/7pjDILZQ==", + "dev": true + }, + "right-align": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/right-align/-/right-align-0.1.3.tgz", + "integrity": "sha512-yqINtL/G7vs2v+dFIZmFUDbnVyFUJFKd6gK22Kgo6R4jfJGFtisKyncWDDULgjfqf4ASQuIQyjJ7XZ+3aWpsAg==", + "dev": true, + "requires": { + "align-text": "^0.1.1" + } + }, "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" } }, + "ripemd160": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.2.tgz", + "integrity": "sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==", + "dev": true, + "requires": { + "hash-base": "^3.0.0", + "inherits": "^2.0.1" + } + }, "rsvp": { "version": "4.8.5", - "resolved": "https://registry.npmjs.org/rsvp/-/rsvp-4.8.5.tgz", - "integrity": "sha512-nfMOlASu9OnRJo1mbEk2cz0D56a1MBNrJ7orjRZQG10XDyuvwksKbuXNp6qa+kbn839HwjwhBzhFmdsaEAfauA==", "dev": true }, + "rtree-sql.js": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/rtree-sql.js/-/rtree-sql.js-1.7.0.tgz", + "integrity": "sha512-hue7klBnBrM6pvUPSnXNNgA0yN9FIjmhb8QveVY9q5h/3b//Cd8jaafUE0Ty89fuiamaLEHRw8eQq8mTn6Df5Q==", + "dev": true + }, + "run-async": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.4.1.tgz", + "integrity": "sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==", + "dev": true, + "optional": true + }, + "rxjs": { + "version": "6.6.7", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", + "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", + "dev": true, + "optional": true, + "requires": { + "tslib": "^1.9.0" + }, + "dependencies": { + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "dev": true, + "optional": true + } + } + }, "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==", + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", "dev": true }, + "safe-json-stringify": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/safe-json-stringify/-/safe-json-stringify-1.2.0.tgz", + "integrity": "sha512-gH8eh2nZudPQO6TytOvbxnuhYBOvDBBLW52tz5q6X58lJcd/tkmqFR+5Z9adS8aJtURSXWThWy/xJtJwixErvg==", + "dev": true, + "optional": true + }, "safe-regex": { "version": "1.1.0", - "resolved": "https://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz", - "integrity": "sha1-QKNmnzsHfR6UPURinhV91IAjvy4=", "dev": true, "requires": { - "ret": "~0.1.10" + "ret": "~0.1.10" + } + }, + "safe-regex-test": { + "version": "1.0.0", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "get-intrinsic": "^1.1.3", + "is-regex": "^1.1.4" } }, "safer-buffer": { "version": "2.1.2", - "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", - "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", "dev": true }, "sane": { "version": "4.1.0", - "resolved": "https://registry.npmjs.org/sane/-/sane-4.1.0.tgz", - "integrity": "sha512-hhbzAgTIX8O7SHfp2c8/kREfEn4qO/9q8C9beyY6+tvZ87EpoZ3i1RIEvp27YBswnNbY9mWd6paKVmKbAgLfZA==", "dev": true, "requires": { "@cnakazawa/watch": "^1.0.3", @@ -17222,153 +22397,193 @@ "dependencies": { "anymatch": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-2.0.0.tgz", - "integrity": "sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw==", "dev": true, "requires": { "micromatch": "^3.1.4", "normalize-path": "^2.1.1" } }, - "braces": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", - "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", + "cross-spawn": { + "version": "6.0.5", "dev": true, "requires": { - "arr-flatten": "^1.1.0", - "array-unique": "^0.3.2", - "extend-shallow": "^2.0.1", - "fill-range": "^4.0.0", - "isobject": "^3.0.1", - "repeat-element": "^1.1.2", - "snapdragon": "^0.8.1", - "snapdragon-node": "^2.0.1", - "split-string": "^3.0.2", - "to-regex": "^3.0.1" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - } + "nice-try": "^1.0.4", + "path-key": "^2.0.1", + "semver": "^5.5.0", + "shebang-command": "^1.2.0", + "which": "^1.2.9" } }, - "fill-range": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", - "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", + "execa": { + "version": "1.0.0", "dev": true, "requires": { - "extend-shallow": "^2.0.1", - "is-number": "^3.0.0", - "repeat-string": "^1.6.1", - "to-regex-range": "^2.1.0" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - } + "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" } }, - "is-number": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", - "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", + "get-stream": { + "version": "4.1.0", "dev": true, "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } + "pump": "^3.0.0" } }, - "micromatch": { - "version": "3.1.10", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", - "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", - "dev": true, - "requires": { - "arr-diff": "^4.0.0", - "array-unique": "^0.3.2", - "braces": "^2.3.1", - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "extglob": "^2.0.4", - "fragment-cache": "^0.2.1", - "kind-of": "^6.0.2", - "nanomatch": "^1.2.9", - "object.pick": "^1.3.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.2" - } + "is-stream": { + "version": "1.1.0", + "dev": true }, "normalize-path": { "version": "2.1.1", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", - "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", "dev": true, "requires": { "remove-trailing-separator": "^1.0.1" } }, - "to-regex-range": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", - "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=", + "npm-run-path": { + "version": "2.0.2", + "dev": true, + "requires": { + "path-key": "^2.0.0" + } + }, + "path-key": { + "version": "2.0.1", + "dev": true + }, + "semver": { + "version": "5.7.1", + "dev": true + }, + "shebang-command": { + "version": "1.2.0", + "dev": true, + "requires": { + "shebang-regex": "^1.0.0" + } + }, + "shebang-regex": { + "version": "1.0.0", + "dev": true + }, + "which": { + "version": "1.3.1", "dev": true, "requires": { - "is-number": "^3.0.0", - "repeat-string": "^1.6.1" + "isexe": "^2.0.0" } } } }, + "saslprep": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/saslprep/-/saslprep-1.0.3.tgz", + "integrity": "sha512-/MY/PEMbk2SuY5sScONwhUDsV2p77Znkb/q3nSVstq/yQzYJOH/Azh29p9oJLsl3LnQwSvZDKagDGBsBwSooag==", + "dev": true, + "optional": true, + "requires": { + "sparse-bitfield": "^3.0.3" + } + }, + "sax": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", + "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==", + "dev": true + }, "saxes": { "version": "5.0.1", - "resolved": "https://registry.npmjs.org/saxes/-/saxes-5.0.1.tgz", - "integrity": "sha512-5LBh1Tls8c9xgGjw3QrMwETmTMVk0oFgvrFSvWx62llR2hcEInrKNZ2GZCCuuy2lvWrdl5jhbpeqc5hRYKFOcw==", "dev": true, "requires": { "xmlchars": "^2.2.0" } }, "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "version": "6.3.0", "dev": true }, + "send": { + "version": "0.17.2", + "resolved": "https://registry.npmjs.org/send/-/send-0.17.2.tgz", + "integrity": "sha512-UJYB6wFSJE3G00nEivR5rgWp8c2xXvJ3OPWPhmuteU0IKj8nKbG3DrjiOmLwpnHGYWAVwA69zmTm++YG0Hmwww==", + "dev": true, + "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.8.1", + "mime": "1.6.0", + "ms": "2.1.3", + "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==", + "dev": true, + "requires": { + "ms": "2.0.0" + }, + "dependencies": { + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true + } + } + }, + "http-errors": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.8.1.tgz", + "integrity": "sha512-Kpk9Sm7NmI+RHhnj6OIWDI1d6fIoFAtFt9RLaTMRlg/8w49juAStsrBgp0Dp4OdxdVbRIeKhtCUvoi/RuAhO4g==", + "dev": true, + "requires": { + "depd": "~1.1.2", + "inherits": "2.0.4", + "setprototypeof": "1.2.0", + "statuses": ">= 1.5.0 < 2", + "toidentifier": "1.0.1" + } + }, + "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 + } + } + }, + "serve-static": { + "version": "1.14.2", + "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.14.2.tgz", + "integrity": "sha512-+TMNA9AFxUEGuC0z2mevogSnn9MXKb4fa7ngeRMJaaGv8vTwnIEkKi+QGvPt33HSnf8pRS+WGM0EbMtCJLKMBQ==", + "dev": true, + "requires": { + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "parseurl": "~1.3.3", + "send": "0.17.2" + } + }, "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 }, "set-value": { "version": "2.0.1", - "resolved": "https://registry.npmjs.org/set-value/-/set-value-2.0.1.tgz", - "integrity": "sha512-JxHc1weCN68wRY0fhCoXpyK55m/XPHafOmK4UWD7m2CI14GMcFypt4w/0+NV5f/ZMby2F6S2wwA7fgynh9gWSw==", "dev": true, "requires": { "extend-shallow": "^2.0.1", @@ -17379,65 +22594,113 @@ "dependencies": { "extend-shallow": { "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", "dev": true, "requires": { "is-extendable": "^0.1.0" } + }, + "is-extendable": { + "version": "0.1.1", + "dev": true } } }, - "shebang-command": { + "setprototypeof": { "version": "1.2.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", - "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", + "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==", + "dev": true + }, + "sha.js": { + "version": "2.4.11", + "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz", + "integrity": "sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==", "dev": true, "requires": { - "shebang-regex": "^1.0.0" + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + } + }, + "shebang-command": { + "version": "2.0.0", + "dev": true, + "requires": { + "shebang-regex": "^3.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=", + "version": "3.0.0", "dev": true }, "shell-quote": { - "version": "1.7.2", - "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.7.2.tgz", - "integrity": "sha512-mRz/m/JVscCrkMyPqHc/bczi3OQHkLTqXHEFu0zDhK/qfv3UcOA4SVmRCLmos4bhjr9ekVQubj/R7waKapmiQg==", + "version": "1.7.4", "dev": true }, "shellwords": { "version": "0.1.1", - "resolved": "https://registry.npmjs.org/shellwords/-/shellwords-0.1.1.tgz", - "integrity": "sha512-vFwSUfQvqybiICwZY5+DAWIPLKsWO31Q91JSKl3UYv+K5c2QRPzn0qzec6QPu1Qc9eHYItiP3NdJqNVqetYAww==", "dev": true, "optional": true }, + "side-channel": { + "version": "1.0.4", + "dev": true, + "requires": { + "call-bind": "^1.0.0", + "get-intrinsic": "^1.0.2", + "object-inspect": "^1.9.0" + } + }, + "sift": { + "version": "16.0.1", + "resolved": "https://registry.npmjs.org/sift/-/sift-16.0.1.tgz", + "integrity": "sha512-Wv6BjQ5zbhW7VFefWusVP33T/EM0vYikCaQ2qR8yULbsilAT8/wQaXvuQ3ptGLpoKx+lihJE3y2UTgKDyyNHZQ==", + "dev": true + }, "signal-exit": { "version": "3.0.7", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", - "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", + "dev": true + }, + "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==", + "dev": true, + "optional": true + }, + "simple-get": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/simple-get/-/simple-get-3.1.1.tgz", + "integrity": "sha512-CQ5LTKGfCpvE1K0n2us+kuMPbk/q0EKl82s4aheV9oXjFEz6W/Y7oQFVJuU6QG77hRT4Ghb5RURteF5vnWjupA==", + "dev": true, + "optional": true, + "requires": { + "decompress-response": "^4.2.0", + "once": "^1.3.1", + "simple-concat": "^1.0.0" + } + }, + "simplify-js": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/simplify-js/-/simplify-js-1.2.4.tgz", + "integrity": "sha512-vITfSlwt7h/oyrU42R83mtzFpwYk3+mkH9bOHqq/Qw6n8rtR7aE3NZQ5fbcyCUVVmuMJR6ynsAhOfK2qoah8Jg==", "dev": true }, "sisteransi": { "version": "1.0.5", - "resolved": "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.5.tgz", - "integrity": "sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==", "dev": true }, "slash": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", - "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "version": "2.0.0", + "dev": true + }, + "smart-buffer": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.2.0.tgz", + "integrity": "sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==", "dev": true }, "snapdragon": { "version": "0.8.2", - "resolved": "https://registry.npmjs.org/snapdragon/-/snapdragon-0.8.2.tgz", - "integrity": "sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg==", "dev": true, "requires": { "base": "^0.11.1", @@ -17452,8 +22715,6 @@ "dependencies": { "debug": { "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", "dev": true, "requires": { "ms": "2.0.0" @@ -17461,8 +22722,6 @@ }, "define-property": { "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", "dev": true, "requires": { "is-descriptor": "^0.1.0" @@ -17470,31 +22729,72 @@ }, "extend-shallow": { "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", "dev": true, "requires": { "is-extendable": "^0.1.0" } }, + "is-accessor-descriptor": { + "version": "0.1.6", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "is-data-descriptor": { + "version": "0.1.4", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "is-descriptor": { + "version": "0.1.6", + "dev": true, + "requires": { + "is-accessor-descriptor": "^0.1.6", + "is-data-descriptor": "^0.1.4", + "kind-of": "^5.0.0" + } + }, + "is-extendable": { + "version": "0.1.1", + "dev": true + }, + "kind-of": { + "version": "5.1.0", + "dev": true + }, "ms": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", "dev": true }, "source-map": { "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", "dev": true } } }, "snapdragon-node": { "version": "2.1.1", - "resolved": "https://registry.npmjs.org/snapdragon-node/-/snapdragon-node-2.1.1.tgz", - "integrity": "sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw==", "dev": true, "requires": { "define-property": "^1.0.0", @@ -17504,48 +22804,15 @@ "dependencies": { "define-property": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", - "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", "dev": true, "requires": { "is-descriptor": "^1.0.0" } - }, - "is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-data-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", - "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-descriptor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", - "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", - "dev": true, - "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - } } } }, "snapdragon-util": { "version": "3.0.1", - "resolved": "https://registry.npmjs.org/snapdragon-util/-/snapdragon-util-3.0.1.tgz", - "integrity": "sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ==", "dev": true, "requires": { "kind-of": "^3.2.0" @@ -17553,8 +22820,6 @@ "dependencies": { "kind-of": { "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", "dev": true, "requires": { "is-buffer": "^1.1.5" @@ -17562,16 +22827,22 @@ } } }, + "socks": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/socks/-/socks-2.7.1.tgz", + "integrity": "sha512-7maUZy1N7uo6+WVEX6psASxtNlKaNVMlGQKkG/63nEDdLOWNbiUMoLK7X4uYoLhQstau72mLgfEWcXcwsaHbYQ==", + "dev": true, + "requires": { + "ip": "^2.0.0", + "smart-buffer": "^4.2.0" + } + }, "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-resolve": { "version": "0.5.3", - "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.3.tgz", - "integrity": "sha512-Htz+RnsXWk5+P2slx5Jh3Q66vhQj1Cllm0zvnaY98+NFx+Dv2CF/f5O/t8x+KaNdrdIAsruNzoh/KpialbqAnw==", "dev": true, "requires": { "atob": "^2.1.2", @@ -17583,8 +22854,6 @@ }, "source-map-support": { "version": "0.5.21", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", - "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", "dev": true, "requires": { "buffer-from": "^1.0.0", @@ -17592,15 +22861,21 @@ } }, "source-map-url": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/source-map-url/-/source-map-url-0.4.0.tgz", - "integrity": "sha1-PpNdfd1zYxuXZZlW1VEo6HtQhKM=", + "version": "0.4.1", "dev": true }, + "sparse-bitfield": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/sparse-bitfield/-/sparse-bitfield-3.0.3.tgz", + "integrity": "sha512-kvzhi7vqKTfkh0PZU+2D2PIllw2ymqJKujUcyPMd9Y75Nv4nPbGJZXNhxsgdQab2BmlDct1YnfQCguEvHr7VsQ==", + "dev": true, + "optional": true, + "requires": { + "memory-pager": "^1.0.2" + } + }, "spdx-correct": { "version": "3.1.1", - "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz", - "integrity": "sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==", "dev": true, "requires": { "spdx-expression-parse": "^3.0.0", @@ -17609,14 +22884,10 @@ }, "spdx-exceptions": { "version": "2.3.0", - "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz", - "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==", "dev": true }, "spdx-expression-parse": { "version": "3.0.1", - "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", - "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", "dev": true, "requires": { "spdx-exceptions": "^2.1.0", @@ -17624,15 +22895,26 @@ } }, "spdx-license-ids": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.5.tgz", - "integrity": "sha512-J+FWzZoynJEXGphVIS+XEh3kFSjZX/1i9gFBaWQcB+/tmpe2qUsSBABpcxqxnAxFdiUFEgAX1bjYGQvIZmoz9Q==", + "version": "3.0.12", "dev": true }, + "splaytree": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/splaytree/-/splaytree-3.1.1.tgz", + "integrity": "sha512-9FaQ18FF0+sZc/ieEeXHt+Jw2eSpUgUtTLDYB/HXKWvhYVyOc7h1hzkn5MMO3GPib9MmXG1go8+OsBBzs/NMww==", + "dev": true + }, + "split": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/split/-/split-1.0.1.tgz", + "integrity": "sha512-mTyOoPbrivtXnwnIxZRFYRrPNtEFKlpB2fvjSnCQUiAA6qAZzqwna5envK4uk6OIeP17CsdF3rSBGYVBsU0Tkg==", + "dev": true, + "requires": { + "through": "2" + } + }, "split-string": { "version": "3.1.0", - "resolved": "https://registry.npmjs.org/split-string/-/split-string-3.1.0.tgz", - "integrity": "sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw==", "dev": true, "requires": { "extend-shallow": "^3.0.0" @@ -17640,31 +22922,23 @@ }, "sprintf-js": { "version": "1.0.3", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", + "dev": true + }, + "stack-trace": { + "version": "0.0.10", + "resolved": "https://registry.npmjs.org/stack-trace/-/stack-trace-0.0.10.tgz", + "integrity": "sha512-KGzahc7puUKkzyMt+IqAep+TVNbKP+k2Lmwhub39m1AsTSkaDutx56aDCo+HLDzf/D26BIHTJWNiTG1KAJiQCg==", "dev": true }, "stack-utils": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.5.tgz", - "integrity": "sha512-xrQcmYhOsn/1kX+Vraq+7j4oE2j/6BFscZ0etmYg81xuM8Gq0022Pxb8+IqgOFUIaxHs0KaSb7T1+OegiNrNFA==", + "version": "2.0.6", "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 - } } }, "static-extend": { "version": "0.1.2", - "resolved": "https://registry.npmjs.org/static-extend/-/static-extend-0.1.2.tgz", - "integrity": "sha1-YICcOcv/VTNyJv1eC1IPNB8ftcY=", "dev": true, "requires": { "define-property": "^0.2.5", @@ -17673,19 +22947,91 @@ "dependencies": { "define-property": { "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", "dev": true, "requires": { "is-descriptor": "^0.1.0" } + }, + "is-accessor-descriptor": { + "version": "0.1.6", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "is-data-descriptor": { + "version": "0.1.4", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "is-descriptor": { + "version": "0.1.6", + "dev": true, + "requires": { + "is-accessor-descriptor": "^0.1.6", + "is-data-descriptor": "^0.1.4", + "kind-of": "^5.0.0" + } + }, + "kind-of": { + "version": "5.1.0", + "dev": true } } }, + "statuses": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", + "integrity": "sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA==", + "dev": true + }, + "stream-combiner": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/stream-combiner/-/stream-combiner-0.2.2.tgz", + "integrity": "sha512-6yHMqgLYDzQDcAkL+tjJDC5nSNuNIx0vZtRZeiPh7Saef7VHX9H5Ijn9l2VIol2zaNYlYEX6KyuT/237A58qEQ==", + "dev": true, + "requires": { + "duplexer": "~0.1.1", + "through": "~2.3.4" + } + }, + "streamsearch": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/streamsearch/-/streamsearch-1.1.0.tgz", + "integrity": "sha512-Mcc5wHehp9aXz1ax6bZUyY5afg9u2rv5cqQI3mRrYkGC8rW2hM02jWuwjtL++LS5qinSyhj2QfLyNsuc+VsExg==", + "dev": true + }, + "string_decoder": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "dev": true, + "requires": { + "safe-buffer": "~5.2.0" + } + }, "string-length": { "version": "4.0.2", - "resolved": "https://registry.npmjs.org/string-length/-/string-length-4.0.2.tgz", - "integrity": "sha512-+l6rNN5fYHNhZZy41RXsYptCjA2Igmq4EG7kZAYFQI1E1VTXarr6ZPXBg6eq7Y6eK4FEhY6AJlyuFIb/v/S0VQ==", "dev": true, "requires": { "char-regex": "^1.0.2", @@ -17694,8 +23040,6 @@ }, "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", @@ -17704,142 +23048,244 @@ } }, "string.prototype.padend": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/string.prototype.padend/-/string.prototype.padend-3.1.2.tgz", - "integrity": "sha512-/AQFLdYvePENU3W5rgurfWSMU6n+Ww8n/3cUt7E+vPBB/D7YDG8x+qjoFs4M/alR2bW7Qg6xMjVwWUOvuQ0XpQ==", + "version": "3.1.4", "dev": true, "requires": { "call-bind": "^1.0.2", - "define-properties": "^1.1.3", - "es-abstract": "^1.18.0-next.2" + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4" } }, "string.prototype.trimend": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.4.tgz", - "integrity": "sha512-y9xCjw1P23Awk8EvTpcyL2NIr1j7wJ39f+k6lvRnSMz+mz9CGz9NYPelDk42kOz6+ql8xjfK8oYzy3jAP5QU5A==", + "version": "1.0.6", "dev": true, "requires": { "call-bind": "^1.0.2", - "define-properties": "^1.1.3" + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4" } }, "string.prototype.trimstart": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.4.tgz", - "integrity": "sha512-jh6e984OBfvxS50tdY2nRZnoC5/mLFKOREQfw8t5yytkoUsJRNxvI/E39qu1sD0OtWI3OC0XgKSmcWwziwYuZw==", + "version": "1.0.6", "dev": true, "requires": { "call-bind": "^1.0.2", - "define-properties": "^1.1.3" + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4" } }, "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" - }, - "dependencies": { - "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 - } } }, "strip-bom": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", - "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=", + "version": "4.0.0", "dev": true }, "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-final-newline": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz", - "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==", "dev": true }, "strip-indent": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-3.0.0.tgz", - "integrity": "sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==", "dev": true, "requires": { "min-indent": "^1.0.0" } }, - "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "strip-json-comments": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", + "integrity": "sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ==", + "dev": true, + "optional": true + }, + "strnum": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/strnum/-/strnum-1.0.5.tgz", + "integrity": "sha512-J8bbNyKKXl5qYcR36TIO8W3mVGVHrmmxsd5PAItGkmyzwJvybiw2IVq5nqd0i4LSNSkB/sx9VHllbfFdr9k1JA==", + "dev": true, + "optional": true + }, + "strtok3": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/strtok3/-/strtok3-6.3.0.tgz", + "integrity": "sha512-fZtbhtvI9I48xDSywd/somNqgUHl2L2cstmXCCif0itOf96jeW18MBSyrLuNicYQVkvpOxkZtkzujiTJ9LW5Jw==", "dev": true, "requires": { - "has-flag": "^3.0.0" + "@tokenizer/token": "^0.3.0", + "peek-readable": "^4.1.0" } }, - "supports-hyperlinks": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/supports-hyperlinks/-/supports-hyperlinks-2.2.0.tgz", - "integrity": "sha512-6sXEzV5+I5j8Bmq9/vUphGRM/RJNT9SCURJLjwfOg51heRtguGWDzcaBlgAzKhQa0EVNpPEKzQuBwZ8S8WaCeQ==", + "superagent": { + "version": "8.0.9", + "resolved": "https://registry.npmjs.org/superagent/-/superagent-8.0.9.tgz", + "integrity": "sha512-4C7Bh5pyHTvU33KpZgwrNKh/VQnvgtCSqPRfJAUdmrtSYePVzVg4E4OzsrbkhJj9O7SO6Bnv75K/F8XVZT8YHA==", "dev": true, "requires": { - "has-flag": "^4.0.0", - "supports-color": "^7.0.0" + "component-emitter": "^1.3.0", + "cookiejar": "^2.1.4", + "debug": "^4.3.4", + "fast-safe-stringify": "^2.1.1", + "form-data": "^4.0.0", + "formidable": "^2.1.2", + "methods": "^1.1.2", + "mime": "2.6.0", + "qs": "^6.11.0", + "semver": "^7.3.8" }, "dependencies": { - "has-flag": { + "form-data": { "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz", + "integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==", + "dev": true, + "requires": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "mime-types": "^2.1.12" + } + }, + "mime": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-2.6.0.tgz", + "integrity": "sha512-USPkMeET31rOMiarsBNIHZKLGgvKc/LrjofAnBlOttf5ajRvqiRA8QsenbcooctK6d6Ts6aqZXBA+XbkKthiQg==", "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==", + "qs": { + "version": "6.11.1", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.11.1.tgz", + "integrity": "sha512-0wsrzgTz/kAVIeuxSjnpGC56rzYtr6JT/2BwEvMaPhFIoYa1aGO8LbzuU1R0uUYQkLpWBTOj0l/CLAJB64J6nQ==", + "dev": true, + "requires": { + "side-channel": "^1.0.4" + } + }, + "semver": { + "version": "7.3.8", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", + "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", "dev": true, "requires": { - "has-flag": "^4.0.0" + "lru-cache": "^6.0.0" } } } }, + "supports-color": { + "version": "7.2.0", + "dev": true, + "requires": { + "has-flag": "^4.0.0" + } + }, + "supports-hyperlinks": { + "version": "2.3.0", + "dev": true, + "requires": { + "has-flag": "^4.0.0", + "supports-color": "^7.0.0" + } + }, "supports-preserve-symlinks-flag": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", - "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", "dev": true }, + "svg-captcha": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/svg-captcha/-/svg-captcha-1.4.0.tgz", + "integrity": "sha512-/fkkhavXPE57zRRCjNqAP3txRCSncpMx3NnNZL7iEoyAtYwUjPhJxW6FQTQPG5UPEmCrbFoXS10C3YdJlW7PDg==", + "dev": true, + "requires": { + "opentype.js": "^0.7.3" + } + }, "symbol-tree": { "version": "3.2.4", - "resolved": "https://registry.npmjs.org/symbol-tree/-/symbol-tree-3.2.4.tgz", - "integrity": "sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==", "dev": true }, + "tar": { + "version": "6.1.13", + "resolved": "https://registry.npmjs.org/tar/-/tar-6.1.13.tgz", + "integrity": "sha512-jdIBIN6LTIe2jqzay/2vtYLlBHa3JF42ot3h1dW8Q0PaAG4v8rm0cvpVePtau5C6OKXGGcgO9q2AMNSWxiLqKw==", + "dev": true, + "optional": true, + "requires": { + "chownr": "^2.0.0", + "fs-minipass": "^2.0.0", + "minipass": "^4.0.0", + "minizlib": "^2.1.1", + "mkdirp": "^1.0.3", + "yallist": "^4.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==", + "dev": true, + "optional": true, + "requires": { + "chownr": "^1.1.1", + "mkdirp-classic": "^0.5.2", + "pump": "^3.0.0", + "tar-stream": "^2.1.4" + }, + "dependencies": { + "chownr": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz", + "integrity": "sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==", + "dev": true, + "optional": true + } + } + }, + "tar-stream": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-2.2.0.tgz", + "integrity": "sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ==", + "dev": true, + "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" + } + }, "terminal-link": { "version": "2.1.1", - "resolved": "https://registry.npmjs.org/terminal-link/-/terminal-link-2.1.1.tgz", - "integrity": "sha512-un0FmiRUQNr5PJqy9kP7c40F5BOfpGlYTrxonDChEZB7pzZxRNp/bt+ymiy9/npwXya9KH99nJ/GXFIiUkYGFQ==", "dev": true, "requires": { "ansi-escapes": "^4.2.1", "supports-hyperlinks": "^2.0.0" } }, + "terraformer": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/terraformer/-/terraformer-1.0.4.tgz", + "integrity": "sha512-F5H7z0Dboi32wn0QdJzr+Hat8DIiJPPY2WCtV5qk0A6hZYL6Jgy4Wso095tWda3CGyiaYDfbHmRFhkQbEbaxqA==", + "dev": true + }, + "terraformer-arcgis-parser": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/terraformer-arcgis-parser/-/terraformer-arcgis-parser-1.0.4.tgz", + "integrity": "sha512-N8TRnJMN6cWznH19NcyPB2oFYV6dr1MIqThqBsVy0SxGtj2euRamj0Z+wZKUiWEsKFYfuUgEda3xfFzrrkuY+w==", + "dev": true, + "requires": { + "terraformer": "~1.0.4" + } + }, "test-exclude": { "version": "6.0.0", - "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz", - "integrity": "sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==", "dev": true, "requires": { "@istanbuljs/schema": "^0.1.2", @@ -17849,26 +23295,40 @@ }, "throat": { "version": "5.0.0", - "resolved": "https://registry.npmjs.org/throat/-/throat-5.0.0.tgz", - "integrity": "sha512-fcwX4mndzpLQKBS1DVYhGAcYaYt7vsHNIvQV+WXMvnow5cgjPphq5CaayLaGsjRdSCKZFNGt7/GYAuXaNOiYCA==", "dev": true }, + "through": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", + "integrity": "sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==", + "dev": true + }, + "tiny-inflate": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/tiny-inflate/-/tiny-inflate-1.0.3.tgz", + "integrity": "sha512-pkY1fj1cKHb2seWDy0B16HeWyczlJA9/WW3u3c4z/NiWDsO3DOU5D7nhTLE9CF0yXv/QZFY7sEJmj24dK+Rrqw==", + "dev": true + }, + "tmp": { + "version": "0.0.33", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", + "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", + "dev": true, + "optional": true, + "requires": { + "os-tmpdir": "~1.0.2" + } + }, "tmpl": { "version": "1.0.5", - "resolved": "https://registry.npmjs.org/tmpl/-/tmpl-1.0.5.tgz", - "integrity": "sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw==", "dev": true }, "to-fast-properties": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", - "integrity": "sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4=", "dev": true }, "to-object-path": { "version": "0.3.0", - "resolved": "https://registry.npmjs.org/to-object-path/-/to-object-path-0.3.0.tgz", - "integrity": "sha1-KXWIt7Dn4KwI4E5nL4XB9JmeF68=", "dev": true, "requires": { "kind-of": "^3.0.2" @@ -17876,8 +23336,6 @@ "dependencies": { "kind-of": { "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", "dev": true, "requires": { "is-buffer": "^1.1.5" @@ -17887,8 +23345,6 @@ }, "to-regex": { "version": "3.0.2", - "resolved": "https://registry.npmjs.org/to-regex/-/to-regex-3.0.2.tgz", - "integrity": "sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw==", "dev": true, "requires": { "define-property": "^2.0.2", @@ -17898,44 +23354,66 @@ } }, "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==", + "version": "2.1.1", "dev": true, "requires": { - "is-number": "^7.0.0" + "is-number": "^3.0.0", + "repeat-string": "^1.6.1" + } + }, + "toidentifier": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz", + "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==", + "dev": true + }, + "token-stream": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/token-stream/-/token-stream-0.0.1.tgz", + "integrity": "sha512-nfjOAu/zAWmX9tgwi5NRp7O7zTDUD1miHiB40klUnAh9qnL1iXdgzcz/i5dMaL5jahcBAaSfmNOBBJBLJW8TEg==", + "dev": true + }, + "token-types": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/token-types/-/token-types-2.1.1.tgz", + "integrity": "sha512-wnQcqlreS6VjthyHO3Y/kpK/emflxDBNhlNUPfh7wE39KnuDdOituXomIbyI79vBtF0Ninpkh72mcuRHo+RG3Q==", + "dev": true, + "requires": { + "@tokenizer/token": "^0.1.1", + "ieee754": "^1.2.1" + }, + "dependencies": { + "@tokenizer/token": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@tokenizer/token/-/token-0.1.1.tgz", + "integrity": "sha512-XO6INPbZCxdprl+9qa/AAbFFOMzzwqYxpjPgLICrMD6C2FCw6qfJOPcBk6JqqPLSaZ/Qx87qn4rpPmPMwaAK6w==", + "dev": true + } } }, "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==", + "version": "4.1.2", "dev": true, "requires": { "psl": "^1.1.33", "punycode": "^2.1.1", - "universalify": "^0.1.2" + "universalify": "^0.2.0", + "url-parse": "^1.5.3" } }, "tr46": { "version": "2.1.0", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-2.1.0.tgz", - "integrity": "sha512-15Ih7phfcdP5YxqiB+iDtLoaTz4Nd35+IiAv0kQ5FNKHzXgdWqPoTIqEDDJmXceQt4JZk6lVPT8lnDlPpGDppw==", "dev": true, "requires": { "punycode": "^2.1.1" } }, "trim-newlines": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-3.0.0.tgz", - "integrity": "sha512-C4+gOpvmxaSMKuEf9Qc134F1ZuOHVXKRbtEflf4NTtuuJDEIJ9p5PXsalL8SkeRw+qit1Mo+yuvMPAKwWg/1hA==", + "version": "3.0.1", "dev": true }, "ts-jest": { "version": "26.5.6", - "resolved": "https://registry.npmjs.org/ts-jest/-/ts-jest-26.5.6.tgz", - "integrity": "sha512-rua+rCP8DxpA8b4DQD/6X2HQS8Zy/xzViVYfEs2OQu68tkCuKLV0Md8pmX55+W24uRIyAsf/BajRfxOs+R2MKA==", "dev": true, "requires": { "bs-logger": "0.x", @@ -17950,93 +23428,198 @@ "yargs-parser": "20.x" }, "dependencies": { - "semver": { - "version": "7.3.7", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.7.tgz", - "integrity": "sha512-QlYTucUYOews+WeEujDoEGziz4K6c47V/Bd+LjSSYcA94p+DmINdf7ncaUinThfvZyu13lN9OY1XDxt8C0Tw0g==", + "semver": { + "version": "7.3.8", + "dev": true, + "requires": { + "lru-cache": "^6.0.0" + } + }, + "yargs-parser": { + "version": "20.2.9", + "dev": true + } + } + }, + "tslib": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.5.0.tgz", + "integrity": "sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg==", + "dev": true, + "optional": true + }, + "tunnel-agent": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", + "integrity": "sha512-McnNiV1l8RYeY8tBgEpuodCC1mLUdbSN+CYBL7kJsJNInOP8UjDDEwdk6Mw60vdLLrr5NHKZhMAOSrR2NZuQ+w==", + "dev": true, + "optional": true, + "requires": { + "safe-buffer": "^5.0.1" + } + }, + "type-check": { + "version": "0.3.2", + "dev": true, + "requires": { + "prelude-ls": "~1.1.2" + } + }, + "type-detect": { + "version": "4.0.8", + "dev": true + }, + "type-fest": { + "version": "0.21.3", + "dev": true + }, + "type-is": { + "version": "1.6.18", + "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz", + "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==", + "dev": true, + "requires": { + "media-typer": "0.3.0", + "mime-types": "~2.1.24" + } + }, + "typedarray": { + "version": "0.0.7", + "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.7.tgz", + "integrity": "sha512-ueeb9YybpjhivjbHP2LdFDAjbS948fGEPj+ACAMs4xCMmh72OCOMQWBQKlaN4ZNQ04yfLSDLSx1tGRIoWimObQ==", + "dev": true + }, + "typedarray-to-buffer": { + "version": "3.1.5", + "dev": true, + "requires": { + "is-typedarray": "^1.0.0" + } + }, + "typescript": { + "version": "4.9.3", + "dev": true + }, + "uglify-js": { + "version": "2.8.29", + "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-2.8.29.tgz", + "integrity": "sha512-qLq/4y2pjcU3vhlhseXGGJ7VbFO4pBANu0kwl8VCa9KEI0V8VfZIx2Fy3w01iSTA/pGwKZSmu/+I4etLNDdt5w==", + "dev": true, + "requires": { + "source-map": "~0.5.1", + "uglify-to-browserify": "~1.0.0", + "yargs": "~3.10.0" + }, + "dependencies": { + "camelcase": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-1.2.1.tgz", + "integrity": "sha512-wzLkDa4K/mzI1OSITC+DUyjgIl/ETNHE9QvYgy6J6Jvqyyz4C0Xfd+lQhb19sX2jMpZV4IssUn0VDVmglV+s4g==", + "dev": true + }, + "cliui": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-2.1.0.tgz", + "integrity": "sha512-GIOYRizG+TGoc7Wgc1LiOTLare95R3mzKgoln+Q/lE4ceiYH19gUpl0l0Ffq4lJDEf3FxujMe6IBfOCs7pfqNA==", "dev": true, "requires": { - "lru-cache": "^6.0.0" + "center-align": "^0.1.1", + "right-align": "^0.1.1", + "wordwrap": "0.0.2" } }, - "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==", + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==", "dev": true + }, + "yargs": { + "version": "3.10.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-3.10.0.tgz", + "integrity": "sha512-QFzUah88GAGy9lyDKGBqZdkYApt63rCXYBGYnEP4xDJPXNqXXnBDACnbrXnViV6jRSqAePwrATi2i8mfYm4L1A==", + "dev": true, + "requires": { + "camelcase": "^1.0.2", + "cliui": "^2.1.0", + "decamelize": "^1.0.0", + "window-size": "0.1.0" + } } } }, - "type-check": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz", - "integrity": "sha1-WITKtRLPHTVeP7eE8wgEsrUg23I=", + "uglify-to-browserify": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/uglify-to-browserify/-/uglify-to-browserify-1.0.2.tgz", + "integrity": "sha512-vb2s1lYx2xBtUgy+ta+b2J/GLVUR+wmpINwHePmPRhOsIVCG2wDzKJ0n14GslH1BifsqVzSOwQhRaCAsZ/nI4Q==", "dev": true, - "requires": { - "prelude-ls": "~1.1.2" - } - }, - "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==", - "dev": true - }, - "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 + "optional": true }, - "typedarray-to-buffer": { - "version": "3.1.5", - "resolved": "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz", - "integrity": "sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==", + "uid-safe": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/uid-safe/-/uid-safe-2.1.5.tgz", + "integrity": "sha512-KPHm4VL5dDXKz01UuEd88Df+KzynaohSL9fBh096KWAxSKZQDI2uBrVqtvRM4rwrIrRRKsdLNML/lnaaVSRioA==", "dev": true, "requires": { - "is-typedarray": "^1.0.0" + "random-bytes": "~1.0.0" } }, - "typescript": { - "version": "4.6.3", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.6.3.tgz", - "integrity": "sha512-yNIatDa5iaofVozS/uQJEl3JRWLKKGJKh6Yaiv0GLGSuhpFJe7P3SbHZ8/yjAHRQwKRoA6YZqlfjXWmVzoVSMw==", + "uid2": { + "version": "0.0.4", + "resolved": "https://registry.npmjs.org/uid2/-/uid2-0.0.4.tgz", + "integrity": "sha512-IevTus0SbGwQzYh3+fRsAMTVVPOoIVufzacXcHPmdlle1jUpq7BRL+mw3dgeLanvGZdwwbWhRV6XrcFNdBmjWA==", "dev": true }, "unbox-primitive": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.1.tgz", - "integrity": "sha512-tZU/3NqK3dA5gpE1KtyiJUrEB0lxnGkMFHptJ7q6ewdZ8s12QrODwNbhIJStmJkd1QDXa1NRA8aF2A1zk/Ypyw==", + "version": "1.0.2", "dev": true, "requires": { - "function-bind": "^1.1.1", - "has-bigints": "^1.0.1", - "has-symbols": "^1.0.2", + "call-bind": "^1.0.2", + "has-bigints": "^1.0.2", + "has-symbols": "^1.0.3", "which-boxed-primitive": "^1.0.2" } }, + "underscore": { + "version": "1.8.3", + "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.8.3.tgz", + "integrity": "sha512-5WsVTFcH1ut/kkhAaHf4PVgI8c7++GiVcpCGxPouI6ZVjsqPnSDf8h/8HtVqc0t4fzRXwnMK70EcZeAs3PIddg==", + "dev": true + }, "union-value": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/union-value/-/union-value-1.0.1.tgz", - "integrity": "sha512-tJfXmxMeWYnczCVs7XAEvIV7ieppALdyepWMkHkwciRpZraG/xwT+s2JN8+pr1+8jCRf80FFzvr+MpQeeoF4Xg==", "dev": true, "requires": { "arr-union": "^3.1.0", "get-value": "^2.0.6", "is-extendable": "^0.1.1", "set-value": "^2.0.1" + }, + "dependencies": { + "is-extendable": { + "version": "0.1.1", + "dev": true + } } }, + "uniqid": { + "version": "5.4.0", + "resolved": "https://registry.npmjs.org/uniqid/-/uniqid-5.4.0.tgz", + "integrity": "sha512-38JRbJ4Fj94VmnC7G/J/5n5SC7Ab46OM5iNtSstB/ko3l1b5g7ALt4qzHFgGciFkyiRNtDXtLNb+VsxtMSE77A==", + "dev": true + }, "universalify": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", - "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", + "version": "0.2.0", + "dev": true + }, + "unpipe": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", + "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==", "dev": true }, "unset-value": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/unset-value/-/unset-value-1.0.0.tgz", - "integrity": "sha1-g3aHP30jNRef+x5vw6jtDfyKtVk=", "dev": true, "requires": { "has-value": "^0.3.1", @@ -18045,8 +23628,6 @@ "dependencies": { "has-value": { "version": "0.3.1", - "resolved": "https://registry.npmjs.org/has-value/-/has-value-0.3.1.tgz", - "integrity": "sha1-ex9YutpiyoJ+wKIHgCVlSEWZXh8=", "dev": true, "requires": { "get-value": "^2.0.3", @@ -18056,8 +23637,6 @@ "dependencies": { "isobject": { "version": "2.1.0", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz", - "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=", "dev": true, "requires": { "isarray": "1.0.0" @@ -18067,35 +23646,53 @@ }, "has-values": { "version": "0.1.4", - "resolved": "https://registry.npmjs.org/has-values/-/has-values-0.1.4.tgz", - "integrity": "sha1-bWHeldkd/Km5oCCJrThL/49it3E=", "dev": true } } }, + "update-browserslist-db": { + "version": "1.0.10", + "dev": true, + "requires": { + "escalade": "^3.1.1", + "picocolors": "^1.0.0" + } + }, "urix": { "version": "0.1.0", - "resolved": "https://registry.npmjs.org/urix/-/urix-0.1.0.tgz", - "integrity": "sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI=", "dev": true }, + "url-parse": { + "version": "1.5.10", + "dev": true, + "requires": { + "querystringify": "^2.1.1", + "requires-port": "^1.0.0" + } + }, "use": { "version": "3.1.1", - "resolved": "https://registry.npmjs.org/use/-/use-3.1.1.tgz", - "integrity": "sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==", + "dev": true + }, + "util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", + "dev": true + }, + "utils-merge": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", + "integrity": "sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==", "dev": true }, "uuid": { "version": "8.3.2", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", - "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==", "dev": true, "optional": true }, "v8-to-istanbul": { "version": "7.1.2", - "resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-7.1.2.tgz", - "integrity": "sha512-TxNb7YEUwkLXCQYeudi6lgQ/SZrzNO4kMdlqVxaZPUIUjCv6iSSypUQX70kNBSERpQ8fk48+d61FXk+tgqcWow==", "dev": true, "requires": { "@types/istanbul-lib-coverage": "^2.0.1", @@ -18104,27 +23701,70 @@ }, "dependencies": { "source-map": { - "version": "0.7.3", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz", - "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==", + "version": "0.7.4", "dev": true } } }, "validate-npm-package-license": { "version": "3.0.4", - "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", - "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", "dev": true, "requires": { "spdx-correct": "^3.0.0", "spdx-expression-parse": "^3.0.0" } }, + "vary": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", + "integrity": "sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==", + "dev": true + }, + "vasync": { + "version": "1.6.4", + "resolved": "https://registry.npmjs.org/vasync/-/vasync-1.6.4.tgz", + "integrity": "sha512-3oQMomVgQgHzNe5iKuT8PGOhMCQcg1wfh00Nh/Kl39ERdTlw/uNS7kbrhEraDMDKWHdDdc0iBFahPEd/Ft2b+A==", + "dev": true, + "requires": { + "verror": "1.6.0" + }, + "dependencies": { + "extsprintf": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.2.0.tgz", + "integrity": "sha512-T3PYC6HucmF4OfunfZb5d1nRvTSvWYhsr/Og33HANcCuCtGPUtWVyt/tTs8SU9sR0SGh5Z/xQCuX/D72ph2H+A==", + "dev": true + }, + "verror": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/verror/-/verror-1.6.0.tgz", + "integrity": "sha512-bIOaZx4+Bf6a7sIORfmYnyKLDLk/lhVym6rjYlq+vkitYKnhFmUpmPpDTCltWFrUTlGKs6sCeoDWfMA0oOOneA==", + "dev": true, + "requires": { + "extsprintf": "1.2.0" + } + } + } + }, + "verror": { + "version": "1.10.1", + "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.1.tgz", + "integrity": "sha512-veufcmxri4e3XSrT0xwfUR7kguIkaxBeosDg00yDWhk49wdwkSUrvvsm7nc75e1PUyvIeZj6nS8VQRYz2/S4Xg==", + "dev": true, + "requires": { + "assert-plus": "^1.0.0", + "core-util-is": "1.0.2", + "extsprintf": "^1.2.0" + } + }, + "void-elements": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/void-elements/-/void-elements-2.0.1.tgz", + "integrity": "sha512-qZKX4RnBzH2ugr8Lxa7x+0V6XD9Sb/ouARtiasEQCHB1EVU4NXtmHsDDrx1dO4ne5fc3J6EW05BP1Dl0z0iung==", + "dev": true + }, "w3c-hr-time": { "version": "1.0.2", - "resolved": "https://registry.npmjs.org/w3c-hr-time/-/w3c-hr-time-1.0.2.tgz", - "integrity": "sha512-z8P5DvDNjKDoFIHK7q8r8lackT6l+jo/Ye3HOle7l9nICP9lf1Ci25fy9vHd0JOWewkIFzXIEig3TdKT7JQ5fQ==", "dev": true, "requires": { "browser-process-hrtime": "^1.0.0" @@ -18132,17 +23772,22 @@ }, "w3c-xmlserializer": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/w3c-xmlserializer/-/w3c-xmlserializer-2.0.0.tgz", - "integrity": "sha512-4tzD0mF8iSiMiNs30BiLO3EpfGLZUT2MSX/G+o7ZywDzliWQ3OPtTZ0PTC3B3ca1UAf4cJMHB+2Bf56EriJuRA==", "dev": true, "requires": { "xml-name-validator": "^3.0.0" } }, + "walk": { + "version": "2.3.4", + "resolved": "https://registry.npmjs.org/walk/-/walk-2.3.4.tgz", + "integrity": "sha512-7E59PL35OcXlKpblHK4IUhr4rVGFDsUl1rndkdUlW4JKdnTNAVRaAp6EzLJQZTHwugepEsCVQpvFlGRRSveAAw==", + "dev": true, + "requires": { + "foreachasync": "3.x" + } + }, "walker": { "version": "1.0.8", - "resolved": "https://registry.npmjs.org/walker/-/walker-1.0.8.tgz", - "integrity": "sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ==", "dev": true, "requires": { "makeerror": "1.0.12" @@ -18150,14 +23795,16 @@ }, "webidl-conversions": { "version": "6.1.0", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-6.1.0.tgz", - "integrity": "sha512-qBIvFLGiBpLjfwmYAaHPXsn+ho5xZnGvyGvsarywGNc8VyQJUMHJ8OBKGGrPER0okBeMDaan4mNBlgBROxuI8w==", + "dev": true + }, + "webworkify": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/webworkify/-/webworkify-1.5.0.tgz", + "integrity": "sha512-AMcUeyXAhbACL8S2hqqdqOLqvJ8ylmIbNwUIqQujRSouf4+eUFaXbG6F1Rbu+srlJMmxQWsiU7mOJi0nMBfM1g==", "dev": true }, "whatwg-encoding": { "version": "1.0.5", - "resolved": "https://registry.npmjs.org/whatwg-encoding/-/whatwg-encoding-1.0.5.tgz", - "integrity": "sha512-b5lim54JOPN9HtzvK9HFXvBma/rnfFeqsic0hSpjtDbVxR3dJKLc+KB4V6GgiGOvl7CY/KNh8rxSo9DKQrnUEw==", "dev": true, "requires": { "iconv-lite": "0.4.24" @@ -18165,14 +23812,10 @@ }, "whatwg-mimetype": { "version": "2.3.0", - "resolved": "https://registry.npmjs.org/whatwg-mimetype/-/whatwg-mimetype-2.3.0.tgz", - "integrity": "sha512-M4yMwr6mAnQz76TbJm914+gPpB/nCwvZbJU28cUD6dR004SAxDLOOSUaB1JDRqLtaOV/vi0IC5lEAGFgrjGv/g==", "dev": true }, "whatwg-url": { "version": "8.7.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-8.7.0.tgz", - "integrity": "sha512-gAojqb/m9Q8a5IV96E3fHJM70AzCkgt4uXYX2O7EmuyOnLrViCQlsEBmF9UQIu3/aeAIp2U17rtbpZWNntQqdg==", "dev": true, "requires": { "lodash": "^4.7.0", @@ -18181,9 +23824,7 @@ } }, "which": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", - "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "version": "2.0.2", "dev": true, "requires": { "isexe": "^2.0.0" @@ -18191,8 +23832,6 @@ }, "which-boxed-primitive": { "version": "1.0.2", - "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz", - "integrity": "sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==", "dev": true, "requires": { "is-bigint": "^1.0.1", @@ -18204,63 +23843,131 @@ }, "which-module": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", - "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=", "dev": true }, - "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==", + "wide-align": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.5.tgz", + "integrity": "sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==", + "dev": true, + "optional": true, + "requires": { + "string-width": "^1.0.2 || 2 || 3 || 4" + } + }, + "window-size": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/window-size/-/window-size-0.1.0.tgz", + "integrity": "sha512-1pTPQDKTdd61ozlKGNCjhNRd+KPmgLSGa3mZTHoOliaGcESD8G1PXhh7c1fgiPjVbNVfgy2Faw4BI8/m0cC8Mg==", "dev": true }, - "wrap-ansi": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", - "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", + "winston": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/winston/-/winston-1.0.1.tgz", + "integrity": "sha512-MDfzOMhdpt0EJHNd7FInsIoNZak7v4c5a8dPH5OnxkKwvs0qq75HG99e7uPIGRQmOnPJOHXnPiatXIbhKNvBZA==", "dev": true, "requires": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" + "async": "0.9.x", + "colors": "1.0.x", + "cycle": "1.0.x", + "eyes": "0.1.x", + "isstream": "0.1.x", + "pkginfo": "0.3.x", + "stack-trace": "0.0.x" }, "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" - } + "async": { + "version": "0.9.2", + "resolved": "https://registry.npmjs.org/async/-/async-0.9.2.tgz", + "integrity": "sha512-l6ToIJIotphWahxxHyzK9bnLR6kM4jJIIgLShZeqLY7iboHoGkdgFl7W2/Ivi4SkMJYGKqW8vSuk0uKUj6qsSw==", + "dev": true + } + } + }, + "with": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/with/-/with-5.1.1.tgz", + "integrity": "sha512-uAnSsFGfSpF6DNhBXStvlZILfHJfJu4eUkfbRGk94kGO1Ta7bg6FwfvoOhhyHAJuFbCw+0xk4uJ3u57jLvlCJg==", + "dev": true, + "requires": { + "acorn": "^3.1.0", + "acorn-globals": "^3.0.0" + }, + "dependencies": { + "acorn": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-3.3.0.tgz", + "integrity": "sha512-OLUyIIZ7mF5oaAUT1w0TFqQS81q3saT46x8t7ukpPjMNk+nbs4ZHhs7ToV8EWnLYLepjETXd4XaCE4uxkMeqUw==", + "dev": true }, - "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==", + "acorn-globals": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/acorn-globals/-/acorn-globals-3.1.0.tgz", + "integrity": "sha512-uWttZCk96+7itPxK8xCzY86PnxKTMrReKDqrHzv42VQY0K30PUO8WY13WMOuI+cOdX4EIdzdvQ8k6jkuGRFMYw==", "dev": true, "requires": { - "color-name": "~1.1.4" + "acorn": "^4.0.4" + }, + "dependencies": { + "acorn": { + "version": "4.0.13", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-4.0.13.tgz", + "integrity": "sha512-fu2ygVGuMmlzG8ZeRJ0bvR41nsAkxxhbyk8bZ1SS521Z7vmgJFTQQlfz/Mp/nJexGBz+v8sC9bM6+lNgskt4Ug==", + "dev": true + } } - }, - "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 } } }, + "wkt-parser": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/wkt-parser/-/wkt-parser-1.3.2.tgz", + "integrity": "sha512-A26BOOo7sHAagyxG7iuRhnKMO7Q3mEOiOT4oGUmohtN/Li5wameeU4S6f8vWw6NADTVKljBs8bzA8JPQgSEMVQ==", + "dev": true + }, + "wkx": { + "version": "0.4.8", + "resolved": "https://registry.npmjs.org/wkx/-/wkx-0.4.8.tgz", + "integrity": "sha512-ikPXMM9IR/gy/LwiOSqWlSL3X/J5uk9EO2hHNRXS41eTLXaUFEVw9fn/593jW/tE5tedNg8YjT5HkCa4FqQZyQ==", + "dev": true, + "requires": { + "@types/node": "*" + } + }, + "wms-capabilities": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/wms-capabilities/-/wms-capabilities-0.4.1.tgz", + "integrity": "sha512-BfGzjDtF3GdWRFvySqf8y9EU1gBIzAd6zIlg+J6q9rYxiqz+YMAmSOHnMPRNOuP2VGPvcNkxXZdxBtMO0D652g==", + "dev": true, + "requires": { + "minimist": "^1.2.0" + } + }, + "word-wrap": { + "version": "1.2.3", + "dev": true + }, + "wordwrap": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.2.tgz", + "integrity": "sha512-xSBsCeh+g+dinoBv3GAOWM4LcVVO68wLXRanibtBSdUvkGWQRGeE9P7IwU9EmDDi4jA6L44lz15CGMwdw9N5+Q==", + "dev": true + }, + "wrap-ansi": { + "version": "6.2.0", + "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 }, "write-file-atomic": { "version": "3.0.3", - "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-3.0.3.tgz", - "integrity": "sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q==", "dev": true, "requires": { "imurmurhash": "^0.1.4", @@ -18270,39 +23977,131 @@ } }, "ws": { - "version": "7.5.7", - "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.7.tgz", - "integrity": "sha512-KMvVuFzpKBuiIXW3E4u3mySRO2/mCHSyZDJQM5NQ9Q9KHWHWh0NHgfbRMLLrceUK5qAL4ytALJbpRMjixFZh8A==", - "dev": true + "version": "7.5.9", + "dev": true, + "requires": {} + }, + "xml-crypto": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/xml-crypto/-/xml-crypto-2.1.5.tgz", + "integrity": "sha512-xOSJmGFm+BTXmaPYk8pPV3duKo6hJuZ5niN4uMzoNcTlwYs0jAu/N3qY+ud9MhE4N7eMRuC1ayC7Yhmb7MmAWg==", + "dev": true, + "requires": { + "@xmldom/xmldom": "^0.7.9", + "xpath": "0.0.32" + }, + "dependencies": { + "xpath": { + "version": "0.0.32", + "resolved": "https://registry.npmjs.org/xpath/-/xpath-0.0.32.tgz", + "integrity": "sha512-rxMJhSIoiO8vXcWvSifKqhvV96GjiD5wYb8/QHdoRyQvraTpp4IEv944nhGausZZ3u7dhQXteZuZbaqfpB7uYw==", + "dev": true + } + } + }, + "xml-encryption": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/xml-encryption/-/xml-encryption-1.2.1.tgz", + "integrity": "sha512-hn5w3l5p2+nGjlmM0CAhMChDzVGhW+M37jH35Z+GJIipXbn9PUlAIRZ6I5Wm7ynlqZjFrMAr83d/CIp9VZJMTA==", + "dev": true, + "requires": { + "escape-html": "^1.0.3", + "node-forge": "^0.10.0", + "xmldom": "~0.1.15", + "xpath": "0.0.27" + }, + "dependencies": { + "xpath": { + "version": "0.0.27", + "resolved": "https://registry.npmjs.org/xpath/-/xpath-0.0.27.tgz", + "integrity": "sha512-fg03WRxtkCV6ohClePNAECYsmpKKTv5L8y/X3Dn1hQrec3POx2jHZ/0P2qQ6HvsrU1BmeqXcof3NGGueG6LxwQ==", + "dev": true + } + } }, "xml-name-validator": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-3.0.0.tgz", - "integrity": "sha512-A5CUptxDsvxKJEU3yO6DuWBSJz/qizqzJKOMIfUJHETbBw/sFaDxgd6fxm1ewUaM0jZ444Fc5vC5ROYurg/4Pw==", "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==", + "dev": true, + "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==", + "dev": true + }, + "xmlbuilder2": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/xmlbuilder2/-/xmlbuilder2-3.0.2.tgz", + "integrity": "sha512-h4MUawGY21CTdhV4xm3DG9dgsqyhDkZvVJBx88beqX8wJs3VgyGQgAn5VreHuae6unTQxh115aMK5InCVmOIKw==", + "dev": true, + "requires": { + "@oozcitak/dom": "1.15.10", + "@oozcitak/infra": "1.0.8", + "@oozcitak/util": "8.3.8", + "@types/node": "*", + "js-yaml": "3.14.0" + }, + "dependencies": { + "js-yaml": { + "version": "3.14.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.0.tgz", + "integrity": "sha512-/4IbIeHcD9VMHFqDR/gQ7EdZdLimOvW2DdcxFjdyyZ9NsbS+ccrXqVWDtab/lRl5AlUqmpBx8EhPaWR+OtY17A==", + "dev": true, + "requires": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + } + } + } + }, "xmlchars": { "version": "2.2.0", - "resolved": "https://registry.npmjs.org/xmlchars/-/xmlchars-2.2.0.tgz", - "integrity": "sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw==", + "dev": true + }, + "xmldom": { + "version": "0.1.22", + "resolved": "https://registry.npmjs.org/xmldom/-/xmldom-0.1.22.tgz", + "integrity": "sha512-/9PWF/8TkkmZZmUtRYRw3wq1cT0ubaff/elSmdy+wYMrbyGH5CdSyr6XwDpH6HTkSIljXenjfVkBij46eescFQ==", + "dev": true + }, + "xpath": { + "version": "0.0.23", + "resolved": "https://registry.npmjs.org/xpath/-/xpath-0.0.23.tgz", + "integrity": "sha512-WHBD7+PebdFl+vGmhl/TnFLHDCTytivkerph52SF+2IUtil+lbOEK0BHHAoL+z4JOHIaF5R7Dh9VgrpnzVOFRA==", + "dev": true + }, + "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": "4.0.3", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz", - "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==", "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 + }, + "yaml": { + "version": "1.10.2", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz", + "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==", "dev": true }, "yargs": { "version": "15.4.1", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-15.4.1.tgz", - "integrity": "sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A==", "dev": true, "requires": { "cliui": "^6.0.0", @@ -18320,13 +24119,22 @@ }, "yargs-parser": { "version": "18.1.3", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz", - "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==", "dev": true, "requires": { "camelcase": "^5.0.0", "decamelize": "^1.2.0" } + }, + "zip-stream": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/zip-stream/-/zip-stream-4.1.0.tgz", + "integrity": "sha512-zshzwQW7gG7hjpBlgeQP9RuyPGNxvJdzR8SUM3QhxCnLjWN2E7j3dOvpeDcQoETfHx0urRS7EtmVToql7YpU4A==", + "dev": true, + "requires": { + "archiver-utils": "^2.1.0", + "compress-commons": "^4.1.0", + "readable-stream": "^3.6.0" + } } } } diff --git a/plugins/random/package.json b/plugins/random/package.json index 4c19cbd29..2446048c8 100644 --- a/plugins/random/package.json +++ b/plugins/random/package.json @@ -41,7 +41,7 @@ "@types/geojson": "^7946.0.7" }, "peerDependencies": { - "@ngageoint/mage.service": "^6.2.0" + "@ngageoint/mage.service": "^6.2.0 || ~6.3.0-beta" }, "devDependencies": { "@ngageoint/mage.service": "file:../../service", diff --git a/web-app/src/app/admin/admin-feeds/admin-feed/admin-feed-edit/admin-feed-edit-topic/admin-feed-edit-topic.component.scss b/plugins/sftp/README.md similarity index 100% rename from web-app/src/app/admin/admin-feeds/admin-feed/admin-feed-edit/admin-feed-edit-topic/admin-feed-edit-topic.component.scss rename to plugins/sftp/README.md diff --git a/plugins/sftp/config/sftpConfig.ts b/plugins/sftp/config/sftpConfig.ts new file mode 100644 index 000000000..32a7aac75 --- /dev/null +++ b/plugins/sftp/config/sftpConfig.ts @@ -0,0 +1,20 @@ +export const eKey: Promise = window.crypto.subtle.generateKey( + { + name: "AES-GCM", + length: 256, //can be 128, 192, or 256 + }, + true, //whether the key is extractable (i.e. can be used in exportKey) + ["encrypt", "decrypt"] //can "encrypt", "decrypt", "wrapKey", or "unwrapKey" +) + +export function arrayBufferToString(buffer: ArrayBuffer, encoding = 'utf-8'): string { + const decoder = new TextDecoder(encoding); + const view = new Uint8Array(buffer); + return decoder.decode(view); +} + +export function stringToArrayBuffer(str: string): ArrayBuffer { + let enc = new TextEncoder(); + var encoded = enc.encode(str); + return encoded; +} diff --git a/plugins/sftp/service/.gitignore b/plugins/sftp/service/.gitignore new file mode 100644 index 000000000..7264208a9 --- /dev/null +++ b/plugins/sftp/service/.gitignore @@ -0,0 +1,2 @@ +/lib/ +*scratch*/ \ No newline at end of file diff --git a/plugins/sftp/service/package-lock.json b/plugins/sftp/service/package-lock.json new file mode 100644 index 000000000..4fa42acd0 --- /dev/null +++ b/plugins/sftp/service/package-lock.json @@ -0,0 +1,24223 @@ +{ + "name": "@ngageoint/mage.sftp.service", + "version": "1.0.0-beta.1", + "lockfileVersion": 3, + "requires": true, + "packages": { + "": { + "name": "@ngageoint/mage.sftp.service", + "version": "1.0.0-beta.1", + "license": "MIT", + "dependencies": { + "archiver": "^6.0.1", + "crypto-js": "4.1.1", + "ssh2-sftp-client": "^9.1.0" + }, + "devDependencies": { + "@types/archiver": "^6.0.2", + "@types/bson": "^1.0.11", + "@types/crypto-js": "4.1.1", + "@types/express": "4.17.21", + "@types/express-serve-static-core": "4.17.29", + "@types/geojson": "^7946.0.7", + "@types/jasmine": "3.10.6", + "@types/lodash": "4.14.181", + "@types/mongodb": "^3.6.20", + "@types/node": "18.18.4", + "@types/ssh2": "^1.11.18", + "@types/ssh2-sftp-client": "^9.0.3", + "cpy-cli": "^3.1.1", + "jasmine": "3.99.0", + "lodash": "^4.17.21", + "nock": "^12.0.3", + "npm-run-all": "^4.1.5", + "ts-jest": "^26.1.1", + "typescript": "~4.6.0" + }, + "peerDependencies": { + "@ngageoint/mage.service": ">=6.3.0-beta.8", + "express": "4.21.2", + "express-session": "1.17.2", + "mongoose": "^6.12.0" + } + }, + "node_modules/@ampproject/remapping": { + "version": "2.3.0", + "dev": true, + "license": "Apache-2.0", + "peer": true, + "dependencies": { + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.24" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@aws-crypto/sha256-browser": { + "version": "5.2.0", + "license": "Apache-2.0", + "optional": true, + "peer": true, + "dependencies": { + "@aws-crypto/sha256-js": "^5.2.0", + "@aws-crypto/supports-web-crypto": "^5.2.0", + "@aws-crypto/util": "^5.2.0", + "@aws-sdk/types": "^3.222.0", + "@aws-sdk/util-locate-window": "^3.0.0", + "@smithy/util-utf8": "^2.0.0", + "tslib": "^2.6.2" + } + }, + "node_modules/@aws-crypto/sha256-browser/node_modules/@smithy/is-array-buffer": { + "version": "2.2.0", + "license": "Apache-2.0", + "optional": true, + "peer": true, + "dependencies": { + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-crypto/sha256-browser/node_modules/@smithy/util-buffer-from": { + "version": "2.2.0", + "license": "Apache-2.0", + "optional": true, + "peer": true, + "dependencies": { + "@smithy/is-array-buffer": "^2.2.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-crypto/sha256-browser/node_modules/@smithy/util-utf8": { + "version": "2.3.0", + "license": "Apache-2.0", + "optional": true, + "peer": true, + "dependencies": { + "@smithy/util-buffer-from": "^2.2.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-crypto/sha256-js": { + "version": "5.2.0", + "license": "Apache-2.0", + "optional": true, + "peer": true, + "dependencies": { + "@aws-crypto/util": "^5.2.0", + "@aws-sdk/types": "^3.222.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@aws-crypto/supports-web-crypto": { + "version": "5.2.0", + "license": "Apache-2.0", + "optional": true, + "peer": true, + "dependencies": { + "tslib": "^2.6.2" + } + }, + "node_modules/@aws-crypto/util": { + "version": "5.2.0", + "license": "Apache-2.0", + "optional": true, + "peer": true, + "dependencies": { + "@aws-sdk/types": "^3.222.0", + "@smithy/util-utf8": "^2.0.0", + "tslib": "^2.6.2" + } + }, + "node_modules/@aws-crypto/util/node_modules/@smithy/is-array-buffer": { + "version": "2.2.0", + "license": "Apache-2.0", + "optional": true, + "peer": true, + "dependencies": { + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-crypto/util/node_modules/@smithy/util-buffer-from": { + "version": "2.2.0", + "license": "Apache-2.0", + "optional": true, + "peer": true, + "dependencies": { + "@smithy/is-array-buffer": "^2.2.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-crypto/util/node_modules/@smithy/util-utf8": { + "version": "2.3.0", + "license": "Apache-2.0", + "optional": true, + "peer": true, + "dependencies": { + "@smithy/util-buffer-from": "^2.2.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/client-cognito-identity": { + "version": "3.758.0", + "license": "Apache-2.0", + "optional": true, + "peer": true, + "dependencies": { + "@aws-crypto/sha256-browser": "5.2.0", + "@aws-crypto/sha256-js": "5.2.0", + "@aws-sdk/core": "3.758.0", + "@aws-sdk/credential-provider-node": "3.758.0", + "@aws-sdk/middleware-host-header": "3.734.0", + "@aws-sdk/middleware-logger": "3.734.0", + "@aws-sdk/middleware-recursion-detection": "3.734.0", + "@aws-sdk/middleware-user-agent": "3.758.0", + "@aws-sdk/region-config-resolver": "3.734.0", + "@aws-sdk/types": "3.734.0", + "@aws-sdk/util-endpoints": "3.743.0", + "@aws-sdk/util-user-agent-browser": "3.734.0", + "@aws-sdk/util-user-agent-node": "3.758.0", + "@smithy/config-resolver": "^4.0.1", + "@smithy/core": "^3.1.5", + "@smithy/fetch-http-handler": "^5.0.1", + "@smithy/hash-node": "^4.0.1", + "@smithy/invalid-dependency": "^4.0.1", + "@smithy/middleware-content-length": "^4.0.1", + "@smithy/middleware-endpoint": "^4.0.6", + "@smithy/middleware-retry": "^4.0.7", + "@smithy/middleware-serde": "^4.0.2", + "@smithy/middleware-stack": "^4.0.1", + "@smithy/node-config-provider": "^4.0.1", + "@smithy/node-http-handler": "^4.0.3", + "@smithy/protocol-http": "^5.0.1", + "@smithy/smithy-client": "^4.1.6", + "@smithy/types": "^4.1.0", + "@smithy/url-parser": "^4.0.1", + "@smithy/util-base64": "^4.0.0", + "@smithy/util-body-length-browser": "^4.0.0", + "@smithy/util-body-length-node": "^4.0.0", + "@smithy/util-defaults-mode-browser": "^4.0.7", + "@smithy/util-defaults-mode-node": "^4.0.7", + "@smithy/util-endpoints": "^3.0.1", + "@smithy/util-middleware": "^4.0.1", + "@smithy/util-retry": "^4.0.1", + "@smithy/util-utf8": "^4.0.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=18.0.0" + } + }, + "node_modules/@aws-sdk/client-sso": { + "version": "3.758.0", + "license": "Apache-2.0", + "optional": true, + "peer": true, + "dependencies": { + "@aws-crypto/sha256-browser": "5.2.0", + "@aws-crypto/sha256-js": "5.2.0", + "@aws-sdk/core": "3.758.0", + "@aws-sdk/middleware-host-header": "3.734.0", + "@aws-sdk/middleware-logger": "3.734.0", + "@aws-sdk/middleware-recursion-detection": "3.734.0", + "@aws-sdk/middleware-user-agent": "3.758.0", + "@aws-sdk/region-config-resolver": "3.734.0", + "@aws-sdk/types": "3.734.0", + "@aws-sdk/util-endpoints": "3.743.0", + "@aws-sdk/util-user-agent-browser": "3.734.0", + "@aws-sdk/util-user-agent-node": "3.758.0", + "@smithy/config-resolver": "^4.0.1", + "@smithy/core": "^3.1.5", + "@smithy/fetch-http-handler": "^5.0.1", + "@smithy/hash-node": "^4.0.1", + "@smithy/invalid-dependency": "^4.0.1", + "@smithy/middleware-content-length": "^4.0.1", + "@smithy/middleware-endpoint": "^4.0.6", + "@smithy/middleware-retry": "^4.0.7", + "@smithy/middleware-serde": "^4.0.2", + "@smithy/middleware-stack": "^4.0.1", + "@smithy/node-config-provider": "^4.0.1", + "@smithy/node-http-handler": "^4.0.3", + "@smithy/protocol-http": "^5.0.1", + "@smithy/smithy-client": "^4.1.6", + "@smithy/types": "^4.1.0", + "@smithy/url-parser": "^4.0.1", + "@smithy/util-base64": "^4.0.0", + "@smithy/util-body-length-browser": "^4.0.0", + "@smithy/util-body-length-node": "^4.0.0", + "@smithy/util-defaults-mode-browser": "^4.0.7", + "@smithy/util-defaults-mode-node": "^4.0.7", + "@smithy/util-endpoints": "^3.0.1", + "@smithy/util-middleware": "^4.0.1", + "@smithy/util-retry": "^4.0.1", + "@smithy/util-utf8": "^4.0.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=18.0.0" + } + }, + "node_modules/@aws-sdk/core": { + "version": "3.758.0", + "license": "Apache-2.0", + "optional": true, + "peer": true, + "dependencies": { + "@aws-sdk/types": "3.734.0", + "@smithy/core": "^3.1.5", + "@smithy/node-config-provider": "^4.0.1", + "@smithy/property-provider": "^4.0.1", + "@smithy/protocol-http": "^5.0.1", + "@smithy/signature-v4": "^5.0.1", + "@smithy/smithy-client": "^4.1.6", + "@smithy/types": "^4.1.0", + "@smithy/util-middleware": "^4.0.1", + "fast-xml-parser": "4.4.1", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=18.0.0" + } + }, + "node_modules/@aws-sdk/credential-provider-cognito-identity": { + "version": "3.758.0", + "license": "Apache-2.0", + "optional": true, + "peer": true, + "dependencies": { + "@aws-sdk/client-cognito-identity": "3.758.0", + "@aws-sdk/types": "3.734.0", + "@smithy/property-provider": "^4.0.1", + "@smithy/types": "^4.1.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=18.0.0" + } + }, + "node_modules/@aws-sdk/credential-provider-env": { + "version": "3.758.0", + "license": "Apache-2.0", + "optional": true, + "peer": true, + "dependencies": { + "@aws-sdk/core": "3.758.0", + "@aws-sdk/types": "3.734.0", + "@smithy/property-provider": "^4.0.1", + "@smithy/types": "^4.1.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=18.0.0" + } + }, + "node_modules/@aws-sdk/credential-provider-http": { + "version": "3.758.0", + "license": "Apache-2.0", + "optional": true, + "peer": true, + "dependencies": { + "@aws-sdk/core": "3.758.0", + "@aws-sdk/types": "3.734.0", + "@smithy/fetch-http-handler": "^5.0.1", + "@smithy/node-http-handler": "^4.0.3", + "@smithy/property-provider": "^4.0.1", + "@smithy/protocol-http": "^5.0.1", + "@smithy/smithy-client": "^4.1.6", + "@smithy/types": "^4.1.0", + "@smithy/util-stream": "^4.1.2", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=18.0.0" + } + }, + "node_modules/@aws-sdk/credential-provider-ini": { + "version": "3.758.0", + "license": "Apache-2.0", + "optional": true, + "peer": true, + "dependencies": { + "@aws-sdk/core": "3.758.0", + "@aws-sdk/credential-provider-env": "3.758.0", + "@aws-sdk/credential-provider-http": "3.758.0", + "@aws-sdk/credential-provider-process": "3.758.0", + "@aws-sdk/credential-provider-sso": "3.758.0", + "@aws-sdk/credential-provider-web-identity": "3.758.0", + "@aws-sdk/nested-clients": "3.758.0", + "@aws-sdk/types": "3.734.0", + "@smithy/credential-provider-imds": "^4.0.1", + "@smithy/property-provider": "^4.0.1", + "@smithy/shared-ini-file-loader": "^4.0.1", + "@smithy/types": "^4.1.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=18.0.0" + } + }, + "node_modules/@aws-sdk/credential-provider-node": { + "version": "3.758.0", + "license": "Apache-2.0", + "optional": true, + "peer": true, + "dependencies": { + "@aws-sdk/credential-provider-env": "3.758.0", + "@aws-sdk/credential-provider-http": "3.758.0", + "@aws-sdk/credential-provider-ini": "3.758.0", + "@aws-sdk/credential-provider-process": "3.758.0", + "@aws-sdk/credential-provider-sso": "3.758.0", + "@aws-sdk/credential-provider-web-identity": "3.758.0", + "@aws-sdk/types": "3.734.0", + "@smithy/credential-provider-imds": "^4.0.1", + "@smithy/property-provider": "^4.0.1", + "@smithy/shared-ini-file-loader": "^4.0.1", + "@smithy/types": "^4.1.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=18.0.0" + } + }, + "node_modules/@aws-sdk/credential-provider-process": { + "version": "3.758.0", + "license": "Apache-2.0", + "optional": true, + "peer": true, + "dependencies": { + "@aws-sdk/core": "3.758.0", + "@aws-sdk/types": "3.734.0", + "@smithy/property-provider": "^4.0.1", + "@smithy/shared-ini-file-loader": "^4.0.1", + "@smithy/types": "^4.1.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=18.0.0" + } + }, + "node_modules/@aws-sdk/credential-provider-sso": { + "version": "3.758.0", + "license": "Apache-2.0", + "optional": true, + "peer": true, + "dependencies": { + "@aws-sdk/client-sso": "3.758.0", + "@aws-sdk/core": "3.758.0", + "@aws-sdk/token-providers": "3.758.0", + "@aws-sdk/types": "3.734.0", + "@smithy/property-provider": "^4.0.1", + "@smithy/shared-ini-file-loader": "^4.0.1", + "@smithy/types": "^4.1.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=18.0.0" + } + }, + "node_modules/@aws-sdk/credential-provider-web-identity": { + "version": "3.758.0", + "license": "Apache-2.0", + "optional": true, + "peer": true, + "dependencies": { + "@aws-sdk/core": "3.758.0", + "@aws-sdk/nested-clients": "3.758.0", + "@aws-sdk/types": "3.734.0", + "@smithy/property-provider": "^4.0.1", + "@smithy/types": "^4.1.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=18.0.0" + } + }, + "node_modules/@aws-sdk/credential-providers": { + "version": "3.758.0", + "license": "Apache-2.0", + "optional": true, + "peer": true, + "dependencies": { + "@aws-sdk/client-cognito-identity": "3.758.0", + "@aws-sdk/core": "3.758.0", + "@aws-sdk/credential-provider-cognito-identity": "3.758.0", + "@aws-sdk/credential-provider-env": "3.758.0", + "@aws-sdk/credential-provider-http": "3.758.0", + "@aws-sdk/credential-provider-ini": "3.758.0", + "@aws-sdk/credential-provider-node": "3.758.0", + "@aws-sdk/credential-provider-process": "3.758.0", + "@aws-sdk/credential-provider-sso": "3.758.0", + "@aws-sdk/credential-provider-web-identity": "3.758.0", + "@aws-sdk/nested-clients": "3.758.0", + "@aws-sdk/types": "3.734.0", + "@smithy/core": "^3.1.5", + "@smithy/credential-provider-imds": "^4.0.1", + "@smithy/property-provider": "^4.0.1", + "@smithy/types": "^4.1.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=18.0.0" + } + }, + "node_modules/@aws-sdk/middleware-host-header": { + "version": "3.734.0", + "license": "Apache-2.0", + "optional": true, + "peer": true, + "dependencies": { + "@aws-sdk/types": "3.734.0", + "@smithy/protocol-http": "^5.0.1", + "@smithy/types": "^4.1.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=18.0.0" + } + }, + "node_modules/@aws-sdk/middleware-logger": { + "version": "3.734.0", + "license": "Apache-2.0", + "optional": true, + "peer": true, + "dependencies": { + "@aws-sdk/types": "3.734.0", + "@smithy/types": "^4.1.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=18.0.0" + } + }, + "node_modules/@aws-sdk/middleware-recursion-detection": { + "version": "3.734.0", + "license": "Apache-2.0", + "optional": true, + "peer": true, + "dependencies": { + "@aws-sdk/types": "3.734.0", + "@smithy/protocol-http": "^5.0.1", + "@smithy/types": "^4.1.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=18.0.0" + } + }, + "node_modules/@aws-sdk/middleware-user-agent": { + "version": "3.758.0", + "license": "Apache-2.0", + "optional": true, + "peer": true, + "dependencies": { + "@aws-sdk/core": "3.758.0", + "@aws-sdk/types": "3.734.0", + "@aws-sdk/util-endpoints": "3.743.0", + "@smithy/core": "^3.1.5", + "@smithy/protocol-http": "^5.0.1", + "@smithy/types": "^4.1.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=18.0.0" + } + }, + "node_modules/@aws-sdk/nested-clients": { + "version": "3.758.0", + "license": "Apache-2.0", + "optional": true, + "peer": true, + "dependencies": { + "@aws-crypto/sha256-browser": "5.2.0", + "@aws-crypto/sha256-js": "5.2.0", + "@aws-sdk/core": "3.758.0", + "@aws-sdk/middleware-host-header": "3.734.0", + "@aws-sdk/middleware-logger": "3.734.0", + "@aws-sdk/middleware-recursion-detection": "3.734.0", + "@aws-sdk/middleware-user-agent": "3.758.0", + "@aws-sdk/region-config-resolver": "3.734.0", + "@aws-sdk/types": "3.734.0", + "@aws-sdk/util-endpoints": "3.743.0", + "@aws-sdk/util-user-agent-browser": "3.734.0", + "@aws-sdk/util-user-agent-node": "3.758.0", + "@smithy/config-resolver": "^4.0.1", + "@smithy/core": "^3.1.5", + "@smithy/fetch-http-handler": "^5.0.1", + "@smithy/hash-node": "^4.0.1", + "@smithy/invalid-dependency": "^4.0.1", + "@smithy/middleware-content-length": "^4.0.1", + "@smithy/middleware-endpoint": "^4.0.6", + "@smithy/middleware-retry": "^4.0.7", + "@smithy/middleware-serde": "^4.0.2", + "@smithy/middleware-stack": "^4.0.1", + "@smithy/node-config-provider": "^4.0.1", + "@smithy/node-http-handler": "^4.0.3", + "@smithy/protocol-http": "^5.0.1", + "@smithy/smithy-client": "^4.1.6", + "@smithy/types": "^4.1.0", + "@smithy/url-parser": "^4.0.1", + "@smithy/util-base64": "^4.0.0", + "@smithy/util-body-length-browser": "^4.0.0", + "@smithy/util-body-length-node": "^4.0.0", + "@smithy/util-defaults-mode-browser": "^4.0.7", + "@smithy/util-defaults-mode-node": "^4.0.7", + "@smithy/util-endpoints": "^3.0.1", + "@smithy/util-middleware": "^4.0.1", + "@smithy/util-retry": "^4.0.1", + "@smithy/util-utf8": "^4.0.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=18.0.0" + } + }, + "node_modules/@aws-sdk/region-config-resolver": { + "version": "3.734.0", + "license": "Apache-2.0", + "optional": true, + "peer": true, + "dependencies": { + "@aws-sdk/types": "3.734.0", + "@smithy/node-config-provider": "^4.0.1", + "@smithy/types": "^4.1.0", + "@smithy/util-config-provider": "^4.0.0", + "@smithy/util-middleware": "^4.0.1", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=18.0.0" + } + }, + "node_modules/@aws-sdk/token-providers": { + "version": "3.758.0", + "license": "Apache-2.0", + "optional": true, + "peer": true, + "dependencies": { + "@aws-sdk/nested-clients": "3.758.0", + "@aws-sdk/types": "3.734.0", + "@smithy/property-provider": "^4.0.1", + "@smithy/shared-ini-file-loader": "^4.0.1", + "@smithy/types": "^4.1.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=18.0.0" + } + }, + "node_modules/@aws-sdk/types": { + "version": "3.734.0", + "license": "Apache-2.0", + "optional": true, + "peer": true, + "dependencies": { + "@smithy/types": "^4.1.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=18.0.0" + } + }, + "node_modules/@aws-sdk/util-endpoints": { + "version": "3.743.0", + "license": "Apache-2.0", + "optional": true, + "peer": true, + "dependencies": { + "@aws-sdk/types": "3.734.0", + "@smithy/types": "^4.1.0", + "@smithy/util-endpoints": "^3.0.1", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=18.0.0" + } + }, + "node_modules/@aws-sdk/util-locate-window": { + "version": "3.723.0", + "license": "Apache-2.0", + "optional": true, + "peer": true, + "dependencies": { + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=18.0.0" + } + }, + "node_modules/@aws-sdk/util-user-agent-browser": { + "version": "3.734.0", + "license": "Apache-2.0", + "optional": true, + "peer": true, + "dependencies": { + "@aws-sdk/types": "3.734.0", + "@smithy/types": "^4.1.0", + "bowser": "^2.11.0", + "tslib": "^2.6.2" + } + }, + "node_modules/@aws-sdk/util-user-agent-node": { + "version": "3.758.0", + "license": "Apache-2.0", + "optional": true, + "peer": true, + "dependencies": { + "@aws-sdk/middleware-user-agent": "3.758.0", + "@aws-sdk/types": "3.734.0", + "@smithy/node-config-provider": "^4.0.1", + "@smithy/types": "^4.1.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=18.0.0" + }, + "peerDependencies": { + "aws-crt": ">=1.0.0" + }, + "peerDependenciesMeta": { + "aws-crt": { + "optional": true + } + } + }, + "node_modules/@babel/code-frame": { + "version": "7.26.2", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-validator-identifier": "^7.25.9", + "js-tokens": "^4.0.0", + "picocolors": "^1.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/compat-data": { + "version": "7.26.8", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/core": { + "version": "7.26.10", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@ampproject/remapping": "^2.2.0", + "@babel/code-frame": "^7.26.2", + "@babel/generator": "^7.26.10", + "@babel/helper-compilation-targets": "^7.26.5", + "@babel/helper-module-transforms": "^7.26.0", + "@babel/helpers": "^7.26.10", + "@babel/parser": "^7.26.10", + "@babel/template": "^7.26.9", + "@babel/traverse": "^7.26.10", + "@babel/types": "^7.26.10", + "convert-source-map": "^2.0.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.2", + "json5": "^2.2.3", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/babel" + } + }, + "node_modules/@babel/core/node_modules/convert-source-map": { + "version": "2.0.0", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/@babel/core/node_modules/debug": { + "version": "4.4.0", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "ms": "^2.1.3" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/@babel/core/node_modules/ms": { + "version": "2.1.3", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/@babel/generator": { + "version": "7.26.10", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@babel/parser": "^7.26.10", + "@babel/types": "^7.26.10", + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.25", + "jsesc": "^3.0.2" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-compilation-targets": { + "version": "7.26.5", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@babel/compat-data": "^7.26.5", + "@babel/helper-validator-option": "^7.25.9", + "browserslist": "^4.24.0", + "lru-cache": "^5.1.1", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-imports": { + "version": "7.25.9", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@babel/traverse": "^7.25.9", + "@babel/types": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-transforms": { + "version": "7.26.0", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@babel/helper-module-imports": "^7.25.9", + "@babel/helper-validator-identifier": "^7.25.9", + "@babel/traverse": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-plugin-utils": { + "version": "7.26.5", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-string-parser": { + "version": "7.25.9", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-identifier": { + "version": "7.25.9", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-option": { + "version": "7.25.9", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helpers": { + "version": "7.26.10", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@babel/template": "^7.26.9", + "@babel/types": "^7.26.10" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/parser": { + "version": "7.26.10", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@babel/types": "^7.26.10" + }, + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/plugin-syntax-async-generators": { + "version": "7.8.4", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-bigint": { + "version": "7.8.3", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-class-properties": { + "version": "7.12.13", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.12.13" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-class-static-block": { + "version": "7.14.5", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-import-attributes": { + "version": "7.26.0", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-import-meta": { + "version": "7.10.4", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-json-strings": { + "version": "7.8.3", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-logical-assignment-operators": { + "version": "7.10.4", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-nullish-coalescing-operator": { + "version": "7.8.3", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-numeric-separator": { + "version": "7.10.4", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-object-rest-spread": { + "version": "7.8.3", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-optional-catch-binding": { + "version": "7.8.3", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-optional-chaining": { + "version": "7.8.3", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-private-property-in-object": { + "version": "7.14.5", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-top-level-await": { + "version": "7.14.5", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/template": { + "version": "7.26.9", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@babel/code-frame": "^7.26.2", + "@babel/parser": "^7.26.9", + "@babel/types": "^7.26.9" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/traverse": { + "version": "7.26.10", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@babel/code-frame": "^7.26.2", + "@babel/generator": "^7.26.10", + "@babel/parser": "^7.26.10", + "@babel/template": "^7.26.9", + "@babel/types": "^7.26.10", + "debug": "^4.3.1", + "globals": "^11.1.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/traverse/node_modules/debug": { + "version": "4.4.0", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "ms": "^2.1.3" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/@babel/traverse/node_modules/ms": { + "version": "2.1.3", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/@babel/types": { + "version": "7.26.10", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@babel/helper-string-parser": "^7.25.9", + "@babel/helper-validator-identifier": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@bcoe/v8-coverage": { + "version": "0.2.3", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/@cnakazawa/watch": { + "version": "1.0.4", + "dev": true, + "license": "Apache-2.0", + "peer": true, + "dependencies": { + "exec-sh": "^0.3.2", + "minimist": "^1.2.0" + }, + "bin": { + "watch": "cli.js" + }, + "engines": { + "node": ">=0.1.95" + } + }, + "node_modules/@istanbuljs/load-nyc-config": { + "version": "1.1.0", + "dev": true, + "license": "ISC", + "peer": true, + "dependencies": { + "camelcase": "^5.3.1", + "find-up": "^4.1.0", + "get-package-type": "^0.1.0", + "js-yaml": "^3.13.1", + "resolve-from": "^5.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@istanbuljs/schema": { + "version": "0.1.3", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/console": { + "version": "26.6.2", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@jest/types": "^26.6.2", + "@types/node": "*", + "chalk": "^4.0.0", + "jest-message-util": "^26.6.2", + "jest-util": "^26.6.2", + "slash": "^3.0.0" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/@jest/console/node_modules/slash": { + "version": "3.0.0", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/core": { + "version": "26.6.3", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@jest/console": "^26.6.2", + "@jest/reporters": "^26.6.2", + "@jest/test-result": "^26.6.2", + "@jest/transform": "^26.6.2", + "@jest/types": "^26.6.2", + "@types/node": "*", + "ansi-escapes": "^4.2.1", + "chalk": "^4.0.0", + "exit": "^0.1.2", + "graceful-fs": "^4.2.4", + "jest-changed-files": "^26.6.2", + "jest-config": "^26.6.3", + "jest-haste-map": "^26.6.2", + "jest-message-util": "^26.6.2", + "jest-regex-util": "^26.0.0", + "jest-resolve": "^26.6.2", + "jest-resolve-dependencies": "^26.6.3", + "jest-runner": "^26.6.3", + "jest-runtime": "^26.6.3", + "jest-snapshot": "^26.6.2", + "jest-util": "^26.6.2", + "jest-validate": "^26.6.2", + "jest-watcher": "^26.6.2", + "micromatch": "^4.0.2", + "p-each-series": "^2.1.0", + "rimraf": "^3.0.0", + "slash": "^3.0.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/@jest/core/node_modules/braces": { + "version": "3.0.3", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "fill-range": "^7.1.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/core/node_modules/fill-range": { + "version": "7.1.1", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/core/node_modules/is-number": { + "version": "7.0.0", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/@jest/core/node_modules/micromatch": { + "version": "4.0.8", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "braces": "^3.0.3", + "picomatch": "^2.3.1" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/@jest/core/node_modules/slash": { + "version": "3.0.0", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/core/node_modules/to-regex-range": { + "version": "5.0.1", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/@jest/environment": { + "version": "26.6.2", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@jest/fake-timers": "^26.6.2", + "@jest/types": "^26.6.2", + "@types/node": "*", + "jest-mock": "^26.6.2" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/@jest/fake-timers": { + "version": "26.6.2", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@jest/types": "^26.6.2", + "@sinonjs/fake-timers": "^6.0.1", + "@types/node": "*", + "jest-message-util": "^26.6.2", + "jest-mock": "^26.6.2", + "jest-util": "^26.6.2" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/@jest/globals": { + "version": "26.6.2", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@jest/environment": "^26.6.2", + "@jest/types": "^26.6.2", + "expect": "^26.6.2" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/@jest/reporters": { + "version": "26.6.2", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@bcoe/v8-coverage": "^0.2.3", + "@jest/console": "^26.6.2", + "@jest/test-result": "^26.6.2", + "@jest/transform": "^26.6.2", + "@jest/types": "^26.6.2", + "chalk": "^4.0.0", + "collect-v8-coverage": "^1.0.0", + "exit": "^0.1.2", + "glob": "^7.1.2", + "graceful-fs": "^4.2.4", + "istanbul-lib-coverage": "^3.0.0", + "istanbul-lib-instrument": "^4.0.3", + "istanbul-lib-report": "^3.0.0", + "istanbul-lib-source-maps": "^4.0.0", + "istanbul-reports": "^3.0.2", + "jest-haste-map": "^26.6.2", + "jest-resolve": "^26.6.2", + "jest-util": "^26.6.2", + "jest-worker": "^26.6.2", + "slash": "^3.0.0", + "source-map": "^0.6.0", + "string-length": "^4.0.1", + "terminal-link": "^2.0.0", + "v8-to-istanbul": "^7.0.0" + }, + "engines": { + "node": ">= 10.14.2" + }, + "optionalDependencies": { + "node-notifier": "^8.0.0" + } + }, + "node_modules/@jest/reporters/node_modules/brace-expansion": { + "version": "1.1.11", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/@jest/reporters/node_modules/glob": { + "version": "7.2.3", + "dev": true, + "license": "ISC", + "peer": true, + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/@jest/reporters/node_modules/minimatch": { + "version": "3.1.2", + "dev": true, + "license": "ISC", + "peer": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/@jest/reporters/node_modules/slash": { + "version": "3.0.0", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/source-map": { + "version": "26.6.2", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "callsites": "^3.0.0", + "graceful-fs": "^4.2.4", + "source-map": "^0.6.0" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/@jest/test-result": { + "version": "26.6.2", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@jest/console": "^26.6.2", + "@jest/types": "^26.6.2", + "@types/istanbul-lib-coverage": "^2.0.0", + "collect-v8-coverage": "^1.0.0" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/@jest/test-sequencer": { + "version": "26.6.3", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@jest/test-result": "^26.6.2", + "graceful-fs": "^4.2.4", + "jest-haste-map": "^26.6.2", + "jest-runner": "^26.6.3", + "jest-runtime": "^26.6.3" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/@jest/transform": { + "version": "26.6.2", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@babel/core": "^7.1.0", + "@jest/types": "^26.6.2", + "babel-plugin-istanbul": "^6.0.0", + "chalk": "^4.0.0", + "convert-source-map": "^1.4.0", + "fast-json-stable-stringify": "^2.0.0", + "graceful-fs": "^4.2.4", + "jest-haste-map": "^26.6.2", + "jest-regex-util": "^26.0.0", + "jest-util": "^26.6.2", + "micromatch": "^4.0.2", + "pirates": "^4.0.1", + "slash": "^3.0.0", + "source-map": "^0.6.1", + "write-file-atomic": "^3.0.0" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/@jest/transform/node_modules/braces": { + "version": "3.0.3", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "fill-range": "^7.1.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/transform/node_modules/fill-range": { + "version": "7.1.1", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/transform/node_modules/is-number": { + "version": "7.0.0", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/@jest/transform/node_modules/micromatch": { + "version": "4.0.8", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "braces": "^3.0.3", + "picomatch": "^2.3.1" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/@jest/transform/node_modules/slash": { + "version": "3.0.0", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/transform/node_modules/to-regex-range": { + "version": "5.0.1", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/@jest/types": { + "version": "26.6.2", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^15.0.0", + "chalk": "^4.0.0" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/@jridgewell/gen-mapping": { + "version": "0.3.8", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@jridgewell/set-array": "^1.2.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.24" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/resolve-uri": { + "version": "3.1.2", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/set-array": { + "version": "1.2.1", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.5.0", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/@jridgewell/trace-mapping": { + "version": "0.3.25", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" + } + }, + "node_modules/@mongodb-js/saslprep": { + "version": "1.2.0", + "license": "MIT", + "optional": true, + "peer": true, + "dependencies": { + "sparse-bitfield": "^3.0.3" + } + }, + "node_modules/@mrmlnc/readdir-enhanced": { + "version": "2.2.1", + "dev": true, + "license": "MIT", + "dependencies": { + "call-me-maybe": "^1.0.1", + "glob-to-regexp": "^0.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@ngageoint/mage.service": { + "version": "6.3.0-beta.8", + "resolved": "https://registry.npmjs.org/@ngageoint/mage.service/-/mage.service-6.3.0-beta.8.tgz", + "integrity": "sha512-Jjyn5uROFnlvAZJ7j1LqSxiWk3PWDzM16/ukX0R/P9JLeOax2HOKwBbQQOEh/5IXk5EkbygL0j9WA5wTgiJ/HQ==", + "hasShrinkwrap": true, + "peer": true, + "dependencies": { + "@ngageoint/geopackage": "4.2.6", + "@ngageoint/mongodb-migrations": "1.0.0", + "@node-saml/passport-saml": "4.0.4", + "@turf/centroid": "6.5.0", + "@turf/kinks": "6.5.0", + "@types/geojson": "7946.0.16", + "@types/json-schema": "7.0.15", + "@types/mime-types": "2.1.4", + "@xmldom/xmldom": "0.9.8", + "adm-zip": "0.5.16", + "archiver": "5.3.2", + "async": "3.2.6", + "async-lock": "1.4.1", + "base-64": "1.0.0", + "busboy": "1.6.0", + "cfenv": "1.2.4", + "commander": "8.3.0", + "express": "4.21.2", + "express-session": "1.18.1", + "file-type": "16.5.4", + "fs-extra": "4.0.3", + "geojson": "0.5.0", + "geojson-validation": "1.0.2", + "json2csv": "4.5.4", + "jsonwebtoken": "9.0.2", + "lodash": "4.17.21", + "mgrs": "1.0.0", + "mime-types": "2.1.35", + "moment": "2.30.1", + "mongoose": "6.13.8", + "multer": "1.4.5-lts.1", + "node-fetch": "2.7.0", + "passport": "0.7.0", + "passport-anonymous": "1.0.1", + "passport-http-bearer": "1.0.1", + "passport-ldapauth": "3.0.1", + "passport-local": "1.0.0", + "passport-oauth2": "1.8.0", + "passport-openidconnect": "0.1.2", + "pug": "3.0.3", + "rfc5646": "3.0.0", + "superagent": "8.1.2", + "svg-captcha": "1.4.0", + "uniqid": "5.4.0", + "walk": "2.3.15", + "winston": "1.1.2", + "wkx": "0.5.0", + "wms-capabilities": "0.6.0", + "xmlbuilder2": "3.1.1", + "xpath": "0.0.34", + "yaml": "1.10.2" + }, + "bin": { + "mage.service": "bin/mage.service.js" + }, + "engines": { + "node": ">= 16", + "npm": ">= 8" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@aws-crypto/sha256-browser": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/sha256-browser/-/sha256-browser-5.2.0.tgz", + "integrity": "sha512-AXfN/lGotSQwu6HNcEsIASo7kWXZ5HYWvfOmSNKDsEqC4OashTp8alTmaz+F7TC2L083SFv5RdB+qU3Vs1kZqw==", + "optional": true, + "peer": true, + "dependencies": { + "@aws-crypto/sha256-js": "^5.2.0", + "@aws-crypto/supports-web-crypto": "^5.2.0", + "@aws-crypto/util": "^5.2.0", + "@aws-sdk/types": "^3.222.0", + "@aws-sdk/util-locate-window": "^3.0.0", + "@smithy/util-utf8": "^2.0.0", + "tslib": "^2.6.2" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@aws-crypto/sha256-browser/node_modules/@smithy/is-array-buffer": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@smithy/is-array-buffer/-/is-array-buffer-2.2.0.tgz", + "integrity": "sha512-GGP3O9QFD24uGeAXYUjwSTXARoqpZykHadOmA8G5vfJPK0/DC67qa//0qvqrJzL1xc8WQWX7/yc7fwudjPHPhA==", + "optional": true, + "peer": true, + "dependencies": { + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@aws-crypto/sha256-browser/node_modules/@smithy/util-buffer-from": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@smithy/util-buffer-from/-/util-buffer-from-2.2.0.tgz", + "integrity": "sha512-IJdWBbTcMQ6DA0gdNhh/BwrLkDR+ADW5Kr1aZmd4k3DIF6ezMV4R2NIAmT08wQJ3yUK82thHWmC/TnK/wpMMIA==", + "optional": true, + "peer": true, + "dependencies": { + "@smithy/is-array-buffer": "^2.2.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@aws-crypto/sha256-browser/node_modules/@smithy/util-utf8": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/@smithy/util-utf8/-/util-utf8-2.3.0.tgz", + "integrity": "sha512-R8Rdn8Hy72KKcebgLiv8jQcQkXoLMOGGv5uI1/k0l+snqkOzQ1R0ChUBCxWMlBsFMekWjq0wRudIweFs7sKT5A==", + "optional": true, + "peer": true, + "dependencies": { + "@smithy/util-buffer-from": "^2.2.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@aws-crypto/sha256-js": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/sha256-js/-/sha256-js-5.2.0.tgz", + "integrity": "sha512-FFQQyu7edu4ufvIZ+OadFpHHOt+eSTBaYaki44c+akjg7qZg9oOQeLlk77F6tSYqjDAFClrHJk9tMf0HdVyOvA==", + "optional": true, + "peer": true, + "dependencies": { + "@aws-crypto/util": "^5.2.0", + "@aws-sdk/types": "^3.222.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@aws-crypto/supports-web-crypto": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/supports-web-crypto/-/supports-web-crypto-5.2.0.tgz", + "integrity": "sha512-iAvUotm021kM33eCdNfwIN//F77/IADDSs58i+MDaOqFrVjZo9bAal0NK7HurRuWLLpF1iLX7gbWrjHjeo+YFg==", + "optional": true, + "peer": true, + "dependencies": { + "tslib": "^2.6.2" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@aws-crypto/util": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/util/-/util-5.2.0.tgz", + "integrity": "sha512-4RkU9EsI6ZpBve5fseQlGNUWKMa1RLPQ1dnjnQoe07ldfIzcsGb5hC5W0Dm7u423KWzawlrpbjXBrXCEv9zazQ==", + "optional": true, + "peer": true, + "dependencies": { + "@aws-sdk/types": "^3.222.0", + "@smithy/util-utf8": "^2.0.0", + "tslib": "^2.6.2" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@aws-crypto/util/node_modules/@smithy/is-array-buffer": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@smithy/is-array-buffer/-/is-array-buffer-2.2.0.tgz", + "integrity": "sha512-GGP3O9QFD24uGeAXYUjwSTXARoqpZykHadOmA8G5vfJPK0/DC67qa//0qvqrJzL1xc8WQWX7/yc7fwudjPHPhA==", + "optional": true, + "peer": true, + "dependencies": { + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@aws-crypto/util/node_modules/@smithy/util-buffer-from": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@smithy/util-buffer-from/-/util-buffer-from-2.2.0.tgz", + "integrity": "sha512-IJdWBbTcMQ6DA0gdNhh/BwrLkDR+ADW5Kr1aZmd4k3DIF6ezMV4R2NIAmT08wQJ3yUK82thHWmC/TnK/wpMMIA==", + "optional": true, + "peer": true, + "dependencies": { + "@smithy/is-array-buffer": "^2.2.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@aws-crypto/util/node_modules/@smithy/util-utf8": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/@smithy/util-utf8/-/util-utf8-2.3.0.tgz", + "integrity": "sha512-R8Rdn8Hy72KKcebgLiv8jQcQkXoLMOGGv5uI1/k0l+snqkOzQ1R0ChUBCxWMlBsFMekWjq0wRudIweFs7sKT5A==", + "optional": true, + "peer": true, + "dependencies": { + "@smithy/util-buffer-from": "^2.2.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@aws-sdk/client-cognito-identity": { + "version": "3.606.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-cognito-identity/-/client-cognito-identity-3.606.0.tgz", + "integrity": "sha512-CJ3kovUg7HAn3trqo0WxVw3PJoaHxiGU1U+Ok8Vx/sL81+auyyiasT09M/NcchRqwAooKvUi44sVD0ih7Zi9Nw==", + "optional": true, + "peer": true, + "dependencies": { + "@aws-crypto/sha256-browser": "5.2.0", + "@aws-crypto/sha256-js": "5.2.0", + "@aws-sdk/client-sso-oidc": "3.606.0", + "@aws-sdk/client-sts": "3.606.0", + "@aws-sdk/core": "3.598.0", + "@aws-sdk/credential-provider-node": "3.600.0", + "@aws-sdk/middleware-host-header": "3.598.0", + "@aws-sdk/middleware-logger": "3.598.0", + "@aws-sdk/middleware-recursion-detection": "3.598.0", + "@aws-sdk/middleware-user-agent": "3.598.0", + "@aws-sdk/region-config-resolver": "3.598.0", + "@aws-sdk/types": "3.598.0", + "@aws-sdk/util-endpoints": "3.598.0", + "@aws-sdk/util-user-agent-browser": "3.598.0", + "@aws-sdk/util-user-agent-node": "3.598.0", + "@smithy/config-resolver": "^3.0.2", + "@smithy/core": "^2.2.1", + "@smithy/fetch-http-handler": "^3.0.2", + "@smithy/hash-node": "^3.0.1", + "@smithy/invalid-dependency": "^3.0.1", + "@smithy/middleware-content-length": "^3.0.1", + "@smithy/middleware-endpoint": "^3.0.2", + "@smithy/middleware-retry": "^3.0.4", + "@smithy/middleware-serde": "^3.0.1", + "@smithy/middleware-stack": "^3.0.1", + "@smithy/node-config-provider": "^3.1.1", + "@smithy/node-http-handler": "^3.0.1", + "@smithy/protocol-http": "^4.0.1", + "@smithy/smithy-client": "^3.1.2", + "@smithy/types": "^3.1.0", + "@smithy/url-parser": "^3.0.1", + "@smithy/util-base64": "^3.0.0", + "@smithy/util-body-length-browser": "^3.0.0", + "@smithy/util-body-length-node": "^3.0.0", + "@smithy/util-defaults-mode-browser": "^3.0.4", + "@smithy/util-defaults-mode-node": "^3.0.4", + "@smithy/util-endpoints": "^2.0.2", + "@smithy/util-middleware": "^3.0.1", + "@smithy/util-retry": "^3.0.1", + "@smithy/util-utf8": "^3.0.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@aws-sdk/client-sso": { + "version": "3.598.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.598.0.tgz", + "integrity": "sha512-nOI5lqPYa+YZlrrzwAJywJSw3MKVjvu6Ge2fCqQUNYMfxFB0NAaDFnl0EPjXi+sEbtCuz/uWE77poHbqiZ+7Iw==", + "optional": true, + "peer": true, + "dependencies": { + "@aws-crypto/sha256-browser": "5.2.0", + "@aws-crypto/sha256-js": "5.2.0", + "@aws-sdk/core": "3.598.0", + "@aws-sdk/middleware-host-header": "3.598.0", + "@aws-sdk/middleware-logger": "3.598.0", + "@aws-sdk/middleware-recursion-detection": "3.598.0", + "@aws-sdk/middleware-user-agent": "3.598.0", + "@aws-sdk/region-config-resolver": "3.598.0", + "@aws-sdk/types": "3.598.0", + "@aws-sdk/util-endpoints": "3.598.0", + "@aws-sdk/util-user-agent-browser": "3.598.0", + "@aws-sdk/util-user-agent-node": "3.598.0", + "@smithy/config-resolver": "^3.0.2", + "@smithy/core": "^2.2.1", + "@smithy/fetch-http-handler": "^3.0.2", + "@smithy/hash-node": "^3.0.1", + "@smithy/invalid-dependency": "^3.0.1", + "@smithy/middleware-content-length": "^3.0.1", + "@smithy/middleware-endpoint": "^3.0.2", + "@smithy/middleware-retry": "^3.0.4", + "@smithy/middleware-serde": "^3.0.1", + "@smithy/middleware-stack": "^3.0.1", + "@smithy/node-config-provider": "^3.1.1", + "@smithy/node-http-handler": "^3.0.1", + "@smithy/protocol-http": "^4.0.1", + "@smithy/smithy-client": "^3.1.2", + "@smithy/types": "^3.1.0", + "@smithy/url-parser": "^3.0.1", + "@smithy/util-base64": "^3.0.0", + "@smithy/util-body-length-browser": "^3.0.0", + "@smithy/util-body-length-node": "^3.0.0", + "@smithy/util-defaults-mode-browser": "^3.0.4", + "@smithy/util-defaults-mode-node": "^3.0.4", + "@smithy/util-endpoints": "^2.0.2", + "@smithy/util-middleware": "^3.0.1", + "@smithy/util-retry": "^3.0.1", + "@smithy/util-utf8": "^3.0.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@aws-sdk/client-sso-oidc": { + "version": "3.606.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso-oidc/-/client-sso-oidc-3.606.0.tgz", + "integrity": "sha512-gL1FHPS6hwgMNS/A+Qh5bUyHOeRVOqdb7c6+i+9gR3wtGvt2lvoSm8w5DhS08Xiiacz2AqYRDEapp0xuyCrbBQ==", + "optional": true, + "peer": true, + "dependencies": { + "@aws-crypto/sha256-browser": "5.2.0", + "@aws-crypto/sha256-js": "5.2.0", + "@aws-sdk/core": "3.598.0", + "@aws-sdk/credential-provider-node": "3.600.0", + "@aws-sdk/middleware-host-header": "3.598.0", + "@aws-sdk/middleware-logger": "3.598.0", + "@aws-sdk/middleware-recursion-detection": "3.598.0", + "@aws-sdk/middleware-user-agent": "3.598.0", + "@aws-sdk/region-config-resolver": "3.598.0", + "@aws-sdk/types": "3.598.0", + "@aws-sdk/util-endpoints": "3.598.0", + "@aws-sdk/util-user-agent-browser": "3.598.0", + "@aws-sdk/util-user-agent-node": "3.598.0", + "@smithy/config-resolver": "^3.0.2", + "@smithy/core": "^2.2.1", + "@smithy/fetch-http-handler": "^3.0.2", + "@smithy/hash-node": "^3.0.1", + "@smithy/invalid-dependency": "^3.0.1", + "@smithy/middleware-content-length": "^3.0.1", + "@smithy/middleware-endpoint": "^3.0.2", + "@smithy/middleware-retry": "^3.0.4", + "@smithy/middleware-serde": "^3.0.1", + "@smithy/middleware-stack": "^3.0.1", + "@smithy/node-config-provider": "^3.1.1", + "@smithy/node-http-handler": "^3.0.1", + "@smithy/protocol-http": "^4.0.1", + "@smithy/smithy-client": "^3.1.2", + "@smithy/types": "^3.1.0", + "@smithy/url-parser": "^3.0.1", + "@smithy/util-base64": "^3.0.0", + "@smithy/util-body-length-browser": "^3.0.0", + "@smithy/util-body-length-node": "^3.0.0", + "@smithy/util-defaults-mode-browser": "^3.0.4", + "@smithy/util-defaults-mode-node": "^3.0.4", + "@smithy/util-endpoints": "^2.0.2", + "@smithy/util-middleware": "^3.0.1", + "@smithy/util-retry": "^3.0.1", + "@smithy/util-utf8": "^3.0.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" + }, + "peerDependencies": { + "@aws-sdk/client-sts": "^3.606.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@aws-sdk/client-sts": { + "version": "3.606.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sts/-/client-sts-3.606.0.tgz", + "integrity": "sha512-b11mAhjrkm3MMiAPoMGcmd6vsaz2120lg8rHG/NZCo9vB1K6Kc7WP+a1Q05TRMseer2egTtpWJfn44aVO97VqA==", + "optional": true, + "peer": true, + "dependencies": { + "@aws-crypto/sha256-browser": "5.2.0", + "@aws-crypto/sha256-js": "5.2.0", + "@aws-sdk/client-sso-oidc": "3.606.0", + "@aws-sdk/core": "3.598.0", + "@aws-sdk/credential-provider-node": "3.600.0", + "@aws-sdk/middleware-host-header": "3.598.0", + "@aws-sdk/middleware-logger": "3.598.0", + "@aws-sdk/middleware-recursion-detection": "3.598.0", + "@aws-sdk/middleware-user-agent": "3.598.0", + "@aws-sdk/region-config-resolver": "3.598.0", + "@aws-sdk/types": "3.598.0", + "@aws-sdk/util-endpoints": "3.598.0", + "@aws-sdk/util-user-agent-browser": "3.598.0", + "@aws-sdk/util-user-agent-node": "3.598.0", + "@smithy/config-resolver": "^3.0.2", + "@smithy/core": "^2.2.1", + "@smithy/fetch-http-handler": "^3.0.2", + "@smithy/hash-node": "^3.0.1", + "@smithy/invalid-dependency": "^3.0.1", + "@smithy/middleware-content-length": "^3.0.1", + "@smithy/middleware-endpoint": "^3.0.2", + "@smithy/middleware-retry": "^3.0.4", + "@smithy/middleware-serde": "^3.0.1", + "@smithy/middleware-stack": "^3.0.1", + "@smithy/node-config-provider": "^3.1.1", + "@smithy/node-http-handler": "^3.0.1", + "@smithy/protocol-http": "^4.0.1", + "@smithy/smithy-client": "^3.1.2", + "@smithy/types": "^3.1.0", + "@smithy/url-parser": "^3.0.1", + "@smithy/util-base64": "^3.0.0", + "@smithy/util-body-length-browser": "^3.0.0", + "@smithy/util-body-length-node": "^3.0.0", + "@smithy/util-defaults-mode-browser": "^3.0.4", + "@smithy/util-defaults-mode-node": "^3.0.4", + "@smithy/util-endpoints": "^2.0.2", + "@smithy/util-middleware": "^3.0.1", + "@smithy/util-retry": "^3.0.1", + "@smithy/util-utf8": "^3.0.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@aws-sdk/core": { + "version": "3.598.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/core/-/core-3.598.0.tgz", + "integrity": "sha512-HaSjt7puO5Cc7cOlrXFCW0rtA0BM9lvzjl56x0A20Pt+0wxXGeTOZZOkXQIepbrFkV2e/HYukuT9e99vXDm59g==", + "optional": true, + "peer": true, + "dependencies": { + "@smithy/core": "^2.2.1", + "@smithy/protocol-http": "^4.0.1", + "@smithy/signature-v4": "^3.1.0", + "@smithy/smithy-client": "^3.1.2", + "@smithy/types": "^3.1.0", + "fast-xml-parser": "4.2.5", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@aws-sdk/credential-provider-cognito-identity": { + "version": "3.606.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-cognito-identity/-/credential-provider-cognito-identity-3.606.0.tgz", + "integrity": "sha512-4wGvXilFLkozs4/dMnn9NvxZbL9oyyReoF9aR3kGUZ0QVO8cCBp/Zkr8IXZifhVBo9/esJdMFnR9lEXR7Yuleg==", + "optional": true, + "peer": true, + "dependencies": { + "@aws-sdk/client-cognito-identity": "3.606.0", + "@aws-sdk/types": "3.598.0", + "@smithy/property-provider": "^3.1.1", + "@smithy/types": "^3.1.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@aws-sdk/credential-provider-env": { + "version": "3.598.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-env/-/credential-provider-env-3.598.0.tgz", + "integrity": "sha512-vi1khgn7yXzLCcgSIzQrrtd2ilUM0dWodxj3PQ6BLfP0O+q1imO3hG1nq7DVyJtq7rFHs6+9N8G4mYvTkxby2w==", + "optional": true, + "peer": true, + "dependencies": { + "@aws-sdk/types": "3.598.0", + "@smithy/property-provider": "^3.1.1", + "@smithy/types": "^3.1.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@aws-sdk/credential-provider-http": { + "version": "3.598.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-http/-/credential-provider-http-3.598.0.tgz", + "integrity": "sha512-N7cIafi4HVlQvEgvZSo1G4T9qb/JMLGMdBsDCT5XkeJrF0aptQWzTFH0jIdZcLrMYvzPcuEyO3yCBe6cy/ba0g==", + "optional": true, + "peer": true, + "dependencies": { + "@aws-sdk/types": "3.598.0", + "@smithy/fetch-http-handler": "^3.0.2", + "@smithy/node-http-handler": "^3.0.1", + "@smithy/property-provider": "^3.1.1", + "@smithy/protocol-http": "^4.0.1", + "@smithy/smithy-client": "^3.1.2", + "@smithy/types": "^3.1.0", + "@smithy/util-stream": "^3.0.2", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@aws-sdk/credential-provider-ini": { + "version": "3.598.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.598.0.tgz", + "integrity": "sha512-/ppcIVUbRwDIwJDoYfp90X3+AuJo2mvE52Y1t2VSrvUovYn6N4v95/vXj6LS8CNDhz2jvEJYmu+0cTMHdhI6eA==", + "optional": true, + "peer": true, + "dependencies": { + "@aws-sdk/credential-provider-env": "3.598.0", + "@aws-sdk/credential-provider-http": "3.598.0", + "@aws-sdk/credential-provider-process": "3.598.0", + "@aws-sdk/credential-provider-sso": "3.598.0", + "@aws-sdk/credential-provider-web-identity": "3.598.0", + "@aws-sdk/types": "3.598.0", + "@smithy/credential-provider-imds": "^3.1.1", + "@smithy/property-provider": "^3.1.1", + "@smithy/shared-ini-file-loader": "^3.1.1", + "@smithy/types": "^3.1.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" + }, + "peerDependencies": { + "@aws-sdk/client-sts": "^3.598.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@aws-sdk/credential-provider-node": { + "version": "3.600.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.600.0.tgz", + "integrity": "sha512-1pC7MPMYD45J7yFjA90SxpR0yaSvy+yZiq23aXhAPZLYgJBAxHLu0s0mDCk/piWGPh8+UGur5K0bVdx4B1D5hw==", + "optional": true, + "peer": true, + "dependencies": { + "@aws-sdk/credential-provider-env": "3.598.0", + "@aws-sdk/credential-provider-http": "3.598.0", + "@aws-sdk/credential-provider-ini": "3.598.0", + "@aws-sdk/credential-provider-process": "3.598.0", + "@aws-sdk/credential-provider-sso": "3.598.0", + "@aws-sdk/credential-provider-web-identity": "3.598.0", + "@aws-sdk/types": "3.598.0", + "@smithy/credential-provider-imds": "^3.1.1", + "@smithy/property-provider": "^3.1.1", + "@smithy/shared-ini-file-loader": "^3.1.1", + "@smithy/types": "^3.1.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@aws-sdk/credential-provider-process": { + "version": "3.598.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-process/-/credential-provider-process-3.598.0.tgz", + "integrity": "sha512-rM707XbLW8huMk722AgjVyxu2tMZee++fNA8TJVNgs1Ma02Wx6bBrfIvlyK0rCcIRb0WdQYP6fe3Xhiu4e8IBA==", + "optional": true, + "peer": true, + "dependencies": { + "@aws-sdk/types": "3.598.0", + "@smithy/property-provider": "^3.1.1", + "@smithy/shared-ini-file-loader": "^3.1.1", + "@smithy/types": "^3.1.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@aws-sdk/credential-provider-sso": { + "version": "3.598.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.598.0.tgz", + "integrity": "sha512-5InwUmrAuqQdOOgxTccRayMMkSmekdLk6s+az9tmikq0QFAHUCtofI+/fllMXSR9iL6JbGYi1940+EUmS4pHJA==", + "optional": true, + "peer": true, + "dependencies": { + "@aws-sdk/client-sso": "3.598.0", + "@aws-sdk/token-providers": "3.598.0", + "@aws-sdk/types": "3.598.0", + "@smithy/property-provider": "^3.1.1", + "@smithy/shared-ini-file-loader": "^3.1.1", + "@smithy/types": "^3.1.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@aws-sdk/credential-provider-web-identity": { + "version": "3.598.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.598.0.tgz", + "integrity": "sha512-GV5GdiMbz5Tz9JO4NJtRoFXjW0GPEujA0j+5J/B723rTN+REHthJu48HdBKouHGhdzkDWkkh1bu52V02Wprw8w==", + "optional": true, + "peer": true, + "dependencies": { + "@aws-sdk/types": "3.598.0", + "@smithy/property-provider": "^3.1.1", + "@smithy/types": "^3.1.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" + }, + "peerDependencies": { + "@aws-sdk/client-sts": "^3.598.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@aws-sdk/credential-providers": { + "version": "3.606.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-providers/-/credential-providers-3.606.0.tgz", + "integrity": "sha512-34hswGNDWBFvp4Hi4Gv9DIJ4Ks0Nbg8w3emFsPVHLqqI6X2Wd0hJTf+mi1kMhy/AQXt5LisKLw6wjNIKD2+KGg==", + "optional": true, + "peer": true, + "dependencies": { + "@aws-sdk/client-cognito-identity": "3.606.0", + "@aws-sdk/client-sso": "3.598.0", + "@aws-sdk/client-sts": "3.606.0", + "@aws-sdk/credential-provider-cognito-identity": "3.606.0", + "@aws-sdk/credential-provider-env": "3.598.0", + "@aws-sdk/credential-provider-http": "3.598.0", + "@aws-sdk/credential-provider-ini": "3.598.0", + "@aws-sdk/credential-provider-node": "3.600.0", + "@aws-sdk/credential-provider-process": "3.598.0", + "@aws-sdk/credential-provider-sso": "3.598.0", + "@aws-sdk/credential-provider-web-identity": "3.598.0", + "@aws-sdk/types": "3.598.0", + "@smithy/credential-provider-imds": "^3.1.1", + "@smithy/property-provider": "^3.1.1", + "@smithy/types": "^3.1.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@aws-sdk/middleware-host-header": { + "version": "3.598.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-host-header/-/middleware-host-header-3.598.0.tgz", + "integrity": "sha512-WiaG059YBQwQraNejLIi0gMNkX7dfPZ8hDIhvMr5aVPRbaHH8AYF3iNSsXYCHvA2Cfa1O9haYXsuMF9flXnCmA==", + "optional": true, + "peer": true, + "dependencies": { + "@aws-sdk/types": "3.598.0", + "@smithy/protocol-http": "^4.0.1", + "@smithy/types": "^3.1.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@aws-sdk/middleware-logger": { + "version": "3.598.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-logger/-/middleware-logger-3.598.0.tgz", + "integrity": "sha512-bxBjf/VYiu3zfu8SYM2S9dQQc3tz5uBAOcPz/Bt8DyyK3GgOpjhschH/2XuUErsoUO1gDJqZSdGOmuHGZQn00Q==", + "optional": true, + "peer": true, + "dependencies": { + "@aws-sdk/types": "3.598.0", + "@smithy/types": "^3.1.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@aws-sdk/middleware-recursion-detection": { + "version": "3.598.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-recursion-detection/-/middleware-recursion-detection-3.598.0.tgz", + "integrity": "sha512-vjT9BeFY9FeN0f8hm2l6F53tI0N5bUq6RcDkQXKNabXBnQxKptJRad6oP2X5y3FoVfBLOuDkQgiC2940GIPxtQ==", + "optional": true, + "peer": true, + "dependencies": { + "@aws-sdk/types": "3.598.0", + "@smithy/protocol-http": "^4.0.1", + "@smithy/types": "^3.1.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@aws-sdk/middleware-user-agent": { + "version": "3.598.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-user-agent/-/middleware-user-agent-3.598.0.tgz", + "integrity": "sha512-4tjESlHG5B5MdjUaLK7tQs/miUtHbb6deauQx8ryqSBYOhfHVgb1ZnzvQR0bTrhpqUg0WlybSkDaZAICf9xctg==", + "optional": true, + "peer": true, + "dependencies": { + "@aws-sdk/types": "3.598.0", + "@aws-sdk/util-endpoints": "3.598.0", + "@smithy/protocol-http": "^4.0.1", + "@smithy/types": "^3.1.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@aws-sdk/region-config-resolver": { + "version": "3.598.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/region-config-resolver/-/region-config-resolver-3.598.0.tgz", + "integrity": "sha512-oYXhmTokSav4ytmWleCr3rs/1nyvZW/S0tdi6X7u+dLNL5Jee+uMxWGzgOrWK6wrQOzucLVjS4E/wA11Kv2GTw==", + "optional": true, + "peer": true, + "dependencies": { + "@aws-sdk/types": "3.598.0", + "@smithy/node-config-provider": "^3.1.1", + "@smithy/types": "^3.1.0", + "@smithy/util-config-provider": "^3.0.0", + "@smithy/util-middleware": "^3.0.1", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@aws-sdk/token-providers": { + "version": "3.598.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/token-providers/-/token-providers-3.598.0.tgz", + "integrity": "sha512-TKY1EVdHVBnZqpyxyTHdpZpa1tUpb6nxVeRNn1zWG8QB5MvH4ALLd/jR+gtmWDNQbIG4cVuBOZFVL8hIYicKTA==", + "optional": true, + "peer": true, + "dependencies": { + "@aws-sdk/types": "3.598.0", + "@smithy/property-provider": "^3.1.1", + "@smithy/shared-ini-file-loader": "^3.1.1", + "@smithy/types": "^3.1.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" + }, + "peerDependencies": { + "@aws-sdk/client-sso-oidc": "^3.598.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@aws-sdk/types": { + "version": "3.598.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.598.0.tgz", + "integrity": "sha512-742uRl6z7u0LFmZwDrFP6r1wlZcgVPw+/TilluDJmCAR8BgRw3IR+743kUXKBGd8QZDRW2n6v/PYsi/AWCDDMQ==", + "optional": true, + "peer": true, + "dependencies": { + "@smithy/types": "^3.1.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@aws-sdk/util-endpoints": { + "version": "3.598.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-endpoints/-/util-endpoints-3.598.0.tgz", + "integrity": "sha512-Qo9UoiVVZxcOEdiOMZg3xb1mzkTxrhd4qSlg5QQrfWPJVx/QOg+Iy0NtGxPtHtVZNHZxohYwDwV/tfsnDSE2gQ==", + "optional": true, + "peer": true, + "dependencies": { + "@aws-sdk/types": "3.598.0", + "@smithy/types": "^3.1.0", + "@smithy/util-endpoints": "^2.0.2", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@aws-sdk/util-locate-window": { + "version": "3.568.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-locate-window/-/util-locate-window-3.568.0.tgz", + "integrity": "sha512-3nh4TINkXYr+H41QaPelCceEB2FXP3fxp93YZXB/kqJvX0U9j0N0Uk45gvsjmEPzG8XxkPEeLIfT2I1M7A6Lig==", + "optional": true, + "peer": true, + "dependencies": { + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@aws-sdk/util-user-agent-browser": { + "version": "3.598.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-browser/-/util-user-agent-browser-3.598.0.tgz", + "integrity": "sha512-36Sxo6F+ykElaL1mWzWjlg+1epMpSe8obwhCN1yGE7Js9ywy5U6k6l+A3q3YM9YRbm740sNxncbwLklMvuhTKw==", + "optional": true, + "peer": true, + "dependencies": { + "@aws-sdk/types": "3.598.0", + "@smithy/types": "^3.1.0", + "bowser": "^2.11.0", + "tslib": "^2.6.2" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@aws-sdk/util-user-agent-node": { + "version": "3.598.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.598.0.tgz", + "integrity": "sha512-oyWGcOlfTdzkC6SVplyr0AGh54IMrDxbhg5RxJ5P+V4BKfcDoDcZV9xenUk9NsOi9MuUjxMumb9UJGkDhM1m0A==", + "optional": true, + "peer": true, + "dependencies": { + "@aws-sdk/types": "3.598.0", + "@smithy/node-config-provider": "^3.1.1", + "@smithy/types": "^3.1.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" + }, + "peerDependencies": { + "aws-crt": ">=1.0.0" + }, + "peerDependenciesMeta": { + "aws-crt": { + "optional": true + } + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@babel/code-frame": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.24.7.tgz", + "integrity": "sha512-BcYH1CVJBO9tvyIZ2jVeXgSIMvGZ2FDRvDdOIVQyuklNKSsx+eppDEBq/g47Ayw+RqNFE+URvOShmf+f/qwAlA==", + "extraneous": true, + "dependencies": { + "@babel/highlight": "^7.24.7", + "picocolors": "^1.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@babel/generator": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.24.7.tgz", + "integrity": "sha512-oipXieGC3i45Y1A41t4tAqpnEZWgB/lC6Ehh6+rOviR5XWpTtMmLN+fGjz9vOiNRt0p6RtO6DtD0pdU3vpqdSA==", + "extraneous": true, + "dependencies": { + "@babel/types": "^7.24.7", + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.25", + "jsesc": "^2.5.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@babel/helper-environment-visitor": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.24.7.tgz", + "integrity": "sha512-DoiN84+4Gnd0ncbBOM9AZENV4a5ZiL39HYMyZJGZ/AZEykHYdJw0wW3kdcsh9/Kn+BRXHLkkklZ51ecPKmI1CQ==", + "extraneous": true, + "dependencies": { + "@babel/types": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@babel/helper-function-name": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.24.7.tgz", + "integrity": "sha512-FyoJTsj/PEUWu1/TYRiXTIHc8lbw+TDYkZuoE43opPS5TrI7MyONBE1oNvfguEXAD9yhQRrVBnXdXzSLQl9XnA==", + "extraneous": true, + "dependencies": { + "@babel/template": "^7.24.7", + "@babel/types": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@babel/helper-hoist-variables": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.24.7.tgz", + "integrity": "sha512-MJJwhkoGy5c4ehfoRyrJ/owKeMl19U54h27YYftT0o2teQ3FJ3nQUf/I3LlJsX4l3qlw7WRXUmiyajvHXoTubQ==", + "extraneous": true, + "dependencies": { + "@babel/types": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@babel/helper-split-export-declaration": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.24.7.tgz", + "integrity": "sha512-oy5V7pD+UvfkEATUKvIjvIAH/xCzfsFVw7ygW2SI6NClZzquT+mwdTfgfdbUiceh6iQO0CHtCPsyze/MZ2YbAA==", + "extraneous": true, + "dependencies": { + "@babel/types": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@babel/helper-string-parser": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.24.7.tgz", + "integrity": "sha512-7MbVt6xrwFQbunH2DNQsAP5sTGxfqQtErvBIvIMi6EQnbgUOuVYanvREcmFrOPhoXBrTtjhhP+lW+o5UfK+tDg==", + "peer": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@babel/helper-validator-identifier": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.24.7.tgz", + "integrity": "sha512-rR+PBcQ1SMQDDyF6X0wxtG8QyLCgUB0eRAGguqRLfkCA87l7yAP7ehq8SNj96OOGTO8OBV70KhuFYcIkHXOg0w==", + "peer": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@babel/highlight": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.24.7.tgz", + "integrity": "sha512-EStJpq4OuY8xYfhGVXngigBJRWxftKX9ksiGDnmlY3o7B/V7KIAc9X4oiK87uPJSc/vs5L869bem5fhZa8caZw==", + "extraneous": true, + "dependencies": { + "@babel/helper-validator-identifier": "^7.24.7", + "chalk": "^2.4.2", + "js-tokens": "^4.0.0", + "picocolors": "^1.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@babel/highlight/node_modules/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==", + "extraneous": true, + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@babel/highlight/node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "extraneous": true, + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@babel/highlight/node_modules/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==", + "extraneous": true, + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@babel/highlight/node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/@babel/highlight/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "extraneous": true, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@babel/highlight/node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "extraneous": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@babel/highlight/node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "extraneous": true, + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@babel/parser": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.24.7.tgz", + "integrity": "sha512-9uUYRm6OqQrCqQdG1iCBwBPZgN8ciDBro2nIOFaiRz1/BCxaI7CNvQbDHvsArAC7Tw9Hda/B3U+6ui9u4HWXPw==", + "peer": true, + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@babel/template": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.24.7.tgz", + "integrity": "sha512-jYqfPrU9JTF0PmPy1tLYHW4Mp4KlgxJD9l2nP9fD6yT/ICi554DmrWBAEYpIelzjHf1msDP3PxJIRt/nFNfBig==", + "extraneous": true, + "dependencies": { + "@babel/code-frame": "^7.24.7", + "@babel/parser": "^7.24.7", + "@babel/types": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@babel/traverse": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.24.7.tgz", + "integrity": "sha512-yb65Ed5S/QAcewNPh0nZczy9JdYXkkAbIsEo+P7BE7yO3txAY30Y/oPa3QkQ5It3xVG2kpKMg9MsdxZaO31uKA==", + "extraneous": true, + "dependencies": { + "@babel/code-frame": "^7.24.7", + "@babel/generator": "^7.24.7", + "@babel/helper-environment-visitor": "^7.24.7", + "@babel/helper-function-name": "^7.24.7", + "@babel/helper-hoist-variables": "^7.24.7", + "@babel/helper-split-export-declaration": "^7.24.7", + "@babel/parser": "^7.24.7", + "@babel/types": "^7.24.7", + "debug": "^4.3.1", + "globals": "^11.1.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@babel/traverse/node_modules/globals": { + "version": "11.12.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", + "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", + "extraneous": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@babel/types": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.24.7.tgz", + "integrity": "sha512-XEFXSlxiG5td2EJRe8vOmRbaXVgfcBlszKujvVmWIK/UpywWljQCfzAv3RQCGujWQ1RD4YYWEAqDXfuJiy8f5Q==", + "peer": true, + "dependencies": { + "@babel/helper-string-parser": "^7.24.7", + "@babel/helper-validator-identifier": "^7.24.7", + "to-fast-properties": "^2.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@eslint-community/eslint-utils": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.4.0.tgz", + "integrity": "sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==", + "extraneous": true, + "dependencies": { + "eslint-visitor-keys": "^3.3.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "peerDependencies": { + "eslint": "^6.0.0 || ^7.0.0 || >=8.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@eslint-community/regexpp": { + "version": "4.11.0", + "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.11.0.tgz", + "integrity": "sha512-G/M/tIiMrTAxEWRfLfQJMmGNX28IxBg4PBz8XqQhqUHLFI6TL2htpIB1iQCj144V5ee/JaKyT9/WZ0MGZWfA7A==", + "extraneous": true, + "engines": { + "node": "^12.0.0 || ^14.0.0 || >=16.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@eslint/eslintrc": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.4.tgz", + "integrity": "sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ==", + "extraneous": true, + "dependencies": { + "ajv": "^6.12.4", + "debug": "^4.3.2", + "espree": "^9.6.0", + "globals": "^13.19.0", + "ignore": "^5.2.0", + "import-fresh": "^3.2.1", + "js-yaml": "^4.1.0", + "minimatch": "^3.1.2", + "strip-json-comments": "^3.1.1" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@eslint/eslintrc/node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/@eslint/eslintrc/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "extraneous": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@eslint/eslintrc/node_modules/js-yaml": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", + "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", + "extraneous": true, + "dependencies": { + "argparse": "^2.0.1" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@eslint/eslintrc/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "extraneous": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@eslint/js": { + "version": "8.57.1", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.57.1.tgz", + "integrity": "sha512-d9zaMRSTIKDLhctzH12MtXvJKSSUhaHcjV+2Z+GK+EEY7XKpP5yR4x+N3TAcHTcu963nIr+TMcCb4DBCYX1z6Q==", + "extraneous": true, + "license": "MIT", + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@fluffy-spoon/substitute": { + "version": "1.208.0", + "resolved": "https://registry.npmjs.org/@fluffy-spoon/substitute/-/substitute-1.208.0.tgz", + "integrity": "sha512-BU5vKRoK4OYlKzDtyg4HbtWnUNLOvV0ntqEZIphz+mq2G0HlVFywwJ7M+FbIcnJVDbUReS01FyL5x8R01r7zBg==", + "extraneous": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/substitute-js#section-contribute" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@humanwhocodes/config-array": { + "version": "0.13.0", + "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.13.0.tgz", + "integrity": "sha512-DZLEEqFWQFiyK6h5YIeynKx7JlvCYWL0cImfSRXZ9l4Sg2efkFGTuFf6vzXjK1cq6IYkU+Eg/JizXw+TD2vRNw==", + "deprecated": "Use @eslint/config-array instead", + "extraneous": true, + "license": "Apache-2.0", + "dependencies": { + "@humanwhocodes/object-schema": "^2.0.3", + "debug": "^4.3.1", + "minimatch": "^3.0.5" + }, + "engines": { + "node": ">=10.10.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@humanwhocodes/config-array/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "extraneous": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@humanwhocodes/config-array/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "extraneous": true, + "license": "ISC", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@humanwhocodes/module-importer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", + "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==", + "extraneous": true, + "engines": { + "node": ">=12.22" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/nzakas" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@humanwhocodes/object-schema": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-2.0.3.tgz", + "integrity": "sha512-93zYdMES/c1D69yZiKDBj0V24vqNzB/koF26KPaagAfd3P/4gUlh3Dys5ogAK+Exi9QyzlD8x/08Zt7wIKcDcA==", + "deprecated": "Use @eslint/object-schema instead", + "extraneous": true, + "license": "BSD-3-Clause" + }, + "node_modules/@ngageoint/mage.service/node_modules/@isaacs/cliui": { + "version": "8.0.2", + "resolved": "https://registry.npmjs.org/@isaacs/cliui/-/cliui-8.0.2.tgz", + "integrity": "sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==", + "extraneous": true, + "dependencies": { + "string-width": "^5.1.2", + "string-width-cjs": "npm:string-width@^4.2.0", + "strip-ansi": "^7.0.1", + "strip-ansi-cjs": "npm:strip-ansi@^6.0.1", + "wrap-ansi": "^8.1.0", + "wrap-ansi-cjs": "npm:wrap-ansi@^7.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@isaacs/cliui/node_modules/ansi-regex": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", + "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==", + "extraneous": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-regex?sponsor=1" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@isaacs/cliui/node_modules/ansi-styles": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz", + "integrity": "sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==", + "extraneous": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@isaacs/cliui/node_modules/emoji-regex": { + "version": "9.2.2", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", + "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/@isaacs/cliui/node_modules/string-width": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz", + "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==", + "extraneous": true, + "dependencies": { + "eastasianwidth": "^0.2.0", + "emoji-regex": "^9.2.2", + "strip-ansi": "^7.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@isaacs/cliui/node_modules/strip-ansi": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz", + "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==", + "extraneous": true, + "dependencies": { + "ansi-regex": "^6.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/strip-ansi?sponsor=1" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@isaacs/cliui/node_modules/wrap-ansi": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-8.1.0.tgz", + "integrity": "sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==", + "extraneous": true, + "dependencies": { + "ansi-styles": "^6.1.0", + "string-width": "^5.0.1", + "strip-ansi": "^7.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@jridgewell/gen-mapping": { + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz", + "integrity": "sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==", + "extraneous": true, + "dependencies": { + "@jridgewell/set-array": "^1.2.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.24" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@jridgewell/resolve-uri": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz", + "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==", + "extraneous": true, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@jridgewell/set-array": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.2.1.tgz", + "integrity": "sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==", + "extraneous": true, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@jridgewell/sourcemap-codec": { + "version": "1.4.15", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz", + "integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/@jridgewell/trace-mapping": { + "version": "0.3.25", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz", + "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==", + "extraneous": true, + "dependencies": { + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@mongodb-js/saslprep": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/@mongodb-js/saslprep/-/saslprep-1.1.7.tgz", + "integrity": "sha512-dCHW/oEX0KJ4NjDULBo3JiOaK5+6axtpBbS+ao2ZInoAL9/YRQLhXzSNAFz7hP4nzLkIqsfYAK/PDE3+XHny0Q==", + "optional": true, + "peer": true, + "dependencies": { + "sparse-bitfield": "^3.0.3" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@ngageoint/geopackage": { + "version": "4.2.6", + "resolved": "https://registry.npmjs.org/@ngageoint/geopackage/-/geopackage-4.2.6.tgz", + "integrity": "sha512-HT0WAhAySTv+p462SUkvOKlXoPWDI6LETdBqNl0mC55YxE7PSvPByRIh3r/ajqSirhJeydaoN2wCw0nw+es2bA==", + "peer": true, + "dependencies": { + "@turf/bbox": "6.3.0", + "@turf/boolean-clockwise": "6.5.0", + "@turf/boolean-point-in-polygon": "6.5.0", + "@turf/boolean-within": "6.5.0", + "@turf/distance": "6.5.0", + "@turf/helpers": "6.5.0", + "@turf/intersect": "6.5.0", + "@turf/line-intersect": "6.5.0", + "@turf/point-to-line-distance": "6.5.0", + "@turf/polygon-to-line": "6.5.0", + "@types/geojson": "7946.0.8", + "@types/proj4": "2.5.2", + "file-type": "^16.5.4", + "image-size": "0.8.3", + "lodash": "4.17.21", + "proj4": "2.8.0", + "reproject": "1.2.5", + "rtree-sql.js": "1.7.0", + "simplify-js": "1.2.4", + "webworkify": "1.5.0", + "wkx": "0.4.8" + }, + "bin": { + "geopackage": "cli" + }, + "optionalDependencies": { + "better-sqlite3": "^9.1.1", + "chalk": "4.1.1", + "inquirer": "8.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@ngageoint/geopackage/node_modules/@types/geojson": { + "version": "7946.0.8", + "resolved": "https://registry.npmjs.org/@types/geojson/-/geojson-7946.0.8.tgz", + "integrity": "sha512-1rkryxURpr6aWP7R786/UQOkJ3PcpQiWkAXBmdWc7ryFWqN6a4xfK7BtjXvFBKO9LjQ+MWQSWxYeZX1OApnArA==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/@ngageoint/geopackage/node_modules/better-sqlite3": { + "version": "9.6.0", + "resolved": "https://registry.npmjs.org/better-sqlite3/-/better-sqlite3-9.6.0.tgz", + "integrity": "sha512-yR5HATnqeYNVnkaUTf4bOP2dJSnyhP4puJN/QPRyx4YkBEEUxib422n2XzPqDEHjQQqazoYoADdAm5vE15+dAQ==", + "hasInstallScript": true, + "license": "MIT", + "optional": true, + "peer": true, + "dependencies": { + "bindings": "^1.5.0", + "prebuild-install": "^7.1.1" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@ngageoint/geopackage/node_modules/wkx": { + "version": "0.4.8", + "resolved": "https://registry.npmjs.org/wkx/-/wkx-0.4.8.tgz", + "integrity": "sha512-ikPXMM9IR/gy/LwiOSqWlSL3X/J5uk9EO2hHNRXS41eTLXaUFEVw9fn/593jW/tE5tedNg8YjT5HkCa4FqQZyQ==", + "license": "MIT", + "peer": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@ngageoint/mongodb-migrations": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@ngageoint/mongodb-migrations/-/mongodb-migrations-1.0.0.tgz", + "integrity": "sha512-SOjJk+xuPfMmevyZOhRCm3odFFW//zg8tKSkiKfgAslMIaZUII6rbrBQRjBPqyFewqg/dabY4xYnXelZSY7/cw==", + "peer": true, + "dependencies": { + "bluebird": "^3.7.2", + "coffeescript": "^2.7.0", + "lodash": "^4.17.21", + "mkdirp": "^0.5.6", + "mongodb": "^4.8.1", + "nomnom": "^1.8.1" + }, + "bin": { + "mm": "bin/mm" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@node-saml/node-saml": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/@node-saml/node-saml/-/node-saml-4.0.5.tgz", + "integrity": "sha512-J5DglElbY1tjOuaR1NPtjOXkXY5bpUhDoKVoeucYN98A3w4fwgjIOPqIGcb6cQsqFq2zZ6vTCeKn5C/hvefSaw==", + "peer": true, + "dependencies": { + "@types/debug": "^4.1.7", + "@types/passport": "^1.0.11", + "@types/xml-crypto": "^1.4.2", + "@types/xml-encryption": "^1.2.1", + "@types/xml2js": "^0.4.11", + "@xmldom/xmldom": "^0.8.6", + "debug": "^4.3.4", + "xml-crypto": "^3.0.1", + "xml-encryption": "^3.0.2", + "xml2js": "^0.5.0", + "xmlbuilder": "^15.1.1" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@node-saml/node-saml/node_modules/@xmldom/xmldom": { + "version": "0.8.10", + "resolved": "https://registry.npmjs.org/@xmldom/xmldom/-/xmldom-0.8.10.tgz", + "integrity": "sha512-2WALfTl4xo2SkGCYRt6rDTFfk9R1czmBvUQy12gK2KuRKIpWEhcbbzy8EZXtz/jkRqHX8bFEc6FC1HjX4TUWYw==", + "license": "MIT", + "peer": true, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@node-saml/passport-saml": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/@node-saml/passport-saml/-/passport-saml-4.0.4.tgz", + "integrity": "sha512-xFw3gw0yo+K1mzlkW15NeBF7cVpRHN/4vpjmBKzov5YFImCWh/G0LcTZ8krH3yk2/eRPc3Or8LRPudVJBjmYaw==", + "peer": true, + "dependencies": { + "@node-saml/node-saml": "^4.0.4", + "@types/express": "^4.17.14", + "@types/passport": "^1.0.11", + "@types/passport-strategy": "^0.2.35", + "passport": "^0.6.0", + "passport-strategy": "^1.0.0" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@node-saml/passport-saml/node_modules/passport": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/passport/-/passport-0.6.0.tgz", + "integrity": "sha512-0fe+p3ZnrWRW74fe8+SvCyf4a3Pb2/h7gFkQ8yTJpAO50gDzlfjZUZTO1k5Eg9kUct22OxHLqDZoKUWRHOh9ug==", + "license": "MIT", + "peer": true, + "dependencies": { + "passport-strategy": "1.x.x", + "pause": "0.0.1", + "utils-merge": "^1.0.1" + }, + "engines": { + "node": ">= 0.4.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/jaredhanson" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@nodelib/fs.scandir": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", + "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", + "extraneous": true, + "dependencies": { + "@nodelib/fs.stat": "2.0.5", + "run-parallel": "^1.1.9" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@nodelib/fs.stat": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", + "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", + "extraneous": true, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@nodelib/fs.walk": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", + "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", + "extraneous": true, + "dependencies": { + "@nodelib/fs.scandir": "2.1.5", + "fastq": "^1.6.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@oozcitak/dom": { + "version": "1.15.10", + "resolved": "https://registry.npmjs.org/@oozcitak/dom/-/dom-1.15.10.tgz", + "integrity": "sha512-0JT29/LaxVgRcGKvHmSrUTEvZ8BXvZhGl2LASRUgHqDTC1M5g1pLmVv56IYNyt3bG2CUjDkc67wnyZC14pbQrQ==", + "peer": true, + "dependencies": { + "@oozcitak/infra": "1.0.8", + "@oozcitak/url": "1.0.4", + "@oozcitak/util": "8.3.8" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@oozcitak/infra": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/@oozcitak/infra/-/infra-1.0.8.tgz", + "integrity": "sha512-JRAUc9VR6IGHOL7OGF+yrvs0LO8SlqGnPAMqyzOuFZPSZSXI7Xf2O9+awQPSMXgIWGtgUf/dA6Hs6X6ySEaWTg==", + "peer": true, + "dependencies": { + "@oozcitak/util": "8.3.8" + }, + "engines": { + "node": ">=6.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@oozcitak/url": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/@oozcitak/url/-/url-1.0.4.tgz", + "integrity": "sha512-kDcD8y+y3FCSOvnBI6HJgl00viO/nGbQoCINmQ0h98OhnGITrWR3bOGfwYCthgcrV8AnTJz8MzslTQbC3SOAmw==", + "peer": true, + "dependencies": { + "@oozcitak/infra": "1.0.8", + "@oozcitak/util": "8.3.8" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@oozcitak/util": { + "version": "8.3.8", + "resolved": "https://registry.npmjs.org/@oozcitak/util/-/util-8.3.8.tgz", + "integrity": "sha512-T8TbSnGsxo6TDBJx/Sgv/BlVJL3tshxZP7Aq5R1mSnM5OcHY2dQaxLMu2+E8u3gN0MLOzdjurqN4ZRVuzQycOQ==", + "peer": true, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@pkgjs/parseargs": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/@pkgjs/parseargs/-/parseargs-0.11.0.tgz", + "integrity": "sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==", + "extraneous": true, + "engines": { + "node": ">=14" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@sinonjs/commons": { + "version": "1.8.6", + "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.8.6.tgz", + "integrity": "sha512-Ky+XkAkqPZSm3NLBeUng77EBQl3cmeJhITaGHdYH8kjVB+aun3S4XBRti2zt17mtt0mIUDiNxYeoJm6drVvBJQ==", + "extraneous": true, + "dependencies": { + "type-detect": "4.0.8" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@sinonjs/formatio": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/@sinonjs/formatio/-/formatio-3.2.2.tgz", + "integrity": "sha512-B8SEsgd8gArBLMD6zpRw3juQ2FVSsmdd7qlevyDqzS9WTCtvF55/gAL+h6gue8ZvPYcdiPdvueM/qm//9XzyTQ==", + "extraneous": true, + "dependencies": { + "@sinonjs/commons": "^1", + "@sinonjs/samsam": "^3.1.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@sinonjs/samsam": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/@sinonjs/samsam/-/samsam-3.3.3.tgz", + "integrity": "sha512-bKCMKZvWIjYD0BLGnNrxVuw4dkWCYsLqFOUWw8VgKF/+5Y+mE7LfHWPIYoDXowH+3a9LsWDMo0uAP8YDosPvHQ==", + "extraneous": true, + "dependencies": { + "@sinonjs/commons": "^1.3.0", + "array-from": "^2.1.1", + "lodash": "^4.17.15" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@sinonjs/text-encoding": { + "version": "0.7.2", + "resolved": "https://registry.npmjs.org/@sinonjs/text-encoding/-/text-encoding-0.7.2.tgz", + "integrity": "sha512-sXXKG+uL9IrKqViTtao2Ws6dy0znu9sOaP1di/jKGW1M6VssO8vlpXCQcpZ+jisQ1tTFAC5Jo/EOzFbggBagFQ==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/@smithy/abort-controller": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/@smithy/abort-controller/-/abort-controller-3.1.1.tgz", + "integrity": "sha512-MBJBiidoe+0cTFhyxT8g+9g7CeVccLM0IOKKUMCNQ1CNMJ/eIfoo0RTfVrXOONEI1UCN1W+zkiHSbzUNE9dZtQ==", + "optional": true, + "peer": true, + "dependencies": { + "@smithy/types": "^3.3.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@smithy/config-resolver": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@smithy/config-resolver/-/config-resolver-3.0.4.tgz", + "integrity": "sha512-VwiOk7TwXoE7NlNguV/aPq1hFH72tqkHCw8eWXbr2xHspRyyv9DLpLXhq+Ieje+NwoqXrY0xyQjPXdOE6cGcHA==", + "optional": true, + "peer": true, + "dependencies": { + "@smithy/node-config-provider": "^3.1.3", + "@smithy/types": "^3.3.0", + "@smithy/util-config-provider": "^3.0.0", + "@smithy/util-middleware": "^3.0.3", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@smithy/core": { + "version": "2.2.4", + "resolved": "https://registry.npmjs.org/@smithy/core/-/core-2.2.4.tgz", + "integrity": "sha512-qdY3LpMOUyLM/gfjjMQZui+UTNS7kBRDWlvyIhVOql5dn2J3isk9qUTBtQ1CbDH8MTugHis1zu3h4rH+Qmmh4g==", + "optional": true, + "peer": true, + "dependencies": { + "@smithy/middleware-endpoint": "^3.0.4", + "@smithy/middleware-retry": "^3.0.7", + "@smithy/middleware-serde": "^3.0.3", + "@smithy/protocol-http": "^4.0.3", + "@smithy/smithy-client": "^3.1.5", + "@smithy/types": "^3.3.0", + "@smithy/util-middleware": "^3.0.3", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@smithy/credential-provider-imds": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/@smithy/credential-provider-imds/-/credential-provider-imds-3.1.3.tgz", + "integrity": "sha512-U1Yrv6hx/mRK6k8AncuI6jLUx9rn0VVSd9NPEX6pyYFBfkSkChOc/n4zUb8alHUVg83TbI4OdZVo1X0Zfj3ijA==", + "optional": true, + "peer": true, + "dependencies": { + "@smithy/node-config-provider": "^3.1.3", + "@smithy/property-provider": "^3.1.3", + "@smithy/types": "^3.3.0", + "@smithy/url-parser": "^3.0.3", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@smithy/fetch-http-handler": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/@smithy/fetch-http-handler/-/fetch-http-handler-3.2.0.tgz", + "integrity": "sha512-vFvDxMrc6sO5Atec8PaISckMcAwsCrRhYxwUylg97bRT2KZoumOF7qk5+6EVUtuM1IG9AJV5aqXnHln9ZdXHpg==", + "optional": true, + "peer": true, + "dependencies": { + "@smithy/protocol-http": "^4.0.3", + "@smithy/querystring-builder": "^3.0.3", + "@smithy/types": "^3.3.0", + "@smithy/util-base64": "^3.0.0", + "tslib": "^2.6.2" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@smithy/hash-node": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@smithy/hash-node/-/hash-node-3.0.3.tgz", + "integrity": "sha512-2ctBXpPMG+B3BtWSGNnKELJ7SH9e4TNefJS0cd2eSkOOROeBnnVBnAy9LtJ8tY4vUEoe55N4CNPxzbWvR39iBw==", + "optional": true, + "peer": true, + "dependencies": { + "@smithy/types": "^3.3.0", + "@smithy/util-buffer-from": "^3.0.0", + "@smithy/util-utf8": "^3.0.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@smithy/invalid-dependency": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@smithy/invalid-dependency/-/invalid-dependency-3.0.3.tgz", + "integrity": "sha512-ID1eL/zpDULmHJbflb864k72/SNOZCADRc9i7Exq3RUNJw6raWUSlFEQ+3PX3EYs++bTxZB2dE9mEHTQLv61tw==", + "optional": true, + "peer": true, + "dependencies": { + "@smithy/types": "^3.3.0", + "tslib": "^2.6.2" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@smithy/is-array-buffer": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@smithy/is-array-buffer/-/is-array-buffer-3.0.0.tgz", + "integrity": "sha512-+Fsu6Q6C4RSJiy81Y8eApjEB5gVtM+oFKTffg+jSuwtvomJJrhUJBu2zS8wjXSgH/g1MKEWrzyChTBe6clb5FQ==", + "optional": true, + "peer": true, + "dependencies": { + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@smithy/middleware-content-length": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@smithy/middleware-content-length/-/middleware-content-length-3.0.3.tgz", + "integrity": "sha512-Dbz2bzexReYIQDWMr+gZhpwBetNXzbhnEMhYKA6urqmojO14CsXjnsoPYO8UL/xxcawn8ZsuVU61ElkLSltIUQ==", + "optional": true, + "peer": true, + "dependencies": { + "@smithy/protocol-http": "^4.0.3", + "@smithy/types": "^3.3.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@smithy/middleware-endpoint": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@smithy/middleware-endpoint/-/middleware-endpoint-3.0.4.tgz", + "integrity": "sha512-whUJMEPwl3ANIbXjBXZVdJNgfV2ZU8ayln7xUM47rXL2txuenI7jQ/VFFwCzy5lCmXScjp6zYtptW5Evud8e9g==", + "optional": true, + "peer": true, + "dependencies": { + "@smithy/middleware-serde": "^3.0.3", + "@smithy/node-config-provider": "^3.1.3", + "@smithy/shared-ini-file-loader": "^3.1.3", + "@smithy/types": "^3.3.0", + "@smithy/url-parser": "^3.0.3", + "@smithy/util-middleware": "^3.0.3", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@smithy/middleware-retry": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/@smithy/middleware-retry/-/middleware-retry-3.0.7.tgz", + "integrity": "sha512-f5q7Y09G+2h5ivkSx5CHvlAT4qRR3jBFEsfXyQ9nFNiWQlr8c48blnu5cmbTQ+p1xmIO14UXzKoF8d7Tm0Gsjw==", + "optional": true, + "peer": true, + "dependencies": { + "@smithy/node-config-provider": "^3.1.3", + "@smithy/protocol-http": "^4.0.3", + "@smithy/service-error-classification": "^3.0.3", + "@smithy/smithy-client": "^3.1.5", + "@smithy/types": "^3.3.0", + "@smithy/util-middleware": "^3.0.3", + "@smithy/util-retry": "^3.0.3", + "tslib": "^2.6.2", + "uuid": "^9.0.1" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@smithy/middleware-serde": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@smithy/middleware-serde/-/middleware-serde-3.0.3.tgz", + "integrity": "sha512-puUbyJQBcg9eSErFXjKNiGILJGtiqmuuNKEYNYfUD57fUl4i9+mfmThtQhvFXU0hCVG0iEJhvQUipUf+/SsFdA==", + "optional": true, + "peer": true, + "dependencies": { + "@smithy/types": "^3.3.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@smithy/middleware-stack": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@smithy/middleware-stack/-/middleware-stack-3.0.3.tgz", + "integrity": "sha512-r4klY9nFudB0r9UdSMaGSyjyQK5adUyPnQN/ZM6M75phTxOdnc/AhpvGD1fQUvgmqjQEBGCwpnPbDm8pH5PapA==", + "optional": true, + "peer": true, + "dependencies": { + "@smithy/types": "^3.3.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@smithy/node-config-provider": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/@smithy/node-config-provider/-/node-config-provider-3.1.3.tgz", + "integrity": "sha512-rxdpAZczzholz6CYZxtqDu/aKTxATD5DAUDVj7HoEulq+pDSQVWzbg0btZDlxeFfa6bb2b5tUvgdX5+k8jUqcg==", + "optional": true, + "peer": true, + "dependencies": { + "@smithy/property-provider": "^3.1.3", + "@smithy/shared-ini-file-loader": "^3.1.3", + "@smithy/types": "^3.3.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@smithy/node-http-handler": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/@smithy/node-http-handler/-/node-http-handler-3.1.1.tgz", + "integrity": "sha512-L71NLyPeP450r2J/mfu1jMc//Z1YnqJt2eSNw7uhiItaONnBLDA68J5jgxq8+MBDsYnFwNAIc7dBG1ImiWBiwg==", + "optional": true, + "peer": true, + "dependencies": { + "@smithy/abort-controller": "^3.1.1", + "@smithy/protocol-http": "^4.0.3", + "@smithy/querystring-builder": "^3.0.3", + "@smithy/types": "^3.3.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@smithy/property-provider": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/@smithy/property-provider/-/property-provider-3.1.3.tgz", + "integrity": "sha512-zahyOVR9Q4PEoguJ/NrFP4O7SMAfYO1HLhB18M+q+Z4KFd4V2obiMnlVoUFzFLSPeVt1POyNWneHHrZaTMoc/g==", + "optional": true, + "peer": true, + "dependencies": { + "@smithy/types": "^3.3.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@smithy/protocol-http": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@smithy/protocol-http/-/protocol-http-4.0.3.tgz", + "integrity": "sha512-x5jmrCWwQlx+Zv4jAtc33ijJ+vqqYN+c/ZkrnpvEe/uDas7AT7A/4Rc2CdfxgWv4WFGmEqODIrrUToPN6DDkGw==", + "optional": true, + "peer": true, + "dependencies": { + "@smithy/types": "^3.3.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@smithy/querystring-builder": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@smithy/querystring-builder/-/querystring-builder-3.0.3.tgz", + "integrity": "sha512-vyWckeUeesFKzCDaRwWLUA1Xym9McaA6XpFfAK5qI9DKJ4M33ooQGqvM4J+LalH4u/Dq9nFiC8U6Qn1qi0+9zw==", + "optional": true, + "peer": true, + "dependencies": { + "@smithy/types": "^3.3.0", + "@smithy/util-uri-escape": "^3.0.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@smithy/querystring-parser": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@smithy/querystring-parser/-/querystring-parser-3.0.3.tgz", + "integrity": "sha512-zahM1lQv2YjmznnfQsWbYojFe55l0SLG/988brlLv1i8z3dubloLF+75ATRsqPBboUXsW6I9CPGE5rQgLfY0vQ==", + "optional": true, + "peer": true, + "dependencies": { + "@smithy/types": "^3.3.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@smithy/service-error-classification": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@smithy/service-error-classification/-/service-error-classification-3.0.3.tgz", + "integrity": "sha512-Jn39sSl8cim/VlkLsUhRFq/dKDnRUFlfRkvhOJaUbLBXUsLRLNf9WaxDv/z9BjuQ3A6k/qE8af1lsqcwm7+DaQ==", + "optional": true, + "peer": true, + "dependencies": { + "@smithy/types": "^3.3.0" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@smithy/shared-ini-file-loader": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/@smithy/shared-ini-file-loader/-/shared-ini-file-loader-3.1.3.tgz", + "integrity": "sha512-Z8Y3+08vgoDgl4HENqNnnzSISAaGrF2RoKupoC47u2wiMp+Z8P/8mDh1CL8+8ujfi2U5naNvopSBmP/BUj8b5w==", + "optional": true, + "peer": true, + "dependencies": { + "@smithy/types": "^3.3.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@smithy/signature-v4": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@smithy/signature-v4/-/signature-v4-3.1.2.tgz", + "integrity": "sha512-3BcPylEsYtD0esM4Hoyml/+s7WP2LFhcM3J2AGdcL2vx9O60TtfpDOL72gjb4lU8NeRPeKAwR77YNyyGvMbuEA==", + "optional": true, + "peer": true, + "dependencies": { + "@smithy/is-array-buffer": "^3.0.0", + "@smithy/types": "^3.3.0", + "@smithy/util-hex-encoding": "^3.0.0", + "@smithy/util-middleware": "^3.0.3", + "@smithy/util-uri-escape": "^3.0.0", + "@smithy/util-utf8": "^3.0.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@smithy/smithy-client": { + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/@smithy/smithy-client/-/smithy-client-3.1.5.tgz", + "integrity": "sha512-x9bL9Mx2CT2P1OiUlHM+ZNpbVU6TgT32f9CmTRzqIHA7M4vYrROCWEoC3o4xHNJASoGd4Opos3cXYPgh+/m4Ww==", + "optional": true, + "peer": true, + "dependencies": { + "@smithy/middleware-endpoint": "^3.0.4", + "@smithy/middleware-stack": "^3.0.3", + "@smithy/protocol-http": "^4.0.3", + "@smithy/types": "^3.3.0", + "@smithy/util-stream": "^3.0.5", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@smithy/types": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/@smithy/types/-/types-3.3.0.tgz", + "integrity": "sha512-IxvBBCTFDHbVoK7zIxqA1ZOdc4QfM5HM7rGleCuHi7L1wnKv5Pn69xXJQ9hgxH60ZVygH9/JG0jRgtUncE3QUA==", + "optional": true, + "peer": true, + "dependencies": { + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@smithy/url-parser": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@smithy/url-parser/-/url-parser-3.0.3.tgz", + "integrity": "sha512-pw3VtZtX2rg+s6HMs6/+u9+hu6oY6U7IohGhVNnjbgKy86wcIsSZwgHrFR+t67Uyxvp4Xz3p3kGXXIpTNisq8A==", + "optional": true, + "peer": true, + "dependencies": { + "@smithy/querystring-parser": "^3.0.3", + "@smithy/types": "^3.3.0", + "tslib": "^2.6.2" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@smithy/util-base64": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@smithy/util-base64/-/util-base64-3.0.0.tgz", + "integrity": "sha512-Kxvoh5Qtt0CDsfajiZOCpJxgtPHXOKwmM+Zy4waD43UoEMA+qPxxa98aE/7ZhdnBFZFXMOiBR5xbcaMhLtznQQ==", + "optional": true, + "peer": true, + "dependencies": { + "@smithy/util-buffer-from": "^3.0.0", + "@smithy/util-utf8": "^3.0.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@smithy/util-body-length-browser": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@smithy/util-body-length-browser/-/util-body-length-browser-3.0.0.tgz", + "integrity": "sha512-cbjJs2A1mLYmqmyVl80uoLTJhAcfzMOyPgjwAYusWKMdLeNtzmMz9YxNl3/jRLoxSS3wkqkf0jwNdtXWtyEBaQ==", + "optional": true, + "peer": true, + "dependencies": { + "tslib": "^2.6.2" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@smithy/util-body-length-node": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@smithy/util-body-length-node/-/util-body-length-node-3.0.0.tgz", + "integrity": "sha512-Tj7pZ4bUloNUP6PzwhN7K386tmSmEET9QtQg0TgdNOnxhZvCssHji+oZTUIuzxECRfG8rdm2PMw2WCFs6eIYkA==", + "optional": true, + "peer": true, + "dependencies": { + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@smithy/util-buffer-from": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@smithy/util-buffer-from/-/util-buffer-from-3.0.0.tgz", + "integrity": "sha512-aEOHCgq5RWFbP+UDPvPot26EJHjOC+bRgse5A8V3FSShqd5E5UN4qc7zkwsvJPPAVsf73QwYcHN1/gt/rtLwQA==", + "optional": true, + "peer": true, + "dependencies": { + "@smithy/is-array-buffer": "^3.0.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@smithy/util-config-provider": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@smithy/util-config-provider/-/util-config-provider-3.0.0.tgz", + "integrity": "sha512-pbjk4s0fwq3Di/ANL+rCvJMKM5bzAQdE5S/6RL5NXgMExFAi6UgQMPOm5yPaIWPpr+EOXKXRonJ3FoxKf4mCJQ==", + "optional": true, + "peer": true, + "dependencies": { + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@smithy/util-defaults-mode-browser": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/@smithy/util-defaults-mode-browser/-/util-defaults-mode-browser-3.0.7.tgz", + "integrity": "sha512-Q2txLyvQyGfmjsaDbVV7Sg8psefpFcrnlGapDzXGFRPFKRBeEg6OvFK8FljqjeHSaCZ6/UuzQExUPqBR/2qlDA==", + "optional": true, + "peer": true, + "dependencies": { + "@smithy/property-provider": "^3.1.3", + "@smithy/smithy-client": "^3.1.5", + "@smithy/types": "^3.3.0", + "bowser": "^2.11.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@smithy/util-defaults-mode-node": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/@smithy/util-defaults-mode-node/-/util-defaults-mode-node-3.0.7.tgz", + "integrity": "sha512-F4Qcj1fG6MGi2BSWCslfsMSwllws/WzYONBGtLybyY+halAcXdWhcew+mej8M5SKd5hqPYp4f7b+ABQEaeytgg==", + "optional": true, + "peer": true, + "dependencies": { + "@smithy/config-resolver": "^3.0.4", + "@smithy/credential-provider-imds": "^3.1.3", + "@smithy/node-config-provider": "^3.1.3", + "@smithy/property-provider": "^3.1.3", + "@smithy/smithy-client": "^3.1.5", + "@smithy/types": "^3.3.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@smithy/util-endpoints": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/@smithy/util-endpoints/-/util-endpoints-2.0.4.tgz", + "integrity": "sha512-ZAtNf+vXAsgzgRutDDiklU09ZzZiiV/nATyqde4Um4priTmasDH+eLpp3tspL0hS2dEootyFMhu1Y6Y+tzpWBQ==", + "optional": true, + "peer": true, + "dependencies": { + "@smithy/node-config-provider": "^3.1.3", + "@smithy/types": "^3.3.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@smithy/util-hex-encoding": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@smithy/util-hex-encoding/-/util-hex-encoding-3.0.0.tgz", + "integrity": "sha512-eFndh1WEK5YMUYvy3lPlVmYY/fZcQE1D8oSf41Id2vCeIkKJXPcYDCZD+4+xViI6b1XSd7tE+s5AmXzz5ilabQ==", + "optional": true, + "peer": true, + "dependencies": { + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@smithy/util-middleware": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@smithy/util-middleware/-/util-middleware-3.0.3.tgz", + "integrity": "sha512-l+StyYYK/eO3DlVPbU+4Bi06Jjal+PFLSMmlWM1BEwyLxZ3aKkf1ROnoIakfaA7mC6uw3ny7JBkau4Yc+5zfWw==", + "optional": true, + "peer": true, + "dependencies": { + "@smithy/types": "^3.3.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@smithy/util-retry": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@smithy/util-retry/-/util-retry-3.0.3.tgz", + "integrity": "sha512-AFw+hjpbtVApzpNDhbjNG5NA3kyoMs7vx0gsgmlJF4s+yz1Zlepde7J58zpIRIsdjc+emhpAITxA88qLkPF26w==", + "optional": true, + "peer": true, + "dependencies": { + "@smithy/service-error-classification": "^3.0.3", + "@smithy/types": "^3.3.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@smithy/util-stream": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/@smithy/util-stream/-/util-stream-3.0.5.tgz", + "integrity": "sha512-xC3L5PKMAT/Bh8fmHNXP9sdQ4+4aKVUU3EEJ2CF/lLk7R+wtMJM+v/1B4en7jO++Wa5spGzFDBCl0QxgbUc5Ug==", + "optional": true, + "peer": true, + "dependencies": { + "@smithy/fetch-http-handler": "^3.2.0", + "@smithy/node-http-handler": "^3.1.1", + "@smithy/types": "^3.3.0", + "@smithy/util-base64": "^3.0.0", + "@smithy/util-buffer-from": "^3.0.0", + "@smithy/util-hex-encoding": "^3.0.0", + "@smithy/util-utf8": "^3.0.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@smithy/util-uri-escape": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@smithy/util-uri-escape/-/util-uri-escape-3.0.0.tgz", + "integrity": "sha512-LqR7qYLgZTD7nWLBecUi4aqolw8Mhza9ArpNEQ881MJJIU2sE5iHCK6TdyqqzcDLy0OPe10IY4T8ctVdtynubg==", + "optional": true, + "peer": true, + "dependencies": { + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@smithy/util-utf8": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@smithy/util-utf8/-/util-utf8-3.0.0.tgz", + "integrity": "sha512-rUeT12bxFnplYDe815GXbq/oixEGHfRFFtcTF3YdDi/JaENIM6aSYYLJydG83UNzLXeRI5K8abYd/8Sp/QM0kA==", + "optional": true, + "peer": true, + "dependencies": { + "@smithy/util-buffer-from": "^3.0.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@tokenizer/token": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/@tokenizer/token/-/token-0.3.0.tgz", + "integrity": "sha512-OvjF+z51L3ov0OyAU0duzsYuvO01PH7x4t6DJx+guahgTnBHkhJdG7soQeTSFLWN3efnHyibZ4Z8l2EuWwJN3A==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/@turf/bbox": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/@turf/bbox/-/bbox-6.3.0.tgz", + "integrity": "sha512-N4ue5Xopu1qieSHP2MA/CJGWHPKaTrVXQJjzHRNcY1vtsO126xbSaJhWUrFc5x5vVkXp0dcucGryO0r5m4o/KA==", + "peer": true, + "dependencies": { + "@turf/helpers": "^6.3.0", + "@turf/meta": "^6.3.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@turf/bearing": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/bearing/-/bearing-6.5.0.tgz", + "integrity": "sha512-dxINYhIEMzgDOztyMZc20I7ssYVNEpSv04VbMo5YPQsqa80KO3TFvbuCahMsCAW5z8Tncc8dwBlEFrmRjJG33A==", + "peer": true, + "dependencies": { + "@turf/helpers": "^6.5.0", + "@turf/invariant": "^6.5.0" + }, + "funding": { + "url": "https://opencollective.com/turf" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@turf/boolean-clockwise": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/boolean-clockwise/-/boolean-clockwise-6.5.0.tgz", + "integrity": "sha512-45+C7LC5RMbRWrxh3Z0Eihsc8db1VGBO5d9BLTOAwU4jR6SgsunTfRWR16X7JUwIDYlCVEmnjcXJNi/kIU3VIw==", + "peer": true, + "dependencies": { + "@turf/helpers": "^6.5.0", + "@turf/invariant": "^6.5.0" + }, + "funding": { + "url": "https://opencollective.com/turf" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@turf/boolean-point-in-polygon": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/boolean-point-in-polygon/-/boolean-point-in-polygon-6.5.0.tgz", + "integrity": "sha512-DtSuVFB26SI+hj0SjrvXowGTUCHlgevPAIsukssW6BG5MlNSBQAo70wpICBNJL6RjukXg8d2eXaAWuD/CqL00A==", + "peer": true, + "dependencies": { + "@turf/helpers": "^6.5.0", + "@turf/invariant": "^6.5.0" + }, + "funding": { + "url": "https://opencollective.com/turf" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@turf/boolean-point-on-line": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/boolean-point-on-line/-/boolean-point-on-line-6.5.0.tgz", + "integrity": "sha512-A1BbuQ0LceLHvq7F/P7w3QvfpmZqbmViIUPHdNLvZimFNLo4e6IQunmzbe+8aSStH9QRZm3VOflyvNeXvvpZEQ==", + "peer": true, + "dependencies": { + "@turf/helpers": "^6.5.0", + "@turf/invariant": "^6.5.0" + }, + "funding": { + "url": "https://opencollective.com/turf" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@turf/boolean-within": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/boolean-within/-/boolean-within-6.5.0.tgz", + "integrity": "sha512-YQB3oU18Inx35C/LU930D36RAVe7LDXk1kWsQ8mLmuqYn9YdPsDQTMTkLJMhoQ8EbN7QTdy333xRQ4MYgToteQ==", + "peer": true, + "dependencies": { + "@turf/bbox": "^6.5.0", + "@turf/boolean-point-in-polygon": "^6.5.0", + "@turf/boolean-point-on-line": "^6.5.0", + "@turf/helpers": "^6.5.0", + "@turf/invariant": "^6.5.0" + }, + "funding": { + "url": "https://opencollective.com/turf" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@turf/boolean-within/node_modules/@turf/bbox": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/bbox/-/bbox-6.5.0.tgz", + "integrity": "sha512-RBbLaao5hXTYyyg577iuMtDB8ehxMlUqHEJiMs8jT1GHkFhr6sYre3lmLsPeYEi/ZKj5TP5tt7fkzNdJ4GIVyw==", + "peer": true, + "dependencies": { + "@turf/helpers": "^6.5.0", + "@turf/meta": "^6.5.0" + }, + "funding": { + "url": "https://opencollective.com/turf" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@turf/centroid": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/centroid/-/centroid-6.5.0.tgz", + "integrity": "sha512-MwE1oq5E3isewPprEClbfU5pXljIK/GUOMbn22UM3IFPDJX0KeoyLNwghszkdmFp/qMGL/M13MMWvU+GNLXP/A==", + "peer": true, + "dependencies": { + "@turf/helpers": "^6.5.0", + "@turf/meta": "^6.5.0" + }, + "funding": { + "url": "https://opencollective.com/turf" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@turf/clone": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/clone/-/clone-6.5.0.tgz", + "integrity": "sha512-mzVtTFj/QycXOn6ig+annKrM6ZlimreKYz6f/GSERytOpgzodbQyOgkfwru100O1KQhhjSudKK4DsQ0oyi9cTw==", + "peer": true, + "dependencies": { + "@turf/helpers": "^6.5.0" + }, + "funding": { + "url": "https://opencollective.com/turf" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@turf/distance": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/distance/-/distance-6.5.0.tgz", + "integrity": "sha512-xzykSLfoURec5qvQJcfifw/1mJa+5UwByZZ5TZ8iaqjGYN0vomhV9aiSLeYdUGtYRESZ+DYC/OzY+4RclZYgMg==", + "peer": true, + "dependencies": { + "@turf/helpers": "^6.5.0", + "@turf/invariant": "^6.5.0" + }, + "funding": { + "url": "https://opencollective.com/turf" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@turf/helpers": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/helpers/-/helpers-6.5.0.tgz", + "integrity": "sha512-VbI1dV5bLFzohYYdgqwikdMVpe7pJ9X3E+dlr425wa2/sMJqYDhTO++ec38/pcPvPE6oD9WEEeU3Xu3gza+VPw==", + "peer": true, + "funding": { + "url": "https://opencollective.com/turf" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@turf/intersect": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/intersect/-/intersect-6.5.0.tgz", + "integrity": "sha512-2legGJeKrfFkzntcd4GouPugoqPUjexPZnOvfez+3SfIMrHvulw8qV8u7pfVyn2Yqs53yoVCEjS5sEpvQ5YRQg==", + "peer": true, + "dependencies": { + "@turf/helpers": "^6.5.0", + "@turf/invariant": "^6.5.0", + "polygon-clipping": "^0.15.3" + }, + "funding": { + "url": "https://opencollective.com/turf" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@turf/invariant": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/invariant/-/invariant-6.5.0.tgz", + "integrity": "sha512-Wv8PRNCtPD31UVbdJE/KVAWKe7l6US+lJItRR/HOEW3eh+U/JwRCSUl/KZ7bmjM/C+zLNoreM2TU6OoLACs4eg==", + "peer": true, + "dependencies": { + "@turf/helpers": "^6.5.0" + }, + "funding": { + "url": "https://opencollective.com/turf" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@turf/kinks": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/kinks/-/kinks-6.5.0.tgz", + "integrity": "sha512-ViCngdPt1eEL7hYUHR2eHR662GvCgTc35ZJFaNR6kRtr6D8plLaDju0FILeFFWSc+o8e3fwxZEJKmFj9IzPiIQ==", + "peer": true, + "dependencies": { + "@turf/helpers": "^6.5.0" + }, + "funding": { + "url": "https://opencollective.com/turf" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@turf/line-intersect": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/line-intersect/-/line-intersect-6.5.0.tgz", + "integrity": "sha512-CS6R1tZvVQD390G9Ea4pmpM6mJGPWoL82jD46y0q1KSor9s6HupMIo1kY4Ny+AEYQl9jd21V3Scz20eldpbTVA==", + "peer": true, + "dependencies": { + "@turf/helpers": "^6.5.0", + "@turf/invariant": "^6.5.0", + "@turf/line-segment": "^6.5.0", + "@turf/meta": "^6.5.0", + "geojson-rbush": "3.x" + }, + "funding": { + "url": "https://opencollective.com/turf" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@turf/line-segment": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/line-segment/-/line-segment-6.5.0.tgz", + "integrity": "sha512-jI625Ho4jSuJESNq66Mmi290ZJ5pPZiQZruPVpmHkUw257Pew0alMmb6YrqYNnLUuiVVONxAAKXUVeeUGtycfw==", + "peer": true, + "dependencies": { + "@turf/helpers": "^6.5.0", + "@turf/invariant": "^6.5.0", + "@turf/meta": "^6.5.0" + }, + "funding": { + "url": "https://opencollective.com/turf" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@turf/meta": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/meta/-/meta-6.5.0.tgz", + "integrity": "sha512-RrArvtsV0vdsCBegoBtOalgdSOfkBrTJ07VkpiCnq/491W67hnMWmDu7e6Ztw0C3WldRYTXkg3SumfdzZxLBHA==", + "peer": true, + "dependencies": { + "@turf/helpers": "^6.5.0" + }, + "funding": { + "url": "https://opencollective.com/turf" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@turf/point-to-line-distance": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/point-to-line-distance/-/point-to-line-distance-6.5.0.tgz", + "integrity": "sha512-opHVQ4vjUhNBly1bob6RWy+F+hsZDH9SA0UW36pIRzfpu27qipU18xup0XXEePfY6+wvhF6yL/WgCO2IbrLqEA==", + "peer": true, + "dependencies": { + "@turf/bearing": "^6.5.0", + "@turf/distance": "^6.5.0", + "@turf/helpers": "^6.5.0", + "@turf/invariant": "^6.5.0", + "@turf/meta": "^6.5.0", + "@turf/projection": "^6.5.0", + "@turf/rhumb-bearing": "^6.5.0", + "@turf/rhumb-distance": "^6.5.0" + }, + "funding": { + "url": "https://opencollective.com/turf" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@turf/polygon-to-line": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/polygon-to-line/-/polygon-to-line-6.5.0.tgz", + "integrity": "sha512-5p4n/ij97EIttAq+ewSnKt0ruvuM+LIDzuczSzuHTpq4oS7Oq8yqg5TQ4nzMVuK41r/tALCk7nAoBuw3Su4Gcw==", + "peer": true, + "dependencies": { + "@turf/helpers": "^6.5.0", + "@turf/invariant": "^6.5.0" + }, + "funding": { + "url": "https://opencollective.com/turf" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@turf/projection": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/projection/-/projection-6.5.0.tgz", + "integrity": "sha512-/Pgh9mDvQWWu8HRxqpM+tKz8OzgauV+DiOcr3FCjD6ubDnrrmMJlsf6fFJmggw93mtVPrZRL6yyi9aYCQBOIvg==", + "peer": true, + "dependencies": { + "@turf/clone": "^6.5.0", + "@turf/helpers": "^6.5.0", + "@turf/meta": "^6.5.0" + }, + "funding": { + "url": "https://opencollective.com/turf" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@turf/rhumb-bearing": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/rhumb-bearing/-/rhumb-bearing-6.5.0.tgz", + "integrity": "sha512-jMyqiMRK4hzREjQmnLXmkJ+VTNTx1ii8vuqRwJPcTlKbNWfjDz/5JqJlb5NaFDcdMpftWovkW5GevfnuzHnOYA==", + "peer": true, + "dependencies": { + "@turf/helpers": "^6.5.0", + "@turf/invariant": "^6.5.0" + }, + "funding": { + "url": "https://opencollective.com/turf" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@turf/rhumb-distance": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/rhumb-distance/-/rhumb-distance-6.5.0.tgz", + "integrity": "sha512-oKp8KFE8E4huC2Z1a1KNcFwjVOqa99isxNOwfo4g3SUABQ6NezjKDDrnvC4yI5YZ3/huDjULLBvhed45xdCrzg==", + "peer": true, + "dependencies": { + "@turf/helpers": "^6.5.0", + "@turf/invariant": "^6.5.0" + }, + "funding": { + "url": "https://opencollective.com/turf" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@types/archiver": { + "version": "5.3.4", + "resolved": "https://registry.npmjs.org/@types/archiver/-/archiver-5.3.4.tgz", + "integrity": "sha512-Lj7fLBIMwYFgViVVZHEdExZC3lVYsl+QL0VmdNdIzGZH544jHveYWij6qdnBgJQDnR7pMKliN9z2cPZFEbhyPw==", + "extraneous": true, + "dependencies": { + "@types/readdir-glob": "*" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@types/async": { + "version": "3.2.24", + "resolved": "https://registry.npmjs.org/@types/async/-/async-3.2.24.tgz", + "integrity": "sha512-8iHVLHsCCOBKjCF2KwFe0p9Z3rfM9mL+sSP8btyR5vTjJRAqpBYD28/ZLgXPf0pjG1VxOvtCV/BgXkQbpSe8Hw==", + "extraneous": true, + "license": "MIT" + }, + "node_modules/@ngageoint/mage.service/node_modules/@types/body-parser": { + "version": "1.19.5", + "resolved": "https://registry.npmjs.org/@types/body-parser/-/body-parser-1.19.5.tgz", + "integrity": "sha512-fB3Zu92ucau0iQ0JMCFQE7b/dv8Ot07NI3KaZIkIUNXq82k4eBAqUaneXfleGY9JWskeS9y+u0nXMyspcuQrCg==", + "peer": true, + "dependencies": { + "@types/connect": "*", + "@types/node": "*" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@types/bson": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/@types/bson/-/bson-1.0.11.tgz", + "integrity": "sha512-j+UcCWI+FsbI5/FQP/Kj2CXyplWAz39ktHFkXk84h7dNblKRSoNJs95PZFRd96NQGqsPEPgeclqnznWZr14ZDA==", + "extraneous": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@types/busboy": { + "version": "1.5.4", + "resolved": "https://registry.npmjs.org/@types/busboy/-/busboy-1.5.4.tgz", + "integrity": "sha512-kG7WrUuAKK0NoyxfQHsVE6j1m01s6kMma64E+OZenQABMQyTJop1DumUWcLwAQ2JzpefU7PDYoRDKl8uZosFjw==", + "extraneous": true, + "license": "MIT", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@types/chai": { + "version": "4.3.20", + "resolved": "https://registry.npmjs.org/@types/chai/-/chai-4.3.20.tgz", + "integrity": "sha512-/pC9HAB5I/xMlc5FP77qjCnI16ChlJfW0tGa0IUcFn38VJrTV6DeZ60NU5KZBtaOZqjdpwTWohz5HU1RrhiYxQ==", + "extraneous": true, + "license": "MIT" + }, + "node_modules/@ngageoint/mage.service/node_modules/@types/chai-as-promised": { + "version": "7.1.8", + "resolved": "https://registry.npmjs.org/@types/chai-as-promised/-/chai-as-promised-7.1.8.tgz", + "integrity": "sha512-ThlRVIJhr69FLlh6IctTXFkmhtP3NpMZ2QGq69StYLyKZFp/HOp1VdKZj7RvfNWYYcJ1xlbLGLLWj1UvP5u/Gw==", + "extraneous": true, + "license": "MIT", + "dependencies": { + "@types/chai": "*" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@types/connect": { + "version": "3.4.38", + "resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.38.tgz", + "integrity": "sha512-K6uROf1LD88uDQqJCktA4yzL1YYAK6NgfsI0v/mTgyPKWsX1CnJ0XPSDhViejru1GcRkLWb8RlzFYJRqGUbaug==", + "peer": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@types/cookiejar": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@types/cookiejar/-/cookiejar-2.1.5.tgz", + "integrity": "sha512-he+DHOWReW0nghN24E1WUqM0efK4kI9oTqDm6XmK8ZPe2djZ90BSNdGnIyCLzCPw7/pogPlGbzI2wHGGmi4O/Q==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/@types/debug": { + "version": "4.1.12", + "resolved": "https://registry.npmjs.org/@types/debug/-/debug-4.1.12.tgz", + "integrity": "sha512-vIChWdVG3LG1SMxEvI/AK+FWJthlrqlTu7fbrlywTkkaONwk/UAGaULXRlf8vkzFBLVm0zkMdCquhL5aOjhXPQ==", + "peer": true, + "dependencies": { + "@types/ms": "*" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@types/deep-equal": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/@types/deep-equal/-/deep-equal-1.0.4.tgz", + "integrity": "sha512-tqdiS4otQP4KmY0PR3u6KbZ5EWvhNdUoS/jc93UuK23C220lOZ/9TvjfxdPcKvqwwDVtmtSCrnr0p/2dirAxkA==", + "extraneous": true, + "license": "MIT" + }, + "node_modules/@ngageoint/mage.service/node_modules/@types/express": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/@types/express/-/express-4.17.21.tgz", + "integrity": "sha512-ejlPM315qwLpaQlQDTjPdsUFSc6ZsP4AN6AlWnogPjQ7CVi7PYF3YVz+CY3jE2pwYf7E/7HlDAN0rV2GxTG0HQ==", + "license": "MIT", + "peer": true, + "dependencies": { + "@types/body-parser": "*", + "@types/express-serve-static-core": "^4.17.33", + "@types/qs": "*", + "@types/serve-static": "*" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@types/express-serve-static-core": { + "version": "4.19.6", + "resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.19.6.tgz", + "integrity": "sha512-N4LZ2xG7DatVqhCZzOGb1Yi5lMbXSZcmdLDe9EzSndPV2HpWYWzRbaerl2n27irrm94EPpprqa8KpskPT085+A==", + "license": "MIT", + "peer": true, + "dependencies": { + "@types/node": "*", + "@types/qs": "*", + "@types/range-parser": "*", + "@types/send": "*" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@types/fs-extra": { + "version": "8.1.5", + "resolved": "https://registry.npmjs.org/@types/fs-extra/-/fs-extra-8.1.5.tgz", + "integrity": "sha512-0dzKcwO+S8s2kuF5Z9oUWatQJj5Uq/iqphEtE3GQJVRRYm/tD1LglU2UnXi2A8jLq5umkGouOXOR9y0n613ZwQ==", + "extraneous": true, + "license": "MIT", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@types/geojson": { + "version": "7946.0.16", + "resolved": "https://registry.npmjs.org/@types/geojson/-/geojson-7946.0.16.tgz", + "integrity": "sha512-6C8nqWur3j98U6+lXDfTUWIfgvZU+EumvpHKcYjujKH7woYyLj2sUmff0tRhrqM7BohUw7Pz3ZB1jj2gW9Fvmg==", + "license": "MIT", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/@types/http-errors": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/@types/http-errors/-/http-errors-2.0.4.tgz", + "integrity": "sha512-D0CFMMtydbJAegzOyHjtiKPLlvnm3iTZyZRSZoLq2mRhDdmLfIWOCYPfQJ4cu2erKghU++QvjcUjp/5h7hESpA==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/@types/json-schema": { + "version": "7.0.15", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.15.tgz", + "integrity": "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==", + "license": "MIT", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/@types/json2csv": { + "version": "4.5.1", + "resolved": "https://registry.npmjs.org/@types/json2csv/-/json2csv-4.5.1.tgz", + "integrity": "sha512-sZbRdrTddxYzhydkC5eMEbRXU8pjcV8Zyxf2If7YO3GVxWY18fs0P5YJyjRfkMKTAsA8ynTRQWhvWbHhBzBFVA==", + "extraneous": true, + "license": "MIT", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@types/ldapjs": { + "version": "2.2.5", + "resolved": "https://registry.npmjs.org/@types/ldapjs/-/ldapjs-2.2.5.tgz", + "integrity": "sha512-Lv/nD6QDCmcT+V1vaTRnEKE8UgOilVv5pHcQuzkU1LcRe4mbHHuUo/KHi0LKrpdHhQY8FJzryF38fcVdeUIrzg==", + "peer": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@types/lodash": { + "version": "4.17.16", + "resolved": "https://registry.npmjs.org/@types/lodash/-/lodash-4.17.16.tgz", + "integrity": "sha512-HX7Em5NYQAXKW+1T+FiuG27NGwzJfCX3s1GjOa7ujxZa52kjJLOr4FUxT+giF6Tgxv1e+/czV/iTtBw27WTU9g==", + "extraneous": true, + "license": "MIT" + }, + "node_modules/@ngageoint/mage.service/node_modules/@types/methods": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/@types/methods/-/methods-1.1.4.tgz", + "integrity": "sha512-ymXWVrDiCxTBE3+RIrrP533E70eA+9qu7zdWoHuOmGujkYtzf4HQF96b8nwHLqhuf4ykX61IGRIB38CC6/sImQ==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/@types/mime": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/@types/mime/-/mime-1.3.5.tgz", + "integrity": "sha512-/pyBZWSLD2n0dcHE3hq8s8ZvcETHtEuF+3E7XVt0Ig2nvsVQXdghHVcEkIWjy9A0wKfTn97a/PSDYohKIlnP/w==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/@types/mime-types": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/@types/mime-types/-/mime-types-2.1.4.tgz", + "integrity": "sha512-lfU4b34HOri+kAY5UheuFMWPDOI+OPceBSHZKp69gEyTL/mmJ4cnU6Y/rlme3UL3GyOn6Y42hyIEw0/q8sWx5w==", + "license": "MIT", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/@types/mocha": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-7.0.2.tgz", + "integrity": "sha512-ZvO2tAcjmMi8V/5Z3JsyofMe3hasRcaw88cto5etSVMwVQfeivGAlEYmaQgceUSVYFofVjT+ioHsATjdWcFt1w==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/@types/ms": { + "version": "0.7.34", + "resolved": "https://registry.npmjs.org/@types/ms/-/ms-0.7.34.tgz", + "integrity": "sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/@types/multer": { + "version": "1.4.12", + "resolved": "https://registry.npmjs.org/@types/multer/-/multer-1.4.12.tgz", + "integrity": "sha512-pQ2hoqvXiJt2FP9WQVLPRO+AmiIm/ZYkavPlIQnx282u4ZrVdztx0pkh3jjpQt0Kz+YI0YhSG264y08UJKoUQg==", + "extraneous": true, + "license": "MIT", + "dependencies": { + "@types/express": "*" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@types/node": { + "version": "18.19.80", + "resolved": "https://registry.npmjs.org/@types/node/-/node-18.19.80.tgz", + "integrity": "sha512-kEWeMwMeIvxYkeg1gTc01awpwLbfMRZXdIhwRcakd/KlK53jmRC26LqcbIt7fnAQTu5GzlnWmzA3H6+l1u6xxQ==", + "license": "MIT", + "peer": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@types/node-fetch": { + "version": "2.6.12", + "resolved": "https://registry.npmjs.org/@types/node-fetch/-/node-fetch-2.6.12.tgz", + "integrity": "sha512-8nneRWKCg3rMtF69nLQJnOYUcbafYeFSjqkw3jCRLsqkWFlHaoQrr5mXmofFGOx3DKn7UfmBMyov8ySvLRVldA==", + "extraneous": true, + "license": "MIT", + "dependencies": { + "@types/node": "*", + "form-data": "^4.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@types/passport": { + "version": "1.0.17", + "resolved": "https://registry.npmjs.org/@types/passport/-/passport-1.0.17.tgz", + "integrity": "sha512-aciLyx+wDwT2t2/kJGJR2AEeBz0nJU4WuRX04Wu9Dqc5lSUtwu0WERPHYsLhF9PtseiAMPBGNUOtFjxZ56prsg==", + "license": "MIT", + "peer": true, + "dependencies": { + "@types/express": "*" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@types/passport-strategy": { + "version": "0.2.38", + "resolved": "https://registry.npmjs.org/@types/passport-strategy/-/passport-strategy-0.2.38.tgz", + "integrity": "sha512-GC6eMqqojOooq993Tmnmp7AUTbbQSgilyvpCYQjT+H6JfG/g6RGc7nXEniZlp0zyKJ0WUdOiZWLBZft9Yug1uA==", + "peer": true, + "dependencies": { + "@types/express": "*", + "@types/passport": "*" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@types/proj4": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/@types/proj4/-/proj4-2.5.2.tgz", + "integrity": "sha512-/Nmfn9p08yaYw6xo5f2b0L+2oHk2kZeOkp5v+4VCeNfq+ETlLQbmHmC97/pjDIEZy8jxwz7pdPpwNzDHM5cuJw==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/@types/qs": { + "version": "6.9.15", + "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.15.tgz", + "integrity": "sha512-uXHQKES6DQKKCLh441Xv/dwxOq1TVS3JPUMlEqoEglvlhR6Mxnlew/Xq/LRVHpLyk7iK3zODe1qYHIMltO7XGg==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/@types/range-parser": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/@types/range-parser/-/range-parser-1.2.7.tgz", + "integrity": "sha512-hKormJbkJqzQGhziax5PItDUTMAM9uE2XXQmM37dyd4hVM+5aVl7oVxMVUiVQn2oCQFN/LKCZdvSM0pFRqbSmQ==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/@types/readdir-glob": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/@types/readdir-glob/-/readdir-glob-1.1.5.tgz", + "integrity": "sha512-raiuEPUYqXu+nvtY2Pe8s8FEmZ3x5yAH4VkLdihcPdalvsHltomrRC9BzuStrJ9yk06470hS0Crw0f1pXqD+Hg==", + "extraneous": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@types/semver": { + "version": "7.5.8", + "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.5.8.tgz", + "integrity": "sha512-I8EUhyrgfLrcTkzV3TSsGyl1tSuPrEDzr0yd5m90UgNxQkyDXULk3b6MlQqTCpZpNtWe1K0hzclnZkTcLBe2UQ==", + "extraneous": true, + "license": "MIT" + }, + "node_modules/@ngageoint/mage.service/node_modules/@types/send": { + "version": "0.17.4", + "resolved": "https://registry.npmjs.org/@types/send/-/send-0.17.4.tgz", + "integrity": "sha512-x2EM6TJOybec7c52BX0ZspPodMsQUd5L6PRwOunVyVUhXiBSKf3AezDL8Dgvgt5o0UfKNfuA0eMLr2wLT4AiBA==", + "peer": true, + "dependencies": { + "@types/mime": "^1", + "@types/node": "*" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@types/serve-static": { + "version": "1.15.7", + "resolved": "https://registry.npmjs.org/@types/serve-static/-/serve-static-1.15.7.tgz", + "integrity": "sha512-W8Ym+h8nhuRwaKPaDw34QUkwsGi6Rc4yYqvKFo5rm2FUEhCFbzVWrxXUxuKK8TASjWsysJY0nsmNCGhCOIsrOw==", + "peer": true, + "dependencies": { + "@types/http-errors": "*", + "@types/node": "*", + "@types/send": "*" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@types/sinon": { + "version": "9.0.11", + "resolved": "https://registry.npmjs.org/@types/sinon/-/sinon-9.0.11.tgz", + "integrity": "sha512-PwP4UY33SeeVKodNE37ZlOsR9cReypbMJOhZ7BVE0lB+Hix3efCOxiJWiE5Ia+yL9Cn2Ch72EjFTRze8RZsNtg==", + "extraneous": true, + "license": "MIT", + "dependencies": { + "@types/sinonjs__fake-timers": "*" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@types/sinon-chai": { + "version": "3.2.12", + "resolved": "https://registry.npmjs.org/@types/sinon-chai/-/sinon-chai-3.2.12.tgz", + "integrity": "sha512-9y0Gflk3b0+NhQZ/oxGtaAJDvRywCa5sIyaVnounqLvmf93yBF4EgIRspePtkMs3Tr844nCclYMlcCNmLCvjuQ==", + "extraneous": true, + "license": "MIT", + "dependencies": { + "@types/chai": "*", + "@types/sinon": "*" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@types/sinonjs__fake-timers": { + "version": "8.1.5", + "resolved": "https://registry.npmjs.org/@types/sinonjs__fake-timers/-/sinonjs__fake-timers-8.1.5.tgz", + "integrity": "sha512-mQkU2jY8jJEF7YHjHvsQO8+3ughTL1mcnn96igfhONmR+fUPSKIkefQYpSe8bsly2Ep7oQbn/6VG5/9/0qcArQ==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/@types/superagent": { + "version": "8.1.9", + "resolved": "https://registry.npmjs.org/@types/superagent/-/superagent-8.1.9.tgz", + "integrity": "sha512-pTVjI73witn+9ILmoJdajHGW2jkSaOzhiFYF1Rd3EQ94kymLqB9PjD9ISg7WaALC7+dCHT0FGe9T2LktLq/3GQ==", + "extraneous": true, + "license": "MIT", + "dependencies": { + "@types/cookiejar": "^2.1.5", + "@types/methods": "^1.1.4", + "@types/node": "*", + "form-data": "^4.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@types/supertest": { + "version": "2.0.16", + "resolved": "https://registry.npmjs.org/@types/supertest/-/supertest-2.0.16.tgz", + "integrity": "sha512-6c2ogktZ06tr2ENoZivgm7YnprnhYE4ZoXGMY+oA7IuAf17M8FWvujXZGmxLv8y0PTyts4x5A+erSwVUFA8XSg==", + "extraneous": true, + "dependencies": { + "@types/superagent": "*" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@types/uniqid": { + "version": "5.3.4", + "resolved": "https://registry.npmjs.org/@types/uniqid/-/uniqid-5.3.4.tgz", + "integrity": "sha512-AgC+o3/8/QEHuU3w5w2jZ8auQtjSJ/s8G8RfEk9CYLogK1RGXqxhHH0wOEAu8uHXjvj8oh/dRtfgok4IHKxh/Q==", + "extraneous": true, + "license": "MIT" + }, + "node_modules/@ngageoint/mage.service/node_modules/@types/webidl-conversions": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/@types/webidl-conversions/-/webidl-conversions-7.0.3.tgz", + "integrity": "sha512-CiJJvcRtIgzadHCYXw7dqEnMNRjhGZlYK05Mj9OyktqV8uVT8fD2BFOB7S1uwBE3Kj2Z+4UyPmFw/Ixgw/LAlA==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/@types/whatwg-url": { + "version": "8.2.2", + "resolved": "https://registry.npmjs.org/@types/whatwg-url/-/whatwg-url-8.2.2.tgz", + "integrity": "sha512-FtQu10RWgn3D9U4aazdwIE2yzphmTJREDqNdODHrbrZmmMqI0vMheC/6NE/J1Yveaj8H+ela+YwWTjq5PGmuhA==", + "peer": true, + "dependencies": { + "@types/node": "*", + "@types/webidl-conversions": "*" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@types/xml-crypto": { + "version": "1.4.6", + "resolved": "https://registry.npmjs.org/@types/xml-crypto/-/xml-crypto-1.4.6.tgz", + "integrity": "sha512-A6jEW2FxLZo1CXsRWnZHUX2wzR3uDju2Bozt6rDbSmU/W8gkilaVbwFEVN0/NhnUdMVzwYobWtM6bU1QJJFb7Q==", + "peer": true, + "dependencies": { + "@types/node": "*", + "xpath": "0.0.27" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@types/xml-crypto/node_modules/xpath": { + "version": "0.0.27", + "resolved": "https://registry.npmjs.org/xpath/-/xpath-0.0.27.tgz", + "integrity": "sha512-fg03WRxtkCV6ohClePNAECYsmpKKTv5L8y/X3Dn1hQrec3POx2jHZ/0P2qQ6HvsrU1BmeqXcof3NGGueG6LxwQ==", + "peer": true, + "engines": { + "node": ">=0.6.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@types/xml-encryption": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/@types/xml-encryption/-/xml-encryption-1.2.4.tgz", + "integrity": "sha512-I69K/WW1Dv7j6O3jh13z0X8sLWJRXbu5xnHDl9yHzUNDUBtUoBY058eb5s+x/WG6yZC1h8aKdI2EoyEPjyEh+Q==", + "peer": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@types/xml2js": { + "version": "0.4.14", + "resolved": "https://registry.npmjs.org/@types/xml2js/-/xml2js-0.4.14.tgz", + "integrity": "sha512-4YnrRemBShWRO2QjvUin8ESA41rH+9nQGLUGZV/1IDhi3SL9OhdpNC/MrulTWuptXKwhx/aDxE7toV0f/ypIXQ==", + "peer": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@typescript-eslint/eslint-plugin": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-6.21.0.tgz", + "integrity": "sha512-oy9+hTPCUFpngkEZUSzbf9MxI65wbKFoQYsgPdILTfbUldp5ovUuphZVe4i30emU9M/kP+T64Di0mxl7dSw3MA==", + "extraneous": true, + "license": "MIT", + "dependencies": { + "@eslint-community/regexpp": "^4.5.1", + "@typescript-eslint/scope-manager": "6.21.0", + "@typescript-eslint/type-utils": "6.21.0", + "@typescript-eslint/utils": "6.21.0", + "@typescript-eslint/visitor-keys": "6.21.0", + "debug": "^4.3.4", + "graphemer": "^1.4.0", + "ignore": "^5.2.4", + "natural-compare": "^1.4.0", + "semver": "^7.5.4", + "ts-api-utils": "^1.0.1" + }, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "@typescript-eslint/parser": "^6.0.0 || ^6.0.0-alpha", + "eslint": "^7.0.0 || ^8.0.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@typescript-eslint/parser": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-6.21.0.tgz", + "integrity": "sha512-tbsV1jPne5CkFQCgPBcDOt30ItF7aJoZL997JSF7MhGQqOeT3svWRYxiqlfA5RUdlHN6Fi+EI9bxqbdyAUZjYQ==", + "extraneous": true, + "license": "BSD-2-Clause", + "dependencies": { + "@typescript-eslint/scope-manager": "6.21.0", + "@typescript-eslint/types": "6.21.0", + "@typescript-eslint/typescript-estree": "6.21.0", + "@typescript-eslint/visitor-keys": "6.21.0", + "debug": "^4.3.4" + }, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^7.0.0 || ^8.0.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@typescript-eslint/scope-manager": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-6.21.0.tgz", + "integrity": "sha512-OwLUIWZJry80O99zvqXVEioyniJMa+d2GrqpUTqi5/v5D5rOrppJVBPa0yKCblcigC0/aYAzxxqQ1B+DS2RYsg==", + "extraneous": true, + "license": "MIT", + "dependencies": { + "@typescript-eslint/types": "6.21.0", + "@typescript-eslint/visitor-keys": "6.21.0" + }, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@typescript-eslint/type-utils": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-6.21.0.tgz", + "integrity": "sha512-rZQI7wHfao8qMX3Rd3xqeYSMCL3SoiSQLBATSiVKARdFGCYSRvmViieZjqc58jKgs8Y8i9YvVVhRbHSTA4VBag==", + "extraneous": true, + "license": "MIT", + "dependencies": { + "@typescript-eslint/typescript-estree": "6.21.0", + "@typescript-eslint/utils": "6.21.0", + "debug": "^4.3.4", + "ts-api-utils": "^1.0.1" + }, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^7.0.0 || ^8.0.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@typescript-eslint/types": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-6.21.0.tgz", + "integrity": "sha512-1kFmZ1rOm5epu9NZEZm1kckCDGj5UJEf7P1kliH4LKu/RkwpsfqqGmY2OOcUs18lSlQBKLDYBOGxRVtrMN5lpg==", + "extraneous": true, + "license": "MIT", + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@typescript-eslint/typescript-estree": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-6.21.0.tgz", + "integrity": "sha512-6npJTkZcO+y2/kr+z0hc4HwNfrrP4kNYh57ek7yCNlrBjWQ1Y0OS7jiZTkgumrvkX5HkEKXFZkkdFNkaW2wmUQ==", + "extraneous": true, + "license": "BSD-2-Clause", + "dependencies": { + "@typescript-eslint/types": "6.21.0", + "@typescript-eslint/visitor-keys": "6.21.0", + "debug": "^4.3.4", + "globby": "^11.1.0", + "is-glob": "^4.0.3", + "minimatch": "9.0.3", + "semver": "^7.5.4", + "ts-api-utils": "^1.0.1" + }, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@typescript-eslint/utils": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-6.21.0.tgz", + "integrity": "sha512-NfWVaC8HP9T8cbKQxHcsJBY5YE1O33+jpMwN45qzWWaPDZgLIbo12toGMWnmhvCpd3sIxkpDw3Wv1B3dYrbDQQ==", + "extraneous": true, + "license": "MIT", + "dependencies": { + "@eslint-community/eslint-utils": "^4.4.0", + "@types/json-schema": "^7.0.12", + "@types/semver": "^7.5.0", + "@typescript-eslint/scope-manager": "6.21.0", + "@typescript-eslint/types": "6.21.0", + "@typescript-eslint/typescript-estree": "6.21.0", + "semver": "^7.5.4" + }, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^7.0.0 || ^8.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@typescript-eslint/visitor-keys": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-6.21.0.tgz", + "integrity": "sha512-JJtkDduxLi9bivAB+cYOVMtbkqdPOhZ+ZI5LC47MIRrDV4Yn2o+ZnW10Nkmr28xRpSpdJ6Sm42Hjf2+REYXm0A==", + "extraneous": true, + "license": "MIT", + "dependencies": { + "@typescript-eslint/types": "6.21.0", + "eslint-visitor-keys": "^3.4.1" + }, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/@ungap/structured-clone": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/@ungap/structured-clone/-/structured-clone-1.3.0.tgz", + "integrity": "sha512-WmoN8qaIAo7WTYWbAZuG8PYEhn5fkz7dZrqTBZ7dtt//lL2Gwms1IcnQ5yHqjDfX8Ft5j4YzDM23f87zBfDe9g==", + "extraneous": true, + "license": "ISC" + }, + "node_modules/@ngageoint/mage.service/node_modules/@xmldom/xmldom": { + "version": "0.9.8", + "resolved": "https://registry.npmjs.org/@xmldom/xmldom/-/xmldom-0.9.8.tgz", + "integrity": "sha512-p96FSY54r+WJ50FIOsCOjyj/wavs8921hG5+kVMmZgKcvIKxMXHTrjNJvRgWa/zuX3B6t2lijLNFaOyuxUH+2A==", + "license": "MIT", + "peer": true, + "engines": { + "node": ">=14.6" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/abstract-logging": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/abstract-logging/-/abstract-logging-2.0.1.tgz", + "integrity": "sha512-2BjRTZxTPvheOvGbBslFSYOUkr+SjPtOnrLP33f+VIWLzezQpZcqVg7ja3L4dBXmzzgwT+a029jRx5PCi3JuiA==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/accepts": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz", + "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==", + "peer": true, + "dependencies": { + "mime-types": "~2.1.34", + "negotiator": "0.6.3" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/acorn": { + "version": "8.12.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.12.0.tgz", + "integrity": "sha512-RTvkC4w+KNXrM39/lWCUaG0IbRkWdCv7W/IOW9oU6SawyxulvkQy5HQPVTKxEjczcUvapcrw3cFx/60VN/NRNw==", + "extraneous": true, + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/acorn-jsx": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", + "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", + "extraneous": true, + "peerDependencies": { + "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/adm-zip": { + "version": "0.5.16", + "resolved": "https://registry.npmjs.org/adm-zip/-/adm-zip-0.5.16.tgz", + "integrity": "sha512-TGw5yVi4saajsSEgz25grObGHEUaDrniwvA2qwSC060KfqGPdglhvPMA2lPIoxs3PQIItj2iag35fONcQqgUaQ==", + "license": "MIT", + "peer": true, + "engines": { + "node": ">=12.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/agent-base": { + "version": "7.1.3", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.3.tgz", + "integrity": "sha512-jRR5wdylq8CkOe6hei19GGZnxM6rBGwFl3Bg0YItGDimvjGtAvdZk4Pu6Cl4u4Igsws4a1fd1Vq3ezrhn4KmFw==", + "extraneous": true, + "license": "MIT", + "engines": { + "node": ">= 14" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/aggregate-error": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-4.0.1.tgz", + "integrity": "sha512-0poP0T7el6Vq3rstR8Mn4V/IQrpBLO6POkUSrN7RhyY+GF/InCFShQzsQ39T25gkHhLgSLByyAz+Kjb+c2L98w==", + "extraneous": true, + "dependencies": { + "clean-stack": "^4.0.0", + "indent-string": "^5.0.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "extraneous": true, + "license": "MIT", + "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" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/ansi-colors": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.3.tgz", + "integrity": "sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==", + "extraneous": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/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==", + "optional": true, + "peer": true, + "dependencies": { + "type-fest": "^0.21.3" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/ansi-escapes/node_modules/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==", + "optional": true, + "peer": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "optional": true, + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "optional": true, + "peer": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/anymatch": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", + "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", + "extraneous": true, + "license": "ISC", + "dependencies": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/append-field": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/append-field/-/append-field-1.0.0.tgz", + "integrity": "sha512-klpgFSWLW1ZEs8svjfb7g4qWY0YS5imI82dTg+QahUvJ8YqAY0P10Uk8tTyh9ZGuYEZEMaeJYCF5BFuX552hsw==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/append-transform": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/append-transform/-/append-transform-1.0.0.tgz", + "integrity": "sha512-P009oYkeHyU742iSZJzZZywj4QRJdnTWffaKuJQLablCZ1uz6/cW4yaRgcDaoQ+uwOxxnt0gRUcwfsNP2ri0gw==", + "extraneous": true, + "dependencies": { + "default-require-extensions": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/archiver": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/archiver/-/archiver-5.3.2.tgz", + "integrity": "sha512-+25nxyyznAXF7Nef3y0EbBeqmGZgeN/BxHX29Rs39djAfaFalmQ89SE6CWyDCHzGL0yt/ycBtNOmGTW0FyGWNw==", + "license": "MIT", + "peer": true, + "dependencies": { + "archiver-utils": "^2.1.0", + "async": "^3.2.4", + "buffer-crc32": "^0.2.1", + "readable-stream": "^3.6.0", + "readdir-glob": "^1.1.2", + "tar-stream": "^2.2.0", + "zip-stream": "^4.1.0" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/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==", + "peer": true, + "dependencies": { + "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" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/archiver-utils/node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/archiver-utils/node_modules/readable-stream": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", + "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", + "peer": true, + "dependencies": { + "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" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/archiver-utils/node_modules/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==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/archiver-utils/node_modules/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==", + "peer": true, + "dependencies": { + "safe-buffer": "~5.1.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/archy": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/archy/-/archy-1.0.0.tgz", + "integrity": "sha512-Xg+9RwCg/0p32teKdGMPTPnVXKD0w3DfHnFTficozsAgsvq2XenPJq/MYpzzQ/v8zrOyJn6Ds39VA4JIDwFfqw==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "peer": true, + "dependencies": { + "sprintf-js": "~1.0.2" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/array-buffer-byte-length": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.1.tgz", + "integrity": "sha512-ahC5W1xgou+KTXix4sAO8Ki12Q+jf4i0+tmk3sC+zgcynshkHxzpXdImBehiUYKKKDwvfFiJl1tZt6ewscS1Mg==", + "extraneous": true, + "dependencies": { + "call-bind": "^1.0.5", + "is-array-buffer": "^3.0.4" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/array-flatten": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", + "integrity": "sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/array-from": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/array-from/-/array-from-2.1.1.tgz", + "integrity": "sha512-GQTc6Uupx1FCavi5mPzBvVT7nEOeWMmUA9P95wpfpW1XwMSKs+KaymD5C2Up7KAUKg/mYwbsUYzdZWcoajlNZg==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/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==", + "extraneous": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/arraybuffer.prototype.slice": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.3.tgz", + "integrity": "sha512-bMxMKAjg13EBSVscxTaYA4mRc5t1UAXa2kXiGTNfZ079HIWXEkKmkgFrh/nJqamaLSrXO5H4WFFkPEaLJWbs3A==", + "extraneous": true, + "dependencies": { + "array-buffer-byte-length": "^1.0.1", + "call-bind": "^1.0.5", + "define-properties": "^1.2.1", + "es-abstract": "^1.22.3", + "es-errors": "^1.2.1", + "get-intrinsic": "^1.2.3", + "is-array-buffer": "^3.0.4", + "is-shared-array-buffer": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/arrify": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/arrify/-/arrify-3.0.0.tgz", + "integrity": "sha512-tLkvA81vQG/XqE2mjDkGQHoOINtMHtysSnemrmoGe6PydDPMRbVugqyk4A6V/WDWEfm3l+0d8anA9r8cv/5Jaw==", + "extraneous": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/asap": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz", + "integrity": "sha512-BSHWgDSAiKs50o2Re8ppvp3seVHXSRM44cdSsT9FfNEUUZLOGWVCsiWaRPWM1Znn+mqZ1OfVZ3z3DWEzSp7hRA==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/asn1": { + "version": "0.2.6", + "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.6.tgz", + "integrity": "sha512-ix/FxPn0MDjeyJ7i/yoHGFt/EX6LyNbxSEhPPXODPL+KB0VPk86UYfL0lMdy+KCnv+fmvIzySwaK5COwqVbWTQ==", + "peer": true, + "dependencies": { + "safer-buffer": "~2.1.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/assert-never": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/assert-never/-/assert-never-1.2.1.tgz", + "integrity": "sha512-TaTivMB6pYI1kXwrFlEhLeGfOqoDNdTxjCdwRfFFkEA30Eu+k48W34nlok2EYWJfFFzqaEmichdNM7th6M5HNw==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/assert-plus": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", + "integrity": "sha512-NfJ4UzBCcQGLDlQq7nHxH+tv3kyZ0hHQqF5BO6J7tNJeP5do1llPr8dZ8zHonfhAu0PHAdMkSo+8o0wxg9lZWw==", + "peer": true, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/assertion-error": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/assertion-error/-/assertion-error-1.1.0.tgz", + "integrity": "sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw==", + "extraneous": true, + "engines": { + "node": "*" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/async": { + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/async/-/async-3.2.6.tgz", + "integrity": "sha512-htCUDlxyyCLMgaM3xXg0C0LW2xqfuQ6p05pCEIsXuyQ+a1koYKTuBMzRNwmybfLgvJDMd0r1LTn4+E0Ti6C2AA==", + "license": "MIT", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/async-lock": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/async-lock/-/async-lock-1.4.1.tgz", + "integrity": "sha512-Az2ZTpuytrtqENulXwO3GGv1Bztugx6TT37NIo7imr/Qo0gsYiGtSdBa2B6fsXhTpVZDNfu1Qn3pk531e3q+nQ==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/async-mutex": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/async-mutex/-/async-mutex-0.4.1.tgz", + "integrity": "sha512-WfoBo4E/TbCX1G95XTjbWTE3X2XLG0m1Xbv2cwOtuPdyH9CZvnaA5nCt1ucjaKEgW2A5IF71hxrRhr83Je5xjA==", + "extraneous": true, + "license": "MIT", + "dependencies": { + "tslib": "^2.4.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/available-typed-arrays": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.7.tgz", + "integrity": "sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==", + "extraneous": true, + "dependencies": { + "possible-typed-array-names": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/aws-sign2": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", + "integrity": "sha512-08kcGqnYf/YmjoRhfxyu+CLxBjUtHLXLXX/vUfx9l2LYzG3c1m61nrpyFUZI6zeS+Li/wWMMidD9KgrqtGq3mA==", + "extraneous": true, + "engines": { + "node": "*" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/aws4": { + "version": "1.13.0", + "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.13.0.tgz", + "integrity": "sha512-3AungXC4I8kKsS9PuS4JH2nc+0bVY/mjgrephHTIi8fpEeGsTHBUJeosp0Wc1myYMElmD0B3Oc4XL/HVJ4PV2g==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/axios": { + "version": "1.8.4", + "resolved": "https://registry.npmjs.org/axios/-/axios-1.8.4.tgz", + "integrity": "sha512-eBSYY4Y68NNlHbHBMdeDmKNtDgXWhQsJcGqzO3iLUM0GraQFSS9cVgPX5I9b3lbdFKyYoAEGAZF1DwhTaljNAw==", + "extraneous": true, + "license": "MIT", + "dependencies": { + "follow-redirects": "^1.15.6", + "form-data": "^4.0.0", + "proxy-from-env": "^1.1.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/b4a": { + "version": "1.6.7", + "resolved": "https://registry.npmjs.org/b4a/-/b4a-1.6.7.tgz", + "integrity": "sha512-OnAYlL5b7LEkALw87fUVafQw5rVR9RjwGd4KUwNQ6DrrNmaVaUCgLipfVlzrPQ4tWOR9P0IXGNOx50jYCCdSJg==", + "extraneous": true, + "license": "Apache-2.0" + }, + "node_modules/@ngageoint/mage.service/node_modules/babel-walk": { + "version": "3.0.0-canary-5", + "resolved": "https://registry.npmjs.org/babel-walk/-/babel-walk-3.0.0-canary-5.tgz", + "integrity": "sha512-GAwkz0AihzY5bkwIY5QDR+LvsRQgB/B+1foMPvi0FZPMl5fjD7ICiznUiBdLYMH1QYe6vqu4gWYytZOccLouFw==", + "peer": true, + "dependencies": { + "@babel/types": "^7.9.6" + }, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/backoff": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/backoff/-/backoff-2.5.0.tgz", + "integrity": "sha512-wC5ihrnUXmR2douXmXLCe5O3zg3GKIyvRi/hi58a/XyRxVI+3/yM0PYueQOZXPXQ9pxBislYkw+sF9b7C/RuMA==", + "peer": true, + "dependencies": { + "precond": "0.2" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/bare-events": { + "version": "2.5.4", + "resolved": "https://registry.npmjs.org/bare-events/-/bare-events-2.5.4.tgz", + "integrity": "sha512-+gFfDkR8pj4/TrWCGUGWmJIkBwuxPS5F+a5yWjOHQt2hHvNZd5YLzadjmDUtFmMM4y429bnKLa8bYBMHcYdnQA==", + "extraneous": true, + "license": "Apache-2.0" + }, + "node_modules/@ngageoint/mage.service/node_modules/base-64": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/base-64/-/base-64-1.0.0.tgz", + "integrity": "sha512-kwDPIFCGx0NZHog36dj+tHiwP4QMzsZ3AgMViUBKI0+V5n4U0ufTCUMhnQ04diaRI8EX/QcPfql7zlhZ7j4zgg==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/base64-js": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", + "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/base64url": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/base64url/-/base64url-3.0.1.tgz", + "integrity": "sha512-ir1UPr3dkwexU7FdV8qBBbNDRUhMmIekYMFZfi+C/sLNnRESKPl23nB9b2pltqfOQNnGzsDdId90AEtG5tCx4A==", + "peer": true, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/bcrypt-pbkdf": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", + "integrity": "sha512-qeFIXtP4MSoi6NLqO12WfqARWWuCKi2Rn/9hJLEmtB5yTNr9DqFWkJRCf2qShWzPeAMRnOgCrq0sg/KLv5ES9w==", + "extraneous": true, + "dependencies": { + "tweetnacl": "^0.14.3" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/bcryptjs": { + "version": "2.4.3", + "resolved": "https://registry.npmjs.org/bcryptjs/-/bcryptjs-2.4.3.tgz", + "integrity": "sha512-V/Hy/X9Vt7f3BbPJEi8BdVFMByHi+jNXrYkW3huaybV/kQ0KJg0Y6PkEMbn+zeT+i+SiKZ/HMqJGIIt4LZDqNQ==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/binary-extensions": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.3.0.tgz", + "integrity": "sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==", + "extraneous": true, + "license": "MIT", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/bindings": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/bindings/-/bindings-1.5.0.tgz", + "integrity": "sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==", + "optional": true, + "peer": true, + "dependencies": { + "file-uri-to-path": "1.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/bl": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz", + "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==", + "peer": true, + "dependencies": { + "buffer": "^5.5.0", + "inherits": "^2.0.4", + "readable-stream": "^3.4.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/bluebird": { + "version": "3.7.2", + "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz", + "integrity": "sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/body-parser": { + "version": "1.20.3", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.3.tgz", + "integrity": "sha512-7rAxByjUMqQ3/bHJy7D6OGXvx/MMc4IqBn/X0fcM1QUcAItpZrBEYhWGem+tzXH90c+G01ypMcYJBO9Y30203g==", + "license": "MIT", + "peer": true, + "dependencies": { + "bytes": "3.1.2", + "content-type": "~1.0.5", + "debug": "2.6.9", + "depd": "2.0.0", + "destroy": "1.2.0", + "http-errors": "2.0.0", + "iconv-lite": "0.4.24", + "on-finished": "2.4.1", + "qs": "6.13.0", + "raw-body": "2.5.2", + "type-is": "~1.6.18", + "unpipe": "1.0.0" + }, + "engines": { + "node": ">= 0.8", + "npm": "1.2.8000 || >= 1.4.16" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/body-parser/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "peer": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/body-parser/node_modules/iconv-lite": { + "version": "0.4.24", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", + "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", + "peer": true, + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/body-parser/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/bowser": { + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/bowser/-/bowser-2.11.0.tgz", + "integrity": "sha512-AlcaJBi/pqqJBIQ8U9Mcpc9i8Aqxn88Skv5d+xBX006BY5u8N3mGLHa5Lgppa7L/HfwgwLgZ6NYs+Ag6uUmJRA==", + "optional": true, + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "peer": true, + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/braces": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", + "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", + "extraneous": true, + "dependencies": { + "fill-range": "^7.1.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/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==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/bson": { + "version": "4.7.2", + "resolved": "https://registry.npmjs.org/bson/-/bson-4.7.2.tgz", + "integrity": "sha512-Ry9wCtIZ5kGqkJoi6aD8KjxFZEx78guTQDnpXWiNthsxzrxAK/i8E6pCHAIZTbaEFWcOCvbecMukfK7XUvyLpQ==", + "peer": true, + "dependencies": { + "buffer": "^5.6.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/buffer": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", + "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "peer": true, + "dependencies": { + "base64-js": "^1.3.1", + "ieee754": "^1.1.13" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/buffer-crc32": { + "version": "0.2.13", + "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", + "integrity": "sha512-VO9Ht/+p3SN7SKWqcrgEzjGbRSJYTx+Q1pTQC0wrWqHx0vpJraQ6GtHx8tvcg1rlK1byhU5gccxgOgj7B0TDkQ==", + "peer": true, + "engines": { + "node": "*" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/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": "sha512-zRpUiDwd/xk6ADqPMATG8vc9VPrkck7T07OIx0gnjmJAnHnTVXNQG3vfvWNuiZIkwu9KrKdA1iJKfsfTVxE6NA==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/buffer-from": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", + "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/busboy": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/busboy/-/busboy-1.6.0.tgz", + "integrity": "sha512-8SFQbg/0hQ9xy3UNTB0YEnsNBbWfhf7RtnzpL7TkBiTBRfrQ9Fxcnz7VJsleJpyp6rVLvXiuORqjlHi5q+PYuA==", + "peer": true, + "dependencies": { + "streamsearch": "^1.1.0" + }, + "engines": { + "node": ">=10.16.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/bytes": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", + "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", + "license": "MIT", + "peer": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/caching-transform": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/caching-transform/-/caching-transform-3.0.2.tgz", + "integrity": "sha512-Mtgcv3lh3U0zRii/6qVgQODdPA4G3zhG+jtbCWj39RXuUFTMzH0vcdMtaJS1jPowd+It2Pqr6y3NJMQqOqCE2w==", + "extraneous": true, + "dependencies": { + "hasha": "^3.0.0", + "make-dir": "^2.0.0", + "package-hash": "^3.0.0", + "write-file-atomic": "^2.4.2" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/caching-transform/node_modules/make-dir": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", + "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", + "extraneous": true, + "dependencies": { + "pify": "^4.0.1", + "semver": "^5.6.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/caching-transform/node_modules/pify": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", + "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", + "extraneous": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/caching-transform/node_modules/semver": { + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", + "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", + "extraneous": true, + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/call-bind": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.7.tgz", + "integrity": "sha512-GHTSNSYICQ7scH7sZ+M2rFopRoLh8t2bLSW6BbgrtLsahOIB5iyAVJf9GjWK3cYTDaMj4XdBpM1cA6pIS0Kv2w==", + "peer": true, + "dependencies": { + "es-define-property": "^1.0.0", + "es-errors": "^1.3.0", + "function-bind": "^1.1.2", + "get-intrinsic": "^1.2.4", + "set-function-length": "^1.2.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/call-bind-apply-helpers": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.2.tgz", + "integrity": "sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==", + "license": "MIT", + "peer": true, + "dependencies": { + "es-errors": "^1.3.0", + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/call-bound": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/call-bound/-/call-bound-1.0.4.tgz", + "integrity": "sha512-+ys997U96po4Kx/ABpBCqhA9EuxJaQWDQg7295H4hBphv3IZg0boBKuwYpt4YXp6MZ5AmZQnU/tyMTlRpaSejg==", + "license": "MIT", + "peer": true, + "dependencies": { + "call-bind-apply-helpers": "^1.0.2", + "get-intrinsic": "^1.3.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "extraneous": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/camelcase": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", + "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", + "extraneous": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/caseless": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", + "integrity": "sha512-4tYFyifaFfGacoiObjJegolkwSU4xQNGbVgUiNYVUxbQ2x2lUsFvY4hVgVzGiIe6WLOPqycWXA40l+PWsxthUw==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/cfenv": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/cfenv/-/cfenv-1.2.4.tgz", + "integrity": "sha512-jWQ+3UXZauYyOXwHpMm74C0wM7+LDQmgMxWBGchg4as7+YyTL0pyx/CZ3dEvJyZVOB4SgKATc5naJky6cd9zYw==", + "license": "Apache-2.0", + "peer": true, + "dependencies": { + "js-yaml": "4.0.x", + "ports": "1.1.x", + "underscore": "1.12.x" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/chai": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/chai/-/chai-4.5.0.tgz", + "integrity": "sha512-RITGBfijLkBddZvnn8jdqoTypxvqbOLYQkGGxXzeFjVHvudaPw0HNFD9x928/eUwYWd2dPCugVqspGALTZZQKw==", + "extraneous": true, + "license": "MIT", + "dependencies": { + "assertion-error": "^1.1.0", + "check-error": "^1.0.3", + "deep-eql": "^4.1.3", + "get-func-name": "^2.0.2", + "loupe": "^2.3.6", + "pathval": "^1.1.1", + "type-detect": "^4.1.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/chai-as-promised": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/chai-as-promised/-/chai-as-promised-7.1.2.tgz", + "integrity": "sha512-aBDHZxRzYnUYuIAIPBH2s511DjlKPzXNlXSGFC8CwmroWQLfrW0LtE1nK3MAwwNhJPa9raEjNCmRoFpG0Hurdw==", + "extraneous": true, + "license": "WTFPL", + "dependencies": { + "check-error": "^1.0.2" + }, + "peerDependencies": { + "chai": ">= 2.1.2 < 6" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/chai/node_modules/type-detect": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.1.0.tgz", + "integrity": "sha512-Acylog8/luQ8L7il+geoSxhEkazvkslg7PSNKOX59mbB9cOveP5aq9h74Y7YU8yDpJwetzQQrfIwtf4Wp4LKcw==", + "extraneous": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/chalk": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.1.tgz", + "integrity": "sha512-diHzdDKxcU+bAsUboHLPEDQiw0qEe0qd7SYUn3HgcFlWgbDcfLGswOHYeGrHKzG9z6UYf01d9VFMfZxPM1xZSg==", + "optional": true, + "peer": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/character-parser": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/character-parser/-/character-parser-2.2.0.tgz", + "integrity": "sha512-+UqJQjFEFaTAs3bNsF2j2kEN1baG/zghZbdqoYEDxGZtJo9LBzl1A+m0D4n3qKx8N2FNv8/Xp6yV9mQmBuptaw==", + "peer": true, + "dependencies": { + "is-regex": "^1.0.3" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/chardet": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz", + "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==", + "optional": true, + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/check-error": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/check-error/-/check-error-1.0.3.tgz", + "integrity": "sha512-iKEoDYaRmd1mxM90a2OEfWhjsjPpYPuQ+lMYsoxB126+t8fw7ySEO48nmDg5COTjxDI65/Y2OWpeEHk3ZOe8zg==", + "extraneous": true, + "dependencies": { + "get-func-name": "^2.0.2" + }, + "engines": { + "node": "*" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/chokidar": { + "version": "3.5.3", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", + "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", + "extraneous": true, + "funding": [ + { + "type": "individual", + "url": "https://paulmillr.com/funding/" + } + ], + "license": "MIT", + "dependencies": { + "anymatch": "~3.1.2", + "braces": "~3.0.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" + }, + "engines": { + "node": ">= 8.10.0" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/chokidar/node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "extraneous": true, + "license": "ISC", + "dependencies": { + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/chownr": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz", + "integrity": "sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==", + "optional": true, + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/clean-stack": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-4.2.0.tgz", + "integrity": "sha512-LYv6XPxoyODi36Dp976riBtSY27VmFo+MKqEU9QCCWyTrdEPDog+RWA7xQWHi6Vbp61j5c4cdzzX1NidnwtUWg==", + "extraneous": true, + "dependencies": { + "escape-string-regexp": "5.0.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/clean-stack/node_modules/escape-string-regexp": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz", + "integrity": "sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==", + "extraneous": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/cli-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz", + "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", + "optional": true, + "peer": true, + "dependencies": { + "restore-cursor": "^3.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/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==", + "optional": true, + "peer": true, + "engines": { + "node": ">= 10" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/cliui": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", + "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", + "extraneous": true, + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^7.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/coffeescript": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/coffeescript/-/coffeescript-2.7.0.tgz", + "integrity": "sha512-hzWp6TUE2d/jCcN67LrW1eh5b/rSDKQK6oD6VMLlggYVUUFexgTH9z3dNYihzX4RMhze5FTUsUmOXViJKFQR/A==", + "peer": true, + "bin": { + "cake": "bin/cake", + "coffee": "bin/coffee" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "optional": true, + "peer": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "optional": true, + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/colors": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/colors/-/colors-1.0.3.tgz", + "integrity": "sha512-pFGrxThWcWQ2MsAz6RtgeWe4NK2kUE1WfsrvvlctdII745EW9I0yflqhe7++M5LEc7bV2c/9/5zc8sFcpL0Drw==", + "peer": true, + "engines": { + "node": ">=0.1.90" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/combined-stream": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", + "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", + "peer": true, + "dependencies": { + "delayed-stream": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/commander": { + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-8.3.0.tgz", + "integrity": "sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww==", + "license": "MIT", + "peer": true, + "engines": { + "node": ">= 12" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/commondir": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", + "integrity": "sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/component-emitter": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.1.tgz", + "integrity": "sha512-T0+barUSQRTUQASh8bx02dl+DhF54GtIDY13Y3m9oWTklKbb3Wv974meRpeZ3lp1JpLVECWWNHC4vaG2XHXouQ==", + "peer": true, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/compress-commons": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/compress-commons/-/compress-commons-4.1.2.tgz", + "integrity": "sha512-D3uMHtGc/fcO1Gt1/L7i1e33VOvD4A9hfQLP+6ewd+BvG/gQ84Yh4oftEhAdjSMgBgwGL+jsppT7JYNpo6MHHg==", + "peer": true, + "dependencies": { + "buffer-crc32": "^0.2.13", + "crc32-stream": "^4.0.2", + "normalize-path": "^3.0.0", + "readable-stream": "^3.6.0" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/concat-stream": { + "version": "1.6.2", + "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz", + "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==", + "engines": [ + "node >= 0.8" + ], + "peer": true, + "dependencies": { + "buffer-from": "^1.0.0", + "inherits": "^2.0.3", + "readable-stream": "^2.2.2", + "typedarray": "^0.0.6" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/concat-stream/node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/concat-stream/node_modules/readable-stream": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", + "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", + "peer": true, + "dependencies": { + "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" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/concat-stream/node_modules/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==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/concat-stream/node_modules/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==", + "peer": true, + "dependencies": { + "safe-buffer": "~5.1.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/constantinople": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/constantinople/-/constantinople-4.0.1.tgz", + "integrity": "sha512-vCrqcSIq4//Gx74TXXCGnHpulY1dskqLTFGDmhrGxzeXL8lF8kvXv6mpNWlJj1uD4DW23D4ljAqbY4RRaaUZIw==", + "peer": true, + "dependencies": { + "@babel/parser": "^7.6.0", + "@babel/types": "^7.6.1" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/content-disposition": { + "version": "0.5.4", + "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz", + "integrity": "sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==", + "peer": true, + "dependencies": { + "safe-buffer": "5.2.1" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/content-type": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.5.tgz", + "integrity": "sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==", + "peer": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/convert-source-map": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.9.0.tgz", + "integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/cookie": { + "version": "0.7.1", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.7.1.tgz", + "integrity": "sha512-6DnInpx7SJ2AK3+CTUE/ZM0vWTUboZCegxhC2xiIydHR9jNuTAASBrfEpHhiGOZw/nX51bHt6YQl8jsGo4y/0w==", + "license": "MIT", + "peer": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/cookie-signature": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", + "integrity": "sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/cookiejar": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/cookiejar/-/cookiejar-2.1.4.tgz", + "integrity": "sha512-LDx6oHrK+PhzLKJU9j5S7/Y3jM/mUHvD/DeI1WQmJn652iPC5Y4TBzC9l+5OMOXlyTTA+SmVUPm0HQUwpD5Jqw==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/core-util-is": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", + "integrity": "sha512-3lqz5YjWTYnW6dlDa5TLaTCcShfar1e40rmcJVwCBJC6mWlFuj0eCHIElmG1g5kyuJ/GD+8Wn4FFCcz4gJPfaQ==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/coveralls": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/coveralls/-/coveralls-3.1.1.tgz", + "integrity": "sha512-+dxnG2NHncSD1NrqbSM3dn/lE57O6Qf/koe9+I7c+wzkqRmEvcp0kgJdxKInzYzkICKkFMZsX3Vct3++tsF9ww==", + "extraneous": true, + "license": "BSD-2-Clause", + "dependencies": { + "js-yaml": "^3.13.1", + "lcov-parse": "^1.0.0", + "log-driver": "^1.2.7", + "minimist": "^1.2.5", + "request": "^2.88.2" + }, + "bin": { + "coveralls": "bin/coveralls.js" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/coveralls/node_modules/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==", + "extraneous": true, + "dependencies": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/cp-file": { + "version": "10.0.0", + "resolved": "https://registry.npmjs.org/cp-file/-/cp-file-10.0.0.tgz", + "integrity": "sha512-vy2Vi1r2epK5WqxOLnskeKeZkdZvTKfFZQCplE3XWsP+SUJyd5XAUFC9lFgTjjXJF2GMne/UML14iEmkAaDfFg==", + "extraneous": true, + "dependencies": { + "graceful-fs": "^4.2.10", + "nested-error-stacks": "^2.1.1", + "p-event": "^5.0.1" + }, + "engines": { + "node": ">=14.16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/cpy": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/cpy/-/cpy-10.1.0.tgz", + "integrity": "sha512-VC2Gs20JcTyeQob6UViBLnyP0bYHkBh6EiKzot9vi2DmeGlFT9Wd7VG3NBrkNx/jYvFBeyDOMMHdHQhbtKLgHQ==", + "extraneous": true, + "dependencies": { + "arrify": "^3.0.0", + "cp-file": "^10.0.0", + "globby": "^13.1.4", + "junk": "^4.0.1", + "micromatch": "^4.0.5", + "nested-error-stacks": "^2.1.1", + "p-filter": "^3.0.0", + "p-map": "^6.0.0" + }, + "engines": { + "node": ">=16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/cpy-cli": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/cpy-cli/-/cpy-cli-5.0.0.tgz", + "integrity": "sha512-fb+DZYbL9KHc0BC4NYqGRrDIJZPXUmjjtqdw4XRRg8iV8dIfghUX/WiL+q4/B/KFTy3sK6jsbUhBaz0/Hxg7IQ==", + "extraneous": true, + "dependencies": { + "cpy": "^10.1.0", + "meow": "^12.0.1" + }, + "bin": { + "cpy": "cli.js" + }, + "engines": { + "node": ">=16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/cpy/node_modules/globby": { + "version": "13.2.2", + "resolved": "https://registry.npmjs.org/globby/-/globby-13.2.2.tgz", + "integrity": "sha512-Y1zNGV+pzQdh7H39l9zgB4PJqjRNqydvdYCDG4HFXM4XuvSaQQlEc91IU1yALL8gUTDomgBAfz3XJdmUS+oo0w==", + "extraneous": true, + "dependencies": { + "dir-glob": "^3.0.1", + "fast-glob": "^3.3.0", + "ignore": "^5.2.4", + "merge2": "^1.4.1", + "slash": "^4.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/cpy/node_modules/slash": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-4.0.0.tgz", + "integrity": "sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==", + "extraneous": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/crc-32": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/crc-32/-/crc-32-1.2.2.tgz", + "integrity": "sha512-ROmzCKrTnOwybPcJApAA6WBWij23HVfGVNKqqrZpuyZOHqK2CwHSvpGuyt/UNNvaIjEd8X5IFGp4Mh+Ie1IHJQ==", + "peer": true, + "bin": { + "crc32": "bin/crc32.njs" + }, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/crc32-stream": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/crc32-stream/-/crc32-stream-4.0.3.tgz", + "integrity": "sha512-NT7w2JVU7DFroFdYkeq8cywxrgjPHWkdX1wjpRQXPX5Asews3tA+Ght6lddQO5Mkumffp3X7GEqku3epj2toIw==", + "peer": true, + "dependencies": { + "crc-32": "^1.2.0", + "readable-stream": "^3.4.0" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/cross-spawn": { + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", + "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==", + "extraneous": true, + "license": "MIT", + "dependencies": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/cycle": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/cycle/-/cycle-1.0.3.tgz", + "integrity": "sha512-TVF6svNzeQCOpjCqsy0/CSy8VgObG3wXusJ73xW2GbG5rGx7lC8zxDSURicsXI2UsGdi2L0QNRCi745/wUDvsA==", + "peer": true, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/dashdash": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", + "integrity": "sha512-jRFi8UDGo6j+odZiEpjazZaWqEal3w/basFjQHQEwVtZJGDpxbH1MeYluwCS8Xq5wmLJooDlMgvVarmWfGM44g==", + "extraneous": true, + "dependencies": { + "assert-plus": "^1.0.0" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/data-view-buffer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/data-view-buffer/-/data-view-buffer-1.0.1.tgz", + "integrity": "sha512-0lht7OugA5x3iJLOWFhWK/5ehONdprk0ISXqVFn/NFrDu+cuc8iADFrGQz5BnRK7LLU3JmkbXSxaqX+/mXYtUA==", + "extraneous": true, + "dependencies": { + "call-bind": "^1.0.6", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/data-view-byte-length": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/data-view-byte-length/-/data-view-byte-length-1.0.1.tgz", + "integrity": "sha512-4J7wRJD3ABAzr8wP+OcIcqq2dlUKp4DVflx++hs5h5ZKydWMI6/D/fAot+yh6g2tHh8fLFTvNOaVN357NvSrOQ==", + "extraneous": true, + "dependencies": { + "call-bind": "^1.0.7", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/data-view-byte-offset": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/data-view-byte-offset/-/data-view-byte-offset-1.0.0.tgz", + "integrity": "sha512-t/Ygsytq+R995EJ5PZlD4Cu56sWa8InXySaViRzw9apusqsOO2bQP+SbYzAhR0pFKoB+43lYy8rWban9JSuXnA==", + "extraneous": true, + "dependencies": { + "call-bind": "^1.0.6", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/debug": { + "version": "4.3.5", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.5.tgz", + "integrity": "sha512-pt0bNEmneDIvdL1Xsd9oDQ/wrQRkXDT4AUWlNZNPKvW5x/jyO9VFXkJUP07vQ2upmw5PlaITaPKc31jK13V+jg==", + "peer": true, + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/@ngageoint/mage.service/node_modules/decamelize": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-4.0.0.tgz", + "integrity": "sha512-9iE1PgSik9HeIIw2JO94IidnE3eBoQrFJ3w7sFuzSX4DpmZ3v5sZpUiV5Swcf6mQEF+Y0ru8Neo+p+nyh2J+hQ==", + "extraneous": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/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==", + "optional": true, + "peer": true, + "dependencies": { + "mimic-response": "^3.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/deep-eql": { + "version": "4.1.4", + "resolved": "https://registry.npmjs.org/deep-eql/-/deep-eql-4.1.4.tgz", + "integrity": "sha512-SUwdGfqdKOwxCPeVYjwSyRpJ7Z+fhpwIAtmCUdZIWZ/YP5R9WAsyuSgpLVDi9bjWoN2LXHNss/dk3urXtdQxGg==", + "extraneous": true, + "license": "MIT", + "dependencies": { + "type-detect": "^4.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/deep-equal": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-2.2.3.tgz", + "integrity": "sha512-ZIwpnevOurS8bpT4192sqAowWM76JDKSHYzMLty3BZGSswgq6pBaH3DhCSW5xVAZICZyKdOBPjwww5wfgT/6PA==", + "extraneous": true, + "license": "MIT", + "dependencies": { + "array-buffer-byte-length": "^1.0.0", + "call-bind": "^1.0.5", + "es-get-iterator": "^1.1.3", + "get-intrinsic": "^1.2.2", + "is-arguments": "^1.1.1", + "is-array-buffer": "^3.0.2", + "is-date-object": "^1.0.5", + "is-regex": "^1.1.4", + "is-shared-array-buffer": "^1.0.2", + "isarray": "^2.0.5", + "object-is": "^1.1.5", + "object-keys": "^1.1.1", + "object.assign": "^4.1.4", + "regexp.prototype.flags": "^1.5.1", + "side-channel": "^1.0.4", + "which-boxed-primitive": "^1.0.2", + "which-collection": "^1.0.1", + "which-typed-array": "^1.1.13" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/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==", + "optional": true, + "peer": true, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/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==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/default-require-extensions": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/default-require-extensions/-/default-require-extensions-2.0.0.tgz", + "integrity": "sha512-B0n2zDIXpzLzKeoEozorDSa1cHc1t0NjmxP0zuAxbizNU2MBqYJJKYXrrFdKuQliojXynrxgd7l4ahfg/+aA5g==", + "extraneous": true, + "dependencies": { + "strip-bom": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/define-data-property": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.4.tgz", + "integrity": "sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==", + "peer": true, + "dependencies": { + "es-define-property": "^1.0.0", + "es-errors": "^1.3.0", + "gopd": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/define-properties": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.2.1.tgz", + "integrity": "sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==", + "extraneous": true, + "dependencies": { + "define-data-property": "^1.0.1", + "has-property-descriptors": "^1.0.0", + "object-keys": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==", + "peer": true, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/depd": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", + "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==", + "license": "MIT", + "peer": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/destroy": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz", + "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==", + "peer": true, + "engines": { + "node": ">= 0.8", + "npm": "1.2.8000 || >= 1.4.16" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/detect-libc": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.0.3.tgz", + "integrity": "sha512-bwy0MGW55bG41VqxxypOsdSdGqLwXPI/focwgTYCFMbdUiBAxLg9CFzG08sz2aqzknwiX7Hkl0bQENjg8iLByw==", + "optional": true, + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/dezalgo": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/dezalgo/-/dezalgo-1.0.4.tgz", + "integrity": "sha512-rXSP0bf+5n0Qonsb+SVVfNfIsimO4HEtmnIpPHY8Q1UCzKlQrDMfdobr8nJOOsRgWCyMRqeSBQzmWUMq7zvVig==", + "peer": true, + "dependencies": { + "asap": "^2.0.0", + "wrappy": "1" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/diff": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/diff/-/diff-5.2.0.tgz", + "integrity": "sha512-uIFDxqpRZGZ6ThOk84hEfqWoHx2devRFvpTZcTHur85vImfaxUbTW9Ryh4CpCuDnToOP1CEtXKIgytHBPVff5A==", + "extraneous": true, + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.3.1" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/dir-glob": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", + "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", + "extraneous": true, + "dependencies": { + "path-type": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/doctrine": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", + "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", + "extraneous": true, + "dependencies": { + "esutils": "^2.0.2" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/doctypes": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/doctypes/-/doctypes-1.1.0.tgz", + "integrity": "sha512-LLBi6pEqS6Do3EKQ3J0NqHWV5hhb78Pi8vvESYwyOy2c31ZEZVdtitdzsQsKb7878PEERhzUk0ftqGhG6Mz+pQ==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/drange": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/drange/-/drange-1.1.1.tgz", + "integrity": "sha512-pYxfDYpued//QpnLIm4Avk7rsNtAtQkUES2cwAYSvD/wd2pKD71gN2Ebj3e7klzXwjocvE8c5vx/1fxwpqmSxA==", + "extraneous": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/dunder-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.1.tgz", + "integrity": "sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==", + "license": "MIT", + "peer": true, + "dependencies": { + "call-bind-apply-helpers": "^1.0.1", + "es-errors": "^1.3.0", + "gopd": "^1.2.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/duplexer": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/duplexer/-/duplexer-0.1.2.tgz", + "integrity": "sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/eastasianwidth": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz", + "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/ecc-jsbn": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz", + "integrity": "sha512-eh9O+hwRHNbG4BLTjEl3nw044CkGm5X6LoaCf7LPp7UU8Qrt47JYNi6nPX8xjW97TKGKm1ouctg0QSpZe9qrnw==", + "extraneous": true, + "dependencies": { + "jsbn": "~0.1.0", + "safer-buffer": "^2.1.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/ecc-jsbn/node_modules/jsbn": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", + "integrity": "sha512-UVU9dibq2JcFWxQPA6KCqj5O42VOmAY3zQUfEKxU0KpTGXwNoCjkX1e13eHNvw/xPynt6pU0rZ1htjWTNTSXsg==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/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==", + "peer": true, + "dependencies": { + "safe-buffer": "^5.0.1" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/ee-first": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", + "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==", + "license": "MIT", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "optional": true, + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/encodeurl": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-2.0.0.tgz", + "integrity": "sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg==", + "license": "MIT", + "peer": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/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==", + "peer": true, + "dependencies": { + "once": "^1.4.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/error-ex": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", + "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", + "extraneous": true, + "dependencies": { + "is-arrayish": "^0.2.1" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/es-abstract": { + "version": "1.23.3", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.23.3.tgz", + "integrity": "sha512-e+HfNH61Bj1X9/jLc5v1owaLYuHdeHHSQlkhCBiTK8rBvKaULl/beGMxwrMXjpYrv4pz22BlY570vVePA2ho4A==", + "extraneous": true, + "dependencies": { + "array-buffer-byte-length": "^1.0.1", + "arraybuffer.prototype.slice": "^1.0.3", + "available-typed-arrays": "^1.0.7", + "call-bind": "^1.0.7", + "data-view-buffer": "^1.0.1", + "data-view-byte-length": "^1.0.1", + "data-view-byte-offset": "^1.0.0", + "es-define-property": "^1.0.0", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.0.0", + "es-set-tostringtag": "^2.0.3", + "es-to-primitive": "^1.2.1", + "function.prototype.name": "^1.1.6", + "get-intrinsic": "^1.2.4", + "get-symbol-description": "^1.0.2", + "globalthis": "^1.0.3", + "gopd": "^1.0.1", + "has-property-descriptors": "^1.0.2", + "has-proto": "^1.0.3", + "has-symbols": "^1.0.3", + "hasown": "^2.0.2", + "internal-slot": "^1.0.7", + "is-array-buffer": "^3.0.4", + "is-callable": "^1.2.7", + "is-data-view": "^1.0.1", + "is-negative-zero": "^2.0.3", + "is-regex": "^1.1.4", + "is-shared-array-buffer": "^1.0.3", + "is-string": "^1.0.7", + "is-typed-array": "^1.1.13", + "is-weakref": "^1.0.2", + "object-inspect": "^1.13.1", + "object-keys": "^1.1.1", + "object.assign": "^4.1.5", + "regexp.prototype.flags": "^1.5.2", + "safe-array-concat": "^1.1.2", + "safe-regex-test": "^1.0.3", + "string.prototype.trim": "^1.2.9", + "string.prototype.trimend": "^1.0.8", + "string.prototype.trimstart": "^1.0.8", + "typed-array-buffer": "^1.0.2", + "typed-array-byte-length": "^1.0.1", + "typed-array-byte-offset": "^1.0.2", + "typed-array-length": "^1.0.6", + "unbox-primitive": "^1.0.2", + "which-typed-array": "^1.1.15" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/es-define-property": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.1.tgz", + "integrity": "sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==", + "license": "MIT", + "peer": true, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/es-errors": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz", + "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==", + "peer": true, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/es-get-iterator": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/es-get-iterator/-/es-get-iterator-1.1.3.tgz", + "integrity": "sha512-sPZmqHBe6JIiTfN5q2pEi//TwxmAFHwj/XEuYjTuse78i8KxaqMTTzxPoFKuzRpDpTJ+0NAbpfenkmH2rePtuw==", + "extraneous": true, + "dependencies": { + "call-bind": "^1.0.2", + "get-intrinsic": "^1.1.3", + "has-symbols": "^1.0.3", + "is-arguments": "^1.1.1", + "is-map": "^2.0.2", + "is-set": "^2.0.2", + "is-string": "^1.0.7", + "isarray": "^2.0.5", + "stop-iteration-iterator": "^1.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/es-object-atoms": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.1.1.tgz", + "integrity": "sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==", + "license": "MIT", + "peer": true, + "dependencies": { + "es-errors": "^1.3.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/es-set-tostringtag": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.0.3.tgz", + "integrity": "sha512-3T8uNMC3OQTHkFUsFq8r/BwAXLHvU/9O9mE0fBc/MY5iq/8H7ncvO947LmYA6ldWw9Uh8Yhf25zu6n7nML5QWQ==", + "extraneous": true, + "dependencies": { + "get-intrinsic": "^1.2.4", + "has-tostringtag": "^1.0.2", + "hasown": "^2.0.1" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/es-to-primitive": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", + "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", + "extraneous": true, + "dependencies": { + "is-callable": "^1.1.4", + "is-date-object": "^1.0.1", + "is-symbol": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/es6-error": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/es6-error/-/es6-error-4.1.1.tgz", + "integrity": "sha512-Um/+FxMr9CISWh0bi5Zv0iOD+4cFh5qLeks1qhAopKVAJw3drgKbKySikp7wGhDL0HPeaja0P5ULZrxLkniUVg==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/escalade": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.2.tgz", + "integrity": "sha512-ErCHMCae19vR8vQGe50xIsVomy19rg6gFu3+r3jkEO46suLMWBksvVyoGgQV+jOfl84ZSOSlmv6Gxa89PmTGmA==", + "extraneous": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/escape-html": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", + "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/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==", + "extraneous": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/eslint": { + "version": "8.57.1", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.57.1.tgz", + "integrity": "sha512-ypowyDxpVSYpkXr9WPv2PAZCtNip1Mv5KTW0SCurXv/9iOpcrH9PaqUElksqEB6pChqHGDRCFTyrZlGhnLNGiA==", + "deprecated": "This version is no longer supported. Please see https://eslint.org/version-support for other options.", + "extraneous": true, + "license": "MIT", + "dependencies": { + "@eslint-community/eslint-utils": "^4.2.0", + "@eslint-community/regexpp": "^4.6.1", + "@eslint/eslintrc": "^2.1.4", + "@eslint/js": "8.57.1", + "@humanwhocodes/config-array": "^0.13.0", + "@humanwhocodes/module-importer": "^1.0.1", + "@nodelib/fs.walk": "^1.2.8", + "@ungap/structured-clone": "^1.2.0", + "ajv": "^6.12.4", + "chalk": "^4.0.0", + "cross-spawn": "^7.0.2", + "debug": "^4.3.2", + "doctrine": "^3.0.0", + "escape-string-regexp": "^4.0.0", + "eslint-scope": "^7.2.2", + "eslint-visitor-keys": "^3.4.3", + "espree": "^9.6.1", + "esquery": "^1.4.2", + "esutils": "^2.0.2", + "fast-deep-equal": "^3.1.3", + "file-entry-cache": "^6.0.1", + "find-up": "^5.0.0", + "glob-parent": "^6.0.2", + "globals": "^13.19.0", + "graphemer": "^1.4.0", + "ignore": "^5.2.0", + "imurmurhash": "^0.1.4", + "is-glob": "^4.0.0", + "is-path-inside": "^3.0.3", + "js-yaml": "^4.1.0", + "json-stable-stringify-without-jsonify": "^1.0.1", + "levn": "^0.4.1", + "lodash.merge": "^4.6.2", + "minimatch": "^3.1.2", + "natural-compare": "^1.4.0", + "optionator": "^0.9.3", + "strip-ansi": "^6.0.1", + "text-table": "^0.2.0" + }, + "bin": { + "eslint": "bin/eslint.js" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/eslint-config-prettier": { + "version": "6.15.0", + "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-6.15.0.tgz", + "integrity": "sha512-a1+kOYLR8wMGustcgAjdydMsQ2A/2ipRPwRKUmfYaSxc9ZPcrku080Ctl6zrZzZNs/U82MjSv+qKREkoq3bJaw==", + "extraneous": true, + "license": "MIT", + "dependencies": { + "get-stdin": "^6.0.0" + }, + "bin": { + "eslint-config-prettier-check": "bin/cli.js" + }, + "peerDependencies": { + "eslint": ">=3.14.1" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/eslint-plugin-prettier": { + "version": "3.4.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-prettier/-/eslint-plugin-prettier-3.4.1.tgz", + "integrity": "sha512-htg25EUYUeIhKHXjOinK4BgCcDwtLHjqaxCDsMy5nbnUMkKFvIhMVCp+5GFUXQ4Nr8lBsPqtGAqBenbpFqAA2g==", + "extraneous": true, + "license": "MIT", + "dependencies": { + "prettier-linter-helpers": "^1.0.0" + }, + "engines": { + "node": ">=6.0.0" + }, + "peerDependencies": { + "eslint": ">=5.0.0", + "prettier": ">=1.13.0" + }, + "peerDependenciesMeta": { + "eslint-config-prettier": { + "optional": true + } + } + }, + "node_modules/@ngageoint/mage.service/node_modules/eslint-scope": { + "version": "7.2.2", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.2.tgz", + "integrity": "sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==", + "extraneous": true, + "dependencies": { + "esrecurse": "^4.3.0", + "estraverse": "^5.2.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/eslint-visitor-keys": { + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", + "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", + "extraneous": true, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/eslint/node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/eslint/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "extraneous": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/eslint/node_modules/js-yaml": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", + "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", + "extraneous": true, + "dependencies": { + "argparse": "^2.0.1" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/eslint/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "extraneous": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/espree": { + "version": "9.6.1", + "resolved": "https://registry.npmjs.org/espree/-/espree-9.6.1.tgz", + "integrity": "sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==", + "extraneous": true, + "dependencies": { + "acorn": "^8.9.0", + "acorn-jsx": "^5.3.2", + "eslint-visitor-keys": "^3.4.1" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", + "license": "BSD-2-Clause", + "peer": true, + "bin": { + "esparse": "bin/esparse.js", + "esvalidate": "bin/esvalidate.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/esquery": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.5.0.tgz", + "integrity": "sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==", + "extraneous": true, + "dependencies": { + "estraverse": "^5.1.0" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/esrecurse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", + "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", + "extraneous": true, + "dependencies": { + "estraverse": "^5.2.0" + }, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "extraneous": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/esutils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", + "extraneous": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/etag": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", + "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==", + "license": "MIT", + "peer": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/event-stream": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/event-stream/-/event-stream-4.0.1.tgz", + "integrity": "sha512-qACXdu/9VHPBzcyhdOWR5/IahhGMf0roTeZJfzz077GwylcDd90yOHLouhmv7GJ5XzPi6ekaQWd8AvPP2nOvpA==", + "peer": true, + "dependencies": { + "duplexer": "^0.1.1", + "from": "^0.1.7", + "map-stream": "0.0.7", + "pause-stream": "^0.0.11", + "split": "^1.0.1", + "stream-combiner": "^0.2.2", + "through": "^2.3.8" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/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==", + "optional": true, + "peer": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/express": { + "version": "4.21.2", + "resolved": "https://registry.npmjs.org/express/-/express-4.21.2.tgz", + "integrity": "sha512-28HqgMZAmih1Czt9ny7qr6ek2qddF4FclbMzwhCREB6OFfH+rXAnuNCwo1/wFvrtbgsQDb4kSbX9de9lFbrXnA==", + "license": "MIT", + "peer": true, + "dependencies": { + "accepts": "~1.3.8", + "array-flatten": "1.1.1", + "body-parser": "1.20.3", + "content-disposition": "0.5.4", + "content-type": "~1.0.4", + "cookie": "0.7.1", + "cookie-signature": "1.0.6", + "debug": "2.6.9", + "depd": "2.0.0", + "encodeurl": "~2.0.0", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "finalhandler": "1.3.1", + "fresh": "0.5.2", + "http-errors": "2.0.0", + "merge-descriptors": "1.0.3", + "methods": "~1.1.2", + "on-finished": "2.4.1", + "parseurl": "~1.3.3", + "path-to-regexp": "0.1.12", + "proxy-addr": "~2.0.7", + "qs": "6.13.0", + "range-parser": "~1.2.1", + "safe-buffer": "5.2.1", + "send": "0.19.0", + "serve-static": "1.16.2", + "setprototypeof": "1.2.0", + "statuses": "2.0.1", + "type-is": "~1.6.18", + "utils-merge": "1.0.1", + "vary": "~1.1.2" + }, + "engines": { + "node": ">= 0.10.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/express" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/express-session": { + "version": "1.18.1", + "resolved": "https://registry.npmjs.org/express-session/-/express-session-1.18.1.tgz", + "integrity": "sha512-a5mtTqEaZvBCL9A9aqkrtfz+3SMDhOVUnjafjo+s7A9Txkq+SVX2DLvSp1Zrv4uCXa3lMSK3viWnh9Gg07PBUA==", + "license": "MIT", + "peer": true, + "dependencies": { + "cookie": "0.7.2", + "cookie-signature": "1.0.7", + "debug": "2.6.9", + "depd": "~2.0.0", + "on-headers": "~1.0.2", + "parseurl": "~1.3.3", + "safe-buffer": "5.2.1", + "uid-safe": "~2.1.5" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/express-session/node_modules/cookie": { + "version": "0.7.2", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.7.2.tgz", + "integrity": "sha512-yki5XnKuf750l50uGTllt6kKILY4nQ1eNIQatoXEByZ5dWgnKqbnqmTrBE5B4N7lrMJKQ2ytWMiTO2o0v6Ew/w==", + "license": "MIT", + "peer": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/express-session/node_modules/cookie-signature": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.7.tgz", + "integrity": "sha512-NXdYc3dLr47pBkpUCHtKSwIOQXLVn8dZEuywboCOJY/osA0wFSLlSawr3KN8qXJEyX66FcONTH8EIlVuK0yyFA==", + "license": "MIT", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/express-session/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "peer": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/express-session/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/express/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "license": "MIT", + "peer": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/express/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "license": "MIT", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/extend": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", + "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/external-editor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz", + "integrity": "sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==", + "optional": true, + "peer": true, + "dependencies": { + "chardet": "^0.7.0", + "iconv-lite": "^0.4.24", + "tmp": "^0.0.33" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/external-editor/node_modules/iconv-lite": { + "version": "0.4.24", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", + "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", + "optional": true, + "peer": true, + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/extsprintf": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", + "integrity": "sha512-11Ndz7Nv+mvAC1j0ktTa7fAb0vLyGGX+rMHNBYQviQDGU0Hw7lhctJANqbPhu9nV9/izT/IntTgZ7Im/9LJs9g==", + "engines": [ + "node >=0.6.0" + ], + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/eyes": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/eyes/-/eyes-0.1.8.tgz", + "integrity": "sha512-GipyPsXO1anza0AOZdy69Im7hGFCNB7Y/NGjDlZGJ3GJJLtwNSb2vrzYrTYJRrRloVx7pl+bhUaTB8yiccPvFQ==", + "peer": true, + "engines": { + "node": "> 0.1.90" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/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==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/fast-diff": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/fast-diff/-/fast-diff-1.3.0.tgz", + "integrity": "sha512-VxPP4NqbUjj6MaAOafWeUn2cXWLcCtljklUtZf0Ind4XQ+QPtmA0b18zZy0jIQx+ExRVCR/ZQpBmik5lXshNsw==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/fast-fifo": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/fast-fifo/-/fast-fifo-1.3.2.tgz", + "integrity": "sha512-/d9sfos4yxzpwkDkuN7k2SqFKtYNmCTzgfEpz82x34IM9/zc8KGxQoXg1liNC/izpRM/MBdt44Nmx41ZWqk+FQ==", + "extraneous": true, + "license": "MIT" + }, + "node_modules/@ngageoint/mage.service/node_modules/fast-glob": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.2.tgz", + "integrity": "sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==", + "extraneous": true, + "dependencies": { + "@nodelib/fs.stat": "^2.0.2", + "@nodelib/fs.walk": "^1.2.3", + "glob-parent": "^5.1.2", + "merge2": "^1.3.0", + "micromatch": "^4.0.4" + }, + "engines": { + "node": ">=8.6.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/fast-glob/node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "extraneous": true, + "dependencies": { + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/fast-json-stable-stringify": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/fast-levenshtein": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", + "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/fast-safe-stringify": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/fast-safe-stringify/-/fast-safe-stringify-2.1.1.tgz", + "integrity": "sha512-W+KJc2dmILlPplD/H4K9l9LcAHAfPtP6BY84uVLXQ6Evcz9Lcg33Y2z1IVblT6xdY54PXYVHEv+0Wpq8Io6zkA==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/fast-xml-parser": { + "version": "4.2.5", + "resolved": "https://registry.npmjs.org/fast-xml-parser/-/fast-xml-parser-4.2.5.tgz", + "integrity": "sha512-B9/wizE4WngqQftFPmdaMYlXoJlJOYxGQOanC77fq9k8+Z0v5dDSVh+3glErdIROP//s/jgb7ZuxKfB8nVyo0g==", + "funding": [ + { + "type": "paypal", + "url": "https://paypal.me/naturalintelligence" + }, + { + "type": "github", + "url": "https://github.com/sponsors/NaturalIntelligence" + } + ], + "optional": true, + "peer": true, + "dependencies": { + "strnum": "^1.0.5" + }, + "bin": { + "fxparser": "src/cli/cli.js" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/fastq": { + "version": "1.17.1", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.17.1.tgz", + "integrity": "sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w==", + "extraneous": true, + "dependencies": { + "reusify": "^1.0.4" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/figures": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz", + "integrity": "sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==", + "optional": true, + "peer": true, + "dependencies": { + "escape-string-regexp": "^1.0.5" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/figures/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "optional": true, + "peer": true, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/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==", + "extraneous": true, + "dependencies": { + "flat-cache": "^3.0.4" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/file-type": { + "version": "16.5.4", + "resolved": "https://registry.npmjs.org/file-type/-/file-type-16.5.4.tgz", + "integrity": "sha512-/yFHK0aGjFEgDJjEKP0pWCplsPFPhwyfwevf/pVxiN0tmE4L9LmwWxWukdJSHdoCli4VgQLehjJtwQBnqmsKcw==", + "peer": true, + "dependencies": { + "readable-web-to-node-stream": "^3.0.0", + "strtok3": "^6.2.4", + "token-types": "^4.1.1" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sindresorhus/file-type?sponsor=1" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/file-uri-to-path": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz", + "integrity": "sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==", + "optional": true, + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/fill-keys": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/fill-keys/-/fill-keys-1.0.2.tgz", + "integrity": "sha512-tcgI872xXjwFF4xgQmLxi76GnwJG3g/3isB1l4/G5Z4zrbddGpBjqZCO9oEAcB5wX0Hj/5iQB3toxfO7in1hHA==", + "extraneous": true, + "dependencies": { + "is-object": "~1.0.1", + "merge-descriptors": "~1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/fill-range": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", + "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", + "extraneous": true, + "dependencies": { + "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/finalhandler": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.3.1.tgz", + "integrity": "sha512-6BN9trH7bp3qvnrRyzsBz+g3lZxTNZTbVO2EV1CS0WIcDbawYVdYvGflME/9QP0h0pYlCDBCTjYa9nZzMDpyxQ==", + "license": "MIT", + "peer": true, + "dependencies": { + "debug": "2.6.9", + "encodeurl": "~2.0.0", + "escape-html": "~1.0.3", + "on-finished": "2.4.1", + "parseurl": "~1.3.3", + "statuses": "2.0.1", + "unpipe": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/finalhandler/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "license": "MIT", + "peer": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/finalhandler/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "license": "MIT", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/find-cache-dir": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-3.3.2.tgz", + "integrity": "sha512-wXZV5emFEjrridIgED11OoUKLxiYjAcqot/NJdAkOhlJ+vGzwhOAfcG5OX1jP+S0PcjEn8bdMJv+g2jwQ3Onig==", + "extraneous": true, + "license": "MIT", + "dependencies": { + "commondir": "^1.0.1", + "make-dir": "^3.0.2", + "pkg-dir": "^4.1.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/avajs/find-cache-dir?sponsor=1" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/find-up": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "extraneous": true, + "dependencies": { + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/flat": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/flat/-/flat-5.0.2.tgz", + "integrity": "sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ==", + "extraneous": true, + "bin": { + "flat": "cli.js" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/flat-cache": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.2.0.tgz", + "integrity": "sha512-CYcENa+FtcUKLmhhqyctpclsq7QF38pKjZHsGNiSQF5r4FtoKDWabFDl3hzaEQMvT1LHEysw5twgLvpYYb4vbw==", + "extraneous": true, + "dependencies": { + "flatted": "^3.2.9", + "keyv": "^4.5.3", + "rimraf": "^3.0.2" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/flat-cache/node_modules/rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "deprecated": "Rimraf versions prior to v4 are no longer supported", + "extraneous": true, + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/flatted": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.3.1.tgz", + "integrity": "sha512-X8cqMLLie7KsNUDSdzeN8FYK9rEt4Dt67OsG/DNGnYTSDBG4uFAJFBnUeiV+zCVAvwFy56IjM9sH51jVaEhNxw==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/follow-redirects": { + "version": "1.15.9", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.9.tgz", + "integrity": "sha512-gew4GsXizNgdoRyqmyfMHyAmXsZDk6mHkSxZFCzW9gwlbtOW44CDtYavM+y+72qD/Vq2l550kMF52DT8fOLJqQ==", + "extraneous": true, + "funding": [ + { + "type": "individual", + "url": "https://github.com/sponsors/RubenVerborgh" + } + ], + "license": "MIT", + "engines": { + "node": ">=4.0" + }, + "peerDependenciesMeta": { + "debug": { + "optional": true + } + } + }, + "node_modules/@ngageoint/mage.service/node_modules/for-each": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.3.tgz", + "integrity": "sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==", + "extraneous": true, + "dependencies": { + "is-callable": "^1.1.3" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/foreachasync": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/foreachasync/-/foreachasync-3.0.0.tgz", + "integrity": "sha512-J+ler7Ta54FwwNcx6wQRDhTIbNeyDcARMkOcguEqnEdtm0jKvN3Li3PDAb2Du3ubJYEWfYL83XMROXdsXAXycw==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/foreground-child": { + "version": "1.5.6", + "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-1.5.6.tgz", + "integrity": "sha512-3TOY+4TKV0Ml83PXJQY+JFQaHNV38lzQDIzzXYg1kWdBLenGgoZhAs0CKgzI31vi2pWEpQMq/Yi4bpKwCPkw7g==", + "extraneous": true, + "dependencies": { + "cross-spawn": "^4", + "signal-exit": "^3.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/foreground-child/node_modules/cross-spawn": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-4.0.2.tgz", + "integrity": "sha512-yAXz/pA1tD8Gtg2S98Ekf/sewp3Lcp3YoFKJ4Hkp5h5yLWnKVTDU0kwjKJ8NDCYcfTLfyGkzTikst+jWypT1iA==", + "extraneous": true, + "dependencies": { + "lru-cache": "^4.0.1", + "which": "^1.2.9" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/foreground-child/node_modules/lru-cache": { + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz", + "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==", + "extraneous": true, + "dependencies": { + "pseudomap": "^1.0.2", + "yallist": "^2.1.2" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/foreground-child/node_modules/which": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "extraneous": true, + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "which": "bin/which" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/forever-agent": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", + "integrity": "sha512-j0KLYPhm6zeac4lz3oJ3o65qvgQCcPubiyotZrXqEaG4hNagNYO8qdlUrX5vwqv9ohqeT/Z3j6+yW067yWWdUw==", + "extraneous": true, + "engines": { + "node": "*" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/form-data": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz", + "integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==", + "peer": true, + "dependencies": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "mime-types": "^2.1.12" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/formidable": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/formidable/-/formidable-2.1.2.tgz", + "integrity": "sha512-CM3GuJ57US06mlpQ47YcunuUZ9jpm8Vx+P2CGt2j7HpgkKZO/DJYQ0Bobim8G6PFQmK5lOqOOdUXboU+h73A4g==", + "peer": true, + "dependencies": { + "dezalgo": "^1.0.4", + "hexoid": "^1.0.0", + "once": "^1.4.0", + "qs": "^6.11.0" + }, + "funding": { + "url": "https://ko-fi.com/tunnckoCore/commissions" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/forwarded": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz", + "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==", + "peer": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/fresh": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", + "integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==", + "license": "MIT", + "peer": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/from": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/from/-/from-0.1.7.tgz", + "integrity": "sha512-twe20eF1OxVxp/ML/kq2p1uc6KvFK/+vs8WjEbeKmV2He22MKm7YF2ANIt+EOqhJ5L3K/SuuPhk0hWQDjOM23g==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/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==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/fs-extra": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-4.0.3.tgz", + "integrity": "sha512-q6rbdDd1o2mAnQreO7YADIxf/Whx4AHBiRf6d+/cVT8h44ss+lHgxf1FemcqDnQt9X3ct4McHr+JMGlYSsK7Cg==", + "peer": true, + "dependencies": { + "graceful-fs": "^4.1.2", + "jsonfile": "^4.0.0", + "universalify": "^0.1.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/fsevents": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", + "extraneous": true, + "hasInstallScript": true, + "license": "MIT", + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/function-bind": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", + "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", + "peer": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/function.prototype.name": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.6.tgz", + "integrity": "sha512-Z5kx79swU5P27WEayXM1tBi5Ze/lbIyiNgU3qyXUOf9b2rgXYyF9Dy9Cx+IQv/Lc8WCG6L82zwUPpSS9hGehIg==", + "extraneous": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1", + "functions-have-names": "^1.2.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/functions-have-names": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz", + "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==", + "extraneous": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/geojson": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/geojson/-/geojson-0.5.0.tgz", + "integrity": "sha512-/Bx5lEn+qRF4TfQ5aLu6NH+UKtvIv7Lhc487y/c8BdludrCTpiWf9wyI0RTyqg49MFefIAvFDuEi5Dfd/zgNxQ==", + "peer": true, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/geojson-rbush": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/geojson-rbush/-/geojson-rbush-3.2.0.tgz", + "integrity": "sha512-oVltQTXolxvsz1sZnutlSuLDEcQAKYC/uXt9zDzJJ6bu0W+baTI8LZBaTup5afzibEH4N3jlq2p+a152wlBJ7w==", + "peer": true, + "dependencies": { + "@turf/bbox": "*", + "@turf/helpers": "6.x", + "@turf/meta": "6.x", + "@types/geojson": "7946.0.8", + "rbush": "^3.0.1" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/geojson-rbush/node_modules/@types/geojson": { + "version": "7946.0.8", + "resolved": "https://registry.npmjs.org/@types/geojson/-/geojson-7946.0.8.tgz", + "integrity": "sha512-1rkryxURpr6aWP7R786/UQOkJ3PcpQiWkAXBmdWc7ryFWqN6a4xfK7BtjXvFBKO9LjQ+MWQSWxYeZX1OApnArA==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/geojson-stream": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/geojson-stream/-/geojson-stream-0.1.0.tgz", + "integrity": "sha512-svSg5fFXPaTiqzEBGXScA+nISaeC9rLvku2PH+wM5LToATUw2bLIrvls43ymnT9Xnp51nBPVyK9m4Af40KpJ7w==", + "peer": true, + "dependencies": { + "JSONStream": "^1.0.0", + "through": "^2.3.4" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/geojson-validation": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/geojson-validation/-/geojson-validation-1.0.2.tgz", + "integrity": "sha512-K5jrJ4wFvORn2pRKeg181LL0QPYuEKn2KHPvfH1m2QtFlAXFLKdseqt0XwBM3ELOY7kNM1fglRQ6ZwUQZ5S00A==", + "peer": true, + "bin": { + "gjv": "bin/gjv" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/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==", + "extraneous": true, + "engines": { + "node": "6.* || 8.* || >= 10.*" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/get-func-name": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/get-func-name/-/get-func-name-2.0.2.tgz", + "integrity": "sha512-8vXOvuE167CtIc3OyItco7N/dpRtBbYOsPsXCz7X/PMnlGjYjSGuZJgM1Y7mmew7BKf9BqvLX2tnOVy1BBUsxQ==", + "extraneous": true, + "engines": { + "node": "*" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/get-intrinsic": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.3.0.tgz", + "integrity": "sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ==", + "license": "MIT", + "peer": true, + "dependencies": { + "call-bind-apply-helpers": "^1.0.2", + "es-define-property": "^1.0.1", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.1.1", + "function-bind": "^1.1.2", + "get-proto": "^1.0.1", + "gopd": "^1.2.0", + "has-symbols": "^1.1.0", + "hasown": "^2.0.2", + "math-intrinsics": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/get-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/get-proto/-/get-proto-1.0.1.tgz", + "integrity": "sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==", + "license": "MIT", + "peer": true, + "dependencies": { + "dunder-proto": "^1.0.1", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/get-stdin": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-6.0.0.tgz", + "integrity": "sha512-jp4tHawyV7+fkkSKyvjuLZswblUtz+SQKzSWnBbii16BuZksJlU1wuBYXY75r+duh/llF1ur6oNwi+2ZzjKZ7g==", + "extraneous": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/get-symbol-description": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.2.tgz", + "integrity": "sha512-g0QYk1dZBxGwk+Ngc+ltRH2IBp2f7zBkBMBJZCDerh6EhlhSR6+9irMCuT/09zD6qkarHUSn529sK/yL4S27mg==", + "extraneous": true, + "dependencies": { + "call-bind": "^1.0.5", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.4" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/getpass": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", + "integrity": "sha512-0fzj9JxOLfJ+XGLhR8ze3unN0KZCgZwiSSDz168VERjK8Wl8kVSdcu2kspd4s4wtAa1y/qrVRiAA0WclVsu0ng==", + "extraneous": true, + "dependencies": { + "assert-plus": "^1.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/github-from-package": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/github-from-package/-/github-from-package-0.0.0.tgz", + "integrity": "sha512-SyHy3T1v2NUXn29OsWdxmK6RwHD+vkj3v8en8AOBZ1wBQ/hCAQ5bAQTD02kW4W9tUp/3Qh6J8r9EvntiyCmOOw==", + "optional": true, + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "deprecated": "Glob versions prior to v9 are no longer supported", + "peer": true, + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/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==", + "extraneous": true, + "dependencies": { + "is-glob": "^4.0.3" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/glob/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "peer": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/glob/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "peer": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/globals": { + "version": "13.24.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.24.0.tgz", + "integrity": "sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==", + "extraneous": true, + "dependencies": { + "type-fest": "^0.20.2" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/globalthis": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.4.tgz", + "integrity": "sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ==", + "extraneous": true, + "dependencies": { + "define-properties": "^1.2.1", + "gopd": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/globby": { + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz", + "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==", + "extraneous": true, + "license": "MIT", + "dependencies": { + "array-union": "^2.1.0", + "dir-glob": "^3.0.1", + "fast-glob": "^3.2.9", + "ignore": "^5.2.0", + "merge2": "^1.4.1", + "slash": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/gopd": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.2.0.tgz", + "integrity": "sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==", + "license": "MIT", + "peer": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/graceful-fs": { + "version": "4.2.11", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", + "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/graphemer": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/graphemer/-/graphemer-1.4.0.tgz", + "integrity": "sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/har-schema": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz", + "integrity": "sha512-Oqluz6zhGX8cyRaTQlFMPw80bSJVG2x/cFb8ZPhUILGgHka9SsokCCOQgpveePerqidZOrT14ipqfJb7ILcW5Q==", + "extraneous": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/har-validator": { + "version": "5.1.5", + "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.5.tgz", + "integrity": "sha512-nmT2T0lljbxdQZfspsno9hgrG3Uir6Ks5afism62poxqBM6sDnMEuPmzTq8XN0OEwqKLLdh1jQI3qyE66Nzb3w==", + "deprecated": "this library is no longer supported", + "extraneous": true, + "dependencies": { + "ajv": "^6.12.3", + "har-schema": "^2.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/has-bigints": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz", + "integrity": "sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==", + "extraneous": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/has-color": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/has-color/-/has-color-0.1.7.tgz", + "integrity": "sha512-kaNz5OTAYYmt646Hkqw50/qyxP2vFnTVu5AQ1Zmk22Kk5+4Qx6BpO8+u7IKsML5fOsFk0ZT0AcCJNYwcvaLBvw==", + "peer": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "optional": true, + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/has-property-descriptors": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz", + "integrity": "sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==", + "peer": true, + "dependencies": { + "es-define-property": "^1.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/has-proto": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.3.tgz", + "integrity": "sha512-SJ1amZAJUiZS+PhsVLf5tGydlaVB8EdFpaSO4gmiUKUOxk8qzn5AIy4ZeJUmh22znIdk/uMAUT2pl3FxzVUH+Q==", + "extraneous": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/has-symbols": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.1.0.tgz", + "integrity": "sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==", + "license": "MIT", + "peer": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/has-tostringtag": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.2.tgz", + "integrity": "sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==", + "peer": true, + "dependencies": { + "has-symbols": "^1.0.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/hasha": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/hasha/-/hasha-3.0.0.tgz", + "integrity": "sha512-w0Kz8lJFBoyaurBiNrIvxPqr/gJ6fOfSkpAPOepN3oECqGJag37xPbOv57izi/KP8auHgNYxn5fXtAb+1LsJ6w==", + "extraneous": true, + "dependencies": { + "is-stream": "^1.0.1" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/hasown": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", + "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", + "peer": true, + "dependencies": { + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/he": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz", + "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==", + "extraneous": true, + "bin": { + "he": "bin/he" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/hexoid": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/hexoid/-/hexoid-1.0.0.tgz", + "integrity": "sha512-QFLV0taWQOZtvIRIAdBChesmogZrtuXvVWsFHZTk2SU+anspqZ2vMnoLg7IE1+Uk16N19APic1BuF8bC8c2m5g==", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/hosted-git-info": { + "version": "2.8.9", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz", + "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/html-escaper": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", + "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/http-errors": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", + "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==", + "license": "MIT", + "peer": true, + "dependencies": { + "depd": "2.0.0", + "inherits": "2.0.4", + "setprototypeof": "1.2.0", + "statuses": "2.0.1", + "toidentifier": "1.0.1" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/http-signature": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", + "integrity": "sha512-CAbnr6Rz4CYQkLYUtSNXxQPUH2gK8f3iWexVlsnMeD+GjlsQ0Xsy1cOX+mN3dtxYomRy21CiOzU8Uhw6OwncEQ==", + "extraneous": true, + "dependencies": { + "assert-plus": "^1.0.0", + "jsprim": "^1.2.2", + "sshpk": "^1.7.0" + }, + "engines": { + "node": ">=0.8", + "npm": ">=1.3.7" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/https-proxy-agent": { + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.6.tgz", + "integrity": "sha512-vK9P5/iUfdl95AI+JVyUuIcVtd4ofvtrOr3HNtM2yxC9bnMbEdp3x01OhQNnjb8IJYi38VlTE3mBXwcfvywuSw==", + "extraneous": true, + "license": "MIT", + "dependencies": { + "agent-base": "^7.1.2", + "debug": "4" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/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==", + "extraneous": true, + "license": "MIT", + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/ieee754": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", + "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/ignore": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.1.tgz", + "integrity": "sha512-5Fytz/IraMjqpwfd34ke28PTVMjZjJG2MPn5t7OE4eUCUNf8BAa7b5WUS9/Qvr6mwOQS7Mk6vdsMno5he+T8Xw==", + "extraneous": true, + "engines": { + "node": ">= 4" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/image-size": { + "version": "0.8.3", + "resolved": "https://registry.npmjs.org/image-size/-/image-size-0.8.3.tgz", + "integrity": "sha512-SMtq1AJ+aqHB45c3FsB4ERK0UCiA2d3H1uq8s+8T0Pf8A3W4teyBQyaFaktH6xvZqh+npwlKU7i4fJo0r7TYTg==", + "peer": true, + "dependencies": { + "queue": "6.0.1" + }, + "bin": { + "image-size": "bin/image-size.js" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/immediate": { + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/immediate/-/immediate-3.0.6.tgz", + "integrity": "sha512-XXOFtyqDjNDAQxVfYxuF7g9Il/IbWmmlQg2MYKOH8ExIT1qg6xc4zyS3HaEEATgs1btfzxq15ciUiY7gjSXRGQ==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/import-fresh": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", + "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", + "extraneous": true, + "dependencies": { + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", + "extraneous": true, + "engines": { + "node": ">=0.8.19" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/indent-string": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-5.0.0.tgz", + "integrity": "sha512-m6FAo/spmsW2Ab2fU35JTYwtOKa2yAwXSwgjSv1TJzh4Mh7mC3lzAOVLBprb72XsTrgkEIsl7YrFNAiDiRhIGg==", + "extraneous": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "deprecated": "This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.", + "peer": true, + "dependencies": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/ini": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", + "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==", + "optional": true, + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/inquirer": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-8.0.0.tgz", + "integrity": "sha512-ON8pEJPPCdyjxj+cxsYRe6XfCJepTxANdNnTebsTuQgXpRyZRRT9t4dJwjRubgmvn20CLSEnozRUayXyM9VTXA==", + "optional": true, + "peer": true, + "dependencies": { + "ansi-escapes": "^4.2.1", + "chalk": "^4.1.0", + "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", + "run-async": "^2.4.0", + "rxjs": "^6.6.6", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0", + "through": "^2.3.6" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/internal-slot": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.7.tgz", + "integrity": "sha512-NGnrKwXzSms2qUUih/ILZ5JBqNTSa1+ZmP6flaIp6KmSElgE9qdndzS3cqjrDovwFdmwsGsLdeFgB6suw+1e9g==", + "extraneous": true, + "dependencies": { + "es-errors": "^1.3.0", + "hasown": "^2.0.0", + "side-channel": "^1.0.4" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/ip-address": { + "version": "9.0.5", + "resolved": "https://registry.npmjs.org/ip-address/-/ip-address-9.0.5.tgz", + "integrity": "sha512-zHtQzGojZXTwZTHQqra+ETKd4Sn3vgi7uBmlPoXVWZqYvuKmtI0l/VZTjqGmJY9x88GGOaZ9+G9ES8hC4T4X8g==", + "peer": true, + "dependencies": { + "jsbn": "1.1.0", + "sprintf-js": "^1.1.3" + }, + "engines": { + "node": ">= 12" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/ip-address/node_modules/sprintf-js": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.1.3.tgz", + "integrity": "sha512-Oo+0REFV59/rz3gfJNKQiBlwfHaSESl1pcGyABQsnnIfWOFt6JNj5gCog2U6MLZ//IGYD+nA8nI+mTShREReaA==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/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==", + "peer": true, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/is-arguments": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-arguments/-/is-arguments-1.1.1.tgz", + "integrity": "sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA==", + "extraneous": true, + "dependencies": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/is-array-buffer": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.4.tgz", + "integrity": "sha512-wcjaerHw0ydZwfhiKbXJWLDY8A7yV7KhjQOpb83hGgGfId/aQa4TOvwyzn2PuswW2gPCYEL/nEAiSVpdOj1lXw==", + "extraneous": true, + "dependencies": { + "call-bind": "^1.0.2", + "get-intrinsic": "^1.2.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/is-arrayish": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/is-bigint": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz", + "integrity": "sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==", + "extraneous": true, + "dependencies": { + "has-bigints": "^1.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/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==", + "extraneous": true, + "license": "MIT", + "dependencies": { + "binary-extensions": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/is-boolean-object": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz", + "integrity": "sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==", + "extraneous": true, + "dependencies": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/is-callable": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz", + "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==", + "extraneous": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/is-core-module": { + "version": "2.14.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.14.0.tgz", + "integrity": "sha512-a5dFJih5ZLYlRtDc0dZWP7RiKr6xIKzmn/oAYCDvdLThadVgyJwlaoQPmRtMSpz+rk0OGAgIu+TcM9HUF0fk1A==", + "peer": true, + "dependencies": { + "hasown": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/is-data-view": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-data-view/-/is-data-view-1.0.1.tgz", + "integrity": "sha512-AHkaJrsUVW6wq6JS8y3JnM/GJF/9cf+k20+iDzlSaJrinEo5+7vRiteOSwBhHRiAyQATN1AmY4hwzxJKPmYf+w==", + "extraneous": true, + "dependencies": { + "is-typed-array": "^1.1.13" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/is-date-object": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz", + "integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==", + "extraneous": true, + "dependencies": { + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/is-expression": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/is-expression/-/is-expression-4.0.0.tgz", + "integrity": "sha512-zMIXX63sxzG3XrkHkrAPvm/OVZVSCPNkwMHU8oTX7/U3AL78I0QXCEICXUM13BIa8TYGZ68PiTKfQz3yaTNr4A==", + "peer": true, + "dependencies": { + "acorn": "^7.1.1", + "object-assign": "^4.1.1" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/is-expression/node_modules/acorn": { + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", + "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", + "peer": true, + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", + "extraneous": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/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==", + "optional": true, + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/is-glob": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "extraneous": true, + "dependencies": { + "is-extglob": "^2.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/is-map": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/is-map/-/is-map-2.0.3.tgz", + "integrity": "sha512-1Qed0/Hr2m+YqxnM09CjA2d/i6YZNfF6R2oRAOj36eUdS6qIV/huPJNSEpKbupewFs+ZsJlxsjjPbc0/afW6Lw==", + "extraneous": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/is-negative-zero": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.3.tgz", + "integrity": "sha512-5KoIu2Ngpyek75jXodFvnafB6DJgr3u8uuK0LEZJjrU19DrMD3EVERaR8sjz8CCGgpZvxPl9SuE1GMVPFHx1mw==", + "extraneous": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "extraneous": true, + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/is-number-object": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.7.tgz", + "integrity": "sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==", + "extraneous": true, + "dependencies": { + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/is-object": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-object/-/is-object-1.0.2.tgz", + "integrity": "sha512-2rRIahhZr2UWb45fIOuvZGpFtz0TyOZLf32KxBbSoUCeZR495zCKlWUKKUByk3geS2eAs7ZAABt0Y/Rx0GiQGA==", + "extraneous": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/is-path-inside": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", + "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==", + "extraneous": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/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==", + "extraneous": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/is-promise": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-2.2.2.tgz", + "integrity": "sha512-+lP4/6lKUBfQjZ2pdxThZvLUAafmZb8OAxFb8XXtiQmS35INgr85hdOGoEs124ez1FCnZJt6jau/T+alh58QFQ==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/is-regex": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz", + "integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==", + "peer": true, + "dependencies": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/is-set": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/is-set/-/is-set-2.0.3.tgz", + "integrity": "sha512-iPAjerrse27/ygGLxw+EBR9agv9Y6uLeYVJMu+QNCoouJ1/1ri0mGrcWpfCqFZuzzx3WjtwxG098X+n4OuRkPg==", + "extraneous": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/is-shared-array-buffer": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.3.tgz", + "integrity": "sha512-nA2hv5XIhLR3uVzDDfCIknerhx8XUKnstuOERPNNIinXG7v9u+ohXF67vxm4TPTEPU6lm61ZkwP3c9PCB97rhg==", + "extraneous": true, + "dependencies": { + "call-bind": "^1.0.7" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/is-stream": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", + "integrity": "sha512-uQPm8kcs47jx38atAcWTVxyltQYoPT68y9aWYdV6yWXSyW8mzSat0TL6CiWdZeCdF3KrAvpVtnHbTv4RN+rqdQ==", + "extraneous": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/is-string": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz", + "integrity": "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==", + "extraneous": true, + "dependencies": { + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/is-symbol": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz", + "integrity": "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==", + "extraneous": true, + "dependencies": { + "has-symbols": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/is-typed-array": { + "version": "1.1.13", + "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.13.tgz", + "integrity": "sha512-uZ25/bUAlUY5fR4OKT4rZQEBrzQWYV9ZJYGGsUmEJ6thodVJ1HX64ePQ6Z0qPWP+m+Uq6e9UugrE38jeYsDSMw==", + "extraneous": true, + "dependencies": { + "which-typed-array": "^1.1.14" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/is-typedarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", + "integrity": "sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/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==", + "extraneous": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/is-weakmap": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/is-weakmap/-/is-weakmap-2.0.2.tgz", + "integrity": "sha512-K5pXYOm9wqY1RgjpL3YTkF39tni1XajUIkawTLUo9EZEVUFga5gSQJF8nNS7ZwJQ02y+1YCNYcMh+HIf1ZqE+w==", + "extraneous": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/is-weakref": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.2.tgz", + "integrity": "sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==", + "extraneous": true, + "dependencies": { + "call-bind": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/is-weakset": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/is-weakset/-/is-weakset-2.0.3.tgz", + "integrity": "sha512-LvIm3/KWzS9oRFHugab7d+M/GcBXuXX5xZkzPmN+NxihdQlZUQ4dWuSV1xR/sq6upL1TJEDrfBgRepHFdBtSNQ==", + "extraneous": true, + "dependencies": { + "call-bind": "^1.0.7", + "get-intrinsic": "^1.2.4" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/isarray": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", + "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/isstream": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", + "integrity": "sha512-Yljz7ffyPbrLpLngrMtZ7NduUgVvi6wG9RJ9IUcyCd59YQ911PBJphODUcbOVbqYfxe1wuYf/LJ8PauMRwsM/g==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/istanbul-lib-coverage": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.5.tgz", + "integrity": "sha512-8aXznuEPCJvGnMSRft4udDRDtb1V3pkQkMMI5LI+6HuQz5oQ4J2UFn1H82raA3qJtyOLkkwVqICBQkjnGtn5mA==", + "extraneous": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/istanbul-lib-hook": { + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/istanbul-lib-hook/-/istanbul-lib-hook-2.0.7.tgz", + "integrity": "sha512-vrRztU9VRRFDyC+aklfLoeXyNdTfga2EI3udDGn4cZ6fpSXpHLV9X6CHvfoMCPtggg8zvDDmC4b9xfu0z6/llA==", + "extraneous": true, + "dependencies": { + "append-transform": "^1.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/istanbul-lib-instrument": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-3.3.0.tgz", + "integrity": "sha512-5nnIN4vo5xQZHdXno/YDXJ0G+I3dAm4XgzfSVTPLQpj/zAV2dV6Juy0yaf10/zrJOJeHoN3fraFe+XRq2bFVZA==", + "extraneous": true, + "dependencies": { + "@babel/generator": "^7.4.0", + "@babel/parser": "^7.4.3", + "@babel/template": "^7.4.0", + "@babel/traverse": "^7.4.3", + "@babel/types": "^7.4.0", + "istanbul-lib-coverage": "^2.0.5", + "semver": "^6.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/istanbul-lib-instrument/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "extraneous": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/istanbul-lib-report": { + "version": "2.0.8", + "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-2.0.8.tgz", + "integrity": "sha512-fHBeG573EIihhAblwgxrSenp0Dby6tJMFR/HvlerBsrCTD5bkUuoNtn3gVh29ZCS824cGGBPn7Sg7cNk+2xUsQ==", + "extraneous": true, + "dependencies": { + "istanbul-lib-coverage": "^2.0.5", + "make-dir": "^2.1.0", + "supports-color": "^6.1.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/istanbul-lib-report/node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "extraneous": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/istanbul-lib-report/node_modules/make-dir": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", + "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", + "extraneous": true, + "dependencies": { + "pify": "^4.0.1", + "semver": "^5.6.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/istanbul-lib-report/node_modules/pify": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", + "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", + "extraneous": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/istanbul-lib-report/node_modules/semver": { + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", + "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", + "extraneous": true, + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/istanbul-lib-report/node_modules/supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "extraneous": true, + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/istanbul-lib-source-maps": { + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-3.0.6.tgz", + "integrity": "sha512-R47KzMtDJH6X4/YW9XTx+jrLnZnscW4VpNN+1PViSYTejLVPWv7oov+Duf8YQSPyVRUvueQqz1TcsC6mooZTXw==", + "extraneous": true, + "dependencies": { + "debug": "^4.1.1", + "istanbul-lib-coverage": "^2.0.5", + "make-dir": "^2.1.0", + "rimraf": "^2.6.3", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/istanbul-lib-source-maps/node_modules/make-dir": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", + "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", + "extraneous": true, + "dependencies": { + "pify": "^4.0.1", + "semver": "^5.6.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/istanbul-lib-source-maps/node_modules/pify": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", + "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", + "extraneous": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/istanbul-lib-source-maps/node_modules/rimraf": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", + "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", + "deprecated": "Rimraf versions prior to v4 are no longer supported", + "extraneous": true, + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/istanbul-lib-source-maps/node_modules/semver": { + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", + "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", + "extraneous": true, + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/istanbul-reports": { + "version": "2.2.7", + "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-2.2.7.tgz", + "integrity": "sha512-uu1F/L1o5Y6LzPVSVZXNOoD/KXpJue9aeLRd0sM9uMXfZvzomB0WxVamWb5ue8kA2vVWEmW7EG+A5n3f1kqHKg==", + "extraneous": true, + "dependencies": { + "html-escaper": "^2.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/jackspeak": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-3.4.0.tgz", + "integrity": "sha512-JVYhQnN59LVPFCEcVa2C3CrEKYacvjRfqIQl+h8oi91aLYQVWRYbxjPcv1bUiUy/kLmQaANrYfNMCO3kuEDHfw==", + "extraneous": true, + "dependencies": { + "@isaacs/cliui": "^8.0.2" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + }, + "optionalDependencies": { + "@pkgjs/parseargs": "^0.11.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/js-stringify": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/js-stringify/-/js-stringify-1.0.2.tgz", + "integrity": "sha512-rtS5ATOo2Q5k1G+DADISilDA6lv79zIiwFd6CcjuIxGKLFm5C+RLImRscVap9k55i+MOZwgliw+NejvkLuGD5g==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/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==", + "license": "MIT", + "peer": true, + "dependencies": { + "argparse": "^2.0.1" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/js-yaml/node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "license": "Python-2.0", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/jsbn": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-1.1.0.tgz", + "integrity": "sha512-4bYVV3aAMtDTTu4+xsDYa6sy9GyJ69/amsu9sYF2zqjiEoZA5xJi3BrfX3uY+/IekIu7MwdObdbDWpoZdBv3/A==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/jsesc": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", + "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", + "extraneous": true, + "bin": { + "jsesc": "bin/jsesc" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/json-buffer": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz", + "integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/json-parse-better-errors": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz", + "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/json-schema": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.4.0.tgz", + "integrity": "sha512-es94M3nTIfsEPisRafak+HDLfHXnKBhV3vU5eqPcS3flIWqcxJWgXHXiey3YrpaNsanY5ei1VoYEbOzijuq9BA==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/json-stable-stringify-without-jsonify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", + "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/json-stringify-safe": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", + "integrity": "sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/json2csv": { + "version": "4.5.4", + "resolved": "https://registry.npmjs.org/json2csv/-/json2csv-4.5.4.tgz", + "integrity": "sha512-YxBhY4Lmn8IvVZ36nqg5omxneLy9JlorkqW1j/EDCeqvmi+CQ4uM+wsvXlcIqvGDewIPXMC/O/oF8DX9EH5aoA==", + "deprecated": "Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.", + "license": "MIT", + "peer": true, + "dependencies": { + "commander": "^2.15.1", + "jsonparse": "^1.3.1", + "lodash.get": "^4.4.2" + }, + "bin": { + "json2csv": "bin/json2csv.js" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/json2csv/node_modules/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==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/jsonfile": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", + "integrity": "sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==", + "peer": true, + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/jsonparse": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/jsonparse/-/jsonparse-1.3.1.tgz", + "integrity": "sha512-POQXvpdL69+CluYsillJ7SUhKvytYjW9vG/GKpnf+xP8UWgYEM/RaMzHHofbALDiKbbP1W8UEYmgGl39WkPZsg==", + "engines": [ + "node >= 0.2.0" + ], + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/JSONStream": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/JSONStream/-/JSONStream-1.3.5.tgz", + "integrity": "sha512-E+iruNOY8VV9s4JEbe1aNEm6MiszPRr/UfcHMz0TQh1BXSxHK+ASV1R6W4HpjBhSeS+54PIsAMCBmwD06LLsqQ==", + "peer": true, + "dependencies": { + "jsonparse": "^1.2.0", + "through": ">=2.2.7 <3" + }, + "bin": { + "JSONStream": "bin.js" + }, + "engines": { + "node": "*" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/jsonwebtoken": { + "version": "9.0.2", + "resolved": "https://registry.npmjs.org/jsonwebtoken/-/jsonwebtoken-9.0.2.tgz", + "integrity": "sha512-PRp66vJ865SSqOlgqS8hujT5U4AOgMfhrwYIuIhfKaoSCZcirrmASQr8CX7cUg+RMih+hgznrjp99o+W4pJLHQ==", + "peer": true, + "dependencies": { + "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": "^7.5.4" + }, + "engines": { + "node": ">=12", + "npm": ">=6" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/jsprim": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.2.tgz", + "integrity": "sha512-P2bSOMAc/ciLz6DzgjVlGJP9+BrJWu5UDGK70C2iweC5QBIeFf0ZXRvGjEj2uYgrY2MkAAhsSWHDWlFtEroZWw==", + "extraneous": true, + "dependencies": { + "assert-plus": "1.0.0", + "extsprintf": "1.3.0", + "json-schema": "0.4.0", + "verror": "1.10.0" + }, + "engines": { + "node": ">=0.6.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/jsprim/node_modules/verror": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", + "integrity": "sha512-ZZKSmDAEFOijERBLkmYfJ+vmk3w+7hOLYDNkRCuRuMJGEmqYNCNLyBBFwWKVMhfwaEF3WOd0Zlw86U/WC/+nYw==", + "engines": [ + "node >=0.6.0" + ], + "extraneous": true, + "dependencies": { + "assert-plus": "^1.0.0", + "core-util-is": "1.0.2", + "extsprintf": "^1.2.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/jstransformer": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/jstransformer/-/jstransformer-1.0.0.tgz", + "integrity": "sha512-C9YK3Rf8q6VAPDCCU9fnqo3mAfOH6vUGnMcP4AQAYIEpWtfGLpwOTmZ+igtdK5y+VvI2n3CyYSzy4Qh34eq24A==", + "peer": true, + "dependencies": { + "is-promise": "^2.0.0", + "promise": "^7.0.1" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/jszip": { + "version": "3.10.1", + "resolved": "https://registry.npmjs.org/jszip/-/jszip-3.10.1.tgz", + "integrity": "sha512-xXDvecyTpGLrqFrvkrUSoxxfJI5AH7U8zxxtVclpsUtMCq4JQ290LY8AW5c7Ggnr/Y/oK+bQMbqK2qmtk3pN4g==", + "extraneous": true, + "license": "(MIT OR GPL-3.0-or-later)", + "dependencies": { + "lie": "~3.3.0", + "pako": "~1.0.2", + "readable-stream": "~2.3.6", + "setimmediate": "^1.0.5" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/jszip/node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/jszip/node_modules/readable-stream": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", + "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", + "extraneous": true, + "dependencies": { + "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" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/jszip/node_modules/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==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/jszip/node_modules/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==", + "extraneous": true, + "dependencies": { + "safe-buffer": "~5.1.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/junk": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/junk/-/junk-4.0.1.tgz", + "integrity": "sha512-Qush0uP+G8ZScpGMZvHUiRfI0YBWuB3gVBYlI0v0vvOJt5FLicco+IkP0a50LqTTQhmts/m6tP5SWE+USyIvcQ==", + "extraneous": true, + "engines": { + "node": ">=12.20" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/just-extend": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/just-extend/-/just-extend-4.2.1.tgz", + "integrity": "sha512-g3UB796vUFIY90VIv/WX3L2c8CS2MdWUww3CNrYmqza1Fg0DURc2K/O4YrnklBdQarSJ/y8JnJYDGc+1iumQjg==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/jwa": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/jwa/-/jwa-1.4.1.tgz", + "integrity": "sha512-qiLX/xhEEFKUAJ6FiBMbes3w9ATzyk5W7Hvzpa/SLYdxNtng+gcurvrI7TbACjIXlsJyr05/S1oUhZrc63evQA==", + "peer": true, + "dependencies": { + "buffer-equal-constant-time": "1.0.1", + "ecdsa-sig-formatter": "1.0.11", + "safe-buffer": "^5.0.1" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/jws": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/jws/-/jws-3.2.2.tgz", + "integrity": "sha512-YHlZCB6lMTllWDtSPHz/ZXTsi8S00usEV6v1tjq8tOUZzw7DpSDWVXjXDre6ed1w/pd495ODpHZYSdkRTsa0HA==", + "peer": true, + "dependencies": { + "jwa": "^1.4.1", + "safe-buffer": "^5.0.1" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/kareem": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/kareem/-/kareem-2.5.1.tgz", + "integrity": "sha512-7jFxRVm+jD+rkq3kY0iZDJfsO2/t4BBPeEb2qKn2lR/9KhuksYk5hxzfRYWMPV8P/x2d0kHD306YyWLzjjH+uA==", + "peer": true, + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/keyv": { + "version": "4.5.4", + "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz", + "integrity": "sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==", + "extraneous": true, + "dependencies": { + "json-buffer": "3.0.1" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/lazystream": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/lazystream/-/lazystream-1.0.1.tgz", + "integrity": "sha512-b94GiNHQNy6JNTrt5w6zNyffMrNkXZb3KTkCZJb2V1xaEGCk093vkZ2jk3tpaeP33/OiXC+WvK9AxUebnf5nbw==", + "peer": true, + "dependencies": { + "readable-stream": "^2.0.5" + }, + "engines": { + "node": ">= 0.6.3" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/lazystream/node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/lazystream/node_modules/readable-stream": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", + "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", + "peer": true, + "dependencies": { + "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" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/lazystream/node_modules/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==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/lazystream/node_modules/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==", + "peer": true, + "dependencies": { + "safe-buffer": "~5.1.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/lcov-parse": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/lcov-parse/-/lcov-parse-1.0.0.tgz", + "integrity": "sha512-aprLII/vPzuQvYZnDRU78Fns9I2Ag3gi4Ipga/hxnVMCZC8DnR2nI7XBqrPoywGfxqIx/DgarGvDJZAD3YBTgQ==", + "extraneous": true, + "license": "BSD-3-Clause", + "bin": { + "lcov-parse": "bin/cli.js" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/ldap-filter": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/ldap-filter/-/ldap-filter-0.3.3.tgz", + "integrity": "sha512-/tFkx5WIn4HuO+6w9lsfxq4FN3O+fDZeO9Mek8dCD8rTUpqzRa766BOBO7BcGkn3X86m5+cBm1/2S/Shzz7gMg==", + "peer": true, + "dependencies": { + "assert-plus": "^1.0.0" + }, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/ldapauth-fork": { + "version": "5.0.5", + "resolved": "https://registry.npmjs.org/ldapauth-fork/-/ldapauth-fork-5.0.5.tgz", + "integrity": "sha512-LWUk76+V4AOZbny/3HIPQtGPWZyA3SW2tRhsWIBi9imP22WJktKLHV1ofd8Jo/wY7Ve6vAT7FCI5mEn3blZTjw==", + "peer": true, + "dependencies": { + "@types/ldapjs": "^2.2.2", + "bcryptjs": "^2.4.0", + "ldapjs": "^2.2.1", + "lru-cache": "^7.10.1" + }, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/ldapjs": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/ldapjs/-/ldapjs-2.3.3.tgz", + "integrity": "sha512-75QiiLJV/PQqtpH+HGls44dXweviFwQ6SiIK27EqzKQ5jU/7UFrl2E5nLdQ3IYRBzJ/AVFJI66u0MZ0uofKYwg==", + "deprecated": "This package has been decomissioned. See https://github.com/ldapjs/node-ldapjs/blob/8ffd0bc9c149088a10ec4c1ec6a18450f76ad05d/README.md", + "peer": true, + "dependencies": { + "abstract-logging": "^2.0.0", + "asn1": "^0.2.4", + "assert-plus": "^1.0.0", + "backoff": "^2.5.0", + "ldap-filter": "^0.3.3", + "once": "^1.4.0", + "vasync": "^2.2.0", + "verror": "^1.8.1" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/levn": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", + "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", + "extraneous": true, + "dependencies": { + "prelude-ls": "^1.2.1", + "type-check": "~0.4.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/lie": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/lie/-/lie-3.3.0.tgz", + "integrity": "sha512-UaiMJzeWRlEujzAuw5LokY1L5ecNQYZKfmyZ9L7wDHb/p5etKaxXhohBcrw0EYby+G/NA52vRSN4N39dxHAIwQ==", + "extraneous": true, + "dependencies": { + "immediate": "~3.0.5" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/load-json-file": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-4.0.0.tgz", + "integrity": "sha512-Kx8hMakjX03tiGTLAIdJ+lL0htKnXjEZN6hk/tozf/WOuYGdZBJrZ+rCJRbVCugsjB3jMLn9746NsQIf5VjBMw==", + "extraneous": true, + "dependencies": { + "graceful-fs": "^4.1.2", + "parse-json": "^4.0.0", + "pify": "^3.0.0", + "strip-bom": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/locate-path": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", + "extraneous": true, + "dependencies": { + "p-locate": "^5.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/lodash": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/lodash.defaults": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/lodash.defaults/-/lodash.defaults-4.2.0.tgz", + "integrity": "sha512-qjxPLHd3r5DnsdGacqOMU6pb/avJzdh9tFX2ymgoZE27BmjXrNy/y4LoaiTeAb+O3gL8AfpJGtqfX/ae2leYYQ==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/lodash.difference": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.difference/-/lodash.difference-4.5.0.tgz", + "integrity": "sha512-dS2j+W26TQ7taQBGN8Lbbq04ssV3emRw4NY58WErlTO29pIqS0HmoT5aJ9+TUQ1N3G+JOZSji4eugsWwGp9yPA==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/lodash.flatten": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/lodash.flatten/-/lodash.flatten-4.4.0.tgz", + "integrity": "sha512-C5N2Z3DgnnKr0LOpv/hKCgKdb7ZZwafIrsesve6lmzvZIRZRGaZ/l6Q8+2W7NaT+ZwO3fFlSCzCzrDCFdJfZ4g==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/lodash.flattendeep": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/lodash.flattendeep/-/lodash.flattendeep-4.4.0.tgz", + "integrity": "sha512-uHaJFihxmJcEX3kT4I23ABqKKalJ/zDrDg0lsFtc1h+3uw49SIJ5beyhx5ExVRti3AvKoOJngIj7xz3oylPdWQ==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/lodash.get": { + "version": "4.4.2", + "resolved": "https://registry.npmjs.org/lodash.get/-/lodash.get-4.4.2.tgz", + "integrity": "sha512-z+Uw/vLuy6gQe8cfaFWD7p0wVv8fJl3mbzXh33RS+0oW2wvUqiRXiQ69gLWSLpgB5/6sU+r6BlQR0MBILadqTQ==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/lodash.includes": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/lodash.includes/-/lodash.includes-4.3.0.tgz", + "integrity": "sha512-W3Bx6mdkRTGtlJISOvVD/lbqjTlPPUDTMnlXZFnVwi9NKJ6tiAk6LVdlhZMm17VZisqhKcgzpO5Wz91PCt5b0w==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/lodash.isboolean": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/lodash.isboolean/-/lodash.isboolean-3.0.3.tgz", + "integrity": "sha512-Bz5mupy2SVbPHURB98VAcw+aHh4vRV5IPNhILUCsOzRmsTmSQ17jIuqopAentWoehktxGd9e/hbIXq980/1QJg==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/lodash.isinteger": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/lodash.isinteger/-/lodash.isinteger-4.0.4.tgz", + "integrity": "sha512-DBwtEWN2caHQ9/imiNeEA5ys1JoRtRfY3d7V9wkqtbycnAmTvRRmbHKDV4a0EYc678/dia0jrte4tjYwVBaZUA==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/lodash.isnumber": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/lodash.isnumber/-/lodash.isnumber-3.0.3.tgz", + "integrity": "sha512-QYqzpfwO3/CWf3XP+Z+tkQsfaLL/EnUlXWVkIk5FUPc4sBdTehEqZONuyRt2P67PXAk+NXmTBcc97zw9t1FQrw==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/lodash.isplainobject": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz", + "integrity": "sha512-oSXzaWypCMHkPC3NvBEaPHf0KsA5mvPrOPgQWDsbg8n7orZ290M0BmC/jgRZ4vcJ6DTAhjrsSYgdsW/F+MFOBA==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/lodash.isstring": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/lodash.isstring/-/lodash.isstring-4.0.1.tgz", + "integrity": "sha512-0wJxfxH1wgO3GrbuP+dTTk7op+6L41QCXbGINEmD+ny/G/eCqGzxyCsh7159S+mgDDcoarnBw6PC1PS5+wUGgw==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/lodash.merge": { + "version": "4.6.2", + "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", + "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/lodash.once": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/lodash.once/-/lodash.once-4.1.1.tgz", + "integrity": "sha512-Sb487aTOCr9drQVL8pIxOzVhafOjZN9UU54hiN8PU3uAiSV7lx1yYNpbNmex2PK6dSJoNTSJUUswT651yww3Mg==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/lodash.union": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/lodash.union/-/lodash.union-4.6.0.tgz", + "integrity": "sha512-c4pB2CdGrGdjMKYLA+XiRDO7Y0PRQbm/Gzg8qMj+QH+pFVAoTp5sBpO0odL3FjoPCGjK96p6qsP+yQoiLoOBcw==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/log-driver": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/log-driver/-/log-driver-1.2.7.tgz", + "integrity": "sha512-U7KCmLdqsGHBLeWqYlFA0V0Sl6P08EE1ZrmA9cxjUE0WVqT9qnyVDPz1kzpFEP0jdJuFnasWIfSd7fsaNXkpbg==", + "extraneous": true, + "engines": { + "node": ">=0.8.6" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/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==", + "extraneous": true, + "dependencies": { + "chalk": "^4.1.0", + "is-unicode-supported": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/lolex": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/lolex/-/lolex-4.2.0.tgz", + "integrity": "sha512-gKO5uExCXvSm6zbF562EvM+rd1kQDnB9AZBbiQVzf1ZmdDpxUSvpnAaVOP83N/31mRK8Ml8/VE8DMvsAZQ+7wg==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/loupe": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/loupe/-/loupe-2.3.7.tgz", + "integrity": "sha512-zSMINGVYkdpYSOBmLi0D1Uo7JU9nVdQKrHxC8eYlV+9YKK9WePqAlL7lSlorG/U2Fw1w0hTBmaa/jrQ3UbPHtA==", + "extraneous": true, + "dependencies": { + "get-func-name": "^2.0.1" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/lru-cache": { + "version": "7.18.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", + "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", + "peer": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/make-dir": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "extraneous": true, + "license": "MIT", + "dependencies": { + "semver": "^6.0.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/make-dir/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "extraneous": true, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/map-stream": { + "version": "0.0.7", + "resolved": "https://registry.npmjs.org/map-stream/-/map-stream-0.0.7.tgz", + "integrity": "sha512-C0X0KQmGm3N2ftbTGBhSyuydQ+vV1LC3f3zPvT3RXHXNZrvfPZcoXp/N5DOa8vedX/rTMm2CjTtivFg2STJMRQ==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/math-intrinsics": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/math-intrinsics/-/math-intrinsics-1.1.0.tgz", + "integrity": "sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==", + "license": "MIT", + "peer": true, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/media-typer": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", + "integrity": "sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==", + "peer": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/memory-pager": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/memory-pager/-/memory-pager-1.5.0.tgz", + "integrity": "sha512-ZS4Bp4r/Zoeq6+NLJpP+0Zzm0pR8whtGPf1XExKLJBAczGMnSi3It14OiNCStjQjM6NU1okjQGSxgEZN8eBYKg==", + "optional": true, + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/memorystream": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/memorystream/-/memorystream-0.3.1.tgz", + "integrity": "sha512-S3UwM3yj5mtUSEfP41UZmt/0SCoVYUcU1rkXv+BQ5Ig8ndL4sPoJNBUJERafdPb5jjHJGuMgytgKvKIf58XNBw==", + "extraneous": true, + "engines": { + "node": ">= 0.10.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/meow": { + "version": "12.1.1", + "resolved": "https://registry.npmjs.org/meow/-/meow-12.1.1.tgz", + "integrity": "sha512-BhXM0Au22RwUneMPwSCnyhTOizdWoIEPU9sp0Aqa1PnDMR5Wv2FGXYDjuzJEIX+Eo2Rb8xuYe5jrnm5QowQFkw==", + "extraneous": true, + "engines": { + "node": ">=16.10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/merge-descriptors": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.3.tgz", + "integrity": "sha512-gaNvAS7TZ897/rVaZ0nMtAyxNyi/pdbjbAwUpFQpN70GqnVfOiXpeUUMKRBmzXaSQ8DdTX4/0ms62r2K+hE6mQ==", + "license": "MIT", + "peer": true, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/merge-source-map": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/merge-source-map/-/merge-source-map-1.1.0.tgz", + "integrity": "sha512-Qkcp7P2ygktpMPh2mCQZaf3jhN6D3Z/qVZHSdWvQ+2Ef5HgRAPBO57A77+ENm0CPx2+1Ce/MYKi3ymqdfuqibw==", + "extraneous": true, + "dependencies": { + "source-map": "^0.6.1" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/merge2": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", + "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", + "extraneous": true, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/methods": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", + "integrity": "sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==", + "peer": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/mgrs": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/mgrs/-/mgrs-1.0.0.tgz", + "integrity": "sha512-awNbTOqCxK1DBGjalK3xqWIstBZgN6fxsMSiXLs9/spqWkF2pAhb2rrYCFSsr1/tT7PhcDGjZndG8SWYn0byYA==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/micromatch": { + "version": "4.0.7", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.7.tgz", + "integrity": "sha512-LPP/3KorzCwBxfeUuZmaR6bG2kdeHSbe0P2tY3FLRU4vYrjYz5hI4QZwV0njUx3jeuKe67YukQ1LSPZBKDqO/Q==", + "extraneous": true, + "dependencies": { + "braces": "^3.0.3", + "picomatch": "^2.3.1" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/mime": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", + "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", + "license": "MIT", + "peer": true, + "bin": { + "mime": "cli.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/mime-db": { + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", + "peer": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/mime-types": { + "version": "2.1.35", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", + "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", + "peer": true, + "dependencies": { + "mime-db": "1.52.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/mimic-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", + "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", + "optional": true, + "peer": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/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==", + "optional": true, + "peer": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/minimatch": { + "version": "9.0.3", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", + "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", + "extraneous": true, + "license": "ISC", + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/minimist": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", + "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", + "peer": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/minipass": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.2.tgz", + "integrity": "sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==", + "extraneous": true, + "engines": { + "node": ">=16 || 14 >=14.17" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/mkdirp": { + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", + "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", + "peer": true, + "dependencies": { + "minimist": "^1.2.6" + }, + "bin": { + "mkdirp": "bin/cmd.js" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/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==", + "optional": true, + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/mocha": { + "version": "10.8.2", + "resolved": "https://registry.npmjs.org/mocha/-/mocha-10.8.2.tgz", + "integrity": "sha512-VZlYo/WE8t1tstuRmqgeyBgCbJc/lEdopaa+axcKzTBJ+UIdlAB9XnmvTCAH4pwR4ElNInaedhEBmZD8iCSVEg==", + "extraneous": true, + "license": "MIT", + "dependencies": { + "ansi-colors": "^4.1.3", + "browser-stdout": "^1.3.1", + "chokidar": "^3.5.3", + "debug": "^4.3.5", + "diff": "^5.2.0", + "escape-string-regexp": "^4.0.0", + "find-up": "^5.0.0", + "glob": "^8.1.0", + "he": "^1.2.0", + "js-yaml": "^4.1.0", + "log-symbols": "^4.1.0", + "minimatch": "^5.1.6", + "ms": "^2.1.3", + "serialize-javascript": "^6.0.2", + "strip-json-comments": "^3.1.1", + "supports-color": "^8.1.1", + "workerpool": "^6.5.1", + "yargs": "^16.2.0", + "yargs-parser": "^20.2.9", + "yargs-unparser": "^2.0.0" + }, + "bin": { + "_mocha": "bin/_mocha", + "mocha": "bin/mocha.js" + }, + "engines": { + "node": ">= 14.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/mocha/node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/mocha/node_modules/glob": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/glob/-/glob-8.1.0.tgz", + "integrity": "sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ==", + "deprecated": "Glob versions prior to v9 are no longer supported", + "extraneous": true, + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^5.0.1", + "once": "^1.3.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/mocha/node_modules/js-yaml": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", + "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", + "extraneous": true, + "dependencies": { + "argparse": "^2.0.1" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/mocha/node_modules/minimatch": { + "version": "5.1.6", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz", + "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==", + "extraneous": true, + "license": "ISC", + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/mocha/node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/mocha/node_modules/supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "extraneous": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/supports-color?sponsor=1" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/mock-fs": { + "version": "4.14.0", + "resolved": "https://registry.npmjs.org/mock-fs/-/mock-fs-4.14.0.tgz", + "integrity": "sha512-qYvlv/exQ4+svI3UOvPUpLDF0OMX5euvUH0Ny4N5QyRyhNdgAgUrVH3iUINSzEPLvx0kbo/Bp28GJKIqvE7URw==", + "extraneous": true, + "license": "MIT" + }, + "node_modules/@ngageoint/mage.service/node_modules/module-not-found-error": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/module-not-found-error/-/module-not-found-error-1.0.1.tgz", + "integrity": "sha512-pEk4ECWQXV6z2zjhRZUongnLJNUeGQJ3w6OQ5ctGwD+i5o93qjRQUk2Rt6VdNeu3sEP0AB4LcfvdebpxBRVr4g==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/moment": { + "version": "2.30.1", + "resolved": "https://registry.npmjs.org/moment/-/moment-2.30.1.tgz", + "integrity": "sha512-uEmtNhbDOrWPFS+hdjFCBfy9f2YoyzRpwcl+DqpC6taX21FzsTLQVbMV/W7PzNSX6x/bhC1zA3c2UQ5NzH6how==", + "license": "MIT", + "peer": true, + "engines": { + "node": "*" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/mongodb": { + "version": "4.17.2", + "resolved": "https://registry.npmjs.org/mongodb/-/mongodb-4.17.2.tgz", + "integrity": "sha512-mLV7SEiov2LHleRJPMPrK2PMyhXFZt2UQLC4VD4pnth3jMjYKHhtqfwwkkvS/NXuo/Fp3vbhaNcXrIDaLRb9Tg==", + "peer": true, + "dependencies": { + "bson": "^4.7.2", + "mongodb-connection-string-url": "^2.6.0", + "socks": "^2.7.1" + }, + "engines": { + "node": ">=12.9.0" + }, + "optionalDependencies": { + "@aws-sdk/credential-providers": "^3.186.0", + "@mongodb-js/saslprep": "^1.1.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/mongodb-connection-string-url": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/mongodb-connection-string-url/-/mongodb-connection-string-url-2.6.0.tgz", + "integrity": "sha512-WvTZlI9ab0QYtTYnuMLgobULWhokRjtC7db9LtcVfJ+Hsnyr5eo6ZtNAt3Ly24XZScGMelOcGtm7lSn0332tPQ==", + "peer": true, + "dependencies": { + "@types/whatwg-url": "^8.2.1", + "whatwg-url": "^11.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/mongodb-memory-server": { + "version": "9.5.0", + "resolved": "https://registry.npmjs.org/mongodb-memory-server/-/mongodb-memory-server-9.5.0.tgz", + "integrity": "sha512-In3zRT40cLlVtpy7FK6b96Lby6JBAdXj8Kf9YrH4p1Aa2X4ptojq7SmiRR3x47Lo0/UCXXIwhJpkdbYY8kRZAw==", + "extraneous": true, + "hasInstallScript": true, + "license": "MIT", + "dependencies": { + "mongodb-memory-server-core": "9.5.0", + "tslib": "^2.6.3" + }, + "engines": { + "node": ">=14.20.1" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/mongodb-memory-server-core": { + "version": "9.5.0", + "resolved": "https://registry.npmjs.org/mongodb-memory-server-core/-/mongodb-memory-server-core-9.5.0.tgz", + "integrity": "sha512-Jb/V80JeYAKWaF4bPFme7SmTR6ew1PWgkpPUepLDfRraeN49i1cruxICeA4zz4T33W/o31N+zazP8wI8ebf7yw==", + "extraneous": true, + "license": "MIT", + "dependencies": { + "async-mutex": "^0.4.1", + "camelcase": "^6.3.0", + "debug": "^4.3.7", + "find-cache-dir": "^3.3.2", + "follow-redirects": "^1.15.9", + "https-proxy-agent": "^7.0.5", + "mongodb": "^5.9.2", + "new-find-package-json": "^2.0.0", + "semver": "^7.6.3", + "tar-stream": "^3.1.7", + "tslib": "^2.6.3", + "yauzl": "^3.1.3" + }, + "engines": { + "node": ">=14.20.1" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/mongodb-memory-server-core/node_modules/bson": { + "version": "5.5.1", + "resolved": "https://registry.npmjs.org/bson/-/bson-5.5.1.tgz", + "integrity": "sha512-ix0EwukN2EpC0SRWIj/7B5+A6uQMQy6KMREI9qQqvgpkV2frH63T0UDVd1SYedL6dNCmDBYB3QtXi4ISk9YT+g==", + "extraneous": true, + "license": "Apache-2.0", + "engines": { + "node": ">=14.20.1" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/mongodb-memory-server-core/node_modules/debug": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.0.tgz", + "integrity": "sha512-6WTZ/IxCY/T6BALoZHaE4ctp9xm+Z5kY/pzYaCHRFeyVhojxlrm+46y68HA6hr0TcwEssoxNiDEUJQjfPZ/RYA==", + "extraneous": true, + "license": "MIT", + "dependencies": { + "ms": "^2.1.3" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/@ngageoint/mage.service/node_modules/mongodb-memory-server-core/node_modules/mongodb": { + "version": "5.9.2", + "resolved": "https://registry.npmjs.org/mongodb/-/mongodb-5.9.2.tgz", + "integrity": "sha512-H60HecKO4Bc+7dhOv4sJlgvenK4fQNqqUIlXxZYQNbfEWSALGAwGoyJd/0Qwk4TttFXUOHJ2ZJQe/52ScaUwtQ==", + "extraneous": true, + "license": "Apache-2.0", + "dependencies": { + "bson": "^5.5.0", + "mongodb-connection-string-url": "^2.6.0", + "socks": "^2.7.1" + }, + "engines": { + "node": ">=14.20.1" + }, + "optionalDependencies": { + "@mongodb-js/saslprep": "^1.1.0" + }, + "peerDependencies": { + "@aws-sdk/credential-providers": "^3.188.0", + "@mongodb-js/zstd": "^1.0.0", + "kerberos": "^1.0.0 || ^2.0.0", + "mongodb-client-encryption": ">=2.3.0 <3", + "snappy": "^7.2.2" + }, + "peerDependenciesMeta": { + "@aws-sdk/credential-providers": { + "optional": true + }, + "@mongodb-js/zstd": { + "optional": true + }, + "kerberos": { + "optional": true + }, + "mongodb-client-encryption": { + "optional": true + }, + "snappy": { + "optional": true + } + } + }, + "node_modules/@ngageoint/mage.service/node_modules/mongodb-memory-server-core/node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "extraneous": true, + "license": "MIT" + }, + "node_modules/@ngageoint/mage.service/node_modules/mongodb-memory-server-core/node_modules/tar-stream": { + "version": "3.1.7", + "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-3.1.7.tgz", + "integrity": "sha512-qJj60CXt7IU1Ffyc3NJMjh6EkuCFej46zUqJ4J7pqYlThyd9bO0XBTmcOIhSzZJVWfsLks0+nle/j538YAW9RQ==", + "extraneous": true, + "license": "MIT", + "dependencies": { + "b4a": "^1.6.4", + "fast-fifo": "^1.2.0", + "streamx": "^2.15.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/mongoose": { + "version": "6.13.8", + "resolved": "https://registry.npmjs.org/mongoose/-/mongoose-6.13.8.tgz", + "integrity": "sha512-JHKco/533CyVrqCbyQsnqMpLn8ZCiKrPDTd2mvo2W7ygIvhygWjX2wj+RPjn6upZZgw0jC6U51RD7kUsyK8NBg==", + "license": "MIT", + "peer": true, + "dependencies": { + "bson": "^4.7.2", + "kareem": "2.5.1", + "mongodb": "4.17.2", + "mpath": "0.9.0", + "mquery": "4.0.3", + "ms": "2.1.3", + "sift": "16.0.1" + }, + "engines": { + "node": ">=12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/mongoose" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/mongoose/node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/mpath": { + "version": "0.9.0", + "resolved": "https://registry.npmjs.org/mpath/-/mpath-0.9.0.tgz", + "integrity": "sha512-ikJRQTk8hw5DEoFVxHG1Gn9T/xcjtdnOKIU1JTmGjZZlg9LST2mBLmcX3/ICIbgJydT2GOc15RnNy5mHmzfSew==", + "peer": true, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/mquery": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/mquery/-/mquery-4.0.3.tgz", + "integrity": "sha512-J5heI+P08I6VJ2Ky3+33IpCdAvlYGTSUjwTPxkAr8i8EoduPMBX2OY/wa3IKZIQl7MU4SbFk8ndgSKyB/cl1zA==", + "peer": true, + "dependencies": { + "debug": "4.x" + }, + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/multer": { + "version": "1.4.5-lts.1", + "resolved": "https://registry.npmjs.org/multer/-/multer-1.4.5-lts.1.tgz", + "integrity": "sha512-ywPWvcDMeH+z9gQq5qYHCCy+ethsk4goepZ45GLD63fOu0YcNecQxi64nDs3qluZB+murG3/D4dJ7+dGctcCQQ==", + "peer": true, + "dependencies": { + "append-field": "^1.0.0", + "busboy": "^1.0.0", + "concat-stream": "^1.5.2", + "mkdirp": "^0.5.4", + "object-assign": "^4.1.1", + "type-is": "^1.6.4", + "xtend": "^4.0.0" + }, + "engines": { + "node": ">= 6.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/mute-stream": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz", + "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==", + "optional": true, + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/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==", + "optional": true, + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/natural-compare": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", + "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/negotiator": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", + "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==", + "peer": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/nested-error-stacks": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/nested-error-stacks/-/nested-error-stacks-2.1.1.tgz", + "integrity": "sha512-9iN1ka/9zmX1ZvLV9ewJYEk9h7RyRRtqdK0woXcqohu8EWIerfPUjYJPg0ULy0UqP7cslmdGc8xKDJcojlKiaw==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/new-find-package-json": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/new-find-package-json/-/new-find-package-json-2.0.0.tgz", + "integrity": "sha512-lDcBsjBSMlj3LXH2v/FW3txlh2pYTjmbOXPYJD93HI5EwuLzI11tdHSIpUMmfq/IOsldj4Ps8M8flhm+pCK4Ew==", + "extraneous": true, + "license": "MIT", + "dependencies": { + "debug": "^4.3.4" + }, + "engines": { + "node": ">=12.22.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/nice-try": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz", + "integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/nise": { + "version": "1.5.3", + "resolved": "https://registry.npmjs.org/nise/-/nise-1.5.3.tgz", + "integrity": "sha512-Ymbac/94xeIrMf59REBPOv0thr+CJVFMhrlAkW/gjCIE58BGQdCj0x7KRCb3yz+Ga2Rz3E9XXSvUyyxqqhjQAQ==", + "extraneous": true, + "dependencies": { + "@sinonjs/formatio": "^3.2.1", + "@sinonjs/text-encoding": "^0.7.1", + "just-extend": "^4.0.2", + "lolex": "^5.0.1", + "path-to-regexp": "^1.7.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/nise/node_modules/isarray": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", + "integrity": "sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/nise/node_modules/lolex": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/lolex/-/lolex-5.1.2.tgz", + "integrity": "sha512-h4hmjAvHTmd+25JSwrtTIuwbKdwg5NzZVRMLn9saij4SZaepCrTCxPr35H/3bjwfMJtN+t3CX8672UIkglz28A==", + "extraneous": true, + "dependencies": { + "@sinonjs/commons": "^1.7.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/nise/node_modules/path-to-regexp": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-1.8.0.tgz", + "integrity": "sha512-n43JRhlUKUAlibEJhPeir1ncUID16QnEjNpwzNdO3Lm4ywrBpBZ5oLD0I6br9evr1Y9JTqwRtAh7JLoOzAQdVA==", + "extraneous": true, + "dependencies": { + "isarray": "0.0.1" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/nock": { + "version": "11.9.1", + "resolved": "https://registry.npmjs.org/nock/-/nock-11.9.1.tgz", + "integrity": "sha512-U5wPctaY4/ar2JJ5Jg4wJxlbBfayxgKbiAeGh+a1kk6Pwnc2ZEuKviLyDSG6t0uXl56q7AALIxoM6FJrBSsVXA==", + "extraneous": true, + "license": "MIT", + "dependencies": { + "debug": "^4.1.0", + "json-stringify-safe": "^5.0.1", + "lodash": "^4.17.13", + "mkdirp": "^0.5.0", + "propagate": "^2.0.0" + }, + "engines": { + "node": ">= 8.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/node-abi": { + "version": "3.65.0", + "resolved": "https://registry.npmjs.org/node-abi/-/node-abi-3.65.0.tgz", + "integrity": "sha512-ThjYBfoDNr08AWx6hGaRbfPwxKV9kVzAzOzlLKbk2CuqXE2xnCh+cbAGnwM3t8Lq4v9rUB7VfondlkBckcJrVA==", + "optional": true, + "peer": true, + "dependencies": { + "semver": "^7.3.5" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/node-fetch": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.7.0.tgz", + "integrity": "sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==", + "license": "MIT", + "peer": true, + "dependencies": { + "whatwg-url": "^5.0.0" + }, + "engines": { + "node": "4.x || >=6.0.0" + }, + "peerDependencies": { + "encoding": "^0.1.0" + }, + "peerDependenciesMeta": { + "encoding": { + "optional": true + } + } + }, + "node_modules/@ngageoint/mage.service/node_modules/node-fetch/node_modules/tr46": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", + "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==", + "license": "MIT", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/node-fetch/node_modules/webidl-conversions": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", + "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==", + "license": "BSD-2-Clause", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/node-fetch/node_modules/whatwg-url": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", + "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", + "license": "MIT", + "peer": true, + "dependencies": { + "tr46": "~0.0.3", + "webidl-conversions": "^3.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/nomnom": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/nomnom/-/nomnom-1.8.1.tgz", + "integrity": "sha512-5s0JxqhDx9/rksG2BTMVN1enjWSvPidpoSgViZU4ZXULyTe+7jxcCRLB6f42Z0l1xYJpleCBtSyY6Lwg3uu5CQ==", + "deprecated": "Package no longer supported. Contact support@npmjs.com for more info.", + "peer": true, + "dependencies": { + "chalk": "~0.4.0", + "underscore": "~1.6.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/nomnom/node_modules/ansi-styles": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-1.0.0.tgz", + "integrity": "sha512-3iF4FIKdxaVYT3JqQuY3Wat/T2t7TRbbQ94Fu50ZUCbLy4TFbTzr90NOHQodQkNqmeEGCw8WbeP78WNi6SKYUA==", + "peer": true, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/nomnom/node_modules/chalk": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-0.4.0.tgz", + "integrity": "sha512-sQfYDlfv2DGVtjdoQqxS0cEZDroyG8h6TamA6rvxwlrU5BaSLDx9xhatBYl2pxZ7gmpNaPFVwBtdGdu5rQ+tYQ==", + "peer": true, + "dependencies": { + "ansi-styles": "~1.0.0", + "has-color": "~0.1.0", + "strip-ansi": "~0.1.0" + }, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/nomnom/node_modules/strip-ansi": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-0.1.1.tgz", + "integrity": "sha512-behete+3uqxecWlDAm5lmskaSaISA+ThQ4oNNBDTBJt0x2ppR6IPqfZNuj6BLaLJ/Sji4TPZlcRyOis8wXQTLg==", + "peer": true, + "bin": { + "strip-ansi": "cli.js" + }, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/nomnom/node_modules/underscore": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.6.0.tgz", + "integrity": "sha512-z4o1fvKUojIWh9XuaVLUDdf86RQiq13AC1dmHbTpoyuu+bquHms76v16CjycCbec87J7z0k//SiQVk0sMdFmpQ==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/normalize-package-data": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", + "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", + "extraneous": true, + "dependencies": { + "hosted-git-info": "^2.1.4", + "resolve": "^1.10.0", + "semver": "2 || 3 || 4 || 5", + "validate-npm-package-license": "^3.0.1" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/normalize-package-data/node_modules/semver": { + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", + "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", + "extraneous": true, + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "peer": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/npm-run-all": { + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/npm-run-all/-/npm-run-all-4.1.5.tgz", + "integrity": "sha512-Oo82gJDAVcaMdi3nuoKFavkIHBRVqQ1qvMb+9LHk/cF4P6B2m8aP04hGf7oL6wZ9BuGwX1onlLhpuoofSyoQDQ==", + "extraneous": true, + "dependencies": { + "ansi-styles": "^3.2.1", + "chalk": "^2.4.1", + "cross-spawn": "^6.0.5", + "memorystream": "^0.3.1", + "minimatch": "^3.0.4", + "pidtree": "^0.3.0", + "read-pkg": "^3.0.0", + "shell-quote": "^1.6.1", + "string.prototype.padend": "^3.0.0" + }, + "bin": { + "npm-run-all": "bin/npm-run-all/index.js", + "run-p": "bin/run-p/index.js", + "run-s": "bin/run-s/index.js" + }, + "engines": { + "node": ">= 4" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/npm-run-all/node_modules/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==", + "extraneous": true, + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/npm-run-all/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "extraneous": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/npm-run-all/node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "extraneous": true, + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/npm-run-all/node_modules/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==", + "extraneous": true, + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/npm-run-all/node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/npm-run-all/node_modules/cross-spawn": { + "version": "6.0.5", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", + "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", + "extraneous": true, + "dependencies": { + "nice-try": "^1.0.4", + "path-key": "^2.0.1", + "semver": "^5.5.0", + "shebang-command": "^1.2.0", + "which": "^1.2.9" + }, + "engines": { + "node": ">=4.8" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/npm-run-all/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "extraneous": true, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/npm-run-all/node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "extraneous": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/npm-run-all/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "extraneous": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/npm-run-all/node_modules/path-key": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", + "integrity": "sha512-fEHGKCSmUSDPv4uoj8AlD+joPlq3peND+HRYyxFz4KPw4z926S/b8rIuFs2FYJg3BwsxJf6A9/3eIdLaYC+9Dw==", + "extraneous": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/npm-run-all/node_modules/semver": { + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", + "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", + "extraneous": true, + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/npm-run-all/node_modules/shebang-command": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", + "integrity": "sha512-EV3L1+UQWGor21OmnvojK36mhg+TyIKDh3iFBKBohr5xeXIhNBcx8oWdgkTEEQ+BEFFYdLRuqMfd5L84N1V5Vg==", + "extraneous": true, + "dependencies": { + "shebang-regex": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/npm-run-all/node_modules/shebang-regex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", + "integrity": "sha512-wpoSFAxys6b2a2wHZ1XpDSgD7N9iVjg29Ph9uV/uaP9Ex/KXlkTZTeddxDPSYQpgvzKLGJke2UU0AzoGCjNIvQ==", + "extraneous": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/npm-run-all/node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "extraneous": true, + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/npm-run-all/node_modules/which": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "extraneous": true, + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "which": "bin/which" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/nyc": { + "version": "14.1.1", + "resolved": "https://registry.npmjs.org/nyc/-/nyc-14.1.1.tgz", + "integrity": "sha512-OI0vm6ZGUnoGZv/tLdZ2esSVzDwUC88SNs+6JoSOMVxA+gKMB8Tk7jBwgemLx4O40lhhvZCVw1C+OYLOBOPXWw==", + "extraneous": true, + "dependencies": { + "archy": "^1.0.0", + "caching-transform": "^3.0.2", + "convert-source-map": "^1.6.0", + "cp-file": "^6.2.0", + "find-cache-dir": "^2.1.0", + "find-up": "^3.0.0", + "foreground-child": "^1.5.6", + "glob": "^7.1.3", + "istanbul-lib-coverage": "^2.0.5", + "istanbul-lib-hook": "^2.0.7", + "istanbul-lib-instrument": "^3.3.0", + "istanbul-lib-report": "^2.0.8", + "istanbul-lib-source-maps": "^3.0.6", + "istanbul-reports": "^2.2.4", + "js-yaml": "^3.13.1", + "make-dir": "^2.1.0", + "merge-source-map": "^1.1.0", + "resolve-from": "^4.0.0", + "rimraf": "^2.6.3", + "signal-exit": "^3.0.2", + "spawn-wrap": "^1.4.2", + "test-exclude": "^5.2.3", + "uuid": "^3.3.2", + "yargs": "^13.2.2", + "yargs-parser": "^13.0.0" + }, + "bin": { + "nyc": "bin/nyc.js" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/nyc/node_modules/ansi-regex": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.1.tgz", + "integrity": "sha512-ILlv4k/3f6vfQ4OoP2AGvirOktlQ98ZEL1k9FaQjxa3L1abBgbuTDAdPOpvbGncC0BTVQrl+OM8xZGK6tWXt7g==", + "extraneous": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/nyc/node_modules/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==", + "extraneous": true, + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/nyc/node_modules/camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "extraneous": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/nyc/node_modules/cliui": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-5.0.0.tgz", + "integrity": "sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA==", + "extraneous": true, + "dependencies": { + "string-width": "^3.1.0", + "strip-ansi": "^5.2.0", + "wrap-ansi": "^5.1.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/nyc/node_modules/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==", + "extraneous": true, + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/nyc/node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/nyc/node_modules/cp-file": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/cp-file/-/cp-file-6.2.0.tgz", + "integrity": "sha512-fmvV4caBnofhPe8kOcitBwSn2f39QLjnAnGq3gO9dfd75mUytzKNZB1hde6QHunW2Rt+OwuBOMc3i1tNElbszA==", + "extraneous": true, + "dependencies": { + "graceful-fs": "^4.1.2", + "make-dir": "^2.0.0", + "nested-error-stacks": "^2.0.0", + "pify": "^4.0.1", + "safe-buffer": "^5.0.1" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/nyc/node_modules/decamelize": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", + "integrity": "sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA==", + "extraneous": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/nyc/node_modules/emoji-regex": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", + "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/nyc/node_modules/find-cache-dir": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-2.1.0.tgz", + "integrity": "sha512-Tq6PixE0w/VMFfCgbONnkiQIVol/JJL7nRMi20fqzA4NRs9AfeqMGeRdPi3wIhYkxjeBaWh2rxwapn5Tu3IqOQ==", + "extraneous": true, + "dependencies": { + "commondir": "^1.0.1", + "make-dir": "^2.0.0", + "pkg-dir": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/nyc/node_modules/find-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "extraneous": true, + "dependencies": { + "locate-path": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/nyc/node_modules/is-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha512-VHskAKYM8RfSFXwee5t5cbN5PZeq1Wrh6qd5bkyiXIf6UQcN6w/A0eXM9r6t8d+GYOh+o6ZhiEnb88LN/Y8m2w==", + "extraneous": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/nyc/node_modules/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==", + "extraneous": true, + "dependencies": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/nyc/node_modules/locate-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "extraneous": true, + "dependencies": { + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/nyc/node_modules/make-dir": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", + "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", + "extraneous": true, + "dependencies": { + "pify": "^4.0.1", + "semver": "^5.6.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/nyc/node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "extraneous": true, + "dependencies": { + "p-try": "^2.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/nyc/node_modules/p-locate": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "extraneous": true, + "dependencies": { + "p-limit": "^2.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/nyc/node_modules/path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==", + "extraneous": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/nyc/node_modules/pify": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", + "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", + "extraneous": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/nyc/node_modules/pkg-dir": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-3.0.0.tgz", + "integrity": "sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw==", + "extraneous": true, + "dependencies": { + "find-up": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/nyc/node_modules/rimraf": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", + "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", + "deprecated": "Rimraf versions prior to v4 are no longer supported", + "extraneous": true, + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/nyc/node_modules/semver": { + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", + "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", + "extraneous": true, + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/nyc/node_modules/string-width": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", + "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", + "extraneous": true, + "dependencies": { + "emoji-regex": "^7.0.1", + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^5.1.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/nyc/node_modules/strip-ansi": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", + "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "extraneous": true, + "dependencies": { + "ansi-regex": "^4.1.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/nyc/node_modules/uuid": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", + "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==", + "deprecated": "Please upgrade to version 7 or higher. Older versions may use Math.random() in certain circumstances, which is known to be problematic. See https://v8.dev/blog/math-random for details.", + "extraneous": true, + "bin": { + "uuid": "bin/uuid" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/nyc/node_modules/wrap-ansi": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-5.1.0.tgz", + "integrity": "sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q==", + "extraneous": true, + "dependencies": { + "ansi-styles": "^3.2.0", + "string-width": "^3.0.0", + "strip-ansi": "^5.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/nyc/node_modules/y18n": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz", + "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/nyc/node_modules/yargs": { + "version": "13.3.2", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-13.3.2.tgz", + "integrity": "sha512-AX3Zw5iPruN5ie6xGRIDgqkT+ZhnRlZMLMHAs8tg7nRruy2Nb+i5o9bwghAogtM08q1dpr2LVoS8KSTMYpWXUw==", + "extraneous": true, + "dependencies": { + "cliui": "^5.0.0", + "find-up": "^3.0.0", + "get-caller-file": "^2.0.1", + "require-directory": "^2.1.1", + "require-main-filename": "^2.0.0", + "set-blocking": "^2.0.0", + "string-width": "^3.0.0", + "which-module": "^2.0.0", + "y18n": "^4.0.0", + "yargs-parser": "^13.1.2" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/nyc/node_modules/yargs-parser": { + "version": "13.1.2", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.2.tgz", + "integrity": "sha512-3lbsNRf/j+A4QuSZfDRA7HRSfWrzO0YjqTJd5kjAq37Zep1CEgaYmrH9Q3GwPiB9cHyd1Y1UwggGhJGoxipbzg==", + "extraneous": true, + "dependencies": { + "camelcase": "^5.0.0", + "decamelize": "^1.2.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/oauth": { + "version": "0.10.2", + "resolved": "https://registry.npmjs.org/oauth/-/oauth-0.10.2.tgz", + "integrity": "sha512-JtFnB+8nxDEXgNyniwz573xxbKSOu3R8D40xQKqcjwJ2CDkYqUDI53o6IuzDJBx60Z8VKCm271+t8iFjakrl8Q==", + "license": "MIT", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/oauth-sign": { + "version": "0.9.0", + "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz", + "integrity": "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==", + "extraneous": true, + "engines": { + "node": "*" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", + "peer": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/object-inspect": { + "version": "1.13.4", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.4.tgz", + "integrity": "sha512-W67iLl4J2EXEGTbfeHCffrjDfitvLANg0UlX3wFUUSTx92KXRFegMHUVgSqE+wvhAbi4WqjGg9czysTV2Epbew==", + "license": "MIT", + "peer": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/object-is": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/object-is/-/object-is-1.1.6.tgz", + "integrity": "sha512-F8cZ+KfGlSGi09lJT7/Nd6KJZ9ygtvYC0/UYYLI9nmQKLMnydpB9yvbv9K1uSkEu7FU9vYPmVwLg328tX+ot3Q==", + "extraneous": true, + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/object-keys": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", + "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", + "extraneous": true, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/object.assign": { + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.5.tgz", + "integrity": "sha512-byy+U7gp+FVwmyzKPYhW2h5l3crpmGsxl7X2s8y43IgxvG4g3QZ6CffDtsNQy1WsmZpQbO+ybo0AlW7TY6DcBQ==", + "extraneous": true, + "dependencies": { + "call-bind": "^1.0.5", + "define-properties": "^1.2.1", + "has-symbols": "^1.0.3", + "object-keys": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/on-finished": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz", + "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==", + "license": "MIT", + "peer": true, + "dependencies": { + "ee-first": "1.1.1" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/on-headers": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/on-headers/-/on-headers-1.0.2.tgz", + "integrity": "sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA==", + "peer": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", + "peer": true, + "dependencies": { + "wrappy": "1" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/onetime": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", + "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", + "optional": true, + "peer": true, + "dependencies": { + "mimic-fn": "^2.1.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/openapi-enforcer": { + "version": "1.23.0", + "resolved": "https://registry.npmjs.org/openapi-enforcer/-/openapi-enforcer-1.23.0.tgz", + "integrity": "sha512-Ja6kvNQ28jvCHpotNZkB129/dBg2IslMDV56aUSl1Dcs+bcd8lGJTq1NatGYsspGpURXvQnFA/q2K8V3AQoO3Q==", + "extraneous": true, + "license": "Apache-2.0", + "dependencies": { + "js-yaml": "^4.1.0", + "randexp": "^0.5.3" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/openapi-enforcer/node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "extraneous": true, + "license": "Python-2.0" + }, + "node_modules/@ngageoint/mage.service/node_modules/openapi-enforcer/node_modules/js-yaml": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", + "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", + "extraneous": true, + "license": "MIT", + "dependencies": { + "argparse": "^2.0.1" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/opentype.js": { + "version": "0.7.3", + "resolved": "https://registry.npmjs.org/opentype.js/-/opentype.js-0.7.3.tgz", + "integrity": "sha512-Veui5vl2bLonFJ/SjX/WRWJT3SncgiZNnKUyahmXCc2sa1xXW15u3R/3TN5+JFiP7RsjK5ER4HA5eWaEmV9deA==", + "peer": true, + "dependencies": { + "tiny-inflate": "^1.0.2" + }, + "bin": { + "ot": "bin/ot" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/optionator": { + "version": "0.9.4", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.4.tgz", + "integrity": "sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==", + "extraneous": true, + "dependencies": { + "deep-is": "^0.1.3", + "fast-levenshtein": "^2.0.6", + "levn": "^0.4.1", + "prelude-ls": "^1.2.1", + "type-check": "^0.4.0", + "word-wrap": "^1.2.5" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/os-homedir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", + "integrity": "sha512-B5JU3cabzk8c67mRRd3ECmROafjYMXbuzlwtqdM8IbS8ktlTix8aFGb2bAGKrSRIlnfKwovGUUr72JUPyOb6kQ==", + "extraneous": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/os-tmpdir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", + "integrity": "sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==", + "optional": true, + "peer": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/p-event": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/p-event/-/p-event-5.0.1.tgz", + "integrity": "sha512-dd589iCQ7m1L0bmC5NLlVYfy3TbBEsMUfWx9PyAgPeIcFZ/E2yaTZ4Rz4MiBmmJShviiftHVXOqfnfzJ6kyMrQ==", + "extraneous": true, + "dependencies": { + "p-timeout": "^5.0.2" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/p-filter": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-filter/-/p-filter-3.0.0.tgz", + "integrity": "sha512-QtoWLjXAW++uTX67HZQz1dbTpqBfiidsB6VtQUC9iR85S120+s0T5sO6s+B5MLzFcZkrEd/DGMmCjR+f2Qpxwg==", + "extraneous": true, + "dependencies": { + "p-map": "^5.1.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/p-filter/node_modules/p-map": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-5.5.0.tgz", + "integrity": "sha512-VFqfGDHlx87K66yZrNdI4YGtD70IRyd+zSvgks6mzHPRNkoKy+9EKP4SFC77/vTTQYmRmti7dvqC+m5jBrBAcg==", + "extraneous": true, + "dependencies": { + "aggregate-error": "^4.0.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "extraneous": true, + "dependencies": { + "yocto-queue": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/p-locate": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", + "extraneous": true, + "dependencies": { + "p-limit": "^3.0.2" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/p-map": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-6.0.0.tgz", + "integrity": "sha512-T8BatKGY+k5rU+Q/GTYgrEf2r4xRMevAN5mtXc2aPc4rS1j3s+vWTaO2Wag94neXuCAUAs8cxBL9EeB5EA6diw==", + "extraneous": true, + "engines": { + "node": ">=16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/p-timeout": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/p-timeout/-/p-timeout-5.1.0.tgz", + "integrity": "sha512-auFDyzzzGZZZdHz3BtET9VEz0SE/uMEAx7uWfGPucfzEwwe/xH0iVeZibQmANYE/hp9T2+UUZT5m+BKyrDp3Ew==", + "extraneous": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "extraneous": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/package-hash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/package-hash/-/package-hash-3.0.0.tgz", + "integrity": "sha512-lOtmukMDVvtkL84rJHI7dpTYq+0rli8N2wlnqUcBuDWCfVhRUfOmnR9SsoHFMLpACvEV60dX7rd0rFaYDZI+FA==", + "extraneous": true, + "dependencies": { + "graceful-fs": "^4.1.15", + "hasha": "^3.0.0", + "lodash.flattendeep": "^4.4.0", + "release-zalgo": "^1.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/package-json-from-dist": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/package-json-from-dist/-/package-json-from-dist-1.0.0.tgz", + "integrity": "sha512-dATvCeZN/8wQsGywez1mzHtTlP22H8OEfPrVMLNr4/eGa+ijtLn/6M5f0dY8UKNrC2O9UCU6SSoG3qRKnt7STw==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/pako": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz", + "integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/parent-module": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", + "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", + "extraneous": true, + "dependencies": { + "callsites": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/parse-json": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", + "integrity": "sha512-aOIos8bujGN93/8Ox/jPLh7RwVnPEysynVFE+fQZyg6jKELEHwzgKdLRFHUgXJL6kylijVSBC4BvN9OmsB48Rw==", + "extraneous": true, + "dependencies": { + "error-ex": "^1.3.1", + "json-parse-better-errors": "^1.0.1" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/parseurl": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", + "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==", + "peer": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/passport": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/passport/-/passport-0.7.0.tgz", + "integrity": "sha512-cPLl+qZpSc+ireUvt+IzqbED1cHHkDoVYMo30jbJIdOOjQ1MQYZBPiNvmi8UM6lJuOpTPXJGZQk0DtC4y61MYQ==", + "license": "MIT", + "peer": true, + "dependencies": { + "passport-strategy": "1.x.x", + "pause": "0.0.1", + "utils-merge": "^1.0.1" + }, + "engines": { + "node": ">= 0.4.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/jaredhanson" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/passport-anonymous": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/passport-anonymous/-/passport-anonymous-1.0.1.tgz", + "integrity": "sha512-Mk2dls97nLTzHpsWCYQ54IVGucWaiWSHHr3+IhWYAebg4dRgRQIfyoeYrixoxB2z2z4+EM7p9yjC+a3yMB5z5A==", + "peer": true, + "dependencies": { + "passport-strategy": "1.x.x" + }, + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/passport-http-bearer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/passport-http-bearer/-/passport-http-bearer-1.0.1.tgz", + "integrity": "sha512-SELQM+dOTuMigr9yu8Wo4Fm3ciFfkMq5h/ZQ8ffi4ELgZrX1xh9PlglqZdcUZ1upzJD/whVyt+YWF62s3U6Ipw==", + "peer": true, + "dependencies": { + "passport-strategy": "1.x.x" + }, + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/passport-ldapauth": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/passport-ldapauth/-/passport-ldapauth-3.0.1.tgz", + "integrity": "sha512-TRRx3BHi8GC8MfCT9wmghjde/EGeKjll7zqHRRfGRxXbLcaDce2OftbQrFG7/AWaeFhR6zpZHtBQ/IkINdLVjQ==", + "peer": true, + "dependencies": { + "ldapauth-fork": "^5.0.1", + "passport-strategy": "^1.0.0" + }, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/passport-local": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/passport-local/-/passport-local-1.0.0.tgz", + "integrity": "sha512-9wCE6qKznvf9mQYYbgJ3sVOHmCWoUNMVFoZzNoznmISbhnNNPhN9xfY3sLmScHMetEJeoY7CXwfhCe7argfQow==", + "peer": true, + "dependencies": { + "passport-strategy": "1.x.x" + }, + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/passport-oauth2": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/passport-oauth2/-/passport-oauth2-1.8.0.tgz", + "integrity": "sha512-cjsQbOrXIDE4P8nNb3FQRCCmJJ/utnFKEz2NX209f7KOHPoX18gF7gBzBbLLsj2/je4KrgiwLLGjf0lm9rtTBA==", + "license": "MIT", + "peer": true, + "dependencies": { + "base64url": "3.x.x", + "oauth": "0.10.x", + "passport-strategy": "1.x.x", + "uid2": "0.0.x", + "utils-merge": "1.x.x" + }, + "engines": { + "node": ">= 0.4.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/jaredhanson" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/passport-openidconnect": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/passport-openidconnect/-/passport-openidconnect-0.1.2.tgz", + "integrity": "sha512-JX3rTyW+KFZ/E9OF/IpXJPbyLO9vGzcmXB5FgSP2jfL3LGKJPdV7zUE8rWeKeeI/iueQggOeFa3onrCmhxXZTg==", + "license": "MIT", + "peer": true, + "dependencies": { + "oauth": "0.10.x", + "passport-strategy": "1.x.x" + }, + "engines": { + "node": ">= 0.6.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/jaredhanson" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/passport-strategy": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/passport-strategy/-/passport-strategy-1.0.0.tgz", + "integrity": "sha512-CB97UUvDKJde2V0KDWWB3lyf6PC3FaZP7YxZ2G8OAtn9p4HI9j9JLP9qjOGZFvyl8uwNT8qM+hGnz/n16NI7oA==", + "peer": true, + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "extraneous": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", + "peer": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "extraneous": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/path-parse": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/path-scurry": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.11.1.tgz", + "integrity": "sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==", + "extraneous": true, + "dependencies": { + "lru-cache": "^10.2.0", + "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0" + }, + "engines": { + "node": ">=16 || 14 >=14.18" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/path-scurry/node_modules/lru-cache": { + "version": "10.3.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.3.0.tgz", + "integrity": "sha512-CQl19J/g+Hbjbv4Y3mFNNXFEL/5t/KCg8POCuUqd4rMKjGG+j1ybER83hxV58zL+dFI1PTkt3GNFSHRt+d8qEQ==", + "extraneous": true, + "engines": { + "node": "14 || >=16.14" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/path-to-regexp": { + "version": "0.1.12", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.12.tgz", + "integrity": "sha512-RA1GjUVMnvYFxuqovrEqZoxxW5NUZqbwKtYz/Tt7nXerk0LbLblQmrsgdeOxV5SFHf0UDggjS/bSeOZwt1pmEQ==", + "license": "MIT", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/path-type": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", + "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", + "extraneous": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/pathval": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/pathval/-/pathval-1.1.1.tgz", + "integrity": "sha512-Dp6zGqpTdETdR63lehJYPeIOqpiNBNtc7BpWSLrOje7UaIsE5aY92r/AunQA7rsXvet3lrJ3JnZX29UPTKXyKQ==", + "extraneous": true, + "engines": { + "node": "*" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/pause": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/pause/-/pause-0.0.1.tgz", + "integrity": "sha512-KG8UEiEVkR3wGEb4m5yZkVCzigAD+cVEJck2CzYZO37ZGJfctvVptVO192MwrtPhzONn6go8ylnOdMhKqi4nfg==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/pause-stream": { + "version": "0.0.11", + "resolved": "https://registry.npmjs.org/pause-stream/-/pause-stream-0.0.11.tgz", + "integrity": "sha512-e3FBlXLmN/D1S+zHzanP4E/4Z60oFAa3O051qt1pxa7DEJWKAyil6upYVXCWadEnuoqa4Pkc9oUx9zsxYeRv8A==", + "peer": true, + "dependencies": { + "through": "~2.3" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/peek-readable": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/peek-readable/-/peek-readable-4.1.0.tgz", + "integrity": "sha512-ZI3LnwUv5nOGbQzD9c2iDG6toheuXSZP5esSHBjopsXH4dg19soufvpUGA3uohi5anFtGb2lhAVdHzH6R/Evvg==", + "peer": true, + "engines": { + "node": ">=8" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/Borewit" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/pend": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz", + "integrity": "sha512-F3asv42UuXchdzt+xXqfW1OGlVBe+mxa2mqI0pg5yAHZPvFmY3Y6drSf/GQ1A86WgWEN9Kzh/WrgKa6iGcHXLg==", + "extraneous": true, + "license": "MIT" + }, + "node_modules/@ngageoint/mage.service/node_modules/performance-now": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", + "integrity": "sha512-7EAHlyLHI56VEIdK57uwHdHKIaAGbnXPiw0yWbarQZOKaKpvUIgW0jWRVLiatnM+XXlSwsanIBH/hzGMJulMow==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/picocolors": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.1.tgz", + "integrity": "sha512-anP1Z8qwhkbmu7MFP5iTt+wQKXgwzf7zTyGlcdzabySa9vd0Xt392U0rVmz9poOaBj0uHJKyyo9/upk0HrEQew==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "extraneous": true, + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/pidtree": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/pidtree/-/pidtree-0.3.1.tgz", + "integrity": "sha512-qQbW94hLHEqCg7nhby4yRC7G2+jYHY4Rguc2bjw7Uug4GIJuu1tvf2uHaZv5Q8zdt+WKJ6qK1FOI6amaWUo5FA==", + "extraneous": true, + "bin": { + "pidtree": "bin/pidtree.js" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/pify": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", + "integrity": "sha512-C3FsVNH1udSEX48gGX1xfvwTWfsYWj5U+8/uK15BGzIGrKoUpghX8hWZwa/OFnakBiiVNmBvemTJR5mcy7iPcg==", + "extraneous": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/pkg-dir": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", + "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", + "extraneous": true, + "license": "MIT", + "dependencies": { + "find-up": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/pkg-dir/node_modules/find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "extraneous": true, + "license": "MIT", + "dependencies": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/pkg-dir/node_modules/locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "extraneous": true, + "license": "MIT", + "dependencies": { + "p-locate": "^4.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/pkg-dir/node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "extraneous": true, + "license": "MIT", + "dependencies": { + "p-try": "^2.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/pkg-dir/node_modules/p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "extraneous": true, + "license": "MIT", + "dependencies": { + "p-limit": "^2.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/pkginfo": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/pkginfo/-/pkginfo-0.3.1.tgz", + "integrity": "sha512-yO5feByMzAp96LtP58wvPKSbaKAi/1C4kV9XpTctr6EepnP6F33RBNOiVrdz9BrPA98U2BMFsTNHo44TWcbQ2A==", + "peer": true, + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/polygon-clipping": { + "version": "0.15.7", + "resolved": "https://registry.npmjs.org/polygon-clipping/-/polygon-clipping-0.15.7.tgz", + "integrity": "sha512-nhfdr83ECBg6xtqOAJab1tbksbBAOMUltN60bU+llHVOL0e5Onm1WpAXXWXVB39L8AJFssoIhEVuy/S90MmotA==", + "peer": true, + "dependencies": { + "robust-predicates": "^3.0.2", + "splaytree": "^3.1.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/ports": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/ports/-/ports-1.1.0.tgz", + "integrity": "sha512-XmS7dspHnkTXZC75NkG0ti2hLj8aSyg1Izp87/2cWT7QhTo1vdtWsQ4ldp4BEQ/EXqy0s4yTATJUZ3t9RGZVpg==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/possible-typed-array-names": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/possible-typed-array-names/-/possible-typed-array-names-1.0.0.tgz", + "integrity": "sha512-d7Uw+eZoloe0EHDIYoe+bQ5WXnGMOpmiZFTuMWCwpjzzkL2nTjcKiAk4hh8TjnGye2TwWOk3UXucZ+3rbmBa8Q==", + "extraneous": true, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/prebuild-install": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/prebuild-install/-/prebuild-install-7.1.2.tgz", + "integrity": "sha512-UnNke3IQb6sgarcZIDU3gbMeTp/9SSU1DAIkil7PrqG1vZlBtY5msYccSKSHDqa3hNg436IXK+SNImReuA1wEQ==", + "optional": true, + "peer": true, + "dependencies": { + "detect-libc": "^2.0.0", + "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": "^3.3.0", + "pump": "^3.0.0", + "rc": "^1.2.7", + "simple-get": "^4.0.0", + "tar-fs": "^2.0.0", + "tunnel-agent": "^0.6.0" + }, + "bin": { + "prebuild-install": "bin.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/precond": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/precond/-/precond-0.2.3.tgz", + "integrity": "sha512-QCYG84SgGyGzqJ/vlMsxeXd/pgL/I94ixdNFyh1PusWmTCyVfPJjZ1K1jvHtsbfnXQs2TSkEP2fR7QiMZAnKFQ==", + "peer": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/prelude-ls": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", + "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", + "extraneous": true, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/prettier": { + "version": "1.19.1", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-1.19.1.tgz", + "integrity": "sha512-s7PoyDv/II1ObgQunCbB9PdLmUcBZcnWOcxDh7O0N/UwDEsHyqkW+Qh28jW+mVuCdx7gLB0BotYI1Y6uI9iyew==", + "extraneous": true, + "bin": { + "prettier": "bin-prettier.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/prettier-linter-helpers": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/prettier-linter-helpers/-/prettier-linter-helpers-1.0.0.tgz", + "integrity": "sha512-GbK2cP9nraSSUF9N2XwUwqfzlAFlMNYYl+ShE/V+H8a9uNl/oUqB1w2EL54Jh0OlyRSd8RfWYJ3coVS4TROP2w==", + "extraneous": true, + "dependencies": { + "fast-diff": "^1.1.2" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/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==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/proj4": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/proj4/-/proj4-2.8.0.tgz", + "integrity": "sha512-baC+YcD4xsSqJ+CpCZljj2gcQDhlKb+J+Zjv/2KSBwWNjk4M0pafgQsE+mWurd84tflMIsP+7j7mtIpFDHzQfQ==", + "peer": true, + "dependencies": { + "mgrs": "1.0.0", + "wkt-parser": "^1.3.1" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/promise": { + "version": "7.3.1", + "resolved": "https://registry.npmjs.org/promise/-/promise-7.3.1.tgz", + "integrity": "sha512-nolQXZ/4L+bP/UGlkfaIujX9BKxGwmQ9OT4mOt5yvy8iK1h3wqTEJCijzGANTCCl9nWjY41juyAn2K3Q1hLLTg==", + "peer": true, + "dependencies": { + "asap": "~2.0.3" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/propagate": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/propagate/-/propagate-2.0.1.tgz", + "integrity": "sha512-vGrhOavPSTz4QVNuBNdcNXePNdNMaO1xj9yBeH1ScQPjk/rhg9sSlCXPhMkFuaNNW/syTvYqsnbIJxMBfRbbag==", + "extraneous": true, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/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==", + "peer": true, + "dependencies": { + "forwarded": "0.2.0", + "ipaddr.js": "1.9.1" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/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==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/proxyquire": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/proxyquire/-/proxyquire-2.1.3.tgz", + "integrity": "sha512-BQWfCqYM+QINd+yawJz23tbBM40VIGXOdDw3X344KcclI/gtBbdWF6SlQ4nK/bYhF9d27KYug9WzljHC6B9Ysg==", + "extraneous": true, + "dependencies": { + "fill-keys": "^1.0.2", + "module-not-found-error": "^1.0.1", + "resolve": "^1.11.1" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/pseudomap": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", + "integrity": "sha512-b/YwNhb8lk1Zz2+bXXpS/LK9OisiZZ1SNsSLxN1x2OXVEhW2Ckr/7mWE5vrC1ZTiJlD9g19jWszTmJsB+oEpFQ==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/psl": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/psl/-/psl-1.9.0.tgz", + "integrity": "sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/pug": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/pug/-/pug-3.0.3.tgz", + "integrity": "sha512-uBi6kmc9f3SZ3PXxqcHiUZLmIXgfgWooKWXcwSGwQd2Zi5Rb0bT14+8CJjJgI8AB+nndLaNgHGrcc6bPIB665g==", + "license": "MIT", + "peer": true, + "dependencies": { + "pug-code-gen": "^3.0.3", + "pug-filters": "^4.0.0", + "pug-lexer": "^5.0.1", + "pug-linker": "^4.0.0", + "pug-load": "^3.0.0", + "pug-parser": "^6.0.0", + "pug-runtime": "^3.0.1", + "pug-strip-comments": "^2.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/pug-attrs": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pug-attrs/-/pug-attrs-3.0.0.tgz", + "integrity": "sha512-azINV9dUtzPMFQktvTXciNAfAuVh/L/JCl0vtPCwvOA21uZrC08K/UnmrL+SXGEVc1FwzjW62+xw5S/uaLj6cA==", + "peer": true, + "dependencies": { + "constantinople": "^4.0.1", + "js-stringify": "^1.0.2", + "pug-runtime": "^3.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/pug-code-gen": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/pug-code-gen/-/pug-code-gen-3.0.3.tgz", + "integrity": "sha512-cYQg0JW0w32Ux+XTeZnBEeuWrAY7/HNE6TWnhiHGnnRYlCgyAUPoyh9KzCMa9WhcJlJ1AtQqpEYHc+vbCzA+Aw==", + "peer": true, + "dependencies": { + "constantinople": "^4.0.1", + "doctypes": "^1.1.0", + "js-stringify": "^1.0.2", + "pug-attrs": "^3.0.0", + "pug-error": "^2.1.0", + "pug-runtime": "^3.0.1", + "void-elements": "^3.1.0", + "with": "^7.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/pug-error": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/pug-error/-/pug-error-2.1.0.tgz", + "integrity": "sha512-lv7sU9e5Jk8IeUheHata6/UThZ7RK2jnaaNztxfPYUY+VxZyk/ePVaNZ/vwmH8WqGvDz3LrNYt/+gA55NDg6Pg==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/pug-filters": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/pug-filters/-/pug-filters-4.0.0.tgz", + "integrity": "sha512-yeNFtq5Yxmfz0f9z2rMXGw/8/4i1cCFecw/Q7+D0V2DdtII5UvqE12VaZ2AY7ri6o5RNXiweGH79OCq+2RQU4A==", + "peer": true, + "dependencies": { + "constantinople": "^4.0.1", + "jstransformer": "1.0.0", + "pug-error": "^2.0.0", + "pug-walk": "^2.0.0", + "resolve": "^1.15.1" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/pug-lexer": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/pug-lexer/-/pug-lexer-5.0.1.tgz", + "integrity": "sha512-0I6C62+keXlZPZkOJeVam9aBLVP2EnbeDw3An+k0/QlqdwH6rv8284nko14Na7c0TtqtogfWXcRoFE4O4Ff20w==", + "peer": true, + "dependencies": { + "character-parser": "^2.2.0", + "is-expression": "^4.0.0", + "pug-error": "^2.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/pug-linker": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/pug-linker/-/pug-linker-4.0.0.tgz", + "integrity": "sha512-gjD1yzp0yxbQqnzBAdlhbgoJL5qIFJw78juN1NpTLt/mfPJ5VgC4BvkoD3G23qKzJtIIXBbcCt6FioLSFLOHdw==", + "peer": true, + "dependencies": { + "pug-error": "^2.0.0", + "pug-walk": "^2.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/pug-load": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pug-load/-/pug-load-3.0.0.tgz", + "integrity": "sha512-OCjTEnhLWZBvS4zni/WUMjH2YSUosnsmjGBB1An7CsKQarYSWQ0GCVyd4eQPMFJqZ8w9xgs01QdiZXKVjk92EQ==", + "peer": true, + "dependencies": { + "object-assign": "^4.1.1", + "pug-walk": "^2.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/pug-parser": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/pug-parser/-/pug-parser-6.0.0.tgz", + "integrity": "sha512-ukiYM/9cH6Cml+AOl5kETtM9NR3WulyVP2y4HOU45DyMim1IeP/OOiyEWRr6qk5I5klpsBnbuHpwKmTx6WURnw==", + "peer": true, + "dependencies": { + "pug-error": "^2.0.0", + "token-stream": "1.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/pug-runtime": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/pug-runtime/-/pug-runtime-3.0.1.tgz", + "integrity": "sha512-L50zbvrQ35TkpHwv0G6aLSuueDRwc/97XdY8kL3tOT0FmhgG7UypU3VztfV/LATAvmUfYi4wNxSajhSAeNN+Kg==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/pug-strip-comments": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/pug-strip-comments/-/pug-strip-comments-2.0.0.tgz", + "integrity": "sha512-zo8DsDpH7eTkPHCXFeAk1xZXJbyoTfdPlNR0bK7rpOMuhBYb0f5qUVCO1xlsitYd3w5FQTK7zpNVKb3rZoUrrQ==", + "peer": true, + "dependencies": { + "pug-error": "^2.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/pug-walk": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/pug-walk/-/pug-walk-2.0.0.tgz", + "integrity": "sha512-yYELe9Q5q9IQhuvqsZNwA5hfPkMJ8u92bQLIMcsMxf/VADjNtEYptU+inlufAFYcWdHlwNfZOEnOOQrZrcyJCQ==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/pump": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", + "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", + "optional": true, + "peer": true, + "dependencies": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/punycode": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz", + "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==", + "peer": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/qs": { + "version": "6.13.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.13.0.tgz", + "integrity": "sha512-+38qI9SOr8tfZ4QmJNplMUxqjbe7LKvvZgWdExBOmd+egZTtjLB67Gu0HRX3u/XOq7UU2Nx6nsjvS16Z9uwfpg==", + "license": "BSD-3-Clause", + "peer": true, + "dependencies": { + "side-channel": "^1.0.6" + }, + "engines": { + "node": ">=0.6" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/queue": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/queue/-/queue-6.0.1.tgz", + "integrity": "sha512-AJBQabRCCNr9ANq8v77RJEv73DPbn55cdTb+Giq4X0AVnNVZvMHlYp7XlQiN+1npCZj1DuSmaA2hYVUUDgxFDg==", + "peer": true, + "dependencies": { + "inherits": "~2.0.3" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/queue-microtask": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", + "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", + "extraneous": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/@ngageoint/mage.service/node_modules/quickselect": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/quickselect/-/quickselect-2.0.0.tgz", + "integrity": "sha512-RKJ22hX8mHe3Y6wH/N3wCM6BWtjaxIyyUIkpHOvfFnxdI4yD4tBXEBKSbriGujF6jnSVkJrffuo6vxACiSSxIw==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/randexp": { + "version": "0.5.3", + "resolved": "https://registry.npmjs.org/randexp/-/randexp-0.5.3.tgz", + "integrity": "sha512-U+5l2KrcMNOUPYvazA3h5ekF80FHTUG+87SEAmHZmolh1M+i/WyTCxVzmi+tidIa1tM4BSe8g2Y/D3loWDjj+w==", + "extraneous": true, + "dependencies": { + "drange": "^1.0.2", + "ret": "^0.2.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/random-bytes": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/random-bytes/-/random-bytes-1.0.0.tgz", + "integrity": "sha512-iv7LhNVO047HzYR3InF6pUcUsPQiHTM1Qal51DcGSuZFBil1aBBWG5eHPNek7bvILMaYJ/8RU1e8w1AMdHmLQQ==", + "peer": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/randombytes": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", + "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", + "extraneous": true, + "license": "MIT", + "dependencies": { + "safe-buffer": "^5.1.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/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==", + "license": "MIT", + "peer": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/raw-body": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.2.tgz", + "integrity": "sha512-8zGqypfENjCIqGhgXToC8aB2r7YrBX+AQAfIPs/Mlk+BtPTztOvTS01NRW/3Eh60J+a48lt8qsCzirQ6loCVfA==", + "license": "MIT", + "peer": true, + "dependencies": { + "bytes": "3.1.2", + "http-errors": "2.0.0", + "iconv-lite": "0.4.24", + "unpipe": "1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/raw-body/node_modules/iconv-lite": { + "version": "0.4.24", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", + "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", + "license": "MIT", + "peer": true, + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/rbush": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/rbush/-/rbush-3.0.1.tgz", + "integrity": "sha512-XRaVO0YecOpEuIvbhbpTrZgoiI6xBlz6hnlr6EHhd+0x9ase6EmeN+hdwwUaJvLcsFFQ8iWVF1GAK1yB0BWi0w==", + "peer": true, + "dependencies": { + "quickselect": "^2.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/rc": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", + "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==", + "optional": true, + "peer": true, + "dependencies": { + "deep-extend": "^0.6.0", + "ini": "~1.3.0", + "minimist": "^1.2.0", + "strip-json-comments": "~2.0.1" + }, + "bin": { + "rc": "cli.js" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/rc/node_modules/strip-json-comments": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", + "integrity": "sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ==", + "optional": true, + "peer": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/read-pkg": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-3.0.0.tgz", + "integrity": "sha512-BLq/cCO9two+lBgiTYNqD6GdtK8s4NpaWrl6/rCO9w0TUS8oJl7cmToOZfRYllKTISY6nt1U7jQ53brmKqY6BA==", + "extraneous": true, + "dependencies": { + "load-json-file": "^4.0.0", + "normalize-package-data": "^2.3.2", + "path-type": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/read-pkg-up": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-4.0.0.tgz", + "integrity": "sha512-6etQSH7nJGsK0RbG/2TeDzZFa8shjQ1um+SwQQ5cwKy0dhSXdOncEhb1CPpvQG4h7FyOV6EB6YlV0yJvZQNAkA==", + "extraneous": true, + "dependencies": { + "find-up": "^3.0.0", + "read-pkg": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/read-pkg-up/node_modules/find-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "extraneous": true, + "dependencies": { + "locate-path": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/read-pkg-up/node_modules/locate-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "extraneous": true, + "dependencies": { + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/read-pkg-up/node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "extraneous": true, + "dependencies": { + "p-try": "^2.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/read-pkg-up/node_modules/p-locate": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "extraneous": true, + "dependencies": { + "p-limit": "^2.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/read-pkg-up/node_modules/path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==", + "extraneous": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/read-pkg/node_modules/path-type": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz", + "integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==", + "extraneous": true, + "dependencies": { + "pify": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/readable-stream": { + "version": "3.6.2", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", + "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", + "peer": true, + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/readable-web-to-node-stream": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/readable-web-to-node-stream/-/readable-web-to-node-stream-3.0.2.tgz", + "integrity": "sha512-ePeK6cc1EcKLEhJFt/AebMCLL+GgSKhuygrZ/GLaKZYEecIgIECf4UaUuaByiGtzckwR4ain9VzUh95T1exYGw==", + "peer": true, + "dependencies": { + "readable-stream": "^3.6.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/Borewit" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/readdir-glob": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/readdir-glob/-/readdir-glob-1.1.3.tgz", + "integrity": "sha512-v05I2k7xN8zXvPD9N+z/uhXPaj0sUFCe2rcWZIpBsqxfP7xXFQ0tipAd/wjj1YxWyWtUS5IDJpOG82JKt2EAVA==", + "peer": true, + "dependencies": { + "minimatch": "^5.1.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/readdir-glob/node_modules/minimatch": { + "version": "5.1.6", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz", + "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==", + "peer": true, + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/readdirp": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "extraneous": true, + "license": "MIT", + "dependencies": { + "picomatch": "^2.2.1" + }, + "engines": { + "node": ">=8.10.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/regexp.prototype.flags": { + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.2.tgz", + "integrity": "sha512-NcDiDkTLuPR+++OCKB0nWafEmhg/Da8aUPLPMQbK+bxKKCm1/S5he+AqYa4PlMCVBalb4/yxIRub6qkEx5yJbw==", + "extraneous": true, + "dependencies": { + "call-bind": "^1.0.6", + "define-properties": "^1.2.1", + "es-errors": "^1.3.0", + "set-function-name": "^2.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/release-zalgo": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/release-zalgo/-/release-zalgo-1.0.0.tgz", + "integrity": "sha512-gUAyHVHPPC5wdqX/LG4LWtRYtgjxyX78oanFNTMMyFEfOqdC54s3eE82imuWKbOeqYht2CrNf64Qb8vgmmtZGA==", + "extraneous": true, + "dependencies": { + "es6-error": "^4.0.1" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/reproject": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/reproject/-/reproject-1.2.5.tgz", + "integrity": "sha512-cTH78fi1uuv5gzW/GVepO4LbCvOUhO0X2BEyyvrKkYb4KPRmDPs7cZnIxemHPUIch/CoSI8MPLmXRHZFSHjbKw==", + "peer": true, + "dependencies": { + "concat-stream": "^2.0.0", + "event-stream": "^4.0.0", + "geojson-stream": "0.1.0", + "minimist": "^1.2.0", + "proj4": "^2.4.4" + }, + "bin": { + "reproject": "cli.js" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/reproject/node_modules/concat-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-2.0.0.tgz", + "integrity": "sha512-MWufYdFw53ccGjCA+Ol7XJYpAlW6/prSMzuPOTRnJGcGzuhLn4Scrz7qf6o8bROZ514ltazcIFJZevcfbo0x7A==", + "engines": [ + "node >= 6.0" + ], + "peer": true, + "dependencies": { + "buffer-from": "^1.0.0", + "inherits": "^2.0.3", + "readable-stream": "^3.0.2", + "typedarray": "^0.0.6" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/request": { + "version": "2.88.2", + "resolved": "https://registry.npmjs.org/request/-/request-2.88.2.tgz", + "integrity": "sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw==", + "deprecated": "request has been deprecated, see https://github.com/request/request/issues/3142", + "extraneous": true, + "dependencies": { + "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" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/request/node_modules/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==", + "extraneous": true, + "dependencies": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.6", + "mime-types": "^2.1.12" + }, + "engines": { + "node": ">= 0.12" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/request/node_modules/qs": { + "version": "6.5.3", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.3.tgz", + "integrity": "sha512-qxXIEh4pCGfHICj1mAJQ2/2XVZkjCDTcEgfoSQxc/fYivUZxTkk7L3bDBJSoNrEzXI17oUO5Dp07ktqE5KzczA==", + "extraneous": true, + "engines": { + "node": ">=0.6" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/request/node_modules/uuid": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", + "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==", + "deprecated": "Please upgrade to version 7 or higher. Older versions may use Math.random() in certain circumstances, which is known to be problematic. See https://v8.dev/blog/math-random for details.", + "extraneous": true, + "bin": { + "uuid": "bin/uuid" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/require-directory": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", + "extraneous": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/require-main-filename": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz", + "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/resolve": { + "version": "1.22.8", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.8.tgz", + "integrity": "sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==", + "peer": true, + "dependencies": { + "is-core-module": "^2.13.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/resolve-from": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", + "extraneous": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/restore-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz", + "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==", + "optional": true, + "peer": true, + "dependencies": { + "onetime": "^5.1.0", + "signal-exit": "^3.0.2" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/ret": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/ret/-/ret-0.2.2.tgz", + "integrity": "sha512-M0b3YWQs7R3Z917WRQy1HHA7Ba7D8hvZg6UE5mLykJxQVE2ju0IXbGlaHPPlkY+WN7wFP+wUMXmBFA0aV6vYGQ==", + "extraneous": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/reusify": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", + "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", + "extraneous": true, + "engines": { + "iojs": ">=1.0.0", + "node": ">=0.10.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/rfc5646": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/rfc5646/-/rfc5646-3.0.0.tgz", + "integrity": "sha512-yFQuMO3ANS0jhQLB3b4NJGQ13RTm6tA9ZRf70nRSmOKchaT88pzh4fBdhcXEOptYdGw22vNqH7IRD/7pjDILZQ==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/rimraf": { + "version": "5.0.10", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-5.0.10.tgz", + "integrity": "sha512-l0OE8wL34P4nJH/H2ffoaniAokM2qSmrtXHmlpvYr5AVVX8msAyW0l8NVJFDxlSK4u3Uh/f41cQheDVdnYijwQ==", + "extraneous": true, + "license": "ISC", + "dependencies": { + "glob": "^10.3.7" + }, + "bin": { + "rimraf": "dist/esm/bin.mjs" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/rimraf/node_modules/foreground-child": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.2.1.tgz", + "integrity": "sha512-PXUUyLqrR2XCWICfv6ukppP96sdFwWbNEnfEMt7jNsISjMsvaLNinAHNDYyvkyU+SZG2BTSbT5NjG+vZslfGTA==", + "extraneous": true, + "dependencies": { + "cross-spawn": "^7.0.0", + "signal-exit": "^4.0.1" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/rimraf/node_modules/glob": { + "version": "10.4.2", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.2.tgz", + "integrity": "sha512-GwMlUF6PkPo3Gk21UxkCohOv0PLcIXVtKyLlpEI28R/cO/4eNOdmLk3CMW1wROV/WR/EsZOWAfBbBOqYvs88/w==", + "extraneous": true, + "dependencies": { + "foreground-child": "^3.1.0", + "jackspeak": "^3.1.2", + "minimatch": "^9.0.4", + "minipass": "^7.1.2", + "package-json-from-dist": "^1.0.0", + "path-scurry": "^1.11.1" + }, + "bin": { + "glob": "dist/esm/bin.mjs" + }, + "engines": { + "node": ">=16 || 14 >=14.18" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/rimraf/node_modules/minimatch": { + "version": "9.0.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", + "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", + "extraneous": true, + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/rimraf/node_modules/signal-exit": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", + "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", + "extraneous": true, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/robust-predicates": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/robust-predicates/-/robust-predicates-3.0.2.tgz", + "integrity": "sha512-IXgzBWvWQwE6PrDI05OvmXUIruQTcoMDzRsOd5CDvHCVLcLHMTSYvOK5Cm46kWqlV3yAbuSpBZdJ5oP5OUoStg==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/rtree-sql.js": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/rtree-sql.js/-/rtree-sql.js-1.7.0.tgz", + "integrity": "sha512-hue7klBnBrM6pvUPSnXNNgA0yN9FIjmhb8QveVY9q5h/3b//Cd8jaafUE0Ty89fuiamaLEHRw8eQq8mTn6Df5Q==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/run-async": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.4.1.tgz", + "integrity": "sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==", + "optional": true, + "peer": true, + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/run-parallel": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", + "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", + "extraneous": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "dependencies": { + "queue-microtask": "^1.2.2" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/rxjs": { + "version": "6.6.7", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", + "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", + "optional": true, + "peer": true, + "dependencies": { + "tslib": "^1.9.0" + }, + "engines": { + "npm": ">=2.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/rxjs/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "optional": true, + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/safe-array-concat": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/safe-array-concat/-/safe-array-concat-1.1.2.tgz", + "integrity": "sha512-vj6RsCsWBCf19jIeHEfkRMw8DPiBb+DMXklQ/1SGDHOMlHdPUkZXFQ2YdplS23zESTijAcurb1aSgJA3AgMu1Q==", + "extraneous": true, + "dependencies": { + "call-bind": "^1.0.7", + "get-intrinsic": "^1.2.4", + "has-symbols": "^1.0.3", + "isarray": "^2.0.5" + }, + "engines": { + "node": ">=0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/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==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/safe-regex-test": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.0.3.tgz", + "integrity": "sha512-CdASjNJPvRa7roO6Ra/gLYBTzYzzPyyBXxIMdGW3USQLyjWEls2RgW5UBTXaQVp+OrpeCK3bLem8smtmheoRuw==", + "extraneous": true, + "dependencies": { + "call-bind": "^1.0.6", + "es-errors": "^1.3.0", + "is-regex": "^1.1.4" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/sax": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/sax/-/sax-1.4.1.tgz", + "integrity": "sha512-+aWOz7yVScEGoKNd4PA10LZ8sk0A/z5+nXQG5giUO5rprX9jgYsTdov9qCchZiPIZezbZH+jRut8nPodFAX4Jg==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/semver": { + "version": "7.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", + "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", + "license": "ISC", + "peer": true, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/send": { + "version": "0.19.0", + "resolved": "https://registry.npmjs.org/send/-/send-0.19.0.tgz", + "integrity": "sha512-dW41u5VfLXu8SJh5bwRmyYUbAoSB3c9uQh6L8h/KtsFREPWpbX1lrljJo186Jc4nmci/sGUZ9a0a0J2zgfq2hw==", + "license": "MIT", + "peer": true, + "dependencies": { + "debug": "2.6.9", + "depd": "2.0.0", + "destroy": "1.2.0", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "fresh": "0.5.2", + "http-errors": "2.0.0", + "mime": "1.6.0", + "ms": "2.1.3", + "on-finished": "2.4.1", + "range-parser": "~1.2.1", + "statuses": "2.0.1" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/send/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "license": "MIT", + "peer": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/send/node_modules/debug/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "license": "MIT", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/send/node_modules/encodeurl": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", + "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==", + "license": "MIT", + "peer": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/send/node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "license": "MIT", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/serialize-javascript": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.2.tgz", + "integrity": "sha512-Saa1xPByTTq2gdeFZYLLo+RFE35NHZkAbqZeWNd3BpzppeVisAqpDjcp8dyf6uIvEqJRd46jemmyA4iFIeVk8g==", + "extraneous": true, + "license": "BSD-3-Clause", + "dependencies": { + "randombytes": "^2.1.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/serve-static": { + "version": "1.16.2", + "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.16.2.tgz", + "integrity": "sha512-VqpjJZKadQB/PEbEwvFdO43Ax5dFBZ2UECszz8bQ7pi7wt//PWe1P6MN7eCnjsatYtBT6EuiClbjSWP2WrIoTw==", + "license": "MIT", + "peer": true, + "dependencies": { + "encodeurl": "~2.0.0", + "escape-html": "~1.0.3", + "parseurl": "~1.3.3", + "send": "0.19.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/set-blocking": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", + "integrity": "sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/set-function-length": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/set-function-length/-/set-function-length-1.2.2.tgz", + "integrity": "sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==", + "peer": true, + "dependencies": { + "define-data-property": "^1.1.4", + "es-errors": "^1.3.0", + "function-bind": "^1.1.2", + "get-intrinsic": "^1.2.4", + "gopd": "^1.0.1", + "has-property-descriptors": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/set-function-name": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/set-function-name/-/set-function-name-2.0.2.tgz", + "integrity": "sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ==", + "extraneous": true, + "dependencies": { + "define-data-property": "^1.1.4", + "es-errors": "^1.3.0", + "functions-have-names": "^1.2.3", + "has-property-descriptors": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/setimmediate": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", + "integrity": "sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA==", + "extraneous": true, + "license": "MIT" + }, + "node_modules/@ngageoint/mage.service/node_modules/setprototypeof": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", + "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==", + "license": "ISC", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "extraneous": true, + "dependencies": { + "shebang-regex": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "extraneous": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/shell-quote": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.8.1.tgz", + "integrity": "sha512-6j1W9l1iAs/4xYBI1SYOVZyFcCis9b4KCLQ8fgAGG07QvzaRLVVRQvAy85yNmmZSjYjg4MWh4gNvlPujU/5LpA==", + "extraneous": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/side-channel": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.1.0.tgz", + "integrity": "sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw==", + "license": "MIT", + "peer": true, + "dependencies": { + "es-errors": "^1.3.0", + "object-inspect": "^1.13.3", + "side-channel-list": "^1.0.0", + "side-channel-map": "^1.0.1", + "side-channel-weakmap": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/side-channel-list": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/side-channel-list/-/side-channel-list-1.0.0.tgz", + "integrity": "sha512-FCLHtRD/gnpCiCHEiJLOwdmFP+wzCmDEkc9y7NsYxeF4u7Btsn1ZuwgwJGxImImHicJArLP4R0yX4c2KCrMrTA==", + "license": "MIT", + "peer": true, + "dependencies": { + "es-errors": "^1.3.0", + "object-inspect": "^1.13.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/side-channel-map": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/side-channel-map/-/side-channel-map-1.0.1.tgz", + "integrity": "sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA==", + "license": "MIT", + "peer": true, + "dependencies": { + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.5", + "object-inspect": "^1.13.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/side-channel-weakmap": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/side-channel-weakmap/-/side-channel-weakmap-1.0.2.tgz", + "integrity": "sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A==", + "license": "MIT", + "peer": true, + "dependencies": { + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.5", + "object-inspect": "^1.13.3", + "side-channel-map": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/sift": { + "version": "16.0.1", + "resolved": "https://registry.npmjs.org/sift/-/sift-16.0.1.tgz", + "integrity": "sha512-Wv6BjQ5zbhW7VFefWusVP33T/EM0vYikCaQ2qR8yULbsilAT8/wQaXvuQ3ptGLpoKx+lihJE3y2UTgKDyyNHZQ==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/signal-exit": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", + "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", + "optional": true, + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/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==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "optional": true, + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/simple-get": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/simple-get/-/simple-get-4.0.1.tgz", + "integrity": "sha512-brv7p5WgH0jmQJr1ZDDfKDOSeWWg+OVypG99A/5vYGPqJ6pxiaHLy8nxtFjBA7oMa01ebA9gfh1uMCFqOuXxvA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "optional": true, + "peer": true, + "dependencies": { + "decompress-response": "^6.0.0", + "once": "^1.3.1", + "simple-concat": "^1.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/simplify-js": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/simplify-js/-/simplify-js-1.2.4.tgz", + "integrity": "sha512-vITfSlwt7h/oyrU42R83mtzFpwYk3+mkH9bOHqq/Qw6n8rtR7aE3NZQ5fbcyCUVVmuMJR6ynsAhOfK2qoah8Jg==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/sinon": { + "version": "7.5.0", + "resolved": "https://registry.npmjs.org/sinon/-/sinon-7.5.0.tgz", + "integrity": "sha512-AoD0oJWerp0/rY9czP/D6hDTTUYGpObhZjMpd7Cl/A6+j0xBE+ayL/ldfggkBXUs0IkvIiM1ljM8+WkOc5k78Q==", + "deprecated": "16.1.1", + "extraneous": true, + "dependencies": { + "@sinonjs/commons": "^1.4.0", + "@sinonjs/formatio": "^3.2.1", + "@sinonjs/samsam": "^3.3.3", + "diff": "^3.5.0", + "lolex": "^4.2.0", + "nise": "^1.5.2", + "supports-color": "^5.5.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/sinon-chai": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/sinon-chai/-/sinon-chai-3.7.0.tgz", + "integrity": "sha512-mf5NURdUaSdnatJx3uhoBOrY9dtL19fiOtAdT1Azxg3+lNJFiuN0uzaU3xX1LeAfL17kHQhTAJgpsfhbMJMY2g==", + "extraneous": true, + "license": "(BSD-2-Clause OR WTFPL)", + "peerDependencies": { + "chai": "^4.0.0", + "sinon": ">=4.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/sinon-mongoose": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/sinon-mongoose/-/sinon-mongoose-2.3.0.tgz", + "integrity": "sha512-d0rrL53wuDDs91GMCFAvQam64IpdVfkaxA4cGLTZfw1d5tTg6+F/D7F080d1n3d1gSHJBZLUf9pGpijC/x7xKQ==", + "extraneous": true, + "peerDependencies": { + "sinon": "5 - 7" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/sinon/node_modules/diff": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/diff/-/diff-3.5.0.tgz", + "integrity": "sha512-A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA==", + "extraneous": true, + "engines": { + "node": ">=0.3.1" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/sinon/node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "extraneous": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/sinon/node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "extraneous": true, + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "extraneous": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/smart-buffer": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.2.0.tgz", + "integrity": "sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==", + "peer": true, + "engines": { + "node": ">= 6.0.0", + "npm": ">= 3.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/socks": { + "version": "2.8.3", + "resolved": "https://registry.npmjs.org/socks/-/socks-2.8.3.tgz", + "integrity": "sha512-l5x7VUUWbjVFbafGLxPWkYsHIhEvmF85tbIeFZWc8ZPtoMyybuEhL7Jye/ooC4/d48FgOjSJXgsF/AJPYCW8Zw==", + "peer": true, + "dependencies": { + "ip-address": "^9.0.5", + "smart-buffer": "^4.2.0" + }, + "engines": { + "node": ">= 10.0.0", + "npm": ">= 3.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "extraneous": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/sparse-bitfield": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/sparse-bitfield/-/sparse-bitfield-3.0.3.tgz", + "integrity": "sha512-kvzhi7vqKTfkh0PZU+2D2PIllw2ymqJKujUcyPMd9Y75Nv4nPbGJZXNhxsgdQab2BmlDct1YnfQCguEvHr7VsQ==", + "optional": true, + "peer": true, + "dependencies": { + "memory-pager": "^1.0.2" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/spawn-wrap": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/spawn-wrap/-/spawn-wrap-1.4.3.tgz", + "integrity": "sha512-IgB8md0QW/+tWqcavuFgKYR/qIRvJkRLPJDFaoXtLLUaVcCDK0+HeFTkmQHj3eprcYhc+gOl0aEA1w7qZlYezw==", + "extraneous": true, + "dependencies": { + "foreground-child": "^1.5.6", + "mkdirp": "^0.5.0", + "os-homedir": "^1.0.1", + "rimraf": "^2.6.2", + "signal-exit": "^3.0.2", + "which": "^1.3.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/spawn-wrap/node_modules/rimraf": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", + "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", + "deprecated": "Rimraf versions prior to v4 are no longer supported", + "extraneous": true, + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/spawn-wrap/node_modules/which": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "extraneous": true, + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "which": "bin/which" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/spdx-correct": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.2.0.tgz", + "integrity": "sha512-kN9dJbvnySHULIluDHy32WHRUu3Og7B9sbY7tsFLctQkIqnMh3hErYgdMjTYuqmcXX+lK5T1lnUt3G7zNswmZA==", + "extraneous": true, + "dependencies": { + "spdx-expression-parse": "^3.0.0", + "spdx-license-ids": "^3.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/spdx-exceptions": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.5.0.tgz", + "integrity": "sha512-PiU42r+xO4UbUS1buo3LPJkjlO7430Xn5SVAhdpzzsPHsjbYVflnnFdATgabnLude+Cqu25p6N+g2lw/PFsa4w==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/spdx-expression-parse": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", + "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", + "extraneous": true, + "dependencies": { + "spdx-exceptions": "^2.1.0", + "spdx-license-ids": "^3.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/spdx-license-ids": { + "version": "3.0.18", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.18.tgz", + "integrity": "sha512-xxRs31BqRYHwiMzudOrpSiHtZ8i/GeionCBDSilhYRj+9gIcI8wCZTlXZKu9vZIVqViP3dcp9qE5G6AlIaD+TQ==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/splaytree": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/splaytree/-/splaytree-3.1.2.tgz", + "integrity": "sha512-4OM2BJgC5UzrhVnnJA4BkHKGtjXNzzUfpQjCO8I05xYPsfS/VuQDwjCGGMi8rYQilHEV4j8NBqTFbls/PZEE7A==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/split": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/split/-/split-1.0.1.tgz", + "integrity": "sha512-mTyOoPbrivtXnwnIxZRFYRrPNtEFKlpB2fvjSnCQUiAA6qAZzqwna5envK4uk6OIeP17CsdF3rSBGYVBsU0Tkg==", + "peer": true, + "dependencies": { + "through": "2" + }, + "engines": { + "node": "*" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/sprintf-js": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/sshpk": { + "version": "1.18.0", + "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.18.0.tgz", + "integrity": "sha512-2p2KJZTSqQ/I3+HX42EpYOa2l3f8Erv8MWKsy2I9uf4wA7yFIkXRffYdsx86y6z4vHtV8u7g+pPlr8/4ouAxsQ==", + "extraneous": true, + "dependencies": { + "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" + }, + "bin": { + "sshpk-conv": "bin/sshpk-conv", + "sshpk-sign": "bin/sshpk-sign", + "sshpk-verify": "bin/sshpk-verify" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/sshpk/node_modules/jsbn": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", + "integrity": "sha512-UVU9dibq2JcFWxQPA6KCqj5O42VOmAY3zQUfEKxU0KpTGXwNoCjkX1e13eHNvw/xPynt6pU0rZ1htjWTNTSXsg==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/stack-trace": { + "version": "0.0.10", + "resolved": "https://registry.npmjs.org/stack-trace/-/stack-trace-0.0.10.tgz", + "integrity": "sha512-KGzahc7puUKkzyMt+IqAep+TVNbKP+k2Lmwhub39m1AsTSkaDutx56aDCo+HLDzf/D26BIHTJWNiTG1KAJiQCg==", + "peer": true, + "engines": { + "node": "*" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/statuses": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", + "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", + "license": "MIT", + "peer": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/stop-iteration-iterator": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/stop-iteration-iterator/-/stop-iteration-iterator-1.0.0.tgz", + "integrity": "sha512-iCGQj+0l0HOdZ2AEeBADlsRC+vsnDsZsbdSiH1yNSjcfKM7fdpCMfqAL/dwF5BLiw/XhRft/Wax6zQbhq2BcjQ==", + "extraneous": true, + "dependencies": { + "internal-slot": "^1.0.4" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/stream-combiner": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/stream-combiner/-/stream-combiner-0.2.2.tgz", + "integrity": "sha512-6yHMqgLYDzQDcAkL+tjJDC5nSNuNIx0vZtRZeiPh7Saef7VHX9H5Ijn9l2VIol2zaNYlYEX6KyuT/237A58qEQ==", + "peer": true, + "dependencies": { + "duplexer": "~0.1.1", + "through": "~2.3.4" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/streamsearch": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/streamsearch/-/streamsearch-1.1.0.tgz", + "integrity": "sha512-Mcc5wHehp9aXz1ax6bZUyY5afg9u2rv5cqQI3mRrYkGC8rW2hM02jWuwjtL++LS5qinSyhj2QfLyNsuc+VsExg==", + "peer": true, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/streamx": { + "version": "2.22.0", + "resolved": "https://registry.npmjs.org/streamx/-/streamx-2.22.0.tgz", + "integrity": "sha512-sLh1evHOzBy/iWRiR6d1zRcLao4gGZr3C1kzNz4fopCOKJb6xD9ub8Mpi9Mr1R6id5o43S+d93fI48UC5uM9aw==", + "extraneous": true, + "license": "MIT", + "dependencies": { + "fast-fifo": "^1.3.2", + "text-decoder": "^1.1.0" + }, + "optionalDependencies": { + "bare-events": "^2.2.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/string_decoder": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "peer": true, + "dependencies": { + "safe-buffer": "~5.2.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "optional": true, + "peer": true, + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/string-width-cjs": { + "name": "string-width", + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "extraneous": true, + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/string.prototype.padend": { + "version": "3.1.6", + "resolved": "https://registry.npmjs.org/string.prototype.padend/-/string.prototype.padend-3.1.6.tgz", + "integrity": "sha512-XZpspuSB7vJWhvJc9DLSlrXl1mcA2BdoY5jjnS135ydXqLoqhs96JjDtCkjJEQHvfqZIp9hBuBMgI589peyx9Q==", + "extraneous": true, + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.2", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/string.prototype.trim": { + "version": "1.2.9", + "resolved": "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.9.tgz", + "integrity": "sha512-klHuCNxiMZ8MlsOihJhJEBJAiMVqU3Z2nEXWfWnIqjN0gEFS9J9+IxKozWWtQGcgoa1WUZzLjKPTr4ZHNFTFxw==", + "extraneous": true, + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.0", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/string.prototype.trimend": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.8.tgz", + "integrity": "sha512-p73uL5VCHCO2BZZ6krwwQE3kCzM7NKmis8S//xEC6fQonchbum4eP6kR4DLEjQFO3Wnj3Fuo8NM0kOSjVdHjZQ==", + "extraneous": true, + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/string.prototype.trimstart": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.8.tgz", + "integrity": "sha512-UXSH262CSZY1tfu3G3Secr6uGLCFVPMhIqHjlgCUtCCcgihYc/xKs9djMTMUOb2j1mVSeU8EU6NWc/iQKU6Gfg==", + "extraneous": true, + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "optional": true, + "peer": true, + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/strip-ansi-cjs": { + "name": "strip-ansi", + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "extraneous": true, + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/strip-bom": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", + "integrity": "sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==", + "extraneous": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/strip-json-comments": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", + "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", + "extraneous": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/strnum": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/strnum/-/strnum-1.0.5.tgz", + "integrity": "sha512-J8bbNyKKXl5qYcR36TIO8W3mVGVHrmmxsd5PAItGkmyzwJvybiw2IVq5nqd0i4LSNSkB/sx9VHllbfFdr9k1JA==", + "optional": true, + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/strtok3": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/strtok3/-/strtok3-6.3.0.tgz", + "integrity": "sha512-fZtbhtvI9I48xDSywd/somNqgUHl2L2cstmXCCif0itOf96jeW18MBSyrLuNicYQVkvpOxkZtkzujiTJ9LW5Jw==", + "peer": true, + "dependencies": { + "@tokenizer/token": "^0.3.0", + "peek-readable": "^4.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/Borewit" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/superagent": { + "version": "8.1.2", + "resolved": "https://registry.npmjs.org/superagent/-/superagent-8.1.2.tgz", + "integrity": "sha512-6WTxW1EB6yCxV5VFOIPQruWGHqc3yI7hEmZK6h+pyk69Lk/Ut7rLUY6W/ONF2MjBuGjvmMiIpsrVJ2vjrHlslA==", + "deprecated": "Please upgrade to v9.0.0+ as we have fixed a public vulnerability with formidable dependency. Note that v9.0.0+ requires Node.js v14.18.0+. See https://github.com/ladjs/superagent/pull/1800 for insight. This project is supported and maintained by the team at Forward Email @ https://forwardemail.net", + "license": "MIT", + "peer": true, + "dependencies": { + "component-emitter": "^1.3.0", + "cookiejar": "^2.1.4", + "debug": "^4.3.4", + "fast-safe-stringify": "^2.1.1", + "form-data": "^4.0.0", + "formidable": "^2.1.2", + "methods": "^1.1.2", + "mime": "2.6.0", + "qs": "^6.11.0", + "semver": "^7.3.8" + }, + "engines": { + "node": ">=6.4.0 <13 || >=14" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/superagent/node_modules/mime": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-2.6.0.tgz", + "integrity": "sha512-USPkMeET31rOMiarsBNIHZKLGgvKc/LrjofAnBlOttf5ajRvqiRA8QsenbcooctK6d6Ts6aqZXBA+XbkKthiQg==", + "peer": true, + "bin": { + "mime": "cli.js" + }, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/supertest": { + "version": "6.3.4", + "resolved": "https://registry.npmjs.org/supertest/-/supertest-6.3.4.tgz", + "integrity": "sha512-erY3HFDG0dPnhw4U+udPfrzXa4xhSG+n4rxfRuZWCUvjFWwKl+OxWf/7zk50s84/fAAs7vf5QAb9uRa0cCykxw==", + "extraneous": true, + "license": "MIT", + "dependencies": { + "methods": "^1.1.2", + "superagent": "^8.1.2" + }, + "engines": { + "node": ">=6.4.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "optional": true, + "peer": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/supports-preserve-symlinks-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", + "peer": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/svg-captcha": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/svg-captcha/-/svg-captcha-1.4.0.tgz", + "integrity": "sha512-/fkkhavXPE57zRRCjNqAP3txRCSncpMx3NnNZL7iEoyAtYwUjPhJxW6FQTQPG5UPEmCrbFoXS10C3YdJlW7PDg==", + "peer": true, + "dependencies": { + "opentype.js": "^0.7.3" + }, + "engines": { + "node": ">=4.x" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/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==", + "optional": true, + "peer": true, + "dependencies": { + "chownr": "^1.1.1", + "mkdirp-classic": "^0.5.2", + "pump": "^3.0.0", + "tar-stream": "^2.1.4" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/tar-stream": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-2.2.0.tgz", + "integrity": "sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ==", + "peer": true, + "dependencies": { + "bl": "^4.0.3", + "end-of-stream": "^1.4.1", + "fs-constants": "^1.0.0", + "inherits": "^2.0.3", + "readable-stream": "^3.1.1" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/test-exclude": { + "version": "5.2.3", + "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-5.2.3.tgz", + "integrity": "sha512-M+oxtseCFO3EDtAaGH7iiej3CBkzXqFMbzqYAACdzKui4eZA+pq3tZEwChvOdNfa7xxy8BfbmgJSIr43cC/+2g==", + "extraneous": true, + "dependencies": { + "glob": "^7.1.3", + "minimatch": "^3.0.4", + "read-pkg-up": "^4.0.0", + "require-main-filename": "^2.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/test-exclude/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "extraneous": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/test-exclude/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "extraneous": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/text-decoder": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/text-decoder/-/text-decoder-1.2.3.tgz", + "integrity": "sha512-3/o9z3X0X0fTupwsYvR03pJ/DjWuqqrfwBgTQzdWDiQSm9KitAyz/9WqsT2JQW7KV2m+bC2ol/zqpW37NHxLaA==", + "extraneous": true, + "license": "Apache-2.0", + "dependencies": { + "b4a": "^1.6.4" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/text-table": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", + "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/through": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", + "integrity": "sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/tiny-inflate": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/tiny-inflate/-/tiny-inflate-1.0.3.tgz", + "integrity": "sha512-pkY1fj1cKHb2seWDy0B16HeWyczlJA9/WW3u3c4z/NiWDsO3DOU5D7nhTLE9CF0yXv/QZFY7sEJmj24dK+Rrqw==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/tmp": { + "version": "0.0.33", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", + "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", + "optional": true, + "peer": true, + "dependencies": { + "os-tmpdir": "~1.0.2" + }, + "engines": { + "node": ">=0.6.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/to-fast-properties": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", + "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==", + "peer": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "extraneous": true, + "dependencies": { + "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/toidentifier": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz", + "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==", + "license": "MIT", + "peer": true, + "engines": { + "node": ">=0.6" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/token-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/token-stream/-/token-stream-1.0.0.tgz", + "integrity": "sha512-VSsyNPPW74RpHwR8Fc21uubwHY7wMDeJLys2IX5zJNih+OnAnaifKHo+1LHT7DAdloQ7apeaaWg8l7qnf/TnEg==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/token-types": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/token-types/-/token-types-4.2.1.tgz", + "integrity": "sha512-6udB24Q737UD/SDsKAHI9FCRP7Bqc9D/MQUV02ORQg5iskjtLJlZJNdN4kKtcdtwCeWIwIHDGaUsTsCCAa8sFQ==", + "peer": true, + "dependencies": { + "@tokenizer/token": "^0.3.0", + "ieee754": "^1.2.1" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/Borewit" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/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==", + "extraneous": true, + "dependencies": { + "psl": "^1.1.28", + "punycode": "^2.1.1" + }, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/tr46": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-3.0.0.tgz", + "integrity": "sha512-l7FvfAHlcmulp8kr+flpQZmVwtu7nfRV7NZujtN0OqES8EL4O4e0qqzL0DC5gAvx/ZC/9lk6rhcUwYvkBnBnYA==", + "peer": true, + "dependencies": { + "punycode": "^2.1.1" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/ts-api-utils": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-1.3.0.tgz", + "integrity": "sha512-UQMIo7pb8WRomKR1/+MFVLTroIvDVtMX3K6OUir8ynLyzB8Jeriont2bTAtmNPa1ekAgN7YPDyf6V+ygrdU+eQ==", + "extraneous": true, + "engines": { + "node": ">=16" + }, + "peerDependencies": { + "typescript": ">=4.2.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/tslib": { + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.3.tgz", + "integrity": "sha512-xNvxJEOUiWPGhUuUdQgAJPKOOJfGnIyKySOc09XkKsgdUV/3E2zvwZYdejjmRgPCgcym1juLH3226yA7sEFJKQ==", + "optional": true, + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/tunnel-agent": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", + "integrity": "sha512-McnNiV1l8RYeY8tBgEpuodCC1mLUdbSN+CYBL7kJsJNInOP8UjDDEwdk6Mw60vdLLrr5NHKZhMAOSrR2NZuQ+w==", + "optional": true, + "peer": true, + "dependencies": { + "safe-buffer": "^5.0.1" + }, + "engines": { + "node": "*" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/tweetnacl": { + "version": "0.14.5", + "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", + "integrity": "sha512-KXXFFdAbFXY4geFIwoyNK+f5Z1b7swfXABfL7HXCmoIWMKU3dmS26672A4EeQtDzLKy7SXmfBu51JolvEKwtGA==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/type-check": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", + "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", + "extraneous": true, + "dependencies": { + "prelude-ls": "^1.2.1" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/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==", + "extraneous": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/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==", + "extraneous": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/type-is": { + "version": "1.6.18", + "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz", + "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==", + "peer": true, + "dependencies": { + "media-typer": "0.3.0", + "mime-types": "~2.1.24" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/typed-array-buffer": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/typed-array-buffer/-/typed-array-buffer-1.0.2.tgz", + "integrity": "sha512-gEymJYKZtKXzzBzM4jqa9w6Q1Jjm7x2d+sh19AdsD4wqnMPDYyvwpsIc2Q/835kHuo3BEQ7CjelGhfTsoBb2MQ==", + "extraneous": true, + "dependencies": { + "call-bind": "^1.0.7", + "es-errors": "^1.3.0", + "is-typed-array": "^1.1.13" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/typed-array-byte-length": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/typed-array-byte-length/-/typed-array-byte-length-1.0.1.tgz", + "integrity": "sha512-3iMJ9q0ao7WE9tWcaYKIptkNBuOIcZCCT0d4MRvuuH88fEoEH62IuQe0OtraD3ebQEoTRk8XCBoknUNc1Y67pw==", + "extraneous": true, + "dependencies": { + "call-bind": "^1.0.7", + "for-each": "^0.3.3", + "gopd": "^1.0.1", + "has-proto": "^1.0.3", + "is-typed-array": "^1.1.13" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/typed-array-byte-offset": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/typed-array-byte-offset/-/typed-array-byte-offset-1.0.2.tgz", + "integrity": "sha512-Ous0vodHa56FviZucS2E63zkgtgrACj7omjwd/8lTEMEPFFyjfixMZ1ZXenpgCFBBt4EC1J2XsyVS2gkG0eTFA==", + "extraneous": true, + "dependencies": { + "available-typed-arrays": "^1.0.7", + "call-bind": "^1.0.7", + "for-each": "^0.3.3", + "gopd": "^1.0.1", + "has-proto": "^1.0.3", + "is-typed-array": "^1.1.13" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/typed-array-length": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/typed-array-length/-/typed-array-length-1.0.6.tgz", + "integrity": "sha512-/OxDN6OtAk5KBpGb28T+HZc2M+ADtvRxXrKKbUwtsLgdoxgX13hyy7ek6bFRl5+aBs2yZzB0c4CnQfAtVypW/g==", + "extraneous": true, + "dependencies": { + "call-bind": "^1.0.7", + "for-each": "^0.3.3", + "gopd": "^1.0.1", + "has-proto": "^1.0.3", + "is-typed-array": "^1.1.13", + "possible-typed-array-names": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/typedarray": { + "version": "0.0.6", + "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", + "integrity": "sha512-/aCDEGatGvZ2BIk+HmLf4ifCJFwvKFNb9/JeZPMulfgFracn9QFcAf5GO8B/mweUjSoblS5In0cWhqpfs/5PQA==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/typescript": { + "version": "4.9.5", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.9.5.tgz", + "integrity": "sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g==", + "extraneous": true, + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=4.2.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/uid-safe": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/uid-safe/-/uid-safe-2.1.5.tgz", + "integrity": "sha512-KPHm4VL5dDXKz01UuEd88Df+KzynaohSL9fBh096KWAxSKZQDI2uBrVqtvRM4rwrIrRRKsdLNML/lnaaVSRioA==", + "peer": true, + "dependencies": { + "random-bytes": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/uid2": { + "version": "0.0.4", + "resolved": "https://registry.npmjs.org/uid2/-/uid2-0.0.4.tgz", + "integrity": "sha512-IevTus0SbGwQzYh3+fRsAMTVVPOoIVufzacXcHPmdlle1jUpq7BRL+mw3dgeLanvGZdwwbWhRV6XrcFNdBmjWA==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/unbox-primitive": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.2.tgz", + "integrity": "sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==", + "extraneous": true, + "dependencies": { + "call-bind": "^1.0.2", + "has-bigints": "^1.0.2", + "has-symbols": "^1.0.3", + "which-boxed-primitive": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/underscore": { + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.12.1.tgz", + "integrity": "sha512-hEQt0+ZLDVUMhebKxL4x1BTtDY7bavVofhZ9KZ4aI26X9SRaE+Y3m83XUL1UP2jn8ynjndwCCpEHdUG+9pP1Tw==", + "license": "MIT", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/undici-types": { + "version": "5.26.5", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-5.26.5.tgz", + "integrity": "sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==", + "license": "MIT", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/uniqid": { + "version": "5.4.0", + "resolved": "https://registry.npmjs.org/uniqid/-/uniqid-5.4.0.tgz", + "integrity": "sha512-38JRbJ4Fj94VmnC7G/J/5n5SC7Ab46OM5iNtSstB/ko3l1b5g7ALt4qzHFgGciFkyiRNtDXtLNb+VsxtMSE77A==", + "license": "MIT", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/universalify": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", + "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", + "peer": true, + "engines": { + "node": ">= 4.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/unpipe": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", + "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==", + "peer": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/uri-js": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", + "extraneous": true, + "dependencies": { + "punycode": "^2.1.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/utils-merge": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", + "integrity": "sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==", + "peer": true, + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/uuid": { + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-9.0.1.tgz", + "integrity": "sha512-b+1eJOlsR9K8HJpow9Ok3fiWOWSIcIzXodvv0rQjVoOVNpWMpxf1wZNpt4y9h10odCNrqnYp1OBzRktckBe3sA==", + "funding": [ + "https://github.com/sponsors/broofa", + "https://github.com/sponsors/ctavan" + ], + "optional": true, + "peer": true, + "bin": { + "uuid": "dist/bin/uuid" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/validate-npm-package-license": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", + "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", + "extraneous": true, + "dependencies": { + "spdx-correct": "^3.0.0", + "spdx-expression-parse": "^3.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/vary": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", + "integrity": "sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==", + "peer": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/vasync": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/vasync/-/vasync-2.2.1.tgz", + "integrity": "sha512-Hq72JaTpcTFdWiNA4Y22Amej2GH3BFmBaKPPlDZ4/oC8HNn2ISHLkFrJU4Ds8R3jcUi7oo5Y9jcMHKjES+N9wQ==", + "engines": [ + "node >=0.6.0" + ], + "peer": true, + "dependencies": { + "verror": "1.10.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/vasync/node_modules/verror": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", + "integrity": "sha512-ZZKSmDAEFOijERBLkmYfJ+vmk3w+7hOLYDNkRCuRuMJGEmqYNCNLyBBFwWKVMhfwaEF3WOd0Zlw86U/WC/+nYw==", + "engines": [ + "node >=0.6.0" + ], + "peer": true, + "dependencies": { + "assert-plus": "^1.0.0", + "core-util-is": "1.0.2", + "extsprintf": "^1.2.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/verror": { + "version": "1.10.1", + "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.1.tgz", + "integrity": "sha512-veufcmxri4e3XSrT0xwfUR7kguIkaxBeosDg00yDWhk49wdwkSUrvvsm7nc75e1PUyvIeZj6nS8VQRYz2/S4Xg==", + "peer": true, + "dependencies": { + "assert-plus": "^1.0.0", + "core-util-is": "1.0.2", + "extsprintf": "^1.2.0" + }, + "engines": { + "node": ">=0.6.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/void-elements": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/void-elements/-/void-elements-3.1.0.tgz", + "integrity": "sha512-Dhxzh5HZuiHQhbvTW9AMetFfBHDMYpo23Uo9btPXgdYP+3T5S+p+jgNy7spra+veYhBP2dCSgxR/i2Y02h5/6w==", + "peer": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/walk": { + "version": "2.3.15", + "resolved": "https://registry.npmjs.org/walk/-/walk-2.3.15.tgz", + "integrity": "sha512-4eRTBZljBfIISK1Vnt69Gvr2w/wc3U6Vtrw7qiN5iqYJPH7LElcYh/iU4XWhdCy2dZqv1ToMyYlybDylfG/5Vg==", + "license": "(MIT OR Apache-2.0)", + "peer": true, + "dependencies": { + "foreachasync": "^3.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/webidl-conversions": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-7.0.0.tgz", + "integrity": "sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==", + "peer": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/webworkify": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/webworkify/-/webworkify-1.5.0.tgz", + "integrity": "sha512-AMcUeyXAhbACL8S2hqqdqOLqvJ8ylmIbNwUIqQujRSouf4+eUFaXbG6F1Rbu+srlJMmxQWsiU7mOJi0nMBfM1g==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/whatwg-url": { + "version": "11.0.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-11.0.0.tgz", + "integrity": "sha512-RKT8HExMpoYx4igMiVMY83lN6UeITKJlBQ+vR/8ZJ8OCdSiN3RwCq+9gH0+Xzj0+5IrM6i4j/6LuvzbZIQgEcQ==", + "peer": true, + "dependencies": { + "tr46": "^3.0.0", + "webidl-conversions": "^7.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "extraneous": true, + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/which-boxed-primitive": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz", + "integrity": "sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==", + "extraneous": true, + "dependencies": { + "is-bigint": "^1.0.1", + "is-boolean-object": "^1.1.0", + "is-number-object": "^1.0.4", + "is-string": "^1.0.5", + "is-symbol": "^1.0.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/which-collection": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/which-collection/-/which-collection-1.0.2.tgz", + "integrity": "sha512-K4jVyjnBdgvc86Y6BkaLZEN933SwYOuBFkdmBu9ZfkcAbdVbpITnDmjvZ/aQjRXQrv5EPkTnD1s39GiiqbngCw==", + "extraneous": true, + "dependencies": { + "is-map": "^2.0.3", + "is-set": "^2.0.3", + "is-weakmap": "^2.0.2", + "is-weakset": "^2.0.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/which-module": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.1.tgz", + "integrity": "sha512-iBdZ57RDvnOR9AGBhML2vFZf7h8vmBjhoaZqODJBFWHVtKkDmKuHai3cx5PgVMrX5YDNp27AofYbAwctSS+vhQ==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/which-typed-array": { + "version": "1.1.15", + "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.15.tgz", + "integrity": "sha512-oV0jmFtUky6CXfkqehVvBP/LSWJ2sy4vWMioiENyJLePrBO/yKyV9OyJySfAKosh+RYkIl5zJCNZ8/4JncrpdA==", + "extraneous": true, + "dependencies": { + "available-typed-arrays": "^1.0.7", + "call-bind": "^1.0.7", + "for-each": "^0.3.3", + "gopd": "^1.0.1", + "has-tostringtag": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/winston": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/winston/-/winston-1.1.2.tgz", + "integrity": "sha512-rl9hA8se2gjdYI6nP1f+kjjSCFCZrObIJB/eXOcMdzWxxcYp7exyc5Bs248fwLT+wHA/+aK0VtBlPHL8qO0T0w==", + "license": "MIT", + "peer": true, + "dependencies": { + "async": "~1.0.0", + "colors": "1.0.x", + "cycle": "1.0.x", + "eyes": "0.1.x", + "isstream": "0.1.x", + "pkginfo": "0.3.x", + "stack-trace": "0.0.x" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/winston/node_modules/async": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/async/-/async-1.0.0.tgz", + "integrity": "sha512-5mO7DX4CbJzp9zjaFXusQQ4tzKJARjNB1Ih1pVBi8wkbmXy/xzIDgEMXxWePLzt2OdFwaxfneIlT1nCiXubrPQ==", + "license": "MIT", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/with": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/with/-/with-7.0.2.tgz", + "integrity": "sha512-RNGKj82nUPg3g5ygxkQl0R937xLyho1J24ItRCBTr/m1YnZkzJy1hUiHUJrc/VlsDQzsCnInEGSg3bci0Lmd4w==", + "peer": true, + "dependencies": { + "@babel/parser": "^7.9.6", + "@babel/types": "^7.9.6", + "assert-never": "^1.2.1", + "babel-walk": "3.0.0-canary-5" + }, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/wkt-parser": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/wkt-parser/-/wkt-parser-1.3.3.tgz", + "integrity": "sha512-ZnV3yH8/k58ZPACOXeiHaMuXIiaTk1t0hSUVisbO0t4RjA5wPpUytcxeyiN2h+LZRrmuHIh/1UlrR9e7DHDvTw==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/wkx": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/wkx/-/wkx-0.5.0.tgz", + "integrity": "sha512-Xng/d4Ichh8uN4l0FToV/258EjMGU9MGcA0HV2d9B/ZpZB3lqQm7nkOdZdm5GhKtLLhAE7PiVQwN4eN+2YJJUg==", + "license": "MIT", + "peer": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/wms-capabilities": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/wms-capabilities/-/wms-capabilities-0.6.0.tgz", + "integrity": "sha512-yTbtesuSyKkHhw1TUX4VklXEkbQByc+hyo7TWq1sGjBA6tQ+XN32w546TPDTzROuwFTE/Dcq5F5FN4aA9nesaQ==", + "license": "BSD-2-Clause", + "peer": true, + "bin": { + "wmscapabilities": "bin/wmscapabilities" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/word-wrap": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.5.tgz", + "integrity": "sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==", + "extraneous": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/workerpool": { + "version": "6.5.1", + "resolved": "https://registry.npmjs.org/workerpool/-/workerpool-6.5.1.tgz", + "integrity": "sha512-Fs4dNYcsdpYSAfVxhnl1L5zTksjvOJxtC5hzMNl+1t9B8hTJTdKDyZ5ju7ztgPy+ft9tBFXoOlDNiOT9WUXZlA==", + "extraneous": true, + "license": "Apache-2.0" + }, + "node_modules/@ngageoint/mage.service/node_modules/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==", + "extraneous": true, + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/wrap-ansi-cjs": { + "name": "wrap-ansi", + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "extraneous": true, + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", + "peer": true + }, + "node_modules/@ngageoint/mage.service/node_modules/write-file-atomic": { + "version": "2.4.3", + "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-2.4.3.tgz", + "integrity": "sha512-GaETH5wwsX+GcnzhPgKcKjJ6M2Cq3/iZp1WyY/X1CSqrW+jVNM9Y7D8EC2sM4ZG/V8wZlSniJnCKWPmBYAucRQ==", + "extraneous": true, + "dependencies": { + "graceful-fs": "^4.1.11", + "imurmurhash": "^0.1.4", + "signal-exit": "^3.0.2" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/xml-crypto": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/xml-crypto/-/xml-crypto-3.2.0.tgz", + "integrity": "sha512-qVurBUOQrmvlgmZqIVBqmb06TD2a/PpEUfFPgD7BuBfjmoH4zgkqaWSIJrnymlCvM2GGt9x+XtJFA+ttoAufqg==", + "peer": true, + "dependencies": { + "@xmldom/xmldom": "^0.8.8", + "xpath": "0.0.32" + }, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/xml-crypto/node_modules/@xmldom/xmldom": { + "version": "0.8.10", + "resolved": "https://registry.npmjs.org/@xmldom/xmldom/-/xmldom-0.8.10.tgz", + "integrity": "sha512-2WALfTl4xo2SkGCYRt6rDTFfk9R1czmBvUQy12gK2KuRKIpWEhcbbzy8EZXtz/jkRqHX8bFEc6FC1HjX4TUWYw==", + "license": "MIT", + "peer": true, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/xml-crypto/node_modules/xpath": { + "version": "0.0.32", + "resolved": "https://registry.npmjs.org/xpath/-/xpath-0.0.32.tgz", + "integrity": "sha512-rxMJhSIoiO8vXcWvSifKqhvV96GjiD5wYb8/QHdoRyQvraTpp4IEv944nhGausZZ3u7dhQXteZuZbaqfpB7uYw==", + "peer": true, + "engines": { + "node": ">=0.6.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/xml-encryption": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/xml-encryption/-/xml-encryption-3.0.2.tgz", + "integrity": "sha512-VxYXPvsWB01/aqVLd6ZMPWZ+qaj0aIdF+cStrVJMcFj3iymwZeI0ABzB3VqMYv48DkSpRhnrXqTUkR34j+UDyg==", + "peer": true, + "dependencies": { + "@xmldom/xmldom": "^0.8.5", + "escape-html": "^1.0.3", + "xpath": "0.0.32" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/xml-encryption/node_modules/@xmldom/xmldom": { + "version": "0.8.10", + "resolved": "https://registry.npmjs.org/@xmldom/xmldom/-/xmldom-0.8.10.tgz", + "integrity": "sha512-2WALfTl4xo2SkGCYRt6rDTFfk9R1czmBvUQy12gK2KuRKIpWEhcbbzy8EZXtz/jkRqHX8bFEc6FC1HjX4TUWYw==", + "license": "MIT", + "peer": true, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/xml-encryption/node_modules/xpath": { + "version": "0.0.32", + "resolved": "https://registry.npmjs.org/xpath/-/xpath-0.0.32.tgz", + "integrity": "sha512-rxMJhSIoiO8vXcWvSifKqhvV96GjiD5wYb8/QHdoRyQvraTpp4IEv944nhGausZZ3u7dhQXteZuZbaqfpB7uYw==", + "peer": true, + "engines": { + "node": ">=0.6.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/xml2js": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/xml2js/-/xml2js-0.5.0.tgz", + "integrity": "sha512-drPFnkQJik/O+uPKpqSgr22mpuFHqKdbS835iAQrUC73L2F5WkboIRd63ai/2Yg6I1jzifPFKH2NTK+cfglkIA==", + "peer": true, + "dependencies": { + "sax": ">=0.6.0", + "xmlbuilder": "~11.0.0" + }, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/xml2js/node_modules/xmlbuilder": { + "version": "11.0.1", + "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-11.0.1.tgz", + "integrity": "sha512-fDlsI/kFEx7gLvbecc0/ohLG50fugQp8ryHzMTuW9vSa1GJ0XYWKnhsUx7oie3G98+r56aTQIUB4kht42R3JvA==", + "peer": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/xmlbuilder": { + "version": "15.1.1", + "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-15.1.1.tgz", + "integrity": "sha512-yMqGBqtXyeN1e3TGYvgNgDVZ3j84W4cwkOXQswghol6APgZWaff9lnbvN7MHYJOiXsvGPXtjTYJEiC9J2wv9Eg==", + "peer": true, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/xmlbuilder2": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/xmlbuilder2/-/xmlbuilder2-3.1.1.tgz", + "integrity": "sha512-WCSfbfZnQDdLQLiMdGUQpMxxckeQ4oZNMNhLVkcekTu7xhD4tuUDyAPoY8CwXvBYE6LwBHd6QW2WZXlOWr1vCw==", + "license": "MIT", + "peer": true, + "dependencies": { + "@oozcitak/dom": "1.15.10", + "@oozcitak/infra": "1.0.8", + "@oozcitak/util": "8.3.8", + "js-yaml": "3.14.1" + }, + "engines": { + "node": ">=12.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/xmlbuilder2/node_modules/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==", + "license": "MIT", + "peer": true, + "dependencies": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/xpath": { + "version": "0.0.34", + "resolved": "https://registry.npmjs.org/xpath/-/xpath-0.0.34.tgz", + "integrity": "sha512-FxF6+rkr1rNSQrhUNYrAFJpRXNzlDoMxeXN5qI84939ylEv3qqPFKa85Oxr6tDaJKqwW6KKyo2v26TSv3k6LeA==", + "license": "MIT", + "peer": true, + "engines": { + "node": ">=0.6.0" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/xtend": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", + "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==", + "peer": true, + "engines": { + "node": ">=0.4" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/y18n": { + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", + "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", + "extraneous": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/yallist": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", + "integrity": "sha512-ncTzHV7NvsQZkYe1DW7cbDLm0YpzHmZF5r/iyP3ZnQtMiJ+pjzisCiMNI+Sj+xQF5pXhSHxSB3uDbsBTzY/c2A==", + "extraneous": true + }, + "node_modules/@ngageoint/mage.service/node_modules/yaml": { + "version": "1.10.2", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz", + "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==", + "license": "ISC", + "peer": true, + "engines": { + "node": ">= 6" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/yargs": { + "version": "16.2.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", + "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", + "extraneous": true, + "dependencies": { + "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" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/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==", + "extraneous": true, + "license": "ISC", + "engines": { + "node": ">=10" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/yargs-unparser": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/yargs-unparser/-/yargs-unparser-2.0.0.tgz", + "integrity": "sha512-7pRTIA9Qc1caZ0bZ6RYRGbHJthJWuakf+WmHK0rVeLkNrrGhfoabBNdue6kdINI6r4if7ocq9aD/n7xwKOdzOA==", + "extraneous": true, + "dependencies": { + "camelcase": "^6.0.0", + "decamelize": "^4.0.0", + "flat": "^5.0.2", + "is-plain-obj": "^2.1.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/yauzl": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/yauzl/-/yauzl-3.2.0.tgz", + "integrity": "sha512-Ow9nuGZE+qp1u4JIPvg+uCiUr7xGQWdff7JQSk5VGYTAZMDe2q8lxJ10ygv10qmSj031Ty/6FNJpLO4o1Sgc+w==", + "extraneous": true, + "license": "MIT", + "dependencies": { + "buffer-crc32": "~0.2.3", + "pend": "~1.2.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/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==", + "extraneous": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/zip-stream": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/zip-stream/-/zip-stream-4.1.1.tgz", + "integrity": "sha512-9qv4rlDiopXg4E69k+vMHjNN63YFMe9sZMrdlvKnCjlCRWeCBswPPMPUfx+ipsAWq1LXHe70RcbaHdJJpS6hyQ==", + "peer": true, + "dependencies": { + "archiver-utils": "^3.0.4", + "compress-commons": "^4.1.2", + "readable-stream": "^3.6.0" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/@ngageoint/mage.service/node_modules/zip-stream/node_modules/archiver-utils": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/archiver-utils/-/archiver-utils-3.0.4.tgz", + "integrity": "sha512-KVgf4XQVrTjhyWmx6cte4RxonPLR9onExufI1jhvw/MQ4BB6IsZD5gT8Lq+u/+pRkWna/6JoHpiQioaqFP5Rzw==", + "peer": true, + "dependencies": { + "glob": "^7.2.3", + "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": "^3.6.0" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/@nodelib/fs.stat": { + "version": "1.1.3", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 6" + } + }, + "node_modules/@sinonjs/commons": { + "version": "1.8.6", + "dev": true, + "license": "BSD-3-Clause", + "peer": true, + "dependencies": { + "type-detect": "4.0.8" + } + }, + "node_modules/@sinonjs/fake-timers": { + "version": "6.0.1", + "dev": true, + "license": "BSD-3-Clause", + "peer": true, + "dependencies": { + "@sinonjs/commons": "^1.7.0" + } + }, + "node_modules/@smithy/abort-controller": { + "version": "4.0.1", + "license": "Apache-2.0", + "optional": true, + "peer": true, + "dependencies": { + "@smithy/types": "^4.1.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=18.0.0" + } + }, + "node_modules/@smithy/config-resolver": { + "version": "4.0.1", + "license": "Apache-2.0", + "optional": true, + "peer": true, + "dependencies": { + "@smithy/node-config-provider": "^4.0.1", + "@smithy/types": "^4.1.0", + "@smithy/util-config-provider": "^4.0.0", + "@smithy/util-middleware": "^4.0.1", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=18.0.0" + } + }, + "node_modules/@smithy/core": { + "version": "3.1.5", + "license": "Apache-2.0", + "optional": true, + "peer": true, + "dependencies": { + "@smithy/middleware-serde": "^4.0.2", + "@smithy/protocol-http": "^5.0.1", + "@smithy/types": "^4.1.0", + "@smithy/util-body-length-browser": "^4.0.0", + "@smithy/util-middleware": "^4.0.1", + "@smithy/util-stream": "^4.1.2", + "@smithy/util-utf8": "^4.0.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=18.0.0" + } + }, + "node_modules/@smithy/credential-provider-imds": { + "version": "4.0.1", + "license": "Apache-2.0", + "optional": true, + "peer": true, + "dependencies": { + "@smithy/node-config-provider": "^4.0.1", + "@smithy/property-provider": "^4.0.1", + "@smithy/types": "^4.1.0", + "@smithy/url-parser": "^4.0.1", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=18.0.0" + } + }, + "node_modules/@smithy/fetch-http-handler": { + "version": "5.0.1", + "license": "Apache-2.0", + "optional": true, + "peer": true, + "dependencies": { + "@smithy/protocol-http": "^5.0.1", + "@smithy/querystring-builder": "^4.0.1", + "@smithy/types": "^4.1.0", + "@smithy/util-base64": "^4.0.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=18.0.0" + } + }, + "node_modules/@smithy/hash-node": { + "version": "4.0.1", + "license": "Apache-2.0", + "optional": true, + "peer": true, + "dependencies": { + "@smithy/types": "^4.1.0", + "@smithy/util-buffer-from": "^4.0.0", + "@smithy/util-utf8": "^4.0.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=18.0.0" + } + }, + "node_modules/@smithy/invalid-dependency": { + "version": "4.0.1", + "license": "Apache-2.0", + "optional": true, + "peer": true, + "dependencies": { + "@smithy/types": "^4.1.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=18.0.0" + } + }, + "node_modules/@smithy/is-array-buffer": { + "version": "4.0.0", + "license": "Apache-2.0", + "optional": true, + "peer": true, + "dependencies": { + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=18.0.0" + } + }, + "node_modules/@smithy/middleware-content-length": { + "version": "4.0.1", + "license": "Apache-2.0", + "optional": true, + "peer": true, + "dependencies": { + "@smithy/protocol-http": "^5.0.1", + "@smithy/types": "^4.1.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=18.0.0" + } + }, + "node_modules/@smithy/middleware-endpoint": { + "version": "4.0.6", + "license": "Apache-2.0", + "optional": true, + "peer": true, + "dependencies": { + "@smithy/core": "^3.1.5", + "@smithy/middleware-serde": "^4.0.2", + "@smithy/node-config-provider": "^4.0.1", + "@smithy/shared-ini-file-loader": "^4.0.1", + "@smithy/types": "^4.1.0", + "@smithy/url-parser": "^4.0.1", + "@smithy/util-middleware": "^4.0.1", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=18.0.0" + } + }, + "node_modules/@smithy/middleware-retry": { + "version": "4.0.7", + "license": "Apache-2.0", + "optional": true, + "peer": true, + "dependencies": { + "@smithy/node-config-provider": "^4.0.1", + "@smithy/protocol-http": "^5.0.1", + "@smithy/service-error-classification": "^4.0.1", + "@smithy/smithy-client": "^4.1.6", + "@smithy/types": "^4.1.0", + "@smithy/util-middleware": "^4.0.1", + "@smithy/util-retry": "^4.0.1", + "tslib": "^2.6.2", + "uuid": "^9.0.1" + }, + "engines": { + "node": ">=18.0.0" + } + }, + "node_modules/@smithy/middleware-serde": { + "version": "4.0.2", + "license": "Apache-2.0", + "optional": true, + "peer": true, + "dependencies": { + "@smithy/types": "^4.1.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=18.0.0" + } + }, + "node_modules/@smithy/middleware-stack": { + "version": "4.0.1", + "license": "Apache-2.0", + "optional": true, + "peer": true, + "dependencies": { + "@smithy/types": "^4.1.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=18.0.0" + } + }, + "node_modules/@smithy/node-config-provider": { + "version": "4.0.1", + "license": "Apache-2.0", + "optional": true, + "peer": true, + "dependencies": { + "@smithy/property-provider": "^4.0.1", + "@smithy/shared-ini-file-loader": "^4.0.1", + "@smithy/types": "^4.1.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=18.0.0" + } + }, + "node_modules/@smithy/node-http-handler": { + "version": "4.0.3", + "license": "Apache-2.0", + "optional": true, + "peer": true, + "dependencies": { + "@smithy/abort-controller": "^4.0.1", + "@smithy/protocol-http": "^5.0.1", + "@smithy/querystring-builder": "^4.0.1", + "@smithy/types": "^4.1.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=18.0.0" + } + }, + "node_modules/@smithy/property-provider": { + "version": "4.0.1", + "license": "Apache-2.0", + "optional": true, + "peer": true, + "dependencies": { + "@smithy/types": "^4.1.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=18.0.0" + } + }, + "node_modules/@smithy/protocol-http": { + "version": "5.0.1", + "license": "Apache-2.0", + "optional": true, + "peer": true, + "dependencies": { + "@smithy/types": "^4.1.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=18.0.0" + } + }, + "node_modules/@smithy/querystring-builder": { + "version": "4.0.1", + "license": "Apache-2.0", + "optional": true, + "peer": true, + "dependencies": { + "@smithy/types": "^4.1.0", + "@smithy/util-uri-escape": "^4.0.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=18.0.0" + } + }, + "node_modules/@smithy/querystring-parser": { + "version": "4.0.1", + "license": "Apache-2.0", + "optional": true, + "peer": true, + "dependencies": { + "@smithy/types": "^4.1.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=18.0.0" + } + }, + "node_modules/@smithy/service-error-classification": { + "version": "4.0.1", + "license": "Apache-2.0", + "optional": true, + "peer": true, + "dependencies": { + "@smithy/types": "^4.1.0" + }, + "engines": { + "node": ">=18.0.0" + } + }, + "node_modules/@smithy/shared-ini-file-loader": { + "version": "4.0.1", + "license": "Apache-2.0", + "optional": true, + "peer": true, + "dependencies": { + "@smithy/types": "^4.1.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=18.0.0" + } + }, + "node_modules/@smithy/signature-v4": { + "version": "5.0.1", + "license": "Apache-2.0", + "optional": true, + "peer": true, + "dependencies": { + "@smithy/is-array-buffer": "^4.0.0", + "@smithy/protocol-http": "^5.0.1", + "@smithy/types": "^4.1.0", + "@smithy/util-hex-encoding": "^4.0.0", + "@smithy/util-middleware": "^4.0.1", + "@smithy/util-uri-escape": "^4.0.0", + "@smithy/util-utf8": "^4.0.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=18.0.0" + } + }, + "node_modules/@smithy/smithy-client": { + "version": "4.1.6", + "license": "Apache-2.0", + "optional": true, + "peer": true, + "dependencies": { + "@smithy/core": "^3.1.5", + "@smithy/middleware-endpoint": "^4.0.6", + "@smithy/middleware-stack": "^4.0.1", + "@smithy/protocol-http": "^5.0.1", + "@smithy/types": "^4.1.0", + "@smithy/util-stream": "^4.1.2", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=18.0.0" + } + }, + "node_modules/@smithy/types": { + "version": "4.1.0", + "license": "Apache-2.0", + "optional": true, + "peer": true, + "dependencies": { + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=18.0.0" + } + }, + "node_modules/@smithy/url-parser": { + "version": "4.0.1", + "license": "Apache-2.0", + "optional": true, + "peer": true, + "dependencies": { + "@smithy/querystring-parser": "^4.0.1", + "@smithy/types": "^4.1.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=18.0.0" + } + }, + "node_modules/@smithy/util-base64": { + "version": "4.0.0", + "license": "Apache-2.0", + "optional": true, + "peer": true, + "dependencies": { + "@smithy/util-buffer-from": "^4.0.0", + "@smithy/util-utf8": "^4.0.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=18.0.0" + } + }, + "node_modules/@smithy/util-body-length-browser": { + "version": "4.0.0", + "license": "Apache-2.0", + "optional": true, + "peer": true, + "dependencies": { + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=18.0.0" + } + }, + "node_modules/@smithy/util-body-length-node": { + "version": "4.0.0", + "license": "Apache-2.0", + "optional": true, + "peer": true, + "dependencies": { + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=18.0.0" + } + }, + "node_modules/@smithy/util-buffer-from": { + "version": "4.0.0", + "license": "Apache-2.0", + "optional": true, + "peer": true, + "dependencies": { + "@smithy/is-array-buffer": "^4.0.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=18.0.0" + } + }, + "node_modules/@smithy/util-config-provider": { + "version": "4.0.0", + "license": "Apache-2.0", + "optional": true, + "peer": true, + "dependencies": { + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=18.0.0" + } + }, + "node_modules/@smithy/util-defaults-mode-browser": { + "version": "4.0.7", + "license": "Apache-2.0", + "optional": true, + "peer": true, + "dependencies": { + "@smithy/property-provider": "^4.0.1", + "@smithy/smithy-client": "^4.1.6", + "@smithy/types": "^4.1.0", + "bowser": "^2.11.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=18.0.0" + } + }, + "node_modules/@smithy/util-defaults-mode-node": { + "version": "4.0.7", + "license": "Apache-2.0", + "optional": true, + "peer": true, + "dependencies": { + "@smithy/config-resolver": "^4.0.1", + "@smithy/credential-provider-imds": "^4.0.1", + "@smithy/node-config-provider": "^4.0.1", + "@smithy/property-provider": "^4.0.1", + "@smithy/smithy-client": "^4.1.6", + "@smithy/types": "^4.1.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=18.0.0" + } + }, + "node_modules/@smithy/util-endpoints": { + "version": "3.0.1", + "license": "Apache-2.0", + "optional": true, + "peer": true, + "dependencies": { + "@smithy/node-config-provider": "^4.0.1", + "@smithy/types": "^4.1.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=18.0.0" + } + }, + "node_modules/@smithy/util-hex-encoding": { + "version": "4.0.0", + "license": "Apache-2.0", + "optional": true, + "peer": true, + "dependencies": { + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=18.0.0" + } + }, + "node_modules/@smithy/util-middleware": { + "version": "4.0.1", + "license": "Apache-2.0", + "optional": true, + "peer": true, + "dependencies": { + "@smithy/types": "^4.1.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=18.0.0" + } + }, + "node_modules/@smithy/util-retry": { + "version": "4.0.1", + "license": "Apache-2.0", + "optional": true, + "peer": true, + "dependencies": { + "@smithy/service-error-classification": "^4.0.1", + "@smithy/types": "^4.1.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=18.0.0" + } + }, + "node_modules/@smithy/util-stream": { + "version": "4.1.2", + "license": "Apache-2.0", + "optional": true, + "peer": true, + "dependencies": { + "@smithy/fetch-http-handler": "^5.0.1", + "@smithy/node-http-handler": "^4.0.3", + "@smithy/types": "^4.1.0", + "@smithy/util-base64": "^4.0.0", + "@smithy/util-buffer-from": "^4.0.0", + "@smithy/util-hex-encoding": "^4.0.0", + "@smithy/util-utf8": "^4.0.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=18.0.0" + } + }, + "node_modules/@smithy/util-uri-escape": { + "version": "4.0.0", + "license": "Apache-2.0", + "optional": true, + "peer": true, + "dependencies": { + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=18.0.0" + } + }, + "node_modules/@smithy/util-utf8": { + "version": "4.0.0", + "license": "Apache-2.0", + "optional": true, + "peer": true, + "dependencies": { + "@smithy/util-buffer-from": "^4.0.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=18.0.0" + } + }, + "node_modules/@tootallnate/once": { + "version": "1.1.2", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">= 6" + } + }, + "node_modules/@types/archiver": { + "version": "6.0.3", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/readdir-glob": "*" + } + }, + "node_modules/@types/babel__core": { + "version": "7.20.5", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@babel/parser": "^7.20.7", + "@babel/types": "^7.20.7", + "@types/babel__generator": "*", + "@types/babel__template": "*", + "@types/babel__traverse": "*" + } + }, + "node_modules/@types/babel__generator": { + "version": "7.6.8", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@babel/types": "^7.0.0" + } + }, + "node_modules/@types/babel__template": { + "version": "7.4.4", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@babel/parser": "^7.1.0", + "@babel/types": "^7.0.0" + } + }, + "node_modules/@types/babel__traverse": { + "version": "7.20.6", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@babel/types": "^7.20.7" + } + }, + "node_modules/@types/body-parser": { + "version": "1.19.5", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/connect": "*", + "@types/node": "*" + } + }, + "node_modules/@types/bson": { + "version": "1.0.11", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/connect": { + "version": "3.4.38", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/crypto-js": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/@types/crypto-js/-/crypto-js-4.1.1.tgz", + "integrity": "sha512-BG7fQKZ689HIoc5h+6D2Dgq1fABRa0RbBWKBd9SP/MVRVXROflpm5fhwyATX5duFmbStzyzyycPB8qUYKDH3NA==", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/express": { + "version": "4.17.21", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/body-parser": "*", + "@types/express-serve-static-core": "^4.17.33", + "@types/qs": "*", + "@types/serve-static": "*" + } + }, + "node_modules/@types/express-serve-static-core": { + "version": "4.17.29", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/node": "*", + "@types/qs": "*", + "@types/range-parser": "*" + } + }, + "node_modules/@types/express/node_modules/@types/express-serve-static-core": { + "version": "4.19.6", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/node": "*", + "@types/qs": "*", + "@types/range-parser": "*", + "@types/send": "*" + } + }, + "node_modules/@types/geojson": { + "version": "7946.0.16", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/glob": { + "version": "7.2.0", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/minimatch": "*", + "@types/node": "*" + } + }, + "node_modules/@types/graceful-fs": { + "version": "4.1.9", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/http-errors": { + "version": "2.0.4", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/istanbul-lib-coverage": { + "version": "2.0.6", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/istanbul-lib-report": { + "version": "3.0.3", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/istanbul-lib-coverage": "*" + } + }, + "node_modules/@types/istanbul-reports": { + "version": "3.0.4", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/istanbul-lib-report": "*" + } + }, + "node_modules/@types/jasmine": { + "version": "3.10.6", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/lodash": { + "version": "4.14.181", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/mime": { + "version": "1.3.5", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/minimatch": { + "version": "5.1.2", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/minimist": { + "version": "1.2.5", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/mongodb": { + "version": "3.6.20", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/bson": "*", + "@types/node": "*" + } + }, + "node_modules/@types/node": { + "version": "18.18.4", + "license": "MIT" + }, + "node_modules/@types/normalize-package-data": { + "version": "2.4.4", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/prettier": { + "version": "2.7.3", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/@types/qs": { + "version": "6.9.18", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/range-parser": { + "version": "1.2.7", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/readdir-glob": { + "version": "1.1.5", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/send": { + "version": "0.17.4", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/mime": "^1", + "@types/node": "*" + } + }, + "node_modules/@types/serve-static": { + "version": "1.15.7", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/http-errors": "*", + "@types/node": "*", + "@types/send": "*" + } + }, + "node_modules/@types/ssh2": { + "version": "1.15.4", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/node": "^18.11.18" + } + }, + "node_modules/@types/ssh2-sftp-client": { + "version": "9.0.4", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/ssh2": "^1.0.0" + } + }, + "node_modules/@types/stack-utils": { + "version": "2.0.3", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/@types/webidl-conversions": { + "version": "7.0.3", + "license": "MIT", + "peer": true + }, + "node_modules/@types/whatwg-url": { + "version": "8.2.2", + "license": "MIT", + "peer": true, + "dependencies": { + "@types/node": "*", + "@types/webidl-conversions": "*" + } + }, + "node_modules/@types/yargs": { + "version": "15.0.19", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/yargs-parser": "*" + } + }, + "node_modules/@types/yargs-parser": { + "version": "21.0.3", + "dev": true, + "license": "MIT" + }, + "node_modules/abab": { + "version": "2.0.6", + "dev": true, + "license": "BSD-3-Clause", + "peer": true + }, + "node_modules/accepts": { + "version": "1.3.8", + "license": "MIT", + "peer": true, + "dependencies": { + "mime-types": "~2.1.34", + "negotiator": "0.6.3" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/acorn": { + "version": "8.14.1", + "dev": true, + "license": "MIT", + "peer": true, + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/acorn-globals": { + "version": "6.0.0", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "acorn": "^7.1.1", + "acorn-walk": "^7.1.1" + } + }, + "node_modules/acorn-globals/node_modules/acorn": { + "version": "7.4.1", + "dev": true, + "license": "MIT", + "peer": true, + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/acorn-walk": { + "version": "7.2.0", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/agent-base": { + "version": "6.0.2", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "debug": "4" + }, + "engines": { + "node": ">= 6.0.0" + } + }, + "node_modules/agent-base/node_modules/debug": { + "version": "4.4.0", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "ms": "^2.1.3" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/agent-base/node_modules/ms": { + "version": "2.1.3", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/aggregate-error": { + "version": "3.1.0", + "dev": true, + "license": "MIT", + "dependencies": { + "clean-stack": "^2.0.0", + "indent-string": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/ansi-escapes": { + "version": "4.3.2", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "type-fest": "^0.21.3" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/ansi-regex": { + "version": "5.0.1", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/ansi-styles": { + "version": "4.3.0", + "dev": true, + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/anymatch": { + "version": "3.1.3", + "dev": true, + "license": "ISC", + "peer": true, + "dependencies": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/archiver": { + "version": "6.0.2", + "license": "MIT", + "dependencies": { + "archiver-utils": "^4.0.1", + "async": "^3.2.4", + "buffer-crc32": "^0.2.1", + "readable-stream": "^3.6.0", + "readdir-glob": "^1.1.2", + "tar-stream": "^3.0.0", + "zip-stream": "^5.0.1" + }, + "engines": { + "node": ">= 12.0.0" + } + }, + "node_modules/archiver-utils": { + "version": "4.0.1", + "license": "MIT", + "dependencies": { + "glob": "^8.0.0", + "graceful-fs": "^4.2.0", + "lazystream": "^1.0.0", + "lodash": "^4.17.15", + "normalize-path": "^3.0.0", + "readable-stream": "^3.6.0" + }, + "engines": { + "node": ">= 12.0.0" + } + }, + "node_modules/argparse": { + "version": "1.0.10", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "sprintf-js": "~1.0.2" + } + }, + "node_modules/arr-diff": { + "version": "4.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/arr-flatten": { + "version": "1.1.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/arr-union": { + "version": "3.1.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/array-buffer-byte-length": { + "version": "1.0.2", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3", + "is-array-buffer": "^3.0.5" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/array-flatten": { + "version": "1.1.1", + "license": "MIT", + "peer": true + }, + "node_modules/array-union": { + "version": "1.0.2", + "dev": true, + "license": "MIT", + "dependencies": { + "array-uniq": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/array-uniq": { + "version": "1.0.3", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/array-unique": { + "version": "0.3.2", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/arraybuffer.prototype.slice": { + "version": "1.0.4", + "dev": true, + "license": "MIT", + "dependencies": { + "array-buffer-byte-length": "^1.0.1", + "call-bind": "^1.0.8", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.5", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.6", + "is-array-buffer": "^3.0.4" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/arrify": { + "version": "2.0.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/asn1": { + "version": "0.2.6", + "license": "MIT", + "dependencies": { + "safer-buffer": "~2.1.0" + } + }, + "node_modules/assign-symbols": { + "version": "1.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/async": { + "version": "3.2.6", + "license": "MIT" + }, + "node_modules/async-function": { + "version": "1.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/asynckit": { + "version": "0.4.0", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/atob": { + "version": "2.1.2", + "dev": true, + "license": "(MIT OR Apache-2.0)", + "bin": { + "atob": "bin/atob.js" + }, + "engines": { + "node": ">= 4.5.0" + } + }, + "node_modules/available-typed-arrays": { + "version": "1.0.7", + "dev": true, + "license": "MIT", + "dependencies": { + "possible-typed-array-names": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/b4a": { + "version": "1.6.7", + "license": "Apache-2.0" + }, + "node_modules/babel-jest": { + "version": "26.6.3", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@jest/transform": "^26.6.2", + "@jest/types": "^26.6.2", + "@types/babel__core": "^7.1.7", + "babel-plugin-istanbul": "^6.0.0", + "babel-preset-jest": "^26.6.2", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.4", + "slash": "^3.0.0" + }, + "engines": { + "node": ">= 10.14.2" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/babel-jest/node_modules/slash": { + "version": "3.0.0", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/babel-plugin-istanbul": { + "version": "6.1.1", + "dev": true, + "license": "BSD-3-Clause", + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.0.0", + "@istanbuljs/load-nyc-config": "^1.0.0", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-instrument": "^5.0.4", + "test-exclude": "^6.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/babel-plugin-istanbul/node_modules/istanbul-lib-instrument": { + "version": "5.2.1", + "dev": true, + "license": "BSD-3-Clause", + "peer": true, + "dependencies": { + "@babel/core": "^7.12.3", + "@babel/parser": "^7.14.7", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-coverage": "^3.2.0", + "semver": "^6.3.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/babel-plugin-jest-hoist": { + "version": "26.6.2", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@babel/template": "^7.3.3", + "@babel/types": "^7.3.3", + "@types/babel__core": "^7.0.0", + "@types/babel__traverse": "^7.0.6" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/babel-preset-current-node-syntax": { + "version": "1.1.0", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@babel/plugin-syntax-async-generators": "^7.8.4", + "@babel/plugin-syntax-bigint": "^7.8.3", + "@babel/plugin-syntax-class-properties": "^7.12.13", + "@babel/plugin-syntax-class-static-block": "^7.14.5", + "@babel/plugin-syntax-import-attributes": "^7.24.7", + "@babel/plugin-syntax-import-meta": "^7.10.4", + "@babel/plugin-syntax-json-strings": "^7.8.3", + "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", + "@babel/plugin-syntax-numeric-separator": "^7.10.4", + "@babel/plugin-syntax-object-rest-spread": "^7.8.3", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.3", + "@babel/plugin-syntax-optional-chaining": "^7.8.3", + "@babel/plugin-syntax-private-property-in-object": "^7.14.5", + "@babel/plugin-syntax-top-level-await": "^7.14.5" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/babel-preset-jest": { + "version": "26.6.2", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "babel-plugin-jest-hoist": "^26.6.2", + "babel-preset-current-node-syntax": "^1.0.0" + }, + "engines": { + "node": ">= 10.14.2" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/balanced-match": { + "version": "1.0.2", + "license": "MIT" + }, + "node_modules/bare-events": { + "version": "2.5.4", + "license": "Apache-2.0", + "optional": true + }, + "node_modules/base": { + "version": "0.11.2", + "dev": true, + "license": "MIT", + "dependencies": { + "cache-base": "^1.0.1", + "class-utils": "^0.3.5", + "component-emitter": "^1.2.1", + "define-property": "^1.0.0", + "isobject": "^3.0.1", + "mixin-deep": "^1.2.0", + "pascalcase": "^0.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/base/node_modules/define-property": { + "version": "1.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "is-descriptor": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/base64-js": { + "version": "1.5.1", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT", + "peer": true + }, + "node_modules/bcrypt-pbkdf": { + "version": "1.0.2", + "license": "BSD-3-Clause", + "dependencies": { + "tweetnacl": "^0.14.3" + } + }, + "node_modules/body-parser": { + "version": "1.20.3", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.3.tgz", + "integrity": "sha512-7rAxByjUMqQ3/bHJy7D6OGXvx/MMc4IqBn/X0fcM1QUcAItpZrBEYhWGem+tzXH90c+G01ypMcYJBO9Y30203g==", + "peer": true, + "dependencies": { + "bytes": "3.1.2", + "content-type": "~1.0.5", + "debug": "2.6.9", + "depd": "2.0.0", + "destroy": "1.2.0", + "http-errors": "2.0.0", + "iconv-lite": "0.4.24", + "on-finished": "2.4.1", + "qs": "6.13.0", + "raw-body": "2.5.2", + "type-is": "~1.6.18", + "unpipe": "1.0.0" + }, + "engines": { + "node": ">= 0.8", + "npm": "1.2.8000 || >= 1.4.16" + } + }, + "node_modules/bowser": { + "version": "2.11.0", + "license": "MIT", + "optional": true, + "peer": true + }, + "node_modules/brace-expansion": { + "version": "2.0.1", + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/braces": { + "version": "2.3.2", + "dev": true, + "license": "MIT", + "dependencies": { + "arr-flatten": "^1.1.0", + "array-unique": "^0.3.2", + "extend-shallow": "^2.0.1", + "fill-range": "^4.0.0", + "isobject": "^3.0.1", + "repeat-element": "^1.1.2", + "snapdragon": "^0.8.1", + "snapdragon-node": "^2.0.1", + "split-string": "^3.0.2", + "to-regex": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/braces/node_modules/extend-shallow": { + "version": "2.0.1", + "dev": true, + "license": "MIT", + "dependencies": { + "is-extendable": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/braces/node_modules/is-extendable": { + "version": "0.1.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/browser-process-hrtime": { + "version": "1.0.0", + "dev": true, + "license": "BSD-2-Clause", + "peer": true + }, + "node_modules/browserslist": { + "version": "4.24.4", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "peer": true, + "dependencies": { + "caniuse-lite": "^1.0.30001688", + "electron-to-chromium": "^1.5.73", + "node-releases": "^2.0.19", + "update-browserslist-db": "^1.1.1" + }, + "bin": { + "browserslist": "cli.js" + }, + "engines": { + "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" + } + }, + "node_modules/bs-logger": { + "version": "0.2.6", + "dev": true, + "license": "MIT", + "dependencies": { + "fast-json-stable-stringify": "2.x" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/bser": { + "version": "2.1.1", + "dev": true, + "license": "Apache-2.0", + "peer": true, + "dependencies": { + "node-int64": "^0.4.0" + } + }, + "node_modules/bson": { + "version": "4.7.2", + "license": "Apache-2.0", + "peer": true, + "dependencies": { + "buffer": "^5.6.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/buffer": { + "version": "5.7.1", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT", + "peer": true, + "dependencies": { + "base64-js": "^1.3.1", + "ieee754": "^1.1.13" + } + }, + "node_modules/buffer-crc32": { + "version": "0.2.13", + "license": "MIT", + "engines": { + "node": "*" + } + }, + "node_modules/buffer-from": { + "version": "1.1.2", + "license": "MIT" + }, + "node_modules/bytes": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", + "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", + "peer": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/cache-base": { + "version": "1.0.1", + "dev": true, + "license": "MIT", + "dependencies": { + "collection-visit": "^1.0.0", + "component-emitter": "^1.2.1", + "get-value": "^2.0.6", + "has-value": "^1.0.0", + "isobject": "^3.0.1", + "set-value": "^2.0.0", + "to-object-path": "^0.3.0", + "union-value": "^1.0.0", + "unset-value": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/call-bind": { + "version": "1.0.8", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind-apply-helpers": "^1.0.0", + "es-define-property": "^1.0.0", + "get-intrinsic": "^1.2.4", + "set-function-length": "^1.2.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/call-bind-apply-helpers": { + "version": "1.0.2", + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/call-bound": { + "version": "1.0.4", + "license": "MIT", + "dependencies": { + "call-bind-apply-helpers": "^1.0.2", + "get-intrinsic": "^1.3.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/call-me-maybe": { + "version": "1.0.2", + "dev": true, + "license": "MIT" + }, + "node_modules/callsites": { + "version": "3.1.0", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/camelcase": { + "version": "5.3.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/camelcase-keys": { + "version": "6.2.2", + "dev": true, + "license": "MIT", + "dependencies": { + "camelcase": "^5.3.1", + "map-obj": "^4.0.0", + "quick-lru": "^4.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/caniuse-lite": { + "version": "1.0.30001704", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/caniuse-lite" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "CC-BY-4.0", + "peer": true + }, + "node_modules/capture-exit": { + "version": "2.0.0", + "dev": true, + "license": "ISC", + "peer": true, + "dependencies": { + "rsvp": "^4.8.4" + }, + "engines": { + "node": "6.* || 8.* || >= 10.*" + } + }, + "node_modules/chalk": { + "version": "4.1.2", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/char-regex": { + "version": "1.0.2", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/ci-info": { + "version": "2.0.0", + "dev": true, + "license": "MIT" + }, + "node_modules/cjs-module-lexer": { + "version": "0.6.0", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/class-utils": { + "version": "0.3.6", + "dev": true, + "license": "MIT", + "dependencies": { + "arr-union": "^3.1.0", + "define-property": "^0.2.5", + "isobject": "^3.0.0", + "static-extend": "^0.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/class-utils/node_modules/define-property": { + "version": "0.2.5", + "dev": true, + "license": "MIT", + "dependencies": { + "is-descriptor": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/class-utils/node_modules/is-descriptor": { + "version": "0.1.7", + "dev": true, + "license": "MIT", + "dependencies": { + "is-accessor-descriptor": "^1.0.1", + "is-data-descriptor": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/clean-stack": { + "version": "2.2.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/cliui": { + "version": "6.0.0", + "dev": true, + "license": "ISC", + "peer": true, + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^6.2.0" + } + }, + "node_modules/co": { + "version": "4.6.0", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "iojs": ">= 1.0.0", + "node": ">= 0.12.0" + } + }, + "node_modules/collect-v8-coverage": { + "version": "1.0.2", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/collection-visit": { + "version": "1.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "map-visit": "^1.0.0", + "object-visit": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/color-convert": { + "version": "2.0.1", + "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/color-name": { + "version": "1.1.4", + "dev": true, + "license": "MIT" + }, + "node_modules/combined-stream": { + "version": "1.0.8", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "delayed-stream": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/component-emitter": { + "version": "1.3.1", + "dev": true, + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/compress-commons": { + "version": "5.0.3", + "license": "MIT", + "dependencies": { + "crc-32": "^1.2.0", + "crc32-stream": "^5.0.0", + "normalize-path": "^3.0.0", + "readable-stream": "^3.6.0" + }, + "engines": { + "node": ">= 12.0.0" + } + }, + "node_modules/concat-map": { + "version": "0.0.1", + "dev": true, + "license": "MIT" + }, + "node_modules/concat-stream": { + "version": "2.0.0", + "engines": [ + "node >= 6.0" + ], + "license": "MIT", + "dependencies": { + "buffer-from": "^1.0.0", + "inherits": "^2.0.3", + "readable-stream": "^3.0.2", + "typedarray": "^0.0.6" + } + }, + "node_modules/content-disposition": { + "version": "0.5.4", + "license": "MIT", + "peer": true, + "dependencies": { + "safe-buffer": "5.2.1" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/content-type": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.5.tgz", + "integrity": "sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==", + "peer": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/convert-source-map": { + "version": "1.9.0", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/cookie": { + "version": "0.7.1", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.7.1.tgz", + "integrity": "sha512-6DnInpx7SJ2AK3+CTUE/ZM0vWTUboZCegxhC2xiIydHR9jNuTAASBrfEpHhiGOZw/nX51bHt6YQl8jsGo4y/0w==", + "peer": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/cookie-signature": { + "version": "1.0.6", + "license": "MIT", + "peer": true + }, + "node_modules/copy-descriptor": { + "version": "0.1.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/core-util-is": { + "version": "1.0.3", + "license": "MIT" + }, + "node_modules/cp-file": { + "version": "7.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "graceful-fs": "^4.1.2", + "make-dir": "^3.0.0", + "nested-error-stacks": "^2.0.0", + "p-event": "^4.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/cpy": { + "version": "8.1.2", + "dev": true, + "license": "MIT", + "dependencies": { + "arrify": "^2.0.1", + "cp-file": "^7.0.0", + "globby": "^9.2.0", + "has-glob": "^1.0.0", + "junk": "^3.1.0", + "nested-error-stacks": "^2.1.0", + "p-all": "^2.1.0", + "p-filter": "^2.1.0", + "p-map": "^3.0.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/cpy-cli": { + "version": "3.1.1", + "dev": true, + "license": "MIT", + "dependencies": { + "cpy": "^8.0.0", + "meow": "^6.1.1" + }, + "bin": { + "cpy": "cli.js" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/crc-32": { + "version": "1.2.2", + "license": "Apache-2.0", + "bin": { + "crc32": "bin/crc32.njs" + }, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/crc32-stream": { + "version": "5.0.1", + "license": "MIT", + "dependencies": { + "crc-32": "^1.2.0", + "readable-stream": "^3.4.0" + }, + "engines": { + "node": ">= 12.0.0" + } + }, + "node_modules/cross-spawn": { + "version": "7.0.6", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/crypto-js": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/crypto-js/-/crypto-js-4.1.1.tgz", + "integrity": "sha512-o2JlM7ydqd3Qk9CA0L4NL6mTzU2sdx96a+oOfPu8Mkl/PK51vSyoi8/rQ8NknZtk44vq15lmhAj9CIAGwgeWKw==", + "license": "MIT" + }, + "node_modules/cssom": { + "version": "0.4.4", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/cssstyle": { + "version": "2.3.0", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "cssom": "~0.3.6" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/cssstyle/node_modules/cssom": { + "version": "0.3.8", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/data-urls": { + "version": "2.0.0", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "abab": "^2.0.3", + "whatwg-mimetype": "^2.3.0", + "whatwg-url": "^8.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/data-view-buffer": { + "version": "1.0.2", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/data-view-byte-length": { + "version": "1.0.2", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/inspect-js" + } + }, + "node_modules/data-view-byte-offset": { + "version": "1.0.1", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/debug": { + "version": "2.6.9", + "license": "MIT", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/decamelize": { + "version": "1.2.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/decamelize-keys": { + "version": "1.1.1", + "dev": true, + "license": "MIT", + "dependencies": { + "decamelize": "^1.1.0", + "map-obj": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/decamelize-keys/node_modules/map-obj": { + "version": "1.0.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/decimal.js": { + "version": "10.5.0", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/decode-uri-component": { + "version": "0.2.2", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10" + } + }, + "node_modules/deepmerge": { + "version": "4.3.1", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/define-data-property": { + "version": "1.1.4", + "dev": true, + "license": "MIT", + "dependencies": { + "es-define-property": "^1.0.0", + "es-errors": "^1.3.0", + "gopd": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/define-properties": { + "version": "1.2.1", + "dev": true, + "license": "MIT", + "dependencies": { + "define-data-property": "^1.0.1", + "has-property-descriptors": "^1.0.0", + "object-keys": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/define-property": { + "version": "2.0.2", + "dev": true, + "license": "MIT", + "dependencies": { + "is-descriptor": "^1.0.2", + "isobject": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/delayed-stream": { + "version": "1.0.0", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/depd": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", + "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==", + "peer": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/destroy": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz", + "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==", + "peer": true, + "engines": { + "node": ">= 0.8", + "npm": "1.2.8000 || >= 1.4.16" + } + }, + "node_modules/detect-newline": { + "version": "3.1.0", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/diff-sequences": { + "version": "26.6.2", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/dir-glob": { + "version": "2.2.2", + "dev": true, + "license": "MIT", + "dependencies": { + "path-type": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/domexception": { + "version": "2.0.1", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "webidl-conversions": "^5.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/domexception/node_modules/webidl-conversions": { + "version": "5.0.0", + "dev": true, + "license": "BSD-2-Clause", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/dunder-proto": { + "version": "1.0.1", + "license": "MIT", + "dependencies": { + "call-bind-apply-helpers": "^1.0.1", + "es-errors": "^1.3.0", + "gopd": "^1.2.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/ee-first": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", + "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==", + "peer": true + }, + "node_modules/electron-to-chromium": { + "version": "1.5.118", + "dev": true, + "license": "ISC", + "peer": true + }, + "node_modules/emittery": { + "version": "0.7.2", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sindresorhus/emittery?sponsor=1" + } + }, + "node_modules/emoji-regex": { + "version": "8.0.0", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/encodeurl": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-2.0.0.tgz", + "integrity": "sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg==", + "peer": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/end-of-stream": { + "version": "1.4.4", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "once": "^1.4.0" + } + }, + "node_modules/err-code": { + "version": "2.0.3", + "license": "MIT" + }, + "node_modules/error-ex": { + "version": "1.3.2", + "dev": true, + "license": "MIT", + "dependencies": { + "is-arrayish": "^0.2.1" + } + }, + "node_modules/es-abstract": { + "version": "1.23.9", + "dev": true, + "license": "MIT", + "dependencies": { + "array-buffer-byte-length": "^1.0.2", + "arraybuffer.prototype.slice": "^1.0.4", + "available-typed-arrays": "^1.0.7", + "call-bind": "^1.0.8", + "call-bound": "^1.0.3", + "data-view-buffer": "^1.0.2", + "data-view-byte-length": "^1.0.2", + "data-view-byte-offset": "^1.0.1", + "es-define-property": "^1.0.1", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.0.0", + "es-set-tostringtag": "^2.1.0", + "es-to-primitive": "^1.3.0", + "function.prototype.name": "^1.1.8", + "get-intrinsic": "^1.2.7", + "get-proto": "^1.0.0", + "get-symbol-description": "^1.1.0", + "globalthis": "^1.0.4", + "gopd": "^1.2.0", + "has-property-descriptors": "^1.0.2", + "has-proto": "^1.2.0", + "has-symbols": "^1.1.0", + "hasown": "^2.0.2", + "internal-slot": "^1.1.0", + "is-array-buffer": "^3.0.5", + "is-callable": "^1.2.7", + "is-data-view": "^1.0.2", + "is-regex": "^1.2.1", + "is-shared-array-buffer": "^1.0.4", + "is-string": "^1.1.1", + "is-typed-array": "^1.1.15", + "is-weakref": "^1.1.0", + "math-intrinsics": "^1.1.0", + "object-inspect": "^1.13.3", + "object-keys": "^1.1.1", + "object.assign": "^4.1.7", + "own-keys": "^1.0.1", + "regexp.prototype.flags": "^1.5.3", + "safe-array-concat": "^1.1.3", + "safe-push-apply": "^1.0.0", + "safe-regex-test": "^1.1.0", + "set-proto": "^1.0.0", + "string.prototype.trim": "^1.2.10", + "string.prototype.trimend": "^1.0.9", + "string.prototype.trimstart": "^1.0.8", + "typed-array-buffer": "^1.0.3", + "typed-array-byte-length": "^1.0.3", + "typed-array-byte-offset": "^1.0.4", + "typed-array-length": "^1.0.7", + "unbox-primitive": "^1.1.0", + "which-typed-array": "^1.1.18" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/es-define-property": { + "version": "1.0.1", + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-errors": { + "version": "1.3.0", + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-object-atoms": { + "version": "1.1.1", + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-set-tostringtag": { + "version": "2.1.0", + "dev": true, + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.6", + "has-tostringtag": "^1.0.2", + "hasown": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-to-primitive": { + "version": "1.3.0", + "dev": true, + "license": "MIT", + "dependencies": { + "is-callable": "^1.2.7", + "is-date-object": "^1.0.5", + "is-symbol": "^1.0.4" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/escalade": { + "version": "3.2.0", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/escape-html": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", + "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==", + "peer": true + }, + "node_modules/escape-string-regexp": { + "version": "2.0.0", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/escodegen": { + "version": "2.1.0", + "dev": true, + "license": "BSD-2-Clause", + "peer": true, + "dependencies": { + "esprima": "^4.0.1", + "estraverse": "^5.2.0", + "esutils": "^2.0.2" + }, + "bin": { + "escodegen": "bin/escodegen.js", + "esgenerate": "bin/esgenerate.js" + }, + "engines": { + "node": ">=6.0" + }, + "optionalDependencies": { + "source-map": "~0.6.1" + } + }, + "node_modules/esprima": { + "version": "4.0.1", + "dev": true, + "license": "BSD-2-Clause", + "peer": true, + "bin": { + "esparse": "bin/esparse.js", + "esvalidate": "bin/esvalidate.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/estraverse": { + "version": "5.3.0", + "dev": true, + "license": "BSD-2-Clause", + "peer": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/esutils": { + "version": "2.0.3", + "dev": true, + "license": "BSD-2-Clause", + "peer": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/etag": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", + "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==", + "peer": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/exec-sh": { + "version": "0.3.6", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/execa": { + "version": "4.1.0", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "cross-spawn": "^7.0.0", + "get-stream": "^5.0.0", + "human-signals": "^1.1.1", + "is-stream": "^2.0.0", + "merge-stream": "^2.0.0", + "npm-run-path": "^4.0.0", + "onetime": "^5.1.0", + "signal-exit": "^3.0.2", + "strip-final-newline": "^2.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sindresorhus/execa?sponsor=1" + } + }, + "node_modules/exit": { + "version": "0.1.2", + "dev": true, + "peer": true, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/expand-brackets": { + "version": "2.1.4", + "dev": true, + "license": "MIT", + "dependencies": { + "debug": "^2.3.3", + "define-property": "^0.2.5", + "extend-shallow": "^2.0.1", + "posix-character-classes": "^0.1.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/expand-brackets/node_modules/define-property": { + "version": "0.2.5", + "dev": true, + "license": "MIT", + "dependencies": { + "is-descriptor": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/expand-brackets/node_modules/extend-shallow": { + "version": "2.0.1", + "dev": true, + "license": "MIT", + "dependencies": { + "is-extendable": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/expand-brackets/node_modules/is-descriptor": { + "version": "0.1.7", + "dev": true, + "license": "MIT", + "dependencies": { + "is-accessor-descriptor": "^1.0.1", + "is-data-descriptor": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/expand-brackets/node_modules/is-extendable": { + "version": "0.1.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/expect": { + "version": "26.6.2", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@jest/types": "^26.6.2", + "ansi-styles": "^4.0.0", + "jest-get-type": "^26.3.0", + "jest-matcher-utils": "^26.6.2", + "jest-message-util": "^26.6.2", + "jest-regex-util": "^26.0.0" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/express": { + "version": "4.21.2", + "resolved": "https://registry.npmjs.org/express/-/express-4.21.2.tgz", + "integrity": "sha512-28HqgMZAmih1Czt9ny7qr6ek2qddF4FclbMzwhCREB6OFfH+rXAnuNCwo1/wFvrtbgsQDb4kSbX9de9lFbrXnA==", + "peer": true, + "dependencies": { + "accepts": "~1.3.8", + "array-flatten": "1.1.1", + "body-parser": "1.20.3", + "content-disposition": "0.5.4", + "content-type": "~1.0.4", + "cookie": "0.7.1", + "cookie-signature": "1.0.6", + "debug": "2.6.9", + "depd": "2.0.0", + "encodeurl": "~2.0.0", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "finalhandler": "1.3.1", + "fresh": "0.5.2", + "http-errors": "2.0.0", + "merge-descriptors": "1.0.3", + "methods": "~1.1.2", + "on-finished": "2.4.1", + "parseurl": "~1.3.3", + "path-to-regexp": "0.1.12", + "proxy-addr": "~2.0.7", + "qs": "6.13.0", + "range-parser": "~1.2.1", + "safe-buffer": "5.2.1", + "send": "0.19.0", + "serve-static": "1.16.2", + "setprototypeof": "1.2.0", + "statuses": "2.0.1", + "type-is": "~1.6.18", + "utils-merge": "1.0.1", + "vary": "~1.1.2" + }, + "engines": { + "node": ">= 0.10.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/express" + } + }, + "node_modules/express-session": { + "version": "1.17.2", + "license": "MIT", + "peer": true, + "dependencies": { + "cookie": "0.4.1", + "cookie-signature": "1.0.6", + "debug": "2.6.9", + "depd": "~2.0.0", + "on-headers": "~1.0.2", + "parseurl": "~1.3.3", + "safe-buffer": "5.2.1", + "uid-safe": "~2.1.5" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/express-session/node_modules/cookie": { + "version": "0.4.1", + "license": "MIT", + "peer": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/extend-shallow": { + "version": "3.0.2", + "dev": true, + "license": "MIT", + "dependencies": { + "assign-symbols": "^1.0.0", + "is-extendable": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/extglob": { + "version": "2.0.4", + "dev": true, + "license": "MIT", + "dependencies": { + "array-unique": "^0.3.2", + "define-property": "^1.0.0", + "expand-brackets": "^2.1.4", + "extend-shallow": "^2.0.1", + "fragment-cache": "^0.2.1", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/extglob/node_modules/define-property": { + "version": "1.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "is-descriptor": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/extglob/node_modules/extend-shallow": { + "version": "2.0.1", + "dev": true, + "license": "MIT", + "dependencies": { + "is-extendable": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/extglob/node_modules/is-extendable": { + "version": "0.1.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/fast-fifo": { + "version": "1.3.2", + "license": "MIT" + }, + "node_modules/fast-glob": { + "version": "2.2.7", + "dev": true, + "license": "MIT", + "dependencies": { + "@mrmlnc/readdir-enhanced": "^2.2.1", + "@nodelib/fs.stat": "^1.1.2", + "glob-parent": "^3.1.0", + "is-glob": "^4.0.0", + "merge2": "^1.2.3", + "micromatch": "^3.1.10" + }, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/fast-json-stable-stringify": { + "version": "2.1.0", + "dev": true, + "license": "MIT" + }, + "node_modules/fast-xml-parser": { + "version": "4.4.1", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/NaturalIntelligence" + }, + { + "type": "paypal", + "url": "https://paypal.me/naturalintelligence" + } + ], + "license": "MIT", + "optional": true, + "peer": true, + "dependencies": { + "strnum": "^1.0.5" + }, + "bin": { + "fxparser": "src/cli/cli.js" + } + }, + "node_modules/fb-watchman": { + "version": "2.0.2", + "dev": true, + "license": "Apache-2.0", + "peer": true, + "dependencies": { + "bser": "2.1.1" + } + }, + "node_modules/fill-range": { + "version": "4.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "extend-shallow": "^2.0.1", + "is-number": "^3.0.0", + "repeat-string": "^1.6.1", + "to-regex-range": "^2.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/fill-range/node_modules/extend-shallow": { + "version": "2.0.1", + "dev": true, + "license": "MIT", + "dependencies": { + "is-extendable": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/fill-range/node_modules/is-extendable": { + "version": "0.1.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/finalhandler": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.3.1.tgz", + "integrity": "sha512-6BN9trH7bp3qvnrRyzsBz+g3lZxTNZTbVO2EV1CS0WIcDbawYVdYvGflME/9QP0h0pYlCDBCTjYa9nZzMDpyxQ==", + "peer": true, + "dependencies": { + "debug": "2.6.9", + "encodeurl": "~2.0.0", + "escape-html": "~1.0.3", + "on-finished": "2.4.1", + "parseurl": "~1.3.3", + "statuses": "2.0.1", + "unpipe": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/find-up": { + "version": "4.1.0", + "dev": true, + "license": "MIT", + "dependencies": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/for-each": { + "version": "0.3.5", + "dev": true, + "license": "MIT", + "dependencies": { + "is-callable": "^1.2.7" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/for-in": { + "version": "1.0.2", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/form-data": { + "version": "3.0.3", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "es-set-tostringtag": "^2.1.0", + "mime-types": "^2.1.35" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/forwarded": { + "version": "0.2.0", + "license": "MIT", + "peer": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/fragment-cache": { + "version": "0.2.1", + "dev": true, + "license": "MIT", + "dependencies": { + "map-cache": "^0.2.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/fresh": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", + "integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==", + "peer": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/fs.realpath": { + "version": "1.0.0", + "license": "ISC" + }, + "node_modules/fsevents": { + "version": "2.3.3", + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "peer": true, + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, + "node_modules/function-bind": { + "version": "1.1.2", + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/function.prototype.name": { + "version": "1.1.8", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.3", + "define-properties": "^1.2.1", + "functions-have-names": "^1.2.3", + "hasown": "^2.0.2", + "is-callable": "^1.2.7" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/functions-have-names": { + "version": "1.2.3", + "dev": true, + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/gensync": { + "version": "1.0.0-beta.2", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/get-caller-file": { + "version": "2.0.5", + "dev": true, + "license": "ISC", + "peer": true, + "engines": { + "node": "6.* || 8.* || >= 10.*" + } + }, + "node_modules/get-intrinsic": { + "version": "1.3.0", + "license": "MIT", + "dependencies": { + "call-bind-apply-helpers": "^1.0.2", + "es-define-property": "^1.0.1", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.1.1", + "function-bind": "^1.1.2", + "get-proto": "^1.0.1", + "gopd": "^1.2.0", + "has-symbols": "^1.1.0", + "hasown": "^2.0.2", + "math-intrinsics": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/get-package-type": { + "version": "0.1.0", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/get-proto": { + "version": "1.0.1", + "license": "MIT", + "dependencies": { + "dunder-proto": "^1.0.1", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/get-stream": { + "version": "5.2.0", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "pump": "^3.0.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/get-symbol-description": { + "version": "1.1.0", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.6" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/get-value": { + "version": "2.0.6", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/glob": { + "version": "8.1.0", + "license": "ISC", + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^5.0.1", + "once": "^1.3.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/glob-parent": { + "version": "3.1.0", + "dev": true, + "license": "ISC", + "dependencies": { + "is-glob": "^3.1.0", + "path-dirname": "^1.0.0" + } + }, + "node_modules/glob-parent/node_modules/is-glob": { + "version": "3.1.0", + "dev": true, + "license": "MIT", + "dependencies": { + "is-extglob": "^2.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/glob-to-regexp": { + "version": "0.3.0", + "dev": true, + "license": "BSD" + }, + "node_modules/globals": { + "version": "11.12.0", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/globalthis": { + "version": "1.0.4", + "dev": true, + "license": "MIT", + "dependencies": { + "define-properties": "^1.2.1", + "gopd": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/globby": { + "version": "9.2.0", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/glob": "^7.1.1", + "array-union": "^1.0.2", + "dir-glob": "^2.2.2", + "fast-glob": "^2.2.6", + "glob": "^7.1.3", + "ignore": "^4.0.3", + "pify": "^4.0.1", + "slash": "^2.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/globby/node_modules/brace-expansion": { + "version": "1.1.11", + "dev": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/globby/node_modules/glob": { + "version": "7.2.3", + "dev": true, + "license": "ISC", + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/globby/node_modules/minimatch": { + "version": "3.1.2", + "dev": true, + "license": "ISC", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/gopd": { + "version": "1.2.0", + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/graceful-fs": { + "version": "4.2.11", + "license": "ISC" + }, + "node_modules/growly": { + "version": "1.3.0", + "dev": true, + "license": "MIT", + "optional": true, + "peer": true + }, + "node_modules/hard-rejection": { + "version": "2.1.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/has-bigints": { + "version": "1.1.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-flag": { + "version": "4.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/has-glob": { + "version": "1.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "is-glob": "^3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/has-glob/node_modules/is-glob": { + "version": "3.1.0", + "dev": true, + "license": "MIT", + "dependencies": { + "is-extglob": "^2.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/has-property-descriptors": { + "version": "1.0.2", + "dev": true, + "license": "MIT", + "dependencies": { + "es-define-property": "^1.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-proto": { + "version": "1.2.0", + "dev": true, + "license": "MIT", + "dependencies": { + "dunder-proto": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-symbols": { + "version": "1.1.0", + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-tostringtag": { + "version": "1.0.2", + "dev": true, + "license": "MIT", + "dependencies": { + "has-symbols": "^1.0.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-value": { + "version": "1.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "get-value": "^2.0.6", + "has-values": "^1.0.0", + "isobject": "^3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/has-values": { + "version": "1.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "is-number": "^3.0.0", + "kind-of": "^4.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/has-values/node_modules/kind-of": { + "version": "4.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/hasown": { + "version": "2.0.2", + "license": "MIT", + "dependencies": { + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/hosted-git-info": { + "version": "2.8.9", + "dev": true, + "license": "ISC" + }, + "node_modules/html-encoding-sniffer": { + "version": "2.0.1", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "whatwg-encoding": "^1.0.5" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/html-escaper": { + "version": "2.0.2", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/http-errors": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", + "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==", + "peer": true, + "dependencies": { + "depd": "2.0.0", + "inherits": "2.0.4", + "setprototypeof": "1.2.0", + "statuses": "2.0.1", + "toidentifier": "1.0.1" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/http-proxy-agent": { + "version": "4.0.1", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@tootallnate/once": "1", + "agent-base": "6", + "debug": "4" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/http-proxy-agent/node_modules/debug": { + "version": "4.4.0", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "ms": "^2.1.3" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/http-proxy-agent/node_modules/ms": { + "version": "2.1.3", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/https-proxy-agent": { + "version": "5.0.1", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "agent-base": "6", + "debug": "4" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/https-proxy-agent/node_modules/debug": { + "version": "4.4.0", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "ms": "^2.1.3" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/https-proxy-agent/node_modules/ms": { + "version": "2.1.3", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/human-signals": { + "version": "1.1.1", + "dev": true, + "license": "Apache-2.0", + "peer": true, + "engines": { + "node": ">=8.12.0" + } + }, + "node_modules/iconv-lite": { + "version": "0.4.24", + "license": "MIT", + "peer": true, + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ieee754": { + "version": "1.2.1", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "BSD-3-Clause", + "peer": true + }, + "node_modules/ignore": { + "version": "4.0.6", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 4" + } + }, + "node_modules/import-local": { + "version": "3.2.0", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "pkg-dir": "^4.2.0", + "resolve-cwd": "^3.0.0" + }, + "bin": { + "import-local-fixture": "fixtures/cli.js" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/imurmurhash": { + "version": "0.1.4", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=0.8.19" + } + }, + "node_modules/indent-string": { + "version": "4.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/inflight": { + "version": "1.0.6", + "license": "ISC", + "dependencies": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "node_modules/inherits": { + "version": "2.0.4", + "license": "ISC" + }, + "node_modules/internal-slot": { + "version": "1.1.0", + "dev": true, + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "hasown": "^2.0.2", + "side-channel": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/ip-address": { + "version": "9.0.5", + "license": "MIT", + "peer": true, + "dependencies": { + "jsbn": "1.1.0", + "sprintf-js": "^1.1.3" + }, + "engines": { + "node": ">= 12" + } + }, + "node_modules/ip-address/node_modules/sprintf-js": { + "version": "1.1.3", + "license": "BSD-3-Clause", + "peer": true + }, + "node_modules/ipaddr.js": { + "version": "1.9.1", + "license": "MIT", + "peer": true, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/is-accessor-descriptor": { + "version": "1.0.1", + "dev": true, + "license": "MIT", + "dependencies": { + "hasown": "^2.0.0" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/is-array-buffer": { + "version": "3.0.5", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.3", + "get-intrinsic": "^1.2.6" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-arrayish": { + "version": "0.2.1", + "dev": true, + "license": "MIT" + }, + "node_modules/is-async-function": { + "version": "2.1.1", + "dev": true, + "license": "MIT", + "dependencies": { + "async-function": "^1.0.0", + "call-bound": "^1.0.3", + "get-proto": "^1.0.1", + "has-tostringtag": "^1.0.2", + "safe-regex-test": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-bigint": { + "version": "1.1.0", + "dev": true, + "license": "MIT", + "dependencies": { + "has-bigints": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-boolean-object": { + "version": "1.2.2", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3", + "has-tostringtag": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-buffer": { + "version": "1.1.6", + "dev": true, + "license": "MIT" + }, + "node_modules/is-callable": { + "version": "1.2.7", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-ci": { + "version": "2.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "ci-info": "^2.0.0" + }, + "bin": { + "is-ci": "bin.js" + } + }, + "node_modules/is-core-module": { + "version": "2.16.1", + "dev": true, + "license": "MIT", + "dependencies": { + "hasown": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-data-descriptor": { + "version": "1.0.1", + "dev": true, + "license": "MIT", + "dependencies": { + "hasown": "^2.0.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/is-data-view": { + "version": "1.0.2", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.2", + "get-intrinsic": "^1.2.6", + "is-typed-array": "^1.1.13" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-date-object": { + "version": "1.1.0", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.2", + "has-tostringtag": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-descriptor": { + "version": "1.0.3", + "dev": true, + "license": "MIT", + "dependencies": { + "is-accessor-descriptor": "^1.0.1", + "is-data-descriptor": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/is-docker": { + "version": "2.2.1", + "dev": true, + "license": "MIT", + "optional": true, + "peer": true, + "bin": { + "is-docker": "cli.js" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-extendable": { + "version": "1.0.1", + "dev": true, + "license": "MIT", + "dependencies": { + "is-plain-object": "^2.0.4" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-extglob": { + "version": "2.1.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-finalizationregistry": { + "version": "1.1.1", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-generator-fn": { + "version": "2.1.0", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/is-generator-function": { + "version": "1.1.0", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3", + "get-proto": "^1.0.0", + "has-tostringtag": "^1.0.2", + "safe-regex-test": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-glob": { + "version": "4.0.3", + "dev": true, + "license": "MIT", + "dependencies": { + "is-extglob": "^2.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-map": { + "version": "2.0.3", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-number": { + "version": "3.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "kind-of": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-number-object": { + "version": "1.1.1", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3", + "has-tostringtag": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-number/node_modules/kind-of": { + "version": "3.2.2", + "dev": true, + "license": "MIT", + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-plain-obj": { + "version": "1.1.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-plain-object": { + "version": "2.0.4", + "dev": true, + "license": "MIT", + "dependencies": { + "isobject": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-potential-custom-element-name": { + "version": "1.0.1", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/is-regex": { + "version": "1.2.1", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.2", + "gopd": "^1.2.0", + "has-tostringtag": "^1.0.2", + "hasown": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-set": { + "version": "2.0.3", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-shared-array-buffer": { + "version": "1.0.4", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-stream": { + "version": "2.0.1", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-string": { + "version": "1.1.1", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3", + "has-tostringtag": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-symbol": { + "version": "1.1.1", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.2", + "has-symbols": "^1.1.0", + "safe-regex-test": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-typed-array": { + "version": "1.1.15", + "dev": true, + "license": "MIT", + "dependencies": { + "which-typed-array": "^1.1.16" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-typedarray": { + "version": "1.0.0", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/is-weakmap": { + "version": "2.0.2", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-weakref": { + "version": "1.1.1", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-weakset": { + "version": "2.0.4", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3", + "get-intrinsic": "^1.2.6" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-windows": { + "version": "1.0.2", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-wsl": { + "version": "2.2.0", + "dev": true, + "license": "MIT", + "optional": true, + "peer": true, + "dependencies": { + "is-docker": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/isarray": { + "version": "2.0.5", + "dev": true, + "license": "MIT" + }, + "node_modules/isexe": { + "version": "2.0.0", + "dev": true, + "license": "ISC" + }, + "node_modules/isobject": { + "version": "3.0.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/istanbul-lib-coverage": { + "version": "3.2.2", + "dev": true, + "license": "BSD-3-Clause", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/istanbul-lib-instrument": { + "version": "4.0.3", + "dev": true, + "license": "BSD-3-Clause", + "peer": true, + "dependencies": { + "@babel/core": "^7.7.5", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-coverage": "^3.0.0", + "semver": "^6.3.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/istanbul-lib-report": { + "version": "3.0.1", + "dev": true, + "license": "BSD-3-Clause", + "peer": true, + "dependencies": { + "istanbul-lib-coverage": "^3.0.0", + "make-dir": "^4.0.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/istanbul-lib-report/node_modules/make-dir": { + "version": "4.0.0", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "semver": "^7.5.3" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/istanbul-lib-report/node_modules/semver": { + "version": "7.7.1", + "dev": true, + "license": "ISC", + "peer": true, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/istanbul-lib-source-maps": { + "version": "4.0.1", + "dev": true, + "license": "BSD-3-Clause", + "peer": true, + "dependencies": { + "debug": "^4.1.1", + "istanbul-lib-coverage": "^3.0.0", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/istanbul-lib-source-maps/node_modules/debug": { + "version": "4.4.0", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "ms": "^2.1.3" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/istanbul-lib-source-maps/node_modules/ms": { + "version": "2.1.3", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/istanbul-reports": { + "version": "3.1.7", + "dev": true, + "license": "BSD-3-Clause", + "peer": true, + "dependencies": { + "html-escaper": "^2.0.0", + "istanbul-lib-report": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jasmine": { + "version": "3.99.0", + "dev": true, + "license": "MIT", + "dependencies": { + "glob": "^7.1.6", + "jasmine-core": "~3.99.0" + }, + "bin": { + "jasmine": "bin/jasmine.js" + } + }, + "node_modules/jasmine-core": { + "version": "3.99.1", + "dev": true, + "license": "MIT" + }, + "node_modules/jasmine/node_modules/brace-expansion": { + "version": "1.1.11", + "dev": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/jasmine/node_modules/glob": { + "version": "7.2.3", + "dev": true, + "license": "ISC", + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/jasmine/node_modules/minimatch": { + "version": "3.1.2", + "dev": true, + "license": "ISC", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/jest": { + "version": "26.6.3", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@jest/core": "^26.6.3", + "import-local": "^3.0.2", + "jest-cli": "^26.6.3" + }, + "bin": { + "jest": "bin/jest.js" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-changed-files": { + "version": "26.6.2", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@jest/types": "^26.6.2", + "execa": "^4.0.0", + "throat": "^5.0.0" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-cli": { + "version": "26.6.3", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@jest/core": "^26.6.3", + "@jest/test-result": "^26.6.2", + "@jest/types": "^26.6.2", + "chalk": "^4.0.0", + "exit": "^0.1.2", + "graceful-fs": "^4.2.4", + "import-local": "^3.0.2", + "is-ci": "^2.0.0", + "jest-config": "^26.6.3", + "jest-util": "^26.6.2", + "jest-validate": "^26.6.2", + "prompts": "^2.0.1", + "yargs": "^15.4.1" + }, + "bin": { + "jest": "bin/jest.js" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-config": { + "version": "26.6.3", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@babel/core": "^7.1.0", + "@jest/test-sequencer": "^26.6.3", + "@jest/types": "^26.6.2", + "babel-jest": "^26.6.3", + "chalk": "^4.0.0", + "deepmerge": "^4.2.2", + "glob": "^7.1.1", + "graceful-fs": "^4.2.4", + "jest-environment-jsdom": "^26.6.2", + "jest-environment-node": "^26.6.2", + "jest-get-type": "^26.3.0", + "jest-jasmine2": "^26.6.3", + "jest-regex-util": "^26.0.0", + "jest-resolve": "^26.6.2", + "jest-util": "^26.6.2", + "jest-validate": "^26.6.2", + "micromatch": "^4.0.2", + "pretty-format": "^26.6.2" + }, + "engines": { + "node": ">= 10.14.2" + }, + "peerDependencies": { + "ts-node": ">=9.0.0" + }, + "peerDependenciesMeta": { + "ts-node": { + "optional": true + } + } + }, + "node_modules/jest-config/node_modules/brace-expansion": { + "version": "1.1.11", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/jest-config/node_modules/braces": { + "version": "3.0.3", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "fill-range": "^7.1.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-config/node_modules/fill-range": { + "version": "7.1.1", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-config/node_modules/glob": { + "version": "7.2.3", + "dev": true, + "license": "ISC", + "peer": true, + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/jest-config/node_modules/is-number": { + "version": "7.0.0", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/jest-config/node_modules/micromatch": { + "version": "4.0.8", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "braces": "^3.0.3", + "picomatch": "^2.3.1" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/jest-config/node_modules/minimatch": { + "version": "3.1.2", + "dev": true, + "license": "ISC", + "peer": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/jest-config/node_modules/to-regex-range": { + "version": "5.0.1", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/jest-diff": { + "version": "26.6.2", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "chalk": "^4.0.0", + "diff-sequences": "^26.6.2", + "jest-get-type": "^26.3.0", + "pretty-format": "^26.6.2" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-docblock": { + "version": "26.0.0", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "detect-newline": "^3.0.0" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-each": { + "version": "26.6.2", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@jest/types": "^26.6.2", + "chalk": "^4.0.0", + "jest-get-type": "^26.3.0", + "jest-util": "^26.6.2", + "pretty-format": "^26.6.2" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-environment-jsdom": { + "version": "26.6.2", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@jest/environment": "^26.6.2", + "@jest/fake-timers": "^26.6.2", + "@jest/types": "^26.6.2", + "@types/node": "*", + "jest-mock": "^26.6.2", + "jest-util": "^26.6.2", + "jsdom": "^16.4.0" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-environment-node": { + "version": "26.6.2", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@jest/environment": "^26.6.2", + "@jest/fake-timers": "^26.6.2", + "@jest/types": "^26.6.2", + "@types/node": "*", + "jest-mock": "^26.6.2", + "jest-util": "^26.6.2" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-get-type": { + "version": "26.3.0", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-haste-map": { + "version": "26.6.2", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@jest/types": "^26.6.2", + "@types/graceful-fs": "^4.1.2", + "@types/node": "*", + "anymatch": "^3.0.3", + "fb-watchman": "^2.0.0", + "graceful-fs": "^4.2.4", + "jest-regex-util": "^26.0.0", + "jest-serializer": "^26.6.2", + "jest-util": "^26.6.2", + "jest-worker": "^26.6.2", + "micromatch": "^4.0.2", + "sane": "^4.0.3", + "walker": "^1.0.7" + }, + "engines": { + "node": ">= 10.14.2" + }, + "optionalDependencies": { + "fsevents": "^2.1.2" + } + }, + "node_modules/jest-haste-map/node_modules/braces": { + "version": "3.0.3", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "fill-range": "^7.1.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-haste-map/node_modules/fill-range": { + "version": "7.1.1", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-haste-map/node_modules/is-number": { + "version": "7.0.0", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/jest-haste-map/node_modules/micromatch": { + "version": "4.0.8", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "braces": "^3.0.3", + "picomatch": "^2.3.1" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/jest-haste-map/node_modules/to-regex-range": { + "version": "5.0.1", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/jest-jasmine2": { + "version": "26.6.3", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@babel/traverse": "^7.1.0", + "@jest/environment": "^26.6.2", + "@jest/source-map": "^26.6.2", + "@jest/test-result": "^26.6.2", + "@jest/types": "^26.6.2", + "@types/node": "*", + "chalk": "^4.0.0", + "co": "^4.6.0", + "expect": "^26.6.2", + "is-generator-fn": "^2.0.0", + "jest-each": "^26.6.2", + "jest-matcher-utils": "^26.6.2", + "jest-message-util": "^26.6.2", + "jest-runtime": "^26.6.3", + "jest-snapshot": "^26.6.2", + "jest-util": "^26.6.2", + "pretty-format": "^26.6.2", + "throat": "^5.0.0" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-leak-detector": { + "version": "26.6.2", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "jest-get-type": "^26.3.0", + "pretty-format": "^26.6.2" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-matcher-utils": { + "version": "26.6.2", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "chalk": "^4.0.0", + "jest-diff": "^26.6.2", + "jest-get-type": "^26.3.0", + "pretty-format": "^26.6.2" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-message-util": { + "version": "26.6.2", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@babel/code-frame": "^7.0.0", + "@jest/types": "^26.6.2", + "@types/stack-utils": "^2.0.0", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.4", + "micromatch": "^4.0.2", + "pretty-format": "^26.6.2", + "slash": "^3.0.0", + "stack-utils": "^2.0.2" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-message-util/node_modules/braces": { + "version": "3.0.3", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "fill-range": "^7.1.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-message-util/node_modules/fill-range": { + "version": "7.1.1", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-message-util/node_modules/is-number": { + "version": "7.0.0", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/jest-message-util/node_modules/micromatch": { + "version": "4.0.8", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "braces": "^3.0.3", + "picomatch": "^2.3.1" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/jest-message-util/node_modules/slash": { + "version": "3.0.0", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-message-util/node_modules/to-regex-range": { + "version": "5.0.1", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/jest-mock": { + "version": "26.6.2", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@jest/types": "^26.6.2", + "@types/node": "*" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-pnp-resolver": { + "version": "1.2.3", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=6" + }, + "peerDependencies": { + "jest-resolve": "*" + }, + "peerDependenciesMeta": { + "jest-resolve": { + "optional": true + } + } + }, + "node_modules/jest-regex-util": { + "version": "26.0.0", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-resolve": { + "version": "26.6.2", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@jest/types": "^26.6.2", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.4", + "jest-pnp-resolver": "^1.2.2", + "jest-util": "^26.6.2", + "read-pkg-up": "^7.0.1", + "resolve": "^1.18.1", + "slash": "^3.0.0" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-resolve-dependencies": { + "version": "26.6.3", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@jest/types": "^26.6.2", + "jest-regex-util": "^26.0.0", + "jest-snapshot": "^26.6.2" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-resolve/node_modules/slash": { + "version": "3.0.0", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-runner": { + "version": "26.6.3", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@jest/console": "^26.6.2", + "@jest/environment": "^26.6.2", + "@jest/test-result": "^26.6.2", + "@jest/types": "^26.6.2", + "@types/node": "*", + "chalk": "^4.0.0", + "emittery": "^0.7.1", + "exit": "^0.1.2", + "graceful-fs": "^4.2.4", + "jest-config": "^26.6.3", + "jest-docblock": "^26.0.0", + "jest-haste-map": "^26.6.2", + "jest-leak-detector": "^26.6.2", + "jest-message-util": "^26.6.2", + "jest-resolve": "^26.6.2", + "jest-runtime": "^26.6.3", + "jest-util": "^26.6.2", + "jest-worker": "^26.6.2", + "source-map-support": "^0.5.6", + "throat": "^5.0.0" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-runtime": { + "version": "26.6.3", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@jest/console": "^26.6.2", + "@jest/environment": "^26.6.2", + "@jest/fake-timers": "^26.6.2", + "@jest/globals": "^26.6.2", + "@jest/source-map": "^26.6.2", + "@jest/test-result": "^26.6.2", + "@jest/transform": "^26.6.2", + "@jest/types": "^26.6.2", + "@types/yargs": "^15.0.0", + "chalk": "^4.0.0", + "cjs-module-lexer": "^0.6.0", + "collect-v8-coverage": "^1.0.0", + "exit": "^0.1.2", + "glob": "^7.1.3", + "graceful-fs": "^4.2.4", + "jest-config": "^26.6.3", + "jest-haste-map": "^26.6.2", + "jest-message-util": "^26.6.2", + "jest-mock": "^26.6.2", + "jest-regex-util": "^26.0.0", + "jest-resolve": "^26.6.2", + "jest-snapshot": "^26.6.2", + "jest-util": "^26.6.2", + "jest-validate": "^26.6.2", + "slash": "^3.0.0", + "strip-bom": "^4.0.0", + "yargs": "^15.4.1" + }, + "bin": { + "jest-runtime": "bin/jest-runtime.js" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-runtime/node_modules/brace-expansion": { + "version": "1.1.11", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/jest-runtime/node_modules/glob": { + "version": "7.2.3", + "dev": true, + "license": "ISC", + "peer": true, + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/jest-runtime/node_modules/minimatch": { + "version": "3.1.2", + "dev": true, + "license": "ISC", + "peer": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/jest-runtime/node_modules/slash": { + "version": "3.0.0", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-serializer": { + "version": "26.6.2", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@types/node": "*", + "graceful-fs": "^4.2.4" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-snapshot": { + "version": "26.6.2", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@babel/types": "^7.0.0", + "@jest/types": "^26.6.2", + "@types/babel__traverse": "^7.0.4", + "@types/prettier": "^2.0.0", + "chalk": "^4.0.0", + "expect": "^26.6.2", + "graceful-fs": "^4.2.4", + "jest-diff": "^26.6.2", + "jest-get-type": "^26.3.0", + "jest-haste-map": "^26.6.2", + "jest-matcher-utils": "^26.6.2", + "jest-message-util": "^26.6.2", + "jest-resolve": "^26.6.2", + "natural-compare": "^1.4.0", + "pretty-format": "^26.6.2", + "semver": "^7.3.2" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-snapshot/node_modules/semver": { + "version": "7.7.1", + "dev": true, + "license": "ISC", + "peer": true, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/jest-util": { + "version": "26.6.2", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/types": "^26.6.2", + "@types/node": "*", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.4", + "is-ci": "^2.0.0", + "micromatch": "^4.0.2" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-util/node_modules/braces": { + "version": "3.0.3", + "dev": true, + "license": "MIT", + "dependencies": { + "fill-range": "^7.1.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-util/node_modules/fill-range": { + "version": "7.1.1", + "dev": true, + "license": "MIT", + "dependencies": { + "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-util/node_modules/is-number": { + "version": "7.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/jest-util/node_modules/micromatch": { + "version": "4.0.8", + "dev": true, + "license": "MIT", + "dependencies": { + "braces": "^3.0.3", + "picomatch": "^2.3.1" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/jest-util/node_modules/to-regex-range": { + "version": "5.0.1", + "dev": true, + "license": "MIT", + "dependencies": { + "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/jest-validate": { + "version": "26.6.2", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@jest/types": "^26.6.2", + "camelcase": "^6.0.0", + "chalk": "^4.0.0", + "jest-get-type": "^26.3.0", + "leven": "^3.1.0", + "pretty-format": "^26.6.2" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-validate/node_modules/camelcase": { + "version": "6.3.0", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/jest-watcher": { + "version": "26.6.2", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@jest/test-result": "^26.6.2", + "@jest/types": "^26.6.2", + "@types/node": "*", + "ansi-escapes": "^4.2.1", + "chalk": "^4.0.0", + "jest-util": "^26.6.2", + "string-length": "^4.0.1" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-worker": { + "version": "26.6.2", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^7.0.0" + }, + "engines": { + "node": ">= 10.13.0" + } + }, + "node_modules/js-tokens": { + "version": "4.0.0", + "dev": true, + "license": "MIT" + }, + "node_modules/js-yaml": { + "version": "3.14.1", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/jsbn": { + "version": "1.1.0", + "license": "MIT", + "peer": true + }, + "node_modules/jsdom": { + "version": "16.7.0", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "abab": "^2.0.5", + "acorn": "^8.2.4", + "acorn-globals": "^6.0.0", + "cssom": "^0.4.4", + "cssstyle": "^2.3.0", + "data-urls": "^2.0.0", + "decimal.js": "^10.2.1", + "domexception": "^2.0.1", + "escodegen": "^2.0.0", + "form-data": "^3.0.0", + "html-encoding-sniffer": "^2.0.1", + "http-proxy-agent": "^4.0.1", + "https-proxy-agent": "^5.0.0", + "is-potential-custom-element-name": "^1.0.1", + "nwsapi": "^2.2.0", + "parse5": "6.0.1", + "saxes": "^5.0.1", + "symbol-tree": "^3.2.4", + "tough-cookie": "^4.0.0", + "w3c-hr-time": "^1.0.2", + "w3c-xmlserializer": "^2.0.0", + "webidl-conversions": "^6.1.0", + "whatwg-encoding": "^1.0.5", + "whatwg-mimetype": "^2.3.0", + "whatwg-url": "^8.5.0", + "ws": "^7.4.6", + "xml-name-validator": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "peerDependencies": { + "canvas": "^2.5.0" + }, + "peerDependenciesMeta": { + "canvas": { + "optional": true + } + } + }, + "node_modules/jsesc": { + "version": "3.1.0", + "dev": true, + "license": "MIT", + "peer": true, + "bin": { + "jsesc": "bin/jsesc" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/json-parse-better-errors": { + "version": "1.0.2", + "dev": true, + "license": "MIT" + }, + "node_modules/json-parse-even-better-errors": { + "version": "2.3.1", + "dev": true, + "license": "MIT" + }, + "node_modules/json-stringify-safe": { + "version": "5.0.1", + "dev": true, + "license": "ISC" + }, + "node_modules/json5": { + "version": "2.2.3", + "dev": true, + "license": "MIT", + "bin": { + "json5": "lib/cli.js" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/junk": { + "version": "3.1.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/kareem": { + "version": "2.5.1", + "license": "Apache-2.0", + "peer": true, + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/kind-of": { + "version": "6.0.3", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/kleur": { + "version": "3.0.3", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/lazystream": { + "version": "1.0.1", + "license": "MIT", + "dependencies": { + "readable-stream": "^2.0.5" + }, + "engines": { + "node": ">= 0.6.3" + } + }, + "node_modules/lazystream/node_modules/isarray": { + "version": "1.0.0", + "license": "MIT" + }, + "node_modules/lazystream/node_modules/readable-stream": { + "version": "2.3.8", + "license": "MIT", + "dependencies": { + "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" + } + }, + "node_modules/lazystream/node_modules/safe-buffer": { + "version": "5.1.2", + "license": "MIT" + }, + "node_modules/lazystream/node_modules/string_decoder": { + "version": "1.1.1", + "license": "MIT", + "dependencies": { + "safe-buffer": "~5.1.0" + } + }, + "node_modules/leven": { + "version": "3.1.0", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/lines-and-columns": { + "version": "1.2.4", + "dev": true, + "license": "MIT" + }, + "node_modules/load-json-file": { + "version": "4.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "graceful-fs": "^4.1.2", + "parse-json": "^4.0.0", + "pify": "^3.0.0", + "strip-bom": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/load-json-file/node_modules/pify": { + "version": "3.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/load-json-file/node_modules/strip-bom": { + "version": "3.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/locate-path": { + "version": "5.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "p-locate": "^4.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/lodash": { + "version": "4.17.21", + "license": "MIT" + }, + "node_modules/lru-cache": { + "version": "5.1.1", + "dev": true, + "license": "ISC", + "peer": true, + "dependencies": { + "yallist": "^3.0.2" + } + }, + "node_modules/make-dir": { + "version": "3.1.0", + "dev": true, + "license": "MIT", + "dependencies": { + "semver": "^6.0.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/make-error": { + "version": "1.3.6", + "dev": true, + "license": "ISC" + }, + "node_modules/makeerror": { + "version": "1.0.12", + "dev": true, + "license": "BSD-3-Clause", + "peer": true, + "dependencies": { + "tmpl": "1.0.5" + } + }, + "node_modules/map-cache": { + "version": "0.2.2", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/map-obj": { + "version": "4.3.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/map-visit": { + "version": "1.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "object-visit": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/math-intrinsics": { + "version": "1.1.0", + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/media-typer": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", + "integrity": "sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==", + "peer": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/memory-pager": { + "version": "1.5.0", + "license": "MIT", + "optional": true, + "peer": true + }, + "node_modules/memorystream": { + "version": "0.3.1", + "dev": true, + "engines": { + "node": ">= 0.10.0" + } + }, + "node_modules/meow": { + "version": "6.1.1", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/minimist": "^1.2.0", + "camelcase-keys": "^6.2.2", + "decamelize-keys": "^1.1.0", + "hard-rejection": "^2.1.0", + "minimist-options": "^4.0.2", + "normalize-package-data": "^2.5.0", + "read-pkg-up": "^7.0.1", + "redent": "^3.0.0", + "trim-newlines": "^3.0.0", + "type-fest": "^0.13.1", + "yargs-parser": "^18.1.3" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/meow/node_modules/type-fest": { + "version": "0.13.1", + "dev": true, + "license": "(MIT OR CC0-1.0)", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/merge-descriptors": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.3.tgz", + "integrity": "sha512-gaNvAS7TZ897/rVaZ0nMtAyxNyi/pdbjbAwUpFQpN70GqnVfOiXpeUUMKRBmzXaSQ8DdTX4/0ms62r2K+hE6mQ==", + "peer": true, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/merge-stream": { + "version": "2.0.0", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/merge2": { + "version": "1.4.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 8" + } + }, + "node_modules/methods": { + "version": "1.1.2", + "license": "MIT", + "peer": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/micromatch": { + "version": "3.1.10", + "dev": true, + "license": "MIT", + "dependencies": { + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "braces": "^2.3.1", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "extglob": "^2.0.4", + "fragment-cache": "^0.2.1", + "kind-of": "^6.0.2", + "nanomatch": "^1.2.9", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/mime": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", + "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", + "peer": true, + "bin": { + "mime": "cli.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/mime-db": { + "version": "1.52.0", + "license": "MIT", + "peer": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mime-types": { + "version": "2.1.35", + "license": "MIT", + "peer": true, + "dependencies": { + "mime-db": "1.52.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mimic-fn": { + "version": "2.1.0", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/min-indent": { + "version": "1.0.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/minimatch": { + "version": "5.1.6", + "license": "ISC", + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/minimist": { + "version": "1.2.8", + "dev": true, + "license": "MIT", + "peer": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/minimist-options": { + "version": "4.1.0", + "dev": true, + "license": "MIT", + "dependencies": { + "arrify": "^1.0.1", + "is-plain-obj": "^1.1.0", + "kind-of": "^6.0.3" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/minimist-options/node_modules/arrify": { + "version": "1.0.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/mixin-deep": { + "version": "1.3.2", + "dev": true, + "license": "MIT", + "dependencies": { + "for-in": "^1.0.2", + "is-extendable": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/mkdirp": { + "version": "1.0.4", + "dev": true, + "license": "MIT", + "bin": { + "mkdirp": "bin/cmd.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/mongodb": { + "version": "4.17.2", + "license": "Apache-2.0", + "peer": true, + "dependencies": { + "bson": "^4.7.2", + "mongodb-connection-string-url": "^2.6.0", + "socks": "^2.7.1" + }, + "engines": { + "node": ">=12.9.0" + }, + "optionalDependencies": { + "@aws-sdk/credential-providers": "^3.186.0", + "@mongodb-js/saslprep": "^1.1.0" + } + }, + "node_modules/mongodb-connection-string-url": { + "version": "2.6.0", + "license": "Apache-2.0", + "peer": true, + "dependencies": { + "@types/whatwg-url": "^8.2.1", + "whatwg-url": "^11.0.0" + } + }, + "node_modules/mongodb-connection-string-url/node_modules/tr46": { + "version": "3.0.0", + "license": "MIT", + "peer": true, + "dependencies": { + "punycode": "^2.1.1" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/mongodb-connection-string-url/node_modules/webidl-conversions": { + "version": "7.0.0", + "license": "BSD-2-Clause", + "peer": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/mongodb-connection-string-url/node_modules/whatwg-url": { + "version": "11.0.0", + "license": "MIT", + "peer": true, + "dependencies": { + "tr46": "^3.0.0", + "webidl-conversions": "^7.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/mongoose": { + "version": "6.13.8", + "license": "MIT", + "peer": true, + "dependencies": { + "bson": "^4.7.2", + "kareem": "2.5.1", + "mongodb": "4.17.2", + "mpath": "0.9.0", + "mquery": "4.0.3", + "ms": "2.1.3", + "sift": "16.0.1" + }, + "engines": { + "node": ">=12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/mongoose" + } + }, + "node_modules/mongoose/node_modules/ms": { + "version": "2.1.3", + "license": "MIT", + "peer": true + }, + "node_modules/mpath": { + "version": "0.9.0", + "license": "MIT", + "peer": true, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/mquery": { + "version": "4.0.3", + "license": "MIT", + "peer": true, + "dependencies": { + "debug": "4.x" + }, + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/mquery/node_modules/debug": { + "version": "4.4.0", + "license": "MIT", + "peer": true, + "dependencies": { + "ms": "^2.1.3" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/mquery/node_modules/ms": { + "version": "2.1.3", + "license": "MIT", + "peer": true + }, + "node_modules/ms": { + "version": "2.0.0", + "license": "MIT" + }, + "node_modules/nanomatch": { + "version": "1.2.13", + "dev": true, + "license": "MIT", + "dependencies": { + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "fragment-cache": "^0.2.1", + "is-windows": "^1.0.2", + "kind-of": "^6.0.2", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/natural-compare": { + "version": "1.4.0", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/negotiator": { + "version": "0.6.3", + "license": "MIT", + "peer": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/nested-error-stacks": { + "version": "2.1.1", + "dev": true, + "license": "MIT" + }, + "node_modules/nice-try": { + "version": "1.0.5", + "dev": true, + "license": "MIT" + }, + "node_modules/nock": { + "version": "12.0.3", + "dev": true, + "license": "MIT", + "dependencies": { + "debug": "^4.1.0", + "json-stringify-safe": "^5.0.1", + "lodash": "^4.17.13", + "propagate": "^2.0.0" + }, + "engines": { + "node": ">= 10.13" + } + }, + "node_modules/nock/node_modules/debug": { + "version": "4.4.0", + "dev": true, + "license": "MIT", + "dependencies": { + "ms": "^2.1.3" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/nock/node_modules/ms": { + "version": "2.1.3", + "dev": true, + "license": "MIT" + }, + "node_modules/node-int64": { + "version": "0.4.0", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/node-notifier": { + "version": "8.0.2", + "dev": true, + "license": "MIT", + "optional": true, + "peer": true, + "dependencies": { + "growly": "^1.3.0", + "is-wsl": "^2.2.0", + "semver": "^7.3.2", + "shellwords": "^0.1.1", + "uuid": "^8.3.0", + "which": "^2.0.2" + } + }, + "node_modules/node-notifier/node_modules/semver": { + "version": "7.7.1", + "dev": true, + "license": "ISC", + "optional": true, + "peer": true, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/node-notifier/node_modules/uuid": { + "version": "8.3.2", + "dev": true, + "license": "MIT", + "optional": true, + "peer": true, + "bin": { + "uuid": "dist/bin/uuid" + } + }, + "node_modules/node-releases": { + "version": "2.0.19", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/normalize-package-data": { + "version": "2.5.0", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "hosted-git-info": "^2.1.4", + "resolve": "^1.10.0", + "semver": "2 || 3 || 4 || 5", + "validate-npm-package-license": "^3.0.1" + } + }, + "node_modules/normalize-package-data/node_modules/semver": { + "version": "5.7.2", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/normalize-path": { + "version": "3.0.0", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/npm-run-all": { + "version": "4.1.5", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^3.2.1", + "chalk": "^2.4.1", + "cross-spawn": "^6.0.5", + "memorystream": "^0.3.1", + "minimatch": "^3.0.4", + "pidtree": "^0.3.0", + "read-pkg": "^3.0.0", + "shell-quote": "^1.6.1", + "string.prototype.padend": "^3.0.0" + }, + "bin": { + "npm-run-all": "bin/npm-run-all/index.js", + "run-p": "bin/run-p/index.js", + "run-s": "bin/run-s/index.js" + }, + "engines": { + "node": ">= 4" + } + }, + "node_modules/npm-run-all/node_modules/ansi-styles": { + "version": "3.2.1", + "dev": true, + "license": "MIT", + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/npm-run-all/node_modules/brace-expansion": { + "version": "1.1.11", + "dev": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/npm-run-all/node_modules/chalk": { + "version": "2.4.2", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/npm-run-all/node_modules/color-convert": { + "version": "1.9.3", + "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/npm-run-all/node_modules/color-name": { + "version": "1.1.3", + "dev": true, + "license": "MIT" + }, + "node_modules/npm-run-all/node_modules/cross-spawn": { + "version": "6.0.6", + "dev": true, + "license": "MIT", + "dependencies": { + "nice-try": "^1.0.4", + "path-key": "^2.0.1", + "semver": "^5.5.0", + "shebang-command": "^1.2.0", + "which": "^1.2.9" + }, + "engines": { + "node": ">=4.8" + } + }, + "node_modules/npm-run-all/node_modules/escape-string-regexp": { + "version": "1.0.5", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/npm-run-all/node_modules/has-flag": { + "version": "3.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/npm-run-all/node_modules/minimatch": { + "version": "3.1.2", + "dev": true, + "license": "ISC", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/npm-run-all/node_modules/path-key": { + "version": "2.0.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/npm-run-all/node_modules/semver": { + "version": "5.7.2", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/npm-run-all/node_modules/shebang-command": { + "version": "1.2.0", + "dev": true, + "license": "MIT", + "dependencies": { + "shebang-regex": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/npm-run-all/node_modules/shebang-regex": { + "version": "1.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/npm-run-all/node_modules/supports-color": { + "version": "5.5.0", + "dev": true, + "license": "MIT", + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/npm-run-all/node_modules/which": { + "version": "1.3.1", + "dev": true, + "license": "ISC", + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "which": "bin/which" + } + }, + "node_modules/npm-run-path": { + "version": "4.0.1", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "path-key": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/nwsapi": { + "version": "2.2.18", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/object-copy": { + "version": "0.1.0", + "dev": true, + "license": "MIT", + "dependencies": { + "copy-descriptor": "^0.1.0", + "define-property": "^0.2.5", + "kind-of": "^3.0.3" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-copy/node_modules/define-property": { + "version": "0.2.5", + "dev": true, + "license": "MIT", + "dependencies": { + "is-descriptor": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-copy/node_modules/is-descriptor": { + "version": "0.1.7", + "dev": true, + "license": "MIT", + "dependencies": { + "is-accessor-descriptor": "^1.0.1", + "is-data-descriptor": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/object-copy/node_modules/kind-of": { + "version": "3.2.2", + "dev": true, + "license": "MIT", + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-inspect": { + "version": "1.13.4", + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object-keys": { + "version": "1.1.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/object-visit": { + "version": "1.0.1", + "dev": true, + "license": "MIT", + "dependencies": { + "isobject": "^3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object.assign": { + "version": "4.1.7", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.3", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0", + "has-symbols": "^1.1.0", + "object-keys": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object.pick": { + "version": "1.3.0", + "dev": true, + "license": "MIT", + "dependencies": { + "isobject": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/on-finished": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz", + "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==", + "peer": true, + "dependencies": { + "ee-first": "1.1.1" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/on-headers": { + "version": "1.0.2", + "license": "MIT", + "peer": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/once": { + "version": "1.4.0", + "license": "ISC", + "dependencies": { + "wrappy": "1" + } + }, + "node_modules/onetime": { + "version": "5.1.2", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "mimic-fn": "^2.1.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/own-keys": { + "version": "1.0.1", + "dev": true, + "license": "MIT", + "dependencies": { + "get-intrinsic": "^1.2.6", + "object-keys": "^1.1.1", + "safe-push-apply": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/p-all": { + "version": "2.1.0", + "dev": true, + "license": "MIT", + "dependencies": { + "p-map": "^2.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/p-all/node_modules/p-map": { + "version": "2.1.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/p-each-series": { + "version": "2.2.0", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-event": { + "version": "4.2.0", + "dev": true, + "license": "MIT", + "dependencies": { + "p-timeout": "^3.1.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-filter": { + "version": "2.1.0", + "dev": true, + "license": "MIT", + "dependencies": { + "p-map": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/p-filter/node_modules/p-map": { + "version": "2.1.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/p-finally": { + "version": "1.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/p-limit": { + "version": "2.3.0", + "dev": true, + "license": "MIT", + "dependencies": { + "p-try": "^2.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-locate": { + "version": "4.1.0", + "dev": true, + "license": "MIT", + "dependencies": { + "p-limit": "^2.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/p-map": { + "version": "3.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "aggregate-error": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/p-timeout": { + "version": "3.2.0", + "dev": true, + "license": "MIT", + "dependencies": { + "p-finally": "^1.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/p-try": { + "version": "2.2.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/parse-json": { + "version": "4.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "error-ex": "^1.3.1", + "json-parse-better-errors": "^1.0.1" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/parse5": { + "version": "6.0.1", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/parseurl": { + "version": "1.3.3", + "license": "MIT", + "peer": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/pascalcase": { + "version": "0.1.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/path-dirname": { + "version": "1.0.2", + "dev": true, + "license": "MIT" + }, + "node_modules/path-exists": { + "version": "4.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/path-is-absolute": { + "version": "1.0.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/path-key": { + "version": "3.1.1", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/path-parse": { + "version": "1.0.7", + "dev": true, + "license": "MIT" + }, + "node_modules/path-to-regexp": { + "version": "0.1.12", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.12.tgz", + "integrity": "sha512-RA1GjUVMnvYFxuqovrEqZoxxW5NUZqbwKtYz/Tt7nXerk0LbLblQmrsgdeOxV5SFHf0UDggjS/bSeOZwt1pmEQ==", + "peer": true + }, + "node_modules/path-type": { + "version": "3.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "pify": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/path-type/node_modules/pify": { + "version": "3.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/picocolors": { + "version": "1.1.1", + "dev": true, + "license": "ISC" + }, + "node_modules/picomatch": { + "version": "2.3.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/pidtree": { + "version": "0.3.1", + "dev": true, + "license": "MIT", + "bin": { + "pidtree": "bin/pidtree.js" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/pify": { + "version": "4.0.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/pirates": { + "version": "4.0.6", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">= 6" + } + }, + "node_modules/pkg-dir": { + "version": "4.2.0", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "find-up": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/posix-character-classes": { + "version": "0.1.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/possible-typed-array-names": { + "version": "1.1.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/pretty-format": { + "version": "26.6.2", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@jest/types": "^26.6.2", + "ansi-regex": "^5.0.0", + "ansi-styles": "^4.0.0", + "react-is": "^17.0.1" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/process-nextick-args": { + "version": "2.0.1", + "license": "MIT" + }, + "node_modules/promise-retry": { + "version": "2.0.1", + "license": "MIT", + "dependencies": { + "err-code": "^2.0.2", + "retry": "^0.12.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/prompts": { + "version": "2.4.2", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "kleur": "^3.0.3", + "sisteransi": "^1.0.5" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/propagate": { + "version": "2.0.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 8" + } + }, + "node_modules/proxy-addr": { + "version": "2.0.7", + "license": "MIT", + "peer": true, + "dependencies": { + "forwarded": "0.2.0", + "ipaddr.js": "1.9.1" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/psl": { + "version": "1.15.0", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "punycode": "^2.3.1" + }, + "funding": { + "url": "https://github.com/sponsors/lupomontero" + } + }, + "node_modules/pump": { + "version": "3.0.2", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + } + }, + "node_modules/punycode": { + "version": "2.3.1", + "license": "MIT", + "peer": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/qs": { + "version": "6.13.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.13.0.tgz", + "integrity": "sha512-+38qI9SOr8tfZ4QmJNplMUxqjbe7LKvvZgWdExBOmd+egZTtjLB67Gu0HRX3u/XOq7UU2Nx6nsjvS16Z9uwfpg==", + "peer": true, + "dependencies": { + "side-channel": "^1.0.6" + }, + "engines": { + "node": ">=0.6" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/querystringify": { + "version": "2.2.0", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/quick-lru": { + "version": "4.0.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/random-bytes": { + "version": "1.0.0", + "license": "MIT", + "peer": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/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==", + "peer": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/raw-body": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.2.tgz", + "integrity": "sha512-8zGqypfENjCIqGhgXToC8aB2r7YrBX+AQAfIPs/Mlk+BtPTztOvTS01NRW/3Eh60J+a48lt8qsCzirQ6loCVfA==", + "peer": true, + "dependencies": { + "bytes": "3.1.2", + "http-errors": "2.0.0", + "iconv-lite": "0.4.24", + "unpipe": "1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/react-is": { + "version": "17.0.2", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/read-pkg": { + "version": "3.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "load-json-file": "^4.0.0", + "normalize-package-data": "^2.3.2", + "path-type": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/read-pkg-up": { + "version": "7.0.1", + "dev": true, + "license": "MIT", + "dependencies": { + "find-up": "^4.1.0", + "read-pkg": "^5.2.0", + "type-fest": "^0.8.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/read-pkg-up/node_modules/parse-json": { + "version": "5.2.0", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.0.0", + "error-ex": "^1.3.1", + "json-parse-even-better-errors": "^2.3.0", + "lines-and-columns": "^1.1.6" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/read-pkg-up/node_modules/read-pkg": { + "version": "5.2.0", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/normalize-package-data": "^2.4.0", + "normalize-package-data": "^2.5.0", + "parse-json": "^5.0.0", + "type-fest": "^0.6.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/read-pkg-up/node_modules/read-pkg/node_modules/type-fest": { + "version": "0.6.0", + "dev": true, + "license": "(MIT OR CC0-1.0)", + "engines": { + "node": ">=8" + } + }, + "node_modules/read-pkg-up/node_modules/type-fest": { + "version": "0.8.1", + "dev": true, + "license": "(MIT OR CC0-1.0)", + "engines": { + "node": ">=8" + } + }, + "node_modules/readable-stream": { + "version": "3.6.2", + "license": "MIT", + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/readdir-glob": { + "version": "1.1.3", + "license": "Apache-2.0", + "dependencies": { + "minimatch": "^5.1.0" + } + }, + "node_modules/redent": { + "version": "3.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "indent-string": "^4.0.0", + "strip-indent": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/reflect.getprototypeof": { + "version": "1.0.10", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.9", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.0.0", + "get-intrinsic": "^1.2.7", + "get-proto": "^1.0.1", + "which-builtin-type": "^1.2.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/regex-not": { + "version": "1.0.2", + "dev": true, + "license": "MIT", + "dependencies": { + "extend-shallow": "^3.0.2", + "safe-regex": "^1.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/regexp.prototype.flags": { + "version": "1.5.4", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "define-properties": "^1.2.1", + "es-errors": "^1.3.0", + "get-proto": "^1.0.1", + "gopd": "^1.2.0", + "set-function-name": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/remove-trailing-separator": { + "version": "1.1.0", + "dev": true, + "license": "ISC", + "peer": true + }, + "node_modules/repeat-element": { + "version": "1.1.4", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/repeat-string": { + "version": "1.6.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10" + } + }, + "node_modules/require-directory": { + "version": "2.1.1", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/require-main-filename": { + "version": "2.0.0", + "dev": true, + "license": "ISC", + "peer": true + }, + "node_modules/requires-port": { + "version": "1.0.0", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/resolve": { + "version": "1.22.10", + "dev": true, + "license": "MIT", + "dependencies": { + "is-core-module": "^2.16.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/resolve-cwd": { + "version": "3.0.0", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "resolve-from": "^5.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/resolve-from": { + "version": "5.0.0", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/resolve-url": { + "version": "0.2.1", + "dev": true, + "license": "MIT" + }, + "node_modules/ret": { + "version": "0.1.15", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.12" + } + }, + "node_modules/retry": { + "version": "0.12.0", + "license": "MIT", + "engines": { + "node": ">= 4" + } + }, + "node_modules/rimraf": { + "version": "3.0.2", + "dev": true, + "license": "ISC", + "peer": true, + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/rimraf/node_modules/brace-expansion": { + "version": "1.1.11", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/rimraf/node_modules/glob": { + "version": "7.2.3", + "dev": true, + "license": "ISC", + "peer": true, + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/rimraf/node_modules/minimatch": { + "version": "3.1.2", + "dev": true, + "license": "ISC", + "peer": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/rsvp": { + "version": "4.8.5", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": "6.* || >= 7.*" + } + }, + "node_modules/safe-array-concat": { + "version": "1.1.3", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.2", + "get-intrinsic": "^1.2.6", + "has-symbols": "^1.1.0", + "isarray": "^2.0.5" + }, + "engines": { + "node": ">=0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/safe-buffer": { + "version": "5.2.1", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT" + }, + "node_modules/safe-push-apply": { + "version": "1.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "isarray": "^2.0.5" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/safe-regex": { + "version": "1.1.0", + "dev": true, + "license": "MIT", + "dependencies": { + "ret": "~0.1.10" + } + }, + "node_modules/safe-regex-test": { + "version": "1.1.0", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "is-regex": "^1.2.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/safer-buffer": { + "version": "2.1.2", + "license": "MIT" + }, + "node_modules/sane": { + "version": "4.1.0", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@cnakazawa/watch": "^1.0.3", + "anymatch": "^2.0.0", + "capture-exit": "^2.0.0", + "exec-sh": "^0.3.2", + "execa": "^1.0.0", + "fb-watchman": "^2.0.0", + "micromatch": "^3.1.4", + "minimist": "^1.1.1", + "walker": "~1.0.5" + }, + "bin": { + "sane": "src/cli.js" + }, + "engines": { + "node": "6.* || 8.* || >= 10.*" + } + }, + "node_modules/sane/node_modules/anymatch": { + "version": "2.0.0", + "dev": true, + "license": "ISC", + "peer": true, + "dependencies": { + "micromatch": "^3.1.4", + "normalize-path": "^2.1.1" + } + }, + "node_modules/sane/node_modules/cross-spawn": { + "version": "6.0.6", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "nice-try": "^1.0.4", + "path-key": "^2.0.1", + "semver": "^5.5.0", + "shebang-command": "^1.2.0", + "which": "^1.2.9" + }, + "engines": { + "node": ">=4.8" + } + }, + "node_modules/sane/node_modules/execa": { + "version": "1.0.0", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "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" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/sane/node_modules/get-stream": { + "version": "4.1.0", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "pump": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/sane/node_modules/is-stream": { + "version": "1.1.0", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/sane/node_modules/normalize-path": { + "version": "2.1.1", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "remove-trailing-separator": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/sane/node_modules/npm-run-path": { + "version": "2.0.2", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "path-key": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/sane/node_modules/path-key": { + "version": "2.0.1", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/sane/node_modules/semver": { + "version": "5.7.2", + "dev": true, + "license": "ISC", + "peer": true, + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/sane/node_modules/shebang-command": { + "version": "1.2.0", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "shebang-regex": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/sane/node_modules/shebang-regex": { + "version": "1.0.0", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/sane/node_modules/which": { + "version": "1.3.1", + "dev": true, + "license": "ISC", + "peer": true, + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "which": "bin/which" + } + }, + "node_modules/saxes": { + "version": "5.0.1", + "dev": true, + "license": "ISC", + "peer": true, + "dependencies": { + "xmlchars": "^2.2.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/semver": { + "version": "6.3.1", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/send": { + "version": "0.19.0", + "resolved": "https://registry.npmjs.org/send/-/send-0.19.0.tgz", + "integrity": "sha512-dW41u5VfLXu8SJh5bwRmyYUbAoSB3c9uQh6L8h/KtsFREPWpbX1lrljJo186Jc4nmci/sGUZ9a0a0J2zgfq2hw==", + "peer": true, + "dependencies": { + "debug": "2.6.9", + "depd": "2.0.0", + "destroy": "1.2.0", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "fresh": "0.5.2", + "http-errors": "2.0.0", + "mime": "1.6.0", + "ms": "2.1.3", + "on-finished": "2.4.1", + "range-parser": "~1.2.1", + "statuses": "2.0.1" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/send/node_modules/encodeurl": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", + "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==", + "peer": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/send/node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "peer": true + }, + "node_modules/serve-static": { + "version": "1.16.2", + "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.16.2.tgz", + "integrity": "sha512-VqpjJZKadQB/PEbEwvFdO43Ax5dFBZ2UECszz8bQ7pi7wt//PWe1P6MN7eCnjsatYtBT6EuiClbjSWP2WrIoTw==", + "peer": true, + "dependencies": { + "encodeurl": "~2.0.0", + "escape-html": "~1.0.3", + "parseurl": "~1.3.3", + "send": "0.19.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/set-blocking": { + "version": "2.0.0", + "dev": true, + "license": "ISC", + "peer": true + }, + "node_modules/set-function-length": { + "version": "1.2.2", + "dev": true, + "license": "MIT", + "dependencies": { + "define-data-property": "^1.1.4", + "es-errors": "^1.3.0", + "function-bind": "^1.1.2", + "get-intrinsic": "^1.2.4", + "gopd": "^1.0.1", + "has-property-descriptors": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/set-function-name": { + "version": "2.0.2", + "dev": true, + "license": "MIT", + "dependencies": { + "define-data-property": "^1.1.4", + "es-errors": "^1.3.0", + "functions-have-names": "^1.2.3", + "has-property-descriptors": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/set-proto": { + "version": "1.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "dunder-proto": "^1.0.1", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/set-value": { + "version": "2.0.1", + "dev": true, + "license": "MIT", + "dependencies": { + "extend-shallow": "^2.0.1", + "is-extendable": "^0.1.1", + "is-plain-object": "^2.0.3", + "split-string": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/set-value/node_modules/extend-shallow": { + "version": "2.0.1", + "dev": true, + "license": "MIT", + "dependencies": { + "is-extendable": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/set-value/node_modules/is-extendable": { + "version": "0.1.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/setprototypeof": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", + "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==", + "peer": true + }, + "node_modules/shebang-command": { + "version": "2.0.0", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "shebang-regex": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/shebang-regex": { + "version": "3.0.0", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/shell-quote": { + "version": "1.8.2", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/shellwords": { + "version": "0.1.1", + "dev": true, + "license": "MIT", + "optional": true, + "peer": true + }, + "node_modules/side-channel": { + "version": "1.1.0", + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "object-inspect": "^1.13.3", + "side-channel-list": "^1.0.0", + "side-channel-map": "^1.0.1", + "side-channel-weakmap": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/side-channel-list": { + "version": "1.0.0", + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "object-inspect": "^1.13.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/side-channel-map": { + "version": "1.0.1", + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.5", + "object-inspect": "^1.13.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/side-channel-weakmap": { + "version": "1.0.2", + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.5", + "object-inspect": "^1.13.3", + "side-channel-map": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/sift": { + "version": "16.0.1", + "license": "MIT", + "peer": true + }, + "node_modules/signal-exit": { + "version": "3.0.7", + "dev": true, + "license": "ISC", + "peer": true + }, + "node_modules/sisteransi": { + "version": "1.0.5", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/slash": { + "version": "2.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/smart-buffer": { + "version": "4.2.0", + "license": "MIT", + "peer": true, + "engines": { + "node": ">= 6.0.0", + "npm": ">= 3.0.0" + } + }, + "node_modules/snapdragon": { + "version": "0.8.2", + "dev": true, + "license": "MIT", + "dependencies": { + "base": "^0.11.1", + "debug": "^2.2.0", + "define-property": "^0.2.5", + "extend-shallow": "^2.0.1", + "map-cache": "^0.2.2", + "source-map": "^0.5.6", + "source-map-resolve": "^0.5.0", + "use": "^3.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/snapdragon-node": { + "version": "2.1.1", + "dev": true, + "license": "MIT", + "dependencies": { + "define-property": "^1.0.0", + "isobject": "^3.0.0", + "snapdragon-util": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/snapdragon-node/node_modules/define-property": { + "version": "1.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "is-descriptor": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/snapdragon-util": { + "version": "3.0.1", + "dev": true, + "license": "MIT", + "dependencies": { + "kind-of": "^3.2.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/snapdragon-util/node_modules/kind-of": { + "version": "3.2.2", + "dev": true, + "license": "MIT", + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/snapdragon/node_modules/define-property": { + "version": "0.2.5", + "dev": true, + "license": "MIT", + "dependencies": { + "is-descriptor": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/snapdragon/node_modules/extend-shallow": { + "version": "2.0.1", + "dev": true, + "license": "MIT", + "dependencies": { + "is-extendable": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/snapdragon/node_modules/is-descriptor": { + "version": "0.1.7", + "dev": true, + "license": "MIT", + "dependencies": { + "is-accessor-descriptor": "^1.0.1", + "is-data-descriptor": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/snapdragon/node_modules/is-extendable": { + "version": "0.1.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/snapdragon/node_modules/source-map": { + "version": "0.5.7", + "dev": true, + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/socks": { + "version": "2.8.4", + "license": "MIT", + "peer": true, + "dependencies": { + "ip-address": "^9.0.5", + "smart-buffer": "^4.2.0" + }, + "engines": { + "node": ">= 10.0.0", + "npm": ">= 3.0.0" + } + }, + "node_modules/source-map": { + "version": "0.6.1", + "dev": true, + "license": "BSD-3-Clause", + "peer": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/source-map-resolve": { + "version": "0.5.3", + "dev": true, + "license": "MIT", + "dependencies": { + "atob": "^2.1.2", + "decode-uri-component": "^0.2.0", + "resolve-url": "^0.2.1", + "source-map-url": "^0.4.0", + "urix": "^0.1.0" + } + }, + "node_modules/source-map-support": { + "version": "0.5.21", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" + } + }, + "node_modules/source-map-url": { + "version": "0.4.1", + "dev": true, + "license": "MIT" + }, + "node_modules/sparse-bitfield": { + "version": "3.0.3", + "license": "MIT", + "optional": true, + "peer": true, + "dependencies": { + "memory-pager": "^1.0.2" + } + }, + "node_modules/spdx-correct": { + "version": "3.2.0", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "spdx-expression-parse": "^3.0.0", + "spdx-license-ids": "^3.0.0" + } + }, + "node_modules/spdx-exceptions": { + "version": "2.5.0", + "dev": true, + "license": "CC-BY-3.0" + }, + "node_modules/spdx-expression-parse": { + "version": "3.0.1", + "dev": true, + "license": "MIT", + "dependencies": { + "spdx-exceptions": "^2.1.0", + "spdx-license-ids": "^3.0.0" + } + }, + "node_modules/spdx-license-ids": { + "version": "3.0.21", + "dev": true, + "license": "CC0-1.0" + }, + "node_modules/split-string": { + "version": "3.1.0", + "dev": true, + "license": "MIT", + "dependencies": { + "extend-shallow": "^3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/sprintf-js": { + "version": "1.0.3", + "dev": true, + "license": "BSD-3-Clause", + "peer": true + }, + "node_modules/ssh2": { + "version": "1.16.0", + "hasInstallScript": true, + "dependencies": { + "asn1": "^0.2.6", + "bcrypt-pbkdf": "^1.0.2" + }, + "engines": { + "node": ">=10.16.0" + }, + "optionalDependencies": { + "cpu-features": "~0.0.10", + "nan": "^2.20.0" + } + }, + "node_modules/ssh2-sftp-client": { + "version": "9.1.0", + "license": "Apache-2.0", + "dependencies": { + "concat-stream": "^2.0.0", + "promise-retry": "^2.0.1", + "ssh2": "^1.12.0" + }, + "engines": { + "node": ">=10.24.1" + } + }, + "node_modules/stack-utils": { + "version": "2.0.6", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "escape-string-regexp": "^2.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/static-extend": { + "version": "0.1.2", + "dev": true, + "license": "MIT", + "dependencies": { + "define-property": "^0.2.5", + "object-copy": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/static-extend/node_modules/define-property": { + "version": "0.2.5", + "dev": true, + "license": "MIT", + "dependencies": { + "is-descriptor": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/static-extend/node_modules/is-descriptor": { + "version": "0.1.7", + "dev": true, + "license": "MIT", + "dependencies": { + "is-accessor-descriptor": "^1.0.1", + "is-data-descriptor": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/statuses": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", + "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", + "peer": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/streamx": { + "version": "2.22.0", + "license": "MIT", + "dependencies": { + "fast-fifo": "^1.3.2", + "text-decoder": "^1.1.0" + }, + "optionalDependencies": { + "bare-events": "^2.2.0" + } + }, + "node_modules/string_decoder": { + "version": "1.3.0", + "license": "MIT", + "dependencies": { + "safe-buffer": "~5.2.0" + } + }, + "node_modules/string-length": { + "version": "4.0.2", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "char-regex": "^1.0.2", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/string-width": { + "version": "4.2.3", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/string.prototype.padend": { + "version": "3.1.6", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.2", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/string.prototype.trim": { + "version": "1.2.10", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.2", + "define-data-property": "^1.1.4", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.5", + "es-object-atoms": "^1.0.0", + "has-property-descriptors": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/string.prototype.trimend": { + "version": "1.0.9", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.2", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/string.prototype.trimstart": { + "version": "1.0.8", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/strip-ansi": { + "version": "6.0.1", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-bom": { + "version": "4.0.0", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-eof": { + "version": "1.0.0", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/strip-final-newline": { + "version": "2.0.0", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/strip-indent": { + "version": "3.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "min-indent": "^1.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strnum": { + "version": "1.1.2", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/NaturalIntelligence" + } + ], + "license": "MIT", + "optional": true, + "peer": true + }, + "node_modules/supports-color": { + "version": "7.2.0", + "dev": true, + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/supports-hyperlinks": { + "version": "2.3.0", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "has-flag": "^4.0.0", + "supports-color": "^7.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/supports-preserve-symlinks-flag": { + "version": "1.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/symbol-tree": { + "version": "3.2.4", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/tar-stream": { + "version": "3.1.7", + "license": "MIT", + "dependencies": { + "b4a": "^1.6.4", + "fast-fifo": "^1.2.0", + "streamx": "^2.15.0" + } + }, + "node_modules/terminal-link": { + "version": "2.1.1", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "ansi-escapes": "^4.2.1", + "supports-hyperlinks": "^2.0.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/test-exclude": { + "version": "6.0.0", + "dev": true, + "license": "ISC", + "peer": true, + "dependencies": { + "@istanbuljs/schema": "^0.1.2", + "glob": "^7.1.4", + "minimatch": "^3.0.4" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/test-exclude/node_modules/brace-expansion": { + "version": "1.1.11", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/test-exclude/node_modules/glob": { + "version": "7.2.3", + "dev": true, + "license": "ISC", + "peer": true, + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/test-exclude/node_modules/minimatch": { + "version": "3.1.2", + "dev": true, + "license": "ISC", + "peer": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/text-decoder": { + "version": "1.2.3", + "license": "Apache-2.0", + "dependencies": { + "b4a": "^1.6.4" + } + }, + "node_modules/throat": { + "version": "5.0.0", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/tmpl": { + "version": "1.0.5", + "dev": true, + "license": "BSD-3-Clause", + "peer": true + }, + "node_modules/to-object-path": { + "version": "0.3.0", + "dev": true, + "license": "MIT", + "dependencies": { + "kind-of": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/to-object-path/node_modules/kind-of": { + "version": "3.2.2", + "dev": true, + "license": "MIT", + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/to-regex": { + "version": "3.0.2", + "dev": true, + "license": "MIT", + "dependencies": { + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "regex-not": "^1.0.2", + "safe-regex": "^1.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/to-regex-range": { + "version": "2.1.1", + "dev": true, + "license": "MIT", + "dependencies": { + "is-number": "^3.0.0", + "repeat-string": "^1.6.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/toidentifier": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz", + "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==", + "peer": true, + "engines": { + "node": ">=0.6" + } + }, + "node_modules/tough-cookie": { + "version": "4.1.4", + "dev": true, + "license": "BSD-3-Clause", + "peer": true, + "dependencies": { + "psl": "^1.1.33", + "punycode": "^2.1.1", + "universalify": "^0.2.0", + "url-parse": "^1.5.3" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/tr46": { + "version": "2.1.0", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "punycode": "^2.1.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/trim-newlines": { + "version": "3.0.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/ts-jest": { + "version": "26.5.6", + "dev": true, + "license": "MIT", + "dependencies": { + "bs-logger": "0.x", + "buffer-from": "1.x", + "fast-json-stable-stringify": "2.x", + "jest-util": "^26.1.0", + "json5": "2.x", + "lodash": "4.x", + "make-error": "1.x", + "mkdirp": "1.x", + "semver": "7.x", + "yargs-parser": "20.x" + }, + "bin": { + "ts-jest": "cli.js" + }, + "engines": { + "node": ">= 10" + }, + "peerDependencies": { + "jest": ">=26 <27", + "typescript": ">=3.8 <5.0" + } + }, + "node_modules/ts-jest/node_modules/semver": { + "version": "7.7.1", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/ts-jest/node_modules/yargs-parser": { + "version": "20.2.9", + "dev": true, + "license": "ISC", + "engines": { + "node": ">=10" + } + }, + "node_modules/tslib": { + "version": "2.8.1", + "license": "0BSD", + "optional": true, + "peer": true + }, + "node_modules/tweetnacl": { + "version": "0.14.5", + "license": "Unlicense" + }, + "node_modules/type-detect": { + "version": "4.0.8", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/type-fest": { + "version": "0.21.3", + "dev": true, + "license": "(MIT OR CC0-1.0)", + "peer": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/type-is": { + "version": "1.6.18", + "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz", + "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==", + "peer": true, + "dependencies": { + "media-typer": "0.3.0", + "mime-types": "~2.1.24" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/typed-array-buffer": { + "version": "1.0.3", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3", + "es-errors": "^1.3.0", + "is-typed-array": "^1.1.14" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/typed-array-byte-length": { + "version": "1.0.3", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "for-each": "^0.3.3", + "gopd": "^1.2.0", + "has-proto": "^1.2.0", + "is-typed-array": "^1.1.14" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/typed-array-byte-offset": { + "version": "1.0.4", + "dev": true, + "license": "MIT", + "dependencies": { + "available-typed-arrays": "^1.0.7", + "call-bind": "^1.0.8", + "for-each": "^0.3.3", + "gopd": "^1.2.0", + "has-proto": "^1.2.0", + "is-typed-array": "^1.1.15", + "reflect.getprototypeof": "^1.0.9" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/typed-array-length": { + "version": "1.0.7", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "for-each": "^0.3.3", + "gopd": "^1.0.1", + "is-typed-array": "^1.1.13", + "possible-typed-array-names": "^1.0.0", + "reflect.getprototypeof": "^1.0.6" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/typedarray": { + "version": "0.0.6", + "license": "MIT" + }, + "node_modules/typedarray-to-buffer": { + "version": "3.1.5", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "is-typedarray": "^1.0.0" + } + }, + "node_modules/typescript": { + "version": "4.6.4", + "dev": true, + "license": "Apache-2.0", + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=4.2.0" + } + }, + "node_modules/uid-safe": { + "version": "2.1.5", + "license": "MIT", + "peer": true, + "dependencies": { + "random-bytes": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/unbox-primitive": { + "version": "1.1.0", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3", + "has-bigints": "^1.0.2", + "has-symbols": "^1.1.0", + "which-boxed-primitive": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/union-value": { + "version": "1.0.1", + "dev": true, + "license": "MIT", + "dependencies": { + "arr-union": "^3.1.0", + "get-value": "^2.0.6", + "is-extendable": "^0.1.1", + "set-value": "^2.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/union-value/node_modules/is-extendable": { + "version": "0.1.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/universalify": { + "version": "0.2.0", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">= 4.0.0" + } + }, + "node_modules/unpipe": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", + "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==", + "peer": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/unset-value": { + "version": "1.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "has-value": "^0.3.1", + "isobject": "^3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/unset-value/node_modules/has-value": { + "version": "0.3.1", + "dev": true, + "license": "MIT", + "dependencies": { + "get-value": "^2.0.3", + "has-values": "^0.1.4", + "isobject": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/unset-value/node_modules/has-value/node_modules/isobject": { + "version": "2.1.0", + "dev": true, + "license": "MIT", + "dependencies": { + "isarray": "1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/unset-value/node_modules/has-values": { + "version": "0.1.4", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/unset-value/node_modules/isarray": { + "version": "1.0.0", + "dev": true, + "license": "MIT" + }, + "node_modules/update-browserslist-db": { + "version": "1.1.3", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "peer": true, + "dependencies": { + "escalade": "^3.2.0", + "picocolors": "^1.1.1" + }, + "bin": { + "update-browserslist-db": "cli.js" + }, + "peerDependencies": { + "browserslist": ">= 4.21.0" + } + }, + "node_modules/urix": { + "version": "0.1.0", + "dev": true, + "license": "MIT" + }, + "node_modules/url-parse": { + "version": "1.5.10", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "querystringify": "^2.1.1", + "requires-port": "^1.0.0" + } + }, + "node_modules/use": { + "version": "3.1.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/util-deprecate": { + "version": "1.0.2", + "license": "MIT" + }, + "node_modules/utils-merge": { + "version": "1.0.1", + "license": "MIT", + "peer": true, + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/uuid": { + "version": "9.0.1", + "funding": [ + "https://github.com/sponsors/broofa", + "https://github.com/sponsors/ctavan" + ], + "license": "MIT", + "optional": true, + "peer": true, + "bin": { + "uuid": "dist/bin/uuid" + } + }, + "node_modules/v8-to-istanbul": { + "version": "7.1.2", + "dev": true, + "license": "ISC", + "peer": true, + "dependencies": { + "@types/istanbul-lib-coverage": "^2.0.1", + "convert-source-map": "^1.6.0", + "source-map": "^0.7.3" + }, + "engines": { + "node": ">=10.10.0" + } + }, + "node_modules/v8-to-istanbul/node_modules/source-map": { + "version": "0.7.4", + "dev": true, + "license": "BSD-3-Clause", + "peer": true, + "engines": { + "node": ">= 8" + } + }, + "node_modules/validate-npm-package-license": { + "version": "3.0.4", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "spdx-correct": "^3.0.0", + "spdx-expression-parse": "^3.0.0" + } + }, + "node_modules/vary": { + "version": "1.1.2", + "license": "MIT", + "peer": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/w3c-hr-time": { + "version": "1.0.2", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "browser-process-hrtime": "^1.0.0" + } + }, + "node_modules/w3c-xmlserializer": { + "version": "2.0.0", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "xml-name-validator": "^3.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/walker": { + "version": "1.0.8", + "dev": true, + "license": "Apache-2.0", + "peer": true, + "dependencies": { + "makeerror": "1.0.12" + } + }, + "node_modules/webidl-conversions": { + "version": "6.1.0", + "dev": true, + "license": "BSD-2-Clause", + "peer": true, + "engines": { + "node": ">=10.4" + } + }, + "node_modules/whatwg-encoding": { + "version": "1.0.5", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "iconv-lite": "0.4.24" + } + }, + "node_modules/whatwg-mimetype": { + "version": "2.3.0", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/whatwg-url": { + "version": "8.7.0", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "lodash": "^4.7.0", + "tr46": "^2.1.0", + "webidl-conversions": "^6.1.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/which": { + "version": "2.0.2", + "dev": true, + "license": "ISC", + "peer": true, + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/which-boxed-primitive": { + "version": "1.1.1", + "dev": true, + "license": "MIT", + "dependencies": { + "is-bigint": "^1.1.0", + "is-boolean-object": "^1.2.1", + "is-number-object": "^1.1.1", + "is-string": "^1.1.1", + "is-symbol": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/which-builtin-type": { + "version": "1.2.1", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.2", + "function.prototype.name": "^1.1.6", + "has-tostringtag": "^1.0.2", + "is-async-function": "^2.0.0", + "is-date-object": "^1.1.0", + "is-finalizationregistry": "^1.1.0", + "is-generator-function": "^1.0.10", + "is-regex": "^1.2.1", + "is-weakref": "^1.0.2", + "isarray": "^2.0.5", + "which-boxed-primitive": "^1.1.0", + "which-collection": "^1.0.2", + "which-typed-array": "^1.1.16" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/which-collection": { + "version": "1.0.2", + "dev": true, + "license": "MIT", + "dependencies": { + "is-map": "^2.0.3", + "is-set": "^2.0.3", + "is-weakmap": "^2.0.2", + "is-weakset": "^2.0.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/which-module": { + "version": "2.0.1", + "dev": true, + "license": "ISC", + "peer": true + }, + "node_modules/which-typed-array": { + "version": "1.1.19", + "dev": true, + "license": "MIT", + "dependencies": { + "available-typed-arrays": "^1.0.7", + "call-bind": "^1.0.8", + "call-bound": "^1.0.4", + "for-each": "^0.3.5", + "get-proto": "^1.0.1", + "gopd": "^1.2.0", + "has-tostringtag": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/wrap-ansi": { + "version": "6.2.0", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/wrappy": { + "version": "1.0.2", + "license": "ISC" + }, + "node_modules/write-file-atomic": { + "version": "3.0.3", + "dev": true, + "license": "ISC", + "peer": true, + "dependencies": { + "imurmurhash": "^0.1.4", + "is-typedarray": "^1.0.0", + "signal-exit": "^3.0.2", + "typedarray-to-buffer": "^3.1.5" + } + }, + "node_modules/ws": { + "version": "7.5.10", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">=8.3.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": "^5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } + } + }, + "node_modules/xml-name-validator": { + "version": "3.0.0", + "dev": true, + "license": "Apache-2.0", + "peer": true + }, + "node_modules/xmlchars": { + "version": "2.2.0", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/y18n": { + "version": "4.0.3", + "dev": true, + "license": "ISC", + "peer": true + }, + "node_modules/yallist": { + "version": "3.1.1", + "dev": true, + "license": "ISC", + "peer": true + }, + "node_modules/yargs": { + "version": "15.4.1", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "cliui": "^6.0.0", + "decamelize": "^1.2.0", + "find-up": "^4.1.0", + "get-caller-file": "^2.0.1", + "require-directory": "^2.1.1", + "require-main-filename": "^2.0.0", + "set-blocking": "^2.0.0", + "string-width": "^4.2.0", + "which-module": "^2.0.0", + "y18n": "^4.0.0", + "yargs-parser": "^18.1.2" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/yargs-parser": { + "version": "18.1.3", + "dev": true, + "license": "ISC", + "dependencies": { + "camelcase": "^5.0.0", + "decamelize": "^1.2.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/zip-stream": { + "version": "5.0.2", + "license": "MIT", + "dependencies": { + "archiver-utils": "^4.0.1", + "compress-commons": "^5.0.1", + "readable-stream": "^3.6.0" + }, + "engines": { + "node": ">= 12.0.0" + } + } + } +} diff --git a/plugins/sftp/service/package.json b/plugins/sftp/service/package.json new file mode 100644 index 000000000..30730bafa --- /dev/null +++ b/plugins/sftp/service/package.json @@ -0,0 +1,58 @@ +{ + "name": "@ngageoint/mage.sftp.service", + "version": "1.0.0-beta.1", + "description": "The SFTP service package is a MAGE server plugin that sends observations to and SFTP location on create and update.", + "main": "lib/index.js", + "scripts": { + "build": "tsc", + "test": "npm-run-all build test:run", + "test:run": "jasmine" + }, + "repository": { + "type": "git", + "url": "git+https://github.com/ngageoint/mage-server.git" + }, + "keywords": [ + "mage", + "plugin", + "sftp" + ], + "author": "National Geospatial-Intelligence Agency", + "license": "MIT", + "bugs": { + "url": "https://github.com/ngageoint/mage-server/issues" + }, + "homepage": "https://github.com/ngageoint/mage-server#readme", + "devDependencies": { + "@types/archiver": "^6.0.2", + "@types/bson": "^1.0.11", + "@types/crypto-js": "4.1.1", + "@types/express": "4.17.21", + "@types/express-serve-static-core": "4.17.29", + "@types/geojson": "^7946.0.7", + "@types/jasmine": "3.10.6", + "@types/lodash": "4.14.181", + "@types/mongodb": "^3.6.20", + "@types/node": "18.18.4", + "@types/ssh2": "^1.11.18", + "@types/ssh2-sftp-client": "^9.0.3", + "cpy-cli": "^3.1.1", + "jasmine": "3.99.0", + "lodash": "^4.17.21", + "nock": "^12.0.3", + "npm-run-all": "^4.1.5", + "ts-jest": "^26.1.1", + "typescript": "~4.6.0" + }, + "peerDependencies": { + "@ngageoint/mage.service": ">=6.3.0-beta.8", + "express": "4.21.2", + "express-session": "1.17.2", + "mongoose": "^6.12.0" + }, + "dependencies": { + "archiver": "^6.0.1", + "crypto-js": "4.1.1", + "ssh2-sftp-client": "^9.1.0" + } +} diff --git a/plugins/sftp/service/spec/support/jasmine.json b/plugins/sftp/service/spec/support/jasmine.json new file mode 100644 index 000000000..d4a08a033 --- /dev/null +++ b/plugins/sftp/service/spec/support/jasmine.json @@ -0,0 +1,11 @@ +{ + "spec_dir": "lib", + "spec_files": [ + "**/*.spec.?(m)js" + ], + "helpers": [ + "helpers/**/*.?(m)js" + ], + "stopSpecOnExpectationFailure": false, + "random": false +} \ No newline at end of file diff --git a/plugins/sftp/service/src/adapters/adapters.sftp.mongoose.ts b/plugins/sftp/service/src/adapters/adapters.sftp.mongoose.ts new file mode 100644 index 000000000..617553836 --- /dev/null +++ b/plugins/sftp/service/src/adapters/adapters.sftp.mongoose.ts @@ -0,0 +1,75 @@ +import { MageEventId } from '@ngageoint/mage.service/lib/entities/events/entities.events' +import { ObservationId } from '@ngageoint/mage.service/lib/entities/observations/entities.observations'; +import mongoose from 'mongoose'; + +export enum SftpStatus { + SUCCESS = 'SUCCESS', + FAILED = 'FAILED', + PENDING = 'PENDING', +} + +const SftpObservationsSchema = new mongoose.Schema({ + eventId: { type: Number, required: true, unique: true }, + observationId: { type: String, required: true }, + status: { type: String, enum: Object.values(SftpStatus), required: true } +},{ + timestamps: { createdAt: 'createdAt',updatedAt: 'updatedAt' } +}); + +export interface SftpAttrs { + eventId: MageEventId, + observationId: ObservationId, + status: SftpStatus, + createdAt: number, + updatedAt: number +} + +export type SftpDocument = mongoose.Document +export type SftpMongooseModel = mongoose.Model +const SftpObservationModelName: string = 'SftpObservation' + +export function SftpObservationModel(connection: mongoose.Connection, collectionName: string): SftpMongooseModel { + return connection.model(SftpObservationModelName, SftpObservationsSchema, collectionName) +} + +export interface SftpObservationRepository { + findAll(eventId: MageEventId): Promise + findAllByStatus(eventId: MageEventId, status: SftpStatus[]): Promise + findLatest(eventId: MageEventId): Promise + isProcessed(eventId: MageEventId, observationId: ObservationId): Promise + postStatus(eventId: MageEventId, observationId: ObservationId, status: SftpStatus): Promise +} + +export class MongooseSftpObservationRepository implements SftpObservationRepository { + readonly model: SftpMongooseModel + + constructor(model: SftpMongooseModel) { + this.model = model + } + + async findAll(eventId: MageEventId): Promise { + const documents = await this.model.find({eventId: eventId}) + return documents.map(document => document.toJSON()) + } + + async findAllByStatus(eventId: MageEventId, status: SftpStatus[]): Promise { + const documents = await this.model.find({eventId: eventId, status: { $in: status}}) + return documents.map(document => document.toJSON()) + } + + async findLatest(eventId: MageEventId): Promise { + const document = await this.model.findOne({ eventId: eventId }, { updatedAt: true }, { sort: { updatedAt: -1 }, limit: 1 }) + return document ? (document.toJSON() as SftpAttrs) : null + } + + async isProcessed(eventId: number, observationId: string): Promise { + const document = await this.model.findOne({ eventId: eventId, observationId: observationId, status: SftpStatus.SUCCESS }, { limit: 1 }) + return document !== null + } + + async postStatus(eventId: number, observationId: string, status: SftpStatus): Promise { + const document = await this.model.findOneAndUpdate({ eventId: eventId, observationId: observationId }, { eventId: eventId, observationId: observationId, status: status }, { upsert: true }) + return document ? (document.toJSON() as SftpAttrs) : null + } + +} \ No newline at end of file diff --git a/plugins/sftp/service/src/configuration/SFTPPluginConfig.ts b/plugins/sftp/service/src/configuration/SFTPPluginConfig.ts new file mode 100644 index 000000000..c183df99c --- /dev/null +++ b/plugins/sftp/service/src/configuration/SFTPPluginConfig.ts @@ -0,0 +1,92 @@ +import { MageEventId } from '@ngageoint/mage.service/lib/entities/events/entities.events'; +import { ArchiveFormat, CompletionAction, TriggerRule } from '../format/entities.format'; +import * as CryptoJS from 'crypto-js'; + +/** + * Contains various configuration values used by the plugin. + */ +export interface SFTPPluginConfig { + + /** + * When true, the plugin will process new observations and send them to a configured SFTP endpoint. + */ + enabled: boolean + + /** + * Query the database for new observations to process at the given time interval in seconds. + */ + interval: number + + /** + * Observation query page size + */ + pageSize: number + + /** + * Events in which to SFTP observations + */ + events: Array + + /** + * Specifies how to format the SFTP archive file + */ + archiveFormat: ArchiveFormat + + /** + * Action to perform on observation when SFTP is complete + */ + completionAction: CompletionAction + + /** + * When to to initiate SFTP + */ + initiation: { + rule: TriggerRule, + timeout: number + } + + /** + * SFTP client configuartion + */ + sftpClient: { + host: string, + path: string, + username: string, + password: string + } +} + +export const defaultSFTPPluginConfig = Object.freeze({ + enabled: false, + interval: 60, + pageSize: 100, + events: [], + archiveFormat: ArchiveFormat.GeoJSON, + completionAction: CompletionAction.None, + initiation: { + rule: TriggerRule.CreateAndUpdate, + timeout: 60 + }, + sftpClient: { + host: '', + path: '', + username: '', + password: '' + } +}) + +export async function encryptDecrypt(config: SFTPPluginConfig, isEncrypt: boolean): Promise { + // NOTE: default INSECURE salt value, recommend generate new UUID before deployment, **NOT** after deployment + const salt = "A0E6D3B4-25BD-4DD6-BBC9-B367931966AB"; // process.env.SFTP_PLUGIN_CONFIG_SALT; + try { + let tempConfig = config; + if(salt === undefined) { throw new Error("No salt value found, update docker-compose value...") } + const encryptedPass = isEncrypt ? + CryptoJS.AES.encrypt(config.sftpClient.password, salt).toString() : + CryptoJS.AES.decrypt(config.sftpClient.password, salt).toString(); + tempConfig.sftpClient.password = encryptedPass; + return tempConfig; + } catch (err) { + throw err; + } +} diff --git a/plugins/sftp/service/src/controller/controller.spec.ts b/plugins/sftp/service/src/controller/controller.spec.ts new file mode 100644 index 000000000..90b7799fd --- /dev/null +++ b/plugins/sftp/service/src/controller/controller.spec.ts @@ -0,0 +1,545 @@ +import _ from 'lodash' +import { PluginStateRepository } from '@ngageoint/mage.service/lib/plugins.api' +import { MageEvent, MageEventAttrs, MageEventId, MageEventRepository, copyMageEventAttrs } from '@ngageoint/mage.service/lib/entities/events/entities.events' +import { FormFieldType } from '@ngageoint/mage.service/lib/entities/events/entities.events.forms' +import { EventScopedObservationRepository, Observation, ObservationAttrs } from '@ngageoint/mage.service/lib/entities/observations/entities.observations' +import { SftpObservationRepository, SftpStatus } from '../adapters/adapters.sftp.mongoose' +import { SFTPPluginConfig, defaultSFTPPluginConfig } from '../configuration/SFTPPluginConfig' +import { SftpController } from './controller' +import SFTPClient from 'ssh2-sftp-client'; +import { PageOf } from '@ngageoint/mage.service/lib/entities/entities.global' +import { ArchiveResult, ArchiveStatus, ArchiverFactory, ObservationArchiver, TriggerRule } from '../format/entities.format' +import archiver from 'archiver' + +function newEvent(id: MageEventId): MageEventAttrs { + return { + id, + acl: {}, + feedIds: [], + forms: [{ + id: 1, + archived: false, + color: 'blue', + fields: [ + { + id: 1, + name: 'field1', + required: false, + title: 'Attachments', + type: FormFieldType.Attachment, + } + ], + name: 'Image Plugin Test', + userFields: [] + }], + layerIds: [], + name: `Event ${id}`, + style: {}, + } +} + +function newObservation(event: MageEvent, lastModified: Date): ObservationAttrs { + return { + id: "1", + eventId: event.id, + userId: "test", + createdAt: new Date(1), + lastModified: lastModified, + attachments: [], + favoriteUserIds: [], + states: [], + type: 'Feature', + geometry: { + type: 'Point', + coordinates: [0, 0] + }, + properties: { + timestamp: new Date(1), + forms: [] + } + } +} + +function newArchiver(status: ArchiveStatus): ObservationArchiver { + return { + createArchive: async () => { + return new ArchiveResult(archiver('zip'), status) + } + } as ObservationArchiver; +} + +describe('automated processing', () => { + class TestPluginStateRepository implements PluginStateRepository { + state: SFTPPluginConfig | null = null + async get(): Promise { + return this.state + } + async put(x: SFTPPluginConfig): Promise { + this.state = { ...x } + return this.state + } + async patch(state: Partial): Promise { + throw new Error('unimplemented') + } + } + + let event1: MageEvent + let event2: MageEvent + let allEvents: Map + let stateRepository: TestPluginStateRepository + let eventObservationRepositories: Map> + let observationRepository: (event: MageEventId) => Promise> + let archiveFactory: jasmine.SpyObj + let sftpClient: jasmine.SpyObj + let clock: jasmine.Clock + + beforeEach(() => { + event1 = new MageEvent(newEvent(1)) + event2 = new MageEvent(newEvent(2)) + allEvents = new Map().set(event1.id, event1).set(event2.id, event2) + eventObservationRepositories = new Map>([ + [event1.id, jasmine.createSpyObj(`observationRepository-${event1.id}`, ['findById', 'findLastModifiedAfter'])], + [event2.id, jasmine.createSpyObj(`observationRepository-${event2.id}`, ['findById', 'findLastModifiedAfter'])] + ]) + + observationRepository = async event => { + const repository = eventObservationRepositories.get(event) + if (repository) { + return repository + } + throw new Error(`no observation repository for event ${event}`) + } + + stateRepository = new TestPluginStateRepository() + clock = jasmine.clock().install() + archiveFactory = jasmine.createSpyObj('archiverFactory', ['createArchiver']) + sftpClient = jasmine.createSpyObj('sftpClient', ['connect', 'put', 'end']) + sftpClient.connect.and.resolveTo() + sftpClient.end.and.resolveTo() + }) + + afterEach(() => { + clock.uninstall() + }) + + it('waits for the current processing interval to finish then stops', async () => { + const eventRepository = jasmine.createSpyObj('eventRepository', ['findActiveEvents']) + eventRepository.findActiveEvents.and.resolveTo([]) + + const sftpRepository = jasmine.createSpyObj('sftpRespository', ['findAll']) + + stateRepository.state = { ...defaultSFTPPluginConfig, interval: 10, enabled: true } + const clockTickMillis = stateRepository.state.interval * 1000 + 1 + + archiveFactory.createArchiver.and.returnValue(newArchiver(ArchiveStatus.Complete)) + + const controller = new SftpController( + stateRepository, + eventRepository, + observationRepository, + sftpRepository, + sftpClient, + archiveFactory, + console + ) + + await controller.start() + clock.tick(clockTickMillis) + await controller.stop() + clock.tick(clockTickMillis) + clock.tick(clockTickMillis) + await new Promise(resolve => { + setTimeout(resolve) + clock.tick(clockTickMillis) + }) + + expect(eventRepository.findActiveEvents).toHaveBeenCalledTimes(1) + }) + + it('finds no observations to process', async () => { + const eventRepository = jasmine.createSpyObj('eventRepository', ['findActiveEvents']) + eventRepository.findActiveEvents.and.resolveTo(Array.from(allEvents.values()).map(copyMageEventAttrs)) + + const page: PageOf = { + totalCount: 0, + pageSize: 0, + pageIndex: 0, + items: [] + } + + eventObservationRepositories.get(event1.id)?.findLastModifiedAfter.and.resolveTo(page) + eventObservationRepositories.get(event2.id)?.findLastModifiedAfter.and.resolveTo(page) + + const sftpRepository = jasmine.createSpyObj('sftpObservationRepository', ['findAllByStatus', 'findLatest']) + sftpRepository.findAllByStatus.and.resolveTo([]) + sftpRepository.findLatest.and.resolveTo(null) + + stateRepository.state = { ...defaultSFTPPluginConfig, interval: 10, enabled: true } + const clockTickMillis = stateRepository.state.interval * 1000 + 1 + + archiveFactory.createArchiver.and.returnValue(newArchiver(ArchiveStatus.Complete)) + + const controller = new SftpController( + stateRepository, + eventRepository, + observationRepository, + sftpRepository, + sftpClient, + archiveFactory, + console + ) + + await controller.start() + clock.tick(clockTickMillis) + await controller.stop() + + expect(eventRepository.findActiveEvents).toHaveBeenCalledTimes(1) + expect(sftpRepository.findAllByStatus).toHaveBeenCalledTimes(2) + expect(eventObservationRepositories.get(event1.id)?.findLastModifiedAfter).toHaveBeenCalledTimes(1) + expect(eventObservationRepositories.get(event2.id)?.findLastModifiedAfter).toHaveBeenCalledTimes(1) + }) + + it('processes pending observations with success', async () => { + const eventRepository = jasmine.createSpyObj('eventRepository', ['findActiveEvents']) + eventRepository.findActiveEvents.and.resolveTo([copyMageEventAttrs(event1)]) + + const observation = newObservation(event1, new Date(1)) + + eventObservationRepositories.get(event1.id)?.findById.and.resolveTo(Observation.evaluate(observation, event1)) + eventObservationRepositories.get(event1.id)?.findLastModifiedAfter.and.resolveTo({ + totalCount: 0, + pageSize: 0, + pageIndex: 0, + items: [] + }) + + const sftpRepository = jasmine.createSpyObj('sftpObservationRepository', ['findAllByStatus', 'findLatest', 'postStatus']) + sftpRepository.findAllByStatus.and.resolveTo([{ + eventId: event1.id, + observationId: observation.id, + status: SftpStatus.PENDING, + createdAt: 1, + updatedAt: 1 + }]) + sftpRepository.postStatus.and.resolveTo({ + eventId: event1.id, + observationId: observation.id, + status: SftpStatus.SUCCESS, + createdAt: 1, + updatedAt: 1 + }) + sftpRepository.findLatest.and.resolveTo(null) + + stateRepository.state = { ...defaultSFTPPluginConfig, interval: 10, enabled: true } + const clockTickMillis = stateRepository.state.interval * 1000 + 1 + + archiveFactory.createArchiver.and.returnValue(newArchiver(ArchiveStatus.Complete)) + + const controller = new SftpController( + stateRepository, + eventRepository, + observationRepository, + sftpRepository, + sftpClient, + archiveFactory, + console + ) + + await controller.start() + clock.tick(clockTickMillis) + await controller.stop() + + expect(eventRepository.findActiveEvents).toHaveBeenCalledTimes(1) + expect(sftpRepository.findAllByStatus).toHaveBeenCalledTimes(1) + expect(eventObservationRepositories.get(event1.id)?.findLastModifiedAfter).toHaveBeenCalledTimes(1) + expect(sftpRepository.postStatus).toHaveBeenCalledTimes(1) + expect(sftpRepository.postStatus).toHaveBeenCalledWith(event1.id, observation.id, SftpStatus.SUCCESS) + }) + + it('processes pending observations with success before attachment timeout', async () => { + const eventRepository = jasmine.createSpyObj('eventRepository', ['findActiveEvents']) + eventRepository.findActiveEvents.and.resolveTo([copyMageEventAttrs(event1)]) + + const observation = newObservation(event1, new Date()) + + eventObservationRepositories.get(event1.id)?.findById.and.resolveTo(Observation.evaluate(observation, event1)) + eventObservationRepositories.get(event1.id)?.findLastModifiedAfter.and.resolveTo({ + totalCount: 0, + pageSize: 0, + pageIndex: 0, + items: [] + }) + + const sftpRepository = jasmine.createSpyObj('sftpObservationRepository', ['findAllByStatus', 'findLatest', 'postStatus']) + sftpRepository.findAllByStatus.and.resolveTo([{ + eventId: event1.id, + observationId: observation.id, + status: SftpStatus.PENDING, + createdAt: 1, + updatedAt: 1 + }]) + sftpRepository.postStatus.and.resolveTo({ + eventId: event1.id, + observationId: observation.id, + status: SftpStatus.SUCCESS, + createdAt: 1, + updatedAt: 1 + }) + sftpRepository.findLatest.and.resolveTo(null) + + stateRepository.state = { ...defaultSFTPPluginConfig, interval: 10, enabled: true } + const clockTickMillis = stateRepository.state.interval * 1000 + 1 + + archiveFactory.createArchiver.and.returnValue(newArchiver(ArchiveStatus.Complete)) + + const controller = new SftpController( + stateRepository, + eventRepository, + observationRepository, + sftpRepository, + sftpClient, + archiveFactory, + console + ) + + await controller.start() + clock.tick(clockTickMillis) + await controller.stop() + + expect(eventRepository.findActiveEvents).toHaveBeenCalledTimes(1) + expect(sftpRepository.findAllByStatus).toHaveBeenCalledTimes(1) + expect(eventObservationRepositories.get(event1.id)?.findLastModifiedAfter).toHaveBeenCalledTimes(1) + expect(sftpRepository.postStatus).toHaveBeenCalledTimes(1) + expect(sftpRepository.postStatus).toHaveBeenCalledWith(event1.id, observation.id, SftpStatus.SUCCESS) + }) + + it('processes pending observations after attachment timeout', async () => { + stateRepository.state = { ...defaultSFTPPluginConfig, interval: 10, enabled: true } + const clockTickMillis = stateRepository.state.interval * 1000 + 1 + + const eventRepository = jasmine.createSpyObj('eventRepository', ['findActiveEvents']) + eventRepository.findActiveEvents.and.resolveTo([copyMageEventAttrs(event1)]) + + const observation = newObservation(event1, new Date(Date.now() + stateRepository.state.initiation.timeout + 1)) + + eventObservationRepositories.get(event1.id)?.findById.and.resolveTo(Observation.evaluate(observation, event1)) + eventObservationRepositories.get(event1.id)?.findLastModifiedAfter.and.resolveTo({ + totalCount: 0, + pageSize: 0, + pageIndex: 0, + items: [] + }) + + const sftpRepository = jasmine.createSpyObj('sftpObservationRepository', ['findAllByStatus', 'findLatest', 'postStatus']) + sftpRepository.findAllByStatus.and.resolveTo([{ + eventId: event1.id, + observationId: observation.id, + status: SftpStatus.PENDING, + createdAt: 1, + updatedAt: 1 + }]) + sftpRepository.postStatus.and.resolveTo({ + eventId: event1.id, + observationId: observation.id, + status: SftpStatus.SUCCESS, + createdAt: 1, + updatedAt: 1 + }) + sftpRepository.findLatest.and.resolveTo(null) + + archiveFactory.createArchiver.and.returnValue(newArchiver(ArchiveStatus.Incomplete)) + + const controller = new SftpController( + stateRepository, + eventRepository, + observationRepository, + sftpRepository, + sftpClient, + archiveFactory, + console + ) + + await controller.start() + clock.tick(clockTickMillis) + await controller.stop() + + expect(eventRepository.findActiveEvents).toHaveBeenCalledTimes(1) + expect(sftpRepository.findAllByStatus).toHaveBeenCalledTimes(1) + expect(eventObservationRepositories.get(event1.id)?.findLastModifiedAfter).toHaveBeenCalledTimes(1) + expect(sftpRepository.postStatus).toHaveBeenCalledTimes(1) + expect(sftpRepository.postStatus).toHaveBeenCalledWith(event1.id, observation.id, SftpStatus.SUCCESS) + }) + + it('processes new observations w/ create trigger', async () => { + stateRepository.state = { ...defaultSFTPPluginConfig, interval: 10, enabled: true } + const clockTickMillis = stateRepository.state.interval * 1000 + 1 + + const eventRepository = jasmine.createSpyObj('eventRepository', ['findActiveEvents']) + eventRepository.findActiveEvents.and.resolveTo([copyMageEventAttrs(event1)]) + + const observation = newObservation(event1, new Date()) + + eventObservationRepositories.get(event1.id)?.findById.and.resolveTo(Observation.evaluate(observation, event1)) + eventObservationRepositories.get(event1.id)?.findLastModifiedAfter.and.resolveTo({ + totalCount: 1, + pageSize: 10, + pageIndex: 0, + items: [observation] + }) + + const sftpRepository = jasmine.createSpyObj('sftpObservationRepository', ['findAllByStatus', 'findLatest', 'postStatus', 'isProcessed']) + sftpRepository.findAllByStatus.and.resolveTo([]) + sftpRepository.postStatus.and.resolveTo({ + eventId: event1.id, + observationId: observation.id, + status: SftpStatus.SUCCESS, + createdAt: 1, + updatedAt: 1 + }) + sftpRepository.findLatest.and.resolveTo(null) + sftpRepository.isProcessed.and.resolveTo(false) + + const archiverSpy = jasmine.createSpyObj('archiver', ['createArchive']) + archiverSpy.createArchive.and.resolveTo(ArchiveResult.complete(archiver('zip'))) + archiveFactory.createArchiver.and.returnValue(archiverSpy) + + const controller = new SftpController( + stateRepository, + eventRepository, + observationRepository, + sftpRepository, + sftpClient, + archiveFactory, + console + ) + + await controller.start() + clock.tick(clockTickMillis) + await controller.stop() + + expect(eventRepository.findActiveEvents).toHaveBeenCalledTimes(1) + expect(sftpRepository.findAllByStatus).toHaveBeenCalledTimes(1) + expect(eventObservationRepositories.get(event1.id)?.findLastModifiedAfter).toHaveBeenCalledTimes(1) + expect(sftpRepository.postStatus).toHaveBeenCalledTimes(1) + expect(sftpRepository.postStatus).toHaveBeenCalledWith(event1.id, observation.id, SftpStatus.SUCCESS) + expect(archiverSpy.createArchive).toHaveBeenCalled() + }) + + it('processes updated observations w/ create/update trigger', async () => { + stateRepository.state = { ...defaultSFTPPluginConfig, interval: 10, enabled: true } + const clockTickMillis = stateRepository.state.interval * 1000 + 1 + + const eventRepository = jasmine.createSpyObj('eventRepository', ['findActiveEvents']) + eventRepository.findActiveEvents.and.resolveTo([copyMageEventAttrs(event1)]) + + const observation = newObservation(event1, new Date()) + + eventObservationRepositories.get(event1.id)?.findById.and.resolveTo(Observation.evaluate(observation, event1)) + eventObservationRepositories.get(event1.id)?.findLastModifiedAfter.and.resolveTo({ + totalCount: 1, + pageSize: 10, + pageIndex: 0, + items: [observation] + }) + + const sftpRepository = jasmine.createSpyObj('sftpObservationRepository', ['findAllByStatus', 'findLatest', 'postStatus', 'isProcessed']) + sftpRepository.findAllByStatus.and.resolveTo([]) + sftpRepository.postStatus.and.resolveTo({ + eventId: event1.id, + observationId: observation.id, + status: SftpStatus.SUCCESS, + createdAt: 1, + updatedAt: 1 + }) + sftpRepository.findLatest.and.resolveTo(null) + sftpRepository.isProcessed.and.resolveTo(false) + + const archiverSpy = jasmine.createSpyObj('archiver', ['createArchive']) + archiverSpy.createArchive.and.resolveTo(ArchiveResult.complete(archiver('zip'))) + archiveFactory.createArchiver.and.returnValue(archiverSpy) + + const controller = new SftpController( + stateRepository, + eventRepository, + observationRepository, + sftpRepository, + sftpClient, + archiveFactory, + console + ) + + await controller.start() + clock.tick(clockTickMillis) + await controller.stop() + + expect(eventRepository.findActiveEvents).toHaveBeenCalledTimes(1) + expect(sftpRepository.findAllByStatus).toHaveBeenCalledTimes(1) + expect(eventObservationRepositories.get(event1.id)?.findLastModifiedAfter).toHaveBeenCalledTimes(1) + expect(sftpRepository.postStatus).toHaveBeenCalledTimes(1) + expect(sftpRepository.postStatus).toHaveBeenCalledWith(event1.id, observation.id, SftpStatus.SUCCESS) + expect(archiverSpy.createArchive).toHaveBeenCalled() + }) + + it('skips processing of updated observations w/ create trigger', async () => { + stateRepository.state = { ...defaultSFTPPluginConfig, interval: 10, enabled: true, initiation: {rule: TriggerRule.Create,timeout: 60 } } + const clockTickMillis = stateRepository.state.interval * 1000 + 1 + + const eventRepository = jasmine.createSpyObj('eventRepository', ['findActiveEvents']) + eventRepository.findActiveEvents.and.resolveTo([copyMageEventAttrs(event1)]) + + const observation = newObservation(event1, new Date()) + + eventObservationRepositories.get(event1.id)?.findById.and.resolveTo(Observation.evaluate(observation, event1)) + eventObservationRepositories.get(event1.id)?.findLastModifiedAfter.and.resolveTo({ + totalCount: 1, + pageSize: 10, + pageIndex: 0, + items: [observation] + }) + + const sftpRepository = jasmine.createSpyObj('sftpObservationRepository', ['findAllByStatus', 'findLatest', 'postStatus', 'isProcessed']) + sftpRepository.findAllByStatus.and.resolveTo([]) + sftpRepository.postStatus.and.resolveTo({ + eventId: event1.id, + observationId: observation.id, + status: SftpStatus.SUCCESS, + createdAt: 1, + updatedAt: 1 + }) + sftpRepository.findLatest.and.resolveTo(null) + sftpRepository.isProcessed.and.resolveTo(true) + + const archiverSpy = jasmine.createSpyObj('archiver', ['createArchive']) + archiverSpy.createArchive.and.resolveTo(ArchiveResult.complete(archiver('zip'))) + archiveFactory.createArchiver.and.returnValue(archiverSpy) + + const controller = new SftpController( + stateRepository, + eventRepository, + observationRepository, + sftpRepository, + sftpClient, + archiveFactory, + console + ) + + await controller.start() + clock.tick(clockTickMillis) + await controller.stop() + + expect(eventRepository.findActiveEvents).toHaveBeenCalledTimes(1) + expect(sftpRepository.findAllByStatus).toHaveBeenCalledTimes(1) + expect(eventObservationRepositories.get(event1.id)?.findLastModifiedAfter).toHaveBeenCalledTimes(1) + expect(sftpRepository.postStatus).toHaveBeenCalledTimes(0) + expect(archiverSpy.createArchive).toHaveBeenCalledTimes(0) + }) + + // it('skips processed observations w/ create trigger', async () => { + // }) + + // it('waits for observations to contain all attachments', async () => { + // }) + + // it('processes incomplete observation after timeout', async () => { + // }) +}) \ No newline at end of file diff --git a/plugins/sftp/service/src/controller/controller.ts b/plugins/sftp/service/src/controller/controller.ts new file mode 100644 index 000000000..2ebecd64d --- /dev/null +++ b/plugins/sftp/service/src/controller/controller.ts @@ -0,0 +1,264 @@ +import { PagingParameters } from '@ngageoint/mage.service/lib/entities/entities.global'; +import { MageEvent, MageEventRepository } from '@ngageoint/mage.service/lib/entities/events/entities.events'; +import { Observation, ObservationAttrs, ObservationRepositoryForEvent } from '@ngageoint/mage.service/lib/entities/observations/entities.observations'; +import { PluginStateRepository } from '@ngageoint/mage.service/lib/plugins.api'; +import SFTPClient from 'ssh2-sftp-client'; +import { PassThrough } from 'stream'; +import { SFTPPluginConfig, defaultSFTPPluginConfig, encryptDecrypt } from '../configuration/SFTPPluginConfig'; +import { ArchiveFormat, ArchiveStatus, ArchiverFactory, ArchiveResult, TriggerRule } from '../format/entities.format'; +import { SftpAttrs, SftpObservationRepository, SftpStatus } from '../adapters/adapters.sftp.mongoose'; + +/** + * Class used to process observations for SFTP + */ +export class SftpController { + + /** + * True if the processor is currently active, false otherwise. + */ + private isRunning = false; + + /** + * The next timeout, use this to cancel the next one if the processor is stopped. + */ + private nextTimeout: NodeJS.Timeout | undefined; + + /** + * Used to get all the active events. + */ + private eventRepository: MageEventRepository; + + /** + * Used to get new observations. + */ + private observationRepository: ObservationRepositoryForEvent; + + /** + * Used to save sftp status for each observation + */ + private sftpObservationRepository: SftpObservationRepository + + /** + * SFTP plugin state configuration + */ + private stateRepository: PluginStateRepository; + + /** + * SFTP client configuration + */ + private sftpClient: SFTPClient + + /** + * SFTP plugin configuration + */ + private configuration: SFTPPluginConfig | null + + /** + * Factory to retrieve archiver based on plugin configuration + */ + archiveFactory: ArchiverFactory + + /** + * Console logger + */ + private console: Console; + + /** + * Constructor. + * @param stateRepository The plugins configuration. + * @param eventRepository Used to get all the active events. + * @param observationRepository Used to get new observations. + * @param userRepository Used to get user information. + * @param console Used to log to the console. + */ + constructor( + stateRepository: PluginStateRepository, + eventRepository: MageEventRepository, + observationRepository: ObservationRepositoryForEvent, + sftpObservationRepository: SftpObservationRepository, + sftpClient: SFTPClient, + archiverFactory: ArchiverFactory, + console: Console + ) { + this.stateRepository = stateRepository; + this.eventRepository = eventRepository; + this.sftpObservationRepository = sftpObservationRepository; + this.observationRepository = observationRepository; + this.sftpClient = sftpClient + this.archiveFactory = archiverFactory + this.configuration = null + this.console = console; + } + + /** + * Gets the current configuration from the database. + * @returns The current configuration from the database. + */ + public async getConfiguration(): Promise { + if (this.configuration === null) { + return await this.stateRepository.get().then((x: SFTPPluginConfig | null) => !!x ? encryptDecrypt(x, false) : this.stateRepository.put(defaultSFTPPluginConfig)) + } else { + return this.configuration + } + } + + /** + * Updates new configuration in the state repository. + * @param configuration The new config to put into the state repo. + */ + public async updateConfiguration(configuration: SFTPPluginConfig) { + try { + let config = await encryptDecrypt(configuration, true); + await this.stateRepository.put(config) + } catch (err) { + this.console.log(`ERROR: updateConfiguration: ${err}`) + } + } + + /** + * Starts the processor. + */ + async start() { + this.configuration = await this.getConfiguration() + if (!this.configuration.enabled) { return } + + try { + await this.sftpClient.connect(this.configuration.sftpClient) + } catch (e) { + this.console.error("error connecting to sftp endpoint", e) + } + + this.isRunning = true; + await this.processAndScheduleNext() + } + + /** + * Stops the processor. + */ + async stop() { + this.configuration = null + this.isRunning = false + await this.sftpClient.end() + clearTimeout(this.nextTimeout) + } + + /** + * Processes any new observations and then schedules its next run if it hasn't been stopped. + */ + private async processAndScheduleNext() { + const configuration = await this.getConfiguration(); + if (this.isRunning) { + try { + this.console.info('processing new observations'); + const events = await this.eventRepository.findActiveEvents(); + + for (const attrs of events) { + const event = new MageEvent(attrs) + await this.processEvent(event, configuration) + } + } catch (e) { + this.console.error('sftp error', e) + } + + this.scheduleNext(configuration.interval); + } + } + + /** + * Schedule next run. + * @param interval interval in seconds in which to schedule the next run from now + */ + private scheduleNext(interval: number) { + if (this.isRunning) { + this.nextTimeout = setTimeout(() => { this.processAndScheduleNext() }, interval * 1000); + } + } + + private async processEvent(event: MageEvent, configuration: SFTPPluginConfig) { + const observationRepository = await this.observationRepository(event.id); + + this.console.debug('fetching pending observations for event ' + event.name); + const pending = await this.sftpObservationRepository.findAllByStatus(event.id, [SftpStatus.PENDING]) + for (const sftpAttrs of pending) { + const observation = await observationRepository.findById(sftpAttrs.observationId) + if (observation !== null) { + await this.sftpObservation(observation, event, configuration.archiveFormat, configuration.sftpClient.path, configuration.initiation.timeout) + } + } + + const latest: SftpAttrs | null = await this.sftpObservationRepository.findLatest(event.id) + let queryTime: number = 0 + if (latest !== null) { + const observation = await observationRepository.findById(latest.observationId) + if (observation !== null) { + queryTime = observation.lastModified.getTime() + 1 + } + } + + const page: PagingParameters = { + pageSize: configuration.pageSize, + pageIndex: 0 + } + + this.console.debug('fetching new observations for event ' + event.name); + let { items: observations } = await observationRepository.findLastModifiedAfter(queryTime, page); + observations = await this.applyTriggerRule(event, observations, configuration.initiation.rule) + + if (observations.length) { + for (const observationAttrs of observations) { + const observation = Observation.evaluate(observationAttrs, event) + await this.sftpObservation(observation, event, configuration.archiveFormat, configuration.sftpClient.path, configuration.initiation.timeout) + } + + page.pageIndex = ++page.pageIndex + } else { + this.console.debug('no new observations') + } + } + + private async applyTriggerRule(event: MageEvent, observations: ObservationAttrs[], rule: TriggerRule): Promise { + if (rule === TriggerRule.Create) { + const filtered: ObservationAttrs[] = [] + for (const observation of observations) { + const isProcessed = await this.sftpObservationRepository.isProcessed(event.id, observation.id) + if (!isProcessed) { + filtered.push(observation) + } + } + + return filtered + } else { + return observations + } + } + + private async sftpObservation( + observation: Observation, + event: MageEvent, + format: ArchiveFormat, + sftpPath: string, + timeout: number + ) { + const archiver = this.archiveFactory.createArchiver(format) + const result = await archiver.createArchive(observation, event) + + if (result instanceof ArchiveResult) { + if (result.status === ArchiveStatus.Complete || (result.status === ArchiveStatus.Incomplete && (observation.lastModified.getTime() + timeout) > Date.now())) { + this.console.log(`posting status of success`) + const stream = new PassThrough() + result.archive.pipe(stream) + await result.archive.finalize() + await this.sftpClient.put(stream, `${sftpPath}/${observation.id}.zip`) + await this.sftpObservationRepository.postStatus(event.id, observation.id, SftpStatus.SUCCESS) + } else { + this.console.log(`posting status of pending`) + + this.console.info(`pending observation ${observation.id}`) + await this.sftpObservationRepository.postStatus(event.id, observation.id, SftpStatus.PENDING) + } + } else { + this.console.info(`error observation ${observation.id}`, result) + await this.sftpObservationRepository.postStatus(event.id, observation.id, SftpStatus.FAILED) + } + } +} \ No newline at end of file diff --git a/plugins/sftp/service/src/format/entities.format.ts b/plugins/sftp/service/src/format/entities.format.ts new file mode 100644 index 000000000..dbbe1fecb --- /dev/null +++ b/plugins/sftp/service/src/format/entities.format.ts @@ -0,0 +1,77 @@ +import { MageEvent } from "@ngageoint/mage.service/lib/entities/events/entities.events"; +import { AttachmentStore, Observation, ObservationId } from "@ngageoint/mage.service/lib/entities/observations/entities.observations"; +import { Archiver, ArchiverError } from "archiver"; +import { GeoJsonFormatter } from "./geojson"; +import { UserRepository } from "@ngageoint/mage.service/lib/entities/users/entities.users"; + +export enum ArchiveFormat { + GeoJSON = "GeoJSON" +} + +export enum CompletionAction { + None = "None", + Archive = "Archive" +} + +export enum TriggerRule { + Create = "Create", + CreateAndUpdate = "CreateAndUpdate" +} + +export enum ArchiveStatus { + Complete = 'ArchiveStatus.Complete', + Incomplete = 'ArchiveStatus.Incomplete' +} + +export class ArchiveResult { + static complete(archive: Archiver): ArchiveResult { + return new ArchiveResult(archive, ArchiveStatus.Complete) + } + + static incomplete(archive: Archiver): ArchiveResult { + return new ArchiveResult(archive, ArchiveStatus.Incomplete) + } + + constructor(readonly archive: Archiver, readonly status: ArchiveStatus) { + this.archive = archive + this.status = status + } +} + +export class ArchiveError extends Error { + + static error(error: Error | any, observationId: ObservationId): ArchiveError { + const errorCode = (error instanceof ArchiverError) ? error.code : 'undefined' + return new ArchiveError(errorCode, `Failed to create SFTP archive for on observation ${observationId}`) + } + + constructor(readonly errorCode: string, message?: string) { + super(message) + this.errorCode = errorCode + } +} + +export interface ObservationArchiver { + createArchive(observation: Observation, event: MageEvent): Promise +} + +export class ArchiverFactory { + private userRepository: UserRepository + private attachmentStore: AttachmentStore + + constructor( + userRepository: UserRepository, + attachmentStore: AttachmentStore + ) { + this.userRepository = userRepository + this.attachmentStore = attachmentStore + } + + createArchiver(format: ArchiveFormat): ObservationArchiver { + if (format === ArchiveFormat.GeoJSON) { + return new GeoJsonFormatter(this.userRepository, this.attachmentStore) + } else { + throw new Error('Unsupported Archive Format') + } + } +} \ No newline at end of file diff --git a/plugins/sftp/service/src/format/geojson.ts b/plugins/sftp/service/src/format/geojson.ts new file mode 100644 index 000000000..4d68e12e3 --- /dev/null +++ b/plugins/sftp/service/src/format/geojson.ts @@ -0,0 +1,107 @@ +import { MageEvent } from "@ngageoint/mage.service/lib/entities/events/entities.events"; +import { Form, FormField, FormFieldType, FormId } from "@ngageoint/mage.service/lib/entities/events/entities.events.forms"; +import { Attachment, AttachmentStore, FormEntry, FormFieldEntry, FormFieldEntryItem, Observation } from "@ngageoint/mage.service/lib/entities/observations/entities.observations"; +import archiver, { Archiver } from "archiver"; +import { Feature } from "geojson"; +import { ObservationArchiver, ArchiveError, ArchiveResult } from "./entities.format"; +import { ReadStream } from "fs"; +import { User, UserRepository } from "@ngageoint/mage.service/lib/entities/users/entities.users"; +import { Readable } from 'node:stream'; + +export class GeoJsonFormatter implements ObservationArchiver { + private userRepository: UserRepository + private attachmentStore: AttachmentStore + + constructor(userRepository: UserRepository, attachmentStore: AttachmentStore) { + this.userRepository = userRepository + this.attachmentStore = attachmentStore + } + + async createArchive(observation: Observation, event: MageEvent): Promise { + try { + const archive: Archiver = archiver('zip') + const geojson = await this.createObservationGeoJSON(observation, event) + archive.append(JSON.stringify(geojson), { name: 'observation.geojson' }) + + for (const attachment of observation.attachments) { + const stream = await this.attachmentStore.readContent(attachment.id, Observation.evaluate(observation, new MageEvent(event))) + if (stream instanceof ReadStream) { + archive.append(Readable.from(stream), { name: this.getAttachmentPath(attachment) }); + } else { + return ArchiveResult.incomplete(archive) + } + } + + return ArchiveResult.complete(archive) + } catch (e) { + return ArchiveError.error(e, observation.id) + } + } + + private async createObservationGeoJSON(observation: Observation, event: MageEvent): Promise { + var formDefinitions: Map = new Map(event.forms.map(form => [form.id, form])); + + const forms: Array<{ + title: string | undefined, + fields: { [formFieldName: string]: FormFieldEntry } + }> = [] + + observation.properties.forms.forEach((observationForm: FormEntry) => { + const formDefinition = formDefinitions.get(observationForm.formId) + + const fields: { [formFieldName: string]: FormFieldEntry } = {} + formDefinition?.fields?.forEach((fieldDefinition: FormField) => { + if (fieldDefinition.type === FormFieldType.Attachment) { + const attachments: Array = observation.attachments.filter((attachment: Attachment) => { + return attachment.fieldName === fieldDefinition.name && attachment.observationFormId === observationForm.id + }).map((attachment: Attachment) => { + return this.getAttachmentPath(attachment) + }) + + fields[fieldDefinition.title] = attachments + } else { + const fieldValue = observationForm[fieldDefinition.name] + if (fieldValue !== undefined) { + fields[fieldDefinition.title] = fieldValue + } + } + }) + + forms.push({ + title: formDefinition?.name, + fields + }) + }) + + let user: User | null = null + if (observation.userId) { + user = await this.userRepository.findById(observation.userId) + } + + const geojson: Feature = { + type: "Feature", + geometry: observation.geometry, + properties: { + timestamp: observation.properties.timestamp, + user: { + id: user?.id, + name: user?.displayName + }, + event: { + id: event.id, + name: event.name, + description: event.description + }, + forms, + } + } + + return geojson + } + + private getAttachmentPath(attachment: Attachment): string { + const filename = attachment.name || `${attachment.id}}` + return `media/${attachment.id}/${filename}` + } +} + diff --git a/plugins/sftp/service/src/index.ts b/plugins/sftp/service/src/index.ts new file mode 100644 index 000000000..25ed96513 --- /dev/null +++ b/plugins/sftp/service/src/index.ts @@ -0,0 +1,121 @@ +import { UserRepositoryToken } from '@ngageoint/mage.service/lib/plugins.api/plugins.api.users' +import { SFTPPluginConfig } from './configuration/SFTPPluginConfig' +import { SftpController } from './controller/controller' +import { MongooseDbConnectionToken } from '@ngageoint/mage.service/lib/plugins.api/plugins.api.db' +import { InitPluginHook, PluginStateRepositoryToken } from '@ngageoint/mage.service/lib/plugins.api' +import { GetAppRequestContext, WebRoutesHooks } from '@ngageoint/mage.service/lib/plugins.api/plugins.api.web' +import { AttachmentStoreToken, ObservationRepositoryToken } from '@ngageoint/mage.service/lib/plugins.api/plugins.api.observations' +import { MageEventRepositoryToken } from '@ngageoint/mage.service/lib/plugins.api/plugins.api.events' +import { SettingPermission } from '@ngageoint/mage.service/lib/entities/authorization/entities.permissions' +import { MongooseSftpObservationRepository, SftpObservationModel } from './adapters/adapters.sftp.mongoose' +import express from 'express' +import mongoose from 'mongoose' +import SFTPClient from 'ssh2-sftp-client'; +import { ArchiverFactory } from './format/entities.format' + +const { name: packageName } = require('../package.json') + +const logPrefix = '[mage.sftp]' +const logMethods = ['log', 'debug', 'info', 'warn', 'error'] as const +const consoleOverrides = logMethods.reduce((overrides, fn) => { + return { + ...overrides, + [fn]: { + writable: false, + value: (...args: any[]) => { + globalThis.console[fn](new Date().toISOString(), '-', logPrefix, ...args) + } + } + } as PropertyDescriptorMap +}, {} as PropertyDescriptorMap) +const console = Object.create(globalThis.console, consoleOverrides) as Console + +const InjectedServices = { + stateRepository: PluginStateRepositoryToken, + eventRepository: MageEventRepositoryToken, + observationRepository: ObservationRepositoryToken, + userRepository: UserRepositoryToken, + attachmentStore: AttachmentStoreToken, + getDbConnection: MongooseDbConnectionToken +} + +/** + * The MAGE SFTP Plugin finds new MAGE observations and if enabled will send observations + * to an SFTP endpoint. + */ +const sftpPluginHooks: InitPluginHook = { + inject: { + stateRepository: PluginStateRepositoryToken, + eventRepository: MageEventRepositoryToken, + observationRepository: ObservationRepositoryToken, + userRepository: UserRepositoryToken, + attachmentStore: AttachmentStoreToken, + getDbConnection: MongooseDbConnectionToken + }, + init: async (services): Promise => { + console.info('intializing sftp plugin') + + const { + stateRepository, + eventRepository, + observationRepository, + userRepository, + attachmentStore, + getDbConnection + } = services + + const dbConnection: mongoose.Connection = await getDbConnection() + const sftpObservationModel = SftpObservationModel(dbConnection, `${packageName}/observations`) + const sftpObservationRepository = new MongooseSftpObservationRepository(sftpObservationModel) + const archiverFactory = new ArchiverFactory(userRepository, attachmentStore) + + const controller = new SftpController( + stateRepository, + eventRepository, + observationRepository, + sftpObservationRepository, + new SFTPClient(), + archiverFactory, + console + ); + + controller.start(); + + return { + webRoutes: { + protected: (requestContext: GetAppRequestContext) => { + const routes = express.Router() + .use(express.json()) + .use(async (req: express.Request, res: express.Response, next: express.NextFunction) => { + const context = requestContext(req) + const user = context.requestingPrincipal() + if (!user.role.permissions.find(x => x === SettingPermission.UPDATE_SETTINGS)) { + return res.sendStatus(403) + } + next() + }) + + routes.route('/configuration') + .get(async (_req, res, _next) => { + const config = await controller.getConfiguration(); + res.json(config); + }) + .post(async (req, res, _next) => { + await controller.stop() + + const configuration = req.body as SFTPPluginConfig + await controller.updateConfiguration(configuration) + + await controller.start() + + res.status(200) //.json(configuration) + }) + + return routes + } + } + } + } +} + +export = sftpPluginHooks \ No newline at end of file diff --git a/plugins/sftp/service/tsconfig.json b/plugins/sftp/service/tsconfig.json new file mode 100644 index 000000000..0c7b8a82e --- /dev/null +++ b/plugins/sftp/service/tsconfig.json @@ -0,0 +1,15 @@ +{ + "include": [ + "src/**/*.ts" + ], + "compilerOptions": { + "strict": true, + "outDir": "lib", + "target": "es2015", + "sourceMap": true, + "module": "commonjs", + "moduleResolution": "node", + "esModuleInterop": true, + "baseUrl": "." + } +} \ No newline at end of file diff --git a/plugins/sftp/web/.gitignore b/plugins/sftp/web/.gitignore new file mode 100644 index 000000000..86d943a9b --- /dev/null +++ b/plugins/sftp/web/.gitignore @@ -0,0 +1,46 @@ +# See http://help.github.com/ignore-files/ for more about ignoring files. + +# compiled output +/dist +/tmp +/out-tsc +# Only exists if Bazel was run +/bazel-out + +# dependencies +/node_modules + +# profiling files +chrome-profiler-events*.json +speed-measure-plugin*.json + +# IDEs and editors +/.idea +.project +.classpath +.c9/ +*.launch +.settings/ +*.sublime-workspace + +# IDE - VSCode +.vscode/* +!.vscode/settings.json +!.vscode/tasks.json +!.vscode/launch.json +!.vscode/extensions.json +.history/* + +# misc +/.sass-cache +/connect.lock +/coverage +/libpeerconnection.log +npm-debug.log +yarn-error.log +testem.log +/typings + +# System Files +.DS_Store +Thumbs.db diff --git a/plugins/sftp/web/README.md b/plugins/sftp/web/README.md new file mode 100644 index 000000000..3745eaece --- /dev/null +++ b/plugins/sftp/web/README.md @@ -0,0 +1,27 @@ +# Sftp + +This project was generated with [Angular CLI](https://github.com/angular/angular-cli) version 9.1.15. + +## Development server + +Run `ng serve` for a dev server. Navigate to `http://localhost:4200/`. The app will automatically reload if you change any of the source files. + +## Code scaffolding + +Run `ng generate component component-name` to generate a new component. You can also use `ng generate directive|pipe|service|class|guard|interface|enum|module`. + +## Build + +Run `ng build` to build the project. The build artifacts will be stored in the `dist/` directory. Use the `--prod` flag for a production build. + +## Running unit tests + +Run `ng test` to execute the unit tests via [Karma](https://karma-runner.github.io). + +## Running end-to-end tests + +Run `ng e2e` to execute the end-to-end tests via [Protractor](http://www.protractortest.org/). + +## Further help + +To get more help on the Angular CLI use `ng help` or go check out the [Angular CLI README](https://github.com/angular/angular-cli/blob/master/README.md). diff --git a/plugins/sftp/web/angular.json b/plugins/sftp/web/angular.json new file mode 100644 index 000000000..9465fc3bf --- /dev/null +++ b/plugins/sftp/web/angular.json @@ -0,0 +1,167 @@ +{ + "$schema": "./node_modules/@angular/cli/lib/config/schema.json", + "version": 1, + "newProjectRoot": "projects", + "projects": { + "main": { + "projectType": "library", + "root": "projects/main", + "sourceRoot": "projects/main/src", + "prefix": "lib", + "architect": { + "build": { + "builder": "@ngageoint/mage.web-core-lib:amd", + "options": { + "tsConfig": "projects/main/tsconfig.lib.json", + "project": "projects/main/ng-package.json" + }, + "configurations": { + "production": { + "tsConfig": "projects/main/tsconfig.lib.prod.json" + } + } + }, + "test": { + "builder": "@angular-devkit/build-angular:karma", + "options": { + "main": "projects/main/src/test.ts", + "tsConfig": "projects/main/tsconfig.spec.json", + "karmaConfig": "projects/main/karma.conf.js" + } + }, + "lint": { + "builder": "@angular-devkit/build-angular:tslint", + "options": { + "tsConfig": [ + "projects/main/tsconfig.lib.json", + "projects/main/tsconfig.spec.json" + ], + "exclude": [ + "**/node_modules/**" + ] + } + } + } + }, + "showcase": { + "projectType": "application", + "schematics": { + "@schematics/angular:component": { + "style": "scss" + } + }, + "root": "projects/showcase", + "sourceRoot": "projects/showcase/src", + "prefix": "app", + "architect": { + "build": { + "builder": "@angular-devkit/build-angular:browser", + "options": { + "outputPath": "dist/showcase", + "index": "projects/showcase/src/index.html", + "main": "projects/showcase/src/main.ts", + "polyfills": "projects/showcase/src/polyfills.ts", + "tsConfig": "projects/showcase/tsconfig.app.json", + "aot": true, + "assets": [ + "projects/showcase/src/favicon.ico", + "projects/showcase/src/assets" + ], + "styles": [ + "projects/showcase/src/styles.scss" + ], + "scripts": [] + }, + "configurations": { + "production": { + "fileReplacements": [ + { + "replace": "projects/showcase/src/environments/environment.ts", + "with": "projects/showcase/src/environments/environment.prod.ts" + } + ], + "optimization": true, + "outputHashing": "all", + "sourceMap": false, + "extractCss": true, + "namedChunks": false, + "extractLicenses": true, + "vendorChunk": false, + "buildOptimizer": true, + "budgets": [ + { + "type": "initial", + "maximumWarning": "2mb", + "maximumError": "5mb" + }, + { + "type": "anyComponentStyle", + "maximumWarning": "6kb", + "maximumError": "10kb" + } + ] + } + } + }, + "serve": { + "builder": "@angular-devkit/build-angular:dev-server", + "options": { + "browserTarget": "showcase:build" + }, + "configurations": { + "production": { + "browserTarget": "showcase:build:production" + } + } + }, + "extract-i18n": { + "builder": "@angular-devkit/build-angular:extract-i18n", + "options": { + "browserTarget": "showcase:build" + } + }, + "test": { + "builder": "@angular-devkit/build-angular:karma", + "options": { + "main": "projects/showcase/src/test.ts", + "polyfills": "projects/showcase/src/polyfills.ts", + "tsConfig": "projects/showcase/tsconfig.spec.json", + "karmaConfig": "projects/showcase/karma.conf.js", + "assets": [ + "projects/showcase/src/favicon.ico", + "projects/showcase/src/assets" + ], + "styles": [ + "projects/showcase/src/styles.scss" + ], + "scripts": [] + } + }, + "lint": { + "builder": "@angular-devkit/build-angular:tslint", + "options": { + "tsConfig": [ + "projects/showcase/tsconfig.app.json", + "projects/showcase/tsconfig.spec.json", + "projects/showcase/e2e/tsconfig.json" + ], + "exclude": [ + "**/node_modules/**" + ] + } + }, + "e2e": { + "builder": "@angular-devkit/build-angular:protractor", + "options": { + "protractorConfig": "projects/showcase/e2e/protractor.conf.js", + "devServerTarget": "showcase:serve" + }, + "configurations": { + "production": { + "devServerTarget": "showcase:serve:production" + } + } + } + } + }} +} diff --git a/plugins/sftp/web/package-lock.json b/plugins/sftp/web/package-lock.json new file mode 100644 index 000000000..54f494916 --- /dev/null +++ b/plugins/sftp/web/package-lock.json @@ -0,0 +1,15716 @@ +{ + "name": "@ngageoint/mage.sftp.workspace", + "version": "1.0.0-beta.1", + "lockfileVersion": 3, + "requires": true, + "packages": { + "": { + "name": "@ngageoint/mage.sftp.workspace", + "version": "1.0.0-beta.1", + "dependencies": { + "@angular/animations": "^14.3.0", + "@angular/cdk": "^14.2.7", + "@angular/common": "^14.3.0", + "@angular/compiler": "^14.3.0", + "@angular/core": "^14.3.0", + "@angular/forms": "^14.3.0", + "@angular/material": "^14.2.7", + "@angular/platform-browser": "^14.3.0", + "@angular/platform-browser-dynamic": "^14.3.0", + "@angular/router": "^14.3.0", + "@ngageoint/mage.web-core-lib": ">=6.3.0-beta.8", + "rxjs": "~7.6.0", + "tslib": "^2.0.0", + "zone.js": "~0.11.4" + }, + "devDependencies": { + "@angular-devkit/build-angular": "^14.2.13", + "@angular/cli": "^14.2.13", + "@angular/compiler-cli": "^14.3.0", + "@types/geojson": "^7946.0.7", + "@types/jasmine": "~3.5.0", + "@types/jasminewd2": "~2.0.3", + "@types/node": "^12.11.1", + "jasmine-core": "^4.6.1", + "jasmine-spec-reporter": "^7.0.0", + "karma": "~6.4.3", + "karma-chrome-launcher": "~3.1.0", + "karma-coverage": "^2.2.1", + "karma-coverage-istanbul-reporter": "~3.0.2", + "karma-jasmine": "~5.1.0", + "karma-jasmine-html-reporter": "^2.1.0", + "ng-packagr": "^14.2.0", + "npm-run-all": "^4.1.5", + "protractor": "~7.0.0", + "stylus": "^0.54.8", + "ts-node": "~8.3.0", + "tslint": "~6.1.0", + "typescript": "~4.6.4" + } + }, + "node_modules/@adobe/css-tools": { + "version": "4.4.2", + "resolved": "https://registry.npmjs.org/@adobe/css-tools/-/css-tools-4.4.2.tgz", + "integrity": "sha512-baYZExFpsdkBNuvGKTKWCwKH57HRZLVtycZS05WTQNVOiXVSeAki3nU35zlRbToeMW8aHlJfyS+1C4BOv27q0A==" + }, + "node_modules/@ampproject/remapping": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.0.tgz", + "integrity": "sha512-qRmjj8nj9qmLTQXXmaR1cck3UXSRMPrbsLJAasZpF+t3riI71BXed5ebIOYwQntykeZuhjsdweEc9BxH5Jc26w==", + "dependencies": { + "@jridgewell/gen-mapping": "^0.1.0", + "@jridgewell/trace-mapping": "^0.3.9" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@angular-devkit/architect": { + "version": "0.1400.0", + "resolved": "https://registry.npmjs.org/@angular-devkit/architect/-/architect-0.1400.0.tgz", + "integrity": "sha512-INPO+r5CHElPdFLOrwUYShZqtr37/kTJegAoWpSNC8Zy8WgTlecvA+y5eHy0bNeXMjWbZ3YCZJ1jXYpJJNL1Kg==", + "peer": true, + "dependencies": { + "@angular-devkit/core": "14.0.0", + "rxjs": "6.6.7" + }, + "engines": { + "node": "^14.15.0 || >=16.10.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" + } + }, + "node_modules/@angular-devkit/architect/node_modules/@angular-devkit/core": { + "version": "14.0.0", + "resolved": "https://registry.npmjs.org/@angular-devkit/core/-/core-14.0.0.tgz", + "integrity": "sha512-xQXpNbIeBjnbY68OFkrpFm6v7xlmTLFk6zGPIkI4T/hrqT2kNmg0y1/FcN6yMBgCEC9WVWR8SHGaPWrc5VVZMw==", + "peer": true, + "dependencies": { + "ajv": "8.11.0", + "ajv-formats": "2.1.1", + "jsonc-parser": "3.0.0", + "rxjs": "6.6.7", + "source-map": "0.7.3" + }, + "engines": { + "node": "^14.15.0 || >=16.10.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" + }, + "peerDependencies": { + "chokidar": "^3.5.2" + }, + "peerDependenciesMeta": { + "chokidar": { + "optional": true + } + } + }, + "node_modules/@angular-devkit/architect/node_modules/jsonc-parser": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-3.0.0.tgz", + "integrity": "sha512-fQzRfAbIBnR0IQvftw9FJveWiHp72Fg20giDrHz6TdfB12UH/uue0D3hm57UB5KgAVuniLMCaS8P1IMj9NR7cA==", + "peer": true + }, + "node_modules/@angular-devkit/architect/node_modules/rxjs": { + "version": "6.6.7", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", + "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", + "peer": true, + "dependencies": { + "tslib": "^1.9.0" + }, + "engines": { + "npm": ">=2.0.0" + } + }, + "node_modules/@angular-devkit/architect/node_modules/source-map": { + "version": "0.7.3", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz", + "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==", + "peer": true, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@angular-devkit/architect/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "peer": true + }, + "node_modules/@angular-devkit/build-angular": { + "version": "14.2.13", + "resolved": "https://registry.npmjs.org/@angular-devkit/build-angular/-/build-angular-14.2.13.tgz", + "integrity": "sha512-FJZKQ3xYFvEJ807sxVy4bCVyGU2NMl3UUPNfLIdIdzwwDEP9tx/cc+c4VtVPEZZfU8jVenu8XOvL6L0vpjt3yg==", + "dependencies": { + "@ampproject/remapping": "2.2.0", + "@angular-devkit/architect": "0.1402.13", + "@angular-devkit/build-webpack": "0.1402.13", + "@angular-devkit/core": "14.2.13", + "@babel/core": "7.18.10", + "@babel/generator": "7.18.12", + "@babel/helper-annotate-as-pure": "7.18.6", + "@babel/plugin-proposal-async-generator-functions": "7.18.10", + "@babel/plugin-transform-async-to-generator": "7.18.6", + "@babel/plugin-transform-runtime": "7.18.10", + "@babel/preset-env": "7.18.10", + "@babel/runtime": "7.18.9", + "@babel/template": "7.18.10", + "@discoveryjs/json-ext": "0.5.7", + "@ngtools/webpack": "14.2.13", + "ansi-colors": "4.1.3", + "babel-loader": "8.2.5", + "babel-plugin-istanbul": "6.1.1", + "browserslist": "^4.9.1", + "cacache": "16.1.2", + "copy-webpack-plugin": "11.0.0", + "critters": "0.0.16", + "css-loader": "6.7.1", + "esbuild-wasm": "0.15.5", + "glob": "8.0.3", + "https-proxy-agent": "5.0.1", + "inquirer": "8.2.4", + "jsonc-parser": "3.1.0", + "karma-source-map-support": "1.4.0", + "less": "4.1.3", + "less-loader": "11.0.0", + "license-webpack-plugin": "4.0.2", + "loader-utils": "3.2.1", + "mini-css-extract-plugin": "2.6.1", + "minimatch": "5.1.0", + "open": "8.4.0", + "ora": "5.4.1", + "parse5-html-rewriting-stream": "6.0.1", + "piscina": "3.2.0", + "postcss": "8.4.31", + "postcss-import": "15.0.0", + "postcss-loader": "7.0.1", + "postcss-preset-env": "7.8.0", + "regenerator-runtime": "0.13.9", + "resolve-url-loader": "5.0.0", + "rxjs": "6.6.7", + "sass": "1.54.4", + "sass-loader": "13.0.2", + "semver": "7.5.3", + "source-map-loader": "4.0.0", + "source-map-support": "0.5.21", + "stylus": "0.59.0", + "stylus-loader": "7.0.0", + "terser": "5.14.2", + "text-table": "0.2.0", + "tree-kill": "1.2.2", + "tslib": "2.4.0", + "webpack": "5.76.1", + "webpack-dev-middleware": "5.3.3", + "webpack-dev-server": "4.11.0", + "webpack-merge": "5.8.0", + "webpack-subresource-integrity": "5.1.0" + }, + "engines": { + "node": "^14.15.0 || >=16.10.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" + }, + "optionalDependencies": { + "esbuild": "0.15.5" + }, + "peerDependencies": { + "@angular/compiler-cli": "^14.0.0", + "@angular/localize": "^14.0.0", + "@angular/service-worker": "^14.0.0", + "karma": "^6.3.0", + "ng-packagr": "^14.0.0", + "protractor": "^7.0.0", + "tailwindcss": "^2.0.0 || ^3.0.0", + "typescript": ">=4.6.2 <4.9" + }, + "peerDependenciesMeta": { + "@angular/localize": { + "optional": true + }, + "@angular/service-worker": { + "optional": true + }, + "karma": { + "optional": true + }, + "ng-packagr": { + "optional": true + }, + "protractor": { + "optional": true + }, + "tailwindcss": { + "optional": true + } + } + }, + "node_modules/@angular-devkit/build-angular/node_modules/@angular-devkit/architect": { + "version": "0.1402.13", + "resolved": "https://registry.npmjs.org/@angular-devkit/architect/-/architect-0.1402.13.tgz", + "integrity": "sha512-n0ISBuvkZHoOpAzuAZql1TU9VLHUE9e/a9g4VNOPHewjMzpN02VqeGKvJfOCKtzkCs6gVssIlILm2/SXxkIFxQ==", + "dependencies": { + "@angular-devkit/core": "14.2.13", + "rxjs": "6.6.7" + }, + "engines": { + "node": "^14.15.0 || >=16.10.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" + } + }, + "node_modules/@angular-devkit/build-angular/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/@angular-devkit/build-angular/node_modules/rxjs": { + "version": "6.6.7", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", + "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", + "dependencies": { + "tslib": "^1.9.0" + }, + "engines": { + "npm": ">=2.0.0" + } + }, + "node_modules/@angular-devkit/build-angular/node_modules/rxjs/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + }, + "node_modules/@angular-devkit/build-angular/node_modules/sax": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", + "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==" + }, + "node_modules/@angular-devkit/build-angular/node_modules/stylus": { + "version": "0.59.0", + "resolved": "https://registry.npmjs.org/stylus/-/stylus-0.59.0.tgz", + "integrity": "sha512-lQ9w/XIOH5ZHVNuNbWW8D822r+/wBSO/d6XvtyHLF7LW4KaCIDeVbvn5DF8fGCJAUCwVhVi/h6J0NUcnylUEjg==", + "dependencies": { + "@adobe/css-tools": "^4.0.1", + "debug": "^4.3.2", + "glob": "^7.1.6", + "sax": "~1.2.4", + "source-map": "^0.7.3" + }, + "bin": { + "stylus": "bin/stylus" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://opencollective.com/stylus" + } + }, + "node_modules/@angular-devkit/build-angular/node_modules/stylus/node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "deprecated": "Glob versions prior to v9 are no longer supported", + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/@angular-devkit/build-angular/node_modules/stylus/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/@angular-devkit/build-angular/node_modules/tslib": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz", + "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==" + }, + "node_modules/@angular-devkit/build-webpack": { + "version": "0.1402.13", + "resolved": "https://registry.npmjs.org/@angular-devkit/build-webpack/-/build-webpack-0.1402.13.tgz", + "integrity": "sha512-K27aJmuw86ZOdiu5PoGeGDJ2v7g2ZCK0bGwc8jzkjTLRfvd4FRKIIZumGv3hbQ3vQRLikiU6WMDRTFyCZky/EA==", + "dependencies": { + "@angular-devkit/architect": "0.1402.13", + "rxjs": "6.6.7" + }, + "engines": { + "node": "^14.15.0 || >=16.10.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" + }, + "peerDependencies": { + "webpack": "^5.30.0", + "webpack-dev-server": "^4.0.0" + } + }, + "node_modules/@angular-devkit/build-webpack/node_modules/@angular-devkit/architect": { + "version": "0.1402.13", + "resolved": "https://registry.npmjs.org/@angular-devkit/architect/-/architect-0.1402.13.tgz", + "integrity": "sha512-n0ISBuvkZHoOpAzuAZql1TU9VLHUE9e/a9g4VNOPHewjMzpN02VqeGKvJfOCKtzkCs6gVssIlILm2/SXxkIFxQ==", + "dependencies": { + "@angular-devkit/core": "14.2.13", + "rxjs": "6.6.7" + }, + "engines": { + "node": "^14.15.0 || >=16.10.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" + } + }, + "node_modules/@angular-devkit/build-webpack/node_modules/rxjs": { + "version": "6.6.7", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", + "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", + "dependencies": { + "tslib": "^1.9.0" + }, + "engines": { + "npm": ">=2.0.0" + } + }, + "node_modules/@angular-devkit/build-webpack/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + }, + "node_modules/@angular-devkit/core": { + "version": "14.2.13", + "resolved": "https://registry.npmjs.org/@angular-devkit/core/-/core-14.2.13.tgz", + "integrity": "sha512-aIefeZcbjghQg/V6U9CTLtyB5fXDJ63KwYqVYkWP+i0XriS5A9puFgq2u/OVsWxAfYvqpDqp5AdQ0g0bi3CAsA==", + "dependencies": { + "ajv": "8.11.0", + "ajv-formats": "2.1.1", + "jsonc-parser": "3.1.0", + "rxjs": "6.6.7", + "source-map": "0.7.4" + }, + "engines": { + "node": "^14.15.0 || >=16.10.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" + }, + "peerDependencies": { + "chokidar": "^3.5.2" + }, + "peerDependenciesMeta": { + "chokidar": { + "optional": true + } + } + }, + "node_modules/@angular-devkit/core/node_modules/rxjs": { + "version": "6.6.7", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", + "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", + "dependencies": { + "tslib": "^1.9.0" + }, + "engines": { + "npm": ">=2.0.0" + } + }, + "node_modules/@angular-devkit/core/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + }, + "node_modules/@angular-devkit/schematics": { + "version": "14.2.0", + "resolved": "https://registry.npmjs.org/@angular-devkit/schematics/-/schematics-14.2.0.tgz", + "integrity": "sha512-5H78HBAYshCKSYsjIr4K33TkS6CMB7IZpZunisSDiX23fHa1IvIkDrpbXlfMvZykHbcmKA/nt2wHMIsQl0YNuw==", + "peer": true, + "dependencies": { + "@angular-devkit/core": "14.2.0", + "jsonc-parser": "3.1.0", + "magic-string": "0.26.2", + "ora": "5.4.1", + "rxjs": "6.6.7" + }, + "engines": { + "node": "^14.15.0 || >=16.10.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" + } + }, + "node_modules/@angular-devkit/schematics/node_modules/@angular-devkit/core": { + "version": "14.2.0", + "resolved": "https://registry.npmjs.org/@angular-devkit/core/-/core-14.2.0.tgz", + "integrity": "sha512-IwiS6uDs3drR4i3nuqVinh5jtI1SHIyn/OaoWL6t3V7Y6b65BdJN1liyd+WBUEZmEwGCkY2/FjnLx1G8Dflc8A==", + "peer": true, + "dependencies": { + "ajv": "8.11.0", + "ajv-formats": "2.1.1", + "jsonc-parser": "3.1.0", + "rxjs": "6.6.7", + "source-map": "0.7.4" + }, + "engines": { + "node": "^14.15.0 || >=16.10.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" + }, + "peerDependencies": { + "chokidar": "^3.5.2" + }, + "peerDependenciesMeta": { + "chokidar": { + "optional": true + } + } + }, + "node_modules/@angular-devkit/schematics/node_modules/rxjs": { + "version": "6.6.7", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", + "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", + "peer": true, + "dependencies": { + "tslib": "^1.9.0" + }, + "engines": { + "npm": ">=2.0.0" + } + }, + "node_modules/@angular-devkit/schematics/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "peer": true + }, + "node_modules/@angular/animations": { + "version": "14.3.0", + "resolved": "https://registry.npmjs.org/@angular/animations/-/animations-14.3.0.tgz", + "integrity": "sha512-QoBcIKy1ZiU+4qJsAh5Ls20BupWiXiZzKb0s6L9/dntPt5Msr4Ao289XR2P6O1L+kTsCprH9Kt41zyGQ/bkRqg==", + "dependencies": { + "tslib": "^2.3.0" + }, + "engines": { + "node": "^14.15.0 || >=16.10.0" + }, + "peerDependencies": { + "@angular/core": "14.3.0" + } + }, + "node_modules/@angular/cdk": { + "version": "14.2.7", + "resolved": "https://registry.npmjs.org/@angular/cdk/-/cdk-14.2.7.tgz", + "integrity": "sha512-/tEsYaUbDSnfEmKVvAMramIptmhI67O+9STjOV0i+74XR2NospeK0fkbywIANu1n3w6AHGMotvRWJrjmbCElFg==", + "dependencies": { + "tslib": "^2.3.0" + }, + "optionalDependencies": { + "parse5": "^5.0.0" + }, + "peerDependencies": { + "@angular/common": "^14.0.0 || ^15.0.0", + "@angular/core": "^14.0.0 || ^15.0.0", + "rxjs": "^6.5.3 || ^7.4.0" + } + }, + "node_modules/@angular/cli": { + "version": "14.2.13", + "resolved": "https://registry.npmjs.org/@angular/cli/-/cli-14.2.13.tgz", + "integrity": "sha512-I5EepRem2CCyS3GDzQxZ2ZrqQwVqoGoLY+ZQhsK1QGWUnUyFOjbv3OlUGxRUYwcedu19V1EBAKjmQ96HzMIcVQ==", + "dev": true, + "dependencies": { + "@angular-devkit/architect": "0.1402.13", + "@angular-devkit/core": "14.2.13", + "@angular-devkit/schematics": "14.2.13", + "@schematics/angular": "14.2.13", + "@yarnpkg/lockfile": "1.1.0", + "ansi-colors": "4.1.3", + "debug": "4.3.4", + "ini": "3.0.0", + "inquirer": "8.2.4", + "jsonc-parser": "3.1.0", + "npm-package-arg": "9.1.0", + "npm-pick-manifest": "7.0.1", + "open": "8.4.0", + "ora": "5.4.1", + "pacote": "13.6.2", + "resolve": "1.22.1", + "semver": "7.5.3", + "symbol-observable": "4.0.0", + "uuid": "8.3.2", + "yargs": "17.5.1" + }, + "bin": { + "ng": "bin/ng.js" + }, + "engines": { + "node": "^14.15.0 || >=16.10.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" + } + }, + "node_modules/@angular/cli/node_modules/@angular-devkit/architect": { + "version": "0.1402.13", + "resolved": "https://registry.npmjs.org/@angular-devkit/architect/-/architect-0.1402.13.tgz", + "integrity": "sha512-n0ISBuvkZHoOpAzuAZql1TU9VLHUE9e/a9g4VNOPHewjMzpN02VqeGKvJfOCKtzkCs6gVssIlILm2/SXxkIFxQ==", + "dev": true, + "dependencies": { + "@angular-devkit/core": "14.2.13", + "rxjs": "6.6.7" + }, + "engines": { + "node": "^14.15.0 || >=16.10.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" + } + }, + "node_modules/@angular/cli/node_modules/@angular-devkit/schematics": { + "version": "14.2.13", + "resolved": "https://registry.npmjs.org/@angular-devkit/schematics/-/schematics-14.2.13.tgz", + "integrity": "sha512-2zczyeNzeBcrT2HOysv52X9SH3tZoHfWJvVf6H0SIa74rfDKEl7hFpKNXnh3x8sIMLj5mZn05n5RCqGxCczcIg==", + "dev": true, + "dependencies": { + "@angular-devkit/core": "14.2.13", + "jsonc-parser": "3.1.0", + "magic-string": "0.26.2", + "ora": "5.4.1", + "rxjs": "6.6.7" + }, + "engines": { + "node": "^14.15.0 || >=16.10.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" + } + }, + "node_modules/@angular/cli/node_modules/@schematics/angular": { + "version": "14.2.13", + "resolved": "https://registry.npmjs.org/@schematics/angular/-/angular-14.2.13.tgz", + "integrity": "sha512-MLxTpTU3E8QACQ/5c0sENMR2gRiMXpGaKeD5IHY+3wyU2fUSJVB0QPU/l1WhoyZbX8N9ospBgf5UEG7taVF9rg==", + "dev": true, + "dependencies": { + "@angular-devkit/core": "14.2.13", + "@angular-devkit/schematics": "14.2.13", + "jsonc-parser": "3.1.0" + }, + "engines": { + "node": "^14.15.0 || >=16.10.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" + } + }, + "node_modules/@angular/cli/node_modules/rxjs": { + "version": "6.6.7", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", + "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", + "dev": true, + "dependencies": { + "tslib": "^1.9.0" + }, + "engines": { + "npm": ">=2.0.0" + } + }, + "node_modules/@angular/cli/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "dev": true + }, + "node_modules/@angular/common": { + "version": "14.3.0", + "resolved": "https://registry.npmjs.org/@angular/common/-/common-14.3.0.tgz", + "integrity": "sha512-pV9oyG3JhGWeQ+TFB0Qub6a1VZWMNZ6/7zEopvYivdqa5yDLLDSBRWb6P80RuONXyGnM1pa7l5nYopX+r/23GQ==", + "dependencies": { + "tslib": "^2.3.0" + }, + "engines": { + "node": "^14.15.0 || >=16.10.0" + }, + "peerDependencies": { + "@angular/core": "14.3.0", + "rxjs": "^6.5.3 || ^7.4.0" + } + }, + "node_modules/@angular/compiler": { + "version": "14.3.0", + "resolved": "https://registry.npmjs.org/@angular/compiler/-/compiler-14.3.0.tgz", + "integrity": "sha512-E15Rh0t3vA+bctbKnBCaDmLvc3ix+ZBt6yFZmhZalReQ+KpOlvOJv+L9oiFEgg+rYVl2QdvN7US1fvT0PqswLw==", + "dependencies": { + "tslib": "^2.3.0" + }, + "engines": { + "node": "^14.15.0 || >=16.10.0" + }, + "peerDependencies": { + "@angular/core": "14.3.0" + }, + "peerDependenciesMeta": { + "@angular/core": { + "optional": true + } + } + }, + "node_modules/@angular/compiler-cli": { + "version": "14.3.0", + "resolved": "https://registry.npmjs.org/@angular/compiler-cli/-/compiler-cli-14.3.0.tgz", + "integrity": "sha512-eoKpKdQ2X6axMgzcPUMZVYl3bIlTMzMeTo5V29No4BzgiUB+QoOTYGNJZkGRyqTNpwD9uSBJvmT2vG9+eC4ghQ==", + "dependencies": { + "@babel/core": "^7.17.2", + "chokidar": "^3.0.0", + "convert-source-map": "^1.5.1", + "dependency-graph": "^0.11.0", + "magic-string": "^0.26.0", + "reflect-metadata": "^0.1.2", + "semver": "^7.0.0", + "sourcemap-codec": "^1.4.8", + "tslib": "^2.3.0", + "yargs": "^17.2.1" + }, + "bin": { + "ng-xi18n": "bundles/src/bin/ng_xi18n.js", + "ngc": "bundles/src/bin/ngc.js", + "ngcc": "bundles/ngcc/main-ngcc.js" + }, + "engines": { + "node": "^14.15.0 || >=16.10.0" + }, + "peerDependencies": { + "@angular/compiler": "14.3.0", + "typescript": ">=4.6.2 <4.9" + } + }, + "node_modules/@angular/core": { + "version": "14.3.0", + "resolved": "https://registry.npmjs.org/@angular/core/-/core-14.3.0.tgz", + "integrity": "sha512-wYiwItc0Uyn4FWZ/OAx/Ubp2/WrD3EgUJ476y1XI7yATGPF8n9Ld5iCXT08HOvc4eBcYlDfh90kTXR6/MfhzdQ==", + "dependencies": { + "tslib": "^2.3.0" + }, + "engines": { + "node": "^14.15.0 || >=16.10.0" + }, + "peerDependencies": { + "rxjs": "^6.5.3 || ^7.4.0", + "zone.js": "~0.11.4 || ~0.12.0" + } + }, + "node_modules/@angular/forms": { + "version": "14.3.0", + "resolved": "https://registry.npmjs.org/@angular/forms/-/forms-14.3.0.tgz", + "integrity": "sha512-fBZZC2UFMom2AZPjGQzROPXFWO6kvCsPDKctjJwClVC8PuMrkm+RRyiYRdBbt2qxWHEqOZM2OCQo73xUyZOYHw==", + "dependencies": { + "tslib": "^2.3.0" + }, + "engines": { + "node": "^14.15.0 || >=16.10.0" + }, + "peerDependencies": { + "@angular/common": "14.3.0", + "@angular/core": "14.3.0", + "@angular/platform-browser": "14.3.0", + "rxjs": "^6.5.3 || ^7.4.0" + } + }, + "node_modules/@angular/material": { + "version": "14.2.7", + "resolved": "https://registry.npmjs.org/@angular/material/-/material-14.2.7.tgz", + "integrity": "sha512-WXHh8pEStpgkXZJmYOg2cI8BSHkV82ET4XTJCNPdveumaCn1UYnaNzsXD13kw5z+zmy8CufhFEzdXTrv/yt7KQ==", + "dependencies": { + "tslib": "^2.3.0" + }, + "peerDependencies": { + "@angular/animations": "^14.0.0 || ^15.0.0", + "@angular/cdk": "14.2.7", + "@angular/common": "^14.0.0 || ^15.0.0", + "@angular/core": "^14.0.0 || ^15.0.0", + "@angular/forms": "^14.0.0 || ^15.0.0", + "@angular/platform-browser": "^14.0.0 || ^15.0.0", + "rxjs": "^6.5.3 || ^7.4.0" + } + }, + "node_modules/@angular/platform-browser": { + "version": "14.3.0", + "resolved": "https://registry.npmjs.org/@angular/platform-browser/-/platform-browser-14.3.0.tgz", + "integrity": "sha512-w9Y3740UmTz44T0Egvc+4QV9sEbO61L+aRHbpkLTJdlEGzHByZvxJmJyBYmdqeyTPwc/Zpy7c02frlpfAlyB7A==", + "dependencies": { + "tslib": "^2.3.0" + }, + "engines": { + "node": "^14.15.0 || >=16.10.0" + }, + "peerDependencies": { + "@angular/animations": "14.3.0", + "@angular/common": "14.3.0", + "@angular/core": "14.3.0" + }, + "peerDependenciesMeta": { + "@angular/animations": { + "optional": true + } + } + }, + "node_modules/@angular/platform-browser-dynamic": { + "version": "14.3.0", + "resolved": "https://registry.npmjs.org/@angular/platform-browser-dynamic/-/platform-browser-dynamic-14.3.0.tgz", + "integrity": "sha512-rneZiMrIiYRhrkQvdL40E2ErKRn4Zdo6EtjBM9pAmWeyoM8oMnOZb9gz5vhrkNWg06kVMVg0yKqluP5How7j3A==", + "dependencies": { + "tslib": "^2.3.0" + }, + "engines": { + "node": "^14.15.0 || >=16.10.0" + }, + "peerDependencies": { + "@angular/common": "14.3.0", + "@angular/compiler": "14.3.0", + "@angular/core": "14.3.0", + "@angular/platform-browser": "14.3.0" + } + }, + "node_modules/@angular/router": { + "version": "14.3.0", + "resolved": "https://registry.npmjs.org/@angular/router/-/router-14.3.0.tgz", + "integrity": "sha512-uip0V7w7k7xyxxpTPbr7EuMnYLj3FzJrwkLVJSEw3TMMGHt5VU5t4BBa9veGZOta2C205XFrTAHnp8mD+XYY1w==", + "dependencies": { + "tslib": "^2.3.0" + }, + "engines": { + "node": "^14.15.0 || >=16.10.0" + }, + "peerDependencies": { + "@angular/common": "14.3.0", + "@angular/core": "14.3.0", + "@angular/platform-browser": "14.3.0", + "rxjs": "^6.5.3 || ^7.4.0" + } + }, + "node_modules/@assemblyscript/loader": { + "version": "0.10.1", + "resolved": "https://registry.npmjs.org/@assemblyscript/loader/-/loader-0.10.1.tgz", + "integrity": "sha512-H71nDOOL8Y7kWRLqf6Sums+01Q5msqBW2KhDUTemh1tvY04eSkSXrK0uj/4mmY0Xr16/3zyZmsrxN7CKuRbNRg==" + }, + "node_modules/@babel/code-frame": { + "version": "7.26.2", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.26.2.tgz", + "integrity": "sha512-RJlIHRueQgwWitWgF8OdFYGZX328Ax5BCemNGlqHfplnRT9ESi8JkFlvaVYbS+UubVY6dpv87Fs2u5M29iNFVQ==", + "dependencies": { + "@babel/helper-validator-identifier": "^7.25.9", + "js-tokens": "^4.0.0", + "picocolors": "^1.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/compat-data": { + "version": "7.26.8", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.26.8.tgz", + "integrity": "sha512-oH5UPLMWR3L2wEFLnFJ1TZXqHufiTKAiLfqw5zkhS4dKXLJ10yVztfil/twG8EDTA4F/tvVNw9nOl4ZMslB8rQ==", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/core": { + "version": "7.18.10", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.18.10.tgz", + "integrity": "sha512-JQM6k6ENcBFKVtWvLavlvi/mPcpYZ3+R+2EySDEMSMbp7Mn4FexlbbJVrx2R7Ijhr01T8gyqrOaABWIOgxeUyw==", + "dependencies": { + "@ampproject/remapping": "^2.1.0", + "@babel/code-frame": "^7.18.6", + "@babel/generator": "^7.18.10", + "@babel/helper-compilation-targets": "^7.18.9", + "@babel/helper-module-transforms": "^7.18.9", + "@babel/helpers": "^7.18.9", + "@babel/parser": "^7.18.10", + "@babel/template": "^7.18.10", + "@babel/traverse": "^7.18.10", + "@babel/types": "^7.18.10", + "convert-source-map": "^1.7.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.2", + "json5": "^2.2.1", + "semver": "^6.3.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/babel" + } + }, + "node_modules/@babel/core/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@babel/generator": { + "version": "7.18.12", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.18.12.tgz", + "integrity": "sha512-dfQ8ebCN98SvyL7IxNMCUtZQSq5R7kxgN+r8qYTGDmmSion1hX2C0zq2yo1bsCDhXixokv1SAWTZUMYbO/V5zg==", + "dependencies": { + "@babel/types": "^7.18.10", + "@jridgewell/gen-mapping": "^0.3.2", + "jsesc": "^2.5.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/generator/node_modules/@jridgewell/gen-mapping": { + "version": "0.3.8", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.8.tgz", + "integrity": "sha512-imAbBGkb+ebQyxKgzv5Hu2nmROxoDOXHh80evxdoXNOrvAnVx7zimzc1Oo5h9RlfV4vPXaE2iM5pOFbvOCClWA==", + "dependencies": { + "@jridgewell/set-array": "^1.2.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.24" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/helper-annotate-as-pure": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.18.6.tgz", + "integrity": "sha512-duORpUiYrEpzKIop6iNbjnwKLAKnJ47csTyRACyEmWj0QdUrm5aqNJGHSSEQSUAvNW0ojX0dOmK9dZduvkfeXA==", + "dependencies": { + "@babel/types": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-compilation-targets": { + "version": "7.26.5", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.26.5.tgz", + "integrity": "sha512-IXuyn5EkouFJscIDuFF5EsiSolseme1s0CZB+QxVugqJLYmKdxI1VfIBOst0SUu4rnk2Z7kqTwmoO1lp3HIfnA==", + "dependencies": { + "@babel/compat-data": "^7.26.5", + "@babel/helper-validator-option": "^7.25.9", + "browserslist": "^4.24.0", + "lru-cache": "^5.1.1", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-compilation-targets/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@babel/helper-create-class-features-plugin": { + "version": "7.26.9", + "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.26.9.tgz", + "integrity": "sha512-ubbUqCofvxPRurw5L8WTsCLSkQiVpov4Qx0WMA+jUN+nXBK8ADPlJO1grkFw5CWKC5+sZSOfuGMdX1aI1iT9Sg==", + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.25.9", + "@babel/helper-member-expression-to-functions": "^7.25.9", + "@babel/helper-optimise-call-expression": "^7.25.9", + "@babel/helper-replace-supers": "^7.26.5", + "@babel/helper-skip-transparent-expression-wrappers": "^7.25.9", + "@babel/traverse": "^7.26.9", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-create-class-features-plugin/node_modules/@babel/helper-annotate-as-pure": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.25.9.tgz", + "integrity": "sha512-gv7320KBUFJz1RnylIg5WWYPRXKZ884AGkYpgpWW02TH66Dl+HaC1t1CKd0z3R4b6hdYEcmrNZHUmfCP+1u3/g==", + "dependencies": { + "@babel/types": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-create-class-features-plugin/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@babel/helper-create-regexp-features-plugin": { + "version": "7.26.3", + "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.26.3.tgz", + "integrity": "sha512-G7ZRb40uUgdKOQqPLjfD12ZmGA54PzqDFUv2BKImnC9QIfGhIHKvVML0oN8IUiDq4iRqpq74ABpvOaerfWdong==", + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.25.9", + "regexpu-core": "^6.2.0", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-create-regexp-features-plugin/node_modules/@babel/helper-annotate-as-pure": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.25.9.tgz", + "integrity": "sha512-gv7320KBUFJz1RnylIg5WWYPRXKZ884AGkYpgpWW02TH66Dl+HaC1t1CKd0z3R4b6hdYEcmrNZHUmfCP+1u3/g==", + "dependencies": { + "@babel/types": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-create-regexp-features-plugin/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@babel/helper-define-polyfill-provider": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.3.3.tgz", + "integrity": "sha512-z5aQKU4IzbqCC1XH0nAqfsFLMVSo22SBKUc0BxGrLkolTdPTructy0ToNnlO2zA4j9Q/7pjMZf0DSY+DSTYzww==", + "dependencies": { + "@babel/helper-compilation-targets": "^7.17.7", + "@babel/helper-plugin-utils": "^7.16.7", + "debug": "^4.1.1", + "lodash.debounce": "^4.0.8", + "resolve": "^1.14.2", + "semver": "^6.1.2" + }, + "peerDependencies": { + "@babel/core": "^7.4.0-0" + } + }, + "node_modules/@babel/helper-define-polyfill-provider/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@babel/helper-environment-visitor": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.24.7.tgz", + "integrity": "sha512-DoiN84+4Gnd0ncbBOM9AZENV4a5ZiL39HYMyZJGZ/AZEykHYdJw0wW3kdcsh9/Kn+BRXHLkkklZ51ecPKmI1CQ==", + "dependencies": { + "@babel/types": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-member-expression-to-functions": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.25.9.tgz", + "integrity": "sha512-wbfdZ9w5vk0C0oyHqAJbc62+vet5prjj01jjJ8sKn3j9h3MQQlflEdXYvuqRWjHnM12coDEqiC1IRCi0U/EKwQ==", + "dependencies": { + "@babel/traverse": "^7.25.9", + "@babel/types": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-imports": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.25.9.tgz", + "integrity": "sha512-tnUA4RsrmflIM6W6RFTLFSXITtl0wKjgpnLgXyowocVPrbYrLUXSBXDgTs8BlbmIzIdlBySRQjINYs2BAkiLtw==", + "dependencies": { + "@babel/traverse": "^7.25.9", + "@babel/types": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-transforms": { + "version": "7.26.0", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.26.0.tgz", + "integrity": "sha512-xO+xu6B5K2czEnQye6BHA7DolFFmS3LB7stHZFaOLb1pAwO1HWLS8fXA+eh0A2yIvltPVmx3eNNDBJA2SLHXFw==", + "dependencies": { + "@babel/helper-module-imports": "^7.25.9", + "@babel/helper-validator-identifier": "^7.25.9", + "@babel/traverse": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-optimise-call-expression": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.25.9.tgz", + "integrity": "sha512-FIpuNaz5ow8VyrYcnXQTDRGvV6tTjkNtCK/RYNDXGSLlUD6cBuQTSw43CShGxjvfBTfcUA/r6UhUCbtYqkhcuQ==", + "dependencies": { + "@babel/types": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-plugin-utils": { + "version": "7.26.5", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.26.5.tgz", + "integrity": "sha512-RS+jZcRdZdRFzMyr+wcsaqOmld1/EqTghfaBGQQd/WnRdzdlvSZ//kF7U8VQTxf1ynZ4cjUcYgjVGx13ewNPMg==", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-remap-async-to-generator": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.25.9.tgz", + "integrity": "sha512-IZtukuUeBbhgOcaW2s06OXTzVNJR0ybm4W5xC1opWFFJMZbwRj5LCk+ByYH7WdZPZTt8KnFwA8pvjN2yqcPlgw==", + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.25.9", + "@babel/helper-wrap-function": "^7.25.9", + "@babel/traverse": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-remap-async-to-generator/node_modules/@babel/helper-annotate-as-pure": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.25.9.tgz", + "integrity": "sha512-gv7320KBUFJz1RnylIg5WWYPRXKZ884AGkYpgpWW02TH66Dl+HaC1t1CKd0z3R4b6hdYEcmrNZHUmfCP+1u3/g==", + "dependencies": { + "@babel/types": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-replace-supers": { + "version": "7.26.5", + "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.26.5.tgz", + "integrity": "sha512-bJ6iIVdYX1YooY2X7w1q6VITt+LnUILtNk7zT78ykuwStx8BauCzxvFqFaHjOpW1bVnSUM1PN1f0p5P21wHxvg==", + "dependencies": { + "@babel/helper-member-expression-to-functions": "^7.25.9", + "@babel/helper-optimise-call-expression": "^7.25.9", + "@babel/traverse": "^7.26.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-skip-transparent-expression-wrappers": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.25.9.tgz", + "integrity": "sha512-K4Du3BFa3gvyhzgPcntrkDgZzQaq6uozzcpGbOO1OEJaI+EJdqWIMTLgFgQf6lrfiDFo5FU+BxKepI9RmZqahA==", + "dependencies": { + "@babel/traverse": "^7.25.9", + "@babel/types": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-string-parser": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.25.9.tgz", + "integrity": "sha512-4A/SCr/2KLd5jrtOMFzaKjVtAei3+2r/NChoBNoZ3EyP/+GlhoaEGoWOZUmFmoITP7zOJyHIMm+DYRd8o3PvHA==", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-identifier": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.25.9.tgz", + "integrity": "sha512-Ed61U6XJc3CVRfkERJWDz4dJwKe7iLmmJsbOGu9wSloNSFttHV0I8g6UAgb7qnK5ly5bGLPd4oXZlxCdANBOWQ==", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-option": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.25.9.tgz", + "integrity": "sha512-e/zv1co8pp55dNdEcCynfj9X7nyUKUXoUEwfXqaZt0omVOmDe9oOTdKStH4GmAw6zxMFs50ZayuMfHDKlO7Tfw==", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-wrap-function": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.25.9.tgz", + "integrity": "sha512-ETzz9UTjQSTmw39GboatdymDq4XIQbR8ySgVrylRhPOFpsd+JrKHIuF0de7GCWmem+T4uC5z7EZguod7Wj4A4g==", + "dependencies": { + "@babel/template": "^7.25.9", + "@babel/traverse": "^7.25.9", + "@babel/types": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-wrap-function/node_modules/@babel/template": { + "version": "7.26.9", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.26.9.tgz", + "integrity": "sha512-qyRplbeIpNZhmzOysF/wFMuP9sctmh2cFzRAZOn1YapxBsE1i9bJIY586R/WBLfLcmcBlM8ROBiQURnnNy+zfA==", + "dependencies": { + "@babel/code-frame": "^7.26.2", + "@babel/parser": "^7.26.9", + "@babel/types": "^7.26.9" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helpers": { + "version": "7.26.9", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.26.9.tgz", + "integrity": "sha512-Mz/4+y8udxBKdmzt/UjPACs4G3j5SshJJEFFKxlCGPydG4JAHXxjWjAwjd09tf6oINvl1VfMJo+nB7H2YKQ0dA==", + "dependencies": { + "@babel/template": "^7.26.9", + "@babel/types": "^7.26.9" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helpers/node_modules/@babel/template": { + "version": "7.26.9", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.26.9.tgz", + "integrity": "sha512-qyRplbeIpNZhmzOysF/wFMuP9sctmh2cFzRAZOn1YapxBsE1i9bJIY586R/WBLfLcmcBlM8ROBiQURnnNy+zfA==", + "dependencies": { + "@babel/code-frame": "^7.26.2", + "@babel/parser": "^7.26.9", + "@babel/types": "^7.26.9" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/parser": { + "version": "7.26.9", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.26.9.tgz", + "integrity": "sha512-81NWa1njQblgZbQHxWHpxxCzNsa3ZwvFqpUg7P+NNUU6f3UU2jBEg4OlF/J6rl8+PQGh1q6/zWScd001YwcA5A==", + "dependencies": { + "@babel/types": "^7.26.9" + }, + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.25.9.tgz", + "integrity": "sha512-2qUwwfAFpJLZqxd02YW9btUCZHl+RFvdDkNfZwaIJrvB8Tesjsk8pEQkTvGwZXLqXUx/2oyY3ySRhm6HOXuCug==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.25.9.tgz", + "integrity": "sha512-6xWgLZTJXwilVjlnV7ospI3xi+sl8lN8rXXbBD6vYn3UYDlGsag8wrZkKcSI8G6KgqKP7vNFaDgeDnfAABq61g==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.25.9", + "@babel/helper-skip-transparent-expression-wrappers": "^7.25.9", + "@babel/plugin-transform-optional-chaining": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.13.0" + } + }, + "node_modules/@babel/plugin-proposal-async-generator-functions": { + "version": "7.18.10", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.18.10.tgz", + "integrity": "sha512-1mFuY2TOsR1hxbjCo4QL+qlIjV07p4H4EUYw2J/WCqsvFV6V9X9z9YhXbWndc/4fw+hYGlDT7egYxliMp5O6Ew==", + "deprecated": "This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-async-generator-functions instead.", + "dependencies": { + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-plugin-utils": "^7.18.9", + "@babel/helper-remap-async-to-generator": "^7.18.9", + "@babel/plugin-syntax-async-generators": "^7.8.4" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-class-properties": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.18.6.tgz", + "integrity": "sha512-cumfXOF0+nzZrrN8Rf0t7M+tF6sZc7vhQwYQck9q1/5w2OExlD+b4v4RpMJFaV1Z7WcDRgO6FqvxqxGlwo+RHQ==", + "deprecated": "This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-class-properties instead.", + "dependencies": { + "@babel/helper-create-class-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-class-static-block": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-static-block/-/plugin-proposal-class-static-block-7.21.0.tgz", + "integrity": "sha512-XP5G9MWNUskFuP30IfFSEFB0Z6HzLIUcjYM4bYOPHXl7eiJ9HFv8tWj6TXTN5QODiEhDZAeI4hLok2iHFFV4hw==", + "deprecated": "This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-class-static-block instead.", + "dependencies": { + "@babel/helper-create-class-features-plugin": "^7.21.0", + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/plugin-syntax-class-static-block": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.12.0" + } + }, + "node_modules/@babel/plugin-proposal-dynamic-import": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.18.6.tgz", + "integrity": "sha512-1auuwmK+Rz13SJj36R+jqFPMJWyKEDd7lLSdOj4oJK0UTgGueSAtkrCvz9ewmgyU/P941Rv2fQwZJN8s6QruXw==", + "deprecated": "This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-dynamic-import instead.", + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.6", + "@babel/plugin-syntax-dynamic-import": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-export-namespace-from": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-export-namespace-from/-/plugin-proposal-export-namespace-from-7.18.9.tgz", + "integrity": "sha512-k1NtHyOMvlDDFeb9G5PhUXuGj8m/wiwojgQVEhJ/fsVsMCpLyOP4h0uGEjYJKrRI+EVPlb5Jk+Gt9P97lOGwtA==", + "deprecated": "This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-export-namespace-from instead.", + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.9", + "@babel/plugin-syntax-export-namespace-from": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-json-strings": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.18.6.tgz", + "integrity": "sha512-lr1peyn9kOdbYc0xr0OdHTZ5FMqS6Di+H0Fz2I/JwMzGmzJETNeOFq2pBySw6X/KFL5EWDjlJuMsUGRFb8fQgQ==", + "deprecated": "This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-json-strings instead.", + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.6", + "@babel/plugin-syntax-json-strings": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-logical-assignment-operators": { + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-logical-assignment-operators/-/plugin-proposal-logical-assignment-operators-7.20.7.tgz", + "integrity": "sha512-y7C7cZgpMIjWlKE5T7eJwp+tnRYM89HmRvWM5EQuB5BoHEONjmQ8lSNmBUwOyy/GFRsohJED51YBF79hE1djug==", + "deprecated": "This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-logical-assignment-operators instead.", + "dependencies": { + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-nullish-coalescing-operator": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.18.6.tgz", + "integrity": "sha512-wQxQzxYeJqHcfppzBDnm1yAY0jSRkUXR2z8RePZYrKwMKgMlE8+Z6LUno+bd6LvbGh8Gltvy74+9pIYkr+XkKA==", + "deprecated": "This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-nullish-coalescing-operator instead.", + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.6", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-numeric-separator": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.18.6.tgz", + "integrity": "sha512-ozlZFogPqoLm8WBr5Z8UckIoE4YQ5KESVcNudyXOR8uqIkliTEgJ3RoketfG6pmzLdeZF0H/wjE9/cCEitBl7Q==", + "deprecated": "This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-numeric-separator instead.", + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.6", + "@babel/plugin-syntax-numeric-separator": "^7.10.4" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-object-rest-spread": { + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.20.7.tgz", + "integrity": "sha512-d2S98yCiLxDVmBmE8UjGcfPvNEUbA1U5q5WxaWFUGRzJSVAZqm5W6MbPct0jxnegUZ0niLeNX+IOzEs7wYg9Dg==", + "deprecated": "This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-object-rest-spread instead.", + "dependencies": { + "@babel/compat-data": "^7.20.5", + "@babel/helper-compilation-targets": "^7.20.7", + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/plugin-syntax-object-rest-spread": "^7.8.3", + "@babel/plugin-transform-parameters": "^7.20.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-optional-catch-binding": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.18.6.tgz", + "integrity": "sha512-Q40HEhs9DJQyaZfUjjn6vE8Cv4GmMHCYuMGIWUnlxH6400VGxOuwWsPt4FxXxJkC/5eOzgn0z21M9gMT4MOhbw==", + "deprecated": "This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-optional-catch-binding instead.", + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.6", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-optional-chaining": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.21.0.tgz", + "integrity": "sha512-p4zeefM72gpmEe2fkUr/OnOXpWEf8nAgk7ZYVqqfFiyIG7oFfVZcCrU64hWn5xp4tQ9LkV4bTIa5rD0KANpKNA==", + "deprecated": "This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-optional-chaining instead.", + "dependencies": { + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/helper-skip-transparent-expression-wrappers": "^7.20.0", + "@babel/plugin-syntax-optional-chaining": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-private-methods": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-methods/-/plugin-proposal-private-methods-7.18.6.tgz", + "integrity": "sha512-nutsvktDItsNn4rpGItSNV2sz1XwS+nfU0Rg8aCx3W3NOKVzdMjJRu0O5OkgDp3ZGICSTbgRpxZoWsxoKRvbeA==", + "deprecated": "This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-private-methods instead.", + "dependencies": { + "@babel/helper-create-class-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-private-property-in-object": { + "version": "7.21.11", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.21.11.tgz", + "integrity": "sha512-0QZ8qP/3RLDVBwBFoWAwCtgcDZJVwA5LUJRZU8x2YFfKNuFq161wK3cuGrALu5yiPu+vzwTAg/sMWVNeWeNyaw==", + "deprecated": "This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-private-property-in-object instead.", + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.18.6", + "@babel/helper-create-class-features-plugin": "^7.21.0", + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/plugin-syntax-private-property-in-object": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-unicode-property-regex": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.18.6.tgz", + "integrity": "sha512-2BShG/d5yoZyXZfVePH91urL5wTG6ASZU9M4o03lKK8u8UW1y08OMttBSOADTcJrnPMpvDXRG3G8fyLh4ovs8w==", + "deprecated": "This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-unicode-property-regex instead.", + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-async-generators": { + "version": "7.8.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz", + "integrity": "sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-class-properties": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz", + "integrity": "sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.12.13" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-class-static-block": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-static-block/-/plugin-syntax-class-static-block-7.14.5.tgz", + "integrity": "sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-dynamic-import": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz", + "integrity": "sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-export-namespace-from": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-export-namespace-from/-/plugin-syntax-export-namespace-from-7.8.3.tgz", + "integrity": "sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.3" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-import-assertions": { + "version": "7.26.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.26.0.tgz", + "integrity": "sha512-QCWT5Hh830hK5EQa7XzuqIkQU9tT/whqbDz7kuaZMHFl1inRRg7JnuAEOQ0Ur0QUl0NufCk1msK2BeY79Aj/eg==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-json-strings": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz", + "integrity": "sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-logical-assignment-operators": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz", + "integrity": "sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-nullish-coalescing-operator": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz", + "integrity": "sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-numeric-separator": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz", + "integrity": "sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-object-rest-spread": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz", + "integrity": "sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-optional-catch-binding": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz", + "integrity": "sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-optional-chaining": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz", + "integrity": "sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-private-property-in-object": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-private-property-in-object/-/plugin-syntax-private-property-in-object-7.14.5.tgz", + "integrity": "sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-top-level-await": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz", + "integrity": "sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-arrow-functions": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.25.9.tgz", + "integrity": "sha512-6jmooXYIwn9ca5/RylZADJ+EnSxVUS5sjeJ9UPk6RWRzXCmOJCy6dqItPJFpw2cuCangPK4OYr5uhGKcmrm5Qg==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-async-to-generator": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.18.6.tgz", + "integrity": "sha512-ARE5wZLKnTgPW7/1ftQmSi1CmkqqHo2DNmtztFhvgtOWSDfq0Cq9/9L+KnZNYSNrydBekhW3rwShduf59RoXag==", + "dependencies": { + "@babel/helper-module-imports": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6", + "@babel/helper-remap-async-to-generator": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-block-scoped-functions": { + "version": "7.26.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.26.5.tgz", + "integrity": "sha512-chuTSY+hq09+/f5lMj8ZSYgCFpppV2CbYrhNFJ1BFoXpiWPnnAb7R0MqrafCpN8E1+YRrtM1MXZHJdIx8B6rMQ==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.26.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-block-scoping": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.25.9.tgz", + "integrity": "sha512-1F05O7AYjymAtqbsFETboN1NvBdcnzMerO+zlMyJBEz6WkMdejvGWw9p05iTSjC85RLlBseHHQpYaM4gzJkBGg==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-classes": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.25.9.tgz", + "integrity": "sha512-mD8APIXmseE7oZvZgGABDyM34GUmK45Um2TXiBUt7PnuAxrgoSVf123qUzPxEr/+/BHrRn5NMZCdE2m/1F8DGg==", + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.25.9", + "@babel/helper-compilation-targets": "^7.25.9", + "@babel/helper-plugin-utils": "^7.25.9", + "@babel/helper-replace-supers": "^7.25.9", + "@babel/traverse": "^7.25.9", + "globals": "^11.1.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-classes/node_modules/@babel/helper-annotate-as-pure": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.25.9.tgz", + "integrity": "sha512-gv7320KBUFJz1RnylIg5WWYPRXKZ884AGkYpgpWW02TH66Dl+HaC1t1CKd0z3R4b6hdYEcmrNZHUmfCP+1u3/g==", + "dependencies": { + "@babel/types": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/plugin-transform-computed-properties": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.25.9.tgz", + "integrity": "sha512-HnBegGqXZR12xbcTHlJ9HGxw1OniltT26J5YpfruGqtUHlz/xKf/G2ak9e+t0rVqrjXa9WOhvYPz1ERfMj23AA==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.25.9", + "@babel/template": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-computed-properties/node_modules/@babel/template": { + "version": "7.26.9", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.26.9.tgz", + "integrity": "sha512-qyRplbeIpNZhmzOysF/wFMuP9sctmh2cFzRAZOn1YapxBsE1i9bJIY586R/WBLfLcmcBlM8ROBiQURnnNy+zfA==", + "dependencies": { + "@babel/code-frame": "^7.26.2", + "@babel/parser": "^7.26.9", + "@babel/types": "^7.26.9" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/plugin-transform-destructuring": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.25.9.tgz", + "integrity": "sha512-WkCGb/3ZxXepmMiX101nnGiU+1CAdut8oHyEOHxkKuS1qKpU2SMXE2uSvfz8PBuLd49V6LEsbtyPhWC7fnkgvQ==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-dotall-regex": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.25.9.tgz", + "integrity": "sha512-t7ZQ7g5trIgSRYhI9pIJtRl64KHotutUJsh4Eze5l7olJv+mRSg4/MmbZ0tv1eeqRbdvo/+trvJD/Oc5DmW2cA==", + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.25.9", + "@babel/helper-plugin-utils": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-duplicate-keys": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.25.9.tgz", + "integrity": "sha512-LZxhJ6dvBb/f3x8xwWIuyiAHy56nrRG3PeYTpBkkzkYRRQ6tJLu68lEF5VIqMUZiAV7a8+Tb78nEoMCMcqjXBw==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-exponentiation-operator": { + "version": "7.26.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.26.3.tgz", + "integrity": "sha512-7CAHcQ58z2chuXPWblnn1K6rLDnDWieghSOEmqQsrBenH0P9InCUtOJYD89pvngljmZlJcz3fcmgYsXFNGa1ZQ==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-for-of": { + "version": "7.26.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.26.9.tgz", + "integrity": "sha512-Hry8AusVm8LW5BVFgiyUReuoGzPUpdHQQqJY5bZnbbf+ngOHWuCuYFKw/BqaaWlvEUrF91HMhDtEaI1hZzNbLg==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.26.5", + "@babel/helper-skip-transparent-expression-wrappers": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-function-name": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.25.9.tgz", + "integrity": "sha512-8lP+Yxjv14Vc5MuWBpJsoUCd3hD6V9DgBon2FVYL4jJgbnVQ9fTgYmonchzZJOVNgzEgbxp4OwAf6xz6M/14XA==", + "dependencies": { + "@babel/helper-compilation-targets": "^7.25.9", + "@babel/helper-plugin-utils": "^7.25.9", + "@babel/traverse": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-literals": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.25.9.tgz", + "integrity": "sha512-9N7+2lFziW8W9pBl2TzaNht3+pgMIRP74zizeCSrtnSKVdUl8mAjjOP2OOVQAfZ881P2cNjDj1uAMEdeD50nuQ==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-member-expression-literals": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.25.9.tgz", + "integrity": "sha512-PYazBVfofCQkkMzh2P6IdIUaCEWni3iYEerAsRWuVd8+jlM1S9S9cz1dF9hIzyoZ8IA3+OwVYIp9v9e+GbgZhA==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-modules-amd": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.25.9.tgz", + "integrity": "sha512-g5T11tnI36jVClQlMlt4qKDLlWnG5pP9CSM4GhdRciTNMRgkfpo5cR6b4rGIOYPgRRuFAvwjPQ/Yk+ql4dyhbw==", + "dependencies": { + "@babel/helper-module-transforms": "^7.25.9", + "@babel/helper-plugin-utils": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-modules-commonjs": { + "version": "7.26.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.26.3.tgz", + "integrity": "sha512-MgR55l4q9KddUDITEzEFYn5ZsGDXMSsU9E+kh7fjRXTIC3RHqfCo8RPRbyReYJh44HQ/yomFkqbOFohXvDCiIQ==", + "dependencies": { + "@babel/helper-module-transforms": "^7.26.0", + "@babel/helper-plugin-utils": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-modules-systemjs": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.25.9.tgz", + "integrity": "sha512-hyss7iIlH/zLHaehT+xwiymtPOpsiwIIRlCAOwBB04ta5Tt+lNItADdlXw3jAWZ96VJ2jlhl/c+PNIQPKNfvcA==", + "dependencies": { + "@babel/helper-module-transforms": "^7.25.9", + "@babel/helper-plugin-utils": "^7.25.9", + "@babel/helper-validator-identifier": "^7.25.9", + "@babel/traverse": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-modules-umd": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.25.9.tgz", + "integrity": "sha512-bS9MVObUgE7ww36HEfwe6g9WakQ0KF07mQF74uuXdkoziUPfKyu/nIm663kz//e5O1nPInPFx36z7WJmJ4yNEw==", + "dependencies": { + "@babel/helper-module-transforms": "^7.25.9", + "@babel/helper-plugin-utils": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-named-capturing-groups-regex": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.25.9.tgz", + "integrity": "sha512-oqB6WHdKTGl3q/ItQhpLSnWWOpjUJLsOCLVyeFgeTktkBSCiurvPOsyt93gibI9CmuKvTUEtWmG5VhZD+5T/KA==", + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.25.9", + "@babel/helper-plugin-utils": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/plugin-transform-new-target": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.25.9.tgz", + "integrity": "sha512-U/3p8X1yCSoKyUj2eOBIx3FOn6pElFOKvAAGf8HTtItuPyB+ZeOqfn+mvTtg9ZlOAjsPdK3ayQEjqHjU/yLeVQ==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-object-super": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.25.9.tgz", + "integrity": "sha512-Kj/Gh+Rw2RNLbCK1VAWj2U48yxxqL2x0k10nPtSdRa0O2xnHXalD0s+o1A6a0W43gJ00ANo38jxkQreckOzv5A==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.25.9", + "@babel/helper-replace-supers": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-optional-chaining": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-optional-chaining/-/plugin-transform-optional-chaining-7.25.9.tgz", + "integrity": "sha512-6AvV0FsLULbpnXeBjrY4dmWF8F7gf8QnvTEoO/wX/5xm/xE1Xo8oPuD3MPS+KS9f9XBEAWN7X1aWr4z9HdOr7A==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.25.9", + "@babel/helper-skip-transparent-expression-wrappers": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-parameters": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.25.9.tgz", + "integrity": "sha512-wzz6MKwpnshBAiRmn4jR8LYz/g8Ksg0o80XmwZDlordjwEk9SxBzTWC7F5ef1jhbrbOW2DJ5J6ayRukrJmnr0g==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-property-literals": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.25.9.tgz", + "integrity": "sha512-IvIUeV5KrS/VPavfSM/Iu+RE6llrHrYIKY1yfCzyO/lMXHQ+p7uGhonmGVisv6tSBSVgWzMBohTcvkC9vQcQFA==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-regenerator": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.25.9.tgz", + "integrity": "sha512-vwDcDNsgMPDGP0nMqzahDWE5/MLcX8sv96+wfX7as7LoF/kr97Bo/7fI00lXY4wUXYfVmwIIyG80fGZ1uvt2qg==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.25.9", + "regenerator-transform": "^0.15.2" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-reserved-words": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.25.9.tgz", + "integrity": "sha512-7DL7DKYjn5Su++4RXu8puKZm2XBPHyjWLUidaPEkCUBbE7IPcsrkRHggAOOKydH1dASWdcUBxrkOGNxUv5P3Jg==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-runtime": { + "version": "7.18.10", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.18.10.tgz", + "integrity": "sha512-q5mMeYAdfEbpBAgzl7tBre/la3LeCxmDO1+wMXRdPWbcoMjR3GiXlCLk7JBZVVye0bqTGNMbt0yYVXX1B1jEWQ==", + "dependencies": { + "@babel/helper-module-imports": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.9", + "babel-plugin-polyfill-corejs2": "^0.3.2", + "babel-plugin-polyfill-corejs3": "^0.5.3", + "babel-plugin-polyfill-regenerator": "^0.4.0", + "semver": "^6.3.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-runtime/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@babel/plugin-transform-shorthand-properties": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.25.9.tgz", + "integrity": "sha512-MUv6t0FhO5qHnS/W8XCbHmiRWOphNufpE1IVxhK5kuN3Td9FT1x4rx4K42s3RYdMXCXpfWkGSbCSd0Z64xA7Ng==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-spread": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.25.9.tgz", + "integrity": "sha512-oNknIB0TbURU5pqJFVbOOFspVlrpVwo2H1+HUIsVDvp5VauGGDP1ZEvO8Nn5xyMEs3dakajOxlmkNW7kNgSm6A==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.25.9", + "@babel/helper-skip-transparent-expression-wrappers": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-sticky-regex": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.25.9.tgz", + "integrity": "sha512-WqBUSgeVwucYDP9U/xNRQam7xV8W5Zf+6Eo7T2SRVUFlhRiMNFdFz58u0KZmCVVqs2i7SHgpRnAhzRNmKfi2uA==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-template-literals": { + "version": "7.26.8", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.26.8.tgz", + "integrity": "sha512-OmGDL5/J0CJPJZTHZbi2XpO0tyT2Ia7fzpW5GURwdtp2X3fMmN8au/ej6peC/T33/+CRiIpA8Krse8hFGVmT5Q==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.26.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-typeof-symbol": { + "version": "7.26.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.26.7.tgz", + "integrity": "sha512-jfoTXXZTgGg36BmhqT3cAYK5qkmqvJpvNrPhaK/52Vgjhw4Rq29s9UqpWWV0D6yuRmgiFH/BUVlkl96zJWqnaw==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.26.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-unicode-escapes": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.25.9.tgz", + "integrity": "sha512-s5EDrE6bW97LtxOcGj1Khcx5AaXwiMmi4toFWRDP9/y0Woo6pXC+iyPu/KuhKtfSrNFd7jJB+/fkOtZy6aIC6Q==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-unicode-regex": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.25.9.tgz", + "integrity": "sha512-yoxstj7Rg9dlNn9UQxzk4fcNivwv4nUYz7fYXBaKxvw/lnmPuOm/ikoELygbYq68Bls3D/D+NBPHiLwZdZZ4HA==", + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.25.9", + "@babel/helper-plugin-utils": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/preset-env": { + "version": "7.18.10", + "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.18.10.tgz", + "integrity": "sha512-wVxs1yjFdW3Z/XkNfXKoblxoHgbtUF7/l3PvvP4m02Qz9TZ6uZGxRVYjSQeR87oQmHco9zWitW5J82DJ7sCjvA==", + "dependencies": { + "@babel/compat-data": "^7.18.8", + "@babel/helper-compilation-targets": "^7.18.9", + "@babel/helper-plugin-utils": "^7.18.9", + "@babel/helper-validator-option": "^7.18.6", + "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "^7.18.6", + "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.18.9", + "@babel/plugin-proposal-async-generator-functions": "^7.18.10", + "@babel/plugin-proposal-class-properties": "^7.18.6", + "@babel/plugin-proposal-class-static-block": "^7.18.6", + "@babel/plugin-proposal-dynamic-import": "^7.18.6", + "@babel/plugin-proposal-export-namespace-from": "^7.18.9", + "@babel/plugin-proposal-json-strings": "^7.18.6", + "@babel/plugin-proposal-logical-assignment-operators": "^7.18.9", + "@babel/plugin-proposal-nullish-coalescing-operator": "^7.18.6", + "@babel/plugin-proposal-numeric-separator": "^7.18.6", + "@babel/plugin-proposal-object-rest-spread": "^7.18.9", + "@babel/plugin-proposal-optional-catch-binding": "^7.18.6", + "@babel/plugin-proposal-optional-chaining": "^7.18.9", + "@babel/plugin-proposal-private-methods": "^7.18.6", + "@babel/plugin-proposal-private-property-in-object": "^7.18.6", + "@babel/plugin-proposal-unicode-property-regex": "^7.18.6", + "@babel/plugin-syntax-async-generators": "^7.8.4", + "@babel/plugin-syntax-class-properties": "^7.12.13", + "@babel/plugin-syntax-class-static-block": "^7.14.5", + "@babel/plugin-syntax-dynamic-import": "^7.8.3", + "@babel/plugin-syntax-export-namespace-from": "^7.8.3", + "@babel/plugin-syntax-import-assertions": "^7.18.6", + "@babel/plugin-syntax-json-strings": "^7.8.3", + "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", + "@babel/plugin-syntax-numeric-separator": "^7.10.4", + "@babel/plugin-syntax-object-rest-spread": "^7.8.3", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.3", + "@babel/plugin-syntax-optional-chaining": "^7.8.3", + "@babel/plugin-syntax-private-property-in-object": "^7.14.5", + "@babel/plugin-syntax-top-level-await": "^7.14.5", + "@babel/plugin-transform-arrow-functions": "^7.18.6", + "@babel/plugin-transform-async-to-generator": "^7.18.6", + "@babel/plugin-transform-block-scoped-functions": "^7.18.6", + "@babel/plugin-transform-block-scoping": "^7.18.9", + "@babel/plugin-transform-classes": "^7.18.9", + "@babel/plugin-transform-computed-properties": "^7.18.9", + "@babel/plugin-transform-destructuring": "^7.18.9", + "@babel/plugin-transform-dotall-regex": "^7.18.6", + "@babel/plugin-transform-duplicate-keys": "^7.18.9", + "@babel/plugin-transform-exponentiation-operator": "^7.18.6", + "@babel/plugin-transform-for-of": "^7.18.8", + "@babel/plugin-transform-function-name": "^7.18.9", + "@babel/plugin-transform-literals": "^7.18.9", + "@babel/plugin-transform-member-expression-literals": "^7.18.6", + "@babel/plugin-transform-modules-amd": "^7.18.6", + "@babel/plugin-transform-modules-commonjs": "^7.18.6", + "@babel/plugin-transform-modules-systemjs": "^7.18.9", + "@babel/plugin-transform-modules-umd": "^7.18.6", + "@babel/plugin-transform-named-capturing-groups-regex": "^7.18.6", + "@babel/plugin-transform-new-target": "^7.18.6", + "@babel/plugin-transform-object-super": "^7.18.6", + "@babel/plugin-transform-parameters": "^7.18.8", + "@babel/plugin-transform-property-literals": "^7.18.6", + "@babel/plugin-transform-regenerator": "^7.18.6", + "@babel/plugin-transform-reserved-words": "^7.18.6", + "@babel/plugin-transform-shorthand-properties": "^7.18.6", + "@babel/plugin-transform-spread": "^7.18.9", + "@babel/plugin-transform-sticky-regex": "^7.18.6", + "@babel/plugin-transform-template-literals": "^7.18.9", + "@babel/plugin-transform-typeof-symbol": "^7.18.9", + "@babel/plugin-transform-unicode-escapes": "^7.18.10", + "@babel/plugin-transform-unicode-regex": "^7.18.6", + "@babel/preset-modules": "^0.1.5", + "@babel/types": "^7.18.10", + "babel-plugin-polyfill-corejs2": "^0.3.2", + "babel-plugin-polyfill-corejs3": "^0.5.3", + "babel-plugin-polyfill-regenerator": "^0.4.0", + "core-js-compat": "^3.22.1", + "semver": "^6.3.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/preset-env/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@babel/preset-modules": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.6.tgz", + "integrity": "sha512-ID2yj6K/4lKfhuU3+EX4UvNbIt7eACFbHmNUjzA+ep+B5971CknnA/9DEWKbRokfbbtblxxxXFJJrH47UEAMVg==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.0.0", + "@babel/plugin-proposal-unicode-property-regex": "^7.4.4", + "@babel/plugin-transform-dotall-regex": "^7.4.4", + "@babel/types": "^7.4.4", + "esutils": "^2.0.2" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0 || ^8.0.0-0 <8.0.0" + } + }, + "node_modules/@babel/runtime": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.18.9.tgz", + "integrity": "sha512-lkqXDcvlFT5rvEjiu6+QYO+1GXrEHRo2LOtS7E4GtX5ESIZOgepqsZBVIj6Pv+a6zqsya9VCgiK1KAK4BvJDAw==", + "dependencies": { + "regenerator-runtime": "^0.13.4" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/template": { + "version": "7.18.10", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.18.10.tgz", + "integrity": "sha512-TI+rCtooWHr3QJ27kJxfjutghu44DLnasDMwpDqCXVTal9RLp3RSYNh4NdBrRP2cQAoG9A8juOQl6P6oZG4JxA==", + "dependencies": { + "@babel/code-frame": "^7.18.6", + "@babel/parser": "^7.18.10", + "@babel/types": "^7.18.10" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/traverse": { + "version": "7.26.9", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.26.9.tgz", + "integrity": "sha512-ZYW7L+pL8ahU5fXmNbPF+iZFHCv5scFak7MZ9bwaRPLUhHh7QQEMjZUg0HevihoqCM5iSYHN61EyCoZvqC+bxg==", + "dependencies": { + "@babel/code-frame": "^7.26.2", + "@babel/generator": "^7.26.9", + "@babel/parser": "^7.26.9", + "@babel/template": "^7.26.9", + "@babel/types": "^7.26.9", + "debug": "^4.3.1", + "globals": "^11.1.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/traverse/node_modules/@babel/generator": { + "version": "7.26.9", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.26.9.tgz", + "integrity": "sha512-kEWdzjOAUMW4hAyrzJ0ZaTOu9OmpyDIQicIh0zg0EEcEkYXZb2TjtBhnHi2ViX7PKwZqF4xwqfAm299/QMP3lg==", + "dependencies": { + "@babel/parser": "^7.26.9", + "@babel/types": "^7.26.9", + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.25", + "jsesc": "^3.0.2" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/traverse/node_modules/@babel/template": { + "version": "7.26.9", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.26.9.tgz", + "integrity": "sha512-qyRplbeIpNZhmzOysF/wFMuP9sctmh2cFzRAZOn1YapxBsE1i9bJIY586R/WBLfLcmcBlM8ROBiQURnnNy+zfA==", + "dependencies": { + "@babel/code-frame": "^7.26.2", + "@babel/parser": "^7.26.9", + "@babel/types": "^7.26.9" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/traverse/node_modules/@jridgewell/gen-mapping": { + "version": "0.3.8", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.8.tgz", + "integrity": "sha512-imAbBGkb+ebQyxKgzv5Hu2nmROxoDOXHh80evxdoXNOrvAnVx7zimzc1Oo5h9RlfV4vPXaE2iM5pOFbvOCClWA==", + "dependencies": { + "@jridgewell/set-array": "^1.2.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.24" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/traverse/node_modules/jsesc": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-3.1.0.tgz", + "integrity": "sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==", + "bin": { + "jsesc": "bin/jsesc" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@babel/types": { + "version": "7.26.9", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.26.9.tgz", + "integrity": "sha512-Y3IR1cRnOxOCDvMmNiym7XpXQ93iGDDPHx+Zj+NM+rg0fBaShfQLkg+hKPaZCEvg5N/LeCo4+Rj/i3FuJsIQaw==", + "dependencies": { + "@babel/helper-string-parser": "^7.25.9", + "@babel/helper-validator-identifier": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@colors/colors": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/@colors/colors/-/colors-1.5.0.tgz", + "integrity": "sha512-ooWCrlZP11i8GImSjTHYHLkvFDP48nS4+204nGb1RiX/WXYHmJA2III9/e2DWVabCESdW7hBAEzHRqUn9OUVvQ==", + "devOptional": true, + "engines": { + "node": ">=0.1.90" + } + }, + "node_modules/@csstools/postcss-cascade-layers": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@csstools/postcss-cascade-layers/-/postcss-cascade-layers-1.1.1.tgz", + "integrity": "sha512-+KdYrpKC5TgomQr2DlZF4lDEpHcoxnj5IGddYYfBWJAKfj1JtuHUIqMa+E1pJJ+z3kvDViWMqyqPlG4Ja7amQA==", + "dependencies": { + "@csstools/selector-specificity": "^2.0.2", + "postcss-selector-parser": "^6.0.10" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.2" + } + }, + "node_modules/@csstools/postcss-cascade-layers/node_modules/@csstools/selector-specificity": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@csstools/selector-specificity/-/selector-specificity-2.2.0.tgz", + "integrity": "sha512-+OJ9konv95ClSTOJCmMZqpd5+YGsB2S+x6w3E1oaM8UuR5j8nTNHYSz8c9BEPGDOCMQYIEEGlVPj/VY64iTbGw==", + "engines": { + "node": "^14 || ^16 || >=18" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss-selector-parser": "^6.0.10" + } + }, + "node_modules/@csstools/postcss-cascade-layers/node_modules/postcss-selector-parser": { + "version": "6.1.2", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.1.2.tgz", + "integrity": "sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg==", + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@csstools/postcss-color-function": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@csstools/postcss-color-function/-/postcss-color-function-1.1.1.tgz", + "integrity": "sha512-Bc0f62WmHdtRDjf5f3e2STwRAl89N2CLb+9iAwzrv4L2hncrbDwnQD9PCq0gtAt7pOI2leIV08HIBUd4jxD8cw==", + "dependencies": { + "@csstools/postcss-progressive-custom-properties": "^1.1.0", + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.2" + } + }, + "node_modules/@csstools/postcss-font-format-keywords": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@csstools/postcss-font-format-keywords/-/postcss-font-format-keywords-1.0.1.tgz", + "integrity": "sha512-ZgrlzuUAjXIOc2JueK0X5sZDjCtgimVp/O5CEqTcs5ShWBa6smhWYbS0x5cVc/+rycTDbjjzoP0KTDnUneZGOg==", + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.2" + } + }, + "node_modules/@csstools/postcss-hwb-function": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@csstools/postcss-hwb-function/-/postcss-hwb-function-1.0.2.tgz", + "integrity": "sha512-YHdEru4o3Rsbjmu6vHy4UKOXZD+Rn2zmkAmLRfPet6+Jz4Ojw8cbWxe1n42VaXQhD3CQUXXTooIy8OkVbUcL+w==", + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.2" + } + }, + "node_modules/@csstools/postcss-ic-unit": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@csstools/postcss-ic-unit/-/postcss-ic-unit-1.0.1.tgz", + "integrity": "sha512-Ot1rcwRAaRHNKC9tAqoqNZhjdYBzKk1POgWfhN4uCOE47ebGcLRqXjKkApVDpjifL6u2/55ekkpnFcp+s/OZUw==", + "dependencies": { + "@csstools/postcss-progressive-custom-properties": "^1.1.0", + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.2" + } + }, + "node_modules/@csstools/postcss-is-pseudo-class": { + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/@csstools/postcss-is-pseudo-class/-/postcss-is-pseudo-class-2.0.7.tgz", + "integrity": "sha512-7JPeVVZHd+jxYdULl87lvjgvWldYu+Bc62s9vD/ED6/QTGjy0jy0US/f6BG53sVMTBJ1lzKZFpYmofBN9eaRiA==", + "dependencies": { + "@csstools/selector-specificity": "^2.0.0", + "postcss-selector-parser": "^6.0.10" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.2" + } + }, + "node_modules/@csstools/postcss-is-pseudo-class/node_modules/@csstools/selector-specificity": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@csstools/selector-specificity/-/selector-specificity-2.2.0.tgz", + "integrity": "sha512-+OJ9konv95ClSTOJCmMZqpd5+YGsB2S+x6w3E1oaM8UuR5j8nTNHYSz8c9BEPGDOCMQYIEEGlVPj/VY64iTbGw==", + "engines": { + "node": "^14 || ^16 || >=18" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss-selector-parser": "^6.0.10" + } + }, + "node_modules/@csstools/postcss-is-pseudo-class/node_modules/postcss-selector-parser": { + "version": "6.1.2", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.1.2.tgz", + "integrity": "sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg==", + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@csstools/postcss-nested-calc": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@csstools/postcss-nested-calc/-/postcss-nested-calc-1.0.0.tgz", + "integrity": "sha512-JCsQsw1wjYwv1bJmgjKSoZNvf7R6+wuHDAbi5f/7MbFhl2d/+v+TvBTU4BJH3G1X1H87dHl0mh6TfYogbT/dJQ==", + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.2" + } + }, + "node_modules/@csstools/postcss-normalize-display-values": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@csstools/postcss-normalize-display-values/-/postcss-normalize-display-values-1.0.1.tgz", + "integrity": "sha512-jcOanIbv55OFKQ3sYeFD/T0Ti7AMXc9nM1hZWu8m/2722gOTxFg7xYu4RDLJLeZmPUVQlGzo4jhzvTUq3x4ZUw==", + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.2" + } + }, + "node_modules/@csstools/postcss-oklab-function": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@csstools/postcss-oklab-function/-/postcss-oklab-function-1.1.1.tgz", + "integrity": "sha512-nJpJgsdA3dA9y5pgyb/UfEzE7W5Ka7u0CX0/HIMVBNWzWemdcTH3XwANECU6anWv/ao4vVNLTMxhiPNZsTK6iA==", + "dependencies": { + "@csstools/postcss-progressive-custom-properties": "^1.1.0", + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.2" + } + }, + "node_modules/@csstools/postcss-progressive-custom-properties": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/@csstools/postcss-progressive-custom-properties/-/postcss-progressive-custom-properties-1.3.0.tgz", + "integrity": "sha512-ASA9W1aIy5ygskZYuWams4BzafD12ULvSypmaLJT2jvQ8G0M3I8PRQhC0h7mG0Z3LI05+agZjqSR9+K9yaQQjA==", + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "peerDependencies": { + "postcss": "^8.3" + } + }, + "node_modules/@csstools/postcss-stepped-value-functions": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@csstools/postcss-stepped-value-functions/-/postcss-stepped-value-functions-1.0.1.tgz", + "integrity": "sha512-dz0LNoo3ijpTOQqEJLY8nyaapl6umbmDcgj4AD0lgVQ572b2eqA1iGZYTTWhrcrHztWDDRAX2DGYyw2VBjvCvQ==", + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.2" + } + }, + "node_modules/@csstools/postcss-text-decoration-shorthand": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@csstools/postcss-text-decoration-shorthand/-/postcss-text-decoration-shorthand-1.0.0.tgz", + "integrity": "sha512-c1XwKJ2eMIWrzQenN0XbcfzckOLLJiczqy+YvfGmzoVXd7pT9FfObiSEfzs84bpE/VqfpEuAZ9tCRbZkZxxbdw==", + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.2" + } + }, + "node_modules/@csstools/postcss-trigonometric-functions": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@csstools/postcss-trigonometric-functions/-/postcss-trigonometric-functions-1.0.2.tgz", + "integrity": "sha512-woKaLO///4bb+zZC2s80l+7cm07M7268MsyG3M0ActXXEFi6SuhvriQYcb58iiKGbjwwIU7n45iRLEHypB47Og==", + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.2" + } + }, + "node_modules/@csstools/postcss-unset-value": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@csstools/postcss-unset-value/-/postcss-unset-value-1.0.2.tgz", + "integrity": "sha512-c8J4roPBILnelAsdLr4XOAR/GsTm0GJi4XpcfvoWk3U6KiTCqiFYc63KhRMQQX35jYMp4Ao8Ij9+IZRgMfJp1g==", + "engines": { + "node": "^12 || ^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.2" + } + }, + "node_modules/@discoveryjs/json-ext": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/@discoveryjs/json-ext/-/json-ext-0.5.7.tgz", + "integrity": "sha512-dBVuXR082gk3jsFp7Rd/JI4kytwGHecnCoTtXFb7DB6CNHp4rg5k1bhg0nWdLGLnOV71lmDzGQaLMy8iPLY0pw==", + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/@esbuild/linux-loong64": { + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.15.5.tgz", + "integrity": "sha512-UHkDFCfSGTuXq08oQltXxSZmH1TXyWsL+4QhZDWvvLl6mEJQqk3u7/wq1LjhrrAXYIllaTtRSzUXl4Olkf2J8A==", + "cpu": [ + "loong64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@gar/promisify": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/@gar/promisify/-/promisify-1.1.3.tgz", + "integrity": "sha512-k2Ty1JcVojjJFwrg/ThKi2ujJ7XNLYaFGNB/bWT9wGR+oSMJHMa5w+CUq6p/pVrKeNNgA7pCqEcjSnHVoqJQFw==" + }, + "node_modules/@istanbuljs/load-nyc-config": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz", + "integrity": "sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==", + "dependencies": { + "camelcase": "^5.3.1", + "find-up": "^4.1.0", + "get-package-type": "^0.1.0", + "js-yaml": "^3.13.1", + "resolve-from": "^5.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@istanbuljs/schema": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz", + "integrity": "sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==", + "engines": { + "node": ">=8" + } + }, + "node_modules/@jridgewell/gen-mapping": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.1.1.tgz", + "integrity": "sha512-sQXCasFk+U8lWYEe66WxRDOE9PjVz4vSM51fTu3Hw+ClTpUSQb718772vH3pyS5pShp6lvQM7SxgIDXXXmOX7w==", + "dependencies": { + "@jridgewell/set-array": "^1.0.0", + "@jridgewell/sourcemap-codec": "^1.4.10" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/resolve-uri": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz", + "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==", + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/set-array": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.2.1.tgz", + "integrity": "sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==", + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/source-map": { + "version": "0.3.6", + "resolved": "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.6.tgz", + "integrity": "sha512-1ZJTZebgqllO79ue2bm3rIGud/bOe0pP5BjSRCRxxYkEZS8STV7zN84UBbiYu7jy+eCKSnVIUgoWWE/tt+shMQ==", + "dependencies": { + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.25" + } + }, + "node_modules/@jridgewell/source-map/node_modules/@jridgewell/gen-mapping": { + "version": "0.3.8", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.8.tgz", + "integrity": "sha512-imAbBGkb+ebQyxKgzv5Hu2nmROxoDOXHh80evxdoXNOrvAnVx7zimzc1Oo5h9RlfV4vPXaE2iM5pOFbvOCClWA==", + "dependencies": { + "@jridgewell/set-array": "^1.2.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.24" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.0.tgz", + "integrity": "sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ==" + }, + "node_modules/@jridgewell/trace-mapping": { + "version": "0.3.25", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz", + "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==", + "dependencies": { + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" + } + }, + "node_modules/@leichtgewicht/ip-codec": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@leichtgewicht/ip-codec/-/ip-codec-2.0.5.tgz", + "integrity": "sha512-Vo+PSpZG2/fmgmiNzYK9qWRh8h/CHrwD0mo1h1DzL4yzHNSfWYujGTYsWGreD000gcgmZ7K4Ys6Tx9TxtsKdDw==" + }, + "node_modules/@ng-select/ng-select": { + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/@ng-select/ng-select/-/ng-select-9.1.0.tgz", + "integrity": "sha512-vxSRD2d84H39eqtTJaethlpQ+xkJUU8epQNUr3yPiah23z8MBCqSDE1t0chxi+rXJz7+xoC9qFa1aYnUVFan4w==", + "peer": true, + "dependencies": { + "tslib": "^2.3.1" + }, + "engines": { + "node": ">= 12.20.0", + "npm": ">= 6.0.0" + }, + "peerDependencies": { + "@angular/common": "<15.0.0", + "@angular/core": "<15.0.0", + "@angular/forms": "<15.0.0" + } + }, + "node_modules/@ngageoint/mage.web-core-lib": { + "version": "6.3.0-beta.8", + "resolved": "https://registry.npmjs.org/@ngageoint/mage.web-core-lib/-/mage.web-core-lib-6.3.0-beta.8.tgz", + "integrity": "sha512-iOu7petoJyp07wO59eAkt9QV5ZT3hFioJcCY0PTJZYFEfQNgZYV+RkFvB8zKnAknM7GWNedsdlV7XfOr9r33uA==", + "dependencies": { + "@rollup/plugin-commonjs": "25.0.8", + "@rollup/plugin-node-resolve": "15.3.1", + "rxjs": "7.8.2", + "tslib": "2.8.1" + }, + "peerDependencies": { + "@angular-devkit/architect": "0.1400.0", + "@angular-devkit/build-angular": "14.2.13", + "@angular-devkit/core": "14.2.13", + "@angular-devkit/schematics": "14.2.0", + "@angular/animations": "14.3.0", + "@angular/cdk": "14.2.7", + "@angular/common": "14.3.0", + "@angular/core": "14.3.0", + "@angular/forms": "14.3.0", + "@angular/material": "14.2.7", + "@angular/platform-browser": "14.3.0", + "@ng-select/ng-select": "9.1.0", + "@schematics/angular": "14.2.0", + "ng-packagr": "14.2.0", + "rollup": "2.78.0" + } + }, + "node_modules/@ngageoint/mage.web-core-lib/node_modules/rxjs": { + "version": "7.8.2", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.8.2.tgz", + "integrity": "sha512-dhKf903U/PQZY6boNNtAGdWbG85WAbjT/1xYoZIC7FAY0yWapOBQVsVrDl58W86//e1VpMNBtRV4MaXfdMySFA==", + "dependencies": { + "tslib": "^2.1.0" + } + }, + "node_modules/@ngtools/webpack": { + "version": "14.2.13", + "resolved": "https://registry.npmjs.org/@ngtools/webpack/-/webpack-14.2.13.tgz", + "integrity": "sha512-RQx/rGX7K/+R55x1R6Ax1JzyeHi8cW11dEXpzHWipyuSpusQLUN53F02eMB4VTakXsL3mFNWWy4bX3/LSq8/9w==", + "engines": { + "node": "^14.15.0 || >=16.10.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" + }, + "peerDependencies": { + "@angular/compiler-cli": "^14.0.0", + "typescript": ">=4.6.2 <4.9", + "webpack": "^5.54.0" + } + }, + "node_modules/@nodelib/fs.scandir": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", + "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", + "dependencies": { + "@nodelib/fs.stat": "2.0.5", + "run-parallel": "^1.1.9" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.stat": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", + "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.walk": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", + "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", + "dependencies": { + "@nodelib/fs.scandir": "2.1.5", + "fastq": "^1.6.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@npmcli/fs": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/@npmcli/fs/-/fs-2.1.2.tgz", + "integrity": "sha512-yOJKRvohFOaLqipNtwYB9WugyZKhC/DZC4VYPmpaCzDBrA8YpK3qHZ8/HGscMnE4GqbkLNuVcCnxkeQEdGt6LQ==", + "dependencies": { + "@gar/promisify": "^1.1.3", + "semver": "^7.3.5" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/@npmcli/git": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@npmcli/git/-/git-3.0.2.tgz", + "integrity": "sha512-CAcd08y3DWBJqJDpfuVL0uijlq5oaXaOJEKHKc4wqrjd00gkvTZB+nFuLn+doOOKddaQS9JfqtNoFCO2LCvA3w==", + "dev": true, + "dependencies": { + "@npmcli/promise-spawn": "^3.0.0", + "lru-cache": "^7.4.4", + "mkdirp": "^1.0.4", + "npm-pick-manifest": "^7.0.0", + "proc-log": "^2.0.0", + "promise-inflight": "^1.0.1", + "promise-retry": "^2.0.1", + "semver": "^7.3.5", + "which": "^2.0.2" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/@npmcli/git/node_modules/lru-cache": { + "version": "7.18.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", + "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", + "dev": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/@npmcli/git/node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@npmcli/installed-package-contents": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/@npmcli/installed-package-contents/-/installed-package-contents-1.0.7.tgz", + "integrity": "sha512-9rufe0wnJusCQoLpV9ZPKIVP55itrM5BxOXs10DmdbRfgWtHy1LDyskbwRnBghuB0PrF7pNPOqREVtpz4HqzKw==", + "dev": true, + "dependencies": { + "npm-bundled": "^1.1.1", + "npm-normalize-package-bin": "^1.0.1" + }, + "bin": { + "installed-package-contents": "index.js" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/@npmcli/move-file": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/@npmcli/move-file/-/move-file-2.0.1.tgz", + "integrity": "sha512-mJd2Z5TjYWq/ttPLLGqArdtnC74J6bOzg4rMDnN+p1xTacZ2yPRCk2y0oSWQtygLR9YVQXgOcONrwtnk3JupxQ==", + "deprecated": "This functionality has been moved to @npmcli/fs", + "dependencies": { + "mkdirp": "^1.0.4", + "rimraf": "^3.0.2" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/@npmcli/node-gyp": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@npmcli/node-gyp/-/node-gyp-2.0.0.tgz", + "integrity": "sha512-doNI35wIe3bBaEgrlPfdJPaCpUR89pJWep4Hq3aRdh6gKazIVWfs0jHttvSSoq47ZXgC7h73kDsUl8AoIQUB+A==", + "dev": true, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/@npmcli/promise-spawn": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@npmcli/promise-spawn/-/promise-spawn-3.0.0.tgz", + "integrity": "sha512-s9SgS+p3a9Eohe68cSI3fi+hpcZUmXq5P7w0kMlAsWVtR7XbK3ptkZqKT2cK1zLDObJ3sR+8P59sJE0w/KTL1g==", + "dev": true, + "dependencies": { + "infer-owner": "^1.0.4" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/@npmcli/run-script": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/@npmcli/run-script/-/run-script-4.2.1.tgz", + "integrity": "sha512-7dqywvVudPSrRCW5nTHpHgeWnbBtz8cFkOuKrecm6ih+oO9ciydhWt6OF7HlqupRRmB8Q/gECVdB9LMfToJbRg==", + "dev": true, + "dependencies": { + "@npmcli/node-gyp": "^2.0.0", + "@npmcli/promise-spawn": "^3.0.0", + "node-gyp": "^9.0.0", + "read-package-json-fast": "^2.0.3", + "which": "^2.0.2" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/@npmcli/run-script/node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@rollup/plugin-commonjs": { + "version": "25.0.8", + "resolved": "https://registry.npmjs.org/@rollup/plugin-commonjs/-/plugin-commonjs-25.0.8.tgz", + "integrity": "sha512-ZEZWTK5n6Qde0to4vS9Mr5x/0UZoqCxPVR9KRUjU4kA2sO7GEUn1fop0DAwpO6z0Nw/kJON9bDmSxdWxO/TT1A==", + "dependencies": { + "@rollup/pluginutils": "^5.0.1", + "commondir": "^1.0.1", + "estree-walker": "^2.0.2", + "glob": "^8.0.3", + "is-reference": "1.2.1", + "magic-string": "^0.30.3" + }, + "engines": { + "node": ">=14.0.0" + }, + "peerDependencies": { + "rollup": "^2.68.0||^3.0.0||^4.0.0" + }, + "peerDependenciesMeta": { + "rollup": { + "optional": true + } + } + }, + "node_modules/@rollup/plugin-commonjs/node_modules/magic-string": { + "version": "0.30.17", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.17.tgz", + "integrity": "sha512-sNPKHvyjVf7gyjwS4xGTaW/mCnF8wnjtifKBEhxfZ7E/S8tQ0rssrwGNn6q8JH/ohItJfSQp9mBtQYuTlH5QnA==", + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.5.0" + } + }, + "node_modules/@rollup/plugin-json": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/@rollup/plugin-json/-/plugin-json-4.1.0.tgz", + "integrity": "sha512-yfLbTdNS6amI/2OpmbiBoW12vngr5NW2jCJVZSBEz+H5KfUJZ2M7sDjk0U6GOOdCWFVScShte29o9NezJ53TPw==", + "dependencies": { + "@rollup/pluginutils": "^3.0.8" + }, + "peerDependencies": { + "rollup": "^1.20.0 || ^2.0.0" + } + }, + "node_modules/@rollup/plugin-json/node_modules/@rollup/pluginutils": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-3.1.0.tgz", + "integrity": "sha512-GksZ6pr6TpIjHm8h9lSQ8pi8BE9VeubNT0OMJ3B5uZJ8pz73NPiqOtCog/x2/QzM1ENChPKxMDhiQuRHsqc+lg==", + "dependencies": { + "@types/estree": "0.0.39", + "estree-walker": "^1.0.1", + "picomatch": "^2.2.2" + }, + "engines": { + "node": ">= 8.0.0" + }, + "peerDependencies": { + "rollup": "^1.20.0||^2.0.0" + } + }, + "node_modules/@rollup/plugin-json/node_modules/@types/estree": { + "version": "0.0.39", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.39.tgz", + "integrity": "sha512-EYNwp3bU+98cpU4lAWYYL7Zz+2gryWH1qbdDTidVd6hkiR6weksdbMadyXKXNPEkQFhXM+hVO9ZygomHXp+AIw==" + }, + "node_modules/@rollup/plugin-json/node_modules/estree-walker": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-1.0.1.tgz", + "integrity": "sha512-1fMXF3YP4pZZVozF8j/ZLfvnR8NSIljt56UhbZ5PeeDmmGHpgpdwQt7ITlGvYaQukCvuBRMLEiKiYC+oeIg4cg==" + }, + "node_modules/@rollup/plugin-json/node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/@rollup/plugin-node-resolve": { + "version": "15.3.1", + "resolved": "https://registry.npmjs.org/@rollup/plugin-node-resolve/-/plugin-node-resolve-15.3.1.tgz", + "integrity": "sha512-tgg6b91pAybXHJQMAAwW9VuWBO6Thi+q7BCNARLwSqlmsHz0XYURtGvh/AuwSADXSI4h/2uHbs7s4FzlZDGSGA==", + "dependencies": { + "@rollup/pluginutils": "^5.0.1", + "@types/resolve": "1.20.2", + "deepmerge": "^4.2.2", + "is-module": "^1.0.0", + "resolve": "^1.22.1" + }, + "engines": { + "node": ">=14.0.0" + }, + "peerDependencies": { + "rollup": "^2.78.0||^3.0.0||^4.0.0" + }, + "peerDependenciesMeta": { + "rollup": { + "optional": true + } + } + }, + "node_modules/@rollup/pluginutils": { + "version": "5.1.4", + "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-5.1.4.tgz", + "integrity": "sha512-USm05zrsFxYLPdWWq+K3STlWiT/3ELn3RcV5hJMghpeAIhxfsUIg6mt12CBJBInWMV4VneoV7SfGv8xIwo2qNQ==", + "dependencies": { + "@types/estree": "^1.0.0", + "estree-walker": "^2.0.2", + "picomatch": "^4.0.2" + }, + "engines": { + "node": ">=14.0.0" + }, + "peerDependencies": { + "rollup": "^1.20.0||^2.0.0||^3.0.0||^4.0.0" + }, + "peerDependenciesMeta": { + "rollup": { + "optional": true + } + } + }, + "node_modules/@schematics/angular": { + "version": "14.2.0", + "resolved": "https://registry.npmjs.org/@schematics/angular/-/angular-14.2.0.tgz", + "integrity": "sha512-9y5nnL4XpxhRIrkV2C8H12LbLEVhQP8VK7/V7sbXJ/V4ioUi5BT6P6t3qLcFNOrk9/+mJIVbsXdZkXnyxy2dRA==", + "peer": true, + "dependencies": { + "@angular-devkit/core": "14.2.0", + "@angular-devkit/schematics": "14.2.0", + "jsonc-parser": "3.1.0" + }, + "engines": { + "node": "^14.15.0 || >=16.10.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" + } + }, + "node_modules/@schematics/angular/node_modules/@angular-devkit/core": { + "version": "14.2.0", + "resolved": "https://registry.npmjs.org/@angular-devkit/core/-/core-14.2.0.tgz", + "integrity": "sha512-IwiS6uDs3drR4i3nuqVinh5jtI1SHIyn/OaoWL6t3V7Y6b65BdJN1liyd+WBUEZmEwGCkY2/FjnLx1G8Dflc8A==", + "peer": true, + "dependencies": { + "ajv": "8.11.0", + "ajv-formats": "2.1.1", + "jsonc-parser": "3.1.0", + "rxjs": "6.6.7", + "source-map": "0.7.4" + }, + "engines": { + "node": "^14.15.0 || >=16.10.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" + }, + "peerDependencies": { + "chokidar": "^3.5.2" + }, + "peerDependenciesMeta": { + "chokidar": { + "optional": true + } + } + }, + "node_modules/@schematics/angular/node_modules/rxjs": { + "version": "6.6.7", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", + "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", + "peer": true, + "dependencies": { + "tslib": "^1.9.0" + }, + "engines": { + "npm": ">=2.0.0" + } + }, + "node_modules/@schematics/angular/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "peer": true + }, + "node_modules/@socket.io/component-emitter": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@socket.io/component-emitter/-/component-emitter-3.1.2.tgz", + "integrity": "sha512-9BCxFwvbGg/RsZK9tjXd8s4UcwR0MWeFQ1XEKIQVVvAGJyINdrqKMcTRyLoK8Rse1GjzLV9cwjWV1olXRWEXVA==", + "devOptional": true + }, + "node_modules/@tootallnate/once": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-2.0.0.tgz", + "integrity": "sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A==", + "dev": true, + "engines": { + "node": ">= 10" + } + }, + "node_modules/@types/body-parser": { + "version": "1.19.5", + "resolved": "https://registry.npmjs.org/@types/body-parser/-/body-parser-1.19.5.tgz", + "integrity": "sha512-fB3Zu92ucau0iQ0JMCFQE7b/dv8Ot07NI3KaZIkIUNXq82k4eBAqUaneXfleGY9JWskeS9y+u0nXMyspcuQrCg==", + "dependencies": { + "@types/connect": "*", + "@types/node": "*" + } + }, + "node_modules/@types/bonjour": { + "version": "3.5.13", + "resolved": "https://registry.npmjs.org/@types/bonjour/-/bonjour-3.5.13.tgz", + "integrity": "sha512-z9fJ5Im06zvUL548KvYNecEVlA7cVDkGUi6kZusb04mpyEFKCIZJvloCcmpmLaIahDpOQGHaHmG6imtPMmPXGQ==", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/connect": { + "version": "3.4.38", + "resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.38.tgz", + "integrity": "sha512-K6uROf1LD88uDQqJCktA4yzL1YYAK6NgfsI0v/mTgyPKWsX1CnJ0XPSDhViejru1GcRkLWb8RlzFYJRqGUbaug==", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/connect-history-api-fallback": { + "version": "1.5.4", + "resolved": "https://registry.npmjs.org/@types/connect-history-api-fallback/-/connect-history-api-fallback-1.5.4.tgz", + "integrity": "sha512-n6Cr2xS1h4uAulPRdlw6Jl6s1oG8KrVilPN2yUITEs+K48EzMJJ3W1xy8K5eWuFvjp3R74AOIGSmp2UfBJ8HFw==", + "dependencies": { + "@types/express-serve-static-core": "*", + "@types/node": "*" + } + }, + "node_modules/@types/cors": { + "version": "2.8.17", + "resolved": "https://registry.npmjs.org/@types/cors/-/cors-2.8.17.tgz", + "integrity": "sha512-8CGDvrBj1zgo2qE+oS3pOCyYNqCPryMWY2bGfwA0dcfopWGgxs+78df0Rs3rc9THP4JkOhLsAa+15VdpAqkcUA==", + "devOptional": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/eslint": { + "version": "9.6.1", + "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-9.6.1.tgz", + "integrity": "sha512-FXx2pKgId/WyYo2jXw63kk7/+TY7u7AziEJxJAnSFzHlqTAS3Ync6SvgYAN/k4/PQpnnVuzoMuVnByKK2qp0ag==", + "dependencies": { + "@types/estree": "*", + "@types/json-schema": "*" + } + }, + "node_modules/@types/eslint-scope": { + "version": "3.7.7", + "resolved": "https://registry.npmjs.org/@types/eslint-scope/-/eslint-scope-3.7.7.tgz", + "integrity": "sha512-MzMFlSLBqNF2gcHWO0G1vP/YQyfvrxZ0bF+u7mzUdZ1/xK4A4sru+nraZz5i3iEIk1l1uyicaDVTB4QbbEkAYg==", + "dependencies": { + "@types/eslint": "*", + "@types/estree": "*" + } + }, + "node_modules/@types/estree": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.6.tgz", + "integrity": "sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw==" + }, + "node_modules/@types/express": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/@types/express/-/express-4.17.21.tgz", + "integrity": "sha512-ejlPM315qwLpaQlQDTjPdsUFSc6ZsP4AN6AlWnogPjQ7CVi7PYF3YVz+CY3jE2pwYf7E/7HlDAN0rV2GxTG0HQ==", + "dependencies": { + "@types/body-parser": "*", + "@types/express-serve-static-core": "^4.17.33", + "@types/qs": "*", + "@types/serve-static": "*" + } + }, + "node_modules/@types/express-serve-static-core": { + "version": "5.0.6", + "resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-5.0.6.tgz", + "integrity": "sha512-3xhRnjJPkULekpSzgtoNYYcTWgEZkp4myc+Saevii5JPnHNvHMRlBSHDbs7Bh1iPPoVTERHEZXyhyLbMEsExsA==", + "dependencies": { + "@types/node": "*", + "@types/qs": "*", + "@types/range-parser": "*", + "@types/send": "*" + } + }, + "node_modules/@types/express/node_modules/@types/express-serve-static-core": { + "version": "4.19.6", + "resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.19.6.tgz", + "integrity": "sha512-N4LZ2xG7DatVqhCZzOGb1Yi5lMbXSZcmdLDe9EzSndPV2HpWYWzRbaerl2n27irrm94EPpprqa8KpskPT085+A==", + "dependencies": { + "@types/node": "*", + "@types/qs": "*", + "@types/range-parser": "*", + "@types/send": "*" + } + }, + "node_modules/@types/geojson": { + "version": "7946.0.16", + "resolved": "https://registry.npmjs.org/@types/geojson/-/geojson-7946.0.16.tgz", + "integrity": "sha512-6C8nqWur3j98U6+lXDfTUWIfgvZU+EumvpHKcYjujKH7woYyLj2sUmff0tRhrqM7BohUw7Pz3ZB1jj2gW9Fvmg==", + "dev": true + }, + "node_modules/@types/http-errors": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/@types/http-errors/-/http-errors-2.0.4.tgz", + "integrity": "sha512-D0CFMMtydbJAegzOyHjtiKPLlvnm3iTZyZRSZoLq2mRhDdmLfIWOCYPfQJ4cu2erKghU++QvjcUjp/5h7hESpA==" + }, + "node_modules/@types/http-proxy": { + "version": "1.17.16", + "resolved": "https://registry.npmjs.org/@types/http-proxy/-/http-proxy-1.17.16.tgz", + "integrity": "sha512-sdWoUajOB1cd0A8cRRQ1cfyWNbmFKLAqBB89Y8x5iYyG/mkJHc0YUH8pdWBy2omi9qtCpiIgGjuwO0dQST2l5w==", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/jasmine": { + "version": "3.5.14", + "resolved": "https://registry.npmjs.org/@types/jasmine/-/jasmine-3.5.14.tgz", + "integrity": "sha512-Fkgk536sHPqcOtd+Ow+WiUNuk0TSo/BntKkF8wSvcd6M2FvPjeXcUE6Oz/bwDZiUZEaXLslAgw00Q94Pnx6T4w==", + "dev": true + }, + "node_modules/@types/jasminewd2": { + "version": "2.0.13", + "resolved": "https://registry.npmjs.org/@types/jasminewd2/-/jasminewd2-2.0.13.tgz", + "integrity": "sha512-aJ3wj8tXMpBrzQ5ghIaqMisD8C3FIrcO6sDKHqFbuqAsI7yOxj0fA7MrRCPLZHIVUjERIwsMmGn/vB0UQ9u0Hg==", + "dev": true, + "dependencies": { + "@types/jasmine": "*" + } + }, + "node_modules/@types/json-schema": { + "version": "7.0.15", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.15.tgz", + "integrity": "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==" + }, + "node_modules/@types/mime": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/@types/mime/-/mime-1.3.5.tgz", + "integrity": "sha512-/pyBZWSLD2n0dcHE3hq8s8ZvcETHtEuF+3E7XVt0Ig2nvsVQXdghHVcEkIWjy9A0wKfTn97a/PSDYohKIlnP/w==" + }, + "node_modules/@types/node": { + "version": "12.20.55", + "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.55.tgz", + "integrity": "sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==" + }, + "node_modules/@types/node-forge": { + "version": "1.3.11", + "resolved": "https://registry.npmjs.org/@types/node-forge/-/node-forge-1.3.11.tgz", + "integrity": "sha512-FQx220y22OKNTqaByeBGqHWYz4cl94tpcxeFdvBo3wjG6XPBuZ0BNgNZRV5J5TFmmcsJ4IzsLkmGRiQbnYsBEQ==", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/parse-json": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.2.tgz", + "integrity": "sha512-dISoDXWWQwUquiKsyZ4Ng+HX2KsPL7LyHKHQwgGFEA3IaKac4Obd+h2a/a6waisAoepJlBcx9paWqjA8/HVjCw==" + }, + "node_modules/@types/q": { + "version": "0.0.32", + "resolved": "https://registry.npmjs.org/@types/q/-/q-0.0.32.tgz", + "integrity": "sha512-qYi3YV9inU/REEfxwVcGZzbS3KG/Xs90lv0Pr+lDtuVjBPGd1A+eciXzVSaRvLify132BfcvhvEjeVahrUl0Ug==", + "devOptional": true + }, + "node_modules/@types/qs": { + "version": "6.9.18", + "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.18.tgz", + "integrity": "sha512-kK7dgTYDyGqS+e2Q4aK9X3D7q234CIZ1Bv0q/7Z5IwRDoADNU81xXJK/YVyLbLTZCoIwUoDoffFeF+p/eIklAA==" + }, + "node_modules/@types/range-parser": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/@types/range-parser/-/range-parser-1.2.7.tgz", + "integrity": "sha512-hKormJbkJqzQGhziax5PItDUTMAM9uE2XXQmM37dyd4hVM+5aVl7oVxMVUiVQn2oCQFN/LKCZdvSM0pFRqbSmQ==" + }, + "node_modules/@types/resolve": { + "version": "1.20.2", + "resolved": "https://registry.npmjs.org/@types/resolve/-/resolve-1.20.2.tgz", + "integrity": "sha512-60BCwRFOZCQhDncwQdxxeOEEkbc5dIMccYLwbxsS4TUNeVECQ/pBJ0j09mrHOl/JJvpRPGwO9SvE4nR2Nb/a4Q==" + }, + "node_modules/@types/retry": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/@types/retry/-/retry-0.12.0.tgz", + "integrity": "sha512-wWKOClTTiizcZhXnPY4wikVAwmdYHp8q6DmC+EJUzAMsycb7HB32Kh9RN4+0gExjmPmZSAQjgURXIGATPegAvA==" + }, + "node_modules/@types/selenium-webdriver": { + "version": "3.0.26", + "resolved": "https://registry.npmjs.org/@types/selenium-webdriver/-/selenium-webdriver-3.0.26.tgz", + "integrity": "sha512-dyIGFKXfUFiwkMfNGn1+F6b80ZjR3uSYv1j6xVJSDlft5waZ2cwkHW4e7zNzvq7hiEackcgvBpmnXZrI1GltPg==", + "devOptional": true + }, + "node_modules/@types/send": { + "version": "0.17.4", + "resolved": "https://registry.npmjs.org/@types/send/-/send-0.17.4.tgz", + "integrity": "sha512-x2EM6TJOybec7c52BX0ZspPodMsQUd5L6PRwOunVyVUhXiBSKf3AezDL8Dgvgt5o0UfKNfuA0eMLr2wLT4AiBA==", + "dependencies": { + "@types/mime": "^1", + "@types/node": "*" + } + }, + "node_modules/@types/serve-index": { + "version": "1.9.4", + "resolved": "https://registry.npmjs.org/@types/serve-index/-/serve-index-1.9.4.tgz", + "integrity": "sha512-qLpGZ/c2fhSs5gnYsQxtDEq3Oy8SXPClIXkW5ghvAvsNuVSA8k+gCONcUCS/UjLEYvYps+e8uBtfgXgvhwfNug==", + "dependencies": { + "@types/express": "*" + } + }, + "node_modules/@types/serve-static": { + "version": "1.15.7", + "resolved": "https://registry.npmjs.org/@types/serve-static/-/serve-static-1.15.7.tgz", + "integrity": "sha512-W8Ym+h8nhuRwaKPaDw34QUkwsGi6Rc4yYqvKFo5rm2FUEhCFbzVWrxXUxuKK8TASjWsysJY0nsmNCGhCOIsrOw==", + "dependencies": { + "@types/http-errors": "*", + "@types/node": "*", + "@types/send": "*" + } + }, + "node_modules/@types/sockjs": { + "version": "0.3.36", + "resolved": "https://registry.npmjs.org/@types/sockjs/-/sockjs-0.3.36.tgz", + "integrity": "sha512-MK9V6NzAS1+Ud7JV9lJLFqW85VbC9dq3LmwZCuBe4wBDgKC0Kj/jd8Xl+nSviU+Qc3+m7umHHyHg//2KSa0a0Q==", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/ws": { + "version": "8.5.14", + "resolved": "https://registry.npmjs.org/@types/ws/-/ws-8.5.14.tgz", + "integrity": "sha512-bd/YFLW+URhBzMXurx7lWByOu+xzU9+kb3RboOteXYDfW+tr+JZa99OyNmPINEGB/ahzKrEuc8rcv4gnpJmxTw==", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@webassemblyjs/ast": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.11.1.tgz", + "integrity": "sha512-ukBh14qFLjxTQNTXocdyksN5QdM28S1CxHt2rdskFyL+xFV7VremuBLVbmCePj+URalXBENx/9Lm7lnhihtCSw==", + "dependencies": { + "@webassemblyjs/helper-numbers": "1.11.1", + "@webassemblyjs/helper-wasm-bytecode": "1.11.1" + } + }, + "node_modules/@webassemblyjs/floating-point-hex-parser": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.11.1.tgz", + "integrity": "sha512-iGRfyc5Bq+NnNuX8b5hwBrRjzf0ocrJPI6GWFodBFzmFnyvrQ83SHKhmilCU/8Jv67i4GJZBMhEzltxzcNagtQ==" + }, + "node_modules/@webassemblyjs/helper-api-error": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.11.1.tgz", + "integrity": "sha512-RlhS8CBCXfRUR/cwo2ho9bkheSXG0+NwooXcc3PAILALf2QLdFyj7KGsKRbVc95hZnhnERon4kW/D3SZpp6Tcg==" + }, + "node_modules/@webassemblyjs/helper-buffer": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.11.1.tgz", + "integrity": "sha512-gwikF65aDNeeXa8JxXa2BAk+REjSyhrNC9ZwdT0f8jc4dQQeDQ7G4m0f2QCLPJiMTTO6wfDmRmj/pW0PsUvIcA==" + }, + "node_modules/@webassemblyjs/helper-numbers": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.1.tgz", + "integrity": "sha512-vDkbxiB8zfnPdNK9Rajcey5C0w+QJugEglN0of+kmO8l7lDb77AnlKYQF7aarZuCrv+l0UvqL+68gSDr3k9LPQ==", + "dependencies": { + "@webassemblyjs/floating-point-hex-parser": "1.11.1", + "@webassemblyjs/helper-api-error": "1.11.1", + "@xtuc/long": "4.2.2" + } + }, + "node_modules/@webassemblyjs/helper-wasm-bytecode": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.1.tgz", + "integrity": "sha512-PvpoOGiJwXeTrSf/qfudJhwlvDQxFgelbMqtq52WWiXC6Xgg1IREdngmPN3bs4RoO83PnL/nFrxucXj1+BX62Q==" + }, + "node_modules/@webassemblyjs/helper-wasm-section": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.11.1.tgz", + "integrity": "sha512-10P9No29rYX1j7F3EVPX3JvGPQPae+AomuSTPiF9eBQeChHI6iqjMIwR9JmOJXwpnn/oVGDk7I5IlskuMwU/pg==", + "dependencies": { + "@webassemblyjs/ast": "1.11.1", + "@webassemblyjs/helper-buffer": "1.11.1", + "@webassemblyjs/helper-wasm-bytecode": "1.11.1", + "@webassemblyjs/wasm-gen": "1.11.1" + } + }, + "node_modules/@webassemblyjs/ieee754": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.11.1.tgz", + "integrity": "sha512-hJ87QIPtAMKbFq6CGTkZYJivEwZDbQUgYd3qKSadTNOhVY7p+gfP6Sr0lLRVTaG1JjFj+r3YchoqRYxNH3M0GQ==", + "dependencies": { + "@xtuc/ieee754": "^1.2.0" + } + }, + "node_modules/@webassemblyjs/leb128": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.11.1.tgz", + "integrity": "sha512-BJ2P0hNZ0u+Th1YZXJpzW6miwqQUGcIHT1G/sf72gLVD9DZ5AdYTqPNbHZh6K1M5VmKvFXwGSWZADz+qBWxeRw==", + "dependencies": { + "@xtuc/long": "4.2.2" + } + }, + "node_modules/@webassemblyjs/utf8": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.11.1.tgz", + "integrity": "sha512-9kqcxAEdMhiwQkHpkNiorZzqpGrodQQ2IGrHHxCy+Ozng0ofyMA0lTqiLkVs1uzTRejX+/O0EOT7KxqVPuXosQ==" + }, + "node_modules/@webassemblyjs/wasm-edit": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.11.1.tgz", + "integrity": "sha512-g+RsupUC1aTHfR8CDgnsVRVZFJqdkFHpsHMfJuWQzWU3tvnLC07UqHICfP+4XyL2tnr1amvl1Sdp06TnYCmVkA==", + "dependencies": { + "@webassemblyjs/ast": "1.11.1", + "@webassemblyjs/helper-buffer": "1.11.1", + "@webassemblyjs/helper-wasm-bytecode": "1.11.1", + "@webassemblyjs/helper-wasm-section": "1.11.1", + "@webassemblyjs/wasm-gen": "1.11.1", + "@webassemblyjs/wasm-opt": "1.11.1", + "@webassemblyjs/wasm-parser": "1.11.1", + "@webassemblyjs/wast-printer": "1.11.1" + } + }, + "node_modules/@webassemblyjs/wasm-gen": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.11.1.tgz", + "integrity": "sha512-F7QqKXwwNlMmsulj6+O7r4mmtAlCWfO/0HdgOxSklZfQcDu0TpLiD1mRt/zF25Bk59FIjEuGAIyn5ei4yMfLhA==", + "dependencies": { + "@webassemblyjs/ast": "1.11.1", + "@webassemblyjs/helper-wasm-bytecode": "1.11.1", + "@webassemblyjs/ieee754": "1.11.1", + "@webassemblyjs/leb128": "1.11.1", + "@webassemblyjs/utf8": "1.11.1" + } + }, + "node_modules/@webassemblyjs/wasm-opt": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.11.1.tgz", + "integrity": "sha512-VqnkNqnZlU5EB64pp1l7hdm3hmQw7Vgqa0KF/KCNO9sIpI6Fk6brDEiX+iCOYrvMuBWDws0NkTOxYEb85XQHHw==", + "dependencies": { + "@webassemblyjs/ast": "1.11.1", + "@webassemblyjs/helper-buffer": "1.11.1", + "@webassemblyjs/wasm-gen": "1.11.1", + "@webassemblyjs/wasm-parser": "1.11.1" + } + }, + "node_modules/@webassemblyjs/wasm-parser": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.11.1.tgz", + "integrity": "sha512-rrBujw+dJu32gYB7/Lup6UhdkPx9S9SnobZzRVL7VcBH9Bt9bCBLEuX/YXOOtBsOZ4NQrRykKhffRWHvigQvOA==", + "dependencies": { + "@webassemblyjs/ast": "1.11.1", + "@webassemblyjs/helper-api-error": "1.11.1", + "@webassemblyjs/helper-wasm-bytecode": "1.11.1", + "@webassemblyjs/ieee754": "1.11.1", + "@webassemblyjs/leb128": "1.11.1", + "@webassemblyjs/utf8": "1.11.1" + } + }, + "node_modules/@webassemblyjs/wast-printer": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.11.1.tgz", + "integrity": "sha512-IQboUWM4eKzWW+N/jij2sRatKMh99QEelo3Eb2q0qXkvPRISAj8Qxtmw5itwqK+TTkBuUIE45AxYPToqPtL5gg==", + "dependencies": { + "@webassemblyjs/ast": "1.11.1", + "@xtuc/long": "4.2.2" + } + }, + "node_modules/@xtuc/ieee754": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz", + "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==" + }, + "node_modules/@xtuc/long": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/@xtuc/long/-/long-4.2.2.tgz", + "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==" + }, + "node_modules/@yarnpkg/lockfile": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@yarnpkg/lockfile/-/lockfile-1.1.0.tgz", + "integrity": "sha512-GpSwvyXOcOOlV70vbnzjj4fW5xW/FdUF6nQEt1ENy7m4ZCczi1+/buVUPAqmGfqznsORNFzUMjctTIp8a9tuCQ==", + "dev": true + }, + "node_modules/abab": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/abab/-/abab-2.0.6.tgz", + "integrity": "sha512-j2afSsaIENvHZN2B8GOpF566vZ5WVk5opAiMTvWgaQT8DkbOqsTfvNAvHoRGU2zzP8cPoqys+xHTRDWW8L+/BA==", + "deprecated": "Use your platform's native atob() and btoa() methods instead" + }, + "node_modules/abbrev": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", + "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==", + "dev": true + }, + "node_modules/accepts": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz", + "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==", + "dependencies": { + "mime-types": "~2.1.34", + "negotiator": "0.6.3" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/accepts/node_modules/negotiator": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", + "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/acorn": { + "version": "8.14.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.14.0.tgz", + "integrity": "sha512-cl669nCJTZBsL97OF4kUQm5g5hC2uihk0NxY3WENAC0TYdILVkAyHymAntgxGkl7K+t0cXIrH5siy5S4XkFycA==", + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/acorn-import-assertions": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/acorn-import-assertions/-/acorn-import-assertions-1.9.0.tgz", + "integrity": "sha512-cmMwop9x+8KFhxvKrKfPYmN6/pKTYYHBqLa0DfvVZcKMJWNyWLnaqND7dx/qn66R7ewM1UX5XMaDVP5wlVTaVA==", + "deprecated": "package has been renamed to acorn-import-attributes", + "peerDependencies": { + "acorn": "^8" + } + }, + "node_modules/adjust-sourcemap-loader": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/adjust-sourcemap-loader/-/adjust-sourcemap-loader-4.0.0.tgz", + "integrity": "sha512-OXwN5b9pCUXNQHJpwwD2qP40byEmSgzj8B4ydSN0uMNYWiFmJ6x6KwUllMmfk8Rwu/HJDFR7U8ubsWBoN0Xp0A==", + "dependencies": { + "loader-utils": "^2.0.0", + "regex-parser": "^2.2.11" + }, + "engines": { + "node": ">=8.9" + } + }, + "node_modules/adjust-sourcemap-loader/node_modules/loader-utils": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.4.tgz", + "integrity": "sha512-xXqpXoINfFhgua9xiqD8fPFHgkoq1mmmpE92WlDbm9rNRd/EbRb+Gqf908T2DMfuHjjJlksiK2RbHVOdD/MqSw==", + "dependencies": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^2.1.2" + }, + "engines": { + "node": ">=8.9.0" + } + }, + "node_modules/adm-zip": { + "version": "0.5.16", + "resolved": "https://registry.npmjs.org/adm-zip/-/adm-zip-0.5.16.tgz", + "integrity": "sha512-TGw5yVi4saajsSEgz25grObGHEUaDrniwvA2qwSC060KfqGPdglhvPMA2lPIoxs3PQIItj2iag35fONcQqgUaQ==", + "devOptional": true, + "engines": { + "node": ">=12.0" + } + }, + "node_modules/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==", + "dependencies": { + "debug": "4" + }, + "engines": { + "node": ">= 6.0.0" + } + }, + "node_modules/agentkeepalive": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/agentkeepalive/-/agentkeepalive-4.6.0.tgz", + "integrity": "sha512-kja8j7PjmncONqaTsB8fQ+wE2mSU2DJ9D4XKoJ5PFWIdRMa6SLSN1ff4mOr4jCbfRSsxR4keIiySJU0N9T5hIQ==", + "dev": true, + "dependencies": { + "humanize-ms": "^1.2.1" + }, + "engines": { + "node": ">= 8.0.0" + } + }, + "node_modules/aggregate-error": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", + "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", + "dependencies": { + "clean-stack": "^2.0.0", + "indent-string": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/ajv": { + "version": "8.11.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.11.0.tgz", + "integrity": "sha512-wGgprdCvMalC0BztXvitD2hC04YffAvtsUn93JbGXYLAtCUO4xd17mCCZQxUOItiBwZvJScWo8NIvQMQ71rdpg==", + "dependencies": { + "fast-deep-equal": "^3.1.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/ajv-formats": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ajv-formats/-/ajv-formats-2.1.1.tgz", + "integrity": "sha512-Wx0Kx52hxE7C18hkMEggYlEifqWZtYaRgouJor+WMdPnQyEK13vgEWyVNup7SoeeoLMsr4kf5h6dOW11I15MUA==", + "dependencies": { + "ajv": "^8.0.0" + }, + "peerDependencies": { + "ajv": "^8.0.0" + }, + "peerDependenciesMeta": { + "ajv": { + "optional": true + } + } + }, + "node_modules/ajv-keywords": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz", + "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", + "dependencies": { + "fast-deep-equal": "^3.1.3" + }, + "peerDependencies": { + "ajv": "^8.8.2" + } + }, + "node_modules/ansi-colors": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.3.tgz", + "integrity": "sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==", + "engines": { + "node": ">=6" + } + }, + "node_modules/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==", + "dependencies": { + "type-fest": "^0.21.3" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/ansi-html-community": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/ansi-html-community/-/ansi-html-community-0.0.8.tgz", + "integrity": "sha512-1APHAyr3+PCamwNw3bXCPp4HFLONZt/yIH0sZp0/469KWNTEy+qN5jQ3GVX6DMZ1UXAi34yVwtTeaG/HpBuuzw==", + "engines": [ + "node >= 0.8.0" + ], + "bin": { + "ansi-html": "bin/ansi-html" + } + }, + "node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/anymatch": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", + "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", + "dependencies": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/anymatch/node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/aproba": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/aproba/-/aproba-2.0.0.tgz", + "integrity": "sha512-lYe4Gx7QT+MKGbDsA+Z+he/Wtef0BiwDOlK/XkBrdfsh9J/jPPXbX0tE9x9cl27Tmu5gg3QUbUrQYa/y+KOHPQ==", + "dev": true + }, + "node_modules/are-we-there-yet": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-3.0.1.tgz", + "integrity": "sha512-QZW4EDmGwlYur0Yyf/b2uGucHQMa8aFUP7eu9ddR73vvhFyt4V0Vl3QHPcTNJ8l6qYOBdxgXdnBXQrHilfRQBg==", + "deprecated": "This package is no longer supported.", + "dev": true, + "dependencies": { + "delegates": "^1.0.0", + "readable-stream": "^3.6.0" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/arg": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/arg/-/arg-4.1.3.tgz", + "integrity": "sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==", + "dev": true + }, + "node_modules/argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "dependencies": { + "sprintf-js": "~1.0.2" + } + }, + "node_modules/array-buffer-byte-length": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.2.tgz", + "integrity": "sha512-LHE+8BuR7RYGDKvnrmcuSq3tDcKv9OFEXQt/HpbZhY7V6h0zlUXutnAD82GiFx9rdieCMjkvtcsPqBwgUl1Iiw==", + "dev": true, + "dependencies": { + "call-bound": "^1.0.3", + "is-array-buffer": "^3.0.5" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/array-flatten": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", + "integrity": "sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==" + }, + "node_modules/array-union": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz", + "integrity": "sha512-Dxr6QJj/RdU/hCaBjOfxW+q6lyuVE6JFWIrAUpuOOhoJJoQ99cUn3igRaHVB5P9WrgFVN0FfArM3x0cueOU8ng==", + "devOptional": true, + "dependencies": { + "array-uniq": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/array-uniq": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz", + "integrity": "sha512-MNha4BWQ6JbwhFhj03YK552f7cb3AzoE8SzeljgChvL1dl3IcvggXVz1DilzySZkCja+CXuZbdW7yATchWn8/Q==", + "devOptional": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/arraybuffer.prototype.slice": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.4.tgz", + "integrity": "sha512-BNoCY6SXXPQ7gF2opIP4GBE+Xw7U+pHMYKuzjgCN3GwiaIR09UUeKfheyIry77QtrCBlC0KK0q5/TER/tYh3PQ==", + "dev": true, + "dependencies": { + "array-buffer-byte-length": "^1.0.1", + "call-bind": "^1.0.8", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.5", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.6", + "is-array-buffer": "^3.0.4" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/arrify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", + "integrity": "sha512-3CYzex9M9FGQjCGMGyi6/31c8GJbgb0qGyrx5HWxPd0aCwh4cB2YjMb2Xf9UuoogrMrlO9cTqnB5rI5GHZTcUA==", + "devOptional": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/asn1": { + "version": "0.2.6", + "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.6.tgz", + "integrity": "sha512-ix/FxPn0MDjeyJ7i/yoHGFt/EX6LyNbxSEhPPXODPL+KB0VPk86UYfL0lMdy+KCnv+fmvIzySwaK5COwqVbWTQ==", + "devOptional": true, + "dependencies": { + "safer-buffer": "~2.1.0" + } + }, + "node_modules/assert-plus": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", + "integrity": "sha512-NfJ4UzBCcQGLDlQq7nHxH+tv3kyZ0hHQqF5BO6J7tNJeP5do1llPr8dZ8zHonfhAu0PHAdMkSo+8o0wxg9lZWw==", + "devOptional": true, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/async-function": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/async-function/-/async-function-1.0.0.tgz", + "integrity": "sha512-hsU18Ae8CDTR6Kgu9DYf0EbCr/a5iGL0rytQDobUcdpYOKokk8LEjVphnXkDkgpi0wYVsqrXuP0bZxJaTqdgoA==", + "dev": true, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==", + "devOptional": true + }, + "node_modules/atob": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz", + "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==", + "bin": { + "atob": "bin/atob.js" + }, + "engines": { + "node": ">= 4.5.0" + } + }, + "node_modules/autoprefixer": { + "version": "10.4.20", + "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.20.tgz", + "integrity": "sha512-XY25y5xSv/wEoqzDyXXME4AFfkZI0P23z6Fs3YgymDnKJkCGOnkL0iTxCa85UTqaSgfcqyf3UA6+c7wUvx/16g==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/autoprefixer" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "dependencies": { + "browserslist": "^4.23.3", + "caniuse-lite": "^1.0.30001646", + "fraction.js": "^4.3.7", + "normalize-range": "^0.1.2", + "picocolors": "^1.0.1", + "postcss-value-parser": "^4.2.0" + }, + "bin": { + "autoprefixer": "bin/autoprefixer" + }, + "engines": { + "node": "^10 || ^12 || >=14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/available-typed-arrays": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.7.tgz", + "integrity": "sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==", + "dev": true, + "dependencies": { + "possible-typed-array-names": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/aws-sign2": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", + "integrity": "sha512-08kcGqnYf/YmjoRhfxyu+CLxBjUtHLXLXX/vUfx9l2LYzG3c1m61nrpyFUZI6zeS+Li/wWMMidD9KgrqtGq3mA==", + "devOptional": true, + "engines": { + "node": "*" + } + }, + "node_modules/aws4": { + "version": "1.13.2", + "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.13.2.tgz", + "integrity": "sha512-lHe62zvbTB5eEABUVi/AwVh0ZKY9rMMDhmm+eeyuuUQbQ3+J+fONVQOZyj+DdrvD4BY33uYniyRJ4UJIaSKAfw==", + "devOptional": true + }, + "node_modules/babel-loader": { + "version": "8.2.5", + "resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-8.2.5.tgz", + "integrity": "sha512-OSiFfH89LrEMiWd4pLNqGz4CwJDtbs2ZVc+iGu2HrkRfPxId9F2anQj38IxWpmRfsUY0aBZYi1EFcd3mhtRMLQ==", + "dependencies": { + "find-cache-dir": "^3.3.1", + "loader-utils": "^2.0.0", + "make-dir": "^3.1.0", + "schema-utils": "^2.6.5" + }, + "engines": { + "node": ">= 8.9" + }, + "peerDependencies": { + "@babel/core": "^7.0.0", + "webpack": ">=2" + } + }, + "node_modules/babel-loader/node_modules/loader-utils": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.4.tgz", + "integrity": "sha512-xXqpXoINfFhgua9xiqD8fPFHgkoq1mmmpE92WlDbm9rNRd/EbRb+Gqf908T2DMfuHjjJlksiK2RbHVOdD/MqSw==", + "dependencies": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^2.1.2" + }, + "engines": { + "node": ">=8.9.0" + } + }, + "node_modules/babel-plugin-istanbul": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz", + "integrity": "sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.0.0", + "@istanbuljs/load-nyc-config": "^1.0.0", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-instrument": "^5.0.4", + "test-exclude": "^6.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/babel-plugin-polyfill-corejs2": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.3.3.tgz", + "integrity": "sha512-8hOdmFYFSZhqg2C/JgLUQ+t52o5nirNwaWM2B9LWteozwIvM14VSwdsCAUET10qT+kmySAlseadmfeeSWFCy+Q==", + "dependencies": { + "@babel/compat-data": "^7.17.7", + "@babel/helper-define-polyfill-provider": "^0.3.3", + "semver": "^6.1.1" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/babel-plugin-polyfill-corejs2/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/babel-plugin-polyfill-corejs3": { + "version": "0.5.3", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.5.3.tgz", + "integrity": "sha512-zKsXDh0XjnrUEW0mxIHLfjBfnXSMr5Q/goMe/fxpQnLm07mcOZiIZHBNWCMx60HmdvjxfXcalac0tfFg0wqxyw==", + "dependencies": { + "@babel/helper-define-polyfill-provider": "^0.3.2", + "core-js-compat": "^3.21.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/babel-plugin-polyfill-regenerator": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.4.1.tgz", + "integrity": "sha512-NtQGmyQDXjQqQ+IzRkBVwEOz9lQ4zxAQZgoAYEtU9dJjnl1Oc98qnN7jcp+bE7O7aYzVpavXE3/VKXNzUbh7aw==", + "dependencies": { + "@babel/helper-define-polyfill-provider": "^0.3.3" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" + }, + "node_modules/base64-js": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", + "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/base64id": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/base64id/-/base64id-2.0.0.tgz", + "integrity": "sha512-lGe34o6EHj9y3Kts9R4ZYs/Gr+6N7MCaMlIFA3F1R2O5/m7K06AxfSeO5530PEERE6/WyEg3lsuyw4GHlPZHog==", + "devOptional": true, + "engines": { + "node": "^4.5.0 || >= 5.9" + } + }, + "node_modules/batch": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/batch/-/batch-0.6.1.tgz", + "integrity": "sha512-x+VAiMRL6UPkx+kudNvxTl6hB2XNNCG2r+7wixVfIYwu/2HKRXimwQyaumLjMveWvT2Hkd/cAJw+QBMfJ/EKVw==" + }, + "node_modules/bcrypt-pbkdf": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", + "integrity": "sha512-qeFIXtP4MSoi6NLqO12WfqARWWuCKi2Rn/9hJLEmtB5yTNr9DqFWkJRCf2qShWzPeAMRnOgCrq0sg/KLv5ES9w==", + "devOptional": true, + "dependencies": { + "tweetnacl": "^0.14.3" + } + }, + "node_modules/big.js": { + "version": "5.2.2", + "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz", + "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==", + "engines": { + "node": "*" + } + }, + "node_modules/binary-extensions": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.3.0.tgz", + "integrity": "sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/bl": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz", + "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==", + "dependencies": { + "buffer": "^5.5.0", + "inherits": "^2.0.4", + "readable-stream": "^3.4.0" + } + }, + "node_modules/blocking-proxy": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/blocking-proxy/-/blocking-proxy-1.0.1.tgz", + "integrity": "sha512-KE8NFMZr3mN2E0HcvCgRtX7DjhiIQrwle+nSVJVC/yqFb9+xznHl2ZcoBp2L9qzkI4t4cBFJ1efXF8Dwi132RA==", + "devOptional": true, + "dependencies": { + "minimist": "^1.2.0" + }, + "bin": { + "blocking-proxy": "built/lib/bin.js" + }, + "engines": { + "node": ">=6.9.x" + } + }, + "node_modules/body-parser": { + "version": "1.20.3", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.3.tgz", + "integrity": "sha512-7rAxByjUMqQ3/bHJy7D6OGXvx/MMc4IqBn/X0fcM1QUcAItpZrBEYhWGem+tzXH90c+G01ypMcYJBO9Y30203g==", + "dependencies": { + "bytes": "3.1.2", + "content-type": "~1.0.5", + "debug": "2.6.9", + "depd": "2.0.0", + "destroy": "1.2.0", + "http-errors": "2.0.0", + "iconv-lite": "0.4.24", + "on-finished": "2.4.1", + "qs": "6.13.0", + "raw-body": "2.5.2", + "type-is": "~1.6.18", + "unpipe": "1.0.0" + }, + "engines": { + "node": ">= 0.8", + "npm": "1.2.8000 || >= 1.4.16" + } + }, + "node_modules/body-parser/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/body-parser/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" + }, + "node_modules/bonjour-service": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/bonjour-service/-/bonjour-service-1.3.0.tgz", + "integrity": "sha512-3YuAUiSkWykd+2Azjgyxei8OWf8thdn8AITIog2M4UICzoqfjlqr64WIjEXZllf/W6vK1goqleSR6brGomxQqA==", + "dependencies": { + "fast-deep-equal": "^3.1.3", + "multicast-dns": "^7.2.5" + } + }, + "node_modules/boolbase": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", + "integrity": "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==" + }, + "node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/braces": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", + "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", + "dependencies": { + "fill-range": "^7.1.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/browserslist": { + "version": "4.24.4", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.24.4.tgz", + "integrity": "sha512-KDi1Ny1gSePi1vm0q4oxSF8b4DR44GF4BbmS2YdhPLOEqd8pDviZOGH/GsmRwoWJ2+5Lr085X7naowMwKHDG1A==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "dependencies": { + "caniuse-lite": "^1.0.30001688", + "electron-to-chromium": "^1.5.73", + "node-releases": "^2.0.19", + "update-browserslist-db": "^1.1.1" + }, + "bin": { + "browserslist": "cli.js" + }, + "engines": { + "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" + } + }, + "node_modules/browserstack": { + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/browserstack/-/browserstack-1.6.1.tgz", + "integrity": "sha512-GxtFjpIaKdbAyzHfFDKixKO8IBT7wR3NjbzrGc78nNs/Ciys9wU3/nBtsqsWv5nDSrdI5tz0peKuzCPuNXNUiw==", + "devOptional": true, + "dependencies": { + "https-proxy-agent": "^2.2.1" + } + }, + "node_modules/browserstack/node_modules/agent-base": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-4.3.0.tgz", + "integrity": "sha512-salcGninV0nPrwpGNn4VTXBb1SOuXQBiqbrNXoeizJsHrsL6ERFM2Ne3JUSBWRE6aeNJI2ROP/WEEIDUiDe3cg==", + "devOptional": true, + "dependencies": { + "es6-promisify": "^5.0.0" + }, + "engines": { + "node": ">= 4.0.0" + } + }, + "node_modules/browserstack/node_modules/debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "devOptional": true, + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/browserstack/node_modules/https-proxy-agent": { + "version": "2.2.4", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-2.2.4.tgz", + "integrity": "sha512-OmvfoQ53WLjtA9HeYP9RNrWMJzzAz1JGaSFr1nijg0PVR1JaD/xbJq1mdEIIlxGpXp9eSe/O2LgU9DJmTPd0Eg==", + "devOptional": true, + "dependencies": { + "agent-base": "^4.3.0", + "debug": "^3.1.0" + }, + "engines": { + "node": ">= 4.5.0" + } + }, + "node_modules/buffer": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", + "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "dependencies": { + "base64-js": "^1.3.1", + "ieee754": "^1.1.13" + } + }, + "node_modules/buffer-from": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", + "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==" + }, + "node_modules/builtin-modules": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-1.1.1.tgz", + "integrity": "sha512-wxXCdllwGhI2kCC0MnvTGYTMvnVZTvqgypkiTI8Pa5tcz2i6VqsqwYGgqwXji+4RgCzms6EajE4IxiUH6HH8nQ==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/builtins": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/builtins/-/builtins-5.1.0.tgz", + "integrity": "sha512-SW9lzGTLvWTP1AY8xeAMZimqDrIaSdLQUcVr9DMef51niJ022Ri87SwRRKYm4A6iHfkPaiVUu/Duw2Wc4J7kKg==", + "dev": true, + "dependencies": { + "semver": "^7.0.0" + } + }, + "node_modules/bytes": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", + "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/cacache": { + "version": "16.1.2", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-16.1.2.tgz", + "integrity": "sha512-Xx+xPlfCZIUHagysjjOAje9nRo8pRDczQCcXb4J2O0BLtH+xeVue6ba4y1kfJfQMAnM2mkcoMIAyOctlaRGWYA==", + "dependencies": { + "@npmcli/fs": "^2.1.0", + "@npmcli/move-file": "^2.0.0", + "chownr": "^2.0.0", + "fs-minipass": "^2.1.0", + "glob": "^8.0.1", + "infer-owner": "^1.0.4", + "lru-cache": "^7.7.1", + "minipass": "^3.1.6", + "minipass-collect": "^1.0.2", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "mkdirp": "^1.0.4", + "p-map": "^4.0.0", + "promise-inflight": "^1.0.1", + "rimraf": "^3.0.2", + "ssri": "^9.0.0", + "tar": "^6.1.11", + "unique-filename": "^1.1.1" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/cacache/node_modules/lru-cache": { + "version": "7.18.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", + "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", + "engines": { + "node": ">=12" + } + }, + "node_modules/call-bind": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.8.tgz", + "integrity": "sha512-oKlSFMcMwpUg2ednkhQ454wfWiU/ul3CkJe/PEHcTKuiX6RpbehUiFMXu13HalGZxfUwCQzZG747YXBn1im9ww==", + "dev": true, + "dependencies": { + "call-bind-apply-helpers": "^1.0.0", + "es-define-property": "^1.0.0", + "get-intrinsic": "^1.2.4", + "set-function-length": "^1.2.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/call-bind-apply-helpers": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.2.tgz", + "integrity": "sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==", + "dependencies": { + "es-errors": "^1.3.0", + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/call-bound": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/call-bound/-/call-bound-1.0.3.tgz", + "integrity": "sha512-YTd+6wGlNlPxSuri7Y6X8tY2dmm12UMH66RpKMhiX6rsk5wXXnYgbUcOt8kiS31/AjfoTOvCsE+w8nZQLQnzHA==", + "dependencies": { + "call-bind-apply-helpers": "^1.0.1", + "get-intrinsic": "^1.2.6" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "engines": { + "node": ">=6" + } + }, + "node_modules/camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "engines": { + "node": ">=6" + } + }, + "node_modules/caniuse-lite": { + "version": "1.0.30001701", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001701.tgz", + "integrity": "sha512-faRs/AW3jA9nTwmJBSO1PQ6L/EOgsB5HMQQq4iCu5zhPgVVgO/pZRHlmatwijZKetFw8/Pr4q6dEN8sJuq8qTw==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/caniuse-lite" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ] + }, + "node_modules/caseless": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", + "integrity": "sha512-4tYFyifaFfGacoiObjJegolkwSU4xQNGbVgUiNYVUxbQ2x2lUsFvY4hVgVzGiIe6WLOPqycWXA40l+PWsxthUw==", + "devOptional": true + }, + "node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/chardet": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz", + "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==" + }, + "node_modules/chokidar": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz", + "integrity": "sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==", + "dependencies": { + "anymatch": "~3.1.2", + "braces": "~3.0.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" + }, + "engines": { + "node": ">= 8.10.0" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + } + }, + "node_modules/chownr": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", + "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==", + "engines": { + "node": ">=10" + } + }, + "node_modules/chrome-trace-event": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.4.tgz", + "integrity": "sha512-rNjApaLzuwaOTjCiT8lSDdGN1APCiqkChLMJxJPWLunPAt5fy8xgU9/jNOchV84wfIxrA0lRQB7oCT8jrn/wrQ==", + "engines": { + "node": ">=6.0" + } + }, + "node_modules/clean-stack": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", + "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", + "engines": { + "node": ">=6" + } + }, + "node_modules/cli-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz", + "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", + "dependencies": { + "restore-cursor": "^3.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/cli-spinners": { + "version": "2.9.2", + "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.9.2.tgz", + "integrity": "sha512-ywqV+5MmyL4E7ybXgKys4DugZbX0FC6LnwrhjuykIjnK9k8OQacQ7axGKnjDXWNhns0xot3bZI5h55H8yo9cJg==", + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/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==", + "engines": { + "node": ">= 10" + } + }, + "node_modules/cliui": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", + "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^7.0.0" + } + }, + "node_modules/clone": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz", + "integrity": "sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg==", + "engines": { + "node": ">=0.8" + } + }, + "node_modules/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==", + "dependencies": { + "is-plain-object": "^2.0.4", + "kind-of": "^6.0.2", + "shallow-clone": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + }, + "node_modules/color-support": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-support/-/color-support-1.1.3.tgz", + "integrity": "sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==", + "dev": true, + "bin": { + "color-support": "bin.js" + } + }, + "node_modules/colorette": { + "version": "2.0.20", + "resolved": "https://registry.npmjs.org/colorette/-/colorette-2.0.20.tgz", + "integrity": "sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==" + }, + "node_modules/colors": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/colors/-/colors-1.4.0.tgz", + "integrity": "sha512-a+UqTh4kgZg/SlGvfbzDHpgRu7AAQOmmqRHJnxhRZICKFUT91brVhNNt58CMWU9PsBbv3PDCZUHbVxuDiH2mtA==", + "dev": true, + "engines": { + "node": ">=0.1.90" + } + }, + "node_modules/combined-stream": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", + "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", + "devOptional": true, + "dependencies": { + "delayed-stream": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/commander": { + "version": "9.5.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-9.5.0.tgz", + "integrity": "sha512-KRs7WVDKg86PWiuAqhDrAQnTXZKraVcCc6vFdL14qrZ/DcWwuRo7VoiYXalXO7S5GKpqYiVEwCbgFDfxNHKJBQ==", + "engines": { + "node": "^12.20.0 || >=14" + } + }, + "node_modules/commondir": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", + "integrity": "sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==" + }, + "node_modules/compressible": { + "version": "2.0.18", + "resolved": "https://registry.npmjs.org/compressible/-/compressible-2.0.18.tgz", + "integrity": "sha512-AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg==", + "dependencies": { + "mime-db": ">= 1.43.0 < 2" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/compression": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/compression/-/compression-1.8.0.tgz", + "integrity": "sha512-k6WLKfunuqCYD3t6AsuPGvQWaKwuLLh2/xHNcX4qE+vIfDNXpSqnrhwA7O53R7WVQUnt8dVAIW+YHr7xTgOgGA==", + "dependencies": { + "bytes": "3.1.2", + "compressible": "~2.0.18", + "debug": "2.6.9", + "negotiator": "~0.6.4", + "on-headers": "~1.0.2", + "safe-buffer": "5.2.1", + "vary": "~1.1.2" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/compression/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/compression/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" + }, + "node_modules/concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==" + }, + "node_modules/connect": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/connect/-/connect-3.7.0.tgz", + "integrity": "sha512-ZqRXc+tZukToSNmh5C2iWMSoV3X1YUcPbqEM4DkEG5tNQXrQUZCNVGGv3IuicnkMtPfGf3Xtp8WCXs295iQ1pQ==", + "devOptional": true, + "dependencies": { + "debug": "2.6.9", + "finalhandler": "1.1.2", + "parseurl": "~1.3.3", + "utils-merge": "1.0.1" + }, + "engines": { + "node": ">= 0.10.0" + } + }, + "node_modules/connect-history-api-fallback": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/connect-history-api-fallback/-/connect-history-api-fallback-2.0.0.tgz", + "integrity": "sha512-U73+6lQFmfiNPrYbXqr6kZ1i1wiRqXnp2nhMsINseWXO8lDau0LGEffJ8kQi4EjLZympVgRdvqjAgiZ1tgzDDA==", + "engines": { + "node": ">=0.8" + } + }, + "node_modules/connect/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "devOptional": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/connect/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "devOptional": true + }, + "node_modules/console-control-strings": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", + "integrity": "sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ==", + "dev": true + }, + "node_modules/content-disposition": { + "version": "0.5.4", + "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz", + "integrity": "sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==", + "dependencies": { + "safe-buffer": "5.2.1" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/content-type": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.5.tgz", + "integrity": "sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/convert-source-map": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.9.0.tgz", + "integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==" + }, + "node_modules/cookie": { + "version": "0.7.2", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.7.2.tgz", + "integrity": "sha512-yki5XnKuf750l50uGTllt6kKILY4nQ1eNIQatoXEByZ5dWgnKqbnqmTrBE5B4N7lrMJKQ2ytWMiTO2o0v6Ew/w==", + "devOptional": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/cookie-signature": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", + "integrity": "sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==" + }, + "node_modules/copy-anything": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/copy-anything/-/copy-anything-2.0.6.tgz", + "integrity": "sha512-1j20GZTsvKNkc4BY3NpMOM8tt///wY3FpIzozTOFO2ffuZcV61nojHXVKIy3WM+7ADCy5FVhdZYHYDdgTU0yJw==", + "dependencies": { + "is-what": "^3.14.1" + }, + "funding": { + "url": "https://github.com/sponsors/mesqueeb" + } + }, + "node_modules/copy-webpack-plugin": { + "version": "11.0.0", + "resolved": "https://registry.npmjs.org/copy-webpack-plugin/-/copy-webpack-plugin-11.0.0.tgz", + "integrity": "sha512-fX2MWpamkW0hZxMEg0+mYnA40LTosOSa5TqZ9GYIBzyJa9C3QUaMPSE2xAi/buNr8u89SfD9wHSQVBzrRa/SOQ==", + "dependencies": { + "fast-glob": "^3.2.11", + "glob-parent": "^6.0.1", + "globby": "^13.1.1", + "normalize-path": "^3.0.0", + "schema-utils": "^4.0.0", + "serialize-javascript": "^6.0.0" + }, + "engines": { + "node": ">= 14.15.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^5.1.0" + } + }, + "node_modules/copy-webpack-plugin/node_modules/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==", + "dependencies": { + "is-glob": "^4.0.3" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/copy-webpack-plugin/node_modules/schema-utils": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.3.0.tgz", + "integrity": "sha512-Gf9qqc58SpCA/xdziiHz35F4GNIWYWZrEshUc/G/r5BnLph6xpKuLeoJoQuj5WfBIx/eQLf+hmVPYHaxJu7V2g==", + "dependencies": { + "@types/json-schema": "^7.0.9", + "ajv": "^8.9.0", + "ajv-formats": "^2.1.1", + "ajv-keywords": "^5.1.0" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/core-js-compat": { + "version": "3.40.0", + "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.40.0.tgz", + "integrity": "sha512-0XEDpr5y5mijvw8Lbc6E5AkjrHfp7eEoPlu36SWeAbcL8fn1G1ANe8DBlo2XoNN89oVpxWwOjYIPVzR4ZvsKCQ==", + "dependencies": { + "browserslist": "^4.24.3" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/core-js" + } + }, + "node_modules/core-util-is": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", + "integrity": "sha512-3lqz5YjWTYnW6dlDa5TLaTCcShfar1e40rmcJVwCBJC6mWlFuj0eCHIElmG1g5kyuJ/GD+8Wn4FFCcz4gJPfaQ==" + }, + "node_modules/cors": { + "version": "2.8.5", + "resolved": "https://registry.npmjs.org/cors/-/cors-2.8.5.tgz", + "integrity": "sha512-KIHbLJqu73RGr/hnbrO9uBeixNGuvSQjul/jdFvS/KFSIH1hWVd1ng7zOHx+YrEfInLG7q4n6GHQ9cDtxv/P6g==", + "devOptional": true, + "dependencies": { + "object-assign": "^4", + "vary": "^1" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/cosmiconfig": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.1.0.tgz", + "integrity": "sha512-AdmX6xUzdNASswsFtmwSt7Vj8po9IuqXm0UXz7QKPuEUmPB4XyjGfaAr2PSuELMwkRMVH1EpIkX5bTZGRB3eCA==", + "dependencies": { + "@types/parse-json": "^4.0.0", + "import-fresh": "^3.2.1", + "parse-json": "^5.0.0", + "path-type": "^4.0.0", + "yaml": "^1.10.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/critters": { + "version": "0.0.16", + "resolved": "https://registry.npmjs.org/critters/-/critters-0.0.16.tgz", + "integrity": "sha512-JwjgmO6i3y6RWtLYmXwO5jMd+maZt8Tnfu7VVISmEWyQqfLpB8soBswf8/2bu6SBXxtKA68Al3c+qIG1ApT68A==", + "dependencies": { + "chalk": "^4.1.0", + "css-select": "^4.2.0", + "parse5": "^6.0.1", + "parse5-htmlparser2-tree-adapter": "^6.0.1", + "postcss": "^8.3.7", + "pretty-bytes": "^5.3.0" + } + }, + "node_modules/critters/node_modules/parse5": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", + "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==" + }, + "node_modules/cross-spawn": { + "version": "6.0.6", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.6.tgz", + "integrity": "sha512-VqCUuhcd1iB+dsv8gxPttb5iZh/D0iubSP21g36KXdEuf6I5JiioesUVjpCdHV9MZRUfVFlvwtIUyPfxo5trtw==", + "dev": true, + "dependencies": { + "nice-try": "^1.0.4", + "path-key": "^2.0.1", + "semver": "^5.5.0", + "shebang-command": "^1.2.0", + "which": "^1.2.9" + }, + "engines": { + "node": ">=4.8" + } + }, + "node_modules/cross-spawn/node_modules/semver": { + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", + "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", + "dev": true, + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/css": { + "version": "2.2.4", + "resolved": "https://registry.npmjs.org/css/-/css-2.2.4.tgz", + "integrity": "sha512-oUnjmWpy0niI3x/mPL8dVEI1l7MnG3+HHyRPHf+YFSbK+svOhXpmSOcDURUh2aOCgl2grzrOPt1nHLuCVFULLw==", + "dependencies": { + "inherits": "^2.0.3", + "source-map": "^0.6.1", + "source-map-resolve": "^0.5.2", + "urix": "^0.1.0" + } + }, + "node_modules/css-blank-pseudo": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/css-blank-pseudo/-/css-blank-pseudo-3.0.3.tgz", + "integrity": "sha512-VS90XWtsHGqoM0t4KpH053c4ehxZ2E6HtGI7x68YFV0pTo/QmkV/YFA+NnlvK8guxZVNWGQhVNJGC39Q8XF4OQ==", + "dependencies": { + "postcss-selector-parser": "^6.0.9" + }, + "bin": { + "css-blank-pseudo": "dist/cli.cjs" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "peerDependencies": { + "postcss": "^8.4" + } + }, + "node_modules/css-blank-pseudo/node_modules/postcss-selector-parser": { + "version": "6.1.2", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.1.2.tgz", + "integrity": "sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg==", + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/css-has-pseudo": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/css-has-pseudo/-/css-has-pseudo-3.0.4.tgz", + "integrity": "sha512-Vse0xpR1K9MNlp2j5w1pgWIJtm1a8qS0JwS9goFYcImjlHEmywP9VUF05aGBXzGpDJF86QXk4L0ypBmwPhGArw==", + "dependencies": { + "postcss-selector-parser": "^6.0.9" + }, + "bin": { + "css-has-pseudo": "dist/cli.cjs" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "peerDependencies": { + "postcss": "^8.4" + } + }, + "node_modules/css-has-pseudo/node_modules/postcss-selector-parser": { + "version": "6.1.2", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.1.2.tgz", + "integrity": "sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg==", + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/css-loader": { + "version": "6.7.1", + "resolved": "https://registry.npmjs.org/css-loader/-/css-loader-6.7.1.tgz", + "integrity": "sha512-yB5CNFa14MbPJcomwNh3wLThtkZgcNyI2bNMRt8iE5Z8Vwl7f8vQXFAzn2HDOJvtDq2NTZBUGMSUNNyrv3/+cw==", + "dependencies": { + "icss-utils": "^5.1.0", + "postcss": "^8.4.7", + "postcss-modules-extract-imports": "^3.0.0", + "postcss-modules-local-by-default": "^4.0.0", + "postcss-modules-scope": "^3.0.0", + "postcss-modules-values": "^4.0.0", + "postcss-value-parser": "^4.2.0", + "semver": "^7.3.5" + }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^5.0.0" + } + }, + "node_modules/css-parse": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/css-parse/-/css-parse-2.0.0.tgz", + "integrity": "sha512-UNIFik2RgSbiTwIW1IsFwXWn6vs+bYdq83LKTSOsx7NJR7WII9dxewkHLltfTLVppoUApHV0118a4RZRI9FLwA==", + "dependencies": { + "css": "^2.0.0" + } + }, + "node_modules/css-prefers-color-scheme": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/css-prefers-color-scheme/-/css-prefers-color-scheme-6.0.3.tgz", + "integrity": "sha512-4BqMbZksRkJQx2zAjrokiGMd07RqOa2IxIrrN10lyBe9xhn9DEvjUK79J6jkeiv9D9hQFXKb6g1jwU62jziJZA==", + "bin": { + "css-prefers-color-scheme": "dist/cli.cjs" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "peerDependencies": { + "postcss": "^8.4" + } + }, + "node_modules/css-select": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/css-select/-/css-select-4.3.0.tgz", + "integrity": "sha512-wPpOYtnsVontu2mODhA19JrqWxNsfdatRKd64kmpRbQgh1KtItko5sTnEpPdpSaJszTOhEMlF/RPz28qj4HqhQ==", + "dependencies": { + "boolbase": "^1.0.0", + "css-what": "^6.0.1", + "domhandler": "^4.3.1", + "domutils": "^2.8.0", + "nth-check": "^2.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/fb55" + } + }, + "node_modules/css-what": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/css-what/-/css-what-6.1.0.tgz", + "integrity": "sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw==", + "engines": { + "node": ">= 6" + }, + "funding": { + "url": "https://github.com/sponsors/fb55" + } + }, + "node_modules/css/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/css/node_modules/source-map-resolve": { + "version": "0.5.3", + "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.3.tgz", + "integrity": "sha512-Htz+RnsXWk5+P2slx5Jh3Q66vhQj1Cllm0zvnaY98+NFx+Dv2CF/f5O/t8x+KaNdrdIAsruNzoh/KpialbqAnw==", + "deprecated": "See https://github.com/lydell/source-map-resolve#deprecated", + "dependencies": { + "atob": "^2.1.2", + "decode-uri-component": "^0.2.0", + "resolve-url": "^0.2.1", + "source-map-url": "^0.4.0", + "urix": "^0.1.0" + } + }, + "node_modules/cssdb": { + "version": "7.11.2", + "resolved": "https://registry.npmjs.org/cssdb/-/cssdb-7.11.2.tgz", + "integrity": "sha512-lhQ32TFkc1X4eTefGfYPvgovRSzIMofHkigfH8nWtyRL4XJLsRhJFreRvEgKzept7x1rjBuy3J/MurXLaFxW/A==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + } + ] + }, + "node_modules/cssesc": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", + "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", + "bin": { + "cssesc": "bin/cssesc" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/cuint": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/cuint/-/cuint-0.2.2.tgz", + "integrity": "sha512-d4ZVpCW31eWwCMe1YT3ur7mUDnTXbgwyzaL320DrcRT45rfjYxkt5QWLrmOJ+/UEAI2+fQgKe/fCjR8l4TpRgw==" + }, + "node_modules/custom-event": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/custom-event/-/custom-event-1.0.1.tgz", + "integrity": "sha512-GAj5FOq0Hd+RsCGVJxZuKaIDXDf3h6GQoNEjFgbLLI/trgtavwUbSnZ5pVfg27DVCaWjIohryS0JFwIJyT2cMg==", + "devOptional": true + }, + "node_modules/dashdash": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", + "integrity": "sha512-jRFi8UDGo6j+odZiEpjazZaWqEal3w/basFjQHQEwVtZJGDpxbH1MeYluwCS8Xq5wmLJooDlMgvVarmWfGM44g==", + "devOptional": true, + "dependencies": { + "assert-plus": "^1.0.0" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/data-view-buffer": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/data-view-buffer/-/data-view-buffer-1.0.2.tgz", + "integrity": "sha512-EmKO5V3OLXh1rtK2wgXRansaK1/mtVdTUEiEI0W8RkvgT05kfxaH29PliLnpLP73yYO6142Q72QNa8Wx/A5CqQ==", + "dev": true, + "dependencies": { + "call-bound": "^1.0.3", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/data-view-byte-length": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/data-view-byte-length/-/data-view-byte-length-1.0.2.tgz", + "integrity": "sha512-tuhGbE6CfTM9+5ANGf+oQb72Ky/0+s3xKUpHvShfiz2RxMFgFPjsXuRLBVMtvMs15awe45SRb83D6wH4ew6wlQ==", + "dev": true, + "dependencies": { + "call-bound": "^1.0.3", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/inspect-js" + } + }, + "node_modules/data-view-byte-offset": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/data-view-byte-offset/-/data-view-byte-offset-1.0.1.tgz", + "integrity": "sha512-BS8PfmtDGnrgYdOonGZQdLZslWIeCGFP9tpan0hi1Co2Zr2NKADsvGYA8XxuG/4UWgJ6Cjtv+YJnB6MM69QGlQ==", + "dev": true, + "dependencies": { + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/date-format": { + "version": "4.0.14", + "resolved": "https://registry.npmjs.org/date-format/-/date-format-4.0.14.tgz", + "integrity": "sha512-39BOQLs9ZjKh0/patS9nrT8wc3ioX3/eA/zgbKNopnF2wCqJEoxywwwElATYvRsXdnOxA/OQeQoFZ3rFjVajhg==", + "devOptional": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/debug": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/decamelize": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", + "integrity": "sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA==", + "devOptional": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/decode-uri-component": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.2.tgz", + "integrity": "sha512-FqUYQ+8o158GyGTrMFJms9qh3CqTKvAqgqsTnkLI8sKu0028orqBhxNMFkFen0zGyg6epACD32pjVk58ngIErQ==", + "engines": { + "node": ">=0.10" + } + }, + "node_modules/deepmerge": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.1.tgz", + "integrity": "sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/default-gateway": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/default-gateway/-/default-gateway-6.0.3.tgz", + "integrity": "sha512-fwSOJsbbNzZ/CUFpqFBqYfYNLj1NbMPm8MMCIzHjC83iSJRBEGmDUxU+WP661BaBQImeC2yHwXtz+P/O9o+XEg==", + "dependencies": { + "execa": "^5.0.0" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/defaults": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/defaults/-/defaults-1.0.4.tgz", + "integrity": "sha512-eFuaLoy/Rxalv2kr+lqMlUnrDWV+3j4pljOIJgLIhI058IQfWJ7vXhyEIHu+HtC738klGALYxOKDO0bQP3tg8A==", + "dependencies": { + "clone": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/define-data-property": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.4.tgz", + "integrity": "sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==", + "dev": true, + "dependencies": { + "es-define-property": "^1.0.0", + "es-errors": "^1.3.0", + "gopd": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/define-lazy-prop": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz", + "integrity": "sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==", + "engines": { + "node": ">=8" + } + }, + "node_modules/define-properties": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.2.1.tgz", + "integrity": "sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==", + "dev": true, + "dependencies": { + "define-data-property": "^1.0.1", + "has-property-descriptors": "^1.0.0", + "object-keys": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/del": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/del/-/del-2.2.2.tgz", + "integrity": "sha512-Z4fzpbIRjOu7lO5jCETSWoqUDVe0IPOlfugBsF6suen2LKDlVb4QZpKEM9P+buNJ4KI1eN7I083w/pbKUpsrWQ==", + "devOptional": true, + "dependencies": { + "globby": "^5.0.0", + "is-path-cwd": "^1.0.0", + "is-path-in-cwd": "^1.0.0", + "object-assign": "^4.0.1", + "pify": "^2.0.0", + "pinkie-promise": "^2.0.0", + "rimraf": "^2.2.8" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/del/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "devOptional": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/del/node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "deprecated": "Glob versions prior to v9 are no longer supported", + "devOptional": true, + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/del/node_modules/globby": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/globby/-/globby-5.0.0.tgz", + "integrity": "sha512-HJRTIH2EeH44ka+LWig+EqT2ONSYpVlNfx6pyd592/VF1TbfljJ7elwie7oSwcViLGqOdWocSdu2txwBF9bjmQ==", + "devOptional": true, + "dependencies": { + "array-union": "^1.0.1", + "arrify": "^1.0.0", + "glob": "^7.0.3", + "object-assign": "^4.0.1", + "pify": "^2.0.0", + "pinkie-promise": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/del/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "devOptional": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/del/node_modules/rimraf": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", + "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", + "deprecated": "Rimraf versions prior to v4 are no longer supported", + "devOptional": true, + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + } + }, + "node_modules/delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==", + "devOptional": true, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/delegates": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", + "integrity": "sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ==", + "dev": true + }, + "node_modules/depd": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", + "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/dependency-graph": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/dependency-graph/-/dependency-graph-0.11.0.tgz", + "integrity": "sha512-JeMq7fEshyepOWDfcfHK06N3MhyPhz++vtqWhMT5O9A3K42rdsEDpfdVqjaqaAhsw6a+ZqeDvQVtD0hFHQWrzg==", + "engines": { + "node": ">= 0.6.0" + } + }, + "node_modules/destroy": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz", + "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==", + "engines": { + "node": ">= 0.8", + "npm": "1.2.8000 || >= 1.4.16" + } + }, + "node_modules/detect-node": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/detect-node/-/detect-node-2.1.0.tgz", + "integrity": "sha512-T0NIuQpnTvFDATNuHN5roPwSBG83rFsuO+MXXH9/3N1eFbn4wcPjttvjMLEPWJ0RGUYgQE7cGgS3tNxbqCGM7g==" + }, + "node_modules/di": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/di/-/di-0.0.1.tgz", + "integrity": "sha512-uJaamHkagcZtHPqCIHZxnFrXlunQXgBOsZSUOWwFw31QJCAbyTBoHMW75YOTur5ZNx8pIeAKgf6GWIgaqqiLhA==", + "devOptional": true + }, + "node_modules/diff": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz", + "integrity": "sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==", + "dev": true, + "engines": { + "node": ">=0.3.1" + } + }, + "node_modules/dir-glob": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", + "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", + "dependencies": { + "path-type": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/dns-packet": { + "version": "5.6.1", + "resolved": "https://registry.npmjs.org/dns-packet/-/dns-packet-5.6.1.tgz", + "integrity": "sha512-l4gcSouhcgIKRvyy99RNVOgxXiicE+2jZoNmaNmZ6JXiGajBOJAesk1OBlJuM5k2c+eudGdLxDqXuPCKIj6kpw==", + "dependencies": { + "@leichtgewicht/ip-codec": "^2.0.1" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/dom-serialize": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/dom-serialize/-/dom-serialize-2.2.1.tgz", + "integrity": "sha512-Yra4DbvoW7/Z6LBN560ZwXMjoNOSAN2wRsKFGc4iBeso+mpIA6qj1vfdf9HpMaKAqG6wXTy+1SYEzmNpKXOSsQ==", + "devOptional": true, + "dependencies": { + "custom-event": "~1.0.0", + "ent": "~2.2.0", + "extend": "^3.0.0", + "void-elements": "^2.0.0" + } + }, + "node_modules/dom-serializer": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.4.1.tgz", + "integrity": "sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag==", + "dependencies": { + "domelementtype": "^2.0.1", + "domhandler": "^4.2.0", + "entities": "^2.0.0" + }, + "funding": { + "url": "https://github.com/cheeriojs/dom-serializer?sponsor=1" + } + }, + "node_modules/domelementtype": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz", + "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/fb55" + } + ] + }, + "node_modules/domhandler": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.3.1.tgz", + "integrity": "sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==", + "dependencies": { + "domelementtype": "^2.2.0" + }, + "engines": { + "node": ">= 4" + }, + "funding": { + "url": "https://github.com/fb55/domhandler?sponsor=1" + } + }, + "node_modules/domutils": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-2.8.0.tgz", + "integrity": "sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==", + "dependencies": { + "dom-serializer": "^1.0.1", + "domelementtype": "^2.2.0", + "domhandler": "^4.2.0" + }, + "funding": { + "url": "https://github.com/fb55/domutils?sponsor=1" + } + }, + "node_modules/dunder-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.1.tgz", + "integrity": "sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==", + "dependencies": { + "call-bind-apply-helpers": "^1.0.1", + "es-errors": "^1.3.0", + "gopd": "^1.2.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/ecc-jsbn": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz", + "integrity": "sha512-eh9O+hwRHNbG4BLTjEl3nw044CkGm5X6LoaCf7LPp7UU8Qrt47JYNi6nPX8xjW97TKGKm1ouctg0QSpZe9qrnw==", + "devOptional": true, + "dependencies": { + "jsbn": "~0.1.0", + "safer-buffer": "^2.1.0" + } + }, + "node_modules/ecc-jsbn/node_modules/jsbn": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", + "integrity": "sha512-UVU9dibq2JcFWxQPA6KCqj5O42VOmAY3zQUfEKxU0KpTGXwNoCjkX1e13eHNvw/xPynt6pU0rZ1htjWTNTSXsg==", + "devOptional": true + }, + "node_modules/ee-first": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", + "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==" + }, + "node_modules/electron-to-chromium": { + "version": "1.5.105", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.105.tgz", + "integrity": "sha512-ccp7LocdXx3yBhwiG0qTQ7XFrK48Ua2pxIxBdJO8cbddp/MvbBtPFzvnTchtyHQTsgqqczO8cdmAIbpMa0u2+g==" + }, + "node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" + }, + "node_modules/emojis-list": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-3.0.0.tgz", + "integrity": "sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==", + "engines": { + "node": ">= 4" + } + }, + "node_modules/encodeurl": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", + "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/encoding": { + "version": "0.1.13", + "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.13.tgz", + "integrity": "sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==", + "dev": true, + "optional": true, + "dependencies": { + "iconv-lite": "^0.6.2" + } + }, + "node_modules/encoding/node_modules/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==", + "dev": true, + "optional": true, + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/engine.io": { + "version": "6.6.4", + "resolved": "https://registry.npmjs.org/engine.io/-/engine.io-6.6.4.tgz", + "integrity": "sha512-ZCkIjSYNDyGn0R6ewHDtXgns/Zre/NT6Agvq1/WobF7JXgFff4SeDroKiCO3fNJreU9YG429Sc81o4w5ok/W5g==", + "devOptional": true, + "dependencies": { + "@types/cors": "^2.8.12", + "@types/node": ">=10.0.0", + "accepts": "~1.3.4", + "base64id": "2.0.0", + "cookie": "~0.7.2", + "cors": "~2.8.5", + "debug": "~4.3.1", + "engine.io-parser": "~5.2.1", + "ws": "~8.17.1" + }, + "engines": { + "node": ">=10.2.0" + } + }, + "node_modules/engine.io-parser": { + "version": "5.2.3", + "resolved": "https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-5.2.3.tgz", + "integrity": "sha512-HqD3yTBfnBxIrbnM1DoD6Pcq8NECnh8d4As1Qgh0z5Gg3jRRIqijury0CL3ghu/edArpUYiYqQiDUQBIs4np3Q==", + "devOptional": true, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/enhanced-resolve": { + "version": "5.18.1", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.18.1.tgz", + "integrity": "sha512-ZSW3ma5GkcQBIpwZTSRAI8N71Uuwgs93IezB7mf7R60tC8ZbJideoDNKjHn2O9KIlx6rkGTTEk1xUCK2E1Y2Yg==", + "dependencies": { + "graceful-fs": "^4.2.4", + "tapable": "^2.2.0" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/ent": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/ent/-/ent-2.2.2.tgz", + "integrity": "sha512-kKvD1tO6BM+oK9HzCPpUdRb4vKFQY/FPTFmurMvh6LlN68VMrdj77w8yp51/kDbpkFOS9J8w5W6zIzgM2H8/hw==", + "devOptional": true, + "dependencies": { + "call-bound": "^1.0.3", + "es-errors": "^1.3.0", + "punycode": "^1.4.1", + "safe-regex-test": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/entities": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", + "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==", + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } + }, + "node_modules/env-paths": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/env-paths/-/env-paths-2.2.1.tgz", + "integrity": "sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/err-code": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/err-code/-/err-code-2.0.3.tgz", + "integrity": "sha512-2bmlRpNKBxT/CRmPOlyISQpNj+qSeYvcym/uT0Jx2bMOlKLtSy1ZmLuVxSEKKyor/N5yhvp/ZiG1oE3DEYMSFA==", + "dev": true + }, + "node_modules/errno": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/errno/-/errno-0.1.8.tgz", + "integrity": "sha512-dJ6oBr5SQ1VSd9qkk7ByRgb/1SH4JZjCHSW/mr63/QcXO9zLVxvJ6Oy13nio03rxpSnVDDjFor75SjVeZWPW/A==", + "optional": true, + "dependencies": { + "prr": "~1.0.1" + }, + "bin": { + "errno": "cli.js" + } + }, + "node_modules/error-ex": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", + "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", + "dependencies": { + "is-arrayish": "^0.2.1" + } + }, + "node_modules/es-abstract": { + "version": "1.23.9", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.23.9.tgz", + "integrity": "sha512-py07lI0wjxAC/DcfK1S6G7iANonniZwTISvdPzk9hzeH0IZIshbuuFxLIU96OyF89Yb9hiqWn8M/bY83KY5vzA==", + "dev": true, + "dependencies": { + "array-buffer-byte-length": "^1.0.2", + "arraybuffer.prototype.slice": "^1.0.4", + "available-typed-arrays": "^1.0.7", + "call-bind": "^1.0.8", + "call-bound": "^1.0.3", + "data-view-buffer": "^1.0.2", + "data-view-byte-length": "^1.0.2", + "data-view-byte-offset": "^1.0.1", + "es-define-property": "^1.0.1", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.0.0", + "es-set-tostringtag": "^2.1.0", + "es-to-primitive": "^1.3.0", + "function.prototype.name": "^1.1.8", + "get-intrinsic": "^1.2.7", + "get-proto": "^1.0.0", + "get-symbol-description": "^1.1.0", + "globalthis": "^1.0.4", + "gopd": "^1.2.0", + "has-property-descriptors": "^1.0.2", + "has-proto": "^1.2.0", + "has-symbols": "^1.1.0", + "hasown": "^2.0.2", + "internal-slot": "^1.1.0", + "is-array-buffer": "^3.0.5", + "is-callable": "^1.2.7", + "is-data-view": "^1.0.2", + "is-regex": "^1.2.1", + "is-shared-array-buffer": "^1.0.4", + "is-string": "^1.1.1", + "is-typed-array": "^1.1.15", + "is-weakref": "^1.1.0", + "math-intrinsics": "^1.1.0", + "object-inspect": "^1.13.3", + "object-keys": "^1.1.1", + "object.assign": "^4.1.7", + "own-keys": "^1.0.1", + "regexp.prototype.flags": "^1.5.3", + "safe-array-concat": "^1.1.3", + "safe-push-apply": "^1.0.0", + "safe-regex-test": "^1.1.0", + "set-proto": "^1.0.0", + "string.prototype.trim": "^1.2.10", + "string.prototype.trimend": "^1.0.9", + "string.prototype.trimstart": "^1.0.8", + "typed-array-buffer": "^1.0.3", + "typed-array-byte-length": "^1.0.3", + "typed-array-byte-offset": "^1.0.4", + "typed-array-length": "^1.0.7", + "unbox-primitive": "^1.1.0", + "which-typed-array": "^1.1.18" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/es-define-property": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.1.tgz", + "integrity": "sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-errors": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz", + "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-module-lexer": { + "version": "0.9.3", + "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-0.9.3.tgz", + "integrity": "sha512-1HQ2M2sPtxwnvOvT1ZClHyQDiggdNjURWpY2we6aMKCQiUVxTmVs2UYPLIrD84sS+kMdUwfBSylbJPwNnBrnHQ==" + }, + "node_modules/es-object-atoms": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.1.1.tgz", + "integrity": "sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==", + "dependencies": { + "es-errors": "^1.3.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-set-tostringtag": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.1.0.tgz", + "integrity": "sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA==", + "dev": true, + "dependencies": { + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.6", + "has-tostringtag": "^1.0.2", + "hasown": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-to-primitive": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.3.0.tgz", + "integrity": "sha512-w+5mJ3GuFL+NjVtJlvydShqE1eN3h3PbI7/5LAsYJP/2qtuMXjfL2LpHSRqo4b4eSF5K/DH1JXKUAHSB2UW50g==", + "dev": true, + "dependencies": { + "is-callable": "^1.2.7", + "is-date-object": "^1.0.5", + "is-symbol": "^1.0.4" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/es6-promise": { + "version": "4.2.8", + "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-4.2.8.tgz", + "integrity": "sha512-HJDGx5daxeIvxdBxvG2cb9g4tEvwIk3i8+nhX0yGrYmZUzbkdg8QbDevheDB8gd0//uPj4c1EQua8Q+MViT0/w==", + "devOptional": true + }, + "node_modules/es6-promisify": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/es6-promisify/-/es6-promisify-5.0.0.tgz", + "integrity": "sha512-C+d6UdsYDk0lMebHNR4S2NybQMMngAOnOwYBQjTOiv0MkoJMP0Myw2mgpDLBcpfCmRLxyFqYhS/CfOENq4SJhQ==", + "devOptional": true, + "dependencies": { + "es6-promise": "^4.0.3" + } + }, + "node_modules/esbuild": { + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.15.5.tgz", + "integrity": "sha512-VSf6S1QVqvxfIsSKb3UKr3VhUCis7wgDbtF4Vd9z84UJr05/Sp2fRKmzC+CSPG/dNAPPJZ0BTBLTT1Fhd6N9Gg==", + "hasInstallScript": true, + "optional": true, + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { + "node": ">=12" + }, + "optionalDependencies": { + "@esbuild/linux-loong64": "0.15.5", + "esbuild-android-64": "0.15.5", + "esbuild-android-arm64": "0.15.5", + "esbuild-darwin-64": "0.15.5", + "esbuild-darwin-arm64": "0.15.5", + "esbuild-freebsd-64": "0.15.5", + "esbuild-freebsd-arm64": "0.15.5", + "esbuild-linux-32": "0.15.5", + "esbuild-linux-64": "0.15.5", + "esbuild-linux-arm": "0.15.5", + "esbuild-linux-arm64": "0.15.5", + "esbuild-linux-mips64le": "0.15.5", + "esbuild-linux-ppc64le": "0.15.5", + "esbuild-linux-riscv64": "0.15.5", + "esbuild-linux-s390x": "0.15.5", + "esbuild-netbsd-64": "0.15.5", + "esbuild-openbsd-64": "0.15.5", + "esbuild-sunos-64": "0.15.5", + "esbuild-windows-32": "0.15.5", + "esbuild-windows-64": "0.15.5", + "esbuild-windows-arm64": "0.15.5" + } + }, + "node_modules/esbuild-android-64": { + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-android-64/-/esbuild-android-64-0.15.5.tgz", + "integrity": "sha512-dYPPkiGNskvZqmIK29OPxolyY3tp+c47+Fsc2WYSOVjEPWNCHNyqhtFqQadcXMJDQt8eN0NMDukbyQgFcHquXg==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild-android-arm64": { + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-android-arm64/-/esbuild-android-arm64-0.15.5.tgz", + "integrity": "sha512-YyEkaQl08ze3cBzI/4Cm1S+rVh8HMOpCdq8B78JLbNFHhzi4NixVN93xDrHZLztlocEYqi45rHHCgA8kZFidFg==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild-darwin-64": { + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-darwin-64/-/esbuild-darwin-64-0.15.5.tgz", + "integrity": "sha512-Cr0iIqnWKx3ZTvDUAzG0H/u9dWjLE4c2gTtRLz4pqOBGjfjqdcZSfAObFzKTInLLSmD0ZV1I/mshhPoYSBMMCQ==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild-darwin-arm64": { + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-darwin-arm64/-/esbuild-darwin-arm64-0.15.5.tgz", + "integrity": "sha512-WIfQkocGtFrz7vCu44ypY5YmiFXpsxvz2xqwe688jFfSVCnUsCn2qkEVDo7gT8EpsLOz1J/OmqjExePL1dr1Kg==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild-freebsd-64": { + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-freebsd-64/-/esbuild-freebsd-64-0.15.5.tgz", + "integrity": "sha512-M5/EfzV2RsMd/wqwR18CELcenZ8+fFxQAAEO7TJKDmP3knhWSbD72ILzrXFMMwshlPAS1ShCZ90jsxkm+8FlaA==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild-freebsd-arm64": { + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-freebsd-arm64/-/esbuild-freebsd-arm64-0.15.5.tgz", + "integrity": "sha512-2JQQ5Qs9J0440F/n/aUBNvY6lTo4XP/4lt1TwDfHuo0DY3w5++anw+jTjfouLzbJmFFiwmX7SmUhMnysocx96w==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild-linux-32": { + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-linux-32/-/esbuild-linux-32-0.15.5.tgz", + "integrity": "sha512-gO9vNnIN0FTUGjvTFucIXtBSr1Woymmx/aHQtuU+2OllGU6YFLs99960UD4Dib1kFovVgs59MTXwpFdVoSMZoQ==", + "cpu": [ + "ia32" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild-linux-64": { + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-linux-64/-/esbuild-linux-64-0.15.5.tgz", + "integrity": "sha512-ne0GFdNLsm4veXbTnYAWjbx3shpNKZJUd6XpNbKNUZaNllDZfYQt0/zRqOg0sc7O8GQ+PjSMv9IpIEULXVTVmg==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild-linux-arm": { + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-linux-arm/-/esbuild-linux-arm-0.15.5.tgz", + "integrity": "sha512-wvAoHEN+gJ/22gnvhZnS/+2H14HyAxM07m59RSLn3iXrQsdS518jnEWRBnJz3fR6BJa+VUTo0NxYjGaNt7RA7Q==", + "cpu": [ + "arm" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild-linux-arm64": { + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-linux-arm64/-/esbuild-linux-arm64-0.15.5.tgz", + "integrity": "sha512-7EgFyP2zjO065XTfdCxiXVEk+f83RQ1JsryN1X/VSX2li9rnHAt2swRbpoz5Vlrl6qjHrCmq5b6yxD13z6RheA==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild-linux-mips64le": { + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-linux-mips64le/-/esbuild-linux-mips64le-0.15.5.tgz", + "integrity": "sha512-KdnSkHxWrJ6Y40ABu+ipTZeRhFtc8dowGyFsZY5prsmMSr1ZTG9zQawguN4/tunJ0wy3+kD54GaGwdcpwWAvZQ==", + "cpu": [ + "mips64el" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild-linux-ppc64le": { + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-linux-ppc64le/-/esbuild-linux-ppc64le-0.15.5.tgz", + "integrity": "sha512-QdRHGeZ2ykl5P0KRmfGBZIHmqcwIsUKWmmpZTOq573jRWwmpfRmS7xOhmDHBj9pxv+6qRMH8tLr2fe+ZKQvCYw==", + "cpu": [ + "ppc64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild-linux-riscv64": { + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-linux-riscv64/-/esbuild-linux-riscv64-0.15.5.tgz", + "integrity": "sha512-p+WE6RX+jNILsf+exR29DwgV6B73khEQV0qWUbzxaycxawZ8NE0wA6HnnTxbiw5f4Gx9sJDUBemh9v49lKOORA==", + "cpu": [ + "riscv64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild-linux-s390x": { + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-linux-s390x/-/esbuild-linux-s390x-0.15.5.tgz", + "integrity": "sha512-J2ngOB4cNzmqLHh6TYMM/ips8aoZIuzxJnDdWutBw5482jGXiOzsPoEF4j2WJ2mGnm7FBCO4StGcwzOgic70JQ==", + "cpu": [ + "s390x" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild-netbsd-64": { + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-netbsd-64/-/esbuild-netbsd-64-0.15.5.tgz", + "integrity": "sha512-MmKUYGDizYjFia0Rwt8oOgmiFH7zaYlsoQ3tIOfPxOqLssAsEgG0MUdRDm5lliqjiuoog8LyDu9srQk5YwWF3w==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild-openbsd-64": { + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-openbsd-64/-/esbuild-openbsd-64-0.15.5.tgz", + "integrity": "sha512-2mMFfkLk3oPWfopA9Plj4hyhqHNuGyp5KQyTT9Rc8hFd8wAn5ZrbJg+gNcLMo2yzf8Uiu0RT6G9B15YN9WQyMA==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild-sunos-64": { + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-sunos-64/-/esbuild-sunos-64-0.15.5.tgz", + "integrity": "sha512-2sIzhMUfLNoD+rdmV6AacilCHSxZIoGAU2oT7XmJ0lXcZWnCvCtObvO6D4puxX9YRE97GodciRGDLBaiC6x1SA==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "sunos" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild-wasm": { + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-wasm/-/esbuild-wasm-0.15.5.tgz", + "integrity": "sha512-lTJOEKekN/4JI/eOEq0wLcx53co2N6vaT/XjBz46D1tvIVoUEyM0o2K6txW6gEotf31szFD/J1PbxmnbkGlK9A==", + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild-windows-32": { + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-windows-32/-/esbuild-windows-32-0.15.5.tgz", + "integrity": "sha512-e+duNED9UBop7Vnlap6XKedA/53lIi12xv2ebeNS4gFmu7aKyTrok7DPIZyU5w/ftHD4MUDs5PJUkQPP9xJRzg==", + "cpu": [ + "ia32" + ], + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild-windows-64": { + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-windows-64/-/esbuild-windows-64-0.15.5.tgz", + "integrity": "sha512-v+PjvNtSASHOjPDMIai9Yi+aP+Vwox+3WVdg2JB8N9aivJ7lyhp4NVU+J0MV2OkWFPnVO8AE/7xH+72ibUUEnw==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild-windows-arm64": { + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-windows-arm64/-/esbuild-windows-arm64-0.15.5.tgz", + "integrity": "sha512-Yz8w/D8CUPYstvVQujByu6mlf48lKmXkq6bkeSZZxTA626efQOJb26aDGLzmFWx6eg/FwrXgt6SZs9V8Pwy/aA==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/escalade": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz", + "integrity": "sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==", + "engines": { + "node": ">=6" + } + }, + "node_modules/escape-html": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", + "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==" + }, + "node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/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==", + "dependencies": { + "esrecurse": "^4.3.0", + "estraverse": "^4.1.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", + "bin": { + "esparse": "bin/esparse.js", + "esvalidate": "bin/esvalidate.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/esrecurse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", + "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", + "dependencies": { + "estraverse": "^5.2.0" + }, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/esrecurse/node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "engines": { + "node": ">=4.0" + } + }, + "node_modules/estraverse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", + "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", + "engines": { + "node": ">=4.0" + } + }, + "node_modules/estree-walker": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz", + "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==" + }, + "node_modules/esutils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/etag": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", + "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/eventemitter-asyncresource": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/eventemitter-asyncresource/-/eventemitter-asyncresource-1.0.0.tgz", + "integrity": "sha512-39F7TBIV0G7gTelxwbEqnwhp90eqCPON1k0NwNfwhgKn4Co4ybUbj2pECcXT0B3ztRKZ7Pw1JujUUgmQJHcVAQ==" + }, + "node_modules/eventemitter3": { + "version": "4.0.7", + "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.7.tgz", + "integrity": "sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==" + }, + "node_modules/events": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", + "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", + "engines": { + "node": ">=0.8.x" + } + }, + "node_modules/execa": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz", + "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", + "dependencies": { + "cross-spawn": "^7.0.3", + "get-stream": "^6.0.0", + "human-signals": "^2.1.0", + "is-stream": "^2.0.0", + "merge-stream": "^2.0.0", + "npm-run-path": "^4.0.1", + "onetime": "^5.1.2", + "signal-exit": "^3.0.3", + "strip-final-newline": "^2.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sindresorhus/execa?sponsor=1" + } + }, + "node_modules/execa/node_modules/cross-spawn": { + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", + "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==", + "dependencies": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/execa/node_modules/path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "engines": { + "node": ">=8" + } + }, + "node_modules/execa/node_modules/shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "dependencies": { + "shebang-regex": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/execa/node_modules/shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "engines": { + "node": ">=8" + } + }, + "node_modules/execa/node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/exit": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz", + "integrity": "sha512-Zk/eNKV2zbjpKzrsQ+n1G6poVbErQxJ0LBOJXaKZ1EViLzH+hrLu9cdXI4zw9dBQJslwBEpbQ2P1oS7nDxs6jQ==", + "devOptional": true, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/exponential-backoff": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/exponential-backoff/-/exponential-backoff-3.1.2.tgz", + "integrity": "sha512-8QxYTVXUkuy7fIIoitQkPwGonB8F3Zj8eEO8Sqg9Zv/bkI7RJAzowee4gr81Hak/dUTpA2Z7VfQgoijjPNlUZA==", + "dev": true + }, + "node_modules/express": { + "version": "4.21.2", + "resolved": "https://registry.npmjs.org/express/-/express-4.21.2.tgz", + "integrity": "sha512-28HqgMZAmih1Czt9ny7qr6ek2qddF4FclbMzwhCREB6OFfH+rXAnuNCwo1/wFvrtbgsQDb4kSbX9de9lFbrXnA==", + "dependencies": { + "accepts": "~1.3.8", + "array-flatten": "1.1.1", + "body-parser": "1.20.3", + "content-disposition": "0.5.4", + "content-type": "~1.0.4", + "cookie": "0.7.1", + "cookie-signature": "1.0.6", + "debug": "2.6.9", + "depd": "2.0.0", + "encodeurl": "~2.0.0", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "finalhandler": "1.3.1", + "fresh": "0.5.2", + "http-errors": "2.0.0", + "merge-descriptors": "1.0.3", + "methods": "~1.1.2", + "on-finished": "2.4.1", + "parseurl": "~1.3.3", + "path-to-regexp": "0.1.12", + "proxy-addr": "~2.0.7", + "qs": "6.13.0", + "range-parser": "~1.2.1", + "safe-buffer": "5.2.1", + "send": "0.19.0", + "serve-static": "1.16.2", + "setprototypeof": "1.2.0", + "statuses": "2.0.1", + "type-is": "~1.6.18", + "utils-merge": "1.0.1", + "vary": "~1.1.2" + }, + "engines": { + "node": ">= 0.10.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/express" + } + }, + "node_modules/express/node_modules/cookie": { + "version": "0.7.1", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.7.1.tgz", + "integrity": "sha512-6DnInpx7SJ2AK3+CTUE/ZM0vWTUboZCegxhC2xiIydHR9jNuTAASBrfEpHhiGOZw/nX51bHt6YQl8jsGo4y/0w==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/express/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/express/node_modules/encodeurl": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-2.0.0.tgz", + "integrity": "sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/express/node_modules/finalhandler": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.3.1.tgz", + "integrity": "sha512-6BN9trH7bp3qvnrRyzsBz+g3lZxTNZTbVO2EV1CS0WIcDbawYVdYvGflME/9QP0h0pYlCDBCTjYa9nZzMDpyxQ==", + "dependencies": { + "debug": "2.6.9", + "encodeurl": "~2.0.0", + "escape-html": "~1.0.3", + "on-finished": "2.4.1", + "parseurl": "~1.3.3", + "statuses": "2.0.1", + "unpipe": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/express/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" + }, + "node_modules/express/node_modules/statuses": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", + "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/extend": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", + "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==", + "devOptional": true + }, + "node_modules/external-editor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz", + "integrity": "sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==", + "dependencies": { + "chardet": "^0.7.0", + "iconv-lite": "^0.4.24", + "tmp": "^0.0.33" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/extsprintf": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", + "integrity": "sha512-11Ndz7Nv+mvAC1j0ktTa7fAb0vLyGGX+rMHNBYQviQDGU0Hw7lhctJANqbPhu9nV9/izT/IntTgZ7Im/9LJs9g==", + "devOptional": true, + "engines": [ + "node >=0.6.0" + ] + }, + "node_modules/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==" + }, + "node_modules/fast-glob": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.3.tgz", + "integrity": "sha512-7MptL8U0cqcFdzIzwOTHoilX9x5BrNqye7Z/LuC7kCMRio1EMSyqRK3BEAUD7sXRq4iT4AzTVuZdhgQ2TCvYLg==", + "dependencies": { + "@nodelib/fs.stat": "^2.0.2", + "@nodelib/fs.walk": "^1.2.3", + "glob-parent": "^5.1.2", + "merge2": "^1.3.0", + "micromatch": "^4.0.8" + }, + "engines": { + "node": ">=8.6.0" + } + }, + "node_modules/fast-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==" + }, + "node_modules/fastq": { + "version": "1.19.1", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.19.1.tgz", + "integrity": "sha512-GwLTyxkCXjXbxqIhTsMI2Nui8huMPtnxg7krajPJAjnEG/iiOS7i+zCtWGZR9G0NBKbXKh6X9m9UIsYX/N6vvQ==", + "dependencies": { + "reusify": "^1.0.4" + } + }, + "node_modules/faye-websocket": { + "version": "0.11.4", + "resolved": "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.11.4.tgz", + "integrity": "sha512-CzbClwlXAuiRQAlUyfqPgvPoNKTckTPGfwZV4ZdAhVcP2lh9KUxJg2b5GkE7XbjKQ3YJnQ9z6D9ntLAlB+tP8g==", + "dependencies": { + "websocket-driver": ">=0.5.1" + }, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/figures": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz", + "integrity": "sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==", + "dependencies": { + "escape-string-regexp": "^1.0.5" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/fill-range": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", + "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", + "dependencies": { + "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/finalhandler": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.2.tgz", + "integrity": "sha512-aAWcW57uxVNrQZqFXjITpW3sIUQmHGG3qSb9mUah9MgMC4NeWhNOlNjXEYq3HjRAvL6arUviZGGJsBg6z0zsWA==", + "devOptional": true, + "dependencies": { + "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" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/finalhandler/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "devOptional": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/finalhandler/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "devOptional": true + }, + "node_modules/finalhandler/node_modules/on-finished": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", + "integrity": "sha512-ikqdkGAAyf/X/gPhXGvfgAytDZtDbr+bkNUJ0N9h5MI/dmdgCs3l6hoHrcUv41sRKew3jIwrp4qQDXiK99Utww==", + "devOptional": true, + "dependencies": { + "ee-first": "1.1.1" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/find-cache-dir": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-3.3.2.tgz", + "integrity": "sha512-wXZV5emFEjrridIgED11OoUKLxiYjAcqot/NJdAkOhlJ+vGzwhOAfcG5OX1jP+S0PcjEn8bdMJv+g2jwQ3Onig==", + "dependencies": { + "commondir": "^1.0.1", + "make-dir": "^3.0.2", + "pkg-dir": "^4.1.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/avajs/find-cache-dir?sponsor=1" + } + }, + "node_modules/find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "dependencies": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/flatted": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.3.3.tgz", + "integrity": "sha512-GX+ysw4PBCz0PzosHDepZGANEuFCMLrnRTiEy9McGjmkCQYwRq4A/X786G/fjM/+OjsWSU1ZrY5qyARZmO/uwg==", + "devOptional": true + }, + "node_modules/follow-redirects": { + "version": "1.15.9", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.9.tgz", + "integrity": "sha512-gew4GsXizNgdoRyqmyfMHyAmXsZDk6mHkSxZFCzW9gwlbtOW44CDtYavM+y+72qD/Vq2l550kMF52DT8fOLJqQ==", + "funding": [ + { + "type": "individual", + "url": "https://github.com/sponsors/RubenVerborgh" + } + ], + "engines": { + "node": ">=4.0" + }, + "peerDependenciesMeta": { + "debug": { + "optional": true + } + } + }, + "node_modules/for-each": { + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.5.tgz", + "integrity": "sha512-dKx12eRCVIzqCxFGplyFKJMPvLEWgmNtUrpTiJIR5u97zEhRG8ySrtboPHZXx7daLxQVrl643cTzbab2tkQjxg==", + "dev": true, + "dependencies": { + "is-callable": "^1.2.7" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/forever-agent": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", + "integrity": "sha512-j0KLYPhm6zeac4lz3oJ3o65qvgQCcPubiyotZrXqEaG4hNagNYO8qdlUrX5vwqv9ohqeT/Z3j6+yW067yWWdUw==", + "devOptional": true, + "engines": { + "node": "*" + } + }, + "node_modules/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==", + "devOptional": true, + "dependencies": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.6", + "mime-types": "^2.1.12" + }, + "engines": { + "node": ">= 0.12" + } + }, + "node_modules/forwarded": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz", + "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/fraction.js": { + "version": "4.3.7", + "resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-4.3.7.tgz", + "integrity": "sha512-ZsDfxO51wGAXREY55a7la9LScWpwv9RxIrYABrlvOFBlH/ShPnrtsXeuUIfXKKOVicNxQ+o8JTbJvjS4M89yew==", + "engines": { + "node": "*" + }, + "funding": { + "type": "patreon", + "url": "https://github.com/sponsors/rawify" + } + }, + "node_modules/fresh": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", + "integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/fs-extra": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", + "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==", + "devOptional": true, + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^4.0.0", + "universalify": "^0.1.0" + }, + "engines": { + "node": ">=6 <7 || >=8" + } + }, + "node_modules/fs-minipass": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", + "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/fs-monkey": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/fs-monkey/-/fs-monkey-1.0.6.tgz", + "integrity": "sha512-b1FMfwetIKymC0eioW7mTywihSQE4oLzQn1dB6rZB5fx/3NpNEdAWeCSMB+60/AeT0TCXsxzAlcYVEFCTAksWg==" + }, + "node_modules/fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==" + }, + "node_modules/fsevents": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", + "hasInstallScript": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, + "node_modules/function-bind": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", + "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/function.prototype.name": { + "version": "1.1.8", + "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.8.tgz", + "integrity": "sha512-e5iwyodOHhbMr/yNrc7fDYG4qlbIvI5gajyzPnb5TCwyhjApznQh1BMFou9b30SevY43gCJKXycoCBjMbsuW0Q==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.3", + "define-properties": "^1.2.1", + "functions-have-names": "^1.2.3", + "hasown": "^2.0.2", + "is-callable": "^1.2.7" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/functions-have-names": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz", + "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/gauge": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/gauge/-/gauge-4.0.4.tgz", + "integrity": "sha512-f9m+BEN5jkg6a0fZjleidjN51VE1X+mPFQ2DJ0uv1V39oCLCbsGe6yjbBnp7eK7z/+GAon99a3nHuqbuuthyPg==", + "deprecated": "This package is no longer supported.", + "dev": true, + "dependencies": { + "aproba": "^1.0.3 || ^2.0.0", + "color-support": "^1.1.3", + "console-control-strings": "^1.1.0", + "has-unicode": "^2.0.1", + "signal-exit": "^3.0.7", + "string-width": "^4.2.3", + "strip-ansi": "^6.0.1", + "wide-align": "^1.1.5" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/gensync": { + "version": "1.0.0-beta.2", + "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", + "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/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==", + "engines": { + "node": "6.* || 8.* || >= 10.*" + } + }, + "node_modules/get-intrinsic": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.3.0.tgz", + "integrity": "sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ==", + "dependencies": { + "call-bind-apply-helpers": "^1.0.2", + "es-define-property": "^1.0.1", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.1.1", + "function-bind": "^1.1.2", + "get-proto": "^1.0.1", + "gopd": "^1.2.0", + "has-symbols": "^1.1.0", + "hasown": "^2.0.2", + "math-intrinsics": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/get-package-type": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz", + "integrity": "sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==", + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/get-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/get-proto/-/get-proto-1.0.1.tgz", + "integrity": "sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==", + "dependencies": { + "dunder-proto": "^1.0.1", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/get-stream": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", + "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/get-symbol-description": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.1.0.tgz", + "integrity": "sha512-w9UMqWwJxHNOvoNzSJ2oPF5wvYcvP7jUvYzhp67yEhTi17ZDBBC1z9pTdGuzjD+EFIqLSYRweZjqfiPzQ06Ebg==", + "dev": true, + "dependencies": { + "call-bound": "^1.0.3", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.6" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/getpass": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", + "integrity": "sha512-0fzj9JxOLfJ+XGLhR8ze3unN0KZCgZwiSSDz168VERjK8Wl8kVSdcu2kspd4s4wtAa1y/qrVRiAA0WclVsu0ng==", + "devOptional": true, + "dependencies": { + "assert-plus": "^1.0.0" + } + }, + "node_modules/glob": { + "version": "8.0.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-8.0.3.tgz", + "integrity": "sha512-ull455NHSHI/Y1FqGaaYFaLGkNMMJbavMrEGFXG/PGrg6y7sutWHUHrz6gy6WEBH6akM1M414dWKCNs+IhKdiQ==", + "deprecated": "Glob versions prior to v9 are no longer supported", + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^5.0.1", + "once": "^1.3.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dependencies": { + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/glob-to-regexp": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz", + "integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==" + }, + "node_modules/globals": { + "version": "11.12.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", + "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", + "engines": { + "node": ">=4" + } + }, + "node_modules/globalthis": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.4.tgz", + "integrity": "sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ==", + "dev": true, + "dependencies": { + "define-properties": "^1.2.1", + "gopd": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/globby": { + "version": "13.2.2", + "resolved": "https://registry.npmjs.org/globby/-/globby-13.2.2.tgz", + "integrity": "sha512-Y1zNGV+pzQdh7H39l9zgB4PJqjRNqydvdYCDG4HFXM4XuvSaQQlEc91IU1yALL8gUTDomgBAfz3XJdmUS+oo0w==", + "dependencies": { + "dir-glob": "^3.0.1", + "fast-glob": "^3.3.0", + "ignore": "^5.2.4", + "merge2": "^1.4.1", + "slash": "^4.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/gopd": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.2.0.tgz", + "integrity": "sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/graceful-fs": { + "version": "4.2.11", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", + "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==" + }, + "node_modules/handle-thing": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/handle-thing/-/handle-thing-2.0.1.tgz", + "integrity": "sha512-9Qn4yBxelxoh2Ow62nP+Ka/kMnOXRi8BXnRaUwezLNhqelnN49xKz4F/dPP8OYLxLxq6JDtZb2i9XznUQbNPTg==" + }, + "node_modules/har-schema": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz", + "integrity": "sha512-Oqluz6zhGX8cyRaTQlFMPw80bSJVG2x/cFb8ZPhUILGgHka9SsokCCOQgpveePerqidZOrT14ipqfJb7ILcW5Q==", + "devOptional": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/har-validator": { + "version": "5.1.5", + "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.5.tgz", + "integrity": "sha512-nmT2T0lljbxdQZfspsno9hgrG3Uir6Ks5afism62poxqBM6sDnMEuPmzTq8XN0OEwqKLLdh1jQI3qyE66Nzb3w==", + "deprecated": "this library is no longer supported", + "devOptional": true, + "dependencies": { + "ajv": "^6.12.3", + "har-schema": "^2.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/har-validator/node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "devOptional": true, + "dependencies": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/har-validator/node_modules/json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "devOptional": true + }, + "node_modules/has-ansi": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", + "integrity": "sha512-C8vBJ8DwUCx19vhm7urhTuUsr4/IyP6l4VzNQDv+ryHQObW3TTTp9yB68WpYgRe2bbaGuZ/se74IqFeVnMnLZg==", + "devOptional": true, + "dependencies": { + "ansi-regex": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/has-ansi/node_modules/ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==", + "devOptional": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/has-bigints": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.1.0.tgz", + "integrity": "sha512-R3pbpkcIqv2Pm3dUwgjclDRVmWpTJW2DcMzcIhEXEx1oh/CEMObMm3KLmRJOdvhM7o4uQBnwr8pzRK2sJWIqfg==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/has-property-descriptors": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz", + "integrity": "sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==", + "dev": true, + "dependencies": { + "es-define-property": "^1.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-proto": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.2.0.tgz", + "integrity": "sha512-KIL7eQPfHQRC8+XluaIw7BHUwwqL19bQn4hzNgdr+1wXoU0KKj6rufu47lhY7KbJR2C6T6+PfyN0Ea7wkSS+qQ==", + "dev": true, + "dependencies": { + "dunder-proto": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-symbols": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.1.0.tgz", + "integrity": "sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-tostringtag": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.2.tgz", + "integrity": "sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==", + "devOptional": true, + "dependencies": { + "has-symbols": "^1.0.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-unicode": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", + "integrity": "sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ==", + "dev": true + }, + "node_modules/hasown": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", + "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", + "dependencies": { + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/hdr-histogram-js": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/hdr-histogram-js/-/hdr-histogram-js-2.0.3.tgz", + "integrity": "sha512-Hkn78wwzWHNCp2uarhzQ2SGFLU3JY8SBDDd3TAABK4fc30wm+MuPOrg5QVFVfkKOQd6Bfz3ukJEI+q9sXEkK1g==", + "dependencies": { + "@assemblyscript/loader": "^0.10.1", + "base64-js": "^1.2.0", + "pako": "^1.0.3" + } + }, + "node_modules/hdr-histogram-percentiles-obj": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/hdr-histogram-percentiles-obj/-/hdr-histogram-percentiles-obj-3.0.0.tgz", + "integrity": "sha512-7kIufnBqdsBGcSZLPJwqHT3yhk1QTsSlFsVD3kx5ixH/AlgBs9yM1q6DPhXZ8f8gtdqgh7N7/5btRLpQsS2gHw==" + }, + "node_modules/hosted-git-info": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-5.2.1.tgz", + "integrity": "sha512-xIcQYMnhcx2Nr4JTjsFmwwnr9vldugPy9uVm0o87bjqqWMv9GaqsTeT+i99wTl0mk1uLxJtHxLb8kymqTENQsw==", + "dev": true, + "dependencies": { + "lru-cache": "^7.5.1" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/hosted-git-info/node_modules/lru-cache": { + "version": "7.18.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", + "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", + "dev": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/hpack.js": { + "version": "2.1.6", + "resolved": "https://registry.npmjs.org/hpack.js/-/hpack.js-2.1.6.tgz", + "integrity": "sha512-zJxVehUdMGIKsRaNt7apO2Gqp0BdqW5yaiGHXXmbpvxgBYVZnAql+BJb4RO5ad2MgpbZKn5G6nMnegrH1FcNYQ==", + "dependencies": { + "inherits": "^2.0.1", + "obuf": "^1.0.0", + "readable-stream": "^2.0.1", + "wbuf": "^1.1.0" + } + }, + "node_modules/hpack.js/node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==" + }, + "node_modules/hpack.js/node_modules/readable-stream": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", + "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", + "dependencies": { + "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" + } + }, + "node_modules/hpack.js/node_modules/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==" + }, + "node_modules/hpack.js/node_modules/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==", + "dependencies": { + "safe-buffer": "~5.1.0" + } + }, + "node_modules/html-entities": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/html-entities/-/html-entities-2.5.2.tgz", + "integrity": "sha512-K//PSRMQk4FZ78Kyau+mZurHn3FH0Vwr+H36eE0rPbeYkRRi9YxceYPhuN60UwWorxyKHhqoAJl2OFKa4BVtaA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/mdevils" + }, + { + "type": "patreon", + "url": "https://patreon.com/mdevils" + } + ] + }, + "node_modules/html-escaper": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", + "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", + "dev": true + }, + "node_modules/http-cache-semantics": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.1.tgz", + "integrity": "sha512-er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ==", + "dev": true + }, + "node_modules/http-deceiver": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/http-deceiver/-/http-deceiver-1.2.7.tgz", + "integrity": "sha512-LmpOGxTfbpgtGVxJrj5k7asXHCgNZp5nLfp+hWc8QQRqtb7fUy6kRY3BO1h9ddF6yIPYUARgxGOwB42DnxIaNw==" + }, + "node_modules/http-errors": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", + "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==", + "dependencies": { + "depd": "2.0.0", + "inherits": "2.0.4", + "setprototypeof": "1.2.0", + "statuses": "2.0.1", + "toidentifier": "1.0.1" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/http-errors/node_modules/statuses": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", + "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/http-parser-js": { + "version": "0.5.9", + "resolved": "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.5.9.tgz", + "integrity": "sha512-n1XsPy3rXVxlqxVioEWdC+0+M+SQw0DpJynwtOPo1X+ZlvdzTLtDBIJJlDQTnwZIFJrZSzSGmIOUdP8tu+SgLw==" + }, + "node_modules/http-proxy": { + "version": "1.18.1", + "resolved": "https://registry.npmjs.org/http-proxy/-/http-proxy-1.18.1.tgz", + "integrity": "sha512-7mz/721AbnJwIVbnaSv1Cz3Am0ZLT/UBwkC92VlxhXv/k/BBQfM2fXElQNC27BVGr0uwUpplYPQM9LnaBMR5NQ==", + "dependencies": { + "eventemitter3": "^4.0.0", + "follow-redirects": "^1.0.0", + "requires-port": "^1.0.0" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/http-proxy-agent": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-5.0.0.tgz", + "integrity": "sha512-n2hY8YdoRE1i7r6M0w9DIw5GgZN0G25P8zLCRQ8rjXtTU3vsNFBI/vWK/UIeE6g5MUUz6avwAPXmL6Fy9D/90w==", + "dev": true, + "dependencies": { + "@tootallnate/once": "2", + "agent-base": "6", + "debug": "4" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/http-proxy-middleware": { + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/http-proxy-middleware/-/http-proxy-middleware-2.0.7.tgz", + "integrity": "sha512-fgVY8AV7qU7z/MmXJ/rxwbrtQH4jBQ9m7kp3llF0liB7glmFeVZFBepQb32T3y8n8k2+AEYuMPCpinYW+/CuRA==", + "dependencies": { + "@types/http-proxy": "^1.17.8", + "http-proxy": "^1.18.1", + "is-glob": "^4.0.1", + "is-plain-obj": "^3.0.0", + "micromatch": "^4.0.2" + }, + "engines": { + "node": ">=12.0.0" + }, + "peerDependencies": { + "@types/express": "^4.17.13" + }, + "peerDependenciesMeta": { + "@types/express": { + "optional": true + } + } + }, + "node_modules/http-signature": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", + "integrity": "sha512-CAbnr6Rz4CYQkLYUtSNXxQPUH2gK8f3iWexVlsnMeD+GjlsQ0Xsy1cOX+mN3dtxYomRy21CiOzU8Uhw6OwncEQ==", + "devOptional": true, + "dependencies": { + "assert-plus": "^1.0.0", + "jsprim": "^1.2.2", + "sshpk": "^1.7.0" + }, + "engines": { + "node": ">=0.8", + "npm": ">=1.3.7" + } + }, + "node_modules/https-proxy-agent": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", + "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", + "dependencies": { + "agent-base": "6", + "debug": "4" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/human-signals": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz", + "integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==", + "engines": { + "node": ">=10.17.0" + } + }, + "node_modules/humanize-ms": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/humanize-ms/-/humanize-ms-1.2.1.tgz", + "integrity": "sha512-Fl70vYtsAFb/C06PTS9dZBo7ihau+Tu/DNCk/OyHhea07S+aeMWpFFkUaXRa8fI+ScZbEI8dfSxwY7gxZ9SAVQ==", + "dev": true, + "dependencies": { + "ms": "^2.0.0" + } + }, + "node_modules/iconv-lite": { + "version": "0.4.24", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", + "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/icss-utils": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/icss-utils/-/icss-utils-5.1.0.tgz", + "integrity": "sha512-soFhflCVWLfRNOPU3iv5Z9VUdT44xFRbzjLsEzSr5AQmgqPMTHdU3PMT1Cf1ssx8fLNJDA1juftYl+PUcv3MqA==", + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/ieee754": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", + "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/ignore": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.2.tgz", + "integrity": "sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==", + "engines": { + "node": ">= 4" + } + }, + "node_modules/ignore-walk": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ignore-walk/-/ignore-walk-5.0.1.tgz", + "integrity": "sha512-yemi4pMf51WKT7khInJqAvsIGzoqYXblnsz0ql8tM+yi1EKYTY1evX4NAbJrLL/Aanr2HyZeluqU+Oi7MGHokw==", + "dev": true, + "dependencies": { + "minimatch": "^5.0.1" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/image-size": { + "version": "0.5.5", + "resolved": "https://registry.npmjs.org/image-size/-/image-size-0.5.5.tgz", + "integrity": "sha512-6TDAlDPZxUFCv+fuOkIoXT/V/f3Qbq8e37p+YOiYrUv3v9cc3/6x78VdfPgFVaB9dZYeLUfKgHRebpkm/oP2VQ==", + "optional": true, + "bin": { + "image-size": "bin/image-size.js" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/immediate": { + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/immediate/-/immediate-3.0.6.tgz", + "integrity": "sha512-XXOFtyqDjNDAQxVfYxuF7g9Il/IbWmmlQg2MYKOH8ExIT1qg6xc4zyS3HaEEATgs1btfzxq15ciUiY7gjSXRGQ==", + "devOptional": true + }, + "node_modules/immutable": { + "version": "4.3.7", + "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.3.7.tgz", + "integrity": "sha512-1hqclzwYwjRDFLjcFxOM5AYkkG0rpFPpr1RLPMEuGczoS7YA8gLhy8SWXYRAA/XwfEHpfo3cw5JGioS32fnMRw==" + }, + "node_modules/import-fresh": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.1.tgz", + "integrity": "sha512-TR3KfrTZTYLPB6jUjfx6MF9WcWrHL9su5TObK4ZkYgBdWKPOFoSoQIdEuTuR82pmtxH2spWG9h6etwfr1pLBqQ==", + "dependencies": { + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/import-fresh/node_modules/resolve-from": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", + "engines": { + "node": ">=4" + } + }, + "node_modules/imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", + "engines": { + "node": ">=0.8.19" + } + }, + "node_modules/indent-string": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", + "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", + "engines": { + "node": ">=8" + } + }, + "node_modules/infer-owner": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/infer-owner/-/infer-owner-1.0.4.tgz", + "integrity": "sha512-IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A==" + }, + "node_modules/inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "deprecated": "This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.", + "dependencies": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" + }, + "node_modules/ini": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ini/-/ini-3.0.0.tgz", + "integrity": "sha512-TxYQaeNW/N8ymDvwAxPyRbhMBtnEwuvaTYpOQkFx1nSeusgezHniEc/l35Vo4iCq/mMiTJbpD7oYxN98hFlfmw==", + "dev": true, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/injection-js": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/injection-js/-/injection-js-2.4.0.tgz", + "integrity": "sha512-6jiJt0tCAo9zjHbcwLiPL+IuNe9SQ6a9g0PEzafThW3fOQi0mrmiJGBJvDD6tmhPh8cQHIQtCOrJuBfQME4kPA==", + "dependencies": { + "tslib": "^2.0.0" + } + }, + "node_modules/inquirer": { + "version": "8.2.4", + "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-8.2.4.tgz", + "integrity": "sha512-nn4F01dxU8VeKfq192IjLsxu0/OmMZ4Lg3xKAns148rCaXP6ntAoEkVYZThWjwON8AlzdZZi6oqnhNbxUG9hVg==", + "dependencies": { + "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.4.1", + "run-async": "^2.4.0", + "rxjs": "^7.5.5", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0", + "through": "^2.3.6", + "wrap-ansi": "^7.0.0" + }, + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/internal-slot": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.1.0.tgz", + "integrity": "sha512-4gd7VpWNQNB4UKKCFFVcp1AVv+FMOgs9NKzjHKusc8jTMhd5eL1NqQqOpE0KzMds804/yHlglp3uxgluOqAPLw==", + "dev": true, + "dependencies": { + "es-errors": "^1.3.0", + "hasown": "^2.0.2", + "side-channel": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/ip-address": { + "version": "9.0.5", + "resolved": "https://registry.npmjs.org/ip-address/-/ip-address-9.0.5.tgz", + "integrity": "sha512-zHtQzGojZXTwZTHQqra+ETKd4Sn3vgi7uBmlPoXVWZqYvuKmtI0l/VZTjqGmJY9x88GGOaZ9+G9ES8hC4T4X8g==", + "dev": true, + "dependencies": { + "jsbn": "1.1.0", + "sprintf-js": "^1.1.3" + }, + "engines": { + "node": ">= 12" + } + }, + "node_modules/ip-address/node_modules/sprintf-js": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.1.3.tgz", + "integrity": "sha512-Oo+0REFV59/rz3gfJNKQiBlwfHaSESl1pcGyABQsnnIfWOFt6JNj5gCog2U6MLZ//IGYD+nA8nI+mTShREReaA==", + "dev": true + }, + "node_modules/ipaddr.js": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-2.2.0.tgz", + "integrity": "sha512-Ag3wB2o37wslZS19hZqorUnrnzSkpOVy+IiiDEiTqNubEYpYuHWIf6K4psgN2ZWKExS4xhVCrRVfb/wfW8fWJA==", + "engines": { + "node": ">= 10" + } + }, + "node_modules/is-array-buffer": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.5.tgz", + "integrity": "sha512-DDfANUiiG2wC1qawP66qlTugJeL5HyzMpfr8lLK+jMQirGzNod0B12cFB/9q838Ru27sBwfw78/rdoU7RERz6A==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.3", + "get-intrinsic": "^1.2.6" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-arrayish": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==" + }, + "node_modules/is-async-function": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-async-function/-/is-async-function-2.1.1.tgz", + "integrity": "sha512-9dgM/cZBnNvjzaMYHVoxxfPj2QXt22Ev7SuuPrs+xav0ukGB0S6d4ydZdEiM48kLx5kDV+QBPrpVnFyefL8kkQ==", + "dev": true, + "dependencies": { + "async-function": "^1.0.0", + "call-bound": "^1.0.3", + "get-proto": "^1.0.1", + "has-tostringtag": "^1.0.2", + "safe-regex-test": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-bigint": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.1.0.tgz", + "integrity": "sha512-n4ZT37wG78iz03xPRKJrHTdZbe3IicyucEtdRsV5yglwc3GyUfbAfpSeD0FJ41NbUNSt5wbhqfp1fS+BgnvDFQ==", + "dev": true, + "dependencies": { + "has-bigints": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/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==", + "dependencies": { + "binary-extensions": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-boolean-object": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.2.2.tgz", + "integrity": "sha512-wa56o2/ElJMYqjCjGkXri7it5FbebW5usLw/nPmCMs5DeZ7eziSYZhSmPRn0txqeW4LnAmQQU7FgqLpsEFKM4A==", + "dev": true, + "dependencies": { + "call-bound": "^1.0.3", + "has-tostringtag": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-builtin-module": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/is-builtin-module/-/is-builtin-module-3.2.1.tgz", + "integrity": "sha512-BSLE3HnV2syZ0FK0iMA/yUGplUeMmNz4AW5fnTunbCIqZi4vG3WjJT9FHMy5D69xmAYBHXQhJdALdpwVxV501A==", + "dependencies": { + "builtin-modules": "^3.3.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-builtin-module/node_modules/builtin-modules": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-3.3.0.tgz", + "integrity": "sha512-zhaCDicdLuWN5UbN5IMnFqNMhNfo919sH85y2/ea+5Yg9TsTkeZxpL+JLbp6cgYFS4sRLp3YV4S6yDuqVWHYOw==", + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-callable": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz", + "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-core-module": { + "version": "2.16.1", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.16.1.tgz", + "integrity": "sha512-UfoeMA6fIJ8wTYFEUjelnaGI67v6+N7qXJEvQuIGa99l4xsCruSYOVSQ0uPANn4dAzm8lkYPaKLrrijLq7x23w==", + "dependencies": { + "hasown": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-data-view": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-data-view/-/is-data-view-1.0.2.tgz", + "integrity": "sha512-RKtWF8pGmS87i2D6gqQu/l7EYRlVdfzemCJN/P3UOs//x1QE7mfhvzHIApBTRf7axvT6DMGwSwBXYCT0nfB9xw==", + "dev": true, + "dependencies": { + "call-bound": "^1.0.2", + "get-intrinsic": "^1.2.6", + "is-typed-array": "^1.1.13" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-date-object": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.1.0.tgz", + "integrity": "sha512-PwwhEakHVKTdRNVOw+/Gyh0+MzlCl4R6qKvkhuvLtPMggI1WAHt9sOwZxQLSGpUaDnrdyDsomoRgNnCfKNSXXg==", + "dev": true, + "dependencies": { + "call-bound": "^1.0.2", + "has-tostringtag": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-docker": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz", + "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==", + "bin": { + "is-docker": "cli.js" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-finalizationregistry": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-finalizationregistry/-/is-finalizationregistry-1.1.1.tgz", + "integrity": "sha512-1pC6N8qWJbWoPtEjgcL2xyhQOP491EQjeUo3qTKcmV8YSDDJrOepfG8pcC7h/QgnQHYSv0mJ3Z/ZWxmatVrysg==", + "dev": true, + "dependencies": { + "call-bound": "^1.0.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/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==", + "engines": { + "node": ">=8" + } + }, + "node_modules/is-generator-function": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-generator-function/-/is-generator-function-1.1.0.tgz", + "integrity": "sha512-nPUB5km40q9e8UfN/Zc24eLlzdSf9OfKByBw9CIdw4H1giPMeA0OIJvbchsCu4npfI2QcMVBsGEBHKZ7wLTWmQ==", + "dev": true, + "dependencies": { + "call-bound": "^1.0.3", + "get-proto": "^1.0.0", + "has-tostringtag": "^1.0.2", + "safe-regex-test": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-glob": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "dependencies": { + "is-extglob": "^2.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/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==", + "engines": { + "node": ">=8" + } + }, + "node_modules/is-lambda": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-lambda/-/is-lambda-1.0.1.tgz", + "integrity": "sha512-z7CMFGNrENq5iFB9Bqo64Xk6Y9sg+epq1myIcdHaGnbMTYOxvzsEtdYqQUylB7LxfkvgrrjP32T6Ywciio9UIQ==", + "dev": true + }, + "node_modules/is-map": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/is-map/-/is-map-2.0.3.tgz", + "integrity": "sha512-1Qed0/Hr2m+YqxnM09CjA2d/i6YZNfF6R2oRAOj36eUdS6qIV/huPJNSEpKbupewFs+ZsJlxsjjPbc0/afW6Lw==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-module": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-module/-/is-module-1.0.0.tgz", + "integrity": "sha512-51ypPSPCoTEIN9dy5Oy+h4pShgJmPCygKfyRCISBI+JoWT/2oJvK8QPxmwv7b/p239jXrm9M1mlQbyKJ5A152g==" + }, + "node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/is-number-object": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.1.1.tgz", + "integrity": "sha512-lZhclumE1G6VYD8VHe35wFaIif+CTy5SJIi5+3y4psDgWu4wPDoBhF8NxUOinEc7pHgiTsT6MaBb92rKhhD+Xw==", + "dev": true, + "dependencies": { + "call-bound": "^1.0.3", + "has-tostringtag": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-path-cwd": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-path-cwd/-/is-path-cwd-1.0.0.tgz", + "integrity": "sha512-cnS56eR9SPAscL77ik76ATVqoPARTqPIVkMDVxRaWH06zT+6+CzIroYRJ0VVvm0Z1zfAvxvz9i/D3Ppjaqt5Nw==", + "devOptional": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-path-in-cwd": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-path-in-cwd/-/is-path-in-cwd-1.0.1.tgz", + "integrity": "sha512-FjV1RTW48E7CWM7eE/J2NJvAEEVektecDBVBE5Hh3nM1Jd0kvhHtX68Pr3xsDf857xt3Y4AkwVULK1Vku62aaQ==", + "devOptional": true, + "dependencies": { + "is-path-inside": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-path-inside": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-1.0.1.tgz", + "integrity": "sha512-qhsCR/Esx4U4hg/9I19OVUAJkGWtjRYHMRgUMZE2TDdj+Ag+kttZanLupfddNyglzz50cUlmWzUaI37GDfNx/g==", + "devOptional": true, + "dependencies": { + "path-is-inside": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-plain-obj": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-3.0.0.tgz", + "integrity": "sha512-gwsOE28k+23GP1B6vFl1oVh/WOzmawBrKwo5Ev6wMKzPkaXaCDIQKzLnvsA42DRlbVTWorkgTKIviAKCWkfUwA==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/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==", + "dependencies": { + "isobject": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-reference": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/is-reference/-/is-reference-1.2.1.tgz", + "integrity": "sha512-U82MsXXiFIrjCK4otLT+o2NA2Cd2g5MLoOVXUZjIOhLurrRxpEXzI8O0KZHr3IjLvlAH1kTPYSuqer5T9ZVBKQ==", + "dependencies": { + "@types/estree": "*" + } + }, + "node_modules/is-regex": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.2.1.tgz", + "integrity": "sha512-MjYsKHO5O7mCsmRGxWcLWheFqN9DJ/2TmngvjKXihe6efViPqc274+Fx/4fYj/r03+ESvBdTXK0V6tA3rgez1g==", + "devOptional": true, + "dependencies": { + "call-bound": "^1.0.2", + "gopd": "^1.2.0", + "has-tostringtag": "^1.0.2", + "hasown": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-set": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/is-set/-/is-set-2.0.3.tgz", + "integrity": "sha512-iPAjerrse27/ygGLxw+EBR9agv9Y6uLeYVJMu+QNCoouJ1/1ri0mGrcWpfCqFZuzzx3WjtwxG098X+n4OuRkPg==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-shared-array-buffer": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.4.tgz", + "integrity": "sha512-ISWac8drv4ZGfwKl5slpHG9OwPNty4jOWPRIhBpxOoD+hqITiwuipOQ2bNthAzwA3B4fIjO4Nln74N0S9byq8A==", + "dev": true, + "dependencies": { + "call-bound": "^1.0.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-stream": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", + "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-string": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.1.1.tgz", + "integrity": "sha512-BtEeSsoaQjlSPBemMQIrY1MY0uM6vnS1g5fmufYOtnxLGUZM2178PKbhsk7Ffv58IX+ZtcvoGwccYsh0PglkAA==", + "dev": true, + "dependencies": { + "call-bound": "^1.0.3", + "has-tostringtag": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-symbol": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.1.1.tgz", + "integrity": "sha512-9gGx6GTtCQM73BgmHQXfDmLtfjjTUDSyoxTCbp5WtoixAhfgsDirWIcVQ/IHpvI5Vgd5i/J5F7B9cN/WlVbC/w==", + "dev": true, + "dependencies": { + "call-bound": "^1.0.2", + "has-symbols": "^1.1.0", + "safe-regex-test": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-typed-array": { + "version": "1.1.15", + "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.15.tgz", + "integrity": "sha512-p3EcsicXjit7SaskXHs1hA91QxgTw46Fv6EFKKGS5DRFLD8yKnohjF3hxoju94b/OcMZoQukzpPpBE9uLVKzgQ==", + "dev": true, + "dependencies": { + "which-typed-array": "^1.1.16" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-typedarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", + "integrity": "sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA==", + "devOptional": true + }, + "node_modules/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==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-weakmap": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/is-weakmap/-/is-weakmap-2.0.2.tgz", + "integrity": "sha512-K5pXYOm9wqY1RgjpL3YTkF39tni1XajUIkawTLUo9EZEVUFga5gSQJF8nNS7ZwJQ02y+1YCNYcMh+HIf1ZqE+w==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-weakref": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.1.1.tgz", + "integrity": "sha512-6i9mGWSlqzNMEqpCp93KwRS1uUOodk2OJ6b+sq7ZPDSy2WuI5NFIxp/254TytR8ftefexkWn5xNiHUNpPOfSew==", + "dev": true, + "dependencies": { + "call-bound": "^1.0.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-weakset": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-weakset/-/is-weakset-2.0.4.tgz", + "integrity": "sha512-mfcwb6IzQyOKTs84CQMrOwW4gQcaTOAWJ0zzJCl2WSPDrWk/OzDaImWFH3djXhb24g4eudZfLRozAvPGw4d9hQ==", + "dev": true, + "dependencies": { + "call-bound": "^1.0.3", + "get-intrinsic": "^1.2.6" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-what": { + "version": "3.14.1", + "resolved": "https://registry.npmjs.org/is-what/-/is-what-3.14.1.tgz", + "integrity": "sha512-sNxgpk9793nzSs7bA6JQJGeIuRBQhAaNGG77kzYQgMkrID+lS6SlK07K5LaptscDlSaIgH+GPFzf+d75FVxozA==" + }, + "node_modules/is-wsl": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", + "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==", + "dependencies": { + "is-docker": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/isarray": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", + "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==", + "dev": true + }, + "node_modules/isbinaryfile": { + "version": "4.0.10", + "resolved": "https://registry.npmjs.org/isbinaryfile/-/isbinaryfile-4.0.10.tgz", + "integrity": "sha512-iHrqe5shvBUcFbmZq9zOQHBoeOhZJu6RQGrDpBgenUm/Am+F3JM2MgQj+rK3Z601fzrL5gLZWtAPH2OBaSVcyw==", + "devOptional": true, + "engines": { + "node": ">= 8.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/gjtorikian/" + } + }, + "node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==" + }, + "node_modules/isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/isstream": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", + "integrity": "sha512-Yljz7ffyPbrLpLngrMtZ7NduUgVvi6wG9RJ9IUcyCd59YQ911PBJphODUcbOVbqYfxe1wuYf/LJ8PauMRwsM/g==", + "devOptional": true + }, + "node_modules/istanbul-lib-coverage": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.2.tgz", + "integrity": "sha512-O8dpsF+r0WV/8MNRKfnmrtCWhuKjxrq2w+jpzBL5UZKTi2LeVWnWOmWRxFlesJONmc+wLAGvKQZEOanko0LFTg==", + "engines": { + "node": ">=8" + } + }, + "node_modules/istanbul-lib-instrument": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.1.tgz", + "integrity": "sha512-pzqtp31nLv/XFOzXGuvhCb8qhjmTVo5vjVk19XE4CRlSWz0KoeJ3bw9XsA7nOp9YBf4qHjwBxkDzKcME/J29Yg==", + "dependencies": { + "@babel/core": "^7.12.3", + "@babel/parser": "^7.14.7", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-coverage": "^3.2.0", + "semver": "^6.3.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/istanbul-lib-instrument/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/istanbul-lib-report": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.1.tgz", + "integrity": "sha512-GCfE1mtsHGOELCU8e/Z7YWzpmybrx/+dSTfLrvY8qRmaY6zXTKWn6WQIjaAFw069icm6GVMNkgu0NzI4iPZUNw==", + "dev": true, + "dependencies": { + "istanbul-lib-coverage": "^3.0.0", + "make-dir": "^4.0.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/istanbul-lib-report/node_modules/make-dir": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-4.0.0.tgz", + "integrity": "sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw==", + "dev": true, + "dependencies": { + "semver": "^7.5.3" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/istanbul-lib-source-maps": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz", + "integrity": "sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==", + "dev": true, + "dependencies": { + "debug": "^4.1.1", + "istanbul-lib-coverage": "^3.0.0", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/istanbul-lib-source-maps/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/istanbul-reports": { + "version": "3.1.7", + "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.7.tgz", + "integrity": "sha512-BewmUXImeuRk2YY0PVbxgKAysvhRPUQE0h5QRM++nVWyubKGV0l8qQ5op8+B2DOmwSe63Jivj0BjkPQVf8fP5g==", + "dev": true, + "dependencies": { + "html-escaper": "^2.0.0", + "istanbul-lib-report": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jasmine": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/jasmine/-/jasmine-2.8.0.tgz", + "integrity": "sha512-KbdGQTf5jbZgltoHs31XGiChAPumMSY64OZMWLNYnEnMfG5uwGBhffePwuskexjT+/Jea/gU3qAU8344hNohSw==", + "devOptional": true, + "dependencies": { + "exit": "^0.1.2", + "glob": "^7.0.6", + "jasmine-core": "~2.8.0" + }, + "bin": { + "jasmine": "bin/jasmine.js" + } + }, + "node_modules/jasmine-core": { + "version": "4.6.1", + "resolved": "https://registry.npmjs.org/jasmine-core/-/jasmine-core-4.6.1.tgz", + "integrity": "sha512-VYz/BjjmC3klLJlLwA4Kw8ytk0zDSmbbDLNs794VnWmkcCB7I9aAL/D48VNQtmITyPvea2C3jdUMfc3kAoy0PQ==", + "dev": true + }, + "node_modules/jasmine-spec-reporter": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/jasmine-spec-reporter/-/jasmine-spec-reporter-7.0.0.tgz", + "integrity": "sha512-OtC7JRasiTcjsaCBPtMO0Tl8glCejM4J4/dNuOJdA8lBjz4PmWjYQ6pzb0uzpBNAWJMDudYuj9OdXJWqM2QTJg==", + "dev": true, + "dependencies": { + "colors": "1.4.0" + } + }, + "node_modules/jasmine/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "devOptional": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/jasmine/node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "deprecated": "Glob versions prior to v9 are no longer supported", + "devOptional": true, + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/jasmine/node_modules/jasmine-core": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/jasmine-core/-/jasmine-core-2.8.0.tgz", + "integrity": "sha512-SNkOkS+/jMZvLhuSx1fjhcNWUC/KG6oVyFUGkSBEr9n1axSNduWU8GlI7suaHXr4yxjet6KjrUZxUTE5WzzWwQ==", + "devOptional": true + }, + "node_modules/jasmine/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "devOptional": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/jasminewd2": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/jasminewd2/-/jasminewd2-2.2.0.tgz", + "integrity": "sha512-Rn0nZe4rfDhzA63Al3ZGh0E+JTmM6ESZYXJGKuqKGZObsAB9fwXPD03GjtIEvJBDOhN94T5MzbwZSqzFHSQPzg==", + "devOptional": true, + "engines": { + "node": ">= 6.9.x" + } + }, + "node_modules/jest-worker": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", + "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", + "dependencies": { + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" + }, + "engines": { + "node": ">= 10.13.0" + } + }, + "node_modules/jest-worker/node_modules/supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/supports-color?sponsor=1" + } + }, + "node_modules/js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==" + }, + "node_modules/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==", + "dependencies": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/jsbn": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-1.1.0.tgz", + "integrity": "sha512-4bYVV3aAMtDTTu4+xsDYa6sy9GyJ69/amsu9sYF2zqjiEoZA5xJi3BrfX3uY+/IekIu7MwdObdbDWpoZdBv3/A==", + "dev": true + }, + "node_modules/jsesc": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", + "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", + "bin": { + "jsesc": "bin/jsesc" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/json-parse-better-errors": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz", + "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==", + "dev": true + }, + "node_modules/json-parse-even-better-errors": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", + "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==" + }, + "node_modules/json-schema": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.4.0.tgz", + "integrity": "sha512-es94M3nTIfsEPisRafak+HDLfHXnKBhV3vU5eqPcS3flIWqcxJWgXHXiey3YrpaNsanY5ei1VoYEbOzijuq9BA==", + "devOptional": true + }, + "node_modules/json-schema-traverse": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", + "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==" + }, + "node_modules/json-stringify-safe": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", + "integrity": "sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA==", + "devOptional": true + }, + "node_modules/json5": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", + "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", + "bin": { + "json5": "lib/cli.js" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/jsonc-parser": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-3.1.0.tgz", + "integrity": "sha512-DRf0QjnNeCUds3xTjKlQQ3DpJD51GvDjJfnxUVWg6PZTo2otSm+slzNAxU/35hF8/oJIKoG9slq30JYOsF2azg==" + }, + "node_modules/jsonfile": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", + "integrity": "sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==", + "devOptional": true, + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/jsonparse": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/jsonparse/-/jsonparse-1.3.1.tgz", + "integrity": "sha512-POQXvpdL69+CluYsillJ7SUhKvytYjW9vG/GKpnf+xP8UWgYEM/RaMzHHofbALDiKbbP1W8UEYmgGl39WkPZsg==", + "dev": true, + "engines": [ + "node >= 0.2.0" + ] + }, + "node_modules/jsprim": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.2.tgz", + "integrity": "sha512-P2bSOMAc/ciLz6DzgjVlGJP9+BrJWu5UDGK70C2iweC5QBIeFf0ZXRvGjEj2uYgrY2MkAAhsSWHDWlFtEroZWw==", + "devOptional": true, + "dependencies": { + "assert-plus": "1.0.0", + "extsprintf": "1.3.0", + "json-schema": "0.4.0", + "verror": "1.10.0" + }, + "engines": { + "node": ">=0.6.0" + } + }, + "node_modules/jszip": { + "version": "3.10.1", + "resolved": "https://registry.npmjs.org/jszip/-/jszip-3.10.1.tgz", + "integrity": "sha512-xXDvecyTpGLrqFrvkrUSoxxfJI5AH7U8zxxtVclpsUtMCq4JQ290LY8AW5c7Ggnr/Y/oK+bQMbqK2qmtk3pN4g==", + "devOptional": true, + "dependencies": { + "lie": "~3.3.0", + "pako": "~1.0.2", + "readable-stream": "~2.3.6", + "setimmediate": "^1.0.5" + } + }, + "node_modules/jszip/node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", + "devOptional": true + }, + "node_modules/jszip/node_modules/readable-stream": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", + "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", + "devOptional": true, + "dependencies": { + "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" + } + }, + "node_modules/jszip/node_modules/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==", + "devOptional": true + }, + "node_modules/jszip/node_modules/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==", + "devOptional": true, + "dependencies": { + "safe-buffer": "~5.1.0" + } + }, + "node_modules/karma": { + "version": "6.4.4", + "resolved": "https://registry.npmjs.org/karma/-/karma-6.4.4.tgz", + "integrity": "sha512-LrtUxbdvt1gOpo3gxG+VAJlJAEMhbWlM4YrFQgql98FwF7+K8K12LYO4hnDdUkNjeztYrOXEMqgTajSWgmtI/w==", + "devOptional": true, + "dependencies": { + "@colors/colors": "1.5.0", + "body-parser": "^1.19.0", + "braces": "^3.0.2", + "chokidar": "^3.5.1", + "connect": "^3.7.0", + "di": "^0.0.1", + "dom-serialize": "^2.2.1", + "glob": "^7.1.7", + "graceful-fs": "^4.2.6", + "http-proxy": "^1.18.1", + "isbinaryfile": "^4.0.8", + "lodash": "^4.17.21", + "log4js": "^6.4.1", + "mime": "^2.5.2", + "minimatch": "^3.0.4", + "mkdirp": "^0.5.5", + "qjobs": "^1.2.0", + "range-parser": "^1.2.1", + "rimraf": "^3.0.2", + "socket.io": "^4.7.2", + "source-map": "^0.6.1", + "tmp": "^0.2.1", + "ua-parser-js": "^0.7.30", + "yargs": "^16.1.1" + }, + "bin": { + "karma": "bin/karma" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/karma-chrome-launcher": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/karma-chrome-launcher/-/karma-chrome-launcher-3.1.1.tgz", + "integrity": "sha512-hsIglcq1vtboGPAN+DGCISCFOxW+ZVnIqhDQcCMqqCp+4dmJ0Qpq5QAjkbA0X2L9Mi6OBkHi2Srrbmm7pUKkzQ==", + "dev": true, + "dependencies": { + "which": "^1.2.1" + } + }, + "node_modules/karma-coverage": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/karma-coverage/-/karma-coverage-2.2.1.tgz", + "integrity": "sha512-yj7hbequkQP2qOSb20GuNSIyE//PgJWHwC2IydLE6XRtsnaflv+/OSGNssPjobYUlhVVagy99TQpqUt3vAUG7A==", + "dev": true, + "dependencies": { + "istanbul-lib-coverage": "^3.2.0", + "istanbul-lib-instrument": "^5.1.0", + "istanbul-lib-report": "^3.0.0", + "istanbul-lib-source-maps": "^4.0.1", + "istanbul-reports": "^3.0.5", + "minimatch": "^3.0.4" + }, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/karma-coverage-istanbul-reporter": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/karma-coverage-istanbul-reporter/-/karma-coverage-istanbul-reporter-3.0.3.tgz", + "integrity": "sha512-wE4VFhG/QZv2Y4CdAYWDbMmcAHeS926ZIji4z+FkB2aF/EposRb6DP6G5ncT/wXhqUfAb/d7kZrNKPonbvsATw==", + "dev": true, + "dependencies": { + "istanbul-lib-coverage": "^3.0.0", + "istanbul-lib-report": "^3.0.0", + "istanbul-lib-source-maps": "^3.0.6", + "istanbul-reports": "^3.0.2", + "minimatch": "^3.0.4" + }, + "funding": { + "url": "https://github.com/sponsors/mattlewis92" + } + }, + "node_modules/karma-coverage-istanbul-reporter/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/karma-coverage-istanbul-reporter/node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "deprecated": "Glob versions prior to v9 are no longer supported", + "dev": true, + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/karma-coverage-istanbul-reporter/node_modules/istanbul-lib-source-maps": { + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-3.0.6.tgz", + "integrity": "sha512-R47KzMtDJH6X4/YW9XTx+jrLnZnscW4VpNN+1PViSYTejLVPWv7oov+Duf8YQSPyVRUvueQqz1TcsC6mooZTXw==", + "dev": true, + "dependencies": { + "debug": "^4.1.1", + "istanbul-lib-coverage": "^2.0.5", + "make-dir": "^2.1.0", + "rimraf": "^2.6.3", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/karma-coverage-istanbul-reporter/node_modules/istanbul-lib-source-maps/node_modules/istanbul-lib-coverage": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.5.tgz", + "integrity": "sha512-8aXznuEPCJvGnMSRft4udDRDtb1V3pkQkMMI5LI+6HuQz5oQ4J2UFn1H82raA3qJtyOLkkwVqICBQkjnGtn5mA==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/karma-coverage-istanbul-reporter/node_modules/make-dir": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", + "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", + "dev": true, + "dependencies": { + "pify": "^4.0.1", + "semver": "^5.6.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/karma-coverage-istanbul-reporter/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/karma-coverage-istanbul-reporter/node_modules/pify": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", + "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/karma-coverage-istanbul-reporter/node_modules/rimraf": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", + "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", + "deprecated": "Rimraf versions prior to v4 are no longer supported", + "dev": true, + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + } + }, + "node_modules/karma-coverage-istanbul-reporter/node_modules/semver": { + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", + "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", + "dev": true, + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/karma-coverage-istanbul-reporter/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/karma-coverage/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/karma-coverage/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/karma-jasmine": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/karma-jasmine/-/karma-jasmine-5.1.0.tgz", + "integrity": "sha512-i/zQLFrfEpRyQoJF9fsCdTMOF5c2dK7C7OmsuKg2D0YSsuZSfQDiLuaiktbuio6F2wiCsZSnSnieIQ0ant/uzQ==", + "dev": true, + "dependencies": { + "jasmine-core": "^4.1.0" + }, + "engines": { + "node": ">=12" + }, + "peerDependencies": { + "karma": "^6.0.0" + } + }, + "node_modules/karma-jasmine-html-reporter": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/karma-jasmine-html-reporter/-/karma-jasmine-html-reporter-2.1.0.tgz", + "integrity": "sha512-sPQE1+nlsn6Hwb5t+HHwyy0A1FNCVKuL1192b+XNauMYWThz2kweiBVW1DqloRpVvZIJkIoHVB7XRpK78n1xbQ==", + "dev": true, + "peerDependencies": { + "jasmine-core": "^4.0.0 || ^5.0.0", + "karma": "^6.0.0", + "karma-jasmine": "^5.0.0" + } + }, + "node_modules/karma-source-map-support": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/karma-source-map-support/-/karma-source-map-support-1.4.0.tgz", + "integrity": "sha512-RsBECncGO17KAoJCYXjv+ckIz+Ii9NCi+9enk+rq6XC81ezYkb4/RHE6CTXdA7IOJqoF3wcaLfVG0CPmE5ca6A==", + "dependencies": { + "source-map-support": "^0.5.5" + } + }, + "node_modules/karma/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "devOptional": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/karma/node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "deprecated": "Glob versions prior to v9 are no longer supported", + "devOptional": true, + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/karma/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "devOptional": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/karma/node_modules/mkdirp": { + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", + "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", + "devOptional": true, + "dependencies": { + "minimist": "^1.2.6" + }, + "bin": { + "mkdirp": "bin/cmd.js" + } + }, + "node_modules/karma/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "devOptional": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/karma/node_modules/tmp": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.2.3.tgz", + "integrity": "sha512-nZD7m9iCPC5g0pYmcaxogYKggSfLsdxl8of3Q/oIbqCqLLIO9IAF0GWjX1z9NZRHPiXv8Wex4yDCaZsgEw0Y8w==", + "devOptional": true, + "engines": { + "node": ">=14.14" + } + }, + "node_modules/karma/node_modules/yargs": { + "version": "16.2.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", + "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", + "devOptional": true, + "dependencies": { + "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" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/karma/node_modules/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==", + "devOptional": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/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==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/klona": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/klona/-/klona-2.0.6.tgz", + "integrity": "sha512-dhG34DXATL5hSxJbIexCft8FChFXtmskoZYnoPWjXQuebWYCNkVeV3KkGegCK9CP1oswI/vQibS2GY7Em/sJJA==", + "engines": { + "node": ">= 8" + } + }, + "node_modules/less": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/less/-/less-4.1.3.tgz", + "integrity": "sha512-w16Xk/Ta9Hhyei0Gpz9m7VS8F28nieJaL/VyShID7cYvP6IL5oHeL6p4TXSDJqZE/lNv0oJ2pGVjJsRkfwm5FA==", + "dependencies": { + "copy-anything": "^2.0.1", + "parse-node-version": "^1.0.1", + "tslib": "^2.3.0" + }, + "bin": { + "lessc": "bin/lessc" + }, + "engines": { + "node": ">=6" + }, + "optionalDependencies": { + "errno": "^0.1.1", + "graceful-fs": "^4.1.2", + "image-size": "~0.5.0", + "make-dir": "^2.1.0", + "mime": "^1.4.1", + "needle": "^3.1.0", + "source-map": "~0.6.0" + } + }, + "node_modules/less-loader": { + "version": "11.0.0", + "resolved": "https://registry.npmjs.org/less-loader/-/less-loader-11.0.0.tgz", + "integrity": "sha512-9+LOWWjuoectIEx3zrfN83NAGxSUB5pWEabbbidVQVgZhN+wN68pOvuyirVlH1IK4VT1f3TmlyvAnCXh8O5KEw==", + "dependencies": { + "klona": "^2.0.4" + }, + "engines": { + "node": ">= 14.15.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "less": "^3.5.0 || ^4.0.0", + "webpack": "^5.0.0" + } + }, + "node_modules/less/node_modules/make-dir": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", + "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", + "optional": true, + "dependencies": { + "pify": "^4.0.1", + "semver": "^5.6.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/less/node_modules/mime": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", + "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", + "optional": true, + "bin": { + "mime": "cli.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/less/node_modules/pify": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", + "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", + "optional": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/less/node_modules/semver": { + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", + "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", + "optional": true, + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/less/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "optional": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/license-webpack-plugin": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/license-webpack-plugin/-/license-webpack-plugin-4.0.2.tgz", + "integrity": "sha512-771TFWFD70G1wLTC4oU2Cw4qvtmNrIw+wRvBtn+okgHl7slJVi7zfNcdmqDL72BojM30VNJ2UHylr1o77U37Jw==", + "dependencies": { + "webpack-sources": "^3.0.0" + }, + "peerDependenciesMeta": { + "webpack": { + "optional": true + }, + "webpack-sources": { + "optional": true + } + } + }, + "node_modules/lie": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/lie/-/lie-3.3.0.tgz", + "integrity": "sha512-UaiMJzeWRlEujzAuw5LokY1L5ecNQYZKfmyZ9L7wDHb/p5etKaxXhohBcrw0EYby+G/NA52vRSN4N39dxHAIwQ==", + "devOptional": true, + "dependencies": { + "immediate": "~3.0.5" + } + }, + "node_modules/lines-and-columns": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", + "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==" + }, + "node_modules/load-json-file": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-4.0.0.tgz", + "integrity": "sha512-Kx8hMakjX03tiGTLAIdJ+lL0htKnXjEZN6hk/tozf/WOuYGdZBJrZ+rCJRbVCugsjB3jMLn9746NsQIf5VjBMw==", + "dev": true, + "dependencies": { + "graceful-fs": "^4.1.2", + "parse-json": "^4.0.0", + "pify": "^3.0.0", + "strip-bom": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/load-json-file/node_modules/parse-json": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", + "integrity": "sha512-aOIos8bujGN93/8Ox/jPLh7RwVnPEysynVFE+fQZyg6jKELEHwzgKdLRFHUgXJL6kylijVSBC4BvN9OmsB48Rw==", + "dev": true, + "dependencies": { + "error-ex": "^1.3.1", + "json-parse-better-errors": "^1.0.1" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/load-json-file/node_modules/pify": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", + "integrity": "sha512-C3FsVNH1udSEX48gGX1xfvwTWfsYWj5U+8/uK15BGzIGrKoUpghX8hWZwa/OFnakBiiVNmBvemTJR5mcy7iPcg==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/loader-runner": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-4.3.0.tgz", + "integrity": "sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg==", + "engines": { + "node": ">=6.11.5" + } + }, + "node_modules/loader-utils": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-3.2.1.tgz", + "integrity": "sha512-ZvFw1KWS3GVyYBYb7qkmRM/WwL2TQQBxgCK62rlvm4WpVQ23Nb4tYjApUlfjrEGvOs7KHEsmyUn75OHZrJMWPw==", + "engines": { + "node": ">= 12.13.0" + } + }, + "node_modules/locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "dependencies": { + "p-locate": "^4.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/lodash": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" + }, + "node_modules/lodash.debounce": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", + "integrity": "sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==" + }, + "node_modules/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==", + "dependencies": { + "chalk": "^4.1.0", + "is-unicode-supported": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/log4js": { + "version": "6.9.1", + "resolved": "https://registry.npmjs.org/log4js/-/log4js-6.9.1.tgz", + "integrity": "sha512-1somDdy9sChrr9/f4UlzhdaGfDR2c/SaD2a4T7qEkG4jTS57/B3qmnjLYePwQ8cqWnUHZI0iAKxMBpCZICiZ2g==", + "devOptional": true, + "dependencies": { + "date-format": "^4.0.14", + "debug": "^4.3.4", + "flatted": "^3.2.7", + "rfdc": "^1.3.0", + "streamroller": "^3.1.5" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "dependencies": { + "yallist": "^3.0.2" + } + }, + "node_modules/magic-string": { + "version": "0.26.2", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.26.2.tgz", + "integrity": "sha512-NzzlXpclt5zAbmo6h6jNc8zl2gNRGHvmsZW4IvZhTC4W7k4OlLP+S5YLussa/r3ixNT66KOQfNORlXHSOy/X4A==", + "dependencies": { + "sourcemap-codec": "^1.4.8" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/make-dir": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "dependencies": { + "semver": "^6.0.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/make-dir/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/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 + }, + "node_modules/make-fetch-happen": { + "version": "10.2.1", + "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-10.2.1.tgz", + "integrity": "sha512-NgOPbRiaQM10DYXvN3/hhGVI2M5MtITFryzBGxHM5p4wnFxsVCbxkrBrDsk+EZ5OB4jEOT7AjDxtdF+KVEFT7w==", + "dev": true, + "dependencies": { + "agentkeepalive": "^4.2.1", + "cacache": "^16.1.0", + "http-cache-semantics": "^4.1.0", + "http-proxy-agent": "^5.0.0", + "https-proxy-agent": "^5.0.0", + "is-lambda": "^1.0.1", + "lru-cache": "^7.7.1", + "minipass": "^3.1.6", + "minipass-collect": "^1.0.2", + "minipass-fetch": "^2.0.3", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "negotiator": "^0.6.3", + "promise-retry": "^2.0.1", + "socks-proxy-agent": "^7.0.0", + "ssri": "^9.0.0" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/make-fetch-happen/node_modules/lru-cache": { + "version": "7.18.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", + "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", + "dev": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/math-intrinsics": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/math-intrinsics/-/math-intrinsics-1.1.0.tgz", + "integrity": "sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/media-typer": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", + "integrity": "sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/memfs": { + "version": "3.5.3", + "resolved": "https://registry.npmjs.org/memfs/-/memfs-3.5.3.tgz", + "integrity": "sha512-UERzLsxzllchadvbPs5aolHh65ISpKpM+ccLbOJ8/vvpBKmAWf+la7dXFy7Mr0ySHbdHrFv5kGFCUHHe6GFEmw==", + "dependencies": { + "fs-monkey": "^1.0.4" + }, + "engines": { + "node": ">= 4.0.0" + } + }, + "node_modules/memorystream": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/memorystream/-/memorystream-0.3.1.tgz", + "integrity": "sha512-S3UwM3yj5mtUSEfP41UZmt/0SCoVYUcU1rkXv+BQ5Ig8ndL4sPoJNBUJERafdPb5jjHJGuMgytgKvKIf58XNBw==", + "dev": true, + "engines": { + "node": ">= 0.10.0" + } + }, + "node_modules/merge-descriptors": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.3.tgz", + "integrity": "sha512-gaNvAS7TZ897/rVaZ0nMtAyxNyi/pdbjbAwUpFQpN70GqnVfOiXpeUUMKRBmzXaSQ8DdTX4/0ms62r2K+hE6mQ==", + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/merge-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", + "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==" + }, + "node_modules/merge2": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", + "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", + "engines": { + "node": ">= 8" + } + }, + "node_modules/methods": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", + "integrity": "sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/micromatch": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz", + "integrity": "sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==", + "dependencies": { + "braces": "^3.0.3", + "picomatch": "^2.3.1" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/micromatch/node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/mime": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-2.6.0.tgz", + "integrity": "sha512-USPkMeET31rOMiarsBNIHZKLGgvKc/LrjofAnBlOttf5ajRvqiRA8QsenbcooctK6d6Ts6aqZXBA+XbkKthiQg==", + "devOptional": true, + "bin": { + "mime": "cli.js" + }, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/mime-db": { + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mime-types": { + "version": "2.1.35", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", + "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", + "dependencies": { + "mime-db": "1.52.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mimic-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", + "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", + "engines": { + "node": ">=6" + } + }, + "node_modules/mini-css-extract-plugin": { + "version": "2.6.1", + "resolved": "https://registry.npmjs.org/mini-css-extract-plugin/-/mini-css-extract-plugin-2.6.1.tgz", + "integrity": "sha512-wd+SD57/K6DiV7jIR34P+s3uckTRuQvx0tKPcvjFlrEylk6P4mQ2KSWk1hblj1Kxaqok7LogKOieygXqBczNlg==", + "dependencies": { + "schema-utils": "^4.0.0" + }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^5.0.0" + } + }, + "node_modules/mini-css-extract-plugin/node_modules/schema-utils": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.3.0.tgz", + "integrity": "sha512-Gf9qqc58SpCA/xdziiHz35F4GNIWYWZrEshUc/G/r5BnLph6xpKuLeoJoQuj5WfBIx/eQLf+hmVPYHaxJu7V2g==", + "dependencies": { + "@types/json-schema": "^7.0.9", + "ajv": "^8.9.0", + "ajv-formats": "^2.1.1", + "ajv-keywords": "^5.1.0" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/minimalistic-assert": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", + "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==" + }, + "node_modules/minimatch": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.0.tgz", + "integrity": "sha512-9TPBGGak4nHfGZsPBohm9AWg6NoT7QTCehS3BIJABslyZbzxfV78QM2Y6+i741OPZIafFAaiiEMh5OyIrJPgtg==", + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/minimist": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", + "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", + "devOptional": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/minipass-collect": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/minipass-collect/-/minipass-collect-1.0.2.tgz", + "integrity": "sha512-6T6lH0H8OG9kITm/Jm6tdooIbogG9e0tLgpY6mphXSm/A9u8Nq1ryBG+Qspiub9LjWlBPsPS3tWQ/Botq4FdxA==", + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/minipass-fetch": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-2.1.2.tgz", + "integrity": "sha512-LT49Zi2/WMROHYoqGgdlQIZh8mLPZmOrN2NdJjMXxYe4nkN6FUyuPuOAOedNJDrx0IRGg9+4guZewtp8hE6TxA==", + "dev": true, + "dependencies": { + "minipass": "^3.1.6", + "minipass-sized": "^1.0.3", + "minizlib": "^2.1.2" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + }, + "optionalDependencies": { + "encoding": "^0.1.13" + } + }, + "node_modules/minipass-flush": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/minipass-flush/-/minipass-flush-1.0.5.tgz", + "integrity": "sha512-JmQSYYpPUqX5Jyn1mXaRwOda1uQ8HP5KAT/oDSLCzt1BYRhQU0/hDtsB1ufZfEEzMZ9aAVmsBw8+FWsIXlClWw==", + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/minipass-json-stream": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/minipass-json-stream/-/minipass-json-stream-1.0.2.tgz", + "integrity": "sha512-myxeeTm57lYs8pH2nxPzmEEg8DGIgW+9mv6D4JZD2pa81I/OBjeU7PtICXV6c9eRGTA5JMDsuIPUZRCyBMYNhg==", + "dev": true, + "dependencies": { + "jsonparse": "^1.3.1", + "minipass": "^3.0.0" + } + }, + "node_modules/minipass-pipeline": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/minipass-pipeline/-/minipass-pipeline-1.2.4.tgz", + "integrity": "sha512-xuIq7cIOt09RPRJ19gdi4b+RiNvDFYe5JH+ggNvBqGqpQXcru3PcRmOZuHBKWK1Txf9+cQ+HMVN4d6z46LZP7A==", + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/minipass-sized": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/minipass-sized/-/minipass-sized-1.0.3.tgz", + "integrity": "sha512-MbkQQ2CTiBMlA2Dm/5cY+9SWFEN8pzzOXi6rlM5Xxq0Yqbda5ZQy9sU75a673FE9ZK0Zsbr6Y5iP6u9nktfg2g==", + "dev": true, + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/minipass/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + }, + "node_modules/minizlib": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz", + "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==", + "dependencies": { + "minipass": "^3.0.0", + "yallist": "^4.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/minizlib/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + }, + "node_modules/mkdirp": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", + "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", + "bin": { + "mkdirp": "bin/cmd.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" + }, + "node_modules/multicast-dns": { + "version": "7.2.5", + "resolved": "https://registry.npmjs.org/multicast-dns/-/multicast-dns-7.2.5.tgz", + "integrity": "sha512-2eznPJP8z2BFLX50tf0LuODrpINqP1RVIm/CObbTcBRITQgmC/TjcREF1NeTBzIcR5XO/ukWo+YHOjBbFwIupg==", + "dependencies": { + "dns-packet": "^5.2.2", + "thunky": "^1.0.2" + }, + "bin": { + "multicast-dns": "cli.js" + } + }, + "node_modules/mute-stream": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz", + "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==" + }, + "node_modules/nanoid": { + "version": "3.3.8", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.8.tgz", + "integrity": "sha512-WNLf5Sd8oZxOm+TzppcYk8gVOgP+l58xNy58D0nbUnOxOWRWvlcCV4kUF7ltmI6PsrLl/BgKEyS4mqsGChFN0w==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "bin": { + "nanoid": "bin/nanoid.cjs" + }, + "engines": { + "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" + } + }, + "node_modules/needle": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/needle/-/needle-3.3.1.tgz", + "integrity": "sha512-6k0YULvhpw+RoLNiQCRKOl09Rv1dPLr8hHnVjHqdolKwDrdNyk+Hmrthi4lIGPPz3r39dLx0hsF5s40sZ3Us4Q==", + "optional": true, + "dependencies": { + "iconv-lite": "^0.6.3", + "sax": "^1.2.4" + }, + "bin": { + "needle": "bin/needle" + }, + "engines": { + "node": ">= 4.4.x" + } + }, + "node_modules/needle/node_modules/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==", + "optional": true, + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/negotiator": { + "version": "0.6.4", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.4.tgz", + "integrity": "sha512-myRT3DiWPHqho5PrJaIRyaMv2kgYf0mUVgBNOYMuCH5Ki1yEiQaf/ZJuQ62nvpc44wL5WDbTX7yGJi1Neevw8w==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/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==" + }, + "node_modules/ng-packagr": { + "version": "14.2.0", + "resolved": "https://registry.npmjs.org/ng-packagr/-/ng-packagr-14.2.0.tgz", + "integrity": "sha512-Nb+2/L37CFcWmCz91USwNd87mdTfTXDb4MBl87Dkj2H53KfrAltX2psa+gTRbjE5USCX8bQeu4nRzf/Bp6Vivg==", + "dependencies": { + "@rollup/plugin-json": "^4.1.0", + "@rollup/plugin-node-resolve": "^13.1.3", + "ajv": "^8.10.0", + "ansi-colors": "^4.1.1", + "browserslist": "^4.20.0", + "cacache": "^16.0.0", + "chokidar": "^3.5.3", + "commander": "^9.0.0", + "dependency-graph": "^0.11.0", + "esbuild-wasm": "^0.15.0", + "find-cache-dir": "^3.3.2", + "glob": "^8.0.0", + "injection-js": "^2.4.0", + "jsonc-parser": "^3.0.0", + "less": "^4.1.2", + "ora": "^5.1.0", + "postcss": "^8.4.8", + "postcss-preset-env": "^7.4.2", + "postcss-url": "^10.1.3", + "rollup": "^2.70.0", + "rollup-plugin-sourcemaps": "^0.6.3", + "rxjs": "^7.5.5", + "sass": "^1.49.9", + "stylus": "^0.59.0" + }, + "bin": { + "ng-packagr": "cli/main.js" + }, + "engines": { + "node": "^14.15.0 || >=16.10.0" + }, + "optionalDependencies": { + "esbuild": "^0.15.0" + }, + "peerDependencies": { + "@angular/compiler-cli": "^14.0.0 || ^14.0.0-next || ^14.2.0-next", + "tslib": "^2.3.0", + "typescript": ">=4.6.2 <4.9" + } + }, + "node_modules/ng-packagr/node_modules/@rollup/plugin-node-resolve": { + "version": "13.3.0", + "resolved": "https://registry.npmjs.org/@rollup/plugin-node-resolve/-/plugin-node-resolve-13.3.0.tgz", + "integrity": "sha512-Lus8rbUo1eEcnS4yTFKLZrVumLPY+YayBdWXgFSHYhTT2iJbMhoaaBL3xl5NCdeRytErGr8tZ0L71BMRmnlwSw==", + "dependencies": { + "@rollup/pluginutils": "^3.1.0", + "@types/resolve": "1.17.1", + "deepmerge": "^4.2.2", + "is-builtin-module": "^3.1.0", + "is-module": "^1.0.0", + "resolve": "^1.19.0" + }, + "engines": { + "node": ">= 10.0.0" + }, + "peerDependencies": { + "rollup": "^2.42.0" + } + }, + "node_modules/ng-packagr/node_modules/@rollup/pluginutils": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-3.1.0.tgz", + "integrity": "sha512-GksZ6pr6TpIjHm8h9lSQ8pi8BE9VeubNT0OMJ3B5uZJ8pz73NPiqOtCog/x2/QzM1ENChPKxMDhiQuRHsqc+lg==", + "dependencies": { + "@types/estree": "0.0.39", + "estree-walker": "^1.0.1", + "picomatch": "^2.2.2" + }, + "engines": { + "node": ">= 8.0.0" + }, + "peerDependencies": { + "rollup": "^1.20.0||^2.0.0" + } + }, + "node_modules/ng-packagr/node_modules/@types/estree": { + "version": "0.0.39", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.39.tgz", + "integrity": "sha512-EYNwp3bU+98cpU4lAWYYL7Zz+2gryWH1qbdDTidVd6hkiR6weksdbMadyXKXNPEkQFhXM+hVO9ZygomHXp+AIw==" + }, + "node_modules/ng-packagr/node_modules/@types/resolve": { + "version": "1.17.1", + "resolved": "https://registry.npmjs.org/@types/resolve/-/resolve-1.17.1.tgz", + "integrity": "sha512-yy7HuzQhj0dhGpD8RLXSZWEkLsV9ibvxvi6EiJ3bkqLAO1RGo0WbkWQiwpRlSFymTJRz0d3k5LM3kkx8ArDbLw==", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/ng-packagr/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/ng-packagr/node_modules/estree-walker": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-1.0.1.tgz", + "integrity": "sha512-1fMXF3YP4pZZVozF8j/ZLfvnR8NSIljt56UhbZ5PeeDmmGHpgpdwQt7ITlGvYaQukCvuBRMLEiKiYC+oeIg4cg==" + }, + "node_modules/ng-packagr/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/ng-packagr/node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/ng-packagr/node_modules/sax": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", + "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==" + }, + "node_modules/ng-packagr/node_modules/stylus": { + "version": "0.59.0", + "resolved": "https://registry.npmjs.org/stylus/-/stylus-0.59.0.tgz", + "integrity": "sha512-lQ9w/XIOH5ZHVNuNbWW8D822r+/wBSO/d6XvtyHLF7LW4KaCIDeVbvn5DF8fGCJAUCwVhVi/h6J0NUcnylUEjg==", + "dependencies": { + "@adobe/css-tools": "^4.0.1", + "debug": "^4.3.2", + "glob": "^7.1.6", + "sax": "~1.2.4", + "source-map": "^0.7.3" + }, + "bin": { + "stylus": "bin/stylus" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://opencollective.com/stylus" + } + }, + "node_modules/ng-packagr/node_modules/stylus/node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "deprecated": "Glob versions prior to v9 are no longer supported", + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/nice-napi": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/nice-napi/-/nice-napi-1.0.2.tgz", + "integrity": "sha512-px/KnJAJZf5RuBGcfD+Sp2pAKq0ytz8j+1NehvgIGFkvtvFrDM3T8E4x/JJODXK9WZow8RRGrbA9QQ3hs+pDhA==", + "hasInstallScript": true, + "optional": true, + "os": [ + "!win32" + ], + "dependencies": { + "node-addon-api": "^3.0.0", + "node-gyp-build": "^4.2.2" + } + }, + "node_modules/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_modules/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==", + "optional": true + }, + "node_modules/node-forge": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-1.3.1.tgz", + "integrity": "sha512-dPEtOeMvF9VMcYV/1Wb8CPoVAXtp6MKMlcbAt4ddqmGqUJ6fQZFXkNZNkNlfevtNkGtaSoXf/vNNNSvgrdXwtA==", + "engines": { + "node": ">= 6.13.0" + } + }, + "node_modules/node-gyp": { + "version": "9.4.1", + "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-9.4.1.tgz", + "integrity": "sha512-OQkWKbjQKbGkMf/xqI1jjy3oCTgMKJac58G2+bjZb3fza6gW2YrCSdMQYaoTb70crvE//Gngr4f0AgVHmqHvBQ==", + "dev": true, + "dependencies": { + "env-paths": "^2.2.0", + "exponential-backoff": "^3.1.1", + "glob": "^7.1.4", + "graceful-fs": "^4.2.6", + "make-fetch-happen": "^10.0.3", + "nopt": "^6.0.0", + "npmlog": "^6.0.0", + "rimraf": "^3.0.2", + "semver": "^7.3.5", + "tar": "^6.1.2", + "which": "^2.0.2" + }, + "bin": { + "node-gyp": "bin/node-gyp.js" + }, + "engines": { + "node": "^12.13 || ^14.13 || >=16" + } + }, + "node_modules/node-gyp-build": { + "version": "4.8.4", + "resolved": "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.8.4.tgz", + "integrity": "sha512-LA4ZjwlnUblHVgq0oBF3Jl/6h/Nvs5fzBLwdEF4nuxnFdsfajde4WfxtJr3CaiH+F6ewcIB/q4jQ4UzPyid+CQ==", + "optional": true, + "bin": { + "node-gyp-build": "bin.js", + "node-gyp-build-optional": "optional.js", + "node-gyp-build-test": "build-test.js" + } + }, + "node_modules/node-gyp/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/node-gyp/node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "deprecated": "Glob versions prior to v9 are no longer supported", + "dev": true, + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/node-gyp/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/node-gyp/node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/node-releases": { + "version": "2.0.19", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.19.tgz", + "integrity": "sha512-xxOWJsBKtzAq7DY0J+DTzuz58K8e7sJbdgwkbMWQe8UYB6ekmsQ45q0M/tJDsGaZmbC+l7n57UV8Hl5tHxO9uw==" + }, + "node_modules/nopt": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/nopt/-/nopt-6.0.0.tgz", + "integrity": "sha512-ZwLpbTgdhuZUnZzjd7nb1ZV+4DoiC6/sfiVKok72ym/4Tlf+DFdlHYmT2JPmcNNWV6Pi3SDf1kT+A4r9RTuT9g==", + "dev": true, + "dependencies": { + "abbrev": "^1.0.0" + }, + "bin": { + "nopt": "bin/nopt.js" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/normalize-package-data": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-4.0.1.tgz", + "integrity": "sha512-EBk5QKKuocMJhB3BILuKhmaPjI8vNRSpIfO9woLC6NyHVkKKdVEdAO1mrT0ZfxNR1lKwCcTkuZfmGIFdizZ8Pg==", + "dev": true, + "dependencies": { + "hosted-git-info": "^5.0.0", + "is-core-module": "^2.8.1", + "semver": "^7.3.5", + "validate-npm-package-license": "^3.0.4" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/normalize-range": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz", + "integrity": "sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/npm-bundled": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/npm-bundled/-/npm-bundled-1.1.2.tgz", + "integrity": "sha512-x5DHup0SuyQcmL3s7Rx/YQ8sbw/Hzg0rj48eN0dV7hf5cmQq5PXIeioroH3raV1QC1yh3uTYuMThvEQF3iKgGQ==", + "dev": true, + "dependencies": { + "npm-normalize-package-bin": "^1.0.1" + } + }, + "node_modules/npm-install-checks": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/npm-install-checks/-/npm-install-checks-5.0.0.tgz", + "integrity": "sha512-65lUsMI8ztHCxFz5ckCEC44DRvEGdZX5usQFriauxHEwt7upv1FKaQEmAtU0YnOAdwuNWCmk64xYiQABNrEyLA==", + "dev": true, + "dependencies": { + "semver": "^7.1.1" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/npm-normalize-package-bin": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/npm-normalize-package-bin/-/npm-normalize-package-bin-1.0.1.tgz", + "integrity": "sha512-EPfafl6JL5/rU+ot6P3gRSCpPDW5VmIzX959Ob1+ySFUuuYHWHekXpwdUZcKP5C+DS4GEtdJluwBjnsNDl+fSA==", + "dev": true + }, + "node_modules/npm-package-arg": { + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-9.1.0.tgz", + "integrity": "sha512-4J0GL+u2Nh6OnhvUKXRr2ZMG4lR8qtLp+kv7UiV00Y+nGiSxtttCyIRHCt5L5BNkXQld/RceYItau3MDOoGiBw==", + "dev": true, + "dependencies": { + "hosted-git-info": "^5.0.0", + "proc-log": "^2.0.1", + "semver": "^7.3.5", + "validate-npm-package-name": "^4.0.0" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/npm-packlist": { + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/npm-packlist/-/npm-packlist-5.1.3.tgz", + "integrity": "sha512-263/0NGrn32YFYi4J533qzrQ/krmmrWwhKkzwTuM4f/07ug51odoaNjUexxO4vxlzURHcmYMH1QjvHjsNDKLVg==", + "dev": true, + "dependencies": { + "glob": "^8.0.1", + "ignore-walk": "^5.0.1", + "npm-bundled": "^2.0.0", + "npm-normalize-package-bin": "^2.0.0" + }, + "bin": { + "npm-packlist": "bin/index.js" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/npm-packlist/node_modules/npm-bundled": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/npm-bundled/-/npm-bundled-2.0.1.tgz", + "integrity": "sha512-gZLxXdjEzE/+mOstGDqR6b0EkhJ+kM6fxM6vUuckuctuVPh80Q6pw/rSZj9s4Gex9GxWtIicO1pc8DB9KZWudw==", + "dev": true, + "dependencies": { + "npm-normalize-package-bin": "^2.0.0" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/npm-packlist/node_modules/npm-normalize-package-bin": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/npm-normalize-package-bin/-/npm-normalize-package-bin-2.0.0.tgz", + "integrity": "sha512-awzfKUO7v0FscrSpRoogyNm0sajikhBWpU0QMrW09AMi9n1PoKU6WaIqUzuJSQnpciZZmJ/jMZ2Egfmb/9LiWQ==", + "dev": true, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/npm-pick-manifest": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/npm-pick-manifest/-/npm-pick-manifest-7.0.1.tgz", + "integrity": "sha512-IA8+tuv8KujbsbLQvselW2XQgmXWS47t3CB0ZrzsRZ82DbDfkcFunOaPm4X7qNuhMfq+FmV7hQT4iFVpHqV7mg==", + "dev": true, + "dependencies": { + "npm-install-checks": "^5.0.0", + "npm-normalize-package-bin": "^1.0.1", + "npm-package-arg": "^9.0.0", + "semver": "^7.3.5" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/npm-registry-fetch": { + "version": "13.3.1", + "resolved": "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-13.3.1.tgz", + "integrity": "sha512-eukJPi++DKRTjSBRcDZSDDsGqRK3ehbxfFUcgaRd0Yp6kRwOwh2WVn0r+8rMB4nnuzvAk6rQVzl6K5CkYOmnvw==", + "dev": true, + "dependencies": { + "make-fetch-happen": "^10.0.6", + "minipass": "^3.1.6", + "minipass-fetch": "^2.0.3", + "minipass-json-stream": "^1.0.1", + "minizlib": "^2.1.2", + "npm-package-arg": "^9.0.1", + "proc-log": "^2.0.0" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/npm-run-all": { + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/npm-run-all/-/npm-run-all-4.1.5.tgz", + "integrity": "sha512-Oo82gJDAVcaMdi3nuoKFavkIHBRVqQ1qvMb+9LHk/cF4P6B2m8aP04hGf7oL6wZ9BuGwX1onlLhpuoofSyoQDQ==", + "dev": true, + "dependencies": { + "ansi-styles": "^3.2.1", + "chalk": "^2.4.1", + "cross-spawn": "^6.0.5", + "memorystream": "^0.3.1", + "minimatch": "^3.0.4", + "pidtree": "^0.3.0", + "read-pkg": "^3.0.0", + "shell-quote": "^1.6.1", + "string.prototype.padend": "^3.0.0" + }, + "bin": { + "npm-run-all": "bin/npm-run-all/index.js", + "run-p": "bin/run-p/index.js", + "run-s": "bin/run-s/index.js" + }, + "engines": { + "node": ">= 4" + } + }, + "node_modules/npm-run-all/node_modules/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, + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/npm-run-all/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/npm-run-all/node_modules/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, + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/npm-run-all/node_modules/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, + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/npm-run-all/node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", + "dev": true + }, + "node_modules/npm-run-all/node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/npm-run-all/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/npm-run-all/node_modules/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, + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/npm-run-path": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", + "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", + "dependencies": { + "path-key": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/npm-run-path/node_modules/path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "engines": { + "node": ">=8" + } + }, + "node_modules/npmlog": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-6.0.2.tgz", + "integrity": "sha512-/vBvz5Jfr9dT/aFWd0FIRf+T/Q2WBsLENygUaFUqstqsycmZAP/t5BvFJTK0viFmSUxiUKTUplWy5vt+rvKIxg==", + "deprecated": "This package is no longer supported.", + "dev": true, + "dependencies": { + "are-we-there-yet": "^3.0.0", + "console-control-strings": "^1.1.0", + "gauge": "^4.0.3", + "set-blocking": "^2.0.0" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/nth-check": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.1.1.tgz", + "integrity": "sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==", + "dependencies": { + "boolbase": "^1.0.0" + }, + "funding": { + "url": "https://github.com/fb55/nth-check?sponsor=1" + } + }, + "node_modules/oauth-sign": { + "version": "0.9.0", + "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz", + "integrity": "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==", + "devOptional": true, + "engines": { + "node": "*" + } + }, + "node_modules/object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", + "devOptional": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-inspect": { + "version": "1.13.4", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.4.tgz", + "integrity": "sha512-W67iLl4J2EXEGTbfeHCffrjDfitvLANg0UlX3wFUUSTx92KXRFegMHUVgSqE+wvhAbi4WqjGg9czysTV2Epbew==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object-keys": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", + "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", + "dev": true, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/object.assign": { + "version": "4.1.7", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.7.tgz", + "integrity": "sha512-nK28WOo+QIjBkDduTINE4JkF/UJJKyf2EJxvJKfblDpyg0Q+pkOHNTL0Qwy6NP6FhE/EnzV73BxxqcJaXY9anw==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.3", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0", + "has-symbols": "^1.1.0", + "object-keys": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/obuf": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/obuf/-/obuf-1.1.2.tgz", + "integrity": "sha512-PX1wu0AmAdPqOL1mWhqmlOd8kOIZQwGZw6rh7uby9fTc5lhaOWFLX3I6R1hrF9k3zUY40e6igsLGkDXK92LJNg==" + }, + "node_modules/on-finished": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz", + "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==", + "dependencies": { + "ee-first": "1.1.1" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/on-headers": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/on-headers/-/on-headers-1.0.2.tgz", + "integrity": "sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", + "dependencies": { + "wrappy": "1" + } + }, + "node_modules/onetime": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", + "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", + "dependencies": { + "mimic-fn": "^2.1.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/open": { + "version": "8.4.0", + "resolved": "https://registry.npmjs.org/open/-/open-8.4.0.tgz", + "integrity": "sha512-XgFPPM+B28FtCCgSb9I+s9szOC1vZRSwgWsRUA5ylIxRTgKozqjOCrVOqGsYABPYK5qnfqClxZTFBa8PKt2v6Q==", + "dependencies": { + "define-lazy-prop": "^2.0.0", + "is-docker": "^2.1.1", + "is-wsl": "^2.2.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/ora": { + "version": "5.4.1", + "resolved": "https://registry.npmjs.org/ora/-/ora-5.4.1.tgz", + "integrity": "sha512-5b6Y85tPxZZ7QytO+BQzysW31HJku27cRIlkbAXaNx+BdcVi+LlRFmVXzeF6a7JCwJpyw5c4b+YSVImQIrBpuQ==", + "dependencies": { + "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" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/os-tmpdir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", + "integrity": "sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/own-keys": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/own-keys/-/own-keys-1.0.1.tgz", + "integrity": "sha512-qFOyK5PjiWZd+QQIh+1jhdb9LpxTF0qs7Pm8o5QHYZ0M3vKqSqzsZaEB6oWlxZ+q2sJBMI/Ktgd2N5ZwQoRHfg==", + "dev": true, + "dependencies": { + "get-intrinsic": "^1.2.6", + "object-keys": "^1.1.1", + "safe-push-apply": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "dependencies": { + "p-try": "^2.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "dependencies": { + "p-limit": "^2.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/p-map": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", + "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", + "dependencies": { + "aggregate-error": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-retry": { + "version": "4.6.2", + "resolved": "https://registry.npmjs.org/p-retry/-/p-retry-4.6.2.tgz", + "integrity": "sha512-312Id396EbJdvRONlngUx0NydfrIQ5lsYu0znKVUzVvArzEIt08V1qhtyESbGVd1FGX7UKtiFp5uwKZdM8wIuQ==", + "dependencies": { + "@types/retry": "0.12.0", + "retry": "^0.13.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/p-retry/node_modules/retry": { + "version": "0.13.1", + "resolved": "https://registry.npmjs.org/retry/-/retry-0.13.1.tgz", + "integrity": "sha512-XQBQ3I8W1Cge0Seh+6gjj03LbmRFWuoszgK9ooCpwYIrhhoO80pfq4cUkU5DkknwfOfFteRwlZ56PYOGYyFWdg==", + "engines": { + "node": ">= 4" + } + }, + "node_modules/p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "engines": { + "node": ">=6" + } + }, + "node_modules/pacote": { + "version": "13.6.2", + "resolved": "https://registry.npmjs.org/pacote/-/pacote-13.6.2.tgz", + "integrity": "sha512-Gu8fU3GsvOPkak2CkbojR7vjs3k3P9cA6uazKTHdsdV0gpCEQq2opelnEv30KRQWgVzP5Vd/5umjcedma3MKtg==", + "dev": true, + "dependencies": { + "@npmcli/git": "^3.0.0", + "@npmcli/installed-package-contents": "^1.0.7", + "@npmcli/promise-spawn": "^3.0.0", + "@npmcli/run-script": "^4.1.0", + "cacache": "^16.0.0", + "chownr": "^2.0.0", + "fs-minipass": "^2.1.0", + "infer-owner": "^1.0.4", + "minipass": "^3.1.6", + "mkdirp": "^1.0.4", + "npm-package-arg": "^9.0.0", + "npm-packlist": "^5.1.0", + "npm-pick-manifest": "^7.0.0", + "npm-registry-fetch": "^13.0.1", + "proc-log": "^2.0.0", + "promise-retry": "^2.0.1", + "read-package-json": "^5.0.0", + "read-package-json-fast": "^2.0.3", + "rimraf": "^3.0.2", + "ssri": "^9.0.0", + "tar": "^6.1.11" + }, + "bin": { + "pacote": "lib/bin.js" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/pako": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz", + "integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==" + }, + "node_modules/parent-module": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", + "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", + "dependencies": { + "callsites": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/parse-json": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", + "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", + "dependencies": { + "@babel/code-frame": "^7.0.0", + "error-ex": "^1.3.1", + "json-parse-even-better-errors": "^2.3.0", + "lines-and-columns": "^1.1.6" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/parse-node-version": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parse-node-version/-/parse-node-version-1.0.1.tgz", + "integrity": "sha512-3YHlOa/JgH6Mnpr05jP9eDG254US9ek25LyIxZlDItp2iJtwyaXQb57lBYLdT3MowkUFYEV2XXNAYIPlESvJlA==", + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/parse5": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-5.1.1.tgz", + "integrity": "sha512-ugq4DFI0Ptb+WWjAdOK16+u/nHfiIrcE+sh8kZMaM0WllQKLI9rOUq6c2b7cwPkXdzfQESqvoqK6ug7U/Yyzug==", + "optional": true + }, + "node_modules/parse5-html-rewriting-stream": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/parse5-html-rewriting-stream/-/parse5-html-rewriting-stream-6.0.1.tgz", + "integrity": "sha512-vwLQzynJVEfUlURxgnf51yAJDQTtVpNyGD8tKi2Za7m+akukNHxCcUQMAa/mUGLhCeicFdpy7Tlvj8ZNKadprg==", + "dependencies": { + "parse5": "^6.0.1", + "parse5-sax-parser": "^6.0.1" + } + }, + "node_modules/parse5-html-rewriting-stream/node_modules/parse5": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", + "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==" + }, + "node_modules/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==", + "dependencies": { + "parse5": "^6.0.1" + } + }, + "node_modules/parse5-htmlparser2-tree-adapter/node_modules/parse5": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", + "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==" + }, + "node_modules/parse5-sax-parser": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/parse5-sax-parser/-/parse5-sax-parser-6.0.1.tgz", + "integrity": "sha512-kXX+5S81lgESA0LsDuGjAlBybImAChYRMT+/uKCEXFBFOeEhS52qUCydGhU3qLRD8D9DVjaUo821WK7DM4iCeg==", + "dependencies": { + "parse5": "^6.0.1" + } + }, + "node_modules/parse5-sax-parser/node_modules/parse5": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", + "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==" + }, + "node_modules/parseurl": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", + "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "engines": { + "node": ">=8" + } + }, + "node_modules/path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/path-is-inside": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/path-is-inside/-/path-is-inside-1.0.2.tgz", + "integrity": "sha512-DUWJr3+ULp4zXmol/SZkFf3JGsS9/SIv+Y3Rt93/UjPpDpklB5f1er4O3POIbUuUJ3FXgqte2Q7SrU6zAqwk8w==", + "devOptional": true + }, + "node_modules/path-key": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", + "integrity": "sha512-fEHGKCSmUSDPv4uoj8AlD+joPlq3peND+HRYyxFz4KPw4z926S/b8rIuFs2FYJg3BwsxJf6A9/3eIdLaYC+9Dw==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/path-parse": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==" + }, + "node_modules/path-to-regexp": { + "version": "0.1.12", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.12.tgz", + "integrity": "sha512-RA1GjUVMnvYFxuqovrEqZoxxW5NUZqbwKtYz/Tt7nXerk0LbLblQmrsgdeOxV5SFHf0UDggjS/bSeOZwt1pmEQ==" + }, + "node_modules/path-type": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", + "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", + "engines": { + "node": ">=8" + } + }, + "node_modules/performance-now": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", + "integrity": "sha512-7EAHlyLHI56VEIdK57uwHdHKIaAGbnXPiw0yWbarQZOKaKpvUIgW0jWRVLiatnM+XXlSwsanIBH/hzGMJulMow==", + "devOptional": true + }, + "node_modules/picocolors": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz", + "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==" + }, + "node_modules/picomatch": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.2.tgz", + "integrity": "sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg==", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/pidtree": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/pidtree/-/pidtree-0.3.1.tgz", + "integrity": "sha512-qQbW94hLHEqCg7nhby4yRC7G2+jYHY4Rguc2bjw7Uug4GIJuu1tvf2uHaZv5Q8zdt+WKJ6qK1FOI6amaWUo5FA==", + "dev": true, + "bin": { + "pidtree": "bin/pidtree.js" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/pinkie": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz", + "integrity": "sha512-MnUuEycAemtSaeFSjXKW/aroV7akBbY+Sv+RkyqFjgAe73F+MR0TBWKBRDkmfWq/HiFmdavfZ1G7h4SPZXaCSg==", + "devOptional": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/pinkie-promise": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", + "integrity": "sha512-0Gni6D4UcLTbv9c57DfxDGdr41XfgUjqWZu492f0cIGr16zDU06BWP/RAEvOuo7CQ0CNjHaLlM59YJJFm3NWlw==", + "devOptional": true, + "dependencies": { + "pinkie": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/piscina": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/piscina/-/piscina-3.2.0.tgz", + "integrity": "sha512-yn/jMdHRw+q2ZJhFhyqsmANcbF6V2QwmD84c6xRau+QpQOmtrBCoRGdvTfeuFDYXB5W2m6MfLkjkvQa9lUSmIA==", + "dependencies": { + "eventemitter-asyncresource": "^1.0.0", + "hdr-histogram-js": "^2.0.1", + "hdr-histogram-percentiles-obj": "^3.0.0" + }, + "optionalDependencies": { + "nice-napi": "^1.0.2" + } + }, + "node_modules/pkg-dir": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", + "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", + "dependencies": { + "find-up": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/possible-typed-array-names": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/possible-typed-array-names/-/possible-typed-array-names-1.1.0.tgz", + "integrity": "sha512-/+5VFTchJDoVj3bhoqi6UeymcD00DAwb1nJwamzPvHEszJ4FpF6SNNbUbOS8yI56qHzdV8eK0qEfOSiodkTdxg==", + "dev": true, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/postcss": { + "version": "8.4.31", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.31.tgz", + "integrity": "sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/postcss" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "dependencies": { + "nanoid": "^3.3.6", + "picocolors": "^1.0.0", + "source-map-js": "^1.0.2" + }, + "engines": { + "node": "^10 || ^12 || >=14" + } + }, + "node_modules/postcss-attribute-case-insensitive": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/postcss-attribute-case-insensitive/-/postcss-attribute-case-insensitive-5.0.2.tgz", + "integrity": "sha512-XIidXV8fDr0kKt28vqki84fRK8VW8eTuIa4PChv2MqKuT6C9UjmSKzen6KaWhWEoYvwxFCa7n/tC1SZ3tyq4SQ==", + "dependencies": { + "postcss-selector-parser": "^6.0.10" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.2" + } + }, + "node_modules/postcss-attribute-case-insensitive/node_modules/postcss-selector-parser": { + "version": "6.1.2", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.1.2.tgz", + "integrity": "sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg==", + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-clamp": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/postcss-clamp/-/postcss-clamp-4.1.0.tgz", + "integrity": "sha512-ry4b1Llo/9zz+PKC+030KUnPITTJAHeOwjfAyyB60eT0AorGLdzp52s31OsPRHRf8NchkgFoG2y6fCfn1IV1Ow==", + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": ">=7.6.0" + }, + "peerDependencies": { + "postcss": "^8.4.6" + } + }, + "node_modules/postcss-color-functional-notation": { + "version": "4.2.4", + "resolved": "https://registry.npmjs.org/postcss-color-functional-notation/-/postcss-color-functional-notation-4.2.4.tgz", + "integrity": "sha512-2yrTAUZUab9s6CpxkxC4rVgFEVaR6/2Pipvi6qcgvnYiVqZcbDHEoBDhrXzyb7Efh2CCfHQNtcqWcIruDTIUeg==", + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.2" + } + }, + "node_modules/postcss-color-hex-alpha": { + "version": "8.0.4", + "resolved": "https://registry.npmjs.org/postcss-color-hex-alpha/-/postcss-color-hex-alpha-8.0.4.tgz", + "integrity": "sha512-nLo2DCRC9eE4w2JmuKgVA3fGL3d01kGq752pVALF68qpGLmx2Qrk91QTKkdUqqp45T1K1XV8IhQpcu1hoAQflQ==", + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.4" + } + }, + "node_modules/postcss-color-rebeccapurple": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/postcss-color-rebeccapurple/-/postcss-color-rebeccapurple-7.1.1.tgz", + "integrity": "sha512-pGxkuVEInwLHgkNxUc4sdg4g3py7zUeCQ9sMfwyHAT+Ezk8a4OaaVZ8lIY5+oNqA/BXXgLyXv0+5wHP68R79hg==", + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.2" + } + }, + "node_modules/postcss-custom-media": { + "version": "8.0.2", + "resolved": "https://registry.npmjs.org/postcss-custom-media/-/postcss-custom-media-8.0.2.tgz", + "integrity": "sha512-7yi25vDAoHAkbhAzX9dHx2yc6ntS4jQvejrNcC+csQJAXjj15e7VcWfMgLqBNAbOvqi5uIa9huOVwdHbf+sKqg==", + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.3" + } + }, + "node_modules/postcss-custom-properties": { + "version": "12.1.11", + "resolved": "https://registry.npmjs.org/postcss-custom-properties/-/postcss-custom-properties-12.1.11.tgz", + "integrity": "sha512-0IDJYhgU8xDv1KY6+VgUwuQkVtmYzRwu+dMjnmdMafXYv86SWqfxkc7qdDvWS38vsjaEtv8e0vGOUQrAiMBLpQ==", + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.2" + } + }, + "node_modules/postcss-custom-selectors": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/postcss-custom-selectors/-/postcss-custom-selectors-6.0.3.tgz", + "integrity": "sha512-fgVkmyiWDwmD3JbpCmB45SvvlCD6z9CG6Ie6Iere22W5aHea6oWa7EM2bpnv2Fj3I94L3VbtvX9KqwSi5aFzSg==", + "dependencies": { + "postcss-selector-parser": "^6.0.4" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.3" + } + }, + "node_modules/postcss-custom-selectors/node_modules/postcss-selector-parser": { + "version": "6.1.2", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.1.2.tgz", + "integrity": "sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg==", + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-dir-pseudo-class": { + "version": "6.0.5", + "resolved": "https://registry.npmjs.org/postcss-dir-pseudo-class/-/postcss-dir-pseudo-class-6.0.5.tgz", + "integrity": "sha512-eqn4m70P031PF7ZQIvSgy9RSJ5uI2171O/OO/zcRNYpJbvaeKFUlar1aJ7rmgiQtbm0FSPsRewjpdS0Oew7MPA==", + "dependencies": { + "postcss-selector-parser": "^6.0.10" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.2" + } + }, + "node_modules/postcss-dir-pseudo-class/node_modules/postcss-selector-parser": { + "version": "6.1.2", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.1.2.tgz", + "integrity": "sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg==", + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-double-position-gradients": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/postcss-double-position-gradients/-/postcss-double-position-gradients-3.1.2.tgz", + "integrity": "sha512-GX+FuE/uBR6eskOK+4vkXgT6pDkexLokPaz/AbJna9s5Kzp/yl488pKPjhy0obB475ovfT1Wv8ho7U/cHNaRgQ==", + "dependencies": { + "@csstools/postcss-progressive-custom-properties": "^1.1.0", + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.2" + } + }, + "node_modules/postcss-env-function": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/postcss-env-function/-/postcss-env-function-4.0.6.tgz", + "integrity": "sha512-kpA6FsLra+NqcFnL81TnsU+Z7orGtDTxcOhl6pwXeEq1yFPpRMkCDpHhrz8CFQDr/Wfm0jLiNQ1OsGGPjlqPwA==", + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "peerDependencies": { + "postcss": "^8.4" + } + }, + "node_modules/postcss-focus-visible": { + "version": "6.0.4", + "resolved": "https://registry.npmjs.org/postcss-focus-visible/-/postcss-focus-visible-6.0.4.tgz", + "integrity": "sha512-QcKuUU/dgNsstIK6HELFRT5Y3lbrMLEOwG+A4s5cA+fx3A3y/JTq3X9LaOj3OC3ALH0XqyrgQIgey/MIZ8Wczw==", + "dependencies": { + "postcss-selector-parser": "^6.0.9" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "peerDependencies": { + "postcss": "^8.4" + } + }, + "node_modules/postcss-focus-visible/node_modules/postcss-selector-parser": { + "version": "6.1.2", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.1.2.tgz", + "integrity": "sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg==", + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-focus-within": { + "version": "5.0.4", + "resolved": "https://registry.npmjs.org/postcss-focus-within/-/postcss-focus-within-5.0.4.tgz", + "integrity": "sha512-vvjDN++C0mu8jz4af5d52CB184ogg/sSxAFS+oUJQq2SuCe7T5U2iIsVJtsCp2d6R4j0jr5+q3rPkBVZkXD9fQ==", + "dependencies": { + "postcss-selector-parser": "^6.0.9" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "peerDependencies": { + "postcss": "^8.4" + } + }, + "node_modules/postcss-focus-within/node_modules/postcss-selector-parser": { + "version": "6.1.2", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.1.2.tgz", + "integrity": "sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg==", + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-font-variant": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/postcss-font-variant/-/postcss-font-variant-5.0.0.tgz", + "integrity": "sha512-1fmkBaCALD72CK2a9i468mA/+tr9/1cBxRRMXOUaZqO43oWPR5imcyPjXwuv7PXbCid4ndlP5zWhidQVVa3hmA==", + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/postcss-gap-properties": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/postcss-gap-properties/-/postcss-gap-properties-3.0.5.tgz", + "integrity": "sha512-IuE6gKSdoUNcvkGIqdtjtcMtZIFyXZhmFd5RUlg97iVEvp1BZKV5ngsAjCjrVy+14uhGBQl9tzmi1Qwq4kqVOg==", + "engines": { + "node": "^12 || ^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.2" + } + }, + "node_modules/postcss-image-set-function": { + "version": "4.0.7", + "resolved": "https://registry.npmjs.org/postcss-image-set-function/-/postcss-image-set-function-4.0.7.tgz", + "integrity": "sha512-9T2r9rsvYzm5ndsBE8WgtrMlIT7VbtTfE7b3BQnudUqnBcBo7L758oc+o+pdj/dUV0l5wjwSdjeOH2DZtfv8qw==", + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.2" + } + }, + "node_modules/postcss-import": { + "version": "15.0.0", + "resolved": "https://registry.npmjs.org/postcss-import/-/postcss-import-15.0.0.tgz", + "integrity": "sha512-Y20shPQ07RitgBGv2zvkEAu9bqvrD77C9axhj/aA1BQj4czape2MdClCExvB27EwYEJdGgKZBpKanb0t1rK2Kg==", + "dependencies": { + "postcss-value-parser": "^4.0.0", + "read-cache": "^1.0.0", + "resolve": "^1.1.7" + }, + "engines": { + "node": ">=14.0.0" + }, + "peerDependencies": { + "postcss": "^8.0.0" + } + }, + "node_modules/postcss-initial": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/postcss-initial/-/postcss-initial-4.0.1.tgz", + "integrity": "sha512-0ueD7rPqX8Pn1xJIjay0AZeIuDoF+V+VvMt/uOnn+4ezUKhZM/NokDeP6DwMNyIoYByuN/94IQnt5FEkaN59xQ==", + "peerDependencies": { + "postcss": "^8.0.0" + } + }, + "node_modules/postcss-lab-function": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/postcss-lab-function/-/postcss-lab-function-4.2.1.tgz", + "integrity": "sha512-xuXll4isR03CrQsmxyz92LJB2xX9n+pZJ5jE9JgcnmsCammLyKdlzrBin+25dy6wIjfhJpKBAN80gsTlCgRk2w==", + "dependencies": { + "@csstools/postcss-progressive-custom-properties": "^1.1.0", + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.2" + } + }, + "node_modules/postcss-loader": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/postcss-loader/-/postcss-loader-7.0.1.tgz", + "integrity": "sha512-VRviFEyYlLjctSM93gAZtcJJ/iSkPZ79zWbN/1fSH+NisBByEiVLqpdVDrPLVSi8DX0oJo12kL/GppTBdKVXiQ==", + "dependencies": { + "cosmiconfig": "^7.0.0", + "klona": "^2.0.5", + "semver": "^7.3.7" + }, + "engines": { + "node": ">= 14.15.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "postcss": "^7.0.0 || ^8.0.1", + "webpack": "^5.0.0" + } + }, + "node_modules/postcss-logical": { + "version": "5.0.4", + "resolved": "https://registry.npmjs.org/postcss-logical/-/postcss-logical-5.0.4.tgz", + "integrity": "sha512-RHXxplCeLh9VjinvMrZONq7im4wjWGlRJAqmAVLXyZaXwfDWP73/oq4NdIp+OZwhQUMj0zjqDfM5Fj7qby+B4g==", + "engines": { + "node": "^12 || ^14 || >=16" + }, + "peerDependencies": { + "postcss": "^8.4" + } + }, + "node_modules/postcss-media-minmax": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/postcss-media-minmax/-/postcss-media-minmax-5.0.0.tgz", + "integrity": "sha512-yDUvFf9QdFZTuCUg0g0uNSHVlJ5X1lSzDZjPSFaiCWvjgsvu8vEVxtahPrLMinIDEEGnx6cBe6iqdx5YWz08wQ==", + "engines": { + "node": ">=10.0.0" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/postcss-modules-extract-imports": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/postcss-modules-extract-imports/-/postcss-modules-extract-imports-3.1.0.tgz", + "integrity": "sha512-k3kNe0aNFQDAZGbin48pL2VNidTF0w4/eASDsxlyspobzU3wZQLOGj7L9gfRe0Jo9/4uud09DsjFNH7winGv8Q==", + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/postcss-modules-local-by-default": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/postcss-modules-local-by-default/-/postcss-modules-local-by-default-4.2.0.tgz", + "integrity": "sha512-5kcJm/zk+GJDSfw+V/42fJ5fhjL5YbFDl8nVdXkJPLLW+Vf9mTD5Xe0wqIaDnLuL2U6cDNpTr+UQ+v2HWIBhzw==", + "dependencies": { + "icss-utils": "^5.0.0", + "postcss-selector-parser": "^7.0.0", + "postcss-value-parser": "^4.1.0" + }, + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/postcss-modules-scope": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/postcss-modules-scope/-/postcss-modules-scope-3.2.1.tgz", + "integrity": "sha512-m9jZstCVaqGjTAuny8MdgE88scJnCiQSlSrOWcTQgM2t32UBe+MUmFSO5t7VMSfAf/FJKImAxBav8ooCHJXCJA==", + "dependencies": { + "postcss-selector-parser": "^7.0.0" + }, + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/postcss-modules-values": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/postcss-modules-values/-/postcss-modules-values-4.0.0.tgz", + "integrity": "sha512-RDxHkAiEGI78gS2ofyvCsu7iycRv7oqw5xMWn9iMoR0N/7mf9D50ecQqUo5BZ9Zh2vH4bCUR/ktCqbB9m8vJjQ==", + "dependencies": { + "icss-utils": "^5.0.0" + }, + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/postcss-nesting": { + "version": "10.2.0", + "resolved": "https://registry.npmjs.org/postcss-nesting/-/postcss-nesting-10.2.0.tgz", + "integrity": "sha512-EwMkYchxiDiKUhlJGzWsD9b2zvq/r2SSubcRrgP+jujMXFzqvANLt16lJANC+5uZ6hjI7lpRmI6O8JIl+8l1KA==", + "dependencies": { + "@csstools/selector-specificity": "^2.0.0", + "postcss-selector-parser": "^6.0.10" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.2" + } + }, + "node_modules/postcss-nesting/node_modules/@csstools/selector-specificity": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@csstools/selector-specificity/-/selector-specificity-2.2.0.tgz", + "integrity": "sha512-+OJ9konv95ClSTOJCmMZqpd5+YGsB2S+x6w3E1oaM8UuR5j8nTNHYSz8c9BEPGDOCMQYIEEGlVPj/VY64iTbGw==", + "engines": { + "node": "^14 || ^16 || >=18" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss-selector-parser": "^6.0.10" + } + }, + "node_modules/postcss-nesting/node_modules/postcss-selector-parser": { + "version": "6.1.2", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.1.2.tgz", + "integrity": "sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg==", + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-opacity-percentage": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/postcss-opacity-percentage/-/postcss-opacity-percentage-1.1.3.tgz", + "integrity": "sha512-An6Ba4pHBiDtyVpSLymUUERMo2cU7s+Obz6BTrS+gxkbnSBNKSuD0AVUc+CpBMrpVPKKfoVz0WQCX+Tnst0i4A==", + "funding": [ + { + "type": "kofi", + "url": "https://ko-fi.com/mrcgrtz" + }, + { + "type": "liberapay", + "url": "https://liberapay.com/mrcgrtz" + } + ], + "engines": { + "node": "^12 || ^14 || >=16" + }, + "peerDependencies": { + "postcss": "^8.2" + } + }, + "node_modules/postcss-overflow-shorthand": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/postcss-overflow-shorthand/-/postcss-overflow-shorthand-3.0.4.tgz", + "integrity": "sha512-otYl/ylHK8Y9bcBnPLo3foYFLL6a6Ak+3EQBPOTR7luMYCOsiVTUk1iLvNf6tVPNGXcoL9Hoz37kpfriRIFb4A==", + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.2" + } + }, + "node_modules/postcss-page-break": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/postcss-page-break/-/postcss-page-break-3.0.4.tgz", + "integrity": "sha512-1JGu8oCjVXLa9q9rFTo4MbeeA5FMe00/9C7lN4va606Rdb+HkxXtXsmEDrIraQ11fGz/WvKWa8gMuCKkrXpTsQ==", + "peerDependencies": { + "postcss": "^8" + } + }, + "node_modules/postcss-place": { + "version": "7.0.5", + "resolved": "https://registry.npmjs.org/postcss-place/-/postcss-place-7.0.5.tgz", + "integrity": "sha512-wR8igaZROA6Z4pv0d+bvVrvGY4GVHihBCBQieXFY3kuSuMyOmEnnfFzHl/tQuqHZkfkIVBEbDvYcFfHmpSet9g==", + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.2" + } + }, + "node_modules/postcss-preset-env": { + "version": "7.8.0", + "resolved": "https://registry.npmjs.org/postcss-preset-env/-/postcss-preset-env-7.8.0.tgz", + "integrity": "sha512-leqiqLOellpLKfbHkD06E04P6d9ZQ24mat6hu4NSqun7WG0UhspHR5Myiv/510qouCjoo4+YJtNOqg5xHaFnCA==", + "dependencies": { + "@csstools/postcss-cascade-layers": "^1.0.5", + "@csstools/postcss-color-function": "^1.1.1", + "@csstools/postcss-font-format-keywords": "^1.0.1", + "@csstools/postcss-hwb-function": "^1.0.2", + "@csstools/postcss-ic-unit": "^1.0.1", + "@csstools/postcss-is-pseudo-class": "^2.0.7", + "@csstools/postcss-nested-calc": "^1.0.0", + "@csstools/postcss-normalize-display-values": "^1.0.1", + "@csstools/postcss-oklab-function": "^1.1.1", + "@csstools/postcss-progressive-custom-properties": "^1.3.0", + "@csstools/postcss-stepped-value-functions": "^1.0.1", + "@csstools/postcss-text-decoration-shorthand": "^1.0.0", + "@csstools/postcss-trigonometric-functions": "^1.0.2", + "@csstools/postcss-unset-value": "^1.0.2", + "autoprefixer": "^10.4.8", + "browserslist": "^4.21.3", + "css-blank-pseudo": "^3.0.3", + "css-has-pseudo": "^3.0.4", + "css-prefers-color-scheme": "^6.0.3", + "cssdb": "^7.0.0", + "postcss-attribute-case-insensitive": "^5.0.2", + "postcss-clamp": "^4.1.0", + "postcss-color-functional-notation": "^4.2.4", + "postcss-color-hex-alpha": "^8.0.4", + "postcss-color-rebeccapurple": "^7.1.1", + "postcss-custom-media": "^8.0.2", + "postcss-custom-properties": "^12.1.8", + "postcss-custom-selectors": "^6.0.3", + "postcss-dir-pseudo-class": "^6.0.5", + "postcss-double-position-gradients": "^3.1.2", + "postcss-env-function": "^4.0.6", + "postcss-focus-visible": "^6.0.4", + "postcss-focus-within": "^5.0.4", + "postcss-font-variant": "^5.0.0", + "postcss-gap-properties": "^3.0.5", + "postcss-image-set-function": "^4.0.7", + "postcss-initial": "^4.0.1", + "postcss-lab-function": "^4.2.1", + "postcss-logical": "^5.0.4", + "postcss-media-minmax": "^5.0.0", + "postcss-nesting": "^10.1.10", + "postcss-opacity-percentage": "^1.1.2", + "postcss-overflow-shorthand": "^3.0.4", + "postcss-page-break": "^3.0.4", + "postcss-place": "^7.0.5", + "postcss-pseudo-class-any-link": "^7.1.6", + "postcss-replace-overflow-wrap": "^4.0.0", + "postcss-selector-not": "^6.0.1", + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.2" + } + }, + "node_modules/postcss-pseudo-class-any-link": { + "version": "7.1.6", + "resolved": "https://registry.npmjs.org/postcss-pseudo-class-any-link/-/postcss-pseudo-class-any-link-7.1.6.tgz", + "integrity": "sha512-9sCtZkO6f/5ML9WcTLcIyV1yz9D1rf0tWc+ulKcvV30s0iZKS/ONyETvoWsr6vnrmW+X+KmuK3gV/w5EWnT37w==", + "dependencies": { + "postcss-selector-parser": "^6.0.10" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.2" + } + }, + "node_modules/postcss-pseudo-class-any-link/node_modules/postcss-selector-parser": { + "version": "6.1.2", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.1.2.tgz", + "integrity": "sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg==", + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-replace-overflow-wrap": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/postcss-replace-overflow-wrap/-/postcss-replace-overflow-wrap-4.0.0.tgz", + "integrity": "sha512-KmF7SBPphT4gPPcKZc7aDkweHiKEEO8cla/GjcBK+ckKxiZslIu3C4GCRW3DNfL0o7yW7kMQu9xlZ1kXRXLXtw==", + "peerDependencies": { + "postcss": "^8.0.3" + } + }, + "node_modules/postcss-selector-not": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/postcss-selector-not/-/postcss-selector-not-6.0.1.tgz", + "integrity": "sha512-1i9affjAe9xu/y9uqWH+tD4r6/hDaXJruk8xn2x1vzxC2U3J3LKO3zJW4CyxlNhA56pADJ/djpEwpH1RClI2rQ==", + "dependencies": { + "postcss-selector-parser": "^6.0.10" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.2" + } + }, + "node_modules/postcss-selector-not/node_modules/postcss-selector-parser": { + "version": "6.1.2", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.1.2.tgz", + "integrity": "sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg==", + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-selector-parser": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-7.1.0.tgz", + "integrity": "sha512-8sLjZwK0R+JlxlYcTuVnyT2v+htpdrjDOKuMcOVdYjt52Lh8hWRYpxBPoKx/Zg+bcjc3wx6fmQevMmUztS/ccA==", + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-url": { + "version": "10.1.3", + "resolved": "https://registry.npmjs.org/postcss-url/-/postcss-url-10.1.3.tgz", + "integrity": "sha512-FUzyxfI5l2tKmXdYc6VTu3TWZsInayEKPbiyW+P6vmmIrrb4I6CGX0BFoewgYHLK+oIL5FECEK02REYRpBvUCw==", + "dependencies": { + "make-dir": "~3.1.0", + "mime": "~2.5.2", + "minimatch": "~3.0.4", + "xxhashjs": "~0.2.2" + }, + "engines": { + "node": ">=10" + }, + "peerDependencies": { + "postcss": "^8.0.0" + } + }, + "node_modules/postcss-url/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/postcss-url/node_modules/mime": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/mime/-/mime-2.5.2.tgz", + "integrity": "sha512-tqkh47FzKeCPD2PUiPB6pkbMzsCasjxAfC62/Wap5qrUWcb+sFasXUC5I3gYM5iBM8v/Qpn4UK0x+j0iHyFPDg==", + "bin": { + "mime": "cli.js" + }, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/postcss-url/node_modules/minimatch": { + "version": "3.0.8", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.8.tgz", + "integrity": "sha512-6FsRAQsxQ61mw+qP1ZzbL9Bc78x2p5OqNgNpnoAFLTrX8n5Kxph0CsnhmKKNXTWjXqU5L0pGPR7hYk+XWZr60Q==", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/postcss-value-parser": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz", + "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==" + }, + "node_modules/pretty-bytes": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/pretty-bytes/-/pretty-bytes-5.6.0.tgz", + "integrity": "sha512-FFw039TmrBqFK8ma/7OL3sDz/VytdtJr044/QUJtH0wK9lb9jLq9tJyIxUwtQJHwar2BqtiA4iCWSwo9JLkzFg==", + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/proc-log": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/proc-log/-/proc-log-2.0.1.tgz", + "integrity": "sha512-Kcmo2FhfDTXdcbfDH76N7uBYHINxc/8GW7UAVuVP9I+Va3uHSerrnKV6dLooga/gh7GlgzuCCr/eoldnL1muGw==", + "dev": true, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/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==" + }, + "node_modules/promise-inflight": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/promise-inflight/-/promise-inflight-1.0.1.tgz", + "integrity": "sha512-6zWPyEOFaQBJYcGMHBKTKJ3u6TBsnMFOIZSa6ce1e/ZrrsOlnHRHbabMjLiBYKp+n44X9eUI6VUPaukCXHuG4g==" + }, + "node_modules/promise-retry": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/promise-retry/-/promise-retry-2.0.1.tgz", + "integrity": "sha512-y+WKFlBR8BGXnsNlIHFGPZmyDf3DFMoLhaflAnyZgV6rG6xu+JwesTo2Q9R6XwYmtmwAFCkAk3e35jEdoeh/3g==", + "dev": true, + "dependencies": { + "err-code": "^2.0.2", + "retry": "^0.12.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/protractor": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/protractor/-/protractor-7.0.0.tgz", + "integrity": "sha512-UqkFjivi4GcvUQYzqGYNe0mLzfn5jiLmO8w9nMhQoJRLhy2grJonpga2IWhI6yJO30LibWXJJtA4MOIZD2GgZw==", + "deprecated": "We have news to share - Protractor is deprecated and will reach end-of-life by Summer 2023. To learn more and find out about other options please refer to this post on the Angular blog. Thank you for using and contributing to Protractor. https://goo.gle/state-of-e2e-in-angular", + "devOptional": true, + "dependencies": { + "@types/q": "^0.0.32", + "@types/selenium-webdriver": "^3.0.0", + "blocking-proxy": "^1.0.0", + "browserstack": "^1.5.1", + "chalk": "^1.1.3", + "glob": "^7.0.3", + "jasmine": "2.8.0", + "jasminewd2": "^2.1.0", + "q": "1.4.1", + "saucelabs": "^1.5.0", + "selenium-webdriver": "3.6.0", + "source-map-support": "~0.4.0", + "webdriver-js-extender": "2.1.0", + "webdriver-manager": "^12.1.7", + "yargs": "^15.3.1" + }, + "bin": { + "protractor": "bin/protractor", + "webdriver-manager": "bin/webdriver-manager" + }, + "engines": { + "node": ">=10.13.x" + } + }, + "node_modules/protractor/node_modules/ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==", + "devOptional": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/protractor/node_modules/ansi-styles": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha512-kmCevFghRiWM7HB5zTPULl4r9bVFSWjz62MhqizDGUrq2NWuNMQyuv4tHHoKJHs69M/MF64lEcHdYIocrdWQYA==", + "devOptional": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/protractor/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "devOptional": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/protractor/node_modules/chalk": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha512-U3lRVLMSlsCfjqYPbLyVv11M9CPW4I728d6TCKMAOJueEeB9/8o+eSsMnxPJD+Q+K909sdESg7C+tIkoH6on1A==", + "devOptional": true, + "dependencies": { + "ansi-styles": "^2.2.1", + "escape-string-regexp": "^1.0.2", + "has-ansi": "^2.0.0", + "strip-ansi": "^3.0.0", + "supports-color": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/protractor/node_modules/cliui": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz", + "integrity": "sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==", + "devOptional": true, + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^6.2.0" + } + }, + "node_modules/protractor/node_modules/cliui/node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "devOptional": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/protractor/node_modules/cliui/node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "devOptional": true, + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/protractor/node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "deprecated": "Glob versions prior to v9 are no longer supported", + "devOptional": true, + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/protractor/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "devOptional": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/protractor/node_modules/source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==", + "devOptional": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/protractor/node_modules/source-map-support": { + "version": "0.4.18", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.4.18.tgz", + "integrity": "sha512-try0/JqxPLF9nOjvSta7tVondkP5dwgyLDjVoyMDlmjugT2lRZ1OfsrYTkCd2hkDnJTKRbO/Rl3orm8vlsUzbA==", + "devOptional": true, + "dependencies": { + "source-map": "^0.5.6" + } + }, + "node_modules/protractor/node_modules/strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg==", + "devOptional": true, + "dependencies": { + "ansi-regex": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/protractor/node_modules/supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha512-KKNVtd6pCYgPIKU4cp2733HWYCpplQhddZLBUryaAHou723x+FRzQ5Df824Fj+IyyuiQTRoub4SnIFfIcrp70g==", + "devOptional": true, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/protractor/node_modules/wrap-ansi": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", + "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", + "devOptional": true, + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/protractor/node_modules/wrap-ansi/node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "devOptional": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/protractor/node_modules/wrap-ansi/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "devOptional": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/protractor/node_modules/wrap-ansi/node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "devOptional": true, + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/protractor/node_modules/y18n": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz", + "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==", + "devOptional": true + }, + "node_modules/protractor/node_modules/yargs": { + "version": "15.4.1", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-15.4.1.tgz", + "integrity": "sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A==", + "devOptional": true, + "dependencies": { + "cliui": "^6.0.0", + "decamelize": "^1.2.0", + "find-up": "^4.1.0", + "get-caller-file": "^2.0.1", + "require-directory": "^2.1.1", + "require-main-filename": "^2.0.0", + "set-blocking": "^2.0.0", + "string-width": "^4.2.0", + "which-module": "^2.0.0", + "y18n": "^4.0.0", + "yargs-parser": "^18.1.2" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/protractor/node_modules/yargs-parser": { + "version": "18.1.3", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz", + "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==", + "devOptional": true, + "dependencies": { + "camelcase": "^5.0.0", + "decamelize": "^1.2.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/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==", + "dependencies": { + "forwarded": "0.2.0", + "ipaddr.js": "1.9.1" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/proxy-addr/node_modules/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==", + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/prr": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/prr/-/prr-1.0.1.tgz", + "integrity": "sha512-yPw4Sng1gWghHQWj0B3ZggWUm4qVbPwPFcRG8KyxiU7J2OHFSoEHKS+EZ3fv5l1t9CyCiop6l/ZYeWbrgoQejw==", + "optional": true + }, + "node_modules/psl": { + "version": "1.15.0", + "resolved": "https://registry.npmjs.org/psl/-/psl-1.15.0.tgz", + "integrity": "sha512-JZd3gMVBAVQkSs6HdNZo9Sdo0LNcQeMNP3CozBJb3JYC/QUYZTnKxP+f8oWRX4rHP5EurWxqAHTSwUCjlNKa1w==", + "devOptional": true, + "dependencies": { + "punycode": "^2.3.1" + }, + "funding": { + "url": "https://github.com/sponsors/lupomontero" + } + }, + "node_modules/psl/node_modules/punycode": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz", + "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==", + "devOptional": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/punycode": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", + "integrity": "sha512-jmYNElW7yvO7TV33CjSmvSiE2yco3bV2czu/OzDKdMNVZQWfxCblURLhf+47syQRBntjfLdd/H0egrzIG+oaFQ==", + "devOptional": true + }, + "node_modules/q": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/q/-/q-1.4.1.tgz", + "integrity": "sha512-/CdEdaw49VZVmyIDGUQKDDT53c7qBkO6g5CefWz91Ae+l4+cRtcDYwMTXh6me4O8TMldeGHG3N2Bl84V78Ywbg==", + "deprecated": "You or someone you depend on is using Q, the JavaScript Promise library that gave JavaScript developers strong feelings about promises. They can almost certainly migrate to the native JavaScript promise now. Thank you literally everyone for joining me in this bet against the odds. Be excellent to each other.\n\n(For a CapTP with native promises, see @endo/eventual-send and @endo/captp)", + "devOptional": true, + "engines": { + "node": ">=0.6.0", + "teleport": ">=0.2.0" + } + }, + "node_modules/qjobs": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/qjobs/-/qjobs-1.2.0.tgz", + "integrity": "sha512-8YOJEHtxpySA3fFDyCRxA+UUV+fA+rTWnuWvylOK/NCjhY+b4ocCtmu8TtsWb+mYeU+GCHf/S66KZF/AsteKHg==", + "devOptional": true, + "engines": { + "node": ">=0.9" + } + }, + "node_modules/qs": { + "version": "6.13.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.13.0.tgz", + "integrity": "sha512-+38qI9SOr8tfZ4QmJNplMUxqjbe7LKvvZgWdExBOmd+egZTtjLB67Gu0HRX3u/XOq7UU2Nx6nsjvS16Z9uwfpg==", + "dependencies": { + "side-channel": "^1.0.6" + }, + "engines": { + "node": ">=0.6" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/queue-microtask": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", + "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/randombytes": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", + "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", + "dependencies": { + "safe-buffer": "^5.1.0" + } + }, + "node_modules/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==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/raw-body": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.2.tgz", + "integrity": "sha512-8zGqypfENjCIqGhgXToC8aB2r7YrBX+AQAfIPs/Mlk+BtPTztOvTS01NRW/3Eh60J+a48lt8qsCzirQ6loCVfA==", + "dependencies": { + "bytes": "3.1.2", + "http-errors": "2.0.0", + "iconv-lite": "0.4.24", + "unpipe": "1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/read-cache": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/read-cache/-/read-cache-1.0.0.tgz", + "integrity": "sha512-Owdv/Ft7IjOgm/i0xvNDZ1LrRANRfew4b2prF3OWMQLxLfu3bS8FVhCsrSCMK4lR56Y9ya+AThoTpDCTxCmpRA==", + "dependencies": { + "pify": "^2.3.0" + } + }, + "node_modules/read-package-json": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/read-package-json/-/read-package-json-5.0.2.tgz", + "integrity": "sha512-BSzugrt4kQ/Z0krro8zhTwV1Kd79ue25IhNN/VtHFy1mG/6Tluyi+msc0UpwaoQzxSHa28mntAjIZY6kEgfR9Q==", + "deprecated": "This package is no longer supported. Please use @npmcli/package-json instead.", + "dev": true, + "dependencies": { + "glob": "^8.0.1", + "json-parse-even-better-errors": "^2.3.1", + "normalize-package-data": "^4.0.0", + "npm-normalize-package-bin": "^2.0.0" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/read-package-json-fast": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/read-package-json-fast/-/read-package-json-fast-2.0.3.tgz", + "integrity": "sha512-W/BKtbL+dUjTuRL2vziuYhp76s5HZ9qQhd/dKfWIZveD0O40453QNyZhC0e63lqZrAQ4jiOapVoeJ7JrszenQQ==", + "dev": true, + "dependencies": { + "json-parse-even-better-errors": "^2.3.0", + "npm-normalize-package-bin": "^1.0.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/read-package-json/node_modules/npm-normalize-package-bin": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/npm-normalize-package-bin/-/npm-normalize-package-bin-2.0.0.tgz", + "integrity": "sha512-awzfKUO7v0FscrSpRoogyNm0sajikhBWpU0QMrW09AMi9n1PoKU6WaIqUzuJSQnpciZZmJ/jMZ2Egfmb/9LiWQ==", + "dev": true, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/read-pkg": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-3.0.0.tgz", + "integrity": "sha512-BLq/cCO9two+lBgiTYNqD6GdtK8s4NpaWrl6/rCO9w0TUS8oJl7cmToOZfRYllKTISY6nt1U7jQ53brmKqY6BA==", + "dev": true, + "dependencies": { + "load-json-file": "^4.0.0", + "normalize-package-data": "^2.3.2", + "path-type": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/read-pkg/node_modules/hosted-git-info": { + "version": "2.8.9", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz", + "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==", + "dev": true + }, + "node_modules/read-pkg/node_modules/normalize-package-data": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", + "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", + "dev": true, + "dependencies": { + "hosted-git-info": "^2.1.4", + "resolve": "^1.10.0", + "semver": "2 || 3 || 4 || 5", + "validate-npm-package-license": "^3.0.1" + } + }, + "node_modules/read-pkg/node_modules/path-type": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz", + "integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==", + "dev": true, + "dependencies": { + "pify": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/read-pkg/node_modules/pify": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", + "integrity": "sha512-C3FsVNH1udSEX48gGX1xfvwTWfsYWj5U+8/uK15BGzIGrKoUpghX8hWZwa/OFnakBiiVNmBvemTJR5mcy7iPcg==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/read-pkg/node_modules/semver": { + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", + "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", + "dev": true, + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/readable-stream": { + "version": "3.6.2", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", + "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/readdirp": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "dependencies": { + "picomatch": "^2.2.1" + }, + "engines": { + "node": ">=8.10.0" + } + }, + "node_modules/readdirp/node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/reflect-metadata": { + "version": "0.1.14", + "resolved": "https://registry.npmjs.org/reflect-metadata/-/reflect-metadata-0.1.14.tgz", + "integrity": "sha512-ZhYeb6nRaXCfhnndflDK8qI6ZQ/YcWZCISRAWICW9XYqMUwjZM9Z0DveWX/ABN01oxSHwVxKQmxeYZSsm0jh5A==" + }, + "node_modules/reflect.getprototypeof": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/reflect.getprototypeof/-/reflect.getprototypeof-1.0.10.tgz", + "integrity": "sha512-00o4I+DVrefhv+nX0ulyi3biSHCPDe+yLv5o/p6d/UVlirijB8E16FtfwSAi4g3tcqrQ4lRAqQSoFEZJehYEcw==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.8", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.9", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.0.0", + "get-intrinsic": "^1.2.7", + "get-proto": "^1.0.1", + "which-builtin-type": "^1.2.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/regenerate": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.2.tgz", + "integrity": "sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==" + }, + "node_modules/regenerate-unicode-properties": { + "version": "10.2.0", + "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-10.2.0.tgz", + "integrity": "sha512-DqHn3DwbmmPVzeKj9woBadqmXxLvQoQIwu7nopMc72ztvxVmVk2SBhSnx67zuye5TP+lJsb/TBQsjLKhnDf3MA==", + "dependencies": { + "regenerate": "^1.4.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/regenerator-runtime": { + "version": "0.13.9", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.9.tgz", + "integrity": "sha512-p3VT+cOEgxFsRRA9X4lkI1E+k2/CtnKtU4gcxyaCUreilL/vqI6CdZ3wxVUx3UOUg+gnUOQQcRI7BmSI656MYA==" + }, + "node_modules/regenerator-transform": { + "version": "0.15.2", + "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.15.2.tgz", + "integrity": "sha512-hfMp2BoF0qOk3uc5V20ALGDS2ddjQaLrdl7xrGXvAIow7qeWRM2VA2HuCHkUKk9slq3VwEwLNK3DFBqDfPGYtg==", + "dependencies": { + "@babel/runtime": "^7.8.4" + } + }, + "node_modules/regex-parser": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/regex-parser/-/regex-parser-2.3.1.tgz", + "integrity": "sha512-yXLRqatcCuKtVHsWrNg0JL3l1zGfdXeEvDa0bdu4tCDQw0RpMDZsqbkyRTUnKMR0tXF627V2oEWjBEaEdqTwtQ==" + }, + "node_modules/regexp.prototype.flags": { + "version": "1.5.4", + "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.4.tgz", + "integrity": "sha512-dYqgNSZbDwkaJ2ceRd9ojCGjBq+mOm9LmtXnAnEGyHhN/5R7iDW2TRw3h+o/jCFxus3P2LfWIIiwowAjANm7IA==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.8", + "define-properties": "^1.2.1", + "es-errors": "^1.3.0", + "get-proto": "^1.0.1", + "gopd": "^1.2.0", + "set-function-name": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/regexpu-core": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-6.2.0.tgz", + "integrity": "sha512-H66BPQMrv+V16t8xtmq+UC0CBpiTBA60V8ibS1QVReIp8T1z8hwFxqcGzm9K6lgsN7sB5edVH8a+ze6Fqm4weA==", + "dependencies": { + "regenerate": "^1.4.2", + "regenerate-unicode-properties": "^10.2.0", + "regjsgen": "^0.8.0", + "regjsparser": "^0.12.0", + "unicode-match-property-ecmascript": "^2.0.0", + "unicode-match-property-value-ecmascript": "^2.1.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/regjsgen": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.8.0.tgz", + "integrity": "sha512-RvwtGe3d7LvWiDQXeQw8p5asZUmfU1G/l6WbUXeHta7Y2PEIvBTwH6E2EfmYUK8pxcxEdEmaomqyp0vZZ7C+3Q==" + }, + "node_modules/regjsparser": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.12.0.tgz", + "integrity": "sha512-cnE+y8bz4NhMjISKbgeVJtqNbtf5QpjZP+Bslo+UqkIt9QPnX9q095eiRRASJG1/tz6dlNr6Z5NsBiWYokp6EQ==", + "dependencies": { + "jsesc": "~3.0.2" + }, + "bin": { + "regjsparser": "bin/parser" + } + }, + "node_modules/regjsparser/node_modules/jsesc": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-3.0.2.tgz", + "integrity": "sha512-xKqzzWXDttJuOcawBt4KnKHHIf5oQ/Cxax+0PWFG+DFDgHNAdi+TXECADI+RYiFUMmx8792xsMbbgXj4CwnP4g==", + "bin": { + "jsesc": "bin/jsesc" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/request": { + "version": "2.88.2", + "resolved": "https://registry.npmjs.org/request/-/request-2.88.2.tgz", + "integrity": "sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw==", + "deprecated": "request has been deprecated, see https://github.com/request/request/issues/3142", + "devOptional": true, + "dependencies": { + "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" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/request/node_modules/qs": { + "version": "6.5.3", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.3.tgz", + "integrity": "sha512-qxXIEh4pCGfHICj1mAJQ2/2XVZkjCDTcEgfoSQxc/fYivUZxTkk7L3bDBJSoNrEzXI17oUO5Dp07ktqE5KzczA==", + "devOptional": true, + "engines": { + "node": ">=0.6" + } + }, + "node_modules/request/node_modules/uuid": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", + "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==", + "deprecated": "Please upgrade to version 7 or higher. Older versions may use Math.random() in certain circumstances, which is known to be problematic. See https://v8.dev/blog/math-random for details.", + "devOptional": true, + "bin": { + "uuid": "bin/uuid" + } + }, + "node_modules/require-directory": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/require-from-string": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz", + "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/require-main-filename": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz", + "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==", + "devOptional": true + }, + "node_modules/requires-port": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz", + "integrity": "sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==" + }, + "node_modules/resolve": { + "version": "1.22.1", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz", + "integrity": "sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==", + "dependencies": { + "is-core-module": "^2.9.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/resolve-from": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", + "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", + "engines": { + "node": ">=8" + } + }, + "node_modules/resolve-url": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz", + "integrity": "sha512-ZuF55hVUQaaczgOIwqWzkEcEidmlD/xl44x1UZnhOXcYuFN2S6+rcxpG+C1N3So0wvNI3DmJICUFfu2SxhBmvg==", + "deprecated": "https://github.com/lydell/resolve-url#deprecated" + }, + "node_modules/resolve-url-loader": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/resolve-url-loader/-/resolve-url-loader-5.0.0.tgz", + "integrity": "sha512-uZtduh8/8srhBoMx//5bwqjQ+rfYOUq8zC9NrMUGtjBiGTtFJM42s58/36+hTqeqINcnYe08Nj3LkK9lW4N8Xg==", + "dependencies": { + "adjust-sourcemap-loader": "^4.0.0", + "convert-source-map": "^1.7.0", + "loader-utils": "^2.0.0", + "postcss": "^8.2.14", + "source-map": "0.6.1" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/resolve-url-loader/node_modules/loader-utils": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.4.tgz", + "integrity": "sha512-xXqpXoINfFhgua9xiqD8fPFHgkoq1mmmpE92WlDbm9rNRd/EbRb+Gqf908T2DMfuHjjJlksiK2RbHVOdD/MqSw==", + "dependencies": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^2.1.2" + }, + "engines": { + "node": ">=8.9.0" + } + }, + "node_modules/resolve-url-loader/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/restore-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz", + "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==", + "dependencies": { + "onetime": "^5.1.0", + "signal-exit": "^3.0.2" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/retry": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/retry/-/retry-0.12.0.tgz", + "integrity": "sha512-9LkiTwjUh6rT555DtE9rTX+BKByPfrMzEAtnlEtdEwr3Nkffwiihqe2bWADg+OQRjt9gl6ICdmB/ZFDCGAtSow==", + "dev": true, + "engines": { + "node": ">= 4" + } + }, + "node_modules/reusify": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.1.0.tgz", + "integrity": "sha512-g6QUff04oZpHs0eG5p83rFLhHeV00ug/Yf9nZM6fLeUrPguBTkTQOdpAWWspMh55TZfVQDPaN3NQJfbVRAxdIw==", + "engines": { + "iojs": ">=1.0.0", + "node": ">=0.10.0" + } + }, + "node_modules/rfdc": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/rfdc/-/rfdc-1.4.1.tgz", + "integrity": "sha512-q1b3N5QkRUWUl7iyylaaj3kOpIT0N2i9MqIEQXP73GVsN9cw3fdx8X63cEmWhJGi2PPCF23Ijp7ktmd39rawIA==", + "devOptional": true + }, + "node_modules/rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "deprecated": "Rimraf versions prior to v4 are no longer supported", + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/rimraf/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/rimraf/node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "deprecated": "Glob versions prior to v9 are no longer supported", + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/rimraf/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/rollup": { + "version": "2.78.0", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-2.78.0.tgz", + "integrity": "sha512-4+YfbQC9QEVvKTanHhIAFVUFSRsezvQF8vFOJwtGfb9Bb+r014S+qryr9PSmw8x6sMnPkmFBGAvIFVQxvJxjtg==", + "bin": { + "rollup": "dist/bin/rollup" + }, + "engines": { + "node": ">=10.0.0" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + } + }, + "node_modules/rollup-plugin-sourcemaps": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/rollup-plugin-sourcemaps/-/rollup-plugin-sourcemaps-0.6.3.tgz", + "integrity": "sha512-paFu+nT1xvuO1tPFYXGe+XnQvg4Hjqv/eIhG8i5EspfYYPBKL57X7iVbfv55aNVASg3dzWvES9dmWsL2KhfByw==", + "dependencies": { + "@rollup/pluginutils": "^3.0.9", + "source-map-resolve": "^0.6.0" + }, + "engines": { + "node": ">=10.0.0" + }, + "peerDependencies": { + "@types/node": ">=10.0.0", + "rollup": ">=0.31.2" + }, + "peerDependenciesMeta": { + "@types/node": { + "optional": true + } + } + }, + "node_modules/rollup-plugin-sourcemaps/node_modules/@rollup/pluginutils": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-3.1.0.tgz", + "integrity": "sha512-GksZ6pr6TpIjHm8h9lSQ8pi8BE9VeubNT0OMJ3B5uZJ8pz73NPiqOtCog/x2/QzM1ENChPKxMDhiQuRHsqc+lg==", + "dependencies": { + "@types/estree": "0.0.39", + "estree-walker": "^1.0.1", + "picomatch": "^2.2.2" + }, + "engines": { + "node": ">= 8.0.0" + }, + "peerDependencies": { + "rollup": "^1.20.0||^2.0.0" + } + }, + "node_modules/rollup-plugin-sourcemaps/node_modules/@types/estree": { + "version": "0.0.39", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.39.tgz", + "integrity": "sha512-EYNwp3bU+98cpU4lAWYYL7Zz+2gryWH1qbdDTidVd6hkiR6weksdbMadyXKXNPEkQFhXM+hVO9ZygomHXp+AIw==" + }, + "node_modules/rollup-plugin-sourcemaps/node_modules/estree-walker": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-1.0.1.tgz", + "integrity": "sha512-1fMXF3YP4pZZVozF8j/ZLfvnR8NSIljt56UhbZ5PeeDmmGHpgpdwQt7ITlGvYaQukCvuBRMLEiKiYC+oeIg4cg==" + }, + "node_modules/rollup-plugin-sourcemaps/node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/run-async": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.4.1.tgz", + "integrity": "sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==", + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/run-parallel": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", + "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "dependencies": { + "queue-microtask": "^1.2.2" + } + }, + "node_modules/rxjs": { + "version": "7.6.0", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.6.0.tgz", + "integrity": "sha512-DDa7d8TFNUalGC9VqXvQ1euWNN7sc63TrUCuM9J998+ViviahMIjKSOU7rfcgFOF+FCD71BhDRv4hrFz+ImDLQ==", + "dependencies": { + "tslib": "^2.1.0" + } + }, + "node_modules/safe-array-concat": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/safe-array-concat/-/safe-array-concat-1.1.3.tgz", + "integrity": "sha512-AURm5f0jYEOydBj7VQlVvDrjeFgthDdEF5H1dP+6mNpoXOMo1quQqJ4wvJDyRZ9+pO3kGWoOdmV08cSv2aJV6Q==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.2", + "get-intrinsic": "^1.2.6", + "has-symbols": "^1.1.0", + "isarray": "^2.0.5" + }, + "engines": { + "node": ">=0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/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==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/safe-push-apply": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/safe-push-apply/-/safe-push-apply-1.0.0.tgz", + "integrity": "sha512-iKE9w/Z7xCzUMIZqdBsp6pEQvwuEebH4vdpjcDWnyzaI6yl6O9FHvVpmGelvEHNsoY6wGblkxR6Zty/h00WiSA==", + "dev": true, + "dependencies": { + "es-errors": "^1.3.0", + "isarray": "^2.0.5" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/safe-regex-test": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.1.0.tgz", + "integrity": "sha512-x/+Cz4YrimQxQccJf5mKEbIa1NzeCRNI5Ecl/ekmlYaampdNLPalVyIcCZNNH3MvmqBugV5TMYZXv0ljslUlaw==", + "devOptional": true, + "dependencies": { + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "is-regex": "^1.2.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" + }, + "node_modules/sass": { + "version": "1.54.4", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.54.4.tgz", + "integrity": "sha512-3tmF16yvnBwtlPrNBHw/H907j8MlOX8aTBnlNX1yrKx24RKcJGPyLhFUwkoKBKesR3unP93/2z14Ll8NicwQUA==", + "dependencies": { + "chokidar": ">=3.0.0 <4.0.0", + "immutable": "^4.0.0", + "source-map-js": ">=0.6.2 <2.0.0" + }, + "bin": { + "sass": "sass.js" + }, + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/sass-loader": { + "version": "13.0.2", + "resolved": "https://registry.npmjs.org/sass-loader/-/sass-loader-13.0.2.tgz", + "integrity": "sha512-BbiqbVmbfJaWVeOOAu2o7DhYWtcNmTfvroVgFXa6k2hHheMxNAeDHLNoDy/Q5aoaVlz0LH+MbMktKwm9vN/j8Q==", + "dependencies": { + "klona": "^2.0.4", + "neo-async": "^2.6.2" + }, + "engines": { + "node": ">= 14.15.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "fibers": ">= 3.1.0", + "node-sass": "^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0", + "sass": "^1.3.0", + "sass-embedded": "*", + "webpack": "^5.0.0" + }, + "peerDependenciesMeta": { + "fibers": { + "optional": true + }, + "node-sass": { + "optional": true + }, + "sass": { + "optional": true + }, + "sass-embedded": { + "optional": true + } + } + }, + "node_modules/saucelabs": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/saucelabs/-/saucelabs-1.5.0.tgz", + "integrity": "sha512-jlX3FGdWvYf4Q3LFfFWS1QvPg3IGCGWxIc8QBFdPTbpTJnt/v17FHXYVAn7C8sHf1yUXo2c7yIM0isDryfYtHQ==", + "devOptional": true, + "dependencies": { + "https-proxy-agent": "^2.2.1" + }, + "engines": { + "node": "*" + } + }, + "node_modules/saucelabs/node_modules/agent-base": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-4.3.0.tgz", + "integrity": "sha512-salcGninV0nPrwpGNn4VTXBb1SOuXQBiqbrNXoeizJsHrsL6ERFM2Ne3JUSBWRE6aeNJI2ROP/WEEIDUiDe3cg==", + "devOptional": true, + "dependencies": { + "es6-promisify": "^5.0.0" + }, + "engines": { + "node": ">= 4.0.0" + } + }, + "node_modules/saucelabs/node_modules/debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "devOptional": true, + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/saucelabs/node_modules/https-proxy-agent": { + "version": "2.2.4", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-2.2.4.tgz", + "integrity": "sha512-OmvfoQ53WLjtA9HeYP9RNrWMJzzAz1JGaSFr1nijg0PVR1JaD/xbJq1mdEIIlxGpXp9eSe/O2LgU9DJmTPd0Eg==", + "devOptional": true, + "dependencies": { + "agent-base": "^4.3.0", + "debug": "^3.1.0" + }, + "engines": { + "node": ">= 4.5.0" + } + }, + "node_modules/sax": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/sax/-/sax-1.4.1.tgz", + "integrity": "sha512-+aWOz7yVScEGoKNd4PA10LZ8sk0A/z5+nXQG5giUO5rprX9jgYsTdov9qCchZiPIZezbZH+jRut8nPodFAX4Jg==", + "devOptional": true + }, + "node_modules/schema-utils": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-2.7.1.tgz", + "integrity": "sha512-SHiNtMOUGWBQJwzISiVYKu82GiV4QYGePp3odlY1tuKO7gPtphAT5R/py0fA6xtbgLL/RvtJZnU9b8s0F1q0Xg==", + "dependencies": { + "@types/json-schema": "^7.0.5", + "ajv": "^6.12.4", + "ajv-keywords": "^3.5.2" + }, + "engines": { + "node": ">= 8.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/schema-utils/node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "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" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/schema-utils/node_modules/ajv-keywords": { + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", + "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", + "peerDependencies": { + "ajv": "^6.9.1" + } + }, + "node_modules/schema-utils/node_modules/json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==" + }, + "node_modules/select-hose": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/select-hose/-/select-hose-2.0.0.tgz", + "integrity": "sha512-mEugaLK+YfkijB4fx0e6kImuJdCIt2LxCRcbEYPqRGCs4F2ogyfZU5IAZRdjCP8JPq2AtdNoC/Dux63d9Kiryg==" + }, + "node_modules/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==", + "devOptional": true, + "dependencies": { + "jszip": "^3.1.3", + "rimraf": "^2.5.4", + "tmp": "0.0.30", + "xml2js": "^0.4.17" + }, + "engines": { + "node": ">= 6.9.0" + } + }, + "node_modules/selenium-webdriver/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "devOptional": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/selenium-webdriver/node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "deprecated": "Glob versions prior to v9 are no longer supported", + "devOptional": true, + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/selenium-webdriver/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "devOptional": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/selenium-webdriver/node_modules/rimraf": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", + "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", + "deprecated": "Rimraf versions prior to v4 are no longer supported", + "devOptional": true, + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + } + }, + "node_modules/selenium-webdriver/node_modules/tmp": { + "version": "0.0.30", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.30.tgz", + "integrity": "sha512-HXdTB7lvMwcb55XFfrTM8CPr/IYREk4hVBFaQ4b/6nInrluSL86hfHm7vu0luYKCfyBZp2trCjpc8caC3vVM3w==", + "devOptional": true, + "dependencies": { + "os-tmpdir": "~1.0.1" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/selfsigned": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/selfsigned/-/selfsigned-2.4.1.tgz", + "integrity": "sha512-th5B4L2U+eGLq1TVh7zNRGBapioSORUeymIydxgFpwww9d2qyKvtuPU2jJuHvYAwwqi2Y596QBL3eEqcPEYL8Q==", + "dependencies": { + "@types/node-forge": "^1.3.0", + "node-forge": "^1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/semver": { + "version": "7.5.3", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.3.tgz", + "integrity": "sha512-QBlUtyVk/5EeHbi7X0fw6liDZc7BBmEaSYn01fMU1OUYbf6GPsbTtd8WmnqbI20SeycoHSeiybkE/q1Q+qlThQ==", + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/semver/node_modules/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==", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/semver/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + }, + "node_modules/send": { + "version": "0.19.0", + "resolved": "https://registry.npmjs.org/send/-/send-0.19.0.tgz", + "integrity": "sha512-dW41u5VfLXu8SJh5bwRmyYUbAoSB3c9uQh6L8h/KtsFREPWpbX1lrljJo186Jc4nmci/sGUZ9a0a0J2zgfq2hw==", + "dependencies": { + "debug": "2.6.9", + "depd": "2.0.0", + "destroy": "1.2.0", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "fresh": "0.5.2", + "http-errors": "2.0.0", + "mime": "1.6.0", + "ms": "2.1.3", + "on-finished": "2.4.1", + "range-parser": "~1.2.1", + "statuses": "2.0.1" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/send/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/send/node_modules/debug/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" + }, + "node_modules/send/node_modules/mime": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", + "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", + "bin": { + "mime": "cli.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/send/node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==" + }, + "node_modules/send/node_modules/statuses": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", + "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/serialize-javascript": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.2.tgz", + "integrity": "sha512-Saa1xPByTTq2gdeFZYLLo+RFE35NHZkAbqZeWNd3BpzppeVisAqpDjcp8dyf6uIvEqJRd46jemmyA4iFIeVk8g==", + "dependencies": { + "randombytes": "^2.1.0" + } + }, + "node_modules/serve-index": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/serve-index/-/serve-index-1.9.1.tgz", + "integrity": "sha512-pXHfKNP4qujrtteMrSBb0rc8HJ9Ms/GrXwcUtUtD5s4ewDJI8bT3Cz2zTVRMKtri49pLx2e0Ya8ziP5Ya2pZZw==", + "dependencies": { + "accepts": "~1.3.4", + "batch": "0.6.1", + "debug": "2.6.9", + "escape-html": "~1.0.3", + "http-errors": "~1.6.2", + "mime-types": "~2.1.17", + "parseurl": "~1.3.2" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/serve-index/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/serve-index/node_modules/depd": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", + "integrity": "sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/serve-index/node_modules/http-errors": { + "version": "1.6.3", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz", + "integrity": "sha512-lks+lVC8dgGyh97jxvxeYTWQFvh4uw4yC12gVl63Cg30sjPX4wuGcdkICVXDAESr6OJGjqGA8Iz5mkeN6zlD7A==", + "dependencies": { + "depd": "~1.1.2", + "inherits": "2.0.3", + "setprototypeof": "1.1.0", + "statuses": ">= 1.4.0 < 2" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/serve-index/node_modules/inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw==" + }, + "node_modules/serve-index/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" + }, + "node_modules/serve-index/node_modules/setprototypeof": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz", + "integrity": "sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==" + }, + "node_modules/serve-static": { + "version": "1.16.2", + "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.16.2.tgz", + "integrity": "sha512-VqpjJZKadQB/PEbEwvFdO43Ax5dFBZ2UECszz8bQ7pi7wt//PWe1P6MN7eCnjsatYtBT6EuiClbjSWP2WrIoTw==", + "dependencies": { + "encodeurl": "~2.0.0", + "escape-html": "~1.0.3", + "parseurl": "~1.3.3", + "send": "0.19.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/serve-static/node_modules/encodeurl": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-2.0.0.tgz", + "integrity": "sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/set-blocking": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", + "integrity": "sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==", + "devOptional": true + }, + "node_modules/set-function-length": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/set-function-length/-/set-function-length-1.2.2.tgz", + "integrity": "sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==", + "dev": true, + "dependencies": { + "define-data-property": "^1.1.4", + "es-errors": "^1.3.0", + "function-bind": "^1.1.2", + "get-intrinsic": "^1.2.4", + "gopd": "^1.0.1", + "has-property-descriptors": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/set-function-name": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/set-function-name/-/set-function-name-2.0.2.tgz", + "integrity": "sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ==", + "dev": true, + "dependencies": { + "define-data-property": "^1.1.4", + "es-errors": "^1.3.0", + "functions-have-names": "^1.2.3", + "has-property-descriptors": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/set-proto": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/set-proto/-/set-proto-1.0.0.tgz", + "integrity": "sha512-RJRdvCo6IAnPdsvP/7m6bsQqNnn1FCBX5ZNtFL98MmFF/4xAIJTIg1YbHW5DC2W5SKZanrC6i4HsJqlajw/dZw==", + "dev": true, + "dependencies": { + "dunder-proto": "^1.0.1", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/setimmediate": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", + "integrity": "sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA==", + "devOptional": true + }, + "node_modules/setprototypeof": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", + "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==" + }, + "node_modules/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==", + "dependencies": { + "kind-of": "^6.0.2" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/shebang-command": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", + "integrity": "sha512-EV3L1+UQWGor21OmnvojK36mhg+TyIKDh3iFBKBohr5xeXIhNBcx8oWdgkTEEQ+BEFFYdLRuqMfd5L84N1V5Vg==", + "dev": true, + "dependencies": { + "shebang-regex": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/shebang-regex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", + "integrity": "sha512-wpoSFAxys6b2a2wHZ1XpDSgD7N9iVjg29Ph9uV/uaP9Ex/KXlkTZTeddxDPSYQpgvzKLGJke2UU0AzoGCjNIvQ==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/shell-quote": { + "version": "1.8.2", + "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.8.2.tgz", + "integrity": "sha512-AzqKpGKjrj7EM6rKVQEPpB288oCfnrEIuyoT9cyF4nmGa7V8Zk6f7RRqYisX8X9m+Q7bd632aZW4ky7EhbQztA==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/side-channel": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.1.0.tgz", + "integrity": "sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw==", + "dependencies": { + "es-errors": "^1.3.0", + "object-inspect": "^1.13.3", + "side-channel-list": "^1.0.0", + "side-channel-map": "^1.0.1", + "side-channel-weakmap": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/side-channel-list": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/side-channel-list/-/side-channel-list-1.0.0.tgz", + "integrity": "sha512-FCLHtRD/gnpCiCHEiJLOwdmFP+wzCmDEkc9y7NsYxeF4u7Btsn1ZuwgwJGxImImHicJArLP4R0yX4c2KCrMrTA==", + "dependencies": { + "es-errors": "^1.3.0", + "object-inspect": "^1.13.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/side-channel-map": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/side-channel-map/-/side-channel-map-1.0.1.tgz", + "integrity": "sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA==", + "dependencies": { + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.5", + "object-inspect": "^1.13.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/side-channel-weakmap": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/side-channel-weakmap/-/side-channel-weakmap-1.0.2.tgz", + "integrity": "sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A==", + "dependencies": { + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.5", + "object-inspect": "^1.13.3", + "side-channel-map": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/signal-exit": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", + "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==" + }, + "node_modules/slash": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-4.0.0.tgz", + "integrity": "sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/smart-buffer": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.2.0.tgz", + "integrity": "sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==", + "dev": true, + "engines": { + "node": ">= 6.0.0", + "npm": ">= 3.0.0" + } + }, + "node_modules/socket.io": { + "version": "4.8.1", + "resolved": "https://registry.npmjs.org/socket.io/-/socket.io-4.8.1.tgz", + "integrity": "sha512-oZ7iUCxph8WYRHHcjBEc9unw3adt5CmSNlppj/5Q4k2RIrhl8Z5yY2Xr4j9zj0+wzVZ0bxmYoGSzKJnRl6A4yg==", + "devOptional": true, + "dependencies": { + "accepts": "~1.3.4", + "base64id": "~2.0.0", + "cors": "~2.8.5", + "debug": "~4.3.2", + "engine.io": "~6.6.0", + "socket.io-adapter": "~2.5.2", + "socket.io-parser": "~4.2.4" + }, + "engines": { + "node": ">=10.2.0" + } + }, + "node_modules/socket.io-adapter": { + "version": "2.5.5", + "resolved": "https://registry.npmjs.org/socket.io-adapter/-/socket.io-adapter-2.5.5.tgz", + "integrity": "sha512-eLDQas5dzPgOWCk9GuuJC2lBqItuhKI4uxGgo9aIV7MYbk2h9Q6uULEh8WBzThoI7l+qU9Ast9fVUmkqPP9wYg==", + "devOptional": true, + "dependencies": { + "debug": "~4.3.4", + "ws": "~8.17.1" + } + }, + "node_modules/socket.io-parser": { + "version": "4.2.4", + "resolved": "https://registry.npmjs.org/socket.io-parser/-/socket.io-parser-4.2.4.tgz", + "integrity": "sha512-/GbIKmo8ioc+NIWIhwdecY0ge+qVBSMdgxGygevmdHj24bsfgtCmcUUcQ5ZzcylGFHsN3k4HB4Cgkl96KVnuew==", + "devOptional": true, + "dependencies": { + "@socket.io/component-emitter": "~3.1.0", + "debug": "~4.3.1" + }, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/sockjs": { + "version": "0.3.24", + "resolved": "https://registry.npmjs.org/sockjs/-/sockjs-0.3.24.tgz", + "integrity": "sha512-GJgLTZ7vYb/JtPSSZ10hsOYIvEYsjbNU+zPdIHcUaWVNUEPivzxku31865sSSud0Da0W4lEeOPlmw93zLQchuQ==", + "dependencies": { + "faye-websocket": "^0.11.3", + "uuid": "^8.3.2", + "websocket-driver": "^0.7.4" + } + }, + "node_modules/socks": { + "version": "2.8.4", + "resolved": "https://registry.npmjs.org/socks/-/socks-2.8.4.tgz", + "integrity": "sha512-D3YaD0aRxR3mEcqnidIs7ReYJFVzWdd6fXJYUM8ixcQcJRGTka/b3saV0KflYhyVJXKhb947GndU35SxYNResQ==", + "dev": true, + "dependencies": { + "ip-address": "^9.0.5", + "smart-buffer": "^4.2.0" + }, + "engines": { + "node": ">= 10.0.0", + "npm": ">= 3.0.0" + } + }, + "node_modules/socks-proxy-agent": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-7.0.0.tgz", + "integrity": "sha512-Fgl0YPZ902wEsAyiQ+idGd1A7rSFx/ayC1CQVMw5P+EQx2V0SgpGtf6OKFhVjPflPUl9YMmEOnmfjCdMUsygww==", + "dev": true, + "dependencies": { + "agent-base": "^6.0.2", + "debug": "^4.3.3", + "socks": "^2.6.2" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/source-map": { + "version": "0.7.4", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz", + "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==", + "engines": { + "node": ">= 8" + } + }, + "node_modules/source-map-js": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.1.tgz", + "integrity": "sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/source-map-loader": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/source-map-loader/-/source-map-loader-4.0.0.tgz", + "integrity": "sha512-i3KVgM3+QPAHNbGavK+VBq03YoJl24m9JWNbLgsjTj8aJzXG9M61bantBTNBt7CNwY2FYf+RJRYJ3pzalKjIrw==", + "dependencies": { + "abab": "^2.0.6", + "iconv-lite": "^0.6.3", + "source-map-js": "^1.0.2" + }, + "engines": { + "node": ">= 14.15.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^5.72.1" + } + }, + "node_modules/source-map-loader/node_modules/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==", + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/source-map-resolve": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.6.0.tgz", + "integrity": "sha512-KXBr9d/fO/bWo97NXsPIAW1bFSBOuCnjbNTBMO7N59hsv5i9yzRDfcYwwt0l04+VqnKC+EwzvJZIP/qkuMgR/w==", + "deprecated": "See https://github.com/lydell/source-map-resolve#deprecated", + "dependencies": { + "atob": "^2.1.2", + "decode-uri-component": "^0.2.0" + } + }, + "node_modules/source-map-support": { + "version": "0.5.21", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", + "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", + "dependencies": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" + } + }, + "node_modules/source-map-support/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/source-map-url": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/source-map-url/-/source-map-url-0.4.1.tgz", + "integrity": "sha512-cPiFOTLUKvJFIg4SKVScy4ilPPW6rFgMgfuZJPNoDuMs3nC1HbMUycBoJw77xFIp6z1UJQJOfx6C9GMH80DiTw==", + "deprecated": "See https://github.com/lydell/source-map-url#deprecated" + }, + "node_modules/sourcemap-codec": { + "version": "1.4.8", + "resolved": "https://registry.npmjs.org/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz", + "integrity": "sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==", + "deprecated": "Please use @jridgewell/sourcemap-codec instead" + }, + "node_modules/spdx-correct": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.2.0.tgz", + "integrity": "sha512-kN9dJbvnySHULIluDHy32WHRUu3Og7B9sbY7tsFLctQkIqnMh3hErYgdMjTYuqmcXX+lK5T1lnUt3G7zNswmZA==", + "dev": true, + "dependencies": { + "spdx-expression-parse": "^3.0.0", + "spdx-license-ids": "^3.0.0" + } + }, + "node_modules/spdx-exceptions": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.5.0.tgz", + "integrity": "sha512-PiU42r+xO4UbUS1buo3LPJkjlO7430Xn5SVAhdpzzsPHsjbYVflnnFdATgabnLude+Cqu25p6N+g2lw/PFsa4w==", + "dev": true + }, + "node_modules/spdx-expression-parse": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", + "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", + "dev": true, + "dependencies": { + "spdx-exceptions": "^2.1.0", + "spdx-license-ids": "^3.0.0" + } + }, + "node_modules/spdx-license-ids": { + "version": "3.0.21", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.21.tgz", + "integrity": "sha512-Bvg/8F5XephndSK3JffaRqdT+gyhfqIPwDHpX80tJrF8QQRYMo8sNMeaZ2Dp5+jhwKnUmIOyFFQfHRkjJm5nXg==", + "dev": true + }, + "node_modules/spdy": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/spdy/-/spdy-4.0.2.tgz", + "integrity": "sha512-r46gZQZQV+Kl9oItvl1JZZqJKGr+oEkB08A6BzkiR7593/7IbtuncXHd2YoYeTsG4157ZssMu9KYvUHLcjcDoA==", + "dependencies": { + "debug": "^4.1.0", + "handle-thing": "^2.0.0", + "http-deceiver": "^1.2.7", + "select-hose": "^2.0.0", + "spdy-transport": "^3.0.0" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/spdy-transport": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/spdy-transport/-/spdy-transport-3.0.0.tgz", + "integrity": "sha512-hsLVFE5SjA6TCisWeJXFKniGGOpBgMLmerfO2aCyCU5s7nJ/rpAepqmFifv/GCbSbueEeAJJnmSQ2rKC/g8Fcw==", + "dependencies": { + "debug": "^4.1.0", + "detect-node": "^2.0.4", + "hpack.js": "^2.1.6", + "obuf": "^1.1.2", + "readable-stream": "^3.0.6", + "wbuf": "^1.7.3" + } + }, + "node_modules/sprintf-js": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==" + }, + "node_modules/sshpk": { + "version": "1.18.0", + "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.18.0.tgz", + "integrity": "sha512-2p2KJZTSqQ/I3+HX42EpYOa2l3f8Erv8MWKsy2I9uf4wA7yFIkXRffYdsx86y6z4vHtV8u7g+pPlr8/4ouAxsQ==", + "devOptional": true, + "dependencies": { + "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" + }, + "bin": { + "sshpk-conv": "bin/sshpk-conv", + "sshpk-sign": "bin/sshpk-sign", + "sshpk-verify": "bin/sshpk-verify" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/sshpk/node_modules/jsbn": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", + "integrity": "sha512-UVU9dibq2JcFWxQPA6KCqj5O42VOmAY3zQUfEKxU0KpTGXwNoCjkX1e13eHNvw/xPynt6pU0rZ1htjWTNTSXsg==", + "devOptional": true + }, + "node_modules/ssri": { + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/ssri/-/ssri-9.0.1.tgz", + "integrity": "sha512-o57Wcn66jMQvfHG1FlYbWeZWW/dHZhJXjpIcTfXldXEk5nz5lStPo3mK0OJQfGR3RbZUlbISexbljkJzuEj/8Q==", + "dependencies": { + "minipass": "^3.1.1" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/statuses": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", + "integrity": "sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/streamroller": { + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/streamroller/-/streamroller-3.1.5.tgz", + "integrity": "sha512-KFxaM7XT+irxvdqSP1LGLgNWbYN7ay5owZ3r/8t77p+EtSUAfUgtl7be3xtqtOmGUl9K9YPO2ca8133RlTjvKw==", + "devOptional": true, + "dependencies": { + "date-format": "^4.0.14", + "debug": "^4.3.4", + "fs-extra": "^8.1.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/string_decoder": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "dependencies": { + "safe-buffer": "~5.2.0" + } + }, + "node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/string.prototype.padend": { + "version": "3.1.6", + "resolved": "https://registry.npmjs.org/string.prototype.padend/-/string.prototype.padend-3.1.6.tgz", + "integrity": "sha512-XZpspuSB7vJWhvJc9DLSlrXl1mcA2BdoY5jjnS135ydXqLoqhs96JjDtCkjJEQHvfqZIp9hBuBMgI589peyx9Q==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.2", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/string.prototype.trim": { + "version": "1.2.10", + "resolved": "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.10.tgz", + "integrity": "sha512-Rs66F0P/1kedk5lyYyH9uBzuiI/kNRmwJAR9quK6VOtIpZ2G+hMZd+HQbbv25MgCA6gEffoMZYxlTod4WcdrKA==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.2", + "define-data-property": "^1.1.4", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.5", + "es-object-atoms": "^1.0.0", + "has-property-descriptors": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/string.prototype.trimend": { + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.9.tgz", + "integrity": "sha512-G7Ok5C6E/j4SGfyLCloXTrngQIQU3PWtXGst3yM7Bea9FRURf1S42ZHlZZtsNque2FN2PoUhfZXYLNWwEr4dLQ==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.2", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/string.prototype.trimstart": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.8.tgz", + "integrity": "sha512-UXSH262CSZY1tfu3G3Secr6uGLCFVPMhIqHjlgCUtCCcgihYc/xKs9djMTMUOb2j1mVSeU8EU6NWc/iQKU6Gfg==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-bom": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", + "integrity": "sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/strip-final-newline": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz", + "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==", + "engines": { + "node": ">=6" + } + }, + "node_modules/stylus": { + "version": "0.54.8", + "resolved": "https://registry.npmjs.org/stylus/-/stylus-0.54.8.tgz", + "integrity": "sha512-vr54Or4BZ7pJafo2mpf0ZcwA74rpuYCZbxrHBsH8kbcXOwSfvBFwsRfpGO5OD5fhG5HDCFW737PKaawI7OqEAg==", + "dependencies": { + "css-parse": "~2.0.0", + "debug": "~3.1.0", + "glob": "^7.1.6", + "mkdirp": "~1.0.4", + "safer-buffer": "^2.1.2", + "sax": "~1.2.4", + "semver": "^6.3.0", + "source-map": "^0.7.3" + }, + "bin": { + "stylus": "bin/stylus" + }, + "engines": { + "node": "*" + } + }, + "node_modules/stylus-loader": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/stylus-loader/-/stylus-loader-7.0.0.tgz", + "integrity": "sha512-WTbtLrNfOfLgzTaR9Lj/BPhQroKk/LC1hfTXSUbrxmxgfUo3Y3LpmKRVA2R1XbjvTAvOfaian9vOyfv1z99E+A==", + "dependencies": { + "fast-glob": "^3.2.11", + "klona": "^2.0.5", + "normalize-path": "^3.0.0" + }, + "engines": { + "node": ">= 14.15.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "stylus": ">=0.52.4", + "webpack": "^5.0.0" + } + }, + "node_modules/stylus/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/stylus/node_modules/debug": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", + "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/stylus/node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "deprecated": "Glob versions prior to v9 are no longer supported", + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/stylus/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/stylus/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" + }, + "node_modules/stylus/node_modules/sax": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", + "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==" + }, + "node_modules/stylus/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/supports-preserve-symlinks-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/symbol-observable": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/symbol-observable/-/symbol-observable-4.0.0.tgz", + "integrity": "sha512-b19dMThMV4HVFynSAM1++gBHAbk2Tc/osgLIBZMKsyqh34jb2e8Os7T6ZW/Bt3pJFdBTd2JwAnAAEQV7rSNvcQ==", + "dev": true, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/tapable": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz", + "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==", + "engines": { + "node": ">=6" + } + }, + "node_modules/tar": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/tar/-/tar-6.2.1.tgz", + "integrity": "sha512-DZ4yORTwrbTj/7MZYq2w+/ZFdI6OZ/f9SFHR+71gIVUZhOQPHzVCLpvRnPgyaMpfWxxk/4ONva3GQSyNIKRv6A==", + "dependencies": { + "chownr": "^2.0.0", + "fs-minipass": "^2.0.0", + "minipass": "^5.0.0", + "minizlib": "^2.1.1", + "mkdirp": "^1.0.3", + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/tar/node_modules/minipass": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz", + "integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/tar/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + }, + "node_modules/terser": { + "version": "5.14.2", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.14.2.tgz", + "integrity": "sha512-oL0rGeM/WFQCUd0y2QrWxYnq7tfSuKBiqTjRPWrRgB46WD/kiwHwF8T23z78H6Q6kGCuuHcPB+KULHRdxvVGQA==", + "dependencies": { + "@jridgewell/source-map": "^0.3.2", + "acorn": "^8.5.0", + "commander": "^2.20.0", + "source-map-support": "~0.5.20" + }, + "bin": { + "terser": "bin/terser" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/terser-webpack-plugin": { + "version": "5.3.11", + "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.3.11.tgz", + "integrity": "sha512-RVCsMfuD0+cTt3EwX8hSl2Ks56EbFHWmhluwcqoPKtBnfjiT6olaq7PRIRfhyU8nnC2MrnDrBLfrD/RGE+cVXQ==", + "dependencies": { + "@jridgewell/trace-mapping": "^0.3.25", + "jest-worker": "^27.4.5", + "schema-utils": "^4.3.0", + "serialize-javascript": "^6.0.2", + "terser": "^5.31.1" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^5.1.0" + }, + "peerDependenciesMeta": { + "@swc/core": { + "optional": true + }, + "esbuild": { + "optional": true + }, + "uglify-js": { + "optional": true + } + } + }, + "node_modules/terser-webpack-plugin/node_modules/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==" + }, + "node_modules/terser-webpack-plugin/node_modules/schema-utils": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.3.0.tgz", + "integrity": "sha512-Gf9qqc58SpCA/xdziiHz35F4GNIWYWZrEshUc/G/r5BnLph6xpKuLeoJoQuj5WfBIx/eQLf+hmVPYHaxJu7V2g==", + "dependencies": { + "@types/json-schema": "^7.0.9", + "ajv": "^8.9.0", + "ajv-formats": "^2.1.1", + "ajv-keywords": "^5.1.0" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/terser-webpack-plugin/node_modules/terser": { + "version": "5.39.0", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.39.0.tgz", + "integrity": "sha512-LBAhFyLho16harJoWMg/nZsQYgTrg5jXOn2nCYjRUcZZEdE3qa2zb8QEDRUGVZBW4rlazf2fxkg8tztybTaqWw==", + "dependencies": { + "@jridgewell/source-map": "^0.3.3", + "acorn": "^8.8.2", + "commander": "^2.20.0", + "source-map-support": "~0.5.20" + }, + "bin": { + "terser": "bin/terser" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/terser/node_modules/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==" + }, + "node_modules/test-exclude": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz", + "integrity": "sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==", + "dependencies": { + "@istanbuljs/schema": "^0.1.2", + "glob": "^7.1.4", + "minimatch": "^3.0.4" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/test-exclude/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/test-exclude/node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "deprecated": "Glob versions prior to v9 are no longer supported", + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/test-exclude/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/text-table": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", + "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==" + }, + "node_modules/through": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", + "integrity": "sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==" + }, + "node_modules/thunky": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/thunky/-/thunky-1.1.0.tgz", + "integrity": "sha512-eHY7nBftgThBqOyHGVN+l8gF0BucP09fMo0oO/Lb0w1OF80dJv+lDVpXG60WMQvkcxAkNybKsrEIE3ZtKGmPrA==" + }, + "node_modules/tmp": { + "version": "0.0.33", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", + "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", + "dependencies": { + "os-tmpdir": "~1.0.2" + }, + "engines": { + "node": ">=0.6.0" + } + }, + "node_modules/to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dependencies": { + "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/toidentifier": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz", + "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==", + "engines": { + "node": ">=0.6" + } + }, + "node_modules/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==", + "devOptional": true, + "dependencies": { + "psl": "^1.1.28", + "punycode": "^2.1.1" + }, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/tough-cookie/node_modules/punycode": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz", + "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==", + "devOptional": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/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==", + "bin": { + "tree-kill": "cli.js" + } + }, + "node_modules/ts-node": { + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-8.3.0.tgz", + "integrity": "sha512-dyNS/RqyVTDcmNM4NIBAeDMpsAdaQ+ojdf0GOLqE6nwJOgzEkdRNzJywhDfwnuvB10oa6NLVG1rUJQCpRN7qoQ==", + "dev": true, + "dependencies": { + "arg": "^4.1.0", + "diff": "^4.0.1", + "make-error": "^1.1.1", + "source-map-support": "^0.5.6", + "yn": "^3.0.0" + }, + "bin": { + "ts-node": "dist/bin.js" + }, + "engines": { + "node": ">=4.2.0" + }, + "peerDependencies": { + "typescript": ">=2.0" + } + }, + "node_modules/tslib": { + "version": "2.8.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz", + "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==" + }, + "node_modules/tslint": { + "version": "6.1.3", + "resolved": "https://registry.npmjs.org/tslint/-/tslint-6.1.3.tgz", + "integrity": "sha512-IbR4nkT96EQOvKE2PW/djGz8iGNeJ4rF2mBfiYaR/nvUWYKJhLwimoJKgjIFEIDibBtOevj7BqCRL4oHeWWUCg==", + "deprecated": "TSLint has been deprecated in favor of ESLint. Please see https://github.com/palantir/tslint/issues/4534 for more information.", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.0.0", + "builtin-modules": "^1.1.1", + "chalk": "^2.3.0", + "commander": "^2.12.1", + "diff": "^4.0.1", + "glob": "^7.1.1", + "js-yaml": "^3.13.1", + "minimatch": "^3.0.4", + "mkdirp": "^0.5.3", + "resolve": "^1.3.2", + "semver": "^5.3.0", + "tslib": "^1.13.0", + "tsutils": "^2.29.0" + }, + "bin": { + "tslint": "bin/tslint" + }, + "engines": { + "node": ">=4.8.0" + }, + "peerDependencies": { + "typescript": ">=2.3.0-dev || >=2.4.0-dev || >=2.5.0-dev || >=2.6.0-dev || >=2.7.0-dev || >=2.8.0-dev || >=2.9.0-dev || >=3.0.0-dev || >= 3.1.0-dev || >= 3.2.0-dev || >= 4.0.0-dev" + } + }, + "node_modules/tslint/node_modules/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, + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/tslint/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/tslint/node_modules/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, + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/tslint/node_modules/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, + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/tslint/node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", + "dev": true + }, + "node_modules/tslint/node_modules/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==", + "dev": true + }, + "node_modules/tslint/node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "deprecated": "Glob versions prior to v9 are no longer supported", + "dev": true, + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/tslint/node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/tslint/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/tslint/node_modules/mkdirp": { + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", + "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", + "dev": true, + "dependencies": { + "minimist": "^1.2.6" + }, + "bin": { + "mkdirp": "bin/cmd.js" + } + }, + "node_modules/tslint/node_modules/semver": { + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", + "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", + "dev": true, + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/tslint/node_modules/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, + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/tslint/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "dev": true + }, + "node_modules/tsutils": { + "version": "2.29.0", + "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-2.29.0.tgz", + "integrity": "sha512-g5JVHCIJwzfISaXpXE1qvNalca5Jwob6FjI4AoPlqMusJ6ftFE7IkkFoMhVLRgK+4Kx3gkzb8UZK5t5yTTvEmA==", + "dev": true, + "dependencies": { + "tslib": "^1.8.1" + }, + "peerDependencies": { + "typescript": ">=2.1.0 || >=2.1.0-dev || >=2.2.0-dev || >=2.3.0-dev || >=2.4.0-dev || >=2.5.0-dev || >=2.6.0-dev || >=2.7.0-dev || >=2.8.0-dev || >=2.9.0-dev || >= 3.0.0-dev || >= 3.1.0-dev" + } + }, + "node_modules/tsutils/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "dev": true + }, + "node_modules/tunnel-agent": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", + "integrity": "sha512-McnNiV1l8RYeY8tBgEpuodCC1mLUdbSN+CYBL7kJsJNInOP8UjDDEwdk6Mw60vdLLrr5NHKZhMAOSrR2NZuQ+w==", + "devOptional": true, + "dependencies": { + "safe-buffer": "^5.0.1" + }, + "engines": { + "node": "*" + } + }, + "node_modules/tweetnacl": { + "version": "0.14.5", + "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", + "integrity": "sha512-KXXFFdAbFXY4geFIwoyNK+f5Z1b7swfXABfL7HXCmoIWMKU3dmS26672A4EeQtDzLKy7SXmfBu51JolvEKwtGA==", + "devOptional": true + }, + "node_modules/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==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/type-is": { + "version": "1.6.18", + "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz", + "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==", + "dependencies": { + "media-typer": "0.3.0", + "mime-types": "~2.1.24" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/typed-array-buffer": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/typed-array-buffer/-/typed-array-buffer-1.0.3.tgz", + "integrity": "sha512-nAYYwfY3qnzX30IkA6AQZjVbtK6duGontcQm1WSG1MD94YLqK0515GNApXkoxKOWMusVssAHWLh9SeaoefYFGw==", + "dev": true, + "dependencies": { + "call-bound": "^1.0.3", + "es-errors": "^1.3.0", + "is-typed-array": "^1.1.14" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/typed-array-byte-length": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/typed-array-byte-length/-/typed-array-byte-length-1.0.3.tgz", + "integrity": "sha512-BaXgOuIxz8n8pIq3e7Atg/7s+DpiYrxn4vdot3w9KbnBhcRQq6o3xemQdIfynqSeXeDrF32x+WvfzmOjPiY9lg==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.8", + "for-each": "^0.3.3", + "gopd": "^1.2.0", + "has-proto": "^1.2.0", + "is-typed-array": "^1.1.14" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/typed-array-byte-offset": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/typed-array-byte-offset/-/typed-array-byte-offset-1.0.4.tgz", + "integrity": "sha512-bTlAFB/FBYMcuX81gbL4OcpH5PmlFHqlCCpAl8AlEzMz5k53oNDvN8p1PNOWLEmI2x4orp3raOFB51tv9X+MFQ==", + "dev": true, + "dependencies": { + "available-typed-arrays": "^1.0.7", + "call-bind": "^1.0.8", + "for-each": "^0.3.3", + "gopd": "^1.2.0", + "has-proto": "^1.2.0", + "is-typed-array": "^1.1.15", + "reflect.getprototypeof": "^1.0.9" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/typed-array-length": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/typed-array-length/-/typed-array-length-1.0.7.tgz", + "integrity": "sha512-3KS2b+kL7fsuk/eJZ7EQdnEmQoaho/r6KUef7hxvltNA5DR8NAUM+8wJMbJyZ4G9/7i3v5zPBIMN5aybAh2/Jg==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.7", + "for-each": "^0.3.3", + "gopd": "^1.0.1", + "is-typed-array": "^1.1.13", + "possible-typed-array-names": "^1.0.0", + "reflect.getprototypeof": "^1.0.6" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/typed-assert": { + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/typed-assert/-/typed-assert-1.0.9.tgz", + "integrity": "sha512-KNNZtayBCtmnNmbo5mG47p1XsCyrx6iVqomjcZnec/1Y5GGARaxPs6r49RnSPeUP3YjNYiU9sQHAtY4BBvnZwg==" + }, + "node_modules/typescript": { + "version": "4.6.4", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.6.4.tgz", + "integrity": "sha512-9ia/jWHIEbo49HfjrLGfKbZSuWo9iTMwXO+Ca3pRsSpbsMbc7/IU8NKdCZVRRBafVPGnoJeFL76ZOAA84I9fEg==", + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=4.2.0" + } + }, + "node_modules/ua-parser-js": { + "version": "0.7.40", + "resolved": "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-0.7.40.tgz", + "integrity": "sha512-us1E3K+3jJppDBa3Tl0L3MOJiGhe1C6P0+nIvQAFYbxlMAx0h81eOwLmU57xgqToduDDPx3y5QsdjPfDu+FgOQ==", + "devOptional": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/ua-parser-js" + }, + { + "type": "paypal", + "url": "https://paypal.me/faisalman" + }, + { + "type": "github", + "url": "https://github.com/sponsors/faisalman" + } + ], + "bin": { + "ua-parser-js": "script/cli.js" + }, + "engines": { + "node": "*" + } + }, + "node_modules/unbox-primitive": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.1.0.tgz", + "integrity": "sha512-nWJ91DjeOkej/TA8pXQ3myruKpKEYgqvpw9lz4OPHj/NWFNluYrjbz9j01CJ8yKQd2g4jFoOkINCTW2I5LEEyw==", + "dev": true, + "dependencies": { + "call-bound": "^1.0.3", + "has-bigints": "^1.0.2", + "has-symbols": "^1.1.0", + "which-boxed-primitive": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/unicode-canonical-property-names-ecmascript": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.1.tgz", + "integrity": "sha512-dA8WbNeb2a6oQzAQ55YlT5vQAWGV9WXOsi3SskE3bcCdM0P4SDd+24zS/OCacdRq5BkdsRj9q3Pg6YyQoxIGqg==", + "engines": { + "node": ">=4" + } + }, + "node_modules/unicode-match-property-ecmascript": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-2.0.0.tgz", + "integrity": "sha512-5kaZCrbp5mmbz5ulBkDkbY0SsPOjKqVS35VpL9ulMPfSl0J0Xsm+9Evphv9CoIZFwre7aJoa94AY6seMKGVN5Q==", + "dependencies": { + "unicode-canonical-property-names-ecmascript": "^2.0.0", + "unicode-property-aliases-ecmascript": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/unicode-match-property-value-ecmascript": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.2.0.tgz", + "integrity": "sha512-4IehN3V/+kkr5YeSSDDQG8QLqO26XpL2XP3GQtqwlT/QYSECAwFztxVHjlbh0+gjJ3XmNLS0zDsbgs9jWKExLg==", + "engines": { + "node": ">=4" + } + }, + "node_modules/unicode-property-aliases-ecmascript": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-2.1.0.tgz", + "integrity": "sha512-6t3foTQI9qne+OZoVQB/8x8rk2k1eVy1gRXhV3oFQ5T6R1dqQ1xtin3XqSlx3+ATBkliTaR/hHyJBm+LVPNM8w==", + "engines": { + "node": ">=4" + } + }, + "node_modules/unique-filename": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-1.1.1.tgz", + "integrity": "sha512-Vmp0jIp2ln35UTXuryvjzkjGdRyf9b2lTXuSYUiPmzRcl3FDtYqAwOnTJkAngD9SWhnoJzDbTKwaOrZ+STtxNQ==", + "dependencies": { + "unique-slug": "^2.0.0" + } + }, + "node_modules/unique-slug": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-2.0.2.tgz", + "integrity": "sha512-zoWr9ObaxALD3DOPfjPSqxt4fnZiWblxHIgeWqW8x7UqDzEtHEQLzji2cuJYQFCU6KmoJikOYAZlrTHHebjx2w==", + "dependencies": { + "imurmurhash": "^0.1.4" + } + }, + "node_modules/universalify": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", + "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", + "devOptional": true, + "engines": { + "node": ">= 4.0.0" + } + }, + "node_modules/unpipe": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", + "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/update-browserslist-db": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.1.3.tgz", + "integrity": "sha512-UxhIZQ+QInVdunkDAaiazvvT/+fXL5Osr0JZlJulepYu6Jd7qJtDZjlur0emRlT71EN3ScPoE7gvsuIKKNavKw==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "dependencies": { + "escalade": "^3.2.0", + "picocolors": "^1.1.1" + }, + "bin": { + "update-browserslist-db": "cli.js" + }, + "peerDependencies": { + "browserslist": ">= 4.21.0" + } + }, + "node_modules/uri-js": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", + "dependencies": { + "punycode": "^2.1.0" + } + }, + "node_modules/uri-js/node_modules/punycode": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz", + "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==", + "engines": { + "node": ">=6" + } + }, + "node_modules/urix": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/urix/-/urix-0.1.0.tgz", + "integrity": "sha512-Am1ousAhSLBeB9cG/7k7r2R0zj50uDRlZHPGbazid5s9rlF1F/QKYObEKSIunSjIOkJZqwRRLpvewjEkM7pSqg==", + "deprecated": "Please see https://github.com/lydell/urix#deprecated" + }, + "node_modules/util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==" + }, + "node_modules/utils-merge": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", + "integrity": "sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==", + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/uuid": { + "version": "8.3.2", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", + "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==", + "bin": { + "uuid": "dist/bin/uuid" + } + }, + "node_modules/validate-npm-package-license": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", + "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", + "dev": true, + "dependencies": { + "spdx-correct": "^3.0.0", + "spdx-expression-parse": "^3.0.0" + } + }, + "node_modules/validate-npm-package-name": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-4.0.0.tgz", + "integrity": "sha512-mzR0L8ZDktZjpX4OB46KT+56MAhl4EIazWP/+G/HPGuvfdaqg4YsCdtOm6U9+LOFyYDoh4dpnpxZRB9MQQns5Q==", + "dev": true, + "dependencies": { + "builtins": "^5.0.0" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/vary": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", + "integrity": "sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/verror": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", + "integrity": "sha512-ZZKSmDAEFOijERBLkmYfJ+vmk3w+7hOLYDNkRCuRuMJGEmqYNCNLyBBFwWKVMhfwaEF3WOd0Zlw86U/WC/+nYw==", + "devOptional": true, + "engines": [ + "node >=0.6.0" + ], + "dependencies": { + "assert-plus": "^1.0.0", + "core-util-is": "1.0.2", + "extsprintf": "^1.2.0" + } + }, + "node_modules/void-elements": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/void-elements/-/void-elements-2.0.1.tgz", + "integrity": "sha512-qZKX4RnBzH2ugr8Lxa7x+0V6XD9Sb/ouARtiasEQCHB1EVU4NXtmHsDDrx1dO4ne5fc3J6EW05BP1Dl0z0iung==", + "devOptional": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/watchpack": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.2.tgz", + "integrity": "sha512-TnbFSbcOCcDgjZ4piURLCbJ3nJhznVh9kw6F6iokjiFPl8ONxe9A6nMDVXDiNbrSfLILs6vB07F7wLBrwPYzJw==", + "dependencies": { + "glob-to-regexp": "^0.4.1", + "graceful-fs": "^4.1.2" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/wbuf": { + "version": "1.7.3", + "resolved": "https://registry.npmjs.org/wbuf/-/wbuf-1.7.3.tgz", + "integrity": "sha512-O84QOnr0icsbFGLS0O3bI5FswxzRr8/gHwWkDlQFskhSPryQXvrTMxjxGP4+iWYoauLoBvfDpkrOauZ+0iZpDA==", + "dependencies": { + "minimalistic-assert": "^1.0.0" + } + }, + "node_modules/wcwidth": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/wcwidth/-/wcwidth-1.0.1.tgz", + "integrity": "sha512-XHPEwS0q6TaxcvG85+8EYkbiCux2XtWG2mkc47Ng2A77BQu9+DqIOJldST4HgPkuea7dvKSj5VgX3P1d4rW8Tg==", + "dependencies": { + "defaults": "^1.0.3" + } + }, + "node_modules/webdriver-js-extender": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/webdriver-js-extender/-/webdriver-js-extender-2.1.0.tgz", + "integrity": "sha512-lcUKrjbBfCK6MNsh7xaY2UAUmZwe+/ib03AjVOpFobX4O7+83BUveSrLfU0Qsyb1DaKJdQRbuU+kM9aZ6QUhiQ==", + "devOptional": true, + "dependencies": { + "@types/selenium-webdriver": "^3.0.0", + "selenium-webdriver": "^3.0.1" + }, + "engines": { + "node": ">=6.9.x" + } + }, + "node_modules/webdriver-manager": { + "version": "12.1.9", + "resolved": "https://registry.npmjs.org/webdriver-manager/-/webdriver-manager-12.1.9.tgz", + "integrity": "sha512-Yl113uKm8z4m/KMUVWHq1Sjtla2uxEBtx2Ue3AmIlnlPAKloDn/Lvmy6pqWCUersVISpdMeVpAaGbNnvMuT2LQ==", + "devOptional": true, + "dependencies": { + "adm-zip": "^0.5.2", + "chalk": "^1.1.1", + "del": "^2.2.0", + "glob": "^7.0.3", + "ini": "^1.3.4", + "minimist": "^1.2.0", + "q": "^1.4.1", + "request": "^2.87.0", + "rimraf": "^2.5.2", + "semver": "^5.3.0", + "xml2js": "^0.4.17" + }, + "bin": { + "webdriver-manager": "bin/webdriver-manager" + }, + "engines": { + "node": ">=6.9.x" + } + }, + "node_modules/webdriver-manager/node_modules/ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==", + "devOptional": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/webdriver-manager/node_modules/ansi-styles": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha512-kmCevFghRiWM7HB5zTPULl4r9bVFSWjz62MhqizDGUrq2NWuNMQyuv4tHHoKJHs69M/MF64lEcHdYIocrdWQYA==", + "devOptional": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/webdriver-manager/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "devOptional": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/webdriver-manager/node_modules/chalk": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha512-U3lRVLMSlsCfjqYPbLyVv11M9CPW4I728d6TCKMAOJueEeB9/8o+eSsMnxPJD+Q+K909sdESg7C+tIkoH6on1A==", + "devOptional": true, + "dependencies": { + "ansi-styles": "^2.2.1", + "escape-string-regexp": "^1.0.2", + "has-ansi": "^2.0.0", + "strip-ansi": "^3.0.0", + "supports-color": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/webdriver-manager/node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "deprecated": "Glob versions prior to v9 are no longer supported", + "devOptional": true, + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/webdriver-manager/node_modules/ini": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", + "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==", + "devOptional": true + }, + "node_modules/webdriver-manager/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "devOptional": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/webdriver-manager/node_modules/rimraf": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", + "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", + "deprecated": "Rimraf versions prior to v4 are no longer supported", + "devOptional": true, + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + } + }, + "node_modules/webdriver-manager/node_modules/semver": { + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", + "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", + "devOptional": true, + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/webdriver-manager/node_modules/strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg==", + "devOptional": true, + "dependencies": { + "ansi-regex": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/webdriver-manager/node_modules/supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha512-KKNVtd6pCYgPIKU4cp2733HWYCpplQhddZLBUryaAHou723x+FRzQ5Df824Fj+IyyuiQTRoub4SnIFfIcrp70g==", + "devOptional": true, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/webpack": { + "version": "5.76.1", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.76.1.tgz", + "integrity": "sha512-4+YIK4Abzv8172/SGqObnUjaIHjLEuUasz9EwQj/9xmPPkYJy2Mh03Q/lJfSD3YLzbxy5FeTq5Uw0323Oh6SJQ==", + "dependencies": { + "@types/eslint-scope": "^3.7.3", + "@types/estree": "^0.0.51", + "@webassemblyjs/ast": "1.11.1", + "@webassemblyjs/wasm-edit": "1.11.1", + "@webassemblyjs/wasm-parser": "1.11.1", + "acorn": "^8.7.1", + "acorn-import-assertions": "^1.7.6", + "browserslist": "^4.14.5", + "chrome-trace-event": "^1.0.2", + "enhanced-resolve": "^5.10.0", + "es-module-lexer": "^0.9.0", + "eslint-scope": "5.1.1", + "events": "^3.2.0", + "glob-to-regexp": "^0.4.1", + "graceful-fs": "^4.2.9", + "json-parse-even-better-errors": "^2.3.1", + "loader-runner": "^4.2.0", + "mime-types": "^2.1.27", + "neo-async": "^2.6.2", + "schema-utils": "^3.1.0", + "tapable": "^2.1.1", + "terser-webpack-plugin": "^5.1.3", + "watchpack": "^2.4.0", + "webpack-sources": "^3.2.3" + }, + "bin": { + "webpack": "bin/webpack.js" + }, + "engines": { + "node": ">=10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependenciesMeta": { + "webpack-cli": { + "optional": true + } + } + }, + "node_modules/webpack-dev-middleware": { + "version": "5.3.3", + "resolved": "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-5.3.3.tgz", + "integrity": "sha512-hj5CYrY0bZLB+eTO+x/j67Pkrquiy7kWepMHmUMoPsmcUaeEnQJqFzHJOyxgWlq746/wUuA64p9ta34Kyb01pA==", + "dependencies": { + "colorette": "^2.0.10", + "memfs": "^3.4.3", + "mime-types": "^2.1.31", + "range-parser": "^1.2.1", + "schema-utils": "^4.0.0" + }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^4.0.0 || ^5.0.0" + } + }, + "node_modules/webpack-dev-middleware/node_modules/schema-utils": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.3.0.tgz", + "integrity": "sha512-Gf9qqc58SpCA/xdziiHz35F4GNIWYWZrEshUc/G/r5BnLph6xpKuLeoJoQuj5WfBIx/eQLf+hmVPYHaxJu7V2g==", + "dependencies": { + "@types/json-schema": "^7.0.9", + "ajv": "^8.9.0", + "ajv-formats": "^2.1.1", + "ajv-keywords": "^5.1.0" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/webpack-dev-server": { + "version": "4.11.0", + "resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-4.11.0.tgz", + "integrity": "sha512-L5S4Q2zT57SK7tazgzjMiSMBdsw+rGYIX27MgPgx7LDhWO0lViPrHKoLS7jo5In06PWYAhlYu3PbyoC6yAThbw==", + "dependencies": { + "@types/bonjour": "^3.5.9", + "@types/connect-history-api-fallback": "^1.3.5", + "@types/express": "^4.17.13", + "@types/serve-index": "^1.9.1", + "@types/serve-static": "^1.13.10", + "@types/sockjs": "^0.3.33", + "@types/ws": "^8.5.1", + "ansi-html-community": "^0.0.8", + "bonjour-service": "^1.0.11", + "chokidar": "^3.5.3", + "colorette": "^2.0.10", + "compression": "^1.7.4", + "connect-history-api-fallback": "^2.0.0", + "default-gateway": "^6.0.3", + "express": "^4.17.3", + "graceful-fs": "^4.2.6", + "html-entities": "^2.3.2", + "http-proxy-middleware": "^2.0.3", + "ipaddr.js": "^2.0.1", + "open": "^8.0.9", + "p-retry": "^4.5.0", + "rimraf": "^3.0.2", + "schema-utils": "^4.0.0", + "selfsigned": "^2.0.1", + "serve-index": "^1.9.1", + "sockjs": "^0.3.24", + "spdy": "^4.0.2", + "webpack-dev-middleware": "^5.3.1", + "ws": "^8.4.2" + }, + "bin": { + "webpack-dev-server": "bin/webpack-dev-server.js" + }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^4.37.0 || ^5.0.0" + }, + "peerDependenciesMeta": { + "webpack-cli": { + "optional": true + } + } + }, + "node_modules/webpack-dev-server/node_modules/schema-utils": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.3.0.tgz", + "integrity": "sha512-Gf9qqc58SpCA/xdziiHz35F4GNIWYWZrEshUc/G/r5BnLph6xpKuLeoJoQuj5WfBIx/eQLf+hmVPYHaxJu7V2g==", + "dependencies": { + "@types/json-schema": "^7.0.9", + "ajv": "^8.9.0", + "ajv-formats": "^2.1.1", + "ajv-keywords": "^5.1.0" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/webpack-merge": { + "version": "5.8.0", + "resolved": "https://registry.npmjs.org/webpack-merge/-/webpack-merge-5.8.0.tgz", + "integrity": "sha512-/SaI7xY0831XwP6kzuwhKWVKDP9t1QY1h65lAFLbZqMPIuYcD9QAW4u9STIbU9kaJbPBB/geU/gLr1wDjOhQ+Q==", + "dependencies": { + "clone-deep": "^4.0.1", + "wildcard": "^2.0.0" + }, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/webpack-sources": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-3.2.3.tgz", + "integrity": "sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w==", + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/webpack-subresource-integrity": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/webpack-subresource-integrity/-/webpack-subresource-integrity-5.1.0.tgz", + "integrity": "sha512-sacXoX+xd8r4WKsy9MvH/q/vBtEHr86cpImXwyg74pFIpERKt6FmB8cXpeuh0ZLgclOlHI4Wcll7+R5L02xk9Q==", + "dependencies": { + "typed-assert": "^1.0.8" + }, + "engines": { + "node": ">= 12" + }, + "peerDependencies": { + "html-webpack-plugin": ">= 5.0.0-beta.1 < 6", + "webpack": "^5.12.0" + }, + "peerDependenciesMeta": { + "html-webpack-plugin": { + "optional": true + } + } + }, + "node_modules/webpack/node_modules/@types/estree": { + "version": "0.0.51", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.51.tgz", + "integrity": "sha512-CuPgU6f3eT/XgKKPqKd/gLZV1Xmvf1a2R5POBOGQa6uv82xpls89HU5zKeVoyR8XzHd1RGNOlQlvUe3CFkjWNQ==" + }, + "node_modules/webpack/node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "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" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/webpack/node_modules/ajv-keywords": { + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", + "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", + "peerDependencies": { + "ajv": "^6.9.1" + } + }, + "node_modules/webpack/node_modules/json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==" + }, + "node_modules/webpack/node_modules/schema-utils": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.3.0.tgz", + "integrity": "sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==", + "dependencies": { + "@types/json-schema": "^7.0.8", + "ajv": "^6.12.5", + "ajv-keywords": "^3.5.2" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/websocket-driver": { + "version": "0.7.4", + "resolved": "https://registry.npmjs.org/websocket-driver/-/websocket-driver-0.7.4.tgz", + "integrity": "sha512-b17KeDIQVjvb0ssuSDF2cYXSg2iztliJ4B9WdsuB6J952qCPKmnVq4DyW5motImXHDC1cBT/1UezrJVsKw5zjg==", + "dependencies": { + "http-parser-js": ">=0.5.1", + "safe-buffer": ">=5.1.0", + "websocket-extensions": ">=0.1.1" + }, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/websocket-extensions": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/websocket-extensions/-/websocket-extensions-0.1.4.tgz", + "integrity": "sha512-OqedPIGOfsDlo31UNwYbCFMSaO9m9G/0faIHj5/dZFDMFqPTcx6UwqyOy3COEaEOg/9VsGIpdqn62W5KhoKSpg==", + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/which": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "dev": true, + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "which": "bin/which" + } + }, + "node_modules/which-boxed-primitive": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.1.1.tgz", + "integrity": "sha512-TbX3mj8n0odCBFVlY8AxkqcHASw3L60jIuF8jFP78az3C2YhmGvqbHBpAjTRH2/xqYunrJ9g1jSyjCjpoWzIAA==", + "dev": true, + "dependencies": { + "is-bigint": "^1.1.0", + "is-boolean-object": "^1.2.1", + "is-number-object": "^1.1.1", + "is-string": "^1.1.1", + "is-symbol": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/which-builtin-type": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/which-builtin-type/-/which-builtin-type-1.2.1.tgz", + "integrity": "sha512-6iBczoX+kDQ7a3+YJBnh3T+KZRxM/iYNPXicqk66/Qfm1b93iu+yOImkg0zHbj5LNOcNv1TEADiZ0xa34B4q6Q==", + "dev": true, + "dependencies": { + "call-bound": "^1.0.2", + "function.prototype.name": "^1.1.6", + "has-tostringtag": "^1.0.2", + "is-async-function": "^2.0.0", + "is-date-object": "^1.1.0", + "is-finalizationregistry": "^1.1.0", + "is-generator-function": "^1.0.10", + "is-regex": "^1.2.1", + "is-weakref": "^1.0.2", + "isarray": "^2.0.5", + "which-boxed-primitive": "^1.1.0", + "which-collection": "^1.0.2", + "which-typed-array": "^1.1.16" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/which-collection": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/which-collection/-/which-collection-1.0.2.tgz", + "integrity": "sha512-K4jVyjnBdgvc86Y6BkaLZEN933SwYOuBFkdmBu9ZfkcAbdVbpITnDmjvZ/aQjRXQrv5EPkTnD1s39GiiqbngCw==", + "dev": true, + "dependencies": { + "is-map": "^2.0.3", + "is-set": "^2.0.3", + "is-weakmap": "^2.0.2", + "is-weakset": "^2.0.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/which-module": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.1.tgz", + "integrity": "sha512-iBdZ57RDvnOR9AGBhML2vFZf7h8vmBjhoaZqODJBFWHVtKkDmKuHai3cx5PgVMrX5YDNp27AofYbAwctSS+vhQ==", + "devOptional": true + }, + "node_modules/which-typed-array": { + "version": "1.1.18", + "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.18.tgz", + "integrity": "sha512-qEcY+KJYlWyLH9vNbsr6/5j59AXk5ni5aakf8ldzBvGde6Iz4sxZGkJyWSAueTG7QhOvNRYb1lDdFmL5Td0QKA==", + "dev": true, + "dependencies": { + "available-typed-arrays": "^1.0.7", + "call-bind": "^1.0.8", + "call-bound": "^1.0.3", + "for-each": "^0.3.3", + "gopd": "^1.2.0", + "has-tostringtag": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/wide-align": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.5.tgz", + "integrity": "sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==", + "dev": true, + "dependencies": { + "string-width": "^1.0.2 || 2 || 3 || 4" + } + }, + "node_modules/wildcard": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/wildcard/-/wildcard-2.0.1.tgz", + "integrity": "sha512-CC1bOL87PIWSBhDcTrdeLo6eGT7mCFtrg0uIJtqJUFyK+eJnzl8A1niH56uu7KMa5XFrtiV+AQuHO3n7DsHnLQ==" + }, + "node_modules/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==", + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==" + }, + "node_modules/ws": { + "version": "8.17.1", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.17.1.tgz", + "integrity": "sha512-6XQFvXTkbfUOZOKKILFG1PDK2NDQs4azKQl26T0YS5CxqWLgXajbPZ+h4gZekJyRqFU8pvnbAbbs/3TgRPy+GQ==", + "engines": { + "node": ">=10.0.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": ">=5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } + } + }, + "node_modules/xml2js": { + "version": "0.4.23", + "resolved": "https://registry.npmjs.org/xml2js/-/xml2js-0.4.23.tgz", + "integrity": "sha512-ySPiMjM0+pLDftHgXY4By0uswI3SPKLDw/i3UXbnO8M/p28zqexCUoPmQFrYD+/1BzhGJSs2i1ERWKJAtiLrug==", + "devOptional": true, + "dependencies": { + "sax": ">=0.6.0", + "xmlbuilder": "~11.0.0" + }, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/xmlbuilder": { + "version": "11.0.1", + "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-11.0.1.tgz", + "integrity": "sha512-fDlsI/kFEx7gLvbecc0/ohLG50fugQp8ryHzMTuW9vSa1GJ0XYWKnhsUx7oie3G98+r56aTQIUB4kht42R3JvA==", + "devOptional": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/xxhashjs": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/xxhashjs/-/xxhashjs-0.2.2.tgz", + "integrity": "sha512-AkTuIuVTET12tpsVIQo+ZU6f/qDmKuRUcjaqR+OIvm+aCBsZ95i7UVY5WJ9TMsSaZ0DA2WxoZ4acu0sPH+OKAw==", + "dependencies": { + "cuint": "^0.2.2" + } + }, + "node_modules/y18n": { + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", + "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", + "engines": { + "node": ">=10" + } + }, + "node_modules/yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==" + }, + "node_modules/yaml": { + "version": "1.10.2", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz", + "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==", + "engines": { + "node": ">= 6" + } + }, + "node_modules/yargs": { + "version": "17.5.1", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.5.1.tgz", + "integrity": "sha512-t6YAJcxDkNX7NFYiVtKvWUz8l+PaKTLiL63mJYWR2GnHq2gjEWISzsLp9wg3aY36dY1j+gfIEL3pIF+XlJJfbA==", + "dependencies": { + "cliui": "^7.0.2", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.3", + "y18n": "^5.0.5", + "yargs-parser": "^21.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/yargs-parser": { + "version": "21.1.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", + "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", + "engines": { + "node": ">=12" + } + }, + "node_modules/yn": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yn/-/yn-3.1.1.tgz", + "integrity": "sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/zone.js": { + "version": "0.11.8", + "resolved": "https://registry.npmjs.org/zone.js/-/zone.js-0.11.8.tgz", + "integrity": "sha512-82bctBg2hKcEJ21humWIkXRlLBBmrc3nN7DFh5LGGhcyycO2S7FN8NmdvlcKaGFDNVL4/9kFLmwmInTavdJERA==", + "dependencies": { + "tslib": "^2.3.0" + } + } + } +} diff --git a/plugins/sftp/web/package.json b/plugins/sftp/web/package.json new file mode 100644 index 000000000..a879e88c1 --- /dev/null +++ b/plugins/sftp/web/package.json @@ -0,0 +1,56 @@ +{ + "name": "@ngageoint/mage.sftp.workspace", + "version": "1.0.0-beta.1", + "scripts": { + "ng": "ng", + "start": "ng serve", + "build": "npm-run-all build:main", + "build:main": "ng build --project=main", + "test": "ng test --project=main", + "test-headless": "ng test --watch=false --browsers=ChromeHeadless --project=main", + "lint": "ng lint", + "e2e": "ng e2e", + "clean": "rm -rf dist" + }, + "private": true, + "dependencies": { + "@angular/animations": "^14.3.0", + "@angular/cdk": "^14.2.7", + "@angular/common": "^14.3.0", + "@angular/compiler": "^14.3.0", + "@angular/core": "^14.3.0", + "@angular/forms": "^14.3.0", + "@angular/material": "^14.2.7", + "@angular/platform-browser": "^14.3.0", + "@angular/platform-browser-dynamic": "^14.3.0", + "@angular/router": "^14.3.0", + "@ngageoint/mage.web-core-lib": ">=6.3.0-beta.8", + "rxjs": "~7.6.0", + "tslib": "^2.0.0", + "zone.js": "~0.11.4" + }, + "devDependencies": { + "@angular-devkit/build-angular": "^14.2.13", + "@angular/cli": "^14.2.13", + "@angular/compiler-cli": "^14.3.0", + "@types/geojson": "^7946.0.7", + "@types/jasmine": "~3.5.0", + "@types/jasminewd2": "~2.0.3", + "@types/node": "^12.11.1", + "jasmine-core": "^4.6.1", + "jasmine-spec-reporter": "^7.0.0", + "karma": "~6.4.3", + "karma-chrome-launcher": "~3.1.0", + "karma-coverage": "^2.2.1", + "karma-coverage-istanbul-reporter": "~3.0.2", + "karma-jasmine": "~5.1.0", + "karma-jasmine-html-reporter": "^2.1.0", + "ng-packagr": "^14.2.0", + "npm-run-all": "^4.1.5", + "protractor": "~7.0.0", + "stylus": "^0.54.8", + "ts-node": "~8.3.0", + "tslint": "~6.1.0", + "typescript": "~4.6.4" + } +} diff --git a/plugins/sftp/web/projects/main/assets/drive_file_move_black_24dp.svg b/plugins/sftp/web/projects/main/assets/drive_file_move_black_24dp.svg new file mode 100644 index 000000000..adbbc6175 --- /dev/null +++ b/plugins/sftp/web/projects/main/assets/drive_file_move_black_24dp.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/plugins/sftp/web/projects/main/karma.conf.js b/plugins/sftp/web/projects/main/karma.conf.js new file mode 100644 index 000000000..37e934913 --- /dev/null +++ b/plugins/sftp/web/projects/main/karma.conf.js @@ -0,0 +1,35 @@ +// Karma configuration file, see link for more information +// https://karma-runner.github.io/1.0/config/configuration-file.html + +module.exports = function (config) { + config.set({ + basePath: '', + frameworks: ['jasmine', '@angular-devkit/build-angular'], + plugins: [ + require('karma-jasmine'), + require('karma-chrome-launcher'), + require('karma-jasmine-html-reporter'), + require('karma-coverage-istanbul-reporter'), + require('@angular-devkit/build-angular/plugins/karma') + ], + files: [ + { pattern: 'src/**/*.spec.ts', watched: false } + ], + client: { + clearContext: false // leave Jasmine Spec Runner output visible in browser + }, + coverageIstanbulReporter: { + dir: require('path').join(__dirname, '../../coverage/admin'), + reports: ['html', 'lcovonly', 'text-summary'], + fixWebpackSourcePaths: true + }, + reporters: ['progress', 'kjhtml'], + port: 9876, + colors: true, + logLevel: config.LOG_INFO, + autoWatch: true, + browsers: ['Chrome'], + singleRun: false, + restartOnFileChange: true + }); +}; diff --git a/plugins/sftp/web/projects/main/ng-package.json b/plugins/sftp/web/projects/main/ng-package.json new file mode 100644 index 000000000..cc9fba100 --- /dev/null +++ b/plugins/sftp/web/projects/main/ng-package.json @@ -0,0 +1,14 @@ +{ + "$schema": "../../node_modules/ng-packagr/ng-package.schema.json", + "dest": "../../dist/main", + "lib": { + "entryFile": "src/public-api.ts", + "styleIncludePaths": [ + "src/scss" + ] + }, + "assets": [ + "assets", + "src/scss" + ] +} \ No newline at end of file diff --git a/plugins/sftp/web/projects/main/package.json b/plugins/sftp/web/projects/main/package.json new file mode 100644 index 000000000..bb6424b3d --- /dev/null +++ b/plugins/sftp/web/projects/main/package.json @@ -0,0 +1,10 @@ +{ + "name": "@ngageoint/mage.sftp.web", + "version": "1.0.0-beta.1", + "peerDependencies": { + "@ngageoint/mage.web-app": "^6.2.9 || ^6.3.0-beta" + }, + "dependencies": { + "tslib": "^1.10.0" + } +} \ No newline at end of file diff --git a/plugins/sftp/web/projects/main/src/index.ts b/plugins/sftp/web/projects/main/src/index.ts new file mode 100644 index 000000000..fc5b47f1a --- /dev/null +++ b/plugins/sftp/web/projects/main/src/index.ts @@ -0,0 +1,5 @@ +module.exports = { + webAppHooks: { + 'nerd-web': 'bundles/nerd.web.umd.js' + } +} \ No newline at end of file diff --git a/plugins/sftp/web/projects/main/src/lib/SFTPPluginConfig.ts b/plugins/sftp/web/projects/main/src/lib/SFTPPluginConfig.ts new file mode 100644 index 000000000..0b843bc8f --- /dev/null +++ b/plugins/sftp/web/projects/main/src/lib/SFTPPluginConfig.ts @@ -0,0 +1,54 @@ +import { ArchiveFormat } from "./entities/entities.format" + +/** + * Contains various configuration values used by the plugin. + */ +export interface SFTPPluginConfig { + + /** + * When true, the plugin will process new observations and send them to a configured SFTP endpoint. + */ + enabled: boolean + + /** + * Query the database for new observations to process at the given time interval in seconds. + */ + interval: number + + /** + * Observation query page size + */ + pageSize: number + + /** + * Events in which to SFTP observations + */ + events: Array + + /** + * Specifies how to format the SFTP archive file + */ + archiveFormat: ArchiveFormat + + /** + * SFTP client configuartion + */ + sftpConfiguration: { + host: string, + username: string, + password: string + } +} + +export const defaultSFTPPluginConfig = Object.freeze({ + enabled: true, + interval: 60, + pageSize: 100, + events: [], + archiveFormat: ArchiveFormat.GeoJSON, + sftpConfiguration: { + host: '', + username: '', + password: '' + } +}) diff --git a/plugins/sftp/web/projects/main/src/lib/configuration/configuration.component.html b/plugins/sftp/web/projects/main/src/lib/configuration/configuration.component.html new file mode 100644 index 000000000..84b47e6c5 --- /dev/null +++ b/plugins/sftp/web/projects/main/src/lib/configuration/configuration.component.html @@ -0,0 +1,120 @@ +
+
+
+
+
SFTP Plugin Configuration
+
+ +
+
+ + Enabled + +
+
+ + Observation SFTP Format + + + {{format}} + + + Format for Observation metadata within SFTP archive. + +
+ +
+ Observation SFTP Rule + + + {{rule.title}} + + + Rule indicating when to SFTP observation +
+ +
+ + Observation Create Timeout + + Time in minutes to wait for attachments before observation SFTP. + +
+ +
+ Observation SFTP Success Action + + + {{action}} + + + Action to perform on observation after successful SFTP +
+ +
+ + Poll Interval + + Interval plugin will poll when looking for observation changes. + +
+ +
+ + Page Size + + Page size used when querying observations, smaller page size will reduce memory footprint on server. + + +
+
+
+
+ +
+
+
+
SFTP Client Options
+
+ +
+
+ + SFTP Host + + Hostname or IP of server. + +
+ +
+ + SFTP Path + + Path to remote file. + +
+ +
+ + SFTP Username + + Username for authentication. + +
+ +
+ + SFTP Password + + Password for password based authentication. + +
+
+
+
+ + +
diff --git a/plugins/sftp/web/projects/main/src/lib/configuration/configuration.component.scss b/plugins/sftp/web/projects/main/src/lib/configuration/configuration.component.scss new file mode 100644 index 000000000..a7462a0e2 --- /dev/null +++ b/plugins/sftp/web/projects/main/src/lib/configuration/configuration.component.scss @@ -0,0 +1,71 @@ +.plugin { + padding: 16px; + background-color: #F5F5F5; +} + +.card { + padding: 16px; + margin-bottom: 16px; + background-color: white; + border-radius: 4px; + font-family: Roboto, "Helvetica Neue", sans-serif; + box-shadow: 0px 2px 1px -1px rgba(0, 0, 0, .2), 0px 1px 1px 0px rgba(0, 0, 0, .14), 0px 1px 3px 0px rgba(0, 0, 0, .12); +} + +.card__header { + font-size: 20px; + opacity: .87; + margin-bottom: 16px; +} + +.card__header__title { + font-weight: 500; +} + +.form-field-container { + margin: 32px 0; +} + +.radio-group-container { + margin: 24px 0; +} + +.switch-label { + font-weight: 400; +} + +.radio-label { + font-size: 14px; + font-weight: 400; + color: rgba(0, 0, 0, .6); +} + +.radio-group { + display: flex; + flex-direction: column; + margin-top: 8px; +} + +.radio-button { + margin: 2px; +} + +.radio-button-label { + font-weight: 400; +} + +.hint { + font-size: 75%; + padding: 0 1em; +} + +.radio-group-container { + margin: 24px 0; + display: flex; + flex-direction: column; +} + + +mat-form-field { + width: 100%; +} \ No newline at end of file diff --git a/plugins/sftp/web/projects/main/src/lib/configuration/configuration.component.spec.ts b/plugins/sftp/web/projects/main/src/lib/configuration/configuration.component.spec.ts new file mode 100644 index 000000000..cbc856a56 --- /dev/null +++ b/plugins/sftp/web/projects/main/src/lib/configuration/configuration.component.spec.ts @@ -0,0 +1,25 @@ +import { async, ComponentFixture, TestBed } from '@angular/core/testing'; + +import { ConfigurationComponent } from './configuration.component'; + +describe('ConfigurationComponent', () => { + let component: ConfigurationComponent; + let fixture: ComponentFixture; + + beforeEach(async(() => { + TestBed.configureTestingModule({ + declarations: [ ConfigurationComponent ] + }) + .compileComponents(); + })); + + beforeEach(() => { + fixture = TestBed.createComponent(ConfigurationComponent); + component = fixture.componentInstance; + fixture.detectChanges(); + }); + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/plugins/sftp/web/projects/main/src/lib/configuration/configuration.component.ts b/plugins/sftp/web/projects/main/src/lib/configuration/configuration.component.ts new file mode 100644 index 000000000..db1499949 --- /dev/null +++ b/plugins/sftp/web/projects/main/src/lib/configuration/configuration.component.ts @@ -0,0 +1,64 @@ +import { Component, OnInit } from '@angular/core'; +import { ArchiveFormat, CompletionAction, SFTPPluginConfig, TriggerRule } from '../entities/entities.format'; +import { ConfigurationService } from './configuration.service'; + +@Component({ + selector: 'sftp-configuration', + templateUrl: './configuration.component.html', + styleUrls: ['./configuration.component.scss'] +}) +export class ConfigurationComponent implements OnInit { + + formats: ArchiveFormat[] = [ + ArchiveFormat.GeoJSON + ] + + completionActions: CompletionAction[] = [ + CompletionAction.None, + CompletionAction.Archive + ] + + triggerRules: { + title: string, + value: TriggerRule + }[] = [ + { title: 'Create', value: TriggerRule.Create }, + { title: 'Create And Update', value: TriggerRule.CreateAndUpdate }, + ] + + configuration: SFTPPluginConfig = { + enabled: false, + archiveFormat: ArchiveFormat.GeoJSON, + completionAction: CompletionAction.None, + initiation: { + rule: TriggerRule.CreateAndUpdate, + timeout: 60 + }, + interval: 60, + pageSize: 10, + events: [], + sftpClient: { + host: '', + path: '', + username: '', + password: '' + } + } + + constructor( + public service: ConfigurationService, + ) { + } + + ngOnInit(): void { + this.service.getConfiguration().subscribe( configuration => { + this.configuration = configuration + }) + } + + save(): void { + this.service.updateConfiguration(this.configuration).subscribe(configuration => { + this.configuration = configuration + }) + } +} diff --git a/plugins/sftp/web/projects/main/src/lib/configuration/configuration.service.spec.ts b/plugins/sftp/web/projects/main/src/lib/configuration/configuration.service.spec.ts new file mode 100644 index 000000000..24c56e06a --- /dev/null +++ b/plugins/sftp/web/projects/main/src/lib/configuration/configuration.service.spec.ts @@ -0,0 +1,11 @@ +import { TestBed } from '@angular/core/testing'; +import { ConfigurationService } from './configuration.service'; + +describe('Configuration Service', () => { + beforeEach(() => TestBed.configureTestingModule({})); + + it('should be created', () => { + const service: ConfigurationService = TestBed.inject(ConfigurationService); + expect(service).toBeTruthy(); + }); +}); diff --git a/plugins/sftp/web/projects/main/src/lib/configuration/configuration.service.ts b/plugins/sftp/web/projects/main/src/lib/configuration/configuration.service.ts new file mode 100644 index 000000000..80040118f --- /dev/null +++ b/plugins/sftp/web/projects/main/src/lib/configuration/configuration.service.ts @@ -0,0 +1,28 @@ +import { HttpClient } from '@angular/common/http'; +import { Injectable } from '@angular/core'; +import { Observable } from 'rxjs'; +import { SFTPPluginConfig } from '../entities/entities.format'; + +export const baseUrl = '/plugins/@ngageoint/mage.sftp.service' + +export interface ConfigurationApi { + getConfiguration(): Observable + updateConfiguration(request: SFTPPluginConfig): Observable +} + +@Injectable({ + providedIn: 'root' +}) +export class ConfigurationService { + constructor(private http: HttpClient) { } + + getConfiguration(): Observable { + return this.http.get(`${baseUrl}/configuration`); + } + + updateConfiguration(request: SFTPPluginConfig): Observable { + return this.http.post(`${baseUrl}/configuration`, request, { + headers: { "Content-Type": "application/json" } + }); + } +} \ No newline at end of file diff --git a/plugins/sftp/web/projects/main/src/lib/entities/entities.format.ts b/plugins/sftp/web/projects/main/src/lib/entities/entities.format.ts new file mode 100644 index 000000000..779e330e1 --- /dev/null +++ b/plugins/sftp/web/projects/main/src/lib/entities/entities.format.ts @@ -0,0 +1,69 @@ +export enum ArchiveFormat { + GeoJSON = "GeoJSON" +} + +export enum CompletionAction { + None = "None", + Archive = "Archive" +} + +export enum TriggerRule { + Create = "Create", + CreateAndUpdate = "CreateAndUpdate" +} + +export type MageEventId = number + +/** + * Contains various configuration values used by the plugin. + */ +export interface SFTPPluginConfig { + + /** + * When true, the plugin will process new observations and send them to a configured SFTP endpoint. + */ + enabled: boolean + + /** + * Query the database for new observations to process at the given time interval in seconds. + */ + interval: number + + /** + * Observation query page size + */ + pageSize: number + + /** + * Events in which to SFTP observations + */ + events: Array + + /** + * Specifies how to format the SFTP archive file + */ + archiveFormat: ArchiveFormat + + /** + * Action to perform on observation when SFTP is complete + */ + completionAction: CompletionAction + + /** + * When to to initiate SFTP + */ + initiation: { + rule: TriggerRule, + timeout: number + } + + /** + * SFTP client configuartion + */ + sftpClient: { + host: string, + path: string, + username: string, + password: string + } +} diff --git a/plugins/sftp/web/projects/main/src/lib/sftp.module.ts b/plugins/sftp/web/projects/main/src/lib/sftp.module.ts new file mode 100644 index 000000000..095f6ecaf --- /dev/null +++ b/plugins/sftp/web/projects/main/src/lib/sftp.module.ts @@ -0,0 +1,50 @@ +import { NgModule } from '@angular/core'; +import { CommonModule } from '@angular/common'; +import { FormsModule } from '@angular/forms' +import { MatFormFieldModule } from '@angular/material/form-field' +import { MatAutocompleteModule } from '@angular/material/autocomplete' +import { MatButtonModule } from '@angular/material/button' +import { MatCardModule } from '@angular/material/card' +import { MatDialogModule } from '@angular/material/dialog' +import { MatExpansionModule } from '@angular/material/expansion' +import { MatIconModule } from '@angular/material/icon' +import { MatInputModule } from '@angular/material/input' +import { MatListModule } from '@angular/material/list' +import { MatSelectModule } from '@angular/material/select' +import { MatCheckboxModule } from '@angular/material/checkbox'; +import { MatTableModule } from '@angular/material/table' +import { MatRadioModule } from '@angular/material/radio'; +import { MatSlideToggleModule } from '@angular/material/slide-toggle'; +import { HttpClientModule } from '@angular/common/http' +import { MatProgressSpinnerModule } from '@angular/material/progress-spinner'; +import { ConfigurationComponent } from './configuration/configuration.component'; + +@NgModule({ + declarations: [ + ConfigurationComponent + ], + imports: [ + CommonModule, + FormsModule, + HttpClientModule, + MatAutocompleteModule, + MatButtonModule, + MatCardModule, + MatCheckboxModule, + MatDialogModule, + MatExpansionModule, + MatFormFieldModule, + MatIconModule, + MatInputModule, + MatListModule, + MatSelectModule, + MatTableModule, + MatRadioModule, + MatSlideToggleModule, + MatProgressSpinnerModule, + ], + exports: [ + ConfigurationComponent + ] +}) +export class SFTPModule { } diff --git a/plugins/sftp/web/projects/main/src/public-api.ts b/plugins/sftp/web/projects/main/src/public-api.ts new file mode 100644 index 000000000..e30b2cbf5 --- /dev/null +++ b/plugins/sftp/web/projects/main/src/public-api.ts @@ -0,0 +1,20 @@ +/* + * Public API Surface of sftp-web + */ +import { PluginHooks } from '@ngageoint/mage.web-core-lib/plugin' +import { SFTPModule } from './lib/sftp.module' +import { ConfigurationComponent } from './lib/configuration/configuration.component' + +export * from './lib/sftp.module' +export * from './lib/configuration/configuration.component' + +export const MAGE_WEB_HOOKS: PluginHooks = { + module: SFTPModule, + adminTab: { + title: 'SFTP', + icon: { + path: 'assets/drive_file_move_black_24dp.svg' + }, + tabContentComponent: ConfigurationComponent + } +} diff --git a/plugins/sftp/web/projects/main/src/scss/variables.scss b/plugins/sftp/web/projects/main/src/scss/variables.scss new file mode 100644 index 000000000..7adec253e --- /dev/null +++ b/plugins/sftp/web/projects/main/src/scss/variables.scss @@ -0,0 +1,13 @@ +@import '~@angular/material/theming'; + +// Define the palettes for your theme using the Material Design palettes available in palette.scss +// (imported above). For each palette, you can optionally specify a default, lighter, and darker +// hue. Available color palettes: https://material.io/design/color/ +$app-primary: mat-palette($mat-blue, 600, 200, 800); +$app-accent: mat-palette($mat-orange, A700, A100, A700); +$app-warn: mat-palette($mat-red); // The warn palette is optional (defaults to red). + +// Custom Sass colors vars (will be available in all the project) +$primary: mat-color($app-primary); +$accent: mat-color($app-accent); +$warn: mat-color($app-warn); \ No newline at end of file diff --git a/plugins/sftp/web/projects/main/src/test.ts b/plugins/sftp/web/projects/main/src/test.ts new file mode 100644 index 000000000..34af36e32 --- /dev/null +++ b/plugins/sftp/web/projects/main/src/test.ts @@ -0,0 +1,28 @@ +// This file is required by karma.conf.js and loads recursively all the .spec and framework files + +import 'zone.js'; +import 'zone.js/testing'; +import { getTestBed } from '@angular/core/testing'; +import { + BrowserDynamicTestingModule, + platformBrowserDynamicTesting +} from '@angular/platform-browser-dynamic/testing'; + +declare const require: { + context(path: string, deep?: boolean, filter?: RegExp): { + keys(): string[]; + (id: string): T; + }; +}; + +// First, initialize the Angular testing environment. +getTestBed().initTestEnvironment( + BrowserDynamicTestingModule, + platformBrowserDynamicTesting(), { + teardown: { destroyAfterEach: false } +} +); +// Then we find all the tests. +const context = require.context('../', true, /\.spec\.ts$/); +// And load the modules. +context.keys().map(context); diff --git a/plugins/sftp/web/projects/main/tsconfig.lib.json b/plugins/sftp/web/projects/main/tsconfig.lib.json new file mode 100644 index 000000000..4b5d4afd4 --- /dev/null +++ b/plugins/sftp/web/projects/main/tsconfig.lib.json @@ -0,0 +1,23 @@ +{ + "extends": "../../tsconfig.json", + "compilerOptions": { + "outDir": "../../out-tsc/lib", + "target": "es2015", + "declaration": true, + "inlineSources": true, + "types": [], + "lib": [ + "dom", + "es2018" + ] + }, + "angularCompilerOptions": { + "skipTemplateCodegen": true, + "strictMetadataEmit": true, + "enableResourceInlining": true + }, + "exclude": [ + "src/test.ts", + "**/*.spec.ts" + ] +} diff --git a/plugins/sftp/web/projects/main/tsconfig.lib.prod.json b/plugins/sftp/web/projects/main/tsconfig.lib.prod.json new file mode 100644 index 000000000..cbae79422 --- /dev/null +++ b/plugins/sftp/web/projects/main/tsconfig.lib.prod.json @@ -0,0 +1,6 @@ +{ + "extends": "./tsconfig.lib.json", + "angularCompilerOptions": { + "enableIvy": false + } +} diff --git a/plugins/sftp/web/projects/main/tsconfig.spec.json b/plugins/sftp/web/projects/main/tsconfig.spec.json new file mode 100644 index 000000000..16da33db0 --- /dev/null +++ b/plugins/sftp/web/projects/main/tsconfig.spec.json @@ -0,0 +1,17 @@ +{ + "extends": "../../tsconfig.json", + "compilerOptions": { + "outDir": "../../out-tsc/spec", + "types": [ + "jasmine", + "node" + ] + }, + "files": [ + "src/test.ts" + ], + "include": [ + "**/*.spec.ts", + "**/*.d.ts" + ] +} diff --git a/plugins/sftp/web/projects/main/tslint.json b/plugins/sftp/web/projects/main/tslint.json new file mode 100644 index 000000000..124133f84 --- /dev/null +++ b/plugins/sftp/web/projects/main/tslint.json @@ -0,0 +1,17 @@ +{ + "extends": "../../tslint.json", + "rules": { + "directive-selector": [ + true, + "attribute", + "lib", + "camelCase" + ], + "component-selector": [ + true, + "element", + "lib", + "kebab-case" + ] + } +} diff --git a/web-app/projects/core-lib-showcase/browserslist b/plugins/sftp/web/projects/showcase/browserslist similarity index 100% rename from web-app/projects/core-lib-showcase/browserslist rename to plugins/sftp/web/projects/showcase/browserslist diff --git a/web-app/e2e/protractor.conf.js b/plugins/sftp/web/projects/showcase/e2e/protractor.conf.js similarity index 100% rename from web-app/e2e/protractor.conf.js rename to plugins/sftp/web/projects/showcase/e2e/protractor.conf.js diff --git a/web-app/e2e/src/app.e2e-spec.ts b/plugins/sftp/web/projects/showcase/e2e/src/app.e2e-spec.ts similarity index 90% rename from web-app/e2e/src/app.e2e-spec.ts rename to plugins/sftp/web/projects/showcase/e2e/src/app.e2e-spec.ts index 39f76b2a4..425a3aed1 100644 --- a/web-app/e2e/src/app.e2e-spec.ts +++ b/plugins/sftp/web/projects/showcase/e2e/src/app.e2e-spec.ts @@ -10,7 +10,7 @@ describe('workspace-project App', () => { it('should display welcome message', () => { page.navigateTo(); - expect(page.getTitleText()).toEqual('mage-app app is running!'); + expect(page.getTitleText()).toEqual('showcase app is running!'); }); afterEach(async () => { diff --git a/web-app/projects/core-lib-showcase/e2e/src/app.po.ts b/plugins/sftp/web/projects/showcase/e2e/src/app.po.ts similarity index 100% rename from web-app/projects/core-lib-showcase/e2e/src/app.po.ts rename to plugins/sftp/web/projects/showcase/e2e/src/app.po.ts diff --git a/web-app/projects/core-lib-showcase/e2e/tsconfig.json b/plugins/sftp/web/projects/showcase/e2e/tsconfig.json similarity index 100% rename from web-app/projects/core-lib-showcase/e2e/tsconfig.json rename to plugins/sftp/web/projects/showcase/e2e/tsconfig.json diff --git a/plugins/sftp/web/projects/showcase/karma.conf.js b/plugins/sftp/web/projects/showcase/karma.conf.js new file mode 100644 index 000000000..ca07c5cdf --- /dev/null +++ b/plugins/sftp/web/projects/showcase/karma.conf.js @@ -0,0 +1,32 @@ +// Karma configuration file, see link for more information +// https://karma-runner.github.io/1.0/config/configuration-file.html + +module.exports = function (config) { + config.set({ + basePath: '', + frameworks: ['jasmine', '@angular-devkit/build-angular'], + plugins: [ + require('karma-jasmine'), + require('karma-chrome-launcher'), + require('karma-jasmine-html-reporter'), + require('karma-coverage-istanbul-reporter'), + require('@angular-devkit/build-angular/plugins/karma') + ], + client: { + clearContext: false // leave Jasmine Spec Runner output visible in browser + }, + coverageIstanbulReporter: { + dir: require('path').join(__dirname, '../../coverage/showcase'), + reports: ['html', 'lcovonly', 'text-summary'], + fixWebpackSourcePaths: true + }, + reporters: ['progress', 'kjhtml'], + port: 9876, + colors: true, + logLevel: config.LOG_INFO, + autoWatch: true, + browsers: ['Chrome'], + singleRun: false, + restartOnFileChange: true + }); +}; diff --git a/plugins/sftp/web/projects/showcase/src/app/app-routing.module.ts b/plugins/sftp/web/projects/showcase/src/app/app-routing.module.ts new file mode 100644 index 000000000..d425c6f56 --- /dev/null +++ b/plugins/sftp/web/projects/showcase/src/app/app-routing.module.ts @@ -0,0 +1,10 @@ +import { NgModule } from '@angular/core'; +import { Routes, RouterModule } from '@angular/router'; + +const routes: Routes = []; + +@NgModule({ + imports: [RouterModule.forRoot(routes)], + exports: [RouterModule] +}) +export class AppRoutingModule { } diff --git a/plugins/sftp/web/projects/showcase/src/app/app.component.html b/plugins/sftp/web/projects/showcase/src/app/app.component.html new file mode 100644 index 000000000..74f1ad844 --- /dev/null +++ b/plugins/sftp/web/projects/showcase/src/app/app.component.html @@ -0,0 +1,4 @@ +
+

MAGE SFTP Web Showcase

+ +
diff --git a/plugins/sftp/web/projects/showcase/src/app/app.component.scss b/plugins/sftp/web/projects/showcase/src/app/app.component.scss new file mode 100644 index 000000000..4ba6e26f6 --- /dev/null +++ b/plugins/sftp/web/projects/showcase/src/app/app.component.scss @@ -0,0 +1,3 @@ +h2 { + padding-left: 16px; +} \ No newline at end of file diff --git a/plugins/sftp/web/projects/showcase/src/app/app.component.spec.ts b/plugins/sftp/web/projects/showcase/src/app/app.component.spec.ts new file mode 100644 index 000000000..18d12318b --- /dev/null +++ b/plugins/sftp/web/projects/showcase/src/app/app.component.spec.ts @@ -0,0 +1,22 @@ +import { TestBed, async } from '@angular/core/testing'; +import { RouterTestingModule } from '@angular/router/testing'; +import { AppComponent } from './app.component'; + +describe('AppComponent', () => { + beforeEach(async(() => { + TestBed.configureTestingModule({ + imports: [ + RouterTestingModule + ], + declarations: [ + AppComponent + ], + }).compileComponents(); + })); + + it('should create the app', () => { + const fixture = TestBed.createComponent(AppComponent); + const app = fixture.componentInstance; + expect(app).toBeTruthy(); + }); +}); diff --git a/plugins/sftp/web/projects/showcase/src/app/app.component.ts b/plugins/sftp/web/projects/showcase/src/app/app.component.ts new file mode 100644 index 000000000..022b85e0a --- /dev/null +++ b/plugins/sftp/web/projects/showcase/src/app/app.component.ts @@ -0,0 +1,10 @@ +import { Component } from '@angular/core'; + +@Component({ + selector: 'app-root', + templateUrl: './app.component.html', + styleUrls: ['./app.component.scss'] +}) +export class AppComponent { + title = 'showcase'; +} diff --git a/plugins/sftp/web/projects/showcase/src/app/app.module.ts b/plugins/sftp/web/projects/showcase/src/app/app.module.ts new file mode 100644 index 000000000..4fd27a956 --- /dev/null +++ b/plugins/sftp/web/projects/showcase/src/app/app.module.ts @@ -0,0 +1,26 @@ +import { BrowserModule } from '@angular/platform-browser'; +import { NgModule } from '@angular/core'; +import { AppRoutingModule } from './app-routing.module'; +import { AppComponent } from './app.component'; +import { BrowserAnimationsModule } from '@angular/platform-browser/animations'; +import { SFTPModule } from 'projects/main/src/public-api'; +import { ConfigurationService } from 'projects/main/src/lib/configuration/configuration.service'; +import { MockConfigurationService } from './service/mock-configuration.service'; + +@NgModule({ + declarations: [ + AppComponent + ], + imports: [ + BrowserModule, + BrowserAnimationsModule, + AppRoutingModule, + SFTPModule + ], + providers: [{ + provide: ConfigurationService, + useClass: MockConfigurationService + }], + bootstrap: [AppComponent] +}) +export class AppModule { } diff --git a/plugins/sftp/web/projects/showcase/src/app/service/mock-configuration.service.ts b/plugins/sftp/web/projects/showcase/src/app/service/mock-configuration.service.ts new file mode 100644 index 000000000..8d79209e0 --- /dev/null +++ b/plugins/sftp/web/projects/showcase/src/app/service/mock-configuration.service.ts @@ -0,0 +1,30 @@ +import { ConfigurationApi } from 'projects/main/src/lib/configuration/configuration.service' +import { ArchiveFormat, CompletionAction, SFTPPluginConfig, TriggerRule } from 'projects/main/src/lib/entities/entities.format' +import { Observable, of } from 'rxjs' + +export class MockConfigurationService implements ConfigurationApi { + getConfiguration(): Observable { + return of({ + enabled: true, + interval: 1000, + pageSize: 200, + events: [], + archiveFormat: ArchiveFormat.GeoJSON, + completionAction: CompletionAction.None, + initiation: { + rule: TriggerRule.Create, + timeout: 60 + }, + sftpClient: { + host: 'http://mock.com', + path: 'mockpath', + username: 'mockusername', + password: 'mockpassword' + } + }) + } + + updateConfiguration(request: SFTPPluginConfig): Observable { + return of(JSON.parse(JSON.stringify(request))) + } +} \ No newline at end of file diff --git a/web-app/src/app/admin/admin-feeds/admin-service/admin-service-edit/admin-service-edit.component.scss b/plugins/sftp/web/projects/showcase/src/assets/.gitkeep similarity index 100% rename from web-app/src/app/admin/admin-feeds/admin-service/admin-service-edit/admin-service-edit.component.scss rename to plugins/sftp/web/projects/showcase/src/assets/.gitkeep diff --git a/plugins/sftp/web/projects/showcase/src/environments/environment.prod.ts b/plugins/sftp/web/projects/showcase/src/environments/environment.prod.ts new file mode 100644 index 000000000..3612073bc --- /dev/null +++ b/plugins/sftp/web/projects/showcase/src/environments/environment.prod.ts @@ -0,0 +1,3 @@ +export const environment = { + production: true +}; diff --git a/plugins/sftp/web/projects/showcase/src/environments/environment.ts b/plugins/sftp/web/projects/showcase/src/environments/environment.ts new file mode 100644 index 000000000..7b4f817ad --- /dev/null +++ b/plugins/sftp/web/projects/showcase/src/environments/environment.ts @@ -0,0 +1,16 @@ +// This file can be replaced during build by using the `fileReplacements` array. +// `ng build --prod` replaces `environment.ts` with `environment.prod.ts`. +// The list of file replacements can be found in `angular.json`. + +export const environment = { + production: false +}; + +/* + * For easier debugging in development mode, you can import the following file + * to ignore zone related error stack frames such as `zone.run`, `zoneDelegate.invokeTask`. + * + * This import should be commented out in production mode because it will have a negative impact + * on performance if an error is thrown. + */ +// import 'zone.js/dist/zone-error'; // Included with Angular CLI. diff --git a/plugins/sftp/web/projects/showcase/src/index.html b/plugins/sftp/web/projects/showcase/src/index.html new file mode 100644 index 000000000..d3b3ce0c7 --- /dev/null +++ b/plugins/sftp/web/projects/showcase/src/index.html @@ -0,0 +1,16 @@ + + + + + SFTP Plugin Showcase + + + + + + + + + diff --git a/plugins/sftp/web/projects/showcase/src/main.ts b/plugins/sftp/web/projects/showcase/src/main.ts new file mode 100644 index 000000000..c7b673cf4 --- /dev/null +++ b/plugins/sftp/web/projects/showcase/src/main.ts @@ -0,0 +1,12 @@ +import { enableProdMode } from '@angular/core'; +import { platformBrowserDynamic } from '@angular/platform-browser-dynamic'; + +import { AppModule } from './app/app.module'; +import { environment } from './environments/environment'; + +if (environment.production) { + enableProdMode(); +} + +platformBrowserDynamic().bootstrapModule(AppModule) + .catch(err => console.error(err)); diff --git a/plugins/sftp/web/projects/showcase/src/polyfills.ts b/plugins/sftp/web/projects/showcase/src/polyfills.ts new file mode 100644 index 000000000..03711e5d9 --- /dev/null +++ b/plugins/sftp/web/projects/showcase/src/polyfills.ts @@ -0,0 +1,63 @@ +/** + * This file includes polyfills needed by Angular and is loaded before the app. + * You can add your own extra polyfills to this file. + * + * This file is divided into 2 sections: + * 1. Browser polyfills. These are applied before loading ZoneJS and are sorted by browsers. + * 2. Application imports. Files imported after ZoneJS that should be loaded before your main + * file. + * + * The current setup is for so-called "evergreen" browsers; the last versions of browsers that + * automatically update themselves. This includes Safari >= 10, Chrome >= 55 (including Opera), + * Edge >= 13 on the desktop, and iOS 10 and Chrome on mobile. + * + * Learn more in https://angular.io/guide/browser-support + */ + +/*************************************************************************************************** + * BROWSER POLYFILLS + */ + +/** IE10 and IE11 requires the following for NgClass support on SVG elements */ +// import 'classlist.js'; // Run `npm install --save classlist.js`. + +/** + * Web Animations `@angular/platform-browser/animations` + * Only required if AnimationBuilder is used within the application and using IE/Edge or Safari. + * Standard animation support in Angular DOES NOT require any polyfills (as of Angular 6.0). + */ +// import 'web-animations-js'; // Run `npm install --save web-animations-js`. + +/** + * By default, zone.js will patch all possible macroTask and DomEvents + * user can disable parts of macroTask/DomEvents patch by setting following flags + * because those flags need to be set before `zone.js` being loaded, and webpack + * will put import in the top of bundle, so user need to create a separate file + * in this directory (for example: zone-flags.ts), and put the following flags + * into that file, and then add the following code before importing zone.js. + * import './zone-flags'; + * + * The flags allowed in zone-flags.ts are listed here. + * + * The following flags will work for all browsers. + * + * (window as any).__Zone_disable_requestAnimationFrame = true; // disable patch requestAnimationFrame + * (window as any).__Zone_disable_on_property = true; // disable patch onProperty such as onclick + * (window as any).__zone_symbol__UNPATCHED_EVENTS = ['scroll', 'mousemove']; // disable patch specified eventNames + * + * in IE/Edge developer tools, the addEventListener will also be wrapped by zone.js + * with the following flag, it will bypass `zone.js` patch for IE/Edge + * + * (window as any).__Zone_enable_cross_context_check = true; + * + */ + +/*************************************************************************************************** + * Zone JS is required by default for Angular itself. + */ +import 'zone.js/dist/zone'; // Included with Angular CLI. + + +/*************************************************************************************************** + * APPLICATION IMPORTS + */ diff --git a/plugins/sftp/web/projects/showcase/src/styles.scss b/plugins/sftp/web/projects/showcase/src/styles.scss new file mode 100644 index 000000000..2784894b1 --- /dev/null +++ b/plugins/sftp/web/projects/showcase/src/styles.scss @@ -0,0 +1,22 @@ +// /* You can add global styles to this file, and also import other style files */ +// @import '~@angular/material/theming'; + +// /* You can add global styles to this file, and also import other style files */ +// @import "~@angular/material/prebuilt-themes/indigo-pink.css"; +// @import "~@ng-select/ng-select/themes/material.theme.css"; + +// $app-primary: mat-palette($mat-blue, 600, 200, 800); +// $app-accent: mat-palette($mat-orange, A700, A100, A700); +// $app-warn: mat-palette($mat-red); // The warn palette is optional (defaults to red). + +@import "theme.scss"; + +html, +body { + height: 100%; +} + +body { + margin: 0; + font-family: Roboto, "Helvetica Neue", sans-serif; +} \ No newline at end of file diff --git a/plugins/sftp/web/projects/showcase/src/test.ts b/plugins/sftp/web/projects/showcase/src/test.ts new file mode 100644 index 000000000..50193eb0f --- /dev/null +++ b/plugins/sftp/web/projects/showcase/src/test.ts @@ -0,0 +1,25 @@ +// This file is required by karma.conf.js and loads recursively all the .spec and framework files + +import 'zone.js/dist/zone-testing'; +import { getTestBed } from '@angular/core/testing'; +import { + BrowserDynamicTestingModule, + platformBrowserDynamicTesting +} from '@angular/platform-browser-dynamic/testing'; + +declare const require: { + context(path: string, deep?: boolean, filter?: RegExp): { + keys(): string[]; + (id: string): T; + }; +}; + +// First, initialize the Angular testing environment. +getTestBed().initTestEnvironment( + BrowserDynamicTestingModule, + platformBrowserDynamicTesting() +); +// Then we find all the tests. +const context = require.context('./', true, /\.spec\.ts$/); +// And load the modules. +context.keys().map(context); diff --git a/plugins/sftp/web/projects/showcase/src/theme.scss b/plugins/sftp/web/projects/showcase/src/theme.scss new file mode 100644 index 000000000..a5157f1e0 --- /dev/null +++ b/plugins/sftp/web/projects/showcase/src/theme.scss @@ -0,0 +1,26 @@ +@import '~@angular/material/theming'; + +// Include the common styles for Angular Material. We include this here so that you only +// have to load a single css file for Angular Material in your app. +// Be sure that you only ever include this mixin once! +@include mat-core(); + +// Define the palettes for your theme using the Material Design palettes available in palette.scss +// (imported above). For each palette, you can optionally specify a default, lighter, and darker +// hue. Available color palettes: https://material.io/design/color/ +$app-primary: mat-palette($mat-blue, 600, 200, 800); +$app-accent: mat-palette($mat-orange, A700, A100, A700); +$app-warn: mat-palette($mat-red); // The warn palette is optional (defaults to red). + +// Custom Sass colors vars (will be available in all the project) +$primary: mat-color($app-primary); +$accent: mat-color($app-accent); +$warn: mat-color($app-warn); + +// Create the theme object (a Sass map containing all of the palettes). +$app-theme: mat-light-theme($app-primary, $app-accent, $app-warn); + +// Include theme styles for core and each component used in your app. +// Alternatively, you can import and @include the theme mixins for each component +// that you are using. +@include angular-material-theme($app-theme); \ No newline at end of file diff --git a/plugins/sftp/web/projects/showcase/tsconfig.app.json b/plugins/sftp/web/projects/showcase/tsconfig.app.json new file mode 100644 index 000000000..809c09ca7 --- /dev/null +++ b/plugins/sftp/web/projects/showcase/tsconfig.app.json @@ -0,0 +1,14 @@ +{ + "extends": "../../tsconfig.json", + "compilerOptions": { + "outDir": "../../out-tsc/app", + "types": [] + }, + "files": [ + "src/main.ts", + "src/polyfills.ts" + ], + "include": [ + "src/**/*.d.ts" + ] +} diff --git a/plugins/sftp/web/projects/showcase/tsconfig.spec.json b/plugins/sftp/web/projects/showcase/tsconfig.spec.json new file mode 100644 index 000000000..a8ce1d396 --- /dev/null +++ b/plugins/sftp/web/projects/showcase/tsconfig.spec.json @@ -0,0 +1,18 @@ +{ + "extends": "../../tsconfig.json", + "compilerOptions": { + "outDir": "../../out-tsc/spec", + "types": [ + "jasmine", + "node" + ] + }, + "files": [ + "src/test.ts", + "src/polyfills.ts" + ], + "include": [ + "src/**/*.spec.ts", + "src/**/*.d.ts" + ] +} diff --git a/plugins/sftp/web/projects/showcase/tslint.json b/plugins/sftp/web/projects/showcase/tslint.json new file mode 100644 index 000000000..19e8161a0 --- /dev/null +++ b/plugins/sftp/web/projects/showcase/tslint.json @@ -0,0 +1,17 @@ +{ + "extends": "../../tslint.json", + "rules": { + "directive-selector": [ + true, + "attribute", + "app", + "camelCase" + ], + "component-selector": [ + true, + "element", + "app", + "kebab-case" + ] + } +} diff --git a/plugins/sftp/web/tsconfig.json b/plugins/sftp/web/tsconfig.json new file mode 100644 index 000000000..495b6a4e3 --- /dev/null +++ b/plugins/sftp/web/tsconfig.json @@ -0,0 +1,31 @@ +{ + "compileOnSave": false, + "compilerOptions": { + "baseUrl": "./", + "outDir": "./dist/out-tsc", + "sourceMap": true, + "declaration": false, + "downlevelIteration": true, + "experimentalDecorators": true, + "module": "esnext", + "moduleResolution": "node", + "importHelpers": true, + "target": "es2015", + "lib": [ + "es2018", + "dom" + ], + "paths": { + "admin": [ + "dist/admin" + ], + "@ngageoint/mage.web-core-lib/*": [ + "./node_modules/@ngageoint/mage.web-core-lib/*" + ] + } + }, + "angularCompilerOptions": { + "fullTemplateTypeCheck": true, + "strictInjectionParameters": true + } +} \ No newline at end of file diff --git a/plugins/sftp/web/tslint.json b/plugins/sftp/web/tslint.json new file mode 100644 index 000000000..def88d1c8 --- /dev/null +++ b/plugins/sftp/web/tslint.json @@ -0,0 +1,136 @@ +{ + "extends": "tslint:recommended", + "rulesDirectory": [ + "codelyzer" + ], + "rules": { + "align": { + "options": [ + "parameters", + "statements" + ] + }, + "array-type": false, + "arrow-return-shorthand": true, + "curly": true, + "deprecation": { + "severity": "warning" + }, + "eofline": true, + "import-blacklist": [ + true, + "rxjs/Rx" + ], + "import-spacing": true, + "indent": { + "options": [ + "spaces" + ] + }, + "max-classes-per-file": false, + "max-line-length": [ + true, + 140 + ], + "member-ordering": [ + true, + { + "order": [ + "static-field", + "instance-field", + "static-method", + "instance-method" + ] + } + ], + "no-console": [ + true, + "debug", + "info", + "time", + "timeEnd", + "trace" + ], + "no-empty": false, + "no-inferrable-types": [ + true, + "ignore-params" + ], + "no-non-null-assertion": true, + "no-redundant-jsdoc": true, + "no-switch-case-fall-through": true, + "no-var-requires": false, + "object-literal-key-quotes": [ + true, + "as-needed" + ], + "quotemark": [ + true, + "single" + ], + "semicolon": { + "options": [ + "always" + ] + }, + "space-before-function-paren": { + "options": { + "anonymous": "never", + "asyncArrow": "always", + "constructor": "never", + "method": "never", + "named": "never" + } + }, + "typedef-whitespace": { + "options": [ + { + "call-signature": "nospace", + "index-signature": "nospace", + "parameter": "nospace", + "property-declaration": "nospace", + "variable-declaration": "nospace" + }, + { + "call-signature": "onespace", + "index-signature": "onespace", + "parameter": "onespace", + "property-declaration": "onespace", + "variable-declaration": "onespace" + } + ] + }, + "variable-name": { + "options": [ + "ban-keywords", + "check-format", + "allow-pascal-case" + ] + }, + "whitespace": { + "options": [ + "check-branch", + "check-decl", + "check-operator", + "check-separator", + "check-type", + "check-typecast" + ] + }, + "component-class-suffix": true, + "contextual-lifecycle": true, + "directive-class-suffix": true, + "no-conflicting-lifecycle": true, + "no-host-metadata-property": true, + "no-input-rename": true, + "no-inputs-metadata-property": true, + "no-output-native": true, + "no-output-on-prefix": true, + "no-output-rename": true, + "no-outputs-metadata-property": true, + "template-banana-in-box": true, + "template-no-negated-async": true, + "use-lifecycle-interface": true, + "use-pipe-transform-interface": true + } +} diff --git a/service/.editorconfig b/service/.editorconfig new file mode 100644 index 000000000..e89330a61 --- /dev/null +++ b/service/.editorconfig @@ -0,0 +1,13 @@ +# Editor configuration, see https://editorconfig.org +root = true + +[*] +charset = utf-8 +indent_style = space +indent_size = 2 +insert_final_newline = true +trim_trailing_whitespace = true + +[*.md] +max_line_length = off +trim_trailing_whitespace = false diff --git a/service/functionalTests/config/testConfig.json b/service/functionalTests/config/testConfig.json index 1dbaf9bd9..3c283ff7b 100644 --- a/service/functionalTests/config/testConfig.json +++ b/service/functionalTests/config/testConfig.json @@ -2,14 +2,10 @@ "api": { "name": "MAGE (Mobile Awareness GEOINT Environment)", "version": { - "major": 3, + "major": 6, "minor": 1, "micro": 0 }, - "authentication": { - "strategy": "local", - "passwordMinLength": 14 - }, "provision": { "strategy": "uid" }, @@ -33,7 +29,8 @@ "host": "localhost", "port": 27017, "db": "magedb", - "poolSize": 5 + "minPoolSize": 5, + "maxPoolSize": 5 }, "locationServices": { "enabled": true, diff --git a/service/npm-shrinkwrap.json b/service/npm-shrinkwrap.json index da7ba50b8..15eabee26 100644 --- a/service/npm-shrinkwrap.json +++ b/service/npm-shrinkwrap.json @@ -1,3345 +1,3685 @@ { "name": "@ngageoint/mage.service", - "version": "6.2.13", - "lockfileVersion": 2, + "version": "6.3.0-beta.8", + "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@ngageoint/mage.service", - "version": "6.2.13", - "dependencies": { - "@ngageoint/geopackage": "^4.2.6", - "@node-saml/passport-saml": "^4.0.4", - "@turf/centroid": "^6.5.0", - "@turf/kinks": "^6.5.0", - "@types/geojson": "^7946.0.7", - "@types/json-schema": "^7.0.11", - "@types/mime-types": "^2.1.1", - "@xmldom/xmldom": "^0.8.10", - "adm-zip": "0.4.9", - "archiver": "5.3.0", - "async": "^3.2.4", + "version": "6.3.0-beta.8", + "dependencies": { + "@ngageoint/geopackage": "4.2.6", + "@ngageoint/mongodb-migrations": "1.0.0", + "@node-saml/passport-saml": "4.0.4", + "@turf/centroid": "6.5.0", + "@turf/kinks": "6.5.0", + "@types/geojson": "7946.0.16", + "@types/json-schema": "7.0.15", + "@types/mime-types": "2.1.4", + "@xmldom/xmldom": "0.9.8", + "adm-zip": "0.5.16", + "archiver": "5.3.2", + "async": "3.2.6", + "async-lock": "1.4.1", "base-64": "1.0.0", - "better-sqlite3": "^8.6.0", - "body-parser": "~1.19.0", - "busboy": "^1.6.0", - "cfenv": "1.0.3", - "commander": "^8.2.0", - "dbf": "0.1.0", - "express": "^4.18.2", - "express-session": "1.17.2", - "file-type": "^16.5.4", + "busboy": "1.6.0", + "cfenv": "1.2.4", + "commander": "8.3.0", + "express": "4.21.2", + "express-session": "1.18.1", + "file-type": "16.5.4", "fs-extra": "4.0.3", - "geojson": "^0.5.0", - "geojson-validation": "^1.0.2", - "gm": "1.23.1", - "json2csv": "4.5.1", - "jsonwebtoken": "^9.0.2", - "lodash": "^4.17.21", - "mgrs": "^1.0.0", - "mime-types": "^2.1.35", - "moment": "^2.29.4", - "mongodb-migrations": "0.8.5", - "mongoose": "^4.13.21", - "mongoose-beautiful-unique-validation": "7.1.1", - "multer": "^1.4.5-lts.1", - "node-fetch": "^2.6.0", - "passport": "^0.6.0", + "geojson": "0.5.0", + "geojson-validation": "1.0.2", + "json2csv": "4.5.4", + "jsonwebtoken": "9.0.2", + "lodash": "4.17.21", + "mgrs": "1.0.0", + "mime-types": "2.1.35", + "moment": "2.30.1", + "mongoose": "6.13.8", + "multer": "1.4.5-lts.1", + "node-fetch": "2.7.0", + "passport": "0.7.0", "passport-anonymous": "1.0.1", "passport-http-bearer": "1.0.1", - "passport-ldapauth": "^3.0.1", + "passport-ldapauth": "3.0.1", "passport-local": "1.0.0", - "passport-oauth2": "1.6.0", - "passport-openidconnect": "0.1.1", - "pem-jwk": "1.5.1", - "pem2jwk": "1.0.2", - "pug": "^3.0.2", - "rfc5646": "^3.0.0", - "superagent": "^8.0.0", - "svg-captcha": "^1.4.0", - "uniqid": "^5.2.0", - "walk": "2.3.4", - "winston": "1.0.1", - "wkx": "0.4.8", - "wms-capabilities": "^0.4.0", - "xmlbuilder2": "3.0.2", - "xpath": "0.0.23", - "yaml": "^1.8.2" + "passport-oauth2": "1.8.0", + "passport-openidconnect": "0.1.2", + "pug": "3.0.3", + "rfc5646": "3.0.0", + "superagent": "8.1.2", + "svg-captcha": "1.4.0", + "uniqid": "5.4.0", + "walk": "2.3.15", + "winston": "1.1.2", + "wkx": "0.5.0", + "wms-capabilities": "0.6.0", + "xmlbuilder2": "3.1.1", + "xpath": "0.0.34", + "yaml": "1.10.2" }, "bin": { "mage.service": "bin/mage.service.js" }, "devDependencies": { - "@fluffy-spoon/substitute": "^1.196.0", - "@types/archiver": "^5.3.4", - "@types/async": "^3.0.5", - "@types/bson": "^1.0.11", - "@types/busboy": "^1.5.0", - "@types/chai": "^4.2.19", - "@types/chai-as-promised": "^7.1.2", - "@types/deep-equal": "^1.0.1", - "@types/express": "^4.17.19", - "@types/express-serve-static-core": "~4.17.0", - "@types/fs-extra": "^8.0.1", - "@types/json2csv": "~4.5.0", - "@types/lodash": "^4.14.155", - "@types/mocha": "^7.0.2", - "@types/mongodb": "^3.6.20", - "@types/mongoose": "^4.7.56", - "@types/multer": "^1.4.7", - "@types/node": "^18.18.4", - "@types/node-fetch": "^2.5.4", - "@types/passport": "^1.0.3", - "@types/sinon": "^9.0.4", - "@types/sinon-chai": "^3.2.4", - "@types/superagent": "^8.1.3", - "@types/supertest": "^2.0.16", - "@types/uniqid": "^5.2.0", - "@typescript-eslint/eslint-plugin": "^6.7.5", - "@typescript-eslint/parser": "^6.7.5", - "ajv": "^6.11.0", - "assert": "2.0.0", - "axios": "^1.6.5", - "chai": "^4.3.6", - "chai-as-promised": "^7.1.1", - "coveralls": "3.0.4", - "cpy-cli": "^5.0.0", - "deep-equal": "^2.0.2", - "eslint": "^8.51.0", - "eslint-config-prettier": "^6.9.0", - "eslint-plugin-prettier": "^3.1.2", - "iconv-lite": "^0.5.1", - "jszip": "^3.7.1", - "mocha": "^7.1.1", - "mock-fs": "4.13.0", - "mongodb-memory-server": "^9.1.3", - "nock": "^11.7.2", - "npm-run-all": "^4.1.5", - "nyc": "^14.1.1", - "openapi-enforcer": "1.15.5", - "prettier": "^1.19.1", + "@fluffy-spoon/substitute": "1.208.0", + "@types/archiver": "5.3.4", + "@types/async": "3.2.24", + "@types/bson": "1.0.11", + "@types/busboy": "1.5.4", + "@types/chai": "4.3.20", + "@types/chai-as-promised": "7.1.8", + "@types/deep-equal": "1.0.4", + "@types/express": "4.17.21", + "@types/express-serve-static-core": "4.19.6", + "@types/fs-extra": "8.1.5", + "@types/json2csv": "4.5.1", + "@types/lodash": "4.17.16", + "@types/mocha": "7.0.2", + "@types/multer": "1.4.12", + "@types/node": "18.19.80", + "@types/node-fetch": "2.6.12", + "@types/passport": "1.0.17", + "@types/sinon": "9.0.11", + "@types/sinon-chai": "3.2.12", + "@types/superagent": "8.1.9", + "@types/supertest": "2.0.16", + "@types/uniqid": "5.3.4", + "@typescript-eslint/eslint-plugin": "6.21.0", + "@typescript-eslint/parser": "6.21.0", + "ajv": "6.12.6", + "axios": "1.8.4", + "chai": "4.5.0", + "chai-as-promised": "7.1.2", + "coveralls": "3.1.1", + "cpy-cli": "5.0.0", + "deep-equal": "2.2.3", + "eslint": "8.57.1", + "eslint-config-prettier": "6.15.0", + "eslint-plugin-prettier": "3.4.1", + "iconv-lite": "0.6.3", + "jszip": "3.10.1", + "mocha": "10.8.2", + "mock-fs": "4.14.0", + "mongodb-memory-server": "9.5.0", + "nock": "11.9.1", + "npm-run-all": "4.1.5", + "nyc": "14.1.1", + "openapi-enforcer": "1.23.0", + "prettier": "1.19.1", "proxyquire": "2.1.3", - "rimraf": "^5.0.5", + "rimraf": "5.0.10", "sinon": "7.5.0", - "sinon-chai": "3.3.0", + "sinon-chai": "3.7.0", "sinon-mongoose": "2.3.0", - "supertest": "^6.3.3", - "ts-mockito": "^2.5.0", - "typescript": "~4.6.0", - "wtfnode": "^0.8.4" + "supertest": "6.3.4", + "typescript": "4.9.5" }, "engines": { - "node": ">= 16.x", - "npm": ">= 8.x" + "node": ">= 16", + "npm": ">= 8" } }, - "node_modules/@aashutoshrathi/word-wrap": { - "version": "1.2.6", - "resolved": "https://registry.npmjs.org/@aashutoshrathi/word-wrap/-/word-wrap-1.2.6.tgz", - "integrity": "sha512-1Yjs2SvM8TflER/OD3cOjhWWOZb58A2t7wpE2S9XfBYTiIl+XFhQG2bjy4Pu1I+EAlCNUzRDYDdFwFYUKvXcIA==", - "dev": true, - "engines": { - "node": ">=0.10.0" + "node_modules/@aws-crypto/sha256-browser": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/sha256-browser/-/sha256-browser-5.2.0.tgz", + "integrity": "sha512-AXfN/lGotSQwu6HNcEsIASo7kWXZ5HYWvfOmSNKDsEqC4OashTp8alTmaz+F7TC2L083SFv5RdB+qU3Vs1kZqw==", + "optional": true, + "dependencies": { + "@aws-crypto/sha256-js": "^5.2.0", + "@aws-crypto/supports-web-crypto": "^5.2.0", + "@aws-crypto/util": "^5.2.0", + "@aws-sdk/types": "^3.222.0", + "@aws-sdk/util-locate-window": "^3.0.0", + "@smithy/util-utf8": "^2.0.0", + "tslib": "^2.6.2" } }, - "node_modules/@babel/code-frame": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.16.7.tgz", - "integrity": "sha512-iAXqUn8IIeBTNd72xsFlgaXHkMBMt6y4HJp1tIaK465CWLT/fG1aqB7ykr95gHHmlBdGbFeWWfyB4NJJ0nmeIg==", - "dev": true, + "node_modules/@aws-crypto/sha256-browser/node_modules/@smithy/is-array-buffer": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@smithy/is-array-buffer/-/is-array-buffer-2.2.0.tgz", + "integrity": "sha512-GGP3O9QFD24uGeAXYUjwSTXARoqpZykHadOmA8G5vfJPK0/DC67qa//0qvqrJzL1xc8WQWX7/yc7fwudjPHPhA==", + "optional": true, "dependencies": { - "@babel/highlight": "^7.16.7" + "tslib": "^2.6.2" }, "engines": { - "node": ">=6.9.0" + "node": ">=14.0.0" } }, - "node_modules/@babel/generator": { - "version": "7.17.9", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.17.9.tgz", - "integrity": "sha512-rAdDousTwxbIxbz5I7GEQ3lUip+xVCXooZNbsydCWs3xA7ZsYOv+CFRdzGxRX78BmQHu9B1Eso59AOZQOJDEdQ==", - "dev": true, + "node_modules/@aws-crypto/sha256-browser/node_modules/@smithy/util-buffer-from": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@smithy/util-buffer-from/-/util-buffer-from-2.2.0.tgz", + "integrity": "sha512-IJdWBbTcMQ6DA0gdNhh/BwrLkDR+ADW5Kr1aZmd4k3DIF6ezMV4R2NIAmT08wQJ3yUK82thHWmC/TnK/wpMMIA==", + "optional": true, "dependencies": { - "@babel/types": "^7.17.0", - "jsesc": "^2.5.1", - "source-map": "^0.5.0" + "@smithy/is-array-buffer": "^2.2.0", + "tslib": "^2.6.2" }, "engines": { - "node": ">=6.9.0" + "node": ">=14.0.0" } }, - "node_modules/@babel/generator/node_modules/source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", - "dev": true, + "node_modules/@aws-crypto/sha256-browser/node_modules/@smithy/util-utf8": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/@smithy/util-utf8/-/util-utf8-2.3.0.tgz", + "integrity": "sha512-R8Rdn8Hy72KKcebgLiv8jQcQkXoLMOGGv5uI1/k0l+snqkOzQ1R0ChUBCxWMlBsFMekWjq0wRudIweFs7sKT5A==", + "optional": true, + "dependencies": { + "@smithy/util-buffer-from": "^2.2.0", + "tslib": "^2.6.2" + }, "engines": { - "node": ">=0.10.0" + "node": ">=14.0.0" } }, - "node_modules/@babel/helper-environment-visitor": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.16.7.tgz", - "integrity": "sha512-SLLb0AAn6PkUeAfKJCCOl9e1R53pQlGAfc4y4XuMRZfqeMYLE0dM1LMhqbGAlGQY0lfw5/ohoYWAe9V1yibRag==", - "dev": true, + "node_modules/@aws-crypto/sha256-js": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/sha256-js/-/sha256-js-5.2.0.tgz", + "integrity": "sha512-FFQQyu7edu4ufvIZ+OadFpHHOt+eSTBaYaki44c+akjg7qZg9oOQeLlk77F6tSYqjDAFClrHJk9tMf0HdVyOvA==", + "optional": true, "dependencies": { - "@babel/types": "^7.16.7" + "@aws-crypto/util": "^5.2.0", + "@aws-sdk/types": "^3.222.0", + "tslib": "^2.6.2" }, "engines": { - "node": ">=6.9.0" + "node": ">=16.0.0" } }, - "node_modules/@babel/helper-function-name": { - "version": "7.17.9", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.17.9.tgz", - "integrity": "sha512-7cRisGlVtiVqZ0MW0/yFB4atgpGLWEHUVYnb448hZK4x+vih0YO5UoS11XIYtZYqHd0dIPMdUSv8q5K4LdMnIg==", - "dev": true, + "node_modules/@aws-crypto/supports-web-crypto": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/supports-web-crypto/-/supports-web-crypto-5.2.0.tgz", + "integrity": "sha512-iAvUotm021kM33eCdNfwIN//F77/IADDSs58i+MDaOqFrVjZo9bAal0NK7HurRuWLLpF1iLX7gbWrjHjeo+YFg==", + "optional": true, "dependencies": { - "@babel/template": "^7.16.7", - "@babel/types": "^7.17.0" - }, - "engines": { - "node": ">=6.9.0" + "tslib": "^2.6.2" } }, - "node_modules/@babel/helper-hoist-variables": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.16.7.tgz", - "integrity": "sha512-m04d/0Op34H5v7pbZw6pSKP7weA6lsMvfiIAMeIvkY/R4xQtBSMFEigu9QTZ2qB/9l22vsxtM8a+Q8CzD255fg==", - "dev": true, + "node_modules/@aws-crypto/util": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/util/-/util-5.2.0.tgz", + "integrity": "sha512-4RkU9EsI6ZpBve5fseQlGNUWKMa1RLPQ1dnjnQoe07ldfIzcsGb5hC5W0Dm7u423KWzawlrpbjXBrXCEv9zazQ==", + "optional": true, "dependencies": { - "@babel/types": "^7.16.7" - }, - "engines": { - "node": ">=6.9.0" + "@aws-sdk/types": "^3.222.0", + "@smithy/util-utf8": "^2.0.0", + "tslib": "^2.6.2" } }, - "node_modules/@babel/helper-split-export-declaration": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.16.7.tgz", - "integrity": "sha512-xbWoy/PFoxSWazIToT9Sif+jJTlrMcndIsaOKvTA6u7QEo7ilkRZpjew18/W3c7nm8fXdUDXh02VXTbZ0pGDNw==", - "dev": true, + "node_modules/@aws-crypto/util/node_modules/@smithy/is-array-buffer": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@smithy/is-array-buffer/-/is-array-buffer-2.2.0.tgz", + "integrity": "sha512-GGP3O9QFD24uGeAXYUjwSTXARoqpZykHadOmA8G5vfJPK0/DC67qa//0qvqrJzL1xc8WQWX7/yc7fwudjPHPhA==", + "optional": true, "dependencies": { - "@babel/types": "^7.16.7" + "tslib": "^2.6.2" }, "engines": { - "node": ">=6.9.0" + "node": ">=14.0.0" } }, - "node_modules/@babel/helper-validator-identifier": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.16.7.tgz", - "integrity": "sha512-hsEnFemeiW4D08A5gUAZxLBTXpZ39P+a+DGDsHw1yxqyQ/jzFEnxf5uTEGp+3bzAbNOxU1paTgYS4ECU/IgfDw==", + "node_modules/@aws-crypto/util/node_modules/@smithy/util-buffer-from": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@smithy/util-buffer-from/-/util-buffer-from-2.2.0.tgz", + "integrity": "sha512-IJdWBbTcMQ6DA0gdNhh/BwrLkDR+ADW5Kr1aZmd4k3DIF6ezMV4R2NIAmT08wQJ3yUK82thHWmC/TnK/wpMMIA==", + "optional": true, + "dependencies": { + "@smithy/is-array-buffer": "^2.2.0", + "tslib": "^2.6.2" + }, "engines": { - "node": ">=6.9.0" + "node": ">=14.0.0" } }, - "node_modules/@babel/highlight": { - "version": "7.17.9", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.17.9.tgz", - "integrity": "sha512-J9PfEKCbFIv2X5bjTMiZu6Vf341N05QIY+d6FvVKynkG1S7G0j3I0QoRtWIrXhZ+/Nlb5Q0MzqL7TokEJ5BNHg==", - "dev": true, + "node_modules/@aws-crypto/util/node_modules/@smithy/util-utf8": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/@smithy/util-utf8/-/util-utf8-2.3.0.tgz", + "integrity": "sha512-R8Rdn8Hy72KKcebgLiv8jQcQkXoLMOGGv5uI1/k0l+snqkOzQ1R0ChUBCxWMlBsFMekWjq0wRudIweFs7sKT5A==", + "optional": true, "dependencies": { - "@babel/helper-validator-identifier": "^7.16.7", - "chalk": "^2.0.0", - "js-tokens": "^4.0.0" + "@smithy/util-buffer-from": "^2.2.0", + "tslib": "^2.6.2" }, "engines": { - "node": ">=6.9.0" + "node": ">=14.0.0" } }, - "node_modules/@babel/highlight/node_modules/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, + "node_modules/@aws-sdk/client-cognito-identity": { + "version": "3.606.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-cognito-identity/-/client-cognito-identity-3.606.0.tgz", + "integrity": "sha512-CJ3kovUg7HAn3trqo0WxVw3PJoaHxiGU1U+Ok8Vx/sL81+auyyiasT09M/NcchRqwAooKvUi44sVD0ih7Zi9Nw==", + "optional": true, "dependencies": { - "color-convert": "^1.9.0" + "@aws-crypto/sha256-browser": "5.2.0", + "@aws-crypto/sha256-js": "5.2.0", + "@aws-sdk/client-sso-oidc": "3.606.0", + "@aws-sdk/client-sts": "3.606.0", + "@aws-sdk/core": "3.598.0", + "@aws-sdk/credential-provider-node": "3.600.0", + "@aws-sdk/middleware-host-header": "3.598.0", + "@aws-sdk/middleware-logger": "3.598.0", + "@aws-sdk/middleware-recursion-detection": "3.598.0", + "@aws-sdk/middleware-user-agent": "3.598.0", + "@aws-sdk/region-config-resolver": "3.598.0", + "@aws-sdk/types": "3.598.0", + "@aws-sdk/util-endpoints": "3.598.0", + "@aws-sdk/util-user-agent-browser": "3.598.0", + "@aws-sdk/util-user-agent-node": "3.598.0", + "@smithy/config-resolver": "^3.0.2", + "@smithy/core": "^2.2.1", + "@smithy/fetch-http-handler": "^3.0.2", + "@smithy/hash-node": "^3.0.1", + "@smithy/invalid-dependency": "^3.0.1", + "@smithy/middleware-content-length": "^3.0.1", + "@smithy/middleware-endpoint": "^3.0.2", + "@smithy/middleware-retry": "^3.0.4", + "@smithy/middleware-serde": "^3.0.1", + "@smithy/middleware-stack": "^3.0.1", + "@smithy/node-config-provider": "^3.1.1", + "@smithy/node-http-handler": "^3.0.1", + "@smithy/protocol-http": "^4.0.1", + "@smithy/smithy-client": "^3.1.2", + "@smithy/types": "^3.1.0", + "@smithy/url-parser": "^3.0.1", + "@smithy/util-base64": "^3.0.0", + "@smithy/util-body-length-browser": "^3.0.0", + "@smithy/util-body-length-node": "^3.0.0", + "@smithy/util-defaults-mode-browser": "^3.0.4", + "@smithy/util-defaults-mode-node": "^3.0.4", + "@smithy/util-endpoints": "^2.0.2", + "@smithy/util-middleware": "^3.0.1", + "@smithy/util-retry": "^3.0.1", + "@smithy/util-utf8": "^3.0.0", + "tslib": "^2.6.2" }, "engines": { - "node": ">=4" + "node": ">=16.0.0" } }, - "node_modules/@babel/highlight/node_modules/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, + "node_modules/@aws-sdk/client-sso": { + "version": "3.598.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.598.0.tgz", + "integrity": "sha512-nOI5lqPYa+YZlrrzwAJywJSw3MKVjvu6Ge2fCqQUNYMfxFB0NAaDFnl0EPjXi+sEbtCuz/uWE77poHbqiZ+7Iw==", + "optional": true, "dependencies": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" + "@aws-crypto/sha256-browser": "5.2.0", + "@aws-crypto/sha256-js": "5.2.0", + "@aws-sdk/core": "3.598.0", + "@aws-sdk/middleware-host-header": "3.598.0", + "@aws-sdk/middleware-logger": "3.598.0", + "@aws-sdk/middleware-recursion-detection": "3.598.0", + "@aws-sdk/middleware-user-agent": "3.598.0", + "@aws-sdk/region-config-resolver": "3.598.0", + "@aws-sdk/types": "3.598.0", + "@aws-sdk/util-endpoints": "3.598.0", + "@aws-sdk/util-user-agent-browser": "3.598.0", + "@aws-sdk/util-user-agent-node": "3.598.0", + "@smithy/config-resolver": "^3.0.2", + "@smithy/core": "^2.2.1", + "@smithy/fetch-http-handler": "^3.0.2", + "@smithy/hash-node": "^3.0.1", + "@smithy/invalid-dependency": "^3.0.1", + "@smithy/middleware-content-length": "^3.0.1", + "@smithy/middleware-endpoint": "^3.0.2", + "@smithy/middleware-retry": "^3.0.4", + "@smithy/middleware-serde": "^3.0.1", + "@smithy/middleware-stack": "^3.0.1", + "@smithy/node-config-provider": "^3.1.1", + "@smithy/node-http-handler": "^3.0.1", + "@smithy/protocol-http": "^4.0.1", + "@smithy/smithy-client": "^3.1.2", + "@smithy/types": "^3.1.0", + "@smithy/url-parser": "^3.0.1", + "@smithy/util-base64": "^3.0.0", + "@smithy/util-body-length-browser": "^3.0.0", + "@smithy/util-body-length-node": "^3.0.0", + "@smithy/util-defaults-mode-browser": "^3.0.4", + "@smithy/util-defaults-mode-node": "^3.0.4", + "@smithy/util-endpoints": "^2.0.2", + "@smithy/util-middleware": "^3.0.1", + "@smithy/util-retry": "^3.0.1", + "@smithy/util-utf8": "^3.0.0", + "tslib": "^2.6.2" }, "engines": { - "node": ">=4" + "node": ">=16.0.0" } }, - "node_modules/@babel/highlight/node_modules/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, + "node_modules/@aws-sdk/client-sso-oidc": { + "version": "3.606.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso-oidc/-/client-sso-oidc-3.606.0.tgz", + "integrity": "sha512-gL1FHPS6hwgMNS/A+Qh5bUyHOeRVOqdb7c6+i+9gR3wtGvt2lvoSm8w5DhS08Xiiacz2AqYRDEapp0xuyCrbBQ==", + "optional": true, "dependencies": { - "color-name": "1.1.3" + "@aws-crypto/sha256-browser": "5.2.0", + "@aws-crypto/sha256-js": "5.2.0", + "@aws-sdk/core": "3.598.0", + "@aws-sdk/credential-provider-node": "3.600.0", + "@aws-sdk/middleware-host-header": "3.598.0", + "@aws-sdk/middleware-logger": "3.598.0", + "@aws-sdk/middleware-recursion-detection": "3.598.0", + "@aws-sdk/middleware-user-agent": "3.598.0", + "@aws-sdk/region-config-resolver": "3.598.0", + "@aws-sdk/types": "3.598.0", + "@aws-sdk/util-endpoints": "3.598.0", + "@aws-sdk/util-user-agent-browser": "3.598.0", + "@aws-sdk/util-user-agent-node": "3.598.0", + "@smithy/config-resolver": "^3.0.2", + "@smithy/core": "^2.2.1", + "@smithy/fetch-http-handler": "^3.0.2", + "@smithy/hash-node": "^3.0.1", + "@smithy/invalid-dependency": "^3.0.1", + "@smithy/middleware-content-length": "^3.0.1", + "@smithy/middleware-endpoint": "^3.0.2", + "@smithy/middleware-retry": "^3.0.4", + "@smithy/middleware-serde": "^3.0.1", + "@smithy/middleware-stack": "^3.0.1", + "@smithy/node-config-provider": "^3.1.1", + "@smithy/node-http-handler": "^3.0.1", + "@smithy/protocol-http": "^4.0.1", + "@smithy/smithy-client": "^3.1.2", + "@smithy/types": "^3.1.0", + "@smithy/url-parser": "^3.0.1", + "@smithy/util-base64": "^3.0.0", + "@smithy/util-body-length-browser": "^3.0.0", + "@smithy/util-body-length-node": "^3.0.0", + "@smithy/util-defaults-mode-browser": "^3.0.4", + "@smithy/util-defaults-mode-node": "^3.0.4", + "@smithy/util-endpoints": "^2.0.2", + "@smithy/util-middleware": "^3.0.1", + "@smithy/util-retry": "^3.0.1", + "@smithy/util-utf8": "^3.0.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" + }, + "peerDependencies": { + "@aws-sdk/client-sts": "^3.606.0" } }, - "node_modules/@babel/highlight/node_modules/color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", - "dev": true - }, - "node_modules/@babel/highlight/node_modules/has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", - "dev": true, + "node_modules/@aws-sdk/client-sts": { + "version": "3.606.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sts/-/client-sts-3.606.0.tgz", + "integrity": "sha512-b11mAhjrkm3MMiAPoMGcmd6vsaz2120lg8rHG/NZCo9vB1K6Kc7WP+a1Q05TRMseer2egTtpWJfn44aVO97VqA==", + "optional": true, + "dependencies": { + "@aws-crypto/sha256-browser": "5.2.0", + "@aws-crypto/sha256-js": "5.2.0", + "@aws-sdk/client-sso-oidc": "3.606.0", + "@aws-sdk/core": "3.598.0", + "@aws-sdk/credential-provider-node": "3.600.0", + "@aws-sdk/middleware-host-header": "3.598.0", + "@aws-sdk/middleware-logger": "3.598.0", + "@aws-sdk/middleware-recursion-detection": "3.598.0", + "@aws-sdk/middleware-user-agent": "3.598.0", + "@aws-sdk/region-config-resolver": "3.598.0", + "@aws-sdk/types": "3.598.0", + "@aws-sdk/util-endpoints": "3.598.0", + "@aws-sdk/util-user-agent-browser": "3.598.0", + "@aws-sdk/util-user-agent-node": "3.598.0", + "@smithy/config-resolver": "^3.0.2", + "@smithy/core": "^2.2.1", + "@smithy/fetch-http-handler": "^3.0.2", + "@smithy/hash-node": "^3.0.1", + "@smithy/invalid-dependency": "^3.0.1", + "@smithy/middleware-content-length": "^3.0.1", + "@smithy/middleware-endpoint": "^3.0.2", + "@smithy/middleware-retry": "^3.0.4", + "@smithy/middleware-serde": "^3.0.1", + "@smithy/middleware-stack": "^3.0.1", + "@smithy/node-config-provider": "^3.1.1", + "@smithy/node-http-handler": "^3.0.1", + "@smithy/protocol-http": "^4.0.1", + "@smithy/smithy-client": "^3.1.2", + "@smithy/types": "^3.1.0", + "@smithy/url-parser": "^3.0.1", + "@smithy/util-base64": "^3.0.0", + "@smithy/util-body-length-browser": "^3.0.0", + "@smithy/util-body-length-node": "^3.0.0", + "@smithy/util-defaults-mode-browser": "^3.0.4", + "@smithy/util-defaults-mode-node": "^3.0.4", + "@smithy/util-endpoints": "^2.0.2", + "@smithy/util-middleware": "^3.0.1", + "@smithy/util-retry": "^3.0.1", + "@smithy/util-utf8": "^3.0.0", + "tslib": "^2.6.2" + }, "engines": { - "node": ">=4" + "node": ">=16.0.0" } }, - "node_modules/@babel/highlight/node_modules/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, + "node_modules/@aws-sdk/core": { + "version": "3.598.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/core/-/core-3.598.0.tgz", + "integrity": "sha512-HaSjt7puO5Cc7cOlrXFCW0rtA0BM9lvzjl56x0A20Pt+0wxXGeTOZZOkXQIepbrFkV2e/HYukuT9e99vXDm59g==", + "optional": true, "dependencies": { - "has-flag": "^3.0.0" + "@smithy/core": "^2.2.1", + "@smithy/protocol-http": "^4.0.1", + "@smithy/signature-v4": "^3.1.0", + "@smithy/smithy-client": "^3.1.2", + "@smithy/types": "^3.1.0", + "fast-xml-parser": "4.2.5", + "tslib": "^2.6.2" }, "engines": { - "node": ">=4" + "node": ">=16.0.0" } }, - "node_modules/@babel/parser": { - "version": "7.17.9", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.17.9.tgz", - "integrity": "sha512-vqUSBLP8dQHFPdPi9bc5GK9vRkYHJ49fsZdtoJ8EQ8ibpwk5rPKfvNIwChB0KVXcIjcepEBBd2VHC5r9Gy8ueg==", - "bin": { - "parser": "bin/babel-parser.js" + "node_modules/@aws-sdk/credential-provider-cognito-identity": { + "version": "3.606.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-cognito-identity/-/credential-provider-cognito-identity-3.606.0.tgz", + "integrity": "sha512-4wGvXilFLkozs4/dMnn9NvxZbL9oyyReoF9aR3kGUZ0QVO8cCBp/Zkr8IXZifhVBo9/esJdMFnR9lEXR7Yuleg==", + "optional": true, + "dependencies": { + "@aws-sdk/client-cognito-identity": "3.606.0", + "@aws-sdk/types": "3.598.0", + "@smithy/property-provider": "^3.1.1", + "@smithy/types": "^3.1.0", + "tslib": "^2.6.2" }, "engines": { - "node": ">=6.0.0" + "node": ">=16.0.0" } }, - "node_modules/@babel/template": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.16.7.tgz", - "integrity": "sha512-I8j/x8kHUrbYRTUxXrrMbfCa7jxkE7tZre39x3kjr9hvI82cK1FfqLygotcWN5kdPGWcLdWMHpSBavse5tWw3w==", - "dev": true, + "node_modules/@aws-sdk/credential-provider-env": { + "version": "3.598.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-env/-/credential-provider-env-3.598.0.tgz", + "integrity": "sha512-vi1khgn7yXzLCcgSIzQrrtd2ilUM0dWodxj3PQ6BLfP0O+q1imO3hG1nq7DVyJtq7rFHs6+9N8G4mYvTkxby2w==", + "optional": true, "dependencies": { - "@babel/code-frame": "^7.16.7", - "@babel/parser": "^7.16.7", - "@babel/types": "^7.16.7" + "@aws-sdk/types": "3.598.0", + "@smithy/property-provider": "^3.1.1", + "@smithy/types": "^3.1.0", + "tslib": "^2.6.2" }, "engines": { - "node": ">=6.9.0" + "node": ">=16.0.0" } }, - "node_modules/@babel/traverse": { - "version": "7.17.9", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.17.9.tgz", - "integrity": "sha512-PQO8sDIJ8SIwipTPiR71kJQCKQYB5NGImbOviK8K+kg5xkNSYXLBupuX9QhatFowrsvo9Hj8WgArg3W7ijNAQw==", - "dev": true, - "dependencies": { - "@babel/code-frame": "^7.16.7", - "@babel/generator": "^7.17.9", - "@babel/helper-environment-visitor": "^7.16.7", - "@babel/helper-function-name": "^7.17.9", - "@babel/helper-hoist-variables": "^7.16.7", - "@babel/helper-split-export-declaration": "^7.16.7", - "@babel/parser": "^7.17.9", - "@babel/types": "^7.17.0", - "debug": "^4.1.0", - "globals": "^11.1.0" + "node_modules/@aws-sdk/credential-provider-http": { + "version": "3.598.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-http/-/credential-provider-http-3.598.0.tgz", + "integrity": "sha512-N7cIafi4HVlQvEgvZSo1G4T9qb/JMLGMdBsDCT5XkeJrF0aptQWzTFH0jIdZcLrMYvzPcuEyO3yCBe6cy/ba0g==", + "optional": true, + "dependencies": { + "@aws-sdk/types": "3.598.0", + "@smithy/fetch-http-handler": "^3.0.2", + "@smithy/node-http-handler": "^3.0.1", + "@smithy/property-provider": "^3.1.1", + "@smithy/protocol-http": "^4.0.1", + "@smithy/smithy-client": "^3.1.2", + "@smithy/types": "^3.1.0", + "@smithy/util-stream": "^3.0.2", + "tslib": "^2.6.2" }, "engines": { - "node": ">=6.9.0" + "node": ">=16.0.0" } }, - "node_modules/@babel/traverse/node_modules/debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", - "dev": true, + "node_modules/@aws-sdk/credential-provider-ini": { + "version": "3.598.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.598.0.tgz", + "integrity": "sha512-/ppcIVUbRwDIwJDoYfp90X3+AuJo2mvE52Y1t2VSrvUovYn6N4v95/vXj6LS8CNDhz2jvEJYmu+0cTMHdhI6eA==", + "optional": true, "dependencies": { - "ms": "2.1.2" + "@aws-sdk/credential-provider-env": "3.598.0", + "@aws-sdk/credential-provider-http": "3.598.0", + "@aws-sdk/credential-provider-process": "3.598.0", + "@aws-sdk/credential-provider-sso": "3.598.0", + "@aws-sdk/credential-provider-web-identity": "3.598.0", + "@aws-sdk/types": "3.598.0", + "@smithy/credential-provider-imds": "^3.1.1", + "@smithy/property-provider": "^3.1.1", + "@smithy/shared-ini-file-loader": "^3.1.1", + "@smithy/types": "^3.1.0", + "tslib": "^2.6.2" }, "engines": { - "node": ">=6.0" + "node": ">=16.0.0" }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } + "peerDependencies": { + "@aws-sdk/client-sts": "^3.598.0" } }, - "node_modules/@babel/traverse/node_modules/globals": { - "version": "11.12.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", - "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", - "dev": true, + "node_modules/@aws-sdk/credential-provider-node": { + "version": "3.600.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.600.0.tgz", + "integrity": "sha512-1pC7MPMYD45J7yFjA90SxpR0yaSvy+yZiq23aXhAPZLYgJBAxHLu0s0mDCk/piWGPh8+UGur5K0bVdx4B1D5hw==", + "optional": true, + "dependencies": { + "@aws-sdk/credential-provider-env": "3.598.0", + "@aws-sdk/credential-provider-http": "3.598.0", + "@aws-sdk/credential-provider-ini": "3.598.0", + "@aws-sdk/credential-provider-process": "3.598.0", + "@aws-sdk/credential-provider-sso": "3.598.0", + "@aws-sdk/credential-provider-web-identity": "3.598.0", + "@aws-sdk/types": "3.598.0", + "@smithy/credential-provider-imds": "^3.1.1", + "@smithy/property-provider": "^3.1.1", + "@smithy/shared-ini-file-loader": "^3.1.1", + "@smithy/types": "^3.1.0", + "tslib": "^2.6.2" + }, "engines": { - "node": ">=4" + "node": ">=16.0.0" } }, - "node_modules/@babel/traverse/node_modules/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 - }, - "node_modules/@babel/types": { - "version": "7.17.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.17.0.tgz", - "integrity": "sha512-TmKSNO4D5rzhL5bjWFcVHHLETzfQ/AmbKpKPOSjlP0WoHZ6L911fgoOKY4Alp/emzG4cHJdyN49zpgkbXFEHHw==", + "node_modules/@aws-sdk/credential-provider-process": { + "version": "3.598.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-process/-/credential-provider-process-3.598.0.tgz", + "integrity": "sha512-rM707XbLW8huMk722AgjVyxu2tMZee++fNA8TJVNgs1Ma02Wx6bBrfIvlyK0rCcIRb0WdQYP6fe3Xhiu4e8IBA==", + "optional": true, "dependencies": { - "@babel/helper-validator-identifier": "^7.16.7", - "to-fast-properties": "^2.0.0" + "@aws-sdk/types": "3.598.0", + "@smithy/property-provider": "^3.1.1", + "@smithy/shared-ini-file-loader": "^3.1.1", + "@smithy/types": "^3.1.0", + "tslib": "^2.6.2" }, "engines": { - "node": ">=6.9.0" + "node": ">=16.0.0" } }, - "node_modules/@babel/types/node_modules/to-fast-properties": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", - "integrity": "sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4=", + "node_modules/@aws-sdk/credential-provider-sso": { + "version": "3.598.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.598.0.tgz", + "integrity": "sha512-5InwUmrAuqQdOOgxTccRayMMkSmekdLk6s+az9tmikq0QFAHUCtofI+/fllMXSR9iL6JbGYi1940+EUmS4pHJA==", + "optional": true, + "dependencies": { + "@aws-sdk/client-sso": "3.598.0", + "@aws-sdk/token-providers": "3.598.0", + "@aws-sdk/types": "3.598.0", + "@smithy/property-provider": "^3.1.1", + "@smithy/shared-ini-file-loader": "^3.1.1", + "@smithy/types": "^3.1.0", + "tslib": "^2.6.2" + }, "engines": { - "node": ">=4" + "node": ">=16.0.0" } }, - "node_modules/@eslint-community/eslint-utils": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.4.0.tgz", - "integrity": "sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==", - "dev": true, + "node_modules/@aws-sdk/credential-provider-web-identity": { + "version": "3.598.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.598.0.tgz", + "integrity": "sha512-GV5GdiMbz5Tz9JO4NJtRoFXjW0GPEujA0j+5J/B723rTN+REHthJu48HdBKouHGhdzkDWkkh1bu52V02Wprw8w==", + "optional": true, "dependencies": { - "eslint-visitor-keys": "^3.3.0" + "@aws-sdk/types": "3.598.0", + "@smithy/property-provider": "^3.1.1", + "@smithy/types": "^3.1.0", + "tslib": "^2.6.2" }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + "node": ">=16.0.0" }, "peerDependencies": { - "eslint": "^6.0.0 || ^7.0.0 || >=8.0.0" + "@aws-sdk/client-sts": "^3.598.0" } }, - "node_modules/@eslint-community/regexpp": { - "version": "4.9.1", - "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.9.1.tgz", - "integrity": "sha512-Y27x+MBLjXa+0JWDhykM3+JE+il3kHKAEqabfEWq3SDhZjLYb6/BHL/JKFnH3fe207JaXkyDo685Oc2Glt6ifA==", - "dev": true, + "node_modules/@aws-sdk/credential-providers": { + "version": "3.606.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-providers/-/credential-providers-3.606.0.tgz", + "integrity": "sha512-34hswGNDWBFvp4Hi4Gv9DIJ4Ks0Nbg8w3emFsPVHLqqI6X2Wd0hJTf+mi1kMhy/AQXt5LisKLw6wjNIKD2+KGg==", + "optional": true, + "dependencies": { + "@aws-sdk/client-cognito-identity": "3.606.0", + "@aws-sdk/client-sso": "3.598.0", + "@aws-sdk/client-sts": "3.606.0", + "@aws-sdk/credential-provider-cognito-identity": "3.606.0", + "@aws-sdk/credential-provider-env": "3.598.0", + "@aws-sdk/credential-provider-http": "3.598.0", + "@aws-sdk/credential-provider-ini": "3.598.0", + "@aws-sdk/credential-provider-node": "3.600.0", + "@aws-sdk/credential-provider-process": "3.598.0", + "@aws-sdk/credential-provider-sso": "3.598.0", + "@aws-sdk/credential-provider-web-identity": "3.598.0", + "@aws-sdk/types": "3.598.0", + "@smithy/credential-provider-imds": "^3.1.1", + "@smithy/property-provider": "^3.1.1", + "@smithy/types": "^3.1.0", + "tslib": "^2.6.2" + }, "engines": { - "node": "^12.0.0 || ^14.0.0 || >=16.0.0" + "node": ">=16.0.0" } }, - "node_modules/@eslint/eslintrc": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.2.tgz", - "integrity": "sha512-+wvgpDsrB1YqAMdEUCcnTlpfVBH7Vqn6A/NT3D8WVXFIaKMlErPIZT3oCIAVCOtarRpMtelZLqJeU3t7WY6X6g==", - "dev": true, + "node_modules/@aws-sdk/middleware-host-header": { + "version": "3.598.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-host-header/-/middleware-host-header-3.598.0.tgz", + "integrity": "sha512-WiaG059YBQwQraNejLIi0gMNkX7dfPZ8hDIhvMr5aVPRbaHH8AYF3iNSsXYCHvA2Cfa1O9haYXsuMF9flXnCmA==", + "optional": true, "dependencies": { - "ajv": "^6.12.4", - "debug": "^4.3.2", - "espree": "^9.6.0", - "globals": "^13.19.0", - "ignore": "^5.2.0", - "import-fresh": "^3.2.1", - "js-yaml": "^4.1.0", - "minimatch": "^3.1.2", - "strip-json-comments": "^3.1.1" + "@aws-sdk/types": "3.598.0", + "@smithy/protocol-http": "^4.0.1", + "@smithy/types": "^3.1.0", + "tslib": "^2.6.2" }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" + "node": ">=16.0.0" } }, - "node_modules/@eslint/eslintrc/node_modules/argparse": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", - "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", - "dev": true + "node_modules/@aws-sdk/middleware-logger": { + "version": "3.598.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-logger/-/middleware-logger-3.598.0.tgz", + "integrity": "sha512-bxBjf/VYiu3zfu8SYM2S9dQQc3tz5uBAOcPz/Bt8DyyK3GgOpjhschH/2XuUErsoUO1gDJqZSdGOmuHGZQn00Q==", + "optional": true, + "dependencies": { + "@aws-sdk/types": "3.598.0", + "@smithy/types": "^3.1.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" + } }, - "node_modules/@eslint/eslintrc/node_modules/debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", - "dev": true, + "node_modules/@aws-sdk/middleware-recursion-detection": { + "version": "3.598.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-recursion-detection/-/middleware-recursion-detection-3.598.0.tgz", + "integrity": "sha512-vjT9BeFY9FeN0f8hm2l6F53tI0N5bUq6RcDkQXKNabXBnQxKptJRad6oP2X5y3FoVfBLOuDkQgiC2940GIPxtQ==", + "optional": true, "dependencies": { - "ms": "2.1.2" + "@aws-sdk/types": "3.598.0", + "@smithy/protocol-http": "^4.0.1", + "@smithy/types": "^3.1.0", + "tslib": "^2.6.2" }, "engines": { - "node": ">=6.0" + "node": ">=16.0.0" + } + }, + "node_modules/@aws-sdk/middleware-user-agent": { + "version": "3.598.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-user-agent/-/middleware-user-agent-3.598.0.tgz", + "integrity": "sha512-4tjESlHG5B5MdjUaLK7tQs/miUtHbb6deauQx8ryqSBYOhfHVgb1ZnzvQR0bTrhpqUg0WlybSkDaZAICf9xctg==", + "optional": true, + "dependencies": { + "@aws-sdk/types": "3.598.0", + "@aws-sdk/util-endpoints": "3.598.0", + "@smithy/protocol-http": "^4.0.1", + "@smithy/types": "^3.1.0", + "tslib": "^2.6.2" }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } + "engines": { + "node": ">=16.0.0" } }, - "node_modules/@eslint/eslintrc/node_modules/js-yaml": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", - "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", - "dev": true, + "node_modules/@aws-sdk/region-config-resolver": { + "version": "3.598.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/region-config-resolver/-/region-config-resolver-3.598.0.tgz", + "integrity": "sha512-oYXhmTokSav4ytmWleCr3rs/1nyvZW/S0tdi6X7u+dLNL5Jee+uMxWGzgOrWK6wrQOzucLVjS4E/wA11Kv2GTw==", + "optional": true, "dependencies": { - "argparse": "^2.0.1" + "@aws-sdk/types": "3.598.0", + "@smithy/node-config-provider": "^3.1.1", + "@smithy/types": "^3.1.0", + "@smithy/util-config-provider": "^3.0.0", + "@smithy/util-middleware": "^3.0.1", + "tslib": "^2.6.2" }, - "bin": { - "js-yaml": "bin/js-yaml.js" + "engines": { + "node": ">=16.0.0" } }, - "node_modules/@eslint/eslintrc/node_modules/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 - }, - "node_modules/@eslint/eslintrc/node_modules/strip-json-comments": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", - "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", - "dev": true, + "node_modules/@aws-sdk/token-providers": { + "version": "3.598.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/token-providers/-/token-providers-3.598.0.tgz", + "integrity": "sha512-TKY1EVdHVBnZqpyxyTHdpZpa1tUpb6nxVeRNn1zWG8QB5MvH4ALLd/jR+gtmWDNQbIG4cVuBOZFVL8hIYicKTA==", + "optional": true, + "dependencies": { + "@aws-sdk/types": "3.598.0", + "@smithy/property-provider": "^3.1.1", + "@smithy/shared-ini-file-loader": "^3.1.1", + "@smithy/types": "^3.1.0", + "tslib": "^2.6.2" + }, "engines": { - "node": ">=8" + "node": ">=16.0.0" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "peerDependencies": { + "@aws-sdk/client-sso-oidc": "^3.598.0" } }, - "node_modules/@eslint/js": { - "version": "8.51.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.51.0.tgz", - "integrity": "sha512-HxjQ8Qn+4SI3/AFv6sOrDB+g6PpUTDwSJiQqOrnneEk8L71161srI9gjzzZvYVbzHiVg/BvcH95+cK/zfIt4pg==", - "dev": true, + "node_modules/@aws-sdk/types": { + "version": "3.598.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.598.0.tgz", + "integrity": "sha512-742uRl6z7u0LFmZwDrFP6r1wlZcgVPw+/TilluDJmCAR8BgRw3IR+743kUXKBGd8QZDRW2n6v/PYsi/AWCDDMQ==", + "optional": true, + "dependencies": { + "@smithy/types": "^3.1.0", + "tslib": "^2.6.2" + }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + "node": ">=16.0.0" } }, - "node_modules/@fluffy-spoon/substitute": { - "version": "1.208.0", - "resolved": "https://registry.npmjs.org/@fluffy-spoon/substitute/-/substitute-1.208.0.tgz", - "integrity": "sha512-BU5vKRoK4OYlKzDtyg4HbtWnUNLOvV0ntqEZIphz+mq2G0HlVFywwJ7M+FbIcnJVDbUReS01FyL5x8R01r7zBg==", - "dev": true, - "engines": { - "node": ">=10" + "node_modules/@aws-sdk/util-endpoints": { + "version": "3.598.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-endpoints/-/util-endpoints-3.598.0.tgz", + "integrity": "sha512-Qo9UoiVVZxcOEdiOMZg3xb1mzkTxrhd4qSlg5QQrfWPJVx/QOg+Iy0NtGxPtHtVZNHZxohYwDwV/tfsnDSE2gQ==", + "optional": true, + "dependencies": { + "@aws-sdk/types": "3.598.0", + "@smithy/types": "^3.1.0", + "@smithy/util-endpoints": "^2.0.2", + "tslib": "^2.6.2" }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/substitute-js#section-contribute" + "engines": { + "node": ">=16.0.0" } }, - "node_modules/@humanwhocodes/config-array": { - "version": "0.11.11", - "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.11.tgz", - "integrity": "sha512-N2brEuAadi0CcdeMXUkhbZB84eskAc8MEX1By6qEchoVywSgXPIjou4rYsl0V3Hj0ZnuGycGCjdNgockbzeWNA==", - "dev": true, + "node_modules/@aws-sdk/util-locate-window": { + "version": "3.568.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-locate-window/-/util-locate-window-3.568.0.tgz", + "integrity": "sha512-3nh4TINkXYr+H41QaPelCceEB2FXP3fxp93YZXB/kqJvX0U9j0N0Uk45gvsjmEPzG8XxkPEeLIfT2I1M7A6Lig==", + "optional": true, "dependencies": { - "@humanwhocodes/object-schema": "^1.2.1", - "debug": "^4.1.1", - "minimatch": "^3.0.5" + "tslib": "^2.6.2" }, "engines": { - "node": ">=10.10.0" + "node": ">=16.0.0" } }, - "node_modules/@humanwhocodes/config-array/node_modules/debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", - "dev": true, + "node_modules/@aws-sdk/util-user-agent-browser": { + "version": "3.598.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-browser/-/util-user-agent-browser-3.598.0.tgz", + "integrity": "sha512-36Sxo6F+ykElaL1mWzWjlg+1epMpSe8obwhCN1yGE7Js9ywy5U6k6l+A3q3YM9YRbm740sNxncbwLklMvuhTKw==", + "optional": true, "dependencies": { - "ms": "2.1.2" + "@aws-sdk/types": "3.598.0", + "@smithy/types": "^3.1.0", + "bowser": "^2.11.0", + "tslib": "^2.6.2" + } + }, + "node_modules/@aws-sdk/util-user-agent-node": { + "version": "3.598.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.598.0.tgz", + "integrity": "sha512-oyWGcOlfTdzkC6SVplyr0AGh54IMrDxbhg5RxJ5P+V4BKfcDoDcZV9xenUk9NsOi9MuUjxMumb9UJGkDhM1m0A==", + "optional": true, + "dependencies": { + "@aws-sdk/types": "3.598.0", + "@smithy/node-config-provider": "^3.1.1", + "@smithy/types": "^3.1.0", + "tslib": "^2.6.2" }, "engines": { - "node": ">=6.0" + "node": ">=16.0.0" + }, + "peerDependencies": { + "aws-crt": ">=1.0.0" }, "peerDependenciesMeta": { - "supports-color": { + "aws-crt": { "optional": true } } }, - "node_modules/@humanwhocodes/config-array/node_modules/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 - }, - "node_modules/@humanwhocodes/module-importer": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", - "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==", + "node_modules/@babel/code-frame": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.24.7.tgz", + "integrity": "sha512-BcYH1CVJBO9tvyIZ2jVeXgSIMvGZ2FDRvDdOIVQyuklNKSsx+eppDEBq/g47Ayw+RqNFE+URvOShmf+f/qwAlA==", "dev": true, - "engines": { - "node": ">=12.22" + "dependencies": { + "@babel/highlight": "^7.24.7", + "picocolors": "^1.0.0" }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/nzakas" + "engines": { + "node": ">=6.9.0" } }, - "node_modules/@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 - }, - "node_modules/@isaacs/cliui": { - "version": "8.0.2", - "resolved": "https://registry.npmjs.org/@isaacs/cliui/-/cliui-8.0.2.tgz", - "integrity": "sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==", + "node_modules/@babel/generator": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.24.7.tgz", + "integrity": "sha512-oipXieGC3i45Y1A41t4tAqpnEZWgB/lC6Ehh6+rOviR5XWpTtMmLN+fGjz9vOiNRt0p6RtO6DtD0pdU3vpqdSA==", "dev": true, "dependencies": { - "string-width": "^5.1.2", - "string-width-cjs": "npm:string-width@^4.2.0", - "strip-ansi": "^7.0.1", - "strip-ansi-cjs": "npm:strip-ansi@^6.0.1", - "wrap-ansi": "^8.1.0", - "wrap-ansi-cjs": "npm:wrap-ansi@^7.0.0" + "@babel/types": "^7.24.7", + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.25", + "jsesc": "^2.5.1" }, "engines": { - "node": ">=12" + "node": ">=6.9.0" } }, - "node_modules/@isaacs/cliui/node_modules/ansi-regex": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", - "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==", + "node_modules/@babel/helper-environment-visitor": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.24.7.tgz", + "integrity": "sha512-DoiN84+4Gnd0ncbBOM9AZENV4a5ZiL39HYMyZJGZ/AZEykHYdJw0wW3kdcsh9/Kn+BRXHLkkklZ51ecPKmI1CQ==", "dev": true, - "engines": { - "node": ">=12" + "dependencies": { + "@babel/types": "^7.24.7" }, - "funding": { - "url": "https://github.com/chalk/ansi-regex?sponsor=1" - } - }, - "node_modules/@isaacs/cliui/node_modules/ansi-styles": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz", - "integrity": "sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==", - "dev": true, "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" + "node": ">=6.9.0" } }, - "node_modules/@isaacs/cliui/node_modules/emoji-regex": { - "version": "9.2.2", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", - "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==", - "dev": true - }, - "node_modules/@isaacs/cliui/node_modules/string-width": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz", - "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==", + "node_modules/@babel/helper-function-name": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.24.7.tgz", + "integrity": "sha512-FyoJTsj/PEUWu1/TYRiXTIHc8lbw+TDYkZuoE43opPS5TrI7MyONBE1oNvfguEXAD9yhQRrVBnXdXzSLQl9XnA==", "dev": true, "dependencies": { - "eastasianwidth": "^0.2.0", - "emoji-regex": "^9.2.2", - "strip-ansi": "^7.0.1" + "@babel/template": "^7.24.7", + "@babel/types": "^7.24.7" }, "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=6.9.0" } }, - "node_modules/@isaacs/cliui/node_modules/strip-ansi": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz", - "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==", + "node_modules/@babel/helper-hoist-variables": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.24.7.tgz", + "integrity": "sha512-MJJwhkoGy5c4ehfoRyrJ/owKeMl19U54h27YYftT0o2teQ3FJ3nQUf/I3LlJsX4l3qlw7WRXUmiyajvHXoTubQ==", "dev": true, "dependencies": { - "ansi-regex": "^6.0.1" + "@babel/types": "^7.24.7" }, "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/strip-ansi?sponsor=1" + "node": ">=6.9.0" } }, - "node_modules/@isaacs/cliui/node_modules/wrap-ansi": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-8.1.0.tgz", - "integrity": "sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==", + "node_modules/@babel/helper-split-export-declaration": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.24.7.tgz", + "integrity": "sha512-oy5V7pD+UvfkEATUKvIjvIAH/xCzfsFVw7ygW2SI6NClZzquT+mwdTfgfdbUiceh6iQO0CHtCPsyze/MZ2YbAA==", "dev": true, "dependencies": { - "ansi-styles": "^6.1.0", - "string-width": "^5.0.1", - "strip-ansi": "^7.0.1" + "@babel/types": "^7.24.7" }, "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + "node": ">=6.9.0" } }, - "node_modules/@mongodb-js/saslprep": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/@mongodb-js/saslprep/-/saslprep-1.1.4.tgz", - "integrity": "sha512-8zJ8N1x51xo9hwPh6AWnKdLGEC5N3lDa6kms1YHmFBoRhTpJR6HG8wWk0td1MVCu9cD4YBrvjZEtd5Obw0Fbnw==", - "dev": true, - "optional": true, - "dependencies": { - "sparse-bitfield": "^3.0.3" + "node_modules/@babel/helper-string-parser": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.24.7.tgz", + "integrity": "sha512-7MbVt6xrwFQbunH2DNQsAP5sTGxfqQtErvBIvIMi6EQnbgUOuVYanvREcmFrOPhoXBrTtjhhP+lW+o5UfK+tDg==", + "engines": { + "node": ">=6.9.0" } }, - "node_modules/@ngageoint/geopackage": { - "version": "4.2.6", - "resolved": "https://registry.npmjs.org/@ngageoint/geopackage/-/geopackage-4.2.6.tgz", - "integrity": "sha512-HT0WAhAySTv+p462SUkvOKlXoPWDI6LETdBqNl0mC55YxE7PSvPByRIh3r/ajqSirhJeydaoN2wCw0nw+es2bA==", - "dependencies": { - "@turf/bbox": "6.3.0", - "@turf/boolean-clockwise": "6.5.0", - "@turf/boolean-point-in-polygon": "6.5.0", - "@turf/boolean-within": "6.5.0", - "@turf/distance": "6.5.0", - "@turf/helpers": "6.5.0", - "@turf/intersect": "6.5.0", - "@turf/line-intersect": "6.5.0", - "@turf/point-to-line-distance": "6.5.0", - "@turf/polygon-to-line": "6.5.0", - "@types/geojson": "7946.0.8", - "@types/proj4": "2.5.2", - "file-type": "^16.5.4", - "image-size": "0.8.3", - "lodash": "4.17.21", - "proj4": "2.8.0", - "reproject": "1.2.5", - "rtree-sql.js": "1.7.0", - "simplify-js": "1.2.4", - "webworkify": "1.5.0", - "wkx": "0.4.8" - }, - "bin": { - "geopackage": "cli" - }, - "optionalDependencies": { - "better-sqlite3": "^9.1.1", - "chalk": "4.1.1", - "inquirer": "8.0.0" + "node_modules/@babel/helper-validator-identifier": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.24.7.tgz", + "integrity": "sha512-rR+PBcQ1SMQDDyF6X0wxtG8QyLCgUB0eRAGguqRLfkCA87l7yAP7ehq8SNj96OOGTO8OBV70KhuFYcIkHXOg0w==", + "engines": { + "node": ">=6.9.0" } }, - "node_modules/@ngageoint/geopackage/node_modules/better-sqlite3": { - "version": "9.6.0", - "resolved": "https://registry.npmjs.org/better-sqlite3/-/better-sqlite3-9.6.0.tgz", - "integrity": "sha512-yR5HATnqeYNVnkaUTf4bOP2dJSnyhP4puJN/QPRyx4YkBEEUxib422n2XzPqDEHjQQqazoYoADdAm5vE15+dAQ==", - "hasInstallScript": true, - "optional": true, + "node_modules/@babel/highlight": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.24.7.tgz", + "integrity": "sha512-EStJpq4OuY8xYfhGVXngigBJRWxftKX9ksiGDnmlY3o7B/V7KIAc9X4oiK87uPJSc/vs5L869bem5fhZa8caZw==", + "dev": true, "dependencies": { - "bindings": "^1.5.0", - "prebuild-install": "^7.1.1" + "@babel/helper-validator-identifier": "^7.24.7", + "chalk": "^2.4.2", + "js-tokens": "^4.0.0", + "picocolors": "^1.0.0" + }, + "engines": { + "node": ">=6.9.0" } }, - "node_modules/@node-saml/node-saml": { - "version": "4.0.5", - "resolved": "https://registry.npmjs.org/@node-saml/node-saml/-/node-saml-4.0.5.tgz", - "integrity": "sha512-J5DglElbY1tjOuaR1NPtjOXkXY5bpUhDoKVoeucYN98A3w4fwgjIOPqIGcb6cQsqFq2zZ6vTCeKn5C/hvefSaw==", + "node_modules/@babel/highlight/node_modules/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, "dependencies": { - "@types/debug": "^4.1.7", - "@types/passport": "^1.0.11", - "@types/xml-crypto": "^1.4.2", - "@types/xml-encryption": "^1.2.1", - "@types/xml2js": "^0.4.11", - "@xmldom/xmldom": "^0.8.6", - "debug": "^4.3.4", - "xml-crypto": "^3.0.1", - "xml-encryption": "^3.0.2", - "xml2js": "^0.5.0", - "xmlbuilder": "^15.1.1" + "color-convert": "^1.9.0" }, "engines": { - "node": ">= 14" + "node": ">=4" } }, - "node_modules/@node-saml/node-saml/node_modules/debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "node_modules/@babel/highlight/node_modules/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, "dependencies": { - "ms": "2.1.2" + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" }, "engines": { - "node": ">=6.0" - }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } + "node": ">=4" } }, - "node_modules/@node-saml/node-saml/node_modules/ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" - }, - "node_modules/@node-saml/passport-saml": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/@node-saml/passport-saml/-/passport-saml-4.0.4.tgz", - "integrity": "sha512-xFw3gw0yo+K1mzlkW15NeBF7cVpRHN/4vpjmBKzov5YFImCWh/G0LcTZ8krH3yk2/eRPc3Or8LRPudVJBjmYaw==", + "node_modules/@babel/highlight/node_modules/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, "dependencies": { - "@node-saml/node-saml": "^4.0.4", - "@types/express": "^4.17.14", - "@types/passport": "^1.0.11", - "@types/passport-strategy": "^0.2.35", - "passport": "^0.6.0", - "passport-strategy": "^1.0.0" - }, - "engines": { - "node": ">= 14" + "color-name": "1.1.3" } }, - "node_modules/@nodelib/fs.scandir": { - "version": "2.1.5", - "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", - "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", + "node_modules/@babel/highlight/node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", + "dev": true + }, + "node_modules/@babel/highlight/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", "dev": true, - "dependencies": { - "@nodelib/fs.stat": "2.0.5", - "run-parallel": "^1.1.9" - }, "engines": { - "node": ">= 8" + "node": ">=0.8.0" } }, - "node_modules/@nodelib/fs.stat": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", - "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", + "node_modules/@babel/highlight/node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", "dev": true, "engines": { - "node": ">= 8" + "node": ">=4" } }, - "node_modules/@nodelib/fs.walk": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", - "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", + "node_modules/@babel/highlight/node_modules/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, "dependencies": { - "@nodelib/fs.scandir": "2.1.5", - "fastq": "^1.6.0" + "has-flag": "^3.0.0" }, "engines": { - "node": ">= 8" + "node": ">=4" } }, - "node_modules/@oozcitak/dom": { - "version": "1.15.10", - "resolved": "https://registry.npmjs.org/@oozcitak/dom/-/dom-1.15.10.tgz", - "integrity": "sha512-0JT29/LaxVgRcGKvHmSrUTEvZ8BXvZhGl2LASRUgHqDTC1M5g1pLmVv56IYNyt3bG2CUjDkc67wnyZC14pbQrQ==", - "dependencies": { - "@oozcitak/infra": "1.0.8", - "@oozcitak/url": "1.0.4", - "@oozcitak/util": "8.3.8" + "node_modules/@babel/parser": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.24.7.tgz", + "integrity": "sha512-9uUYRm6OqQrCqQdG1iCBwBPZgN8ciDBro2nIOFaiRz1/BCxaI7CNvQbDHvsArAC7Tw9Hda/B3U+6ui9u4HWXPw==", + "bin": { + "parser": "bin/babel-parser.js" }, "engines": { - "node": ">=8.0" + "node": ">=6.0.0" } }, - "node_modules/@oozcitak/infra": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/@oozcitak/infra/-/infra-1.0.8.tgz", - "integrity": "sha512-JRAUc9VR6IGHOL7OGF+yrvs0LO8SlqGnPAMqyzOuFZPSZSXI7Xf2O9+awQPSMXgIWGtgUf/dA6Hs6X6ySEaWTg==", + "node_modules/@babel/template": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.24.7.tgz", + "integrity": "sha512-jYqfPrU9JTF0PmPy1tLYHW4Mp4KlgxJD9l2nP9fD6yT/ICi554DmrWBAEYpIelzjHf1msDP3PxJIRt/nFNfBig==", + "dev": true, "dependencies": { - "@oozcitak/util": "8.3.8" + "@babel/code-frame": "^7.24.7", + "@babel/parser": "^7.24.7", + "@babel/types": "^7.24.7" }, "engines": { - "node": ">=6.0" + "node": ">=6.9.0" } }, - "node_modules/@oozcitak/url": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/@oozcitak/url/-/url-1.0.4.tgz", - "integrity": "sha512-kDcD8y+y3FCSOvnBI6HJgl00viO/nGbQoCINmQ0h98OhnGITrWR3bOGfwYCthgcrV8AnTJz8MzslTQbC3SOAmw==", - "dependencies": { - "@oozcitak/infra": "1.0.8", - "@oozcitak/util": "8.3.8" + "node_modules/@babel/traverse": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.24.7.tgz", + "integrity": "sha512-yb65Ed5S/QAcewNPh0nZczy9JdYXkkAbIsEo+P7BE7yO3txAY30Y/oPa3QkQ5It3xVG2kpKMg9MsdxZaO31uKA==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.24.7", + "@babel/generator": "^7.24.7", + "@babel/helper-environment-visitor": "^7.24.7", + "@babel/helper-function-name": "^7.24.7", + "@babel/helper-hoist-variables": "^7.24.7", + "@babel/helper-split-export-declaration": "^7.24.7", + "@babel/parser": "^7.24.7", + "@babel/types": "^7.24.7", + "debug": "^4.3.1", + "globals": "^11.1.0" }, "engines": { - "node": ">=8.0" + "node": ">=6.9.0" } }, - "node_modules/@oozcitak/util": { - "version": "8.3.8", - "resolved": "https://registry.npmjs.org/@oozcitak/util/-/util-8.3.8.tgz", - "integrity": "sha512-T8TbSnGsxo6TDBJx/Sgv/BlVJL3tshxZP7Aq5R1mSnM5OcHY2dQaxLMu2+E8u3gN0MLOzdjurqN4ZRVuzQycOQ==", + "node_modules/@babel/traverse/node_modules/globals": { + "version": "11.12.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", + "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", + "dev": true, "engines": { - "node": ">=8.0" + "node": ">=4" } }, - "node_modules/@pkgjs/parseargs": { - "version": "0.11.0", - "resolved": "https://registry.npmjs.org/@pkgjs/parseargs/-/parseargs-0.11.0.tgz", - "integrity": "sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==", - "dev": true, - "optional": true, + "node_modules/@babel/types": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.24.7.tgz", + "integrity": "sha512-XEFXSlxiG5td2EJRe8vOmRbaXVgfcBlszKujvVmWIK/UpywWljQCfzAv3RQCGujWQ1RD4YYWEAqDXfuJiy8f5Q==", + "dependencies": { + "@babel/helper-string-parser": "^7.24.7", + "@babel/helper-validator-identifier": "^7.24.7", + "to-fast-properties": "^2.0.0" + }, "engines": { - "node": ">=14" + "node": ">=6.9.0" } }, - "node_modules/@sinonjs/commons": { - "version": "1.8.3", - "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.8.3.tgz", - "integrity": "sha512-xkNcLAn/wZaX14RPlwizcKicDk9G3F8m2nU3L7Ukm5zBgTwiT0wsoFAHx9Jq56fJA1z/7uKGtCRu16sOUCLIHQ==", + "node_modules/@eslint-community/eslint-utils": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.4.0.tgz", + "integrity": "sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==", "dev": true, "dependencies": { - "type-detect": "4.0.8" + "eslint-visitor-keys": "^3.3.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "peerDependencies": { + "eslint": "^6.0.0 || ^7.0.0 || >=8.0.0" } }, - "node_modules/@sinonjs/formatio": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/@sinonjs/formatio/-/formatio-3.2.2.tgz", - "integrity": "sha512-B8SEsgd8gArBLMD6zpRw3juQ2FVSsmdd7qlevyDqzS9WTCtvF55/gAL+h6gue8ZvPYcdiPdvueM/qm//9XzyTQ==", + "node_modules/@eslint-community/regexpp": { + "version": "4.11.0", + "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.11.0.tgz", + "integrity": "sha512-G/M/tIiMrTAxEWRfLfQJMmGNX28IxBg4PBz8XqQhqUHLFI6TL2htpIB1iQCj144V5ee/JaKyT9/WZ0MGZWfA7A==", "dev": true, - "dependencies": { - "@sinonjs/commons": "^1", - "@sinonjs/samsam": "^3.1.0" + "engines": { + "node": "^12.0.0 || ^14.0.0 || >=16.0.0" } }, - "node_modules/@sinonjs/samsam": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/@sinonjs/samsam/-/samsam-3.3.3.tgz", - "integrity": "sha512-bKCMKZvWIjYD0BLGnNrxVuw4dkWCYsLqFOUWw8VgKF/+5Y+mE7LfHWPIYoDXowH+3a9LsWDMo0uAP8YDosPvHQ==", + "node_modules/@eslint/eslintrc": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.4.tgz", + "integrity": "sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ==", "dev": true, "dependencies": { - "@sinonjs/commons": "^1.3.0", - "array-from": "^2.1.1", - "lodash": "^4.17.15" + "ajv": "^6.12.4", + "debug": "^4.3.2", + "espree": "^9.6.0", + "globals": "^13.19.0", + "ignore": "^5.2.0", + "import-fresh": "^3.2.1", + "js-yaml": "^4.1.0", + "minimatch": "^3.1.2", + "strip-json-comments": "^3.1.1" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" } }, - "node_modules/@sinonjs/text-encoding": { - "version": "0.7.1", - "resolved": "https://registry.npmjs.org/@sinonjs/text-encoding/-/text-encoding-0.7.1.tgz", - "integrity": "sha512-+iTbntw2IZPb/anVDbypzfQa+ay64MW0Zo8aJ8gZPWMMK6/OubMVb6lUPMagqjOPnmtauXnFCACVl3O7ogjeqQ==", + "node_modules/@eslint/eslintrc/node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", "dev": true }, - "node_modules/@tokenizer/token": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/@tokenizer/token/-/token-0.3.0.tgz", - "integrity": "sha512-OvjF+z51L3ov0OyAU0duzsYuvO01PH7x4t6DJx+guahgTnBHkhJdG7soQeTSFLWN3efnHyibZ4Z8l2EuWwJN3A==" - }, - "node_modules/@turf/bbox": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/@turf/bbox/-/bbox-6.3.0.tgz", - "integrity": "sha512-N4ue5Xopu1qieSHP2MA/CJGWHPKaTrVXQJjzHRNcY1vtsO126xbSaJhWUrFc5x5vVkXp0dcucGryO0r5m4o/KA==", + "node_modules/@eslint/eslintrc/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, "dependencies": { - "@turf/helpers": "^6.3.0", - "@turf/meta": "^6.3.0" + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" } }, - "node_modules/@turf/bearing": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@turf/bearing/-/bearing-6.5.0.tgz", - "integrity": "sha512-dxINYhIEMzgDOztyMZc20I7ssYVNEpSv04VbMo5YPQsqa80KO3TFvbuCahMsCAW5z8Tncc8dwBlEFrmRjJG33A==", + "node_modules/@eslint/eslintrc/node_modules/js-yaml": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", + "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", + "dev": true, "dependencies": { - "@turf/helpers": "^6.5.0", - "@turf/invariant": "^6.5.0" + "argparse": "^2.0.1" }, - "funding": { - "url": "https://opencollective.com/turf" + "bin": { + "js-yaml": "bin/js-yaml.js" } }, - "node_modules/@turf/boolean-clockwise": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@turf/boolean-clockwise/-/boolean-clockwise-6.5.0.tgz", - "integrity": "sha512-45+C7LC5RMbRWrxh3Z0Eihsc8db1VGBO5d9BLTOAwU4jR6SgsunTfRWR16X7JUwIDYlCVEmnjcXJNi/kIU3VIw==", + "node_modules/@eslint/eslintrc/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, "dependencies": { - "@turf/helpers": "^6.5.0", - "@turf/invariant": "^6.5.0" + "brace-expansion": "^1.1.7" }, - "funding": { - "url": "https://opencollective.com/turf" + "engines": { + "node": "*" } }, - "node_modules/@turf/boolean-point-in-polygon": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@turf/boolean-point-in-polygon/-/boolean-point-in-polygon-6.5.0.tgz", - "integrity": "sha512-DtSuVFB26SI+hj0SjrvXowGTUCHlgevPAIsukssW6BG5MlNSBQAo70wpICBNJL6RjukXg8d2eXaAWuD/CqL00A==", - "dependencies": { - "@turf/helpers": "^6.5.0", - "@turf/invariant": "^6.5.0" + "node_modules/@eslint/js": { + "version": "8.57.1", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.57.1.tgz", + "integrity": "sha512-d9zaMRSTIKDLhctzH12MtXvJKSSUhaHcjV+2Z+GK+EEY7XKpP5yR4x+N3TAcHTcu963nIr+TMcCb4DBCYX1z6Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + } + }, + "node_modules/@fluffy-spoon/substitute": { + "version": "1.208.0", + "resolved": "https://registry.npmjs.org/@fluffy-spoon/substitute/-/substitute-1.208.0.tgz", + "integrity": "sha512-BU5vKRoK4OYlKzDtyg4HbtWnUNLOvV0ntqEZIphz+mq2G0HlVFywwJ7M+FbIcnJVDbUReS01FyL5x8R01r7zBg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" }, "funding": { - "url": "https://opencollective.com/turf" + "type": "opencollective", + "url": "https://opencollective.com/substitute-js#section-contribute" } }, - "node_modules/@turf/boolean-point-on-line": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@turf/boolean-point-on-line/-/boolean-point-on-line-6.5.0.tgz", - "integrity": "sha512-A1BbuQ0LceLHvq7F/P7w3QvfpmZqbmViIUPHdNLvZimFNLo4e6IQunmzbe+8aSStH9QRZm3VOflyvNeXvvpZEQ==", + "node_modules/@humanwhocodes/config-array": { + "version": "0.13.0", + "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.13.0.tgz", + "integrity": "sha512-DZLEEqFWQFiyK6h5YIeynKx7JlvCYWL0cImfSRXZ9l4Sg2efkFGTuFf6vzXjK1cq6IYkU+Eg/JizXw+TD2vRNw==", + "deprecated": "Use @eslint/config-array instead", + "dev": true, + "license": "Apache-2.0", "dependencies": { - "@turf/helpers": "^6.5.0", - "@turf/invariant": "^6.5.0" + "@humanwhocodes/object-schema": "^2.0.3", + "debug": "^4.3.1", + "minimatch": "^3.0.5" }, - "funding": { - "url": "https://opencollective.com/turf" + "engines": { + "node": ">=10.10.0" } }, - "node_modules/@turf/boolean-within": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@turf/boolean-within/-/boolean-within-6.5.0.tgz", - "integrity": "sha512-YQB3oU18Inx35C/LU930D36RAVe7LDXk1kWsQ8mLmuqYn9YdPsDQTMTkLJMhoQ8EbN7QTdy333xRQ4MYgToteQ==", - "dependencies": { - "@turf/bbox": "^6.5.0", - "@turf/boolean-point-in-polygon": "^6.5.0", - "@turf/boolean-point-on-line": "^6.5.0", - "@turf/helpers": "^6.5.0", - "@turf/invariant": "^6.5.0" - }, - "funding": { - "url": "https://opencollective.com/turf" - } - }, - "node_modules/@turf/boolean-within/node_modules/@turf/bbox": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@turf/bbox/-/bbox-6.5.0.tgz", - "integrity": "sha512-RBbLaao5hXTYyyg577iuMtDB8ehxMlUqHEJiMs8jT1GHkFhr6sYre3lmLsPeYEi/ZKj5TP5tt7fkzNdJ4GIVyw==", + "node_modules/@humanwhocodes/config-array/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "license": "MIT", "dependencies": { - "@turf/helpers": "^6.5.0", - "@turf/meta": "^6.5.0" - }, - "funding": { - "url": "https://opencollective.com/turf" + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" } }, - "node_modules/@turf/centroid": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@turf/centroid/-/centroid-6.5.0.tgz", - "integrity": "sha512-MwE1oq5E3isewPprEClbfU5pXljIK/GUOMbn22UM3IFPDJX0KeoyLNwghszkdmFp/qMGL/M13MMWvU+GNLXP/A==", + "node_modules/@humanwhocodes/config-array/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "license": "ISC", "dependencies": { - "@turf/helpers": "^6.5.0", - "@turf/meta": "^6.5.0" + "brace-expansion": "^1.1.7" }, - "funding": { - "url": "https://opencollective.com/turf" + "engines": { + "node": "*" } }, - "node_modules/@turf/clone": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@turf/clone/-/clone-6.5.0.tgz", - "integrity": "sha512-mzVtTFj/QycXOn6ig+annKrM6ZlimreKYz6f/GSERytOpgzodbQyOgkfwru100O1KQhhjSudKK4DsQ0oyi9cTw==", - "dependencies": { - "@turf/helpers": "^6.5.0" + "node_modules/@humanwhocodes/module-importer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", + "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==", + "dev": true, + "engines": { + "node": ">=12.22" }, "funding": { - "url": "https://opencollective.com/turf" + "type": "github", + "url": "https://github.com/sponsors/nzakas" } }, - "node_modules/@turf/distance": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@turf/distance/-/distance-6.5.0.tgz", - "integrity": "sha512-xzykSLfoURec5qvQJcfifw/1mJa+5UwByZZ5TZ8iaqjGYN0vomhV9aiSLeYdUGtYRESZ+DYC/OzY+4RclZYgMg==", + "node_modules/@humanwhocodes/object-schema": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-2.0.3.tgz", + "integrity": "sha512-93zYdMES/c1D69yZiKDBj0V24vqNzB/koF26KPaagAfd3P/4gUlh3Dys5ogAK+Exi9QyzlD8x/08Zt7wIKcDcA==", + "deprecated": "Use @eslint/object-schema instead", + "dev": true, + "license": "BSD-3-Clause" + }, + "node_modules/@isaacs/cliui": { + "version": "8.0.2", + "resolved": "https://registry.npmjs.org/@isaacs/cliui/-/cliui-8.0.2.tgz", + "integrity": "sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==", + "dev": true, "dependencies": { - "@turf/helpers": "^6.5.0", - "@turf/invariant": "^6.5.0" + "string-width": "^5.1.2", + "string-width-cjs": "npm:string-width@^4.2.0", + "strip-ansi": "^7.0.1", + "strip-ansi-cjs": "npm:strip-ansi@^6.0.1", + "wrap-ansi": "^8.1.0", + "wrap-ansi-cjs": "npm:wrap-ansi@^7.0.0" }, - "funding": { - "url": "https://opencollective.com/turf" - } - }, - "node_modules/@turf/helpers": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@turf/helpers/-/helpers-6.5.0.tgz", - "integrity": "sha512-VbI1dV5bLFzohYYdgqwikdMVpe7pJ9X3E+dlr425wa2/sMJqYDhTO++ec38/pcPvPE6oD9WEEeU3Xu3gza+VPw==", - "funding": { - "url": "https://opencollective.com/turf" + "engines": { + "node": ">=12" } }, - "node_modules/@turf/intersect": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@turf/intersect/-/intersect-6.5.0.tgz", - "integrity": "sha512-2legGJeKrfFkzntcd4GouPugoqPUjexPZnOvfez+3SfIMrHvulw8qV8u7pfVyn2Yqs53yoVCEjS5sEpvQ5YRQg==", - "dependencies": { - "@turf/helpers": "^6.5.0", - "@turf/invariant": "^6.5.0", - "polygon-clipping": "^0.15.3" + "node_modules/@isaacs/cliui/node_modules/ansi-regex": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", + "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==", + "dev": true, + "engines": { + "node": ">=12" }, "funding": { - "url": "https://opencollective.com/turf" + "url": "https://github.com/chalk/ansi-regex?sponsor=1" } }, - "node_modules/@turf/invariant": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@turf/invariant/-/invariant-6.5.0.tgz", - "integrity": "sha512-Wv8PRNCtPD31UVbdJE/KVAWKe7l6US+lJItRR/HOEW3eh+U/JwRCSUl/KZ7bmjM/C+zLNoreM2TU6OoLACs4eg==", - "dependencies": { - "@turf/helpers": "^6.5.0" + "node_modules/@isaacs/cliui/node_modules/ansi-styles": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz", + "integrity": "sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==", + "dev": true, + "engines": { + "node": ">=12" }, "funding": { - "url": "https://opencollective.com/turf" + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/@turf/kinks": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@turf/kinks/-/kinks-6.5.0.tgz", - "integrity": "sha512-ViCngdPt1eEL7hYUHR2eHR662GvCgTc35ZJFaNR6kRtr6D8plLaDju0FILeFFWSc+o8e3fwxZEJKmFj9IzPiIQ==", + "node_modules/@isaacs/cliui/node_modules/emoji-regex": { + "version": "9.2.2", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", + "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==", + "dev": true + }, + "node_modules/@isaacs/cliui/node_modules/string-width": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz", + "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==", + "dev": true, "dependencies": { - "@turf/helpers": "^6.5.0" + "eastasianwidth": "^0.2.0", + "emoji-regex": "^9.2.2", + "strip-ansi": "^7.0.1" + }, + "engines": { + "node": ">=12" }, "funding": { - "url": "https://opencollective.com/turf" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@turf/line-intersect": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@turf/line-intersect/-/line-intersect-6.5.0.tgz", - "integrity": "sha512-CS6R1tZvVQD390G9Ea4pmpM6mJGPWoL82jD46y0q1KSor9s6HupMIo1kY4Ny+AEYQl9jd21V3Scz20eldpbTVA==", + "node_modules/@isaacs/cliui/node_modules/strip-ansi": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz", + "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==", + "dev": true, "dependencies": { - "@turf/helpers": "^6.5.0", - "@turf/invariant": "^6.5.0", - "@turf/line-segment": "^6.5.0", - "@turf/meta": "^6.5.0", - "geojson-rbush": "3.x" + "ansi-regex": "^6.0.1" + }, + "engines": { + "node": ">=12" }, "funding": { - "url": "https://opencollective.com/turf" + "url": "https://github.com/chalk/strip-ansi?sponsor=1" } }, - "node_modules/@turf/line-segment": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@turf/line-segment/-/line-segment-6.5.0.tgz", - "integrity": "sha512-jI625Ho4jSuJESNq66Mmi290ZJ5pPZiQZruPVpmHkUw257Pew0alMmb6YrqYNnLUuiVVONxAAKXUVeeUGtycfw==", + "node_modules/@isaacs/cliui/node_modules/wrap-ansi": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-8.1.0.tgz", + "integrity": "sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==", + "dev": true, "dependencies": { - "@turf/helpers": "^6.5.0", - "@turf/invariant": "^6.5.0", - "@turf/meta": "^6.5.0" + "ansi-styles": "^6.1.0", + "string-width": "^5.0.1", + "strip-ansi": "^7.0.1" + }, + "engines": { + "node": ">=12" }, "funding": { - "url": "https://opencollective.com/turf" + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" } }, - "node_modules/@turf/meta": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@turf/meta/-/meta-6.5.0.tgz", - "integrity": "sha512-RrArvtsV0vdsCBegoBtOalgdSOfkBrTJ07VkpiCnq/491W67hnMWmDu7e6Ztw0C3WldRYTXkg3SumfdzZxLBHA==", + "node_modules/@jridgewell/gen-mapping": { + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz", + "integrity": "sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==", + "dev": true, "dependencies": { - "@turf/helpers": "^6.5.0" + "@jridgewell/set-array": "^1.2.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.24" }, - "funding": { - "url": "https://opencollective.com/turf" + "engines": { + "node": ">=6.0.0" } }, - "node_modules/@turf/point-to-line-distance": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@turf/point-to-line-distance/-/point-to-line-distance-6.5.0.tgz", - "integrity": "sha512-opHVQ4vjUhNBly1bob6RWy+F+hsZDH9SA0UW36pIRzfpu27qipU18xup0XXEePfY6+wvhF6yL/WgCO2IbrLqEA==", - "dependencies": { - "@turf/bearing": "^6.5.0", - "@turf/distance": "^6.5.0", - "@turf/helpers": "^6.5.0", - "@turf/invariant": "^6.5.0", - "@turf/meta": "^6.5.0", - "@turf/projection": "^6.5.0", - "@turf/rhumb-bearing": "^6.5.0", - "@turf/rhumb-distance": "^6.5.0" - }, - "funding": { - "url": "https://opencollective.com/turf" + "node_modules/@jridgewell/resolve-uri": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz", + "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==", + "dev": true, + "engines": { + "node": ">=6.0.0" } }, - "node_modules/@turf/polygon-to-line": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@turf/polygon-to-line/-/polygon-to-line-6.5.0.tgz", - "integrity": "sha512-5p4n/ij97EIttAq+ewSnKt0ruvuM+LIDzuczSzuHTpq4oS7Oq8yqg5TQ4nzMVuK41r/tALCk7nAoBuw3Su4Gcw==", - "dependencies": { - "@turf/helpers": "^6.5.0", - "@turf/invariant": "^6.5.0" - }, - "funding": { - "url": "https://opencollective.com/turf" + "node_modules/@jridgewell/set-array": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.2.1.tgz", + "integrity": "sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==", + "dev": true, + "engines": { + "node": ">=6.0.0" } }, - "node_modules/@turf/projection": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@turf/projection/-/projection-6.5.0.tgz", - "integrity": "sha512-/Pgh9mDvQWWu8HRxqpM+tKz8OzgauV+DiOcr3FCjD6ubDnrrmMJlsf6fFJmggw93mtVPrZRL6yyi9aYCQBOIvg==", + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.4.15", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz", + "integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==", + "dev": true + }, + "node_modules/@jridgewell/trace-mapping": { + "version": "0.3.25", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz", + "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==", + "dev": true, "dependencies": { - "@turf/clone": "^6.5.0", - "@turf/helpers": "^6.5.0", - "@turf/meta": "^6.5.0" - }, - "funding": { - "url": "https://opencollective.com/turf" + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" } }, - "node_modules/@turf/rhumb-bearing": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@turf/rhumb-bearing/-/rhumb-bearing-6.5.0.tgz", - "integrity": "sha512-jMyqiMRK4hzREjQmnLXmkJ+VTNTx1ii8vuqRwJPcTlKbNWfjDz/5JqJlb5NaFDcdMpftWovkW5GevfnuzHnOYA==", + "node_modules/@mongodb-js/saslprep": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/@mongodb-js/saslprep/-/saslprep-1.1.7.tgz", + "integrity": "sha512-dCHW/oEX0KJ4NjDULBo3JiOaK5+6axtpBbS+ao2ZInoAL9/YRQLhXzSNAFz7hP4nzLkIqsfYAK/PDE3+XHny0Q==", + "optional": true, "dependencies": { - "@turf/helpers": "^6.5.0", - "@turf/invariant": "^6.5.0" - }, - "funding": { - "url": "https://opencollective.com/turf" + "sparse-bitfield": "^3.0.3" } }, - "node_modules/@turf/rhumb-distance": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@turf/rhumb-distance/-/rhumb-distance-6.5.0.tgz", - "integrity": "sha512-oKp8KFE8E4huC2Z1a1KNcFwjVOqa99isxNOwfo4g3SUABQ6NezjKDDrnvC4yI5YZ3/huDjULLBvhed45xdCrzg==", + "node_modules/@ngageoint/geopackage": { + "version": "4.2.6", + "resolved": "https://registry.npmjs.org/@ngageoint/geopackage/-/geopackage-4.2.6.tgz", + "integrity": "sha512-HT0WAhAySTv+p462SUkvOKlXoPWDI6LETdBqNl0mC55YxE7PSvPByRIh3r/ajqSirhJeydaoN2wCw0nw+es2bA==", "dependencies": { - "@turf/helpers": "^6.5.0", - "@turf/invariant": "^6.5.0" + "@turf/bbox": "6.3.0", + "@turf/boolean-clockwise": "6.5.0", + "@turf/boolean-point-in-polygon": "6.5.0", + "@turf/boolean-within": "6.5.0", + "@turf/distance": "6.5.0", + "@turf/helpers": "6.5.0", + "@turf/intersect": "6.5.0", + "@turf/line-intersect": "6.5.0", + "@turf/point-to-line-distance": "6.5.0", + "@turf/polygon-to-line": "6.5.0", + "@types/geojson": "7946.0.8", + "@types/proj4": "2.5.2", + "file-type": "^16.5.4", + "image-size": "0.8.3", + "lodash": "4.17.21", + "proj4": "2.8.0", + "reproject": "1.2.5", + "rtree-sql.js": "1.7.0", + "simplify-js": "1.2.4", + "webworkify": "1.5.0", + "wkx": "0.4.8" }, - "funding": { - "url": "https://opencollective.com/turf" + "bin": { + "geopackage": "cli" + }, + "optionalDependencies": { + "better-sqlite3": "^9.1.1", + "chalk": "4.1.1", + "inquirer": "8.0.0" } }, - "node_modules/@types/archiver": { - "version": "5.3.4", - "resolved": "https://registry.npmjs.org/@types/archiver/-/archiver-5.3.4.tgz", - "integrity": "sha512-Lj7fLBIMwYFgViVVZHEdExZC3lVYsl+QL0VmdNdIzGZH544jHveYWij6qdnBgJQDnR7pMKliN9z2cPZFEbhyPw==", - "dev": true, + "node_modules/@ngageoint/geopackage/node_modules/@types/geojson": { + "version": "7946.0.8", + "resolved": "https://registry.npmjs.org/@types/geojson/-/geojson-7946.0.8.tgz", + "integrity": "sha512-1rkryxURpr6aWP7R786/UQOkJ3PcpQiWkAXBmdWc7ryFWqN6a4xfK7BtjXvFBKO9LjQ+MWQSWxYeZX1OApnArA==" + }, + "node_modules/@ngageoint/geopackage/node_modules/better-sqlite3": { + "version": "9.6.0", + "resolved": "https://registry.npmjs.org/better-sqlite3/-/better-sqlite3-9.6.0.tgz", + "integrity": "sha512-yR5HATnqeYNVnkaUTf4bOP2dJSnyhP4puJN/QPRyx4YkBEEUxib422n2XzPqDEHjQQqazoYoADdAm5vE15+dAQ==", + "hasInstallScript": true, + "license": "MIT", + "optional": true, "dependencies": { - "@types/readdir-glob": "*" + "bindings": "^1.5.0", + "prebuild-install": "^7.1.1" } }, - "node_modules/@types/async": { - "version": "3.2.12", - "resolved": "https://registry.npmjs.org/@types/async/-/async-3.2.12.tgz", - "integrity": "sha512-4i4w4tfNDo73BOjk0qHcB2YJ8A2SjITCrU4BTsgdJFTsVr6atPDXa0T9r0QZTrX3axtWwkqpZqF4B3gR0TqBGw==", - "dev": true - }, - "node_modules/@types/body-parser": { - "version": "1.19.2", - "resolved": "https://registry.npmjs.org/@types/body-parser/-/body-parser-1.19.2.tgz", - "integrity": "sha512-ALYone6pm6QmwZoAgeyNksccT9Q4AWZQ6PvfwR37GT6r6FWUPguq6sUmNGSMV2Wr761oQoBxwGGa6DR5o1DC9g==", + "node_modules/@ngageoint/geopackage/node_modules/wkx": { + "version": "0.4.8", + "resolved": "https://registry.npmjs.org/wkx/-/wkx-0.4.8.tgz", + "integrity": "sha512-ikPXMM9IR/gy/LwiOSqWlSL3X/J5uk9EO2hHNRXS41eTLXaUFEVw9fn/593jW/tE5tedNg8YjT5HkCa4FqQZyQ==", + "license": "MIT", "dependencies": { - "@types/connect": "*", "@types/node": "*" } }, - "node_modules/@types/bson": { - "version": "1.0.11", - "resolved": "https://registry.npmjs.org/@types/bson/-/bson-1.0.11.tgz", - "integrity": "sha512-j+UcCWI+FsbI5/FQP/Kj2CXyplWAz39ktHFkXk84h7dNblKRSoNJs95PZFRd96NQGqsPEPgeclqnznWZr14ZDA==", - "dev": true, + "node_modules/@ngageoint/mongodb-migrations": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@ngageoint/mongodb-migrations/-/mongodb-migrations-1.0.0.tgz", + "integrity": "sha512-SOjJk+xuPfMmevyZOhRCm3odFFW//zg8tKSkiKfgAslMIaZUII6rbrBQRjBPqyFewqg/dabY4xYnXelZSY7/cw==", "dependencies": { - "@types/node": "*" + "bluebird": "^3.7.2", + "coffeescript": "^2.7.0", + "lodash": "^4.17.21", + "mkdirp": "^0.5.6", + "mongodb": "^4.8.1", + "nomnom": "^1.8.1" + }, + "bin": { + "mm": "bin/mm" } }, - "node_modules/@types/busboy": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/@types/busboy/-/busboy-1.5.0.tgz", - "integrity": "sha512-ncOOhwmyFDW76c/Tuvv9MA9VGYUCn8blzyWmzYELcNGDb0WXWLSmFi7hJq25YdRBYJrmMBB5jZZwUjlJe9HCjQ==", - "dev": true, + "node_modules/@node-saml/node-saml": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/@node-saml/node-saml/-/node-saml-4.0.5.tgz", + "integrity": "sha512-J5DglElbY1tjOuaR1NPtjOXkXY5bpUhDoKVoeucYN98A3w4fwgjIOPqIGcb6cQsqFq2zZ6vTCeKn5C/hvefSaw==", "dependencies": { - "@types/node": "*" + "@types/debug": "^4.1.7", + "@types/passport": "^1.0.11", + "@types/xml-crypto": "^1.4.2", + "@types/xml-encryption": "^1.2.1", + "@types/xml2js": "^0.4.11", + "@xmldom/xmldom": "^0.8.6", + "debug": "^4.3.4", + "xml-crypto": "^3.0.1", + "xml-encryption": "^3.0.2", + "xml2js": "^0.5.0", + "xmlbuilder": "^15.1.1" + }, + "engines": { + "node": ">= 14" } }, - "node_modules/@types/chai": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/@types/chai/-/chai-4.3.0.tgz", - "integrity": "sha512-/ceqdqeRraGolFTcfoXNiqjyQhZzbINDngeoAq9GoHa8PPK1yNzTaxWjA6BFWp5Ua9JpXEMSS4s5i9tS0hOJtw==", - "dev": true + "node_modules/@node-saml/node-saml/node_modules/@xmldom/xmldom": { + "version": "0.8.10", + "resolved": "https://registry.npmjs.org/@xmldom/xmldom/-/xmldom-0.8.10.tgz", + "integrity": "sha512-2WALfTl4xo2SkGCYRt6rDTFfk9R1czmBvUQy12gK2KuRKIpWEhcbbzy8EZXtz/jkRqHX8bFEc6FC1HjX4TUWYw==", + "license": "MIT", + "engines": { + "node": ">=10.0.0" + } }, - "node_modules/@types/chai-as-promised": { - "version": "7.1.5", - "resolved": "https://registry.npmjs.org/@types/chai-as-promised/-/chai-as-promised-7.1.5.tgz", - "integrity": "sha512-jStwss93SITGBwt/niYrkf2C+/1KTeZCZl1LaeezTlqppAKeoQC7jxyqYuP72sxBGKCIbw7oHgbYssIRzT5FCQ==", - "dev": true, + "node_modules/@node-saml/passport-saml": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/@node-saml/passport-saml/-/passport-saml-4.0.4.tgz", + "integrity": "sha512-xFw3gw0yo+K1mzlkW15NeBF7cVpRHN/4vpjmBKzov5YFImCWh/G0LcTZ8krH3yk2/eRPc3Or8LRPudVJBjmYaw==", "dependencies": { - "@types/chai": "*" + "@node-saml/node-saml": "^4.0.4", + "@types/express": "^4.17.14", + "@types/passport": "^1.0.11", + "@types/passport-strategy": "^0.2.35", + "passport": "^0.6.0", + "passport-strategy": "^1.0.0" + }, + "engines": { + "node": ">= 14" } }, - "node_modules/@types/connect": { - "version": "3.4.35", - "resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.35.tgz", - "integrity": "sha512-cdeYyv4KWoEgpBISTxWvqYsVy444DOqehiF3fM3ne10AmJ62RSyNkUnxMJXHQWRQQX2eR94m5y1IZyDwBjV9FQ==", + "node_modules/@node-saml/passport-saml/node_modules/passport": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/passport/-/passport-0.6.0.tgz", + "integrity": "sha512-0fe+p3ZnrWRW74fe8+SvCyf4a3Pb2/h7gFkQ8yTJpAO50gDzlfjZUZTO1k5Eg9kUct22OxHLqDZoKUWRHOh9ug==", + "license": "MIT", "dependencies": { - "@types/node": "*" + "passport-strategy": "1.x.x", + "pause": "0.0.1", + "utils-merge": "^1.0.1" + }, + "engines": { + "node": ">= 0.4.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/jaredhanson" } }, - "node_modules/@types/cookiejar": { + "node_modules/@nodelib/fs.scandir": { "version": "2.1.5", - "resolved": "https://registry.npmjs.org/@types/cookiejar/-/cookiejar-2.1.5.tgz", - "integrity": "sha512-he+DHOWReW0nghN24E1WUqM0efK4kI9oTqDm6XmK8ZPe2djZ90BSNdGnIyCLzCPw7/pogPlGbzI2wHGGmi4O/Q==", - "dev": true - }, - "node_modules/@types/debug": { - "version": "4.1.9", - "resolved": "https://registry.npmjs.org/@types/debug/-/debug-4.1.9.tgz", - "integrity": "sha512-8Hz50m2eoS56ldRlepxSBa6PWEVCtzUo/92HgLc2qTMnotJNIm7xP+UZhyWoYsyOdd5dxZ+NZLb24rsKyFs2ow==", + "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", + "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", + "dev": true, "dependencies": { - "@types/ms": "*" + "@nodelib/fs.stat": "2.0.5", + "run-parallel": "^1.1.9" + }, + "engines": { + "node": ">= 8" } }, - "node_modules/@types/deep-equal": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@types/deep-equal/-/deep-equal-1.0.1.tgz", - "integrity": "sha512-mMUu4nWHLBlHtxXY17Fg6+ucS/MnndyOWyOe7MmwkoMYxvfQU2ajtRaEvqSUv+aVkMqH/C0NCI8UoVfRNQ10yg==", - "dev": true + "node_modules/@nodelib/fs.stat": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", + "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", + "dev": true, + "engines": { + "node": ">= 8" + } }, - "node_modules/@types/express": { - "version": "4.17.21", - "resolved": "https://registry.npmjs.org/@types/express/-/express-4.17.21.tgz", - "integrity": "sha512-ejlPM315qwLpaQlQDTjPdsUFSc6ZsP4AN6AlWnogPjQ7CVi7PYF3YVz+CY3jE2pwYf7E/7HlDAN0rV2GxTG0HQ==", + "node_modules/@nodelib/fs.walk": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", + "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", + "dev": true, "dependencies": { - "@types/body-parser": "*", - "@types/express-serve-static-core": "^4.17.33", - "@types/qs": "*", - "@types/serve-static": "*" + "@nodelib/fs.scandir": "2.1.5", + "fastq": "^1.6.0" + }, + "engines": { + "node": ">= 8" } }, - "node_modules/@types/express-serve-static-core": { - "version": "4.17.37", - "resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.17.37.tgz", - "integrity": "sha512-ZohaCYTgGFcOP7u6aJOhY9uIZQgZ2vxC2yWoArY+FeDXlqeH66ZVBjgvg+RLVAS/DWNq4Ap9ZXu1+SUQiiWYMg==", + "node_modules/@oozcitak/dom": { + "version": "1.15.10", + "resolved": "https://registry.npmjs.org/@oozcitak/dom/-/dom-1.15.10.tgz", + "integrity": "sha512-0JT29/LaxVgRcGKvHmSrUTEvZ8BXvZhGl2LASRUgHqDTC1M5g1pLmVv56IYNyt3bG2CUjDkc67wnyZC14pbQrQ==", "dependencies": { - "@types/node": "*", - "@types/qs": "*", - "@types/range-parser": "*", - "@types/send": "*" + "@oozcitak/infra": "1.0.8", + "@oozcitak/url": "1.0.4", + "@oozcitak/util": "8.3.8" + }, + "engines": { + "node": ">=8.0" } }, - "node_modules/@types/fs-extra": { - "version": "8.1.2", - "resolved": "https://registry.npmjs.org/@types/fs-extra/-/fs-extra-8.1.2.tgz", - "integrity": "sha512-SvSrYXfWSc7R4eqnOzbQF4TZmfpNSM9FrSWLU3EUnWBuyZqNBOrv1B1JA3byUDPUl9z4Ab3jeZG2eDdySlgNMg==", - "dev": true, + "node_modules/@oozcitak/infra": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/@oozcitak/infra/-/infra-1.0.8.tgz", + "integrity": "sha512-JRAUc9VR6IGHOL7OGF+yrvs0LO8SlqGnPAMqyzOuFZPSZSXI7Xf2O9+awQPSMXgIWGtgUf/dA6Hs6X6ySEaWTg==", "dependencies": { - "@types/node": "*" + "@oozcitak/util": "8.3.8" + }, + "engines": { + "node": ">=6.0" } }, - "node_modules/@types/geojson": { - "version": "7946.0.8", - "resolved": "https://registry.npmjs.org/@types/geojson/-/geojson-7946.0.8.tgz", - "integrity": "sha512-1rkryxURpr6aWP7R786/UQOkJ3PcpQiWkAXBmdWc7ryFWqN6a4xfK7BtjXvFBKO9LjQ+MWQSWxYeZX1OApnArA==" + "node_modules/@oozcitak/url": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/@oozcitak/url/-/url-1.0.4.tgz", + "integrity": "sha512-kDcD8y+y3FCSOvnBI6HJgl00viO/nGbQoCINmQ0h98OhnGITrWR3bOGfwYCthgcrV8AnTJz8MzslTQbC3SOAmw==", + "dependencies": { + "@oozcitak/infra": "1.0.8", + "@oozcitak/util": "8.3.8" + }, + "engines": { + "node": ">=8.0" + } }, - "node_modules/@types/json-schema": { - "version": "7.0.13", - "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.13.tgz", - "integrity": "sha512-RbSSoHliUbnXj3ny0CNFOoxrIDV6SUGyStHsvDqosw6CkdPV8TtWGlfecuK4ToyMEAql6pzNxgCFKanovUzlgQ==" + "node_modules/@oozcitak/util": { + "version": "8.3.8", + "resolved": "https://registry.npmjs.org/@oozcitak/util/-/util-8.3.8.tgz", + "integrity": "sha512-T8TbSnGsxo6TDBJx/Sgv/BlVJL3tshxZP7Aq5R1mSnM5OcHY2dQaxLMu2+E8u3gN0MLOzdjurqN4ZRVuzQycOQ==", + "engines": { + "node": ">=8.0" + } }, - "node_modules/@types/json2csv": { - "version": "4.5.1", - "resolved": "https://registry.npmjs.org/@types/json2csv/-/json2csv-4.5.1.tgz", - "integrity": "sha512-sZbRdrTddxYzhydkC5eMEbRXU8pjcV8Zyxf2If7YO3GVxWY18fs0P5YJyjRfkMKTAsA8ynTRQWhvWbHhBzBFVA==", + "node_modules/@pkgjs/parseargs": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/@pkgjs/parseargs/-/parseargs-0.11.0.tgz", + "integrity": "sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==", "dev": true, - "dependencies": { - "@types/node": "*" + "optional": true, + "engines": { + "node": ">=14" } }, - "node_modules/@types/ldapjs": { - "version": "2.2.5", - "resolved": "https://registry.npmjs.org/@types/ldapjs/-/ldapjs-2.2.5.tgz", - "integrity": "sha512-Lv/nD6QDCmcT+V1vaTRnEKE8UgOilVv5pHcQuzkU1LcRe4mbHHuUo/KHi0LKrpdHhQY8FJzryF38fcVdeUIrzg==", + "node_modules/@sinonjs/commons": { + "version": "1.8.6", + "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.8.6.tgz", + "integrity": "sha512-Ky+XkAkqPZSm3NLBeUng77EBQl3cmeJhITaGHdYH8kjVB+aun3S4XBRti2zt17mtt0mIUDiNxYeoJm6drVvBJQ==", + "dev": true, "dependencies": { - "@types/node": "*" + "type-detect": "4.0.8" } }, - "node_modules/@types/lodash": { - "version": "4.14.181", - "resolved": "https://registry.npmjs.org/@types/lodash/-/lodash-4.14.181.tgz", - "integrity": "sha512-n3tyKthHJbkiWhDZs3DkhkCzt2MexYHXlX0td5iMplyfwketaOeKboEVBqzceH7juqvEg3q5oUoBFxSLu7zFag==", - "dev": true - }, - "node_modules/@types/methods": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/@types/methods/-/methods-1.1.4.tgz", - "integrity": "sha512-ymXWVrDiCxTBE3+RIrrP533E70eA+9qu7zdWoHuOmGujkYtzf4HQF96b8nwHLqhuf4ykX61IGRIB38CC6/sImQ==", - "dev": true - }, - "node_modules/@types/mime": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/@types/mime/-/mime-1.3.2.tgz", - "integrity": "sha512-YATxVxgRqNH6nHEIsvg6k2Boc1JHI9ZbH5iWFFv/MTkchz3b1ieGDa5T0a9RznNdI0KhVbdbWSN+KWWrQZRxTw==" - }, - "node_modules/@types/mime-types": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/@types/mime-types/-/mime-types-2.1.1.tgz", - "integrity": "sha512-vXOTGVSLR2jMw440moWTC7H19iUyLtP3Z1YTj7cSsubOICinjMxFeb/V57v9QdyyPGbbWolUFSSmSiRSn94tFw==" - }, - "node_modules/@types/mocha": { - "version": "7.0.2", - "resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-7.0.2.tgz", - "integrity": "sha512-ZvO2tAcjmMi8V/5Z3JsyofMe3hasRcaw88cto5etSVMwVQfeivGAlEYmaQgceUSVYFofVjT+ioHsATjdWcFt1w==", - "dev": true - }, - "node_modules/@types/mongodb": { - "version": "3.6.20", - "resolved": "https://registry.npmjs.org/@types/mongodb/-/mongodb-3.6.20.tgz", - "integrity": "sha512-WcdpPJCakFzcWWD9juKoZbRtQxKIMYF/JIAM4JrNHrMcnJL6/a2NWjXxW7fo9hxboxxkg+icff8d7+WIEvKgYQ==", + "node_modules/@sinonjs/formatio": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/@sinonjs/formatio/-/formatio-3.2.2.tgz", + "integrity": "sha512-B8SEsgd8gArBLMD6zpRw3juQ2FVSsmdd7qlevyDqzS9WTCtvF55/gAL+h6gue8ZvPYcdiPdvueM/qm//9XzyTQ==", "dev": true, "dependencies": { - "@types/bson": "*", - "@types/node": "*" + "@sinonjs/commons": "^1", + "@sinonjs/samsam": "^3.1.0" } }, - "node_modules/@types/mongoose": { - "version": "4.7.56", - "resolved": "https://registry.npmjs.org/@types/mongoose/-/mongoose-4.7.56.tgz", - "integrity": "sha512-c4bQmM/WUMQvOpEJFJbNjwLU72bzFOtKJ+4HtqdA+wtMhWpwIBoKdL7KsNt7BRjelK0dcSrgymvz/miQuPjikw==", + "node_modules/@sinonjs/samsam": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/@sinonjs/samsam/-/samsam-3.3.3.tgz", + "integrity": "sha512-bKCMKZvWIjYD0BLGnNrxVuw4dkWCYsLqFOUWw8VgKF/+5Y+mE7LfHWPIYoDXowH+3a9LsWDMo0uAP8YDosPvHQ==", "dev": true, "dependencies": { - "@types/mongodb": "*", - "@types/node": "*" + "@sinonjs/commons": "^1.3.0", + "array-from": "^2.1.1", + "lodash": "^4.17.15" } }, - "node_modules/@types/ms": { - "version": "0.7.32", - "resolved": "https://registry.npmjs.org/@types/ms/-/ms-0.7.32.tgz", - "integrity": "sha512-xPSg0jm4mqgEkNhowKgZFBNtwoEwF6gJ4Dhww+GFpm3IgtNseHQZ5IqdNwnquZEoANxyDAKDRAdVo4Z72VvD/g==" + "node_modules/@sinonjs/text-encoding": { + "version": "0.7.2", + "resolved": "https://registry.npmjs.org/@sinonjs/text-encoding/-/text-encoding-0.7.2.tgz", + "integrity": "sha512-sXXKG+uL9IrKqViTtao2Ws6dy0znu9sOaP1di/jKGW1M6VssO8vlpXCQcpZ+jisQ1tTFAC5Jo/EOzFbggBagFQ==", + "dev": true }, - "node_modules/@types/multer": { - "version": "1.4.7", - "resolved": "https://registry.npmjs.org/@types/multer/-/multer-1.4.7.tgz", - "integrity": "sha512-/SNsDidUFCvqqcWDwxv2feww/yqhNeTRL5CVoL3jU4Goc4kKEL10T7Eye65ZqPNi4HRx8sAEX59pV1aEH7drNA==", - "dev": true, + "node_modules/@smithy/abort-controller": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/@smithy/abort-controller/-/abort-controller-3.1.1.tgz", + "integrity": "sha512-MBJBiidoe+0cTFhyxT8g+9g7CeVccLM0IOKKUMCNQ1CNMJ/eIfoo0RTfVrXOONEI1UCN1W+zkiHSbzUNE9dZtQ==", + "optional": true, "dependencies": { - "@types/express": "*" + "@smithy/types": "^3.3.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" } }, - "node_modules/@types/node": { - "version": "18.18.4", - "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.4.tgz", - "integrity": "sha512-t3rNFBgJRugIhackit2mVcLfF6IRc0JE4oeizPQL8Zrm8n2WY/0wOdpOPhdtG0V9Q2TlW/axbF1MJ6z+Yj/kKQ==" - }, - "node_modules/@types/node-fetch": { - "version": "2.6.1", - "resolved": "https://registry.npmjs.org/@types/node-fetch/-/node-fetch-2.6.1.tgz", - "integrity": "sha512-oMqjURCaxoSIsHSr1E47QHzbmzNR5rK8McHuNb11BOM9cHcIK3Avy0s/b2JlXHoQGTYS3NsvWzV1M0iK7l0wbA==", - "dev": true, + "node_modules/@smithy/config-resolver": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@smithy/config-resolver/-/config-resolver-3.0.4.tgz", + "integrity": "sha512-VwiOk7TwXoE7NlNguV/aPq1hFH72tqkHCw8eWXbr2xHspRyyv9DLpLXhq+Ieje+NwoqXrY0xyQjPXdOE6cGcHA==", + "optional": true, "dependencies": { - "@types/node": "*", - "form-data": "^3.0.0" + "@smithy/node-config-provider": "^3.1.3", + "@smithy/types": "^3.3.0", + "@smithy/util-config-provider": "^3.0.0", + "@smithy/util-middleware": "^3.0.3", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" } }, - "node_modules/@types/node-fetch/node_modules/form-data": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-3.0.1.tgz", - "integrity": "sha512-RHkBKtLWUVwd7SqRIvCZMEvAMoGUp0XU+seQiZejj0COz3RI3hWP4sCv3gZWWLjJTd7rGwcsF5eKZGii0r/hbg==", - "dev": true, + "node_modules/@smithy/core": { + "version": "2.2.4", + "resolved": "https://registry.npmjs.org/@smithy/core/-/core-2.2.4.tgz", + "integrity": "sha512-qdY3LpMOUyLM/gfjjMQZui+UTNS7kBRDWlvyIhVOql5dn2J3isk9qUTBtQ1CbDH8MTugHis1zu3h4rH+Qmmh4g==", + "optional": true, "dependencies": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.8", - "mime-types": "^2.1.12" + "@smithy/middleware-endpoint": "^3.0.4", + "@smithy/middleware-retry": "^3.0.7", + "@smithy/middleware-serde": "^3.0.3", + "@smithy/protocol-http": "^4.0.3", + "@smithy/smithy-client": "^3.1.5", + "@smithy/types": "^3.3.0", + "@smithy/util-middleware": "^3.0.3", + "tslib": "^2.6.2" }, "engines": { - "node": ">= 6" + "node": ">=16.0.0" } }, - "node_modules/@types/passport": { - "version": "1.0.13", - "resolved": "https://registry.npmjs.org/@types/passport/-/passport-1.0.13.tgz", - "integrity": "sha512-XXURryL+EZAWtbQFOHX1eNB+RJwz5XMPPz1xrGpEKr2xUZCXM4NCPkHMtZQ3B2tTSG/1IRaAcTHjczRA4sSFCw==", + "node_modules/@smithy/credential-provider-imds": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/@smithy/credential-provider-imds/-/credential-provider-imds-3.1.3.tgz", + "integrity": "sha512-U1Yrv6hx/mRK6k8AncuI6jLUx9rn0VVSd9NPEX6pyYFBfkSkChOc/n4zUb8alHUVg83TbI4OdZVo1X0Zfj3ijA==", + "optional": true, "dependencies": { - "@types/express": "*" + "@smithy/node-config-provider": "^3.1.3", + "@smithy/property-provider": "^3.1.3", + "@smithy/types": "^3.3.0", + "@smithy/url-parser": "^3.0.3", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" } }, - "node_modules/@types/passport-strategy": { - "version": "0.2.36", - "resolved": "https://registry.npmjs.org/@types/passport-strategy/-/passport-strategy-0.2.36.tgz", - "integrity": "sha512-hotVZuaCt04LJYXfZD5B+5UeCcRVG8IjKaLLGTJ1eFp0wiFQA2XfsqslGGInWje+OysNNLPH/ducce5GXHDC1Q==", + "node_modules/@smithy/fetch-http-handler": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/@smithy/fetch-http-handler/-/fetch-http-handler-3.2.0.tgz", + "integrity": "sha512-vFvDxMrc6sO5Atec8PaISckMcAwsCrRhYxwUylg97bRT2KZoumOF7qk5+6EVUtuM1IG9AJV5aqXnHln9ZdXHpg==", + "optional": true, "dependencies": { - "@types/express": "*", - "@types/passport": "*" + "@smithy/protocol-http": "^4.0.3", + "@smithy/querystring-builder": "^3.0.3", + "@smithy/types": "^3.3.0", + "@smithy/util-base64": "^3.0.0", + "tslib": "^2.6.2" } }, - "node_modules/@types/proj4": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/@types/proj4/-/proj4-2.5.2.tgz", - "integrity": "sha512-/Nmfn9p08yaYw6xo5f2b0L+2oHk2kZeOkp5v+4VCeNfq+ETlLQbmHmC97/pjDIEZy8jxwz7pdPpwNzDHM5cuJw==" - }, - "node_modules/@types/qs": { - "version": "6.9.7", - "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.7.tgz", - "integrity": "sha512-FGa1F62FT09qcrueBA6qYTrJPVDzah9a+493+o2PCXsesWHIn27G98TsSMs3WPNbZIEj4+VJf6saSFpvD+3Zsw==" - }, - "node_modules/@types/range-parser": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/@types/range-parser/-/range-parser-1.2.4.tgz", - "integrity": "sha512-EEhsLsD6UsDM1yFhAvy0Cjr6VwmpMWqFBCb9w07wVugF7w9nfajxLuVmngTIpgS6svCnm6Vaw+MZhoDCKnOfsw==" - }, - "node_modules/@types/readdir-glob": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/@types/readdir-glob/-/readdir-glob-1.1.4.tgz", - "integrity": "sha512-uEJsErL2wFCTcbbmJpIuD8OWYNabgv1oaYP2bOkzZXKtk3c6LCYQEKngIqBj2VR2NMv9DOAXSkxSYOWtHxh2gQ==", - "dev": true, + "node_modules/@smithy/hash-node": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@smithy/hash-node/-/hash-node-3.0.3.tgz", + "integrity": "sha512-2ctBXpPMG+B3BtWSGNnKELJ7SH9e4TNefJS0cd2eSkOOROeBnnVBnAy9LtJ8tY4vUEoe55N4CNPxzbWvR39iBw==", + "optional": true, "dependencies": { - "@types/node": "*" + "@smithy/types": "^3.3.0", + "@smithy/util-buffer-from": "^3.0.0", + "@smithy/util-utf8": "^3.0.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" } }, - "node_modules/@types/semver": { - "version": "7.5.3", - "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.5.3.tgz", - "integrity": "sha512-OxepLK9EuNEIPxWNME+C6WwbRAOOI2o2BaQEGzz5Lu2e4Z5eDnEo+/aVEDMIXywoJitJ7xWd641wrGLZdtwRyw==", - "dev": true - }, - "node_modules/@types/send": { - "version": "0.17.2", - "resolved": "https://registry.npmjs.org/@types/send/-/send-0.17.2.tgz", - "integrity": "sha512-aAG6yRf6r0wQ29bkS+x97BIs64ZLxeE/ARwyS6wrldMm3C1MdKwCcnnEwMC1slI8wuxJOpiUH9MioC0A0i+GJw==", + "node_modules/@smithy/invalid-dependency": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@smithy/invalid-dependency/-/invalid-dependency-3.0.3.tgz", + "integrity": "sha512-ID1eL/zpDULmHJbflb864k72/SNOZCADRc9i7Exq3RUNJw6raWUSlFEQ+3PX3EYs++bTxZB2dE9mEHTQLv61tw==", + "optional": true, "dependencies": { - "@types/mime": "^1", - "@types/node": "*" + "@smithy/types": "^3.3.0", + "tslib": "^2.6.2" } }, - "node_modules/@types/serve-static": { - "version": "1.13.10", - "resolved": "https://registry.npmjs.org/@types/serve-static/-/serve-static-1.13.10.tgz", - "integrity": "sha512-nCkHGI4w7ZgAdNkrEu0bv+4xNV/XDqW+DydknebMOQwkpDGx8G+HTlj7R7ABI8i8nKxVw0wtKPi1D+lPOkh4YQ==", + "node_modules/@smithy/is-array-buffer": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@smithy/is-array-buffer/-/is-array-buffer-3.0.0.tgz", + "integrity": "sha512-+Fsu6Q6C4RSJiy81Y8eApjEB5gVtM+oFKTffg+jSuwtvomJJrhUJBu2zS8wjXSgH/g1MKEWrzyChTBe6clb5FQ==", + "optional": true, "dependencies": { - "@types/mime": "^1", - "@types/node": "*" + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" } }, - "node_modules/@types/sinon": { - "version": "9.0.11", - "resolved": "https://registry.npmjs.org/@types/sinon/-/sinon-9.0.11.tgz", - "integrity": "sha512-PwP4UY33SeeVKodNE37ZlOsR9cReypbMJOhZ7BVE0lB+Hix3efCOxiJWiE5Ia+yL9Cn2Ch72EjFTRze8RZsNtg==", - "dev": true, + "node_modules/@smithy/middleware-content-length": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@smithy/middleware-content-length/-/middleware-content-length-3.0.3.tgz", + "integrity": "sha512-Dbz2bzexReYIQDWMr+gZhpwBetNXzbhnEMhYKA6urqmojO14CsXjnsoPYO8UL/xxcawn8ZsuVU61ElkLSltIUQ==", + "optional": true, "dependencies": { - "@types/sinonjs__fake-timers": "*" + "@smithy/protocol-http": "^4.0.3", + "@smithy/types": "^3.3.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" } }, - "node_modules/@types/sinon-chai": { - "version": "3.2.8", - "resolved": "https://registry.npmjs.org/@types/sinon-chai/-/sinon-chai-3.2.8.tgz", - "integrity": "sha512-d4ImIQbT/rKMG8+AXpmcan5T2/PNeSjrYhvkwet6z0p8kzYtfgA32xzOBlbU0yqJfq+/0Ml805iFoODO0LP5/g==", - "dev": true, + "node_modules/@smithy/middleware-endpoint": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@smithy/middleware-endpoint/-/middleware-endpoint-3.0.4.tgz", + "integrity": "sha512-whUJMEPwl3ANIbXjBXZVdJNgfV2ZU8ayln7xUM47rXL2txuenI7jQ/VFFwCzy5lCmXScjp6zYtptW5Evud8e9g==", + "optional": true, "dependencies": { - "@types/chai": "*", - "@types/sinon": "*" + "@smithy/middleware-serde": "^3.0.3", + "@smithy/node-config-provider": "^3.1.3", + "@smithy/shared-ini-file-loader": "^3.1.3", + "@smithy/types": "^3.3.0", + "@smithy/url-parser": "^3.0.3", + "@smithy/util-middleware": "^3.0.3", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" } }, - "node_modules/@types/sinonjs__fake-timers": { - "version": "8.1.2", - "resolved": "https://registry.npmjs.org/@types/sinonjs__fake-timers/-/sinonjs__fake-timers-8.1.2.tgz", - "integrity": "sha512-9GcLXF0/v3t80caGs5p2rRfkB+a8VBGLJZVih6CNFkx8IZ994wiKKLSRs9nuFwk1HevWs/1mnUmkApGrSGsShA==", - "dev": true - }, - "node_modules/@types/superagent": { - "version": "8.1.3", - "resolved": "https://registry.npmjs.org/@types/superagent/-/superagent-8.1.3.tgz", - "integrity": "sha512-R/CfN6w2XsixLb1Ii8INfn+BT9sGPvw74OavfkW4SwY+jeUcAwLZv2+bXLJkndnimxjEBm0RPHgcjW9pLCa8cw==", - "dev": true, + "node_modules/@smithy/middleware-retry": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/@smithy/middleware-retry/-/middleware-retry-3.0.7.tgz", + "integrity": "sha512-f5q7Y09G+2h5ivkSx5CHvlAT4qRR3jBFEsfXyQ9nFNiWQlr8c48blnu5cmbTQ+p1xmIO14UXzKoF8d7Tm0Gsjw==", + "optional": true, "dependencies": { - "@types/cookiejar": "^2.1.5", - "@types/methods": "^1.1.4", - "@types/node": "*" + "@smithy/node-config-provider": "^3.1.3", + "@smithy/protocol-http": "^4.0.3", + "@smithy/service-error-classification": "^3.0.3", + "@smithy/smithy-client": "^3.1.5", + "@smithy/types": "^3.3.0", + "@smithy/util-middleware": "^3.0.3", + "@smithy/util-retry": "^3.0.3", + "tslib": "^2.6.2", + "uuid": "^9.0.1" + }, + "engines": { + "node": ">=16.0.0" } }, - "node_modules/@types/supertest": { - "version": "2.0.16", - "resolved": "https://registry.npmjs.org/@types/supertest/-/supertest-2.0.16.tgz", - "integrity": "sha512-6c2ogktZ06tr2ENoZivgm7YnprnhYE4ZoXGMY+oA7IuAf17M8FWvujXZGmxLv8y0PTyts4x5A+erSwVUFA8XSg==", - "dev": true, + "node_modules/@smithy/middleware-serde": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@smithy/middleware-serde/-/middleware-serde-3.0.3.tgz", + "integrity": "sha512-puUbyJQBcg9eSErFXjKNiGILJGtiqmuuNKEYNYfUD57fUl4i9+mfmThtQhvFXU0hCVG0iEJhvQUipUf+/SsFdA==", + "optional": true, "dependencies": { - "@types/superagent": "*" + "@smithy/types": "^3.3.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" } }, - "node_modules/@types/uniqid": { - "version": "5.3.2", - "resolved": "https://registry.npmjs.org/@types/uniqid/-/uniqid-5.3.2.tgz", - "integrity": "sha512-/NYoaZpWsnAJDsGYeMNDeG3p3fuUb4AiC7MfKxi5VSu18tXd08w6Ch0fKW94T4FeLXXZwZPoFgHA1O0rDYKyMQ==", - "dev": true - }, - "node_modules/@types/webidl-conversions": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/@types/webidl-conversions/-/webidl-conversions-7.0.3.tgz", - "integrity": "sha512-CiJJvcRtIgzadHCYXw7dqEnMNRjhGZlYK05Mj9OyktqV8uVT8fD2BFOB7S1uwBE3Kj2Z+4UyPmFw/Ixgw/LAlA==", - "dev": true - }, - "node_modules/@types/whatwg-url": { - "version": "8.2.2", - "resolved": "https://registry.npmjs.org/@types/whatwg-url/-/whatwg-url-8.2.2.tgz", - "integrity": "sha512-FtQu10RWgn3D9U4aazdwIE2yzphmTJREDqNdODHrbrZmmMqI0vMheC/6NE/J1Yveaj8H+ela+YwWTjq5PGmuhA==", - "dev": true, + "node_modules/@smithy/middleware-stack": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@smithy/middleware-stack/-/middleware-stack-3.0.3.tgz", + "integrity": "sha512-r4klY9nFudB0r9UdSMaGSyjyQK5adUyPnQN/ZM6M75phTxOdnc/AhpvGD1fQUvgmqjQEBGCwpnPbDm8pH5PapA==", + "optional": true, "dependencies": { - "@types/node": "*", - "@types/webidl-conversions": "*" + "@smithy/types": "^3.3.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" } }, - "node_modules/@types/xml-crypto": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/@types/xml-crypto/-/xml-crypto-1.4.3.tgz", - "integrity": "sha512-pnvKYb7vUsUIMc+C6JM/j779YWQgOMcwjnqHJ9cdaWXwWEBE1hAqthzeszRx62V5RWMvS+XS9w9tXMOYyUc8zg==", + "node_modules/@smithy/node-config-provider": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/@smithy/node-config-provider/-/node-config-provider-3.1.3.tgz", + "integrity": "sha512-rxdpAZczzholz6CYZxtqDu/aKTxATD5DAUDVj7HoEulq+pDSQVWzbg0btZDlxeFfa6bb2b5tUvgdX5+k8jUqcg==", + "optional": true, "dependencies": { - "@types/node": "*", - "xpath": "0.0.27" + "@smithy/property-provider": "^3.1.3", + "@smithy/shared-ini-file-loader": "^3.1.3", + "@smithy/types": "^3.3.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" } }, - "node_modules/@types/xml-crypto/node_modules/xpath": { - "version": "0.0.27", - "resolved": "https://registry.npmjs.org/xpath/-/xpath-0.0.27.tgz", - "integrity": "sha512-fg03WRxtkCV6ohClePNAECYsmpKKTv5L8y/X3Dn1hQrec3POx2jHZ/0P2qQ6HvsrU1BmeqXcof3NGGueG6LxwQ==", + "node_modules/@smithy/node-http-handler": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/@smithy/node-http-handler/-/node-http-handler-3.1.1.tgz", + "integrity": "sha512-L71NLyPeP450r2J/mfu1jMc//Z1YnqJt2eSNw7uhiItaONnBLDA68J5jgxq8+MBDsYnFwNAIc7dBG1ImiWBiwg==", + "optional": true, + "dependencies": { + "@smithy/abort-controller": "^3.1.1", + "@smithy/protocol-http": "^4.0.3", + "@smithy/querystring-builder": "^3.0.3", + "@smithy/types": "^3.3.0", + "tslib": "^2.6.2" + }, "engines": { - "node": ">=0.6.0" + "node": ">=16.0.0" } }, - "node_modules/@types/xml-encryption": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/@types/xml-encryption/-/xml-encryption-1.2.2.tgz", - "integrity": "sha512-UeuYOqW3ZzUQfwb/mb3GNZ2/DlVdh5mjJNmB/yFXgQr8/pwlVJ9I2w+AHPfRDzLshe7YpgUB4T1//qgbk6U87Q==", + "node_modules/@smithy/property-provider": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/@smithy/property-provider/-/property-provider-3.1.3.tgz", + "integrity": "sha512-zahyOVR9Q4PEoguJ/NrFP4O7SMAfYO1HLhB18M+q+Z4KFd4V2obiMnlVoUFzFLSPeVt1POyNWneHHrZaTMoc/g==", + "optional": true, "dependencies": { - "@types/node": "*" + "@smithy/types": "^3.3.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" } }, - "node_modules/@types/xml2js": { - "version": "0.4.12", - "resolved": "https://registry.npmjs.org/@types/xml2js/-/xml2js-0.4.12.tgz", - "integrity": "sha512-CZPpQKBZ8db66EP5hCjwvYrLThgZvnyZrPXK2W+UI1oOaWezGt34iOaUCX4Jah2X8+rQqjvl9VKEIT8TR1I0rA==", + "node_modules/@smithy/protocol-http": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@smithy/protocol-http/-/protocol-http-4.0.3.tgz", + "integrity": "sha512-x5jmrCWwQlx+Zv4jAtc33ijJ+vqqYN+c/ZkrnpvEe/uDas7AT7A/4Rc2CdfxgWv4WFGmEqODIrrUToPN6DDkGw==", + "optional": true, "dependencies": { - "@types/node": "*" + "@smithy/types": "^3.3.0", + "tslib": "^2.6.2" + }, + "engines": { + "node": ">=16.0.0" } }, - "node_modules/@typescript-eslint/eslint-plugin": { - "version": "6.7.5", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-6.7.5.tgz", - "integrity": "sha512-JhtAwTRhOUcP96D0Y6KYnwig/MRQbOoLGXTON2+LlyB/N35SP9j1boai2zzwXb7ypKELXMx3DVk9UTaEq1vHEw==", - "dev": true, + "node_modules/@smithy/querystring-builder": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@smithy/querystring-builder/-/querystring-builder-3.0.3.tgz", + "integrity": "sha512-vyWckeUeesFKzCDaRwWLUA1Xym9McaA6XpFfAK5qI9DKJ4M33ooQGqvM4J+LalH4u/Dq9nFiC8U6Qn1qi0+9zw==", + "optional": true, "dependencies": { - "@eslint-community/regexpp": "^4.5.1", - "@typescript-eslint/scope-manager": "6.7.5", - "@typescript-eslint/type-utils": "6.7.5", - "@typescript-eslint/utils": "6.7.5", - "@typescript-eslint/visitor-keys": "6.7.5", - "debug": "^4.3.4", - "graphemer": "^1.4.0", - "ignore": "^5.2.4", - "natural-compare": "^1.4.0", - "semver": "^7.5.4", - "ts-api-utils": "^1.0.1" + "@smithy/types": "^3.3.0", + "@smithy/util-uri-escape": "^3.0.0", + "tslib": "^2.6.2" }, "engines": { - "node": "^16.0.0 || >=18.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "@typescript-eslint/parser": "^6.0.0 || ^6.0.0-alpha", - "eslint": "^7.0.0 || ^8.0.0" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } + "node": ">=16.0.0" } }, - "node_modules/@typescript-eslint/eslint-plugin/node_modules/debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", - "dev": true, + "node_modules/@smithy/querystring-parser": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@smithy/querystring-parser/-/querystring-parser-3.0.3.tgz", + "integrity": "sha512-zahM1lQv2YjmznnfQsWbYojFe55l0SLG/988brlLv1i8z3dubloLF+75ATRsqPBboUXsW6I9CPGE5rQgLfY0vQ==", + "optional": true, "dependencies": { - "ms": "2.1.2" + "@smithy/types": "^3.3.0", + "tslib": "^2.6.2" }, "engines": { - "node": ">=6.0" - }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } + "node": ">=16.0.0" } }, - "node_modules/@typescript-eslint/eslint-plugin/node_modules/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, + "node_modules/@smithy/service-error-classification": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@smithy/service-error-classification/-/service-error-classification-3.0.3.tgz", + "integrity": "sha512-Jn39sSl8cim/VlkLsUhRFq/dKDnRUFlfRkvhOJaUbLBXUsLRLNf9WaxDv/z9BjuQ3A6k/qE8af1lsqcwm7+DaQ==", + "optional": true, "dependencies": { - "yallist": "^4.0.0" + "@smithy/types": "^3.3.0" }, "engines": { - "node": ">=10" + "node": ">=16.0.0" } }, - "node_modules/@typescript-eslint/eslint-plugin/node_modules/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 - }, - "node_modules/@typescript-eslint/eslint-plugin/node_modules/semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", - "dev": true, + "node_modules/@smithy/shared-ini-file-loader": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/@smithy/shared-ini-file-loader/-/shared-ini-file-loader-3.1.3.tgz", + "integrity": "sha512-Z8Y3+08vgoDgl4HENqNnnzSISAaGrF2RoKupoC47u2wiMp+Z8P/8mDh1CL8+8ujfi2U5naNvopSBmP/BUj8b5w==", + "optional": true, "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" + "@smithy/types": "^3.3.0", + "tslib": "^2.6.2" }, "engines": { - "node": ">=10" + "node": ">=16.0.0" } }, - "node_modules/@typescript-eslint/parser": { - "version": "6.7.5", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-6.7.5.tgz", - "integrity": "sha512-bIZVSGx2UME/lmhLcjdVc7ePBwn7CLqKarUBL4me1C5feOd663liTGjMBGVcGr+BhnSLeP4SgwdvNnnkbIdkCw==", - "dev": true, + "node_modules/@smithy/signature-v4": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@smithy/signature-v4/-/signature-v4-3.1.2.tgz", + "integrity": "sha512-3BcPylEsYtD0esM4Hoyml/+s7WP2LFhcM3J2AGdcL2vx9O60TtfpDOL72gjb4lU8NeRPeKAwR77YNyyGvMbuEA==", + "optional": true, "dependencies": { - "@typescript-eslint/scope-manager": "6.7.5", - "@typescript-eslint/types": "6.7.5", - "@typescript-eslint/typescript-estree": "6.7.5", - "@typescript-eslint/visitor-keys": "6.7.5", - "debug": "^4.3.4" + "@smithy/is-array-buffer": "^3.0.0", + "@smithy/types": "^3.3.0", + "@smithy/util-hex-encoding": "^3.0.0", + "@smithy/util-middleware": "^3.0.3", + "@smithy/util-uri-escape": "^3.0.0", + "@smithy/util-utf8": "^3.0.0", + "tslib": "^2.6.2" }, "engines": { - "node": "^16.0.0 || >=18.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "eslint": "^7.0.0 || ^8.0.0" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } + "node": ">=16.0.0" } }, - "node_modules/@typescript-eslint/parser/node_modules/debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", - "dev": true, + "node_modules/@smithy/smithy-client": { + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/@smithy/smithy-client/-/smithy-client-3.1.5.tgz", + "integrity": "sha512-x9bL9Mx2CT2P1OiUlHM+ZNpbVU6TgT32f9CmTRzqIHA7M4vYrROCWEoC3o4xHNJASoGd4Opos3cXYPgh+/m4Ww==", + "optional": true, "dependencies": { - "ms": "2.1.2" + "@smithy/middleware-endpoint": "^3.0.4", + "@smithy/middleware-stack": "^3.0.3", + "@smithy/protocol-http": "^4.0.3", + "@smithy/types": "^3.3.0", + "@smithy/util-stream": "^3.0.5", + "tslib": "^2.6.2" }, "engines": { - "node": ">=6.0" - }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } + "node": ">=16.0.0" } }, - "node_modules/@typescript-eslint/parser/node_modules/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 - }, - "node_modules/@typescript-eslint/scope-manager": { - "version": "6.7.5", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-6.7.5.tgz", - "integrity": "sha512-GAlk3eQIwWOJeb9F7MKQ6Jbah/vx1zETSDw8likab/eFcqkjSD7BI75SDAeC5N2L0MmConMoPvTsmkrg71+B1A==", - "dev": true, + "node_modules/@smithy/types": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/@smithy/types/-/types-3.3.0.tgz", + "integrity": "sha512-IxvBBCTFDHbVoK7zIxqA1ZOdc4QfM5HM7rGleCuHi7L1wnKv5Pn69xXJQ9hgxH60ZVygH9/JG0jRgtUncE3QUA==", + "optional": true, "dependencies": { - "@typescript-eslint/types": "6.7.5", - "@typescript-eslint/visitor-keys": "6.7.5" + "tslib": "^2.6.2" }, "engines": { - "node": "^16.0.0 || >=18.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" + "node": ">=16.0.0" } }, - "node_modules/@typescript-eslint/type-utils": { - "version": "6.7.5", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-6.7.5.tgz", - "integrity": "sha512-Gs0qos5wqxnQrvpYv+pf3XfcRXW6jiAn9zE/K+DlmYf6FcpxeNYN0AIETaPR7rHO4K2UY+D0CIbDP9Ut0U4m1g==", - "dev": true, + "node_modules/@smithy/url-parser": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@smithy/url-parser/-/url-parser-3.0.3.tgz", + "integrity": "sha512-pw3VtZtX2rg+s6HMs6/+u9+hu6oY6U7IohGhVNnjbgKy86wcIsSZwgHrFR+t67Uyxvp4Xz3p3kGXXIpTNisq8A==", + "optional": true, "dependencies": { - "@typescript-eslint/typescript-estree": "6.7.5", - "@typescript-eslint/utils": "6.7.5", - "debug": "^4.3.4", - "ts-api-utils": "^1.0.1" - }, - "engines": { - "node": "^16.0.0 || >=18.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "eslint": "^7.0.0 || ^8.0.0" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } + "@smithy/querystring-parser": "^3.0.3", + "@smithy/types": "^3.3.0", + "tslib": "^2.6.2" } }, - "node_modules/@typescript-eslint/type-utils/node_modules/debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", - "dev": true, + "node_modules/@smithy/util-base64": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@smithy/util-base64/-/util-base64-3.0.0.tgz", + "integrity": "sha512-Kxvoh5Qtt0CDsfajiZOCpJxgtPHXOKwmM+Zy4waD43UoEMA+qPxxa98aE/7ZhdnBFZFXMOiBR5xbcaMhLtznQQ==", + "optional": true, "dependencies": { - "ms": "2.1.2" + "@smithy/util-buffer-from": "^3.0.0", + "@smithy/util-utf8": "^3.0.0", + "tslib": "^2.6.2" }, "engines": { - "node": ">=6.0" - }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } + "node": ">=16.0.0" } }, - "node_modules/@typescript-eslint/type-utils/node_modules/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 - }, - "node_modules/@typescript-eslint/types": { - "version": "6.7.5", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-6.7.5.tgz", - "integrity": "sha512-WboQBlOXtdj1tDFPyIthpKrUb+kZf2VroLZhxKa/VlwLlLyqv/PwUNgL30BlTVZV1Wu4Asu2mMYPqarSO4L5ZQ==", - "dev": true, - "engines": { - "node": "^16.0.0 || >=18.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" + "node_modules/@smithy/util-body-length-browser": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@smithy/util-body-length-browser/-/util-body-length-browser-3.0.0.tgz", + "integrity": "sha512-cbjJs2A1mLYmqmyVl80uoLTJhAcfzMOyPgjwAYusWKMdLeNtzmMz9YxNl3/jRLoxSS3wkqkf0jwNdtXWtyEBaQ==", + "optional": true, + "dependencies": { + "tslib": "^2.6.2" } }, - "node_modules/@typescript-eslint/typescript-estree": { - "version": "6.7.5", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-6.7.5.tgz", - "integrity": "sha512-NhJiJ4KdtwBIxrKl0BqG1Ur+uw7FiOnOThcYx9DpOGJ/Abc9z2xNzLeirCG02Ig3vkvrc2qFLmYSSsaITbKjlg==", - "dev": true, + "node_modules/@smithy/util-body-length-node": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@smithy/util-body-length-node/-/util-body-length-node-3.0.0.tgz", + "integrity": "sha512-Tj7pZ4bUloNUP6PzwhN7K386tmSmEET9QtQg0TgdNOnxhZvCssHji+oZTUIuzxECRfG8rdm2PMw2WCFs6eIYkA==", + "optional": true, "dependencies": { - "@typescript-eslint/types": "6.7.5", - "@typescript-eslint/visitor-keys": "6.7.5", - "debug": "^4.3.4", - "globby": "^11.1.0", - "is-glob": "^4.0.3", - "semver": "^7.5.4", - "ts-api-utils": "^1.0.1" + "tslib": "^2.6.2" }, "engines": { - "node": "^16.0.0 || >=18.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } + "node": ">=16.0.0" } }, - "node_modules/@typescript-eslint/typescript-estree/node_modules/debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", - "dev": true, + "node_modules/@smithy/util-buffer-from": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@smithy/util-buffer-from/-/util-buffer-from-3.0.0.tgz", + "integrity": "sha512-aEOHCgq5RWFbP+UDPvPot26EJHjOC+bRgse5A8V3FSShqd5E5UN4qc7zkwsvJPPAVsf73QwYcHN1/gt/rtLwQA==", + "optional": true, "dependencies": { - "ms": "2.1.2" + "@smithy/is-array-buffer": "^3.0.0", + "tslib": "^2.6.2" }, "engines": { - "node": ">=6.0" - }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } + "node": ">=16.0.0" } }, - "node_modules/@typescript-eslint/typescript-estree/node_modules/globby": { - "version": "11.1.0", - "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz", - "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==", - "dev": true, + "node_modules/@smithy/util-config-provider": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@smithy/util-config-provider/-/util-config-provider-3.0.0.tgz", + "integrity": "sha512-pbjk4s0fwq3Di/ANL+rCvJMKM5bzAQdE5S/6RL5NXgMExFAi6UgQMPOm5yPaIWPpr+EOXKXRonJ3FoxKf4mCJQ==", + "optional": true, "dependencies": { - "array-union": "^2.1.0", - "dir-glob": "^3.0.1", - "fast-glob": "^3.2.9", - "ignore": "^5.2.0", - "merge2": "^1.4.1", - "slash": "^3.0.0" + "tslib": "^2.6.2" }, "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=16.0.0" } }, - "node_modules/@typescript-eslint/typescript-estree/node_modules/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, + "node_modules/@smithy/util-defaults-mode-browser": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/@smithy/util-defaults-mode-browser/-/util-defaults-mode-browser-3.0.7.tgz", + "integrity": "sha512-Q2txLyvQyGfmjsaDbVV7Sg8psefpFcrnlGapDzXGFRPFKRBeEg6OvFK8FljqjeHSaCZ6/UuzQExUPqBR/2qlDA==", + "optional": true, "dependencies": { - "yallist": "^4.0.0" + "@smithy/property-provider": "^3.1.3", + "@smithy/smithy-client": "^3.1.5", + "@smithy/types": "^3.3.0", + "bowser": "^2.11.0", + "tslib": "^2.6.2" }, "engines": { - "node": ">=10" + "node": ">= 10.0.0" } }, - "node_modules/@typescript-eslint/typescript-estree/node_modules/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 - }, - "node_modules/@typescript-eslint/typescript-estree/node_modules/semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", - "dev": true, + "node_modules/@smithy/util-defaults-mode-node": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/@smithy/util-defaults-mode-node/-/util-defaults-mode-node-3.0.7.tgz", + "integrity": "sha512-F4Qcj1fG6MGi2BSWCslfsMSwllws/WzYONBGtLybyY+halAcXdWhcew+mej8M5SKd5hqPYp4f7b+ABQEaeytgg==", + "optional": true, "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" + "@smithy/config-resolver": "^3.0.4", + "@smithy/credential-provider-imds": "^3.1.3", + "@smithy/node-config-provider": "^3.1.3", + "@smithy/property-provider": "^3.1.3", + "@smithy/smithy-client": "^3.1.5", + "@smithy/types": "^3.3.0", + "tslib": "^2.6.2" }, "engines": { - "node": ">=10" - } - }, - "node_modules/@typescript-eslint/typescript-estree/node_modules/slash": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", - "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", - "dev": true, - "engines": { - "node": ">=8" + "node": ">= 10.0.0" } }, - "node_modules/@typescript-eslint/utils": { - "version": "6.7.5", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-6.7.5.tgz", - "integrity": "sha512-pfRRrH20thJbzPPlPc4j0UNGvH1PjPlhlCMq4Yx7EGjV7lvEeGX0U6MJYe8+SyFutWgSHsdbJ3BXzZccYggezA==", - "dev": true, + "node_modules/@smithy/util-endpoints": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/@smithy/util-endpoints/-/util-endpoints-2.0.4.tgz", + "integrity": "sha512-ZAtNf+vXAsgzgRutDDiklU09ZzZiiV/nATyqde4Um4priTmasDH+eLpp3tspL0hS2dEootyFMhu1Y6Y+tzpWBQ==", + "optional": true, "dependencies": { - "@eslint-community/eslint-utils": "^4.4.0", - "@types/json-schema": "^7.0.12", - "@types/semver": "^7.5.0", - "@typescript-eslint/scope-manager": "6.7.5", - "@typescript-eslint/types": "6.7.5", - "@typescript-eslint/typescript-estree": "6.7.5", - "semver": "^7.5.4" + "@smithy/node-config-provider": "^3.1.3", + "@smithy/types": "^3.3.0", + "tslib": "^2.6.2" }, "engines": { - "node": "^16.0.0 || >=18.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "eslint": "^7.0.0 || ^8.0.0" + "node": ">=16.0.0" } }, - "node_modules/@typescript-eslint/utils/node_modules/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, + "node_modules/@smithy/util-hex-encoding": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@smithy/util-hex-encoding/-/util-hex-encoding-3.0.0.tgz", + "integrity": "sha512-eFndh1WEK5YMUYvy3lPlVmYY/fZcQE1D8oSf41Id2vCeIkKJXPcYDCZD+4+xViI6b1XSd7tE+s5AmXzz5ilabQ==", + "optional": true, "dependencies": { - "yallist": "^4.0.0" + "tslib": "^2.6.2" }, "engines": { - "node": ">=10" + "node": ">=16.0.0" } }, - "node_modules/@typescript-eslint/utils/node_modules/semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", - "dev": true, + "node_modules/@smithy/util-middleware": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@smithy/util-middleware/-/util-middleware-3.0.3.tgz", + "integrity": "sha512-l+StyYYK/eO3DlVPbU+4Bi06Jjal+PFLSMmlWM1BEwyLxZ3aKkf1ROnoIakfaA7mC6uw3ny7JBkau4Yc+5zfWw==", + "optional": true, "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" + "@smithy/types": "^3.3.0", + "tslib": "^2.6.2" }, "engines": { - "node": ">=10" + "node": ">=16.0.0" } }, - "node_modules/@typescript-eslint/visitor-keys": { - "version": "6.7.5", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-6.7.5.tgz", - "integrity": "sha512-3MaWdDZtLlsexZzDSdQWsFQ9l9nL8B80Z4fImSpyllFC/KLqWQRdEcB+gGGO+N3Q2uL40EsG66wZLsohPxNXvg==", - "dev": true, + "node_modules/@smithy/util-retry": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@smithy/util-retry/-/util-retry-3.0.3.tgz", + "integrity": "sha512-AFw+hjpbtVApzpNDhbjNG5NA3kyoMs7vx0gsgmlJF4s+yz1Zlepde7J58zpIRIsdjc+emhpAITxA88qLkPF26w==", + "optional": true, "dependencies": { - "@typescript-eslint/types": "6.7.5", - "eslint-visitor-keys": "^3.4.1" + "@smithy/service-error-classification": "^3.0.3", + "@smithy/types": "^3.3.0", + "tslib": "^2.6.2" }, "engines": { - "node": "^16.0.0 || >=18.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" + "node": ">=16.0.0" } }, - "node_modules/@xmldom/xmldom": { - "version": "0.8.10", - "resolved": "https://registry.npmjs.org/@xmldom/xmldom/-/xmldom-0.8.10.tgz", - "integrity": "sha512-2WALfTl4xo2SkGCYRt6rDTFfk9R1czmBvUQy12gK2KuRKIpWEhcbbzy8EZXtz/jkRqHX8bFEc6FC1HjX4TUWYw==", + "node_modules/@smithy/util-stream": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/@smithy/util-stream/-/util-stream-3.0.5.tgz", + "integrity": "sha512-xC3L5PKMAT/Bh8fmHNXP9sdQ4+4aKVUU3EEJ2CF/lLk7R+wtMJM+v/1B4en7jO++Wa5spGzFDBCl0QxgbUc5Ug==", + "optional": true, + "dependencies": { + "@smithy/fetch-http-handler": "^3.2.0", + "@smithy/node-http-handler": "^3.1.1", + "@smithy/types": "^3.3.0", + "@smithy/util-base64": "^3.0.0", + "@smithy/util-buffer-from": "^3.0.0", + "@smithy/util-hex-encoding": "^3.0.0", + "@smithy/util-utf8": "^3.0.0", + "tslib": "^2.6.2" + }, "engines": { - "node": ">=10.0.0" + "node": ">=16.0.0" } }, - "node_modules/abstract-logging": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/abstract-logging/-/abstract-logging-2.0.1.tgz", - "integrity": "sha512-2BjRTZxTPvheOvGbBslFSYOUkr+SjPtOnrLP33f+VIWLzezQpZcqVg7ja3L4dBXmzzgwT+a029jRx5PCi3JuiA==" - }, - "node_modules/accepts": { - "version": "1.3.8", - "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz", - "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==", + "node_modules/@smithy/util-uri-escape": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@smithy/util-uri-escape/-/util-uri-escape-3.0.0.tgz", + "integrity": "sha512-LqR7qYLgZTD7nWLBecUi4aqolw8Mhza9ArpNEQ881MJJIU2sE5iHCK6TdyqqzcDLy0OPe10IY4T8ctVdtynubg==", + "optional": true, "dependencies": { - "mime-types": "~2.1.34", - "negotiator": "0.6.3" + "tslib": "^2.6.2" }, "engines": { - "node": ">= 0.6" + "node": ">=16.0.0" } }, - "node_modules/acorn": { - "version": "7.4.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", - "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", - "bin": { - "acorn": "bin/acorn" + "node_modules/@smithy/util-utf8": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@smithy/util-utf8/-/util-utf8-3.0.0.tgz", + "integrity": "sha512-rUeT12bxFnplYDe815GXbq/oixEGHfRFFtcTF3YdDi/JaENIM6aSYYLJydG83UNzLXeRI5K8abYd/8Sp/QM0kA==", + "optional": true, + "dependencies": { + "@smithy/util-buffer-from": "^3.0.0", + "tslib": "^2.6.2" }, "engines": { - "node": ">=0.4.0" + "node": ">=16.0.0" } }, - "node_modules/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, - "peerDependencies": { - "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" - } + "node_modules/@tokenizer/token": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/@tokenizer/token/-/token-0.3.0.tgz", + "integrity": "sha512-OvjF+z51L3ov0OyAU0duzsYuvO01PH7x4t6DJx+guahgTnBHkhJdG7soQeTSFLWN3efnHyibZ4Z8l2EuWwJN3A==" }, - "node_modules/adm-zip": { - "version": "0.4.9", - "resolved": "https://registry.npmjs.org/adm-zip/-/adm-zip-0.4.9.tgz", - "integrity": "sha512-eknaJ3Io/JasGGinVeqY5TsPlQgHbiNlHnK5zdFPRNs9XRggDykKz8zPesneOMEZJxWji7G3CfsUW0Ds9Dw0Bw==", - "engines": { - "node": ">=0.3.0" + "node_modules/@turf/bbox": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/@turf/bbox/-/bbox-6.3.0.tgz", + "integrity": "sha512-N4ue5Xopu1qieSHP2MA/CJGWHPKaTrVXQJjzHRNcY1vtsO126xbSaJhWUrFc5x5vVkXp0dcucGryO0r5m4o/KA==", + "dependencies": { + "@turf/helpers": "^6.3.0", + "@turf/meta": "^6.3.0" } }, - "node_modules/agent-base": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.0.tgz", - "integrity": "sha512-o/zjMZRhJxny7OyEF+Op8X+efiELC7k7yOjMzgfzVqOzXqkBkWI79YoTdOtsuWd5BWhAGAuOY/Xa6xpiaWXiNg==", - "dev": true, + "node_modules/@turf/bearing": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/bearing/-/bearing-6.5.0.tgz", + "integrity": "sha512-dxINYhIEMzgDOztyMZc20I7ssYVNEpSv04VbMo5YPQsqa80KO3TFvbuCahMsCAW5z8Tncc8dwBlEFrmRjJG33A==", "dependencies": { - "debug": "^4.3.4" + "@turf/helpers": "^6.5.0", + "@turf/invariant": "^6.5.0" }, - "engines": { - "node": ">= 14" + "funding": { + "url": "https://opencollective.com/turf" } }, - "node_modules/agent-base/node_modules/debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", - "dev": true, + "node_modules/@turf/boolean-clockwise": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/boolean-clockwise/-/boolean-clockwise-6.5.0.tgz", + "integrity": "sha512-45+C7LC5RMbRWrxh3Z0Eihsc8db1VGBO5d9BLTOAwU4jR6SgsunTfRWR16X7JUwIDYlCVEmnjcXJNi/kIU3VIw==", "dependencies": { - "ms": "2.1.2" - }, - "engines": { - "node": ">=6.0" + "@turf/helpers": "^6.5.0", + "@turf/invariant": "^6.5.0" }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } + "funding": { + "url": "https://opencollective.com/turf" } }, - "node_modules/agent-base/node_modules/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 - }, - "node_modules/ajv": { - "version": "6.12.6", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", - "dev": true, + "node_modules/@turf/boolean-point-in-polygon": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/boolean-point-in-polygon/-/boolean-point-in-polygon-6.5.0.tgz", + "integrity": "sha512-DtSuVFB26SI+hj0SjrvXowGTUCHlgevPAIsukssW6BG5MlNSBQAo70wpICBNJL6RjukXg8d2eXaAWuD/CqL00A==", "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" + "@turf/helpers": "^6.5.0", + "@turf/invariant": "^6.5.0" }, "funding": { - "type": "github", - "url": "https://github.com/sponsors/epoberezkin" + "url": "https://opencollective.com/turf" } }, - "node_modules/ansi-colors": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-3.2.3.tgz", - "integrity": "sha512-LEHHyuhlPY3TmuUYMh2oz89lTShfvgbmzaBcxve9t/9Wuy7Dwf4yoAKcND7KFT1HAQfqZ12qtc+DUrBMeKF9nw==", - "dev": true, - "engines": { - "node": ">=6" + "node_modules/@turf/boolean-point-on-line": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/boolean-point-on-line/-/boolean-point-on-line-6.5.0.tgz", + "integrity": "sha512-A1BbuQ0LceLHvq7F/P7w3QvfpmZqbmViIUPHdNLvZimFNLo4e6IQunmzbe+8aSStH9QRZm3VOflyvNeXvvpZEQ==", + "dependencies": { + "@turf/helpers": "^6.5.0", + "@turf/invariant": "^6.5.0" + }, + "funding": { + "url": "https://opencollective.com/turf" } }, - "node_modules/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==", - "optional": true, + "node_modules/@turf/boolean-within": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/boolean-within/-/boolean-within-6.5.0.tgz", + "integrity": "sha512-YQB3oU18Inx35C/LU930D36RAVe7LDXk1kWsQ8mLmuqYn9YdPsDQTMTkLJMhoQ8EbN7QTdy333xRQ4MYgToteQ==", "dependencies": { - "type-fest": "^0.21.3" - }, - "engines": { - "node": ">=8" + "@turf/bbox": "^6.5.0", + "@turf/boolean-point-in-polygon": "^6.5.0", + "@turf/boolean-point-on-line": "^6.5.0", + "@turf/helpers": "^6.5.0", + "@turf/invariant": "^6.5.0" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://opencollective.com/turf" } }, - "node_modules/ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", - "dev": true, - "engines": { - "node": ">=0.10.0" + "node_modules/@turf/boolean-within/node_modules/@turf/bbox": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/bbox/-/bbox-6.5.0.tgz", + "integrity": "sha512-RBbLaao5hXTYyyg577iuMtDB8ehxMlUqHEJiMs8jT1GHkFhr6sYre3lmLsPeYEi/ZKj5TP5tt7fkzNdJ4GIVyw==", + "dependencies": { + "@turf/helpers": "^6.5.0", + "@turf/meta": "^6.5.0" + }, + "funding": { + "url": "https://opencollective.com/turf" } }, - "node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "devOptional": true, + "node_modules/@turf/centroid": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/centroid/-/centroid-6.5.0.tgz", + "integrity": "sha512-MwE1oq5E3isewPprEClbfU5pXljIK/GUOMbn22UM3IFPDJX0KeoyLNwghszkdmFp/qMGL/M13MMWvU+GNLXP/A==", "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" + "@turf/helpers": "^6.5.0", + "@turf/meta": "^6.5.0" }, "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" + "url": "https://opencollective.com/turf" } }, - "node_modules/anymatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.2.tgz", - "integrity": "sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==", - "dev": true, + "node_modules/@turf/clone": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/clone/-/clone-6.5.0.tgz", + "integrity": "sha512-mzVtTFj/QycXOn6ig+annKrM6ZlimreKYz6f/GSERytOpgzodbQyOgkfwru100O1KQhhjSudKK4DsQ0oyi9cTw==", "dependencies": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" + "@turf/helpers": "^6.5.0" }, - "engines": { - "node": ">= 8" + "funding": { + "url": "https://opencollective.com/turf" } }, - "node_modules/append-field": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/append-field/-/append-field-1.0.0.tgz", - "integrity": "sha1-HjRA6RXwsSA9I3SOeO3XubW0PlY=" - }, - "node_modules/append-transform": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/append-transform/-/append-transform-1.0.0.tgz", - "integrity": "sha512-P009oYkeHyU742iSZJzZZywj4QRJdnTWffaKuJQLablCZ1uz6/cW4yaRgcDaoQ+uwOxxnt0gRUcwfsNP2ri0gw==", - "dev": true, + "node_modules/@turf/distance": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/distance/-/distance-6.5.0.tgz", + "integrity": "sha512-xzykSLfoURec5qvQJcfifw/1mJa+5UwByZZ5TZ8iaqjGYN0vomhV9aiSLeYdUGtYRESZ+DYC/OzY+4RclZYgMg==", "dependencies": { - "default-require-extensions": "^2.0.0" + "@turf/helpers": "^6.5.0", + "@turf/invariant": "^6.5.0" }, - "engines": { - "node": ">=4" + "funding": { + "url": "https://opencollective.com/turf" } }, - "node_modules/archiver": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/archiver/-/archiver-5.3.0.tgz", - "integrity": "sha512-iUw+oDwK0fgNpvveEsdQ0Ase6IIKztBJU2U0E9MzszMfmVVUyv1QJhS2ITW9ZCqx8dktAxVAjWWkKehuZE8OPg==", + "node_modules/@turf/helpers": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/helpers/-/helpers-6.5.0.tgz", + "integrity": "sha512-VbI1dV5bLFzohYYdgqwikdMVpe7pJ9X3E+dlr425wa2/sMJqYDhTO++ec38/pcPvPE6oD9WEEeU3Xu3gza+VPw==", + "funding": { + "url": "https://opencollective.com/turf" + } + }, + "node_modules/@turf/intersect": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/intersect/-/intersect-6.5.0.tgz", + "integrity": "sha512-2legGJeKrfFkzntcd4GouPugoqPUjexPZnOvfez+3SfIMrHvulw8qV8u7pfVyn2Yqs53yoVCEjS5sEpvQ5YRQg==", "dependencies": { - "archiver-utils": "^2.1.0", - "async": "^3.2.0", - "buffer-crc32": "^0.2.1", - "readable-stream": "^3.6.0", - "readdir-glob": "^1.0.0", - "tar-stream": "^2.2.0", - "zip-stream": "^4.1.0" + "@turf/helpers": "^6.5.0", + "@turf/invariant": "^6.5.0", + "polygon-clipping": "^0.15.3" }, - "engines": { - "node": ">= 10" + "funding": { + "url": "https://opencollective.com/turf" } }, - "node_modules/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==", + "node_modules/@turf/invariant": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/invariant/-/invariant-6.5.0.tgz", + "integrity": "sha512-Wv8PRNCtPD31UVbdJE/KVAWKe7l6US+lJItRR/HOEW3eh+U/JwRCSUl/KZ7bmjM/C+zLNoreM2TU6OoLACs4eg==", "dependencies": { - "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" + "@turf/helpers": "^6.5.0" }, - "engines": { - "node": ">= 6" + "funding": { + "url": "https://opencollective.com/turf" } }, - "node_modules/archiver/node_modules/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==", + "node_modules/@turf/kinks": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/kinks/-/kinks-6.5.0.tgz", + "integrity": "sha512-ViCngdPt1eEL7hYUHR2eHR662GvCgTc35ZJFaNR6kRtr6D8plLaDju0FILeFFWSc+o8e3fwxZEJKmFj9IzPiIQ==", "dependencies": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" + "@turf/helpers": "^6.5.0" }, - "engines": { - "node": ">= 6" + "funding": { + "url": "https://opencollective.com/turf" } }, - "node_modules/archiver/node_modules/string_decoder": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", - "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "node_modules/@turf/line-intersect": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/line-intersect/-/line-intersect-6.5.0.tgz", + "integrity": "sha512-CS6R1tZvVQD390G9Ea4pmpM6mJGPWoL82jD46y0q1KSor9s6HupMIo1kY4Ny+AEYQl9jd21V3Scz20eldpbTVA==", "dependencies": { - "safe-buffer": "~5.2.0" + "@turf/helpers": "^6.5.0", + "@turf/invariant": "^6.5.0", + "@turf/line-segment": "^6.5.0", + "@turf/meta": "^6.5.0", + "geojson-rbush": "3.x" + }, + "funding": { + "url": "https://opencollective.com/turf" } }, - "node_modules/archy": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/archy/-/archy-1.0.0.tgz", - "integrity": "sha1-+cjBN1fMHde8N5rHeyxipcKGjEA=", - "dev": true - }, - "node_modules/argparse": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "node_modules/@turf/line-segment": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/line-segment/-/line-segment-6.5.0.tgz", + "integrity": "sha512-jI625Ho4jSuJESNq66Mmi290ZJ5pPZiQZruPVpmHkUw257Pew0alMmb6YrqYNnLUuiVVONxAAKXUVeeUGtycfw==", "dependencies": { - "sprintf-js": "~1.0.2" + "@turf/helpers": "^6.5.0", + "@turf/invariant": "^6.5.0", + "@turf/meta": "^6.5.0" + }, + "funding": { + "url": "https://opencollective.com/turf" } }, - "node_modules/array-flatten": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", - "integrity": "sha1-ml9pkFGx5wczKPKgCJaLZOopVdI=" - }, - "node_modules/array-from": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/array-from/-/array-from-2.1.1.tgz", - "integrity": "sha1-z+nYwmYoudxa7MYqn12PHzUsEZU=", - "dev": true - }, - "node_modules/array-parallel": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/array-parallel/-/array-parallel-0.1.3.tgz", - "integrity": "sha1-j3hTCJJu1apHjEfmTRszS2wMlH0=" + "node_modules/@turf/meta": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/meta/-/meta-6.5.0.tgz", + "integrity": "sha512-RrArvtsV0vdsCBegoBtOalgdSOfkBrTJ07VkpiCnq/491W67hnMWmDu7e6Ztw0C3WldRYTXkg3SumfdzZxLBHA==", + "dependencies": { + "@turf/helpers": "^6.5.0" + }, + "funding": { + "url": "https://opencollective.com/turf" + } }, - "node_modules/array-series": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/array-series/-/array-series-0.1.5.tgz", - "integrity": "sha1-3103v8XC7wdV4qpPkv6ufUtaly8=" + "node_modules/@turf/point-to-line-distance": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/point-to-line-distance/-/point-to-line-distance-6.5.0.tgz", + "integrity": "sha512-opHVQ4vjUhNBly1bob6RWy+F+hsZDH9SA0UW36pIRzfpu27qipU18xup0XXEePfY6+wvhF6yL/WgCO2IbrLqEA==", + "dependencies": { + "@turf/bearing": "^6.5.0", + "@turf/distance": "^6.5.0", + "@turf/helpers": "^6.5.0", + "@turf/invariant": "^6.5.0", + "@turf/meta": "^6.5.0", + "@turf/projection": "^6.5.0", + "@turf/rhumb-bearing": "^6.5.0", + "@turf/rhumb-distance": "^6.5.0" + }, + "funding": { + "url": "https://opencollective.com/turf" + } }, - "node_modules/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, - "engines": { - "node": ">=8" + "node_modules/@turf/polygon-to-line": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/polygon-to-line/-/polygon-to-line-6.5.0.tgz", + "integrity": "sha512-5p4n/ij97EIttAq+ewSnKt0ruvuM+LIDzuczSzuHTpq4oS7Oq8yqg5TQ4nzMVuK41r/tALCk7nAoBuw3Su4Gcw==", + "dependencies": { + "@turf/helpers": "^6.5.0", + "@turf/invariant": "^6.5.0" + }, + "funding": { + "url": "https://opencollective.com/turf" } }, - "node_modules/arrify": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/arrify/-/arrify-3.0.0.tgz", - "integrity": "sha512-tLkvA81vQG/XqE2mjDkGQHoOINtMHtysSnemrmoGe6PydDPMRbVugqyk4A6V/WDWEfm3l+0d8anA9r8cv/5Jaw==", - "dev": true, - "engines": { - "node": ">=12" + "node_modules/@turf/projection": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/projection/-/projection-6.5.0.tgz", + "integrity": "sha512-/Pgh9mDvQWWu8HRxqpM+tKz8OzgauV+DiOcr3FCjD6ubDnrrmMJlsf6fFJmggw93mtVPrZRL6yyi9aYCQBOIvg==", + "dependencies": { + "@turf/clone": "^6.5.0", + "@turf/helpers": "^6.5.0", + "@turf/meta": "^6.5.0" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://opencollective.com/turf" } }, - "node_modules/asap": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz", - "integrity": "sha1-5QNHYR1+aQlDIIu9r+vLwvuGbUY=" + "node_modules/@turf/rhumb-bearing": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/rhumb-bearing/-/rhumb-bearing-6.5.0.tgz", + "integrity": "sha512-jMyqiMRK4hzREjQmnLXmkJ+VTNTx1ii8vuqRwJPcTlKbNWfjDz/5JqJlb5NaFDcdMpftWovkW5GevfnuzHnOYA==", + "dependencies": { + "@turf/helpers": "^6.5.0", + "@turf/invariant": "^6.5.0" + }, + "funding": { + "url": "https://opencollective.com/turf" + } }, - "node_modules/asn1": { - "version": "0.2.6", - "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.6.tgz", - "integrity": "sha512-ix/FxPn0MDjeyJ7i/yoHGFt/EX6LyNbxSEhPPXODPL+KB0VPk86UYfL0lMdy+KCnv+fmvIzySwaK5COwqVbWTQ==", + "node_modules/@turf/rhumb-distance": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/@turf/rhumb-distance/-/rhumb-distance-6.5.0.tgz", + "integrity": "sha512-oKp8KFE8E4huC2Z1a1KNcFwjVOqa99isxNOwfo4g3SUABQ6NezjKDDrnvC4yI5YZ3/huDjULLBvhed45xdCrzg==", "dependencies": { - "safer-buffer": "~2.1.0" + "@turf/helpers": "^6.5.0", + "@turf/invariant": "^6.5.0" + }, + "funding": { + "url": "https://opencollective.com/turf" } }, - "node_modules/assert": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/assert/-/assert-2.0.0.tgz", - "integrity": "sha512-se5Cd+js9dXJnu6Ag2JFc00t+HmHOen+8Q+L7O9zI0PqQXr20uk2J0XQqMxZEeo5U50o8Nvmmx7dZrl+Ufr35A==", + "node_modules/@types/archiver": { + "version": "5.3.4", + "resolved": "https://registry.npmjs.org/@types/archiver/-/archiver-5.3.4.tgz", + "integrity": "sha512-Lj7fLBIMwYFgViVVZHEdExZC3lVYsl+QL0VmdNdIzGZH544jHveYWij6qdnBgJQDnR7pMKliN9z2cPZFEbhyPw==", "dev": true, "dependencies": { - "es6-object-assign": "^1.1.0", - "is-nan": "^1.2.1", - "object-is": "^1.0.1", - "util": "^0.12.0" + "@types/readdir-glob": "*" } }, - "node_modules/assert-never": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/assert-never/-/assert-never-1.2.1.tgz", - "integrity": "sha512-TaTivMB6pYI1kXwrFlEhLeGfOqoDNdTxjCdwRfFFkEA30Eu+k48W34nlok2EYWJfFFzqaEmichdNM7th6M5HNw==" + "node_modules/@types/async": { + "version": "3.2.24", + "resolved": "https://registry.npmjs.org/@types/async/-/async-3.2.24.tgz", + "integrity": "sha512-8iHVLHsCCOBKjCF2KwFe0p9Z3rfM9mL+sSP8btyR5vTjJRAqpBYD28/ZLgXPf0pjG1VxOvtCV/BgXkQbpSe8Hw==", + "dev": true, + "license": "MIT" }, - "node_modules/assert-plus": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", - "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=", - "engines": { - "node": ">=0.8" + "node_modules/@types/body-parser": { + "version": "1.19.5", + "resolved": "https://registry.npmjs.org/@types/body-parser/-/body-parser-1.19.5.tgz", + "integrity": "sha512-fB3Zu92ucau0iQ0JMCFQE7b/dv8Ot07NI3KaZIkIUNXq82k4eBAqUaneXfleGY9JWskeS9y+u0nXMyspcuQrCg==", + "dependencies": { + "@types/connect": "*", + "@types/node": "*" } }, - "node_modules/assertion-error": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/assertion-error/-/assertion-error-1.1.0.tgz", - "integrity": "sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw==", + "node_modules/@types/bson": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/@types/bson/-/bson-1.0.11.tgz", + "integrity": "sha512-j+UcCWI+FsbI5/FQP/Kj2CXyplWAz39ktHFkXk84h7dNblKRSoNJs95PZFRd96NQGqsPEPgeclqnznWZr14ZDA==", "dev": true, - "engines": { - "node": "*" + "dependencies": { + "@types/node": "*" } }, - "node_modules/async": { - "version": "3.2.4", - "resolved": "https://registry.npmjs.org/async/-/async-3.2.4.tgz", - "integrity": "sha512-iAB+JbDEGXhyIUavoDl9WP/Jj106Kz9DEn1DPgYw5ruDn0e3Wgi3sKFm55sASdGBNOQB8F59d9qQ7deqrHA8wQ==" - }, - "node_modules/async-mutex": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/async-mutex/-/async-mutex-0.4.1.tgz", - "integrity": "sha512-WfoBo4E/TbCX1G95XTjbWTE3X2XLG0m1Xbv2cwOtuPdyH9CZvnaA5nCt1ucjaKEgW2A5IF71hxrRhr83Je5xjA==", + "node_modules/@types/busboy": { + "version": "1.5.4", + "resolved": "https://registry.npmjs.org/@types/busboy/-/busboy-1.5.4.tgz", + "integrity": "sha512-kG7WrUuAKK0NoyxfQHsVE6j1m01s6kMma64E+OZenQABMQyTJop1DumUWcLwAQ2JzpefU7PDYoRDKl8uZosFjw==", "dev": true, + "license": "MIT", "dependencies": { - "tslib": "^2.4.0" + "@types/node": "*" } }, - "node_modules/async-mutex/node_modules/tslib": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz", - "integrity": "sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==", - "dev": true - }, - "node_modules/asynckit": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", - "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=" + "node_modules/@types/chai": { + "version": "4.3.20", + "resolved": "https://registry.npmjs.org/@types/chai/-/chai-4.3.20.tgz", + "integrity": "sha512-/pC9HAB5I/xMlc5FP77qjCnI16ChlJfW0tGa0IUcFn38VJrTV6DeZ60NU5KZBtaOZqjdpwTWohz5HU1RrhiYxQ==", + "dev": true, + "license": "MIT" }, - "node_modules/available-typed-arrays": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.5.tgz", - "integrity": "sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==", + "node_modules/@types/chai-as-promised": { + "version": "7.1.8", + "resolved": "https://registry.npmjs.org/@types/chai-as-promised/-/chai-as-promised-7.1.8.tgz", + "integrity": "sha512-ThlRVIJhr69FLlh6IctTXFkmhtP3NpMZ2QGq69StYLyKZFp/HOp1VdKZj7RvfNWYYcJ1xlbLGLLWj1UvP5u/Gw==", "dev": true, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "license": "MIT", + "dependencies": { + "@types/chai": "*" } }, - "node_modules/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=", - "dev": true, - "engines": { - "node": "*" + "node_modules/@types/connect": { + "version": "3.4.38", + "resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.38.tgz", + "integrity": "sha512-K6uROf1LD88uDQqJCktA4yzL1YYAK6NgfsI0v/mTgyPKWsX1CnJ0XPSDhViejru1GcRkLWb8RlzFYJRqGUbaug==", + "dependencies": { + "@types/node": "*" } }, - "node_modules/aws4": { - "version": "1.11.0", - "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.11.0.tgz", - "integrity": "sha512-xh1Rl34h6Fi1DC2WWKfxUTVqRsNnr6LsKz2+hfwDxQJWmrx8+c7ylaqBMcHfl1U1r2dsifOvKX3LQuLNZ+XSvA==", + "node_modules/@types/cookiejar": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@types/cookiejar/-/cookiejar-2.1.5.tgz", + "integrity": "sha512-he+DHOWReW0nghN24E1WUqM0efK4kI9oTqDm6XmK8ZPe2djZ90BSNdGnIyCLzCPw7/pogPlGbzI2wHGGmi4O/Q==", "dev": true }, - "node_modules/axios": { - "version": "1.6.5", - "resolved": "https://registry.npmjs.org/axios/-/axios-1.6.5.tgz", - "integrity": "sha512-Ii012v05KEVuUoFWmMW/UQv9aRIc3ZwkWDcM+h5Il8izZCtRVpDUfwpoFf7eOtajT3QiGR4yDUx7lPqHJULgbg==", - "dev": true, + "node_modules/@types/debug": { + "version": "4.1.12", + "resolved": "https://registry.npmjs.org/@types/debug/-/debug-4.1.12.tgz", + "integrity": "sha512-vIChWdVG3LG1SMxEvI/AK+FWJthlrqlTu7fbrlywTkkaONwk/UAGaULXRlf8vkzFBLVm0zkMdCquhL5aOjhXPQ==", "dependencies": { - "follow-redirects": "^1.15.4", - "form-data": "^4.0.0", - "proxy-from-env": "^1.1.0" + "@types/ms": "*" } }, - "node_modules/axios/node_modules/form-data": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz", - "integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==", + "node_modules/@types/deep-equal": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/@types/deep-equal/-/deep-equal-1.0.4.tgz", + "integrity": "sha512-tqdiS4otQP4KmY0PR3u6KbZ5EWvhNdUoS/jc93UuK23C220lOZ/9TvjfxdPcKvqwwDVtmtSCrnr0p/2dirAxkA==", "dev": true, + "license": "MIT" + }, + "node_modules/@types/express": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/@types/express/-/express-4.17.21.tgz", + "integrity": "sha512-ejlPM315qwLpaQlQDTjPdsUFSc6ZsP4AN6AlWnogPjQ7CVi7PYF3YVz+CY3jE2pwYf7E/7HlDAN0rV2GxTG0HQ==", + "license": "MIT", "dependencies": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.8", - "mime-types": "^2.1.12" - }, - "engines": { - "node": ">= 6" + "@types/body-parser": "*", + "@types/express-serve-static-core": "^4.17.33", + "@types/qs": "*", + "@types/serve-static": "*" } }, - "node_modules/b4a": { - "version": "1.6.4", - "resolved": "https://registry.npmjs.org/b4a/-/b4a-1.6.4.tgz", - "integrity": "sha512-fpWrvyVHEKyeEvbKZTVOeZF3VSKKWtJxFIxX/jaVPf+cLbGUSitjb49pHLqPV2BUNNZ0LcoeEGfE/YCpyDYHIw==", - "dev": true - }, - "node_modules/babel-walk": { - "version": "3.0.0-canary-5", - "resolved": "https://registry.npmjs.org/babel-walk/-/babel-walk-3.0.0-canary-5.tgz", - "integrity": "sha512-GAwkz0AihzY5bkwIY5QDR+LvsRQgB/B+1foMPvi0FZPMl5fjD7ICiznUiBdLYMH1QYe6vqu4gWYytZOccLouFw==", + "node_modules/@types/express-serve-static-core": { + "version": "4.19.6", + "resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.19.6.tgz", + "integrity": "sha512-N4LZ2xG7DatVqhCZzOGb1Yi5lMbXSZcmdLDe9EzSndPV2HpWYWzRbaerl2n27irrm94EPpprqa8KpskPT085+A==", + "license": "MIT", "dependencies": { - "@babel/types": "^7.9.6" - }, - "engines": { - "node": ">= 10.0.0" + "@types/node": "*", + "@types/qs": "*", + "@types/range-parser": "*", + "@types/send": "*" } }, - "node_modules/backoff": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/backoff/-/backoff-2.5.0.tgz", - "integrity": "sha512-wC5ihrnUXmR2douXmXLCe5O3zg3GKIyvRi/hi58a/XyRxVI+3/yM0PYueQOZXPXQ9pxBislYkw+sF9b7C/RuMA==", + "node_modules/@types/fs-extra": { + "version": "8.1.5", + "resolved": "https://registry.npmjs.org/@types/fs-extra/-/fs-extra-8.1.5.tgz", + "integrity": "sha512-0dzKcwO+S8s2kuF5Z9oUWatQJj5Uq/iqphEtE3GQJVRRYm/tD1LglU2UnXi2A8jLq5umkGouOXOR9y0n613ZwQ==", + "dev": true, + "license": "MIT", "dependencies": { - "precond": "0.2" - }, - "engines": { - "node": ">= 0.6" + "@types/node": "*" } }, - "node_modules/balanced-match": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", - "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" + "node_modules/@types/geojson": { + "version": "7946.0.16", + "resolved": "https://registry.npmjs.org/@types/geojson/-/geojson-7946.0.16.tgz", + "integrity": "sha512-6C8nqWur3j98U6+lXDfTUWIfgvZU+EumvpHKcYjujKH7woYyLj2sUmff0tRhrqM7BohUw7Pz3ZB1jj2gW9Fvmg==", + "license": "MIT" }, - "node_modules/base-64": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/base-64/-/base-64-1.0.0.tgz", - "integrity": "sha512-kwDPIFCGx0NZHog36dj+tHiwP4QMzsZ3AgMViUBKI0+V5n4U0ufTCUMhnQ04diaRI8EX/QcPfql7zlhZ7j4zgg==" + "node_modules/@types/http-errors": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/@types/http-errors/-/http-errors-2.0.4.tgz", + "integrity": "sha512-D0CFMMtydbJAegzOyHjtiKPLlvnm3iTZyZRSZoLq2mRhDdmLfIWOCYPfQJ4cu2erKghU++QvjcUjp/5h7hESpA==" }, - "node_modules/base64-js": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", - "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] - }, - "node_modules/base64url": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/base64url/-/base64url-3.0.1.tgz", - "integrity": "sha512-ir1UPr3dkwexU7FdV8qBBbNDRUhMmIekYMFZfi+C/sLNnRESKPl23nB9b2pltqfOQNnGzsDdId90AEtG5tCx4A==", - "engines": { - "node": ">=6.0.0" - } + "node_modules/@types/json-schema": { + "version": "7.0.15", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.15.tgz", + "integrity": "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==", + "license": "MIT" }, - "node_modules/bcrypt-pbkdf": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", - "integrity": "sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4=", + "node_modules/@types/json2csv": { + "version": "4.5.1", + "resolved": "https://registry.npmjs.org/@types/json2csv/-/json2csv-4.5.1.tgz", + "integrity": "sha512-sZbRdrTddxYzhydkC5eMEbRXU8pjcV8Zyxf2If7YO3GVxWY18fs0P5YJyjRfkMKTAsA8ynTRQWhvWbHhBzBFVA==", "dev": true, + "license": "MIT", "dependencies": { - "tweetnacl": "^0.14.3" + "@types/node": "*" } }, - "node_modules/bcryptjs": { - "version": "2.4.3", - "resolved": "https://registry.npmjs.org/bcryptjs/-/bcryptjs-2.4.3.tgz", - "integrity": "sha512-V/Hy/X9Vt7f3BbPJEi8BdVFMByHi+jNXrYkW3huaybV/kQ0KJg0Y6PkEMbn+zeT+i+SiKZ/HMqJGIIt4LZDqNQ==" - }, - "node_modules/better-sqlite3": { - "version": "8.6.0", - "resolved": "https://registry.npmjs.org/better-sqlite3/-/better-sqlite3-8.6.0.tgz", - "integrity": "sha512-jwAudeiTMTSyby+/SfbHDebShbmC2MCH8mU2+DXi0WJfv13ypEJm47cd3kljmy/H130CazEvkf2Li//ewcMJ1g==", - "hasInstallScript": true, + "node_modules/@types/ldapjs": { + "version": "2.2.5", + "resolved": "https://registry.npmjs.org/@types/ldapjs/-/ldapjs-2.2.5.tgz", + "integrity": "sha512-Lv/nD6QDCmcT+V1vaTRnEKE8UgOilVv5pHcQuzkU1LcRe4mbHHuUo/KHi0LKrpdHhQY8FJzryF38fcVdeUIrzg==", "dependencies": { - "bindings": "^1.5.0", - "prebuild-install": "^7.1.1" + "@types/node": "*" } }, - "node_modules/binary-extensions": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", - "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", + "node_modules/@types/lodash": { + "version": "4.17.16", + "resolved": "https://registry.npmjs.org/@types/lodash/-/lodash-4.17.16.tgz", + "integrity": "sha512-HX7Em5NYQAXKW+1T+FiuG27NGwzJfCX3s1GjOa7ujxZa52kjJLOr4FUxT+giF6Tgxv1e+/czV/iTtBw27WTU9g==", "dev": true, - "engines": { - "node": ">=8" + "license": "MIT" + }, + "node_modules/@types/methods": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/@types/methods/-/methods-1.1.4.tgz", + "integrity": "sha512-ymXWVrDiCxTBE3+RIrrP533E70eA+9qu7zdWoHuOmGujkYtzf4HQF96b8nwHLqhuf4ykX61IGRIB38CC6/sImQ==", + "dev": true + }, + "node_modules/@types/mime": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/@types/mime/-/mime-1.3.5.tgz", + "integrity": "sha512-/pyBZWSLD2n0dcHE3hq8s8ZvcETHtEuF+3E7XVt0Ig2nvsVQXdghHVcEkIWjy9A0wKfTn97a/PSDYohKIlnP/w==" + }, + "node_modules/@types/mime-types": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/@types/mime-types/-/mime-types-2.1.4.tgz", + "integrity": "sha512-lfU4b34HOri+kAY5UheuFMWPDOI+OPceBSHZKp69gEyTL/mmJ4cnU6Y/rlme3UL3GyOn6Y42hyIEw0/q8sWx5w==", + "license": "MIT" + }, + "node_modules/@types/mocha": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-7.0.2.tgz", + "integrity": "sha512-ZvO2tAcjmMi8V/5Z3JsyofMe3hasRcaw88cto5etSVMwVQfeivGAlEYmaQgceUSVYFofVjT+ioHsATjdWcFt1w==", + "dev": true + }, + "node_modules/@types/ms": { + "version": "0.7.34", + "resolved": "https://registry.npmjs.org/@types/ms/-/ms-0.7.34.tgz", + "integrity": "sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==" + }, + "node_modules/@types/multer": { + "version": "1.4.12", + "resolved": "https://registry.npmjs.org/@types/multer/-/multer-1.4.12.tgz", + "integrity": "sha512-pQ2hoqvXiJt2FP9WQVLPRO+AmiIm/ZYkavPlIQnx282u4ZrVdztx0pkh3jjpQt0Kz+YI0YhSG264y08UJKoUQg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/express": "*" } }, - "node_modules/bindings": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/bindings/-/bindings-1.5.0.tgz", - "integrity": "sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==", + "node_modules/@types/node": { + "version": "18.19.80", + "resolved": "https://registry.npmjs.org/@types/node/-/node-18.19.80.tgz", + "integrity": "sha512-kEWeMwMeIvxYkeg1gTc01awpwLbfMRZXdIhwRcakd/KlK53jmRC26LqcbIt7fnAQTu5GzlnWmzA3H6+l1u6xxQ==", + "license": "MIT", "dependencies": { - "file-uri-to-path": "1.0.0" + "undici-types": "~5.26.4" } }, - "node_modules/bl": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz", - "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==", + "node_modules/@types/node-fetch": { + "version": "2.6.12", + "resolved": "https://registry.npmjs.org/@types/node-fetch/-/node-fetch-2.6.12.tgz", + "integrity": "sha512-8nneRWKCg3rMtF69nLQJnOYUcbafYeFSjqkw3jCRLsqkWFlHaoQrr5mXmofFGOx3DKn7UfmBMyov8ySvLRVldA==", + "dev": true, + "license": "MIT", "dependencies": { - "buffer": "^5.5.0", - "inherits": "^2.0.4", - "readable-stream": "^3.4.0" + "@types/node": "*", + "form-data": "^4.0.0" } }, - "node_modules/bl/node_modules/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==", + "node_modules/@types/passport": { + "version": "1.0.17", + "resolved": "https://registry.npmjs.org/@types/passport/-/passport-1.0.17.tgz", + "integrity": "sha512-aciLyx+wDwT2t2/kJGJR2AEeBz0nJU4WuRX04Wu9Dqc5lSUtwu0WERPHYsLhF9PtseiAMPBGNUOtFjxZ56prsg==", + "license": "MIT", "dependencies": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - }, - "engines": { - "node": ">= 6" + "@types/express": "*" } }, - "node_modules/bl/node_modules/string_decoder": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", - "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "node_modules/@types/passport-strategy": { + "version": "0.2.38", + "resolved": "https://registry.npmjs.org/@types/passport-strategy/-/passport-strategy-0.2.38.tgz", + "integrity": "sha512-GC6eMqqojOooq993Tmnmp7AUTbbQSgilyvpCYQjT+H6JfG/g6RGc7nXEniZlp0zyKJ0WUdOiZWLBZft9Yug1uA==", "dependencies": { - "safe-buffer": "~5.2.0" + "@types/express": "*", + "@types/passport": "*" } }, - "node_modules/bluebird": { - "version": "3.7.2", - "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz", - "integrity": "sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==" + "node_modules/@types/proj4": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/@types/proj4/-/proj4-2.5.2.tgz", + "integrity": "sha512-/Nmfn9p08yaYw6xo5f2b0L+2oHk2kZeOkp5v+4VCeNfq+ETlLQbmHmC97/pjDIEZy8jxwz7pdPpwNzDHM5cuJw==" }, - "node_modules/body-parser": { - "version": "1.19.2", - "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.19.2.tgz", - "integrity": "sha512-SAAwOxgoCKMGs9uUAUFHygfLAyaniaoun6I8mFY9pRAJL9+Kec34aU+oIjDhTycub1jozEfEwx1W1IuOYxVSFw==", + "node_modules/@types/qs": { + "version": "6.9.15", + "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.15.tgz", + "integrity": "sha512-uXHQKES6DQKKCLh441Xv/dwxOq1TVS3JPUMlEqoEglvlhR6Mxnlew/Xq/LRVHpLyk7iK3zODe1qYHIMltO7XGg==" + }, + "node_modules/@types/range-parser": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/@types/range-parser/-/range-parser-1.2.7.tgz", + "integrity": "sha512-hKormJbkJqzQGhziax5PItDUTMAM9uE2XXQmM37dyd4hVM+5aVl7oVxMVUiVQn2oCQFN/LKCZdvSM0pFRqbSmQ==" + }, + "node_modules/@types/readdir-glob": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/@types/readdir-glob/-/readdir-glob-1.1.5.tgz", + "integrity": "sha512-raiuEPUYqXu+nvtY2Pe8s8FEmZ3x5yAH4VkLdihcPdalvsHltomrRC9BzuStrJ9yk06470hS0Crw0f1pXqD+Hg==", + "dev": true, "dependencies": { - "bytes": "3.1.2", - "content-type": "~1.0.4", - "debug": "2.6.9", - "depd": "~1.1.2", - "http-errors": "1.8.1", - "iconv-lite": "0.4.24", - "on-finished": "~2.3.0", - "qs": "6.9.7", - "raw-body": "2.4.3", - "type-is": "~1.6.18" - }, - "engines": { - "node": ">= 0.8" + "@types/node": "*" } }, - "node_modules/body-parser/node_modules/iconv-lite": { - "version": "0.4.24", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", - "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", + "node_modules/@types/semver": { + "version": "7.5.8", + "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.5.8.tgz", + "integrity": "sha512-I8EUhyrgfLrcTkzV3TSsGyl1tSuPrEDzr0yd5m90UgNxQkyDXULk3b6MlQqTCpZpNtWe1K0hzclnZkTcLBe2UQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/send": { + "version": "0.17.4", + "resolved": "https://registry.npmjs.org/@types/send/-/send-0.17.4.tgz", + "integrity": "sha512-x2EM6TJOybec7c52BX0ZspPodMsQUd5L6PRwOunVyVUhXiBSKf3AezDL8Dgvgt5o0UfKNfuA0eMLr2wLT4AiBA==", "dependencies": { - "safer-buffer": ">= 2.1.2 < 3" - }, - "engines": { - "node": ">=0.10.0" + "@types/mime": "^1", + "@types/node": "*" } }, - "node_modules/body-parser/node_modules/qs": { - "version": "6.9.7", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.9.7.tgz", - "integrity": "sha512-IhMFgUmuNpyRfxA90umL7ByLlgRXu6tIfKPpF5TmcfRLlLCckfP/g3IQmju6jjpu+Hh8rA+2p6A27ZSPOOHdKw==", - "engines": { - "node": ">=0.6" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node_modules/@types/serve-static": { + "version": "1.15.7", + "resolved": "https://registry.npmjs.org/@types/serve-static/-/serve-static-1.15.7.tgz", + "integrity": "sha512-W8Ym+h8nhuRwaKPaDw34QUkwsGi6Rc4yYqvKFo5rm2FUEhCFbzVWrxXUxuKK8TASjWsysJY0nsmNCGhCOIsrOw==", + "dependencies": { + "@types/http-errors": "*", + "@types/node": "*", + "@types/send": "*" } }, - "node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "node_modules/@types/sinon": { + "version": "9.0.11", + "resolved": "https://registry.npmjs.org/@types/sinon/-/sinon-9.0.11.tgz", + "integrity": "sha512-PwP4UY33SeeVKodNE37ZlOsR9cReypbMJOhZ7BVE0lB+Hix3efCOxiJWiE5Ia+yL9Cn2Ch72EjFTRze8RZsNtg==", + "dev": true, + "license": "MIT", "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" + "@types/sinonjs__fake-timers": "*" } }, - "node_modules/braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "node_modules/@types/sinon-chai": { + "version": "3.2.12", + "resolved": "https://registry.npmjs.org/@types/sinon-chai/-/sinon-chai-3.2.12.tgz", + "integrity": "sha512-9y0Gflk3b0+NhQZ/oxGtaAJDvRywCa5sIyaVnounqLvmf93yBF4EgIRspePtkMs3Tr844nCclYMlcCNmLCvjuQ==", "dev": true, + "license": "MIT", "dependencies": { - "fill-range": "^7.0.1" - }, - "engines": { - "node": ">=8" + "@types/chai": "*", + "@types/sinon": "*" } }, - "node_modules/brorand": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz", - "integrity": "sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8=" - }, - "node_modules/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==", + "node_modules/@types/sinonjs__fake-timers": { + "version": "8.1.5", + "resolved": "https://registry.npmjs.org/@types/sinonjs__fake-timers/-/sinonjs__fake-timers-8.1.5.tgz", + "integrity": "sha512-mQkU2jY8jJEF7YHjHvsQO8+3ughTL1mcnn96igfhONmR+fUPSKIkefQYpSe8bsly2Ep7oQbn/6VG5/9/0qcArQ==", "dev": true }, - "node_modules/browserify-aes": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz", - "integrity": "sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==", - "dependencies": { - "buffer-xor": "^1.0.3", - "cipher-base": "^1.0.0", - "create-hash": "^1.1.0", - "evp_bytestokey": "^1.0.3", - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" + "node_modules/@types/superagent": { + "version": "8.1.9", + "resolved": "https://registry.npmjs.org/@types/superagent/-/superagent-8.1.9.tgz", + "integrity": "sha512-pTVjI73witn+9ILmoJdajHGW2jkSaOzhiFYF1Rd3EQ94kymLqB9PjD9ISg7WaALC7+dCHT0FGe9T2LktLq/3GQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/cookiejar": "^2.1.5", + "@types/methods": "^1.1.4", + "@types/node": "*", + "form-data": "^4.0.0" } }, - "node_modules/bson": { - "version": "1.0.9", - "resolved": "https://registry.npmjs.org/bson/-/bson-1.0.9.tgz", - "integrity": "sha512-IQX9/h7WdMBIW/q/++tGd+emQr0XMdeZ6icnT/74Xk9fnabWn+gZgpE+9V+gujL3hhJOoNrnDVY7tWdzc7NUTg==", - "deprecated": "Fixed a critical issue with BSON serialization documented in CVE-2019-2391, see https://bit.ly/2KcpXdo for more details", - "engines": { - "node": ">=0.6.19" + "node_modules/@types/supertest": { + "version": "2.0.16", + "resolved": "https://registry.npmjs.org/@types/supertest/-/supertest-2.0.16.tgz", + "integrity": "sha512-6c2ogktZ06tr2ENoZivgm7YnprnhYE4ZoXGMY+oA7IuAf17M8FWvujXZGmxLv8y0PTyts4x5A+erSwVUFA8XSg==", + "dev": true, + "dependencies": { + "@types/superagent": "*" } }, - "node_modules/buffer": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", - "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], + "node_modules/@types/uniqid": { + "version": "5.3.4", + "resolved": "https://registry.npmjs.org/@types/uniqid/-/uniqid-5.3.4.tgz", + "integrity": "sha512-AgC+o3/8/QEHuU3w5w2jZ8auQtjSJ/s8G8RfEk9CYLogK1RGXqxhHH0wOEAu8uHXjvj8oh/dRtfgok4IHKxh/Q==", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/webidl-conversions": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/@types/webidl-conversions/-/webidl-conversions-7.0.3.tgz", + "integrity": "sha512-CiJJvcRtIgzadHCYXw7dqEnMNRjhGZlYK05Mj9OyktqV8uVT8fD2BFOB7S1uwBE3Kj2Z+4UyPmFw/Ixgw/LAlA==" + }, + "node_modules/@types/whatwg-url": { + "version": "8.2.2", + "resolved": "https://registry.npmjs.org/@types/whatwg-url/-/whatwg-url-8.2.2.tgz", + "integrity": "sha512-FtQu10RWgn3D9U4aazdwIE2yzphmTJREDqNdODHrbrZmmMqI0vMheC/6NE/J1Yveaj8H+ela+YwWTjq5PGmuhA==", "dependencies": { - "base64-js": "^1.3.1", - "ieee754": "^1.1.13" + "@types/node": "*", + "@types/webidl-conversions": "*" } }, - "node_modules/buffer-crc32": { - "version": "0.2.13", - "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", - "integrity": "sha1-DTM+PwDqxQqhRUq9MO+MKl2ackI=", + "node_modules/@types/xml-crypto": { + "version": "1.4.6", + "resolved": "https://registry.npmjs.org/@types/xml-crypto/-/xml-crypto-1.4.6.tgz", + "integrity": "sha512-A6jEW2FxLZo1CXsRWnZHUX2wzR3uDju2Bozt6rDbSmU/W8gkilaVbwFEVN0/NhnUdMVzwYobWtM6bU1QJJFb7Q==", + "dependencies": { + "@types/node": "*", + "xpath": "0.0.27" + } + }, + "node_modules/@types/xml-crypto/node_modules/xpath": { + "version": "0.0.27", + "resolved": "https://registry.npmjs.org/xpath/-/xpath-0.0.27.tgz", + "integrity": "sha512-fg03WRxtkCV6ohClePNAECYsmpKKTv5L8y/X3Dn1hQrec3POx2jHZ/0P2qQ6HvsrU1BmeqXcof3NGGueG6LxwQ==", "engines": { - "node": "*" + "node": ">=0.6.0" } }, - "node_modules/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=" + "node_modules/@types/xml-encryption": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/@types/xml-encryption/-/xml-encryption-1.2.4.tgz", + "integrity": "sha512-I69K/WW1Dv7j6O3jh13z0X8sLWJRXbu5xnHDl9yHzUNDUBtUoBY058eb5s+x/WG6yZC1h8aKdI2EoyEPjyEh+Q==", + "dependencies": { + "@types/node": "*" + } }, - "node_modules/buffer-from": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", - "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==" - }, - "node_modules/buffer-shims": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/buffer-shims/-/buffer-shims-1.0.0.tgz", - "integrity": "sha1-mXjOMXOIxkmth5MCjDR37wRKi1E=" - }, - "node_modules/buffer-xor": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz", - "integrity": "sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk=" - }, - "node_modules/busboy": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/busboy/-/busboy-1.6.0.tgz", - "integrity": "sha512-8SFQbg/0hQ9xy3UNTB0YEnsNBbWfhf7RtnzpL7TkBiTBRfrQ9Fxcnz7VJsleJpyp6rVLvXiuORqjlHi5q+PYuA==", + "node_modules/@types/xml2js": { + "version": "0.4.14", + "resolved": "https://registry.npmjs.org/@types/xml2js/-/xml2js-0.4.14.tgz", + "integrity": "sha512-4YnrRemBShWRO2QjvUin8ESA41rH+9nQGLUGZV/1IDhi3SL9OhdpNC/MrulTWuptXKwhx/aDxE7toV0f/ypIXQ==", "dependencies": { - "streamsearch": "^1.1.0" - }, - "engines": { - "node": ">=10.16.0" + "@types/node": "*" } }, - "node_modules/bytes": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", - "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", + "node_modules/@typescript-eslint/eslint-plugin": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-6.21.0.tgz", + "integrity": "sha512-oy9+hTPCUFpngkEZUSzbf9MxI65wbKFoQYsgPdILTfbUldp5ovUuphZVe4i30emU9M/kP+T64Di0mxl7dSw3MA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@eslint-community/regexpp": "^4.5.1", + "@typescript-eslint/scope-manager": "6.21.0", + "@typescript-eslint/type-utils": "6.21.0", + "@typescript-eslint/utils": "6.21.0", + "@typescript-eslint/visitor-keys": "6.21.0", + "debug": "^4.3.4", + "graphemer": "^1.4.0", + "ignore": "^5.2.4", + "natural-compare": "^1.4.0", + "semver": "^7.5.4", + "ts-api-utils": "^1.0.1" + }, "engines": { - "node": ">= 0.8" + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "@typescript-eslint/parser": "^6.0.0 || ^6.0.0-alpha", + "eslint": "^7.0.0 || ^8.0.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } } }, - "node_modules/caching-transform": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/caching-transform/-/caching-transform-3.0.2.tgz", - "integrity": "sha512-Mtgcv3lh3U0zRii/6qVgQODdPA4G3zhG+jtbCWj39RXuUFTMzH0vcdMtaJS1jPowd+It2Pqr6y3NJMQqOqCE2w==", + "node_modules/@typescript-eslint/parser": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-6.21.0.tgz", + "integrity": "sha512-tbsV1jPne5CkFQCgPBcDOt30ItF7aJoZL997JSF7MhGQqOeT3svWRYxiqlfA5RUdlHN6Fi+EI9bxqbdyAUZjYQ==", "dev": true, + "license": "BSD-2-Clause", "dependencies": { - "hasha": "^3.0.0", - "make-dir": "^2.0.0", - "package-hash": "^3.0.0", - "write-file-atomic": "^2.4.2" + "@typescript-eslint/scope-manager": "6.21.0", + "@typescript-eslint/types": "6.21.0", + "@typescript-eslint/typescript-estree": "6.21.0", + "@typescript-eslint/visitor-keys": "6.21.0", + "debug": "^4.3.4" }, "engines": { - "node": ">=6" + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^7.0.0 || ^8.0.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } } }, - "node_modules/call-bind": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", - "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", + "node_modules/@typescript-eslint/scope-manager": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-6.21.0.tgz", + "integrity": "sha512-OwLUIWZJry80O99zvqXVEioyniJMa+d2GrqpUTqi5/v5D5rOrppJVBPa0yKCblcigC0/aYAzxxqQ1B+DS2RYsg==", + "dev": true, + "license": "MIT", "dependencies": { - "function-bind": "^1.1.1", - "get-intrinsic": "^1.0.2" + "@typescript-eslint/types": "6.21.0", + "@typescript-eslint/visitor-keys": "6.21.0" + }, + "engines": { + "node": "^16.0.0 || >=18.0.0" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" } }, - "node_modules/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=", - "dev": true - }, - "node_modules/callsites": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", - "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "node_modules/@typescript-eslint/type-utils": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-6.21.0.tgz", + "integrity": "sha512-rZQI7wHfao8qMX3Rd3xqeYSMCL3SoiSQLBATSiVKARdFGCYSRvmViieZjqc58jKgs8Y8i9YvVVhRbHSTA4VBag==", "dev": true, + "license": "MIT", + "dependencies": { + "@typescript-eslint/typescript-estree": "6.21.0", + "@typescript-eslint/utils": "6.21.0", + "debug": "^4.3.4", + "ts-api-utils": "^1.0.1" + }, "engines": { - "node": ">=6" + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^7.0.0 || ^8.0.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } } }, - "node_modules/camelcase": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", - "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", + "node_modules/@typescript-eslint/types": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-6.21.0.tgz", + "integrity": "sha512-1kFmZ1rOm5epu9NZEZm1kckCDGj5UJEf7P1kliH4LKu/RkwpsfqqGmY2OOcUs18lSlQBKLDYBOGxRVtrMN5lpg==", "dev": true, + "license": "MIT", "engines": { - "node": ">=10" + "node": "^16.0.0 || >=18.0.0" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/caseless": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", - "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=", - "dev": true - }, - "node_modules/cfenv": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/cfenv/-/cfenv-1.0.3.tgz", - "integrity": "sha1-Ry/QwFs72y0O3ndeEkgDqxJXJ5M=", - "dependencies": { - "js-yaml": "3.4.x", - "ports": "1.1.x", - "underscore": "1.8.x" + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" } }, - "node_modules/chai": { - "version": "4.3.6", - "resolved": "https://registry.npmjs.org/chai/-/chai-4.3.6.tgz", - "integrity": "sha512-bbcp3YfHCUzMOvKqsztczerVgBKSsEijCySNlHHbX3VG1nskvqjz5Rfso1gGwD6w6oOV3eI60pKuMOV5MV7p3Q==", + "node_modules/@typescript-eslint/typescript-estree": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-6.21.0.tgz", + "integrity": "sha512-6npJTkZcO+y2/kr+z0hc4HwNfrrP4kNYh57ek7yCNlrBjWQ1Y0OS7jiZTkgumrvkX5HkEKXFZkkdFNkaW2wmUQ==", "dev": true, + "license": "BSD-2-Clause", "dependencies": { - "assertion-error": "^1.1.0", - "check-error": "^1.0.2", - "deep-eql": "^3.0.1", - "get-func-name": "^2.0.0", - "loupe": "^2.3.1", - "pathval": "^1.1.1", - "type-detect": "^4.0.5" + "@typescript-eslint/types": "6.21.0", + "@typescript-eslint/visitor-keys": "6.21.0", + "debug": "^4.3.4", + "globby": "^11.1.0", + "is-glob": "^4.0.3", + "minimatch": "9.0.3", + "semver": "^7.5.4", + "ts-api-utils": "^1.0.1" }, "engines": { - "node": ">=4" + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } } }, - "node_modules/chai-as-promised": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/chai-as-promised/-/chai-as-promised-7.1.1.tgz", - "integrity": "sha512-azL6xMoi+uxu6z4rhWQ1jbdUhOMhis2PvscD/xjLqNMkv3BPPp2JyyuTHOrf9BOosGpNQ11v6BKv/g57RXbiaA==", + "node_modules/@typescript-eslint/utils": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-6.21.0.tgz", + "integrity": "sha512-NfWVaC8HP9T8cbKQxHcsJBY5YE1O33+jpMwN45qzWWaPDZgLIbo12toGMWnmhvCpd3sIxkpDw3Wv1B3dYrbDQQ==", "dev": true, + "license": "MIT", "dependencies": { - "check-error": "^1.0.2" + "@eslint-community/eslint-utils": "^4.4.0", + "@types/json-schema": "^7.0.12", + "@types/semver": "^7.5.0", + "@typescript-eslint/scope-manager": "6.21.0", + "@typescript-eslint/types": "6.21.0", + "@typescript-eslint/typescript-estree": "6.21.0", + "semver": "^7.5.4" + }, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" }, "peerDependencies": { - "chai": ">= 2.1.2 < 5" + "eslint": "^7.0.0 || ^8.0.0" } }, - "node_modules/chai/node_modules/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==", + "node_modules/@typescript-eslint/visitor-keys": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-6.21.0.tgz", + "integrity": "sha512-JJtkDduxLi9bivAB+cYOVMtbkqdPOhZ+ZI5LC47MIRrDV4Yn2o+ZnW10Nkmr28xRpSpdJ6Sm42Hjf2+REYXm0A==", "dev": true, + "license": "MIT", "dependencies": { - "type-detect": "^4.0.0" + "@typescript-eslint/types": "6.21.0", + "eslint-visitor-keys": "^3.4.1" }, "engines": { - "node": ">=0.12" + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" } }, - "node_modules/chalk": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.1.tgz", - "integrity": "sha512-diHzdDKxcU+bAsUboHLPEDQiw0qEe0qd7SYUn3HgcFlWgbDcfLGswOHYeGrHKzG9z6UYf01d9VFMfZxPM1xZSg==", - "devOptional": true, + "node_modules/@ungap/structured-clone": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/@ungap/structured-clone/-/structured-clone-1.3.0.tgz", + "integrity": "sha512-WmoN8qaIAo7WTYWbAZuG8PYEhn5fkz7dZrqTBZ7dtt//lL2Gwms1IcnQ5yHqjDfX8Ft5j4YzDM23f87zBfDe9g==", + "dev": true, + "license": "ISC" + }, + "node_modules/@xmldom/xmldom": { + "version": "0.9.8", + "resolved": "https://registry.npmjs.org/@xmldom/xmldom/-/xmldom-0.9.8.tgz", + "integrity": "sha512-p96FSY54r+WJ50FIOsCOjyj/wavs8921hG5+kVMmZgKcvIKxMXHTrjNJvRgWa/zuX3B6t2lijLNFaOyuxUH+2A==", + "license": "MIT", + "engines": { + "node": ">=14.6" + } + }, + "node_modules/abstract-logging": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/abstract-logging/-/abstract-logging-2.0.1.tgz", + "integrity": "sha512-2BjRTZxTPvheOvGbBslFSYOUkr+SjPtOnrLP33f+VIWLzezQpZcqVg7ja3L4dBXmzzgwT+a029jRx5PCi3JuiA==" + }, + "node_modules/accepts": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz", + "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==", "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" + "mime-types": "~2.1.34", + "negotiator": "0.6.3" }, "engines": { - "node": ">=10" + "node": ">= 0.6" + } + }, + "node_modules/acorn": { + "version": "8.12.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.12.0.tgz", + "integrity": "sha512-RTvkC4w+KNXrM39/lWCUaG0IbRkWdCv7W/IOW9oU6SawyxulvkQy5HQPVTKxEjczcUvapcrw3cFx/60VN/NRNw==", + "dev": true, + "bin": { + "acorn": "bin/acorn" }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" + "engines": { + "node": ">=0.4.0" } }, - "node_modules/character-parser": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/character-parser/-/character-parser-2.2.0.tgz", - "integrity": "sha512-+UqJQjFEFaTAs3bNsF2j2kEN1baG/zghZbdqoYEDxGZtJo9LBzl1A+m0D4n3qKx8N2FNv8/Xp6yV9mQmBuptaw==", - "dependencies": { - "is-regex": "^1.0.3" + "node_modules/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, + "peerDependencies": { + "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" } }, - "node_modules/chardet": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz", - "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==", - "optional": true + "node_modules/adm-zip": { + "version": "0.5.16", + "resolved": "https://registry.npmjs.org/adm-zip/-/adm-zip-0.5.16.tgz", + "integrity": "sha512-TGw5yVi4saajsSEgz25grObGHEUaDrniwvA2qwSC060KfqGPdglhvPMA2lPIoxs3PQIItj2iag35fONcQqgUaQ==", + "license": "MIT", + "engines": { + "node": ">=12.0" + } }, - "node_modules/check-error": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/check-error/-/check-error-1.0.2.tgz", - "integrity": "sha1-V00xLt2Iu13YkS6Sht1sCu1KrII=", + "node_modules/agent-base": { + "version": "7.1.3", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.3.tgz", + "integrity": "sha512-jRR5wdylq8CkOe6hei19GGZnxM6rBGwFl3Bg0YItGDimvjGtAvdZk4Pu6Cl4u4Igsws4a1fd1Vq3ezrhn4KmFw==", "dev": true, + "license": "MIT", "engines": { - "node": "*" + "node": ">= 14" } }, - "node_modules/chokidar": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.3.0.tgz", - "integrity": "sha512-dGmKLDdT3Gdl7fBUe8XK+gAtGmzy5Fn0XkkWQuYxGIgWVPPse2CxFA5mtrlD0TOHaHjEUqkWNyP1XdHoJES/4A==", + "node_modules/aggregate-error": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-4.0.1.tgz", + "integrity": "sha512-0poP0T7el6Vq3rstR8Mn4V/IQrpBLO6POkUSrN7RhyY+GF/InCFShQzsQ39T25gkHhLgSLByyAz+Kjb+c2L98w==", "dev": true, "dependencies": { - "anymatch": "~3.1.1", - "braces": "~3.0.2", - "glob-parent": "~5.1.0", - "is-binary-path": "~2.1.0", - "is-glob": "~4.0.1", - "normalize-path": "~3.0.0", - "readdirp": "~3.2.0" + "clean-stack": "^4.0.0", + "indent-string": "^5.0.0" }, "engines": { - "node": ">= 8.10.0" + "node": ">=12" }, - "optionalDependencies": { - "fsevents": "~2.1.1" + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/chownr": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz", - "integrity": "sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==" - }, - "node_modules/cipher-base": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.4.tgz", - "integrity": "sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==", + "node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dev": true, + "license": "MIT", "dependencies": { - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" } }, - "node_modules/cli-cursor": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz", - "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", + "node_modules/ansi-colors": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.3.tgz", + "integrity": "sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/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==", "optional": true, "dependencies": { - "restore-cursor": "^3.1.0" + "type-fest": "^0.21.3" }, "engines": { "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/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==", + "node_modules/ansi-escapes/node_modules/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==", "optional": true, "engines": { - "node": ">= 10" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/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, + "node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "devOptional": true, "engines": { - "node": ">=0.10.0" + "node": ">=8" } }, - "node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", "devOptional": true, "dependencies": { - "color-name": "~1.1.4" + "color-convert": "^2.0.1" }, "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "devOptional": true - }, - "node_modules/colors": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/colors/-/colors-1.0.3.tgz", - "integrity": "sha1-BDP0TYCWgP3rYO0mDxsMJi6CpAs=", - "engines": { - "node": ">=0.1.90" + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/combined-stream": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", - "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", + "node_modules/anymatch": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", + "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", + "dev": true, + "license": "ISC", "dependencies": { - "delayed-stream": "~1.0.0" + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" }, "engines": { - "node": ">= 0.8" + "node": ">= 8" } }, - "node_modules/commander": { - "version": "8.3.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-8.3.0.tgz", - "integrity": "sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww==", + "node_modules/append-field": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/append-field/-/append-field-1.0.0.tgz", + "integrity": "sha512-klpgFSWLW1ZEs8svjfb7g4qWY0YS5imI82dTg+QahUvJ8YqAY0P10Uk8tTyh9ZGuYEZEMaeJYCF5BFuX552hsw==" + }, + "node_modules/append-transform": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/append-transform/-/append-transform-1.0.0.tgz", + "integrity": "sha512-P009oYkeHyU742iSZJzZZywj4QRJdnTWffaKuJQLablCZ1uz6/cW4yaRgcDaoQ+uwOxxnt0gRUcwfsNP2ri0gw==", + "dev": true, + "dependencies": { + "default-require-extensions": "^2.0.0" + }, "engines": { - "node": ">= 12" + "node": ">=4" } }, - "node_modules/commondir": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", - "integrity": "sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs=", - "dev": true - }, - "node_modules/component-emitter": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz", - "integrity": "sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==" - }, - "node_modules/compress-commons": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/compress-commons/-/compress-commons-4.1.1.tgz", - "integrity": "sha512-QLdDLCKNV2dtoTorqgxngQCMA+gWXkM/Nwu7FpeBhk/RdkzimqC3jueb/FDmaZeXh+uby1jkBqE3xArsLBE5wQ==", + "node_modules/archiver": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/archiver/-/archiver-5.3.2.tgz", + "integrity": "sha512-+25nxyyznAXF7Nef3y0EbBeqmGZgeN/BxHX29Rs39djAfaFalmQ89SE6CWyDCHzGL0yt/ycBtNOmGTW0FyGWNw==", + "license": "MIT", "dependencies": { - "buffer-crc32": "^0.2.13", - "crc32-stream": "^4.0.2", - "normalize-path": "^3.0.0", - "readable-stream": "^3.6.0" + "archiver-utils": "^2.1.0", + "async": "^3.2.4", + "buffer-crc32": "^0.2.1", + "readable-stream": "^3.6.0", + "readdir-glob": "^1.1.2", + "tar-stream": "^2.2.0", + "zip-stream": "^4.1.0" }, "engines": { "node": ">= 10" } }, - "node_modules/compress-commons/node_modules/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==", + "node_modules/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==", "dependencies": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" + "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" }, "engines": { "node": ">= 6" } }, - "node_modules/compress-commons/node_modules/string_decoder": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", - "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "node_modules/archiver-utils/node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==" + }, + "node_modules/archiver-utils/node_modules/readable-stream": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", + "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", "dependencies": { - "safe-buffer": "~5.2.0" + "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" } }, - "node_modules/concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=" + "node_modules/archiver-utils/node_modules/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==" }, - "node_modules/concat-stream": { - "version": "1.5.2", - "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.5.2.tgz", - "integrity": "sha1-cIl4Yk2FavQaWnQd790mHadSwmY=", - "engines": [ - "node >= 0.8" - ], + "node_modules/archiver-utils/node_modules/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==", "dependencies": { - "inherits": "~2.0.1", - "readable-stream": "~2.0.0", - "typedarray": "~0.0.5" + "safe-buffer": "~5.1.0" } }, - "node_modules/constantinople": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/constantinople/-/constantinople-4.0.1.tgz", - "integrity": "sha512-vCrqcSIq4//Gx74TXXCGnHpulY1dskqLTFGDmhrGxzeXL8lF8kvXv6mpNWlJj1uD4DW23D4ljAqbY4RRaaUZIw==", + "node_modules/archy": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/archy/-/archy-1.0.0.tgz", + "integrity": "sha512-Xg+9RwCg/0p32teKdGMPTPnVXKD0w3DfHnFTficozsAgsvq2XenPJq/MYpzzQ/v8zrOyJn6Ds39VA4JIDwFfqw==", + "dev": true + }, + "node_modules/argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", "dependencies": { - "@babel/parser": "^7.6.0", - "@babel/types": "^7.6.1" + "sprintf-js": "~1.0.2" } }, - "node_modules/content-disposition": { - "version": "0.5.4", - "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz", - "integrity": "sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==", + "node_modules/array-buffer-byte-length": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.1.tgz", + "integrity": "sha512-ahC5W1xgou+KTXix4sAO8Ki12Q+jf4i0+tmk3sC+zgcynshkHxzpXdImBehiUYKKKDwvfFiJl1tZt6ewscS1Mg==", + "dev": true, "dependencies": { - "safe-buffer": "5.2.1" + "call-bind": "^1.0.5", + "is-array-buffer": "^3.0.4" }, "engines": { - "node": ">= 0.6" - } - }, - "node_modules/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==", - "engines": { - "node": ">= 0.6" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/convert-source-map": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.8.0.tgz", - "integrity": "sha512-+OQdjP49zViI/6i7nIJpA8rAl4sV/JdPfU9nZs3VqOwGIgizICvuN2ru6fMd+4llL0tar18UYJXfZ/TWtmhUjA==", - "dev": true, - "dependencies": { - "safe-buffer": "~5.1.1" - } + "node_modules/array-flatten": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", + "integrity": "sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==" }, - "node_modules/convert-source-map/node_modules/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==", + "node_modules/array-from": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/array-from/-/array-from-2.1.1.tgz", + "integrity": "sha512-GQTc6Uupx1FCavi5mPzBvVT7nEOeWMmUA9P95wpfpW1XwMSKs+KaymD5C2Up7KAUKg/mYwbsUYzdZWcoajlNZg==", "dev": true }, - "node_modules/cookie": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.5.0.tgz", - "integrity": "sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw==", + "node_modules/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, + "license": "MIT", "engines": { - "node": ">= 0.6" + "node": ">=8" } }, - "node_modules/cookie-signature": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", - "integrity": "sha1-4wOogrNCzD7oylE6eZmXNNqzriw=" - }, - "node_modules/cookiejar": { - "version": "2.1.4", - "resolved": "https://registry.npmjs.org/cookiejar/-/cookiejar-2.1.4.tgz", - "integrity": "sha512-LDx6oHrK+PhzLKJU9j5S7/Y3jM/mUHvD/DeI1WQmJn652iPC5Y4TBzC9l+5OMOXlyTTA+SmVUPm0HQUwpD5Jqw==" - }, - "node_modules/core-util-is": { + "node_modules/arraybuffer.prototype.slice": { "version": "1.0.3", - "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz", - "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==" - }, - "node_modules/coveralls": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/coveralls/-/coveralls-3.0.4.tgz", - "integrity": "sha512-eyqUWA/7RT0JagiL0tThVhjbIjoiEUyWCjtUJoOPcWoeofP5WK/jb2OJYoBFrR6DvplR+AxOyuBqk4JHkk5ykA==", + "resolved": "https://registry.npmjs.org/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.3.tgz", + "integrity": "sha512-bMxMKAjg13EBSVscxTaYA4mRc5t1UAXa2kXiGTNfZ079HIWXEkKmkgFrh/nJqamaLSrXO5H4WFFkPEaLJWbs3A==", "dev": true, "dependencies": { - "growl": "~> 1.10.0", - "js-yaml": "^3.11.0", - "lcov-parse": "^0.0.10", - "log-driver": "^1.2.7", - "minimist": "^1.2.0", - "request": "^2.86.0" - }, - "bin": { - "coveralls": "bin/coveralls.js" + "array-buffer-byte-length": "^1.0.1", + "call-bind": "^1.0.5", + "define-properties": "^1.2.1", + "es-abstract": "^1.22.3", + "es-errors": "^1.2.1", + "get-intrinsic": "^1.2.3", + "is-array-buffer": "^3.0.4", + "is-shared-array-buffer": "^1.0.2" }, "engines": { - "node": ">=4.0.0" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/coveralls/node_modules/esprima": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", - "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", + "node_modules/arrify": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/arrify/-/arrify-3.0.0.tgz", + "integrity": "sha512-tLkvA81vQG/XqE2mjDkGQHoOINtMHtysSnemrmoGe6PydDPMRbVugqyk4A6V/WDWEfm3l+0d8anA9r8cv/5Jaw==", "dev": true, - "bin": { - "esparse": "bin/esparse.js", - "esvalidate": "bin/esvalidate.js" - }, "engines": { - "node": ">=4" + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/coveralls/node_modules/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, + "node_modules/asap": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz", + "integrity": "sha512-BSHWgDSAiKs50o2Re8ppvp3seVHXSRM44cdSsT9FfNEUUZLOGWVCsiWaRPWM1Znn+mqZ1OfVZ3z3DWEzSp7hRA==" + }, + "node_modules/asn1": { + "version": "0.2.6", + "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.6.tgz", + "integrity": "sha512-ix/FxPn0MDjeyJ7i/yoHGFt/EX6LyNbxSEhPPXODPL+KB0VPk86UYfL0lMdy+KCnv+fmvIzySwaK5COwqVbWTQ==", "dependencies": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" - }, - "bin": { - "js-yaml": "bin/js-yaml.js" + "safer-buffer": "~2.1.0" } }, - "node_modules/cp-file": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/cp-file/-/cp-file-6.2.0.tgz", - "integrity": "sha512-fmvV4caBnofhPe8kOcitBwSn2f39QLjnAnGq3gO9dfd75mUytzKNZB1hde6QHunW2Rt+OwuBOMc3i1tNElbszA==", - "dev": true, - "dependencies": { - "graceful-fs": "^4.1.2", - "make-dir": "^2.0.0", - "nested-error-stacks": "^2.0.0", - "pify": "^4.0.1", - "safe-buffer": "^5.0.1" - }, + "node_modules/assert-never": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/assert-never/-/assert-never-1.2.1.tgz", + "integrity": "sha512-TaTivMB6pYI1kXwrFlEhLeGfOqoDNdTxjCdwRfFFkEA30Eu+k48W34nlok2EYWJfFFzqaEmichdNM7th6M5HNw==" + }, + "node_modules/assert-plus": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", + "integrity": "sha512-NfJ4UzBCcQGLDlQq7nHxH+tv3kyZ0hHQqF5BO6J7tNJeP5do1llPr8dZ8zHonfhAu0PHAdMkSo+8o0wxg9lZWw==", "engines": { - "node": ">=6" + "node": ">=0.8" } }, - "node_modules/cp-file/node_modules/pify": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", - "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", + "node_modules/assertion-error": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/assertion-error/-/assertion-error-1.1.0.tgz", + "integrity": "sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw==", "dev": true, "engines": { - "node": ">=6" + "node": "*" } }, - "node_modules/cpy": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/cpy/-/cpy-10.1.0.tgz", - "integrity": "sha512-VC2Gs20JcTyeQob6UViBLnyP0bYHkBh6EiKzot9vi2DmeGlFT9Wd7VG3NBrkNx/jYvFBeyDOMMHdHQhbtKLgHQ==", + "node_modules/async": { + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/async/-/async-3.2.6.tgz", + "integrity": "sha512-htCUDlxyyCLMgaM3xXg0C0LW2xqfuQ6p05pCEIsXuyQ+a1koYKTuBMzRNwmybfLgvJDMd0r1LTn4+E0Ti6C2AA==", + "license": "MIT" + }, + "node_modules/async-lock": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/async-lock/-/async-lock-1.4.1.tgz", + "integrity": "sha512-Az2ZTpuytrtqENulXwO3GGv1Bztugx6TT37NIo7imr/Qo0gsYiGtSdBa2B6fsXhTpVZDNfu1Qn3pk531e3q+nQ==" + }, + "node_modules/async-mutex": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/async-mutex/-/async-mutex-0.4.1.tgz", + "integrity": "sha512-WfoBo4E/TbCX1G95XTjbWTE3X2XLG0m1Xbv2cwOtuPdyH9CZvnaA5nCt1ucjaKEgW2A5IF71hxrRhr83Je5xjA==", "dev": true, + "license": "MIT", "dependencies": { - "arrify": "^3.0.0", - "cp-file": "^10.0.0", - "globby": "^13.1.4", - "junk": "^4.0.1", - "micromatch": "^4.0.5", - "nested-error-stacks": "^2.1.1", - "p-filter": "^3.0.0", - "p-map": "^6.0.0" - }, - "engines": { - "node": ">=16" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "tslib": "^2.4.0" } }, - "node_modules/cpy-cli": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/cpy-cli/-/cpy-cli-5.0.0.tgz", - "integrity": "sha512-fb+DZYbL9KHc0BC4NYqGRrDIJZPXUmjjtqdw4XRRg8iV8dIfghUX/WiL+q4/B/KFTy3sK6jsbUhBaz0/Hxg7IQ==", + "node_modules/asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==" + }, + "node_modules/available-typed-arrays": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.7.tgz", + "integrity": "sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==", "dev": true, "dependencies": { - "cpy": "^10.1.0", - "meow": "^12.0.1" - }, - "bin": { - "cpy": "cli.js" + "possible-typed-array-names": "^1.0.0" }, "engines": { - "node": ">=16" + "node": ">= 0.4" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/cpy/node_modules/cp-file": { - "version": "10.0.0", - "resolved": "https://registry.npmjs.org/cp-file/-/cp-file-10.0.0.tgz", - "integrity": "sha512-vy2Vi1r2epK5WqxOLnskeKeZkdZvTKfFZQCplE3XWsP+SUJyd5XAUFC9lFgTjjXJF2GMne/UML14iEmkAaDfFg==", + "node_modules/aws-sign2": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", + "integrity": "sha512-08kcGqnYf/YmjoRhfxyu+CLxBjUtHLXLXX/vUfx9l2LYzG3c1m61nrpyFUZI6zeS+Li/wWMMidD9KgrqtGq3mA==", "dev": true, - "dependencies": { - "graceful-fs": "^4.2.10", - "nested-error-stacks": "^2.1.1", - "p-event": "^5.0.1" - }, "engines": { - "node": ">=14.16" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": "*" } }, - "node_modules/crc-32": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/crc-32/-/crc-32-1.2.2.tgz", - "integrity": "sha512-ROmzCKrTnOwybPcJApAA6WBWij23HVfGVNKqqrZpuyZOHqK2CwHSvpGuyt/UNNvaIjEd8X5IFGp4Mh+Ie1IHJQ==", - "bin": { - "crc32": "bin/crc32.njs" - }, - "engines": { - "node": ">=0.8" + "node_modules/aws4": { + "version": "1.13.0", + "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.13.0.tgz", + "integrity": "sha512-3AungXC4I8kKsS9PuS4JH2nc+0bVY/mjgrephHTIi8fpEeGsTHBUJeosp0Wc1myYMElmD0B3Oc4XL/HVJ4PV2g==", + "dev": true + }, + "node_modules/axios": { + "version": "1.8.4", + "resolved": "https://registry.npmjs.org/axios/-/axios-1.8.4.tgz", + "integrity": "sha512-eBSYY4Y68NNlHbHBMdeDmKNtDgXWhQsJcGqzO3iLUM0GraQFSS9cVgPX5I9b3lbdFKyYoAEGAZF1DwhTaljNAw==", + "dev": true, + "license": "MIT", + "dependencies": { + "follow-redirects": "^1.15.6", + "form-data": "^4.0.0", + "proxy-from-env": "^1.1.0" } }, - "node_modules/crc32-stream": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/crc32-stream/-/crc32-stream-4.0.2.tgz", - "integrity": "sha512-DxFZ/Hk473b/muq1VJ///PMNLj0ZMnzye9thBpmjpJKCc5eMgB95aK8zCGrGfQ90cWo561Te6HK9D+j4KPdM6w==", + "node_modules/b4a": { + "version": "1.6.7", + "resolved": "https://registry.npmjs.org/b4a/-/b4a-1.6.7.tgz", + "integrity": "sha512-OnAYlL5b7LEkALw87fUVafQw5rVR9RjwGd4KUwNQ6DrrNmaVaUCgLipfVlzrPQ4tWOR9P0IXGNOx50jYCCdSJg==", + "dev": true, + "license": "Apache-2.0" + }, + "node_modules/babel-walk": { + "version": "3.0.0-canary-5", + "resolved": "https://registry.npmjs.org/babel-walk/-/babel-walk-3.0.0-canary-5.tgz", + "integrity": "sha512-GAwkz0AihzY5bkwIY5QDR+LvsRQgB/B+1foMPvi0FZPMl5fjD7ICiznUiBdLYMH1QYe6vqu4gWYytZOccLouFw==", "dependencies": { - "crc-32": "^1.2.0", - "readable-stream": "^3.4.0" + "@babel/types": "^7.9.6" }, "engines": { - "node": ">= 10" + "node": ">= 10.0.0" } }, - "node_modules/crc32-stream/node_modules/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==", + "node_modules/backoff": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/backoff/-/backoff-2.5.0.tgz", + "integrity": "sha512-wC5ihrnUXmR2douXmXLCe5O3zg3GKIyvRi/hi58a/XyRxVI+3/yM0PYueQOZXPXQ9pxBislYkw+sF9b7C/RuMA==", "dependencies": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" + "precond": "0.2" }, "engines": { - "node": ">= 6" + "node": ">= 0.6" } }, - "node_modules/crc32-stream/node_modules/string_decoder": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", - "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", - "dependencies": { - "safe-buffer": "~5.2.0" - } + "node_modules/balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" }, - "node_modules/create-hash": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz", - "integrity": "sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==", - "dependencies": { - "cipher-base": "^1.0.1", - "inherits": "^2.0.1", - "md5.js": "^1.3.4", - "ripemd160": "^2.0.1", - "sha.js": "^2.4.0" - } + "node_modules/bare-events": { + "version": "2.5.4", + "resolved": "https://registry.npmjs.org/bare-events/-/bare-events-2.5.4.tgz", + "integrity": "sha512-+gFfDkR8pj4/TrWCGUGWmJIkBwuxPS5F+a5yWjOHQt2hHvNZd5YLzadjmDUtFmMM4y429bnKLa8bYBMHcYdnQA==", + "dev": true, + "license": "Apache-2.0", + "optional": true }, - "node_modules/create-hmac": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz", - "integrity": "sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==", - "dependencies": { - "cipher-base": "^1.0.3", - "create-hash": "^1.1.0", - "inherits": "^2.0.1", - "ripemd160": "^2.0.0", - "safe-buffer": "^5.0.1", - "sha.js": "^2.4.8" - } + "node_modules/base-64": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/base-64/-/base-64-1.0.0.tgz", + "integrity": "sha512-kwDPIFCGx0NZHog36dj+tHiwP4QMzsZ3AgMViUBKI0+V5n4U0ufTCUMhnQ04diaRI8EX/QcPfql7zlhZ7j4zgg==" }, - "node_modules/cross-spawn": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-4.0.2.tgz", - "integrity": "sha1-e5JHYhwjrf3ThWAEqCPL45dCTUE=", - "dependencies": { - "lru-cache": "^4.0.1", - "which": "^1.2.9" - } + "node_modules/base64-js": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", + "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] }, - "node_modules/cycle": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/cycle/-/cycle-1.0.3.tgz", - "integrity": "sha1-IegLK+hYD5i0aPN5QwZisEbDStI=", + "node_modules/base64url": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/base64url/-/base64url-3.0.1.tgz", + "integrity": "sha512-ir1UPr3dkwexU7FdV8qBBbNDRUhMmIekYMFZfi+C/sLNnRESKPl23nB9b2pltqfOQNnGzsDdId90AEtG5tCx4A==", "engines": { - "node": ">=0.4.0" + "node": ">=6.0.0" } }, - "node_modules/dashdash": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", - "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=", + "node_modules/bcrypt-pbkdf": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", + "integrity": "sha512-qeFIXtP4MSoi6NLqO12WfqARWWuCKi2Rn/9hJLEmtB5yTNr9DqFWkJRCf2qShWzPeAMRnOgCrq0sg/KLv5ES9w==", "dev": true, "dependencies": { - "assert-plus": "^1.0.0" - }, - "engines": { - "node": ">=0.10" + "tweetnacl": "^0.14.3" } }, - "node_modules/dbf": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/dbf/-/dbf-0.1.0.tgz", - "integrity": "sha1-1WNrdWq9NoilbU3+tZD0gqBjvq0=", - "dependencies": { - "jdataview": "~2.4.4" - } + "node_modules/bcryptjs": { + "version": "2.4.3", + "resolved": "https://registry.npmjs.org/bcryptjs/-/bcryptjs-2.4.3.tgz", + "integrity": "sha512-V/Hy/X9Vt7f3BbPJEi8BdVFMByHi+jNXrYkW3huaybV/kQ0KJg0Y6PkEMbn+zeT+i+SiKZ/HMqJGIIt4LZDqNQ==" }, - "node_modules/debug": { + "node_modules/binary-extensions": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.3.0.tgz", + "integrity": "sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/bindings": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/bindings/-/bindings-1.5.0.tgz", + "integrity": "sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==", + "optional": true, + "dependencies": { + "file-uri-to-path": "1.0.0" + } + }, + "node_modules/bl": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz", + "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==", + "dependencies": { + "buffer": "^5.5.0", + "inherits": "^2.0.4", + "readable-stream": "^3.4.0" + } + }, + "node_modules/bluebird": { + "version": "3.7.2", + "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz", + "integrity": "sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==" + }, + "node_modules/body-parser": { + "version": "1.20.3", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.3.tgz", + "integrity": "sha512-7rAxByjUMqQ3/bHJy7D6OGXvx/MMc4IqBn/X0fcM1QUcAItpZrBEYhWGem+tzXH90c+G01ypMcYJBO9Y30203g==", + "license": "MIT", + "dependencies": { + "bytes": "3.1.2", + "content-type": "~1.0.5", + "debug": "2.6.9", + "depd": "2.0.0", + "destroy": "1.2.0", + "http-errors": "2.0.0", + "iconv-lite": "0.4.24", + "on-finished": "2.4.1", + "qs": "6.13.0", + "raw-body": "2.5.2", + "type-is": "~1.6.18", + "unpipe": "1.0.0" + }, + "engines": { + "node": ">= 0.8", + "npm": "1.2.8000 || >= 1.4.16" + } + }, + "node_modules/body-parser/node_modules/debug": { "version": "2.6.9", "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", @@ -3347,1618 +3687,1832 @@ "ms": "2.0.0" } }, - "node_modules/decamelize": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", - "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", - "dev": true, + "node_modules/body-parser/node_modules/iconv-lite": { + "version": "0.4.24", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", + "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3" + }, "engines": { "node": ">=0.10.0" } }, - "node_modules/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==", + "node_modules/body-parser/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" + }, + "node_modules/bowser": { + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/bowser/-/bowser-2.11.0.tgz", + "integrity": "sha512-AlcaJBi/pqqJBIQ8U9Mcpc9i8Aqxn88Skv5d+xBX006BY5u8N3mGLHa5Lgppa7L/HfwgwLgZ6NYs+Ag6uUmJRA==", + "optional": true + }, + "node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", "dependencies": { - "mimic-response": "^3.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "balanced-match": "^1.0.0" } }, - "node_modules/deep-equal": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-2.0.5.tgz", - "integrity": "sha512-nPiRgmbAtm1a3JsnLCf6/SLfXcjyN5v8L1TXzdCmHrXJ4hx+gW/w1YCcn7z8gJtSiDArZCgYtbao3QqLm/N1Sw==", + "node_modules/braces": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", + "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", "dev": true, "dependencies": { - "call-bind": "^1.0.0", - "es-get-iterator": "^1.1.1", - "get-intrinsic": "^1.0.1", - "is-arguments": "^1.0.4", - "is-date-object": "^1.0.2", - "is-regex": "^1.1.1", - "isarray": "^2.0.5", - "object-is": "^1.1.4", - "object-keys": "^1.1.1", - "object.assign": "^4.1.2", - "regexp.prototype.flags": "^1.3.0", - "side-channel": "^1.0.3", - "which-boxed-primitive": "^1.0.1", - "which-collection": "^1.0.1", - "which-typed-array": "^1.1.2" + "fill-range": "^7.1.1" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/deep-equal/node_modules/isarray": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", - "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==", - "dev": true - }, - "node_modules/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==", "engines": { - "node": ">=4.0.0" + "node": ">=8" } }, - "node_modules/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==", + "node_modules/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 }, - "node_modules/default-require-extensions": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/default-require-extensions/-/default-require-extensions-2.0.0.tgz", - "integrity": "sha1-9fj7sYp9bVCyH2QfZJ67Uiz+JPc=", - "dev": true, + "node_modules/bson": { + "version": "4.7.2", + "resolved": "https://registry.npmjs.org/bson/-/bson-4.7.2.tgz", + "integrity": "sha512-Ry9wCtIZ5kGqkJoi6aD8KjxFZEx78guTQDnpXWiNthsxzrxAK/i8E6pCHAIZTbaEFWcOCvbecMukfK7XUvyLpQ==", "dependencies": { - "strip-bom": "^3.0.0" + "buffer": "^5.6.0" }, "engines": { - "node": ">=4" + "node": ">=6.9.0" } }, - "node_modules/define-properties": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz", - "integrity": "sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==", - "dev": true, + "node_modules/buffer": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", + "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], "dependencies": { - "object-keys": "^1.0.12" - }, - "engines": { - "node": ">= 0.4" + "base64-js": "^1.3.1", + "ieee754": "^1.1.13" } }, - "node_modules/delayed-stream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", - "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=", + "node_modules/buffer-crc32": { + "version": "0.2.13", + "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", + "integrity": "sha512-VO9Ht/+p3SN7SKWqcrgEzjGbRSJYTx+Q1pTQC0wrWqHx0vpJraQ6GtHx8tvcg1rlK1byhU5gccxgOgj7B0TDkQ==", "engines": { - "node": ">=0.4.0" + "node": "*" } }, - "node_modules/depd": { + "node_modules/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": "sha512-zRpUiDwd/xk6ADqPMATG8vc9VPrkck7T07OIx0gnjmJAnHnTVXNQG3vfvWNuiZIkwu9KrKdA1iJKfsfTVxE6NA==" + }, + "node_modules/buffer-from": { "version": "1.1.2", - "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", - "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", + "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==" + }, + "node_modules/busboy": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/busboy/-/busboy-1.6.0.tgz", + "integrity": "sha512-8SFQbg/0hQ9xy3UNTB0YEnsNBbWfhf7RtnzpL7TkBiTBRfrQ9Fxcnz7VJsleJpyp6rVLvXiuORqjlHi5q+PYuA==", + "dependencies": { + "streamsearch": "^1.1.0" + }, "engines": { - "node": ">= 0.6" + "node": ">=10.16.0" } }, - "node_modules/destroy": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz", - "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==", + "node_modules/bytes": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", + "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", + "license": "MIT", "engines": { - "node": ">= 0.8", - "npm": "1.2.8000 || >= 1.4.16" + "node": ">= 0.8" } }, - "node_modules/detect-libc": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.0.2.tgz", - "integrity": "sha512-UX6sGumvvqSaXgdKGUsgZWqcUyIXZ/vZTrlRT/iobiKhGL0zL4d3osHj3uqllWJK+i+sixDS/3COVEOFbupFyw==", + "node_modules/caching-transform": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/caching-transform/-/caching-transform-3.0.2.tgz", + "integrity": "sha512-Mtgcv3lh3U0zRii/6qVgQODdPA4G3zhG+jtbCWj39RXuUFTMzH0vcdMtaJS1jPowd+It2Pqr6y3NJMQqOqCE2w==", + "dev": true, + "dependencies": { + "hasha": "^3.0.0", + "make-dir": "^2.0.0", + "package-hash": "^3.0.0", + "write-file-atomic": "^2.4.2" + }, "engines": { - "node": ">=8" + "node": ">=6" } }, - "node_modules/dezalgo": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/dezalgo/-/dezalgo-1.0.4.tgz", - "integrity": "sha512-rXSP0bf+5n0Qonsb+SVVfNfIsimO4HEtmnIpPHY8Q1UCzKlQrDMfdobr8nJOOsRgWCyMRqeSBQzmWUMq7zvVig==", + "node_modules/caching-transform/node_modules/make-dir": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", + "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", + "dev": true, "dependencies": { - "asap": "^2.0.0", - "wrappy": "1" + "pify": "^4.0.1", + "semver": "^5.6.0" + }, + "engines": { + "node": ">=6" } }, - "node_modules/diff": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/diff/-/diff-3.5.0.tgz", - "integrity": "sha512-A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA==", + "node_modules/caching-transform/node_modules/pify": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", + "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", "dev": true, "engines": { - "node": ">=0.3.1" + "node": ">=6" } }, - "node_modules/dir-glob": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", - "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", + "node_modules/caching-transform/node_modules/semver": { + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", + "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", "dev": true, + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/call-bind": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.7.tgz", + "integrity": "sha512-GHTSNSYICQ7scH7sZ+M2rFopRoLh8t2bLSW6BbgrtLsahOIB5iyAVJf9GjWK3cYTDaMj4XdBpM1cA6pIS0Kv2w==", "dependencies": { - "path-type": "^4.0.0" + "es-define-property": "^1.0.0", + "es-errors": "^1.3.0", + "function-bind": "^1.1.2", + "get-intrinsic": "^1.2.4", + "set-function-length": "^1.2.1" }, "engines": { - "node": ">=8" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/dir-glob/node_modules/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, + "node_modules/call-bind-apply-helpers": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.2.tgz", + "integrity": "sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==", + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "function-bind": "^1.1.2" + }, "engines": { - "node": ">=8" + "node": ">= 0.4" } }, - "node_modules/doctrine": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", - "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", - "dev": true, + "node_modules/call-bound": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/call-bound/-/call-bound-1.0.4.tgz", + "integrity": "sha512-+ys997U96po4Kx/ABpBCqhA9EuxJaQWDQg7295H4hBphv3IZg0boBKuwYpt4YXp6MZ5AmZQnU/tyMTlRpaSejg==", + "license": "MIT", "dependencies": { - "esutils": "^2.0.2" + "call-bind-apply-helpers": "^1.0.2", + "get-intrinsic": "^1.3.0" }, "engines": { - "node": ">=6.0.0" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/doctypes": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/doctypes/-/doctypes-1.1.0.tgz", - "integrity": "sha512-LLBi6pEqS6Do3EKQ3J0NqHWV5hhb78Pi8vvESYwyOy2c31ZEZVdtitdzsQsKb7878PEERhzUk0ftqGhG6Mz+pQ==" - }, - "node_modules/drange": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/drange/-/drange-1.1.1.tgz", - "integrity": "sha512-pYxfDYpued//QpnLIm4Avk7rsNtAtQkUES2cwAYSvD/wd2pKD71gN2Ebj3e7klzXwjocvE8c5vx/1fxwpqmSxA==", + "node_modules/callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", "dev": true, "engines": { - "node": ">=4" + "node": ">=6" } }, - "node_modules/duplexer": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/duplexer/-/duplexer-0.1.2.tgz", - "integrity": "sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg==" + "node_modules/camelcase": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", + "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } }, - "node_modules/eastasianwidth": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz", - "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==", + "node_modules/caseless": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", + "integrity": "sha512-4tYFyifaFfGacoiObjJegolkwSU4xQNGbVgUiNYVUxbQ2x2lUsFvY4hVgVzGiIe6WLOPqycWXA40l+PWsxthUw==", "dev": true }, - "node_modules/ecc-jsbn": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz", - "integrity": "sha1-OoOpBOVDUyh4dMVkt1SThoSamMk=", - "dev": true, + "node_modules/cfenv": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/cfenv/-/cfenv-1.2.4.tgz", + "integrity": "sha512-jWQ+3UXZauYyOXwHpMm74C0wM7+LDQmgMxWBGchg4as7+YyTL0pyx/CZ3dEvJyZVOB4SgKATc5naJky6cd9zYw==", + "license": "Apache-2.0", "dependencies": { - "jsbn": "~0.1.0", - "safer-buffer": "^2.1.0" + "js-yaml": "4.0.x", + "ports": "1.1.x", + "underscore": "1.12.x" } }, - "node_modules/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==", + "node_modules/chai": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/chai/-/chai-4.5.0.tgz", + "integrity": "sha512-RITGBfijLkBddZvnn8jdqoTypxvqbOLYQkGGxXzeFjVHvudaPw0HNFD9x928/eUwYWd2dPCugVqspGALTZZQKw==", + "dev": true, + "license": "MIT", "dependencies": { - "safe-buffer": "^5.0.1" + "assertion-error": "^1.1.0", + "check-error": "^1.0.3", + "deep-eql": "^4.1.3", + "get-func-name": "^2.0.2", + "loupe": "^2.3.6", + "pathval": "^1.1.1", + "type-detect": "^4.1.0" + }, + "engines": { + "node": ">=4" } }, - "node_modules/ee-first": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", - "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" - }, - "node_modules/elliptic": { - "version": "6.5.5", - "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.5.tgz", - "integrity": "sha512-7EjbcmUm17NQFu4Pmgmq2olYMj8nwMnpcddByChSUjArp8F5DQWcIcpriwO4ZToLNAJig0yiyjswfyGNje/ixw==", + "node_modules/chai-as-promised": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/chai-as-promised/-/chai-as-promised-7.1.2.tgz", + "integrity": "sha512-aBDHZxRzYnUYuIAIPBH2s511DjlKPzXNlXSGFC8CwmroWQLfrW0LtE1nK3MAwwNhJPa9raEjNCmRoFpG0Hurdw==", + "dev": true, + "license": "WTFPL", "dependencies": { - "bn.js": "^4.11.9", - "brorand": "^1.1.0", - "hash.js": "^1.0.0", - "hmac-drbg": "^1.0.1", - "inherits": "^2.0.4", - "minimalistic-assert": "^1.0.1", - "minimalistic-crypto-utils": "^1.0.1" + "check-error": "^1.0.2" + }, + "peerDependencies": { + "chai": ">= 2.1.2 < 6" } }, - "node_modules/elliptic/node_modules/bn.js": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", - "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" - }, - "node_modules/emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "devOptional": true + "node_modules/chai/node_modules/type-detect": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.1.0.tgz", + "integrity": "sha512-Acylog8/luQ8L7il+geoSxhEkazvkslg7PSNKOX59mbB9cOveP5aq9h74Y7YU8yDpJwetzQQrfIwtf4Wp4LKcw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } }, - "node_modules/encodeurl": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", - "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==", + "node_modules/chalk": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.1.tgz", + "integrity": "sha512-diHzdDKxcU+bAsUboHLPEDQiw0qEe0qd7SYUn3HgcFlWgbDcfLGswOHYeGrHKzG9z6UYf01d9VFMfZxPM1xZSg==", + "devOptional": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, "engines": { - "node": ">= 0.8" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/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==", + "node_modules/character-parser": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/character-parser/-/character-parser-2.2.0.tgz", + "integrity": "sha512-+UqJQjFEFaTAs3bNsF2j2kEN1baG/zghZbdqoYEDxGZtJo9LBzl1A+m0D4n3qKx8N2FNv8/Xp6yV9mQmBuptaw==", "dependencies": { - "once": "^1.4.0" + "is-regex": "^1.0.3" } }, - "node_modules/error-ex": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", - "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", + "node_modules/chardet": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz", + "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==", + "optional": true + }, + "node_modules/check-error": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/check-error/-/check-error-1.0.3.tgz", + "integrity": "sha512-iKEoDYaRmd1mxM90a2OEfWhjsjPpYPuQ+lMYsoxB126+t8fw7ySEO48nmDg5COTjxDI65/Y2OWpeEHk3ZOe8zg==", "dev": true, "dependencies": { - "is-arrayish": "^0.2.1" + "get-func-name": "^2.0.2" + }, + "engines": { + "node": "*" } }, - "node_modules/es-abstract": { - "version": "1.19.4", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.19.4.tgz", - "integrity": "sha512-flV8e5g9/xulChMG48Fygk1ptpo4lQRJ0eJYtxJFgi7pklLx7EFcOJ34jnvr8pbWlaFN/AT1cZpe0hiFel9Hqg==", + "node_modules/chokidar": { + "version": "3.5.3", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", + "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", "dev": true, + "funding": [ + { + "type": "individual", + "url": "https://paulmillr.com/funding/" + } + ], + "license": "MIT", "dependencies": { - "call-bind": "^1.0.2", - "es-to-primitive": "^1.2.1", - "function-bind": "^1.1.1", - "get-intrinsic": "^1.1.1", - "get-symbol-description": "^1.0.0", - "has": "^1.0.3", - "has-symbols": "^1.0.3", - "internal-slot": "^1.0.3", - "is-callable": "^1.2.4", - "is-negative-zero": "^2.0.2", - "is-regex": "^1.1.4", - "is-shared-array-buffer": "^1.0.2", - "is-string": "^1.0.7", - "is-weakref": "^1.0.2", - "object-inspect": "^1.12.0", - "object-keys": "^1.1.1", - "object.assign": "^4.1.2", - "string.prototype.trimend": "^1.0.4", - "string.prototype.trimstart": "^1.0.4", - "unbox-primitive": "^1.0.1" + "anymatch": "~3.1.2", + "braces": "~3.0.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" }, "engines": { - "node": ">= 0.4" + "node": ">= 8.10.0" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "optionalDependencies": { + "fsevents": "~2.3.2" } }, - "node_modules/es-get-iterator": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/es-get-iterator/-/es-get-iterator-1.1.2.tgz", - "integrity": "sha512-+DTO8GYwbMCwbywjimwZMHp8AuYXOS2JZFWoi2AlPOS3ebnII9w/NLpNZtA7A0YLaVDw+O7KFCeoIV7OPvM7hQ==", + "node_modules/chokidar/node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", "dev": true, + "license": "ISC", "dependencies": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.1.0", - "has-symbols": "^1.0.1", - "is-arguments": "^1.1.0", - "is-map": "^2.0.2", - "is-set": "^2.0.2", - "is-string": "^1.0.5", - "isarray": "^2.0.5" + "is-glob": "^4.0.1" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "engines": { + "node": ">= 6" } }, - "node_modules/es-get-iterator/node_modules/isarray": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", - "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==", - "dev": true + "node_modules/chownr": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz", + "integrity": "sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==", + "optional": true }, - "node_modules/es-to-primitive": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", - "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", + "node_modules/clean-stack": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-4.2.0.tgz", + "integrity": "sha512-LYv6XPxoyODi36Dp976riBtSY27VmFo+MKqEU9QCCWyTrdEPDog+RWA7xQWHi6Vbp61j5c4cdzzX1NidnwtUWg==", "dev": true, "dependencies": { - "is-callable": "^1.1.4", - "is-date-object": "^1.0.1", - "is-symbol": "^1.0.2" + "escape-string-regexp": "5.0.0" }, "engines": { - "node": ">= 0.4" + "node": ">=12" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/es6-error": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/es6-error/-/es6-error-4.1.1.tgz", - "integrity": "sha512-Um/+FxMr9CISWh0bi5Zv0iOD+4cFh5qLeks1qhAopKVAJw3drgKbKySikp7wGhDL0HPeaja0P5ULZrxLkniUVg==", - "dev": true + "node_modules/clean-stack/node_modules/escape-string-regexp": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz", + "integrity": "sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } }, - "node_modules/es6-object-assign": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/es6-object-assign/-/es6-object-assign-1.1.0.tgz", - "integrity": "sha1-wsNYJlYkfDnqEHyx5mUrb58kUjw=", - "dev": true + "node_modules/cli-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz", + "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", + "optional": true, + "dependencies": { + "restore-cursor": "^3.1.0" + }, + "engines": { + "node": ">=8" + } }, - "node_modules/es6-promise": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-3.2.1.tgz", - "integrity": "sha1-7FYjOGgDKQkgcXDDlEjiREndH8Q=" + "node_modules/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==", + "optional": true, + "engines": { + "node": ">= 10" + } }, - "node_modules/escape-html": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", - "integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg=" + "node_modules/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, + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^7.0.0" + } }, - "node_modules/escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", - "devOptional": true, + "node_modules/coffeescript": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/coffeescript/-/coffeescript-2.7.0.tgz", + "integrity": "sha512-hzWp6TUE2d/jCcN67LrW1eh5b/rSDKQK6oD6VMLlggYVUUFexgTH9z3dNYihzX4RMhze5FTUsUmOXViJKFQR/A==", + "bin": { + "cake": "bin/cake", + "coffee": "bin/coffee" + }, "engines": { - "node": ">=0.8.0" + "node": ">=6" } }, - "node_modules/eslint": { - "version": "8.51.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.51.0.tgz", - "integrity": "sha512-2WuxRZBrlwnXi+/vFSJyjMqrNjtJqiasMzehF0shoLaW7DzS3/9Yvrmq5JiT66+pNjiX4UBnLDiKHcWAr/OInA==", - "dev": true, + "node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "devOptional": true, "dependencies": { - "@eslint-community/eslint-utils": "^4.2.0", - "@eslint-community/regexpp": "^4.6.1", - "@eslint/eslintrc": "^2.1.2", - "@eslint/js": "8.51.0", - "@humanwhocodes/config-array": "^0.11.11", - "@humanwhocodes/module-importer": "^1.0.1", - "@nodelib/fs.walk": "^1.2.8", - "ajv": "^6.12.4", - "chalk": "^4.0.0", - "cross-spawn": "^7.0.2", - "debug": "^4.3.2", - "doctrine": "^3.0.0", - "escape-string-regexp": "^4.0.0", - "eslint-scope": "^7.2.2", - "eslint-visitor-keys": "^3.4.3", - "espree": "^9.6.1", - "esquery": "^1.4.2", - "esutils": "^2.0.2", - "fast-deep-equal": "^3.1.3", - "file-entry-cache": "^6.0.1", - "find-up": "^5.0.0", - "glob-parent": "^6.0.2", - "globals": "^13.19.0", - "graphemer": "^1.4.0", - "ignore": "^5.2.0", - "imurmurhash": "^0.1.4", - "is-glob": "^4.0.0", - "is-path-inside": "^3.0.3", - "js-yaml": "^4.1.0", - "json-stable-stringify-without-jsonify": "^1.0.1", - "levn": "^0.4.1", - "lodash.merge": "^4.6.2", - "minimatch": "^3.1.2", - "natural-compare": "^1.4.0", - "optionator": "^0.9.3", - "strip-ansi": "^6.0.1", - "text-table": "^0.2.0" - }, - "bin": { - "eslint": "bin/eslint.js" + "color-name": "~1.1.4" }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" + "node": ">=7.0.0" } }, - "node_modules/eslint-config-prettier": { - "version": "6.15.0", - "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-6.15.0.tgz", - "integrity": "sha512-a1+kOYLR8wMGustcgAjdydMsQ2A/2ipRPwRKUmfYaSxc9ZPcrku080Ctl6zrZzZNs/U82MjSv+qKREkoq3bJaw==", - "dev": true, - "dependencies": { - "get-stdin": "^6.0.0" - }, - "bin": { - "eslint-config-prettier-check": "bin/cli.js" - }, - "peerDependencies": { - "eslint": ">=3.14.1" - } + "node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "devOptional": true }, - "node_modules/eslint-plugin-prettier": { - "version": "3.4.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-prettier/-/eslint-plugin-prettier-3.4.1.tgz", - "integrity": "sha512-htg25EUYUeIhKHXjOinK4BgCcDwtLHjqaxCDsMy5nbnUMkKFvIhMVCp+5GFUXQ4Nr8lBsPqtGAqBenbpFqAA2g==", - "dev": true, - "dependencies": { - "prettier-linter-helpers": "^1.0.0" - }, + "node_modules/colors": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/colors/-/colors-1.0.3.tgz", + "integrity": "sha512-pFGrxThWcWQ2MsAz6RtgeWe4NK2kUE1WfsrvvlctdII745EW9I0yflqhe7++M5LEc7bV2c/9/5zc8sFcpL0Drw==", "engines": { - "node": ">=6.0.0" - }, - "peerDependencies": { - "eslint": ">=5.0.0", - "prettier": ">=1.13.0" - }, - "peerDependenciesMeta": { - "eslint-config-prettier": { - "optional": true - } + "node": ">=0.1.90" } }, - "node_modules/eslint-visitor-keys": { - "version": "3.4.3", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", - "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", - "dev": true, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + "node_modules/combined-stream": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", + "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", + "dependencies": { + "delayed-stream": "~1.0.0" }, - "funding": { - "url": "https://opencollective.com/eslint" + "engines": { + "node": ">= 0.8" } }, - "node_modules/eslint/node_modules/ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true, + "node_modules/commander": { + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-8.3.0.tgz", + "integrity": "sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww==", + "license": "MIT", "engines": { - "node": ">=8" + "node": ">= 12" } }, - "node_modules/eslint/node_modules/argparse": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", - "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "node_modules/commondir": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", + "integrity": "sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==", "dev": true }, - "node_modules/eslint/node_modules/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, - "dependencies": { - "path-key": "^3.1.0", - "shebang-command": "^2.0.0", - "which": "^2.0.1" - }, - "engines": { - "node": ">= 8" + "node_modules/component-emitter": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.1.tgz", + "integrity": "sha512-T0+barUSQRTUQASh8bx02dl+DhF54GtIDY13Y3m9oWTklKbb3Wv974meRpeZ3lp1JpLVECWWNHC4vaG2XHXouQ==", + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/eslint/node_modules/debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", - "dev": true, + "node_modules/compress-commons": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/compress-commons/-/compress-commons-4.1.2.tgz", + "integrity": "sha512-D3uMHtGc/fcO1Gt1/L7i1e33VOvD4A9hfQLP+6ewd+BvG/gQ84Yh4oftEhAdjSMgBgwGL+jsppT7JYNpo6MHHg==", "dependencies": { - "ms": "2.1.2" + "buffer-crc32": "^0.2.13", + "crc32-stream": "^4.0.2", + "normalize-path": "^3.0.0", + "readable-stream": "^3.6.0" }, "engines": { - "node": ">=6.0" - }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } + "node": ">= 10" } }, - "node_modules/eslint/node_modules/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, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } + "node_modules/concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==" }, - "node_modules/eslint/node_modules/eslint-scope": { - "version": "7.2.2", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.2.tgz", - "integrity": "sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==", - "dev": true, + "node_modules/concat-stream": { + "version": "1.6.2", + "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz", + "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==", + "engines": [ + "node >= 0.8" + ], "dependencies": { - "esrecurse": "^4.3.0", - "estraverse": "^5.2.0" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" + "buffer-from": "^1.0.0", + "inherits": "^2.0.3", + "readable-stream": "^2.2.2", + "typedarray": "^0.0.6" } }, - "node_modules/eslint/node_modules/estraverse": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", - "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", - "dev": true, - "engines": { - "node": ">=4.0" - } + "node_modules/concat-stream/node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==" }, - "node_modules/eslint/node_modules/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, + "node_modules/concat-stream/node_modules/readable-stream": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", + "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", "dependencies": { - "is-glob": "^4.0.3" - }, - "engines": { - "node": ">=10.13.0" + "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" } }, - "node_modules/eslint/node_modules/js-yaml": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", - "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", - "dev": true, + "node_modules/concat-stream/node_modules/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==" + }, + "node_modules/concat-stream/node_modules/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==", "dependencies": { - "argparse": "^2.0.1" - }, - "bin": { - "js-yaml": "bin/js-yaml.js" + "safe-buffer": "~5.1.0" } }, - "node_modules/eslint/node_modules/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 - }, - "node_modules/eslint/node_modules/path-key": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", - "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", - "dev": true, - "engines": { - "node": ">=8" + "node_modules/constantinople": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/constantinople/-/constantinople-4.0.1.tgz", + "integrity": "sha512-vCrqcSIq4//Gx74TXXCGnHpulY1dskqLTFGDmhrGxzeXL8lF8kvXv6mpNWlJj1uD4DW23D4ljAqbY4RRaaUZIw==", + "dependencies": { + "@babel/parser": "^7.6.0", + "@babel/types": "^7.6.1" } }, - "node_modules/eslint/node_modules/shebang-command": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", - "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", - "dev": true, + "node_modules/content-disposition": { + "version": "0.5.4", + "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz", + "integrity": "sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==", "dependencies": { - "shebang-regex": "^3.0.0" + "safe-buffer": "5.2.1" }, "engines": { - "node": ">=8" + "node": ">= 0.6" } }, - "node_modules/eslint/node_modules/shebang-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", - "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", - "dev": true, + "node_modules/content-type": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.5.tgz", + "integrity": "sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==", "engines": { - "node": ">=8" + "node": ">= 0.6" } }, - "node_modules/eslint/node_modules/strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "dependencies": { - "ansi-regex": "^5.0.1" - }, + "node_modules/convert-source-map": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.9.0.tgz", + "integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==", + "dev": true + }, + "node_modules/cookie": { + "version": "0.7.1", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.7.1.tgz", + "integrity": "sha512-6DnInpx7SJ2AK3+CTUE/ZM0vWTUboZCegxhC2xiIydHR9jNuTAASBrfEpHhiGOZw/nX51bHt6YQl8jsGo4y/0w==", + "license": "MIT", "engines": { - "node": ">=8" + "node": ">= 0.6" } }, - "node_modules/eslint/node_modules/which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "node_modules/cookie-signature": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", + "integrity": "sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==" + }, + "node_modules/cookiejar": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/cookiejar/-/cookiejar-2.1.4.tgz", + "integrity": "sha512-LDx6oHrK+PhzLKJU9j5S7/Y3jM/mUHvD/DeI1WQmJn652iPC5Y4TBzC9l+5OMOXlyTTA+SmVUPm0HQUwpD5Jqw==" + }, + "node_modules/core-util-is": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", + "integrity": "sha512-3lqz5YjWTYnW6dlDa5TLaTCcShfar1e40rmcJVwCBJC6mWlFuj0eCHIElmG1g5kyuJ/GD+8Wn4FFCcz4gJPfaQ==" + }, + "node_modules/coveralls": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/coveralls/-/coveralls-3.1.1.tgz", + "integrity": "sha512-+dxnG2NHncSD1NrqbSM3dn/lE57O6Qf/koe9+I7c+wzkqRmEvcp0kgJdxKInzYzkICKkFMZsX3Vct3++tsF9ww==", "dev": true, + "license": "BSD-2-Clause", "dependencies": { - "isexe": "^2.0.0" + "js-yaml": "^3.13.1", + "lcov-parse": "^1.0.0", + "log-driver": "^1.2.7", + "minimist": "^1.2.5", + "request": "^2.88.2" }, "bin": { - "node-which": "bin/node-which" + "coveralls": "bin/coveralls.js" }, "engines": { - "node": ">= 8" + "node": ">=6" } }, - "node_modules/espree": { - "version": "9.6.1", - "resolved": "https://registry.npmjs.org/espree/-/espree-9.6.1.tgz", - "integrity": "sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==", + "node_modules/coveralls/node_modules/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, "dependencies": { - "acorn": "^8.9.0", - "acorn-jsx": "^5.3.2", - "eslint-visitor-keys": "^3.4.1" + "argparse": "^1.0.7", + "esprima": "^4.0.0" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/cp-file": { + "version": "10.0.0", + "resolved": "https://registry.npmjs.org/cp-file/-/cp-file-10.0.0.tgz", + "integrity": "sha512-vy2Vi1r2epK5WqxOLnskeKeZkdZvTKfFZQCplE3XWsP+SUJyd5XAUFC9lFgTjjXJF2GMne/UML14iEmkAaDfFg==", + "dev": true, + "dependencies": { + "graceful-fs": "^4.2.10", + "nested-error-stacks": "^2.1.1", + "p-event": "^5.0.1" }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + "node": ">=14.16" }, "funding": { - "url": "https://opencollective.com/eslint" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/espree/node_modules/acorn": { - "version": "8.10.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.10.0.tgz", - "integrity": "sha512-F0SAmZ8iUtS//m8DmCTA0jlh6TDKkHQyK6xc6V4KDTyZKA9dnvX9/3sRTVQrWm79glUAZbnmmNcdYwUIHWVybw==", + "node_modules/cpy": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/cpy/-/cpy-10.1.0.tgz", + "integrity": "sha512-VC2Gs20JcTyeQob6UViBLnyP0bYHkBh6EiKzot9vi2DmeGlFT9Wd7VG3NBrkNx/jYvFBeyDOMMHdHQhbtKLgHQ==", "dev": true, - "bin": { - "acorn": "bin/acorn" + "dependencies": { + "arrify": "^3.0.0", + "cp-file": "^10.0.0", + "globby": "^13.1.4", + "junk": "^4.0.1", + "micromatch": "^4.0.5", + "nested-error-stacks": "^2.1.1", + "p-filter": "^3.0.0", + "p-map": "^6.0.0" }, "engines": { - "node": ">=0.4.0" + "node": ">=16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/esprima": { - "version": "2.7.3", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-2.7.3.tgz", - "integrity": "sha1-luO3DVd59q1JzQMmc9HDEnZ7pYE=", + "node_modules/cpy-cli": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/cpy-cli/-/cpy-cli-5.0.0.tgz", + "integrity": "sha512-fb+DZYbL9KHc0BC4NYqGRrDIJZPXUmjjtqdw4XRRg8iV8dIfghUX/WiL+q4/B/KFTy3sK6jsbUhBaz0/Hxg7IQ==", + "dev": true, + "dependencies": { + "cpy": "^10.1.0", + "meow": "^12.0.1" + }, "bin": { - "esparse": "bin/esparse.js", - "esvalidate": "bin/esvalidate.js" + "cpy": "cli.js" }, "engines": { - "node": ">=0.10.0" + "node": ">=16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/esquery": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.5.0.tgz", - "integrity": "sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==", + "node_modules/cpy/node_modules/globby": { + "version": "13.2.2", + "resolved": "https://registry.npmjs.org/globby/-/globby-13.2.2.tgz", + "integrity": "sha512-Y1zNGV+pzQdh7H39l9zgB4PJqjRNqydvdYCDG4HFXM4XuvSaQQlEc91IU1yALL8gUTDomgBAfz3XJdmUS+oo0w==", "dev": true, "dependencies": { - "estraverse": "^5.1.0" + "dir-glob": "^3.0.1", + "fast-glob": "^3.3.0", + "ignore": "^5.2.4", + "merge2": "^1.4.1", + "slash": "^4.0.0" }, "engines": { - "node": ">=0.10" + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/esquery/node_modules/estraverse": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", - "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "node_modules/cpy/node_modules/slash": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-4.0.0.tgz", + "integrity": "sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==", "dev": true, "engines": { - "node": ">=4.0" + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/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, - "dependencies": { - "estraverse": "^5.2.0" + "node_modules/crc-32": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/crc-32/-/crc-32-1.2.2.tgz", + "integrity": "sha512-ROmzCKrTnOwybPcJApAA6WBWij23HVfGVNKqqrZpuyZOHqK2CwHSvpGuyt/UNNvaIjEd8X5IFGp4Mh+Ie1IHJQ==", + "bin": { + "crc32": "bin/crc32.njs" }, "engines": { - "node": ">=4.0" + "node": ">=0.8" } }, - "node_modules/esrecurse/node_modules/estraverse": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", - "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", - "dev": true, + "node_modules/crc32-stream": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/crc32-stream/-/crc32-stream-4.0.3.tgz", + "integrity": "sha512-NT7w2JVU7DFroFdYkeq8cywxrgjPHWkdX1wjpRQXPX5Asews3tA+Ght6lddQO5Mkumffp3X7GEqku3epj2toIw==", + "dependencies": { + "crc-32": "^1.2.0", + "readable-stream": "^3.4.0" + }, "engines": { - "node": ">=4.0" + "node": ">= 10" } }, - "node_modules/esutils": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", - "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", + "node_modules/cross-spawn": { + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", + "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==", "dev": true, + "license": "MIT", + "dependencies": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + }, "engines": { - "node": ">=0.10.0" + "node": ">= 8" } }, - "node_modules/etag": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", - "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==", + "node_modules/cycle": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/cycle/-/cycle-1.0.3.tgz", + "integrity": "sha512-TVF6svNzeQCOpjCqsy0/CSy8VgObG3wXusJ73xW2GbG5rGx7lC8zxDSURicsXI2UsGdi2L0QNRCi745/wUDvsA==", "engines": { - "node": ">= 0.6" + "node": ">=0.4.0" } }, - "node_modules/event-stream": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/event-stream/-/event-stream-4.0.1.tgz", - "integrity": "sha512-qACXdu/9VHPBzcyhdOWR5/IahhGMf0roTeZJfzz077GwylcDd90yOHLouhmv7GJ5XzPi6ekaQWd8AvPP2nOvpA==", + "node_modules/dashdash": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", + "integrity": "sha512-jRFi8UDGo6j+odZiEpjazZaWqEal3w/basFjQHQEwVtZJGDpxbH1MeYluwCS8Xq5wmLJooDlMgvVarmWfGM44g==", + "dev": true, "dependencies": { - "duplexer": "^0.1.1", - "from": "^0.1.7", - "map-stream": "0.0.7", - "pause-stream": "^0.0.11", - "split": "^1.0.1", - "stream-combiner": "^0.2.2", - "through": "^2.3.8" + "assert-plus": "^1.0.0" + }, + "engines": { + "node": ">=0.10" } }, - "node_modules/evp_bytestokey": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz", - "integrity": "sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==", + "node_modules/data-view-buffer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/data-view-buffer/-/data-view-buffer-1.0.1.tgz", + "integrity": "sha512-0lht7OugA5x3iJLOWFhWK/5ehONdprk0ISXqVFn/NFrDu+cuc8iADFrGQz5BnRK7LLU3JmkbXSxaqX+/mXYtUA==", + "dev": true, "dependencies": { - "md5.js": "^1.3.4", - "safe-buffer": "^5.1.1" - } - }, - "node_modules/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==", + "call-bind": "^1.0.6", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.1" + }, "engines": { - "node": ">=6" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/express": { - "version": "4.18.2", - "resolved": "https://registry.npmjs.org/express/-/express-4.18.2.tgz", - "integrity": "sha512-5/PsL6iGPdfQ/lKM1UuielYgv3BUoJfz1aUwU9vHZ+J7gyvwdQXFEBIEIaxeGf0GIcreATNyBExtalisDbuMqQ==", + "node_modules/data-view-byte-length": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/data-view-byte-length/-/data-view-byte-length-1.0.1.tgz", + "integrity": "sha512-4J7wRJD3ABAzr8wP+OcIcqq2dlUKp4DVflx++hs5h5ZKydWMI6/D/fAot+yh6g2tHh8fLFTvNOaVN357NvSrOQ==", + "dev": true, "dependencies": { - "accepts": "~1.3.8", - "array-flatten": "1.1.1", - "body-parser": "1.20.1", - "content-disposition": "0.5.4", - "content-type": "~1.0.4", - "cookie": "0.5.0", - "cookie-signature": "1.0.6", - "debug": "2.6.9", - "depd": "2.0.0", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "etag": "~1.8.1", - "finalhandler": "1.2.0", - "fresh": "0.5.2", - "http-errors": "2.0.0", - "merge-descriptors": "1.0.1", - "methods": "~1.1.2", - "on-finished": "2.4.1", - "parseurl": "~1.3.3", - "path-to-regexp": "0.1.7", - "proxy-addr": "~2.0.7", - "qs": "6.11.0", - "range-parser": "~1.2.1", - "safe-buffer": "5.2.1", - "send": "0.18.0", - "serve-static": "1.15.0", - "setprototypeof": "1.2.0", - "statuses": "2.0.1", - "type-is": "~1.6.18", - "utils-merge": "1.0.1", - "vary": "~1.1.2" + "call-bind": "^1.0.7", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.1" }, "engines": { - "node": ">= 0.10.0" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/express-session": { - "version": "1.17.2", - "resolved": "https://registry.npmjs.org/express-session/-/express-session-1.17.2.tgz", - "integrity": "sha512-mPcYcLA0lvh7D4Oqr5aNJFMtBMKPLl++OKKxkHzZ0U0oDq1rpKBnkR5f5vCHR26VeArlTOEF9td4x5IjICksRQ==", + "node_modules/data-view-byte-offset": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/data-view-byte-offset/-/data-view-byte-offset-1.0.0.tgz", + "integrity": "sha512-t/Ygsytq+R995EJ5PZlD4Cu56sWa8InXySaViRzw9apusqsOO2bQP+SbYzAhR0pFKoB+43lYy8rWban9JSuXnA==", + "dev": true, "dependencies": { - "cookie": "0.4.1", - "cookie-signature": "1.0.6", - "debug": "2.6.9", - "depd": "~2.0.0", - "on-headers": "~1.0.2", - "parseurl": "~1.3.3", - "safe-buffer": "5.2.1", - "uid-safe": "~2.1.5" + "call-bind": "^1.0.6", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.1" }, "engines": { - "node": ">= 0.8.0" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/express-session/node_modules/cookie": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.1.tgz", - "integrity": "sha512-ZwrFkGJxUR3EIoXtO+yVE69Eb7KlixbaeAWfBQB9vVsNn/o+Yw69gBWSSDK825hQNdN+wF8zELf3dFNl/kxkUA==", + "node_modules/debug": { + "version": "4.3.5", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.5.tgz", + "integrity": "sha512-pt0bNEmneDIvdL1Xsd9oDQ/wrQRkXDT4AUWlNZNPKvW5x/jyO9VFXkJUP07vQ2upmw5PlaITaPKc31jK13V+jg==", + "dependencies": { + "ms": "2.1.2" + }, "engines": { - "node": ">= 0.6" + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } } }, - "node_modules/express-session/node_modules/depd": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", - "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==", + "node_modules/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, "engines": { - "node": ">= 0.8" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/express/node_modules/body-parser": { - "version": "1.20.1", - "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.1.tgz", - "integrity": "sha512-jWi7abTbYwajOytWCQc37VulmWiRae5RyTpaCyDcS5/lMdtwSz5lOpDE67srw/HYe35f1z3fDQw+3txg7gNtWw==", + "node_modules/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==", + "optional": true, "dependencies": { - "bytes": "3.1.2", - "content-type": "~1.0.4", - "debug": "2.6.9", - "depd": "2.0.0", - "destroy": "1.2.0", - "http-errors": "2.0.0", - "iconv-lite": "0.4.24", - "on-finished": "2.4.1", - "qs": "6.11.0", - "raw-body": "2.5.1", - "type-is": "~1.6.18", - "unpipe": "1.0.0" + "mimic-response": "^3.1.0" }, "engines": { - "node": ">= 0.8", - "npm": "1.2.8000 || >= 1.4.16" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/express/node_modules/depd": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", - "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==", + "node_modules/deep-eql": { + "version": "4.1.4", + "resolved": "https://registry.npmjs.org/deep-eql/-/deep-eql-4.1.4.tgz", + "integrity": "sha512-SUwdGfqdKOwxCPeVYjwSyRpJ7Z+fhpwIAtmCUdZIWZ/YP5R9WAsyuSgpLVDi9bjWoN2LXHNss/dk3urXtdQxGg==", + "dev": true, + "license": "MIT", + "dependencies": { + "type-detect": "^4.0.0" + }, "engines": { - "node": ">= 0.8" + "node": ">=6" } }, - "node_modules/express/node_modules/http-errors": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", - "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==", - "dependencies": { - "depd": "2.0.0", - "inherits": "2.0.4", - "setprototypeof": "1.2.0", - "statuses": "2.0.1", - "toidentifier": "1.0.1" + "node_modules/deep-equal": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-2.2.3.tgz", + "integrity": "sha512-ZIwpnevOurS8bpT4192sqAowWM76JDKSHYzMLty3BZGSswgq6pBaH3DhCSW5xVAZICZyKdOBPjwww5wfgT/6PA==", + "dev": true, + "license": "MIT", + "dependencies": { + "array-buffer-byte-length": "^1.0.0", + "call-bind": "^1.0.5", + "es-get-iterator": "^1.1.3", + "get-intrinsic": "^1.2.2", + "is-arguments": "^1.1.1", + "is-array-buffer": "^3.0.2", + "is-date-object": "^1.0.5", + "is-regex": "^1.1.4", + "is-shared-array-buffer": "^1.0.2", + "isarray": "^2.0.5", + "object-is": "^1.1.5", + "object-keys": "^1.1.1", + "object.assign": "^4.1.4", + "regexp.prototype.flags": "^1.5.1", + "side-channel": "^1.0.4", + "which-boxed-primitive": "^1.0.2", + "which-collection": "^1.0.1", + "which-typed-array": "^1.1.13" }, "engines": { - "node": ">= 0.8" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/express/node_modules/iconv-lite": { - "version": "0.4.24", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", - "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", - "dependencies": { - "safer-buffer": ">= 2.1.2 < 3" - }, + "node_modules/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==", + "optional": true, "engines": { - "node": ">=0.10.0" + "node": ">=4.0.0" } }, - "node_modules/express/node_modules/on-finished": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz", - "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==", + "node_modules/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 + }, + "node_modules/default-require-extensions": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/default-require-extensions/-/default-require-extensions-2.0.0.tgz", + "integrity": "sha512-B0n2zDIXpzLzKeoEozorDSa1cHc1t0NjmxP0zuAxbizNU2MBqYJJKYXrrFdKuQliojXynrxgd7l4ahfg/+aA5g==", + "dev": true, "dependencies": { - "ee-first": "1.1.1" + "strip-bom": "^3.0.0" }, "engines": { - "node": ">= 0.8" + "node": ">=4" } }, - "node_modules/express/node_modules/qs": { - "version": "6.11.0", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.11.0.tgz", - "integrity": "sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==", + "node_modules/define-data-property": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.4.tgz", + "integrity": "sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==", "dependencies": { - "side-channel": "^1.0.4" + "es-define-property": "^1.0.0", + "es-errors": "^1.3.0", + "gopd": "^1.0.1" }, "engines": { - "node": ">=0.6" + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/express/node_modules/raw-body": { - "version": "2.5.1", - "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.1.tgz", - "integrity": "sha512-qqJBtEyVgS0ZmPGdCFPWJ3FreoqvG4MVQln/kCgF7Olq95IbOp0/BWyMwbdtn4VTvkM8Y7khCQ2Xgk/tcrCXig==", + "node_modules/define-properties": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.2.1.tgz", + "integrity": "sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==", + "dev": true, "dependencies": { - "bytes": "3.1.2", - "http-errors": "2.0.0", - "iconv-lite": "0.4.24", - "unpipe": "1.0.0" + "define-data-property": "^1.0.1", + "has-property-descriptors": "^1.0.0", + "object-keys": "^1.1.1" }, "engines": { - "node": ">= 0.8" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/express/node_modules/statuses": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", - "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", + "node_modules/delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==", "engines": { - "node": ">= 0.8" + "node": ">=0.4.0" } }, - "node_modules/extend": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", - "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==", - "dev": true + "node_modules/depd": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", + "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==", + "license": "MIT", + "engines": { + "node": ">= 0.8" + } }, - "node_modules/external-editor": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz", - "integrity": "sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==", - "optional": true, - "dependencies": { - "chardet": "^0.7.0", - "iconv-lite": "^0.4.24", - "tmp": "^0.0.33" - }, + "node_modules/destroy": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz", + "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==", "engines": { - "node": ">=4" + "node": ">= 0.8", + "npm": "1.2.8000 || >= 1.4.16" } }, - "node_modules/external-editor/node_modules/iconv-lite": { - "version": "0.4.24", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", - "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", + "node_modules/detect-libc": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.0.3.tgz", + "integrity": "sha512-bwy0MGW55bG41VqxxypOsdSdGqLwXPI/focwgTYCFMbdUiBAxLg9CFzG08sz2aqzknwiX7Hkl0bQENjg8iLByw==", "optional": true, - "dependencies": { - "safer-buffer": ">= 2.1.2 < 3" - }, "engines": { - "node": ">=0.10.0" + "node": ">=8" } }, - "node_modules/extsprintf": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.4.1.tgz", - "integrity": "sha512-Wrk35e8ydCKDj/ArClo1VrPVmN8zph5V4AtHwIuHhvMXsKf73UT3BOD+azBIW+3wOJ4FhEH7zyaJCFvChjYvMA==", - "engines": [ - "node >=0.6.0" - ] + "node_modules/dezalgo": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/dezalgo/-/dezalgo-1.0.4.tgz", + "integrity": "sha512-rXSP0bf+5n0Qonsb+SVVfNfIsimO4HEtmnIpPHY8Q1UCzKlQrDMfdobr8nJOOsRgWCyMRqeSBQzmWUMq7zvVig==", + "dependencies": { + "asap": "^2.0.0", + "wrappy": "1" + } }, - "node_modules/eyes": { - "version": "0.1.8", - "resolved": "https://registry.npmjs.org/eyes/-/eyes-0.1.8.tgz", - "integrity": "sha1-Ys8SAjTGg3hdkCNIqADvPgzCC8A=", + "node_modules/diff": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/diff/-/diff-5.2.0.tgz", + "integrity": "sha512-uIFDxqpRZGZ6ThOk84hEfqWoHx2devRFvpTZcTHur85vImfaxUbTW9Ryh4CpCuDnToOP1CEtXKIgytHBPVff5A==", + "dev": true, + "license": "BSD-3-Clause", "engines": { - "node": "> 0.1.90" + "node": ">=0.3.1" } }, - "node_modules/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 - }, - "node_modules/fast-diff": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/fast-diff/-/fast-diff-1.2.0.tgz", - "integrity": "sha512-xJuoT5+L99XlZ8twedaRf6Ax2TgQVxvgZOYoPKqZufmJib0tL2tegPBOZb1pVNgIhlqDlA0eO0c3wBvQcmzx4w==", - "dev": true - }, - "node_modules/fast-fifo": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/fast-fifo/-/fast-fifo-1.3.2.tgz", - "integrity": "sha512-/d9sfos4yxzpwkDkuN7k2SqFKtYNmCTzgfEpz82x34IM9/zc8KGxQoXg1liNC/izpRM/MBdt44Nmx41ZWqk+FQ==", - "dev": true - }, - "node_modules/fast-glob": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.1.tgz", - "integrity": "sha512-kNFPyjhh5cKjrUltxs+wFx+ZkbRaxxmZ+X0ZU31SOsxCEtP9VPgtq2teZw1DebupL5GmDaNQ6yKMMVcM41iqDg==", + "node_modules/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, "dependencies": { - "@nodelib/fs.stat": "^2.0.2", - "@nodelib/fs.walk": "^1.2.3", - "glob-parent": "^5.1.2", - "merge2": "^1.3.0", - "micromatch": "^4.0.4" + "path-type": "^4.0.0" }, "engines": { - "node": ">=8.6.0" + "node": ">=8" } }, - "node_modules/fast-json-stable-stringify": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", - "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", - "dev": true - }, - "node_modules/fast-levenshtein": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", - "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", - "dev": true - }, - "node_modules/fast-safe-stringify": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/fast-safe-stringify/-/fast-safe-stringify-2.1.1.tgz", - "integrity": "sha512-W+KJc2dmILlPplD/H4K9l9LcAHAfPtP6BY84uVLXQ6Evcz9Lcg33Y2z1IVblT6xdY54PXYVHEv+0Wpq8Io6zkA==" - }, - "node_modules/fastq": { - "version": "1.15.0", - "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.15.0.tgz", - "integrity": "sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==", + "node_modules/doctrine": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", + "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", "dev": true, "dependencies": { - "reusify": "^1.0.4" + "esutils": "^2.0.2" + }, + "engines": { + "node": ">=6.0.0" } }, - "node_modules/fd-slicer": { + "node_modules/doctypes": { "version": "1.1.0", - "resolved": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.1.0.tgz", - "integrity": "sha512-cE1qsB/VwyQozZ+q1dGxR8LBYNZeofhEdUNGSMbQD3Gw2lAzX9Zb3uIU6Ebc/Fmyjo9AWWfnn0AUCHqtevs/8g==", - "dev": true, - "dependencies": { - "pend": "~1.2.0" + "resolved": "https://registry.npmjs.org/doctypes/-/doctypes-1.1.0.tgz", + "integrity": "sha512-LLBi6pEqS6Do3EKQ3J0NqHWV5hhb78Pi8vvESYwyOy2c31ZEZVdtitdzsQsKb7878PEERhzUk0ftqGhG6Mz+pQ==" + }, + "node_modules/drange": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/drange/-/drange-1.1.1.tgz", + "integrity": "sha512-pYxfDYpued//QpnLIm4Avk7rsNtAtQkUES2cwAYSvD/wd2pKD71gN2Ebj3e7klzXwjocvE8c5vx/1fxwpqmSxA==", + "dev": true, + "engines": { + "node": ">=4" } }, - "node_modules/figures": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz", - "integrity": "sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==", - "optional": true, + "node_modules/dunder-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.1.tgz", + "integrity": "sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==", + "license": "MIT", "dependencies": { - "escape-string-regexp": "^1.0.5" + "call-bind-apply-helpers": "^1.0.1", + "es-errors": "^1.3.0", + "gopd": "^1.2.0" }, "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">= 0.4" } }, - "node_modules/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==", + "node_modules/duplexer": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/duplexer/-/duplexer-0.1.2.tgz", + "integrity": "sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg==" + }, + "node_modules/eastasianwidth": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz", + "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==", + "dev": true + }, + "node_modules/ecc-jsbn": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz", + "integrity": "sha512-eh9O+hwRHNbG4BLTjEl3nw044CkGm5X6LoaCf7LPp7UU8Qrt47JYNi6nPX8xjW97TKGKm1ouctg0QSpZe9qrnw==", "dev": true, "dependencies": { - "flat-cache": "^3.0.4" - }, - "engines": { - "node": "^10.12.0 || >=12.0.0" + "jsbn": "~0.1.0", + "safer-buffer": "^2.1.0" } }, - "node_modules/file-type": { - "version": "16.5.4", - "resolved": "https://registry.npmjs.org/file-type/-/file-type-16.5.4.tgz", - "integrity": "sha512-/yFHK0aGjFEgDJjEKP0pWCplsPFPhwyfwevf/pVxiN0tmE4L9LmwWxWukdJSHdoCli4VgQLehjJtwQBnqmsKcw==", + "node_modules/ecc-jsbn/node_modules/jsbn": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", + "integrity": "sha512-UVU9dibq2JcFWxQPA6KCqj5O42VOmAY3zQUfEKxU0KpTGXwNoCjkX1e13eHNvw/xPynt6pU0rZ1htjWTNTSXsg==", + "dev": true + }, + "node_modules/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==", "dependencies": { - "readable-web-to-node-stream": "^3.0.0", - "strtok3": "^6.2.4", - "token-types": "^4.1.1" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sindresorhus/file-type?sponsor=1" + "safe-buffer": "^5.0.1" } }, - "node_modules/file-uri-to-path": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz", - "integrity": "sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==" + "node_modules/ee-first": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", + "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==", + "license": "MIT" }, - "node_modules/fill-keys": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/fill-keys/-/fill-keys-1.0.2.tgz", - "integrity": "sha1-mo+jb06K1jTjv2tPPIiCVRRS6yA=", - "dev": true, - "dependencies": { - "is-object": "~1.0.1", - "merge-descriptors": "~1.0.0" - }, + "node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "devOptional": true + }, + "node_modules/encodeurl": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-2.0.0.tgz", + "integrity": "sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg==", + "license": "MIT", "engines": { - "node": ">=0.10.0" + "node": ">= 0.8" } }, - "node_modules/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, + "node_modules/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==", "dependencies": { - "to-regex-range": "^5.0.1" - }, - "engines": { - "node": ">=8" + "once": "^1.4.0" } }, - "node_modules/finalhandler": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.2.0.tgz", - "integrity": "sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg==", + "node_modules/error-ex": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", + "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", + "dev": true, "dependencies": { - "debug": "2.6.9", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "on-finished": "2.4.1", - "parseurl": "~1.3.3", - "statuses": "2.0.1", - "unpipe": "~1.0.0" + "is-arrayish": "^0.2.1" + } + }, + "node_modules/es-abstract": { + "version": "1.23.3", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.23.3.tgz", + "integrity": "sha512-e+HfNH61Bj1X9/jLc5v1owaLYuHdeHHSQlkhCBiTK8rBvKaULl/beGMxwrMXjpYrv4pz22BlY570vVePA2ho4A==", + "dev": true, + "dependencies": { + "array-buffer-byte-length": "^1.0.1", + "arraybuffer.prototype.slice": "^1.0.3", + "available-typed-arrays": "^1.0.7", + "call-bind": "^1.0.7", + "data-view-buffer": "^1.0.1", + "data-view-byte-length": "^1.0.1", + "data-view-byte-offset": "^1.0.0", + "es-define-property": "^1.0.0", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.0.0", + "es-set-tostringtag": "^2.0.3", + "es-to-primitive": "^1.2.1", + "function.prototype.name": "^1.1.6", + "get-intrinsic": "^1.2.4", + "get-symbol-description": "^1.0.2", + "globalthis": "^1.0.3", + "gopd": "^1.0.1", + "has-property-descriptors": "^1.0.2", + "has-proto": "^1.0.3", + "has-symbols": "^1.0.3", + "hasown": "^2.0.2", + "internal-slot": "^1.0.7", + "is-array-buffer": "^3.0.4", + "is-callable": "^1.2.7", + "is-data-view": "^1.0.1", + "is-negative-zero": "^2.0.3", + "is-regex": "^1.1.4", + "is-shared-array-buffer": "^1.0.3", + "is-string": "^1.0.7", + "is-typed-array": "^1.1.13", + "is-weakref": "^1.0.2", + "object-inspect": "^1.13.1", + "object-keys": "^1.1.1", + "object.assign": "^4.1.5", + "regexp.prototype.flags": "^1.5.2", + "safe-array-concat": "^1.1.2", + "safe-regex-test": "^1.0.3", + "string.prototype.trim": "^1.2.9", + "string.prototype.trimend": "^1.0.8", + "string.prototype.trimstart": "^1.0.8", + "typed-array-buffer": "^1.0.2", + "typed-array-byte-length": "^1.0.1", + "typed-array-byte-offset": "^1.0.2", + "typed-array-length": "^1.0.6", + "unbox-primitive": "^1.0.2", + "which-typed-array": "^1.1.15" }, "engines": { - "node": ">= 0.8" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/finalhandler/node_modules/on-finished": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz", - "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==", - "dependencies": { - "ee-first": "1.1.1" - }, + "node_modules/es-define-property": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.1.tgz", + "integrity": "sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==", + "license": "MIT", "engines": { - "node": ">= 0.8" + "node": ">= 0.4" } }, - "node_modules/finalhandler/node_modules/statuses": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", - "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", + "node_modules/es-errors": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz", + "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==", "engines": { - "node": ">= 0.8" + "node": ">= 0.4" } }, - "node_modules/find-cache-dir": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-3.3.2.tgz", - "integrity": "sha512-wXZV5emFEjrridIgED11OoUKLxiYjAcqot/NJdAkOhlJ+vGzwhOAfcG5OX1jP+S0PcjEn8bdMJv+g2jwQ3Onig==", + "node_modules/es-get-iterator": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/es-get-iterator/-/es-get-iterator-1.1.3.tgz", + "integrity": "sha512-sPZmqHBe6JIiTfN5q2pEi//TwxmAFHwj/XEuYjTuse78i8KxaqMTTzxPoFKuzRpDpTJ+0NAbpfenkmH2rePtuw==", "dev": true, "dependencies": { - "commondir": "^1.0.1", - "make-dir": "^3.0.2", - "pkg-dir": "^4.1.0" - }, - "engines": { - "node": ">=8" + "call-bind": "^1.0.2", + "get-intrinsic": "^1.1.3", + "has-symbols": "^1.0.3", + "is-arguments": "^1.1.1", + "is-map": "^2.0.2", + "is-set": "^2.0.2", + "is-string": "^1.0.7", + "isarray": "^2.0.5", + "stop-iteration-iterator": "^1.0.0" }, "funding": { - "url": "https://github.com/avajs/find-cache-dir?sponsor=1" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/find-cache-dir/node_modules/make-dir": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", - "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", - "dev": true, + "node_modules/es-object-atoms": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.1.1.tgz", + "integrity": "sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==", + "license": "MIT", "dependencies": { - "semver": "^6.0.0" + "es-errors": "^1.3.0" }, "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">= 0.4" } }, - "node_modules/find-cache-dir/node_modules/semver": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", - "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "node_modules/es-set-tostringtag": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.0.3.tgz", + "integrity": "sha512-3T8uNMC3OQTHkFUsFq8r/BwAXLHvU/9O9mE0fBc/MY5iq/8H7ncvO947LmYA6ldWw9Uh8Yhf25zu6n7nML5QWQ==", "dev": true, - "bin": { - "semver": "bin/semver.js" + "dependencies": { + "get-intrinsic": "^1.2.4", + "has-tostringtag": "^1.0.2", + "hasown": "^2.0.1" + }, + "engines": { + "node": ">= 0.4" } }, - "node_modules/find-up": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", - "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "node_modules/es-to-primitive": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", + "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", "dev": true, "dependencies": { - "locate-path": "^6.0.0", - "path-exists": "^4.0.0" + "is-callable": "^1.1.4", + "is-date-object": "^1.0.1", + "is-symbol": "^1.0.2" }, "engines": { - "node": ">=10" + "node": ">= 0.4" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/find-up/node_modules/path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "dev": true, - "engines": { - "node": ">=8" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/flat": { + "node_modules/es6-error": { "version": "4.1.1", - "resolved": "https://registry.npmjs.org/flat/-/flat-4.1.1.tgz", - "integrity": "sha512-FmTtBsHskrU6FJ2VxCnsDb84wu9zhmO3cUX2kGFb5tuwhfXxGciiT0oRY+cck35QmG+NmGh5eLz6lLCpWTqwpA==", - "dev": true, - "dependencies": { - "is-buffer": "~2.0.3" - }, - "bin": { - "flat": "cli.js" - } + "resolved": "https://registry.npmjs.org/es6-error/-/es6-error-4.1.1.tgz", + "integrity": "sha512-Um/+FxMr9CISWh0bi5Zv0iOD+4cFh5qLeks1qhAopKVAJw3drgKbKySikp7wGhDL0HPeaja0P5ULZrxLkniUVg==", + "dev": true }, - "node_modules/flat-cache": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.1.1.tgz", - "integrity": "sha512-/qM2b3LUIaIgviBQovTLvijfyOQXPtSRnRK26ksj2J7rzPIecePUIpJsZ4T02Qg+xiAEKIs5K8dsHEd+VaKa/Q==", + "node_modules/escalade": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.2.tgz", + "integrity": "sha512-ErCHMCae19vR8vQGe50xIsVomy19rg6gFu3+r3jkEO46suLMWBksvVyoGgQV+jOfl84ZSOSlmv6Gxa89PmTGmA==", "dev": true, - "dependencies": { - "flatted": "^3.2.9", - "keyv": "^4.5.3", - "rimraf": "^3.0.2" - }, "engines": { - "node": ">=12.0.0" + "node": ">=6" } }, - "node_modules/flat-cache/node_modules/rimraf": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "node_modules/escape-html": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", + "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==" + }, + "node_modules/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, - "dependencies": { - "glob": "^7.1.3" - }, - "bin": { - "rimraf": "bin.js" + "engines": { + "node": ">=10" }, "funding": { - "url": "https://github.com/sponsors/isaacs" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/flat/node_modules/is-buffer": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-2.0.5.tgz", - "integrity": "sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ==", + "node_modules/eslint": { + "version": "8.57.1", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.57.1.tgz", + "integrity": "sha512-ypowyDxpVSYpkXr9WPv2PAZCtNip1Mv5KTW0SCurXv/9iOpcrH9PaqUElksqEB6pChqHGDRCFTyrZlGhnLNGiA==", + "deprecated": "This version is no longer supported. Please see https://eslint.org/version-support for other options.", "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], + "license": "MIT", + "dependencies": { + "@eslint-community/eslint-utils": "^4.2.0", + "@eslint-community/regexpp": "^4.6.1", + "@eslint/eslintrc": "^2.1.4", + "@eslint/js": "8.57.1", + "@humanwhocodes/config-array": "^0.13.0", + "@humanwhocodes/module-importer": "^1.0.1", + "@nodelib/fs.walk": "^1.2.8", + "@ungap/structured-clone": "^1.2.0", + "ajv": "^6.12.4", + "chalk": "^4.0.0", + "cross-spawn": "^7.0.2", + "debug": "^4.3.2", + "doctrine": "^3.0.0", + "escape-string-regexp": "^4.0.0", + "eslint-scope": "^7.2.2", + "eslint-visitor-keys": "^3.4.3", + "espree": "^9.6.1", + "esquery": "^1.4.2", + "esutils": "^2.0.2", + "fast-deep-equal": "^3.1.3", + "file-entry-cache": "^6.0.1", + "find-up": "^5.0.0", + "glob-parent": "^6.0.2", + "globals": "^13.19.0", + "graphemer": "^1.4.0", + "ignore": "^5.2.0", + "imurmurhash": "^0.1.4", + "is-glob": "^4.0.0", + "is-path-inside": "^3.0.3", + "js-yaml": "^4.1.0", + "json-stable-stringify-without-jsonify": "^1.0.1", + "levn": "^0.4.1", + "lodash.merge": "^4.6.2", + "minimatch": "^3.1.2", + "natural-compare": "^1.4.0", + "optionator": "^0.9.3", + "strip-ansi": "^6.0.1", + "text-table": "^0.2.0" + }, + "bin": { + "eslint": "bin/eslint.js" + }, "engines": { - "node": ">=4" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" } }, - "node_modules/flatted": { - "version": "3.2.9", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.9.tgz", - "integrity": "sha512-36yxDn5H7OFZQla0/jFJmbIKTdZAQHngCedGxiMmpNfEZM0sdEeT+WczLQrjK6D7o2aiyLYDnkw0R3JK0Qv1RQ==", - "dev": true + "node_modules/eslint-config-prettier": { + "version": "6.15.0", + "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-6.15.0.tgz", + "integrity": "sha512-a1+kOYLR8wMGustcgAjdydMsQ2A/2ipRPwRKUmfYaSxc9ZPcrku080Ctl6zrZzZNs/U82MjSv+qKREkoq3bJaw==", + "dev": true, + "license": "MIT", + "dependencies": { + "get-stdin": "^6.0.0" + }, + "bin": { + "eslint-config-prettier-check": "bin/cli.js" + }, + "peerDependencies": { + "eslint": ">=3.14.1" + } }, - "node_modules/follow-redirects": { - "version": "1.15.4", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.4.tgz", - "integrity": "sha512-Cr4D/5wlrb0z9dgERpUL3LrmPKVDsETIJhaCMeDfuFYcqa5bldGV6wBsAN6X/vxlXQtFBMrXdXxdL8CbDTGniw==", + "node_modules/eslint-plugin-prettier": { + "version": "3.4.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-prettier/-/eslint-plugin-prettier-3.4.1.tgz", + "integrity": "sha512-htg25EUYUeIhKHXjOinK4BgCcDwtLHjqaxCDsMy5nbnUMkKFvIhMVCp+5GFUXQ4Nr8lBsPqtGAqBenbpFqAA2g==", "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://github.com/sponsors/RubenVerborgh" - } - ], + "license": "MIT", + "dependencies": { + "prettier-linter-helpers": "^1.0.0" + }, "engines": { - "node": ">=4.0" + "node": ">=6.0.0" + }, + "peerDependencies": { + "eslint": ">=5.0.0", + "prettier": ">=1.13.0" }, "peerDependenciesMeta": { - "debug": { + "eslint-config-prettier": { "optional": true } } }, - "node_modules/foreach": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/foreach/-/foreach-2.0.5.tgz", - "integrity": "sha1-C+4AUBiusmDQo6865ljdATbsG5k=", + "node_modules/eslint-scope": { + "version": "7.2.2", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.2.tgz", + "integrity": "sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==", + "dev": true, + "dependencies": { + "esrecurse": "^4.3.0", + "estraverse": "^5.2.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/eslint-visitor-keys": { + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", + "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", + "dev": true, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/eslint/node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", "dev": true }, - "node_modules/foreachasync": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/foreachasync/-/foreachasync-3.0.0.tgz", - "integrity": "sha1-VQKYfchxS+M5IJfzLgBxyd7gfPY=" + "node_modules/eslint/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } }, - "node_modules/foreground-child": { - "version": "1.5.6", - "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-1.5.6.tgz", - "integrity": "sha1-T9ca0t/elnibmApcCilZN8svXOk=", + "node_modules/eslint/node_modules/js-yaml": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", + "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", "dev": true, "dependencies": { - "cross-spawn": "^4", - "signal-exit": "^3.0.0" + "argparse": "^2.0.1" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" } }, - "node_modules/forever-agent": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", - "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=", + "node_modules/eslint/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", "dev": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, "engines": { "node": "*" } }, - "node_modules/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==", + "node_modules/espree": { + "version": "9.6.1", + "resolved": "https://registry.npmjs.org/espree/-/espree-9.6.1.tgz", + "integrity": "sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==", "dev": true, "dependencies": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.6", - "mime-types": "^2.1.12" + "acorn": "^8.9.0", + "acorn-jsx": "^5.3.2", + "eslint-visitor-keys": "^3.4.1" }, "engines": { - "node": ">= 0.12" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" } }, - "node_modules/format-util": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/format-util/-/format-util-1.0.5.tgz", - "integrity": "sha512-varLbTj0e0yVyRpqQhuWV+8hlePAgaoFRhNFj50BNjEIrw1/DphHSObtqwskVCPWNgzwPoQrZAbfa/SBiicNeg==", - "dev": true + "node_modules/esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", + "license": "BSD-2-Clause", + "bin": { + "esparse": "bin/esparse.js", + "esvalidate": "bin/esvalidate.js" + }, + "engines": { + "node": ">=4" + } }, - "node_modules/formidable": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/formidable/-/formidable-2.1.2.tgz", - "integrity": "sha512-CM3GuJ57US06mlpQ47YcunuUZ9jpm8Vx+P2CGt2j7HpgkKZO/DJYQ0Bobim8G6PFQmK5lOqOOdUXboU+h73A4g==", + "node_modules/esquery": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.5.0.tgz", + "integrity": "sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==", + "dev": true, "dependencies": { - "dezalgo": "^1.0.4", - "hexoid": "^1.0.0", - "once": "^1.4.0", - "qs": "^6.11.0" + "estraverse": "^5.1.0" }, - "funding": { - "url": "https://ko-fi.com/tunnckoCore/commissions" + "engines": { + "node": ">=0.10" } }, - "node_modules/formidable/node_modules/qs": { - "version": "6.11.2", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.11.2.tgz", - "integrity": "sha512-tDNIz22aBzCDxLtVH++VnTfzxlfeK5CbqohpSqpJgj1Wg/cQbStNAz3NuqCs5vV+pjBsK4x4pN9HlVh7rcYRiA==", + "node_modules/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, "dependencies": { - "side-channel": "^1.0.4" + "estraverse": "^5.2.0" }, "engines": { - "node": ">=0.6" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=4.0" } }, - "node_modules/forwarded": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz", - "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==", + "node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true, "engines": { - "node": ">= 0.6" + "node": ">=4.0" } }, - "node_modules/fresh": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", - "integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==", + "node_modules/esutils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", + "dev": true, "engines": { - "node": ">= 0.6" + "node": ">=0.10.0" } }, - "node_modules/from": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/from/-/from-0.1.7.tgz", - "integrity": "sha1-g8YK/Fi5xWmXAH7Rp2izqzA6RP4=" + "node_modules/etag": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", + "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==", + "license": "MIT", + "engines": { + "node": ">= 0.6" + } }, - "node_modules/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==" - }, - "node_modules/fs-extra": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-4.0.3.tgz", - "integrity": "sha512-q6rbdDd1o2mAnQreO7YADIxf/Whx4AHBiRf6d+/cVT8h44ss+lHgxf1FemcqDnQt9X3ct4McHr+JMGlYSsK7Cg==", + "node_modules/event-stream": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/event-stream/-/event-stream-4.0.1.tgz", + "integrity": "sha512-qACXdu/9VHPBzcyhdOWR5/IahhGMf0roTeZJfzz077GwylcDd90yOHLouhmv7GJ5XzPi6ekaQWd8AvPP2nOvpA==", "dependencies": { - "graceful-fs": "^4.1.2", - "jsonfile": "^4.0.0", - "universalify": "^0.1.0" + "duplexer": "^0.1.1", + "from": "^0.1.7", + "map-stream": "0.0.7", + "pause-stream": "^0.0.11", + "split": "^1.0.1", + "stream-combiner": "^0.2.2", + "through": "^2.3.8" } }, - "node_modules/fs.realpath": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=" - }, - "node_modules/fsevents": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.1.3.tgz", - "integrity": "sha512-Auw9a4AxqWpa9GUfj370BMPzzyncfBABW8Mab7BGWBYDj4Isgq+cDKtx0i6u9jcX9pQDnswsaaOTgTmA5pEjuQ==", - "deprecated": "\"Please update to latest v2.3 or v2.2\"", - "dev": true, - "hasInstallScript": true, + "node_modules/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==", "optional": true, - "os": [ - "darwin" - ], "engines": { - "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + "node": ">=6" } }, - "node_modules/function-bind": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", - "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" - }, - "node_modules/geojson": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/geojson/-/geojson-0.5.0.tgz", - "integrity": "sha1-PNbJY5m+ZbVu5VWWEW/pGRznAcA=", + "node_modules/express": { + "version": "4.21.2", + "resolved": "https://registry.npmjs.org/express/-/express-4.21.2.tgz", + "integrity": "sha512-28HqgMZAmih1Czt9ny7qr6ek2qddF4FclbMzwhCREB6OFfH+rXAnuNCwo1/wFvrtbgsQDb4kSbX9de9lFbrXnA==", + "license": "MIT", + "dependencies": { + "accepts": "~1.3.8", + "array-flatten": "1.1.1", + "body-parser": "1.20.3", + "content-disposition": "0.5.4", + "content-type": "~1.0.4", + "cookie": "0.7.1", + "cookie-signature": "1.0.6", + "debug": "2.6.9", + "depd": "2.0.0", + "encodeurl": "~2.0.0", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "finalhandler": "1.3.1", + "fresh": "0.5.2", + "http-errors": "2.0.0", + "merge-descriptors": "1.0.3", + "methods": "~1.1.2", + "on-finished": "2.4.1", + "parseurl": "~1.3.3", + "path-to-regexp": "0.1.12", + "proxy-addr": "~2.0.7", + "qs": "6.13.0", + "range-parser": "~1.2.1", + "safe-buffer": "5.2.1", + "send": "0.19.0", + "serve-static": "1.16.2", + "setprototypeof": "1.2.0", + "statuses": "2.0.1", + "type-is": "~1.6.18", + "utils-merge": "1.0.1", + "vary": "~1.1.2" + }, "engines": { - "node": ">= 0.10" + "node": ">= 0.10.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/express" } }, - "node_modules/geojson-rbush": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/geojson-rbush/-/geojson-rbush-3.2.0.tgz", - "integrity": "sha512-oVltQTXolxvsz1sZnutlSuLDEcQAKYC/uXt9zDzJJ6bu0W+baTI8LZBaTup5afzibEH4N3jlq2p+a152wlBJ7w==", + "node_modules/express-session": { + "version": "1.18.1", + "resolved": "https://registry.npmjs.org/express-session/-/express-session-1.18.1.tgz", + "integrity": "sha512-a5mtTqEaZvBCL9A9aqkrtfz+3SMDhOVUnjafjo+s7A9Txkq+SVX2DLvSp1Zrv4uCXa3lMSK3viWnh9Gg07PBUA==", + "license": "MIT", "dependencies": { - "@turf/bbox": "*", - "@turf/helpers": "6.x", - "@turf/meta": "6.x", - "@types/geojson": "7946.0.8", - "rbush": "^3.0.1" + "cookie": "0.7.2", + "cookie-signature": "1.0.7", + "debug": "2.6.9", + "depd": "~2.0.0", + "on-headers": "~1.0.2", + "parseurl": "~1.3.3", + "safe-buffer": "5.2.1", + "uid-safe": "~2.1.5" + }, + "engines": { + "node": ">= 0.8.0" } }, - "node_modules/geojson-stream": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/geojson-stream/-/geojson-stream-0.1.0.tgz", - "integrity": "sha512-svSg5fFXPaTiqzEBGXScA+nISaeC9rLvku2PH+wM5LToATUw2bLIrvls43ymnT9Xnp51nBPVyK9m4Af40KpJ7w==", - "dependencies": { - "JSONStream": "^1.0.0", - "through": "^2.3.4" + "node_modules/express-session/node_modules/cookie": { + "version": "0.7.2", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.7.2.tgz", + "integrity": "sha512-yki5XnKuf750l50uGTllt6kKILY4nQ1eNIQatoXEByZ5dWgnKqbnqmTrBE5B4N7lrMJKQ2ytWMiTO2o0v6Ew/w==", + "license": "MIT", + "engines": { + "node": ">= 0.6" } }, - "node_modules/geojson-validation": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/geojson-validation/-/geojson-validation-1.0.2.tgz", - "integrity": "sha512-K5jrJ4wFvORn2pRKeg181LL0QPYuEKn2KHPvfH1m2QtFlAXFLKdseqt0XwBM3ELOY7kNM1fglRQ6ZwUQZ5S00A==", - "bin": { - "gjv": "bin/gjv" - } + "node_modules/express-session/node_modules/cookie-signature": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.7.tgz", + "integrity": "sha512-NXdYc3dLr47pBkpUCHtKSwIOQXLVn8dZEuywboCOJY/osA0wFSLlSawr3KN8qXJEyX66FcONTH8EIlVuK0yyFA==", + "license": "MIT" }, - "node_modules/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, - "engines": { - "node": "6.* || 8.* || >= 10.*" + "node_modules/express-session/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dependencies": { + "ms": "2.0.0" } }, - "node_modules/get-func-name": { + "node_modules/express-session/node_modules/ms": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/get-func-name/-/get-func-name-2.0.0.tgz", - "integrity": "sha1-6td0q+5y4gQJQzoGY2YCPdaIekE=", - "dev": true, - "engines": { - "node": "*" - } + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" }, - "node_modules/get-intrinsic": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.1.tgz", - "integrity": "sha512-kWZrnVM42QCiEA2Ig1bG8zjoIMOgxWwYCEeNdwY6Tv/cOSeGpcoX4pXHfKUxNKVoArnrEr2e9srnAxxGIraS9Q==", + "node_modules/express/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "license": "MIT", "dependencies": { - "function-bind": "^1.1.1", - "has": "^1.0.3", - "has-symbols": "^1.0.1" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "ms": "2.0.0" } }, - "node_modules/get-stdin": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-6.0.0.tgz", - "integrity": "sha512-jp4tHawyV7+fkkSKyvjuLZswblUtz+SQKzSWnBbii16BuZksJlU1wuBYXY75r+duh/llF1ur6oNwi+2ZzjKZ7g==", - "dev": true, + "node_modules/express/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "license": "MIT" + }, + "node_modules/extend": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", + "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==", + "dev": true + }, + "node_modules/external-editor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz", + "integrity": "sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==", + "optional": true, + "dependencies": { + "chardet": "^0.7.0", + "iconv-lite": "^0.4.24", + "tmp": "^0.0.33" + }, "engines": { "node": ">=4" } }, - "node_modules/get-symbol-description": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.0.tgz", - "integrity": "sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==", - "dev": true, + "node_modules/external-editor/node_modules/iconv-lite": { + "version": "0.4.24", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", + "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", + "optional": true, "dependencies": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.1.1" + "safer-buffer": ">= 2.1.2 < 3" }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=0.10.0" } }, - "node_modules/getpass": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", - "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=", - "dev": true, - "dependencies": { - "assert-plus": "^1.0.0" + "node_modules/extsprintf": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", + "integrity": "sha512-11Ndz7Nv+mvAC1j0ktTa7fAb0vLyGGX+rMHNBYQviQDGU0Hw7lhctJANqbPhu9nV9/izT/IntTgZ7Im/9LJs9g==", + "engines": [ + "node >=0.6.0" + ] + }, + "node_modules/eyes": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/eyes/-/eyes-0.1.8.tgz", + "integrity": "sha512-GipyPsXO1anza0AOZdy69Im7hGFCNB7Y/NGjDlZGJ3GJJLtwNSb2vrzYrTYJRrRloVx7pl+bhUaTB8yiccPvFQ==", + "engines": { + "node": "> 0.1.90" } }, - "node_modules/github-from-package": { - "version": "0.0.0", - "resolved": "https://registry.npmjs.org/github-from-package/-/github-from-package-0.0.0.tgz", - "integrity": "sha512-SyHy3T1v2NUXn29OsWdxmK6RwHD+vkj3v8en8AOBZ1wBQ/hCAQ5bAQTD02kW4W9tUp/3Qh6J8r9EvntiyCmOOw==" + "node_modules/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 }, - "node_modules/glob": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.0.tgz", - "integrity": "sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==", + "node_modules/fast-diff": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/fast-diff/-/fast-diff-1.3.0.tgz", + "integrity": "sha512-VxPP4NqbUjj6MaAOafWeUn2cXWLcCtljklUtZf0Ind4XQ+QPtmA0b18zZy0jIQx+ExRVCR/ZQpBmik5lXshNsw==", + "dev": true + }, + "node_modules/fast-fifo": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/fast-fifo/-/fast-fifo-1.3.2.tgz", + "integrity": "sha512-/d9sfos4yxzpwkDkuN7k2SqFKtYNmCTzgfEpz82x34IM9/zc8KGxQoXg1liNC/izpRM/MBdt44Nmx41ZWqk+FQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/fast-glob": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.2.tgz", + "integrity": "sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==", + "dev": true, "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" + "@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" }, "engines": { - "node": "*" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" + "node": ">=8.6.0" } }, - "node_modules/glob-parent": { + "node_modules/fast-glob/node_modules/glob-parent": { "version": "5.1.2", "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", @@ -4970,574 +5524,569 @@ "node": ">= 6" } }, - "node_modules/globals": { - "version": "13.23.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.23.0.tgz", - "integrity": "sha512-XAmF0RjlrjY23MA51q3HltdlGxUpXPvg0GioKiD9X6HD28iMjo2dKC8Vqwm7lne4GNr78+RHTfliktR6ZH09wA==", - "dev": true, - "dependencies": { - "type-fest": "^0.20.2" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } + "node_modules/fast-json-stable-stringify": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", + "dev": true }, - "node_modules/globals/node_modules/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, - "engines": { - "node": ">=10" + "node_modules/fast-levenshtein": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", + "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", + "dev": true + }, + "node_modules/fast-safe-stringify": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/fast-safe-stringify/-/fast-safe-stringify-2.1.1.tgz", + "integrity": "sha512-W+KJc2dmILlPplD/H4K9l9LcAHAfPtP6BY84uVLXQ6Evcz9Lcg33Y2z1IVblT6xdY54PXYVHEv+0Wpq8Io6zkA==" + }, + "node_modules/fast-xml-parser": { + "version": "4.2.5", + "resolved": "https://registry.npmjs.org/fast-xml-parser/-/fast-xml-parser-4.2.5.tgz", + "integrity": "sha512-B9/wizE4WngqQftFPmdaMYlXoJlJOYxGQOanC77fq9k8+Z0v5dDSVh+3glErdIROP//s/jgb7ZuxKfB8nVyo0g==", + "funding": [ + { + "type": "paypal", + "url": "https://paypal.me/naturalintelligence" + }, + { + "type": "github", + "url": "https://github.com/sponsors/NaturalIntelligence" + } + ], + "optional": true, + "dependencies": { + "strnum": "^1.0.5" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "bin": { + "fxparser": "src/cli/cli.js" } }, - "node_modules/globby": { - "version": "13.2.2", - "resolved": "https://registry.npmjs.org/globby/-/globby-13.2.2.tgz", - "integrity": "sha512-Y1zNGV+pzQdh7H39l9zgB4PJqjRNqydvdYCDG4HFXM4XuvSaQQlEc91IU1yALL8gUTDomgBAfz3XJdmUS+oo0w==", + "node_modules/fastq": { + "version": "1.17.1", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.17.1.tgz", + "integrity": "sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w==", "dev": true, "dependencies": { - "dir-glob": "^3.0.1", - "fast-glob": "^3.3.0", - "ignore": "^5.2.4", - "merge2": "^1.4.1", - "slash": "^4.0.0" + "reusify": "^1.0.4" + } + }, + "node_modules/figures": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz", + "integrity": "sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==", + "optional": true, + "dependencies": { + "escape-string-regexp": "^1.0.5" }, "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + "node": ">=8" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/gm": { - "version": "1.23.1", - "resolved": "https://registry.npmjs.org/gm/-/gm-1.23.1.tgz", - "integrity": "sha1-Lt7rlYCE0PjqeYjl2ZWxx9/BR3c=", - "dependencies": { - "array-parallel": "~0.1.3", - "array-series": "~0.1.5", - "cross-spawn": "^4.0.0", - "debug": "^3.1.0" - }, + "node_modules/figures/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "optional": true, "engines": { - "node": ">= 0.10.0" + "node": ">=0.8.0" } }, - "node_modules/gm/node_modules/debug": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "node_modules/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, "dependencies": { - "ms": "^2.1.1" + "flat-cache": "^3.0.4" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" } }, - "node_modules/gm/node_modules/ms": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", - "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==" - }, - "node_modules/graceful-fs": { - "version": "4.2.10", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", - "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==" - }, - "node_modules/graphemer": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/graphemer/-/graphemer-1.4.0.tgz", - "integrity": "sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==", - "dev": true - }, - "node_modules/growl": { - "version": "1.10.5", - "resolved": "https://registry.npmjs.org/growl/-/growl-1.10.5.tgz", - "integrity": "sha512-qBr4OuELkhPenW6goKVXiv47US3clb3/IbuWF9KNKEijAy9oeHxU9IgzjvJhHkUzhaj7rOUD7+YGWqUjLp5oSA==", - "dev": true, + "node_modules/file-type": { + "version": "16.5.4", + "resolved": "https://registry.npmjs.org/file-type/-/file-type-16.5.4.tgz", + "integrity": "sha512-/yFHK0aGjFEgDJjEKP0pWCplsPFPhwyfwevf/pVxiN0tmE4L9LmwWxWukdJSHdoCli4VgQLehjJtwQBnqmsKcw==", + "dependencies": { + "readable-web-to-node-stream": "^3.0.0", + "strtok3": "^6.2.4", + "token-types": "^4.1.1" + }, "engines": { - "node": ">=4.x" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sindresorhus/file-type?sponsor=1" } }, - "node_modules/har-schema": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz", - "integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=", + "node_modules/file-uri-to-path": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz", + "integrity": "sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==", + "optional": true + }, + "node_modules/fill-keys": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/fill-keys/-/fill-keys-1.0.2.tgz", + "integrity": "sha512-tcgI872xXjwFF4xgQmLxi76GnwJG3g/3isB1l4/G5Z4zrbddGpBjqZCO9oEAcB5wX0Hj/5iQB3toxfO7in1hHA==", "dev": true, + "dependencies": { + "is-object": "~1.0.1", + "merge-descriptors": "~1.0.0" + }, "engines": { - "node": ">=4" + "node": ">=0.10.0" } }, - "node_modules/har-validator": { - "version": "5.1.5", - "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.5.tgz", - "integrity": "sha512-nmT2T0lljbxdQZfspsno9hgrG3Uir6Ks5afism62poxqBM6sDnMEuPmzTq8XN0OEwqKLLdh1jQI3qyE66Nzb3w==", - "deprecated": "this library is no longer supported", + "node_modules/fill-range": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", + "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", "dev": true, "dependencies": { - "ajv": "^6.12.3", - "har-schema": "^2.0.0" + "to-regex-range": "^5.0.1" }, "engines": { - "node": ">=6" + "node": ">=8" } }, - "node_modules/has": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", - "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", + "node_modules/finalhandler": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.3.1.tgz", + "integrity": "sha512-6BN9trH7bp3qvnrRyzsBz+g3lZxTNZTbVO2EV1CS0WIcDbawYVdYvGflME/9QP0h0pYlCDBCTjYa9nZzMDpyxQ==", + "license": "MIT", "dependencies": { - "function-bind": "^1.1.1" + "debug": "2.6.9", + "encodeurl": "~2.0.0", + "escape-html": "~1.0.3", + "on-finished": "2.4.1", + "parseurl": "~1.3.3", + "statuses": "2.0.1", + "unpipe": "~1.0.0" }, "engines": { - "node": ">= 0.4.0" + "node": ">= 0.8" } }, - "node_modules/has-bigints": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.1.tgz", - "integrity": "sha512-LSBS2LjbNBTf6287JEbEzvJgftkF5qFkmCo9hDRpAzKhUOlJ+hx8dd4USs00SgsUNwc4617J9ki5YtEClM2ffA==", - "dev": true, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node_modules/finalhandler/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "license": "MIT", + "dependencies": { + "ms": "2.0.0" } }, - "node_modules/has-color": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/has-color/-/has-color-0.1.7.tgz", - "integrity": "sha1-ZxRKUmDDT8PMpnfQQdr1L+e3iy8=", - "engines": { - "node": ">=0.10.0" - } + "node_modules/finalhandler/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "license": "MIT" }, - "node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "devOptional": true, + "node_modules/find-cache-dir": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-3.3.2.tgz", + "integrity": "sha512-wXZV5emFEjrridIgED11OoUKLxiYjAcqot/NJdAkOhlJ+vGzwhOAfcG5OX1jP+S0PcjEn8bdMJv+g2jwQ3Onig==", + "dev": true, + "license": "MIT", + "dependencies": { + "commondir": "^1.0.1", + "make-dir": "^3.0.2", + "pkg-dir": "^4.1.0" + }, "engines": { "node": ">=8" - } - }, - "node_modules/has-symbols": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", - "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", - "engines": { - "node": ">= 0.4" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "url": "https://github.com/avajs/find-cache-dir?sponsor=1" } }, - "node_modules/has-tostringtag": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz", - "integrity": "sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==", + "node_modules/find-up": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "dev": true, "dependencies": { - "has-symbols": "^1.0.2" + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" }, "engines": { - "node": ">= 0.4" + "node": ">=10" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/hash-base": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.1.0.tgz", - "integrity": "sha512-1nmYp/rhMDiE7AYkDw+lLwlAzz0AntGIe51F3RfFfEqyQ3feY2eI/NcwC6umIQVOASPMsWJLJScWKSSvzL9IVA==", + "node_modules/flat": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/flat/-/flat-5.0.2.tgz", + "integrity": "sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ==", + "dev": true, + "bin": { + "flat": "cli.js" + } + }, + "node_modules/flat-cache": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.2.0.tgz", + "integrity": "sha512-CYcENa+FtcUKLmhhqyctpclsq7QF38pKjZHsGNiSQF5r4FtoKDWabFDl3hzaEQMvT1LHEysw5twgLvpYYb4vbw==", + "dev": true, "dependencies": { - "inherits": "^2.0.4", - "readable-stream": "^3.6.0", - "safe-buffer": "^5.2.0" + "flatted": "^3.2.9", + "keyv": "^4.5.3", + "rimraf": "^3.0.2" }, "engines": { - "node": ">=4" + "node": "^10.12.0 || >=12.0.0" } }, - "node_modules/hash-base/node_modules/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==", + "node_modules/flat-cache/node_modules/rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "deprecated": "Rimraf versions prior to v4 are no longer supported", + "dev": true, "dependencies": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" + "glob": "^7.1.3" }, - "engines": { - "node": ">= 6" + "bin": { + "rimraf": "bin.js" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/hash-base/node_modules/string_decoder": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", - "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", - "dependencies": { - "safe-buffer": "~5.2.0" + "node_modules/flatted": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.3.1.tgz", + "integrity": "sha512-X8cqMLLie7KsNUDSdzeN8FYK9rEt4Dt67OsG/DNGnYTSDBG4uFAJFBnUeiV+zCVAvwFy56IjM9sH51jVaEhNxw==", + "dev": true + }, + "node_modules/follow-redirects": { + "version": "1.15.9", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.9.tgz", + "integrity": "sha512-gew4GsXizNgdoRyqmyfMHyAmXsZDk6mHkSxZFCzW9gwlbtOW44CDtYavM+y+72qD/Vq2l550kMF52DT8fOLJqQ==", + "dev": true, + "funding": [ + { + "type": "individual", + "url": "https://github.com/sponsors/RubenVerborgh" + } + ], + "license": "MIT", + "engines": { + "node": ">=4.0" + }, + "peerDependenciesMeta": { + "debug": { + "optional": true + } } }, - "node_modules/hash.js": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.7.tgz", - "integrity": "sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==", + "node_modules/for-each": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.3.tgz", + "integrity": "sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==", + "dev": true, "dependencies": { - "inherits": "^2.0.3", - "minimalistic-assert": "^1.0.1" + "is-callable": "^1.1.3" } }, - "node_modules/hasha": { + "node_modules/foreachasync": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/hasha/-/hasha-3.0.0.tgz", - "integrity": "sha1-UqMvq4Vp1BymmmH/GiFPjrfIvTk=", + "resolved": "https://registry.npmjs.org/foreachasync/-/foreachasync-3.0.0.tgz", + "integrity": "sha512-J+ler7Ta54FwwNcx6wQRDhTIbNeyDcARMkOcguEqnEdtm0jKvN3Li3PDAb2Du3ubJYEWfYL83XMROXdsXAXycw==" + }, + "node_modules/foreground-child": { + "version": "1.5.6", + "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-1.5.6.tgz", + "integrity": "sha512-3TOY+4TKV0Ml83PXJQY+JFQaHNV38lzQDIzzXYg1kWdBLenGgoZhAs0CKgzI31vi2pWEpQMq/Yi4bpKwCPkw7g==", "dev": true, "dependencies": { - "is-stream": "^1.0.1" - }, - "engines": { - "node": ">=4" + "cross-spawn": "^4", + "signal-exit": "^3.0.0" } }, - "node_modules/he": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz", - "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==", + "node_modules/foreground-child/node_modules/cross-spawn": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-4.0.2.tgz", + "integrity": "sha512-yAXz/pA1tD8Gtg2S98Ekf/sewp3Lcp3YoFKJ4Hkp5h5yLWnKVTDU0kwjKJ8NDCYcfTLfyGkzTikst+jWypT1iA==", "dev": true, - "bin": { - "he": "bin/he" + "dependencies": { + "lru-cache": "^4.0.1", + "which": "^1.2.9" } }, - "node_modules/hexoid": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/hexoid/-/hexoid-1.0.0.tgz", - "integrity": "sha512-QFLV0taWQOZtvIRIAdBChesmogZrtuXvVWsFHZTk2SU+anspqZ2vMnoLg7IE1+Uk16N19APic1BuF8bC8c2m5g==", - "engines": { - "node": ">=8" + "node_modules/foreground-child/node_modules/lru-cache": { + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz", + "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==", + "dev": true, + "dependencies": { + "pseudomap": "^1.0.2", + "yallist": "^2.1.2" } }, - "node_modules/hmac-drbg": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz", - "integrity": "sha1-0nRXAQJabHdabFRXk+1QL8DGSaE=", + "node_modules/foreground-child/node_modules/which": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "dev": true, "dependencies": { - "hash.js": "^1.0.3", - "minimalistic-assert": "^1.0.0", - "minimalistic-crypto-utils": "^1.0.1" + "isexe": "^2.0.0" + }, + "bin": { + "which": "bin/which" } }, - "node_modules/hooks-fixed": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/hooks-fixed/-/hooks-fixed-2.0.2.tgz", - "integrity": "sha512-YurCM4gQSetcrhwEtpQHhQ4M7Zo7poNGqY4kQGeBS6eZtOcT3tnNs01ThFa0jYBByAiYt1MjMjP/YApG0EnAvQ==", + "node_modules/forever-agent": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", + "integrity": "sha512-j0KLYPhm6zeac4lz3oJ3o65qvgQCcPubiyotZrXqEaG4hNagNYO8qdlUrX5vwqv9ohqeT/Z3j6+yW067yWWdUw==", + "dev": true, "engines": { - "node": ">=0.4.0" + "node": "*" } }, - "node_modules/hosted-git-info": { - "version": "2.8.9", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz", - "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==", - "dev": true - }, - "node_modules/html-escaper": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", - "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", - "dev": true - }, - "node_modules/http-errors": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.8.1.tgz", - "integrity": "sha512-Kpk9Sm7NmI+RHhnj6OIWDI1d6fIoFAtFt9RLaTMRlg/8w49juAStsrBgp0Dp4OdxdVbRIeKhtCUvoi/RuAhO4g==", + "node_modules/form-data": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz", + "integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==", "dependencies": { - "depd": "~1.1.2", - "inherits": "2.0.4", - "setprototypeof": "1.2.0", - "statuses": ">= 1.5.0 < 2", - "toidentifier": "1.0.1" + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "mime-types": "^2.1.12" }, "engines": { - "node": ">= 0.6" + "node": ">= 6" } }, - "node_modules/http-signature": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", - "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=", - "dev": true, + "node_modules/formidable": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/formidable/-/formidable-2.1.2.tgz", + "integrity": "sha512-CM3GuJ57US06mlpQ47YcunuUZ9jpm8Vx+P2CGt2j7HpgkKZO/DJYQ0Bobim8G6PFQmK5lOqOOdUXboU+h73A4g==", "dependencies": { - "assert-plus": "^1.0.0", - "jsprim": "^1.2.2", - "sshpk": "^1.7.0" + "dezalgo": "^1.0.4", + "hexoid": "^1.0.0", + "once": "^1.4.0", + "qs": "^6.11.0" }, - "engines": { - "node": ">=0.8", - "npm": ">=1.3.7" + "funding": { + "url": "https://ko-fi.com/tunnckoCore/commissions" } }, - "node_modules/https-proxy-agent": { - "version": "7.0.2", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.2.tgz", - "integrity": "sha512-NmLNjm6ucYwtcUmL7JQC1ZQ57LmHP4lT15FQ8D61nak1rO6DH+fz5qNK2Ap5UN4ZapYICE3/0KodcLYSPsPbaA==", - "dev": true, - "dependencies": { - "agent-base": "^7.0.2", - "debug": "4" - }, + "node_modules/forwarded": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz", + "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==", "engines": { - "node": ">= 14" + "node": ">= 0.6" } }, - "node_modules/https-proxy-agent/node_modules/debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", - "dev": true, - "dependencies": { - "ms": "2.1.2" - }, + "node_modules/fresh": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", + "integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==", + "license": "MIT", "engines": { - "node": ">=6.0" - }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } + "node": ">= 0.6" } }, - "node_modules/https-proxy-agent/node_modules/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 + "node_modules/from": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/from/-/from-0.1.7.tgz", + "integrity": "sha512-twe20eF1OxVxp/ML/kq2p1uc6KvFK/+vs8WjEbeKmV2He22MKm7YF2ANIt+EOqhJ5L3K/SuuPhk0hWQDjOM23g==" }, - "node_modules/iconv-lite": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.5.2.tgz", - "integrity": "sha512-kERHXvpSaB4aU3eANwidg79K8FlrN77m8G9V+0vOR3HYaRifrlwMEpT7ZBJqLSEIHnEgJTHcWK82wwLwwKwtag==", - "dev": true, + "node_modules/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==" + }, + "node_modules/fs-extra": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-4.0.3.tgz", + "integrity": "sha512-q6rbdDd1o2mAnQreO7YADIxf/Whx4AHBiRf6d+/cVT8h44ss+lHgxf1FemcqDnQt9X3ct4McHr+JMGlYSsK7Cg==", "dependencies": { - "safer-buffer": ">= 2.1.2 < 3" - }, - "engines": { - "node": ">=0.10.0" + "graceful-fs": "^4.1.2", + "jsonfile": "^4.0.0", + "universalify": "^0.1.0" } }, - "node_modules/ieee754": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", - "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] + "node_modules/fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==" }, - "node_modules/ignore": { - "version": "5.2.4", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.4.tgz", - "integrity": "sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ==", + "node_modules/fsevents": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", "dev": true, + "hasInstallScript": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], "engines": { - "node": ">= 4" + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" } }, - "node_modules/image-size": { - "version": "0.8.3", - "resolved": "https://registry.npmjs.org/image-size/-/image-size-0.8.3.tgz", - "integrity": "sha512-SMtq1AJ+aqHB45c3FsB4ERK0UCiA2d3H1uq8s+8T0Pf8A3W4teyBQyaFaktH6xvZqh+npwlKU7i4fJo0r7TYTg==", - "dependencies": { - "queue": "6.0.1" - }, - "bin": { - "image-size": "bin/image-size.js" - }, - "engines": { - "node": ">=6.9.0" + "node_modules/function-bind": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", + "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/immediate": { - "version": "3.0.6", - "resolved": "https://registry.npmjs.org/immediate/-/immediate-3.0.6.tgz", - "integrity": "sha1-nbHb0Pr43m++D13V5Wu2BigN5ps=", - "dev": true - }, - "node_modules/import-fresh": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", - "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", + "node_modules/function.prototype.name": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.6.tgz", + "integrity": "sha512-Z5kx79swU5P27WEayXM1tBi5Ze/lbIyiNgU3qyXUOf9b2rgXYyF9Dy9Cx+IQv/Lc8WCG6L82zwUPpSS9hGehIg==", "dev": true, "dependencies": { - "parent-module": "^1.0.0", - "resolve-from": "^4.0.0" + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1", + "functions-have-names": "^1.2.3" }, "engines": { - "node": ">=6" + "node": ">= 0.4" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/import-fresh/node_modules/resolve-from": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", - "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", + "node_modules/functions-have-names": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz", + "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==", "dev": true, - "engines": { - "node": ">=4" + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/imurmurhash": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", - "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", - "dev": true, + "node_modules/geojson": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/geojson/-/geojson-0.5.0.tgz", + "integrity": "sha512-/Bx5lEn+qRF4TfQ5aLu6NH+UKtvIv7Lhc487y/c8BdludrCTpiWf9wyI0RTyqg49MFefIAvFDuEi5Dfd/zgNxQ==", "engines": { - "node": ">=0.8.19" + "node": ">= 0.10" } }, - "node_modules/inflight": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", + "node_modules/geojson-rbush": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/geojson-rbush/-/geojson-rbush-3.2.0.tgz", + "integrity": "sha512-oVltQTXolxvsz1sZnutlSuLDEcQAKYC/uXt9zDzJJ6bu0W+baTI8LZBaTup5afzibEH4N3jlq2p+a152wlBJ7w==", "dependencies": { - "once": "^1.3.0", - "wrappy": "1" + "@turf/bbox": "*", + "@turf/helpers": "6.x", + "@turf/meta": "6.x", + "@types/geojson": "7946.0.8", + "rbush": "^3.0.1" } }, - "node_modules/inherit": { - "version": "2.2.7", - "resolved": "https://registry.npmjs.org/inherit/-/inherit-2.2.7.tgz", - "integrity": "sha512-dxJmC1j0Q32NFAjvbd6g3lXYLZ49HgzotgbSMwMkoiTXGhC9412Oc24g7A7M9cPPkw/vDsF2cSII+2zJwocUtQ==" + "node_modules/geojson-rbush/node_modules/@types/geojson": { + "version": "7946.0.8", + "resolved": "https://registry.npmjs.org/@types/geojson/-/geojson-7946.0.8.tgz", + "integrity": "sha512-1rkryxURpr6aWP7R786/UQOkJ3PcpQiWkAXBmdWc7ryFWqN6a4xfK7BtjXvFBKO9LjQ+MWQSWxYeZX1OApnArA==" }, - "node_modules/inherits": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" + "node_modules/geojson-stream": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/geojson-stream/-/geojson-stream-0.1.0.tgz", + "integrity": "sha512-svSg5fFXPaTiqzEBGXScA+nISaeC9rLvku2PH+wM5LToATUw2bLIrvls43ymnT9Xnp51nBPVyK9m4Af40KpJ7w==", + "dependencies": { + "JSONStream": "^1.0.0", + "through": "^2.3.4" + } }, - "node_modules/ini": { - "version": "1.3.8", - "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", - "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==" - }, - "node_modules/inquirer": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-8.0.0.tgz", - "integrity": "sha512-ON8pEJPPCdyjxj+cxsYRe6XfCJepTxANdNnTebsTuQgXpRyZRRT9t4dJwjRubgmvn20CLSEnozRUayXyM9VTXA==", - "optional": true, - "dependencies": { - "ansi-escapes": "^4.2.1", - "chalk": "^4.1.0", - "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", - "run-async": "^2.4.0", - "rxjs": "^6.6.6", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0", - "through": "^2.3.6" - }, - "engines": { - "node": ">=8.0.0" + "node_modules/geojson-validation": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/geojson-validation/-/geojson-validation-1.0.2.tgz", + "integrity": "sha512-K5jrJ4wFvORn2pRKeg181LL0QPYuEKn2KHPvfH1m2QtFlAXFLKdseqt0XwBM3ELOY7kNM1fglRQ6ZwUQZ5S00A==", + "bin": { + "gjv": "bin/gjv" } }, - "node_modules/inquirer/node_modules/ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "optional": true, + "node_modules/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, "engines": { - "node": ">=8" + "node": "6.* || 8.* || >= 10.*" } }, - "node_modules/inquirer/node_modules/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==", - "optional": true, + "node_modules/get-func-name": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/get-func-name/-/get-func-name-2.0.2.tgz", + "integrity": "sha512-8vXOvuE167CtIc3OyItco7N/dpRtBbYOsPsXCz7X/PMnlGjYjSGuZJgM1Y7mmew7BKf9BqvLX2tnOVy1BBUsxQ==", + "dev": true, "engines": { - "node": ">=8" + "node": "*" } }, - "node_modules/inquirer/node_modules/string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "optional": true, - "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" + "node_modules/get-intrinsic": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.3.0.tgz", + "integrity": "sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ==", + "license": "MIT", + "dependencies": { + "call-bind-apply-helpers": "^1.0.2", + "es-define-property": "^1.0.1", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.1.1", + "function-bind": "^1.1.2", + "get-proto": "^1.0.1", + "gopd": "^1.2.0", + "has-symbols": "^1.1.0", + "hasown": "^2.0.2", + "math-intrinsics": "^1.1.0" }, "engines": { - "node": ">=8" - } - }, - "node_modules/inquirer/node_modules/strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "optional": true, - "dependencies": { - "ansi-regex": "^5.0.1" + "node": ">= 0.4" }, - "engines": { - "node": ">=8" + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/internal-slot": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.3.tgz", - "integrity": "sha512-O0DB1JC/sPyZl7cIo78n5dR7eUSwwpYPiXRhTzNxZVAMUuB8vlnRFyLxdrVToks6XPLVnFfbzaVd5WLjhgg+vA==", - "dev": true, + "node_modules/get-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/get-proto/-/get-proto-1.0.1.tgz", + "integrity": "sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==", + "license": "MIT", "dependencies": { - "get-intrinsic": "^1.1.0", - "has": "^1.0.3", - "side-channel": "^1.0.4" + "dunder-proto": "^1.0.1", + "es-object-atoms": "^1.0.0" }, "engines": { "node": ">= 0.4" } }, - "node_modules/ip": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ip/-/ip-2.0.0.tgz", - "integrity": "sha512-WKa+XuLG1A1R0UWhl2+1XQSi+fZWMsYKffMZTTYsiZaUD8k2yDAj5atimTUD2TZkyCkNEeYE5NhFZmupOGtjYQ==", - "dev": true - }, - "node_modules/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==", + "node_modules/get-stdin": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-6.0.0.tgz", + "integrity": "sha512-jp4tHawyV7+fkkSKyvjuLZswblUtz+SQKzSWnBbii16BuZksJlU1wuBYXY75r+duh/llF1ur6oNwi+2ZzjKZ7g==", + "dev": true, "engines": { - "node": ">= 0.10" + "node": ">=4" } }, - "node_modules/is-arguments": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/is-arguments/-/is-arguments-1.1.1.tgz", - "integrity": "sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA==", + "node_modules/get-symbol-description": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.2.tgz", + "integrity": "sha512-g0QYk1dZBxGwk+Ngc+ltRH2IBp2f7zBkBMBJZCDerh6EhlhSR6+9irMCuT/09zD6qkarHUSn529sK/yL4S27mg==", "dev": true, "dependencies": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" + "call-bind": "^1.0.5", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.4" }, "engines": { "node": ">= 0.4" @@ -5546,177 +6095,130 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/is-arrayish": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", - "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=", - "dev": true - }, - "node_modules/is-bigint": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz", - "integrity": "sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==", + "node_modules/getpass": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", + "integrity": "sha512-0fzj9JxOLfJ+XGLhR8ze3unN0KZCgZwiSSDz168VERjK8Wl8kVSdcu2kspd4s4wtAa1y/qrVRiAA0WclVsu0ng==", "dev": true, "dependencies": { - "has-bigints": "^1.0.1" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "assert-plus": "^1.0.0" } }, - "node_modules/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, - "dependencies": { - "binary-extensions": "^2.0.0" - }, - "engines": { - "node": ">=8" - } + "node_modules/github-from-package": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/github-from-package/-/github-from-package-0.0.0.tgz", + "integrity": "sha512-SyHy3T1v2NUXn29OsWdxmK6RwHD+vkj3v8en8AOBZ1wBQ/hCAQ5bAQTD02kW4W9tUp/3Qh6J8r9EvntiyCmOOw==", + "optional": true }, - "node_modules/is-boolean-object": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz", - "integrity": "sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==", - "dev": true, + "node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "deprecated": "Glob versions prior to v9 are no longer supported", "dependencies": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-callable": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.4.tgz", - "integrity": "sha512-nsuwtxZfMX67Oryl9LCQ+upnC0Z0BgpwntpS89m1H/TLF0zNfzfLMV/9Wa/6MZsj0acpEjAO0KF1xT6ZdLl95w==", - "dev": true, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-core-module": { - "version": "2.8.1", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.8.1.tgz", - "integrity": "sha512-SdNCUs284hr40hFTFP6l0IfZ/RSrMXF3qgoRHd3/79unUTvrFO/JoXwkGm+5J/Oe3E/b5GsnG330uUNgRpu1PA==", - "dependencies": { - "has": "^1.0.3" + "node": "*" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/is-date-object": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz", - "integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==", + "node_modules/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, "dependencies": { - "has-tostringtag": "^1.0.0" + "is-glob": "^4.0.3" }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=10.13.0" } }, - "node_modules/is-expression": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/is-expression/-/is-expression-4.0.0.tgz", - "integrity": "sha512-zMIXX63sxzG3XrkHkrAPvm/OVZVSCPNkwMHU8oTX7/U3AL78I0QXCEICXUM13BIa8TYGZ68PiTKfQz3yaTNr4A==", + "node_modules/glob/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", "dependencies": { - "acorn": "^7.1.1", - "object-assign": "^4.1.1" - } - }, - "node_modules/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, - "engines": { - "node": ">=0.10.0" + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" } }, - "node_modules/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=", - "dev": true, + "node_modules/glob/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", "dependencies": { - "number-is-nan": "^1.0.0" + "brace-expansion": "^1.1.7" }, "engines": { - "node": ">=0.10.0" + "node": "*" } }, - "node_modules/is-generator-function": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/is-generator-function/-/is-generator-function-1.0.10.tgz", - "integrity": "sha512-jsEjy9l3yiXEQ+PsXdmBwEPcOxaXWLspKdplFUVI9vq1iZgIekeC0L167qeu86czQaxed3q/Uzuw0swL0irL8A==", + "node_modules/globals": { + "version": "13.24.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.24.0.tgz", + "integrity": "sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==", "dev": true, "dependencies": { - "has-tostringtag": "^1.0.0" + "type-fest": "^0.20.2" }, "engines": { - "node": ">= 0.4" + "node": ">=8" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/is-glob": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", - "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "node_modules/globalthis": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.4.tgz", + "integrity": "sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ==", "dev": true, "dependencies": { - "is-extglob": "^2.1.1" + "define-properties": "^1.2.1", + "gopd": "^1.0.1" }, "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-map": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/is-map/-/is-map-2.0.2.tgz", - "integrity": "sha512-cOZFQQozTha1f4MxLFzlgKYPTyj26picdZTx82hbc/Xf4K/tZOOXSCkMvU4pKioRXGDLJRn0GM7Upe7kR721yg==", - "dev": true, + "node": ">= 0.4" + }, "funding": { "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/is-nan": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/is-nan/-/is-nan-1.3.2.tgz", - "integrity": "sha512-E+zBKpQ2t6MEo1VsonYmluk9NxGrbzpeeLC2xIViuO2EjU2xsXsBPwTr3Ykv9l08UYEVEdWeRZNouaZqF6RN0w==", + "node_modules/globby": { + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz", + "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==", "dev": true, + "license": "MIT", "dependencies": { - "call-bind": "^1.0.0", - "define-properties": "^1.1.3" + "array-union": "^2.1.0", + "dir-glob": "^3.0.1", + "fast-glob": "^3.2.9", + "ignore": "^5.2.0", + "merge2": "^1.4.1", + "slash": "^3.0.0" }, "engines": { - "node": ">= 0.4" + "node": ">=10" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/is-negative-zero": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.2.tgz", - "integrity": "sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==", - "dev": true, + "node_modules/gopd": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.2.0.tgz", + "integrity": "sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==", + "license": "MIT", "engines": { "node": ">= 0.4" }, @@ -5724,106 +6226,82 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/is-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "dev": true, + "node_modules/graceful-fs": { + "version": "4.2.11", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", + "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==" + }, + "node_modules/graphemer": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/graphemer/-/graphemer-1.4.0.tgz", + "integrity": "sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==", + "dev": true + }, + "node_modules/har-schema": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz", + "integrity": "sha512-Oqluz6zhGX8cyRaTQlFMPw80bSJVG2x/cFb8ZPhUILGgHka9SsokCCOQgpveePerqidZOrT14ipqfJb7ILcW5Q==", + "dev": true, "engines": { - "node": ">=0.12.0" + "node": ">=4" } }, - "node_modules/is-number-object": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.7.tgz", - "integrity": "sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==", + "node_modules/har-validator": { + "version": "5.1.5", + "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.5.tgz", + "integrity": "sha512-nmT2T0lljbxdQZfspsno9hgrG3Uir6Ks5afism62poxqBM6sDnMEuPmzTq8XN0OEwqKLLdh1jQI3qyE66Nzb3w==", + "deprecated": "this library is no longer supported", "dev": true, "dependencies": { - "has-tostringtag": "^1.0.0" + "ajv": "^6.12.3", + "har-schema": "^2.0.0" }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=6" } }, - "node_modules/is-object": { + "node_modules/has-bigints": { "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-object/-/is-object-1.0.2.tgz", - "integrity": "sha512-2rRIahhZr2UWb45fIOuvZGpFtz0TyOZLf32KxBbSoUCeZR495zCKlWUKKUByk3geS2eAs7ZAABt0Y/Rx0GiQGA==", + "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz", + "integrity": "sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==", "dev": true, "funding": { "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/is-path-inside": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", - "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==", - "dev": true, + "node_modules/has-color": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/has-color/-/has-color-0.1.7.tgz", + "integrity": "sha512-kaNz5OTAYYmt646Hkqw50/qyxP2vFnTVu5AQ1Zmk22Kk5+4Qx6BpO8+u7IKsML5fOsFk0ZT0AcCJNYwcvaLBvw==", "engines": { - "node": ">=8" + "node": ">=0.10.0" } }, - "node_modules/is-promise": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-2.2.2.tgz", - "integrity": "sha512-+lP4/6lKUBfQjZ2pdxThZvLUAafmZb8OAxFb8XXtiQmS35INgr85hdOGoEs124ez1FCnZJt6jau/T+alh58QFQ==" - }, - "node_modules/is-regex": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz", - "integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==", - "dependencies": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" - }, + "node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "devOptional": true, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-set": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/is-set/-/is-set-2.0.2.tgz", - "integrity": "sha512-+2cnTEZeY5z/iXGbLhPrOAaK/Mau5k5eXq9j14CpRTftq0pAJu2MwVRSZhyZWBzx3o6X795Lz6Bpb6R0GKf37g==", - "dev": true, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=8" } }, - "node_modules/is-shared-array-buffer": { + "node_modules/has-property-descriptors": { "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz", - "integrity": "sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==", - "dev": true, + "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz", + "integrity": "sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==", "dependencies": { - "call-bind": "^1.0.2" + "es-define-property": "^1.0.0" }, "funding": { "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/is-stream": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", - "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-string": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz", - "integrity": "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==", + "node_modules/has-proto": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.3.tgz", + "integrity": "sha512-SJ1amZAJUiZS+PhsVLf5tGydlaVB8EdFpaSO4gmiUKUOxk8qzn5AIy4ZeJUmh22znIdk/uMAUT2pl3FxzVUH+Q==", "dev": true, - "dependencies": { - "has-tostringtag": "^1.0.0" - }, "engines": { "node": ">= 0.4" }, @@ -5831,14 +6309,11 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/is-symbol": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz", - "integrity": "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==", - "dev": true, - "dependencies": { - "has-symbols": "^1.0.2" - }, + "node_modules/has-symbols": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.1.0.tgz", + "integrity": "sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==", + "license": "MIT", "engines": { "node": ">= 0.4" }, @@ -5846,17 +6321,12 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/is-typed-array": { - "version": "1.1.8", - "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.8.tgz", - "integrity": "sha512-HqH41TNZq2fgtGT8WHVFVJhBVGuY3AnP3Q36K8JKXUxSxRgk/d+7NjmwG2vo2mYmXK8UYZKu0qH8bVP5gEisjA==", - "dev": true, + "node_modules/has-tostringtag": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.2.tgz", + "integrity": "sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==", "dependencies": { - "available-typed-arrays": "^1.0.5", - "call-bind": "^1.0.2", - "es-abstract": "^1.18.5", - "foreach": "^2.0.5", - "has-tostringtag": "^1.0.0" + "has-symbols": "^1.0.3" }, "engines": { "node": ">= 0.4" @@ -5865,909 +6335,793 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/is-typedarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", - "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=", - "dev": true - }, - "node_modules/is-weakmap": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-weakmap/-/is-weakmap-2.0.1.tgz", - "integrity": "sha512-NSBR4kH5oVj1Uwvv970ruUkCV7O1mzgVFO4/rev2cLRda9Tm9HrL70ZPut4rOHgY0FNrUu9BCbXA2sdQ+x0chA==", - "dev": true, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-weakref": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.2.tgz", - "integrity": "sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==", + "node_modules/hasha": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/hasha/-/hasha-3.0.0.tgz", + "integrity": "sha512-w0Kz8lJFBoyaurBiNrIvxPqr/gJ6fOfSkpAPOepN3oECqGJag37xPbOv57izi/KP8auHgNYxn5fXtAb+1LsJ6w==", "dev": true, "dependencies": { - "call-bind": "^1.0.2" + "is-stream": "^1.0.1" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "engines": { + "node": ">=4" } }, - "node_modules/is-weakset": { + "node_modules/hasown": { "version": "2.0.2", - "resolved": "https://registry.npmjs.org/is-weakset/-/is-weakset-2.0.2.tgz", - "integrity": "sha512-t2yVvttHkQktwnNNmBQ98AhENLdPUTDTE21uPqAQ0ARwQfGeQKRVS0NNurH7bTf7RrvcVn1OOge45CnBeHCSmg==", - "dev": true, + "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", + "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", "dependencies": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.1.1" + "function-bind": "^1.1.2" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "engines": { + "node": ">= 0.4" } }, - "node_modules/isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" - }, - "node_modules/isexe": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=" - }, - "node_modules/isstream": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", - "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=" - }, - "node_modules/istanbul-lib-coverage": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.5.tgz", - "integrity": "sha512-8aXznuEPCJvGnMSRft4udDRDtb1V3pkQkMMI5LI+6HuQz5oQ4J2UFn1H82raA3qJtyOLkkwVqICBQkjnGtn5mA==", + "node_modules/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, - "engines": { - "node": ">=6" + "bin": { + "he": "bin/he" } }, - "node_modules/istanbul-lib-hook": { - "version": "2.0.7", - "resolved": "https://registry.npmjs.org/istanbul-lib-hook/-/istanbul-lib-hook-2.0.7.tgz", - "integrity": "sha512-vrRztU9VRRFDyC+aklfLoeXyNdTfga2EI3udDGn4cZ6fpSXpHLV9X6CHvfoMCPtggg8zvDDmC4b9xfu0z6/llA==", - "dev": true, - "dependencies": { - "append-transform": "^1.0.0" - }, + "node_modules/hexoid": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/hexoid/-/hexoid-1.0.0.tgz", + "integrity": "sha512-QFLV0taWQOZtvIRIAdBChesmogZrtuXvVWsFHZTk2SU+anspqZ2vMnoLg7IE1+Uk16N19APic1BuF8bC8c2m5g==", "engines": { - "node": ">=6" + "node": ">=8" } }, - "node_modules/istanbul-lib-instrument": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-3.3.0.tgz", - "integrity": "sha512-5nnIN4vo5xQZHdXno/YDXJ0G+I3dAm4XgzfSVTPLQpj/zAV2dV6Juy0yaf10/zrJOJeHoN3fraFe+XRq2bFVZA==", - "dev": true, + "node_modules/hosted-git-info": { + "version": "2.8.9", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz", + "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==", + "dev": true + }, + "node_modules/html-escaper": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", + "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", + "dev": true + }, + "node_modules/http-errors": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", + "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==", + "license": "MIT", "dependencies": { - "@babel/generator": "^7.4.0", - "@babel/parser": "^7.4.3", - "@babel/template": "^7.4.0", - "@babel/traverse": "^7.4.3", - "@babel/types": "^7.4.0", - "istanbul-lib-coverage": "^2.0.5", - "semver": "^6.0.0" + "depd": "2.0.0", + "inherits": "2.0.4", + "setprototypeof": "1.2.0", + "statuses": "2.0.1", + "toidentifier": "1.0.1" }, "engines": { - "node": ">=6" - } - }, - "node_modules/istanbul-lib-instrument/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true, - "bin": { - "semver": "bin/semver.js" + "node": ">= 0.8" } }, - "node_modules/istanbul-lib-report": { - "version": "2.0.8", - "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-2.0.8.tgz", - "integrity": "sha512-fHBeG573EIihhAblwgxrSenp0Dby6tJMFR/HvlerBsrCTD5bkUuoNtn3gVh29ZCS824cGGBPn7Sg7cNk+2xUsQ==", + "node_modules/http-signature": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", + "integrity": "sha512-CAbnr6Rz4CYQkLYUtSNXxQPUH2gK8f3iWexVlsnMeD+GjlsQ0Xsy1cOX+mN3dtxYomRy21CiOzU8Uhw6OwncEQ==", "dev": true, "dependencies": { - "istanbul-lib-coverage": "^2.0.5", - "make-dir": "^2.1.0", - "supports-color": "^6.1.0" + "assert-plus": "^1.0.0", + "jsprim": "^1.2.2", + "sshpk": "^1.7.0" }, "engines": { - "node": ">=6" + "node": ">=0.8", + "npm": ">=1.3.7" } }, - "node_modules/istanbul-lib-report/node_modules/has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "node_modules/https-proxy-agent": { + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.6.tgz", + "integrity": "sha512-vK9P5/iUfdl95AI+JVyUuIcVtd4ofvtrOr3HNtM2yxC9bnMbEdp3x01OhQNnjb8IJYi38VlTE3mBXwcfvywuSw==", "dev": true, + "license": "MIT", + "dependencies": { + "agent-base": "^7.1.2", + "debug": "4" + }, "engines": { - "node": ">=4" + "node": ">= 14" } }, - "node_modules/istanbul-lib-report/node_modules/supports-color": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", - "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "node_modules/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==", "dev": true, + "license": "MIT", "dependencies": { - "has-flag": "^3.0.0" + "safer-buffer": ">= 2.1.2 < 3.0.0" }, "engines": { - "node": ">=6" + "node": ">=0.10.0" } }, - "node_modules/istanbul-lib-source-maps": { - "version": "3.0.6", - "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-3.0.6.tgz", - "integrity": "sha512-R47KzMtDJH6X4/YW9XTx+jrLnZnscW4VpNN+1PViSYTejLVPWv7oov+Duf8YQSPyVRUvueQqz1TcsC6mooZTXw==", + "node_modules/ieee754": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", + "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/ignore": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.1.tgz", + "integrity": "sha512-5Fytz/IraMjqpwfd34ke28PTVMjZjJG2MPn5t7OE4eUCUNf8BAa7b5WUS9/Qvr6mwOQS7Mk6vdsMno5he+T8Xw==", "dev": true, - "dependencies": { - "debug": "^4.1.1", - "istanbul-lib-coverage": "^2.0.5", - "make-dir": "^2.1.0", - "rimraf": "^2.6.3", - "source-map": "^0.6.1" - }, "engines": { - "node": ">=6" + "node": ">= 4" } }, - "node_modules/istanbul-lib-source-maps/node_modules/debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", - "dev": true, + "node_modules/image-size": { + "version": "0.8.3", + "resolved": "https://registry.npmjs.org/image-size/-/image-size-0.8.3.tgz", + "integrity": "sha512-SMtq1AJ+aqHB45c3FsB4ERK0UCiA2d3H1uq8s+8T0Pf8A3W4teyBQyaFaktH6xvZqh+npwlKU7i4fJo0r7TYTg==", "dependencies": { - "ms": "2.1.2" + "queue": "6.0.1" }, - "engines": { - "node": ">=6.0" + "bin": { + "image-size": "bin/image-size.js" }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } + "engines": { + "node": ">=6.9.0" } }, - "node_modules/istanbul-lib-source-maps/node_modules/ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "node_modules/immediate": { + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/immediate/-/immediate-3.0.6.tgz", + "integrity": "sha512-XXOFtyqDjNDAQxVfYxuF7g9Il/IbWmmlQg2MYKOH8ExIT1qg6xc4zyS3HaEEATgs1btfzxq15ciUiY7gjSXRGQ==", "dev": true }, - "node_modules/istanbul-lib-source-maps/node_modules/rimraf": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", - "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", + "node_modules/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, "dependencies": { - "glob": "^7.1.3" + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" }, - "bin": { - "rimraf": "bin.js" + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/istanbul-reports": { - "version": "2.2.7", - "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-2.2.7.tgz", - "integrity": "sha512-uu1F/L1o5Y6LzPVSVZXNOoD/KXpJue9aeLRd0sM9uMXfZvzomB0WxVamWb5ue8kA2vVWEmW7EG+A5n3f1kqHKg==", + "node_modules/imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", "dev": true, - "dependencies": { - "html-escaper": "^2.0.0" - }, "engines": { - "node": ">=6" + "node": ">=0.8.19" } }, - "node_modules/jackspeak": { - "version": "2.3.6", - "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-2.3.6.tgz", - "integrity": "sha512-N3yCS/NegsOBokc8GAdM8UcmfsKiSS8cipheD/nivzr700H+nsMOxJjQnvwOcRYVuFkdH0wGUvW2WbXGmrZGbQ==", + "node_modules/indent-string": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-5.0.0.tgz", + "integrity": "sha512-m6FAo/spmsW2Ab2fU35JTYwtOKa2yAwXSwgjSv1TJzh4Mh7mC3lzAOVLBprb72XsTrgkEIsl7YrFNAiDiRhIGg==", "dev": true, - "dependencies": { - "@isaacs/cliui": "^8.0.2" - }, "engines": { - "node": ">=14" + "node": ">=12" }, "funding": { - "url": "https://github.com/sponsors/isaacs" - }, - "optionalDependencies": { - "@pkgjs/parseargs": "^0.11.0" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/jdataview": { - "version": "2.4.6", - "resolved": "https://registry.npmjs.org/jdataview/-/jdataview-2.4.6.tgz", - "integrity": "sha1-Qapcdfl5TxFgWIPSm9qvCZizVSs=" + "node_modules/inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "deprecated": "This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.", + "dependencies": { + "once": "^1.3.0", + "wrappy": "1" + } }, - "node_modules/js-stringify": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/js-stringify/-/js-stringify-1.0.2.tgz", - "integrity": "sha512-rtS5ATOo2Q5k1G+DADISilDA6lv79zIiwFd6CcjuIxGKLFm5C+RLImRscVap9k55i+MOZwgliw+NejvkLuGD5g==" + "node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" }, - "node_modules/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 + "node_modules/ini": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", + "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==", + "optional": true }, - "node_modules/js-yaml": { - "version": "3.4.6", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.4.6.tgz", - "integrity": "sha1-a+GyP2JJ9T0pM3D9TRqqY84bTrA=", + "node_modules/inquirer": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-8.0.0.tgz", + "integrity": "sha512-ON8pEJPPCdyjxj+cxsYRe6XfCJepTxANdNnTebsTuQgXpRyZRRT9t4dJwjRubgmvn20CLSEnozRUayXyM9VTXA==", + "optional": true, "dependencies": { - "argparse": "^1.0.2", - "esprima": "^2.6.0", - "inherit": "^2.2.2" + "ansi-escapes": "^4.2.1", + "chalk": "^4.1.0", + "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", + "run-async": "^2.4.0", + "rxjs": "^6.6.6", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0", + "through": "^2.3.6" }, - "bin": { - "js-yaml": "bin/js-yaml.js" + "engines": { + "node": ">=8.0.0" } }, - "node_modules/jsbn": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", - "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=", - "dev": true - }, - "node_modules/jsesc": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", - "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", + "node_modules/internal-slot": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.7.tgz", + "integrity": "sha512-NGnrKwXzSms2qUUih/ILZ5JBqNTSa1+ZmP6flaIp6KmSElgE9qdndzS3cqjrDovwFdmwsGsLdeFgB6suw+1e9g==", "dev": true, - "bin": { - "jsesc": "bin/jsesc" + "dependencies": { + "es-errors": "^1.3.0", + "hasown": "^2.0.0", + "side-channel": "^1.0.4" }, "engines": { - "node": ">=4" + "node": ">= 0.4" } }, - "node_modules/json-buffer": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz", - "integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==", - "dev": true - }, - "node_modules/json-parse-better-errors": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz", - "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==", - "dev": true + "node_modules/ip-address": { + "version": "9.0.5", + "resolved": "https://registry.npmjs.org/ip-address/-/ip-address-9.0.5.tgz", + "integrity": "sha512-zHtQzGojZXTwZTHQqra+ETKd4Sn3vgi7uBmlPoXVWZqYvuKmtI0l/VZTjqGmJY9x88GGOaZ9+G9ES8hC4T4X8g==", + "dependencies": { + "jsbn": "1.1.0", + "sprintf-js": "^1.1.3" + }, + "engines": { + "node": ">= 12" + } }, - "node_modules/json-schema": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.4.0.tgz", - "integrity": "sha512-es94M3nTIfsEPisRafak+HDLfHXnKBhV3vU5eqPcS3flIWqcxJWgXHXiey3YrpaNsanY5ei1VoYEbOzijuq9BA==", - "dev": true + "node_modules/ip-address/node_modules/sprintf-js": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.1.3.tgz", + "integrity": "sha512-Oo+0REFV59/rz3gfJNKQiBlwfHaSESl1pcGyABQsnnIfWOFt6JNj5gCog2U6MLZ//IGYD+nA8nI+mTShREReaA==" }, - "node_modules/json-schema-ref-parser": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/json-schema-ref-parser/-/json-schema-ref-parser-6.1.0.tgz", - "integrity": "sha512-pXe9H1m6IgIpXmE5JSb8epilNTGsmTb2iPohAXpOdhqGFbQjNeHHsZxU+C8w6T81GZxSPFLeUoqDJmzxx5IGuw==", - "deprecated": "Please switch to @apidevtools/json-schema-ref-parser", - "dev": true, - "dependencies": { - "call-me-maybe": "^1.0.1", - "js-yaml": "^3.12.1", - "ono": "^4.0.11" + "node_modules/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==", + "engines": { + "node": ">= 0.10" } }, - "node_modules/json-schema-ref-parser/node_modules/esprima": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", - "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", + "node_modules/is-arguments": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-arguments/-/is-arguments-1.1.1.tgz", + "integrity": "sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA==", "dev": true, - "bin": { - "esparse": "bin/esparse.js", - "esvalidate": "bin/esvalidate.js" + "dependencies": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" }, "engines": { - "node": ">=4" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/json-schema-ref-parser/node_modules/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==", + "node_modules/is-array-buffer": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.4.tgz", + "integrity": "sha512-wcjaerHw0ydZwfhiKbXJWLDY8A7yV7KhjQOpb83hGgGfId/aQa4TOvwyzn2PuswW2gPCYEL/nEAiSVpdOj1lXw==", "dev": true, "dependencies": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" + "call-bind": "^1.0.2", + "get-intrinsic": "^1.2.1" }, - "bin": { - "js-yaml": "bin/js-yaml.js" + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/json-schema-traverse": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", - "dev": true - }, - "node_modules/json-stable-stringify-without-jsonify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", - "integrity": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=", - "dev": true - }, - "node_modules/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=", + "node_modules/is-arrayish": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==", "dev": true }, - "node_modules/json2csv": { - "version": "4.5.1", - "resolved": "https://registry.npmjs.org/json2csv/-/json2csv-4.5.1.tgz", - "integrity": "sha512-o90Xa1ziGk3i7AJEO79Jac4+7SEUk58/DxS5mDPW6GF7poX0y7Y0pm1FbWrkz9VzKE4MpUW9aKBOCpJ0U1Ua8A==", - "deprecated": "Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.", + "node_modules/is-bigint": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz", + "integrity": "sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==", + "dev": true, "dependencies": { - "commander": "^2.15.1", - "jsonparse": "^1.3.1", - "lodash.get": "^4.4.2" + "has-bigints": "^1.0.1" }, - "bin": { - "json2csv": "bin/json2csv.js" - } - }, - "node_modules/json2csv/node_modules/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==" - }, - "node_modules/jsonfile": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", - "integrity": "sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss=", - "optionalDependencies": { - "graceful-fs": "^4.1.6" + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/jsonparse": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/jsonparse/-/jsonparse-1.3.1.tgz", - "integrity": "sha1-P02uSpH6wxX3EGL4UhzCOfE2YoA=", - "engines": [ - "node >= 0.2.0" - ] - }, - "node_modules/JSONStream": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/JSONStream/-/JSONStream-1.3.5.tgz", - "integrity": "sha512-E+iruNOY8VV9s4JEbe1aNEm6MiszPRr/UfcHMz0TQh1BXSxHK+ASV1R6W4HpjBhSeS+54PIsAMCBmwD06LLsqQ==", + "node_modules/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, + "license": "MIT", "dependencies": { - "jsonparse": "^1.2.0", - "through": ">=2.2.7 <3" - }, - "bin": { - "JSONStream": "bin.js" + "binary-extensions": "^2.0.0" }, "engines": { - "node": "*" + "node": ">=8" } }, - "node_modules/jsonwebtoken": { - "version": "9.0.2", - "resolved": "https://registry.npmjs.org/jsonwebtoken/-/jsonwebtoken-9.0.2.tgz", - "integrity": "sha512-PRp66vJ865SSqOlgqS8hujT5U4AOgMfhrwYIuIhfKaoSCZcirrmASQr8CX7cUg+RMih+hgznrjp99o+W4pJLHQ==", + "node_modules/is-boolean-object": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz", + "integrity": "sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==", + "dev": true, "dependencies": { - "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": "^7.5.4" + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" }, "engines": { - "node": ">=12", - "npm": ">=6" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/jsonwebtoken/node_modules/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==", - "dependencies": { - "yallist": "^4.0.0" - }, + "node_modules/is-callable": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz", + "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==", + "dev": true, "engines": { - "node": ">=10" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/jsonwebtoken/node_modules/ms": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", - "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==" - }, - "node_modules/jsonwebtoken/node_modules/semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", + "node_modules/is-core-module": { + "version": "2.14.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.14.0.tgz", + "integrity": "sha512-a5dFJih5ZLYlRtDc0dZWP7RiKr6xIKzmn/oAYCDvdLThadVgyJwlaoQPmRtMSpz+rk0OGAgIu+TcM9HUF0fk1A==", "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" + "hasown": "^2.0.2" }, "engines": { - "node": ">=10" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/jsprim": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.2.tgz", - "integrity": "sha512-P2bSOMAc/ciLz6DzgjVlGJP9+BrJWu5UDGK70C2iweC5QBIeFf0ZXRvGjEj2uYgrY2MkAAhsSWHDWlFtEroZWw==", + "node_modules/is-data-view": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-data-view/-/is-data-view-1.0.1.tgz", + "integrity": "sha512-AHkaJrsUVW6wq6JS8y3JnM/GJF/9cf+k20+iDzlSaJrinEo5+7vRiteOSwBhHRiAyQATN1AmY4hwzxJKPmYf+w==", "dev": true, "dependencies": { - "assert-plus": "1.0.0", - "extsprintf": "1.3.0", - "json-schema": "0.4.0", - "verror": "1.10.0" + "is-typed-array": "^1.1.13" }, "engines": { - "node": ">=0.6.0" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/jsprim/node_modules/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 - }, - "node_modules/jsprim/node_modules/extsprintf": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", - "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=", - "dev": true, - "engines": [ - "node >=0.6.0" - ] - }, - "node_modules/jsprim/node_modules/verror": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", - "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=", + "node_modules/is-date-object": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz", + "integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==", "dev": true, - "engines": [ - "node >=0.6.0" - ], "dependencies": { - "assert-plus": "^1.0.0", - "core-util-is": "1.0.2", - "extsprintf": "^1.2.0" + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/jstransformer": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/jstransformer/-/jstransformer-1.0.0.tgz", - "integrity": "sha512-C9YK3Rf8q6VAPDCCU9fnqo3mAfOH6vUGnMcP4AQAYIEpWtfGLpwOTmZ+igtdK5y+VvI2n3CyYSzy4Qh34eq24A==", + "node_modules/is-expression": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/is-expression/-/is-expression-4.0.0.tgz", + "integrity": "sha512-zMIXX63sxzG3XrkHkrAPvm/OVZVSCPNkwMHU8oTX7/U3AL78I0QXCEICXUM13BIa8TYGZ68PiTKfQz3yaTNr4A==", "dependencies": { - "is-promise": "^2.0.0", - "promise": "^7.0.1" + "acorn": "^7.1.1", + "object-assign": "^4.1.1" } }, - "node_modules/jszip": { - "version": "3.9.1", - "resolved": "https://registry.npmjs.org/jszip/-/jszip-3.9.1.tgz", - "integrity": "sha512-H9A60xPqJ1CuC4Ka6qxzXZeU8aNmgOeP5IFqwJbQQwtu2EUYxota3LdsiZWplF7Wgd9tkAd0mdu36nceSaPuYw==", - "dev": true, - "dependencies": { - "lie": "~3.3.0", - "pako": "~1.0.2", - "readable-stream": "~2.3.6", - "set-immediate-shim": "~1.0.1" + "node_modules/is-expression/node_modules/acorn": { + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", + "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" } }, - "node_modules/jszip/node_modules/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 - }, - "node_modules/jszip/node_modules/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==", + "node_modules/is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", "dev": true, - "dependencies": { - "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" + "engines": { + "node": ">=0.10.0" } }, - "node_modules/jszip/node_modules/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 + "node_modules/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==", + "devOptional": true, + "engines": { + "node": ">=8" + } }, - "node_modules/jszip/node_modules/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==", + "node_modules/is-glob": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", "dev": true, "dependencies": { - "safe-buffer": "~5.1.0" + "is-extglob": "^2.1.1" + }, + "engines": { + "node": ">=0.10.0" } }, - "node_modules/junk": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/junk/-/junk-4.0.1.tgz", - "integrity": "sha512-Qush0uP+G8ZScpGMZvHUiRfI0YBWuB3gVBYlI0v0vvOJt5FLicco+IkP0a50LqTTQhmts/m6tP5SWE+USyIvcQ==", + "node_modules/is-map": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/is-map/-/is-map-2.0.3.tgz", + "integrity": "sha512-1Qed0/Hr2m+YqxnM09CjA2d/i6YZNfF6R2oRAOj36eUdS6qIV/huPJNSEpKbupewFs+ZsJlxsjjPbc0/afW6Lw==", "dev": true, "engines": { - "node": ">=12.20" + "node": ">= 0.4" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/just-extend": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/just-extend/-/just-extend-4.2.1.tgz", - "integrity": "sha512-g3UB796vUFIY90VIv/WX3L2c8CS2MdWUww3CNrYmqza1Fg0DURc2K/O4YrnklBdQarSJ/y8JnJYDGc+1iumQjg==", - "dev": true - }, - "node_modules/jwa": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/jwa/-/jwa-1.4.1.tgz", - "integrity": "sha512-qiLX/xhEEFKUAJ6FiBMbes3w9ATzyk5W7Hvzpa/SLYdxNtng+gcurvrI7TbACjIXlsJyr05/S1oUhZrc63evQA==", - "dependencies": { - "buffer-equal-constant-time": "1.0.1", - "ecdsa-sig-formatter": "1.0.11", - "safe-buffer": "^5.0.1" + "node_modules/is-negative-zero": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.3.tgz", + "integrity": "sha512-5KoIu2Ngpyek75jXodFvnafB6DJgr3u8uuK0LEZJjrU19DrMD3EVERaR8sjz8CCGgpZvxPl9SuE1GMVPFHx1mw==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/jws": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/jws/-/jws-3.2.2.tgz", - "integrity": "sha512-YHlZCB6lMTllWDtSPHz/ZXTsi8S00usEV6v1tjq8tOUZzw7DpSDWVXjXDre6ed1w/pd495ODpHZYSdkRTsa0HA==", - "dependencies": { - "jwa": "^1.4.1", - "safe-buffer": "^5.0.1" + "node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true, + "engines": { + "node": ">=0.12.0" } }, - "node_modules/kareem": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/kareem/-/kareem-1.5.0.tgz", - "integrity": "sha1-4+QQHZ3P3imXadr0tNtk2JXRdEg=" - }, - "node_modules/keyv": { - "version": "4.5.4", - "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz", - "integrity": "sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==", + "node_modules/is-number-object": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.7.tgz", + "integrity": "sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==", "dev": true, "dependencies": { - "json-buffer": "3.0.1" - } - }, - "node_modules/lazystream": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/lazystream/-/lazystream-1.0.1.tgz", - "integrity": "sha512-b94GiNHQNy6JNTrt5w6zNyffMrNkXZb3KTkCZJb2V1xaEGCk093vkZ2jk3tpaeP33/OiXC+WvK9AxUebnf5nbw==", - "dependencies": { - "readable-stream": "^2.0.5" + "has-tostringtag": "^1.0.0" }, "engines": { - "node": ">= 0.6.3" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/lcov-parse": { - "version": "0.0.10", - "resolved": "https://registry.npmjs.org/lcov-parse/-/lcov-parse-0.0.10.tgz", - "integrity": "sha1-GwuP+ayceIklBYK3C3ExXZ2m2aM=", - "dev": true + "node_modules/is-object": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-object/-/is-object-1.0.2.tgz", + "integrity": "sha512-2rRIahhZr2UWb45fIOuvZGpFtz0TyOZLf32KxBbSoUCeZR495zCKlWUKKUByk3geS2eAs7ZAABt0Y/Rx0GiQGA==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, - "node_modules/ldap-filter": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/ldap-filter/-/ldap-filter-0.3.3.tgz", - "integrity": "sha512-/tFkx5WIn4HuO+6w9lsfxq4FN3O+fDZeO9Mek8dCD8rTUpqzRa766BOBO7BcGkn3X86m5+cBm1/2S/Shzz7gMg==", - "dependencies": { - "assert-plus": "^1.0.0" - }, + "node_modules/is-path-inside": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", + "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==", + "dev": true, "engines": { - "node": ">=0.8" + "node": ">=8" } }, - "node_modules/ldapauth-fork": { - "version": "5.0.5", - "resolved": "https://registry.npmjs.org/ldapauth-fork/-/ldapauth-fork-5.0.5.tgz", - "integrity": "sha512-LWUk76+V4AOZbny/3HIPQtGPWZyA3SW2tRhsWIBi9imP22WJktKLHV1ofd8Jo/wY7Ve6vAT7FCI5mEn3blZTjw==", + "node_modules/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, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-promise": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-2.2.2.tgz", + "integrity": "sha512-+lP4/6lKUBfQjZ2pdxThZvLUAafmZb8OAxFb8XXtiQmS35INgr85hdOGoEs124ez1FCnZJt6jau/T+alh58QFQ==" + }, + "node_modules/is-regex": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz", + "integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==", "dependencies": { - "@types/ldapjs": "^2.2.2", - "bcryptjs": "^2.4.0", - "ldapjs": "^2.2.1", - "lru-cache": "^7.10.1" + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" }, "engines": { - "node": ">=0.8.0" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/ldapauth-fork/node_modules/lru-cache": { - "version": "7.18.3", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", - "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", + "node_modules/is-set": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/is-set/-/is-set-2.0.3.tgz", + "integrity": "sha512-iPAjerrse27/ygGLxw+EBR9agv9Y6uLeYVJMu+QNCoouJ1/1ri0mGrcWpfCqFZuzzx3WjtwxG098X+n4OuRkPg==", + "dev": true, "engines": { - "node": ">=12" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/ldapjs": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/ldapjs/-/ldapjs-2.3.3.tgz", - "integrity": "sha512-75QiiLJV/PQqtpH+HGls44dXweviFwQ6SiIK27EqzKQ5jU/7UFrl2E5nLdQ3IYRBzJ/AVFJI66u0MZ0uofKYwg==", + "node_modules/is-shared-array-buffer": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.3.tgz", + "integrity": "sha512-nA2hv5XIhLR3uVzDDfCIknerhx8XUKnstuOERPNNIinXG7v9u+ohXF67vxm4TPTEPU6lm61ZkwP3c9PCB97rhg==", + "dev": true, "dependencies": { - "abstract-logging": "^2.0.0", - "asn1": "^0.2.4", - "assert-plus": "^1.0.0", - "backoff": "^2.5.0", - "ldap-filter": "^0.3.3", - "once": "^1.4.0", - "vasync": "^2.2.0", - "verror": "^1.8.1" + "call-bind": "^1.0.7" }, "engines": { - "node": ">=10.13.0" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/levn": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", - "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", + "node_modules/is-stream": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", + "integrity": "sha512-uQPm8kcs47jx38atAcWTVxyltQYoPT68y9aWYdV6yWXSyW8mzSat0TL6CiWdZeCdF3KrAvpVtnHbTv4RN+rqdQ==", "dev": true, - "dependencies": { - "prelude-ls": "^1.2.1", - "type-check": "~0.4.0" - }, "engines": { - "node": ">= 0.8.0" + "node": ">=0.10.0" } }, - "node_modules/lie": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/lie/-/lie-3.3.0.tgz", - "integrity": "sha512-UaiMJzeWRlEujzAuw5LokY1L5ecNQYZKfmyZ9L7wDHb/p5etKaxXhohBcrw0EYby+G/NA52vRSN4N39dxHAIwQ==", + "node_modules/is-string": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz", + "integrity": "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==", "dev": true, "dependencies": { - "immediate": "~3.0.5" + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/load-json-file": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-4.0.0.tgz", - "integrity": "sha1-L19Fq5HjMhYjT9U62rZo607AmTs=", + "node_modules/is-symbol": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz", + "integrity": "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==", "dev": true, "dependencies": { - "graceful-fs": "^4.1.2", - "parse-json": "^4.0.0", - "pify": "^3.0.0", - "strip-bom": "^3.0.0" + "has-symbols": "^1.0.2" }, "engines": { - "node": ">=4" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/locate-path": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", - "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", + "node_modules/is-typed-array": { + "version": "1.1.13", + "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.13.tgz", + "integrity": "sha512-uZ25/bUAlUY5fR4OKT4rZQEBrzQWYV9ZJYGGsUmEJ6thodVJ1HX64ePQ6Z0qPWP+m+Uq6e9UugrE38jeYsDSMw==", "dev": true, "dependencies": { - "p-locate": "^5.0.0" + "which-typed-array": "^1.1.14" }, "engines": { - "node": ">=10" + "node": ">= 0.4" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/lodash": { - "version": "4.17.21", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", - "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" - }, - "node_modules/lodash.defaults": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/lodash.defaults/-/lodash.defaults-4.2.0.tgz", - "integrity": "sha1-0JF4cW/+pN3p5ft7N/bwgCJ0WAw=" - }, - "node_modules/lodash.difference": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/lodash.difference/-/lodash.difference-4.5.0.tgz", - "integrity": "sha1-nMtOUF1Ia5FlE0V3KIWi3yf9AXw=" - }, - "node_modules/lodash.flatten": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/lodash.flatten/-/lodash.flatten-4.4.0.tgz", - "integrity": "sha1-8xwiIlqWMtK7+OSt2+8kCqdlph8=" - }, - "node_modules/lodash.flattendeep": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/lodash.flattendeep/-/lodash.flattendeep-4.4.0.tgz", - "integrity": "sha1-+wMJF/hqMTTlvJvsDWngAT3f7bI=", - "dev": true - }, - "node_modules/lodash.get": { - "version": "4.4.2", - "resolved": "https://registry.npmjs.org/lodash.get/-/lodash.get-4.4.2.tgz", - "integrity": "sha1-LRd/ZS+jHpObRDjVNBSZ36OCXpk=" - }, - "node_modules/lodash.includes": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/lodash.includes/-/lodash.includes-4.3.0.tgz", - "integrity": "sha1-YLuYqHy5I8aMoeUTJUgzFISfVT8=" - }, - "node_modules/lodash.isboolean": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/lodash.isboolean/-/lodash.isboolean-3.0.3.tgz", - "integrity": "sha1-bC4XHbKiV82WgC/UOwGyDV9YcPY=" - }, - "node_modules/lodash.isinteger": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/lodash.isinteger/-/lodash.isinteger-4.0.4.tgz", - "integrity": "sha1-YZwK89A/iwTDH1iChAt3sRzWg0M=" - }, - "node_modules/lodash.isnumber": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/lodash.isnumber/-/lodash.isnumber-3.0.3.tgz", - "integrity": "sha1-POdoEMWSjQM1IwGsKHMX8RwLH/w=" - }, - "node_modules/lodash.isplainobject": { - "version": "4.0.6", - "resolved": "https://registry.npmjs.org/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz", - "integrity": "sha1-fFJqUtibRcRcxpC4gWO+BJf1UMs=" - }, - "node_modules/lodash.isstring": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/lodash.isstring/-/lodash.isstring-4.0.1.tgz", - "integrity": "sha1-1SfftUVuynzJu5XV2ur4i6VKVFE=" - }, - "node_modules/lodash.merge": { - "version": "4.6.2", - "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", - "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", + "node_modules/is-typedarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", + "integrity": "sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA==", "dev": true }, - "node_modules/lodash.once": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/lodash.once/-/lodash.once-4.1.1.tgz", - "integrity": "sha1-DdOXEhPHxW34gJd9UEyI+0cal6w=" - }, - "node_modules/lodash.union": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/lodash.union/-/lodash.union-4.6.0.tgz", - "integrity": "sha1-SLtQiECfFvGCFmZkHETdGqrjzYg=" - }, - "node_modules/log-driver": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/log-driver/-/log-driver-1.2.7.tgz", - "integrity": "sha512-U7KCmLdqsGHBLeWqYlFA0V0Sl6P08EE1ZrmA9cxjUE0WVqT9qnyVDPz1kzpFEP0jdJuFnasWIfSd7fsaNXkpbg==", + "node_modules/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, "engines": { - "node": ">=0.8.6" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/log-symbols": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-3.0.0.tgz", - "integrity": "sha512-dSkNGuI7iG3mfvDzUuYZyvk5dD9ocYCYzNU6CYDE6+Xqd+gwme6Z00NS3dUh8mq/73HaEtT7m6W+yUPtU6BZnQ==", + "node_modules/is-weakmap": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/is-weakmap/-/is-weakmap-2.0.2.tgz", + "integrity": "sha512-K5pXYOm9wqY1RgjpL3YTkF39tni1XajUIkawTLUo9EZEVUFga5gSQJF8nNS7ZwJQ02y+1YCNYcMh+HIf1ZqE+w==", "dev": true, - "dependencies": { - "chalk": "^2.4.2" - }, "engines": { - "node": ">=8" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/log-symbols/node_modules/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, - "dependencies": { - "color-convert": "^1.9.0" + "node_modules/is-weakref": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.2.tgz", + "integrity": "sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2" }, - "engines": { - "node": ">=4" + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/log-symbols/node_modules/chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "node_modules/is-weakset": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/is-weakset/-/is-weakset-2.0.3.tgz", + "integrity": "sha512-LvIm3/KWzS9oRFHugab7d+M/GcBXuXX5xZkzPmN+NxihdQlZUQ4dWuSV1xR/sq6upL1TJEDrfBgRepHFdBtSNQ==", "dev": true, "dependencies": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" + "call-bind": "^1.0.7", + "get-intrinsic": "^1.2.4" }, "engines": { - "node": ">=4" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/log-symbols/node_modules/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, - "dependencies": { - "color-name": "1.1.3" - } + "node_modules/isarray": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", + "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==", + "dev": true }, - "node_modules/log-symbols/node_modules/color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", + "node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", "dev": true }, - "node_modules/log-symbols/node_modules/has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "node_modules/isstream": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", + "integrity": "sha512-Yljz7ffyPbrLpLngrMtZ7NduUgVvi6wG9RJ9IUcyCd59YQ911PBJphODUcbOVbqYfxe1wuYf/LJ8PauMRwsM/g==" + }, + "node_modules/istanbul-lib-coverage": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.5.tgz", + "integrity": "sha512-8aXznuEPCJvGnMSRft4udDRDtb1V3pkQkMMI5LI+6HuQz5oQ4J2UFn1H82raA3qJtyOLkkwVqICBQkjnGtn5mA==", "dev": true, "engines": { - "node": ">=4" + "node": ">=6" } }, - "node_modules/log-symbols/node_modules/supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "node_modules/istanbul-lib-hook": { + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/istanbul-lib-hook/-/istanbul-lib-hook-2.0.7.tgz", + "integrity": "sha512-vrRztU9VRRFDyC+aklfLoeXyNdTfga2EI3udDGn4cZ6fpSXpHLV9X6CHvfoMCPtggg8zvDDmC4b9xfu0z6/llA==", "dev": true, "dependencies": { - "has-flag": "^3.0.0" + "append-transform": "^1.0.0" }, "engines": { - "node": ">=4" + "node": ">=6" } }, - "node_modules/lolex": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/lolex/-/lolex-4.2.0.tgz", - "integrity": "sha512-gKO5uExCXvSm6zbF562EvM+rd1kQDnB9AZBbiQVzf1ZmdDpxUSvpnAaVOP83N/31mRK8Ml8/VE8DMvsAZQ+7wg==", - "dev": true - }, - "node_modules/loupe": { - "version": "2.3.4", - "resolved": "https://registry.npmjs.org/loupe/-/loupe-2.3.4.tgz", - "integrity": "sha512-OvKfgCC2Ndby6aSTREl5aCCPTNIzlDfQZvZxNUrBrihDhL3xcrYegTblhmEiCrg2kKQz4XsFIaemE5BF4ybSaQ==", + "node_modules/istanbul-lib-instrument": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-3.3.0.tgz", + "integrity": "sha512-5nnIN4vo5xQZHdXno/YDXJ0G+I3dAm4XgzfSVTPLQpj/zAV2dV6Juy0yaf10/zrJOJeHoN3fraFe+XRq2bFVZA==", "dev": true, "dependencies": { - "get-func-name": "^2.0.0" + "@babel/generator": "^7.4.0", + "@babel/parser": "^7.4.3", + "@babel/template": "^7.4.0", + "@babel/traverse": "^7.4.3", + "@babel/types": "^7.4.0", + "istanbul-lib-coverage": "^2.0.5", + "semver": "^6.0.0" + }, + "engines": { + "node": ">=6" } }, - "node_modules/lru-cache": { - "version": "4.1.5", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz", - "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==", + "node_modules/istanbul-lib-instrument/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/istanbul-lib-report": { + "version": "2.0.8", + "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-2.0.8.tgz", + "integrity": "sha512-fHBeG573EIihhAblwgxrSenp0Dby6tJMFR/HvlerBsrCTD5bkUuoNtn3gVh29ZCS824cGGBPn7Sg7cNk+2xUsQ==", + "dev": true, "dependencies": { - "pseudomap": "^1.0.2", - "yallist": "^2.1.2" + "istanbul-lib-coverage": "^2.0.5", + "make-dir": "^2.1.0", + "supports-color": "^6.1.0" + }, + "engines": { + "node": ">=6" } }, - "node_modules/lru-cache/node_modules/yallist": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", - "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=" + "node_modules/istanbul-lib-report/node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "dev": true, + "engines": { + "node": ">=4" + } }, - "node_modules/make-dir": { + "node_modules/istanbul-lib-report/node_modules/make-dir": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", @@ -6780,7 +7134,7 @@ "node": ">=6" } }, - "node_modules/make-dir/node_modules/pify": { + "node_modules/istanbul-lib-report/node_modules/pify": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", @@ -6789,796 +7143,900 @@ "node": ">=6" } }, - "node_modules/map-stream": { - "version": "0.0.7", - "resolved": "https://registry.npmjs.org/map-stream/-/map-stream-0.0.7.tgz", - "integrity": "sha1-ih8HiW2CsQkmvTdEokIACfiJdKg=" - }, - "node_modules/md5.js": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.5.tgz", - "integrity": "sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==", - "dependencies": { - "hash-base": "^3.0.0", - "inherits": "^2.0.1", - "safe-buffer": "^5.1.2" - } - }, - "node_modules/media-typer": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", - "integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/memory-pager": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/memory-pager/-/memory-pager-1.5.0.tgz", - "integrity": "sha512-ZS4Bp4r/Zoeq6+NLJpP+0Zzm0pR8whtGPf1XExKLJBAczGMnSi3It14OiNCStjQjM6NU1okjQGSxgEZN8eBYKg==", - "dev": true, - "optional": true - }, - "node_modules/memorystream": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/memorystream/-/memorystream-0.3.1.tgz", - "integrity": "sha1-htcJCzDORV1j+64S3aUaR93K+bI=", + "node_modules/istanbul-lib-report/node_modules/semver": { + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", + "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", "dev": true, - "engines": { - "node": ">= 0.10.0" + "bin": { + "semver": "bin/semver" } }, - "node_modules/meow": { - "version": "12.1.1", - "resolved": "https://registry.npmjs.org/meow/-/meow-12.1.1.tgz", - "integrity": "sha512-BhXM0Au22RwUneMPwSCnyhTOizdWoIEPU9sp0Aqa1PnDMR5Wv2FGXYDjuzJEIX+Eo2Rb8xuYe5jrnm5QowQFkw==", + "node_modules/istanbul-lib-report/node_modules/supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", "dev": true, - "engines": { - "node": ">=16.10" + "dependencies": { + "has-flag": "^3.0.0" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "engines": { + "node": ">=6" } }, - "node_modules/merge-descriptors": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", - "integrity": "sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E=" - }, - "node_modules/merge-source-map": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/merge-source-map/-/merge-source-map-1.1.0.tgz", - "integrity": "sha512-Qkcp7P2ygktpMPh2mCQZaf3jhN6D3Z/qVZHSdWvQ+2Ef5HgRAPBO57A77+ENm0CPx2+1Ce/MYKi3ymqdfuqibw==", + "node_modules/istanbul-lib-source-maps": { + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-3.0.6.tgz", + "integrity": "sha512-R47KzMtDJH6X4/YW9XTx+jrLnZnscW4VpNN+1PViSYTejLVPWv7oov+Duf8YQSPyVRUvueQqz1TcsC6mooZTXw==", "dev": true, "dependencies": { + "debug": "^4.1.1", + "istanbul-lib-coverage": "^2.0.5", + "make-dir": "^2.1.0", + "rimraf": "^2.6.3", "source-map": "^0.6.1" + }, + "engines": { + "node": ">=6" } }, - "node_modules/merge2": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", - "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", + "node_modules/istanbul-lib-source-maps/node_modules/make-dir": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", + "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", "dev": true, + "dependencies": { + "pify": "^4.0.1", + "semver": "^5.6.0" + }, "engines": { - "node": ">= 8" + "node": ">=6" } }, - "node_modules/methods": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", - "integrity": "sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4=", + "node_modules/istanbul-lib-source-maps/node_modules/pify": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", + "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", + "dev": true, "engines": { - "node": ">= 0.6" + "node": ">=6" } }, - "node_modules/mgrs": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/mgrs/-/mgrs-1.0.0.tgz", - "integrity": "sha1-+5FYjnjJACVnI5XLQLJffNatGCk=" - }, - "node_modules/micromatch": { - "version": "4.0.5", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", - "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", + "node_modules/istanbul-lib-source-maps/node_modules/rimraf": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", + "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", + "deprecated": "Rimraf versions prior to v4 are no longer supported", "dev": true, "dependencies": { - "braces": "^3.0.2", - "picomatch": "^2.3.1" + "glob": "^7.1.3" }, - "engines": { - "node": ">=8.6" + "bin": { + "rimraf": "bin.js" } }, - "node_modules/mime": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", - "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", + "node_modules/istanbul-lib-source-maps/node_modules/semver": { + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", + "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", + "dev": true, "bin": { - "mime": "cli.js" - }, - "engines": { - "node": ">=4" + "semver": "bin/semver" } }, - "node_modules/mime-db": { - "version": "1.52.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", - "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", + "node_modules/istanbul-reports": { + "version": "2.2.7", + "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-2.2.7.tgz", + "integrity": "sha512-uu1F/L1o5Y6LzPVSVZXNOoD/KXpJue9aeLRd0sM9uMXfZvzomB0WxVamWb5ue8kA2vVWEmW7EG+A5n3f1kqHKg==", + "dev": true, + "dependencies": { + "html-escaper": "^2.0.0" + }, "engines": { - "node": ">= 0.6" + "node": ">=6" } }, - "node_modules/mime-types": { - "version": "2.1.35", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", - "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", + "node_modules/jackspeak": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-3.4.0.tgz", + "integrity": "sha512-JVYhQnN59LVPFCEcVa2C3CrEKYacvjRfqIQl+h8oi91aLYQVWRYbxjPcv1bUiUy/kLmQaANrYfNMCO3kuEDHfw==", + "dev": true, "dependencies": { - "mime-db": "1.52.0" + "@isaacs/cliui": "^8.0.2" }, "engines": { - "node": ">= 0.6" + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + }, + "optionalDependencies": { + "@pkgjs/parseargs": "^0.11.0" } }, - "node_modules/mimic-fn": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", - "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", - "optional": true, - "engines": { - "node": ">=6" + "node_modules/js-stringify": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/js-stringify/-/js-stringify-1.0.2.tgz", + "integrity": "sha512-rtS5ATOo2Q5k1G+DADISilDA6lv79zIiwFd6CcjuIxGKLFm5C+RLImRscVap9k55i+MOZwgliw+NejvkLuGD5g==" + }, + "node_modules/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 + }, + "node_modules/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==", + "license": "MIT", + "dependencies": { + "argparse": "^2.0.1" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" } }, - "node_modules/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==", - "engines": { - "node": ">=10" + "node_modules/js-yaml/node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "license": "Python-2.0" + }, + "node_modules/jsbn": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-1.1.0.tgz", + "integrity": "sha512-4bYVV3aAMtDTTu4+xsDYa6sy9GyJ69/amsu9sYF2zqjiEoZA5xJi3BrfX3uY+/IekIu7MwdObdbDWpoZdBv3/A==" + }, + "node_modules/jsesc": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", + "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", + "dev": true, + "bin": { + "jsesc": "bin/jsesc" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "engines": { + "node": ">=4" } }, - "node_modules/minimalistic-assert": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", - "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==" + "node_modules/json-buffer": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz", + "integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==", + "dev": true + }, + "node_modules/json-parse-better-errors": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz", + "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==", + "dev": true + }, + "node_modules/json-schema": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.4.0.tgz", + "integrity": "sha512-es94M3nTIfsEPisRafak+HDLfHXnKBhV3vU5eqPcS3flIWqcxJWgXHXiey3YrpaNsanY5ei1VoYEbOzijuq9BA==", + "dev": true + }, + "node_modules/json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "dev": true }, - "node_modules/minimalistic-crypto-utils": { + "node_modules/json-stable-stringify-without-jsonify": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz", - "integrity": "sha1-9sAMHAsIIkblxNmd+4x8CDsrWCo=" + "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", + "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==", + "dev": true }, - "node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "node_modules/json-stringify-safe": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", + "integrity": "sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA==", + "dev": true + }, + "node_modules/json2csv": { + "version": "4.5.4", + "resolved": "https://registry.npmjs.org/json2csv/-/json2csv-4.5.4.tgz", + "integrity": "sha512-YxBhY4Lmn8IvVZ36nqg5omxneLy9JlorkqW1j/EDCeqvmi+CQ4uM+wsvXlcIqvGDewIPXMC/O/oF8DX9EH5aoA==", + "deprecated": "Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.", + "license": "MIT", "dependencies": { - "brace-expansion": "^1.1.7" + "commander": "^2.15.1", + "jsonparse": "^1.3.1", + "lodash.get": "^4.4.2" }, - "engines": { - "node": "*" + "bin": { + "json2csv": "bin/json2csv.js" } }, - "node_modules/minimist": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", - "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", - "funding": { - "url": "https://github.com/sponsors/ljharb" - } + "node_modules/json2csv/node_modules/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==" }, - "node_modules/minipass": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz", - "integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==", - "dev": true, - "engines": { - "node": ">=8" + "node_modules/jsonfile": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", + "integrity": "sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==", + "optionalDependencies": { + "graceful-fs": "^4.1.6" } }, - "node_modules/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==" + "node_modules/jsonparse": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/jsonparse/-/jsonparse-1.3.1.tgz", + "integrity": "sha512-POQXvpdL69+CluYsillJ7SUhKvytYjW9vG/GKpnf+xP8UWgYEM/RaMzHHofbALDiKbbP1W8UEYmgGl39WkPZsg==", + "engines": [ + "node >= 0.2.0" + ] }, - "node_modules/mocha": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/mocha/-/mocha-7.2.0.tgz", - "integrity": "sha512-O9CIypScywTVpNaRrCAgoUnJgozpIofjKUYmJhiCIJMiuYnLI6otcb1/kpW9/n/tJODHGZ7i8aLQoDVsMtOKQQ==", - "dev": true, - "dependencies": { - "ansi-colors": "3.2.3", - "browser-stdout": "1.3.1", - "chokidar": "3.3.0", - "debug": "3.2.6", - "diff": "3.5.0", - "escape-string-regexp": "1.0.5", - "find-up": "3.0.0", - "glob": "7.1.3", - "growl": "1.10.5", - "he": "1.2.0", - "js-yaml": "3.13.1", - "log-symbols": "3.0.0", - "minimatch": "3.0.4", - "mkdirp": "0.5.5", - "ms": "2.1.1", - "node-environment-flags": "1.0.6", - "object.assign": "4.1.0", - "strip-json-comments": "2.0.1", - "supports-color": "6.0.0", - "which": "1.3.1", - "wide-align": "1.1.3", - "yargs": "13.3.2", - "yargs-parser": "13.1.2", - "yargs-unparser": "1.6.0" + "node_modules/JSONStream": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/JSONStream/-/JSONStream-1.3.5.tgz", + "integrity": "sha512-E+iruNOY8VV9s4JEbe1aNEm6MiszPRr/UfcHMz0TQh1BXSxHK+ASV1R6W4HpjBhSeS+54PIsAMCBmwD06LLsqQ==", + "dependencies": { + "jsonparse": "^1.2.0", + "through": ">=2.2.7 <3" }, "bin": { - "_mocha": "bin/_mocha", - "mocha": "bin/mocha" + "JSONStream": "bin.js" }, "engines": { - "node": ">= 8.10.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/mochajs" + "node": "*" } }, - "node_modules/mocha/node_modules/ansi-regex": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.1.tgz", - "integrity": "sha512-ILlv4k/3f6vfQ4OoP2AGvirOktlQ98ZEL1k9FaQjxa3L1abBgbuTDAdPOpvbGncC0BTVQrl+OM8xZGK6tWXt7g==", - "dev": true, + "node_modules/jsonwebtoken": { + "version": "9.0.2", + "resolved": "https://registry.npmjs.org/jsonwebtoken/-/jsonwebtoken-9.0.2.tgz", + "integrity": "sha512-PRp66vJ865SSqOlgqS8hujT5U4AOgMfhrwYIuIhfKaoSCZcirrmASQr8CX7cUg+RMih+hgznrjp99o+W4pJLHQ==", + "dependencies": { + "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": "^7.5.4" + }, "engines": { - "node": ">=6" + "node": ">=12", + "npm": ">=6" } }, - "node_modules/mocha/node_modules/camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "node_modules/jsprim": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.2.tgz", + "integrity": "sha512-P2bSOMAc/ciLz6DzgjVlGJP9+BrJWu5UDGK70C2iweC5QBIeFf0ZXRvGjEj2uYgrY2MkAAhsSWHDWlFtEroZWw==", "dev": true, + "dependencies": { + "assert-plus": "1.0.0", + "extsprintf": "1.3.0", + "json-schema": "0.4.0", + "verror": "1.10.0" + }, "engines": { - "node": ">=6" + "node": ">=0.6.0" } }, - "node_modules/mocha/node_modules/cliui": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-5.0.0.tgz", - "integrity": "sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA==", + "node_modules/jsprim/node_modules/verror": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", + "integrity": "sha512-ZZKSmDAEFOijERBLkmYfJ+vmk3w+7hOLYDNkRCuRuMJGEmqYNCNLyBBFwWKVMhfwaEF3WOd0Zlw86U/WC/+nYw==", "dev": true, + "engines": [ + "node >=0.6.0" + ], "dependencies": { - "string-width": "^3.1.0", - "strip-ansi": "^5.2.0", - "wrap-ansi": "^5.1.0" + "assert-plus": "^1.0.0", + "core-util-is": "1.0.2", + "extsprintf": "^1.2.0" } }, - "node_modules/mocha/node_modules/cliui/node_modules/string-width": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", - "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", - "dev": true, + "node_modules/jstransformer": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/jstransformer/-/jstransformer-1.0.0.tgz", + "integrity": "sha512-C9YK3Rf8q6VAPDCCU9fnqo3mAfOH6vUGnMcP4AQAYIEpWtfGLpwOTmZ+igtdK5y+VvI2n3CyYSzy4Qh34eq24A==", "dependencies": { - "emoji-regex": "^7.0.1", - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^5.1.0" - }, - "engines": { - "node": ">=6" + "is-promise": "^2.0.0", + "promise": "^7.0.1" } }, - "node_modules/mocha/node_modules/debug": { - "version": "3.2.6", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", - "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", - "deprecated": "Debug versions >=3.2.0 <3.2.7 || >=4 <4.3.1 have a low-severity ReDos regression when used in a Node.js environment. It is recommended you upgrade to 3.2.7 or 4.3.1. (https://github.com/visionmedia/debug/issues/797)", + "node_modules/jszip": { + "version": "3.10.1", + "resolved": "https://registry.npmjs.org/jszip/-/jszip-3.10.1.tgz", + "integrity": "sha512-xXDvecyTpGLrqFrvkrUSoxxfJI5AH7U8zxxtVclpsUtMCq4JQ290LY8AW5c7Ggnr/Y/oK+bQMbqK2qmtk3pN4g==", "dev": true, + "license": "(MIT OR GPL-3.0-or-later)", "dependencies": { - "ms": "^2.1.1" + "lie": "~3.3.0", + "pako": "~1.0.2", + "readable-stream": "~2.3.6", + "setimmediate": "^1.0.5" } }, - "node_modules/mocha/node_modules/emoji-regex": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", - "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", + "node_modules/jszip/node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", "dev": true }, - "node_modules/mocha/node_modules/esprima": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", - "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", + "node_modules/jszip/node_modules/readable-stream": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", + "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", "dev": true, - "bin": { - "esparse": "bin/esparse.js", - "esvalidate": "bin/esvalidate.js" - }, - "engines": { - "node": ">=4" + "dependencies": { + "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" } }, - "node_modules/mocha/node_modules/find-up": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", - "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", - "dev": true, - "dependencies": { - "locate-path": "^3.0.0" - }, - "engines": { - "node": ">=6" - } + "node_modules/jszip/node_modules/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 }, - "node_modules/mocha/node_modules/glob": { - "version": "7.1.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.3.tgz", - "integrity": "sha512-vcfuiIxogLV4DlGBHIUOwI0IbrJ8HWPc4MU7HzviGeNho/UJDfi6B5p3sHeWIQ0KGIU0Jpxi5ZHxemQfLkkAwQ==", + "node_modules/jszip/node_modules/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, "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" - }, - "engines": { - "node": "*" + "safe-buffer": "~5.1.0" } }, - "node_modules/mocha/node_modules/has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "node_modules/junk": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/junk/-/junk-4.0.1.tgz", + "integrity": "sha512-Qush0uP+G8ZScpGMZvHUiRfI0YBWuB3gVBYlI0v0vvOJt5FLicco+IkP0a50LqTTQhmts/m6tP5SWE+USyIvcQ==", "dev": true, "engines": { - "node": ">=4" + "node": ">=12.20" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/mocha/node_modules/is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", - "dev": true, - "engines": { - "node": ">=4" - } + "node_modules/just-extend": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/just-extend/-/just-extend-4.2.1.tgz", + "integrity": "sha512-g3UB796vUFIY90VIv/WX3L2c8CS2MdWUww3CNrYmqza1Fg0DURc2K/O4YrnklBdQarSJ/y8JnJYDGc+1iumQjg==", + "dev": true }, - "node_modules/mocha/node_modules/js-yaml": { - "version": "3.13.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.13.1.tgz", - "integrity": "sha512-YfbcO7jXDdyj0DGxYVSlSeQNHbD7XPWvrVWeVUujrQEoZzWJIRrCPoyk6kL6IAjAG2IolMK4T0hNUe0HOUs5Jw==", - "dev": true, + "node_modules/jwa": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/jwa/-/jwa-1.4.1.tgz", + "integrity": "sha512-qiLX/xhEEFKUAJ6FiBMbes3w9ATzyk5W7Hvzpa/SLYdxNtng+gcurvrI7TbACjIXlsJyr05/S1oUhZrc63evQA==", "dependencies": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" - }, - "bin": { - "js-yaml": "bin/js-yaml.js" + "buffer-equal-constant-time": "1.0.1", + "ecdsa-sig-formatter": "1.0.11", + "safe-buffer": "^5.0.1" } }, - "node_modules/mocha/node_modules/locate-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", - "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", - "dev": true, + "node_modules/jws": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/jws/-/jws-3.2.2.tgz", + "integrity": "sha512-YHlZCB6lMTllWDtSPHz/ZXTsi8S00usEV6v1tjq8tOUZzw7DpSDWVXjXDre6ed1w/pd495ODpHZYSdkRTsa0HA==", "dependencies": { - "p-locate": "^3.0.0", - "path-exists": "^3.0.0" - }, + "jwa": "^1.4.1", + "safe-buffer": "^5.0.1" + } + }, + "node_modules/kareem": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/kareem/-/kareem-2.5.1.tgz", + "integrity": "sha512-7jFxRVm+jD+rkq3kY0iZDJfsO2/t4BBPeEb2qKn2lR/9KhuksYk5hxzfRYWMPV8P/x2d0kHD306YyWLzjjH+uA==", "engines": { - "node": ">=6" + "node": ">=12.0.0" } }, - "node_modules/mocha/node_modules/minimatch": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", - "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", + "node_modules/keyv": { + "version": "4.5.4", + "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz", + "integrity": "sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==", "dev": true, "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" + "json-buffer": "3.0.1" } }, - "node_modules/mocha/node_modules/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, + "node_modules/lazystream": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/lazystream/-/lazystream-1.0.1.tgz", + "integrity": "sha512-b94GiNHQNy6JNTrt5w6zNyffMrNkXZb3KTkCZJb2V1xaEGCk093vkZ2jk3tpaeP33/OiXC+WvK9AxUebnf5nbw==", "dependencies": { - "minimist": "^1.2.5" + "readable-stream": "^2.0.5" }, - "bin": { - "mkdirp": "bin/cmd.js" + "engines": { + "node": ">= 0.6.3" } }, - "node_modules/mocha/node_modules/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==", - "dev": true + "node_modules/lazystream/node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==" }, - "node_modules/mocha/node_modules/object.assign": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.0.tgz", - "integrity": "sha512-exHJeq6kBKj58mqGyTQ9DFvrZC/eR6OwxzoM9YRoGBqrXYonaFyGiFMuc9VZrXf7DarreEwMpurG3dd+CNyW5w==", - "dev": true, + "node_modules/lazystream/node_modules/readable-stream": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", + "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", "dependencies": { - "define-properties": "^1.1.2", - "function-bind": "^1.1.1", - "has-symbols": "^1.0.0", - "object-keys": "^1.0.11" - }, - "engines": { - "node": ">= 0.4" + "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" } }, - "node_modules/mocha/node_modules/p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", - "dev": true, + "node_modules/lazystream/node_modules/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==" + }, + "node_modules/lazystream/node_modules/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==", "dependencies": { - "p-try": "^2.0.0" - }, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "safe-buffer": "~5.1.0" } }, - "node_modules/mocha/node_modules/p-locate": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", - "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "node_modules/lcov-parse": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/lcov-parse/-/lcov-parse-1.0.0.tgz", + "integrity": "sha512-aprLII/vPzuQvYZnDRU78Fns9I2Ag3gi4Ipga/hxnVMCZC8DnR2nI7XBqrPoywGfxqIx/DgarGvDJZAD3YBTgQ==", "dev": true, + "license": "BSD-3-Clause", + "bin": { + "lcov-parse": "bin/cli.js" + } + }, + "node_modules/ldap-filter": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/ldap-filter/-/ldap-filter-0.3.3.tgz", + "integrity": "sha512-/tFkx5WIn4HuO+6w9lsfxq4FN3O+fDZeO9Mek8dCD8rTUpqzRa766BOBO7BcGkn3X86m5+cBm1/2S/Shzz7gMg==", "dependencies": { - "p-limit": "^2.0.0" + "assert-plus": "^1.0.0" }, "engines": { - "node": ">=6" + "node": ">=0.8" } }, - "node_modules/mocha/node_modules/strip-ansi": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", - "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", - "dev": true, + "node_modules/ldapauth-fork": { + "version": "5.0.5", + "resolved": "https://registry.npmjs.org/ldapauth-fork/-/ldapauth-fork-5.0.5.tgz", + "integrity": "sha512-LWUk76+V4AOZbny/3HIPQtGPWZyA3SW2tRhsWIBi9imP22WJktKLHV1ofd8Jo/wY7Ve6vAT7FCI5mEn3blZTjw==", "dependencies": { - "ansi-regex": "^4.1.0" + "@types/ldapjs": "^2.2.2", + "bcryptjs": "^2.4.0", + "ldapjs": "^2.2.1", + "lru-cache": "^7.10.1" }, "engines": { - "node": ">=6" + "node": ">=0.8.0" } }, - "node_modules/mocha/node_modules/supports-color": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.0.0.tgz", - "integrity": "sha512-on9Kwidc1IUQo+bQdhi8+Tijpo0e1SS6RoGo2guUwn5vdaxw8RXOF9Vb2ws+ihWOmh4JnCJOvaziZWP1VABaLg==", - "dev": true, + "node_modules/ldapjs": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/ldapjs/-/ldapjs-2.3.3.tgz", + "integrity": "sha512-75QiiLJV/PQqtpH+HGls44dXweviFwQ6SiIK27EqzKQ5jU/7UFrl2E5nLdQ3IYRBzJ/AVFJI66u0MZ0uofKYwg==", + "deprecated": "This package has been decomissioned. See https://github.com/ldapjs/node-ldapjs/blob/8ffd0bc9c149088a10ec4c1ec6a18450f76ad05d/README.md", "dependencies": { - "has-flag": "^3.0.0" + "abstract-logging": "^2.0.0", + "asn1": "^0.2.4", + "assert-plus": "^1.0.0", + "backoff": "^2.5.0", + "ldap-filter": "^0.3.3", + "once": "^1.4.0", + "vasync": "^2.2.0", + "verror": "^1.8.1" }, "engines": { - "node": ">=6" + "node": ">=10.13.0" } }, - "node_modules/mocha/node_modules/wide-align": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.3.tgz", - "integrity": "sha512-QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA==", + "node_modules/levn": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", + "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", "dev": true, "dependencies": { - "string-width": "^1.0.2 || 2" + "prelude-ls": "^1.2.1", + "type-check": "~0.4.0" + }, + "engines": { + "node": ">= 0.8.0" } }, - "node_modules/mocha/node_modules/yargs": { - "version": "13.3.2", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-13.3.2.tgz", - "integrity": "sha512-AX3Zw5iPruN5ie6xGRIDgqkT+ZhnRlZMLMHAs8tg7nRruy2Nb+i5o9bwghAogtM08q1dpr2LVoS8KSTMYpWXUw==", + "node_modules/lie": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/lie/-/lie-3.3.0.tgz", + "integrity": "sha512-UaiMJzeWRlEujzAuw5LokY1L5ecNQYZKfmyZ9L7wDHb/p5etKaxXhohBcrw0EYby+G/NA52vRSN4N39dxHAIwQ==", "dev": true, "dependencies": { - "cliui": "^5.0.0", - "find-up": "^3.0.0", - "get-caller-file": "^2.0.1", - "require-directory": "^2.1.1", - "require-main-filename": "^2.0.0", - "set-blocking": "^2.0.0", - "string-width": "^3.0.0", - "which-module": "^2.0.0", - "y18n": "^4.0.0", - "yargs-parser": "^13.1.2" + "immediate": "~3.0.5" } }, - "node_modules/mocha/node_modules/yargs-parser": { - "version": "13.1.2", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.2.tgz", - "integrity": "sha512-3lbsNRf/j+A4QuSZfDRA7HRSfWrzO0YjqTJd5kjAq37Zep1CEgaYmrH9Q3GwPiB9cHyd1Y1UwggGhJGoxipbzg==", + "node_modules/load-json-file": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-4.0.0.tgz", + "integrity": "sha512-Kx8hMakjX03tiGTLAIdJ+lL0htKnXjEZN6hk/tozf/WOuYGdZBJrZ+rCJRbVCugsjB3jMLn9746NsQIf5VjBMw==", "dev": true, "dependencies": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" + "graceful-fs": "^4.1.2", + "parse-json": "^4.0.0", + "pify": "^3.0.0", + "strip-bom": "^3.0.0" + }, + "engines": { + "node": ">=4" } }, - "node_modules/mocha/node_modules/yargs/node_modules/string-width": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", - "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", + "node_modules/locate-path": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", "dev": true, "dependencies": { - "emoji-regex": "^7.0.1", - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^5.1.0" + "p-locate": "^5.0.0" }, "engines": { - "node": ">=6" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/mock-fs": { - "version": "4.13.0", - "resolved": "https://registry.npmjs.org/mock-fs/-/mock-fs-4.13.0.tgz", - "integrity": "sha512-DD0vOdofJdoaRNtnWcrXe6RQbpHkPPmtqGq14uRX0F8ZKJ5nv89CVTYl/BZdppDxBDaV0hl75htg3abpEWlPZA==", - "dev": true - }, - "node_modules/module-not-found-error": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/module-not-found-error/-/module-not-found-error-1.0.1.tgz", - "integrity": "sha1-z4tP9PKWQGdNbN0CsOO8UjwrvcA=", - "dev": true + "node_modules/lodash": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" }, - "node_modules/moment": { - "version": "2.29.4", - "resolved": "https://registry.npmjs.org/moment/-/moment-2.29.4.tgz", - "integrity": "sha512-5LC9SOxjSc2HF6vO2CyuTDNivEdoz2IvyJJGj6X8DJ0eFyfszE0QiEd+iXmBvUP3WHxSjFH/vIsA0EN00cgr8w==", + "node_modules/lodash.defaults": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/lodash.defaults/-/lodash.defaults-4.2.0.tgz", + "integrity": "sha512-qjxPLHd3r5DnsdGacqOMU6pb/avJzdh9tFX2ymgoZE27BmjXrNy/y4LoaiTeAb+O3gL8AfpJGtqfX/ae2leYYQ==" + }, + "node_modules/lodash.difference": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.difference/-/lodash.difference-4.5.0.tgz", + "integrity": "sha512-dS2j+W26TQ7taQBGN8Lbbq04ssV3emRw4NY58WErlTO29pIqS0HmoT5aJ9+TUQ1N3G+JOZSji4eugsWwGp9yPA==" + }, + "node_modules/lodash.flatten": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/lodash.flatten/-/lodash.flatten-4.4.0.tgz", + "integrity": "sha512-C5N2Z3DgnnKr0LOpv/hKCgKdb7ZZwafIrsesve6lmzvZIRZRGaZ/l6Q8+2W7NaT+ZwO3fFlSCzCzrDCFdJfZ4g==" + }, + "node_modules/lodash.flattendeep": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/lodash.flattendeep/-/lodash.flattendeep-4.4.0.tgz", + "integrity": "sha512-uHaJFihxmJcEX3kT4I23ABqKKalJ/zDrDg0lsFtc1h+3uw49SIJ5beyhx5ExVRti3AvKoOJngIj7xz3oylPdWQ==", + "dev": true + }, + "node_modules/lodash.get": { + "version": "4.4.2", + "resolved": "https://registry.npmjs.org/lodash.get/-/lodash.get-4.4.2.tgz", + "integrity": "sha512-z+Uw/vLuy6gQe8cfaFWD7p0wVv8fJl3mbzXh33RS+0oW2wvUqiRXiQ69gLWSLpgB5/6sU+r6BlQR0MBILadqTQ==" + }, + "node_modules/lodash.includes": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/lodash.includes/-/lodash.includes-4.3.0.tgz", + "integrity": "sha512-W3Bx6mdkRTGtlJISOvVD/lbqjTlPPUDTMnlXZFnVwi9NKJ6tiAk6LVdlhZMm17VZisqhKcgzpO5Wz91PCt5b0w==" + }, + "node_modules/lodash.isboolean": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/lodash.isboolean/-/lodash.isboolean-3.0.3.tgz", + "integrity": "sha512-Bz5mupy2SVbPHURB98VAcw+aHh4vRV5IPNhILUCsOzRmsTmSQ17jIuqopAentWoehktxGd9e/hbIXq980/1QJg==" + }, + "node_modules/lodash.isinteger": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/lodash.isinteger/-/lodash.isinteger-4.0.4.tgz", + "integrity": "sha512-DBwtEWN2caHQ9/imiNeEA5ys1JoRtRfY3d7V9wkqtbycnAmTvRRmbHKDV4a0EYc678/dia0jrte4tjYwVBaZUA==" + }, + "node_modules/lodash.isnumber": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/lodash.isnumber/-/lodash.isnumber-3.0.3.tgz", + "integrity": "sha512-QYqzpfwO3/CWf3XP+Z+tkQsfaLL/EnUlXWVkIk5FUPc4sBdTehEqZONuyRt2P67PXAk+NXmTBcc97zw9t1FQrw==" + }, + "node_modules/lodash.isplainobject": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz", + "integrity": "sha512-oSXzaWypCMHkPC3NvBEaPHf0KsA5mvPrOPgQWDsbg8n7orZ290M0BmC/jgRZ4vcJ6DTAhjrsSYgdsW/F+MFOBA==" + }, + "node_modules/lodash.isstring": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/lodash.isstring/-/lodash.isstring-4.0.1.tgz", + "integrity": "sha512-0wJxfxH1wgO3GrbuP+dTTk7op+6L41QCXbGINEmD+ny/G/eCqGzxyCsh7159S+mgDDcoarnBw6PC1PS5+wUGgw==" + }, + "node_modules/lodash.merge": { + "version": "4.6.2", + "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", + "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", + "dev": true + }, + "node_modules/lodash.once": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/lodash.once/-/lodash.once-4.1.1.tgz", + "integrity": "sha512-Sb487aTOCr9drQVL8pIxOzVhafOjZN9UU54hiN8PU3uAiSV7lx1yYNpbNmex2PK6dSJoNTSJUUswT651yww3Mg==" + }, + "node_modules/lodash.union": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/lodash.union/-/lodash.union-4.6.0.tgz", + "integrity": "sha512-c4pB2CdGrGdjMKYLA+XiRDO7Y0PRQbm/Gzg8qMj+QH+pFVAoTp5sBpO0odL3FjoPCGjK96p6qsP+yQoiLoOBcw==" + }, + "node_modules/log-driver": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/log-driver/-/log-driver-1.2.7.tgz", + "integrity": "sha512-U7KCmLdqsGHBLeWqYlFA0V0Sl6P08EE1ZrmA9cxjUE0WVqT9qnyVDPz1kzpFEP0jdJuFnasWIfSd7fsaNXkpbg==", + "dev": true, "engines": { - "node": "*" + "node": ">=0.8.6" } }, - "node_modules/mongodb": { - "version": "2.2.36", - "resolved": "https://registry.npmjs.org/mongodb/-/mongodb-2.2.36.tgz", - "integrity": "sha512-P2SBLQ8Z0PVx71ngoXwo12+FiSfbNfGOClAao03/bant5DgLNkOPAck5IaJcEk4gKlQhDEURzfR3xuBG1/B+IA==", + "node_modules/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, "dependencies": { - "es6-promise": "3.2.1", - "mongodb-core": "2.1.20", - "readable-stream": "2.2.7" + "chalk": "^4.1.0", + "is-unicode-supported": "^0.1.0" }, "engines": { - "node": ">=0.10.3" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/mongodb-connection-string-url": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/mongodb-connection-string-url/-/mongodb-connection-string-url-2.6.0.tgz", - "integrity": "sha512-WvTZlI9ab0QYtTYnuMLgobULWhokRjtC7db9LtcVfJ+Hsnyr5eo6ZtNAt3Ly24XZScGMelOcGtm7lSn0332tPQ==", + "node_modules/lolex": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/lolex/-/lolex-4.2.0.tgz", + "integrity": "sha512-gKO5uExCXvSm6zbF562EvM+rd1kQDnB9AZBbiQVzf1ZmdDpxUSvpnAaVOP83N/31mRK8Ml8/VE8DMvsAZQ+7wg==", + "dev": true + }, + "node_modules/loupe": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/loupe/-/loupe-2.3.7.tgz", + "integrity": "sha512-zSMINGVYkdpYSOBmLi0D1Uo7JU9nVdQKrHxC8eYlV+9YKK9WePqAlL7lSlorG/U2Fw1w0hTBmaa/jrQ3UbPHtA==", "dev": true, "dependencies": { - "@types/whatwg-url": "^8.2.1", - "whatwg-url": "^11.0.0" + "get-func-name": "^2.0.1" } }, - "node_modules/mongodb-connection-string-url/node_modules/tr46": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-3.0.0.tgz", - "integrity": "sha512-l7FvfAHlcmulp8kr+flpQZmVwtu7nfRV7NZujtN0OqES8EL4O4e0qqzL0DC5gAvx/ZC/9lk6rhcUwYvkBnBnYA==", + "node_modules/lru-cache": { + "version": "7.18.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", + "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", + "engines": { + "node": ">=12" + } + }, + "node_modules/make-dir": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", "dev": true, + "license": "MIT", "dependencies": { - "punycode": "^2.1.1" + "semver": "^6.0.0" }, "engines": { - "node": ">=12" + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/mongodb-connection-string-url/node_modules/webidl-conversions": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-7.0.0.tgz", - "integrity": "sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==", + "node_modules/make-dir/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/map-stream": { + "version": "0.0.7", + "resolved": "https://registry.npmjs.org/map-stream/-/map-stream-0.0.7.tgz", + "integrity": "sha512-C0X0KQmGm3N2ftbTGBhSyuydQ+vV1LC3f3zPvT3RXHXNZrvfPZcoXp/N5DOa8vedX/rTMm2CjTtivFg2STJMRQ==" + }, + "node_modules/math-intrinsics": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/math-intrinsics/-/math-intrinsics-1.1.0.tgz", + "integrity": "sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==", + "license": "MIT", "engines": { - "node": ">=12" + "node": ">= 0.4" } }, - "node_modules/mongodb-connection-string-url/node_modules/whatwg-url": { - "version": "11.0.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-11.0.0.tgz", - "integrity": "sha512-RKT8HExMpoYx4igMiVMY83lN6UeITKJlBQ+vR/8ZJ8OCdSiN3RwCq+9gH0+Xzj0+5IrM6i4j/6LuvzbZIQgEcQ==", - "dev": true, - "dependencies": { - "tr46": "^3.0.0", - "webidl-conversions": "^7.0.0" - }, + "node_modules/media-typer": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", + "integrity": "sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==", "engines": { - "node": ">=12" + "node": ">= 0.6" } }, - "node_modules/mongodb-core": { - "version": "2.1.20", - "resolved": "https://registry.npmjs.org/mongodb-core/-/mongodb-core-2.1.20.tgz", - "integrity": "sha512-IN57CX5/Q1bhDq6ShAR6gIv4koFsZP7L8WOK1S0lR0pVDQaScffSMV5jxubLsmZ7J+UdqmykKw4r9hG3XQEGgQ==", - "dependencies": { - "bson": "~1.0.4", - "require_optional": "~1.0.0" + "node_modules/memory-pager": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/memory-pager/-/memory-pager-1.5.0.tgz", + "integrity": "sha512-ZS4Bp4r/Zoeq6+NLJpP+0Zzm0pR8whtGPf1XExKLJBAczGMnSi3It14OiNCStjQjM6NU1okjQGSxgEZN8eBYKg==", + "optional": true + }, + "node_modules/memorystream": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/memorystream/-/memorystream-0.3.1.tgz", + "integrity": "sha512-S3UwM3yj5mtUSEfP41UZmt/0SCoVYUcU1rkXv+BQ5Ig8ndL4sPoJNBUJERafdPb5jjHJGuMgytgKvKIf58XNBw==", + "dev": true, + "engines": { + "node": ">= 0.10.0" } }, - "node_modules/mongodb-memory-server": { - "version": "9.1.6", - "resolved": "https://registry.npmjs.org/mongodb-memory-server/-/mongodb-memory-server-9.1.6.tgz", - "integrity": "sha512-gzcpgGYlPhuKmria37W+bvYy6W+OkX2UVG7MoP41OWFvQv2Hn7A+fLXkV+lsMmhog1lMQprdV6AR+gixgheLaw==", + "node_modules/meow": { + "version": "12.1.1", + "resolved": "https://registry.npmjs.org/meow/-/meow-12.1.1.tgz", + "integrity": "sha512-BhXM0Au22RwUneMPwSCnyhTOizdWoIEPU9sp0Aqa1PnDMR5Wv2FGXYDjuzJEIX+Eo2Rb8xuYe5jrnm5QowQFkw==", "dev": true, - "hasInstallScript": true, - "dependencies": { - "mongodb-memory-server-core": "9.1.6", - "tslib": "^2.6.2" - }, "engines": { - "node": ">=14.20.1" + "node": ">=16.10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/mongodb-memory-server-core": { - "version": "9.1.6", - "resolved": "https://registry.npmjs.org/mongodb-memory-server-core/-/mongodb-memory-server-core-9.1.6.tgz", - "integrity": "sha512-3H/dq5II+XcSbK80hicMw4zFlDxcpjt4oWJq76RlOVuLoaf3AFqVheR6Vqx9ymlIqER4Jni58FMCIIRbesia1A==", + "node_modules/merge-descriptors": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.3.tgz", + "integrity": "sha512-gaNvAS7TZ897/rVaZ0nMtAyxNyi/pdbjbAwUpFQpN70GqnVfOiXpeUUMKRBmzXaSQ8DdTX4/0ms62r2K+hE6mQ==", + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/merge-source-map": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/merge-source-map/-/merge-source-map-1.1.0.tgz", + "integrity": "sha512-Qkcp7P2ygktpMPh2mCQZaf3jhN6D3Z/qVZHSdWvQ+2Ef5HgRAPBO57A77+ENm0CPx2+1Ce/MYKi3ymqdfuqibw==", "dev": true, "dependencies": { - "async-mutex": "^0.4.0", - "camelcase": "^6.3.0", - "debug": "^4.3.4", - "find-cache-dir": "^3.3.2", - "follow-redirects": "^1.15.3", - "https-proxy-agent": "^7.0.2", - "mongodb": "^5.9.1", - "new-find-package-json": "^2.0.0", - "semver": "^7.5.4", - "tar-stream": "^3.0.0", - "tslib": "^2.6.2", - "yauzl": "^2.10.0" - }, - "engines": { - "node": ">=14.20.1" + "source-map": "^0.6.1" } }, - "node_modules/mongodb-memory-server-core/node_modules/bson": { - "version": "5.5.1", - "resolved": "https://registry.npmjs.org/bson/-/bson-5.5.1.tgz", - "integrity": "sha512-ix0EwukN2EpC0SRWIj/7B5+A6uQMQy6KMREI9qQqvgpkV2frH63T0UDVd1SYedL6dNCmDBYB3QtXi4ISk9YT+g==", + "node_modules/merge2": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", + "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", "dev": true, "engines": { - "node": ">=14.20.1" + "node": ">= 8" } }, - "node_modules/mongodb-memory-server-core/node_modules/debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "node_modules/methods": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", + "integrity": "sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mgrs": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/mgrs/-/mgrs-1.0.0.tgz", + "integrity": "sha512-awNbTOqCxK1DBGjalK3xqWIstBZgN6fxsMSiXLs9/spqWkF2pAhb2rrYCFSsr1/tT7PhcDGjZndG8SWYn0byYA==" + }, + "node_modules/micromatch": { + "version": "4.0.7", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.7.tgz", + "integrity": "sha512-LPP/3KorzCwBxfeUuZmaR6bG2kdeHSbe0P2tY3FLRU4vYrjYz5hI4QZwV0njUx3jeuKe67YukQ1LSPZBKDqO/Q==", "dev": true, "dependencies": { - "ms": "2.1.2" + "braces": "^3.0.3", + "picomatch": "^2.3.1" }, "engines": { - "node": ">=6.0" - }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } + "node": ">=8.6" } }, - "node_modules/mongodb-memory-server-core/node_modules/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, - "dependencies": { - "yallist": "^4.0.0" + "node_modules/mime": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", + "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", + "license": "MIT", + "bin": { + "mime": "cli.js" }, "engines": { - "node": ">=10" + "node": ">=4" } }, - "node_modules/mongodb-memory-server-core/node_modules/mongodb": { - "version": "5.9.2", - "resolved": "https://registry.npmjs.org/mongodb/-/mongodb-5.9.2.tgz", - "integrity": "sha512-H60HecKO4Bc+7dhOv4sJlgvenK4fQNqqUIlXxZYQNbfEWSALGAwGoyJd/0Qwk4TttFXUOHJ2ZJQe/52ScaUwtQ==", - "dev": true, + "node_modules/mime-db": { + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mime-types": { + "version": "2.1.35", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", + "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", "dependencies": { - "bson": "^5.5.0", - "mongodb-connection-string-url": "^2.6.0", - "socks": "^2.7.1" + "mime-db": "1.52.0" }, "engines": { - "node": ">=14.20.1" - }, - "optionalDependencies": { - "@mongodb-js/saslprep": "^1.1.0" - }, - "peerDependencies": { - "@aws-sdk/credential-providers": "^3.188.0", - "@mongodb-js/zstd": "^1.0.0", - "kerberos": "^1.0.0 || ^2.0.0", - "mongodb-client-encryption": ">=2.3.0 <3", - "snappy": "^7.2.2" - }, - "peerDependenciesMeta": { - "@aws-sdk/credential-providers": { - "optional": true - }, - "@mongodb-js/zstd": { - "optional": true - }, - "kerberos": { - "optional": true - }, - "mongodb-client-encryption": { - "optional": true - }, - "snappy": { - "optional": true - } + "node": ">= 0.6" } }, - "node_modules/mongodb-memory-server-core/node_modules/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 + "node_modules/mimic-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", + "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", + "optional": true, + "engines": { + "node": ">=6" + } }, - "node_modules/mongodb-memory-server-core/node_modules/semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", - "dev": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, + "node_modules/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==", + "optional": true, "engines": { "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/mongodb-memory-server-core/node_modules/tar-stream": { - "version": "3.1.6", - "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-3.1.6.tgz", - "integrity": "sha512-B/UyjYwPpMBv+PaFSWAmtYjwdrlEaZQEhMIBFNC5oEG8lpiW8XjcSdmEaClj28ArfKScKHs2nshz3k2le6crsg==", + "node_modules/minimatch": { + "version": "9.0.3", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", + "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", "dev": true, + "license": "ISC", "dependencies": { - "b4a": "^1.6.4", - "fast-fifo": "^1.2.0", - "streamx": "^2.15.0" + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/mongodb-memory-server-core/node_modules/tslib": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz", - "integrity": "sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==", - "dev": true - }, - "node_modules/mongodb-memory-server/node_modules/tslib": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz", - "integrity": "sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==", - "dev": true + "node_modules/minimist": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", + "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, - "node_modules/mongodb-migrations": { - "version": "0.8.5", - "resolved": "https://registry.npmjs.org/mongodb-migrations/-/mongodb-migrations-0.8.5.tgz", - "integrity": "sha1-0CfvEPuwHxc3NfALdLoH3PPLsBc=", - "dependencies": { - "bluebird": "^3.4.1", - "lodash": "^4.13.0", - "mkdirp": "^0.5.1", - "mongodb": "^2.2.1", - "nomnom": "^1.6.2" - }, - "bin": { - "mm": "bin/mm" + "node_modules/minipass": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.2.tgz", + "integrity": "sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==", + "dev": true, + "engines": { + "node": ">=16 || 14 >=14.17" } }, - "node_modules/mongodb-migrations/node_modules/mkdirp": { + "node_modules/mkdirp": { "version": "0.5.6", "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", @@ -7589,211 +8047,380 @@ "mkdirp": "bin/cmd.js" } }, - "node_modules/mongodb/node_modules/readable-stream": { - "version": "2.2.7", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.2.7.tgz", - "integrity": "sha1-BwV6y+JGeyIELTb5jFrVBwVOlbE=", - "dependencies": { - "buffer-shims": "~1.0.0", - "core-util-is": "~1.0.0", - "inherits": "~2.0.1", - "isarray": "~1.0.0", - "process-nextick-args": "~1.0.6", - "string_decoder": "~1.0.0", - "util-deprecate": "~1.0.1" - } - }, - "node_modules/mongodb/node_modules/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==" - }, - "node_modules/mongodb/node_modules/string_decoder": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.0.3.tgz", - "integrity": "sha512-4AH6Z5fzNNBcH+6XDMfA/BTt87skxqJlO0lAh3Dker5zThcAxG6mKz+iGu308UKoPPQ8Dcqx/4JhujzltRa+hQ==", - "dependencies": { - "safe-buffer": "~5.1.0" - } + "node_modules/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==", + "optional": true }, - "node_modules/mongoose": { - "version": "4.13.21", - "resolved": "https://registry.npmjs.org/mongoose/-/mongoose-4.13.21.tgz", - "integrity": "sha512-0VZtQu1rSUPwUtbb7zh6CymI0nNkVInOIDbtWNlna070qnUO14On8PpSVSwlx3gwmkKL2OkP4ioCj5YHC6trMg==", + "node_modules/mocha": { + "version": "10.8.2", + "resolved": "https://registry.npmjs.org/mocha/-/mocha-10.8.2.tgz", + "integrity": "sha512-VZlYo/WE8t1tstuRmqgeyBgCbJc/lEdopaa+axcKzTBJ+UIdlAB9XnmvTCAH4pwR4ElNInaedhEBmZD8iCSVEg==", + "dev": true, + "license": "MIT", "dependencies": { - "async": "2.6.0", - "bson": "~1.0.4", - "hooks-fixed": "2.0.2", - "kareem": "1.5.0", - "lodash.get": "4.4.2", - "mongodb": "2.2.34", - "mpath": "0.5.1", - "mpromise": "0.5.5", - "mquery": "2.3.3", - "ms": "2.0.0", - "muri": "1.3.0", - "regexp-clone": "0.0.1", - "sliced": "1.0.1" + "ansi-colors": "^4.1.3", + "browser-stdout": "^1.3.1", + "chokidar": "^3.5.3", + "debug": "^4.3.5", + "diff": "^5.2.0", + "escape-string-regexp": "^4.0.0", + "find-up": "^5.0.0", + "glob": "^8.1.0", + "he": "^1.2.0", + "js-yaml": "^4.1.0", + "log-symbols": "^4.1.0", + "minimatch": "^5.1.6", + "ms": "^2.1.3", + "serialize-javascript": "^6.0.2", + "strip-json-comments": "^3.1.1", + "supports-color": "^8.1.1", + "workerpool": "^6.5.1", + "yargs": "^16.2.0", + "yargs-parser": "^20.2.9", + "yargs-unparser": "^2.0.0" + }, + "bin": { + "_mocha": "bin/_mocha", + "mocha": "bin/mocha.js" }, "engines": { - "node": ">=0.6.19" + "node": ">= 14.0.0" } }, - "node_modules/mongoose-beautiful-unique-validation": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/mongoose-beautiful-unique-validation/-/mongoose-beautiful-unique-validation-7.1.1.tgz", - "integrity": "sha512-fprzp8nY9Qjg0+RZFMl7gVmbINRt2H53fpqyjJWwPO7nxJ9RZZB/Lo3y+mXaMP4nNMOeoJb2v3dNou6h+iLh8w==", + "node_modules/mocha/node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "dev": true + }, + "node_modules/mocha/node_modules/glob": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/glob/-/glob-8.1.0.tgz", + "integrity": "sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ==", + "deprecated": "Glob versions prior to v9 are no longer supported", + "dev": true, + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^5.0.1", + "once": "^1.3.0" + }, "engines": { - "node": ">=0.10.0" + "node": ">=12" }, - "peerDependencies": { - "mongoose": ">=4.11.4" + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/mongoose/node_modules/async": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/async/-/async-2.6.0.tgz", - "integrity": "sha512-xAfGg1/NTLBBKlHFmnd7PlmUW9KhVQIUuSrYem9xzFUZy13ScvtyGGejaae9iAVRiRq9+Cx7DPFaAAhCpyxyPw==", + "node_modules/mocha/node_modules/js-yaml": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", + "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", + "dev": true, "dependencies": { - "lodash": "^4.14.0" + "argparse": "^2.0.1" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" } }, - "node_modules/mongoose/node_modules/mongodb": { - "version": "2.2.34", - "resolved": "https://registry.npmjs.org/mongodb/-/mongodb-2.2.34.tgz", - "integrity": "sha1-o09Zu+thdUrsQy3nLD/iFSakTBo=", + "node_modules/mocha/node_modules/minimatch": { + "version": "5.1.6", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz", + "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==", + "dev": true, + "license": "ISC", "dependencies": { - "es6-promise": "3.2.1", - "mongodb-core": "2.1.18", - "readable-stream": "2.2.7" + "brace-expansion": "^2.0.1" }, "engines": { - "node": ">=0.10.3" + "node": ">=10" } }, - "node_modules/mongoose/node_modules/mongodb-core": { - "version": "2.1.18", - "resolved": "https://registry.npmjs.org/mongodb-core/-/mongodb-core-2.1.18.tgz", - "integrity": "sha1-TEYTm986HwMt7ZHbSfOO7AFlkFA=", - "dependencies": { - "bson": "~1.0.4", - "require_optional": "~1.0.0" - } + "node_modules/mocha/node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "dev": true }, - "node_modules/mongoose/node_modules/readable-stream": { - "version": "2.2.7", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.2.7.tgz", - "integrity": "sha1-BwV6y+JGeyIELTb5jFrVBwVOlbE=", + "node_modules/mocha/node_modules/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, "dependencies": { - "buffer-shims": "~1.0.0", - "core-util-is": "~1.0.0", - "inherits": "~2.0.1", - "isarray": "~1.0.0", - "process-nextick-args": "~1.0.6", - "string_decoder": "~1.0.0", - "util-deprecate": "~1.0.1" + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/supports-color?sponsor=1" } }, - "node_modules/mongoose/node_modules/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==" + "node_modules/mock-fs": { + "version": "4.14.0", + "resolved": "https://registry.npmjs.org/mock-fs/-/mock-fs-4.14.0.tgz", + "integrity": "sha512-qYvlv/exQ4+svI3UOvPUpLDF0OMX5euvUH0Ny4N5QyRyhNdgAgUrVH3iUINSzEPLvx0kbo/Bp28GJKIqvE7URw==", + "dev": true, + "license": "MIT" }, - "node_modules/mongoose/node_modules/string_decoder": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.0.3.tgz", - "integrity": "sha512-4AH6Z5fzNNBcH+6XDMfA/BTt87skxqJlO0lAh3Dker5zThcAxG6mKz+iGu308UKoPPQ8Dcqx/4JhujzltRa+hQ==", - "dependencies": { - "safe-buffer": "~5.1.0" - } + "node_modules/module-not-found-error": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/module-not-found-error/-/module-not-found-error-1.0.1.tgz", + "integrity": "sha512-pEk4ECWQXV6z2zjhRZUongnLJNUeGQJ3w6OQ5ctGwD+i5o93qjRQUk2Rt6VdNeu3sEP0AB4LcfvdebpxBRVr4g==", + "dev": true }, - "node_modules/mpath": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/mpath/-/mpath-0.5.1.tgz", - "integrity": "sha512-H8OVQ+QEz82sch4wbODFOz+3YQ61FYz/z3eJ5pIdbMEaUzDqA268Wd+Vt4Paw9TJfvDgVKaayC0gBzMIw2jhsg==", + "node_modules/moment": { + "version": "2.30.1", + "resolved": "https://registry.npmjs.org/moment/-/moment-2.30.1.tgz", + "integrity": "sha512-uEmtNhbDOrWPFS+hdjFCBfy9f2YoyzRpwcl+DqpC6taX21FzsTLQVbMV/W7PzNSX6x/bhC1zA3c2UQ5NzH6how==", + "license": "MIT", "engines": { - "node": ">=4.0.0" + "node": "*" } }, - "node_modules/mpromise": { - "version": "0.5.5", - "resolved": "https://registry.npmjs.org/mpromise/-/mpromise-0.5.5.tgz", - "integrity": "sha1-9bJCWddjrMIlewoMjG2Gb9UXMuY=" - }, - "node_modules/mquery": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/mquery/-/mquery-2.3.3.tgz", - "integrity": "sha512-NC8L14kn+qxJbbJ1gbcEMDxF0sC3sv+1cbRReXXwVvowcwY1y9KoVZFq0ebwARibsadu8lx8nWGvm3V0Pf0ZWQ==", + "node_modules/mongodb": { + "version": "4.17.2", + "resolved": "https://registry.npmjs.org/mongodb/-/mongodb-4.17.2.tgz", + "integrity": "sha512-mLV7SEiov2LHleRJPMPrK2PMyhXFZt2UQLC4VD4pnth3jMjYKHhtqfwwkkvS/NXuo/Fp3vbhaNcXrIDaLRb9Tg==", "dependencies": { - "bluebird": "3.5.0", - "debug": "2.6.9", - "regexp-clone": "0.0.1", - "sliced": "0.0.5" + "bson": "^4.7.2", + "mongodb-connection-string-url": "^2.6.0", + "socks": "^2.7.1" + }, + "engines": { + "node": ">=12.9.0" + }, + "optionalDependencies": { + "@aws-sdk/credential-providers": "^3.186.0", + "@mongodb-js/saslprep": "^1.1.0" } }, - "node_modules/mquery/node_modules/bluebird": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.5.0.tgz", - "integrity": "sha1-eRQg1/VR7qKJdFOop3ZT+WYG1nw=" - }, - "node_modules/mquery/node_modules/sliced": { - "version": "0.0.5", - "resolved": "https://registry.npmjs.org/sliced/-/sliced-0.0.5.tgz", - "integrity": "sha1-XtwETKTrb3gW1Qui/GPiXY/kcH8=" - }, - "node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + "node_modules/mongodb-connection-string-url": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/mongodb-connection-string-url/-/mongodb-connection-string-url-2.6.0.tgz", + "integrity": "sha512-WvTZlI9ab0QYtTYnuMLgobULWhokRjtC7db9LtcVfJ+Hsnyr5eo6ZtNAt3Ly24XZScGMelOcGtm7lSn0332tPQ==", + "dependencies": { + "@types/whatwg-url": "^8.2.1", + "whatwg-url": "^11.0.0" + } }, - "node_modules/multer": { - "version": "1.4.5-lts.1", - "resolved": "https://registry.npmjs.org/multer/-/multer-1.4.5-lts.1.tgz", - "integrity": "sha512-ywPWvcDMeH+z9gQq5qYHCCy+ethsk4goepZ45GLD63fOu0YcNecQxi64nDs3qluZB+murG3/D4dJ7+dGctcCQQ==", + "node_modules/mongodb-memory-server": { + "version": "9.5.0", + "resolved": "https://registry.npmjs.org/mongodb-memory-server/-/mongodb-memory-server-9.5.0.tgz", + "integrity": "sha512-In3zRT40cLlVtpy7FK6b96Lby6JBAdXj8Kf9YrH4p1Aa2X4ptojq7SmiRR3x47Lo0/UCXXIwhJpkdbYY8kRZAw==", + "dev": true, + "hasInstallScript": true, + "license": "MIT", "dependencies": { - "append-field": "^1.0.0", - "busboy": "^1.0.0", - "concat-stream": "^1.5.2", - "mkdirp": "^0.5.4", - "object-assign": "^4.1.1", - "type-is": "^1.6.4", - "xtend": "^4.0.0" + "mongodb-memory-server-core": "9.5.0", + "tslib": "^2.6.3" }, "engines": { - "node": ">= 6.0.0" + "node": ">=14.20.1" } }, - "node_modules/multer/node_modules/mkdirp": { - "version": "0.5.6", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", - "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", + "node_modules/mongodb-memory-server-core": { + "version": "9.5.0", + "resolved": "https://registry.npmjs.org/mongodb-memory-server-core/-/mongodb-memory-server-core-9.5.0.tgz", + "integrity": "sha512-Jb/V80JeYAKWaF4bPFme7SmTR6ew1PWgkpPUepLDfRraeN49i1cruxICeA4zz4T33W/o31N+zazP8wI8ebf7yw==", + "dev": true, + "license": "MIT", "dependencies": { - "minimist": "^1.2.6" + "async-mutex": "^0.4.1", + "camelcase": "^6.3.0", + "debug": "^4.3.7", + "find-cache-dir": "^3.3.2", + "follow-redirects": "^1.15.9", + "https-proxy-agent": "^7.0.5", + "mongodb": "^5.9.2", + "new-find-package-json": "^2.0.0", + "semver": "^7.6.3", + "tar-stream": "^3.1.7", + "tslib": "^2.6.3", + "yauzl": "^3.1.3" }, - "bin": { - "mkdirp": "bin/cmd.js" + "engines": { + "node": ">=14.20.1" } }, - "node_modules/muri": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/muri/-/muri-1.3.0.tgz", - "integrity": "sha512-FiaFwKl864onHFFUV/a2szAl7X0fxVlSKNdhTf+BM8i8goEgYut8u5P9MqQqIYwvaMxjzVESsoEm/2kfkFH1rg==" - }, - "node_modules/mute-stream": { - "version": "0.0.8", - "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz", - "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==", - "optional": true + "node_modules/mongodb-memory-server-core/node_modules/bson": { + "version": "5.5.1", + "resolved": "https://registry.npmjs.org/bson/-/bson-5.5.1.tgz", + "integrity": "sha512-ix0EwukN2EpC0SRWIj/7B5+A6uQMQy6KMREI9qQqvgpkV2frH63T0UDVd1SYedL6dNCmDBYB3QtXi4ISk9YT+g==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": ">=14.20.1" + } }, - "node_modules/napi-build-utils": { - "version": "1.0.2", + "node_modules/mongodb-memory-server-core/node_modules/debug": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.0.tgz", + "integrity": "sha512-6WTZ/IxCY/T6BALoZHaE4ctp9xm+Z5kY/pzYaCHRFeyVhojxlrm+46y68HA6hr0TcwEssoxNiDEUJQjfPZ/RYA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ms": "^2.1.3" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/mongodb-memory-server-core/node_modules/mongodb": { + "version": "5.9.2", + "resolved": "https://registry.npmjs.org/mongodb/-/mongodb-5.9.2.tgz", + "integrity": "sha512-H60HecKO4Bc+7dhOv4sJlgvenK4fQNqqUIlXxZYQNbfEWSALGAwGoyJd/0Qwk4TttFXUOHJ2ZJQe/52ScaUwtQ==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "bson": "^5.5.0", + "mongodb-connection-string-url": "^2.6.0", + "socks": "^2.7.1" + }, + "engines": { + "node": ">=14.20.1" + }, + "optionalDependencies": { + "@mongodb-js/saslprep": "^1.1.0" + }, + "peerDependencies": { + "@aws-sdk/credential-providers": "^3.188.0", + "@mongodb-js/zstd": "^1.0.0", + "kerberos": "^1.0.0 || ^2.0.0", + "mongodb-client-encryption": ">=2.3.0 <3", + "snappy": "^7.2.2" + }, + "peerDependenciesMeta": { + "@aws-sdk/credential-providers": { + "optional": true + }, + "@mongodb-js/zstd": { + "optional": true + }, + "kerberos": { + "optional": true + }, + "mongodb-client-encryption": { + "optional": true + }, + "snappy": { + "optional": true + } + } + }, + "node_modules/mongodb-memory-server-core/node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "dev": true, + "license": "MIT" + }, + "node_modules/mongodb-memory-server-core/node_modules/tar-stream": { + "version": "3.1.7", + "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-3.1.7.tgz", + "integrity": "sha512-qJj60CXt7IU1Ffyc3NJMjh6EkuCFej46zUqJ4J7pqYlThyd9bO0XBTmcOIhSzZJVWfsLks0+nle/j538YAW9RQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "b4a": "^1.6.4", + "fast-fifo": "^1.2.0", + "streamx": "^2.15.0" + } + }, + "node_modules/mongoose": { + "version": "6.13.8", + "resolved": "https://registry.npmjs.org/mongoose/-/mongoose-6.13.8.tgz", + "integrity": "sha512-JHKco/533CyVrqCbyQsnqMpLn8ZCiKrPDTd2mvo2W7ygIvhygWjX2wj+RPjn6upZZgw0jC6U51RD7kUsyK8NBg==", + "license": "MIT", + "dependencies": { + "bson": "^4.7.2", + "kareem": "2.5.1", + "mongodb": "4.17.2", + "mpath": "0.9.0", + "mquery": "4.0.3", + "ms": "2.1.3", + "sift": "16.0.1" + }, + "engines": { + "node": ">=12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/mongoose" + } + }, + "node_modules/mongoose/node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==" + }, + "node_modules/mpath": { + "version": "0.9.0", + "resolved": "https://registry.npmjs.org/mpath/-/mpath-0.9.0.tgz", + "integrity": "sha512-ikJRQTk8hw5DEoFVxHG1Gn9T/xcjtdnOKIU1JTmGjZZlg9LST2mBLmcX3/ICIbgJydT2GOc15RnNy5mHmzfSew==", + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/mquery": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/mquery/-/mquery-4.0.3.tgz", + "integrity": "sha512-J5heI+P08I6VJ2Ky3+33IpCdAvlYGTSUjwTPxkAr8i8EoduPMBX2OY/wa3IKZIQl7MU4SbFk8ndgSKyB/cl1zA==", + "dependencies": { + "debug": "4.x" + }, + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" + }, + "node_modules/multer": { + "version": "1.4.5-lts.1", + "resolved": "https://registry.npmjs.org/multer/-/multer-1.4.5-lts.1.tgz", + "integrity": "sha512-ywPWvcDMeH+z9gQq5qYHCCy+ethsk4goepZ45GLD63fOu0YcNecQxi64nDs3qluZB+murG3/D4dJ7+dGctcCQQ==", + "dependencies": { + "append-field": "^1.0.0", + "busboy": "^1.0.0", + "concat-stream": "^1.5.2", + "mkdirp": "^0.5.4", + "object-assign": "^4.1.1", + "type-is": "^1.6.4", + "xtend": "^4.0.0" + }, + "engines": { + "node": ">= 6.0.0" + } + }, + "node_modules/mute-stream": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz", + "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==", + "optional": true + }, + "node_modules/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==" + "integrity": "sha512-ONmRUqK7zj7DWX0D9ADe03wbwOBZxNAfF20PlGfCWQcD3+/MakShIHrMqx9YwPTfxDdF1zLeL+RGZiR9kGMLdg==", + "optional": true }, "node_modules/natural-compare": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", - "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=", + "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", "dev": true }, "node_modules/negotiator": { @@ -7815,6 +8442,7 @@ "resolved": "https://registry.npmjs.org/new-find-package-json/-/new-find-package-json-2.0.0.tgz", "integrity": "sha512-lDcBsjBSMlj3LXH2v/FW3txlh2pYTjmbOXPYJD93HI5EwuLzI11tdHSIpUMmfq/IOsldj4Ps8M8flhm+pCK4Ew==", "dev": true, + "license": "MIT", "dependencies": { "debug": "^4.3.4" }, @@ -7822,29 +8450,6 @@ "node": ">=12.22.0" } }, - "node_modules/new-find-package-json/node_modules/debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", - "dev": true, - "dependencies": { - "ms": "2.1.2" - }, - "engines": { - "node": ">=6.0" - }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } - } - }, - "node_modules/new-find-package-json/node_modules/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 - }, "node_modules/nice-try": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz", @@ -7867,7 +8472,7 @@ "node_modules/nise/node_modules/isarray": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", - "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=", + "integrity": "sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ==", "dev": true }, "node_modules/nise/node_modules/lolex": { @@ -7893,6 +8498,7 @@ "resolved": "https://registry.npmjs.org/nock/-/nock-11.9.1.tgz", "integrity": "sha512-U5wPctaY4/ar2JJ5Jg4wJxlbBfayxgKbiAeGh+a1kk6Pwnc2ZEuKviLyDSG6t0uXl56q7AALIxoM6FJrBSsVXA==", "dev": true, + "license": "MIT", "dependencies": { "debug": "^4.1.0", "json-stringify-safe": "^5.0.1", @@ -7904,45 +8510,11 @@ "node": ">= 8.0" } }, - "node_modules/nock/node_modules/debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", - "dev": true, - "dependencies": { - "ms": "2.1.2" - }, - "engines": { - "node": ">=6.0" - }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } - } - }, - "node_modules/nock/node_modules/mkdirp": { - "version": "0.5.6", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", - "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", - "dev": true, - "dependencies": { - "minimist": "^1.2.6" - }, - "bin": { - "mkdirp": "bin/cmd.js" - } - }, - "node_modules/nock/node_modules/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 - }, "node_modules/node-abi": { - "version": "3.47.0", - "resolved": "https://registry.npmjs.org/node-abi/-/node-abi-3.47.0.tgz", - "integrity": "sha512-2s6B2CWZM//kPgwnuI0KrYwNjfdByE25zvAaEpq9IH4zcNsarH8Ihu/UuX6XMPEogDAxkuUFeZn60pXNHAqn3A==", + "version": "3.65.0", + "resolved": "https://registry.npmjs.org/node-abi/-/node-abi-3.65.0.tgz", + "integrity": "sha512-ThjYBfoDNr08AWx6hGaRbfPwxKV9kVzAzOzlLKbk2CuqXE2xnCh+cbAGnwM3t8Lq4v9rUB7VfondlkBckcJrVA==", + "optional": true, "dependencies": { "semver": "^7.3.5" }, @@ -7950,45 +8522,11 @@ "node": ">=10" } }, - "node_modules/node-abi/node_modules/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==", - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/node-abi/node_modules/semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/node-environment-flags": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/node-environment-flags/-/node-environment-flags-1.0.6.tgz", - "integrity": "sha512-5Evy2epuL+6TM0lCQGpFIj6KwiEsGh1SrHUhTbNX+sLbBtjidPZFAnVK9y5yU1+h//RitLbRHTIMyxQPtxMdHw==", - "dev": true, - "dependencies": { - "object.getownpropertydescriptors": "^2.0.3", - "semver": "^5.7.0" - } - }, "node_modules/node-fetch": { - "version": "2.6.7", - "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.7.tgz", - "integrity": "sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==", + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.7.0.tgz", + "integrity": "sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==", + "license": "MIT", "dependencies": { "whatwg-url": "^5.0.0" }, @@ -8004,10 +8542,32 @@ } } }, + "node_modules/node-fetch/node_modules/tr46": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", + "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==", + "license": "MIT" + }, + "node_modules/node-fetch/node_modules/webidl-conversions": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", + "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==", + "license": "BSD-2-Clause" + }, + "node_modules/node-fetch/node_modules/whatwg-url": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", + "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", + "license": "MIT", + "dependencies": { + "tr46": "~0.0.3", + "webidl-conversions": "^3.0.0" + } + }, "node_modules/nomnom": { "version": "1.8.1", "resolved": "https://registry.npmjs.org/nomnom/-/nomnom-1.8.1.tgz", - "integrity": "sha1-IVH3Ikcrp55Qp2/BJbuMjy5Nwqc=", + "integrity": "sha512-5s0JxqhDx9/rksG2BTMVN1enjWSvPidpoSgViZU4ZXULyTe+7jxcCRLB6f42Z0l1xYJpleCBtSyY6Lwg3uu5CQ==", "deprecated": "Package no longer supported. Contact support@npmjs.com for more info.", "dependencies": { "chalk": "~0.4.0", @@ -8017,7 +8577,7 @@ "node_modules/nomnom/node_modules/ansi-styles": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-1.0.0.tgz", - "integrity": "sha1-yxAt8cVvUSPquLZ817mAJ6AnkXg=", + "integrity": "sha512-3iF4FIKdxaVYT3JqQuY3Wat/T2t7TRbbQ94Fu50ZUCbLy4TFbTzr90NOHQodQkNqmeEGCw8WbeP78WNi6SKYUA==", "engines": { "node": ">=0.8.0" } @@ -8025,7 +8585,7 @@ "node_modules/nomnom/node_modules/chalk": { "version": "0.4.0", "resolved": "https://registry.npmjs.org/chalk/-/chalk-0.4.0.tgz", - "integrity": "sha1-UZmj3c0MHv4jvAjBsCewYXbgxk8=", + "integrity": "sha512-sQfYDlfv2DGVtjdoQqxS0cEZDroyG8h6TamA6rvxwlrU5BaSLDx9xhatBYl2pxZ7gmpNaPFVwBtdGdu5rQ+tYQ==", "dependencies": { "ansi-styles": "~1.0.0", "has-color": "~0.1.0", @@ -8038,7 +8598,7 @@ "node_modules/nomnom/node_modules/strip-ansi": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-0.1.1.tgz", - "integrity": "sha1-OeipjQRNFQZgq+SmgIrPcLt7yZE=", + "integrity": "sha512-behete+3uqxecWlDAm5lmskaSaISA+ThQ4oNNBDTBJt0x2ppR6IPqfZNuj6BLaLJ/Sji4TPZlcRyOis8wXQTLg==", "bin": { "strip-ansi": "cli.js" }, @@ -8049,7 +8609,7 @@ "node_modules/nomnom/node_modules/underscore": { "version": "1.6.0", "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.6.0.tgz", - "integrity": "sha1-izixDKze9jM3uLJOT/htRa6lKag=" + "integrity": "sha512-z4o1fvKUojIWh9XuaVLUDdf86RQiq13AC1dmHbTpoyuu+bquHms76v16CjycCbec87J7z0k//SiQVk0sMdFmpQ==" }, "node_modules/normalize-package-data": { "version": "2.5.0", @@ -8063,6 +8623,15 @@ "validate-npm-package-license": "^3.0.1" } }, + "node_modules/normalize-package-data/node_modules/semver": { + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", + "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", + "dev": true, + "bin": { + "semver": "bin/semver" + } + }, "node_modules/normalize-path": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", @@ -8108,6 +8677,16 @@ "node": ">=4" } }, + "node_modules/npm-run-all/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, "node_modules/npm-run-all/node_modules/chalk": { "version": "2.4.2", "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", @@ -8134,7 +8713,7 @@ "node_modules/npm-run-all/node_modules/color-name": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", "dev": true }, "node_modules/npm-run-all/node_modules/cross-spawn": { @@ -8153,43 +8732,106 @@ "node": ">=4.8" } }, + "node_modules/npm-run-all/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "dev": true, + "engines": { + "node": ">=0.8.0" + } + }, "node_modules/npm-run-all/node_modules/has-flag": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", "dev": true, "engines": { "node": ">=4" } }, - "node_modules/npm-run-all/node_modules/supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "node_modules/npm-run-all/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", "dev": true, "dependencies": { - "has-flag": "^3.0.0" + "brace-expansion": "^1.1.7" }, "engines": { - "node": ">=4" + "node": "*" } }, - "node_modules/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=", + "node_modules/npm-run-all/node_modules/path-key": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", + "integrity": "sha512-fEHGKCSmUSDPv4uoj8AlD+joPlq3peND+HRYyxFz4KPw4z926S/b8rIuFs2FYJg3BwsxJf6A9/3eIdLaYC+9Dw==", "dev": true, "engines": { - "node": ">=0.10.0" + "node": ">=4" } }, - "node_modules/nyc": { - "version": "14.1.1", - "resolved": "https://registry.npmjs.org/nyc/-/nyc-14.1.1.tgz", - "integrity": "sha512-OI0vm6ZGUnoGZv/tLdZ2esSVzDwUC88SNs+6JoSOMVxA+gKMB8Tk7jBwgemLx4O40lhhvZCVw1C+OYLOBOPXWw==", + "node_modules/npm-run-all/node_modules/semver": { + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", + "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", + "dev": true, + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/npm-run-all/node_modules/shebang-command": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", + "integrity": "sha512-EV3L1+UQWGor21OmnvojK36mhg+TyIKDh3iFBKBohr5xeXIhNBcx8oWdgkTEEQ+BEFFYdLRuqMfd5L84N1V5Vg==", "dev": true, "dependencies": { - "archy": "^1.0.0", + "shebang-regex": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/npm-run-all/node_modules/shebang-regex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", + "integrity": "sha512-wpoSFAxys6b2a2wHZ1XpDSgD7N9iVjg29Ph9uV/uaP9Ex/KXlkTZTeddxDPSYQpgvzKLGJke2UU0AzoGCjNIvQ==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/npm-run-all/node_modules/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, + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/npm-run-all/node_modules/which": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "dev": true, + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "which": "bin/which" + } + }, + "node_modules/nyc": { + "version": "14.1.1", + "resolved": "https://registry.npmjs.org/nyc/-/nyc-14.1.1.tgz", + "integrity": "sha512-OI0vm6ZGUnoGZv/tLdZ2esSVzDwUC88SNs+6JoSOMVxA+gKMB8Tk7jBwgemLx4O40lhhvZCVw1C+OYLOBOPXWw==", + "dev": true, + "dependencies": { + "archy": "^1.0.0", "caching-transform": "^3.0.2", "convert-source-map": "^1.6.0", "cp-file": "^6.2.0", @@ -8231,6 +8873,18 @@ "node": ">=6" } }, + "node_modules/nyc/node_modules/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, + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, "node_modules/nyc/node_modules/camelcase": { "version": "5.3.1", "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", @@ -8251,25 +8905,52 @@ "wrap-ansi": "^5.1.0" } }, - "node_modules/nyc/node_modules/emoji-regex": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", - "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", + "node_modules/nyc/node_modules/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, + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/nyc/node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", "dev": true }, - "node_modules/nyc/node_modules/esprima": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", - "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", + "node_modules/nyc/node_modules/cp-file": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/cp-file/-/cp-file-6.2.0.tgz", + "integrity": "sha512-fmvV4caBnofhPe8kOcitBwSn2f39QLjnAnGq3gO9dfd75mUytzKNZB1hde6QHunW2Rt+OwuBOMc3i1tNElbszA==", "dev": true, - "bin": { - "esparse": "bin/esparse.js", - "esvalidate": "bin/esvalidate.js" + "dependencies": { + "graceful-fs": "^4.1.2", + "make-dir": "^2.0.0", + "nested-error-stacks": "^2.0.0", + "pify": "^4.0.1", + "safe-buffer": "^5.0.1" }, "engines": { - "node": ">=4" + "node": ">=6" + } + }, + "node_modules/nyc/node_modules/decamelize": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", + "integrity": "sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA==", + "dev": true, + "engines": { + "node": ">=0.10.0" } }, + "node_modules/nyc/node_modules/emoji-regex": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", + "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", + "dev": true + }, "node_modules/nyc/node_modules/find-cache-dir": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-2.1.0.tgz", @@ -8299,7 +8980,7 @@ "node_modules/nyc/node_modules/is-fullwidth-code-point": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "integrity": "sha512-VHskAKYM8RfSFXwee5t5cbN5PZeq1Wrh6qd5bkyiXIf6UQcN6w/A0eXM9r6t8d+GYOh+o6ZhiEnb88LN/Y8m2w==", "dev": true, "engines": { "node": ">=4" @@ -8331,6 +9012,19 @@ "node": ">=6" } }, + "node_modules/nyc/node_modules/make-dir": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", + "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", + "dev": true, + "dependencies": { + "pify": "^4.0.1", + "semver": "^5.6.0" + }, + "engines": { + "node": ">=6" + } + }, "node_modules/nyc/node_modules/p-limit": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", @@ -8358,6 +9052,24 @@ "node": ">=6" } }, + "node_modules/nyc/node_modules/path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/nyc/node_modules/pify": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", + "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", + "dev": true, + "engines": { + "node": ">=6" + } + }, "node_modules/nyc/node_modules/pkg-dir": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-3.0.0.tgz", @@ -8370,19 +9082,11 @@ "node": ">=6" } }, - "node_modules/nyc/node_modules/resolve-from": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", - "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", - "dev": true, - "engines": { - "node": ">=4" - } - }, "node_modules/nyc/node_modules/rimraf": { "version": "2.7.1", "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", + "deprecated": "Rimraf versions prior to v4 are no longer supported", "dev": true, "dependencies": { "glob": "^7.1.3" @@ -8391,6 +9095,15 @@ "rimraf": "bin.js" } }, + "node_modules/nyc/node_modules/semver": { + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", + "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", + "dev": true, + "bin": { + "semver": "bin/semver" + } + }, "node_modules/nyc/node_modules/string-width": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", @@ -8405,10986 +9118,813 @@ "node": ">=6" } }, - "node_modules/nyc/node_modules/strip-ansi": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", - "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", - "dev": true, - "dependencies": { - "ansi-regex": "^4.1.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/nyc/node_modules/yargs": { - "version": "13.3.2", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-13.3.2.tgz", - "integrity": "sha512-AX3Zw5iPruN5ie6xGRIDgqkT+ZhnRlZMLMHAs8tg7nRruy2Nb+i5o9bwghAogtM08q1dpr2LVoS8KSTMYpWXUw==", - "dev": true, - "dependencies": { - "cliui": "^5.0.0", - "find-up": "^3.0.0", - "get-caller-file": "^2.0.1", - "require-directory": "^2.1.1", - "require-main-filename": "^2.0.0", - "set-blocking": "^2.0.0", - "string-width": "^3.0.0", - "which-module": "^2.0.0", - "y18n": "^4.0.0", - "yargs-parser": "^13.1.2" - } - }, - "node_modules/nyc/node_modules/yargs-parser": { - "version": "13.1.2", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.2.tgz", - "integrity": "sha512-3lbsNRf/j+A4QuSZfDRA7HRSfWrzO0YjqTJd5kjAq37Zep1CEgaYmrH9Q3GwPiB9cHyd1Y1UwggGhJGoxipbzg==", - "dev": true, - "dependencies": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" - } - }, - "node_modules/oauth": { - "version": "0.9.15", - "resolved": "https://registry.npmjs.org/oauth/-/oauth-0.9.15.tgz", - "integrity": "sha1-vR/vr2hslrdUda7VGWQS/2DPucE=" - }, - "node_modules/oauth-sign": { - "version": "0.9.0", - "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz", - "integrity": "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==", - "dev": true, - "engines": { - "node": "*" - } - }, - "node_modules/object-assign": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/object-inspect": { - "version": "1.12.0", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.0.tgz", - "integrity": "sha512-Ho2z80bVIvJloH+YzRmpZVQe87+qASmBUKZDWgx9cu+KDrX2ZDH/3tMy+gXbZETVGs2M8YdxObOh7XAtim9Y0g==", - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/object-is": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/object-is/-/object-is-1.1.5.tgz", - "integrity": "sha512-3cyDsyHgtmi7I7DfSSI2LDp6SK2lwvtbg0p0R1e0RvTqF5ceGx+K2dfSjm1bKDMVCFEDAQvy+o8c6a7VujOddw==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/object-keys": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", - "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", - "dev": true, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/object.assign": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.2.tgz", - "integrity": "sha512-ixT2L5THXsApyiUPYKmW+2EHpXXe5Ii3M+f4e+aJFAHao5amFRW6J0OO6c/LU8Be47utCx2GL89hxGB6XSmKuQ==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.0", - "define-properties": "^1.1.3", - "has-symbols": "^1.0.1", - "object-keys": "^1.1.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/object.getownpropertydescriptors": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.1.3.tgz", - "integrity": "sha512-VdDoCwvJI4QdC6ndjpqFmoL3/+HxffFBbcJzKi5hwLLqqx3mdbedRpfZDdK0SrOSauj8X4GzBvnDZl4vTN7dOw==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3", - "es-abstract": "^1.19.1" - }, - "engines": { - "node": ">= 0.8" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/on-finished": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", - "integrity": "sha1-IPEzZIGwg811M3mSoWlxqi2QaUc=", - "dependencies": { - "ee-first": "1.1.1" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/on-headers": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/on-headers/-/on-headers-1.0.2.tgz", - "integrity": "sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA==", - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/once": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", - "dependencies": { - "wrappy": "1" - } - }, - "node_modules/onetime": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", - "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", - "optional": true, - "dependencies": { - "mimic-fn": "^2.1.0" - }, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/ono": { - "version": "4.0.11", - "resolved": "https://registry.npmjs.org/ono/-/ono-4.0.11.tgz", - "integrity": "sha512-jQ31cORBFE6td25deYeD80wxKBMj+zBmHTrVxnc6CKhx8gho6ipmWM5zj/oeoqioZ99yqBls9Z/9Nss7J26G2g==", - "dev": true, - "dependencies": { - "format-util": "^1.0.3" - } - }, - "node_modules/openapi-enforcer": { - "version": "1.15.5", - "resolved": "https://registry.npmjs.org/openapi-enforcer/-/openapi-enforcer-1.15.5.tgz", - "integrity": "sha512-lHU5Qhj6i/4LinbVqOLpDwukVQkn+MUlS5exa71fQcJ36ona17lgI4csA8+9WSiVr0FeALUCWi87Glsseb1Jzw==", - "dev": true, - "dependencies": { - "axios": "^0.21.1", - "json-schema-ref-parser": "^6.1.0", - "randexp": "^0.5.3" - } - }, - "node_modules/openapi-enforcer/node_modules/axios": { - "version": "0.21.4", - "resolved": "https://registry.npmjs.org/axios/-/axios-0.21.4.tgz", - "integrity": "sha512-ut5vewkiu8jjGBdqpM44XxjuCjq9LAKeHVmoVfHVzy8eHgxxq8SbAVQNovDA8mVi05kP0Ea/n/UzcSHcTJQfNg==", - "dev": true, - "dependencies": { - "follow-redirects": "^1.14.0" - } - }, - "node_modules/opentype.js": { - "version": "0.7.3", - "resolved": "https://registry.npmjs.org/opentype.js/-/opentype.js-0.7.3.tgz", - "integrity": "sha1-QPuM4Yv9YOdESO/f5EKDQJg5eqs=", - "dependencies": { - "tiny-inflate": "^1.0.2" - }, - "bin": { - "ot": "bin/ot" - } - }, - "node_modules/optionator": { - "version": "0.9.3", - "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.3.tgz", - "integrity": "sha512-JjCoypp+jKn1ttEFExxhetCKeJt9zhAgAve5FXHixTvFDW/5aEktX9bufBKLRRMdU7bNtpLfcGu94B3cdEJgjg==", - "dev": true, - "dependencies": { - "@aashutoshrathi/word-wrap": "^1.2.3", - "deep-is": "^0.1.3", - "fast-levenshtein": "^2.0.6", - "levn": "^0.4.1", - "prelude-ls": "^1.2.1", - "type-check": "^0.4.0" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/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, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/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=", - "optional": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/p-event": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/p-event/-/p-event-5.0.1.tgz", - "integrity": "sha512-dd589iCQ7m1L0bmC5NLlVYfy3TbBEsMUfWx9PyAgPeIcFZ/E2yaTZ4Rz4MiBmmJShviiftHVXOqfnfzJ6kyMrQ==", - "dev": true, - "dependencies": { - "p-timeout": "^5.0.2" - }, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/p-event/node_modules/p-timeout": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/p-timeout/-/p-timeout-5.1.0.tgz", - "integrity": "sha512-auFDyzzzGZZZdHz3BtET9VEz0SE/uMEAx7uWfGPucfzEwwe/xH0iVeZibQmANYE/hp9T2+UUZT5m+BKyrDp3Ew==", - "dev": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/p-filter": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/p-filter/-/p-filter-3.0.0.tgz", - "integrity": "sha512-QtoWLjXAW++uTX67HZQz1dbTpqBfiidsB6VtQUC9iR85S120+s0T5sO6s+B5MLzFcZkrEd/DGMmCjR+f2Qpxwg==", - "dev": true, - "dependencies": { - "p-map": "^5.1.0" - }, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/p-filter/node_modules/aggregate-error": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-4.0.1.tgz", - "integrity": "sha512-0poP0T7el6Vq3rstR8Mn4V/IQrpBLO6POkUSrN7RhyY+GF/InCFShQzsQ39T25gkHhLgSLByyAz+Kjb+c2L98w==", - "dev": true, - "dependencies": { - "clean-stack": "^4.0.0", - "indent-string": "^5.0.0" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/p-filter/node_modules/clean-stack": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-4.2.0.tgz", - "integrity": "sha512-LYv6XPxoyODi36Dp976riBtSY27VmFo+MKqEU9QCCWyTrdEPDog+RWA7xQWHi6Vbp61j5c4cdzzX1NidnwtUWg==", - "dev": true, - "dependencies": { - "escape-string-regexp": "5.0.0" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/p-filter/node_modules/escape-string-regexp": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz", - "integrity": "sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==", - "dev": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/p-filter/node_modules/indent-string": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-5.0.0.tgz", - "integrity": "sha512-m6FAo/spmsW2Ab2fU35JTYwtOKa2yAwXSwgjSv1TJzh4Mh7mC3lzAOVLBprb72XsTrgkEIsl7YrFNAiDiRhIGg==", - "dev": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/p-filter/node_modules/p-map": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/p-map/-/p-map-5.5.0.tgz", - "integrity": "sha512-VFqfGDHlx87K66yZrNdI4YGtD70IRyd+zSvgks6mzHPRNkoKy+9EKP4SFC77/vTTQYmRmti7dvqC+m5jBrBAcg==", - "dev": true, - "dependencies": { - "aggregate-error": "^4.0.0" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/p-limit": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", - "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", - "dev": true, - "dependencies": { - "yocto-queue": "^0.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/p-locate": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", - "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", - "dev": true, - "dependencies": { - "p-limit": "^3.0.2" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/p-map": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/p-map/-/p-map-6.0.0.tgz", - "integrity": "sha512-T8BatKGY+k5rU+Q/GTYgrEf2r4xRMevAN5mtXc2aPc4rS1j3s+vWTaO2Wag94neXuCAUAs8cxBL9EeB5EA6diw==", - "dev": true, - "engines": { - "node": ">=16" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/p-try": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", - "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/package-hash": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/package-hash/-/package-hash-3.0.0.tgz", - "integrity": "sha512-lOtmukMDVvtkL84rJHI7dpTYq+0rli8N2wlnqUcBuDWCfVhRUfOmnR9SsoHFMLpACvEV60dX7rd0rFaYDZI+FA==", - "dev": true, - "dependencies": { - "graceful-fs": "^4.1.15", - "hasha": "^3.0.0", - "lodash.flattendeep": "^4.4.0", - "release-zalgo": "^1.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/pako": { - "version": "1.0.11", - "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz", - "integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==", - "dev": true - }, - "node_modules/parent-module": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", - "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", - "dev": true, - "dependencies": { - "callsites": "^3.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/parse-asn1": { - "version": "5.1.6", - "resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.6.tgz", - "integrity": "sha512-RnZRo1EPU6JBnra2vGHj0yhp6ebyjBZpmUCLHWiFhxlzvBCCpAuZ7elsBp1PVAbQN0/04VD/19rfzlBSwLstMw==", - "dependencies": { - "asn1.js": "^5.2.0", - "browserify-aes": "^1.0.0", - "evp_bytestokey": "^1.0.0", - "pbkdf2": "^3.0.3", - "safe-buffer": "^5.1.1" - } - }, - "node_modules/parse-asn1/node_modules/asn1.js": { - "version": "5.4.1", - "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-5.4.1.tgz", - "integrity": "sha512-+I//4cYPccV8LdmBLiX8CYvf9Sp3vQsrqu2QNXRcrbiWvcx/UdlFiqUJJzxRQxgsZmvhXhn4cSKeSmoFjVdupA==", - "dependencies": { - "bn.js": "^4.0.0", - "inherits": "^2.0.1", - "minimalistic-assert": "^1.0.0", - "safer-buffer": "^2.1.0" - } - }, - "node_modules/parse-asn1/node_modules/bn.js": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", - "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" - }, - "node_modules/parse-json": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", - "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=", - "dev": true, - "dependencies": { - "error-ex": "^1.3.1", - "json-parse-better-errors": "^1.0.1" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/parseurl": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", - "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==", - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/passport": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/passport/-/passport-0.6.0.tgz", - "integrity": "sha512-0fe+p3ZnrWRW74fe8+SvCyf4a3Pb2/h7gFkQ8yTJpAO50gDzlfjZUZTO1k5Eg9kUct22OxHLqDZoKUWRHOh9ug==", - "dependencies": { - "passport-strategy": "1.x.x", - "pause": "0.0.1", - "utils-merge": "^1.0.1" - }, - "engines": { - "node": ">= 0.4.0" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/jaredhanson" - } - }, - "node_modules/passport-anonymous": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/passport-anonymous/-/passport-anonymous-1.0.1.tgz", - "integrity": "sha1-JB43J07ETft/bK0jS0HEODhrwRc=", - "dependencies": { - "passport-strategy": "1.x.x" - }, - "engines": { - "node": ">= 0.4.0" - } - }, - "node_modules/passport-http-bearer": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/passport-http-bearer/-/passport-http-bearer-1.0.1.tgz", - "integrity": "sha1-FHRp6jZp4qhMYWfvmdu3fh8AmKg=", - "dependencies": { - "passport-strategy": "1.x.x" - }, - "engines": { - "node": ">= 0.4.0" - } - }, - "node_modules/passport-ldapauth": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/passport-ldapauth/-/passport-ldapauth-3.0.1.tgz", - "integrity": "sha512-TRRx3BHi8GC8MfCT9wmghjde/EGeKjll7zqHRRfGRxXbLcaDce2OftbQrFG7/AWaeFhR6zpZHtBQ/IkINdLVjQ==", - "dependencies": { - "ldapauth-fork": "^5.0.1", - "passport-strategy": "^1.0.0" - }, - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/passport-local": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/passport-local/-/passport-local-1.0.0.tgz", - "integrity": "sha1-H+YyaMkudWBmJkN+O5BmYsFbpu4=", - "dependencies": { - "passport-strategy": "1.x.x" - }, - "engines": { - "node": ">= 0.4.0" - } - }, - "node_modules/passport-oauth2": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/passport-oauth2/-/passport-oauth2-1.6.0.tgz", - "integrity": "sha512-emXPLqLcVEcLFR/QvQXZcwLmfK8e9CqvMgmOFJxcNT3okSFMtUbRRKpY20x5euD+01uHsjjCa07DYboEeLXYiw==", - "dependencies": { - "base64url": "3.x.x", - "oauth": "0.9.x", - "passport-strategy": "1.x.x", - "uid2": "0.0.x", - "utils-merge": "1.x.x" - }, - "engines": { - "node": ">= 0.4.0" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/jaredhanson" - } - }, - "node_modules/passport-openidconnect": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/passport-openidconnect/-/passport-openidconnect-0.1.1.tgz", - "integrity": "sha512-r0QJiWEzwCg2MeCIXVP5G6YxVRqnEsZ2HpgKRthZ9AiQHJrgGUytXpsdcGF9BRwd3yMrEesb/uG/Yxb86rrY0g==", - "dependencies": { - "oauth": "0.9.x", - "passport-strategy": "1.x.x" - }, - "engines": { - "node": ">= 0.6.0" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/jaredhanson" - } - }, - "node_modules/passport-strategy": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/passport-strategy/-/passport-strategy-1.0.0.tgz", - "integrity": "sha1-tVOaqPwiWj0a0XlHbd8ja0QPUuQ=", - "engines": { - "node": ">= 0.4.0" - } - }, - "node_modules/path-exists": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", - "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/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=", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/path-key": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", - "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/path-parse": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", - "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==" - }, - "node_modules/path-scurry": { - "version": "1.10.1", - "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.10.1.tgz", - "integrity": "sha512-MkhCqzzBEpPvxxQ71Md0b1Kk51W01lrYvlMzSUaIzNsODdd7mqhiimSZlr+VegAz5Z6Vzt9Xg2ttE//XBhH3EQ==", - "dev": true, - "dependencies": { - "lru-cache": "^9.1.1 || ^10.0.0", - "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0" - }, - "engines": { - "node": ">=16 || 14 >=14.17" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/path-scurry/node_modules/lru-cache": { - "version": "10.2.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.2.0.tgz", - "integrity": "sha512-2bIM8x+VAf6JT4bKAljS1qUWgMsqZRPGJS6FSahIMPVvctcNhyVp7AJu7quxOW9jwkryBReKZY5tY5JYv2n/7Q==", - "dev": true, - "engines": { - "node": "14 || >=16.14" - } - }, - "node_modules/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=" - }, - "node_modules/path-type": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz", - "integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==", - "dev": true, - "dependencies": { - "pify": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/pathval": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/pathval/-/pathval-1.1.1.tgz", - "integrity": "sha512-Dp6zGqpTdETdR63lehJYPeIOqpiNBNtc7BpWSLrOje7UaIsE5aY92r/AunQA7rsXvet3lrJ3JnZX29UPTKXyKQ==", - "dev": true, - "engines": { - "node": "*" - } - }, - "node_modules/pause": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/pause/-/pause-0.0.1.tgz", - "integrity": "sha1-HUCLP9t2kjuVQ9lvtMnf1TXZy10=" - }, - "node_modules/pause-stream": { - "version": "0.0.11", - "resolved": "https://registry.npmjs.org/pause-stream/-/pause-stream-0.0.11.tgz", - "integrity": "sha1-/lo0sMvOErWqaitAPuLnO2AvFEU=", - "dependencies": { - "through": "~2.3" - } - }, - "node_modules/pbkdf2": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.1.2.tgz", - "integrity": "sha512-iuh7L6jA7JEGu2WxDwtQP1ddOpaJNC4KlDEFfdQajSGgGPNi4OyDc2R7QnbY2bR9QjBVGwgvTdNJZoE7RaxUMA==", - "dependencies": { - "create-hash": "^1.1.2", - "create-hmac": "^1.1.4", - "ripemd160": "^2.0.1", - "safe-buffer": "^5.0.1", - "sha.js": "^2.4.8" - }, - "engines": { - "node": ">=0.12" - } - }, - "node_modules/peek-readable": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/peek-readable/-/peek-readable-4.1.0.tgz", - "integrity": "sha512-ZI3LnwUv5nOGbQzD9c2iDG6toheuXSZP5esSHBjopsXH4dg19soufvpUGA3uohi5anFtGb2lhAVdHzH6R/Evvg==", - "engines": { - "node": ">=8" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/Borewit" - } - }, - "node_modules/pem-jwk": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/pem-jwk/-/pem-jwk-1.5.1.tgz", - "integrity": "sha1-eoY3/S9nqCflfAxC4cI8P9Us+wE=", - "dependencies": { - "asn1.js": "1.0.3" - }, - "bin": { - "pem-jwk": "bin/pem-jwk.js" - } - }, - "node_modules/pem-jwk/node_modules/asn1.js": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-1.0.3.tgz", - "integrity": "sha1-KBuj7B8kSP52X5Kk7s+IP+E2S1Q=", - "dependencies": { - "inherits": "^2.0.1", - "minimalistic-assert": "^1.0.0" - }, - "optionalDependencies": { - "bn.js": "^1.0.0" - } - }, - "node_modules/pem-jwk/node_modules/bn.js": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-1.3.0.tgz", - "integrity": "sha1-DbTL+W+PI7dC9by50ap6mZSgXoM=", - "optional": true - }, - "node_modules/pem2jwk": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/pem2jwk/-/pem2jwk-1.0.2.tgz", - "integrity": "sha512-/PsYvI1FljaxOeqrvbWgjE6KiFz87aPYr2lgUaADbzBKihRX0FVg7StXx3Cakd7qYL8e+TTANPKOsRH0HGjndw==", - "dependencies": { - "elliptic": "^6.4.0", - "parse-asn1": "^5.1.0", - "safe-buffer": "^5.1.2" - } - }, - "node_modules/pend": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz", - "integrity": "sha512-F3asv42UuXchdzt+xXqfW1OGlVBe+mxa2mqI0pg5yAHZPvFmY3Y6drSf/GQ1A86WgWEN9Kzh/WrgKa6iGcHXLg==", - "dev": true - }, - "node_modules/performance-now": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", - "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=", - "dev": true - }, - "node_modules/picomatch": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", - "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", - "dev": true, - "engines": { - "node": ">=8.6" - }, - "funding": { - "url": "https://github.com/sponsors/jonschlinkert" - } - }, - "node_modules/pidtree": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/pidtree/-/pidtree-0.3.1.tgz", - "integrity": "sha512-qQbW94hLHEqCg7nhby4yRC7G2+jYHY4Rguc2bjw7Uug4GIJuu1tvf2uHaZv5Q8zdt+WKJ6qK1FOI6amaWUo5FA==", - "dev": true, - "bin": { - "pidtree": "bin/pidtree.js" - }, - "engines": { - "node": ">=0.10" - } - }, - "node_modules/pify": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", - "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/pkg-dir": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", - "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", - "dev": true, - "dependencies": { - "find-up": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/pkg-dir/node_modules/find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", - "dev": true, - "dependencies": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/pkg-dir/node_modules/locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", - "dev": true, - "dependencies": { - "p-locate": "^4.1.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/pkg-dir/node_modules/p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", - "dev": true, - "dependencies": { - "p-try": "^2.0.0" - }, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/pkg-dir/node_modules/p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", - "dev": true, - "dependencies": { - "p-limit": "^2.2.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/pkg-dir/node_modules/path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/pkginfo": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/pkginfo/-/pkginfo-0.3.1.tgz", - "integrity": "sha1-Wyn2qB9wcXFC4J52W76rl7T4HiE=", - "engines": { - "node": ">= 0.4.0" - } - }, - "node_modules/polygon-clipping": { - "version": "0.15.3", - "resolved": "https://registry.npmjs.org/polygon-clipping/-/polygon-clipping-0.15.3.tgz", - "integrity": "sha512-ho0Xx5DLkgxRx/+n4O74XyJ67DcyN3Tu9bGYKsnTukGAW6ssnuak6Mwcyb1wHy9MZc9xsUWqIoiazkZB5weECg==", - "dependencies": { - "splaytree": "^3.1.0" - } - }, - "node_modules/ports": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/ports/-/ports-1.1.0.tgz", - "integrity": "sha1-twGqKF6V2ujJbNonUhdySh9/bGA=" - }, - "node_modules/prebuild-install": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/prebuild-install/-/prebuild-install-7.1.1.tgz", - "integrity": "sha512-jAXscXWMcCK8GgCoHOfIr0ODh5ai8mj63L2nWrjuAgXE6tDyYGnx4/8o/rCgU+B4JSyZBKbeZqzhtwtC3ovxjw==", - "dependencies": { - "detect-libc": "^2.0.0", - "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": "^3.3.0", - "pump": "^3.0.0", - "rc": "^1.2.7", - "simple-get": "^4.0.0", - "tar-fs": "^2.0.0", - "tunnel-agent": "^0.6.0" - }, - "bin": { - "prebuild-install": "bin.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/precond": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/precond/-/precond-0.2.3.tgz", - "integrity": "sha512-QCYG84SgGyGzqJ/vlMsxeXd/pgL/I94ixdNFyh1PusWmTCyVfPJjZ1K1jvHtsbfnXQs2TSkEP2fR7QiMZAnKFQ==", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/prelude-ls": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", - "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", - "dev": true, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/prettier": { - "version": "1.19.1", - "resolved": "https://registry.npmjs.org/prettier/-/prettier-1.19.1.tgz", - "integrity": "sha512-s7PoyDv/II1ObgQunCbB9PdLmUcBZcnWOcxDh7O0N/UwDEsHyqkW+Qh28jW+mVuCdx7gLB0BotYI1Y6uI9iyew==", - "dev": true, - "bin": { - "prettier": "bin-prettier.js" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/prettier-linter-helpers": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/prettier-linter-helpers/-/prettier-linter-helpers-1.0.0.tgz", - "integrity": "sha512-GbK2cP9nraSSUF9N2XwUwqfzlAFlMNYYl+ShE/V+H8a9uNl/oUqB1w2EL54Jh0OlyRSd8RfWYJ3coVS4TROP2w==", - "dev": true, - "dependencies": { - "fast-diff": "^1.1.2" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/process-nextick-args": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-1.0.7.tgz", - "integrity": "sha1-FQ4gt1ZZCtP5EJPyWk8q2L/zC6M=" - }, - "node_modules/proj4": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/proj4/-/proj4-2.8.0.tgz", - "integrity": "sha512-baC+YcD4xsSqJ+CpCZljj2gcQDhlKb+J+Zjv/2KSBwWNjk4M0pafgQsE+mWurd84tflMIsP+7j7mtIpFDHzQfQ==", - "dependencies": { - "mgrs": "1.0.0", - "wkt-parser": "^1.3.1" - } - }, - "node_modules/promise": { - "version": "7.3.1", - "resolved": "https://registry.npmjs.org/promise/-/promise-7.3.1.tgz", - "integrity": "sha512-nolQXZ/4L+bP/UGlkfaIujX9BKxGwmQ9OT4mOt5yvy8iK1h3wqTEJCijzGANTCCl9nWjY41juyAn2K3Q1hLLTg==", - "dependencies": { - "asap": "~2.0.3" - } - }, - "node_modules/propagate": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/propagate/-/propagate-2.0.1.tgz", - "integrity": "sha512-vGrhOavPSTz4QVNuBNdcNXePNdNMaO1xj9yBeH1ScQPjk/rhg9sSlCXPhMkFuaNNW/syTvYqsnbIJxMBfRbbag==", - "dev": true, - "engines": { - "node": ">= 8" - } - }, - "node_modules/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==", - "dependencies": { - "forwarded": "0.2.0", - "ipaddr.js": "1.9.1" - }, - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/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 - }, - "node_modules/proxyquire": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/proxyquire/-/proxyquire-2.1.3.tgz", - "integrity": "sha512-BQWfCqYM+QINd+yawJz23tbBM40VIGXOdDw3X344KcclI/gtBbdWF6SlQ4nK/bYhF9d27KYug9WzljHC6B9Ysg==", - "dev": true, - "dependencies": { - "fill-keys": "^1.0.2", - "module-not-found-error": "^1.0.1", - "resolve": "^1.11.1" - } - }, - "node_modules/pseudomap": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", - "integrity": "sha1-8FKijacOYYkX7wqKw0wa5aaChrM=" - }, - "node_modules/psl": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/psl/-/psl-1.8.0.tgz", - "integrity": "sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ==", - "dev": true - }, - "node_modules/pug": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/pug/-/pug-3.0.2.tgz", - "integrity": "sha512-bp0I/hiK1D1vChHh6EfDxtndHji55XP/ZJKwsRqrz6lRia6ZC2OZbdAymlxdVFwd1L70ebrVJw4/eZ79skrIaw==", - "dependencies": { - "pug-code-gen": "^3.0.2", - "pug-filters": "^4.0.0", - "pug-lexer": "^5.0.1", - "pug-linker": "^4.0.0", - "pug-load": "^3.0.0", - "pug-parser": "^6.0.0", - "pug-runtime": "^3.0.1", - "pug-strip-comments": "^2.0.0" - } - }, - "node_modules/pug-attrs": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pug-attrs/-/pug-attrs-3.0.0.tgz", - "integrity": "sha512-azINV9dUtzPMFQktvTXciNAfAuVh/L/JCl0vtPCwvOA21uZrC08K/UnmrL+SXGEVc1FwzjW62+xw5S/uaLj6cA==", - "dependencies": { - "constantinople": "^4.0.1", - "js-stringify": "^1.0.2", - "pug-runtime": "^3.0.0" - } - }, - "node_modules/pug-code-gen": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/pug-code-gen/-/pug-code-gen-3.0.2.tgz", - "integrity": "sha512-nJMhW16MbiGRiyR4miDTQMRWDgKplnHyeLvioEJYbk1RsPI3FuA3saEP8uwnTb2nTJEKBU90NFVWJBk4OU5qyg==", - "dependencies": { - "constantinople": "^4.0.1", - "doctypes": "^1.1.0", - "js-stringify": "^1.0.2", - "pug-attrs": "^3.0.0", - "pug-error": "^2.0.0", - "pug-runtime": "^3.0.0", - "void-elements": "^3.1.0", - "with": "^7.0.0" - } - }, - "node_modules/pug-error": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/pug-error/-/pug-error-2.0.0.tgz", - "integrity": "sha512-sjiUsi9M4RAGHktC1drQfCr5C5eriu24Lfbt4s+7SykztEOwVZtbFk1RRq0tzLxcMxMYTBR+zMQaG07J/btayQ==" - }, - "node_modules/pug-filters": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/pug-filters/-/pug-filters-4.0.0.tgz", - "integrity": "sha512-yeNFtq5Yxmfz0f9z2rMXGw/8/4i1cCFecw/Q7+D0V2DdtII5UvqE12VaZ2AY7ri6o5RNXiweGH79OCq+2RQU4A==", - "dependencies": { - "constantinople": "^4.0.1", - "jstransformer": "1.0.0", - "pug-error": "^2.0.0", - "pug-walk": "^2.0.0", - "resolve": "^1.15.1" - } - }, - "node_modules/pug-lexer": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/pug-lexer/-/pug-lexer-5.0.1.tgz", - "integrity": "sha512-0I6C62+keXlZPZkOJeVam9aBLVP2EnbeDw3An+k0/QlqdwH6rv8284nko14Na7c0TtqtogfWXcRoFE4O4Ff20w==", - "dependencies": { - "character-parser": "^2.2.0", - "is-expression": "^4.0.0", - "pug-error": "^2.0.0" - } - }, - "node_modules/pug-linker": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/pug-linker/-/pug-linker-4.0.0.tgz", - "integrity": "sha512-gjD1yzp0yxbQqnzBAdlhbgoJL5qIFJw78juN1NpTLt/mfPJ5VgC4BvkoD3G23qKzJtIIXBbcCt6FioLSFLOHdw==", - "dependencies": { - "pug-error": "^2.0.0", - "pug-walk": "^2.0.0" - } - }, - "node_modules/pug-load": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pug-load/-/pug-load-3.0.0.tgz", - "integrity": "sha512-OCjTEnhLWZBvS4zni/WUMjH2YSUosnsmjGBB1An7CsKQarYSWQ0GCVyd4eQPMFJqZ8w9xgs01QdiZXKVjk92EQ==", - "dependencies": { - "object-assign": "^4.1.1", - "pug-walk": "^2.0.0" - } - }, - "node_modules/pug-parser": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/pug-parser/-/pug-parser-6.0.0.tgz", - "integrity": "sha512-ukiYM/9cH6Cml+AOl5kETtM9NR3WulyVP2y4HOU45DyMim1IeP/OOiyEWRr6qk5I5klpsBnbuHpwKmTx6WURnw==", - "dependencies": { - "pug-error": "^2.0.0", - "token-stream": "1.0.0" - } - }, - "node_modules/pug-runtime": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/pug-runtime/-/pug-runtime-3.0.1.tgz", - "integrity": "sha512-L50zbvrQ35TkpHwv0G6aLSuueDRwc/97XdY8kL3tOT0FmhgG7UypU3VztfV/LATAvmUfYi4wNxSajhSAeNN+Kg==" - }, - "node_modules/pug-strip-comments": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/pug-strip-comments/-/pug-strip-comments-2.0.0.tgz", - "integrity": "sha512-zo8DsDpH7eTkPHCXFeAk1xZXJbyoTfdPlNR0bK7rpOMuhBYb0f5qUVCO1xlsitYd3w5FQTK7zpNVKb3rZoUrrQ==", - "dependencies": { - "pug-error": "^2.0.0" - } - }, - "node_modules/pug-walk": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/pug-walk/-/pug-walk-2.0.0.tgz", - "integrity": "sha512-yYELe9Q5q9IQhuvqsZNwA5hfPkMJ8u92bQLIMcsMxf/VADjNtEYptU+inlufAFYcWdHlwNfZOEnOOQrZrcyJCQ==" - }, - "node_modules/pump": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", - "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", - "dependencies": { - "end-of-stream": "^1.1.0", - "once": "^1.3.1" - } - }, - "node_modules/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, - "engines": { - "node": ">=6" - } - }, - "node_modules/qs": { - "version": "6.5.2", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz", - "integrity": "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==", - "dev": true, - "engines": { - "node": ">=0.6" - } - }, - "node_modules/queue": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/queue/-/queue-6.0.1.tgz", - "integrity": "sha512-AJBQabRCCNr9ANq8v77RJEv73DPbn55cdTb+Giq4X0AVnNVZvMHlYp7XlQiN+1npCZj1DuSmaA2hYVUUDgxFDg==", - "dependencies": { - "inherits": "~2.0.3" - } - }, - "node_modules/queue-microtask": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", - "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] - }, - "node_modules/queue-tick": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/queue-tick/-/queue-tick-1.0.1.tgz", - "integrity": "sha512-kJt5qhMxoszgU/62PLP1CJytzd2NKetjSRnyuj31fDd3Rlcz3fzlFdFLD1SItunPwyqEOkca6GbV612BWfaBag==", - "dev": true - }, - "node_modules/quickselect": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/quickselect/-/quickselect-2.0.0.tgz", - "integrity": "sha512-RKJ22hX8mHe3Y6wH/N3wCM6BWtjaxIyyUIkpHOvfFnxdI4yD4tBXEBKSbriGujF6jnSVkJrffuo6vxACiSSxIw==" - }, - "node_modules/randexp": { - "version": "0.5.3", - "resolved": "https://registry.npmjs.org/randexp/-/randexp-0.5.3.tgz", - "integrity": "sha512-U+5l2KrcMNOUPYvazA3h5ekF80FHTUG+87SEAmHZmolh1M+i/WyTCxVzmi+tidIa1tM4BSe8g2Y/D3loWDjj+w==", - "dev": true, - "dependencies": { - "drange": "^1.0.2", - "ret": "^0.2.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/random-bytes": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/random-bytes/-/random-bytes-1.0.0.tgz", - "integrity": "sha1-T2ih3Arli9P7lYSMMDJNt11kNgs=", - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/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==", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/raw-body": { - "version": "2.4.3", - "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.4.3.tgz", - "integrity": "sha512-UlTNLIcu0uzb4D2f4WltY6cVjLi+/jEN4lgEUj3E04tpMDpUlkBo/eSn6zou9hum2VMNpCCUone0O0WeJim07g==", - "dependencies": { - "bytes": "3.1.2", - "http-errors": "1.8.1", - "iconv-lite": "0.4.24", - "unpipe": "1.0.0" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/raw-body/node_modules/iconv-lite": { - "version": "0.4.24", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", - "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", - "dependencies": { - "safer-buffer": ">= 2.1.2 < 3" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/rbush": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/rbush/-/rbush-3.0.1.tgz", - "integrity": "sha512-XRaVO0YecOpEuIvbhbpTrZgoiI6xBlz6hnlr6EHhd+0x9ase6EmeN+hdwwUaJvLcsFFQ8iWVF1GAK1yB0BWi0w==", - "dependencies": { - "quickselect": "^2.0.0" - } - }, - "node_modules/rc": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", - "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==", - "dependencies": { - "deep-extend": "^0.6.0", - "ini": "~1.3.0", - "minimist": "^1.2.0", - "strip-json-comments": "~2.0.1" - }, - "bin": { - "rc": "cli.js" - } - }, - "node_modules/read-pkg": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-3.0.0.tgz", - "integrity": "sha1-nLxoaXj+5l0WwA4rGcI3/Pbjg4k=", - "dev": true, - "dependencies": { - "load-json-file": "^4.0.0", - "normalize-package-data": "^2.3.2", - "path-type": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/readable-stream": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.0.6.tgz", - "integrity": "sha1-j5A0HmilPMySh4jaz80Rs265t44=", - "dependencies": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.1", - "isarray": "~1.0.0", - "process-nextick-args": "~1.0.6", - "string_decoder": "~0.10.x", - "util-deprecate": "~1.0.1" - } - }, - "node_modules/readable-web-to-node-stream": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/readable-web-to-node-stream/-/readable-web-to-node-stream-3.0.2.tgz", - "integrity": "sha512-ePeK6cc1EcKLEhJFt/AebMCLL+GgSKhuygrZ/GLaKZYEecIgIECf4UaUuaByiGtzckwR4ain9VzUh95T1exYGw==", - "dependencies": { - "readable-stream": "^3.6.0" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/Borewit" - } - }, - "node_modules/readable-web-to-node-stream/node_modules/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==", - "dependencies": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/readable-web-to-node-stream/node_modules/string_decoder": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", - "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", - "dependencies": { - "safe-buffer": "~5.2.0" - } - }, - "node_modules/readdir-glob": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/readdir-glob/-/readdir-glob-1.1.1.tgz", - "integrity": "sha512-91/k1EzZwDx6HbERR+zucygRFfiPl2zkIYZtv3Jjr6Mn7SkKcVct8aVO+sSRiGMc6fLf72du3d92/uY63YPdEA==", - "dependencies": { - "minimatch": "^3.0.4" - } - }, - "node_modules/readdirp": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.2.0.tgz", - "integrity": "sha512-crk4Qu3pmXwgxdSgGhgA/eXiJAPQiX4GMOZZMXnqKxHX7TaoL+3gQVo/WeuAiogr07DpnfjIMpXXa+PAIvwPGQ==", - "dev": true, - "dependencies": { - "picomatch": "^2.0.4" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/regexp-clone": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/regexp-clone/-/regexp-clone-0.0.1.tgz", - "integrity": "sha1-p8LgmJH9vzj7sQ03b7cwA+aKxYk=" - }, - "node_modules/regexp.prototype.flags": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.4.2.tgz", - "integrity": "sha512-Ynz8fTQW5/1elh+jWU2EDDzeoNbD0OQ0R+D1VJU5ATOkUaro4A9YEkdN2ODQl/8UQFPPpZNw91fOcLFamM7Pww==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/release-zalgo": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/release-zalgo/-/release-zalgo-1.0.0.tgz", - "integrity": "sha1-CXALflB0Mpc5Mw5TXFqQ+2eFFzA=", - "dev": true, - "dependencies": { - "es6-error": "^4.0.1" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/reproject": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/reproject/-/reproject-1.2.5.tgz", - "integrity": "sha512-cTH78fi1uuv5gzW/GVepO4LbCvOUhO0X2BEyyvrKkYb4KPRmDPs7cZnIxemHPUIch/CoSI8MPLmXRHZFSHjbKw==", - "dependencies": { - "concat-stream": "^2.0.0", - "event-stream": "^4.0.0", - "geojson-stream": "0.1.0", - "minimist": "^1.2.0", - "proj4": "^2.4.4" - }, - "bin": { - "reproject": "cli.js" - } - }, - "node_modules/reproject/node_modules/concat-stream": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-2.0.0.tgz", - "integrity": "sha512-MWufYdFw53ccGjCA+Ol7XJYpAlW6/prSMzuPOTRnJGcGzuhLn4Scrz7qf6o8bROZ514ltazcIFJZevcfbo0x7A==", - "engines": [ - "node >= 6.0" - ], - "dependencies": { - "buffer-from": "^1.0.0", - "inherits": "^2.0.3", - "readable-stream": "^3.0.2", - "typedarray": "^0.0.6" - } - }, - "node_modules/reproject/node_modules/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==", - "dependencies": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/reproject/node_modules/string_decoder": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", - "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", - "dependencies": { - "safe-buffer": "~5.2.0" - } - }, - "node_modules/request": { - "version": "2.88.2", - "resolved": "https://registry.npmjs.org/request/-/request-2.88.2.tgz", - "integrity": "sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw==", - "deprecated": "request has been deprecated, see https://github.com/request/request/issues/3142", - "dev": true, - "dependencies": { - "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" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/require_optional": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/require_optional/-/require_optional-1.0.1.tgz", - "integrity": "sha512-qhM/y57enGWHAe3v/NcwML6a3/vfESLe/sGM2dII+gEO0BpKRUkWZow/tyloNqJyN6kXSl3RyyM8Ll5D/sJP8g==", - "dependencies": { - "resolve-from": "^2.0.0", - "semver": "^5.1.0" - } - }, - "node_modules/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, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/require-main-filename": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz", - "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==", - "dev": true - }, - "node_modules/resolve": { - "version": "1.22.0", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.0.tgz", - "integrity": "sha512-Hhtrw0nLeSrFQ7phPp4OOcVjLPIeMnRlr5mcnVuMe7M/7eBn98A3hmFRLoFo3DLZkivSYwhRUJTyPyWAk56WLw==", - "dependencies": { - "is-core-module": "^2.8.1", - "path-parse": "^1.0.7", - "supports-preserve-symlinks-flag": "^1.0.0" - }, - "bin": { - "resolve": "bin/resolve" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/resolve-from": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-2.0.0.tgz", - "integrity": "sha1-lICrIOlP+h2egKgEx+oUdhGWa1c=", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/restore-cursor": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz", - "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==", - "optional": true, - "dependencies": { - "onetime": "^5.1.0", - "signal-exit": "^3.0.2" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/ret": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/ret/-/ret-0.2.2.tgz", - "integrity": "sha512-M0b3YWQs7R3Z917WRQy1HHA7Ba7D8hvZg6UE5mLykJxQVE2ju0IXbGlaHPPlkY+WN7wFP+wUMXmBFA0aV6vYGQ==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/reusify": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", - "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", - "dev": true, - "engines": { - "iojs": ">=1.0.0", - "node": ">=0.10.0" - } - }, - "node_modules/rfc5646": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/rfc5646/-/rfc5646-3.0.0.tgz", - "integrity": "sha512-yFQuMO3ANS0jhQLB3b4NJGQ13RTm6tA9ZRf70nRSmOKchaT88pzh4fBdhcXEOptYdGw22vNqH7IRD/7pjDILZQ==" - }, - "node_modules/rimraf": { - "version": "5.0.5", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-5.0.5.tgz", - "integrity": "sha512-CqDakW+hMe/Bz202FPEymy68P+G50RfMQK+Qo5YUqc9SPipvbGjCGKd0RSKEelbsfQuw3g5NZDSrlZZAJurH1A==", - "dev": true, - "dependencies": { - "glob": "^10.3.7" - }, - "bin": { - "rimraf": "dist/esm/bin.mjs" - }, - "engines": { - "node": ">=14" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/rimraf/node_modules/brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", - "dev": true, - "dependencies": { - "balanced-match": "^1.0.0" - } - }, - "node_modules/rimraf/node_modules/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, - "dependencies": { - "path-key": "^3.1.0", - "shebang-command": "^2.0.0", - "which": "^2.0.1" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/rimraf/node_modules/foreground-child": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.1.1.tgz", - "integrity": "sha512-TMKDUnIte6bfb5nWv7V/caI169OHgvwjb7V4WkeUvbQQdjr5rWKqHFiKWb/fcOwB+CzBT+qbWjvj+DVwRskpIg==", - "dev": true, - "dependencies": { - "cross-spawn": "^7.0.0", - "signal-exit": "^4.0.1" - }, - "engines": { - "node": ">=14" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/rimraf/node_modules/glob": { - "version": "10.3.10", - "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.10.tgz", - "integrity": "sha512-fa46+tv1Ak0UPK1TOy/pZrIybNNt4HCv7SDzwyfiOZkvZLEbjsZkJBPtDHVshZjbecAoAGSC20MjLDG/qr679g==", - "dev": true, - "dependencies": { - "foreground-child": "^3.1.0", - "jackspeak": "^2.3.5", - "minimatch": "^9.0.1", - "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0", - "path-scurry": "^1.10.1" - }, - "bin": { - "glob": "dist/esm/bin.mjs" - }, - "engines": { - "node": ">=16 || 14 >=14.17" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/rimraf/node_modules/minimatch": { - "version": "9.0.3", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", - "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", - "dev": true, - "dependencies": { - "brace-expansion": "^2.0.1" - }, - "engines": { - "node": ">=16 || 14 >=14.17" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/rimraf/node_modules/path-key": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", - "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/rimraf/node_modules/shebang-command": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", - "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", - "dev": true, - "dependencies": { - "shebang-regex": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/rimraf/node_modules/shebang-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", - "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/rimraf/node_modules/signal-exit": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", - "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", - "dev": true, - "engines": { - "node": ">=14" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/rimraf/node_modules/which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, - "dependencies": { - "isexe": "^2.0.0" - }, - "bin": { - "node-which": "bin/node-which" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/ripemd160": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.2.tgz", - "integrity": "sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==", - "dependencies": { - "hash-base": "^3.0.0", - "inherits": "^2.0.1" - } - }, - "node_modules/rtree-sql.js": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/rtree-sql.js/-/rtree-sql.js-1.7.0.tgz", - "integrity": "sha512-hue7klBnBrM6pvUPSnXNNgA0yN9FIjmhb8QveVY9q5h/3b//Cd8jaafUE0Ty89fuiamaLEHRw8eQq8mTn6Df5Q==" - }, - "node_modules/run-async": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.4.1.tgz", - "integrity": "sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==", - "optional": true, - "engines": { - "node": ">=0.12.0" - } - }, - "node_modules/run-parallel": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", - "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "dependencies": { - "queue-microtask": "^1.2.2" - } - }, - "node_modules/rxjs": { - "version": "6.6.7", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", - "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", - "optional": true, - "dependencies": { - "tslib": "^1.9.0" - }, - "engines": { - "npm": ">=2.0.0" - } - }, - "node_modules/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==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] - }, - "node_modules/safer-buffer": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", - "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" - }, - "node_modules/sax": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/sax/-/sax-1.3.0.tgz", - "integrity": "sha512-0s+oAmw9zLl1V1cS9BtZN7JAd0cW5e0QH4W3LWEK6a4LaLEA2OTpGYWDY+6XasBLtz6wkm3u1xRw95mRuJ59WA==" - }, - "node_modules/semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "bin": { - "semver": "bin/semver" - } - }, - "node_modules/send": { - "version": "0.18.0", - "resolved": "https://registry.npmjs.org/send/-/send-0.18.0.tgz", - "integrity": "sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==", - "dependencies": { - "debug": "2.6.9", - "depd": "2.0.0", - "destroy": "1.2.0", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "etag": "~1.8.1", - "fresh": "0.5.2", - "http-errors": "2.0.0", - "mime": "1.6.0", - "ms": "2.1.3", - "on-finished": "2.4.1", - "range-parser": "~1.2.1", - "statuses": "2.0.1" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/send/node_modules/depd": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", - "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==", - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/send/node_modules/http-errors": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", - "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==", - "dependencies": { - "depd": "2.0.0", - "inherits": "2.0.4", - "setprototypeof": "1.2.0", - "statuses": "2.0.1", - "toidentifier": "1.0.1" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/send/node_modules/ms": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", - "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==" - }, - "node_modules/send/node_modules/on-finished": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz", - "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==", - "dependencies": { - "ee-first": "1.1.1" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/send/node_modules/statuses": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", - "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/serve-static": { - "version": "1.15.0", - "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.15.0.tgz", - "integrity": "sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==", - "dependencies": { - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "parseurl": "~1.3.3", - "send": "0.18.0" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/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 - }, - "node_modules/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, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/setprototypeof": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", - "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==" - }, - "node_modules/sha.js": { - "version": "2.4.11", - "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz", - "integrity": "sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==", - "dependencies": { - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" - }, - "bin": { - "sha.js": "bin.js" - } - }, - "node_modules/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, - "dependencies": { - "shebang-regex": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/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, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/shell-quote": { - "version": "1.7.3", - "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.7.3.tgz", - "integrity": "sha512-Vpfqwm4EnqGdlsBFNmHhxhElJYrdfcxPThu+ryKS5J8L/fhAwLazFZtq+S+TWZ9ANj2piSQLGj6NQg+lKPmxrw==", - "dev": true - }, - "node_modules/side-channel": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", - "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", - "dependencies": { - "call-bind": "^1.0.0", - "get-intrinsic": "^1.0.2", - "object-inspect": "^1.9.0" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/signal-exit": { - "version": "3.0.7", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", - "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", - "devOptional": true - }, - "node_modules/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==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] - }, - "node_modules/simple-get": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/simple-get/-/simple-get-4.0.1.tgz", - "integrity": "sha512-brv7p5WgH0jmQJr1ZDDfKDOSeWWg+OVypG99A/5vYGPqJ6pxiaHLy8nxtFjBA7oMa01ebA9gfh1uMCFqOuXxvA==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "dependencies": { - "decompress-response": "^6.0.0", - "once": "^1.3.1", - "simple-concat": "^1.0.0" - } - }, - "node_modules/simplify-js": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/simplify-js/-/simplify-js-1.2.4.tgz", - "integrity": "sha512-vITfSlwt7h/oyrU42R83mtzFpwYk3+mkH9bOHqq/Qw6n8rtR7aE3NZQ5fbcyCUVVmuMJR6ynsAhOfK2qoah8Jg==" - }, - "node_modules/sinon": { - "version": "7.5.0", - "resolved": "https://registry.npmjs.org/sinon/-/sinon-7.5.0.tgz", - "integrity": "sha512-AoD0oJWerp0/rY9czP/D6hDTTUYGpObhZjMpd7Cl/A6+j0xBE+ayL/ldfggkBXUs0IkvIiM1ljM8+WkOc5k78Q==", - "dev": true, - "dependencies": { - "@sinonjs/commons": "^1.4.0", - "@sinonjs/formatio": "^3.2.1", - "@sinonjs/samsam": "^3.3.3", - "diff": "^3.5.0", - "lolex": "^4.2.0", - "nise": "^1.5.2", - "supports-color": "^5.5.0" - } - }, - "node_modules/sinon-chai": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/sinon-chai/-/sinon-chai-3.3.0.tgz", - "integrity": "sha512-r2JhDY7gbbmh5z3Q62pNbrjxZdOAjpsqW/8yxAZRSqLZqowmfGZPGUZPFf3UX36NLis0cv8VEM5IJh9HgkSOAA==", - "dev": true, - "peerDependencies": { - "chai": "^4.0.0", - "sinon": ">=4.0.0 <8.0.0" - } - }, - "node_modules/sinon-mongoose": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/sinon-mongoose/-/sinon-mongoose-2.3.0.tgz", - "integrity": "sha512-d0rrL53wuDDs91GMCFAvQam64IpdVfkaxA4cGLTZfw1d5tTg6+F/D7F080d1n3d1gSHJBZLUf9pGpijC/x7xKQ==", - "dev": true, - "peerDependencies": { - "sinon": "5 - 7" - } - }, - "node_modules/sinon/node_modules/has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/sinon/node_modules/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, - "dependencies": { - "has-flag": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/slash": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-4.0.0.tgz", - "integrity": "sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==", - "dev": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/sliced": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/sliced/-/sliced-1.0.1.tgz", - "integrity": "sha1-CzpmK10Ewxd7GSa+qCsD+Dei70E=" - }, - "node_modules/smart-buffer": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.2.0.tgz", - "integrity": "sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==", - "dev": true, - "engines": { - "node": ">= 6.0.0", - "npm": ">= 3.0.0" - } - }, - "node_modules/socks": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/socks/-/socks-2.7.1.tgz", - "integrity": "sha512-7maUZy1N7uo6+WVEX6psASxtNlKaNVMlGQKkG/63nEDdLOWNbiUMoLK7X4uYoLhQstau72mLgfEWcXcwsaHbYQ==", - "dev": true, - "dependencies": { - "ip": "^2.0.0", - "smart-buffer": "^4.2.0" - }, - "engines": { - "node": ">= 10.13.0", - "npm": ">= 3.0.0" - } - }, - "node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/sparse-bitfield": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/sparse-bitfield/-/sparse-bitfield-3.0.3.tgz", - "integrity": "sha512-kvzhi7vqKTfkh0PZU+2D2PIllw2ymqJKujUcyPMd9Y75Nv4nPbGJZXNhxsgdQab2BmlDct1YnfQCguEvHr7VsQ==", - "dev": true, - "optional": true, - "dependencies": { - "memory-pager": "^1.0.2" - } - }, - "node_modules/spawn-wrap": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/spawn-wrap/-/spawn-wrap-1.4.3.tgz", - "integrity": "sha512-IgB8md0QW/+tWqcavuFgKYR/qIRvJkRLPJDFaoXtLLUaVcCDK0+HeFTkmQHj3eprcYhc+gOl0aEA1w7qZlYezw==", - "dev": true, - "dependencies": { - "foreground-child": "^1.5.6", - "mkdirp": "^0.5.0", - "os-homedir": "^1.0.1", - "rimraf": "^2.6.2", - "signal-exit": "^3.0.2", - "which": "^1.3.0" - } - }, - "node_modules/spawn-wrap/node_modules/mkdirp": { - "version": "0.5.6", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", - "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", - "dev": true, - "dependencies": { - "minimist": "^1.2.6" - }, - "bin": { - "mkdirp": "bin/cmd.js" - } - }, - "node_modules/spawn-wrap/node_modules/rimraf": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", - "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", - "dev": true, - "dependencies": { - "glob": "^7.1.3" - }, - "bin": { - "rimraf": "bin.js" - } - }, - "node_modules/spdx-correct": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz", - "integrity": "sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==", - "dev": true, - "dependencies": { - "spdx-expression-parse": "^3.0.0", - "spdx-license-ids": "^3.0.0" - } - }, - "node_modules/spdx-exceptions": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz", - "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==", - "dev": true - }, - "node_modules/spdx-expression-parse": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", - "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", - "dev": true, - "dependencies": { - "spdx-exceptions": "^2.1.0", - "spdx-license-ids": "^3.0.0" - } - }, - "node_modules/spdx-license-ids": { - "version": "3.0.11", - "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.11.tgz", - "integrity": "sha512-Ctl2BrFiM0X3MANYgj3CkygxhRmr9mi6xhejbdO960nF6EDJApTYpn0BQnDKlnNBULKiCN1n3w9EBkHK8ZWg+g==", - "dev": true - }, - "node_modules/splaytree": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/splaytree/-/splaytree-3.1.1.tgz", - "integrity": "sha512-9FaQ18FF0+sZc/ieEeXHt+Jw2eSpUgUtTLDYB/HXKWvhYVyOc7h1hzkn5MMO3GPib9MmXG1go8+OsBBzs/NMww==" - }, - "node_modules/split": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/split/-/split-1.0.1.tgz", - "integrity": "sha512-mTyOoPbrivtXnwnIxZRFYRrPNtEFKlpB2fvjSnCQUiAA6qAZzqwna5envK4uk6OIeP17CsdF3rSBGYVBsU0Tkg==", - "dependencies": { - "through": "2" - }, - "engines": { - "node": "*" - } - }, - "node_modules/sprintf-js": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=" - }, - "node_modules/sshpk": { - "version": "1.17.0", - "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.17.0.tgz", - "integrity": "sha512-/9HIEs1ZXGhSPE8X6Ccm7Nam1z8KcoCqPdI7ecm1N33EzAetWahvQWVqLZtaZQ+IDKX4IyA2o0gBzqIMkAagHQ==", - "dev": true, - "dependencies": { - "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" - }, - "bin": { - "sshpk-conv": "bin/sshpk-conv", - "sshpk-sign": "bin/sshpk-sign", - "sshpk-verify": "bin/sshpk-verify" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/stack-trace": { - "version": "0.0.10", - "resolved": "https://registry.npmjs.org/stack-trace/-/stack-trace-0.0.10.tgz", - "integrity": "sha1-VHxws0fo0ytOEI6hoqFZ5f3eGcA=", - "engines": { - "node": "*" - } - }, - "node_modules/statuses": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", - "integrity": "sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow=", - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/stream-combiner": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/stream-combiner/-/stream-combiner-0.2.2.tgz", - "integrity": "sha1-rsjLrBd7Vrb0+kec7YwZEs7lKFg=", - "dependencies": { - "duplexer": "~0.1.1", - "through": "~2.3.4" - } - }, - "node_modules/streamsearch": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/streamsearch/-/streamsearch-1.1.0.tgz", - "integrity": "sha512-Mcc5wHehp9aXz1ax6bZUyY5afg9u2rv5cqQI3mRrYkGC8rW2hM02jWuwjtL++LS5qinSyhj2QfLyNsuc+VsExg==", - "engines": { - "node": ">=10.0.0" - } - }, - "node_modules/streamx": { - "version": "2.15.6", - "resolved": "https://registry.npmjs.org/streamx/-/streamx-2.15.6.tgz", - "integrity": "sha512-q+vQL4AAz+FdfT137VF69Cc/APqUbxy+MDOImRrMvchJpigHj9GksgDU2LYbO9rx7RX6osWgxJB2WxhYv4SZAw==", - "dev": true, - "dependencies": { - "fast-fifo": "^1.1.0", - "queue-tick": "^1.0.1" - } - }, - "node_modules/string_decoder": { - "version": "0.10.31", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", - "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=" - }, - "node_modules/string-width": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", - "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", - "dev": true, - "dependencies": { - "code-point-at": "^1.0.0", - "is-fullwidth-code-point": "^1.0.0", - "strip-ansi": "^3.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/string-width-cjs": { - "name": "string-width", - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/string-width-cjs/node_modules/ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/string-width-cjs/node_modules/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, - "engines": { - "node": ">=8" - } - }, - "node_modules/string-width-cjs/node_modules/strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "dependencies": { - "ansi-regex": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/string.prototype.padend": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/string.prototype.padend/-/string.prototype.padend-3.1.3.tgz", - "integrity": "sha512-jNIIeokznm8SD/TZISQsZKYu7RJyheFNt84DUPrh482GC8RVp2MKqm2O5oBRdGxbDQoXrhhWtPIWQOiy20svUg==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3", - "es-abstract": "^1.19.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/string.prototype.trimend": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.4.tgz", - "integrity": "sha512-y9xCjw1P23Awk8EvTpcyL2NIr1j7wJ39f+k6lvRnSMz+mz9CGz9NYPelDk42kOz6+ql8xjfK8oYzy3jAP5QU5A==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/string.prototype.trimstart": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.4.tgz", - "integrity": "sha512-jh6e984OBfvxS50tdY2nRZnoC5/mLFKOREQfw8t5yytkoUsJRNxvI/E39qu1sD0OtWI3OC0XgKSmcWwziwYuZw==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/strip-ansi": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", - "dev": true, - "dependencies": { - "ansi-regex": "^2.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/strip-ansi-cjs": { - "name": "strip-ansi", - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "dependencies": { - "ansi-regex": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/strip-ansi-cjs/node_modules/ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/strip-bom": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", - "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/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=", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/strtok3": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/strtok3/-/strtok3-6.3.0.tgz", - "integrity": "sha512-fZtbhtvI9I48xDSywd/somNqgUHl2L2cstmXCCif0itOf96jeW18MBSyrLuNicYQVkvpOxkZtkzujiTJ9LW5Jw==", - "dependencies": { - "@tokenizer/token": "^0.3.0", - "peek-readable": "^4.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/Borewit" - } - }, - "node_modules/superagent": { - "version": "8.1.2", - "resolved": "https://registry.npmjs.org/superagent/-/superagent-8.1.2.tgz", - "integrity": "sha512-6WTxW1EB6yCxV5VFOIPQruWGHqc3yI7hEmZK6h+pyk69Lk/Ut7rLUY6W/ONF2MjBuGjvmMiIpsrVJ2vjrHlslA==", - "dependencies": { - "component-emitter": "^1.3.0", - "cookiejar": "^2.1.4", - "debug": "^4.3.4", - "fast-safe-stringify": "^2.1.1", - "form-data": "^4.0.0", - "formidable": "^2.1.2", - "methods": "^1.1.2", - "mime": "2.6.0", - "qs": "^6.11.0", - "semver": "^7.3.8" - }, - "engines": { - "node": ">=6.4.0 <13 || >=14" - } - }, - "node_modules/superagent/node_modules/debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", - "dependencies": { - "ms": "2.1.2" - }, - "engines": { - "node": ">=6.0" - }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } - } - }, - "node_modules/superagent/node_modules/form-data": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz", - "integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==", - "dependencies": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.8", - "mime-types": "^2.1.12" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/superagent/node_modules/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==", - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/superagent/node_modules/mime": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/mime/-/mime-2.6.0.tgz", - "integrity": "sha512-USPkMeET31rOMiarsBNIHZKLGgvKc/LrjofAnBlOttf5ajRvqiRA8QsenbcooctK6d6Ts6aqZXBA+XbkKthiQg==", - "bin": { - "mime": "cli.js" - }, - "engines": { - "node": ">=4.0.0" - } - }, - "node_modules/superagent/node_modules/ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" - }, - "node_modules/superagent/node_modules/qs": { - "version": "6.11.2", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.11.2.tgz", - "integrity": "sha512-tDNIz22aBzCDxLtVH++VnTfzxlfeK5CbqohpSqpJgj1Wg/cQbStNAz3NuqCs5vV+pjBsK4x4pN9HlVh7rcYRiA==", - "dependencies": { - "side-channel": "^1.0.4" - }, - "engines": { - "node": ">=0.6" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/superagent/node_modules/semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/supertest": { - "version": "6.3.3", - "resolved": "https://registry.npmjs.org/supertest/-/supertest-6.3.3.tgz", - "integrity": "sha512-EMCG6G8gDu5qEqRQ3JjjPs6+FYT1a7Hv5ApHvtSghmOFJYtsU5S+pSb6Y2EUeCEY3CmEL3mmQ8YWlPOzQomabA==", - "dev": true, - "dependencies": { - "methods": "^1.1.2", - "superagent": "^8.0.5" - }, - "engines": { - "node": ">=6.4.0" - } - }, - "node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "devOptional": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/supports-preserve-symlinks-flag": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", - "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/svg-captcha": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/svg-captcha/-/svg-captcha-1.4.0.tgz", - "integrity": "sha512-/fkkhavXPE57zRRCjNqAP3txRCSncpMx3NnNZL7iEoyAtYwUjPhJxW6FQTQPG5UPEmCrbFoXS10C3YdJlW7PDg==", - "dependencies": { - "opentype.js": "^0.7.3" - }, - "engines": { - "node": ">=4.x" - } - }, - "node_modules/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==", - "dependencies": { - "chownr": "^1.1.1", - "mkdirp-classic": "^0.5.2", - "pump": "^3.0.0", - "tar-stream": "^2.1.4" - } - }, - "node_modules/tar-stream": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-2.2.0.tgz", - "integrity": "sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ==", - "dependencies": { - "bl": "^4.0.3", - "end-of-stream": "^1.4.1", - "fs-constants": "^1.0.0", - "inherits": "^2.0.3", - "readable-stream": "^3.1.1" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/tar-stream/node_modules/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==", - "dependencies": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/tar-stream/node_modules/string_decoder": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", - "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", - "dependencies": { - "safe-buffer": "~5.2.0" - } - }, - "node_modules/test-exclude": { - "version": "5.2.3", - "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-5.2.3.tgz", - "integrity": "sha512-M+oxtseCFO3EDtAaGH7iiej3CBkzXqFMbzqYAACdzKui4eZA+pq3tZEwChvOdNfa7xxy8BfbmgJSIr43cC/+2g==", - "dev": true, - "dependencies": { - "glob": "^7.1.3", - "minimatch": "^3.0.4", - "read-pkg-up": "^4.0.0", - "require-main-filename": "^2.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/test-exclude/node_modules/find-up": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", - "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", - "dev": true, - "dependencies": { - "locate-path": "^3.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/test-exclude/node_modules/locate-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", - "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", - "dev": true, - "dependencies": { - "p-locate": "^3.0.0", - "path-exists": "^3.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/test-exclude/node_modules/p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", - "dev": true, - "dependencies": { - "p-try": "^2.0.0" - }, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/test-exclude/node_modules/p-locate": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", - "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", - "dev": true, - "dependencies": { - "p-limit": "^2.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/test-exclude/node_modules/read-pkg-up": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-4.0.0.tgz", - "integrity": "sha512-6etQSH7nJGsK0RbG/2TeDzZFa8shjQ1um+SwQQ5cwKy0dhSXdOncEhb1CPpvQG4h7FyOV6EB6YlV0yJvZQNAkA==", - "dev": true, - "dependencies": { - "find-up": "^3.0.0", - "read-pkg": "^3.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/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 - }, - "node_modules/through": { - "version": "2.3.8", - "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", - "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=" - }, - "node_modules/tiny-inflate": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/tiny-inflate/-/tiny-inflate-1.0.3.tgz", - "integrity": "sha512-pkY1fj1cKHb2seWDy0B16HeWyczlJA9/WW3u3c4z/NiWDsO3DOU5D7nhTLE9CF0yXv/QZFY7sEJmj24dK+Rrqw==" - }, - "node_modules/tmp": { - "version": "0.0.33", - "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", - "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", - "optional": true, - "dependencies": { - "os-tmpdir": "~1.0.2" - }, - "engines": { - "node": ">=0.6.0" - } - }, - "node_modules/to-regex-range": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", - "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", - "dev": true, - "dependencies": { - "is-number": "^7.0.0" - }, - "engines": { - "node": ">=8.0" - } - }, - "node_modules/toidentifier": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz", - "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==", - "engines": { - "node": ">=0.6" - } - }, - "node_modules/token-stream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/token-stream/-/token-stream-1.0.0.tgz", - "integrity": "sha512-VSsyNPPW74RpHwR8Fc21uubwHY7wMDeJLys2IX5zJNih+OnAnaifKHo+1LHT7DAdloQ7apeaaWg8l7qnf/TnEg==" - }, - "node_modules/token-types": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/token-types/-/token-types-4.2.1.tgz", - "integrity": "sha512-6udB24Q737UD/SDsKAHI9FCRP7Bqc9D/MQUV02ORQg5iskjtLJlZJNdN4kKtcdtwCeWIwIHDGaUsTsCCAa8sFQ==", - "dependencies": { - "@tokenizer/token": "^0.3.0", - "ieee754": "^1.2.1" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/Borewit" - } - }, - "node_modules/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==", - "dev": true, - "dependencies": { - "psl": "^1.1.28", - "punycode": "^2.1.1" - }, - "engines": { - "node": ">=0.8" - } - }, - "node_modules/tr46": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", - "integrity": "sha1-gYT9NH2snNwYWZLzpmIuFLnZq2o=" - }, - "node_modules/ts-api-utils": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-1.0.3.tgz", - "integrity": "sha512-wNMeqtMz5NtwpT/UZGY5alT+VoKdSsOOP/kqHFcUW1P/VRhH2wJ48+DN2WwUliNbQ976ETwDL0Ifd2VVvgonvg==", - "dev": true, - "engines": { - "node": ">=16.13.0" - }, - "peerDependencies": { - "typescript": ">=4.2.0" - } - }, - "node_modules/ts-mockito": { - "version": "2.6.1", - "resolved": "https://registry.npmjs.org/ts-mockito/-/ts-mockito-2.6.1.tgz", - "integrity": "sha512-qU9m/oEBQrKq5hwfbJ7MgmVN5Gu6lFnIGWvpxSjrqq6YYEVv+RwVFWySbZMBgazsWqv6ctAyVBpo9TmAxnOEKw==", - "dev": true, - "dependencies": { - "lodash": "^4.17.5" - } - }, - "node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "optional": true - }, - "node_modules/tunnel-agent": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", - "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", - "dependencies": { - "safe-buffer": "^5.0.1" - }, - "engines": { - "node": "*" - } - }, - "node_modules/tweetnacl": { - "version": "0.14.5", - "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", - "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=", - "dev": true - }, - "node_modules/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, - "dependencies": { - "prelude-ls": "^1.2.1" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/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==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/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==", - "optional": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/type-is": { - "version": "1.6.18", - "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz", - "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==", - "dependencies": { - "media-typer": "0.3.0", - "mime-types": "~2.1.24" - }, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/typedarray": { - "version": "0.0.6", - "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", - "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=" - }, - "node_modules/typescript": { - "version": "4.6.4", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.6.4.tgz", - "integrity": "sha512-9ia/jWHIEbo49HfjrLGfKbZSuWo9iTMwXO+Ca3pRsSpbsMbc7/IU8NKdCZVRRBafVPGnoJeFL76ZOAA84I9fEg==", - "dev": true, - "bin": { - "tsc": "bin/tsc", - "tsserver": "bin/tsserver" - }, - "engines": { - "node": ">=4.2.0" - } - }, - "node_modules/uid-safe": { - "version": "2.1.5", - "resolved": "https://registry.npmjs.org/uid-safe/-/uid-safe-2.1.5.tgz", - "integrity": "sha512-KPHm4VL5dDXKz01UuEd88Df+KzynaohSL9fBh096KWAxSKZQDI2uBrVqtvRM4rwrIrRRKsdLNML/lnaaVSRioA==", - "dependencies": { - "random-bytes": "~1.0.0" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/uid2": { - "version": "0.0.4", - "resolved": "https://registry.npmjs.org/uid2/-/uid2-0.0.4.tgz", - "integrity": "sha512-IevTus0SbGwQzYh3+fRsAMTVVPOoIVufzacXcHPmdlle1jUpq7BRL+mw3dgeLanvGZdwwbWhRV6XrcFNdBmjWA==" - }, - "node_modules/unbox-primitive": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.1.tgz", - "integrity": "sha512-tZU/3NqK3dA5gpE1KtyiJUrEB0lxnGkMFHptJ7q6ewdZ8s12QrODwNbhIJStmJkd1QDXa1NRA8aF2A1zk/Ypyw==", - "dev": true, - "dependencies": { - "function-bind": "^1.1.1", - "has-bigints": "^1.0.1", - "has-symbols": "^1.0.2", - "which-boxed-primitive": "^1.0.2" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/underscore": { - "version": "1.8.3", - "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.8.3.tgz", - "integrity": "sha1-Tz+1OxBuYJf8+ctBCfKl6b36UCI=" - }, - "node_modules/uniqid": { - "version": "5.4.0", - "resolved": "https://registry.npmjs.org/uniqid/-/uniqid-5.4.0.tgz", - "integrity": "sha512-38JRbJ4Fj94VmnC7G/J/5n5SC7Ab46OM5iNtSstB/ko3l1b5g7ALt4qzHFgGciFkyiRNtDXtLNb+VsxtMSE77A==" - }, - "node_modules/universalify": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", - "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", - "engines": { - "node": ">= 4.0.0" - } - }, - "node_modules/unpipe": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", - "integrity": "sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw=", - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/uri-js": { - "version": "4.4.1", - "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", - "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", - "dev": true, - "dependencies": { - "punycode": "^2.1.0" - } - }, - "node_modules/util": { - "version": "0.12.4", - "resolved": "https://registry.npmjs.org/util/-/util-0.12.4.tgz", - "integrity": "sha512-bxZ9qtSlGUWSOy9Qa9Xgk11kSslpuZwaxCg4sNIDj6FLucDab2JxnHwyNTCpHMtK1MjoQiWQ6DiUMZYbSrO+Sw==", - "dev": true, - "dependencies": { - "inherits": "^2.0.3", - "is-arguments": "^1.0.4", - "is-generator-function": "^1.0.7", - "is-typed-array": "^1.1.3", - "safe-buffer": "^5.1.2", - "which-typed-array": "^1.1.2" - } - }, - "node_modules/util-deprecate": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" - }, - "node_modules/utils-merge": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", - "integrity": "sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM=", - "engines": { - "node": ">= 0.4.0" - } - }, - "node_modules/uuid": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", - "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==", - "deprecated": "Please upgrade to version 7 or higher. Older versions may use Math.random() in certain circumstances, which is known to be problematic. See https://v8.dev/blog/math-random for details.", - "dev": true, - "bin": { - "uuid": "bin/uuid" - } - }, - "node_modules/validate-npm-package-license": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", - "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", - "dev": true, - "dependencies": { - "spdx-correct": "^3.0.0", - "spdx-expression-parse": "^3.0.0" - } - }, - "node_modules/vary": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", - "integrity": "sha1-IpnwLG3tMNSllhsLn3RSShj2NPw=", - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/vasync": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/vasync/-/vasync-2.2.1.tgz", - "integrity": "sha512-Hq72JaTpcTFdWiNA4Y22Amej2GH3BFmBaKPPlDZ4/oC8HNn2ISHLkFrJU4Ds8R3jcUi7oo5Y9jcMHKjES+N9wQ==", - "engines": [ - "node >=0.6.0" - ], - "dependencies": { - "verror": "1.10.0" - } - }, - "node_modules/vasync/node_modules/core-util-is": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", - "integrity": "sha512-3lqz5YjWTYnW6dlDa5TLaTCcShfar1e40rmcJVwCBJC6mWlFuj0eCHIElmG1g5kyuJ/GD+8Wn4FFCcz4gJPfaQ==" - }, - "node_modules/vasync/node_modules/verror": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", - "integrity": "sha512-ZZKSmDAEFOijERBLkmYfJ+vmk3w+7hOLYDNkRCuRuMJGEmqYNCNLyBBFwWKVMhfwaEF3WOd0Zlw86U/WC/+nYw==", - "engines": [ - "node >=0.6.0" - ], - "dependencies": { - "assert-plus": "^1.0.0", - "core-util-is": "1.0.2", - "extsprintf": "^1.2.0" - } - }, - "node_modules/verror": { - "version": "1.10.1", - "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.1.tgz", - "integrity": "sha512-veufcmxri4e3XSrT0xwfUR7kguIkaxBeosDg00yDWhk49wdwkSUrvvsm7nc75e1PUyvIeZj6nS8VQRYz2/S4Xg==", - "dependencies": { - "assert-plus": "^1.0.0", - "core-util-is": "1.0.2", - "extsprintf": "^1.2.0" - }, - "engines": { - "node": ">=0.6.0" - } - }, - "node_modules/verror/node_modules/core-util-is": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", - "integrity": "sha512-3lqz5YjWTYnW6dlDa5TLaTCcShfar1e40rmcJVwCBJC6mWlFuj0eCHIElmG1g5kyuJ/GD+8Wn4FFCcz4gJPfaQ==" - }, - "node_modules/void-elements": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/void-elements/-/void-elements-3.1.0.tgz", - "integrity": "sha512-Dhxzh5HZuiHQhbvTW9AMetFfBHDMYpo23Uo9btPXgdYP+3T5S+p+jgNy7spra+veYhBP2dCSgxR/i2Y02h5/6w==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/walk": { - "version": "2.3.4", - "resolved": "https://registry.npmjs.org/walk/-/walk-2.3.4.tgz", - "integrity": "sha1-Bs4VQVNTE+iswo6S60Jem2T0xQA=", - "dependencies": { - "foreachasync": "3.x" - } - }, - "node_modules/webidl-conversions": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", - "integrity": "sha1-JFNCdeKnvGvnvIZhHMFq4KVlSHE=" - }, - "node_modules/webworkify": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/webworkify/-/webworkify-1.5.0.tgz", - "integrity": "sha512-AMcUeyXAhbACL8S2hqqdqOLqvJ8ylmIbNwUIqQujRSouf4+eUFaXbG6F1Rbu+srlJMmxQWsiU7mOJi0nMBfM1g==" - }, - "node_modules/whatwg-url": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", - "integrity": "sha1-lmRU6HZUYuN2RNNib2dCzotwll0=", - "dependencies": { - "tr46": "~0.0.3", - "webidl-conversions": "^3.0.0" - } - }, - "node_modules/which": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", - "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", - "dependencies": { - "isexe": "^2.0.0" - }, - "bin": { - "which": "bin/which" - } - }, - "node_modules/which-boxed-primitive": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz", - "integrity": "sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==", - "dev": true, - "dependencies": { - "is-bigint": "^1.0.1", - "is-boolean-object": "^1.1.0", - "is-number-object": "^1.0.4", - "is-string": "^1.0.5", - "is-symbol": "^1.0.3" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/which-collection": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/which-collection/-/which-collection-1.0.1.tgz", - "integrity": "sha512-W8xeTUwaln8i3K/cY1nGXzdnVZlidBcagyNFtBdD5kxnb4TvGKR7FfSIS3mYpwWS1QUCutfKz8IY8RjftB0+1A==", - "dev": true, - "dependencies": { - "is-map": "^2.0.1", - "is-set": "^2.0.1", - "is-weakmap": "^2.0.1", - "is-weakset": "^2.0.1" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/which-module": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", - "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=", - "dev": true - }, - "node_modules/which-typed-array": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.7.tgz", - "integrity": "sha512-vjxaB4nfDqwKI0ws7wZpxIlde1XrLX5uB0ZjpfshgmapJMD7jJWhZI+yToJTqaFByF0eNBcYxbjmCzoRP7CfEw==", - "dev": true, - "dependencies": { - "available-typed-arrays": "^1.0.5", - "call-bind": "^1.0.2", - "es-abstract": "^1.18.5", - "foreach": "^2.0.5", - "has-tostringtag": "^1.0.0", - "is-typed-array": "^1.1.7" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/winston": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/winston/-/winston-1.0.1.tgz", - "integrity": "sha1-TG9aEWfrxRasKbduTq24c8FSiaQ=", - "dependencies": { - "async": "0.9.x", - "colors": "1.0.x", - "cycle": "1.0.x", - "eyes": "0.1.x", - "isstream": "0.1.x", - "pkginfo": "0.3.x", - "stack-trace": "0.0.x" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/winston/node_modules/async": { - "version": "0.9.2", - "resolved": "https://registry.npmjs.org/async/-/async-0.9.2.tgz", - "integrity": "sha1-rqdNXmHB+JlhO/ZL2mbUx48v0X0=" - }, - "node_modules/with": { - "version": "7.0.2", - "resolved": "https://registry.npmjs.org/with/-/with-7.0.2.tgz", - "integrity": "sha512-RNGKj82nUPg3g5ygxkQl0R937xLyho1J24ItRCBTr/m1YnZkzJy1hUiHUJrc/VlsDQzsCnInEGSg3bci0Lmd4w==", - "dependencies": { - "@babel/parser": "^7.9.6", - "@babel/types": "^7.9.6", - "assert-never": "^1.2.1", - "babel-walk": "3.0.0-canary-5" - }, - "engines": { - "node": ">= 10.0.0" - } - }, - "node_modules/wkt-parser": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/wkt-parser/-/wkt-parser-1.3.2.tgz", - "integrity": "sha512-A26BOOo7sHAagyxG7iuRhnKMO7Q3mEOiOT4oGUmohtN/Li5wameeU4S6f8vWw6NADTVKljBs8bzA8JPQgSEMVQ==" - }, - "node_modules/wkx": { - "version": "0.4.8", - "resolved": "https://registry.npmjs.org/wkx/-/wkx-0.4.8.tgz", - "integrity": "sha512-ikPXMM9IR/gy/LwiOSqWlSL3X/J5uk9EO2hHNRXS41eTLXaUFEVw9fn/593jW/tE5tedNg8YjT5HkCa4FqQZyQ==", - "dependencies": { - "@types/node": "*" - } - }, - "node_modules/wms-capabilities": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/wms-capabilities/-/wms-capabilities-0.4.1.tgz", - "integrity": "sha512-BfGzjDtF3GdWRFvySqf8y9EU1gBIzAd6zIlg+J6q9rYxiqz+YMAmSOHnMPRNOuP2VGPvcNkxXZdxBtMO0D652g==", - "dependencies": { - "minimist": "^1.2.0" - }, - "bin": { - "wmscapabilities": "bin/wmscapabilities" - } - }, - "node_modules/wrap-ansi": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-5.1.0.tgz", - "integrity": "sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q==", - "dev": true, - "dependencies": { - "ansi-styles": "^3.2.0", - "string-width": "^3.0.0", - "strip-ansi": "^5.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/wrap-ansi-cjs": { - "name": "wrap-ansi", - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", - "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/wrap-ansi?sponsor=1" - } - }, - "node_modules/wrap-ansi-cjs/node_modules/ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/wrap-ansi-cjs/node_modules/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, - "engines": { - "node": ">=8" - } - }, - "node_modules/wrap-ansi-cjs/node_modules/string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/wrap-ansi-cjs/node_modules/strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "dependencies": { - "ansi-regex": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/wrap-ansi/node_modules/ansi-regex": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.1.tgz", - "integrity": "sha512-ILlv4k/3f6vfQ4OoP2AGvirOktlQ98ZEL1k9FaQjxa3L1abBgbuTDAdPOpvbGncC0BTVQrl+OM8xZGK6tWXt7g==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/wrap-ansi/node_modules/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, - "dependencies": { - "color-convert": "^1.9.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/wrap-ansi/node_modules/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, - "dependencies": { - "color-name": "1.1.3" - } - }, - "node_modules/wrap-ansi/node_modules/color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", - "dev": true - }, - "node_modules/wrap-ansi/node_modules/emoji-regex": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", - "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", - "dev": true - }, - "node_modules/wrap-ansi/node_modules/is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/wrap-ansi/node_modules/string-width": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", - "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", - "dev": true, - "dependencies": { - "emoji-regex": "^7.0.1", - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^5.1.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/wrap-ansi/node_modules/strip-ansi": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", - "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", - "dev": true, - "dependencies": { - "ansi-regex": "^4.1.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/wrappy": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" - }, - "node_modules/write-file-atomic": { - "version": "2.4.3", - "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-2.4.3.tgz", - "integrity": "sha512-GaETH5wwsX+GcnzhPgKcKjJ6M2Cq3/iZp1WyY/X1CSqrW+jVNM9Y7D8EC2sM4ZG/V8wZlSniJnCKWPmBYAucRQ==", - "dev": true, - "dependencies": { - "graceful-fs": "^4.1.11", - "imurmurhash": "^0.1.4", - "signal-exit": "^3.0.2" - } - }, - "node_modules/wtfnode": { - "version": "0.8.4", - "resolved": "https://registry.npmjs.org/wtfnode/-/wtfnode-0.8.4.tgz", - "integrity": "sha512-64GEKtMt/MUBuAm+8kHqP74ojjafzu00aT0JKsmkIwYmjRQ/odO0yhbzKLm+Z9v1gMla+8dwITRKzTAlHsB+Og==", - "dev": true, - "bin": { - "wtfnode": "proxy.js" - } - }, - "node_modules/xml-crypto": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/xml-crypto/-/xml-crypto-3.2.0.tgz", - "integrity": "sha512-qVurBUOQrmvlgmZqIVBqmb06TD2a/PpEUfFPgD7BuBfjmoH4zgkqaWSIJrnymlCvM2GGt9x+XtJFA+ttoAufqg==", - "dependencies": { - "@xmldom/xmldom": "^0.8.8", - "xpath": "0.0.32" - }, - "engines": { - "node": ">=4.0.0" - } - }, - "node_modules/xml-crypto/node_modules/xpath": { - "version": "0.0.32", - "resolved": "https://registry.npmjs.org/xpath/-/xpath-0.0.32.tgz", - "integrity": "sha512-rxMJhSIoiO8vXcWvSifKqhvV96GjiD5wYb8/QHdoRyQvraTpp4IEv944nhGausZZ3u7dhQXteZuZbaqfpB7uYw==", - "engines": { - "node": ">=0.6.0" - } - }, - "node_modules/xml-encryption": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/xml-encryption/-/xml-encryption-3.0.2.tgz", - "integrity": "sha512-VxYXPvsWB01/aqVLd6ZMPWZ+qaj0aIdF+cStrVJMcFj3iymwZeI0ABzB3VqMYv48DkSpRhnrXqTUkR34j+UDyg==", - "dependencies": { - "@xmldom/xmldom": "^0.8.5", - "escape-html": "^1.0.3", - "xpath": "0.0.32" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/xml-encryption/node_modules/xpath": { - "version": "0.0.32", - "resolved": "https://registry.npmjs.org/xpath/-/xpath-0.0.32.tgz", - "integrity": "sha512-rxMJhSIoiO8vXcWvSifKqhvV96GjiD5wYb8/QHdoRyQvraTpp4IEv944nhGausZZ3u7dhQXteZuZbaqfpB7uYw==", - "engines": { - "node": ">=0.6.0" - } - }, - "node_modules/xml2js": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/xml2js/-/xml2js-0.5.0.tgz", - "integrity": "sha512-drPFnkQJik/O+uPKpqSgr22mpuFHqKdbS835iAQrUC73L2F5WkboIRd63ai/2Yg6I1jzifPFKH2NTK+cfglkIA==", - "dependencies": { - "sax": ">=0.6.0", - "xmlbuilder": "~11.0.0" - }, - "engines": { - "node": ">=4.0.0" - } - }, - "node_modules/xml2js/node_modules/xmlbuilder": { - "version": "11.0.1", - "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-11.0.1.tgz", - "integrity": "sha512-fDlsI/kFEx7gLvbecc0/ohLG50fugQp8ryHzMTuW9vSa1GJ0XYWKnhsUx7oie3G98+r56aTQIUB4kht42R3JvA==", - "engines": { - "node": ">=4.0" - } - }, - "node_modules/xmlbuilder": { - "version": "15.1.1", - "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-15.1.1.tgz", - "integrity": "sha512-yMqGBqtXyeN1e3TGYvgNgDVZ3j84W4cwkOXQswghol6APgZWaff9lnbvN7MHYJOiXsvGPXtjTYJEiC9J2wv9Eg==", - "engines": { - "node": ">=8.0" - } - }, - "node_modules/xmlbuilder2": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/xmlbuilder2/-/xmlbuilder2-3.0.2.tgz", - "integrity": "sha512-h4MUawGY21CTdhV4xm3DG9dgsqyhDkZvVJBx88beqX8wJs3VgyGQgAn5VreHuae6unTQxh115aMK5InCVmOIKw==", - "dependencies": { - "@oozcitak/dom": "1.15.10", - "@oozcitak/infra": "1.0.8", - "@oozcitak/util": "8.3.8", - "@types/node": "*", - "js-yaml": "3.14.0" - }, - "engines": { - "node": ">=12.0" - } - }, - "node_modules/xmlbuilder2/node_modules/esprima": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", - "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", - "bin": { - "esparse": "bin/esparse.js", - "esvalidate": "bin/esvalidate.js" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/xmlbuilder2/node_modules/js-yaml": { - "version": "3.14.0", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.0.tgz", - "integrity": "sha512-/4IbIeHcD9VMHFqDR/gQ7EdZdLimOvW2DdcxFjdyyZ9NsbS+ccrXqVWDtab/lRl5AlUqmpBx8EhPaWR+OtY17A==", - "dependencies": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" - }, - "bin": { - "js-yaml": "bin/js-yaml.js" - } - }, - "node_modules/xpath": { - "version": "0.0.23", - "resolved": "https://registry.npmjs.org/xpath/-/xpath-0.0.23.tgz", - "integrity": "sha1-9ej9xr3H5yiFsyNPQMuiZpWAqvo=", - "engines": { - "node": ">=0.6.0" - } - }, - "node_modules/xtend": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", - "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==", - "engines": { - "node": ">=0.4" - } - }, - "node_modules/y18n": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz", - "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==", - "dev": true - }, - "node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" - }, - "node_modules/yaml": { - "version": "1.10.2", - "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz", - "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==", - "engines": { - "node": ">= 6" - } - }, - "node_modules/yargs-unparser": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/yargs-unparser/-/yargs-unparser-1.6.0.tgz", - "integrity": "sha512-W9tKgmSn0DpSatfri0nx52Joq5hVXgeLiqR/5G0sZNDoLZFOr/xjBUDcShCOGNsBnEMNo1KAMBkTej1Hm62HTw==", - "dev": true, - "dependencies": { - "flat": "^4.1.0", - "lodash": "^4.17.15", - "yargs": "^13.3.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/yargs-unparser/node_modules/ansi-regex": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.1.tgz", - "integrity": "sha512-ILlv4k/3f6vfQ4OoP2AGvirOktlQ98ZEL1k9FaQjxa3L1abBgbuTDAdPOpvbGncC0BTVQrl+OM8xZGK6tWXt7g==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/yargs-unparser/node_modules/camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/yargs-unparser/node_modules/cliui": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-5.0.0.tgz", - "integrity": "sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA==", - "dev": true, - "dependencies": { - "string-width": "^3.1.0", - "strip-ansi": "^5.2.0", - "wrap-ansi": "^5.1.0" - } - }, - "node_modules/yargs-unparser/node_modules/emoji-regex": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", - "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", - "dev": true - }, - "node_modules/yargs-unparser/node_modules/find-up": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", - "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", - "dev": true, - "dependencies": { - "locate-path": "^3.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/yargs-unparser/node_modules/is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/yargs-unparser/node_modules/locate-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", - "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", - "dev": true, - "dependencies": { - "p-locate": "^3.0.0", - "path-exists": "^3.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/yargs-unparser/node_modules/p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", - "dev": true, - "dependencies": { - "p-try": "^2.0.0" - }, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/yargs-unparser/node_modules/p-locate": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", - "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", - "dev": true, - "dependencies": { - "p-limit": "^2.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/yargs-unparser/node_modules/string-width": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", - "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", - "dev": true, - "dependencies": { - "emoji-regex": "^7.0.1", - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^5.1.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/yargs-unparser/node_modules/strip-ansi": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", - "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", - "dev": true, - "dependencies": { - "ansi-regex": "^4.1.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/yargs-unparser/node_modules/yargs": { - "version": "13.3.2", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-13.3.2.tgz", - "integrity": "sha512-AX3Zw5iPruN5ie6xGRIDgqkT+ZhnRlZMLMHAs8tg7nRruy2Nb+i5o9bwghAogtM08q1dpr2LVoS8KSTMYpWXUw==", - "dev": true, - "dependencies": { - "cliui": "^5.0.0", - "find-up": "^3.0.0", - "get-caller-file": "^2.0.1", - "require-directory": "^2.1.1", - "require-main-filename": "^2.0.0", - "set-blocking": "^2.0.0", - "string-width": "^3.0.0", - "which-module": "^2.0.0", - "y18n": "^4.0.0", - "yargs-parser": "^13.1.2" - } - }, - "node_modules/yargs-unparser/node_modules/yargs-parser": { - "version": "13.1.2", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.2.tgz", - "integrity": "sha512-3lbsNRf/j+A4QuSZfDRA7HRSfWrzO0YjqTJd5kjAq37Zep1CEgaYmrH9Q3GwPiB9cHyd1Y1UwggGhJGoxipbzg==", - "dev": true, - "dependencies": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" - } - }, - "node_modules/yauzl": { - "version": "2.10.0", - "resolved": "https://registry.npmjs.org/yauzl/-/yauzl-2.10.0.tgz", - "integrity": "sha512-p4a9I6X6nu6IhoGmBqAcbJy1mlC4j27vEPZX9F4L4/vZT3Lyq1VkFHw/V/PUcB9Buo+DG3iHkT0x3Qya58zc3g==", - "dev": true, - "dependencies": { - "buffer-crc32": "~0.2.3", - "fd-slicer": "~1.1.0" - } - }, - "node_modules/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, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/zip-stream": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/zip-stream/-/zip-stream-4.1.0.tgz", - "integrity": "sha512-zshzwQW7gG7hjpBlgeQP9RuyPGNxvJdzR8SUM3QhxCnLjWN2E7j3dOvpeDcQoETfHx0urRS7EtmVToql7YpU4A==", - "dependencies": { - "archiver-utils": "^2.1.0", - "compress-commons": "^4.1.0", - "readable-stream": "^3.6.0" - }, - "engines": { - "node": ">= 10" - } - }, - "node_modules/zip-stream/node_modules/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==", - "dependencies": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/zip-stream/node_modules/string_decoder": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", - "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", - "dependencies": { - "safe-buffer": "~5.2.0" - } - } - }, - "dependencies": { - "@aashutoshrathi/word-wrap": { - "version": "1.2.6", - "resolved": "https://registry.npmjs.org/@aashutoshrathi/word-wrap/-/word-wrap-1.2.6.tgz", - "integrity": "sha512-1Yjs2SvM8TflER/OD3cOjhWWOZb58A2t7wpE2S9XfBYTiIl+XFhQG2bjy4Pu1I+EAlCNUzRDYDdFwFYUKvXcIA==", - "dev": true - }, - "@babel/code-frame": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.16.7.tgz", - "integrity": "sha512-iAXqUn8IIeBTNd72xsFlgaXHkMBMt6y4HJp1tIaK465CWLT/fG1aqB7ykr95gHHmlBdGbFeWWfyB4NJJ0nmeIg==", - "dev": true, - "requires": { - "@babel/highlight": "^7.16.7" - } - }, - "@babel/generator": { - "version": "7.17.9", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.17.9.tgz", - "integrity": "sha512-rAdDousTwxbIxbz5I7GEQ3lUip+xVCXooZNbsydCWs3xA7ZsYOv+CFRdzGxRX78BmQHu9B1Eso59AOZQOJDEdQ==", - "dev": true, - "requires": { - "@babel/types": "^7.17.0", - "jsesc": "^2.5.1", - "source-map": "^0.5.0" - }, - "dependencies": { - "source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", - "dev": true - } - } - }, - "@babel/helper-environment-visitor": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.16.7.tgz", - "integrity": "sha512-SLLb0AAn6PkUeAfKJCCOl9e1R53pQlGAfc4y4XuMRZfqeMYLE0dM1LMhqbGAlGQY0lfw5/ohoYWAe9V1yibRag==", - "dev": true, - "requires": { - "@babel/types": "^7.16.7" - } - }, - "@babel/helper-function-name": { - "version": "7.17.9", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.17.9.tgz", - "integrity": "sha512-7cRisGlVtiVqZ0MW0/yFB4atgpGLWEHUVYnb448hZK4x+vih0YO5UoS11XIYtZYqHd0dIPMdUSv8q5K4LdMnIg==", - "dev": true, - "requires": { - "@babel/template": "^7.16.7", - "@babel/types": "^7.17.0" - } - }, - "@babel/helper-hoist-variables": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.16.7.tgz", - "integrity": "sha512-m04d/0Op34H5v7pbZw6pSKP7weA6lsMvfiIAMeIvkY/R4xQtBSMFEigu9QTZ2qB/9l22vsxtM8a+Q8CzD255fg==", - "dev": true, - "requires": { - "@babel/types": "^7.16.7" - } - }, - "@babel/helper-split-export-declaration": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.16.7.tgz", - "integrity": "sha512-xbWoy/PFoxSWazIToT9Sif+jJTlrMcndIsaOKvTA6u7QEo7ilkRZpjew18/W3c7nm8fXdUDXh02VXTbZ0pGDNw==", - "dev": true, - "requires": { - "@babel/types": "^7.16.7" - } - }, - "@babel/helper-validator-identifier": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.16.7.tgz", - "integrity": "sha512-hsEnFemeiW4D08A5gUAZxLBTXpZ39P+a+DGDsHw1yxqyQ/jzFEnxf5uTEGp+3bzAbNOxU1paTgYS4ECU/IgfDw==" - }, - "@babel/highlight": { - "version": "7.17.9", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.17.9.tgz", - "integrity": "sha512-J9PfEKCbFIv2X5bjTMiZu6Vf341N05QIY+d6FvVKynkG1S7G0j3I0QoRtWIrXhZ+/Nlb5Q0MzqL7TokEJ5BNHg==", - "dev": true, - "requires": { - "@babel/helper-validator-identifier": "^7.16.7", - "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" - } - } - } - }, - "@babel/parser": { - "version": "7.17.9", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.17.9.tgz", - "integrity": "sha512-vqUSBLP8dQHFPdPi9bc5GK9vRkYHJ49fsZdtoJ8EQ8ibpwk5rPKfvNIwChB0KVXcIjcepEBBd2VHC5r9Gy8ueg==" - }, - "@babel/template": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.16.7.tgz", - "integrity": "sha512-I8j/x8kHUrbYRTUxXrrMbfCa7jxkE7tZre39x3kjr9hvI82cK1FfqLygotcWN5kdPGWcLdWMHpSBavse5tWw3w==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.16.7", - "@babel/parser": "^7.16.7", - "@babel/types": "^7.16.7" - } - }, - "@babel/traverse": { - "version": "7.17.9", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.17.9.tgz", - "integrity": "sha512-PQO8sDIJ8SIwipTPiR71kJQCKQYB5NGImbOviK8K+kg5xkNSYXLBupuX9QhatFowrsvo9Hj8WgArg3W7ijNAQw==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.16.7", - "@babel/generator": "^7.17.9", - "@babel/helper-environment-visitor": "^7.16.7", - "@babel/helper-function-name": "^7.17.9", - "@babel/helper-hoist-variables": "^7.16.7", - "@babel/helper-split-export-declaration": "^7.16.7", - "@babel/parser": "^7.17.9", - "@babel/types": "^7.17.0", - "debug": "^4.1.0", - "globals": "^11.1.0" - }, - "dependencies": { - "debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", - "dev": true, - "requires": { - "ms": "2.1.2" - } - }, - "globals": { - "version": "11.12.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", - "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", - "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==", - "dev": true - } - } - }, - "@babel/types": { - "version": "7.17.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.17.0.tgz", - "integrity": "sha512-TmKSNO4D5rzhL5bjWFcVHHLETzfQ/AmbKpKPOSjlP0WoHZ6L911fgoOKY4Alp/emzG4cHJdyN49zpgkbXFEHHw==", - "requires": { - "@babel/helper-validator-identifier": "^7.16.7", - "to-fast-properties": "^2.0.0" - }, - "dependencies": { - "to-fast-properties": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", - "integrity": "sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4=" - } - } - }, - "@eslint-community/eslint-utils": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.4.0.tgz", - "integrity": "sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==", - "dev": true, - "requires": { - "eslint-visitor-keys": "^3.3.0" - } - }, - "@eslint-community/regexpp": { - "version": "4.9.1", - "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.9.1.tgz", - "integrity": "sha512-Y27x+MBLjXa+0JWDhykM3+JE+il3kHKAEqabfEWq3SDhZjLYb6/BHL/JKFnH3fe207JaXkyDo685Oc2Glt6ifA==", - "dev": true - }, - "@eslint/eslintrc": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.2.tgz", - "integrity": "sha512-+wvgpDsrB1YqAMdEUCcnTlpfVBH7Vqn6A/NT3D8WVXFIaKMlErPIZT3oCIAVCOtarRpMtelZLqJeU3t7WY6X6g==", - "dev": true, - "requires": { - "ajv": "^6.12.4", - "debug": "^4.3.2", - "espree": "^9.6.0", - "globals": "^13.19.0", - "ignore": "^5.2.0", - "import-fresh": "^3.2.1", - "js-yaml": "^4.1.0", - "minimatch": "^3.1.2", - "strip-json-comments": "^3.1.1" - }, - "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 - }, - "debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", - "dev": true, - "requires": { - "ms": "2.1.2" - } - }, - "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" - } - }, - "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 - }, - "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/js": { - "version": "8.51.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.51.0.tgz", - "integrity": "sha512-HxjQ8Qn+4SI3/AFv6sOrDB+g6PpUTDwSJiQqOrnneEk8L71161srI9gjzzZvYVbzHiVg/BvcH95+cK/zfIt4pg==", - "dev": true - }, - "@fluffy-spoon/substitute": { - "version": "1.208.0", - "resolved": "https://registry.npmjs.org/@fluffy-spoon/substitute/-/substitute-1.208.0.tgz", - "integrity": "sha512-BU5vKRoK4OYlKzDtyg4HbtWnUNLOvV0ntqEZIphz+mq2G0HlVFywwJ7M+FbIcnJVDbUReS01FyL5x8R01r7zBg==", - "dev": true - }, - "@humanwhocodes/config-array": { - "version": "0.11.11", - "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.11.tgz", - "integrity": "sha512-N2brEuAadi0CcdeMXUkhbZB84eskAc8MEX1By6qEchoVywSgXPIjou4rYsl0V3Hj0ZnuGycGCjdNgockbzeWNA==", - "dev": true, - "requires": { - "@humanwhocodes/object-schema": "^1.2.1", - "debug": "^4.1.1", - "minimatch": "^3.0.5" - }, - "dependencies": { - "debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", - "dev": true, - "requires": { - "ms": "2.1.2" - } - }, - "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 - } - } - }, - "@humanwhocodes/module-importer": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", - "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==", - "dev": true - }, - "@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 - }, - "@isaacs/cliui": { - "version": "8.0.2", - "resolved": "https://registry.npmjs.org/@isaacs/cliui/-/cliui-8.0.2.tgz", - "integrity": "sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==", - "dev": true, - "requires": { - "string-width": "^5.1.2", - "string-width-cjs": "npm:string-width@^4.2.0", - "strip-ansi": "^7.0.1", - "strip-ansi-cjs": "npm:strip-ansi@^6.0.1", - "wrap-ansi": "^8.1.0", - "wrap-ansi-cjs": "npm:wrap-ansi@^7.0.0" - }, - "dependencies": { - "ansi-regex": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", - "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==", - "dev": true - }, - "ansi-styles": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz", - "integrity": "sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==", - "dev": true - }, - "emoji-regex": { - "version": "9.2.2", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", - "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==", - "dev": true - }, - "string-width": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz", - "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==", - "dev": true, - "requires": { - "eastasianwidth": "^0.2.0", - "emoji-regex": "^9.2.2", - "strip-ansi": "^7.0.1" - } - }, - "strip-ansi": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz", - "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==", - "dev": true, - "requires": { - "ansi-regex": "^6.0.1" - } - }, - "wrap-ansi": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-8.1.0.tgz", - "integrity": "sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==", - "dev": true, - "requires": { - "ansi-styles": "^6.1.0", - "string-width": "^5.0.1", - "strip-ansi": "^7.0.1" - } - } - } - }, - "@mongodb-js/saslprep": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/@mongodb-js/saslprep/-/saslprep-1.1.4.tgz", - "integrity": "sha512-8zJ8N1x51xo9hwPh6AWnKdLGEC5N3lDa6kms1YHmFBoRhTpJR6HG8wWk0td1MVCu9cD4YBrvjZEtd5Obw0Fbnw==", - "dev": true, - "optional": true, - "requires": { - "sparse-bitfield": "^3.0.3" - } - }, - "@ngageoint/geopackage": { - "version": "4.2.6", - "resolved": "https://registry.npmjs.org/@ngageoint/geopackage/-/geopackage-4.2.6.tgz", - "integrity": "sha512-HT0WAhAySTv+p462SUkvOKlXoPWDI6LETdBqNl0mC55YxE7PSvPByRIh3r/ajqSirhJeydaoN2wCw0nw+es2bA==", - "requires": { - "@turf/bbox": "6.3.0", - "@turf/boolean-clockwise": "6.5.0", - "@turf/boolean-point-in-polygon": "6.5.0", - "@turf/boolean-within": "6.5.0", - "@turf/distance": "6.5.0", - "@turf/helpers": "6.5.0", - "@turf/intersect": "6.5.0", - "@turf/line-intersect": "6.5.0", - "@turf/point-to-line-distance": "6.5.0", - "@turf/polygon-to-line": "6.5.0", - "@types/geojson": "7946.0.8", - "@types/proj4": "2.5.2", - "better-sqlite3": "^9.1.1", - "chalk": "4.1.1", - "file-type": "^16.5.4", - "image-size": "0.8.3", - "inquirer": "8.0.0", - "lodash": "4.17.21", - "proj4": "2.8.0", - "reproject": "1.2.5", - "rtree-sql.js": "1.7.0", - "simplify-js": "1.2.4", - "webworkify": "1.5.0", - "wkx": "0.4.8" - }, - "dependencies": { - "better-sqlite3": { - "version": "9.6.0", - "resolved": "https://registry.npmjs.org/better-sqlite3/-/better-sqlite3-9.6.0.tgz", - "integrity": "sha512-yR5HATnqeYNVnkaUTf4bOP2dJSnyhP4puJN/QPRyx4YkBEEUxib422n2XzPqDEHjQQqazoYoADdAm5vE15+dAQ==", - "optional": true, - "requires": { - "bindings": "^1.5.0", - "prebuild-install": "^7.1.1" - } - } - } - }, - "@node-saml/node-saml": { - "version": "4.0.5", - "resolved": "https://registry.npmjs.org/@node-saml/node-saml/-/node-saml-4.0.5.tgz", - "integrity": "sha512-J5DglElbY1tjOuaR1NPtjOXkXY5bpUhDoKVoeucYN98A3w4fwgjIOPqIGcb6cQsqFq2zZ6vTCeKn5C/hvefSaw==", - "requires": { - "@types/debug": "^4.1.7", - "@types/passport": "^1.0.11", - "@types/xml-crypto": "^1.4.2", - "@types/xml-encryption": "^1.2.1", - "@types/xml2js": "^0.4.11", - "@xmldom/xmldom": "^0.8.6", - "debug": "^4.3.4", - "xml-crypto": "^3.0.1", - "xml-encryption": "^3.0.2", - "xml2js": "^0.5.0", - "xmlbuilder": "^15.1.1" - }, - "dependencies": { - "debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", - "requires": { - "ms": "2.1.2" - } - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" - } - } - }, - "@node-saml/passport-saml": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/@node-saml/passport-saml/-/passport-saml-4.0.4.tgz", - "integrity": "sha512-xFw3gw0yo+K1mzlkW15NeBF7cVpRHN/4vpjmBKzov5YFImCWh/G0LcTZ8krH3yk2/eRPc3Or8LRPudVJBjmYaw==", - "requires": { - "@node-saml/node-saml": "^4.0.4", - "@types/express": "^4.17.14", - "@types/passport": "^1.0.11", - "@types/passport-strategy": "^0.2.35", - "passport": "^0.6.0", - "passport-strategy": "^1.0.0" - } - }, - "@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" - } - }, - "@oozcitak/dom": { - "version": "1.15.10", - "resolved": "https://registry.npmjs.org/@oozcitak/dom/-/dom-1.15.10.tgz", - "integrity": "sha512-0JT29/LaxVgRcGKvHmSrUTEvZ8BXvZhGl2LASRUgHqDTC1M5g1pLmVv56IYNyt3bG2CUjDkc67wnyZC14pbQrQ==", - "requires": { - "@oozcitak/infra": "1.0.8", - "@oozcitak/url": "1.0.4", - "@oozcitak/util": "8.3.8" - } - }, - "@oozcitak/infra": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/@oozcitak/infra/-/infra-1.0.8.tgz", - "integrity": "sha512-JRAUc9VR6IGHOL7OGF+yrvs0LO8SlqGnPAMqyzOuFZPSZSXI7Xf2O9+awQPSMXgIWGtgUf/dA6Hs6X6ySEaWTg==", - "requires": { - "@oozcitak/util": "8.3.8" - } - }, - "@oozcitak/url": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/@oozcitak/url/-/url-1.0.4.tgz", - "integrity": "sha512-kDcD8y+y3FCSOvnBI6HJgl00viO/nGbQoCINmQ0h98OhnGITrWR3bOGfwYCthgcrV8AnTJz8MzslTQbC3SOAmw==", - "requires": { - "@oozcitak/infra": "1.0.8", - "@oozcitak/util": "8.3.8" - } - }, - "@oozcitak/util": { - "version": "8.3.8", - "resolved": "https://registry.npmjs.org/@oozcitak/util/-/util-8.3.8.tgz", - "integrity": "sha512-T8TbSnGsxo6TDBJx/Sgv/BlVJL3tshxZP7Aq5R1mSnM5OcHY2dQaxLMu2+E8u3gN0MLOzdjurqN4ZRVuzQycOQ==" - }, - "@pkgjs/parseargs": { - "version": "0.11.0", - "resolved": "https://registry.npmjs.org/@pkgjs/parseargs/-/parseargs-0.11.0.tgz", - "integrity": "sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==", - "dev": true, - "optional": true - }, - "@sinonjs/commons": { - "version": "1.8.3", - "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.8.3.tgz", - "integrity": "sha512-xkNcLAn/wZaX14RPlwizcKicDk9G3F8m2nU3L7Ukm5zBgTwiT0wsoFAHx9Jq56fJA1z/7uKGtCRu16sOUCLIHQ==", - "dev": true, - "requires": { - "type-detect": "4.0.8" - } - }, - "@sinonjs/formatio": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/@sinonjs/formatio/-/formatio-3.2.2.tgz", - "integrity": "sha512-B8SEsgd8gArBLMD6zpRw3juQ2FVSsmdd7qlevyDqzS9WTCtvF55/gAL+h6gue8ZvPYcdiPdvueM/qm//9XzyTQ==", - "dev": true, - "requires": { - "@sinonjs/commons": "^1", - "@sinonjs/samsam": "^3.1.0" - } - }, - "@sinonjs/samsam": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/@sinonjs/samsam/-/samsam-3.3.3.tgz", - "integrity": "sha512-bKCMKZvWIjYD0BLGnNrxVuw4dkWCYsLqFOUWw8VgKF/+5Y+mE7LfHWPIYoDXowH+3a9LsWDMo0uAP8YDosPvHQ==", - "dev": true, - "requires": { - "@sinonjs/commons": "^1.3.0", - "array-from": "^2.1.1", - "lodash": "^4.17.15" - } - }, - "@sinonjs/text-encoding": { - "version": "0.7.1", - "resolved": "https://registry.npmjs.org/@sinonjs/text-encoding/-/text-encoding-0.7.1.tgz", - "integrity": "sha512-+iTbntw2IZPb/anVDbypzfQa+ay64MW0Zo8aJ8gZPWMMK6/OubMVb6lUPMagqjOPnmtauXnFCACVl3O7ogjeqQ==", - "dev": true - }, - "@tokenizer/token": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/@tokenizer/token/-/token-0.3.0.tgz", - "integrity": "sha512-OvjF+z51L3ov0OyAU0duzsYuvO01PH7x4t6DJx+guahgTnBHkhJdG7soQeTSFLWN3efnHyibZ4Z8l2EuWwJN3A==" - }, - "@turf/bbox": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/@turf/bbox/-/bbox-6.3.0.tgz", - "integrity": "sha512-N4ue5Xopu1qieSHP2MA/CJGWHPKaTrVXQJjzHRNcY1vtsO126xbSaJhWUrFc5x5vVkXp0dcucGryO0r5m4o/KA==", - "requires": { - "@turf/helpers": "^6.3.0", - "@turf/meta": "^6.3.0" - } - }, - "@turf/bearing": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@turf/bearing/-/bearing-6.5.0.tgz", - "integrity": "sha512-dxINYhIEMzgDOztyMZc20I7ssYVNEpSv04VbMo5YPQsqa80KO3TFvbuCahMsCAW5z8Tncc8dwBlEFrmRjJG33A==", - "requires": { - "@turf/helpers": "^6.5.0", - "@turf/invariant": "^6.5.0" - } - }, - "@turf/boolean-clockwise": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@turf/boolean-clockwise/-/boolean-clockwise-6.5.0.tgz", - "integrity": "sha512-45+C7LC5RMbRWrxh3Z0Eihsc8db1VGBO5d9BLTOAwU4jR6SgsunTfRWR16X7JUwIDYlCVEmnjcXJNi/kIU3VIw==", - "requires": { - "@turf/helpers": "^6.5.0", - "@turf/invariant": "^6.5.0" - } - }, - "@turf/boolean-point-in-polygon": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@turf/boolean-point-in-polygon/-/boolean-point-in-polygon-6.5.0.tgz", - "integrity": "sha512-DtSuVFB26SI+hj0SjrvXowGTUCHlgevPAIsukssW6BG5MlNSBQAo70wpICBNJL6RjukXg8d2eXaAWuD/CqL00A==", - "requires": { - "@turf/helpers": "^6.5.0", - "@turf/invariant": "^6.5.0" - } - }, - "@turf/boolean-point-on-line": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@turf/boolean-point-on-line/-/boolean-point-on-line-6.5.0.tgz", - "integrity": "sha512-A1BbuQ0LceLHvq7F/P7w3QvfpmZqbmViIUPHdNLvZimFNLo4e6IQunmzbe+8aSStH9QRZm3VOflyvNeXvvpZEQ==", - "requires": { - "@turf/helpers": "^6.5.0", - "@turf/invariant": "^6.5.0" - } - }, - "@turf/boolean-within": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@turf/boolean-within/-/boolean-within-6.5.0.tgz", - "integrity": "sha512-YQB3oU18Inx35C/LU930D36RAVe7LDXk1kWsQ8mLmuqYn9YdPsDQTMTkLJMhoQ8EbN7QTdy333xRQ4MYgToteQ==", - "requires": { - "@turf/bbox": "^6.5.0", - "@turf/boolean-point-in-polygon": "^6.5.0", - "@turf/boolean-point-on-line": "^6.5.0", - "@turf/helpers": "^6.5.0", - "@turf/invariant": "^6.5.0" - }, - "dependencies": { - "@turf/bbox": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@turf/bbox/-/bbox-6.5.0.tgz", - "integrity": "sha512-RBbLaao5hXTYyyg577iuMtDB8ehxMlUqHEJiMs8jT1GHkFhr6sYre3lmLsPeYEi/ZKj5TP5tt7fkzNdJ4GIVyw==", - "requires": { - "@turf/helpers": "^6.5.0", - "@turf/meta": "^6.5.0" - } - } - } - }, - "@turf/centroid": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@turf/centroid/-/centroid-6.5.0.tgz", - "integrity": "sha512-MwE1oq5E3isewPprEClbfU5pXljIK/GUOMbn22UM3IFPDJX0KeoyLNwghszkdmFp/qMGL/M13MMWvU+GNLXP/A==", - "requires": { - "@turf/helpers": "^6.5.0", - "@turf/meta": "^6.5.0" - } - }, - "@turf/clone": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@turf/clone/-/clone-6.5.0.tgz", - "integrity": "sha512-mzVtTFj/QycXOn6ig+annKrM6ZlimreKYz6f/GSERytOpgzodbQyOgkfwru100O1KQhhjSudKK4DsQ0oyi9cTw==", - "requires": { - "@turf/helpers": "^6.5.0" - } - }, - "@turf/distance": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@turf/distance/-/distance-6.5.0.tgz", - "integrity": "sha512-xzykSLfoURec5qvQJcfifw/1mJa+5UwByZZ5TZ8iaqjGYN0vomhV9aiSLeYdUGtYRESZ+DYC/OzY+4RclZYgMg==", - "requires": { - "@turf/helpers": "^6.5.0", - "@turf/invariant": "^6.5.0" - } - }, - "@turf/helpers": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@turf/helpers/-/helpers-6.5.0.tgz", - "integrity": "sha512-VbI1dV5bLFzohYYdgqwikdMVpe7pJ9X3E+dlr425wa2/sMJqYDhTO++ec38/pcPvPE6oD9WEEeU3Xu3gza+VPw==" - }, - "@turf/intersect": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@turf/intersect/-/intersect-6.5.0.tgz", - "integrity": "sha512-2legGJeKrfFkzntcd4GouPugoqPUjexPZnOvfez+3SfIMrHvulw8qV8u7pfVyn2Yqs53yoVCEjS5sEpvQ5YRQg==", - "requires": { - "@turf/helpers": "^6.5.0", - "@turf/invariant": "^6.5.0", - "polygon-clipping": "^0.15.3" - } - }, - "@turf/invariant": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@turf/invariant/-/invariant-6.5.0.tgz", - "integrity": "sha512-Wv8PRNCtPD31UVbdJE/KVAWKe7l6US+lJItRR/HOEW3eh+U/JwRCSUl/KZ7bmjM/C+zLNoreM2TU6OoLACs4eg==", - "requires": { - "@turf/helpers": "^6.5.0" - } - }, - "@turf/kinks": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@turf/kinks/-/kinks-6.5.0.tgz", - "integrity": "sha512-ViCngdPt1eEL7hYUHR2eHR662GvCgTc35ZJFaNR6kRtr6D8plLaDju0FILeFFWSc+o8e3fwxZEJKmFj9IzPiIQ==", - "requires": { - "@turf/helpers": "^6.5.0" - } - }, - "@turf/line-intersect": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@turf/line-intersect/-/line-intersect-6.5.0.tgz", - "integrity": "sha512-CS6R1tZvVQD390G9Ea4pmpM6mJGPWoL82jD46y0q1KSor9s6HupMIo1kY4Ny+AEYQl9jd21V3Scz20eldpbTVA==", - "requires": { - "@turf/helpers": "^6.5.0", - "@turf/invariant": "^6.5.0", - "@turf/line-segment": "^6.5.0", - "@turf/meta": "^6.5.0", - "geojson-rbush": "3.x" - } - }, - "@turf/line-segment": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@turf/line-segment/-/line-segment-6.5.0.tgz", - "integrity": "sha512-jI625Ho4jSuJESNq66Mmi290ZJ5pPZiQZruPVpmHkUw257Pew0alMmb6YrqYNnLUuiVVONxAAKXUVeeUGtycfw==", - "requires": { - "@turf/helpers": "^6.5.0", - "@turf/invariant": "^6.5.0", - "@turf/meta": "^6.5.0" - } - }, - "@turf/meta": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@turf/meta/-/meta-6.5.0.tgz", - "integrity": "sha512-RrArvtsV0vdsCBegoBtOalgdSOfkBrTJ07VkpiCnq/491W67hnMWmDu7e6Ztw0C3WldRYTXkg3SumfdzZxLBHA==", - "requires": { - "@turf/helpers": "^6.5.0" - } - }, - "@turf/point-to-line-distance": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@turf/point-to-line-distance/-/point-to-line-distance-6.5.0.tgz", - "integrity": "sha512-opHVQ4vjUhNBly1bob6RWy+F+hsZDH9SA0UW36pIRzfpu27qipU18xup0XXEePfY6+wvhF6yL/WgCO2IbrLqEA==", - "requires": { - "@turf/bearing": "^6.5.0", - "@turf/distance": "^6.5.0", - "@turf/helpers": "^6.5.0", - "@turf/invariant": "^6.5.0", - "@turf/meta": "^6.5.0", - "@turf/projection": "^6.5.0", - "@turf/rhumb-bearing": "^6.5.0", - "@turf/rhumb-distance": "^6.5.0" - } - }, - "@turf/polygon-to-line": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@turf/polygon-to-line/-/polygon-to-line-6.5.0.tgz", - "integrity": "sha512-5p4n/ij97EIttAq+ewSnKt0ruvuM+LIDzuczSzuHTpq4oS7Oq8yqg5TQ4nzMVuK41r/tALCk7nAoBuw3Su4Gcw==", - "requires": { - "@turf/helpers": "^6.5.0", - "@turf/invariant": "^6.5.0" - } - }, - "@turf/projection": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@turf/projection/-/projection-6.5.0.tgz", - "integrity": "sha512-/Pgh9mDvQWWu8HRxqpM+tKz8OzgauV+DiOcr3FCjD6ubDnrrmMJlsf6fFJmggw93mtVPrZRL6yyi9aYCQBOIvg==", - "requires": { - "@turf/clone": "^6.5.0", - "@turf/helpers": "^6.5.0", - "@turf/meta": "^6.5.0" - } - }, - "@turf/rhumb-bearing": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@turf/rhumb-bearing/-/rhumb-bearing-6.5.0.tgz", - "integrity": "sha512-jMyqiMRK4hzREjQmnLXmkJ+VTNTx1ii8vuqRwJPcTlKbNWfjDz/5JqJlb5NaFDcdMpftWovkW5GevfnuzHnOYA==", - "requires": { - "@turf/helpers": "^6.5.0", - "@turf/invariant": "^6.5.0" - } - }, - "@turf/rhumb-distance": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@turf/rhumb-distance/-/rhumb-distance-6.5.0.tgz", - "integrity": "sha512-oKp8KFE8E4huC2Z1a1KNcFwjVOqa99isxNOwfo4g3SUABQ6NezjKDDrnvC4yI5YZ3/huDjULLBvhed45xdCrzg==", - "requires": { - "@turf/helpers": "^6.5.0", - "@turf/invariant": "^6.5.0" - } - }, - "@types/archiver": { - "version": "5.3.4", - "resolved": "https://registry.npmjs.org/@types/archiver/-/archiver-5.3.4.tgz", - "integrity": "sha512-Lj7fLBIMwYFgViVVZHEdExZC3lVYsl+QL0VmdNdIzGZH544jHveYWij6qdnBgJQDnR7pMKliN9z2cPZFEbhyPw==", - "dev": true, - "requires": { - "@types/readdir-glob": "*" - } - }, - "@types/async": { - "version": "3.2.12", - "resolved": "https://registry.npmjs.org/@types/async/-/async-3.2.12.tgz", - "integrity": "sha512-4i4w4tfNDo73BOjk0qHcB2YJ8A2SjITCrU4BTsgdJFTsVr6atPDXa0T9r0QZTrX3axtWwkqpZqF4B3gR0TqBGw==", - "dev": true - }, - "@types/body-parser": { - "version": "1.19.2", - "resolved": "https://registry.npmjs.org/@types/body-parser/-/body-parser-1.19.2.tgz", - "integrity": "sha512-ALYone6pm6QmwZoAgeyNksccT9Q4AWZQ6PvfwR37GT6r6FWUPguq6sUmNGSMV2Wr761oQoBxwGGa6DR5o1DC9g==", - "requires": { - "@types/connect": "*", - "@types/node": "*" - } - }, - "@types/bson": { - "version": "1.0.11", - "resolved": "https://registry.npmjs.org/@types/bson/-/bson-1.0.11.tgz", - "integrity": "sha512-j+UcCWI+FsbI5/FQP/Kj2CXyplWAz39ktHFkXk84h7dNblKRSoNJs95PZFRd96NQGqsPEPgeclqnznWZr14ZDA==", - "dev": true, - "requires": { - "@types/node": "*" - } - }, - "@types/busboy": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/@types/busboy/-/busboy-1.5.0.tgz", - "integrity": "sha512-ncOOhwmyFDW76c/Tuvv9MA9VGYUCn8blzyWmzYELcNGDb0WXWLSmFi7hJq25YdRBYJrmMBB5jZZwUjlJe9HCjQ==", - "dev": true, - "requires": { - "@types/node": "*" - } - }, - "@types/chai": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/@types/chai/-/chai-4.3.0.tgz", - "integrity": "sha512-/ceqdqeRraGolFTcfoXNiqjyQhZzbINDngeoAq9GoHa8PPK1yNzTaxWjA6BFWp5Ua9JpXEMSS4s5i9tS0hOJtw==", - "dev": true - }, - "@types/chai-as-promised": { - "version": "7.1.5", - "resolved": "https://registry.npmjs.org/@types/chai-as-promised/-/chai-as-promised-7.1.5.tgz", - "integrity": "sha512-jStwss93SITGBwt/niYrkf2C+/1KTeZCZl1LaeezTlqppAKeoQC7jxyqYuP72sxBGKCIbw7oHgbYssIRzT5FCQ==", - "dev": true, - "requires": { - "@types/chai": "*" - } - }, - "@types/connect": { - "version": "3.4.35", - "resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.35.tgz", - "integrity": "sha512-cdeYyv4KWoEgpBISTxWvqYsVy444DOqehiF3fM3ne10AmJ62RSyNkUnxMJXHQWRQQX2eR94m5y1IZyDwBjV9FQ==", - "requires": { - "@types/node": "*" - } - }, - "@types/cookiejar": { - "version": "2.1.5", - "resolved": "https://registry.npmjs.org/@types/cookiejar/-/cookiejar-2.1.5.tgz", - "integrity": "sha512-he+DHOWReW0nghN24E1WUqM0efK4kI9oTqDm6XmK8ZPe2djZ90BSNdGnIyCLzCPw7/pogPlGbzI2wHGGmi4O/Q==", - "dev": true - }, - "@types/debug": { - "version": "4.1.9", - "resolved": "https://registry.npmjs.org/@types/debug/-/debug-4.1.9.tgz", - "integrity": "sha512-8Hz50m2eoS56ldRlepxSBa6PWEVCtzUo/92HgLc2qTMnotJNIm7xP+UZhyWoYsyOdd5dxZ+NZLb24rsKyFs2ow==", - "requires": { - "@types/ms": "*" - } - }, - "@types/deep-equal": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@types/deep-equal/-/deep-equal-1.0.1.tgz", - "integrity": "sha512-mMUu4nWHLBlHtxXY17Fg6+ucS/MnndyOWyOe7MmwkoMYxvfQU2ajtRaEvqSUv+aVkMqH/C0NCI8UoVfRNQ10yg==", - "dev": true - }, - "@types/express": { - "version": "4.17.21", - "resolved": "https://registry.npmjs.org/@types/express/-/express-4.17.21.tgz", - "integrity": "sha512-ejlPM315qwLpaQlQDTjPdsUFSc6ZsP4AN6AlWnogPjQ7CVi7PYF3YVz+CY3jE2pwYf7E/7HlDAN0rV2GxTG0HQ==", - "requires": { - "@types/body-parser": "*", - "@types/express-serve-static-core": "^4.17.33", - "@types/qs": "*", - "@types/serve-static": "*" - } - }, - "@types/express-serve-static-core": { - "version": "4.17.37", - "resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.17.37.tgz", - "integrity": "sha512-ZohaCYTgGFcOP7u6aJOhY9uIZQgZ2vxC2yWoArY+FeDXlqeH66ZVBjgvg+RLVAS/DWNq4Ap9ZXu1+SUQiiWYMg==", - "requires": { - "@types/node": "*", - "@types/qs": "*", - "@types/range-parser": "*", - "@types/send": "*" - } - }, - "@types/fs-extra": { - "version": "8.1.2", - "resolved": "https://registry.npmjs.org/@types/fs-extra/-/fs-extra-8.1.2.tgz", - "integrity": "sha512-SvSrYXfWSc7R4eqnOzbQF4TZmfpNSM9FrSWLU3EUnWBuyZqNBOrv1B1JA3byUDPUl9z4Ab3jeZG2eDdySlgNMg==", - "dev": true, - "requires": { - "@types/node": "*" - } - }, - "@types/geojson": { - "version": "7946.0.8", - "resolved": "https://registry.npmjs.org/@types/geojson/-/geojson-7946.0.8.tgz", - "integrity": "sha512-1rkryxURpr6aWP7R786/UQOkJ3PcpQiWkAXBmdWc7ryFWqN6a4xfK7BtjXvFBKO9LjQ+MWQSWxYeZX1OApnArA==" - }, - "@types/json-schema": { - "version": "7.0.13", - "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.13.tgz", - "integrity": "sha512-RbSSoHliUbnXj3ny0CNFOoxrIDV6SUGyStHsvDqosw6CkdPV8TtWGlfecuK4ToyMEAql6pzNxgCFKanovUzlgQ==" - }, - "@types/json2csv": { - "version": "4.5.1", - "resolved": "https://registry.npmjs.org/@types/json2csv/-/json2csv-4.5.1.tgz", - "integrity": "sha512-sZbRdrTddxYzhydkC5eMEbRXU8pjcV8Zyxf2If7YO3GVxWY18fs0P5YJyjRfkMKTAsA8ynTRQWhvWbHhBzBFVA==", - "dev": true, - "requires": { - "@types/node": "*" - } - }, - "@types/ldapjs": { - "version": "2.2.5", - "resolved": "https://registry.npmjs.org/@types/ldapjs/-/ldapjs-2.2.5.tgz", - "integrity": "sha512-Lv/nD6QDCmcT+V1vaTRnEKE8UgOilVv5pHcQuzkU1LcRe4mbHHuUo/KHi0LKrpdHhQY8FJzryF38fcVdeUIrzg==", - "requires": { - "@types/node": "*" - } - }, - "@types/lodash": { - "version": "4.14.181", - "resolved": "https://registry.npmjs.org/@types/lodash/-/lodash-4.14.181.tgz", - "integrity": "sha512-n3tyKthHJbkiWhDZs3DkhkCzt2MexYHXlX0td5iMplyfwketaOeKboEVBqzceH7juqvEg3q5oUoBFxSLu7zFag==", - "dev": true - }, - "@types/methods": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/@types/methods/-/methods-1.1.4.tgz", - "integrity": "sha512-ymXWVrDiCxTBE3+RIrrP533E70eA+9qu7zdWoHuOmGujkYtzf4HQF96b8nwHLqhuf4ykX61IGRIB38CC6/sImQ==", - "dev": true - }, - "@types/mime": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/@types/mime/-/mime-1.3.2.tgz", - "integrity": "sha512-YATxVxgRqNH6nHEIsvg6k2Boc1JHI9ZbH5iWFFv/MTkchz3b1ieGDa5T0a9RznNdI0KhVbdbWSN+KWWrQZRxTw==" - }, - "@types/mime-types": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/@types/mime-types/-/mime-types-2.1.1.tgz", - "integrity": "sha512-vXOTGVSLR2jMw440moWTC7H19iUyLtP3Z1YTj7cSsubOICinjMxFeb/V57v9QdyyPGbbWolUFSSmSiRSn94tFw==" - }, - "@types/mocha": { - "version": "7.0.2", - "resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-7.0.2.tgz", - "integrity": "sha512-ZvO2tAcjmMi8V/5Z3JsyofMe3hasRcaw88cto5etSVMwVQfeivGAlEYmaQgceUSVYFofVjT+ioHsATjdWcFt1w==", - "dev": true - }, - "@types/mongodb": { - "version": "3.6.20", - "resolved": "https://registry.npmjs.org/@types/mongodb/-/mongodb-3.6.20.tgz", - "integrity": "sha512-WcdpPJCakFzcWWD9juKoZbRtQxKIMYF/JIAM4JrNHrMcnJL6/a2NWjXxW7fo9hxboxxkg+icff8d7+WIEvKgYQ==", - "dev": true, - "requires": { - "@types/bson": "*", - "@types/node": "*" - } - }, - "@types/mongoose": { - "version": "4.7.56", - "resolved": "https://registry.npmjs.org/@types/mongoose/-/mongoose-4.7.56.tgz", - "integrity": "sha512-c4bQmM/WUMQvOpEJFJbNjwLU72bzFOtKJ+4HtqdA+wtMhWpwIBoKdL7KsNt7BRjelK0dcSrgymvz/miQuPjikw==", - "dev": true, - "requires": { - "@types/mongodb": "*", - "@types/node": "*" - } - }, - "@types/ms": { - "version": "0.7.32", - "resolved": "https://registry.npmjs.org/@types/ms/-/ms-0.7.32.tgz", - "integrity": "sha512-xPSg0jm4mqgEkNhowKgZFBNtwoEwF6gJ4Dhww+GFpm3IgtNseHQZ5IqdNwnquZEoANxyDAKDRAdVo4Z72VvD/g==" - }, - "@types/multer": { - "version": "1.4.7", - "resolved": "https://registry.npmjs.org/@types/multer/-/multer-1.4.7.tgz", - "integrity": "sha512-/SNsDidUFCvqqcWDwxv2feww/yqhNeTRL5CVoL3jU4Goc4kKEL10T7Eye65ZqPNi4HRx8sAEX59pV1aEH7drNA==", - "dev": true, - "requires": { - "@types/express": "*" - } - }, - "@types/node": { - "version": "18.18.4", - "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.4.tgz", - "integrity": "sha512-t3rNFBgJRugIhackit2mVcLfF6IRc0JE4oeizPQL8Zrm8n2WY/0wOdpOPhdtG0V9Q2TlW/axbF1MJ6z+Yj/kKQ==" - }, - "@types/node-fetch": { - "version": "2.6.1", - "resolved": "https://registry.npmjs.org/@types/node-fetch/-/node-fetch-2.6.1.tgz", - "integrity": "sha512-oMqjURCaxoSIsHSr1E47QHzbmzNR5rK8McHuNb11BOM9cHcIK3Avy0s/b2JlXHoQGTYS3NsvWzV1M0iK7l0wbA==", - "dev": true, - "requires": { - "@types/node": "*", - "form-data": "^3.0.0" - }, - "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==", - "dev": true, - "requires": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.8", - "mime-types": "^2.1.12" - } - } - } - }, - "@types/passport": { - "version": "1.0.13", - "resolved": "https://registry.npmjs.org/@types/passport/-/passport-1.0.13.tgz", - "integrity": "sha512-XXURryL+EZAWtbQFOHX1eNB+RJwz5XMPPz1xrGpEKr2xUZCXM4NCPkHMtZQ3B2tTSG/1IRaAcTHjczRA4sSFCw==", - "requires": { - "@types/express": "*" - } - }, - "@types/passport-strategy": { - "version": "0.2.36", - "resolved": "https://registry.npmjs.org/@types/passport-strategy/-/passport-strategy-0.2.36.tgz", - "integrity": "sha512-hotVZuaCt04LJYXfZD5B+5UeCcRVG8IjKaLLGTJ1eFp0wiFQA2XfsqslGGInWje+OysNNLPH/ducce5GXHDC1Q==", - "requires": { - "@types/express": "*", - "@types/passport": "*" - } - }, - "@types/proj4": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/@types/proj4/-/proj4-2.5.2.tgz", - "integrity": "sha512-/Nmfn9p08yaYw6xo5f2b0L+2oHk2kZeOkp5v+4VCeNfq+ETlLQbmHmC97/pjDIEZy8jxwz7pdPpwNzDHM5cuJw==" - }, - "@types/qs": { - "version": "6.9.7", - "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.7.tgz", - "integrity": "sha512-FGa1F62FT09qcrueBA6qYTrJPVDzah9a+493+o2PCXsesWHIn27G98TsSMs3WPNbZIEj4+VJf6saSFpvD+3Zsw==" - }, - "@types/range-parser": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/@types/range-parser/-/range-parser-1.2.4.tgz", - "integrity": "sha512-EEhsLsD6UsDM1yFhAvy0Cjr6VwmpMWqFBCb9w07wVugF7w9nfajxLuVmngTIpgS6svCnm6Vaw+MZhoDCKnOfsw==" - }, - "@types/readdir-glob": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/@types/readdir-glob/-/readdir-glob-1.1.4.tgz", - "integrity": "sha512-uEJsErL2wFCTcbbmJpIuD8OWYNabgv1oaYP2bOkzZXKtk3c6LCYQEKngIqBj2VR2NMv9DOAXSkxSYOWtHxh2gQ==", - "dev": true, - "requires": { - "@types/node": "*" - } - }, - "@types/semver": { - "version": "7.5.3", - "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.5.3.tgz", - "integrity": "sha512-OxepLK9EuNEIPxWNME+C6WwbRAOOI2o2BaQEGzz5Lu2e4Z5eDnEo+/aVEDMIXywoJitJ7xWd641wrGLZdtwRyw==", - "dev": true - }, - "@types/send": { - "version": "0.17.2", - "resolved": "https://registry.npmjs.org/@types/send/-/send-0.17.2.tgz", - "integrity": "sha512-aAG6yRf6r0wQ29bkS+x97BIs64ZLxeE/ARwyS6wrldMm3C1MdKwCcnnEwMC1slI8wuxJOpiUH9MioC0A0i+GJw==", - "requires": { - "@types/mime": "^1", - "@types/node": "*" - } - }, - "@types/serve-static": { - "version": "1.13.10", - "resolved": "https://registry.npmjs.org/@types/serve-static/-/serve-static-1.13.10.tgz", - "integrity": "sha512-nCkHGI4w7ZgAdNkrEu0bv+4xNV/XDqW+DydknebMOQwkpDGx8G+HTlj7R7ABI8i8nKxVw0wtKPi1D+lPOkh4YQ==", - "requires": { - "@types/mime": "^1", - "@types/node": "*" - } - }, - "@types/sinon": { - "version": "9.0.11", - "resolved": "https://registry.npmjs.org/@types/sinon/-/sinon-9.0.11.tgz", - "integrity": "sha512-PwP4UY33SeeVKodNE37ZlOsR9cReypbMJOhZ7BVE0lB+Hix3efCOxiJWiE5Ia+yL9Cn2Ch72EjFTRze8RZsNtg==", - "dev": true, - "requires": { - "@types/sinonjs__fake-timers": "*" - } - }, - "@types/sinon-chai": { - "version": "3.2.8", - "resolved": "https://registry.npmjs.org/@types/sinon-chai/-/sinon-chai-3.2.8.tgz", - "integrity": "sha512-d4ImIQbT/rKMG8+AXpmcan5T2/PNeSjrYhvkwet6z0p8kzYtfgA32xzOBlbU0yqJfq+/0Ml805iFoODO0LP5/g==", - "dev": true, - "requires": { - "@types/chai": "*", - "@types/sinon": "*" - } - }, - "@types/sinonjs__fake-timers": { - "version": "8.1.2", - "resolved": "https://registry.npmjs.org/@types/sinonjs__fake-timers/-/sinonjs__fake-timers-8.1.2.tgz", - "integrity": "sha512-9GcLXF0/v3t80caGs5p2rRfkB+a8VBGLJZVih6CNFkx8IZ994wiKKLSRs9nuFwk1HevWs/1mnUmkApGrSGsShA==", - "dev": true - }, - "@types/superagent": { - "version": "8.1.3", - "resolved": "https://registry.npmjs.org/@types/superagent/-/superagent-8.1.3.tgz", - "integrity": "sha512-R/CfN6w2XsixLb1Ii8INfn+BT9sGPvw74OavfkW4SwY+jeUcAwLZv2+bXLJkndnimxjEBm0RPHgcjW9pLCa8cw==", - "dev": true, - "requires": { - "@types/cookiejar": "^2.1.5", - "@types/methods": "^1.1.4", - "@types/node": "*" - } - }, - "@types/supertest": { - "version": "2.0.16", - "resolved": "https://registry.npmjs.org/@types/supertest/-/supertest-2.0.16.tgz", - "integrity": "sha512-6c2ogktZ06tr2ENoZivgm7YnprnhYE4ZoXGMY+oA7IuAf17M8FWvujXZGmxLv8y0PTyts4x5A+erSwVUFA8XSg==", - "dev": true, - "requires": { - "@types/superagent": "*" - } - }, - "@types/uniqid": { - "version": "5.3.2", - "resolved": "https://registry.npmjs.org/@types/uniqid/-/uniqid-5.3.2.tgz", - "integrity": "sha512-/NYoaZpWsnAJDsGYeMNDeG3p3fuUb4AiC7MfKxi5VSu18tXd08w6Ch0fKW94T4FeLXXZwZPoFgHA1O0rDYKyMQ==", - "dev": true - }, - "@types/webidl-conversions": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/@types/webidl-conversions/-/webidl-conversions-7.0.3.tgz", - "integrity": "sha512-CiJJvcRtIgzadHCYXw7dqEnMNRjhGZlYK05Mj9OyktqV8uVT8fD2BFOB7S1uwBE3Kj2Z+4UyPmFw/Ixgw/LAlA==", - "dev": true - }, - "@types/whatwg-url": { - "version": "8.2.2", - "resolved": "https://registry.npmjs.org/@types/whatwg-url/-/whatwg-url-8.2.2.tgz", - "integrity": "sha512-FtQu10RWgn3D9U4aazdwIE2yzphmTJREDqNdODHrbrZmmMqI0vMheC/6NE/J1Yveaj8H+ela+YwWTjq5PGmuhA==", - "dev": true, - "requires": { - "@types/node": "*", - "@types/webidl-conversions": "*" - } - }, - "@types/xml-crypto": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/@types/xml-crypto/-/xml-crypto-1.4.3.tgz", - "integrity": "sha512-pnvKYb7vUsUIMc+C6JM/j779YWQgOMcwjnqHJ9cdaWXwWEBE1hAqthzeszRx62V5RWMvS+XS9w9tXMOYyUc8zg==", - "requires": { - "@types/node": "*", - "xpath": "0.0.27" - }, - "dependencies": { - "xpath": { - "version": "0.0.27", - "resolved": "https://registry.npmjs.org/xpath/-/xpath-0.0.27.tgz", - "integrity": "sha512-fg03WRxtkCV6ohClePNAECYsmpKKTv5L8y/X3Dn1hQrec3POx2jHZ/0P2qQ6HvsrU1BmeqXcof3NGGueG6LxwQ==" - } - } - }, - "@types/xml-encryption": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/@types/xml-encryption/-/xml-encryption-1.2.2.tgz", - "integrity": "sha512-UeuYOqW3ZzUQfwb/mb3GNZ2/DlVdh5mjJNmB/yFXgQr8/pwlVJ9I2w+AHPfRDzLshe7YpgUB4T1//qgbk6U87Q==", - "requires": { - "@types/node": "*" - } - }, - "@types/xml2js": { - "version": "0.4.12", - "resolved": "https://registry.npmjs.org/@types/xml2js/-/xml2js-0.4.12.tgz", - "integrity": "sha512-CZPpQKBZ8db66EP5hCjwvYrLThgZvnyZrPXK2W+UI1oOaWezGt34iOaUCX4Jah2X8+rQqjvl9VKEIT8TR1I0rA==", - "requires": { - "@types/node": "*" - } - }, - "@typescript-eslint/eslint-plugin": { - "version": "6.7.5", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-6.7.5.tgz", - "integrity": "sha512-JhtAwTRhOUcP96D0Y6KYnwig/MRQbOoLGXTON2+LlyB/N35SP9j1boai2zzwXb7ypKELXMx3DVk9UTaEq1vHEw==", - "dev": true, - "requires": { - "@eslint-community/regexpp": "^4.5.1", - "@typescript-eslint/scope-manager": "6.7.5", - "@typescript-eslint/type-utils": "6.7.5", - "@typescript-eslint/utils": "6.7.5", - "@typescript-eslint/visitor-keys": "6.7.5", - "debug": "^4.3.4", - "graphemer": "^1.4.0", - "ignore": "^5.2.4", - "natural-compare": "^1.4.0", - "semver": "^7.5.4", - "ts-api-utils": "^1.0.1" - }, - "dependencies": { - "debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", - "dev": true, - "requires": { - "ms": "2.1.2" - } - }, - "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" - } - }, - "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 - }, - "semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", - "dev": true, - "requires": { - "lru-cache": "^6.0.0" - } - } - } - }, - "@typescript-eslint/parser": { - "version": "6.7.5", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-6.7.5.tgz", - "integrity": "sha512-bIZVSGx2UME/lmhLcjdVc7ePBwn7CLqKarUBL4me1C5feOd663liTGjMBGVcGr+BhnSLeP4SgwdvNnnkbIdkCw==", - "dev": true, - "requires": { - "@typescript-eslint/scope-manager": "6.7.5", - "@typescript-eslint/types": "6.7.5", - "@typescript-eslint/typescript-estree": "6.7.5", - "@typescript-eslint/visitor-keys": "6.7.5", - "debug": "^4.3.4" - }, - "dependencies": { - "debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", - "dev": true, - "requires": { - "ms": "2.1.2" - } - }, - "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 - } - } - }, - "@typescript-eslint/scope-manager": { - "version": "6.7.5", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-6.7.5.tgz", - "integrity": "sha512-GAlk3eQIwWOJeb9F7MKQ6Jbah/vx1zETSDw8likab/eFcqkjSD7BI75SDAeC5N2L0MmConMoPvTsmkrg71+B1A==", - "dev": true, - "requires": { - "@typescript-eslint/types": "6.7.5", - "@typescript-eslint/visitor-keys": "6.7.5" - } - }, - "@typescript-eslint/type-utils": { - "version": "6.7.5", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-6.7.5.tgz", - "integrity": "sha512-Gs0qos5wqxnQrvpYv+pf3XfcRXW6jiAn9zE/K+DlmYf6FcpxeNYN0AIETaPR7rHO4K2UY+D0CIbDP9Ut0U4m1g==", - "dev": true, - "requires": { - "@typescript-eslint/typescript-estree": "6.7.5", - "@typescript-eslint/utils": "6.7.5", - "debug": "^4.3.4", - "ts-api-utils": "^1.0.1" - }, - "dependencies": { - "debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", - "dev": true, - "requires": { - "ms": "2.1.2" - } - }, - "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 - } - } - }, - "@typescript-eslint/types": { - "version": "6.7.5", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-6.7.5.tgz", - "integrity": "sha512-WboQBlOXtdj1tDFPyIthpKrUb+kZf2VroLZhxKa/VlwLlLyqv/PwUNgL30BlTVZV1Wu4Asu2mMYPqarSO4L5ZQ==", - "dev": true - }, - "@typescript-eslint/typescript-estree": { - "version": "6.7.5", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-6.7.5.tgz", - "integrity": "sha512-NhJiJ4KdtwBIxrKl0BqG1Ur+uw7FiOnOThcYx9DpOGJ/Abc9z2xNzLeirCG02Ig3vkvrc2qFLmYSSsaITbKjlg==", - "dev": true, - "requires": { - "@typescript-eslint/types": "6.7.5", - "@typescript-eslint/visitor-keys": "6.7.5", - "debug": "^4.3.4", - "globby": "^11.1.0", - "is-glob": "^4.0.3", - "semver": "^7.5.4", - "ts-api-utils": "^1.0.1" - }, - "dependencies": { - "debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", - "dev": true, - "requires": { - "ms": "2.1.2" - } - }, - "globby": { - "version": "11.1.0", - "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz", - "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==", - "dev": true, - "requires": { - "array-union": "^2.1.0", - "dir-glob": "^3.0.1", - "fast-glob": "^3.2.9", - "ignore": "^5.2.0", - "merge2": "^1.4.1", - "slash": "^3.0.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" - } - }, - "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 - }, - "semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", - "dev": true, - "requires": { - "lru-cache": "^6.0.0" - } - }, - "slash": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", - "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", - "dev": true - } - } - }, - "@typescript-eslint/utils": { - "version": "6.7.5", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-6.7.5.tgz", - "integrity": "sha512-pfRRrH20thJbzPPlPc4j0UNGvH1PjPlhlCMq4Yx7EGjV7lvEeGX0U6MJYe8+SyFutWgSHsdbJ3BXzZccYggezA==", - "dev": true, - "requires": { - "@eslint-community/eslint-utils": "^4.4.0", - "@types/json-schema": "^7.0.12", - "@types/semver": "^7.5.0", - "@typescript-eslint/scope-manager": "6.7.5", - "@typescript-eslint/types": "6.7.5", - "@typescript-eslint/typescript-estree": "6.7.5", - "semver": "^7.5.4" - }, - "dependencies": { - "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" - } - }, - "semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", - "dev": true, - "requires": { - "lru-cache": "^6.0.0" - } - } - } - }, - "@typescript-eslint/visitor-keys": { - "version": "6.7.5", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-6.7.5.tgz", - "integrity": "sha512-3MaWdDZtLlsexZzDSdQWsFQ9l9nL8B80Z4fImSpyllFC/KLqWQRdEcB+gGGO+N3Q2uL40EsG66wZLsohPxNXvg==", - "dev": true, - "requires": { - "@typescript-eslint/types": "6.7.5", - "eslint-visitor-keys": "^3.4.1" - } - }, - "@xmldom/xmldom": { - "version": "0.8.10", - "resolved": "https://registry.npmjs.org/@xmldom/xmldom/-/xmldom-0.8.10.tgz", - "integrity": "sha512-2WALfTl4xo2SkGCYRt6rDTFfk9R1czmBvUQy12gK2KuRKIpWEhcbbzy8EZXtz/jkRqHX8bFEc6FC1HjX4TUWYw==" - }, - "abstract-logging": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/abstract-logging/-/abstract-logging-2.0.1.tgz", - "integrity": "sha512-2BjRTZxTPvheOvGbBslFSYOUkr+SjPtOnrLP33f+VIWLzezQpZcqVg7ja3L4dBXmzzgwT+a029jRx5PCi3JuiA==" - }, - "accepts": { - "version": "1.3.8", - "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz", - "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==", - "requires": { - "mime-types": "~2.1.34", - "negotiator": "0.6.3" - } - }, - "acorn": { - "version": "7.4.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", - "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==" - }, - "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, - "requires": {} - }, - "adm-zip": { - "version": "0.4.9", - "resolved": "https://registry.npmjs.org/adm-zip/-/adm-zip-0.4.9.tgz", - "integrity": "sha512-eknaJ3Io/JasGGinVeqY5TsPlQgHbiNlHnK5zdFPRNs9XRggDykKz8zPesneOMEZJxWji7G3CfsUW0Ds9Dw0Bw==" - }, - "agent-base": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.0.tgz", - "integrity": "sha512-o/zjMZRhJxny7OyEF+Op8X+efiELC7k7yOjMzgfzVqOzXqkBkWI79YoTdOtsuWd5BWhAGAuOY/Xa6xpiaWXiNg==", - "dev": true, - "requires": { - "debug": "^4.3.4" - }, - "dependencies": { - "debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", - "dev": true, - "requires": { - "ms": "2.1.2" - } - }, - "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 - } - } - }, - "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": "3.2.3", - "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-3.2.3.tgz", - "integrity": "sha512-LEHHyuhlPY3TmuUYMh2oz89lTShfvgbmzaBcxve9t/9Wuy7Dwf4yoAKcND7KFT1HAQfqZ12qtc+DUrBMeKF9nw==", - "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==", - "optional": true, - "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=", - "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==", - "devOptional": 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" - } - }, - "append-field": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/append-field/-/append-field-1.0.0.tgz", - "integrity": "sha1-HjRA6RXwsSA9I3SOeO3XubW0PlY=" - }, - "append-transform": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/append-transform/-/append-transform-1.0.0.tgz", - "integrity": "sha512-P009oYkeHyU742iSZJzZZywj4QRJdnTWffaKuJQLablCZ1uz6/cW4yaRgcDaoQ+uwOxxnt0gRUcwfsNP2ri0gw==", - "dev": true, - "requires": { - "default-require-extensions": "^2.0.0" - } - }, - "archiver": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/archiver/-/archiver-5.3.0.tgz", - "integrity": "sha512-iUw+oDwK0fgNpvveEsdQ0Ase6IIKztBJU2U0E9MzszMfmVVUyv1QJhS2ITW9ZCqx8dktAxVAjWWkKehuZE8OPg==", - "requires": { - "archiver-utils": "^2.1.0", - "async": "^3.2.0", - "buffer-crc32": "^0.2.1", - "readable-stream": "^3.6.0", - "readdir-glob": "^1.0.0", - "tar-stream": "^2.2.0", - "zip-stream": "^4.1.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" - } - }, - "string_decoder": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", - "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", - "requires": { - "safe-buffer": "~5.2.0" - } - } - } - }, - "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" - } - }, - "archy": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/archy/-/archy-1.0.0.tgz", - "integrity": "sha1-+cjBN1fMHde8N5rHeyxipcKGjEA=", - "dev": true - }, - "argparse": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", - "requires": { - "sprintf-js": "~1.0.2" - } - }, - "array-flatten": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", - "integrity": "sha1-ml9pkFGx5wczKPKgCJaLZOopVdI=" - }, - "array-from": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/array-from/-/array-from-2.1.1.tgz", - "integrity": "sha1-z+nYwmYoudxa7MYqn12PHzUsEZU=", - "dev": true - }, - "array-parallel": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/array-parallel/-/array-parallel-0.1.3.tgz", - "integrity": "sha1-j3hTCJJu1apHjEfmTRszS2wMlH0=" - }, - "array-series": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/array-series/-/array-series-0.1.5.tgz", - "integrity": "sha1-3103v8XC7wdV4qpPkv6ufUtaly8=" - }, - "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 - }, - "arrify": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/arrify/-/arrify-3.0.0.tgz", - "integrity": "sha512-tLkvA81vQG/XqE2mjDkGQHoOINtMHtysSnemrmoGe6PydDPMRbVugqyk4A6V/WDWEfm3l+0d8anA9r8cv/5Jaw==", - "dev": true - }, - "asap": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz", - "integrity": "sha1-5QNHYR1+aQlDIIu9r+vLwvuGbUY=" - }, - "asn1": { - "version": "0.2.6", - "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.6.tgz", - "integrity": "sha512-ix/FxPn0MDjeyJ7i/yoHGFt/EX6LyNbxSEhPPXODPL+KB0VPk86UYfL0lMdy+KCnv+fmvIzySwaK5COwqVbWTQ==", - "requires": { - "safer-buffer": "~2.1.0" - } - }, - "assert": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/assert/-/assert-2.0.0.tgz", - "integrity": "sha512-se5Cd+js9dXJnu6Ag2JFc00t+HmHOen+8Q+L7O9zI0PqQXr20uk2J0XQqMxZEeo5U50o8Nvmmx7dZrl+Ufr35A==", - "dev": true, - "requires": { - "es6-object-assign": "^1.1.0", - "is-nan": "^1.2.1", - "object-is": "^1.0.1", - "util": "^0.12.0" - } - }, - "assert-never": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/assert-never/-/assert-never-1.2.1.tgz", - "integrity": "sha512-TaTivMB6pYI1kXwrFlEhLeGfOqoDNdTxjCdwRfFFkEA30Eu+k48W34nlok2EYWJfFFzqaEmichdNM7th6M5HNw==" - }, - "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==", - "dev": true - }, - "async": { - "version": "3.2.4", - "resolved": "https://registry.npmjs.org/async/-/async-3.2.4.tgz", - "integrity": "sha512-iAB+JbDEGXhyIUavoDl9WP/Jj106Kz9DEn1DPgYw5ruDn0e3Wgi3sKFm55sASdGBNOQB8F59d9qQ7deqrHA8wQ==" - }, - "async-mutex": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/async-mutex/-/async-mutex-0.4.1.tgz", - "integrity": "sha512-WfoBo4E/TbCX1G95XTjbWTE3X2XLG0m1Xbv2cwOtuPdyH9CZvnaA5nCt1ucjaKEgW2A5IF71hxrRhr83Je5xjA==", - "dev": true, - "requires": { - "tslib": "^2.4.0" - }, - "dependencies": { - "tslib": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz", - "integrity": "sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==", - "dev": true - } - } - }, - "asynckit": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", - "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=" - }, - "available-typed-arrays": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.5.tgz", - "integrity": "sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==", - "dev": true - }, - "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=", - "dev": true - }, - "aws4": { - "version": "1.11.0", - "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.11.0.tgz", - "integrity": "sha512-xh1Rl34h6Fi1DC2WWKfxUTVqRsNnr6LsKz2+hfwDxQJWmrx8+c7ylaqBMcHfl1U1r2dsifOvKX3LQuLNZ+XSvA==", - "dev": true - }, - "axios": { - "version": "1.6.5", - "resolved": "https://registry.npmjs.org/axios/-/axios-1.6.5.tgz", - "integrity": "sha512-Ii012v05KEVuUoFWmMW/UQv9aRIc3ZwkWDcM+h5Il8izZCtRVpDUfwpoFf7eOtajT3QiGR4yDUx7lPqHJULgbg==", - "dev": true, - "requires": { - "follow-redirects": "^1.15.4", - "form-data": "^4.0.0", - "proxy-from-env": "^1.1.0" - }, - "dependencies": { - "form-data": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz", - "integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==", - "dev": true, - "requires": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.8", - "mime-types": "^2.1.12" - } - } - } - }, - "b4a": { - "version": "1.6.4", - "resolved": "https://registry.npmjs.org/b4a/-/b4a-1.6.4.tgz", - "integrity": "sha512-fpWrvyVHEKyeEvbKZTVOeZF3VSKKWtJxFIxX/jaVPf+cLbGUSitjb49pHLqPV2BUNNZ0LcoeEGfE/YCpyDYHIw==", - "dev": true - }, - "babel-walk": { - "version": "3.0.0-canary-5", - "resolved": "https://registry.npmjs.org/babel-walk/-/babel-walk-3.0.0-canary-5.tgz", - "integrity": "sha512-GAwkz0AihzY5bkwIY5QDR+LvsRQgB/B+1foMPvi0FZPMl5fjD7ICiznUiBdLYMH1QYe6vqu4gWYytZOccLouFw==", - "requires": { - "@babel/types": "^7.9.6" - } - }, - "backoff": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/backoff/-/backoff-2.5.0.tgz", - "integrity": "sha512-wC5ihrnUXmR2douXmXLCe5O3zg3GKIyvRi/hi58a/XyRxVI+3/yM0PYueQOZXPXQ9pxBislYkw+sF9b7C/RuMA==", - "requires": { - "precond": "0.2" - } - }, - "balanced-match": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", - "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" - }, - "base-64": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/base-64/-/base-64-1.0.0.tgz", - "integrity": "sha512-kwDPIFCGx0NZHog36dj+tHiwP4QMzsZ3AgMViUBKI0+V5n4U0ufTCUMhnQ04diaRI8EX/QcPfql7zlhZ7j4zgg==" - }, - "base64-js": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", - "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==" - }, - "base64url": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/base64url/-/base64url-3.0.1.tgz", - "integrity": "sha512-ir1UPr3dkwexU7FdV8qBBbNDRUhMmIekYMFZfi+C/sLNnRESKPl23nB9b2pltqfOQNnGzsDdId90AEtG5tCx4A==" - }, - "bcrypt-pbkdf": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", - "integrity": "sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4=", - "dev": true, - "requires": { - "tweetnacl": "^0.14.3" - } - }, - "bcryptjs": { - "version": "2.4.3", - "resolved": "https://registry.npmjs.org/bcryptjs/-/bcryptjs-2.4.3.tgz", - "integrity": "sha512-V/Hy/X9Vt7f3BbPJEi8BdVFMByHi+jNXrYkW3huaybV/kQ0KJg0Y6PkEMbn+zeT+i+SiKZ/HMqJGIIt4LZDqNQ==" - }, - "better-sqlite3": { - "version": "8.6.0", - "resolved": "https://registry.npmjs.org/better-sqlite3/-/better-sqlite3-8.6.0.tgz", - "integrity": "sha512-jwAudeiTMTSyby+/SfbHDebShbmC2MCH8mU2+DXi0WJfv13ypEJm47cd3kljmy/H130CazEvkf2Li//ewcMJ1g==", - "requires": { - "bindings": "^1.5.0", - "prebuild-install": "^7.1.1" - } - }, - "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 - }, - "bindings": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/bindings/-/bindings-1.5.0.tgz", - "integrity": "sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==", - "requires": { - "file-uri-to-path": "1.0.0" - } - }, - "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" - } - }, - "string_decoder": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", - "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", - "requires": { - "safe-buffer": "~5.2.0" - } - } - } - }, - "bluebird": { - "version": "3.7.2", - "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz", - "integrity": "sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==" - }, - "body-parser": { - "version": "1.19.2", - "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.19.2.tgz", - "integrity": "sha512-SAAwOxgoCKMGs9uUAUFHygfLAyaniaoun6I8mFY9pRAJL9+Kec34aU+oIjDhTycub1jozEfEwx1W1IuOYxVSFw==", - "requires": { - "bytes": "3.1.2", - "content-type": "~1.0.4", - "debug": "2.6.9", - "depd": "~1.1.2", - "http-errors": "1.8.1", - "iconv-lite": "0.4.24", - "on-finished": "~2.3.0", - "qs": "6.9.7", - "raw-body": "2.4.3", - "type-is": "~1.6.18" - }, - "dependencies": { - "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" - } - }, - "qs": { - "version": "6.9.7", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.9.7.tgz", - "integrity": "sha512-IhMFgUmuNpyRfxA90umL7ByLlgRXu6tIfKPpF5TmcfRLlLCckfP/g3IQmju6jjpu+Hh8rA+2p6A27ZSPOOHdKw==" - } - } - }, - "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" - } - }, - "brorand": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz", - "integrity": "sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8=" - }, - "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 - }, - "browserify-aes": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz", - "integrity": "sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==", - "requires": { - "buffer-xor": "^1.0.3", - "cipher-base": "^1.0.0", - "create-hash": "^1.1.0", - "evp_bytestokey": "^1.0.3", - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" - } - }, - "bson": { - "version": "1.0.9", - "resolved": "https://registry.npmjs.org/bson/-/bson-1.0.9.tgz", - "integrity": "sha512-IQX9/h7WdMBIW/q/++tGd+emQr0XMdeZ6icnT/74Xk9fnabWn+gZgpE+9V+gujL3hhJOoNrnDVY7tWdzc7NUTg==" - }, - "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-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-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==" - }, - "buffer-shims": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/buffer-shims/-/buffer-shims-1.0.0.tgz", - "integrity": "sha1-mXjOMXOIxkmth5MCjDR37wRKi1E=" - }, - "buffer-xor": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz", - "integrity": "sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk=" - }, - "busboy": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/busboy/-/busboy-1.6.0.tgz", - "integrity": "sha512-8SFQbg/0hQ9xy3UNTB0YEnsNBbWfhf7RtnzpL7TkBiTBRfrQ9Fxcnz7VJsleJpyp6rVLvXiuORqjlHi5q+PYuA==", - "requires": { - "streamsearch": "^1.1.0" - } - }, - "bytes": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", - "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==" - }, - "caching-transform": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/caching-transform/-/caching-transform-3.0.2.tgz", - "integrity": "sha512-Mtgcv3lh3U0zRii/6qVgQODdPA4G3zhG+jtbCWj39RXuUFTMzH0vcdMtaJS1jPowd+It2Pqr6y3NJMQqOqCE2w==", - "dev": true, - "requires": { - "hasha": "^3.0.0", - "make-dir": "^2.0.0", - "package-hash": "^3.0.0", - "write-file-atomic": "^2.4.2" - } - }, - "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=", - "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.3.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", - "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", - "dev": true - }, - "caseless": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", - "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=", - "dev": true - }, - "cfenv": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/cfenv/-/cfenv-1.0.3.tgz", - "integrity": "sha1-Ry/QwFs72y0O3ndeEkgDqxJXJ5M=", - "requires": { - "js-yaml": "3.4.x", - "ports": "1.1.x", - "underscore": "1.8.x" - } - }, - "chai": { - "version": "4.3.6", - "resolved": "https://registry.npmjs.org/chai/-/chai-4.3.6.tgz", - "integrity": "sha512-bbcp3YfHCUzMOvKqsztczerVgBKSsEijCySNlHHbX3VG1nskvqjz5Rfso1gGwD6w6oOV3eI60pKuMOV5MV7p3Q==", - "dev": true, - "requires": { - "assertion-error": "^1.1.0", - "check-error": "^1.0.2", - "deep-eql": "^3.0.1", - "get-func-name": "^2.0.0", - "loupe": "^2.3.1", - "pathval": "^1.1.1", - "type-detect": "^4.0.5" - }, - "dependencies": { - "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==", - "dev": true, - "requires": { - "type-detect": "^4.0.0" - } - } - } - }, - "chai-as-promised": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/chai-as-promised/-/chai-as-promised-7.1.1.tgz", - "integrity": "sha512-azL6xMoi+uxu6z4rhWQ1jbdUhOMhis2PvscD/xjLqNMkv3BPPp2JyyuTHOrf9BOosGpNQ11v6BKv/g57RXbiaA==", - "dev": true, - "requires": { - "check-error": "^1.0.2" - } - }, - "chalk": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.1.tgz", - "integrity": "sha512-diHzdDKxcU+bAsUboHLPEDQiw0qEe0qd7SYUn3HgcFlWgbDcfLGswOHYeGrHKzG9z6UYf01d9VFMfZxPM1xZSg==", - "devOptional": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "character-parser": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/character-parser/-/character-parser-2.2.0.tgz", - "integrity": "sha512-+UqJQjFEFaTAs3bNsF2j2kEN1baG/zghZbdqoYEDxGZtJo9LBzl1A+m0D4n3qKx8N2FNv8/Xp6yV9mQmBuptaw==", - "requires": { - "is-regex": "^1.0.3" - } - }, - "chardet": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz", - "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==", - "optional": true - }, - "check-error": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/check-error/-/check-error-1.0.2.tgz", - "integrity": "sha1-V00xLt2Iu13YkS6Sht1sCu1KrII=", - "dev": true - }, - "chokidar": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.3.0.tgz", - "integrity": "sha512-dGmKLDdT3Gdl7fBUe8XK+gAtGmzy5Fn0XkkWQuYxGIgWVPPse2CxFA5mtrlD0TOHaHjEUqkWNyP1XdHoJES/4A==", - "dev": true, - "requires": { - "anymatch": "~3.1.1", - "braces": "~3.0.2", - "fsevents": "~2.1.1", - "glob-parent": "~5.1.0", - "is-binary-path": "~2.1.0", - "is-glob": "~4.0.1", - "normalize-path": "~3.0.0", - "readdirp": "~3.2.0" - } - }, - "chownr": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz", - "integrity": "sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==" - }, - "cipher-base": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.4.tgz", - "integrity": "sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==", - "requires": { - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" - } - }, - "cli-cursor": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz", - "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", - "optional": true, - "requires": { - "restore-cursor": "^3.1.0" - } - }, - "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==", - "optional": true - }, - "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 - }, - "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==", - "devOptional": 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==", - "devOptional": true - }, - "colors": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/colors/-/colors-1.0.3.tgz", - "integrity": "sha1-BDP0TYCWgP3rYO0mDxsMJi6CpAs=" - }, - "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": "8.3.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-8.3.0.tgz", - "integrity": "sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww==" - }, - "commondir": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", - "integrity": "sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs=", - "dev": true - }, - "component-emitter": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz", - "integrity": "sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==" - }, - "compress-commons": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/compress-commons/-/compress-commons-4.1.1.tgz", - "integrity": "sha512-QLdDLCKNV2dtoTorqgxngQCMA+gWXkM/Nwu7FpeBhk/RdkzimqC3jueb/FDmaZeXh+uby1jkBqE3xArsLBE5wQ==", - "requires": { - "buffer-crc32": "^0.2.13", - "crc32-stream": "^4.0.2", - "normalize-path": "^3.0.0", - "readable-stream": "^3.6.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" - } - }, - "string_decoder": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", - "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", - "requires": { - "safe-buffer": "~5.2.0" - } - } - } - }, - "concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=" - }, - "concat-stream": { - "version": "1.5.2", - "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.5.2.tgz", - "integrity": "sha1-cIl4Yk2FavQaWnQd790mHadSwmY=", - "requires": { - "inherits": "~2.0.1", - "readable-stream": "~2.0.0", - "typedarray": "~0.0.5" - } - }, - "constantinople": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/constantinople/-/constantinople-4.0.1.tgz", - "integrity": "sha512-vCrqcSIq4//Gx74TXXCGnHpulY1dskqLTFGDmhrGxzeXL8lF8kvXv6mpNWlJj1uD4DW23D4ljAqbY4RRaaUZIw==", - "requires": { - "@babel/parser": "^7.6.0", - "@babel/types": "^7.6.1" - } - }, - "content-disposition": { - "version": "0.5.4", - "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz", - "integrity": "sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==", - "requires": { - "safe-buffer": "5.2.1" - } - }, - "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==" - }, - "convert-source-map": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.8.0.tgz", - "integrity": "sha512-+OQdjP49zViI/6i7nIJpA8rAl4sV/JdPfU9nZs3VqOwGIgizICvuN2ru6fMd+4llL0tar18UYJXfZ/TWtmhUjA==", - "dev": true, - "requires": { - "safe-buffer": "~5.1.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==", - "dev": true - } - } - }, - "cookie": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.5.0.tgz", - "integrity": "sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw==" - }, - "cookie-signature": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", - "integrity": "sha1-4wOogrNCzD7oylE6eZmXNNqzriw=" - }, - "cookiejar": { - "version": "2.1.4", - "resolved": "https://registry.npmjs.org/cookiejar/-/cookiejar-2.1.4.tgz", - "integrity": "sha512-LDx6oHrK+PhzLKJU9j5S7/Y3jM/mUHvD/DeI1WQmJn652iPC5Y4TBzC9l+5OMOXlyTTA+SmVUPm0HQUwpD5Jqw==" - }, - "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==" - }, - "coveralls": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/coveralls/-/coveralls-3.0.4.tgz", - "integrity": "sha512-eyqUWA/7RT0JagiL0tThVhjbIjoiEUyWCjtUJoOPcWoeofP5WK/jb2OJYoBFrR6DvplR+AxOyuBqk4JHkk5ykA==", - "dev": true, - "requires": { - "growl": "~> 1.10.0", - "js-yaml": "^3.11.0", - "lcov-parse": "^0.0.10", - "log-driver": "^1.2.7", - "minimist": "^1.2.0", - "request": "^2.86.0" - }, - "dependencies": { - "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 - }, - "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" - } - } - } - }, - "cp-file": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/cp-file/-/cp-file-6.2.0.tgz", - "integrity": "sha512-fmvV4caBnofhPe8kOcitBwSn2f39QLjnAnGq3gO9dfd75mUytzKNZB1hde6QHunW2Rt+OwuBOMc3i1tNElbszA==", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "make-dir": "^2.0.0", - "nested-error-stacks": "^2.0.0", - "pify": "^4.0.1", - "safe-buffer": "^5.0.1" - }, - "dependencies": { - "pify": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", - "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", - "dev": true - } - } - }, - "cpy": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/cpy/-/cpy-10.1.0.tgz", - "integrity": "sha512-VC2Gs20JcTyeQob6UViBLnyP0bYHkBh6EiKzot9vi2DmeGlFT9Wd7VG3NBrkNx/jYvFBeyDOMMHdHQhbtKLgHQ==", - "dev": true, - "requires": { - "arrify": "^3.0.0", - "cp-file": "^10.0.0", - "globby": "^13.1.4", - "junk": "^4.0.1", - "micromatch": "^4.0.5", - "nested-error-stacks": "^2.1.1", - "p-filter": "^3.0.0", - "p-map": "^6.0.0" - }, - "dependencies": { - "cp-file": { - "version": "10.0.0", - "resolved": "https://registry.npmjs.org/cp-file/-/cp-file-10.0.0.tgz", - "integrity": "sha512-vy2Vi1r2epK5WqxOLnskeKeZkdZvTKfFZQCplE3XWsP+SUJyd5XAUFC9lFgTjjXJF2GMne/UML14iEmkAaDfFg==", - "dev": true, - "requires": { - "graceful-fs": "^4.2.10", - "nested-error-stacks": "^2.1.1", - "p-event": "^5.0.1" - } - } - } - }, - "cpy-cli": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/cpy-cli/-/cpy-cli-5.0.0.tgz", - "integrity": "sha512-fb+DZYbL9KHc0BC4NYqGRrDIJZPXUmjjtqdw4XRRg8iV8dIfghUX/WiL+q4/B/KFTy3sK6jsbUhBaz0/Hxg7IQ==", - "dev": true, - "requires": { - "cpy": "^10.1.0", - "meow": "^12.0.1" - } - }, - "crc-32": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/crc-32/-/crc-32-1.2.2.tgz", - "integrity": "sha512-ROmzCKrTnOwybPcJApAA6WBWij23HVfGVNKqqrZpuyZOHqK2CwHSvpGuyt/UNNvaIjEd8X5IFGp4Mh+Ie1IHJQ==" - }, - "crc32-stream": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/crc32-stream/-/crc32-stream-4.0.2.tgz", - "integrity": "sha512-DxFZ/Hk473b/muq1VJ///PMNLj0ZMnzye9thBpmjpJKCc5eMgB95aK8zCGrGfQ90cWo561Te6HK9D+j4KPdM6w==", - "requires": { - "crc-32": "^1.2.0", - "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" - } - }, - "string_decoder": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", - "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", - "requires": { - "safe-buffer": "~5.2.0" - } - } - } - }, - "create-hash": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz", - "integrity": "sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==", - "requires": { - "cipher-base": "^1.0.1", - "inherits": "^2.0.1", - "md5.js": "^1.3.4", - "ripemd160": "^2.0.1", - "sha.js": "^2.4.0" - } - }, - "create-hmac": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz", - "integrity": "sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==", - "requires": { - "cipher-base": "^1.0.3", - "create-hash": "^1.1.0", - "inherits": "^2.0.1", - "ripemd160": "^2.0.0", - "safe-buffer": "^5.0.1", - "sha.js": "^2.4.8" - } - }, - "cross-spawn": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-4.0.2.tgz", - "integrity": "sha1-e5JHYhwjrf3ThWAEqCPL45dCTUE=", - "requires": { - "lru-cache": "^4.0.1", - "which": "^1.2.9" - } - }, - "cycle": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/cycle/-/cycle-1.0.3.tgz", - "integrity": "sha1-IegLK+hYD5i0aPN5QwZisEbDStI=" - }, - "dashdash": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", - "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=", - "dev": true, - "requires": { - "assert-plus": "^1.0.0" - } - }, - "dbf": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/dbf/-/dbf-0.1.0.tgz", - "integrity": "sha1-1WNrdWq9NoilbU3+tZD0gqBjvq0=", - "requires": { - "jdataview": "~2.4.4" - } - }, - "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" - } - }, - "decamelize": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", - "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", - "dev": true - }, - "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" - } - }, - "deep-equal": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-2.0.5.tgz", - "integrity": "sha512-nPiRgmbAtm1a3JsnLCf6/SLfXcjyN5v8L1TXzdCmHrXJ4hx+gW/w1YCcn7z8gJtSiDArZCgYtbao3QqLm/N1Sw==", - "dev": true, - "requires": { - "call-bind": "^1.0.0", - "es-get-iterator": "^1.1.1", - "get-intrinsic": "^1.0.1", - "is-arguments": "^1.0.4", - "is-date-object": "^1.0.2", - "is-regex": "^1.1.1", - "isarray": "^2.0.5", - "object-is": "^1.1.4", - "object-keys": "^1.1.1", - "object.assign": "^4.1.2", - "regexp.prototype.flags": "^1.3.0", - "side-channel": "^1.0.3", - "which-boxed-primitive": "^1.0.1", - "which-collection": "^1.0.1", - "which-typed-array": "^1.1.2" - }, - "dependencies": { - "isarray": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", - "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==", - "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==" - }, - "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 - }, - "default-require-extensions": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/default-require-extensions/-/default-require-extensions-2.0.0.tgz", - "integrity": "sha1-9fj7sYp9bVCyH2QfZJ67Uiz+JPc=", - "dev": true, - "requires": { - "strip-bom": "^3.0.0" - } - }, - "define-properties": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz", - "integrity": "sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==", - "dev": true, - "requires": { - "object-keys": "^1.0.12" - } - }, - "delayed-stream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", - "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=" - }, - "depd": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", - "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=" - }, - "destroy": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz", - "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==" - }, - "detect-libc": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.0.2.tgz", - "integrity": "sha512-UX6sGumvvqSaXgdKGUsgZWqcUyIXZ/vZTrlRT/iobiKhGL0zL4d3osHj3uqllWJK+i+sixDS/3COVEOFbupFyw==" - }, - "dezalgo": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/dezalgo/-/dezalgo-1.0.4.tgz", - "integrity": "sha512-rXSP0bf+5n0Qonsb+SVVfNfIsimO4HEtmnIpPHY8Q1UCzKlQrDMfdobr8nJOOsRgWCyMRqeSBQzmWUMq7zvVig==", - "requires": { - "asap": "^2.0.0", - "wrappy": "1" - } - }, - "diff": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/diff/-/diff-3.5.0.tgz", - "integrity": "sha512-A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA==", - "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" - }, - "dependencies": { - "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 - } - } - }, - "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" - } - }, - "doctypes": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/doctypes/-/doctypes-1.1.0.tgz", - "integrity": "sha512-LLBi6pEqS6Do3EKQ3J0NqHWV5hhb78Pi8vvESYwyOy2c31ZEZVdtitdzsQsKb7878PEERhzUk0ftqGhG6Mz+pQ==" - }, - "drange": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/drange/-/drange-1.1.1.tgz", - "integrity": "sha512-pYxfDYpued//QpnLIm4Avk7rsNtAtQkUES2cwAYSvD/wd2pKD71gN2Ebj3e7klzXwjocvE8c5vx/1fxwpqmSxA==", - "dev": true - }, - "duplexer": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/duplexer/-/duplexer-0.1.2.tgz", - "integrity": "sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg==" - }, - "eastasianwidth": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz", - "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==", - "dev": true - }, - "ecc-jsbn": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz", - "integrity": "sha1-OoOpBOVDUyh4dMVkt1SThoSamMk=", - "dev": true, - "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=" - }, - "elliptic": { - "version": "6.5.5", - "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.5.tgz", - "integrity": "sha512-7EjbcmUm17NQFu4Pmgmq2olYMj8nwMnpcddByChSUjArp8F5DQWcIcpriwO4ZToLNAJig0yiyjswfyGNje/ixw==", - "requires": { - "bn.js": "^4.11.9", - "brorand": "^1.1.0", - "hash.js": "^1.0.0", - "hmac-drbg": "^1.0.1", - "inherits": "^2.0.4", - "minimalistic-assert": "^1.0.1", - "minimalistic-crypto-utils": "^1.0.1" - }, - "dependencies": { - "bn.js": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", - "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" - } - } - }, - "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==", - "devOptional": true - }, - "encodeurl": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", - "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==" - }, - "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" - } - }, - "error-ex": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", - "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", - "dev": true, - "requires": { - "is-arrayish": "^0.2.1" - } - }, - "es-abstract": { - "version": "1.19.4", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.19.4.tgz", - "integrity": "sha512-flV8e5g9/xulChMG48Fygk1ptpo4lQRJ0eJYtxJFgi7pklLx7EFcOJ34jnvr8pbWlaFN/AT1cZpe0hiFel9Hqg==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "es-to-primitive": "^1.2.1", - "function-bind": "^1.1.1", - "get-intrinsic": "^1.1.1", - "get-symbol-description": "^1.0.0", - "has": "^1.0.3", - "has-symbols": "^1.0.3", - "internal-slot": "^1.0.3", - "is-callable": "^1.2.4", - "is-negative-zero": "^2.0.2", - "is-regex": "^1.1.4", - "is-shared-array-buffer": "^1.0.2", - "is-string": "^1.0.7", - "is-weakref": "^1.0.2", - "object-inspect": "^1.12.0", - "object-keys": "^1.1.1", - "object.assign": "^4.1.2", - "string.prototype.trimend": "^1.0.4", - "string.prototype.trimstart": "^1.0.4", - "unbox-primitive": "^1.0.1" - } - }, - "es-get-iterator": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/es-get-iterator/-/es-get-iterator-1.1.2.tgz", - "integrity": "sha512-+DTO8GYwbMCwbywjimwZMHp8AuYXOS2JZFWoi2AlPOS3ebnII9w/NLpNZtA7A0YLaVDw+O7KFCeoIV7OPvM7hQ==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.1.0", - "has-symbols": "^1.0.1", - "is-arguments": "^1.1.0", - "is-map": "^2.0.2", - "is-set": "^2.0.2", - "is-string": "^1.0.5", - "isarray": "^2.0.5" - }, - "dependencies": { - "isarray": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", - "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==", - "dev": true - } - } - }, - "es-to-primitive": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", - "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", - "dev": true, - "requires": { - "is-callable": "^1.1.4", - "is-date-object": "^1.0.1", - "is-symbol": "^1.0.2" - } - }, - "es6-error": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/es6-error/-/es6-error-4.1.1.tgz", - "integrity": "sha512-Um/+FxMr9CISWh0bi5Zv0iOD+4cFh5qLeks1qhAopKVAJw3drgKbKySikp7wGhDL0HPeaja0P5ULZrxLkniUVg==", - "dev": true - }, - "es6-object-assign": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/es6-object-assign/-/es6-object-assign-1.1.0.tgz", - "integrity": "sha1-wsNYJlYkfDnqEHyx5mUrb58kUjw=", - "dev": true - }, - "es6-promise": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-3.2.1.tgz", - "integrity": "sha1-7FYjOGgDKQkgcXDDlEjiREndH8Q=" - }, - "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=", - "devOptional": true - }, - "eslint": { - "version": "8.51.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.51.0.tgz", - "integrity": "sha512-2WuxRZBrlwnXi+/vFSJyjMqrNjtJqiasMzehF0shoLaW7DzS3/9Yvrmq5JiT66+pNjiX4UBnLDiKHcWAr/OInA==", - "dev": true, - "requires": { - "@eslint-community/eslint-utils": "^4.2.0", - "@eslint-community/regexpp": "^4.6.1", - "@eslint/eslintrc": "^2.1.2", - "@eslint/js": "8.51.0", - "@humanwhocodes/config-array": "^0.11.11", - "@humanwhocodes/module-importer": "^1.0.1", - "@nodelib/fs.walk": "^1.2.8", - "ajv": "^6.12.4", - "chalk": "^4.0.0", - "cross-spawn": "^7.0.2", - "debug": "^4.3.2", - "doctrine": "^3.0.0", - "escape-string-regexp": "^4.0.0", - "eslint-scope": "^7.2.2", - "eslint-visitor-keys": "^3.4.3", - "espree": "^9.6.1", - "esquery": "^1.4.2", - "esutils": "^2.0.2", - "fast-deep-equal": "^3.1.3", - "file-entry-cache": "^6.0.1", - "find-up": "^5.0.0", - "glob-parent": "^6.0.2", - "globals": "^13.19.0", - "graphemer": "^1.4.0", - "ignore": "^5.2.0", - "imurmurhash": "^0.1.4", - "is-glob": "^4.0.0", - "is-path-inside": "^3.0.3", - "js-yaml": "^4.1.0", - "json-stable-stringify-without-jsonify": "^1.0.1", - "levn": "^0.4.1", - "lodash.merge": "^4.6.2", - "minimatch": "^3.1.2", - "natural-compare": "^1.4.0", - "optionator": "^0.9.3", - "strip-ansi": "^6.0.1", - "text-table": "^0.2.0" - }, - "dependencies": { - "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 - }, - "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 - }, - "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.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", - "dev": true, - "requires": { - "ms": "2.1.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-scope": { - "version": "7.2.2", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.2.tgz", - "integrity": "sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==", - "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" - } - }, - "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" - } - }, - "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 - }, - "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 - }, - "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 - }, - "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" - } - }, - "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" - } - } - } - }, - "eslint-config-prettier": { - "version": "6.15.0", - "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-6.15.0.tgz", - "integrity": "sha512-a1+kOYLR8wMGustcgAjdydMsQ2A/2ipRPwRKUmfYaSxc9ZPcrku080Ctl6zrZzZNs/U82MjSv+qKREkoq3bJaw==", - "dev": true, - "requires": { - "get-stdin": "^6.0.0" - } - }, - "eslint-plugin-prettier": { - "version": "3.4.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-prettier/-/eslint-plugin-prettier-3.4.1.tgz", - "integrity": "sha512-htg25EUYUeIhKHXjOinK4BgCcDwtLHjqaxCDsMy5nbnUMkKFvIhMVCp+5GFUXQ4Nr8lBsPqtGAqBenbpFqAA2g==", - "dev": true, - "requires": { - "prettier-linter-helpers": "^1.0.0" - } - }, - "eslint-visitor-keys": { - "version": "3.4.3", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", - "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", - "dev": true - }, - "espree": { - "version": "9.6.1", - "resolved": "https://registry.npmjs.org/espree/-/espree-9.6.1.tgz", - "integrity": "sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==", - "dev": true, - "requires": { - "acorn": "^8.9.0", - "acorn-jsx": "^5.3.2", - "eslint-visitor-keys": "^3.4.1" - }, - "dependencies": { - "acorn": { - "version": "8.10.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.10.0.tgz", - "integrity": "sha512-F0SAmZ8iUtS//m8DmCTA0jlh6TDKkHQyK6xc6V4KDTyZKA9dnvX9/3sRTVQrWm79glUAZbnmmNcdYwUIHWVybw==", - "dev": true - } - } - }, - "esprima": { - "version": "2.7.3", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-2.7.3.tgz", - "integrity": "sha1-luO3DVd59q1JzQMmc9HDEnZ7pYE=" - }, - "esquery": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.5.0.tgz", - "integrity": "sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==", - "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 - } - } - }, - "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": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==" - }, - "event-stream": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/event-stream/-/event-stream-4.0.1.tgz", - "integrity": "sha512-qACXdu/9VHPBzcyhdOWR5/IahhGMf0roTeZJfzz077GwylcDd90yOHLouhmv7GJ5XzPi6ekaQWd8AvPP2nOvpA==", - "requires": { - "duplexer": "^0.1.1", - "from": "^0.1.7", - "map-stream": "0.0.7", - "pause-stream": "^0.0.11", - "split": "^1.0.1", - "stream-combiner": "^0.2.2", - "through": "^2.3.8" - } - }, - "evp_bytestokey": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz", - "integrity": "sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==", - "requires": { - "md5.js": "^1.3.4", - "safe-buffer": "^5.1.1" - } - }, - "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.18.2", - "resolved": "https://registry.npmjs.org/express/-/express-4.18.2.tgz", - "integrity": "sha512-5/PsL6iGPdfQ/lKM1UuielYgv3BUoJfz1aUwU9vHZ+J7gyvwdQXFEBIEIaxeGf0GIcreATNyBExtalisDbuMqQ==", - "requires": { - "accepts": "~1.3.8", - "array-flatten": "1.1.1", - "body-parser": "1.20.1", - "content-disposition": "0.5.4", - "content-type": "~1.0.4", - "cookie": "0.5.0", - "cookie-signature": "1.0.6", - "debug": "2.6.9", - "depd": "2.0.0", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "etag": "~1.8.1", - "finalhandler": "1.2.0", - "fresh": "0.5.2", - "http-errors": "2.0.0", - "merge-descriptors": "1.0.1", - "methods": "~1.1.2", - "on-finished": "2.4.1", - "parseurl": "~1.3.3", - "path-to-regexp": "0.1.7", - "proxy-addr": "~2.0.7", - "qs": "6.11.0", - "range-parser": "~1.2.1", - "safe-buffer": "5.2.1", - "send": "0.18.0", - "serve-static": "1.15.0", - "setprototypeof": "1.2.0", - "statuses": "2.0.1", - "type-is": "~1.6.18", - "utils-merge": "1.0.1", - "vary": "~1.1.2" - }, - "dependencies": { - "body-parser": { - "version": "1.20.1", - "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.1.tgz", - "integrity": "sha512-jWi7abTbYwajOytWCQc37VulmWiRae5RyTpaCyDcS5/lMdtwSz5lOpDE67srw/HYe35f1z3fDQw+3txg7gNtWw==", - "requires": { - "bytes": "3.1.2", - "content-type": "~1.0.4", - "debug": "2.6.9", - "depd": "2.0.0", - "destroy": "1.2.0", - "http-errors": "2.0.0", - "iconv-lite": "0.4.24", - "on-finished": "2.4.1", - "qs": "6.11.0", - "raw-body": "2.5.1", - "type-is": "~1.6.18", - "unpipe": "1.0.0" - } - }, - "depd": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", - "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==" - }, - "http-errors": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", - "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==", - "requires": { - "depd": "2.0.0", - "inherits": "2.0.4", - "setprototypeof": "1.2.0", - "statuses": "2.0.1", - "toidentifier": "1.0.1" - } - }, - "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" - } - }, - "on-finished": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz", - "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==", - "requires": { - "ee-first": "1.1.1" - } - }, - "qs": { - "version": "6.11.0", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.11.0.tgz", - "integrity": "sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==", - "requires": { - "side-channel": "^1.0.4" - } - }, - "raw-body": { - "version": "2.5.1", - "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.1.tgz", - "integrity": "sha512-qqJBtEyVgS0ZmPGdCFPWJ3FreoqvG4MVQln/kCgF7Olq95IbOp0/BWyMwbdtn4VTvkM8Y7khCQ2Xgk/tcrCXig==", - "requires": { - "bytes": "3.1.2", - "http-errors": "2.0.0", - "iconv-lite": "0.4.24", - "unpipe": "1.0.0" - } - }, - "statuses": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", - "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==" - } - } - }, - "express-session": { - "version": "1.17.2", - "resolved": "https://registry.npmjs.org/express-session/-/express-session-1.17.2.tgz", - "integrity": "sha512-mPcYcLA0lvh7D4Oqr5aNJFMtBMKPLl++OKKxkHzZ0U0oDq1rpKBnkR5f5vCHR26VeArlTOEF9td4x5IjICksRQ==", - "requires": { - "cookie": "0.4.1", - "cookie-signature": "1.0.6", - "debug": "2.6.9", - "depd": "~2.0.0", - "on-headers": "~1.0.2", - "parseurl": "~1.3.3", - "safe-buffer": "5.2.1", - "uid-safe": "~2.1.5" - }, - "dependencies": { - "cookie": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.1.tgz", - "integrity": "sha512-ZwrFkGJxUR3EIoXtO+yVE69Eb7KlixbaeAWfBQB9vVsNn/o+Yw69gBWSSDK825hQNdN+wF8zELf3dFNl/kxkUA==" - }, - "depd": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", - "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==" - } - } - }, - "extend": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", - "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==", - "dev": true - }, - "external-editor": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz", - "integrity": "sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==", - "optional": true, - "requires": { - "chardet": "^0.7.0", - "iconv-lite": "^0.4.24", - "tmp": "^0.0.33" - }, - "dependencies": { - "iconv-lite": { - "version": "0.4.24", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", - "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", - "optional": true, - "requires": { - "safer-buffer": ">= 2.1.2 < 3" - } - } - } - }, - "extsprintf": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.4.1.tgz", - "integrity": "sha512-Wrk35e8ydCKDj/ArClo1VrPVmN8zph5V4AtHwIuHhvMXsKf73UT3BOD+azBIW+3wOJ4FhEH7zyaJCFvChjYvMA==" - }, - "eyes": { - "version": "0.1.8", - "resolved": "https://registry.npmjs.org/eyes/-/eyes-0.1.8.tgz", - "integrity": "sha1-Ys8SAjTGg3hdkCNIqADvPgzCC8A=" - }, - "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-diff": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/fast-diff/-/fast-diff-1.2.0.tgz", - "integrity": "sha512-xJuoT5+L99XlZ8twedaRf6Ax2TgQVxvgZOYoPKqZufmJib0tL2tegPBOZb1pVNgIhlqDlA0eO0c3wBvQcmzx4w==", - "dev": true - }, - "fast-fifo": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/fast-fifo/-/fast-fifo-1.3.2.tgz", - "integrity": "sha512-/d9sfos4yxzpwkDkuN7k2SqFKtYNmCTzgfEpz82x34IM9/zc8KGxQoXg1liNC/izpRM/MBdt44Nmx41ZWqk+FQ==", - "dev": true - }, - "fast-glob": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.1.tgz", - "integrity": "sha512-kNFPyjhh5cKjrUltxs+wFx+ZkbRaxxmZ+X0ZU31SOsxCEtP9VPgtq2teZw1DebupL5GmDaNQ6yKMMVcM41iqDg==", - "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": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", - "dev": true - }, - "fast-safe-stringify": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/fast-safe-stringify/-/fast-safe-stringify-2.1.1.tgz", - "integrity": "sha512-W+KJc2dmILlPplD/H4K9l9LcAHAfPtP6BY84uVLXQ6Evcz9Lcg33Y2z1IVblT6xdY54PXYVHEv+0Wpq8Io6zkA==" - }, - "fastq": { - "version": "1.15.0", - "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.15.0.tgz", - "integrity": "sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==", - "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": "sha512-cE1qsB/VwyQozZ+q1dGxR8LBYNZeofhEdUNGSMbQD3Gw2lAzX9Zb3uIU6Ebc/Fmyjo9AWWfnn0AUCHqtevs/8g==", - "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==", - "optional": true, - "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" - } - }, - "file-type": { - "version": "16.5.4", - "resolved": "https://registry.npmjs.org/file-type/-/file-type-16.5.4.tgz", - "integrity": "sha512-/yFHK0aGjFEgDJjEKP0pWCplsPFPhwyfwevf/pVxiN0tmE4L9LmwWxWukdJSHdoCli4VgQLehjJtwQBnqmsKcw==", - "requires": { - "readable-web-to-node-stream": "^3.0.0", - "strtok3": "^6.2.4", - "token-types": "^4.1.1" - } - }, - "file-uri-to-path": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz", - "integrity": "sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==" - }, - "fill-keys": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/fill-keys/-/fill-keys-1.0.2.tgz", - "integrity": "sha1-mo+jb06K1jTjv2tPPIiCVRRS6yA=", - "dev": true, - "requires": { - "is-object": "~1.0.1", - "merge-descriptors": "~1.0.0" - } - }, - "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.2.0", - "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.2.0.tgz", - "integrity": "sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg==", - "requires": { - "debug": "2.6.9", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "on-finished": "2.4.1", - "parseurl": "~1.3.3", - "statuses": "2.0.1", - "unpipe": "~1.0.0" - }, - "dependencies": { - "on-finished": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz", - "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==", - "requires": { - "ee-first": "1.1.1" - } - }, - "statuses": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", - "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==" - } - } - }, - "find-cache-dir": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-3.3.2.tgz", - "integrity": "sha512-wXZV5emFEjrridIgED11OoUKLxiYjAcqot/NJdAkOhlJ+vGzwhOAfcG5OX1jP+S0PcjEn8bdMJv+g2jwQ3Onig==", - "dev": true, - "requires": { - "commondir": "^1.0.1", - "make-dir": "^3.0.2", - "pkg-dir": "^4.1.0" - }, - "dependencies": { - "make-dir": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", - "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", - "dev": true, - "requires": { - "semver": "^6.0.0" - } - }, - "semver": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", - "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", - "dev": true - } - } - }, - "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" - }, - "dependencies": { - "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 - } - } - }, - "flat": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/flat/-/flat-4.1.1.tgz", - "integrity": "sha512-FmTtBsHskrU6FJ2VxCnsDb84wu9zhmO3cUX2kGFb5tuwhfXxGciiT0oRY+cck35QmG+NmGh5eLz6lLCpWTqwpA==", - "dev": true, - "requires": { - "is-buffer": "~2.0.3" - }, - "dependencies": { - "is-buffer": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-2.0.5.tgz", - "integrity": "sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ==", - "dev": true - } - } - }, - "flat-cache": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.1.1.tgz", - "integrity": "sha512-/qM2b3LUIaIgviBQovTLvijfyOQXPtSRnRK26ksj2J7rzPIecePUIpJsZ4T02Qg+xiAEKIs5K8dsHEd+VaKa/Q==", - "dev": true, - "requires": { - "flatted": "^3.2.9", - "keyv": "^4.5.3", - "rimraf": "^3.0.2" - }, - "dependencies": { - "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" - } - } - } - }, - "flatted": { - "version": "3.2.9", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.9.tgz", - "integrity": "sha512-36yxDn5H7OFZQla0/jFJmbIKTdZAQHngCedGxiMmpNfEZM0sdEeT+WczLQrjK6D7o2aiyLYDnkw0R3JK0Qv1RQ==", - "dev": true - }, - "follow-redirects": { - "version": "1.15.4", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.4.tgz", - "integrity": "sha512-Cr4D/5wlrb0z9dgERpUL3LrmPKVDsETIJhaCMeDfuFYcqa5bldGV6wBsAN6X/vxlXQtFBMrXdXxdL8CbDTGniw==", - "dev": true - }, - "foreach": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/foreach/-/foreach-2.0.5.tgz", - "integrity": "sha1-C+4AUBiusmDQo6865ljdATbsG5k=", - "dev": true - }, - "foreachasync": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/foreachasync/-/foreachasync-3.0.0.tgz", - "integrity": "sha1-VQKYfchxS+M5IJfzLgBxyd7gfPY=" - }, - "foreground-child": { - "version": "1.5.6", - "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-1.5.6.tgz", - "integrity": "sha1-T9ca0t/elnibmApcCilZN8svXOk=", - "dev": true, - "requires": { - "cross-spawn": "^4", - "signal-exit": "^3.0.0" - } - }, - "forever-agent": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", - "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=", - "dev": true - }, - "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==", - "dev": true, - "requires": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.6", - "mime-types": "^2.1.12" - } - }, - "format-util": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/format-util/-/format-util-1.0.5.tgz", - "integrity": "sha512-varLbTj0e0yVyRpqQhuWV+8hlePAgaoFRhNFj50BNjEIrw1/DphHSObtqwskVCPWNgzwPoQrZAbfa/SBiicNeg==", - "dev": true - }, - "formidable": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/formidable/-/formidable-2.1.2.tgz", - "integrity": "sha512-CM3GuJ57US06mlpQ47YcunuUZ9jpm8Vx+P2CGt2j7HpgkKZO/DJYQ0Bobim8G6PFQmK5lOqOOdUXboU+h73A4g==", - "requires": { - "dezalgo": "^1.0.4", - "hexoid": "^1.0.0", - "once": "^1.4.0", - "qs": "^6.11.0" - }, - "dependencies": { - "qs": { - "version": "6.11.2", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.11.2.tgz", - "integrity": "sha512-tDNIz22aBzCDxLtVH++VnTfzxlfeK5CbqohpSqpJgj1Wg/cQbStNAz3NuqCs5vV+pjBsK4x4pN9HlVh7rcYRiA==", - "requires": { - "side-channel": "^1.0.4" - } - } - } - }, - "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": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==" - }, - "from": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/from/-/from-0.1.7.tgz", - "integrity": "sha1-g8YK/Fi5xWmXAH7Rp2izqzA6RP4=" - }, - "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": "4.0.3", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-4.0.3.tgz", - "integrity": "sha512-q6rbdDd1o2mAnQreO7YADIxf/Whx4AHBiRf6d+/cVT8h44ss+lHgxf1FemcqDnQt9X3ct4McHr+JMGlYSsK7Cg==", - "requires": { - "graceful-fs": "^4.1.2", - "jsonfile": "^4.0.0", - "universalify": "^0.1.0" - } - }, - "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.1.3", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.1.3.tgz", - "integrity": "sha512-Auw9a4AxqWpa9GUfj370BMPzzyncfBABW8Mab7BGWBYDj4Isgq+cDKtx0i6u9jcX9pQDnswsaaOTgTmA5pEjuQ==", - "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==" - }, - "geojson": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/geojson/-/geojson-0.5.0.tgz", - "integrity": "sha1-PNbJY5m+ZbVu5VWWEW/pGRznAcA=" - }, - "geojson-rbush": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/geojson-rbush/-/geojson-rbush-3.2.0.tgz", - "integrity": "sha512-oVltQTXolxvsz1sZnutlSuLDEcQAKYC/uXt9zDzJJ6bu0W+baTI8LZBaTup5afzibEH4N3jlq2p+a152wlBJ7w==", - "requires": { - "@turf/bbox": "*", - "@turf/helpers": "6.x", - "@turf/meta": "6.x", - "@types/geojson": "7946.0.8", - "rbush": "^3.0.1" - } - }, - "geojson-stream": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/geojson-stream/-/geojson-stream-0.1.0.tgz", - "integrity": "sha512-svSg5fFXPaTiqzEBGXScA+nISaeC9rLvku2PH+wM5LToATUw2bLIrvls43ymnT9Xnp51nBPVyK9m4Af40KpJ7w==", - "requires": { - "JSONStream": "^1.0.0", - "through": "^2.3.4" - } - }, - "geojson-validation": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/geojson-validation/-/geojson-validation-1.0.2.tgz", - "integrity": "sha512-K5jrJ4wFvORn2pRKeg181LL0QPYuEKn2KHPvfH1m2QtFlAXFLKdseqt0XwBM3ELOY7kNM1fglRQ6ZwUQZ5S00A==" - }, - "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 - }, - "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=", - "dev": true - }, - "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-stdin": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-6.0.0.tgz", - "integrity": "sha512-jp4tHawyV7+fkkSKyvjuLZswblUtz+SQKzSWnBbii16BuZksJlU1wuBYXY75r+duh/llF1ur6oNwi+2ZzjKZ7g==", - "dev": true - }, - "get-symbol-description": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.0.tgz", - "integrity": "sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.1.1" - } - }, - "getpass": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", - "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=", - "dev": true, - "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": "sha512-SyHy3T1v2NUXn29OsWdxmK6RwHD+vkj3v8en8AOBZ1wBQ/hCAQ5bAQTD02kW4W9tUp/3Qh6J8r9EvntiyCmOOw==" - }, - "glob": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.0.tgz", - "integrity": "sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==", - "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.23.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.23.0.tgz", - "integrity": "sha512-XAmF0RjlrjY23MA51q3HltdlGxUpXPvg0GioKiD9X6HD28iMjo2dKC8Vqwm7lne4GNr78+RHTfliktR6ZH09wA==", - "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": "13.2.2", - "resolved": "https://registry.npmjs.org/globby/-/globby-13.2.2.tgz", - "integrity": "sha512-Y1zNGV+pzQdh7H39l9zgB4PJqjRNqydvdYCDG4HFXM4XuvSaQQlEc91IU1yALL8gUTDomgBAfz3XJdmUS+oo0w==", - "dev": true, - "requires": { - "dir-glob": "^3.0.1", - "fast-glob": "^3.3.0", - "ignore": "^5.2.4", - "merge2": "^1.4.1", - "slash": "^4.0.0" - } - }, - "gm": { - "version": "1.23.1", - "resolved": "https://registry.npmjs.org/gm/-/gm-1.23.1.tgz", - "integrity": "sha1-Lt7rlYCE0PjqeYjl2ZWxx9/BR3c=", - "requires": { - "array-parallel": "~0.1.3", - "array-series": "~0.1.5", - "cross-spawn": "^4.0.0", - "debug": "^3.1.0" - }, - "dependencies": { - "debug": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", - "requires": { - "ms": "^2.1.1" - } - }, - "ms": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", - "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==" - } - } - }, - "graceful-fs": { - "version": "4.2.10", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", - "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==" - }, - "graphemer": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/graphemer/-/graphemer-1.4.0.tgz", - "integrity": "sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==", - "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 - }, - "har-schema": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz", - "integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=", - "dev": true - }, - "har-validator": { - "version": "5.1.5", - "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.5.tgz", - "integrity": "sha512-nmT2T0lljbxdQZfspsno9hgrG3Uir6Ks5afism62poxqBM6sDnMEuPmzTq8XN0OEwqKLLdh1jQI3qyE66Nzb3w==", - "dev": true, - "requires": { - "ajv": "^6.12.3", - "har-schema": "^2.0.0" - } - }, - "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-bigints": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.1.tgz", - "integrity": "sha512-LSBS2LjbNBTf6287JEbEzvJgftkF5qFkmCo9hDRpAzKhUOlJ+hx8dd4USs00SgsUNwc4617J9ki5YtEClM2ffA==", - "dev": true - }, - "has-color": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/has-color/-/has-color-0.1.7.tgz", - "integrity": "sha1-ZxRKUmDDT8PMpnfQQdr1L+e3iy8=" - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "devOptional": true - }, - "has-symbols": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", - "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==" - }, - "has-tostringtag": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz", - "integrity": "sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==", - "requires": { - "has-symbols": "^1.0.2" - } - }, - "hash-base": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.1.0.tgz", - "integrity": "sha512-1nmYp/rhMDiE7AYkDw+lLwlAzz0AntGIe51F3RfFfEqyQ3feY2eI/NcwC6umIQVOASPMsWJLJScWKSSvzL9IVA==", - "requires": { - "inherits": "^2.0.4", - "readable-stream": "^3.6.0", - "safe-buffer": "^5.2.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" - } - }, - "string_decoder": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", - "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", - "requires": { - "safe-buffer": "~5.2.0" - } - } - } - }, - "hash.js": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.7.tgz", - "integrity": "sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==", - "requires": { - "inherits": "^2.0.3", - "minimalistic-assert": "^1.0.1" - } - }, - "hasha": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/hasha/-/hasha-3.0.0.tgz", - "integrity": "sha1-UqMvq4Vp1BymmmH/GiFPjrfIvTk=", - "dev": true, - "requires": { - "is-stream": "^1.0.1" - } - }, - "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 - }, - "hexoid": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/hexoid/-/hexoid-1.0.0.tgz", - "integrity": "sha512-QFLV0taWQOZtvIRIAdBChesmogZrtuXvVWsFHZTk2SU+anspqZ2vMnoLg7IE1+Uk16N19APic1BuF8bC8c2m5g==" - }, - "hmac-drbg": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz", - "integrity": "sha1-0nRXAQJabHdabFRXk+1QL8DGSaE=", - "requires": { - "hash.js": "^1.0.3", - "minimalistic-assert": "^1.0.0", - "minimalistic-crypto-utils": "^1.0.1" - } - }, - "hooks-fixed": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/hooks-fixed/-/hooks-fixed-2.0.2.tgz", - "integrity": "sha512-YurCM4gQSetcrhwEtpQHhQ4M7Zo7poNGqY4kQGeBS6eZtOcT3tnNs01ThFa0jYBByAiYt1MjMjP/YApG0EnAvQ==" - }, - "hosted-git-info": { - "version": "2.8.9", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz", - "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==", - "dev": true - }, - "html-escaper": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", - "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", - "dev": true - }, - "http-errors": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.8.1.tgz", - "integrity": "sha512-Kpk9Sm7NmI+RHhnj6OIWDI1d6fIoFAtFt9RLaTMRlg/8w49juAStsrBgp0Dp4OdxdVbRIeKhtCUvoi/RuAhO4g==", - "requires": { - "depd": "~1.1.2", - "inherits": "2.0.4", - "setprototypeof": "1.2.0", - "statuses": ">= 1.5.0 < 2", - "toidentifier": "1.0.1" - } - }, - "http-signature": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", - "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=", - "dev": true, - "requires": { - "assert-plus": "^1.0.0", - "jsprim": "^1.2.2", - "sshpk": "^1.7.0" - } - }, - "https-proxy-agent": { - "version": "7.0.2", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.2.tgz", - "integrity": "sha512-NmLNjm6ucYwtcUmL7JQC1ZQ57LmHP4lT15FQ8D61nak1rO6DH+fz5qNK2Ap5UN4ZapYICE3/0KodcLYSPsPbaA==", - "dev": true, - "requires": { - "agent-base": "^7.0.2", - "debug": "4" - }, - "dependencies": { - "debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", - "dev": true, - "requires": { - "ms": "2.1.2" - } - }, - "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 - } - } - }, - "iconv-lite": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.5.2.tgz", - "integrity": "sha512-kERHXvpSaB4aU3eANwidg79K8FlrN77m8G9V+0vOR3HYaRifrlwMEpT7ZBJqLSEIHnEgJTHcWK82wwLwwKwtag==", - "dev": true, - "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.2.4", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.4.tgz", - "integrity": "sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ==", - "dev": true - }, - "image-size": { - "version": "0.8.3", - "resolved": "https://registry.npmjs.org/image-size/-/image-size-0.8.3.tgz", - "integrity": "sha512-SMtq1AJ+aqHB45c3FsB4ERK0UCiA2d3H1uq8s+8T0Pf8A3W4teyBQyaFaktH6xvZqh+npwlKU7i4fJo0r7TYTg==", - "requires": { - "queue": "6.0.1" - } - }, - "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" - }, - "dependencies": { - "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 - } - } - }, - "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" - } - }, - "inherit": { - "version": "2.2.7", - "resolved": "https://registry.npmjs.org/inherit/-/inherit-2.2.7.tgz", - "integrity": "sha512-dxJmC1j0Q32NFAjvbd6g3lXYLZ49HgzotgbSMwMkoiTXGhC9412Oc24g7A7M9cPPkw/vDsF2cSII+2zJwocUtQ==" - }, - "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.0.0", - "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-8.0.0.tgz", - "integrity": "sha512-ON8pEJPPCdyjxj+cxsYRe6XfCJepTxANdNnTebsTuQgXpRyZRRT9t4dJwjRubgmvn20CLSEnozRUayXyM9VTXA==", - "optional": true, - "requires": { - "ansi-escapes": "^4.2.1", - "chalk": "^4.1.0", - "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", - "run-async": "^2.4.0", - "rxjs": "^6.6.6", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0", - "through": "^2.3.6" - }, - "dependencies": { - "ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "optional": 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==", - "optional": 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==", - "optional": true, - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - } - }, - "strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "optional": true, - "requires": { - "ansi-regex": "^5.0.1" - } - } - } - }, - "internal-slot": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.3.tgz", - "integrity": "sha512-O0DB1JC/sPyZl7cIo78n5dR7eUSwwpYPiXRhTzNxZVAMUuB8vlnRFyLxdrVToks6XPLVnFfbzaVd5WLjhgg+vA==", - "dev": true, - "requires": { - "get-intrinsic": "^1.1.0", - "has": "^1.0.3", - "side-channel": "^1.0.4" - } - }, - "ip": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ip/-/ip-2.0.0.tgz", - "integrity": "sha512-WKa+XuLG1A1R0UWhl2+1XQSi+fZWMsYKffMZTTYsiZaUD8k2yDAj5atimTUD2TZkyCkNEeYE5NhFZmupOGtjYQ==", - "dev": true - }, - "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-arguments": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/is-arguments/-/is-arguments-1.1.1.tgz", - "integrity": "sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" - } - }, - "is-arrayish": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", - "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=", - "dev": true - }, - "is-bigint": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz", - "integrity": "sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==", - "dev": true, - "requires": { - "has-bigints": "^1.0.1" - } - }, - "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-boolean-object": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz", - "integrity": "sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" - } - }, - "is-callable": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.4.tgz", - "integrity": "sha512-nsuwtxZfMX67Oryl9LCQ+upnC0Z0BgpwntpS89m1H/TLF0zNfzfLMV/9Wa/6MZsj0acpEjAO0KF1xT6ZdLl95w==", - "dev": true - }, - "is-core-module": { - "version": "2.8.1", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.8.1.tgz", - "integrity": "sha512-SdNCUs284hr40hFTFP6l0IfZ/RSrMXF3qgoRHd3/79unUTvrFO/JoXwkGm+5J/Oe3E/b5GsnG330uUNgRpu1PA==", - "requires": { - "has": "^1.0.3" - } - }, - "is-date-object": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz", - "integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==", - "dev": true, - "requires": { - "has-tostringtag": "^1.0.0" - } - }, - "is-expression": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/is-expression/-/is-expression-4.0.0.tgz", - "integrity": "sha512-zMIXX63sxzG3XrkHkrAPvm/OVZVSCPNkwMHU8oTX7/U3AL78I0QXCEICXUM13BIa8TYGZ68PiTKfQz3yaTNr4A==", - "requires": { - "acorn": "^7.1.1", - "object-assign": "^4.1.1" - } - }, - "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=", - "dev": true, - "requires": { - "number-is-nan": "^1.0.0" - } - }, - "is-generator-function": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/is-generator-function/-/is-generator-function-1.0.10.tgz", - "integrity": "sha512-jsEjy9l3yiXEQ+PsXdmBwEPcOxaXWLspKdplFUVI9vq1iZgIekeC0L167qeu86czQaxed3q/Uzuw0swL0irL8A==", - "dev": true, - "requires": { - "has-tostringtag": "^1.0.0" - } - }, - "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-map": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/is-map/-/is-map-2.0.2.tgz", - "integrity": "sha512-cOZFQQozTha1f4MxLFzlgKYPTyj26picdZTx82hbc/Xf4K/tZOOXSCkMvU4pKioRXGDLJRn0GM7Upe7kR721yg==", - "dev": true - }, - "is-nan": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/is-nan/-/is-nan-1.3.2.tgz", - "integrity": "sha512-E+zBKpQ2t6MEo1VsonYmluk9NxGrbzpeeLC2xIViuO2EjU2xsXsBPwTr3Ykv9l08UYEVEdWeRZNouaZqF6RN0w==", - "dev": true, - "requires": { - "call-bind": "^1.0.0", - "define-properties": "^1.1.3" - } - }, - "is-negative-zero": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.2.tgz", - "integrity": "sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==", - "dev": true - }, - "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-number-object": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.7.tgz", - "integrity": "sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==", - "dev": true, - "requires": { - "has-tostringtag": "^1.0.0" - } - }, - "is-object": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-object/-/is-object-1.0.2.tgz", - "integrity": "sha512-2rRIahhZr2UWb45fIOuvZGpFtz0TyOZLf32KxBbSoUCeZR495zCKlWUKKUByk3geS2eAs7ZAABt0Y/Rx0GiQGA==", - "dev": true - }, - "is-path-inside": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", - "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==", - "dev": true - }, - "is-promise": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-2.2.2.tgz", - "integrity": "sha512-+lP4/6lKUBfQjZ2pdxThZvLUAafmZb8OAxFb8XXtiQmS35INgr85hdOGoEs124ez1FCnZJt6jau/T+alh58QFQ==" - }, - "is-regex": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz", - "integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==", - "requires": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" - } - }, - "is-set": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/is-set/-/is-set-2.0.2.tgz", - "integrity": "sha512-+2cnTEZeY5z/iXGbLhPrOAaK/Mau5k5eXq9j14CpRTftq0pAJu2MwVRSZhyZWBzx3o6X795Lz6Bpb6R0GKf37g==", - "dev": true - }, - "is-shared-array-buffer": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz", - "integrity": "sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==", - "dev": true, - "requires": { - "call-bind": "^1.0.2" - } - }, - "is-stream": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", - "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=", - "dev": true - }, - "is-string": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz", - "integrity": "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==", - "dev": true, - "requires": { - "has-tostringtag": "^1.0.0" - } - }, - "is-symbol": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz", - "integrity": "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==", - "dev": true, - "requires": { - "has-symbols": "^1.0.2" - } - }, - "is-typed-array": { - "version": "1.1.8", - "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.8.tgz", - "integrity": "sha512-HqH41TNZq2fgtGT8WHVFVJhBVGuY3AnP3Q36K8JKXUxSxRgk/d+7NjmwG2vo2mYmXK8UYZKu0qH8bVP5gEisjA==", - "dev": true, - "requires": { - "available-typed-arrays": "^1.0.5", - "call-bind": "^1.0.2", - "es-abstract": "^1.18.5", - "foreach": "^2.0.5", - "has-tostringtag": "^1.0.0" - } - }, - "is-typedarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", - "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=", - "dev": true - }, - "is-weakmap": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-weakmap/-/is-weakmap-2.0.1.tgz", - "integrity": "sha512-NSBR4kH5oVj1Uwvv970ruUkCV7O1mzgVFO4/rev2cLRda9Tm9HrL70ZPut4rOHgY0FNrUu9BCbXA2sdQ+x0chA==", - "dev": true - }, - "is-weakref": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.2.tgz", - "integrity": "sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==", - "dev": true, - "requires": { - "call-bind": "^1.0.2" - } - }, - "is-weakset": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/is-weakset/-/is-weakset-2.0.2.tgz", - "integrity": "sha512-t2yVvttHkQktwnNNmBQ98AhENLdPUTDTE21uPqAQ0ARwQfGeQKRVS0NNurH7bTf7RrvcVn1OOge45CnBeHCSmg==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.1.1" - } - }, - "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=" - }, - "isstream": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", - "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=" - }, - "istanbul-lib-coverage": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.5.tgz", - "integrity": "sha512-8aXznuEPCJvGnMSRft4udDRDtb1V3pkQkMMI5LI+6HuQz5oQ4J2UFn1H82raA3qJtyOLkkwVqICBQkjnGtn5mA==", - "dev": true - }, - "istanbul-lib-hook": { - "version": "2.0.7", - "resolved": "https://registry.npmjs.org/istanbul-lib-hook/-/istanbul-lib-hook-2.0.7.tgz", - "integrity": "sha512-vrRztU9VRRFDyC+aklfLoeXyNdTfga2EI3udDGn4cZ6fpSXpHLV9X6CHvfoMCPtggg8zvDDmC4b9xfu0z6/llA==", - "dev": true, - "requires": { - "append-transform": "^1.0.0" - } - }, - "istanbul-lib-instrument": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-3.3.0.tgz", - "integrity": "sha512-5nnIN4vo5xQZHdXno/YDXJ0G+I3dAm4XgzfSVTPLQpj/zAV2dV6Juy0yaf10/zrJOJeHoN3fraFe+XRq2bFVZA==", - "dev": true, - "requires": { - "@babel/generator": "^7.4.0", - "@babel/parser": "^7.4.3", - "@babel/template": "^7.4.0", - "@babel/traverse": "^7.4.3", - "@babel/types": "^7.4.0", - "istanbul-lib-coverage": "^2.0.5", - "semver": "^6.0.0" - }, - "dependencies": { - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - } - } - }, - "istanbul-lib-report": { - "version": "2.0.8", - "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-2.0.8.tgz", - "integrity": "sha512-fHBeG573EIihhAblwgxrSenp0Dby6tJMFR/HvlerBsrCTD5bkUuoNtn3gVh29ZCS824cGGBPn7Sg7cNk+2xUsQ==", - "dev": true, - "requires": { - "istanbul-lib-coverage": "^2.0.5", - "make-dir": "^2.1.0", - "supports-color": "^6.1.0" - }, - "dependencies": { - "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": "6.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", - "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "istanbul-lib-source-maps": { - "version": "3.0.6", - "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-3.0.6.tgz", - "integrity": "sha512-R47KzMtDJH6X4/YW9XTx+jrLnZnscW4VpNN+1PViSYTejLVPWv7oov+Duf8YQSPyVRUvueQqz1TcsC6mooZTXw==", - "dev": true, - "requires": { - "debug": "^4.1.1", - "istanbul-lib-coverage": "^2.0.5", - "make-dir": "^2.1.0", - "rimraf": "^2.6.3", - "source-map": "^0.6.1" - }, - "dependencies": { - "debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", - "dev": true, - "requires": { - "ms": "2.1.2" - } - }, - "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 - }, - "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" - } - } - } - }, - "istanbul-reports": { - "version": "2.2.7", - "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-2.2.7.tgz", - "integrity": "sha512-uu1F/L1o5Y6LzPVSVZXNOoD/KXpJue9aeLRd0sM9uMXfZvzomB0WxVamWb5ue8kA2vVWEmW7EG+A5n3f1kqHKg==", - "dev": true, - "requires": { - "html-escaper": "^2.0.0" - } - }, - "jackspeak": { - "version": "2.3.6", - "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-2.3.6.tgz", - "integrity": "sha512-N3yCS/NegsOBokc8GAdM8UcmfsKiSS8cipheD/nivzr700H+nsMOxJjQnvwOcRYVuFkdH0wGUvW2WbXGmrZGbQ==", - "dev": true, - "requires": { - "@isaacs/cliui": "^8.0.2", - "@pkgjs/parseargs": "^0.11.0" - } - }, - "jdataview": { - "version": "2.4.6", - "resolved": "https://registry.npmjs.org/jdataview/-/jdataview-2.4.6.tgz", - "integrity": "sha1-Qapcdfl5TxFgWIPSm9qvCZizVSs=" - }, - "js-stringify": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/js-stringify/-/js-stringify-1.0.2.tgz", - "integrity": "sha512-rtS5ATOo2Q5k1G+DADISilDA6lv79zIiwFd6CcjuIxGKLFm5C+RLImRscVap9k55i+MOZwgliw+NejvkLuGD5g==" - }, - "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.4.6", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.4.6.tgz", - "integrity": "sha1-a+GyP2JJ9T0pM3D9TRqqY84bTrA=", - "requires": { - "argparse": "^1.0.2", - "esprima": "^2.6.0", - "inherit": "^2.2.2" - } - }, - "jsbn": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", - "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=", - "dev": true - }, - "jsesc": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", - "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", - "dev": true - }, - "json-buffer": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz", - "integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==", - "dev": true - }, - "json-parse-better-errors": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz", - "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==", - "dev": true - }, - "json-schema": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.4.0.tgz", - "integrity": "sha512-es94M3nTIfsEPisRafak+HDLfHXnKBhV3vU5eqPcS3flIWqcxJWgXHXiey3YrpaNsanY5ei1VoYEbOzijuq9BA==", - "dev": true - }, - "json-schema-ref-parser": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/json-schema-ref-parser/-/json-schema-ref-parser-6.1.0.tgz", - "integrity": "sha512-pXe9H1m6IgIpXmE5JSb8epilNTGsmTb2iPohAXpOdhqGFbQjNeHHsZxU+C8w6T81GZxSPFLeUoqDJmzxx5IGuw==", - "dev": true, - "requires": { - "call-me-maybe": "^1.0.1", - "js-yaml": "^3.12.1", - "ono": "^4.0.11" - }, - "dependencies": { - "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 - }, - "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 - }, - "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=", - "dev": true - }, - "json2csv": { - "version": "4.5.1", - "resolved": "https://registry.npmjs.org/json2csv/-/json2csv-4.5.1.tgz", - "integrity": "sha512-o90Xa1ziGk3i7AJEO79Jac4+7SEUk58/DxS5mDPW6GF7poX0y7Y0pm1FbWrkz9VzKE4MpUW9aKBOCpJ0U1Ua8A==", - "requires": { - "commander": "^2.15.1", - "jsonparse": "^1.3.1", - "lodash.get": "^4.4.2" - }, - "dependencies": { - "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==" - } - } - }, - "jsonfile": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", - "integrity": "sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss=", - "requires": { - "graceful-fs": "^4.1.6" - } - }, - "jsonparse": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/jsonparse/-/jsonparse-1.3.1.tgz", - "integrity": "sha1-P02uSpH6wxX3EGL4UhzCOfE2YoA=" - }, - "JSONStream": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/JSONStream/-/JSONStream-1.3.5.tgz", - "integrity": "sha512-E+iruNOY8VV9s4JEbe1aNEm6MiszPRr/UfcHMz0TQh1BXSxHK+ASV1R6W4HpjBhSeS+54PIsAMCBmwD06LLsqQ==", - "requires": { - "jsonparse": "^1.2.0", - "through": ">=2.2.7 <3" - } - }, - "jsonwebtoken": { - "version": "9.0.2", - "resolved": "https://registry.npmjs.org/jsonwebtoken/-/jsonwebtoken-9.0.2.tgz", - "integrity": "sha512-PRp66vJ865SSqOlgqS8hujT5U4AOgMfhrwYIuIhfKaoSCZcirrmASQr8CX7cUg+RMih+hgznrjp99o+W4pJLHQ==", - "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": "^7.5.4" - }, - "dependencies": { - "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" - } - }, - "ms": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", - "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==" - }, - "semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", - "requires": { - "lru-cache": "^6.0.0" - } - } - } - }, - "jsprim": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.2.tgz", - "integrity": "sha512-P2bSOMAc/ciLz6DzgjVlGJP9+BrJWu5UDGK70C2iweC5QBIeFf0ZXRvGjEj2uYgrY2MkAAhsSWHDWlFtEroZWw==", - "dev": true, - "requires": { - "assert-plus": "1.0.0", - "extsprintf": "1.3.0", - "json-schema": "0.4.0", - "verror": "1.10.0" - }, - "dependencies": { - "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 - }, - "extsprintf": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", - "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=", - "dev": true - }, - "verror": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", - "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=", - "dev": true, - "requires": { - "assert-plus": "^1.0.0", - "core-util-is": "1.0.2", - "extsprintf": "^1.2.0" - } - } - } - }, - "jstransformer": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/jstransformer/-/jstransformer-1.0.0.tgz", - "integrity": "sha512-C9YK3Rf8q6VAPDCCU9fnqo3mAfOH6vUGnMcP4AQAYIEpWtfGLpwOTmZ+igtdK5y+VvI2n3CyYSzy4Qh34eq24A==", - "requires": { - "is-promise": "^2.0.0", - "promise": "^7.0.1" - } - }, - "jszip": { - "version": "3.9.1", - "resolved": "https://registry.npmjs.org/jszip/-/jszip-3.9.1.tgz", - "integrity": "sha512-H9A60xPqJ1CuC4Ka6qxzXZeU8aNmgOeP5IFqwJbQQwtu2EUYxota3LdsiZWplF7Wgd9tkAd0mdu36nceSaPuYw==", - "dev": true, - "requires": { - "lie": "~3.3.0", - "pako": "~1.0.2", - "readable-stream": "~2.3.6", - "set-immediate-shim": "~1.0.1" - }, - "dependencies": { - "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 - }, - "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" - } - }, - "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 - }, - "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" - } - } - } - }, - "junk": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/junk/-/junk-4.0.1.tgz", - "integrity": "sha512-Qush0uP+G8ZScpGMZvHUiRfI0YBWuB3gVBYlI0v0vvOJt5FLicco+IkP0a50LqTTQhmts/m6tP5SWE+USyIvcQ==", - "dev": true - }, - "just-extend": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/just-extend/-/just-extend-4.2.1.tgz", - "integrity": "sha512-g3UB796vUFIY90VIv/WX3L2c8CS2MdWUww3CNrYmqza1Fg0DURc2K/O4YrnklBdQarSJ/y8JnJYDGc+1iumQjg==", - "dev": true - }, - "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" - } - }, - "kareem": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/kareem/-/kareem-1.5.0.tgz", - "integrity": "sha1-4+QQHZ3P3imXadr0tNtk2JXRdEg=" - }, - "keyv": { - "version": "4.5.4", - "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz", - "integrity": "sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==", - "dev": true, - "requires": { - "json-buffer": "3.0.1" - } - }, - "lazystream": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/lazystream/-/lazystream-1.0.1.tgz", - "integrity": "sha512-b94GiNHQNy6JNTrt5w6zNyffMrNkXZb3KTkCZJb2V1xaEGCk093vkZ2jk3tpaeP33/OiXC+WvK9AxUebnf5nbw==", - "requires": { - "readable-stream": "^2.0.5" - } - }, - "lcov-parse": { - "version": "0.0.10", - "resolved": "https://registry.npmjs.org/lcov-parse/-/lcov-parse-0.0.10.tgz", - "integrity": "sha1-GwuP+ayceIklBYK3C3ExXZ2m2aM=", - "dev": true - }, - "ldap-filter": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/ldap-filter/-/ldap-filter-0.3.3.tgz", - "integrity": "sha512-/tFkx5WIn4HuO+6w9lsfxq4FN3O+fDZeO9Mek8dCD8rTUpqzRa766BOBO7BcGkn3X86m5+cBm1/2S/Shzz7gMg==", - "requires": { - "assert-plus": "^1.0.0" - } - }, - "ldapauth-fork": { - "version": "5.0.5", - "resolved": "https://registry.npmjs.org/ldapauth-fork/-/ldapauth-fork-5.0.5.tgz", - "integrity": "sha512-LWUk76+V4AOZbny/3HIPQtGPWZyA3SW2tRhsWIBi9imP22WJktKLHV1ofd8Jo/wY7Ve6vAT7FCI5mEn3blZTjw==", - "requires": { - "@types/ldapjs": "^2.2.2", - "bcryptjs": "^2.4.0", - "ldapjs": "^2.2.1", - "lru-cache": "^7.10.1" - }, - "dependencies": { - "lru-cache": { - "version": "7.18.3", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", - "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==" - } - } - }, - "ldapjs": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/ldapjs/-/ldapjs-2.3.3.tgz", - "integrity": "sha512-75QiiLJV/PQqtpH+HGls44dXweviFwQ6SiIK27EqzKQ5jU/7UFrl2E5nLdQ3IYRBzJ/AVFJI66u0MZ0uofKYwg==", - "requires": { - "abstract-logging": "^2.0.0", - "asn1": "^0.2.4", - "assert-plus": "^1.0.0", - "backoff": "^2.5.0", - "ldap-filter": "^0.3.3", - "once": "^1.4.0", - "vasync": "^2.2.0", - "verror": "^1.8.1" - } - }, - "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" - } - }, - "load-json-file": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-4.0.0.tgz", - "integrity": "sha1-L19Fq5HjMhYjT9U62rZo607AmTs=", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "parse-json": "^4.0.0", - "pify": "^3.0.0", - "strip-bom": "^3.0.0" - } - }, - "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.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.flattendeep": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/lodash.flattendeep/-/lodash.flattendeep-4.4.0.tgz", - "integrity": "sha1-+wMJF/hqMTTlvJvsDWngAT3f7bI=", - "dev": true - }, - "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.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.union": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/lodash.union/-/lodash.union-4.6.0.tgz", - "integrity": "sha1-SLtQiECfFvGCFmZkHETdGqrjzYg=" - }, - "log-driver": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/log-driver/-/log-driver-1.2.7.tgz", - "integrity": "sha512-U7KCmLdqsGHBLeWqYlFA0V0Sl6P08EE1ZrmA9cxjUE0WVqT9qnyVDPz1kzpFEP0jdJuFnasWIfSd7fsaNXkpbg==", - "dev": true - }, - "log-symbols": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-3.0.0.tgz", - "integrity": "sha512-dSkNGuI7iG3mfvDzUuYZyvk5dD9ocYCYzNU6CYDE6+Xqd+gwme6Z00NS3dUh8mq/73HaEtT7m6W+yUPtU6BZnQ==", - "dev": true, - "requires": { - "chalk": "^2.4.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 - }, - "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" - } - } - } - }, - "lolex": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/lolex/-/lolex-4.2.0.tgz", - "integrity": "sha512-gKO5uExCXvSm6zbF562EvM+rd1kQDnB9AZBbiQVzf1ZmdDpxUSvpnAaVOP83N/31mRK8Ml8/VE8DMvsAZQ+7wg==", - "dev": true - }, - "loupe": { - "version": "2.3.4", - "resolved": "https://registry.npmjs.org/loupe/-/loupe-2.3.4.tgz", - "integrity": "sha512-OvKfgCC2Ndby6aSTREl5aCCPTNIzlDfQZvZxNUrBrihDhL3xcrYegTblhmEiCrg2kKQz4XsFIaemE5BF4ybSaQ==", - "dev": true, - "requires": { - "get-func-name": "^2.0.0" - } - }, - "lru-cache": { - "version": "4.1.5", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz", - "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==", - "requires": { - "pseudomap": "^1.0.2", - "yallist": "^2.1.2" - }, - "dependencies": { - "yallist": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", - "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=" - } - } - }, - "make-dir": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", - "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", - "dev": true, - "requires": { - "pify": "^4.0.1", - "semver": "^5.6.0" - }, - "dependencies": { - "pify": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", - "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", - "dev": true - } - } - }, - "map-stream": { - "version": "0.0.7", - "resolved": "https://registry.npmjs.org/map-stream/-/map-stream-0.0.7.tgz", - "integrity": "sha1-ih8HiW2CsQkmvTdEokIACfiJdKg=" - }, - "md5.js": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.5.tgz", - "integrity": "sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==", - "requires": { - "hash-base": "^3.0.0", - "inherits": "^2.0.1", - "safe-buffer": "^5.1.2" - } - }, - "media-typer": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", - "integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=" - }, - "memory-pager": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/memory-pager/-/memory-pager-1.5.0.tgz", - "integrity": "sha512-ZS4Bp4r/Zoeq6+NLJpP+0Zzm0pR8whtGPf1XExKLJBAczGMnSi3It14OiNCStjQjM6NU1okjQGSxgEZN8eBYKg==", - "dev": true, - "optional": true - }, - "memorystream": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/memorystream/-/memorystream-0.3.1.tgz", - "integrity": "sha1-htcJCzDORV1j+64S3aUaR93K+bI=", - "dev": true - }, - "meow": { - "version": "12.1.1", - "resolved": "https://registry.npmjs.org/meow/-/meow-12.1.1.tgz", - "integrity": "sha512-BhXM0Au22RwUneMPwSCnyhTOizdWoIEPU9sp0Aqa1PnDMR5Wv2FGXYDjuzJEIX+Eo2Rb8xuYe5jrnm5QowQFkw==", - "dev": true - }, - "merge-descriptors": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", - "integrity": "sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E=" - }, - "merge-source-map": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/merge-source-map/-/merge-source-map-1.1.0.tgz", - "integrity": "sha512-Qkcp7P2ygktpMPh2mCQZaf3jhN6D3Z/qVZHSdWvQ+2Ef5HgRAPBO57A77+ENm0CPx2+1Ce/MYKi3ymqdfuqibw==", - "dev": true, - "requires": { - "source-map": "^0.6.1" - } - }, - "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=" - }, - "mgrs": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/mgrs/-/mgrs-1.0.0.tgz", - "integrity": "sha1-+5FYjnjJACVnI5XLQLJffNatGCk=" - }, - "micromatch": { - "version": "4.0.5", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", - "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", - "dev": true, - "requires": { - "braces": "^3.0.2", - "picomatch": "^2.3.1" - } - }, - "mime": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", - "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==" - }, - "mime-db": { - "version": "1.52.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", - "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==" - }, - "mime-types": { - "version": "2.1.35", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", - "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", - "requires": { - "mime-db": "1.52.0" - } - }, - "mimic-fn": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", - "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", - "optional": true - }, - "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==" - }, - "minimalistic-assert": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", - "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==" - }, - "minimalistic-crypto-utils": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz", - "integrity": "sha1-9sAMHAsIIkblxNmd+4x8CDsrWCo=" - }, - "minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "requires": { - "brace-expansion": "^1.1.7" - } - }, - "minimist": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", - "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==" - }, - "minipass": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz", - "integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==", - "dev": true - }, - "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": "7.2.0", - "resolved": "https://registry.npmjs.org/mocha/-/mocha-7.2.0.tgz", - "integrity": "sha512-O9CIypScywTVpNaRrCAgoUnJgozpIofjKUYmJhiCIJMiuYnLI6otcb1/kpW9/n/tJODHGZ7i8aLQoDVsMtOKQQ==", - "dev": true, - "requires": { - "ansi-colors": "3.2.3", - "browser-stdout": "1.3.1", - "chokidar": "3.3.0", - "debug": "3.2.6", - "diff": "3.5.0", - "escape-string-regexp": "1.0.5", - "find-up": "3.0.0", - "glob": "7.1.3", - "growl": "1.10.5", - "he": "1.2.0", - "js-yaml": "3.13.1", - "log-symbols": "3.0.0", - "minimatch": "3.0.4", - "mkdirp": "0.5.5", - "ms": "2.1.1", - "node-environment-flags": "1.0.6", - "object.assign": "4.1.0", - "strip-json-comments": "2.0.1", - "supports-color": "6.0.0", - "which": "1.3.1", - "wide-align": "1.1.3", - "yargs": "13.3.2", - "yargs-parser": "13.1.2", - "yargs-unparser": "1.6.0" - }, - "dependencies": { - "ansi-regex": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.1.tgz", - "integrity": "sha512-ILlv4k/3f6vfQ4OoP2AGvirOktlQ98ZEL1k9FaQjxa3L1abBgbuTDAdPOpvbGncC0BTVQrl+OM8xZGK6tWXt7g==", - "dev": true - }, - "camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true - }, - "cliui": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-5.0.0.tgz", - "integrity": "sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA==", - "dev": true, - "requires": { - "string-width": "^3.1.0", - "strip-ansi": "^5.2.0", - "wrap-ansi": "^5.1.0" - }, - "dependencies": { - "string-width": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", - "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", - "dev": true, - "requires": { - "emoji-regex": "^7.0.1", - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^5.1.0" - } - } - } - }, - "debug": { - "version": "3.2.6", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", - "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - }, - "emoji-regex": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", - "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", - "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 - }, - "find-up": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", - "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", - "dev": true, - "requires": { - "locate-path": "^3.0.0" - } - }, - "glob": { - "version": "7.1.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.3.tgz", - "integrity": "sha512-vcfuiIxogLV4DlGBHIUOwI0IbrJ8HWPc4MU7HzviGeNho/UJDfi6B5p3sHeWIQ0KGIU0Jpxi5ZHxemQfLkkAwQ==", - "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" - } - }, - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", - "dev": true - }, - "js-yaml": { - "version": "3.13.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.13.1.tgz", - "integrity": "sha512-YfbcO7jXDdyj0DGxYVSlSeQNHbD7XPWvrVWeVUujrQEoZzWJIRrCPoyk6kL6IAjAG2IolMK4T0hNUe0HOUs5Jw==", - "dev": true, - "requires": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" - } - }, - "locate-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", - "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", - "dev": true, - "requires": { - "p-locate": "^3.0.0", - "path-exists": "^3.0.0" - } - }, - "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" - } - }, - "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" - } - }, - "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==", - "dev": true - }, - "object.assign": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.0.tgz", - "integrity": "sha512-exHJeq6kBKj58mqGyTQ9DFvrZC/eR6OwxzoM9YRoGBqrXYonaFyGiFMuc9VZrXf7DarreEwMpurG3dd+CNyW5w==", - "dev": true, - "requires": { - "define-properties": "^1.1.2", - "function-bind": "^1.1.1", - "has-symbols": "^1.0.0", - "object-keys": "^1.0.11" - } - }, - "p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", - "dev": true, - "requires": { - "p-try": "^2.0.0" - } - }, - "p-locate": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", - "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", - "dev": true, - "requires": { - "p-limit": "^2.0.0" - } - }, - "strip-ansi": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", - "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", - "dev": true, - "requires": { - "ansi-regex": "^4.1.0" - } - }, - "supports-color": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.0.0.tgz", - "integrity": "sha512-on9Kwidc1IUQo+bQdhi8+Tijpo0e1SS6RoGo2guUwn5vdaxw8RXOF9Vb2ws+ihWOmh4JnCJOvaziZWP1VABaLg==", - "dev": true, - "requires": { - "has-flag": "^3.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==", - "dev": true, - "requires": { - "string-width": "^1.0.2 || 2" - } - }, - "yargs": { - "version": "13.3.2", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-13.3.2.tgz", - "integrity": "sha512-AX3Zw5iPruN5ie6xGRIDgqkT+ZhnRlZMLMHAs8tg7nRruy2Nb+i5o9bwghAogtM08q1dpr2LVoS8KSTMYpWXUw==", - "dev": true, - "requires": { - "cliui": "^5.0.0", - "find-up": "^3.0.0", - "get-caller-file": "^2.0.1", - "require-directory": "^2.1.1", - "require-main-filename": "^2.0.0", - "set-blocking": "^2.0.0", - "string-width": "^3.0.0", - "which-module": "^2.0.0", - "y18n": "^4.0.0", - "yargs-parser": "^13.1.2" - }, - "dependencies": { - "string-width": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", - "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", - "dev": true, - "requires": { - "emoji-regex": "^7.0.1", - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^5.1.0" - } - } - } - }, - "yargs-parser": { - "version": "13.1.2", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.2.tgz", - "integrity": "sha512-3lbsNRf/j+A4QuSZfDRA7HRSfWrzO0YjqTJd5kjAq37Zep1CEgaYmrH9Q3GwPiB9cHyd1Y1UwggGhJGoxipbzg==", - "dev": true, - "requires": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" - } - } - } - }, - "mock-fs": { - "version": "4.13.0", - "resolved": "https://registry.npmjs.org/mock-fs/-/mock-fs-4.13.0.tgz", - "integrity": "sha512-DD0vOdofJdoaRNtnWcrXe6RQbpHkPPmtqGq14uRX0F8ZKJ5nv89CVTYl/BZdppDxBDaV0hl75htg3abpEWlPZA==", - "dev": true - }, - "module-not-found-error": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/module-not-found-error/-/module-not-found-error-1.0.1.tgz", - "integrity": "sha1-z4tP9PKWQGdNbN0CsOO8UjwrvcA=", - "dev": true - }, - "moment": { - "version": "2.29.4", - "resolved": "https://registry.npmjs.org/moment/-/moment-2.29.4.tgz", - "integrity": "sha512-5LC9SOxjSc2HF6vO2CyuTDNivEdoz2IvyJJGj6X8DJ0eFyfszE0QiEd+iXmBvUP3WHxSjFH/vIsA0EN00cgr8w==" - }, - "mongodb": { - "version": "2.2.36", - "resolved": "https://registry.npmjs.org/mongodb/-/mongodb-2.2.36.tgz", - "integrity": "sha512-P2SBLQ8Z0PVx71ngoXwo12+FiSfbNfGOClAao03/bant5DgLNkOPAck5IaJcEk4gKlQhDEURzfR3xuBG1/B+IA==", - "requires": { - "es6-promise": "3.2.1", - "mongodb-core": "2.1.20", - "readable-stream": "2.2.7" - }, - "dependencies": { - "readable-stream": { - "version": "2.2.7", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.2.7.tgz", - "integrity": "sha1-BwV6y+JGeyIELTb5jFrVBwVOlbE=", - "requires": { - "buffer-shims": "~1.0.0", - "core-util-is": "~1.0.0", - "inherits": "~2.0.1", - "isarray": "~1.0.0", - "process-nextick-args": "~1.0.6", - "string_decoder": "~1.0.0", - "util-deprecate": "~1.0.1" - } - }, - "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==" - }, - "string_decoder": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.0.3.tgz", - "integrity": "sha512-4AH6Z5fzNNBcH+6XDMfA/BTt87skxqJlO0lAh3Dker5zThcAxG6mKz+iGu308UKoPPQ8Dcqx/4JhujzltRa+hQ==", - "requires": { - "safe-buffer": "~5.1.0" - } - } - } - }, - "mongodb-connection-string-url": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/mongodb-connection-string-url/-/mongodb-connection-string-url-2.6.0.tgz", - "integrity": "sha512-WvTZlI9ab0QYtTYnuMLgobULWhokRjtC7db9LtcVfJ+Hsnyr5eo6ZtNAt3Ly24XZScGMelOcGtm7lSn0332tPQ==", - "dev": true, - "requires": { - "@types/whatwg-url": "^8.2.1", - "whatwg-url": "^11.0.0" - }, - "dependencies": { - "tr46": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-3.0.0.tgz", - "integrity": "sha512-l7FvfAHlcmulp8kr+flpQZmVwtu7nfRV7NZujtN0OqES8EL4O4e0qqzL0DC5gAvx/ZC/9lk6rhcUwYvkBnBnYA==", - "dev": true, - "requires": { - "punycode": "^2.1.1" - } - }, - "webidl-conversions": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-7.0.0.tgz", - "integrity": "sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==", - "dev": true - }, - "whatwg-url": { - "version": "11.0.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-11.0.0.tgz", - "integrity": "sha512-RKT8HExMpoYx4igMiVMY83lN6UeITKJlBQ+vR/8ZJ8OCdSiN3RwCq+9gH0+Xzj0+5IrM6i4j/6LuvzbZIQgEcQ==", - "dev": true, - "requires": { - "tr46": "^3.0.0", - "webidl-conversions": "^7.0.0" - } - } - } - }, - "mongodb-core": { - "version": "2.1.20", - "resolved": "https://registry.npmjs.org/mongodb-core/-/mongodb-core-2.1.20.tgz", - "integrity": "sha512-IN57CX5/Q1bhDq6ShAR6gIv4koFsZP7L8WOK1S0lR0pVDQaScffSMV5jxubLsmZ7J+UdqmykKw4r9hG3XQEGgQ==", - "requires": { - "bson": "~1.0.4", - "require_optional": "~1.0.0" - } - }, - "mongodb-memory-server": { - "version": "9.1.6", - "resolved": "https://registry.npmjs.org/mongodb-memory-server/-/mongodb-memory-server-9.1.6.tgz", - "integrity": "sha512-gzcpgGYlPhuKmria37W+bvYy6W+OkX2UVG7MoP41OWFvQv2Hn7A+fLXkV+lsMmhog1lMQprdV6AR+gixgheLaw==", - "dev": true, - "requires": { - "mongodb-memory-server-core": "9.1.6", - "tslib": "^2.6.2" - }, - "dependencies": { - "tslib": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz", - "integrity": "sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==", - "dev": true - } - } - }, - "mongodb-memory-server-core": { - "version": "9.1.6", - "resolved": "https://registry.npmjs.org/mongodb-memory-server-core/-/mongodb-memory-server-core-9.1.6.tgz", - "integrity": "sha512-3H/dq5II+XcSbK80hicMw4zFlDxcpjt4oWJq76RlOVuLoaf3AFqVheR6Vqx9ymlIqER4Jni58FMCIIRbesia1A==", - "dev": true, - "requires": { - "async-mutex": "^0.4.0", - "camelcase": "^6.3.0", - "debug": "^4.3.4", - "find-cache-dir": "^3.3.2", - "follow-redirects": "^1.15.3", - "https-proxy-agent": "^7.0.2", - "mongodb": "^5.9.1", - "new-find-package-json": "^2.0.0", - "semver": "^7.5.4", - "tar-stream": "^3.0.0", - "tslib": "^2.6.2", - "yauzl": "^2.10.0" - }, - "dependencies": { - "bson": { - "version": "5.5.1", - "resolved": "https://registry.npmjs.org/bson/-/bson-5.5.1.tgz", - "integrity": "sha512-ix0EwukN2EpC0SRWIj/7B5+A6uQMQy6KMREI9qQqvgpkV2frH63T0UDVd1SYedL6dNCmDBYB3QtXi4ISk9YT+g==", - "dev": true - }, - "debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", - "dev": true, - "requires": { - "ms": "2.1.2" - } - }, - "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" - } - }, - "mongodb": { - "version": "5.9.2", - "resolved": "https://registry.npmjs.org/mongodb/-/mongodb-5.9.2.tgz", - "integrity": "sha512-H60HecKO4Bc+7dhOv4sJlgvenK4fQNqqUIlXxZYQNbfEWSALGAwGoyJd/0Qwk4TttFXUOHJ2ZJQe/52ScaUwtQ==", - "dev": true, - "requires": { - "@mongodb-js/saslprep": "^1.1.0", - "bson": "^5.5.0", - "mongodb-connection-string-url": "^2.6.0", - "socks": "^2.7.1" - } - }, - "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 - }, - "semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", - "dev": true, - "requires": { - "lru-cache": "^6.0.0" - } - }, - "tar-stream": { - "version": "3.1.6", - "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-3.1.6.tgz", - "integrity": "sha512-B/UyjYwPpMBv+PaFSWAmtYjwdrlEaZQEhMIBFNC5oEG8lpiW8XjcSdmEaClj28ArfKScKHs2nshz3k2le6crsg==", - "dev": true, - "requires": { - "b4a": "^1.6.4", - "fast-fifo": "^1.2.0", - "streamx": "^2.15.0" - } - }, - "tslib": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz", - "integrity": "sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==", - "dev": true - } - } - }, - "mongodb-migrations": { - "version": "0.8.5", - "resolved": "https://registry.npmjs.org/mongodb-migrations/-/mongodb-migrations-0.8.5.tgz", - "integrity": "sha1-0CfvEPuwHxc3NfALdLoH3PPLsBc=", - "requires": { - "bluebird": "^3.4.1", - "lodash": "^4.13.0", - "mkdirp": "^0.5.1", - "mongodb": "^2.2.1", - "nomnom": "^1.6.2" - }, - "dependencies": { - "mkdirp": { - "version": "0.5.6", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", - "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", - "requires": { - "minimist": "^1.2.6" - } - } - } - }, - "mongoose": { - "version": "4.13.21", - "resolved": "https://registry.npmjs.org/mongoose/-/mongoose-4.13.21.tgz", - "integrity": "sha512-0VZtQu1rSUPwUtbb7zh6CymI0nNkVInOIDbtWNlna070qnUO14On8PpSVSwlx3gwmkKL2OkP4ioCj5YHC6trMg==", - "requires": { - "async": "2.6.0", - "bson": "~1.0.4", - "hooks-fixed": "2.0.2", - "kareem": "1.5.0", - "lodash.get": "4.4.2", - "mongodb": "2.2.34", - "mpath": "0.5.1", - "mpromise": "0.5.5", - "mquery": "2.3.3", - "ms": "2.0.0", - "muri": "1.3.0", - "regexp-clone": "0.0.1", - "sliced": "1.0.1" - }, - "dependencies": { - "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" - } - }, - "mongodb": { - "version": "2.2.34", - "resolved": "https://registry.npmjs.org/mongodb/-/mongodb-2.2.34.tgz", - "integrity": "sha1-o09Zu+thdUrsQy3nLD/iFSakTBo=", - "requires": { - "es6-promise": "3.2.1", - "mongodb-core": "2.1.18", - "readable-stream": "2.2.7" - } - }, - "mongodb-core": { - "version": "2.1.18", - "resolved": "https://registry.npmjs.org/mongodb-core/-/mongodb-core-2.1.18.tgz", - "integrity": "sha1-TEYTm986HwMt7ZHbSfOO7AFlkFA=", - "requires": { - "bson": "~1.0.4", - "require_optional": "~1.0.0" - } - }, - "readable-stream": { - "version": "2.2.7", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.2.7.tgz", - "integrity": "sha1-BwV6y+JGeyIELTb5jFrVBwVOlbE=", - "requires": { - "buffer-shims": "~1.0.0", - "core-util-is": "~1.0.0", - "inherits": "~2.0.1", - "isarray": "~1.0.0", - "process-nextick-args": "~1.0.6", - "string_decoder": "~1.0.0", - "util-deprecate": "~1.0.1" - } - }, - "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==" - }, - "string_decoder": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.0.3.tgz", - "integrity": "sha512-4AH6Z5fzNNBcH+6XDMfA/BTt87skxqJlO0lAh3Dker5zThcAxG6mKz+iGu308UKoPPQ8Dcqx/4JhujzltRa+hQ==", - "requires": { - "safe-buffer": "~5.1.0" - } - } - } - }, - "mongoose-beautiful-unique-validation": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/mongoose-beautiful-unique-validation/-/mongoose-beautiful-unique-validation-7.1.1.tgz", - "integrity": "sha512-fprzp8nY9Qjg0+RZFMl7gVmbINRt2H53fpqyjJWwPO7nxJ9RZZB/Lo3y+mXaMP4nNMOeoJb2v3dNou6h+iLh8w==", - "requires": {} - }, - "mpath": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/mpath/-/mpath-0.5.1.tgz", - "integrity": "sha512-H8OVQ+QEz82sch4wbODFOz+3YQ61FYz/z3eJ5pIdbMEaUzDqA268Wd+Vt4Paw9TJfvDgVKaayC0gBzMIw2jhsg==" - }, - "mpromise": { - "version": "0.5.5", - "resolved": "https://registry.npmjs.org/mpromise/-/mpromise-0.5.5.tgz", - "integrity": "sha1-9bJCWddjrMIlewoMjG2Gb9UXMuY=" - }, - "mquery": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/mquery/-/mquery-2.3.3.tgz", - "integrity": "sha512-NC8L14kn+qxJbbJ1gbcEMDxF0sC3sv+1cbRReXXwVvowcwY1y9KoVZFq0ebwARibsadu8lx8nWGvm3V0Pf0ZWQ==", - "requires": { - "bluebird": "3.5.0", - "debug": "2.6.9", - "regexp-clone": "0.0.1", - "sliced": "0.0.5" - }, - "dependencies": { - "bluebird": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.5.0.tgz", - "integrity": "sha1-eRQg1/VR7qKJdFOop3ZT+WYG1nw=" - }, - "sliced": { - "version": "0.0.5", - "resolved": "https://registry.npmjs.org/sliced/-/sliced-0.0.5.tgz", - "integrity": "sha1-XtwETKTrb3gW1Qui/GPiXY/kcH8=" - } - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" - }, - "multer": { - "version": "1.4.5-lts.1", - "resolved": "https://registry.npmjs.org/multer/-/multer-1.4.5-lts.1.tgz", - "integrity": "sha512-ywPWvcDMeH+z9gQq5qYHCCy+ethsk4goepZ45GLD63fOu0YcNecQxi64nDs3qluZB+murG3/D4dJ7+dGctcCQQ==", - "requires": { - "append-field": "^1.0.0", - "busboy": "^1.0.0", - "concat-stream": "^1.5.2", - "mkdirp": "^0.5.4", - "object-assign": "^4.1.1", - "type-is": "^1.6.4", - "xtend": "^4.0.0" - }, - "dependencies": { - "mkdirp": { - "version": "0.5.6", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", - "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", - "requires": { - "minimist": "^1.2.6" - } - } - } - }, - "muri": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/muri/-/muri-1.3.0.tgz", - "integrity": "sha512-FiaFwKl864onHFFUV/a2szAl7X0fxVlSKNdhTf+BM8i8goEgYut8u5P9MqQqIYwvaMxjzVESsoEm/2kfkFH1rg==" - }, - "mute-stream": { - "version": "0.0.8", - "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz", - "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==", - "optional": 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==" - }, - "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.3", - "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", - "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==" - }, - "nested-error-stacks": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/nested-error-stacks/-/nested-error-stacks-2.1.1.tgz", - "integrity": "sha512-9iN1ka/9zmX1ZvLV9ewJYEk9h7RyRRtqdK0woXcqohu8EWIerfPUjYJPg0ULy0UqP7cslmdGc8xKDJcojlKiaw==", - "dev": true - }, - "new-find-package-json": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/new-find-package-json/-/new-find-package-json-2.0.0.tgz", - "integrity": "sha512-lDcBsjBSMlj3LXH2v/FW3txlh2pYTjmbOXPYJD93HI5EwuLzI11tdHSIpUMmfq/IOsldj4Ps8M8flhm+pCK4Ew==", - "dev": true, - "requires": { - "debug": "^4.3.4" - }, - "dependencies": { - "debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", - "dev": true, - "requires": { - "ms": "2.1.2" - } - }, - "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 - } - } - }, - "nice-try": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz", - "integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==", - "dev": true - }, - "nise": { - "version": "1.5.3", - "resolved": "https://registry.npmjs.org/nise/-/nise-1.5.3.tgz", - "integrity": "sha512-Ymbac/94xeIrMf59REBPOv0thr+CJVFMhrlAkW/gjCIE58BGQdCj0x7KRCb3yz+Ga2Rz3E9XXSvUyyxqqhjQAQ==", - "dev": true, - "requires": { - "@sinonjs/formatio": "^3.2.1", - "@sinonjs/text-encoding": "^0.7.1", - "just-extend": "^4.0.2", - "lolex": "^5.0.1", - "path-to-regexp": "^1.7.0" - }, - "dependencies": { - "isarray": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", - "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=", - "dev": true - }, - "lolex": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/lolex/-/lolex-5.1.2.tgz", - "integrity": "sha512-h4hmjAvHTmd+25JSwrtTIuwbKdwg5NzZVRMLn9saij4SZaepCrTCxPr35H/3bjwfMJtN+t3CX8672UIkglz28A==", - "dev": true, - "requires": { - "@sinonjs/commons": "^1.7.0" - } - }, - "path-to-regexp": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-1.8.0.tgz", - "integrity": "sha512-n43JRhlUKUAlibEJhPeir1ncUID16QnEjNpwzNdO3Lm4ywrBpBZ5oLD0I6br9evr1Y9JTqwRtAh7JLoOzAQdVA==", - "dev": true, - "requires": { - "isarray": "0.0.1" - } - } - } - }, - "nock": { - "version": "11.9.1", - "resolved": "https://registry.npmjs.org/nock/-/nock-11.9.1.tgz", - "integrity": "sha512-U5wPctaY4/ar2JJ5Jg4wJxlbBfayxgKbiAeGh+a1kk6Pwnc2ZEuKviLyDSG6t0uXl56q7AALIxoM6FJrBSsVXA==", - "dev": true, - "requires": { - "debug": "^4.1.0", - "json-stringify-safe": "^5.0.1", - "lodash": "^4.17.13", - "mkdirp": "^0.5.0", - "propagate": "^2.0.0" - }, - "dependencies": { - "debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", - "dev": true, - "requires": { - "ms": "2.1.2" - } - }, - "mkdirp": { - "version": "0.5.6", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", - "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", - "dev": true, - "requires": { - "minimist": "^1.2.6" - } - }, - "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 - } - } - }, - "node-abi": { - "version": "3.47.0", - "resolved": "https://registry.npmjs.org/node-abi/-/node-abi-3.47.0.tgz", - "integrity": "sha512-2s6B2CWZM//kPgwnuI0KrYwNjfdByE25zvAaEpq9IH4zcNsarH8Ihu/UuX6XMPEogDAxkuUFeZn60pXNHAqn3A==", - "requires": { - "semver": "^7.3.5" - }, - "dependencies": { - "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" - } - }, - "semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", - "requires": { - "lru-cache": "^6.0.0" - } - } - } - }, - "node-environment-flags": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/node-environment-flags/-/node-environment-flags-1.0.6.tgz", - "integrity": "sha512-5Evy2epuL+6TM0lCQGpFIj6KwiEsGh1SrHUhTbNX+sLbBtjidPZFAnVK9y5yU1+h//RitLbRHTIMyxQPtxMdHw==", + "node_modules/nyc/node_modules/strip-ansi": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", + "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", "dev": true, - "requires": { - "object.getownpropertydescriptors": "^2.0.3", - "semver": "^5.7.0" - } - }, - "node-fetch": { - "version": "2.6.7", - "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.7.tgz", - "integrity": "sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==", - "requires": { - "whatwg-url": "^5.0.0" - } - }, - "nomnom": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/nomnom/-/nomnom-1.8.1.tgz", - "integrity": "sha1-IVH3Ikcrp55Qp2/BJbuMjy5Nwqc=", - "requires": { - "chalk": "~0.4.0", - "underscore": "~1.6.0" - }, "dependencies": { - "ansi-styles": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-1.0.0.tgz", - "integrity": "sha1-yxAt8cVvUSPquLZ817mAJ6AnkXg=" - }, - "chalk": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-0.4.0.tgz", - "integrity": "sha1-UZmj3c0MHv4jvAjBsCewYXbgxk8=", - "requires": { - "ansi-styles": "~1.0.0", - "has-color": "~0.1.0", - "strip-ansi": "~0.1.0" - } - }, - "strip-ansi": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-0.1.1.tgz", - "integrity": "sha1-OeipjQRNFQZgq+SmgIrPcLt7yZE=" - }, - "underscore": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.6.0.tgz", - "integrity": "sha1-izixDKze9jM3uLJOT/htRa6lKag=" - } + "ansi-regex": "^4.1.0" + }, + "engines": { + "node": ">=6" } }, - "normalize-package-data": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", - "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", + "node_modules/nyc/node_modules/uuid": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", + "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==", + "deprecated": "Please upgrade to version 7 or higher. Older versions may use Math.random() in certain circumstances, which is known to be problematic. See https://v8.dev/blog/math-random for details.", "dev": true, - "requires": { - "hosted-git-info": "^2.1.4", - "resolve": "^1.10.0", - "semver": "2 || 3 || 4 || 5", - "validate-npm-package-license": "^3.0.1" + "bin": { + "uuid": "bin/uuid" } }, - "normalize-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", - "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==" - }, - "npm-run-all": { - "version": "4.1.5", - "resolved": "https://registry.npmjs.org/npm-run-all/-/npm-run-all-4.1.5.tgz", - "integrity": "sha512-Oo82gJDAVcaMdi3nuoKFavkIHBRVqQ1qvMb+9LHk/cF4P6B2m8aP04hGf7oL6wZ9BuGwX1onlLhpuoofSyoQDQ==", + "node_modules/nyc/node_modules/wrap-ansi": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-5.1.0.tgz", + "integrity": "sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q==", "dev": true, - "requires": { - "ansi-styles": "^3.2.1", - "chalk": "^2.4.1", - "cross-spawn": "^6.0.5", - "memorystream": "^0.3.1", - "minimatch": "^3.0.4", - "pidtree": "^0.3.0", - "read-pkg": "^3.0.0", - "shell-quote": "^1.6.1", - "string.prototype.padend": "^3.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 - }, - "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" - } - }, - "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" - } - } + "ansi-styles": "^3.2.0", + "string-width": "^3.0.0", + "strip-ansi": "^5.0.0" + }, + "engines": { + "node": ">=6" } }, - "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=", + "node_modules/nyc/node_modules/y18n": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz", + "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==", "dev": true }, - "nyc": { - "version": "14.1.1", - "resolved": "https://registry.npmjs.org/nyc/-/nyc-14.1.1.tgz", - "integrity": "sha512-OI0vm6ZGUnoGZv/tLdZ2esSVzDwUC88SNs+6JoSOMVxA+gKMB8Tk7jBwgemLx4O40lhhvZCVw1C+OYLOBOPXWw==", + "node_modules/nyc/node_modules/yargs": { + "version": "13.3.2", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-13.3.2.tgz", + "integrity": "sha512-AX3Zw5iPruN5ie6xGRIDgqkT+ZhnRlZMLMHAs8tg7nRruy2Nb+i5o9bwghAogtM08q1dpr2LVoS8KSTMYpWXUw==", "dev": true, - "requires": { - "archy": "^1.0.0", - "caching-transform": "^3.0.2", - "convert-source-map": "^1.6.0", - "cp-file": "^6.2.0", - "find-cache-dir": "^2.1.0", + "dependencies": { + "cliui": "^5.0.0", "find-up": "^3.0.0", - "foreground-child": "^1.5.6", - "glob": "^7.1.3", - "istanbul-lib-coverage": "^2.0.5", - "istanbul-lib-hook": "^2.0.7", - "istanbul-lib-instrument": "^3.3.0", - "istanbul-lib-report": "^2.0.8", - "istanbul-lib-source-maps": "^3.0.6", - "istanbul-reports": "^2.2.4", - "js-yaml": "^3.13.1", - "make-dir": "^2.1.0", - "merge-source-map": "^1.1.0", - "resolve-from": "^4.0.0", - "rimraf": "^2.6.3", - "signal-exit": "^3.0.2", - "spawn-wrap": "^1.4.2", - "test-exclude": "^5.2.3", - "uuid": "^3.3.2", - "yargs": "^13.2.2", - "yargs-parser": "^13.0.0" - }, + "get-caller-file": "^2.0.1", + "require-directory": "^2.1.1", + "require-main-filename": "^2.0.0", + "set-blocking": "^2.0.0", + "string-width": "^3.0.0", + "which-module": "^2.0.0", + "y18n": "^4.0.0", + "yargs-parser": "^13.1.2" + } + }, + "node_modules/nyc/node_modules/yargs-parser": { + "version": "13.1.2", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.2.tgz", + "integrity": "sha512-3lbsNRf/j+A4QuSZfDRA7HRSfWrzO0YjqTJd5kjAq37Zep1CEgaYmrH9Q3GwPiB9cHyd1Y1UwggGhJGoxipbzg==", + "dev": true, "dependencies": { - "ansi-regex": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.1.tgz", - "integrity": "sha512-ILlv4k/3f6vfQ4OoP2AGvirOktlQ98ZEL1k9FaQjxa3L1abBgbuTDAdPOpvbGncC0BTVQrl+OM8xZGK6tWXt7g==", - "dev": true - }, - "camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true - }, - "cliui": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-5.0.0.tgz", - "integrity": "sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA==", - "dev": true, - "requires": { - "string-width": "^3.1.0", - "strip-ansi": "^5.2.0", - "wrap-ansi": "^5.1.0" - } - }, - "emoji-regex": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", - "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", - "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 - }, - "find-cache-dir": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-2.1.0.tgz", - "integrity": "sha512-Tq6PixE0w/VMFfCgbONnkiQIVol/JJL7nRMi20fqzA4NRs9AfeqMGeRdPi3wIhYkxjeBaWh2rxwapn5Tu3IqOQ==", - "dev": true, - "requires": { - "commondir": "^1.0.1", - "make-dir": "^2.0.0", - "pkg-dir": "^3.0.0" - } - }, - "find-up": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", - "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", - "dev": true, - "requires": { - "locate-path": "^3.0.0" - } - }, - "is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", - "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" - } - }, - "locate-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", - "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", - "dev": true, - "requires": { - "p-locate": "^3.0.0", - "path-exists": "^3.0.0" - } - }, - "p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", - "dev": true, - "requires": { - "p-try": "^2.0.0" - } - }, - "p-locate": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", - "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", - "dev": true, - "requires": { - "p-limit": "^2.0.0" - } - }, - "pkg-dir": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-3.0.0.tgz", - "integrity": "sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw==", - "dev": true, - "requires": { - "find-up": "^3.0.0" - } - }, - "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 - }, - "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" - } - }, - "string-width": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", - "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", - "dev": true, - "requires": { - "emoji-regex": "^7.0.1", - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^5.1.0" - } - }, - "strip-ansi": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", - "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", - "dev": true, - "requires": { - "ansi-regex": "^4.1.0" - } - }, - "yargs": { - "version": "13.3.2", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-13.3.2.tgz", - "integrity": "sha512-AX3Zw5iPruN5ie6xGRIDgqkT+ZhnRlZMLMHAs8tg7nRruy2Nb+i5o9bwghAogtM08q1dpr2LVoS8KSTMYpWXUw==", - "dev": true, - "requires": { - "cliui": "^5.0.0", - "find-up": "^3.0.0", - "get-caller-file": "^2.0.1", - "require-directory": "^2.1.1", - "require-main-filename": "^2.0.0", - "set-blocking": "^2.0.0", - "string-width": "^3.0.0", - "which-module": "^2.0.0", - "y18n": "^4.0.0", - "yargs-parser": "^13.1.2" - } - }, - "yargs-parser": { - "version": "13.1.2", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.2.tgz", - "integrity": "sha512-3lbsNRf/j+A4QuSZfDRA7HRSfWrzO0YjqTJd5kjAq37Zep1CEgaYmrH9Q3GwPiB9cHyd1Y1UwggGhJGoxipbzg==", - "dev": true, - "requires": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" - } - } + "camelcase": "^5.0.0", + "decamelize": "^1.2.0" } }, - "oauth": { - "version": "0.9.15", - "resolved": "https://registry.npmjs.org/oauth/-/oauth-0.9.15.tgz", - "integrity": "sha1-vR/vr2hslrdUda7VGWQS/2DPucE=" + "node_modules/oauth": { + "version": "0.10.2", + "resolved": "https://registry.npmjs.org/oauth/-/oauth-0.10.2.tgz", + "integrity": "sha512-JtFnB+8nxDEXgNyniwz573xxbKSOu3R8D40xQKqcjwJ2CDkYqUDI53o6IuzDJBx60Z8VKCm271+t8iFjakrl8Q==", + "license": "MIT" }, - "oauth-sign": { + "node_modules/oauth-sign": { "version": "0.9.0", "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz", "integrity": "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==", - "dev": true + "dev": true, + "engines": { + "node": "*" + } }, - "object-assign": { + "node_modules/object-assign": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" + "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", + "engines": { + "node": ">=0.10.0" + } }, - "object-inspect": { - "version": "1.12.0", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.0.tgz", - "integrity": "sha512-Ho2z80bVIvJloH+YzRmpZVQe87+qASmBUKZDWgx9cu+KDrX2ZDH/3tMy+gXbZETVGs2M8YdxObOh7XAtim9Y0g==" + "node_modules/object-inspect": { + "version": "1.13.4", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.4.tgz", + "integrity": "sha512-W67iLl4J2EXEGTbfeHCffrjDfitvLANg0UlX3wFUUSTx92KXRFegMHUVgSqE+wvhAbi4WqjGg9czysTV2Epbew==", + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, - "object-is": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/object-is/-/object-is-1.1.5.tgz", - "integrity": "sha512-3cyDsyHgtmi7I7DfSSI2LDp6SK2lwvtbg0p0R1e0RvTqF5ceGx+K2dfSjm1bKDMVCFEDAQvy+o8c6a7VujOddw==", + "node_modules/object-is": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/object-is/-/object-is-1.1.6.tgz", + "integrity": "sha512-F8cZ+KfGlSGi09lJT7/Nd6KJZ9ygtvYC0/UYYLI9nmQKLMnydpB9yvbv9K1uSkEu7FU9vYPmVwLg328tX+ot3Q==", "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3" + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "object-keys": { + "node_modules/object-keys": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", - "dev": true - }, - "object.assign": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.2.tgz", - "integrity": "sha512-ixT2L5THXsApyiUPYKmW+2EHpXXe5Ii3M+f4e+aJFAHao5amFRW6J0OO6c/LU8Be47utCx2GL89hxGB6XSmKuQ==", "dev": true, - "requires": { - "call-bind": "^1.0.0", - "define-properties": "^1.1.3", - "has-symbols": "^1.0.1", - "object-keys": "^1.1.1" + "engines": { + "node": ">= 0.4" } }, - "object.getownpropertydescriptors": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.1.3.tgz", - "integrity": "sha512-VdDoCwvJI4QdC6ndjpqFmoL3/+HxffFBbcJzKi5hwLLqqx3mdbedRpfZDdK0SrOSauj8X4GzBvnDZl4vTN7dOw==", + "node_modules/object.assign": { + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.5.tgz", + "integrity": "sha512-byy+U7gp+FVwmyzKPYhW2h5l3crpmGsxl7X2s8y43IgxvG4g3QZ6CffDtsNQy1WsmZpQbO+ybo0AlW7TY6DcBQ==", "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3", - "es-abstract": "^1.19.1" + "dependencies": { + "call-bind": "^1.0.5", + "define-properties": "^1.2.1", + "has-symbols": "^1.0.3", + "object-keys": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "on-finished": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", - "integrity": "sha1-IPEzZIGwg811M3mSoWlxqi2QaUc=", - "requires": { + "node_modules/on-finished": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz", + "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==", + "license": "MIT", + "dependencies": { "ee-first": "1.1.1" + }, + "engines": { + "node": ">= 0.8" } }, - "on-headers": { + "node_modules/on-headers": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/on-headers/-/on-headers-1.0.2.tgz", - "integrity": "sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA==" + "integrity": "sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA==", + "engines": { + "node": ">= 0.8" + } }, - "once": { + "node_modules/once": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", - "requires": { + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", + "dependencies": { "wrappy": "1" } }, - "onetime": { + "node_modules/onetime": { "version": "5.1.2", "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", "optional": true, - "requires": { + "dependencies": { "mimic-fn": "^2.1.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "ono": { - "version": "4.0.11", - "resolved": "https://registry.npmjs.org/ono/-/ono-4.0.11.tgz", - "integrity": "sha512-jQ31cORBFE6td25deYeD80wxKBMj+zBmHTrVxnc6CKhx8gho6ipmWM5zj/oeoqioZ99yqBls9Z/9Nss7J26G2g==", + "node_modules/openapi-enforcer": { + "version": "1.23.0", + "resolved": "https://registry.npmjs.org/openapi-enforcer/-/openapi-enforcer-1.23.0.tgz", + "integrity": "sha512-Ja6kvNQ28jvCHpotNZkB129/dBg2IslMDV56aUSl1Dcs+bcd8lGJTq1NatGYsspGpURXvQnFA/q2K8V3AQoO3Q==", "dev": true, - "requires": { - "format-util": "^1.0.3" + "license": "Apache-2.0", + "dependencies": { + "js-yaml": "^4.1.0", + "randexp": "^0.5.3" } }, - "openapi-enforcer": { - "version": "1.15.5", - "resolved": "https://registry.npmjs.org/openapi-enforcer/-/openapi-enforcer-1.15.5.tgz", - "integrity": "sha512-lHU5Qhj6i/4LinbVqOLpDwukVQkn+MUlS5exa71fQcJ36ona17lgI4csA8+9WSiVr0FeALUCWi87Glsseb1Jzw==", + "node_modules/openapi-enforcer/node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", "dev": true, - "requires": { - "axios": "^0.21.1", - "json-schema-ref-parser": "^6.1.0", - "randexp": "^0.5.3" - }, + "license": "Python-2.0" + }, + "node_modules/openapi-enforcer/node_modules/js-yaml": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", + "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", + "dev": true, + "license": "MIT", "dependencies": { - "axios": { - "version": "0.21.4", - "resolved": "https://registry.npmjs.org/axios/-/axios-0.21.4.tgz", - "integrity": "sha512-ut5vewkiu8jjGBdqpM44XxjuCjq9LAKeHVmoVfHVzy8eHgxxq8SbAVQNovDA8mVi05kP0Ea/n/UzcSHcTJQfNg==", - "dev": true, - "requires": { - "follow-redirects": "^1.14.0" - } - } + "argparse": "^2.0.1" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" } }, - "opentype.js": { + "node_modules/opentype.js": { "version": "0.7.3", "resolved": "https://registry.npmjs.org/opentype.js/-/opentype.js-0.7.3.tgz", - "integrity": "sha1-QPuM4Yv9YOdESO/f5EKDQJg5eqs=", - "requires": { + "integrity": "sha512-Veui5vl2bLonFJ/SjX/WRWJT3SncgiZNnKUyahmXCc2sa1xXW15u3R/3TN5+JFiP7RsjK5ER4HA5eWaEmV9deA==", + "dependencies": { "tiny-inflate": "^1.0.2" + }, + "bin": { + "ot": "bin/ot" } }, - "optionator": { - "version": "0.9.3", - "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.3.tgz", - "integrity": "sha512-JjCoypp+jKn1ttEFExxhetCKeJt9zhAgAve5FXHixTvFDW/5aEktX9bufBKLRRMdU7bNtpLfcGu94B3cdEJgjg==", + "node_modules/optionator": { + "version": "0.9.4", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.4.tgz", + "integrity": "sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==", "dev": true, - "requires": { - "@aashutoshrathi/word-wrap": "^1.2.3", + "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" + "type-check": "^0.4.0", + "word-wrap": "^1.2.5" + }, + "engines": { + "node": ">= 0.8.0" } }, - "os-homedir": { + "node_modules/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 + "integrity": "sha512-B5JU3cabzk8c67mRRd3ECmROafjYMXbuzlwtqdM8IbS8ktlTix8aFGb2bAGKrSRIlnfKwovGUUr72JUPyOb6kQ==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } }, - "os-tmpdir": { + "node_modules/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=", - "optional": true + "integrity": "sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==", + "optional": true, + "engines": { + "node": ">=0.10.0" + } }, - "p-event": { + "node_modules/p-event": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/p-event/-/p-event-5.0.1.tgz", "integrity": "sha512-dd589iCQ7m1L0bmC5NLlVYfy3TbBEsMUfWx9PyAgPeIcFZ/E2yaTZ4Rz4MiBmmJShviiftHVXOqfnfzJ6kyMrQ==", "dev": true, - "requires": { + "dependencies": { "p-timeout": "^5.0.2" }, - "dependencies": { - "p-timeout": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/p-timeout/-/p-timeout-5.1.0.tgz", - "integrity": "sha512-auFDyzzzGZZZdHz3BtET9VEz0SE/uMEAx7uWfGPucfzEwwe/xH0iVeZibQmANYE/hp9T2+UUZT5m+BKyrDp3Ew==", - "dev": true - } + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "p-filter": { + "node_modules/p-filter": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/p-filter/-/p-filter-3.0.0.tgz", "integrity": "sha512-QtoWLjXAW++uTX67HZQz1dbTpqBfiidsB6VtQUC9iR85S120+s0T5sO6s+B5MLzFcZkrEd/DGMmCjR+f2Qpxwg==", "dev": true, - "requires": { + "dependencies": { "p-map": "^5.1.0" }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-filter/node_modules/p-map": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-5.5.0.tgz", + "integrity": "sha512-VFqfGDHlx87K66yZrNdI4YGtD70IRyd+zSvgks6mzHPRNkoKy+9EKP4SFC77/vTTQYmRmti7dvqC+m5jBrBAcg==", + "dev": true, "dependencies": { - "aggregate-error": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-4.0.1.tgz", - "integrity": "sha512-0poP0T7el6Vq3rstR8Mn4V/IQrpBLO6POkUSrN7RhyY+GF/InCFShQzsQ39T25gkHhLgSLByyAz+Kjb+c2L98w==", - "dev": true, - "requires": { - "clean-stack": "^4.0.0", - "indent-string": "^5.0.0" - } - }, - "clean-stack": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-4.2.0.tgz", - "integrity": "sha512-LYv6XPxoyODi36Dp976riBtSY27VmFo+MKqEU9QCCWyTrdEPDog+RWA7xQWHi6Vbp61j5c4cdzzX1NidnwtUWg==", - "dev": true, - "requires": { - "escape-string-regexp": "5.0.0" - } - }, - "escape-string-regexp": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz", - "integrity": "sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==", - "dev": true - }, - "indent-string": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-5.0.0.tgz", - "integrity": "sha512-m6FAo/spmsW2Ab2fU35JTYwtOKa2yAwXSwgjSv1TJzh4Mh7mC3lzAOVLBprb72XsTrgkEIsl7YrFNAiDiRhIGg==", - "dev": true - }, - "p-map": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/p-map/-/p-map-5.5.0.tgz", - "integrity": "sha512-VFqfGDHlx87K66yZrNdI4YGtD70IRyd+zSvgks6mzHPRNkoKy+9EKP4SFC77/vTTQYmRmti7dvqC+m5jBrBAcg==", - "dev": true, - "requires": { - "aggregate-error": "^4.0.0" - } - } + "aggregate-error": "^4.0.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "p-limit": { + "node_modules/p-limit": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", "dev": true, - "requires": { + "dependencies": { "yocto-queue": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "p-locate": { + "node_modules/p-locate": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", "dev": true, - "requires": { + "dependencies": { "p-limit": "^3.0.2" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "p-map": { + "node_modules/p-map": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/p-map/-/p-map-6.0.0.tgz", "integrity": "sha512-T8BatKGY+k5rU+Q/GTYgrEf2r4xRMevAN5mtXc2aPc4rS1j3s+vWTaO2Wag94neXuCAUAs8cxBL9EeB5EA6diw==", - "dev": true + "dev": true, + "engines": { + "node": ">=16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-timeout": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/p-timeout/-/p-timeout-5.1.0.tgz", + "integrity": "sha512-auFDyzzzGZZZdHz3BtET9VEz0SE/uMEAx7uWfGPucfzEwwe/xH0iVeZibQmANYE/hp9T2+UUZT5m+BKyrDp3Ew==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } }, - "p-try": { + "node_modules/p-try": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", - "dev": true + "dev": true, + "engines": { + "node": ">=6" + } }, - "package-hash": { + "node_modules/package-hash": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/package-hash/-/package-hash-3.0.0.tgz", "integrity": "sha512-lOtmukMDVvtkL84rJHI7dpTYq+0rli8N2wlnqUcBuDWCfVhRUfOmnR9SsoHFMLpACvEV60dX7rd0rFaYDZI+FA==", "dev": true, - "requires": { + "dependencies": { "graceful-fs": "^4.1.15", "hasha": "^3.0.0", "lodash.flattendeep": "^4.4.0", "release-zalgo": "^1.0.0" + }, + "engines": { + "node": ">=6" } }, - "pako": { + "node_modules/package-json-from-dist": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/package-json-from-dist/-/package-json-from-dist-1.0.0.tgz", + "integrity": "sha512-dATvCeZN/8wQsGywez1mzHtTlP22H8OEfPrVMLNr4/eGa+ijtLn/6M5f0dY8UKNrC2O9UCU6SSoG3qRKnt7STw==", + "dev": true + }, + "node_modules/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": { + "node_modules/parent-module": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", "dev": true, - "requires": { + "dependencies": { "callsites": "^3.0.0" + }, + "engines": { + "node": ">=6" } }, - "parse-asn1": { - "version": "5.1.6", - "resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.6.tgz", - "integrity": "sha512-RnZRo1EPU6JBnra2vGHj0yhp6ebyjBZpmUCLHWiFhxlzvBCCpAuZ7elsBp1PVAbQN0/04VD/19rfzlBSwLstMw==", - "requires": { - "asn1.js": "^5.2.0", - "browserify-aes": "^1.0.0", - "evp_bytestokey": "^1.0.0", - "pbkdf2": "^3.0.3", - "safe-buffer": "^5.1.1" - }, - "dependencies": { - "asn1.js": { - "version": "5.4.1", - "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-5.4.1.tgz", - "integrity": "sha512-+I//4cYPccV8LdmBLiX8CYvf9Sp3vQsrqu2QNXRcrbiWvcx/UdlFiqUJJzxRQxgsZmvhXhn4cSKeSmoFjVdupA==", - "requires": { - "bn.js": "^4.0.0", - "inherits": "^2.0.1", - "minimalistic-assert": "^1.0.0", - "safer-buffer": "^2.1.0" - } - }, - "bn.js": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", - "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" - } - } - }, - "parse-json": { + "node_modules/parse-json": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", - "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=", + "integrity": "sha512-aOIos8bujGN93/8Ox/jPLh7RwVnPEysynVFE+fQZyg6jKELEHwzgKdLRFHUgXJL6kylijVSBC4BvN9OmsB48Rw==", "dev": true, - "requires": { + "dependencies": { "error-ex": "^1.3.1", "json-parse-better-errors": "^1.0.1" + }, + "engines": { + "node": ">=4" } }, - "parseurl": { + "node_modules/parseurl": { "version": "1.3.3", "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", - "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==" + "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==", + "engines": { + "node": ">= 0.8" + } }, - "passport": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/passport/-/passport-0.6.0.tgz", - "integrity": "sha512-0fe+p3ZnrWRW74fe8+SvCyf4a3Pb2/h7gFkQ8yTJpAO50gDzlfjZUZTO1k5Eg9kUct22OxHLqDZoKUWRHOh9ug==", - "requires": { + "node_modules/passport": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/passport/-/passport-0.7.0.tgz", + "integrity": "sha512-cPLl+qZpSc+ireUvt+IzqbED1cHHkDoVYMo30jbJIdOOjQ1MQYZBPiNvmi8UM6lJuOpTPXJGZQk0DtC4y61MYQ==", + "license": "MIT", + "dependencies": { "passport-strategy": "1.x.x", "pause": "0.0.1", "utils-merge": "^1.0.1" + }, + "engines": { + "node": ">= 0.4.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/jaredhanson" } }, - "passport-anonymous": { + "node_modules/passport-anonymous": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/passport-anonymous/-/passport-anonymous-1.0.1.tgz", - "integrity": "sha1-JB43J07ETft/bK0jS0HEODhrwRc=", - "requires": { + "integrity": "sha512-Mk2dls97nLTzHpsWCYQ54IVGucWaiWSHHr3+IhWYAebg4dRgRQIfyoeYrixoxB2z2z4+EM7p9yjC+a3yMB5z5A==", + "dependencies": { "passport-strategy": "1.x.x" + }, + "engines": { + "node": ">= 0.4.0" } }, - "passport-http-bearer": { + "node_modules/passport-http-bearer": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/passport-http-bearer/-/passport-http-bearer-1.0.1.tgz", - "integrity": "sha1-FHRp6jZp4qhMYWfvmdu3fh8AmKg=", - "requires": { + "integrity": "sha512-SELQM+dOTuMigr9yu8Wo4Fm3ciFfkMq5h/ZQ8ffi4ELgZrX1xh9PlglqZdcUZ1upzJD/whVyt+YWF62s3U6Ipw==", + "dependencies": { "passport-strategy": "1.x.x" + }, + "engines": { + "node": ">= 0.4.0" } }, - "passport-ldapauth": { + "node_modules/passport-ldapauth": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/passport-ldapauth/-/passport-ldapauth-3.0.1.tgz", "integrity": "sha512-TRRx3BHi8GC8MfCT9wmghjde/EGeKjll7zqHRRfGRxXbLcaDce2OftbQrFG7/AWaeFhR6zpZHtBQ/IkINdLVjQ==", - "requires": { + "dependencies": { "ldapauth-fork": "^5.0.1", "passport-strategy": "^1.0.0" + }, + "engines": { + "node": ">=0.8.0" } }, - "passport-local": { + "node_modules/passport-local": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/passport-local/-/passport-local-1.0.0.tgz", - "integrity": "sha1-H+YyaMkudWBmJkN+O5BmYsFbpu4=", - "requires": { + "integrity": "sha512-9wCE6qKznvf9mQYYbgJ3sVOHmCWoUNMVFoZzNoznmISbhnNNPhN9xfY3sLmScHMetEJeoY7CXwfhCe7argfQow==", + "dependencies": { "passport-strategy": "1.x.x" + }, + "engines": { + "node": ">= 0.4.0" } }, - "passport-oauth2": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/passport-oauth2/-/passport-oauth2-1.6.0.tgz", - "integrity": "sha512-emXPLqLcVEcLFR/QvQXZcwLmfK8e9CqvMgmOFJxcNT3okSFMtUbRRKpY20x5euD+01uHsjjCa07DYboEeLXYiw==", - "requires": { + "node_modules/passport-oauth2": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/passport-oauth2/-/passport-oauth2-1.8.0.tgz", + "integrity": "sha512-cjsQbOrXIDE4P8nNb3FQRCCmJJ/utnFKEz2NX209f7KOHPoX18gF7gBzBbLLsj2/je4KrgiwLLGjf0lm9rtTBA==", + "license": "MIT", + "dependencies": { "base64url": "3.x.x", - "oauth": "0.9.x", + "oauth": "0.10.x", "passport-strategy": "1.x.x", "uid2": "0.0.x", "utils-merge": "1.x.x" + }, + "engines": { + "node": ">= 0.4.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/jaredhanson" } }, - "passport-openidconnect": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/passport-openidconnect/-/passport-openidconnect-0.1.1.tgz", - "integrity": "sha512-r0QJiWEzwCg2MeCIXVP5G6YxVRqnEsZ2HpgKRthZ9AiQHJrgGUytXpsdcGF9BRwd3yMrEesb/uG/Yxb86rrY0g==", - "requires": { - "oauth": "0.9.x", + "node_modules/passport-openidconnect": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/passport-openidconnect/-/passport-openidconnect-0.1.2.tgz", + "integrity": "sha512-JX3rTyW+KFZ/E9OF/IpXJPbyLO9vGzcmXB5FgSP2jfL3LGKJPdV7zUE8rWeKeeI/iueQggOeFa3onrCmhxXZTg==", + "license": "MIT", + "dependencies": { + "oauth": "0.10.x", "passport-strategy": "1.x.x" + }, + "engines": { + "node": ">= 0.6.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/jaredhanson" } }, - "passport-strategy": { + "node_modules/passport-strategy": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/passport-strategy/-/passport-strategy-1.0.0.tgz", - "integrity": "sha1-tVOaqPwiWj0a0XlHbd8ja0QPUuQ=" + "integrity": "sha512-CB97UUvDKJde2V0KDWWB3lyf6PC3FaZP7YxZ2G8OAtn9p4HI9j9JLP9qjOGZFvyl8uwNT8qM+hGnz/n16NI7oA==", + "engines": { + "node": ">= 0.4.0" + } }, - "path-exists": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", - "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", - "dev": true + "node_modules/path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "dev": true, + "engines": { + "node": ">=8" + } }, - "path-is-absolute": { + "node_modules/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=" + "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", + "engines": { + "node": ">=0.10.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 + "node_modules/path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "dev": true, + "engines": { + "node": ">=8" + } }, - "path-parse": { + "node_modules/path-parse": { "version": "1.0.7", "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==" }, - "path-scurry": { - "version": "1.10.1", - "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.10.1.tgz", - "integrity": "sha512-MkhCqzzBEpPvxxQ71Md0b1Kk51W01lrYvlMzSUaIzNsODdd7mqhiimSZlr+VegAz5Z6Vzt9Xg2ttE//XBhH3EQ==", + "node_modules/path-scurry": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.11.1.tgz", + "integrity": "sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==", "dev": true, - "requires": { - "lru-cache": "^9.1.1 || ^10.0.0", + "dependencies": { + "lru-cache": "^10.2.0", "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0" }, - "dependencies": { - "lru-cache": { - "version": "10.2.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.2.0.tgz", - "integrity": "sha512-2bIM8x+VAf6JT4bKAljS1qUWgMsqZRPGJS6FSahIMPVvctcNhyVp7AJu7quxOW9jwkryBReKZY5tY5JYv2n/7Q==", - "dev": true - } + "engines": { + "node": ">=16 || 14 >=14.18" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "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=" + "node_modules/path-scurry/node_modules/lru-cache": { + "version": "10.3.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.3.0.tgz", + "integrity": "sha512-CQl19J/g+Hbjbv4Y3mFNNXFEL/5t/KCg8POCuUqd4rMKjGG+j1ybER83hxV58zL+dFI1PTkt3GNFSHRt+d8qEQ==", + "dev": true, + "engines": { + "node": "14 || >=16.14" + } }, - "path-type": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz", - "integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==", + "node_modules/path-to-regexp": { + "version": "0.1.12", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.12.tgz", + "integrity": "sha512-RA1GjUVMnvYFxuqovrEqZoxxW5NUZqbwKtYz/Tt7nXerk0LbLblQmrsgdeOxV5SFHf0UDggjS/bSeOZwt1pmEQ==", + "license": "MIT" + }, + "node_modules/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, - "requires": { - "pify": "^3.0.0" + "engines": { + "node": ">=8" } }, - "pathval": { + "node_modules/pathval": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/pathval/-/pathval-1.1.1.tgz", "integrity": "sha512-Dp6zGqpTdETdR63lehJYPeIOqpiNBNtc7BpWSLrOje7UaIsE5aY92r/AunQA7rsXvet3lrJ3JnZX29UPTKXyKQ==", - "dev": true + "dev": true, + "engines": { + "node": "*" + } }, - "pause": { + "node_modules/pause": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/pause/-/pause-0.0.1.tgz", - "integrity": "sha1-HUCLP9t2kjuVQ9lvtMnf1TXZy10=" + "integrity": "sha512-KG8UEiEVkR3wGEb4m5yZkVCzigAD+cVEJck2CzYZO37ZGJfctvVptVO192MwrtPhzONn6go8ylnOdMhKqi4nfg==" }, - "pause-stream": { + "node_modules/pause-stream": { "version": "0.0.11", "resolved": "https://registry.npmjs.org/pause-stream/-/pause-stream-0.0.11.tgz", - "integrity": "sha1-/lo0sMvOErWqaitAPuLnO2AvFEU=", - "requires": { + "integrity": "sha512-e3FBlXLmN/D1S+zHzanP4E/4Z60oFAa3O051qt1pxa7DEJWKAyil6upYVXCWadEnuoqa4Pkc9oUx9zsxYeRv8A==", + "dependencies": { "through": "~2.3" } }, - "pbkdf2": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.1.2.tgz", - "integrity": "sha512-iuh7L6jA7JEGu2WxDwtQP1ddOpaJNC4KlDEFfdQajSGgGPNi4OyDc2R7QnbY2bR9QjBVGwgvTdNJZoE7RaxUMA==", - "requires": { - "create-hash": "^1.1.2", - "create-hmac": "^1.1.4", - "ripemd160": "^2.0.1", - "safe-buffer": "^5.0.1", - "sha.js": "^2.4.8" - } - }, - "peek-readable": { + "node_modules/peek-readable": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/peek-readable/-/peek-readable-4.1.0.tgz", - "integrity": "sha512-ZI3LnwUv5nOGbQzD9c2iDG6toheuXSZP5esSHBjopsXH4dg19soufvpUGA3uohi5anFtGb2lhAVdHzH6R/Evvg==" - }, - "pem-jwk": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/pem-jwk/-/pem-jwk-1.5.1.tgz", - "integrity": "sha1-eoY3/S9nqCflfAxC4cI8P9Us+wE=", - "requires": { - "asn1.js": "1.0.3" - }, - "dependencies": { - "asn1.js": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-1.0.3.tgz", - "integrity": "sha1-KBuj7B8kSP52X5Kk7s+IP+E2S1Q=", - "requires": { - "bn.js": "^1.0.0", - "inherits": "^2.0.1", - "minimalistic-assert": "^1.0.0" - } - }, - "bn.js": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-1.3.0.tgz", - "integrity": "sha1-DbTL+W+PI7dC9by50ap6mZSgXoM=", - "optional": true - } - } - }, - "pem2jwk": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/pem2jwk/-/pem2jwk-1.0.2.tgz", - "integrity": "sha512-/PsYvI1FljaxOeqrvbWgjE6KiFz87aPYr2lgUaADbzBKihRX0FVg7StXx3Cakd7qYL8e+TTANPKOsRH0HGjndw==", - "requires": { - "elliptic": "^6.4.0", - "parse-asn1": "^5.1.0", - "safe-buffer": "^5.1.2" + "integrity": "sha512-ZI3LnwUv5nOGbQzD9c2iDG6toheuXSZP5esSHBjopsXH4dg19soufvpUGA3uohi5anFtGb2lhAVdHzH6R/Evvg==", + "engines": { + "node": ">=8" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/Borewit" } }, - "pend": { + "node_modules/pend": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz", "integrity": "sha512-F3asv42UuXchdzt+xXqfW1OGlVBe+mxa2mqI0pg5yAHZPvFmY3Y6drSf/GQ1A86WgWEN9Kzh/WrgKa6iGcHXLg==", - "dev": true + "dev": true, + "license": "MIT" }, - "performance-now": { + "node_modules/performance-now": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", - "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=", + "integrity": "sha512-7EAHlyLHI56VEIdK57uwHdHKIaAGbnXPiw0yWbarQZOKaKpvUIgW0jWRVLiatnM+XXlSwsanIBH/hzGMJulMow==", + "dev": true + }, + "node_modules/picocolors": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.1.tgz", + "integrity": "sha512-anP1Z8qwhkbmu7MFP5iTt+wQKXgwzf7zTyGlcdzabySa9vd0Xt392U0rVmz9poOaBj0uHJKyyo9/upk0HrEQew==", "dev": true }, - "picomatch": { + "node_modules/picomatch": { "version": "2.3.1", "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", - "dev": true + "dev": true, + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } }, - "pidtree": { + "node_modules/pidtree": { "version": "0.3.1", "resolved": "https://registry.npmjs.org/pidtree/-/pidtree-0.3.1.tgz", "integrity": "sha512-qQbW94hLHEqCg7nhby4yRC7G2+jYHY4Rguc2bjw7Uug4GIJuu1tvf2uHaZv5Q8zdt+WKJ6qK1FOI6amaWUo5FA==", - "dev": true + "dev": true, + "bin": { + "pidtree": "bin/pidtree.js" + }, + "engines": { + "node": ">=0.10" + } }, - "pify": { + "node_modules/pify": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", - "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", - "dev": true + "integrity": "sha512-C3FsVNH1udSEX48gGX1xfvwTWfsYWj5U+8/uK15BGzIGrKoUpghX8hWZwa/OFnakBiiVNmBvemTJR5mcy7iPcg==", + "dev": true, + "engines": { + "node": ">=4" + } }, - "pkg-dir": { + "node_modules/pkg-dir": { "version": "4.2.0", "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "find-up": "^4.0.0" }, + "engines": { + "node": ">=8" + } + }, + "node_modules/pkg-dir/node_modules/find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "dev": true, + "license": "MIT", + "dependencies": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/pkg-dir/node_modules/locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "dev": true, + "license": "MIT", "dependencies": { - "find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", - "dev": true, - "requires": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - } - }, - "locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", - "dev": true, - "requires": { - "p-locate": "^4.1.0" - } - }, - "p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", - "dev": true, - "requires": { - "p-try": "^2.0.0" - } - }, - "p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", - "dev": true, - "requires": { - "p-limit": "^2.2.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 - } + "p-locate": "^4.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/pkg-dir/node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "dev": true, + "license": "MIT", + "dependencies": { + "p-try": "^2.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/pkg-dir/node_modules/p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "dev": true, + "license": "MIT", + "dependencies": { + "p-limit": "^2.2.0" + }, + "engines": { + "node": ">=8" } }, - "pkginfo": { + "node_modules/pkginfo": { "version": "0.3.1", "resolved": "https://registry.npmjs.org/pkginfo/-/pkginfo-0.3.1.tgz", - "integrity": "sha1-Wyn2qB9wcXFC4J52W76rl7T4HiE=" + "integrity": "sha512-yO5feByMzAp96LtP58wvPKSbaKAi/1C4kV9XpTctr6EepnP6F33RBNOiVrdz9BrPA98U2BMFsTNHo44TWcbQ2A==", + "engines": { + "node": ">= 0.4.0" + } }, - "polygon-clipping": { - "version": "0.15.3", - "resolved": "https://registry.npmjs.org/polygon-clipping/-/polygon-clipping-0.15.3.tgz", - "integrity": "sha512-ho0Xx5DLkgxRx/+n4O74XyJ67DcyN3Tu9bGYKsnTukGAW6ssnuak6Mwcyb1wHy9MZc9xsUWqIoiazkZB5weECg==", - "requires": { + "node_modules/polygon-clipping": { + "version": "0.15.7", + "resolved": "https://registry.npmjs.org/polygon-clipping/-/polygon-clipping-0.15.7.tgz", + "integrity": "sha512-nhfdr83ECBg6xtqOAJab1tbksbBAOMUltN60bU+llHVOL0e5Onm1WpAXXWXVB39L8AJFssoIhEVuy/S90MmotA==", + "dependencies": { + "robust-predicates": "^3.0.2", "splaytree": "^3.1.0" } }, - "ports": { + "node_modules/ports": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/ports/-/ports-1.1.0.tgz", - "integrity": "sha1-twGqKF6V2ujJbNonUhdySh9/bGA=" + "integrity": "sha512-XmS7dspHnkTXZC75NkG0ti2hLj8aSyg1Izp87/2cWT7QhTo1vdtWsQ4ldp4BEQ/EXqy0s4yTATJUZ3t9RGZVpg==" }, - "prebuild-install": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/prebuild-install/-/prebuild-install-7.1.1.tgz", - "integrity": "sha512-jAXscXWMcCK8GgCoHOfIr0ODh5ai8mj63L2nWrjuAgXE6tDyYGnx4/8o/rCgU+B4JSyZBKbeZqzhtwtC3ovxjw==", - "requires": { + "node_modules/possible-typed-array-names": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/possible-typed-array-names/-/possible-typed-array-names-1.0.0.tgz", + "integrity": "sha512-d7Uw+eZoloe0EHDIYoe+bQ5WXnGMOpmiZFTuMWCwpjzzkL2nTjcKiAk4hh8TjnGye2TwWOk3UXucZ+3rbmBa8Q==", + "dev": true, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/prebuild-install": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/prebuild-install/-/prebuild-install-7.1.2.tgz", + "integrity": "sha512-UnNke3IQb6sgarcZIDU3gbMeTp/9SSU1DAIkil7PrqG1vZlBtY5msYccSKSHDqa3hNg436IXK+SNImReuA1wEQ==", + "optional": true, + "dependencies": { "detect-libc": "^2.0.0", "expand-template": "^2.0.3", "github-from-package": "0.0.0", @@ -19397,105 +9937,134 @@ "simple-get": "^4.0.0", "tar-fs": "^2.0.0", "tunnel-agent": "^0.6.0" + }, + "bin": { + "prebuild-install": "bin.js" + }, + "engines": { + "node": ">=10" } }, - "precond": { + "node_modules/precond": { "version": "0.2.3", "resolved": "https://registry.npmjs.org/precond/-/precond-0.2.3.tgz", - "integrity": "sha512-QCYG84SgGyGzqJ/vlMsxeXd/pgL/I94ixdNFyh1PusWmTCyVfPJjZ1K1jvHtsbfnXQs2TSkEP2fR7QiMZAnKFQ==" + "integrity": "sha512-QCYG84SgGyGzqJ/vlMsxeXd/pgL/I94ixdNFyh1PusWmTCyVfPJjZ1K1jvHtsbfnXQs2TSkEP2fR7QiMZAnKFQ==", + "engines": { + "node": ">= 0.6" + } }, - "prelude-ls": { + "node_modules/prelude-ls": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", - "dev": true + "dev": true, + "engines": { + "node": ">= 0.8.0" + } }, - "prettier": { + "node_modules/prettier": { "version": "1.19.1", "resolved": "https://registry.npmjs.org/prettier/-/prettier-1.19.1.tgz", "integrity": "sha512-s7PoyDv/II1ObgQunCbB9PdLmUcBZcnWOcxDh7O0N/UwDEsHyqkW+Qh28jW+mVuCdx7gLB0BotYI1Y6uI9iyew==", - "dev": true + "dev": true, + "bin": { + "prettier": "bin-prettier.js" + }, + "engines": { + "node": ">=4" + } }, - "prettier-linter-helpers": { + "node_modules/prettier-linter-helpers": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/prettier-linter-helpers/-/prettier-linter-helpers-1.0.0.tgz", "integrity": "sha512-GbK2cP9nraSSUF9N2XwUwqfzlAFlMNYYl+ShE/V+H8a9uNl/oUqB1w2EL54Jh0OlyRSd8RfWYJ3coVS4TROP2w==", "dev": true, - "requires": { + "dependencies": { "fast-diff": "^1.1.2" + }, + "engines": { + "node": ">=6.0.0" } }, - "process-nextick-args": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-1.0.7.tgz", - "integrity": "sha1-FQ4gt1ZZCtP5EJPyWk8q2L/zC6M=" + "node_modules/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==" }, - "proj4": { + "node_modules/proj4": { "version": "2.8.0", "resolved": "https://registry.npmjs.org/proj4/-/proj4-2.8.0.tgz", "integrity": "sha512-baC+YcD4xsSqJ+CpCZljj2gcQDhlKb+J+Zjv/2KSBwWNjk4M0pafgQsE+mWurd84tflMIsP+7j7mtIpFDHzQfQ==", - "requires": { + "dependencies": { "mgrs": "1.0.0", "wkt-parser": "^1.3.1" } }, - "promise": { + "node_modules/promise": { "version": "7.3.1", "resolved": "https://registry.npmjs.org/promise/-/promise-7.3.1.tgz", "integrity": "sha512-nolQXZ/4L+bP/UGlkfaIujX9BKxGwmQ9OT4mOt5yvy8iK1h3wqTEJCijzGANTCCl9nWjY41juyAn2K3Q1hLLTg==", - "requires": { + "dependencies": { "asap": "~2.0.3" } }, - "propagate": { + "node_modules/propagate": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/propagate/-/propagate-2.0.1.tgz", "integrity": "sha512-vGrhOavPSTz4QVNuBNdcNXePNdNMaO1xj9yBeH1ScQPjk/rhg9sSlCXPhMkFuaNNW/syTvYqsnbIJxMBfRbbag==", - "dev": true + "dev": true, + "engines": { + "node": ">= 8" + } }, - "proxy-addr": { + "node_modules/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": { + "dependencies": { "forwarded": "0.2.0", "ipaddr.js": "1.9.1" + }, + "engines": { + "node": ">= 0.10" } }, - "proxy-from-env": { + "node_modules/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 }, - "proxyquire": { + "node_modules/proxyquire": { "version": "2.1.3", "resolved": "https://registry.npmjs.org/proxyquire/-/proxyquire-2.1.3.tgz", "integrity": "sha512-BQWfCqYM+QINd+yawJz23tbBM40VIGXOdDw3X344KcclI/gtBbdWF6SlQ4nK/bYhF9d27KYug9WzljHC6B9Ysg==", "dev": true, - "requires": { + "dependencies": { "fill-keys": "^1.0.2", "module-not-found-error": "^1.0.1", "resolve": "^1.11.1" } }, - "pseudomap": { + "node_modules/pseudomap": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", - "integrity": "sha1-8FKijacOYYkX7wqKw0wa5aaChrM=" + "integrity": "sha512-b/YwNhb8lk1Zz2+bXXpS/LK9OisiZZ1SNsSLxN1x2OXVEhW2Ckr/7mWE5vrC1ZTiJlD9g19jWszTmJsB+oEpFQ==", + "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==", + "node_modules/psl": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/psl/-/psl-1.9.0.tgz", + "integrity": "sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag==", "dev": true }, - "pug": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/pug/-/pug-3.0.2.tgz", - "integrity": "sha512-bp0I/hiK1D1vChHh6EfDxtndHji55XP/ZJKwsRqrz6lRia6ZC2OZbdAymlxdVFwd1L70ebrVJw4/eZ79skrIaw==", - "requires": { - "pug-code-gen": "^3.0.2", + "node_modules/pug": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/pug/-/pug-3.0.3.tgz", + "integrity": "sha512-uBi6kmc9f3SZ3PXxqcHiUZLmIXgfgWooKWXcwSGwQd2Zi5Rb0bT14+8CJjJgI8AB+nndLaNgHGrcc6bPIB665g==", + "license": "MIT", + "dependencies": { + "pug-code-gen": "^3.0.3", "pug-filters": "^4.0.0", "pug-lexer": "^5.0.1", "pug-linker": "^4.0.0", @@ -19505,41 +10074,41 @@ "pug-strip-comments": "^2.0.0" } }, - "pug-attrs": { + "node_modules/pug-attrs": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/pug-attrs/-/pug-attrs-3.0.0.tgz", "integrity": "sha512-azINV9dUtzPMFQktvTXciNAfAuVh/L/JCl0vtPCwvOA21uZrC08K/UnmrL+SXGEVc1FwzjW62+xw5S/uaLj6cA==", - "requires": { + "dependencies": { "constantinople": "^4.0.1", "js-stringify": "^1.0.2", "pug-runtime": "^3.0.0" } }, - "pug-code-gen": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/pug-code-gen/-/pug-code-gen-3.0.2.tgz", - "integrity": "sha512-nJMhW16MbiGRiyR4miDTQMRWDgKplnHyeLvioEJYbk1RsPI3FuA3saEP8uwnTb2nTJEKBU90NFVWJBk4OU5qyg==", - "requires": { + "node_modules/pug-code-gen": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/pug-code-gen/-/pug-code-gen-3.0.3.tgz", + "integrity": "sha512-cYQg0JW0w32Ux+XTeZnBEeuWrAY7/HNE6TWnhiHGnnRYlCgyAUPoyh9KzCMa9WhcJlJ1AtQqpEYHc+vbCzA+Aw==", + "dependencies": { "constantinople": "^4.0.1", "doctypes": "^1.1.0", "js-stringify": "^1.0.2", "pug-attrs": "^3.0.0", - "pug-error": "^2.0.0", - "pug-runtime": "^3.0.0", + "pug-error": "^2.1.0", + "pug-runtime": "^3.0.1", "void-elements": "^3.1.0", "with": "^7.0.0" } }, - "pug-error": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/pug-error/-/pug-error-2.0.0.tgz", - "integrity": "sha512-sjiUsi9M4RAGHktC1drQfCr5C5eriu24Lfbt4s+7SykztEOwVZtbFk1RRq0tzLxcMxMYTBR+zMQaG07J/btayQ==" + "node_modules/pug-error": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/pug-error/-/pug-error-2.1.0.tgz", + "integrity": "sha512-lv7sU9e5Jk8IeUheHata6/UThZ7RK2jnaaNztxfPYUY+VxZyk/ePVaNZ/vwmH8WqGvDz3LrNYt/+gA55NDg6Pg==" }, - "pug-filters": { + "node_modules/pug-filters": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/pug-filters/-/pug-filters-4.0.0.tgz", "integrity": "sha512-yeNFtq5Yxmfz0f9z2rMXGw/8/4i1cCFecw/Q7+D0V2DdtII5UvqE12VaZ2AY7ri6o5RNXiweGH79OCq+2RQU4A==", - "requires": { + "dependencies": { "constantinople": "^4.0.1", "jstransformer": "1.0.0", "pug-error": "^2.0.0", @@ -19547,309 +10116,452 @@ "resolve": "^1.15.1" } }, - "pug-lexer": { + "node_modules/pug-lexer": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/pug-lexer/-/pug-lexer-5.0.1.tgz", "integrity": "sha512-0I6C62+keXlZPZkOJeVam9aBLVP2EnbeDw3An+k0/QlqdwH6rv8284nko14Na7c0TtqtogfWXcRoFE4O4Ff20w==", - "requires": { + "dependencies": { "character-parser": "^2.2.0", "is-expression": "^4.0.0", "pug-error": "^2.0.0" } }, - "pug-linker": { + "node_modules/pug-linker": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/pug-linker/-/pug-linker-4.0.0.tgz", "integrity": "sha512-gjD1yzp0yxbQqnzBAdlhbgoJL5qIFJw78juN1NpTLt/mfPJ5VgC4BvkoD3G23qKzJtIIXBbcCt6FioLSFLOHdw==", - "requires": { + "dependencies": { "pug-error": "^2.0.0", "pug-walk": "^2.0.0" } }, - "pug-load": { + "node_modules/pug-load": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/pug-load/-/pug-load-3.0.0.tgz", "integrity": "sha512-OCjTEnhLWZBvS4zni/WUMjH2YSUosnsmjGBB1An7CsKQarYSWQ0GCVyd4eQPMFJqZ8w9xgs01QdiZXKVjk92EQ==", - "requires": { + "dependencies": { "object-assign": "^4.1.1", "pug-walk": "^2.0.0" } }, - "pug-parser": { + "node_modules/pug-parser": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/pug-parser/-/pug-parser-6.0.0.tgz", "integrity": "sha512-ukiYM/9cH6Cml+AOl5kETtM9NR3WulyVP2y4HOU45DyMim1IeP/OOiyEWRr6qk5I5klpsBnbuHpwKmTx6WURnw==", - "requires": { + "dependencies": { "pug-error": "^2.0.0", "token-stream": "1.0.0" } }, - "pug-runtime": { + "node_modules/pug-runtime": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/pug-runtime/-/pug-runtime-3.0.1.tgz", "integrity": "sha512-L50zbvrQ35TkpHwv0G6aLSuueDRwc/97XdY8kL3tOT0FmhgG7UypU3VztfV/LATAvmUfYi4wNxSajhSAeNN+Kg==" }, - "pug-strip-comments": { + "node_modules/pug-strip-comments": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/pug-strip-comments/-/pug-strip-comments-2.0.0.tgz", "integrity": "sha512-zo8DsDpH7eTkPHCXFeAk1xZXJbyoTfdPlNR0bK7rpOMuhBYb0f5qUVCO1xlsitYd3w5FQTK7zpNVKb3rZoUrrQ==", - "requires": { + "dependencies": { "pug-error": "^2.0.0" } }, - "pug-walk": { + "node_modules/pug-walk": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/pug-walk/-/pug-walk-2.0.0.tgz", "integrity": "sha512-yYELe9Q5q9IQhuvqsZNwA5hfPkMJ8u92bQLIMcsMxf/VADjNtEYptU+inlufAFYcWdHlwNfZOEnOOQrZrcyJCQ==" }, - "pump": { + "node_modules/pump": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", - "requires": { + "optional": true, + "dependencies": { "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==", - "dev": true + "node_modules/punycode": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz", + "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==", + "engines": { + "node": ">=6" + } }, - "qs": { - "version": "6.5.2", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz", - "integrity": "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==", - "dev": true + "node_modules/qs": { + "version": "6.13.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.13.0.tgz", + "integrity": "sha512-+38qI9SOr8tfZ4QmJNplMUxqjbe7LKvvZgWdExBOmd+egZTtjLB67Gu0HRX3u/XOq7UU2Nx6nsjvS16Z9uwfpg==", + "license": "BSD-3-Clause", + "dependencies": { + "side-channel": "^1.0.6" + }, + "engines": { + "node": ">=0.6" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, - "queue": { + "node_modules/queue": { "version": "6.0.1", "resolved": "https://registry.npmjs.org/queue/-/queue-6.0.1.tgz", "integrity": "sha512-AJBQabRCCNr9ANq8v77RJEv73DPbn55cdTb+Giq4X0AVnNVZvMHlYp7XlQiN+1npCZj1DuSmaA2hYVUUDgxFDg==", - "requires": { + "dependencies": { "inherits": "~2.0.3" } }, - "queue-microtask": { + "node_modules/queue-microtask": { "version": "1.2.3", "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", - "dev": true - }, - "queue-tick": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/queue-tick/-/queue-tick-1.0.1.tgz", - "integrity": "sha512-kJt5qhMxoszgU/62PLP1CJytzd2NKetjSRnyuj31fDd3Rlcz3fzlFdFLD1SItunPwyqEOkca6GbV612BWfaBag==", - "dev": true + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] }, - "quickselect": { + "node_modules/quickselect": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/quickselect/-/quickselect-2.0.0.tgz", "integrity": "sha512-RKJ22hX8mHe3Y6wH/N3wCM6BWtjaxIyyUIkpHOvfFnxdI4yD4tBXEBKSbriGujF6jnSVkJrffuo6vxACiSSxIw==" }, - "randexp": { + "node_modules/randexp": { "version": "0.5.3", "resolved": "https://registry.npmjs.org/randexp/-/randexp-0.5.3.tgz", "integrity": "sha512-U+5l2KrcMNOUPYvazA3h5ekF80FHTUG+87SEAmHZmolh1M+i/WyTCxVzmi+tidIa1tM4BSe8g2Y/D3loWDjj+w==", "dev": true, - "requires": { + "dependencies": { "drange": "^1.0.2", "ret": "^0.2.0" + }, + "engines": { + "node": ">=4" } }, - "random-bytes": { + "node_modules/random-bytes": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/random-bytes/-/random-bytes-1.0.0.tgz", - "integrity": "sha1-T2ih3Arli9P7lYSMMDJNt11kNgs=" + "integrity": "sha512-iv7LhNVO047HzYR3InF6pUcUsPQiHTM1Qal51DcGSuZFBil1aBBWG5eHPNek7bvILMaYJ/8RU1e8w1AMdHmLQQ==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/randombytes": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", + "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "safe-buffer": "^5.1.0" + } }, - "range-parser": { + "node_modules/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==" + "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==", + "license": "MIT", + "engines": { + "node": ">= 0.6" + } }, - "raw-body": { - "version": "2.4.3", - "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.4.3.tgz", - "integrity": "sha512-UlTNLIcu0uzb4D2f4WltY6cVjLi+/jEN4lgEUj3E04tpMDpUlkBo/eSn6zou9hum2VMNpCCUone0O0WeJim07g==", - "requires": { + "node_modules/raw-body": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.2.tgz", + "integrity": "sha512-8zGqypfENjCIqGhgXToC8aB2r7YrBX+AQAfIPs/Mlk+BtPTztOvTS01NRW/3Eh60J+a48lt8qsCzirQ6loCVfA==", + "license": "MIT", + "dependencies": { "bytes": "3.1.2", - "http-errors": "1.8.1", + "http-errors": "2.0.0", "iconv-lite": "0.4.24", "unpipe": "1.0.0" }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/raw-body/node_modules/iconv-lite": { + "version": "0.4.24", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", + "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", + "license": "MIT", "dependencies": { - "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" - } - } + "safer-buffer": ">= 2.1.2 < 3" + }, + "engines": { + "node": ">=0.10.0" } }, - "rbush": { + "node_modules/rbush": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/rbush/-/rbush-3.0.1.tgz", "integrity": "sha512-XRaVO0YecOpEuIvbhbpTrZgoiI6xBlz6hnlr6EHhd+0x9ase6EmeN+hdwwUaJvLcsFFQ8iWVF1GAK1yB0BWi0w==", - "requires": { + "dependencies": { "quickselect": "^2.0.0" } }, - "rc": { + "node_modules/rc": { "version": "1.2.8", "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==", - "requires": { + "optional": true, + "dependencies": { "deep-extend": "^0.6.0", "ini": "~1.3.0", "minimist": "^1.2.0", "strip-json-comments": "~2.0.1" + }, + "bin": { + "rc": "cli.js" + } + }, + "node_modules/rc/node_modules/strip-json-comments": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", + "integrity": "sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ==", + "optional": true, + "engines": { + "node": ">=0.10.0" } }, - "read-pkg": { + "node_modules/read-pkg": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-3.0.0.tgz", - "integrity": "sha1-nLxoaXj+5l0WwA4rGcI3/Pbjg4k=", + "integrity": "sha512-BLq/cCO9two+lBgiTYNqD6GdtK8s4NpaWrl6/rCO9w0TUS8oJl7cmToOZfRYllKTISY6nt1U7jQ53brmKqY6BA==", "dev": true, - "requires": { + "dependencies": { "load-json-file": "^4.0.0", "normalize-package-data": "^2.3.2", "path-type": "^3.0.0" + }, + "engines": { + "node": ">=4" } }, - "readable-stream": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.0.6.tgz", - "integrity": "sha1-j5A0HmilPMySh4jaz80Rs265t44=", - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.1", - "isarray": "~1.0.0", - "process-nextick-args": "~1.0.6", - "string_decoder": "~0.10.x", - "util-deprecate": "~1.0.1" + "node_modules/read-pkg-up": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-4.0.0.tgz", + "integrity": "sha512-6etQSH7nJGsK0RbG/2TeDzZFa8shjQ1um+SwQQ5cwKy0dhSXdOncEhb1CPpvQG4h7FyOV6EB6YlV0yJvZQNAkA==", + "dev": true, + "dependencies": { + "find-up": "^3.0.0", + "read-pkg": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/read-pkg-up/node_modules/find-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "dev": true, + "dependencies": { + "locate-path": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/read-pkg-up/node_modules/locate-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "dev": true, + "dependencies": { + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/read-pkg-up/node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "dev": true, + "dependencies": { + "p-try": "^2.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/read-pkg-up/node_modules/p-locate": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "dev": true, + "dependencies": { + "p-limit": "^2.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/read-pkg-up/node_modules/path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/read-pkg/node_modules/path-type": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz", + "integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==", + "dev": true, + "dependencies": { + "pify": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/readable-stream": { + "version": "3.6.2", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", + "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" } }, - "readable-web-to-node-stream": { + "node_modules/readable-web-to-node-stream": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/readable-web-to-node-stream/-/readable-web-to-node-stream-3.0.2.tgz", "integrity": "sha512-ePeK6cc1EcKLEhJFt/AebMCLL+GgSKhuygrZ/GLaKZYEecIgIECf4UaUuaByiGtzckwR4ain9VzUh95T1exYGw==", - "requires": { + "dependencies": { "readable-stream": "^3.6.0" }, + "engines": { + "node": ">=8" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/Borewit" + } + }, + "node_modules/readdir-glob": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/readdir-glob/-/readdir-glob-1.1.3.tgz", + "integrity": "sha512-v05I2k7xN8zXvPD9N+z/uhXPaj0sUFCe2rcWZIpBsqxfP7xXFQ0tipAd/wjj1YxWyWtUS5IDJpOG82JKt2EAVA==", "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" - } - }, - "string_decoder": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", - "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", - "requires": { - "safe-buffer": "~5.2.0" - } - } + "minimatch": "^5.1.0" } }, - "readdir-glob": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/readdir-glob/-/readdir-glob-1.1.1.tgz", - "integrity": "sha512-91/k1EzZwDx6HbERR+zucygRFfiPl2zkIYZtv3Jjr6Mn7SkKcVct8aVO+sSRiGMc6fLf72du3d92/uY63YPdEA==", - "requires": { - "minimatch": "^3.0.4" + "node_modules/readdir-glob/node_modules/minimatch": { + "version": "5.1.6", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz", + "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==", + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=10" } }, - "readdirp": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.2.0.tgz", - "integrity": "sha512-crk4Qu3pmXwgxdSgGhgA/eXiJAPQiX4GMOZZMXnqKxHX7TaoL+3gQVo/WeuAiogr07DpnfjIMpXXa+PAIvwPGQ==", + "node_modules/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.0.4" + "license": "MIT", + "dependencies": { + "picomatch": "^2.2.1" + }, + "engines": { + "node": ">=8.10.0" } }, - "regexp-clone": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/regexp-clone/-/regexp-clone-0.0.1.tgz", - "integrity": "sha1-p8LgmJH9vzj7sQ03b7cwA+aKxYk=" - }, - "regexp.prototype.flags": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.4.2.tgz", - "integrity": "sha512-Ynz8fTQW5/1elh+jWU2EDDzeoNbD0OQ0R+D1VJU5ATOkUaro4A9YEkdN2ODQl/8UQFPPpZNw91fOcLFamM7Pww==", + "node_modules/regexp.prototype.flags": { + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.2.tgz", + "integrity": "sha512-NcDiDkTLuPR+++OCKB0nWafEmhg/Da8aUPLPMQbK+bxKKCm1/S5he+AqYa4PlMCVBalb4/yxIRub6qkEx5yJbw==", "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3" + "dependencies": { + "call-bind": "^1.0.6", + "define-properties": "^1.2.1", + "es-errors": "^1.3.0", + "set-function-name": "^2.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "release-zalgo": { + "node_modules/release-zalgo": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/release-zalgo/-/release-zalgo-1.0.0.tgz", - "integrity": "sha1-CXALflB0Mpc5Mw5TXFqQ+2eFFzA=", + "integrity": "sha512-gUAyHVHPPC5wdqX/LG4LWtRYtgjxyX78oanFNTMMyFEfOqdC54s3eE82imuWKbOeqYht2CrNf64Qb8vgmmtZGA==", "dev": true, - "requires": { + "dependencies": { "es6-error": "^4.0.1" + }, + "engines": { + "node": ">=4" } }, - "reproject": { + "node_modules/reproject": { "version": "1.2.5", "resolved": "https://registry.npmjs.org/reproject/-/reproject-1.2.5.tgz", "integrity": "sha512-cTH78fi1uuv5gzW/GVepO4LbCvOUhO0X2BEyyvrKkYb4KPRmDPs7cZnIxemHPUIch/CoSI8MPLmXRHZFSHjbKw==", - "requires": { + "dependencies": { "concat-stream": "^2.0.0", "event-stream": "^4.0.0", "geojson-stream": "0.1.0", "minimist": "^1.2.0", "proj4": "^2.4.4" }, + "bin": { + "reproject": "cli.js" + } + }, + "node_modules/reproject/node_modules/concat-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-2.0.0.tgz", + "integrity": "sha512-MWufYdFw53ccGjCA+Ol7XJYpAlW6/prSMzuPOTRnJGcGzuhLn4Scrz7qf6o8bROZ514ltazcIFJZevcfbo0x7A==", + "engines": [ + "node >= 6.0" + ], "dependencies": { - "concat-stream": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-2.0.0.tgz", - "integrity": "sha512-MWufYdFw53ccGjCA+Ol7XJYpAlW6/prSMzuPOTRnJGcGzuhLn4Scrz7qf6o8bROZ514ltazcIFJZevcfbo0x7A==", - "requires": { - "buffer-from": "^1.0.0", - "inherits": "^2.0.3", - "readable-stream": "^3.0.2", - "typedarray": "^0.0.6" - } - }, - "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" - } - }, - "string_decoder": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", - "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", - "requires": { - "safe-buffer": "~5.2.0" - } - } + "buffer-from": "^1.0.0", + "inherits": "^2.0.3", + "readable-stream": "^3.0.2", + "typedarray": "^0.0.6" } }, - "request": { + "node_modules/request": { "version": "2.88.2", "resolved": "https://registry.npmjs.org/request/-/request-2.88.2.tgz", "integrity": "sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw==", + "deprecated": "request has been deprecated, see https://github.com/request/request/issues/3142", "dev": true, - "requires": { + "dependencies": { "aws-sign2": "~0.7.0", "aws4": "^1.8.0", "caseless": "~0.12.0", @@ -19870,233 +10582,345 @@ "tough-cookie": "~2.5.0", "tunnel-agent": "^0.6.0", "uuid": "^3.3.2" + }, + "engines": { + "node": ">= 6" } }, - "require_optional": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/require_optional/-/require_optional-1.0.1.tgz", - "integrity": "sha512-qhM/y57enGWHAe3v/NcwML6a3/vfESLe/sGM2dII+gEO0BpKRUkWZow/tyloNqJyN6kXSl3RyyM8Ll5D/sJP8g==", - "requires": { - "resolve-from": "^2.0.0", - "semver": "^5.1.0" + "node_modules/request/node_modules/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==", + "dev": true, + "dependencies": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.6", + "mime-types": "^2.1.12" + }, + "engines": { + "node": ">= 0.12" + } + }, + "node_modules/request/node_modules/qs": { + "version": "6.5.3", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.3.tgz", + "integrity": "sha512-qxXIEh4pCGfHICj1mAJQ2/2XVZkjCDTcEgfoSQxc/fYivUZxTkk7L3bDBJSoNrEzXI17oUO5Dp07ktqE5KzczA==", + "dev": true, + "engines": { + "node": ">=0.6" } }, - "require-directory": { + "node_modules/request/node_modules/uuid": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", + "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==", + "deprecated": "Please upgrade to version 7 or higher. Older versions may use Math.random() in certain circumstances, which is known to be problematic. See https://v8.dev/blog/math-random for details.", + "dev": true, + "bin": { + "uuid": "bin/uuid" + } + }, + "node_modules/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 + "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } }, - "require-main-filename": { + "node_modules/require-main-filename": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz", "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==", "dev": true }, - "resolve": { - "version": "1.22.0", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.0.tgz", - "integrity": "sha512-Hhtrw0nLeSrFQ7phPp4OOcVjLPIeMnRlr5mcnVuMe7M/7eBn98A3hmFRLoFo3DLZkivSYwhRUJTyPyWAk56WLw==", - "requires": { - "is-core-module": "^2.8.1", + "node_modules/resolve": { + "version": "1.22.8", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.8.tgz", + "integrity": "sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==", + "dependencies": { + "is-core-module": "^2.13.0", "path-parse": "^1.0.7", "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "resolve-from": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-2.0.0.tgz", - "integrity": "sha1-lICrIOlP+h2egKgEx+oUdhGWa1c=" + "node_modules/resolve-from": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", + "dev": true, + "engines": { + "node": ">=4" + } }, - "restore-cursor": { + "node_modules/restore-cursor": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz", "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==", "optional": true, - "requires": { + "dependencies": { "onetime": "^5.1.0", "signal-exit": "^3.0.2" + }, + "engines": { + "node": ">=8" } }, - "ret": { + "node_modules/ret": { "version": "0.2.2", "resolved": "https://registry.npmjs.org/ret/-/ret-0.2.2.tgz", "integrity": "sha512-M0b3YWQs7R3Z917WRQy1HHA7Ba7D8hvZg6UE5mLykJxQVE2ju0IXbGlaHPPlkY+WN7wFP+wUMXmBFA0aV6vYGQ==", - "dev": true + "dev": true, + "engines": { + "node": ">=4" + } }, - "reusify": { + "node_modules/reusify": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", - "dev": true + "dev": true, + "engines": { + "iojs": ">=1.0.0", + "node": ">=0.10.0" + } }, - "rfc5646": { + "node_modules/rfc5646": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/rfc5646/-/rfc5646-3.0.0.tgz", "integrity": "sha512-yFQuMO3ANS0jhQLB3b4NJGQ13RTm6tA9ZRf70nRSmOKchaT88pzh4fBdhcXEOptYdGw22vNqH7IRD/7pjDILZQ==" }, - "rimraf": { - "version": "5.0.5", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-5.0.5.tgz", - "integrity": "sha512-CqDakW+hMe/Bz202FPEymy68P+G50RfMQK+Qo5YUqc9SPipvbGjCGKd0RSKEelbsfQuw3g5NZDSrlZZAJurH1A==", + "node_modules/rimraf": { + "version": "5.0.10", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-5.0.10.tgz", + "integrity": "sha512-l0OE8wL34P4nJH/H2ffoaniAokM2qSmrtXHmlpvYr5AVVX8msAyW0l8NVJFDxlSK4u3Uh/f41cQheDVdnYijwQ==", "dev": true, - "requires": { + "license": "ISC", + "dependencies": { "glob": "^10.3.7" }, + "bin": { + "rimraf": "dist/esm/bin.mjs" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/rimraf/node_modules/foreground-child": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.2.1.tgz", + "integrity": "sha512-PXUUyLqrR2XCWICfv6ukppP96sdFwWbNEnfEMt7jNsISjMsvaLNinAHNDYyvkyU+SZG2BTSbT5NjG+vZslfGTA==", + "dev": true, "dependencies": { - "brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", - "dev": true, - "requires": { - "balanced-match": "^1.0.0" - } - }, - "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" - } - }, - "foreground-child": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.1.1.tgz", - "integrity": "sha512-TMKDUnIte6bfb5nWv7V/caI169OHgvwjb7V4WkeUvbQQdjr5rWKqHFiKWb/fcOwB+CzBT+qbWjvj+DVwRskpIg==", - "dev": true, - "requires": { - "cross-spawn": "^7.0.0", - "signal-exit": "^4.0.1" - } - }, - "glob": { - "version": "10.3.10", - "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.10.tgz", - "integrity": "sha512-fa46+tv1Ak0UPK1TOy/pZrIybNNt4HCv7SDzwyfiOZkvZLEbjsZkJBPtDHVshZjbecAoAGSC20MjLDG/qr679g==", - "dev": true, - "requires": { - "foreground-child": "^3.1.0", - "jackspeak": "^2.3.5", - "minimatch": "^9.0.1", - "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0", - "path-scurry": "^1.10.1" - } - }, - "minimatch": { - "version": "9.0.3", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", - "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", - "dev": true, - "requires": { - "brace-expansion": "^2.0.1" - } - }, - "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 - }, - "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 - }, - "signal-exit": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", - "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", - "dev": true - }, - "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" - } - } + "cross-spawn": "^7.0.0", + "signal-exit": "^4.0.1" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "ripemd160": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.2.tgz", - "integrity": "sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==", - "requires": { - "hash-base": "^3.0.0", - "inherits": "^2.0.1" + "node_modules/rimraf/node_modules/glob": { + "version": "10.4.2", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.2.tgz", + "integrity": "sha512-GwMlUF6PkPo3Gk21UxkCohOv0PLcIXVtKyLlpEI28R/cO/4eNOdmLk3CMW1wROV/WR/EsZOWAfBbBOqYvs88/w==", + "dev": true, + "dependencies": { + "foreground-child": "^3.1.0", + "jackspeak": "^3.1.2", + "minimatch": "^9.0.4", + "minipass": "^7.1.2", + "package-json-from-dist": "^1.0.0", + "path-scurry": "^1.11.1" + }, + "bin": { + "glob": "dist/esm/bin.mjs" + }, + "engines": { + "node": ">=16 || 14 >=14.18" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/rimraf/node_modules/minimatch": { + "version": "9.0.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", + "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", + "dev": true, + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/rimraf/node_modules/signal-exit": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", + "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", + "dev": true, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "rtree-sql.js": { + "node_modules/robust-predicates": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/robust-predicates/-/robust-predicates-3.0.2.tgz", + "integrity": "sha512-IXgzBWvWQwE6PrDI05OvmXUIruQTcoMDzRsOd5CDvHCVLcLHMTSYvOK5Cm46kWqlV3yAbuSpBZdJ5oP5OUoStg==" + }, + "node_modules/rtree-sql.js": { "version": "1.7.0", "resolved": "https://registry.npmjs.org/rtree-sql.js/-/rtree-sql.js-1.7.0.tgz", "integrity": "sha512-hue7klBnBrM6pvUPSnXNNgA0yN9FIjmhb8QveVY9q5h/3b//Cd8jaafUE0Ty89fuiamaLEHRw8eQq8mTn6Df5Q==" }, - "run-async": { + "node_modules/run-async": { "version": "2.4.1", "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.4.1.tgz", "integrity": "sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==", - "optional": true + "optional": true, + "engines": { + "node": ">=0.12.0" + } }, - "run-parallel": { + "node_modules/run-parallel": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", "dev": true, - "requires": { + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "dependencies": { "queue-microtask": "^1.2.2" } }, - "rxjs": { + "node_modules/rxjs": { "version": "6.6.7", "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", "optional": true, - "requires": { + "dependencies": { "tslib": "^1.9.0" + }, + "engines": { + "npm": ">=2.0.0" + } + }, + "node_modules/rxjs/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "optional": true + }, + "node_modules/safe-array-concat": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/safe-array-concat/-/safe-array-concat-1.1.2.tgz", + "integrity": "sha512-vj6RsCsWBCf19jIeHEfkRMw8DPiBb+DMXklQ/1SGDHOMlHdPUkZXFQ2YdplS23zESTijAcurb1aSgJA3AgMu1Q==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.7", + "get-intrinsic": "^1.2.4", + "has-symbols": "^1.0.3", + "isarray": "^2.0.5" + }, + "engines": { + "node": ">=0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "safe-buffer": { + "node_modules/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==" + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/safe-regex-test": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.0.3.tgz", + "integrity": "sha512-CdASjNJPvRa7roO6Ra/gLYBTzYzzPyyBXxIMdGW3USQLyjWEls2RgW5UBTXaQVp+OrpeCK3bLem8smtmheoRuw==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.6", + "es-errors": "^1.3.0", + "is-regex": "^1.1.4" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, - "safer-buffer": { + "node_modules/safer-buffer": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" }, - "sax": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/sax/-/sax-1.3.0.tgz", - "integrity": "sha512-0s+oAmw9zLl1V1cS9BtZN7JAd0cW5e0QH4W3LWEK6a4LaLEA2OTpGYWDY+6XasBLtz6wkm3u1xRw95mRuJ59WA==" + "node_modules/sax": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/sax/-/sax-1.4.1.tgz", + "integrity": "sha512-+aWOz7yVScEGoKNd4PA10LZ8sk0A/z5+nXQG5giUO5rprX9jgYsTdov9qCchZiPIZezbZH+jRut8nPodFAX4Jg==" }, - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==" - }, - "send": { - "version": "0.18.0", - "resolved": "https://registry.npmjs.org/send/-/send-0.18.0.tgz", - "integrity": "sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==", - "requires": { + "node_modules/semver": { + "version": "7.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.1.tgz", + "integrity": "sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==", + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/send": { + "version": "0.19.0", + "resolved": "https://registry.npmjs.org/send/-/send-0.19.0.tgz", + "integrity": "sha512-dW41u5VfLXu8SJh5bwRmyYUbAoSB3c9uQh6L8h/KtsFREPWpbX1lrljJo186Jc4nmci/sGUZ9a0a0J2zgfq2hw==", + "license": "MIT", + "dependencies": { "debug": "2.6.9", "depd": "2.0.0", "destroy": "1.2.0", @@ -20111,144 +10935,285 @@ "range-parser": "~1.2.1", "statuses": "2.0.1" }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/send/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "license": "MIT", "dependencies": { - "depd": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", - "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==" - }, - "http-errors": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", - "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==", - "requires": { - "depd": "2.0.0", - "inherits": "2.0.4", - "setprototypeof": "1.2.0", - "statuses": "2.0.1", - "toidentifier": "1.0.1" - } - }, - "ms": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", - "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==" - }, - "on-finished": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz", - "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==", - "requires": { - "ee-first": "1.1.1" - } - }, - "statuses": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", - "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==" - } + "ms": "2.0.0" } }, - "serve-static": { - "version": "1.15.0", - "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.15.0.tgz", - "integrity": "sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==", - "requires": { - "encodeurl": "~1.0.2", + "node_modules/send/node_modules/debug/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "license": "MIT" + }, + "node_modules/send/node_modules/encodeurl": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", + "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==", + "license": "MIT", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/send/node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "license": "MIT" + }, + "node_modules/serialize-javascript": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.2.tgz", + "integrity": "sha512-Saa1xPByTTq2gdeFZYLLo+RFE35NHZkAbqZeWNd3BpzppeVisAqpDjcp8dyf6uIvEqJRd46jemmyA4iFIeVk8g==", + "dev": true, + "license": "BSD-3-Clause", + "dependencies": { + "randombytes": "^2.1.0" + } + }, + "node_modules/serve-static": { + "version": "1.16.2", + "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.16.2.tgz", + "integrity": "sha512-VqpjJZKadQB/PEbEwvFdO43Ax5dFBZ2UECszz8bQ7pi7wt//PWe1P6MN7eCnjsatYtBT6EuiClbjSWP2WrIoTw==", + "license": "MIT", + "dependencies": { + "encodeurl": "~2.0.0", "escape-html": "~1.0.3", "parseurl": "~1.3.3", - "send": "0.18.0" + "send": "0.19.0" + }, + "engines": { + "node": ">= 0.8.0" } }, - "set-blocking": { + "node_modules/set-blocking": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", - "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=", + "integrity": "sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==", "dev": true }, - "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 + "node_modules/set-function-length": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/set-function-length/-/set-function-length-1.2.2.tgz", + "integrity": "sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==", + "dependencies": { + "define-data-property": "^1.1.4", + "es-errors": "^1.3.0", + "function-bind": "^1.1.2", + "get-intrinsic": "^1.2.4", + "gopd": "^1.0.1", + "has-property-descriptors": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/set-function-name": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/set-function-name/-/set-function-name-2.0.2.tgz", + "integrity": "sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ==", + "dev": true, + "dependencies": { + "define-data-property": "^1.1.4", + "es-errors": "^1.3.0", + "functions-have-names": "^1.2.3", + "has-property-descriptors": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/setimmediate": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", + "integrity": "sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA==", + "dev": true, + "license": "MIT" }, - "setprototypeof": { + "node_modules/setprototypeof": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", - "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==" - }, - "sha.js": { - "version": "2.4.11", - "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz", - "integrity": "sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==", - "requires": { - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" + "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==", + "license": "ISC" + }, + "node_modules/shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "dev": true, + "dependencies": { + "shebang-regex": "^3.0.0" + }, + "engines": { + "node": ">=8" } }, - "shebang-command": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", - "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=", + "node_modules/shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", "dev": true, - "requires": { - "shebang-regex": "^1.0.0" + "engines": { + "node": ">=8" + } + }, + "node_modules/shell-quote": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.8.1.tgz", + "integrity": "sha512-6j1W9l1iAs/4xYBI1SYOVZyFcCis9b4KCLQ8fgAGG07QvzaRLVVRQvAy85yNmmZSjYjg4MWh4gNvlPujU/5LpA==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/side-channel": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.1.0.tgz", + "integrity": "sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw==", + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "object-inspect": "^1.13.3", + "side-channel-list": "^1.0.0", + "side-channel-map": "^1.0.1", + "side-channel-weakmap": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "shebang-regex": { + "node_modules/side-channel-list": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", - "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=", - "dev": true + "resolved": "https://registry.npmjs.org/side-channel-list/-/side-channel-list-1.0.0.tgz", + "integrity": "sha512-FCLHtRD/gnpCiCHEiJLOwdmFP+wzCmDEkc9y7NsYxeF4u7Btsn1ZuwgwJGxImImHicJArLP4R0yX4c2KCrMrTA==", + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "object-inspect": "^1.13.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, - "shell-quote": { - "version": "1.7.3", - "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.7.3.tgz", - "integrity": "sha512-Vpfqwm4EnqGdlsBFNmHhxhElJYrdfcxPThu+ryKS5J8L/fhAwLazFZtq+S+TWZ9ANj2piSQLGj6NQg+lKPmxrw==", - "dev": true + "node_modules/side-channel-map": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/side-channel-map/-/side-channel-map-1.0.1.tgz", + "integrity": "sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA==", + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.5", + "object-inspect": "^1.13.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, - "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" + "node_modules/side-channel-weakmap": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/side-channel-weakmap/-/side-channel-weakmap-1.0.2.tgz", + "integrity": "sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A==", + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.5", + "object-inspect": "^1.13.3", + "side-channel-map": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "signal-exit": { + "node_modules/sift": { + "version": "16.0.1", + "resolved": "https://registry.npmjs.org/sift/-/sift-16.0.1.tgz", + "integrity": "sha512-Wv6BjQ5zbhW7VFefWusVP33T/EM0vYikCaQ2qR8yULbsilAT8/wQaXvuQ3ptGLpoKx+lihJE3y2UTgKDyyNHZQ==" + }, + "node_modules/signal-exit": { "version": "3.0.7", "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", "devOptional": true }, - "simple-concat": { + "node_modules/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==" + "integrity": "sha512-cSFtAPtRhljv69IK0hTVZQ+OfE9nePi/rtJmw5UjHeVyVroEqJXP1sFztKUy1qU+xvz3u/sfYJLa947b7nAN2Q==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "optional": true }, - "simple-get": { + "node_modules/simple-get": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/simple-get/-/simple-get-4.0.1.tgz", "integrity": "sha512-brv7p5WgH0jmQJr1ZDDfKDOSeWWg+OVypG99A/5vYGPqJ6pxiaHLy8nxtFjBA7oMa01ebA9gfh1uMCFqOuXxvA==", - "requires": { + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "optional": true, + "dependencies": { "decompress-response": "^6.0.0", "once": "^1.3.1", "simple-concat": "^1.0.0" } }, - "simplify-js": { + "node_modules/simplify-js": { "version": "1.2.4", "resolved": "https://registry.npmjs.org/simplify-js/-/simplify-js-1.2.4.tgz", "integrity": "sha512-vITfSlwt7h/oyrU42R83mtzFpwYk3+mkH9bOHqq/Qw6n8rtR7aE3NZQ5fbcyCUVVmuMJR6ynsAhOfK2qoah8Jg==" }, - "sinon": { + "node_modules/sinon": { "version": "7.5.0", "resolved": "https://registry.npmjs.org/sinon/-/sinon-7.5.0.tgz", "integrity": "sha512-AoD0oJWerp0/rY9czP/D6hDTTUYGpObhZjMpd7Cl/A6+j0xBE+ayL/ldfggkBXUs0IkvIiM1ljM8+WkOc5k78Q==", + "deprecated": "16.1.1", "dev": true, - "requires": { + "dependencies": { "@sinonjs/commons": "^1.4.0", "@sinonjs/formatio": "^3.2.1", "@sinonjs/samsam": "^3.3.3", @@ -20256,172 +11221,206 @@ "lolex": "^4.2.0", "nise": "^1.5.2", "supports-color": "^5.5.0" - }, - "dependencies": { - "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" - } - } } }, - "sinon-chai": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/sinon-chai/-/sinon-chai-3.3.0.tgz", - "integrity": "sha512-r2JhDY7gbbmh5z3Q62pNbrjxZdOAjpsqW/8yxAZRSqLZqowmfGZPGUZPFf3UX36NLis0cv8VEM5IJh9HgkSOAA==", + "node_modules/sinon-chai": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/sinon-chai/-/sinon-chai-3.7.0.tgz", + "integrity": "sha512-mf5NURdUaSdnatJx3uhoBOrY9dtL19fiOtAdT1Azxg3+lNJFiuN0uzaU3xX1LeAfL17kHQhTAJgpsfhbMJMY2g==", "dev": true, - "requires": {} + "license": "(BSD-2-Clause OR WTFPL)", + "peerDependencies": { + "chai": "^4.0.0", + "sinon": ">=4.0.0" + } }, - "sinon-mongoose": { + "node_modules/sinon-mongoose": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/sinon-mongoose/-/sinon-mongoose-2.3.0.tgz", "integrity": "sha512-d0rrL53wuDDs91GMCFAvQam64IpdVfkaxA4cGLTZfw1d5tTg6+F/D7F080d1n3d1gSHJBZLUf9pGpijC/x7xKQ==", "dev": true, - "requires": {} + "peerDependencies": { + "sinon": "5 - 7" + } }, - "slash": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-4.0.0.tgz", - "integrity": "sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==", - "dev": true + "node_modules/sinon/node_modules/diff": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/diff/-/diff-3.5.0.tgz", + "integrity": "sha512-A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA==", + "dev": true, + "engines": { + "node": ">=0.3.1" + } }, - "sliced": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/sliced/-/sliced-1.0.1.tgz", - "integrity": "sha1-CzpmK10Ewxd7GSa+qCsD+Dei70E=" + "node_modules/sinon/node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/sinon/node_modules/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, + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } }, - "smart-buffer": { + "node_modules/smart-buffer": { "version": "4.2.0", "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.2.0.tgz", "integrity": "sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==", - "dev": true + "engines": { + "node": ">= 6.0.0", + "npm": ">= 3.0.0" + } }, - "socks": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/socks/-/socks-2.7.1.tgz", - "integrity": "sha512-7maUZy1N7uo6+WVEX6psASxtNlKaNVMlGQKkG/63nEDdLOWNbiUMoLK7X4uYoLhQstau72mLgfEWcXcwsaHbYQ==", - "dev": true, - "requires": { - "ip": "^2.0.0", + "node_modules/socks": { + "version": "2.8.3", + "resolved": "https://registry.npmjs.org/socks/-/socks-2.8.3.tgz", + "integrity": "sha512-l5x7VUUWbjVFbafGLxPWkYsHIhEvmF85tbIeFZWc8ZPtoMyybuEhL7Jye/ooC4/d48FgOjSJXgsF/AJPYCW8Zw==", + "dependencies": { + "ip-address": "^9.0.5", "smart-buffer": "^4.2.0" + }, + "engines": { + "node": ">= 10.0.0", + "npm": ">= 3.0.0" } }, - "source-map": { + "node_modules/source-map": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true + "dev": true, + "engines": { + "node": ">=0.10.0" + } }, - "sparse-bitfield": { + "node_modules/sparse-bitfield": { "version": "3.0.3", "resolved": "https://registry.npmjs.org/sparse-bitfield/-/sparse-bitfield-3.0.3.tgz", "integrity": "sha512-kvzhi7vqKTfkh0PZU+2D2PIllw2ymqJKujUcyPMd9Y75Nv4nPbGJZXNhxsgdQab2BmlDct1YnfQCguEvHr7VsQ==", - "dev": true, "optional": true, - "requires": { + "dependencies": { "memory-pager": "^1.0.2" } }, - "spawn-wrap": { + "node_modules/spawn-wrap": { "version": "1.4.3", "resolved": "https://registry.npmjs.org/spawn-wrap/-/spawn-wrap-1.4.3.tgz", "integrity": "sha512-IgB8md0QW/+tWqcavuFgKYR/qIRvJkRLPJDFaoXtLLUaVcCDK0+HeFTkmQHj3eprcYhc+gOl0aEA1w7qZlYezw==", "dev": true, - "requires": { + "dependencies": { "foreground-child": "^1.5.6", "mkdirp": "^0.5.0", "os-homedir": "^1.0.1", "rimraf": "^2.6.2", "signal-exit": "^3.0.2", "which": "^1.3.0" + } + }, + "node_modules/spawn-wrap/node_modules/rimraf": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", + "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", + "deprecated": "Rimraf versions prior to v4 are no longer supported", + "dev": true, + "dependencies": { + "glob": "^7.1.3" }, + "bin": { + "rimraf": "bin.js" + } + }, + "node_modules/spawn-wrap/node_modules/which": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "dev": true, "dependencies": { - "mkdirp": { - "version": "0.5.6", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", - "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", - "dev": true, - "requires": { - "minimist": "^1.2.6" - } - }, - "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" - } - } + "isexe": "^2.0.0" + }, + "bin": { + "which": "bin/which" } }, - "spdx-correct": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz", - "integrity": "sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==", + "node_modules/spdx-correct": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.2.0.tgz", + "integrity": "sha512-kN9dJbvnySHULIluDHy32WHRUu3Og7B9sbY7tsFLctQkIqnMh3hErYgdMjTYuqmcXX+lK5T1lnUt3G7zNswmZA==", "dev": true, - "requires": { + "dependencies": { "spdx-expression-parse": "^3.0.0", "spdx-license-ids": "^3.0.0" } }, - "spdx-exceptions": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz", - "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==", + "node_modules/spdx-exceptions": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.5.0.tgz", + "integrity": "sha512-PiU42r+xO4UbUS1buo3LPJkjlO7430Xn5SVAhdpzzsPHsjbYVflnnFdATgabnLude+Cqu25p6N+g2lw/PFsa4w==", "dev": true }, - "spdx-expression-parse": { + "node_modules/spdx-expression-parse": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", "dev": true, - "requires": { + "dependencies": { "spdx-exceptions": "^2.1.0", "spdx-license-ids": "^3.0.0" } }, - "spdx-license-ids": { - "version": "3.0.11", - "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.11.tgz", - "integrity": "sha512-Ctl2BrFiM0X3MANYgj3CkygxhRmr9mi6xhejbdO960nF6EDJApTYpn0BQnDKlnNBULKiCN1n3w9EBkHK8ZWg+g==", + "node_modules/spdx-license-ids": { + "version": "3.0.18", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.18.tgz", + "integrity": "sha512-xxRs31BqRYHwiMzudOrpSiHtZ8i/GeionCBDSilhYRj+9gIcI8wCZTlXZKu9vZIVqViP3dcp9qE5G6AlIaD+TQ==", "dev": true }, - "splaytree": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/splaytree/-/splaytree-3.1.1.tgz", - "integrity": "sha512-9FaQ18FF0+sZc/ieEeXHt+Jw2eSpUgUtTLDYB/HXKWvhYVyOc7h1hzkn5MMO3GPib9MmXG1go8+OsBBzs/NMww==" + "node_modules/splaytree": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/splaytree/-/splaytree-3.1.2.tgz", + "integrity": "sha512-4OM2BJgC5UzrhVnnJA4BkHKGtjXNzzUfpQjCO8I05xYPsfS/VuQDwjCGGMi8rYQilHEV4j8NBqTFbls/PZEE7A==" }, - "split": { + "node_modules/split": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/split/-/split-1.0.1.tgz", "integrity": "sha512-mTyOoPbrivtXnwnIxZRFYRrPNtEFKlpB2fvjSnCQUiAA6qAZzqwna5envK4uk6OIeP17CsdF3rSBGYVBsU0Tkg==", - "requires": { + "dependencies": { "through": "2" + }, + "engines": { + "node": "*" } }, - "sprintf-js": { + "node_modules/sprintf-js": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=" + "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==" }, - "sshpk": { - "version": "1.17.0", - "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.17.0.tgz", - "integrity": "sha512-/9HIEs1ZXGhSPE8X6Ccm7Nam1z8KcoCqPdI7ecm1N33EzAetWahvQWVqLZtaZQ+IDKX4IyA2o0gBzqIMkAagHQ==", + "node_modules/sshpk": { + "version": "1.18.0", + "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.18.0.tgz", + "integrity": "sha512-2p2KJZTSqQ/I3+HX42EpYOa2l3f8Erv8MWKsy2I9uf4wA7yFIkXRffYdsx86y6z4vHtV8u7g+pPlr8/4ouAxsQ==", "dev": true, - "requires": { + "dependencies": { "asn1": "~0.2.3", "assert-plus": "^1.0.0", "bcrypt-pbkdf": "^1.0.0", @@ -20431,174 +11430,261 @@ "jsbn": "~0.1.0", "safer-buffer": "^2.0.2", "tweetnacl": "~0.14.0" + }, + "bin": { + "sshpk-conv": "bin/sshpk-conv", + "sshpk-sign": "bin/sshpk-sign", + "sshpk-verify": "bin/sshpk-verify" + }, + "engines": { + "node": ">=0.10.0" } }, - "stack-trace": { + "node_modules/sshpk/node_modules/jsbn": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", + "integrity": "sha512-UVU9dibq2JcFWxQPA6KCqj5O42VOmAY3zQUfEKxU0KpTGXwNoCjkX1e13eHNvw/xPynt6pU0rZ1htjWTNTSXsg==", + "dev": true + }, + "node_modules/stack-trace": { "version": "0.0.10", "resolved": "https://registry.npmjs.org/stack-trace/-/stack-trace-0.0.10.tgz", - "integrity": "sha1-VHxws0fo0ytOEI6hoqFZ5f3eGcA=" + "integrity": "sha512-KGzahc7puUKkzyMt+IqAep+TVNbKP+k2Lmwhub39m1AsTSkaDutx56aDCo+HLDzf/D26BIHTJWNiTG1KAJiQCg==", + "engines": { + "node": "*" + } }, - "statuses": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", - "integrity": "sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow=" + "node_modules/statuses": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", + "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", + "license": "MIT", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/stop-iteration-iterator": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/stop-iteration-iterator/-/stop-iteration-iterator-1.0.0.tgz", + "integrity": "sha512-iCGQj+0l0HOdZ2AEeBADlsRC+vsnDsZsbdSiH1yNSjcfKM7fdpCMfqAL/dwF5BLiw/XhRft/Wax6zQbhq2BcjQ==", + "dev": true, + "dependencies": { + "internal-slot": "^1.0.4" + }, + "engines": { + "node": ">= 0.4" + } }, - "stream-combiner": { + "node_modules/stream-combiner": { "version": "0.2.2", "resolved": "https://registry.npmjs.org/stream-combiner/-/stream-combiner-0.2.2.tgz", - "integrity": "sha1-rsjLrBd7Vrb0+kec7YwZEs7lKFg=", - "requires": { + "integrity": "sha512-6yHMqgLYDzQDcAkL+tjJDC5nSNuNIx0vZtRZeiPh7Saef7VHX9H5Ijn9l2VIol2zaNYlYEX6KyuT/237A58qEQ==", + "dependencies": { "duplexer": "~0.1.1", "through": "~2.3.4" } }, - "streamsearch": { + "node_modules/streamsearch": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/streamsearch/-/streamsearch-1.1.0.tgz", - "integrity": "sha512-Mcc5wHehp9aXz1ax6bZUyY5afg9u2rv5cqQI3mRrYkGC8rW2hM02jWuwjtL++LS5qinSyhj2QfLyNsuc+VsExg==" + "integrity": "sha512-Mcc5wHehp9aXz1ax6bZUyY5afg9u2rv5cqQI3mRrYkGC8rW2hM02jWuwjtL++LS5qinSyhj2QfLyNsuc+VsExg==", + "engines": { + "node": ">=10.0.0" + } }, - "streamx": { - "version": "2.15.6", - "resolved": "https://registry.npmjs.org/streamx/-/streamx-2.15.6.tgz", - "integrity": "sha512-q+vQL4AAz+FdfT137VF69Cc/APqUbxy+MDOImRrMvchJpigHj9GksgDU2LYbO9rx7RX6osWgxJB2WxhYv4SZAw==", + "node_modules/streamx": { + "version": "2.22.0", + "resolved": "https://registry.npmjs.org/streamx/-/streamx-2.22.0.tgz", + "integrity": "sha512-sLh1evHOzBy/iWRiR6d1zRcLao4gGZr3C1kzNz4fopCOKJb6xD9ub8Mpi9Mr1R6id5o43S+d93fI48UC5uM9aw==", "dev": true, - "requires": { - "fast-fifo": "^1.1.0", - "queue-tick": "^1.0.1" + "license": "MIT", + "dependencies": { + "fast-fifo": "^1.3.2", + "text-decoder": "^1.1.0" + }, + "optionalDependencies": { + "bare-events": "^2.2.0" } }, - "string_decoder": { - "version": "0.10.31", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", - "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=" + "node_modules/string_decoder": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "dependencies": { + "safe-buffer": "~5.2.0" + } }, - "string-width": { - "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", - "strip-ansi": "^3.0.0" + "node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "devOptional": true, + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" } }, - "string-width-cjs": { - "version": "npm:string-width@4.2.3", + "node_modules/string-width-cjs": { + "name": "string-width", + "version": "4.2.3", "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", "dev": true, - "requires": { + "dependencies": { "emoji-regex": "^8.0.0", "is-fullwidth-code-point": "^3.0.0", "strip-ansi": "^6.0.1" }, - "dependencies": { - "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 - }, - "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 - }, - "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" - } - } + "engines": { + "node": ">=8" } }, - "string.prototype.padend": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/string.prototype.padend/-/string.prototype.padend-3.1.3.tgz", - "integrity": "sha512-jNIIeokznm8SD/TZISQsZKYu7RJyheFNt84DUPrh482GC8RVp2MKqm2O5oBRdGxbDQoXrhhWtPIWQOiy20svUg==", + "node_modules/string.prototype.padend": { + "version": "3.1.6", + "resolved": "https://registry.npmjs.org/string.prototype.padend/-/string.prototype.padend-3.1.6.tgz", + "integrity": "sha512-XZpspuSB7vJWhvJc9DLSlrXl1mcA2BdoY5jjnS135ydXqLoqhs96JjDtCkjJEQHvfqZIp9hBuBMgI589peyx9Q==", "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3", - "es-abstract": "^1.19.1" + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.2", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "string.prototype.trimend": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.4.tgz", - "integrity": "sha512-y9xCjw1P23Awk8EvTpcyL2NIr1j7wJ39f+k6lvRnSMz+mz9CGz9NYPelDk42kOz6+ql8xjfK8oYzy3jAP5QU5A==", + "node_modules/string.prototype.trim": { + "version": "1.2.9", + "resolved": "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.9.tgz", + "integrity": "sha512-klHuCNxiMZ8MlsOihJhJEBJAiMVqU3Z2nEXWfWnIqjN0gEFS9J9+IxKozWWtQGcgoa1WUZzLjKPTr4ZHNFTFxw==", "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3" + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.0", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "string.prototype.trimstart": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.4.tgz", - "integrity": "sha512-jh6e984OBfvxS50tdY2nRZnoC5/mLFKOREQfw8t5yytkoUsJRNxvI/E39qu1sD0OtWI3OC0XgKSmcWwziwYuZw==", + "node_modules/string.prototype.trimend": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.8.tgz", + "integrity": "sha512-p73uL5VCHCO2BZZ6krwwQE3kCzM7NKmis8S//xEC6fQonchbum4eP6kR4DLEjQFO3Wnj3Fuo8NM0kOSjVdHjZQ==", "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3" + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "strip-ansi": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "node_modules/string.prototype.trimstart": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.8.tgz", + "integrity": "sha512-UXSH262CSZY1tfu3G3Secr6uGLCFVPMhIqHjlgCUtCCcgihYc/xKs9djMTMUOb2j1mVSeU8EU6NWc/iQKU6Gfg==", "dev": true, - "requires": { - "ansi-regex": "^2.0.0" + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "strip-ansi-cjs": { - "version": "npm:strip-ansi@6.0.1", + "node_modules/strip-ansi": { + "version": "6.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "requires": { + "devOptional": true, + "dependencies": { "ansi-regex": "^5.0.1" }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-ansi-cjs": { + "name": "strip-ansi", + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, "dependencies": { - "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-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" } }, - "strip-bom": { + "node_modules/strip-bom": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", - "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=", - "dev": true + "integrity": "sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==", + "dev": true, + "engines": { + "node": ">=4" + } }, - "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=" + "node_modules/strip-json-comments": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", + "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", + "dev": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/strnum": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/strnum/-/strnum-1.0.5.tgz", + "integrity": "sha512-J8bbNyKKXl5qYcR36TIO8W3mVGVHrmmxsd5PAItGkmyzwJvybiw2IVq5nqd0i4LSNSkB/sx9VHllbfFdr9k1JA==", + "optional": true }, - "strtok3": { + "node_modules/strtok3": { "version": "6.3.0", "resolved": "https://registry.npmjs.org/strtok3/-/strtok3-6.3.0.tgz", "integrity": "sha512-fZtbhtvI9I48xDSywd/somNqgUHl2L2cstmXCCif0itOf96jeW18MBSyrLuNicYQVkvpOxkZtkzujiTJ9LW5Jw==", - "requires": { + "dependencies": { "@tokenizer/token": "^0.3.0", "peek-readable": "^4.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/Borewit" } }, - "superagent": { + "node_modules/superagent": { "version": "8.1.2", "resolved": "https://registry.npmjs.org/superagent/-/superagent-8.1.2.tgz", "integrity": "sha512-6WTxW1EB6yCxV5VFOIPQruWGHqc3yI7hEmZK6h+pyk69Lk/Ut7rLUY6W/ONF2MjBuGjvmMiIpsrVJ2vjrHlslA==", - "requires": { + "deprecated": "Please upgrade to v9.0.0+ as we have fixed a public vulnerability with formidable dependency. Note that v9.0.0+ requires Node.js v14.18.0+. See https://github.com/ladjs/superagent/pull/1800 for insight. This project is supported and maintained by the team at Forward Email @ https://forwardemail.net", + "license": "MIT", + "dependencies": { "component-emitter": "^1.3.0", "cookiejar": "^2.1.4", "debug": "^4.3.4", @@ -20610,574 +11696,695 @@ "qs": "^6.11.0", "semver": "^7.3.8" }, - "dependencies": { - "debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", - "requires": { - "ms": "2.1.2" - } - }, - "form-data": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz", - "integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==", - "requires": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.8", - "mime-types": "^2.1.12" - } - }, - "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" - } - }, - "mime": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/mime/-/mime-2.6.0.tgz", - "integrity": "sha512-USPkMeET31rOMiarsBNIHZKLGgvKc/LrjofAnBlOttf5ajRvqiRA8QsenbcooctK6d6Ts6aqZXBA+XbkKthiQg==" - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" - }, - "qs": { - "version": "6.11.2", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.11.2.tgz", - "integrity": "sha512-tDNIz22aBzCDxLtVH++VnTfzxlfeK5CbqohpSqpJgj1Wg/cQbStNAz3NuqCs5vV+pjBsK4x4pN9HlVh7rcYRiA==", - "requires": { - "side-channel": "^1.0.4" - } - }, - "semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", - "requires": { - "lru-cache": "^6.0.0" - } - } + "engines": { + "node": ">=6.4.0 <13 || >=14" + } + }, + "node_modules/superagent/node_modules/mime": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-2.6.0.tgz", + "integrity": "sha512-USPkMeET31rOMiarsBNIHZKLGgvKc/LrjofAnBlOttf5ajRvqiRA8QsenbcooctK6d6Ts6aqZXBA+XbkKthiQg==", + "bin": { + "mime": "cli.js" + }, + "engines": { + "node": ">=4.0.0" } }, - "supertest": { - "version": "6.3.3", - "resolved": "https://registry.npmjs.org/supertest/-/supertest-6.3.3.tgz", - "integrity": "sha512-EMCG6G8gDu5qEqRQ3JjjPs6+FYT1a7Hv5ApHvtSghmOFJYtsU5S+pSb6Y2EUeCEY3CmEL3mmQ8YWlPOzQomabA==", + "node_modules/supertest": { + "version": "6.3.4", + "resolved": "https://registry.npmjs.org/supertest/-/supertest-6.3.4.tgz", + "integrity": "sha512-erY3HFDG0dPnhw4U+udPfrzXa4xhSG+n4rxfRuZWCUvjFWwKl+OxWf/7zk50s84/fAAs7vf5QAb9uRa0cCykxw==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "methods": "^1.1.2", - "superagent": "^8.0.5" + "superagent": "^8.1.2" + }, + "engines": { + "node": ">=6.4.0" } }, - "supports-color": { + "node_modules/supports-color": { "version": "7.2.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", "devOptional": true, - "requires": { + "dependencies": { "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" } }, - "supports-preserve-symlinks-flag": { + "node_modules/supports-preserve-symlinks-flag": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", - "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==" + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, - "svg-captcha": { + "node_modules/svg-captcha": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/svg-captcha/-/svg-captcha-1.4.0.tgz", "integrity": "sha512-/fkkhavXPE57zRRCjNqAP3txRCSncpMx3NnNZL7iEoyAtYwUjPhJxW6FQTQPG5UPEmCrbFoXS10C3YdJlW7PDg==", - "requires": { + "dependencies": { "opentype.js": "^0.7.3" + }, + "engines": { + "node": ">=4.x" } }, - "tar-fs": { + "node_modules/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": { + "optional": true, + "dependencies": { "chownr": "^1.1.1", "mkdirp-classic": "^0.5.2", "pump": "^3.0.0", "tar-stream": "^2.1.4" } }, - "tar-stream": { + "node_modules/tar-stream": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-2.2.0.tgz", "integrity": "sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ==", - "requires": { + "dependencies": { "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" - } - }, - "string_decoder": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", - "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", - "requires": { - "safe-buffer": "~5.2.0" - } - } + "engines": { + "node": ">=6" } }, - "test-exclude": { + "node_modules/test-exclude": { "version": "5.2.3", "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-5.2.3.tgz", "integrity": "sha512-M+oxtseCFO3EDtAaGH7iiej3CBkzXqFMbzqYAACdzKui4eZA+pq3tZEwChvOdNfa7xxy8BfbmgJSIr43cC/+2g==", "dev": true, - "requires": { + "dependencies": { "glob": "^7.1.3", "minimatch": "^3.0.4", "read-pkg-up": "^4.0.0", "require-main-filename": "^2.0.0" }, + "engines": { + "node": ">=6" + } + }, + "node_modules/test-exclude/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, "dependencies": { - "find-up": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", - "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", - "dev": true, - "requires": { - "locate-path": "^3.0.0" - } - }, - "locate-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", - "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", - "dev": true, - "requires": { - "p-locate": "^3.0.0", - "path-exists": "^3.0.0" - } - }, - "p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", - "dev": true, - "requires": { - "p-try": "^2.0.0" - } - }, - "p-locate": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", - "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", - "dev": true, - "requires": { - "p-limit": "^2.0.0" - } - }, - "read-pkg-up": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-4.0.0.tgz", - "integrity": "sha512-6etQSH7nJGsK0RbG/2TeDzZFa8shjQ1um+SwQQ5cwKy0dhSXdOncEhb1CPpvQG4h7FyOV6EB6YlV0yJvZQNAkA==", - "dev": true, - "requires": { - "find-up": "^3.0.0", - "read-pkg": "^3.0.0" - } - } + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/test-exclude/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/text-decoder": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/text-decoder/-/text-decoder-1.2.3.tgz", + "integrity": "sha512-3/o9z3X0X0fTupwsYvR03pJ/DjWuqqrfwBgTQzdWDiQSm9KitAyz/9WqsT2JQW7KV2m+bC2ol/zqpW37NHxLaA==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "b4a": "^1.6.4" } }, - "text-table": { + "node_modules/text-table": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", - "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=", + "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==", "dev": true }, - "through": { + "node_modules/through": { "version": "2.3.8", "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", - "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=" + "integrity": "sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==" }, - "tiny-inflate": { + "node_modules/tiny-inflate": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/tiny-inflate/-/tiny-inflate-1.0.3.tgz", "integrity": "sha512-pkY1fj1cKHb2seWDy0B16HeWyczlJA9/WW3u3c4z/NiWDsO3DOU5D7nhTLE9CF0yXv/QZFY7sEJmj24dK+Rrqw==" }, - "tmp": { + "node_modules/tmp": { "version": "0.0.33", "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", "optional": true, - "requires": { + "dependencies": { "os-tmpdir": "~1.0.2" + }, + "engines": { + "node": ">=0.6.0" + } + }, + "node_modules/to-fast-properties": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", + "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==", + "engines": { + "node": ">=4" } }, - "to-regex-range": { + "node_modules/to-regex-range": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", "dev": true, - "requires": { + "dependencies": { "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" } }, - "toidentifier": { + "node_modules/toidentifier": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz", - "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==" + "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==", + "license": "MIT", + "engines": { + "node": ">=0.6" + } }, - "token-stream": { + "node_modules/token-stream": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/token-stream/-/token-stream-1.0.0.tgz", "integrity": "sha512-VSsyNPPW74RpHwR8Fc21uubwHY7wMDeJLys2IX5zJNih+OnAnaifKHo+1LHT7DAdloQ7apeaaWg8l7qnf/TnEg==" }, - "token-types": { + "node_modules/token-types": { "version": "4.2.1", "resolved": "https://registry.npmjs.org/token-types/-/token-types-4.2.1.tgz", "integrity": "sha512-6udB24Q737UD/SDsKAHI9FCRP7Bqc9D/MQUV02ORQg5iskjtLJlZJNdN4kKtcdtwCeWIwIHDGaUsTsCCAa8sFQ==", - "requires": { + "dependencies": { "@tokenizer/token": "^0.3.0", "ieee754": "^1.2.1" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/Borewit" } }, - "tough-cookie": { + "node_modules/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==", "dev": true, - "requires": { + "dependencies": { "psl": "^1.1.28", "punycode": "^2.1.1" + }, + "engines": { + "node": ">=0.8" } }, - "tr46": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", - "integrity": "sha1-gYT9NH2snNwYWZLzpmIuFLnZq2o=" - }, - "ts-api-utils": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-1.0.3.tgz", - "integrity": "sha512-wNMeqtMz5NtwpT/UZGY5alT+VoKdSsOOP/kqHFcUW1P/VRhH2wJ48+DN2WwUliNbQ976ETwDL0Ifd2VVvgonvg==", - "dev": true, - "requires": {} + "node_modules/tr46": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-3.0.0.tgz", + "integrity": "sha512-l7FvfAHlcmulp8kr+flpQZmVwtu7nfRV7NZujtN0OqES8EL4O4e0qqzL0DC5gAvx/ZC/9lk6rhcUwYvkBnBnYA==", + "dependencies": { + "punycode": "^2.1.1" + }, + "engines": { + "node": ">=12" + } }, - "ts-mockito": { - "version": "2.6.1", - "resolved": "https://registry.npmjs.org/ts-mockito/-/ts-mockito-2.6.1.tgz", - "integrity": "sha512-qU9m/oEBQrKq5hwfbJ7MgmVN5Gu6lFnIGWvpxSjrqq6YYEVv+RwVFWySbZMBgazsWqv6ctAyVBpo9TmAxnOEKw==", + "node_modules/ts-api-utils": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-1.3.0.tgz", + "integrity": "sha512-UQMIo7pb8WRomKR1/+MFVLTroIvDVtMX3K6OUir8ynLyzB8Jeriont2bTAtmNPa1ekAgN7YPDyf6V+ygrdU+eQ==", "dev": true, - "requires": { - "lodash": "^4.17.5" + "engines": { + "node": ">=16" + }, + "peerDependencies": { + "typescript": ">=4.2.0" } }, - "tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "optional": true + "node_modules/tslib": { + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.3.tgz", + "integrity": "sha512-xNvxJEOUiWPGhUuUdQgAJPKOOJfGnIyKySOc09XkKsgdUV/3E2zvwZYdejjmRgPCgcym1juLH3226yA7sEFJKQ==", + "devOptional": true }, - "tunnel-agent": { + "node_modules/tunnel-agent": { "version": "0.6.0", "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", - "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", - "requires": { + "integrity": "sha512-McnNiV1l8RYeY8tBgEpuodCC1mLUdbSN+CYBL7kJsJNInOP8UjDDEwdk6Mw60vdLLrr5NHKZhMAOSrR2NZuQ+w==", + "devOptional": true, + "dependencies": { "safe-buffer": "^5.0.1" + }, + "engines": { + "node": "*" } }, - "tweetnacl": { + "node_modules/tweetnacl": { "version": "0.14.5", "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", - "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=", + "integrity": "sha512-KXXFFdAbFXY4geFIwoyNK+f5Z1b7swfXABfL7HXCmoIWMKU3dmS26672A4EeQtDzLKy7SXmfBu51JolvEKwtGA==", "dev": true }, - "type-check": { + "node_modules/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": { + "dependencies": { "prelude-ls": "^1.2.1" + }, + "engines": { + "node": ">= 0.8.0" } }, - "type-detect": { + "node_modules/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==", - "dev": true + "dev": true, + "engines": { + "node": ">=4" + } }, - "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==", - "optional": true + "node_modules/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, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } }, - "type-is": { + "node_modules/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": { + "dependencies": { "media-typer": "0.3.0", "mime-types": "~2.1.24" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/typed-array-buffer": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/typed-array-buffer/-/typed-array-buffer-1.0.2.tgz", + "integrity": "sha512-gEymJYKZtKXzzBzM4jqa9w6Q1Jjm7x2d+sh19AdsD4wqnMPDYyvwpsIc2Q/835kHuo3BEQ7CjelGhfTsoBb2MQ==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.7", + "es-errors": "^1.3.0", + "is-typed-array": "^1.1.13" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/typed-array-byte-length": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/typed-array-byte-length/-/typed-array-byte-length-1.0.1.tgz", + "integrity": "sha512-3iMJ9q0ao7WE9tWcaYKIptkNBuOIcZCCT0d4MRvuuH88fEoEH62IuQe0OtraD3ebQEoTRk8XCBoknUNc1Y67pw==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.7", + "for-each": "^0.3.3", + "gopd": "^1.0.1", + "has-proto": "^1.0.3", + "is-typed-array": "^1.1.13" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/typed-array-byte-offset": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/typed-array-byte-offset/-/typed-array-byte-offset-1.0.2.tgz", + "integrity": "sha512-Ous0vodHa56FviZucS2E63zkgtgrACj7omjwd/8lTEMEPFFyjfixMZ1ZXenpgCFBBt4EC1J2XsyVS2gkG0eTFA==", + "dev": true, + "dependencies": { + "available-typed-arrays": "^1.0.7", + "call-bind": "^1.0.7", + "for-each": "^0.3.3", + "gopd": "^1.0.1", + "has-proto": "^1.0.3", + "is-typed-array": "^1.1.13" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/typed-array-length": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/typed-array-length/-/typed-array-length-1.0.6.tgz", + "integrity": "sha512-/OxDN6OtAk5KBpGb28T+HZc2M+ADtvRxXrKKbUwtsLgdoxgX13hyy7ek6bFRl5+aBs2yZzB0c4CnQfAtVypW/g==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.7", + "for-each": "^0.3.3", + "gopd": "^1.0.1", + "has-proto": "^1.0.3", + "is-typed-array": "^1.1.13", + "possible-typed-array-names": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "typedarray": { + "node_modules/typedarray": { "version": "0.0.6", "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", - "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=" + "integrity": "sha512-/aCDEGatGvZ2BIk+HmLf4ifCJFwvKFNb9/JeZPMulfgFracn9QFcAf5GO8B/mweUjSoblS5In0cWhqpfs/5PQA==" }, - "typescript": { - "version": "4.6.4", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.6.4.tgz", - "integrity": "sha512-9ia/jWHIEbo49HfjrLGfKbZSuWo9iTMwXO+Ca3pRsSpbsMbc7/IU8NKdCZVRRBafVPGnoJeFL76ZOAA84I9fEg==", - "dev": true + "node_modules/typescript": { + "version": "4.9.5", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.9.5.tgz", + "integrity": "sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g==", + "dev": true, + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=4.2.0" + } }, - "uid-safe": { + "node_modules/uid-safe": { "version": "2.1.5", "resolved": "https://registry.npmjs.org/uid-safe/-/uid-safe-2.1.5.tgz", "integrity": "sha512-KPHm4VL5dDXKz01UuEd88Df+KzynaohSL9fBh096KWAxSKZQDI2uBrVqtvRM4rwrIrRRKsdLNML/lnaaVSRioA==", - "requires": { + "dependencies": { "random-bytes": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" } }, - "uid2": { + "node_modules/uid2": { "version": "0.0.4", "resolved": "https://registry.npmjs.org/uid2/-/uid2-0.0.4.tgz", "integrity": "sha512-IevTus0SbGwQzYh3+fRsAMTVVPOoIVufzacXcHPmdlle1jUpq7BRL+mw3dgeLanvGZdwwbWhRV6XrcFNdBmjWA==" }, - "unbox-primitive": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.1.tgz", - "integrity": "sha512-tZU/3NqK3dA5gpE1KtyiJUrEB0lxnGkMFHptJ7q6ewdZ8s12QrODwNbhIJStmJkd1QDXa1NRA8aF2A1zk/Ypyw==", + "node_modules/unbox-primitive": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.2.tgz", + "integrity": "sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==", "dev": true, - "requires": { - "function-bind": "^1.1.1", - "has-bigints": "^1.0.1", - "has-symbols": "^1.0.2", + "dependencies": { + "call-bind": "^1.0.2", + "has-bigints": "^1.0.2", + "has-symbols": "^1.0.3", "which-boxed-primitive": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "underscore": { - "version": "1.8.3", - "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.8.3.tgz", - "integrity": "sha1-Tz+1OxBuYJf8+ctBCfKl6b36UCI=" + "node_modules/underscore": { + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.12.1.tgz", + "integrity": "sha512-hEQt0+ZLDVUMhebKxL4x1BTtDY7bavVofhZ9KZ4aI26X9SRaE+Y3m83XUL1UP2jn8ynjndwCCpEHdUG+9pP1Tw==", + "license": "MIT" + }, + "node_modules/undici-types": { + "version": "5.26.5", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-5.26.5.tgz", + "integrity": "sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==", + "license": "MIT" }, - "uniqid": { + "node_modules/uniqid": { "version": "5.4.0", "resolved": "https://registry.npmjs.org/uniqid/-/uniqid-5.4.0.tgz", - "integrity": "sha512-38JRbJ4Fj94VmnC7G/J/5n5SC7Ab46OM5iNtSstB/ko3l1b5g7ALt4qzHFgGciFkyiRNtDXtLNb+VsxtMSE77A==" + "integrity": "sha512-38JRbJ4Fj94VmnC7G/J/5n5SC7Ab46OM5iNtSstB/ko3l1b5g7ALt4qzHFgGciFkyiRNtDXtLNb+VsxtMSE77A==", + "license": "MIT" }, - "universalify": { + "node_modules/universalify": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", - "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==" + "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", + "engines": { + "node": ">= 4.0.0" + } }, - "unpipe": { + "node_modules/unpipe": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", - "integrity": "sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw=" + "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==", + "engines": { + "node": ">= 0.8" + } }, - "uri-js": { + "node_modules/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": { + "dependencies": { "punycode": "^2.1.0" } }, - "util": { - "version": "0.12.4", - "resolved": "https://registry.npmjs.org/util/-/util-0.12.4.tgz", - "integrity": "sha512-bxZ9qtSlGUWSOy9Qa9Xgk11kSslpuZwaxCg4sNIDj6FLucDab2JxnHwyNTCpHMtK1MjoQiWQ6DiUMZYbSrO+Sw==", - "dev": true, - "requires": { - "inherits": "^2.0.3", - "is-arguments": "^1.0.4", - "is-generator-function": "^1.0.7", - "is-typed-array": "^1.1.3", - "safe-buffer": "^5.1.2", - "which-typed-array": "^1.1.2" - } - }, - "util-deprecate": { + "node_modules/util-deprecate": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" + "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==" }, - "utils-merge": { + "node_modules/utils-merge": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", - "integrity": "sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM=" + "integrity": "sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==", + "engines": { + "node": ">= 0.4.0" + } }, - "uuid": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", - "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==", - "dev": true + "node_modules/uuid": { + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-9.0.1.tgz", + "integrity": "sha512-b+1eJOlsR9K8HJpow9Ok3fiWOWSIcIzXodvv0rQjVoOVNpWMpxf1wZNpt4y9h10odCNrqnYp1OBzRktckBe3sA==", + "funding": [ + "https://github.com/sponsors/broofa", + "https://github.com/sponsors/ctavan" + ], + "optional": true, + "bin": { + "uuid": "dist/bin/uuid" + } }, - "validate-npm-package-license": { + "node_modules/validate-npm-package-license": { "version": "3.0.4", "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", "dev": true, - "requires": { + "dependencies": { "spdx-correct": "^3.0.0", "spdx-expression-parse": "^3.0.0" } }, - "vary": { + "node_modules/vary": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", - "integrity": "sha1-IpnwLG3tMNSllhsLn3RSShj2NPw=" + "integrity": "sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==", + "engines": { + "node": ">= 0.8" + } }, - "vasync": { + "node_modules/vasync": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/vasync/-/vasync-2.2.1.tgz", "integrity": "sha512-Hq72JaTpcTFdWiNA4Y22Amej2GH3BFmBaKPPlDZ4/oC8HNn2ISHLkFrJU4Ds8R3jcUi7oo5Y9jcMHKjES+N9wQ==", - "requires": { + "engines": [ + "node >=0.6.0" + ], + "dependencies": { "verror": "1.10.0" - }, + } + }, + "node_modules/vasync/node_modules/verror": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", + "integrity": "sha512-ZZKSmDAEFOijERBLkmYfJ+vmk3w+7hOLYDNkRCuRuMJGEmqYNCNLyBBFwWKVMhfwaEF3WOd0Zlw86U/WC/+nYw==", + "engines": [ + "node >=0.6.0" + ], "dependencies": { - "core-util-is": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", - "integrity": "sha512-3lqz5YjWTYnW6dlDa5TLaTCcShfar1e40rmcJVwCBJC6mWlFuj0eCHIElmG1g5kyuJ/GD+8Wn4FFCcz4gJPfaQ==" - }, - "verror": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", - "integrity": "sha512-ZZKSmDAEFOijERBLkmYfJ+vmk3w+7hOLYDNkRCuRuMJGEmqYNCNLyBBFwWKVMhfwaEF3WOd0Zlw86U/WC/+nYw==", - "requires": { - "assert-plus": "^1.0.0", - "core-util-is": "1.0.2", - "extsprintf": "^1.2.0" - } - } + "assert-plus": "^1.0.0", + "core-util-is": "1.0.2", + "extsprintf": "^1.2.0" } }, - "verror": { + "node_modules/verror": { "version": "1.10.1", "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.1.tgz", "integrity": "sha512-veufcmxri4e3XSrT0xwfUR7kguIkaxBeosDg00yDWhk49wdwkSUrvvsm7nc75e1PUyvIeZj6nS8VQRYz2/S4Xg==", - "requires": { + "dependencies": { "assert-plus": "^1.0.0", "core-util-is": "1.0.2", "extsprintf": "^1.2.0" }, - "dependencies": { - "core-util-is": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", - "integrity": "sha512-3lqz5YjWTYnW6dlDa5TLaTCcShfar1e40rmcJVwCBJC6mWlFuj0eCHIElmG1g5kyuJ/GD+8Wn4FFCcz4gJPfaQ==" - } + "engines": { + "node": ">=0.6.0" } }, - "void-elements": { + "node_modules/void-elements": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/void-elements/-/void-elements-3.1.0.tgz", - "integrity": "sha512-Dhxzh5HZuiHQhbvTW9AMetFfBHDMYpo23Uo9btPXgdYP+3T5S+p+jgNy7spra+veYhBP2dCSgxR/i2Y02h5/6w==" + "integrity": "sha512-Dhxzh5HZuiHQhbvTW9AMetFfBHDMYpo23Uo9btPXgdYP+3T5S+p+jgNy7spra+veYhBP2dCSgxR/i2Y02h5/6w==", + "engines": { + "node": ">=0.10.0" + } }, - "walk": { - "version": "2.3.4", - "resolved": "https://registry.npmjs.org/walk/-/walk-2.3.4.tgz", - "integrity": "sha1-Bs4VQVNTE+iswo6S60Jem2T0xQA=", - "requires": { - "foreachasync": "3.x" + "node_modules/walk": { + "version": "2.3.15", + "resolved": "https://registry.npmjs.org/walk/-/walk-2.3.15.tgz", + "integrity": "sha512-4eRTBZljBfIISK1Vnt69Gvr2w/wc3U6Vtrw7qiN5iqYJPH7LElcYh/iU4XWhdCy2dZqv1ToMyYlybDylfG/5Vg==", + "license": "(MIT OR Apache-2.0)", + "dependencies": { + "foreachasync": "^3.0.0" } }, - "webidl-conversions": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", - "integrity": "sha1-JFNCdeKnvGvnvIZhHMFq4KVlSHE=" + "node_modules/webidl-conversions": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-7.0.0.tgz", + "integrity": "sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==", + "engines": { + "node": ">=12" + } }, - "webworkify": { + "node_modules/webworkify": { "version": "1.5.0", "resolved": "https://registry.npmjs.org/webworkify/-/webworkify-1.5.0.tgz", "integrity": "sha512-AMcUeyXAhbACL8S2hqqdqOLqvJ8ylmIbNwUIqQujRSouf4+eUFaXbG6F1Rbu+srlJMmxQWsiU7mOJi0nMBfM1g==" }, - "whatwg-url": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", - "integrity": "sha1-lmRU6HZUYuN2RNNib2dCzotwll0=", - "requires": { - "tr46": "~0.0.3", - "webidl-conversions": "^3.0.0" + "node_modules/whatwg-url": { + "version": "11.0.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-11.0.0.tgz", + "integrity": "sha512-RKT8HExMpoYx4igMiVMY83lN6UeITKJlBQ+vR/8ZJ8OCdSiN3RwCq+9gH0+Xzj0+5IrM6i4j/6LuvzbZIQgEcQ==", + "dependencies": { + "tr46": "^3.0.0", + "webidl-conversions": "^7.0.0" + }, + "engines": { + "node": ">=12" } }, - "which": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", - "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", - "requires": { + "node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "dependencies": { "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" } }, - "which-boxed-primitive": { + "node_modules/which-boxed-primitive": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz", "integrity": "sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==", "dev": true, - "requires": { + "dependencies": { "is-bigint": "^1.0.1", "is-boolean-object": "^1.1.0", "is-number-object": "^1.0.4", "is-string": "^1.0.5", "is-symbol": "^1.0.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "which-collection": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/which-collection/-/which-collection-1.0.1.tgz", - "integrity": "sha512-W8xeTUwaln8i3K/cY1nGXzdnVZlidBcagyNFtBdD5kxnb4TvGKR7FfSIS3mYpwWS1QUCutfKz8IY8RjftB0+1A==", + "node_modules/which-collection": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/which-collection/-/which-collection-1.0.2.tgz", + "integrity": "sha512-K4jVyjnBdgvc86Y6BkaLZEN933SwYOuBFkdmBu9ZfkcAbdVbpITnDmjvZ/aQjRXQrv5EPkTnD1s39GiiqbngCw==", "dev": true, - "requires": { - "is-map": "^2.0.1", - "is-set": "^2.0.1", - "is-weakmap": "^2.0.1", - "is-weakset": "^2.0.1" + "dependencies": { + "is-map": "^2.0.3", + "is-set": "^2.0.3", + "is-weakmap": "^2.0.2", + "is-weakset": "^2.0.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "which-module": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", - "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=", + "node_modules/which-module": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.1.tgz", + "integrity": "sha512-iBdZ57RDvnOR9AGBhML2vFZf7h8vmBjhoaZqODJBFWHVtKkDmKuHai3cx5PgVMrX5YDNp27AofYbAwctSS+vhQ==", "dev": true }, - "which-typed-array": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.7.tgz", - "integrity": "sha512-vjxaB4nfDqwKI0ws7wZpxIlde1XrLX5uB0ZjpfshgmapJMD7jJWhZI+yToJTqaFByF0eNBcYxbjmCzoRP7CfEw==", + "node_modules/which-typed-array": { + "version": "1.1.15", + "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.15.tgz", + "integrity": "sha512-oV0jmFtUky6CXfkqehVvBP/LSWJ2sy4vWMioiENyJLePrBO/yKyV9OyJySfAKosh+RYkIl5zJCNZ8/4JncrpdA==", "dev": true, - "requires": { - "available-typed-arrays": "^1.0.5", - "call-bind": "^1.0.2", - "es-abstract": "^1.18.5", - "foreach": "^2.0.5", - "has-tostringtag": "^1.0.0", - "is-typed-array": "^1.1.7" + "dependencies": { + "available-typed-arrays": "^1.0.7", + "call-bind": "^1.0.7", + "for-each": "^0.3.3", + "gopd": "^1.0.1", + "has-tostringtag": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "winston": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/winston/-/winston-1.0.1.tgz", - "integrity": "sha1-TG9aEWfrxRasKbduTq24c8FSiaQ=", - "requires": { - "async": "0.9.x", + "node_modules/winston": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/winston/-/winston-1.1.2.tgz", + "integrity": "sha512-rl9hA8se2gjdYI6nP1f+kjjSCFCZrObIJB/eXOcMdzWxxcYp7exyc5Bs248fwLT+wHA/+aK0VtBlPHL8qO0T0w==", + "license": "MIT", + "dependencies": { + "async": "~1.0.0", "colors": "1.0.x", "cycle": "1.0.x", "eyes": "0.1.x", @@ -21185,473 +12392,376 @@ "pkginfo": "0.3.x", "stack-trace": "0.0.x" }, - "dependencies": { - "async": { - "version": "0.9.2", - "resolved": "https://registry.npmjs.org/async/-/async-0.9.2.tgz", - "integrity": "sha1-rqdNXmHB+JlhO/ZL2mbUx48v0X0=" - } + "engines": { + "node": ">= 0.8.0" } }, - "with": { + "node_modules/winston/node_modules/async": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/async/-/async-1.0.0.tgz", + "integrity": "sha512-5mO7DX4CbJzp9zjaFXusQQ4tzKJARjNB1Ih1pVBi8wkbmXy/xzIDgEMXxWePLzt2OdFwaxfneIlT1nCiXubrPQ==", + "license": "MIT" + }, + "node_modules/with": { "version": "7.0.2", "resolved": "https://registry.npmjs.org/with/-/with-7.0.2.tgz", "integrity": "sha512-RNGKj82nUPg3g5ygxkQl0R937xLyho1J24ItRCBTr/m1YnZkzJy1hUiHUJrc/VlsDQzsCnInEGSg3bci0Lmd4w==", - "requires": { + "dependencies": { "@babel/parser": "^7.9.6", "@babel/types": "^7.9.6", "assert-never": "^1.2.1", "babel-walk": "3.0.0-canary-5" + }, + "engines": { + "node": ">= 10.0.0" } }, - "wkt-parser": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/wkt-parser/-/wkt-parser-1.3.2.tgz", - "integrity": "sha512-A26BOOo7sHAagyxG7iuRhnKMO7Q3mEOiOT4oGUmohtN/Li5wameeU4S6f8vWw6NADTVKljBs8bzA8JPQgSEMVQ==" + "node_modules/wkt-parser": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/wkt-parser/-/wkt-parser-1.3.3.tgz", + "integrity": "sha512-ZnV3yH8/k58ZPACOXeiHaMuXIiaTk1t0hSUVisbO0t4RjA5wPpUytcxeyiN2h+LZRrmuHIh/1UlrR9e7DHDvTw==" }, - "wkx": { - "version": "0.4.8", - "resolved": "https://registry.npmjs.org/wkx/-/wkx-0.4.8.tgz", - "integrity": "sha512-ikPXMM9IR/gy/LwiOSqWlSL3X/J5uk9EO2hHNRXS41eTLXaUFEVw9fn/593jW/tE5tedNg8YjT5HkCa4FqQZyQ==", - "requires": { + "node_modules/wkx": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/wkx/-/wkx-0.5.0.tgz", + "integrity": "sha512-Xng/d4Ichh8uN4l0FToV/258EjMGU9MGcA0HV2d9B/ZpZB3lqQm7nkOdZdm5GhKtLLhAE7PiVQwN4eN+2YJJUg==", + "license": "MIT", + "dependencies": { "@types/node": "*" } }, - "wms-capabilities": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/wms-capabilities/-/wms-capabilities-0.4.1.tgz", - "integrity": "sha512-BfGzjDtF3GdWRFvySqf8y9EU1gBIzAd6zIlg+J6q9rYxiqz+YMAmSOHnMPRNOuP2VGPvcNkxXZdxBtMO0D652g==", - "requires": { - "minimist": "^1.2.0" + "node_modules/wms-capabilities": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/wms-capabilities/-/wms-capabilities-0.6.0.tgz", + "integrity": "sha512-yTbtesuSyKkHhw1TUX4VklXEkbQByc+hyo7TWq1sGjBA6tQ+XN32w546TPDTzROuwFTE/Dcq5F5FN4aA9nesaQ==", + "license": "BSD-2-Clause", + "bin": { + "wmscapabilities": "bin/wmscapabilities" } }, - "wrap-ansi": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-5.1.0.tgz", - "integrity": "sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q==", + "node_modules/word-wrap": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.5.tgz", + "integrity": "sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==", "dev": true, - "requires": { - "ansi-styles": "^3.2.0", - "string-width": "^3.0.0", - "strip-ansi": "^5.0.0" - }, - "dependencies": { - "ansi-regex": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.1.tgz", - "integrity": "sha512-ILlv4k/3f6vfQ4OoP2AGvirOktlQ98ZEL1k9FaQjxa3L1abBgbuTDAdPOpvbGncC0BTVQrl+OM8xZGK6tWXt7g==", - "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" - } - }, - "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 - }, - "emoji-regex": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", - "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", - "dev": true - }, - "string-width": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", - "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", - "dev": true, - "requires": { - "emoji-regex": "^7.0.1", - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^5.1.0" - } - }, - "strip-ansi": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", - "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", - "dev": true, - "requires": { - "ansi-regex": "^4.1.0" - } - } + "engines": { + "node": ">=0.10.0" } }, - "wrap-ansi-cjs": { - "version": "npm:wrap-ansi@7.0.0", + "node_modules/workerpool": { + "version": "6.5.1", + "resolved": "https://registry.npmjs.org/workerpool/-/workerpool-6.5.1.tgz", + "integrity": "sha512-Fs4dNYcsdpYSAfVxhnl1L5zTksjvOJxtC5hzMNl+1t9B8hTJTdKDyZ5ju7ztgPy+ft9tBFXoOlDNiOT9WUXZlA==", + "dev": true, + "license": "Apache-2.0" + }, + "node_modules/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": { + "dependencies": { "ansi-styles": "^4.0.0", "string-width": "^4.1.0", "strip-ansi": "^6.0.0" }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/wrap-ansi-cjs": { + "name": "wrap-ansi", + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dev": true, "dependencies": { - "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 - }, - "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.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" - } - }, - "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" - } - } + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" } }, - "wrappy": { + "node_modules/wrappy": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==" }, - "write-file-atomic": { + "node_modules/write-file-atomic": { "version": "2.4.3", "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-2.4.3.tgz", "integrity": "sha512-GaETH5wwsX+GcnzhPgKcKjJ6M2Cq3/iZp1WyY/X1CSqrW+jVNM9Y7D8EC2sM4ZG/V8wZlSniJnCKWPmBYAucRQ==", "dev": true, - "requires": { + "dependencies": { "graceful-fs": "^4.1.11", "imurmurhash": "^0.1.4", "signal-exit": "^3.0.2" } }, - "wtfnode": { - "version": "0.8.4", - "resolved": "https://registry.npmjs.org/wtfnode/-/wtfnode-0.8.4.tgz", - "integrity": "sha512-64GEKtMt/MUBuAm+8kHqP74ojjafzu00aT0JKsmkIwYmjRQ/odO0yhbzKLm+Z9v1gMla+8dwITRKzTAlHsB+Og==", - "dev": true - }, - "xml-crypto": { + "node_modules/xml-crypto": { "version": "3.2.0", "resolved": "https://registry.npmjs.org/xml-crypto/-/xml-crypto-3.2.0.tgz", "integrity": "sha512-qVurBUOQrmvlgmZqIVBqmb06TD2a/PpEUfFPgD7BuBfjmoH4zgkqaWSIJrnymlCvM2GGt9x+XtJFA+ttoAufqg==", - "requires": { + "dependencies": { "@xmldom/xmldom": "^0.8.8", "xpath": "0.0.32" }, - "dependencies": { - "xpath": { - "version": "0.0.32", - "resolved": "https://registry.npmjs.org/xpath/-/xpath-0.0.32.tgz", - "integrity": "sha512-rxMJhSIoiO8vXcWvSifKqhvV96GjiD5wYb8/QHdoRyQvraTpp4IEv944nhGausZZ3u7dhQXteZuZbaqfpB7uYw==" - } + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/xml-crypto/node_modules/@xmldom/xmldom": { + "version": "0.8.10", + "resolved": "https://registry.npmjs.org/@xmldom/xmldom/-/xmldom-0.8.10.tgz", + "integrity": "sha512-2WALfTl4xo2SkGCYRt6rDTFfk9R1czmBvUQy12gK2KuRKIpWEhcbbzy8EZXtz/jkRqHX8bFEc6FC1HjX4TUWYw==", + "license": "MIT", + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/xml-crypto/node_modules/xpath": { + "version": "0.0.32", + "resolved": "https://registry.npmjs.org/xpath/-/xpath-0.0.32.tgz", + "integrity": "sha512-rxMJhSIoiO8vXcWvSifKqhvV96GjiD5wYb8/QHdoRyQvraTpp4IEv944nhGausZZ3u7dhQXteZuZbaqfpB7uYw==", + "engines": { + "node": ">=0.6.0" } }, - "xml-encryption": { + "node_modules/xml-encryption": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/xml-encryption/-/xml-encryption-3.0.2.tgz", "integrity": "sha512-VxYXPvsWB01/aqVLd6ZMPWZ+qaj0aIdF+cStrVJMcFj3iymwZeI0ABzB3VqMYv48DkSpRhnrXqTUkR34j+UDyg==", - "requires": { + "dependencies": { "@xmldom/xmldom": "^0.8.5", "escape-html": "^1.0.3", "xpath": "0.0.32" }, - "dependencies": { - "xpath": { - "version": "0.0.32", - "resolved": "https://registry.npmjs.org/xpath/-/xpath-0.0.32.tgz", - "integrity": "sha512-rxMJhSIoiO8vXcWvSifKqhvV96GjiD5wYb8/QHdoRyQvraTpp4IEv944nhGausZZ3u7dhQXteZuZbaqfpB7uYw==" - } + "engines": { + "node": ">=12" + } + }, + "node_modules/xml-encryption/node_modules/@xmldom/xmldom": { + "version": "0.8.10", + "resolved": "https://registry.npmjs.org/@xmldom/xmldom/-/xmldom-0.8.10.tgz", + "integrity": "sha512-2WALfTl4xo2SkGCYRt6rDTFfk9R1czmBvUQy12gK2KuRKIpWEhcbbzy8EZXtz/jkRqHX8bFEc6FC1HjX4TUWYw==", + "license": "MIT", + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/xml-encryption/node_modules/xpath": { + "version": "0.0.32", + "resolved": "https://registry.npmjs.org/xpath/-/xpath-0.0.32.tgz", + "integrity": "sha512-rxMJhSIoiO8vXcWvSifKqhvV96GjiD5wYb8/QHdoRyQvraTpp4IEv944nhGausZZ3u7dhQXteZuZbaqfpB7uYw==", + "engines": { + "node": ">=0.6.0" } }, - "xml2js": { + "node_modules/xml2js": { "version": "0.5.0", "resolved": "https://registry.npmjs.org/xml2js/-/xml2js-0.5.0.tgz", "integrity": "sha512-drPFnkQJik/O+uPKpqSgr22mpuFHqKdbS835iAQrUC73L2F5WkboIRd63ai/2Yg6I1jzifPFKH2NTK+cfglkIA==", - "requires": { + "dependencies": { "sax": ">=0.6.0", "xmlbuilder": "~11.0.0" }, - "dependencies": { - "xmlbuilder": { - "version": "11.0.1", - "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-11.0.1.tgz", - "integrity": "sha512-fDlsI/kFEx7gLvbecc0/ohLG50fugQp8ryHzMTuW9vSa1GJ0XYWKnhsUx7oie3G98+r56aTQIUB4kht42R3JvA==" - } + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/xml2js/node_modules/xmlbuilder": { + "version": "11.0.1", + "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-11.0.1.tgz", + "integrity": "sha512-fDlsI/kFEx7gLvbecc0/ohLG50fugQp8ryHzMTuW9vSa1GJ0XYWKnhsUx7oie3G98+r56aTQIUB4kht42R3JvA==", + "engines": { + "node": ">=4.0" } }, - "xmlbuilder": { + "node_modules/xmlbuilder": { "version": "15.1.1", "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-15.1.1.tgz", - "integrity": "sha512-yMqGBqtXyeN1e3TGYvgNgDVZ3j84W4cwkOXQswghol6APgZWaff9lnbvN7MHYJOiXsvGPXtjTYJEiC9J2wv9Eg==" + "integrity": "sha512-yMqGBqtXyeN1e3TGYvgNgDVZ3j84W4cwkOXQswghol6APgZWaff9lnbvN7MHYJOiXsvGPXtjTYJEiC9J2wv9Eg==", + "engines": { + "node": ">=8.0" + } }, - "xmlbuilder2": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/xmlbuilder2/-/xmlbuilder2-3.0.2.tgz", - "integrity": "sha512-h4MUawGY21CTdhV4xm3DG9dgsqyhDkZvVJBx88beqX8wJs3VgyGQgAn5VreHuae6unTQxh115aMK5InCVmOIKw==", - "requires": { + "node_modules/xmlbuilder2": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/xmlbuilder2/-/xmlbuilder2-3.1.1.tgz", + "integrity": "sha512-WCSfbfZnQDdLQLiMdGUQpMxxckeQ4oZNMNhLVkcekTu7xhD4tuUDyAPoY8CwXvBYE6LwBHd6QW2WZXlOWr1vCw==", + "license": "MIT", + "dependencies": { "@oozcitak/dom": "1.15.10", "@oozcitak/infra": "1.0.8", "@oozcitak/util": "8.3.8", - "@types/node": "*", - "js-yaml": "3.14.0" + "js-yaml": "3.14.1" }, + "engines": { + "node": ">=12.0" + } + }, + "node_modules/xmlbuilder2/node_modules/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==", + "license": "MIT", "dependencies": { - "esprima": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", - "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==" - }, - "js-yaml": { - "version": "3.14.0", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.0.tgz", - "integrity": "sha512-/4IbIeHcD9VMHFqDR/gQ7EdZdLimOvW2DdcxFjdyyZ9NsbS+ccrXqVWDtab/lRl5AlUqmpBx8EhPaWR+OtY17A==", - "requires": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" - } - } + "argparse": "^1.0.7", + "esprima": "^4.0.0" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" } }, - "xpath": { - "version": "0.0.23", - "resolved": "https://registry.npmjs.org/xpath/-/xpath-0.0.23.tgz", - "integrity": "sha1-9ej9xr3H5yiFsyNPQMuiZpWAqvo=" + "node_modules/xpath": { + "version": "0.0.34", + "resolved": "https://registry.npmjs.org/xpath/-/xpath-0.0.34.tgz", + "integrity": "sha512-FxF6+rkr1rNSQrhUNYrAFJpRXNzlDoMxeXN5qI84939ylEv3qqPFKa85Oxr6tDaJKqwW6KKyo2v26TSv3k6LeA==", + "license": "MIT", + "engines": { + "node": ">=0.6.0" + } }, - "xtend": { + "node_modules/xtend": { "version": "4.0.2", "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", - "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==" + "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==", + "engines": { + "node": ">=0.4" + } }, - "y18n": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz", - "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==", - "dev": true + "node_modules/y18n": { + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", + "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", + "dev": true, + "engines": { + "node": ">=10" + } }, - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + "node_modules/yallist": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", + "integrity": "sha512-ncTzHV7NvsQZkYe1DW7cbDLm0YpzHmZF5r/iyP3ZnQtMiJ+pjzisCiMNI+Sj+xQF5pXhSHxSB3uDbsBTzY/c2A==", + "dev": true }, - "yaml": { + "node_modules/yaml": { "version": "1.10.2", "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz", - "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==" + "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==", + "license": "ISC", + "engines": { + "node": ">= 6" + } }, - "yargs-unparser": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/yargs-unparser/-/yargs-unparser-1.6.0.tgz", - "integrity": "sha512-W9tKgmSn0DpSatfri0nx52Joq5hVXgeLiqR/5G0sZNDoLZFOr/xjBUDcShCOGNsBnEMNo1KAMBkTej1Hm62HTw==", + "node_modules/yargs": { + "version": "16.2.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", + "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", "dev": true, - "requires": { - "flat": "^4.1.0", - "lodash": "^4.17.15", - "yargs": "^13.3.0" + "dependencies": { + "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" }, + "engines": { + "node": ">=10" + } + }, + "node_modules/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==", + "dev": true, + "license": "ISC", + "engines": { + "node": ">=10" + } + }, + "node_modules/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, "dependencies": { - "ansi-regex": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.1.tgz", - "integrity": "sha512-ILlv4k/3f6vfQ4OoP2AGvirOktlQ98ZEL1k9FaQjxa3L1abBgbuTDAdPOpvbGncC0BTVQrl+OM8xZGK6tWXt7g==", - "dev": true - }, - "camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true - }, - "cliui": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-5.0.0.tgz", - "integrity": "sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA==", - "dev": true, - "requires": { - "string-width": "^3.1.0", - "strip-ansi": "^5.2.0", - "wrap-ansi": "^5.1.0" - } - }, - "emoji-regex": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", - "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", - "dev": true - }, - "find-up": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", - "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", - "dev": true, - "requires": { - "locate-path": "^3.0.0" - } - }, - "is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", - "dev": true - }, - "locate-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", - "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", - "dev": true, - "requires": { - "p-locate": "^3.0.0", - "path-exists": "^3.0.0" - } - }, - "p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", - "dev": true, - "requires": { - "p-try": "^2.0.0" - } - }, - "p-locate": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", - "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", - "dev": true, - "requires": { - "p-limit": "^2.0.0" - } - }, - "string-width": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", - "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", - "dev": true, - "requires": { - "emoji-regex": "^7.0.1", - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^5.1.0" - } - }, - "strip-ansi": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", - "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", - "dev": true, - "requires": { - "ansi-regex": "^4.1.0" - } - }, - "yargs": { - "version": "13.3.2", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-13.3.2.tgz", - "integrity": "sha512-AX3Zw5iPruN5ie6xGRIDgqkT+ZhnRlZMLMHAs8tg7nRruy2Nb+i5o9bwghAogtM08q1dpr2LVoS8KSTMYpWXUw==", - "dev": true, - "requires": { - "cliui": "^5.0.0", - "find-up": "^3.0.0", - "get-caller-file": "^2.0.1", - "require-directory": "^2.1.1", - "require-main-filename": "^2.0.0", - "set-blocking": "^2.0.0", - "string-width": "^3.0.0", - "which-module": "^2.0.0", - "y18n": "^4.0.0", - "yargs-parser": "^13.1.2" - } - }, - "yargs-parser": { - "version": "13.1.2", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.2.tgz", - "integrity": "sha512-3lbsNRf/j+A4QuSZfDRA7HRSfWrzO0YjqTJd5kjAq37Zep1CEgaYmrH9Q3GwPiB9cHyd1Y1UwggGhJGoxipbzg==", - "dev": true, - "requires": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" - } - } + "camelcase": "^6.0.0", + "decamelize": "^4.0.0", + "flat": "^5.0.2", + "is-plain-obj": "^2.1.0" + }, + "engines": { + "node": ">=10" } }, - "yauzl": { - "version": "2.10.0", - "resolved": "https://registry.npmjs.org/yauzl/-/yauzl-2.10.0.tgz", - "integrity": "sha512-p4a9I6X6nu6IhoGmBqAcbJy1mlC4j27vEPZX9F4L4/vZT3Lyq1VkFHw/V/PUcB9Buo+DG3iHkT0x3Qya58zc3g==", + "node_modules/yauzl": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/yauzl/-/yauzl-3.2.0.tgz", + "integrity": "sha512-Ow9nuGZE+qp1u4JIPvg+uCiUr7xGQWdff7JQSk5VGYTAZMDe2q8lxJ10ygv10qmSj031Ty/6FNJpLO4o1Sgc+w==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "buffer-crc32": "~0.2.3", - "fd-slicer": "~1.1.0" + "pend": "~1.2.0" + }, + "engines": { + "node": ">=12" } }, - "yocto-queue": { + "node_modules/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 + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } }, - "zip-stream": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/zip-stream/-/zip-stream-4.1.0.tgz", - "integrity": "sha512-zshzwQW7gG7hjpBlgeQP9RuyPGNxvJdzR8SUM3QhxCnLjWN2E7j3dOvpeDcQoETfHx0urRS7EtmVToql7YpU4A==", - "requires": { - "archiver-utils": "^2.1.0", - "compress-commons": "^4.1.0", + "node_modules/zip-stream": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/zip-stream/-/zip-stream-4.1.1.tgz", + "integrity": "sha512-9qv4rlDiopXg4E69k+vMHjNN63YFMe9sZMrdlvKnCjlCRWeCBswPPMPUfx+ipsAWq1LXHe70RcbaHdJJpS6hyQ==", + "dependencies": { + "archiver-utils": "^3.0.4", + "compress-commons": "^4.1.2", "readable-stream": "^3.6.0" }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/zip-stream/node_modules/archiver-utils": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/archiver-utils/-/archiver-utils-3.0.4.tgz", + "integrity": "sha512-KVgf4XQVrTjhyWmx6cte4RxonPLR9onExufI1jhvw/MQ4BB6IsZD5gT8Lq+u/+pRkWna/6JoHpiQioaqFP5Rzw==", "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" - } - }, - "string_decoder": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", - "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", - "requires": { - "safe-buffer": "~5.2.0" - } - } + "glob": "^7.2.3", + "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": "^3.6.0" + }, + "engines": { + "node": ">= 10" } } } diff --git a/service/package.json b/service/package.json index ae1e462f8..d5d61497a 100644 --- a/service/package.json +++ b/service/package.json @@ -1,6 +1,6 @@ { "name": "@ngageoint/mage.service", - "version": "6.2.13", + "version": "6.3.0-beta.8", "displayName": "MAGE Service", "description": "MAGE is a geospatial situational awareness and data collection platform. The MAGE Service is the ReST service API that the MAGE client apps use to interact with MAGE data.", "keywords": [ @@ -24,126 +24,115 @@ ], "homepage": "https://www.nga.mil", "engines": { - "node": ">= 16.x", - "npm": ">= 8.x" + "node": ">= 16", + "npm": ">= 8" }, "dependencies": { - "@ngageoint/geopackage": "^4.2.6", - "@node-saml/passport-saml": "^4.0.4", - "@turf/centroid": "^6.5.0", - "@turf/kinks": "^6.5.0", - "@types/geojson": "^7946.0.7", - "@types/json-schema": "^7.0.11", - "@types/mime-types": "^2.1.1", - "@xmldom/xmldom": "^0.8.10", - "adm-zip": "0.4.9", - "archiver": "5.3.0", - "async": "^3.2.4", + "@ngageoint/geopackage": "4.2.6", + "@ngageoint/mongodb-migrations": "1.0.0", + "@node-saml/passport-saml": "4.0.4", + "@turf/centroid": "6.5.0", + "@turf/kinks": "6.5.0", + "@types/geojson": "7946.0.16", + "@types/json-schema": "7.0.15", + "@types/mime-types": "2.1.4", + "@xmldom/xmldom": "0.9.8", + "adm-zip": "0.5.16", + "archiver": "5.3.2", + "async": "3.2.6", + "async-lock": "1.4.1", "base-64": "1.0.0", - "better-sqlite3": "^8.6.0", - "body-parser": "~1.19.0", - "busboy": "^1.6.0", - "cfenv": "1.0.3", - "commander": "^8.2.0", - "dbf": "0.1.0", - "express": "^4.18.2", - "express-session": "1.17.2", - "file-type": "^16.5.4", + "busboy": "1.6.0", + "cfenv": "1.2.4", + "commander": "8.3.0", + "express": "4.21.2", + "express-session": "1.18.1", + "file-type": "16.5.4", "fs-extra": "4.0.3", - "geojson": "^0.5.0", - "geojson-validation": "^1.0.2", - "gm": "1.23.1", - "json2csv": "4.5.1", - "jsonwebtoken": "^9.0.2", - "lodash": "^4.17.21", - "mgrs": "^1.0.0", - "mime-types": "^2.1.35", - "moment": "^2.29.4", - "mongodb-migrations": "0.8.5", - "mongoose": "^4.13.21", - "mongoose-beautiful-unique-validation": "7.1.1", - "multer": "^1.4.5-lts.1", - "node-fetch": "^2.6.0", - "passport": "^0.6.0", + "geojson": "0.5.0", + "geojson-validation": "1.0.2", + "json2csv": "4.5.4", + "jsonwebtoken": "9.0.2", + "lodash": "4.17.21", + "mgrs": "1.0.0", + "mime-types": "2.1.35", + "moment": "2.30.1", + "mongoose": "6.13.8", + "multer": "1.4.5-lts.1", + "node-fetch": "2.7.0", + "passport": "0.7.0", "passport-anonymous": "1.0.1", "passport-http-bearer": "1.0.1", - "passport-ldapauth": "^3.0.1", + "passport-ldapauth": "3.0.1", "passport-local": "1.0.0", - "passport-oauth2": "1.6.0", - "passport-openidconnect": "0.1.1", - "pem-jwk": "1.5.1", - "pem2jwk": "1.0.2", - "pug": "^3.0.2", - "rfc5646": "^3.0.0", - "superagent": "^8.0.0", - "svg-captcha": "^1.4.0", - "uniqid": "^5.2.0", - "walk": "2.3.4", - "winston": "1.0.1", - "wkx": "0.4.8", - "wms-capabilities": "^0.4.0", - "xmlbuilder2": "3.0.2", - "xpath": "0.0.23", - "yaml": "^1.8.2" + "passport-oauth2": "1.8.0", + "passport-openidconnect": "0.1.2", + "pug": "3.0.3", + "rfc5646": "3.0.0", + "superagent": "8.1.2", + "svg-captcha": "1.4.0", + "uniqid": "5.4.0", + "walk": "2.3.15", + "winston": "1.1.2", + "wkx": "0.5.0", + "wms-capabilities": "0.6.0", + "xmlbuilder2": "3.1.1", + "xpath": "0.0.34", + "yaml": "1.10.2" }, "devDependencies": { - "@fluffy-spoon/substitute": "^1.196.0", - "@types/archiver": "^5.3.4", - "@types/async": "^3.0.5", - "@types/bson": "^1.0.11", - "@types/busboy": "^1.5.0", - "@types/chai": "^4.2.19", - "@types/chai-as-promised": "^7.1.2", - "@types/deep-equal": "^1.0.1", - "@types/express": "^4.17.19", - "@types/express-serve-static-core": "~4.17.0", - "@types/fs-extra": "^8.0.1", - "@types/json2csv": "~4.5.0", - "@types/lodash": "^4.14.155", - "@types/mocha": "^7.0.2", - "@types/mongodb": "^3.6.20", - "@types/mongoose": "^4.7.56", - "@types/multer": "^1.4.7", - "@types/node": "^18.18.4", - "@types/node-fetch": "^2.5.4", - "@types/passport": "^1.0.3", - "@types/sinon": "^9.0.4", - "@types/sinon-chai": "^3.2.4", - "@types/superagent": "^8.1.3", - "@types/supertest": "^2.0.16", - "@types/uniqid": "^5.2.0", - "@typescript-eslint/eslint-plugin": "^6.7.5", - "@typescript-eslint/parser": "^6.7.5", - "ajv": "^6.11.0", - "assert": "2.0.0", - "axios": "^1.6.5", - "chai": "^4.3.6", - "chai-as-promised": "^7.1.1", - "coveralls": "3.0.4", - "cpy-cli": "^5.0.0", - "deep-equal": "^2.0.2", - "eslint": "^8.51.0", - "eslint-config-prettier": "^6.9.0", - "eslint-plugin-prettier": "^3.1.2", - "iconv-lite": "^0.5.1", - "jszip": "^3.7.1", - "mocha": "^7.1.1", - "mock-fs": "4.13.0", - "mongodb-memory-server": "^9.1.3", - "nock": "^11.7.2", - "npm-run-all": "^4.1.5", - "nyc": "^14.1.1", - "openapi-enforcer": "1.15.5", - "prettier": "^1.19.1", + "@fluffy-spoon/substitute": "1.208.0", + "@types/archiver": "5.3.4", + "@types/async": "3.2.24", + "@types/bson": "1.0.11", + "@types/busboy": "1.5.4", + "@types/chai": "4.3.20", + "@types/chai-as-promised": "7.1.8", + "@types/deep-equal": "1.0.4", + "@types/express": "4.17.21", + "@types/express-serve-static-core": "4.19.6", + "@types/fs-extra": "8.1.5", + "@types/json2csv": "4.5.1", + "@types/lodash": "4.17.16", + "@types/mocha": "7.0.2", + "@types/multer": "1.4.12", + "@types/node": "18.19.80", + "@types/node-fetch": "2.6.12", + "@types/passport": "1.0.17", + "@types/sinon": "9.0.11", + "@types/sinon-chai": "3.2.12", + "@types/superagent": "8.1.9", + "@types/supertest": "2.0.16", + "@types/uniqid": "5.3.4", + "@typescript-eslint/eslint-plugin": "6.21.0", + "@typescript-eslint/parser": "6.21.0", + "ajv": "6.12.6", + "axios": "1.8.4", + "chai": "4.5.0", + "chai-as-promised": "7.1.2", + "coveralls": "3.1.1", + "cpy-cli": "5.0.0", + "deep-equal": "2.2.3", + "eslint": "8.57.1", + "eslint-config-prettier": "6.15.0", + "eslint-plugin-prettier": "3.4.1", + "iconv-lite": "0.6.3", + "jszip": "3.10.1", + "mocha": "10.8.2", + "mock-fs": "4.14.0", + "mongodb-memory-server": "9.5.0", + "nock": "11.9.1", + "npm-run-all": "4.1.5", + "nyc": "14.1.1", + "openapi-enforcer": "1.23.0", + "prettier": "1.19.1", "proxyquire": "2.1.3", - "rimraf": "^5.0.5", + "rimraf": "5.0.10", "sinon": "7.5.0", - "sinon-chai": "3.3.0", + "sinon-chai": "3.7.0", "sinon-mongoose": "2.3.0", - "supertest": "^6.3.3", - "ts-mockito": "^2.5.0", - "typescript": "~4.6.0", - "wtfnode": "^0.8.4" + "supertest": "6.3.4", + "typescript": "4.9.5" }, "nyc": { "temp-dir": "./.test_run", @@ -202,4 +191,4 @@ "bin": { "mage.service": "bin/mage.service.js" } -} +} \ No newline at end of file diff --git a/service/src/@types/mongodb-migrations/index.d.ts b/service/src/@types/mongodb-migrations/index.d.ts index 53f96740a..0610c1783 100644 --- a/service/src/@types/mongodb-migrations/index.d.ts +++ b/service/src/@types/mongodb-migrations/index.d.ts @@ -1,6 +1,6 @@ -declare module 'mongodb-migrations' { +declare module '@ngageoint/mongodb-migrations' { import { MongoClientOptions } from 'mongodb' export { MongoClientOptions } from 'mongodb' diff --git a/service/src/adapters/adapters.db.mongoose.ts b/service/src/adapters/adapters.db.mongoose.ts index ac786d8fe..70e35b9c2 100644 --- a/service/src/adapters/adapters.db.mongoose.ts +++ b/service/src/adapters/adapters.db.mongoose.ts @@ -19,7 +19,7 @@ class RetryConnection { readonly uri: string, totalRetryTime: number, readonly retryInterval: number, - readonly options: mongoose.ConnectionOptions, + readonly options: mongoose.ConnectOptions, readonly resolve: () => any, readonly reject: (err: any) => any) { this.connectTimeout = Date.now() + totalRetryTime; @@ -27,6 +27,12 @@ class RetryConnection { attemptConnection(): Promise { log.debug(`attempting new mongodb connection to`, this.uri) + if (this.options.authMechanism) { + log.info('connecting to mongodb using auth mechanism ' + this.options.authMechanism) + } else { + log.info('connecting to mongodb without authentication'); + } + return this.mongoose.connect(this.uri, this.options).then(this.resolve, this.onConnectionError.bind(this)); } @@ -42,7 +48,7 @@ class RetryConnection { } } -export const waitForDefaultMongooseConnection = (mongoose: Mongoose, uri: string, retryTotalTime: number, retryInterval: number, options: mongoose.ConnectionOptions): Promise => { +export const waitForDefaultMongooseConnection = (mongoose: Mongoose, uri: string, retryTotalTime: number, retryInterval: number, options: mongoose.ConnectOptions): Promise => { log.debug(`wait for default mongoose connection:`, uri) if (mongoose.connection.readyState === mongoose.STATES.connected || mongoose.connection.readyState === mongoose.STATES.connecting) { log.debug(`already connected to`, uri) @@ -56,6 +62,6 @@ export const waitForDefaultMongooseConnection = (mongoose: Mongoose, uri: string export const MongoDbObjectIdFactory: EntityIdFactory = { async nextId(): Promise { - return mongoose.Types.ObjectId().toHexString() + return (new mongoose.Types.ObjectId()).toHexString() } } \ No newline at end of file diff --git a/service/src/adapters/base/adapters.base.db.mongoose.ts b/service/src/adapters/base/adapters.base.db.mongoose.ts index cce5abfc4..2df137d0d 100644 --- a/service/src/adapters/base/adapters.base.db.mongoose.ts +++ b/service/src/adapters/base/adapters.base.db.mongoose.ts @@ -79,7 +79,7 @@ export class BaseMongooseRepository(query: mongoose.Query, paging: PagingParameters): Promise<{ totalCount: number | null, query: mongoose.Query }> => { - const BaseQuery = query.toConstructor() - const pageQuery = new BaseQuery().limit(paging.pageSize).skip(paging.pageIndex * paging.pageSize) as mongoose.Query +export const pageQuery = (query: mongoose.Query, paging: PagingParameters): Promise<{ totalCount: number | null, query: mongoose.Query }> => { + //TODO had to use any to construct + const BaseQuery: any = query.toConstructor() + const pageQuery = new BaseQuery().limit(paging.pageSize).skip(paging.pageIndex * paging.pageSize) as mongoose.Query const includeTotalCount = typeof paging.includeTotalCount === 'boolean' ? paging.includeTotalCount : paging.pageIndex === 0 if (includeTotalCount) { const countQuery = new BaseQuery().count() - return countQuery.then(totalCount => { + return countQuery.then((totalCount: number) => { return { totalCount, query: pageQuery } }) } diff --git a/service/src/adapters/events/adapters.events.db.mongoose.ts b/service/src/adapters/events/adapters.events.db.mongoose.ts index 7db39108a..ba37e545f 100644 --- a/service/src/adapters/events/adapters.events.db.mongoose.ts +++ b/service/src/adapters/events/adapters.events.db.mongoose.ts @@ -5,7 +5,6 @@ import { FeedId } from '../../entities/feeds/entities.feeds' import * as legacy from '../../models/event' import { Team } from '../../entities/teams/entities.teams' - export const MageEventModelName = 'Event' export type MageEventDocument = legacy.MageEventDocument @@ -35,7 +34,7 @@ export class MongooseMageEventRepository extends BaseMongooseRepository { - const docs = await this.model.find({ complete: { $in: [ null, false ] }}) + const docs: legacy.MageEventDocument[] = await this.model.find({ complete: { $in: [ null, false ] }}).exec() return docs.map(this.entityForDocument) } @@ -65,13 +64,13 @@ export class MongooseMageEventRepository extends BaseMongooseRepository { const updated = await this.model.updateMany({}, { $pull: { feedIds: { $in: feeds }}}) - return updated.nModified + return updated.modifiedCount } /** * TODO: this is misplaced; create a team repository */ - async findTeamsInEvent(event: MageEventId | MageEventAttrs | MageEventDocument): Promise { + async findTeamsInEvent(event: MageEventId | MageEventAttrs | MageEventDocument): Promise { let eventDoc: MageEventDocument | null if (!(event instanceof this.model)) { const eventId = typeof event === 'object' && 'id' in event ? event.id : event diff --git a/service/src/adapters/feeds/adapters.feeds.db.mongoose.ts b/service/src/adapters/feeds/adapters.feeds.db.mongoose.ts index c103cd6be..ee013448e 100644 --- a/service/src/adapters/feeds/adapters.feeds.db.mongoose.ts +++ b/service/src/adapters/feeds/adapters.feeds.db.mongoose.ts @@ -19,19 +19,22 @@ export type FeedServiceTypeIdentity = Pick -export const FeedServiceTypeIdentitySchema = new mongoose.Schema({ +//TODO remove cast to any +export const FeedServiceTypeIdentitySchema = new mongoose.Schema({ pluginServiceTypeId: { type: String, required: true }, moduleName: { type: String, required: true } }) export function FeedServiceTypeIdentityModel(conn: mongoose.Connection, collection?: string): FeedServiceTypeIdentityModel { - return conn.model(FeedsModels.FeedServiceTypeIdentity, FeedServiceTypeIdentitySchema, collection || 'feed_service_types') + //TODO remove cast to any + return conn.model(FeedsModels.FeedServiceTypeIdentity, FeedServiceTypeIdentitySchema, collection || 'feed_service_types') as any } export type FeedServiceDocument = Omit & mongoose.Document & { serviceType: mongoose.Types.ObjectId } export type FeedServiceModel = Model -export const FeedServiceSchema = new mongoose.Schema( +//TODO remove cast to any +export const FeedServiceSchema = new mongoose.Schema( { serviceType: { type: mongoose.SchemaTypes.ObjectId, required: true, ref: FeedsModels.FeedServiceTypeIdentity }, title: { type: String, required: true }, @@ -49,7 +52,8 @@ export const FeedServiceSchema = new mongoose.Schema( } }) export function FeedServiceModel(conn: mongoose.Connection, collection?: string): FeedServiceModel { - return conn.model(FeedsModels.FeedService, FeedServiceSchema, collection || 'feed_services') + //TODO remove cast to any + return conn.model(FeedsModels.FeedService, FeedServiceSchema, collection || 'feed_services') as any } export type FeedDocument = Omit & mongoose.Document & { @@ -57,7 +61,8 @@ export type FeedDocument = Omit & mongoose.Document & icon?: string } export type FeedModel = Model -export const FeedSchema = new mongoose.Schema( +//TODO remove cast to any +export const FeedSchema = new mongoose.Schema( { _id: { type: String, required: true }, service: { type: mongoose.SchemaTypes.ObjectId, required: true, ref: FeedsModels.FeedService }, @@ -91,7 +96,8 @@ export const FeedSchema = new mongoose.Schema( } }) export function FeedModel(conn: mongoose.Connection, collection?: string): FeedModel { - return conn.model(FeedsModels.Feed, FeedSchema, collection || 'feeds') + //TODO remove cast to any + return conn.model(FeedsModels.Feed, FeedSchema, collection || 'feeds') as any } export class MongooseFeedServiceTypeRepository implements FeedServiceTypeRepository { @@ -147,7 +153,7 @@ export class MongooseFeedRepository extends BaseMongooseRepository): Promise { const _id = await this.idFactory.nextId() - const service = mongoose.Types.ObjectId(attrs.service) + const service = new mongoose.Types.ObjectId(attrs.service) const seed = Object.assign(attrs, { _id, service }) return await super.create(seed) } @@ -173,7 +179,8 @@ export class MongooseFeedRepository extends BaseMongooseRepository { + //TODO change any to Feed + async findFeedsForService(service: FeedServiceId): Promise { const docs = await this.model.find({ service }) return docs.map(x => x.toJSON()) } diff --git a/service/src/adapters/icons/adapters.icons.db.mongoose.ts b/service/src/adapters/icons/adapters.icons.db.mongoose.ts index 074d28960..c28bd52a6 100644 --- a/service/src/adapters/icons/adapters.icons.db.mongoose.ts +++ b/service/src/adapters/icons/adapters.icons.db.mongoose.ts @@ -1,7 +1,6 @@ import { URL } from 'url' import mongoose from 'mongoose' -import mongodb from 'mongodb' import { EntityIdFactory, pageOf, PageOf, PagingParameters, UrlResolutionError, UrlScheme } from '../../entities/entities.global' import { StaticIcon, StaticIconStub, StaticIconId, StaticIconRepository, LocalStaticIconStub, StaticIconReference, StaticIconContentStore, StaticIconImportFetch } from '../../entities/icons/entities.icons' import { BaseMongooseRepository, pageQuery } from '../base/adapters.base.db.mongoose' @@ -11,7 +10,7 @@ export type StaticIconDocument = Omit & mongoose.Docume } export type StaticIconModel = mongoose.Model export const StaticIconModelName = 'StaticIcon' -export const StaticIconSchema = new mongoose.Schema( +export const StaticIconSchema = new mongoose.Schema( { _id: { type: String, required: true }, sourceUrl: { type: String, required: true, unique: true }, @@ -23,6 +22,7 @@ export const StaticIconSchema = new mongoose.Schema( mediaType: { type: String, required: false }, sizePixels: { type: { + _id: false, width: { type: Number, required: true }, height: { type: Number, required: true } }, @@ -128,7 +128,7 @@ export class MongooseStaticIconRepository extends BaseMongooseRepository { - let icon = await this.model.findById(id) + const icon = await this.model.findById(id) if (!icon) { return null } @@ -221,7 +221,7 @@ async function updateRegisteredIconIfChanged(this: MongooseStaticIconRepository, tags: true, title: true } - const update: Partial & mongodb.UpdateQuery = {} + const update: Partial & mongoose.UpdateQuery = {} const $unset: { [key in keyof StaticIcon]?: true } = {} for (const key of Object.keys(writableKeys) as (keyof StaticIconStub)[]) { if (key in stub && stub[key] && writableKeys[key]) { @@ -232,7 +232,7 @@ async function updateRegisteredIconIfChanged(this: MongooseStaticIconRepository, } } if (Object.keys($unset).length > 0) { - update.$unset = $unset + update.$unset = $unset as mongoose.UpdateQuery['$unset'] } update.contentHash = stub.contentHash update.contentTimestamp = Date.now() @@ -241,6 +241,6 @@ async function updateRegisteredIconIfChanged(this: MongooseStaticIconRepository, update.contentTimestamp = stub.contentTimestamp } } - const updated = await this.model.findByIdAndUpdate(registered.id, update, { new: true }) + const updated = await this.model.findByIdAndUpdate(registered.id, update, { new: true, setDefaultsOnInsert: false }) return updated! } \ No newline at end of file diff --git a/service/src/adapters/observations/adapters.observations.controllers.web.ts b/service/src/adapters/observations/adapters.observations.controllers.web.ts index a9b5447d2..1bd89457c 100644 --- a/service/src/adapters/observations/adapters.observations.controllers.web.ts +++ b/service/src/adapters/observations/adapters.observations.controllers.web.ts @@ -186,7 +186,7 @@ export function ObservationRoutes(app: ObservationAppLayer, attachmentStore: Att } const appRes = await app.saveObservation(appReq) if (appRes.success) { - return res.json(jsonForObservation(appRes.success, `${qualifiedBaseUrl(req)}`)) + return res.json(jsonForObservation(appRes.success, qualifiedBaseUrl(req))) } next(appRes.error) }) diff --git a/service/src/adapters/observations/adapters.observations.db.mongoose.ts b/service/src/adapters/observations/adapters.observations.db.mongoose.ts index 18cab19ff..276611156 100644 --- a/service/src/adapters/observations/adapters.observations.db.mongoose.ts +++ b/service/src/adapters/observations/adapters.observations.db.mongoose.ts @@ -34,7 +34,7 @@ export class MongooseObservationRepository extends BaseMongooseRepository { - return Array.from({ length: count }).map(_ => mongoose.Types.ObjectId().toHexString()) + return Array.from({ length: count }).map(_ => (new mongoose.Types.ObjectId()).toHexString()) } async nextAttachmentIds(count: number = 1): Promise { - return Array.from({ length: count }).map(_ => mongoose.Types.ObjectId().toHexString()) + return Array.from({ length: count }).map(_ => (new mongoose.Types.ObjectId()).toHexString()) } } @@ -188,7 +189,7 @@ function importantFlagAttrsForDoc(doc: legacy.ObservationDocument): ObservationI description: docImportant.description } } - return void(0) + return void (0) } function attachmentAttrsForDoc(doc: legacy.AttachmentDocument): Attachment { @@ -240,9 +241,9 @@ function formEntryForDoc(doc: legacy.ObservationDocumentFormEntry): FormEntry { function assignMongoIdToDocAttrs(attrs: { id?: any, [other: string]: any }): { _id: number | mongoose.Types.ObjectId, [other: string]: any } { const { id, ...withoutId } = attrs as any withoutId._id = - typeof id === 'string' ? mongoose.Types.ObjectId(id) - : typeof id === 'number' ? id - : mongoose.Types.ObjectId() + typeof id === 'string' ? new mongoose.Types.ObjectId(id) + : typeof id === 'number' ? id + : new mongoose.Types.ObjectId() return withoutId } @@ -256,7 +257,7 @@ function attachmentDocSeedForEntity(attrs: Attachment): legacy.AttachmentDocAttr function thumbnailDocSeedForEntity(attrs: Thumbnail): legacy.ThumbnailDocAttrs { return { - _id: mongoose.Types.ObjectId(), + _id: new mongoose.Types.ObjectId(), relativePath: attrs.contentLocator, minDimension: attrs.minDimension, name: attrs.name, diff --git a/service/src/adapters/plugins/adapters.plugins.db.mongoose.ts b/service/src/adapters/plugins/adapters.plugins.db.mongoose.ts index 086454520..d78141682 100644 --- a/service/src/adapters/plugins/adapters.plugins.db.mongoose.ts +++ b/service/src/adapters/plugins/adapters.plugins.db.mongoose.ts @@ -14,7 +14,8 @@ const SCHEMA_SPEC = { export class MongoosePluginStateRepository implements PluginStateRepository { - readonly model: mongoose.Model> + //TODO remove cast to any, was mongoose.Model> + readonly model: mongoose.Model constructor(public readonly pluginId: string, public readonly mongoose: mongoose.Mongoose) { const collectionName = `plugin_state_${pluginId}` @@ -23,7 +24,7 @@ export class MongoosePluginStateRepository implements Plug } async put(state: EnsureJson): Promise> { - const updated = await this.model.findByIdAndUpdate(this.pluginId, { state }, { new: true, upsert: true }) + const updated = await this.model.findByIdAndUpdate(this.pluginId, { state }, { new: true, upsert: true, setDefaultsOnInsert: false }) return updated.toJSON().state } @@ -38,7 +39,7 @@ export class MongoosePluginStateRepository implements Plug } return update }, {} as any) - const patched = await this.model.findByIdAndUpdate(this.pluginId, update, { new: true, upsert: true }) + const patched = await this.model.findByIdAndUpdate(this.pluginId, update, { new: true, upsert: true, setDefaultsOnInsert: false }) return patched.toJSON().state } diff --git a/service/src/adapters/settings/adapters.settings.db.mongoose.ts b/service/src/adapters/settings/adapters.settings.db.mongoose.ts index a7cbd7b19..7d32384e3 100644 --- a/service/src/adapters/settings/adapters.settings.db.mongoose.ts +++ b/service/src/adapters/settings/adapters.settings.db.mongoose.ts @@ -10,17 +10,6 @@ export const SettingsSchema = legacy.Model.schema export class MongooseSettingsRepository extends BaseMongooseRepository implements SettingRepository { - constructor(model: mongoose.Model) { - super(model, { - docToEntity: doc => { - const json = doc.toJSON() - return { - ...json - } - } - }) - } - async getMapSettings(): Promise { const document = await this.model.findOne({ type: 'map' }) return document?.settings diff --git a/service/src/adapters/systemInfo/adapters.systemInfo.controllers.web.ts b/service/src/adapters/systemInfo/adapters.systemInfo.controllers.web.ts new file mode 100644 index 000000000..9822366e7 --- /dev/null +++ b/service/src/adapters/systemInfo/adapters.systemInfo.controllers.web.ts @@ -0,0 +1,63 @@ +import express from 'express' +import passport from 'passport'; +import { WebAppRequestFactory } from '../adapters.controllers.web' +import { SystemInfoAppLayer } from '../../app.api/systemInfo/app.api.systemInfo' +import { AppRequest, AppRequestContext } from '../../app.api/app.api.global' +import { UserWithRole } from '../../permissions/permissions.role-based.base' + +type SystemInfoRequestType = AppRequest>; + + +export function SystemInfoRoutes(appLayer: SystemInfoAppLayer, createAppRequest: WebAppRequestFactory): express.Router { + + const routes = express.Router() + + routes.route('/') + .get(async (req, res, next) => { + const appReq = createAppRequest(req); // Define appReq + // Check for Authorization header + if (req.headers.authorization) { + // Directly use passport.authenticate with a custom callback + passport.authenticate( + 'bearer', + { session: false }, + (err: any, user: any | false) => { + if (err) { + return next(err); + } + if (!user) { + // Authentication failed - Send a JSON response + return res.status(401).json({ error: 'Unauthorized access' }); + } + // Authentication successful, attach user to request + req.user = user; + handleRequest(appReq, res, next, appLayer); + } + )(req, res, next); + } else { + // Proceed without authentication if no Authorization header + handleRequest(appReq, res, next, appLayer); + } + + }) + + return routes +} + +async function handleRequest( + req: SystemInfoRequestType, + res: express.Response, + next: express.NextFunction, + appLayer: SystemInfoAppLayer, +) { + try { + const appRes = await appLayer.readSystemInfo(req); + if (appRes.success) { + res.json(appRes.success); + } else { + next(appRes.error); + } + } catch (err) { + next(err); + } +} \ No newline at end of file diff --git a/service/src/adapters/systemInfo/adapters.systemInfo.service.ts b/service/src/adapters/systemInfo/adapters.systemInfo.service.ts new file mode 100644 index 000000000..9fc167262 --- /dev/null +++ b/service/src/adapters/systemInfo/adapters.systemInfo.service.ts @@ -0,0 +1,25 @@ +import { Connection } from 'mongoose' +import { EnvironmentService, EnvironmentInfo } from '../../entities/systemInfo/entities.systemInfo' + +export class EnvironmentServiceImpl implements EnvironmentService { + + private mongodbVersion: string | null = null + private readonly nodeVersion: string = process.versions.node + + constructor(private readonly dbConn: Connection) {} + + async readEnvironmentInfo(): Promise { + if (this.mongodbVersion === null) { + const dbInfo = await this.dbConn.db.admin().serverInfo() + this.mongodbVersion = dbInfo.version + } + return { + nodeVersion: this.nodeVersion, + mongodbVersion: this.mongodbVersion!, + } + } + + readDependencies(): Promise { + throw new Error('Method not implemented.') + } +} \ No newline at end of file diff --git a/service/src/app.api/systemInfo/app.api.systemInfo.ts b/service/src/app.api/systemInfo/app.api.systemInfo.ts new file mode 100644 index 000000000..372874fde --- /dev/null +++ b/service/src/app.api/systemInfo/app.api.systemInfo.ts @@ -0,0 +1,29 @@ +import { SystemInfo } from '../../entities/systemInfo/entities.systemInfo' +import { UserWithRole } from '../../permissions/permissions.role-based.base' +import { InfrastructureError, PermissionDeniedError } from '../app.api.errors' +import { AppRequest, AppRequestContext, AppResponse } from '../app.api.global' + + +export type ExoPrivilegedSystemInfo = SystemInfo +export type ExoRedactedSystemInfo = Omit +export type ExoSystemInfo = ExoPrivilegedSystemInfo | ExoRedactedSystemInfo + +export interface ReadSystemInfoRequest extends AppRequest { + context: AppRequestContext; +} +export interface ReadSystemInfoResponse extends AppResponse {} + +export interface ReadSystemInfo { + (req: ReadSystemInfoRequest): Promise< + ReadSystemInfoResponse + >; +} + +export interface SystemInfoAppLayer { + readSystemInfo: ReadSystemInfo; + permissionsService: SystemInfoPermissionService; +} + +export interface SystemInfoPermissionService { + ensureReadSystemInfoPermission(context: AppRequestContext): Promise; +} \ No newline at end of file diff --git a/service/src/app.impl/systemInfo/app.impl.systemInfo.ts b/service/src/app.impl/systemInfo/app.impl.systemInfo.ts new file mode 100644 index 000000000..8d8c7b2b1 --- /dev/null +++ b/service/src/app.impl/systemInfo/app.impl.systemInfo.ts @@ -0,0 +1,95 @@ +import { AppResponse } from '../../app.api/app.api.global'; +import * as api from '../../app.api/systemInfo/app.api.systemInfo'; +import { EnvironmentService } from '../../entities/systemInfo/entities.systemInfo'; +import * as Settings from '../../models/setting'; +import * as Users from '../../models/user'; +import * as AuthenticationConfiguration from '../../models/authenticationconfiguration'; +import AuthenticationConfigurationTransformer from '../../transformers/authenticationconfiguration'; +import { ExoPrivilegedSystemInfo, ExoRedactedSystemInfo, ExoSystemInfo, SystemInfoPermissionService } from '../../app.api/systemInfo/app.api.systemInfo'; + +export interface ApiVersion { + major: number; + minor: number; + micro: number; +} + +/** + * This factory function creates the implementation of the {@link api.ReadSystemInfo} + * application layer interface. + */ +export function CreateReadSystemInfo( + environmentService: EnvironmentService, + versionInfo: ApiVersion, + settingsModule: typeof Settings = Settings, + authConfigModule: typeof AuthenticationConfiguration = AuthenticationConfiguration, + authConfigTransformerModule: typeof AuthenticationConfigurationTransformer = AuthenticationConfigurationTransformer, + permissions: SystemInfoPermissionService +): api.ReadSystemInfo { + // appending the authentication strategies to the api + async function appendAuthenticationStrategies( + api: any, + options: any = {} + ): Promise { + const apiCopy = { + ...api, + authenticationStrategies: {} + }; + const authenticationConfigurations = await authConfigModule.getAllConfigurations(); + const transformedConfigurations = authConfigTransformerModule.transform( + authenticationConfigurations.filter( + config => config.enabled || options.includeDisabled + ), + options + ); + transformedConfigurations.forEach( + (configuration: { name: string | number }) => { + apiCopy.authenticationStrategies[configuration.name] = { + ...configuration + }; + } + ); + return apiCopy; + } + return async function readSystemInfo( + req: api.ReadSystemInfoRequest + ): Promise { + const isAuthenticated = req.context.requestingPrincipal() != null; + + // FIXME: Replace this with Robert's first-run secret implementation when available + const legacyUsers = Users as any; + const userCount = await new Promise(resolve => { + legacyUsers.count({}, (err:any, count:any) => { + resolve(count) + }); + }); + + // Initialize with base system info + let systemInfoResponse: ExoRedactedSystemInfo = { + version: versionInfo, + initial: userCount == 0, + disclaimer: (await settingsModule.getSetting('disclaimer'))?.settings || {}, + contactInfo: (await settingsModule.getSetting('contactinfo'))?.settings || {} + }; + + // Add environment details for authenticated users with permission + if (isAuthenticated) { + const hasReadSystemInfoPermission = + (await permissions.ensureReadSystemInfoPermission(req.context)) === null; + + if (hasReadSystemInfoPermission) { + const environmentInfo = await environmentService.readEnvironmentInfo(); + systemInfoResponse = { + ...systemInfoResponse, + environment: environmentInfo + } as ExoPrivilegedSystemInfo; + } + } + + // Apply authentication strategies to the system info response + const updatedApiConfig = await appendAuthenticationStrategies(systemInfoResponse, { + whitelist: true + }); + + return AppResponse.success(updatedApiConfig as ExoSystemInfo); // Cast to ExoSystemInfo + }; +} diff --git a/service/src/app.ts b/service/src/app.ts index 20d736e58..85c4dbd1c 100644 --- a/service/src/app.ts +++ b/service/src/app.ts @@ -6,6 +6,7 @@ import fs from 'fs-extra' import mongoose from 'mongoose' import express from 'express' import util from 'util' +import apiConfig from './config'; import { MongooseFeedServiceTypeRepository, FeedServiceTypeIdentityModel, MongooseFeedServiceRepository, FeedServiceModel, MongooseFeedRepository, FeedModel } from './adapters/feeds/adapters.feeds.db.mongoose' import { waitForDefaultMongooseConnection } from './adapters/adapters.db.mongoose' import { FeedServiceTypeRepository, FeedServiceRepository, FeedRepository } from './entities/feeds/entities.feeds' @@ -40,6 +41,7 @@ import { UserRepositoryToken } from './plugins.api/plugins.api.users' import { StaticIconRepositoryToken } from './plugins.api/plugins.api.icons' import { UserModel, MongooseUserRepository } from './adapters/users/adapters.users.db.mongoose' import { UserRepository, UserExpanded } from './entities/users/entities.users' +import { EnvironmentService } from './entities/systemInfo/entities.systemInfo' import { WebRoutesHooks, GetAppRequestContext } from './plugins.api/plugins.api.web' import { UsersAppLayer, UsersRoutes } from './adapters/users/adapters.users.controllers.web' import { SearchUsers } from './app.impl/users/app.impl.users' @@ -56,6 +58,14 @@ import { FileSystemAttachmentStoreInitError, intializeAttachmentStore } from './ import { AttachmentStoreToken, ObservationRepositoryToken } from './plugins.api/plugins.api.observations' import { GetDbConnection, MongooseDbConnectionToken } from './plugins.api/plugins.api.db' import { EventEmitter } from 'events' +import { EnvironmentServiceImpl } from './adapters/systemInfo/adapters.systemInfo.service' +import { SystemInfoAppLayer } from './app.api/systemInfo/app.api.systemInfo' +import { CreateReadSystemInfo } from './app.impl/systemInfo/app.impl.systemInfo' +import Settings from "./models/setting"; +import AuthenticationConfiguration from "./models/authenticationconfiguration"; +import AuthenticationConfigurationTransformer from "./transformers/authenticationconfiguration"; +import { SystemInfoRoutes } from './adapters/systemInfo/adapters.systemInfo.controllers.web' +import { RoleBasedSystemInfoPermissionService } from './permissions/permissions.systemInfo' import { SettingsAppLayer, SettingsRoutes } from './adapters/settings/adapters.settings.controllers.web' import { MongooseSettingsRepository, SettingsModel } from './adapters/settings/adapters.settings.db.mongoose' import { FetchMapSettings, UpdateMapSettings } from './app.impl/settings/app.impl.settings' @@ -129,10 +139,9 @@ export const boot = async function(config: BootConfig): Promise { const dbLayer = await initDatabase() const repos = await initRepositories(dbLayer, config) const appLayer = await initAppLayer(repos) - - const { webController, addAuthenticatedPluginRoutes } = await initWebLayer(repos, appLayer, config.plugins?.webUIPlugins || []) - const routesForPluginId: { [pluginId: string]: WebRoutesHooks['webRoutes'] } = {} - const collectPluginRoutesToSort = (pluginId: string, initPluginRoutes: WebRoutesHooks['webRoutes']) => { + const { webController, addPluginRoutes } = await initWebLayer(repos, appLayer, config.plugins?.webUIPlugins || []) + const routesForPluginId: {[pluginId: string]: WebRoutesHooks } = {} + const collectPluginRoutesToSort = (pluginId: string, initPluginRoutes: WebRoutesHooks): void => { routesForPluginId[pluginId] = initPluginRoutes } const globalScopeServices = new Map, any>([ @@ -182,7 +191,7 @@ export const boot = async function(config: BootConfig): Promise { } const pluginRoutePathsDescending = Object.keys(routesForPluginId).sort().reverse() for (const pluginId of pluginRoutePathsDescending) { - addAuthenticatedPluginRoutes(pluginId, routesForPluginId[pluginId]) + addPluginRoutes(pluginId, routesForPluginId[pluginId]) } try { @@ -262,7 +271,8 @@ type AppLayer = { }, icons: StaticIconsAppLayer, users: UsersAppLayer, - settings: SettingsAppLayer + systemInfo: SystemInfoAppLayer, + settings: SettingsAppLayer, } async function initDatabase(): Promise { @@ -272,12 +282,12 @@ async function initDatabase(): Promise { const pluginMongoose = new mongoose.Mongoose() // TODO: add event listeners to plugin connections to log how plugins are using the connection // TODO: bufferCommands probably exists on mongoose 5+ types. 4 supports the option, but the typedefs don't - const pluginOptions: mongoose.ConnectionOptions & { bufferCommands: boolean } = { + const pluginOptions: mongoose.ConnectOptions & { bufferCommands: boolean } = { ...options, - // TODO: mongoose 5+ minPoolSize, maxPoolSize - poolSize: 5, + minPoolSize: 5, + maxPoolSize: 5, bufferCommands: false, - config: { autoIndex: false }, + autoIndex: false } return () => { console.info(`get db connection for plugin ${pluginId}`) @@ -332,9 +342,10 @@ type Repositories = { users: { userRepo: UserRepository }, + enviromentInfo: EnvironmentService, settings: { settingRepo: SettingRepository - } + }, } // TODO: the real thing @@ -364,6 +375,7 @@ async function initRepositories(models: DatabaseLayer, config: BootConfig): Prom const userRepo = new MongooseUserRepository(models.users.user) const settingRepo = new MongooseSettingsRepository(models.settings.setting) const attachmentStore = await intializeAttachmentStore(environment.attachmentBaseDirectory) + const systemInfoService = new EnvironmentServiceImpl(models.conn) if (attachmentStore instanceof FileSystemAttachmentStoreInitError) { throw attachmentStore } @@ -384,9 +396,10 @@ async function initRepositories(models: DatabaseLayer, config: BootConfig): Prom users: { userRepo }, + enviromentInfo: systemInfoService, settings: { settingRepo - } + }, } } @@ -396,6 +409,7 @@ async function initAppLayer(repos: Repositories): Promise { const icons = await initIconsAppLayer(repos) const feeds = await initFeedsAppLayer(repos) const users = await initUsersAppLayer(repos) + const systemInfo = initSystemInfoAppLayer(repos) const settings = await initSettingsAppLayer(repos) return { events, @@ -403,7 +417,8 @@ async function initAppLayer(repos: Repositories): Promise { feeds, icons, users, - settings + systemInfo, + settings, } } @@ -485,6 +500,22 @@ function initFeedsAppLayer(repos: Repositories): AppLayer['feeds'] { } } +function initSystemInfoAppLayer(repos: Repositories): SystemInfoAppLayer { + const permissionsService = new RoleBasedSystemInfoPermissionService() + const versionInfo = apiConfig.api.version + return { + readSystemInfo: CreateReadSystemInfo( + repos.enviromentInfo, + versionInfo, + Settings, + AuthenticationConfiguration, + AuthenticationConfigurationTransformer, + permissionsService + ), + permissionsService + } +} + async function initSettingsAppLayer(repos: Repositories): Promise { const mapPermissions = new RoleBasedMapPermissionService() const getMapSettings = FetchMapSettings(repos.settings.settingRepo, mapPermissions) @@ -501,8 +532,11 @@ interface MageEventRequestContext extends AppRequestContext { const observationEventScopeKey = 'observationEventScope' as const -async function initWebLayer(repos: Repositories, app: AppLayer, webUIPlugins: string[]): - Promise<{ webController: express.Application, addAuthenticatedPluginRoutes: (pluginId: string, pluginRoutes: WebRoutesHooks['webRoutes']) => void }> { +async function initWebLayer( + repos: Repositories, + app: AppLayer, + webUIPlugins: string[] +): Promise<{ webController: express.Application, addPluginRoutes: (pluginId: string, initPluginRoutes: WebRoutesHooks) => void }> { // load routes the old way const webLayer = await import('./express') const webController = webLayer.app @@ -544,6 +578,10 @@ async function initWebLayer(repos: Repositories, app: AppLayer, webUIPlugins: st bearerAuth, iconsRoutes ]) + const systemInfoRoutes = SystemInfoRoutes(app.systemInfo, appRequestFactory) + webController.use('/api', [ + systemInfoRoutes + ]) const observationRequestFactory: ObservationWebAppRequestFactory = (req: express.Request, params: Params) => { const context: observationsApi.ObservationRequestContext = { ...baseAppRequestContext(req), @@ -604,21 +642,29 @@ async function initWebLayer(repos: Repositories, app: AppLayer, webUIPlugins: st } try { const webappPackagePath = require.resolve('@ngageoint/mage.web-app/package.json') - const webappDir = path.dirname(webappPackagePath) - webController.use(express.static(webappDir)) + const webAppPath = path.dirname(webappPackagePath) + webController.use(express.static(path.join(webAppPath, 'app'))) + webController.use('/admin', express.static(path.join(webAppPath, 'admin'))) } catch (err) { console.warn('failed to load mage web app package', err) } return { webController, - addAuthenticatedPluginRoutes: (pluginId: string, initPluginRoutes: WebRoutesHooks['webRoutes']) => { - const routes = initPluginRoutes(pluginAppRequestContext) - webController.use(`/plugins/${pluginId}`, [ bearerAuth, routes ]) + addPluginRoutes: (pluginId: string, initPluginRoutes: WebRoutesHooks): void => { + if (initPluginRoutes.webRoutes.public) { + const routes = initPluginRoutes.webRoutes.public(pluginAppRequestContext) + webController.use(`/plugins/${pluginId}`, [routes]) + } + + if (initPluginRoutes.webRoutes.protected) { + const routes = initPluginRoutes.webRoutes.protected(pluginAppRequestContext) + webController.use(`/plugins/${pluginId}`, [bearerAuth, routes]) + } } } } - + function baseAppRequestContext(req: express.Request): AppRequestContext { return { requestToken: Symbol(), diff --git a/service/src/authentication/oauth.js b/service/src/authentication/oauth.js index dbb58dacc..a531c69ed 100644 --- a/service/src/authentication/oauth.js +++ b/service/src/authentication/oauth.js @@ -212,7 +212,7 @@ function initialize(strategy) { res.render('oauth', { uri: uri }); } } else { - res.render('authentication', { host: req.getRoot(), login: { token: req.token, user: req.user } }); + res.render('authentication', { host: req.getRoot(), success: true, login: { token: req.token, user: req.user } }); } } ); diff --git a/service/src/authentication/openidconnect.js b/service/src/authentication/openidconnect.js index 9b1ee59bc..88cfc9e1b 100644 --- a/service/src/authentication/openidconnect.js +++ b/service/src/authentication/openidconnect.js @@ -118,7 +118,7 @@ function configure(strategy) { res.redirect(uri); } else { - res.render('authentication', { host: req.getRoot(), login: { token: req.token, user: req.user } }); + res.render('authentication', { host: req.getRoot(), success: true, login: { token: req.token, user: req.user } }); } } ); diff --git a/service/src/config.js b/service/src/config.js index e9fb7330d..c844c0dca 100644 --- a/service/src/config.js +++ b/service/src/config.js @@ -1,16 +1,17 @@ const packageJson = require('../package'); +const version = packageJson.version.split('.'); -const version = packageJson.version.split("."); module.exports = { api: { name: packageJson.name, + nodeVersion: process.versions.node, description: packageJson.description, version: { major: parseInt(version[0]), minor: parseInt(version[1]), micro: parseInt(version[2]) - } + }, }, server: { locationServices: { diff --git a/service/src/entities/authorization/entities.permissions.ts b/service/src/entities/authorization/entities.permissions.ts index 62726be82..971033f42 100644 --- a/service/src/entities/authorization/entities.permissions.ts +++ b/service/src/entities/authorization/entities.permissions.ts @@ -77,6 +77,11 @@ export enum SettingPermission { MAP_SETTINGS_UPDATE = 'MAP_SETTINGS_UPDATE', } + +export enum SystemInfoPermission { + READ_SYSTEM_INFO = 'READ_SYSTEM_INFO', +} + export enum FeedsPermission { FEEDS_LIST_SERVICE_TYPES = 'FEEDS_LIST_SERVICE_TYPES', FEEDS_CREATE_SERVICE = 'FEEDS_CREATE_SERVICE', @@ -108,6 +113,7 @@ export const allPermissions = Object.freeze({ ...SettingPermission, ...FeedsPermission, ...StaticIconPermission, + ...SystemInfoPermission, ...ExportPermission, }) @@ -123,6 +129,7 @@ export type AnyPermission = | SettingPermission | FeedsPermission | StaticIconPermission + | SystemInfoPermission | ExportPermission const allPermissionsList = Object.freeze(Object.values(allPermissions)) diff --git a/service/src/entities/observations/entities.observations.ts b/service/src/entities/observations/entities.observations.ts index d734f3f84..72955f2c3 100644 --- a/service/src/entities/observations/entities.observations.ts +++ b/service/src/entities/observations/entities.observations.ts @@ -132,6 +132,17 @@ export interface Attachment { * store implementation may not use `contentLocator` at all. */ contentLocator?: string + /** + * TODO: this needs to allow a more robust value, such as + * `undefined | boolean` or maybe even allow `{ error: string }` so the + * image plugin's unprocessed attachment query can easily find attachments + * that have not yet been touched vs. attachments whose content could not be + * oriented. admins should also be able to easily query for the faulty + * attachments to take corrective action if possible. + * + * also, because this and the `thumbnails` field are specific to the image + * plugin, they should both be moved out of the core domain type. + */ oriented: boolean thumbnails: Thumbnail[] } diff --git a/service/src/entities/systemInfo/entities.systemInfo.ts b/service/src/entities/systemInfo/entities.systemInfo.ts new file mode 100644 index 000000000..fbf50fb6f --- /dev/null +++ b/service/src/entities/systemInfo/entities.systemInfo.ts @@ -0,0 +1,29 @@ + +export interface EnvironmentInfo { + nodeVersion: string + mongodbVersion: string + // TODO: maybe relavant environment variables? redact sensitive values +} + +export interface EnvironmentService { + readEnvironmentInfo(): Promise + // TODO: how to build dependency list/tree with all versions + readDependencies(): Promise +} + +export interface SystemInfo { + /** + * These [semantic](https://semver.org/) version components are parsed from + * the package version to allow the mobile apps to check compatibility with + * the server. Without this structure, the apps will not allow interaction + * with the server. + */ + version: { major: number, minor: number, micro: number } + /** + * Package version string straight from package.json + */ + environment: EnvironmentInfo + initial: boolean // is in initial setup with no users + disclaimer: any // mongoose Document type + contactInfo: any +} diff --git a/service/src/environment/env.js b/service/src/environment/env.js index 755707b94..31ba4078d 100644 --- a/service/src/environment/env.js +++ b/service/src/environment/env.js @@ -1,5 +1,7 @@ -const path = require('path') - , cfenv = require('cfenv'); +const mongodb = require('mongodb') + , path = require('path') + , cfenv = require('cfenv') + , log = require('winston'); if (!(process.env.MAGE_PORT || process.env.PORT || process.env.CF_INSTANCE_PORT || process.env.VCAP_APP_PORT)) { // bit of whitebox to cfenv lib here, because it provides no @@ -11,7 +13,6 @@ if (!(process.env.MAGE_PORT || process.env.PORT || process.env.CF_INSTANCE_PORT // which i think is undesirable behavior. process.env.MAGE_PORT = '4242'; } - let x509Key = process.env.MAGE_MONGO_X509_KEY; let x509Cert = process.env.MAGE_MONGO_X509_CERT; let x509CaCert = process.env.MAGE_MONGO_X509_CA_CERT; @@ -26,10 +27,33 @@ if (x509Key) { else if (x509KeyPath) { const fs = require('fs'); x509Key = fs.readFileSync(x509KeyPath); - x509Cert = fs.readFileSync(x509CertPath); + if (fs.existsSync(x509CertPath)) { + x509Cert = fs.readFileSync(x509CertPath); + } x509CaCert = fs.readFileSync(x509CaCertPath); } +//DEPRECATED: Remove in next release. +if (process.env.MAGE_MONGO_POOL_SIZE) { + log.warn('[DEPRECATED] The env variable MAGE_MONGO_POOL_SIZE is DEPRECATED. Please use MAGE_MONGO_MIN_POOL_SIZE and MAGE_MONGO_MAX_POOL_SIZE instead.'); +} + +let minMongoPoolSize = 5; +if (process.env.MAGE_MONGO_MIN_POOL_SIZE) { + minMongoPoolSize = parseInt(process.env.MAGE_MONGO_MIN_POOL_SIZE); +} else if (process.env.MAGE_MONGO_POOL_SIZE) { + //DEPRECATED: Remove in next release. + minMongoPoolSize = parseInt(process.env.MAGE_MONGO_POOL_SIZE); +} + +let maxMongoPoolSize = 5; +if (process.env.MAGE_MONGO_MAX_POOL_SIZE) { + maxMongoPoolSize = parseInt(process.env.MAGE_MONGO_MAX_POOL_SIZE); +} else if (process.env.MAGE_MONGO_POOL_SIZE) { + //DEPRECATED: Remove in next release. + maxMongoPoolSize = parseInt(process.env.MAGE_MONGO_POOL_SIZE); +} + const appEnv = cfenv.getAppEnv({ vcap: { services: { @@ -39,14 +63,16 @@ const appEnv = cfenv.getAppEnv({ plan: 'unlimited', credentials: { url: process.env.MAGE_MONGO_URL || 'mongodb://127.0.0.1:27017/magedb', - poolSize: parseInt(process.env.MAGE_MONGO_POOL_SIZE) || 5, + minPoolSize: minMongoPoolSize, + maxPoolSize: maxMongoPoolSize, replicaSet: process.env.MAGE_MONGO_REPLICA_SET, username: process.env.MAGE_MONGO_USER, password: process.env.MAGE_MONGO_PASSWORD, - ssl: process.env.MAGE_MONGO_SSL, + tls: process.env.MAGE_MONGO_SSL || null, x509Key: x509Key || null, x509Cert: x509Cert || null, - x509CaCert: x509CaCert || null + x509CaCert: x509CaCert || null, + tlsInsecure: process.env.MAGE_MONGO_TLS_INSECURE || null } } ] @@ -59,7 +85,6 @@ if (appEnv.isLocal) { } const mongoConfig = appEnv.getServiceCreds('MongoInstance'); -const mongoSsl = String(mongoConfig.ssl).toLowerCase() in { "true":0, "yes":0, "enabled":0 }; const environment = { address: process.env.MAGE_ADDRESS || '0.0.0.0', @@ -82,32 +107,41 @@ const environment = { connectTimeout: parseInt(process.env.MAGE_MONGO_CONN_TIMEOUT) * 1000 || 300000, connectRetryDelay: parseInt(process.env.MAGE_MONGO_CONN_RETRY_DELAY) * 1000 || 5000, options: { - useMongoClient: true, // this can be removed after upgrading to mongoose 5+ http://mongoosejs.com/docs/connections.html#v5-changes - poolSize: mongoConfig.poolSize, - replicaSet: mongoConfig.replicaSet, - ssl: mongoSsl + minPoolSize: mongoConfig.minPoolSize, + maxPoolSize: mongoConfig.maxPoolSize, + replicaSet: mongoConfig.replicaSet } } }; const user = mongoConfig.user || mongoConfig.username; -const password = mongoConfig.password; +const password = mongoConfig.pass || mongoConfig.password; + if (mongoConfig.x509Key) { + const mongoTls = String(mongoConfig.tls).toLowerCase() in { "true": 0, "yes": 0, "enabled": 0 }; + const tlsInsecure = String(mongoConfig.tlsInsecure).toLowerCase() in { "true": 0, "yes": 0, "enabled": 0 }; + Object.assign(environment.mongo.options, { - sslKey: mongoConfig.x509Key, - sslPass: password, - sslCert: mongoConfig.x509Cert, - sslCA: mongoConfig.x509CaCert, + tls: mongoTls, + key: mongoConfig.x509Key, + passphrase: password, + cert: mongoConfig.x509Cert, + ca: mongoConfig.x509CaCert, authSource: '$external', - ssl: true, - checkServerIdentity: false, - auth: { authMechanism: 'MONGODB-X509' } + authMechanism: mongodb.AuthMechanism.MONGODB_X509, + tlsInsecure: tlsInsecure }); } else if (user && password) { - environment.mongo.options.auth = { - user: user, password: password - }; + Object.assign(environment.mongo.options, { + auth: { + username: user, + password: password + }, + authSource: process.env.MAGE_MONGO_CRED_DB_NAME || 'admin', + //TODO we need to move to at least SHA256 + authMechanism: mongodb.AuthMechanism.MONGODB_SCRAM_SHA1, + }); } module.exports = environment; diff --git a/service/src/environment/magerc.sh b/service/src/environment/magerc.sh index 0e5fe9601..3838def95 100644 --- a/service/src/environment/magerc.sh +++ b/service/src/environment/magerc.sh @@ -29,7 +29,8 @@ export MAGE_MONGO_URL=mongodb://127.0.0.1:27017/magedb # whether to use secure, TLS sockets to connect to mongo export MAGE_MONGO_SSL=false # the size of MAGE's mongodb connection pool -export MAGE_MONGO_POOL_SIZE=5 +export MAGE_MONGO_MIN_POOL_SIZE=5 +export MAGE_MONGO_MAX_POOL_SIZE=5 # the user name MAGE uses to authenticate to mongodb export MAGE_MONGO_USER= # the password MAGE uses to authenticate to mongodb @@ -54,4 +55,9 @@ export MAGE_MONGO_X509_CA_CERT_FILE= export MAGE_MONGO_CONN_TIMEOUT=300 # seconds between attempts to connect to mongodb export MAGE_MONGO_CONN_RETRY_DELAY=5 - +# Using self-signed certs can cause issues. If it does, set this to true. +# (https://mongoosejs.com/docs/migrating_to_5.html#strict-ssl-validation). +export MAGE_MONGO_TLS_INSECURE=false +# Name of the db that contains the credentials +export MAGE_MONGO_CRED_DB_NAME= +export SFTP_PLUGIN_CONFIG_SALT="A0E6D3B4-25BD-4DD6-BBC9-B367931966AB" \ No newline at end of file diff --git a/service/src/export/exporter.ts b/service/src/export/exporter.ts index 624633f31..3c6b9ab91 100755 --- a/service/src/export/exporter.ts +++ b/service/src/export/exporter.ts @@ -39,7 +39,7 @@ export class Exporter { this._filter = options.filter; } - requestObservations(filter: ExportFilter): mongoose.QueryCursor { + requestObservations(filter: ExportFilter): mongoose.Cursor { const options: ObservationModelModule.ObservationReadStreamOptions = { filter: { states: [ 'active' ] as [ 'active' ], @@ -59,7 +59,7 @@ export class Exporter { * Return a cursor for the given location query with results ordered by user * ID and ascending timestamp. */ - requestLocations(options: LocationFetchOptions): mongoose.QueryCursor { + requestLocations(options: LocationFetchOptions): mongoose.Cursor { const filter = { eventId: this._event.id } as { eventId: number, startDate?: Date, endDate?: Date } diff --git a/service/src/main.impl/main.impl.plugins.ts b/service/src/main.impl/main.impl.plugins.ts index f6beb0b5c..e0f2411c4 100644 --- a/service/src/main.impl/main.impl.plugins.ts +++ b/service/src/main.impl/main.impl.plugins.ts @@ -13,9 +13,14 @@ export interface InjectableServices { (token: InjectionToken): Service } -export type AddPluginWebRoutes = (pluginId: string, initRoutes: WebRoutesHooks['webRoutes']) => void +export type AddPluginWebRoutes = (pluginId: string, webRoutes: WebRoutesHooks) => void -export async function integratePluginHooks(pluginId: string, plugin: InitPluginHook, injectService: InjectableServices, addWebRoutesFromPlugin: AddPluginWebRoutes): Promise { +export async function integratePluginHooks( + pluginId: string, + plugin: InitPluginHook, + injectService: InjectableServices, + addWebRoutesFromPlugin: AddPluginWebRoutes, +): Promise { let injection: Injection | null = null let hooks: PluginHooks if (plugin.inject) { @@ -32,6 +37,6 @@ export async function integratePluginHooks(pluginId: string, plugin: InitPluginH await loadIconsHooks(pluginId, hooks, injectService(StaticIconRepositoryToken)) await loadFeedsHooks(pluginId, hooks, injectService(FeedServiceTypeRepositoryToken)) if (hooks.webRoutes) { - await addWebRoutesFromPlugin(pluginId, hooks.webRoutes) + await addWebRoutesFromPlugin(pluginId, hooks) } } diff --git a/service/src/migrate.ts b/service/src/migrate.ts index 4817f8028..2c841459b 100644 --- a/service/src/migrate.ts +++ b/service/src/migrate.ts @@ -1,6 +1,6 @@ import path from 'path' -import * as migrations from 'mongodb-migrations' +import * as migrations from '@ngageoint/mongodb-migrations' // eslint-disable-next-line @typescript-eslint/no-var-requires const log = require('winston') diff --git a/service/src/migrations/006-event-teams.js b/service/src/migrations/006-event-teams.js index f82fe9777..b362f0f3c 100644 --- a/service/src/migrations/006-event-teams.js +++ b/service/src/migrations/006-event-teams.js @@ -8,7 +8,7 @@ exports.id = '006-event-teams'; exports.up = function(done) { this.log('creating team for each event'); - mongoose.model('Team').collection.dropAllIndexes(function (err) { + mongoose.model('Team').collection.dropIndexes(function (err) { if (err) console.log('could not drop indexes', err); Event.getEvents(function(err, events) { diff --git a/service/src/migrations/009-create-manager-role.js b/service/src/migrations/009-create-manager-role.js index 0b62d523e..8f8a24b5f 100644 --- a/service/src/migrations/009-create-manager-role.js +++ b/service/src/migrations/009-create-manager-role.js @@ -39,10 +39,10 @@ exports.up = function(done) { async.series([ createManagerRole.bind(this), function(done) { - TeamModel.update({}, {$set: {acl: {}}}, {multi: true}, done); + TeamModel.updateMany({}, {$set: {acl: {}}}, {}, done); }, function(done) { - EventModel.update({}, {$set: {acl: {}}}, {multi: true}, done); + EventModel.updateMany({}, {$set: {acl: {}}}, {}, done); } ], function(err) { done(err); diff --git a/service/src/migrations/010-add-user-device-manager-role.js b/service/src/migrations/010-add-user-device-manager-role.js index e6cb6bdb7..a3d2ef5a7 100644 --- a/service/src/migrations/010-add-user-device-manager-role.js +++ b/service/src/migrations/010-add-user-device-manager-role.js @@ -34,7 +34,7 @@ function createManagerRole(callback) { }; console.log('Update event/team manager role to add user and device edit permissions...'); - RoleModel.update({name: 'EVENT_MANAGER_ROLE'}, managerRole, function(err) { + RoleModel.updateOne({name: 'EVENT_MANAGER_ROLE'}, managerRole, function(err) { callback(err); }); } diff --git a/service/src/migrations/011-multiple-forms.js b/service/src/migrations/011-multiple-forms.js index 83e1b662b..b280f4c60 100644 --- a/service/src/migrations/011-multiple-forms.js +++ b/service/src/migrations/011-multiple-forms.js @@ -109,7 +109,7 @@ function migrateIconData(event, formId, callback) { IconModel.create({eventId: event._id, formId: null, type: null, variant: null, relativePath: path.join(event._id.toString(), 'icon.png')}, done); }, function(done) { - IconModel.update({eventId: event._id, formId: formId}, {$rename: {'type': 'primary'}}, {multi: true, strict: false}, done); + IconModel.updateMany({eventId: event._id, formId: formId}, {$rename: {'type': 'primary'}}, {strict: false}, done); } ],function(err) { callback(err); diff --git a/service/src/migrations/012-user-role-remove-delete.js b/service/src/migrations/012-user-role-remove-delete.js index 2f6fce6b0..f10a84f2f 100644 --- a/service/src/migrations/012-user-role-remove-delete.js +++ b/service/src/migrations/012-user-role-remove-delete.js @@ -6,13 +6,13 @@ exports.id = 'user-role-remove-delete'; exports.up = function(done) { this.log('updating user role to remove delete permisson...'); - RoleModel.update({name: 'USER_ROLE'}, {$pull : {permissions: 'DELETE_OBSERVATION'}}, function(err) { + RoleModel.updateOne({name: 'USER_ROLE'}, {$pull : {permissions: 'DELETE_OBSERVATION'}}, function(err) { done(err); }); }; exports.down = function(done) { - RoleModel.update({name: 'USER_ROLE'}, {$push : {permissions: 'DELETE_OBSERVATION'}}, function(err) { + RoleModel.updateOne({name: 'USER_ROLE'}, {$push : {permissions: 'DELETE_OBSERVATION'}}, function(err) { done(err); }); }; diff --git a/service/src/migrations/014-add-role-update-permission.js b/service/src/migrations/014-add-role-update-permission.js index 2065be4c4..48eda9eec 100644 --- a/service/src/migrations/014-add-role-update-permission.js +++ b/service/src/migrations/014-add-role-update-permission.js @@ -6,13 +6,13 @@ exports.id = 'add-role-update-delete'; exports.up = function(done) { this.log('adding update permission to ADMIN_ROLE ...'); - RoleModel.update({name: 'ADMIN_ROLE'}, {$push : {permissions: 'UPDATE_USER_ROLE'}}, function(err) { + RoleModel.updateOne({name: 'ADMIN_ROLE'}, {$push : {permissions: 'UPDATE_USER_ROLE'}}, function(err) { done(err); }); }; exports.down = function(done) { - RoleModel.update({name: 'ADMIN_ROLE'}, {$pull : {permissions: 'UPDATE_USER_ROLE'}}, function(err) { + RoleModel.updateOne({name: 'ADMIN_ROLE'}, {$pull : {permissions: 'UPDATE_USER_ROLE'}}, function(err) { done(err); }); }; diff --git a/service/src/migrations/015-manager-role-add-user-create.js b/service/src/migrations/015-manager-role-add-user-create.js index 1c7347580..7733179a0 100644 --- a/service/src/migrations/015-manager-role-add-user-create.js +++ b/service/src/migrations/015-manager-role-add-user-create.js @@ -6,13 +6,13 @@ exports.id = 'manager-role-add-user-create'; exports.up = function(done) { this.log('updating event manager role to add user create permisson...'); - RoleModel.update({name: 'EVENT_MANAGER_ROLE'}, {$push : {permissions: 'CREATE_USER'}}, function(err) { + RoleModel.updateOne({name: 'EVENT_MANAGER_ROLE'}, {$push : {permissions: 'CREATE_USER'}}, function(err) { done(err); }); }; exports.down = function(done) { - RoleModel.update({name: 'USER_ROLE'}, {$pull : {permissions: 'CREATE_USER'}}, function(err) { + RoleModel.updateOne({name: 'USER_ROLE'}, {$pull : {permissions: 'CREATE_USER'}}, function(err) { done(err); }); }; diff --git a/service/src/migrations/018-set-default-password-policy.js b/service/src/migrations/018-set-default-password-policy.js index eb6490cd9..27e63d1da 100644 --- a/service/src/migrations/018-set-default-password-policy.js +++ b/service/src/migrations/018-set-default-password-policy.js @@ -39,7 +39,7 @@ const passwordPolicy = { passwordHistoryCountEnabled: false }; -exports.up = function (done) { +exports.up = async function (done) { log.info('Setting default password policy'); if (config.api.authenticationStrategies && config.api.authenticationStrategies['local']) { @@ -49,16 +49,20 @@ exports.up = function (done) { } } - const update = { + let update = { $rename: { 'settings.accountLock': 'settings.local.accountLock' - }, + } + } + + await this.db.collection('settings').findOneAndUpdate({ type: 'security' }, update, { upsert: true }); + update = { $set: { 'settings.local.passwordPolicy': passwordPolicy, } } - - this.db.collection('settings').findAndModify({ type: 'security' }, null, update, { upsert: true }, done); + await this.db.collection('settings').findOneAndUpdate({ type: 'security' }, update, { upsert: true }); + done(); }; exports.down = function (done) { diff --git a/service/src/migrations/019-move-user-authentication.js b/service/src/migrations/019-move-user-authentication.js index 1edea9364..61dfc7a71 100644 --- a/service/src/migrations/019-move-user-authentication.js +++ b/service/src/migrations/019-move-user-authentication.js @@ -4,20 +4,15 @@ const log = require('winston'); exports.id = 'move-user-authentication'; -exports.up = function (done) { +exports.up = async function (done) { try { log.info('Moving authentication from user model to authentication model'); - this.db.createCollection('authentications', (err, authenticationCollection) => { - if (err) done(err); + const authenticationCollection = await this.db.collection('authentications'); + const userCollection = await this.db.collection('users'); + migrateAuthentication(authenticationCollection, userCollection) + .then(() => done()) + .catch(err => done(err)); - this.db.collection('users', function (err, userCollection) { - if (err) done(err); - - migrateAuthentication(authenticationCollection, userCollection) - .then(() => done()) - .catch(err => done(err)); - }); - }); } catch (err) { log.warn('Failed moving authentication to new model', err); done(err); diff --git a/service/src/migrations/020-add-export-permissions.js b/service/src/migrations/020-add-export-permissions.js index e6fcfe1f3..6d2eab082 100644 --- a/service/src/migrations/020-add-export-permissions.js +++ b/service/src/migrations/020-add-export-permissions.js @@ -4,32 +4,26 @@ const log = require('winston'); exports.id = 'add-export-permissions'; -exports.up = function (done) { +exports.up = async function (done) { try { log.info('Adding export permissions (READ_EXPORT, DELETE_EXPORT)'); - this.db.collection('roles', { strict: true }, function (err, rolesCollection) { - if (err) return done(err); - - rolesCollection.updateOne({ name: 'ADMIN_ROLE' }, { $push: { permissions: { $each: ['READ_EXPORT', 'DELETE_EXPORT'] } } }) - .then(() => done()) - .catch(err => done(err)); - }); + const rolesCollection = await this.db.collection('roles'); + rolesCollection.updateOne({ name: 'ADMIN_ROLE' }, { $push: { permissions: { $each: ['READ_EXPORT', 'DELETE_EXPORT'] } } }) + .then(() => done()) + .catch(err => done(err)); } catch (err) { log.warn('Failed adding export roles', err); done(err); } }; -exports.down = function (done) { +exports.down = async function (done) { try { log.info('Removing export permissions (READ_EXPORT, DELETE_EXPORT)'); - this.db.collection('roles', { strict: true }, function (err, rolesCollection) { - if (err) return done(err); - - rolesCollection.updateOne({ name: 'ADMIN_ROLE' }, { $pull: { permissions: { $each: ['READ_EXPORT', 'DELETE_EXPORT'] } } }) - .then(() => done()) - .catch(err => done(err)); - }); + const rolesCollection = await this.db.collection('roles'); + rolesCollection.updateOne({ name: 'ADMIN_ROLE' }, { $pull: { permissions: { $each: ['READ_EXPORT', 'DELETE_EXPORT'] } } }) + .then(() => done()) + .catch(err => done(err)); } catch (err) { log.warn('Failed removing export roles', err); done(err); diff --git a/service/src/migrations/022-copy-auth-from-config-to-db.js b/service/src/migrations/022-copy-auth-from-config-to-db.js index 29f65e038..a318d34c2 100644 --- a/service/src/migrations/022-copy-auth-from-config-to-db.js +++ b/service/src/migrations/022-copy-auth-from-config-to-db.js @@ -8,7 +8,7 @@ function createDBObjectsFromConfig() { if (config.api && config.api.authenticationStrategies) { //Copy configs to DB objects - Object.keys(config.api.authenticationStrategies).forEach(authStratName => { + Object.keys(config.api.authenticationStrategies).forEach(authStratName => { if (authStratName !== 'local') { const authStratConfig = config.api.authenticationStrategies[authStratName]; @@ -16,8 +16,8 @@ function createDBObjectsFromConfig() { log.debug("Copying " + authStratName + " auth strategy"); let binIcon; - if(authStratConfig.icon) { - binIcon = Buffer.from(authStratConfig.icon, 'base64'); + if (authStratConfig.icon) { + binIcon = Buffer.from(authStratConfig.icon, 'base64'); } const authDbObject = { @@ -58,33 +58,21 @@ function createDBObjectsFromConfig() { return authDbObjects; } -exports.up = function (done) { +exports.up = async function (done) { log.info('Copying authentication strategies from config.js to the DB'); try { const authDbObjects = createDBObjectsFromConfig(); //Save DB objects to DB - this.db.createCollection('authenticationconfigurations').then(collection => { - return collection.createIndex(['type', 'name'], { unique: true }); - }).then(result => { - if (result.error) { - log.error(result.error); - return done(result.error); - } - - return Promise.resolve(this.db.collection('authenticationconfigurations')); - }).then(collection => { - if (authDbObjects.length > 0) { - log.info('Inserting ' + authDbObjects.length + ' authentication strategies into the DB'); - collection.insertMany(authDbObjects, {}, done); - } else { - done(); - } - }).catch(err => { - log.error(err); - done(err); - }); + const collection = await this.db.collection('authenticationconfigurations'); + await collection.createIndex(['type', 'name'], { unique: true }); + if (authDbObjects.length > 0) { + log.info('Inserting ' + authDbObjects.length + ' authentication strategies into the DB'); + collection.insertMany(authDbObjects, {}, done); + } else { + done(); + } } catch (err) { log.warn("Failed while copying authentication strategies to the DB", err); done(err); diff --git a/service/src/migrations/023-move-local-auth-from-settings.js b/service/src/migrations/023-move-local-auth-from-settings.js index 6116dd513..ea8ddff8d 100644 --- a/service/src/migrations/023-move-local-auth-from-settings.js +++ b/service/src/migrations/023-move-local-auth-from-settings.js @@ -2,55 +2,54 @@ const log = require('winston'); exports.id = 'move-local-auth-from-settings'; -exports.up = function (done) { +exports.up = async function (done) { log.info('Moving local authentication from settings to authenticationconfigurations'); const settings = this.db.collection('settings'); - settings.findOneAndDelete({ type: 'security' }).then(result => { - const localSettings = result.value.settings.local; + const result = await settings.findOneAndDelete({ type: 'security' }) + const localSettings = result.value.settings.local; - let binIcon; - if(localSettings.icon) { - binIcon = new Buffer(localSettings.icon, 'base64'); - } + let binIcon; + if (localSettings.icon) { + binIcon = Buffer.from(localSettings.icon, 'base64'); + } - const authDbObject = { - enabled: true, - name: 'local', - type: 'local', - title: 'MAGE Username/Password', - textColor: localSettings.textColor, - buttonColor: localSettings.buttonColor, - icon: binIcon, - settings: { - newUserEvents: [], - newUserTeams: [], - usersReqAdmin: { - enabled: true - }, - devicesReqAdmin: { - enabled: true - }, - accountLock: { - enabled: false - } + const authDbObject = { + enabled: true, + name: 'local', + type: 'local', + title: 'MAGE Username/Password', + textColor: localSettings.textColor, + buttonColor: localSettings.buttonColor, + icon: binIcon, + settings: { + newUserEvents: [], + newUserTeams: [], + usersReqAdmin: { + enabled: true + }, + devicesReqAdmin: { + enabled: true + }, + accountLock: { + enabled: false } - }; - - const nonSettingsKeys = ['name', 'type', 'title', 'textColor', 'buttonColor', 'icon']; - const allKeys = Object.keys(localSettings); - for (let i = 0; i < allKeys.length; i++) { - const key = allKeys[i]; - if (nonSettingsKeys.includes(key)) { - continue - }; - authDbObject.settings[key] = localSettings[key]; } - log.debug('Strategy ' + 'local' + ' DB object:' + JSON.stringify(authDbObject)); - this.db.collection('authenticationconfigurations').insertOne(authDbObject, {}, done); - }).catch(err => { - done(err); - }); + }; + + const nonSettingsKeys = ['name', 'type', 'title', 'textColor', 'buttonColor', 'icon']; + const allKeys = Object.keys(localSettings); + for (let i = 0; i < allKeys.length; i++) { + const key = allKeys[i]; + if (nonSettingsKeys.includes(key)) { + continue + }; + authDbObject.settings[key] = localSettings[key]; + } + log.debug('Strategy ' + 'local' + ' DB object:' + JSON.stringify(authDbObject)); + const authenticationconfigurations = await this.db.collection('authenticationconfigurations'); + await authenticationconfigurations.insertOne(authDbObject); + done(); }; exports.down = function (done) { diff --git a/service/src/migrations/024-link-auth-to-auth-config.js b/service/src/migrations/024-link-auth-to-auth-config.js index 955d6223d..ff55ba0b3 100644 --- a/service/src/migrations/024-link-auth-to-auth-config.js +++ b/service/src/migrations/024-link-auth-to-auth-config.js @@ -32,21 +32,15 @@ async function link(authenticationCollection, authenticationConfigurationsCollec }); } -exports.up = function (done) { +exports.up = async function (done) { log.info('Linking authentications to their authentication configuration'); - this.db.collection('authentications', { strict: true }, (err, authenticationCollection) => { - if (err) return done(err); - - this.db.collection('authenticationconfigurations', { strict: true }, (err, authenticationConfigurationsCollection) => { - if (err) return done(err); - - link(authenticationCollection, authenticationConfigurationsCollection).then(() => { - done(); - }).catch(err => { - done(err); - }); - }); + const authenticationCollection = await this.db.collection('authentications'); + const authenticationConfigurationsCollection = await this.db.collection('authenticationconfigurations') + link(authenticationCollection, authenticationConfigurationsCollection).then(() => { + done(); + }).catch(err => { + done(err); }); }; diff --git a/service/src/migrations/025-add-auth-config-permissions.js b/service/src/migrations/025-add-auth-config-permissions.js index 09186622c..527fa7d8a 100644 --- a/service/src/migrations/025-add-auth-config-permissions.js +++ b/service/src/migrations/025-add-auth-config-permissions.js @@ -4,28 +4,22 @@ const log = require('winston'); exports.id = 'add-auth-config-permissions'; -exports.up = function (done) { +exports.up = async function (done) { try { log.info('Adding auth config permissions (READ_AUTH_CONFIG, UPDATE_AUTH_CONFIG)'); - this.db.collection('roles', { strict: true }, function (err, rolesCollection) { - if (err) return done(err); - - rolesCollection.updateOne({ name: 'ADMIN_ROLE' }, { $push: { permissions: { $each: ['READ_AUTH_CONFIG', 'UPDATE_AUTH_CONFIG'] } } }).then(() => done()).catch(err => done(err)); - }); + const rolesCollection = await this.db.collection('roles'); + rolesCollection.updateOne({ name: 'ADMIN_ROLE' }, { $push: { permissions: { $each: ['READ_AUTH_CONFIG', 'UPDATE_AUTH_CONFIG'] } } }).then(() => done()).catch(err => done(err)); } catch (err) { log.warn('Failed adding auth config roles', err); done(err); } }; -exports.down = function (done) { +exports.down = async function (done) { try { log.info('Removing auth config permissions (READ_AUTH_CONFIG, UPDATE_AUTH_CONFIG)'); - this.db.collection('roles', { strict: true }, function (err, rolesCollection) { - if (err) return done(err); - - rolesCollection.updateOne({ name: 'ADMIN_ROLE' }, { $pull: { permissions: { $each: ['READ_AUTH_CONFIG', 'UPDATE_AUTH_CONFIG'] } } }).then(() => done()).catch(err => done(err)); - }); + const rolesCollection = await this.db.collection('roles'); + rolesCollection.updateOne({ name: 'ADMIN_ROLE' }, { $pull: { permissions: { $each: ['READ_AUTH_CONFIG', 'UPDATE_AUTH_CONFIG'] } } }).then(() => done()).catch(err => done(err)) } catch (err) { log.warn('Failed removing auth config roles', err); done(err); diff --git a/service/src/migrations/030-add-read-system-info-permissions.js b/service/src/migrations/030-add-read-system-info-permissions.js new file mode 100644 index 000000000..4f19e6af5 --- /dev/null +++ b/service/src/migrations/030-add-read-system-info-permissions.js @@ -0,0 +1,29 @@ +const mongoose = require('mongoose'); +const RoleModel = mongoose.model('Role'); + +exports.id = 'add-read-system-info-permission'; + +exports.up = function(done) { + this.log('adding READ_SYSTEM_INFO permission to ADMIN_ROLE ...'); + + // Use $addToSet to ensure the permission is only added if it doesn't exist + RoleModel.updateOne( + { name: 'ADMIN_ROLE' }, + { $addToSet: { permissions: 'READ_SYSTEM_INFO' } }, + function(err) { + done(err); + } + ); +}; + +exports.down = function(done) { + this.log('removing READ_SYSTEM_INFO permission from ADMIN_ROLE ...'); + + RoleModel.updateOne( + { name: 'ADMIN_ROLE' }, + { $pull: { permissions: 'READ_SYSTEM_INFO' } }, + function(err) { + done(err); + } + ); +}; diff --git a/service/src/models/authentication.js b/service/src/models/authentication.js index a94c1b9c8..86505e2f9 100644 --- a/service/src/models/authentication.js +++ b/service/src/models/authentication.js @@ -82,7 +82,7 @@ LocalSchema.pre('save', function (next) { async.waterfall([ function (done) { - AuthenticationConfiguration.Model.findById(authentication.authenticationConfigurationId).then(localConfiguration => { + AuthenticationConfiguration.getById(authentication.authenticationConfigurationId).then(localConfiguration => { done(null, localConfiguration.settings.passwordPolicy); }).catch(err => done(err)); }, @@ -124,18 +124,14 @@ LocalSchema.pre('save', function (next) { async.waterfall([ function (done) { - User.getUserByAuthenticationId(authentication._id).then(user => { - done(null, user); - }).catch(err => { - done(err); + User.getUserByAuthenticationId(authentication._id, function (err, user) { + done(err, user); }); }, function (user, done) { if (user) { Token.removeTokensForUser(user, function (err) { - if (err) return done(err); - - done(); + done(err); }); } else { done(); diff --git a/service/src/models/authenticationconfiguration.js b/service/src/models/authenticationconfiguration.js index 87fedec9f..7b4a0322d 100644 --- a/service/src/models/authenticationconfiguration.js +++ b/service/src/models/authenticationconfiguration.js @@ -34,31 +34,29 @@ const blacklist = ['clientsecret', 'bindcredentials', 'privatecert', 'decryption const secureMask = '*****'; function DbAuthenticationConfigurationToObject(config, ret, options) { - if ('function' !== typeof config.ownerDocument) { - delete ret.__v; + delete ret.__v; - if (options.whitelist) { - if (config.type === 'local') { - return; - } - - Object.keys(ret).forEach(key => { - if (!whitelist.includes(key)) { - delete ret[key]; - } - }); + if (options.whitelist) { + if (config.type === 'local') { + return; } - if (options.blacklist) { - Object.keys(ret.settings).forEach(key => { - if (blacklist.includes(key.toLowerCase())) { - ret.settings[key] = secureMask; - } - }); - } + Object.keys(ret).forEach(key => { + if (!whitelist.includes(key)) { + delete ret[key]; + } + }); + } - ret.icon = ret.icon ? ret.icon.toString('base64') : null; + if (options.blacklist) { + Object.keys(ret.settings).forEach(key => { + if (blacklist.includes(key.toLowerCase())) { + ret.settings[key] = secureMask; + } + }); } + + ret.icon = ret.icon ? ret.icon.toString('base64') : null; } exports.transform = DbAuthenticationConfigurationToObject; diff --git a/service/src/models/cappedLocation.js b/service/src/models/cappedLocation.js index 820f2ddfa..a6e973a3a 100644 --- a/service/src/models/cappedLocation.js +++ b/service/src/models/cappedLocation.js @@ -8,30 +8,28 @@ const locationLimit = config.server.locationServices.userCollectionLocationLimit // Creates the Schema for FFT Locations const CappedLocationSchema = new Schema({ - userId: {type: Schema.Types.ObjectId, required: false, sparse: true, ref: 'User'}, - eventId: {type: Number, required: false, sparse: true, ref:'Event'}, + userId: { type: Schema.Types.ObjectId, required: false, sparse: true, ref: 'User' }, + eventId: { type: Number, required: false, sparse: true, ref: 'Event' }, locations: [Location.Model.schema] -},{ +}, { versionKey: false }); // TODO: this seems superfluous - probably remove because there's already an index on eventId in the field definition -CappedLocationSchema.index({'eventId': 1}); +CappedLocationSchema.index({ 'eventId': 1 }); // TODO: this seems superflous because there's already an index on properties.timestamp in LocationSchema. do child-schema indexes get created on parent collections? -CappedLocationSchema.index({'locations.properties.timestamp': 1}); -CappedLocationSchema.index({'locations.properties.timestamp': 1, 'eventId': 1}); +CappedLocationSchema.index({ 'locations.properties.timestamp': 1 }); +CappedLocationSchema.index({ 'locations.properties.timestamp': 1, 'eventId': 1 }); const transform = function (userLocation, ret) { - if ('function' !== typeof userLocation.ownerDocument) { - if (userLocation.populated('userId')) { - ret.user = userLocation.userId.toObject(); - delete ret.user.icon; - } - - delete ret._id; - ret.id = ret.user ? ret.user.id : userLocation.userId; - ret.locations = (userLocation.locations || []).reverse(); + if (userLocation.populated('userId')) { + ret.user = userLocation.userId.toObject(); + delete ret.user.icon; } + + delete ret._id; + ret.id = ret.user ? ret.user.id : userLocation.userId; + ret.locations = (userLocation.locations || []).reverse(); } CappedLocationSchema.set("toJSON", { @@ -46,19 +44,19 @@ CappedLocationSchema.set("toObject", { const CappedLocation = mongoose.model('CappedLocation', CappedLocationSchema); exports.Model = CappedLocation; -exports.addLocations = function(user, event, locations, callback) { +exports.addLocations = function (user, event, locations, callback) { const update = { $push: { - locations: {$each: locations, $sort: {"properties.timestamp": 1}, $slice: -1 * locationLimit} + locations: { $each: locations, $sort: { "properties.timestamp": 1 }, $slice: -1 * locationLimit } } }; - CappedLocation.findOneAndUpdate({userId: user._id, eventId: event._id}, update, {upsert: true, new: true}, function(err, user) { + CappedLocation.findOneAndUpdate({ userId: user._id, eventId: event._id }, update, { upsert: true, new: true }, function (err, user) { callback(err, user); }); }; -exports.getLocations = function(options, callback) { +exports.getLocations = function (options, callback) { let limit = options.limit; limit = limit <= locationLimit ? limit : locationLimit; @@ -67,7 +65,7 @@ exports.getLocations = function(options, callback) { const parameters = {}; if (filter.eventId) parameters.eventId = filter.eventId; - const query = CappedLocation.find(parameters, {userId: 1, locations: {$slice: -1 * limit}}); + const query = CappedLocation.find(parameters, { userId: 1, locations: { $slice: -1 * limit } }); // TODO take out where if (filter.startDate) { @@ -88,9 +86,9 @@ exports.getLocations = function(options, callback) { query.exec(callback); }; -exports.removeLocationsForUser = function(user, callback) { - const conditions = {"userId": user._id}; - CappedLocation.remove(conditions, function(err) { +exports.removeLocationsForUser = function (user, callback) { + const conditions = { "userId": user._id }; + CappedLocation.remove(conditions, function (err) { callback(err); }); }; diff --git a/service/src/models/device.js b/service/src/models/device.js index 278f62bb2..34891b4bf 100644 --- a/service/src/models/device.js +++ b/service/src/models/device.js @@ -1,3 +1,5 @@ +'use strict'; + const mongoose = require('mongoose') , async = require('async') , Observation = require('./observation') @@ -10,14 +12,10 @@ const mongoose = require('mongoose') // Creates a new Mongoose Schema object const Schema = mongoose.Schema; -function toLowerCase(field) { - return field.toLowerCase(); -} - // Collection to hold users // TODO cascade delete from userId when user is deleted. const DeviceSchema = new Schema({ - uid: { type: String, required: true, unique: true, set: toLowerCase }, + uid: { type: String, required: true, unique: true, lowercase: true }, description: { type: String, required: false }, registered: { type: Boolean, required: true, default: false }, userId: { type: Schema.Types.ObjectId, ref: 'User' }, @@ -27,18 +25,23 @@ const DeviceSchema = new Schema({ versionKey: false }); -DeviceSchema.path('userId').validate(function (userId, done) { - User.getUserById(userId, function (err, user) { - if (err || !user) { - done(false); - } else { - done(true); +DeviceSchema.path('userId').validate(async function (userId) { + let isValid = true; + + try { + const user = await User.getUserById(userId); + if (!user) { + isValid = false; } - }); + } catch (err) { + isValid = false; + } + + return isValid; }, 'Invalid POC user, user does not exist'); DeviceSchema.pre('findOneAndUpdate', function (next) { - if (this.getUpdate().registered === false) { + if (this.getUpdate() && this.getUpdate().registered === false) { Token.removeTokenForDevice({ _id: this.getQuery()._id }, function (err) { next(err); }); @@ -47,17 +50,18 @@ DeviceSchema.pre('findOneAndUpdate', function (next) { } }); -DeviceSchema.pre('remove', function (next) { - const device = this; +DeviceSchema.pre('findOneAndDelete', function (next) { + //Get a reference of "this" that can be used in async, since "this" changes in async + const query = this; async.parallel({ token: function (done) { - Token.removeTokenForDevice(device, function (err) { + Token.removeTokenForDevice({ _id: query.getQuery()._id }, function (err) { done(err); }); }, observation: function (done) { - Observation.removeDevice(device, function (err) { + Observation.removeDevice({ _id: query.getQuery()._id }, function (err) { done(err); }); } @@ -68,14 +72,12 @@ DeviceSchema.pre('remove', function (next) { }); function transform(device, ret) { - if ('function' !== typeof device.ownerDocument) { - ret.id = ret._id; - delete ret._id; + ret.id = ret._id; + delete ret._id; - if (device.populated('userId')) { - ret.user = ret.userId; - delete ret.userId; - } + if (device.populated('userId')) { + ret.user = ret.userId; + delete ret.userId; } } @@ -99,7 +101,7 @@ exports.getDeviceById = function (id, options) { }; exports.getDeviceByUid = function (uid, { expand = {} } = {}) { - const query = Device.findOne({ uid: uid.toLowerCase() }); + const query = Device.findOne({ uid: uid }); if (expand.user) { query.populate('userId'); @@ -109,13 +111,13 @@ exports.getDeviceByUid = function (uid, { expand = {} } = {}) { }; exports.getDevices = function (options = {}) { - const {filter = {}, expand = {}} = options; + const { filter = {}, expand = {} } = options; const conditions = createQueryConditions(filter); let query = Device.find(conditions); - if(options.lean) { + if (options.lean) { query = query.lean(); } @@ -137,7 +139,7 @@ exports.getDevices = function (options = {}) { const isPaging = options.limit != null && options.limit > 0; if (isPaging) { - let countQuery = null; + let countQuery = null; if (!isUserQuery) { countQuery = Device.find(conditions); } @@ -206,12 +208,7 @@ async function queryUsersAndDevicesThenPage(options, conditions) { }); } -exports.createDevice = async function (device) { - // TODO there is a ticket in mongooose that is currently open - // to add support for running setters on findOneAndUpdate - // once that happens there is no need to do this - device.uid = device.uid.toLowerCase(); - +exports.createDevice = function (device) { const update = { name: device.name, description: device.description, @@ -222,23 +219,15 @@ exports.createDevice = async function (device) { }; log.info(`creating new device ${device.uid} for user ${device.userId}`); - const options = { new: true, upsert: true, setDefaultsOnInsert: true, runValidators: true }; - return await Device.findOneAndUpdate({ uid: device.uid }, update, options); + const options = { new: true, upsert: true, runValidators: true }; + return Device.findOneAndUpdate({ uid: device.uid }, update, options).exec(); }; -exports.updateDevice = async function (id, update) { - // TODO there is a ticket in mongooose that is currently open - // to add support for running setters on findOneAndUpdate - // once that happens there is no need to do this - if (update.uid) { - update.uid = update.uid.toLowerCase(); - } - return await Device.findByIdAndUpdate(id, update, { new: true, setDefaultsOnInsert: true, runValidators: true }); +exports.updateDevice = function (id, update) { + const options = { new: true, runValidators: true }; + return Device.findOneAndUpdate({ _id: id }, update, options).exec(); }; exports.deleteDevice = function (id) { - return Device.findById(id).exec() - .then(device => { - return device ? device.remove() : Promise.resolve(device); - }); -}; + return Device.findOneAndDelete({ _id: id }).exec(); +}; \ No newline at end of file diff --git a/service/src/models/event.d.ts b/service/src/models/event.d.ts index 9c7fd6cc0..bc1947599 100644 --- a/service/src/models/event.d.ts +++ b/service/src/models/event.d.ts @@ -1,11 +1,11 @@ -import mongoose, { DocumentToObjectOptions } from 'mongoose' +import mongoose, { ToObjectOptions } from 'mongoose' import { UserDocument } from './user' import { MageEventId, MageEventAttrs, MageEventCreateAttrs, EventAccessType, EventRole } from '../entities/events/entities.events' import { Team, TeamMemberRole } from '../entities/teams/entities.teams' import { Form, FormField, FormFieldChoice } from '../entities/events/entities.events.forms' import { PageInfo } from '../utilities/paging'; -export interface MageEventDocumentToObjectOptions extends DocumentToObjectOptions { +export interface MageEventDocumentToObjectOptions extends ToObjectOptions { access: { user: UserDocument, permission: EventAccessType } projection: any } @@ -34,7 +34,7 @@ export type MageEventDocument = Omit & Omit { log.info("Successfully created observation collection for event " + event.name); - }); + }).catch(err => { + log.error(err); + }) } function dropObservationCollection(event, callback) { log.info("Dropping observation collection: " + event.collectionName); - mongoose.connection.db.dropCollection(event.collectionName, function(err) { - if (!err) { - log.info('Dropped observation collection ' + event.collectionName); - } + mongoose.connection.db.dropCollection(event.collectionName).then(() => { + log.info('Dropped observation collection ' + event.collectionName); + callback(); + }).catch(err => { callback(err); }); } -exports.create = function(event, user, callback) { +exports.create = function (event, user, callback) { async.waterfall([ - function(done) { + function (done) { Counter.getNext('event') .then(id => done(null, id)) .catch(err => done(err)); }, - function(id, done) { + function (id, done) { event._id = id; event.collectionName = 'observations' + id; event.acl = {}; event.acl[user._id.toString()] = 'OWNER'; - Event.create(event, function(err, newEvent) { + Event.create(event, function (err, newEvent) { if (err) return done(err); createObservationCollection(newEvent); @@ -463,18 +466,18 @@ exports.create = function(event, user, callback) { done(null, newEvent); }); }, - function(event, done) { - Team.createTeamForEvent(event, user, function(err) { + function (event, done) { + Team.createTeamForEvent(event, user, function (err) { if (err) { // could not create the team for this event, remove the event and error out - event.remove(function() { + event.remove(function () { done(err); }); } done(err, event); }); } - ], function(err, newEvent) { + ], function (err, newEvent) { if (err) { return callback(err); } @@ -482,7 +485,7 @@ exports.create = function(event, user, callback) { }); }; -exports.update = function(id, event, options, callback) { +exports.update = function (id, event, options, callback) { if (typeof options === 'function') { callback = options; options = {}; @@ -497,12 +500,12 @@ exports.update = function(id, event, options, callback) { // preserve form ids if (event.forms) { - event.forms.forEach(function(form) { + event.forms.forEach(function (form) { form._id = form.id; }); } - Event.findByIdAndUpdate(id, update, {new: true, runValidators: true, context: 'query'}, function(err, updatedEvent) { + Event.findByIdAndUpdate(id, update, { new: true, runValidators: true }, function (err, updatedEvent) { if (err) { return callback(err); } @@ -510,19 +513,19 @@ exports.update = function(id, event, options, callback) { }); }; -exports.addForm = function(eventId, form, callback) { +exports.addForm = function (eventId, form, callback) { Counter.getNext('form') .then(id => { form._id = id; - var update = { - $push: {forms: form} + const update = { + $push: { forms: form } }; - Event.findByIdAndUpdate(eventId, update, {new: true, runValidators: true}, function(err, event) { + Event.findByIdAndUpdate(eventId, update, { new: true, runValidators: true }, function (err, event) { if (err) return callback(err); - var forms = event.forms.filter(function(f) { + const forms = event.forms.filter(function (f) { return f._id === form._id; }); @@ -532,20 +535,20 @@ exports.addForm = function(eventId, form, callback) { .catch(err => callback(err)); }; -exports.updateForm = function(event, form, callback) { - new Form(form).validate(function(err) { +exports.updateForm = function (event, form, callback) { + new Form(form).validate(function (err) { if (err) return callback(err); - var update = { + const update = { $set: { 'forms.$': form } }; - Event.findOneAndUpdate({'forms._id': form._id}, update, {new: true, runValidators: true}, function(err, event) { + Event.findOneAndUpdate({ 'forms._id': form._id }, update, { new: true, runValidators: true }, function (err, event) { if (err) return callback(err); - var forms = event.forms.filter(function(f) { + const forms = event.forms.filter(function (f) { return f._id === form._id; }); @@ -750,87 +753,87 @@ exports.getTeamsNotInEvent = async function (eventId, options) { return page; }; -exports.addTeam = function(event, team, callback) { +exports.addTeam = function (event, team, callback) { async.series([ - function(done) { + function (done) { validateTeamIds(event._id, [team.id], done); }, - function(done) { - var update = { + function (done) { + const update = { $addToSet: { - teamIds: mongoose.Types.ObjectId(team.id) + teamIds: new mongoose.Types.ObjectId(team.id) } }; Event.findByIdAndUpdate(event._id, update, done); } - ], function(err, results) { + ], function (err, results) { callback(err, results[1]); }); }; -exports.removeTeam = function(event, team, callback) { +exports.removeTeam = function (event, team, callback) { if (event._id === team.teamEventId) { - var err = new Error("Cannot remove an events team, event '" + event.name); + const err = new Error("Cannot remove an events team, event '" + event.name); err.status = 405; return callback(err); } - var update = { + const update = { $pull: { - teamIds: { $in: [mongoose.Types.ObjectId(team.id)] } + teamIds: { $in: [new mongoose.Types.ObjectId(team.id)] } } }; - Event.findByIdAndUpdate(event._id, update, function(err, event) { + Event.findByIdAndUpdate(event._id, update, function (err, event) { callback(err, event); }); }; -exports.addLayer = function(event, layer, callback) { - var update = { +exports.addLayer = function (event, layer, callback) { + const update = { $addToSet: { layerIds: layer.id } }; - Event.findByIdAndUpdate(event._id, update, function(err, event) { + Event.findByIdAndUpdate(event._id, update, function (err, event) { callback(err, event); }); }; -exports.removeLayer = function(event, layer, callback) { - var update = { +exports.removeLayer = function (event, layer, callback) { + const update = { $pull: { layerIds: { $in: [layer.id] } } }; - Event.findByIdAndUpdate(event._id, update, function(err, event) { + Event.findByIdAndUpdate(event._id, update, function (err, event) { callback(err, event); }); }; -exports.removeLayerFromEvents = function(layer, callback) { - var update = { - $pull: {layerIds: layer._id} +exports.removeLayerFromEvents = function (layer, callback) { + const update = { + $pull: { layerIds: layer._id } }; - Event.update({}, update, function(err) { + Event.updateMany({}, update, function (err) { callback(err); }); }; -exports.removeTeamFromEvents = function(team, callback) { - var update = { - $pull: {teamIds: team._id} +exports.removeTeamFromEvents = function (team, callback) { + const update = { + $pull: { teamIds: team._id } }; - Event.update({}, update, function(err) { + Event.updateMany({}, update, function (err) { callback(err); }); }; -exports.updateUserInAcl = function(eventId, userId, role, callback) { +exports.updateUserInAcl = function (eventId, userId, role, callback) { // validate userId if (!mongoose.Types.ObjectId.isValid(userId)) { const err = new Error('Invalid userId'); @@ -845,60 +848,60 @@ exports.updateUserInAcl = function(eventId, userId, role, callback) { return callback(err); } - var update = {}; + const update = {}; update['acl.' + userId] = role; - Event.findOneAndUpdate({_id: eventId}, update, {new: true, runValidators: true}, function(err, event) { + Event.findOneAndUpdate({ _id: eventId }, update, { new: true, runValidators: true }, function (err, event) { if (err) return callback(err); // The team that belongs to this event should have the same acl as the event - Team.updateUserInAclForEventTeam(eventId, userId, role, function(err) { + Team.updateUserInAclForEventTeam(eventId, userId, role, function (err) { callback(err, event); }); }); }; -exports.removeUserFromAcl = function(eventId, userId, callback) { +exports.removeUserFromAcl = function (eventId, userId, callback) { const update = { $unset: {} }; update.$unset['acl.' + userId] = true; - Event.findByIdAndUpdate(eventId, update, {new: true, runValidators: true}, function(err, event) { + Event.findByIdAndUpdate(eventId, update, { new: true, runValidators: true }, function (err, event) { if (err) return callback(err); // The team that belongs to this event should have the same acl as the event - Team.removeUserFromAclForEventTeam(eventId, userId, function(err) { + Team.removeUserFromAclForEventTeam(eventId, userId, function (err) { callback(err, event); }); }); }; -exports.removeUserFromAllAcls = function(user, callback) { +exports.removeUserFromAllAcls = function (user, callback) { const update = { $unset: {} }; update.$unset['acl.' + user._id.toString()] = true; - Event.update({}, update, {multi: true, new: true}, callback); + Event.updateMany({}, update, { new: true }, callback); }; -exports.remove = function(event, callback) { - event.remove(function(err) { +exports.remove = function (event, callback) { + event.remove(function (err) { return callback(err); }); }; -exports.getUsers = function(eventId, callback) { - var populate = { +exports.getUsers = function (eventId, callback) { + const populate = { path: 'teamIds', populate: { path: 'userIds' } }; - Event.findById(eventId).populate(populate).exec(function(err, event) { + Event.findById(eventId).populate(populate).exec(function (err, event) { if (err) return callback(err); if (!event) { @@ -907,7 +910,7 @@ exports.getUsers = function(eventId, callback) { return callback(err); } - var users = event.teamIds.reduce(function(users, team) { + const users = event.teamIds.reduce(function (users, team) { return users.concat(team.userIds); }, []); @@ -915,12 +918,12 @@ exports.getUsers = function(eventId, callback) { }); }; -exports.getTeams = function(eventId, options, callback) { - var projection = { +exports.getTeams = function (eventId, options, callback) { + const projection = { teamIds: 1 }; - var populate = { + const populate = { path: 'teamIds' }; @@ -930,7 +933,7 @@ exports.getTeams = function(eventId, options, callback) { }; } - Event.findById(eventId, projection).populate(populate).exec(function(err, event) { + Event.findById(eventId, projection).populate(populate).exec(function (err, event) { if (err) return callback(err); if (!event) { diff --git a/service/src/models/export.js b/service/src/models/export.js index 16120a5fd..1778907c6 100644 --- a/service/src/models/export.js +++ b/service/src/models/export.js @@ -25,7 +25,7 @@ const ErrorSchema = new Schema({ }); const ExportSchema = new Schema({ - userId: { type: Schema.Types.ObjectId, ref: 'User', required: true }, + userId: { type: Schema.Types.ObjectId, ref: 'User' }, relativePath: { type: String }, filename: { type: String }, exportType: { type: String, required: true }, @@ -46,20 +46,18 @@ const ExportSchema = new Schema({ } }); -ExportSchema.index({ 'expirationDate': 1}, { expireAfterSeconds: 0 }); +ExportSchema.index({ 'expirationDate': 1 }, { expireAfterSeconds: 0 }); function transform(exportDocument, ret, options) { - if ('function' !== typeof exportDocument.ownerDocument) { - ret.id = ret._id; - delete ret._id; + ret.id = ret._id; + delete ret._id; - const path = options.path ? options.path : ""; - ret.url = [path, ret.id].join("/"); + const path = options.path ? options.path : ""; + ret.url = [path, ret.id].join("/"); - if (exportDocument.populated('options.eventId')) { - ret.options.event = ret.options.eventId; - delete ret.options.eventId; - } + if (exportDocument.populated('options.eventId')) { + ret.options.event = ret.options.eventId; + delete ret.options.eventId; } } @@ -96,7 +94,7 @@ exports.getExportById = function (id, options = {}) { }; exports.getExportsByUserId = function (userId, options = {}) { - let query = Export.find({userId: userId}); + let query = Export.find({ userId: userId }); if (options.populate) { query = query.populate('userId').populate({ path: 'options.eventId', select: 'name' }); } @@ -107,7 +105,7 @@ exports.getExportsByUserId = function (userId, options = {}) { exports.getExports = function (options = {}) { let query = Export.find({}); if (options.populate) { - query = query.populate('userId').populate({ path: 'options.eventId', select: 'name'}); + query = query.populate('userId').populate({ path: 'options.eventId', select: 'name' }); } return query.exec(); @@ -123,7 +121,8 @@ exports.count = function (options) { }; exports.updateExport = function (id, exp) { - return Export.findByIdAndUpdate(id, exp, {new: true}).exec(); + return Export.findByIdAndUpdate(id, exp, { new: true }).exec(); + }; exports.removeExport = function (id) { diff --git a/service/src/models/feature.js b/service/src/models/feature.js index 1001909a6..37c8d782e 100644 --- a/service/src/models/feature.js +++ b/service/src/models/feature.js @@ -4,22 +4,20 @@ var Schema = mongoose.Schema; // Creates the Schema for the Attachments object var FeatureSchema = new Schema({ - type: {type: String, required: true}, + type: { type: String, required: true }, geometry: Schema.Types.Mixed, properties: Schema.Types.Mixed -},{ +}, { strict: false, versionKey: false, minimize: false }); -FeatureSchema.index({geometry: "2dsphere"}); +FeatureSchema.index({ geometry: "2dsphere" }); function transform(feature, ret) { - if ('function' !== typeof feature.ownerDocument) { - ret.id = ret._id; - delete ret._id; - } + ret.id = ret._id; + delete ret._id; } FeatureSchema.set("toJSON", { @@ -42,11 +40,11 @@ function featureModel(layer) { exports.featureModel = featureModel; -exports.getFeatures = function(layer) { +exports.getFeatures = function (layer) { return featureModel(layer).find({}).exec(); }; -exports.createFeatures = function(layer, features) { +exports.createFeatures = function (layer, features) { features.forEach(feature => feature.properties = feature.properties || {}); return featureModel(layer).create(features); }; diff --git a/service/src/models/layer.js b/service/src/models/layer.js index 87aacd1d8..aad14ead3 100644 --- a/service/src/models/layer.js +++ b/service/src/models/layer.js @@ -8,7 +8,7 @@ const Schema = mongoose.Schema; // Creates the Schema for the Attachments object const LayerSchema = new Schema( { - _id: { type: Number, required: true, unique: true }, + _id: { type: Number, required: true }, name: { type: String, required: true, unique: true }, description: { type: String, required: false }, state: { type: String, required: true, enum: ['available', 'unavailable', 'processing'] }, @@ -168,4 +168,4 @@ exports.update = function(id, layer) { exports.remove = function(layer) { return layer.remove(); -}; +}; \ No newline at end of file diff --git a/service/src/models/location.d.ts b/service/src/models/location.d.ts index 7daee1084..1dd561948 100644 --- a/service/src/models/location.d.ts +++ b/service/src/models/location.d.ts @@ -37,4 +37,4 @@ export type UserLocationReadStreamOptions = Omit any): void -export function getLocations(options: UserLocationReadStreamOptions): mongoose.QueryCursor +export function getLocations(options: UserLocationReadStreamOptions): mongoose.Cursor diff --git a/service/src/models/login.js b/service/src/models/login.js index f8afb5388..00f127c44 100644 --- a/service/src/models/login.js +++ b/service/src/models/login.js @@ -6,30 +6,28 @@ var Schema = mongoose.Schema; var LoginSchema = new Schema({ userId: { type: Schema.Types.ObjectId, ref: 'User' }, deviceId: { type: Schema.Types.ObjectId, ref: 'Device' } -},{ +}, { versionKey: false }); -LoginSchema.index({userId: 1}); -LoginSchema.index({deviceId: 1}); -LoginSchema.index({userId: 1, deviceId: 1}); -LoginSchema.index({_id: 1, userId: 1, deviceId: 1}); +LoginSchema.index({ userId: 1 }); +LoginSchema.index({ deviceId: 1 }); +LoginSchema.index({ userId: 1, deviceId: 1 }); +LoginSchema.index({ _id: 1, userId: 1, deviceId: 1 }); function transform(login, ret) { - if ('function' !== typeof login.ownerDocument) { - ret.id = ret._id; - ret.timestamp = ret._id.getTimestamp(); - delete ret._id; - - if (login.populated('userId')) { - ret.user = ret.userId; - delete ret.userId; - } + ret.id = ret._id; + ret.timestamp = ret._id.getTimestamp(); + delete ret._id; - if (login.populated('deviceId')) { - ret.device = ret.deviceId; - delete ret.deviceId; - } + if (login.populated('userId')) { + ret.user = ret.userId; + delete ret.userId; + } + + if (login.populated('deviceId')) { + ret.device = ret.deviceId; + delete ret.deviceId; } } @@ -38,13 +36,13 @@ LoginSchema.set("toJSON", { }); function objectIdForDate(date) { - return mongoose.Types.ObjectId(Math.floor(date/1000).toString(16) + "0000000000000000"); + return new mongoose.Types.ObjectId(Math.floor(date / 1000).toString(16) + "0000000000000000"); } // Creates the Model for the User Schema var Login = mongoose.model('Login', LoginSchema); -exports.getLogins = function(options, callback) { +exports.getLogins = function (options, callback) { var conditions = {}; var filter = options.filter || {}; @@ -57,7 +55,7 @@ exports.getLogins = function(options, callback) { } if (filter.startDate) { - conditions._id = {$gte: objectIdForDate(filter.startDate)}; + conditions._id = { $gte: objectIdForDate(filter.startDate) }; } if (filter.endDate) { conditions._id = conditions._id || {}; @@ -66,12 +64,12 @@ exports.getLogins = function(options, callback) { if (options.lastLoginId) { conditions._id = conditions._id || {}; - conditions._id.$lt = mongoose.Types.ObjectId(options.lastLoginId); + conditions._id.$lt = new mongoose.Types.ObjectId(options.lastLoginId); } if (options.firstLoginId) { conditions._id = conditions._id || {}; - conditions._id.$gt = mongoose.Types.ObjectId(options.firstLoginId); + conditions._id.$gt = new mongoose.Types.ObjectId(options.firstLoginId); } var o = { @@ -81,12 +79,12 @@ exports.getLogins = function(options, callback) { } }; - Login.find(conditions, null, o).populate([{path: 'userId'}, {path: 'deviceId'}]).exec(function (err, logins) { + Login.find(conditions, null, o).populate([{ path: 'userId' }, { path: 'deviceId' }]).exec(function (err, logins) { callback(err, options.firstLoginId ? logins.reverse() : logins); }); }; -exports.createLogin = function(user, device, callback) { +exports.createLogin = function (user, device, callback) { const create = { userId: user._id } @@ -95,15 +93,15 @@ exports.createLogin = function(user, device, callback) { create.deviceId = device._id } - Login.create(create, function(err, login) { + Login.create(create, function (err, login) { if (err) return callback(err); callback(null, login); }); }; -exports.removeLoginsForUser = function(user, callback) { - Login.remove({userId: user._id}, function(err) { +exports.removeLoginsForUser = function (user, callback) { + Login.remove({ userId: user._id }, function (err) { callback(err); }); }; diff --git a/service/src/models/observation.d.ts b/service/src/models/observation.d.ts index 99271a6a3..0297c2ef7 100644 --- a/service/src/models/observation.d.ts +++ b/service/src/models/observation.d.ts @@ -27,7 +27,7 @@ export type ObservationDocumentJson = Omit { - observationForm.id = observationForm._id; - delete observationForm._id; - return observationForm; - }); - } + if (observation.properties && observation.properties.forms) { + ret.properties.forms = ret.properties.forms.map(observationForm => { + observationForm.id = observationForm._id; + delete observationForm._id; + return observationForm; + }); + } - if (observation.attachments) { - ret.attachments = ret.attachments.map(function (attachment) { - return transformAttachment(attachment, ret); - }); - } + if (observation.attachments) { + ret.attachments = ret.attachments.map(function (attachment) { + return transformAttachment(attachment, ret); + }); + } - const populatedUserId = observation.populated('userId'); - if (populatedUserId) { - ret.user = ret.userId; - // TODO Update mobile clients to handle observation.userId or observation.user.id - // Leave userId as mobile clients depend on it for observation create/update, - ret.userId = populatedUserId; - } + const populatedUserId = observation.populated('userId'); + if (populatedUserId) { + ret.user = ret.userId; + // TODO Update mobile clients to handle observation.userId or observation.user.id + // Leave userId as mobile clients depend on it for observation create/update, + ret.userId = populatedUserId; + } - const populatedImportantUserId = observation.populated('important.userId') - if (populatedImportantUserId && ret.important) { - ret.important.user = ret.important.userId - delete ret.important.userId; - } + const populatedImportantUserId = observation.populated('important.userId') + if (populatedImportantUserId && ret.important) { + ret.important.user = ret.important.userId + delete ret.important.userId; } } @@ -194,12 +192,12 @@ function parseFields(fields) { if (fields.type === undefined) fields.type = true; // default is to return type if not specified if (state) { - fields.states = {$slice: 1}; + fields.states = { $slice: 1 }; } return fields; } else { - return { states: {$slice: 1}}; + return { states: { $slice: 1 } }; } } @@ -218,7 +216,7 @@ function observationModel(event) { exports.observationModel = observationModel; -exports.getObservations = function(event, o, callback) { +exports.getObservations = function (event, o, callback) { const conditions = {}; const filter = o.filter || {}; @@ -262,7 +260,7 @@ exports.getObservations = function(event, o, callback) { } if (filter.important) { - conditions['important'] = {$exists: true}; + conditions['important'] = { $exists: true }; } const options = {}; @@ -272,7 +270,7 @@ exports.getObservations = function(event, o, callback) { const fields = parseFields(o.fields); if (filter.attachments === true) { - fields.attachments = {$slice: 0}; + fields.attachments = { $slice: 0 }; } let query = observationModel(event).find(conditions, fields, options); @@ -285,7 +283,8 @@ exports.getObservations = function(event, o, callback) { query = query .populate({ path: 'userId', - select: 'displayName' }) + select: 'displayName' + }) .populate({ path: 'important.userId', select: 'displayName' @@ -299,35 +298,35 @@ exports.getObservations = function(event, o, callback) { } }; -exports.createObservationId = function(callback) { +exports.createObservationId = function (callback) { ObservationId.create({}, callback); }; -exports.getObservationId = function(id, callback) { - ObservationId.findById(id, function(err, doc) { +exports.getObservationId = function (id, callback) { + ObservationId.findById(id, function (err, doc) { callback(err, doc ? doc._id : null); }); }; -exports.getLatestObservation = function(event, callback) { - observationModel(event).findOne({}, {lastModified: true}, {sort: {"lastModified": -1}, limit: 1}, callback); +exports.getLatestObservation = function (event, callback) { + observationModel(event).findOne({}, { lastModified: true }, { sort: { "lastModified": -1 }, limit: 1 }, callback); }; -exports.getObservationById = function(event, observationId, options, callback) { +exports.getObservationById = function (event, observationId, options, callback) { const fields = parseFields(options.fields); observationModel(event).findById(observationId, fields, callback); }; -exports.updateObservation = function(event, observationId, update, callback) { +exports.updateObservation = function (event, observationId, update, callback) { let addAttachments = []; let removeAttachments = []; - const {forms = []} = update.properties || {}; + const { forms = [] } = update.properties || {}; forms.map(observationForm => { - observationForm._id = observationForm._id || mongoose.Types.ObjectId(); - delete observationForm.id; - return observationForm; - }) + observationForm._id = observationForm._id || new mongoose.Types.ObjectId(); + delete observationForm.id; + return observationForm; + }) .forEach(formEntry => { // TODO: move to app or web layer const formDefinition = event.forms.find(form => form._id === formEntry.formId); @@ -348,13 +347,13 @@ exports.updateObservation = function(event, observationId, update, callback) { removeAttachments = removeAttachments.concat(attachments .filter(attachment => attachment.action === 'delete') - .map(attachment => attachment.id ) + .map(attachment => attachment.id) ); delete formEntry[fieldName] } }); - }); + }); const ObservationModel = observationModel(event); ObservationModel.findById(observationId) @@ -380,9 +379,7 @@ exports.updateObservation = function(event, observationId, update, callback) { }) .then(observation => { return observation - .populate({ path: 'userId', select: 'displayName' }) - .populate({ path: 'important.userId', select: 'displayName' }) - .execPopulate(); + .populate([{ path: 'userId', select: 'displayName' }, { path: 'important.userId', select: 'displayName' }]); }) .then(observation => { callback(null, observation); @@ -390,49 +387,49 @@ exports.updateObservation = function(event, observationId, update, callback) { .catch(err => callback(err)); }; -exports.removeObservation = function(event, observationId, callback) { +exports.removeObservation = function (event, observationId, callback) { observationModel(event).findByIdAndRemove(observationId, callback); }; -exports.removeUser = function(user, callback) { +exports.removeUser = function (user, callback) { const condition = { userId: user._id }; const update = { '$unset': { userId: true } }; const options = { multi: true }; - Event.getEvents({}, function(err, events) { - async.each(events, function(event, done) { - observationModel(event).update(condition, update, options, function(err, numberAffected) { + Event.getEvents({}, function (err, events) { + async.each(events, function (event, done) { + observationModel(event).update(condition, update, options, function (err, numberAffected) { log.info('Remove deleted user from ' + numberAffected + ' documents for event ' + event.name); done(); }); }, - function(err){ - callback(err); - }); + function (err) { + callback(err); + }); }); }; -exports.removeDevice = function(device, callback) { +exports.removeDevice = function (device, callback) { const condition = { deviceId: device._id }; const update = { '$unset': { deviceId: true } }; const options = { multi: true }; - Event.getEvents(function(err, events) { - async.each(events, function(event, done) { - observationModel(event).update(condition, update, options, function(err, numberAffected) { + Event.getEvents(function (err, events) { + async.each(events, function (event, done) { + observationModel(event).update(condition, update, options, function (err, numberAffected) { log.info('Remove deleted device from ' + numberAffected + ' documents for event ' + event.name); done(); }); }, - function(err){ - callback(err); - }); + function (err) { + callback(err); + }); }); }; -exports.addState = function(event, id, state, callback) { - const condition = { _id: mongoose.Types.ObjectId(id), 'states.0.name': { '$ne': state.name } }; - state._id = mongoose.Types.ObjectId(); +exports.addState = function (event, id, state, callback) { + const condition = { _id: new mongoose.Types.ObjectId(id), 'states.0.name': { '$ne': state.name } }; + state._id = new mongoose.Types.ObjectId(); const update = { '$push': { states: { @@ -442,19 +439,19 @@ exports.addState = function(event, id, state, callback) { } }; - observationModel(event).update(condition, update, {upsert: false}, function(err) { + observationModel(event).update(condition, update, { upsert: false }, function (err) { callback(err, state); }); }; -exports.addFavorite = function(event, observationId, user, callback) { +exports.addFavorite = function (event, observationId, user, callback) { const update = { $addToSet: { favoriteUserIds: user._id } }; - observationModel(event).findByIdAndUpdate(observationId, update, {new: true}, callback); + observationModel(event).findByIdAndUpdate(observationId, update, { new: true }, callback); }; exports.removeFavorite = function (event, observationId, user, callback) { @@ -464,11 +461,11 @@ exports.removeFavorite = function (event, observationId, user, callback) { } }; - observationModel(event).findByIdAndUpdate(observationId, update, {new: true}, callback); + observationModel(event).findByIdAndUpdate(observationId, update, { new: true }, callback); }; -exports.addImportant = function(event, observationId, important, callback) { - const update = { important}; +exports.addImportant = function (event, observationId, important, callback) { + const update = { important }; observationModel(event) .findByIdAndUpdate(observationId, update, { new: true }) @@ -477,17 +474,17 @@ exports.addImportant = function(event, observationId, important, callback) { .exec(callback); } -exports.removeImportant = function(event, id, callback) { +exports.removeImportant = function (event, id, callback) { const update = { '$unset': { important: 1 } }; - observationModel(event).findByIdAndUpdate(id, update, {new: true}, callback); + observationModel(event).findByIdAndUpdate(id, update, { new: true }, callback); }; -exports.getAttachment = function(event, observationId, attachmentId, callback) { +exports.getAttachment = function (event, observationId, attachmentId, callback) { const condition = { _id: observationId, 'attachments._id': attachmentId, @@ -503,7 +500,7 @@ exports.getAttachment = function(event, observationId, attachmentId, callback) { * TODO: [OBS-NEXT] this can potentially be deleted if removing the api/attachment module, * which is the only reference to this function */ -exports.addAttachment = function(event, observationId, attachmentId, file, callback) { +exports.addAttachment = function (event, observationId, attachmentId, file, callback) { const condition = { _id: observationId, attachments: { @@ -520,7 +517,7 @@ exports.addAttachment = function(event, observationId, attachmentId, file, callb 'attachments.$.relativePath': file.relativePath } - observationModel(event).findOneAndUpdate(condition, update, {new: true}, function(err, observation) { + observationModel(event).findOneAndUpdate(condition, update, { new: true }, function (err, observation) { if (err || !observation) return callback(err); const attachment = observation.attachments.find(attachment => attachment._id.toString() === attachmentId); @@ -528,13 +525,13 @@ exports.addAttachment = function(event, observationId, attachmentId, file, callb }); }; -exports.removeAttachment = function(event, observationId, attachmentId, callback) { +exports.removeAttachment = function (event, observationId, attachmentId, callback) { const update = { $pull: { attachments: { _id: attachmentId } } }; observationModel(event).findByIdAndUpdate(observationId, update, callback); }; -exports.addAttachmentThumbnail = function(event, observationId, attachmentId, thumbnail, callback) { - const condition = {_id: observationId, 'attachments._id': attachmentId}; - const update = {'$push': { 'attachments.$.thumbnails': thumbnail }}; +exports.addAttachmentThumbnail = function (event, observationId, attachmentId, thumbnail, callback) { + const condition = { _id: observationId, 'attachments._id': attachmentId }; + const update = { '$push': { 'attachments.$.thumbnails': thumbnail } }; observationModel(event).update(condition, update, callback); }; diff --git a/service/src/models/role.d.ts b/service/src/models/role.d.ts index ebda355a5..138099520 100644 --- a/service/src/models/role.d.ts +++ b/service/src/models/role.d.ts @@ -5,7 +5,6 @@ import { AnyPermission } from '../entities/authorization/entities.permissions' type Callback = (err: any, result?: R) => any export declare interface RoleDocument extends mongoose.Document { - _id: mongoose.Types.ObjectId id: string name: string description?: string diff --git a/service/src/models/role.js b/service/src/models/role.js index 191d5f2d4..7d1a5df10 100644 --- a/service/src/models/role.js +++ b/service/src/models/role.js @@ -6,23 +6,28 @@ const mongoose = require('mongoose') const Schema = mongoose.Schema; // Collection to hold roles -const RoleSchema = new Schema({ - name: { type: String, required: true, unique: true }, - description: { type: String, required: false }, - permissions: [Schema.Types.String] -},{ - versionKey: false -}); +const RoleSchema = new Schema( + { + name: { type: String, required: true, unique: true }, + description: { type: String, required: false }, + permissions: [Schema.Types.String] + }, + { + versionKey: false, + toJSON: { transform }, + toObject: { transform } + } +); -RoleSchema.pre('remove', function(next) { +RoleSchema.pre('remove', function (next) { const role = this; - User.removeRoleFromUsers(role, function(err) { + User.removeRoleFromUsers(role, function (err) { next(err); }); }); -RoleSchema.pre('save', function(next) { +RoleSchema.pre('save', function (next) { const role = this; // only check for valid permission if the permissions have been modified (or is new) @@ -39,59 +44,53 @@ RoleSchema.pre('save', function(next) { next(); }); -function transform(user, ret) { - if ('function' !== typeof user.ownerDocument) { - ret.id = ret._id; - delete ret._id; - } +function transform(role, ret) { + ret.id = ret._id; + delete ret._id; } -RoleSchema.set("toJSON", { - transform: transform -}); - // Creates the Model for the Role Schema const Role = mongoose.model('Role', RoleSchema); -exports.getRoleById = function(id, callback) { - Role.findById(id, function(err, role) { +exports.getRoleById = function (id, callback) { + Role.findById(id, function (err, role) { callback(err, role); }); }; -exports.getRole = function(name, callback) { - Role.findOne({name: name}, function(err, role) { +exports.getRole = function (name, callback) { + Role.findOne({ name: name }, function (err, role) { callback(err, role); }); }; -exports.getRoles = function(callback) { +exports.getRoles = function (callback) { const query = {}; Role.find(query, function (err, roles) { callback(err, roles); }); }; -exports.createRole = function(role, callback) { +exports.createRole = function (role, callback) { const create = { name: role.name, description: role.description, permissions: role.permissions }; - Role.create(create, function(err, role) { + Role.create(create, function (err, role) { callback(err, role); }); }; -exports.updateRole = function(id, update, callback) { - Role.findByIdAndUpdate(id, update, {new: true}, function(err, role) { +exports.updateRole = function (id, update, callback) { + Role.findByIdAndUpdate(id, update, { new: true }, function (err, role) { callback(err, role); }); }; -exports.deleteRole = function(role, callback) { - role.remove(function(err) { +exports.deleteRole = function (role, callback) { + role.remove(function (err) { callback(err, role); }); -}; +}; \ No newline at end of file diff --git a/service/src/models/setting.d.ts b/service/src/models/setting.d.ts index 64a2d6f26..4bc791d39 100644 --- a/service/src/models/setting.d.ts +++ b/service/src/models/setting.d.ts @@ -7,3 +7,6 @@ export interface SettingsDocument extends mongoose.Document { } export declare const Model: mongoose.Model + +export function getSetting(type: string): Promise +export function getSettings(): Promise diff --git a/service/src/models/setting.js b/service/src/models/setting.js index c5d8dcc62..965ed20fa 100644 --- a/service/src/models/setting.js +++ b/service/src/models/setting.js @@ -13,10 +13,8 @@ const SettingSchema = new Schema({ }); function transform(setting, ret) { - if ('function' !== typeof setting.ownerDocument) { - ret.id = ret._id; - delete ret._id; - } + ret.id = ret._id; + delete ret._id; } SettingSchema.set("toJSON", { diff --git a/service/src/models/team.d.ts b/service/src/models/team.d.ts index 0e8bc4698..71a055d01 100644 --- a/service/src/models/team.d.ts +++ b/service/src/models/team.d.ts @@ -16,7 +16,7 @@ export function count(options: any, callback: any): void; export function getTeams(options: any, callback: any): void; export function createTeam(team: any, user: any, callback: any): void; export function createTeamForEvent(event: any, user: any, callback: any): void; -export function getTeamForEvent(event: any): mongoose.DocumentQuery; +export function getTeamForEvent(event: any): mongoose.Query; export function updateTeam(id: any, update: any, callback: any): void; export function deleteTeam(team: any, callback: any): void; export function addUser(team: any, user: any, callback: any): void; diff --git a/service/src/models/team.js b/service/src/models/team.js index 88fdcb18a..72cfedcef 100644 --- a/service/src/models/team.js +++ b/service/src/models/team.js @@ -416,7 +416,7 @@ exports.createTeam = function(team, user, callback) { }; if (team.users) { - create.userIds = team.users.map(function(user) { return mongoose.Types.ObjectId(user.id); }); + create.userIds = team.users.map(function(user) { return new mongoose.Types.ObjectId(user.id); }); } create.acl = {}; @@ -462,10 +462,10 @@ exports.getTeamForEvent = function (event) { // TODO: should this do something with ACL? exports.updateTeam = function(id, update, callback) { if (update.users) { - update.userIds = update.users.map(function(user) { return mongoose.Types.ObjectId(user.id); }); + update.userIds = update.users.map(function(user) { return new mongoose.Types.ObjectId(user.id); }); Team.findByIdAndUpdate(id, update, {new: true, populate: 'userIds'}, callback); } else if (update.userIds) { - let objectIds = update.userIds.map(function(id) { return mongoose.Types.ObjectId(id); }); + let objectIds = update.userIds.map(function(id) { return new mongoose.Types.ObjectId(id); }); update.userIds = objectIds; Team.findByIdAndUpdate(id, update, {new: true}, callback); } else { @@ -482,7 +482,7 @@ exports.deleteTeam = function(team, callback) { exports.addUser = function(team, user, callback) { var update = { $addToSet: { - userIds: mongoose.Types.ObjectId(user.id) + userIds: new mongoose.Types.ObjectId(user.id) } }; @@ -494,7 +494,7 @@ exports.addUser = function(team, user, callback) { exports.removeUser = function(team, user, callback) { var update = { $pull: { - userIds: { $in: [mongoose.Types.ObjectId(user.id)] } + userIds: { $in: [new mongoose.Types.ObjectId(user.id)] } } }; @@ -556,5 +556,5 @@ exports.removeUserFromAllAcls = function(user, callback) { }; update.$unset['acl.' + user._id.toString()] = true; - Team.update({}, update, {multi: true, new: true}, callback); + Team.updateMany({}, update, {new: true}, callback); }; \ No newline at end of file diff --git a/service/src/models/user.d.ts b/service/src/models/user.d.ts index c648d9b3b..0ae581ae9 100644 --- a/service/src/models/user.d.ts +++ b/service/src/models/user.d.ts @@ -37,7 +37,7 @@ export type UserJson = Omit -export function getUserById(id: mongoose.Types.ObjectId): ReturnType['findById']> +export function getUserById(id: mongoose.Types.ObjectId): Promise export function getUserById(id: mongoose.Types.ObjectId, callback: (err: null | any, result: UserDocument | null) => any): void type RoleReferenced = { diff --git a/service/src/models/user.js b/service/src/models/user.js index 95148ac53..f31225dff 100644 --- a/service/src/models/user.js +++ b/service/src/models/user.js @@ -139,9 +139,6 @@ UserSchema.pre('remove', function (next) { // eslint-disable-next-line complexity function DbUserToObject(user, userOut, options) { - if ('function' === typeof user.ownerDocument) { - return void(0); - } userOut.id = userOut._id; delete userOut._id; @@ -151,8 +148,8 @@ function DbUserToObject(user, userOut, options) { delete userOut.icon.relativePath; } - if (user.populated('roleId')) { - userOut.role = userOut.roleId; + if (!!user.roleId && typeof user.roleId.toObject === 'function') { + userOut.role = user.roleId.toObject(); delete userOut.roleId; } @@ -207,8 +204,8 @@ exports.getUserByUsername = function (username, callback) { User.findOne({ username: username.toLowerCase() }).populate('roleId').populate({ path: 'authenticationId', populate: { path: 'authenticationConfigurationId' } }).exec(callback); }; -exports.getUserByAuthenticationId = function (id) { - return User.findOne({ authenticationId: id }).populate({ path: 'authenticationId', populate: { path: 'authenticationConfigurationId' } }).exec(); +exports.getUserByAuthenticationId = function (id, callback) { + User.findOne({ authenticationId: id }).populate('roleId').populate({ path: 'authenticationId', populate: { path: 'authenticationConfigurationId' } }).exec(callback); } exports.getUserByAuthenticationStrategy = function (strategy, uid, callback) { @@ -406,7 +403,7 @@ exports.removeRolesForUser = function (user, callback) { }; exports.removeRoleFromUsers = function (role, callback) { - User.update({ role: role._id }, { roles: undefined }, function (err, number) { + User.updateMany({ role: role._id }, { roles: undefined }, function (err, number) { callback(err, number); }); }; @@ -437,7 +434,7 @@ exports.removeRecentEventForUsers = function (event, callback) { $pull: { recentEventIds: event._id } }; - User.update({}, update, { multi: true }, function (err) { + User.updateMany({}, update, {}, function (err) { callback(err); }); }; \ No newline at end of file diff --git a/service/src/permissions/permissions.events.ts b/service/src/permissions/permissions.events.ts index dd88c3e1c..899d4c952 100644 --- a/service/src/permissions/permissions.events.ts +++ b/service/src/permissions/permissions.events.ts @@ -21,10 +21,6 @@ type TeamMembership = { userIds: UserId[] } -declare module 'mongoose' { - export const Document: new (...args: any[]) => MongooseDocument -} - /** * TODO: This should not depend explicitly on the MongooseMageEventRepository, * but the MageEventRepository interface instead. However, a large number of diff --git a/service/src/permissions/permissions.icons.ts b/service/src/permissions/permissions.icons.ts index fce26cab9..9f24b65c1 100644 --- a/service/src/permissions/permissions.icons.ts +++ b/service/src/permissions/permissions.icons.ts @@ -1,4 +1,4 @@ -import { permissionDenied, PermissionDeniedError } from '../app.api/app.api.errors' +import { PermissionDeniedError } from '../app.api/app.api.errors' import { AppRequestContext } from '../app.api/app.api.global' import { StaticIconPermissionService } from '../app.api/icons/app.api.icons' import { StaticIconPermission } from '../entities/authorization/entities.permissions' diff --git a/service/src/permissions/permissions.systemInfo.ts b/service/src/permissions/permissions.systemInfo.ts new file mode 100644 index 000000000..ac98ff502 --- /dev/null +++ b/service/src/permissions/permissions.systemInfo.ts @@ -0,0 +1,22 @@ +import { + permissionDenied, + PermissionDeniedError +} from '../app.api/app.api.errors'; +import { AppRequestContext } from '../app.api/app.api.global'; +import { SystemInfoPermissionService } from '../app.api/systemInfo/app.api.systemInfo'; +import { SystemInfoPermission } from '../entities/authorization/entities.permissions'; +import { + UserWithRole, + ensureContextUserHasPermission +} from './permissions.role-based.base'; + +export class RoleBasedSystemInfoPermissionService implements SystemInfoPermissionService { + async ensureReadSystemInfoPermission(ctx: AppRequestContext): Promise { + return ensureContextUserHasPermission( + ctx, + SystemInfoPermission.READ_SYSTEM_INFO + ); + } +} + + diff --git a/service/src/plugins.api/plugins.api.web.ts b/service/src/plugins.api/plugins.api.web.ts index 63b0cd139..a1382d4de 100644 --- a/service/src/plugins.api/plugins.api.web.ts +++ b/service/src/plugins.api/plugins.api.web.ts @@ -6,6 +6,9 @@ export interface GetAppRequestContext { (req: express.Request): AppRequestContext } -export interface WebRoutesHooks { - webRoutes(requestContext: GetAppRequestContext): express.Router -} +export type WebRoutesHooks = { + webRoutes: { + public?: (requestContext: GetAppRequestContext) => express.Router, + protected?: (requestContext: GetAppRequestContext) => express.Router + } +} \ No newline at end of file diff --git a/service/src/routes/authenticationconfigurations.js b/service/src/routes/authenticationconfigurations.js index 58e270157..8f119dc6d 100644 --- a/service/src/routes/authenticationconfigurations.js +++ b/service/src/routes/authenticationconfigurations.js @@ -1,252 +1,300 @@ 'use strict'; const log = require('winston') - , access = require('../access') - , Authentication = require('../models/authentication') - , AuthenticationConfiguration = require('../models/authenticationconfiguration') - , AuthenticationConfigurationTransformer = require('../transformers/authenticationconfiguration') - , SecretStoreService = require('../security/secret-store-service') - , SecurePropertyAppender = require('../security/utilities/secure-property-appender'); + , AsyncLock = require('async-lock') + , access = require('../access') + , Authentication = require('../models/authentication') + , AuthenticationConfiguration = require('../models/authenticationconfiguration') + , AuthenticationConfigurationTransformer = require('../transformers/authenticationconfiguration') + , SecretStoreService = require('../security/secret-store-service') + , SecurePropertyAppender = require('../security/utilities/secure-property-appender'); module.exports = function (app, security) { - const passport = security.authentication.passport; - const blacklist = AuthenticationConfiguration.blacklist; - - app.get( - '/api/authentication/configuration/', - passport.authenticate('bearer'), - access.authorize('READ_AUTH_CONFIG'), - function (req, res, next) { - const includeDisabled = req.query.includeDisabled === 'true' ? true : - req.query.includeDisabled === 'false' ? false : req.query.includeDisabled; - AuthenticationConfiguration.getAllConfigurations().then(configs => { - const filtered = configs.filter(config => { - if (!config.enabled) { - if (includeDisabled) { - return true; - } - return false; - } else { - return true; - } - }); - - const promises = []; - - filtered.forEach(config => { - promises.push(SecurePropertyAppender.appendToConfig(config)); - }); - - return Promise.all(promises); - }).then(configs => { - const transformedConfigs = AuthenticationConfigurationTransformer.transform(configs, { blacklist: true }); - res.json(transformedConfigs); - }).catch(err => { - next(err); - }); - }); + const passport = security.authentication.passport; + const blacklist = AuthenticationConfiguration.blacklist; + const lock = new AsyncLock(); + const enabledKey = 'checkAuthEnabled'; - app.get( - '/api/authentication/configuration/count/:id', - passport.authenticate('bearer'), - access.authorize('READ_AUTH_CONFIG'), - function (req, res, next) { - Authentication.countAuthenticationsByAuthConfigId(req.params.id).then(cnt => { - const response = { - count: cnt - }; - res.json(response); - }).catch(err => { - next(err); - }); + async function isAllowed(affectedConfig, deleted = false) { + const configs = await AuthenticationConfiguration.getAllConfigurations(); + let atLeastOneConfigEnabled = false; + configs.forEach(config => { + if (affectedConfig._id.toString() === config._id.toString()) { + if (!deleted && affectedConfig.enabled === config.enabled) { + atLeastOneConfigEnabled = true; + } + } + else if (config.enabled) { + atLeastOneConfigEnabled = true; + } + }); + return atLeastOneConfigEnabled; + } + + app.get( + '/api/authentication/configuration/', + passport.authenticate('bearer'), + access.authorize('READ_AUTH_CONFIG'), + function (req, res, next) { + const includeDisabled = req.query.includeDisabled === 'true' ? true : + req.query.includeDisabled === 'false' ? false : + req.query.includeDisabled; + AuthenticationConfiguration.getAllConfigurations().then(configs => { + const filtered = configs.filter(config => { + if (!config.enabled) { + if (includeDisabled) { + return true; + } + return false; + } else { + return true; + } }); - app.put( - '/api/authentication/configuration/:id', - passport.authenticate('bearer'), - access.authorize('UPDATE_AUTH_CONFIG'), - function (req, res, next) { - const updatedConfig = { - _id: req.body._id, - name: req.body.name, - type: req.body.type, - title: req.body.title, - textColor: req.body.textColor, - buttonColor: req.body.buttonColor, - icon: req.body.icon, - enabled: req.body.enabled, - settings: {} - }; - const securityData = {}; - const { settings } = req.body; - - Object.keys(settings).forEach(key => { - if (blacklist && blacklist.indexOf(key.toLowerCase()) != -1) { - if (AuthenticationConfiguration.secureMask !== settings[key]) { - securityData[key] = settings[key]; - } - } else { - updatedConfig.settings[key] = settings[key]; - } - }); - AuthenticationConfiguration.update(req.params.id, updatedConfig).then(config => { - //Read any existing secure data (for append purposes) - const promises = []; - promises.push(Promise.resolve(config)); - const sss = new SecretStoreService(); - promises.push(sss.read(config._id)); - return Promise.all(promises); - }).then(response => { - //Update secure data if necessary - const promises = []; - promises.push(Promise.resolve(response[0])); - - if (Object.keys(securityData).length > 0) { - const config = response[0]; - const dataResponse = response[1]; - if (dataResponse.data) { - Object.keys(dataResponse.data).forEach(key => { - if (!securityData[key]) { - securityData[key] = dataResponse.data[key]; - } - }); - } - const sss = new SecretStoreService(); - promises.push(sss.write(config._id, securityData)); - } - return Promise.all(promises); - }).then(response => { - //Append secure data to config for the purposes of configuring passport - const config = response[0]; - return SecurePropertyAppender.appendToConfig(config); - }).then(config => { - log.info("Reconfiguring authentication strategy " + config.type + " (" + config.title + ")"); - const strategy = require('../authentication/' + config.type); - strategy.initialize(config); - - const transformedConfig = AuthenticationConfigurationTransformer.transform(config, { blacklist: true }); - res.json(transformedConfig); - }).catch(err => { - next(err); - }) + const promises = []; + + filtered.forEach(config => { + promises.push(SecurePropertyAppender.appendToConfig(config)); }); - app.post( - '/api/authentication/configuration/', - passport.authenticate('bearer'), - access.authorize('UPDATE_AUTH_CONFIG'), - function (req, res, next) { - const newConfig = { - name: req.body.name, - type: req.body.type, - title: req.body.title, - textColor: req.body.textColor, - buttonColor: req.body.buttonColor, - icon: req.body.icon, - enabled: req.body.enabled, - settings: {} - }; - const securityData = {}; - const { settings } = req.body; - - Object.keys(settings).forEach(key => { - if (blacklist && blacklist.indexOf(key.toLowerCase()) != -1) { - if(AuthenticationConfiguration.secureMask !== settings[key]) { - securityData[key] = settings[key]; - } - } else { - newConfig.settings[key] = settings[key]; - } - }); + return Promise.all(promises); + }).then(configs => { + const transformedConfigs = AuthenticationConfigurationTransformer.transform(configs, { blacklist: true }); + res.json(transformedConfigs); + }).catch(err => { + next(err); + }); + }); + + app.get( + '/api/authentication/configuration/count/:id', + passport.authenticate('bearer'), + access.authorize('READ_AUTH_CONFIG'), + function (req, res, next) { + Authentication.countAuthenticationsByAuthConfigId(req.params.id).then(cnt => { + const response = { + count: cnt + }; + res.json(response); + }).catch(err => { + next(err); + }); + }); + + app.put( + '/api/authentication/configuration/:id', + passport.authenticate('bearer'), + access.authorize('UPDATE_AUTH_CONFIG'), + function (req, res, next) { + const updatedConfig = { + _id: req.body._id, + name: req.body.name, + type: req.body.type, + title: req.body.title, + textColor: req.body.textColor, + buttonColor: req.body.buttonColor, + icon: req.body.icon, + enabled: JSON.parse(req.body.enabled), + settings: {} + }; + + const securityData = {}; + + const { settings } = req.body; + + Object.keys(settings).forEach(key => { + if (blacklist && blacklist.indexOf(key.toLowerCase()) != -1) { + if (AuthenticationConfiguration.secureMask !== settings[key]) { + securityData[key] = settings[key]; + } + } else { + updatedConfig.settings[key] = settings[key]; + } + }); + + lock.acquire(enabledKey, async function (done) { + const allowed = await isAllowed(updatedConfig); + if (!allowed) { + log.error('Cannot update ' + updatedConfig.name + ', since this would leave no enabled authentications'); + done(); + return res.status(403).send('At least 1 authentication must be enabled'); + } - AuthenticationConfiguration.create(newConfig).then(config => { - //Create secure data, if any - const response = []; - response.push(Promise.resolve(config)); - if (Object.keys(securityData).length > 0) { - const sss = new SecretStoreService(); - response.push(sss.write(config._id, securityData)); + AuthenticationConfiguration.update(req.params.id, updatedConfig).then(config => { + //Read any existing secure data (for append purposes) + const promises = []; + promises.push(Promise.resolve(config)); + const sss = new SecretStoreService(); + promises.push(sss.read(config._id)); + return Promise.all(promises); + }).then(response => { + //Update secure data if necessary + const promises = []; + promises.push(Promise.resolve(response[0])); + + if (Object.keys(securityData).length > 0) { + const config = response[0]; + const dataResponse = response[1]; + if (dataResponse.data) { + Object.keys(dataResponse.data).forEach(key => { + if (!securityData[key]) { + securityData[key] = dataResponse.data[key]; } - return Promise.all(response); - }).then(response => { - // Read any authentications that could be attached to this config - // For example: - // 1. authentications attached to saml - // 2. saml removed - // 3. Authentications attached to saml no longer have a config - // 3. saml recreated - // 4. Authentications are then atteched to this new config - const config = response[0]; - const promises = []; - promises.push(Promise.resolve(config)) - promises.push(Authentication.getAuthenticationsByType(config.name)); - return Promise.all(promises); - }).then(response => { - // Attach any "dangling" authentications to the new config - const config = response[0]; - const authentications = response[1]; - - const promises = []; - promises.push(config); - - authentications.forEach(authentication => { - authentication.authenticationConfigurationId = config._id; - promises.push(Authentication.updateAuthentication(authentication)); - }); - return Promise.all(promises); - }).then(response => { - // Append secure data to config for the purposes of configuring passport - const config = response[0]; - return SecurePropertyAppender.appendToConfig(config); - }).then(config => { - log.info("Creating new authentication strategy " + config.type + " (" + config.title + ")"); - const strategy = require('../authentication/' + config.type); - strategy.initialize(config); - - const transformedConfig = AuthenticationConfigurationTransformer.transform(config, { blacklist: true }); - res.json(transformedConfig); - }).catch(err => next(err)); + }); + } + const sss = new SecretStoreService(); + promises.push(sss.write(config._id, securityData)); + } + return Promise.all(promises); + }).then(response => { + //Append secure data to config for the purposes of configuring passport + const config = response[0]; + return SecurePropertyAppender.appendToConfig(config); + }).then(config => { + log.info("Reconfiguring authentication strategy " + config.type + " (" + config.title + ")"); + const strategy = require('../authentication/' + config.type); + strategy.initialize(config); + + const transformedConfig = AuthenticationConfigurationTransformer.transform(config, { blacklist: true }); + res.json(transformedConfig); + done(); + }).catch(err => { + done(); + next(err); }); + }) + }); + + app.post( + '/api/authentication/configuration/', + passport.authenticate('bearer'), + access.authorize('UPDATE_AUTH_CONFIG'), + function (req, res, next) { + const newConfig = { + name: req.body.name, + type: req.body.type, + title: req.body.title, + textColor: req.body.textColor, + buttonColor: req.body.buttonColor, + icon: req.body.icon, + enabled: JSON.parse(req.body.enabled), + settings: {} + }; + + const securityData = {}; + + const { settings } = req.body; + + Object.keys(settings).forEach(key => { + if (blacklist && blacklist.indexOf(key.toLowerCase()) != -1) { + if (AuthenticationConfiguration.secureMask !== settings[key]) { + securityData[key] = settings[key]; + } + } else { + newConfig.settings[key] = settings[key]; + } + }); + + AuthenticationConfiguration.create(newConfig).then(config => { + //Create secure data, if any + const response = []; + response.push(Promise.resolve(config)); + if (Object.keys(securityData).length > 0) { + const sss = new SecretStoreService(); + response.push(sss.write(config._id, securityData)); + } + return Promise.all(response); + }).then(response => { + // Read any authentications that could be attached to this config + // For example: + // 1. authentications attached to saml + // 2. saml removed + // 3. Authentications attached to saml no longer have a config + // 3. saml recreated + // 4. Authentications are then atteched to this new config + const config = response[0]; + const promises = []; + promises.push(Promise.resolve(config)) + promises.push(Authentication.getAuthenticationsByType(config.name)); + return Promise.all(promises); + }).then(response => { + // Attach any "dangling" authentications to the new config + const config = response[0]; + const authentications = response[1]; + + const promises = []; + promises.push(config); - app.delete( - '/api/authentication/configuration/:id', - passport.authenticate('bearer'), - access.authorize('UPDATE_AUTH_CONFIG'), - function (req, res, next) { - - Authentication.getAuthenticationsByAuthConfigId(req.params.id) - .then(authentications => { - //Set config to null for any attached authentications - const authUpdatePromises = []; - authentications.forEach(authentication => { - if (authentication.type === 'local') { - throw new Error('Removal of local authentication is not allowed'); - } - authentication.authenticationConfigurationId = null; - authUpdatePromises.push(Authentication.updateAuthentication(authentication)); - }); - return Promise.all(authUpdatePromises); - }).then(() => { - //Remove config - return AuthenticationConfiguration.remove(req.params.id); - }).then(config => { - //Remove any secure properties - const response = []; - response.push(Promise.resolve(config)); - - const sss = new SecretStoreService(); - response.push(sss.delete(config._id)); - return Promise.all(response); - }).then(response => { - const config = response[0]; - - log.info("Successfully removed strategy with id " + req.params.id); - //TODO not sure how to disable passport strategy, but this will effectively disable it - const transformedConfig = AuthenticationConfigurationTransformer.transform(config, { blacklist: true }); - res.json(transformedConfig); - }).catch(err => { - next(err); - }); + authentications.forEach(authentication => { + authentication.authenticationConfigurationId = config._id; + promises.push(Authentication.updateAuthentication(authentication)); }); -}; \ No newline at end of file + return Promise.all(promises); + }).then(response => { + // Append secure data to config for the purposes of configuring passport + const config = response[0]; + return SecurePropertyAppender.appendToConfig(config); + }).then(config => { + log.info("Creating new authentication strategy " + config.type + " (" + config.title + ")"); + const strategy = require('../authentication/' + config.type); + strategy.initialize(config); + + const transformedConfig = AuthenticationConfigurationTransformer.transform(config, { blacklist: true }); + res.json(transformedConfig); + }).catch(err => next(err)); + }); + + app.delete( + '/api/authentication/configuration/:id', + passport.authenticate('bearer'), + access.authorize('UPDATE_AUTH_CONFIG'), + function (req, res, next) { + + lock.acquire(enabledKey, async function (done) { + const config = await AuthenticationConfiguration.getById(req.params.id); + const allowed = await isAllowed(config, true); + if (!allowed) { + log.error('Cannot delete ' + config.name + ', since this would leave no enabled authentications'); + done(); + return res.status(403).send('At least 1 authentication must be enabled'); + } + + Authentication.getAuthenticationsByAuthConfigId(req.params.id) + .then(authentications => { + //Set config to null for any attached authentications + const authUpdatePromises = []; + authentications.forEach(authentication => { + if (authentication.type === 'local') { + throw new Error('Removal of local authentication is not allowed'); + } + authentication.authenticationConfigurationId = null; + authUpdatePromises.push(Authentication.updateAuthentication(authentication)); + }); + return Promise.all(authUpdatePromises); + }).then(() => { + //Remove config + return AuthenticationConfiguration.remove(req.params.id); + }).then(config => { + //Remove any secure properties + const response = []; + response.push(Promise.resolve(config)); + + const sss = new SecretStoreService(); + response.push(sss.delete(config._id)); + return Promise.all(response); + }).then(response => { + const config = response[0]; + + log.info("Successfully removed strategy with id " + req.params.id); + //TODO not sure how to disable passport strategy, but this will effectively disable it + const transformedConfig = AuthenticationConfigurationTransformer.transform(config, { blacklist: true }); + res.json(transformedConfig); + done(); + }).catch(err => { + done(); + next(err); + }); + }); + }); +}; diff --git a/service/src/routes/devices.js b/service/src/routes/devices.js index 8ea9d823f..da9e7cc47 100644 --- a/service/src/routes/devices.js +++ b/service/src/routes/devices.js @@ -124,7 +124,9 @@ DeviceResource.prototype.create = function(req, res, next) { .then(device => { res.json(device); }) - .catch(err => next(err)); + .catch(err => { + next(err) + }); }; DeviceResource.prototype.count = function (req, res, next) { @@ -183,22 +185,22 @@ DeviceResource.prototype.getDevice = function(req, res, next) { }; DeviceResource.prototype.updateDevice = function(req, res, next) { - var update = {}; + const update = {}; if (req.newDevice.uid) update.uid = req.newDevice.uid; if (req.newDevice.name) update.name = req.newDevice.name; if (req.newDevice.description) update.description = req.newDevice.description; if (req.newDevice.registered !== undefined) update.registered = req.newDevice.registered; if (req.newDevice.userId) update.userId = req.newDevice.userId; - return Device.updateDevice(req.param('id'), update) - .then( - device => { - res.json(device) - }, - err => { - next(err) - } - ); + Device.updateDevice(req.param('id'), update) + .then(device => { + if (!device) return res.sendStatus(404); + + res.json(device); + }) + .catch(err => { + next(err) + }); }; DeviceResource.prototype.deleteDevice = function(req, res, next) { diff --git a/service/src/routes/index.js b/service/src/routes/index.js index f79eb59f6..12ad25196 100644 --- a/service/src/routes/index.js +++ b/service/src/routes/index.js @@ -1,59 +1,13 @@ module.exports = function(app, security) { - const extend = require('util')._extend; - const async = require('async'); const log = require('../logger'); - const config = require('../config'); const api = require('../api'); - const User = require('../models/user'); const Event = require('../models/event'); const Team = require('../models/team'); const Role = require('../models/role'); const Device = require('../models/device'); const Icon = require('../models/icon'); - const Setting = require('../models/setting'); - const AuthenticationApiAppender = require('../utilities/authenticationApiAppender'); const { modulesPathsInDir } = require('../utilities/loader'); - app.get('/api', function (req, res, next) { - console.log('*********************** get api ') - - async.parallel({ - initial: function (done) { - User.count(function (err, count) { - console.log('*********************** user count is ', count) - done(err, count === 0); - }); - }, - disclaimer: function (done) { - Setting.getSetting('disclaimer') - .then(disclaimer => done(null, disclaimer || {})) - .catch(err => done(err)); - }, - contactinfo: function (done) { - Setting.getSetting('contactinfo') - .then(contactinfo => done(null, contactinfo || {})) - .catch(err => done(err)); - } - }, function (err, results) { - if (err) return next(err); - - const api = extend({}, config.api); - api.disclaimer = results.disclaimer.settings; - api.contactinfo = results.contactinfo.settings; - - if (results.initial) { - api.initial = true; - } - - AuthenticationApiAppender.append(api, { whitelist: true }).then(appendedApi => { - res.json(appendedApi); - next(); - }).catch(err => { - next(err); - }); - }); - }); - // Dynamically import all routes modulesPathsInDir(__dirname).forEach(modulePath => { const moduleName = modulePath.slice(0, modulePath.indexOf('.')); @@ -63,11 +17,11 @@ module.exports = function(app, security) { }); // Grab the event for any endpoint that uses eventId - app.param('eventId', function (req, res, next, eventId) { + app.param('eventId', function(req, res, next, eventId) { if (!/^[0-9]+$/.test(eventId)) { return res.status(400).send('Invalid event ID in request path'); } - Event.getById(eventId, { populate: false }, function (err, event) { + Event.getById(eventId, { populate: false }, function(err, event) { if (!event) return res.status(404).send('Event not found'); req.event = event; next(); @@ -75,11 +29,11 @@ module.exports = function(app, security) { }); // Grab the user for any endpoint that uses userId - app.param('userId', function (req, res, next, userId) { + app.param('userId', function(req, res, next, userId) { if (!/^[0-9a-f]{24}$/.test(userId)) { return res.status(400).send('Invalid user ID in request path'); } - new api.User().getById(userId, function (err, user) { + new api.User().getById(userId, function(err, user) { if (!user) return res.status(404).send('User not found'); req.userParam = user; next(); @@ -87,14 +41,14 @@ module.exports = function(app, security) { }); // Grab the team for any endpoint that uses teamId - app.param('teamId', function (req, res, next, teamId) { + app.param('teamId', function(req, res, next, teamId) { const options = {}; if (req.query) { for (let [key, value] of Object.entries(req.query)) { options[key] = value; } } - Team.getTeamById(teamId, options, function (err, team) { + Team.getTeamById(teamId, options, function(err, team) { if (!team) return res.status(404).send('Team not found'); req.team = team; next(); @@ -102,8 +56,8 @@ module.exports = function(app, security) { }); // Grab the icon for any endpoint that uses iconId - app.param('iconId', function (req, res, next, iconId) { - Icon.getById(iconId, function (err, icon) { + app.param('iconId', function(req, res, next, iconId) { + Icon.getById(iconId, function(err, icon) { if (!icon) return res.status(404).send('Icon not found'); req.icon = icon; next(); @@ -111,8 +65,8 @@ module.exports = function(app, security) { }); // Grab the device for any endpoint that uses deviceId - app.param('deviceId', function (req, res, next, deviceId) { - Device.getDeviceById(deviceId, function (err, device) { + app.param('deviceId', function(req, res, next, deviceId) { + Device.getDeviceById(deviceId, function(err, device) { if (!device) return res.status(404).send('Device not found'); req.device = device; next(); @@ -120,8 +74,8 @@ module.exports = function(app, security) { }); // Grab the role for any endpoint that uses roleId - app.param('roleId', function (req, res, next, roleId) { - Role.getRoleById(roleId, function (err, role) { + app.param('roleId', function(req, res, next, roleId) { + Role.getRoleById(roleId, function(err, role) { if (!role) return res.status(404).send('Role ' + roleId + ' not found'); req.role = role; next(); @@ -129,11 +83,12 @@ module.exports = function(app, security) { }); // Grab the layer for any endpoint that uses layerId - app.param('layerId', function (req, res, next, layerId) { - new api.Layer().getLayer(layerId) + app.param('layerId', function(req, res, next, layerId) { + new api.Layer() + .getLayer(layerId) .then(layer => { if (!layer) { - return res.status(404).send("Layer not found"); + return res.status(404).send('Layer not found'); } req.layer = layer; @@ -143,14 +98,19 @@ module.exports = function(app, security) { }); // Grab the feature for any endpoint that uses observationId - app.param('observationId', function (req, res, next, observationId) { + app.param('observationId', function(req, res, next, observationId) { req.observationId = observationId; - new api.Observation(req.event).getById(observationId, function (err, observation) { + new api.Observation(req.event).getById(observationId, function( + err, + observation + ) { if (err) { return next(err); } if (!observation) { - return res.status(404).send(`Observation ID ${observationId} not found`); + return res + .status(404) + .send(`Observation ID ${observationId} not found`); } req.observation = observation; next(); diff --git a/service/src/transformers/user.js b/service/src/transformers/user.js index 6fdda8635..499ba88d6 100644 --- a/service/src/transformers/user.js +++ b/service/src/transformers/user.js @@ -1,11 +1,10 @@ -const User = require('../models/user'); - function transformUser(user, options) { - if (!user) return null; - - user = user.toObject ? user.toObject({ path: options.path, transform: User.transform }) : user; - - return user; + if (!user) { + return null; + } + return user.toObject ? + user.toObject({ path: options.path }) : + user; } function transformUsers(users, options) { diff --git a/service/src/utilities/authenticationApiAppender.js b/service/src/utilities/authenticationApiAppender.js index 20658aaa1..715af906f 100644 --- a/service/src/utilities/authenticationApiAppender.js +++ b/service/src/utilities/authenticationApiAppender.js @@ -19,7 +19,7 @@ async function append(api, options) { delete apiCopy.authenticationStrategies; apiCopy.authenticationStrategies = {}; - const authenticationConfigurations = await AuthenticationConfiguration.Model.find(); + const authenticationConfigurations = await AuthenticationConfiguration.getAllConfigurations(); const filtered = authenticationConfigurations.filter(config => { if (!config.enabled) { diff --git a/service/src/utilities/geopackage.ts b/service/src/utilities/geopackage.ts index 20411b5a5..356848cdc 100644 --- a/service/src/utilities/geopackage.ts +++ b/service/src/utilities/geopackage.ts @@ -127,7 +127,7 @@ export class GeoPackageUtility { private constructor() { const pathToGeoPackageModule = path.resolve(path.dirname(require.resolve('@ngageoint/geopackage/package.json'))) - setCanvasKitWasmLocateFile(file => `${pathToGeoPackageModule}/dist/canvaskit/${file}`); + setCanvasKitWasmLocateFile((file: any) => `${pathToGeoPackageModule}/dist/canvaskit/${file}`); } public static getInstance() : GeoPackageUtility { @@ -290,7 +290,7 @@ export class GeoPackageUtility { // return GeoPackageAPI.getVectorTileProtobuf(geopackage, table.name, x, y, z); // } - public async getClosestFeatures(layers: any[], lat: number, lng: number, {x, y, z}: {x: number, y: number, z: number}) { + public async getClosestFeatures(layers: any[], lat: number, lng: number, {x, y, z}: {x: number, y: number, z: number}): Promise { const closestFeatures = []; for (let i = 0; i < layers.length; i++) { diff --git a/service/test/adapters/adapters.db.mongoose.test.ts b/service/test/adapters/adapters.db.mongoose.test.ts index 62728a8c4..f0d1a4ad5 100644 --- a/service/test/adapters/adapters.db.mongoose.test.ts +++ b/service/test/adapters/adapters.db.mongoose.test.ts @@ -3,7 +3,7 @@ import chai, { expect } from 'chai' import sinon from 'sinon' import sinonChai from 'sinon-chai' -import mongoose, { Mongoose, MongooseThenable } from 'mongoose' +import mongoose, { Mongoose } from 'mongoose' import { waitForDefaultMongooseConnection } from '../../lib/adapters/adapters.db.mongoose' chai.use(sinonChai) @@ -70,7 +70,7 @@ describe('wait for mongoose connection utility', function() { }) return new Promise((resolve, reject) => { reject('first connect rejection') - }) as unknown as MongooseThenable + }) }) connectStub.onSecondCall().rejects('second connect rejection') diff --git a/service/test/adapters/base/adapters.base.db.mongoose.test.ts b/service/test/adapters/base/adapters.base.db.mongoose.test.ts index 6ddb1f007..b6594a712 100644 --- a/service/test/adapters/base/adapters.base.db.mongoose.test.ts +++ b/service/test/adapters/base/adapters.base.db.mongoose.test.ts @@ -1,12 +1,11 @@ import mongoose from 'mongoose' -import { describe, it, before, beforeEach, after, afterEach } from 'mocha' +import { describe, it, before, after, afterEach } from 'mocha' import { expect } from 'chai' import '../../mongo.test' import { mongoTestAfterAllHook, mongoTestBeforeAllHook, MongoTestContext } from '../../mongo.test' import { BaseMongooseRepository, pageQuery } from '../../../lib/adapters/base/adapters.base.db.mongoose' import Substitute, { Arg } from '@fluffy-spoon/substitute' import { PagingParameters } from '../../../src/entities/entities.global' -import uniqid from 'uniqid' import _ from 'lodash' describe('mongoose adapter layer base', function() { @@ -22,7 +21,7 @@ describe('mongoose adapter layer base', function() { type BaseModel = mongoose.Model const collection = 'base' - const schema = new mongoose.Schema({ + const schema = new mongoose.Schema({ derp: { type: String, required: true }, lerp: { type: String, required: false }, squee: { type: Boolean, required: false, default: false }, @@ -88,10 +87,8 @@ describe('mongoose adapter layer base', function() { squee: false, noo: 22 } - await Promise.all([ - repo.create(seed1), - repo.create(seed2) - ]) + await repo.create(seed1), + await repo.create(seed2) const all = await repo.findAll() expect(all.length).to.equal(2) @@ -195,7 +192,7 @@ describe('mongoose adapter layer base', function() { it('returns null if the delete id does not exist', async function() { - const removed = await repo.removeById(mongoose.Types.ObjectId().toHexString()) + const removed = await repo.removeById(new mongoose.Types.ObjectId().toHexString()) expect(removed).to.be.null }) @@ -241,7 +238,7 @@ describe('mongoose adapter layer base', function() { noo: 8 } const created = await repo.create(seed) - const ids = [ mongoose.Types.ObjectId().toHexString(), created.id, mongoose.Types.ObjectId().toHexString() ] + const ids = [ new mongoose.Types.ObjectId().toHexString(), created.id, new mongoose.Types.ObjectId().toHexString() ] const found = await repo.findAllByIds(ids) expect(found).to.deep.equal({ @@ -269,13 +266,13 @@ describe('mongoose adapter layer base', function() { it('adds paging to a query without total count', async function() { - const baseQuery = Substitute.for>() - const BaseQuery = function(this: mongoose.DocumentQuery): mongoose.DocumentQuery { - this.count = function(): mongoose.Query { - return Promise.reject() as unknown as mongoose.Query + const baseQuery = Substitute.for>() + const BaseQuery: any = function(this: mongoose.Query): mongoose.Query { + this.count = function(): mongoose.Query { + return Promise.reject() as unknown as mongoose.Query } return baseQuery - } as unknown as (new (...args: any[]) => mongoose.DocumentQuery) + } as unknown as (new (...args: any[]) => mongoose.Query) baseQuery.toConstructor().returns(BaseQuery) baseQuery.limit(Arg.any()).returns(baseQuery) baseQuery.skip(Arg.any()).returns(baseQuery) @@ -293,16 +290,16 @@ describe('mongoose adapter layer base', function() { it('returns the total count if requested', async function() { - const baseQuery = Substitute.for>() - const BaseQuery = function(this: mongoose.DocumentQuery): mongoose.DocumentQuery { + const baseQuery = Substitute.for>() + const BaseQuery: any = function(this: mongoose.Query): mongoose.Query { return Object.create(baseQuery, { count: { get: () => function() { - return Promise.resolve(999) as unknown as mongoose.Query + return Promise.resolve(999) as unknown as mongoose.Query } } }) - } as unknown as (new (...args: any[]) => mongoose.DocumentQuery) + } as unknown as (new (...args: any[]) => mongoose.Query) baseQuery.toConstructor().returns(BaseQuery) baseQuery.limit(Arg.any()).returns(baseQuery) baseQuery.skip(Arg.any()).returns(baseQuery) @@ -320,16 +317,16 @@ describe('mongoose adapter layer base', function() { it('includes total count when total count parameter is absent and page index is 0', async function() { - const baseQuery = Substitute.for>() - const BaseQuery = function(this: mongoose.DocumentQuery): mongoose.DocumentQuery { + const baseQuery = Substitute.for>() + const BaseQuery: any = function(this: mongoose.Query): mongoose.Query { return Object.create(baseQuery, { count: { get: () => function() { - return Promise.resolve(999) as unknown as mongoose.Query + return Promise.resolve(999) as unknown as mongoose.Query } } }) - } as unknown as (new (...args: any[]) => mongoose.DocumentQuery) + } as unknown as (new (...args: any[]) => mongoose.Query) baseQuery.toConstructor().returns(BaseQuery) baseQuery.limit(Arg.any()).returns(baseQuery) baseQuery.skip(Arg.any()).returns(baseQuery) @@ -346,16 +343,16 @@ describe('mongoose adapter layer base', function() { it('does not include total count when total count parameter is absent and page index is greater than 0', async function() { - const baseQuery = Substitute.for>() - const BaseQuery = function(this: mongoose.DocumentQuery): mongoose.DocumentQuery { + const baseQuery = Substitute.for>() + const BaseQuery: any = function(this: mongoose.Query): mongoose.Query { return Object.create(baseQuery, { count: { get: () => function() { - return Promise.reject() as unknown as mongoose.Query + return Promise.reject() as unknown as mongoose.Query } } }) - } as unknown as (new (...args: any[]) => mongoose.DocumentQuery) + } as unknown as (new (...args: any[]) => mongoose.Query) baseQuery.toConstructor().returns(BaseQuery) baseQuery.limit(Arg.any()).returns(baseQuery) baseQuery.skip(Arg.any()).returns(baseQuery) diff --git a/service/test/adapters/events/adapters.events.db.mongoose.test.ts b/service/test/adapters/events/adapters.events.db.mongoose.test.ts index 37dee99f0..0b1fe5e1a 100644 --- a/service/test/adapters/events/adapters.events.db.mongoose.test.ts +++ b/service/test/adapters/events/adapters.events.db.mongoose.test.ts @@ -21,13 +21,14 @@ describe('event mongoose repository', function() { beforeEach('initialize model', async function() { - model = legacy.Model as mongoose.Model + //TODO remove cast to any, was mongoose.Model + model = legacy.Model as any repo = new MongooseMageEventRepository(model) createEvent = (attrs: Partial): Promise => { return new Promise((resolve, reject) => { legacy.create( attrs as MageEventCreateAttrs, - { _id: mongoose.Types.ObjectId() }, + { _id: new mongoose.Types.ObjectId() }, (err: any | null, event?: MageEventDocument) => { if (err) { return reject(err) @@ -414,10 +415,10 @@ describe('event mongoose repository', function() { it('gets the teams', async function() { - const user = mongoose.Types.ObjectId().toHexString() + const user = new mongoose.Types.ObjectId().toHexString() const teams: Partial[] = [ { - id: mongoose.Types.ObjectId().toHexString(), + id: new mongoose.Types.ObjectId().toHexString(), name: 'Team 1', acl: { [user]: { @@ -425,10 +426,10 @@ describe('event mongoose repository', function() { permissions: [ 'read', 'update', 'delete' ] } }, - userIds: [ user, mongoose.Types.ObjectId().toHexString(), mongoose.Types.ObjectId().toHexString() ] + userIds: [ user, new mongoose.Types.ObjectId().toHexString(), new mongoose.Types.ObjectId().toHexString() ] }, { - id: mongoose.Types.ObjectId().toHexString(), + id: new mongoose.Types.ObjectId().toHexString(), name: 'Team 2', acl: { [user]: { @@ -436,13 +437,13 @@ describe('event mongoose repository', function() { permissions: [ 'read' ] } }, - userIds: [ user, mongoose.Types.ObjectId().toHexString() ] + userIds: [ user, new mongoose.Types.ObjectId().toHexString() ] } ] const teamDocs = await Promise.all(teams.map(async (x) => { return await TeamModel.create(Object.assign({ ...x }, { - _id: mongoose.Types.ObjectId(x.id), + _id: new mongoose.Types.ObjectId(x.id), acl: _.mapValues(x.acl, x => x.role) })) })) diff --git a/service/test/adapters/feeds/adapters.feeds.db.mongoose.test.ts b/service/test/adapters/feeds/adapters.feeds.db.mongoose.test.ts index 6489905bf..9f68aa1ef 100644 --- a/service/test/adapters/feeds/adapters.feeds.db.mongoose.test.ts +++ b/service/test/adapters/feeds/adapters.feeds.db.mongoose.test.ts @@ -26,7 +26,6 @@ describe('feeds repositories', function() { beforeEach(async function() { conn = await mongoose.createConnection(uri, { - useMongoClient: true, promiseLibrary: Promise }) }) @@ -46,7 +45,8 @@ describe('feeds repositories', function() { let repo: MongooseFeedServiceTypeRepository beforeEach(async function() { - model = conn.model(FeedsModels.FeedServiceTypeIdentity, FeedServiceTypeIdentitySchema, collection) + //TODO remove cast to any + model = conn.model(FeedsModels.FeedServiceTypeIdentity, FeedServiceTypeIdentitySchema, collection) as any repo = new MongooseFeedServiceTypeRepository(model) }) @@ -110,7 +110,7 @@ describe('feeds repositories', function() { expect(registered.id).to.be.a('string') expect(read.length).to.equal(1) expect(read[0]).to.deep.include({ - _id: mongoose.Types.ObjectId(registered.id), + _id: new mongoose.Types.ObjectId(registered.id), id: registered.id, pluginServiceTypeId: serviceType.pluginServiceTypeId, moduleName: serviceType.moduleName @@ -202,7 +202,8 @@ describe('feeds repositories', function() { let repo: FeedServiceRepository beforeEach(function() { - model = conn.model(FeedsModels.FeedService, FeedServiceSchema, collection) + //TODO remove cast to any + model = conn.model(FeedsModels.FeedService, FeedServiceSchema, collection) as any repo = new MongooseFeedServiceRepository(model) }) @@ -216,7 +217,7 @@ describe('feeds repositories', function() { it('returns service type id as string', async function() { const stub: FeedServiceCreateAttrs = { - serviceType: mongoose.Types.ObjectId().toHexString(), + serviceType: (new mongoose.Types.ObjectId()).toHexString(), title: 'No Object IDs', summary: 'Testing', config: { url: 'https://some.api.com' } @@ -235,7 +236,7 @@ describe('feeds repositories', function() { it('omits version key from json', async function() { const stub: FeedServiceCreateAttrs = { - serviceType: mongoose.Types.ObjectId().toHexString(), + serviceType: (new mongoose.Types.ObjectId()).toHexString(), title: 'No Version Keys', summary: 'Testing', config: { url: 'https://some.api.com' } @@ -258,7 +259,8 @@ describe('feeds repositories', function() { let idFactory: SubstituteOf beforeEach(function() { - model = conn.model(FeedsModels.Feed, FeedSchema, collection) + //TODO remove cast to any + model = conn.model(FeedsModels.Feed, FeedSchema, collection) as any idFactory = Sub.for() repo = new MongooseFeedRepository(model, idFactory) }) @@ -273,9 +275,9 @@ describe('feeds repositories', function() { const nextId = `feed:test:${Date.now()}` idFactory.nextId().resolves(nextId) - const createAttrs: Required = Object.freeze({ + const createAttrs: Required = Object.freeze>({ id: 'not this one', - service: mongoose.Types.ObjectId().toHexString(), + service: (new mongoose.Types.ObjectId()).toHexString(), topic: uniqid(), title: uniqid(), summary: 'everything is required', @@ -328,9 +330,9 @@ describe('feeds repositories', function() { it('replaces properties', async function() { - const origAttrs: Required = Object.freeze({ + const origAttrs: Required = Object.freeze>({ id: uniqid(), - service: mongoose.Types.ObjectId().toHexString(), + service: (new mongoose.Types.ObjectId()).toHexString(), topic: uniqid(), title: uniqid(), summary: uniqid(), @@ -361,7 +363,7 @@ describe('feeds repositories', function() { } } }) - const updatedAttrs: Required = Object.freeze({ + const updatedAttrs: Required = Object.freeze>({ id: origAttrs.id, service: origAttrs.service, topic: origAttrs.topic, @@ -403,9 +405,9 @@ describe('feeds repositories', function() { it('removes keys omitted from update', async function() { - const origAttrs: Required = Object.freeze({ + const origAttrs: Required = Object.freeze>({ id: uniqid(), - service: mongoose.Types.ObjectId().toHexString(), + service: (new mongoose.Types.ObjectId()).toHexString(), topic: uniqid(), title: uniqid(), summary: uniqid(), @@ -455,7 +457,7 @@ describe('feeds repositories', function() { const origAttrs: Feed = Object.freeze({ id: uniqid(), - service: mongoose.Types.ObjectId().toHexString(), + service: (new mongoose.Types.ObjectId()).toHexString(), topic: uniqid(), title: uniqid(), itemsHaveIdentity: true, @@ -463,7 +465,7 @@ describe('feeds repositories', function() { }) const updatedAttrs: Feed = Object.freeze({ id: origAttrs.id, - service: mongoose.Types.ObjectId().toHexString(), + service: (new mongoose.Types.ObjectId()).toHexString(), topic: uniqid(), title: uniqid(), itemsHaveIdentity: true, @@ -490,7 +492,7 @@ describe('feeds repositories', function() { const feedStubs: FeedCreateAttrs[] = [ { id: '1', - service: mongoose.Types.ObjectId().toHexString(), + service: (new mongoose.Types.ObjectId()).toHexString(), topic: uniqid(), title: 'Feed 1', constantParams: { @@ -501,7 +503,7 @@ describe('feeds repositories', function() { }, { id: '2', - service: mongoose.Types.ObjectId().toHexString(), + service: (new mongoose.Types.ObjectId()).toHexString(), topic: uniqid(), title: 'Feed 2', summary: 'The second one', @@ -539,21 +541,21 @@ describe('feeds repositories', function() { const feeds: Feed[] = [] idFactory.nextId().resolves('0', '1', '2') feeds.push(await repo.create({ - service: mongoose.Types.ObjectId().toHexString(), + service: (new mongoose.Types.ObjectId()).toHexString(), topic: 'topic0', title: 'Feed 0', itemsHaveIdentity: true, itemsHaveSpatialDimension: true, })) feeds.push(await repo.create({ - service: mongoose.Types.ObjectId().toHexString(), + service: (new mongoose.Types.ObjectId()).toHexString(), topic: 'topic1', title: 'Feed 1', itemsHaveIdentity: true, itemsHaveSpatialDimension: true, })) feeds.push(await repo.create({ - service: mongoose.Types.ObjectId().toHexString(), + service: (new mongoose.Types.ObjectId()).toHexString(), topic: 'topic2', title: 'Feed 2', itemsHaveIdentity: true, @@ -570,7 +572,7 @@ describe('feeds repositories', function() { it('returns feed with object ids as strings', async function() { const stub: FeedCreateAttrs = { - service: mongoose.Types.ObjectId().toHexString(), + service: (new mongoose.Types.ObjectId()).toHexString(), topic: uniqid(), title: 'No Object IDs', summary: 'Testing', @@ -591,7 +593,7 @@ describe('feeds repositories', function() { it('omits version key from json', async function() { const stub: FeedCreateAttrs = { - service: mongoose.Types.ObjectId().toHexString(), + service: (new mongoose.Types.ObjectId()).toHexString(), topic: uniqid(), title: 'No Version Keys', summary: 'Testing', @@ -616,7 +618,7 @@ describe('feeds repositories', function() { it('finds the feeds with a service id', async function() { - const service = mongoose.Types.ObjectId().toHexString() + const service = (new mongoose.Types.ObjectId()).toHexString() const serviceFeeds: Feed[] = await Promise.all([ repo.create({ service, @@ -642,14 +644,14 @@ describe('feeds repositories', function() { ]) const otherFeeds: Feed[] = await Promise.all([ repo.create({ - service: mongoose.Types.ObjectId().toHexString(), + service: (new mongoose.Types.ObjectId()).toHexString(), topic: uniqid(), title: 'Other 1', itemsHaveIdentity: true, itemsHaveSpatialDimension: true }), repo.create({ - service: mongoose.Types.ObjectId().toHexString(), + service: (new mongoose.Types.ObjectId()).toHexString(), topic: uniqid(), title: 'Other 2', itemsHaveIdentity: true, @@ -669,14 +671,14 @@ describe('feeds repositories', function() { const otherFeeds: Feed[] = await Promise.all([ repo.create({ - service: mongoose.Types.ObjectId().toHexString(), + service: (new mongoose.Types.ObjectId()).toHexString(), topic: uniqid(), title: 'Other 1', itemsHaveIdentity: true, itemsHaveSpatialDimension: true }), repo.create({ - service: mongoose.Types.ObjectId().toHexString(), + service: (new mongoose.Types.ObjectId()).toHexString(), topic: uniqid(), title: 'Other 2', itemsHaveIdentity: true, @@ -684,7 +686,7 @@ describe('feeds repositories', function() { }) ]) const all = await repo.findAll() - const found = await repo.findFeedsForService(mongoose.Types.ObjectId().toHexString()) + const found = await repo.findFeedsForService((new mongoose.Types.ObjectId()).toHexString()) expect(all).to.have.deep.members(otherFeeds) expect(found).to.deep.equal([]) @@ -696,7 +698,7 @@ describe('feeds repositories', function() { it('removes the feed for the id', async function() { const stub: FeedCreateAttrs = Object.freeze({ - service: mongoose.Types.ObjectId().toHexString(), + service: (new mongoose.Types.ObjectId()).toHexString(), topic: uniqid(), title: 'No Version Keys', summary: 'Testing', @@ -725,7 +727,7 @@ describe('feeds repositories', function() { it('removes only the feeds that reference the service id and returns them', async function() { - const service = mongoose.Types.ObjectId().toHexString() + const service = (new mongoose.Types.ObjectId()).toHexString() const serviceFeeds: Feed[] = await Promise.all([ repo.create({ service, @@ -744,14 +746,14 @@ describe('feeds repositories', function() { ]) const otherFeeds: Feed[] = await Promise.all([ repo.create({ - service: mongoose.Types.ObjectId().toHexString(), + service: (new mongoose.Types.ObjectId()).toHexString(), topic: uniqid(), title: 'Other 1', itemsHaveIdentity: true, itemsHaveSpatialDimension: true }), repo.create({ - service: mongoose.Types.ObjectId().toHexString(), + service: (new mongoose.Types.ObjectId()).toHexString(), topic: uniqid(), title: 'Other 2', itemsHaveIdentity: true, @@ -772,21 +774,21 @@ describe('feeds repositories', function() { const otherFeeds: Feed[] = await Promise.all([ repo.create({ - service: mongoose.Types.ObjectId().toHexString(), + service: (new mongoose.Types.ObjectId()).toHexString(), topic: uniqid(), title: 'Other 1', itemsHaveIdentity: true, itemsHaveSpatialDimension: true }), repo.create({ - service: mongoose.Types.ObjectId().toHexString(), + service: (new mongoose.Types.ObjectId()).toHexString(), topic: uniqid(), title: 'Other 2', itemsHaveIdentity: true, itemsHaveSpatialDimension: true }) ]) - const removed = await repo.removeByServiceId(mongoose.Types.ObjectId().toHexString()) + const removed = await repo.removeByServiceId((new mongoose.Types.ObjectId()).toHexString()) const allAfterRemove = await repo.findAll() expect(removed).to.deep.equal([]) @@ -794,4 +796,4 @@ describe('feeds repositories', function() { }) }) }) -}) +}) \ No newline at end of file diff --git a/service/test/adapters/icons/adapters.icons.db.mongoose.test.ts b/service/test/adapters/icons/adapters.icons.db.mongoose.test.ts index ad9cd2c72..dee5cee83 100644 --- a/service/test/adapters/icons/adapters.icons.db.mongoose.test.ts +++ b/service/test/adapters/icons/adapters.icons.db.mongoose.test.ts @@ -1,6 +1,6 @@ import { URL } from 'url' import { expect } from 'chai' -import _, { uniq, uniqueId } from 'lodash' +import _ from 'lodash' import { MongoMemoryServer } from 'mongodb-memory-server' import mongoose from 'mongoose' import uniqid from 'uniqid' @@ -10,6 +10,7 @@ import { MongooseStaticIconRepository, StaticIconDocument, StaticIconModel } fro import { EntityIdFactory, UrlResolutionError, UrlScheme } from '../../../lib/entities/entities.global' import { Readable } from 'stream' + interface TestUrlScheme extends UrlScheme { urlWithPath(path: string): URL } @@ -42,10 +43,7 @@ describe('static icon mongoose repository', function() { }) beforeEach(async function() { - conn = await mongoose.createConnection(uri, { - useMongoClient: true, - promiseLibrary: Promise - }) + conn = await mongoose.createConnection(uri).asPromise() model = StaticIconModel(conn, 'test_static_icons') idFactory = Sub.for() contentStore = Sub.for() @@ -147,7 +145,7 @@ describe('static icon mongoose repository', function() { summary: 'replace me' } const updatedAttrs: Required = { - sourceUrl, + sourceUrl: new URL(sourceUrl.toString()), imageType: 'vector', sizeBytes: 1100, sizePixels: { width: 220, height: 220 }, @@ -690,7 +688,7 @@ describe('static icon mongoose repository', function() { tags: [] } scheme2LocalIcon = { - id: uniqueId(), + id: uniqid(), sourceUrl: scheme2Local.urlWithPath('test2.png'), registeredTimestamp: Date.now(), resolvedTimestamp: Date.now(), diff --git a/service/test/adapters/observations/adapters.observations.db.mongoose.test.ts b/service/test/adapters/observations/adapters.observations.db.mongoose.test.ts index d6f1348b4..6ccdd8558 100644 --- a/service/test/adapters/observations/adapters.observations.db.mongoose.test.ts +++ b/service/test/adapters/observations/adapters.observations.db.mongoose.test.ts @@ -56,14 +56,14 @@ describe('mongoose observation repository', function() { let domainEvents: SubstituteOf beforeEach('initialize model', async function() { - - const MageEventModel = legacyEvent.Model as mongoose.Model + //TODO remove cast to any, was mongoose.Model + const MageEventModel = legacyEvent.Model as any const eventRepo = new MongooseMageEventRepository(MageEventModel) createEvent = (attrs: Partial): Promise => { return new Promise((resolve, reject) => { legacyEvent.create( attrs as MageEventCreateAttrs, - { _id: mongoose.Types.ObjectId() }, + { _id: new mongoose.Types.ObjectId() }, (err: any | null, event?: MageEventDocument) => { if (event) { return resolve(event) @@ -76,7 +76,7 @@ describe('mongoose observation repository', function() { // the implicitly created team id in the teamIds list, presumably // because it's done in middleware |:$ // TODO: fix the above - return MageEventModel.findById(createdWithoutTeamId._id).then(withTeamId => { + return MageEventModel.findById(createdWithoutTeamId._id).then((withTeamId: any) => { if (withTeamId) { return withTeamId } @@ -132,7 +132,11 @@ describe('mongoose observation repository', function() { }) afterEach(async function() { - await model.ensureIndexes() + try { + await model.ensureIndexes() + } catch(err) { + //don't care + } // should run all the middleware to drop the observation collection await eventDoc.remove() await repo.idModel.remove({}) @@ -143,7 +147,7 @@ describe('mongoose observation repository', function() { it('adds an observation id to the collection and returns it', async function() { const id = await repo.allocateObservationId() - const parsed = mongoose.Types.ObjectId(id) + const parsed = new mongoose.Types.ObjectId(id) const found = await repo.idModel.findById(id) const idCount = await repo.idModel.count({}) @@ -160,7 +164,7 @@ describe('mongoose observation repository', function() { it('fails if the observation is new and the id is not in the id collection', async function() { - const id = mongoose.Types.ObjectId() + const id = new mongoose.Types.ObjectId() const stub = observationStub(id.toHexString(), event.id) const observation = Observation.evaluate(stub, event) const err = await repo.save(observation) as ObservationRepositoryError @@ -237,12 +241,12 @@ describe('mongoose observation repository', function() { ] attrs.states = [ { - id: mongoose.Types.ObjectId().toHexString(), + id: (new mongoose.Types.ObjectId()).toHexString(), name: 'active', - userId: mongoose.Types.ObjectId().toHexString() + userId: (new mongoose.Types.ObjectId()).toHexString() }, { - id: mongoose.Types.ObjectId().toHexString(), + id: (new mongoose.Types.ObjectId()).toHexString(), name: 'archived', userId: undefined } @@ -250,7 +254,7 @@ describe('mongoose observation repository', function() { attrs.important = { timestamp: new Date(), description: 'look at me', - userId: mongoose.Types.ObjectId().toHexString(), + userId: (new mongoose.Types.ObjectId()).toHexString(), } const observation = Observation.evaluate(attrs, event) @@ -289,7 +293,7 @@ describe('mongoose observation repository', function() { } ] origAttrs.states = [ - { id: mongoose.Types.ObjectId().toHexString(), name: 'active', userId: mongoose.Types.ObjectId().toHexString() } + { id: (new mongoose.Types.ObjectId()).toHexString(), name: 'active', userId: (new mongoose.Types.ObjectId()).toHexString() } ] origAttrs.properties.forms = [ { @@ -347,7 +351,7 @@ describe('mongoose observation repository', function() { expect(savedAttrs.states[0].id).to.be.a('string') expect(savedAttrs.states[0].name).to.equal('archived') expect(savedAttrs.states[0].userId).to.be.undefined - expect(() => mongoose.Types.ObjectId(savedAttrs.states[0].id as string)).not.to.throw() + expect(() => new mongoose.Types.ObjectId(savedAttrs.states[0].id as string)).not.to.throw() expect(savedAttrs.states[0].id).not.to.equal(orig.states[0].id) expect(savedAttrs.lastModified.getTime()).to.be.greaterThanOrEqual(orig.lastModified.getTime()) expect(count).to.equal(1) @@ -409,7 +413,7 @@ describe('mongoose observation repository', function() { { id: PendingEntityId, name: 'archived', - userId: mongoose.Types.ObjectId().toHexString() + userId: (new mongoose.Types.ObjectId()).toHexString() } ] const state1 = Observation.evaluate(state1Stub, event) @@ -420,7 +424,7 @@ describe('mongoose observation repository', function() { { id: PendingEntityId, name: 'active', - userId: mongoose.Types.ObjectId().toHexString() + userId: (new mongoose.Types.ObjectId()).toHexString() }, state1Saved.states[0], ] @@ -433,14 +437,14 @@ describe('mongoose observation repository', function() { name: 'archived', userId: state1Stub.states[0].userId }) - expect(() => mongoose.Types.ObjectId(state1Saved.states[0].id as string).toHexString()).not.to.throw() + expect(() => new mongoose.Types.ObjectId(state1Saved.states[0].id as string).toHexString()).not.to.throw() expect(copyObservationAttrs(state1Found)).to.deep.equal(copyObservationAttrs(state1Saved)) expect(state2Saved.states).to.have.length(2) expect(state2Saved.states[0]).to.deep.include({ name: 'active', userId: state2Stub.states[0].userId }) - expect(() => mongoose.Types.ObjectId(state2Saved.states[0].id as string).toHexString()).not.to.throw() + expect(() => new mongoose.Types.ObjectId(state2Saved.states[0].id as string).toHexString()).not.to.throw() expect(copyObservationAttrs(state2Found)).to.deep.equal(copyObservationAttrs(state2Saved)) expect(state2Saved.states[1]).to.deep.equal(state1Saved.states[0]) expect(state2Saved.states[0].id).not.to.equal(state2Saved.states[1].id) @@ -613,7 +617,7 @@ describe('mongoose observation repository', function() { size: 111111, contentLocator: `${obs.id}:${obs.attachments[0].id}` } - const updated = await repo.patchAttachment(obs, mongoose.Types.ObjectId().toHexString(), contentInfo) + const updated = await repo.patchAttachment(obs, (new mongoose.Types.ObjectId()).toHexString(), contentInfo) const fetched = await repo.findById(obs.id) expect(updated).to.be.instanceOf(AttachmentNotFoundError) @@ -743,7 +747,7 @@ describe('mongoose observation repository', function() { let mod = Observation.evaluate({ ...copyObservationAttrs(obs), - id: mongoose.Types.ObjectId().toHexString() + id: (new mongoose.Types.ObjectId()).toHexString() }, event) mod = removeAttachment(mod, mod.attachments[0].id) as Observation const saved = await repo.save(mod) diff --git a/service/test/adapters/plugins/adapters.plugins.db.mongoose.test.ts b/service/test/adapters/plugins/adapters.plugins.db.mongoose.test.ts index 2f41f12d7..7516cecb1 100644 --- a/service/test/adapters/plugins/adapters.plugins.db.mongoose.test.ts +++ b/service/test/adapters/plugins/adapters.plugins.db.mongoose.test.ts @@ -1,7 +1,7 @@ import { expect } from 'chai' import { MongoMemoryServer } from 'mongodb-memory-server' -import { MongoosePluginStateRepository, PluginStateDocument } from '../../../lib/adapters/plugins/adapters.plugins.db.mongoose' -import Mongoose from 'mongoose' +import { MongoosePluginStateRepository } from '../../../lib/adapters/plugins/adapters.plugins.db.mongoose' +import mongoose from 'mongoose' import uniqid from 'uniqid' import _ from 'lodash' @@ -18,33 +18,26 @@ interface TestState { describe('mongoose plugin state repository', function() { let mongo: MongoMemoryServer - let uri: string - let mongoose: Mongoose.Mongoose - let conn: Mongoose.Connection + let conn: mongoose.Connection let repo: MongoosePluginStateRepository let pluginId: string before(async function() { mongo = await MongoMemoryServer.create() - uri = mongo.getUri() + conn = await mongoose.createConnection(mongo.getUri()) }) beforeEach(async function() { - mongoose = new Mongoose.Mongoose() - conn = await mongoose.connect(uri, { - useMongoClient: true, - promiseLibrary: Promise - }) pluginId = uniqid('@test/') repo = new MongoosePluginStateRepository(pluginId, mongoose) }) afterEach(async function() { await repo.model.remove({}) - await conn.close() }) after(async function() { + await conn.close(); await mongo.stop() }) @@ -52,9 +45,9 @@ describe('mongoose plugin state repository', function() { const name = `plugin_state_${pluginId}` - expect(mongoose.modelNames()).to.deep.equal([ name ]) + expect(mongoose.modelNames()).to.contain(name) - const model = mongoose.model(name) + const model: any = mongoose.model(name) expect(model).to.equal(repo.model) expect(model.collection.name).to.equal(name) diff --git a/service/test/adapters/systemInfo/adapters.systemInfo.controllers.web.test.ts b/service/test/adapters/systemInfo/adapters.systemInfo.controllers.web.test.ts new file mode 100644 index 000000000..341e5b917 --- /dev/null +++ b/service/test/adapters/systemInfo/adapters.systemInfo.controllers.web.test.ts @@ -0,0 +1,80 @@ +import { expect } from 'chai'; +import { AppResponse } from '../../../lib/app.api/app.api.global'; +import { beforeEach } from 'mocha'; +import express from 'express'; +import { WebAppRequestFactory } from '../../../lib/adapters/adapters.controllers.web'; +import { Substitute as Sub, SubstituteOf, Arg } from '@fluffy-spoon/substitute'; +import supertest from 'supertest'; +import { SystemInfo } from '../../../lib/entities/systemInfo/entities.systemInfo'; +import { + SystemInfoAppLayer, + SystemInfoPermissionService +} from '../../../lib/app.api/systemInfo/app.api.systemInfo'; +import { SystemInfoRoutes } from '../../../lib/adapters/systemInfo/adapters.systemInfo.controllers.web'; + +describe('SystemInfo web controller', () => { + const root = '/api'; + + type AppRequestFactoryHandle = { + createRequest: WebAppRequestFactory; + }; + + let client: supertest.SuperTest; + + // Define and set up the mockPermissionsService + const mockPermissionsService = Sub.for(); + mockPermissionsService + .ensureReadSystemInfoPermission(Arg.any()) + .returns(Promise.resolve(null)); + + let appLayer: SubstituteOf = Sub.for< + SystemInfoAppLayer + >(); + + + let appReqFactory: SubstituteOf; + + beforeEach(function() { + // Reset appLayer for every test. + appLayer = Sub.for(); + appReqFactory = Sub.for(); + + const endpoint = express(); + endpoint.use(function lookupUser( + req: express.Request, + res: express.Response, + next: express.NextFunction + ) { + req.testUser = req.headers['user'] as string; + next(); + }); + const controller = SystemInfoRoutes(appLayer, appReqFactory.createRequest); + endpoint.use(root, controller); + client = supertest(endpoint); + }); + + describe('GET /api', () => { + it('should return configuration', async () => { + const expected: SystemInfo = { + environment: { + nodeVersion: 'test', + mongodbVersion: 'test' + }, + initial: true, + disclaimer: {}, + contactInfo: {}, + version: { + major: 1, + minor: 2, + micro: 3 + } + }; + appLayer + .readSystemInfo(Arg.any()) + .returns(Promise.resolve(AppResponse.success(expected))); + const response = await client.get(`${root}`); + expect(response.status).to.equal(200); + expect(response.body).to.deep.equal(expected); + }); + }); +}); diff --git a/service/test/adapters/users/adapters.users.db.mongoose.test.ts b/service/test/adapters/users/adapters.users.db.mongoose.test.ts index daa865f5f..a3b1af10b 100644 --- a/service/test/adapters/users/adapters.users.db.mongoose.test.ts +++ b/service/test/adapters/users/adapters.users.db.mongoose.test.ts @@ -15,7 +15,8 @@ describe('users mongoose repository', function() { let repo: MongooseUserRepository before(async function() { - model = legacy.Model as mongoose.Model + //TODO remove cast to and, was mongoose.Model + model = legacy.Model as any repo = new MongooseUserRepository(model) }) @@ -28,15 +29,15 @@ describe('users mongoose repository', function() { it('transforms object ids to strings', async function() { const stub: Partial = { - id: mongoose.Types.ObjectId().toHexString(), + id: (new mongoose.Types.ObjectId()).toHexString(), username: 'doc2entity', displayName: 'Doc 2 Entity', - roleId: mongoose.Types.ObjectId().toHexString(), - authenticationId: mongoose.Types.ObjectId().toHexString(), + roleId: (new mongoose.Types.ObjectId()).toHexString(), + authenticationId: (new mongoose.Types.ObjectId()).toHexString(), active: true, enabled: true, } - const doc = await model.create({ ...stub, _id: mongoose.Types.ObjectId(stub.id) }) + const doc = await model.create({ ...stub, _id: new mongoose.Types.ObjectId(stub.id) }) const entity = repo.entityForDocument(doc) expect(entity).to.deep.include(stub) @@ -45,15 +46,15 @@ describe('users mongoose repository', function() { it('retains js dates', async function() { const stub: Partial = { - id: mongoose.Types.ObjectId().toHexString(), + id: (new mongoose.Types.ObjectId()).toHexString(), username: 'doc2entity', displayName: 'Doc 2 Entity', - roleId: mongoose.Types.ObjectId().toHexString(), - authenticationId: mongoose.Types.ObjectId().toHexString(), + roleId: (new mongoose.Types.ObjectId()).toHexString(), + authenticationId: (new mongoose.Types.ObjectId()).toHexString(), active: true, enabled: true, } - const doc = await model.create({ ...stub, _id: mongoose.Types.ObjectId(stub.id) }) + const doc = await model.create({ ...stub, _id: new mongoose.Types.ObjectId(stub.id) }) const entity = repo.entityForDocument(doc) expect(entity.createdAt).to.be.instanceOf(Date) @@ -63,8 +64,8 @@ describe('users mongoose repository', function() { describe('finding users', function() { - const authenticationId = mongoose.Types.ObjectId().toHexString() - const roleId = mongoose.Types.ObjectId().toHexString() + const authenticationId = (new mongoose.Types.ObjectId()).toHexString() + const roleId = (new mongoose.Types.ObjectId()).toHexString() let allUsers: User[] before(async function() { @@ -83,7 +84,7 @@ describe('users mongoose repository', function() { } }) const docs = await model.insertMany(users.slice()) - allUsers = docs.map(repo.entityForDocument).sort((a, b) => a.displayName.localeCompare(b.displayName)) + allUsers = docs.map(repo.entityForDocument as any).sort((a: any, b: any) => a.displayName.localeCompare(b.displayName)) as User[] }) after(async function() { @@ -138,7 +139,7 @@ describe('users mongoose repository', function() { it('sorts on display name ascending consistently', async function() { const mockModel: SubstituteOf> = Sub.for>() - const mockQuery = Sub.for>() + const mockQuery = Sub.for>() mockModel.find(Arg.all()).returns(mockQuery) mockQuery.sort(Arg.all()).returns(mockQuery) mockQuery.toConstructor().returns(function() { return mockQuery } as any) @@ -168,7 +169,7 @@ describe('users mongoose repository', function() { const userStubs: Partial[] = [ { - id: mongoose.Types.ObjectId().toHexString(), + id: (new mongoose.Types.ObjectId()).toHexString(), username: 'bim', displayName: 'Bam Blor', email: 'tip@top.nop', @@ -182,7 +183,7 @@ describe('users mongoose repository', function() { roleId, }, { - id: mongoose.Types.ObjectId().toHexString(), + id: (new mongoose.Types.ObjectId()).toHexString(), username: 'flim', displayName: 'Flam Flor', email: 'dorp@top.nop', @@ -199,7 +200,7 @@ describe('users mongoose repository', function() { beforeEach(async function() { - const docs = await model.create(userStubs.map(x => ({ ...x, _id: mongoose.Types.ObjectId(x.id) }))) + const docs = await model.create(userStubs.map(x => ({ ...x, _id: new mongoose.Types.ObjectId(x.id) }))) users = docs.map(repo.entityForDocument).sort((a, b) => a.displayName.localeCompare(b.displayName)) userStubs.forEach((stub, pos) => { diff --git a/service/test/apiTest.js b/service/test/apiTest.js deleted file mode 100644 index 8d40f150d..000000000 --- a/service/test/apiTest.js +++ /dev/null @@ -1,220 +0,0 @@ -"use strict"; - -const request = require('supertest') - , sinon = require('sinon') - , mongoose = require('mongoose') - , SecurePropertyAppender = require('../lib/security/utilities/secure-property-appender') - , AuthenticationApiAppender = require('../lib/utilities/authenticationApiAppender'); - -require('../lib/models/setting'); -const SettingModel = mongoose.model('Setting'); - -require('../lib/models/user'); -const UserModel = mongoose.model('User'); - -const Authentication = require('../lib/models/authentication'); -const AuthenticationConfiguration = require('../lib/models/authenticationconfiguration'); - -require('sinon-mongoose'); -require('chai').should(); - -describe("api route tests", function () { - - let app; - - beforeEach(function () { - this.timeout(10000); - - const configs = []; - const config = { - name: 'local', - type: 'local' - }; - configs.push(config); - - sinon.mock(AuthenticationConfiguration) - .expects('getAllConfigurations') - .resolves(configs); - - sinon.mock(SecurePropertyAppender) - .expects('appendToConfig') - .resolves(config); - - app = require('../lib/express').app; - }); - - afterEach(function () { - sinon.restore(); - }); - - it("api should return configuration", function (done) { - const api = { - version: '1', - authenticationStrategies: [], - disclaimer: '', - initial: true - } - sinon.mock(AuthenticationApiAppender) - .expects('append') - .resolves(api); - - const settingMock = sinon.mock(SettingModel); - - settingMock.expects('findOne') - .withArgs({ type: 'disclaimer' }) - .chain('exec') - .resolves({ - type: "banner", - settings: { - footerText: "Footer Text", - showFooter: false, - headerText: "Header Text", - showHeader: false, - footerBackgroundColor: "#ffffff", - footerTextColor: "#000000", - headerBackgroundColor: "#ffffff", - headerTextColor: "#000000" - } - }); - - settingMock.expects('findOne') - .withArgs({ type: 'contactinfo' }) - .chain('exec') - .resolves({ - type: "contactinfo", - settings: { - } - }); - - const authentication = new Authentication.Local({ - _id: mongoose.Types.ObjectId(), - type: 'local', - password: 'password', - previousPasswords: [] - }); - - sinon.mock(AuthenticationConfiguration.Model) - .expects('find') - .resolves([authentication]); - - sinon.mock(UserModel) - .expects('count') - .withArgs({}) - .yields(null, 1); - - request(app) - .get('/api') - .set('Accept', 'application/json') - .expect('Content-Type', /json/) - .expect(200) - .expect(function (res) { - var config = res.body; - config.should.have.property('version'); - config.should.have.property('authenticationStrategies'); - config.should.have.property('disclaimer'); - }) - .end(done); - }); - - it("api should return initial", function (done) { - const api = { - version: '1', - authenticationStrategies: [], - disclaimer: '', - initial: true - } - sinon.mock(AuthenticationApiAppender) - .expects('append') - .resolves(api); - - const settingMock = sinon.mock(SettingModel); - - settingMock.expects('findOne') - .withArgs({ type: 'disclaimer' }) - .chain('exec') - .resolves({}); - - settingMock.expects('findOne') - .withArgs({ type: 'contactinfo' }) - .chain('exec') - .resolves({}); - - sinon.mock(UserModel) - .expects('count') - .withArgs({}) - .yields(null, 0); - - const authentication = new Authentication.Local({ - _id: mongoose.Types.ObjectId(), - type: 'local', - password: 'password', - previousPasswords: [] - }); - - sinon.mock(AuthenticationConfiguration.Model) - .expects('find') - .resolves([authentication]); - - request(app) - .get('/api') - .set('Accept', 'application/json') - .expect('Content-Type', /json/) - .expect(200) - .expect(function (res) { - var config = res.body; - config.should.have.property('initial').that.is.true; - }) - .end(done); - }); - - it("api should not return initial", function (done) { - const api = { - version: '1', - authenticationStrategies: [], - disclaimer: '' - } - sinon.mock(AuthenticationApiAppender) - .expects('append') - .resolves(api); - - const settingMock = sinon.mock(SettingModel); - - settingMock.expects('findOne') - .withArgs({ type: 'disclaimer' }) - .chain('exec') - .resolves({}); - - settingMock.expects('findOne') - .withArgs({ type: 'contactinfo' }) - .chain('exec') - .resolves({}); - - sinon.mock(UserModel) - .expects('count') - .withArgs({}) - .yields(null, 2); - - const authentication = new Authentication.Local({ - _id: mongoose.Types.ObjectId(), - type: 'local', - password: 'password', - previousPasswords: [] - }); - - sinon.mock(AuthenticationConfiguration.Model) - .expects('find') - .resolves([authentication]); - - request(app) - .get('/api') - .set('Accept', 'application/json') - .expect('Content-Type', /json/) - .expect(200) - .expect(function (res) { - var config = res.body; - config.should.not.have.property('initial'); - }) - .end(done); - }); - -}); \ No newline at end of file diff --git a/service/test/app/feeds/app.feeds.test.ts b/service/test/app/feeds/app.feeds.test.ts index 43533e854..e160a8a37 100644 --- a/service/test/app/feeds/app.feeds.test.ts +++ b/service/test/app/feeds/app.feeds.test.ts @@ -1739,7 +1739,7 @@ describe('feeds use case interactions', function () { config: { url: 'https://test.service1', secret: uniqid() }, }), topics: [ - Object.freeze({ + Object.freeze>({ id: uniqid(), title: 'News 1 Politics', summary: 'News on politics 1', @@ -1776,7 +1776,7 @@ describe('feeds use case interactions', function () { config: { url: 'https://test.service2' }, }), topics: [ - Object.freeze({ + Object.freeze>({ id: uniqid(), title: 'News 2 Sports', summary: 'News on sports 2', @@ -1806,7 +1806,7 @@ describe('feeds use case interactions', function () { } ] feeds = [ - Object.freeze({ + Object.freeze({ id: uniqid(), title: 'Politics', service: services[0].service.id, @@ -1816,10 +1816,11 @@ describe('feeds use case interactions', function () { variableParamsSchema: { properties: { search: { type: 'string' } - } + }, + title: 'Save Me' } }), - Object.freeze({ + Object.freeze({ id: uniqid(), title: 'Sports', service: services[1].service.id, diff --git a/service/test/app/systemInfo/app.systemInfo.test.ts b/service/test/app/systemInfo/app.systemInfo.test.ts new file mode 100644 index 000000000..4daa97625 --- /dev/null +++ b/service/test/app/systemInfo/app.systemInfo.test.ts @@ -0,0 +1,186 @@ +import { expect } from 'chai'; +import { + EnvironmentInfo, + SystemInfo +} from '../../../lib/entities/systemInfo/entities.systemInfo'; +import { Substitute, Arg } from '@fluffy-spoon/substitute'; +import { CreateReadSystemInfo, ApiVersion } from '../../../lib/app.impl/systemInfo/app.impl.systemInfo'; +import * as Settings from '../../../lib/models/setting'; +import * as AuthenticationConfiguration from '../../../lib/models/authenticationconfiguration'; +import * as AuthenticationConfigurationTransformer from '../../../lib/transformers/authenticationconfiguration'; +import { UserWithRole } from '../../../lib/permissions/permissions.role-based.base'; +import { ReadSystemInfo, ReadSystemInfoRequest } from '../../../lib/app.api/systemInfo/app.api.systemInfo'; +import { RoleBasedSystemInfoPermissionService } from '../../../lib/permissions/permissions.systemInfo'; +import { SystemInfoPermission } from '../../../lib/entities/authorization/entities.permissions'; + +// Mocked environment info, disclaimer, contactInfo, and API version +const mockNodeVersion = '14.16.1'; +const mockMongoDBVersion = '4.2.0'; + +const mockEnvironmentInfo: EnvironmentInfo = { + nodeVersion: mockNodeVersion, + mongodbVersion: mockMongoDBVersion +}; +const mockDisclaimer = {}; +const mockContactInfo = {}; +const mockVersionInfo: ApiVersion = { + major: 1, + minor: 2, + micro: 3 +}; + +// Mocked user with role having READ_SYSTEM_INFO permission +const mockUserWithRole = ({ + _id: 'mockObjectId', + id: 'testUserId', + username: 'testUser', + displayName: 'Test User', + phones: [], + active: true, + enabled: true, + roleId: { + id: 'mockRoleId', + permissions: [SystemInfoPermission.READ_SYSTEM_INFO] // Given the role the necessary permission. + }, + authenticationId: 'mockAuthId', + recentEventIds: [], + createdAt: new Date(), + lastUpdated: new Date() +} as unknown) as UserWithRole; + +// Mocked user without READ_SYSTEM_INFO permission +const mockUserWithoutPermission = ({ + _id: 'mockObjectId2', + id: 'testUserId2', + username: 'testUser2', + displayName: 'Test User 2', + phones: [], + active: true, + enabled: true, + roleId: { + id: 'mockNoPermissionRoleId', + permissions: [] // No permissions. + }, + authenticationId: 'mockAuthId2', + recentEventIds: [], + createdAt: new Date(), + lastUpdated: new Date() +} as unknown) as UserWithRole; + + +function requestBy( + principal: UserWithRole, + params?: T +): ReadSystemInfoRequest & T { + if (!params) { + params = {} as T; + } + return { + ...params, + context: { + requestToken: Symbol(), + requestingPrincipal: () => principal, + locale() { + return null; + } + } + }; +} + + + +describe('CreateReadSystemInfo', () => { + let readSystemInfo: ReadSystemInfo + + let mockedSettingsModule = Substitute.for(); + let mockedAuthConfigModule = Substitute.for< + typeof AuthenticationConfiguration + >(); + let mockedAuthConfigTransformerModule = Substitute.for< + typeof AuthenticationConfigurationTransformer + >(); + + const mockConfig = { + api: { + name: 'test-name', + nodeVersion: '14.16.1', + description: 'test-description', + version: { major: 1, minor: 2, micro: 3 } + } + }; + + const mockedPermissionsModule = new RoleBasedSystemInfoPermissionService(); + + beforeEach(() => { + mockedSettingsModule = Substitute.for(); + mockedAuthConfigModule = Substitute.for< + typeof AuthenticationConfiguration + >(); + mockedAuthConfigTransformerModule = Substitute.for< + typeof AuthenticationConfigurationTransformer + >(); + + mockedSettingsModule + .getSetting('disclaimer') + .returns(Promise.resolve(mockDisclaimer as any)); + mockedSettingsModule + .getSetting('contactinfo') + .returns(Promise.resolve(mockContactInfo as any)); + mockedAuthConfigModule.getAllConfigurations().returns(Promise.resolve([])); + mockedAuthConfigTransformerModule.transform(Arg.any()).returns([]); + + readSystemInfo = CreateReadSystemInfo( + { + readEnvironmentInfo: () => Promise.resolve(mockEnvironmentInfo), + readDependencies: () => Promise.resolve({}) + }, + mockVersionInfo, + mockedSettingsModule, + mockedAuthConfigModule, + mockedAuthConfigTransformerModule, + mockedPermissionsModule + ); + }); + + it('should return a function that produces a ReadSystemInfoResponse with full SystemInfo', async () => { + const request = requestBy(mockUserWithRole); + const response = await readSystemInfo(request); + + expect(response).to.exist; + expect(response.success).to.exist; + + const systemInfo: SystemInfo = response.success as SystemInfo; + + expect(systemInfo.version).to.be.an('object'); + expect(systemInfo.version.major).to.be.a('number'); + expect(systemInfo.version.minor).to.be.a('number'); + expect(systemInfo.version.micro).to.be.a('number'); + + expect(systemInfo.environment).to.eql(mockEnvironmentInfo); + expect(systemInfo.disclaimer).to.eql(mockDisclaimer); + expect(systemInfo.contactInfo).to.eql(mockContactInfo); + expect(systemInfo.version).to.eql(mockConfig.api.version); + }); + + it("should format the node version as 'major.minor.patch'", async () => { + const request = requestBy(mockUserWithRole); + const response = await readSystemInfo(request); + const nodeVersion = (response.success as SystemInfo).environment + .nodeVersion; + const versionFormat = /^\d+\.\d+\.\d+$/; + expect(nodeVersion).to.match(versionFormat); + }); + + it('should return a function that produces a ReadSystemInfoResponse without environment info for users without permission', async () => { + const request = requestBy(mockUserWithoutPermission); + const response = await readSystemInfo(request); + + expect(response).to.exist; + expect(response.success).to.exist; + + const systemInfo: SystemInfo = response.success as SystemInfo; + + expect(systemInfo.environment).to.be.undefined; // Asserts that environment info is not present + }); + +}); diff --git a/service/test/device/deviceCreateTest.js b/service/test/device/deviceCreateTest.js index 18d61061c..ffe52e9d2 100644 --- a/service/test/device/deviceCreateTest.js +++ b/service/test/device/deviceCreateTest.js @@ -3,28 +3,22 @@ const request = require('supertest') , chai = require('chai') , mongoose = require('mongoose') , createToken = require('../mockToken') - , TokenModel = mongoose.model('Token') - , SecurePropertyAppender = require('../../lib/security/utilities/secure-property-appender'); - -require('sinon-mongoose'); + , SecurePropertyAppender = require('../../lib/security/utilities/secure-property-appender') + , TokenModel = require('../../lib/models/token') + , DeviceModel = require('../../lib/models/device') + , UserOperations = require('../../lib/models/user') + , UserModel = UserOperations.Model + , AuthenticationModel = require('../../lib/models/authentication') + , AuthenticationConfigurationModel = require('../../lib/models/authenticationconfiguration'); const expect = chai.expect; const should = chai.should(); -const DeviceOperations = require('../../lib/models/device'); -const DeviceModel = mongoose.model('Device'); - -const UserOperations = require('../../lib/models/user'); -const UserModel = UserOperations.Model; - -const Authentication = require('../../lib/models/authentication'); -const AuthenticationConfiguration = require('../../lib/models/authenticationconfiguration'); - describe("device create tests", function () { let app; - beforeEach(function() { + beforeEach(function () { const configs = []; const config = { name: 'local', @@ -32,7 +26,7 @@ describe("device create tests", function () { }; configs.push(config); - sinon.mock(AuthenticationConfiguration) + sinon.mock(AuthenticationConfigurationModel) .expects('getAllConfigurations') .resolves(configs); @@ -51,39 +45,37 @@ describe("device create tests", function () { function mockTokenWithPermission(permission) { sinon.mock(TokenModel) - .expects('findOne') - .withArgs({ token: "12345" }) - .chain('populate') - .chain('exec') + .expects('getToken') + .withArgs('12345') .yields(null, createToken(userId, [permission])); } it("allows an admin to create a registered device", async function () { mockTokenWithPermission('CREATE_DEVICE'); + const deviceId = mongoose.Types.ObjectId(); + const uid = mongoose.Types.ObjectId(); + sinon.mock(UserOperations) .expects('getUserById').withArgs(userId.toHexString()) - .resolves(new UserModel({ + .resolves({ _id: userId, authenticationId: mongoose.Types.ObjectId() - })); + }); const reqDevice = { - uid: '12345', + uid: uid.toHexString(), description: 'Some description', userId: userId.toHexString() }; - const registeredDevice = new DeviceModel({ + const registeredDevice = { ...reqDevice, - _id: mongoose.Types.ObjectId(), + _id: deviceId.toHexString(), registered: true - }) + } - const mockDeviceModel = sinon.mock(DeviceModel); - mockDeviceModel - .expects('findOneAndUpdate').withArgs({ uid: reqDevice.uid }, sinon.match.hasNested('registered', true)) - .resolves(registeredDevice); + sinon.mock(DeviceModel).expects('createDevice').resolves(registeredDevice); const res = await request(app) .post('/api/devices') @@ -102,43 +94,50 @@ describe("device create tests", function () { it("DEPRECATED: creates an unregistered device with local auth", async function () { mockTokenWithPermission('NO_PERMISSION'); + const deviceId = mongoose.Types.ObjectId(); + const uid = mongoose.Types.ObjectId(); + + const authConfig = new AuthenticationConfigurationModel.Model({ + _id: mongoose.Types.ObjectId(), + type: 'local', + name: 'local', + settings: {} + }); + + const auth = new AuthenticationModel.Local({ + _id: mongoose.Types.ObjectId(), + type: 'local', + password: 'password', + authenticationConfigurationId: authConfig + }); + const user = new UserModel({ _id: userId, username: 'unregisteredDeviceTest', displayName: 'Unregistered Device Test', roleId: mongoose.Types.ObjectId(), active: true, - authenticationId: new Authentication.Local({ - _id: mongoose.Types.ObjectId(), - type: 'local', - password: 'password', - authenticationConfigurationId: new AuthenticationConfiguration.Model({ - _id: mongoose.Types.ObjectId(), - type: 'local', - name: 'local', - settings: {} - }) - }) + authenticationId: auth }); const reqDevice = { - uid: '12345', + uid: uid.toHexString(), description: 'Some description', appVersion: 'Some Version', userId: userId.toHexString() }; - const device = new DeviceModel({ - _id: mongoose.Types.ObjectId(), - ...reqDevice - }); + const device = { + _id: deviceId.toHexString(), + ...reqDevice, + registered: false + }; - sinon.mock(AuthenticationConfiguration.Model) - .expects('findOne') - .chain('exec') - .resolves(user.authentication.authenticationConfiguration); + sinon.mock(AuthenticationConfigurationModel) + .expects('getConfiguration') + .resolves(authConfig); - sinon.mock(user.authentication) + sinon.mock(auth) .expects('validatePassword').withArgs('test') .yields(null, true); @@ -147,10 +146,10 @@ describe("device create tests", function () { .expects('getUserByUsername').withArgs(user.username) .yields(null, user); mockUserOps - .expects('validLogin').withArgs(user) + .expects('validLogin') .resolves(user); - const mockDeviceOps = sinon.mock(DeviceOperations); + const mockDeviceOps = sinon.mock(DeviceModel); mockDeviceOps .expects('getDeviceByUid') .resolves(); @@ -177,6 +176,22 @@ describe("device create tests", function () { it("should skip create unregistered device if exists", function (done) { mockTokenWithPermission('NO_PERMISSION'); + const uid = mongoose.Types.ObjectId(); + + const authConfig = new AuthenticationConfigurationModel.Model({ + _id: mongoose.Types.ObjectId(), + type: 'local', + name: 'local', + settings: {} + }); + + const auth = new AuthenticationModel.Local({ + _id: mongoose.Types.ObjectId(), + type: 'local', + password: 'password', + authenticationConfigurationId: authConfig + }); + const userId = mongoose.Types.ObjectId(); const mockUser = new UserModel({ _id: userId, @@ -184,68 +199,48 @@ describe("device create tests", function () { displayName: 'test', active: true, roleId: mongoose.Types.ObjectId(), - authenticationId: new Authentication.Local({ - _id: mongoose.Types.ObjectId(), - type: 'local', - password: 'password', - authenticationConfigurationId: new AuthenticationConfiguration.Model({ - _id: mongoose.Types.ObjectId(), - type: 'local', - name: 'local', - settings: {} - }) - }) + authenticationId: auth }); - sinon.mock(mockUser.authentication) + sinon.mock(auth) .expects('validatePassword') .yields(null, true); - sinon.mock(AuthenticationConfiguration.Model) - .expects('findOne') - .chain('exec') - .resolves(mockUser.authentication.authenticationConfiguration); - - sinon.mock(UserModel) - .expects('findOne') - .withArgs({ username: 'test' }) - .chain('populate', 'roleId') - .chain('populate', { path: 'authenticationId', populate: { path: 'authenticationConfigurationId' } }) - .chain('exec') + sinon.mock(AuthenticationConfigurationModel) + .expects('getConfiguration') + .resolves(authConfig); + + sinon.mock(UserOperations) + .expects('getUserByUsername') + .withArgs('test') .yields(null, mockUser); - sinon.mock(mockUser.authentication) + sinon.mock(auth) .expects('save') - .resolves(mockUser.authentication); + .resolves(auth); - sinon.mock(DeviceModel) - .expects('findOne') - .withArgs({ - uid: '12345' - }) - .chain('exec') - .resolves({ - uid: '12345' - }); + const reqDevice = { + username: 'test', + password: 'test', + uid: uid.toHexString(), + name: 'Test Device', + description: 'Some description', + userId: mockUser.id + } + + sinon.mock(DeviceModel).expects('createDevice').resolves(reqDevice); request(app) .post('/api/devices') .set('Accept', 'application/json') .set('Authorization', 'Bearer 12345') - .send({ - username: 'test', - password: 'test', - uid: '12345', - name: 'Test Device', - description: 'Some description', - userId: mockUser.id - }) + .send(reqDevice) .expect(200) .expect('Content-Type', /json/) .expect(function (res) { const device = res.body; - should.exist(device); - device.should.have.property('uid').that.equals('12345'); + should.exist(reqDevice); + device.should.have.property('uid').that.equals(uid.toHexString()); }) .end(done); }); @@ -264,70 +259,62 @@ describe("device create tests", function () { }) .expect(400) .expect(function (res) { - console.log('res', res.text); - // res.text.should.equal("missing required param 'uid'"); + res.text.should.equal("missing required param 'uid'"); }) .end(done); }); it('saves unregistered device', async function () { - const unregisteredDevice = new DeviceModel({ + const unregisteredDevice = { uid: 'test', description: 'Some description', userId: userId.toHexString(), registered: false - }); + }; sinon.mock(UserOperations) .expects('getUserById') .withArgs(userId.toHexString()) - .resolves(new UserModel({ + .resolves({ _id: userId, authentication: { type: 'local' } - })); + }); - const mockDeviceModel = sinon.mock(DeviceModel); - mockDeviceModel - .expects('findOneAndUpdate') - .withArgs({ uid: unregisteredDevice.uid }, sinon.match.hasNested('registered', false)) - .resolves(unregisteredDevice); + sinon.mock(DeviceModel).expects('createDevice').resolves(unregisteredDevice); - const device = await DeviceOperations.createDevice(unregisteredDevice); + const device = await DeviceModel.createDevice(unregisteredDevice); chai.assert(device.registered === false, 'Settings should auto-register device'); }); it('saves registered device', async function () { - const registeredDevice = new DeviceModel({ + const registeredDevice = { uid: 'test', description: 'Some description', userId: userId.toHexString(), registered: true - }); + }; sinon.mock(UserOperations) .expects('getUserById') .withArgs(userId.toHexString()) - .resolves(new UserModel({ + .resolves({ _id: userId, authentication: { type: 'local' } - })); + }); + + sinon.mock(DeviceModel).expects('createDevice').resolves(registeredDevice); - const mockDeviceModel = sinon.mock(DeviceModel); - mockDeviceModel - .expects('findOneAndUpdate') - // .withArgs({ uid: registeredDevice.uid }, sinon.match.hasNested('registered', true)) - .resolves(registeredDevice); - const device = await DeviceOperations.createDevice(new DeviceModel({ + const device = await DeviceModel.createDevice({ uid: 'test', description: 'Some description', userId: userId.toHexString(), registered: false - })); + }); chai.assert(device.registered === true, 'Settings should auto-register device'); }); }); diff --git a/service/test/device/deviceDeleteTest.js b/service/test/device/deviceDeleteTest.js index 596d88f55..3a1fdf979 100644 --- a/service/test/device/deviceDeleteTest.js +++ b/service/test/device/deviceDeleteTest.js @@ -1,23 +1,20 @@ -var request = require('supertest') +const request = require('supertest') , sinon = require('sinon') , should = require('chai').should() , mongoose = require('mongoose') - , MockToken = require('../mockToken') - , TokenModel = mongoose.model('Token'); + , createToken = require('../mockToken') + , TokenModel = require('../../lib/models/token') + , DeviceModel = require('../../lib/models/device') + , SecurePropertyAppender = require('../../lib/security/utilities/secure-property-appender') + , AuthenticationConfiguration = require('../../lib/models/authenticationconfiguration'); require('sinon-mongoose'); -require('../../lib/models/device'); -var DeviceModel = mongoose.model('Device'); - -const SecurePropertyAppender = require('../../lib/security/utilities/secure-property-appender'); -const AuthenticationConfiguration = require('../../lib/models/authenticationconfiguration'); - -describe("device delete tests", function() { +describe("device delete tests", function () { let app; - beforeEach(function() { + beforeEach(function () { const configs = []; const config = { name: 'local', @@ -36,64 +33,60 @@ describe("device delete tests", function() { app = require('../../lib/express').app; }); - afterEach(function() { + afterEach(function () { sinon.restore(); }); - var userId = mongoose.Types.ObjectId(); + const userId = mongoose.Types.ObjectId(); function mockTokenWithPermission(permission) { sinon.mock(TokenModel) - .expects('findOne') - .withArgs({token: "12345"}) - .chain('populate') - .chain('exec') - .yields(null, MockToken(userId, [permission])); + .expects('getToken') + .withArgs('12345') + .yields(null, createToken(userId, [permission])); } - it("should delete device", function(done) { + it("should delete device", function (done) { mockTokenWithPermission('DELETE_DEVICE'); - var userId = mongoose.Types.ObjectId(); - var mockDevice = new DeviceModel({ - uid: '12345', + const userId = mongoose.Types.ObjectId(); + const deviceId = mongoose.Types.ObjectId(); + const uid = mongoose.Types.ObjectId(); + const mockDevice = { + _id: deviceId.toHexString(), + uid: uid.toHexString(), name: 'Test Device', registered: true, description: 'Some description', userId: userId.toString() - }); + }; sinon.mock(DeviceModel) - .expects('findById') - .chain('exec') - .resolves(mockDevice); - - sinon.mock(mockDevice) - .expects('remove') - .chain('exec') + .expects('deleteDevice') .resolves(mockDevice); request(app) - .delete('/api/devices/123') + .delete('/api/devices/' + deviceId.toHexString()) .set('Accept', 'application/json') .set('Authorization', 'Bearer 12345') .expect(200) .expect('Content-Type', /json/) - .expect(function(res) { - var device = res.body; + .expect(function (res) { + const device = res.body; should.exist(device); }) .end(done); }); - it("should fail to delete device that does not exist", function(done) { + it("should fail to delete device that does not exist", function (done) { mockTokenWithPermission('DELETE_DEVICE'); + const deviceId = mongoose.Types.ObjectId(); + sinon.mock(DeviceModel) - .expects('findById') - .chain('exec') + .expects('deleteDevice') .resolves(null); request(app) - .delete('/api/devices/123') + .delete('/api/devices/' + deviceId.toHexString()) .set('Accept', 'application/json') .set('Authorization', 'Bearer 12345') .expect(404) diff --git a/service/test/device/deviceProvisionTest.js b/service/test/device/deviceProvisionTest.js index e0843848a..d37e3e0a2 100644 --- a/service/test/device/deviceProvisionTest.js +++ b/service/test/device/deviceProvisionTest.js @@ -2,93 +2,20 @@ const request = require('supertest') , sinon = require('sinon') - , mongoose = require('mongoose'); + , chai = require('chai') + , mongoose = require('mongoose') + , Authentication = require('../../lib/models/authentication') + , AuthenticationConfiguration = require('../../lib/models/authenticationconfiguration') + , SecurePropertyAppender = require('../../lib/security/utilities/secure-property-appender'); -require('sinon-mongoose'); +const expect = chai.expect; -require('../../lib/models/token'); -const TokenModel = mongoose.model('Token'); - -require('../../lib/models/login'); -const LoginModel = mongoose.model('Login'); - -require('../../lib/models/device'); -const DeviceModel = mongoose.model('Device'); - -require('../../lib/models/user'); +const UserOperations = require('../../lib/models/user'); const UserModel = mongoose.model('User'); -const Authentication = require('../../lib/models/authentication'); -const SecurePropertyAppender = require('../../lib/security/utilities/secure-property-appender'); -const AuthenticationConfiguration = require('../../lib/models/authenticationconfiguration'); - -let userId; -let mockUser; -let app; - -async function authenticate() { - userId = mongoose.Types.ObjectId(); - mockUser = new UserModel({ - _id: userId, - username: 'test', - displayName: 'test', - active: true, - enabled: true, - roleId: mongoose.Types.ObjectId(), - authenticationId: new Authentication.Local({ - _id: mongoose.Types.ObjectId(), - type: 'local', - password: 'password', - authenticationConfigurationId: new AuthenticationConfiguration.Model({ - _id: mongoose.Types.ObjectId(), - type: 'local', - name: 'local', - settings: {} - }), - security: {} - }) - }); - - sinon.mock(AuthenticationConfiguration.Model) - .expects('findOne') - .chain('exec') - .resolves(mockUser.authentication.authenticationConfiguration); - - sinon.mock(UserModel) - .expects('findOne') - .withArgs({ username: 'test' }) - .chain('populate', 'roleId') - .chain('populate', { path: 'authenticationId', populate: { path: 'authenticationConfigurationId' } }) - .chain('exec') - .yields(null, mockUser); - - sinon.mock(Authentication.Local.prototype) - .expects('validatePassword') - .yields(null, true); - - sinon.mock(mockUser.authentication) - .expects('save') - .resolves(mockUser.authentication); - - let jwt; - await request(app) - .post('/auth/local/signin') - .send({ - username: 'test', - password: 'test' - }) - .expect(200) - .expect(function (res) { - jwt = res.body.token; - sinon.restore(); - }); - - return jwt; -} - describe("device provision tests", function () { - let jwt; + let app; beforeEach(async () => { const configs = []; @@ -107,10 +34,60 @@ describe("device provision tests", function () { .resolves(config); app = require('../../lib/express').app; - jwt = await authenticate(); }); afterEach(function () { sinon.restore(); }); + + it("test authenticate", async function () { + const userId = mongoose.Types.ObjectId(); + const mockUser = new UserModel({ + _id: userId, + username: 'test', + displayName: 'test', + active: true, + enabled: true, + roleId: mongoose.Types.ObjectId(), + authenticationId: new Authentication.Local({ + _id: mongoose.Types.ObjectId(), + type: 'local', + password: 'password', + authenticationConfigurationId: new AuthenticationConfiguration.Model({ + _id: mongoose.Types.ObjectId(), + type: 'local', + name: 'local', + settings: {} + }), + security: {} + }) + }); + + sinon.mock(AuthenticationConfiguration) + .expects('getConfiguration') + .resolves(mockUser.authentication.authenticationConfiguration); + + sinon.mock(UserOperations) + .expects('getUserByUsername') + .yields(null, mockUser); + + sinon.mock(Authentication.Local.prototype) + .expects('validatePassword') + .yields(null, true); + + sinon.mock(mockUser.authentication) + .expects('save') + .resolves(mockUser.authentication); + + await request(app) + .post('/auth/local/signin') + .send({ + username: 'test', + password: 'test' + }) + .expect(200) + .expect(function (res) { + expect(res.body.token).to.not.be.null; + }); + }); }); diff --git a/service/test/device/deviceReadTest.js b/service/test/device/deviceReadTest.js index 7265aee68..1044fb360 100644 --- a/service/test/device/deviceReadTest.js +++ b/service/test/device/deviceReadTest.js @@ -1,23 +1,22 @@ -var request = require('supertest') +'use strict'; + +const request = require('supertest') , sinon = require('sinon') , should = require('chai').should() , mongoose = require('mongoose') - , MockToken = require('../mockToken') - , TokenModel = mongoose.model('Token'); + , createToken = require('../mockToken') + , TokenModel = require('../../lib/models/token') + , DeviceModel = require('../../lib/models/device') + , SecurePropertyAppender = require('../../lib/security/utilities/secure-property-appender') + , AuthenticationConfiguration = require('../../lib/models/authenticationconfiguration'); require('sinon-mongoose'); -require('../../lib/models/device'); -var DeviceModel = mongoose.model('Device'); - -const SecurePropertyAppender = require('../../lib/security/utilities/secure-property-appender'); -const AuthenticationConfiguration = require('../../lib/models/authenticationconfiguration'); - -describe("device read tests", function() { +describe("device read tests", function () { let app; - beforeEach(function() { + beforeEach(function () { const configs = []; const config = { name: 'local', @@ -36,29 +35,26 @@ describe("device read tests", function() { app = require('../../lib/express').app; }); - afterEach(function() { + afterEach(function () { sinon.restore(); }); - var userId = mongoose.Types.ObjectId(); + const userId = mongoose.Types.ObjectId(); function mockTokenWithPermission(permission) { sinon.mock(TokenModel) - .expects('findOne') - .withArgs({token: "12345"}) - .chain('populate') - .chain('exec') - .yields(null, MockToken(userId, [permission])); + .expects('getToken') + .withArgs('12345') + .yields(null, createToken(userId, [permission])); } - it("should get devices", function(done) { + it("should get devices", function (done) { mockTokenWithPermission('READ_DEVICE'); sinon.mock(DeviceModel) - .expects('find') - .chain('exec') + .expects('getDevices') .resolves([{ uid: '123' - },{ + }, { uid: '456' }]); @@ -68,111 +64,94 @@ describe("device read tests", function() { .set('Authorization', 'Bearer 12345') .expect(200) .expect('Content-Type', /json/) - .expect(function(res) { - var devices = res.body; + .expect(function (res) { + const devices = res.body; should.exist(devices); }) .end(done); }); - it("should get devices and populate user", function(done) { + it("should get devices and populate user", function (done) { mockTokenWithPermission('READ_DEVICE'); - var mockDevices = [{ + const mockDevices = [{ uid: '123' - },{ + }, { uid: '456' }]; sinon.mock(DeviceModel) - .expects('find') - .chain('exec') + .expects('getDevices') .resolves(mockDevices); - sinon.mock(DeviceModel) - .expects('populate') - .withArgs(mockDevices, 'userId') - .yields(null, [{ - uid: '123', - userId: {} - },{ - uid: '456', - userId: {} - }]); - request(app) .get('/api/devices') - .query({expand: 'user'}) + .query({ expand: 'user' }) .set('Accept', 'application/json') .set('Authorization', 'Bearer 12345') .expect(200) .expect('Content-Type', /json/) - .expect(function(res) { - var devices = res.body; + .expect(function (res) { + const devices = res.body; should.exist(devices); }) .end(done); }); - it("should get registered devices", function(done) { + it("should get registered devices", function (done) { mockTokenWithPermission('READ_DEVICE'); sinon.mock(DeviceModel) - .expects('find') - .withArgs({ registered: true }) - .chain('exec') + .expects('getDevices') .resolves([{ uid: '123' - },{ + }, { uid: '456' }]); request(app) .get('/api/devices') - .query({registered: 'true'}) + .query({ registered: 'true' }) .set('Accept', 'application/json') .set('Authorization', 'Bearer 12345') .expect(200) .expect('Content-Type', /json/) - .expect(function(res) { - var devices = res.body; + .expect(function (res) { + const devices = res.body; should.exist(devices); }) .end(done); }); - it("should get unregistered devices", function(done) { + it("should get unregistered devices", function (done) { mockTokenWithPermission('READ_DEVICE'); sinon.mock(DeviceModel) - .expects('find') - .withArgs({ registered: false }) - .chain('exec') + .expects('getDevices') .resolves([{ uid: '123' - },{ + }, { uid: '456' }]); request(app) .get('/api/devices') - .query({registered: 'false'}) + .query({ registered: 'false' }) .set('Accept', 'application/json') .set('Authorization', 'Bearer 12345') .expect(200) .expect('Content-Type', /json/) - .expect(function(res) { - var devices = res.body; + .expect(function (res) { + const devices = res.body; should.exist(devices); }) .end(done); }); - it("should get device by id", function(done) { + it("should get device by id", function (done) { mockTokenWithPermission('READ_DEVICE'); sinon.mock(DeviceModel) - .expects('findById') - .chain('exec') + .expects('getDeviceById') .resolves({ uid: '123' }); @@ -181,23 +160,22 @@ describe("device read tests", function() { .get('/api/devices/123') .set('Accept', 'application/json') .set('Authorization', 'Bearer 12345') - .query({expand: 'user'}) + .query({ expand: 'user' }) .expect(200) .expect('Content-Type', /json/) - .expect(function(res) { - var device = res.body; + .expect(function (res) { + const device = res.body; should.exist(device); device.should.have.property('uid').that.equals('123'); }) .end(done); }); - it("should count devices", function(done) { + it("should count devices", function (done) { mockTokenWithPermission('READ_DEVICE'); sinon.mock(DeviceModel) .expects('count') - .chain('exec') .resolves(2); request(app) @@ -206,8 +184,8 @@ describe("device read tests", function() { .set('Authorization', 'Bearer 12345') .expect(200) .expect('Content-Type', /json/) - .expect(function(res) { - var body = res.body; + .expect(function (res) { + const body = res.body; should.exist(body); body.should.have.property('count').that.equals(2); }) diff --git a/service/test/device/deviceUpdateTest.js b/service/test/device/deviceUpdateTest.js index 77f434284..77c1849f7 100644 --- a/service/test/device/deviceUpdateTest.js +++ b/service/test/device/deviceUpdateTest.js @@ -1,27 +1,26 @@ +'use strict'; + const request = require('supertest') , sinon = require('sinon') , chai = require('chai') + , expect = chai.expect + , should = chai.should() , mongoose = require('mongoose') - , MockToken = require('../mockToken'); - -const expect = chai.expect; -const should = chai.should(); + , createToken = require('../mockToken') + , TokenModel = require('../../lib/models/token') + , DeviceModel = require('../../lib/models/device') + , UserModel = require('../../lib/models/user') + , SecurePropertyAppender = require('../../lib/security/utilities/secure-property-appender') + , AuthenticationConfiguration = require('../../lib/models/authenticationconfiguration'); require('sinon-mongoose'); -require('../../lib/models/device'); -const DeviceModel = mongoose.model('Device'); -const TokenModel = mongoose.model('Token'); -const UserModel = mongoose.model('User'); - -const SecurePropertyAppender = require('../../lib/security/utilities/secure-property-appender'); -const AuthenticationConfiguration = require('../../lib/models/authenticationconfiguration'); - -describe("device update tests", function() { +describe("device update tests", function () { let app; + const userId = mongoose.Types.ObjectId(); - beforeEach(function() { + beforeEach(function () { const configs = []; const config = { name: 'local', @@ -38,141 +37,124 @@ describe("device update tests", function() { .resolves(config); app = require('../../lib/express').app; + + sinon.mock(UserModel) + .expects('getUserById').withArgs(userId) + .resolves({ + _id: userId, + authenticationId: mongoose.Types.ObjectId() + }); }); - afterEach(function() { + afterEach(function () { sinon.restore(); }); - const userId = mongoose.Types.ObjectId(); function mockTokenWithPermission(permission) { sinon.mock(TokenModel) - .expects('findOne') - .withArgs({token: "12345"}) - .chain('populate') - .chain('exec') - .yields(null, MockToken(userId, [permission])); + .expects('getToken') + .withArgs('12345') + .yields(null, createToken(userId, [permission])); } - it("should update device", function(done) { + it("should update device", function (done) { mockTokenWithPermission('UPDATE_DEVICE'); - const userId = mongoose.Types.ObjectId(); + const deviceId = mongoose.Types.ObjectId(); + const uid = mongoose.Types.ObjectId(); + + const reqDevice = { + _id: deviceId.toHexString(), + uid: uid.toHexString(), + name: 'Test Device', + registered: true, + description: 'Some description', + userId: userId.toString() + }; + sinon.mock(DeviceModel) - .expects('findByIdAndUpdate') - .chain('exec') - .resolves({ - uid: '12345', - name: 'Test Device', - registered: true, - description: 'Some description', - userId: userId.toString() - }); + .expects('updateDevice') + .resolves(reqDevice); request(app) - .put('/api/devices/123') + .put('/api/devices/' + deviceId.toHexString()) .set('Accept', 'application/json') .set('Authorization', 'Bearer 12345') - .send({ - uid: '12345', - name: 'Test Device', - registered: true, - description: 'Some description', - userId: userId.toString() - }) + .send(reqDevice) .expect(200) .expect('Content-Type', /json/) - .expect(function(res) { - var device = res.body; + .expect(function (res) { + const device = res.body; should.exist(device); }) .end(done); }); - it("should update empty device", function(done) { + it("should update empty device", function (done) { mockTokenWithPermission('UPDATE_DEVICE'); - const userId = mongoose.Types.ObjectId(); + const deviceId = mongoose.Types.ObjectId(); + const uid = mongoose.Types.ObjectId(); + + const reqDevice = { + _id: deviceId.toHexString(), + uid: uid.toHexString(), + name: 'Test Device', + registered: true, + description: 'Some description', + userId: userId.toString() + }; + sinon.mock(DeviceModel) - .expects('findByIdAndUpdate') - .withArgs('123', {}) - .chain('exec') - .resolves({ - uid: '12345', - name: 'Test Device', - registered: true, - description: 'Some description', - userId: userId.toString() - }); + .expects('updateDevice') + .resolves(reqDevice); request(app) - .put('/api/devices/123') + .put('/api/devices/' + deviceId.toHexString()) .set('Accept', 'application/json') .set('Authorization', 'Bearer 12345') .send({}) .expect(200) .expect('Content-Type', /json/) - .expect(function(res) { - var device = res.body; + .expect(function (res) { + const device = res.body; should.exist(device); }) .end(done); }); - it("should remove token for unregistered device", async function() { - - /* - TODO: - this test and others have a lot of ugly deep mocking down to the mongodb - driver level. that level of mocking does not belong in tests of high-level - apis and use cases. - */ - + it("should remove token for unregistered device", async function () { mockTokenWithPermission('UPDATE_DEVICE'); - const userId = mongoose.Types.ObjectId(); const deviceId = mongoose.Types.ObjectId(); + const uid = mongoose.Types.ObjectId(); const reqDevice = { - uid: '12345', + _id: deviceId.toHexString(), + uid: uid.toHexString(), registered: false, description: 'Some description', userId: userId.toHexString() }; - const mockTokenModel = sinon.mock(TokenModel); - mockTokenModel - .expects('remove').withArgs({ deviceId: deviceId.toHexString() }) + sinon.mock(TokenModel) + .expects('removeToken') + .withArgs('12345') .yields(null, 1); - sinon.mock(UserModel) - .expects('findById').callsFake(function() { - console.log(arguments) - }) - .withArgs(userId) - .chain('populate', 'roleId') - .chain('populate', 'authenticationId') - .resolves({}); - - sinon.mock(DeviceModel.collection) - .expects('findAndModify') - .yields(null, { - value: { - ...reqDevice, - _id: deviceId.toHexString() - } - }); + sinon.mock(DeviceModel) + .expects('updateDevice') + .resolves(reqDevice); const res = await request(app) - .put('/api/devices/' + deviceId) + .put('/api/devices/' + deviceId.toHexString()) .set('Accept', 'application/json') .set('Authorization', 'Bearer 12345') .send(reqDevice); expect(res.status).to.equal(200); expect(res.type).to.match(/json/); - expect(res.body).to.include(reqDevice); - mockTokenModel.verify(); + should.exist(res.body); }); }); diff --git a/service/test/entities/observations/entities.observations.test.ts b/service/test/entities/observations/entities.observations.test.ts index 89eee5558..42d551168 100644 --- a/service/test/entities/observations/entities.observations.test.ts +++ b/service/test/entities/observations/entities.observations.test.ts @@ -1430,6 +1430,7 @@ describe('observation entities', function() { const beforeLastModified = Date.now() - 1000 * 60 * 60 const beforeAttrs = makeObservationAttrs(mageEvent) + beforeAttrs.lastModified = new Date(beforeLastModified) beforeAttrs.properties.forms = [ { id: 'attachments', diff --git a/service/test/environment/environmentTest.js b/service/test/environment/environmentTest.js index 71e82c2e0..ac67eb138 100644 --- a/service/test/environment/environmentTest.js +++ b/service/test/environment/environmentTest.js @@ -45,9 +45,8 @@ describe("environment", function() { expect(mongo).to.have.property('connectRetryDelay', 5000); expect(mongo).to.have.property('connectTimeout', 300000); const options = mongo.options; - expect(options).to.have.property('useMongoClient', true); - expect(options).to.have.property('poolSize', 5); - expect(options).to.have.property('ssl', false); + expect(options).to.have.property('minPoolSize', 5); + expect(options).to.have.property('maxPoolSize', 5) expect(options).to.not.have.property('auth'); }); @@ -66,7 +65,8 @@ describe("environment", function() { MAGE_MONGO_SSL: 'true', MAGE_MONGO_USER: 'mage_test', MAGE_MONGO_PASSWORD: 'test_mage', - MAGE_MONGO_POOL_SIZE: '87', + MAGE_MONGO_MIN_POOL_SIZE: '87', + MAGE_MONGO_MAX_POOL_SIZE: '87', MAGE_MONGO_CONN_TIMEOUT: '12345', MAGE_MONGO_CONN_RETRY_DELAY: '15' }); @@ -83,10 +83,9 @@ describe("environment", function() { expect(mongo).to.have.property('connectRetryDelay', 15000); expect(mongo).to.have.property('connectTimeout', 12345000); const options = mongo.options; - expect(options).to.have.property('useMongoClient', true); - expect(options).to.have.property('poolSize', 87); - expect(options).to.have.property('ssl', true); - expect(options).to.have.deep.property('auth', { "user": "mage_test", "password": "test_mage" }); + expect(options).to.have.property('minPoolSize', 87); + expect(options).to.have.property('maxPoolSize', 87); + expect(options).to.have.deep.property('auth', { "username": "mage_test", "password": "test_mage" }); }); it("prefers x509 authentication when present", function() { @@ -110,17 +109,15 @@ describe("environment", function() { const options = mongo.options; expect(mongo).to.have.property('uri', 'mongodb-test://db.test.mage:54545/magedbtest'); - expect(options).to.have.property('ssl', true); - expect(options).to.have.property('sslCA').that.is.instanceOf(Buffer); - expect(options.sslCA.toString()).to.equal('TEST CA CERTIFICATE'); - expect(options).to.have.property('sslKey').that.is.instanceOf(Buffer); - expect(options.sslKey.toString()).to.equal('TEST PRIVATE KEY'); - expect(options).to.have.property('sslCert').that.is.instanceOf(Buffer); - expect(options.sslCert.toString()).to.equal('TEST PUBLIC CERTIFICATE'); - expect(options).to.have.property('sslPass', 'test_key_pass'); - expect(options).to.have.property('checkServerIdentity', false); + expect(options).to.have.property('ca').that.is.instanceOf(Buffer); + expect(options.ca.toString()).to.equal('TEST CA CERTIFICATE'); + expect(options).to.have.property('key').that.is.instanceOf(Buffer); + expect(options.key.toString()).to.equal('TEST PRIVATE KEY'); + expect(options).to.have.property('cert').that.is.instanceOf(Buffer); + expect(options.cert.toString()).to.equal('TEST PUBLIC CERTIFICATE'); + expect(options).to.have.property('passphrase', 'test_key_pass'); expect(options).to.have.property('authSource', '$external'); - expect(options).to.have.deep.property('auth', { authMechanism: 'MONGODB-X509' }); + expect(options).to.have.deep.property('authMechanism', 'MONGODB-X509'); expect(options).to.not.have.property('user'); }); @@ -148,17 +145,15 @@ describe("environment", function() { const options = mongo.options; expect(mongo).to.have.property('uri', 'mongodb-test://db.test.mage:54545/magedbtest'); - expect(options).to.have.property('ssl', true); - expect(options).to.have.property('sslCA').that.is.instanceOf(Buffer); - expect(options.sslCA.toString()).to.equal('ENV CA CERT'); - expect(options).to.have.property('sslKey').that.is.instanceOf(Buffer); - expect(options.sslKey.toString()).to.equal('ENV KEY'); - expect(options).to.have.property('sslCert').that.is.instanceOf(Buffer); - expect(options.sslCert.toString()).to.equal('ENV CERT'); - expect(options).to.have.property('sslPass', 'test_key_pass'); - expect(options).to.have.property('checkServerIdentity', false); + expect(options).to.have.property('ca').that.is.instanceOf(Buffer); + expect(options.ca.toString()).to.equal('ENV CA CERT'); + expect(options).to.have.property('key').that.is.instanceOf(Buffer); + expect(options.key.toString()).to.equal('ENV KEY'); + expect(options).to.have.property('cert').that.is.instanceOf(Buffer); + expect(options.cert.toString()).to.equal('ENV CERT'); + expect(options).to.have.property('passphrase', 'test_key_pass'); expect(options).to.have.property('authSource', '$external'); - expect(options).to.have.deep.property('auth', { authMechanism: 'MONGODB-X509' }); + expect(options).to.have.deep.property('authMechanism', 'MONGODB-X509'); expect(options).to.not.have.property('user'); }); }); @@ -176,9 +171,10 @@ describe("environment", function() { name: 'MongoInstance', credentials: { url: 'mongodb-cf://db.test.mage:27999/magedb_cf', - username: 'cloudfoundry', - password: 'foundrycloud', - poolSize: 99 + user: 'cloudfoundry', + pass: 'foundrycloud', + minPoolSize: 99, + maxPoolSize: 99 } } ] @@ -197,10 +193,10 @@ describe("environment", function() { expect(mongo).to.have.property('connectRetryDelay', 5000); expect(mongo).to.have.property('connectTimeout', 300000); const options = mongo.options; - expect(options).to.have.property('useMongoClient', true); - expect(options).to.have.property('ssl', false); - expect(options).to.have.property('poolSize', 99); - expect(options).to.have.deep.property('auth', { "user": "cloudfoundry", "password": "foundrycloud" }); + expect(options).to.not.have.property('tls'); + expect(options).to.have.property('minPoolSize', 99); + expect(options).to.have.property('maxPoolSize', 99); + expect(options).to.have.deep.property('auth', { "username": "cloudfoundry", "password": "foundrycloud" }); }); }); }); diff --git a/service/test/event/eventCreateTest.js b/service/test/event/eventCreateTest.js index eb650eec3..0c1a9ca13 100644 --- a/service/test/event/eventCreateTest.js +++ b/service/test/event/eventCreateTest.js @@ -1,34 +1,28 @@ -var request = require('supertest') +'use strict'; + +const request = require('supertest') , sinon = require('sinon') , should = require('chai').should() , mongoose = require('mongoose') , mockfs = require('mock-fs') - , MockToken = require('../mockToken') - , TokenModel = mongoose.model('Token'); + , createToken = require('../mockToken') + , CounterModel = require('../../lib/models/counter') + , IconModel = require('../../lib/models/icon') + , TeamModel = require('../../lib/models/team') + , TokenModel = require('../../lib/models/token') + , SecurePropertyAppender = require('../../lib/security/utilities/secure-property-appender') + , AuthenticationConfiguration = require('../../lib/models/authenticationconfiguration'); -require('chai').should(); require('sinon-mongoose'); -require('../../lib/models/counter'); -var CounterModel = mongoose.model('Counter'); - -require('../../lib/models/team'); -var TeamModel = mongoose.model('Team'); - require('../../lib/models/event'); const EventModel = mongoose.model('Event'); -require('../../lib/models/icon'); -const IconModel = mongoose.model('Icon'); - -const SecurePropertyAppender = require('../../lib/security/utilities/secure-property-appender'); -const AuthenticationConfiguration = require('../../lib/models/authenticationconfiguration'); - -describe("event create tests", function() { +describe("event create tests", function () { let app; - beforeEach(function() { + beforeEach(function () { const configs = []; const config = { name: 'local', @@ -49,25 +43,22 @@ describe("event create tests", function() { this.timeout(300000); - afterEach(function() { + afterEach(function () { sinon.restore(); }); const userId = mongoose.Types.ObjectId(); - it("should create event", function(done) { + it("should create event", function (done) { sinon.mock(TokenModel) - .expects('findOne').atLeast(1) - .withArgs({token: "12345"}) - .chain('populate').atLeast(1) - .chain('exec').atLeast(1) - .yields(null, MockToken(userId, ['CREATE_EVENT'])); + .expects('getToken') + .withArgs('12345') + .yields(null, createToken(userId, ['CREATE_EVENT'])); const eventId = 1; sinon.mock(CounterModel) - .expects('findOneAndUpdate') - .chain('exec') - .resolves({sequence: eventId }); + .expects('getNext') + .resolves(eventId); const mockEvent = new EventModel({ _id: eventId, @@ -83,7 +74,7 @@ describe("event create tests", function() { sinon.mock(mongoose.connection.db) .expects('createCollection') - .yields(null); + .resolves(null); const teamId = mongoose.Types.ObjectId(); const mockTeam = { @@ -95,15 +86,11 @@ describe("event create tests", function() { const teamAcl = {}; teamAcl[userId.toString()] = 'OWNER'; sinon.mock(TeamModel) - .expects('create') - .withArgs(sinon.match.has('acl', teamAcl).and(sinon.match.has('teamEventId', eventId))) + .expects('createTeam') .yields(null, mockTeam); sinon.mock(TeamModel) - .expects('find') - .withArgs({ _id: { $in: [teamId] } }) - .chain('populate') - .chain('exec') + .expects('getTeamById') .yields(null, [mockTeam]); mockEvent.teamIds = [teamId]; @@ -119,7 +106,7 @@ describe("event create tests", function() { mockfs(fs); sinon.mock(IconModel) - .expects('findOneAndUpdate') + .expects('create') .yields(null); request(app) @@ -132,35 +119,32 @@ describe("event create tests", function() { fields: [{ name: 'timestamp', required: true - },{ + }, { name: 'geometry', required: true - },{ + }, { name: 'type', required: true }] } }) .expect(201) - .end(function(err) { + .end(function (err) { mockfs.restore(); done(err); }); }); - it("should reject event with no name", function(done) { + it("should reject event with no name", function (done) { sinon.mock(TokenModel) - .expects('findOne').atLeast(1) - .withArgs({token: "12345"}) - .chain('populate').atLeast(1) - .chain('exec').atLeast(1) - .yields(null, MockToken(userId, ['CREATE_EVENT'])); + .expects('getToken') + .withArgs('12345') + .yields(null, createToken(userId, ['CREATE_EVENT'])); const eventId = 1; sinon.mock(CounterModel) - .expects('findOneAndUpdate') - .chain('exec') - .resolves({ sequence: eventId }); + .expects('getNext') + .resolves(eventId); const mockEvent = new EventModel({ _id: eventId @@ -178,17 +162,17 @@ describe("event create tests", function() { fields: [{ name: 'timestamp', required: true - },{ + }, { name: 'geometry', required: true - },{ + }, { name: 'type', required: true }] } }) .expect(400) - .expect(function(res) { + .expect(function (res) { let error = res.text; should.exist(error); error.should.be.a('string'); @@ -203,19 +187,16 @@ describe("event create tests", function() { .end(done); }); - it("should reject event with duplicate name", function(done) { + it("should reject event with duplicate name", async function() { sinon.mock(TokenModel) - .expects('findOne').atLeast(1) - .withArgs({token: "12345"}) - .chain('populate').atLeast(1) - .chain('exec').atLeast(1) - .yields(null, MockToken(userId, ['CREATE_EVENT'])); + .expects('getToken') + .withArgs('12345') + .yields(null, createToken(userId, ['CREATE_EVENT'])); const eventId = 1; sinon.mock(CounterModel) - .expects('findOneAndUpdate') - .chain('exec') - .resolves({ sequence: eventId }); + .expects('getNext') + .resolves(eventId); const uniqueError = new Error('E11000 duplicate key error collection: magedb.events index: name_1 dup key: { : "Foo" }'); uniqueError.name = 'MongoError'; @@ -224,14 +205,14 @@ describe("event create tests", function() { sinon.mock(EventModel.collection) .expects('indexInformation') .yields(null, { - name_1: [['name', 1 ]] + name_1: [['name', 1]] }); sinon.mock(EventModel.collection) - .expects('insert') + .expects('insertOne') .yields(uniqueError, null); - request(app) + const res = await request(app) .post('/api/events') .set('Accept', 'application/json') .set('Authorization', 'Bearer 12345') @@ -241,23 +222,21 @@ describe("event create tests", function() { fields: [{ name: 'timestamp', required: true - },{ + }, { name: 'geometry', required: true - },{ + }, { name: 'type', required: true }] } }) - .expect(400) - .expect(function(res) { - should.exist(res.body); - res.body.should.have.property('message').that.equals('Validation failed'); - res.body.should.have.property('errors').that.is.an('object'); - res.body.errors.should.have.property('name').that.is.an('object'); - res.body.errors.name.should.have.property('message').that.equals('Event with name "Test" already exists.'); - }) - .end(done); + + res.status.should.equal(400) + res.body.should.exist + res.body.message.should.equals('Validation failed'); + res.body.should.have.property('errors').that.is.an('object'); + res.body.errors.should.have.property('name').that.is.an('object'); + res.body.errors.name.should.have.property('message').that.equals('Duplicate event name'); }); }); diff --git a/service/test/event/eventDeleteTest.js b/service/test/event/eventDeleteTest.js index 6e233b0a1..d36a07444 100644 --- a/service/test/event/eventDeleteTest.js +++ b/service/test/event/eventDeleteTest.js @@ -1,34 +1,30 @@ -const request = require('supertest'); -const sinon = require('sinon'); -const mongoose = require('mongoose'); -const mockfs = require('mock-fs'); -const { expect } = require('chai'); -const MockToken = require('../mockToken'); -const TokenModel = mongoose.model('Token'); - -require('chai').should(); +'use strict'; + +const request = require('supertest') + , sinon = require('sinon') + , mongoose = require('mongoose') + , mockfs = require('mock-fs') + , { expect } = require('chai') + , createToken = require('../mockToken') + , IconModel = require('../../lib/models/icon') + , TokenModel = require('../../lib/models/token') + , UserModel = require('../../lib/models/user') + , SecurePropertyAppender = require('../../lib/security/utilities/secure-property-appender') + , AuthenticationConfiguration = require('../../lib/models/authenticationconfiguration'); + require('sinon-mongoose'); require('../../lib/models/team'); -var TeamModel = mongoose.model('Team'); - -require('../../lib/models/event'); -var EventModel = mongoose.model('Event'); - -require('../../lib/models/icon'); -var IconModel = mongoose.model('Icon'); +const TeamModel = mongoose.model('Team'); -require('../../lib/models/user'); -var UserModel = mongoose.model('User'); +const EventOperations = require('../../lib/models/event'); +const EventModel = mongoose.model('Event'); -const SecurePropertyAppender = require('../../lib/security/utilities/secure-property-appender'); -const AuthenticationConfiguration = require('../../lib/models/authenticationconfiguration'); - -describe('deleting events', function() { +describe('deleting events', function () { let app; - beforeEach(function() { + beforeEach(function () { const configs = []; const config = { name: 'local', @@ -47,26 +43,24 @@ describe('deleting events', function() { app = require('../../lib/express').app; }); - afterEach(function() { + afterEach(function () { sinon.restore(); }); - var userId = mongoose.Types.ObjectId(); + const userId = mongoose.Types.ObjectId(); function mockTokenWithPermission(permission) { sinon.mock(TokenModel) - .expects('findOne') - .withArgs({token: "12345"}) - .chain('populate', 'userId') - .chain('exec') - .yields(null, MockToken(userId, [permission])); + .expects('getToken') + .withArgs('12345') + .yields(null, createToken(userId, [permission])); } - it('deletes the event and all related resources', function(done) { + it('deletes the event and all related resources', function (done) { mockTokenWithPermission('DELETE_EVENT'); - var eventId = 1; - var mockEvent = new EventModel({ + const eventId = 1; + const mockEvent = new EventModel({ _id: eventId, name: 'Mock Event', collectionName: 'observations1' @@ -83,26 +77,25 @@ describe('deleting events', function() { const droppedObservationCollection = sinon.mock(mongoose.connection.db) .expects('dropCollection') - .yields(null); + .resolves(null); sinon.mock(IconModel) - .expects('findOne') + .expects('getIcon') .yields(null); sinon.mock(IconModel) .expects('remove') .yields(null); - var teamId = mongoose.Types.ObjectId(); - var mockTeam = new TeamModel({ + const teamId = mongoose.Types.ObjectId(); + const mockTeam = new TeamModel({ _id: teamId, name: 'Mock Team', teamEventId: eventId }); - var removeEventsFromUserExpectation = sinon.mock(UserModel) - .expects('update') - .withArgs({}, { $pull: { recentEventIds: eventId } }, { multi: true }) + sinon.mock(UserModel) + .expects('removeRecentEventForUsers') .yields(null); mockfs({ @@ -115,7 +108,7 @@ describe('deleting events', function() { .chain('exec') .yields(null, [mockTeam]); - var removedEventTeam = sinon.mock(mockTeam) + const removedEventTeam = sinon.mock(mockTeam) .expects('remove') .yields(null); @@ -124,21 +117,20 @@ describe('deleting events', function() { .set('Accept', 'application/json') .set('Authorization', 'Bearer 12345') .expect(204) - .end(function(err) { + .end(function (err) { droppedObservationCollection.verify(); removedEventTeam.verify(); - removeEventsFromUserExpectation.verify(); expect(eventRemoveSpy.callCount).to.equal(1); mockfs.restore(); done(err); }); }); - it("should delete event if delete permission in acl", function(done) { + it("should delete event if delete permission in acl", function (done) { mockTokenWithPermission(''); - var eventId = 1; - var mockEvent = new EventModel({ + const eventId = 1; + const mockEvent = new EventModel({ _id: eventId, name: 'Mock Event', collectionName: 'observations1', @@ -146,81 +138,44 @@ describe('deleting events', function() { }); mockEvent.acl[userId] = 'OWNER'; - sinon.mock(EventModel) - .expects('findById') - .twice() - .onFirstCall() - .yields(null, mockEvent) - .onSecondCall() - .yields(null, null); - - sinon.mock(EventModel.collection) - .expects('remove') - .yields(null); - - sinon.mock(mongoose.connection.db) - .expects('dropCollection') - .yields(null); + sinon.mock(EventOperations) + .expects('getById') + .yields(null, mockEvent); sinon.mock(IconModel) - .expects('findOne') + .expects('getIcon') .yields(null); sinon.mock(IconModel) .expects('remove') .yields(null); - var teamId = mongoose.Types.ObjectId(); - var mockTeam = new TeamModel({ - _id: teamId, - name: 'Mock Team', - teamEventId: 1 - }); - - var removeEventsFromUserExpectation = sinon.mock(UserModel) - .expects('update') - .withArgs({}, { $pull: { recentEventIds: eventId } }, { multi: true }) + sinon.mock(UserModel) + .expects('removeRecentEventForUsers') .yields(null); mockfs({ '/var/lib/mage': {} }); - sinon.mock(TeamModel) - .expects('find') - .chain('populate') - .chain('exec') - .yields(null, [mockTeam]); - - var removeTeamsFromEventExpectation = sinon.mock(EventModel) - .expects('update') - .withArgs({}, { $pull: { teamIds: teamId } }) - .yields(null, [mockTeam]); - - var removeTeamExpectation = sinon.mock(TeamModel.collection) - .expects('remove') - .yields(null); + sinon.stub(mockEvent, 'remove').callsFake(function (){}); request(app) .delete('/api/events/' + eventId) .set('Accept', 'application/json') .set('Authorization', 'Bearer 12345') .expect(204) - .end(function(err) { - removeTeamExpectation.verify(); - removeEventsFromUserExpectation.verify(); - removeTeamsFromEventExpectation.verify(); - + .end(function (err) { mockfs.restore(); done(err); }); }); - it("should reject event delete if no delete permission in acl", function(done) { + it("should reject event delete if no delete permission in acl", function (done) { mockTokenWithPermission(''); - var eventId = 1; - var mockEvent = new EventModel({ + const eventId = 1; + const mockEvent = new EventModel({ _id: eventId, name: 'Mock Event', collectionName: 'observations1', diff --git a/service/test/event/eventReadTest.js b/service/test/event/eventReadTest.js index 55a74d7c9..f909e2cb1 100644 --- a/service/test/event/eventReadTest.js +++ b/service/test/event/eventReadTest.js @@ -1,32 +1,32 @@ -var request = require('supertest') +'use strict'; + +const request = require('supertest') , sinon = require('sinon') , should = require('chai').should() , expect = require('chai').expect , mongoose = require('mongoose') - , MockToken = require('../mockToken') - , TokenModel = mongoose.model('Token'); + , createToken = require('../mockToken') + , TokenModel = require('../../lib/models/token') + , SecurePropertyAppender = require('../../lib/security/utilities/secure-property-appender') + , AuthenticationConfiguration = require('../../lib/models/authenticationconfiguration') + , { defaultEventPermissionsService: eventPermissions } = require('../../lib/permissions/permissions.events') + , { MageEventPermission } = require('../../lib/entities/authorization/entities.permissions') + , { EventAccessType } = require('../../lib/entities/events/entities.events'); -require('chai').should(); require('sinon-mongoose'); require('../../lib/models/team'); -var TeamModel = mongoose.model('Team'); +const TeamModel = mongoose.model('Team'); require('../../lib/models/event'); const EventModel = mongoose.model('Event'); -const SecurePropertyAppender = require('../../lib/security/utilities/secure-property-appender'); -const AuthenticationConfiguration = require('../../lib/models/authenticationconfiguration'); -const { defaultEventPermissionsService: eventPermissions } = require('../../lib/permissions/permissions.events'); -const { MageEventPermission } = require('../../lib/entities/authorization/entities.permissions'); -const { EventAccessType } = require('../../lib/entities/events/entities.events'); - -describe("event read tests", function() { +describe("event read tests", function () { let app; let userId; - beforeEach(function() { + beforeEach(function () { const configs = []; const config = { name: 'local', @@ -42,28 +42,26 @@ describe("event read tests", function() { .expects('appendToConfig') .resolves(config); - userId = mongoose.Types.ObjectId(); + userId = new mongoose.Types.ObjectId(); app = require('../../lib/express').app; }); - afterEach(function() { + afterEach(function () { sinon.restore(); }); function mockTokenWithPermission(permission) { sinon.mock(TokenModel) - .expects('findOne') - .withArgs({token: "12345"}) - .chain('populate', 'userId') - .chain('exec') - .yields(null, MockToken(userId, [permission])); + .expects('getToken') + .withArgs('12345') + .yields(null, createToken(userId, [permission])); } - it("should read active events", function(done) { + it("should read active events", function (done) { mockTokenWithPermission('READ_EVENT_ALL'); - var eventId = 1; - var mockEvent = new EventModel({ + const eventId = 1; + const mockEvent = new EventModel({ _id: eventId, name: 'Mock Event' }); @@ -80,10 +78,10 @@ describe("event read tests", function() { .end(done); }); - it("should read active events if user has read permission in acl", function(done) { + it("should read active events if user has read permission in acl", function (done) { mockTokenWithPermission(''); - var mockEvent1 = { + const mockEvent1 = { _id: 1, name: 'Mock Event', acl: { @@ -93,14 +91,14 @@ describe("event read tests", function() { }; mockEvent1.acl[userId] = 'GUEST'; - var mockEvent2 = { + const mockEvent2 = { _id: 2, name: 'Mock Event', acl: {} }; - var mockCursor = { - toArray: function(callback) { + const mockCursor = { + toArray: function (callback) { callback(null, [mockEvent1, mockEvent2]); } }; @@ -115,7 +113,7 @@ describe("event read tests", function() { .set('Accept', 'application/json') .set('Authorization', 'Bearer 12345') .expect(200) - .expect(function(res) { + .expect(function (res) { should.exist(res.body); res.body.should.be.an('array'); expect(res.body).to.have.lengthOf(1); @@ -123,24 +121,28 @@ describe("event read tests", function() { .end(done); }); - it("should read active events if user is part of a team in event", function(done) { + it("should read active events if user is part of a team in event", function (done) { mockTokenWithPermission(''); - var eventId = 1; + const eventId = 1; - var mockEvent1 = new EventModel({ + const team1 = new TeamModel({ + _id: new mongoose.Types.ObjectId(), + name: 'Team 1', + userIds: [userId], + acl: {} + }); + + const mockEvent1 = new EventModel({ _id: eventId, name: 'Mock Event 123', - teamIds: [], + teamIds: [team1], acl: { 1: 'NONE' } }); - mockEvent1.teamIds[0] = { - userIds: [userId] - }; - var mockEvent2 = new EventModel({ + const mockEvent2 = new EventModel({ _id: eventId, name: 'Mock Event 267', acl: {} @@ -153,14 +155,14 @@ describe("event read tests", function() { sinon.mock(EventModel) .expects('find') .withArgs({ complete: { $ne: true } }) - .yields(null); + .yields(null, [mockEvent1, mockEvent2]); request(app) .get('/api/events?populate=false') .set('Accept', 'application/json') .set('Authorization', 'Bearer 12345') .expect(200) - .expect(function(res) { + .expect(function (res) { should.exist(res.body); res.body.should.be.an('array'); expect(res.body).to.have.lengthOf(1); @@ -168,18 +170,18 @@ describe("event read tests", function() { .end(done); }); - it("should not read events if user is not part of a team in event or in acl", function(done) { + it("should not read events if user is not part of a team in event or in acl", function (done) { mockTokenWithPermission(''); - var eventId = 1; + const eventId = 1; - var mockEvent1 = new EventModel({ + const mockEvent1 = new EventModel({ _id: eventId, name: 'Mock Event 1', acl: {} }); - var mockEvent2 = new EventModel({ + const mockEvent2 = new EventModel({ _id: eventId, name: 'Mock Event 2', acl: {} @@ -199,7 +201,7 @@ describe("event read tests", function() { .set('Accept', 'application/json') .set('Authorization', 'Bearer 12345') .expect(200) - .expect(function(res) { + .expect(function (res) { console.log('res.body', res.body); should.exist(res.body); res.body.should.be.an('array'); @@ -208,11 +210,11 @@ describe("event read tests", function() { .end(done); }); - it("should read complete events", function(done) { + it("should read complete events", function (done) { mockTokenWithPermission('READ_EVENT_ALL'); - var eventId = 1; - var mockEvent = new EventModel({ + const eventId = 1; + const mockEvent = new EventModel({ _id: eventId, name: 'Mock Event' }); @@ -227,18 +229,18 @@ describe("event read tests", function() { request(app) .get('/api/events') - .query({state: 'complete'}) + .query({ state: 'complete' }) .set('Accept', 'application/json') .set('Authorization', 'Bearer 12345') .expect(200) .end(done); }); - it("should read all events", function(done) { + it("should read all events", function (done) { mockTokenWithPermission('READ_EVENT_ALL'); - var eventId = 1; - var mockEvent = new EventModel({ + const eventId = 1; + const mockEvent = new EventModel({ _id: eventId, name: 'Mock Event' }); @@ -253,18 +255,18 @@ describe("event read tests", function() { request(app) .get('/api/events') - .query({state: 'all'}) + .query({ state: 'all' }) .set('Accept', 'application/json') .set('Authorization', 'Bearer 12345') .expect(200) .end(done); }); - it("should read event by id", function(done) { + it("should read event by id", function (done) { mockTokenWithPermission('READ_EVENT_ALL'); - var eventId = 1; - var mockEvent = new EventModel({ + const eventId = 1; + const mockEvent = new EventModel({ _id: eventId, name: 'Mock Event' }); @@ -279,18 +281,18 @@ describe("event read tests", function() { request(app) .get('/api/events/1') - .query({state: 'all'}) + .query({ state: 'all' }) .set('Accept', 'application/json') .set('Authorization', 'Bearer 12345') .expect(200) .end(done); }); - it("should fail to read event by id if event does not exist", function(done) { + it("should fail to read event by id if event does not exist", function (done) { mockTokenWithPermission('READ_EVENT_ALL'); - var eventId = 1; - var mockEvent = new EventModel({ + const eventId = 1; + const mockEvent = new EventModel({ _id: eventId, name: 'Mock Event' }); @@ -305,14 +307,14 @@ describe("event read tests", function() { request(app) .get('/api/events/2') - .query({state: 'all'}) + .query({ state: 'all' }) .set('Accept', 'application/json') .set('Authorization', 'Bearer 12345') .expect(404) .end(done); }); - it("should read teams page in event", function(done) { + it("should read teams page in event", function (done) { mockTokenWithPermission('READ_EVENT_ALL'); const eventId = 1; @@ -352,16 +354,16 @@ describe("event read tests", function() { .end(done); }); - it("should read users in event", function(done) { + it("should read users in event", function (done) { mockTokenWithPermission('READ_EVENT_ALL'); - var eventId = 1; - var mockEvent = new EventModel({ + const eventId = 1; + const mockEvent = new EventModel({ _id: eventId, name: 'Mock Event' }); - var eventMock = sinon.mock(EventModel); + const eventMock = sinon.mock(EventModel); eventMock.expects('findById') .withArgs("1") @@ -369,7 +371,7 @@ describe("event read tests", function() { eventMock.expects('findById') .chain('populate') - .withArgs({path: 'teamIds', populate: { path: 'userIds' }}) + .withArgs({ path: 'teamIds', populate: { path: 'userIds' } }) .chain('exec') .yields(null, mockEvent); @@ -381,7 +383,7 @@ describe("event read tests", function() { .end(done); }); - it("should read users in event with team access", function(done) { + it("should read users in event with team access", function (done) { mockTokenWithPermission(''); const eventId = 1; @@ -429,7 +431,7 @@ describe("event read tests", function() { .get('/api/events/1/users') .set('Accept', 'application/json') .set('Authorization', 'Bearer 12345') - .query({populate: 'users'}) + .query({ populate: 'users' }) .expect(200) .end(done); }); diff --git a/service/test/event/eventUpdateTest.js b/service/test/event/eventUpdateTest.js index 2796c8505..210ec0aad 100644 --- a/service/test/event/eventUpdateTest.js +++ b/service/test/event/eventUpdateTest.js @@ -1,27 +1,27 @@ -var request = require('supertest') +'use strict'; + +const request = require('supertest') , should = require('chai').should() , sinon = require('sinon') , mongoose = require('mongoose') , MockToken = require('../mockToken') - , TokenModel = mongoose.model('Token'); + , TokenModel = mongoose.model('Token') + , SecurePropertyAppender = require('../../lib/security/utilities/secure-property-appender') + , AuthenticationConfiguration = require('../../lib/models/authenticationconfiguration'); -require('chai').should(); require('sinon-mongoose'); require('../../lib/models/team'); -var TeamModel = mongoose.model('Team'); +const TeamModel = mongoose.model('Team'); require('../../lib/models/event'); -var EventModel = mongoose.model('Event'); - -const SecurePropertyAppender = require('../../lib/security/utilities/secure-property-appender'); -const AuthenticationConfiguration = require('../../lib/models/authenticationconfiguration'); +const EventModel = mongoose.model('Event'); -describe("event update tests", function() { +describe("event update tests", function () { let app; - beforeEach(function() { + beforeEach(function () { const configs = []; const config = { name: 'local', @@ -40,25 +40,25 @@ describe("event update tests", function() { app = require('../../lib/express').app; }); - afterEach(function() { + afterEach(function () { sinon.restore(); }); - var userId = mongoose.Types.ObjectId(); + const userId = mongoose.Types.ObjectId(); function mockTokenWithPermission(permission) { sinon.mock(TokenModel) .expects('findOne') - .withArgs({token: "12345"}) + .withArgs({ token: "12345" }) .chain('populate', 'userId') .chain('exec') .yields(null, MockToken(userId, [permission])); } - it("should update event", function(done) { + it("should update event", function (done) { mockTokenWithPermission('UPDATE_EVENT'); - var eventId = 1; - var mockEvent = new EventModel({ + const eventId = 1; + const mockEvent = new EventModel({ _id: eventId, name: 'Mock Event' }); @@ -83,11 +83,11 @@ describe("event update tests", function() { .end(done); }); - it("should remove event description", function(done) { + it("should remove event description", function (done) { mockTokenWithPermission('UPDATE_EVENT'); - var eventId = 1; - var mockEvent = new EventModel({ + const eventId = 1; + const mockEvent = new EventModel({ _id: eventId, name: 'Mock Event' }); @@ -112,10 +112,10 @@ describe("event update tests", function() { .end(done); }); - it("should reject event with no fields", function(done) { + it("should reject event with no fields", function (done) { mockTokenWithPermission('UPDATE_EVENT'); - var eventId = 1; + const eventId = 1; sinon.mock(EventModel) .expects('findById') .yields(null, new EventModel({ @@ -123,15 +123,15 @@ describe("event update tests", function() { name: 'testEvent' })); - var teamId = mongoose.Types.ObjectId(); - var mockTeams = [{ + const teamId = mongoose.Types.ObjectId(); + const mockTeams = [{ id: teamId, name: 'Mock Team' }]; sinon.mock(TeamModel) .expects('find') - .withArgs({ _id: { $in: [teamId.toString()] }}) + .withArgs({ _id: { $in: [teamId.toString()] } }) .chain('populate') .chain('exec') .yields(null, mockTeams); @@ -151,7 +151,7 @@ describe("event update tests", function() { }] }) .expect(400) - .expect(function(res) { + .expect(function (res) { var error = res.text; should.exist(error); error.should.be.a('string'); @@ -164,10 +164,10 @@ describe("event update tests", function() { .end(done); }); - it("should reject event with invalid field in form", function(done) { + it("should reject event with invalid field in form", function (done) { mockTokenWithPermission('UPDATE_EVENT'); - var eventId = 1; + const eventId = 1; sinon.mock(EventModel) .expects('findById') .yields(null, new EventModel({ @@ -190,22 +190,22 @@ describe("event update tests", function() { name: 'timestamp', required: true, type: 'date' - },{ + }, { name: 'geometry', required: true, type: 'geometry' - },{ + }, { name: 'type', required: true, type: 'dropdown' - },{ + }, { name: 'invalid', type: 'invalid' }] }] }) .expect(400) - .expect(function(res) { + .expect(function (res) { var error = res.text; should.exist(error); error.should.be.a('string'); @@ -219,11 +219,11 @@ describe("event update tests", function() { .end(done); }); - it("should add team to event", function(done) { + it("should add team to event", function (done) { mockTokenWithPermission('UPDATE_EVENT'); - var eventId = 1; - var mockEvent = new EventModel({ + const eventId = 1; + const mockEvent = new EventModel({ _id: eventId, name: 'Mock Event' }); @@ -231,7 +231,7 @@ describe("event update tests", function() { .expects('findById') .yields(null, mockEvent); - var teamId = mongoose.Types.ObjectId(); + const teamId = mongoose.Types.ObjectId(); sinon.mock(EventModel) .expects('findByIdAndUpdate') .yields(null, mockEvent); @@ -247,10 +247,10 @@ describe("event update tests", function() { fields: [{ name: 'timestamp', required: true - },{ + }, { name: 'geometry', required: true - },{ + }, { name: 'type', required: true }] @@ -260,11 +260,11 @@ describe("event update tests", function() { .end(done); }); - it("should not add team that belongs to another event", function(done) { + it("should not add team that belongs to another event", function (done) { mockTokenWithPermission('UPDATE_EVENT'); - var eventId = 1; - var mockEvent = new EventModel({ + const eventId = 1; + const mockEvent = new EventModel({ _id: eventId, name: 'Mock Event' }); @@ -272,8 +272,8 @@ describe("event update tests", function() { .expects('findById') .yields(null, mockEvent); - var teamId = mongoose.Types.ObjectId(); - var mockTeams = [{ + const teamId = mongoose.Types.ObjectId(); + const mockTeams = [{ id: mongoose.Types.ObjectId(), name: 'Mock Team', teamEventId: 2 @@ -290,20 +290,20 @@ describe("event update tests", function() { .set('Accept', 'application/json') .set('Authorization', 'Bearer 12345') .send({ - team: {id: teamId.toString()} + team: { id: teamId.toString() } }) .expect(405) - .expect(function(res) { + .expect(function (res) { res.text.should.equal("Cannot add a team that belongs specifically to another event"); }) .end(done); }); - it("should mark event as complete", function(done) { + it("should mark event as complete", function (done) { mockTokenWithPermission('UPDATE_EVENT'); - var eventId = 1; - var mockEvent = new EventModel({ + const eventId = 1; + const mockEvent = new EventModel({ _id: eventId, name: 'Mock Event' }); @@ -327,10 +327,10 @@ describe("event update tests", function() { fields: [{ name: 'timestamp', required: true - },{ + }, { name: 'geometry', required: true - },{ + }, { name: 'type', required: true }] @@ -340,11 +340,11 @@ describe("event update tests", function() { .end(done); }); - it("should mark event as active", function(done) { + it("should mark event as active", function (done) { mockTokenWithPermission('UPDATE_EVENT'); - var eventId = 1; - var mockEvent = new EventModel({ + const eventId = 1; + const mockEvent = new EventModel({ _id: eventId, name: 'Mock Event' }); @@ -368,10 +368,10 @@ describe("event update tests", function() { fields: [{ name: 'timestamp', required: true - },{ + }, { name: 'geometry', required: true - },{ + }, { name: 'type', required: true }] @@ -381,13 +381,13 @@ describe("event update tests", function() { .end(done); }); - it("should update event if update access in acl", function(done) { + it("should update event if update access in acl", function (done) { mockTokenWithPermission(''); - var eventId = 1; - var acl = {}; + const eventId = 1; + const acl = {}; acl[userId.toString()] = 'MANAGER'; - var mockEvent = new EventModel({ + const mockEvent = new EventModel({ _id: eventId, name: 'Mock Event', acl: acl @@ -413,11 +413,11 @@ describe("event update tests", function() { }); - it("should reject update to event if not in acl", function(done) { + it("should reject update to event if not in acl", function (done) { mockTokenWithPermission(''); - var eventId = 1; - var mockEvent = new EventModel({ + const eventId = 1; + const mockEvent = new EventModel({ _id: eventId, name: 'Mock Event', acl: {} @@ -437,13 +437,13 @@ describe("event update tests", function() { .end(done); }); - it("should reject update to event if no update access in acl", function(done) { + it("should reject update to event if no update access in acl", function (done) { mockTokenWithPermission(''); - var eventId = 1; - var acl = {}; + const eventId = 1; + const acl = {}; acl[userId.toString()] = 'GUEST'; - var mockEvent = new EventModel({ + const mockEvent = new EventModel({ _id: eventId, name: 'Mock Event', acl: acl @@ -464,27 +464,27 @@ describe("event update tests", function() { .end(done); }); - it("should update user in acl for event", function(done) { + it("should update user in acl for event", function (done) { mockTokenWithPermission(''); - var aclUserId = mongoose.Types.ObjectId(); + const aclUserId = mongoose.Types.ObjectId(); - var teamId = mongoose.Types.ObjectId(); - var mockTeams = [{ + const teamId = mongoose.Types.ObjectId(); + const mockTeams = [{ id: teamId, name: 'Mock Team' }]; sinon.mock(TeamModel) .expects('find') - .withArgs({ _id: { $in: [teamId.toString()] }}) + .withArgs({ _id: { $in: [teamId.toString()] } }) .chain('populate') .chain('exec') .yields(null, mockTeams); - var eventId = 1; - var acl = {}; + const eventId = 1; + const acl = {}; acl[userId.toString()] = 'MANAGER'; - var mockEvent = new EventModel({ + const mockEvent = new EventModel({ _id: eventId, name: 'Mock Event', acl: acl @@ -494,26 +494,27 @@ describe("event update tests", function() { .expects('findById') .yields(null, mockEvent); - var eventUpdate = {}; + const mockTeam = { + name: 'Mock Team' + }; + + const eventUpdate = {}; eventUpdate['acl.' + aclUserId.toString()] = 'OWNER'; sinon.mock(EventModel) .expects('findOneAndUpdate') - .withArgs({_id: eventId}, eventUpdate) + .withArgs({ _id: eventId }, eventUpdate) .yields(null, mockTeam); - var mockTeam = new TeamModel({ - name: 'Mock Team' - }); sinon.mock(TeamModel) .expects('findOne') - .withArgs({teamEventId: eventId}) + .withArgs({ teamEventId: eventId }) .yields(null, mockTeam); - var teamUpdate = {}; + const teamUpdate = {}; teamUpdate['acl.' + aclUserId.toString()] = 'OWNER'; sinon.mock(TeamModel) .expects('findOneAndUpdate') - .withArgs({teamEventId: eventId}, teamUpdate) + .withArgs({ teamEventId: eventId }, teamUpdate) .yields(null, mockTeam); request(app) @@ -527,27 +528,27 @@ describe("event update tests", function() { .end(done); }); - it("should delete user in acl for event", function(done) { + it("should delete user in acl for event", function (done) { mockTokenWithPermission(''); - var aclUserId = mongoose.Types.ObjectId(); + const aclUserId = mongoose.Types.ObjectId(); - var teamId = mongoose.Types.ObjectId(); - var mockTeams = [{ + const teamId = mongoose.Types.ObjectId(); + const mockTeams = [{ id: teamId, name: 'Mock Team' }]; sinon.mock(TeamModel) .expects('find') - .withArgs({ _id: { $in: [teamId.toString()] }}) + .withArgs({ _id: { $in: [teamId.toString()] } }) .chain('populate') .chain('exec') .yields(null, mockTeams); - var eventId = 1; - var acl = {}; + const eventId = 1; + const acl = {}; acl[userId.toString()] = 'MANAGER'; - var mockEvent = new EventModel({ + const mockEvent = new EventModel({ _id: eventId, name: 'Mock Event', acl: acl @@ -557,26 +558,27 @@ describe("event update tests", function() { .expects('findById') .yields(null, mockEvent); - var eventUpdate = { $unset: {} }; + const mockTeam = { + name: 'Mock Team' + }; + + const eventUpdate = { $unset: {} }; eventUpdate.$unset['acl.' + aclUserId.toString()] = true; sinon.mock(EventModel) .expects('findOneAndUpdate') - .withArgs({_id: eventId}, eventUpdate) + .withArgs({ _id: eventId }, eventUpdate) .yields(null, mockTeam); - var mockTeam = new TeamModel({ - name: 'Mock Team' - }); sinon.mock(TeamModel) .expects('findOne') - .withArgs({teamEventId: eventId}) + .withArgs({ teamEventId: eventId }) .yields(null, mockTeam); - var teamUpdate = { $unset: {} }; + const teamUpdate = { $unset: {} }; teamUpdate.$unset['acl.' + aclUserId.toString()] = true; sinon.mock(TeamModel) .expects('findOneAndUpdate') - .withArgs({teamEventId: eventId}, teamUpdate) + .withArgs({ teamEventId: eventId }, teamUpdate) .yields(null, mockTeam); request(app) @@ -588,26 +590,26 @@ describe("event update tests", function() { .end(done); }); - it("should reject update user in acl for event with invalid userId", function(done) { + it("should reject update user in acl for event with invalid userId", function (done) { mockTokenWithPermission(''); - var teamId = mongoose.Types.ObjectId(); - var mockTeams = [{ + const teamId = mongoose.Types.ObjectId(); + const mockTeams = [{ id: teamId, name: 'Mock Team' }]; sinon.mock(TeamModel) .expects('find') - .withArgs({ _id: { $in: [teamId.toString()] }}) + .withArgs({ _id: { $in: [teamId.toString()] } }) .chain('populate') .chain('exec') .yields(null, mockTeams); - var eventId = 1; - var acl = {}; + const eventId = 1; + const acl = {}; acl[userId.toString()] = 'MANAGER'; - var mockEvent = new EventModel({ + const mockEvent = new EventModel({ _id: eventId, name: 'Mock Event', acl: acl @@ -628,26 +630,26 @@ describe("event update tests", function() { .end(done); }); - it("should reject update user in acl for event with invalid role", function(done) { + it("should reject update user in acl for event with invalid role", function (done) { mockTokenWithPermission(''); - var teamId = mongoose.Types.ObjectId(); - var mockTeams = [{ + const teamId = mongoose.Types.ObjectId(); + const mockTeams = [{ id: teamId, name: 'Mock Team' }]; sinon.mock(TeamModel) .expects('find') - .withArgs({ _id: { $in: [teamId.toString()] }}) + .withArgs({ _id: { $in: [teamId.toString()] } }) .chain('populate') .chain('exec') .yields(null, mockTeams); - var eventId = 1; - var acl = {}; + const eventId = 1; + const acl = {}; acl[userId.toString()] = 'MANAGER'; - var mockEvent = new EventModel({ + const mockEvent = new EventModel({ _id: eventId, name: 'Mock Event', acl: acl @@ -671,8 +673,8 @@ describe("event update tests", function() { it("should update event with valid form restrictions", function (done) { mockTokenWithPermission('UPDATE_EVENT'); - var eventId = 1; - var mockEvent = new EventModel({ + const eventId = 1; + const mockEvent = new EventModel({ _id: eventId, name: 'Mock Event' }); @@ -697,7 +699,7 @@ describe("event update tests", function() { id: 1, min: 1, max: 2 - },{ + }, { id: 2, min: 1, max: 2 @@ -710,8 +712,8 @@ describe("event update tests", function() { it("should fail to update event when minObservationForms greater than maxObservationForms", function (done) { mockTokenWithPermission('UPDATE_EVENT'); - var eventId = 1; - var mockEvent = new EventModel({ + const eventId = 1; + const mockEvent = new EventModel({ _id: eventId, name: 'Mock Event' }); @@ -741,8 +743,8 @@ describe("event update tests", function() { it("should fail to update event when maxObservationForms is less then sum of the minimum of all individual forms", function (done) { mockTokenWithPermission('UPDATE_EVENT'); - var eventId = 1; - var mockEvent = new EventModel({ + const eventId = 1; + const mockEvent = new EventModel({ _id: eventId, name: 'Mock Event' }); @@ -778,8 +780,8 @@ describe("event update tests", function() { it("should fail to update event when minObservationForms is greater then sum of the maximum of all individual forms", function (done) { mockTokenWithPermission('UPDATE_EVENT'); - var eventId = 1; - var mockEvent = new EventModel({ + const eventId = 1; + const mockEvent = new EventModel({ _id: eventId, name: 'Mock Event' }); @@ -815,8 +817,8 @@ describe("event update tests", function() { it("should fail to update event when individual form min is greater than max", function (done) { mockTokenWithPermission('UPDATE_EVENT'); - var eventId = 1; - var mockEvent = new EventModel({ + const eventId = 1; + const mockEvent = new EventModel({ _id: eventId, name: 'Mock Event' }); diff --git a/service/test/export/csvTest.js b/service/test/export/csvTest.js index f9ad167cd..930415cc7 100644 --- a/service/test/export/csvTest.js +++ b/service/test/export/csvTest.js @@ -7,29 +7,24 @@ const stream = require('stream') const util = require('util') const JSZip = require('jszip') const { Csv: CsvExporter } = require('../../lib/export/csv') -const MockToken = require('../mockToken') -const TokenModel = mongoose.model('Token') +const createToken = require('../mockToken') -require('chai').should(); require('sinon-mongoose'); -require('../../lib/models/team'); -const TeamModel = mongoose.model('Team'); +const TokenModel = require('../../lib/models/token'); +const UserModel = require('../../lib/models/user'); +const DeviceModel = require('../../lib/models/device'); +const Observation = require('../../lib/models/observation'); require('../../lib/models/event'); const EventModel = mongoose.model('Event'); -const Observation = require('../../lib/models/observation'); +require('../../lib/models/team'); +const TeamModel = mongoose.model('Team'); require('../../lib/models/location'); const LocationModel = mongoose.model('Location'); -const User = require('../../lib/models/user'); -const UserModel = mongoose.model('User'); - -const Device = require('../../lib/models/device'); -const DeviceModel = mongoose.model('Device'); - stream.Writable.prototype.type = function () { }; stream.Writable.prototype.attachment = function () { }; @@ -63,15 +58,13 @@ describe("csv export tests", function () { .expects('findById') .yields(null, event); - const mockUser = new UserModel(user); - sinon.mock(User) + sinon.mock(UserModel) .expects('getUserById') - .resolves(mockUser); + .resolves(user); - const mockDevice = new DeviceModel(device); - sinon.mock(Device) + sinon.mock(DeviceModel) .expects('getDeviceById') - .resolves(mockDevice); + .resolves(device); }); afterEach(function () { @@ -80,11 +73,9 @@ describe("csv export tests", function () { function mockTokenWithPermission(permission) { sinon.mock(TokenModel) - .expects('findOne') - .withArgs({ token: "12345" }) - .chain('populate', 'userId') - .chain('exec') - .yields(null, MockToken(userId, [permission])); + .expects('getToken') + .withArgs('12345') + .yields(null, createToken(userId, [permission]));; } function parseCSV(buffer) { diff --git a/service/test/export/exportTest.js b/service/test/export/exportTest.js index 6a36c0459..46711bae8 100644 --- a/service/test/export/exportTest.js +++ b/service/test/export/exportTest.js @@ -1,27 +1,22 @@ -const request = require('supertest') - , sinon = require('sinon') - , mongoose = require('mongoose') - , mockfs = require('mock-fs') - , MockToken = require('../mockToken') - , TokenModel = mongoose.model('Token') - , path = require('path'); - -require('chai').should(); +'use strict'; + +const path = require('path'); +const sinon = require('sinon'); +const request = require('supertest'); +const mongoose = require('mongoose'); +const mockfs = require('mock-fs'); require('sinon-mongoose'); -require('../../lib/models/user'); -const UserModel = mongoose.model('User'); +const createToken = require('../mockToken'); +const TokenModel = require('../../lib/models/token'); +const UserModel = require('../../lib/models/user'); +const DeviceModel = require('../../lib/models/device'); +const IconModel = require('../../lib/models/icon'); require('../../lib/models/event'); const EventModel = mongoose.model('Event'); -require('../../lib/models/icon'); -const IconModel = mongoose.model('Icon'); - -require('../../lib/models/device'); -const DeviceModel = mongoose.model('Device'); const Observation = require('../../lib/models/observation'); -const { expect } = require('chai') const observationModel = Observation.observationModel; require('../../lib/models/export'); @@ -37,7 +32,7 @@ describe("export tests", function () { let app; - beforeEach(function() { + beforeEach(function () { const configs = []; const config = { name: 'local', @@ -63,11 +58,9 @@ describe("export tests", function () { function mockTokenWithPermission(permission) { sinon.mock(TokenModel) - .expects('findOne') - .withArgs({ token: '12345' }) - .chain('populate', 'userId') - .chain('exec') - .yields(null, MockToken(userId, [permission, 'READ_EXPORT'])); + .expects('getToken') + .withArgs('12345') + .yields(null, createToken(userId, [permission, 'READ_EXPORT'])); } const userId = mongoose.Types.ObjectId(); @@ -92,8 +85,7 @@ describe("export tests", function () { .yields(null, mockEvent); sinon.mock(UserModel) - .expects('find') - .chain('exec') + .expects('getUsers') .yields(null, [{ username: 'user3' }, { @@ -101,8 +93,7 @@ describe("export tests", function () { }]); sinon.mock(DeviceModel) - .expects('find') - .chain('exec') + .expects('getDevices') .resolves([{ uid: '3' }, { @@ -145,8 +136,8 @@ describe("export tests", function () { exportType: 'kml', status: 'Starting', options: { - eventId: eventId, - filter: null + eventId: eventId, + filter: null } }); @@ -164,7 +155,7 @@ describe("export tests", function () { .resolves(exportMeta) sinon.mock(IconModel) - .expects('find') + .expects('getAll') .yields(null, [{ relativePath: 'mock/path' }]); @@ -201,6 +192,6 @@ describe("export tests", function () { res.headers.should.have.property('content-type').that.contains('application/json'); res.headers.should.have.property('location').that.equals('/api/exports/' + exportMeta._id); }) - .end(() => {}); + .end(() => { }); }); }); diff --git a/service/test/export/exporterFactoryTest.js b/service/test/export/exporterFactoryTest.js index f76bfa92c..f1ed59e47 100644 --- a/service/test/export/exporterFactoryTest.js +++ b/service/test/export/exporterFactoryTest.js @@ -2,8 +2,6 @@ const { expect } = require('chai'); const { exportFactory } = require('../../lib/export'); const EventModel = require('../../lib/models/event') -require('chai').should(); - const eventAttrs = { id: 303, name: 'Export Tests', diff --git a/service/test/init.test.ts b/service/test/init.test.ts index c3955f63d..80cae854e 100644 --- a/service/test/init.test.ts +++ b/service/test/init.test.ts @@ -1,11 +1,24 @@ + +import url from 'url' + +/** + * This class works around issue https://github.com/nodejs/node/issues/48886, + * which was introduced in Node 18.17.0. + */ +url.URL = class Node_18_17_Issue_48886_URL extends url.URL { + constructor(input: string, base?: string | url.URL) { + super(input, base) + this.searchParams + } +} + declare module 'mocha' { namespace Mocha { interface MochaOptions {} } } - import chai, { Assertion } from 'chai' import asPromised from 'chai-as-promised' @@ -34,7 +47,6 @@ import mongoose from 'mongoose' before('initialize default mongo database', mongoSupport.mongoTestBeforeAllHook({ instance: { dbName: 'mage_test_default' }})) before('initialize default mongoose connection', async function() { await waitForDefaultMongooseConnection(mongoose, this.mongo!.uri, 1000, 1000, { - useMongoClient: true, promiseLibrary: Promise }) console.log('default mongoose connection open') diff --git a/service/test/location/locationCreateTest.js b/service/test/location/locationCreateTest.js index b6763a4a3..f8fc3bb2d 100644 --- a/service/test/location/locationCreateTest.js +++ b/service/test/location/locationCreateTest.js @@ -1,43 +1,38 @@ -var request = require('supertest') +'use strict'; + +const request = require('supertest') , sinon = require('sinon') , should = require('chai').should() , mongoose = require('mongoose') - , MockToken = require('../mockToken') - , TokenModel = mongoose.model('Token'); + , createToken = require('../mockToken') + , CappedLocationModel = require('../../lib/models/cappedLocation') + , EventModel = require('../../lib/models/event') + , TeamModel = require('../../lib/models/team') + , TokenModel = require('../../lib/models/token') + , SecurePropertyAppender = require('../../lib/security/utilities/secure-property-appender') + , AuthenticationConfiguration = require('../../lib/models/authenticationconfiguration'); require('sinon-mongoose'); -require('../../lib/models/team'); -var TeamModel = mongoose.model('Team'); - -require('../../lib/models/event'); -var EventModel = mongoose.model('Event'); - require('../../lib/models/location'); -var LocationModel = mongoose.model('Location'); - -require('../../lib/models/cappedLocation'); -var CappedLocationModel = mongoose.model('CappedLocation'); - -const SecurePropertyAppender = require('../../lib/security/utilities/secure-property-appender'); -const AuthenticationConfiguration = require('../../lib/models/authenticationconfiguration'); +const LocationModel = mongoose.model('Location'); describe("location create tests", function () { let app; beforeEach(function () { - var mockEvent = EventModel({ + const mockEvent = { _id: 1, name: 'Event 1', collectionName: 'observations1', teams: [{ name: 'Team 1' }] - }); + }; sinon.mock(EventModel) - .expects('findById') + .expects('getById') .yields(null, mockEvent); const configs = []; @@ -62,24 +57,22 @@ describe("location create tests", function () { sinon.restore(); }); - var userId = mongoose.Types.ObjectId(); + const userId = mongoose.Types.ObjectId(); function mockTokenWithPermission(permission) { sinon.mock(TokenModel) - .expects('findOne') - .withArgs({ token: "12345" }) - .chain('populate', 'userId') - .chain('exec') - .yields(null, MockToken(userId, [permission])); + .expects('getToken') + .withArgs('12345') + .yields(null, createToken(userId, [permission])); } it("should create locations for an event", function (done) { mockTokenWithPermission('CREATE_LOCATION'); sinon.mock(TeamModel) - .expects('find') + .expects('teamsForUserInEvent') .yields(null, [{ name: 'Team 1' }]); - var mockLocations = [{ + const mockLocations = [{ "eventId": 1, "geometry": { "type": "Point", @@ -105,7 +98,7 @@ describe("location create tests", function () { .yields(null, mockLocations); sinon.mock(CappedLocationModel) - .expects('findOneAndUpdate') + .expects('addLocations') .yields(null, {}); request(app) @@ -148,10 +141,10 @@ describe("location create tests", function () { mockTokenWithPermission('CREATE_LOCATION'); sinon.mock(TeamModel) - .expects('find') + .expects('teamsForUserInEvent') .yields(null, [{ name: 'Team 1' }]); - var mockLocations = { + const mockLocations = { "eventId": 1, "geometry": { "type": "Point", @@ -167,7 +160,7 @@ describe("location create tests", function () { .yields(null, mockLocations); sinon.mock(CappedLocationModel) - .expects('findOneAndUpdate') + .expects('addLocations') .yields(null, {}); request(app) @@ -199,7 +192,7 @@ describe("location create tests", function () { mockTokenWithPermission('CREATE_LOCATION'); sinon.mock(TeamModel) - .expects('find') + .expects('teamsForUserInEvent') .yields(null, []); request(app) @@ -225,7 +218,7 @@ describe("location create tests", function () { mockTokenWithPermission('CREATE_LOCATION'); sinon.mock(TeamModel) - .expects('find') + .expects('teamsForUserInEvent') .yields(null, [{ name: 'Team 1' }]); request(app) @@ -250,7 +243,7 @@ describe("location create tests", function () { mockTokenWithPermission('CREATE_LOCATION'); sinon.mock(TeamModel) - .expects('find') + .expects('teamsForUserInEvent') .yields(null, [{ name: 'Team 1' }]); request(app) @@ -275,7 +268,7 @@ describe("location create tests", function () { mockTokenWithPermission('CREATE_LOCATION'); sinon.mock(TeamModel) - .expects('find') + .expects('teamsForUserInEvent') .yields(null, [{ name: 'Team 1' }]); request(app) diff --git a/service/test/location/locationReadTest.js b/service/test/location/locationReadTest.js index d93feb1e2..2fe6e3cb8 100644 --- a/service/test/location/locationReadTest.js +++ b/service/test/location/locationReadTest.js @@ -1,29 +1,23 @@ -var request = require('supertest') +'use strict'; + +const request = require('supertest') , sinon = require('sinon') , mongoose = require('mongoose') , moment = require('moment') , should = require('chai').should() - , MockToken = require('../mockToken') - , TokenModel = mongoose.model('Token'); + , createToken = require('../mockToken') + , CappedLocationModel = require('../../lib/models/cappedLocation') + , EventModel = require('../../lib/models/event') + , TeamModel = require('../../lib/models/team') + , TokenModel = require('../../lib/models/token') + , SecurePropertyAppender = require('../../lib/security/utilities/secure-property-appender') + , AuthenticationConfiguration = require('../../lib/models/authenticationconfiguration') + , { defaultEventPermissionsService: eventPermissions } = require('../../lib/permissions/permissions.events'); require('sinon-mongoose'); -require('../../lib/models/team'); -var TeamModel = mongoose.model('Team'); - -require('../../lib/models/event'); -var EventModel = mongoose.model('Event'); - require('../../lib/models/location'); -var LocationModel = mongoose.model('Location'); - -require('../../lib/models/cappedLocation'); -var CappedLocationModel = mongoose.model('CappedLocation'); - -const { defaultEventPermissionsService: eventPermissions } = require('../../lib/permissions/permissions.events') - -const SecurePropertyAppender = require('../../lib/security/utilities/secure-property-appender'); -const AuthenticationConfiguration = require('../../lib/models/authenticationconfiguration'); +const LocationModel = mongoose.model('Location'); describe("location read tests", function () { @@ -32,7 +26,7 @@ describe("location read tests", function () { let userId; beforeEach(function () { - mockEvent = new EventModel({ + mockEvent = { _id: 1, name: 'Event 1', collectionName: 'observations1', @@ -40,10 +34,10 @@ describe("location read tests", function () { name: 'Team 1' }], acl: {} - }); + }; sinon.mock(EventModel) - .expects('findById') + .expects('getById') .yields(null, mockEvent); const configs = []; @@ -71,30 +65,18 @@ describe("location read tests", function () { function mockTokenWithPermission(permission) { sinon.mock(TokenModel) - .expects('findOne') - .withArgs({ token: "12345" }) - .chain('populate', 'userId') - .chain('exec') - .yields(null, MockToken(userId, [permission])); + .expects('getToken') + .withArgs('12345') + .yields(null, createToken(userId, [permission])); } it("should get locations with read all permission", function (done) { mockTokenWithPermission('READ_LOCATION_ALL'); sinon.mock(TeamModel) - .expects('find') + .expects('teamsForUserInEvent') .yields(null, [{ name: 'Team 1' }]); - sinon.mock(EventModel) - .expects('populate') - .yields(null, { - name: 'Event 1', - teamIds: [{ - name: 'Team 1', - userIds: [userId] - }] - }); - sinon.mock(LocationModel) .expects('find') .yields(null, [{ @@ -115,7 +97,7 @@ describe("location read tests", function () { .set('Authorization', 'Bearer 12345') .expect(200) .expect(function (res) { - var locations = res.body; + const locations = res.body; should.exist(locations); locations.should.be.an('array'); locations.should.have.length(1); @@ -151,7 +133,7 @@ describe("location read tests", function () { .set('Authorization', 'Bearer 12345') .expect(200) .expect(function (res) { - var locations = res.body; + const locations = res.body; should.exist(locations); locations.should.be.an('array'); locations.should.have.length(1); @@ -168,8 +150,7 @@ describe("location read tests", function () { .resolves(true) sinon.mock(CappedLocationModel) - .expects('find') - .chain('exec') + .expects('getLocations') .yields(null, [{ userId: mongoose.Types.ObjectId(), locations: [{ @@ -195,10 +176,10 @@ describe("location read tests", function () { .set('Authorization', 'Bearer 12345') .expect(200) .expect(function (res) { - var users = res.body; + const users = res.body; should.exist(users); users.should.be.an('array').and.have.length(1); - var user = users[0]; + const user = users[0]; user.should.have.property('locations'); }) .end(done); @@ -212,8 +193,8 @@ describe("location read tests", function () { .withArgs(mockEvent, userId.toHexString(), 'read') .resolves(true) - var startDate = moment("2016-01-01T00:00:00"); - var endDate = moment("2016-02-01T00:00:00"); + const startDate = moment("2016-01-01T00:00:00"); + const endDate = moment("2016-02-01T00:00:00"); sinon.mock(LocationModel) .expects('find') .withArgs({ @@ -242,7 +223,7 @@ describe("location read tests", function () { .set('Authorization', 'Bearer 12345') .expect(200) .expect(function (res) { - var locations = res.body; + const locations = res.body; should.exist(locations); locations.should.be.an('array'); locations.should.have.length(1); @@ -258,9 +239,9 @@ describe("location read tests", function () { .withArgs(mockEvent, userId.toHexString(), 'read') .resolves(true) - var startDate = moment("2016-01-01T00:00:00"); - var endDate = moment("2016-02-01T00:00:00"); - var lastLocationId = mongoose.Types.ObjectId(); + const startDate = moment("2016-01-01T00:00:00"); + const endDate = moment("2016-02-01T00:00:00"); + const lastLocationId = mongoose.Types.ObjectId(); sinon.mock(LocationModel) .expects('find') .withArgs({ @@ -300,7 +281,7 @@ describe("location read tests", function () { .set('Authorization', 'Bearer 12345') .expect(200) .expect(function (res) { - var locations = res.body; + const locations = res.body; should.exist(locations); locations.should.be.an('array'); locations.should.have.length(1); @@ -338,7 +319,7 @@ describe("location read tests", function () { .set('Authorization', 'Bearer 12345') .expect(200) .expect(function (res) { - var locations = res.body; + const locations = res.body; should.exist(locations); locations.should.be.an('array'); locations.should.have.length(1); diff --git a/service/test/main/main.plugins.test.ts b/service/test/main/main.plugins.test.ts index da63c6a1b..906368109 100644 --- a/service/test/main/main.plugins.test.ts +++ b/service/test/main/main.plugins.test.ts @@ -18,7 +18,7 @@ class Service1Impl implements Service1 {} class Service2Impl implements Service2 {} const serviceMap = new Map([[ Service1Token, new Service1Impl() ], [ Service2Token, new Service2Impl() ]]) const injectService: plugins.InjectableServices = (token: any) => serviceMap.get(token) as any -const initPluginRoutes: AddPluginWebRoutes = (pluginId: string, initPluginRoutes: WebRoutesHooks['webRoutes']) => void(0) +const initPluginRoutes: AddPluginWebRoutes = (pluginId: string, initPluginRoutes: WebRoutesHooks) => void(0) interface InjectServiceHandle { injectService: typeof injectService @@ -71,7 +71,13 @@ describe('loading plugins', function() { service2: Service2Token } const routes = express.Router() - const hook: WebRoutesHooks['webRoutes'] = (appRequestContext: (req: express.Request) => AppRequestContext) => routes + const hook = { + webRoutes: { + public: (appRequestContext: (req: express.Request) => AppRequestContext) => routes, + protected: (appRequestContext: (req: express.Request) => AppRequestContext) => routes + } + } + let injected: any = null const initPlugin: InitPluginHook = { inject: { @@ -79,9 +85,7 @@ describe('loading plugins', function() { }, init: async (services): Promise => { injected = services - return { - webRoutes: hook - } + return hook } } initPlugin.inject = injectRequest diff --git a/service/test/migrations/018-feeds-admin-permissions.test.ts b/service/test/migrations/018-feeds-admin-permissions.test.ts index 44c0547e8..e34f7b6d0 100644 --- a/service/test/migrations/018-feeds-admin-permissions.test.ts +++ b/service/test/migrations/018-feeds-admin-permissions.test.ts @@ -20,14 +20,14 @@ describe('feeds admin permissions migration', function() { let db: Db before(function() { - db = this.mongo?.conn.db! + db = this.mongo?.conn.getClient().db() as Db; }) after(mongoTest.mongoTestAfterAllHook()) afterEach(async function() { const roles = db.collection('roles') - await roles.remove({}) + await roles.deleteMany({}) }) it('has a migration id', function() { @@ -39,7 +39,7 @@ describe('feeds admin permissions migration', function() { it('adds feeds permissions to the existing admin role', async function() { const roles = db.collection('roles') - const count = await roles.count() + const count = await roles.countDocuments() expect(count).to.equal(0) @@ -53,7 +53,7 @@ describe('feeds admin permissions migration', function() { ] }) - expect(insert.insertedCount).to.equal(1) + expect(insert.acknowledged).to.be.true await new Promise((resolve, reject) => { const done = function(err?: any) { @@ -97,7 +97,7 @@ describe('feeds admin permissions migration', function() { ] }) - expect(insert.insertedCount).to.equal(1) + expect(insert.acknowledged).to.be.true await new Promise((resolve, reject) => { const done = function(err?: any) { diff --git a/service/test/migrations/saml-settings.test.ts b/service/test/migrations/saml-settings.test.ts index 7e26de363..091eba550 100644 --- a/service/test/migrations/saml-settings.test.ts +++ b/service/test/migrations/saml-settings.test.ts @@ -47,7 +47,7 @@ describe('saml settings migration', function() { afterEach(async function() { const col = db.collection(collectionName) - await col.remove({}) + await col.deleteMany({}) }) it('has a migration id', function() { @@ -112,7 +112,7 @@ describe('saml settings migration', function() { const postDocsByName = (await col.find().toArray()).reduce((byName, doc) => { return { ...byName, [doc.name]: doc } - }, {} as { [name: string]: object }) + }, {} as { [name: string]: any }) for (const preDoc of preDocs) { const postDoc = postDocsByName[preDoc.name] @@ -141,14 +141,14 @@ describe('saml settings migration', function() { const col = db.collection(collectionName) const insertResult = await col.insertOne(preDoc) - expect(insertResult.insertedCount).to.equal(1) + expect(insertResult.insertedId).to.exist await migrateUp() const postDoc = await col.findOne({}) - expect(postDoc.settings).to.exist - expect(postDoc.settings.options).not.to.exist + expect(postDoc?.settings).to.exist + expect(postDoc?.settings.options).not.to.exist expect(postDoc).to.deep.equal({ _id: insertResult.insertedId, type: 'saml', @@ -244,7 +244,7 @@ describe('saml settings migration', function() { const postDocsByName = await col.find({}).toArray().then(postDocs => { return postDocs.reduce((byName, doc) => ({ ...byName, [doc.name]: doc }), {}) - }) + }) as { [name: string]: Document } expect(Object.entries(postDocsByName).length).to.equal(3) for (const preDoc of preDocs) { @@ -335,7 +335,7 @@ describe('saml settings migration', function() { const postDocsByName = await col.find({}).toArray().then(postDocs => { return postDocs.reduce((byName, doc) => ({ ...byName, [doc.name]: doc }), {}) - }) + }) as { [name: string]: Document } expect(Object.entries(postDocsByName).length).to.equal(3) for (const preDoc of preDocs) { diff --git a/service/test/mockToken.js b/service/test/mockToken.js index 48bb0337e..165131d27 100644 --- a/service/test/mockToken.js +++ b/service/test/mockToken.js @@ -1,30 +1,32 @@ -var mongoose = require('mongoose'); +const mongoose = require('mongoose'); require('../lib/models/user'); -var UserModel = mongoose.model('User'); +const UserModel = mongoose.model('User'); require('../lib/models/role'); -var RoleModel = mongoose.model('Role'); +const RoleModel = mongoose.model('Role'); function createToken(userId, permissions) { - var mockUser = new UserModel({ + const mockUser = new UserModel({ _id: userId, username: 'test', active: true, roleId: new RoleModel({ - permissions: permissions + _id: mongoose.Types.ObjectId(), + permissions, }) }); - var token = { - _id: '1', + const token = { + _id: mongoose.Types.ObjectId(), token: '12345', deviceId: mongoose.Types.ObjectId(), userId: { populate: function(field, callback) { callback(null, mockUser); } - } + }, + user: mockUser }; return token; diff --git a/service/test/mongo.test.ts b/service/test/mongo.test.ts index 88b87b8b6..3da2fbf10 100644 --- a/service/test/mongo.test.ts +++ b/service/test/mongo.test.ts @@ -39,10 +39,7 @@ export function mongoTestBeforeAllHook(opts?: MongoMemoryServerOpts): () => Prom this.timeout(300000) const server = await MongoMemoryServer.create(opts) const uri = server.getUri() - const conn = await mongoose.createConnection(uri, { - useMongoClient: true, - promiseLibrary: Promise - }) + const conn = await mongoose.createConnection(uri).asPromise() this.mongo = { server, uri, conn } } return setupMongoServer diff --git a/service/test/observation/observationCreateTest.js b/service/test/observation/observationCreateTest.js index d4e2b7789..0d3c99d7a 100644 --- a/service/test/observation/observationCreateTest.js +++ b/service/test/observation/observationCreateTest.js @@ -1,31 +1,28 @@ -var request = require('supertest') +'use strict'; + +const request = require('supertest') , sinon = require('sinon') , should = require('chai').should() , mongoose = require('mongoose') - , MockToken = require('../mockToken') - , TokenModel = mongoose.model('Token'); + , createToken = require('../mockToken') + , EventModel = require('../../lib/models/event') + , TeamModel = require('../../lib/models/team') + , TokenModel = require('../../lib/models/token') + , SecurePropertyAppender = require('../../lib/security/utilities/secure-property-appender') + , AuthenticationConfiguration = require('../../lib/models/authenticationconfiguration'); require('sinon-mongoose'); -require('../../lib/models/team'); -var TeamModel = mongoose.model('Team'); - -require('../../lib/models/event'); -var EventModel = mongoose.model('Event'); - -var Observation = require('../../lib/models/observation'); -var observationModel = Observation.observationModel; -var ObservationIdModel = mongoose.model('ObservationId'); - -const SecurePropertyAppender = require('../../lib/security/utilities/secure-property-appender'); -const AuthenticationConfiguration = require('../../lib/models/authenticationconfiguration'); +const Observation = require('../../lib/models/observation'); +const observationModel = Observation.observationModel; +const ObservationIdModel = mongoose.model('ObservationId'); describe.skip("observation create tests", function () { let app; beforeEach(function () { - var mockEvent = EventModel({ + const mockEvent = { _id: 1, name: 'Event 1', collectionName: 'observations1', @@ -54,10 +51,10 @@ describe.skip("observation create tests", function () { userFields: [] } - }); + }; sinon.mock(EventModel) - .expects('findById') + .expects('getById') .yields(null, mockEvent); const configs = []; @@ -82,24 +79,22 @@ describe.skip("observation create tests", function () { sinon.restore(); }); - var userId = mongoose.Types.ObjectId(); + const userId = mongoose.Types.ObjectId(); function mockTokenWithPermission(permission) { sinon.mock(TokenModel) - .expects('findOne') - .withArgs({ token: "12345" }) - .chain('populate', 'userId') - .chain('exec') - .yields(null, MockToken(userId, [permission])); + .expects('getToken') + .withArgs('12345') + .yields(null, createToken(userId, [permission])); } it("should create an observation id", function (done) { mockTokenWithPermission('CREATE_OBSERVATION'); sinon.mock(TeamModel) - .expects('find') + .expects('teamsForUserInEvent') .yields(null, [{ name: 'Team 1' }]); - var mockObservation = new ObservationIdModel({ _id: mongoose.Types.ObjectId() }); + const mockObservation = new ObservationIdModel({ _id: mongoose.Types.ObjectId() }); sinon.mock(ObservationIdModel) .expects('create') .withArgs({}) @@ -123,21 +118,21 @@ describe.skip("observation create tests", function () { mockTokenWithPermission('CREATE_OBSERVATION'); sinon.mock(TeamModel) - .expects('find') + .expects('teamsForUserInEvent') .yields(null, [{ name: 'Team 1' }]); - var observationId = mongoose.Types.ObjectId(); + const observationId = mongoose.Types.ObjectId(); sinon.mock(ObservationIdModel) .expects('findById') .yields(null, { _id: observationId }); - var ObservationModel = observationModel({ + const ObservationModel = observationModel({ _id: 1, name: 'Event 1', collectionName: 'observations1' }); - var mockObservation = new ObservationModel({ + const mockObservation = new ObservationModel({ _id: observationId, type: 'Feature', geometry: { @@ -162,10 +157,6 @@ describe.skip("observation create tests", function () { .expects('save') .resolves(mockObservation); - sinon.mock(mockObservation) - .expects('execPopulate') - .resolves(mockObservation); - request(app) .put('/api/events/1/observations/' + observationId.toString()) .set('Accept', 'application/json') @@ -184,7 +175,7 @@ describe.skip("observation create tests", function () { .expect(200) .expect('Content-Type', /json/) .expect(function (res) { - var observation = res.body; + const observation = res.body; should.exist(observation); res.body.should.have.property('id'); res.body.should.have.property('url'); @@ -195,12 +186,12 @@ describe.skip("observation create tests", function () { it("should reject new observation with invalid id", function (done) { mockTokenWithPermission('CREATE_OBSERVATION'); - var observationId = mongoose.Types.ObjectId(); + const observationId = mongoose.Types.ObjectId(); sinon.mock(ObservationIdModel) .expects('findById') .yields(null, null); - var ObservationModel = observationModel({ + const ObservationModel = observationModel({ _id: observationId, name: 'Event 1', collectionName: 'observations1' @@ -232,7 +223,7 @@ describe.skip("observation create tests", function () { it("should reject new observation for invalid permission", function (done) { mockTokenWithPermission('UPDATE_OBSERVATION'); - var ObservationModel = observationModel({ + const ObservationModel = observationModel({ _id: 1, name: 'Event 1', collectionName: 'observations1' @@ -268,14 +259,14 @@ describe.skip("observation create tests", function () { mockTokenWithPermission('CREATE_OBSERVATION'); sinon.mock(TeamModel) - .expects('find') + .expects('teamsForUserInEvent') .yields(null, [{ name: 'Team 1' }]); sinon.mock(ObservationIdModel) .expects('findById') .yields(null, { _id: 1 }); - var ObservationModel = observationModel({ + const ObservationModel = observationModel({ _id: 1, name: 'Event 1', collectionName: 'observations1' @@ -296,7 +287,7 @@ describe.skip("observation create tests", function () { } }) .expect(400) - .expect(function(res) { + .expect(function (res) { const error = JSON.parse(res.error.text); error.message.should.equal("• Location is required\n"); }) @@ -307,14 +298,14 @@ describe.skip("observation create tests", function () { mockTokenWithPermission('CREATE_OBSERVATION'); sinon.mock(TeamModel) - .expects('find') + .expects('teamsForUserInEvent') .yields(null, [{ name: 'Team 1' }]); sinon.mock(ObservationIdModel) .expects('findById') .yields(null, { _id: 1 }); - var ObservationModel = observationModel({ + const ObservationModel = observationModel({ _id: 1, name: 'Event 1', collectionName: 'observations1' @@ -339,7 +330,7 @@ describe.skip("observation create tests", function () { } }) .expect(400) - .expect(function(res) { + .expect(function (res) { const error = JSON.parse(res.error.text); error.message.should.equal("• Location must be GeoJSON\n"); }) @@ -350,14 +341,14 @@ describe.skip("observation create tests", function () { mockTokenWithPermission('CREATE_OBSERVATION'); sinon.mock(TeamModel) - .expects('find') + .expects('teamsForUserInEvent') .yields(null, [{ name: 'Team 1' }]); sinon.mock(ObservationIdModel) .expects('findById') .yields(null, { _id: 1 }); - var ObservationModel = observationModel({ + const ObservationModel = observationModel({ _id: 1, name: 'Event 1', collectionName: 'observations1' @@ -390,14 +381,14 @@ describe.skip("observation create tests", function () { mockTokenWithPermission('CREATE_OBSERVATION'); sinon.mock(TeamModel) - .expects('find') + .expects('teamsForUserInEvent') .yields(null, [{ name: 'Team 1' }]); sinon.mock(ObservationIdModel) .expects('findById') .yields(null, { _id: 1 }); - var ObservationModel = observationModel({ + const ObservationModel = observationModel({ _id: 1, name: 'Event 1', collectionName: 'observations1' @@ -421,7 +412,7 @@ describe.skip("observation create tests", function () { } }) .expect(400) - .expect(function(res) { + .expect(function (res) { const error = JSON.parse(res.error.text); error.message.should.equal("• Date is required\n"); }) @@ -432,14 +423,14 @@ describe.skip("observation create tests", function () { mockTokenWithPermission('CREATE_OBSERVATION'); sinon.mock(TeamModel) - .expects('find') + .expects('teamsForUserInEvent') .yields(null, [{ name: 'Team 1' }]); sinon.mock(ObservationIdModel) .expects('findById') .yields(null, { _id: 1 }); - var ObservationModel = observationModel({ + const ObservationModel = observationModel({ _id: 1, name: 'Event 1', collectionName: 'observations1' @@ -464,7 +455,7 @@ describe.skip("observation create tests", function () { } }) .expect(400) - .expect(function(res) { + .expect(function (res) { const error = JSON.parse(res.error.text); error.message.should.equal("• Date must be an ISO8601 string\n"); }) @@ -475,7 +466,7 @@ describe.skip("observation create tests", function () { mockTokenWithPermission('CREATE_OBSERVATION'); sinon.mock(TeamModel) - .expects('find') + .expects('teamsForUserInEvent') .yields(null, []); request(app) @@ -504,7 +495,7 @@ describe.skip("observation create tests", function () { mockTokenWithPermission('CREATE_OBSERVATION'); - var mockEvent = EventModel({ + const mockEvent = { _id: 1, name: 'Event 1', collectionName: 'observations1', @@ -534,28 +525,28 @@ describe.skip("observation create tests", function () { userFields: [] } - }); + }; sinon.mock(EventModel) - .expects('findById') + .expects('getById') .yields(null, mockEvent); sinon.mock(TeamModel) - .expects('find') + .expects('teamsForUserInEvent') .yields(null, [{ name: 'Team 1' }]); - var observationId = mongoose.Types.ObjectId(); + const observationId = mongoose.Types.ObjectId(); sinon.mock(ObservationIdModel) .expects('findById') .yields(null, { _id: observationId }); - var ObservationModel = observationModel({ + const ObservationModel = observationModel({ _id: 1, name: 'Event 1', collectionName: 'observations1' }); - var mockObservation = new ObservationModel({ + const mockObservation = new ObservationModel({ _id: observationId, type: 'Feature', geometry: { @@ -607,7 +598,7 @@ describe.skip("observation create tests", function () { mockTokenWithPermission('CREATE_OBSERVATION'); - var mockEvent = EventModel({ + const mockEvent = { _id: 1, name: 'Event 1', collectionName: 'observations1', @@ -628,14 +619,14 @@ describe.skip("observation create tests", function () { userFields: [] } - }); + }; sinon.mock(EventModel) - .expects('findById') + .expects('getById') .yields(null, mockEvent); sinon.mock(TeamModel) - .expects('find') + .expects('teamsForUserInEvent') .yields(null, [{ name: 'Team 1' }]); var observationId = mongoose.Types.ObjectId(); @@ -643,13 +634,13 @@ describe.skip("observation create tests", function () { .expects('findById') .yields(null, { _id: observationId }); - var ObservationModel = observationModel({ + const ObservationModel = observationModel({ _id: 1, name: 'Event 1', collectionName: 'observations1' }); - var mockObservation = new ObservationModel({ + const mockObservation = new ObservationModel({ _id: observationId, type: 'Feature', geometry: { @@ -661,7 +652,7 @@ describe.skip("observation create tests", function () { forms: [{ formId: 1, field1: 'test' - },{ + }, { formId: 1, field1: 'test' }] @@ -715,7 +706,7 @@ describe.skip("observation create tests", function () { mockTokenWithPermission('CREATE_OBSERVATION'); - var mockEvent = EventModel({ + const mockEvent = { _id: 1, name: 'Event 1', collectionName: 'observations1', @@ -738,28 +729,28 @@ describe.skip("observation create tests", function () { userFields: [] } - }); + }; sinon.mock(EventModel) - .expects('findById') + .expects('getById') .yields(null, mockEvent); sinon.mock(TeamModel) - .expects('find') + .expects('teamsForUserInEvent') .yields(null, [{ name: 'Team 1' }]); - var observationId = mongoose.Types.ObjectId(); + const observationId = mongoose.Types.ObjectId(); sinon.mock(ObservationIdModel) .expects('findById') .yields(null, { _id: observationId }); - var ObservationModel = observationModel({ + const ObservationModel = observationModel({ _id: 1, name: 'Event 1', collectionName: 'observations1' }); - var mockObservation = new ObservationModel({ + const mockObservation = new ObservationModel({ _id: observationId, type: 'Feature', geometry: { @@ -819,7 +810,7 @@ describe.skip("observation create tests", function () { mockTokenWithPermission('CREATE_OBSERVATION'); - var mockEvent = EventModel({ + const mockEvent = { _id: 1, name: 'Event 1', collectionName: 'observations1', @@ -841,28 +832,28 @@ describe.skip("observation create tests", function () { userFields: [] } - }); + }; sinon.mock(EventModel) - .expects('findById') + .expects('getById') .yields(null, mockEvent); sinon.mock(TeamModel) - .expects('find') + .expects('teamsForUserInEvent') .yields(null, [{ name: 'Team 1' }]); - var observationId = mongoose.Types.ObjectId(); + const observationId = mongoose.Types.ObjectId(); sinon.mock(ObservationIdModel) .expects('findById') .yields(null, { _id: observationId }); - var ObservationModel = observationModel({ + const ObservationModel = observationModel({ _id: 1, name: 'Event 1', collectionName: 'observations1' }); - var mockObservation = new ObservationModel({ + const mockObservation = new ObservationModel({ _id: observationId, type: 'Feature', geometry: { @@ -874,7 +865,7 @@ describe.skip("observation create tests", function () { forms: [{ formId: 1, field1: 'test' - },{ + }, { formId: 1, field1: 'test' }] @@ -909,7 +900,7 @@ describe.skip("observation create tests", function () { forms: [{ formId: 1, field1: 'test' - },{ + }, { formId: 1, field1: 'test' }] diff --git a/service/test/observation/observationDeleteTest.js b/service/test/observation/observationDeleteTest.js index 066fbe11a..4b37a5cec 100644 --- a/service/test/observation/observationDeleteTest.js +++ b/service/test/observation/observationDeleteTest.js @@ -1,29 +1,27 @@ -var request = require('supertest') +'use strict'; + +const request = require('supertest') , sinon = require('sinon') , should = require('chai').should() , mongoose = require('mongoose') - , MockToken = require('../mockToken') - , TokenModel = mongoose.model('Token'); - -require('sinon-mongoose'); + , createToken = require('../mockToken') + , EventModel = require('../../lib/models/event') + , TeamModel = require('../../lib/models/team') + , TokenModel = require('../../lib/models/token') + , SecurePropertyAppender = require('../../lib/security/utilities/secure-property-appender') + , AuthenticationConfiguration = require('../../lib/models/authenticationconfiguration'); -require('../../lib/models/team'); -var TeamModel = mongoose.model('Team'); -require('../../lib/models/event'); -var EventModel = mongoose.model('Event'); - -var Observation = require('../../lib/models/observation'); -var observationModel = Observation.observationModel; +require('sinon-mongoose'); -const SecurePropertyAppender = require('../../lib/security/utilities/secure-property-appender'); -const AuthenticationConfiguration = require('../../lib/models/authenticationconfiguration'); +const Observation = require('../../lib/models/observation'); +const observationModel = Observation.observationModel; -describe("observation delete tests", function() { +describe("observation delete tests", function () { let app; - beforeEach(function() { + beforeEach(function () { const configs = []; const config = { name: 'local', @@ -42,45 +40,43 @@ describe("observation delete tests", function() { app = require('../../lib/express').app; }); - afterEach(function() { + afterEach(function () { sinon.restore(); }); - var userId = mongoose.Types.ObjectId(); + const userId = mongoose.Types.ObjectId(); function mockTokenWithPermission(permission) { sinon.mock(TokenModel) - .expects('findOne') - .withArgs({token: "12345"}) - .chain('populate', 'userId') - .chain('exec') - .yields(null, MockToken(userId, [permission])); + .expects('getToken') + .withArgs('12345') + .yields(null, createToken(userId, [permission])); } - it("should update observation state to archived with UPDATE_EVENT role", function(done) { + it("should update observation state to archived with UPDATE_EVENT role", function (done) { mockTokenWithPermission('UPDATE_EVENT'); sinon.mock(TeamModel) - .expects('find') + .expects('teamsForUserInEvent') .yields(null, [{ name: 'Team 1' }]); - var mockEvent = new EventModel({ + const mockEvent = { _id: 1, name: 'Mock Event', collectionName: 'observations1', acl: {} - }); + }; sinon.mock(EventModel) - .expects('findById') + .expects('getById') .yields(null, mockEvent); - var ObservationModel = observationModel({ + const ObservationModel = observationModel({ _id: 1, name: 'Event 1', collectionName: 'observations1' }); - var observationId = mongoose.Types.ObjectId(); - var mockObservation = new ObservationModel({ + const observationId = mongoose.Types.ObjectId(); + const mockObservation = new ObservationModel({ _id: observationId, type: 'Feature', geometry: { @@ -110,40 +106,40 @@ describe("observation delete tests", function() { name: 'archive' }) .expect(201) - .expect(function(res) { - var state = res.body; + .expect(function (res) { + const state = res.body; should.exist(state); state.should.have.property('name').and.equal('archive'); }) .end(done); }); - it("should update observation state to archived with acl update role", function(done) { + it("should update observation state to archived with acl update role", function (done) { mockTokenWithPermission(''); sinon.mock(TeamModel) - .expects('find') + .expects('teamsForUserInEvent') .yields(null, [{ name: 'Team 1' }]); - var mockEvent = new EventModel({ + const mockEvent = { _id: 1, name: 'Mock Event', collectionName: 'observations1', acl: {} - }); + }; mockEvent.acl[userId] = 'MANAGER'; sinon.mock(EventModel) - .expects('findById') + .expects('getById') .yields(null, mockEvent); - var ObservationModel = observationModel({ + const ObservationModel = observationModel({ _id: 1, name: 'Event 1', collectionName: 'observations1' }); - var observationId = mongoose.Types.ObjectId(); - var mockObservation = new ObservationModel({ + const observationId = mongoose.Types.ObjectId(); + const mockObservation = new ObservationModel({ _id: observationId, type: 'Feature', geometry: { @@ -173,39 +169,39 @@ describe("observation delete tests", function() { name: 'archive' }) .expect(201) - .expect(function(res) { - var state = res.body; + .expect(function (res) { + const state = res.body; should.exist(state); state.should.have.property('name').and.equal('archive'); }) .end(done); }); - it("should update observation state to archived if observation owner", function(done) { + it("should update observation state to archived if observation owner", function (done) { mockTokenWithPermission(''); sinon.mock(TeamModel) - .expects('find') + .expects('teamsForUserInEvent') .yields(null, [{ name: 'Team 1' }]); - var mockEvent = new EventModel({ + const mockEvent = { _id: 1, name: 'Mock Event', collectionName: 'observations1', acl: {} - }); + }; sinon.mock(EventModel) - .expects('findById') + .expects('getById') .yields(null, mockEvent); - var ObservationModel = observationModel({ + const ObservationModel = observationModel({ _id: 1, name: 'Event 1', collectionName: 'observations1' }); - var observationId = mongoose.Types.ObjectId(); - var mockObservation = new ObservationModel({ + const observationId = mongoose.Types.ObjectId(); + const mockObservation = new ObservationModel({ _id: observationId, type: 'Feature', geometry: { @@ -235,35 +231,35 @@ describe("observation delete tests", function() { name: 'archive' }) .expect(201) - .expect(function(res) { - var state = res.body; + .expect(function (res) { + const state = res.body; should.exist(state); state.should.have.property('name').and.equal('archive'); }) .end(done); }); - it("should not update observation state if name is missing", function(done) { + it("should not update observation state if name is missing", function (done) { mockTokenWithPermission('DELETE_OBSERVATION'); - var mockEvent = new EventModel({ + const mockEvent = { _id: 1, name: 'Event 1', collectionName: 'observations1', acl: {} - }); + }; sinon.mock(EventModel) - .expects('findById') + .expects('getById') .yields(null, mockEvent); - var ObservationModel = observationModel({ + const ObservationModel = observationModel({ _id: 1, name: 'Event 1', collectionName: 'observations1' }); - var observationId = mongoose.Types.ObjectId(); - var mockObservation = new ObservationModel({ + const observationId = mongoose.Types.ObjectId(); + const mockObservation = new ObservationModel({ _id: observationId, type: 'Feature', geometry: { @@ -288,35 +284,35 @@ describe("observation delete tests", function() { .send({ }) .expect(400) - .expect(function(res) { + .expect(function (res) { res.text.should.equal('name required'); }) .end(done); }); - it("should not update observation state if name is not allowed", function(done) { + it("should not update observation state if name is not allowed", function (done) { mockTokenWithPermission('DELETE_OBSERVATION'); - var mockEvent = new EventModel({ + const mockEvent = { _id: 1, name: 'Event 1', collectionName: 'observations1', acl: {} - }); + }; sinon.mock(EventModel) - .expects('findById') + .expects('getById') .yields(null, mockEvent); - var observationId = mongoose.Types.ObjectId(); + const observationId = mongoose.Types.ObjectId(); - var ObservationModel = observationModel({ + const ObservationModel = observationModel({ _id: 1, name: 'Event 1', collectionName: 'observations1' }); - var mockObservation = new ObservationModel({ + const mockObservation = new ObservationModel({ _id: observationId, type: 'Feature', geometry: { @@ -342,48 +338,38 @@ describe("observation delete tests", function() { name: 'foo' }) .expect(400) - .expect(function(res) { + .expect(function (res) { res.text.should.equal("state name must be one of 'active', 'complete', 'archive'"); }) .end(done); }); - it("should not update observation state if name did not change", function(done) { + it("should not update observation state if name did not change", function (done) { mockTokenWithPermission('DELETE_OBSERVATION'); - var mockEvent = new EventModel({ + const mockEvent = { _id: 1, name: 'Event 1', collectionName: 'observations1', acl: {} - }); + }; sinon.mock(EventModel) - .expects('findById') + .expects('getById') .yields(null, mockEvent); sinon.mock(TeamModel) - .expects('find') + .expects('teamsForUserInEvent') .yields(null, [{ name: 'Team 1' }]); - sinon.mock(EventModel) - .expects('populate') - .yields(null, { - name: 'Event 1', - teamIds: [{ - name: 'Team 1', - userIds: [mongoose.Types.ObjectId()] - }] - }); - - var ObservationModel = observationModel({ + const ObservationModel = observationModel({ _id: 1, name: 'Event 1', collectionName: 'observations1' }); - var observationId = mongoose.Types.ObjectId(); - var mockObservation = new ObservationModel({ + const observationId = mongoose.Types.ObjectId(); + const mockObservation = new ObservationModel({ _id: observationId, type: 'Feature', geometry: { @@ -413,7 +399,7 @@ describe("observation delete tests", function() { name: 'archive' }) .expect(400) - .expect(function(res) { + .expect(function (res) { res.text.should.equal("state is already 'archive'"); }) .end(done); diff --git a/service/test/observation/observationFavoriteTest.js b/service/test/observation/observationFavoriteTest.js index cc3b82236..ca39d692a 100644 --- a/service/test/observation/observationFavoriteTest.js +++ b/service/test/observation/observationFavoriteTest.js @@ -1,25 +1,23 @@ + +'use strict'; + const request = require('supertest') , sinon = require('sinon') , should = require('chai').should() , expect = require('chai').expect , mongoose = require('mongoose') - , MockToken = require('../mockToken') - , TokenModel = mongoose.model('Token'); + , createToken = require('../mockToken') + // TODO: require for side-effects smells + , EventModel = require('../../lib/models/event') + , TeamModel = require('../../lib/models/team') + , TokenModel = require('../../lib/models/token') + , SecurePropertyAppender = require('../../lib/security/utilities/secure-property-appender') + , AuthenticationConfiguration = require('../../lib/models/authenticationconfiguration'); require('sinon-mongoose'); -// TODO: require for side-effects smells -require('../../lib/models/event'); -var EventModel = mongoose.model('Event'); - -require('../../lib/models/team'); -var TeamModel = mongoose.model('Team'); - -var Observation = require('../../lib/models/observation'); -var observationModel = Observation.observationModel; - -const SecurePropertyAppender = require('../../lib/security/utilities/secure-property-appender'); -const AuthenticationConfiguration = require('../../lib/models/authenticationconfiguration'); +const Observation = require('../../lib/models/observation'); +const observationModel = Observation.observationModel; describe("marking favorite observations", function () { @@ -28,7 +26,7 @@ describe("marking favorite observations", function () { const userId = mongoose.Types.ObjectId(); beforeEach(function () { - const mockEvent = new EventModel({ + const mockEvent = { _id: 1, name: 'Event 1', collectionName: 'observations1', @@ -57,11 +55,11 @@ describe("marking favorite observations", function () { userFields: [] }, acl: {} - }); + }; mockEvent.acl[userId] = 'GUEST'; sinon.mock(EventModel) - .expects('findById') + .expects('getById') .yields(null, mockEvent); const configs = []; @@ -88,18 +86,16 @@ describe("marking favorite observations", function () { function mockTokenWithPermission(permission) { sinon.mock(TokenModel) - .expects('findOne') - .withArgs({ token: "12345" }) - .chain('populate', 'userId') - .chain('exec') - .yields(null, MockToken(userId, [permission])); + .expects('getToken') + .withArgs('12345') + .yields(null, createToken(userId, [permission])); } it("favorites an observation", function (done) { mockTokenWithPermission('CREATE_OBSERVATION'); sinon.mock(TeamModel) - .expects('find') + .expects('teamsForUserInEvent') .yields(null, [{ name: 'Team 1' }]); const ObservationModel = observationModel({ @@ -149,17 +145,17 @@ describe("marking favorite observations", function () { mockTokenWithPermission('CREATE_OBSERVATION'); sinon.mock(TeamModel) - .expects('find') + .expects('teamsForUserInEvent') .yields(null, [{ name: 'Team 1' }]); - var ObservationModel = observationModel({ + const ObservationModel = observationModel({ _id: 1, name: 'Event 1', collectionName: 'observations1' }); - var observationId = mongoose.Types.ObjectId(); - var mockObservation = new ObservationModel({ + const observationId = mongoose.Types.ObjectId(); + const mockObservation = new ObservationModel({ _id: observationId, type: 'Feature', geometry: { @@ -185,9 +181,9 @@ describe("marking favorite observations", function () { .expect('Content-Type', /json/) .expect(function (res) { observationMock.verify(); - var observation = res.body; + const observation = res.body; should.exist(observation); - var favoriteUserIds = observation.favoriteUserIds; + const favoriteUserIds = observation.favoriteUserIds; should.exist(favoriteUserIds); favoriteUserIds.should.be.empty; }) diff --git a/service/test/observation/observationImportantTest.js b/service/test/observation/observationImportantTest.js index 5a45c51ae..0779da037 100644 --- a/service/test/observation/observationImportantTest.js +++ b/service/test/observation/observationImportantTest.js @@ -1,20 +1,19 @@ -var request = require('supertest') +'use strict'; + +const request = require('supertest') , sinon = require('sinon') , should = require('chai').should() , mongoose = require('mongoose') - , MockToken = require('../mockToken') - , TokenModel = mongoose.model('Token'); + , createToken = require('../mockToken') + , EventModel = require('../../lib/models/event') + , TokenModel = require('../../lib/models/token') + , SecurePropertyAppender = require('../../lib/security/utilities/secure-property-appender') + , AuthenticationConfiguration = require('../../lib/models/authenticationconfiguration'); require('sinon-mongoose'); -require('../../lib/models/event'); -var EventModel = mongoose.model('Event'); - -var Observation = require('../../lib/models/observation'); -var observationModel = Observation.observationModel; - -const SecurePropertyAppender = require('../../lib/security/utilities/secure-property-appender'); -const AuthenticationConfiguration = require('../../lib/models/authenticationconfiguration'); +const Observation = require('../../lib/models/observation'); +const observationModel = Observation.observationModel; describe("observation important tests", function () { @@ -22,7 +21,7 @@ describe("observation important tests", function () { beforeEach(function () { - var mockEvent = new EventModel({ + const mockEvent = { _id: 1, name: 'Event 1', collectionName: 'observations1', @@ -52,10 +51,10 @@ describe("observation important tests", function () { userFields: [] }], acl: {} - }); + }; sinon.mock(EventModel) - .expects('findById') + .expects('getById') .yields(null, mockEvent); const configs = []; @@ -80,27 +79,25 @@ describe("observation important tests", function () { sinon.restore(); }); - var userId = mongoose.Types.ObjectId(); + const userId = mongoose.Types.ObjectId(); function mockTokenWithPermissions(permissions) { sinon.mock(TokenModel) - .expects('findOne') - .withArgs({ token: "12345" }) - .chain('populate', 'userId') - .chain('exec') - .yields(null, MockToken(userId, permissions)); + .expects('getToken') + .withArgs('12345') + .yields(null, createToken(userId, permissions)); } it("should flag observation as important", function (done) { mockTokenWithPermissions(['CREATE_OBSERVATION', 'UPDATE_EVENT']); - var ObservationModel = observationModel({ + const ObservationModel = observationModel({ _id: 1, name: 'Event 1', collectionName: 'observations1' }); - var observationId = mongoose.Types.ObjectId(); - var mockObservation = new ObservationModel({ + const observationId = mongoose.Types.ObjectId(); + const mockObservation = new ObservationModel({ _id: observationId, type: 'Feature', geometry: { @@ -121,7 +118,7 @@ describe("observation important tests", function () { .withArgs(observationId.toString()) .yields(null, mockObservation); - var observationMock = sinon.mock(ObservationModel) + const observationMock = sinon.mock(ObservationModel) .expects('findByIdAndUpdate') .withArgs(observationId, sinon.match({ 'important': sinon.match({ userId: userId }) }), sinon.match.any) .chain('populate').withArgs({ path: 'userId', select: 'displayName' }) @@ -140,9 +137,9 @@ describe("observation important tests", function () { .expect('Content-Type', /json/) .expect(function (res) { observationMock.verify(); - var observation = res.body; + const observation = res.body; should.exist(observation); - var important = observation.important; + const important = observation.important; should.exist(important); important.should.have.property('userId').that.equals(userId.toString()); important.should.have.property('description').that.equals('test'); @@ -153,13 +150,13 @@ describe("observation important tests", function () { it("should fail to flag observation as important if observation does not exist", function (done) { mockTokenWithPermissions(['CREATE_OBSERVATION', 'UPDATE_EVENT']); - var ObservationModel = observationModel({ + const ObservationModel = observationModel({ _id: 1, name: 'Event 1', collectionName: 'observations1' }); - var observationId = mongoose.Types.ObjectId(); + const observationId = mongoose.Types.ObjectId(); sinon.mock(ObservationModel) .expects('findById') .withArgs(observationId.toString()) @@ -179,13 +176,13 @@ describe("observation important tests", function () { it("should fail to flag observation as important without permissions", function (done) { mockTokenWithPermissions(['CREATE_OBSERVATION']); - var ObservationModel = observationModel({ + const ObservationModel = observationModel({ _id: 1, name: 'Event 1', collectionName: 'observations1' }); - var observationId = mongoose.Types.ObjectId(); + const observationId = mongoose.Types.ObjectId(); sinon.mock(ObservationModel) .expects('findById') .withArgs(observationId.toString()) @@ -205,14 +202,14 @@ describe("observation important tests", function () { it("should remove observation important flag", function (done) { mockTokenWithPermissions(['CREATE_OBSERVATION', 'UPDATE_EVENT']); - var ObservationModel = observationModel({ + const ObservationModel = observationModel({ _id: 1, name: 'Event 1', collectionName: 'observations1' }); - var observationId = mongoose.Types.ObjectId(); - var mockObservation = new ObservationModel({ + const observationId = mongoose.Types.ObjectId(); + const mockObservation = new ObservationModel({ _id: observationId, type: 'Feature', geometry: { @@ -230,7 +227,7 @@ describe("observation important tests", function () { .withArgs(observationId.toString()) .yields(null, mockObservation); - var observationMock = sinon.mock(ObservationModel) + const observationMock = sinon.mock(ObservationModel) .expects('findByIdAndUpdate') .withArgs(observationId, sinon.match({ '$unset': { important: 1 } }), sinon.match.any) .yields(null, mockObservation); @@ -243,7 +240,7 @@ describe("observation important tests", function () { .expect('Content-Type', /json/) .expect(function (res) { observationMock.verify(); - var observation = res.body; + const observation = res.body; should.exist(observation); should.not.exist(observation.important); }) diff --git a/service/test/observation/observationReadTest.js b/service/test/observation/observationReadTest.js index 6729ea791..b4b719425 100644 --- a/service/test/observation/observationReadTest.js +++ b/service/test/observation/observationReadTest.js @@ -1,27 +1,24 @@ +'use strict'; + const request = require('supertest') , sinon = require('sinon') , should = require('chai').should() , mongoose = require('mongoose') , moment = require('moment') - , MockToken = require('../mockToken') - , TokenModel = mongoose.model('Token'); + , createToken = require('../mockToken') + , EventModel = require('../../lib/models/event') + , TeamModel = require('../../lib/models/team') + , TokenModel = require('../../lib/models/token') + , SecurePropertyAppender = require('../../lib/security/utilities/secure-property-appender') + , AuthenticationConfiguration = require('../../lib/models/authenticationconfiguration') + , { defaultEventPermissionsService: eventPermissions } = require('../../lib/permissions/permissions.events') + , { EventAccessType } = require('../../lib/entities/events/entities.events') require('sinon-mongoose'); -require('../../lib/models/team'); -const TeamModel = mongoose.model('Team'); - -require('../../lib/models/event'); -const EventModel = mongoose.model('Event'); - const Observation = require('../../lib/models/observation'); const observationModel = Observation.observationModel; -const SecurePropertyAppender = require('../../lib/security/utilities/secure-property-appender'); -const AuthenticationConfiguration = require('../../lib/models/authenticationconfiguration'); -const { defaultEventPermissionsService: eventPermissions } = require('../../lib/permissions/permissions.events'); -const { EventAccessType } = require('../../lib/entities/events/entities.events'); - describe("observation read tests", function () { let mockEvent; @@ -29,14 +26,14 @@ describe("observation read tests", function () { let app; beforeEach(function () { - mockEvent = new EventModel({ + mockEvent = { _id: 1, name: 'Event 1', collectionName: 'observations1', acl: {} - }); + }; sinon.mock(EventModel) - .expects('findById') + .expects('getById') .yields(null, mockEvent); userId = mongoose.Types.ObjectId() @@ -65,18 +62,16 @@ describe("observation read tests", function () { function mockTokenWithPermission(permission) { sinon.mock(TokenModel) - .expects('findOne') - .withArgs({ token: "12345" }) - .chain('populate', 'userId') - .chain('exec') - .yields(null, MockToken(userId, [permission])); + .expects('getToken') + .withArgs('12345') + .yields(null, createToken(userId, [permission])); } it("should get observations for any event", function (done) { mockTokenWithPermission('READ_OBSERVATION_ALL'); sinon.mock(TeamModel) - .expects('find') + .expects('teamsForUserInEvent') .yields(null, [{ name: 'Team 1' }]); const ObservationModel = observationModel({ @@ -259,7 +254,7 @@ describe("observation read tests", function () { mockTokenWithPermission('READ_OBSERVATION_ALL'); sinon.mock(TeamModel) - .expects('find') + .expects('teamsForUserInEvent') .yields(null, [{ name: 'Team 1' }]); var ObservationModel = observationModel({ @@ -310,7 +305,7 @@ describe("observation read tests", function () { mockTokenWithPermission('READ_OBSERVATION_ALL'); sinon.mock(TeamModel) - .expects('find') + .expects('teamsForUserInEvent') .yields(null, [{ name: 'Team 1' }]); var ObservationModel = observationModel({ @@ -361,7 +356,7 @@ describe("observation read tests", function () { mockTokenWithPermission('READ_OBSERVATION_ALL'); sinon.mock(TeamModel) - .expects('find') + .expects('teamsForUserInEvent') .yields(null, [{ name: 'Team 1' }]); var ObservationModel = observationModel({ @@ -415,7 +410,7 @@ describe("observation read tests", function () { mockTokenWithPermission('READ_OBSERVATION_ALL'); sinon.mock(TeamModel) - .expects('find') + .expects('teamsForUserInEvent') .yields(null, [{ name: 'Team 1' }]); var ObservationModel = observationModel({ @@ -472,7 +467,7 @@ describe("observation read tests", function () { mockTokenWithPermission('READ_OBSERVATION_ALL'); sinon.mock(TeamModel) - .expects('find') + .expects('teamsForUserInEvent') .yields(null, [{ name: 'Team 1' }]); var ObservationModel = observationModel({ @@ -654,7 +649,7 @@ describe("observation read tests", function () { mockTokenWithPermission('READ_OBSERVATION_ALL'); sinon.mock(TeamModel) - .expects('find') + .expects('teamsForUserInEvent') .yields(null, [{ name: 'Team 1' }]); var ObservationModel = observationModel({ @@ -697,7 +692,7 @@ describe("observation read tests", function () { mockTokenWithPermission('READ_OBSERVATION_ALL'); sinon.mock(TeamModel) - .expects('find') + .expects('teamsForUserInEvent') .yields(null, [{ name: 'Team 1' }]); var ObservationModel = observationModel({ @@ -721,7 +716,7 @@ describe("observation read tests", function () { mockTokenWithPermission('READ_OBSERVATION_ALL'); sinon.mock(TeamModel) - .expects('find') + .expects('teamsForUserInEvent') .yields(null, [{ name: 'Team 1' }]); var ObservationModel = observationModel({ diff --git a/service/test/pagingTest.js b/service/test/pagingTest.js index 75f955f28..cbb35e1c7 100644 --- a/service/test/pagingTest.js +++ b/service/test/pagingTest.js @@ -1,6 +1,6 @@ "use strict"; -var Paging = require('../lib/utilities/paging.js'), +const Paging = require('../lib/utilities/paging.js'), chai = require('chai'), sinon = require('sinon'), sinonChai = require('sinon-chai'), @@ -20,7 +20,7 @@ describe("Paging Tests", function () { }); it('Test page users', function (done) { - var countQuery = new mongoose.Query(); + const countQuery = new mongoose.Query(); sinon.stub(countQuery, 'count'); countQuery.count.returns(Promise.resolve(1)); @@ -28,7 +28,7 @@ describe("Paging Tests", function () { _id: '0' }; - var query = new mongoose.Query(); + const query = new mongoose.Query(); sinon.stub(query, 'sort').returns({ limit: sinon.stub().returnsThis(), skip: sinon.stub().returnsThis(), @@ -36,7 +36,7 @@ describe("Paging Tests", function () { }); let options = { limit: '10' }; - Paging.page(countQuery, query, options, 'users').then(pageInfo => { + Paging.countAndPage(countQuery, query, options, 'users').then(pageInfo => { const users = pageInfo['users']; expect(users).to.not.be.null; expect(users.length).to.equal(1); @@ -52,7 +52,7 @@ describe("Paging Tests", function () { }); it('Test page to end', function (done) { - var countQuery = new mongoose.Query(); + const countQuery = new mongoose.Query(); sinon.stub(countQuery, 'count'); countQuery.count.returns(Promise.resolve(2)); @@ -63,14 +63,14 @@ describe("Paging Tests", function () { _id: '1' }; - var query = new mongoose.Query(); + const query = new mongoose.Query(); sinon.stub(query, 'sort').returns({ limit: sinon.stub().returnsThis(), skip: sinon.stub().returnsThis(), exec: sinon.stub().resolves([user0]) }); - var query1 = new mongoose.Query(); + const query1 = new mongoose.Query(); sinon.stub(query1, 'sort').returns({ limit: sinon.stub().returnsThis(), skip: sinon.stub().returnsThis(), @@ -107,12 +107,12 @@ describe("Paging Tests", function () { }); it('Test page no results', function (done) { - var countQuery = new mongoose.Query(); + const countQuery = new mongoose.Query(); sinon.stub(countQuery, 'count'); countQuery.count.returns(Promise.resolve(0)); - var query = new mongoose.Query(); + const query = new mongoose.Query(); sinon.stub(query, 'sort').returns({ limit: sinon.stub().returnsThis(), skip: sinon.stub().returnsThis(), @@ -120,7 +120,7 @@ describe("Paging Tests", function () { }); let options = { limit: '10' }; - Paging.page(countQuery, query, options, 'users').then(pageInfo => { + Paging.countAndPage(countQuery, query, options, 'users').then(pageInfo => { const users = pageInfo['users']; expect(users).to.not.be.null; expect(users.length).to.equal(0); @@ -137,7 +137,7 @@ describe("Paging Tests", function () { }); it('Test page devices', function (done) { - var countQuery = new mongoose.Query(); + const countQuery = new mongoose.Query(); sinon.stub(countQuery, 'count'); countQuery.count.returns(Promise.resolve(10)); @@ -145,7 +145,7 @@ describe("Paging Tests", function () { _id: '0' }; - var query = new mongoose.Query(); + const query = new mongoose.Query(); sinon.stub(query, 'sort').returns({ limit: sinon.stub().returnsThis(), skip: sinon.stub().returnsThis(), @@ -153,7 +153,7 @@ describe("Paging Tests", function () { }); let options = { limit: '10' }; - Paging.page(countQuery, query, options, 'devices').then(pageInfo => { + Paging.countAndPage(countQuery, query, options, 'devices').then(pageInfo => { expect(pageInfo).to.not.be.null; expect(pageInfo.size).to.equal(1); expect(pageInfo['devices']).to.not.be.null; @@ -163,11 +163,11 @@ describe("Paging Tests", function () { }); it('Test page devices against users', function (done) { - sinon.mock(User.Model) + sinon.mock(User) .expects('count') .returns(5); - var mockUsers = [{ + const mockUsers = [{ _id: 'id1', username: 'test1' }, { @@ -175,12 +175,11 @@ describe("Paging Tests", function () { username: 'test2' }]; - sinon.mock(User.Model) - .expects('find') - .chain('exec') + sinon.mock(User) + .expects('getUsers') .returns(Promise.resolve(mockUsers)); - var mockDevices = [{ + const mockDevices = [{ _id: 'id0', description: 'test0' }, { @@ -188,15 +187,15 @@ describe("Paging Tests", function () { description: 'test1' }]; - var query = new mongoose.Query(); + const query = new mongoose.Query(); sinon.stub(query, 'sort').returns({ limit: sinon.stub().returnsThis(), skip: sinon.stub().returnsThis(), exec: sinon.stub().resolves(mockDevices) }); - sinon.mock(Device.Model) - .expects('find') + sinon.mock(Device) + .expects('getDevices') .returns(query); let options = { limit: '10' }; diff --git a/service/test/permissions/permissions.events.test.ts b/service/test/permissions/permissions.events.test.ts index 8e44d0a49..235975b91 100644 --- a/service/test/permissions/permissions.events.test.ts +++ b/service/test/permissions/permissions.events.test.ts @@ -102,9 +102,10 @@ describe('event permissions service', function() { id: 'team2', userIds: [ 'user3', 'user4', 'user5' ] } as Team + //TODO remove cast to any, was MageEventDocument const eventDoc = new MageEventModel({ _id: 2, - }) as MageEventDocument + }) as any const eventAttrs: MageEventAttrs = { id: 2 } as MageEventAttrs eventRepo.findTeamsInEvent(Arg.is((x: any) => Number(x.id) === 2)).resolves([ team1, team2 ]) const eventDocParticipation = await eventPermissions.userIsParticipantInEvent(eventDoc, 'user4') @@ -124,9 +125,10 @@ describe('event permissions service', function() { id: 'team2', userIds: [ 'user3', 'user4', 'user5' ] } as Team + //TODO remove cast to any, was MageEventDocument const eventDoc = new MageEventModel({ _id: 2, - }) as MageEventDocument + }) as any const eventAttrs: MageEventAttrs = { id: 2 } as MageEventAttrs eventRepo.findTeamsInEvent(Arg.is((x: any) => Number(x.id) === 2)).resolves([ team1, team2 ]) const eventDocParticipation = await eventPermissions.userIsParticipantInEvent(eventDoc, 'user6') diff --git a/service/test/permissions/permissions.systemInfo.test.ts b/service/test/permissions/permissions.systemInfo.test.ts new file mode 100644 index 000000000..27b72c6e0 --- /dev/null +++ b/service/test/permissions/permissions.systemInfo.test.ts @@ -0,0 +1,68 @@ +import { expect } from 'chai'; +import { RoleBasedSystemInfoPermissionService } from '../../lib/permissions/permissions.systemInfo'; +import { AppRequestContext } from '../../lib/app.api/app.api.global'; +import { + allPermissions, + SystemInfoPermission +} from '../../lib/entities/authorization/entities.permissions'; +import { ErrPermissionDenied } from '../../lib/app.api/app.api.errors'; +import { UserWithRole } from '../../lib/permissions/permissions.role-based.base'; + +describe('system info role-based permission service', function() { + let permissions: RoleBasedSystemInfoPermissionService; + + beforeEach(function() { + permissions = new RoleBasedSystemInfoPermissionService(); + }); + + it('denies read permission if user does not have read system info permission', async function() { + const ctx: AppRequestContext = { + requestToken: Symbol(), + requestingPrincipal() { + return ({ + username: 'neverever', + roleId: { + permissions: [allPermissions.READ_OBSERVATION_ALL] + } + } as unknown) as UserWithRole; + }, + locale() { + return null; + } + }; + + const denied = await permissions.ensureReadSystemInfoPermission(ctx); + + expect(denied?.code).to.equal(ErrPermissionDenied); + expect(denied?.data.subject).to.equal('neverever'); + expect(denied?.data.permission).to.equal( + SystemInfoPermission.READ_SYSTEM_INFO + ); + expect(denied?.data.object).to.be.null; // Expecting no object in the denied data as per the static icon example. + }); + + it('allows read permission if user has read system info permission', async function() { + const ctx: AppRequestContext = { + requestToken: Symbol(), + requestingPrincipal() { + return ({ + username: 'canread', + roleId: { + permissions: [SystemInfoPermission.READ_SYSTEM_INFO] + } + } as unknown) as UserWithRole; + }, + locale() { + return null; + } + }; + + const denied = await permissions.ensureReadSystemInfoPermission(ctx); + + expect(denied).to.be.null; // No permission denied error should be returned. + }); + + // If there's any other special permission behavior specific to SystemInfo, + // you can model another test case here similar to the static icon's "allows get permission always". +}); + diff --git a/service/test/team/teamCreateTest.js b/service/test/team/teamCreateTest.js index 7690f2035..47a77db95 100644 --- a/service/test/team/teamCreateTest.js +++ b/service/test/team/teamCreateTest.js @@ -1,16 +1,17 @@ -var request = require('supertest') +'use strict'; + +const request = require('supertest') , sinon = require('sinon') , mongoose = require('mongoose') - , MockToken = require('../mockToken') - , TokenModel = mongoose.model('Token'); + , createToken = require('../mockToken') + , TokenModel = require('../../lib/models/token') + , SecurePropertyAppender = require('../../lib/security/utilities/secure-property-appender') + , AuthenticationConfiguration = require('../../lib/models/authenticationconfiguration'); require('sinon-mongoose'); require('../../lib/models/team'); -var TeamModel = mongoose.model('Team'); - -const SecurePropertyAppender = require('../../lib/security/utilities/secure-property-appender'); -const AuthenticationConfiguration = require('../../lib/models/authenticationconfiguration'); +const TeamModel = mongoose.model('Team'); describe("team create tests", function() { @@ -39,28 +40,26 @@ describe("team create tests", function() { sinon.restore(); }); - var userId = mongoose.Types.ObjectId(); + const userId = mongoose.Types.ObjectId(); function mockTokenWithPermission(permission) { sinon.mock(TokenModel) - .expects('findOne') - .withArgs({token: "12345"}) - .chain('populate', 'userId') - .chain('exec') - .yields(null, MockToken(userId, [permission])); + .expects('getToken') + .withArgs('12345') + .yields(null, createToken(userId, [permission])); } it("should create team", function(done) { mockTokenWithPermission('CREATE_TEAM'); - var teamId = mongoose.Types.ObjectId(); - var eventId = 1; - var mockTeam = new TeamModel({ + const teamId = mongoose.Types.ObjectId(); + const eventId = 1; + const mockTeam = new TeamModel({ id: teamId, name: 'Mock Team', teamEventId: eventId }); - var acl = {}; + const acl = {}; acl[userId.toString()] = 'OWNER'; sinon.mock(TeamModel) .expects('create') diff --git a/service/test/team/teamDeleteTest.js b/service/test/team/teamDeleteTest.js index 9d5736c68..9dc7d754c 100644 --- a/service/test/team/teamDeleteTest.js +++ b/service/test/team/teamDeleteTest.js @@ -1,25 +1,24 @@ -var request = require('supertest') +'use strict'; + +const request = require('supertest') , sinon = require('sinon') , mongoose = require('mongoose') - , MockToken = require('../mockToken') - , TokenModel = mongoose.model('Token'); + , createToken = require('../mockToken') + , EventModel = require('../../lib/models/event') + , TokenModel = require('../../lib/models/token') + , SecurePropertyAppender = require('../../lib/security/utilities/secure-property-appender') + , AuthenticationConfiguration = require('../../lib/models/authenticationconfiguration'); require('sinon-mongoose'); require('../../lib/models/team'); -var TeamModel = mongoose.model('Team'); - -require('../../lib/models/event'); -var EventModel = mongoose.model('Event'); +const TeamModel = mongoose.model('Team'); -const SecurePropertyAppender = require('../../lib/security/utilities/secure-property-appender'); -const AuthenticationConfiguration = require('../../lib/models/authenticationconfiguration'); - -describe("team delete tests", function() { +describe("team delete tests", function () { let app; - beforeEach(function() { + beforeEach(function () { const configs = []; const config = { name: 'local', @@ -38,42 +37,40 @@ describe("team delete tests", function() { app = require('../../lib/express').app; }); - afterEach(function() { + afterEach(function () { sinon.restore(); }); - var userId = mongoose.Types.ObjectId(); + const userId = mongoose.Types.ObjectId(); function mockTokenWithPermission(permission) { sinon.mock(TokenModel) - .expects('findOne') - .withArgs({token: "12345"}) - .chain('populate', 'userId') - .chain('exec') - .yields(null, MockToken(userId, [permission])); + .expects('getToken') + .withArgs('12345') + .yields(null, createToken(userId, [permission])); } - it("should delete team", function(done) { + it("should delete team", function (done) { mockTokenWithPermission('DELETE_TEAM'); - var teamId = mongoose.Types.ObjectId(); - var eventId = 1; - var mockTeam = new TeamModel({ + const teamId = mongoose.Types.ObjectId(); + const eventId = 1; + const mockTeam = new TeamModel({ id: teamId, name: 'Team 1', teamEventId: eventId }); sinon.mock(TeamModel) - .expects('findOne').withArgs({_id: teamId.toString()}) + .expects('findOne').withArgs({ _id: teamId.toString() }) .chain('populate').withArgs('userIds') .chain('exec') .yields(null, mockTeam); sinon.mock(EventModel) - .expects('findById').withArgs(eventId) - .yields(null, new EventModel({ + .expects('getById') + .yields(null, { name: 'Mock Event' - })); + }); sinon.mock(mockTeam) .expects('remove') @@ -87,15 +84,15 @@ describe("team delete tests", function() { .end(done); }); - it("should delete team with acl delete", function(done) { + it("should delete team with acl delete", function (done) { mockTokenWithPermission(''); - var teamId = mongoose.Types.ObjectId(); - var eventId = 1; + const teamId = mongoose.Types.ObjectId(); + const eventId = 1; - var acl = {}; + const acl = {}; acl[userId.toString()] = 'OWNER'; - var mockTeam = new TeamModel({ + const mockTeam = new TeamModel({ id: teamId, teamEventId: eventId, name: 'Mock Team', @@ -103,16 +100,16 @@ describe("team delete tests", function() { }); sinon.mock(TeamModel) - .expects('findOne').withArgs({_id: teamId.toString()}) + .expects('findOne').withArgs({ _id: teamId.toString() }) .chain('populate').withArgs('userIds') .chain('exec') .yields(null, mockTeam); sinon.mock(EventModel) - .expects('findById').withArgs(eventId) - .yields(null, new EventModel({ + .expects('getById') + .yields(null, { name: 'Mock Event' - })); + }); sinon.mock(mockTeam) .expects('remove') @@ -126,15 +123,15 @@ describe("team delete tests", function() { .end(done); }); - it("should fail to delete team with no acl delete", function(done) { + it("should fail to delete team with no acl delete", function (done) { mockTokenWithPermission(''); - var teamId = mongoose.Types.ObjectId(); - var eventId = 1; + const teamId = mongoose.Types.ObjectId(); + const eventId = 1; - var acl = {}; + const acl = {}; acl[userId.toString()] = 'MANAGER'; - var mockTeam = new TeamModel({ + const mockTeam = new TeamModel({ id: teamId, teamEventId: eventId, name: 'Mock Team', @@ -142,7 +139,7 @@ describe("team delete tests", function() { }); sinon.mock(TeamModel) - .expects('findOne').withArgs({_id: teamId.toString()}) + .expects('findOne').withArgs({ _id: teamId.toString() }) .chain('populate').withArgs('userIds') .chain('exec') .yields(null, mockTeam); @@ -155,35 +152,35 @@ describe("team delete tests", function() { .end(done); }); - it("should not delete team specifically for event", function(done) { + it("should not delete team specifically for event", function (done) { mockTokenWithPermission('DELETE_TEAM'); - var teamId = mongoose.Types.ObjectId(); - var eventId = 1; - var mockTeam = new TeamModel({ + const teamId = mongoose.Types.ObjectId(); + const eventId = 1; + const mockTeam = new TeamModel({ id: teamId, name: 'Team 1', teamEventId: eventId }); sinon.mock(TeamModel) - .expects('findOne').withArgs({_id: teamId.toString()}) + .expects('findOne').withArgs({ _id: teamId.toString() }) .chain('populate').withArgs('userIds') .chain('exec') .yields(null, mockTeam); sinon.mock(EventModel) - .expects('findById').withArgs(eventId) - .yields(null, new EventModel({ + .expects('getById') + .yields(null, { name: 'Mock Event' - })); + }); request(app) .delete('/api/teams/' + teamId.toString()) .set('Accept', 'application/json') .set('Authorization', 'Bearer 12345') .expect(405) - .expect(function(res) { + .expect(function (res) { res.text.should.equal("Cannot delete an events team, event 'Mock Event' still exists."); }) .end(done); diff --git a/service/test/team/teamReadTest.js b/service/test/team/teamReadTest.js index 85816c43f..e9b57562b 100644 --- a/service/test/team/teamReadTest.js +++ b/service/test/team/teamReadTest.js @@ -1,23 +1,23 @@ -var request = require('supertest') +'use strict'; + +const request = require('supertest') , sinon = require('sinon') , mongoose = require('mongoose') - , MockToken = require('../mockToken') - , TokenModel = mongoose.model('Token'); + , createToken = require('../mockToken') + , TokenModel = require('../../lib/models/token') + , SecurePropertyAppender = require('../../lib/security/utilities/secure-property-appender') + , AuthenticationConfiguration = require('../../lib/models/authenticationconfiguration'); -require('chai').should(); require('sinon-mongoose'); require('../../lib/models/team'); -var TeamModel = mongoose.model('Team'); - -const SecurePropertyAppender = require('../../lib/security/utilities/secure-property-appender'); -const AuthenticationConfiguration = require('../../lib/models/authenticationconfiguration'); +const TeamModel = mongoose.model('Team'); -describe("team read tests", function() { +describe("team read tests", function () { let app; - beforeEach(function() { + beforeEach(function () { const configs = []; const config = { name: 'local', @@ -37,25 +37,23 @@ describe("team read tests", function() { }); - afterEach(function() { + afterEach(function () { sinon.restore(); }); - var userId = mongoose.Types.ObjectId(); + const userId = mongoose.Types.ObjectId(); function mockTokenWithPermission(permission) { sinon.mock(TokenModel) - .expects('findOne') - .withArgs({token: "12345"}) - .chain('populate', 'userId') - .chain('exec') - .yields(null, MockToken(userId, [permission])); + .expects('getToken') + .withArgs('12345') + .yields(null, createToken(userId, [permission])); } - it("should read teams", function(done) { + it("should read teams", function (done) { mockTokenWithPermission('READ_TEAM'); - var teamId = 1; - var mockTeam = new TeamModel({ + const teamId = 1; + const mockTeam = new TeamModel({ _id: teamId, name: 'Mock Team' }); @@ -74,28 +72,28 @@ describe("team read tests", function() { .end(done); }); - it("should filter read teams", function(done) { + it("should filter read teams", function (done) { mockTokenWithPermission(''); - var teamId = 1; - var acl = {}; + const teamId = 1; + const acl = {}; acl[userId.toString()] = 'GUEST'; - var mockTeam = new TeamModel({ + const mockTeam = new TeamModel({ id: teamId, name: 'Mock Team', acl: acl }); - var aclOwner = {}; + const aclOwner = {}; aclOwner['acl.' + userId.toString()] = 'OWNER'; - var aclManager = {}; + const aclManager = {}; aclManager['acl.' + userId.toString()] = 'MANAGER'; - var aclGuest= {}; + const aclGuest = {}; aclGuest['acl.' + userId.toString()] = 'GUEST'; sinon.mock(TeamModel) .expects('find') - .withArgs({$or: [{ userIds: { $in: [userId] } }, aclOwner, aclManager, aclGuest]}) + .withArgs({ $or: [{ userIds: { $in: [userId] } }, aclOwner, aclManager, aclGuest] }) .chain('populate').withArgs('userIds') .chain('exec') .yields(null, [mockTeam]); diff --git a/service/test/team/teamUpdateTest.js b/service/test/team/teamUpdateTest.js index 4c4f27472..9cb59cfe6 100644 --- a/service/test/team/teamUpdateTest.js +++ b/service/test/team/teamUpdateTest.js @@ -1,22 +1,23 @@ -var request = require('supertest') +'use strict'; + +const request = require('supertest') , sinon = require('sinon') , mongoose = require('mongoose') - , MockToken = require('../mockToken') - , TokenModel = mongoose.model('Token'); + , createToken = require('../mockToken') + , TokenModel = require('../../lib/models/token') + , SecurePropertyAppender = require('../../lib/security/utilities/secure-property-appender') + , AuthenticationConfiguration = require('../../lib/models/authenticationconfiguration'); require('sinon-mongoose'); require('../../lib/models/team'); -var TeamModel = mongoose.model('Team'); - -const SecurePropertyAppender = require('../../lib/security/utilities/secure-property-appender'); -const AuthenticationConfiguration = require('../../lib/models/authenticationconfiguration'); +const TeamModel = mongoose.model('Team'); -describe("team update tests", function() { +describe("team update tests", function () { let app; - beforeEach(function() { + beforeEach(function () { const configs = []; const config = { name: 'local', @@ -35,33 +36,31 @@ describe("team update tests", function() { app = require('../../lib/express').app; }); - afterEach(function() { + afterEach(function () { sinon.restore(); }); - var userId = mongoose.Types.ObjectId(); + const userId = mongoose.Types.ObjectId(); function mockTokenWithPermission(permission) { sinon.mock(TokenModel) - .expects('findOne') - .withArgs({token: "12345"}) - .chain('populate', 'userId') - .chain('exec') - .yields(null, MockToken(userId, [permission])); + .expects('getToken') + .withArgs('12345') + .yields(null, createToken(userId, [permission])); } - it("should update team", function(done) { + it("should update team", function (done) { mockTokenWithPermission('UPDATE_TEAM'); - var teamId = mongoose.Types.ObjectId(); - var eventId = 1; - var mockTeam = new TeamModel({ + const teamId = mongoose.Types.ObjectId(); + const eventId = 1; + const mockTeam = new TeamModel({ id: teamId, name: 'Mock Team', teamEventId: eventId }); sinon.mock(TeamModel) - .expects('findOne').withArgs({_id: teamId.toString()}) + .expects('findOne').withArgs({ _id: teamId.toString() }) .chain('populate').withArgs('userIds') .chain('exec') .yields(null, mockTeam); @@ -81,14 +80,14 @@ describe("team update tests", function() { .end(done); }); - it("should update team with acl access", function(done) { + it("should update team with acl access", function (done) { mockTokenWithPermission(''); - var teamId = mongoose.Types.ObjectId(); - var eventId = 1; - var acl = {}; + const teamId = mongoose.Types.ObjectId(); + const eventId = 1; + const acl = {}; acl[userId.toString()] = 'MANAGER'; - var mockTeam = new TeamModel({ + const mockTeam = new TeamModel({ id: teamId, name: 'Mock Team', teamEventId: eventId, @@ -96,7 +95,7 @@ describe("team update tests", function() { }); sinon.mock(TeamModel) - .expects('findOne').withArgs({_id: teamId.toString()}) + .expects('findOne').withArgs({ _id: teamId.toString() }) .chain('populate').withArgs('userIds') .chain('exec') .yields(null, mockTeam); @@ -116,14 +115,14 @@ describe("team update tests", function() { .end(done); }); - it("should reject update team without acl access", function(done) { + it("should reject update team without acl access", function (done) { mockTokenWithPermission(''); - var teamId = mongoose.Types.ObjectId(); - var eventId = 1; - var acl = {}; + const teamId = mongoose.Types.ObjectId(); + const eventId = 1; + const acl = {}; acl[userId.toString()] = 'GUEST'; - var mockTeam = new TeamModel({ + const mockTeam = new TeamModel({ id: teamId, name: 'Mock Team', teamEventId: eventId, @@ -131,7 +130,7 @@ describe("team update tests", function() { }); sinon.mock(TeamModel) - .expects('findOne').withArgs({_id: teamId.toString()}) + .expects('findOne').withArgs({ _id: teamId.toString() }) .chain('populate').withArgs('userIds') .chain('exec') .yields(null, mockTeam); @@ -147,14 +146,14 @@ describe("team update tests", function() { .end(done); }); - it("should update user in acl for team", function(done) { + it("should update user in acl for team", function (done) { mockTokenWithPermission(''); - var aclUserId = mongoose.Types.ObjectId(); + const aclUserId = mongoose.Types.ObjectId(); - var teamId = mongoose.Types.ObjectId(); - var acl = {}; + const teamId = mongoose.Types.ObjectId(); + const acl = {}; acl[userId.toString()] = 'MANAGER'; - var mockTeam = new TeamModel({ + const mockTeam = new TeamModel({ _id: teamId, name: 'Mock Team', acl: acl @@ -165,11 +164,11 @@ describe("team update tests", function() { .chain('exec') .yields(null, mockTeam); - var update = {}; + const update = {}; update['acl.' + aclUserId.toString()] = 'OWNER'; sinon.mock(TeamModel) .expects('findOneAndUpdate') - .withArgs({_id: teamId}, update) + .withArgs({ _id: teamId }, update) .yields(null, mockTeam); request(app) @@ -183,14 +182,14 @@ describe("team update tests", function() { .end(done); }); - it("should delete user in acl for team", function(done) { + it("should delete user in acl for team", function (done) { mockTokenWithPermission(''); - var aclUserId = mongoose.Types.ObjectId(); + const aclUserId = mongoose.Types.ObjectId(); - var teamId = mongoose.Types.ObjectId(); - var acl = {}; + const teamId = mongoose.Types.ObjectId(); + const acl = {}; acl[userId.toString()] = 'MANAGER'; - var mockTeam = new TeamModel({ + const mockTeam = new TeamModel({ _id: teamId, name: 'Mock Team', acl: acl @@ -201,11 +200,11 @@ describe("team update tests", function() { .chain('exec') .yields(null, mockTeam); - var args = { $unset: {} }; + const args = { $unset: {} }; args.$unset['acl.' + aclUserId.toString()] = true; sinon.mock(TeamModel) .expects('findOneAndUpdate') - .withArgs({_id: teamId}, args) + .withArgs({ _id: teamId }, args) .yields(null, mockTeam); request(app) @@ -217,14 +216,14 @@ describe("team update tests", function() { .end(done); }); - it("should reject update user in acl with invalid userId", function(done) { + it("should reject update user in acl with invalid userId", function (done) { mockTokenWithPermission(''); - var aclUserId = mongoose.Types.ObjectId(); + const aclUserId = mongoose.Types.ObjectId(); - var teamId = mongoose.Types.ObjectId(); - var acl = {}; + const teamId = mongoose.Types.ObjectId(); + const acl = {}; acl[userId.toString()] = 'MANAGER'; - var mockTeam = new TeamModel({ + const mockTeam = new TeamModel({ _id: teamId, name: 'Mock Team', acl: acl @@ -235,11 +234,11 @@ describe("team update tests", function() { .chain('exec') .yields(null, mockTeam); - var update = {}; + const update = {}; update['acl.' + aclUserId.toString()] = 'MANAGER'; sinon.mock(TeamModel) .expects('findOneAndUpdate') - .withArgs({_id: teamId}, update) + .withArgs({ _id: teamId }, update) .yields(null, mockTeam); request(app) @@ -253,14 +252,14 @@ describe("team update tests", function() { .end(done); }); - it("should reject update user in acl with invalid role", function(done) { + it("should reject update user in acl with invalid role", function (done) { mockTokenWithPermission(''); - var aclUserId = mongoose.Types.ObjectId(); + const aclUserId = mongoose.Types.ObjectId(); - var teamId = mongoose.Types.ObjectId(); - var acl = {}; + const teamId = mongoose.Types.ObjectId(); + const acl = {}; acl[userId.toString()] = 'MANAGER'; - var mockTeam = new TeamModel({ + const mockTeam = new TeamModel({ _id: teamId, name: 'Mock Team', acl: acl @@ -271,11 +270,11 @@ describe("team update tests", function() { .chain('exec') .yields(null, mockTeam); - var update = {}; + const update = {}; update['acl.' + aclUserId.toString()] = 'MANAGER'; sinon.mock(TeamModel) .expects('findOneAndUpdate') - .withArgs({_id: teamId}, update) + .withArgs({ _id: teamId }, update) .yields(null, mockTeam); request(app) diff --git a/service/test/user/passwordValidatorTest.js b/service/test/user/passwordValidatorTest.js index c74216329..3002e3405 100644 --- a/service/test/user/passwordValidatorTest.js +++ b/service/test/user/passwordValidatorTest.js @@ -4,20 +4,15 @@ const chai = require('chai') , expect = require("chai").expect , util = require('util') , mongoose = require('mongoose') + , TokenModel = require('../../lib/models/token') + , UserModel = require('../../lib/models/user') + , Authentication = require('../../lib/models/authentication') + , AuthenticationConfiguration = require('../../lib/models/authenticationconfiguration') , PasswordValidator = require('../../lib/utilities/passwordValidator') , hasher = require('../../lib/utilities/pbkdf2')(); chai.use(sinonChai); -require('../../lib/models/user'); -const UserModel = mongoose.model('User'); - -require('../../lib/models/token'); -const TokenModel = mongoose.model('Token'); - -const Authentication = require('../../lib/models/authentication'); -const AuthenticationConfiguration = require('../../lib/models/authenticationconfiguration'); - describe("Password Validator Tests", function () { afterEach(function () { @@ -510,14 +505,11 @@ describe("Password Validator Tests", function () { }); sinon.mock(UserModel) - .expects('findOne') - .chain('populate') - .chain('populate') - .chain('exec') - .resolves({}); + .expects('getUserByUsername') + .yields(null, {}); sinon.mock(TokenModel) - .expects('remove') + .expects('removeTokensForUser') .yields(null, {}); const authentication = new Authentication.Local({ @@ -573,15 +565,11 @@ describe("Password Validator Tests", function () { }); sinon.mock(UserModel) - .expects('findOne') - .withArgs({ authenticationId: authentication._id }) - .chain('populate') - .chain('exec') - .resolves(user) + .expects('getUserByAuthenticationId') + .yields(null, user) sinon.mock(TokenModel) - .expects('remove') - .withArgs({ userId: user._id }) + .expects('removeTokensForUser') .yields(null, {}) sinon.mock(Authentication.Model.collection) diff --git a/service/test/user/userAuthenticationTest.js b/service/test/user/userAuthenticationTest.js index 5e3096da5..e776f593e 100644 --- a/service/test/user/userAuthenticationTest.js +++ b/service/test/user/userAuthenticationTest.js @@ -1,42 +1,23 @@ "use strict"; -const request = require('supertest') - , sinon = require('sinon') - , expect = require('chai').expect - , moment = require('moment') - , MockToken = require('../mockToken') - , mongoose = require('mongoose'); - -require('../../lib/models/token'); -const TokenModel = mongoose.model('Token'); - -require('../../lib/models/login'); -const LoginModel = mongoose.model('Login'); - -require('../../lib/models/device'); -const DeviceModel = mongoose.model('Device'); - -require('../../lib/models/user'); -const UserModel = mongoose.model('User'); - -const Authentication = require('../../lib/models/authentication'); +const sinon = require('sinon') + , mongoose = require('mongoose') + , createToken = require('../mockToken') + , TokenModel = require('../../lib/models/token') + , SecurePropertyAppender = require('../../lib/security/utilities/secure-property-appender') + , AuthenticationConfiguration = require('../../lib/models/authenticationconfiguration'); require('sinon-mongoose'); -const SecurePropertyAppender = require('../../lib/security/utilities/secure-property-appender'); -const AuthenticationConfiguration = require('../../lib/models/authenticationconfiguration'); - describe("user authentication tests", function () { let app; beforeEach(function () { sinon.mock(TokenModel) - .expects('findOne') - .withArgs({ token: "12345" }) - .chain('populate', 'userId') - .chain('exec') - .yields(null, MockToken(mongoose.Types.ObjectId(), ['READ_USER'])); + .expects('getToken') + .withArgs('12345') + .yields(null, createToken(mongoose.Types.ObjectId(), ['READ_USER'])); const configs = []; const config = { diff --git a/service/test/user/userCreateTest.js b/service/test/user/userCreateTest.js index 7e7fde496..d9c7dda01 100644 --- a/service/test/user/userCreateTest.js +++ b/service/test/user/userCreateTest.js @@ -1,34 +1,32 @@ +'use strict'; + const request = require('supertest') , sinon = require('sinon') , should = require('chai').should() , expect = require('chai').expect - , MockToken = require('../mockToken') - , mongoose = require('mongoose'); - -require('../../lib/models/token'); -const TokenModel = mongoose.model('Token'); - -require('../../lib/models/role'); -const RoleModel = mongoose.model('Role'); + , mongoose = require('mongoose') + , createToken = require('../mockToken') + , Token = require('../../lib/models/token') + , SecurePropertyAppender = require('../../lib/security/utilities/secure-property-appender') + , AuthenticationConfiguration = require('../../lib/models/authenticationconfiguration') + , Authentication = require('../../lib/models/authentication'); require('../../lib/models/user'); const UserModel = mongoose.model('User'); -require('../../lib/models/event'); -const EventModel = mongoose.model('Event'); - require('../../lib/models/team'); -var TeamModel = mongoose.model('Team'); +const TeamModel = mongoose.model('Team'); + +const Role = require('../../lib/models/role'); +const RoleModel = mongoose.model('Role'); -const Authentication = require('../../lib/models/authentication'); +require('../../lib/models/event'); +const EventModel = mongoose.model('Event') const svgCaptcha = require('svg-captcha'); require('sinon-mongoose'); -const SecurePropertyAppender = require('../../lib/security/utilities/secure-property-appender'); -const AuthenticationConfiguration = require('../../lib/models/authenticationconfiguration'); - let app; async function captcha() { @@ -54,7 +52,7 @@ async function captcha() { describe("user create tests", function () { - beforeEach(function() { + beforeEach(function () { const configs = []; const config = { name: 'local', @@ -70,6 +68,12 @@ describe("user create tests", function () { .expects('appendToConfig') .resolves(config); + sinon.mock(Role) + .expects('getRole') + .yields(null, { + permissions: ['SOME_PERMISSIONS'] + }); + app = require('../../lib/express').app; }); @@ -79,12 +83,10 @@ describe("user create tests", function () { const userId = mongoose.Types.ObjectId(); function mockTokenWithPermission(permission) { - sinon.mock(TokenModel) - .expects('findOne') - .withArgs({ token: "12345" }) - .chain('populate', 'userId') - .chain('exec') - .yields(null, MockToken(userId, [permission])); + sinon.mock(Token) + .expects('getToken') + .withArgs('12345') + .yields(null, createToken(userId, [permission])); } it('should create user as admin', function (done) { @@ -228,13 +230,6 @@ describe("user create tests", function () { let jwt = await captcha(); - sinon.mock(RoleModel) - .expects('findOne') - .withArgs({ name: 'USER_ROLE' }) - .yields(null, new RoleModel({ - permissions: ['SOME_PERMISSIONS'] - })); - const id = mongoose.Types.ObjectId(); const mockUser = new UserModel({ _id: id, @@ -307,13 +302,6 @@ describe("user create tests", function () { let jwt = await captcha(); - sinon.mock(RoleModel) - .expects('findOne') - .withArgs({ name: 'USER_ROLE' }) - .yields(null, new RoleModel({ - permissions: ['SOME_PERMISSIONS'] - })); - const id = mongoose.Types.ObjectId(); const mockUser = new UserModel({ _id: id, @@ -386,13 +374,6 @@ describe("user create tests", function () { let jwt = await captcha(); - sinon.mock(RoleModel) - .expects('findOne') - .withArgs({ name: 'USER_ROLE' }) - .yields(null, new RoleModel({ - permissions: ['SOME_PERMISSIONS'] - })); - const id = mongoose.Types.ObjectId(); const mockUser = new UserModel({ _id: id, @@ -568,13 +549,6 @@ describe("user create tests", function () { let jwt = await captcha(); - sinon.mock(RoleModel) - .expects('findOne') - .withArgs({ name: 'USER_ROLE' }) - .yields(null, new RoleModel({ - permissions: ['SOME_PERMISSIONS'] - })); - const id = mongoose.Types.ObjectId(); const mockUser = new UserModel({ _id: id, @@ -741,13 +715,6 @@ describe("user create tests", function () { let jwt = await captcha(); - sinon.mock(RoleModel) - .expects('findOne') - .withArgs({ name: 'USER_ROLE' }) - .yields(null, new RoleModel({ - permissions: ['SOME_PERMISSIONS'] - })); - const authConfig = { _id: mongoose.Types.ObjectId(), type: 'local', @@ -790,13 +757,6 @@ describe("user create tests", function () { it('should fail to create user with no captcha token', async function () { mockTokenWithPermission('NO_PERMISSIONS'); - sinon.mock(RoleModel) - .expects('findOne') - .withArgs({ name: 'USER_ROLE' }) - .yields(null, new RoleModel({ - permissions: ['SOME_PERMISSIONS'] - })); - await request(app) .post('/api/users/signups/verifications') .set('Accept', 'application/json') @@ -815,13 +775,6 @@ describe("user create tests", function () { it('should fail to create user with invalid captcha token', async function () { mockTokenWithPermission('NO_PERMISSIONS'); - sinon.mock(RoleModel) - .expects('findOne') - .withArgs({ name: 'USER_ROLE' }) - .yields(null, new RoleModel({ - permissions: ['SOME_PERMISSIONS'] - })); - await request(app) .post('/api/users/signups/verifications') .set('Accept', 'application/json') @@ -843,13 +796,6 @@ describe("user create tests", function () { let jwt = await captcha(); - sinon.mock(RoleModel) - .expects('findOne') - .withArgs({ name: 'USER_ROLE' }) - .yields(null, new RoleModel({ - permissions: ['SOME_PERMISSIONS'] - })); - await request(app) .post('/api/users/signups/verifications') .set('Accept', 'application/json') diff --git a/service/test/user/userDeleteTest.js b/service/test/user/userDeleteTest.js index b7167d364..274b843be 100644 --- a/service/test/user/userDeleteTest.js +++ b/service/test/user/userDeleteTest.js @@ -2,25 +2,22 @@ const request = require('supertest') , sinon = require('sinon') - , MockToken = require('../mockToken') - , mongoose = require('mongoose'); - -require('../../lib/models/token'); -const TokenModel = mongoose.model('Token'); + , mongoose = require('mongoose') + , createToken = require('../mockToken') + , TokenModel = require('../../lib/models/token') + , SecurePropertyAppender = require('../../lib/security/utilities/secure-property-appender') + , AuthenticationConfiguration = require('../../lib/models/authenticationconfiguration'); require('../../lib/models/user'); const UserModel = mongoose.model('User'); require('sinon-mongoose'); -const SecurePropertyAppender = require('../../lib/security/utilities/secure-property-appender'); -const AuthenticationConfiguration = require('../../lib/models/authenticationconfiguration'); - -describe("user delete tests", function() { +describe("user delete tests", function () { let app; - beforeEach(function() { + beforeEach(function () { const configs = []; const config = { name: 'local', @@ -39,21 +36,19 @@ describe("user delete tests", function() { app = require('../../lib/express').app; }); - afterEach(function() { + afterEach(function () { sinon.restore(); }); const userId = mongoose.Types.ObjectId(); function mockTokenWithPermission(permission) { sinon.mock(TokenModel) - .expects('findOne') - .withArgs({token: "12345"}) - .chain('populate', 'userId') - .chain('exec') - .yields(null, MockToken(userId, [permission])); + .expects('getToken') + .withArgs('12345') + .yields(null, createToken(userId, [permission])); } - it('should delete user by id', function(done) { + it('should delete user by id', function (done) { mockTokenWithPermission('DELETE_USER'); const id = mongoose.Types.ObjectId(); diff --git a/service/test/user/userReadTest.js b/service/test/user/userReadTest.js index 3c23b5541..26a3bbfee 100644 --- a/service/test/user/userReadTest.js +++ b/service/test/user/userReadTest.js @@ -26,23 +26,19 @@ const request = require('supertest'); const sinon = require('sinon'); const should = require('chai').should(); const expect = require('chai').expect; -const MockToken = require('../mockToken'); const mockfs = require('mock-fs'); const mongoose = require('mongoose'); -const util = require('util'); - -require('../../lib/models/token'); -const TokenModel = mongoose.model('Token'); +const createToken = require('../mockToken'); +const TokenModel = require('../../lib/models/token'); +const SecurePropertyAppender = require('../../lib/security/utilities/secure-property-appender'); +const AuthenticationConfiguration = require('../../lib/models/authenticationconfiguration'); +const Authentication = require('../../lib/models/authentication'); require('../../lib/models/user'); const UserModel = mongoose.model('User'); require('sinon-mongoose'); -const SecurePropertyAppender = require('../../lib/security/utilities/secure-property-appender'); -const AuthenticationConfiguration = require('../../lib/models/authenticationconfiguration'); -const Authentication = require('../../lib/models/authentication'); - describe("user read tests", function() { let app; @@ -72,12 +68,12 @@ describe("user read tests", function() { const userId = mongoose.Types.ObjectId(); function mockTokenWithPermission(permission) { + const token = createToken(userId, [ permission ]); sinon.mock(TokenModel) - .expects('findOne') - .withArgs({token: "12345"}) - .chain('populate', 'userId') - .chain('exec') - .yields(null, MockToken(userId, [permission])); + .expects('getToken') + .withArgs('12345') + .yields(null, token); + return token; } it('should count users', function(done) { @@ -376,7 +372,8 @@ describe("user read tests", function() { }); it('should get myself', async function() { - mockTokenWithPermission('READ_USER'); + + const token = mockTokenWithPermission('READ_USER'); const res = await request(app) .get('/api/users/myself') @@ -387,6 +384,8 @@ describe("user read tests", function() { expect(res.type).to.match(/json/); expect(res.body).be.an('object'); expect(res.body.id).to.equal(userId.toString()); + expect(res.body.role.id).to.equal(token.user.roleId._id.toHexString()) + expect(res.body.role.permissions).to.deep.equal(token.user.roleId.permissions) }); it('should get user avatar', function(done) { diff --git a/service/test/user/userUpdateTest.js b/service/test/user/userUpdateTest.js index f20868644..bf56cdff1 100644 --- a/service/test/user/userUpdateTest.js +++ b/service/test/user/userUpdateTest.js @@ -4,27 +4,25 @@ const request = require('supertest') , sinon = require('sinon') , should = require('chai').should() , { expect } = require('chai') - , MockToken = require('../mockToken') - , mongoose = require('mongoose'); - -require('../../lib/models/token'); + , mongoose = require('mongoose') + , createToken = require('../mockToken') + , SecurePropertyAppender = require('../../lib/security/utilities/secure-property-appender') + , AuthenticationConfiguration = require('../../lib/models/authenticationconfiguration') + , Authentication = require('../../lib/models/authentication') + , { defaultEventPermissionsService: eventPermissions } = require('../../lib/permissions/permissions.events') + , { EventAccessType } = require('../../lib/entities/events/entities.events'); + +const TokenOperations = require('../../lib/models/token'); const TokenModel = mongoose.model('Token'); -const User = require('../../lib/models/user'); +const UserOperations = require('../../lib/models/user'); const UserModel = mongoose.model('User'); -require('../../lib/models/event'); +const EventOperations = require('../../lib/models/event'); const EventModel = mongoose.model('Event'); -const Authentication = require('../../lib/models/authentication'); - require('sinon-mongoose'); -const SecurePropertyAppender = require('../../lib/security/utilities/secure-property-appender'); -const AuthenticationConfiguration = require('../../lib/models/authenticationconfiguration'); -const { defaultEventPermissionsService: eventPermissions } = require('../../lib/permissions/permissions.events'); -const { EventAccessType } = require('../../lib/entities/events/entities.events'); - describe("user update tests", function () { let app; @@ -55,12 +53,9 @@ describe("user update tests", function () { const userId = mongoose.Types.ObjectId(); function mockTokenWithPermission(permission) { const permissions = Array.isArray(permission) ? permission : [permission]; - sinon.mock(TokenModel) - .expects('findOne') - .withArgs({ token: "12345" }) - .chain('populate', 'userId') - .chain('exec') - .yields(null, MockToken(userId, permissions)); + sinon.mock(TokenOperations) + .expects('getToken') + .yields(null, createToken(userId, permissions)); } it('should update myself', function (done) { @@ -289,12 +284,9 @@ describe("user update tests", function () { }); it('should update user role with UPDATE_USER_ROLE', function (done) { - sinon.mock(TokenModel) - .expects('findOne') - .withArgs({ token: "12345" }) - .chain('populate', 'userId') - .chain('exec') - .yields(null, MockToken(userId, ['UPDATE_USER', 'UPDATE_USER_ROLE'])); + sinon.mock(TokenOperations) + .expects('getToken') + .yields(null, createToken(userId, ['UPDATE_USER', 'UPDATE_USER_ROLE'])); const id = mongoose.Types.ObjectId(); const roleId = mongoose.Types.ObjectId(); @@ -312,7 +304,7 @@ describe("user update tests", function () { .chain('populate', 'authenticationId') .resolves(mockUser); - sinon.mock(User) + sinon.mock(UserOperations) .expects('updateUser') .withArgs(sinon.match.has('roleId', roleId)) .yields(null, mockUser); @@ -363,7 +355,7 @@ describe("user update tests", function () { .chain('populate', 'authenticationId') .resolves(mockUser); - sinon.mock(User) + sinon.mock(UserOperations) .expects('updateUser') .withArgs(sinon.match.has('authentication', sinon.match.has('password', 'passwordpassword'))) .yields(null, mockUser); @@ -443,7 +435,7 @@ describe("user update tests", function () { .chain('populate', 'authenticationId') .resolves(mockUser); - sinon.mock(User) + sinon.mock(UserOperations) .expects('updateUser').never(); request(app) @@ -484,7 +476,7 @@ describe("user update tests", function () { .chain('populate', 'authenticationId') .resolves(mockUser); - sinon.mock(User) + sinon.mock(UserOperations) .expects('updateUser') .withArgs(sinon.match.has('roleId', undefined)) .yields(null, mockUser); @@ -530,7 +522,7 @@ describe("user update tests", function () { .chain('populate', 'authenticationId') .resolves(mockUser); - sinon.mock(User) + sinon.mock(UserOperations) .expects('updateUser') .withArgs(sinon.match({ active: true })) .yields(null, mockUser); @@ -564,7 +556,7 @@ describe("user update tests", function () { .chain('populate', 'authenticationId') .resolves(mockUser); - sinon.mock(User) + sinon.mock(UserOperations) .expects('updateUser') .withArgs(sinon.match({ enabled: false })) .yields(null, mockUser); @@ -609,7 +601,7 @@ describe("user update tests", function () { .resolves(mockUser); sinon.mock(UserModel.collection) - .expects('update') + .expects('updateOne') .yields(null, {}); sinon.mock(UserModel.collection) @@ -664,7 +656,7 @@ describe("user update tests", function () { .resolves(mockUser); sinon.mock(UserModel.collection) - .expects('update') + .expects('updateOne') .yields(null, {}); sinon.mock(UserModel.collection) @@ -952,17 +944,13 @@ describe("user update tests", function () { .chain('populate', 'authenticationId') .resolves(mockUser); - const mockEvent = new EventModel({ + const mockEvent = { _id: 1, name: 'Mock Event' - }); + }; - sinon.mock(EventModel) - .expects('findById') - .twice() - .onFirstCall() - .yields(null, mockEvent) - .onSecondCall() + sinon.mock(EventOperations) + .expects('getById') .yields(null, mockEvent); sinon.mock(UserModel) @@ -1026,12 +1014,8 @@ describe("user update tests", function () { acl: eventAcl }); - sinon.mock(EventModel) - .expects('findById') - .twice() - .onFirstCall() - .yields(null, mockEvent) - .onSecondCall() + sinon.mock(EventOperations) + .expects('getById') .yields(null, mockEvent); sinon.mock(UserModel) @@ -1078,12 +1062,8 @@ describe("user update tests", function () { acl: eventAcl }); - sinon.mock(EventModel) - .expects('findById') - .twice() - .onFirstCall() - .yields(null, mockEvent) - .onSecondCall() + sinon.mock(EventOperations) + .expects('getById') .yields(null, mockEvent); sinon.mock(UserModel) @@ -1122,16 +1102,14 @@ describe("user update tests", function () { .chain('populate', 'authenticationId') .resolves(mockUser); - const mockEvent1 = new EventModel({ + const mockEvent1 = { _id: 1, name: 'Mock Event 12345', acl: {} - }); + }; - sinon.mock(EventModel) - .expects('findById') - .twice() - .onFirstCall() + sinon.mock(EventOperations) + .expects('getById') .yields(null, mockEvent1); sinon.mock(eventPermissions) @@ -1182,12 +1160,8 @@ describe("user update tests", function () { acl: {} }); - sinon.mock(EventModel) - .expects('findById') - .twice() - .onFirstCall() - .yields(null, mockEvent) - .onSecondCall() + sinon.mock(EventOperations) + .expects('getById') .yields(null, mockEvent); sinon.mock(UserModel) diff --git a/service/test/utilities/authenticationApiAppenderTest.js b/service/test/utilities/authenticationApiAppenderTest.js index 8165ad6a7..3a5967c7c 100644 --- a/service/test/utilities/authenticationApiAppenderTest.js +++ b/service/test/utilities/authenticationApiAppenderTest.js @@ -1,150 +1,162 @@ -"use strict"; - -const AuthenticationApiAppender = require('../../lib/utilities/authenticationApiAppender.js') - , AuthenticationConfiguration = require('../../lib/models/authenticationconfiguration') - , sinon = require('sinon') - , expect = require("chai").expect - , mongoose = require('mongoose'); - -describe("Authentication API Appender Tests", function () { - - afterEach(function () { - sinon.restore(); - }); - - it('Test append is a copy', function (done) { - const api = { - name: 'testApi', - description: 'Test description', - authenticationStrategies: { - fakeAuth: { - username: 'test', - password: 'test' - } - } - }; - - const models = []; - - sinon.mock(AuthenticationConfiguration.Model) - .expects('find') - .resolves(models); - - AuthenticationApiAppender.append(api).then(appendedApi => { - expect(appendedApi).to.not.equal(api); - - done(); - }).catch(err => { - done(err); +'use strict'; + +const AuthenticationApiAppender = require('../../lib/utilities/authenticationApiAppender.js'), + AuthenticationConfigurationModel = require('../../lib/models/authenticationconfiguration'), + sinon = require('sinon'), + expect = require('chai').expect, + mongoose = require('mongoose'); + +describe('Authentication API Appender Tests', function() { + afterEach(function() { + sinon.restore(); + }); + + it('Test append is a copy', function(done) { + const api = { + name: 'testApi', + description: 'Test description', + authenticationStrategies: { + fakeAuth: { + username: 'test', + password: 'test' + } + } + }; + + const models = []; + + sinon + .mock(AuthenticationConfigurationModel) + .expects('getAllConfigurations') + .resolves(models); + + AuthenticationApiAppender.append(api) + .then(appendedApi => { + expect(appendedApi).to.not.equal(api); + + done(); + }) + .catch(err => { + done(err); + }); + }); + + it('Test append', function(done) { + const api = { + name: 'testApi', + description: 'Test description', + authenticationStrategies: { + fakeAuth: { + username: 'test', + password: 'test' + } + } + }; + + const models = []; + + const model0 = { + _id: mongoose.Types.ObjectId(), + type: 'local', + name: 'local', + enabled: true, + settings: {} + }; + models.push(model0); + + sinon + .mock(AuthenticationConfigurationModel) + .expects('getAllConfigurations') + .resolves(models); + + AuthenticationApiAppender.append(api) + .then(appendedApi => { + expect(appendedApi.name).to.equal(api.name); + expect(appendedApi.description).to.equal(api.description); + expect(appendedApi.authenticationStrategies.fakeAuth).to.be.undefined; + + models.forEach(model => { + expect(appendedApi.authenticationStrategies[model.name]).to.exist; }); - }); - - it('Test append', function (done) { - const api = { - name: 'testApi', - description: 'Test description', - authenticationStrategies: { - fakeAuth: { - username: 'test', - password: 'test' - } - } - }; - - const models = []; - - const model0 = new AuthenticationConfiguration.Model({ - _id: mongoose.Types.ObjectId(), - type: 'local', - name: 'local', - settings: {} - }); - models.push(model0); - - sinon.mock(AuthenticationConfiguration.Model) - .expects('find') - .resolves(models); - - AuthenticationApiAppender.append(api).then(appendedApi => { - expect(appendedApi.name).to.equal(api.name); - expect(appendedApi.description).to.equal(api.description); - expect(appendedApi.authenticationStrategies.fakeAuth).to.be.undefined; - - models.forEach(model => { - expect(appendedApi.authenticationStrategies[model.name]).to.exist; - }); - - done(); - }).catch(err => { - done(err); - }); - }); - - it('Test append with no strategies', function (done) { - const api = { - name: 'testApi', - description: 'Test description', - authenticationStrategies: { - } - }; - - const models = []; - - sinon.mock(AuthenticationConfiguration.Model) - .expects('find') - .resolves(models); - - AuthenticationApiAppender.append(api).then(appendedApi => { - expect(appendedApi.name).to.equal(api.name); - expect(appendedApi.description).to.equal(api.description); - expect(Object.keys(appendedApi.authenticationStrategies).length).to.equal(0); - - done(); - }).catch(err => { - done(err); - }); - }); - - it('Test append disabled auth', function (done) { - const api = { - name: 'testApi', - description: 'Test description', - authenticationStrategies: { - fakeAuth: { - username: 'test', - password: 'test' - } - } - }; - - const models = []; - - const model0 = new AuthenticationConfiguration.Model({ - _id: mongoose.Types.ObjectId(), - type: 'local', - name: 'local', - enabled: false, - settings: {} - }); - models.push(model0); - - sinon.mock(AuthenticationConfiguration.Model) - .expects('find') - .resolves(models); - - AuthenticationApiAppender.append(api).then(appendedApi => { - expect(appendedApi.name).to.equal(api.name); - expect(appendedApi.description).to.equal(api.description); - expect(appendedApi.authenticationStrategies.fakeAuth).to.be.undefined; - - models.forEach(model => { - expect(appendedApi.authenticationStrategies[model.name]).to.not.exist; - }); - done(); - }).catch(err => { - done(err); + done(); + }) + .catch(err => { + done(err); + }); + }); + + it('Test append with no strategies', function(done) { + const api = { + name: 'testApi', + description: 'Test description', + authenticationStrategies: {} + }; + + const models = []; + + sinon + .mock(AuthenticationConfigurationModel) + .expects('getAllConfigurations') + .resolves(models); + + AuthenticationApiAppender.append(api) + .then(appendedApi => { + expect(appendedApi.name).to.equal(api.name); + expect(appendedApi.description).to.equal(api.description); + expect( + Object.keys(appendedApi.authenticationStrategies).length + ).to.equal(0); + + done(); + }) + .catch(err => { + done(err); + }); + }); + + it('Test append disabled auth', function(done) { + const api = { + name: 'testApi', + description: 'Test description', + authenticationStrategies: { + fakeAuth: { + username: 'test', + password: 'test' + } + } + }; + + const models = []; + + const model0 = { + _id: mongoose.Types.ObjectId(), + type: 'local', + name: 'local', + enabled: false, + settings: {} + }; + models.push(model0); + + sinon + .mock(AuthenticationConfigurationModel) + .expects('getAllConfigurations') + .resolves(models); + + AuthenticationApiAppender.append(api) + .then(appendedApi => { + expect(appendedApi.name).to.equal(api.name); + expect(appendedApi.description).to.equal(api.description); + expect(appendedApi.authenticationStrategies.fakeAuth).to.be.undefined; + + models.forEach(model => { + expect(appendedApi.authenticationStrategies[model.name]).to.not.exist; }); - }); -}); \ No newline at end of file + done(); + }) + .catch(err => { + done(err); + }); + }); +}); diff --git a/service/tsconfig.json b/service/tsconfig.json index f4824d87a..747b0e6e5 100644 --- a/service/tsconfig.json +++ b/service/tsconfig.json @@ -31,6 +31,7 @@ // "strictPropertyInitialization": true, /* Enable strict checking of property initialization in classes. */ // "noImplicitThis": true, /* Raise error on 'this' expressions with an implied 'any' type. */ // "alwaysStrict": true, /* Parse in strict mode and emit "use strict" for each source file. */ + "skipLibCheck": true, /* Skip type checking of declaration files. */ /* Additional Checks */ // "noUnusedLocals": true, /* Report errors on unused locals. */ diff --git a/web-app/browserslist b/web-app/.browserslistrc similarity index 100% rename from web-app/browserslist rename to web-app/.browserslistrc diff --git a/web-app/.gitignore b/web-app/.gitignore index ea9cbf41c..7ad8b75b2 100644 --- a/web-app/.gitignore +++ b/web-app/.gitignore @@ -32,6 +32,7 @@ speed-measure-plugin*.json .history/* # misc +/.angular/cache /.sass-cache /connect.lock /coverage diff --git a/web-app/admin/src/@types/leaflet/index.d.ts b/web-app/admin/src/@types/leaflet/index.d.ts new file mode 100644 index 000000000..f9bb96d9d --- /dev/null +++ b/web-app/admin/src/@types/leaflet/index.d.ts @@ -0,0 +1,17 @@ +import * as L from 'leaflet'; + +declare module 'leaflet' { + + export interface FixedWidthMarkerOptions extends L.MarkerOptions { + iconUrl?: string; + } + + /** + * Creates a Fixed Width Marker. + */ + export function fixedWidthMarker(latlng: L.LatLngExpression, options?: FixedWidthMarkerOptions): L.Marker; + + export class FixedWidthMarker extends Marker { + constructor(latlng: LatLngExpression, options?: FixedWidthMarkerOptions); + } +} diff --git a/web-app/src/app/admin/admin-authentication/admin-authentication-create/admin-authentication-create.component.html b/web-app/admin/src/app/admin/admin-authentication/admin-authentication-create/admin-authentication-create.component.html similarity index 100% rename from web-app/src/app/admin/admin-authentication/admin-authentication-create/admin-authentication-create.component.html rename to web-app/admin/src/app/admin/admin-authentication/admin-authentication-create/admin-authentication-create.component.html diff --git a/web-app/src/app/admin/admin-authentication/admin-authentication-create/admin-authentication-create.component.scss b/web-app/admin/src/app/admin/admin-authentication/admin-authentication-create/admin-authentication-create.component.scss similarity index 100% rename from web-app/src/app/admin/admin-authentication/admin-authentication-create/admin-authentication-create.component.scss rename to web-app/admin/src/app/admin/admin-authentication/admin-authentication-create/admin-authentication-create.component.scss diff --git a/web-app/src/app/admin/admin-authentication/admin-authentication-create/admin-authentication-create.component.ts b/web-app/admin/src/app/admin/admin-authentication/admin-authentication-create/admin-authentication-create.component.ts similarity index 94% rename from web-app/src/app/admin/admin-authentication/admin-authentication-create/admin-authentication-create.component.ts rename to web-app/admin/src/app/admin/admin-authentication/admin-authentication-create/admin-authentication-create.component.ts index 837f6eff0..8393b7ca2 100644 --- a/web-app/src/app/admin/admin-authentication/admin-authentication-create/admin-authentication-create.component.ts +++ b/web-app/admin/src/app/admin/admin-authentication/admin-authentication-create/admin-authentication-create.component.ts @@ -3,7 +3,7 @@ import { TypeChoice } from './admin-create.model'; import { AdminBreadcrumb } from '../../admin-breadcrumb/admin-breadcrumb.model'; import { CdkStepper, STEPPER_GLOBAL_OPTIONS } from '@angular/cdk/stepper'; import { StateService } from '@uirouter/core'; -import { AuthenticationConfigurationService } from 'src/app/upgrade/ajs-upgraded-providers'; +import { AuthenticationConfigurationService } from '../../../../app/upgrade/ajs-upgraded-providers'; import { MatSnackBar } from '@angular/material/snack-bar'; import { Strategy } from '../../admin-authentication/admin-settings.model'; @@ -17,10 +17,10 @@ import { Strategy } from '../../admin-authentication/admin-settings.model'; }) export class AuthenticationCreateComponent implements OnInit { breadcrumbs: AdminBreadcrumb[] = [{ - title: 'Settings', - icon: 'build', + title: 'Security', + icon: 'shield', state: { - name: 'admin.settings' + name: 'admin.security' } }]; strategy: Strategy; @@ -124,13 +124,13 @@ export class AuthenticationCreateComponent implements OnInit { save(): void { this.authenticationConfigurationService.createConfiguration(this.strategy).then(() => { - this.stateService.go('admin.settings'); + this.stateService.go('admin.security'); }).catch((err: any) => { console.error(err); this.snackBar.open('An error occured while creating ' + this.strategy.title, null, { duration: 2000, }) - this.stateService.go('admin.settings'); + this.stateService.go('admin.security'); }); } diff --git a/web-app/src/app/admin/admin-authentication/admin-authentication-create/admin-create.model.ts b/web-app/admin/src/app/admin/admin-authentication/admin-authentication-create/admin-create.model.ts similarity index 100% rename from web-app/src/app/admin/admin-authentication/admin-authentication-create/admin-create.model.ts rename to web-app/admin/src/app/admin/admin-authentication/admin-authentication-create/admin-create.model.ts diff --git a/web-app/src/app/admin/admin-authentication/admin-authentication-create/button-preview/button-preview.component.html b/web-app/admin/src/app/admin/admin-authentication/admin-authentication-create/button-preview/button-preview.component.html similarity index 100% rename from web-app/src/app/admin/admin-authentication/admin-authentication-create/button-preview/button-preview.component.html rename to web-app/admin/src/app/admin/admin-authentication/admin-authentication-create/button-preview/button-preview.component.html diff --git a/web-app/src/app/admin/admin-authentication/admin-authentication-create/button-preview/button-preview.component.scss b/web-app/admin/src/app/admin/admin-authentication/admin-authentication-create/button-preview/button-preview.component.scss similarity index 100% rename from web-app/src/app/admin/admin-authentication/admin-authentication-create/button-preview/button-preview.component.scss rename to web-app/admin/src/app/admin/admin-authentication/admin-authentication-create/button-preview/button-preview.component.scss diff --git a/web-app/src/app/admin/admin-authentication/admin-authentication-create/button-preview/button-preview.component.ts b/web-app/admin/src/app/admin/admin-authentication/admin-authentication-create/button-preview/button-preview.component.ts similarity index 100% rename from web-app/src/app/admin/admin-authentication/admin-authentication-create/button-preview/button-preview.component.ts rename to web-app/admin/src/app/admin/admin-authentication/admin-authentication-create/button-preview/button-preview.component.ts diff --git a/web-app/src/app/admin/admin-authentication/admin-authentication-create/icon-upload/icon-upload.component.html b/web-app/admin/src/app/admin/admin-authentication/admin-authentication-create/icon-upload/icon-upload.component.html similarity index 100% rename from web-app/src/app/admin/admin-authentication/admin-authentication-create/icon-upload/icon-upload.component.html rename to web-app/admin/src/app/admin/admin-authentication/admin-authentication-create/icon-upload/icon-upload.component.html diff --git a/web-app/src/app/admin/admin-authentication/admin-authentication-create/icon-upload/icon-upload.component.scss b/web-app/admin/src/app/admin/admin-authentication/admin-authentication-create/icon-upload/icon-upload.component.scss similarity index 100% rename from web-app/src/app/admin/admin-authentication/admin-authentication-create/icon-upload/icon-upload.component.scss rename to web-app/admin/src/app/admin/admin-authentication/admin-authentication-create/icon-upload/icon-upload.component.scss diff --git a/web-app/src/app/admin/admin-authentication/admin-authentication-create/icon-upload/icon-upload.component.ts b/web-app/admin/src/app/admin/admin-authentication/admin-authentication-create/icon-upload/icon-upload.component.ts similarity index 100% rename from web-app/src/app/admin/admin-authentication/admin-authentication-create/icon-upload/icon-upload.component.ts rename to web-app/admin/src/app/admin/admin-authentication/admin-authentication-create/icon-upload/icon-upload.component.ts diff --git a/web-app/src/app/admin/admin-authentication/admin-authentication-delete/admin-authentication-delete.component.html b/web-app/admin/src/app/admin/admin-authentication/admin-authentication-delete/admin-authentication-delete.component.html similarity index 100% rename from web-app/src/app/admin/admin-authentication/admin-authentication-delete/admin-authentication-delete.component.html rename to web-app/admin/src/app/admin/admin-authentication/admin-authentication-delete/admin-authentication-delete.component.html diff --git a/web-app/src/app/admin/admin-authentication/admin-authentication-delete/admin-authentication-delete.component.scss b/web-app/admin/src/app/admin/admin-authentication/admin-authentication-delete/admin-authentication-delete.component.scss similarity index 60% rename from web-app/src/app/admin/admin-authentication/admin-authentication-delete/admin-authentication-delete.component.scss rename to web-app/admin/src/app/admin/admin-authentication/admin-authentication-delete/admin-authentication-delete.component.scss index cf557af87..dffba0cf7 100644 --- a/web-app/src/app/admin/admin-authentication/admin-authentication-delete/admin-authentication-delete.component.scss +++ b/web-app/admin/src/app/admin/admin-authentication/admin-authentication-delete/admin-authentication-delete.component.scss @@ -1,9 +1,9 @@ -@import '~@angular/material/theming'; +@use '@angular/material' as mat; @import "variables.scss"; button { margin-left: 8px; - color: mat-color($app-primary); + color: mat.get-color-from-palette($app-primary); } mat-dialog-actions { diff --git a/web-app/src/app/admin/admin-authentication/admin-authentication-delete/admin-authentication-delete.component.ts b/web-app/admin/src/app/admin/admin-authentication/admin-authentication-delete/admin-authentication-delete.component.ts similarity index 89% rename from web-app/src/app/admin/admin-authentication/admin-authentication-delete/admin-authentication-delete.component.ts rename to web-app/admin/src/app/admin/admin-authentication/admin-authentication-delete/admin-authentication-delete.component.ts index 2acda2e1c..b2d5200ee 100644 --- a/web-app/src/app/admin/admin-authentication/admin-authentication-delete/admin-authentication-delete.component.ts +++ b/web-app/admin/src/app/admin/admin-authentication/admin-authentication-delete/admin-authentication-delete.component.ts @@ -1,7 +1,7 @@ import { AfterViewInit, Component, Inject } from '@angular/core' import { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog'; import { Strategy } from '../../admin-authentication/admin-settings.model'; -import { AuthenticationConfigurationService } from 'src/app/upgrade/ajs-upgraded-providers'; +import { AuthenticationConfigurationService } from '../../../../app/upgrade/ajs-upgraded-providers'; @Component({ selector: 'admin-authentication-delete', @@ -35,7 +35,7 @@ export class AuthenticationDeleteComponent implements AfterViewInit { this.dialogRef.close('delete'); }).catch((err: any) => { console.error(err); - this.dialogRef.close('cancel'); + this.dialogRef.close('error'); }); } } \ No newline at end of file diff --git a/web-app/src/app/admin/admin-authentication/admin-authentication-ldap/admin-authentication-ldap.component.html b/web-app/admin/src/app/admin/admin-authentication/admin-authentication-ldap/admin-authentication-ldap.component.html similarity index 100% rename from web-app/src/app/admin/admin-authentication/admin-authentication-ldap/admin-authentication-ldap.component.html rename to web-app/admin/src/app/admin/admin-authentication/admin-authentication-ldap/admin-authentication-ldap.component.html diff --git a/web-app/src/app/admin/admin-authentication/admin-authentication-ldap/admin-authentication-ldap.component.scss b/web-app/admin/src/app/admin/admin-authentication/admin-authentication-ldap/admin-authentication-ldap.component.scss similarity index 100% rename from web-app/src/app/admin/admin-authentication/admin-authentication-ldap/admin-authentication-ldap.component.scss rename to web-app/admin/src/app/admin/admin-authentication/admin-authentication-ldap/admin-authentication-ldap.component.scss diff --git a/web-app/src/app/admin/admin-authentication/admin-authentication-ldap/admin-authentication-ldap.component.spec.ts b/web-app/admin/src/app/admin/admin-authentication/admin-authentication-ldap/admin-authentication-ldap.component.spec.ts similarity index 89% rename from web-app/src/app/admin/admin-authentication/admin-authentication-ldap/admin-authentication-ldap.component.spec.ts rename to web-app/admin/src/app/admin/admin-authentication/admin-authentication-ldap/admin-authentication-ldap.component.spec.ts index ba5c8468e..f35867cf3 100644 --- a/web-app/src/app/admin/admin-authentication/admin-authentication-ldap/admin-authentication-ldap.component.spec.ts +++ b/web-app/admin/src/app/admin/admin-authentication/admin-authentication-ldap/admin-authentication-ldap.component.spec.ts @@ -1,4 +1,4 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; import { AdminAuthenticationLDAPComponent } from './admin-authentication-ldap.component'; @@ -6,7 +6,7 @@ describe('AdminAuthenticationLDAPComponent', () => { let component: AdminAuthenticationLDAPComponent; let fixture: ComponentFixture; - beforeEach(async(() => { + beforeEach(waitForAsync(() => { TestBed.configureTestingModule({ declarations: [ AdminAuthenticationLDAPComponent ] }) diff --git a/web-app/src/app/admin/admin-authentication/admin-authentication-ldap/admin-authentication-ldap.component.ts b/web-app/admin/src/app/admin/admin-authentication/admin-authentication-ldap/admin-authentication-ldap.component.ts similarity index 100% rename from web-app/src/app/admin/admin-authentication/admin-authentication-ldap/admin-authentication-ldap.component.ts rename to web-app/admin/src/app/admin/admin-authentication/admin-authentication-ldap/admin-authentication-ldap.component.ts diff --git a/web-app/src/app/admin/admin-authentication/admin-authentication-local/account-lock/account-lock.component.html b/web-app/admin/src/app/admin/admin-authentication/admin-authentication-local/account-lock/account-lock.component.html similarity index 98% rename from web-app/src/app/admin/admin-authentication/admin-authentication-local/account-lock/account-lock.component.html rename to web-app/admin/src/app/admin/admin-authentication/admin-authentication-local/account-lock/account-lock.component.html index f1d22b4cf..5ac2ded1c 100644 --- a/web-app/src/app/admin/admin-authentication/admin-authentication-local/account-lock/account-lock.component.html +++ b/web-app/admin/src/app/admin/admin-authentication/admin-authentication-local/account-lock/account-lock.component.html @@ -41,7 +41,7 @@ locks their account a certain number of times.
- >Max Lockout Threshold + Max Lockout Threshold diff --git a/web-app/src/app/admin/admin-authentication/admin-authentication-local/account-lock/account-lock.component.scss b/web-app/admin/src/app/admin/admin-authentication/admin-authentication-local/account-lock/account-lock.component.scss similarity index 100% rename from web-app/src/app/admin/admin-authentication/admin-authentication-local/account-lock/account-lock.component.scss rename to web-app/admin/src/app/admin/admin-authentication/admin-authentication-local/account-lock/account-lock.component.scss diff --git a/web-app/src/app/admin/admin-authentication/admin-authentication-local/account-lock/account-lock.component.ts b/web-app/admin/src/app/admin/admin-authentication/admin-authentication-local/account-lock/account-lock.component.ts similarity index 100% rename from web-app/src/app/admin/admin-authentication/admin-authentication-local/account-lock/account-lock.component.ts rename to web-app/admin/src/app/admin/admin-authentication/admin-authentication-local/account-lock/account-lock.component.ts diff --git a/web-app/src/app/admin/admin-authentication/admin-authentication-local/account-lock/account-lock.model.ts b/web-app/admin/src/app/admin/admin-authentication/admin-authentication-local/account-lock/account-lock.model.ts similarity index 100% rename from web-app/src/app/admin/admin-authentication/admin-authentication-local/account-lock/account-lock.model.ts rename to web-app/admin/src/app/admin/admin-authentication/admin-authentication-local/account-lock/account-lock.model.ts diff --git a/web-app/src/app/admin/admin-authentication/admin-authentication-local/admin-authentication-local.component.html b/web-app/admin/src/app/admin/admin-authentication/admin-authentication-local/admin-authentication-local.component.html similarity index 100% rename from web-app/src/app/admin/admin-authentication/admin-authentication-local/admin-authentication-local.component.html rename to web-app/admin/src/app/admin/admin-authentication/admin-authentication-local/admin-authentication-local.component.html diff --git a/web-app/src/app/admin/admin-authentication/admin-authentication-local/admin-authentication-local.component.scss b/web-app/admin/src/app/admin/admin-authentication/admin-authentication-local/admin-authentication-local.component.scss similarity index 100% rename from web-app/src/app/admin/admin-authentication/admin-authentication-local/admin-authentication-local.component.scss rename to web-app/admin/src/app/admin/admin-authentication/admin-authentication-local/admin-authentication-local.component.scss diff --git a/web-app/src/app/admin/admin-authentication/admin-authentication-local/admin-authentication-local.component.spec.ts b/web-app/admin/src/app/admin/admin-authentication/admin-authentication-local/admin-authentication-local.component.spec.ts similarity index 84% rename from web-app/src/app/admin/admin-authentication/admin-authentication-local/admin-authentication-local.component.spec.ts rename to web-app/admin/src/app/admin/admin-authentication/admin-authentication-local/admin-authentication-local.component.spec.ts index 02fea748b..70eac9b9b 100644 --- a/web-app/src/app/admin/admin-authentication/admin-authentication-local/admin-authentication-local.component.spec.ts +++ b/web-app/admin/src/app/admin/admin-authentication/admin-authentication-local/admin-authentication-local.component.spec.ts @@ -1,12 +1,11 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; - +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; import { AdminAuthenticationLocalComponent } from './admin-authentication-local.component'; describe('AdminAuthenticationLocalComponent', () => { let component: AdminAuthenticationLocalComponent; let fixture: ComponentFixture; - beforeEach(async(() => { + beforeEach(waitForAsync(() => { TestBed.configureTestingModule({ declarations: [ AdminAuthenticationLocalComponent ] }) @@ -22,4 +21,4 @@ describe('AdminAuthenticationLocalComponent', () => { it('should create', () => { expect(component).toBeTruthy(); }); -}); \ No newline at end of file +}); diff --git a/web-app/src/app/admin/admin-authentication/admin-authentication-local/admin-authentication-local.component.ts b/web-app/admin/src/app/admin/admin-authentication/admin-authentication-local/admin-authentication-local.component.ts similarity index 100% rename from web-app/src/app/admin/admin-authentication/admin-authentication-local/admin-authentication-local.component.ts rename to web-app/admin/src/app/admin/admin-authentication/admin-authentication-local/admin-authentication-local.component.ts diff --git a/web-app/src/app/admin/admin-authentication/admin-authentication-local/password-policy/password-policy.component.html b/web-app/admin/src/app/admin/admin-authentication/admin-authentication-local/password-policy/password-policy.component.html similarity index 100% rename from web-app/src/app/admin/admin-authentication/admin-authentication-local/password-policy/password-policy.component.html rename to web-app/admin/src/app/admin/admin-authentication/admin-authentication-local/password-policy/password-policy.component.html diff --git a/web-app/src/app/admin/admin-authentication/admin-authentication-local/password-policy/password-policy.component.scss b/web-app/admin/src/app/admin/admin-authentication/admin-authentication-local/password-policy/password-policy.component.scss similarity index 100% rename from web-app/src/app/admin/admin-authentication/admin-authentication-local/password-policy/password-policy.component.scss rename to web-app/admin/src/app/admin/admin-authentication/admin-authentication-local/password-policy/password-policy.component.scss diff --git a/web-app/src/app/admin/admin-authentication/admin-authentication-local/password-policy/password-policy.component.ts b/web-app/admin/src/app/admin/admin-authentication/admin-authentication-local/password-policy/password-policy.component.ts similarity index 100% rename from web-app/src/app/admin/admin-authentication/admin-authentication-local/password-policy/password-policy.component.ts rename to web-app/admin/src/app/admin/admin-authentication/admin-authentication-local/password-policy/password-policy.component.ts diff --git a/web-app/src/app/admin/admin-authentication/admin-authentication-oauth2/admin-authentication-oauth2.component.html b/web-app/admin/src/app/admin/admin-authentication/admin-authentication-oauth2/admin-authentication-oauth2.component.html similarity index 100% rename from web-app/src/app/admin/admin-authentication/admin-authentication-oauth2/admin-authentication-oauth2.component.html rename to web-app/admin/src/app/admin/admin-authentication/admin-authentication-oauth2/admin-authentication-oauth2.component.html diff --git a/web-app/src/app/admin/admin-authentication/admin-authentication-oauth2/admin-authentication-oauth2.component.scss b/web-app/admin/src/app/admin/admin-authentication/admin-authentication-oauth2/admin-authentication-oauth2.component.scss similarity index 100% rename from web-app/src/app/admin/admin-authentication/admin-authentication-oauth2/admin-authentication-oauth2.component.scss rename to web-app/admin/src/app/admin/admin-authentication/admin-authentication-oauth2/admin-authentication-oauth2.component.scss diff --git a/web-app/src/app/admin/admin-authentication/admin-authentication-oauth2/admin-authentication-oauth2.component.spec.ts b/web-app/admin/src/app/admin/admin-authentication/admin-authentication-oauth2/admin-authentication-oauth2.component.spec.ts similarity index 89% rename from web-app/src/app/admin/admin-authentication/admin-authentication-oauth2/admin-authentication-oauth2.component.spec.ts rename to web-app/admin/src/app/admin/admin-authentication/admin-authentication-oauth2/admin-authentication-oauth2.component.spec.ts index 0d1e89fce..4e915a631 100644 --- a/web-app/src/app/admin/admin-authentication/admin-authentication-oauth2/admin-authentication-oauth2.component.spec.ts +++ b/web-app/admin/src/app/admin/admin-authentication/admin-authentication-oauth2/admin-authentication-oauth2.component.spec.ts @@ -1,4 +1,4 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; import { AdminAuthenticationOAuth2Component } from './admin-authentication-oauth2.component'; @@ -6,7 +6,7 @@ describe('AdminAuthenticationOAuth2Component', () => { let component: AdminAuthenticationOAuth2Component; let fixture: ComponentFixture; - beforeEach(async(() => { + beforeEach(waitForAsync(() => { TestBed.configureTestingModule({ declarations: [AdminAuthenticationOAuth2Component] }) diff --git a/web-app/src/app/admin/admin-authentication/admin-authentication-oauth2/admin-authentication-oauth2.component.ts b/web-app/admin/src/app/admin/admin-authentication/admin-authentication-oauth2/admin-authentication-oauth2.component.ts similarity index 100% rename from web-app/src/app/admin/admin-authentication/admin-authentication-oauth2/admin-authentication-oauth2.component.ts rename to web-app/admin/src/app/admin/admin-authentication/admin-authentication-oauth2/admin-authentication-oauth2.component.ts diff --git a/web-app/src/app/admin/admin-authentication/admin-authentication-oidc/admin-authentication-oidc.component.html b/web-app/admin/src/app/admin/admin-authentication/admin-authentication-oidc/admin-authentication-oidc.component.html similarity index 100% rename from web-app/src/app/admin/admin-authentication/admin-authentication-oidc/admin-authentication-oidc.component.html rename to web-app/admin/src/app/admin/admin-authentication/admin-authentication-oidc/admin-authentication-oidc.component.html diff --git a/web-app/src/app/admin/admin-authentication/admin-authentication-oidc/admin-authentication-oidc.component.scss b/web-app/admin/src/app/admin/admin-authentication/admin-authentication-oidc/admin-authentication-oidc.component.scss similarity index 100% rename from web-app/src/app/admin/admin-authentication/admin-authentication-oidc/admin-authentication-oidc.component.scss rename to web-app/admin/src/app/admin/admin-authentication/admin-authentication-oidc/admin-authentication-oidc.component.scss diff --git a/web-app/src/app/admin/admin-authentication/admin-authentication-oidc/admin-authentication-oidc.component.spec.ts b/web-app/admin/src/app/admin/admin-authentication/admin-authentication-oidc/admin-authentication-oidc.component.spec.ts similarity index 89% rename from web-app/src/app/admin/admin-authentication/admin-authentication-oidc/admin-authentication-oidc.component.spec.ts rename to web-app/admin/src/app/admin/admin-authentication/admin-authentication-oidc/admin-authentication-oidc.component.spec.ts index b8d9f76f3..67e7271f5 100644 --- a/web-app/src/app/admin/admin-authentication/admin-authentication-oidc/admin-authentication-oidc.component.spec.ts +++ b/web-app/admin/src/app/admin/admin-authentication/admin-authentication-oidc/admin-authentication-oidc.component.spec.ts @@ -1,4 +1,4 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; import { AdminAuthenticationOidcComponent } from './admin-authentication-oidc.component'; @@ -6,7 +6,7 @@ describe('AdminAuthenticationOidcComponent', () => { let component: AdminAuthenticationOidcComponent; let fixture: ComponentFixture; - beforeEach(async(() => { + beforeEach(waitForAsync(() => { TestBed.configureTestingModule({ declarations: [ AdminAuthenticationOidcComponent ] }) diff --git a/web-app/src/app/admin/admin-authentication/admin-authentication-oidc/admin-authentication-oidc.component.ts b/web-app/admin/src/app/admin/admin-authentication/admin-authentication-oidc/admin-authentication-oidc.component.ts similarity index 100% rename from web-app/src/app/admin/admin-authentication/admin-authentication-oidc/admin-authentication-oidc.component.ts rename to web-app/admin/src/app/admin/admin-authentication/admin-authentication-oidc/admin-authentication-oidc.component.ts diff --git a/web-app/src/app/admin/admin-authentication/admin-authentication-saml/admin-authentication-saml.component.html b/web-app/admin/src/app/admin/admin-authentication/admin-authentication-saml/admin-authentication-saml.component.html similarity index 100% rename from web-app/src/app/admin/admin-authentication/admin-authentication-saml/admin-authentication-saml.component.html rename to web-app/admin/src/app/admin/admin-authentication/admin-authentication-saml/admin-authentication-saml.component.html diff --git a/web-app/src/app/admin/admin-authentication/admin-authentication-saml/admin-authentication-saml.component.scss b/web-app/admin/src/app/admin/admin-authentication/admin-authentication-saml/admin-authentication-saml.component.scss similarity index 100% rename from web-app/src/app/admin/admin-authentication/admin-authentication-saml/admin-authentication-saml.component.scss rename to web-app/admin/src/app/admin/admin-authentication/admin-authentication-saml/admin-authentication-saml.component.scss diff --git a/web-app/src/app/admin/admin-authentication/admin-authentication-saml/admin-authentication-saml.component.spec.ts b/web-app/admin/src/app/admin/admin-authentication/admin-authentication-saml/admin-authentication-saml.component.spec.ts similarity index 90% rename from web-app/src/app/admin/admin-authentication/admin-authentication-saml/admin-authentication-saml.component.spec.ts rename to web-app/admin/src/app/admin/admin-authentication/admin-authentication-saml/admin-authentication-saml.component.spec.ts index 106705565..4a86d6cd9 100644 --- a/web-app/src/app/admin/admin-authentication/admin-authentication-saml/admin-authentication-saml.component.spec.ts +++ b/web-app/admin/src/app/admin/admin-authentication/admin-authentication-saml/admin-authentication-saml.component.spec.ts @@ -1,4 +1,4 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; import { AdminAuthenticationSAMLComponent } from './admin-authentication-saml.component'; @@ -6,7 +6,7 @@ describe('AdminAuthenticationSAMLComponent', () => { let component: AdminAuthenticationSAMLComponent; let fixture: ComponentFixture; - beforeEach(async(() => { + beforeEach(waitForAsync(() => { TestBed.configureTestingModule({ declarations: [ AdminAuthenticationSAMLComponent ] }) diff --git a/web-app/src/app/admin/admin-authentication/admin-authentication-saml/admin-authentication-saml.component.ts b/web-app/admin/src/app/admin/admin-authentication/admin-authentication-saml/admin-authentication-saml.component.ts similarity index 100% rename from web-app/src/app/admin/admin-authentication/admin-authentication-saml/admin-authentication-saml.component.ts rename to web-app/admin/src/app/admin/admin-authentication/admin-authentication-saml/admin-authentication-saml.component.ts diff --git a/web-app/src/app/admin/admin-authentication/admin-authentication-settings.component.html b/web-app/admin/src/app/admin/admin-authentication/admin-authentication-settings.component.html similarity index 100% rename from web-app/src/app/admin/admin-authentication/admin-authentication-settings.component.html rename to web-app/admin/src/app/admin/admin-authentication/admin-authentication-settings.component.html diff --git a/web-app/src/app/admin/admin-authentication/admin-authentication-settings.component.scss b/web-app/admin/src/app/admin/admin-authentication/admin-authentication-settings.component.scss similarity index 100% rename from web-app/src/app/admin/admin-authentication/admin-authentication-settings.component.scss rename to web-app/admin/src/app/admin/admin-authentication/admin-authentication-settings.component.scss diff --git a/web-app/src/app/admin/admin-authentication/admin-authentication-settings.component.ts b/web-app/admin/src/app/admin/admin-authentication/admin-authentication-settings.component.ts similarity index 100% rename from web-app/src/app/admin/admin-authentication/admin-authentication-settings.component.ts rename to web-app/admin/src/app/admin/admin-authentication/admin-authentication-settings.component.ts diff --git a/web-app/src/app/admin/admin-authentication/admin-authentication.component.html b/web-app/admin/src/app/admin/admin-authentication/admin-authentication.component.html similarity index 86% rename from web-app/src/app/admin/admin-authentication/admin-authentication.component.html rename to web-app/admin/src/app/admin/admin-authentication/admin-authentication.component.html index 0141543ff..642ae1482 100644 --- a/web-app/src/app/admin/admin-authentication/admin-authentication.component.html +++ b/web-app/admin/src/app/admin/admin-authentication/admin-authentication.component.html @@ -1,3 +1,6 @@ +
+ +
+ (strategyDirty)="isDirty = $event">
+
+
+
+ +
\ No newline at end of file diff --git a/web-app/src/app/admin/admin-authentication/admin-authentication.component.scss b/web-app/admin/src/app/admin/admin-authentication/admin-authentication.component.scss similarity index 75% rename from web-app/src/app/admin/admin-authentication/admin-authentication.component.scss rename to web-app/admin/src/app/admin/admin-authentication/admin-authentication.component.scss index 53d67daa7..3fd71f1ab 100644 --- a/web-app/src/app/admin/admin-authentication/admin-authentication.component.scss +++ b/web-app/admin/src/app/admin/admin-authentication/admin-authentication.component.scss @@ -1,9 +1,8 @@ -@import '~@angular/material/theming'; @import "variables.scss"; .auth__action--new { display: flex; - flex-direction:column; + flex-direction: column; align-items: flex-end; margin-top: 8px; margin-bottom: 8px; @@ -12,14 +11,14 @@ .auth__action--delete { display: flex; - flex-direction:column; + flex-direction: column; align-items: flex-start; margin-top: 10px; } .auth__action--enable { display: flex; - flex-direction:row; + flex-direction: row; align-items: flex-start; margin-bottom: 16px; } @@ -34,7 +33,7 @@ align-items: center; } -.headers-align .mat-form-field + .mat-form-field { +.headers-align .mat-form-field+.mat-form-field { margin-left: 8px; } @@ -57,4 +56,12 @@ img { mat-icon { margin-right: 8px; +} + +.settings__action--save { + display: flex; + flex-direction: column; + align-items: flex-end; + margin-top: 4px; + margin-right: 8px; } \ No newline at end of file diff --git a/web-app/admin/src/app/admin/admin-authentication/admin-authentication.component.ts b/web-app/admin/src/app/admin/admin-authentication/admin-authentication.component.ts new file mode 100644 index 000000000..7bd0c6059 --- /dev/null +++ b/web-app/admin/src/app/admin/admin-authentication/admin-authentication.component.ts @@ -0,0 +1,203 @@ +import _ from 'underscore' +import { Component, OnInit, Inject, EventEmitter, Output, Input, OnChanges, SimpleChanges } from '@angular/core'; +import { MatSnackBar } from '@angular/material/snack-bar'; +import { Team, Event, LocalStorageService, AuthenticationConfigurationService, UserService } from '../../upgrade/ajs-upgraded-providers'; +import { AdminBreadcrumb } from '../admin-breadcrumb/admin-breadcrumb.model' +import { Strategy } from '../admin-authentication/admin-settings.model'; +import { MatDialog } from '@angular/material/dialog'; +import { StateService } from '@uirouter/angular'; +import { AuthenticationDeleteComponent } from './admin-authentication-delete/admin-authentication-delete.component'; +import { AdminSettingsUnsavedComponent } from '../admin-settings/admin-settings-unsaved/admin-settings-unsaved.component'; +import { TransitionService } from '@uirouter/core'; +import { lastValueFrom } from 'rxjs'; + +@Component({ + selector: 'admin-authentication', + templateUrl: 'admin-authentication.component.html', + styleUrls: ['./admin-authentication.component.scss'] +}) +export class AdminAuthenticationComponent implements OnInit, OnChanges { + @Output() saveComplete = new EventEmitter(); + @Output() deleteComplete = new EventEmitter(); + @Output() onDirty = new EventEmitter(); + @Input() beginSave: any; + + readonly breadcrumbs: AdminBreadcrumb[] = [{ + title: 'Security', + icon: 'shield' + }]; + + teams: any[] = []; + events: any[] = []; + + isDirty: boolean = false; + + strategies: Strategy[] = []; + + readonly hasAuthConfigEditPermission: boolean; + + constructor( + private dialog: MatDialog, + private stateService: StateService, + private readonly snackBar: MatSnackBar, + private readonly transitionService: TransitionService, + @Inject(Team) + public team: any, + @Inject(Event) + public event: any, + @Inject(LocalStorageService) + public localStorageService: any, + @Inject(AuthenticationConfigurationService) + private authenticationConfigurationService: any, + @Inject(UserService) + private userService: { myself: { role: { permissions: Array } } }) { + this.hasAuthConfigEditPermission = _.contains(this.userService.myself.role.permissions, 'UPDATE_AUTH_CONFIG'); + } + + ngOnInit(): void { + const configsPromise = this.authenticationConfigurationService.getAllConfigurations({ includeDisabled: true }); + const teamsPromise = this.team.query({ state: 'all', populate: false }).$promise; + const eventsPromise = this.event.query({ state: 'all', populate: false }).$promise; + this.transitionService.onExit({}, this.onUnsavedChanges, { bind: this }); + + Promise.all([configsPromise, teamsPromise, eventsPromise]).then(result => { + // Remove event teams + this.teams = result[1].filter(function (team: any): boolean { + return team.teamEventId === undefined; + }); + this.events = result[2]; + + const unsortedStrategies = result[0] ? result[0].data : []; + this.processUnsortedStrategies(unsortedStrategies); + }).catch(err => { + console.log(err); + }); + } + + private processUnsortedStrategies(unsortedStrategies: Strategy[]): void { + this.strategies = _.sortBy(unsortedStrategies, 'title'); + + this.strategies.forEach(strategy => { + if (strategy.settings.newUserEvents) { + strategy.settings.newUserEvents = strategy.settings.newUserEvents.filter(id => { + return this.events.some(event => event.id === id) + }); + } + if (strategy.settings.newUserTeams) { + // Remove any teams and events that no longer exist + strategy.settings.newUserTeams = strategy.settings.newUserTeams.filter(id => { + return this.teams.some(team => team.id === id) + }); + } + if (strategy.icon) { + strategy.icon = 'data:image/png;base64,' + strategy.icon; + } + }); + } + + ngOnChanges(changes: SimpleChanges): void { + if (changes.beginSave && !changes.beginSave.firstChange) { + this.save(); + } + } + + onAuthenticationSaved(status: boolean): void { + if (status) { + this.snackBar.open('Authentication successfully saved', null, { + duration: 2000, + }); + } else { + this.snackBar.open('1 or more authentications failed to save correctly', null, { + duration: 2000, + }); + }; + this.isDirty = false; + } + + onAuthenticationDeleted(status: boolean): void { + if (status) { + this.snackBar.open('Authentication successfully deleted', null, { + duration: 2000, + }); + } else { + this.snackBar.open('Failed to delete authentication', null, { + duration: 2000, + }); + }; + this.isDirty = false; + } + + save(): void { + console.log('Saving authentication configurations'); + const promises = []; + this.strategies.forEach(strategy => { + if (strategy.isDirty) { + promises.push(this.authenticationConfigurationService.updateConfiguration(strategy)); + } + }); + + Promise.all(promises).then(() => { + return this.authenticationConfigurationService.getAllConfigurations({ includeDisabled: true }); + }).then(strategies => { + this.processUnsortedStrategies(strategies.data); + this.onAuthenticationSaved(true); + }).catch(err => { + console.log(err); + this.authenticationConfigurationService.getAllConfigurations({ includeDisabled: true }).then((newStrategies: { data: Strategy[]; }) => { + this.processUnsortedStrategies(newStrategies.data); + this.onAuthenticationSaved(false); + }).catch((err2: any) => { + console.log(err2); + this.onAuthenticationSaved(false); + }); + }); + this.isDirty = false; + } + + deleteStrategy(strategy: Strategy): void { + this.dialog.open(AuthenticationDeleteComponent, { + width: '500px', + data: strategy, + autoFocus: false + }).afterClosed().subscribe(result => { + if (result === 'delete') { + this.authenticationConfigurationService.getAllConfigurations().then(configs => { + this.processUnsortedStrategies(configs.data); + this.onAuthenticationDeleted(true); + }).catch((err: any) => { + console.error(err); + this.onAuthenticationDeleted(false); + }); + } else if (result === 'error') { + this.onAuthenticationDeleted(false); + } + }); + } + + createAuthentication(): void { + this.stateService.go('admin.authenticationCreate') + } + + onAuthenticationToggled(strategy: Strategy): void { + strategy.isDirty = true; + this.isDirty = true; + } + + async onUnsavedChanges(): Promise { + if (this.isDirty) { + const ref = this.dialog.open(AdminSettingsUnsavedComponent); + + const result_2 = await lastValueFrom(ref.afterClosed()); + let discard = true; + if (result_2) { + discard = result_2.discard; + } + if (discard) { + this.isDirty = false; + } + return await Promise.resolve(discard); + } + + return Promise.resolve(true); + } +} diff --git a/web-app/src/app/admin/admin-authentication/admin-settings.model.ts b/web-app/admin/src/app/admin/admin-authentication/admin-settings.model.ts similarity index 100% rename from web-app/src/app/admin/admin-authentication/admin-settings.model.ts rename to web-app/admin/src/app/admin/admin-authentication/admin-settings.model.ts diff --git a/web-app/src/app/admin/admin-breadcrumb/admin-breadcrumb.component.html b/web-app/admin/src/app/admin/admin-breadcrumb/admin-breadcrumb.component.html similarity index 100% rename from web-app/src/app/admin/admin-breadcrumb/admin-breadcrumb.component.html rename to web-app/admin/src/app/admin/admin-breadcrumb/admin-breadcrumb.component.html diff --git a/web-app/src/app/admin/admin-breadcrumb/admin-breadcrumb.component.scss b/web-app/admin/src/app/admin/admin-breadcrumb/admin-breadcrumb.component.scss similarity index 73% rename from web-app/src/app/admin/admin-breadcrumb/admin-breadcrumb.component.scss rename to web-app/admin/src/app/admin/admin-breadcrumb/admin-breadcrumb.component.scss index 7aa33e9f1..24b48f4e5 100644 --- a/web-app/src/app/admin/admin-breadcrumb/admin-breadcrumb.component.scss +++ b/web-app/admin/src/app/admin/admin-breadcrumb/admin-breadcrumb.component.scss @@ -1,4 +1,4 @@ -@import '~@angular/material/theming'; +@use '@angular/material' as mat; @import "variables.scss"; .admin-breadcrumbs { @@ -13,12 +13,12 @@ } .admin-breadcrumb { - color: mat-color($app-primary); + color: mat.get-color-from-palette($app-primary); cursor: pointer; } .admin-breadcrumb:hover { - color: mat-color($app-primary); + color: mat.get-color-from-palette($app-primary); opacity: .6; } @@ -35,6 +35,6 @@ } mat-icon { - color: mat-color($app-primary); + color: mat.get-color-from-palette($app-primary); margin-right: 4px; } diff --git a/web-app/src/app/admin/admin-breadcrumb/admin-breadcrumb.component.spec.ts b/web-app/admin/src/app/admin/admin-breadcrumb/admin-breadcrumb.component.spec.ts similarity index 97% rename from web-app/src/app/admin/admin-breadcrumb/admin-breadcrumb.component.spec.ts rename to web-app/admin/src/app/admin/admin-breadcrumb/admin-breadcrumb.component.spec.ts index 24168a1db..49eea5eda 100644 --- a/web-app/src/app/admin/admin-breadcrumb/admin-breadcrumb.component.spec.ts +++ b/web-app/admin/src/app/admin/admin-breadcrumb/admin-breadcrumb.component.spec.ts @@ -1,5 +1,5 @@ import { Component, ViewChild } from '@angular/core'; -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; import { RawParams, StateOrName, StateService, TransitionOptions, TransitionPromise } from '@uirouter/angular'; import { AdminBreadcrumbComponent } from './admin-breadcrumb.component'; import { AdminBreadcrumb } from './admin-breadcrumb.model'; @@ -31,7 +31,7 @@ describe('AdminBreadcrumbComponent', () => { let fixture: ComponentFixture; let element: HTMLElement; - beforeEach(async(() => { + beforeEach(waitForAsync(() => { TestBed.configureTestingModule({ providers: [{ provide: StateService, diff --git a/web-app/src/app/admin/admin-breadcrumb/admin-breadcrumb.component.ts b/web-app/admin/src/app/admin/admin-breadcrumb/admin-breadcrumb.component.ts similarity index 100% rename from web-app/src/app/admin/admin-breadcrumb/admin-breadcrumb.component.ts rename to web-app/admin/src/app/admin/admin-breadcrumb/admin-breadcrumb.component.ts diff --git a/web-app/src/app/admin/admin-breadcrumb/admin-breadcrumb.model.ts b/web-app/admin/src/app/admin/admin-breadcrumb/admin-breadcrumb.model.ts similarity index 100% rename from web-app/src/app/admin/admin-breadcrumb/admin-breadcrumb.model.ts rename to web-app/admin/src/app/admin/admin-breadcrumb/admin-breadcrumb.model.ts diff --git a/web-app/src/app/admin/admin-breadcrumb/admin-breadcrumb.module.ts b/web-app/admin/src/app/admin/admin-breadcrumb/admin-breadcrumb.module.ts similarity index 100% rename from web-app/src/app/admin/admin-breadcrumb/admin-breadcrumb.module.ts rename to web-app/admin/src/app/admin/admin-breadcrumb/admin-breadcrumb.module.ts diff --git a/web-app/src/app/admin/admin-event/admin-event-form/admin-event-form-preview/admin-event-form-preview-dialog.component.html b/web-app/admin/src/app/admin/admin-event/admin-event-form/admin-event-form-preview/admin-event-form-preview-dialog.component.html similarity index 100% rename from web-app/src/app/admin/admin-event/admin-event-form/admin-event-form-preview/admin-event-form-preview-dialog.component.html rename to web-app/admin/src/app/admin/admin-event/admin-event-form/admin-event-form-preview/admin-event-form-preview-dialog.component.html diff --git a/web-app/src/app/admin/admin-event/admin-event-form/admin-event-form-preview/admin-event-form-preview-dialog.component.scss b/web-app/admin/src/app/admin/admin-event/admin-event-form/admin-event-form-preview/admin-event-form-preview-dialog.component.scss similarity index 100% rename from web-app/src/app/admin/admin-event/admin-event-form/admin-event-form-preview/admin-event-form-preview-dialog.component.scss rename to web-app/admin/src/app/admin/admin-event/admin-event-form/admin-event-form-preview/admin-event-form-preview-dialog.component.scss diff --git a/web-app/src/app/admin/admin-event/admin-event-form/admin-event-form-preview/admin-event-form-preview-dialog.component.spec.ts b/web-app/admin/src/app/admin/admin-event/admin-event-form/admin-event-form-preview/admin-event-form-preview-dialog.component.spec.ts similarity index 95% rename from web-app/src/app/admin/admin-event/admin-event-form/admin-event-form-preview/admin-event-form-preview-dialog.component.spec.ts rename to web-app/admin/src/app/admin/admin-event/admin-event-form/admin-event-form-preview/admin-event-form-preview-dialog.component.spec.ts index 7aa027b2f..e6568ade5 100644 --- a/web-app/src/app/admin/admin-event/admin-event-form/admin-event-form-preview/admin-event-form-preview-dialog.component.spec.ts +++ b/web-app/admin/src/app/admin/admin-event/admin-event-form/admin-event-form-preview/admin-event-form-preview-dialog.component.spec.ts @@ -1,4 +1,4 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; import { MatDialogModule, MAT_DIALOG_DATA } from '@angular/material/dialog'; import { BrowserAnimationsModule } from '@angular/platform-browser/animations'; import { AdminEventFormPreviewDialogComponent } from './admin-event-form-preview-dialog.component'; @@ -9,7 +9,7 @@ describe('AdminEventFormPreviewComponent', () => { let component: AdminEventFormPreviewDialogComponent let fixture: ComponentFixture - beforeEach(async(() => { + beforeEach(waitForAsync(() => { TestBed.configureTestingModule({ imports: [BrowserAnimationsModule, MatDialogModule], declarations: [AdminEventFormPreviewComponent], diff --git a/web-app/src/app/admin/admin-event/admin-event-form/admin-event-form-preview/admin-event-form-preview-dialog.component.ts b/web-app/admin/src/app/admin/admin-event/admin-event-form/admin-event-form-preview/admin-event-form-preview-dialog.component.ts similarity index 66% rename from web-app/src/app/admin/admin-event/admin-event-form/admin-event-form-preview/admin-event-form-preview-dialog.component.ts rename to web-app/admin/src/app/admin/admin-event/admin-event-form/admin-event-form-preview/admin-event-form-preview-dialog.component.ts index 4889612b2..1f538048a 100644 --- a/web-app/src/app/admin/admin-event/admin-event-form/admin-event-form-preview/admin-event-form-preview-dialog.component.ts +++ b/web-app/admin/src/app/admin/admin-event/admin-event-form/admin-event-form-preview/admin-event-form-preview-dialog.component.ts @@ -1,5 +1,5 @@ import { Component, Inject, OnInit } from '@angular/core'; -import { FormControl, FormGroup, Validators } from '@angular/forms'; +import { UntypedFormControl, UntypedFormGroup, Validators } from '@angular/forms'; import { MAT_DIALOG_DATA } from '@angular/material/dialog'; @Component({ @@ -11,19 +11,19 @@ export class AdminEventFormPreviewDialogComponent implements OnInit { constructor(@Inject(MAT_DIALOG_DATA) public formDefinition: any) { } - formGroup: FormGroup + formGroup: UntypedFormGroup ngOnInit(): void { - this.formGroup = new FormGroup({ - id: new FormControl(0), - formId: new FormControl(0) + this.formGroup = new UntypedFormGroup({ + id: new UntypedFormControl(0), + formId: new UntypedFormControl(0) }); this.formDefinition.fields .filter(field => !field.archived) .sort((a, b) => a.id - b.id) .forEach(field => { - const fieldControl = new FormControl(field.value, field.required ? Validators.required : null); + const fieldControl = new UntypedFormControl(field.value, field.required ? Validators.required : null); this.formGroup.addControl(field.name, fieldControl); }) } diff --git a/web-app/src/app/admin/admin-event/admin-event-form/admin-event-form-preview/admin-event-form-preview.component.html b/web-app/admin/src/app/admin/admin-event/admin-event-form/admin-event-form-preview/admin-event-form-preview.component.html similarity index 100% rename from web-app/src/app/admin/admin-event/admin-event-form/admin-event-form-preview/admin-event-form-preview.component.html rename to web-app/admin/src/app/admin/admin-event/admin-event-form/admin-event-form-preview/admin-event-form-preview.component.html diff --git a/web-app/src/app/admin/admin-settings/admin-settings-unsaved/admin-settings-unsaved.component.spec.ts b/web-app/admin/src/app/admin/admin-event/admin-event-form/admin-event-form-preview/admin-event-form-preview.component.scss similarity index 100% rename from web-app/src/app/admin/admin-settings/admin-settings-unsaved/admin-settings-unsaved.component.spec.ts rename to web-app/admin/src/app/admin/admin-event/admin-event-form/admin-event-form-preview/admin-event-form-preview.component.scss diff --git a/web-app/src/app/admin/admin-event/admin-event-form/admin-event-form-preview/admin-event-form-preview.component.spec.ts b/web-app/admin/src/app/admin/admin-event/admin-event-form/admin-event-form-preview/admin-event-form-preview.component.spec.ts similarity index 92% rename from web-app/src/app/admin/admin-event/admin-event-form/admin-event-form-preview/admin-event-form-preview.component.spec.ts rename to web-app/admin/src/app/admin/admin-event/admin-event-form/admin-event-form-preview/admin-event-form-preview.component.spec.ts index 605b47793..74b91b6a6 100644 --- a/web-app/src/app/admin/admin-event/admin-event-form/admin-event-form-preview/admin-event-form-preview.component.spec.ts +++ b/web-app/admin/src/app/admin/admin-event/admin-event-form/admin-event-form-preview/admin-event-form-preview.component.spec.ts @@ -1,5 +1,5 @@ import { Component, ViewChild } from '@angular/core'; -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; import { MatDialog, MatDialogModule } from '@angular/material/dialog'; import { BrowserAnimationsModule } from '@angular/platform-browser/animations'; import { Observable, of } from 'rxjs'; @@ -30,7 +30,7 @@ describe('AdminEventFormPreviewComponent', () => { let fixture: ComponentFixture let dialog: MatDialog - beforeEach(async(() => { + beforeEach(waitForAsync(() => { TestBed.configureTestingModule({ imports: [BrowserAnimationsModule, MatDialogModule], declarations: [AdminEventFormPreviewComponent, TestHostComponent], @@ -65,7 +65,7 @@ describe('AdminEventFormPreviewComponent', () => { expect(dialog.open).toHaveBeenCalled() }); - it('should close dialog', async(async () => { + it('should close dialog', waitForAsync(async () => { spyOn(component.onClose, 'emit') spyOn(component.dialog, 'open').and.callThrough() diff --git a/web-app/src/app/admin/admin-event/admin-event-form/admin-event-form-preview/admin-event-form-preview.component.ts b/web-app/admin/src/app/admin/admin-event/admin-event-form/admin-event-form-preview/admin-event-form-preview.component.ts similarity index 100% rename from web-app/src/app/admin/admin-event/admin-event-form/admin-event-form-preview/admin-event-form-preview.component.ts rename to web-app/admin/src/app/admin/admin-event/admin-event-form/admin-event-form-preview/admin-event-form-preview.component.ts diff --git a/web-app/src/app/admin/admin-feeds/admin-feed/admin-feed-delete/admin-feed-delete.component.html b/web-app/admin/src/app/admin/admin-feeds/admin-feed/admin-feed-delete/admin-feed-delete.component.html similarity index 100% rename from web-app/src/app/admin/admin-feeds/admin-feed/admin-feed-delete/admin-feed-delete.component.html rename to web-app/admin/src/app/admin/admin-feeds/admin-feed/admin-feed-delete/admin-feed-delete.component.html diff --git a/web-app/src/app/admin/admin-feeds/admin-feed/admin-feed-delete/admin-feed-delete.component.scss b/web-app/admin/src/app/admin/admin-feeds/admin-feed/admin-feed-delete/admin-feed-delete.component.scss similarity index 100% rename from web-app/src/app/admin/admin-feeds/admin-feed/admin-feed-delete/admin-feed-delete.component.scss rename to web-app/admin/src/app/admin/admin-feeds/admin-feed/admin-feed-delete/admin-feed-delete.component.scss diff --git a/web-app/src/app/admin/admin-feeds/admin-feed/admin-feed-delete/admin-feed-delete.component.spec.ts b/web-app/admin/src/app/admin/admin-feeds/admin-feed/admin-feed-delete/admin-feed-delete.component.spec.ts similarity index 88% rename from web-app/src/app/admin/admin-feeds/admin-feed/admin-feed-delete/admin-feed-delete.component.spec.ts rename to web-app/admin/src/app/admin/admin-feeds/admin-feed/admin-feed-delete/admin-feed-delete.component.spec.ts index 13f68e313..3d363260a 100644 --- a/web-app/src/app/admin/admin-feeds/admin-feed/admin-feed-delete/admin-feed-delete.component.spec.ts +++ b/web-app/admin/src/app/admin/admin-feeds/admin-feed/admin-feed-delete/admin-feed-delete.component.spec.ts @@ -1,5 +1,5 @@ import { HttpClientModule } from '@angular/common/http'; -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; import { MatDialogModule, MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog'; import { AdminFeedDeleteComponent } from './admin-feed-delete.component'; @@ -8,7 +8,7 @@ describe('AdminFeedDeleteComponent', () => { let component: AdminFeedDeleteComponent; let fixture: ComponentFixture; - beforeEach(async(() => { + beforeEach(waitForAsync(() => { TestBed.configureTestingModule({ imports: [MatDialogModule, HttpClientModule], providers: [{ diff --git a/web-app/src/app/admin/admin-feeds/admin-feed/admin-feed-delete/admin-feed-delete.component.ts b/web-app/admin/src/app/admin/admin-feeds/admin-feed/admin-feed-delete/admin-feed-delete.component.ts similarity index 100% rename from web-app/src/app/admin/admin-feeds/admin-feed/admin-feed-delete/admin-feed-delete.component.ts rename to web-app/admin/src/app/admin/admin-feeds/admin-feed/admin-feed-delete/admin-feed-delete.component.ts diff --git a/web-app/src/app/admin/admin-feeds/admin-feed/admin-feed-edit/admin-feed-edit-configuration.component.html b/web-app/admin/src/app/admin/admin-feeds/admin-feed/admin-feed-edit/admin-feed-edit-configuration.component.html similarity index 100% rename from web-app/src/app/admin/admin-feeds/admin-feed/admin-feed-edit/admin-feed-edit-configuration.component.html rename to web-app/admin/src/app/admin/admin-feeds/admin-feed/admin-feed-edit/admin-feed-edit-configuration.component.html diff --git a/web-app/src/app/admin/admin-feeds/admin-feed/admin-feed-edit/admin-feed-edit-configuration.component.scss b/web-app/admin/src/app/admin/admin-feeds/admin-feed/admin-feed-edit/admin-feed-edit-configuration.component.scss similarity index 100% rename from web-app/src/app/admin/admin-feeds/admin-feed/admin-feed-edit/admin-feed-edit-configuration.component.scss rename to web-app/admin/src/app/admin/admin-feeds/admin-feed/admin-feed-edit/admin-feed-edit-configuration.component.scss diff --git a/web-app/src/app/admin/admin-feeds/admin-feed/admin-feed-edit/admin-feed-edit-configuration.component.spec.ts b/web-app/admin/src/app/admin/admin-feeds/admin-feed/admin-feed-edit/admin-feed-edit-configuration.component.spec.ts similarity index 90% rename from web-app/src/app/admin/admin-feeds/admin-feed/admin-feed-edit/admin-feed-edit-configuration.component.spec.ts rename to web-app/admin/src/app/admin/admin-feeds/admin-feed/admin-feed-edit/admin-feed-edit-configuration.component.spec.ts index 302ce97f4..a68aab12e 100644 --- a/web-app/src/app/admin/admin-feeds/admin-feed/admin-feed-edit/admin-feed-edit-configuration.component.spec.ts +++ b/web-app/admin/src/app/admin/admin-feeds/admin-feed/admin-feed-edit/admin-feed-edit-configuration.component.spec.ts @@ -1,7 +1,7 @@ -import { HttpClientTestingModule, HttpTestingController } from '@angular/common/http/testing' +import { HttpClientTestingModule } from '@angular/common/http/testing' import { Component } from '@angular/core' -import { async, ComponentFixture, TestBed } from '@angular/core/testing' -import { FormControl, FormsModule, ReactiveFormsModule } from '@angular/forms' +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing' +import { FormsModule, ReactiveFormsModule } from '@angular/forms' import { MatAutocompleteModule } from '@angular/material/autocomplete' import { MatCheckboxModule } from '@angular/material/checkbox' import { MatExpansionModule } from '@angular/material/expansion' @@ -46,11 +46,10 @@ describe('FeedMetaDataComponent', () => { let host: TestFeedMetaDataHostComponent let target: AdminFeedEditConfigurationComponent let fixture: ComponentFixture - let tickPastDebounce: () => void let formChanges: FeedMetaDataNullable[] let metaDataChanges: FeedMetaData[] - beforeEach(async(() => { + beforeEach(waitForAsync(() => { TestBed.configureTestingModule({ imports: [ FormsModule, @@ -73,7 +72,6 @@ describe('FeedMetaDataComponent', () => { })) beforeEach(() => { - jasmine.clock().install() fixture = TestBed.createComponent(TestFeedMetaDataHostComponent) host = fixture.componentInstance target = fixture.debugElement.query(By.directive(AdminFeedEditConfigurationComponent)).references['target'] @@ -81,9 +79,6 @@ describe('FeedMetaDataComponent', () => { debounceTime = target.changeDebounceInterval formChanges = [] metaDataChanges = [] - tickPastDebounce = () => { - jasmine.clock().tick(debounceTime + 50) - } target.feedMetaDataForm.valueChanges.subscribe(formValue => { formChanges.push(formValue) }) @@ -92,10 +87,6 @@ describe('FeedMetaDataComponent', () => { }) }) - afterEach(() => { - jasmine.clock().uninstall() - }) - it('should create', () => { expect(target).toBeTruthy(); }) @@ -155,14 +146,14 @@ describe('FeedMetaDataComponent', () => { }) }) - it('emits a debounced event when the form value changes from input', () => { + it('emits a debounced event when the form value changes from input', async () => { const input = fixture.debugElement.query(x => x.attributes.formControlName === 'title').nativeElement as HTMLInputElement input.value = 'Test' const event = new Event('input') input.dispatchEvent(event) - - jasmine.clock().tick(debounceTime / 2) + fixture.detectChanges(); + await new Promise(resolve => setTimeout(resolve, debounceTime / 2)); expect(formChanges).toEqual([ { @@ -172,7 +163,8 @@ describe('FeedMetaDataComponent', () => { ]) expect(metaDataChanges).toEqual([]) - tickPastDebounce() + fixture.detectChanges() + await new Promise(resolve => setTimeout(resolve, debounceTime + 50)); expect(formChanges).toEqual([ { @@ -187,7 +179,7 @@ describe('FeedMetaDataComponent', () => { ]) }) - it('emits changed meta-data building on previous meta-data with changed form values', () => { + it('emits changed meta-data building on previous meta-data with changed form values', async () => { const topic: FeedTopic = { id: 'topic1', title: 'Topic 1', summary: 'Topic 1 summary' } const initFeedMetaData: FeedMetaData = { @@ -207,7 +199,8 @@ describe('FeedMetaDataComponent', () => { titleInput.value = 'Feed 1 Mod' titleInput.dispatchEvent(new Event('input')) - tickPastDebounce() + fixture.detectChanges() + await new Promise(resolve => setTimeout(resolve, debounceTime + 50)); expect(target.feedMetaData).toEqual({ ...initFeedMetaData, @@ -222,7 +215,8 @@ describe('FeedMetaDataComponent', () => { itemSecondaryPropertyInput.value = 'addedSecondary' itemSecondaryPropertyInput.dispatchEvent(new Event('input')) - tickPastDebounce() + fixture.detectChanges() + await new Promise(resolve => setTimeout(resolve, debounceTime + 50)); expect(target.feedMetaData).toEqual({ ...initFeedMetaData, @@ -243,7 +237,8 @@ describe('FeedMetaDataComponent', () => { itemTemporalPropertyInput.value = '' itemTemporalPropertyInput.dispatchEvent(new Event('input')) - tickPastDebounce() + fixture.detectChanges() + await new Promise(resolve => setTimeout(resolve, debounceTime + 50)); expect(target.feedMetaData).toEqual({ ..._.omit(initFeedMetaData, 'itemTemporalProperty'), @@ -270,7 +265,7 @@ describe('FeedMetaDataComponent', () => { ]) }) - it('does not include values for changed controls when value is empty', () => { + it('does not include values for changed controls when value is empty', async () => { const topic: FeedTopic = { id: 'topic1', @@ -296,7 +291,8 @@ describe('FeedMetaDataComponent', () => { summaryInput.value = 'Feed summary' summaryInput.dispatchEvent(new Event('input')) - tickPastDebounce() + fixture.detectChanges() + await new Promise(resolve => setTimeout(resolve, debounceTime + 50)); expect(formChanges).toEqual([ { @@ -339,7 +335,7 @@ describe('FeedMetaDataComponent', () => { expect(metaDataChanges).toEqual([]) }) - it('updates the form when the feed meta-data changes without emitting change event', () => { + it('updates the form when the feed meta-data changes without emitting change event', async () => { const feedMetaData: Required = Object.freeze({ title: 'Test', @@ -372,7 +368,7 @@ describe('FeedMetaDataComponent', () => { host.feedMetaData = feedMetaDataMod fixture.detectChanges() - tickPastDebounce() + await new Promise(resolve => setTimeout(resolve, debounceTime + 50)); expect(target.feedMetaDataForm.value).toEqual(formValueForMetaData(feedMetaDataMod)) expect(target.feedMetaData).toEqual(feedMetaDataMod) @@ -380,7 +376,7 @@ describe('FeedMetaDataComponent', () => { expect(metaDataChanges).toEqual([]) }) - it('populates form from feed meta-data merged with topic meta-data without emitting change preferring feed meta-data values', () => { + it('populates form from feed meta-data merged with topic meta-data without emitting change preferring feed meta-data values', async () => { const topic: FeedTopic = Object.freeze({ id: 'topic1', @@ -401,14 +397,14 @@ describe('FeedMetaDataComponent', () => { host.topic = topic fixture.detectChanges() - tickPastDebounce() + await new Promise(resolve => setTimeout(resolve, debounceTime + 50)); expect(target.topic).toEqual(topic) expect(target.feedMetaDataForm.value).toEqual(formValueForMetaData(topic)) host.feedMetaData = feedMetaData fixture.detectChanges() - tickPastDebounce() + await new Promise(resolve => setTimeout(resolve, debounceTime + 50)); expect(target.feedMetaDataForm.value).toEqual(formValueForMetaData({ title: feedMetaData.title, @@ -424,7 +420,7 @@ describe('FeedMetaDataComponent', () => { expect(metaDataChanges).toEqual([]) }) - it('does not populate form fields from topic or previous meta-data after user clears form values', () => { + it('does not populate form fields from topic or previous meta-data after user clears form values', async () => { const topic: FeedTopic = Object.freeze({ id: 'topic1', @@ -447,7 +443,7 @@ describe('FeedMetaDataComponent', () => { host.topic = topic host.feedMetaData = feedMetaData fixture.detectChanges() - tickPastDebounce() + await new Promise(resolve => setTimeout(resolve, debounceTime + 50)); expect(target.topic).toEqual(topic) expect(target.feedMetaData).toEqual(feedMetaData) @@ -467,7 +463,8 @@ describe('FeedMetaDataComponent', () => { const input = fixture.debugElement.query(x => x.attributes.formControlName === 'itemSecondaryProperty').nativeElement as HTMLInputElement input.value = '' input.dispatchEvent(new Event('input')) - tickPastDebounce() + fixture.detectChanges() + await new Promise(resolve => setTimeout(resolve, debounceTime + 50)); host.feedMetaData = target.feedMetaData fixture.detectChanges() @@ -492,14 +489,14 @@ describe('FeedMetaDataComponent', () => { }) }) - it('resets form from topic and sets feed meta-data to null without emitting change when topic changes and feed meta-data does not change', () => { + it('resets form from topic and sets feed meta-data to null without emitting change when topic changes and feed meta-data does not change', async () => { const topic1 = Object.freeze({ id: 'topic1', title: 'Topic 1' }) const topic2 = Object.freeze({ id: 'topic2', title: 'Topic 2' }) host.topic = topic1 fixture.detectChanges() - tickPastDebounce() + await new Promise(resolve => setTimeout(resolve, debounceTime + 50)); expect(target.feedMetaDataForm.value).toEqual(formValueForMetaData(topic1)) expect(target.feedMetaDataForm.pristine).toEqual(true) @@ -517,7 +514,8 @@ describe('FeedMetaDataComponent', () => { expect(target.feedMetaData).toBeNull() expect(metaDataChanges).toEqual([]) - tickPastDebounce() + fixture.detectChanges() + await new Promise(resolve => setTimeout(resolve, debounceTime + 50)); expect(target.feedMetaDataForm.pristine).toEqual(false) expect(target.feedMetaDataForm.dirty).toEqual(true) @@ -528,7 +526,7 @@ describe('FeedMetaDataComponent', () => { host.topic = topic2 fixture.detectChanges() - tickPastDebounce() + await new Promise(resolve => setTimeout(resolve, debounceTime + 50)); expect(target.feedMetaDataForm.pristine).toEqual(true) expect(target.feedMetaDataForm.dirty).toEqual(false) @@ -542,13 +540,14 @@ describe('FeedMetaDataComponent', () => { ]) }) - it('parses update frequency as a number', () => { + it('parses update frequency as a number', async () => { const input = fixture.debugElement.query(x => x.attributes.formControlName === 'updateFrequencySeconds').nativeElement as HTMLInputElement input.value = '111' const event = new Event('input') input.dispatchEvent(event) - tickPastDebounce() + fixture.detectChanges() + await new Promise(resolve => setTimeout(resolve, debounceTime + 50)); expect(formChanges).toEqual([ { @@ -568,7 +567,7 @@ describe('FeedMetaDataComponent', () => { ]) }) - describe('boolean checkbox behavior to avoid using indeterminate checkboxes', () => { + describe('boolean checkbox behavior to avoid using indeterminate checkboxes', async () => { const nullNonCheckboxKeys: Omit = Object.freeze({ title: null, @@ -580,7 +579,7 @@ describe('FeedMetaDataComponent', () => { updateFrequencySeconds: null }) - it('parses boolean form values as booleans', () => { + it('parses boolean form values as booleans', async () => { let observedMetaData: FeedMetaData | null = null target.feedMetaDataChanged.subscribe(metaData => { @@ -594,7 +593,8 @@ describe('FeedMetaDataComponent', () => { itemsHaveIdentityCheck.checked = true itemsHaveIdentityCheck.dispatchEvent(new Event('click')) - tickPastDebounce() + fixture.detectChanges() + await new Promise(resolve => setTimeout(resolve, debounceTime + 50)); expect(observedMetaData).toEqual({ itemsHaveIdentity: true @@ -607,7 +607,8 @@ describe('FeedMetaDataComponent', () => { itemsHaveSpatialDimensionCheck.checked = true itemsHaveSpatialDimensionCheck.dispatchEvent(new Event('click')) - tickPastDebounce() + fixture.detectChanges() + await new Promise(resolve => setTimeout(resolve, debounceTime + 50)); expect(observedMetaData).toEqual({ itemsHaveIdentity: true, @@ -641,7 +642,7 @@ describe('FeedMetaDataComponent', () => { } }) - it('does not set boolean checkboxes from topic meta-data when present in feed meta-data', () => { + it('does not set boolean checkboxes from topic meta-data when present in feed meta-data', async () => { const topicMetaData: Required> = { itemsHaveIdentity: true, @@ -659,7 +660,7 @@ describe('FeedMetaDataComponent', () => { } host.feedMetaData = feedMetaData fixture.detectChanges() - tickPastDebounce() + await new Promise(resolve => setTimeout(resolve, debounceTime + 50)); let expectedFormValue: FeedMetaDataNullable = { ...nullNonCheckboxKeys, @@ -719,7 +720,7 @@ describe('FeedMetaDataComponent', () => { } }) - it('includes checkbox values in the meta-data only if dirty when not in topic', () => { + it('includes checkbox values in the meta-data only if dirty when not in topic', async () => { host.topic = { id: 'topic1', @@ -745,7 +746,8 @@ describe('FeedMetaDataComponent', () => { const input = fixture.debugElement.query(x => x.attributes.formControlName === 'summary').nativeElement as HTMLInputElement input.value = 'No Checkboxes' input.dispatchEvent(new Event('input')) - tickPastDebounce() + fixture.detectChanges() + await new Promise(resolve => setTimeout(resolve, debounceTime + 50)); expect(metaDataChanges).toEqual([ { title: topicMetaData.title, summary: 'No Checkboxes' } @@ -768,7 +770,8 @@ describe('FeedMetaDataComponent', () => { .nativeElement as HTMLInputElement checkbox.checked = true checkbox.dispatchEvent(new Event('click')) - tickPastDebounce() + fixture.detectChanges() + await new Promise(resolve => setTimeout(resolve, debounceTime + 50)); expect(metaDataChanges).toEqual([ { title: topicMetaData.title, summary: 'No Checkboxes' }, @@ -780,7 +783,8 @@ describe('FeedMetaDataComponent', () => { checkbox.checked = false checkbox.dispatchEvent(new Event('click')) - tickPastDebounce() + fixture.detectChanges() + await new Promise(resolve => setTimeout(resolve, debounceTime + 50)); expect(metaDataChanges).toEqual([ { title: topicMetaData.title, summary: 'No Checkboxes' }, @@ -793,7 +797,7 @@ describe('FeedMetaDataComponent', () => { }) }) - it('resets the form to topic meta-data when feed meta-data changes to null', () => { + it('resets the form to topic meta-data when feed meta-data changes to null', async () => { host.topic = { id: 'topic1', title: 'Topic 1' } fixture.detectChanges() @@ -810,7 +814,8 @@ describe('FeedMetaDataComponent', () => { expect(target.feedMetaDataForm.value).toEqual(formValueForMetaData({ title: 'Dirty' })) expect(target.feedMetaData).toEqual(null) - tickPastDebounce() + fixture.detectChanges() + await new Promise(resolve => setTimeout(resolve, debounceTime + 50)); expect(target.feedMetaData).toEqual({ title: 'Dirty' }) @@ -836,7 +841,7 @@ describe('FeedMetaDataComponent', () => { describe('accepting the meta-data', () => { - it('emits feed meta-data with value from changed non-empty inputs merged with original feed meta-data', () => { + it('emits feed meta-data with value from changed non-empty inputs merged with original feed meta-data', async () => { const topic: FeedTopic = { id: 'topic1', @@ -871,7 +876,8 @@ describe('FeedMetaDataComponent', () => { const itemSecondaryPropertyInput = fixture.debugElement.query(x => x.attributes.formControlName === 'itemSecondaryProperty').nativeElement as HTMLInputElement itemSecondaryPropertyInput.value = '' itemSecondaryPropertyInput.dispatchEvent(new Event('input')) - tickPastDebounce() + fixture.detectChanges() + await new Promise(resolve => setTimeout(resolve, debounceTime + 50)); const acceptButton = fixture.debugElement.queryAll(By.css('button')).find(x => x.nativeNode.textContent === host.acceptButtonText).nativeElement as HTMLButtonElement acceptButton.dispatchEvent(new Event('click')) @@ -912,7 +918,7 @@ describe('FeedMetaDataComponent', () => { expect(accepted).toEqual([ null ]) }) - it('emits the correct meta-data if accepted before debounce', () => { + it('emits the correct meta-data if accepted before debounce', async () => { const topic: FeedTopic = { id: 'topic1', @@ -937,7 +943,8 @@ describe('FeedMetaDataComponent', () => { itemSecondaryPropertyInput.value = 'prop3' itemSecondaryPropertyInput.dispatchEvent(new Event('input')) - jasmine.clock().tick(debounceTime / 2) + fixture.detectChanges() + await new Promise(resolve => setTimeout(resolve, debounceTime / 2)); const acceptButton = fixture.debugElement.queryAll(By.css('button')).find(x => x.nativeNode.textContent === host.acceptButtonText).nativeElement as HTMLButtonElement acceptButton.dispatchEvent(new Event('click')) @@ -956,7 +963,7 @@ describe('FeedMetaDataComponent', () => { }) }) - it('emits empty meta-data if all values were cleared', () => { + it('emits empty meta-data if all values were cleared', async () => { const topic: FeedTopic = { id: 'topic1', @@ -986,19 +993,22 @@ describe('FeedMetaDataComponent', () => { input.value = '' input.dispatchEvent(new Event('input')) - jasmine.clock().tick(debounceTime / 10) + fixture.detectChanges() + await new Promise(resolve => setTimeout(resolve, debounceTime / 10)); input = fixture.debugElement.query(x => x.attributes.formControlName === 'itemPrimaryProperty').nativeElement as HTMLInputElement input.value = '' input.dispatchEvent(new Event('input')) - jasmine.clock().tick(debounceTime / 10) + fixture.detectChanges() + await new Promise(resolve => setTimeout(resolve, debounceTime / 10)); input = fixture.debugElement.query(x => x.attributes.formControlName === 'updateFrequencySeconds').nativeElement as HTMLInputElement input.value = '' input.dispatchEvent(new Event('input')) - tickPastDebounce() + fixture.detectChanges() + await new Promise(resolve => setTimeout(resolve, debounceTime + 50)); target.onAccepted() expect(target.feedMetaDataForm.value).toEqual({ diff --git a/web-app/src/app/admin/admin-feeds/admin-feed/admin-feed-edit/admin-feed-edit-configuration.component.ts b/web-app/admin/src/app/admin/admin-feeds/admin-feed/admin-feed-edit/admin-feed-edit-configuration.component.ts similarity index 88% rename from web-app/src/app/admin/admin-feeds/admin-feed/admin-feed-edit/admin-feed-edit-configuration.component.ts rename to web-app/admin/src/app/admin/admin-feeds/admin-feed/admin-feed-edit/admin-feed-edit-configuration.component.ts index 5c082bf37..23c47bf27 100644 --- a/web-app/src/app/admin/admin-feeds/admin-feed/admin-feed-edit/admin-feed-edit-configuration.component.ts +++ b/web-app/admin/src/app/admin/admin-feeds/admin-feed/admin-feed-edit/admin-feed-edit-configuration.component.ts @@ -1,5 +1,5 @@ import { Component, EventEmitter, Input, OnChanges, OnInit, Output, SimpleChanges } from '@angular/core'; -import { FormControl, FormGroup } from '@angular/forms' +import { UntypedFormControl, UntypedFormGroup } from '@angular/forms' import { debounceTime, map } from 'rxjs/operators' import { FeedTopic } from '@ngageoint/mage.web-core-lib/feed' import { StaticIconReference } from '@ngageoint/mage.web-core-lib/static-icon' @@ -32,16 +32,16 @@ export class AdminFeedEditConfigurationComponent implements OnInit, OnChanges { @Output() cancelled = new EventEmitter(); @Output() opened = new EventEmitter(); - feedMetaDataForm: FormGroup = new FormGroup({ - title: new FormControl(), - summary: new FormControl(), - icon: new FormControl(), - itemsHaveIdentity: new FormControl(), - itemsHaveSpatialDimension: new FormControl(), - itemPrimaryProperty: new FormControl(), - itemSecondaryProperty: new FormControl(), - itemTemporalProperty: new FormControl(), - updateFrequencySeconds: new FormControl() + feedMetaDataForm: UntypedFormGroup = new UntypedFormGroup({ + title: new UntypedFormControl(), + summary: new UntypedFormControl(), + icon: new UntypedFormControl(), + itemsHaveIdentity: new UntypedFormControl(), + itemsHaveSpatialDimension: new UntypedFormControl(), + itemPrimaryProperty: new UntypedFormControl(), + itemSecondaryProperty: new UntypedFormControl(), + itemTemporalProperty: new UntypedFormControl(), + updateFrequencySeconds: new UntypedFormControl() }) itemSchemaPropertyTitles: { key: string, title: string }[] = []; readonly changeDebounceInterval = 500 @@ -127,17 +127,17 @@ type FeedMetaDataStringKeys = { [K in keyof FeedMetaData]: FeedMetaData[K] exten type FeedMetaDataBooleanKeys = { [K in keyof FeedMetaData]: FeedMetaData[K] extends boolean ? K : never }[keyof FeedMetaData] type FeedMetaDataNumberKeys = { [K in keyof FeedMetaData]: FeedMetaData[K] extends number ? K : never }[keyof FeedMetaData] -function formUpdateValueForTextControl(key: FeedMetaDataStringKeys, form: FormGroup, updateMetaData: FeedMetaData): string | null { +function formUpdateValueForTextControl(key: FeedMetaDataStringKeys, form: UntypedFormGroup, updateMetaData: FeedMetaData): string | null { const control = form.get(key) return control.dirty ? control.value as string || null : updateMetaData[key] || null } -function formUpdateValueForBooleanControl(key: FeedMetaDataBooleanKeys, form: FormGroup, updateMetaData: FeedMetaData): boolean | null { +function formUpdateValueForBooleanControl(key: FeedMetaDataBooleanKeys, form: UntypedFormGroup, updateMetaData: FeedMetaData): boolean | null { const control = form.get(key) return control.dirty ? control.value : (typeof updateMetaData[key] === 'boolean' ? updateMetaData[key] : null) } -function formUpdateValueForNumberControl(key: FeedMetaDataNumberKeys, form: FormGroup, updateMetaData: FeedMetaData): number | null { +function formUpdateValueForNumberControl(key: FeedMetaDataNumberKeys, form: UntypedFormGroup, updateMetaData: FeedMetaData): number | null { const control = form.get(key) if (control.dirty) { return typeof control.value === 'number' ? control.value : null @@ -145,7 +145,7 @@ function formUpdateValueForNumberControl(key: FeedMetaDataNumberKeys, form: Form return typeof updateMetaData[key] === 'number' ? updateMetaData[key] : null } -function formUpdateValueForIconControl(key: keyof Pick, form: FormGroup, updateMetaData: FeedMetaData): StaticIconReference | null { +function formUpdateValueForIconControl(key: keyof Pick, form: UntypedFormGroup, updateMetaData: FeedMetaData): StaticIconReference | null { const control = form.get(key) return control.dirty ? control.value as StaticIconReference : (updateMetaData.icon || null) } diff --git a/web-app/src/app/admin/admin-feeds/admin-feed/admin-feed-edit/admin-feed-edit-item-properties/admin-feed-edit-item-properties.component.html b/web-app/admin/src/app/admin/admin-feeds/admin-feed/admin-feed-edit/admin-feed-edit-item-properties/admin-feed-edit-item-properties.component.html similarity index 100% rename from web-app/src/app/admin/admin-feeds/admin-feed/admin-feed-edit/admin-feed-edit-item-properties/admin-feed-edit-item-properties.component.html rename to web-app/admin/src/app/admin/admin-feeds/admin-feed/admin-feed-edit/admin-feed-edit-item-properties/admin-feed-edit-item-properties.component.html diff --git a/web-app/src/app/admin/admin-feeds/admin-feed/admin-feed-edit/admin-feed-edit-item-properties/admin-feed-edit-item-properties.component.scss b/web-app/admin/src/app/admin/admin-feeds/admin-feed/admin-feed-edit/admin-feed-edit-item-properties/admin-feed-edit-item-properties.component.scss similarity index 100% rename from web-app/src/app/admin/admin-feeds/admin-feed/admin-feed-edit/admin-feed-edit-item-properties/admin-feed-edit-item-properties.component.scss rename to web-app/admin/src/app/admin/admin-feeds/admin-feed/admin-feed-edit/admin-feed-edit-item-properties/admin-feed-edit-item-properties.component.scss diff --git a/web-app/src/app/admin/admin-feeds/admin-feed/admin-feed-edit/admin-feed-edit-item-properties/admin-feed-edit-item-properties.component.spec.ts b/web-app/admin/src/app/admin/admin-feeds/admin-feed/admin-feed-edit/admin-feed-edit-item-properties/admin-feed-edit-item-properties.component.spec.ts similarity index 91% rename from web-app/src/app/admin/admin-feeds/admin-feed/admin-feed-edit/admin-feed-edit-item-properties/admin-feed-edit-item-properties.component.spec.ts rename to web-app/admin/src/app/admin/admin-feeds/admin-feed/admin-feed-edit/admin-feed-edit-item-properties/admin-feed-edit-item-properties.component.spec.ts index 5347c6e2d..893b79709 100644 --- a/web-app/src/app/admin/admin-feeds/admin-feed/admin-feed-edit/admin-feed-edit-item-properties/admin-feed-edit-item-properties.component.spec.ts +++ b/web-app/admin/src/app/admin/admin-feeds/admin-feed/admin-feed-edit/admin-feed-edit-item-properties/admin-feed-edit-item-properties.component.spec.ts @@ -1,6 +1,6 @@ import { JsonSchemaFormModule } from '@ajsf/core'; import { Component, ViewChild } from '@angular/core'; -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; import { FormsModule, ReactiveFormsModule } from '@angular/forms' import { MatCardModule } from '@angular/material/card' import { MatDividerModule } from '@angular/material/divider' @@ -10,7 +10,7 @@ import { MatInputModule } from '@angular/material/input' import { By } from '@angular/platform-browser' import { NoopAnimationsModule } from '@angular/platform-browser/animations'; import * as _ from 'lodash' -import { JsonSchemaModule } from 'src/app/json-schema/json-schema.module'; +import { JsonSchemaModule } from '../../../../../../app/json-schema/json-schema.module'; import { AdminFeedEditItemPropertiesComponent, SchemaFormValue, SimpleJsonSchema, SimplePropertyJsonSchema } from './admin-feed-edit-item-properties.component'; @@ -67,9 +67,8 @@ describe('AdminFeedEditItemPropertiesComponent', () => { let host: TestHostComponent let target: AdminFeedEditItemPropertiesComponent let fixture: ComponentFixture - let tickPastDebounce: () => void - beforeEach(async(() => { + beforeEach(waitForAsync(() => { TestBed.configureTestingModule({ imports: [ FormsModule, @@ -96,9 +95,6 @@ describe('AdminFeedEditItemPropertiesComponent', () => { host = fixture.componentInstance; target = host.target; fixture.detectChanges() - tickPastDebounce = () => { - jasmine.clock().tick(target.changeDebounceInterval + 50) - } }); it('should create', () => { @@ -111,7 +107,6 @@ describe('AdminFeedEditItemPropertiesComponent', () => { let schemaChanges: SimpleJsonSchema[] beforeEach(() => { - jasmine.clock().install() formChanges = [] schemaChanges = [] target.schemaForm.valueChanges.subscribe(x => { @@ -122,15 +117,12 @@ describe('AdminFeedEditItemPropertiesComponent', () => { }) }) - afterEach(() => { - jasmine.clock().uninstall() - }) - describe('updating the schema form', () => { - afterEach(() => { + afterEach(async () => { // ensure no schema changes are emitted while syncing form to input schema changes - tickPastDebounce() + fixture.detectChanges() + await new Promise(resolve => setTimeout(resolve, target.changeDebounceInterval + 50)); expect(schemaChanges).toEqual([]) }) @@ -487,7 +479,7 @@ describe('AdminFeedEditItemPropertiesComponent', () => { }) }) - it('emits debounced changes when form values change ', () => { + it('emits debounced changes when form values change ', async () => { host.topicSchema = { properties: { @@ -498,7 +490,7 @@ describe('AdminFeedEditItemPropertiesComponent', () => { } } fixture.detectChanges() - tickPastDebounce() + await new Promise(resolve => setTimeout(resolve, target.changeDebounceInterval + 50)); expect(schemaChanges).toEqual([]) @@ -521,7 +513,8 @@ describe('AdminFeedEditItemPropertiesComponent', () => { expect(formChanges).toEqual(expectedFormChanges) expect(target.feedSchema).toBeNull() - tickPastDebounce() + fixture.detectChanges() + await new Promise(resolve => setTimeout(resolve, target.changeDebounceInterval + 50)); expect(target.feedSchema).toEqual({ properties: { @@ -531,7 +524,7 @@ describe('AdminFeedEditItemPropertiesComponent', () => { expect(schemaChanges).toEqual([ target.feedSchema ]) }) - it('retains extra properties from topic schema in emitted schema changes', () => { + it('retains extra properties from topic schema in emitted schema changes', async () => { const extendedSchema = { type: 'object', @@ -548,7 +541,7 @@ describe('AdminFeedEditItemPropertiesComponent', () => { } host.topicSchema = extendedSchema as SimpleJsonSchema fixture.detectChanges() - tickPastDebounce() + await new Promise(resolve => setTimeout(resolve, target.changeDebounceInterval + 50)); expect(schemaChanges).toEqual([]) @@ -579,7 +572,8 @@ describe('AdminFeedEditItemPropertiesComponent', () => { expect(formChanges).toEqual(expectedFormChanges) expect(target.feedSchema).toBeNull() - tickPastDebounce() + fixture.detectChanges() + await new Promise(resolve => setTimeout(resolve, target.changeDebounceInterval + 50)); expect(target.feedSchema).toEqual({ type: 'object', @@ -593,7 +587,7 @@ describe('AdminFeedEditItemPropertiesComponent', () => { expect(schemaChanges).toEqual([ target.feedSchema ]) }) - it('does not emit a change when populating the form from the topic schema', () => { + it('does not emit a change when populating the form from the topic schema', async () => { host.topicSchema = { properties: { @@ -604,13 +598,13 @@ describe('AdminFeedEditItemPropertiesComponent', () => { } } fixture.detectChanges() - tickPastDebounce() + await new Promise(resolve => setTimeout(resolve, target.changeDebounceInterval + 50)); expect(target.schemaForm.value).toEqual(formValueForSchema(host.topicSchema)) expect(schemaChanges).toEqual([]) }) - it('does not emit a change when populating the form from the feed schema', () => { + it('does not emit a change when populating the form from the feed schema', async () => { host.feedSchema = { properties: { @@ -621,13 +615,13 @@ describe('AdminFeedEditItemPropertiesComponent', () => { } } fixture.detectChanges() - tickPastDebounce() + await new Promise(resolve => setTimeout(resolve, target.changeDebounceInterval + 50)); expect(target.schemaForm.value).toEqual(formValueForSchema(host.feedSchema)) expect(schemaChanges).toEqual([]) }) - it('does not emit a change when topic and feed schemas change', () => { + it('does not emit a change when topic and feed schemas change', async () => { host.topicSchema = { properties: { @@ -646,13 +640,13 @@ describe('AdminFeedEditItemPropertiesComponent', () => { } } fixture.detectChanges() - tickPastDebounce() + await new Promise(resolve => setTimeout(resolve, target.changeDebounceInterval + 50)); expect(target.schemaForm.value).toEqual(formValueForSchema(host.feedSchema)) expect(schemaChanges).toEqual([]) }) - it('does not emit a change when populating from feed schema after feed schema changes', () => { + it('does not emit a change when populating from feed schema after feed schema changes', async () => { host.topicSchema = { properties: { @@ -663,7 +657,7 @@ describe('AdminFeedEditItemPropertiesComponent', () => { } } fixture.detectChanges() - tickPastDebounce() + await new Promise(resolve => setTimeout(resolve, target.changeDebounceInterval + 50)); expect(target.schemaForm.value).toEqual(formValueForSchema(host.topicSchema)) @@ -676,13 +670,13 @@ describe('AdminFeedEditItemPropertiesComponent', () => { } } fixture.detectChanges() - tickPastDebounce() + await new Promise(resolve => setTimeout(resolve, target.changeDebounceInterval + 50)); expect(target.schemaForm.value).toEqual(formValueForSchema(host.feedSchema)) expect(schemaChanges).toEqual([]) }) - it('does not emit a change when populating from topic schema after feed schema changes to null', () => { + it('does not emit a change when populating from topic schema after feed schema changes to null', async () => { host.topicSchema = { properties: { @@ -701,13 +695,13 @@ describe('AdminFeedEditItemPropertiesComponent', () => { } } fixture.detectChanges() - tickPastDebounce() + await new Promise(resolve => setTimeout(resolve, target.changeDebounceInterval + 50)); expect(target.schemaForm.value).toEqual(formValueForSchema(host.feedSchema)) host.feedSchema = null fixture.detectChanges() - tickPastDebounce() + await new Promise(resolve => setTimeout(resolve, target.changeDebounceInterval + 50)); expect(target.schemaForm.value).toEqual(formValueForSchema(host.topicSchema)) expect(schemaChanges).toEqual([]) @@ -720,22 +714,17 @@ describe('AdminFeedEditItemPropertiesComponent', () => { let accepted: SimpleJsonSchema[] beforeEach(() => { - jasmine.clock().install() accepted = [] target.feedSchemaAccepted.subscribe(x => { accepted.push(x) }) }) - afterEach(() => { - jasmine.clock().uninstall() - }) - - it('emits a null schema if the user never changed the form from the topic schema', () => { + it('emits a null schema if the user never changed the form from the topic schema', async () => { host.topicSchema = topicSchema as SimpleJsonSchema fixture.detectChanges() - tickPastDebounce() + await new Promise(resolve => setTimeout(resolve, target.changeDebounceInterval + 50)); expect(target.schemaForm.value).toEqual(formValueForSchema(topicSchema as SimpleJsonSchema)) expect(accepted).toEqual([]) @@ -745,12 +734,12 @@ describe('AdminFeedEditItemPropertiesComponent', () => { expect(accepted).toEqual([ null ]) }) - it('emits a null schema if the user never changed the form from the feed schema', () => { + it('emits a null schema if the user never changed the form from the feed schema', async () => { host.topicSchema = topicSchema as SimpleJsonSchema host.feedSchema = topicSchema as SimpleJsonSchema fixture.detectChanges() - tickPastDebounce() + await new Promise(resolve => setTimeout(resolve, target.changeDebounceInterval + 50)); expect(target.schemaForm.value).toEqual(formValueForSchema(topicSchema as SimpleJsonSchema)) expect(accepted).toEqual([]) @@ -760,12 +749,12 @@ describe('AdminFeedEditItemPropertiesComponent', () => { expect(accepted).toEqual([ null ]) }) - it('emits the schema with changed form values applied', () => { + it('emits the schema with changed form values applied', async () => { host.topicSchema = topicSchema as SimpleJsonSchema host.feedSchema = topicSchema as SimpleJsonSchema fixture.detectChanges() - tickPastDebounce() + await new Promise(resolve => setTimeout(resolve, target.changeDebounceInterval + 50)); expect(target.schemaForm.value).toEqual(formValueForSchema(topicSchema as SimpleJsonSchema)) expect(accepted).toEqual([]) @@ -778,7 +767,8 @@ describe('AdminFeedEditItemPropertiesComponent', () => { referenceInput.value = 'Mod ' + referenceInput.value timestampInput.dispatchEvent(new Event('input')) referenceInput.dispatchEvent(new Event('input')) - tickPastDebounce() + fixture.detectChanges() + await new Promise(resolve => setTimeout(resolve, target.changeDebounceInterval + 50)); target.nextStep() @@ -801,12 +791,12 @@ describe('AdminFeedEditItemPropertiesComponent', () => { ]) }) - it('emits the correct schema if accepted before the debounce interval', () => { + it('emits the correct schema if accepted before the debounce interval', async () => { host.topicSchema = topicSchema as SimpleJsonSchema host.feedSchema = topicSchema as SimpleJsonSchema fixture.detectChanges() - tickPastDebounce() + await new Promise(resolve => setTimeout(resolve, target.changeDebounceInterval + 50)); expect(target.schemaForm.value).toEqual(formValueForSchema(topicSchema as SimpleJsonSchema)) expect(accepted).toEqual([]) @@ -816,7 +806,8 @@ describe('AdminFeedEditItemPropertiesComponent', () => { const timestampInput = allTitleInputs[titleInputOrder.findIndex(x => x.key === 'timestamp')].nativeElement as HTMLInputElement timestampInput.value = 'Mod ' + timestampInput.value timestampInput.dispatchEvent(new Event('input')) - jasmine.clock().tick(target.changeDebounceInterval / 2) + fixture.detectChanges() + await new Promise(resolve => setTimeout(resolve, target.changeDebounceInterval / 2)); expect(target.schemaForm.value).toEqual(formValueForSchema({ ...topicSchema, @@ -847,12 +838,12 @@ describe('AdminFeedEditItemPropertiesComponent', () => { ]) }) - it('emits the correct schema when accepted before debounce interval and feed schema is null', () => { + it('emits the correct schema when accepted before debounce interval and feed schema is null', async () => { host.topicSchema = topicSchema as SimpleJsonSchema host.feedSchema = null fixture.detectChanges() - tickPastDebounce() + await new Promise(resolve => setTimeout(resolve, target.changeDebounceInterval + 50)); expect(target.schemaForm.value).toEqual(formValueForSchema(topicSchema as SimpleJsonSchema)) expect(accepted).toEqual([]) @@ -862,7 +853,8 @@ describe('AdminFeedEditItemPropertiesComponent', () => { const timestampInput = allTitleInputs[titleInputOrder.findIndex(x => x.key === 'timestamp')].nativeElement as HTMLInputElement timestampInput.value = 'Mod ' + timestampInput.value timestampInput.dispatchEvent(new Event('input')) - jasmine.clock().tick(target.changeDebounceInterval / 2) + fixture.detectChanges() + await new Promise(resolve => setTimeout(resolve, target.changeDebounceInterval / 2)); expect(target.schemaForm.value).toEqual(formValueForSchema({ ...topicSchema, diff --git a/web-app/src/app/admin/admin-feeds/admin-feed/admin-feed-edit/admin-feed-edit-item-properties/admin-feed-edit-item-properties.component.ts b/web-app/admin/src/app/admin/admin-feeds/admin-feed/admin-feed-edit/admin-feed-edit-item-properties/admin-feed-edit-item-properties.component.ts similarity index 89% rename from web-app/src/app/admin/admin-feeds/admin-feed/admin-feed-edit/admin-feed-edit-item-properties/admin-feed-edit-item-properties.component.ts rename to web-app/admin/src/app/admin/admin-feeds/admin-feed/admin-feed-edit/admin-feed-edit-item-properties/admin-feed-edit-item-properties.component.ts index d1b399f95..94d99f094 100644 --- a/web-app/src/app/admin/admin-feeds/admin-feed/admin-feed-edit/admin-feed-edit-item-properties/admin-feed-edit-item-properties.component.ts +++ b/web-app/admin/src/app/admin/admin-feeds/admin-feed/admin-feed-edit/admin-feed-edit-item-properties/admin-feed-edit-item-properties.component.ts @@ -1,5 +1,5 @@ import { Component, EventEmitter, Input, OnChanges, OnInit, Output, SimpleChanges } from '@angular/core'; -import { FormArray, FormControl, FormGroup } from '@angular/forms' +import { UntypedFormArray, UntypedFormControl, UntypedFormGroup } from '@angular/forms' import * as _ from 'lodash' import { debounceTime, filter } from 'rxjs/operators' @@ -51,7 +51,7 @@ export class AdminFeedEditItemPropertiesComponent implements OnInit, OnChanges { @Output() cancelled = new EventEmitter(); @Output() opened = new EventEmitter(); - readonly schemaForm: FormArray = new FormArray([]) + readonly schemaForm: UntypedFormArray = new UntypedFormArray([]) readonly changeDebounceInterval = 500 private schemaChangesEnabled = true @@ -112,7 +112,7 @@ export class AdminFeedEditItemPropertiesComponent implements OnInit, OnChanges { } } -function syncPropertiesFormToSchemaProperties(form: FormArray, schema: SimpleJsonSchema): FormArray { +function syncPropertiesFormToSchemaProperties(form: UntypedFormArray, schema: SimpleJsonSchema): UntypedFormArray { const properties: SimpleJsonSchemaProperties = schema ? schema.properties || {} : {} const propertyKeys: string[] = Object.getOwnPropertyNames(properties).sort() const retainedFormKeys: { [key: string]: true } = {} @@ -141,17 +141,17 @@ function syncPropertiesFormToSchemaProperties(form: FormArray, schema: SimpleJso return form } -function formGroupForPropertySchema(key: string, schema: SimplePropertyJsonSchema): FormGroup { +function formGroupForPropertySchema(key: string, schema: SimplePropertyJsonSchema): UntypedFormGroup { const controls = { - key: new FormControl(key), - schema: new FormGroup({ - type: new FormControl(schema.type), - title: new FormControl(schema.title), - description: new FormControl(schema.description), - format: new FormControl(schema.format) + key: new UntypedFormControl(key), + schema: new UntypedFormGroup({ + type: new UntypedFormControl(schema.type), + title: new UntypedFormControl(schema.title), + description: new UntypedFormControl(schema.description), + format: new UntypedFormControl(schema.format) }) } - const schemaForm = new FormGroup(controls) + const schemaForm = new UntypedFormGroup(controls) return schemaForm } diff --git a/web-app/src/app/admin/admin-feeds/admin-feed/admin-feed-edit/admin-feed-edit-topic/admin-feed-edit-topic-configuration.component.html b/web-app/admin/src/app/admin/admin-feeds/admin-feed/admin-feed-edit/admin-feed-edit-topic/admin-feed-edit-topic-configuration.component.html similarity index 100% rename from web-app/src/app/admin/admin-feeds/admin-feed/admin-feed-edit/admin-feed-edit-topic/admin-feed-edit-topic-configuration.component.html rename to web-app/admin/src/app/admin/admin-feeds/admin-feed/admin-feed-edit/admin-feed-edit-topic/admin-feed-edit-topic-configuration.component.html diff --git a/web-app/src/app/bootstrap/bootstrap.component.scss b/web-app/admin/src/app/admin/admin-feeds/admin-feed/admin-feed-edit/admin-feed-edit-topic/admin-feed-edit-topic-configuration.component.scss similarity index 100% rename from web-app/src/app/bootstrap/bootstrap.component.scss rename to web-app/admin/src/app/admin/admin-feeds/admin-feed/admin-feed-edit/admin-feed-edit-topic/admin-feed-edit-topic-configuration.component.scss diff --git a/web-app/src/app/admin/admin-feeds/admin-feed/admin-feed-edit/admin-feed-edit-topic/admin-feed-edit-topic-configuration.component.spec.ts b/web-app/admin/src/app/admin/admin-feeds/admin-feed/admin-feed-edit/admin-feed-edit-topic/admin-feed-edit-topic-configuration.component.spec.ts similarity index 92% rename from web-app/src/app/admin/admin-feeds/admin-feed/admin-feed-edit/admin-feed-edit-topic/admin-feed-edit-topic-configuration.component.spec.ts rename to web-app/admin/src/app/admin/admin-feeds/admin-feed/admin-feed-edit/admin-feed-edit-topic/admin-feed-edit-topic-configuration.component.spec.ts index 3b467a4ae..64e6fd827 100644 --- a/web-app/src/app/admin/admin-feeds/admin-feed/admin-feed-edit/admin-feed-edit-topic/admin-feed-edit-topic-configuration.component.spec.ts +++ b/web-app/admin/src/app/admin/admin-feeds/admin-feed/admin-feed-edit/admin-feed-edit-topic/admin-feed-edit-topic-configuration.component.spec.ts @@ -1,6 +1,6 @@ import { JsonSchemaFormModule } from '@ajsf/core' import { Component, ViewChild } from '@angular/core' -import { async, ComponentFixture, TestBed } from '@angular/core/testing' +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing' import { MatExpansionModule } from '@angular/material/expansion' import { By } from '@angular/platform-browser' import { NoopAnimationsModule } from '@angular/platform-browser/animations' @@ -33,7 +33,7 @@ describe('TopicConfigurationComponent', () => { let target: AdminFeedEditTopicConfigurationComponent let element: HTMLElement - beforeEach(async(() => { + beforeEach(waitForAsync(() => { TestBed.configureTestingModule({ imports: [ MatExpansionModule, @@ -95,14 +95,6 @@ describe('TopicConfigurationComponent', () => { describe('debouncing the change event', () => { - beforeEach(() => { - jasmine.clock().install() - }) - - afterEach(() => { - jasmine.clock().uninstall() - }) - it('debounces multiple change events', async () => { fixture.detectChanges() @@ -114,11 +106,14 @@ describe('TopicConfigurationComponent', () => { expect(changed).not.toHaveBeenCalled() - jasmine.clock().tick(target.changeDebounceInterval / 2) + fixture.detectChanges() + await new Promise(resolve => setTimeout(resolve, target.changeDebounceInterval / 2)); + expect(changed).not.toHaveBeenCalled() - jasmine.clock().tick(target.changeDebounceInterval / 2 + 2) + fixture.detectChanges() + await new Promise(resolve => setTimeout(resolve, target.changeDebounceInterval / 2 + 2)); expect(changed).toHaveBeenCalledTimes(1) expect(changed).toHaveBeenCalledWith({ derp: 10 }) diff --git a/web-app/src/app/admin/admin-feeds/admin-feed/admin-feed-edit/admin-feed-edit-topic/admin-feed-edit-topic-configuration.component.ts b/web-app/admin/src/app/admin/admin-feeds/admin-feed/admin-feed-edit/admin-feed-edit-topic/admin-feed-edit-topic-configuration.component.ts similarity index 100% rename from web-app/src/app/admin/admin-feeds/admin-feed/admin-feed-edit/admin-feed-edit-topic/admin-feed-edit-topic-configuration.component.ts rename to web-app/admin/src/app/admin/admin-feeds/admin-feed/admin-feed-edit/admin-feed-edit-topic/admin-feed-edit-topic-configuration.component.ts diff --git a/web-app/src/app/admin/admin-feeds/admin-feed/admin-feed-edit/admin-feed-edit-topic/admin-feed-edit-topic.component.html b/web-app/admin/src/app/admin/admin-feeds/admin-feed/admin-feed-edit/admin-feed-edit-topic/admin-feed-edit-topic.component.html similarity index 100% rename from web-app/src/app/admin/admin-feeds/admin-feed/admin-feed-edit/admin-feed-edit-topic/admin-feed-edit-topic.component.html rename to web-app/admin/src/app/admin/admin-feeds/admin-feed/admin-feed-edit/admin-feed-edit-topic/admin-feed-edit-topic.component.html diff --git a/web-app/src/ng1/css/authentication.css b/web-app/admin/src/app/admin/admin-feeds/admin-feed/admin-feed-edit/admin-feed-edit-topic/admin-feed-edit-topic.component.scss similarity index 100% rename from web-app/src/ng1/css/authentication.css rename to web-app/admin/src/app/admin/admin-feeds/admin-feed/admin-feed-edit/admin-feed-edit-topic/admin-feed-edit-topic.component.scss diff --git a/web-app/src/app/admin/admin-feeds/admin-feed/admin-feed-edit/admin-feed-edit-topic/admin-feed-edit-topic.component.spec.ts b/web-app/admin/src/app/admin/admin-feeds/admin-feed/admin-feed-edit/admin-feed-edit-topic/admin-feed-edit-topic.component.spec.ts similarity index 99% rename from web-app/src/app/admin/admin-feeds/admin-feed/admin-feed-edit/admin-feed-edit-topic/admin-feed-edit-topic.component.spec.ts rename to web-app/admin/src/app/admin/admin-feeds/admin-feed/admin-feed-edit/admin-feed-edit-topic/admin-feed-edit-topic.component.spec.ts index 79af7f0e2..6a688dbe0 100644 --- a/web-app/src/app/admin/admin-feeds/admin-feed/admin-feed-edit/admin-feed-edit-topic/admin-feed-edit-topic.component.spec.ts +++ b/web-app/admin/src/app/admin/admin-feeds/admin-feed/admin-feed-edit/admin-feed-edit-topic/admin-feed-edit-topic.component.spec.ts @@ -1,5 +1,5 @@ import { Component, ViewChild } from '@angular/core' -import { async, ComponentFixture, TestBed } from '@angular/core/testing' +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing' import { FormsModule, ReactiveFormsModule } from '@angular/forms' import { MatExpansionModule } from '@angular/material/expansion' import { MatSelectModule } from '@angular/material/select' @@ -35,7 +35,7 @@ describe('ChooseServiceTopicComponent', () => { let serviceSelected: jasmine.Spy let topicSelected: jasmine.Spy - beforeEach(async(() => { + beforeEach(waitForAsync(() => { TestBed.configureTestingModule({ imports: [ FormsModule, diff --git a/web-app/src/app/admin/admin-feeds/admin-feed/admin-feed-edit/admin-feed-edit-topic/admin-feed-edit-topic.component.ts b/web-app/admin/src/app/admin/admin-feeds/admin-feed/admin-feed-edit/admin-feed-edit-topic/admin-feed-edit-topic.component.ts similarity index 100% rename from web-app/src/app/admin/admin-feeds/admin-feed/admin-feed-edit/admin-feed-edit-topic/admin-feed-edit-topic.component.ts rename to web-app/admin/src/app/admin/admin-feeds/admin-feed/admin-feed-edit/admin-feed-edit-topic/admin-feed-edit-topic.component.ts diff --git a/web-app/src/app/admin/admin-feeds/admin-feed/admin-feed-edit/admin-feed-edit.component.html b/web-app/admin/src/app/admin/admin-feeds/admin-feed/admin-feed-edit/admin-feed-edit.component.html similarity index 100% rename from web-app/src/app/admin/admin-feeds/admin-feed/admin-feed-edit/admin-feed-edit.component.html rename to web-app/admin/src/app/admin/admin-feeds/admin-feed/admin-feed-edit/admin-feed-edit.component.html diff --git a/web-app/src/app/admin/admin-feeds/admin-feed/admin-feed-edit/admin-feed-edit.component.scss b/web-app/admin/src/app/admin/admin-feeds/admin-feed/admin-feed-edit/admin-feed-edit.component.scss similarity index 93% rename from web-app/src/app/admin/admin-feeds/admin-feed/admin-feed-edit/admin-feed-edit.component.scss rename to web-app/admin/src/app/admin/admin-feeds/admin-feed/admin-feed-edit/admin-feed-edit.component.scss index 52bb4324a..7e1b3d64a 100644 --- a/web-app/src/app/admin/admin-feeds/admin-feed/admin-feed-edit/admin-feed-edit.component.scss +++ b/web-app/admin/src/app/admin/admin-feeds/admin-feed/admin-feed-edit/admin-feed-edit.component.scss @@ -1,4 +1,4 @@ -@import '~@angular/material/theming'; +@use '@angular/material' as mat; @import "variables.scss"; .page { @@ -48,7 +48,7 @@ font-family: inherit; font-weight: 500; line-height: 1.1; - color: mat-color($app-primary); + color: mat.get-color-from-palette($app-primary); } .icon { diff --git a/web-app/src/app/admin/admin-feeds/admin-feed/admin-feed-edit/admin-feed-edit.component.spec.ts b/web-app/admin/src/app/admin/admin-feeds/admin-feed/admin-feed-edit/admin-feed-edit.component.spec.ts similarity index 88% rename from web-app/src/app/admin/admin-feeds/admin-feed/admin-feed-edit/admin-feed-edit.component.spec.ts rename to web-app/admin/src/app/admin/admin-feeds/admin-feed/admin-feed-edit/admin-feed-edit.component.spec.ts index 675521720..3be1c78b9 100644 --- a/web-app/src/app/admin/admin-feeds/admin-feed/admin-feed-edit/admin-feed-edit.component.spec.ts +++ b/web-app/admin/src/app/admin/admin-feeds/admin-feed/admin-feed-edit/admin-feed-edit.component.spec.ts @@ -1,6 +1,6 @@ import { JsonSchemaFormModule } from '@ajsf/core'; import { HttpClientTestingModule } from '@angular/common/http/testing' -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; import { FormsModule, ReactiveFormsModule } from '@angular/forms'; import { MatAutocompleteModule } from '@angular/material/autocomplete' import { MatCardModule } from '@angular/material/card' @@ -16,13 +16,13 @@ import { NoopAnimationsModule } from '@angular/platform-browser/animations'; import { StateService } from '@uirouter/angular'; import { NgxMatSelectSearchModule } from 'ngx-mat-select-search'; import { BehaviorSubject, of } from 'rxjs' -import { AdminBreadcrumbModule } from 'src/app/admin/admin-breadcrumb/admin-breadcrumb.module'; +import { AdminBreadcrumbModule } from '../../../../../app/admin/admin-breadcrumb/admin-breadcrumb.module'; import { MageCommonModule } from '@ngageoint/mage.web-core-lib/common' -import { FeedItemSummaryComponent } from 'src/app/feed/feed-item/feed-item-summary/feed-item-summary.component'; +import { FeedItemSummaryComponent } from '../../../../../app/feed/feed-item/feed-item-summary/feed-item-summary.component'; import { ServiceType, FeedService } from '@ngageoint/mage.web-core-lib/feed' -import { JsonSchemaWidgetAutocompleteComponent } from 'src/app/json-schema/json-schema-widget/json-schema-widget-autocomplete.component'; -import { JsonSchemaModule } from 'src/app/json-schema/json-schema.module'; -import { MomentModule } from 'src/app/moment/moment.module'; +import { JsonSchemaWidgetAutocompleteComponent } from '../../../../../app/json-schema/json-schema-widget/json-schema-widget-autocomplete.component'; +import { JsonSchemaModule } from '../../../../../app/json-schema/json-schema.module'; +import { MomentModule } from '../../../../../app/moment/moment.module'; import { StaticIconModule } from '@ngageoint/mage.web-core-lib/static-icon' import { AdminServiceEditComponent } from '../../admin-service/admin-service-edit/admin-service-edit.component'; import { AdminFeedEditConfigurationComponent } from './admin-feed-edit-configuration.component'; @@ -50,7 +50,7 @@ describe('FeedEditComponent', () => { let mockEditService: MockFeedEditService let mockFeedService: jasmine.SpyObj - beforeEach(async(() => { + beforeEach(waitForAsync(() => { mockEditService = { state$: new BehaviorSubject(freshEditState()), newFeed: jasmine.createSpy(), diff --git a/web-app/src/app/admin/admin-feeds/admin-feed/admin-feed-edit/admin-feed-edit.component.ts b/web-app/admin/src/app/admin/admin-feeds/admin-feed/admin-feed-edit/admin-feed-edit.component.ts similarity index 100% rename from web-app/src/app/admin/admin-feeds/admin-feed/admin-feed-edit/admin-feed-edit.component.ts rename to web-app/admin/src/app/admin/admin-feeds/admin-feed/admin-feed-edit/admin-feed-edit.component.ts diff --git a/web-app/src/app/admin/admin-feeds/admin-feed/admin-feed-edit/feed-edit.model.spec.ts b/web-app/admin/src/app/admin/admin-feeds/admin-feed/admin-feed-edit/feed-edit.model.spec.ts similarity index 100% rename from web-app/src/app/admin/admin-feeds/admin-feed/admin-feed-edit/feed-edit.model.spec.ts rename to web-app/admin/src/app/admin/admin-feeds/admin-feed/admin-feed-edit/feed-edit.model.spec.ts diff --git a/web-app/src/app/admin/admin-feeds/admin-feed/admin-feed-edit/feed-edit.model.ts b/web-app/admin/src/app/admin/admin-feeds/admin-feed/admin-feed-edit/feed-edit.model.ts similarity index 100% rename from web-app/src/app/admin/admin-feeds/admin-feed/admin-feed-edit/feed-edit.model.ts rename to web-app/admin/src/app/admin/admin-feeds/admin-feed/admin-feed-edit/feed-edit.model.ts diff --git a/web-app/src/app/admin/admin-feeds/admin-feed/admin-feed-edit/feed-edit.service.spec.ts b/web-app/admin/src/app/admin/admin-feeds/admin-feed/admin-feed-edit/feed-edit.service.spec.ts similarity index 99% rename from web-app/src/app/admin/admin-feeds/admin-feed/admin-feed-edit/feed-edit.service.spec.ts rename to web-app/admin/src/app/admin/admin-feeds/admin-feed/admin-feed-edit/feed-edit.service.spec.ts index 93204490c..73627d85f 100644 --- a/web-app/src/app/admin/admin-feeds/admin-feed/admin-feed-edit/feed-edit.service.spec.ts +++ b/web-app/admin/src/app/admin/admin-feeds/admin-feed/admin-feed-edit/feed-edit.service.spec.ts @@ -19,7 +19,7 @@ const emptyState: Readonly = Object.freeze({ preview: null, }) -const emptyPreview: Readonly = Object.freeze({ +const emptyPreview: Readonly = { content: { feed: 'empty', items: { @@ -33,7 +33,7 @@ const emptyPreview: Readonly = Object.freeze({ service: 'empty', topic: 'empty' } -}) +} const services: Service[] = [ Object.freeze({ diff --git a/web-app/src/app/admin/admin-feeds/admin-feed/admin-feed-edit/feed-edit.service.ts b/web-app/admin/src/app/admin/admin-feeds/admin-feed/admin-feed-edit/feed-edit.service.ts similarity index 100% rename from web-app/src/app/admin/admin-feeds/admin-feed/admin-feed-edit/feed-edit.service.ts rename to web-app/admin/src/app/admin/admin-feeds/admin-feed/admin-feed-edit/feed-edit.service.ts diff --git a/web-app/src/app/admin/admin-feeds/admin-feed/admin-feed.component.html b/web-app/admin/src/app/admin/admin-feeds/admin-feed/admin-feed.component.html similarity index 100% rename from web-app/src/app/admin/admin-feeds/admin-feed/admin-feed.component.html rename to web-app/admin/src/app/admin/admin-feeds/admin-feed/admin-feed.component.html diff --git a/web-app/src/app/admin/admin-feeds/admin-feed/admin-feed.component.scss b/web-app/admin/src/app/admin/admin-feeds/admin-feed/admin-feed.component.scss similarity index 92% rename from web-app/src/app/admin/admin-feeds/admin-feed/admin-feed.component.scss rename to web-app/admin/src/app/admin/admin-feeds/admin-feed/admin-feed.component.scss index bbdb266ef..969947928 100644 --- a/web-app/src/app/admin/admin-feeds/admin-feed/admin-feed.component.scss +++ b/web-app/admin/src/app/admin/admin-feeds/admin-feed/admin-feed.component.scss @@ -1,4 +1,4 @@ -@import '~@angular/material/theming'; +@use '@angular/material' as mat; @import "variables.scss"; .page { @@ -38,7 +38,7 @@ } .heading__icon { - color: mat-color($app-primary); + color: mat.get-color-from-palette($app-primary); margin-right: 16px; font-size: 40px; height: 40px; @@ -96,7 +96,7 @@ mat-card-header { color: white; - background-color: mat-color($app-primary); + background-color: mat.get-color-from-palette($app-primary); position: relative; padding: 16px 16px 0; margin-bottom: 8px; diff --git a/web-app/src/app/admin/admin-feeds/admin-feed/admin-feed.component.spec.ts b/web-app/admin/src/app/admin/admin-feeds/admin-feed/admin-feed.component.spec.ts similarity index 92% rename from web-app/src/app/admin/admin-feeds/admin-feed/admin-feed.component.spec.ts rename to web-app/admin/src/app/admin/admin-feeds/admin-feed/admin-feed.component.spec.ts index b33348ba1..8015829a6 100644 --- a/web-app/src/app/admin/admin-feeds/admin-feed/admin-feed.component.spec.ts +++ b/web-app/admin/src/app/admin/admin-feeds/admin-feed/admin-feed.component.spec.ts @@ -1,5 +1,5 @@ import { HttpClientModule } from '@angular/common/http'; -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; import { FormsModule, ReactiveFormsModule } from '@angular/forms'; import { MatAutocompleteModule } from '@angular/material/autocomplete' import { MatCardModule } from '@angular/material/card' @@ -12,7 +12,7 @@ import { MatSelectModule } from '@angular/material/select' import { MatSnackBarModule } from '@angular/material/snack-bar' import { StateService } from '@uirouter/angular'; import { NgxMatSelectSearchModule } from 'ngx-mat-select-search'; -import { Event, UserService } from 'src/app/upgrade/ajs-upgraded-providers'; +import { Event, UserService } from '../../../../app/upgrade/ajs-upgraded-providers'; import { AdminBreadcrumbModule } from '../../admin-breadcrumb/admin-breadcrumb.module'; import { AdminFeedComponent } from './admin-feed.component'; @@ -42,7 +42,7 @@ describe('AdminFeedComponent', () => { let component: AdminFeedComponent; let fixture: ComponentFixture; - beforeEach(async(() => { + beforeEach(waitForAsync(() => { TestBed.configureTestingModule({ providers: [{ provide: StateService, diff --git a/web-app/src/app/admin/admin-feeds/admin-feed/admin-feed.component.ts b/web-app/admin/src/app/admin/admin-feeds/admin-feed/admin-feed.component.ts similarity index 98% rename from web-app/src/app/admin/admin-feeds/admin-feed/admin-feed.component.ts rename to web-app/admin/src/app/admin/admin-feeds/admin-feed/admin-feed.component.ts index e7f94aa01..c1b6bbfa1 100644 --- a/web-app/src/app/admin/admin-feeds/admin-feed/admin-feed.component.ts +++ b/web-app/admin/src/app/admin/admin-feeds/admin-feed/admin-feed.component.ts @@ -1,6 +1,6 @@ import _ from 'underscore' import { Component, OnInit, Inject, ElementRef, ViewChild } from '@angular/core' -import { FormControl } from '@angular/forms' +import { UntypedFormControl } from '@angular/forms' import { Observable } from 'rxjs' import { map, startWith } from 'rxjs/operators' import { StateService } from '@uirouter/angular' @@ -55,7 +55,7 @@ export class AdminFeedComponent implements OnInit { addEvent = false selectedEvent: string - searchControl: FormControl = new FormControl() + searchControl: UntypedFormControl = new UntypedFormControl() eventModel: any filteredChoices: Observable events = [] diff --git a/web-app/src/app/admin/admin-feeds/admin-feeds.component.html b/web-app/admin/src/app/admin/admin-feeds/admin-feeds.component.html similarity index 100% rename from web-app/src/app/admin/admin-feeds/admin-feeds.component.html rename to web-app/admin/src/app/admin/admin-feeds/admin-feeds.component.html diff --git a/web-app/src/app/admin/admin-feeds/admin-feeds.component.scss b/web-app/admin/src/app/admin/admin-feeds/admin-feeds.component.scss similarity index 100% rename from web-app/src/app/admin/admin-feeds/admin-feeds.component.scss rename to web-app/admin/src/app/admin/admin-feeds/admin-feeds.component.scss diff --git a/web-app/src/app/admin/admin-feeds/admin-feeds.component.spec.ts b/web-app/admin/src/app/admin/admin-feeds/admin-feeds.component.spec.ts similarity index 93% rename from web-app/src/app/admin/admin-feeds/admin-feeds.component.spec.ts rename to web-app/admin/src/app/admin/admin-feeds/admin-feeds.component.spec.ts index e022414fc..934a456c7 100644 --- a/web-app/src/app/admin/admin-feeds/admin-feeds.component.spec.ts +++ b/web-app/admin/src/app/admin/admin-feeds/admin-feeds.component.spec.ts @@ -1,9 +1,9 @@ import { HttpClientTestingModule, HttpTestingController } from '@angular/common/http/testing'; -import { async, ComponentFixture, inject, TestBed } from '@angular/core/testing'; +import { ComponentFixture, inject, TestBed, waitForAsync } from '@angular/core/testing'; import { FormsModule, ReactiveFormsModule } from '@angular/forms'; import { NoopAnimationsModule } from '@angular/platform-browser/animations'; import { StateService } from '@uirouter/angular'; -import { UserService } from 'src/app/upgrade/ajs-upgraded-providers'; +import { UserService } from '../../../app/upgrade/ajs-upgraded-providers'; import { AdminFeedsComponent } from './admin-feeds.component'; import { AdminBreadcrumbModule } from '../admin-breadcrumb/admin-breadcrumb.module'; import { MatCardModule } from '@angular/material/card' @@ -29,7 +29,7 @@ describe('AdminFeedsComponent', () => { let component: AdminFeedsComponent; let fixture: ComponentFixture; - beforeEach(async(() => { + beforeEach(waitForAsync(() => { TestBed.configureTestingModule({ providers: [ { provide: StateService, useValue: {} }, diff --git a/web-app/src/app/admin/admin-feeds/admin-feeds.component.ts b/web-app/admin/src/app/admin/admin-feeds/admin-feeds.component.ts similarity index 100% rename from web-app/src/app/admin/admin-feeds/admin-feeds.component.ts rename to web-app/admin/src/app/admin/admin-feeds/admin-feeds.component.ts diff --git a/web-app/src/app/admin/admin-feeds/admin-feeds.module.ts b/web-app/admin/src/app/admin/admin-feeds/admin-feeds.module.ts similarity index 95% rename from web-app/src/app/admin/admin-feeds/admin-feeds.module.ts rename to web-app/admin/src/app/admin/admin-feeds/admin-feeds.module.ts index 4c441bf88..f36e1e94b 100644 --- a/web-app/src/app/admin/admin-feeds/admin-feeds.module.ts +++ b/web-app/admin/src/app/admin/admin-feeds/admin-feeds.module.ts @@ -25,13 +25,13 @@ import { MatToolbarModule } from '@angular/material/toolbar'; import { MatTooltipModule } from '@angular/material/tooltip'; import { UpgradeModule } from '@angular/upgrade/static'; import { NgxMatSelectSearchModule } from 'ngx-mat-select-search'; -import { MomentModule } from 'src/app/moment/moment.module'; +import { MomentModule } from '../../../app/moment/moment.module'; import { AdminBreadcrumbModule } from '../admin-breadcrumb/admin-breadcrumb.module'; import { AdminFeedsComponent } from './admin-feeds.component'; import { AdminFeedComponent } from './admin-feed/admin-feed.component'; import { AdminFeedDeleteComponent } from './admin-feed/admin-feed-delete/admin-feed-delete.component'; import { AdminFeedEditComponent } from './admin-feed/admin-feed-edit/admin-feed-edit.component'; -import { JsonSchemaWidgetAutocompleteComponent } from 'src/app/json-schema/json-schema-widget/json-schema-widget-autocomplete.component'; +import { JsonSchemaWidgetAutocompleteComponent } from '../../../app/json-schema/json-schema-widget/json-schema-widget-autocomplete.component'; import { AdminServiceEditComponent } from './admin-service/admin-service-edit/admin-service-edit.component'; import { AdminFeedEditItemPropertiesComponent } from './admin-feed/admin-feed-edit/admin-feed-edit-item-properties/admin-feed-edit-item-properties.component'; import { AdminFeedEditTopicComponent } from './admin-feed/admin-feed-edit/admin-feed-edit-topic/admin-feed-edit-topic.component'; diff --git a/web-app/src/app/admin/admin-feeds/admin-service/admin-service-delete/admin-service-delete.component.html b/web-app/admin/src/app/admin/admin-feeds/admin-service/admin-service-delete/admin-service-delete.component.html similarity index 100% rename from web-app/src/app/admin/admin-feeds/admin-service/admin-service-delete/admin-service-delete.component.html rename to web-app/admin/src/app/admin/admin-feeds/admin-service/admin-service-delete/admin-service-delete.component.html diff --git a/web-app/src/app/admin/admin-feeds/admin-service/admin-service-delete/admin-service-delete.component.scss b/web-app/admin/src/app/admin/admin-feeds/admin-service/admin-service-delete/admin-service-delete.component.scss similarity index 100% rename from web-app/src/app/admin/admin-feeds/admin-service/admin-service-delete/admin-service-delete.component.scss rename to web-app/admin/src/app/admin/admin-feeds/admin-service/admin-service-delete/admin-service-delete.component.scss diff --git a/web-app/src/app/admin/admin-feeds/admin-service/admin-service-delete/admin-service-delete.component.spec.ts b/web-app/admin/src/app/admin/admin-feeds/admin-service/admin-service-delete/admin-service-delete.component.spec.ts similarity index 88% rename from web-app/src/app/admin/admin-feeds/admin-service/admin-service-delete/admin-service-delete.component.spec.ts rename to web-app/admin/src/app/admin/admin-feeds/admin-service/admin-service-delete/admin-service-delete.component.spec.ts index 4f462e052..5efd69bbb 100644 --- a/web-app/src/app/admin/admin-feeds/admin-service/admin-service-delete/admin-service-delete.component.spec.ts +++ b/web-app/admin/src/app/admin/admin-feeds/admin-service/admin-service-delete/admin-service-delete.component.spec.ts @@ -1,4 +1,4 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; import { MatDialogModule, MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog'; import { AdminServiceDeleteComponent } from './admin-service-delete.component'; @@ -7,7 +7,7 @@ describe('AdminServiceDeleteComponent', () => { let component: AdminServiceDeleteComponent; let fixture: ComponentFixture; - beforeEach(async(() => { + beforeEach(waitForAsync(() => { TestBed.configureTestingModule({ imports: [MatDialogModule], providers: [{ diff --git a/web-app/src/app/admin/admin-feeds/admin-service/admin-service-delete/admin-service-delete.component.ts b/web-app/admin/src/app/admin/admin-feeds/admin-service/admin-service-delete/admin-service-delete.component.ts similarity index 100% rename from web-app/src/app/admin/admin-feeds/admin-service/admin-service-delete/admin-service-delete.component.ts rename to web-app/admin/src/app/admin/admin-feeds/admin-service/admin-service-delete/admin-service-delete.component.ts diff --git a/web-app/src/app/admin/admin-feeds/admin-service/admin-service-edit/admin-service-edit.component.html b/web-app/admin/src/app/admin/admin-feeds/admin-service/admin-service-edit/admin-service-edit.component.html similarity index 100% rename from web-app/src/app/admin/admin-feeds/admin-service/admin-service-edit/admin-service-edit.component.html rename to web-app/admin/src/app/admin/admin-feeds/admin-service/admin-service-edit/admin-service-edit.component.html diff --git a/web-app/admin/src/app/admin/admin-feeds/admin-service/admin-service-edit/admin-service-edit.component.scss b/web-app/admin/src/app/admin/admin-feeds/admin-service/admin-service-edit/admin-service-edit.component.scss new file mode 100644 index 000000000..e69de29bb diff --git a/web-app/src/app/admin/admin-feeds/admin-service/admin-service-edit/admin-service-edit.component.spec.ts b/web-app/admin/src/app/admin/admin-feeds/admin-service/admin-service-edit/admin-service-edit.component.spec.ts similarity index 92% rename from web-app/src/app/admin/admin-feeds/admin-service/admin-service-edit/admin-service-edit.component.spec.ts rename to web-app/admin/src/app/admin/admin-feeds/admin-service/admin-service-edit/admin-service-edit.component.spec.ts index c73395146..b298aac6e 100644 --- a/web-app/src/app/admin/admin-feeds/admin-service/admin-service-edit/admin-service-edit.component.spec.ts +++ b/web-app/admin/src/app/admin/admin-feeds/admin-service/admin-service-edit/admin-service-edit.component.spec.ts @@ -1,7 +1,6 @@ -import { JsonSchemaFormModule } from '@ajsf/core'; import { HttpClientTestingModule, HttpTestingController } from '@angular/common/http/testing'; import { Component, ViewChild } from '@angular/core'; -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; import { FormsModule, ReactiveFormsModule } from '@angular/forms'; import { MatSelectModule } from '@angular/material/select'; import { MatExpansionModule } from '@angular/material/expansion'; @@ -10,7 +9,7 @@ import { NoopAnimationsModule } from '@angular/platform-browser/animations'; import { NgxMatSelectSearchModule } from 'ngx-mat-select-search'; import { Service, ServiceType } from '@ngageoint/mage.web-core-lib/feed'; import { AdminServiceEditComponent } from './admin-service-edit.component'; -import { JsonSchemaModule } from 'src/app/json-schema/json-schema.module' +import { JsonSchemaModule } from '../../../../../app/json-schema/json-schema.module' describe('AdminServiceEditComponent', () => { @Component({ @@ -32,7 +31,7 @@ describe('AdminServiceEditComponent', () => { let component: AdminServiceEditComponent; let element: HTMLElement; - beforeEach(async(() => { + beforeEach(waitForAsync(() => { TestBed.configureTestingModule({ imports: [ MatExpansionModule, @@ -59,7 +58,7 @@ describe('AdminServiceEditComponent', () => { hostComponent = fixture.componentInstance; component = hostComponent.createServiceComponent; element = fixture.nativeElement; - httpMock = TestBed.get(HttpTestingController); + httpMock = TestBed.inject(HttpTestingController); }); afterEach(() => { @@ -185,15 +184,7 @@ describe('AdminServiceEditComponent', () => { }); }); - /* - the following two tests fail with ExpressionChangedAfterItHasBeenCheckedError: - Expression has changed after it was checked. i believe this is related to - https://github.com/angular/components/issues/16209. i am hoping this - magically works when we upgrade angular/material as well as ajsf, so punting - and skipping these tests for now so the ci build succeeds. - */ - - xit('should set the default value for a configSchema with a string', () => { + it('should set the default value for a configSchema with a string', () => { const serviceType: ServiceType = { pluginServiceTypeId: 'plugin1:type1', id: 'serviceTypeId', @@ -231,7 +222,7 @@ describe('AdminServiceEditComponent', () => { expect(component.serviceConfiguration).toEqual(serviceType.configSchema.default); }); - xit('should emit serviceCreated', async () => { + it('should emit serviceCreated', async () => { spyOn(component.serviceCreated, 'emit'); const serviceType: ServiceType = { diff --git a/web-app/src/app/admin/admin-feeds/admin-service/admin-service-edit/admin-service-edit.component.ts b/web-app/admin/src/app/admin/admin-feeds/admin-service/admin-service-edit/admin-service-edit.component.ts similarity index 94% rename from web-app/src/app/admin/admin-feeds/admin-service/admin-service-edit/admin-service-edit.component.ts rename to web-app/admin/src/app/admin/admin-feeds/admin-service/admin-service-edit/admin-service-edit.component.ts index 7e8863678..53da89303 100644 --- a/web-app/src/app/admin/admin-feeds/admin-service/admin-service-edit/admin-service-edit.component.ts +++ b/web-app/admin/src/app/admin/admin-feeds/admin-service/admin-service-edit/admin-service-edit.component.ts @@ -1,5 +1,5 @@ import { Component, EventEmitter, Input, OnChanges, OnInit, Output } from '@angular/core'; -import { FormControl } from '@angular/forms'; +import { UntypedFormControl } from '@angular/forms'; import { forkJoin } from 'rxjs'; import { Service, ServiceType, FeedService } from '@ngageoint/mage.web-core-lib/feed'; @@ -22,7 +22,7 @@ export class AdminServiceEditComponent implements OnInit, OnChanges { selectedServiceType: ServiceType; serviceFormReady = false; formOptions: any; - searchControl: FormControl = new FormControl(); + searchControl: UntypedFormControl = new UntypedFormControl(); serviceTypes: Array; services: Array; diff --git a/web-app/src/app/admin/admin-feeds/admin-service/admin-service.component.html b/web-app/admin/src/app/admin/admin-feeds/admin-service/admin-service.component.html similarity index 100% rename from web-app/src/app/admin/admin-feeds/admin-service/admin-service.component.html rename to web-app/admin/src/app/admin/admin-feeds/admin-service/admin-service.component.html diff --git a/web-app/src/app/admin/admin-feeds/admin-service/admin-service.component.scss b/web-app/admin/src/app/admin/admin-feeds/admin-service/admin-service.component.scss similarity index 91% rename from web-app/src/app/admin/admin-feeds/admin-service/admin-service.component.scss rename to web-app/admin/src/app/admin/admin-feeds/admin-service/admin-service.component.scss index b8cf3fe13..32c4092f1 100644 --- a/web-app/src/app/admin/admin-feeds/admin-service/admin-service.component.scss +++ b/web-app/admin/src/app/admin/admin-feeds/admin-service/admin-service.component.scss @@ -1,4 +1,4 @@ -@import '~@angular/material/theming'; +@use '@angular/material' as mat; @import "variables.scss"; .page { @@ -39,7 +39,7 @@ } .heading__icon { - color: mat-color($app-primary); + color: mat.get-color-from-palette($app-primary); margin-right: 16px; font-size: 40px; height: 40px; @@ -116,5 +116,5 @@ } mat-card-header { - color: mat-color($app-primary); + color: mat.get-color-from-palette($app-primary); } \ No newline at end of file diff --git a/web-app/src/app/admin/admin-feeds/admin-service/admin-service.component.spec.ts b/web-app/admin/src/app/admin/admin-feeds/admin-service/admin-service.component.spec.ts similarity index 96% rename from web-app/src/app/admin/admin-feeds/admin-service/admin-service.component.spec.ts rename to web-app/admin/src/app/admin/admin-feeds/admin-service/admin-service.component.spec.ts index e7267fceb..663de4110 100644 --- a/web-app/src/app/admin/admin-feeds/admin-service/admin-service.component.spec.ts +++ b/web-app/admin/src/app/admin/admin-feeds/admin-service/admin-service.component.spec.ts @@ -1,6 +1,6 @@ import { JsonSchemaFormModule } from '@ajsf/core'; import { HttpClientTestingModule, HttpTestingController } from '@angular/common/http/testing'; -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; import { MatCardModule } from '@angular/material/card' import { MatDialog, MatDialogModule, MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog' import { MatIconModule } from '@angular/material/icon' @@ -9,9 +9,9 @@ import { MatPaginatorModule } from '@angular/material/paginator' import { RawParams, StateOrName, StateService, TransitionOptions, TransitionPromise } from '@uirouter/angular'; import { of } from 'rxjs'; import { Observable } from 'rxjs/internal/Observable'; -import { Feed, FeedExpanded, ServiceType } from '@ngageoint/mage.web-core-lib/feed/feed.model'; -import { JsonSchemaModule } from 'src/app/json-schema/json-schema.module'; -import { UserService } from 'src/app/upgrade/ajs-upgraded-providers'; +import { FeedExpanded, ServiceType } from '@ngageoint/mage.web-core-lib/feed/feed.model'; +import { JsonSchemaModule } from '../../../../app/json-schema/json-schema.module'; +import { UserService } from '../../../../app/upgrade/ajs-upgraded-providers'; import { AdminBreadcrumbModule } from '../../admin-breadcrumb/admin-breadcrumb.module'; import { AdminServiceComponent } from './admin-service.component'; @@ -56,7 +56,7 @@ describe('AdminServiceComponent', () => { let httpMock: HttpTestingController; - beforeEach(async(() => { + beforeEach(waitForAsync(() => { TestBed.configureTestingModule({ providers: [{ provide: StateService, @@ -94,7 +94,7 @@ describe('AdminServiceComponent', () => { beforeEach(() => { fixture = TestBed.createComponent(AdminServiceComponent); component = fixture.componentInstance; - httpMock = TestBed.get(HttpTestingController); + httpMock = TestBed.inject(HttpTestingController); fixture.detectChanges(); }); diff --git a/web-app/src/app/admin/admin-feeds/admin-service/admin-service.component.ts b/web-app/admin/src/app/admin/admin-feeds/admin-service/admin-service.component.ts similarity index 97% rename from web-app/src/app/admin/admin-feeds/admin-service/admin-service.component.ts rename to web-app/admin/src/app/admin/admin-feeds/admin-service/admin-service.component.ts index 707c959d1..c55e4488e 100644 --- a/web-app/src/app/admin/admin-feeds/admin-service/admin-service.component.ts +++ b/web-app/admin/src/app/admin/admin-feeds/admin-service/admin-service.component.ts @@ -3,7 +3,7 @@ import { MatDialog } from '@angular/material/dialog'; import { StateService } from '@uirouter/angular'; import { forkJoin } from 'rxjs'; import { Feed, FeedExpanded, Service, ServiceType, FeedService } from '@ngageoint/mage.web-core-lib/feed'; -import { UserService } from 'src/app/upgrade/ajs-upgraded-providers'; +import { UserService } from '../../../../app/upgrade/ajs-upgraded-providers'; import _ from 'underscore'; import { AdminBreadcrumb } from '../../admin-breadcrumb/admin-breadcrumb.model'; import { AdminServiceDeleteComponent } from './admin-service-delete/admin-service-delete.component'; diff --git a/web-app/src/app/admin/admin-map/admin-map.component.html b/web-app/admin/src/app/admin/admin-map/admin-map.component.html similarity index 100% rename from web-app/src/app/admin/admin-map/admin-map.component.html rename to web-app/admin/src/app/admin/admin-map/admin-map.component.html diff --git a/web-app/src/app/admin/admin-map/admin-map.component.scss b/web-app/admin/src/app/admin/admin-map/admin-map.component.scss similarity index 100% rename from web-app/src/app/admin/admin-map/admin-map.component.scss rename to web-app/admin/src/app/admin/admin-map/admin-map.component.scss diff --git a/web-app/src/app/admin/admin-map/admin-map.component.spec.ts b/web-app/admin/src/app/admin/admin-map/admin-map.component.spec.ts similarity index 100% rename from web-app/src/app/admin/admin-map/admin-map.component.spec.ts rename to web-app/admin/src/app/admin/admin-map/admin-map.component.spec.ts diff --git a/web-app/src/app/admin/admin-map/admin-map.component.ts b/web-app/admin/src/app/admin/admin-map/admin-map.component.ts similarity index 92% rename from web-app/src/app/admin/admin-map/admin-map.component.ts rename to web-app/admin/src/app/admin/admin-map/admin-map.component.ts index 687a6d9a1..a8dd7075e 100644 --- a/web-app/src/app/admin/admin-map/admin-map.component.ts +++ b/web-app/admin/src/app/admin/admin-map/admin-map.component.ts @@ -1,8 +1,8 @@ import { Component, OnInit } from '@angular/core'; import { AdminBreadcrumb } from '../admin-breadcrumb/admin-breadcrumb.model' -import { MapSettingsService } from 'src/app/map/settings/map.settings.service'; +import { MapSettingsService } from '../../../app/map/settings/map.settings.service'; import { MatSnackBar } from '@angular/material/snack-bar'; -import { MapSettings } from 'src/app/entities/map/entities.map'; +import { MapSettings } from '../../../app/entities/map/entities.map'; @Component({ selector: 'mage-admin-map', diff --git a/web-app/src/app/admin/admin-settings/admin-settings-unsaved/admin-settings-unsaved.component.html b/web-app/admin/src/app/admin/admin-settings/admin-settings-unsaved/admin-settings-unsaved.component.html similarity index 100% rename from web-app/src/app/admin/admin-settings/admin-settings-unsaved/admin-settings-unsaved.component.html rename to web-app/admin/src/app/admin/admin-settings/admin-settings-unsaved/admin-settings-unsaved.component.html diff --git a/web-app/src/app/admin/admin-settings/admin-settings-unsaved/admin-settings-unsaved.component.scss b/web-app/admin/src/app/admin/admin-settings/admin-settings-unsaved/admin-settings-unsaved.component.scss similarity index 60% rename from web-app/src/app/admin/admin-settings/admin-settings-unsaved/admin-settings-unsaved.component.scss rename to web-app/admin/src/app/admin/admin-settings/admin-settings-unsaved/admin-settings-unsaved.component.scss index cf557af87..dffba0cf7 100644 --- a/web-app/src/app/admin/admin-settings/admin-settings-unsaved/admin-settings-unsaved.component.scss +++ b/web-app/admin/src/app/admin/admin-settings/admin-settings-unsaved/admin-settings-unsaved.component.scss @@ -1,9 +1,9 @@ -@import '~@angular/material/theming'; +@use '@angular/material' as mat; @import "variables.scss"; button { margin-left: 8px; - color: mat-color($app-primary); + color: mat.get-color-from-palette($app-primary); } mat-dialog-actions { diff --git a/web-app/admin/src/app/admin/admin-settings/admin-settings-unsaved/admin-settings-unsaved.component.spec.ts b/web-app/admin/src/app/admin/admin-settings/admin-settings-unsaved/admin-settings-unsaved.component.spec.ts new file mode 100644 index 000000000..e69de29bb diff --git a/web-app/src/app/admin/admin-settings/admin-settings-unsaved/admin-settings-unsaved.component.ts b/web-app/admin/src/app/admin/admin-settings/admin-settings-unsaved/admin-settings-unsaved.component.ts similarity index 100% rename from web-app/src/app/admin/admin-settings/admin-settings-unsaved/admin-settings-unsaved.component.ts rename to web-app/admin/src/app/admin/admin-settings/admin-settings-unsaved/admin-settings-unsaved.component.ts diff --git a/web-app/src/app/admin/admin-settings/admin-settings.component.html b/web-app/admin/src/app/admin/admin-settings/admin-settings.component.html similarity index 81% rename from web-app/src/app/admin/admin-settings/admin-settings.component.html rename to web-app/admin/src/app/admin/admin-settings/admin-settings.component.html index 22662a5de..ad15780e5 100644 --- a/web-app/src/app/admin/admin-settings/admin-settings.component.html +++ b/web-app/admin/src/app/admin/admin-settings/admin-settings.component.html @@ -5,11 +5,6 @@
- - - - diff --git a/web-app/src/app/admin/admin-settings/admin-settings.component.scss b/web-app/admin/src/app/admin/admin-settings/admin-settings.component.scss similarity index 90% rename from web-app/src/app/admin/admin-settings/admin-settings.component.scss rename to web-app/admin/src/app/admin/admin-settings/admin-settings.component.scss index ae081e83c..7fd463573 100644 --- a/web-app/src/app/admin/admin-settings/admin-settings.component.scss +++ b/web-app/admin/src/app/admin/admin-settings/admin-settings.component.scss @@ -1,4 +1,3 @@ -@import '~@angular/material/theming'; @import "variables.scss"; .page-container { diff --git a/web-app/admin/src/app/admin/admin-settings/admin-settings.component.spec.ts b/web-app/admin/src/app/admin/admin-settings/admin-settings.component.spec.ts new file mode 100644 index 000000000..69eb5b27e --- /dev/null +++ b/web-app/admin/src/app/admin/admin-settings/admin-settings.component.spec.ts @@ -0,0 +1,135 @@ +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; + +import { AdminSettingsComponent } from './admin-settings.component'; +import { NoopAnimationsModule } from '@angular/platform-browser/animations'; +import { MatPaginatorModule } from '@angular/material/paginator'; +import { MatSortModule } from '@angular/material/sort'; +import { MatSnackBarModule, MatSnackBar, MatSnackBarDismiss } from '@angular/material/snack-bar'; +import { MatTableModule } from '@angular/material/table'; +import { MatDialogModule, MatDialogRef } from '@angular/material/dialog'; +import { MatProgressSpinnerModule } from '@angular/material/progress-spinner'; +import { MatInputModule } from '@angular/material/input'; +import { MatFormFieldModule } from '@angular/material/form-field'; +import { MatIconModule } from '@angular/material/icon'; +import { HttpClientTestingModule } from '@angular/common/http/testing'; +import { MatCheckboxModule } from '@angular/material/checkbox'; +import { MatListModule } from '@angular/material/list'; +import { MatCardModule } from '@angular/material/card'; +import { MatExpansionModule } from '@angular/material/expansion'; +import { MatRadioModule } from '@angular/material/radio'; +import { MatSelectModule } from '@angular/material/select'; +import { MatOptionModule, MatNativeDateModule } from '@angular/material/core'; +import { MatDatepickerModule } from '@angular/material/datepicker'; +import { FormsModule } from '@angular/forms'; +import { MatChipsModule } from '@angular/material/chips'; +import { LocalStorageService, Settings, Team, Event, AuthenticationConfigurationService, UserService } from '../../../app/upgrade/ajs-upgraded-providers'; +import { Subject, Observable } from 'rxjs'; +import { StateService, TransitionService } from '@uirouter/core'; + +class MockSnackbarRef { + private readonly afterDismissedObservable = new Subject() + + afterDismissed(): Observable { + return this.afterDismissedObservable + } + + dismiss(): void { + this.afterDismissedObservable.next({ dismissedByAction: false }) + this.afterDismissedObservable.complete() + } + + dismissWithAction(): void { + this.afterDismissedObservable.next({ dismissedByAction: true }) + this.afterDismissedObservable.complete() + } +} + +class MockSnackbar { + private snackbarRef = new MockSnackbarRef() + + get _openedSnackBarRef(): any { + return this.snackbarRef + } + + open(): any { + return this.snackbarRef + } +} + +class MockSettings { + query(): any { + return { $promise: Promise.resolve({}) }; + } +} + +class MockTeam { + query(): any { + return { $promise: Promise.resolve([]) }; + } +} + +class MockEvent { + query(): any { + return { $promise: Promise.resolve([]) }; + } +} + +class MockAuthenticationConfigurationService { + getAllConfigurations(): Promise { + return Promise.resolve({ + data: [] + }); + } +} + +class MockStateService { + +} + +class MockTransitionService { + onExit(a: any, b: any, c: any): void { + + } + +} + +describe('AdminSettingsComponent', () => { + let component: AdminSettingsComponent; + let fixture: ComponentFixture; + + beforeEach(waitForAsync(() => { + const mockLocalStorageService = { getToken: (): string => '1' }; + const mockDialogRef = { close: (): void => { } }; + const mockUserService = { myself: { role: { permissions: ['UPDATE_AUTH_CONFIG'] } } }; + + TestBed.configureTestingModule({ + imports: [NoopAnimationsModule, MatPaginatorModule, MatSortModule, MatSnackBarModule, MatTableModule, MatDialogModule, + MatProgressSpinnerModule, MatInputModule, MatFormFieldModule, MatIconModule, HttpClientTestingModule, + NoopAnimationsModule, MatCheckboxModule, MatListModule, MatCardModule, MatExpansionModule, MatRadioModule, + MatSelectModule, MatOptionModule, MatDatepickerModule, MatNativeDateModule, FormsModule, MatChipsModule], + providers: [ + { provide: LocalStorageService, useValue: mockLocalStorageService }, + { provide: Settings, useClass: MockSettings }, + { provide: Team, useClass: MockTeam }, + { provide: Event, useClass: MockEvent }, + { provide: AuthenticationConfigurationService, useClass: MockAuthenticationConfigurationService }, + { provide: MatDialogRef, useValue: mockDialogRef }, + { provide: MatSnackBar, useClass: MockSnackbar }, + { provide: UserService, useValue: mockUserService }, + { provide: StateService, useClass: MockStateService }, + { provide: TransitionService, useClass: MockTransitionService } + ], + declarations: [AdminSettingsComponent] + }).compileComponents(); + })); + + beforeEach(() => { + fixture = TestBed.createComponent(AdminSettingsComponent); + component = fixture.componentInstance; + fixture.detectChanges(); + }); + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/web-app/admin/src/app/admin/admin-settings/admin-settings.component.ts b/web-app/admin/src/app/admin/admin-settings/admin-settings.component.ts new file mode 100644 index 000000000..801f50f20 --- /dev/null +++ b/web-app/admin/src/app/admin/admin-settings/admin-settings.component.ts @@ -0,0 +1,114 @@ +import { Component, OnInit } from '@angular/core'; +import { AdminBreadcrumb } from '../admin-breadcrumb/admin-breadcrumb.model' +import { MatSnackBar } from '@angular/material/snack-bar'; +import { MatDialog } from '@angular/material/dialog'; +import { AdminSettingsUnsavedComponent } from './admin-settings-unsaved/admin-settings-unsaved.component'; +import { TransitionService } from '@uirouter/core'; +import { lastValueFrom } from 'rxjs'; + +@Component({ + selector: 'admin-settings', + templateUrl: 'admin-settings.component.html', + styleUrls: ['./admin-settings.component.scss'] +}) +export class AdminSettingsComponent implements OnInit { + readonly breadcrumbs: AdminBreadcrumb[] = [{ + title: 'Settings', + icon: 'build' + }]; + + onSave = {}; + isBannerDirty = false; + isDisclaimerDirty = false; + isAuthenticationDirty = false; + isContactInfoDirty = false; + + constructor( + private readonly dialog: MatDialog, + private readonly snackBar: MatSnackBar, + private readonly transitionService: TransitionService) { } + + ngOnInit(): void { + this.transitionService.onExit({}, this.onUnsavedChanges, { bind: this }); + } + + save(): void { + this.onSave = {}; + } + + onBannerDirty(isDirty: boolean): void { + this.isBannerDirty = isDirty; + } + + onBannerSaved(status: boolean): void { + if (status) { + this.snackBar.open('Banner successfully saved', null, { + duration: 2000, + }); + } else { + this.snackBar.open('Failed to save banner', null, { + duration: 2000, + }); + }; + this.isBannerDirty = false; + } + + onDisclaimerDirty(isDirty: boolean): void { + this.isDisclaimerDirty = isDirty; + } + + onDisclaimerSaved(status: boolean): void { + if (status) { + this.snackBar.open('Disclaimer successfully saved', null, { + duration: 2000, + }); + } else { + this.snackBar.open('Failed to save disclaimer', null, { + duration: 2000, + }); + }; + this.isDisclaimerDirty = false; + } + + onContactInfoDirty(isDirty: boolean): void { + this.isContactInfoDirty = isDirty; + } + + onContactInfoSaved(status: boolean): void { + if (status) { + this.snackBar.open('Contact info successfully saved', null, { + duration: 2000, + }); + } else { + this.snackBar.open('Failed to save contact info', null, { + duration: 2000, + }); + }; + this.isContactInfoDirty = false; + } + + isDirty(): boolean { + return this.isDisclaimerDirty || this.isAuthenticationDirty || this.isBannerDirty || this.isContactInfoDirty; + } + + async onUnsavedChanges(): Promise { + if (this.isDirty()) { + const ref = this.dialog.open(AdminSettingsUnsavedComponent); + + const result_2 = await lastValueFrom(ref.afterClosed()); + let discard = true; + if (result_2) { + discard = result_2.discard; + } + if (discard) { + this.isAuthenticationDirty = false; + this.isBannerDirty = false; + this.isDisclaimerDirty = false; + this.isContactInfoDirty = false; + } + return await Promise.resolve(discard); + } + + return Promise.resolve(true); + } +} diff --git a/web-app/src/app/admin/admin-settings/admin-settings.ts b/web-app/admin/src/app/admin/admin-settings/admin-settings.ts similarity index 100% rename from web-app/src/app/admin/admin-settings/admin-settings.ts rename to web-app/admin/src/app/admin/admin-settings/admin-settings.ts diff --git a/web-app/src/app/admin/admin-settings/contact-info/contact-info.component.html b/web-app/admin/src/app/admin/admin-settings/contact-info/contact-info.component.html similarity index 100% rename from web-app/src/app/admin/admin-settings/contact-info/contact-info.component.html rename to web-app/admin/src/app/admin/admin-settings/contact-info/contact-info.component.html diff --git a/web-app/src/app/admin/admin-settings/contact-info/contact-info.component.scss b/web-app/admin/src/app/admin/admin-settings/contact-info/contact-info.component.scss similarity index 74% rename from web-app/src/app/admin/admin-settings/contact-info/contact-info.component.scss rename to web-app/admin/src/app/admin/admin-settings/contact-info/contact-info.component.scss index c4aa17867..be9299a31 100644 --- a/web-app/src/app/admin/admin-settings/contact-info/contact-info.component.scss +++ b/web-app/admin/src/app/admin/admin-settings/contact-info/contact-info.component.scss @@ -1,4 +1,4 @@ -@import '~@angular/material/theming'; +@use '@angular/material' as mat; @import "variables.scss"; .contact-info-summary { @@ -7,7 +7,7 @@ } mat-icon { - color: mat-color($app-primary); + color: mat.get-color-from-palette($app-primary); } mat-label { diff --git a/web-app/src/app/admin/admin-settings/contact-info/contact-info.component.spec.ts b/web-app/admin/src/app/admin/admin-settings/contact-info/contact-info.component.spec.ts similarity index 83% rename from web-app/src/app/admin/admin-settings/contact-info/contact-info.component.spec.ts rename to web-app/admin/src/app/admin/admin-settings/contact-info/contact-info.component.spec.ts index 296445006..2f016b573 100644 --- a/web-app/src/app/admin/admin-settings/contact-info/contact-info.component.spec.ts +++ b/web-app/admin/src/app/admin/admin-settings/contact-info/contact-info.component.spec.ts @@ -1,6 +1,6 @@ -import { async, ComponentFixture, TestBed } from "@angular/core/testing"; +import { ComponentFixture, TestBed, waitForAsync } from "@angular/core/testing"; import { NoopAnimationsModule } from "@angular/platform-browser/animations"; -import { Settings } from "src/app/upgrade/ajs-upgraded-providers"; +import { Settings } from "../../../../app/upgrade/ajs-upgraded-providers"; import { ContactInfoComponent } from "./contact-info.component"; import { HttpClientTestingModule } from '@angular/common/http/testing'; @@ -14,7 +14,7 @@ describe('Contact Info Tests', () => { let component: ContactInfoComponent; let fixture: ComponentFixture; - beforeEach(async(() => { + beforeEach(waitForAsync(() => { TestBed.configureTestingModule({ imports: [NoopAnimationsModule, HttpClientTestingModule], providers: [ @@ -33,4 +33,4 @@ describe('Contact Info Tests', () => { it('should create', () => { expect(component).toBeTruthy(); }); -}); \ No newline at end of file +}); diff --git a/web-app/src/app/admin/admin-settings/contact-info/contact-info.component.ts b/web-app/admin/src/app/admin/admin-settings/contact-info/contact-info.component.ts similarity index 96% rename from web-app/src/app/admin/admin-settings/contact-info/contact-info.component.ts rename to web-app/admin/src/app/admin/admin-settings/contact-info/contact-info.component.ts index 2e6d57ddc..575b34cff 100644 --- a/web-app/src/app/admin/admin-settings/contact-info/contact-info.component.ts +++ b/web-app/admin/src/app/admin/admin-settings/contact-info/contact-info.component.ts @@ -1,5 +1,5 @@ import { Component, EventEmitter, Inject, Input, OnChanges, OnInit, Output, SimpleChanges } from "@angular/core"; -import { Settings } from "src/app/upgrade/ajs-upgraded-providers"; +import { Settings } from "../../../../app/upgrade/ajs-upgraded-providers"; @Component({ selector: 'contact-info', diff --git a/web-app/src/app/admin/admin-settings/security-banner/security-banner.component.html b/web-app/admin/src/app/admin/admin-settings/security-banner/security-banner.component.html similarity index 100% rename from web-app/src/app/admin/admin-settings/security-banner/security-banner.component.html rename to web-app/admin/src/app/admin/admin-settings/security-banner/security-banner.component.html diff --git a/web-app/src/app/admin/admin-settings/security-banner/security-banner.component.scss b/web-app/admin/src/app/admin/admin-settings/security-banner/security-banner.component.scss similarity index 100% rename from web-app/src/app/admin/admin-settings/security-banner/security-banner.component.scss rename to web-app/admin/src/app/admin/admin-settings/security-banner/security-banner.component.scss diff --git a/web-app/src/app/admin/admin-settings/security-banner/security-banner.component.spec.ts b/web-app/admin/src/app/admin/admin-settings/security-banner/security-banner.component.spec.ts similarity index 83% rename from web-app/src/app/admin/admin-settings/security-banner/security-banner.component.spec.ts rename to web-app/admin/src/app/admin/admin-settings/security-banner/security-banner.component.spec.ts index 1bb1134a8..5b9754334 100644 --- a/web-app/src/app/admin/admin-settings/security-banner/security-banner.component.spec.ts +++ b/web-app/admin/src/app/admin/admin-settings/security-banner/security-banner.component.spec.ts @@ -1,6 +1,6 @@ -import { async, ComponentFixture, TestBed } from "@angular/core/testing"; +import { ComponentFixture, TestBed, waitForAsync } from "@angular/core/testing"; import { NoopAnimationsModule } from "@angular/platform-browser/animations"; -import { Settings } from "src/app/upgrade/ajs-upgraded-providers"; +import { Settings } from "../../../../app/upgrade/ajs-upgraded-providers"; import { SecurityBannerComponent } from "./security-banner.component"; class MockSettings { @@ -13,7 +13,7 @@ describe('SecurityBannerComponent', () => { let component: SecurityBannerComponent; let fixture: ComponentFixture; - beforeEach(async(() => { + beforeEach(waitForAsync(() => { TestBed.configureTestingModule({ imports: [NoopAnimationsModule], providers: [ diff --git a/web-app/src/app/admin/admin-settings/security-banner/security-banner.component.ts b/web-app/admin/src/app/admin/admin-settings/security-banner/security-banner.component.ts similarity index 96% rename from web-app/src/app/admin/admin-settings/security-banner/security-banner.component.ts rename to web-app/admin/src/app/admin/admin-settings/security-banner/security-banner.component.ts index 34e90c09f..a742e5941 100644 --- a/web-app/src/app/admin/admin-settings/security-banner/security-banner.component.ts +++ b/web-app/admin/src/app/admin/admin-settings/security-banner/security-banner.component.ts @@ -1,7 +1,7 @@ import { Component, OnInit, Inject, Output, EventEmitter, ViewChild, Input, OnChanges, SimpleChanges, OnDestroy } from '@angular/core'; import { Banner } from './security-banner.model'; -import { Settings } from 'src/app/upgrade/ajs-upgraded-providers'; -import { ColorPickerComponent } from 'src/app/color-picker/color-picker.component'; +import { Settings } from '../../../../app/upgrade/ajs-upgraded-providers'; +import { ColorPickerComponent } from '../../../../app/color-picker/color-picker.component'; import { Subscription } from 'rxjs'; @Component({ diff --git a/web-app/src/app/admin/admin-settings/security-banner/security-banner.model.ts b/web-app/admin/src/app/admin/admin-settings/security-banner/security-banner.model.ts similarity index 100% rename from web-app/src/app/admin/admin-settings/security-banner/security-banner.model.ts rename to web-app/admin/src/app/admin/admin-settings/security-banner/security-banner.model.ts diff --git a/web-app/src/app/admin/admin-settings/security-disclaimer/security-disclaimer.component.html b/web-app/admin/src/app/admin/admin-settings/security-disclaimer/security-disclaimer.component.html similarity index 100% rename from web-app/src/app/admin/admin-settings/security-disclaimer/security-disclaimer.component.html rename to web-app/admin/src/app/admin/admin-settings/security-disclaimer/security-disclaimer.component.html diff --git a/web-app/src/app/admin/admin-settings/security-disclaimer/security-disclaimer.component.scss b/web-app/admin/src/app/admin/admin-settings/security-disclaimer/security-disclaimer.component.scss similarity index 100% rename from web-app/src/app/admin/admin-settings/security-disclaimer/security-disclaimer.component.scss rename to web-app/admin/src/app/admin/admin-settings/security-disclaimer/security-disclaimer.component.scss diff --git a/web-app/src/app/admin/admin-settings/security-disclaimer/security-disclaimer.component.spec.ts b/web-app/admin/src/app/admin/admin-settings/security-disclaimer/security-disclaimer.component.spec.ts similarity index 83% rename from web-app/src/app/admin/admin-settings/security-disclaimer/security-disclaimer.component.spec.ts rename to web-app/admin/src/app/admin/admin-settings/security-disclaimer/security-disclaimer.component.spec.ts index 5d6bd3e3e..6949595c9 100644 --- a/web-app/src/app/admin/admin-settings/security-disclaimer/security-disclaimer.component.spec.ts +++ b/web-app/admin/src/app/admin/admin-settings/security-disclaimer/security-disclaimer.component.spec.ts @@ -1,6 +1,6 @@ -import { async, ComponentFixture, TestBed } from "@angular/core/testing"; +import { ComponentFixture, TestBed, waitForAsync } from "@angular/core/testing"; import { NoopAnimationsModule } from "@angular/platform-browser/animations"; -import { Settings } from "src/app/upgrade/ajs-upgraded-providers"; +import { Settings } from "../../../../app/upgrade/ajs-upgraded-providers"; import { SecurityDisclaimerComponent } from "./security-disclaimer.component"; class MockSettings { @@ -13,7 +13,7 @@ describe('SecurityDisclaimerComponent', () => { let component: SecurityDisclaimerComponent; let fixture: ComponentFixture; - beforeEach(async(() => { + beforeEach(waitForAsync(() => { TestBed.configureTestingModule({ imports: [NoopAnimationsModule], providers: [ diff --git a/web-app/src/app/admin/admin-settings/security-disclaimer/security-disclaimer.component.ts b/web-app/admin/src/app/admin/admin-settings/security-disclaimer/security-disclaimer.component.ts similarity index 96% rename from web-app/src/app/admin/admin-settings/security-disclaimer/security-disclaimer.component.ts rename to web-app/admin/src/app/admin/admin-settings/security-disclaimer/security-disclaimer.component.ts index bbccb59bf..d27577a91 100644 --- a/web-app/src/app/admin/admin-settings/security-disclaimer/security-disclaimer.component.ts +++ b/web-app/admin/src/app/admin/admin-settings/security-disclaimer/security-disclaimer.component.ts @@ -1,6 +1,6 @@ import { Component, OnInit, Inject, Output, EventEmitter, Input, OnChanges, SimpleChanges } from '@angular/core'; import { Disclaimer } from './security-disclaimer.model'; -import { Settings } from 'src/app/upgrade/ajs-upgraded-providers'; +import { Settings } from '../../../../app/upgrade/ajs-upgraded-providers'; @Component({ selector: 'security-disclaimer', diff --git a/web-app/src/app/admin/admin-settings/security-disclaimer/security-disclaimer.model.ts b/web-app/admin/src/app/admin/admin-settings/security-disclaimer/security-disclaimer.model.ts similarity index 100% rename from web-app/src/app/admin/admin-settings/security-disclaimer/security-disclaimer.model.ts rename to web-app/admin/src/app/admin/admin-settings/security-disclaimer/security-disclaimer.model.ts diff --git a/web-app/src/app/admin/admin.module.ts b/web-app/admin/src/app/admin/admin.module.ts similarity index 100% rename from web-app/src/app/admin/admin.module.ts rename to web-app/admin/src/app/admin/admin.module.ts diff --git a/web-app/src/app/admin/plugin-tab/plugin-tab-content.component.ts b/web-app/admin/src/app/admin/plugin-tab/plugin-tab-content.component.ts similarity index 79% rename from web-app/src/app/admin/plugin-tab/plugin-tab-content.component.ts rename to web-app/admin/src/app/admin/plugin-tab/plugin-tab-content.component.ts index 1cdfbb358..f2db7dde5 100644 --- a/web-app/src/app/admin/plugin-tab/plugin-tab-content.component.ts +++ b/web-app/admin/src/app/admin/plugin-tab/plugin-tab-content.component.ts @@ -22,8 +22,7 @@ export class AdminPluginTabContentComponent implements OnInit, OnChanges { this.pluginView.clear() if (this.pluginTab) { this.pluginView.clear() - const componentFactory = this.pluginTab.module.componentFactoryResolver.resolveComponentFactory(this.pluginTab.tabContentComponent) - this.pluginView.createComponent(componentFactory) + this.pluginView.createComponent(this.pluginTab.tabContentComponent, { ngModuleRef: this.pluginTab.module }) } } } diff --git a/web-app/admin/src/app/api/api.service.spec.ts b/web-app/admin/src/app/api/api.service.spec.ts new file mode 100644 index 000000000..e9606faa7 --- /dev/null +++ b/web-app/admin/src/app/api/api.service.spec.ts @@ -0,0 +1,30 @@ +import { HttpClient } from '@angular/common/http'; +import { HttpTestingController, HttpClientTestingModule } from '@angular/common/http/testing'; +import { TestBed } from '@angular/core/testing'; +import { ApiService } from './api.service'; + +describe('API Service Tests', () => { + let httpClient: HttpClient; + let httpTestingController: HttpTestingController; + + beforeEach(() => { + TestBed.configureTestingModule({ + providers: [], + imports: [HttpClientTestingModule] + }); + + // Inject the http service and test controller for each test + httpClient = TestBed.inject(HttpClient); + httpTestingController = TestBed.inject(HttpTestingController); + }); + + afterEach(() => { + // After every test, assert that there are no more pending requests. + httpTestingController.verify(); + }); + + it('should be created', () => { + const service: ApiService = TestBed.inject(ApiService); + expect(service).toBeTruthy(); + }); +}); \ No newline at end of file diff --git a/web-app/admin/src/app/api/api.service.ts b/web-app/admin/src/app/api/api.service.ts new file mode 100644 index 000000000..e40305a2d --- /dev/null +++ b/web-app/admin/src/app/api/api.service.ts @@ -0,0 +1,14 @@ +import { HttpClient } from "@angular/common/http"; +import { Injectable } from "@angular/core"; +import { Observable } from "rxjs"; + +@Injectable({ + providedIn: 'root' +}) +export class ApiService { + constructor(private client: HttpClient) { } + + getApi(): Observable { + return this.client.get('/api'); + } +} \ No newline at end of file diff --git a/web-app/admin/src/app/app.module.ts b/web-app/admin/src/app/app.module.ts new file mode 100644 index 000000000..b625de47b --- /dev/null +++ b/web-app/admin/src/app/app.module.ts @@ -0,0 +1,281 @@ +import { BrowserModule } from '@angular/platform-browser'; +import { NgModule, ApplicationRef, DoBootstrap } from '@angular/core'; + +import { UpgradeModule } from '@angular/upgrade/static'; +import { UIRouterUpgradeModule } from '@uirouter/angular-hybrid'; +import { FormsModule, ReactiveFormsModule } from '@angular/forms'; + +import { BrowserAnimationsModule } from '@angular/platform-browser/animations'; +import { NgxMatSelectSearchModule } from 'ngx-mat-select-search'; +import { ScrollingModule } from '@angular/cdk/scrolling'; +import { DragDropModule } from '@angular/cdk/drag-drop'; + +import { SaturationModule, HueModule, CheckboardModule, AlphaModule } from 'ngx-color'; + +import { MatAutocompleteModule } from '@angular/material/autocomplete'; +import { MatBadgeModule } from '@angular/material/badge'; +import { MatBottomSheetModule } from '@angular/material/bottom-sheet'; +import { MatButtonModule } from '@angular/material/button'; +import { MatButtonToggleModule } from '@angular/material/button-toggle'; +import { MatCardModule } from '@angular/material/card'; +import { MatCheckboxModule } from '@angular/material/checkbox'; +import { MatChipsModule } from '@angular/material/chips'; +import { MatRippleModule, MatNativeDateModule } from '@angular/material/core'; +import { MatDatepickerModule } from '@angular/material/datepicker'; +import { MatDialogModule } from '@angular/material/dialog'; +import { MatExpansionModule } from '@angular/material/expansion'; +import { MatFormFieldModule } from '@angular/material/form-field'; +import { MatGridListModule } from '@angular/material/grid-list'; +import { MatIconModule } from '@angular/material/icon'; +import { MatInputModule } from '@angular/material/input'; +import { MatListModule } from '@angular/material/list'; +import { MatPaginatorModule } from '@angular/material/paginator'; +import { MatProgressBarModule } from '@angular/material/progress-bar'; +import { MatProgressSpinnerModule } from '@angular/material/progress-spinner'; +import { MatRadioModule } from '@angular/material/radio'; +import { MatSelectModule } from '@angular/material/select'; +import { MatSidenavModule } from '@angular/material/sidenav'; +import { MatSliderModule } from '@angular/material/slider'; +import { MatSnackBarModule } from '@angular/material/snack-bar'; +import { MatSortModule } from '@angular/material/sort'; +import { MatTableModule } from '@angular/material/table'; +import { MatTabsModule } from '@angular/material/tabs'; +import { MatToolbarModule } from '@angular/material/toolbar'; +import { MatTooltipModule } from '@angular/material/tooltip'; +import { MatSlideToggleModule } from '@angular/material/slide-toggle'; +import { MatStepperModule } from '@angular/material/stepper'; + +import { MatDatetimepickerModule } from '@mat-datetimepicker/core' +import { MatMomentDatetimeModule } from '@mat-datetimepicker/moment' +import { InputMaskModule } from '@ngneat/input-mask' + +import { HttpClientModule, HTTP_INTERCEPTORS } from '@angular/common/http'; +import { ColorPickerComponent } from './color-picker/color-picker.component'; + +import { MapClipComponent } from './map/clip/clip.component'; +import { GeometryModule } from './geometry/geometry.module'; +import { MomentModule } from './moment/moment.module'; +import { BootstrapComponent } from './bootstrap/bootstrap.component'; +import { AttachmentComponent } from './observation/attachment/attachment.component'; +import { FilenamePipe } from './filename/filename.pipe'; +import { AttachUploadComponent } from './observation/attachment/attachment-upload/attachment-upload.component'; +import { UserAvatarComponent } from './user/user-avatar/user-avatar.component'; +import { TokenInterceptorService } from './http/token-interceptor.service'; + +import { + mapServiceProvider, + eventResourceProvider, + eventServiceProvider, + localStorageServiceProvider, + geometryServiceProvider, + observationServiceProvider, + filterServiceProvider, + locationServiceProvider, + userServiceProvider, + settingsProvider, + teamProvider, + eventProvider, + authenticationConfigurationServiceProvider, + userPagingServiceProvider +} from './upgrade/ajs-upgraded-providers'; + +import { + DMSValidatorDirective, + MGRSValidatorDirective, + ObservationEditCheckboxComponent, + ObservationEditDateComponent, + ObservationEditSelectComponent, + ObservationEditEmailComponent, + ObservationEditGeometryComponent, + ObservationEditGeometryFormComponent, + ObservationEditGeometryMapComponent, + ObservationEditMultiselectComponent, + ObservationEditNumberComponent, + ObservationEditRadioComponent, + ObservationEditTextComponent, + ObservationEditTextareaComponent, + ObservationEditFormComponent, + ObservationEditComponent +} from './observation/observation-edit/observation-edit'; + +import { FeedItemComponent } from './feed/feed-item/feed-item.component'; +import { FeedItemSummaryModule } from './feed/feed-item/feed-item-summary/feed-item-summary.module'; +import { AdminFeedsModule } from './admin/admin-feeds/admin-feeds.module'; +import { StaticIconModule } from '@ngageoint/mage.web-core-lib/static-icon' +import { MageCommonModule } from '@ngageoint/mage.web-core-lib/common' +import { AdminModule } from './admin/admin.module' +import { AdminSettingsComponent } from './admin/admin-settings/admin-settings.component'; +import { AdminBreadcrumbModule } from './admin/admin-breadcrumb/admin-breadcrumb.module'; +import { ContactInfoComponent } from './admin/admin-settings/admin-settings'; +import { SecurityBannerComponent, SecurityDisclaimerComponent } from './admin/admin-settings/admin-settings'; +import { DatetimePickerComponent } from './datetime-picker/datetime-picker.component'; +import { CommonModule } from '@angular/common'; +import { ObservationEditFormPickerComponent } from './observation/observation-edit/observation-edit-form-picker.component'; +import { ObservationEditDiscardComponent } from './observation/observation-edit/observation-edit-discard/observation-edit-discard.component'; +import { ObservationEditAttachmentComponent } from './observation/observation-edit/observation-edit-attachment/observation-edit-attachment.component'; +import { ObservationEditPasswordComponent } from './observation/observation-edit/observation-edit-password/observation-edit-password.component'; +import { ContactComponent } from './contact/contact.component'; +import { ContactDialogComponent } from "./contact/contact-dialog.component"; +import { AdminAuthenticationOidcComponent } from './admin/admin-authentication/admin-authentication-oidc/admin-authentication-oidc.component'; +import { AuthenticationDeleteComponent } from './admin/admin-authentication/admin-authentication-delete/admin-authentication-delete.component'; +import { AdminAuthenticationLocalComponent } from './admin/admin-authentication/admin-authentication-local/admin-authentication-local.component'; +import { PasswordPolicyComponent } from './admin/admin-authentication/admin-authentication-local//password-policy/password-policy.component'; +import { AccountLockComponent } from './admin/admin-authentication/admin-authentication-local//account-lock/account-lock.component'; +import { AdminAuthenticationComponent } from './admin/admin-authentication/admin-authentication.component'; +import { IconUploadComponent } from './admin/admin-authentication/admin-authentication-create/icon-upload/icon-upload.component'; +import { AuthenticationCreateComponent } from './admin/admin-authentication/admin-authentication-create/admin-authentication-create.component'; +import { AdminAuthenticationOAuth2Component } from './admin/admin-authentication/admin-authentication-oauth2/admin-authentication-oauth2.component'; +import { AdminAuthenticationLDAPComponent } from './admin/admin-authentication/admin-authentication-ldap/admin-authentication-ldap.component'; +import { AdminAuthenticationSAMLComponent } from './admin/admin-authentication/admin-authentication-saml/admin-authentication-saml.component'; +import { ButtonPreviewComponent } from './admin/admin-authentication/admin-authentication-create/button-preview/button-preview.component'; +import { AdminAuthenticationSettingsComponent } from './admin/admin-authentication/admin-authentication-settings.component'; +import { AdminSettingsUnsavedComponent } from './admin/admin-settings/admin-settings-unsaved/admin-settings-unsaved.component'; +import { AdminEventFormPreviewComponent } from './admin/admin-event/admin-event-form/admin-event-form-preview/admin-event-form-preview.component'; +import { AdminEventFormPreviewDialogComponent } from './admin/admin-event/admin-event-form/admin-event-form-preview/admin-event-form-preview-dialog.component'; +import { AdminMapComponent } from './admin/admin-map/admin-map.component'; + + +@NgModule({ + declarations: [ + ColorPickerComponent, + DMSValidatorDirective, + MGRSValidatorDirective, + FeedItemComponent, + ObservationEditComponent, + ObservationEditAttachmentComponent, + ObservationEditFormComponent, + ObservationEditFormPickerComponent, + ObservationEditMultiselectComponent, + ObservationEditCheckboxComponent, + ObservationEditSelectComponent, + ObservationEditEmailComponent, + ObservationEditNumberComponent, + ObservationEditTextComponent, + ObservationEditTextareaComponent, + ObservationEditRadioComponent, + ObservationEditGeometryComponent, + ObservationEditGeometryMapComponent, + ObservationEditGeometryFormComponent, + ObservationEditDateComponent, + MapClipComponent, + BootstrapComponent, + AttachmentComponent, + FilenamePipe, + AttachUploadComponent, + UserAvatarComponent, + AdminSettingsComponent, + PasswordPolicyComponent, + AccountLockComponent, + AuthenticationCreateComponent, + AuthenticationDeleteComponent, + SecurityBannerComponent, + SecurityDisclaimerComponent, + IconUploadComponent, + ContactInfoComponent, + DatetimePickerComponent, + ObservationEditDiscardComponent, + ObservationEditPasswordComponent, + ContactComponent, + ContactDialogComponent, + AdminAuthenticationOidcComponent, + AdminAuthenticationLocalComponent, + AdminAuthenticationComponent, + AdminAuthenticationOAuth2Component, + AdminAuthenticationLDAPComponent, + AdminAuthenticationSAMLComponent, + ButtonPreviewComponent, + AdminAuthenticationSettingsComponent, + AdminSettingsUnsavedComponent, + AdminEventFormPreviewComponent, + AdminEventFormPreviewDialogComponent, + AdminMapComponent + ], + imports: [ + CommonModule, + BrowserModule, + HttpClientModule, + UpgradeModule, + UIRouterUpgradeModule.forRoot(), + FormsModule, + ReactiveFormsModule, + BrowserAnimationsModule, + DragDropModule, + MatBadgeModule, + MatBottomSheetModule, + MatDialogModule, + MatButtonToggleModule, + MatNativeDateModule, + MatDatepickerModule, + MatMomentDatetimeModule, + MatDatetimepickerModule, + MatToolbarModule, + MatIconModule, + MatTooltipModule, + MatTabsModule, + MatButtonModule, + MatCardModule, + MatGridListModule, + MatProgressSpinnerModule, + MatFormFieldModule, + MatRadioModule, + MatCheckboxModule, + MatInputModule, + MatAutocompleteModule, + MatSelectModule, + MatSliderModule, + MatExpansionModule, + MatListModule, + MatRippleModule, + MatChipsModule, + MatSidenavModule, + MatSnackBarModule, + MatProgressBarModule, + MatTableModule, + MatPaginatorModule, + MatSortModule, + MageCommonModule, + MomentModule, + GeometryModule, + ScrollingModule, + SaturationModule, + HueModule, + AlphaModule, + CheckboardModule, + MatTableModule, + MatPaginatorModule, + MatSortModule, + MatSnackBarModule, + MatDatepickerModule, + NgxMatSelectSearchModule, + AdminModule, + AdminFeedsModule, + FeedItemSummaryModule, + StaticIconModule, + AdminBreadcrumbModule, + MatSlideToggleModule, + MatStepperModule, + InputMaskModule.forRoot() + ], + providers: [ + mapServiceProvider, + userServiceProvider, + filterServiceProvider, + eventResourceProvider, + eventServiceProvider, + geometryServiceProvider, + observationServiceProvider, + localStorageServiceProvider, + locationServiceProvider, + settingsProvider, + teamProvider, + eventProvider, + authenticationConfigurationServiceProvider, + userPagingServiceProvider, + { provide: HTTP_INTERCEPTORS, useClass: TokenInterceptorService, multi: true } + ] +}) +export class AppModule implements DoBootstrap { + // eslint-disable-next-line @typescript-eslint/no-empty-function + public ngDoBootstrap(appRef: ApplicationRef): void { + } +} diff --git a/web-app/src/app/bootstrap/bootstrap.component.html b/web-app/admin/src/app/bootstrap/bootstrap.component.html similarity index 100% rename from web-app/src/app/bootstrap/bootstrap.component.html rename to web-app/admin/src/app/bootstrap/bootstrap.component.html diff --git a/web-app/admin/src/app/bootstrap/bootstrap.component.scss b/web-app/admin/src/app/bootstrap/bootstrap.component.scss new file mode 100644 index 000000000..e69de29bb diff --git a/web-app/src/app/bootstrap/bootstrap.component.spec.ts b/web-app/admin/src/app/bootstrap/bootstrap.component.spec.ts similarity index 82% rename from web-app/src/app/bootstrap/bootstrap.component.spec.ts rename to web-app/admin/src/app/bootstrap/bootstrap.component.spec.ts index 6e1aecd60..fb5b7acbb 100644 --- a/web-app/src/app/bootstrap/bootstrap.component.spec.ts +++ b/web-app/admin/src/app/bootstrap/bootstrap.component.spec.ts @@ -1,4 +1,4 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; import { BootstrapComponent } from './bootstrap.component'; @@ -6,7 +6,7 @@ describe('BootstrapComponent', () => { let component: BootstrapComponent; let fixture: ComponentFixture; - beforeEach(async(() => { + beforeEach(waitForAsync(() => { TestBed.configureTestingModule({ declarations: [ BootstrapComponent ] }) diff --git a/web-app/src/app/bootstrap/bootstrap.component.ts b/web-app/admin/src/app/bootstrap/bootstrap.component.ts similarity index 100% rename from web-app/src/app/bootstrap/bootstrap.component.ts rename to web-app/admin/src/app/bootstrap/bootstrap.component.ts diff --git a/web-app/src/app/change-detection.spec.ts b/web-app/admin/src/app/change-detection.spec.ts similarity index 96% rename from web-app/src/app/change-detection.spec.ts rename to web-app/admin/src/app/change-detection.spec.ts index 184765c82..573432463 100644 --- a/web-app/src/app/change-detection.spec.ts +++ b/web-app/admin/src/app/change-detection.spec.ts @@ -1,5 +1,5 @@ import { Component, Input, OnChanges, SimpleChange, SimpleChanges } from '@angular/core' -import { async, ComponentFixture, TestBed } from '@angular/core/testing' +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing' import { FormsModule, ReactiveFormsModule } from '@angular/forms' import { By } from '@angular/platform-browser' import * as _ from 'lodash' @@ -61,7 +61,7 @@ describe('change detection', () => { let host: TestHostComponent let target: ChangeConsumerComponent - beforeEach(async(() => { + beforeEach(waitForAsync(() => { TestBed.configureTestingModule({ providers: [], imports: [ diff --git a/web-app/admin/src/app/color-picker/color-picker.component.html b/web-app/admin/src/app/color-picker/color-picker.component.html new file mode 100644 index 000000000..55090b0f4 --- /dev/null +++ b/web-app/admin/src/app/color-picker/color-picker.component.html @@ -0,0 +1,40 @@ +
+ + {{label}} + + + +
+ +
+
+
+ + +
+
+ +
+
+
+
+ +
+
+ +
+
+
+ +
+
+
+ +
+ +
+ + +
+
+ diff --git a/web-app/admin/src/app/color-picker/color-picker.component.scss b/web-app/admin/src/app/color-picker/color-picker.component.scss new file mode 100644 index 000000000..d9bd39a4a --- /dev/null +++ b/web-app/admin/src/app/color-picker/color-picker.component.scss @@ -0,0 +1,111 @@ +@use '@angular/material' as mat; +@import "variables.scss"; + +mat-card { + display: flex; + flex-direction: column; + padding: 8px; + margin-top: -16px; + margin-bottom: 16px; +} + +:host ::ng-deep.mat-form-field-wrapper { + padding-bottom: unset; +} + +.swatch { + position: relative; + display: flex; + flex-direction: column; + margin-bottom: 16px; + cursor: pointer; +} + +.swatch > mat-label { + display: block; + position: relative; + margin-bottom: 2px; + font: 400 12px/24px Roboto, "Helvetica Neue", sans-serif; + color: mat.get-color-from-palette($app-primary); +} + +.swatch-input { + cursor: pointer; +} + +.checkboard { + position: absolute; + top: 16px; + bottom: 16px; + right: 12px; + left: 12px; +} + +.swatch-color { + position: absolute; + top: 0; + bottom: 0; + right: 0; + left: 0; + border-radius: 4px; + cursor: pointer; +} + +.color { + height: 200px; + display: flex; + flex-direction: column; +} + +.color-controls { + display: flex; + flex-direction: row; + margin-top: 4px; +} + +.sliders { + display: flex; + flex-direction: column; + flex: 1; +} + +.saturation { + position: relative; + flex: 1; + overflow: hidden; +} + +.hue { + position: relative; + height: 10px; +} + +.alpha { + position: relative; + height: 10px; + margin-top: 4px; +} + +.active-color { + position: relative; + height: 100%; + width: 24px; + margin-left: 4px; +} + +.sketch-active { + position: absolute; + top: 0px; + right: 0px; + bottom: 0px; + left: 0px; + border-radius: 2px; + box-shadow: rgba(0, 0, 0, 0.15) 0px 0px 0px 1px inset, rgba(0, 0, 0, 0.25) 0px 0px 4px inset; +} + +.actions { + margin-top: 8px; + display: flex; + justify-content: flex-end; +} + diff --git a/web-app/admin/src/app/color-picker/color-picker.component.spec.ts b/web-app/admin/src/app/color-picker/color-picker.component.spec.ts new file mode 100644 index 000000000..63e58a764 --- /dev/null +++ b/web-app/admin/src/app/color-picker/color-picker.component.spec.ts @@ -0,0 +1,71 @@ +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; + +import { ColorPickerComponent } from './color-picker.component'; +import { MatCardModule } from '@angular/material/card'; +import { MatFormFieldModule } from '@angular/material/form-field'; +import { MatInputModule } from '@angular/material/input'; +import { CheckboardModule, SaturationModule, HueModule, AlphaModule } from 'ngx-color'; +import { Component, ViewChild } from '@angular/core'; +import { NoopAnimationsModule } from '@angular/platform-browser/animations'; +import { TinyColor } from '@ctrl/tinycolor'; + +@Component({ + selector: `host-component`, + template: `` +}) +class TestHostComponent { + hexColor = '#000000FF'; + + @ViewChild(ColorPickerComponent) colorPicker: ColorPickerComponent; +} + +describe('ColorPickerComponent', () => { + let hostComponent: TestHostComponent; + let component: ColorPickerComponent; + let fixture: ComponentFixture; + + beforeEach(waitForAsync(() => { + TestBed.configureTestingModule({ + imports: [ NoopAnimationsModule, MatInputModule, MatFormFieldModule, MatCardModule, CheckboardModule, SaturationModule, HueModule, AlphaModule ], + declarations: [ TestHostComponent, ColorPickerComponent ] + }) + .compileComponents(); + })); + + beforeEach(() => { + fixture = TestBed.createComponent(TestHostComponent); + hostComponent = fixture.componentInstance; + fixture.detectChanges(); + component = hostComponent.colorPicker; + }); + + it('should create', () => { + expect(component).toBeTruthy(); + }); + + + it('should show color picker on open', () => { + component.open(); + expect(component.showColorPicker).toEqual(true); + }); + + it('should hide color picker on cancel', () => { + component.showColorPicker = true; + component.cancel(); + expect(component.showColorPicker).toEqual(false); + }); + + it('should emit color', () => { + spyOn(component.onColorChanged, 'emit'); + component.showColorPicker = true; + component.rgb = { r: 1, g: 0, b: 1, a: 1 }; + component.ok(); + expect(component.showColorPicker).toEqual(false); + expect(component.background).toEqual('rgba(1, 0, 1, 1)'); + expect(component.onColorChanged.emit).toHaveBeenCalledWith({ + color: new TinyColor(component.rgb).toHex8String() + }); + }); +}); + + diff --git a/web-app/admin/src/app/color-picker/color-picker.component.ts b/web-app/admin/src/app/color-picker/color-picker.component.ts new file mode 100644 index 000000000..a252c7d88 --- /dev/null +++ b/web-app/admin/src/app/color-picker/color-picker.component.ts @@ -0,0 +1,69 @@ +import { Component, Output, EventEmitter, OnInit, Input } from '@angular/core'; +import { ColorWrap, RGBA, toState } from 'ngx-color'; +import { TinyColor } from '@ctrl/tinycolor'; + +export interface ColorEvent { + color: string; +} + +@Component({ + selector: 'color-picker', + templateUrl: './color-picker.component.html', + styleUrls: ['./color-picker.component.scss'] +}) +export class ColorPickerComponent extends ColorWrap implements OnInit { + @Input() label: string + @Input() hexColor: string + @Output() onColorChanged = new EventEmitter() + + background: string + activeBackground: string + showColorPicker = false + + constructor() { + super(); + } + + ngOnInit(): void { + this.updateColor() + } + + ngOnChanges(): void { + this.updateColor() + } + + updateColor(): void { + this.setState(toState(this.hexColor, 0)) + this.background = this.getRGBAStyle(this.rgb) + } + + handleValueChange({ data, $event }): void { + this.handleChange(data, $event); + } + + afterValidChange(): void { + this.activeBackground = this.getRGBAStyle(this.rgb); + } + + open(): void { + this.showColorPicker = true; + } + + ok(): void { + this.showColorPicker = false; + this.background = this.getRGBAStyle(this.rgb); + + this.onColorChanged.emit({ + color: new TinyColor(this.rgb).toHex8String() + }); + } + + cancel(): void { + this.showColorPicker = false; + } + + getRGBAStyle(rgb: RGBA): string { + return `rgba(${rgb.r}, ${rgb.g}, ${rgb.b}, ${rgb.a})`; + } + +} diff --git a/web-app/admin/src/app/contact/contact-dialog.component.html b/web-app/admin/src/app/contact/contact-dialog.component.html new file mode 100644 index 000000000..ab019eff7 --- /dev/null +++ b/web-app/admin/src/app/contact/contact-dialog.component.html @@ -0,0 +1,13 @@ +
+
{{statusTitle}}
+
+
+ +
+
+
+
+ + + +
\ No newline at end of file diff --git a/web-app/admin/src/app/contact/contact-dialog.component.scss b/web-app/admin/src/app/contact/contact-dialog.component.scss new file mode 100644 index 000000000..dffba0cf7 --- /dev/null +++ b/web-app/admin/src/app/contact/contact-dialog.component.scss @@ -0,0 +1,12 @@ +@use '@angular/material' as mat; +@import "variables.scss"; + +button { + margin-left: 8px; + color: mat.get-color-from-palette($app-primary); +} + +mat-dialog-actions { + display: flex; + justify-content: right; +} \ No newline at end of file diff --git a/web-app/admin/src/app/contact/contact-dialog.component.ts b/web-app/admin/src/app/contact/contact-dialog.component.ts new file mode 100644 index 000000000..836e68233 --- /dev/null +++ b/web-app/admin/src/app/contact/contact-dialog.component.ts @@ -0,0 +1,53 @@ +import { Component, Inject, OnInit } from "@angular/core"; +import { MatDialogRef, MAT_DIALOG_DATA } from "@angular/material/dialog"; +import { LinkGenerator } from "./utilities/link-generator"; + +@Component({ + selector: 'contact-dialog', + templateUrl: 'contact-dialog.component.html', + styleUrls: ['./contact-dialog.component.scss'], +}) +export class ContactDialogComponent implements OnInit { + api: any; + statusTitle: string; + statusMessage: string; + id: string; + strategy: any; + emailLink: string; + phoneLink: string; + + constructor( + public dialogRef: MatDialogRef, + @Inject(MAT_DIALOG_DATA) public data: any) { + + this.api = data.api; + this.statusTitle = data.info.statusTitle; + this.statusMessage = data.info.statusMessage; + this.id = data.info.id; + this.strategy = data.strategy; + } + + ngOnInit(): void { + const emailLink = LinkGenerator.emailLink(this.api.contactinfo, this.statusMessage, this.id, this.strategy); + const phoneLink = LinkGenerator.phoneLink(this.api.contactinfo); + + if (emailLink || phoneLink) { + this.statusMessage += "

"; + this.statusMessage += "You may contact your MAGE administrator via "; + if (emailLink) { + this.statusMessage += "Email"; + } + if (emailLink && phoneLink) { + this.statusMessage += " or "; + } + if (phoneLink) { + this.statusMessage += "Phone"; + } + this.statusMessage += " for further assistance."; + } + } + + close(): void { + this.dialogRef.close('cancel'); + } +} \ No newline at end of file diff --git a/web-app/src/app/contact/contact.component.spec.ts b/web-app/admin/src/app/contact/contact.component.spec.ts similarity index 90% rename from web-app/src/app/contact/contact.component.spec.ts rename to web-app/admin/src/app/contact/contact.component.spec.ts index 6b58eec86..16d53ae71 100644 --- a/web-app/src/app/contact/contact.component.spec.ts +++ b/web-app/admin/src/app/contact/contact.component.spec.ts @@ -1,4 +1,4 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; import { ContactComponent } from './contact.component'; import { MatDialogModule } from '@angular/material/dialog'; import { HttpClientTestingModule } from '@angular/common/http/testing'; @@ -8,7 +8,7 @@ describe('Contact Component', () => { let component: ContactComponent; let fixture: ComponentFixture; - beforeEach(async(() => { + beforeEach(waitForAsync(() => { TestBed.configureTestingModule({ imports: [HttpClientTestingModule, MatDialogModule], declarations: [ContactComponent] @@ -36,4 +36,4 @@ describe('Contact Component', () => { component.ngOnChanges(null); expect(component.dialog.openDialogs).toBeLessThanOrEqual(0); }); -}); \ No newline at end of file +}); diff --git a/web-app/src/app/contact/contact.component.ts b/web-app/admin/src/app/contact/contact.component.ts similarity index 100% rename from web-app/src/app/contact/contact.component.ts rename to web-app/admin/src/app/contact/contact.component.ts diff --git a/web-app/admin/src/app/contact/utilities/email-builder.ts b/web-app/admin/src/app/contact/utilities/email-builder.ts new file mode 100644 index 000000000..24b906145 --- /dev/null +++ b/web-app/admin/src/app/contact/utilities/email-builder.ts @@ -0,0 +1,66 @@ +export class EmailBuilder { + _statusMessage: string; + _identifier: string; + _strategy: any; + _subject: string; + _body: string; + + constructor(statusMessage: string, identifier: string, strategy: any) { + this._statusMessage = statusMessage; + this._identifier = identifier; + this._strategy = strategy; + + this._subject = ''; + this._body = ''; + } + + get subject(): string { + return this._subject; + } + + get body(): string { + return this._body; + } + + build(): void { + + const upperStatusMsg = this._statusMessage.toUpperCase(); + if (upperStatusMsg.includes('DEVICE')) { + if (upperStatusMsg.includes('REGISTER')) { + this._subject = 'Please approve my device'; + } else { + this._subject = 'Device ID issue'; + } + } else { + if (upperStatusMsg.includes('APPROVED') || upperStatusMsg.includes('ACTIVATE')) { + this._subject = "Please activate my account" + } else if (upperStatusMsg.includes('DISABLED')) { + this._subject = "Please enable my account" + } else if (upperStatusMsg.includes('LOCKED')) { + this._subject = "Please unlock my account" + } else if (upperStatusMsg.includes('CAPTCHA')) { + this._subject = "CAPTCHA issue" + } else if (upperStatusMsg.includes('EVENT')) { + this._subject = "Please add me to an event"; + } else { + this._subject = 'User login issue'; + } + } + + if (this._identifier) { + this._subject += ' - ' + this._identifier; + this._body += 'Identifier (username or device id): ' + this._identifier + '\n'; + } + if (this._strategy) { + this._body += 'Authentication Method: '; + if (this._strategy.title) { + this._body += this._strategy.title; + } else { + this._body += this._strategy; + } + this._body += '\n'; + } + + this._body += 'Error Message Received: ' + this._statusMessage; + } +} \ No newline at end of file diff --git a/web-app/admin/src/app/contact/utilities/link-generator.ts b/web-app/admin/src/app/contact/utilities/link-generator.ts new file mode 100644 index 000000000..98cacb489 --- /dev/null +++ b/web-app/admin/src/app/contact/utilities/link-generator.ts @@ -0,0 +1,26 @@ +import { EmailBuilder } from "./email-builder"; + +export class LinkGenerator { + static emailLink(adminContactInfo: any, statusMessage: string, username: string, strategy: any): string { + let url: string; + if (adminContactInfo && adminContactInfo.email) { + const emailBuilder = new EmailBuilder(statusMessage, username, strategy); + emailBuilder.build(); + + url = 'mailto:' + encodeURIComponent(adminContactInfo.email); + url += '?subject=' + encodeURIComponent(emailBuilder.subject); + url += '&body=' + encodeURIComponent(emailBuilder.body); + } + + return url; + } + + static phoneLink(adminContactInfo: any): string { + let url: string; + if (adminContactInfo && adminContactInfo.phone) { + url = 'tel:' + adminContactInfo.phone; + } + + return url; + } +} \ No newline at end of file diff --git a/web-app/admin/src/app/datetime-picker/datetime-picker.component.html b/web-app/admin/src/app/datetime-picker/datetime-picker.component.html new file mode 100644 index 000000000..5152bb866 --- /dev/null +++ b/web-app/admin/src/app/datetime-picker/datetime-picker.component.html @@ -0,0 +1,23 @@ +
+
+ + {{title}} Date + + + + Date is required + + Invalid date + +
+ +
+ + {{title}} Time {{timeZone === 'gmt' ? '(GMT)' : '(Local)'}} + + + + Invalid time + +
+
\ No newline at end of file diff --git a/web-app/admin/src/app/datetime-picker/datetime-picker.component.scss b/web-app/admin/src/app/datetime-picker/datetime-picker.component.scss new file mode 100644 index 000000000..4a8367dfa --- /dev/null +++ b/web-app/admin/src/app/datetime-picker/datetime-picker.component.scss @@ -0,0 +1,23 @@ +.datetime { + display: flex; + margin: 0 -8px; + align-items: flex-start; +} + +.date, .time { + flex: 1 1 0; + padding: 0 8px; +} + +:host ::ng-deep .mat-form-field-infix { + width: auto; +} + +:host ::ng-deep mat-icon { + color: rgba(0, 0, 0, 0.6); +} + +mat-form-field { + width: 100%; + margin-bottom: 16px; +} \ No newline at end of file diff --git a/web-app/admin/src/app/datetime-picker/datetime-picker.component.spec.ts b/web-app/admin/src/app/datetime-picker/datetime-picker.component.spec.ts new file mode 100644 index 000000000..c16937b48 --- /dev/null +++ b/web-app/admin/src/app/datetime-picker/datetime-picker.component.spec.ts @@ -0,0 +1,27 @@ +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; + +import { DatetimePickerComponent } from './datetime-picker.component'; + +/* TODO at least one test MUST be implemented +describe('DatetimePickerComponent', () => { + let component: DatetimePickerComponent; + let fixture: ComponentFixture; + + beforeEach(waitForAsync(() => { + TestBed.configureTestingModule({ + declarations: [ DatetimePickerComponent ] + }) + .compileComponents(); + })); + + beforeEach(() => { + fixture = TestBed.createComponent(DatetimePickerComponent); + component = fixture.componentInstance; + fixture.detectChanges(); + }); + + // it('should create', () => { + // expect(component).toBeTruthy(); + // }); +}); +*/ diff --git a/web-app/admin/src/app/datetime-picker/datetime-picker.component.ts b/web-app/admin/src/app/datetime-picker/datetime-picker.component.ts new file mode 100644 index 000000000..2fc94a1ce --- /dev/null +++ b/web-app/admin/src/app/datetime-picker/datetime-picker.component.ts @@ -0,0 +1,67 @@ +import { Component, EventEmitter, Inject, Input, OnChanges, Output, SimpleChanges, ViewChild } from '@angular/core'; +import { NgModel } from '@angular/forms'; +import { LocalStorageService } from '../upgrade/ajs-upgraded-providers'; +import * as moment from 'moment' + +@Component({ + selector: 'datetime-picker', + templateUrl: './datetime-picker.component.html', + styleUrls: ['./datetime-picker.component.scss'] +}) +export class DatetimePickerComponent implements OnChanges { + + @Input() title: string + @Input() required: boolean + @Input() datetime: Date + @Output() dateTimeChange = new EventEmitter() + + @ViewChild('dateModel') dateModel: NgModel + @ViewChild('timeModel') timeModel: NgModel + + date: moment.Moment + time: moment.Moment + timeZone: string + + constructor(@Inject(LocalStorageService) localStorageService: any) { + this.timeZone = localStorageService.getTimeZoneEdit(); + } + + ngOnChanges(changes: SimpleChanges): void { + if (changes.datetime && changes.datetime.currentValue) { + this.date = moment(changes.datetime.currentValue) + this.time = moment(changes.datetime.currentValue) + this.setValue() + } + } + + onDate(): void { + if (!this.date) { + this.time = null; + return + } + + if (!this.dateModel.invalid) { + this.setValue() + } + } + + onTime(): void { + if (!this.timeModel.invalid) { + this.setValue() + } + } + + private setValue(): void { + const date = this.date.set({ + hour: this.time ? this.time.get('hour') : 0, + minute: this.time ? this.time.get('minute') : 0, + second: this.time ? this.time.get('second') : 0, + }) + + if (this.timeZone === 'gmt') { + date.utc(true) + } + + this.dateTimeChange.emit(date.toDate()) + } +} diff --git a/web-app/admin/src/app/entities/map/entities.map.ts b/web-app/admin/src/app/entities/map/entities.map.ts new file mode 100644 index 000000000..507cba261 --- /dev/null +++ b/web-app/admin/src/app/entities/map/entities.map.ts @@ -0,0 +1,17 @@ +export enum WebSearchType { + NONE = "NONE", + NOMINATIM = "NOMINATIM" +} + +export enum MobileSearchType { + NONE = "NONE", + NATIVE = "NATIVE", + NOMINATIM = "NOMINATIM" +} + +export interface MapSettings { + webSearchType: WebSearchType + webNominatimUrl: string | null + mobileSearchType: MobileSearchType + mobileNominatimUrl: string | null +} \ No newline at end of file diff --git a/web-app/admin/src/app/feed/feed-item/feed-item-summary/feed-item-summary.component.html b/web-app/admin/src/app/feed/feed-item/feed-item-summary/feed-item-summary.component.html new file mode 100644 index 000000000..15185fd31 --- /dev/null +++ b/web-app/admin/src/app/feed/feed-item/feed-item-summary/feed-item-summary.component.html @@ -0,0 +1,13 @@ + + place + + {{timestamp | moment}} + {{primary || " "}} + {{secondary || " "}} + +
+ No Content + + +
+
diff --git a/web-app/admin/src/app/feed/feed-item/feed-item-summary/feed-item-summary.component.scss b/web-app/admin/src/app/feed/feed-item/feed-item-summary/feed-item-summary.component.scss new file mode 100644 index 000000000..faaba85b3 --- /dev/null +++ b/web-app/admin/src/app/feed/feed-item/feed-item-summary/feed-item-summary.component.scss @@ -0,0 +1,39 @@ +.mat-list-icon { + border-radius: unset !important; + height: unset !important; +} + +.list-item-icon { + border-radius: unset; + height: unset; +} + +.mat-body-1 { + opacity: .60; +} + +.mat-body-2 { + opacity: .87; +} + +.overline { + font: 500 10px/24px Roboto, "Helvetica Neue", sans-serif; + font-size: 10px !important; + text-transform: uppercase; + opacity: .60; +} + +.item { + background: white; + width: 100%; +} + +.no-content { + font-size: 24px; + padding-left: 16px; +} + +.no-content > span { + opacity: .6; +} + diff --git a/web-app/admin/src/app/feed/feed-item/feed-item-summary/feed-item-summary.component.spec.ts b/web-app/admin/src/app/feed/feed-item/feed-item-summary/feed-item-summary.component.spec.ts new file mode 100644 index 000000000..b11d037bd --- /dev/null +++ b/web-app/admin/src/app/feed/feed-item/feed-item-summary/feed-item-summary.component.spec.ts @@ -0,0 +1,37 @@ +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; +import { MatIconModule } from '@angular/material/icon'; +import { MatListModule } from '@angular/material/list'; +import { MomentModule } from '../../../../app/moment/moment.module'; +import { MapService } from '../../../../app/upgrade/ajs-upgraded-providers'; +import { FeedItemSummaryComponent } from './feed-item-summary.component'; + + +describe('FeedItemSummaryComponent', () => { + let component: FeedItemSummaryComponent; + let fixture: ComponentFixture; + + beforeEach(waitForAsync(() => { + TestBed.configureTestingModule({ + providers: [ + { provide: MapService, useValue: {} } + ], + imports: [ + MatListModule, + MatIconModule, + MomentModule + ], + declarations: [ FeedItemSummaryComponent ] + }) + .compileComponents(); + })); + + beforeEach(() => { + fixture = TestBed.createComponent(FeedItemSummaryComponent); + component = fixture.componentInstance; + fixture.detectChanges(); + }); + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/web-app/admin/src/app/feed/feed-item/feed-item-summary/feed-item-summary.component.ts b/web-app/admin/src/app/feed/feed-item/feed-item-summary/feed-item-summary.component.ts new file mode 100644 index 000000000..bba4dad1f --- /dev/null +++ b/web-app/admin/src/app/feed/feed-item/feed-item-summary/feed-item-summary.component.ts @@ -0,0 +1,49 @@ +import { Component, Input, Inject, OnChanges, SimpleChanges } from '@angular/core'; +import { Feed } from '@ngageoint/mage.web-core-lib/feed'; +import { MapService } from '../../../upgrade/ajs-upgraded-providers'; +import { Feature } from 'geojson'; +import { contentPathOfIcon } from '@ngageoint/mage.web-core-lib/static-icon' + +@Component({ + selector: 'feed-item-summary', + templateUrl: './feed-item-summary.component.html', + styleUrls: ['./feed-item-summary.component.scss'] +}) +export class FeedItemSummaryComponent implements OnChanges { + @Input() feed: Feed; + @Input() item: Feature; + + hasContent = false; + timestamp: number; + primary: string; + secondary: string; + iconUrl?: string; + + constructor(@Inject(MapService) private mapService: any) { } + + ngOnChanges(_changes: SimpleChanges): void { + if (!this.feed || !this.item.properties) return; + + // TODO: use mapStyle when that works + this.iconUrl = contentPathOfIcon(this.feed.icon); + + if (this.feed.itemTemporalProperty && this.item.properties[this.feed.itemTemporalProperty] != null) { + this.timestamp = this.item.properties[this.feed.itemTemporalProperty]; + this.hasContent = true; + } + + if (this.feed.itemPrimaryProperty && this.item.properties[this.feed.itemPrimaryProperty] != null) { + this.primary = this.item.properties[this.feed.itemPrimaryProperty]; + this.hasContent = true; + } + + if (this.feed.itemSecondaryProperty && this.item.properties[this.feed.itemSecondaryProperty] != null) { + this.secondary = this.item.properties[this.feed.itemSecondaryProperty]; + this.hasContent = true; + } + } + + onItemSelect(): void { + this.mapService.zoomToFeatureInLayer(this.item, `feed-${this.feed.id}`); + } +} diff --git a/web-app/admin/src/app/feed/feed-item/feed-item-summary/feed-item-summary.module.ts b/web-app/admin/src/app/feed/feed-item/feed-item-summary/feed-item-summary.module.ts new file mode 100644 index 000000000..e4b8aacce --- /dev/null +++ b/web-app/admin/src/app/feed/feed-item/feed-item-summary/feed-item-summary.module.ts @@ -0,0 +1,22 @@ +import { NgModule } from '@angular/core' +import { CommonModule } from '@angular/common' +import { MatIconModule } from '@angular/material/icon' +import { MatListModule } from '@angular/material/list' +import { FeedItemSummaryComponent } from './feed-item-summary.component' +import { MomentModule } from '../../../moment/moment.module' +import { MageCommonModule } from '@ngageoint/mage.web-core-lib/common' +import { StaticIconModule } from '@ngageoint/mage.web-core-lib/static-icon' + +@NgModule({ + declarations: [FeedItemSummaryComponent], + exports: [FeedItemSummaryComponent], + imports: [ + CommonModule, + MatIconModule, + MatListModule, + MomentModule, + MageCommonModule, + StaticIconModule + ] +}) +export class FeedItemSummaryModule { } diff --git a/web-app/admin/src/app/feed/feed-item/feed-item.component.html b/web-app/admin/src/app/feed/feed-item/feed-item.component.html new file mode 100644 index 000000000..99be7017c --- /dev/null +++ b/web-app/admin/src/app/feed/feed-item/feed-item.component.html @@ -0,0 +1,40 @@ + + + + {{feed?.title}} + + +
+ +
+
+
{{date}}
+
{{primary}}
+
{{secondary}}
+
+ place + +
+
+ +
+
+ +
+ + +
+
+
{{property.key}}
+
{{property.value}}
+
+ +
+
+
+
\ No newline at end of file diff --git a/web-app/admin/src/app/feed/feed-item/feed-item.component.scss b/web-app/admin/src/app/feed/feed-item/feed-item.component.scss new file mode 100644 index 000000000..4ad36d275 --- /dev/null +++ b/web-app/admin/src/app/feed/feed-item/feed-item.component.scss @@ -0,0 +1,101 @@ +mat-toolbar { + position: sticky; + top: 0; + z-index: 1; +} + +.mat-list-base { + padding: 0px; +} + +.mat-list-icon { + color: rgba(0, 0, 0, 0.54); + border-radius: unset !important; +} + +.mat-card-avatar { + border-radius: unset; + flex-shrink: unset; + object-fit: contain; + margin-bottom: 16px; + font-size: 40px; +} + +.mat-card { + border-radius: unset; +} + +.mat-body-1 { + opacity: .60; +} + +.mat-body-2 { + opacity: .87; +} + +.card-content { + position: absolute; + top: 64px; + bottom: 0; + width: 100%; + overflow-y: auto; +} + +.card-header { + display: flex; + flex-direction: row; +} + +.card-header-text { + flex: 1; + min-width: 0; +} + +.card-overline { + font: 500 10px/12px Roboto, "Helvetica Neue", sans-serif; + font-size: 10px !important; + text-transform: uppercase; + opacity: .60; + margin-bottom: 8px; +} + +.card-actions { + padding: 8px 0; +} + +.card-title { + font: 500 20px/32px Roboto, "Helvetica Neue", sans-serif; + white-space: nowrap; + overflow: hidden; + text-overflow: ellipsis; + margin-bottom: 8px; +} + +.card-subtitle { + font-size: 14px; + color: rgba(0, 0, 0, 0.60); + margin-bottom: 16px; + white-space: nowrap; + overflow: hidden; + text-overflow: ellipsis; +} + +.item { + padding: 16px; + background: white; + width: 100%; +} + +.mat-card-image { + height: 200px; + width: calc(100% + 32px); + margin: 0 -16px; +} + +.map { + position: absolute; + height: 200px; + width: 100%; + background: blue; + z-index: 0; +} \ No newline at end of file diff --git a/web-app/admin/src/app/feed/feed-item/feed-item.component.spec.ts b/web-app/admin/src/app/feed/feed-item/feed-item.component.spec.ts new file mode 100644 index 000000000..e11e8753b --- /dev/null +++ b/web-app/admin/src/app/feed/feed-item/feed-item.component.spec.ts @@ -0,0 +1,130 @@ +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; +import { MatCardModule } from '@angular/material/card' +import { MatDividerModule } from '@angular/material/divider' +import { MatIconModule } from '@angular/material/icon' +import { MatToolbarModule } from '@angular/material/toolbar' +import { GeometryModule } from '../../../app/geometry/geometry.module'; +import { MapClipComponent } from '../../../app/map/clip/clip.component'; +import { LocalStorageService, MapService } from '../../../app/upgrade/ajs-upgraded-providers'; +import { FeedItemComponent } from './feed-item.component'; +import { Component, ViewChild } from '@angular/core'; +import { MomentPipe } from '../../../app/moment/moment.pipe'; +import { Feed } from 'core-lib-src/feed'; + +class MockLocalStorageService { + getTimeFormat(): string { + return 'none' + } + + getTimeZoneView(): string { + return 'gmt' + } + + getCoordinateSystemView(): string { + return 'wgs84' + } + + getMapPosition(): {center: Array} { + return { + center: [0, 0] + } + } +} + +class MockMapService { + addListener(listener: any): void {} + removeListener(listener: any): void {} +} + +@Component({ + template: '' +}) +class TestHostComponent { + feed: Feed = { + id: 'feed1', + service: 'service1', + topic: 'topic1', + title: 'Feed 1', + itemTemporalProperty: "timestamp", + itemPropertiesSchema: { + "type": "object", + "properties": { + "timestamp": { + "title": "Date Of Occurrence", + "type": "number", + "format": "date" + } + } + } + } + + item = { + type: "Feature", + properties: { + "timestamp": 0 + }, + geometry: { + 'type': 'LineString', + 'coordinates': [[0, 0],[1, 1]] + }, + style: {} + } + + @ViewChild(FeedItemComponent, { static: true }) + public feedItemComponent: FeedItemComponent +} + +describe('FeedItemComponent', () => { + let component: FeedItemComponent; + let hostComponent: TestHostComponent + let fixture: ComponentFixture + + beforeEach(waitForAsync(() => { + TestBed.configureTestingModule({ + providers: [{ + provide: MapService, + useClass: MockMapService + }, { + provide: LocalStorageService, + useClass: MockLocalStorageService + },{ + provide: MomentPipe, + useClass: MomentPipe + }], + imports: [ + MatIconModule, + MatToolbarModule, + MatDividerModule, + MatCardModule, + GeometryModule + ], + declarations: [ + FeedItemComponent, + MapClipComponent, + TestHostComponent, + MomentPipe + ] + }) + .compileComponents() + })); + + beforeEach(() => { + fixture = TestBed.createComponent(TestHostComponent) + hostComponent = fixture.componentInstance + component = hostComponent.feedItemComponent + fixture.detectChanges() + }); + + it('should create', () => { + expect(component).toBeTruthy() + }) + + it('should format timestamp header', () => { + expect(component.date).toEqual("Jan 1 1970 12:00 AM UTC") + }) + + it ('should format timestamp property', () => { + const timestamp = component.properties[0].value + expect(timestamp).toEqual("Jan 1 1970 12:00 AM UTC") + }) +}); diff --git a/web-app/admin/src/app/feed/feed-item/feed-item.component.ts b/web-app/admin/src/app/feed/feed-item/feed-item.component.ts new file mode 100644 index 000000000..7a5d0e1a0 --- /dev/null +++ b/web-app/admin/src/app/feed/feed-item/feed-item.component.ts @@ -0,0 +1,80 @@ +import { Component, Input, Inject, OnChanges, SimpleChanges } from '@angular/core'; +import { Feed, StyledFeature } from '@ngageoint/mage.web-core-lib/feed'; +import { MomentPipe } from '../../../app/moment/moment.pipe'; +import { MapService } from '../../../app/upgrade/ajs-upgraded-providers'; + +@Component({ + selector: 'feed-item', + templateUrl: './feed-item.component.html', + styleUrls: ['./feed-item.component.scss'] +}) +export class FeedItemComponent implements OnChanges { + @Input() feed: Feed; + @Input() item: StyledFeature; + + hasContent = false + date: string + primary: string + secondary: string + mapFeature: StyledFeature + properties = [] + + constructor( + private momentPipe: MomentPipe, + @Inject(MapService) private mapService: any + ) {} + + ngOnChanges(_changes: SimpleChanges): void { + this.updateItem() + } + + private updateItem(): void { + if (!this.feed || !this.item) { + return + } + + this.mapFeature = { ...this.item } + + if (!this.item.properties) { + return + } + + if (this.feed.itemTemporalProperty && this.item.properties[this.feed.itemTemporalProperty] != null) { + this.date = this.momentPipe.transform(this.item.properties[this.feed.itemTemporalProperty]); + this.hasContent = true; + } + + if (this.feed.itemPrimaryProperty && this.item.properties[this.feed.itemPrimaryProperty] != null) { + this.primary = this.item.properties[this.feed.itemPrimaryProperty]; + this.hasContent = true; + } + + if (this.feed.itemSecondaryProperty && this.item.properties[this.feed.itemSecondaryProperty] != null) { + this.secondary = this.item.properties[this.feed.itemSecondaryProperty]; + this.hasContent = true; + } + + if (this.item.properties) { + const schemaProperties = this.feed?.itemPropertiesSchema?.properties + + this.properties = Object.keys(this.item.properties).map(key => { + let value = this.item.properties[key] + if (key === this.feed.itemTemporalProperty) { + value = this.momentPipe.transform(value) + } + + return { + key: schemaProperties[key]?.title || key, + value: value + } + }); + } + } + + close(): void { + } + + onLocationClick(): void { + this.mapService.zoomToFeatureInLayer(this.item, `feed-${this.feed.id}`); + } +} diff --git a/web-app/admin/src/app/feed/feed-item/feed-item.service.spec.ts b/web-app/admin/src/app/feed/feed-item/feed-item.service.spec.ts new file mode 100644 index 000000000..4a8348146 --- /dev/null +++ b/web-app/admin/src/app/feed/feed-item/feed-item.service.spec.ts @@ -0,0 +1,11 @@ +import { TestBed } from '@angular/core/testing'; +import { FeedItemService } from './feed-item.service'; + +describe('FeedItemService', () => { + beforeEach(() => TestBed.configureTestingModule({})); + + it('should be created', () => { + const service: FeedItemService = TestBed.inject(FeedItemService); + expect(service).toBeTruthy(); + }); +}); diff --git a/web-app/admin/src/app/feed/feed-item/feed-item.service.ts b/web-app/admin/src/app/feed/feed-item/feed-item.service.ts new file mode 100644 index 000000000..21dc2e29b --- /dev/null +++ b/web-app/admin/src/app/feed/feed-item/feed-item.service.ts @@ -0,0 +1,40 @@ +import { Injectable } from '@angular/core'; +import { Subject } from 'rxjs'; +import { Feed } from '@ngageoint/mage.web-core-lib/feed'; +import { Feature } from 'geojson'; + +export enum FeedAction { + Select, + Deselect +} + +export interface FeedItemEvent { + feed: Feed; + item: Feature; + action: FeedAction; +} + +@Injectable({ + providedIn: 'root' +}) +export class FeedItemService { + private itemSource = new Subject(); + + item$ = this.itemSource.asObservable(); + + select(feed: Feed, item: Feature): void { + this.itemSource.next({ + feed: feed, + item: item, + action: FeedAction.Select + }); + } + + deselect(feed: Feed, item: Feature): void { + this.itemSource.next({ + feed: feed, + item: item, + action: FeedAction.Deselect + }); + } +} \ No newline at end of file diff --git a/web-app/admin/src/app/filename/filename.pipe.spec.ts b/web-app/admin/src/app/filename/filename.pipe.spec.ts new file mode 100644 index 000000000..db8d668c9 --- /dev/null +++ b/web-app/admin/src/app/filename/filename.pipe.spec.ts @@ -0,0 +1,8 @@ +import { FilenamePipe } from './filename.pipe'; + +describe('FilenamePipe', () => { + it('create an instance', () => { + const pipe = new FilenamePipe(); + expect(pipe).toBeTruthy(); + }); +}); diff --git a/web-app/admin/src/app/filename/filename.pipe.ts b/web-app/admin/src/app/filename/filename.pipe.ts new file mode 100644 index 000000000..4eec5c3d8 --- /dev/null +++ b/web-app/admin/src/app/filename/filename.pipe.ts @@ -0,0 +1,15 @@ +import { Pipe, PipeTransform } from '@angular/core'; + +@Pipe({ + name: 'filename' +}) +export class FilenamePipe implements PipeTransform { + + transform(value: any, limit?: number): any { + if (!value || !limit) return value; + + let name = value.substr(0, value.lastIndexOf('.')); + name = name.length > limit ? name.substring(0, limit - 1) + '~' : name + return name + value.substr(value.lastIndexOf('.')); + } +} diff --git a/web-app/admin/src/app/geometry/geometry-dms.spec.ts b/web-app/admin/src/app/geometry/geometry-dms.spec.ts new file mode 100644 index 000000000..58293ef34 --- /dev/null +++ b/web-app/admin/src/app/geometry/geometry-dms.spec.ts @@ -0,0 +1,795 @@ +import { DimensionKey, DMSCoordinate, DMSParseError, generateParsedCoordinates, HemisphereLabel, parseCoordinates } from './geometry-dms'; +import * as DMS from './geometry-dms' + +describe('DMS', () => { + + it('should parse the coordinate string', () => { + expect(DMS.parseOne(null, DimensionKey.Latitude)).toBeNaN() + expect(DMS.parseOne(null, DimensionKey.Longitude)).toBeNaN() + expect(DMS.parseOne(`112230N`, DimensionKey.Latitude)).toEqual(11.375) + expect(DMS.parseOne(`12454N`, DimensionKey.Latitude)).toEqual(1 + 24 / 60 + 54 / 3600) + expect(DMS.parseOne(`02230N`, DimensionKey.Latitude)).toEqual(0.375) + expect(DMS.parseOne(`2230N`, DimensionKey.Latitude)).toEqual(22 / 60 + 30 / 3600) + expect(DMS.parseOne(`215N`, DimensionKey.Latitude)).toEqual(2 / 60 + 15 / 3600) + expect(DMS.parseOne(`21N`, DimensionKey.Latitude)).toEqual(21 / 3600) + expect(DMS.parseOne(`2N`, DimensionKey.Latitude)).toEqual(2 / 3600) + expect(DMS.parseOne(`N 11 ° 24'36.36 `, DimensionKey.Latitude)).toEqual(11.4101) + expect(DMS.parseOne(`N 11 ° 22'30.wut `, DimensionKey.Latitude)).toBeNaN() + expect(DMS.parseOne(`11 ° 22'30 "N`, DimensionKey.Latitude)).toEqual(11.375) + expect(DMS.parseOne(`11° 22'30 N`, DimensionKey.Latitude)).toEqual(11.375) + expect(DMS.parseOne(`11.4584`, DimensionKey.Latitude)).toEqual(11.4584) + expect(DMS.parseOne(`-11.4584`, DimensionKey.Latitude)).toEqual(-11.4584) + expect(DMS.parseOne(`- 1 1 . 4 5 8 4`, DimensionKey.Latitude)).toBeNaN() + expect(DMS.parseOne(`0151545W`, DimensionKey.Longitude)).toEqual(-15.2625) + expect(DMS.parseOne(`W 15 ° 15'45`, DimensionKey.Longitude)).toEqual(-15.2625) + expect(DMS.parseOne(`15 ° 15'45" W`, DimensionKey.Longitude)).toEqual(-15.2625) + expect(DMS.parseOne(`015° 15'45 W`, DimensionKey.Longitude)).toEqual(-15.2625) + expect(DMS.parseOne(`15.6827`, DimensionKey.Longitude)).toEqual(15.6827) + expect(DMS.parseOne(`-15.6827`, DimensionKey.Longitude)).toEqual(-15.6827) + expect(DMS.parseOne(`0° 30' 00" S`, DimensionKey.Latitude)).toEqual(-0.5) + expect(DMS.parseOne(`1° 00' 00" E`, DimensionKey.Longitude)).toEqual(1.0) + expect(DMS.parseOne(`1° 00' 00" W`, DimensionKey.Longitude)).toEqual(-1.0) + expect(DMS.parseOne(`0° 30' 00" E`, DimensionKey.Longitude)).toEqual(0.5) + expect(DMS.parseOne(`0° 30' 00" W`, DimensionKey.Longitude)).toEqual(-0.5) + expect(DMS.parseOne(`xyz0lud°xyz3nur0'xyz0 ada 0xyz"xyzWxyz`, DimensionKey.Longitude)).toBeNaN() + }) + + describe('validation', () => { + + describe('valid latitudes', () => { + + [ + `11°22'30"N`, + `11 ° 22 ' 30 " N`, + `112233N`, + `002233N`, + `02233N`, + `12233N`, + `002233S`, + `002233.2384S`, + `900000S`, + `900000N`, + `2N`, + `33N`, + `233N`, + `2233N`, + ] + .forEach(input => { + it(`validates latitude ${input}`, () => { + expect(DMS.validateLatitude(input)).toBeTruthy() + }) + }) + }) + + describe('invalid latitudes', () => { + + [ + null, + undefined, + ``, + `NS1122N`, + `002233.NS`, + `ABCDEF.NS`, + `11NSNS.1N`, + `1111NS.1N`, + `113000NNN`, + `N`, + `.123N`, + `900001N`, + `900000.1N`, + `900001S`, + `900000.1S`, + `108900S`, + `100089S`, + `112233`, + `1a2233N`, + `1a2233N`, + `11a233N`, + `1122a3N`, + `912233N`, + `-112233N`, + `116033N`, + `112260N`, + ] + .forEach(input => { + it(`invalidates latitude ${input}`, () => { + expect(DMS.validateLatitude(input)).toBeFalsy() + }) + }) + }) + + describe('valid longitudes', () => { + [ + `104° 40' 05" E`, + `1800000E`, + `1800000W`, + `002233E`, + `2W`, + `33W`, + `233W`, + `2233W`, + ] + .forEach(input => { + it(`validates longitude ${input}`, () => { + expect(DMS.validateLongitude(input)).toBeTruthy() + }) + }) + }) + + describe('invalid longitudes', () => { + [ + null, + ``, + `W`, + `.123W`, + `1812233W`, + `-112233W`, + `002233N`, + `1800001E`, + `1800000.1E`, + `1800001W`, + `1800000.1W`, + ] + .forEach(input => { + it(`invalidates longitude ${input}`, () => { + expect(DMS.validateLongitude(input)).toBeFalsy() + }) + }) + }) + }) + + it('formats latitude decimal degrees as dms', () => { + expect(DMS.formatLatitude(11.1)).toEqual(`11° 06' 00" N`) + expect(DMS.formatLatitude(-11.1)).toEqual(`11° 06' 00" S`) + expect(DMS.formatLatitude(1.25)).toEqual(`01° 15' 00" N`) + expect(DMS.formatLatitude(-1.25)).toEqual(`01° 15' 00" S`) + expect(DMS.formatLatitude(0.25)).toEqual(`00° 15' 00" N`) + expect(DMS.formatLatitude(-0.25)).toEqual(`00° 15' 00" S`) + expect(DMS.formatLatitude(0.0125)).toEqual(`00° 00' 45" N`) + expect(DMS.formatLatitude(-0.0125)).toEqual(`00° 00' 45" S`) + }) + + it('formats longitude decimal degrees as dms', () => { + expect(DMS.formatLongitude(128.077251)).toEqual(`128° 04' 38" E`) + expect(DMS.formatLongitude(-128.077251)).toEqual(`128° 04' 38" W`) + expect(DMS.formatLongitude(18.077251)).toEqual(`018° 04' 38" E`) + expect(DMS.formatLongitude(-18.077251)).toEqual(`018° 04' 38" W`) + expect(DMS.formatLongitude(8.077251)).toEqual(`008° 04' 38" E`) + expect(DMS.formatLongitude(-8.077251)).toEqual(`008° 04' 38" W`) + expect(DMS.formatLongitude(0.077251)).toEqual(`000° 04' 38" E`) + expect(DMS.formatLongitude(-0.077251)).toEqual(`000° 04' 38" W`) + }) + + describe('parsing', () => { + + type InputAndResult = [ string, number, number, number ] | [ string, typeof DMSParseError ] + + const assertParseResult = (inputAndResults: (string | number | DMSCoordinate | typeof DMSParseError)[]) => { + const [ input, ...results ] = inputAndResults + const parsed = parseCoordinates(String(input)) + if (results[0] === DMSParseError) { + expect(parsed instanceof DMSParseError).toBe(true, `parsing ${input} should produce an error`) + } + else { + expect(parsed).toEqual(results as any, `failed to parse ${input}`) + } + } + + describe('decimals', () => { + + it('parses a decimal coordinate', () => { + [ + [ '1', 1 ], + [ '12', 12 ], + [ '123', 123 ], + [ '1.123', 1.123 ], + [ ' 1 ', 1 ], + [ ' 12 ', 12 ], + [ '..123 ', DMSParseError ], + [ '..12.345 ', DMSParseError ], + [ '12.345. ', DMSParseError ], + [ '12.34.45', DMSParseError ], + ] + .forEach(assertParseResult) + }) + + it('parses a signed decimal coordinate', () => { + [ + [ '+1', 1 ], + [ '-1', -1 ], + [ '+12', 12 ], + [ '-12', -12 ], + [ '+123', 123 ], + [ '-123', -123 ], + [ '+1.123', 1.123 ], + [ '-1.123', -1.123 ], + [ ' +1 ', 1 ], + [ ' -1 ', -1 ], + [ ' +12 ', 12 ], + [ ' -12 ', -12 ], + [ ' +123 ', 123 ], + [ ' -123 ', -123 ], + [ ' +12.345 ', 12.345 ], + [ ' -12.345 ', -12.345 ], + [ '-12-', DMSParseError ], + [ '+12+', DMSParseError ], + [ '--12.345', DMSParseError ], + [ '++12.345', DMSParseError ], + [ '-+12.345', DMSParseError ], + [ '+-12.345', DMSParseError ], + [ '12.345+', DMSParseError ], + [ '12.345-', DMSParseError ], + [ '+12.345+', DMSParseError ], + [ '-12.345-', DMSParseError ], + ] + .forEach(assertParseResult) + }) + + describe('multiple decimal coordinates', () => { + + it('parses white-space-delimited coordinates', () => { + [ + [ '1 2 3', 1, 2, 3 ], + [ ' 1 2 3 ', 1, 2, 3 ], + [ '1.1 2.2 3.3', 1.1, 2.2, 3.3 ], + [ ' -1.1 \t 2.2 \n -3.3\r\n', -1.1, 2.2, -3.3 ], + [ ' +1.1 \t -2.2 \n 3.3\r\n', 1.1, -2.2, 3.3 ], + [ ' 1.1 \t +2.2 \n -3.3\n ', 1.1, 2.2, -3.3 ], + [ ' -1.1 \t -2.2 \n -3.3\r\n', -1.1, -2.2, -3.3 ], + [ ' -1.1 \t -2.2 \n -3..3\r\n', DMSParseError ], + [ ' -1.1 \t --2.2 \n -3.3\r\n', DMSParseError ], + [ ' -1.1 \t -2.2 \n + -3.3\r\n', DMSParseError ], + ] + .forEach(assertParseResult) + }) + + it('parses dash-delimited coordinates', () => { + [ + [ '1- 2 - 3', 1, 2, 3 ], + [ ' 1 - 2- 3 ', 1, 2, 3 ], + [ '1.1 - 2.2 - 3.3', 1.1, 2.2, 3.3 ], + [ ' -1.1 - 2.2- -3.3\r\n', -1.1, 2.2, -3.3 ], + [ ' +1.1 - -2.2 - 3.3\r\n', 1.1, -2.2, 3.3 ], + [ ' 1.1 - +2.2- -3.3\n ', 1.1, 2.2, -3.3 ], + [ ' -1.1 - -2.2 - -3.3', -1.1, -2.2, -3.3 ], + [ ' -1.1 - -2.2 - -3..3', DMSParseError ], + [ ' -1.1 - --2.2 - -3.3', DMSParseError ], + [ ' -1.1 -2.2-+ -3.3', DMSParseError ], + ] + .forEach(assertParseResult) + }) + + it('parses comma-delimeted coordinates', () => { + [ + [ '1,2,3', 1, 2, 3 ], + [ ' 1 ,2, 3 ', 1, 2, 3 ], + [ '1.1,2.2,3.3', 1.1, 2.2, 3.3 ], + [ ' -1.1, 2.2, -3.3', -1.1, 2.2, -3.3 ], + [ ' +1.1 , -2.2, 3.3', 1.1, -2.2, 3.3 ], + [ ' 1.1, +2.2 ,-3.3\n ', 1.1, 2.2, -3.3 ], + [ ' -1.1 , -2.2 , -3.3\r\n', -1.1, -2.2, -3.3 ], + [ ' -1.1 ,-2.2, -3..3', DMSParseError ], + [ ' -1.1 , --2.2 , -3.3', DMSParseError ], + [ ' -1.1, -2.2 , + -3.3', DMSParseError ], + ] + .forEach(assertParseResult) + }) + }) + }) + + describe('dms format', () => { + + const assertForEachHemisphere = (expectation: InputAndResult, hemispheres: string = 'NSEW') => { + const [ baseInput, deg, min, sec ] = expectation + for (const hemi of hemispheres) { + const hemiPrefixInput = `${hemi}${baseInput}` + const hemiSuffixInput = `${baseInput}${hemi}` + const hemiPrefixParsed = parseCoordinates(hemiPrefixInput) + const hemiSuffixParsed = parseCoordinates(hemiSuffixInput) + if (typeof deg === 'number') { + const coord = [ new DMSCoordinate(deg, min, sec, hemi as HemisphereLabel) ] + expect(hemiPrefixParsed).toEqual(coord, hemiPrefixInput) + expect(hemiSuffixParsed).toEqual(coord, hemiSuffixInput) + } + else { + expect(hemiPrefixParsed instanceof DMSParseError).toBe(true) + expect(hemiSuffixParsed instanceof DMSParseError).toBe(true) + } + } + } + const assertForLatHemispheres = (expectation: InputAndResult) => assertForEachHemisphere(expectation, 'NS') + const assertForLonHemispheres = (expectation: InputAndResult) => assertForEachHemisphere(expectation, 'EW') + + describe('with all labeled parts', () => { + + it('parses input with no spaces', () => { + [ + [ `0°0'0"`, 0, 0, 0 ], + [ `0°0'1"`, 0, 0, 1 ], + [ `00°00'00"`, 0, 0, 0 ], + [ `12°0'0"`, 12, 0, 0 ], + [ `1°2'34"`, 1, 2, 34 ], + [ `1°23'45"`, 1, 23, 45 ], + [ `12°34'56"`, 12, 34, 56 ], + [ `01°02'03"`, 1, 2, 3 ], + ] + .forEach(x => assertForEachHemisphere(x as InputAndResult)) + }) + + it('parses input with spaces around units and digits', () => { + [ + [ ` 0 ° 0 ' 0 "`, 0, 0, 0 ], + [ ` 0° 0 ' 1 " `, 0, 0, 1 ], + [ ` 00 ° 00 ' 00 "`, 0, 0, 0 ], + [ ` 12 ° 0 ' 0 " `, 12, 0, 0 ], + [ ` 1 ° 2 ' 34 " `, 1, 2, 34 ], + [ `1 ° 23'45"`, 1, 23, 45 ], + [ `12 ° 34 '56 "`, 12, 34, 56 ], + [ `01 °02 '03"`, 1, 2, 3 ], + ] + .forEach(x => assertForEachHemisphere(x as InputAndResult)) + }) + + it('accepts fractional seconds', () => { + [ + [ `0°0'0.125"`, 0, 0, 0.125 ], + [ `0°0'1.125"`, 0, 0, 1.125 ], + [ `12°0'0.777"`, 12, 0, 0.777 ], + [ `1°2'34.8"`, 1, 2, 34.8 ], + [ `12°34'56.005"`, 12, 34, 56.005 ], + ] + .forEach(x => assertForEachHemisphere(x as InputAndResult)) + }) + + it('accepts unlabeled seconds', () => { + [ + [ `0°0'0.125`, 0, 0, 0.125 ], + [ `0°0'1.125`, 0, 0, 1.125 ], + [ `12°0'0.777`, 12, 0, 0.777 ], + [ `1°2'34.8`, 1, 2, 34.8 ], + [ `12°34'56.005`, 12, 34, 56.005 ], + ] + .forEach(x => assertForEachHemisphere(x as InputAndResult)) + }) + }) + + describe('with partial labeled parts', () => { + + it('parses one part', () => { + + [ + [ `0°`, 0, 0, 0 ], + [ `8°`, 8, 0, 0 ], + [ `08°`, 8, 0, 0 ], + [ `12°`, 12, 0, 0 ], + [ `0'`, 0, 0, 0 ], + [ `8'`, 0, 8, 0 ], + [ `08'`, 0, 8, 0 ], + [ `12'`, 0, 12, 0 ], + [ `0"`, 0, 0, 0 ], + [ `8"`, 0, 0, 8 ], + [ `08"`, 0, 0, 8 ], + [ `12"`, 0, 0, 12 ], + ] + .forEach(x => assertForEachHemisphere(x as InputAndResult)) + }) + + it('parses two parts', () => { + [ + [ `0°0'`, 0, 0, 0 ], + [ `0'1"`, 0, 0, 1 ], + [ `00° 0'`, 0, 0, 0 ], + [ `12° 12"`, 12, 0, 12 ], + [ `02 ' 34 "`, 0, 2, 34 ], + [ `01° 00"`, 1, 0, 0 ], + ] + .forEach(x => assertForEachHemisphere(x as InputAndResult)) + }) + + it('accepts fractional seconds', () => { + [ + [ `1'0.125"`, 0, 1, 0.125 ], + [ `0°1.125"`, 0, 0, 1.125 ], + [ `0.777"`, 0, 0, 0.777 ], + [ `11°34.8"`, 11, 0, 34.8 ], + [ `56.005"`, 0, 0, 56.005 ], + ] + .forEach(x => assertForEachHemisphere(x as InputAndResult)) + }) + + it('accepts unlabeled seconds', () => { + [ + [ `1'0.125`, 0, 1, 0.125 ], + [ `0°1.125`, 0, 0, 1.125 ], + [ `0.777`, 0, 0, 0.777 ], + [ `11°34.8`, 11, 0, 34.8 ], + [ `56.005`, 0, 0, 56.005 ], + ] + .forEach(x => assertForEachHemisphere(x as InputAndResult)) + }) + }) + + describe('compact without labels', () => { + + it('parses fully specified digits', () => { + [ + [ '0000000', 0, 0, 0 ], + [ '0123456', 12, 34, 56 ], + [ '0010203', 1, 2, 3 ], + [ '1795959', 179, 59, 59 ], + [ '1000000', 100, 0, 0 ], + ] + .forEach(x => assertForLonHemispheres(x as InputAndResult)); + + [ + [ '000000', 0, 0, 0 ], + [ '123456', 12, 34, 56 ], + [ '010203', 1, 2, 3 ], + [ '795959', 79, 59, 59 ], + ] + .forEach(x => assertForLatHemispheres(x as InputAndResult)) + }) + + it('fills partial digits starting from seconds', () => { + [ + [ '00001', 0, 0, 1 ], + [ '12345', 1, 23, 45 ], + [ '32100', 3, 21, 0 ], + [ '0', 0, 0, 0 ], + [ '10', 0, 0, 10 ], + [ '100', 0, 1, 0 ], + [ '1000', 0, 10, 0 ], + [ '1234', 0, 12, 34 ], + [ '123', 0, 1, 23 ], + [ '12', 0, 0, 12 ], + [ '1', 0, 0, 1 ], + ] + .forEach(x => assertForEachHemisphere(x as InputAndResult)) + }) + + it('accepts fractional seconds', () => { + + [ + [ '0000000.123', 0, 0, 0.123 ], + [ '0123456.007', 12, 34, 56.007 ], + [ '0010203.321', 1, 2, 3.321 ], + [ '1795959.99', 179, 59, 59.99 ], + [ '1000000.000', 100, 0, 0 ], + ] + .forEach(x => assertForLonHemispheres(x as InputAndResult)); + + [ + [ '000000.25', 0, 0, 0.25 ], + [ '123456.005', 12, 34, 56.005 ], + [ '010203.0', 1, 2, 3 ], + [ '795959.999', 79, 59, 59.999 ], + ] + .forEach(x => assertForLatHemispheres(x as InputAndResult)) + }) + }) + + it('does not parse labeled parts out of order', () => { + + const baseCoordinates = [ + [ `0" 0' 0° W`, DMSParseError ], + [ ` 0" 1° S`, DMSParseError ], + [ `12' 34° 56" E`, DMSParseError ], + [ `12° 34" 56' N`, DMSParseError ], + [ `15" 15° N`, DMSParseError ], + [ `15" 15' S`, DMSParseError ], + [ `15E°`, DMSParseError ], + ] + baseCoordinates.forEach(assertParseResult) + }) + + it('does not parse parts with repeated units', () => { + [ + [ `15"15"E`, DMSParseError ], + [ `15°2°E`, DMSParseError ], + [ `15°°E`, DMSParseError ], + ] + .forEach(assertParseResult) + }) + + it('does not parse dms with multiple hemispheres', () => { + [ + [ `N N 14°`, DMSParseError ], + [ `N 14° S`, DMSParseError ], + [ `14° S E`, DMSParseError ], + ] + .forEach(assertParseResult) + }) + + it('does not parse dms with signs', () => { + [ + [ `-1°W`, DMSParseError ], + [ `E -1°`, DMSParseError ], + [ `+12° N`, DMSParseError ], + [ `+01" S`, DMSParseError ] + ] + .forEach(assertParseResult) + }) + + describe('bounds errors', () => { + + it('yields an error for latitudes > 90', () => { + [ + [ `90°00'01"`, DMSParseError ], + [ `90°01'00"`, DMSParseError ], + [ `91°00'00"`, DMSParseError ], + [ `910000`, DMSParseError ], + [ `900001`, DMSParseError ], + ] + .forEach(x => assertForLatHemispheres(x as InputAndResult)) + }) + + it('yields an error for longitudes > 180', () => { + [ + [ `180°00'01"`, DMSParseError ], + [ `180°01'00"`, DMSParseError ], + [ `180°0'1"`, DMSParseError ], + [ `181°0'0"`, DMSParseError ], + [ `1800001`, DMSParseError ], + ] + .forEach(x => assertForLonHemispheres(x as InputAndResult)) + }) + + it('yields an error for minutes > 59', () => { + [ + [ `0°60'0"`, DMSParseError ], + [ `0°59'0"`, 0, 59, 0 ], + [ `1°60'59"`, DMSParseError ], + [ `1°59'59"`, 1, 59, 59 ], + [ `59°590'0"`, DMSParseError ], + [ `59°59'0"`, 59, 59, 0 ], + [ `06000`, DMSParseError ], + [ `05900`, 0, 59, 0 ], + [ `596000`, DMSParseError ], + [ `595900`, 59, 59, 0 ], + [ `596000`, DMSParseError ], + [ `595900`, 59, 59, 0 ], + ] + .forEach(x => assertForEachHemisphere(x as InputAndResult)); + + [ + [ `111°60'1"`, DMSParseError ], + [ `111°59'1"`, 111, 59, 1 ], + [ `111°160'01"`, DMSParseError ], + [ `011°16'01"`, 11, 16, 1 ], + ] + .forEach(x => assertForLonHemispheres(x as InputAndResult)) + }) + + it('yields an error for seconds > 59', () => { + [ + [ `0°0'60"`, DMSParseError ], + [ `0°0'59"`, 0, 0, 59 ], + [ `1°59'60"`, DMSParseError ], + [ `1°59'59"`, 1, 59, 59 ], + [ `59°59'590"`, DMSParseError ], + [ `59°59'59"`, 59, 59, 59 ], + [ `00060`, DMSParseError ], + [ `00059`, 0, 0, 59 ], + [ `595960`, DMSParseError ], + [ `595959`, 59, 59, 59 ], + ] + .forEach(x => assertForEachHemisphere(x as InputAndResult)) + }) + }) + + describe('multiple coordinates', () => { + + it('parses multiple white-space-delimited labeled dms', () => { + + const parsed = parseCoordinates(` + 1°2'3"N + 179 °E + 10' 59 " N + 001° 38' W + S 12° 34 ' 56" + W 13 ° 57 ' 19" + `) + expect(parsed).toEqual([ + new DMSCoordinate(1, 2, 3, 'N'), + new DMSCoordinate(179, 0, 0, 'E'), + new DMSCoordinate(0, 10, 59, 'N'), + new DMSCoordinate(1, 38, 0, 'W'), + new DMSCoordinate(12, 34, 56, 'S'), + new DMSCoordinate(13, 57, 19, 'W'), + ]) + }) + + it('parses multiple white-space-delimited unlabeled dms', () => { + + const parsed = parseCoordinates(` + 10203 N + 1790000E + 001059N + 0013800 W + S 123456 + W 135719 + `) + expect(parsed).toEqual([ + new DMSCoordinate(1, 2, 3, 'N'), + new DMSCoordinate(179, 0, 0, 'E'), + new DMSCoordinate(0, 10, 59, 'N'), + new DMSCoordinate(1, 38, 0, 'W'), + new DMSCoordinate(12, 34, 56, 'S'), + new DMSCoordinate(13, 57, 19, 'W'), + ]) + }) + + it('parses dash-delimited labeled coordinates', () => { + + const parsed = parseCoordinates( + [ + `1°2'3"N`, + `179 °E`, + `10' 59 " N`, + `001° 38' W`, + `S 12° 34 ' 56"`, + `W 13 ° 57 ' 19"`, + ] + .join(' - ') + ) + expect(parsed).toEqual([ + new DMSCoordinate(1, 2, 3, 'N'), + new DMSCoordinate(179, 0, 0, 'E'), + new DMSCoordinate(0, 10, 59, 'N'), + new DMSCoordinate(1, 38, 0, 'W'), + new DMSCoordinate(12, 34, 56, 'S'), + new DMSCoordinate(13, 57, 19, 'W'), + ]) + }) + + it('parses dash-delimited unlabeled coordinates', () => { + + const parsed = parseCoordinates( + [ + `10203N`, + `1790000E`, + ` 01059 N`, + `0013800 W `, + `S 123456 `, + ` W 135719`, + ] + .join(' - ') + ) + expect(parsed).toEqual([ + new DMSCoordinate(1, 2, 3, 'N'), + new DMSCoordinate(179, 0, 0, 'E'), + new DMSCoordinate(0, 10, 59, 'N'), + new DMSCoordinate(1, 38, 0, 'W'), + new DMSCoordinate(12, 34, 56, 'S'), + new DMSCoordinate(13, 57, 19, 'W'), + ]) + }) + + it('parses comma-delimited labeled coordinates', () => { + + const parsed = parseCoordinates( + [ + `1°2'3"N`, + `179 °E`, + `10' 59 " N`, + `001° 38' W`, + `S 12° 34 ' 56"`, + `W 13 ° 57 ' 19"`, + ] + .join(',') + ) + expect(parsed).toEqual([ + new DMSCoordinate(1, 2, 3, 'N'), + new DMSCoordinate(179, 0, 0, 'E'), + new DMSCoordinate(0, 10, 59, 'N'), + new DMSCoordinate(1, 38, 0, 'W'), + new DMSCoordinate(12, 34, 56, 'S'), + new DMSCoordinate(13, 57, 19, 'W'), + ]) + }) + + it('parses comma-delimited unlabeled coordinates', () => { + + const parsed = parseCoordinates( + [ + `10203N`, + `1790000E`, + ` 01059 N`, + `0013800 W `, + `S 123456 `, + ` W 135719`, + ] + .join(',') + ) + expect(parsed).toEqual([ + new DMSCoordinate(1, 2, 3, 'N'), + new DMSCoordinate(179, 0, 0, 'E'), + new DMSCoordinate(0, 10, 59, 'N'), + new DMSCoordinate(1, 38, 0, 'W'), + new DMSCoordinate(12, 34, 56, 'S'), + new DMSCoordinate(13, 57, 19, 'W'), + ]) + }) + }) + }) + + describe('multiple mixed coordinates', () => { + + it('parses decimals and dms with mixed delimiting', () => { + + const baseInput = [ + `179°00'00"E`, + `32`, + `-102.8292`, + `10203N`, + `+37.75`, + `01059 N`, + `13°8'00" W`, + `S 123456`, + `W 135719`, + -102.0, + ] + const baseExpected = [ + new DMSCoordinate(179, 0, 0, 'E'), + 32, + -102.8292, + new DMSCoordinate(1, 2, 3, 'N'), + 37.75, + new DMSCoordinate(0, 10, 59, 'N'), + new DMSCoordinate(13, 8, 0, 'W'), + new DMSCoordinate(12, 34, 56, 'S'), + new DMSCoordinate(13, 57, 19, 'W'), + -102, + ] + const spaceDelimited = baseInput.join(' ') + const commaDelimited = baseInput.join(',') + const dashDelimited = baseInput.join(' - ') + const allInput = `${spaceDelimited} - ${commaDelimited} ${dashDelimited}` + const parsed = parseCoordinates(allInput) + expect(parsed).toEqual([ ...baseExpected, ...baseExpected, ...baseExpected ]) + }) + }) + + describe('generator api', () => { + + it('iterates parts coordinates', () => { + + const baseInput = [ + `179°00'00"E`, + `32`, + `-102.8292`, + `10203N`, + `+37.75`, + `01059 N`, + `13°8'00" W`, + `S 123456`, + `W 135719`, + -102.0, + ] + const baseExpected = [ + new DMSCoordinate(179, 0, 0, 'E'), + 32, + -102.8292, + new DMSCoordinate(1, 2, 3, 'N'), + 37.75, + new DMSCoordinate(0, 10, 59, 'N'), + new DMSCoordinate(13, 8, 0, 'W'), + new DMSCoordinate(12, 34, 56, 'S'), + new DMSCoordinate(13, 57, 19, 'W'), + -102, + ] + const spaceDelimited = baseInput.join(' ') + const commaDelimited = baseInput.join(',') + const dashDelimited = baseInput.join(' - ') + const allInput = `${spaceDelimited} - ${commaDelimited} ${dashDelimited}` + const parsed = [] + const parsing = generateParsedCoordinates(allInput) + for (const coord of parsing) { + parsed.push(coord) + } + + expect(parsed).toEqual([ ...baseExpected, ...baseExpected, ...baseExpected ]) + }) + }) + }) +}) \ No newline at end of file diff --git a/web-app/admin/src/app/geometry/geometry-dms.ts b/web-app/admin/src/app/geometry/geometry-dms.ts new file mode 100644 index 000000000..d7078fc98 --- /dev/null +++ b/web-app/admin/src/app/geometry/geometry-dms.ts @@ -0,0 +1,568 @@ + +export enum DimensionKey { + Latitude = 'lat', + Longitude = 'lon', +} + +export const Dimension = { + [DimensionKey.Latitude]: { + get key() { return DimensionKey.Latitude }, + hemisphereForDegrees: (deg: number) => (deg < 0 ? 'S' : 'N') as LatitudeHemisphereLabel, + zeroPadDegrees: (deg: number) => zeroPadStart(deg, 2), + excludes: (deg: number) => !latitudeIncludes(deg), + includes: (deg: number) => latitudeIncludes(deg), + }, + [DimensionKey.Longitude]: { + get key() { return DimensionKey.Longitude }, + hemisphereForDegrees: (deg: number) => (deg < 0 ? 'W' : 'E') as LongitudeHemisphereLabel, + zeroPadDegrees: (deg: number) => zeroPadStart(deg, 3), + excludes: (deg: number) => !longitudeIncludes(deg), + includes: (deg: number) => longitudeIncludes(deg), + }, + keyForHemisphere: (hemi: HemisphereLabel) => hemi === 'E' || hemi === 'W' ? DimensionKey.Longitude : DimensionKey.Latitude, + forHemisphere: (hemi: HemisphereLabel) => Dimension[Dimension.keyForHemisphere(hemi)], +} as const + +export type LatitudeHemisphereLabel = 'N' | 'S' +export type LongitudeHemisphereLabel = 'E' | 'W' +export type HemisphereLabel = LatitudeHemisphereLabel | LongitudeHemisphereLabel + +export class DMSCoordinate { + + static fromDecimalDegrees(decimalDegrees: number, dimension: DimensionKey): DMSCoordinate | null { + let wholeDegrees = Math.trunc(Math.abs(decimalDegrees)) + let minutes = Math.floor(Math.abs(decimalPart(decimalDegrees) * 60.0)) + let seconds = Math.round(Math.abs(decimalPart(decimalPart(decimalDegrees) * 60.0)) * 60.0) + if (seconds == 60) { + seconds = 0 + minutes += 1 + } + if (minutes == 60) { + wholeDegrees += 1 + minutes = 0 + } + const dim = Dimension[dimension] + const hemisphere = dim.hemisphereForDegrees(decimalDegrees) + return new DMSCoordinate(wholeDegrees, minutes, seconds, hemisphere) + } + + constructor( + public degrees: number | null, + public minutes: number | null, + public seconds: number | null, + public hemisphere: HemisphereLabel | null + ) { } + + toDecimalDegrees() { + let result = this.degrees + if (this.minutes) { + result += this.minutes / 60.0 + } + if (this.seconds) { + result += this.seconds / 3600.0 + } + if (this.hemisphere == 'S' || this.hemisphere == 'W') { + result *= -1 + } + return result + } + + format(opts: DMSFormatOptions = { padDegrees: true }): string { + return formatDMSCoordinate(this, opts) + } + + toString() { + return this.format() + } +} + + +/** + * Parse latitude and longitude strings in degrees-minutes-seconds format. + * This function will parse any number of coordinates from the given input. + * The requirements say this class must support parsing the following + * coordinate strings. + * 1. 112233N 0112244W + * 2. N 11 ° 22'33 "- W 11 ° 22'33 + * 3. 11 ° 22'33 "N - 11 ° 22'33" W + * 4. 11° 22'33 N 011° 22'33 W + */ +export function parseCoordinates(input: string): (DMSCoordinate | number)[] | DMSParseError { + const coords = [] as (DMSCoordinate | number)[] + const parsing = generateParsedCoordinates(input) + let parsed = parsing.next() + while (parsed.done === false) { + coords.push(parsed.value) + parsed = parsing.next() + } + if (parsed.value) { + return parsed.value + } + return coords +} + +export function *generateParsedCoordinates(input: string): Generator { + if (!input || !(input = input.trim())) { + return + } + const parsing = new ParseContext(input) + while (parsing.remaining) { + const coord = parsing.startRule(parseCoordinate) + if (coord instanceof DMSParseError) { + return coord + } + yield coord + skipWhiteSpace(parsing) + if ((parsing.currentChar.value === '-' && parsing.lookAhead().is.space) || parsing.currentChar.value === ',') { + skipWhiteSpace(parsing.advanceCursor()) + } + } +} + +export class DMSParseError extends Error { + constructor(readonly input: string, readonly pos: number, message: string = '') { + super(`${message || 'error parsing DMS coordinates'} at position ${pos} of input ${input}`) + } +} + +/** + * Parse the given DMS coordinate string and return the value in decimal + * degrees. Return `NaN` if parsing fails. + */ +export function parseOne(input: string, dimension?: DimensionKey): number { + const coords = parseCoordinates(input) + if (Array.isArray(coords) && coords.length === 1) { + const [ coord ] = coords + if (typeof coord === 'number') { + return coord + } + if (coord instanceof DMSCoordinate && Dimension.keyForHemisphere(coord.hemisphere) === dimension) { + return coord.toDecimalDegrees() + } + } + console.error('error parsing degrees from dms', input, coords) + return NaN +} + +export function validateLatitude(input: string): boolean { + return validateCoordinateFromDMS(input, DimensionKey.Latitude) +} + +export function validateLongitude(input: string): boolean { + return validateCoordinateFromDMS(input, DimensionKey.Longitude) +} + +export function formatLatitude(degrees: number): string { + return formatDecimalDegreesCoordinate(degrees, DimensionKey.Latitude) +} + +export function formatLongitude(degrees: number): string { + return formatDecimalDegreesCoordinate(degrees, DimensionKey.Longitude) +} + +interface DMSFormatOptions { + padDegrees: boolean +} + +function zeroPadStart(num: number, padCount: number) { return num < 0 ? '-' : '' + String(Math.abs(num)).padStart(padCount, '0') } + +function decimalPart(num: number) { + const parts = String(num).split('.') + const fraction = parts.length == 2 ? parts[1] : '0' + return Number(`.${fraction}`) +} + +function formatDMSCoordinate(coord: DMSCoordinate, opts: DMSFormatOptions = { padDegrees: true }): string { + const deg = coord.degrees || 0 + const min = coord.minutes || 0 + const sec = coord.seconds || 0 + const dim = Dimension.forHemisphere(coord.hemisphere) + const degPadded = opts.padDegrees !== false ? dim.zeroPadDegrees(deg) : String(deg) + return `${degPadded}° ${zeroPadStart(min, 2)}' ${zeroPadStart(sec, 2)}" ${coord.hemisphere}` +} + +function formatDecimalDegreesCoordinate(decimalDegrees: number, dimension: DimensionKey): string { + let wholeDegrees = Math.trunc(Math.abs(decimalDegrees)) + let minutes = Math.floor(Math.abs(decimalPart(decimalDegrees) * 60.0)) + let seconds = Math.round(Math.abs(decimalPart(decimalPart(decimalDegrees) * 60.0)) * 60.0) + if (seconds == 60) { + seconds = 0 + minutes += 1 + } + if (minutes == 60) { + wholeDegrees += 1 + minutes = 0 + } + const dim = Dimension[dimension] + const hemisphere = dim.hemisphereForDegrees(decimalDegrees) + return `${dim.zeroPadDegrees(wholeDegrees)}° ${zeroPadStart(minutes, 2)}' ${zeroPadStart(seconds, 2)}" ${hemisphere}` +} + +function validateCoordinateFromDMS(input: string, dimension: DimensionKey): boolean { + if (!input) { + return false + } + const parsed = parseCoordinates(input) + if (parsed instanceof DMSParseError) { + return false + } + if (parsed.length !== 1) { + return false + } + const coord = parsed[0] + return coord instanceof DMSCoordinate ? + Dimension.keyForHemisphere(coord.hemisphere) === dimension : + Dimension[dimension].includes(coord) +} + +function latitudeIncludes(deg: number): boolean { + return deg >= -90 && deg <= 90 +} + +function longitudeIncludes(deg: number): boolean { + return deg >= -180 && deg <= 180 +} + +function Char(c: string) { + const is = { + get digit() { return /\d/.test(c) }, + get dot() { return c === '.' }, + get hemisphere() { return c in { n:1, s:1, e:1, w:1, N:1, S:1, E:1, W:1 } }, + get space() { return /\s/.test(c) }, + get sign() { return c === '+' || c === '-' }, + get unitLabel() { return c in { '°':1, '\'':1, '"':1 } }, + get endOfInput() { return c === undefined || c === null || c === '' }, + } + return { + is, + get value() { return c }, + toString() { return c }, + } +} + +type Char = ReturnType + +class ParseContext { + + private _pos: number = 0 + private c: Char = Char(this.input[this.pos]) + private rulePositionStack = [] as number[] + + coords: (DMSCoordinate | number)[] + + constructor(readonly input: string) {} + + get pos(): number { + return this._pos + } + + get currentChar(): Char { + return this.c + } + + get finished(): boolean { + return this.pos >= this.input.length + } + + get remaining(): boolean { + return this.pos < this.input.length + } + + get ruleStart(): number { + return this.rulePositionStack[this.rulePositionStack.length - 1] + } + + advanceCursor(): this { + return this.moveCursorTo(this.pos + 1) + } + + lookAhead(): Char { + return Char(this.input[this.pos + 1]) + } + + moveCursorTo(pos: number): this { + this._pos = pos + this.c = Char(this.input[this.pos]) + return this + } + + /** + * Return the current character, then advance the cursor to the next + * position. This is short-hand for + * ```typescript + * const c = ctx.currentChar() + * ctx.advanceCursor() + * ``` + */ + consumeCurrentChar(): Char { + const c = this.currentChar + this.advanceCursor() + return c + } + + startRule(rule: (parsing: ParseContext, ...args: any[]) => R | DMSParseError, ...args: any): R | DMSParseError { + this.rulePositionStack.push(this.pos) + const result = rule(this, ...args) + if (!(result instanceof DMSParseError)) { + this.endRule() + } + return result + } + + endRule(): this { + this.rulePositionStack.pop() + return this + } + + /** + * Create a `DMSParseError` with the given message. The `reason` can be + * either the numeric input position of the cause of the error, or the + * string of characters consumed from the input that caused the error. + * In the latter case, the resulting error's position will be the current + * position, less the length of the given reason string. + */ + error(message: string = '', reason: string | number = ''): DMSParseError { + const ruleStart = this.rulePositionStack.pop() || this.pos + const pos = typeof reason === 'string' ? ruleStart - reason.length : reason + const inputMarked = this.input.slice(0, pos) + '\u034E' + this.input.slice(pos) + return new DMSParseError(inputMarked, pos, message) + } +} + +function parseCoordinate(parsing: ParseContext): number | DMSCoordinate | DMSParseError { + if (parsing.currentChar.is.hemisphere) { + return parseDmsCoordinate(parsing) + } + else if (parsing.currentChar.is.sign) { + return parseDecimal(parsing) + } + else if (parsing.currentChar.is.digit) { + return parsing.startRule(parsing => { + const digits = parseDigitsWithTrailingFraction(parsing) + if (digits instanceof DMSParseError) { + return digits + } + skipWhiteSpace(parsing) + if (parsing.currentChar.is.unitLabel || parsing.currentChar.is.hemisphere) { + return parseDmsCoordinate(parsing, digits) + } + return parseDecimal(parsing, digits) + }) + } + return parsing.error('expected hemisphere, sign, or digit') +} + +function parseDmsCoordinate(parsing: ParseContext, digitsWithFractionalSeconds: string = ''): DMSCoordinate | DMSParseError { + if (digitsWithFractionalSeconds) { + skipWhiteSpace(parsing) + if (parsing.currentChar.is.unitLabel) { + /* + the caller parsed digits, then encountered a unit to trigger the dms rule + */ + const dmsParts = parseLabeledDmsParts(parsing, digitsWithFractionalSeconds) + if (dmsParts instanceof DMSParseError) { + return dmsParts + } + skipWhiteSpace(parsing) + if (parsing.currentChar.is.hemisphere) { + const hemi = parsing.consumeCurrentChar().value as HemisphereLabel + return dmsCoordOrError(parsing, dmsParts, hemi) + } + return parsing.error('expected hemisphere after dms parts') + } + else if (parsing.currentChar.is.hemisphere) { + /* + the caller parsed digits, then encountered a hemisphere, so expect + unlabeled compact dms, e.g. 112233N + */ + const hemi = parsing.consumeCurrentChar().value as HemisphereLabel + const dmsParts = parseUnlabeledCompactDmsParts(parsing, digitsWithFractionalSeconds) + return dmsCoordOrError(parsing, dmsParts, hemi) + } + } + else if (parsing.currentChar.is.hemisphere) { + /* + the caller encountered a leading hemisphere, so expect either + labeled dms or unlabeled compact dms + */ + const hemi = parsing.consumeCurrentChar().value as HemisphereLabel + skipWhiteSpace(parsing) + const expectedDigits = parseDigitsWithTrailingFraction(parsing) + if (expectedDigits instanceof DMSParseError) { + return expectedDigits + } + skipWhiteSpace(parsing) + if (parsing.currentChar.is.unitLabel) { + const dmsParts = parseLabeledDmsParts(parsing, expectedDigits) + return dmsCoordOrError(parsing, dmsParts, hemi) + } + else { + const dmsParts = parseUnlabeledCompactDmsParts(parsing, expectedDigits) + return dmsCoordOrError(parsing, dmsParts, hemi) + } + } + return parsing.error() +} + +type DMSParts = { deg: number, min: number, sec: number } + +function dmsCoordOrError(parsing: ParseContext, which: DMSParts | DMSParseError, hemi: HemisphereLabel): DMSCoordinate | DMSParseError { + if (which instanceof DMSParseError) { + return which + } + if (which.deg % 1 !== 0) { + return parsing.error(`degrees ${which.deg} must be a whole positive integer`) + } + if (which.min % 1 !== 0) { + return parsing.error(`minutes ${which.min} must be a whole positive integer`) + } + if (which.min >= 60) { + return parsing.error(`minutes ${which.min} must be less than 60`) + } + if (which.sec >= 60) { + return parsing.error(`seconds ${which.sec} must be less than 60`) + } + const coord = new DMSCoordinate(which.deg, which.min, which.sec, hemi) + const dim = Dimension.forHemisphere(hemi) + if (dim.excludes(coord.toDecimalDegrees())) { + return parsing.error('coordinate out of bounds') + } + return new DMSCoordinate(which.deg, which.min, which.sec, hemi) +} + +/** + * Parse the rest of the labeled DMS parts after the given digits. The current + * character should be a DMS unit label (°|'|") that indicates the labeled DMS + * format. + * @param parsing the parse context + * @param digitsWithFractionalSeconds the digits parsed before encountering a unit label + * @returns + */ +function parseLabeledDmsParts(parsing: ParseContext, digitsWithFractionalSeconds: string): { deg: number, min: number, sec: number } | DMSParseError { + type UnitLabel = '°' | "'" | '"' + const allUnits = Array.from(`°'"`) + const rankOfUnit = { '°': 0, "'": 1, '"': 2 } + const exhaustedUnits = {} as { [U in UnitLabel]?: 1 } + const dmsParts = { '°': null, "'": null, '"': null } + while (parsing.currentChar.is.unitLabel) { + const unit = parsing.consumeCurrentChar().value + const part = Number(digitsWithFractionalSeconds) + if (isNaN(part)) { + return parsing.error(`invalid digits ${digitsWithFractionalSeconds}`) + } + if (unit in exhaustedUnits) { + return parsing.error(`dms unit ${unit} out of order`) + } + allUnits.slice(0, rankOfUnit[unit] + 1).forEach(unit => exhaustedUnits[unit] = 1) + dmsParts[unit] = part + skipWhiteSpace(parsing) + digitsWithFractionalSeconds = '0' + if (parsing.currentChar.is.digit) { + const nextDigits = parseDigitsWithTrailingFraction(parsing) + if (nextDigits instanceof DMSParseError) { + return nextDigits + } + digitsWithFractionalSeconds = nextDigits + } + skipWhiteSpace(parsing) + } + if (dmsParts['"'] === null) { + if (parsing.finished || parsing.currentChar.is.hemisphere) { + /* + seconds digits without a label; not sure why anyone does this, but + apparently unlabeled seconds is a requirement + E 11° 22' 33 + */ + const unlabeledSeconds = Number(digitsWithFractionalSeconds) + dmsParts['"'] = unlabeledSeconds + } + } + return { + deg: dmsParts['°'] || 0, + min: dmsParts["'"] || 0, + sec: dmsParts['"'] || 0, + } +} + +function parseUnlabeledCompactDmsParts(parsing: ParseContext, digitsWithFractionalSeconds: string): DMSParts | DMSParseError { + const [ whole, frac ] = digitsWithFractionalSeconds.split('.') + const sec = Number(whole.slice(-2) + (frac ? `.${frac}` : '')) + const min = Number(whole.slice(-4, -2)) + const deg = Number(whole.slice(0, -4)) + return { deg, min, sec } +} + +function parseDigits(parsing: ParseContext): string | DMSParseError { + if (!parsing.currentChar.is.digit) { + return parsing.error('expected a digit') + } + let digits = parsing.currentChar.value + while (parsing.advanceCursor().currentChar.is.digit) { + digits += parsing.currentChar.value + } + return digits +} + +function parseDigitsWithTrailingFraction(parsing: ParseContext): string | DMSParseError { + const whole = parseDigits(parsing) + if (whole instanceof DMSParseError) { + return whole + } + if (!parsing.currentChar.is.dot) { + return whole + } + const frac = parseDigits(parsing.advanceCursor()) + if (frac instanceof DMSParseError) { + return frac + } + return `${whole}.${frac}` +} + +function parseDecimal(parsing: ParseContext, digitsWithFraction: string = ''): number | DMSParseError { + if (digitsWithFraction) { + return Number(digitsWithFraction) + } + const sign = parsing.currentChar.is.sign ? parsing.consumeCurrentChar().value : '' + const digits = parseDigitsWithTrailingFraction(parsing) + if (digits instanceof DMSParseError) { + return digits + } + return Number(`${sign}${digits}`) +} + +function skipWhiteSpace(parsing: ParseContext): number { + const start = parsing.pos + while (parsing.currentChar.is.space) { + parsing.advanceCursor() + } + return parsing.pos - start +} + +/* + peggy grammar (https://peggyjs.org/online.html): + +coordinates = first:coordinate others:(_+ @coordinate)* { return [ first, ...others ] } + +coordinate = dms_coordinate / decimal + +dms_coordinate = + hem:hemisphere _* dms:dms_parts { return { dms, hem } } + / dms:dms_parts _* hem:hemisphere { return { dms, hem } } + +hemisphere = [nsew]i { return text().toUpperCase() } + +dms_parts = + deg:degrees _* min:minutes _* sec:seconds { return { deg, min, sec } } + / min:minutes _* sec:seconds { return { min, sec } } + / sec:seconds|1| { return { sec } } + +degrees = digits:digit|1..3| _* '°' { return digits.join('') + '°' } + +minutes = digits:digit|1..2| _* "'" { return digits.join('') + "'" } + +seconds = digits:digit|1..2| _* '"' { return digits.join('') + '"' } + +decimal = [-+]? whole:digit|1..3| ('.' fraction:digit+)? { return parseFloat(text()) } + +digit = [0-9] + */ diff --git a/web-app/admin/src/app/geometry/geometry.module.ts b/web-app/admin/src/app/geometry/geometry.module.ts new file mode 100644 index 000000000..49a58e80a --- /dev/null +++ b/web-app/admin/src/app/geometry/geometry.module.ts @@ -0,0 +1,16 @@ +import { NgModule } from '@angular/core'; +import { CommonModule } from '@angular/common'; +import { GeometryPipe } from './geometry.pipe'; + +@NgModule({ + declarations: [ + GeometryPipe + ], + exports: [ + GeometryPipe + ], + imports: [ + CommonModule + ] +}) +export class GeometryModule { } diff --git a/web-app/admin/src/app/geometry/geometry.pipe.spec.ts b/web-app/admin/src/app/geometry/geometry.pipe.spec.ts new file mode 100644 index 000000000..9d61cf543 --- /dev/null +++ b/web-app/admin/src/app/geometry/geometry.pipe.spec.ts @@ -0,0 +1,15 @@ +import { GeometryPipe } from './geometry.pipe'; + +class MockLocalStorageService { + getCoordinateSystemView(): string { + return 'mgrs'; + } +} + +describe('GeometryPipe', () => { + it('create an instance', () => { + const mock = new MockLocalStorageService(); + const pipe = new GeometryPipe(mock); + expect(pipe).toBeTruthy(); + }); +}); diff --git a/web-app/admin/src/app/geometry/geometry.pipe.ts b/web-app/admin/src/app/geometry/geometry.pipe.ts new file mode 100644 index 000000000..bdc04658f --- /dev/null +++ b/web-app/admin/src/app/geometry/geometry.pipe.ts @@ -0,0 +1,52 @@ +import { Inject, Pipe, PipeTransform } from '@angular/core' +import * as turfCenter from '@turf/center' +import { Feature, Point } from 'geojson' +import * as mgrs from 'mgrs' +import { LocalStorageService } from '../upgrade/ajs-upgraded-providers' +import * as DMS from './geometry-dms' + +@Pipe({ + name: 'geometry' +}) +export class GeometryPipe implements PipeTransform { + + constructor(@Inject(LocalStorageService) private localStorageService: any) { } + + transform(value: any, format?: number): any { + if (value === undefined) return + + switch (this.localStorageService.getCoordinateSystemView()) { + case 'mgrs': + return this.toMgrs(value) + case 'dms': + return this.toDms(value) + default: + return this.toWgs84(value, format) + } + } + + toMgrs(value: any): string { + const coordinates = this.center(value).coordinates + return mgrs.forward(coordinates) + } + + toDms(value: any): string { + const coordinates = this.center(value).coordinates + return `${DMS.formatLatitude(coordinates[1])}, ${DMS.formatLongitude(coordinates[0])}` + } + + toWgs84(value: any, format: number): string { + const coordinates = this.center(value).coordinates + return coordinates[1].toFixed(format) + ', ' + coordinates[0].toFixed(format) + } + + center(value: any): Point { + const feature: Feature = { + type: 'Feature', + properties: {}, + geometry: value + } + + return turfCenter(feature).geometry as Point + } +} diff --git a/web-app/src/app/http/token-interceptor.service.spec.ts b/web-app/admin/src/app/http/token-interceptor.service.spec.ts similarity index 88% rename from web-app/src/app/http/token-interceptor.service.spec.ts rename to web-app/admin/src/app/http/token-interceptor.service.spec.ts index ab1c0862f..f6058651d 100644 --- a/web-app/src/app/http/token-interceptor.service.spec.ts +++ b/web-app/admin/src/app/http/token-interceptor.service.spec.ts @@ -1,5 +1,6 @@ import { TestBed } from '@angular/core/testing'; +/* TODO test MUST include at least 1 test describe('TokenInterceptorService', () => { beforeEach(() => TestBed.configureTestingModule({ providers: [{ @@ -11,3 +12,4 @@ describe('TokenInterceptorService', () => { // expect(service).toBeTruthy(); // }); }); +*/ diff --git a/web-app/src/app/http/token-interceptor.service.ts b/web-app/admin/src/app/http/token-interceptor.service.ts similarity index 100% rename from web-app/src/app/http/token-interceptor.service.ts rename to web-app/admin/src/app/http/token-interceptor.service.ts diff --git a/web-app/src/app/json-schema/json-schema-widget/json-schema-widget-autocomplete.component.html b/web-app/admin/src/app/json-schema/json-schema-widget/json-schema-widget-autocomplete.component.html similarity index 86% rename from web-app/src/app/json-schema/json-schema-widget/json-schema-widget-autocomplete.component.html rename to web-app/admin/src/app/json-schema/json-schema-widget/json-schema-widget-autocomplete.component.html index e6c91b88a..9f6ecdd82 100644 --- a/web-app/src/app/json-schema/json-schema-widget/json-schema-widget-autocomplete.component.html +++ b/web-app/admin/src/app/json-schema/json-schema-widget/json-schema-widget-autocomplete.component.html @@ -1,6 +1,6 @@ {{options?.title}} keyboard_arrow_down - - \ No newline at end of file + diff --git a/web-app/src/app/json-schema/json-schema-widget/json-schema-widget-autocomplete.component.scss b/web-app/admin/src/app/json-schema/json-schema-widget/json-schema-widget-autocomplete.component.scss similarity index 100% rename from web-app/src/app/json-schema/json-schema-widget/json-schema-widget-autocomplete.component.scss rename to web-app/admin/src/app/json-schema/json-schema-widget/json-schema-widget-autocomplete.component.scss diff --git a/web-app/src/app/json-schema/json-schema-widget/json-schema-widget-autocomplete.component.spec.ts b/web-app/admin/src/app/json-schema/json-schema-widget/json-schema-widget-autocomplete.component.spec.ts similarity index 92% rename from web-app/src/app/json-schema/json-schema-widget/json-schema-widget-autocomplete.component.spec.ts rename to web-app/admin/src/app/json-schema/json-schema-widget/json-schema-widget-autocomplete.component.spec.ts index 20a250ab7..09e45d231 100644 --- a/web-app/src/app/json-schema/json-schema-widget/json-schema-widget-autocomplete.component.spec.ts +++ b/web-app/admin/src/app/json-schema/json-schema-widget/json-schema-widget-autocomplete.component.spec.ts @@ -1,4 +1,4 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; import { FormsModule, ReactiveFormsModule } from '@angular/forms'; import { MatAutocompleteModule } from '@angular/material/autocomplete'; import { MatFormFieldModule } from '@angular/material/form-field' @@ -13,7 +13,7 @@ describe('AutocompleteMaterialSelectComponent', () => { let component: JsonSchemaWidgetAutocompleteComponent; let fixture: ComponentFixture; - beforeEach(async(() => { + beforeEach(waitForAsync(() => { TestBed.configureTestingModule({ imports: [ MatFormFieldModule, diff --git a/web-app/src/app/json-schema/json-schema-widget/json-schema-widget-autocomplete.component.ts b/web-app/admin/src/app/json-schema/json-schema-widget/json-schema-widget-autocomplete.component.ts similarity index 91% rename from web-app/src/app/json-schema/json-schema-widget/json-schema-widget-autocomplete.component.ts rename to web-app/admin/src/app/json-schema/json-schema-widget/json-schema-widget-autocomplete.component.ts index bd2bc1be7..d49d0582c 100644 --- a/web-app/src/app/json-schema/json-schema-widget/json-schema-widget-autocomplete.component.ts +++ b/web-app/admin/src/app/json-schema/json-schema-widget/json-schema-widget-autocomplete.component.ts @@ -1,7 +1,6 @@ import { buildTitleMap, isArray, JsonSchemaFormService } from '@ajsf/core'; import { Component, Inject, Input, OnInit, Optional } from '@angular/core'; -import { AbstractControl, FormControl } from '@angular/forms'; -import { MAT_LABEL_GLOBAL_OPTIONS } from '@angular/material/core'; +import { AbstractControl, UntypedFormControl } from '@angular/forms'; import { MAT_FORM_FIELD_DEFAULT_OPTIONS } from '@angular/material/form-field'; import { Observable } from 'rxjs'; import { map, startWith } from 'rxjs/operators'; @@ -13,7 +12,7 @@ import { map, startWith } from 'rxjs/operators'; }) export class JsonSchemaWidgetAutocompleteComponent implements OnInit { - formControl: AbstractControl = new FormControl(); + formControl: AbstractControl = new UntypedFormControl(); controlName: string; controlValue: any; controlDisabled = false; @@ -30,7 +29,6 @@ export class JsonSchemaWidgetAutocompleteComponent implements OnInit { constructor( @Inject(MAT_FORM_FIELD_DEFAULT_OPTIONS) @Optional() public matFormFieldDefaultOptions, - @Inject(MAT_LABEL_GLOBAL_OPTIONS) @Optional() public matLabelGlobalOptions, private jsf: JsonSchemaFormService ) { diff --git a/web-app/src/app/json-schema/json-schema.component.spec.ts b/web-app/admin/src/app/json-schema/json-schema.component.spec.ts similarity index 86% rename from web-app/src/app/json-schema/json-schema.component.spec.ts rename to web-app/admin/src/app/json-schema/json-schema.component.spec.ts index cb158c6f0..b31d95c4e 100644 --- a/web-app/src/app/json-schema/json-schema.component.spec.ts +++ b/web-app/admin/src/app/json-schema/json-schema.component.spec.ts @@ -1,5 +1,5 @@ import { JsonSchemaFormModule } from '@ajsf/core'; -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; import { JsonSchemaFormWithServiceComponent } from './json-schema.component'; @@ -8,7 +8,7 @@ describe('JsonSchemaFormWithServiceComponent', () => { let component: JsonSchemaFormWithServiceComponent; let fixture: ComponentFixture; - beforeEach(async(() => { + beforeEach(waitForAsync(() => { TestBed.configureTestingModule({ imports: [ JsonSchemaFormModule diff --git a/web-app/src/app/json-schema/json-schema.component.ts b/web-app/admin/src/app/json-schema/json-schema.component.ts similarity index 100% rename from web-app/src/app/json-schema/json-schema.component.ts rename to web-app/admin/src/app/json-schema/json-schema.component.ts diff --git a/web-app/src/app/json-schema/json-schema.module.ts b/web-app/admin/src/app/json-schema/json-schema.module.ts similarity index 100% rename from web-app/src/app/json-schema/json-schema.module.ts rename to web-app/admin/src/app/json-schema/json-schema.module.ts diff --git a/web-app/admin/src/app/map/clip/clip.component.html b/web-app/admin/src/app/map/clip/clip.component.html new file mode 100644 index 000000000..50ef8e0aa --- /dev/null +++ b/web-app/admin/src/app/map/clip/clip.component.html @@ -0,0 +1 @@ +
diff --git a/web-app/admin/src/app/map/clip/clip.component.scss b/web-app/admin/src/app/map/clip/clip.component.scss new file mode 100644 index 000000000..45abcd599 --- /dev/null +++ b/web-app/admin/src/app/map/clip/clip.component.scss @@ -0,0 +1,8 @@ +.clip { + position: absolute; + top: 0; + bottom: 0; + left: 0; + right: 0; + background-color: rgb(192, 217, 228); +} diff --git a/web-app/admin/src/app/map/clip/clip.component.spec.ts b/web-app/admin/src/app/map/clip/clip.component.spec.ts new file mode 100644 index 000000000..71bdb7e76 --- /dev/null +++ b/web-app/admin/src/app/map/clip/clip.component.spec.ts @@ -0,0 +1,27 @@ +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; + +import { MapClipComponent } from './clip.component'; + +/* TODO test MUST include at least 1 test +describe('MapClipComponent', () => { + let component: MapClipComponent; + let fixture: ComponentFixture; + + beforeEach(waitForAsync(() => { + TestBed.configureTestingModule({ + declarations: [MapClipComponent] + }) + .compileComponents(); + })); + + beforeEach(() => { + fixture = TestBed.createComponent(MapClipComponent); + component = fixture.componentInstance; + fixture.detectChanges(); + }); + + // it('should create', () => { + // expect(component).toBeTruthy(); + // }); +}); +*/ diff --git a/web-app/admin/src/app/map/clip/clip.component.ts b/web-app/admin/src/app/map/clip/clip.component.ts new file mode 100644 index 000000000..57acb68dc --- /dev/null +++ b/web-app/admin/src/app/map/clip/clip.component.ts @@ -0,0 +1,148 @@ +import { Component, Input, ElementRef, Inject, OnDestroy, OnChanges, SimpleChanges, OnInit, ViewChild } from '@angular/core' +import { Feature } from 'geojson' +import { Map, GeoJSON, PathOptions, Layer, FixedWidthMarker, control, TileLayer, WMSOptions, Circle, LatLng } from 'leaflet' +import { LocalStorageService, MapService } from '../../../app/upgrade/ajs-upgraded-providers' + +interface FeatureWithStyle extends Feature { + style?: any +} + +export interface PointAccuracy { + latlng: LatLng, + radius: number, + color: string, + zoomTo: boolean +} + +@Component({ + selector: 'map-clip', + templateUrl: './clip.component.html', + styleUrls: ['./clip.component.scss'] +}) +export class MapClipComponent implements OnInit, OnChanges, OnDestroy { + @Input() feature: Feature + @Input() accuracy: PointAccuracy + + @ViewChild('map', { static: true }) mapElement: ElementRef + + map: Map + layer: GeoJSON + accuracyLayer: Circle + layers = {} + zoomControl = control.zoom() + mapListener = { + onBaseLayerSelected: this.onBaseLayerSelected.bind(this) + } + + constructor( + @Inject(MapService) private mapService: any, + @Inject(LocalStorageService) private localStorageService: any) { + } + + ngOnInit(): void { + const mapPosition = this.localStorageService.getMapPosition(); + + this.map = new Map(this.mapElement.nativeElement, { + center: mapPosition.center, + zoom: 15, + minZoom: 0, + maxZoom: 18, + zoomControl: false, + trackResize: true, + scrollWheelZoom: false, + attributionControl: false + }) + + this.map.scrollWheelZoom.disable() + this.map.dragging.disable() + this.map.touchZoom.disable() + this.map.doubleClickZoom.disable() + this.map.boxZoom.disable() + this.map.keyboard.disable() + + this.mapService.addListener(this.mapListener) + + this.addFeature() + } + + ngOnChanges(changes: SimpleChanges): void { + if (!this.map) return; + + this.addFeature(); + } + + ngOnDestroy(): void { + this.mapService.removeListener(this.mapListener) + } + + onBaseLayerSelected(baseLayer): void { + let layer = this.layers[baseLayer.name] + if (layer) this.map.removeLayer(layer.layer) + + layer = this.createRasterLayer(baseLayer) + this.layers[baseLayer.name] = { type: 'tile', layer: baseLayer, rasterLayer: layer } + + layer.addTo(this.map) + } + + createRasterLayer(layer): Layer { + let baseLayer: Layer = null + if (layer.format === 'XYZ' || layer.format === 'TMS') { + const options = { tms: layer.format === 'TMS', maxZoom: 18 } + baseLayer = new TileLayer(layer.url, options) + } else if (layer.format === 'WMS') { + const options: WMSOptions = { + layers: layer.wms.layers, + version: layer.wms.version, + format: layer.wms.format, + transparent: layer.wms.transparent + } + + if (layer.wms.styles) options.styles = layer.wms.styles + baseLayer = new TileLayer.WMS(layer.url, options) + } + + return baseLayer + } + + addFeature(): void { + if (this.layer) { + this.map.removeLayer(this.layer) + } + + if (!this.feature || !this.feature.geometry) { + const mapPosition = this.localStorageService.getMapPosition() + this.map.setView(mapPosition.center, 1) + return + } + + this.layer = new GeoJSON(this.feature, { + pointToLayer: function (feature: FeatureWithStyle, latlng): Layer { + return new FixedWidthMarker(latlng, { + iconUrl: feature.style ? feature.style.iconUrl : '' + }) + }, + style: function (feature: FeatureWithStyle): PathOptions { + return feature.style + } + }) + + let bounds = this.layer.getBounds() + if (this.accuracy && this.accuracy.radius > 0) { + this.accuracyLayer = new Circle(this.accuracy.latlng, this.accuracy.radius, { + color: this.accuracy.color, + fillColor: this.accuracy.color, + fillOpacity: 0.15, + weight: 2, + opacity: 0.5 + }).addTo(this.map) + + if (this.accuracy.zoomTo) { + bounds = this.accuracyLayer.getBounds() + } + } + + this.layer.addTo(this.map) + this.map.fitBounds(bounds) + } +} diff --git a/web-app/admin/src/app/map/settings/map.settings.service.spec.ts b/web-app/admin/src/app/map/settings/map.settings.service.spec.ts new file mode 100644 index 000000000..35af4e125 --- /dev/null +++ b/web-app/admin/src/app/map/settings/map.settings.service.spec.ts @@ -0,0 +1,18 @@ +import { TestBed } from '@angular/core/testing'; + +import { MapSettingsService } from './map.settings.service'; +import { HttpClientTestingModule } from '@angular/common/http/testing'; + +describe('MapSettingsService', () => { + + beforeEach(() => { + TestBed.configureTestingModule({ + imports: [HttpClientTestingModule] + }); + }); + + it('should be created', () => { + const service: MapSettingsService = TestBed.inject(MapSettingsService); + expect(service).toBeTruthy(); + }); +}); diff --git a/web-app/admin/src/app/map/settings/map.settings.service.ts b/web-app/admin/src/app/map/settings/map.settings.service.ts new file mode 100644 index 000000000..84801ceae --- /dev/null +++ b/web-app/admin/src/app/map/settings/map.settings.service.ts @@ -0,0 +1,22 @@ +import { HttpClient } from '@angular/common/http'; +import { Injectable } from '@angular/core'; +import { Observable } from 'rxjs'; +import { MapSettings } from '../../../app/entities/map/entities.map'; + +@Injectable({ + providedIn: 'root' +}) +export class MapSettingsService { + + constructor(private http: HttpClient) { } + + getMapSettings(): Observable { + return this.http.get('/api/settings/map'); + } + + updateMapSettings(settings: MapSettings): Observable { + return this.http.post('/api/settings/map/', settings, { + headers: { "Content-Type": "application/json" } + }); + } +} diff --git a/web-app/admin/src/app/moment/moment.module.ts b/web-app/admin/src/app/moment/moment.module.ts new file mode 100644 index 000000000..753ebf605 --- /dev/null +++ b/web-app/admin/src/app/moment/moment.module.ts @@ -0,0 +1,16 @@ +import { NgModule } from '@angular/core'; +import { CommonModule } from '@angular/common'; +import { MomentPipe } from './moment.pipe'; + +@NgModule({ + declarations: [ + MomentPipe + ], + exports: [ + MomentPipe + ], + imports: [ + CommonModule + ] +}) +export class MomentModule { } diff --git a/web-app/admin/src/app/moment/moment.pipe.spec.ts b/web-app/admin/src/app/moment/moment.pipe.spec.ts new file mode 100644 index 000000000..03a552e0d --- /dev/null +++ b/web-app/admin/src/app/moment/moment.pipe.spec.ts @@ -0,0 +1,15 @@ +import { MomentPipe } from './moment.pipe'; + +class MockLocalStorageService { + getTimeFormat(): string { + return 'relative'; + } +} + +describe('MomentPipe', () => { + it('create an instance', () => { + const mock = new MockLocalStorageService(); + const pipe = new MomentPipe(mock); + expect(pipe).toBeTruthy(); + }); +}); diff --git a/web-app/admin/src/app/moment/moment.pipe.ts b/web-app/admin/src/app/moment/moment.pipe.ts new file mode 100644 index 000000000..9f9e571e4 --- /dev/null +++ b/web-app/admin/src/app/moment/moment.pipe.ts @@ -0,0 +1,28 @@ +import { Pipe, PipeTransform, Inject } from '@angular/core'; +import { LocalStorageService } from '../upgrade/ajs-upgraded-providers'; +import * as moment from 'moment'; + +@Pipe({ + name: 'moment', + pure: false +}) +export class MomentPipe implements PipeTransform { + + constructor(@Inject(LocalStorageService) private localStorageService: any) { } + + transform(value: any, args?: any): any { + switch (this.localStorageService.getTimeFormat()) { + case 'relative': { + return moment(value).fromNow(); + } + default: { + const timeZone = this.localStorageService.getTimeZoneView(); + if (timeZone === 'gmt') { + return moment(value).utc().format('MMM D YYYY h:mm A z'); + } else { + return moment(value).format('MMM D YYYY h:mm A'); + } + } + } + } +} diff --git a/web-app/admin/src/app/observation/attachment/attachment-upload/attachment-upload.component.html b/web-app/admin/src/app/observation/attachment/attachment-upload/attachment-upload.component.html new file mode 100644 index 000000000..9feae2c1e --- /dev/null +++ b/web-app/admin/src/app/observation/attachment/attachment-upload/attachment-upload.component.html @@ -0,0 +1,40 @@ +
+
+
+ +
+
+ +
+
+ +
+ play_circle_outline +
+
+
+
+ mic_none_outlined +
{{attachment?.name | filename:12}}
+
+
+
+
+ attach_file +
{{attachment?.name | filename:12}}
+
+
+
+
+ +
+ +
+
+
+
Uploading {{attachment?.uploadProgress}}%
+ +
+
\ No newline at end of file diff --git a/web-app/admin/src/app/observation/attachment/attachment-upload/attachment-upload.component.scss b/web-app/admin/src/app/observation/attachment/attachment-upload/attachment-upload.component.scss new file mode 100644 index 000000000..62cdc4221 --- /dev/null +++ b/web-app/admin/src/app/observation/attachment/attachment-upload/attachment-upload.component.scss @@ -0,0 +1,80 @@ +.upload-container { + display: flex; + align-items: center; + position: absolute; + top: 0; + bottom: 0; + left: 0; + right: 0; + background-color: rgba(0, 0, 0, 0.6); +} + +.upload-preview { + position: absolute; + top: 0; + left: 0; + right: 0; + bottom: 0; + width: 100%; + height: 100%; + object-fit: cover; +} + +.upload-preview--mask { + position: relative; + width: 100%; + height: 100%; +} + +.upload-preview--mask__icon { + font-size: 80px; + width: 80px; + height: 80px; + color: rgba(255, 255, 255, .60); +} + +.upload-progress { + width: 100%; + margin: 0 16px; + display: flex; + flex-direction: column; + align-items: center; +} + +.upload__label { + color: rgba(255, 255, 255, 0.87); + margin-bottom: 8px; +} + +.upload-delete { + position: absolute; + bottom: 16px; + right: 16px; +} + +.preview-container { + position: absolute; + top: 0; + left: 0; + right: 0; + bottom: 0; + display: flex; + flex-direction: column; + align-items: center; + justify-content: center; + background-color: #E5E5E5 +} + +.preview__icon { + font-size: 60px; + width: 60px; + height: 60px; + margin-bottom: 8px; + color: rgba(0, 0, 0, .4); +} + +.preview__text { + font-size: 16px; + font-weight: 500; + color: rgba(0, 0, 0, .6) +} \ No newline at end of file diff --git a/web-app/admin/src/app/observation/attachment/attachment-upload/attachment-upload.component.spec.ts b/web-app/admin/src/app/observation/attachment/attachment-upload/attachment-upload.component.spec.ts new file mode 100644 index 000000000..0bbaac689 --- /dev/null +++ b/web-app/admin/src/app/observation/attachment/attachment-upload/attachment-upload.component.spec.ts @@ -0,0 +1,27 @@ +import { HttpClientTestingModule } from '@angular/common/http/testing'; +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; + +import { AttachUploadComponent } from './attachment-upload.component'; + +describe('AttachUploadComponent', () => { + let component: AttachUploadComponent; + let fixture: ComponentFixture; + + beforeEach(waitForAsync(() => { + TestBed.configureTestingModule({ + imports: [HttpClientTestingModule], + declarations: [AttachUploadComponent] + }) + .compileComponents(); + })); + + beforeEach(() => { + fixture = TestBed.createComponent(AttachUploadComponent); + component = fixture.componentInstance; + fixture.detectChanges(); + }); + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/web-app/admin/src/app/observation/attachment/attachment-upload/attachment-upload.component.ts b/web-app/admin/src/app/observation/attachment/attachment-upload/attachment-upload.component.ts new file mode 100644 index 000000000..08997dda1 --- /dev/null +++ b/web-app/admin/src/app/observation/attachment/attachment-upload/attachment-upload.component.ts @@ -0,0 +1,139 @@ +import { HttpEvent, HttpEventType, HttpResponse, HttpResponseBase } from '@angular/common/http'; +import { ChangeDetectorRef, Component, EventEmitter, Input, OnChanges, Output, SimpleChanges } from '@angular/core'; +import { UntypedFormControl } from '@angular/forms'; +import { AttachmentAction } from '../../observation-edit/observation-edit-attachment/observation-edit-attachment-action'; +import { AttachmentService } from '../attachment.service'; + +export interface FileUpload { + id: number | string, + name: string, + formControl: UntypedFormControl, + attachmentId: string, + action: AttachmentAction, + file: File, + preview?: string, + uploading?: boolean, + uploadProgress?: number +} + +enum PreviewType { + LOADING, IMAGE, VIDEO, AUDIO, UNKNOWN +} + +@Component({ + selector: 'attachment-upload', + templateUrl: './attachment-upload.component.html', + styleUrls: ['./attachment-upload.component.scss'] +}) +export class AttachUploadComponent implements OnChanges { + @Input() attachment: FileUpload + @Input() url: string + + @Output() remove = new EventEmitter<{ id: number | string }>() + @Output() upload = new EventEmitter<{ id: number | string, response: HttpResponseBase }>() + @Output() error = new EventEmitter<{ id: number | string }>() + + preview: PreviewType = PreviewType.LOADING + previewType = PreviewType + attachmentsToUpload = 0 + actions: typeof AttachmentAction = AttachmentAction + + constructor(private changeDetector: ChangeDetectorRef, private attachmentService: AttachmentService) { } + + ngOnChanges(changes: SimpleChanges): void { + if (changes.attachment && this.attachment) { + if (this.attachment.file.type.match('image')) { + this.preview = PreviewType.LOADING + this.previewImage(this.attachment) + .then(() => { this.preview = PreviewType.IMAGE }) + .catch(() => this.preview = PreviewType.UNKNOWN) + } else if (this.attachment.file.type.match('video')) { + this.preview = PreviewType.LOADING + this.previewVideo(this.attachment) + .then(() => { this.preview = PreviewType.VIDEO }) + .catch(() => this.preview = PreviewType.UNKNOWN) + } else if (this.attachment.file.type.match('audio')) { + this.preview = PreviewType.AUDIO + } else { + this.preview = PreviewType.UNKNOWN + } + } + + if (changes.url && changes.url.currentValue) { + this.startUpload(); + } + } + + removeAttachment(id: number): void { + this.remove.emit({ id: id }) + } + + previewImage(info: FileUpload): Promise { + return new Promise(resolve => { + const reader = new FileReader() + + reader.onload = (e: Event): void => { + const target = e.target as FileReader; + info.preview = target.result as string + this.changeDetector.detectChanges() + resolve() + } + + reader.readAsDataURL(info.file) + }) + } + + previewVideo(info: FileUpload): Promise { + return new Promise((resolve, reject) => { + const reader = new FileReader() + + reader.onload = (): void => { + const blob = new Blob([reader.result], { type: info.file.type }) + const url = URL.createObjectURL(blob) + const video: HTMLVideoElement = document.createElement('video') + + video.addEventListener('loadeddata', () => { + const canvas = document.createElement('canvas') + canvas.width = video.videoWidth + canvas.height = video.videoHeight + canvas.getContext('2d').drawImage(video, 0, 0, canvas.width, canvas.height) + const image = canvas.toDataURL() + info.preview = image + URL.revokeObjectURL(url) + this.changeDetector.detectChanges() + resolve() + }) + + video.addEventListener('error', () => { + this.changeDetector.detectChanges() + reject() + }) + + video.preload = 'metadata' + video.src = url + video.muted = true + video.play() + } + + reader.readAsArrayBuffer(info.file) + }) + } + + startUpload(): void { + if (!this.attachment || !this.url) return + + this.attachmentService.upload(this.attachment, this.url).subscribe((response: HttpEvent>) => { + if (response.type === HttpEventType.Response) { + this.attachment.uploading = false + if (response.status === 200) { + this.upload.emit({ id: this.attachment.id, response: response.body }) + } else { + this.error.emit({ id: this.attachment.id }) + } + } else if (response.type === HttpEventType.UploadProgress) { + this.attachment.uploading = true + this.attachment.uploadProgress = Math.round(100 * response.loaded / response.total); + } + }) + } +} diff --git a/web-app/admin/src/app/observation/attachment/attachment.component.html b/web-app/admin/src/app/observation/attachment/attachment.component.html new file mode 100644 index 000000000..171c9a088 --- /dev/null +++ b/web-app/admin/src/app/observation/attachment/attachment.component.html @@ -0,0 +1,73 @@ +
+
+
+
+ +
+
+ +
+
+ +
+
+ +
+
+ +
+ + {{label}} + +
+ +
+ +
+
+
+ +
+ +
+ + +
+ + +
+
+ + +
+ +
+
+ + +
+ cloud_upload +
{{attachment.name | filename:12}}
+
Upload pending...
+
+ +
+ +
+
+ + +
+ attach_file +
{{attachment.name | filename:12}}
+ + +
+
\ No newline at end of file diff --git a/web-app/admin/src/app/observation/attachment/attachment.component.scss b/web-app/admin/src/app/observation/attachment/attachment.component.scss new file mode 100644 index 000000000..e9ef3e83a --- /dev/null +++ b/web-app/admin/src/app/observation/attachment/attachment.component.scss @@ -0,0 +1,61 @@ +.media { + position: absolute; + top: 0; + bottom: 0; + left: 0; + right: 0; +} + +.media-chip { + position: relative; + float: right; + margin-right: 16px; + margin-top: 16px; +} + +.media-unknown { + display: flex; + flex-direction: column; + justify-content: center; + align-items: center; + color: #eee; + background-color: #555; +} + +.media__icon { + width: 75px; + height: 75px; + font-size: 75px; + margin-bottom: 8px; +} + +.media-delete__mask { + opacity: 0.5; +} + +.attachment__video:focus { + outline: none; +} + +.attachment__delete { + position: absolute; + bottom: 16px; + right: 16px; +} + +.media__crop { + object-fit: cover; + position: absolute; + top: 0; + bottom: 0; + right: 0; + left: 0; + width: 100%; + height: 100%; +} + +.media__link { + position: absolute; + width: 100%; + height: 100%; +} \ No newline at end of file diff --git a/web-app/admin/src/app/observation/attachment/attachment.component.spec.ts b/web-app/admin/src/app/observation/attachment/attachment.component.spec.ts new file mode 100644 index 000000000..3b6e79bc3 --- /dev/null +++ b/web-app/admin/src/app/observation/attachment/attachment.component.spec.ts @@ -0,0 +1,27 @@ +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; + +import { AttachmentComponent } from './attachment.component'; + +/* TODO tests MUST contain at least 1 test +describe('AttachmentComponent', () => { + let component: AttachmentComponent; + let fixture: ComponentFixture; + + beforeEach(waitForAsync(() => { + TestBed.configureTestingModule({ + declarations: [ AttachmentComponent ] + }) + .compileComponents(); + })); + + beforeEach(() => { + fixture = TestBed.createComponent(AttachmentComponent); + component = fixture.componentInstance; + fixture.detectChanges(); + }); + + // it('should create', () => { + // expect(component).toBeTruthy(); + // }); +}); +*/ diff --git a/web-app/admin/src/app/observation/attachment/attachment.component.ts b/web-app/admin/src/app/observation/attachment/attachment.component.ts new file mode 100644 index 000000000..9b8397c4e --- /dev/null +++ b/web-app/admin/src/app/observation/attachment/attachment.component.ts @@ -0,0 +1,55 @@ +import { Component, EventEmitter, Inject, Input, OnInit, Output } from '@angular/core'; +import { LocalStorageService, UserService } from '../../../app/upgrade/ajs-upgraded-providers'; +import { AttachmentAction } from '../observation-edit/observation-edit-attachment/observation-edit-attachment-action'; + +@Component({ + selector: 'observation-attachment', + templateUrl: './attachment.component.html', + styleUrls: ['./attachment.component.scss'] +}) +export class AttachmentComponent implements OnInit { + @Input() attachment: any + @Input() clickable: boolean + @Input() edit: boolean + @Input() label: string | boolean + + @Output() delete = new EventEmitter() + + canEdit: boolean + token: string + + mimeTypes = { + 'png': 'image', + 'jpg': 'image', + 'jpeg': 'image', + 'mp4': 'video', + 'mov': 'video' + } + + actions: typeof AttachmentAction = AttachmentAction + + constructor( + @Inject(UserService) private userService: any, + @Inject(LocalStorageService) localStorageService: any) { + this.token = localStorageService.getToken() + } + + ngOnInit(): void { + this.canEdit = this.userService.amAdmin && this.edit + } + + deleteAttachment(): void { + this.delete.emit() + } + + contentType(): string { + if (this.attachment.contentType) { + const types = this.attachment.contentType.split('/') + return types.length ? types[0] : '' + } else { + const extension = this.attachment.name.substr(this.attachment.name.lastIndexOf('.') + 1) + const mimeType = this.mimeTypes[extension] + return mimeType ? mimeType : '' + } + } +} diff --git a/web-app/admin/src/app/observation/attachment/attachment.service.spec.ts b/web-app/admin/src/app/observation/attachment/attachment.service.spec.ts new file mode 100644 index 000000000..a583e1973 --- /dev/null +++ b/web-app/admin/src/app/observation/attachment/attachment.service.spec.ts @@ -0,0 +1,19 @@ +import { HttpClientTestingModule } from '@angular/common/http/testing'; +import { TestBed } from '@angular/core/testing'; + +import { AttachmentService } from './attachment.service'; + +describe('AttachmentService', () => { + beforeEach(() => TestBed.configureTestingModule({})); + + beforeEach(() => { + TestBed.configureTestingModule({ + imports: [HttpClientTestingModule] + }); + }); + + it('should be created', () => { + const service: AttachmentService = TestBed.inject(AttachmentService); + expect(service).toBeTruthy(); + }); +}); diff --git a/web-app/admin/src/app/observation/attachment/attachment.service.ts b/web-app/admin/src/app/observation/attachment/attachment.service.ts new file mode 100644 index 000000000..2c09bbb7f --- /dev/null +++ b/web-app/admin/src/app/observation/attachment/attachment.service.ts @@ -0,0 +1,56 @@ +import { HttpClient, HttpErrorResponse, HttpEvent, HttpEventType, HttpResponse } from '@angular/common/http'; +import { Injectable } from '@angular/core'; +import { Observable, Subject } from 'rxjs'; +import { share } from 'rxjs/operators'; +import { FileUpload } from './attachment-upload/attachment-upload.component'; + +export enum AttachmentUploadStatus { + COMPLETE, + ERROR +} + +export interface AttachmentUploadEvent { + upload: FileUpload + status: AttachmentUploadStatus + response?: any + observation?: any +} + +@Injectable({ + providedIn: 'root' +}) +export class AttachmentService { + private uploadSource = new Subject() + + upload$ = this.uploadSource.asObservable() + + constructor(private httpClient: HttpClient) { } + + upload(upload: FileUpload, observationUrl: string): Observable> { + const formData = new FormData(); + formData.append('attachment', upload.file); + + const url = `${observationUrl}/attachments/${upload.attachmentId}` + const observable = this.httpClient.put(url, formData, { observe: 'events', reportProgress: true }).pipe(share()) + + observable.subscribe((response: HttpEvent>) => { + if (response.type === HttpEventType.Response) { + if (response.status === 200) { + this.uploadSource.next({ + upload: upload, + response: response.body, + status: AttachmentUploadStatus.COMPLETE + }) + } + } + }, (error: HttpErrorResponse) => { + this.uploadSource.next({ + upload: upload, + response: error, + status: AttachmentUploadStatus.ERROR + }) + }) + + return observable + } +} diff --git a/web-app/admin/src/app/observation/observation-edit/observation-edit-attachment/observation-edit-attachment-action.ts b/web-app/admin/src/app/observation/observation-edit/observation-edit-attachment/observation-edit-attachment-action.ts new file mode 100644 index 000000000..33c69877c --- /dev/null +++ b/web-app/admin/src/app/observation/observation-edit/observation-edit-attachment/observation-edit-attachment-action.ts @@ -0,0 +1,4 @@ +export enum AttachmentAction { + ADD = 'add', + DELETE = 'delete' +} \ No newline at end of file diff --git a/web-app/admin/src/app/observation/observation-edit/observation-edit-attachment/observation-edit-attachment.component.html b/web-app/admin/src/app/observation/observation-edit/observation-edit-attachment/observation-edit-attachment.component.html new file mode 100644 index 000000000..ee1ea0cc0 --- /dev/null +++ b/web-app/admin/src/app/observation/observation-edit/observation-edit-attachment/observation-edit-attachment.component.html @@ -0,0 +1,28 @@ +
+
{{definition.title}} {{definition.min > 0 ? '*' : ''}}
+ + + + + + + + + + +
+ + +
+ +
+
+ + +
+ insert_drive_file +
No Attachments
+
+
\ No newline at end of file diff --git a/web-app/admin/src/app/observation/observation-edit/observation-edit-attachment/observation-edit-attachment.component.scss b/web-app/admin/src/app/observation/observation-edit/observation-edit-attachment/observation-edit-attachment.component.scss new file mode 100644 index 000000000..4dcb03691 --- /dev/null +++ b/web-app/admin/src/app/observation/observation-edit/observation-edit-attachment/observation-edit-attachment.component.scss @@ -0,0 +1,64 @@ +.attachment-field { + border-radius: 4px 4px 0 0; + background-color: rgb(245, 245, 245); + margin-bottom: 16px; +} + +.attachment-field__underline { + width: 100%; + pointer-events: none; + transform: scaleY(1.0001); + bottom: 1.34375em; + height: 1px; + background-color: rgba(0, 0, 0, 0.4); +} + +.attachment-field__label { + font-size: 12px; + font-weight: 400; + line-height: 1.125; + padding: 12px 16px 8px 16px; + font-family: Roboto, "Helvetica Neue", sans-serif; + color: rgba(0, 0, 0, 0.6) +} + +.no-attachments { + display: flex; + flex-direction: column; + align-items: center; + justify-content: center; + height: 194px; + background-color: #F5F5F5 +} + +.no-attachments__icon { + font-size: 60px; + width: 60px; + height: 60px; + margin-bottom: 8px; + color: rgba(0, 0, 0, .4); +} + +.no-attachments__text { + font-size: 24px; + font-weight: 500; + color: rgba(0, 0, 0, .4) +} + +.edit-attachments__grid { +} + +// Need this to override bootstrap, can be removed when bootstrap is removed +input[type="file"] { + display: none; +} + +.attachment-actions { + display: flex; + flex-direction: column; + align-items: flex-end; +} + +.add__button { + margin: 8px; +} \ No newline at end of file diff --git a/web-app/admin/src/app/observation/observation-edit/observation-edit-attachment/observation-edit-attachment.component.spec.ts b/web-app/admin/src/app/observation/observation-edit/observation-edit-attachment/observation-edit-attachment.component.spec.ts new file mode 100644 index 000000000..0be325722 --- /dev/null +++ b/web-app/admin/src/app/observation/observation-edit/observation-edit-attachment/observation-edit-attachment.component.spec.ts @@ -0,0 +1,44 @@ +import { Component, ViewChild } from '@angular/core'; +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; +import { UntypedFormControl, UntypedFormGroup } from '@angular/forms'; + +import { ObservationEditAttachmentComponent } from './observation-edit-attachment.component'; + +@Component({ + selector: `host-component`, + template: `` +}) +class TestHostComponent { + attachments = [] + formGroup = new UntypedFormGroup({ + attachment: new UntypedFormControl([]) + }); + definition = { + name: 'attachment' + } + @ViewChild(ObservationEditAttachmentComponent) component: ObservationEditAttachmentComponent +} + +describe('ObservationEditAttachmentComponent', () => { + let component: ObservationEditAttachmentComponent + let hostComponent: TestHostComponent + let fixture: ComponentFixture + + beforeEach(waitForAsync(() => { + TestBed.configureTestingModule({ + declarations: [ObservationEditAttachmentComponent, TestHostComponent] + }) + .compileComponents(); + })); + + beforeEach(() => { + fixture = TestBed.createComponent(TestHostComponent) + hostComponent = fixture.componentInstance + fixture.detectChanges(); + component = hostComponent.component + }) + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/web-app/admin/src/app/observation/observation-edit/observation-edit-attachment/observation-edit-attachment.component.ts b/web-app/admin/src/app/observation/observation-edit/observation-edit-attachment/observation-edit-attachment.component.ts new file mode 100644 index 000000000..acc457253 --- /dev/null +++ b/web-app/admin/src/app/observation/observation-edit/observation-edit-attachment/observation-edit-attachment.component.ts @@ -0,0 +1,83 @@ +import { ChangeDetectorRef, Component, Input, OnInit } from '@angular/core'; +import { UntypedFormControl, UntypedFormGroup } from '@angular/forms'; +import { AttachmentAction } from './observation-edit-attachment-action'; + +interface AttachmentField { + title: string, + name: string, + value: any[], + min: number, + max: number +} + +@Component({ + selector: 'observation-edit-attachment', + templateUrl: './observation-edit-attachment.component.html', + styleUrls: ['./observation-edit-attachment.component.scss'] +}) +export class ObservationEditAttachmentComponent implements OnInit { + @Input() formGroup: UntypedFormGroup + @Input() definition: AttachmentField + @Input() url: string + @Input() attachments: any[] + + control: UntypedFormControl + uploadId = 0 + uploadAttachments = false + + constructor(private changeDetector: ChangeDetectorRef) { } + + ngOnInit(): void { + this.control = this.formGroup.get(this.definition.name) as UntypedFormControl + } + + trackByAttachment(index: number, attachment: any): any { + return attachment.id + } + + allAttachments(): any[] { + const observationFormId = this.formGroup.get('id')?.value + const attachments = (this.attachments || []).filter(attachment => { + return attachment.url && + attachment.observationFormId === observationFormId && + attachment.fieldName === this.definition.name + }); + + return this.control.value ? attachments.concat(this.control.value) : attachments + } + + onAttachmentFile(event): void { + const attachments = this.control.value || [] + const files = Array.from(event.target.files) + files.forEach((file: File) => { + const id = this.uploadId++; + attachments.push({ + id: id, + formId: this.formGroup.get('formId').value, + name: file.name, + size: file.size, + contentType: file.type, + action: AttachmentAction.ADD, + file: file + }) + }) + + this.control.setValue(attachments) + + this.changeDetector.detectChanges() + } + + deleteAttachment(attachmentToDelete): void { + this.attachments = this.attachments.filter(attachment => attachment.id !== attachmentToDelete.id) + attachmentToDelete.action = AttachmentAction.DELETE + + const value = this.control.value || [] + value.push(attachmentToDelete) + this.control.setValue(value) + } + + removeAttachment($event): void { + const attachments = this.control.value || [] + this.control.setValue(attachments.filter(attachment => attachment.id !== $event.id)) + } +} \ No newline at end of file diff --git a/web-app/admin/src/app/observation/observation-edit/observation-edit-checkbox/observation-edit-checkbox.component.html b/web-app/admin/src/app/observation/observation-edit/observation-edit-checkbox/observation-edit-checkbox.component.html new file mode 100644 index 000000000..c46de1240 --- /dev/null +++ b/web-app/admin/src/app/observation/observation-edit/observation-edit-checkbox/observation-edit-checkbox.component.html @@ -0,0 +1,6 @@ +
+ {{definition.title + (definition.required ? ' *' : '')}} + + {{definition.title}} is required + +
diff --git a/web-app/admin/src/app/observation/observation-edit/observation-edit-checkbox/observation-edit-checkbox.component.scss b/web-app/admin/src/app/observation/observation-edit/observation-edit-checkbox/observation-edit-checkbox.component.scss new file mode 100644 index 000000000..bc84c1cbe --- /dev/null +++ b/web-app/admin/src/app/observation/observation-edit/observation-edit-checkbox/observation-edit-checkbox.component.scss @@ -0,0 +1,16 @@ +// Undo bootstrap label style, can remove when bootstrap is gone +::ng-deep label { + font-weight: unset; + margin-bottom: unset; +} + +.mat-error { + font-size: 75%; + margin-top: 8px; + margin-left: 24px; + height: 14px; +} + +.checkbox-content { + margin-bottom: 16px; +} \ No newline at end of file diff --git a/web-app/admin/src/app/observation/observation-edit/observation-edit-checkbox/observation-edit-checkbox.component.spec.ts b/web-app/admin/src/app/observation/observation-edit/observation-edit-checkbox/observation-edit-checkbox.component.spec.ts new file mode 100644 index 000000000..f5493e717 --- /dev/null +++ b/web-app/admin/src/app/observation/observation-edit/observation-edit-checkbox/observation-edit-checkbox.component.spec.ts @@ -0,0 +1,117 @@ +import { Component, ViewChild } from '@angular/core' +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing' +import { UntypedFormControl, UntypedFormGroup, FormsModule, ReactiveFormsModule, Validators } from '@angular/forms' +import { MatCheckbox, MatCheckboxModule } from '@angular/material/checkbox'; +import { MatError, MatFormFieldModule } from '@angular/material/form-field'; +import { By } from '@angular/platform-browser' +import { HarnessLoader } from '@angular/cdk/testing'; +import { TestbedHarnessEnvironment } from '@angular/cdk/testing/testbed'; +import { MatCheckboxHarness } from '@angular/material/checkbox/testing'; +import { ObservationEditCheckboxComponent } from './observation-edit-checkbox.component' + +@Component({ + selector: `host-component`, + template: `` +}) +class TestHostComponent { + formGroup = new UntypedFormGroup({ + checkbox: new UntypedFormControl(true, Validators.required) + }); + definition = { + name: 'checkbox', + title: 'Checkbox Field', + required: true + } + + @ViewChild(ObservationEditCheckboxComponent) component: ObservationEditCheckboxComponent +} + +let loader: HarnessLoader; + +describe('ObservationEditCheckboxComponent', () => { + let component: ObservationEditCheckboxComponent + let hostComponent: TestHostComponent + let fixture: ComponentFixture + + beforeEach(waitForAsync(() => { + TestBed.configureTestingModule({ + imports: [FormsModule, ReactiveFormsModule, MatFormFieldModule, MatCheckboxModule ], + declarations: [ObservationEditCheckboxComponent, TestHostComponent ] + }) + .compileComponents() + })) + + beforeEach(() => { + fixture = TestBed.createComponent(TestHostComponent) + loader = TestbedHarnessEnvironment.loader(fixture); + hostComponent = fixture.componentInstance + fixture.detectChanges(); + component = hostComponent.component + }) + + it('should create', () => { + expect(component).toBeTruthy(); + }) + + it('should not indicate required', () => { + component.definition.required = false + fixture.detectChanges() + const checkbox = fixture.nativeElement.querySelector('mat-checkbox') + const label = checkbox.querySelector('.mat-checkbox-label') + expect(label.textContent).not.toContain('*') + }) + + it('should indicate required', () => { + component.definition.required = true + fixture.detectChanges() + const checkbox = fixture.nativeElement.querySelector('mat-checkbox') + const label = checkbox.querySelector('.mat-checkbox-label') + expect(label.textContent).toContain('*') + }) + + it('should not be checked', (done) => { + component.definition.value = false + fixture.detectChanges() + + fixture.whenStable().then(() => { + const checkbox = fixture.debugElement.query(By.directive(MatCheckbox)).componentInstance + expect(checkbox.checked).toBeFalsy + done(); + }); + }) + + it('should be checked', (done) => { + component.definition.value = true + fixture.detectChanges() + + fixture.whenStable().then(() => { + const checkbox = fixture.debugElement.query(By.directive(MatCheckbox)).componentInstance + expect(checkbox.checked).toBeTruthy + done(); + }); + }) + + it('should show error on invalid and touched', async () => { + const checkboxes = await loader.getAllHarnesses(MatCheckboxHarness); + component.definition.value = true + component.definition.required = true + checkboxes[0].toggle() + + fixture.detectChanges() + await fixture.whenStable() + + const error = fixture.debugElement.query(By.directive(MatError)).query(By.css('span')) + expect(error.nativeElement.attributes.getNamedItem('hidden')).toBeTruthy() + }) + + it('should not show error on invalid if not touched', async () => { + component.definition.value = false + component.definition.required = true + + fixture.detectChanges() + await fixture.whenStable() + + const error = fixture.debugElement.query(By.directive(MatError)).query(By.css('span')) + expect(error.nativeElement.attributes.getNamedItem('hidden')).toBeTruthy() + }) +}); diff --git a/web-app/admin/src/app/observation/observation-edit/observation-edit-checkbox/observation-edit-checkbox.component.ts b/web-app/admin/src/app/observation/observation-edit/observation-edit-checkbox/observation-edit-checkbox.component.ts new file mode 100644 index 000000000..7bf1aa112 --- /dev/null +++ b/web-app/admin/src/app/observation/observation-edit/observation-edit-checkbox/observation-edit-checkbox.component.ts @@ -0,0 +1,31 @@ +import { Component, Input, OnInit } from '@angular/core'; +import { UntypedFormControl, UntypedFormGroup } from '@angular/forms'; +import { MatCheckboxChange } from '@angular/material/checkbox'; + +interface CheckboxField { + title: string, + name: string, + value: boolean, + required: boolean +} + +@Component({ + selector: 'observation-edit-checkbox', + templateUrl: './observation-edit-checkbox.component.html', + styleUrls: ['./observation-edit-checkbox.component.scss'] +}) +export class ObservationEditCheckboxComponent implements OnInit { + @Input() formGroup: UntypedFormGroup + @Input() definition: CheckboxField + + control: UntypedFormControl + + ngOnInit(): void { + this.control = this.formGroup.get(this.definition.name) as UntypedFormControl + } + + checked(event: MatCheckboxChange): void { + this.control.markAsTouched() + this.control.setValue(event.checked ? true : null) + } +} diff --git a/web-app/admin/src/app/observation/observation-edit/observation-edit-date/observation-edit-date.component.html b/web-app/admin/src/app/observation/observation-edit/observation-edit-date/observation-edit-date.component.html new file mode 100644 index 000000000..3cc481294 --- /dev/null +++ b/web-app/admin/src/app/observation/observation-edit/observation-edit-date/observation-edit-date.component.html @@ -0,0 +1,22 @@ +
+
+ + {{definition.title}} Date + + + + Date is required + Invalid date + +
+ +
+ + {{definition.title}} Time {{timeZone === 'gmt' ? '(GMT)' : '(Local)'}} + + + + Invalid time + +
+
diff --git a/web-app/admin/src/app/observation/observation-edit/observation-edit-date/observation-edit-date.component.scss b/web-app/admin/src/app/observation/observation-edit/observation-edit-date/observation-edit-date.component.scss new file mode 100644 index 000000000..4a8367dfa --- /dev/null +++ b/web-app/admin/src/app/observation/observation-edit/observation-edit-date/observation-edit-date.component.scss @@ -0,0 +1,23 @@ +.datetime { + display: flex; + margin: 0 -8px; + align-items: flex-start; +} + +.date, .time { + flex: 1 1 0; + padding: 0 8px; +} + +:host ::ng-deep .mat-form-field-infix { + width: auto; +} + +:host ::ng-deep mat-icon { + color: rgba(0, 0, 0, 0.6); +} + +mat-form-field { + width: 100%; + margin-bottom: 16px; +} \ No newline at end of file diff --git a/web-app/admin/src/app/observation/observation-edit/observation-edit-date/observation-edit-date.component.spec.ts b/web-app/admin/src/app/observation/observation-edit/observation-edit-date/observation-edit-date.component.spec.ts new file mode 100644 index 000000000..bb2800a0c --- /dev/null +++ b/web-app/admin/src/app/observation/observation-edit/observation-edit-date/observation-edit-date.component.spec.ts @@ -0,0 +1,27 @@ +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; + +import { ObservationEditDateComponent } from './observation-edit-date.component'; + +/* TODO tests MUST contain at least 1 test +describe('ObservationEditDateComponent', () => { + let component: ObservationEditDateComponent; + let fixture: ComponentFixture; + + beforeEach(waitForAsync(() => { + TestBed.configureTestingModule({ + declarations: [ObservationEditDateComponent ] + }) + .compileComponents(); + })); + + beforeEach(() => { + fixture = TestBed.createComponent(ObservationEditDateComponent); + component = fixture.componentInstance; + fixture.detectChanges(); + }); + + // it('should create', () => { + // expect(component).toBeTruthy(); + // }); +}); +*/ diff --git a/web-app/admin/src/app/observation/observation-edit/observation-edit-date/observation-edit-date.component.ts b/web-app/admin/src/app/observation/observation-edit/observation-edit-date/observation-edit-date.component.ts new file mode 100644 index 000000000..4ee3760d6 --- /dev/null +++ b/web-app/admin/src/app/observation/observation-edit/observation-edit-date/observation-edit-date.component.ts @@ -0,0 +1,76 @@ +import { Component, Inject, Input, OnChanges, SimpleChanges, ViewChild } from '@angular/core' +import { UntypedFormGroup, NgModel } from '@angular/forms' +import { LocalStorageService } from '../../../../app/upgrade/ajs-upgraded-providers' +import * as moment from 'moment' + +interface DateField { + title: string, + name: string, + value: Date, + required: boolean +} + +@Component({ + selector: 'observation-edit-date', + templateUrl: './observation-edit-date.component.html', + styleUrls: ['./observation-edit-date.component.scss'] +}) +export class ObservationEditDateComponent implements OnChanges { + @Input() formGroup: UntypedFormGroup + @Input() definition: any + + @ViewChild('dateModel') dateModel: NgModel + @ViewChild('timeModel') timeModel: NgModel + + date: moment.Moment + time: moment.Moment + timeZone: string + + constructor(@Inject(LocalStorageService) localStorageService: any) { + this.timeZone = localStorageService.getTimeZoneEdit(); + } + + ngOnChanges(changes: SimpleChanges): void { + if (changes.formGroup && changes.formGroup.currentValue) { + const timestamp = this.formGroup.get(this.definition.name).value + this.date = moment(timestamp) + this.time = moment(timestamp) + } + } + + onDate(): void { + if (!this.date) { + this.time = null; + return + } + + if (!this.dateModel.invalid) { + this.setValue() + } + } + + onTime(): void { + if (!this.timeModel.invalid) { + this.setValue() + } + } + + toggleTimeZone(): void { + this.timeZone = this.timeZone === 'gmt' ? 'local' : 'gmt' + } + + private setValue(): void { + const date = this.date.set({ + hour: this.time ? this.time.get('hour') : 0, + minute: this.time ? this.time.get('minute') : 0, + second: this.time ? this.time.get('second') : 0, + }) + + if (this.timeZone === 'gmt') { + date.add(date.utcOffset(), 'minutes') + } + + this.formGroup.get(this.definition.name).setValue(date.toDate()) + } + +} diff --git a/web-app/admin/src/app/observation/observation-edit/observation-edit-discard/observation-edit-discard.component.html b/web-app/admin/src/app/observation/observation-edit/observation-edit-discard/observation-edit-discard.component.html new file mode 100644 index 000000000..74ff75842 --- /dev/null +++ b/web-app/admin/src/app/observation/observation-edit/observation-edit-discard/observation-edit-discard.component.html @@ -0,0 +1,7 @@ +
+

Discard Observation Changes?

+
+
+ + +
\ No newline at end of file diff --git a/web-app/admin/src/app/observation/observation-edit/observation-edit-discard/observation-edit-discard.component.scss b/web-app/admin/src/app/observation/observation-edit/observation-edit-discard/observation-edit-discard.component.scss new file mode 100644 index 000000000..4d71958c9 --- /dev/null +++ b/web-app/admin/src/app/observation/observation-edit/observation-edit-discard/observation-edit-discard.component.scss @@ -0,0 +1,8 @@ +.dialog-message { + color: rgba(0, 0, 0, .6); +} + +.dialog-actions { + display: flex; + justify-content: flex-end; +} \ No newline at end of file diff --git a/web-app/admin/src/app/observation/observation-edit/observation-edit-discard/observation-edit-discard.component.spec.ts b/web-app/admin/src/app/observation/observation-edit/observation-edit-discard/observation-edit-discard.component.spec.ts new file mode 100644 index 000000000..aad247725 --- /dev/null +++ b/web-app/admin/src/app/observation/observation-edit/observation-edit-discard/observation-edit-discard.component.spec.ts @@ -0,0 +1,32 @@ +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; +import { MatDialogModule, MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog'; + +import { ObservationEditDiscardComponent } from './observation-edit-discard.component'; + +describe('ObservationEditDiscardComponent', () => { + let component: ObservationEditDiscardComponent; + let fixture: ComponentFixture; + + beforeEach(waitForAsync(() => { + TestBed.configureTestingModule({ + imports: [MatDialogModule], + declarations: [ObservationEditDiscardComponent], + providers: [{ + provide: MatDialogRef, useValue: {} + }, { + provide: MAT_DIALOG_DATA, useValue: {} + }] + }) + .compileComponents(); + })); + + beforeEach(() => { + fixture = TestBed.createComponent(ObservationEditDiscardComponent); + component = fixture.componentInstance; + fixture.detectChanges(); + }); + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/web-app/admin/src/app/observation/observation-edit/observation-edit-discard/observation-edit-discard.component.ts b/web-app/admin/src/app/observation/observation-edit/observation-edit-discard/observation-edit-discard.component.ts new file mode 100644 index 000000000..c79616316 --- /dev/null +++ b/web-app/admin/src/app/observation/observation-edit/observation-edit-discard/observation-edit-discard.component.ts @@ -0,0 +1,22 @@ +import { Component } from '@angular/core'; +import { MatDialogRef } from '@angular/material/dialog'; + +@Component({ + selector: 'observation-edit-discard', + templateUrl: './observation-edit-discard.component.html', + styleUrls: ['./observation-edit-discard.component.scss'] +}) +export class ObservationEditDiscardComponent { + + constructor(public dialogRef: MatDialogRef) { + } + + close(): void { + this.dialogRef.close(); + } + + discard(): void { + this.dialogRef.close('discard'); + } + +} diff --git a/web-app/admin/src/app/observation/observation-edit/observation-edit-email/observation-edit-email.component.html b/web-app/admin/src/app/observation/observation-edit/observation-edit-email/observation-edit-email.component.html new file mode 100644 index 000000000..4a0a7ee62 --- /dev/null +++ b/web-app/admin/src/app/observation/observation-edit/observation-edit-email/observation-edit-email.component.html @@ -0,0 +1,8 @@ +
+ + {{definition.title}} + + You must enter a value + Not a valid email + +
\ No newline at end of file diff --git a/web-app/admin/src/app/observation/observation-edit/observation-edit-email/observation-edit-email.component.scss b/web-app/admin/src/app/observation/observation-edit/observation-edit-email/observation-edit-email.component.scss new file mode 100644 index 000000000..f7b82f8b9 --- /dev/null +++ b/web-app/admin/src/app/observation/observation-edit/observation-edit-email/observation-edit-email.component.scss @@ -0,0 +1,4 @@ +mat-form-field { + width: 100%; + margin-bottom: 16px; +} \ No newline at end of file diff --git a/web-app/admin/src/app/observation/observation-edit/observation-edit-email/observation-edit-email.component.spec.ts b/web-app/admin/src/app/observation/observation-edit/observation-edit-email/observation-edit-email.component.spec.ts new file mode 100644 index 000000000..bd9731a4e --- /dev/null +++ b/web-app/admin/src/app/observation/observation-edit/observation-edit-email/observation-edit-email.component.spec.ts @@ -0,0 +1,111 @@ +import { ChangeDetectionStrategy, Component, ViewChild } from '@angular/core'; +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; +import { UntypedFormControl, UntypedFormGroup, FormsModule, ReactiveFormsModule, Validators } from '@angular/forms'; +import { MatError, MatFormFieldModule } from '@angular/material/form-field'; +import { MatInputModule } from '@angular/material/input'; +import { By } from '@angular/platform-browser'; +import { NoopAnimationsModule } from '@angular/platform-browser/animations'; + +import { ObservationEditEmailComponent } from './observation-edit-email.component'; + +@Component({ + selector: `host-component`, + template: ``, + changeDetection: ChangeDetectionStrategy.OnPush +}) +class TestHostComponent { + formGroup = new UntypedFormGroup({ + text: new UntypedFormControl('') + }) + + definition: any = { + name: 'text', + title: 'Email Field' + } + + @ViewChild(ObservationEditEmailComponent) component: ObservationEditEmailComponent +} + +describe('ObservationEditEmailComponent', () => { + let component: ObservationEditEmailComponent + let hostComponent: TestHostComponent + let fixture: ComponentFixture + + beforeEach(waitForAsync(() => { + TestBed.configureTestingModule({ + imports: [FormsModule, ReactiveFormsModule, MatFormFieldModule, MatInputModule, NoopAnimationsModule], + declarations: [ObservationEditEmailComponent, TestHostComponent] + }) + .compileComponents() + })) + + beforeEach(() => { + fixture = TestBed.createComponent(TestHostComponent) + hostComponent = fixture.componentInstance + fixture.detectChanges(); + component = hostComponent.component + }) + + it('should create', () => { + expect(component).toBeTruthy() + }) + + it('should not indicate required', async () => { + component.definition.required = false + + const control = component.formGroup.get('text') + control.clearValidators() + control.updateValueAndValidity() + + fixture.detectChanges() + await fixture.whenStable() + + expect(control.valid).toBe(true) + const error = fixture.debugElement.query(By.directive(MatError)) + expect(error).toBeNull() + }) + + it('should indicate required', async () => { + component.definition.required = true + + const control = component.formGroup.get('text') + control.setValidators(Validators.required) + control.updateValueAndValidity() + + fixture.detectChanges() + await fixture.whenStable() + + expect(control.valid).toBe(false) + }) + + it('should show error on invalid and touched', async () => { + component.definition.required = true + + const control = component.formGroup.get('text') + control.setValidators(Validators.required) + control.updateValueAndValidity() + control.markAsTouched() + + fixture.detectChanges() + await fixture.whenStable() + + expect(control.valid).toBe(false) + const error = fixture.debugElement.query(By.directive(MatError)) + expect(error.nativeElement.innerText).toBe('You must enter a value') + }) + + it('should not show error on invalid if not touched', async () => { + component.definition.required = true + + const control = component.formGroup.get('text') + control.setValidators(Validators.required) + control.updateValueAndValidity() + + fixture.detectChanges() + await fixture.whenStable() + + expect(control.valid).toBe(false) + const error = fixture.debugElement.query(By.directive(MatError)) + expect(error).toBeNull() + }) +}); diff --git a/web-app/admin/src/app/observation/observation-edit/observation-edit-email/observation-edit-email.component.ts b/web-app/admin/src/app/observation/observation-edit/observation-edit-email/observation-edit-email.component.ts new file mode 100644 index 000000000..8ef85a52b --- /dev/null +++ b/web-app/admin/src/app/observation/observation-edit/observation-edit-email/observation-edit-email.component.ts @@ -0,0 +1,19 @@ +import { Component, Input } from '@angular/core'; +import { UntypedFormGroup } from '@angular/forms'; + +interface EmailField { + title: string, + name: string, + value: string, + required: boolean +} + +@Component({ + selector: 'observation-edit-email', + templateUrl: './observation-edit-email.component.html', + styleUrls: ['./observation-edit-email.component.scss'] +}) +export class ObservationEditEmailComponent { + @Input() formGroup: UntypedFormGroup + @Input() definition: EmailField +} diff --git a/web-app/admin/src/app/observation/observation-edit/observation-edit-form-picker.component.html b/web-app/admin/src/app/observation/observation-edit/observation-edit-form-picker.component.html new file mode 100644 index 000000000..ff0e43506 --- /dev/null +++ b/web-app/admin/src/app/observation/observation-edit/observation-edit-form-picker.component.html @@ -0,0 +1,17 @@ +
+
Add a Form To Your Observation
+
+ + + + + + description +
{{form.name}}
+
{{form.description}}
+
+
+ +
+ +
diff --git a/web-app/admin/src/app/observation/observation-edit/observation-edit-form-picker.component.scss b/web-app/admin/src/app/observation/observation-edit/observation-edit-form-picker.component.scss new file mode 100644 index 000000000..66b27c56b --- /dev/null +++ b/web-app/admin/src/app/observation/observation-edit/observation-edit-form-picker.component.scss @@ -0,0 +1,27 @@ +.form-picker-header { + display: flex; + align-items: center; + margin: 8px 0; + height: 50px; +} + +.form-picker-header__text { + font-family: Roboto, sans-serif; + font-size: 20px; + font-weight: 400; + color: rgba(0, 0, 0, .87); +} + +.form-picker-header__divider { + margin: 0 -16px; +} + +.form-picker-list { + background-color: white; +} + +.form-picker-actions { + display: flex; + justify-content: center; + padding: 8px 0; +} \ No newline at end of file diff --git a/web-app/admin/src/app/observation/observation-edit/observation-edit-form-picker.component.spec.ts b/web-app/admin/src/app/observation/observation-edit/observation-edit-form-picker.component.spec.ts new file mode 100644 index 000000000..f2437aac6 --- /dev/null +++ b/web-app/admin/src/app/observation/observation-edit/observation-edit-form-picker.component.spec.ts @@ -0,0 +1,49 @@ +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; +import { MatBottomSheetRef } from '@angular/material/bottom-sheet'; +import { EventService, FilterService } from '../../../app/upgrade/ajs-upgraded-providers'; + +import { ObservationEditFormPickerComponent } from './observation-edit-form-picker.component'; + +class MockFilterService { + getEvent(): any { + return {} + } +} + +class MockEventService { + getFormsForEvent(): any { + return [] + } +} + +describe('ObservationEditFormPickerComponent', () => { + let component: ObservationEditFormPickerComponent; + let fixture: ComponentFixture; + + beforeEach(waitForAsync(() => { + TestBed.configureTestingModule({ + declarations: [ ObservationEditFormPickerComponent ], + providers: [{ + provide: FilterService, + useClass: MockFilterService + },{ + provide: EventService, + useClass: MockEventService + },{ + provide: MatBottomSheetRef, + useValue: {} + }] + }) + .compileComponents(); + })); + + beforeEach(() => { + fixture = TestBed.createComponent(ObservationEditFormPickerComponent); + component = fixture.componentInstance; + fixture.detectChanges(); + }); + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/web-app/admin/src/app/observation/observation-edit/observation-edit-form-picker.component.ts b/web-app/admin/src/app/observation/observation-edit/observation-edit-form-picker.component.ts new file mode 100644 index 000000000..777e97740 --- /dev/null +++ b/web-app/admin/src/app/observation/observation-edit/observation-edit-form-picker.component.ts @@ -0,0 +1,29 @@ +import { Component, Inject } from '@angular/core'; +import { MatBottomSheetRef } from '@angular/material/bottom-sheet'; +import { EventService, FilterService } from '../../../app/upgrade/ajs-upgraded-providers'; + +@Component({ + selector: 'app-observation-edit-form-picker', + templateUrl: './observation-edit-form-picker.component.html', + styleUrls: ['./observation-edit-form-picker.component.scss'] +}) +export class ObservationEditFormPickerComponent { + forms: any[] + + constructor( + @Inject(FilterService) filterService: any, + @Inject(EventService) eventService: any, + private bottomSheetRef: MatBottomSheetRef) { + + const event = filterService.getEvent(); + this.forms = eventService.getFormsForEvent(event, { archived: false }); + } + + formPicked(form: any): void { + this.bottomSheetRef.dismiss(form) + } + + cancel(): void { + this.bottomSheetRef.dismiss() + } +} diff --git a/web-app/admin/src/app/observation/observation-edit/observation-edit-form.component.html b/web-app/admin/src/app/observation/observation-edit/observation-edit-form.component.html new file mode 100644 index 000000000..a126510e5 --- /dev/null +++ b/web-app/admin/src/app/observation/observation-edit/observation-edit-form.component.html @@ -0,0 +1,71 @@ + +
+
+
+ description +
{{definition.name}}
+
+
+ + + {{primaryFieldValue | geometry:5}} + + + {{primaryFieldValue}} + + +
+
+ + + {{secondaryFieldValue | geometry:5}} + + + {{secondaryFieldValue}} + + +
+
+ +
+ +
+ +
+
+
+ +
+
+
+ + + + + + + + + + + + + +
+
+ +
+ +
+ +
+
+
+
diff --git a/web-app/admin/src/app/observation/observation-edit/observation-edit-form.component.scss b/web-app/admin/src/app/observation/observation-edit/observation-edit-form.component.scss new file mode 100644 index 000000000..9447d009f --- /dev/null +++ b/web-app/admin/src/app/observation/observation-edit/observation-edit-form.component.scss @@ -0,0 +1,114 @@ +@import "variables.scss"; + +.form-header { + display: flex; + flex-direction: row; + align-items: flex-start; + margin-bottom: 24px; +} + +.form-header-summary { + display: flex; + flex-direction: column; + flex: 1 1 auto; + min-width: 0; +} + +.form-header-content { + display: flex; + flex-direction: row; + align-items: flex-start; + flex: 1 0 auto; +} + +.form-header-title { + display: flex; + flex-direction: row; + align-items: center; + flex: 1 0 auto; + margin-bottom: 8px; +} + +.form-header-title__icon { + width: 24px; + height: 24px; + font-size: 24px; + margin-right: 8px; +} + +.form-header-title__text { + font-family: Roboto, sans-serif; + -moz-osx-font-smoothing: grayscale; + -webkit-font-smoothing: antialiased; + font-size: 0.75rem; + line-height: 2rem; + font-weight: 500; + letter-spacing: 0.1666666667em; + text-decoration: none; + text-transform: uppercase; + color: rgba(0, 0, 0, .6); +} + +.form-header-summary__primary { + font-family: Roboto, sans-serif; + font-size: 20px; + font-weight: 500; + color: rgba(0, 0, 0, .87); + padding-bottom: 4px; + text-overflow: ellipsis; + overflow: hidden; + white-space: nowrap; +} + +.form-header-summary__secondary { + font-family: Roboto, sans-serif; + font-size: 16px; + font-weight: 400; + color: rgba(0, 0, 0, .6); + text-overflow: ellipsis; + overflow: hidden; + white-space: nowrap; +} + +.form-header-actions { + display: flex; + margin-top: -8px; +} + +.form-header-actions > * + * { + margin-left: 8px; +} + +.form-header-actions__drag { + margin-right: -14px; + margin-top: -6px; +} + +.cdk-drag-handle { + cursor: grab; +} + +.cdk-drag-handle:active { + cursor: grabbing; +} + +.cdk-drop-list-dragging { + cursor: grabbing; +} + +.form-header-actions__expand { + color:rgba(0, 0, 0, .6); +} + +.form-content { + margin-top: 24px; +} + +.form-actions { + display: flex; + justify-content: flex-end; +} + +.form-actions-content { + margin-top: 16px; +} \ No newline at end of file diff --git a/web-app/admin/src/app/observation/observation-edit/observation-edit-form.component.spec.ts b/web-app/admin/src/app/observation/observation-edit/observation-edit-form.component.spec.ts new file mode 100644 index 000000000..87181d4dd --- /dev/null +++ b/web-app/admin/src/app/observation/observation-edit/observation-edit-form.component.spec.ts @@ -0,0 +1,50 @@ +import { Component, ViewChild } from '@angular/core'; +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; +import { UntypedFormGroup } from '@angular/forms'; +import { NoopAnimationsModule } from '@angular/platform-browser/animations'; + +import { ObservationEditFormComponent } from './observation-edit-form.component'; + +@Component({ + selector: `host-component`, + template: `` +}) +class TestHostComponent { + + formGroup = new UntypedFormGroup({}) + definition = { + name: 'TestForm', + fields: [] + } + geometryStyle = {} + options = { + expand: false + } + + @ViewChild(ObservationEditFormComponent) component: ObservationEditFormComponent +} + +describe('ObservationEditFormComponent', () => { + let component: ObservationEditFormComponent + let hostComponent: TestHostComponent + let fixture: ComponentFixture + + beforeEach(waitForAsync(() => { + TestBed.configureTestingModule({ + imports: [NoopAnimationsModule], + declarations: [ ObservationEditFormComponent, TestHostComponent ] + }) + .compileComponents(); + })); + + beforeEach(() => { + fixture = TestBed.createComponent(TestHostComponent) + hostComponent = fixture.componentInstance + fixture.detectChanges(); + component = hostComponent.component + }) + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/web-app/admin/src/app/observation/observation-edit/observation-edit-form.component.ts b/web-app/admin/src/app/observation/observation-edit/observation-edit-form.component.ts new file mode 100644 index 000000000..724e036ec --- /dev/null +++ b/web-app/admin/src/app/observation/observation-edit/observation-edit-form.component.ts @@ -0,0 +1,92 @@ +import { animate, state, style, transition, trigger } from '@angular/animations' +import { Component, EventEmitter, Input, Output } from '@angular/core' +import { UntypedFormGroup } from '@angular/forms' + +@Component({ + selector: 'observation-edit-form', + templateUrl: './observation-edit-form.component.html', + styleUrls: ['./observation-edit-form.component.scss'], + animations: [ + trigger('expand', [ + transition(':enter', [ + style({ height: 0, opacity: 0 }), + animate('300ms', style({ height: '*', opacity: 1 })), + ]), + transition(':leave', [ + animate('300ms', style({ height: 0, opacity: 0 })) + ]) + ]), + trigger('rotate', [ + state('true', style({ transform: 'rotate(180deg)' })), + state('false', style({ transform: 'rotate(0)' })), + transition('* <=> *', animate('300ms ease-out')) + ]) + ] +}) +export class ObservationEditFormComponent { + @Input() formGroup: UntypedFormGroup + @Input() definition: any + @Input() geometryStyle: any + @Input() attachmentUrl: string + @Input() observation: any + @Input() deletable = true + @Input() options: { expand: boolean, deletable: boolean } + + @Output() remove = new EventEmitter() + @Output() featureEdit = new EventEmitter() + + fieldNames: string[] + fieldDefinitions: {} + primaryField: any = {} + primaryFieldValue: any + secondaryField: any = {} + secondaryFieldValue: any + + expand: boolean + + ngOnInit(): void { + this.expand = this.options.expand; + + this.fieldDefinitions = this.definition.fields.reduce((map, field) => { + map[field.name] = field + return map + }, {}) + + const controlNames = Object.keys(this.formGroup.controls) + this.fieldNames = this.definition.fields + .filter(field => !field.archived) + .filter(field => controlNames.includes(field.name)) + .sort((a, b) => a.id - b.id) + .map(field => field.name) + + this.updateView() + } + + nonArchivedFields(fields: any[]): any[] { + return fields.filter(field => !field.archived).sort((a: any, b: any) => a.id - b.id ); + } + + onGeometryEdit(event): void { + this.featureEdit.emit(event) + } + + removeForm(): void { + this.remove.emit(this.formGroup) + } + + private updateView(): void { + if (this.definition.primaryFeedField) { + this.primaryField = this.definition.fields.find(field => field.name === this.definition.primaryFeedField) + this.primaryFieldValue = this.getValue(this.definition.primaryFeedField) + } + + if (this.definition.secondaryFeedField) { + this.secondaryField = this.definition.fields.find(field => field.name === this.definition.secondaryFeedField) + this.secondaryFieldValue = this.getValue(this.definition.secondaryFeedField) + } + } + + private getValue(fieldName: string): any { + return this.formGroup.get(fieldName).value + } +} diff --git a/web-app/admin/src/app/observation/observation-edit/observation-edit-geometry/observation-edit-geometry-form.component.html b/web-app/admin/src/app/observation/observation-edit/observation-edit-geometry/observation-edit-geometry-form.component.html new file mode 100644 index 000000000..81d244d32 --- /dev/null +++ b/web-app/admin/src/app/observation/observation-edit/observation-edit-geometry/observation-edit-geometry-form.component.html @@ -0,0 +1,85 @@ +
+
+ GEOMETRY + + Point + Line + Polygon + None + +
+ +
+ MANUAL EDIT + + Lat/Lng + MGRS + DMS + +
+ +
+
+
+ + Latitude + + +
+
+ + Longitude + + +
+
+
+ +
+
+
+ + MGRS + + Invalid MGRS + +
+
+
+ +
+
+
+ + Latitude DMS + + Invalid DMS latitude + +
+
+ + Longitude DMS + + Invalid DMS longitude + +
+
+
+ +
+ + +
+
\ No newline at end of file diff --git a/web-app/admin/src/app/observation/observation-edit/observation-edit-geometry/observation-edit-geometry-form.component.scss b/web-app/admin/src/app/observation/observation-edit/observation-edit-geometry/observation-edit-geometry-form.component.scss new file mode 100644 index 000000000..fa7d0ce0e --- /dev/null +++ b/web-app/admin/src/app/observation/observation-edit/observation-edit-geometry/observation-edit-geometry-form.component.scss @@ -0,0 +1,39 @@ +.chip-type { + display: flex; + align-items: center; + margin-bottom: 16px; +} + +.chip-type__label { + margin-right: 16px; + font: 500 14px/28px Roboto, "Helvetica Neue", sans-serif; + color: rgba(0, 0, 0, 0.6); +} + +.coordinates { + display: flex; + margin: 0 -8px; +} + +.coordinate { + flex-grow: 1; + flex-basis: 0; + padding: 0 8px; +} + +mat-form-field { + width: 100%; +} + +::ng-deep .mat-form-field-infix { + width: auto; +} + +.edit-location__actions { + display: flex; + justify-content: flex-end; +} + +.edit-location__actions > button + button { + margin-left: 8px; +} \ No newline at end of file diff --git a/web-app/admin/src/app/observation/observation-edit/observation-edit-geometry/observation-edit-geometry-form.component.spec.ts b/web-app/admin/src/app/observation/observation-edit/observation-edit-geometry/observation-edit-geometry-form.component.spec.ts new file mode 100644 index 000000000..d2331fe57 --- /dev/null +++ b/web-app/admin/src/app/observation/observation-edit/observation-edit-geometry/observation-edit-geometry-form.component.spec.ts @@ -0,0 +1,27 @@ +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; + +import { ObservationEditGeometryFormComponent } from './observation-edit-geometry-form.component'; + +/* TODO tests MUST contain at least 1 test +describe('ObservationEditGeometryFormComponent', () => { + let component: ObservationEditGeometryFormComponent; + let fixture: ComponentFixture; + + beforeEach(waitForAsync(() => { + TestBed.configureTestingModule({ + declarations: [ObservationEditGeometryFormComponent ] + }) + .compileComponents(); + })); + + beforeEach(() => { + fixture = TestBed.createComponent(ObservationEditGeometryFormComponent); + component = fixture.componentInstance; + fixture.detectChanges(); + }); + + // it('should create', () => { + // expect(component).toBeTruthy(); + // }); +}); +*/ diff --git a/web-app/admin/src/app/observation/observation-edit/observation-edit-geometry/observation-edit-geometry-form.component.ts b/web-app/admin/src/app/observation/observation-edit/observation-edit-geometry/observation-edit-geometry-form.component.ts new file mode 100644 index 000000000..9b10274d9 --- /dev/null +++ b/web-app/admin/src/app/observation/observation-edit/observation-edit-geometry/observation-edit-geometry-form.component.ts @@ -0,0 +1,356 @@ +import { Component, Directive, EventEmitter, Inject, Input, OnChanges, OnInit, Output, SimpleChanges, ViewChild, ViewContainerRef } from '@angular/core' +import { AbstractControl, FormControl, FormGroup, NgModel, NG_VALIDATORS, ValidationErrors, Validator } from '@angular/forms' +import { MatSnackBar } from '@angular/material/snack-bar' +import mgrs from 'mgrs' +import { Dimension, DimensionKey, DMSCoordinate, DMSParseError } from '../../../../app/geometry/geometry-dms' +import * as DMS from '../../../../app/geometry/geometry-dms' +import { GeometryService, LocalStorageService, MapService } from '../../../../app/upgrade/ajs-upgraded-providers' +import { createMask } from '@ngneat/input-mask' + +@Directive({ + selector: '[mgrs][formControlName],[mgrs][formControl],[mgrs][ngModel]', + providers: [{ provide: NG_VALIDATORS, useExisting: MGRSValidatorDirective, multi: true }] +}) +export class MGRSValidatorDirective implements Validator { + + validate(control: AbstractControl): ValidationErrors | null { + let error: ValidationErrors | null + try { + mgrs.toPoint(control.value) + } catch(e) { + error = { + mgrs: { + value: control.value + } + }; + } + return error; + } +} + +@Directive({ + selector: '[dmsValidation][formControlName],[dmsValidation][formControl],[dmsValidation][ngModel]', + providers: [{ provide: NG_VALIDATORS, useExisting: DMSValidatorDirective, multi: true }] +}) +export class DMSValidatorDirective implements Validator { + + @Input() + dmsValidation: 'latitude' | 'longitude' + + validate(control: AbstractControl): ValidationErrors | null { + if (this.dmsValidation === 'latitude' && DMS.validateLatitude(control.value)) { + return null + } else if (this.dmsValidation === 'longitude' && DMS.validateLongitude(control.value)) { + return null + } + const error: ValidationErrors | null = { + dms: { + value: control.value + } + } + return error; + } +} + +type CoordinateSystemKey = 'wgs84' | 'mgrs' | 'dms' +type DMSFormValue = Partial<{ [DimensionKey.Latitude]: string, [DimensionKey.Longitude]: string }> + +@Component({ + selector: 'observation-edit-geometry-form', + templateUrl: './observation-edit-geometry-form.component.html', + styleUrls: ['./observation-edit-geometry-form.component.scss'], + providers: [ + { provide: NG_VALIDATORS, useExisting: MGRSValidatorDirective, multi: true }, + { provide: NG_VALIDATORS, useExisting: DMSValidatorDirective, multi: true } + ] +}) +export class ObservationEditGeometryFormComponent implements OnChanges, OnInit { + + @Input() feature: any + @Output() save = new EventEmitter() + @Output() cancel = new EventEmitter() + + @ViewChild('mgrsModel') mgrsModel: NgModel; + @ViewChild('snackbarContainer', { read: ViewContainerRef }) snackBarContainer: ViewContainerRef; + + selectedShapeType = 'Point' + coordinateSystem = 'wgs84' + coordinateEditSource: CoordinateSystemKey | null = null + selectedVertexIndex: number + featureEdit: any + latitude: number + longitude: number + mgrs: string + readonly DMSDimensionKey = DimensionKey + readonly dmsForm = new FormGroup({ + [DimensionKey.Latitude]: new FormControl(''), + [DimensionKey.Longitude]: new FormControl(''), + }) + readonly dmsLatMask = createMask({ + mask: `99° 99' 99" (N|S)`, + }) + readonly dmsLonMask = createMask({ + mask: `999° 99' 99" (E|W)`, + }) + + constructor( + @Inject(MapService) private mapService: any, + @Inject(GeometryService) private geometryService: any, + @Inject(LocalStorageService) private localStorageService: any, + private snackBar: MatSnackBar) + { + this.coordinateSystem = this.localStorageService.getCoordinateSystemEdit() + } + + ngOnInit(): void { + this.dmsForm.valueChanges.subscribe(dms => { + if (this.feature?.geometry?.coordinates) { + this.onDmsChange({ [DimensionKey.Latitude]: '', [DimensionKey.Longitude]: '', ...dms }) + } + }) + } + + ngOnChanges(changes: SimpleChanges): void { + if (this.feature) { + this.feature = { ...this.feature } + this.featureEdit = this.mapService.createFeature(this.feature, { + geometryChanged: geometry => { + this.geometryChanged(geometry) + }, + vertexClick: vertex => { + this.vertexClick(vertex) + } + }); + this.selectedVertexIndex = 0; + this.updateCoordinates() + } + if (this.feature?.geometry?.coordinates) { + this.dmsForm.enable() + } + else { + this.dmsForm.disable() + } + } + + geometryChanged(geometry): void { + this.feature.geometry = geometry; + this.updateCoordinates() + } + + vertexClick(vertex): void { + this.selectedVertexIndex = vertex.index; + this.updateCoordinates() + } + + onSave(): void { + if (this.feature.geometry.type) { + if (this.geometryService.featureHasIntersections(this.feature)) { + this.snackBar.open('Invalid geometry, polygons cannot intersect.', null, { + duration: 2000 + }) + return + } + this.featureEdit.save() + this.save.emit({ feature: this.feature }) + } else { + this.mapService.removeFeatureFromLayer({ id: this.feature.id }, 'observations') + this.featureEdit.cancel() + this.save.emit({}) + } + } + + onCancel(): void { + this.featureEdit.cancel() + this.cancel.emit() + } + + coordinateSystemChange(coordinateSystem: CoordinateSystemKey): void { + this.localStorageService.setCoordinateSystemEdit(coordinateSystem) + this.coordinateSystem = coordinateSystem + if (coordinateSystem === 'mgrs') { + this.mgrs = this.toMgrs(this.feature) + } + } + + toMgrs(feature): string { + switch (feature.geometry.type) { + case 'Point': + return mgrs.forward(feature.geometry.coordinates); + case 'LineString': + return mgrs.forward(feature.geometry.coordinates[this.selectedVertexIndex]); + case 'Polygon': + return mgrs.forward(feature.geometry.coordinates[0][this.selectedVertexIndex]); + } + } + + onDmsPaste(event: ClipboardEvent, dimension: DimensionKey): void { + // TODO: make single coordinate paste use the dms parser to ensure properly + // parsing leading hemisphere, compact dms, and decimals the same way + // 0° 44'48"N 0° 00'48"E + const pasted = event.clipboardData.getData('text') + const parse = DMS.generateParsedCoordinates(pasted) + let parsing = parse.next() + const coords = [] as (DMSCoordinate | number)[] + while (parsing.done === false && coords.length < 2) { + coords.push(parsing.value) + parsing = parse.next() + } + if (parsing.value instanceof DMSParseError) { + console.error('error parsing pasted coordinates', parsing.value) + this.snackBar.open(`Invalid DMS coordinate string: ${parsing.value.message}`, null, { duration: 6000 }) + return + } + if (coords.length === 0) { + this.snackBar.open(`No DMS coordinates found in pasted text.`, null, { duration: 2000 }) + return + } + event.preventDefault() + event.stopImmediatePropagation() + const formValue = { [DimensionKey.Latitude]: '', [DimensionKey.Longitude]: '', ...this.dmsForm.value } + if (coords.length === 1) { + const coord = typeof coords[0] === 'number' ? DMSCoordinate.fromDecimalDegrees(coords[0], dimension) : coords[0] + formValue[dimension] = coord.format() + this.dmsForm.setValue(formValue, { emitEvent: true }) + return + } + const [ first, second ] = coords.sort((a, b) => a instanceof DMSCoordinate ? -1 : (typeof b === 'number' ? 0 : 1)) + if (typeof first === 'number') { + // must both be numbers - assume latitude first + const latDMS = DMSCoordinate.fromDecimalDegrees(first, DimensionKey.Latitude) + const lonDMS = DMSCoordinate.fromDecimalDegrees(second as number, DimensionKey.Longitude) + formValue[DimensionKey.Latitude] = latDMS.format() + formValue[DimensionKey.Longitude] = lonDMS.format() + this.dmsForm.setValue(formValue, { emitEvent: true }) + return + } + const firstDim = Dimension.keyForHemisphere(first.hemisphere) + // use the known hemisphere to infer the other if necessary + const secondResolved = typeof second === 'number' ? + DMSCoordinate.fromDecimalDegrees(second, firstDim === DimensionKey.Latitude ? DimensionKey.Longitude : DimensionKey.Latitude) : + second + const secondDim = Dimension.keyForHemisphere(secondResolved.hemisphere) + this.dmsForm.setValue({ [firstDim]: first.format(), [secondDim]: secondResolved.format() } as Required, { emitEvent: true }) + } + + onDmsChange({ lat: formLat, lon: formLon }: Required): void { + if (this.dmsForm.invalid) { + return + } + const lat = DMS.parseOne(formLat, DimensionKey.Latitude) + const lon = DMS.parseOne(formLon, DimensionKey.Longitude) + this.editCurrentCoordinates('dms', lat, lon) + } + + onLatLngChange(): void { + this.editCurrentCoordinates('wgs84', this.latitude, this.longitude) + } + + onMgrsChange(): void { + if (this.mgrsModel.control.invalid) { + return + } + const [ lon, lat ] = mgrs.toPoint(this.mgrs) + this.editCurrentCoordinates('mgrs', lat, lon) + } + + hasIntersections(feature, coordinates): boolean { + if (feature.geometry.type !== 'Point') { + return this.geometryService.featureHasIntersections({ geometry: { coordinates } }) + } + return false; + } + + shapeTypeChanged(shapeType?: string): void { + this.selectedShapeType = shapeType + switch (shapeType) { + case 'Point': + this.feature.geometry.coordinates = [] + this.feature.geometry.type = 'Point' + break; + case 'LineString': + this.feature.geometry.coordinates = [] + this.feature.geometry.type = 'LineString' + break; + case 'Polygon': + this.feature.geometry.coordinates = [] + this.feature.geometry.type = 'Polygon' + break; + default: + this.latitude = null + this.longitude = null + this.mgrs = null + this.dmsForm.setValue({ [DimensionKey.Latitude]: '', [DimensionKey.Longitude]: '' }, { emitEvent: false }) + delete this.feature.geometry.type + this.featureEdit.cancel() + break; + } + if (shapeType) { + this.onEditShape() + } + } + + onEditShape(): void { + this.featureEdit.update(this.feature) + } + + editCurrentCoordinates(from: CoordinateSystemKey, lat: number, lon: number): void { + this.coordinateEditSource = from + let coordinates = [ ...this.feature.geometry.coordinates ] + if (this.feature.geometry.type === 'Point') { + coordinates = [ lon, lat ] + } + else if (this.feature.geometry.type === 'LineString') { + coordinates[this.selectedVertexIndex] = [ lon, lat ] + } + else if (this.feature.geometry.type === 'Polygon') { + if (coordinates[0]) { + coordinates[0][this.selectedVertexIndex] = [ lon, lat ] + } + } + ensurePolygonClosed(this.feature, coordinates) + if (this.hasIntersections(this.feature, coordinates)) { + return + } + this.feature.geometry.coordinates = coordinates + this.featureEdit.update(this.feature) + } + + updateCoordinates(): void { + if (this.feature.geometry.type === 'Point') { + this.longitude = this.feature.geometry.coordinates[0] + this.latitude = this.feature.geometry.coordinates[1] + } + else if (this.feature.geometry.type === 'Polygon') { + this.longitude = this.feature.geometry.coordinates[0][this.selectedVertexIndex][0] + this.latitude = this.feature.geometry.coordinates[0][this.selectedVertexIndex][1] + } + else if (this.feature.geometry.type === 'LineString') { + this.longitude = this.feature.geometry.coordinates[this.selectedVertexIndex][0] + this.latitude = this.feature.geometry.coordinates[this.selectedVertexIndex][1] + } + const from = this.coordinateEditSource + this.coordinateEditSource = null + if (from !== 'mgrs') { + this.mgrs = this.toMgrs(this.feature) + this.mgrsModel.control.setValue(this.mgrs, {emitEvent:false, emitViewToModelChange:false, emitModelToViewChange:true}) + } + if (from !== 'dms') { + this.dmsForm.setValue({ + [DimensionKey.Latitude]: DMS.formatLatitude(this.latitude), + [DimensionKey.Longitude]: DMS.formatLongitude(this.longitude) + }, { emitEvent: false }) + } + } +} + +function ensurePolygonClosed(feature, coordinates) { + // Ensure first and last points are the same for polygon + if (feature.geometry.type === 'Polygon') { + if (feature.editedVertex === 0) { + coordinates[0][coordinates[0].length - 1] = [ ...coordinates[0][0] ] + } + else if (feature.editedVertex === coordinates[0].length - 1) { + coordinates[0][0] = [ ...coordinates[0][coordinates[0].length - 1] ] + } + } +} diff --git a/web-app/admin/src/app/observation/observation-edit/observation-edit-geometry/observation-edit-geometry-map.component.html b/web-app/admin/src/app/observation/observation-edit/observation-edit-geometry/observation-edit-geometry-map.component.html new file mode 100644 index 000000000..67d8b8d9f --- /dev/null +++ b/web-app/admin/src/app/observation/observation-edit/observation-edit-geometry/observation-edit-geometry-map.component.html @@ -0,0 +1,5 @@ + + + \ No newline at end of file diff --git a/web-app/admin/src/app/observation/observation-edit/observation-edit-geometry/observation-edit-geometry-map.component.scss b/web-app/admin/src/app/observation/observation-edit/observation-edit-geometry/observation-edit-geometry-map.component.scss new file mode 100644 index 000000000..5c632ee50 --- /dev/null +++ b/web-app/admin/src/app/observation/observation-edit/observation-edit-geometry/observation-edit-geometry-map.component.scss @@ -0,0 +1,19 @@ +.geometry-map { + position: absolute; + top: 0; + bottom:0; + right: 0; + left: 0; + z-index: 0; +} + +.edit { + position: absolute; + bottom: 16px; + right: 16px; + z-index: 1; +} + +mat-icon { + color: white; +} diff --git a/web-app/admin/src/app/observation/observation-edit/observation-edit-geometry/observation-edit-geometry-map.component.spec.ts b/web-app/admin/src/app/observation/observation-edit/observation-edit-geometry/observation-edit-geometry-map.component.spec.ts new file mode 100644 index 000000000..2cf74801d --- /dev/null +++ b/web-app/admin/src/app/observation/observation-edit/observation-edit-geometry/observation-edit-geometry-map.component.spec.ts @@ -0,0 +1,25 @@ +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; + +import { ObservationEditGeometryMapComponent } from './observation-edit-geometry-map.component'; + +describe('ObservationEditGeometryMapComponent', () => { + let component: ObservationEditGeometryMapComponent; + let fixture: ComponentFixture; + + beforeEach(waitForAsync(() => { + TestBed.configureTestingModule({ + declarations: [ObservationEditGeometryMapComponent ] + }) + .compileComponents(); + })); + + beforeEach(() => { + fixture = TestBed.createComponent(ObservationEditGeometryMapComponent); + component = fixture.componentInstance; + fixture.detectChanges(); + }); + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/web-app/admin/src/app/observation/observation-edit/observation-edit-geometry/observation-edit-geometry-map.component.ts b/web-app/admin/src/app/observation/observation-edit/observation-edit-geometry/observation-edit-geometry-map.component.ts new file mode 100644 index 000000000..3d8376ace --- /dev/null +++ b/web-app/admin/src/app/observation/observation-edit/observation-edit-geometry/observation-edit-geometry-map.component.ts @@ -0,0 +1,16 @@ +import { Component, EventEmitter, Input, Output } from '@angular/core'; + +@Component({ + selector: 'observation-edit-geometry-map', + templateUrl: './observation-edit-geometry-map.component.html', + styleUrls: ['./observation-edit-geometry-map.component.scss'] +}) +export class ObservationEditGeometryMapComponent { + @Input() feature: any + @Output() onEdit = new EventEmitter(); + + edit(): void { + this.onEdit.emit(); + } + +} diff --git a/web-app/admin/src/app/observation/observation-edit/observation-edit-geometry/observation-edit-geometry.component.html b/web-app/admin/src/app/observation/observation-edit/observation-edit-geometry/observation-edit-geometry.component.html new file mode 100644 index 000000000..96e5faf69 --- /dev/null +++ b/web-app/admin/src/app/observation/observation-edit/observation-edit-geometry/observation-edit-geometry.component.html @@ -0,0 +1,24 @@ +
+
+
{{definition?.title}} {{definition?.required ? '*' : ''}}
+ +
+
+
+ +
+
+ +
+
+
+ +
+ +
+ +
+ {{mapFeature.geometry | geometry:5}} +
+ +
\ No newline at end of file diff --git a/web-app/admin/src/app/observation/observation-edit/observation-edit-geometry/observation-edit-geometry.component.scss b/web-app/admin/src/app/observation/observation-edit/observation-edit-geometry/observation-edit-geometry.component.scss new file mode 100644 index 000000000..42a14da52 --- /dev/null +++ b/web-app/admin/src/app/observation/observation-edit/observation-edit-geometry/observation-edit-geometry.component.scss @@ -0,0 +1,90 @@ +@use '@angular/material' as mat; +@import "variables.scss"; + +.geometry-wrapper { + margin-bottom: 16px; +} + +.geometry-field { + border-radius: 4px 4px 0 0; + // background-color: rgba(0, 0, 0, 0.04); + background-color: rgb(245, 245, 245); +} + +.geometry-field--active { + position: relative; + z-index: 1; +} + +.geometry-field__label { + font-size: 12px; + font-weight: 400; + line-height: 1.125; + padding: 12px 16px 0 16px; + font-family: Roboto, "Helvetica Neue", sans-serif; + color: rgba(0, 0, 0, 0.6) +} + +.geometry-field__label--active { + color: mat.get-color-from-palette($app-primary); +} + +.geometry-panel { + perspective: 1000px; +} + +.geometry-panel__contents { + width: 100%; + height: 240px; + z-index: 1; + transition: transform 0.8s; + transform-style: preserve-3d; +} + +.geometry-panel__contents.geometry-panel__flip { + transform: rotateY(180deg) translateZ(1px); + -webkit-transform: rotateY(180deg) translateZ(1px); +} + +.geometry__underline { + width: 100%; + pointer-events: none; + transform: scaleY(1.0001); + bottom: 1.34375em; + height: 1px; + background-color: rgba(0, 0, 0, 0.4); +} + +.geometry-panel__view { + position: absolute; + top: 8px; + bottom: 0; + right: 0; + left: 0; + z-index: 0; + backface-visibility: hidden; + -webkit-backface-visibility: hidden; +} + +.geometry-panel__edit { + position: absolute; + top: 16px; + bottom: 16px; + right: 16px; + left: 16px; + z-index: 0; + backface-visibility: hidden; + -webkit-backface-visibility: hidden; + transform: rotateY(180deg); + -webkit-transform: rotateY(180deg); +} + +.geometry-help { + padding: 6px 1em; + height: 20px; +} + +.geometry-help__text { + font-size: 75%; + color: rgba(0, 0, 0, 0.6); +} \ No newline at end of file diff --git a/web-app/admin/src/app/observation/observation-edit/observation-edit-geometry/observation-edit-geometry.component.spec.ts b/web-app/admin/src/app/observation/observation-edit/observation-edit-geometry/observation-edit-geometry.component.spec.ts new file mode 100644 index 000000000..f9e75f7b3 --- /dev/null +++ b/web-app/admin/src/app/observation/observation-edit/observation-edit-geometry/observation-edit-geometry.component.spec.ts @@ -0,0 +1,27 @@ +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; + +import { ObservationEditGeometryComponent } from './observation-edit-geometry.component'; + +/* TODO tests MUST contain at least 1 test +describe('ObservationEditGeometryComponent', () => { + let component: ObservationEditGeometryComponent; + let fixture: ComponentFixture; + + beforeEach(waitForAsync(() => { + TestBed.configureTestingModule({ + declarations: [ObservationEditGeometryComponent ] + }) + .compileComponents(); + })); + + beforeEach(() => { + fixture = TestBed.createComponent(ObservationEditGeometryComponent); + component = fixture.componentInstance; + fixture.detectChanges(); + }); + + // it('should create', () => { + // expect(component).toBeTruthy(); + // }); +}); +*/ diff --git a/web-app/admin/src/app/observation/observation-edit/observation-edit-geometry/observation-edit-geometry.component.ts b/web-app/admin/src/app/observation/observation-edit/observation-edit-geometry/observation-edit-geometry.component.ts new file mode 100644 index 000000000..7ab50957f --- /dev/null +++ b/web-app/admin/src/app/observation/observation-edit/observation-edit-geometry/observation-edit-geometry.component.ts @@ -0,0 +1,128 @@ +import { Component, ElementRef, EventEmitter, Inject, Input, OnChanges, Output, SimpleChanges, ViewChild } from '@angular/core' +import { UntypedFormGroup } from '@angular/forms' +import { Feature, Geometry } from 'geojson' +import { LocalStorageService } from '../../../../app/upgrade/ajs-upgraded-providers' + +@Component({ + selector: 'observation-edit-geometry', + templateUrl: './observation-edit-geometry.component.html', + styleUrls: ['./observation-edit-geometry.component.scss'] +}) +export class ObservationEditGeometryComponent implements OnChanges { + @Input() formGroup: UntypedFormGroup + @Input() definition: any + + @Input() featureId: string + @Input() featureStyle: any + + @Output() onFeatureEdit = new EventEmitter() + + @ViewChild('geometry', { static: true }) geometryElement: ElementRef + + edit = false + mapFeature: any + editFeature: any + + constructor(private element: ElementRef, @Inject(LocalStorageService) private localStorageService: any) { } + + ngOnChanges(changes: SimpleChanges): void { + if (changes.formGroup && changes.formGroup.currentValue) { + this.mapFeature = { + id: this.featureId, + type: 'Feature', + geometry: changes.formGroup.currentValue.get(this.definition.name).value + } + } + + if (changes.featureStyle && changes.featureStyle.currentValue) { + this.mapFeature = { + id: this.featureId, + type: 'Feature', + geometry: this.formGroup.get(this.definition.name).value, + style: this.featureStyle ? JSON.parse(JSON.stringify(this.featureStyle)) : null + } + } + } + + startGeometryEdit(): void { + this.edit = true; + + const value = this.formGroup.get(this.definition.name).value + if (value) { + this.editFeature = { + id: this.featureId, + type: 'Feature', + geometry: value, + style: this.featureStyle ? JSON.parse(JSON.stringify(this.featureStyle)) : null + } + } else { + const mapPosition = this.localStorageService.getMapPosition(); + this.editFeature = { + type: 'Feature', + geometry: { + type: 'Point', + coordinates: [mapPosition.center.lng, mapPosition.center.lat] + }, + style: this.featureStyle ? JSON.parse(JSON.stringify(this.featureStyle)) : null + } + } + + this.onFeatureEdit.emit({ + action: 'edit', + source: this.geometryElement + }) + } + + saveGeometryEdit(event: any): void { + this.edit = false + this.mapFeature = event.feature + + // TODO normalize geometry + this.formGroup.get(this.definition.name).setValue(this.normalizeGeometry(event.feature)) + + this.onFeatureEdit.emit({ + action: 'none', + source: this.geometryElement + }) + } + + cancelGeometryEdit(): void { + this.edit = false; + + this.onFeatureEdit.emit({ + action: 'none' + }) + } + + private normalizeGeometry(feature: Feature): Geometry { + const geometry = feature ? feature.geometry : null + if (!geometry) return geometry + + switch (geometry.type) { + case 'Point': + if (geometry.coordinates[0] < -180) geometry.coordinates[0] = geometry.coordinates[0] + 360 + else if (geometry.coordinates[0] > 180) geometry.coordinates[0] = geometry.coordinates[0] - 360 + break; + case 'LineString': + for (let i = 0; i < geometry.coordinates.length; i++) { + const coord = geometry.coordinates[i]; + while (coord[0] < -180) coord[0] = coord[0] + 360 + while (coord[0] > 180) coord[0] = coord[0] - 360 + } + break; + case 'Polygon': + for (let p = 0; p < geometry.coordinates.length; p++) { + const poly = geometry.coordinates[p]; + for (let i = 0; i < poly.length; i++) { + const coord = poly[i]; + while (coord[0] < -180) coord[0] = coord[0] + 360 + while (coord[0] > 180) coord[0] = coord[0] - 360 + } + } + break; + } + + return geometry + } + +} diff --git a/web-app/admin/src/app/observation/observation-edit/observation-edit-multiselect/observation-edit-multiselect.component.html b/web-app/admin/src/app/observation/observation-edit/observation-edit-multiselect/observation-edit-multiselect.component.html new file mode 100644 index 000000000..7f0353d56 --- /dev/null +++ b/web-app/admin/src/app/observation/observation-edit/observation-edit-multiselect/observation-edit-multiselect.component.html @@ -0,0 +1,23 @@ + + {{definition.title}} + + + {{choice}} + cancel + + + + + + {{choice.title}} + + + + You must enter a value + \ No newline at end of file diff --git a/web-app/admin/src/app/observation/observation-edit/observation-edit-multiselect/observation-edit-multiselect.component.scss b/web-app/admin/src/app/observation/observation-edit/observation-edit-multiselect/observation-edit-multiselect.component.scss new file mode 100644 index 000000000..9b0e21275 --- /dev/null +++ b/web-app/admin/src/app/observation/observation-edit/observation-edit-multiselect/observation-edit-multiselect.component.scss @@ -0,0 +1,8 @@ +mat-form-field { + width: 100%; + margin-bottom: 16px; +} + +.select__choice--disabled { + color: rgba($color: #000000, $alpha: .54) +} \ No newline at end of file diff --git a/web-app/admin/src/app/observation/observation-edit/observation-edit-multiselect/observation-edit-multiselect.component.spec.ts b/web-app/admin/src/app/observation/observation-edit/observation-edit-multiselect/observation-edit-multiselect.component.spec.ts new file mode 100644 index 000000000..5fef663da --- /dev/null +++ b/web-app/admin/src/app/observation/observation-edit/observation-edit-multiselect/observation-edit-multiselect.component.spec.ts @@ -0,0 +1,202 @@ +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing' +import { ChangeDetectionStrategy, Component, CUSTOM_ELEMENTS_SCHEMA, ViewChild } from '@angular/core' + +import { ObservationEditMultiselectComponent } from './observation-edit-multiselect.component' +import { MatAutocompleteModule } from '@angular/material/autocomplete'; +import { MatChipsModule, MatChipInputEvent, MatChipInput } from '@angular/material/chips'; +import { MatFormFieldModule, MatError } from '@angular/material/form-field'; +import { MatIconModule } from '@angular/material/icon'; +import { MatInputModule } from '@angular/material/input'; +import { UntypedFormControl, UntypedFormGroup, FormsModule, ReactiveFormsModule, Validators } from '@angular/forms' +import { BrowserAnimationsModule } from '@angular/platform-browser/animations' +import { By } from '@angular/platform-browser' + +@Component({ + selector: `host-component`, + template: ``, + changeDetection: ChangeDetectionStrategy.OnPush +}) +class TestHostComponent { + formGroup = new UntypedFormGroup({ + select: new UntypedFormControl() + }) + + definition: any = { + name: 'select', + required: false, + title: 'Colors', + choices: [{ + title: 'red' + }, { + title: 'green' + }, { + title: 'blue' + }] + } + + @ViewChild(ObservationEditMultiselectComponent) component: ObservationEditMultiselectComponent +} + +describe('ObservationEditMultiselectComponent', () => { + let component: ObservationEditMultiselectComponent + let hostComponent: TestHostComponent + let fixture: ComponentFixture + let chipInput: MatChipInput + + beforeEach(waitForAsync(() => { + TestBed.configureTestingModule({ + imports: [FormsModule, BrowserAnimationsModule, ReactiveFormsModule, MatInputModule, MatAutocompleteModule, MatChipsModule, MatIconModule, MatFormFieldModule], + declarations: [ObservationEditMultiselectComponent, TestHostComponent], + schemas: [CUSTOM_ELEMENTS_SCHEMA] + }) + .compileComponents() + })); + + + beforeEach(() => { + fixture = TestBed.createComponent(TestHostComponent) + hostComponent = fixture.componentInstance + fixture.detectChanges(); + component = hostComponent.component + }) + + it('should create', () => { + expect(component).toBeTruthy() + }) + + it('should not indicate required', async () => { + component.definition.required = false + + const control = component.formGroup.get('select') + control.clearValidators() + control.updateValueAndValidity() + + fixture.detectChanges() + await fixture.whenStable() + + expect(control.valid).toBe(true) + const error = fixture.debugElement.query(By.directive(MatError)) + expect(error).toBeNull() + }) + + it('should indicate required', async () => { + component.definition.required = true + + const control = component.formGroup.get('select') + control.setValidators(Validators.required) + control.updateValueAndValidity() + + fixture.detectChanges() + await fixture.whenStable() + + expect(control.valid).toBe(false) + }) + + it('should select choice', () => { + const event: any = { + option: { + value: 'red' + } + } + + component.selected(event) + + const control = component.formGroup.get('select') + expect(control.value).toEqual(['red']) + }) + + it('should add choice', () => { + const event: MatChipInputEvent = { + input: null, + value: 'red', + chipInput: chipInput + } + component.add(event) + + const control = component.formGroup.get('select') + expect(control.value).toEqual(['red']) + }) + + it('should not add invalid choice', () => { + const event: MatChipInputEvent = { + input: null, + value: 'purple', + chipInput: chipInput + } + component.add(event) + + // expect(component.field.value).toBeUndefined() + const control = component.formGroup.get('select') + expect(control.value).toBeNull() + }) + + it('should not add duplicate choice', () => { + const event: MatChipInputEvent = { + input: null, + value: 'red', + chipInput: chipInput + } + component.add(event) + component.add(event) + + const control = component.formGroup.get('select') + expect(control.value).toEqual(['red']) + }) + + it('should remove choice', () => { + const event: MatChipInputEvent = { + input: null, + value: 'red', + chipInput: chipInput + } + component.add(event) + component.remove('red') + + const control = component.formGroup.get('select') + expect(control.value).toBeNull() + }) + + it('should not remove non existing choice', () => { + const event: MatChipInputEvent = { + input: null, + value: 'red', + chipInput: chipInput + } + component.add(event) + component.remove('blue') + + const control = component.formGroup.get('select') + expect(control.value).toEqual(['red']) + }) + + it('should show error on invalid and touched', async () => { + component.definition.required = true + + const control = component.formGroup.get('select') + control.setValidators(Validators.required) + control.updateValueAndValidity() + control.markAsTouched() + + fixture.detectChanges() + await fixture.whenStable() + + expect(control.valid).toBe(false) + const error = fixture.debugElement.query(By.directive(MatError)) + expect(error.nativeElement.innerText).toBe('You must enter a value') + }) + + it('should not show error on invalid if not touched', async () => { + component.definition.required = true + + const control = component.formGroup.get('select') + control.setValidators(Validators.required) + control.updateValueAndValidity() + + fixture.detectChanges() + await fixture.whenStable() + + expect(control.valid).toBe(false) + const error = fixture.debugElement.query(By.directive(MatError)) + expect(error).toBeNull() + }) +}); diff --git a/web-app/admin/src/app/observation/observation-edit/observation-edit-multiselect/observation-edit-multiselect.component.ts b/web-app/admin/src/app/observation/observation-edit/observation-edit-multiselect/observation-edit-multiselect.component.ts new file mode 100644 index 000000000..d9e3bca61 --- /dev/null +++ b/web-app/admin/src/app/observation/observation-edit/observation-edit-multiselect/observation-edit-multiselect.component.ts @@ -0,0 +1,111 @@ +import { Component, ViewChild, ElementRef, Input, AfterViewInit, OnInit } from '@angular/core'; +import { UntypedFormControl, UntypedFormGroup } from '@angular/forms'; +import { COMMA, ENTER } from '@angular/cdk/keycodes'; +import { MatAutocompleteSelectedEvent, MatAutocompleteTrigger } from '@angular/material/autocomplete'; +import { MatChipInputEvent, MatChipList } from '@angular/material/chips'; +import { Observable } from 'rxjs'; +import { map, startWith } from 'rxjs/operators'; + +interface Choice { + title: string; +} + +interface MultiSelectField { + title: string, + name: string, + required: boolean, + choices: Choice[] +} + +@Component({ + selector: 'observation-edit-multiselect', + templateUrl: './observation-edit-multiselect.component.html', + styleUrls: ['./observation-edit-multiselect.component.scss'] +}) +export class ObservationEditMultiselectComponent implements OnInit, AfterViewInit { + @Input() formGroup: UntypedFormGroup + @Input() definition: MultiSelectField + + @ViewChild('chipList', { static: false }) chipList: MatChipList + @ViewChild('choiceInput', { static: false }) choiceInput: ElementRef + @ViewChild(MatAutocompleteTrigger, {static: false}) autocomplete: MatAutocompleteTrigger + + visible = true + removable = true + separatorKeysCodes: number[] = [ENTER, COMMA] + control: UntypedFormControl + choiceControl = new UntypedFormControl() + filteredChoices: Observable + + constructor() { + this.filteredChoices = this.choiceControl.valueChanges.pipe( + startWith(''), + map(value => { + return !value || typeof value === 'string' ? value : value.title + }), + map(title => { + return title ? this.filter(title) : this.definition.choices.slice() + }) + ) + } + + ngOnInit(): void { + this.control = this.formGroup.get(this.definition.name) as UntypedFormControl + } + + ngAfterViewInit(): void { + this.control.statusChanges.subscribe(() => { + this.checkErrorState() + }) + } + + add(event: MatChipInputEvent): void { + const choice = this.definition.choices.find((choice: Choice) => choice.title === event.value) + if (!choice) return + + this.addChoice(choice.title) + + // Reset the input value + if (event.input) { + event.input.value = '' + } + + this.autocomplete.closePanel() + } + + remove(choice: string): void { + const index = this.control.value.indexOf(choice) + + if (index >= 0) { + this.control.value.splice(index, 1) + } + + if (this.control.value.length === 0) { + this.control.setValue(null) + } + } + + selected(event: MatAutocompleteSelectedEvent): void { + this.addChoice(event.option.value) + + this.choiceInput.nativeElement.value = '' + } + + private addChoice(choice: string): void { + const choices = new Set(this.control.value) + choices.add(choice) + this.control.setValue(Array.from(choices)) + this.choiceControl.setValue(null) + } + + private filter(value: string): Choice[] { + const filterValue = value.toLowerCase() + + return this.definition.choices.filter(option => option.title.toLowerCase().indexOf(filterValue) === 0) + } + + private checkErrorState(): void { + this.chipList.errorState = this.definition.required && (!this.control.value || this.control.value.length === 0) + } + +} diff --git a/web-app/admin/src/app/observation/observation-edit/observation-edit-number/observation-edit-number.component.html b/web-app/admin/src/app/observation/observation-edit/observation-edit-number/observation-edit-number.component.html new file mode 100644 index 000000000..9277a7711 --- /dev/null +++ b/web-app/admin/src/app/observation/observation-edit/observation-edit-number/observation-edit-number.component.html @@ -0,0 +1,9 @@ +
+ + {{definition.title}} + + You must enter a value + Must be greater than {{definition.min}} + Must be less than {{definition.max}} + +
diff --git a/web-app/admin/src/app/observation/observation-edit/observation-edit-number/observation-edit-number.component.scss b/web-app/admin/src/app/observation/observation-edit/observation-edit-number/observation-edit-number.component.scss new file mode 100644 index 000000000..f7b82f8b9 --- /dev/null +++ b/web-app/admin/src/app/observation/observation-edit/observation-edit-number/observation-edit-number.component.scss @@ -0,0 +1,4 @@ +mat-form-field { + width: 100%; + margin-bottom: 16px; +} \ No newline at end of file diff --git a/web-app/admin/src/app/observation/observation-edit/observation-edit-number/observation-edit-number.component.spec.ts b/web-app/admin/src/app/observation/observation-edit/observation-edit-number/observation-edit-number.component.spec.ts new file mode 100644 index 000000000..8ca95f15d --- /dev/null +++ b/web-app/admin/src/app/observation/observation-edit/observation-edit-number/observation-edit-number.component.spec.ts @@ -0,0 +1,112 @@ +import { ChangeDetectionStrategy, Component, ViewChild } from '@angular/core'; +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; +import { UntypedFormControl, UntypedFormGroup, FormsModule, ReactiveFormsModule, Validators } from '@angular/forms'; +import { MatError, MatFormFieldModule } from '@angular/material/form-field'; +import { MatInputModule } from '@angular/material/input'; +import { By } from '@angular/platform-browser'; +import { NoopAnimationsModule } from '@angular/platform-browser/animations'; + +import { ObservationEditNumberComponent } from './observation-edit-number.component'; + +@Component({ + selector: `host-component`, + template: ``, + changeDetection: ChangeDetectionStrategy.OnPush +}) +class TestHostComponent { + formGroup = new UntypedFormGroup({ + number: new UntypedFormControl() + }) + + definition: any = { + name: 'number', + title: 'Number Field' + } + + + @ViewChild(ObservationEditNumberComponent) component: ObservationEditNumberComponent +} + +describe('ObservationEditNumberComponent', () => { + let component: ObservationEditNumberComponent + let hostComponent: TestHostComponent + let fixture: ComponentFixture + + beforeEach(waitForAsync(() => { + TestBed.configureTestingModule({ + imports: [FormsModule, ReactiveFormsModule, MatFormFieldModule, MatInputModule, NoopAnimationsModule], + declarations: [ObservationEditNumberComponent, TestHostComponent] + }) + .compileComponents() + })) + + beforeEach(() => { + fixture = TestBed.createComponent(TestHostComponent) + hostComponent = fixture.componentInstance + fixture.detectChanges(); + component = hostComponent.component + }) + + it('should create', () => { + expect(component).toBeTruthy() + }) + + it('should not indicate required', async () => { + component.definition.required = false + + const control = component.formGroup.get('number') + control.clearValidators() + control.updateValueAndValidity() + + fixture.detectChanges() + await fixture.whenStable() + + expect(control.valid).toBe(true) + const error = fixture.debugElement.query(By.directive(MatError)) + expect(error).toBeNull() + }) + + it('should indicate required', async () => { + component.definition.required = true + + const control = component.formGroup.get('number') + control.setValidators(Validators.required) + control.updateValueAndValidity() + + fixture.detectChanges() + await fixture.whenStable() + + expect(control.valid).toBe(false) + }) + + it('should show error on invalid and touched', async () => { + component.definition.required = true + + const control = component.formGroup.get('number') + control.setValidators(Validators.required) + control.updateValueAndValidity() + control.markAsTouched() + + fixture.detectChanges() + await fixture.whenStable() + + expect(control.valid).toBe(false) + const error = fixture.debugElement.query(By.directive(MatError)) + expect(error.nativeElement.innerText).toBe('You must enter a value') + }) + + it('should not show error on invalid if not touched', async () => { + component.definition.required = true + + const control = component.formGroup.get('number') + control.setValidators(Validators.required) + control.updateValueAndValidity() + + fixture.detectChanges() + await fixture.whenStable() + + expect(control.valid).toBe(false) + const error = fixture.debugElement.query(By.directive(MatError)) + expect(error).toBeNull() + }) +}); diff --git a/web-app/admin/src/app/observation/observation-edit/observation-edit-number/observation-edit-number.component.ts b/web-app/admin/src/app/observation/observation-edit/observation-edit-number/observation-edit-number.component.ts new file mode 100644 index 000000000..09bbdfa55 --- /dev/null +++ b/web-app/admin/src/app/observation/observation-edit/observation-edit-number/observation-edit-number.component.ts @@ -0,0 +1,30 @@ +import { Component, Input, OnInit } from '@angular/core'; +import { UntypedFormGroup, ValidatorFn, Validators } from '@angular/forms'; + +interface NumberField { + title: string, + name: string, + value: number, + required: boolean, + min?: number, + max?: number +} + +@Component({ + selector: 'observation-edit-number', + templateUrl: './observation-edit-number.component.html', + styleUrls: ['./observation-edit-number.component.scss'] +}) +export class ObservationEditNumberComponent implements OnInit { + @Input() formGroup: UntypedFormGroup + @Input() definition: NumberField + + ngOnInit(): void { + const control = this.formGroup.get(this.definition.name) + const validators: ValidatorFn[] = [] + if (this.definition.required) validators.push(Validators.required) + if (this.definition.min != null) validators.push(Validators.min(this.definition.min)) + if (this.definition.max != null) validators.push(Validators.max(this.definition.max)) + control.setValidators(validators) + } +} diff --git a/web-app/admin/src/app/observation/observation-edit/observation-edit-password/observation-edit-password.component.html b/web-app/admin/src/app/observation/observation-edit/observation-edit-password/observation-edit-password.component.html new file mode 100644 index 000000000..9d1327478 --- /dev/null +++ b/web-app/admin/src/app/observation/observation-edit/observation-edit-password/observation-edit-password.component.html @@ -0,0 +1,7 @@ +
+ + {{definition.title}} + + You must enter a value + +
\ No newline at end of file diff --git a/web-app/admin/src/app/observation/observation-edit/observation-edit-password/observation-edit-password.component.scss b/web-app/admin/src/app/observation/observation-edit/observation-edit-password/observation-edit-password.component.scss new file mode 100644 index 000000000..f7b82f8b9 --- /dev/null +++ b/web-app/admin/src/app/observation/observation-edit/observation-edit-password/observation-edit-password.component.scss @@ -0,0 +1,4 @@ +mat-form-field { + width: 100%; + margin-bottom: 16px; +} \ No newline at end of file diff --git a/web-app/admin/src/app/observation/observation-edit/observation-edit-password/observation-edit-password.component.spec.ts b/web-app/admin/src/app/observation/observation-edit/observation-edit-password/observation-edit-password.component.spec.ts new file mode 100644 index 000000000..4846fb8bc --- /dev/null +++ b/web-app/admin/src/app/observation/observation-edit/observation-edit-password/observation-edit-password.component.spec.ts @@ -0,0 +1,107 @@ +import { ChangeDetectionStrategy, Component, ViewChild } from '@angular/core'; +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; +import { UntypedFormControl, UntypedFormGroup, Validators } from '@angular/forms'; +import { ObservationEditPasswordComponent } from './observation-edit-password.component'; + +@Component({ + selector: `host-component`, + template: ``, + changeDetection: ChangeDetectionStrategy.OnPush +}) +class TestHostComponent { + formGroup = new UntypedFormGroup({ + text: new UntypedFormControl('') + }); + definition = { + name: 'text', + title: 'Text Field', + required: true + } + + @ViewChild(ObservationEditPasswordComponent) component: ObservationEditPasswordComponent +} + +/* TODO tests MUST contain at least 1 test +describe('ObservationEditPasswordComponent', () => { + let component: ObservationEditPasswordComponent + let hostComponent: TestHostComponent + let fixture: ComponentFixture + + beforeEach(waitForAsync(() => { + TestBed.configureTestingModule({ + declarations: [ ObservationEditPasswordComponent, TestHostComponent ] + }) + .compileComponents(); + })); + + beforeEach(() => { + fixture = TestBed.createComponent(TestHostComponent) + hostComponent = fixture.componentInstance + fixture.detectChanges(); + component = hostComponent.component + }) + + // it('should create', () => { + // expect(component).toBeTruthy(); + // }); + + // it('should not indicate required', async () => { + // component.definition.required = false + + // const control = component.formGroup.get('text') + // control.clearValidators() + // control.updateValueAndValidity() + + // fixture.detectChanges() + // await fixture.whenStable() + + // expect(control.valid).toBe(true) + // const error = fixture.debugElement.query(By.directive(MatError)) + // expect(error).toBeNull() + // }) + + // it('should indicate required', async () => { + // component.definition.required = true + + // const control = component.formGroup.get('text') + // control.setValidators(Validators.required) + // control.updateValueAndValidity() + + // fixture.detectChanges() + // await fixture.whenStable() + + // expect(control.valid).toBe(false) + // }) + + // it('should show error on invalid and touched', async () => { + // component.definition.required = true + + // const control = component.formGroup.get('text') + // control.setValidators(Validators.required) + // control.updateValueAndValidity() + // control.markAsTouched() + + // fixture.detectChanges() + // await fixture.whenStable() + + // expect(control.valid).toBe(false) + // const error = fixture.debugElement.query(By.directive(MatError)) + // expect(error.nativeElement.innerText).toBe('You must enter a value') + // }) + + // it('should not show error on invalid if not touched', async () => { + // component.definition.required = true + + // const control = component.formGroup.get('text') + // control.setValidators(Validators.required) + // control.updateValueAndValidity() + + // fixture.detectChanges() + // await fixture.whenStable() + + // expect(control.valid).toBe(false) + // const error = fixture.debugElement.query(By.directive(MatError)) + // expect(error).toBeNull() + // }) +}); +*/ diff --git a/web-app/admin/src/app/observation/observation-edit/observation-edit-password/observation-edit-password.component.ts b/web-app/admin/src/app/observation/observation-edit/observation-edit-password/observation-edit-password.component.ts new file mode 100644 index 000000000..b13898681 --- /dev/null +++ b/web-app/admin/src/app/observation/observation-edit/observation-edit-password/observation-edit-password.component.ts @@ -0,0 +1,18 @@ +import { Component, Input } from '@angular/core'; +import { UntypedFormGroup } from '@angular/forms'; + +interface PasswordField { + title: string, + name: string, + required: boolean +} + +@Component({ + selector: 'observation-edit-password', + templateUrl: './observation-edit-password.component.html', + styleUrls: ['./observation-edit-password.component.scss'] +}) +export class ObservationEditPasswordComponent { + @Input() formGroup: UntypedFormGroup + @Input() definition: PasswordField +} diff --git a/web-app/admin/src/app/observation/observation-edit/observation-edit-radio/observation-edit-radio.component.html b/web-app/admin/src/app/observation/observation-edit/observation-edit-radio/observation-edit-radio.component.html new file mode 100644 index 000000000..d59d529d4 --- /dev/null +++ b/web-app/admin/src/app/observation/observation-edit/observation-edit-radio/observation-edit-radio.component.html @@ -0,0 +1,13 @@ +
+ + + + {{choice.title}} + + + + {{definition.title}} is required + + + +
diff --git a/web-app/admin/src/app/observation/observation-edit/observation-edit-radio/observation-edit-radio.component.scss b/web-app/admin/src/app/observation/observation-edit/observation-edit-radio/observation-edit-radio.component.scss new file mode 100644 index 000000000..2ff5e9ecd --- /dev/null +++ b/web-app/admin/src/app/observation/observation-edit/observation-edit-radio/observation-edit-radio.component.scss @@ -0,0 +1,24 @@ +// Undo Bootstrap styles +:host ::ng-deep label { + max-width: unset; + margin-bottom: unset; + font-weight: unset +} + +.radio-group { + display: flex; + flex-direction: column; + margin-top: 8px; + margin-bottom: 16px; +} + +.radio-button { + margin: 5px; +} + +.mat-error { + font-size: 75%; + margin-top: 8px; + margin-left: 28px; + height: 14px; +} \ No newline at end of file diff --git a/web-app/admin/src/app/observation/observation-edit/observation-edit-radio/observation-edit-radio.component.spec.ts b/web-app/admin/src/app/observation/observation-edit/observation-edit-radio/observation-edit-radio.component.spec.ts new file mode 100644 index 000000000..ab224f2df --- /dev/null +++ b/web-app/admin/src/app/observation/observation-edit/observation-edit-radio/observation-edit-radio.component.spec.ts @@ -0,0 +1,115 @@ +import { ChangeDetectionStrategy, Component, ViewChild } from '@angular/core' +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing' +import { UntypedFormControl, UntypedFormGroup, FormsModule, ReactiveFormsModule, Validators } from '@angular/forms' +import { MatError, MatFormFieldModule } from '@angular/material/form-field'; +import { MatRadioModule } from '@angular/material/radio'; +import { By } from '@angular/platform-browser' + +import { ObservationEditRadioComponent } from './observation-edit-radio.component' + +@Component({ + selector: `host-component`, + template: ``, + changeDetection: ChangeDetectionStrategy.OnPush +}) +class TestHostComponent { + formGroup = new UntypedFormGroup({ + radio: new UntypedFormControl() + }) + + definition = { + title: 'Radio', + name: 'radio', + choices: [{ + title: 'choice1' + },{ + title: 'choice2' + }] + } + + @ViewChild(ObservationEditRadioComponent) component: ObservationEditRadioComponent +} + +describe('ObservationEditRadioComponent', () => { + let component: ObservationEditRadioComponent + let hostComponent: TestHostComponent + let fixture: ComponentFixture + + beforeEach(waitForAsync(() => { + TestBed.configureTestingModule({ + imports: [FormsModule, ReactiveFormsModule, MatFormFieldModule, MatRadioModule], + declarations: [ObservationEditRadioComponent, TestHostComponent] + }) + .compileComponents() + })) + + beforeEach(() => { + fixture = TestBed.createComponent(TestHostComponent) + hostComponent = fixture.componentInstance + fixture.detectChanges(); + component = hostComponent.component + }) + + it('should create', () => { + expect(component).toBeTruthy() + }) + + it('should not indicate required', async () => { + component.definition.required = false + + const control = component.formGroup.get('radio') + control.clearValidators() + control.updateValueAndValidity() + + fixture.detectChanges() + await fixture.whenStable() + + expect(control.valid).toBe(true) + const error = fixture.debugElement.query(By.directive(MatError)).query(By.css('span')) + expect(error.nativeElement.attributes.getNamedItem('hidden')).toBeTruthy() + }) + + it('should indicate required', async () => { + component.definition.required = true + + const control = component.formGroup.get('radio') + control.setValidators(Validators.required) + control.updateValueAndValidity() + + fixture.detectChanges() + await fixture.whenStable() + + expect(control.valid).toBe(false) + }) + + it('should show error on invalid and touched', async () => { + component.definition.required = true + + const control = component.formGroup.get('radio') + control.setValidators(Validators.required) + control.updateValueAndValidity() + control.markAsTouched() + + fixture.detectChanges() + await fixture.whenStable() + + expect(control.valid).toBe(false) + const error = fixture.debugElement.query(By.directive(MatError)).query(By.css('span')) + expect(error.nativeElement.innerText).toBe('Radio is required') + }) + + it('should not show error on invalid if not touched', async () => { + component.definition.required = true + + const control = component.formGroup.get('radio') + control.setValidators(Validators.required) + control.updateValueAndValidity() + + fixture.detectChanges() + await fixture.whenStable() + + expect(control.valid).toBe(false) + const error = fixture.debugElement.query(By.directive(MatError)).query(By.css('span')) + expect(error.nativeElement.attributes.getNamedItem('hidden')).toBeTruthy() + }) +}); diff --git a/web-app/admin/src/app/observation/observation-edit/observation-edit-radio/observation-edit-radio.component.ts b/web-app/admin/src/app/observation/observation-edit/observation-edit-radio/observation-edit-radio.component.ts new file mode 100644 index 000000000..1c6ec35cb --- /dev/null +++ b/web-app/admin/src/app/observation/observation-edit/observation-edit-radio/observation-edit-radio.component.ts @@ -0,0 +1,22 @@ +import { Component, Input } from '@angular/core'; +import { UntypedFormGroup } from '@angular/forms'; + +/** + * TODO: move to forms model module (which doesn't exist yet) + */ +interface RadioField { + title: string, + name: string, + required: boolean, + choices: { title: string }[] +} + +@Component({ + selector: 'observation-edit-radio', + templateUrl: './observation-edit-radio.component.html', + styleUrls: ['./observation-edit-radio.component.scss'] +}) +export class ObservationEditRadioComponent { + @Input() formGroup: UntypedFormGroup + @Input() definition: RadioField +} diff --git a/web-app/admin/src/app/observation/observation-edit/observation-edit-select/observation-edit-select.component.html b/web-app/admin/src/app/observation/observation-edit/observation-edit-select/observation-edit-select.component.html new file mode 100644 index 000000000..b234792b5 --- /dev/null +++ b/web-app/admin/src/app/observation/observation-edit/observation-edit-select/observation-edit-select.component.html @@ -0,0 +1,14 @@ + + {{definition.title}} + + + + + + + + {{choice.title}} + + + You must enter a value + diff --git a/web-app/admin/src/app/observation/observation-edit/observation-edit-select/observation-edit-select.component.scss b/web-app/admin/src/app/observation/observation-edit/observation-edit-select/observation-edit-select.component.scss new file mode 100644 index 000000000..f7b82f8b9 --- /dev/null +++ b/web-app/admin/src/app/observation/observation-edit/observation-edit-select/observation-edit-select.component.scss @@ -0,0 +1,4 @@ +mat-form-field { + width: 100%; + margin-bottom: 16px; +} \ No newline at end of file diff --git a/web-app/admin/src/app/observation/observation-edit/observation-edit-select/observation-edit-select.component.spec.ts b/web-app/admin/src/app/observation/observation-edit/observation-edit-select/observation-edit-select.component.spec.ts new file mode 100644 index 000000000..17f78a6e1 --- /dev/null +++ b/web-app/admin/src/app/observation/observation-edit/observation-edit-select/observation-edit-select.component.spec.ts @@ -0,0 +1,111 @@ +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; +import { ChangeDetectionStrategy, Component, ViewChild } from '@angular/core'; + +import { ObservationEditSelectComponent } from './observation-edit-select.component'; +import { By } from '@angular/platform-browser'; +import { UntypedFormControl, UntypedFormGroup, FormsModule, ReactiveFormsModule, Validators } from '@angular/forms'; +import { NgxMatSelectSearchModule } from 'ngx-mat-select-search'; +import { NoopAnimationsModule } from '@angular/platform-browser/animations'; +import { MatError } from '@angular/material/form-field'; +import { MatInputModule } from '@angular/material/input'; +import { MatSelectModule } from '@angular/material/select'; + +@Component({ + template: ``, + changeDetection: ChangeDetectionStrategy.OnPush +}) +class TestHostComponent { + formGroup = new UntypedFormGroup({ + select: new UntypedFormControl() + }) + + definition = { + name: 'select', + title: 'Colors', + choices: [{ + title: 'red' + },{ + title: 'green' + },{ + title: 'blue' + }] + } + + @ViewChild(ObservationEditSelectComponent) component: ObservationEditSelectComponent +} + +describe('ObservationEditSelectComponent', () => { + let component: ObservationEditSelectComponent + let hostComponent: TestHostComponent + let fixture: ComponentFixture + + beforeEach(waitForAsync(() => { + TestBed.configureTestingModule({ + imports: [NoopAnimationsModule, FormsModule, ReactiveFormsModule, NgxMatSelectSearchModule, MatInputModule, MatSelectModule], + declarations: [ObservationEditSelectComponent, TestHostComponent] + }) + .compileComponents() + })) + + beforeEach(() => { + fixture = TestBed.createComponent(TestHostComponent) + hostComponent = fixture.componentInstance + fixture.detectChanges(); + component = hostComponent.component + }) + + it('should create', () => { + expect(component).toBeTruthy() + }) + + it('should not indicate required', async () => { + component.definition.required = false + + const control = component.formGroup.get('select') + control.clearValidators() + control.updateValueAndValidity() + + fixture.detectChanges() + await fixture.whenStable() + + expect(control.valid).toBe(true) + const error = fixture.debugElement.query(By.directive(MatError)) + expect(error).toBeNull() + }) + + it('should indicate required', async () => { + component.definition.required = true + + const control = component.formGroup.get('select') + control.setValidators(Validators.required) + control.updateValueAndValidity() + + fixture.detectChanges() + await fixture.whenStable() + + expect(control.valid).toBe(false) + }) + + // it('should show error on invalid and touched', async () => { + // component.definition.required = true + + // const input = fixture.debugElement.query(By.directive(MatSelect)).references['dropdown'] + // input.control.markAsTouched() + + // fixture.detectChanges() + // await fixture.whenStable() + + // const error = fixture.debugElement.query(By.directive(MatError)) + // expect(error.nativeElement.innerText).toBe('You must enter a value') + // }) + + // it('should not show error on invalid if not touched', async () => { + // component.definition.required = true + + // fixture.detectChanges() + // await fixture.whenStable() + + // const error = fixture.debugElement.query(By.directive(MatError)) + // expect(error).toBeNull() + // }) +}); diff --git a/web-app/admin/src/app/observation/observation-edit/observation-edit-select/observation-edit-select.component.ts b/web-app/admin/src/app/observation/observation-edit/observation-edit-select/observation-edit-select.component.ts new file mode 100644 index 000000000..286a8884c --- /dev/null +++ b/web-app/admin/src/app/observation/observation-edit/observation-edit-select/observation-edit-select.component.ts @@ -0,0 +1,56 @@ +import { Component, OnInit, Input, Output, EventEmitter } from '@angular/core'; +import { UntypedFormControl, UntypedFormGroup } from '@angular/forms'; +import { MatSelectChange } from '@angular/material/select'; +import { Observable } from 'rxjs'; +import { map, startWith } from 'rxjs/operators'; + +export interface Choice { + title: string; +} + +interface SelectField { + title: string, + name: string, + required: boolean, + choices: Choice[] +} + +@Component({ + selector: 'observation-edit-dropdown', + templateUrl: './observation-edit-select.component.html', + styleUrls: ['./observation-edit-select.component.scss'] +}) +export class ObservationEditSelectComponent implements OnInit { + @Input() formGroup: UntypedFormGroup + @Input() definition: SelectField + + @Output() selectionChange = new EventEmitter<{value: any}>(); + + searchControl: UntypedFormControl = new UntypedFormControl(); + filteredChoices: Observable; + + ngOnInit(): void { + this.filteredChoices = this.searchControl.valueChanges.pipe( + startWith(''), + map(value => { + return !value || typeof value === 'string' ? value : value.title + }), + map(title => { + return title ? this.filter(title) : this.definition.choices.slice() + }) + ); + } + + onSelectionChange(event: MatSelectChange): void { + this.selectionChange.emit({ + value: event.value + }) + } + + private filter(title: string): Choice[] { + const filterValue = title.toLowerCase(); + + return this.definition.choices.filter(option => option.title.toLowerCase().indexOf(filterValue) === 0); + } + +} diff --git a/web-app/admin/src/app/observation/observation-edit/observation-edit-text/observation-edit-text.component.html b/web-app/admin/src/app/observation/observation-edit/observation-edit-text/observation-edit-text.component.html new file mode 100644 index 000000000..4ec8a2559 --- /dev/null +++ b/web-app/admin/src/app/observation/observation-edit/observation-edit-text/observation-edit-text.component.html @@ -0,0 +1,7 @@ +
+ + {{definition.title}} + + You must enter a value + +
\ No newline at end of file diff --git a/web-app/admin/src/app/observation/observation-edit/observation-edit-text/observation-edit-text.component.scss b/web-app/admin/src/app/observation/observation-edit/observation-edit-text/observation-edit-text.component.scss new file mode 100644 index 000000000..f7b82f8b9 --- /dev/null +++ b/web-app/admin/src/app/observation/observation-edit/observation-edit-text/observation-edit-text.component.scss @@ -0,0 +1,4 @@ +mat-form-field { + width: 100%; + margin-bottom: 16px; +} \ No newline at end of file diff --git a/web-app/admin/src/app/observation/observation-edit/observation-edit-text/observation-edit-text.component.spec.ts b/web-app/admin/src/app/observation/observation-edit/observation-edit-text/observation-edit-text.component.spec.ts new file mode 100644 index 000000000..3f4e42fee --- /dev/null +++ b/web-app/admin/src/app/observation/observation-edit/observation-edit-text/observation-edit-text.component.spec.ts @@ -0,0 +1,87 @@ +import { Component, ViewChild } from '@angular/core'; +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; +import { FormsModule, ReactiveFormsModule } from '@angular/forms'; +import { MatError, MatFormField, MatFormFieldModule } from '@angular/material/form-field'; +import { MatInput, MatInputModule } from '@angular/material/input'; +import { By } from '@angular/platform-browser'; +import { NoopAnimationsModule } from '@angular/platform-browser/animations'; + +import { ObservationEditTextComponent } from './observation-edit-text.component'; + +@Component({ + selector: `host-component`, + template: `` +}) +class TestHostComponent { + + field = { + title: 'Text', + name: 'field1' + } + + @ViewChild(ObservationEditTextComponent) component: ObservationEditTextComponent +} + +/* TODO test MUST contain at least 1 test +describe('ObservationEditTextComponent', () => { + let component: ObservationEditTextComponent + let hostComponent: TestHostComponent + let fixture: ComponentFixture + + beforeEach(waitForAsync(() => { + TestBed.configureTestingModule({ + imports: [FormsModule, ReactiveFormsModule, MatFormFieldModule, MatInputModule, NoopAnimationsModule], + declarations: [ObservationEditTextComponent, TestHostComponent] + }) + .compileComponents() + })) + + beforeEach(() => { + fixture = TestBed.createComponent(TestHostComponent) + hostComponent = fixture.componentInstance + fixture.detectChanges(); + component = hostComponent.component + }) + + // it('should create', () => { + // expect(component).toBeTruthy() + // }) + + // it('should not indicate required', () => { + // component.definition.required = false + // fixture.detectChanges() + // const input = fixture.debugElement.query(By.directive(MatFormField)).componentInstance + // expect(input._control.required).toBeFalsy() + // }) + + // it('should indicate required', () => { + // component.definition.required = true + // fixture.detectChanges() + // const input = fixture.debugElement.query(By.directive(MatFormField)).componentInstance + // expect(input._control.required).toBeTruthy() + // }) + + // it('should show error on invalid and touched', async () => { + // component.definition.required = true + + // const input = fixture.debugElement.query(By.directive(MatInput)).references['text'] + // input.control.markAsTouched() + + // fixture.detectChanges() + // await fixture.whenStable() + + // const error = fixture.debugElement.query(By.directive(MatError)) + // expect(error.nativeElement.innerText).toBe('You must enter a value') + // }) + + // it('should not show error on invalid if not touched', async () => { + // component.definition.required = true + + // fixture.detectChanges() + // await fixture.whenStable() + + // const error = fixture.debugElement.query(By.directive(MatError)) + // expect(error).toBeNull() + // }) +}); +*/ diff --git a/web-app/admin/src/app/observation/observation-edit/observation-edit-text/observation-edit-text.component.ts b/web-app/admin/src/app/observation/observation-edit/observation-edit-text/observation-edit-text.component.ts new file mode 100644 index 000000000..c75b6f638 --- /dev/null +++ b/web-app/admin/src/app/observation/observation-edit/observation-edit-text/observation-edit-text.component.ts @@ -0,0 +1,18 @@ +import { Component, Input } from '@angular/core'; +import { UntypedFormGroup } from '@angular/forms'; + +interface TextField { + title: string, + name: string, + required: boolean +} + +@Component({ + selector: 'observation-edit-text', + templateUrl: './observation-edit-text.component.html', + styleUrls: ['./observation-edit-text.component.scss'] +}) +export class ObservationEditTextComponent { + @Input() formGroup: UntypedFormGroup + @Input() definition: TextField +} diff --git a/web-app/admin/src/app/observation/observation-edit/observation-edit-textarea/observation-edit-textarea.component.html b/web-app/admin/src/app/observation/observation-edit/observation-edit-textarea/observation-edit-textarea.component.html new file mode 100644 index 000000000..0bb423f59 --- /dev/null +++ b/web-app/admin/src/app/observation/observation-edit/observation-edit-textarea/observation-edit-textarea.component.html @@ -0,0 +1,8 @@ +
+ + {{definition.title}} + + You must enter a value + +
+ diff --git a/web-app/admin/src/app/observation/observation-edit/observation-edit-textarea/observation-edit-textarea.component.scss b/web-app/admin/src/app/observation/observation-edit/observation-edit-textarea/observation-edit-textarea.component.scss new file mode 100644 index 000000000..f7b82f8b9 --- /dev/null +++ b/web-app/admin/src/app/observation/observation-edit/observation-edit-textarea/observation-edit-textarea.component.scss @@ -0,0 +1,4 @@ +mat-form-field { + width: 100%; + margin-bottom: 16px; +} \ No newline at end of file diff --git a/web-app/admin/src/app/observation/observation-edit/observation-edit-textarea/observation-edit-textarea.component.spec.ts b/web-app/admin/src/app/observation/observation-edit/observation-edit-textarea/observation-edit-textarea.component.spec.ts new file mode 100644 index 000000000..8610ca3e4 --- /dev/null +++ b/web-app/admin/src/app/observation/observation-edit/observation-edit-textarea/observation-edit-textarea.component.spec.ts @@ -0,0 +1,112 @@ +import { ChangeDetectionStrategy, Component, ViewChild } from '@angular/core'; +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; +import { UntypedFormControl, UntypedFormGroup, FormsModule, ReactiveFormsModule, Validators } from '@angular/forms'; +import { MatError, MatFormFieldModule } from '@angular/material/form-field'; +import { MatInputModule } from '@angular/material/input'; +import { By } from '@angular/platform-browser'; +import { NoopAnimationsModule } from '@angular/platform-browser/animations'; + +import { ObservationEditTextareaComponent } from './observation-edit-textarea.component'; + +@Component({ + selector: `host-component`, + template: ``, + changeDetection: ChangeDetectionStrategy.OnPush +}) +class TestHostComponent { + formGroup = new UntypedFormGroup({ + text: new UntypedFormControl() + }) + + definition = { + name: 'text', + title: 'Text Field', + required: true + } + + @ViewChild(ObservationEditTextareaComponent) component: ObservationEditTextareaComponent +} + +describe('ObservationEditTextareaComponent', () => { + let component: ObservationEditTextareaComponent + let hostComponent: TestHostComponent + let fixture: ComponentFixture + + beforeEach(waitForAsync(() => { + TestBed.configureTestingModule({ + imports: [FormsModule, ReactiveFormsModule, MatFormFieldModule, MatInputModule, NoopAnimationsModule], + declarations: [ObservationEditTextareaComponent, TestHostComponent] + }) + .compileComponents() + })) + + beforeEach(() => { + fixture = TestBed.createComponent(TestHostComponent) + hostComponent = fixture.componentInstance + fixture.detectChanges(); + component = hostComponent.component + }) + + it('should create', () => { + expect(component).toBeTruthy() + }) + + it('should not indicate required', async () => { + component.definition.required = false + + const control = component.formGroup.get('text') + control.clearValidators() + control.updateValueAndValidity() + + fixture.detectChanges() + await fixture.whenStable() + + expect(control.valid).toBe(true) + const error = fixture.debugElement.query(By.directive(MatError)) + expect(error).toBeNull() + }) + + it('should indicate required', async () => { + component.definition.required = true + + const control = component.formGroup.get('text') + control.setValidators(Validators.required) + control.updateValueAndValidity() + + fixture.detectChanges() + await fixture.whenStable() + + expect(control.valid).toBe(false) + }) + + it('should show error on invalid and touched', async () => { + component.definition.required = true + + const control = component.formGroup.get('text') + control.setValidators(Validators.required) + control.updateValueAndValidity() + control.markAsTouched() + + fixture.detectChanges() + await fixture.whenStable() + + expect(control.valid).toBe(false) + const error = fixture.debugElement.query(By.directive(MatError)) + expect(error.nativeElement.innerText).toBe('You must enter a value') + }) + + it('should not show error on invalid if not touched', async () => { + component.definition.required = true + + const control = component.formGroup.get('text') + control.setValidators(Validators.required) + control.updateValueAndValidity() + + fixture.detectChanges() + await fixture.whenStable() + + expect(control.valid).toBe(false) + const error = fixture.debugElement.query(By.directive(MatError)) + expect(error).toBeNull() + }) +}); diff --git a/web-app/admin/src/app/observation/observation-edit/observation-edit-textarea/observation-edit-textarea.component.ts b/web-app/admin/src/app/observation/observation-edit/observation-edit-textarea/observation-edit-textarea.component.ts new file mode 100644 index 000000000..cdc3402c9 --- /dev/null +++ b/web-app/admin/src/app/observation/observation-edit/observation-edit-textarea/observation-edit-textarea.component.ts @@ -0,0 +1,18 @@ +import { Component, Input } from '@angular/core'; +import { UntypedFormGroup } from '@angular/forms'; + +interface TextareaField { + title: string, + name: string, + required: boolean +} + +@Component({ + selector: 'observation-edit-textarea', + templateUrl: './observation-edit-textarea.component.html', + styleUrls: ['./observation-edit-textarea.component.scss'] +}) +export class ObservationEditTextareaComponent { + @Input() formGroup: UntypedFormGroup + @Input() definition: TextareaField +} diff --git a/web-app/admin/src/app/observation/observation-edit/observation-edit.component.html b/web-app/admin/src/app/observation/observation-edit/observation-edit.component.html new file mode 100644 index 000000000..cb6de3fbb --- /dev/null +++ b/web-app/admin/src/app/observation/observation-edit/observation-edit.component.html @@ -0,0 +1,81 @@ +
+ + + + + + + + + + + +
+
+
+
+
Invalid observation, correct the following errors.
+
{{error?.message}}
+
+
+ +
+ +
+
+ +
+ + + + + + + +
+ +
+ + +
+ +
+
+
+
+
+
+
+ +
+ +
+ +
+
+ + +
+ insert_drive_file +
No Attachments
+
+
\ No newline at end of file diff --git a/web-app/admin/src/app/observation/observation-edit/observation-edit.component.scss b/web-app/admin/src/app/observation/observation-edit/observation-edit.component.scss new file mode 100644 index 000000000..14fd92020 --- /dev/null +++ b/web-app/admin/src/app/observation/observation-edit/observation-edit.component.scss @@ -0,0 +1,138 @@ +.navigation { + display: flex; +} + +.navigation__icon { + margin-right: 24px; +} + +.navigation__title { + flex: 1 1 auto; +} + +.observation { + margin-top: 16px; +} + +.form { + margin: 0 8px 8px 8px; +} + +.edit-content { + position: absolute; + top: 64px; + bottom: 0; + width: 100%; + overflow-y: auto; + padding-bottom: 54px; +} + +.edit-content--scroll-lock { + overflow-y: hidden; +} + +.edit-banner { + background: #e7e7e7; + border-bottom: 1px solid rgba($color: #000000, $alpha: .12); + display: flex; + flex-direction: column; + position: sticky; + top: 0; + z-index: 1; +} + +.edit-banner-container { + margin: 16px; + display: flex; + flex-direction: row; +} + +.edit-banner-content { + display: flex; + flex-direction: column; +} + +.edit-banner-content__title { + margin-bottom: 8px; + font-size: 16px; + color: rgba(213, 0, 0, 1); +} + +.edit-banner-content__summary { + font-size: 16px; + white-space: pre-wrap; + color: rgba($color: #000000, $alpha: .87); +} + +.edit-banner-actions { + display: flex; + justify-content: flex-end; + margin-right: 8px; + margin-bottom: 8px; +} + +.edit-progress { + z-index: 1; +} + +.form-mask { + background: black; + position: absolute; + top: 0; + bottom: 0; + right: 0; + left: 0; + opacity: .2; +} + +.add-form { + position: absolute; + bottom: 16px; + right: 16px; +} + +.extended-fab-button { + width: unset; + padding: 0 16px; + border-radius: 24px; + height: 48px; + + .mat-icon { + margin-right: 12px; + color: white; + } + + .extended-fab-button__text { + font-weight: 500; + letter-spacing: .1em; + text-transform: uppercase; + color: white; + } +} + +:host .extended-fab-button > ::ng-deep.mat-button-wrapper { + padding: unset; +} + +.edit-forms { + padding-bottom: 16px; +} + +.form-drag-handle { + font-size: 16px; + width: 16px; + height: 16px; + color: rgba(0, 0, 0, 0.6); +} + +.cdk-drag-placeholder { + opacity: 0; +} + +.cdk-drop-list-dragging { + cursor: grabbing !important; +} + +.cdk-drag-handle { + cursor: grab; +} \ No newline at end of file diff --git a/web-app/admin/src/app/observation/observation-edit/observation-edit.component.spec.ts b/web-app/admin/src/app/observation/observation-edit/observation-edit.component.spec.ts new file mode 100644 index 000000000..fe71091ae --- /dev/null +++ b/web-app/admin/src/app/observation/observation-edit/observation-edit.component.spec.ts @@ -0,0 +1,29 @@ +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; +import { MatDialogModule } from '@angular/material/dialog'; + +import { ObservationEditComponent } from './observation-edit.component'; + +/* TODO test MUST contain at least 1 test +describe('ObservationEditComponent', () => { + let component: ObservationEditComponent; + let fixture: ComponentFixture; + + beforeEach(waitForAsync(() => { + TestBed.configureTestingModule({ + imports: [MatDialogModule], + declarations: [ObservationEditComponent ] + }) + .compileComponents(); + })); + + beforeEach(() => { + fixture = TestBed.createComponent(ObservationEditComponent); + component = fixture.componentInstance; + fixture.detectChanges(); + }); + + // it('should create', () => { + // expect(component).toBeTruthy(); + // }); +}); +*/ diff --git a/web-app/admin/src/app/observation/observation-edit/observation-edit.component.ts b/web-app/admin/src/app/observation/observation-edit/observation-edit.component.ts new file mode 100644 index 000000000..5cf466773 --- /dev/null +++ b/web-app/admin/src/app/observation/observation-edit/observation-edit.component.ts @@ -0,0 +1,449 @@ +import { animate, style, transition, trigger } from '@angular/animations' +import { CdkDragDrop, moveItemInArray } from '@angular/cdk/drag-drop' +import { DOCUMENT } from '@angular/common' +import { Component, ElementRef, EventEmitter, Inject, Input, OnChanges, OnInit, Output, QueryList, SimpleChanges, ViewChild, ViewChildren } from '@angular/core' +import { UntypedFormArray, UntypedFormBuilder, UntypedFormControl, UntypedFormGroup, Validators } from '@angular/forms' +import { DomSanitizer } from '@angular/platform-browser' +import { first } from 'rxjs/operators' +import { EventService, FilterService, LocalStorageService, MapService, ObservationService, UserService } from '../../../app/upgrade/ajs-upgraded-providers' +import { ObservationEditFormPickerComponent } from './observation-edit-form-picker.component' +import * as moment from 'moment'; +import { ObservationEditDiscardComponent } from './observation-edit-discard/observation-edit-discard.component' +import { MatSnackBar, MatSnackBarRef, SimpleSnackBar } from '@angular/material/snack-bar' +import { MatIconRegistry } from '@angular/material/icon' +import { MatDialog } from '@angular/material/dialog' +import { MatBottomSheet } from '@angular/material/bottom-sheet' +import { AttachmentService, AttachmentUploadEvent, AttachmentUploadStatus } from '../attachment/attachment.service' +import { FileUpload } from '../attachment/attachment-upload/attachment-upload.component' +import { AttachmentAction } from './observation-edit-attachment/observation-edit-attachment-action' + +export type ObservationFormControl = UntypedFormControl & { definition: any } + +@Component({ + selector: 'observation-edit', + templateUrl: './observation-edit.component.html', + styleUrls: ['./observation-edit.component.scss'], + animations: [ + trigger('error', [ + transition(':enter', [ + style({ height: 0, opacity: 0 }), + animate('250ms', style({ height: '*', opacity: 1 })), + ]), + transition(':leave', [ + animate('250ms', style({ height: 0, opacity: 0 })) + ]) + ]), + trigger('mask', [ + transition(':enter', [ + style({ opacity: 0 }), + animate('250ms', style({ opacity: .2 })), + ]), + transition(':leave', [ + animate('250ms', style({ opacity: 0 })) + ]) + ]) + ] +}) +export class ObservationEditComponent implements OnInit, OnChanges { + @Input() preview: boolean + @Input() observation: any + attachments =[] + + @Output() close = new EventEmitter() + + @ViewChild('editContent', { static: true }) editContent: ElementRef + @ViewChild('dragHandle', { static: true }) dragHandle: ElementRef + @ViewChildren('form') formElements: QueryList + + event: any + formGroup: UntypedFormGroup + formDefinitions: any + timestampDefinition = { + title: '', + type: 'date', + name: 'timestamp', + required: true + } + geometryDefinition = { + title: 'Location', + type: 'geometry', + name: 'geometry', + required: true + } + + mask = false + saving = false + error: any + + uploads: FileUpload[] = [] + attachmentUrl: string + + isNewObservation: boolean + canDeleteObservation: boolean + observationForm = {} + formOptions = { expand: false } + + initialObservation: any + geometryStyle: any + + primaryField: any + primaryFieldValue: string + secondaryField: any + secondaryFieldValue: string + + formRemoveSnackbar: MatSnackBarRef + + constructor( + sanitizer: DomSanitizer, + matIconRegistry: MatIconRegistry, + public dialog: MatDialog, + private formBuilder: UntypedFormBuilder, + private bottomSheet: MatBottomSheet, + private snackBar: MatSnackBar, + private attachmentService: AttachmentService, + @Inject(DOCUMENT) private document: Document, + @Inject(MapService) private mapService: any, + @Inject(UserService) private userService: any, + @Inject(FilterService) private filterService: any, + @Inject(EventService) private eventService: any, + @Inject(ObservationService) private observationService: any, + @Inject(LocalStorageService) private localStorageService: any) { + + matIconRegistry.addSvgIcon('handle', sanitizer.bypassSecurityTrustResourceUrl('assets/images/handle-24px.svg')); + } + + ngOnInit(): void { + if (this.observation.id === 'new') { + this.formOptions.expand = true + } + + this.canDeleteObservation = this.observation.id !== 'new' && + (this.hasEventUpdatePermission() || this.isCurrentUsersObservation() || this.hasUpdatePermissionsInEventAcl()) + + this.attachmentService.upload$.subscribe(event => this.onAttachmentUpload(event)) + } + + ngOnChanges(changes: SimpleChanges): void { + if (changes.observation && changes.observation.currentValue) { + this.event = this.eventService.getEventById(this.observation.eventId) + this.formDefinitions = this.eventService.getFormsForEvent(this.event).reduce((map, form) => { + map[form.id] = form + return map + }, {}) + + this.isNewObservation = this.observation.id === 'new' + this.initialObservation = JSON.parse(JSON.stringify(this.observation)) + + if (this.observation.style) { + this.geometryStyle = JSON.parse(JSON.stringify(this.observation.style)) + } + + if (this.isNewObservation) { + this.mapService.addFeaturesToLayer([this.observation], 'observations') + } + + this.toFormGroup(this.observation) + this.updatePrimarySecondary() + } + } + + hasEventUpdatePermission(): boolean { + return this.userService.myself.role.permissions.includes('DELETE_OBSERVATION') + } + + isCurrentUsersObservation(): boolean { + return this.observation.userId === this.userService.myself.id + } + + hasUpdatePermissionsInEventAcl(): boolean { + const myAccess = this.filterService.getEvent().acl[this.userService.myself.id] || {} + const aclPermissions = myAccess.permissions || [] + return aclPermissions.includes('update') + } + + token(): string { + return this.localStorageService.getToken() + } + + // TODO multi-form build out validators here as well for each form control + toFormGroup(observation: any): void { + const timestampControl = new UntypedFormControl(moment(observation.properties.timestamp).toDate(), Validators.required); + const geometryControl = new UntypedFormControl(observation.geometry, Validators.required); + + const formArray = new UntypedFormArray([]) + const observationForms = observation.properties.forms || [] + observationForms.forEach(observationForm => { + const formDefinition = this.formDefinitions[observationForm.formId] + const fieldGroup = new UntypedFormGroup({ + id: new UntypedFormControl(observationForm.id), + formId: new UntypedFormControl(formDefinition.id) + }) + + formDefinition.fields + .filter(field => !field.archived) + .sort((a, b) => a.id - b.id) + .forEach(field => { + const value = this.isNewObservation ? field.value : observationForm[field.name] + const fieldControl = new UntypedFormControl(value, field.required ? Validators.required : null) + fieldGroup.addControl(field.name, fieldControl) + }) + + formArray.push(fieldGroup) + }) + + this.formGroup = this.formBuilder.group({ + id: observation.id, + eventId: new UntypedFormControl(observation.eventId), + type: new UntypedFormControl(observation.type), + geometry: geometryControl, + properties: new UntypedFormGroup({ + timestamp: timestampControl, + forms: formArray + }) + }) + + if (observation.properties.forms.length === 0 && this.hasForms() && observation.id === 'new') { + this.pickForm() + } + } + + updatePrimarySecondary(): void { + const forms = this.formGroup.get('properties').get('forms') as UntypedFormArray + if (forms.length) { + const primaryFormGroup = forms.at(0) as UntypedFormGroup + const definition = this.formDefinitions[primaryFormGroup.get('formId').value] + + let primaryFieldValue + if (primaryFormGroup.contains(definition.primaryFeedField)) { + this.primaryField = definition.fields.find(field => field.name === definition.primaryFeedField) + primaryFieldValue = primaryFormGroup.get(definition.primaryFeedField).value + } + + let secondaryFieldValue + if (primaryFormGroup.contains(definition.secondaryFeedField)) { + this.secondaryField = definition.fields.find(field => field.name === definition.secondaryFeedField) + secondaryFieldValue = primaryFormGroup.get(definition.secondaryFeedField).value + } + + if ((this.primaryField && primaryFieldValue !== this.primaryFieldValue) || + ((this.secondaryField && secondaryFieldValue !== this.secondaryFieldValue))) { + this.primaryFieldValue = this.primaryField ? primaryFieldValue : null + this.secondaryFieldValue = this.secondaryField ? secondaryFieldValue : null + + const observation = this.formGroup.value + + const style = this.observationService.getObservationStyleForForm(observation, this.event, definition) + observation.style = style + this.geometryStyle = style + + this.mapService.updateFeatureForLayer(observation, 'Observations') + } + } + } + + save(): void { + if (this.formRemoveSnackbar) { + this.formRemoveSnackbar.dismiss() + } + + this.saving = true + this.uploads = [] + + // TODO look at this: this is a hack that will be corrected when we pull ids from the server + const form = this.formGroup.getRawValue() + const id = form.id; + if (form.id === 'new') { + delete form.id + } + + this.eventService.saveObservation(form).then(observation => { + // If this feature was added to the map as a new observation, remove it + // as the event service will add it back to the map based on it new id + // if it passes the current filter. + if (id === 'new') { + this.mapService.removeFeatureFromLayer({ id: id }, 'observations') + } + + this.error = null + this.observation = observation + this.formGroup.get('id').setValue(observation.id) + + form.properties.forms.forEach(form => { + const formDefinition = this.formDefinitions[form.formId]; + Object.keys(form).forEach(fieldName => { + const fieldDefinition = formDefinition.fields.find(field => field.name === fieldName); + const value = form[fieldName]; + if (fieldDefinition && fieldDefinition.type === 'attachment' && Array.isArray(value)) { + value.forEach(fieldAttachment => { + const attachment = observation.attachments.find(attachment => { + return !attachment.url && + attachment.name === fieldAttachment.name && + attachment.contentType == fieldAttachment.contentType + }); + + if (fieldAttachment.file && fieldAttachment.action === AttachmentAction.ADD && attachment) { + fieldAttachment.attachmentId = attachment.id + this.uploads.push(attachment) + } + }) + } + }) + }) + + if (this.uploads.length) { + this.attachmentUrl = observation.url + } else { + this.close.emit(this.observation) + } + }, err => { + this.formGroup.markAllAsTouched() + + if (id === 'new') { + this.observation.id = 'new' + } + + this.saving = false; + this.error = { + message: err.data.message + } + }) + } + + cancel(): void { + this.observation.geometry = this.initialObservation.geometry; + if (this.observation.id !== 'new') { + this.mapService.updateFeatureForLayer(this.observation, 'observations') + } else { + this.mapService.removeFeatureFromLayer(this.observation, 'observations') + } + + if (this.formRemoveSnackbar) { + this.formRemoveSnackbar.dismiss() + } + + this.dialog.open(ObservationEditDiscardComponent, { + width: '300px', + autoFocus: false, + position: { left: '75px' } + }).afterClosed().subscribe(result => { + if (result === 'discard') { + this.close.emit() + } + }) + } + + hasForms(): boolean { + const definitions = this.formDefinitions || {} + return Object.keys(definitions).length > 0 + } + + onGeometryEdit(event): void { + this.mask = event.action === 'edit'; + + if (this.mask) { + const elementBounds = event.source.nativeElement.getBoundingClientRect(); + const parentBounds = this.editContent.nativeElement.getBoundingClientRect(); + if (elementBounds.top < parentBounds.top || elementBounds.bottom > parentBounds.bottom) { + event.source.nativeElement.scrollIntoView({ behavior: "smooth", block: "nearest" }); + } + } + } + + pickForm(): void { + this.formOptions.expand = true + this.bottomSheet.open(ObservationEditFormPickerComponent, { + panelClass: 'feed-panel' + }).afterDismissed().subscribe(form => { + if (!form) return + + const fieldsGroup = new UntypedFormGroup({ + formId: new UntypedFormControl(form.id) + }); + + form.fields + .filter(field => !field.archived) + .sort((a, b) => a.id - b.id) + .forEach(field => { + const fieldControl = new UntypedFormControl(field.value, field.required ? Validators.required : null) + fieldsGroup.addControl(field.name, fieldControl) + }); + + (this.formGroup.get('properties').get('forms') as UntypedFormArray).push(fieldsGroup); + + this.formElements.changes.pipe(first()).subscribe((queryList: QueryList) => { + queryList.last.nativeElement.scrollIntoView({ behavior: 'smooth' }) + }) + }) + } + + removeForm(formGroup: UntypedFormGroup): void { + const formArray = this.formGroup.get('properties').get('forms') as UntypedFormArray + const index = formArray.controls.indexOf(formGroup) + formArray.removeAt(index) + + this.formRemoveSnackbar = this.snackBar.open('Form Deleted', 'UNDO', { + duration: 5000, + panelClass: 'form-remove-snackbar', + }) + + this.formRemoveSnackbar.onAction().subscribe(() => { + formArray.insert(index, formGroup) + }) + } + + reorderForm(event: CdkDragDrop): void { + if (event.currentIndex === event.previousIndex) return + + const forms = (this.formGroup.get('properties').get('forms') as UntypedFormArray).controls + moveItemInArray(forms, event.previousIndex, event.currentIndex) + + // re-calculate primary/secondary based new first form + if (event.currentIndex === 0 || event.previousIndex === 0) { + this.updatePrimarySecondary() + } + } + + dragStart(event: DragEvent): void { + this.document.body.classList.add('item-drag') + } + + dragEnd(event: DragEvent): void { + this.document.body.classList.remove('item-drag') + } + + private onAttachmentUpload(event: AttachmentUploadEvent): void { + switch (event.status) { + case AttachmentUploadStatus.COMPLETE: { + this.eventService.addAttachmentToObservation(this.observation, event.response) + + this.uploads = this.uploads.filter(attachment => attachment.id !== event.upload.attachmentId) + if (this.uploads.length === 0) { + this.saving = false + this.close.emit(this.observation) + } + + break; + } + case AttachmentUploadStatus.ERROR: { + this.snackBar.open(event.response?.error, null, { duration: 4000 }) + + const formArray = this.formGroup.get('properties').get('forms') as UntypedFormArray + formArray.controls.forEach((formGroup: UntypedFormGroup) => { + const formId = formGroup.get('formId').value + const formDefinition = this.formDefinitions[formId]; + Object.keys(formGroup.controls).forEach(fieldName => { + const fieldDefinition = formDefinition.fields.find(field => field.name === fieldName); + if (fieldDefinition && fieldDefinition.type === 'attachment') { + let attachments = formGroup.get(fieldName).value || [] + attachments = attachments.filter(attachment => attachment.attachmentId !== event.upload.attachmentId) + formGroup.get(fieldName).setValue(attachments) + } + }) + }) + + this.saving = false; + break; + } + } + } +} diff --git a/web-app/admin/src/app/observation/observation-edit/observation-edit.ts b/web-app/admin/src/app/observation/observation-edit/observation-edit.ts new file mode 100644 index 000000000..3e754af2e --- /dev/null +++ b/web-app/admin/src/app/observation/observation-edit/observation-edit.ts @@ -0,0 +1,14 @@ +export * from './observation-edit-checkbox/observation-edit-checkbox.component' +export * from './observation-edit-date/observation-edit-date.component' +export * from './observation-edit-select/observation-edit-select.component' +export * from './observation-edit-email/observation-edit-email.component' +export * from './observation-edit-geometry/observation-edit-geometry.component' +export * from './observation-edit-geometry/observation-edit-geometry-form.component' +export * from './observation-edit-geometry/observation-edit-geometry-map.component' +export * from './observation-edit-multiselect/observation-edit-multiselect.component' +export * from './observation-edit-number/observation-edit-number.component' +export * from './observation-edit-radio/observation-edit-radio.component' +export * from './observation-edit-text/observation-edit-text.component' +export * from './observation-edit-textarea/observation-edit-textarea.component' +export * from './observation-edit-form.component' +export * from './observation-edit.component' \ No newline at end of file diff --git a/web-app/src/app/plugin/plugin.module.ts b/web-app/admin/src/app/plugin/plugin.module.ts similarity index 100% rename from web-app/src/app/plugin/plugin.module.ts rename to web-app/admin/src/app/plugin/plugin.module.ts diff --git a/web-app/src/app/plugin/plugin.service.spec.ts b/web-app/admin/src/app/plugin/plugin.service.spec.ts similarity index 99% rename from web-app/src/app/plugin/plugin.service.spec.ts rename to web-app/admin/src/app/plugin/plugin.service.spec.ts index eeb3657e2..139fa04e1 100644 --- a/web-app/src/app/plugin/plugin.service.spec.ts +++ b/web-app/admin/src/app/plugin/plugin.service.spec.ts @@ -37,7 +37,6 @@ describe('PluginService', () => { } service = new PluginService( mockClient as unknown as HttpClient, - compiler as unknown as Compiler, injector as unknown as Injector, system as unknown as SystemJS.Registry, localStorageService @@ -106,6 +105,7 @@ describe('PluginService', () => { '@angular/material/tree', 'rxjs', 'rxjs/operators', + '@ng-select/ng-select', '@ngageoint/mage.web-core-lib', '@ngageoint/mage.web-core-lib/common', '@ngageoint/mage.web-core-lib/feed', diff --git a/web-app/src/app/plugin/plugin.service.ts b/web-app/admin/src/app/plugin/plugin.service.ts similarity index 97% rename from web-app/src/app/plugin/plugin.service.ts rename to web-app/admin/src/app/plugin/plugin.service.ts index 11e9303b1..b33bfdc18 100644 --- a/web-app/src/app/plugin/plugin.service.ts +++ b/web-app/admin/src/app/plugin/plugin.service.ts @@ -57,6 +57,7 @@ import * as ngMatTooltip from '@angular/material/tooltip' import * as ngMatTree from '@angular/material/tree' import * as rxjs from 'rxjs' import * as rxjsOperators from 'rxjs/operators' +import * as ngSelect from '@ng-select/ng-select' import * as mageCore from '@ngageoint/mage.web-core-lib' import * as mageCoreCommon from '@ngageoint/mage.web-core-lib/common' import * as mageCoreFeed from '@ngageoint/mage.web-core-lib/feed' @@ -65,7 +66,7 @@ import * as mageCorePaging from '@ngageoint/mage.web-core-lib/paging' import * as mageCoreStaticIcon from '@ngageoint/mage.web-core-lib/static-icon' import * as mageCoreUser from '@ngageoint/mage.web-core-lib/user' -import { Inject, Injectable, Injector, NgModuleRef, Compiler } from '@angular/core' +import { Inject, Injectable, Injector, NgModuleRef, createNgModule } from '@angular/core' import { HttpClient } from '@angular/common/http' import { SystemJS, SYSTEMJS } from './systemjs.service' import { PluginHooks } from '@ngageoint/mage.web-core-lib/plugin' @@ -113,7 +114,6 @@ export class PluginService { constructor( private webClient: HttpClient, - private compiler: Compiler, private injector: Injector, @Inject(SYSTEMJS) private system: SystemJS.Registry, @@ -180,6 +180,7 @@ export class PluginService { '@angular/material/tree': ngMatTree, 'rxjs': rxjs, 'rxjs/operators': rxjsOperators, + '@ng-select/ng-select': ngSelect, '@ngageoint/mage.web-core-lib': mageCore, '@ngageoint/mage.web-core-lib/common': mageCoreCommon, '@ngageoint/mage.web-core-lib/feed': mageCoreFeed, @@ -231,8 +232,7 @@ export class PluginService { throw Error('plugin not found: ' + pluginId) } const hooks = plugin.MAGE_WEB_HOOKS - const moduleFactory = await this.compiler.compileModuleAsync(hooks.module) - const moduleRef = moduleFactory.create(this.injector) + const moduleRef = createNgModule(hooks.module, this.injector) return moduleRef } } diff --git a/web-app/src/app/plugin/systemjs.service.ts b/web-app/admin/src/app/plugin/systemjs.service.ts similarity index 100% rename from web-app/src/app/plugin/systemjs.service.ts rename to web-app/admin/src/app/plugin/systemjs.service.ts diff --git a/web-app/src/app/upgrade/ajs-upgraded-providers.ts b/web-app/admin/src/app/upgrade/ajs-upgraded-providers.ts similarity index 100% rename from web-app/src/app/upgrade/ajs-upgraded-providers.ts rename to web-app/admin/src/app/upgrade/ajs-upgraded-providers.ts diff --git a/web-app/admin/src/app/user/user-avatar/user-avatar.component.html b/web-app/admin/src/app/user/user-avatar/user-avatar.component.html new file mode 100644 index 000000000..7c2b1a5c1 --- /dev/null +++ b/web-app/admin/src/app/user/user-avatar/user-avatar.component.html @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/web-app/admin/src/app/user/user-avatar/user-avatar.component.scss b/web-app/admin/src/app/user/user-avatar/user-avatar.component.scss new file mode 100644 index 000000000..871cb6674 --- /dev/null +++ b/web-app/admin/src/app/user/user-avatar/user-avatar.component.scss @@ -0,0 +1,5 @@ +.avatar { + border-radius: 50%; + overflow: hidden; + background: #FFFFFF; +} \ No newline at end of file diff --git a/web-app/admin/src/app/user/user-avatar/user-avatar.component.spec.ts b/web-app/admin/src/app/user/user-avatar/user-avatar.component.spec.ts new file mode 100644 index 000000000..18650b057 --- /dev/null +++ b/web-app/admin/src/app/user/user-avatar/user-avatar.component.spec.ts @@ -0,0 +1,27 @@ +import { HttpClientTestingModule } from '@angular/common/http/testing'; +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; + +import { UserAvatarComponent } from './user-avatar.component'; + +describe('UserAvatarComponent', () => { + let component: UserAvatarComponent; + let fixture: ComponentFixture; + + beforeEach(waitForAsync(() => { + TestBed.configureTestingModule({ + imports: [HttpClientTestingModule], + declarations: [UserAvatarComponent] + }) + .compileComponents(); + })); + + beforeEach(() => { + fixture = TestBed.createComponent(UserAvatarComponent); + component = fixture.componentInstance; + fixture.detectChanges(); + }); + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/web-app/admin/src/app/user/user-avatar/user-avatar.component.ts b/web-app/admin/src/app/user/user-avatar/user-avatar.component.ts new file mode 100644 index 000000000..df2bd62d8 --- /dev/null +++ b/web-app/admin/src/app/user/user-avatar/user-avatar.component.ts @@ -0,0 +1,33 @@ +import { HttpClient } from '@angular/common/http' +import { Component, Input, OnChanges, SimpleChanges } from '@angular/core' +import { DomSanitizer, SafeUrl } from '@angular/platform-browser' + +@Component({ + selector: 'user-avatar', + templateUrl: './user-avatar.component.html', + styleUrls: ['./user-avatar.component.scss'] +}) +export class UserAvatarComponent implements OnChanges { + @Input() user + @Input() avatarWidth = 40 + @Input() avatarHeight = 40 + + url: string | SafeUrl = '/assets/images/baseline-account_circle-24px.svg'; + + constructor( + private httpClient: HttpClient, + private sanitizer: DomSanitizer) { } + + ngOnChanges(changes: SimpleChanges): void { + if (changes.user && this.user) { + this.fetchAvatar() + } + } + + fetchAvatar(): void { + const url = `/api/users/${this.user.id}/avatar` + this.httpClient.get(url, { responseType: 'blob' }).subscribe(blob => { + this.url = this.sanitizer.bypassSecurityTrustUrl(URL.createObjectURL(blob)); + }); + } +} diff --git a/web-app/admin/src/assets/images/baseline-account_circle-24px.svg b/web-app/admin/src/assets/images/baseline-account_circle-24px.svg new file mode 100644 index 000000000..d66c09994 --- /dev/null +++ b/web-app/admin/src/assets/images/baseline-account_circle-24px.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/web-app/admin/src/assets/images/bluewand.png b/web-app/admin/src/assets/images/bluewand.png new file mode 100644 index 000000000..4745e5c2f Binary files /dev/null and b/web-app/admin/src/assets/images/bluewand.png differ diff --git a/web-app/admin/src/assets/images/default_marker.png b/web-app/admin/src/assets/images/default_marker.png new file mode 100644 index 000000000..dfcec12ae Binary files /dev/null and b/web-app/admin/src/assets/images/default_marker.png differ diff --git a/web-app/admin/src/assets/images/google-play-badge.png b/web-app/admin/src/assets/images/google-play-badge.png new file mode 100644 index 000000000..4b4494bb5 Binary files /dev/null and b/web-app/admin/src/assets/images/google-play-badge.png differ diff --git a/web-app/admin/src/assets/images/handle-24px.svg b/web-app/admin/src/assets/images/handle-24px.svg new file mode 100644 index 000000000..cb6a61e7c --- /dev/null +++ b/web-app/admin/src/assets/images/handle-24px.svg @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/web-app/admin/src/assets/images/ios_app_store_black.svg b/web-app/admin/src/assets/images/ios_app_store_black.svg new file mode 100755 index 000000000..072b425a1 --- /dev/null +++ b/web-app/admin/src/assets/images/ios_app_store_black.svg @@ -0,0 +1,46 @@ + + Download_on_the_App_Store_Badge_US-UK_RGB_blk_4SVG_092917 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/web-app/admin/src/assets/images/person_pin_circle-24px.svg b/web-app/admin/src/assets/images/person_pin_circle-24px.svg new file mode 100644 index 000000000..62e388ea4 --- /dev/null +++ b/web-app/admin/src/assets/images/person_pin_circle-24px.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/web-app/admin/src/assets/images/splash/1.jpg b/web-app/admin/src/assets/images/splash/1.jpg new file mode 100644 index 000000000..5c0eeaa9a Binary files /dev/null and b/web-app/admin/src/assets/images/splash/1.jpg differ diff --git a/web-app/admin/src/assets/images/splash/2.jpg b/web-app/admin/src/assets/images/splash/2.jpg new file mode 100644 index 000000000..685b0a4a5 Binary files /dev/null and b/web-app/admin/src/assets/images/splash/2.jpg differ diff --git a/web-app/admin/src/assets/images/splash/3.jpg b/web-app/admin/src/assets/images/splash/3.jpg new file mode 100644 index 000000000..7580a8cff Binary files /dev/null and b/web-app/admin/src/assets/images/splash/3.jpg differ diff --git a/web-app/admin/src/assets/images/splash/4.jpg b/web-app/admin/src/assets/images/splash/4.jpg new file mode 100644 index 000000000..abf1474e4 Binary files /dev/null and b/web-app/admin/src/assets/images/splash/4.jpg differ diff --git a/web-app/admin/src/environments/environment.dev.ts b/web-app/admin/src/environments/environment.dev.ts new file mode 100644 index 000000000..ffe8aed76 --- /dev/null +++ b/web-app/admin/src/environments/environment.dev.ts @@ -0,0 +1,3 @@ +export const environment = { + production: false +}; diff --git a/web-app/admin/src/environments/environment.prod.ts b/web-app/admin/src/environments/environment.prod.ts new file mode 100644 index 000000000..3612073bc --- /dev/null +++ b/web-app/admin/src/environments/environment.prod.ts @@ -0,0 +1,3 @@ +export const environment = { + production: true +}; diff --git a/web-app/admin/src/environments/environment.ts b/web-app/admin/src/environments/environment.ts new file mode 100644 index 000000000..30d7bccb1 --- /dev/null +++ b/web-app/admin/src/environments/environment.ts @@ -0,0 +1,16 @@ +// This file can be replaced during build by using the `fileReplacements` array. +// `ng build --prod` replaces `environment.ts` with `environment.prod.ts`. +// The list of file replacements can be found in `angular.json`. + +export const environment = { + production: false +}; + +/* + * For easier debugging in development mode, you can import the following file + * to ignore zone related error stack frames such as `zone.run`, `zoneDelegate.invokeTask`. + * + * This import should be commented out in production mode because it will have a negative impact + * on performance if an error is thrown. + */ +// import 'zone.js/plugins/zone-error'; // Included with Angular CLI. diff --git a/web-app/admin/src/favicon.ico b/web-app/admin/src/favicon.ico new file mode 100755 index 000000000..8003e3a24 Binary files /dev/null and b/web-app/admin/src/favicon.ico differ diff --git a/web-app/admin/src/fonts/Roboto-Black.ttf b/web-app/admin/src/fonts/Roboto-Black.ttf new file mode 100755 index 000000000..fbde625d4 Binary files /dev/null and b/web-app/admin/src/fonts/Roboto-Black.ttf differ diff --git a/web-app/admin/src/fonts/Roboto-BlackItalic.ttf b/web-app/admin/src/fonts/Roboto-BlackItalic.ttf new file mode 100755 index 000000000..60f7782a2 Binary files /dev/null and b/web-app/admin/src/fonts/Roboto-BlackItalic.ttf differ diff --git a/web-app/admin/src/fonts/Roboto-Bold.ttf b/web-app/admin/src/fonts/Roboto-Bold.ttf new file mode 100755 index 000000000..a355c27cd Binary files /dev/null and b/web-app/admin/src/fonts/Roboto-Bold.ttf differ diff --git a/web-app/admin/src/fonts/Roboto-BoldItalic.ttf b/web-app/admin/src/fonts/Roboto-BoldItalic.ttf new file mode 100755 index 000000000..3c9a7a373 Binary files /dev/null and b/web-app/admin/src/fonts/Roboto-BoldItalic.ttf differ diff --git a/web-app/admin/src/fonts/Roboto-Italic.ttf b/web-app/admin/src/fonts/Roboto-Italic.ttf new file mode 100755 index 000000000..ff6046d5b Binary files /dev/null and b/web-app/admin/src/fonts/Roboto-Italic.ttf differ diff --git a/web-app/admin/src/fonts/Roboto-Light.ttf b/web-app/admin/src/fonts/Roboto-Light.ttf new file mode 100755 index 000000000..94c6bcc67 Binary files /dev/null and b/web-app/admin/src/fonts/Roboto-Light.ttf differ diff --git a/web-app/admin/src/fonts/Roboto-LightItalic.ttf b/web-app/admin/src/fonts/Roboto-LightItalic.ttf new file mode 100755 index 000000000..04cc00230 Binary files /dev/null and b/web-app/admin/src/fonts/Roboto-LightItalic.ttf differ diff --git a/web-app/admin/src/fonts/Roboto-Medium.ttf b/web-app/admin/src/fonts/Roboto-Medium.ttf new file mode 100755 index 000000000..39c63d746 Binary files /dev/null and b/web-app/admin/src/fonts/Roboto-Medium.ttf differ diff --git a/web-app/admin/src/fonts/Roboto-MediumItalic.ttf b/web-app/admin/src/fonts/Roboto-MediumItalic.ttf new file mode 100755 index 000000000..dc743f0a6 Binary files /dev/null and b/web-app/admin/src/fonts/Roboto-MediumItalic.ttf differ diff --git a/web-app/admin/src/fonts/Roboto-Regular.ttf b/web-app/admin/src/fonts/Roboto-Regular.ttf new file mode 100755 index 000000000..8c082c8de Binary files /dev/null and b/web-app/admin/src/fonts/Roboto-Regular.ttf differ diff --git a/web-app/admin/src/fonts/Roboto-Thin.ttf b/web-app/admin/src/fonts/Roboto-Thin.ttf new file mode 100755 index 000000000..d69555029 Binary files /dev/null and b/web-app/admin/src/fonts/Roboto-Thin.ttf differ diff --git a/web-app/admin/src/fonts/Roboto-ThinItalic.ttf b/web-app/admin/src/fonts/Roboto-ThinItalic.ttf new file mode 100755 index 000000000..07172ff66 Binary files /dev/null and b/web-app/admin/src/fonts/Roboto-ThinItalic.ttf differ diff --git a/web-app/admin/src/fonts/RobotoMono-Bold.ttf b/web-app/admin/src/fonts/RobotoMono-Bold.ttf new file mode 100755 index 000000000..07ef607d5 Binary files /dev/null and b/web-app/admin/src/fonts/RobotoMono-Bold.ttf differ diff --git a/web-app/admin/src/fonts/RobotoMono-BoldItalic.ttf b/web-app/admin/src/fonts/RobotoMono-BoldItalic.ttf new file mode 100755 index 000000000..1cca0bf45 Binary files /dev/null and b/web-app/admin/src/fonts/RobotoMono-BoldItalic.ttf differ diff --git a/web-app/admin/src/fonts/RobotoMono-Italic.ttf b/web-app/admin/src/fonts/RobotoMono-Italic.ttf new file mode 100755 index 000000000..ef92c372c Binary files /dev/null and b/web-app/admin/src/fonts/RobotoMono-Italic.ttf differ diff --git a/web-app/admin/src/fonts/RobotoMono-Light.ttf b/web-app/admin/src/fonts/RobotoMono-Light.ttf new file mode 100755 index 000000000..63229b280 Binary files /dev/null and b/web-app/admin/src/fonts/RobotoMono-Light.ttf differ diff --git a/web-app/admin/src/fonts/RobotoMono-LightItalic.ttf b/web-app/admin/src/fonts/RobotoMono-LightItalic.ttf new file mode 100755 index 000000000..f25bed56a Binary files /dev/null and b/web-app/admin/src/fonts/RobotoMono-LightItalic.ttf differ diff --git a/web-app/admin/src/fonts/RobotoMono-Medium.ttf b/web-app/admin/src/fonts/RobotoMono-Medium.ttf new file mode 100755 index 000000000..88ff0c15a Binary files /dev/null and b/web-app/admin/src/fonts/RobotoMono-Medium.ttf differ diff --git a/web-app/admin/src/fonts/RobotoMono-MediumItalic.ttf b/web-app/admin/src/fonts/RobotoMono-MediumItalic.ttf new file mode 100755 index 000000000..307efad8f Binary files /dev/null and b/web-app/admin/src/fonts/RobotoMono-MediumItalic.ttf differ diff --git a/web-app/admin/src/fonts/RobotoMono-Regular.ttf b/web-app/admin/src/fonts/RobotoMono-Regular.ttf new file mode 100755 index 000000000..b158a334e Binary files /dev/null and b/web-app/admin/src/fonts/RobotoMono-Regular.ttf differ diff --git a/web-app/admin/src/fonts/RobotoMono-Thin.ttf b/web-app/admin/src/fonts/RobotoMono-Thin.ttf new file mode 100755 index 000000000..309484d32 Binary files /dev/null and b/web-app/admin/src/fonts/RobotoMono-Thin.ttf differ diff --git a/web-app/admin/src/fonts/RobotoMono-ThinItalic.ttf b/web-app/admin/src/fonts/RobotoMono-ThinItalic.ttf new file mode 100755 index 000000000..e1bb9121e Binary files /dev/null and b/web-app/admin/src/fonts/RobotoMono-ThinItalic.ttf differ diff --git a/web-app/admin/src/index.html b/web-app/admin/src/index.html new file mode 100644 index 000000000..c7e54e60e --- /dev/null +++ b/web-app/admin/src/index.html @@ -0,0 +1,20 @@ + + + + + MAGE Admin + + + + + +
+ + + + +
+
+ + + \ No newline at end of file diff --git a/web-app/admin/src/main.ts b/web-app/admin/src/main.ts new file mode 100644 index 000000000..99311767e --- /dev/null +++ b/web-app/admin/src/main.ts @@ -0,0 +1,26 @@ + +import * as angular from 'angular'; +import mage from './ng1/app.js'; + +import { enableProdMode, StaticProvider } from '@angular/core'; +import { platformBrowserDynamic } from '@angular/platform-browser-dynamic'; + +import { AppModule } from './app/app.module'; +import { environment } from './environments/environment'; + +import { downgradeModule } from '@angular/upgrade/static'; + +if (environment.production) { + enableProdMode(); +} + +const bootstrapFn = (extraProviders: StaticProvider[]): any => { + return platformBrowserDynamic(extraProviders).bootstrapModule(AppModule); +} + +const downgradedModule = downgradeModule(bootstrapFn); + +const hybrid = angular.module('hybridMage', [mage.name, downgradedModule]); +angular.element(document).ready(function () { + angular.bootstrap(document.body, [hybrid.name]); +}); \ No newline at end of file diff --git a/web-app/src/ng1/admin/admin.component.js b/web-app/admin/src/ng1/admin/admin.component.js similarity index 100% rename from web-app/src/ng1/admin/admin.component.js rename to web-app/admin/src/ng1/admin/admin.component.js diff --git a/web-app/src/ng1/admin/admin.dashboard.component.js b/web-app/admin/src/ng1/admin/admin.dashboard.component.js similarity index 100% rename from web-app/src/ng1/admin/admin.dashboard.component.js rename to web-app/admin/src/ng1/admin/admin.dashboard.component.js diff --git a/web-app/src/ng1/admin/admin.dashboard.html b/web-app/admin/src/ng1/admin/admin.dashboard.html similarity index 100% rename from web-app/src/ng1/admin/admin.dashboard.html rename to web-app/admin/src/ng1/admin/admin.dashboard.html diff --git a/web-app/src/ng1/admin/admin.html b/web-app/admin/src/ng1/admin/admin.html similarity index 100% rename from web-app/src/ng1/admin/admin.html rename to web-app/admin/src/ng1/admin/admin.html diff --git a/web-app/src/ng1/admin/admin.plugin-tab-content-bridge.component.js b/web-app/admin/src/ng1/admin/admin.plugin-tab-content-bridge.component.js similarity index 100% rename from web-app/src/ng1/admin/admin.plugin-tab-content-bridge.component.js rename to web-app/admin/src/ng1/admin/admin.plugin-tab-content-bridge.component.js diff --git a/web-app/src/ng1/admin/admin.tab.component.js b/web-app/admin/src/ng1/admin/admin.tab.component.js similarity index 100% rename from web-app/src/ng1/admin/admin.tab.component.js rename to web-app/admin/src/ng1/admin/admin.tab.component.js diff --git a/web-app/src/ng1/admin/admin.tab.html b/web-app/admin/src/ng1/admin/admin.tab.html similarity index 90% rename from web-app/src/ng1/admin/admin.tab.html rename to web-app/admin/src/ng1/admin/admin.tab.html index e06c32c4e..dd3f9a433 100644 --- a/web-app/src/ng1/admin/admin.tab.html +++ b/web-app/admin/src/ng1/admin/admin.tab.html @@ -31,7 +31,7 @@
Events
-
+
@@ -58,6 +58,12 @@
Map
+
+
+ +
Security
+
+
diff --git a/web-app/src/ng1/admin/devices/device.component.js b/web-app/admin/src/ng1/admin/devices/device.component.js similarity index 100% rename from web-app/src/ng1/admin/devices/device.component.js rename to web-app/admin/src/ng1/admin/devices/device.component.js diff --git a/web-app/src/ng1/admin/devices/device.delete.component.js b/web-app/admin/src/ng1/admin/devices/device.delete.component.js similarity index 100% rename from web-app/src/ng1/admin/devices/device.delete.component.js rename to web-app/admin/src/ng1/admin/devices/device.delete.component.js diff --git a/web-app/src/ng1/admin/devices/device.delete.html b/web-app/admin/src/ng1/admin/devices/device.delete.html similarity index 100% rename from web-app/src/ng1/admin/devices/device.delete.html rename to web-app/admin/src/ng1/admin/devices/device.delete.html diff --git a/web-app/src/ng1/admin/devices/device.edit.component.js b/web-app/admin/src/ng1/admin/devices/device.edit.component.js similarity index 100% rename from web-app/src/ng1/admin/devices/device.edit.component.js rename to web-app/admin/src/ng1/admin/devices/device.edit.component.js diff --git a/web-app/src/ng1/admin/devices/device.edit.html b/web-app/admin/src/ng1/admin/devices/device.edit.html similarity index 100% rename from web-app/src/ng1/admin/devices/device.edit.html rename to web-app/admin/src/ng1/admin/devices/device.edit.html diff --git a/web-app/src/ng1/admin/devices/device.html b/web-app/admin/src/ng1/admin/devices/device.html similarity index 100% rename from web-app/src/ng1/admin/devices/device.html rename to web-app/admin/src/ng1/admin/devices/device.html diff --git a/web-app/src/ng1/admin/devices/devices.component.js b/web-app/admin/src/ng1/admin/devices/devices.component.js similarity index 100% rename from web-app/src/ng1/admin/devices/devices.component.js rename to web-app/admin/src/ng1/admin/devices/devices.component.js diff --git a/web-app/src/ng1/admin/devices/devices.html b/web-app/admin/src/ng1/admin/devices/devices.html similarity index 100% rename from web-app/src/ng1/admin/devices/devices.html rename to web-app/admin/src/ng1/admin/devices/devices.html diff --git a/web-app/src/ng1/admin/devices/index.js b/web-app/admin/src/ng1/admin/devices/index.js similarity index 100% rename from web-app/src/ng1/admin/devices/index.js rename to web-app/admin/src/ng1/admin/devices/index.js diff --git a/web-app/src/ng1/admin/events/event.access.component.js b/web-app/admin/src/ng1/admin/events/event.access.component.js similarity index 100% rename from web-app/src/ng1/admin/events/event.access.component.js rename to web-app/admin/src/ng1/admin/events/event.access.component.js diff --git a/web-app/src/ng1/admin/events/event.access.html b/web-app/admin/src/ng1/admin/events/event.access.html similarity index 100% rename from web-app/src/ng1/admin/events/event.access.html rename to web-app/admin/src/ng1/admin/events/event.access.html diff --git a/web-app/src/ng1/admin/events/event.component.js b/web-app/admin/src/ng1/admin/events/event.component.js similarity index 94% rename from web-app/src/ng1/admin/events/event.component.js rename to web-app/admin/src/ng1/admin/events/event.component.js index 4039fbe29..32109a4ca 100644 --- a/web-app/src/ng1/admin/events/event.component.js +++ b/web-app/admin/src/ng1/admin/events/event.component.js @@ -58,17 +58,20 @@ class AdminEventController { this.eventLayers = []; this.layersPage = 0; this.layersPerPage = 5; + this.layerSearch = null; this.nonLayers = []; this.nonLayersPage = 0; this.nonLayersPerPage = 2; + this.nonLayerSearch = null; this.layers = []; this.eventTeam; // For some reason angular is not calling into filter function with correct context - this.filterLayers = this._filterLayers.bind(this); + this.filterLayers = this.filterLayers.bind(this); + this.filterNonLayers = this.filterNonLayers.bind(this); } $onInit() { @@ -263,13 +266,21 @@ class AdminEventController { }); } - _filterLayers(layer) { - const filteredLayers = this.$filter('filter')([layer], this.layerSearch); + filterLayers(layer) { + let filteredLayers = this.eventLayers; + if (this.layerSearch) { + filteredLayers = this.$filter('filter')([layer], this.layerSearch); + } + return filteredLayers && filteredLayers.length; } - _filterNonayers(layer) { - const filteredNonLayers = this.$filter('filter')([layer], this.nonLayerSearch); + filterNonLayers(layer) { + let filteredNonLayers = this.nonLayers; + if (this.nonLayerSearch) { + filteredNonLayers = this.$filter('filter')([layer], this.nonLayerSearch); + } + return filteredNonLayers && filteredNonLayers.length; } @@ -481,9 +492,16 @@ class AdminEventController { $event.stopPropagation(); let forms = this.event.forms; - let from = forms.indexOf(form); let to = from - 1; + if (!this.showArchivedForms) { + for (; to >= 0; to--) { + if (!forms[to].archived) { + break; + } + } + } + forms.splice(to, 0, forms.splice(from, 1)[0]); this.event.$save(); @@ -493,9 +511,16 @@ class AdminEventController { $event.stopPropagation(); let forms = this.event.forms; - let from = forms.indexOf(form); let to = from + 1; + if (!this.showArchivedForms) { + for (; from < forms.length; to++) { + if (!forms[to].archived) { + break; + } + } + } + forms.splice(to, 0, forms.splice(from, 1)[0]); this.event.$save(); @@ -531,4 +556,4 @@ AdminEventController.$inject = ['$state', '$stateParams', '$filter', '$q', '$uib export default { template: require('./event.html'), controller: AdminEventController -}; \ No newline at end of file +}; diff --git a/web-app/src/ng1/admin/events/event.delete.component.js b/web-app/admin/src/ng1/admin/events/event.delete.component.js similarity index 100% rename from web-app/src/ng1/admin/events/event.delete.component.js rename to web-app/admin/src/ng1/admin/events/event.delete.component.js diff --git a/web-app/src/ng1/admin/events/event.delete.html b/web-app/admin/src/ng1/admin/events/event.delete.html similarity index 91% rename from web-app/src/ng1/admin/events/event.delete.html rename to web-app/admin/src/ng1/admin/events/event.delete.html index 1f57d680c..547ac7740 100644 --- a/web-app/src/ng1/admin/events/event.delete.html +++ b/web-app/admin/src/ng1/admin/events/event.delete.html @@ -20,5 +20,5 @@ diff --git a/web-app/src/ng1/admin/events/event.edit.component.js b/web-app/admin/src/ng1/admin/events/event.edit.component.js similarity index 100% rename from web-app/src/ng1/admin/events/event.edit.component.js rename to web-app/admin/src/ng1/admin/events/event.edit.component.js diff --git a/web-app/src/ng1/admin/events/event.edit.html b/web-app/admin/src/ng1/admin/events/event.edit.html similarity index 100% rename from web-app/src/ng1/admin/events/event.edit.html rename to web-app/admin/src/ng1/admin/events/event.edit.html diff --git a/web-app/src/ng1/admin/events/event.html b/web-app/admin/src/ng1/admin/events/event.html similarity index 99% rename from web-app/src/ng1/admin/events/event.html rename to web-app/admin/src/ng1/admin/events/event.html index e5c34d42a..bcf2c2a93 100644 --- a/web-app/src/ng1/admin/events/event.html +++ b/web-app/admin/src/ng1/admin/events/event.html @@ -417,7 +417,7 @@

+ ng-repeat="layer in ($ctrl.filteredLayers = ($ctrl.eventLayers | filter:$ctrl.filterLayers)) | orderBy:'name' | offset: $ctrl.layersPage*$ctrl.layersPerPage | limitTo:$ctrl.layersPerPage">
@@ -580,4 +580,4 @@

- \ No newline at end of file + diff --git a/web-app/src/ng1/admin/events/events.component.js b/web-app/admin/src/ng1/admin/events/events.component.js similarity index 52% rename from web-app/src/ng1/admin/events/events.component.js rename to web-app/admin/src/ng1/admin/events/events.component.js index 8543859ec..e6f9fb537 100644 --- a/web-app/src/ng1/admin/events/events.component.js +++ b/web-app/admin/src/ng1/admin/events/events.component.js @@ -9,11 +9,17 @@ class AdminEventsController { this.UserService = UserService; this.events = []; - this.filter = "active"; // possible values all, active, complete + this.filter = 'active'; // possible values all, active, complete this.page = 0; this.itemsPerPage = 10; - - this.projection = { name: true, description: true, acl: true, complete: true }; + this.eventSearch = ''; + + this.projection = { + name: true, + description: true, + acl: true, + complete: true + }; // For some reason angular is not calling into filter function with correct context this.filterEvents = this._filterEvents.bind(this); @@ -21,21 +27,44 @@ class AdminEventsController { } $onInit() { - this.Event.query({state: 'all', populate: false, projection: JSON.stringify(this.projection)}, events => { - this.events = events; - }); + this.Event.query( + { + state: 'all', + populate: false, + projection: JSON.stringify(this.projection) + }, + (events) => { + this.events = events; + } + ); + } + + handleSearchChange() { + const filtered = this.events.filter((event) => this._filterEvents(event)); + + // If there are filtered results, reset to page 0, else keep the current page + this.page = filtered.length > 0 ? 0 : this.page; } _filterEvents(event) { - var filteredEvents = this.$filter('filter')([event], this.eventSearch); - return filteredEvents && filteredEvents.length; + const searchTerm = this.eventSearch.trim().toLowerCase(); + if (!searchTerm) { + return true; + } + const nameMatches = event.name.toLowerCase().includes(searchTerm); + const descriptionMatches = + event.description && event.description.toLowerCase().includes(searchTerm); + return nameMatches || descriptionMatches; } _filterComplete(event) { switch (this.filter) { - case 'all': return true; - case 'active': return !event.complete; - case 'complete': return event.complete; + case 'all': + return true; + case 'active': + return !event.complete; + case 'complete': + return event.complete; } } @@ -70,11 +99,21 @@ class AdminEventsController { var myAccess = event.acl[this.UserService.myself.id]; var aclPermissions = myAccess ? myAccess.permissions : []; - switch(permission) { - case 'update': - return _.contains(this.UserService.myself.role.permissions, 'UPDATE_EVENT') || _.contains(aclPermissions, 'update'); - case 'delete': - return _.contains(this.UserService.myself.role.permissions, 'DELETE_EVENT') || _.contains(aclPermissions, 'delete'); + switch (permission) { + case 'update': + return ( + _.contains( + this.UserService.myself.role.permissions, + 'UPDATE_EVENT' + ) || _.contains(aclPermissions, 'update') + ); + case 'delete': + return ( + _.contains( + this.UserService.myself.role.permissions, + 'DELETE_EVENT' + ) || _.contains(aclPermissions, 'delete') + ); } } @@ -87,10 +126,10 @@ class AdminEventsController { return event; } }, - component: "adminEventDelete" + component: 'adminEventDelete' }); - modalInstance.result.then(event => { + modalInstance.result.then((event) => { this.events = _.without(this.events, event); }); } diff --git a/web-app/admin/src/ng1/admin/events/events.html b/web-app/admin/src/ng1/admin/events/events.html new file mode 100644 index 000000000..fdc8196b5 --- /dev/null +++ b/web-app/admin/src/ng1/admin/events/events.html @@ -0,0 +1,148 @@ +
+
+ +
+
+ +
+
+ + +
+ + +
+
+
+
+
+
+
+ +
+
{{e.name}}
+
{{e.description}}
+
+
+ + +
+
+
+
+
+
+ +
+
+
+
+
+
+
diff --git a/web-app/src/ng1/admin/events/forms/feed/feed.edit.component.js b/web-app/admin/src/ng1/admin/events/forms/feed/feed.edit.component.js similarity index 100% rename from web-app/src/ng1/admin/events/forms/feed/feed.edit.component.js rename to web-app/admin/src/ng1/admin/events/forms/feed/feed.edit.component.js diff --git a/web-app/src/ng1/admin/events/forms/feed/feed.edit.html b/web-app/admin/src/ng1/admin/events/forms/feed/feed.edit.html similarity index 100% rename from web-app/src/ng1/admin/events/forms/feed/feed.edit.html rename to web-app/admin/src/ng1/admin/events/forms/feed/feed.edit.html diff --git a/web-app/src/ng1/admin/events/forms/feed/index.js b/web-app/admin/src/ng1/admin/events/forms/feed/index.js similarity index 100% rename from web-app/src/ng1/admin/events/forms/feed/index.js rename to web-app/admin/src/ng1/admin/events/forms/feed/index.js diff --git a/web-app/src/ng1/admin/events/forms/fields/field.option.reorder.component.js b/web-app/admin/src/ng1/admin/events/forms/fields/field.option.reorder.component.js similarity index 100% rename from web-app/src/ng1/admin/events/forms/fields/field.option.reorder.component.js rename to web-app/admin/src/ng1/admin/events/forms/fields/field.option.reorder.component.js diff --git a/web-app/src/ng1/admin/events/forms/fields/field.option.reorder.html b/web-app/admin/src/ng1/admin/events/forms/fields/field.option.reorder.html similarity index 100% rename from web-app/src/ng1/admin/events/forms/fields/field.option.reorder.html rename to web-app/admin/src/ng1/admin/events/forms/fields/field.option.reorder.html diff --git a/web-app/src/ng1/admin/events/forms/fields/fields.edit.component.js b/web-app/admin/src/ng1/admin/events/forms/fields/fields.edit.component.js similarity index 100% rename from web-app/src/ng1/admin/events/forms/fields/fields.edit.component.js rename to web-app/admin/src/ng1/admin/events/forms/fields/fields.edit.component.js diff --git a/web-app/src/ng1/admin/events/forms/fields/fields.edit.html b/web-app/admin/src/ng1/admin/events/forms/fields/fields.edit.html similarity index 100% rename from web-app/src/ng1/admin/events/forms/fields/fields.edit.html rename to web-app/admin/src/ng1/admin/events/forms/fields/fields.edit.html diff --git a/web-app/src/ng1/admin/events/forms/fields/index.js b/web-app/admin/src/ng1/admin/events/forms/fields/index.js similarity index 100% rename from web-app/src/ng1/admin/events/forms/fields/index.js rename to web-app/admin/src/ng1/admin/events/forms/fields/index.js diff --git a/web-app/src/ng1/admin/events/forms/form.create.component.js b/web-app/admin/src/ng1/admin/events/forms/form.create.component.js similarity index 100% rename from web-app/src/ng1/admin/events/forms/form.create.component.js rename to web-app/admin/src/ng1/admin/events/forms/form.create.component.js diff --git a/web-app/src/ng1/admin/events/forms/form.create.html b/web-app/admin/src/ng1/admin/events/forms/form.create.html similarity index 100% rename from web-app/src/ng1/admin/events/forms/form.create.html rename to web-app/admin/src/ng1/admin/events/forms/form.create.html diff --git a/web-app/src/ng1/admin/events/forms/form.edit.component.js b/web-app/admin/src/ng1/admin/events/forms/form.edit.component.js similarity index 100% rename from web-app/src/ng1/admin/events/forms/form.edit.component.js rename to web-app/admin/src/ng1/admin/events/forms/form.edit.component.js diff --git a/web-app/src/ng1/admin/events/forms/form.edit.error.component.js b/web-app/admin/src/ng1/admin/events/forms/form.edit.error.component.js similarity index 100% rename from web-app/src/ng1/admin/events/forms/form.edit.error.component.js rename to web-app/admin/src/ng1/admin/events/forms/form.edit.error.component.js diff --git a/web-app/src/ng1/admin/events/forms/form.edit.error.html b/web-app/admin/src/ng1/admin/events/forms/form.edit.error.html similarity index 100% rename from web-app/src/ng1/admin/events/forms/form.edit.error.html rename to web-app/admin/src/ng1/admin/events/forms/form.edit.error.html diff --git a/web-app/src/ng1/admin/events/forms/form.edit.html b/web-app/admin/src/ng1/admin/events/forms/form.edit.html similarity index 100% rename from web-app/src/ng1/admin/events/forms/form.edit.html rename to web-app/admin/src/ng1/admin/events/forms/form.edit.html diff --git a/web-app/src/ng1/admin/events/forms/form.edit.unsaved.component.js b/web-app/admin/src/ng1/admin/events/forms/form.edit.unsaved.component.js similarity index 100% rename from web-app/src/ng1/admin/events/forms/form.edit.unsaved.component.js rename to web-app/admin/src/ng1/admin/events/forms/form.edit.unsaved.component.js diff --git a/web-app/src/ng1/admin/events/forms/form.edit.unsaved.html b/web-app/admin/src/ng1/admin/events/forms/form.edit.unsaved.html similarity index 100% rename from web-app/src/ng1/admin/events/forms/form.edit.unsaved.html rename to web-app/admin/src/ng1/admin/events/forms/form.edit.unsaved.html diff --git a/web-app/src/ng1/admin/events/forms/index.js b/web-app/admin/src/ng1/admin/events/forms/index.js similarity index 100% rename from web-app/src/ng1/admin/events/forms/index.js rename to web-app/admin/src/ng1/admin/events/forms/index.js diff --git a/web-app/src/ng1/admin/events/forms/map/index.js b/web-app/admin/src/ng1/admin/events/forms/map/index.js similarity index 100% rename from web-app/src/ng1/admin/events/forms/map/index.js rename to web-app/admin/src/ng1/admin/events/forms/map/index.js diff --git a/web-app/src/ng1/admin/events/forms/map/map.edit.component.js b/web-app/admin/src/ng1/admin/events/forms/map/map.edit.component.js similarity index 100% rename from web-app/src/ng1/admin/events/forms/map/map.edit.component.js rename to web-app/admin/src/ng1/admin/events/forms/map/map.edit.component.js diff --git a/web-app/src/ng1/admin/events/forms/map/map.edit.html b/web-app/admin/src/ng1/admin/events/forms/map/map.edit.html similarity index 100% rename from web-app/src/ng1/admin/events/forms/map/map.edit.html rename to web-app/admin/src/ng1/admin/events/forms/map/map.edit.html diff --git a/web-app/src/ng1/admin/events/forms/map/map.shape.component.js b/web-app/admin/src/ng1/admin/events/forms/map/map.shape.component.js similarity index 100% rename from web-app/src/ng1/admin/events/forms/map/map.shape.component.js rename to web-app/admin/src/ng1/admin/events/forms/map/map.shape.component.js diff --git a/web-app/src/ng1/admin/events/forms/map/map.symbology.component.js b/web-app/admin/src/ng1/admin/events/forms/map/map.symbology.component.js similarity index 100% rename from web-app/src/ng1/admin/events/forms/map/map.symbology.component.js rename to web-app/admin/src/ng1/admin/events/forms/map/map.symbology.component.js diff --git a/web-app/src/ng1/admin/events/forms/map/map.symbology.edit.component.js b/web-app/admin/src/ng1/admin/events/forms/map/map.symbology.edit.component.js similarity index 100% rename from web-app/src/ng1/admin/events/forms/map/map.symbology.edit.component.js rename to web-app/admin/src/ng1/admin/events/forms/map/map.symbology.edit.component.js diff --git a/web-app/src/ng1/admin/events/forms/map/map.symbology.edit.html b/web-app/admin/src/ng1/admin/events/forms/map/map.symbology.edit.html similarity index 100% rename from web-app/src/ng1/admin/events/forms/map/map.symbology.edit.html rename to web-app/admin/src/ng1/admin/events/forms/map/map.symbology.edit.html diff --git a/web-app/src/ng1/admin/events/forms/map/map.symbology.html b/web-app/admin/src/ng1/admin/events/forms/map/map.symbology.html similarity index 100% rename from web-app/src/ng1/admin/events/forms/map/map.symbology.html rename to web-app/admin/src/ng1/admin/events/forms/map/map.symbology.html diff --git a/web-app/src/ng1/admin/events/index.js b/web-app/admin/src/ng1/admin/events/index.js similarity index 100% rename from web-app/src/ng1/admin/events/index.js rename to web-app/admin/src/ng1/admin/events/index.js diff --git a/web-app/src/ng1/admin/feeds/feed.component.js b/web-app/admin/src/ng1/admin/feeds/feed.component.js similarity index 100% rename from web-app/src/ng1/admin/feeds/feed.component.js rename to web-app/admin/src/ng1/admin/feeds/feed.component.js diff --git a/web-app/src/ng1/admin/feeds/feed.html b/web-app/admin/src/ng1/admin/feeds/feed.html similarity index 100% rename from web-app/src/ng1/admin/feeds/feed.html rename to web-app/admin/src/ng1/admin/feeds/feed.html diff --git a/web-app/src/ng1/admin/feeds/feeds.component.js b/web-app/admin/src/ng1/admin/feeds/feeds.component.js similarity index 100% rename from web-app/src/ng1/admin/feeds/feeds.component.js rename to web-app/admin/src/ng1/admin/feeds/feeds.component.js diff --git a/web-app/src/ng1/admin/feeds/feeds.html b/web-app/admin/src/ng1/admin/feeds/feeds.html similarity index 100% rename from web-app/src/ng1/admin/feeds/feeds.html rename to web-app/admin/src/ng1/admin/feeds/feeds.html diff --git a/web-app/src/ng1/admin/feeds/index.js b/web-app/admin/src/ng1/admin/feeds/index.js similarity index 100% rename from web-app/src/ng1/admin/feeds/index.js rename to web-app/admin/src/ng1/admin/feeds/index.js diff --git a/web-app/src/ng1/admin/index.js b/web-app/admin/src/ng1/admin/index.js similarity index 100% rename from web-app/src/ng1/admin/index.js rename to web-app/admin/src/ng1/admin/index.js diff --git a/web-app/src/ng1/admin/layers/index.js b/web-app/admin/src/ng1/admin/layers/index.js similarity index 100% rename from web-app/src/ng1/admin/layers/index.js rename to web-app/admin/src/ng1/admin/layers/index.js diff --git a/web-app/src/ng1/admin/layers/layer.component.js b/web-app/admin/src/ng1/admin/layers/layer.component.js similarity index 100% rename from web-app/src/ng1/admin/layers/layer.component.js rename to web-app/admin/src/ng1/admin/layers/layer.component.js diff --git a/web-app/src/ng1/admin/layers/layer.delete.component.js b/web-app/admin/src/ng1/admin/layers/layer.delete.component.js similarity index 100% rename from web-app/src/ng1/admin/layers/layer.delete.component.js rename to web-app/admin/src/ng1/admin/layers/layer.delete.component.js diff --git a/web-app/src/ng1/admin/layers/layer.delete.html b/web-app/admin/src/ng1/admin/layers/layer.delete.html similarity index 100% rename from web-app/src/ng1/admin/layers/layer.delete.html rename to web-app/admin/src/ng1/admin/layers/layer.delete.html diff --git a/web-app/src/ng1/admin/layers/layer.edit.component.js b/web-app/admin/src/ng1/admin/layers/layer.edit.component.js similarity index 100% rename from web-app/src/ng1/admin/layers/layer.edit.component.js rename to web-app/admin/src/ng1/admin/layers/layer.edit.component.js diff --git a/web-app/src/ng1/admin/layers/layer.edit.html b/web-app/admin/src/ng1/admin/layers/layer.edit.html similarity index 100% rename from web-app/src/ng1/admin/layers/layer.edit.html rename to web-app/admin/src/ng1/admin/layers/layer.edit.html diff --git a/web-app/src/ng1/admin/layers/layer.html b/web-app/admin/src/ng1/admin/layers/layer.html similarity index 100% rename from web-app/src/ng1/admin/layers/layer.html rename to web-app/admin/src/ng1/admin/layers/layer.html diff --git a/web-app/src/ng1/admin/layers/layer.preview.component.js b/web-app/admin/src/ng1/admin/layers/layer.preview.component.js similarity index 100% rename from web-app/src/ng1/admin/layers/layer.preview.component.js rename to web-app/admin/src/ng1/admin/layers/layer.preview.component.js diff --git a/web-app/src/ng1/admin/layers/layer.preview.html b/web-app/admin/src/ng1/admin/layers/layer.preview.html similarity index 100% rename from web-app/src/ng1/admin/layers/layer.preview.html rename to web-app/admin/src/ng1/admin/layers/layer.preview.html diff --git a/web-app/src/ng1/admin/layers/layer.wms.edit.component.js b/web-app/admin/src/ng1/admin/layers/layer.wms.edit.component.js similarity index 100% rename from web-app/src/ng1/admin/layers/layer.wms.edit.component.js rename to web-app/admin/src/ng1/admin/layers/layer.wms.edit.component.js diff --git a/web-app/src/ng1/admin/layers/layer.wms.edit.html b/web-app/admin/src/ng1/admin/layers/layer.wms.edit.html similarity index 100% rename from web-app/src/ng1/admin/layers/layer.wms.edit.html rename to web-app/admin/src/ng1/admin/layers/layer.wms.edit.html diff --git a/web-app/src/ng1/admin/layers/layers.component.js b/web-app/admin/src/ng1/admin/layers/layers.component.js similarity index 100% rename from web-app/src/ng1/admin/layers/layers.component.js rename to web-app/admin/src/ng1/admin/layers/layers.component.js diff --git a/web-app/src/ng1/admin/layers/layers.html b/web-app/admin/src/ng1/admin/layers/layers.html similarity index 100% rename from web-app/src/ng1/admin/layers/layers.html rename to web-app/admin/src/ng1/admin/layers/layers.html diff --git a/web-app/src/ng1/admin/plugins/dashboard/dashboard.component.js b/web-app/admin/src/ng1/admin/plugins/dashboard/dashboard.component.js similarity index 100% rename from web-app/src/ng1/admin/plugins/dashboard/dashboard.component.js rename to web-app/admin/src/ng1/admin/plugins/dashboard/dashboard.component.js diff --git a/web-app/src/ng1/admin/plugins/dashboard/dashboard.html b/web-app/admin/src/ng1/admin/plugins/dashboard/dashboard.html similarity index 100% rename from web-app/src/ng1/admin/plugins/dashboard/dashboard.html rename to web-app/admin/src/ng1/admin/plugins/dashboard/dashboard.html diff --git a/web-app/src/ng1/admin/plugins/index.js b/web-app/admin/src/ng1/admin/plugins/index.js similarity index 100% rename from web-app/src/ng1/admin/plugins/index.js rename to web-app/admin/src/ng1/admin/plugins/index.js diff --git a/web-app/src/ng1/admin/plugins/plugins.component.js b/web-app/admin/src/ng1/admin/plugins/plugins.component.js similarity index 100% rename from web-app/src/ng1/admin/plugins/plugins.component.js rename to web-app/admin/src/ng1/admin/plugins/plugins.component.js diff --git a/web-app/src/ng1/admin/plugins/plugins.html b/web-app/admin/src/ng1/admin/plugins/plugins.html similarity index 100% rename from web-app/src/ng1/admin/plugins/plugins.html rename to web-app/admin/src/ng1/admin/plugins/plugins.html diff --git a/web-app/src/ng1/admin/teams/index.js b/web-app/admin/src/ng1/admin/teams/index.js similarity index 100% rename from web-app/src/ng1/admin/teams/index.js rename to web-app/admin/src/ng1/admin/teams/index.js diff --git a/web-app/src/ng1/admin/teams/team.access.component.js b/web-app/admin/src/ng1/admin/teams/team.access.component.js similarity index 100% rename from web-app/src/ng1/admin/teams/team.access.component.js rename to web-app/admin/src/ng1/admin/teams/team.access.component.js diff --git a/web-app/src/ng1/admin/teams/team.access.html b/web-app/admin/src/ng1/admin/teams/team.access.html similarity index 100% rename from web-app/src/ng1/admin/teams/team.access.html rename to web-app/admin/src/ng1/admin/teams/team.access.html diff --git a/web-app/src/ng1/admin/teams/team.component.js b/web-app/admin/src/ng1/admin/teams/team.component.js similarity index 100% rename from web-app/src/ng1/admin/teams/team.component.js rename to web-app/admin/src/ng1/admin/teams/team.component.js diff --git a/web-app/src/ng1/admin/teams/team.delete.component.js b/web-app/admin/src/ng1/admin/teams/team.delete.component.js similarity index 100% rename from web-app/src/ng1/admin/teams/team.delete.component.js rename to web-app/admin/src/ng1/admin/teams/team.delete.component.js diff --git a/web-app/src/ng1/admin/teams/team.delete.html b/web-app/admin/src/ng1/admin/teams/team.delete.html similarity index 100% rename from web-app/src/ng1/admin/teams/team.delete.html rename to web-app/admin/src/ng1/admin/teams/team.delete.html diff --git a/web-app/src/ng1/admin/teams/team.edit.component.js b/web-app/admin/src/ng1/admin/teams/team.edit.component.js similarity index 100% rename from web-app/src/ng1/admin/teams/team.edit.component.js rename to web-app/admin/src/ng1/admin/teams/team.edit.component.js diff --git a/web-app/src/ng1/admin/teams/team.edit.html b/web-app/admin/src/ng1/admin/teams/team.edit.html similarity index 100% rename from web-app/src/ng1/admin/teams/team.edit.html rename to web-app/admin/src/ng1/admin/teams/team.edit.html diff --git a/web-app/src/ng1/admin/teams/team.html b/web-app/admin/src/ng1/admin/teams/team.html similarity index 100% rename from web-app/src/ng1/admin/teams/team.html rename to web-app/admin/src/ng1/admin/teams/team.html diff --git a/web-app/src/ng1/admin/teams/teams.component.js b/web-app/admin/src/ng1/admin/teams/teams.component.js similarity index 78% rename from web-app/src/ng1/admin/teams/teams.component.js rename to web-app/admin/src/ng1/admin/teams/teams.component.js index 698e93a6e..71f76909a 100644 --- a/web-app/src/ng1/admin/teams/teams.component.js +++ b/web-app/admin/src/ng1/admin/teams/teams.component.js @@ -30,9 +30,11 @@ class AdminTeamsController { } next() { - this.TeamPagingService.next(this.stateAndData[this.filter]).then(teams => { - this.teams = teams; - }); + if (this.hasNext()) { + this.TeamPagingService.next(this.stateAndData[this.filter]).then(teams => { + this.teams = teams; + }); + } } hasPrevious() { @@ -40,9 +42,11 @@ class AdminTeamsController { } previous() { - this.TeamPagingService.previous(this.stateAndData[this.filter]).then(teams => { - this.teams = teams; - }); + if (this.hasPrevious()) { + this.TeamPagingService.previous(this.stateAndData[this.filter]).then(teams => { + this.teams = teams; + }); + } } search() { @@ -69,18 +73,18 @@ class AdminTeamsController { editTeam($event, team) { $event.stopPropagation(); - this.$state.go('admin.editTeam', {teamId: team.id }); + this.$state.go('admin.editTeam', { teamId: team.id }); } hasPermission(team, permission) { var myAccess = team.acl[this.UserService.myself.id]; var aclPermissions = myAccess ? myAccess.permissions : []; - switch(permission) { - case 'update': - return _.contains(this.UserService.myself.role.permissions, 'UPDATE_TEAM') || _.contains(aclPermissions, 'update'); - case 'delete': - return _.contains(this.UserService.myself.role.permissions, 'DELETE_TEAM') || _.contains(aclPermissions, 'delete'); + switch (permission) { + case 'update': + return _.contains(this.UserService.myself.role.permissions, 'UPDATE_TEAM') || _.contains(aclPermissions, 'update'); + case 'delete': + return _.contains(this.UserService.myself.role.permissions, 'DELETE_TEAM') || _.contains(aclPermissions, 'delete'); } } @@ -115,4 +119,4 @@ AdminTeamsController.$inject = ['$state', '$uibModal', '$filter', 'Team', 'UserS export default { template: require('./teams.html'), controller: AdminTeamsController -}; \ No newline at end of file +}; diff --git a/web-app/src/ng1/admin/teams/teams.html b/web-app/admin/src/ng1/admin/teams/teams.html similarity index 100% rename from web-app/src/ng1/admin/teams/teams.html rename to web-app/admin/src/ng1/admin/teams/teams.html diff --git a/web-app/src/ng1/admin/users/index.js b/web-app/admin/src/ng1/admin/users/index.js similarity index 100% rename from web-app/src/ng1/admin/users/index.js rename to web-app/admin/src/ng1/admin/users/index.js diff --git a/web-app/src/ng1/admin/users/map.icon.component.js b/web-app/admin/src/ng1/admin/users/map.icon.component.js similarity index 100% rename from web-app/src/ng1/admin/users/map.icon.component.js rename to web-app/admin/src/ng1/admin/users/map.icon.component.js diff --git a/web-app/src/ng1/admin/users/user.bulk.component.js b/web-app/admin/src/ng1/admin/users/user.bulk.component.js similarity index 100% rename from web-app/src/ng1/admin/users/user.bulk.component.js rename to web-app/admin/src/ng1/admin/users/user.bulk.component.js diff --git a/web-app/src/ng1/admin/users/user.bulk.html b/web-app/admin/src/ng1/admin/users/user.bulk.html similarity index 100% rename from web-app/src/ng1/admin/users/user.bulk.html rename to web-app/admin/src/ng1/admin/users/user.bulk.html diff --git a/web-app/src/ng1/admin/users/user.component.js b/web-app/admin/src/ng1/admin/users/user.component.js similarity index 100% rename from web-app/src/ng1/admin/users/user.component.js rename to web-app/admin/src/ng1/admin/users/user.component.js diff --git a/web-app/src/ng1/admin/users/user.delete.component.js b/web-app/admin/src/ng1/admin/users/user.delete.component.js similarity index 100% rename from web-app/src/ng1/admin/users/user.delete.component.js rename to web-app/admin/src/ng1/admin/users/user.delete.component.js diff --git a/web-app/src/ng1/admin/users/user.delete.html b/web-app/admin/src/ng1/admin/users/user.delete.html similarity index 100% rename from web-app/src/ng1/admin/users/user.delete.html rename to web-app/admin/src/ng1/admin/users/user.delete.html diff --git a/web-app/src/ng1/admin/users/user.edit.component.js b/web-app/admin/src/ng1/admin/users/user.edit.component.js similarity index 100% rename from web-app/src/ng1/admin/users/user.edit.component.js rename to web-app/admin/src/ng1/admin/users/user.edit.component.js diff --git a/web-app/src/ng1/admin/users/user.edit.html b/web-app/admin/src/ng1/admin/users/user.edit.html similarity index 100% rename from web-app/src/ng1/admin/users/user.edit.html rename to web-app/admin/src/ng1/admin/users/user.edit.html diff --git a/web-app/src/ng1/admin/users/user.html b/web-app/admin/src/ng1/admin/users/user.html similarity index 100% rename from web-app/src/ng1/admin/users/user.html rename to web-app/admin/src/ng1/admin/users/user.html diff --git a/web-app/src/ng1/admin/users/users.component.js b/web-app/admin/src/ng1/admin/users/users.component.js similarity index 100% rename from web-app/src/ng1/admin/users/users.component.js rename to web-app/admin/src/ng1/admin/users/users.component.js diff --git a/web-app/src/ng1/admin/users/users.html b/web-app/admin/src/ng1/admin/users/users.html similarity index 100% rename from web-app/src/ng1/admin/users/users.html rename to web-app/admin/src/ng1/admin/users/users.html diff --git a/web-app/src/ng1/app.js b/web-app/admin/src/ng1/app.js similarity index 67% rename from web-app/src/ng1/app.js rename to web-app/admin/src/ng1/app.js index 7538940d9..de2f57294 100644 --- a/web-app/src/ng1/app.js +++ b/web-app/admin/src/ng1/app.js @@ -1,54 +1,22 @@ import _ from 'underscore'; import angular from 'angular'; -import mage from './mage/mage.component'; -import about from './about/about.component'; import fileUpload from './file-upload/file.upload.component'; import fileBrowser from './file-upload/file.browser.component'; import uiRouter from "@uirouter/angularjs"; -import { SwaggerComponent } from "../app/swagger/swagger.component"; import { downgradeComponent, downgradeInjectable } from '@angular/upgrade/static'; -import { - MatIcon, - MatButton, - MatToolbar, - MatSpinner, - MatFormField, - MatSidenav, - MatSidenavContent, - MatSidenavContainer -} from '@angular/material'; - import { BootstrapComponent } from "../app/bootstrap/bootstrap.component" -import { ZoomComponent } from '../app/map/controls/zoom.component'; -import { SearchComponent } from '../app/map/controls/search.component'; -import { LocationComponent } from '../app/map/controls/location.component'; -import { AddObservationComponent } from '../app/map/controls/add-observation.component'; -import { LeafletComponent } from '../app/map/leaflet.component'; -import { ExportComponent } from '../app/export/export.component'; - - - import { FeedService } from '@ngageoint/mage.web-core-lib/feed' -import { ExportService } from '../app/export/export.service' -import { FeedPanelService } from '../app/feed-panel/feed-panel.service' -import { MapPopupService } from '../app/map/map-popup.service' import { PluginService } from '../app/plugin/plugin.service' -import { FeedPanelComponent } from '../app/feed-panel/feed-panel.component'; -import { FeedItemMapPopupComponent } from '../app/feed/feed-item/feed-item-map/feed-item-map-popup.component' - -import { ObservationPopupComponent } from '../app/observation/observation-popup/observation-popup.component'; -import { ObservationListItemComponent } from '../app/observation/observation-list/observation-list-item.component'; - import { UserAvatarComponent } from '../app/user/user-avatar/user-avatar.component'; -import { UserPopupComponent } from '../app/user/user-popup/user-popup.component'; import { UserReadService } from '@ngageoint/mage.web-core-lib/user'; import { ContactComponent } from '../app/contact/contact.component'; import { AdminSettingsComponent } from '../app/admin/admin-settings/admin-settings.component'; +import { AdminAuthenticationComponent } from '../app/admin/admin-authentication/admin-authentication.component'; import { AdminMapComponent } from '../app/admin/admin-map/admin-map.component'; import { AdminFeedsComponent } from '../app/admin/admin-feeds/admin-feeds.component'; import { AdminFeedComponent } from '../app/admin/admin-feeds/admin-feed/admin-feed.component'; @@ -78,58 +46,30 @@ app app .factory('FeedService', downgradeInjectable(FeedService)) - .factory('ExportService', downgradeInjectable(ExportService)) - .factory('FeedPanelService', downgradeInjectable(FeedPanelService)) - .factory('MapPopupService', downgradeInjectable(MapPopupService)) .factory('PluginService', downgradeInjectable(PluginService)) // TODO: remove this once we have a new user service .factory('UserReadService', downgradeInjectable(UserReadService)) // Downgraded Angular components app - .directive('matIcon', downgradeComponent({ component: MatIcon })) - .directive('matButton', downgradeComponent({ component: MatButton })) - .directive('matToolbar', downgradeComponent({ component: MatToolbar })) - .directive('matSpinner', downgradeComponent({ component: MatSpinner })) - .directive('matFormField', downgradeComponent({ component: MatFormField })) - .directive('matSidenav', downgradeComponent({ component: MatSidenav })) - .directive('matSidenavContent', downgradeComponent({ component: MatSidenavContent })) - .directive('matSidenavContainer', downgradeComponent({ component: MatSidenavContainer })) - .directive('feedPanel', downgradeComponent({ component: FeedPanelComponent })) - .directive('observationPopup', downgradeComponent({ component: ObservationPopupComponent })) - .directive('observationListItem', downgradeComponent({ component: ObservationListItemComponent })) .directive('userAvatar', downgradeComponent({ component: UserAvatarComponent })) - .directive('userMapPopup', downgradeComponent({ component: UserPopupComponent })) - .directive('mapLeaflet', downgradeComponent({ component: LeafletComponent })) - .directive('mapControlZoom', downgradeComponent({ component: ZoomComponent })) - .directive('mapControlSearch', downgradeComponent({ component: SearchComponent })) - .directive('mapControlLocation', downgradeComponent({ component: LocationComponent })) - .directive('mapControlAddObservation', downgradeComponent({ component: AddObservationComponent })) - .directive('feedItemMapPopup', downgradeComponent({ component: FeedItemMapPopupComponent })) .directive('feeds', downgradeComponent({ component: AdminFeedsComponent })) .directive('adminFeed', downgradeComponent({ component: AdminFeedComponent })) .directive('adminService', downgradeComponent({ component: AdminServiceComponent })) .directive('feedEdit', downgradeComponent({ component: AdminFeedEditComponent })) - .directive('swagger', downgradeComponent({ component: SwaggerComponent })) - .directive('export', downgradeComponent({ component: ExportComponent })) .directive('upgradedAdminMapSettings', downgradeComponent({ component: AdminMapComponent })) .directive('upgradedAdminSettings', downgradeComponent({ component: AdminSettingsComponent })) + .directive('upgradedAdminAuthentication', downgradeComponent({ component: AdminAuthenticationComponent })) .directive('authenticationCreate', downgradeComponent({ component: AuthenticationCreateComponent })) .directive('contact', downgradeComponent({ component: ContactComponent })) .directive('adminEventFormPreview', downgradeComponent({ component: AdminEventFormPreviewComponent })); app - .component('filterPanel', require('./filter/filter')) - .component('eventFilter', require('./filter/event.filter.component')) + .component('navbar', require('./navbar/navbar.component')) .component('dateTime', require('./datetime/datetime.component')) - .component('disclaimer', require('./disclaimer/disclaimer.controller')) - .component('setup', require('./setup/setup.controller')) - .component('about', about) .component('fileUpload', fileUpload) .component('fileBrowser', fileBrowser) - .component('mage', mage) .controller('NavController', require('./mage/mage-nav.controller')) - .controller('NotInEventController', require('./error/not.in.event.controller')) .directive('fileUploadGrid', require('./file-upload/file-upload-grid.directive')) .animation('.slide-down', function() { return { @@ -143,32 +83,22 @@ app }) .config(config) .run(run); - + +require('./mage'); +require('./authentication') // for modal in admin pages if token expires require('./factories'); require('./filters'); -require('./leaflet-extensions'); -require('./mage'); -require('./authentication'); -require('./user'); require('./admin'); +require('./user'); require('./material-components'); -config.$inject = ['$httpProvider', '$locationProvider', '$stateProvider', '$urlRouterProvider', '$urlServiceProvider', '$animateProvider']; +config.$inject = ['$httpProvider', '$stateProvider', '$urlRouterProvider', '$animateProvider']; -function config($httpProvider, $locationProvider, $stateProvider, $urlRouterProvider, $urlServiceProvider, $animateProvider) { +function config($httpProvider, $stateProvider, $urlRouterProvider, $animateProvider) { $httpProvider.defaults.withCredentials = true; - $httpProvider.defaults.headers.post = { 'Content-Type': 'application/x-www-form-urlencoded' }; - // TODO: this is the default hash prefix for angularjs 1.6+ - $locationProvider.hashPrefix('!'); - $animateProvider.classNameFilter(/ng-animatable/); + $httpProvider.defaults.headers.post = {'Content-Type': 'application/x-www-form-urlencoded'}; - function resolveLogin() { - return { - user: ['UserService', function(UserService) { - return UserService.getMyself(); - }] - }; - } + $animateProvider.classNameFilter(/ng-animatable/); function resolveAdmin() { return { @@ -193,42 +123,11 @@ function config($httpProvider, $locationProvider, $stateProvider, $urlRouterProv }; } - $urlRouterProvider.otherwise('/signin'); - - // TODO temp place for app states for angular 8 - // this should probably move - $stateProvider.state({ - name: 'swagger', - url: '/swagger', - component: 'swagger', - resolve: resolveLogin() - }); - - $stateProvider.state({ - name: 'landing', - url: '/signin?action?strategy?token', - component: 'landing', - resolve: { - api: ['$q', 'Api', function($q, Api) { - const deferred = $q.defer(); - Api.get(function(api) { - deferred.resolve(api); - }); - - return deferred.promise; - }] - } - }); - - $stateProvider.state('map', { - url: '/map', - component: "mage", - resolve: resolveLogin() - }); + $urlRouterProvider.otherwise('/home'); $stateProvider.state('admin', { redirectTo: 'admin.dashboard', - url: '/admin', + url: '/home', component: 'admin' }); @@ -449,42 +348,36 @@ function config($httpProvider, $locationProvider, $stateProvider, $urlRouterProv resolve: resolveAdmin() }); - // Admin settings routes - $stateProvider.state('admin.settings', { - url: '/settings', - component: "upgradedAdminSettings", + // Security settings routes + $stateProvider.state('admin.security', { + url: '/security', + component: "upgradedAdminAuthentication", resolve: resolveAdmin() }); $stateProvider.state('admin.authenticationCreate', { - url: '/settings/new', + url: '/security/new', component: "authenticationCreate", resolve: resolveAdmin() }); - $stateProvider.state('profile', { - url: '/profile', - component: "userProfile", - resolve: resolveLogin() - }); - - $stateProvider.state('about', { - url: '/about', - component: "about", - resolve: resolveLogin() + // Admin settings routes + $stateProvider.state('admin.settings', { + url: '/settings', + component: "upgradedAdminSettings", + resolve: resolveAdmin() }); } run.$inject = ['$rootScope', '$uibModal', '$state', 'Api']; - function run($rootScope, $uibModal, $state, Api) { - $rootScope.$on('event:auth-loginRequired', function(e, response) { + $rootScope.$on('event:auth-loginRequired', function (e, response) { const stateExceptions = ['landing']; const requestExceptions = ['/api/users/myself/password']; if (!$rootScope.loginDialogPresented && !_(stateExceptions).contains($state.current.name) && !_(requestExceptions).contains(response.config.url)) { $rootScope.loginDialogPresented = true; - Api.get(function(api) { + Api.get(function (api) { let successful = false; const options = { template: require('./authentication/signin-modal.html'), @@ -493,14 +386,14 @@ function run($rootScope, $uibModal, $state, Api) { $scope.api = api; $scope.hideSignup = true; - $scope.onSuccess = function() { + $scope.onSuccess = function () { authService.loginConfirmed(); $rootScope.loginDialogPresented = false; successful = true; $uibModalInstance.close($scope); }; - $scope.logout = function() { + $scope.logout = function () { $rootScope.loginDialogPresented = false; successful = true; $uibModalInstance.close($scope); @@ -508,7 +401,7 @@ function run($rootScope, $uibModal, $state, Api) { }] }; let modalInstance = $uibModal.open(options); - const modalClosed = function() { + const modalClosed = function () { if (!successful) { modalInstance = $uibModal.open(options); modalInstance.closed.then(modalClosed); diff --git a/web-app/src/ng1/auth/http-auth-interceptor.js b/web-app/admin/src/ng1/auth/http-auth-interceptor.js similarity index 100% rename from web-app/src/ng1/auth/http-auth-interceptor.js rename to web-app/admin/src/ng1/auth/http-auth-interceptor.js diff --git a/web-app/src/ng1/authentication/authentication.component.html b/web-app/admin/src/ng1/authentication/authentication.component.html similarity index 100% rename from web-app/src/ng1/authentication/authentication.component.html rename to web-app/admin/src/ng1/authentication/authentication.component.html diff --git a/web-app/src/ng1/authentication/authentication.component.js b/web-app/admin/src/ng1/authentication/authentication.component.js similarity index 100% rename from web-app/src/ng1/authentication/authentication.component.js rename to web-app/admin/src/ng1/authentication/authentication.component.js diff --git a/web-app/src/ng1/authentication/authorize.component.js b/web-app/admin/src/ng1/authentication/authorize.component.js similarity index 100% rename from web-app/src/ng1/authentication/authorize.component.js rename to web-app/admin/src/ng1/authentication/authorize.component.js diff --git a/web-app/src/ng1/authentication/authorize.html b/web-app/admin/src/ng1/authentication/authorize.html similarity index 100% rename from web-app/src/ng1/authentication/authorize.html rename to web-app/admin/src/ng1/authentication/authorize.html diff --git a/web-app/src/ng1/authentication/idp.signin.html b/web-app/admin/src/ng1/authentication/idp.signin.html similarity index 100% rename from web-app/src/ng1/authentication/idp.signin.html rename to web-app/admin/src/ng1/authentication/idp.signin.html diff --git a/web-app/src/ng1/authentication/idp.signin.js b/web-app/admin/src/ng1/authentication/idp.signin.js similarity index 100% rename from web-app/src/ng1/authentication/idp.signin.js rename to web-app/admin/src/ng1/authentication/idp.signin.js diff --git a/web-app/src/ng1/authentication/index.js b/web-app/admin/src/ng1/authentication/index.js similarity index 100% rename from web-app/src/ng1/authentication/index.js rename to web-app/admin/src/ng1/authentication/index.js diff --git a/web-app/src/ng1/authentication/landing.html b/web-app/admin/src/ng1/authentication/landing.html similarity index 100% rename from web-app/src/ng1/authentication/landing.html rename to web-app/admin/src/ng1/authentication/landing.html diff --git a/web-app/src/ng1/authentication/landing.js b/web-app/admin/src/ng1/authentication/landing.js similarity index 100% rename from web-app/src/ng1/authentication/landing.js rename to web-app/admin/src/ng1/authentication/landing.js diff --git a/web-app/src/ng1/authentication/ldap.signin.html b/web-app/admin/src/ng1/authentication/ldap.signin.html similarity index 100% rename from web-app/src/ng1/authentication/ldap.signin.html rename to web-app/admin/src/ng1/authentication/ldap.signin.html diff --git a/web-app/src/ng1/authentication/ldap.signin.js b/web-app/admin/src/ng1/authentication/ldap.signin.js similarity index 100% rename from web-app/src/ng1/authentication/ldap.signin.js rename to web-app/admin/src/ng1/authentication/ldap.signin.js diff --git a/web-app/src/ng1/authentication/local.signin.html b/web-app/admin/src/ng1/authentication/local.signin.html similarity index 100% rename from web-app/src/ng1/authentication/local.signin.html rename to web-app/admin/src/ng1/authentication/local.signin.html diff --git a/web-app/src/ng1/authentication/local.signin.js b/web-app/admin/src/ng1/authentication/local.signin.js similarity index 100% rename from web-app/src/ng1/authentication/local.signin.js rename to web-app/admin/src/ng1/authentication/local.signin.js diff --git a/web-app/src/ng1/authentication/local.signup.html b/web-app/admin/src/ng1/authentication/local.signup.html similarity index 100% rename from web-app/src/ng1/authentication/local.signup.html rename to web-app/admin/src/ng1/authentication/local.signup.html diff --git a/web-app/src/ng1/authentication/local.signup.js b/web-app/admin/src/ng1/authentication/local.signup.js similarity index 100% rename from web-app/src/ng1/authentication/local.signup.js rename to web-app/admin/src/ng1/authentication/local.signup.js diff --git a/web-app/src/ng1/authentication/signin-modal.html b/web-app/admin/src/ng1/authentication/signin-modal.html similarity index 100% rename from web-app/src/ng1/authentication/signin-modal.html rename to web-app/admin/src/ng1/authentication/signin-modal.html diff --git a/web-app/src/ng1/authentication/signin.component.html b/web-app/admin/src/ng1/authentication/signin.component.html similarity index 100% rename from web-app/src/ng1/authentication/signin.component.html rename to web-app/admin/src/ng1/authentication/signin.component.html diff --git a/web-app/src/ng1/authentication/signin.component.js b/web-app/admin/src/ng1/authentication/signin.component.js similarity index 100% rename from web-app/src/ng1/authentication/signin.component.js rename to web-app/admin/src/ng1/authentication/signin.component.js diff --git a/web-app/src/ng1/css/admin/event/event.scss b/web-app/admin/src/ng1/css/admin/event/event.scss similarity index 100% rename from web-app/src/ng1/css/admin/event/event.scss rename to web-app/admin/src/ng1/css/admin/event/event.scss diff --git a/web-app/src/ng1/css/admin/event/index.scss b/web-app/admin/src/ng1/css/admin/event/index.scss similarity index 100% rename from web-app/src/ng1/css/admin/event/index.scss rename to web-app/admin/src/ng1/css/admin/event/index.scss diff --git a/web-app/src/ng1/css/admin/index.scss b/web-app/admin/src/ng1/css/admin/index.scss similarity index 100% rename from web-app/src/ng1/css/admin/index.scss rename to web-app/admin/src/ng1/css/admin/index.scss diff --git a/web-app/src/ng1/css/admin/team/index.scss b/web-app/admin/src/ng1/css/admin/team/index.scss similarity index 100% rename from web-app/src/ng1/css/admin/team/index.scss rename to web-app/admin/src/ng1/css/admin/team/index.scss diff --git a/web-app/src/ng1/css/admin/team/team.scss b/web-app/admin/src/ng1/css/admin/team/team.scss similarity index 100% rename from web-app/src/ng1/css/admin/team/team.scss rename to web-app/admin/src/ng1/css/admin/team/team.scss diff --git a/web-app/src/ng1/css/admin/user/bulk-import.scss b/web-app/admin/src/ng1/css/admin/user/bulk-import.scss similarity index 100% rename from web-app/src/ng1/css/admin/user/bulk-import.scss rename to web-app/admin/src/ng1/css/admin/user/bulk-import.scss diff --git a/web-app/src/ng1/css/admin/user/index.scss b/web-app/admin/src/ng1/css/admin/user/index.scss similarity index 100% rename from web-app/src/ng1/css/admin/user/index.scss rename to web-app/admin/src/ng1/css/admin/user/index.scss diff --git a/web-app/src/ng1/css/animate.scss b/web-app/admin/src/ng1/css/animate.scss similarity index 100% rename from web-app/src/ng1/css/animate.scss rename to web-app/admin/src/ng1/css/animate.scss diff --git a/web-app/src/ng1/css/animations.scss b/web-app/admin/src/ng1/css/animations.scss similarity index 100% rename from web-app/src/ng1/css/animations.scss rename to web-app/admin/src/ng1/css/animations.scss diff --git a/web-app/src/ng1/css/auth.css b/web-app/admin/src/ng1/css/auth.css similarity index 100% rename from web-app/src/ng1/css/auth.css rename to web-app/admin/src/ng1/css/auth.css diff --git a/web-app/src/ng1/css/auth.scss b/web-app/admin/src/ng1/css/auth.scss similarity index 92% rename from web-app/src/ng1/css/auth.scss rename to web-app/admin/src/ng1/css/auth.scss index 2b1a11f46..5011f579a 100644 --- a/web-app/src/ng1/css/auth.scss +++ b/web-app/admin/src/ng1/css/auth.scss @@ -10,17 +10,6 @@ $small-screen-breakpoint: 1025px; } } -.sliding-bg { - width: 100%; - background-size: cover; - position:absolute; - top: 0; - bottom: 0; - left: 0; - animation: bg-slide 400s linear infinite; - z-index: -1; -} - .outer-container { display:inline; min-height: 100%; @@ -70,16 +59,7 @@ authentication { padding-top: 30px; } -.mage-info-title { - font-size: 8rem; - letter-spacing: 1rem; -} - @media all and (max-width: $small-screen-breakpoint) { - .sliding-bg { - animation: none; - } - .authentication-container { display: inline; } @@ -102,11 +82,6 @@ authentication { .mage-feature-list { display: none; } - - .mage-info-title { - font-size: 4rem; - letter-spacing: none; - } } .mage-feature-list { @@ -116,16 +91,6 @@ authentication { width: 60%; } -.mage-info-title-container { - margin-bottom: 16px; - text-align: center; -} - -.mage-info-subtitle { - margin-top: -10px; - font-size: 1.5rem; -} - .mage-info-feature-icon { display: flex; justify-content: center; diff --git a/web-app/admin/src/ng1/css/authentication.css b/web-app/admin/src/ng1/css/authentication.css new file mode 100644 index 000000000..e69de29bb diff --git a/web-app/src/ng1/css/card/error.scss b/web-app/admin/src/ng1/css/card/error.scss similarity index 100% rename from web-app/src/ng1/css/card/error.scss rename to web-app/admin/src/ng1/css/card/error.scss diff --git a/web-app/src/ng1/css/card/index.scss b/web-app/admin/src/ng1/css/card/index.scss similarity index 100% rename from web-app/src/ng1/css/card/index.scss rename to web-app/admin/src/ng1/css/card/index.scss diff --git a/web-app/src/ng1/css/colors.scss b/web-app/admin/src/ng1/css/colors.scss similarity index 100% rename from web-app/src/ng1/css/colors.scss rename to web-app/admin/src/ng1/css/colors.scss diff --git a/web-app/src/ng1/css/feed.scss b/web-app/admin/src/ng1/css/feed.scss similarity index 100% rename from web-app/src/ng1/css/feed.scss rename to web-app/admin/src/ng1/css/feed.scss diff --git a/web-app/src/ng1/css/form-chooser.scss b/web-app/admin/src/ng1/css/form-chooser.scss similarity index 100% rename from web-app/src/ng1/css/form-chooser.scss rename to web-app/admin/src/ng1/css/form-chooser.scss diff --git a/web-app/src/ng1/css/layer-edit.scss b/web-app/admin/src/ng1/css/layer-edit.scss similarity index 100% rename from web-app/src/ng1/css/layer-edit.scss rename to web-app/admin/src/ng1/css/layer-edit.scss diff --git a/web-app/src/ng1/css/leaflet-overrides.scss b/web-app/admin/src/ng1/css/leaflet-overrides.scss similarity index 100% rename from web-app/src/ng1/css/leaflet-overrides.scss rename to web-app/admin/src/ng1/css/leaflet-overrides.scss diff --git a/web-app/src/ng1/css/map.scss b/web-app/admin/src/ng1/css/map.scss similarity index 100% rename from web-app/src/ng1/css/map.scss rename to web-app/admin/src/ng1/css/map.scss diff --git a/web-app/src/ng1/css/material-select-theme.scss b/web-app/admin/src/ng1/css/material-select-theme.scss similarity index 100% rename from web-app/src/ng1/css/material-select-theme.scss rename to web-app/admin/src/ng1/css/material-select-theme.scss diff --git a/web-app/src/ng1/css/material-theme.scss b/web-app/admin/src/ng1/css/material-theme.scss similarity index 100% rename from web-app/src/ng1/css/material-theme.scss rename to web-app/admin/src/ng1/css/material-theme.scss diff --git a/web-app/src/ng1/css/mdDateTimePicker-overrides.scss b/web-app/admin/src/ng1/css/mdDateTimePicker-overrides.scss similarity index 100% rename from web-app/src/ng1/css/mdDateTimePicker-overrides.scss rename to web-app/admin/src/ng1/css/mdDateTimePicker-overrides.scss diff --git a/web-app/src/ng1/css/navbar.scss b/web-app/admin/src/ng1/css/navbar.scss similarity index 100% rename from web-app/src/ng1/css/navbar.scss rename to web-app/admin/src/ng1/css/navbar.scss diff --git a/web-app/src/ng1/css/observation-edit.scss b/web-app/admin/src/ng1/css/observation-edit.scss similarity index 100% rename from web-app/src/ng1/css/observation-edit.scss rename to web-app/admin/src/ng1/css/observation-edit.scss diff --git a/web-app/src/ng1/css/observation-item.scss b/web-app/admin/src/ng1/css/observation-item.scss similarity index 100% rename from web-app/src/ng1/css/observation-item.scss rename to web-app/admin/src/ng1/css/observation-item.scss diff --git a/web-app/src/ng1/css/observation-view.scss b/web-app/admin/src/ng1/css/observation-view.scss similarity index 100% rename from web-app/src/ng1/css/observation-view.scss rename to web-app/admin/src/ng1/css/observation-view.scss diff --git a/web-app/src/ng1/css/people-item.scss b/web-app/admin/src/ng1/css/people-item.scss similarity index 100% rename from web-app/src/ng1/css/people-item.scss rename to web-app/admin/src/ng1/css/people-item.scss diff --git a/web-app/src/ng1/css/style.scss b/web-app/admin/src/ng1/css/style.scss similarity index 98% rename from web-app/src/ng1/css/style.scss rename to web-app/admin/src/ng1/css/style.scss index 2b486bc5b..726bb3678 100644 --- a/web-app/src/ng1/css/style.scss +++ b/web-app/admin/src/ng1/css/style.scss @@ -1,12 +1,12 @@ @import "./variables.scss"; @import "./material-theme.scss"; -@import "~material-components-web/material-components-web.scss"; +@import "material-components-web/material-components-web.scss"; -@import "~ui-select/dist/select.min.css"; -@import "~font-awesome/css/font-awesome.min.css"; -@import "~jquery-minicolors/jquery.minicolors.css"; -@import "~select2/dist/css/select2.min.css"; +@import "ui-select/dist/select.min.css"; +@import "font-awesome/css/font-awesome.min.css"; +@import "jquery-minicolors/jquery.minicolors.css"; +@import "select2/dist/css/select2.min.css"; @import "./animate.scss"; @import "./colors.scss"; diff --git a/web-app/src/ng1/css/tooltip.scss b/web-app/admin/src/ng1/css/tooltip.scss similarity index 100% rename from web-app/src/ng1/css/tooltip.scss rename to web-app/admin/src/ng1/css/tooltip.scss diff --git a/web-app/src/ng1/css/user-view.scss b/web-app/admin/src/ng1/css/user-view.scss similarity index 100% rename from web-app/src/ng1/css/user-view.scss rename to web-app/admin/src/ng1/css/user-view.scss diff --git a/web-app/src/ng1/css/variables.scss b/web-app/admin/src/ng1/css/variables.scss similarity index 100% rename from web-app/src/ng1/css/variables.scss rename to web-app/admin/src/ng1/css/variables.scss diff --git a/web-app/src/ng1/datetime/datetime.component.html b/web-app/admin/src/ng1/datetime/datetime.component.html similarity index 100% rename from web-app/src/ng1/datetime/datetime.component.html rename to web-app/admin/src/ng1/datetime/datetime.component.html diff --git a/web-app/src/ng1/datetime/datetime.component.js b/web-app/admin/src/ng1/datetime/datetime.component.js similarity index 100% rename from web-app/src/ng1/datetime/datetime.component.js rename to web-app/admin/src/ng1/datetime/datetime.component.js diff --git a/web-app/src/ng1/disclaimer/disclaimer.controller.js b/web-app/admin/src/ng1/disclaimer/disclaimer.controller.js similarity index 100% rename from web-app/src/ng1/disclaimer/disclaimer.controller.js rename to web-app/admin/src/ng1/disclaimer/disclaimer.controller.js diff --git a/web-app/src/ng1/disclaimer/disclaimer.html b/web-app/admin/src/ng1/disclaimer/disclaimer.html similarity index 100% rename from web-app/src/ng1/disclaimer/disclaimer.html rename to web-app/admin/src/ng1/disclaimer/disclaimer.html diff --git a/web-app/src/ng1/factories/api.resource.js b/web-app/admin/src/ng1/factories/api.resource.js similarity index 100% rename from web-app/src/ng1/factories/api.resource.js rename to web-app/admin/src/ng1/factories/api.resource.js diff --git a/web-app/src/ng1/factories/authentication-configuration.service.js b/web-app/admin/src/ng1/factories/authentication-configuration.service.js similarity index 100% rename from web-app/src/ng1/factories/authentication-configuration.service.js rename to web-app/admin/src/ng1/factories/authentication-configuration.service.js diff --git a/web-app/src/ng1/factories/device-paging.service.js b/web-app/admin/src/ng1/factories/device-paging.service.js similarity index 100% rename from web-app/src/ng1/factories/device-paging.service.js rename to web-app/admin/src/ng1/factories/device-paging.service.js diff --git a/web-app/src/ng1/factories/device.service.js b/web-app/admin/src/ng1/factories/device.service.js similarity index 100% rename from web-app/src/ng1/factories/device.service.js rename to web-app/admin/src/ng1/factories/device.service.js diff --git a/web-app/src/ng1/factories/event.resource.js b/web-app/admin/src/ng1/factories/event.resource.js similarity index 100% rename from web-app/src/ng1/factories/event.resource.js rename to web-app/admin/src/ng1/factories/event.resource.js diff --git a/web-app/src/ng1/factories/event.service.js b/web-app/admin/src/ng1/factories/event.service.js similarity index 100% rename from web-app/src/ng1/factories/event.service.js rename to web-app/admin/src/ng1/factories/event.service.js diff --git a/web-app/src/ng1/factories/feature.service.js b/web-app/admin/src/ng1/factories/feature.service.js similarity index 100% rename from web-app/src/ng1/factories/feature.service.js rename to web-app/admin/src/ng1/factories/feature.service.js diff --git a/web-app/src/ng1/factories/filter.service.js b/web-app/admin/src/ng1/factories/filter.service.js similarity index 100% rename from web-app/src/ng1/factories/filter.service.js rename to web-app/admin/src/ng1/factories/filter.service.js diff --git a/web-app/src/ng1/factories/form.resource.js b/web-app/admin/src/ng1/factories/form.resource.js similarity index 100% rename from web-app/src/ng1/factories/form.resource.js rename to web-app/admin/src/ng1/factories/form.resource.js diff --git a/web-app/src/ng1/factories/geometry.service.js b/web-app/admin/src/ng1/factories/geometry.service.js similarity index 100% rename from web-app/src/ng1/factories/geometry.service.js rename to web-app/admin/src/ng1/factories/geometry.service.js diff --git a/web-app/src/ng1/factories/index.js b/web-app/admin/src/ng1/factories/index.js similarity index 100% rename from web-app/src/ng1/factories/index.js rename to web-app/admin/src/ng1/factories/index.js diff --git a/web-app/src/ng1/factories/layer.resource.js b/web-app/admin/src/ng1/factories/layer.resource.js similarity index 100% rename from web-app/src/ng1/factories/layer.resource.js rename to web-app/admin/src/ng1/factories/layer.resource.js diff --git a/web-app/src/ng1/factories/layer.service.js b/web-app/admin/src/ng1/factories/layer.service.js similarity index 100% rename from web-app/src/ng1/factories/layer.service.js rename to web-app/admin/src/ng1/factories/layer.service.js diff --git a/web-app/src/ng1/factories/local-storage.service.js b/web-app/admin/src/ng1/factories/local-storage.service.js similarity index 100% rename from web-app/src/ng1/factories/local-storage.service.js rename to web-app/admin/src/ng1/factories/local-storage.service.js diff --git a/web-app/src/ng1/factories/location.resource.js b/web-app/admin/src/ng1/factories/location.resource.js similarity index 100% rename from web-app/src/ng1/factories/location.resource.js rename to web-app/admin/src/ng1/factories/location.resource.js diff --git a/web-app/src/ng1/factories/location.service.js b/web-app/admin/src/ng1/factories/location.service.js similarity index 100% rename from web-app/src/ng1/factories/location.service.js rename to web-app/admin/src/ng1/factories/location.service.js diff --git a/web-app/src/ng1/factories/login.service.js b/web-app/admin/src/ng1/factories/login.service.js similarity index 100% rename from web-app/src/ng1/factories/login.service.js rename to web-app/admin/src/ng1/factories/login.service.js diff --git a/web-app/src/ng1/factories/map.service.js b/web-app/admin/src/ng1/factories/map.service.js similarity index 93% rename from web-app/src/ng1/factories/map.service.js rename to web-app/admin/src/ng1/factories/map.service.js index ce4704abd..943d5a710 100644 --- a/web-app/src/ng1/factories/map.service.js +++ b/web-app/admin/src/ng1/factories/map.service.js @@ -2,9 +2,9 @@ const _ = require('underscore'); module.exports = MapService; -MapService.$inject = ['EventService', 'LocationService', 'FeatureService', 'LocalStorageService', 'MapPopupService']; +MapService.$inject = ['EventService', 'LocationService', 'FeatureService', 'LocalStorageService']; -function MapService(EventService, LocationService, FeatureService, LocalStorageService, MapPopupService) { +function MapService(EventService, LocationService, FeatureService, LocalStorageService) { // Map Service should delegate to some map provider that implements delegate interface // In this case should delegate to leaflet directive. See if this is possible @@ -43,14 +43,15 @@ function MapService(EventService, LocationService, FeatureService, LocalStorageS followedFeature: followedFeature }; - var delegate = null; - var baseLayer = null; - var feedLayers = {}; - var rasterLayers = {}; - var vectorLayers = {}; - var listeners = []; - var observationsById = {}; - var usersById = {}; + let delegate = null; + let baseLayer = null; + let feedLayers = {}; + let rasterLayers = {}; + let vectorLayers = {}; + let gridLayers = {}; + let listeners = []; + let observationsById = {}; + let usersById = {}; var layersChangedListener = { onLayersChanged: onLayersChanged @@ -93,10 +94,8 @@ function MapService(EventService, LocationService, FeatureService, LocalStorageS observationLayer.featureIdToLayer[feature.id] = layer; }, popup: (layer, feature) => { - MapPopupService.popupObservation(layer, feature); }, onLayer: (layer, feature) => { - MapPopupService.registerObservation(layer, feature); } } }; @@ -116,14 +115,34 @@ function MapService(EventService, LocationService, FeatureService, LocalStorageS colorBuckets: LocationService.colorBuckets }, popup: (layer, feature) => { - MapPopupService.popupUser(layer, feature); }, onLayer: (layer, feature) => { - MapPopupService.registerUser(layer, usersById[feature.id]); } } }; service.createVectorLayer(peopleLayer); + + const garsOverlay = { + id: 'gars', + name: 'GARS', + group: 'grid', + type: 'grid', + options: { + selected: false + } + } + createGridLayer(garsOverlay); + + const mgrsOverlay = { + id: 'mgrs', + name: 'MGRS', + group: 'grid', + type: 'grid', + options: { + selected: false + } + } + createGridLayer(mgrsOverlay); } function onLayersChanged(changed, event) { @@ -207,10 +226,8 @@ function MapService(EventService, LocationService, FeatureService, LocalStorageS iconWidth: 24, selected: true, popup: (layer, feature) => { - MapPopupService.popupFeedItem(layer, feed, feature); }, onLayer: (layer, feature) => { - MapPopupService.registerFeedItem(layer, feed, feature); }, iconUrl } @@ -268,7 +285,7 @@ function MapService(EventService, LocationService, FeatureService, LocalStorageS service.updateFeatureForLayer(updated.location, 'people'); // pan/zoom map to user if this is the user we are following - if (followFeatureInLayer.layer === 'people' && user.id === followFeatureInLayer.id) + if (this.followFeature.layer === 'people' && user.id === this.followFeature.id) service.zoomToFeatureInLayer(user, 'people'); } }); @@ -287,7 +304,7 @@ function MapService(EventService, LocationService, FeatureService, LocalStorageS listeners.push(listener); if (_.isFunction(listener.onLayersChanged)) { - const layers = _.values(rasterLayers).concat(_.values(vectorLayers)); + const layers = _.values(rasterLayers).concat(_.values(vectorLayers)).concat(_.values(gridLayers)); listener.onLayersChanged({added: layers}); } @@ -331,6 +348,15 @@ function MapService(EventService, LocationService, FeatureService, LocalStorageS vectorLayers[layer.id] = layer; } + function createGridLayer(layer) { + layersChanged({ + added: [layer] + }); + + layer.featuresById = {}; + gridLayers[layer.id] = layer; + } + function createFeedLayer(layer) { layersChanged({ added: [layer] diff --git a/web-app/src/ng1/factories/observation.resource.js b/web-app/admin/src/ng1/factories/observation.resource.js similarity index 100% rename from web-app/src/ng1/factories/observation.resource.js rename to web-app/admin/src/ng1/factories/observation.resource.js diff --git a/web-app/src/ng1/factories/observation.service.js b/web-app/admin/src/ng1/factories/observation.service.js similarity index 100% rename from web-app/src/ng1/factories/observation.service.js rename to web-app/admin/src/ng1/factories/observation.service.js diff --git a/web-app/src/ng1/factories/plugin.resource.js b/web-app/admin/src/ng1/factories/plugin.resource.js similarity index 100% rename from web-app/src/ng1/factories/plugin.resource.js rename to web-app/admin/src/ng1/factories/plugin.resource.js diff --git a/web-app/src/ng1/factories/polling.service.js b/web-app/admin/src/ng1/factories/polling.service.js similarity index 100% rename from web-app/src/ng1/factories/polling.service.js rename to web-app/admin/src/ng1/factories/polling.service.js diff --git a/web-app/src/ng1/factories/settings.resource.js b/web-app/admin/src/ng1/factories/settings.resource.js similarity index 100% rename from web-app/src/ng1/factories/settings.resource.js rename to web-app/admin/src/ng1/factories/settings.resource.js diff --git a/web-app/src/ng1/factories/team-paging.service.js b/web-app/admin/src/ng1/factories/team-paging.service.js similarity index 100% rename from web-app/src/ng1/factories/team-paging.service.js rename to web-app/admin/src/ng1/factories/team-paging.service.js diff --git a/web-app/src/ng1/factories/team.resource.js b/web-app/admin/src/ng1/factories/team.resource.js similarity index 100% rename from web-app/src/ng1/factories/team.resource.js rename to web-app/admin/src/ng1/factories/team.resource.js diff --git a/web-app/src/ng1/factories/user-paging.service.js b/web-app/admin/src/ng1/factories/user-paging.service.js similarity index 100% rename from web-app/src/ng1/factories/user-paging.service.js rename to web-app/admin/src/ng1/factories/user-paging.service.js diff --git a/web-app/src/ng1/factories/user.icon.service.js b/web-app/admin/src/ng1/factories/user.icon.service.js similarity index 100% rename from web-app/src/ng1/factories/user.icon.service.js rename to web-app/admin/src/ng1/factories/user.icon.service.js diff --git a/web-app/src/ng1/factories/user.service.js b/web-app/admin/src/ng1/factories/user.service.js similarity index 99% rename from web-app/src/ng1/factories/user.service.js rename to web-app/admin/src/ng1/factories/user.service.js index e7ba5a0ac..da1a96776 100644 --- a/web-app/src/ng1/factories/user.service.js +++ b/web-app/admin/src/ng1/factories/user.service.js @@ -209,6 +209,8 @@ function UserService($rootScope, $q, $http, $httpParamSerializer, $location, $st return $http.get('/api/users/' + id, { params: parameters }).then(res => res.data) } + + function getAllUsers(options) { options = options || {}; const queryParams = { diff --git a/web-app/src/ng1/file-upload/file-upload-grid.directive.html b/web-app/admin/src/ng1/file-upload/file-upload-grid.directive.html similarity index 100% rename from web-app/src/ng1/file-upload/file-upload-grid.directive.html rename to web-app/admin/src/ng1/file-upload/file-upload-grid.directive.html diff --git a/web-app/src/ng1/file-upload/file-upload-grid.directive.js b/web-app/admin/src/ng1/file-upload/file-upload-grid.directive.js similarity index 100% rename from web-app/src/ng1/file-upload/file-upload-grid.directive.js rename to web-app/admin/src/ng1/file-upload/file-upload-grid.directive.js diff --git a/web-app/src/ng1/file-upload/file.browser.component.js b/web-app/admin/src/ng1/file-upload/file.browser.component.js similarity index 100% rename from web-app/src/ng1/file-upload/file.browser.component.js rename to web-app/admin/src/ng1/file-upload/file.browser.component.js diff --git a/web-app/src/ng1/file-upload/file.browser.html b/web-app/admin/src/ng1/file-upload/file.browser.html similarity index 100% rename from web-app/src/ng1/file-upload/file.browser.html rename to web-app/admin/src/ng1/file-upload/file.browser.html diff --git a/web-app/src/ng1/file-upload/file.upload.component.js b/web-app/admin/src/ng1/file-upload/file.upload.component.js similarity index 100% rename from web-app/src/ng1/file-upload/file.upload.component.js rename to web-app/admin/src/ng1/file-upload/file.upload.component.js diff --git a/web-app/src/ng1/file-upload/file.upload.html b/web-app/admin/src/ng1/file-upload/file.upload.html similarity index 100% rename from web-app/src/ng1/file-upload/file.upload.html rename to web-app/admin/src/ng1/file-upload/file.upload.html diff --git a/web-app/src/ng1/filters/filename.filter.js b/web-app/admin/src/ng1/filters/filename.filter.js similarity index 100% rename from web-app/src/ng1/filters/filename.filter.js rename to web-app/admin/src/ng1/filters/filename.filter.js diff --git a/web-app/src/ng1/filters/filesize.filter.js b/web-app/admin/src/ng1/filters/filesize.filter.js similarity index 100% rename from web-app/src/ng1/filters/filesize.filter.js rename to web-app/admin/src/ng1/filters/filesize.filter.js diff --git a/web-app/src/ng1/filters/geometry.filter.js b/web-app/admin/src/ng1/filters/geometry.filter.js similarity index 100% rename from web-app/src/ng1/filters/geometry.filter.js rename to web-app/admin/src/ng1/filters/geometry.filter.js diff --git a/web-app/src/ng1/filters/index.js b/web-app/admin/src/ng1/filters/index.js similarity index 100% rename from web-app/src/ng1/filters/index.js rename to web-app/admin/src/ng1/filters/index.js diff --git a/web-app/src/ng1/filters/moment.filter.js b/web-app/admin/src/ng1/filters/moment.filter.js similarity index 100% rename from web-app/src/ng1/filters/moment.filter.js rename to web-app/admin/src/ng1/filters/moment.filter.js diff --git a/web-app/src/ng1/filters/paging-offset.filter.js b/web-app/admin/src/ng1/filters/paging-offset.filter.js similarity index 100% rename from web-app/src/ng1/filters/paging-offset.filter.js rename to web-app/admin/src/ng1/filters/paging-offset.filter.js diff --git a/web-app/src/ng1/filters/password.filter.js b/web-app/admin/src/ng1/filters/password.filter.js similarity index 100% rename from web-app/src/ng1/filters/password.filter.js rename to web-app/admin/src/ng1/filters/password.filter.js diff --git a/web-app/src/ng1/filters/polling.filter.js b/web-app/admin/src/ng1/filters/polling.filter.js similarity index 100% rename from web-app/src/ng1/filters/polling.filter.js rename to web-app/admin/src/ng1/filters/polling.filter.js diff --git a/web-app/src/ng1/filters/user.filter.js b/web-app/admin/src/ng1/filters/user.filter.js similarity index 100% rename from web-app/src/ng1/filters/user.filter.js rename to web-app/admin/src/ng1/filters/user.filter.js diff --git a/web-app/src/ng1/mage/banner.component.js b/web-app/admin/src/ng1/mage/banner.component.js similarity index 100% rename from web-app/src/ng1/mage/banner.component.js rename to web-app/admin/src/ng1/mage/banner.component.js diff --git a/web-app/src/ng1/mage/banner.html b/web-app/admin/src/ng1/mage/banner.html similarity index 100% rename from web-app/src/ng1/mage/banner.html rename to web-app/admin/src/ng1/mage/banner.html diff --git a/web-app/src/ng1/mage/color.picker.directive.js b/web-app/admin/src/ng1/mage/color.picker.directive.js similarity index 100% rename from web-app/src/ng1/mage/color.picker.directive.js rename to web-app/admin/src/ng1/mage/color.picker.directive.js diff --git a/web-app/src/ng1/mage/countries-land-10km.geo.json b/web-app/admin/src/ng1/mage/countries-land-10km.geo.json similarity index 100% rename from web-app/src/ng1/mage/countries-land-10km.geo.json rename to web-app/admin/src/ng1/mage/countries-land-10km.geo.json diff --git a/web-app/src/ng1/mage/equals.directive.js b/web-app/admin/src/ng1/mage/equals.directive.js similarity index 100% rename from web-app/src/ng1/mage/equals.directive.js rename to web-app/admin/src/ng1/mage/equals.directive.js diff --git a/web-app/src/ng1/mage/index.js b/web-app/admin/src/ng1/mage/index.js similarity index 60% rename from web-app/src/ng1/mage/index.js rename to web-app/admin/src/ng1/mage/index.js index 22a738adf..ba9426ce2 100644 --- a/web-app/src/ng1/mage/index.js +++ b/web-app/admin/src/ng1/mage/index.js @@ -1,12 +1,7 @@ import angular from 'angular'; import banner from './banner.component'; -import leaflet from './leaflet.component'; angular.module('mage') - .component('mageInfo', require('./mage-info.component.js')) .directive('colorPicker', require('./color.picker.directive')) .directive('equals', require('./equals.directive')) .component('banner', banner) - .component('leaflet', leaflet); - -require('./navbar'); \ No newline at end of file diff --git a/web-app/src/ng1/mage/mage-nav.controller.js b/web-app/admin/src/ng1/mage/mage-nav.controller.js similarity index 96% rename from web-app/src/ng1/mage/mage-nav.controller.js rename to web-app/admin/src/ng1/mage/mage-nav.controller.js index 0dee19964..4120c81a2 100644 --- a/web-app/src/ng1/mage/mage-nav.controller.js +++ b/web-app/admin/src/ng1/mage/mage-nav.controller.js @@ -12,7 +12,6 @@ function NavController($rootScope, $scope) { this.feedToggle = function() { this.toggleFeed = { - foo: 'bar' }; } } diff --git a/web-app/src/ng1/material-components/index.js b/web-app/admin/src/ng1/material-components/index.js similarity index 100% rename from web-app/src/ng1/material-components/index.js rename to web-app/admin/src/ng1/material-components/index.js diff --git a/web-app/src/ng1/material-components/menu.component.html b/web-app/admin/src/ng1/material-components/menu.component.html similarity index 100% rename from web-app/src/ng1/material-components/menu.component.html rename to web-app/admin/src/ng1/material-components/menu.component.html diff --git a/web-app/src/ng1/material-components/menu.component.js b/web-app/admin/src/ng1/material-components/menu.component.js similarity index 100% rename from web-app/src/ng1/material-components/menu.component.js rename to web-app/admin/src/ng1/material-components/menu.component.js diff --git a/web-app/src/ng1/material-components/multiselect.component.html b/web-app/admin/src/ng1/material-components/multiselect.component.html similarity index 100% rename from web-app/src/ng1/material-components/multiselect.component.html rename to web-app/admin/src/ng1/material-components/multiselect.component.html diff --git a/web-app/src/ng1/material-components/multiselect.component.js b/web-app/admin/src/ng1/material-components/multiselect.component.js similarity index 100% rename from web-app/src/ng1/material-components/multiselect.component.js rename to web-app/admin/src/ng1/material-components/multiselect.component.js diff --git a/web-app/src/ng1/material-components/snackbar.component.html b/web-app/admin/src/ng1/material-components/snackbar.component.html similarity index 100% rename from web-app/src/ng1/material-components/snackbar.component.html rename to web-app/admin/src/ng1/material-components/snackbar.component.html diff --git a/web-app/src/ng1/material-components/snackbar.component.js b/web-app/admin/src/ng1/material-components/snackbar.component.js similarity index 100% rename from web-app/src/ng1/material-components/snackbar.component.js rename to web-app/admin/src/ng1/material-components/snackbar.component.js diff --git a/web-app/src/ng1/material-components/typeahead.select.component.html b/web-app/admin/src/ng1/material-components/typeahead.select.component.html similarity index 100% rename from web-app/src/ng1/material-components/typeahead.select.component.html rename to web-app/admin/src/ng1/material-components/typeahead.select.component.html diff --git a/web-app/src/ng1/material-components/typeahead.select.component.js b/web-app/admin/src/ng1/material-components/typeahead.select.component.js similarity index 100% rename from web-app/src/ng1/material-components/typeahead.select.component.js rename to web-app/admin/src/ng1/material-components/typeahead.select.component.js diff --git a/web-app/src/ng1/mage/navbar/navbar.component.html b/web-app/admin/src/ng1/navbar/navbar.component.html similarity index 69% rename from web-app/src/ng1/mage/navbar/navbar.component.html rename to web-app/admin/src/ng1/navbar/navbar.component.html index 8decbbd24..d5a7cbb09 100644 --- a/web-app/src/ng1/mage/navbar/navbar.component.html +++ b/web-app/admin/src/ng1/navbar/navbar.component.html @@ -3,36 +3,22 @@
menu - -
-
- - - - +
-
- - Administration Options -
- + info About MAGE
diff --git a/web-app/admin/src/ng1/navbar/navbar.component.js b/web-app/admin/src/ng1/navbar/navbar.component.js new file mode 100644 index 000000000..50ee8ac29 --- /dev/null +++ b/web-app/admin/src/ng1/navbar/navbar.component.js @@ -0,0 +1,35 @@ +module.exports = { + template: require('./navbar.component.html'), + bindings: { + myself: '<' + }, + controller: NavbarController +}; + +NavbarController.$inject = ['$state', '$transitions', 'UserService']; + +function NavbarController($state, $transitions, UserService) { + this.hasAdminPermission = false; + + this.feed = { + visible: true + }; + + this.$onInit = function () { + console.log('hello nav bar init') + this.state = $state.current.name; + $transitions.onSuccess({}, transition => { + this.state = transition.to().name; + }); + }; + + this.$onChanges = function(changes) { + if (changes.myself) { + this.hasAdminPermission = UserService.amAdmin; + } + } + + this.logout = function() { + UserService.logout(); + }; +} \ No newline at end of file diff --git a/web-app/src/ng1/setup/setup.controller.js b/web-app/admin/src/ng1/setup/setup.controller.js similarity index 100% rename from web-app/src/ng1/setup/setup.controller.js rename to web-app/admin/src/ng1/setup/setup.controller.js diff --git a/web-app/src/ng1/setup/setup.html b/web-app/admin/src/ng1/setup/setup.html similarity index 100% rename from web-app/src/ng1/setup/setup.html rename to web-app/admin/src/ng1/setup/setup.html diff --git a/web-app/src/ng1/user/avatar.edit.component.js b/web-app/admin/src/ng1/user/avatar.edit.component.js similarity index 100% rename from web-app/src/ng1/user/avatar.edit.component.js rename to web-app/admin/src/ng1/user/avatar.edit.component.js diff --git a/web-app/src/ng1/user/avatar.edit.html b/web-app/admin/src/ng1/user/avatar.edit.html similarity index 100% rename from web-app/src/ng1/user/avatar.edit.html rename to web-app/admin/src/ng1/user/avatar.edit.html diff --git a/web-app/src/ng1/user/icon.edit.component.js b/web-app/admin/src/ng1/user/icon.edit.component.js similarity index 100% rename from web-app/src/ng1/user/icon.edit.component.js rename to web-app/admin/src/ng1/user/icon.edit.component.js diff --git a/web-app/src/ng1/user/icon.edit.html b/web-app/admin/src/ng1/user/icon.edit.html similarity index 100% rename from web-app/src/ng1/user/icon.edit.html rename to web-app/admin/src/ng1/user/icon.edit.html diff --git a/web-app/src/ng1/user/index.js b/web-app/admin/src/ng1/user/index.js similarity index 100% rename from web-app/src/ng1/user/index.js rename to web-app/admin/src/ng1/user/index.js diff --git a/web-app/src/ng1/user/profile.component.js b/web-app/admin/src/ng1/user/profile.component.js similarity index 100% rename from web-app/src/ng1/user/profile.component.js rename to web-app/admin/src/ng1/user/profile.component.js diff --git a/web-app/src/ng1/user/profile.html b/web-app/admin/src/ng1/user/profile.html similarity index 100% rename from web-app/src/ng1/user/profile.html rename to web-app/admin/src/ng1/user/profile.html diff --git a/web-app/src/ng1/user/user-icon.directive.js b/web-app/admin/src/ng1/user/user-icon.directive.js similarity index 100% rename from web-app/src/ng1/user/user-icon.directive.js rename to web-app/admin/src/ng1/user/user-icon.directive.js diff --git a/web-app/src/ng1/user/user.reset.password.controller.js b/web-app/admin/src/ng1/user/user.reset.password.controller.js similarity index 100% rename from web-app/src/ng1/user/user.reset.password.controller.js rename to web-app/admin/src/ng1/user/user.reset.password.controller.js diff --git a/web-app/src/ng1/user/user.reset.password.html b/web-app/admin/src/ng1/user/user.reset.password.html similarity index 100% rename from web-app/src/ng1/user/user.reset.password.html rename to web-app/admin/src/ng1/user/user.reset.password.html diff --git a/web-app/src/ng1/vendor/bootstrap/config.json b/web-app/admin/src/ng1/vendor/bootstrap/config.json similarity index 100% rename from web-app/src/ng1/vendor/bootstrap/config.json rename to web-app/admin/src/ng1/vendor/bootstrap/config.json diff --git a/web-app/src/ng1/vendor/bootstrap/css/bootstrap-theme.css b/web-app/admin/src/ng1/vendor/bootstrap/css/bootstrap-theme.css similarity index 100% rename from web-app/src/ng1/vendor/bootstrap/css/bootstrap-theme.css rename to web-app/admin/src/ng1/vendor/bootstrap/css/bootstrap-theme.css diff --git a/web-app/src/ng1/vendor/bootstrap/css/bootstrap-theme.min.css b/web-app/admin/src/ng1/vendor/bootstrap/css/bootstrap-theme.min.css similarity index 100% rename from web-app/src/ng1/vendor/bootstrap/css/bootstrap-theme.min.css rename to web-app/admin/src/ng1/vendor/bootstrap/css/bootstrap-theme.min.css diff --git a/web-app/src/ng1/vendor/bootstrap/css/bootstrap.css b/web-app/admin/src/ng1/vendor/bootstrap/css/bootstrap.css similarity index 100% rename from web-app/src/ng1/vendor/bootstrap/css/bootstrap.css rename to web-app/admin/src/ng1/vendor/bootstrap/css/bootstrap.css diff --git a/web-app/src/ng1/vendor/bootstrap/css/bootstrap.min.css b/web-app/admin/src/ng1/vendor/bootstrap/css/bootstrap.min.css similarity index 100% rename from web-app/src/ng1/vendor/bootstrap/css/bootstrap.min.css rename to web-app/admin/src/ng1/vendor/bootstrap/css/bootstrap.min.css diff --git a/web-app/src/ng1/vendor/bootstrap/fonts/glyphicons-halflings-regular.eot b/web-app/admin/src/ng1/vendor/bootstrap/fonts/glyphicons-halflings-regular.eot similarity index 100% rename from web-app/src/ng1/vendor/bootstrap/fonts/glyphicons-halflings-regular.eot rename to web-app/admin/src/ng1/vendor/bootstrap/fonts/glyphicons-halflings-regular.eot diff --git a/web-app/src/ng1/vendor/bootstrap/fonts/glyphicons-halflings-regular.svg b/web-app/admin/src/ng1/vendor/bootstrap/fonts/glyphicons-halflings-regular.svg similarity index 100% rename from web-app/src/ng1/vendor/bootstrap/fonts/glyphicons-halflings-regular.svg rename to web-app/admin/src/ng1/vendor/bootstrap/fonts/glyphicons-halflings-regular.svg diff --git a/web-app/src/ng1/vendor/bootstrap/fonts/glyphicons-halflings-regular.ttf b/web-app/admin/src/ng1/vendor/bootstrap/fonts/glyphicons-halflings-regular.ttf similarity index 100% rename from web-app/src/ng1/vendor/bootstrap/fonts/glyphicons-halflings-regular.ttf rename to web-app/admin/src/ng1/vendor/bootstrap/fonts/glyphicons-halflings-regular.ttf diff --git a/web-app/src/ng1/vendor/bootstrap/fonts/glyphicons-halflings-regular.woff b/web-app/admin/src/ng1/vendor/bootstrap/fonts/glyphicons-halflings-regular.woff similarity index 100% rename from web-app/src/ng1/vendor/bootstrap/fonts/glyphicons-halflings-regular.woff rename to web-app/admin/src/ng1/vendor/bootstrap/fonts/glyphicons-halflings-regular.woff diff --git a/web-app/src/ng1/vendor/bootstrap/fonts/glyphicons-halflings-regular.woff2 b/web-app/admin/src/ng1/vendor/bootstrap/fonts/glyphicons-halflings-regular.woff2 similarity index 100% rename from web-app/src/ng1/vendor/bootstrap/fonts/glyphicons-halflings-regular.woff2 rename to web-app/admin/src/ng1/vendor/bootstrap/fonts/glyphicons-halflings-regular.woff2 diff --git a/web-app/src/ng1/vendor/material-design-icons/fonts.gstatic.com/s/materialicons/v48/flUhRq6tzZclQEJ-Vdg-IuiaDsNcIhQ8tQ.woff2 b/web-app/admin/src/ng1/vendor/material-design-icons/fonts.gstatic.com/s/materialicons/v48/flUhRq6tzZclQEJ-Vdg-IuiaDsNcIhQ8tQ.woff2 similarity index 100% rename from web-app/src/ng1/vendor/material-design-icons/fonts.gstatic.com/s/materialicons/v48/flUhRq6tzZclQEJ-Vdg-IuiaDsNcIhQ8tQ.woff2 rename to web-app/admin/src/ng1/vendor/material-design-icons/fonts.gstatic.com/s/materialicons/v48/flUhRq6tzZclQEJ-Vdg-IuiaDsNcIhQ8tQ.woff2 diff --git a/web-app/src/ng1/vendor/material-design-icons/fonts.gstatic.com/s/materialiconsoutlined/v14/gok-H7zzDkdnRel8-DQ6KAXJ69wP1tGnf4ZGhUcel5euIg.woff2 b/web-app/admin/src/ng1/vendor/material-design-icons/fonts.gstatic.com/s/materialiconsoutlined/v14/gok-H7zzDkdnRel8-DQ6KAXJ69wP1tGnf4ZGhUcel5euIg.woff2 similarity index 100% rename from web-app/src/ng1/vendor/material-design-icons/fonts.gstatic.com/s/materialiconsoutlined/v14/gok-H7zzDkdnRel8-DQ6KAXJ69wP1tGnf4ZGhUcel5euIg.woff2 rename to web-app/admin/src/ng1/vendor/material-design-icons/fonts.gstatic.com/s/materialiconsoutlined/v14/gok-H7zzDkdnRel8-DQ6KAXJ69wP1tGnf4ZGhUcel5euIg.woff2 diff --git a/web-app/src/ng1/vendor/material-design-icons/fonts.gstatic.com/s/materialiconstwotone/v13/hESh6WRmNCxEqUmNyh3JDeGxjVVyMg4tHGctNCu0NjbrHg.woff2 b/web-app/admin/src/ng1/vendor/material-design-icons/fonts.gstatic.com/s/materialiconstwotone/v13/hESh6WRmNCxEqUmNyh3JDeGxjVVyMg4tHGctNCu0NjbrHg.woff2 similarity index 100% rename from web-app/src/ng1/vendor/material-design-icons/fonts.gstatic.com/s/materialiconstwotone/v13/hESh6WRmNCxEqUmNyh3JDeGxjVVyMg4tHGctNCu0NjbrHg.woff2 rename to web-app/admin/src/ng1/vendor/material-design-icons/fonts.gstatic.com/s/materialiconstwotone/v13/hESh6WRmNCxEqUmNyh3JDeGxjVVyMg4tHGctNCu0NjbrHg.woff2 diff --git a/web-app/src/ng1/vendor/material-design-icons/icons.css b/web-app/admin/src/ng1/vendor/material-design-icons/icons.css similarity index 100% rename from web-app/src/ng1/vendor/material-design-icons/icons.css rename to web-app/admin/src/ng1/vendor/material-design-icons/icons.css diff --git a/web-app/admin/src/polyfills.ts b/web-app/admin/src/polyfills.ts new file mode 100644 index 000000000..21c5e5eb4 --- /dev/null +++ b/web-app/admin/src/polyfills.ts @@ -0,0 +1,58 @@ +/** + * This file includes polyfills needed by Angular and is loaded before the app. + * You can add your own extra polyfills to this file. + * + * This file is divided into 2 sections: + * 1. Browser polyfills. These are applied before loading ZoneJS and are sorted by browsers. + * 2. Application imports. Files imported after ZoneJS that should be loaded before your main + * file. + * + * The current setup is for so-called "evergreen" browsers; the last versions of browsers that + * automatically update themselves. This includes Safari >= 10, Chrome >= 55 (including Opera), + * Edge >= 13 on the desktop, and iOS 10 and Chrome on mobile. + * + * Learn more in https://angular.io/guide/browser-support + */ + +/*************************************************************************************************** + * BROWSER POLYFILLS + */ + +/** + * By default, zone.js will patch all possible macroTask and DomEvents + * user can disable parts of macroTask/DomEvents patch by setting following flags + * because those flags need to be set before `zone.js` being loaded, and webpack + * will put import in the top of bundle, so user need to create a separate file + * in this directory (for example: zone-flags.ts), and put the following flags + * into that file, and then add the following code before importing zone.js. + * import './zone-flags.ts'; + * + * The flags allowed in zone-flags.ts are listed here. + * + * The following flags will work for all browsers. + * + * (window as any).__Zone_disable_requestAnimationFrame = true; // disable patch requestAnimationFrame + * (window as any).__Zone_disable_on_property = true; // disable patch onProperty such as onclick + * (window as any).__zone_symbol__UNPATCHED_EVENTS = ['scroll', 'mousemove']; // disable patch specified eventNames + * + * in IE/Edge developer tools, the addEventListener will also be wrapped by zone.js + * with the following flag, it will bypass `zone.js` patch for IE/Edge + * + * (window as any).__Zone_enable_cross_context_check = true; + * + */ + +/*************************************************************************************************** + * Zone JS is required by default for Angular itself. + */ +import 'zone.js'; // Included with Angular CLI. + + +/*************************************************************************************************** + * APPLICATION IMPORTS + */ +(window as any).global = window; +(window as any).process = { browser: true }; +// @ts-ignore +window.Buffer = window.Buffer || require('buffer').Buffer; + diff --git a/web-app/admin/src/roboto.scss b/web-app/admin/src/roboto.scss new file mode 100644 index 000000000..71219d2d3 --- /dev/null +++ b/web-app/admin/src/roboto.scss @@ -0,0 +1,153 @@ +/* Thin */ +@font-face { + font-family: "Roboto"; + font-style: normal; + font-weight: 200; + src: url('./fonts/Roboto-Thin.ttf') format('truetype'); +} +@font-face { + font-family: "Roboto"; + font-style: italic; + font-weight: 200; + src: url("./fonts/Roboto-ThinItalic.ttf") format('truetype'); +} + +/* Light */ +@font-face { + font-family: "Roboto"; + font-style: normal; + font-weight: 300; + src: url("./fonts/Roboto-Light.ttf") format('truetype'); +} +@font-face { + font-family: "Roboto"; + font-style: italic; + font-weight: 300; + src: url("./fonts/Roboto-LightItalic.ttf") format('truetype'); +} + +/* Regular */ +@font-face { + font-family: "Roboto"; + font-style: normal; + font-weight: 400; + src: url("./fonts/Roboto-Regular.ttf") format('truetype'); +} +@font-face { + font-family: "Roboto"; + font-style: italic; + font-weight: 400; + src: url("./fonts/Roboto-Italic.ttf") format('truetype'); +} + +/* Medium */ +@font-face { + font-family: "Roboto"; + font-style: normal; + font-weight: 500; + src: url("./fonts/Roboto-Medium.ttf") format('truetype'); +} +@font-face { + font-family: "Roboto"; + font-style: italic; + font-weight: 500; + src: url("./fonts/Roboto-MediumItalic.ttf") format('truetype'); +} + +/* Bold */ +@font-face { + font-family: "Roboto"; + font-style: normal; + font-weight: 600; + src: url("./fonts/Roboto-Bold.ttf") format('truetype'); +} +@font-face { + font-family: "Roboto"; + font-style: italic; + font-weight: 600; + src: url("./fonts/Roboto-BoldItalic.ttf") format('truetype'); +} + +/* Black */ +@font-face { + font-family: "Roboto"; + font-style: normal; + font-weight: 700; + src: url("./fonts/Roboto-Black.ttf") format('truetype'); +} +@font-face { + font-family: "Roboto"; + font-style: italic; + font-weight: 700; + src: url("./fonts/Roboto-BlackItalic.ttf") format('truetype'); +} + +/* Thin */ +@font-face { + font-family: "RobotoMono"; + font-style: normal; + font-weight: 200; + src: url("./fonts/RobotoMono-Thin.ttf") format('truetype'); +} +@font-face { + font-family: "RobotoMono"; + font-style: italic; + font-weight: 200; + src: url("./fonts/RobotoMono-ThinItalic.ttf") format('truetype'); +} + +/* Light */ +@font-face { + font-family: "RobotoMono"; + font-style: normal; + font-weight: 300; + src: url("./fonts/RobotoMono-Light.ttf") format('truetype'); +} +@font-face { + font-family: "RobotoMono"; + font-style: italic; + font-weight: 300; + src: url("./fonts/RobotoMono-LightItalic.ttf") format('truetype'); +} + +/* Regular */ +@font-face { + font-family: "RobotoMono"; + font-style: normal; + font-weight: 400; + src: url("./fonts/RobotoMono-Regular.ttf") format('truetype'); +} +@font-face { + font-family: "RobotoMono"; + font-style: italic; + font-weight: 400; + src: url("./fonts/RobotoMono-Italic.ttf") format('truetype'); +} + +/* Medium */ +@font-face { + font-family: "RobotoMono"; + font-style: normal; + font-weight: 500; + src: url("./fonts/RobotoMono-Medium.ttf") format('truetype'); +} +@font-face { + font-family: "RobotoMono"; + font-style: italic; + font-weight: 500; + src: url("./fonts/RobotoMono-MediumItalic.ttf") format('truetype'); +} + +/* Bold */ +@font-face { + font-family: "RobotoMono"; + font-style: normal; + font-weight: 600; + src: url("./fonts/RobotoMono-Bold.ttf") format('truetype'); +} +@font-face { + font-family: "RobotoMono"; + font-style: italic; + font-weight: 600; + src: url("./fonts/RobotoMono-BoldItalic.ttf") format('truetype'); +} \ No newline at end of file diff --git a/web-app/admin/src/styles.scss b/web-app/admin/src/styles.scss new file mode 100644 index 000000000..340b0e317 --- /dev/null +++ b/web-app/admin/src/styles.scss @@ -0,0 +1,30 @@ +@import "theme.scss"; +/* You can add global styles to this file, and also import other style files */ +@import "@ng-select/ng-select/themes/material.theme.css"; +@import "./roboto.scss"; +@import "./ng1/css/style.scss"; +@import "./ng1/css/map.scss"; +html, body { height: 100%; } +body { + margin: 0; + font-family: Roboto, "Helvetica Neue", sans-serif; + font-size: unset; +} + +bootstrap { + height: 100%; +} + +mat-bottom-sheet-container.feed-panel { + position: absolute; + left: 0; + bottom:0; + width: 450px; + min-width: 450px; +} + +.form-remove-snackbar { + position: absolute; + left: 29px; + bottom:0; +} diff --git a/web-app/admin/src/test.ts b/web-app/admin/src/test.ts new file mode 100644 index 000000000..6b03dbe8b --- /dev/null +++ b/web-app/admin/src/test.ts @@ -0,0 +1,22 @@ +// This file is required by karma.conf.js and loads recursively all the .spec and framework files + +import 'zone.js/testing'; +import { getTestBed } from '@angular/core/testing'; +import { + BrowserDynamicTestingModule, + platformBrowserDynamicTesting +} from '@angular/platform-browser-dynamic/testing'; + +declare const require: any; + +// First, initialize the Angular testing environment. +getTestBed().initTestEnvironment( + BrowserDynamicTestingModule, + platformBrowserDynamicTesting(), { + teardown: { destroyAfterEach: false } +} +); +// Then we find all the tests. +const context = require.context('./', true, /\.spec\.ts$/); +// And load the modules. +context.keys().map(context); diff --git a/web-app/admin/src/theme.scss b/web-app/admin/src/theme.scss new file mode 100644 index 000000000..a443d0903 --- /dev/null +++ b/web-app/admin/src/theme.scss @@ -0,0 +1,22 @@ +// Custom Theming for Angular Material +@use '@angular/material' as mat; +// For more information: https://material.angular.io/guide/theming + +@import "variables.scss"; +@import '@mat-datetimepicker/core/datetimepicker/datetimepicker-theme.scss'; + +// Include the common styles for Angular Material. We include this here so that you only +// have to load a single css file for Angular Material in your app. +// Be sure that you only ever include this mixin once! +@include mat.core(); + +// Create the theme object (a Sass map containing all of the palettes). +$app-theme: mat.define-light-theme($app-primary, $app-accent, $app-warn); + +// Include theme styles for core and each component used in your app. +// Alternatively, you can import and @include the theme mixins for each component +// that you are using. +@include mat.all-component-themes($app-theme); + +// Using the $theme variable from the pre-built theme you can call the theming function +@include mat-datetimepicker-theme($app-theme); diff --git a/web-app/admin/src/variables.scss b/web-app/admin/src/variables.scss new file mode 100644 index 000000000..74eb4962e --- /dev/null +++ b/web-app/admin/src/variables.scss @@ -0,0 +1,13 @@ +@use '@angular/material' as mat; + +// Define the palettes for your theme using the Material Design palettes available in palette.scss +// (imported above). For each palette, you can optionally specify a default, lighter, and darker +// hue. Available color palettes: https://material.io/design/color/ +$app-primary: mat.define-palette(mat.$blue-palette, 600, 200, 800); +$app-accent: mat.define-palette(mat.$orange-palette, A700, A100, A700); +$app-warn: mat.define-palette(mat.$red-palette); // The warn palette is optional (defaults to red). + +// Custom Sass colors vars (will be available in all the project) +$primary: mat.get-color-from-palette($app-primary); +$accent: mat.get-color-from-palette($app-accent); +$warn: mat.get-color-from-palette($app-warn); \ No newline at end of file diff --git a/web-app/angular.json b/web-app/angular.json index 8ab798384..b24f6b91e 100644 --- a/web-app/angular.json +++ b/web-app/angular.json @@ -34,9 +34,7 @@ } ], "styles": [ - "src/ng1/vendor/bootstrap/css/bootstrap.min.css", "node_modules/swagger-ui/dist/swagger-ui.css", - "src/ng1/vendor/material-design-icons/icons.css", "node_modules/@ngageoint/md-date-time-picker/dist/css/mdDateTimePicker.css", "src/styles.scss" ], @@ -52,9 +50,18 @@ "node_modules/jquery-file-download/src/Scripts/jquery.fileDownload.js", "node_modules/systemjs/dist/system.js", "node_modules/systemjs/dist/extras/amd.js", - "node_modules/systemjs/dist/extras/named-register.js" + "node_modules/systemjs/dist/extras/named-register.js", + "node_modules/js_cols/dist/js_cols.min.js" ], - "plugin": "~/post_build.js" + "allowedCommonJsDependencies": [ + "ajv", + "angular", + "core-js-pure", + "ev-emitter", + "focus-trap", + "lodash", + "traverse" + ] }, "configurations": { "production": { @@ -67,7 +74,6 @@ "optimization": true, "outputHashing": "all", "sourceMap": false, - "extractCss": true, "namedChunks": false, "aot": true, "extractLicenses": true, @@ -77,14 +83,24 @@ { "type": "initial", "maximumWarning": "2mb", - "maximumError": "10mb" + "maximumError": "15mb" }, { "type": "anyComponentStyle", - "maximumWarning": "6kb", - "maximumError": "10kb" + "maximumWarning": "18kb", + "maximumError": "30kb" } ] + }, + "development": { + "fileReplacements": [ + { + "replace": "src/environments/environment.ts", + "with": "src/environments/environment.dev.ts" + } + ], + "optimization": false, + "sourceMap": true } } }, @@ -98,6 +114,9 @@ "configurations": { "production": { "browserTarget": "app:build:production" + }, + "development": { + "browserTarget": "app:build:development" } } }, @@ -131,28 +150,179 @@ "codeCoverage": true } }, - "lint": { - "builder": "@angular-devkit/build-angular:tslint", + "e2e": { + "builder": "@angular-devkit/build-angular:protractor", "options": { - "tsConfig": [ - "tsconfig.app.json", - "tsconfig.spec.json", - "e2e/tsconfig.json" + "protractorConfig": "e2e/protractor.conf.js", + "devServerTarget": "app:serve" + }, + "configurations": { + "production": { + "devServerTarget": "app:serve:production" + } + } + } + } + }, + "admin": { + "projectType": "application", + "schematics": { + "@schematics/angular:component": { + "style": "scss" + } + }, + "root": "", + "sourceRoot": "admin/src", + "prefix": "mage", + "architect": { + "build": { + "builder": "ngx-build-plus:browser", + "options": { + "extraWebpackConfig": "webpack.extra.js", + "outputPath": "dist/admin", + "index": "admin/src/index.html", + "main": "admin/src/main.ts", + "polyfills": "admin/src/polyfills.ts", + "tsConfig": "tsconfig.app.json", + "aot": true, + "assets": [ + "admin/src/favicon.ico", + "admin/src/assets", + { + "glob": "**/*", + "input": "./node_modules/leaflet/dist/images", + "output": "/" + } ], - "exclude": [ - "**/node_modules/**" + "styles": [ + "admin/src/ng1/vendor/bootstrap/css/bootstrap.min.css", + "node_modules/swagger-ui/dist/swagger-ui.css", + "node_modules/@ngageoint/md-date-time-picker/dist/css/mdDateTimePicker.css", + "admin/src/ng1/vendor/material-design-icons/icons.css", + "admin/src/styles.scss" + ], + "stylePreprocessorOptions": { + "includePaths": [ + "admin/src", + "node_modules" + ] + }, + "scripts": [ + "node_modules/jquery/dist/jquery.min.js", + "node_modules/jquery-minicolors/jquery.minicolors.min.js", + "node_modules/jquery-file-download/src/Scripts/jquery.fileDownload.js", + "node_modules/systemjs/dist/system.js", + "node_modules/systemjs/dist/extras/amd.js", + "node_modules/systemjs/dist/extras/named-register.js", + "node_modules/js_cols/dist/js_cols.min.js" + ], + "allowedCommonJsDependencies": [ + "ajv", + "angular", + "core-js-pure", + "ev-emitter", + "focus-trap", + "lodash", + "traverse" ] + }, + "configurations": { + "production": { + "fileReplacements": [ + { + "replace": "admin/src/environments/environment.ts", + "with": "admin/src/environments/environment.prod.ts" + } + ], + "optimization": true, + "outputHashing": "all", + "sourceMap": false, + "namedChunks": false, + "aot": true, + "extractLicenses": true, + "vendorChunk": false, + "buildOptimizer": true, + "budgets": [ + { + "type": "initial", + "maximumWarning": "2mb", + "maximumError": "15mb" + }, + { + "type": "anyComponentStyle", + "maximumWarning": "18kb", + "maximumError": "30kb" + } + ] + }, + "development": { + "fileReplacements": [ + { + "replace": "admin/src/environments/environment.ts", + "with": "admin/src/environments/environment.dev.ts" + } + ], + "optimization": false, + "sourceMap": true + } + } + }, + "serve": { + "builder": "ngx-build-plus:dev-server", + "options": { + "extraWebpackConfig": "webpack.extra.js", + "proxyConfig": "proxy.conf.json", + "browserTarget": "admin:build", + "port": 4201 + }, + "configurations": { + "production": { + "browserTarget": "admin:build:production" + }, + "development": { + "browserTarget": "admin:build:development" + } + } + }, + "extract-i18n": { + "builder": "@angular-devkit/build-angular:extract-i18n", + "options": { + "browserTarget": "admin:build" + } + }, + "test": { + "builder": "ngx-build-plus:karma", + "options": { + "main": "admin/src/test.ts", + "polyfills": "admin/src/polyfills.ts", + "tsConfig": "tsconfig.spec.json", + "karmaConfig": "karma.conf.js", + "assets": [ + "admin/src/favicon.ico", + "admin/src/assets" + ], + "styles": [ + "admin/src/styles.scss" + ], + "stylePreprocessorOptions": { + "includePaths": [ + "admin/src", + "node_modules" + ] + }, + "scripts": [], + "codeCoverage": true } }, "e2e": { "builder": "@angular-devkit/build-angular:protractor", "options": { "protractorConfig": "e2e/protractor.conf.js", - "devServerTarget": "app:serve" + "devServerTarget": "admin:serve" }, "configurations": { "production": { - "devServerTarget": "app:serve:production" + "devServerTarget": "admin:serve:production" } } } @@ -165,7 +335,7 @@ "prefix": "mage", "architect": { "build": { - "builder": "@angular-devkit/build-ng-packagr:build", + "builder": "@angular-devkit/build-angular:ng-packagr", "options": { "tsConfig": "projects/core-lib/tsconfig.lib.json", "project": "projects/core-lib/ng-package.json" @@ -173,6 +343,9 @@ "configurations": { "production": { "tsConfig": "projects/core-lib/tsconfig.lib.prod.json" + }, + "development": { + "tsConfig": "projects/core-lib/tsconfig.lib.dev.json" } } }, @@ -183,18 +356,6 @@ "tsConfig": "projects/core-lib/tsconfig.spec.json", "karmaConfig": "projects/core-lib/karma.conf.js" } - }, - "lint": { - "builder": "@angular-devkit/build-angular:tslint", - "options": { - "tsConfig": [ - "projects/core-lib/tsconfig.lib.json", - "projects/core-lib/tsconfig.spec.json" - ], - "exclude": [ - "**/node_modules/**" - ] - } } } }, @@ -217,7 +378,6 @@ "main": "projects/core-lib-showcase/src/main.ts", "polyfills": "projects/core-lib-showcase/src/polyfills.ts", "tsConfig": "projects/core-lib-showcase/tsconfig.app.json", - "aot": true, "assets": [ "projects/core-lib-showcase/src/favicon.ico", "projects/core-lib-showcase/src/assets" @@ -225,7 +385,13 @@ "styles": [ "projects/core-lib-showcase/src/styles.scss" ], - "scripts": [] + "scripts": [], + "vendorChunk": true, + "extractLicenses": false, + "buildOptimizer": false, + "sourceMap": true, + "optimization": false, + "namedChunks": true }, "configurations": { "production": { @@ -238,7 +404,6 @@ "optimization": true, "outputHashing": "all", "sourceMap": false, - "extractCss": true, "namedChunks": false, "extractLicenses": true, "vendorChunk": false, @@ -251,12 +416,23 @@ }, { "type": "anyComponentStyle", - "maximumWarning": "6kb", - "maximumError": "10kb" + "maximumWarning": "18kb", + "maximumError": "30kb" } ] + }, + "development": { + "fileReplacements": [ + { + "replace": "projects/core-lib-showcase/src/environments/environment.ts", + "with": "projects/core-lib-showcase/src/environments/environment.dev.ts" + } + ], + "optimization": false, + "sourceMap": true } - } + }, + "defaultConfiguration": "" }, "serve": { "builder": "@angular-devkit/build-angular:dev-server", @@ -266,6 +442,9 @@ "configurations": { "production": { "browserTarget": "core-lib-showcase:build:production" + }, + "development": { + "browserTarget": "core-lib-showcase:build:development" } } }, @@ -292,19 +471,6 @@ "scripts": [] } }, - "lint": { - "builder": "@angular-devkit/build-angular:tslint", - "options": { - "tsConfig": [ - "projects/core-lib-showcase/tsconfig.app.json", - "projects/core-lib-showcase/tsconfig.spec.json", - "projects/core-lib-showcase/e2e/tsconfig.json" - ], - "exclude": [ - "**/node_modules/**" - ] - } - }, "e2e": { "builder": "@angular-devkit/build-angular:protractor", "options": { diff --git a/web-app/e2e/src/app.po.ts b/web-app/e2e/src/app.po.ts deleted file mode 100644 index b8498c26f..000000000 --- a/web-app/e2e/src/app.po.ts +++ /dev/null @@ -1,11 +0,0 @@ -import { browser, by, element } from 'protractor'; - -export class AppPage { - navigateTo() { - return browser.get(browser.baseUrl) as Promise; - } - - getTitleText() { - return element(by.css('app-root .content span')).getText() as Promise; - } -} diff --git a/web-app/e2e/tsconfig.json b/web-app/e2e/tsconfig.json deleted file mode 100644 index 97f75e13e..000000000 --- a/web-app/e2e/tsconfig.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "extends": "../tsconfig.json", - "compilerOptions": { - "outDir": "../out-tsc/e2e", - "module": "commonjs", - "target": "es2015", - "types": [ - "jasmine", - "jasminewd2", - "node" - ] - } -} diff --git a/web-app/karma.conf.js b/web-app/karma.conf.js index 08f1065be..59fc249fa 100644 --- a/web-app/karma.conf.js +++ b/web-app/karma.conf.js @@ -8,6 +8,7 @@ module.exports = function (config) { plugins: [ require('karma-jasmine'), require('karma-chrome-launcher'), + require('karma-coverage'), require('karma-jasmine-html-reporter'), require('karma-coverage-istanbul-reporter'), require('@angular-devkit/build-angular/plugins/karma') @@ -24,7 +25,7 @@ module.exports = function (config) { reports: ['html', 'lcovonly', 'text-summary'], fixWebpackSourcePaths: true }, - reporters: ['progress', 'kjhtml'], + reporters: ['progress', 'kjhtml', 'coverage'], port: 9876, colors: true, logLevel: config.LOG_LOG, diff --git a/web-app/package-lock.json b/web-app/package-lock.json index 241d7573c..d0bda85e3 100644 --- a/web-app/package-lock.json +++ b/web-app/package-lock.json @@ -1,10797 +1,11005 @@ { "name": "@ngageoint/mage.web-app", - "version": "6.2.13", - "lockfileVersion": 1, + "version": "6.3.0-beta.8", + "lockfileVersion": 3, "requires": true, - "dependencies": { - "@ajsf/core": { - "version": "0.3.0-beta.4", - "resolved": "https://registry.npmjs.org/@ajsf/core/-/core-0.3.0-beta.4.tgz", - "integrity": "sha512-rDPpIagPLwG2aCvwbOV0z/TV7CqqZtSrX/6dRQSTtyKGdEe1uNgYiV1miVMtrv7dnRX6I5QffSKk8UbNDP+eTg==", - "requires": { + "packages": { + "": { + "name": "@ngageoint/mage.web-app", + "version": "6.3.0-beta.8", + "license": "Apache-2.0", + "dependencies": { + "@ajsf/core": "0.8.0", + "@ajsf/material": "0.8.0", + "@angular/animations": "14.3.0", + "@angular/cdk": "14.2.7", + "@angular/common": "14.3.0", + "@angular/compiler": "14.3.0", + "@angular/core": "14.3.0", + "@angular/flex-layout": "14.0.0-beta.40", + "@angular/forms": "14.3.0", + "@angular/material": "14.2.7", + "@angular/platform-browser": "14.3.0", + "@angular/platform-browser-dynamic": "14.3.0", + "@angular/router": "14.3.0", + "@angular/upgrade": "14.3.0", + "@mat-datetimepicker/core": "10.1.1", + "@mat-datetimepicker/moment": "10.1.1", + "@ng-select/ng-select": "9.1.0", + "@ngageoint/gars-js": "1.0.0", + "@ngageoint/md-date-time-picker": "2.3.0", + "@ngageoint/mgrs-js": "1.0.0", + "@ngneat/input-mask": "6.1.0", + "@turf/center": "4.3.0", + "@turf/helpers": "4.3.0", + "@turf/kinks": "4.3.0", + "@types/geojson": "7946.0.7", + "@types/leaflet-editable": "1.2.6", + "@types/leaflet.markercluster": "1.5.3", + "@uirouter/angular": "10.0.0", + "@uirouter/angular-hybrid": "14.0.0", + "@uirouter/angularjs": "1.0.30", + "@uirouter/rx": "1.0.0", + "@zxcvbn-ts/core": "3.0.4", + "@zxcvbn-ts/language-common": "3.0.4", + "@zxcvbn-ts/language-en": "3.0.2", + "angular": "1.5.11", + "angular-animate": "1.5.11", + "angular-messages": "1.5.11", + "angular-minicolors": "0.0.7", + "angular-resource": "1.5.11", + "angular-route": "1.5.11", + "angular-sanitize": "1.5.11", + "angular-ui-bootstrap": "2.5.6", + "exif-js": "2.1.1", + "font-awesome": "4.7.0", + "hammerjs": "2.0.8", + "inputmask": "5.0.8", + "jquery": "3.7.1", + "jquery-file-download": "1.4.6", + "jquery-minicolors": "2.1.10", + "js_cols": "1.0.1", + "leaflet": "1.7.1", + "leaflet-editable": "1.2.0", + "leaflet.markercluster": "1.5.3", + "lodash": "4.17.21", + "material-components-web": "3.2.0", + "mgrs": "1.0.0", + "moment": "2.22.2", + "ngx-color": "8.0.3", + "ngx-mat-select-search": "5.0.0", + "papaparse": "4.1.4", + "rxjs": "7.6.0", + "select2": "4.0.7", + "semver": "7.6.2", + "swagger-ui": "3.52.4", + "systemjs": "6.10.0", + "tslib": "2.8.1", + "ui-select": "0.17.1", + "underscore": "1.13.6", + "webfontloader": "1.6.6", + "zone.js": "0.11.4", + "zxcvbn": "4.4.2" + }, + "devDependencies": { + "@angular-devkit/build-angular": "14.2.13", + "@angular-devkit/core": "14.2.13", + "@angular/cli": "14.2.13", + "@angular/compiler-cli": "14.3.0", + "@angular/language-service": "14.3.0", + "@rollup/plugin-commonjs": "25.0.7", + "@schematics/angular": "14.2.13", + "@types/angular": "1.8.1", + "@types/geojson": "7946.0.7", + "@types/hammerjs": "2.0.36", + "@types/inputmask": "5.0.3", + "@types/jasmine": "4.3.1", + "@types/jasminewd2": "2.0.10", + "@types/leaflet": "1.7.4", + "@types/lodash": "4.17.6", + "@types/node": "18.11.13", + "@types/semver": "7.5.8", + "copyfiles": "2.4.1", + "html-loader": "0.5.5", + "html-webpack-plugin": "5.5.0", + "jasmine-core": "4.5.0", + "karma": "6.4.1", + "karma-chrome-launcher": "3.1.1", + "karma-coverage": "2.2.0", + "karma-coverage-istanbul-reporter": "3.0.3", + "karma-jasmine": "5.1.0", + "karma-jasmine-html-reporter": "2.0.0", + "ng-packagr": "14.2.2", + "ngx-build-plus": "14.0.0", + "npm-run-all": "4.1.5", + "rimraf": "3.0.2", + "tslint": "6.1.3", + "typescript": "4.8.4", + "webpack": "5.75.0", + "webpack-bundle-analyzer": "4.7.0" + } + }, + "node_modules/@adobe/css-tools": { + "version": "4.4.0", + "dev": true, + "license": "MIT" + }, + "node_modules/@ajsf/core": { + "version": "0.8.0", + "license": "MIT", + "dependencies": { "ajv": "^6.10.0", - "lodash-es": "^4.17.15", + "lodash-es": "~4.17.21", "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==" - } + "peerDependencies": { + "@angular/common": ">=14.0.0", + "@angular/core": ">=14.0.0", + "@angular/forms": ">=14.0.0", + "@angular/platform-browser": ">=14.0.0", + "rxjs": "^7.0.0" } }, - "@ajsf/material": { - "version": "0.3.0-beta.4", - "resolved": "https://registry.npmjs.org/@ajsf/material/-/material-0.3.0-beta.4.tgz", - "integrity": "sha512-SGytQZvigwFOC9x0tqoQ2tNMN1TwD2Pa5RNeTr09TQ6UdA1SI5/X+WkwI1IJK2AoZ/uEppdDj1q0j2alyoHEcQ==", - "requires": { - "@ajsf/core": "~0.3.0-beta.4", - "lodash-es": "^4.17.15", + "node_modules/@ajsf/material": { + "version": "0.8.0", + "license": "MIT", + "dependencies": { + "@ajsf/core": "~0.8.0", + "lodash-es": "~4.17.21", "tslib": "^2.0.0" }, + "peerDependencies": { + "@angular/cdk": ">=14.0.0", + "@angular/flex-layout": ">=14.0.0-beta.40", + "@angular/material": ">=14.0.0" + } + }, + "node_modules/@ampproject/remapping": { + "version": "2.2.0", + "dev": true, + "license": "Apache-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==" - } + "@jridgewell/gen-mapping": "^0.1.0", + "@jridgewell/trace-mapping": "^0.3.9" + }, + "engines": { + "node": ">=6.0.0" } }, - "@angular-devkit/architect": { - "version": "0.901.15", - "resolved": "https://registry.npmjs.org/@angular-devkit/architect/-/architect-0.901.15.tgz", - "integrity": "sha512-t4yT34jQ3wA3NFZxph/PquITv8tFrkaexUusbNp4UN10+k+04lPF3aPnJJhM1VKjjfChznMMhLnqLjA+9o0Rmw==", + "node_modules/@angular-devkit/architect": { + "version": "0.1402.13", "dev": true, - "requires": { - "@angular-devkit/core": "9.1.15", - "rxjs": "6.5.4" + "license": "MIT", + "dependencies": { + "@angular-devkit/core": "14.2.13", + "rxjs": "6.6.7" }, + "engines": { + "node": "^14.15.0 || >=16.10.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" + } + }, + "node_modules/@angular-devkit/architect/node_modules/rxjs": { + "version": "6.6.7", + "dev": true, + "license": "Apache-2.0", "dependencies": { - "rxjs": { - "version": "6.5.4", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.5.4.tgz", - "integrity": "sha512-naMQXcgEo3csAEGvw/NydRA0fuS2nDZJiw1YUWFKU7aPPAPGZEsD4Iimit96qwCieH6y614MCLYwdkrWx7z/7Q==", - "dev": true, - "requires": { - "tslib": "^1.9.0" - } - } + "tslib": "^1.9.0" + }, + "engines": { + "npm": ">=2.0.0" } }, - "@angular-devkit/build-angular": { - "version": "0.901.15", - "resolved": "https://registry.npmjs.org/@angular-devkit/build-angular/-/build-angular-0.901.15.tgz", - "integrity": "sha512-Qhyfnjda+lbI97xpimb0g6RYiu/Xf/Awtx2xBRaE0pGW/T/qrGEeKwF4mu2CAgDSHK+0+V1msW8ttPMw+Z8org==", - "dev": true, - "requires": { - "@angular-devkit/architect": "0.901.15", - "@angular-devkit/build-optimizer": "0.901.15", - "@angular-devkit/build-webpack": "0.901.15", - "@angular-devkit/core": "9.1.15", - "@babel/core": "7.9.0", - "@babel/generator": "7.9.3", - "@babel/preset-env": "7.9.0", - "@babel/template": "7.8.6", - "@jsdevtools/coverage-istanbul-loader": "3.0.3", - "@ngtools/webpack": "9.1.15", - "ajv": "6.12.3", - "autoprefixer": "9.7.4", - "babel-loader": "8.0.6", + "node_modules/@angular-devkit/architect/node_modules/tslib": { + "version": "1.14.1", + "dev": true, + "license": "0BSD" + }, + "node_modules/@angular-devkit/build-angular": { + "version": "14.2.13", + "dev": true, + "license": "MIT", + "dependencies": { + "@ampproject/remapping": "2.2.0", + "@angular-devkit/architect": "0.1402.13", + "@angular-devkit/build-webpack": "0.1402.13", + "@angular-devkit/core": "14.2.13", + "@babel/core": "7.18.10", + "@babel/generator": "7.18.12", + "@babel/helper-annotate-as-pure": "7.18.6", + "@babel/plugin-proposal-async-generator-functions": "7.18.10", + "@babel/plugin-transform-async-to-generator": "7.18.6", + "@babel/plugin-transform-runtime": "7.18.10", + "@babel/preset-env": "7.18.10", + "@babel/runtime": "7.18.9", + "@babel/template": "7.18.10", + "@discoveryjs/json-ext": "0.5.7", + "@ngtools/webpack": "14.2.13", + "ansi-colors": "4.1.3", + "babel-loader": "8.2.5", + "babel-plugin-istanbul": "6.1.1", "browserslist": "^4.9.1", - "cacache": "15.0.0", - "caniuse-lite": "^1.0.30001032", - "circular-dependency-plugin": "5.2.0", - "copy-webpack-plugin": "6.0.3", - "core-js": "3.6.4", - "css-loader": "3.5.1", - "cssnano": "4.1.10", - "file-loader": "6.0.0", - "find-cache-dir": "3.3.1", - "glob": "7.1.6", - "jest-worker": "25.1.0", + "cacache": "16.1.2", + "copy-webpack-plugin": "11.0.0", + "critters": "0.0.16", + "css-loader": "6.7.1", + "esbuild-wasm": "0.15.5", + "glob": "8.0.3", + "https-proxy-agent": "5.0.1", + "inquirer": "8.2.4", + "jsonc-parser": "3.1.0", "karma-source-map-support": "1.4.0", - "less": "3.11.3", - "less-loader": "5.0.0", - "license-webpack-plugin": "2.1.4", - "loader-utils": "2.0.0", - "mini-css-extract-plugin": "0.9.0", - "minimatch": "3.0.4", - "open": "7.0.3", - "parse5": "4.0.0", - "postcss": "7.0.27", - "postcss-import": "12.0.1", - "postcss-loader": "3.0.0", - "raw-loader": "4.0.0", - "regenerator-runtime": "0.13.5", - "rimraf": "3.0.2", - "rollup": "2.1.0", - "rxjs": "6.5.4", - "sass": "1.26.3", - "sass-loader": "8.0.2", - "semver": "7.1.3", - "source-map": "0.7.3", - "source-map-loader": "0.2.4", - "speed-measure-webpack-plugin": "1.3.1", - "style-loader": "1.1.3", - "stylus": "0.54.7", - "stylus-loader": "3.0.2", - "terser": "4.6.10", - "terser-webpack-plugin": "3.0.3", + "less": "4.1.3", + "less-loader": "11.0.0", + "license-webpack-plugin": "4.0.2", + "loader-utils": "3.2.1", + "mini-css-extract-plugin": "2.6.1", + "minimatch": "5.1.0", + "open": "8.4.0", + "ora": "5.4.1", + "parse5-html-rewriting-stream": "6.0.1", + "piscina": "3.2.0", + "postcss": "8.4.31", + "postcss-import": "15.0.0", + "postcss-loader": "7.0.1", + "postcss-preset-env": "7.8.0", + "regenerator-runtime": "0.13.9", + "resolve-url-loader": "5.0.0", + "rxjs": "6.6.7", + "sass": "1.54.4", + "sass-loader": "13.0.2", + "semver": "7.5.3", + "source-map-loader": "4.0.0", + "source-map-support": "0.5.21", + "stylus": "0.59.0", + "stylus-loader": "7.0.0", + "terser": "5.14.2", + "text-table": "0.2.0", "tree-kill": "1.2.2", - "webpack": "4.42.0", - "webpack-dev-middleware": "3.7.2", - "webpack-dev-server": "3.11.0", - "webpack-merge": "4.2.2", - "webpack-sources": "1.4.3", - "webpack-subresource-integrity": "1.4.0", - "worker-plugin": "4.0.3" + "tslib": "2.4.0", + "webpack": "5.76.1", + "webpack-dev-middleware": "5.3.3", + "webpack-dev-server": "4.11.0", + "webpack-merge": "5.8.0", + "webpack-subresource-integrity": "5.1.0" }, - "dependencies": { - "ajv": { - "version": "6.12.3", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.3.tgz", - "integrity": "sha512-4K0cK3L1hsqk9xIb2z9vs/XU+PGJZ9PNpJRDS9YLzmNdX6jmVPfamLvTJr0aDAusnHyCHO6MjzlkAsgtqp9teA==", - "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" - } - }, - "braces": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", - "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", - "dev": true, - "requires": { - "arr-flatten": "^1.1.0", - "array-unique": "^0.3.2", - "extend-shallow": "^2.0.1", - "fill-range": "^4.0.0", - "isobject": "^3.0.1", - "repeat-element": "^1.1.2", - "snapdragon": "^0.8.1", - "snapdragon-node": "^2.0.1", - "split-string": "^3.0.2", - "to-regex": "^3.0.1" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "core-js": { - "version": "3.6.4", - "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.6.4.tgz", - "integrity": "sha512-4paDGScNgZP2IXXilaffL9X7968RuvwlkK3xWtZRVqgd8SYNiVKRJvkFd1aqqEuPfN7E68ZHEp9hDj6lHj4Hyw==", - "dev": true - }, - "debug": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", - "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "fill-range": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", - "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", - "dev": true, - "requires": { - "extend-shallow": "^2.0.1", - "is-number": "^3.0.0", - "repeat-string": "^1.6.1", - "to-regex-range": "^2.1.0" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "is-number": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", - "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", - "dev": true, - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "is-wsl": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-1.1.0.tgz", - "integrity": "sha1-HxbkqiKwTRM2tmGIpmrzxgDDpm0=", - "dev": true - }, - "json5": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", - "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", - "dev": true, - "requires": { - "minimist": "^1.2.0" - } - }, - "memory-fs": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/memory-fs/-/memory-fs-0.4.1.tgz", - "integrity": "sha1-OpoguEYlI+RHz7x+i7gO1me/xVI=", - "dev": true, - "requires": { - "errno": "^0.1.3", - "readable-stream": "^2.0.1" - } - }, - "micromatch": { - "version": "3.1.10", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", - "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", - "dev": true, - "requires": { - "arr-diff": "^4.0.0", - "array-unique": "^0.3.2", - "braces": "^2.3.1", - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "extglob": "^2.0.4", - "fragment-cache": "^0.2.1", - "kind-of": "^6.0.2", - "nanomatch": "^1.2.9", - "object.pick": "^1.3.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.2" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true - }, - "parse5": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/parse5/-/parse5-4.0.0.tgz", - "integrity": "sha512-VrZ7eOd3T1Fk4XWNXMgiGBK/z0MG48BWG2uQNU4I72fkQuKUTZpl+u9k+CxEG0twMVzSmXEEz12z5Fnw1jIQFA==", - "dev": true - }, - "regenerator-runtime": { - "version": "0.13.5", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.5.tgz", - "integrity": "sha512-ZS5w8CpKFinUzOwW3c83oPeVXoNsrLsaCoLtJvAClH135j/R77RuymhiSErhm2lKcwSCIpmvIWSbDkIfAqKQlA==", - "dev": true - }, - "rxjs": { - "version": "6.5.4", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.5.4.tgz", - "integrity": "sha512-naMQXcgEo3csAEGvw/NydRA0fuS2nDZJiw1YUWFKU7aPPAPGZEsD4Iimit96qwCieH6y614MCLYwdkrWx7z/7Q==", - "dev": true, - "requires": { - "tslib": "^1.9.0" - } - }, - "schema-utils": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-1.0.0.tgz", - "integrity": "sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g==", - "dev": true, - "requires": { - "ajv": "^6.1.0", - "ajv-errors": "^1.0.0", - "ajv-keywords": "^3.1.0" - } + "engines": { + "node": "^14.15.0 || >=16.10.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" + }, + "optionalDependencies": { + "esbuild": "0.15.5" + }, + "peerDependencies": { + "@angular/compiler-cli": "^14.0.0", + "@angular/localize": "^14.0.0", + "@angular/service-worker": "^14.0.0", + "karma": "^6.3.0", + "ng-packagr": "^14.0.0", + "protractor": "^7.0.0", + "tailwindcss": "^2.0.0 || ^3.0.0", + "typescript": ">=4.6.2 <4.9" + }, + "peerDependenciesMeta": { + "@angular/localize": { + "optional": true }, - "source-map": { - "version": "0.7.3", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz", - "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==", - "dev": true + "@angular/service-worker": { + "optional": true }, - "ssri": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/ssri/-/ssri-6.0.2.tgz", - "integrity": "sha512-cepbSq/neFK7xB6A50KHN0xHDotYzq58wWCa5LeWqnPrHG8GzfEjO/4O8kpmcGW+oaxkvhEJCWgbgNk4/ZV93Q==", - "dev": true, - "requires": { - "figgy-pudding": "^3.5.1" - } + "karma": { + "optional": true }, - "stylus": { - "version": "0.54.7", - "resolved": "https://registry.npmjs.org/stylus/-/stylus-0.54.7.tgz", - "integrity": "sha512-Yw3WMTzVwevT6ZTrLCYNHAFmanMxdylelL3hkWNgPMeTCpMwpV3nXjpOHuBXtFv7aiO2xRuQS6OoAdgkNcSNug==", - "dev": true, - "requires": { - "css-parse": "~2.0.0", - "debug": "~3.1.0", - "glob": "^7.1.3", - "mkdirp": "~0.5.x", - "safer-buffer": "^2.1.2", - "sax": "~1.2.4", - "semver": "^6.0.0", - "source-map": "^0.7.3" - }, - "dependencies": { - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - } - } + "ng-packagr": { + "optional": true }, - "to-regex-range": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", - "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=", - "dev": true, - "requires": { - "is-number": "^3.0.0", - "repeat-string": "^1.6.1" - } + "protractor": { + "optional": true }, - "webpack": { - "version": "4.42.0", - "resolved": "https://registry.npmjs.org/webpack/-/webpack-4.42.0.tgz", - "integrity": "sha512-EzJRHvwQyBiYrYqhyjW9AqM90dE4+s1/XtCfn7uWg6cS72zH+2VPFAlsnW0+W0cDi0XRjNKUMoJtpSi50+Ph6w==", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.8.5", - "@webassemblyjs/helper-module-context": "1.8.5", - "@webassemblyjs/wasm-edit": "1.8.5", - "@webassemblyjs/wasm-parser": "1.8.5", - "acorn": "^6.2.1", - "ajv": "^6.10.2", - "ajv-keywords": "^3.4.1", - "chrome-trace-event": "^1.0.2", - "enhanced-resolve": "^4.1.0", - "eslint-scope": "^4.0.3", - "json-parse-better-errors": "^1.0.2", - "loader-runner": "^2.4.0", - "loader-utils": "^1.2.3", - "memory-fs": "^0.4.1", - "micromatch": "^3.1.10", - "mkdirp": "^0.5.1", - "neo-async": "^2.6.1", - "node-libs-browser": "^2.2.1", - "schema-utils": "^1.0.0", - "tapable": "^1.1.3", - "terser-webpack-plugin": "^1.4.3", - "watchpack": "^1.6.0", - "webpack-sources": "^1.4.1" - }, - "dependencies": { - "cacache": { - "version": "12.0.4", - "resolved": "https://registry.npmjs.org/cacache/-/cacache-12.0.4.tgz", - "integrity": "sha512-a0tMB40oefvuInr4Cwb3GerbL9xTj1D5yg0T5xrjGCGyfvbxseIXX7BAO/u/hIXdafzOI5JC3wDwHyf24buOAQ==", - "dev": true, - "requires": { - "bluebird": "^3.5.5", - "chownr": "^1.1.1", - "figgy-pudding": "^3.5.1", - "glob": "^7.1.4", - "graceful-fs": "^4.1.15", - "infer-owner": "^1.0.3", - "lru-cache": "^5.1.1", - "mississippi": "^3.0.0", - "mkdirp": "^0.5.1", - "move-concurrently": "^1.0.1", - "promise-inflight": "^1.0.1", - "rimraf": "^2.6.3", - "ssri": "^6.0.1", - "unique-filename": "^1.1.1", - "y18n": "^4.0.0" - } - }, - "find-cache-dir": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-2.1.0.tgz", - "integrity": "sha512-Tq6PixE0w/VMFfCgbONnkiQIVol/JJL7nRMi20fqzA4NRs9AfeqMGeRdPi3wIhYkxjeBaWh2rxwapn5Tu3IqOQ==", - "dev": true, - "requires": { - "commondir": "^1.0.1", - "make-dir": "^2.0.0", - "pkg-dir": "^3.0.0" - } - }, - "loader-utils": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.0.tgz", - "integrity": "sha512-qH0WSMBtn/oHuwjy/NucEgbx5dbxxnxup9s4PVXJUDHZBQY+s0NWA9rJf53RBnQZxfch7euUui7hpoAPvALZdA==", - "dev": true, - "requires": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^1.0.1" - } - }, - "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" - } - }, - "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 - }, - "terser-webpack-plugin": { - "version": "1.4.5", - "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-1.4.5.tgz", - "integrity": "sha512-04Rfe496lN8EYruwi6oPQkG0vo8C+HT49X687FZnpPF0qMAIHONI6HEXYPKDOE8e5HjXTyKfqRd/agHtH0kOtw==", - "dev": true, - "requires": { - "cacache": "^12.0.2", - "find-cache-dir": "^2.1.0", - "is-wsl": "^1.1.0", - "schema-utils": "^1.0.0", - "serialize-javascript": "^4.0.0", - "source-map": "^0.6.1", - "terser": "^4.1.2", - "webpack-sources": "^1.4.0", - "worker-farm": "^1.7.0" - } - } - } + "tailwindcss": { + "optional": true } } }, - "@angular-devkit/build-ng-packagr": { - "version": "0.901.15", - "resolved": "https://registry.npmjs.org/@angular-devkit/build-ng-packagr/-/build-ng-packagr-0.901.15.tgz", - "integrity": "sha512-0WMHQ4U527JxIZG9hyLpcK8hKTMbPErzOudyqE9ebNyjhd9e5QGmkzLQEXLks7rSSAxnTpp9Q8jNHK6eVhUJUA==", + "node_modules/@angular-devkit/build-angular/node_modules/@types/estree": { + "version": "0.0.51", "dev": true, - "requires": { - "@angular-devkit/architect": "0.901.15", - "rxjs": "6.5.4" - }, - "dependencies": { - "rxjs": { - "version": "6.5.4", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.5.4.tgz", - "integrity": "sha512-naMQXcgEo3csAEGvw/NydRA0fuS2nDZJiw1YUWFKU7aPPAPGZEsD4Iimit96qwCieH6y614MCLYwdkrWx7z/7Q==", - "dev": true, - "requires": { - "tslib": "^1.9.0" - } - } - } + "license": "MIT" }, - "@angular-devkit/build-optimizer": { - "version": "0.901.15", - "resolved": "https://registry.npmjs.org/@angular-devkit/build-optimizer/-/build-optimizer-0.901.15.tgz", - "integrity": "sha512-fCX27AAaM91UlNtjwUhqBFTvL3U0PexeVpQORJ7hAr4DG1z3DUHJS4RHCjlgM060ny0fj1V5gu21j1QAQx52vA==", + "node_modules/@angular-devkit/build-angular/node_modules/brace-expansion": { + "version": "1.1.11", "dev": true, - "requires": { - "loader-utils": "2.0.0", - "source-map": "0.7.3", - "tslib": "1.11.1", - "typescript": "3.6.5", - "webpack-sources": "1.4.3" - }, + "license": "MIT", "dependencies": { - "source-map": { - "version": "0.7.3", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz", - "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==", - "dev": true - }, - "tslib": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.11.1.tgz", - "integrity": "sha512-aZW88SY8kQbU7gpV19lN24LtXh/yD4ZZg6qieAJDDg+YBsJcSmLGK9QpnUjAKVG/xefmvJGd1WUmfpT/g6AJGA==", - "dev": true - }, - "typescript": { - "version": "3.6.5", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-3.6.5.tgz", - "integrity": "sha512-BEjlc0Z06ORZKbtcxGrIvvwYs5hAnuo6TKdNFL55frVDlB+na3z5bsLhFaIxmT+dPWgBIjMo6aNnTOgHHmHgiQ==", - "dev": true - } + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" } }, - "@angular-devkit/build-webpack": { - "version": "0.901.15", - "resolved": "https://registry.npmjs.org/@angular-devkit/build-webpack/-/build-webpack-0.901.15.tgz", - "integrity": "sha512-vETkDD3xbWtm5zylKhKG2IYjmnED5DPBHCg/M0QmxMBEEiZOtqVrAwkJGSnErVInPmqW0jixIz3wCiMUBBA/dQ==", + "node_modules/@angular-devkit/build-angular/node_modules/lru-cache": { + "version": "6.0.0", "dev": true, - "requires": { - "@angular-devkit/architect": "0.901.15", - "@angular-devkit/core": "9.1.15", - "rxjs": "6.5.4" - }, + "license": "ISC", "dependencies": { - "rxjs": { - "version": "6.5.4", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.5.4.tgz", - "integrity": "sha512-naMQXcgEo3csAEGvw/NydRA0fuS2nDZJiw1YUWFKU7aPPAPGZEsD4Iimit96qwCieH6y614MCLYwdkrWx7z/7Q==", - "dev": true, - "requires": { - "tslib": "^1.9.0" - } - } - } - }, - "@angular-devkit/core": { - "version": "9.1.15", - "resolved": "https://registry.npmjs.org/@angular-devkit/core/-/core-9.1.15.tgz", - "integrity": "sha512-zyUDaFQvnqsptoXhodbH4u+voXIldfDx+d0M2OMLj0tbfD4zp2fy7UOeTvu+lq2/LLNAObkG4JSK5DM9v1s08w==", - "dev": true, - "requires": { - "ajv": "6.12.3", - "fast-json-stable-stringify": "2.1.0", - "magic-string": "0.25.7", - "rxjs": "6.5.4", - "source-map": "0.7.3" + "yallist": "^4.0.0" }, - "dependencies": { - "ajv": { - "version": "6.12.3", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.3.tgz", - "integrity": "sha512-4K0cK3L1hsqk9xIb2z9vs/XU+PGJZ9PNpJRDS9YLzmNdX6jmVPfamLvTJr0aDAusnHyCHO6MjzlkAsgtqp9teA==", - "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" - } - }, - "rxjs": { - "version": "6.5.4", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.5.4.tgz", - "integrity": "sha512-naMQXcgEo3csAEGvw/NydRA0fuS2nDZJiw1YUWFKU7aPPAPGZEsD4Iimit96qwCieH6y614MCLYwdkrWx7z/7Q==", - "dev": true, - "requires": { - "tslib": "^1.9.0" - } - }, - "source-map": { - "version": "0.7.3", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz", - "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==", - "dev": true - } + "engines": { + "node": ">=10" } }, - "@angular-devkit/schematics": { - "version": "9.1.15", - "resolved": "https://registry.npmjs.org/@angular-devkit/schematics/-/schematics-9.1.15.tgz", - "integrity": "sha512-phE8jNUeOiX1Co+4sLCHi1rMoOrqEmIRKOI4Saorn2d2S7b21k9lf4Z/GFwQ7djsfoxKkMP8zhd/M4hkVMxeNw==", + "node_modules/@angular-devkit/build-angular/node_modules/rxjs": { + "version": "6.6.7", "dev": true, - "requires": { - "@angular-devkit/core": "9.1.15", - "ora": "4.0.3", - "rxjs": "6.5.4" - }, + "license": "Apache-2.0", "dependencies": { - "rxjs": { - "version": "6.5.4", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.5.4.tgz", - "integrity": "sha512-naMQXcgEo3csAEGvw/NydRA0fuS2nDZJiw1YUWFKU7aPPAPGZEsD4Iimit96qwCieH6y614MCLYwdkrWx7z/7Q==", - "dev": true, - "requires": { - "tslib": "^1.9.0" - } - } + "tslib": "^1.9.0" + }, + "engines": { + "npm": ">=2.0.0" } }, - "@angular/animations": { - "version": "9.1.13", - "resolved": "https://registry.npmjs.org/@angular/animations/-/animations-9.1.13.tgz", - "integrity": "sha512-ane1eeQmsP7fcAiLgRhle7YIDgE88WDMMvzqJYhSxwLzXNF/hwqNeskmNcjo8bLt9h/yTIjrCQbycLCHJfU8UQ==" + "node_modules/@angular-devkit/build-angular/node_modules/rxjs/node_modules/tslib": { + "version": "1.14.1", + "dev": true, + "license": "0BSD" }, - "@angular/cdk": { - "version": "9.2.4", - "resolved": "https://registry.npmjs.org/@angular/cdk/-/cdk-9.2.4.tgz", - "integrity": "sha512-iw2+qHMXHYVC6K/fttHeNHIieSKiTEodVutZoOEcBu9rmRTGbLB26V/CRsfIRmA1RBk+uFYWc6UQZnMC3RdnJQ==", - "requires": { - "parse5": "^5.0.0" - } + "node_modules/@angular-devkit/build-angular/node_modules/sax": { + "version": "1.2.4", + "dev": true, + "license": "ISC" }, - "@angular/cli": { - "version": "9.1.15", - "resolved": "https://registry.npmjs.org/@angular/cli/-/cli-9.1.15.tgz", - "integrity": "sha512-jwwhXTH8ujKmx4/jsaFkSBvqyyMTUNeMHaMDKaChDtwRnNc0UGDEqMAVnVnXaXiIn1tnzzdHjW4BY35CjnvpCg==", + "node_modules/@angular-devkit/build-angular/node_modules/schema-utils": { + "version": "3.3.0", "dev": true, - "requires": { - "@angular-devkit/architect": "0.901.15", - "@angular-devkit/core": "9.1.15", - "@angular-devkit/schematics": "9.1.15", - "@schematics/angular": "9.1.15", - "@schematics/update": "0.901.15", - "@yarnpkg/lockfile": "1.1.0", - "ansi-colors": "4.1.1", - "debug": "4.1.1", - "ini": "1.3.6", - "inquirer": "7.1.0", - "npm-package-arg": "8.0.1", - "npm-pick-manifest": "6.0.0", - "open": "7.0.3", - "pacote": "9.5.12", - "read-package-tree": "5.3.1", - "rimraf": "3.0.2", - "semver": "7.1.3", - "symbol-observable": "1.2.0", - "universal-analytics": "0.4.20", - "uuid": "7.0.2" - }, + "license": "MIT", "dependencies": { - "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 - }, - "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" - } - }, - "uuid": { - "version": "7.0.2", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-7.0.2.tgz", - "integrity": "sha512-vy9V/+pKG+5ZTYKf+VcphF5Oc6EFiu3W8Nv3P3zIh0EqVI80ZxOzuPfe9EHjkFNvf8+xuTHVeei4Drydlx4zjw==", - "dev": true - } + "@types/json-schema": "^7.0.8", + "ajv": "^6.12.5", + "ajv-keywords": "^3.5.2" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" } }, - "@angular/common": { - "version": "9.1.13", - "resolved": "https://registry.npmjs.org/@angular/common/-/common-9.1.13.tgz", - "integrity": "sha512-QACUhJWlly/nfHUmjopVS1p6ayxxa/NqjyftdCeBJaoyM2YohqWixP/n/keu1K/srJ96aFpUNsZQgmgoRv5SOQ==" - }, - "@angular/compiler": { - "version": "9.1.13", - "resolved": "https://registry.npmjs.org/@angular/compiler/-/compiler-9.1.13.tgz", - "integrity": "sha512-9MLB1Xx7odKuxDoybVwiOB1ZEUZpL8FurYm4RVuW39ntsUt0IMC9Hb8UagZLTAWhaWSHydkD/KBQVVobGqd0lA==" - }, - "@angular/compiler-cli": { - "version": "9.1.13", - "resolved": "https://registry.npmjs.org/@angular/compiler-cli/-/compiler-cli-9.1.13.tgz", - "integrity": "sha512-40jbfMr1FinOqUyG3k4Moiytjs/Z8zKBgP3S5Qfn80EBJItRdFXwNtvaOi/onaag4+Mv+vigShwsgCewLbt/kA==", + "node_modules/@angular-devkit/build-angular/node_modules/semver": { + "version": "7.5.3", "dev": true, - "requires": { - "canonical-path": "1.0.0", - "chokidar": "^3.0.0", - "convert-source-map": "^1.5.1", - "dependency-graph": "^0.7.2", - "fs-extra": "4.0.2", - "magic-string": "^0.25.0", - "minimist": "^1.2.0", - "reflect-metadata": "^0.1.2", - "semver": "^6.3.0", - "source-map": "^0.6.1", - "sourcemap-codec": "^1.4.8", - "yargs": "^16.1.1" - }, + "license": "ISC", "dependencies": { - "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" - } - }, - "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 - }, - "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 - }, - "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 - }, - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "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" - } - }, - "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" - } - }, - "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" - } - }, - "y18n": { - "version": "5.0.8", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", - "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", - "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.9", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", - "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", - "dev": true - } + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" } }, - "@angular/core": { - "version": "9.1.13", - "resolved": "https://registry.npmjs.org/@angular/core/-/core-9.1.13.tgz", - "integrity": "sha512-mBm24Q9GjkAsxMAzqQ86U1078+yTEpr0+syMEruUtJ0HUH6Fzn3J+6xTLb+BVcGb9RkCkFaV9T5mcn6ZM0f++g==" - }, - "@angular/flex-layout": { - "version": "9.0.0-beta.31", - "resolved": "https://registry.npmjs.org/@angular/flex-layout/-/flex-layout-9.0.0-beta.31.tgz", - "integrity": "sha512-g94u2mecDl87ORvFRuOBshV/S/ETE4bybClU2e1xXKWNG+rhRHchChneHSonc29ZLyROTjHhmAtKOYojL92uLA==" - }, - "@angular/forms": { - "version": "9.1.13", - "resolved": "https://registry.npmjs.org/@angular/forms/-/forms-9.1.13.tgz", - "integrity": "sha512-soGVZmPq2bzkxvtTyeJB8p3ejzm4xxt+43hJw6Ag8NxpwUFPVa30oJge3JV+u8Y4yBtl5SbOZ4bBX3EkMxLcGQ==" - }, - "@angular/language-service": { - "version": "9.1.13", - "resolved": "https://registry.npmjs.org/@angular/language-service/-/language-service-9.1.13.tgz", - "integrity": "sha512-fecbDGUUGLsdoVgKqQMmqLwy7Q4MjHxrUdk4Uz3kI3wLPf+C0KV8n/hW+RA4mFVTJrpuwnvQa1WJWXz5U5PVjw==", - "dev": true - }, - "@angular/material": { - "version": "9.2.4", - "resolved": "https://registry.npmjs.org/@angular/material/-/material-9.2.4.tgz", - "integrity": "sha512-LkoTXE6B0slvMhvfZDdPWaz4yaYLkaAp5VSPunI9pxGsPxzqEV9e210wC1/sjG/76Nk8Ep7/2z9XKac8Q9bMwA==" - }, - "@angular/material-moment-adapter": { - "version": "9.2.4", - "resolved": "https://registry.npmjs.org/@angular/material-moment-adapter/-/material-moment-adapter-9.2.4.tgz", - "integrity": "sha512-V5xkL+YUec3nDGRaJB72mJTUtdUvGaG9WCQEdr45viDWFGjQaEpS6msuScBLp0PwsN8Wt0n69eZg0ULgxPBa5g==" - }, - "@angular/platform-browser": { - "version": "9.1.13", - "resolved": "https://registry.npmjs.org/@angular/platform-browser/-/platform-browser-9.1.13.tgz", - "integrity": "sha512-F3iTz1zNbtrs7KFKUxbj8qmTsd/fiuTNcpBExjE5TtatRiE6J8vNvN1+Z/1FgPe0UXBSdTzSwZ8/RxWKw20RMw==" - }, - "@angular/platform-browser-dynamic": { - "version": "9.1.13", - "resolved": "https://registry.npmjs.org/@angular/platform-browser-dynamic/-/platform-browser-dynamic-9.1.13.tgz", - "integrity": "sha512-jCeHyAZ4Nap1/FOqAlKEg9UxQaSkHrxnQr6hYtWwC4ZDVUn3zLWQf6J+mbeYNOXN5yQxEiIqqhORYeOCLLqf1w==" - }, - "@angular/router": { - "version": "9.1.13", - "resolved": "https://registry.npmjs.org/@angular/router/-/router-9.1.13.tgz", - "integrity": "sha512-AvqjCsxdzBqOGsPuyCtHb2ckfNhCEGrDfkFmZ5jT9MwohCVbChCKtwEH4cwlph6Tpxvu1a4zSryxOf5q8OSsJQ==" - }, - "@angular/upgrade": { - "version": "9.1.13", - "resolved": "https://registry.npmjs.org/@angular/upgrade/-/upgrade-9.1.13.tgz", - "integrity": "sha512-vNFB+T6gjsMhVqjOw1MvSwGlAggiSaVx5rStFnp3tm67niCIw44rB3TI0ZsyFimjWDLJfvscOeyjr2yF1s35Xw==" - }, - "@babel/code-frame": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.16.7.tgz", - "integrity": "sha512-iAXqUn8IIeBTNd72xsFlgaXHkMBMt6y4HJp1tIaK465CWLT/fG1aqB7ykr95gHHmlBdGbFeWWfyB4NJJ0nmeIg==", - "dev": true, - "requires": { - "@babel/highlight": "^7.16.7" - } - }, - "@babel/compat-data": { - "version": "7.17.7", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.17.7.tgz", - "integrity": "sha512-p8pdE6j0a29TNGebNm7NzYZWB3xVZJBZ7XGs42uAKzQo8VQ3F0By/cQCtUEABwIqw5zo6WA4NbmxsfzADzMKnQ==", - "dev": true - }, - "@babel/core": { - "version": "7.9.0", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.9.0.tgz", - "integrity": "sha512-kWc7L0fw1xwvI0zi8OKVBuxRVefwGOrKSQMvrQ3dW+bIIavBY3/NpXmpjMy7bQnLgwgzWQZ8TlM57YHpHNHz4w==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.8.3", - "@babel/generator": "^7.9.0", - "@babel/helper-module-transforms": "^7.9.0", - "@babel/helpers": "^7.9.0", - "@babel/parser": "^7.9.0", - "@babel/template": "^7.8.6", - "@babel/traverse": "^7.9.0", - "@babel/types": "^7.9.0", - "convert-source-map": "^1.7.0", - "debug": "^4.1.0", - "gensync": "^1.0.0-beta.1", - "json5": "^2.1.2", - "lodash": "^4.17.13", - "resolve": "^1.3.2", - "semver": "^5.4.1", - "source-map": "^0.5.0" - }, + "node_modules/@angular-devkit/build-angular/node_modules/stylus": { + "version": "0.59.0", + "dev": true, + "license": "MIT", "dependencies": { - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "dev": true - }, - "source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", - "dev": true - } + "@adobe/css-tools": "^4.0.1", + "debug": "^4.3.2", + "glob": "^7.1.6", + "sax": "~1.2.4", + "source-map": "^0.7.3" + }, + "bin": { + "stylus": "bin/stylus" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://opencollective.com/stylus" } }, - "@babel/generator": { - "version": "7.9.3", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.9.3.tgz", - "integrity": "sha512-RpxM252EYsz9qLUIq6F7YJyK1sv0wWDBFuztfDGWaQKzHjqDHysxSiRUpA/X9jmfqo+WzkAVKFaUily5h+gDCQ==", + "node_modules/@angular-devkit/build-angular/node_modules/stylus/node_modules/glob": { + "version": "7.2.3", "dev": true, - "requires": { - "@babel/types": "^7.9.0", - "jsesc": "^2.5.1", - "lodash": "^4.17.13", - "source-map": "^0.5.0" - }, + "license": "ISC", "dependencies": { - "source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", - "dev": true - } + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "@babel/helper-annotate-as-pure": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.16.7.tgz", - "integrity": "sha512-s6t2w/IPQVTAET1HitoowRGXooX8mCgtuP5195wD/QJPV6wYjpujCGF7JuMODVX2ZAJOf1GT6DT9MHEZvLOFSw==", + "node_modules/@angular-devkit/build-angular/node_modules/stylus/node_modules/minimatch": { + "version": "3.1.2", "dev": true, - "requires": { - "@babel/types": "^7.16.7" + "license": "ISC", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" } }, - "@babel/helper-builder-binary-assignment-operator-visitor": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.16.7.tgz", - "integrity": "sha512-C6FdbRaxYjwVu/geKW4ZeQ0Q31AftgRcdSnZ5/jsH6BzCJbtvXvhpfkbkThYSuutZA7nCXpPR6AD9zd1dprMkA==", + "node_modules/@angular-devkit/build-angular/node_modules/tslib": { + "version": "2.4.0", "dev": true, - "requires": { - "@babel/helper-explode-assignable-expression": "^7.16.7", - "@babel/types": "^7.16.7" - } + "license": "0BSD" }, - "@babel/helper-compilation-targets": { - "version": "7.17.7", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.17.7.tgz", - "integrity": "sha512-UFzlz2jjd8kroj0hmCFV5zr+tQPi1dpC2cRsDV/3IEW8bJfCPrPpmcSN6ZS8RqIq4LXcmpipCQFPddyFA5Yc7w==", + "node_modules/@angular-devkit/build-angular/node_modules/webpack": { + "version": "5.76.1", "dev": true, - "requires": { - "@babel/compat-data": "^7.17.7", - "@babel/helper-validator-option": "^7.16.7", - "browserslist": "^4.17.5", - "semver": "^6.3.0" - }, + "license": "MIT", "dependencies": { - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true + "@types/eslint-scope": "^3.7.3", + "@types/estree": "^0.0.51", + "@webassemblyjs/ast": "1.11.1", + "@webassemblyjs/wasm-edit": "1.11.1", + "@webassemblyjs/wasm-parser": "1.11.1", + "acorn": "^8.7.1", + "acorn-import-assertions": "^1.7.6", + "browserslist": "^4.14.5", + "chrome-trace-event": "^1.0.2", + "enhanced-resolve": "^5.10.0", + "es-module-lexer": "^0.9.0", + "eslint-scope": "5.1.1", + "events": "^3.2.0", + "glob-to-regexp": "^0.4.1", + "graceful-fs": "^4.2.9", + "json-parse-even-better-errors": "^2.3.1", + "loader-runner": "^4.2.0", + "mime-types": "^2.1.27", + "neo-async": "^2.6.2", + "schema-utils": "^3.1.0", + "tapable": "^2.1.1", + "terser-webpack-plugin": "^5.1.3", + "watchpack": "^2.4.0", + "webpack-sources": "^3.2.3" + }, + "bin": { + "webpack": "bin/webpack.js" + }, + "engines": { + "node": ">=10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependenciesMeta": { + "webpack-cli": { + "optional": true } } }, - "@babel/helper-create-regexp-features-plugin": { - "version": "7.17.0", - "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.17.0.tgz", - "integrity": "sha512-awO2So99wG6KnlE+TPs6rn83gCz5WlEePJDTnLEqbchMVrBeAujURVphRdigsk094VhvZehFoNOihSlcBjwsXA==", + "node_modules/@angular-devkit/build-angular/node_modules/yallist": { + "version": "4.0.0", "dev": true, - "requires": { - "@babel/helper-annotate-as-pure": "^7.16.7", - "regexpu-core": "^5.0.1" - } + "license": "ISC" }, - "@babel/helper-environment-visitor": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.16.7.tgz", - "integrity": "sha512-SLLb0AAn6PkUeAfKJCCOl9e1R53pQlGAfc4y4XuMRZfqeMYLE0dM1LMhqbGAlGQY0lfw5/ohoYWAe9V1yibRag==", + "node_modules/@angular-devkit/build-webpack": { + "version": "0.1402.13", "dev": true, - "requires": { - "@babel/types": "^7.16.7" + "license": "MIT", + "dependencies": { + "@angular-devkit/architect": "0.1402.13", + "rxjs": "6.6.7" + }, + "engines": { + "node": "^14.15.0 || >=16.10.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" + }, + "peerDependencies": { + "webpack": "^5.30.0", + "webpack-dev-server": "^4.0.0" } }, - "@babel/helper-explode-assignable-expression": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.16.7.tgz", - "integrity": "sha512-KyUenhWMC8VrxzkGP0Jizjo4/Zx+1nNZhgocs+gLzyZyB8SHidhoq9KK/8Ato4anhwsivfkBLftky7gvzbZMtQ==", + "node_modules/@angular-devkit/build-webpack/node_modules/rxjs": { + "version": "6.6.7", "dev": true, - "requires": { - "@babel/types": "^7.16.7" + "license": "Apache-2.0", + "dependencies": { + "tslib": "^1.9.0" + }, + "engines": { + "npm": ">=2.0.0" } }, - "@babel/helper-function-name": { - "version": "7.17.9", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.17.9.tgz", - "integrity": "sha512-7cRisGlVtiVqZ0MW0/yFB4atgpGLWEHUVYnb448hZK4x+vih0YO5UoS11XIYtZYqHd0dIPMdUSv8q5K4LdMnIg==", + "node_modules/@angular-devkit/build-webpack/node_modules/tslib": { + "version": "1.14.1", "dev": true, - "requires": { - "@babel/template": "^7.16.7", - "@babel/types": "^7.17.0" - }, + "license": "0BSD" + }, + "node_modules/@angular-devkit/core": { + "version": "14.2.13", + "dev": true, + "license": "MIT", "dependencies": { - "@babel/template": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.16.7.tgz", - "integrity": "sha512-I8j/x8kHUrbYRTUxXrrMbfCa7jxkE7tZre39x3kjr9hvI82cK1FfqLygotcWN5kdPGWcLdWMHpSBavse5tWw3w==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.16.7", - "@babel/parser": "^7.16.7", - "@babel/types": "^7.16.7" - } + "ajv": "8.11.0", + "ajv-formats": "2.1.1", + "jsonc-parser": "3.1.0", + "rxjs": "6.6.7", + "source-map": "0.7.4" + }, + "engines": { + "node": "^14.15.0 || >=16.10.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" + }, + "peerDependencies": { + "chokidar": "^3.5.2" + }, + "peerDependenciesMeta": { + "chokidar": { + "optional": true } } }, - "@babel/helper-hoist-variables": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.16.7.tgz", - "integrity": "sha512-m04d/0Op34H5v7pbZw6pSKP7weA6lsMvfiIAMeIvkY/R4xQtBSMFEigu9QTZ2qB/9l22vsxtM8a+Q8CzD255fg==", + "node_modules/@angular-devkit/core/node_modules/ajv": { + "version": "8.11.0", "dev": true, - "requires": { - "@babel/types": "^7.16.7" + "license": "MIT", + "dependencies": { + "fast-deep-equal": "^3.1.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" } }, - "@babel/helper-member-expression-to-functions": { - "version": "7.17.7", - "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.17.7.tgz", - "integrity": "sha512-thxXgnQ8qQ11W2wVUObIqDL4p148VMxkt5T/qpN5k2fboRyzFGFmKsTGViquyM5QHKUy48OZoca8kw4ajaDPyw==", + "node_modules/@angular-devkit/core/node_modules/json-schema-traverse": { + "version": "1.0.0", "dev": true, - "requires": { - "@babel/types": "^7.17.0" - } + "license": "MIT" }, - "@babel/helper-module-imports": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.16.7.tgz", - "integrity": "sha512-LVtS6TqjJHFc+nYeITRo6VLXve70xmq7wPhWTqDJusJEgGmkAACWwMiTNrvfoQo6hEhFwAIixNkvB0jPXDL8Wg==", + "node_modules/@angular-devkit/core/node_modules/rxjs": { + "version": "6.6.7", "dev": true, - "requires": { - "@babel/types": "^7.16.7" + "license": "Apache-2.0", + "dependencies": { + "tslib": "^1.9.0" + }, + "engines": { + "npm": ">=2.0.0" } }, - "@babel/helper-module-transforms": { - "version": "7.17.7", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.17.7.tgz", - "integrity": "sha512-VmZD99F3gNTYB7fJRDTi+u6l/zxY0BE6OIxPSU7a50s6ZUQkHwSDmV92FfM+oCG0pZRVojGYhkR8I0OGeCVREw==", + "node_modules/@angular-devkit/core/node_modules/tslib": { + "version": "1.14.1", "dev": true, - "requires": { - "@babel/helper-environment-visitor": "^7.16.7", - "@babel/helper-module-imports": "^7.16.7", - "@babel/helper-simple-access": "^7.17.7", - "@babel/helper-split-export-declaration": "^7.16.7", - "@babel/helper-validator-identifier": "^7.16.7", - "@babel/template": "^7.16.7", - "@babel/traverse": "^7.17.3", - "@babel/types": "^7.17.0" - }, - "dependencies": { - "@babel/template": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.16.7.tgz", - "integrity": "sha512-I8j/x8kHUrbYRTUxXrrMbfCa7jxkE7tZre39x3kjr9hvI82cK1FfqLygotcWN5kdPGWcLdWMHpSBavse5tWw3w==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.16.7", - "@babel/parser": "^7.16.7", - "@babel/types": "^7.16.7" - } - } - } + "license": "0BSD" }, - "@babel/helper-optimise-call-expression": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.16.7.tgz", - "integrity": "sha512-EtgBhg7rd/JcnpZFXpBy0ze1YRfdm7BnBX4uKMBd3ixa3RGAE002JZB66FJyNH7g0F38U05pXmA5P8cBh7z+1w==", + "node_modules/@angular-devkit/schematics": { + "version": "14.2.13", "dev": true, - "requires": { - "@babel/types": "^7.16.7" + "license": "MIT", + "dependencies": { + "@angular-devkit/core": "14.2.13", + "jsonc-parser": "3.1.0", + "magic-string": "0.26.2", + "ora": "5.4.1", + "rxjs": "6.6.7" + }, + "engines": { + "node": "^14.15.0 || >=16.10.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" } }, - "@babel/helper-plugin-utils": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.16.7.tgz", - "integrity": "sha512-Qg3Nk7ZxpgMrsox6HreY1ZNKdBq7K72tDSliA6dCl5f007jR4ne8iD5UzuNnCJH2xBf2BEEVGr+/OL6Gdp7RxA==", - "dev": true - }, - "@babel/helper-remap-async-to-generator": { - "version": "7.16.8", - "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.16.8.tgz", - "integrity": "sha512-fm0gH7Flb8H51LqJHy3HJ3wnE1+qtYR2A99K06ahwrawLdOFsCEWjZOrYricXJHoPSudNKxrMBUPEIPxiIIvBw==", + "node_modules/@angular-devkit/schematics/node_modules/rxjs": { + "version": "6.6.7", "dev": true, - "requires": { - "@babel/helper-annotate-as-pure": "^7.16.7", - "@babel/helper-wrap-function": "^7.16.8", - "@babel/types": "^7.16.8" + "license": "Apache-2.0", + "dependencies": { + "tslib": "^1.9.0" + }, + "engines": { + "npm": ">=2.0.0" } }, - "@babel/helper-replace-supers": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.16.7.tgz", - "integrity": "sha512-y9vsWilTNaVnVh6xiJfABzsNpgDPKev9HnAgz6Gb1p6UUwf9NepdlsV7VXGCftJM+jqD5f7JIEubcpLjZj5dBw==", + "node_modules/@angular-devkit/schematics/node_modules/tslib": { + "version": "1.14.1", "dev": true, - "requires": { - "@babel/helper-environment-visitor": "^7.16.7", - "@babel/helper-member-expression-to-functions": "^7.16.7", - "@babel/helper-optimise-call-expression": "^7.16.7", - "@babel/traverse": "^7.16.7", - "@babel/types": "^7.16.7" + "license": "0BSD" + }, + "node_modules/@angular/animations": { + "version": "14.3.0", + "license": "MIT", + "dependencies": { + "tslib": "^2.3.0" + }, + "engines": { + "node": "^14.15.0 || >=16.10.0" + }, + "peerDependencies": { + "@angular/core": "14.3.0" } }, - "@babel/helper-simple-access": { - "version": "7.17.7", - "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.17.7.tgz", - "integrity": "sha512-txyMCGroZ96i+Pxr3Je3lzEJjqwaRC9buMUgtomcrLe5Nd0+fk1h0LLA+ixUF5OW7AhHuQ7Es1WcQJZmZsz2XA==", - "dev": true, - "requires": { - "@babel/types": "^7.17.0" + "node_modules/@angular/cdk": { + "version": "14.2.7", + "license": "MIT", + "dependencies": { + "tslib": "^2.3.0" + }, + "optionalDependencies": { + "parse5": "^5.0.0" + }, + "peerDependencies": { + "@angular/common": "^14.0.0 || ^15.0.0", + "@angular/core": "^14.0.0 || ^15.0.0", + "rxjs": "^6.5.3 || ^7.4.0" } }, - "@babel/helper-skip-transparent-expression-wrappers": { - "version": "7.16.0", - "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.16.0.tgz", - "integrity": "sha512-+il1gTy0oHwUsBQZyJvukbB4vPMdcYBrFHa0Uc4AizLxbq6BOYC51Rv4tWocX9BLBDLZ4kc6qUFpQ6HRgL+3zw==", + "node_modules/@angular/cli": { + "version": "14.2.13", "dev": true, - "requires": { - "@babel/types": "^7.16.0" + "license": "MIT", + "dependencies": { + "@angular-devkit/architect": "0.1402.13", + "@angular-devkit/core": "14.2.13", + "@angular-devkit/schematics": "14.2.13", + "@schematics/angular": "14.2.13", + "@yarnpkg/lockfile": "1.1.0", + "ansi-colors": "4.1.3", + "debug": "4.3.4", + "ini": "3.0.0", + "inquirer": "8.2.4", + "jsonc-parser": "3.1.0", + "npm-package-arg": "9.1.0", + "npm-pick-manifest": "7.0.1", + "open": "8.4.0", + "ora": "5.4.1", + "pacote": "13.6.2", + "resolve": "1.22.1", + "semver": "7.5.3", + "symbol-observable": "4.0.0", + "uuid": "8.3.2", + "yargs": "17.5.1" + }, + "bin": { + "ng": "bin/ng.js" + }, + "engines": { + "node": "^14.15.0 || >=16.10.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" } }, - "@babel/helper-split-export-declaration": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.16.7.tgz", - "integrity": "sha512-xbWoy/PFoxSWazIToT9Sif+jJTlrMcndIsaOKvTA6u7QEo7ilkRZpjew18/W3c7nm8fXdUDXh02VXTbZ0pGDNw==", + "node_modules/@angular/cli/node_modules/lru-cache": { + "version": "6.0.0", "dev": true, - "requires": { - "@babel/types": "^7.16.7" + "license": "ISC", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" } }, - "@babel/helper-validator-identifier": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.16.7.tgz", - "integrity": "sha512-hsEnFemeiW4D08A5gUAZxLBTXpZ39P+a+DGDsHw1yxqyQ/jzFEnxf5uTEGp+3bzAbNOxU1paTgYS4ECU/IgfDw==", - "dev": true - }, - "@babel/helper-validator-option": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.16.7.tgz", - "integrity": "sha512-TRtenOuRUVo9oIQGPC5G9DgK4743cdxvtOw0weQNpZXaS16SCBi5MNjZF8vba3ETURjZpTbVn7Vvcf2eAwFozQ==", - "dev": true - }, - "@babel/helper-wrap-function": { - "version": "7.16.8", - "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.16.8.tgz", - "integrity": "sha512-8RpyRVIAW1RcDDGTA+GpPAwV22wXCfKOoM9bet6TLkGIFTkRQSkH1nMQ5Yet4MpoXe1ZwHPVtNasc2w0uZMqnw==", + "node_modules/@angular/cli/node_modules/semver": { + "version": "7.5.3", "dev": true, - "requires": { - "@babel/helper-function-name": "^7.16.7", - "@babel/template": "^7.16.7", - "@babel/traverse": "^7.16.8", - "@babel/types": "^7.16.8" - }, + "license": "ISC", "dependencies": { - "@babel/template": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.16.7.tgz", - "integrity": "sha512-I8j/x8kHUrbYRTUxXrrMbfCa7jxkE7tZre39x3kjr9hvI82cK1FfqLygotcWN5kdPGWcLdWMHpSBavse5tWw3w==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.16.7", - "@babel/parser": "^7.16.7", - "@babel/types": "^7.16.7" - } - } + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" } }, - "@babel/helpers": { - "version": "7.17.9", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.17.9.tgz", - "integrity": "sha512-cPCt915ShDWUEzEp3+UNRktO2n6v49l5RSnG9M5pS24hA+2FAc5si+Pn1i4VVbQQ+jh+bIZhPFQOJOzbrOYY1Q==", + "node_modules/@angular/cli/node_modules/yallist": { + "version": "4.0.0", "dev": true, - "requires": { - "@babel/template": "^7.16.7", - "@babel/traverse": "^7.17.9", - "@babel/types": "^7.17.0" + "license": "ISC" + }, + "node_modules/@angular/common": { + "version": "14.3.0", + "license": "MIT", + "dependencies": { + "tslib": "^2.3.0" + }, + "engines": { + "node": "^14.15.0 || >=16.10.0" }, + "peerDependencies": { + "@angular/core": "14.3.0", + "rxjs": "^6.5.3 || ^7.4.0" + } + }, + "node_modules/@angular/compiler": { + "version": "14.3.0", + "license": "MIT", "dependencies": { - "@babel/template": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.16.7.tgz", - "integrity": "sha512-I8j/x8kHUrbYRTUxXrrMbfCa7jxkE7tZre39x3kjr9hvI82cK1FfqLygotcWN5kdPGWcLdWMHpSBavse5tWw3w==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.16.7", - "@babel/parser": "^7.16.7", - "@babel/types": "^7.16.7" - } + "tslib": "^2.3.0" + }, + "engines": { + "node": "^14.15.0 || >=16.10.0" + }, + "peerDependencies": { + "@angular/core": "14.3.0" + }, + "peerDependenciesMeta": { + "@angular/core": { + "optional": true } } }, - "@babel/highlight": { - "version": "7.17.9", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.17.9.tgz", - "integrity": "sha512-J9PfEKCbFIv2X5bjTMiZu6Vf341N05QIY+d6FvVKynkG1S7G0j3I0QoRtWIrXhZ+/Nlb5Q0MzqL7TokEJ5BNHg==", + "node_modules/@angular/compiler-cli": { + "version": "14.3.0", "dev": true, - "requires": { - "@babel/helper-validator-identifier": "^7.16.7", - "chalk": "^2.0.0", - "js-tokens": "^4.0.0" + "license": "MIT", + "dependencies": { + "@babel/core": "^7.17.2", + "chokidar": "^3.0.0", + "convert-source-map": "^1.5.1", + "dependency-graph": "^0.11.0", + "magic-string": "^0.26.0", + "reflect-metadata": "^0.1.2", + "semver": "^7.0.0", + "sourcemap-codec": "^1.4.8", + "tslib": "^2.3.0", + "yargs": "^17.2.1" + }, + "bin": { + "ng-xi18n": "bundles/src/bin/ng_xi18n.js", + "ngc": "bundles/src/bin/ngc.js", + "ngcc": "bundles/ngcc/main-ngcc.js" + }, + "engines": { + "node": "^14.15.0 || >=16.10.0" + }, + "peerDependencies": { + "@angular/compiler": "14.3.0", + "typescript": ">=4.6.2 <4.9" } }, - "@babel/parser": { - "version": "7.17.9", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.17.9.tgz", - "integrity": "sha512-vqUSBLP8dQHFPdPi9bc5GK9vRkYHJ49fsZdtoJ8EQ8ibpwk5rPKfvNIwChB0KVXcIjcepEBBd2VHC5r9Gy8ueg==", - "dev": true + "node_modules/@angular/core": { + "version": "14.3.0", + "license": "MIT", + "dependencies": { + "tslib": "^2.3.0" + }, + "engines": { + "node": "^14.15.0 || >=16.10.0" + }, + "peerDependencies": { + "rxjs": "^6.5.3 || ^7.4.0", + "zone.js": "~0.11.4 || ~0.12.0" + } }, - "@babel/plugin-proposal-async-generator-functions": { - "version": "7.16.8", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.16.8.tgz", - "integrity": "sha512-71YHIvMuiuqWJQkebWJtdhQTfd4Q4mF76q2IX37uZPkG9+olBxsX+rH1vkhFto4UeJZ9dPY2s+mDvhDm1u2BGQ==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.16.7", - "@babel/helper-remap-async-to-generator": "^7.16.8", - "@babel/plugin-syntax-async-generators": "^7.8.4" + "node_modules/@angular/flex-layout": { + "version": "14.0.0-beta.40", + "license": "MIT", + "dependencies": { + "tslib": "^2.3.0" + }, + "peerDependencies": { + "@angular/cdk": "^14.0.0", + "@angular/common": "^14.0.0", + "@angular/core": "^14.0.0", + "@angular/platform-browser": "^14.0.0", + "rxjs": "^6.5.3 || ^7.4.0" } }, - "@babel/plugin-proposal-dynamic-import": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.16.7.tgz", - "integrity": "sha512-I8SW9Ho3/8DRSdmDdH3gORdyUuYnk1m4cMxUAdu5oy4n3OfN8flDEH+d60iG7dUfi0KkYwSvoalHzzdRzpWHTg==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.16.7", - "@babel/plugin-syntax-dynamic-import": "^7.8.3" + "node_modules/@angular/forms": { + "version": "14.3.0", + "license": "MIT", + "dependencies": { + "tslib": "^2.3.0" + }, + "engines": { + "node": "^14.15.0 || >=16.10.0" + }, + "peerDependencies": { + "@angular/common": "14.3.0", + "@angular/core": "14.3.0", + "@angular/platform-browser": "14.3.0", + "rxjs": "^6.5.3 || ^7.4.0" } }, - "@babel/plugin-proposal-json-strings": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.16.7.tgz", - "integrity": "sha512-lNZ3EEggsGY78JavgbHsK9u5P3pQaW7k4axlgFLYkMd7UBsiNahCITShLjNQschPyjtO6dADrL24757IdhBrsQ==", + "node_modules/@angular/language-service": { + "version": "14.3.0", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.16.7", - "@babel/plugin-syntax-json-strings": "^7.8.3" + "license": "MIT", + "engines": { + "node": "^14.15.0 || >=16.10.0" } }, - "@babel/plugin-proposal-nullish-coalescing-operator": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.16.7.tgz", - "integrity": "sha512-aUOrYU3EVtjf62jQrCj63pYZ7k6vns2h/DQvHPWGmsJRYzWXZ6/AsfgpiRy6XiuIDADhJzP2Q9MwSMKauBQ+UQ==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.16.7", - "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3" + "node_modules/@angular/material": { + "version": "14.2.7", + "license": "MIT", + "dependencies": { + "tslib": "^2.3.0" + }, + "peerDependencies": { + "@angular/animations": "^14.0.0 || ^15.0.0", + "@angular/cdk": "14.2.7", + "@angular/common": "^14.0.0 || ^15.0.0", + "@angular/core": "^14.0.0 || ^15.0.0", + "@angular/forms": "^14.0.0 || ^15.0.0", + "@angular/platform-browser": "^14.0.0 || ^15.0.0", + "rxjs": "^6.5.3 || ^7.4.0" + } + }, + "node_modules/@angular/material-moment-adapter": { + "version": "14.2.7", + "license": "MIT", + "peer": true, + "dependencies": { + "tslib": "^2.3.0" + }, + "peerDependencies": { + "@angular/core": "^14.0.0 || ^15.0.0", + "@angular/material": "14.2.7", + "moment": "^2.18.1" } }, - "@babel/plugin-proposal-numeric-separator": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.16.7.tgz", - "integrity": "sha512-vQgPMknOIgiuVqbokToyXbkY/OmmjAzr/0lhSIbG/KmnzXPGwW/AdhdKpi+O4X/VkWiWjnkKOBiqJrTaC98VKw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.16.7", - "@babel/plugin-syntax-numeric-separator": "^7.10.4" + "node_modules/@angular/platform-browser": { + "version": "14.3.0", + "license": "MIT", + "dependencies": { + "tslib": "^2.3.0" + }, + "engines": { + "node": "^14.15.0 || >=16.10.0" + }, + "peerDependencies": { + "@angular/animations": "14.3.0", + "@angular/common": "14.3.0", + "@angular/core": "14.3.0" + }, + "peerDependenciesMeta": { + "@angular/animations": { + "optional": true + } } }, - "@babel/plugin-proposal-object-rest-spread": { - "version": "7.17.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.17.3.tgz", - "integrity": "sha512-yuL5iQA/TbZn+RGAfxQXfi7CNLmKi1f8zInn4IgobuCWcAb7i+zj4TYzQ9l8cEzVyJ89PDGuqxK1xZpUDISesw==", - "dev": true, - "requires": { - "@babel/compat-data": "^7.17.0", - "@babel/helper-compilation-targets": "^7.16.7", - "@babel/helper-plugin-utils": "^7.16.7", - "@babel/plugin-syntax-object-rest-spread": "^7.8.3", - "@babel/plugin-transform-parameters": "^7.16.7" + "node_modules/@angular/platform-browser-dynamic": { + "version": "14.3.0", + "license": "MIT", + "dependencies": { + "tslib": "^2.3.0" + }, + "engines": { + "node": "^14.15.0 || >=16.10.0" + }, + "peerDependencies": { + "@angular/common": "14.3.0", + "@angular/compiler": "14.3.0", + "@angular/core": "14.3.0", + "@angular/platform-browser": "14.3.0" + } + }, + "node_modules/@angular/router": { + "version": "14.3.0", + "license": "MIT", + "dependencies": { + "tslib": "^2.3.0" + }, + "engines": { + "node": "^14.15.0 || >=16.10.0" + }, + "peerDependencies": { + "@angular/common": "14.3.0", + "@angular/core": "14.3.0", + "@angular/platform-browser": "14.3.0", + "rxjs": "^6.5.3 || ^7.4.0" + } + }, + "node_modules/@angular/upgrade": { + "version": "14.3.0", + "license": "MIT", + "dependencies": { + "tslib": "^2.3.0" + }, + "engines": { + "node": "^14.15.0 || >=16.10.0" + }, + "peerDependencies": { + "@angular/compiler": "14.3.0", + "@angular/core": "14.3.0", + "@angular/platform-browser": "14.3.0", + "@angular/platform-browser-dynamic": "14.3.0" } }, - "@babel/plugin-proposal-optional-catch-binding": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.16.7.tgz", - "integrity": "sha512-eMOH/L4OvWSZAE1VkHbr1vckLG1WUcHGJSLqqQwl2GaUqG6QjddvrOaTUMNYiv77H5IKPMZ9U9P7EaHwvAShfA==", + "node_modules/@assemblyscript/loader": { + "version": "0.10.1", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.16.7", - "@babel/plugin-syntax-optional-catch-binding": "^7.8.3" + "license": "Apache-2.0" + }, + "node_modules/@babel/code-frame": { + "version": "7.24.7", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/highlight": "^7.24.7", + "picocolors": "^1.0.0" + }, + "engines": { + "node": ">=6.9.0" } }, - "@babel/plugin-proposal-optional-chaining": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.16.7.tgz", - "integrity": "sha512-eC3xy+ZrUcBtP7x+sq62Q/HYd674pPTb/77XZMb5wbDPGWIdUbSr4Agr052+zaUPSb+gGRnjxXfKFvx5iMJ+DA==", + "node_modules/@babel/compat-data": { + "version": "7.25.4", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.16.7", - "@babel/helper-skip-transparent-expression-wrappers": "^7.16.0", - "@babel/plugin-syntax-optional-chaining": "^7.8.3" + "license": "MIT", + "engines": { + "node": ">=6.9.0" } }, - "@babel/plugin-proposal-unicode-property-regex": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.16.7.tgz", - "integrity": "sha512-QRK0YI/40VLhNVGIjRNAAQkEHws0cswSdFFjpFyt943YmJIU1da9uW63Iu6NFV6CxTZW5eTDCrwZUstBWgp/Rg==", + "node_modules/@babel/core": { + "version": "7.18.10", "dev": true, - "requires": { - "@babel/helper-create-regexp-features-plugin": "^7.16.7", - "@babel/helper-plugin-utils": "^7.16.7" + "license": "MIT", + "dependencies": { + "@ampproject/remapping": "^2.1.0", + "@babel/code-frame": "^7.18.6", + "@babel/generator": "^7.18.10", + "@babel/helper-compilation-targets": "^7.18.9", + "@babel/helper-module-transforms": "^7.18.9", + "@babel/helpers": "^7.18.9", + "@babel/parser": "^7.18.10", + "@babel/template": "^7.18.10", + "@babel/traverse": "^7.18.10", + "@babel/types": "^7.18.10", + "convert-source-map": "^1.7.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.2", + "json5": "^2.2.1", + "semver": "^6.3.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/babel" } }, - "@babel/plugin-syntax-async-generators": { - "version": "7.8.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz", - "integrity": "sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==", + "node_modules/@babel/core/node_modules/semver": { + "version": "6.3.1", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" + "license": "ISC", + "bin": { + "semver": "bin/semver.js" } }, - "@babel/plugin-syntax-dynamic-import": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz", - "integrity": "sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==", + "node_modules/@babel/generator": { + "version": "7.18.12", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" + "license": "MIT", + "dependencies": { + "@babel/types": "^7.18.10", + "@jridgewell/gen-mapping": "^0.3.2", + "jsesc": "^2.5.1" + }, + "engines": { + "node": ">=6.9.0" } }, - "@babel/plugin-syntax-json-strings": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz", - "integrity": "sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==", + "node_modules/@babel/generator/node_modules/@jridgewell/gen-mapping": { + "version": "0.3.5", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" + "license": "MIT", + "dependencies": { + "@jridgewell/set-array": "^1.2.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.24" + }, + "engines": { + "node": ">=6.0.0" } }, - "@babel/plugin-syntax-nullish-coalescing-operator": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz", - "integrity": "sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==", + "node_modules/@babel/helper-annotate-as-pure": { + "version": "7.18.6", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" + "license": "MIT", + "dependencies": { + "@babel/types": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" } }, - "@babel/plugin-syntax-numeric-separator": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz", - "integrity": "sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==", + "node_modules/@babel/helper-builder-binary-assignment-operator-visitor": { + "version": "7.24.7", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.10.4" + "license": "MIT", + "dependencies": { + "@babel/traverse": "^7.24.7", + "@babel/types": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" } }, - "@babel/plugin-syntax-object-rest-spread": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz", - "integrity": "sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==", + "node_modules/@babel/helper-compilation-targets": { + "version": "7.25.2", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" + "license": "MIT", + "dependencies": { + "@babel/compat-data": "^7.25.2", + "@babel/helper-validator-option": "^7.24.8", + "browserslist": "^4.23.1", + "lru-cache": "^5.1.1", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" } }, - "@babel/plugin-syntax-optional-catch-binding": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz", - "integrity": "sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==", + "node_modules/@babel/helper-compilation-targets/node_modules/semver": { + "version": "6.3.1", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" + "license": "ISC", + "bin": { + "semver": "bin/semver.js" } }, - "@babel/plugin-syntax-optional-chaining": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz", - "integrity": "sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==", + "node_modules/@babel/helper-create-class-features-plugin": { + "version": "7.25.4", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" + "license": "MIT", + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.24.7", + "@babel/helper-member-expression-to-functions": "^7.24.8", + "@babel/helper-optimise-call-expression": "^7.24.7", + "@babel/helper-replace-supers": "^7.25.0", + "@babel/helper-skip-transparent-expression-wrappers": "^7.24.7", + "@babel/traverse": "^7.25.4", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" } }, - "@babel/plugin-syntax-top-level-await": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz", - "integrity": "sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==", + "node_modules/@babel/helper-create-class-features-plugin/node_modules/@babel/helper-annotate-as-pure": { + "version": "7.24.7", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.14.5" + "license": "MIT", + "dependencies": { + "@babel/types": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" } }, - "@babel/plugin-transform-arrow-functions": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.16.7.tgz", - "integrity": "sha512-9ffkFFMbvzTvv+7dTp/66xvZAWASuPD5Tl9LK3Z9vhOmANo6j94rik+5YMBt4CwHVMWLWpMsriIc2zsa3WW3xQ==", + "node_modules/@babel/helper-create-class-features-plugin/node_modules/semver": { + "version": "6.3.1", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.16.7" + "license": "ISC", + "bin": { + "semver": "bin/semver.js" } }, - "@babel/plugin-transform-async-to-generator": { - "version": "7.16.8", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.16.8.tgz", - "integrity": "sha512-MtmUmTJQHCnyJVrScNzNlofQJ3dLFuobYn3mwOTKHnSCMtbNsqvF71GQmJfFjdrXSsAA7iysFmYWw4bXZ20hOg==", + "node_modules/@babel/helper-create-regexp-features-plugin": { + "version": "7.25.2", "dev": true, - "requires": { - "@babel/helper-module-imports": "^7.16.7", - "@babel/helper-plugin-utils": "^7.16.7", - "@babel/helper-remap-async-to-generator": "^7.16.8" + "license": "MIT", + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.24.7", + "regexpu-core": "^5.3.1", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" } }, - "@babel/plugin-transform-block-scoped-functions": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.16.7.tgz", - "integrity": "sha512-JUuzlzmF40Z9cXyytcbZEZKckgrQzChbQJw/5PuEHYeqzCsvebDx0K0jWnIIVcmmDOAVctCgnYs0pMcrYj2zJg==", + "node_modules/@babel/helper-create-regexp-features-plugin/node_modules/@babel/helper-annotate-as-pure": { + "version": "7.24.7", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.16.7" + "license": "MIT", + "dependencies": { + "@babel/types": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" } }, - "@babel/plugin-transform-block-scoping": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.16.7.tgz", - "integrity": "sha512-ObZev2nxVAYA4bhyusELdo9hb3H+A56bxH3FZMbEImZFiEDYVHXQSJ1hQKFlDnlt8G9bBrCZ5ZpURZUrV4G5qQ==", + "node_modules/@babel/helper-create-regexp-features-plugin/node_modules/semver": { + "version": "6.3.1", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.16.7" + "license": "ISC", + "bin": { + "semver": "bin/semver.js" } }, - "@babel/plugin-transform-classes": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.16.7.tgz", - "integrity": "sha512-WY7og38SFAGYRe64BrjKf8OrE6ulEHtr5jEYaZMwox9KebgqPi67Zqz8K53EKk1fFEJgm96r32rkKZ3qA2nCWQ==", + "node_modules/@babel/helper-define-polyfill-provider": { + "version": "0.3.3", "dev": true, - "requires": { - "@babel/helper-annotate-as-pure": "^7.16.7", - "@babel/helper-environment-visitor": "^7.16.7", - "@babel/helper-function-name": "^7.16.7", - "@babel/helper-optimise-call-expression": "^7.16.7", + "license": "MIT", + "dependencies": { + "@babel/helper-compilation-targets": "^7.17.7", "@babel/helper-plugin-utils": "^7.16.7", - "@babel/helper-replace-supers": "^7.16.7", - "@babel/helper-split-export-declaration": "^7.16.7", - "globals": "^11.1.0" + "debug": "^4.1.1", + "lodash.debounce": "^4.0.8", + "resolve": "^1.14.2", + "semver": "^6.1.2" + }, + "peerDependencies": { + "@babel/core": "^7.4.0-0" } }, - "@babel/plugin-transform-computed-properties": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.16.7.tgz", - "integrity": "sha512-gN72G9bcmenVILj//sv1zLNaPyYcOzUho2lIJBMh/iakJ9ygCo/hEF9cpGb61SCMEDxbbyBoVQxrt+bWKu5KGw==", + "node_modules/@babel/helper-define-polyfill-provider/node_modules/semver": { + "version": "6.3.1", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.16.7" + "license": "ISC", + "bin": { + "semver": "bin/semver.js" } }, - "@babel/plugin-transform-destructuring": { - "version": "7.17.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.17.7.tgz", - "integrity": "sha512-XVh0r5yq9sLR4vZ6eVZe8FKfIcSgaTBxVBRSYokRj2qksf6QerYnTxz9/GTuKTH/n/HwLP7t6gtlybHetJ/6hQ==", + "node_modules/@babel/helper-environment-visitor": { + "version": "7.24.7", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.16.7" + "license": "MIT", + "dependencies": { + "@babel/types": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" } }, - "@babel/plugin-transform-dotall-regex": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.16.7.tgz", - "integrity": "sha512-Lyttaao2SjZF6Pf4vk1dVKv8YypMpomAbygW+mU5cYP3S5cWTfCJjG8xV6CFdzGFlfWK81IjL9viiTvpb6G7gQ==", + "node_modules/@babel/helper-member-expression-to-functions": { + "version": "7.24.8", "dev": true, - "requires": { - "@babel/helper-create-regexp-features-plugin": "^7.16.7", - "@babel/helper-plugin-utils": "^7.16.7" + "license": "MIT", + "dependencies": { + "@babel/traverse": "^7.24.8", + "@babel/types": "^7.24.8" + }, + "engines": { + "node": ">=6.9.0" } }, - "@babel/plugin-transform-duplicate-keys": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.16.7.tgz", - "integrity": "sha512-03DvpbRfvWIXyK0/6QiR1KMTWeT6OcQ7tbhjrXyFS02kjuX/mu5Bvnh5SDSWHxyawit2g5aWhKwI86EE7GUnTw==", + "node_modules/@babel/helper-module-imports": { + "version": "7.24.7", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.16.7" + "license": "MIT", + "dependencies": { + "@babel/traverse": "^7.24.7", + "@babel/types": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" } }, - "@babel/plugin-transform-exponentiation-operator": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.16.7.tgz", - "integrity": "sha512-8UYLSlyLgRixQvlYH3J2ekXFHDFLQutdy7FfFAMm3CPZ6q9wHCwnUyiXpQCe3gVVnQlHc5nsuiEVziteRNTXEA==", + "node_modules/@babel/helper-module-transforms": { + "version": "7.25.2", "dev": true, - "requires": { - "@babel/helper-builder-binary-assignment-operator-visitor": "^7.16.7", - "@babel/helper-plugin-utils": "^7.16.7" + "license": "MIT", + "dependencies": { + "@babel/helper-module-imports": "^7.24.7", + "@babel/helper-simple-access": "^7.24.7", + "@babel/helper-validator-identifier": "^7.24.7", + "@babel/traverse": "^7.25.2" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" } }, - "@babel/plugin-transform-for-of": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.16.7.tgz", - "integrity": "sha512-/QZm9W92Ptpw7sjI9Nx1mbcsWz33+l8kuMIQnDwgQBG5s3fAfQvkRjQ7NqXhtNcKOnPkdICmUHyCaWW06HCsqg==", + "node_modules/@babel/helper-optimise-call-expression": { + "version": "7.24.7", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.16.7" + "license": "MIT", + "dependencies": { + "@babel/types": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" } }, - "@babel/plugin-transform-function-name": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.16.7.tgz", - "integrity": "sha512-SU/C68YVwTRxqWj5kgsbKINakGag0KTgq9f2iZEXdStoAbOzLHEBRYzImmA6yFo8YZhJVflvXmIHUO7GWHmxxA==", + "node_modules/@babel/helper-plugin-utils": { + "version": "7.24.8", "dev": true, - "requires": { - "@babel/helper-compilation-targets": "^7.16.7", - "@babel/helper-function-name": "^7.16.7", - "@babel/helper-plugin-utils": "^7.16.7" + "license": "MIT", + "engines": { + "node": ">=6.9.0" } }, - "@babel/plugin-transform-literals": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.16.7.tgz", - "integrity": "sha512-6tH8RTpTWI0s2sV6uq3e/C9wPo4PTqqZps4uF0kzQ9/xPLFQtipynvmT1g/dOfEJ+0EQsHhkQ/zyRId8J2b8zQ==", + "node_modules/@babel/helper-remap-async-to-generator": { + "version": "7.25.0", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.16.7" + "license": "MIT", + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.24.7", + "@babel/helper-wrap-function": "^7.25.0", + "@babel/traverse": "^7.25.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" } }, - "@babel/plugin-transform-member-expression-literals": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.16.7.tgz", - "integrity": "sha512-mBruRMbktKQwbxaJof32LT9KLy2f3gH+27a5XSuXo6h7R3vqltl0PgZ80C8ZMKw98Bf8bqt6BEVi3svOh2PzMw==", + "node_modules/@babel/helper-remap-async-to-generator/node_modules/@babel/helper-annotate-as-pure": { + "version": "7.24.7", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.16.7" + "license": "MIT", + "dependencies": { + "@babel/types": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" } }, - "@babel/plugin-transform-modules-amd": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.16.7.tgz", - "integrity": "sha512-KaaEtgBL7FKYwjJ/teH63oAmE3lP34N3kshz8mm4VMAw7U3PxjVwwUmxEFksbgsNUaO3wId9R2AVQYSEGRa2+g==", + "node_modules/@babel/helper-replace-supers": { + "version": "7.25.0", "dev": true, - "requires": { - "@babel/helper-module-transforms": "^7.16.7", - "@babel/helper-plugin-utils": "^7.16.7", - "babel-plugin-dynamic-import-node": "^2.3.3" + "license": "MIT", + "dependencies": { + "@babel/helper-member-expression-to-functions": "^7.24.8", + "@babel/helper-optimise-call-expression": "^7.24.7", + "@babel/traverse": "^7.25.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" } }, - "@babel/plugin-transform-modules-commonjs": { - "version": "7.17.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.17.9.tgz", - "integrity": "sha512-2TBFd/r2I6VlYn0YRTz2JdazS+FoUuQ2rIFHoAxtyP/0G3D82SBLaRq9rnUkpqlLg03Byfl/+M32mpxjO6KaPw==", + "node_modules/@babel/helper-simple-access": { + "version": "7.24.7", "dev": true, - "requires": { - "@babel/helper-module-transforms": "^7.17.7", - "@babel/helper-plugin-utils": "^7.16.7", - "@babel/helper-simple-access": "^7.17.7", - "babel-plugin-dynamic-import-node": "^2.3.3" + "license": "MIT", + "dependencies": { + "@babel/traverse": "^7.24.7", + "@babel/types": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" } }, - "@babel/plugin-transform-modules-systemjs": { - "version": "7.17.8", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.17.8.tgz", - "integrity": "sha512-39reIkMTUVagzgA5x88zDYXPCMT6lcaRKs1+S9K6NKBPErbgO/w/kP8GlNQTC87b412ZTlmNgr3k2JrWgHH+Bw==", + "node_modules/@babel/helper-skip-transparent-expression-wrappers": { + "version": "7.24.7", "dev": true, - "requires": { - "@babel/helper-hoist-variables": "^7.16.7", - "@babel/helper-module-transforms": "^7.17.7", - "@babel/helper-plugin-utils": "^7.16.7", - "@babel/helper-validator-identifier": "^7.16.7", - "babel-plugin-dynamic-import-node": "^2.3.3" + "license": "MIT", + "dependencies": { + "@babel/traverse": "^7.24.7", + "@babel/types": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" } }, - "@babel/plugin-transform-modules-umd": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.16.7.tgz", - "integrity": "sha512-EMh7uolsC8O4xhudF2F6wedbSHm1HHZ0C6aJ7K67zcDNidMzVcxWdGr+htW9n21klm+bOn+Rx4CBsAntZd3rEQ==", + "node_modules/@babel/helper-string-parser": { + "version": "7.24.8", "dev": true, - "requires": { - "@babel/helper-module-transforms": "^7.16.7", - "@babel/helper-plugin-utils": "^7.16.7" + "license": "MIT", + "engines": { + "node": ">=6.9.0" } }, - "@babel/plugin-transform-named-capturing-groups-regex": { - "version": "7.16.8", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.16.8.tgz", - "integrity": "sha512-j3Jw+n5PvpmhRR+mrgIh04puSANCk/T/UA3m3P1MjJkhlK906+ApHhDIqBQDdOgL/r1UYpz4GNclTXxyZrYGSw==", + "node_modules/@babel/helper-validator-identifier": { + "version": "7.24.7", "dev": true, - "requires": { - "@babel/helper-create-regexp-features-plugin": "^7.16.7" + "license": "MIT", + "engines": { + "node": ">=6.9.0" } }, - "@babel/plugin-transform-new-target": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.16.7.tgz", - "integrity": "sha512-xiLDzWNMfKoGOpc6t3U+etCE2yRnn3SM09BXqWPIZOBpL2gvVrBWUKnsJx0K/ADi5F5YC5f8APFfWrz25TdlGg==", + "node_modules/@babel/helper-validator-option": { + "version": "7.24.8", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.16.7" + "license": "MIT", + "engines": { + "node": ">=6.9.0" } }, - "@babel/plugin-transform-object-super": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.16.7.tgz", - "integrity": "sha512-14J1feiQVWaGvRxj2WjyMuXS2jsBkgB3MdSN5HuC2G5nRspa5RK9COcs82Pwy5BuGcjb+fYaUj94mYcOj7rCvw==", + "node_modules/@babel/helper-wrap-function": { + "version": "7.25.0", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.16.7", - "@babel/helper-replace-supers": "^7.16.7" + "license": "MIT", + "dependencies": { + "@babel/template": "^7.25.0", + "@babel/traverse": "^7.25.0", + "@babel/types": "^7.25.0" + }, + "engines": { + "node": ">=6.9.0" } }, - "@babel/plugin-transform-parameters": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.16.7.tgz", - "integrity": "sha512-AT3MufQ7zZEhU2hwOA11axBnExW0Lszu4RL/tAlUJBuNoRak+wehQW8h6KcXOcgjY42fHtDxswuMhMjFEuv/aw==", + "node_modules/@babel/helper-wrap-function/node_modules/@babel/template": { + "version": "7.25.0", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.16.7" + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.24.7", + "@babel/parser": "^7.25.0", + "@babel/types": "^7.25.0" + }, + "engines": { + "node": ">=6.9.0" } }, - "@babel/plugin-transform-property-literals": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.16.7.tgz", - "integrity": "sha512-z4FGr9NMGdoIl1RqavCqGG+ZuYjfZ/hkCIeuH6Do7tXmSm0ls11nYVSJqFEUOSJbDab5wC6lRE/w6YjVcr6Hqw==", + "node_modules/@babel/helpers": { + "version": "7.25.6", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.16.7" + "license": "MIT", + "dependencies": { + "@babel/template": "^7.25.0", + "@babel/types": "^7.25.6" + }, + "engines": { + "node": ">=6.9.0" } }, - "@babel/plugin-transform-regenerator": { - "version": "7.17.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.17.9.tgz", - "integrity": "sha512-Lc2TfbxR1HOyn/c6b4Y/b6NHoTb67n/IoWLxTu4kC7h4KQnWlhCq2S8Tx0t2SVvv5Uu87Hs+6JEJ5kt2tYGylQ==", + "node_modules/@babel/helpers/node_modules/@babel/template": { + "version": "7.25.0", "dev": true, - "requires": { - "regenerator-transform": "^0.15.0" + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.24.7", + "@babel/parser": "^7.25.0", + "@babel/types": "^7.25.0" + }, + "engines": { + "node": ">=6.9.0" } }, - "@babel/plugin-transform-reserved-words": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.16.7.tgz", - "integrity": "sha512-KQzzDnZ9hWQBjwi5lpY5v9shmm6IVG0U9pB18zvMu2i4H90xpT4gmqwPYsn8rObiadYe2M0gmgsiOIF5A/2rtg==", + "node_modules/@babel/highlight": { + "version": "7.24.7", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.16.7" + "license": "MIT", + "dependencies": { + "@babel/helper-validator-identifier": "^7.24.7", + "chalk": "^2.4.2", + "js-tokens": "^4.0.0", + "picocolors": "^1.0.0" + }, + "engines": { + "node": ">=6.9.0" } }, - "@babel/plugin-transform-shorthand-properties": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.16.7.tgz", - "integrity": "sha512-hah2+FEnoRoATdIb05IOXf+4GzXYTq75TVhIn1PewihbpyrNWUt2JbudKQOETWw6QpLe+AIUpJ5MVLYTQbeeUg==", + "node_modules/@babel/parser": { + "version": "7.25.6", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.16.7" + "license": "MIT", + "dependencies": { + "@babel/types": "^7.25.6" + }, + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": ">=6.0.0" } }, - "@babel/plugin-transform-spread": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.16.7.tgz", - "integrity": "sha512-+pjJpgAngb53L0iaA5gU/1MLXJIfXcYepLgXB3esVRf4fqmj8f2cxM3/FKaHsZms08hFQJkFccEWuIpm429TXg==", + "node_modules/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": { + "version": "7.25.0", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.16.7", - "@babel/helper-skip-transparent-expression-wrappers": "^7.16.0" - } - }, - "@babel/plugin-transform-sticky-regex": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.16.7.tgz", - "integrity": "sha512-NJa0Bd/87QV5NZZzTuZG5BPJjLYadeSZ9fO6oOUoL4iQx+9EEuw/eEM92SrsT19Yc2jgB1u1hsjqDtH02c3Drw==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.16.7" - } - }, - "@babel/plugin-transform-template-literals": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.16.7.tgz", - "integrity": "sha512-VwbkDDUeenlIjmfNeDX/V0aWrQH2QiVyJtwymVQSzItFDTpxfyJh3EVaQiS0rIN/CqbLGr0VcGmuwyTdZtdIsA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.16.7" - } - }, - "@babel/plugin-transform-typeof-symbol": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.16.7.tgz", - "integrity": "sha512-p2rOixCKRJzpg9JB4gjnG4gjWkWa89ZoYUnl9snJ1cWIcTH/hvxZqfO+WjG6T8DRBpctEol5jw1O5rA8gkCokQ==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.16.7" - } - }, - "@babel/plugin-transform-unicode-regex": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.16.7.tgz", - "integrity": "sha512-oC5tYYKw56HO75KZVLQ+R/Nl3Hro9kf8iG0hXoaHP7tjAyCpvqBiSNe6vGrZni1Z6MggmUOC6A7VP7AVmw225Q==", - "dev": true, - "requires": { - "@babel/helper-create-regexp-features-plugin": "^7.16.7", - "@babel/helper-plugin-utils": "^7.16.7" - } - }, - "@babel/preset-env": { - "version": "7.9.0", - "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.9.0.tgz", - "integrity": "sha512-712DeRXT6dyKAM/FMbQTV/FvRCms2hPCx+3weRjZ8iQVQWZejWWk1wwG6ViWMyqb/ouBbGOl5b6aCk0+j1NmsQ==", - "dev": true, - "requires": { - "@babel/compat-data": "^7.9.0", - "@babel/helper-compilation-targets": "^7.8.7", - "@babel/helper-module-imports": "^7.8.3", - "@babel/helper-plugin-utils": "^7.8.3", - "@babel/plugin-proposal-async-generator-functions": "^7.8.3", - "@babel/plugin-proposal-dynamic-import": "^7.8.3", - "@babel/plugin-proposal-json-strings": "^7.8.3", - "@babel/plugin-proposal-nullish-coalescing-operator": "^7.8.3", - "@babel/plugin-proposal-numeric-separator": "^7.8.3", - "@babel/plugin-proposal-object-rest-spread": "^7.9.0", - "@babel/plugin-proposal-optional-catch-binding": "^7.8.3", - "@babel/plugin-proposal-optional-chaining": "^7.9.0", - "@babel/plugin-proposal-unicode-property-regex": "^7.8.3", - "@babel/plugin-syntax-async-generators": "^7.8.0", - "@babel/plugin-syntax-dynamic-import": "^7.8.0", - "@babel/plugin-syntax-json-strings": "^7.8.0", - "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.0", - "@babel/plugin-syntax-numeric-separator": "^7.8.0", - "@babel/plugin-syntax-object-rest-spread": "^7.8.0", - "@babel/plugin-syntax-optional-catch-binding": "^7.8.0", - "@babel/plugin-syntax-optional-chaining": "^7.8.0", - "@babel/plugin-syntax-top-level-await": "^7.8.3", - "@babel/plugin-transform-arrow-functions": "^7.8.3", - "@babel/plugin-transform-async-to-generator": "^7.8.3", - "@babel/plugin-transform-block-scoped-functions": "^7.8.3", - "@babel/plugin-transform-block-scoping": "^7.8.3", - "@babel/plugin-transform-classes": "^7.9.0", - "@babel/plugin-transform-computed-properties": "^7.8.3", - "@babel/plugin-transform-destructuring": "^7.8.3", - "@babel/plugin-transform-dotall-regex": "^7.8.3", - "@babel/plugin-transform-duplicate-keys": "^7.8.3", - "@babel/plugin-transform-exponentiation-operator": "^7.8.3", - "@babel/plugin-transform-for-of": "^7.9.0", - "@babel/plugin-transform-function-name": "^7.8.3", - "@babel/plugin-transform-literals": "^7.8.3", - "@babel/plugin-transform-member-expression-literals": "^7.8.3", - "@babel/plugin-transform-modules-amd": "^7.9.0", - "@babel/plugin-transform-modules-commonjs": "^7.9.0", - "@babel/plugin-transform-modules-systemjs": "^7.9.0", - "@babel/plugin-transform-modules-umd": "^7.9.0", - "@babel/plugin-transform-named-capturing-groups-regex": "^7.8.3", - "@babel/plugin-transform-new-target": "^7.8.3", - "@babel/plugin-transform-object-super": "^7.8.3", - "@babel/plugin-transform-parameters": "^7.8.7", - "@babel/plugin-transform-property-literals": "^7.8.3", - "@babel/plugin-transform-regenerator": "^7.8.7", - "@babel/plugin-transform-reserved-words": "^7.8.3", - "@babel/plugin-transform-shorthand-properties": "^7.8.3", - "@babel/plugin-transform-spread": "^7.8.3", - "@babel/plugin-transform-sticky-regex": "^7.8.3", - "@babel/plugin-transform-template-literals": "^7.8.3", - "@babel/plugin-transform-typeof-symbol": "^7.8.4", - "@babel/plugin-transform-unicode-regex": "^7.8.3", - "@babel/preset-modules": "^0.1.3", - "@babel/types": "^7.9.0", - "browserslist": "^4.9.1", - "core-js-compat": "^3.6.2", - "invariant": "^2.2.2", - "levenary": "^1.1.1", - "semver": "^5.5.0" - }, + "license": "MIT", "dependencies": { - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "dev": true - } + "@babel/helper-plugin-utils": "^7.24.8" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" } }, - "@babel/preset-modules": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.5.tgz", - "integrity": "sha512-A57th6YRG7oR3cq/yt/Y84MvGgE0eJG2F1JLhKuyG+jFxEgrd/HAMJatiFtmOiZurz+0DkrvbheCLaV5f2JfjA==", + "node_modules/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": { + "version": "7.24.7", "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/plugin-proposal-unicode-property-regex": "^7.4.4", - "@babel/plugin-transform-dotall-regex": "^7.4.4", - "@babel/types": "^7.4.4", - "esutils": "^2.0.2" + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.7", + "@babel/helper-skip-transparent-expression-wrappers": "^7.24.7", + "@babel/plugin-transform-optional-chaining": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.13.0" } }, - "@babel/runtime": { - "version": "7.17.9", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.17.9.tgz", - "integrity": "sha512-lSiBBvodq29uShpWGNbgFdKYNiFDo5/HIYsaCEY9ff4sb10x9jizo2+pRrSyF4jKZCXqgzuqBOQKbUm90gQwJg==", - "requires": { - "regenerator-runtime": "^0.13.4" + "node_modules/@babel/plugin-proposal-async-generator-functions": { + "version": "7.18.10", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-plugin-utils": "^7.18.9", + "@babel/helper-remap-async-to-generator": "^7.18.9", + "@babel/plugin-syntax-async-generators": "^7.8.4" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/runtime-corejs3": { - "version": "7.21.0", - "resolved": "https://registry.npmjs.org/@babel/runtime-corejs3/-/runtime-corejs3-7.21.0.tgz", - "integrity": "sha512-TDD4UJzos3JJtM+tHX+w2Uc+KWj7GV+VKKFdMVd2Rx8sdA19hcc3P3AHFYd5LVOw+pYuSd5lICC3gm52B6Rwxw==", - "requires": { - "core-js-pure": "^3.25.1", - "regenerator-runtime": "^0.13.11" - }, + "node_modules/@babel/plugin-proposal-class-properties": { + "version": "7.18.6", + "dev": true, + "license": "MIT", "dependencies": { - "regenerator-runtime": { - "version": "0.13.11", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz", - "integrity": "sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==" - } + "@babel/helper-create-class-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/template": { - "version": "7.8.6", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.8.6.tgz", - "integrity": "sha512-zbMsPMy/v0PWFZEhQJ66bqjhH+z0JgMoBWuikXybgG3Gkd/3t5oQ1Rw2WQhnSrsOmsKXnZOx15tkC4qON/+JPg==", + "node_modules/@babel/plugin-proposal-class-static-block": { + "version": "7.21.0", "dev": true, - "requires": { - "@babel/code-frame": "^7.8.3", - "@babel/parser": "^7.8.6", - "@babel/types": "^7.8.6" + "license": "MIT", + "dependencies": { + "@babel/helper-create-class-features-plugin": "^7.21.0", + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/plugin-syntax-class-static-block": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.12.0" } }, - "@babel/traverse": { - "version": "7.17.9", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.17.9.tgz", - "integrity": "sha512-PQO8sDIJ8SIwipTPiR71kJQCKQYB5NGImbOviK8K+kg5xkNSYXLBupuX9QhatFowrsvo9Hj8WgArg3W7ijNAQw==", + "node_modules/@babel/plugin-proposal-dynamic-import": { + "version": "7.18.6", "dev": true, - "requires": { - "@babel/code-frame": "^7.16.7", - "@babel/generator": "^7.17.9", - "@babel/helper-environment-visitor": "^7.16.7", - "@babel/helper-function-name": "^7.17.9", - "@babel/helper-hoist-variables": "^7.16.7", - "@babel/helper-split-export-declaration": "^7.16.7", - "@babel/parser": "^7.17.9", - "@babel/types": "^7.17.0", - "debug": "^4.1.0", - "globals": "^11.1.0" - }, + "license": "MIT", "dependencies": { - "@babel/generator": { - "version": "7.17.9", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.17.9.tgz", - "integrity": "sha512-rAdDousTwxbIxbz5I7GEQ3lUip+xVCXooZNbsydCWs3xA7ZsYOv+CFRdzGxRX78BmQHu9B1Eso59AOZQOJDEdQ==", - "dev": true, - "requires": { - "@babel/types": "^7.17.0", - "jsesc": "^2.5.1", - "source-map": "^0.5.0" - } - }, - "source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", - "dev": true - } + "@babel/helper-plugin-utils": "^7.18.6", + "@babel/plugin-syntax-dynamic-import": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@babel/types": { - "version": "7.17.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.17.0.tgz", - "integrity": "sha512-TmKSNO4D5rzhL5bjWFcVHHLETzfQ/AmbKpKPOSjlP0WoHZ6L911fgoOKY4Alp/emzG4cHJdyN49zpgkbXFEHHw==", + "node_modules/@babel/plugin-proposal-export-namespace-from": { + "version": "7.18.9", "dev": true, - "requires": { - "@babel/helper-validator-identifier": "^7.16.7", - "to-fast-properties": "^2.0.0" + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.9", + "@babel/plugin-syntax-export-namespace-from": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@braintree/sanitize-url": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/@braintree/sanitize-url/-/sanitize-url-5.0.2.tgz", - "integrity": "sha512-NBEJlHWrhQucLhZGHtSxM2loSaNUMajC7KOYJLyfcdW/6goVoff2HoYI3bz8YCDN0wKGbxtUL0gx2dvHpvnWlw==" - }, - "@ctrl/tinycolor": { - "version": "3.4.1", - "resolved": "https://registry.npmjs.org/@ctrl/tinycolor/-/tinycolor-3.4.1.tgz", - "integrity": "sha512-ej5oVy6lykXsvieQtqZxCOaLT+xD4+QNarq78cIYISHmZXshCvROLudpQN3lfL8G0NL7plMSSK+zlyvCaIJ4Iw==" - }, - "@gar/promisify": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/@gar/promisify/-/promisify-1.1.3.tgz", - "integrity": "sha512-k2Ty1JcVojjJFwrg/ThKi2ujJ7XNLYaFGNB/bWT9wGR+oSMJHMa5w+CUq6p/pVrKeNNgA7pCqEcjSnHVoqJQFw==", - "dev": true - }, - "@istanbuljs/schema": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz", - "integrity": "sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==", - "dev": true - }, - "@jsdevtools/coverage-istanbul-loader": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@jsdevtools/coverage-istanbul-loader/-/coverage-istanbul-loader-3.0.3.tgz", - "integrity": "sha512-TAdNkeGB5Fe4Og+ZkAr1Kvn9by2sfL44IAHFtxlh1BA1XJ5cLpO9iSNki5opWESv3l3vSHsZ9BNKuqFKbEbFaA==", + "node_modules/@babel/plugin-proposal-json-strings": { + "version": "7.18.6", "dev": true, - "requires": { - "convert-source-map": "^1.7.0", - "istanbul-lib-instrument": "^4.0.1", - "loader-utils": "^1.4.0", - "merge-source-map": "^1.1.0", - "schema-utils": "^2.6.4" - }, - "dependencies": { - "json5": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", - "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", - "dev": true, - "requires": { - "minimist": "^1.2.0" - } - }, - "loader-utils": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.0.tgz", - "integrity": "sha512-qH0WSMBtn/oHuwjy/NucEgbx5dbxxnxup9s4PVXJUDHZBQY+s0NWA9rJf53RBnQZxfch7euUui7hpoAPvALZdA==", - "dev": true, - "requires": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^1.0.1" - } - } + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.6", + "@babel/plugin-syntax-json-strings": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@kyleshockey/object-assign-deep": { - "version": "0.4.2", - "resolved": "https://registry.npmjs.org/@kyleshockey/object-assign-deep/-/object-assign-deep-0.4.2.tgz", - "integrity": "sha1-hJAPDu/DcnmPR1G1JigwuCCJIuw=" - }, - "@kyleshockey/xml": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@kyleshockey/xml/-/xml-1.0.2.tgz", - "integrity": "sha512-iMo32MPLcI9cPxs3YL5kmKxKgDmkSZDCFEqIT5eRk7d/Ll8r4X3SwGYSigzALd6+RHWlFEmjL1QyaQ15xDZFlw==", - "requires": { - "stream": "^0.0.2" + "node_modules/@babel/plugin-proposal-logical-assignment-operators": { + "version": "7.20.7", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@mat-datetimepicker/core": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@mat-datetimepicker/core/-/core-3.0.1.tgz", - "integrity": "sha512-f2kOwJEVZWcZsv7inOtUrk7V72AwuLzd8IZOe8zDYWUCjFPr96tkpehyI8f2hFSPB+Q/jN1cLbNpQEDxof0cPA==", - "requires": { - "tslib": "^1.9.0" + "node_modules/@babel/plugin-proposal-nullish-coalescing-operator": { + "version": "7.18.6", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.6", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@mat-datetimepicker/moment": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@mat-datetimepicker/moment/-/moment-3.0.1.tgz", - "integrity": "sha512-8gbjBQRXbpFGKEA3XLVVjEtzGzUwtmwqwZiSnuYO65rtz8gT41T41YTFjyJOENrBqicKB7I+umn52jtHiytz+w==", - "requires": { - "tslib": "^1.9.0" + "node_modules/@babel/plugin-proposal-numeric-separator": { + "version": "7.18.6", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.6", + "@babel/plugin-syntax-numeric-separator": "^7.10.4" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@material/animation": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/@material/animation/-/animation-3.1.0.tgz", - "integrity": "sha512-ZfP95awrPBLhpaCTPNx+xKYPp2D88fzf5p5YNVp6diUAGRpq3g12Aq7qJfIHDXAFo5CtrYhgOKRqIKxUVcFisQ==", - "requires": { - "tslib": "^1.9.3" + "node_modules/@babel/plugin-proposal-object-rest-spread": { + "version": "7.20.7", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/compat-data": "^7.20.5", + "@babel/helper-compilation-targets": "^7.20.7", + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/plugin-syntax-object-rest-spread": "^7.8.3", + "@babel/plugin-transform-parameters": "^7.20.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@material/auto-init": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/@material/auto-init/-/auto-init-3.1.0.tgz", - "integrity": "sha512-Q0fuycL7JUyody+V9h8Y3mXlchNECOwCWOWwjJutcxeIqmhVJxf5qiJJnXZYrwQMMtUuO2A2DTHdrxCITL2COA==", - "requires": { - "@material/base": "^3.1.0", - "tslib": "^1.9.3" + "node_modules/@babel/plugin-proposal-optional-catch-binding": { + "version": "7.18.6", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.6", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@material/base": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/@material/base/-/base-3.1.0.tgz", - "integrity": "sha512-pWEBHyPrMV3rdnjqWWH96h5t3MxQI6V1J9jOor+UBG7bXQtr6InTabTqhz5CLY7r+qZU8YvNh2OKIy8heP0cyQ==", - "requires": { - "tslib": "^1.9.3" + "node_modules/@babel/plugin-proposal-optional-chaining": { + "version": "7.21.0", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/helper-skip-transparent-expression-wrappers": "^7.20.0", + "@babel/plugin-syntax-optional-chaining": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@material/button": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/@material/button/-/button-3.2.0.tgz", - "integrity": "sha512-VEASy3Dtc7BCo8/cuUIp6w0+/l4U1myGZffK5GeFVInP/erStSQOmYXT7jGXkZpUglRzWOpVvEpc6nsvhMqGbw==", - "requires": { - "@material/elevation": "^3.1.0", - "@material/feature-targeting": "^3.1.0", - "@material/ripple": "^3.2.0", - "@material/rtl": "^3.2.0", - "@material/shape": "^3.1.0", - "@material/theme": "^3.1.0", - "@material/typography": "^3.1.0" + "node_modules/@babel/plugin-proposal-private-methods": { + "version": "7.18.6", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-create-class-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@material/card": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/@material/card/-/card-3.2.0.tgz", - "integrity": "sha512-pC9HHhdAXarRJZgKx+xa6G/WPjGp+HN6sOgWPC6Od+0yFuMilCEScGkaXKPOFRt5UwNjzSIBPXJVyP6lmfg1NQ==", - "requires": { - "@material/elevation": "^3.1.0", - "@material/feature-targeting": "^3.1.0", - "@material/ripple": "^3.2.0", - "@material/rtl": "^3.2.0", - "@material/shape": "^3.1.0", - "@material/theme": "^3.1.0" + "node_modules/@babel/plugin-proposal-private-property-in-object": { + "version": "7.21.11", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.18.6", + "@babel/helper-create-class-features-plugin": "^7.21.0", + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/plugin-syntax-private-property-in-object": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@material/checkbox": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/@material/checkbox/-/checkbox-3.2.0.tgz", - "integrity": "sha512-4XgQ4sM40j60n4RN43BxXtkFVvyFQgo/vc0W5hf9Qz2uwEah46Shg1nHMYZNvcNW+FXRm96gH8zz3qFgEf1ytA==", - "requires": { - "@material/animation": "^3.1.0", - "@material/base": "^3.1.0", - "@material/dom": "^3.1.0", - "@material/feature-targeting": "^3.1.0", - "@material/ripple": "^3.2.0", - "@material/rtl": "^3.2.0", - "@material/theme": "^3.1.0", - "tslib": "^1.9.3" + "node_modules/@babel/plugin-proposal-unicode-property-regex": { + "version": "7.18.6", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@material/chips": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/@material/chips/-/chips-3.2.0.tgz", - "integrity": "sha512-XPm2RkqPFRog7hCMBTP4lM8AH9fqysXDMqf0ZomeJbFj4mkyalKsp45zrCR384gYjymwu99EHpcIs8L+gjVsrQ==", - "requires": { - "@material/animation": "^3.1.0", - "@material/base": "^3.1.0", - "@material/checkbox": "^3.2.0", - "@material/elevation": "^3.1.0", - "@material/feature-targeting": "^3.1.0", - "@material/ripple": "^3.2.0", - "@material/shape": "^3.1.0", - "@material/theme": "^3.1.0", - "@material/typography": "^3.1.0", - "tslib": "^1.9.3" + "node_modules/@babel/plugin-syntax-async-generators": { + "version": "7.8.4", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@material/data-table": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/@material/data-table/-/data-table-3.2.0.tgz", - "integrity": "sha512-67Bjo4B3kiB2zPEhd1OyHGWCNyQtoFTLNmOAPDFAxbmfaBquvjzAEYos2/cJpvzP8yUCIMJlOYaP0uvv94n2og==", - "requires": { - "@material/animation": "^3.1.0", - "@material/base": "^3.1.0", - "@material/checkbox": "^3.2.0", - "@material/dom": "^3.1.0", - "@material/elevation": "^3.1.0", - "@material/feature-targeting": "^3.1.0", - "@material/ripple": "^3.2.0", - "@material/rtl": "^3.2.0", - "@material/shape": "^3.1.0", - "@material/theme": "^3.1.0", - "@material/typography": "^3.1.0", - "tslib": "^1.10.0" + "node_modules/@babel/plugin-syntax-class-properties": { + "version": "7.12.13", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.12.13" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@material/dialog": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/@material/dialog/-/dialog-3.2.0.tgz", - "integrity": "sha512-qcxPxIxEYlDWvWAIaYbgRXluctzIvuCMZISuIUomXnd8t7nc4xVLuNHRubXGCtnIHyoE3Vb7IQEqAGM2ZjWxuw==", - "requires": { - "@material/animation": "^3.1.0", - "@material/base": "^3.1.0", - "@material/dom": "^3.1.0", - "@material/elevation": "^3.1.0", - "@material/feature-targeting": "^3.1.0", - "@material/ripple": "^3.2.0", - "@material/rtl": "^3.2.0", - "@material/shape": "^3.1.0", - "@material/theme": "^3.1.0", - "@material/typography": "^3.1.0", - "focus-trap": "^5.0.0", - "tslib": "^1.9.3" + "node_modules/@babel/plugin-syntax-class-static-block": { + "version": "7.14.5", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@material/dom": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/@material/dom/-/dom-3.1.0.tgz", - "integrity": "sha512-RtBLSkrBjMfHwknaGBifAIC8cBWF9pXjz2IYqfI2braB6SfQI4vhdJviwyiA5BmA/psn3cKpBUZbHI0ym0O0SQ==", - "requires": { - "tslib": "^1.9.3" + "node_modules/@babel/plugin-syntax-dynamic-import": { + "version": "7.8.3", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@material/drawer": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/@material/drawer/-/drawer-3.2.0.tgz", - "integrity": "sha512-bhcnosiJfHRYy4oeMspE/HY2+Wt7HDtsyk47Tc4h14cc8ZgcKd0C96wuL7GJDrZX/zLPnxboQOg+ctXIpskO4w==", - "requires": { - "@material/animation": "^3.1.0", - "@material/base": "^3.1.0", - "@material/elevation": "^3.1.0", - "@material/feature-targeting": "^3.1.0", - "@material/list": "^3.2.0", - "@material/ripple": "^3.2.0", - "@material/rtl": "^3.2.0", - "@material/shape": "^3.1.0", - "@material/theme": "^3.1.0", - "@material/typography": "^3.1.0", - "focus-trap": "^5.0.0", - "tslib": "^1.9.3" + "node_modules/@babel/plugin-syntax-export-namespace-from": { + "version": "7.8.3", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.3" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@material/elevation": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/@material/elevation/-/elevation-3.1.0.tgz", - "integrity": "sha512-e45LqiG6LfbR1M52YkSLA7pQPeYJOuOVzLp27xy2072TnLuJexMxhEaG4O1novEIjsTtMjqfrfJ/koODU5vEew==", - "requires": { - "@material/animation": "^3.1.0", - "@material/feature-targeting": "^3.1.0", - "@material/theme": "^3.1.0" + "node_modules/@babel/plugin-syntax-import-assertions": { + "version": "7.25.6", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.8" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@material/fab": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/@material/fab/-/fab-3.2.0.tgz", - "integrity": "sha512-a/uPYDgIFZi2PpAV4Rqqnu9AKK2fA6ydSAVJE64Hs6isJ+UQUzGBvimOHy/DHtFmLxZJKuyakJd1Cq2jDlgXtg==", - "requires": { - "@material/animation": "^3.1.0", - "@material/elevation": "^3.1.0", - "@material/feature-targeting": "^3.1.0", - "@material/ripple": "^3.2.0", - "@material/rtl": "^3.2.0", - "@material/shape": "^3.1.0", - "@material/theme": "^3.1.0", - "@material/typography": "^3.1.0" + "node_modules/@babel/plugin-syntax-json-strings": { + "version": "7.8.3", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@material/feature-targeting": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/@material/feature-targeting/-/feature-targeting-3.1.0.tgz", - "integrity": "sha512-aXAa1Pv6w32URacE9LfMsl9zI6hFwx1K0Lp3Xpyf4rAkmaAB6z0gOkhicOrVFc0f64YheJgHjE7hJFieVenQdw==" - }, - "@material/floating-label": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/@material/floating-label/-/floating-label-3.2.0.tgz", - "integrity": "sha512-szzsSou+xXj3E6InEuOCr8E28IE5EdcBfKRaHoR5EBkzgcRxLuZkFSqD19zsUgVErdTCcRSbeU9mYa6cP8+Nzw==", - "requires": { - "@material/animation": "^3.1.0", - "@material/base": "^3.1.0", - "@material/rtl": "^3.2.0", - "@material/theme": "^3.1.0", - "@material/typography": "^3.1.0", - "tslib": "^1.9.3" + "node_modules/@babel/plugin-syntax-logical-assignment-operators": { + "version": "7.10.4", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@material/form-field": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/@material/form-field/-/form-field-3.2.0.tgz", - "integrity": "sha512-4XjZGy1S966IOUxFaRAKcZOvr5qqvx8r1RMvfCsEzTB45y9Lo2puilNyCtatVAULRxCwszZb7Kbd++cpmMpzZA==", - "requires": { - "@material/base": "^3.1.0", - "@material/feature-targeting": "^3.1.0", - "@material/ripple": "^3.2.0", - "@material/rtl": "^3.2.0", - "@material/theme": "^3.1.0", - "@material/typography": "^3.1.0", - "tslib": "^1.9.3" + "node_modules/@babel/plugin-syntax-nullish-coalescing-operator": { + "version": "7.8.3", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@material/grid-list": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/@material/grid-list/-/grid-list-3.2.0.tgz", - "integrity": "sha512-0sHV3MWEAoQ5EbZDwXLW+QKByzG4Yq3WqLkgNBftsW2O4QsPwlDYLJABYkgVIcghGCcQNHAmba48O+RW2e8ijg==", - "requires": { - "@material/base": "^3.1.0", - "@material/feature-targeting": "^3.1.0", - "@material/rtl": "^3.2.0", - "@material/theme": "^3.1.0", - "@material/typography": "^3.1.0", - "tslib": "^1.9.3" + "node_modules/@babel/plugin-syntax-numeric-separator": { + "version": "7.10.4", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@material/icon-button": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/@material/icon-button/-/icon-button-3.2.0.tgz", - "integrity": "sha512-UTX1q4x5FxntBeb5TxBsXIjbhwFjQxJxovaUGo8+eUL9V9tU6rJ3NnlrFirx9gZnFIU1Xpssm91NCItVZy/Dpg==", - "requires": { - "@material/base": "^3.1.0", - "@material/feature-targeting": "^3.1.0", - "@material/ripple": "^3.2.0", - "@material/theme": "^3.1.0", - "tslib": "^1.9.3" + "node_modules/@babel/plugin-syntax-object-rest-spread": { + "version": "7.8.3", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@material/image-list": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/@material/image-list/-/image-list-3.1.0.tgz", - "integrity": "sha512-t4dIMdbLpFUIC1rm/KpLkBqCiRUhag8Hp+AajYypfJADFTfhaflp1PvcIRsx32PRM3aIpAAf+fQrrU/HbLUGEQ==", - "requires": { - "@material/feature-targeting": "^3.1.0", - "@material/shape": "^3.1.0", - "@material/theme": "^3.1.0", - "@material/typography": "^3.1.0" + "node_modules/@babel/plugin-syntax-optional-catch-binding": { + "version": "7.8.3", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@material/layout-grid": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/@material/layout-grid/-/layout-grid-3.1.0.tgz", - "integrity": "sha512-//9LggCNibXNtUkqijvDBK85fL1GSB+uIPYVx6ATToqDej1/35eedUxDSsw/ugm7zZ0OSyPLimbBuNMMnQtlqQ==" - }, - "@material/line-ripple": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/@material/line-ripple/-/line-ripple-3.1.0.tgz", - "integrity": "sha512-o6E6wrDqoOK4esCnM1MQ9t7DC/JQrzSrwYsYdqtOpGnr3G5Jx7WWVt6GEVh2eNXy8OnVYkJdQbMjyPVEVJb/Dg==", - "requires": { - "@material/animation": "^3.1.0", - "@material/base": "^3.1.0", - "@material/theme": "^3.1.0", - "tslib": "^1.9.3" + "node_modules/@babel/plugin-syntax-optional-chaining": { + "version": "7.8.3", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@material/linear-progress": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/@material/linear-progress/-/linear-progress-3.2.0.tgz", - "integrity": "sha512-l27vdMNa+Si0z8m57ahVndsBWFSUF8middEzl5I8542wl1MmIAIkgGwY/eoT8Q6SWiPnK2vnlTN51/G/i4ndiw==", - "requires": { - "@material/animation": "^3.1.0", - "@material/base": "^3.1.0", - "@material/feature-targeting": "^3.1.0", - "@material/theme": "^3.1.0", - "tslib": "^1.9.3" + "node_modules/@babel/plugin-syntax-private-property-in-object": { + "version": "7.14.5", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@material/list": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/@material/list/-/list-3.2.0.tgz", - "integrity": "sha512-WtMbN7u4z3qbwU7w/I1DdU6ges5oqorQD5bBXJcS+/c/lMqVul/qchVbnqRUBpewSlX14t7B6HSiLSwptDZK1Q==", - "requires": { - "@material/base": "^3.1.0", - "@material/dom": "^3.1.0", - "@material/feature-targeting": "^3.1.0", - "@material/ripple": "^3.2.0", - "@material/rtl": "^3.2.0", - "@material/shape": "^3.1.0", - "@material/theme": "^3.1.0", - "@material/typography": "^3.1.0", - "tslib": "^1.9.3" + "node_modules/@babel/plugin-syntax-top-level-await": { + "version": "7.14.5", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@material/menu": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/@material/menu/-/menu-3.2.0.tgz", - "integrity": "sha512-UGCSKp1WTAYN/LmPbZGA9uU9Cz6iF+zi32BhgJ7aeLOLW5L5KMvtE0VBO4LciznpK9paxnghww1kiN5W1k+CoA==", - "requires": { - "@material/base": "^3.1.0", - "@material/dom": "^3.1.0", - "@material/feature-targeting": "^3.1.0", - "@material/list": "^3.2.0", - "@material/menu-surface": "^3.2.0", - "@material/ripple": "^3.2.0", - "@material/rtl": "^3.2.0", - "tslib": "^1.9.3" + "node_modules/@babel/plugin-transform-arrow-functions": { + "version": "7.24.7", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@material/menu-surface": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/@material/menu-surface/-/menu-surface-3.2.0.tgz", - "integrity": "sha512-/B8FB5CR3QVNJZIlJzepeVluxPnQ6V2EbalgIAtOF5GIn441bXRDaZ9fNsq2yV424v2nhnDjyEcRgzBoXdeLVg==", - "requires": { - "@material/animation": "^3.1.0", + "node_modules/@babel/plugin-transform-async-to-generator": { + "version": "7.18.6", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-module-imports": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6", + "@babel/helper-remap-async-to-generator": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-block-scoped-functions": { + "version": "7.24.7", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-block-scoping": { + "version": "7.25.0", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.8" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-classes": { + "version": "7.25.4", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.24.7", + "@babel/helper-compilation-targets": "^7.25.2", + "@babel/helper-plugin-utils": "^7.24.8", + "@babel/helper-replace-supers": "^7.25.0", + "@babel/traverse": "^7.25.4", + "globals": "^11.1.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-classes/node_modules/@babel/helper-annotate-as-pure": { + "version": "7.24.7", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/types": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/plugin-transform-computed-properties": { + "version": "7.24.7", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.7", + "@babel/template": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-computed-properties/node_modules/@babel/template": { + "version": "7.25.0", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.24.7", + "@babel/parser": "^7.25.0", + "@babel/types": "^7.25.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/plugin-transform-destructuring": { + "version": "7.24.8", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.8" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-dotall-regex": { + "version": "7.24.7", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.24.7", + "@babel/helper-plugin-utils": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-duplicate-keys": { + "version": "7.24.7", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-exponentiation-operator": { + "version": "7.24.7", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-builder-binary-assignment-operator-visitor": "^7.24.7", + "@babel/helper-plugin-utils": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-for-of": { + "version": "7.24.7", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.7", + "@babel/helper-skip-transparent-expression-wrappers": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-function-name": { + "version": "7.25.1", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-compilation-targets": "^7.24.8", + "@babel/helper-plugin-utils": "^7.24.8", + "@babel/traverse": "^7.25.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-literals": { + "version": "7.25.2", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.8" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-member-expression-literals": { + "version": "7.24.7", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-modules-amd": { + "version": "7.24.7", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-module-transforms": "^7.24.7", + "@babel/helper-plugin-utils": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-modules-commonjs": { + "version": "7.24.8", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-module-transforms": "^7.24.8", + "@babel/helper-plugin-utils": "^7.24.8", + "@babel/helper-simple-access": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-modules-systemjs": { + "version": "7.25.0", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-module-transforms": "^7.25.0", + "@babel/helper-plugin-utils": "^7.24.8", + "@babel/helper-validator-identifier": "^7.24.7", + "@babel/traverse": "^7.25.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-modules-umd": { + "version": "7.24.7", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-module-transforms": "^7.24.7", + "@babel/helper-plugin-utils": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-named-capturing-groups-regex": { + "version": "7.24.7", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.24.7", + "@babel/helper-plugin-utils": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/plugin-transform-new-target": { + "version": "7.24.7", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-object-super": { + "version": "7.24.7", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.7", + "@babel/helper-replace-supers": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-optional-chaining": { + "version": "7.24.8", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.8", + "@babel/helper-skip-transparent-expression-wrappers": "^7.24.7", + "@babel/plugin-syntax-optional-chaining": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-parameters": { + "version": "7.24.7", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-property-literals": { + "version": "7.24.7", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-regenerator": { + "version": "7.24.7", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.7", + "regenerator-transform": "^0.15.2" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-reserved-words": { + "version": "7.24.7", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-runtime": { + "version": "7.18.10", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-module-imports": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.9", + "babel-plugin-polyfill-corejs2": "^0.3.2", + "babel-plugin-polyfill-corejs3": "^0.5.3", + "babel-plugin-polyfill-regenerator": "^0.4.0", + "semver": "^6.3.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-runtime/node_modules/semver": { + "version": "6.3.1", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@babel/plugin-transform-shorthand-properties": { + "version": "7.24.7", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-spread": { + "version": "7.24.7", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.7", + "@babel/helper-skip-transparent-expression-wrappers": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-sticky-regex": { + "version": "7.24.7", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-template-literals": { + "version": "7.24.7", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-typeof-symbol": { + "version": "7.24.8", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.8" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-unicode-escapes": { + "version": "7.24.7", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-unicode-regex": { + "version": "7.24.7", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.24.7", + "@babel/helper-plugin-utils": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/preset-env": { + "version": "7.18.10", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/compat-data": "^7.18.8", + "@babel/helper-compilation-targets": "^7.18.9", + "@babel/helper-plugin-utils": "^7.18.9", + "@babel/helper-validator-option": "^7.18.6", + "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "^7.18.6", + "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.18.9", + "@babel/plugin-proposal-async-generator-functions": "^7.18.10", + "@babel/plugin-proposal-class-properties": "^7.18.6", + "@babel/plugin-proposal-class-static-block": "^7.18.6", + "@babel/plugin-proposal-dynamic-import": "^7.18.6", + "@babel/plugin-proposal-export-namespace-from": "^7.18.9", + "@babel/plugin-proposal-json-strings": "^7.18.6", + "@babel/plugin-proposal-logical-assignment-operators": "^7.18.9", + "@babel/plugin-proposal-nullish-coalescing-operator": "^7.18.6", + "@babel/plugin-proposal-numeric-separator": "^7.18.6", + "@babel/plugin-proposal-object-rest-spread": "^7.18.9", + "@babel/plugin-proposal-optional-catch-binding": "^7.18.6", + "@babel/plugin-proposal-optional-chaining": "^7.18.9", + "@babel/plugin-proposal-private-methods": "^7.18.6", + "@babel/plugin-proposal-private-property-in-object": "^7.18.6", + "@babel/plugin-proposal-unicode-property-regex": "^7.18.6", + "@babel/plugin-syntax-async-generators": "^7.8.4", + "@babel/plugin-syntax-class-properties": "^7.12.13", + "@babel/plugin-syntax-class-static-block": "^7.14.5", + "@babel/plugin-syntax-dynamic-import": "^7.8.3", + "@babel/plugin-syntax-export-namespace-from": "^7.8.3", + "@babel/plugin-syntax-import-assertions": "^7.18.6", + "@babel/plugin-syntax-json-strings": "^7.8.3", + "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", + "@babel/plugin-syntax-numeric-separator": "^7.10.4", + "@babel/plugin-syntax-object-rest-spread": "^7.8.3", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.3", + "@babel/plugin-syntax-optional-chaining": "^7.8.3", + "@babel/plugin-syntax-private-property-in-object": "^7.14.5", + "@babel/plugin-syntax-top-level-await": "^7.14.5", + "@babel/plugin-transform-arrow-functions": "^7.18.6", + "@babel/plugin-transform-async-to-generator": "^7.18.6", + "@babel/plugin-transform-block-scoped-functions": "^7.18.6", + "@babel/plugin-transform-block-scoping": "^7.18.9", + "@babel/plugin-transform-classes": "^7.18.9", + "@babel/plugin-transform-computed-properties": "^7.18.9", + "@babel/plugin-transform-destructuring": "^7.18.9", + "@babel/plugin-transform-dotall-regex": "^7.18.6", + "@babel/plugin-transform-duplicate-keys": "^7.18.9", + "@babel/plugin-transform-exponentiation-operator": "^7.18.6", + "@babel/plugin-transform-for-of": "^7.18.8", + "@babel/plugin-transform-function-name": "^7.18.9", + "@babel/plugin-transform-literals": "^7.18.9", + "@babel/plugin-transform-member-expression-literals": "^7.18.6", + "@babel/plugin-transform-modules-amd": "^7.18.6", + "@babel/plugin-transform-modules-commonjs": "^7.18.6", + "@babel/plugin-transform-modules-systemjs": "^7.18.9", + "@babel/plugin-transform-modules-umd": "^7.18.6", + "@babel/plugin-transform-named-capturing-groups-regex": "^7.18.6", + "@babel/plugin-transform-new-target": "^7.18.6", + "@babel/plugin-transform-object-super": "^7.18.6", + "@babel/plugin-transform-parameters": "^7.18.8", + "@babel/plugin-transform-property-literals": "^7.18.6", + "@babel/plugin-transform-regenerator": "^7.18.6", + "@babel/plugin-transform-reserved-words": "^7.18.6", + "@babel/plugin-transform-shorthand-properties": "^7.18.6", + "@babel/plugin-transform-spread": "^7.18.9", + "@babel/plugin-transform-sticky-regex": "^7.18.6", + "@babel/plugin-transform-template-literals": "^7.18.9", + "@babel/plugin-transform-typeof-symbol": "^7.18.9", + "@babel/plugin-transform-unicode-escapes": "^7.18.10", + "@babel/plugin-transform-unicode-regex": "^7.18.6", + "@babel/preset-modules": "^0.1.5", + "@babel/types": "^7.18.10", + "babel-plugin-polyfill-corejs2": "^0.3.2", + "babel-plugin-polyfill-corejs3": "^0.5.3", + "babel-plugin-polyfill-regenerator": "^0.4.0", + "core-js-compat": "^3.22.1", + "semver": "^6.3.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/preset-env/node_modules/semver": { + "version": "6.3.1", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@babel/preset-modules": { + "version": "0.1.6", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.0.0", + "@babel/plugin-proposal-unicode-property-regex": "^7.4.4", + "@babel/plugin-transform-dotall-regex": "^7.4.4", + "@babel/types": "^7.4.4", + "esutils": "^2.0.2" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0 || ^8.0.0-0 <8.0.0" + } + }, + "node_modules/@babel/regjsgen": { + "version": "0.8.0", + "dev": true, + "license": "MIT" + }, + "node_modules/@babel/runtime": { + "version": "7.18.9", + "license": "MIT", + "dependencies": { + "regenerator-runtime": "^0.13.4" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/runtime-corejs3": { + "version": "7.25.6", + "license": "MIT", + "dependencies": { + "core-js-pure": "^3.30.2", + "regenerator-runtime": "^0.14.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/runtime-corejs3/node_modules/regenerator-runtime": { + "version": "0.14.1", + "license": "MIT" + }, + "node_modules/@babel/template": { + "version": "7.18.10", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.18.6", + "@babel/parser": "^7.18.10", + "@babel/types": "^7.18.10" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/traverse": { + "version": "7.25.6", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.24.7", + "@babel/generator": "^7.25.6", + "@babel/parser": "^7.25.6", + "@babel/template": "^7.25.0", + "@babel/types": "^7.25.6", + "debug": "^4.3.1", + "globals": "^11.1.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/traverse/node_modules/@babel/generator": { + "version": "7.25.6", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/types": "^7.25.6", + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.25", + "jsesc": "^2.5.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/traverse/node_modules/@babel/template": { + "version": "7.25.0", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.24.7", + "@babel/parser": "^7.25.0", + "@babel/types": "^7.25.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/traverse/node_modules/@jridgewell/gen-mapping": { + "version": "0.3.5", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/set-array": "^1.2.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.24" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/types": { + "version": "7.25.6", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-string-parser": "^7.24.8", + "@babel/helper-validator-identifier": "^7.24.7", + "to-fast-properties": "^2.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@braintree/sanitize-url": { + "version": "5.0.2", + "license": "MIT" + }, + "node_modules/@colors/colors": { + "version": "1.5.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.1.90" + } + }, + "node_modules/@csstools/postcss-cascade-layers": { + "version": "1.1.1", + "dev": true, + "license": "CC0-1.0", + "dependencies": { + "@csstools/selector-specificity": "^2.0.2", + "postcss-selector-parser": "^6.0.10" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.2" + } + }, + "node_modules/@csstools/postcss-color-function": { + "version": "1.1.1", + "dev": true, + "license": "CC0-1.0", + "dependencies": { + "@csstools/postcss-progressive-custom-properties": "^1.1.0", + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.2" + } + }, + "node_modules/@csstools/postcss-font-format-keywords": { + "version": "1.0.1", + "dev": true, + "license": "CC0-1.0", + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.2" + } + }, + "node_modules/@csstools/postcss-hwb-function": { + "version": "1.0.2", + "dev": true, + "license": "CC0-1.0", + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.2" + } + }, + "node_modules/@csstools/postcss-ic-unit": { + "version": "1.0.1", + "dev": true, + "license": "CC0-1.0", + "dependencies": { + "@csstools/postcss-progressive-custom-properties": "^1.1.0", + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.2" + } + }, + "node_modules/@csstools/postcss-is-pseudo-class": { + "version": "2.0.7", + "dev": true, + "license": "CC0-1.0", + "dependencies": { + "@csstools/selector-specificity": "^2.0.0", + "postcss-selector-parser": "^6.0.10" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.2" + } + }, + "node_modules/@csstools/postcss-nested-calc": { + "version": "1.0.0", + "dev": true, + "license": "CC0-1.0", + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.2" + } + }, + "node_modules/@csstools/postcss-normalize-display-values": { + "version": "1.0.1", + "dev": true, + "license": "CC0-1.0", + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.2" + } + }, + "node_modules/@csstools/postcss-oklab-function": { + "version": "1.1.1", + "dev": true, + "license": "CC0-1.0", + "dependencies": { + "@csstools/postcss-progressive-custom-properties": "^1.1.0", + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.2" + } + }, + "node_modules/@csstools/postcss-progressive-custom-properties": { + "version": "1.3.0", + "dev": true, + "license": "CC0-1.0", + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "peerDependencies": { + "postcss": "^8.3" + } + }, + "node_modules/@csstools/postcss-stepped-value-functions": { + "version": "1.0.1", + "dev": true, + "license": "CC0-1.0", + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.2" + } + }, + "node_modules/@csstools/postcss-text-decoration-shorthand": { + "version": "1.0.0", + "dev": true, + "license": "CC0-1.0", + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.2" + } + }, + "node_modules/@csstools/postcss-trigonometric-functions": { + "version": "1.0.2", + "dev": true, + "license": "CC0-1.0", + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.2" + } + }, + "node_modules/@csstools/postcss-unset-value": { + "version": "1.0.2", + "dev": true, + "license": "CC0-1.0", + "engines": { + "node": "^12 || ^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.2" + } + }, + "node_modules/@csstools/selector-specificity": { + "version": "2.2.0", + "dev": true, + "license": "CC0-1.0", + "engines": { + "node": "^14 || ^16 || >=18" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss-selector-parser": "^6.0.10" + } + }, + "node_modules/@ctrl/tinycolor": { + "version": "3.6.1", + "license": "MIT", + "engines": { + "node": ">=10" + } + }, + "node_modules/@discoveryjs/json-ext": { + "version": "0.5.7", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/@gar/promisify": { + "version": "1.1.3", + "dev": true, + "license": "MIT" + }, + "node_modules/@istanbuljs/load-nyc-config": { + "version": "1.1.0", + "dev": true, + "license": "ISC", + "dependencies": { + "camelcase": "^5.3.1", + "find-up": "^4.1.0", + "get-package-type": "^0.1.0", + "js-yaml": "^3.13.1", + "resolve-from": "^5.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@istanbuljs/schema": { + "version": "0.1.3", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/@jridgewell/gen-mapping": { + "version": "0.1.1", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/set-array": "^1.0.0", + "@jridgewell/sourcemap-codec": "^1.4.10" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/resolve-uri": { + "version": "3.1.2", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/set-array": { + "version": "1.2.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/source-map": { + "version": "0.3.6", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.25" + } + }, + "node_modules/@jridgewell/source-map/node_modules/@jridgewell/gen-mapping": { + "version": "0.3.5", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/set-array": "^1.2.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.24" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.5.0", + "dev": true, + "license": "MIT" + }, + "node_modules/@jridgewell/trace-mapping": { + "version": "0.3.25", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" + } + }, + "node_modules/@kyleshockey/object-assign-deep": { + "version": "0.4.2", + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/@kyleshockey/xml": { + "version": "1.0.2", + "license": "MIT", + "dependencies": { + "stream": "^0.0.2" + } + }, + "node_modules/@leichtgewicht/ip-codec": { + "version": "2.0.5", + "dev": true, + "license": "MIT" + }, + "node_modules/@mat-datetimepicker/core": { + "version": "10.1.1", + "license": "MIT", + "dependencies": { + "tslib": "^2.4.0" + }, + "peerDependencies": { + "@angular/cdk": "^14.0.4", + "@angular/common": "^14.0.5", + "@angular/core": "^14.0.5", + "@angular/material": "^14.0.4" + } + }, + "node_modules/@mat-datetimepicker/moment": { + "version": "10.1.1", + "license": "MIT", + "dependencies": { + "tslib": "^2.4.0" + }, + "peerDependencies": { + "@angular/cdk": "^14.0.4", + "@angular/common": "^14.0.5", + "@angular/core": "^14.0.5", + "@angular/material": "^14.0.4", + "@angular/material-moment-adapter": "^14.0.4", + "@mat-datetimepicker/core": "10.1.1" + } + }, + "node_modules/@material/animation": { + "version": "3.1.0", + "license": "MIT", + "dependencies": { + "tslib": "^1.9.3" + } + }, + "node_modules/@material/animation/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@material/auto-init": { + "version": "3.1.0", + "license": "MIT", + "dependencies": { + "@material/base": "^3.1.0", + "tslib": "^1.9.3" + } + }, + "node_modules/@material/auto-init/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@material/base": { + "version": "3.1.0", + "license": "MIT", + "dependencies": { + "tslib": "^1.9.3" + } + }, + "node_modules/@material/base/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@material/button": { + "version": "3.2.0", + "license": "MIT", + "dependencies": { + "@material/elevation": "^3.1.0", + "@material/feature-targeting": "^3.1.0", + "@material/ripple": "^3.2.0", + "@material/rtl": "^3.2.0", + "@material/shape": "^3.1.0", + "@material/theme": "^3.1.0", + "@material/typography": "^3.1.0" + } + }, + "node_modules/@material/card": { + "version": "3.2.0", + "license": "MIT", + "dependencies": { + "@material/elevation": "^3.1.0", + "@material/feature-targeting": "^3.1.0", + "@material/ripple": "^3.2.0", + "@material/rtl": "^3.2.0", + "@material/shape": "^3.1.0", + "@material/theme": "^3.1.0" + } + }, + "node_modules/@material/checkbox": { + "version": "3.2.0", + "license": "MIT", + "dependencies": { + "@material/animation": "^3.1.0", + "@material/base": "^3.1.0", + "@material/dom": "^3.1.0", + "@material/feature-targeting": "^3.1.0", + "@material/ripple": "^3.2.0", + "@material/rtl": "^3.2.0", + "@material/theme": "^3.1.0", + "tslib": "^1.9.3" + } + }, + "node_modules/@material/checkbox/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@material/chips": { + "version": "3.2.0", + "license": "MIT", + "dependencies": { + "@material/animation": "^3.1.0", + "@material/base": "^3.1.0", + "@material/checkbox": "^3.2.0", + "@material/elevation": "^3.1.0", + "@material/feature-targeting": "^3.1.0", + "@material/ripple": "^3.2.0", + "@material/shape": "^3.1.0", + "@material/theme": "^3.1.0", + "@material/typography": "^3.1.0", + "tslib": "^1.9.3" + } + }, + "node_modules/@material/chips/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@material/data-table": { + "version": "3.2.0", + "license": "MIT", + "dependencies": { + "@material/animation": "^3.1.0", + "@material/base": "^3.1.0", + "@material/checkbox": "^3.2.0", + "@material/dom": "^3.1.0", + "@material/elevation": "^3.1.0", + "@material/feature-targeting": "^3.1.0", + "@material/ripple": "^3.2.0", + "@material/rtl": "^3.2.0", + "@material/shape": "^3.1.0", + "@material/theme": "^3.1.0", + "@material/typography": "^3.1.0", + "tslib": "^1.10.0" + } + }, + "node_modules/@material/data-table/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@material/dialog": { + "version": "3.2.0", + "license": "MIT", + "dependencies": { + "@material/animation": "^3.1.0", + "@material/base": "^3.1.0", + "@material/dom": "^3.1.0", + "@material/elevation": "^3.1.0", + "@material/feature-targeting": "^3.1.0", + "@material/ripple": "^3.2.0", + "@material/rtl": "^3.2.0", + "@material/shape": "^3.1.0", + "@material/theme": "^3.1.0", + "@material/typography": "^3.1.0", + "focus-trap": "^5.0.0", + "tslib": "^1.9.3" + } + }, + "node_modules/@material/dialog/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@material/dom": { + "version": "3.1.0", + "license": "MIT", + "dependencies": { + "tslib": "^1.9.3" + } + }, + "node_modules/@material/dom/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@material/drawer": { + "version": "3.2.0", + "license": "MIT", + "dependencies": { + "@material/animation": "^3.1.0", + "@material/base": "^3.1.0", + "@material/elevation": "^3.1.0", + "@material/feature-targeting": "^3.1.0", + "@material/list": "^3.2.0", + "@material/ripple": "^3.2.0", + "@material/rtl": "^3.2.0", + "@material/shape": "^3.1.0", + "@material/theme": "^3.1.0", + "@material/typography": "^3.1.0", + "focus-trap": "^5.0.0", + "tslib": "^1.9.3" + } + }, + "node_modules/@material/drawer/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@material/elevation": { + "version": "3.1.0", + "license": "MIT", + "dependencies": { + "@material/animation": "^3.1.0", + "@material/feature-targeting": "^3.1.0", + "@material/theme": "^3.1.0" + } + }, + "node_modules/@material/fab": { + "version": "3.2.0", + "license": "MIT", + "dependencies": { + "@material/animation": "^3.1.0", + "@material/elevation": "^3.1.0", + "@material/feature-targeting": "^3.1.0", + "@material/ripple": "^3.2.0", + "@material/rtl": "^3.2.0", + "@material/shape": "^3.1.0", + "@material/theme": "^3.1.0", + "@material/typography": "^3.1.0" + } + }, + "node_modules/@material/feature-targeting": { + "version": "3.1.0", + "license": "MIT" + }, + "node_modules/@material/floating-label": { + "version": "3.2.0", + "license": "MIT", + "dependencies": { + "@material/animation": "^3.1.0", + "@material/base": "^3.1.0", + "@material/rtl": "^3.2.0", + "@material/theme": "^3.1.0", + "@material/typography": "^3.1.0", + "tslib": "^1.9.3" + } + }, + "node_modules/@material/floating-label/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@material/form-field": { + "version": "3.2.0", + "license": "MIT", + "dependencies": { + "@material/base": "^3.1.0", + "@material/feature-targeting": "^3.1.0", + "@material/ripple": "^3.2.0", + "@material/rtl": "^3.2.0", + "@material/theme": "^3.1.0", + "@material/typography": "^3.1.0", + "tslib": "^1.9.3" + } + }, + "node_modules/@material/form-field/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@material/grid-list": { + "version": "3.2.0", + "license": "MIT", + "dependencies": { + "@material/base": "^3.1.0", + "@material/feature-targeting": "^3.1.0", + "@material/rtl": "^3.2.0", + "@material/theme": "^3.1.0", + "@material/typography": "^3.1.0", + "tslib": "^1.9.3" + } + }, + "node_modules/@material/grid-list/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@material/icon-button": { + "version": "3.2.0", + "license": "MIT", + "dependencies": { + "@material/base": "^3.1.0", + "@material/feature-targeting": "^3.1.0", + "@material/ripple": "^3.2.0", + "@material/theme": "^3.1.0", + "tslib": "^1.9.3" + } + }, + "node_modules/@material/icon-button/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@material/image-list": { + "version": "3.1.0", + "license": "MIT", + "dependencies": { + "@material/feature-targeting": "^3.1.0", + "@material/shape": "^3.1.0", + "@material/theme": "^3.1.0", + "@material/typography": "^3.1.0" + } + }, + "node_modules/@material/layout-grid": { + "version": "3.1.0", + "license": "MIT" + }, + "node_modules/@material/line-ripple": { + "version": "3.1.0", + "license": "MIT", + "dependencies": { + "@material/animation": "^3.1.0", + "@material/base": "^3.1.0", + "@material/theme": "^3.1.0", + "tslib": "^1.9.3" + } + }, + "node_modules/@material/line-ripple/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@material/linear-progress": { + "version": "3.2.0", + "license": "MIT", + "dependencies": { + "@material/animation": "^3.1.0", + "@material/base": "^3.1.0", + "@material/feature-targeting": "^3.1.0", + "@material/theme": "^3.1.0", + "tslib": "^1.9.3" + } + }, + "node_modules/@material/linear-progress/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@material/list": { + "version": "3.2.0", + "license": "MIT", + "dependencies": { + "@material/base": "^3.1.0", + "@material/dom": "^3.1.0", + "@material/feature-targeting": "^3.1.0", + "@material/ripple": "^3.2.0", + "@material/rtl": "^3.2.0", + "@material/shape": "^3.1.0", + "@material/theme": "^3.1.0", + "@material/typography": "^3.1.0", + "tslib": "^1.9.3" + } + }, + "node_modules/@material/list/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@material/menu": { + "version": "3.2.0", + "license": "MIT", + "dependencies": { + "@material/base": "^3.1.0", + "@material/dom": "^3.1.0", + "@material/feature-targeting": "^3.1.0", + "@material/list": "^3.2.0", + "@material/menu-surface": "^3.2.0", + "@material/ripple": "^3.2.0", + "@material/rtl": "^3.2.0", + "tslib": "^1.9.3" + } + }, + "node_modules/@material/menu-surface": { + "version": "3.2.0", + "license": "MIT", + "dependencies": { + "@material/animation": "^3.1.0", + "@material/base": "^3.1.0", + "@material/elevation": "^3.1.0", + "@material/feature-targeting": "^3.1.0", + "@material/rtl": "^3.2.0", + "@material/shape": "^3.1.0", + "@material/theme": "^3.1.0", + "tslib": "^1.9.3" + } + }, + "node_modules/@material/menu-surface/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@material/menu/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@material/notched-outline": { + "version": "3.2.0", + "license": "MIT", + "dependencies": { + "@material/animation": "^3.1.0", + "@material/base": "^3.1.0", + "@material/floating-label": "^3.2.0", + "@material/rtl": "^3.2.0", + "@material/shape": "^3.1.0", + "@material/theme": "^3.1.0", + "tslib": "^1.9.3" + } + }, + "node_modules/@material/notched-outline/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@material/radio": { + "version": "3.2.0", + "license": "MIT", + "dependencies": { + "@material/animation": "^3.1.0", + "@material/base": "^3.1.0", + "@material/dom": "^3.1.0", + "@material/feature-targeting": "^3.1.0", + "@material/ripple": "^3.2.0", + "@material/theme": "^3.1.0", + "tslib": "^1.9.3" + } + }, + "node_modules/@material/radio/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@material/ripple": { + "version": "3.2.0", + "license": "MIT", + "dependencies": { + "@material/animation": "^3.1.0", + "@material/base": "^3.1.0", + "@material/dom": "^3.1.0", + "@material/feature-targeting": "^3.1.0", + "@material/theme": "^3.1.0", + "tslib": "^1.9.3" + } + }, + "node_modules/@material/ripple/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@material/rtl": { + "version": "3.2.0", + "license": "MIT" + }, + "node_modules/@material/select": { + "version": "3.2.0", + "license": "MIT", + "dependencies": { + "@material/animation": "^3.1.0", + "@material/base": "^3.1.0", + "@material/floating-label": "^3.2.0", + "@material/line-ripple": "^3.1.0", + "@material/menu": "^3.2.0", + "@material/menu-surface": "^3.2.0", + "@material/notched-outline": "^3.2.0", + "@material/ripple": "^3.2.0", + "@material/rtl": "^3.2.0", + "@material/shape": "^3.1.0", + "@material/theme": "^3.1.0", + "@material/typography": "^3.1.0", + "tslib": "^1.9.3" + } + }, + "node_modules/@material/select/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@material/shape": { + "version": "3.1.0", + "license": "MIT", + "dependencies": { + "@material/feature-targeting": "^3.1.0" + } + }, + "node_modules/@material/slider": { + "version": "3.2.0", + "license": "MIT", + "dependencies": { + "@material/animation": "^3.1.0", + "@material/base": "^3.1.0", + "@material/dom": "^3.1.0", + "@material/feature-targeting": "^3.1.0", + "@material/rtl": "^3.2.0", + "@material/theme": "^3.1.0", + "@material/typography": "^3.1.0", + "tslib": "^1.9.3" + } + }, + "node_modules/@material/slider/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@material/snackbar": { + "version": "3.2.0", + "license": "MIT", + "dependencies": { + "@material/animation": "^3.1.0", + "@material/base": "^3.1.0", + "@material/button": "^3.2.0", + "@material/dom": "^3.1.0", + "@material/feature-targeting": "^3.1.0", + "@material/icon-button": "^3.2.0", + "@material/ripple": "^3.2.0", + "@material/rtl": "^3.2.0", + "@material/shape": "^3.1.0", + "@material/theme": "^3.1.0", + "@material/typography": "^3.1.0", + "tslib": "^1.9.3" + } + }, + "node_modules/@material/snackbar/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@material/switch": { + "version": "3.2.0", + "license": "MIT", + "dependencies": { + "@material/animation": "^3.1.0", + "@material/base": "^3.1.0", + "@material/dom": "^3.1.0", + "@material/elevation": "^3.1.0", + "@material/feature-targeting": "^3.1.0", + "@material/ripple": "^3.2.0", + "@material/rtl": "^3.2.0", + "@material/theme": "^3.1.0", + "tslib": "^1.9.3" + } + }, + "node_modules/@material/switch/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@material/tab": { + "version": "3.2.0", + "license": "MIT", + "dependencies": { + "@material/base": "^3.1.0", + "@material/feature-targeting": "^3.1.0", + "@material/ripple": "^3.2.0", + "@material/rtl": "^3.2.0", + "@material/tab-indicator": "^3.1.0", + "@material/theme": "^3.1.0", + "@material/typography": "^3.1.0", + "tslib": "^1.9.3" + } + }, + "node_modules/@material/tab-bar": { + "version": "3.2.0", + "license": "MIT", + "dependencies": { "@material/base": "^3.1.0", "@material/elevation": "^3.1.0", "@material/feature-targeting": "^3.1.0", + "@material/tab": "^3.2.0", + "@material/tab-scroller": "^3.2.0", + "tslib": "^1.9.3" + } + }, + "node_modules/@material/tab-bar/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@material/tab-indicator": { + "version": "3.1.0", + "license": "MIT", + "dependencies": { + "@material/animation": "^3.1.0", + "@material/base": "^3.1.0", + "@material/feature-targeting": "^3.1.0", + "@material/theme": "^3.1.0", + "tslib": "^1.9.3" + } + }, + "node_modules/@material/tab-indicator/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@material/tab-scroller": { + "version": "3.2.0", + "license": "MIT", + "dependencies": { + "@material/animation": "^3.1.0", + "@material/base": "^3.1.0", + "@material/dom": "^3.1.0", + "@material/feature-targeting": "^3.1.0", + "@material/tab": "^3.2.0", + "tslib": "^1.9.3" + } + }, + "node_modules/@material/tab-scroller/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@material/tab/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@material/textfield": { + "version": "3.2.0", + "license": "MIT", + "dependencies": { + "@material/animation": "^3.1.0", + "@material/base": "^3.1.0", + "@material/dom": "^3.1.0", + "@material/floating-label": "^3.2.0", + "@material/line-ripple": "^3.1.0", + "@material/notched-outline": "^3.2.0", + "@material/ripple": "^3.2.0", + "@material/rtl": "^3.2.0", + "@material/shape": "^3.1.0", + "@material/theme": "^3.1.0", + "@material/typography": "^3.1.0", + "tslib": "^1.9.3" + } + }, + "node_modules/@material/textfield/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@material/theme": { + "version": "3.1.0", + "license": "MIT", + "dependencies": { + "@material/feature-targeting": "^3.1.0" + } + }, + "node_modules/@material/top-app-bar": { + "version": "3.2.0", + "license": "MIT", + "dependencies": { + "@material/animation": "^3.1.0", + "@material/base": "^3.1.0", + "@material/elevation": "^3.1.0", + "@material/icon-button": "^3.2.0", + "@material/ripple": "^3.2.0", "@material/rtl": "^3.2.0", "@material/shape": "^3.1.0", "@material/theme": "^3.1.0", + "@material/typography": "^3.1.0", "tslib": "^1.9.3" } }, - "@material/notched-outline": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/@material/notched-outline/-/notched-outline-3.2.0.tgz", - "integrity": "sha512-IFuxVoQqlOy/WSSawI2Fglh/U1hS0QtVUiGsc8GUoVUd1pifn7RXidHP3vQrMDEo8M/RwA9p6uveQKjPwW41RA==", - "requires": { - "@material/animation": "^3.1.0", - "@material/base": "^3.1.0", - "@material/floating-label": "^3.2.0", - "@material/rtl": "^3.2.0", - "@material/shape": "^3.1.0", - "@material/theme": "^3.1.0", - "tslib": "^1.9.3" + "node_modules/@material/top-app-bar/node_modules/tslib": { + "version": "1.14.1", + "license": "0BSD" + }, + "node_modules/@material/typography": { + "version": "3.1.0", + "license": "MIT", + "dependencies": { + "@material/feature-targeting": "^3.1.0" + } + }, + "node_modules/@ng-select/ng-select": { + "version": "9.1.0", + "license": "MIT", + "dependencies": { + "tslib": "^2.3.1" + }, + "engines": { + "node": ">= 12.20.0", + "npm": ">= 6.0.0" + }, + "peerDependencies": { + "@angular/common": "<15.0.0", + "@angular/core": "<15.0.0", + "@angular/forms": "<15.0.0" + } + }, + "node_modules/@ngageoint/color-js": { + "version": "2.1.0", + "license": "MIT", + "engines": { + "npm": ">= 8.x" + } + }, + "node_modules/@ngageoint/gars-js": { + "version": "1.0.0", + "license": "MIT", + "dependencies": { + "@ngageoint/color-js": "^2.1.0", + "@ngageoint/grid-js": "^2.0.0", + "sprintf-js": "^1.1.2", + "tstl": "^2.5.8" + }, + "engines": { + "npm": ">= 6.x" + } + }, + "node_modules/@ngageoint/grid-js": { + "version": "2.1.0", + "license": "MIT", + "dependencies": { + "@ngageoint/color-js": "^2.1.0", + "@ngageoint/simple-features-js": "1.1.0", + "@types/lodash": "^4.14.186", + "lodash": "^4.17.21", + "tstl": "^2.5.8" + }, + "engines": { + "npm": ">= 8.x" + } + }, + "node_modules/@ngageoint/md-date-time-picker": { + "version": "2.3.0", + "license": "MIT", + "dependencies": { + "babel-plugin-transform-es2015-modules-umd": "^6.23.0", + "babel-plugin-transform-member-expression-literals": "^6.8.1", + "babel-plugin-transform-merge-sibling-variables": "^6.8.2", + "babel-plugin-transform-minify-booleans": "^6.8.0", + "babel-plugin-transform-property-literals": "^6.8.1", + "draggabilly": "^2.1.1", + "moment": "^2.29.4" + } + }, + "node_modules/@ngageoint/md-date-time-picker/node_modules/moment": { + "version": "2.30.1", + "license": "MIT", + "engines": { + "node": "*" + } + }, + "node_modules/@ngageoint/mgrs-js": { + "version": "1.0.0", + "license": "MIT", + "dependencies": { + "@ngageoint/color-js": "^2.1.0", + "@ngageoint/grid-js": "^2.1.0", + "decimal-format": "^3.0.0", + "sprintf-js": "^1.1.2", + "tstl": "^2.5.8" + }, + "engines": { + "npm": ">= 6.x" + } + }, + "node_modules/@ngageoint/simple-features-js": { + "version": "1.1.0", + "license": "MIT", + "dependencies": { + "js_cols": "1.0.1", + "timsort": "^0.3.0" + } + }, + "node_modules/@ngneat/input-mask": { + "version": "6.1.0", + "license": "MIT", + "dependencies": { + "tslib": "^2.0.0" + }, + "peerDependencies": { + "@angular/core": ">=14.0.0", + "inputmask": "^5.0.7" + } + }, + "node_modules/@ngtools/webpack": { + "version": "14.2.13", + "dev": true, + "license": "MIT", + "engines": { + "node": "^14.15.0 || >=16.10.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" + }, + "peerDependencies": { + "@angular/compiler-cli": "^14.0.0", + "typescript": ">=4.6.2 <4.9", + "webpack": "^5.54.0" + } + }, + "node_modules/@nodelib/fs.scandir": { + "version": "2.1.5", + "dev": true, + "license": "MIT", + "dependencies": { + "@nodelib/fs.stat": "2.0.5", + "run-parallel": "^1.1.9" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.stat": { + "version": "2.0.5", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.walk": { + "version": "1.2.8", + "dev": true, + "license": "MIT", + "dependencies": { + "@nodelib/fs.scandir": "2.1.5", + "fastq": "^1.6.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@npmcli/fs": { + "version": "2.1.2", + "dev": true, + "license": "ISC", + "dependencies": { + "@gar/promisify": "^1.1.3", + "semver": "^7.3.5" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/@npmcli/git": { + "version": "3.0.2", + "dev": true, + "license": "ISC", + "dependencies": { + "@npmcli/promise-spawn": "^3.0.0", + "lru-cache": "^7.4.4", + "mkdirp": "^1.0.4", + "npm-pick-manifest": "^7.0.0", + "proc-log": "^2.0.0", + "promise-inflight": "^1.0.1", + "promise-retry": "^2.0.1", + "semver": "^7.3.5", + "which": "^2.0.2" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/@npmcli/git/node_modules/lru-cache": { + "version": "7.18.3", + "dev": true, + "license": "ISC", + "engines": { + "node": ">=12" + } + }, + "node_modules/@npmcli/git/node_modules/which": { + "version": "2.0.2", + "dev": true, + "license": "ISC", + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@npmcli/installed-package-contents": { + "version": "1.0.7", + "dev": true, + "license": "ISC", + "dependencies": { + "npm-bundled": "^1.1.1", + "npm-normalize-package-bin": "^1.0.1" + }, + "bin": { + "installed-package-contents": "index.js" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/@npmcli/move-file": { + "version": "2.0.1", + "dev": true, + "license": "MIT", + "dependencies": { + "mkdirp": "^1.0.4", + "rimraf": "^3.0.2" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/@npmcli/node-gyp": { + "version": "2.0.0", + "dev": true, + "license": "ISC", + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/@npmcli/promise-spawn": { + "version": "3.0.0", + "dev": true, + "license": "ISC", + "dependencies": { + "infer-owner": "^1.0.4" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/@npmcli/run-script": { + "version": "4.2.1", + "dev": true, + "license": "ISC", + "dependencies": { + "@npmcli/node-gyp": "^2.0.0", + "@npmcli/promise-spawn": "^3.0.0", + "node-gyp": "^9.0.0", + "read-package-json-fast": "^2.0.3", + "which": "^2.0.2" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/@npmcli/run-script/node_modules/which": { + "version": "2.0.2", + "dev": true, + "license": "ISC", + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@polka/url": { + "version": "1.0.0-next.28", + "dev": true, + "license": "MIT" + }, + "node_modules/@rollup/plugin-commonjs": { + "version": "25.0.7", + "dev": true, + "license": "MIT", + "dependencies": { + "@rollup/pluginutils": "^5.0.1", + "commondir": "^1.0.1", + "estree-walker": "^2.0.2", + "glob": "^8.0.3", + "is-reference": "1.2.1", + "magic-string": "^0.30.3" + }, + "engines": { + "node": ">=14.0.0" + }, + "peerDependencies": { + "rollup": "^2.68.0||^3.0.0||^4.0.0" + }, + "peerDependenciesMeta": { + "rollup": { + "optional": true + } + } + }, + "node_modules/@rollup/plugin-commonjs/node_modules/magic-string": { + "version": "0.30.11", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.5.0" + } + }, + "node_modules/@rollup/plugin-json": { + "version": "4.1.0", + "dev": true, + "license": "MIT", + "dependencies": { + "@rollup/pluginutils": "^3.0.8" + }, + "peerDependencies": { + "rollup": "^1.20.0 || ^2.0.0" + } + }, + "node_modules/@rollup/plugin-json/node_modules/@rollup/pluginutils": { + "version": "3.1.0", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/estree": "0.0.39", + "estree-walker": "^1.0.1", + "picomatch": "^2.2.2" + }, + "engines": { + "node": ">= 8.0.0" + }, + "peerDependencies": { + "rollup": "^1.20.0||^2.0.0" + } + }, + "node_modules/@rollup/plugin-json/node_modules/@types/estree": { + "version": "0.0.39", + "dev": true, + "license": "MIT" + }, + "node_modules/@rollup/plugin-json/node_modules/estree-walker": { + "version": "1.0.1", + "dev": true, + "license": "MIT" + }, + "node_modules/@rollup/plugin-node-resolve": { + "version": "13.3.0", + "dev": true, + "license": "MIT", + "dependencies": { + "@rollup/pluginutils": "^3.1.0", + "@types/resolve": "1.17.1", + "deepmerge": "^4.2.2", + "is-builtin-module": "^3.1.0", + "is-module": "^1.0.0", + "resolve": "^1.19.0" + }, + "engines": { + "node": ">= 10.0.0" + }, + "peerDependencies": { + "rollup": "^2.42.0" + } + }, + "node_modules/@rollup/plugin-node-resolve/node_modules/@rollup/pluginutils": { + "version": "3.1.0", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/estree": "0.0.39", + "estree-walker": "^1.0.1", + "picomatch": "^2.2.2" + }, + "engines": { + "node": ">= 8.0.0" + }, + "peerDependencies": { + "rollup": "^1.20.0||^2.0.0" + } + }, + "node_modules/@rollup/plugin-node-resolve/node_modules/@types/estree": { + "version": "0.0.39", + "dev": true, + "license": "MIT" + }, + "node_modules/@rollup/plugin-node-resolve/node_modules/estree-walker": { + "version": "1.0.1", + "dev": true, + "license": "MIT" + }, + "node_modules/@rollup/pluginutils": { + "version": "5.1.0", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/estree": "^1.0.0", + "estree-walker": "^2.0.2", + "picomatch": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + }, + "peerDependencies": { + "rollup": "^1.20.0||^2.0.0||^3.0.0||^4.0.0" + }, + "peerDependenciesMeta": { + "rollup": { + "optional": true + } + } + }, + "node_modules/@schematics/angular": { + "version": "14.2.13", + "dev": true, + "license": "MIT", + "dependencies": { + "@angular-devkit/core": "14.2.13", + "@angular-devkit/schematics": "14.2.13", + "jsonc-parser": "3.1.0" + }, + "engines": { + "node": "^14.15.0 || >=16.10.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" + } + }, + "node_modules/@socket.io/component-emitter": { + "version": "3.1.2", + "dev": true, + "license": "MIT" + }, + "node_modules/@swagger-api/apidom-ast": { + "version": "1.0.0-alpha.9", + "license": "Apache-2.0", + "dependencies": { + "@babel/runtime-corejs3": "^7.20.7", + "@swagger-api/apidom-error": "^1.0.0-alpha.9", + "@types/ramda": "~0.30.0", + "ramda": "~0.30.0", + "ramda-adjunct": "^5.0.0", + "unraw": "^3.0.0" + } + }, + "node_modules/@swagger-api/apidom-core": { + "version": "1.0.0-alpha.9", + "license": "Apache-2.0", + "dependencies": { + "@babel/runtime-corejs3": "^7.20.7", + "@swagger-api/apidom-ast": "^1.0.0-alpha.9", + "@swagger-api/apidom-error": "^1.0.0-alpha.9", + "@types/ramda": "~0.30.0", + "minim": "~0.23.8", + "ramda": "~0.30.0", + "ramda-adjunct": "^5.0.0", + "short-unique-id": "^5.0.2", + "ts-mixer": "^6.0.3" + } + }, + "node_modules/@swagger-api/apidom-error": { + "version": "1.0.0-alpha.9", + "license": "Apache-2.0", + "dependencies": { + "@babel/runtime-corejs3": "^7.20.7" + } + }, + "node_modules/@swagger-api/apidom-json-pointer": { + "version": "1.0.0-alpha.9", + "license": "Apache-2.0", + "dependencies": { + "@babel/runtime-corejs3": "^7.20.7", + "@swagger-api/apidom-core": "^1.0.0-alpha.9", + "@swagger-api/apidom-error": "^1.0.0-alpha.9", + "@types/ramda": "~0.30.0", + "ramda": "~0.30.0", + "ramda-adjunct": "^5.0.0" + } + }, + "node_modules/@swagger-api/apidom-ns-api-design-systems": { + "version": "1.0.0-alpha.9", + "license": "Apache-2.0", + "optional": true, + "dependencies": { + "@babel/runtime-corejs3": "^7.20.7", + "@swagger-api/apidom-core": "^1.0.0-alpha.9", + "@swagger-api/apidom-error": "^1.0.0-alpha.9", + "@swagger-api/apidom-ns-openapi-3-1": "^1.0.0-alpha.9", + "@types/ramda": "~0.30.0", + "ramda": "~0.30.0", + "ramda-adjunct": "^5.0.0", + "ts-mixer": "^6.0.3" + } + }, + "node_modules/@swagger-api/apidom-ns-asyncapi-2": { + "version": "1.0.0-alpha.9", + "license": "Apache-2.0", + "optional": true, + "dependencies": { + "@babel/runtime-corejs3": "^7.20.7", + "@swagger-api/apidom-core": "^1.0.0-alpha.9", + "@swagger-api/apidom-ns-json-schema-draft-7": "^1.0.0-alpha.9", + "@types/ramda": "~0.30.0", + "ramda": "~0.30.0", + "ramda-adjunct": "^5.0.0", + "ts-mixer": "^6.0.3" + } + }, + "node_modules/@swagger-api/apidom-ns-json-schema-draft-4": { + "version": "1.0.0-alpha.9", + "license": "Apache-2.0", + "dependencies": { + "@babel/runtime-corejs3": "^7.20.7", + "@swagger-api/apidom-ast": "^1.0.0-alpha.9", + "@swagger-api/apidom-core": "^1.0.0-alpha.9", + "@types/ramda": "~0.30.0", + "ramda": "~0.30.0", + "ramda-adjunct": "^5.0.0", + "ts-mixer": "^6.0.4" + } + }, + "node_modules/@swagger-api/apidom-ns-json-schema-draft-6": { + "version": "1.0.0-alpha.9", + "license": "Apache-2.0", + "optional": true, + "dependencies": { + "@babel/runtime-corejs3": "^7.20.7", + "@swagger-api/apidom-core": "^1.0.0-alpha.9", + "@swagger-api/apidom-error": "^1.0.0-alpha.9", + "@swagger-api/apidom-ns-json-schema-draft-4": "^1.0.0-alpha.9", + "@types/ramda": "~0.30.0", + "ramda": "~0.30.0", + "ramda-adjunct": "^5.0.0", + "ts-mixer": "^6.0.4" + } + }, + "node_modules/@swagger-api/apidom-ns-json-schema-draft-7": { + "version": "1.0.0-alpha.9", + "license": "Apache-2.0", + "optional": true, + "dependencies": { + "@babel/runtime-corejs3": "^7.20.7", + "@swagger-api/apidom-core": "^1.0.0-alpha.9", + "@swagger-api/apidom-error": "^1.0.0-alpha.9", + "@swagger-api/apidom-ns-json-schema-draft-6": "^1.0.0-alpha.9", + "@types/ramda": "~0.30.0", + "ramda": "~0.30.0", + "ramda-adjunct": "^5.0.0", + "ts-mixer": "^6.0.4" + } + }, + "node_modules/@swagger-api/apidom-ns-openapi-2": { + "version": "1.0.0-alpha.9", + "license": "Apache-2.0", + "optional": true, + "dependencies": { + "@babel/runtime-corejs3": "^7.20.7", + "@swagger-api/apidom-core": "^1.0.0-alpha.9", + "@swagger-api/apidom-error": "^1.0.0-alpha.9", + "@swagger-api/apidom-ns-json-schema-draft-4": "^1.0.0-alpha.9", + "@types/ramda": "~0.30.0", + "ramda": "~0.30.0", + "ramda-adjunct": "^5.0.0", + "ts-mixer": "^6.0.3" + } + }, + "node_modules/@swagger-api/apidom-ns-openapi-3-0": { + "version": "1.0.0-alpha.9", + "license": "Apache-2.0", + "dependencies": { + "@babel/runtime-corejs3": "^7.20.7", + "@swagger-api/apidom-core": "^1.0.0-alpha.9", + "@swagger-api/apidom-error": "^1.0.0-alpha.9", + "@swagger-api/apidom-ns-json-schema-draft-4": "^1.0.0-alpha.9", + "@types/ramda": "~0.30.0", + "ramda": "~0.30.0", + "ramda-adjunct": "^5.0.0", + "ts-mixer": "^6.0.3" + } + }, + "node_modules/@swagger-api/apidom-ns-openapi-3-1": { + "version": "1.0.0-alpha.9", + "license": "Apache-2.0", + "dependencies": { + "@babel/runtime-corejs3": "^7.20.7", + "@swagger-api/apidom-ast": "^1.0.0-alpha.9", + "@swagger-api/apidom-core": "^1.0.0-alpha.9", + "@swagger-api/apidom-json-pointer": "^1.0.0-alpha.9", + "@swagger-api/apidom-ns-openapi-3-0": "^1.0.0-alpha.9", + "@types/ramda": "~0.30.0", + "ramda": "~0.30.0", + "ramda-adjunct": "^5.0.0", + "ts-mixer": "^6.0.3" + } + }, + "node_modules/@swagger-api/apidom-ns-workflows-1": { + "version": "1.0.0-alpha.9", + "license": "Apache-2.0", + "optional": true, + "dependencies": { + "@babel/runtime-corejs3": "^7.20.7", + "@swagger-api/apidom-core": "^1.0.0-alpha.9", + "@swagger-api/apidom-ns-openapi-3-1": "^1.0.0-alpha.9", + "@types/ramda": "~0.30.0", + "ramda": "~0.30.0", + "ramda-adjunct": "^5.0.0", + "ts-mixer": "^6.0.3" + } + }, + "node_modules/@swagger-api/apidom-parser-adapter-api-design-systems-json": { + "version": "1.0.0-alpha.9", + "license": "Apache-2.0", + "optional": true, + "dependencies": { + "@babel/runtime-corejs3": "^7.20.7", + "@swagger-api/apidom-core": "^1.0.0-alpha.9", + "@swagger-api/apidom-ns-api-design-systems": "^1.0.0-alpha.9", + "@swagger-api/apidom-parser-adapter-json": "^1.0.0-alpha.9", + "@types/ramda": "~0.30.0", + "ramda": "~0.30.0", + "ramda-adjunct": "^5.0.0" + } + }, + "node_modules/@swagger-api/apidom-parser-adapter-api-design-systems-yaml": { + "version": "1.0.0-alpha.9", + "license": "Apache-2.0", + "optional": true, + "dependencies": { + "@babel/runtime-corejs3": "^7.20.7", + "@swagger-api/apidom-core": "^1.0.0-alpha.9", + "@swagger-api/apidom-ns-api-design-systems": "^1.0.0-alpha.9", + "@swagger-api/apidom-parser-adapter-yaml-1-2": "^1.0.0-alpha.9", + "@types/ramda": "~0.30.0", + "ramda": "~0.30.0", + "ramda-adjunct": "^5.0.0" + } + }, + "node_modules/@swagger-api/apidom-parser-adapter-asyncapi-json-2": { + "version": "1.0.0-alpha.9", + "license": "Apache-2.0", + "optional": true, + "dependencies": { + "@babel/runtime-corejs3": "^7.20.7", + "@swagger-api/apidom-core": "^1.0.0-alpha.9", + "@swagger-api/apidom-ns-asyncapi-2": "^1.0.0-alpha.9", + "@swagger-api/apidom-parser-adapter-json": "^1.0.0-alpha.9", + "@types/ramda": "~0.30.0", + "ramda": "~0.30.0", + "ramda-adjunct": "^5.0.0" + } + }, + "node_modules/@swagger-api/apidom-parser-adapter-asyncapi-yaml-2": { + "version": "1.0.0-alpha.9", + "license": "Apache-2.0", + "optional": true, + "dependencies": { + "@babel/runtime-corejs3": "^7.20.7", + "@swagger-api/apidom-core": "^1.0.0-alpha.9", + "@swagger-api/apidom-ns-asyncapi-2": "^1.0.0-alpha.9", + "@swagger-api/apidom-parser-adapter-yaml-1-2": "^1.0.0-alpha.9", + "@types/ramda": "~0.30.0", + "ramda": "~0.30.0", + "ramda-adjunct": "^5.0.0" + } + }, + "node_modules/@swagger-api/apidom-parser-adapter-json": { + "version": "1.0.0-alpha.9", + "license": "Apache-2.0", + "optional": true, + "dependencies": { + "@babel/runtime-corejs3": "^7.20.7", + "@swagger-api/apidom-ast": "^1.0.0-alpha.9", + "@swagger-api/apidom-core": "^1.0.0-alpha.9", + "@swagger-api/apidom-error": "^1.0.0-alpha.9", + "@types/ramda": "~0.30.0", + "ramda": "~0.30.0", + "ramda-adjunct": "^5.0.0", + "tree-sitter": "=0.20.4", + "tree-sitter-json": "=0.20.2", + "web-tree-sitter": "=0.20.3" + } + }, + "node_modules/@swagger-api/apidom-parser-adapter-openapi-json-2": { + "version": "1.0.0-alpha.9", + "license": "Apache-2.0", + "optional": true, + "dependencies": { + "@babel/runtime-corejs3": "^7.20.7", + "@swagger-api/apidom-core": "^1.0.0-alpha.9", + "@swagger-api/apidom-ns-openapi-2": "^1.0.0-alpha.9", + "@swagger-api/apidom-parser-adapter-json": "^1.0.0-alpha.9", + "@types/ramda": "~0.30.0", + "ramda": "~0.30.0", + "ramda-adjunct": "^5.0.0" + } + }, + "node_modules/@swagger-api/apidom-parser-adapter-openapi-json-3-0": { + "version": "1.0.0-alpha.9", + "license": "Apache-2.0", + "optional": true, + "dependencies": { + "@babel/runtime-corejs3": "^7.20.7", + "@swagger-api/apidom-core": "^1.0.0-alpha.9", + "@swagger-api/apidom-ns-openapi-3-0": "^1.0.0-alpha.9", + "@swagger-api/apidom-parser-adapter-json": "^1.0.0-alpha.9", + "@types/ramda": "~0.30.0", + "ramda": "~0.30.0", + "ramda-adjunct": "^5.0.0" + } + }, + "node_modules/@swagger-api/apidom-parser-adapter-openapi-json-3-1": { + "version": "1.0.0-alpha.9", + "license": "Apache-2.0", + "optional": true, + "dependencies": { + "@babel/runtime-corejs3": "^7.20.7", + "@swagger-api/apidom-core": "^1.0.0-alpha.9", + "@swagger-api/apidom-ns-openapi-3-1": "^1.0.0-alpha.9", + "@swagger-api/apidom-parser-adapter-json": "^1.0.0-alpha.9", + "@types/ramda": "~0.30.0", + "ramda": "~0.30.0", + "ramda-adjunct": "^5.0.0" + } + }, + "node_modules/@swagger-api/apidom-parser-adapter-openapi-yaml-2": { + "version": "1.0.0-alpha.9", + "license": "Apache-2.0", + "optional": true, + "dependencies": { + "@babel/runtime-corejs3": "^7.20.7", + "@swagger-api/apidom-core": "^1.0.0-alpha.9", + "@swagger-api/apidom-ns-openapi-2": "^1.0.0-alpha.9", + "@swagger-api/apidom-parser-adapter-yaml-1-2": "^1.0.0-alpha.9", + "@types/ramda": "~0.30.0", + "ramda": "~0.30.0", + "ramda-adjunct": "^5.0.0" + } + }, + "node_modules/@swagger-api/apidom-parser-adapter-openapi-yaml-3-0": { + "version": "1.0.0-alpha.9", + "license": "Apache-2.0", + "optional": true, + "dependencies": { + "@babel/runtime-corejs3": "^7.20.7", + "@swagger-api/apidom-core": "^1.0.0-alpha.9", + "@swagger-api/apidom-ns-openapi-3-0": "^1.0.0-alpha.9", + "@swagger-api/apidom-parser-adapter-yaml-1-2": "^1.0.0-alpha.9", + "@types/ramda": "~0.30.0", + "ramda": "~0.30.0", + "ramda-adjunct": "^5.0.0" + } + }, + "node_modules/@swagger-api/apidom-parser-adapter-openapi-yaml-3-1": { + "version": "1.0.0-alpha.9", + "license": "Apache-2.0", + "optional": true, + "dependencies": { + "@babel/runtime-corejs3": "^7.20.7", + "@swagger-api/apidom-core": "^1.0.0-alpha.9", + "@swagger-api/apidom-ns-openapi-3-1": "^1.0.0-alpha.9", + "@swagger-api/apidom-parser-adapter-yaml-1-2": "^1.0.0-alpha.9", + "@types/ramda": "~0.30.0", + "ramda": "~0.30.0", + "ramda-adjunct": "^5.0.0" + } + }, + "node_modules/@swagger-api/apidom-parser-adapter-workflows-json-1": { + "version": "1.0.0-alpha.9", + "license": "Apache-2.0", + "optional": true, + "dependencies": { + "@babel/runtime-corejs3": "^7.20.7", + "@swagger-api/apidom-core": "^1.0.0-alpha.9", + "@swagger-api/apidom-ns-workflows-1": "^1.0.0-alpha.9", + "@swagger-api/apidom-parser-adapter-json": "^1.0.0-alpha.9", + "@types/ramda": "~0.30.0", + "ramda": "~0.30.0", + "ramda-adjunct": "^5.0.0" + } + }, + "node_modules/@swagger-api/apidom-parser-adapter-workflows-yaml-1": { + "version": "1.0.0-alpha.9", + "license": "Apache-2.0", + "optional": true, + "dependencies": { + "@babel/runtime-corejs3": "^7.20.7", + "@swagger-api/apidom-core": "^1.0.0-alpha.9", + "@swagger-api/apidom-ns-workflows-1": "^1.0.0-alpha.9", + "@swagger-api/apidom-parser-adapter-yaml-1-2": "^1.0.0-alpha.9", + "@types/ramda": "~0.30.0", + "ramda": "~0.30.0", + "ramda-adjunct": "^5.0.0" + } + }, + "node_modules/@swagger-api/apidom-parser-adapter-yaml-1-2": { + "version": "1.0.0-alpha.9", + "license": "Apache-2.0", + "optional": true, + "dependencies": { + "@babel/runtime-corejs3": "^7.20.7", + "@swagger-api/apidom-ast": "^1.0.0-alpha.9", + "@swagger-api/apidom-core": "^1.0.0-alpha.9", + "@swagger-api/apidom-error": "^1.0.0-alpha.9", + "@types/ramda": "~0.30.0", + "ramda": "~0.30.0", + "ramda-adjunct": "^5.0.0", + "tree-sitter": "=0.20.4", + "tree-sitter-yaml": "=0.5.0", + "web-tree-sitter": "=0.20.3" + } + }, + "node_modules/@swagger-api/apidom-reference": { + "version": "1.0.0-alpha.9", + "license": "Apache-2.0", + "dependencies": { + "@babel/runtime-corejs3": "^7.20.7", + "@swagger-api/apidom-core": "^1.0.0-alpha.9", + "@types/ramda": "~0.30.0", + "axios": "^1.4.0", + "minimatch": "^7.4.3", + "process": "^0.11.10", + "ramda": "~0.30.0", + "ramda-adjunct": "^5.0.0" + }, + "optionalDependencies": { + "@swagger-api/apidom-error": "^1.0.0-alpha.1", + "@swagger-api/apidom-json-pointer": "^1.0.0-alpha.1", + "@swagger-api/apidom-ns-asyncapi-2": "^1.0.0-alpha.1", + "@swagger-api/apidom-ns-openapi-2": "^1.0.0-alpha.1", + "@swagger-api/apidom-ns-openapi-3-0": "^1.0.0-alpha.1", + "@swagger-api/apidom-ns-openapi-3-1": "^1.0.0-alpha.1", + "@swagger-api/apidom-ns-workflows-1": "^1.0.0-alpha.1", + "@swagger-api/apidom-parser-adapter-api-design-systems-json": "^1.0.0-alpha.1", + "@swagger-api/apidom-parser-adapter-api-design-systems-yaml": "^1.0.0-alpha.1", + "@swagger-api/apidom-parser-adapter-asyncapi-json-2": "^1.0.0-alpha.1", + "@swagger-api/apidom-parser-adapter-asyncapi-yaml-2": "^1.0.0-alpha.1", + "@swagger-api/apidom-parser-adapter-json": "^1.0.0-alpha.1", + "@swagger-api/apidom-parser-adapter-openapi-json-2": "^1.0.0-alpha.1", + "@swagger-api/apidom-parser-adapter-openapi-json-3-0": "^1.0.0-alpha.1", + "@swagger-api/apidom-parser-adapter-openapi-json-3-1": "^1.0.0-alpha.1", + "@swagger-api/apidom-parser-adapter-openapi-yaml-2": "^1.0.0-alpha.1", + "@swagger-api/apidom-parser-adapter-openapi-yaml-3-0": "^1.0.0-alpha.1", + "@swagger-api/apidom-parser-adapter-openapi-yaml-3-1": "^1.0.0-alpha.1", + "@swagger-api/apidom-parser-adapter-workflows-json-1": "^1.0.0-alpha.1", + "@swagger-api/apidom-parser-adapter-workflows-yaml-1": "^1.0.0-alpha.1", + "@swagger-api/apidom-parser-adapter-yaml-1-2": "^1.0.0-alpha.1" + } + }, + "node_modules/@swagger-api/apidom-reference/node_modules/minimatch": { + "version": "7.4.6", + "license": "ISC", + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/@tootallnate/once": { + "version": "2.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 10" + } + }, + "node_modules/@turf/bbox": { + "version": "4.7.3", + "license": "MIT", + "dependencies": { + "@turf/meta": "^4.7.3" + } + }, + "node_modules/@turf/center": { + "version": "4.3.0", + "license": "MIT", + "dependencies": { + "@turf/bbox": "^4.3.0", + "@turf/helpers": "^4.3.0" + } + }, + "node_modules/@turf/helpers": { + "version": "4.3.0", + "license": "MIT" + }, + "node_modules/@turf/kinks": { + "version": "4.3.0", + "license": "MIT", + "dependencies": { + "@turf/helpers": "^4.3.0" + } + }, + "node_modules/@turf/meta": { + "version": "4.7.4", + "license": "MIT" + }, + "node_modules/@types/angular": { + "version": "1.8.1", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/body-parser": { + "version": "1.19.5", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/connect": "*", + "@types/node": "*" + } + }, + "node_modules/@types/bonjour": { + "version": "3.5.13", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/connect": { + "version": "3.4.38", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/connect-history-api-fallback": { + "version": "1.5.4", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/express-serve-static-core": "*", + "@types/node": "*" + } + }, + "node_modules/@types/cookie": { + "version": "0.4.1", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/cors": { + "version": "2.8.17", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/eslint": { + "version": "9.6.1", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/estree": "*", + "@types/json-schema": "*" + } + }, + "node_modules/@types/eslint-scope": { + "version": "3.7.7", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/eslint": "*", + "@types/estree": "*" + } + }, + "node_modules/@types/estree": { + "version": "1.0.5", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/express": { + "version": "4.17.21", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/body-parser": "*", + "@types/express-serve-static-core": "^4.17.33", + "@types/qs": "*", + "@types/serve-static": "*" + } + }, + "node_modules/@types/express-serve-static-core": { + "version": "4.19.5", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/node": "*", + "@types/qs": "*", + "@types/range-parser": "*", + "@types/send": "*" + } + }, + "node_modules/@types/geojson": { + "version": "7946.0.7", + "license": "MIT" + }, + "node_modules/@types/hammerjs": { + "version": "2.0.36", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/hast": { + "version": "2.3.10", + "license": "MIT", + "dependencies": { + "@types/unist": "^2" + } + }, + "node_modules/@types/html-minifier-terser": { + "version": "6.1.0", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/http-errors": { + "version": "2.0.4", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/http-proxy": { + "version": "1.17.15", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/inputmask": { + "version": "5.0.3", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/jasmine": { + "version": "4.3.1", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/jasminewd2": { + "version": "2.0.10", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/jasmine": "*" + } + }, + "node_modules/@types/json-schema": { + "version": "7.0.15", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/leaflet": { + "version": "1.7.4", + "license": "MIT", + "dependencies": { + "@types/geojson": "*" + } + }, + "node_modules/@types/leaflet-editable": { + "version": "1.2.6", + "license": "MIT", + "dependencies": { + "@types/leaflet": "*" + } + }, + "node_modules/@types/leaflet.markercluster": { + "version": "1.5.3", + "license": "MIT", + "dependencies": { + "@types/leaflet": "*" + } + }, + "node_modules/@types/lodash": { + "version": "4.17.6", + "license": "MIT" + }, + "node_modules/@types/mime": { + "version": "1.3.5", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/node": { + "version": "18.11.13", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/node-forge": { + "version": "1.3.11", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/parse-json": { + "version": "4.0.2", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/qs": { + "version": "6.9.15", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/ramda": { + "version": "0.30.2", + "license": "MIT", + "dependencies": { + "types-ramda": "^0.30.1" + } + }, + "node_modules/@types/range-parser": { + "version": "1.2.7", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/resolve": { + "version": "1.17.1", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/retry": { + "version": "0.12.0", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/semver": { + "version": "7.5.8", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/send": { + "version": "0.17.4", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/mime": "^1", + "@types/node": "*" + } + }, + "node_modules/@types/serve-index": { + "version": "1.9.4", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/express": "*" + } + }, + "node_modules/@types/serve-static": { + "version": "1.15.7", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/http-errors": "*", + "@types/node": "*", + "@types/send": "*" + } + }, + "node_modules/@types/sockjs": { + "version": "0.3.36", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/unist": { + "version": "2.0.11", + "license": "MIT" + }, + "node_modules/@types/ws": { + "version": "8.5.12", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@uirouter/angular": { + "version": "10.0.0", + "license": "MIT", + "dependencies": { + "tslib": "^2.3.0" + }, + "engines": { + "node": ">=6.0.0" + }, + "peerDependencies": { + "@angular/common": "^14.0.0", + "@angular/core": "^14.0.0", + "@uirouter/core": "^6.0.8", + "@uirouter/rx": "^1.0.0" + } + }, + "node_modules/@uirouter/angular-hybrid": { + "version": "14.0.0", + "license": "MIT", + "dependencies": { + "tslib": "^2.3.0" + }, + "peerDependencies": { + "@angular/core": "^13.0.0 || ^14.0.0", + "@angular/upgrade": "^13.0.0 || ^14.0.0", + "@uirouter/angular": "^10.0.0", + "@uirouter/angularjs": "^1.0.30", + "angular": "^1.5.0" + } + }, + "node_modules/@uirouter/angularjs": { + "version": "1.0.30", + "license": "MIT", + "dependencies": { + "@uirouter/core": "6.0.8" + }, + "engines": { + "node": ">=4.0.0" + }, + "peerDependencies": { + "angular": ">=1.2.0" + } + }, + "node_modules/@uirouter/angularjs/node_modules/@uirouter/core": { + "version": "6.0.8", + "license": "MIT", + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/@uirouter/core": { + "version": "6.1.1", + "license": "MIT", + "peer": true, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/@uirouter/rx": { + "version": "1.0.0", + "license": "MIT", + "peerDependencies": { + "@uirouter/core": ">=6.0.1", + "rxjs": "^6.5.3 || ^7.4.0" + } + }, + "node_modules/@webassemblyjs/ast": { + "version": "1.11.1", + "dev": true, + "license": "MIT", + "dependencies": { + "@webassemblyjs/helper-numbers": "1.11.1", + "@webassemblyjs/helper-wasm-bytecode": "1.11.1" + } + }, + "node_modules/@webassemblyjs/floating-point-hex-parser": { + "version": "1.11.1", + "dev": true, + "license": "MIT" + }, + "node_modules/@webassemblyjs/helper-api-error": { + "version": "1.11.1", + "dev": true, + "license": "MIT" + }, + "node_modules/@webassemblyjs/helper-buffer": { + "version": "1.11.1", + "dev": true, + "license": "MIT" + }, + "node_modules/@webassemblyjs/helper-numbers": { + "version": "1.11.1", + "dev": true, + "license": "MIT", + "dependencies": { + "@webassemblyjs/floating-point-hex-parser": "1.11.1", + "@webassemblyjs/helper-api-error": "1.11.1", + "@xtuc/long": "4.2.2" + } + }, + "node_modules/@webassemblyjs/helper-wasm-bytecode": { + "version": "1.11.1", + "dev": true, + "license": "MIT" + }, + "node_modules/@webassemblyjs/helper-wasm-section": { + "version": "1.11.1", + "dev": true, + "license": "MIT", + "dependencies": { + "@webassemblyjs/ast": "1.11.1", + "@webassemblyjs/helper-buffer": "1.11.1", + "@webassemblyjs/helper-wasm-bytecode": "1.11.1", + "@webassemblyjs/wasm-gen": "1.11.1" + } + }, + "node_modules/@webassemblyjs/ieee754": { + "version": "1.11.1", + "dev": true, + "license": "MIT", + "dependencies": { + "@xtuc/ieee754": "^1.2.0" + } + }, + "node_modules/@webassemblyjs/leb128": { + "version": "1.11.1", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "@xtuc/long": "4.2.2" + } + }, + "node_modules/@webassemblyjs/utf8": { + "version": "1.11.1", + "dev": true, + "license": "MIT" + }, + "node_modules/@webassemblyjs/wasm-edit": { + "version": "1.11.1", + "dev": true, + "license": "MIT", + "dependencies": { + "@webassemblyjs/ast": "1.11.1", + "@webassemblyjs/helper-buffer": "1.11.1", + "@webassemblyjs/helper-wasm-bytecode": "1.11.1", + "@webassemblyjs/helper-wasm-section": "1.11.1", + "@webassemblyjs/wasm-gen": "1.11.1", + "@webassemblyjs/wasm-opt": "1.11.1", + "@webassemblyjs/wasm-parser": "1.11.1", + "@webassemblyjs/wast-printer": "1.11.1" + } + }, + "node_modules/@webassemblyjs/wasm-gen": { + "version": "1.11.1", + "dev": true, + "license": "MIT", + "dependencies": { + "@webassemblyjs/ast": "1.11.1", + "@webassemblyjs/helper-wasm-bytecode": "1.11.1", + "@webassemblyjs/ieee754": "1.11.1", + "@webassemblyjs/leb128": "1.11.1", + "@webassemblyjs/utf8": "1.11.1" + } + }, + "node_modules/@webassemblyjs/wasm-opt": { + "version": "1.11.1", + "dev": true, + "license": "MIT", + "dependencies": { + "@webassemblyjs/ast": "1.11.1", + "@webassemblyjs/helper-buffer": "1.11.1", + "@webassemblyjs/wasm-gen": "1.11.1", + "@webassemblyjs/wasm-parser": "1.11.1" + } + }, + "node_modules/@webassemblyjs/wasm-parser": { + "version": "1.11.1", + "dev": true, + "license": "MIT", + "dependencies": { + "@webassemblyjs/ast": "1.11.1", + "@webassemblyjs/helper-api-error": "1.11.1", + "@webassemblyjs/helper-wasm-bytecode": "1.11.1", + "@webassemblyjs/ieee754": "1.11.1", + "@webassemblyjs/leb128": "1.11.1", + "@webassemblyjs/utf8": "1.11.1" + } + }, + "node_modules/@webassemblyjs/wast-printer": { + "version": "1.11.1", + "dev": true, + "license": "MIT", + "dependencies": { + "@webassemblyjs/ast": "1.11.1", + "@xtuc/long": "4.2.2" + } + }, + "node_modules/@xtuc/ieee754": { + "version": "1.2.0", + "dev": true, + "license": "BSD-3-Clause" + }, + "node_modules/@xtuc/long": { + "version": "4.2.2", + "dev": true, + "license": "Apache-2.0" + }, + "node_modules/@yarnpkg/lockfile": { + "version": "1.1.0", + "dev": true, + "license": "BSD-2-Clause" + }, + "node_modules/@zxcvbn-ts/core": { + "version": "3.0.4", + "license": "MIT", + "dependencies": { + "fastest-levenshtein": "1.0.16" + } + }, + "node_modules/@zxcvbn-ts/language-common": { + "version": "3.0.4", + "license": "MIT" + }, + "node_modules/@zxcvbn-ts/language-en": { + "version": "3.0.2", + "license": "MIT" + }, + "node_modules/abab": { + "version": "2.0.6", + "dev": true, + "license": "BSD-3-Clause" + }, + "node_modules/abbrev": { + "version": "1.1.1", + "dev": true, + "license": "ISC" + }, + "node_modules/accepts": { + "version": "1.3.8", + "dev": true, + "license": "MIT", + "dependencies": { + "mime-types": "~2.1.34", + "negotiator": "0.6.3" + }, + "engines": { + "node": ">= 0.6" } }, - "@material/radio": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/@material/radio/-/radio-3.2.0.tgz", - "integrity": "sha512-TQeaGsCyIkj1zruOe9g4Kj4p6T3vBRyWvVT15xTbHWBSkzJw2L917EEwIKxQtxqps3E7WEbzkBh0jPRZj8CMVQ==", - "requires": { - "@material/animation": "^3.1.0", - "@material/base": "^3.1.0", - "@material/dom": "^3.1.0", - "@material/feature-targeting": "^3.1.0", - "@material/ripple": "^3.2.0", - "@material/theme": "^3.1.0", - "tslib": "^1.9.3" + "node_modules/acorn": { + "version": "8.12.1", + "dev": true, + "license": "MIT", + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" } }, - "@material/ripple": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/@material/ripple/-/ripple-3.2.0.tgz", - "integrity": "sha512-GtwkfNakALmfGLs6TpdFIVeAWjRqbyT7WfEw9aU7elUokABfHES+O0KoSKQSMQiSQ8Vjl90MONzNsN1Evi/1YQ==", - "requires": { - "@material/animation": "^3.1.0", - "@material/base": "^3.1.0", - "@material/dom": "^3.1.0", - "@material/feature-targeting": "^3.1.0", - "@material/theme": "^3.1.0", - "tslib": "^1.9.3" + "node_modules/acorn-import-assertions": { + "version": "1.9.0", + "dev": true, + "license": "MIT", + "peerDependencies": { + "acorn": "^8" } }, - "@material/rtl": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/@material/rtl/-/rtl-3.2.0.tgz", - "integrity": "sha512-L/w9m9Yx1ceOw/VjEfeJoqD4rW9QP3IBb9MamXAg3qUi/zsztoXD/FUw179pxkLn4huFFNlVYZ4Y1y6BpM0PMA==" + "node_modules/acorn-walk": { + "version": "8.3.3", + "dev": true, + "license": "MIT", + "dependencies": { + "acorn": "^8.11.0" + }, + "engines": { + "node": ">=0.4.0" + } }, - "@material/select": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/@material/select/-/select-3.2.0.tgz", - "integrity": "sha512-6zqNBXXNsUtzaJwKvj+GOGCqvKCiu+MNsPZM+2ClNsCWLphFV6dC7iU83C4XQ2MdT7t+H2ggCQOBj5gieC1l7g==", - "requires": { - "@material/animation": "^3.1.0", - "@material/base": "^3.1.0", - "@material/floating-label": "^3.2.0", - "@material/line-ripple": "^3.1.0", - "@material/menu": "^3.2.0", - "@material/menu-surface": "^3.2.0", - "@material/notched-outline": "^3.2.0", - "@material/ripple": "^3.2.0", - "@material/rtl": "^3.2.0", - "@material/shape": "^3.1.0", - "@material/theme": "^3.1.0", - "@material/typography": "^3.1.0", - "tslib": "^1.9.3" + "node_modules/adjust-sourcemap-loader": { + "version": "4.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "loader-utils": "^2.0.0", + "regex-parser": "^2.2.11" + }, + "engines": { + "node": ">=8.9" } }, - "@material/shape": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/@material/shape/-/shape-3.1.0.tgz", - "integrity": "sha512-Oyvs7YjHfByA0e9IVVp7ojAlPwgSu3Bl0cioiE0OdkidkAaNu0izM2ryRzMBDH5o8+lRD0kpZoT+9CVVCdaYIg==", - "requires": { - "@material/feature-targeting": "^3.1.0" + "node_modules/adjust-sourcemap-loader/node_modules/loader-utils": { + "version": "2.0.4", + "dev": true, + "license": "MIT", + "dependencies": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^2.1.2" + }, + "engines": { + "node": ">=8.9.0" } }, - "@material/slider": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/@material/slider/-/slider-3.2.0.tgz", - "integrity": "sha512-8c1u9jfulYqTNtNgaiZnAHyLDyJovQ7oHms+tzLaRV9rENT2pu3Z9H/2KIlpYkYx/5DI0Uv8ogC3s2+zzMc1Dg==", - "requires": { - "@material/animation": "^3.1.0", - "@material/base": "^3.1.0", - "@material/dom": "^3.1.0", - "@material/feature-targeting": "^3.1.0", - "@material/rtl": "^3.2.0", - "@material/theme": "^3.1.0", - "@material/typography": "^3.1.0", - "tslib": "^1.9.3" + "node_modules/agent-base": { + "version": "6.0.2", + "dev": true, + "license": "MIT", + "dependencies": { + "debug": "4" + }, + "engines": { + "node": ">= 6.0.0" } }, - "@material/snackbar": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/@material/snackbar/-/snackbar-3.2.0.tgz", - "integrity": "sha512-WVA+dJYbzDMlPpXCdkGEQqi1+tHqV8a9tKBYlr4Vy+3UUaEl6gIomRiWNnagoodhOwGQhyugCeLKHtmVn72IZA==", - "requires": { - "@material/animation": "^3.1.0", - "@material/base": "^3.1.0", - "@material/button": "^3.2.0", - "@material/dom": "^3.1.0", - "@material/feature-targeting": "^3.1.0", - "@material/icon-button": "^3.2.0", - "@material/ripple": "^3.2.0", - "@material/rtl": "^3.2.0", - "@material/shape": "^3.1.0", - "@material/theme": "^3.1.0", - "@material/typography": "^3.1.0", - "tslib": "^1.9.3" + "node_modules/agentkeepalive": { + "version": "4.5.0", + "dev": true, + "license": "MIT", + "dependencies": { + "humanize-ms": "^1.2.1" + }, + "engines": { + "node": ">= 8.0.0" } }, - "@material/switch": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/@material/switch/-/switch-3.2.0.tgz", - "integrity": "sha512-gECImbvf3HGpmc/Sj2Meq+z7/ri5jmD5rKOeUUeC6nZ77/HiGCRhmSD66rlS0SH5qUUj0mWSbE8ZVOJmVWySEQ==", - "requires": { - "@material/animation": "^3.1.0", - "@material/base": "^3.1.0", - "@material/dom": "^3.1.0", - "@material/elevation": "^3.1.0", - "@material/feature-targeting": "^3.1.0", - "@material/ripple": "^3.2.0", - "@material/rtl": "^3.2.0", - "@material/theme": "^3.1.0", - "tslib": "^1.9.3" + "node_modules/aggregate-error": { + "version": "3.1.0", + "dev": true, + "license": "MIT", + "dependencies": { + "clean-stack": "^2.0.0", + "indent-string": "^4.0.0" + }, + "engines": { + "node": ">=8" } }, - "@material/tab": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/@material/tab/-/tab-3.2.0.tgz", - "integrity": "sha512-O1/ZrBQ/g+fI8jrrpfBDq55BhEPISrFvZeiIVQshQuyZh5bLYYhjMXbOsjC1UYu11rWqAiP+8jDgIyxQT9DHwQ==", - "requires": { - "@material/base": "^3.1.0", - "@material/feature-targeting": "^3.1.0", - "@material/ripple": "^3.2.0", - "@material/rtl": "^3.2.0", - "@material/tab-indicator": "^3.1.0", - "@material/theme": "^3.1.0", - "@material/typography": "^3.1.0", - "tslib": "^1.9.3" + "node_modules/ajv": { + "version": "6.12.6", + "license": "MIT", + "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" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" } }, - "@material/tab-bar": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/@material/tab-bar/-/tab-bar-3.2.0.tgz", - "integrity": "sha512-PMSGLhuDm0iE4BQb9DovgKJD9EoKowQhKwXQBt/+5rlSaRshV8X0Gd1YlKgFVX7EAGK2Dfz5u60TFq00gMemXg==", - "requires": { - "@material/base": "^3.1.0", - "@material/elevation": "^3.1.0", - "@material/feature-targeting": "^3.1.0", - "@material/tab": "^3.2.0", - "@material/tab-scroller": "^3.2.0", - "tslib": "^1.9.3" + "node_modules/ajv-formats": { + "version": "2.1.1", + "dev": true, + "license": "MIT", + "dependencies": { + "ajv": "^8.0.0" + }, + "peerDependencies": { + "ajv": "^8.0.0" + }, + "peerDependenciesMeta": { + "ajv": { + "optional": true + } } }, - "@material/tab-indicator": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/@material/tab-indicator/-/tab-indicator-3.1.0.tgz", - "integrity": "sha512-U4H1bg792ZP4BzjiG3i3htHKmRGlGUZ8c9iroRN6W5B4hYQ5/4DbFA2h2OaAZ1fhyjHiyFosK5ctvgu7qSfZ/g==", - "requires": { - "@material/animation": "^3.1.0", - "@material/base": "^3.1.0", - "@material/feature-targeting": "^3.1.0", - "@material/theme": "^3.1.0", - "tslib": "^1.9.3" + "node_modules/ajv-formats/node_modules/ajv": { + "version": "8.17.1", + "dev": true, + "license": "MIT", + "dependencies": { + "fast-deep-equal": "^3.1.3", + "fast-uri": "^3.0.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" } }, - "@material/tab-scroller": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/@material/tab-scroller/-/tab-scroller-3.2.0.tgz", - "integrity": "sha512-tf7QkLd5Javik4jjHcz1P64btgljvC7IjlYZ8tfoYGbs75Z0MGa57heCypzve8QZFjBcmfiKkw61dFoUbtkU6g==", - "requires": { - "@material/animation": "^3.1.0", - "@material/base": "^3.1.0", - "@material/dom": "^3.1.0", - "@material/feature-targeting": "^3.1.0", - "@material/tab": "^3.2.0", - "tslib": "^1.9.3" + "node_modules/ajv-formats/node_modules/json-schema-traverse": { + "version": "1.0.0", + "dev": true, + "license": "MIT" + }, + "node_modules/ajv-keywords": { + "version": "3.5.2", + "dev": true, + "license": "MIT", + "peerDependencies": { + "ajv": "^6.9.1" } }, - "@material/textfield": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/@material/textfield/-/textfield-3.2.0.tgz", - "integrity": "sha512-xPWDkTzurMOxvH0+DsenzboF7dFoUeLcbqX/9vyhWe3aPlO6ZWFNn3lAmYN24ElqR5FEr5zXNYfeIQ4JLT5mYw==", - "requires": { - "@material/animation": "^3.1.0", - "@material/base": "^3.1.0", - "@material/dom": "^3.1.0", - "@material/floating-label": "^3.2.0", - "@material/line-ripple": "^3.1.0", - "@material/notched-outline": "^3.2.0", - "@material/ripple": "^3.2.0", - "@material/rtl": "^3.2.0", - "@material/shape": "^3.1.0", - "@material/theme": "^3.1.0", - "@material/typography": "^3.1.0", - "tslib": "^1.9.3" + "node_modules/angular": { + "version": "1.5.11", + "license": "MIT" + }, + "node_modules/angular-animate": { + "version": "1.5.11", + "license": "MIT" + }, + "node_modules/angular-messages": { + "version": "1.5.11", + "license": "MIT" + }, + "node_modules/angular-minicolors": { + "version": "0.0.7", + "license": "MIT" + }, + "node_modules/angular-resource": { + "version": "1.5.11", + "license": "MIT" + }, + "node_modules/angular-route": { + "version": "1.5.11", + "license": "MIT" + }, + "node_modules/angular-sanitize": { + "version": "1.5.11", + "license": "MIT" + }, + "node_modules/angular-ui-bootstrap": { + "version": "2.5.6", + "license": "MIT" + }, + "node_modules/ansi-colors": { + "version": "4.1.3", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" } }, - "@material/theme": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/@material/theme/-/theme-3.1.0.tgz", - "integrity": "sha512-N4JX+akOwg1faAvFvIEhDcwW4cZfUpwEn8lct6Vs3WczjLF6/KdIoLVaYh+eVl1bzfsoIuWvx56j0B1PjXZw9g==", - "requires": { - "@material/feature-targeting": "^3.1.0" + "node_modules/ansi-escapes": { + "version": "4.3.2", + "dev": true, + "license": "MIT", + "dependencies": { + "type-fest": "^0.21.3" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "@material/top-app-bar": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/@material/top-app-bar/-/top-app-bar-3.2.0.tgz", - "integrity": "sha512-p3PuCIbg0uDveS30D1R8/fcwqeTMXe4oRFnB6Z5Wlej0NySi6038i+TPsHtgYLCR3QpVThnkVch37zyXcNpQoQ==", - "requires": { - "@material/animation": "^3.1.0", - "@material/base": "^3.1.0", - "@material/elevation": "^3.1.0", - "@material/icon-button": "^3.2.0", - "@material/ripple": "^3.2.0", - "@material/rtl": "^3.2.0", - "@material/shape": "^3.1.0", - "@material/theme": "^3.1.0", - "@material/typography": "^3.1.0", - "tslib": "^1.9.3" + "node_modules/ansi-html-community": { + "version": "0.0.8", + "dev": true, + "engines": [ + "node >= 0.8.0" + ], + "license": "Apache-2.0", + "bin": { + "ansi-html": "bin/ansi-html" } }, - "@material/typography": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/@material/typography/-/typography-3.1.0.tgz", - "integrity": "sha512-aSNBQvVxIH1kORSYdLGuSTivx6oJ1MSOSTUAsUwhXPQLQlvbdFeZaqUp7xgn+EvRsHGRFhWk5YGuiBds9+7zQg==", - "requires": { - "@material/feature-targeting": "^3.1.0" + "node_modules/ansi-regex": { + "version": "5.0.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/ansi-styles": { + "version": "3.2.1", + "dev": true, + "license": "MIT", + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/anymatch": { + "version": "3.1.3", + "dev": true, + "license": "ISC", + "dependencies": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + }, + "engines": { + "node": ">= 8" } }, - "@ng-select/ng-select": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/@ng-select/ng-select/-/ng-select-4.0.4.tgz", - "integrity": "sha512-KaVlVdt7DWZBfmL6nc16i80l1dDx0cO3eGjW+grQPnhZ9KurapioQUYVf6dSmYyWyBXihvt4I3SWkCzqSWFJbQ==", - "requires": { - "tslib": "^1.10.0" + "node_modules/apg-lite": { + "version": "1.0.4", + "license": "BSD-2-Clause" + }, + "node_modules/aproba": { + "version": "2.0.0", + "dev": true, + "license": "ISC" + }, + "node_modules/are-we-there-yet": { + "version": "3.0.1", + "dev": true, + "license": "ISC", + "dependencies": { + "delegates": "^1.0.0", + "readable-stream": "^3.6.0" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "@ngageoint/md-date-time-picker": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/@ngageoint/md-date-time-picker/-/md-date-time-picker-2.3.0.tgz", - "integrity": "sha512-ampXU7JKO/Et1LVPJaovUTCoKy6SP6kkbxKE3zlZW/pIiXQeVMBG0nWF3OPCfwobAiiN2JO5omM/mtaCb/3QYQ==", - "requires": { - "babel-plugin-transform-es2015-modules-umd": "^6.23.0", - "babel-plugin-transform-member-expression-literals": "^6.8.1", - "babel-plugin-transform-merge-sibling-variables": "^6.8.2", - "babel-plugin-transform-minify-booleans": "^6.8.0", - "babel-plugin-transform-property-literals": "^6.8.1", - "draggabilly": "^2.1.1", - "moment": "^2.29.4" + "node_modules/are-we-there-yet/node_modules/readable-stream": { + "version": "3.6.2", + "dev": true, + "license": "MIT", + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/are-we-there-yet/node_modules/string_decoder": { + "version": "1.3.0", + "dev": true, + "license": "MIT", "dependencies": { - "moment": { - "version": "2.29.4", - "resolved": "https://registry.npmjs.org/moment/-/moment-2.29.4.tgz", - "integrity": "sha512-5LC9SOxjSc2HF6vO2CyuTDNivEdoz2IvyJJGj6X8DJ0eFyfszE0QiEd+iXmBvUP3WHxSjFH/vIsA0EN00cgr8w==" - } + "safe-buffer": "~5.2.0" } }, - "@ngneat/input-mask": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/@ngneat/input-mask/-/input-mask-4.1.1.tgz", - "integrity": "sha512-WBRlPF2QYRzxu6PnH1+SVBbDI4r3Gd2LeegtQ4dlojf+o6A1bSnQiaAgEZPx2YELuL/8jMJWjfiEqkK0p4RERg==", - "requires": { - "tslib": "^2.0.0" - }, + "node_modules/argparse": { + "version": "1.0.10", + "license": "MIT", "dependencies": { - "tslib": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.5.0.tgz", - "integrity": "sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg==" - } + "sprintf-js": "~1.0.2" } }, - "@ngtools/webpack": { - "version": "9.1.15", - "resolved": "https://registry.npmjs.org/@ngtools/webpack/-/webpack-9.1.15.tgz", - "integrity": "sha512-2k2SpBd8ssZ1XnLwM09t34pHck96d3ndyxBfg19IpXXXB/FbvhVXTkypB2ktpoGHy/8oSPeUDjz6O9x+p5iT8A==", + "node_modules/argparse/node_modules/sprintf-js": { + "version": "1.0.3", + "license": "BSD-3-Clause" + }, + "node_modules/array-buffer-byte-length": { + "version": "1.0.1", "dev": true, - "requires": { - "@angular-devkit/core": "9.1.15", - "enhanced-resolve": "4.1.1", - "rxjs": "6.5.4", - "webpack-sources": "1.4.3" - }, + "license": "MIT", "dependencies": { - "rxjs": { - "version": "6.5.4", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.5.4.tgz", - "integrity": "sha512-naMQXcgEo3csAEGvw/NydRA0fuS2nDZJiw1YUWFKU7aPPAPGZEsD4Iimit96qwCieH6y614MCLYwdkrWx7z/7Q==", - "dev": true, - "requires": { - "tslib": "^1.9.0" - } - } + "call-bind": "^1.0.5", + "is-array-buffer": "^3.0.4" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "@nodelib/fs.scandir": { - "version": "2.1.5", - "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", - "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", + "node_modules/array-flatten": { + "version": "1.1.1", "dev": true, - "requires": { - "@nodelib/fs.stat": "2.0.5", - "run-parallel": "^1.1.9" + "license": "MIT" + }, + "node_modules/arraybuffer.prototype.slice": { + "version": "1.0.3", + "dev": true, + "license": "MIT", + "dependencies": { + "array-buffer-byte-length": "^1.0.1", + "call-bind": "^1.0.5", + "define-properties": "^1.2.1", + "es-abstract": "^1.22.3", + "es-errors": "^1.2.1", + "get-intrinsic": "^1.2.3", + "is-array-buffer": "^3.0.4", + "is-shared-array-buffer": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "@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 + "node_modules/asap": { + "version": "2.0.6", + "license": "MIT" }, - "@nodelib/fs.walk": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", - "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", + "node_modules/ast-types": { + "version": "0.9.6", "dev": true, - "requires": { - "@nodelib/fs.scandir": "2.1.5", - "fastq": "^1.6.0" + "license": "MIT", + "engines": { + "node": ">= 0.8" } }, - "@npmcli/fs": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@npmcli/fs/-/fs-1.1.1.tgz", - "integrity": "sha512-8KG5RD0GVP4ydEzRn/I4BNDuxDtqVbOdm8675T49OIG/NGhaK0pjPX7ZcDlvKYbA+ulvVK3ztfcF4uBdOxuJbQ==", + "node_modules/asynckit": { + "version": "0.4.0", + "license": "MIT" + }, + "node_modules/atob": { + "version": "2.1.2", "dev": true, - "requires": { - "@gar/promisify": "^1.0.1", - "semver": "^7.3.5" + "license": "(MIT OR Apache-2.0)", + "bin": { + "atob": "bin/atob.js" }, + "engines": { + "node": ">= 4.5.0" + } + }, + "node_modules/autolinker": { + "version": "3.16.2", + "license": "MIT", "dependencies": { - "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" - } + "tslib": "^2.3.0" + } + }, + "node_modules/autoprefixer": { + "version": "10.4.20", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" }, - "semver": { - "version": "7.3.7", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.7.tgz", - "integrity": "sha512-QlYTucUYOews+WeEujDoEGziz4K6c47V/Bd+LjSSYcA94p+DmINdf7ncaUinThfvZyu13lN9OY1XDxt8C0Tw0g==", - "dev": true, - "requires": { - "lru-cache": "^6.0.0" - } + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/autoprefixer" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" } + ], + "license": "MIT", + "dependencies": { + "browserslist": "^4.23.3", + "caniuse-lite": "^1.0.30001646", + "fraction.js": "^4.3.7", + "normalize-range": "^0.1.2", + "picocolors": "^1.0.1", + "postcss-value-parser": "^4.2.0" + }, + "bin": { + "autoprefixer": "bin/autoprefixer" + }, + "engines": { + "node": "^10 || ^12 || >=14" + }, + "peerDependencies": { + "postcss": "^8.1.0" } }, - "@npmcli/move-file": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@npmcli/move-file/-/move-file-1.1.2.tgz", - "integrity": "sha512-1SUf/Cg2GzGDyaf15aR9St9TWlb+XvbZXWpDx8YKs7MLzMH/BCeopv+y9vzrzgkfykCGuWOlSu3mZhj2+FQcrg==", + "node_modules/available-typed-arrays": { + "version": "1.0.7", "dev": true, - "requires": { - "mkdirp": "^1.0.4", - "rimraf": "^3.0.2" + "license": "MIT", + "dependencies": { + "possible-typed-array-names": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/axios": { + "version": "1.7.7", + "license": "MIT", "dependencies": { - "mkdirp": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", - "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", - "dev": true - } + "follow-redirects": "^1.15.6", + "form-data": "^4.0.0", + "proxy-from-env": "^1.1.0" } }, - "@rollup/plugin-commonjs": { - "version": "11.1.0", - "resolved": "https://registry.npmjs.org/@rollup/plugin-commonjs/-/plugin-commonjs-11.1.0.tgz", - "integrity": "sha512-Ycr12N3ZPN96Fw2STurD21jMqzKwL9QuFhms3SD7KKRK7oaXUsBU9Zt0jL/rOPHiPYisI21/rXGO3jr9BnLHUA==", - "dev": true, - "requires": { - "@rollup/pluginutils": "^3.0.8", - "commondir": "^1.0.1", - "estree-walker": "^1.0.1", - "glob": "^7.1.2", - "is-reference": "^1.1.2", - "magic-string": "^0.25.2", - "resolve": "^1.11.0" + "node_modules/babel-code-frame": { + "version": "6.26.0", + "license": "MIT", + "dependencies": { + "chalk": "^1.1.3", + "esutils": "^2.0.2", + "js-tokens": "^3.0.2" } }, - "@rollup/plugin-json": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/@rollup/plugin-json/-/plugin-json-4.1.0.tgz", - "integrity": "sha512-yfLbTdNS6amI/2OpmbiBoW12vngr5NW2jCJVZSBEz+H5KfUJZ2M7sDjk0U6GOOdCWFVScShte29o9NezJ53TPw==", + "node_modules/babel-code-frame/node_modules/ansi-regex": { + "version": "2.1.1", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/babel-code-frame/node_modules/ansi-styles": { + "version": "2.2.1", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/babel-code-frame/node_modules/chalk": { + "version": "1.1.3", + "license": "MIT", + "dependencies": { + "ansi-styles": "^2.2.1", + "escape-string-regexp": "^1.0.2", + "has-ansi": "^2.0.0", + "strip-ansi": "^3.0.0", + "supports-color": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/babel-code-frame/node_modules/js-tokens": { + "version": "3.0.2", + "license": "MIT" + }, + "node_modules/babel-code-frame/node_modules/strip-ansi": { + "version": "3.0.1", + "license": "MIT", + "dependencies": { + "ansi-regex": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/babel-code-frame/node_modules/supports-color": { + "version": "2.0.0", + "license": "MIT", + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/babel-loader": { + "version": "8.2.5", "dev": true, - "requires": { - "@rollup/pluginutils": "^3.0.8" + "license": "MIT", + "dependencies": { + "find-cache-dir": "^3.3.1", + "loader-utils": "^2.0.0", + "make-dir": "^3.1.0", + "schema-utils": "^2.6.5" + }, + "engines": { + "node": ">= 8.9" + }, + "peerDependencies": { + "@babel/core": "^7.0.0", + "webpack": ">=2" } }, - "@rollup/plugin-node-resolve": { - "version": "7.1.3", - "resolved": "https://registry.npmjs.org/@rollup/plugin-node-resolve/-/plugin-node-resolve-7.1.3.tgz", - "integrity": "sha512-RxtSL3XmdTAE2byxekYLnx+98kEUOrPHF/KRVjLH+DEIHy6kjIw7YINQzn+NXiH/NTrQLAwYs0GWB+csWygA9Q==", + "node_modules/babel-loader/node_modules/loader-utils": { + "version": "2.0.4", "dev": true, - "requires": { - "@rollup/pluginutils": "^3.0.8", - "@types/resolve": "0.0.8", - "builtin-modules": "^3.1.0", - "is-module": "^1.0.0", - "resolve": "^1.14.2" + "license": "MIT", + "dependencies": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^2.1.2" + }, + "engines": { + "node": ">=8.9.0" } }, - "@rollup/pluginutils": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-3.1.0.tgz", - "integrity": "sha512-GksZ6pr6TpIjHm8h9lSQ8pi8BE9VeubNT0OMJ3B5uZJ8pz73NPiqOtCog/x2/QzM1ENChPKxMDhiQuRHsqc+lg==", + "node_modules/babel-messages": { + "version": "6.23.0", + "license": "MIT", + "dependencies": { + "babel-runtime": "^6.22.0" + } + }, + "node_modules/babel-plugin-istanbul": { + "version": "6.1.1", "dev": true, - "requires": { - "@types/estree": "0.0.39", - "estree-walker": "^1.0.1", - "picomatch": "^2.2.2" + "license": "BSD-3-Clause", + "dependencies": { + "@babel/helper-plugin-utils": "^7.0.0", + "@istanbuljs/load-nyc-config": "^1.0.0", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-instrument": "^5.0.4", + "test-exclude": "^6.0.0" + }, + "engines": { + "node": ">=8" } }, - "@schematics/angular": { - "version": "9.1.15", - "resolved": "https://registry.npmjs.org/@schematics/angular/-/angular-9.1.15.tgz", - "integrity": "sha512-ycbwKGurxcV8LRW4xCJtGNEj1h/ALI9RKwkBEirWfZhMeE7391A6aoVGzWrbUxWqqXA2AIQR0W34yXWne+GK3Q==", + "node_modules/babel-plugin-polyfill-corejs2": { + "version": "0.3.3", "dev": true, - "requires": { - "@angular-devkit/core": "9.1.15", - "@angular-devkit/schematics": "9.1.15" + "license": "MIT", + "dependencies": { + "@babel/compat-data": "^7.17.7", + "@babel/helper-define-polyfill-provider": "^0.3.3", + "semver": "^6.1.1" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@schematics/update": { - "version": "0.901.15", - "resolved": "https://registry.npmjs.org/@schematics/update/-/update-0.901.15.tgz", - "integrity": "sha512-JOKhK7HkjPqd6pvIb6qIB9agYRJXT223NsYoVzG9GD2tmvipl6gDfR7GeSfuc7wxNQy8DkxvOfxn0lytz5NKLQ==", + "node_modules/babel-plugin-polyfill-corejs2/node_modules/semver": { + "version": "6.3.1", "dev": true, - "requires": { - "@angular-devkit/core": "9.1.15", - "@angular-devkit/schematics": "9.1.15", - "@yarnpkg/lockfile": "1.1.0", - "ini": "1.3.6", - "npm-package-arg": "^8.0.0", - "pacote": "9.5.12", - "rxjs": "6.5.4", - "semver": "7.1.3", - "semver-intersect": "1.4.0" - }, - "dependencies": { - "rxjs": { - "version": "6.5.4", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.5.4.tgz", - "integrity": "sha512-naMQXcgEo3csAEGvw/NydRA0fuS2nDZJiw1YUWFKU7aPPAPGZEsD4Iimit96qwCieH6y614MCLYwdkrWx7z/7Q==", - "dev": true, - "requires": { - "tslib": "^1.9.0" - } - } + "license": "ISC", + "bin": { + "semver": "bin/semver.js" } }, - "@sindresorhus/is": { - "version": "0.14.0", - "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-0.14.0.tgz", - "integrity": "sha512-9NET910DNaIPngYnLLPeg+Ogzqsi9uM4mSboU5y6p8S5DzMTVEsJZrawi+BoDNUVBa2DhJqQYUFvMDfgU062LQ==", - "dev": true + "node_modules/babel-plugin-polyfill-corejs3": { + "version": "0.5.3", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-define-polyfill-provider": "^0.3.2", + "core-js-compat": "^3.21.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } }, - "@swagger-api/apidom-ast": { - "version": "0.69.0", - "resolved": "https://registry.npmjs.org/@swagger-api/apidom-ast/-/apidom-ast-0.69.0.tgz", - "integrity": "sha512-JsRyi1Ir3VeNSSWmIFqgaFOQCIUvCoKcfmOcU/h4Jz1IOkQij1vj3qEFln4J9sByOWHrhA8zD1Cf+LnXkbGVZg==", - "requires": { - "@babel/runtime-corejs3": "^7.20.7", - "@types/ramda": "=0.28.23", - "ramda": "=0.28.0", - "ramda-adjunct": "=3.4.0", - "stampit": "=4.3.2", - "unraw": "=2.0.1" - } - }, - "@swagger-api/apidom-core": { - "version": "0.69.2", - "resolved": "https://registry.npmjs.org/@swagger-api/apidom-core/-/apidom-core-0.69.2.tgz", - "integrity": "sha512-av9vS1SbXxGJvCt4QggrIvS8dr3ZfL6jxrNQGr4cq1wFY/n5ruj0RsXix208c3Zp1Kua3QVOUaJvA+7RdT1VJA==", - "requires": { - "@babel/runtime-corejs3": "^7.20.7", - "@swagger-api/apidom-ast": "^0.69.0", - "@types/ramda": "=0.28.23", - "minim": "=0.23.8", - "ramda": "=0.28.0", - "ramda-adjunct": "=3.4.0", - "short-unique-id": "=4.4.4", - "stampit": "=4.3.2" - } - }, - "@swagger-api/apidom-json-pointer": { - "version": "0.69.2", - "resolved": "https://registry.npmjs.org/@swagger-api/apidom-json-pointer/-/apidom-json-pointer-0.69.2.tgz", - "integrity": "sha512-ipu94QNw8ZKWC+pfie5IyIzVImR5N0PANXkUSfFon5L4aMAtggKpZn7aUv/2Cxn51JsCvjZwkXT7PaJ8RddpxA==", - "requires": { - "@babel/runtime-corejs3": "^7.20.7", - "@swagger-api/apidom-core": "^0.69.2", - "@types/ramda": "=0.28.23", - "ramda": "=0.28.0", - "ramda-adjunct": "=3.4.0" + "node_modules/babel-plugin-polyfill-regenerator": { + "version": "0.4.1", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-define-polyfill-provider": "^0.3.3" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "@swagger-api/apidom-ns-api-design-systems": { - "version": "0.69.2", - "resolved": "https://registry.npmjs.org/@swagger-api/apidom-ns-api-design-systems/-/apidom-ns-api-design-systems-0.69.2.tgz", - "integrity": "sha512-JnOPiDvPfNH/6WWVBqBwK0oIHscHECtL1iZDUE9nB4NSbyoV10oulkuhHNAO9BImqtU4rxtWbXyTL1MEuUdHHQ==", - "optional": true, - "requires": { - "@babel/runtime-corejs3": "^7.20.7", - "@swagger-api/apidom-core": "^0.69.2", - "@swagger-api/apidom-ns-openapi-3-1": "^0.69.2", - "@types/ramda": "=0.28.23", - "ramda": "=0.28.0", - "ramda-adjunct": "=3.4.0", - "stampit": "=4.3.2" - } - }, - "@swagger-api/apidom-ns-asyncapi-2": { - "version": "0.69.2", - "resolved": "https://registry.npmjs.org/@swagger-api/apidom-ns-asyncapi-2/-/apidom-ns-asyncapi-2-0.69.2.tgz", - "integrity": "sha512-SOg9P4rM5Aj2jabt4njmFbZTRMX8/vRHgiDL9vE+uz7s6j64B9QBSFF42j17cEVq6ToqQ7jtu40f1D7K62puQA==", - "optional": true, - "requires": { - "@babel/runtime-corejs3": "^7.20.7", - "@swagger-api/apidom-core": "^0.69.2", - "@swagger-api/apidom-ns-json-schema-draft-7": "^0.69.2", - "@types/ramda": "=0.28.23", - "ramda": "=0.28.0", - "ramda-adjunct": "=3.4.0", - "stampit": "=4.3.2" - } - }, - "@swagger-api/apidom-ns-json-schema-draft-4": { - "version": "0.69.2", - "resolved": "https://registry.npmjs.org/@swagger-api/apidom-ns-json-schema-draft-4/-/apidom-ns-json-schema-draft-4-0.69.2.tgz", - "integrity": "sha512-8yB4afGBAX+vN5oNRxZMWWS/2G0Q9VUzlL2AOu0Q70FQkscbjQcsb6QX9LbHFMrwi3MgOgE0ewMncpcwskuoXA==", - "requires": { - "@babel/runtime-corejs3": "^7.20.7", - "@swagger-api/apidom-core": "^0.69.2", - "@types/ramda": "=0.28.23", - "ramda": "=0.28.0", - "ramda-adjunct": "=3.4.0", - "stampit": "=4.3.2" + "node_modules/babel-plugin-transform-es2015-modules-amd": { + "version": "6.24.1", + "license": "MIT", + "dependencies": { + "babel-plugin-transform-es2015-modules-commonjs": "^6.24.1", + "babel-runtime": "^6.22.0", + "babel-template": "^6.24.1" } }, - "@swagger-api/apidom-ns-json-schema-draft-6": { - "version": "0.69.2", - "resolved": "https://registry.npmjs.org/@swagger-api/apidom-ns-json-schema-draft-6/-/apidom-ns-json-schema-draft-6-0.69.2.tgz", - "integrity": "sha512-RPazXv7L37vrdqHeFy/ZrKVz+vnVOqEFrHFefaq2L5avnzInVTRsTJm+61q0jqnckozz426Gbg5wJgq+Yvpbqg==", - "optional": true, - "requires": { - "@babel/runtime-corejs3": "^7.20.7", - "@swagger-api/apidom-core": "^0.69.2", - "@swagger-api/apidom-ns-json-schema-draft-4": "^0.69.2", - "@types/ramda": "=0.28.23", - "ramda": "=0.28.0", - "ramda-adjunct": "=3.4.0", - "stampit": "=4.3.2" - } - }, - "@swagger-api/apidom-ns-json-schema-draft-7": { - "version": "0.69.2", - "resolved": "https://registry.npmjs.org/@swagger-api/apidom-ns-json-schema-draft-7/-/apidom-ns-json-schema-draft-7-0.69.2.tgz", - "integrity": "sha512-pQQE85xjv+UaObQzkhpOPochQ8GhWETAUuzDxHrgKmw20Ca03QAC7RV3tbSnkIbI5cy9wpb4gRM0T5/PzZnBYA==", - "optional": true, - "requires": { - "@babel/runtime-corejs3": "^7.20.7", - "@swagger-api/apidom-core": "^0.69.2", - "@swagger-api/apidom-ns-json-schema-draft-6": "^0.69.2", - "@types/ramda": "=0.28.23", - "ramda": "=0.28.0", - "ramda-adjunct": "=3.4.0", - "stampit": "=4.3.2" - } - }, - "@swagger-api/apidom-ns-openapi-3-0": { - "version": "0.69.2", - "resolved": "https://registry.npmjs.org/@swagger-api/apidom-ns-openapi-3-0/-/apidom-ns-openapi-3-0-0.69.2.tgz", - "integrity": "sha512-OroXRC+Q1btrpuQ3+ZbMi9XGYiab3YQMg/Rx1wpszbW5C5IPtaa2/FtMcBGYWR5IIdxi+bAT8itbMBGSCcz/Ew==", - "requires": { - "@babel/runtime-corejs3": "^7.20.7", - "@swagger-api/apidom-core": "^0.69.2", - "@swagger-api/apidom-ns-json-schema-draft-4": "^0.69.2", - "@types/ramda": "=0.28.23", - "ramda": "=0.28.0", - "ramda-adjunct": "=3.4.0", - "stampit": "=4.3.2" - } - }, - "@swagger-api/apidom-ns-openapi-3-1": { - "version": "0.69.2", - "resolved": "https://registry.npmjs.org/@swagger-api/apidom-ns-openapi-3-1/-/apidom-ns-openapi-3-1-0.69.2.tgz", - "integrity": "sha512-2yyUmdbvkDnZuOGDduvlp4dtLL/8a1PCR+Ajk9+PR4ZTdbMFtZWcr/knGc33Rtr8eXQwd4NPypFHhTLCEHiGwg==", - "requires": { - "@babel/runtime-corejs3": "^7.20.7", - "@swagger-api/apidom-core": "^0.69.2", - "@swagger-api/apidom-ns-openapi-3-0": "^0.69.2", - "@types/ramda": "=0.28.23", - "ramda": "=0.28.0", - "ramda-adjunct": "=3.4.0", - "stampit": "=4.3.2" - } - }, - "@swagger-api/apidom-parser-adapter-api-design-systems-json": { - "version": "0.69.2", - "resolved": "https://registry.npmjs.org/@swagger-api/apidom-parser-adapter-api-design-systems-json/-/apidom-parser-adapter-api-design-systems-json-0.69.2.tgz", - "integrity": "sha512-qVL8JrnsjuD3uS1PTNoBTKd5YXPs2SfxRGyKwcmrUXFS+jJmbyYF04xmCgXkwI6TZYjY6KlNb8vmOt4Xr8FqnA==", - "optional": true, - "requires": { - "@babel/runtime-corejs3": "^7.20.7", - "@swagger-api/apidom-core": "^0.69.2", - "@swagger-api/apidom-ns-api-design-systems": "^0.69.2", - "@swagger-api/apidom-parser-adapter-json": "^0.69.2", - "@types/ramda": "=0.28.23", - "ramda": "=0.28.0", - "ramda-adjunct": "=3.4.0" - } - }, - "@swagger-api/apidom-parser-adapter-api-design-systems-yaml": { - "version": "0.69.2", - "resolved": "https://registry.npmjs.org/@swagger-api/apidom-parser-adapter-api-design-systems-yaml/-/apidom-parser-adapter-api-design-systems-yaml-0.69.2.tgz", - "integrity": "sha512-vMWfQiXcSeo9XSJJ1Yny4BAUw/3RBbBTsPBbNSsnMtpcDhBbodxdko1CeYkGc8sKM0QyeTFPJuiVhb3kGidbcQ==", - "optional": true, - "requires": { - "@babel/runtime-corejs3": "^7.20.7", - "@swagger-api/apidom-core": "^0.69.2", - "@swagger-api/apidom-ns-api-design-systems": "^0.69.2", - "@swagger-api/apidom-parser-adapter-yaml-1-2": "^0.69.2", - "@types/ramda": "=0.28.23", - "ramda": "=0.28.0", - "ramda-adjunct": "=3.4.0" - } - }, - "@swagger-api/apidom-parser-adapter-asyncapi-json-2": { - "version": "0.69.2", - "resolved": "https://registry.npmjs.org/@swagger-api/apidom-parser-adapter-asyncapi-json-2/-/apidom-parser-adapter-asyncapi-json-2-0.69.2.tgz", - "integrity": "sha512-/WDVzOcGFxSgBVCiXHVnfiOeYIWtn2RG/Bnn8leUmWRN9oRBiCS3Lh60qWVpvs4BOVntL7SYJnC+buicKD1iJA==", - "optional": true, - "requires": { - "@babel/runtime-corejs3": "^7.20.7", - "@swagger-api/apidom-core": "^0.69.2", - "@swagger-api/apidom-ns-asyncapi-2": "^0.69.2", - "@swagger-api/apidom-parser-adapter-json": "^0.69.2", - "@types/ramda": "=0.28.23", - "ramda": "=0.28.0", - "ramda-adjunct": "=3.4.0" - } - }, - "@swagger-api/apidom-parser-adapter-asyncapi-yaml-2": { - "version": "0.69.2", - "resolved": "https://registry.npmjs.org/@swagger-api/apidom-parser-adapter-asyncapi-yaml-2/-/apidom-parser-adapter-asyncapi-yaml-2-0.69.2.tgz", - "integrity": "sha512-qr5epdayokdYyPIJITyqWmUxdknhgPbXhWpSxdEvM8UHgtyutvvvFenFM5pXD1ft8I/uv9oj2WNZxCH2mpsR1g==", - "optional": true, - "requires": { - "@babel/runtime-corejs3": "^7.20.7", - "@swagger-api/apidom-core": "^0.69.2", - "@swagger-api/apidom-ns-asyncapi-2": "^0.69.2", - "@swagger-api/apidom-parser-adapter-yaml-1-2": "^0.69.2", - "@types/ramda": "=0.28.23", - "ramda": "=0.28.0", - "ramda-adjunct": "=3.4.0" - } - }, - "@swagger-api/apidom-parser-adapter-json": { - "version": "0.69.2", - "resolved": "https://registry.npmjs.org/@swagger-api/apidom-parser-adapter-json/-/apidom-parser-adapter-json-0.69.2.tgz", - "integrity": "sha512-mRXrf9bz2lxf9DY2n2WkB3GlQ8MXRqKBwpXLwjDqqve25Wf6X8QNzfz5ykYORQMuyDIgPq/8aMet7yjHRNtcUQ==", - "optional": true, - "requires": { - "@babel/runtime-corejs3": "^7.20.7", - "@swagger-api/apidom-ast": "^0.69.0", - "@swagger-api/apidom-core": "^0.69.2", - "@types/ramda": "=0.28.23", - "ramda": "=0.28.0", - "ramda-adjunct": "=3.4.0", - "stampit": "=4.3.2", - "tree-sitter": "=0.20.1", - "tree-sitter-json": "=0.20.0", - "web-tree-sitter": "=0.20.7" - } - }, - "@swagger-api/apidom-parser-adapter-openapi-json-3-0": { - "version": "0.69.2", - "resolved": "https://registry.npmjs.org/@swagger-api/apidom-parser-adapter-openapi-json-3-0/-/apidom-parser-adapter-openapi-json-3-0-0.69.2.tgz", - "integrity": "sha512-NGOX9NcrAy1RX1f+uA2rLZbgVWte6O4HRVk0eVjuR3NKjJzuXFdfaYJUpT8IGJx2cW6HsQtJU+BpR+LMfZnM9A==", - "optional": true, - "requires": { - "@babel/runtime-corejs3": "^7.20.7", - "@swagger-api/apidom-core": "^0.69.2", - "@swagger-api/apidom-ns-openapi-3-0": "^0.69.2", - "@swagger-api/apidom-parser-adapter-json": "^0.69.2", - "@types/ramda": "=0.28.23", - "ramda": "=0.28.0", - "ramda-adjunct": "=3.4.0" - } - }, - "@swagger-api/apidom-parser-adapter-openapi-json-3-1": { - "version": "0.69.2", - "resolved": "https://registry.npmjs.org/@swagger-api/apidom-parser-adapter-openapi-json-3-1/-/apidom-parser-adapter-openapi-json-3-1-0.69.2.tgz", - "integrity": "sha512-agafo94Uru42/nnydZ2wEt3ENAB6LWAd9l4d8wZL0ifAkjx8fv8rfH601LpFBQq3iD2DlGm0+UpFZXLfBuuQbQ==", - "optional": true, - "requires": { - "@babel/runtime-corejs3": "^7.20.7", - "@swagger-api/apidom-core": "^0.69.2", - "@swagger-api/apidom-ns-openapi-3-1": "^0.69.2", - "@swagger-api/apidom-parser-adapter-json": "^0.69.2", - "@types/ramda": "=0.28.23", - "ramda": "=0.28.0", - "ramda-adjunct": "=3.4.0" - } - }, - "@swagger-api/apidom-parser-adapter-openapi-yaml-3-0": { - "version": "0.69.2", - "resolved": "https://registry.npmjs.org/@swagger-api/apidom-parser-adapter-openapi-yaml-3-0/-/apidom-parser-adapter-openapi-yaml-3-0-0.69.2.tgz", - "integrity": "sha512-p7Wqk7vCgh9mkXQmk9I/uXri2+1MLCQ14NHfrVowey4ntH4LzBf0NtvxgfCryzzLb2RpdUwIxoh+uf4ibTzyyA==", - "optional": true, - "requires": { - "@babel/runtime-corejs3": "^7.20.7", - "@swagger-api/apidom-core": "^0.69.2", - "@swagger-api/apidom-ns-openapi-3-0": "^0.69.2", - "@swagger-api/apidom-parser-adapter-yaml-1-2": "^0.69.2", - "@types/ramda": "=0.28.23", - "ramda": "=0.28.0", - "ramda-adjunct": "=3.4.0" - } - }, - "@swagger-api/apidom-parser-adapter-openapi-yaml-3-1": { - "version": "0.69.2", - "resolved": "https://registry.npmjs.org/@swagger-api/apidom-parser-adapter-openapi-yaml-3-1/-/apidom-parser-adapter-openapi-yaml-3-1-0.69.2.tgz", - "integrity": "sha512-Dq914JCnOqmRl6DyxeaP91MlZvIn62hax4RsANeiHIm2ICwwCQLNM9RNUkWq3iimHZpvTz+etM3QkKMakXUnqQ==", - "optional": true, - "requires": { - "@babel/runtime-corejs3": "^7.20.7", - "@swagger-api/apidom-core": "^0.69.2", - "@swagger-api/apidom-ns-openapi-3-1": "^0.69.2", - "@swagger-api/apidom-parser-adapter-yaml-1-2": "^0.69.2", - "@types/ramda": "=0.28.23", - "ramda": "=0.28.0", - "ramda-adjunct": "=3.4.0" - } - }, - "@swagger-api/apidom-parser-adapter-yaml-1-2": { - "version": "0.69.2", - "resolved": "https://registry.npmjs.org/@swagger-api/apidom-parser-adapter-yaml-1-2/-/apidom-parser-adapter-yaml-1-2-0.69.2.tgz", - "integrity": "sha512-5sWKGF/phSd+kvOD8xfB2W26QeN2U6LOoLy6eYvf8DP5q4doiLoEcVIunpcVjl04IWVet+VFH9XFGEMlKk7qKQ==", - "optional": true, - "requires": { - "@babel/runtime-corejs3": "^7.20.7", - "@swagger-api/apidom-ast": "^0.69.0", - "@swagger-api/apidom-core": "^0.69.2", - "@types/ramda": "=0.28.23", - "ramda": "=0.28.0", - "ramda-adjunct": "=3.4.0", - "stampit": "=4.3.2", - "tree-sitter": "=0.20.1", - "tree-sitter-yaml": "=0.5.0", - "web-tree-sitter": "=0.20.7" + "node_modules/babel-plugin-transform-es2015-modules-commonjs": { + "version": "6.26.2", + "license": "MIT", + "dependencies": { + "babel-plugin-transform-strict-mode": "^6.24.1", + "babel-runtime": "^6.26.0", + "babel-template": "^6.26.0", + "babel-types": "^6.26.0" } }, - "@swagger-api/apidom-reference": { - "version": "0.69.2", - "resolved": "https://registry.npmjs.org/@swagger-api/apidom-reference/-/apidom-reference-0.69.2.tgz", - "integrity": "sha512-aJsgtCP71t8a+frS+qn1FW9MqjjK60c3AnB2G3cUXGVwzmEPEkvBFF0LGlPmHftVvzzBvI7AsMC7+HZPM/t7rQ==", - "requires": { - "@babel/runtime-corejs3": "^7.20.7", - "@swagger-api/apidom-core": "^0.69.2", - "@swagger-api/apidom-json-pointer": "^0.69.2", - "@swagger-api/apidom-ns-asyncapi-2": "^0.69.2", - "@swagger-api/apidom-ns-openapi-3-0": "^0.69.2", - "@swagger-api/apidom-ns-openapi-3-1": "^0.69.2", - "@swagger-api/apidom-parser-adapter-api-design-systems-json": "^0.69.2", - "@swagger-api/apidom-parser-adapter-api-design-systems-yaml": "^0.69.2", - "@swagger-api/apidom-parser-adapter-asyncapi-json-2": "^0.69.2", - "@swagger-api/apidom-parser-adapter-asyncapi-yaml-2": "^0.69.2", - "@swagger-api/apidom-parser-adapter-json": "^0.69.2", - "@swagger-api/apidom-parser-adapter-openapi-json-3-0": "^0.69.2", - "@swagger-api/apidom-parser-adapter-openapi-json-3-1": "^0.69.2", - "@swagger-api/apidom-parser-adapter-openapi-yaml-3-0": "^0.69.2", - "@swagger-api/apidom-parser-adapter-openapi-yaml-3-1": "^0.69.2", - "@swagger-api/apidom-parser-adapter-yaml-1-2": "^0.69.2", - "@types/ramda": "=0.28.23", - "axios": "=1.3.4", - "minimatch": "=7.4.3", - "process": "=0.11.10", - "ramda": "=0.28.0", - "ramda-adjunct": "=3.4.0", - "stampit": "=4.3.2" - }, - "dependencies": { - "brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", - "requires": { - "balanced-match": "^1.0.0" - } - }, - "minimatch": { - "version": "7.4.3", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-7.4.3.tgz", - "integrity": "sha512-5UB4yYusDtkRPbRiy1cqZ1IpGNcJCGlEMG17RKzPddpyiPKoCdwohbED8g4QXT0ewCt8LTkQXuljsUfQ3FKM4A==", - "requires": { - "brace-expansion": "^2.0.1" - } - } + "node_modules/babel-plugin-transform-es2015-modules-umd": { + "version": "6.24.1", + "license": "MIT", + "dependencies": { + "babel-plugin-transform-es2015-modules-amd": "^6.24.1", + "babel-runtime": "^6.22.0", + "babel-template": "^6.24.1" } }, - "@szmarczak/http-timer": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@szmarczak/http-timer/-/http-timer-1.1.2.tgz", - "integrity": "sha512-XIB2XbzHTN6ieIjfIMV9hlVcfPU26s2vafYWQcZHWXHOxiaRZYEDKEwdl129Zyg50+foYV2jCgtrqSA6qNuNSA==", - "dev": true, - "requires": { - "defer-to-connect": "^1.0.1" + "node_modules/babel-plugin-transform-member-expression-literals": { + "version": "6.9.4", + "license": "MIT" + }, + "node_modules/babel-plugin-transform-merge-sibling-variables": { + "version": "6.9.5", + "license": "MIT" + }, + "node_modules/babel-plugin-transform-minify-booleans": { + "version": "6.9.4", + "license": "MIT" + }, + "node_modules/babel-plugin-transform-property-literals": { + "version": "6.9.4", + "license": "MIT", + "dependencies": { + "esutils": "^2.0.2" } }, - "@turf/bbox": { - "version": "4.7.3", - "resolved": "https://registry.npmjs.org/@turf/bbox/-/bbox-4.7.3.tgz", - "integrity": "sha1-461PEKfptBtSKIDTMIMZgZkFkGc=", - "requires": { - "@turf/meta": "^4.7.3" + "node_modules/babel-plugin-transform-strict-mode": { + "version": "6.24.1", + "license": "MIT", + "dependencies": { + "babel-runtime": "^6.22.0", + "babel-types": "^6.24.1" } }, - "@turf/center": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/@turf/center/-/center-4.3.0.tgz", - "integrity": "sha1-lYeVnTwXF/uZt6U8h4qqVxAJ+7Q=", - "requires": { - "@turf/bbox": "^4.3.0", - "@turf/helpers": "^4.3.0" + "node_modules/babel-runtime": { + "version": "6.26.0", + "license": "MIT", + "dependencies": { + "core-js": "^2.4.0", + "regenerator-runtime": "^0.11.0" } }, - "@turf/helpers": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/@turf/helpers/-/helpers-4.3.0.tgz", - "integrity": "sha1-ey9zOqDrPqHwfUZ6wC7eAMxs3g0=" + "node_modules/babel-runtime/node_modules/regenerator-runtime": { + "version": "0.11.1", + "license": "MIT" }, - "@turf/kinks": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/@turf/kinks/-/kinks-4.3.0.tgz", - "integrity": "sha1-csm5hm2RqDTivoIkGcXKOtwn9UQ=", - "requires": { - "@turf/helpers": "^4.3.0" + "node_modules/babel-template": { + "version": "6.26.0", + "license": "MIT", + "dependencies": { + "babel-runtime": "^6.26.0", + "babel-traverse": "^6.26.0", + "babel-types": "^6.26.0", + "babylon": "^6.18.0", + "lodash": "^4.17.4" + } + }, + "node_modules/babel-traverse": { + "version": "6.26.0", + "license": "MIT", + "dependencies": { + "babel-code-frame": "^6.26.0", + "babel-messages": "^6.23.0", + "babel-runtime": "^6.26.0", + "babel-types": "^6.26.0", + "babylon": "^6.18.0", + "debug": "^2.6.8", + "globals": "^9.18.0", + "invariant": "^2.2.2", + "lodash": "^4.17.4" } }, - "@turf/meta": { - "version": "4.7.4", - "resolved": "https://registry.npmjs.org/@turf/meta/-/meta-4.7.4.tgz", - "integrity": "sha1-beLx6YkLj2S2aeS0fAmyCJMGOXc=" - }, - "@tweenjs/tween.js": { - "version": "17.4.0", - "resolved": "https://registry.npmjs.org/@tweenjs/tween.js/-/tween.js-17.4.0.tgz", - "integrity": "sha512-J3fzl1F6wvh8KXVVcIuHN12xi1ZDcPA/0Vix+ZcJYwZWVHUwfIqfvzYXXEw7ybeev6477KCTt9fKydU+ajUqcg==" - }, - "@types/angular": { - "version": "1.8.4", - "resolved": "https://registry.npmjs.org/@types/angular/-/angular-1.8.4.tgz", - "integrity": "sha512-wPS/ncJWhyxJsndsW1B6Ta8D4mi97x1yItSu+rkLDytU3oRIh2CFAjMuJceYwFAh9+DIohndWM0QBA9OU2Hv0g==", - "dev": true + "node_modules/babel-traverse/node_modules/debug": { + "version": "2.6.9", + "license": "MIT", + "dependencies": { + "ms": "2.0.0" + } }, - "@types/estree": { - "version": "0.0.39", - "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.39.tgz", - "integrity": "sha512-EYNwp3bU+98cpU4lAWYYL7Zz+2gryWH1qbdDTidVd6hkiR6weksdbMadyXKXNPEkQFhXM+hVO9ZygomHXp+AIw==", - "dev": true + "node_modules/babel-traverse/node_modules/globals": { + "version": "9.18.0", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } }, - "@types/geojson": { - "version": "7946.0.7", - "resolved": "https://registry.npmjs.org/@types/geojson/-/geojson-7946.0.7.tgz", - "integrity": "sha512-wE2v81i4C4Ol09RtsWFAqg3BUitWbHSpSlIo+bNdsCJijO9sjme+zm+73ZMCa/qMC8UEERxzGbvmr1cffo2SiQ==" + "node_modules/babel-traverse/node_modules/ms": { + "version": "2.0.0", + "license": "MIT" }, - "@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": "*" + "node_modules/babel-types": { + "version": "6.26.0", + "license": "MIT", + "dependencies": { + "babel-runtime": "^6.26.0", + "esutils": "^2.0.2", + "lodash": "^4.17.4", + "to-fast-properties": "^1.0.3" } }, - "@types/hammerjs": { - "version": "2.0.41", - "resolved": "https://registry.npmjs.org/@types/hammerjs/-/hammerjs-2.0.41.tgz", - "integrity": "sha512-ewXv/ceBaJprikMcxCmWU1FKyMAQ2X7a9Gtmzw8fcg2kIePI1crERDM818W+XYrxqdBBOdlf2rm137bU+BltCA==", - "dev": true + "node_modules/babel-types/node_modules/to-fast-properties": { + "version": "1.0.3", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } }, - "@types/hast": { - "version": "2.3.4", - "resolved": "https://registry.npmjs.org/@types/hast/-/hast-2.3.4.tgz", - "integrity": "sha512-wLEm0QvaoawEDoTRwzTXp4b4jpwiJDvR5KMnFnVodm3scufTlBOWRD6N1OBf9TZMhjlNsSfcO5V+7AF4+Vy+9g==", - "requires": { - "@types/unist": "*" + "node_modules/babylon": { + "version": "6.18.0", + "license": "MIT", + "bin": { + "babylon": "bin/babylon.js" } }, - "@types/inputmask": { - "version": "5.0.3", - "resolved": "https://registry.npmjs.org/@types/inputmask/-/inputmask-5.0.3.tgz", - "integrity": "sha512-9aTXacRhf9D3+porVydLR28ll8/y3TQIrXEXv7ZWY0c3Lzl/1r4nHoaesZeh2Fd+UIefpWZrg2tkSnDn/dKUsw==", - "dev": true + "node_modules/balanced-match": { + "version": "1.0.2", + "license": "MIT" }, - "@types/jasmine": { - "version": "3.3.16", - "resolved": "https://registry.npmjs.org/@types/jasmine/-/jasmine-3.3.16.tgz", - "integrity": "sha512-Nveep4zKGby8uIvG2AEUyYOwZS8uVeHK9TgbuWYSawUDDdIgfhCKz28QzamTo//Jk7Ztt9PO3f+vzlB6a4GV1Q==", - "dev": true + "node_modules/base64-js": { + "version": "1.5.1", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT" }, - "@types/jasminewd2": { - "version": "2.0.10", - "resolved": "https://registry.npmjs.org/@types/jasminewd2/-/jasminewd2-2.0.10.tgz", - "integrity": "sha512-J7mDz7ovjwjc+Y9rR9rY53hFWKATcIkrr9DwQWmOas4/pnIPJTXawnzjwpHm3RSxz/e3ZVUvQ7cRbd5UQLo10g==", + "node_modules/base64id": { + "version": "2.0.0", "dev": true, - "requires": { - "@types/jasmine": "*" + "license": "MIT", + "engines": { + "node": "^4.5.0 || >= 5.9" } }, - "@types/json-schema": { - "version": "7.0.11", - "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.11.tgz", - "integrity": "sha512-wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ==", - "dev": true + "node_modules/batch": { + "version": "0.6.1", + "dev": true, + "license": "MIT" }, - "@types/leaflet": { - "version": "1.5.4", - "resolved": "https://registry.npmjs.org/@types/leaflet/-/leaflet-1.5.4.tgz", - "integrity": "sha512-hAiiY7S25N8Ax+vA7FX29j1Hzn7bTziRnkKSj5jfOpud2JUcp/qZHGKCgxWW2TH581a00fDVBhto4xRox8GHXw==", + "node_modules/big.js": { + "version": "5.2.2", "dev": true, - "requires": { - "@types/geojson": "*" + "license": "MIT", + "engines": { + "node": "*" } }, - "@types/lodash": { - "version": "4.14.181", - "resolved": "https://registry.npmjs.org/@types/lodash/-/lodash-4.14.181.tgz", - "integrity": "sha512-n3tyKthHJbkiWhDZs3DkhkCzt2MexYHXlX0td5iMplyfwketaOeKboEVBqzceH7juqvEg3q5oUoBFxSLu7zFag==", - "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/node": { - "version": "12.20.47", - "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.47.tgz", - "integrity": "sha512-BzcaRsnFuznzOItW1WpQrDHM7plAa7GIDMZ6b5pnMbkqEtM/6WCOhvZar39oeMQP79gwvFUWjjptE7/KGcNqFg==", - "dev": true + "node_modules/binary-extensions": { + "version": "2.3.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } }, - "@types/normalize-package-data": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/@types/normalize-package-data/-/normalize-package-data-2.4.1.tgz", - "integrity": "sha512-Gj7cI7z+98M282Tqmp2K5EIsoouUEzbBJhQQzDE3jSIRk6r9gsz0oUokqIUR4u1R3dMHo0pDHM7sNOHyhulypw==", - "dev": true + "node_modules/bl": { + "version": "4.1.0", + "devOptional": true, + "license": "MIT", + "dependencies": { + "buffer": "^5.5.0", + "inherits": "^2.0.4", + "readable-stream": "^3.4.0" + } }, - "@types/q": { - "version": "1.5.5", - "resolved": "https://registry.npmjs.org/@types/q/-/q-1.5.5.tgz", - "integrity": "sha512-L28j2FcJfSZOnL1WBjDYp2vUHCeIFlyYI/53EwD/rKUBQ7MtUUfbQWiyKJGpcnv4/WgrhWsFKrcPstcAt/J0tQ==", - "dev": true + "node_modules/bl/node_modules/readable-stream": { + "version": "3.6.2", + "devOptional": true, + "license": "MIT", + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } }, - "@types/ramda": { - "version": "0.28.23", - "resolved": "https://registry.npmjs.org/@types/ramda/-/ramda-0.28.23.tgz", - "integrity": "sha512-9TYWiwkew+mCMsL7jZ+kkzy6QXn8PL5/SKmBPmjgUlTpkokZWTBr+OhiIUDztpAEbslWyt24NNfEmZUBFmnXig==", - "requires": { - "ts-toolbelt": "^6.15.1" + "node_modules/bl/node_modules/string_decoder": { + "version": "1.3.0", + "devOptional": true, + "license": "MIT", + "dependencies": { + "safe-buffer": "~5.2.0" } }, - "@types/resolve": { - "version": "0.0.8", - "resolved": "https://registry.npmjs.org/@types/resolve/-/resolve-0.0.8.tgz", - "integrity": "sha512-auApPaJf3NPfe18hSoJkp8EbZzer2ISk7o8mCC3M9he/a04+gbMF97NkpD2S8riMGvm4BMRI59/SZQSaLTKpsQ==", + "node_modules/body-parser": { + "version": "1.20.2", "dev": true, - "requires": { - "@types/node": "*" + "license": "MIT", + "dependencies": { + "bytes": "3.1.2", + "content-type": "~1.0.5", + "debug": "2.6.9", + "depd": "2.0.0", + "destroy": "1.2.0", + "http-errors": "2.0.0", + "iconv-lite": "0.4.24", + "on-finished": "2.4.1", + "qs": "6.11.0", + "raw-body": "2.5.2", + "type-is": "~1.6.18", + "unpipe": "1.0.0" + }, + "engines": { + "node": ">= 0.8", + "npm": "1.2.8000 || >= 1.4.16" } }, - "@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/source-list-map": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/@types/source-list-map/-/source-list-map-0.1.2.tgz", - "integrity": "sha512-K5K+yml8LTo9bWJI/rECfIPrGgxdpeNbj+d53lwN4QjW1MCwlkhUms+gtdzigTeUyBr09+u8BwOIY3MXvHdcsA==", - "dev": true - }, - "@types/tween.js": { - "version": "17.2.0", - "resolved": "https://registry.npmjs.org/@types/tween.js/-/tween.js-17.2.0.tgz", - "integrity": "sha512-mOsqurEtFEzwgkVc/jDVE2XrjZBYTbrmDUyCr9GXmnfc6q5otokxFtKvSY/B21zgz9LVRIvRTawKczjKi57wrA==" + "node_modules/body-parser/node_modules/debug": { + "version": "2.6.9", + "dev": true, + "license": "MIT", + "dependencies": { + "ms": "2.0.0" + } }, - "@types/unist": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.6.tgz", - "integrity": "sha512-PBjIUxZHOuj0R15/xuwJYjFi+KZdNFrehocChv4g5hu6aFroHue8m0lBP0POdK2nKzbw0cgV1mws8+V/JAcEkQ==" + "node_modules/body-parser/node_modules/ms": { + "version": "2.0.0", + "dev": true, + "license": "MIT" }, - "@types/webpack-sources": { - "version": "0.1.9", - "resolved": "https://registry.npmjs.org/@types/webpack-sources/-/webpack-sources-0.1.9.tgz", - "integrity": "sha512-bvzMnzqoK16PQIC8AYHNdW45eREJQMd6WG/msQWX5V2+vZmODCOPb4TJcbgRljTZZTwTM4wUMcsI8FftNA7new==", + "node_modules/bonjour-service": { + "version": "1.2.1", "dev": true, - "requires": { - "@types/node": "*", - "@types/source-list-map": "*", - "source-map": "^0.6.1" + "license": "MIT", + "dependencies": { + "fast-deep-equal": "^3.1.3", + "multicast-dns": "^7.2.5" } }, - "@uirouter/angular": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/@uirouter/angular/-/angular-6.0.1.tgz", - "integrity": "sha512-7UU3rv1rY0oobL3gUpeJ8QpazbgcDxG1JomBvzE7kYyxkVNBZ3rDhPRbzXTniaUXC2J56CEBE9PMtXNPDSxPyQ==", - "requires": { - "tslib": "^1.9.0" - } + "node_modules/boolbase": { + "version": "1.0.0", + "dev": true, + "license": "ISC" }, - "@uirouter/angular-hybrid": { - "version": "10.0.1", - "resolved": "https://registry.npmjs.org/@uirouter/angular-hybrid/-/angular-hybrid-10.0.1.tgz", - "integrity": "sha512-Htc38UxuijB0fEjEgzvV0oxd/3GbH6faO6Y9um7E3V33CLGnEfmQLG2lMVHOWkp3S3rx+/iIkdYKP/GClycEew==", - "requires": { - "tslib": "^1.9.0" + "node_modules/brace-expansion": { + "version": "2.0.1", + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0" } }, - "@uirouter/angularjs": { - "version": "1.0.24", - "resolved": "https://registry.npmjs.org/@uirouter/angularjs/-/angularjs-1.0.24.tgz", - "integrity": "sha512-Q+gR5eskbOwK5DlzSOOXx3MGWbKq5xQrcF0T4csHXOHUBuGO26n6QTPFYsPwg0AfpC5yNou3jrDonI+UR8wDEg==", - "requires": { - "@uirouter/core": "6.0.3" - }, + "node_modules/braces": { + "version": "3.0.3", + "dev": true, + "license": "MIT", "dependencies": { - "@uirouter/core": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/@uirouter/core/-/core-6.0.3.tgz", - "integrity": "sha512-ftAQw9czKUSgLFC3LwOeJP97PDQ6naHcEK0NrbWw3X/r49oQJBMRFAsz9oEKqPFPD2vUDqkvG18BZXglLp8k+Q==" + "fill-range": "^7.1.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/browserslist": { + "version": "4.23.3", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" } + ], + "license": "MIT", + "dependencies": { + "caniuse-lite": "^1.0.30001646", + "electron-to-chromium": "^1.5.4", + "node-releases": "^2.0.18", + "update-browserslist-db": "^1.1.0" + }, + "bin": { + "browserslist": "cli.js" + }, + "engines": { + "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" } }, - "@uirouter/core": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/@uirouter/core/-/core-6.0.3.tgz", - "integrity": "sha512-ftAQw9czKUSgLFC3LwOeJP97PDQ6naHcEK0NrbWw3X/r49oQJBMRFAsz9oEKqPFPD2vUDqkvG18BZXglLp8k+Q==" - }, - "@uirouter/rx": { - "version": "0.6.5", - "resolved": "https://registry.npmjs.org/@uirouter/rx/-/rx-0.6.5.tgz", - "integrity": "sha512-srGdX+BAVTfpZ1Kl7tvdEN1ss8yctKO4YrGyy9E/4s80bGFp4KMe9Qf2L3UHn0iugBZlX7Nbmp305AQSzWXYrw==" - }, - "@webassemblyjs/ast": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.8.5.tgz", - "integrity": "sha512-aJMfngIZ65+t71C3y2nBBg5FFG0Okt9m0XEgWZ7Ywgn1oMAT8cNwx00Uv1cQyHtidq0Xn94R4TAywO+LCQ+ZAQ==", - "dev": true, - "requires": { - "@webassemblyjs/helper-module-context": "1.8.5", - "@webassemblyjs/helper-wasm-bytecode": "1.8.5", - "@webassemblyjs/wast-parser": "1.8.5" - } - }, - "@webassemblyjs/floating-point-hex-parser": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.8.5.tgz", - "integrity": "sha512-9p+79WHru1oqBh9ewP9zW95E3XAo+90oth7S5Re3eQnECGq59ly1Ri5tsIipKGpiStHsUYmY3zMLqtk3gTcOtQ==", - "dev": true - }, - "@webassemblyjs/helper-api-error": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.8.5.tgz", - "integrity": "sha512-Za/tnzsvnqdaSPOUXHyKJ2XI7PDX64kWtURyGiJJZKVEdFOsdKUCPTNEVFZq3zJ2R0G5wc2PZ5gvdTRFgm81zA==", - "dev": true - }, - "@webassemblyjs/helper-buffer": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.8.5.tgz", - "integrity": "sha512-Ri2R8nOS0U6G49Q86goFIPNgjyl6+oE1abW1pS84BuhP1Qcr5JqMwRFT3Ah3ADDDYGEgGs1iyb1DGX+kAi/c/Q==", - "dev": true - }, - "@webassemblyjs/helper-code-frame": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-code-frame/-/helper-code-frame-1.8.5.tgz", - "integrity": "sha512-VQAadSubZIhNpH46IR3yWO4kZZjMxN1opDrzePLdVKAZ+DFjkGD/rf4v1jap744uPVU6yjL/smZbRIIJTOUnKQ==", - "dev": true, - "requires": { - "@webassemblyjs/wast-printer": "1.8.5" - } - }, - "@webassemblyjs/helper-fsm": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-fsm/-/helper-fsm-1.8.5.tgz", - "integrity": "sha512-kRuX/saORcg8se/ft6Q2UbRpZwP4y7YrWsLXPbbmtepKr22i8Z4O3V5QE9DbZK908dh5Xya4Un57SDIKwB9eow==", - "dev": true - }, - "@webassemblyjs/helper-module-context": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-module-context/-/helper-module-context-1.8.5.tgz", - "integrity": "sha512-/O1B236mN7UNEU4t9X7Pj38i4VoU8CcMHyy3l2cV/kIF4U5KoHXDVqcDuOs1ltkac90IM4vZdHc52t1x8Yfs3g==", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.8.5", - "mamacro": "^0.0.3" - } - }, - "@webassemblyjs/helper-wasm-bytecode": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.8.5.tgz", - "integrity": "sha512-Cu4YMYG3Ddl72CbmpjU/wbP6SACcOPVbHN1dI4VJNJVgFwaKf1ppeFJrwydOG3NDHxVGuCfPlLZNyEdIYlQ6QQ==", - "dev": true - }, - "@webassemblyjs/helper-wasm-section": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.8.5.tgz", - "integrity": "sha512-VV083zwR+VTrIWWtgIUpqfvVdK4ff38loRmrdDBgBT8ADXYsEZ5mPQ4Nde90N3UYatHdYoDIFb7oHzMncI02tA==", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.8.5", - "@webassemblyjs/helper-buffer": "1.8.5", - "@webassemblyjs/helper-wasm-bytecode": "1.8.5", - "@webassemblyjs/wasm-gen": "1.8.5" - } - }, - "@webassemblyjs/ieee754": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.8.5.tgz", - "integrity": "sha512-aaCvQYrvKbY/n6wKHb/ylAJr27GglahUO89CcGXMItrOBqRarUMxWLJgxm9PJNuKULwN5n1csT9bYoMeZOGF3g==", - "dev": true, - "requires": { - "@xtuc/ieee754": "^1.2.0" + "node_modules/buffer": { + "version": "5.7.1", + "devOptional": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT", + "dependencies": { + "base64-js": "^1.3.1", + "ieee754": "^1.1.13" } }, - "@webassemblyjs/leb128": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.8.5.tgz", - "integrity": "sha512-plYUuUwleLIziknvlP8VpTgO4kqNaH57Y3JnNa6DLpu/sGcP6hbVdfdX5aHAV716pQBKrfuU26BJK29qY37J7A==", + "node_modules/buffer-from": { + "version": "1.1.2", "dev": true, - "requires": { - "@xtuc/long": "4.2.2" - } + "license": "MIT" }, - "@webassemblyjs/utf8": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.8.5.tgz", - "integrity": "sha512-U7zgftmQriw37tfD934UNInokz6yTmn29inT2cAetAsaU9YeVCveWEwhKL1Mg4yS7q//NGdzy79nlXh3bT8Kjw==", - "dev": true - }, - "@webassemblyjs/wasm-edit": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.8.5.tgz", - "integrity": "sha512-A41EMy8MWw5yvqj7MQzkDjU29K7UJq1VrX2vWLzfpRHt3ISftOXqrtojn7nlPsZ9Ijhp5NwuODuycSvfAO/26Q==", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.8.5", - "@webassemblyjs/helper-buffer": "1.8.5", - "@webassemblyjs/helper-wasm-bytecode": "1.8.5", - "@webassemblyjs/helper-wasm-section": "1.8.5", - "@webassemblyjs/wasm-gen": "1.8.5", - "@webassemblyjs/wasm-opt": "1.8.5", - "@webassemblyjs/wasm-parser": "1.8.5", - "@webassemblyjs/wast-printer": "1.8.5" - } - }, - "@webassemblyjs/wasm-gen": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.8.5.tgz", - "integrity": "sha512-BCZBT0LURC0CXDzj5FXSc2FPTsxwp3nWcqXQdOZE4U7h7i8FqtFK5Egia6f9raQLpEKT1VL7zr4r3+QX6zArWg==", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.8.5", - "@webassemblyjs/helper-wasm-bytecode": "1.8.5", - "@webassemblyjs/ieee754": "1.8.5", - "@webassemblyjs/leb128": "1.8.5", - "@webassemblyjs/utf8": "1.8.5" - } - }, - "@webassemblyjs/wasm-opt": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.8.5.tgz", - "integrity": "sha512-HKo2mO/Uh9A6ojzu7cjslGaHaUU14LdLbGEKqTR7PBKwT6LdPtLLh9fPY33rmr5wcOMrsWDbbdCHq4hQUdd37Q==", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.8.5", - "@webassemblyjs/helper-buffer": "1.8.5", - "@webassemblyjs/wasm-gen": "1.8.5", - "@webassemblyjs/wasm-parser": "1.8.5" - } - }, - "@webassemblyjs/wasm-parser": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.8.5.tgz", - "integrity": "sha512-pi0SYE9T6tfcMkthwcgCpL0cM9nRYr6/6fjgDtL6q/ZqKHdMWvxitRi5JcZ7RI4SNJJYnYNaWy5UUrHQy998lw==", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.8.5", - "@webassemblyjs/helper-api-error": "1.8.5", - "@webassemblyjs/helper-wasm-bytecode": "1.8.5", - "@webassemblyjs/ieee754": "1.8.5", - "@webassemblyjs/leb128": "1.8.5", - "@webassemblyjs/utf8": "1.8.5" - } - }, - "@webassemblyjs/wast-parser": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-parser/-/wast-parser-1.8.5.tgz", - "integrity": "sha512-daXC1FyKWHF1i11obK086QRlsMsY4+tIOKgBqI1lxAnkp9xe9YMcgOxm9kLe+ttjs5aWV2KKE1TWJCN57/Btsg==", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.8.5", - "@webassemblyjs/floating-point-hex-parser": "1.8.5", - "@webassemblyjs/helper-api-error": "1.8.5", - "@webassemblyjs/helper-code-frame": "1.8.5", - "@webassemblyjs/helper-fsm": "1.8.5", - "@xtuc/long": "4.2.2" + "node_modules/builtin-modules": { + "version": "3.3.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "@webassemblyjs/wast-printer": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.8.5.tgz", - "integrity": "sha512-w0U0pD4EhlnvRyeJzBqaVSJAo9w/ce7/WPogeXLzGkO6hzhr4GnQIZ4W4uUt5b9ooAaXPtnXlj0gzsXEOUNYMg==", + "node_modules/builtins": { + "version": "5.1.0", "dev": true, - "requires": { - "@webassemblyjs/ast": "1.8.5", - "@webassemblyjs/wast-parser": "1.8.5", - "@xtuc/long": "4.2.2" + "license": "MIT", + "dependencies": { + "semver": "^7.0.0" } }, - "@xtuc/ieee754": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz", - "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==", - "dev": true - }, - "@xtuc/long": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/@xtuc/long/-/long-4.2.2.tgz", - "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==", - "dev": true - }, - "@yarnpkg/lockfile": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@yarnpkg/lockfile/-/lockfile-1.1.0.tgz", - "integrity": "sha512-GpSwvyXOcOOlV70vbnzjj4fW5xW/FdUF6nQEt1ENy7m4ZCczi1+/buVUPAqmGfqznsORNFzUMjctTIp8a9tuCQ==", - "dev": true - }, - "JSONStream": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/JSONStream/-/JSONStream-1.3.5.tgz", - "integrity": "sha512-E+iruNOY8VV9s4JEbe1aNEm6MiszPRr/UfcHMz0TQh1BXSxHK+ASV1R6W4HpjBhSeS+54PIsAMCBmwD06LLsqQ==", + "node_modules/bytes": { + "version": "3.1.2", "dev": true, - "requires": { - "jsonparse": "^1.2.0", - "through": ">=2.2.7 <3" + "license": "MIT", + "engines": { + "node": ">= 0.8" } }, - "accepts": { - "version": "1.3.8", - "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz", - "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==", + "node_modules/cacache": { + "version": "16.1.2", "dev": true, - "requires": { - "mime-types": "~2.1.34", - "negotiator": "0.6.3" + "license": "ISC", + "dependencies": { + "@npmcli/fs": "^2.1.0", + "@npmcli/move-file": "^2.0.0", + "chownr": "^2.0.0", + "fs-minipass": "^2.1.0", + "glob": "^8.0.1", + "infer-owner": "^1.0.4", + "lru-cache": "^7.7.1", + "minipass": "^3.1.6", + "minipass-collect": "^1.0.2", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "mkdirp": "^1.0.4", + "p-map": "^4.0.0", + "promise-inflight": "^1.0.1", + "rimraf": "^3.0.2", + "ssri": "^9.0.0", + "tar": "^6.1.11", + "unique-filename": "^1.1.1" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "acorn": { - "version": "6.4.2", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.4.2.tgz", - "integrity": "sha512-XtGIhXwF8YM8bJhGxG5kXgjkEuNGLTkoYqVE+KMR+aspr4KGYmKYg7yUe3KghyQ9yheNwLnjmzh/7+gfDBmHCQ==", - "dev": true - }, - "acorn-walk": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-7.2.0.tgz", - "integrity": "sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA==", - "dev": true - }, - "adm-zip": { - "version": "0.4.16", - "resolved": "https://registry.npmjs.org/adm-zip/-/adm-zip-0.4.16.tgz", - "integrity": "sha512-TFi4HBKSGfIKsK5YCkKaaFG2m4PEDyViZmEwof3MTIgzimHLto6muaHVpbrljdIvIrFZzEq/p4nafOeLcYegrg==", - "dev": true - }, - "after": { - "version": "0.8.2", - "resolved": "https://registry.npmjs.org/after/-/after-0.8.2.tgz", - "integrity": "sha1-/ts5T58OAqqXaOcCvaI7UF+ufh8=", - "dev": true - }, - "agent-base": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-4.3.0.tgz", - "integrity": "sha512-salcGninV0nPrwpGNn4VTXBb1SOuXQBiqbrNXoeizJsHrsL6ERFM2Ne3JUSBWRE6aeNJI2ROP/WEEIDUiDe3cg==", + "node_modules/cacache/node_modules/lru-cache": { + "version": "7.18.3", "dev": true, - "requires": { - "es6-promisify": "^5.0.0" + "license": "ISC", + "engines": { + "node": ">=12" } }, - "agentkeepalive": { - "version": "3.5.2", - "resolved": "https://registry.npmjs.org/agentkeepalive/-/agentkeepalive-3.5.2.tgz", - "integrity": "sha512-e0L/HNe6qkQ7H19kTlRRqUibEAwDK5AFk6y3PtMsuut2VAH6+Q4xZml1tNDJD7kSAyqmbG/K08K5WEJYtUrSlQ==", + "node_modules/call-bind": { + "version": "1.0.7", "dev": true, - "requires": { - "humanize-ms": "^1.2.1" + "license": "MIT", + "dependencies": { + "es-define-property": "^1.0.0", + "es-errors": "^1.3.0", + "function-bind": "^1.1.2", + "get-intrinsic": "^1.2.4", + "set-function-length": "^1.2.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "aggregate-error": { + "node_modules/callsites": { "version": "3.1.0", - "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", - "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", "dev": true, - "requires": { - "clean-stack": "^2.0.0", - "indent-string": "^4.0.0" + "license": "MIT", + "engines": { + "node": ">=6" } }, - "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" + "node_modules/camel-case": { + "version": "3.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "no-case": "^2.2.0", + "upper-case": "^1.1.1" } }, - "ajv-errors": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/ajv-errors/-/ajv-errors-1.0.1.tgz", - "integrity": "sha512-DCRfO/4nQ+89p/RK43i8Ezd41EqdGIU4ld7nGF8OQ14oc/we5rEntLCUa7+jrn3nn83BosfwZA0wb4pon2o8iQ==", - "dev": true - }, - "ajv-keywords": { - "version": "3.5.2", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", - "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", - "dev": true - }, - "alphanum-sort": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/alphanum-sort/-/alphanum-sort-1.0.2.tgz", - "integrity": "sha1-l6ERlkmyEa0zaR2fn0hqjsn74KM=", - "dev": true - }, - "angular": { - "version": "1.5.11", - "resolved": "https://registry.npmjs.org/angular/-/angular-1.5.11.tgz", - "integrity": "sha512-09DBOVVWo6rOQfdCBKGfEL0ZZIhf6P3fbeP3BU+ty5FU50DPiavVeDn8hQ4wXE8o4vKEEpzY1aRcRHJMCixWYA==" - }, - "angular-animate": { - "version": "1.5.11", - "resolved": "https://registry.npmjs.org/angular-animate/-/angular-animate-1.5.11.tgz", - "integrity": "sha512-onbcfyND0O42P15qtVvby2f3A2XlsKG2VzAhCjGCZoR9cow9s60fpVlnf8/Xx8wlqjukx/rd65QbxwPAnqSCyg==" - }, - "angular-messages": { - "version": "1.5.11", - "resolved": "https://registry.npmjs.org/angular-messages/-/angular-messages-1.5.11.tgz", - "integrity": "sha512-3RiBB3jn8fESBPYSbjZA3VgrKIhcwwvPRIMUypLWO28VJhNv7/nq7o9thZ2ZBgCJgSSuTKiBesTNZMqabeLtrw==" - }, - "angular-minicolors": { - "version": "0.0.7", - "resolved": "https://registry.npmjs.org/angular-minicolors/-/angular-minicolors-0.0.7.tgz", - "integrity": "sha1-45pgjr4wSRkhPZfh/aBjUrhqO90=" - }, - "angular-resource": { - "version": "1.5.11", - "resolved": "https://registry.npmjs.org/angular-resource/-/angular-resource-1.5.11.tgz", - "integrity": "sha512-OlJJ+pxCu2PoyWrlkEeLjP7jmo7WtYHuWYdT8s1IpLVHYk4rfK7+uD5Zua99Yi1ZS/x9nU+mBiAupp46mBPayA==" - }, - "angular-route": { - "version": "1.5.11", - "resolved": "https://registry.npmjs.org/angular-route/-/angular-route-1.5.11.tgz", - "integrity": "sha512-0kElWj6PF+ChXhu4kPed+5hbG5E3gR7AM1gvgYvuT36onYCI6ZELS4/IS232gDVCqueoulMS9BfeeFk6o/2/Sw==" - }, - "angular-sanitize": { - "version": "1.5.11", - "resolved": "https://registry.npmjs.org/angular-sanitize/-/angular-sanitize-1.5.11.tgz", - "integrity": "sha512-9yVOr8YOefo0/4q+ImqNdGcbfGzelQIoHW0OoaoU/U5wpRZNn5IqlkdLW9udieSiprYzuXeqiS1V7ZiHurYisw==" - }, - "angular-ui-bootstrap": { - "version": "2.5.6", - "resolved": "https://registry.npmjs.org/angular-ui-bootstrap/-/angular-ui-bootstrap-2.5.6.tgz", - "integrity": "sha512-yzcHpPMLQl0232nDzm5P4iAFTFQ9dMw0QgFLuKYbDj9M0xJ62z0oudYD/Lvh1pWfRsukiytP4Xj6BHOSrSXP8A==" + "node_modules/camelcase": { + "version": "5.3.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } }, - "ansi-align": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/ansi-align/-/ansi-align-3.0.1.tgz", - "integrity": "sha512-IOfwwBF5iczOjp/WeY4YxyjqAFMQoZufdQWDd19SEExbVLNXqvpzSJ/M7Za4/sCPmQ0+GRquoA7bGcINcxew6w==", + "node_modules/caniuse-lite": { + "version": "1.0.30001658", "dev": true, - "requires": { - "string-width": "^4.1.0" - }, - "dependencies": { - "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 - }, - "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 - }, - "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 + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" }, - "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" - } + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/caniuse-lite" }, - "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" - } + { + "type": "github", + "url": "https://github.com/sponsors/ai" } + ], + "license": "CC-BY-4.0" + }, + "node_modules/chalk": { + "version": "2.4.2", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" } }, - "ansi-colors": { - "version": "3.2.4", - "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-3.2.4.tgz", - "integrity": "sha512-hHUXGagefjN2iRrID63xckIvotOXOojhQKWIPUZ4mNUZ9nLZW+7FMNoE1lOkEhNWYsx/7ysGIuJYCiMAA9FnrA==", - "dev": true + "node_modules/character-entities": { + "version": "1.2.4", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } }, - "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==", - "dev": true, - "requires": { - "type-fest": "^0.21.3" + "node_modules/character-entities-legacy": { + "version": "1.1.4", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" } }, - "ansi-html": { - "version": "0.0.7", - "resolved": "https://registry.npmjs.org/ansi-html/-/ansi-html-0.0.7.tgz", - "integrity": "sha1-gTWEAhliqenm/QOflA0S9WynhZ4=", - "dev": true + "node_modules/character-reference-invalid": { + "version": "1.1.4", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } }, - "ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=" + "node_modules/chardet": { + "version": "0.7.0", + "dev": true, + "license": "MIT" }, - "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==", + "node_modules/chokidar": { + "version": "3.6.0", "dev": true, - "requires": { - "color-convert": "^1.9.0" + "license": "MIT", + "dependencies": { + "anymatch": "~3.1.2", + "braces": "~3.0.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" + }, + "engines": { + "node": ">= 8.10.0" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" } }, - "anymatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.2.tgz", - "integrity": "sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==", + "node_modules/chownr": { + "version": "2.0.0", "dev": true, - "requires": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" + "license": "ISC", + "engines": { + "node": ">=10" } }, - "app-root-path": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/app-root-path/-/app-root-path-2.2.1.tgz", - "integrity": "sha512-91IFKeKk7FjfmezPKkwtaRvSpnUc4gDwPAjA1YZ9Gn0q0PPeW+vbeUsZuyDwjI7+QTHhcLen2v25fi/AmhvbJA==", - "dev": true - }, - "append-transform": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/append-transform/-/append-transform-1.0.0.tgz", - "integrity": "sha512-P009oYkeHyU742iSZJzZZywj4QRJdnTWffaKuJQLablCZ1uz6/cW4yaRgcDaoQ+uwOxxnt0gRUcwfsNP2ri0gw==", + "node_modules/chrome-trace-event": { + "version": "1.0.4", "dev": true, - "requires": { - "default-require-extensions": "^2.0.0" + "license": "MIT", + "engines": { + "node": ">=6.0" } }, - "aproba": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", - "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==" + "node_modules/classnames": { + "version": "2.5.1", + "license": "MIT" }, - "are-we-there-yet": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.7.tgz", - "integrity": "sha512-nxwy40TuMiUGqMyRHgCSWZ9FM4VAoRP4xUYSTv5ImRog+h9yISPbVH7H8fASCIzYn9wlEv4zvFL7uKDMCFQm3g==", - "optional": true, - "requires": { - "delegates": "^1.0.0", - "readable-stream": "^2.0.6" + "node_modules/clean-css": { + "version": "4.2.4", + "dev": true, + "license": "MIT", + "dependencies": { + "source-map": "~0.6.0" + }, + "engines": { + "node": ">= 4.0" } }, - "argparse": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", - "requires": { - "sprintf-js": "~1.0.2" + "node_modules/clean-css/node_modules/source-map": { + "version": "0.6.1", + "dev": true, + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.10.0" } }, - "aria-query": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/aria-query/-/aria-query-3.0.0.tgz", - "integrity": "sha1-ZbP8wcoRVajJrmTW7uKX8V1RM8w=", + "node_modules/clean-stack": { + "version": "2.2.0", "dev": true, - "requires": { - "ast-types-flow": "0.0.7", - "commander": "^2.11.0" + "license": "MIT", + "engines": { + "node": ">=6" } }, - "arr-diff": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz", - "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=", - "dev": true - }, - "arr-flatten": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz", - "integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==", - "dev": true - }, - "arr-union": { + "node_modules/cli-cursor": { "version": "3.1.0", - "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz", - "integrity": "sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ=", - "dev": true - }, - "array-flatten": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-2.1.2.tgz", - "integrity": "sha512-hNfzcOV8W4NdualtqBFPyVO+54DSJuZGY9qT4pRroB6S9e3iiido2ISIC5h9R2sPJ8H3FHCIiEnsv1lPXO3KtQ==", - "dev": true - }, - "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 - }, - "array-uniq": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz", - "integrity": "sha1-r2rId6Jcx/dOBYiUdThY39sk/bY=", - "dev": true - }, - "array-unique": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz", - "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=", - "dev": true + "dev": true, + "license": "MIT", + "dependencies": { + "restore-cursor": "^3.1.0" + }, + "engines": { + "node": ">=8" + } }, - "arraybuffer.slice": { - "version": "0.0.7", - "resolved": "https://registry.npmjs.org/arraybuffer.slice/-/arraybuffer.slice-0.0.7.tgz", - "integrity": "sha512-wGUIVQXuehL5TCqQun8OW81jGzAWycqzFF8lFp+GOM5BXLYj3bKNsYC4daB7n6XjCqxQA/qgTJ+8ANR3acjrog==", - "dev": true + "node_modules/cli-spinners": { + "version": "2.9.2", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } }, - "arrify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", - "integrity": "sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0=", - "dev": true + "node_modules/cli-width": { + "version": "3.0.0", + "dev": true, + "license": "ISC", + "engines": { + "node": ">= 10" + } }, - "asap": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz", - "integrity": "sha1-5QNHYR1+aQlDIIu9r+vLwvuGbUY=" + "node_modules/cliui": { + "version": "7.0.4", + "dev": true, + "license": "ISC", + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^7.0.0" + } }, - "asn1": { - "version": "0.2.6", - "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.6.tgz", - "integrity": "sha512-ix/FxPn0MDjeyJ7i/yoHGFt/EX6LyNbxSEhPPXODPL+KB0VPk86UYfL0lMdy+KCnv+fmvIzySwaK5COwqVbWTQ==", + "node_modules/clone": { + "version": "1.0.4", "dev": true, - "requires": { - "safer-buffer": "~2.1.0" + "license": "MIT", + "engines": { + "node": ">=0.8" } }, - "asn1.js": { - "version": "5.4.1", - "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-5.4.1.tgz", - "integrity": "sha512-+I//4cYPccV8LdmBLiX8CYvf9Sp3vQsrqu2QNXRcrbiWvcx/UdlFiqUJJzxRQxgsZmvhXhn4cSKeSmoFjVdupA==", + "node_modules/clone-deep": { + "version": "4.0.1", "dev": true, - "requires": { - "bn.js": "^4.0.0", - "inherits": "^2.0.1", - "minimalistic-assert": "^1.0.0", - "safer-buffer": "^2.1.0" - }, + "license": "MIT", "dependencies": { - "bn.js": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", - "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", - "dev": true - } + "is-plain-object": "^2.0.4", + "kind-of": "^6.0.2", + "shallow-clone": "^3.0.0" + }, + "engines": { + "node": ">=6" } }, - "assert": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/assert/-/assert-1.5.0.tgz", - "integrity": "sha512-EDsgawzwoun2CZkCgtxJbv392v4nbk9XDD06zI+kQYoBM/3RBWLlEyJARDOmhAAosBjWACEkKL6S+lIZtcAubA==", + "node_modules/color-convert": { + "version": "1.9.3", "dev": true, - "requires": { - "object-assign": "^4.1.1", - "util": "0.10.3" - }, + "license": "MIT", "dependencies": { - "inherits": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz", - "integrity": "sha1-sX0I0ya0Qj5Wjv9xn5GwscvfafE=", - "dev": true - }, - "util": { - "version": "0.10.3", - "resolved": "https://registry.npmjs.org/util/-/util-0.10.3.tgz", - "integrity": "sha1-evsa/lCAUkZInj23/g7TeTNqwPk=", - "dev": true, - "requires": { - "inherits": "2.0.1" - } - } + "color-name": "1.1.3" } }, - "assert-plus": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", - "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=", - "dev": true - }, - "assign-symbols": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/assign-symbols/-/assign-symbols-1.0.0.tgz", - "integrity": "sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c=", - "dev": true - }, - "ast-types": { - "version": "0.9.6", - "resolved": "https://registry.npmjs.org/ast-types/-/ast-types-0.9.6.tgz", - "integrity": "sha1-ECyenpAF0+fjgpvwxPok7oYu6bk=", - "dev": true - }, - "ast-types-flow": { - "version": "0.0.7", - "resolved": "https://registry.npmjs.org/ast-types-flow/-/ast-types-flow-0.0.7.tgz", - "integrity": "sha1-9wtzXGvKGlycItmCw+Oef+ujva0=", - "dev": true + "node_modules/color-name": { + "version": "1.1.3", + "dev": true, + "license": "MIT" }, - "async": { - "version": "2.6.3", - "resolved": "https://registry.npmjs.org/async/-/async-2.6.3.tgz", - "integrity": "sha512-zflvls11DCy+dQWzTW2dzuilv8Z5X/pjfmZOWba6TNIVDm+2UDaJmXSOXlasHKfNBs8oo3M0aT50fDEWfKZjXg==", + "node_modules/color-support": { + "version": "1.1.3", "dev": true, - "requires": { - "lodash": "^4.17.14" + "license": "ISC", + "bin": { + "color-support": "bin.js" } }, - "async-each": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/async-each/-/async-each-1.0.3.tgz", - "integrity": "sha512-z/WhQ5FPySLdvREByI2vZiTWwCnF0moMJ1hK9YQwDTHKh6I7/uSckMetoRGb5UBZPC1z0jlw+n/XCgjeH7y1AQ==", - "dev": true + "node_modules/colorette": { + "version": "2.0.20", + "dev": true, + "license": "MIT" }, - "async-limiter": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/async-limiter/-/async-limiter-1.0.1.tgz", - "integrity": "sha512-csOlWGAcRFJaI6m+F2WKdnMKr4HhdhFVBk0H/QbJFMCr+uO2kwohwXQPxw/9OCxp05r5ghVBFSyioixx3gfkNQ==", - "dev": true + "node_modules/combined-stream": { + "version": "1.0.8", + "license": "MIT", + "dependencies": { + "delayed-stream": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } }, - "asynckit": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", - "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=" + "node_modules/comma-separated-tokens": { + "version": "1.0.8", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } }, - "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==", - "dev": true + "node_modules/commander": { + "version": "2.17.1", + "dev": true, + "license": "MIT" }, - "atob": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz", - "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==", - "dev": true + "node_modules/commondir": { + "version": "1.0.1", + "dev": true, + "license": "MIT" }, - "autolinker": { - "version": "3.16.2", - "resolved": "https://registry.npmjs.org/autolinker/-/autolinker-3.16.2.tgz", - "integrity": "sha512-JiYl7j2Z19F9NdTmirENSUUIIL/9MytEWtmzhfmsKPCp9E+G35Y0UNCMoM9tFigxT59qSc8Ml2dlZXOCVTYwuA==", - "requires": { - "tslib": "^2.3.0" + "node_modules/compressible": { + "version": "2.0.18", + "dev": true, + "license": "MIT", + "dependencies": { + "mime-db": ">= 1.43.0 < 2" }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/compression": { + "version": "1.7.4", + "dev": true, + "license": "MIT", "dependencies": { - "tslib": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.5.0.tgz", - "integrity": "sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg==" - } + "accepts": "~1.3.5", + "bytes": "3.0.0", + "compressible": "~2.0.16", + "debug": "2.6.9", + "on-headers": "~1.0.2", + "safe-buffer": "5.1.2", + "vary": "~1.1.2" + }, + "engines": { + "node": ">= 0.8.0" } }, - "autoprefixer": { - "version": "9.7.4", - "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-9.7.4.tgz", - "integrity": "sha512-g0Ya30YrMBAEZk60lp+qfX5YQllG+S5W3GYCFvyHTvhOki0AEQJLPEcIuGRsqVwLi8FvXPVtwTGhfr38hVpm0g==", + "node_modules/compression/node_modules/bytes": { + "version": "3.0.0", "dev": true, - "requires": { - "browserslist": "^4.8.3", - "caniuse-lite": "^1.0.30001020", - "chalk": "^2.4.2", - "normalize-range": "^0.1.2", - "num2fraction": "^1.2.2", - "postcss": "^7.0.26", - "postcss-value-parser": "^4.0.2" + "license": "MIT", + "engines": { + "node": ">= 0.8" } }, - "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=", - "dev": true - }, - "aws4": { - "version": "1.11.0", - "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.11.0.tgz", - "integrity": "sha512-xh1Rl34h6Fi1DC2WWKfxUTVqRsNnr6LsKz2+hfwDxQJWmrx8+c7ylaqBMcHfl1U1r2dsifOvKX3LQuLNZ+XSvA==", - "dev": true - }, - "axios": { - "version": "1.3.4", - "resolved": "https://registry.npmjs.org/axios/-/axios-1.3.4.tgz", - "integrity": "sha512-toYm+Bsyl6VC5wSkfkbbNB6ROv7KY93PEBBL6xyDczaIHasAiv4wPqQ/c4RjoQzipxRD2W5g21cOqQulZ7rHwQ==", - "requires": { - "follow-redirects": "^1.15.0", - "form-data": "^4.0.0", - "proxy-from-env": "^1.1.0" - }, + "node_modules/compression/node_modules/debug": { + "version": "2.6.9", + "dev": true, + "license": "MIT", "dependencies": { - "follow-redirects": { - "version": "1.15.2", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.2.tgz", - "integrity": "sha512-VQLG33o04KaQ8uYi2tVNbdrWp1QWxNNea+nmIB4EVM28v0hmP17z7aG1+wAkNzVq4KeXTq3221ye5qTJP91JwA==" - }, - "form-data": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz", - "integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==", - "requires": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.8", - "mime-types": "^2.1.12" - } - } + "ms": "2.0.0" } }, - "axobject-query": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/axobject-query/-/axobject-query-2.0.2.tgz", - "integrity": "sha512-MCeek8ZH7hKyO1rWUbKNQBbl4l2eY0ntk7OGi+q0RlafrCnfPxC06WZA+uebCfmYp4mNU9jRBP1AhGyf8+W3ww==", + "node_modules/compression/node_modules/ms": { + "version": "2.0.0", "dev": true, - "requires": { - "ast-types-flow": "0.0.7" - } + "license": "MIT" }, - "babel-code-frame": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.26.0.tgz", - "integrity": "sha1-Y/1D99weO7fONZR9uP42mj9Yx0s=", - "requires": { - "chalk": "^1.1.3", - "esutils": "^2.0.2", - "js-tokens": "^3.0.2" - }, + "node_modules/compression/node_modules/safe-buffer": { + "version": "5.1.2", + "dev": true, + "license": "MIT" + }, + "node_modules/concat-map": { + "version": "0.0.1", + "dev": true, + "license": "MIT" + }, + "node_modules/connect": { + "version": "3.7.0", + "dev": true, + "license": "MIT", "dependencies": { - "ansi-styles": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", - "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=" - }, - "chalk": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", - "requires": { - "ansi-styles": "^2.2.1", - "escape-string-regexp": "^1.0.2", - "has-ansi": "^2.0.0", - "strip-ansi": "^3.0.0", - "supports-color": "^2.0.0" - } - }, - "js-tokens": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz", - "integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls=" - }, - "supports-color": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", - "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=" - } + "debug": "2.6.9", + "finalhandler": "1.1.2", + "parseurl": "~1.3.3", + "utils-merge": "1.0.1" + }, + "engines": { + "node": ">= 0.10.0" } }, - "babel-loader": { - "version": "8.0.6", - "resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-8.0.6.tgz", - "integrity": "sha512-4BmWKtBOBm13uoUwd08UwjZlaw3O9GWf456R9j+5YykFZ6LUIjIKLc0zEZf+hauxPOJs96C8k6FvYD09vWzhYw==", - "dev": true, - "requires": { - "find-cache-dir": "^2.0.0", - "loader-utils": "^1.0.2", - "mkdirp": "^0.5.1", - "pify": "^4.0.1" - }, - "dependencies": { - "find-cache-dir": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-2.1.0.tgz", - "integrity": "sha512-Tq6PixE0w/VMFfCgbONnkiQIVol/JJL7nRMi20fqzA4NRs9AfeqMGeRdPi3wIhYkxjeBaWh2rxwapn5Tu3IqOQ==", - "dev": true, - "requires": { - "commondir": "^1.0.1", - "make-dir": "^2.0.0", - "pkg-dir": "^3.0.0" - } - }, - "json5": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", - "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", - "dev": true, - "requires": { - "minimist": "^1.2.0" - } - }, - "loader-utils": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.0.tgz", - "integrity": "sha512-qH0WSMBtn/oHuwjy/NucEgbx5dbxxnxup9s4PVXJUDHZBQY+s0NWA9rJf53RBnQZxfch7euUui7hpoAPvALZdA==", - "dev": true, - "requires": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^1.0.1" - } - } + "node_modules/connect-history-api-fallback": { + "version": "2.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.8" } }, - "babel-messages": { - "version": "6.23.0", - "resolved": "https://registry.npmjs.org/babel-messages/-/babel-messages-6.23.0.tgz", - "integrity": "sha512-Bl3ZiA+LjqaMtNYopA9TYE9HP1tQ+E5dLxE0XrAzcIJeK2UqF0/EaqXwBn9esd4UmTfEab+P+UYQ1GnioFIb/w==", - "requires": { - "babel-runtime": "^6.22.0" + "node_modules/connect/node_modules/debug": { + "version": "2.6.9", + "dev": true, + "license": "MIT", + "dependencies": { + "ms": "2.0.0" } }, - "babel-plugin-dynamic-import-node": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/babel-plugin-dynamic-import-node/-/babel-plugin-dynamic-import-node-2.3.3.tgz", - "integrity": "sha512-jZVI+s9Zg3IqA/kdi0i6UDCybUI3aSBLnglhYbSSjKlV7yF1F/5LWv8MakQmvYpnbJDS6fcBL2KzHSxNCMtWSQ==", + "node_modules/connect/node_modules/ms": { + "version": "2.0.0", "dev": true, - "requires": { - "object.assign": "^4.1.0" - } + "license": "MIT" }, - "babel-plugin-transform-es2015-modules-amd": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-amd/-/babel-plugin-transform-es2015-modules-amd-6.24.1.tgz", - "integrity": "sha512-LnIIdGWIKdw7zwckqx+eGjcS8/cl8D74A3BpJbGjKTFFNJSMrjN4bIh22HY1AlkUbeLG6X6OZj56BDvWD+OeFA==", - "requires": { - "babel-plugin-transform-es2015-modules-commonjs": "^6.24.1", - "babel-runtime": "^6.22.0", - "babel-template": "^6.24.1" - } + "node_modules/console-control-strings": { + "version": "1.1.0", + "dev": true, + "license": "ISC" }, - "babel-plugin-transform-es2015-modules-commonjs": { - "version": "6.26.2", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-commonjs/-/babel-plugin-transform-es2015-modules-commonjs-6.26.2.tgz", - "integrity": "sha512-CV9ROOHEdrjcwhIaJNBGMBCodN+1cfkwtM1SbUHmvyy35KGT7fohbpOxkE2uLz1o6odKK2Ck/tz47z+VqQfi9Q==", - "requires": { - "babel-plugin-transform-strict-mode": "^6.24.1", - "babel-runtime": "^6.26.0", - "babel-template": "^6.26.0", - "babel-types": "^6.26.0" + "node_modules/content-disposition": { + "version": "0.5.4", + "dev": true, + "license": "MIT", + "dependencies": { + "safe-buffer": "5.2.1" + }, + "engines": { + "node": ">= 0.6" } }, - "babel-plugin-transform-es2015-modules-umd": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-umd/-/babel-plugin-transform-es2015-modules-umd-6.24.1.tgz", - "integrity": "sha512-LpVbiT9CLsuAIp3IG0tfbVo81QIhn6pE8xBJ7XSeCtFlMltuar5VuBV6y6Q45tpui9QWcy5i0vLQfCfrnF7Kiw==", - "requires": { - "babel-plugin-transform-es2015-modules-amd": "^6.24.1", - "babel-runtime": "^6.22.0", - "babel-template": "^6.24.1" + "node_modules/content-type": { + "version": "1.0.5", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.6" } }, - "babel-plugin-transform-member-expression-literals": { - "version": "6.9.4", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-member-expression-literals/-/babel-plugin-transform-member-expression-literals-6.9.4.tgz", - "integrity": "sha512-Xq9/Rarpj+bjOZSl1nBbZYETsNEDDJSrb6Plb1sS3/36FukWFLLRysgecva5KZECjUJTrJoQqjJgtWToaflk5Q==" + "node_modules/convert-source-map": { + "version": "1.9.0", + "dev": true, + "license": "MIT" }, - "babel-plugin-transform-merge-sibling-variables": { - "version": "6.9.5", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-merge-sibling-variables/-/babel-plugin-transform-merge-sibling-variables-6.9.5.tgz", - "integrity": "sha512-xj/KrWi6/uP+DrD844h66Qh2cZN++iugEIgH8QcIxhmZZPNP6VpOE9b4gP2FFW39xDAY43kCmYMM6U0QNKN8fw==" + "node_modules/cookie": { + "version": "0.4.2", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.6" + } }, - "babel-plugin-transform-minify-booleans": { - "version": "6.9.4", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-minify-booleans/-/babel-plugin-transform-minify-booleans-6.9.4.tgz", - "integrity": "sha512-9pW9ePng6DZpzGPalcrULuhSCcauGAbn8AeU3bE34HcDkGm8Ldt0ysjGkyb64f0K3T5ilV4mriayOVv5fg0ASA==" + "node_modules/cookie-signature": { + "version": "1.0.6", + "dev": true, + "license": "MIT" }, - "babel-plugin-transform-property-literals": { - "version": "6.9.4", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-property-literals/-/babel-plugin-transform-property-literals-6.9.4.tgz", - "integrity": "sha512-Pf8JHTjTPxecqVyL6KSwD/hxGpoTZjiEgV7nCx0KFQsJYM0nuuoCajbg09KRmZWeZbJ5NGTySABYv8b/hY1eEA==", - "requires": { - "esutils": "^2.0.2" + "node_modules/copy-anything": { + "version": "2.0.6", + "dev": true, + "license": "MIT", + "dependencies": { + "is-what": "^3.14.1" + }, + "funding": { + "url": "https://github.com/sponsors/mesqueeb" } }, - "babel-plugin-transform-strict-mode": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-strict-mode/-/babel-plugin-transform-strict-mode-6.24.1.tgz", - "integrity": "sha512-j3KtSpjyLSJxNoCDrhwiJad8kw0gJ9REGj8/CqL0HeRyLnvUNYV9zcqluL6QJSXh3nfsLEmSLvwRfGzrgR96Pw==", - "requires": { - "babel-runtime": "^6.22.0", - "babel-types": "^6.24.1" + "node_modules/copy-to-clipboard": { + "version": "3.3.3", + "license": "MIT", + "dependencies": { + "toggle-selection": "^1.0.6" } }, - "babel-runtime": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz", - "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=", - "requires": { - "core-js": "^2.4.0", - "regenerator-runtime": "^0.11.0" - }, + "node_modules/copy-webpack-plugin": { + "version": "11.0.0", + "dev": true, + "license": "MIT", "dependencies": { - "regenerator-runtime": { - "version": "0.11.1", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz", - "integrity": "sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg==" - } + "fast-glob": "^3.2.11", + "glob-parent": "^6.0.1", + "globby": "^13.1.1", + "normalize-path": "^3.0.0", + "schema-utils": "^4.0.0", + "serialize-javascript": "^6.0.0" + }, + "engines": { + "node": ">= 14.15.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^5.1.0" } }, - "babel-template": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-template/-/babel-template-6.26.0.tgz", - "integrity": "sha512-PCOcLFW7/eazGUKIoqH97sO9A2UYMahsn/yRQ7uOk37iutwjq7ODtcTNF+iFDSHNfkctqsLRjLP7URnOx0T1fg==", - "requires": { - "babel-runtime": "^6.26.0", - "babel-traverse": "^6.26.0", - "babel-types": "^6.26.0", - "babylon": "^6.18.0", - "lodash": "^4.17.4" + "node_modules/copy-webpack-plugin/node_modules/ajv": { + "version": "8.17.1", + "dev": true, + "license": "MIT", + "dependencies": { + "fast-deep-equal": "^3.1.3", + "fast-uri": "^3.0.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" } }, - "babel-traverse": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-traverse/-/babel-traverse-6.26.0.tgz", - "integrity": "sha512-iSxeXx7apsjCHe9c7n8VtRXGzI2Bk1rBSOJgCCjfyXb6v1aCqE1KSEpq/8SXuVN8Ka/Rh1WDTF0MDzkvTA4MIA==", - "requires": { - "babel-code-frame": "^6.26.0", - "babel-messages": "^6.23.0", - "babel-runtime": "^6.26.0", - "babel-types": "^6.26.0", - "babylon": "^6.18.0", - "debug": "^2.6.8", - "globals": "^9.18.0", - "invariant": "^2.2.2", - "lodash": "^4.17.4" - }, + "node_modules/copy-webpack-plugin/node_modules/ajv-keywords": { + "version": "5.1.0", + "dev": true, + "license": "MIT", "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" - } - }, - "globals": { - "version": "9.18.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-9.18.0.tgz", - "integrity": "sha512-S0nG3CLEQiY/ILxqtztTWH/3iRRdyBLw6KMDxnKMchrtbj2OFmehVh0WUCfW3DUrIgx/qFrJPICrq4Z4sTR9UQ==" - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" - } + "fast-deep-equal": "^3.1.3" + }, + "peerDependencies": { + "ajv": "^8.8.2" } }, - "babel-types": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-types/-/babel-types-6.26.0.tgz", - "integrity": "sha512-zhe3V/26rCWsEZK8kZN+HaQj5yQ1CilTObixFzKW1UWjqG7618Twz6YEsCnjfg5gBcJh02DrpCkS9h98ZqDY+g==", - "requires": { - "babel-runtime": "^6.26.0", - "esutils": "^2.0.2", - "lodash": "^4.17.4", - "to-fast-properties": "^1.0.3" - }, + "node_modules/copy-webpack-plugin/node_modules/glob-parent": { + "version": "6.0.2", + "dev": true, + "license": "ISC", "dependencies": { - "to-fast-properties": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-1.0.3.tgz", - "integrity": "sha512-lxrWP8ejsq+7E3nNjwYmUBMAgjMTZoTI+sdBOpvNyijeDLa29LUn9QaoXAHv4+Z578hbmHHJKZknzxVtvo77og==" - } + "is-glob": "^4.0.3" + }, + "engines": { + "node": ">=10.13.0" } }, - "babylon": { - "version": "6.18.0", - "resolved": "https://registry.npmjs.org/babylon/-/babylon-6.18.0.tgz", - "integrity": "sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==" - }, - "backo2": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/backo2/-/backo2-1.0.2.tgz", - "integrity": "sha1-MasayLEpNjRj41s+u2n038+6eUc=", - "dev": true + "node_modules/copy-webpack-plugin/node_modules/json-schema-traverse": { + "version": "1.0.0", + "dev": true, + "license": "MIT" }, - "balanced-match": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", - "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" - }, - "base": { - "version": "0.11.2", - "resolved": "https://registry.npmjs.org/base/-/base-0.11.2.tgz", - "integrity": "sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg==", - "dev": true, - "requires": { - "cache-base": "^1.0.1", - "class-utils": "^0.3.5", - "component-emitter": "^1.2.1", - "define-property": "^1.0.0", - "isobject": "^3.0.1", - "mixin-deep": "^1.2.0", - "pascalcase": "^0.1.1" - }, - "dependencies": { - "define-property": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", - "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", - "dev": true, - "requires": { - "is-descriptor": "^1.0.0" - } - }, - "is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-data-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", - "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-descriptor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", - "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", - "dev": true, - "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - } - } + "node_modules/copy-webpack-plugin/node_modules/schema-utils": { + "version": "4.2.0", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/json-schema": "^7.0.9", + "ajv": "^8.9.0", + "ajv-formats": "^2.1.1", + "ajv-keywords": "^5.1.0" + }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" } }, - "base64-arraybuffer": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/base64-arraybuffer/-/base64-arraybuffer-0.1.5.tgz", - "integrity": "sha1-c5JncZI7Whl0etZmqlzUv5xunOg=", - "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==" + "node_modules/copyfiles": { + "version": "2.4.1", + "dev": true, + "license": "MIT", + "dependencies": { + "glob": "^7.0.5", + "minimatch": "^3.0.3", + "mkdirp": "^1.0.4", + "noms": "0.0.0", + "through2": "^2.0.1", + "untildify": "^4.0.0", + "yargs": "^16.1.0" + }, + "bin": { + "copyfiles": "copyfiles", + "copyup": "copyfiles" + } }, - "base64id": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/base64id/-/base64id-1.0.0.tgz", - "integrity": "sha1-R2iMuZu2gE8OBtPnY7HDLlfY5rY=", - "dev": true + "node_modules/copyfiles/node_modules/brace-expansion": { + "version": "1.1.11", + "dev": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } }, - "batch": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/batch/-/batch-0.6.1.tgz", - "integrity": "sha1-3DQxT05nkxgJP8dgJyUl+UvyXBY=", - "dev": true + "node_modules/copyfiles/node_modules/glob": { + "version": "7.2.3", + "dev": true, + "license": "ISC", + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } }, - "bcrypt-pbkdf": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", - "integrity": "sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4=", + "node_modules/copyfiles/node_modules/minimatch": { + "version": "3.1.2", "dev": true, - "requires": { - "tweetnacl": "^0.14.3" + "license": "ISC", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" } }, - "better-assert": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/better-assert/-/better-assert-1.0.2.tgz", - "integrity": "sha1-QIZrnhueC1W0gYlDEeaPr/rrxSI=", + "node_modules/copyfiles/node_modules/yargs": { + "version": "16.2.0", "dev": true, - "requires": { - "callsite": "1.0.0" + "license": "MIT", + "dependencies": { + "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" + }, + "engines": { + "node": ">=10" } }, - "bfj": { - "version": "6.1.2", - "resolved": "https://registry.npmjs.org/bfj/-/bfj-6.1.2.tgz", - "integrity": "sha512-BmBJa4Lip6BPRINSZ0BPEIfB1wUY/9rwbwvIHQA1KjX9om29B6id0wnWXq7m3bn5JrUVjeOTnVuhPT1FiHwPGw==", + "node_modules/copyfiles/node_modules/yargs-parser": { + "version": "20.2.9", "dev": true, - "requires": { - "bluebird": "^3.5.5", - "check-types": "^8.0.3", - "hoopy": "^0.1.4", - "tryer": "^1.0.1" + "license": "ISC", + "engines": { + "node": ">=10" } }, - "big.js": { - "version": "5.2.2", - "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz", - "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==", - "dev": true - }, - "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 + "node_modules/core-js": { + "version": "2.6.12", + "hasInstallScript": true, + "license": "MIT" }, - "bindings": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/bindings/-/bindings-1.5.0.tgz", - "integrity": "sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==", + "node_modules/core-js-compat": { + "version": "3.38.1", "dev": true, - "optional": true, - "requires": { - "file-uri-to-path": "1.0.0" + "license": "MIT", + "dependencies": { + "browserslist": "^4.23.3" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/core-js" } }, - "bl": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz", - "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==", - "optional": true, - "requires": { - "buffer": "^5.5.0", - "inherits": "^2.0.4", - "readable-stream": "^3.4.0" - }, - "dependencies": { - "buffer": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", - "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", - "optional": true, - "requires": { - "base64-js": "^1.3.1", - "ieee754": "^1.1.13" - } - }, - "readable-stream": { - "version": "3.6.2", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", - "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", - "optional": true, - "requires": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - } - } + "node_modules/core-js-pure": { + "version": "3.38.1", + "hasInstallScript": true, + "license": "MIT", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/core-js" } }, - "blob": { - "version": "0.0.5", - "resolved": "https://registry.npmjs.org/blob/-/blob-0.0.5.tgz", - "integrity": "sha512-gaqbzQPqOoamawKg0LGVd7SzLgXS+JH61oWprSLH+P+abTczqJbhTR8CmJ2u9/bUYNmHTGJx/UEmn6doAvvuig==", - "dev": true + "node_modules/core-util-is": { + "version": "1.0.3", + "dev": true, + "license": "MIT" }, - "blocking-proxy": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/blocking-proxy/-/blocking-proxy-1.0.1.tgz", - "integrity": "sha512-KE8NFMZr3mN2E0HcvCgRtX7DjhiIQrwle+nSVJVC/yqFb9+xznHl2ZcoBp2L9qzkI4t4cBFJ1efXF8Dwi132RA==", + "node_modules/cors": { + "version": "2.8.5", "dev": true, - "requires": { - "minimist": "^1.2.0" + "license": "MIT", + "dependencies": { + "object-assign": "^4", + "vary": "^1" + }, + "engines": { + "node": ">= 0.10" } }, - "bluebird": { - "version": "3.7.2", - "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz", - "integrity": "sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==", - "dev": true - }, - "bn.js": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-5.2.0.tgz", - "integrity": "sha512-D7iWRBvnZE8ecXiLj/9wbxH7Tk79fAh8IHaTNq1RWRixsS02W+5qS+iE9yq6RYl0asXx5tw0bLhmT5pIfbSquw==", - "dev": true - }, - "body-parser": { - "version": "1.19.2", - "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.19.2.tgz", - "integrity": "sha512-SAAwOxgoCKMGs9uUAUFHygfLAyaniaoun6I8mFY9pRAJL9+Kec34aU+oIjDhTycub1jozEfEwx1W1IuOYxVSFw==", + "node_modules/cosmiconfig": { + "version": "7.1.0", "dev": true, - "requires": { - "bytes": "3.1.2", - "content-type": "~1.0.4", - "debug": "2.6.9", - "depd": "~1.1.2", - "http-errors": "1.8.1", - "iconv-lite": "0.4.24", - "on-finished": "~2.3.0", - "qs": "6.9.7", - "raw-body": "2.4.3", - "type-is": "~1.6.18" + "license": "MIT", + "dependencies": { + "@types/parse-json": "^4.0.0", + "import-fresh": "^3.2.1", + "parse-json": "^5.0.0", + "path-type": "^4.0.0", + "yaml": "^1.10.0" }, + "engines": { + "node": ">=10" + } + }, + "node_modules/create-react-class": { + "version": "15.7.0", + "license": "MIT", "dependencies": { - "bytes": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", - "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", - "dev": true - }, - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "iconv-lite": { - "version": "0.4.24", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", - "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", - "dev": true, - "requires": { - "safer-buffer": ">= 2.1.2 < 3" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true - }, - "qs": { - "version": "6.9.7", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.9.7.tgz", - "integrity": "sha512-IhMFgUmuNpyRfxA90umL7ByLlgRXu6tIfKPpF5TmcfRLlLCckfP/g3IQmju6jjpu+Hh8rA+2p6A27ZSPOOHdKw==", - "dev": true - } + "loose-envify": "^1.3.1", + "object-assign": "^4.1.1" } }, - "bonjour": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/bonjour/-/bonjour-3.5.0.tgz", - "integrity": "sha1-jokKGD2O6aI5OzhExpGkK897yfU=", + "node_modules/critters": { + "version": "0.0.16", "dev": true, - "requires": { - "array-flatten": "^2.1.0", - "deep-equal": "^1.0.1", - "dns-equal": "^1.0.0", - "dns-txt": "^2.0.2", - "multicast-dns": "^6.0.1", - "multicast-dns-service-types": "^1.1.0" + "license": "Apache-2.0", + "dependencies": { + "chalk": "^4.1.0", + "css-select": "^4.2.0", + "parse5": "^6.0.1", + "parse5-htmlparser2-tree-adapter": "^6.0.1", + "postcss": "^8.3.7", + "pretty-bytes": "^5.3.0" } }, - "boolbase": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", - "integrity": "sha1-aN/1++YMUes3cl6p4+0xDcwed24=", - "dev": true - }, - "boxen": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/boxen/-/boxen-4.2.0.tgz", - "integrity": "sha512-eB4uT9RGzg2odpER62bBwSLvUeGC+WbRjjyyFhGsKnc8wp/m0+hQsMUvUe3H2V0D5vw0nBdO1hCJoZo5mKeuIQ==", + "node_modules/critters/node_modules/ansi-styles": { + "version": "4.3.0", "dev": true, - "requires": { - "ansi-align": "^3.0.0", - "camelcase": "^5.3.1", - "chalk": "^3.0.0", - "cli-boxes": "^2.2.0", - "string-width": "^4.1.0", - "term-size": "^2.1.0", - "type-fest": "^0.8.1", - "widest-line": "^3.1.0" - }, + "license": "MIT", "dependencies": { - "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" - } - }, - "chalk": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", - "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.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 - }, - "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 - }, - "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 - }, - "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.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" - } - }, - "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" - } - }, - "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" - } - }, - "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 - } + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "node_modules/critters/node_modules/chalk": { + "version": "4.1.2", "dev": true, - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "node_modules/critters/node_modules/color-convert": { + "version": "2.0.1", "dev": true, - "requires": { - "fill-range": "^7.0.1" + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" } }, - "brorand": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz", - "integrity": "sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8=", - "dev": true + "node_modules/critters/node_modules/color-name": { + "version": "1.1.4", + "dev": true, + "license": "MIT" }, - "browserify-aes": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz", - "integrity": "sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==", - "dev": true, - "requires": { - "buffer-xor": "^1.0.3", - "cipher-base": "^1.0.0", - "create-hash": "^1.1.0", - "evp_bytestokey": "^1.0.3", - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" + "node_modules/critters/node_modules/has-flag": { + "version": "4.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" } }, - "browserify-cipher": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/browserify-cipher/-/browserify-cipher-1.0.1.tgz", - "integrity": "sha512-sPhkz0ARKbf4rRQt2hTpAHqn47X3llLkUGn+xEJzLjwY8LRs2p0v7ljvI5EyoRO/mexrNunNECisZs+gw2zz1w==", + "node_modules/critters/node_modules/parse5": { + "version": "6.0.1", "dev": true, - "requires": { - "browserify-aes": "^1.0.4", - "browserify-des": "^1.0.0", - "evp_bytestokey": "^1.0.0" - } + "license": "MIT" }, - "browserify-des": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/browserify-des/-/browserify-des-1.0.2.tgz", - "integrity": "sha512-BioO1xf3hFwz4kc6iBhI3ieDFompMhrMlnDFC4/0/vd5MokpuAc3R+LYbwTA9A5Yc9pq9UYPqffKpW2ObuwX5A==", + "node_modules/critters/node_modules/supports-color": { + "version": "7.2.0", "dev": true, - "requires": { - "cipher-base": "^1.0.1", - "des.js": "^1.0.0", - "inherits": "^2.0.1", - "safe-buffer": "^5.1.2" + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" } }, - "browserify-rsa": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.1.0.tgz", - "integrity": "sha512-AdEER0Hkspgno2aR97SAf6vi0y0k8NuOpGnVH3O99rcA5Q6sh8QxcngtHuJ6uXwnfAXNM4Gn1Gb7/MV1+Ymbog==", + "node_modules/cross-spawn": { + "version": "6.0.5", "dev": true, - "requires": { - "bn.js": "^5.0.0", - "randombytes": "^2.0.1" + "license": "MIT", + "dependencies": { + "nice-try": "^1.0.4", + "path-key": "^2.0.1", + "semver": "^5.5.0", + "shebang-command": "^1.2.0", + "which": "^1.2.9" + }, + "engines": { + "node": ">=4.8" } }, - "browserify-sign": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/browserify-sign/-/browserify-sign-4.2.1.tgz", - "integrity": "sha512-/vrA5fguVAKKAVTNJjgSm1tRQDHUU6DbwO9IROu/0WAzC8PKhucDSh18J0RMvVeHAn5puMd+QHC2erPRNf8lmg==", - "dev": true, - "requires": { - "bn.js": "^5.1.1", - "browserify-rsa": "^4.0.1", - "create-hash": "^1.2.0", - "create-hmac": "^1.1.7", - "elliptic": "^6.5.3", - "inherits": "^2.0.4", - "parse-asn1": "^5.1.5", - "readable-stream": "^3.6.0", - "safe-buffer": "^5.2.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==", - "dev": true, - "requires": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - } - } + "node_modules/cross-spawn/node_modules/semver": { + "version": "5.7.2", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver" } }, - "browserify-zlib": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/browserify-zlib/-/browserify-zlib-0.2.0.tgz", - "integrity": "sha512-Z942RysHXmJrhqk88FmKBVq/v5tqmSkDz7p54G/MGyjMnCFFnC79XWNbg+Vta8W6Wb2qtSZTSxIGkJrRpCFEiA==", + "node_modules/css": { + "version": "2.2.4", "dev": true, - "requires": { - "pako": "~1.0.5" + "license": "MIT", + "peer": true, + "dependencies": { + "inherits": "^2.0.3", + "source-map": "^0.6.1", + "source-map-resolve": "^0.5.2", + "urix": "^0.1.0" } }, - "browserslist": { - "version": "4.20.2", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.20.2.tgz", - "integrity": "sha512-CQOBCqp/9pDvDbx3xfMi+86pr4KXIf2FDkTTdeuYw8OxS9t898LA1Khq57gtufFILXpfgsSx5woNgsBgvGjpsA==", + "node_modules/css-blank-pseudo": { + "version": "3.0.3", "dev": true, - "requires": { - "caniuse-lite": "^1.0.30001317", - "electron-to-chromium": "^1.4.84", - "escalade": "^3.1.1", - "node-releases": "^2.0.2", - "picocolors": "^1.0.0" + "license": "CC0-1.0", + "dependencies": { + "postcss-selector-parser": "^6.0.9" + }, + "bin": { + "css-blank-pseudo": "dist/cli.cjs" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "peerDependencies": { + "postcss": "^8.4" } }, - "browserstack": { - "version": "1.6.1", - "resolved": "https://registry.npmjs.org/browserstack/-/browserstack-1.6.1.tgz", - "integrity": "sha512-GxtFjpIaKdbAyzHfFDKixKO8IBT7wR3NjbzrGc78nNs/Ciys9wU3/nBtsqsWv5nDSrdI5tz0peKuzCPuNXNUiw==", + "node_modules/css-has-pseudo": { + "version": "3.0.4", "dev": true, - "requires": { - "https-proxy-agent": "^2.2.1" + "license": "CC0-1.0", + "dependencies": { + "postcss-selector-parser": "^6.0.9" + }, + "bin": { + "css-has-pseudo": "dist/cli.cjs" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "peerDependencies": { + "postcss": "^8.4" } }, - "buffer": { - "version": "4.9.2", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-4.9.2.tgz", - "integrity": "sha512-xq+q3SRMOxGivLhBNaUdC64hDTQwejJ+H0T/NB1XMtTVEwNTrfFF3gAxiyW0Bu/xWEGhjVKgUcMhCrUy2+uCWg==", + "node_modules/css-loader": { + "version": "6.7.1", "dev": true, - "requires": { - "base64-js": "^1.0.2", - "ieee754": "^1.1.4", - "isarray": "^1.0.0" + "license": "MIT", + "dependencies": { + "icss-utils": "^5.1.0", + "postcss": "^8.4.7", + "postcss-modules-extract-imports": "^3.0.0", + "postcss-modules-local-by-default": "^4.0.0", + "postcss-modules-scope": "^3.0.0", + "postcss-modules-values": "^4.0.0", + "postcss-value-parser": "^4.2.0", + "semver": "^7.3.5" + }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^5.0.0" } }, - "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==", + "node_modules/css-parse": { + "version": "2.0.0", "dev": true, - "requires": { - "buffer-alloc-unsafe": "^1.1.0", - "buffer-fill": "^1.0.0" + "license": "MIT", + "peer": true, + "dependencies": { + "css": "^2.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-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 - }, - "buffer-indexof": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/buffer-indexof/-/buffer-indexof-1.1.1.tgz", - "integrity": "sha512-4/rOEg86jivtPTeOUUT61jJO1Ya1TrR/OkqCSZDyq84WJh3LuuiphBYJN+fm5xufIk4XAFcEwte/8WzC8If/1g==", - "dev": true - }, - "buffer-xor": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz", - "integrity": "sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk=", - "dev": true - }, - "builtin-modules": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-3.2.0.tgz", - "integrity": "sha512-lGzLKcioL90C7wMczpkY0n/oART3MbBa8R9OFGE1rJxoVI86u4WAGfEk8Wjv10eKSyTHVGkSo3bvBylCEtk7LA==", - "dev": true - }, - "builtin-status-codes": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz", - "integrity": "sha1-hZgoeOIbmOHGZCXgPQF0eI9Wnug=", - "dev": true - }, - "builtins": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/builtins/-/builtins-1.0.3.tgz", - "integrity": "sha1-y5T662HIaWRR2zZTThQi+U8K7og=", - "dev": true - }, - "bytes": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz", - "integrity": "sha1-0ygVQE1olpn4Wk6k+odV3ROpYEg=", - "dev": true - }, - "cacache": { - "version": "15.0.0", - "resolved": "https://registry.npmjs.org/cacache/-/cacache-15.0.0.tgz", - "integrity": "sha512-L0JpXHhplbJSiDGzyJJnJCTL7er7NzbBgxzVqLswEb4bO91Zbv17OUMuUeu/q0ZwKn3V+1HM4wb9tO4eVE/K8g==", + "node_modules/css-prefers-color-scheme": { + "version": "6.0.3", "dev": true, - "requires": { - "chownr": "^1.1.2", - "fs-minipass": "^2.0.0", - "glob": "^7.1.4", - "infer-owner": "^1.0.4", - "lru-cache": "^5.1.1", - "minipass": "^3.1.1", - "minipass-collect": "^1.0.2", - "minipass-flush": "^1.0.5", - "minipass-pipeline": "^1.2.2", - "mkdirp": "^1.0.3", - "move-concurrently": "^1.0.1", - "p-map": "^3.0.0", - "promise-inflight": "^1.0.1", - "rimraf": "^2.7.1", - "ssri": "^8.0.0", - "tar": "^6.0.1", - "unique-filename": "^1.1.1" + "license": "CC0-1.0", + "bin": { + "css-prefers-color-scheme": "dist/cli.cjs" }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "peerDependencies": { + "postcss": "^8.4" + } + }, + "node_modules/css-select": { + "version": "4.3.0", + "dev": true, + "license": "BSD-2-Clause", "dependencies": { - "mkdirp": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", - "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", - "dev": true - }, - "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" - } - } + "boolbase": "^1.0.0", + "css-what": "^6.0.1", + "domhandler": "^4.3.1", + "domutils": "^2.8.0", + "nth-check": "^2.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/fb55" } }, - "cache-base": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/cache-base/-/cache-base-1.0.1.tgz", - "integrity": "sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ==", - "dev": true, - "requires": { - "collection-visit": "^1.0.0", - "component-emitter": "^1.2.1", - "get-value": "^2.0.6", - "has-value": "^1.0.0", - "isobject": "^3.0.1", - "set-value": "^2.0.0", - "to-object-path": "^0.3.0", - "union-value": "^1.0.0", - "unset-value": "^1.0.0" - } - }, - "cacheable-request": { + "node_modules/css-what": { "version": "6.1.0", - "resolved": "https://registry.npmjs.org/cacheable-request/-/cacheable-request-6.1.0.tgz", - "integrity": "sha512-Oj3cAGPCqOZX7Rz64Uny2GYAZNliQSqfbePrgAQ1wKAihYmCUnraBtJtKcGR4xz7wF+LoJC+ssFZvv5BgF9Igg==", - "dev": true, - "requires": { - "clone-response": "^1.0.2", - "get-stream": "^5.1.0", - "http-cache-semantics": "^4.0.0", - "keyv": "^3.0.0", - "lowercase-keys": "^2.0.0", - "normalize-url": "^4.1.0", - "responselike": "^1.0.2" - }, - "dependencies": { - "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==", - "dev": true, - "requires": { - "pump": "^3.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==", - "dev": true - }, - "lowercase-keys": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-2.0.0.tgz", - "integrity": "sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA==", - "dev": true - }, - "normalize-url": { - "version": "4.5.1", - "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-4.5.1.tgz", - "integrity": "sha512-9UZCFRHQdNrfTpGg8+1INIg93B6zE0aXMVFkw1WFwvO4SlZywU6aLg5Of0Ap/PgcbSw4LNxvMWXMeugwMCX0AA==", - "dev": true - } + "dev": true, + "license": "BSD-2-Clause", + "engines": { + "node": ">= 6" + }, + "funding": { + "url": "https://github.com/sponsors/fb55" } }, - "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" - } + "node_modules/css.escape": { + "version": "1.5.1", + "license": "MIT" }, - "caller-callsite": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/caller-callsite/-/caller-callsite-2.0.0.tgz", - "integrity": "sha1-hH4PzgoiN1CpoCfFSzNzGtMVQTQ=", + "node_modules/css/node_modules/source-map": { + "version": "0.6.1", "dev": true, - "requires": { - "callsites": "^2.0.0" + "license": "BSD-3-Clause", + "peer": true, + "engines": { + "node": ">=0.10.0" } }, - "caller-path": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/caller-path/-/caller-path-2.0.0.tgz", - "integrity": "sha1-Ro+DBE42mrIBD6xfBs7uFbsssfQ=", + "node_modules/css/node_modules/source-map-resolve": { + "version": "0.5.3", "dev": true, - "requires": { - "caller-callsite": "^2.0.0" + "license": "MIT", + "peer": true, + "dependencies": { + "atob": "^2.1.2", + "decode-uri-component": "^0.2.0", + "resolve-url": "^0.2.1", + "source-map-url": "^0.4.0", + "urix": "^0.1.0" } }, - "callsite": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/callsite/-/callsite-1.0.0.tgz", - "integrity": "sha1-KAOY5dZkvXQDi28JBRU+borxvCA=", - "dev": true - }, - "callsites": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/callsites/-/callsites-2.0.0.tgz", - "integrity": "sha1-BuuE8A7qQT2oav/vrL/7Ngk7PFA=", - "dev": true - }, - "camel-case": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/camel-case/-/camel-case-3.0.0.tgz", - "integrity": "sha1-yjw2iKTpzzpM2nd9xNy8cTJJz3M=", + "node_modules/cssdb": { + "version": "7.11.2", "dev": true, - "requires": { - "no-case": "^2.2.0", - "upper-case": "^1.1.1" - } - }, - "camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + } + ], + "license": "CC0-1.0" }, - "caniuse-api": { + "node_modules/cssesc": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/caniuse-api/-/caniuse-api-3.0.0.tgz", - "integrity": "sha512-bsTwuIg/BZZK/vreVTYYbSWoe2F+71P7K5QGEX+pT250DZbfU1MQ5prOKpPR+LL6uWKK3KMwMCAS74QB3Um1uw==", "dev": true, - "requires": { - "browserslist": "^4.0.0", - "caniuse-lite": "^1.0.0", - "lodash.memoize": "^4.1.2", - "lodash.uniq": "^4.5.0" + "license": "MIT", + "bin": { + "cssesc": "bin/cssesc" + }, + "engines": { + "node": ">=4" } }, - "caniuse-lite": { - "version": "1.0.30001331", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001331.tgz", - "integrity": "sha512-Y1xk6paHpUXKP/P6YjQv1xqyTbgAP05ycHBcRdQjTcyXlWol868sJJPlmk5ylOekw2BrucWes5jk+LvVd7WZ5Q==", - "dev": true + "node_modules/cuint": { + "version": "0.2.2", + "dev": true, + "license": "MIT" }, - "canonical-path": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/canonical-path/-/canonical-path-1.0.0.tgz", - "integrity": "sha512-feylzsbDxi1gPZ1IjystzIQZagYYLvfKrSuygUCgf7z6x790VEzze5QEkdSV1U58RA7Hi0+v6fv4K54atOzATg==", - "dev": true + "node_modules/custom-event": { + "version": "1.0.1", + "dev": true, + "license": "MIT" }, - "caseless": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", - "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=", - "dev": true + "node_modules/d": { + "version": "1.0.2", + "license": "ISC", + "dependencies": { + "es5-ext": "^0.10.64", + "type": "^2.7.2" + }, + "engines": { + "node": ">=0.12" + } }, - "chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "node_modules/data-view-buffer": { + "version": "1.0.1", "dev": true, - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.6", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "character-entities": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/character-entities/-/character-entities-1.2.4.tgz", - "integrity": "sha512-iBMyeEHxfVnIakwOuDXpVkc54HijNgCyQB2w0VfGQThle6NXn50zU6V/u+LDhxHcDUPojn6Kpga3PTAD8W1bQw==" - }, - "character-entities-legacy": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/character-entities-legacy/-/character-entities-legacy-1.1.4.tgz", - "integrity": "sha512-3Xnr+7ZFS1uxeiUDvV02wQ+QDbc55o97tIV5zHScSPJpcLm/r0DFPcoY3tYRp+VZukxuMeKgXYmsXQHO05zQeA==" - }, - "character-reference-invalid": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/character-reference-invalid/-/character-reference-invalid-1.1.4.tgz", - "integrity": "sha512-mKKUkUbhPpQlCOfIuZkvSEgktjPFIsZKRRbC6KWVEMvlzblj3i3asQv5ODsrwt0N3pHAEvjP8KTQPHkp0+6jOg==" + "node_modules/data-view-byte-length": { + "version": "1.0.1", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, - "chardet": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz", - "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==", - "dev": true + "node_modules/data-view-byte-offset": { + "version": "1.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.6", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, - "check-types": { - "version": "8.0.3", - "resolved": "https://registry.npmjs.org/check-types/-/check-types-8.0.3.tgz", - "integrity": "sha512-YpeKZngUmG65rLudJ4taU7VLkOCTMhNl/u4ctNC56LQS/zJTyNH0Lrtwm1tfTsbLlwvlfsA2d1c8vCf/Kh2KwQ==", - "dev": true + "node_modules/date-format": { + "version": "4.0.14", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4.0" + } }, - "chokidar": { - "version": "3.5.3", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", - "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", + "node_modules/debug": { + "version": "4.3.4", "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" - }, + "license": "MIT", "dependencies": { - "fsevents": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", - "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", - "dev": true, + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { "optional": true } } }, - "chownr": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz", - "integrity": "sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==" - }, - "chrome-trace-event": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.3.tgz", - "integrity": "sha512-p3KULyQg4S7NIHixdwbGX+nFHkoBiA4YQmyWtjb8XngSKV124nJmRysgAeujbUVb15vh+RvFUfCPqU7rXk+hZg==", - "dev": true - }, - "ci-info": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-2.0.0.tgz", - "integrity": "sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==", - "dev": true + "node_modules/decimal-format": { + "version": "3.0.1", + "license": "ISC" }, - "cipher-base": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.4.tgz", - "integrity": "sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==", + "node_modules/decode-uri-component": { + "version": "0.2.2", "dev": true, - "requires": { - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" + "license": "MIT", + "engines": { + "node": ">=0.10" } }, - "circular-dependency-plugin": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/circular-dependency-plugin/-/circular-dependency-plugin-5.2.0.tgz", - "integrity": "sha512-7p4Kn/gffhQaavNfyDFg7LS5S/UT1JAjyGd4UqR2+jzoYF02eDkj0Ec3+48TsIa4zghjLY87nQHIh/ecK9qLdw==", - "dev": true - }, - "class-utils": { - "version": "0.3.6", - "resolved": "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz", - "integrity": "sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==", - "dev": true, - "requires": { - "arr-union": "^3.1.0", - "define-property": "^0.2.5", - "isobject": "^3.0.0", - "static-extend": "^0.1.1" - }, - "dependencies": { - "define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "dev": true, - "requires": { - "is-descriptor": "^0.1.0" - } - } + "node_modules/decompress-response": { + "version": "6.0.0", + "license": "MIT", + "optional": true, + "dependencies": { + "mimic-response": "^3.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "classnames": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/classnames/-/classnames-2.3.2.tgz", - "integrity": "sha512-CSbhY4cFEJRe6/GQzIk5qXZ4Jeg5pcsP7b5peFSDpffpe1cqjASH/n9UTjBwOp6XpMSTwQ8Za2K5V02ueA7Tmw==" - }, - "clean-css": { - "version": "4.2.4", - "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-4.2.4.tgz", - "integrity": "sha512-EJUDT7nDVFDvaQgAo2G/PJvxmp1o/c6iXLbswsBbUFXi1Nr+AjA2cKmfbKDMjMvzEe75g3P6JkaDDAKk96A85A==", - "dev": true, - "requires": { - "source-map": "~0.6.0" + "node_modules/deep-extend": { + "version": "0.6.0", + "license": "MIT", + "engines": { + "node": ">=4.0.0" } }, - "clean-stack": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", - "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", - "dev": true - }, - "cli-boxes": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/cli-boxes/-/cli-boxes-2.2.1.tgz", - "integrity": "sha512-y4coMcylgSCdVinjiDBuR8PCC2bLjyGTwEmPb9NHR/QaNU6EUOXcTY/s6VjGMD6ENSEaeQYHCY0GNGS5jfMwPw==", - "dev": true + "node_modules/deepmerge": { + "version": "4.3.1", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } }, - "cli-cursor": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz", - "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", + "node_modules/default-gateway": { + "version": "6.0.3", "dev": true, - "requires": { - "restore-cursor": "^3.1.0" + "license": "BSD-2-Clause", + "dependencies": { + "execa": "^5.0.0" + }, + "engines": { + "node": ">= 10" } }, - "cli-spinners": { - "version": "2.6.1", - "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.6.1.tgz", - "integrity": "sha512-x/5fWmGMnbKQAaNwN+UZlV79qBLM9JFnJuJ03gIi5whrob0xV0ofNVHy9DhwGdsMJQc2OKv0oGmLzvaqvAVv+g==", - "dev": true - }, - "cli-width": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-2.2.1.tgz", - "integrity": "sha512-GRMWDxpOB6Dgk2E5Uo+3eEBvtOOlimMmpbFiKuLFnQzYDavtLFY3K5ona41jgN/WdRZtG7utuVSVTL4HbZHGkw==", - "dev": true - }, - "cliui": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-5.0.0.tgz", - "integrity": "sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA==", + "node_modules/defaults": { + "version": "1.0.4", "dev": true, - "requires": { - "string-width": "^3.1.0", - "strip-ansi": "^5.2.0", - "wrap-ansi": "^5.1.0" - }, + "license": "MIT", "dependencies": { - "ansi-regex": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.1.tgz", - "integrity": "sha512-ILlv4k/3f6vfQ4OoP2AGvirOktlQ98ZEL1k9FaQjxa3L1abBgbuTDAdPOpvbGncC0BTVQrl+OM8xZGK6tWXt7g==", - "dev": true - }, - "strip-ansi": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", - "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", - "dev": true, - "requires": { - "ansi-regex": "^4.1.0" - } - } + "clone": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "clone": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/clone/-/clone-2.1.2.tgz", - "integrity": "sha1-G39Ln1kfHo+DZwQBYANFoCiHQ18=", - "dev": true - }, - "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==", + "node_modules/define-data-property": { + "version": "1.1.4", "dev": true, - "requires": { - "is-plain-object": "^2.0.4", - "kind-of": "^6.0.2", - "shallow-clone": "^3.0.0" - }, + "license": "MIT", "dependencies": { - "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" - } - } + "es-define-property": "^1.0.0", + "es-errors": "^1.3.0", + "gopd": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "clone-response": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/clone-response/-/clone-response-1.0.2.tgz", - "integrity": "sha1-0dyXOSAxTfZ/vrlCI7TuNQI56Ws=", + "node_modules/define-lazy-prop": { + "version": "2.0.0", "dev": true, - "requires": { - "mimic-response": "^1.0.0" + "license": "MIT", + "engines": { + "node": ">=8" } }, - "coa": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/coa/-/coa-2.0.2.tgz", - "integrity": "sha512-q5/jG+YQnSy4nRTV4F7lPepBJZ8qBNJJDBuJdoejDyLXgmL7IEo+Le2JDZudFTFt7mrCqIRaSjws4ygRCTCAXA==", + "node_modules/define-properties": { + "version": "1.2.1", "dev": true, - "requires": { - "@types/q": "^1.5.1", - "chalk": "^2.4.1", - "q": "^1.1.2" + "license": "MIT", + "dependencies": { + "define-data-property": "^1.0.1", + "has-property-descriptors": "^1.0.0", + "object-keys": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "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=" - }, - "codelyzer": { - "version": "5.2.2", - "resolved": "https://registry.npmjs.org/codelyzer/-/codelyzer-5.2.2.tgz", - "integrity": "sha512-jB4FZ1Sx7kZhvZVdf+N2BaKTdrrNZOL0Bj10RRfrhHrb3zEvXjJvvq298JPMJAiyiCS/v4zs1QlGU0ip7xGqeA==", - "dev": true, - "requires": { - "app-root-path": "^2.2.1", - "aria-query": "^3.0.0", - "axobject-query": "2.0.2", - "css-selector-tokenizer": "^0.7.1", - "cssauron": "^1.4.0", - "damerau-levenshtein": "^1.0.4", - "semver-dsl": "^1.0.1", - "source-map": "^0.5.7", - "sprintf-js": "^1.1.2" - }, - "dependencies": { - "source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", - "dev": true - }, - "sprintf-js": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.1.2.tgz", - "integrity": "sha512-VE0SOVEHCk7Qc8ulkWw3ntAzXuqf7S2lvwQaDLRnUeIEaKNQJzV6BwmLKhOqT61aGhfUMrXeaBk+oDGCzvhcug==", - "dev": true - } + "node_modules/delayed-stream": { + "version": "1.0.0", + "license": "MIT", + "engines": { + "node": ">=0.4.0" } }, - "collection-visit": { + "node_modules/delegates": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz", - "integrity": "sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA=", "dev": true, - "requires": { - "map-visit": "^1.0.0", - "object-visit": "^1.0.0" - } + "license": "MIT" }, - "color": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/color/-/color-3.2.1.tgz", - "integrity": "sha512-aBl7dZI9ENN6fUGC7mWpMTPNHmWUSNan9tuWN6ahh5ZLNk9baLJOnSMlrQkHcrfFgz2/RigjUVAjdx36VcemKA==", + "node_modules/depd": { + "version": "2.0.0", "dev": true, - "requires": { - "color-convert": "^1.9.3", - "color-string": "^1.6.0" + "license": "MIT", + "engines": { + "node": ">= 0.8" } }, - "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==", + "node_modules/dependency-graph": { + "version": "0.11.0", "dev": true, - "requires": { - "color-name": "1.1.3" + "license": "MIT", + "engines": { + "node": ">= 0.6.0" } }, - "color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", - "dev": true - }, - "color-string": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/color-string/-/color-string-1.9.0.tgz", - "integrity": "sha512-9Mrz2AQLefkH1UvASKj6v6hj/7eWgjnT/cVsR8CumieLoT+g900exWeNogqtweI8dxloXN9BDQTYro1oWu/5CQ==", + "node_modules/destroy": { + "version": "1.2.0", "dev": true, - "requires": { - "color-name": "^1.0.0", - "simple-swizzle": "^0.2.2" + "license": "MIT", + "engines": { + "node": ">= 0.8", + "npm": "1.2.8000 || >= 1.4.16" } }, - "colors": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/colors/-/colors-1.1.2.tgz", - "integrity": "sha1-FopHAXVran9RoSzgyXv6KMCE7WM=", - "dev": true - }, - "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" + "node_modules/detect-libc": { + "version": "2.0.3", + "license": "Apache-2.0", + "optional": true, + "engines": { + "node": ">=8" } }, - "comma-separated-tokens": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/comma-separated-tokens/-/comma-separated-tokens-1.0.8.tgz", - "integrity": "sha512-GHuDRO12Sypu2cV70d1dkA2EUmXHgntrzbpvOB+Qy+49ypNfGgFQIC2fhhXbnyrJRynDCAARsT7Ou0M6hirpfw==" - }, - "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==", - "dev": true - }, - "commondir": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", - "integrity": "sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs=", - "dev": 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 - }, - "component-bind": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/component-bind/-/component-bind-1.0.0.tgz", - "integrity": "sha1-AMYIq33Nk4l8AAllGx06jh5zu9E=", - "dev": true - }, - "component-emitter": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz", - "integrity": "sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==", - "dev": true + "node_modules/detect-node": { + "version": "2.1.0", + "dev": true, + "license": "MIT" }, - "component-inherit": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/component-inherit/-/component-inherit-0.0.3.tgz", - "integrity": "sha1-ZF/ErfWLcrZJ1crmUTVhnbJv8UM=", - "dev": true + "node_modules/di": { + "version": "0.0.1", + "dev": true, + "license": "MIT" }, - "compressible": { - "version": "2.0.18", - "resolved": "https://registry.npmjs.org/compressible/-/compressible-2.0.18.tgz", - "integrity": "sha512-AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg==", + "node_modules/dir-glob": { + "version": "3.0.1", "dev": true, - "requires": { - "mime-db": ">= 1.43.0 < 2" + "license": "MIT", + "dependencies": { + "path-type": "^4.0.0" + }, + "engines": { + "node": ">=8" } }, - "compression": { - "version": "1.7.4", - "resolved": "https://registry.npmjs.org/compression/-/compression-1.7.4.tgz", - "integrity": "sha512-jaSIDzP9pZVS4ZfQ+TzvtiWhdpFhE2RDHz8QJkpX9SIpLq88VueF5jJw6t+6CUQcAoA6t+x89MLrWAqpfDE8iQ==", + "node_modules/dns-packet": { + "version": "5.6.1", "dev": true, - "requires": { - "accepts": "~1.3.5", - "bytes": "3.0.0", - "compressible": "~2.0.16", - "debug": "2.6.9", - "on-headers": "~1.0.2", - "safe-buffer": "5.1.2", - "vary": "~1.1.2" - }, + "license": "MIT", "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true - }, - "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 - } + "@leichtgewicht/ip-codec": "^2.0.1" + }, + "engines": { + "node": ">=6" } }, - "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 - }, - "concat-stream": { - "version": "1.6.2", - "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz", - "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==", + "node_modules/dom-converter": { + "version": "0.2.0", "dev": true, - "requires": { - "buffer-from": "^1.0.0", - "inherits": "^2.0.3", - "readable-stream": "^2.2.2", - "typedarray": "^0.0.6" + "license": "MIT", + "dependencies": { + "utila": "~0.4" } }, - "configstore": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/configstore/-/configstore-5.0.1.tgz", - "integrity": "sha512-aMKprgk5YhBNyH25hj8wGt2+D52Sw1DRRIzqBwLp2Ya9mFmY8KPvvtvmna8SxVR9JMZ4kzMD68N22vlaRpkeFA==", + "node_modules/dom-serialize": { + "version": "2.2.1", "dev": true, - "requires": { - "dot-prop": "^5.2.0", - "graceful-fs": "^4.1.2", - "make-dir": "^3.0.0", - "unique-string": "^2.0.0", - "write-file-atomic": "^3.0.0", - "xdg-basedir": "^4.0.0" - }, - "dependencies": { - "make-dir": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", - "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", - "dev": true, - "requires": { - "semver": "^6.0.0" - } - }, - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - } + "license": "MIT", + "dependencies": { + "custom-event": "~1.0.0", + "ent": "~2.2.0", + "extend": "^3.0.0", + "void-elements": "^2.0.0" } }, - "connect": { - "version": "3.7.0", - "resolved": "https://registry.npmjs.org/connect/-/connect-3.7.0.tgz", - "integrity": "sha512-ZqRXc+tZukToSNmh5C2iWMSoV3X1YUcPbqEM4DkEG5tNQXrQUZCNVGGv3IuicnkMtPfGf3Xtp8WCXs295iQ1pQ==", + "node_modules/dom-serializer": { + "version": "1.4.1", "dev": true, - "requires": { - "debug": "2.6.9", - "finalhandler": "1.1.2", - "parseurl": "~1.3.3", - "utils-merge": "1.0.1" - }, + "license": "MIT", "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true - } + "domelementtype": "^2.0.1", + "domhandler": "^4.2.0", + "entities": "^2.0.0" + }, + "funding": { + "url": "https://github.com/cheeriojs/dom-serializer?sponsor=1" } }, - "connect-history-api-fallback": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/connect-history-api-fallback/-/connect-history-api-fallback-1.6.0.tgz", - "integrity": "sha512-e54B99q/OUoH64zYYRf3HBP5z24G38h5D3qXu23JGRoigpX5Ss4r9ZnDk3g0Z8uQC2x2lPaJ+UlWBc1ZWBWdLg==", - "dev": true - }, - "console-browserify": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/console-browserify/-/console-browserify-1.2.0.tgz", - "integrity": "sha512-ZMkYO/LkF17QvCPqM0gxw8yUzigAOZOSWSHg91FH6orS7vcEj5dVZTidN2fQ14yBSdg97RqhSNwLUXInd52OTA==", - "dev": true - }, - "console-control-strings": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", - "integrity": "sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ==", - "optional": true - }, - "constants-browserify": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/constants-browserify/-/constants-browserify-1.0.0.tgz", - "integrity": "sha1-wguW2MYXdIqvHBYCF2DNJ/y4y3U=", - "dev": true + "node_modules/domelementtype": { + "version": "2.3.0", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/fb55" + } + ], + "license": "BSD-2-Clause" }, - "content-disposition": { - "version": "0.5.4", - "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz", - "integrity": "sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==", + "node_modules/domhandler": { + "version": "4.3.1", "dev": true, - "requires": { - "safe-buffer": "5.2.1" + "license": "BSD-2-Clause", + "dependencies": { + "domelementtype": "^2.2.0" + }, + "engines": { + "node": ">= 4" + }, + "funding": { + "url": "https://github.com/fb55/domhandler?sponsor=1" } }, - "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==", - "dev": true + "node_modules/dompurify": { + "version": "2.5.6", + "license": "(MPL-2.0 OR Apache-2.0)" }, - "convert-source-map": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.8.0.tgz", - "integrity": "sha512-+OQdjP49zViI/6i7nIJpA8rAl4sV/JdPfU9nZs3VqOwGIgizICvuN2ru6fMd+4llL0tar18UYJXfZ/TWtmhUjA==", + "node_modules/domutils": { + "version": "2.8.0", "dev": true, - "requires": { - "safe-buffer": "~5.1.1" + "license": "BSD-2-Clause", + "dependencies": { + "dom-serializer": "^1.0.1", + "domelementtype": "^2.2.0", + "domhandler": "^4.2.0" }, + "funding": { + "url": "https://github.com/fb55/domutils?sponsor=1" + } + }, + "node_modules/dot-case": { + "version": "3.0.4", + "dev": true, + "license": "MIT", "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==", - "dev": true - } + "no-case": "^3.0.4", + "tslib": "^2.0.3" } }, - "cookie": { - "version": "0.4.2", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.2.tgz", - "integrity": "sha512-aSWTXFzaKWkvHO1Ny/s+ePFpvKsPnjc551iI41v3ny/ow6tBG5Vd+FuqGNhh1LxOmVzOlGUriIlOaokOvhaStA==", - "dev": true + "node_modules/dot-case/node_modules/lower-case": { + "version": "2.0.2", + "dev": true, + "license": "MIT", + "dependencies": { + "tslib": "^2.0.3" + } }, - "cookie-signature": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", - "integrity": "sha1-4wOogrNCzD7oylE6eZmXNNqzriw=", - "dev": true + "node_modules/dot-case/node_modules/no-case": { + "version": "3.0.4", + "dev": true, + "license": "MIT", + "dependencies": { + "lower-case": "^2.0.2", + "tslib": "^2.0.3" + } }, - "copy-concurrently": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/copy-concurrently/-/copy-concurrently-1.0.5.tgz", - "integrity": "sha512-f2domd9fsVDFtaFcbaRZuYXwtdmnzqbADSwhSWYxYB/Q8zsdUUFMXVRwXGDMWmbEzAn1kdRrtI1T/KTFOL4X2A==", - "dev": true, - "requires": { - "aproba": "^1.1.1", - "fs-write-stream-atomic": "^1.0.8", - "iferr": "^0.1.5", - "mkdirp": "^0.5.1", - "rimraf": "^2.5.4", - "run-queue": "^1.0.0" - }, - "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" - } - } + "node_modules/draggabilly": { + "version": "2.4.1", + "license": "MIT", + "dependencies": { + "get-size": "^2.0.2", + "unidragger": "^2.4.0" } }, - "copy-descriptor": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz", - "integrity": "sha1-Z29us8OZl8LuGsOpJP1hJHSPV40=", - "dev": true + "node_modules/duplexer": { + "version": "0.1.2", + "dev": true, + "license": "MIT" }, - "copy-to-clipboard": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/copy-to-clipboard/-/copy-to-clipboard-3.3.3.tgz", - "integrity": "sha512-2KV8NhB5JqC3ky0r9PMCAZKbUHSwtEo4CwCs0KXgruG43gX5PMqDEBbVU4OUzw2MuAWUfsuFmWvEKG5QRfSnJA==", - "requires": { - "toggle-selection": "^1.0.6" - } + "node_modules/ee-first": { + "version": "1.1.1", + "dev": true, + "license": "MIT" }, - "copy-webpack-plugin": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/copy-webpack-plugin/-/copy-webpack-plugin-6.0.3.tgz", - "integrity": "sha512-q5m6Vz4elsuyVEIUXr7wJdIdePWTubsqVbEMvf1WQnHGv0Q+9yPRu7MtYFPt+GBOXRav9lvIINifTQ1vSCs+eA==", + "node_modules/electron-to-chromium": { + "version": "1.5.17", "dev": true, - "requires": { - "cacache": "^15.0.4", - "fast-glob": "^3.2.4", - "find-cache-dir": "^3.3.1", - "glob-parent": "^5.1.1", - "globby": "^11.0.1", - "loader-utils": "^2.0.0", - "normalize-path": "^3.0.0", - "p-limit": "^3.0.1", - "schema-utils": "^2.7.0", - "serialize-javascript": "^4.0.0", - "webpack-sources": "^1.4.3" - }, - "dependencies": { - "cacache": { - "version": "15.3.0", - "resolved": "https://registry.npmjs.org/cacache/-/cacache-15.3.0.tgz", - "integrity": "sha512-VVdYzXEn+cnbXpFgWs5hTT7OScegHVmLhJIR8Ufqk3iFD6A6j5iSX1KuBTfNEv4tdJWE2PzA6IVFtcLC7fN9wQ==", - "dev": true, - "requires": { - "@npmcli/fs": "^1.0.0", - "@npmcli/move-file": "^1.0.1", - "chownr": "^2.0.0", - "fs-minipass": "^2.0.0", - "glob": "^7.1.4", - "infer-owner": "^1.0.4", - "lru-cache": "^6.0.0", - "minipass": "^3.1.1", - "minipass-collect": "^1.0.2", - "minipass-flush": "^1.0.5", - "minipass-pipeline": "^1.2.2", - "mkdirp": "^1.0.3", - "p-map": "^4.0.0", - "promise-inflight": "^1.0.1", - "rimraf": "^3.0.2", - "ssri": "^8.0.1", - "tar": "^6.0.2", - "unique-filename": "^1.1.1" - } - }, - "chownr": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", - "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==", - "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" - } - }, - "mkdirp": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", - "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", - "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-map": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", - "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", - "dev": true, - "requires": { - "aggregate-error": "^3.0.0" - } - } + "license": "ISC" + }, + "node_modules/emitter-component": { + "version": "1.1.2", + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "core-js": { - "version": "2.6.12", - "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.6.12.tgz", - "integrity": "sha512-Kb2wC0fvsWfQrgk8HU5lW6U/Lcs8+9aaYcy4ZFc6DDlo4nZ7n70dEgE5rtR0oG6ufKDUnrwfWL1mXR5ljDatrQ==" + "node_modules/emoji-regex": { + "version": "8.0.0", + "dev": true, + "license": "MIT" }, - "core-js-compat": { - "version": "3.21.1", - "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.21.1.tgz", - "integrity": "sha512-gbgX5AUvMb8gwxC7FLVWYT7Kkgu/y7+h/h1X43yJkNqhlK2fuYyQimqvKGNZFAY6CKii/GFKJ2cp/1/42TN36g==", + "node_modules/emojis-list": { + "version": "3.0.0", "dev": true, - "requires": { - "browserslist": "^4.19.1", - "semver": "7.0.0" - }, - "dependencies": { - "semver": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.0.0.tgz", - "integrity": "sha512-+GB6zVA9LWh6zovYQLALHwv5rb2PHGlJi3lfiqIHxR0uuwCgefcOJc59v9fv1w8GbStwxuuqqAjI9NMAOOgq1A==", - "dev": true - } + "license": "MIT", + "engines": { + "node": ">= 4" } }, - "core-js-pure": { - "version": "3.30.0", - "resolved": "https://registry.npmjs.org/core-js-pure/-/core-js-pure-3.30.0.tgz", - "integrity": "sha512-+2KbMFGeBU0ln/csoPqTe0i/yfHbrd2EUhNMObsGtXMKS/RTtlkYyi+/3twLcevbgNR0yM/r0Psa3TEoQRpFMQ==" + "node_modules/encodeurl": { + "version": "1.0.2", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.8" + } }, - "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==" + "node_modules/encoding": { + "version": "0.1.13", + "license": "MIT", + "dependencies": { + "iconv-lite": "^0.6.2" + } }, - "cosmiconfig": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-5.2.1.tgz", - "integrity": "sha512-H65gsXo1SKjf8zmrJ67eJk8aIRKV5ff2D4uKZIBZShbhGSpEmsQOPW/SKMKYhSTrqR7ufy6RP69rPogdaPh/kA==", - "dev": true, - "requires": { - "import-fresh": "^2.0.0", - "is-directory": "^0.3.1", - "js-yaml": "^3.13.1", - "parse-json": "^4.0.0" + "node_modules/encoding/node_modules/iconv-lite": { + "version": "0.6.3", + "license": "MIT", + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3.0.0" + }, + "engines": { + "node": ">=0.10.0" } }, - "create-ecdh": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/create-ecdh/-/create-ecdh-4.0.4.tgz", - "integrity": "sha512-mf+TCx8wWc9VpuxfP2ht0iSISLZnt0JgWlrOKZiNqyUZWnjIaCIVNQArMHnCZKfEYRg6IM7A+NeJoN8gf/Ws0A==", - "dev": true, - "requires": { - "bn.js": "^4.1.0", - "elliptic": "^6.5.3" - }, + "node_modules/end-of-stream": { + "version": "1.4.4", + "license": "MIT", + "optional": true, "dependencies": { - "bn.js": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", - "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", - "dev": true - } + "once": "^1.4.0" } }, - "create-hash": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz", - "integrity": "sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==", + "node_modules/engine.io": { + "version": "6.5.5", "dev": true, - "requires": { - "cipher-base": "^1.0.1", - "inherits": "^2.0.1", - "md5.js": "^1.3.4", - "ripemd160": "^2.0.1", - "sha.js": "^2.4.0" + "license": "MIT", + "dependencies": { + "@types/cookie": "^0.4.1", + "@types/cors": "^2.8.12", + "@types/node": ">=10.0.0", + "accepts": "~1.3.4", + "base64id": "2.0.0", + "cookie": "~0.4.1", + "cors": "~2.8.5", + "debug": "~4.3.1", + "engine.io-parser": "~5.2.1", + "ws": "~8.17.1" + }, + "engines": { + "node": ">=10.2.0" } }, - "create-hmac": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz", - "integrity": "sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==", + "node_modules/engine.io-parser": { + "version": "5.2.3", "dev": true, - "requires": { - "cipher-base": "^1.0.3", - "create-hash": "^1.1.0", - "inherits": "^2.0.1", - "ripemd160": "^2.0.0", - "safe-buffer": "^5.0.1", - "sha.js": "^2.4.8" - } - }, - "create-react-class": { - "version": "15.7.0", - "resolved": "https://registry.npmjs.org/create-react-class/-/create-react-class-15.7.0.tgz", - "integrity": "sha512-QZv4sFWG9S5RUvkTYWbflxeZX+JG7Cz0Tn33rQBJ+WFQTqTfUTjMjiv9tnfXazjsO5r0KhPs+AqCjyrQX6h2ng==", - "requires": { - "loose-envify": "^1.3.1", - "object-assign": "^4.1.1" + "license": "MIT", + "engines": { + "node": ">=10.0.0" } }, - "cross-fetch": { - "version": "3.1.5", - "resolved": "https://registry.npmjs.org/cross-fetch/-/cross-fetch-3.1.5.tgz", - "integrity": "sha512-lvb1SBsI0Z7GDwmuid+mU3kWVBwTVUbe7S0H52yaaAdQOXq2YktTCZdlAcNKFzE6QtRz0snpw9bNiPeOIkkQvw==", - "requires": { - "node-fetch": "2.6.7" - }, - "dependencies": { - "node-fetch": { - "version": "2.6.7", - "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.7.tgz", - "integrity": "sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==", - "requires": { - "whatwg-url": "^5.0.0" - } - } + "node_modules/enhanced-resolve": { + "version": "5.17.1", + "dev": true, + "license": "MIT", + "dependencies": { + "graceful-fs": "^4.2.4", + "tapable": "^2.2.0" + }, + "engines": { + "node": ">=10.13.0" } }, - "cross-spawn": { - "version": "6.0.5", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", - "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", + "node_modules/ent": { + "version": "2.2.1", "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" - }, + "license": "MIT", "dependencies": { - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "dev": true - } + "punycode": "^1.4.1" + }, + "engines": { + "node": ">= 0.4" } }, - "crypto-browserify": { - "version": "3.12.0", - "resolved": "https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-3.12.0.tgz", - "integrity": "sha512-fz4spIh+znjO2VjL+IdhEpRJ3YN6sMzITSBijk6FK2UvTqruSQW+/cCZTSNsMiZNvUeq0CqurF+dAbyiGOY6Wg==", + "node_modules/entities": { + "version": "2.2.0", "dev": true, - "requires": { - "browserify-cipher": "^1.0.0", - "browserify-sign": "^4.0.0", - "create-ecdh": "^4.0.0", - "create-hash": "^1.1.0", - "create-hmac": "^1.1.0", - "diffie-hellman": "^5.0.0", - "inherits": "^2.0.1", - "pbkdf2": "^3.0.3", - "public-encrypt": "^4.0.0", - "randombytes": "^2.0.0", - "randomfill": "^1.0.3" + "license": "BSD-2-Clause", + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" } }, - "crypto-random-string": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-2.0.0.tgz", - "integrity": "sha512-v1plID3y9r/lPhviJ1wrXpLeyUIGAZ2SHNYTEapm7/8A9nLPoyvVp3RK/EPFqn5kEznyWgYZNsRtYYIWbuG8KA==", - "dev": true - }, - "css": { - "version": "2.2.4", - "resolved": "https://registry.npmjs.org/css/-/css-2.2.4.tgz", - "integrity": "sha512-oUnjmWpy0niI3x/mPL8dVEI1l7MnG3+HHyRPHf+YFSbK+svOhXpmSOcDURUh2aOCgl2grzrOPt1nHLuCVFULLw==", + "node_modules/env-paths": { + "version": "2.2.1", "dev": true, - "requires": { - "inherits": "^2.0.3", - "source-map": "^0.6.1", - "source-map-resolve": "^0.5.2", - "urix": "^0.1.0" + "license": "MIT", + "engines": { + "node": ">=6" } }, - "css-color-names": { - "version": "0.0.4", - "resolved": "https://registry.npmjs.org/css-color-names/-/css-color-names-0.0.4.tgz", - "integrity": "sha1-gIrcLnnPhHOAabZGyyDsJ762KeA=", - "dev": true - }, - "css-declaration-sorter": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/css-declaration-sorter/-/css-declaration-sorter-4.0.1.tgz", - "integrity": "sha512-BcxQSKTSEEQUftYpBVnsH4SF05NTuBokb19/sBt6asXGKZ/6VP7PLG1CBCkFDYOnhXhPh0jMhO6xZ71oYHXHBA==", + "node_modules/err-code": { + "version": "2.0.3", "dev": true, - "requires": { - "postcss": "^7.0.1", - "timsort": "^0.3.0" - } + "license": "MIT" }, - "css-loader": { - "version": "3.5.1", - "resolved": "https://registry.npmjs.org/css-loader/-/css-loader-3.5.1.tgz", - "integrity": "sha512-0G4CbcZzQ9D1Q6ndOfjFuMDo8uLYMu5vc9Abs5ztyHcKvmil6GJrMiNjzzi3tQvUF+mVRuDg7bE6Oc0Prolgig==", + "node_modules/errno": { + "version": "0.1.8", "dev": true, - "requires": { - "camelcase": "^5.3.1", - "cssesc": "^3.0.0", - "icss-utils": "^4.1.1", - "loader-utils": "^1.2.3", - "normalize-path": "^3.0.0", - "postcss": "^7.0.27", - "postcss-modules-extract-imports": "^2.0.0", - "postcss-modules-local-by-default": "^3.0.2", - "postcss-modules-scope": "^2.2.0", - "postcss-modules-values": "^3.0.0", - "postcss-value-parser": "^4.0.3", - "schema-utils": "^2.6.5", - "semver": "^6.3.0" - }, + "license": "MIT", + "optional": true, "dependencies": { - "json5": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", - "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", - "dev": true, - "requires": { - "minimist": "^1.2.0" - } - }, - "loader-utils": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.0.tgz", - "integrity": "sha512-qH0WSMBtn/oHuwjy/NucEgbx5dbxxnxup9s4PVXJUDHZBQY+s0NWA9rJf53RBnQZxfch7euUui7hpoAPvALZdA==", - "dev": true, - "requires": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^1.0.1" - } - }, - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - } + "prr": "~1.0.1" + }, + "bin": { + "errno": "cli.js" } }, - "css-parse": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/css-parse/-/css-parse-2.0.0.tgz", - "integrity": "sha1-pGjuZnwW2BzPBcWMONKpfHgNv9Q=", + "node_modules/error-ex": { + "version": "1.3.2", "dev": true, - "requires": { - "css": "^2.0.0" + "license": "MIT", + "dependencies": { + "is-arrayish": "^0.2.1" } }, - "css-select": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/css-select/-/css-select-2.1.0.tgz", - "integrity": "sha512-Dqk7LQKpwLoH3VovzZnkzegqNSuAziQyNZUcrdDM401iY+R5NkGBXGmtO05/yaXQziALuPogeG0b7UAgjnTJTQ==", + "node_modules/es-abstract": { + "version": "1.23.3", "dev": true, - "requires": { - "boolbase": "^1.0.0", - "css-what": "^3.2.1", - "domutils": "^1.7.0", - "nth-check": "^1.0.2" + "license": "MIT", + "dependencies": { + "array-buffer-byte-length": "^1.0.1", + "arraybuffer.prototype.slice": "^1.0.3", + "available-typed-arrays": "^1.0.7", + "call-bind": "^1.0.7", + "data-view-buffer": "^1.0.1", + "data-view-byte-length": "^1.0.1", + "data-view-byte-offset": "^1.0.0", + "es-define-property": "^1.0.0", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.0.0", + "es-set-tostringtag": "^2.0.3", + "es-to-primitive": "^1.2.1", + "function.prototype.name": "^1.1.6", + "get-intrinsic": "^1.2.4", + "get-symbol-description": "^1.0.2", + "globalthis": "^1.0.3", + "gopd": "^1.0.1", + "has-property-descriptors": "^1.0.2", + "has-proto": "^1.0.3", + "has-symbols": "^1.0.3", + "hasown": "^2.0.2", + "internal-slot": "^1.0.7", + "is-array-buffer": "^3.0.4", + "is-callable": "^1.2.7", + "is-data-view": "^1.0.1", + "is-negative-zero": "^2.0.3", + "is-regex": "^1.1.4", + "is-shared-array-buffer": "^1.0.3", + "is-string": "^1.0.7", + "is-typed-array": "^1.1.13", + "is-weakref": "^1.0.2", + "object-inspect": "^1.13.1", + "object-keys": "^1.1.1", + "object.assign": "^4.1.5", + "regexp.prototype.flags": "^1.5.2", + "safe-array-concat": "^1.1.2", + "safe-regex-test": "^1.0.3", + "string.prototype.trim": "^1.2.9", + "string.prototype.trimend": "^1.0.8", + "string.prototype.trimstart": "^1.0.8", + "typed-array-buffer": "^1.0.2", + "typed-array-byte-length": "^1.0.1", + "typed-array-byte-offset": "^1.0.2", + "typed-array-length": "^1.0.6", + "unbox-primitive": "^1.0.2", + "which-typed-array": "^1.1.15" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "css-select-base-adapter": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/css-select-base-adapter/-/css-select-base-adapter-0.1.1.tgz", - "integrity": "sha512-jQVeeRG70QI08vSTwf1jHxp74JoZsr2XSgETae8/xC8ovSnL2WF87GTLO86Sbwdt2lK4Umg4HnnwMO4YF3Ce7w==", - "dev": true - }, - "css-selector-tokenizer": { - "version": "0.7.3", - "resolved": "https://registry.npmjs.org/css-selector-tokenizer/-/css-selector-tokenizer-0.7.3.tgz", - "integrity": "sha512-jWQv3oCEL5kMErj4wRnK/OPoBi0D+P1FR2cDCKYPaMeD2eW3/mttav8HT4hT1CKopiJI/psEULjkClhvJo4Lvg==", + "node_modules/es-define-property": { + "version": "1.0.0", "dev": true, - "requires": { - "cssesc": "^3.0.0", - "fastparse": "^1.1.2" + "license": "MIT", + "dependencies": { + "get-intrinsic": "^1.2.4" + }, + "engines": { + "node": ">= 0.4" } }, - "css-tree": { - "version": "1.0.0-alpha.37", - "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-1.0.0-alpha.37.tgz", - "integrity": "sha512-DMxWJg0rnz7UgxKT0Q1HU/L9BeJI0M6ksor0OgqOnF+aRCDWg/N2641HmVyU9KVIu0OVVWOb2IpC9A+BJRnejg==", + "node_modules/es-errors": { + "version": "1.3.0", "dev": true, - "requires": { - "mdn-data": "2.0.4", - "source-map": "^0.6.1" + "license": "MIT", + "engines": { + "node": ">= 0.4" } }, - "css-what": { - "version": "3.4.2", - "resolved": "https://registry.npmjs.org/css-what/-/css-what-3.4.2.tgz", - "integrity": "sha512-ACUm3L0/jiZTqfzRM3Hi9Q8eZqd6IK37mMWPLz9PJxkLWllYeRf+EHUSHYEtFop2Eqytaq1FizFVh7XfBnXCDQ==", - "dev": true - }, - "css.escape": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/css.escape/-/css.escape-1.5.1.tgz", - "integrity": "sha1-QuJ9T6BK4y+TGktNQZH6nN3ul8s=" + "node_modules/es-module-lexer": { + "version": "0.9.3", + "dev": true, + "license": "MIT" }, - "cssauron": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/cssauron/-/cssauron-1.4.0.tgz", - "integrity": "sha1-pmAt/34EqDBtwNuaVR6S6LVmKtg=", + "node_modules/es-object-atoms": { + "version": "1.0.0", "dev": true, - "requires": { - "through": "X.X.X" + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0" + }, + "engines": { + "node": ">= 0.4" } }, - "cssesc": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", - "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", - "dev": true - }, - "cssnano": { - "version": "4.1.10", - "resolved": "https://registry.npmjs.org/cssnano/-/cssnano-4.1.10.tgz", - "integrity": "sha512-5wny+F6H4/8RgNlaqab4ktc3e0/blKutmq8yNlBFXA//nSFFAqAngjNVRzUvCgYROULmZZUoosL/KSoZo5aUaQ==", + "node_modules/es-set-tostringtag": { + "version": "2.0.3", "dev": true, - "requires": { - "cosmiconfig": "^5.0.0", - "cssnano-preset-default": "^4.0.7", - "is-resolvable": "^1.0.0", - "postcss": "^7.0.0" + "license": "MIT", + "dependencies": { + "get-intrinsic": "^1.2.4", + "has-tostringtag": "^1.0.2", + "hasown": "^2.0.1" + }, + "engines": { + "node": ">= 0.4" } }, - "cssnano-preset-default": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/cssnano-preset-default/-/cssnano-preset-default-4.0.8.tgz", - "integrity": "sha512-LdAyHuq+VRyeVREFmuxUZR1TXjQm8QQU/ktoo/x7bz+SdOge1YKc5eMN6pRW7YWBmyq59CqYba1dJ5cUukEjLQ==", - "dev": true, - "requires": { - "css-declaration-sorter": "^4.0.1", - "cssnano-util-raw-cache": "^4.0.1", - "postcss": "^7.0.0", - "postcss-calc": "^7.0.1", - "postcss-colormin": "^4.0.3", - "postcss-convert-values": "^4.0.1", - "postcss-discard-comments": "^4.0.2", - "postcss-discard-duplicates": "^4.0.2", - "postcss-discard-empty": "^4.0.1", - "postcss-discard-overridden": "^4.0.1", - "postcss-merge-longhand": "^4.0.11", - "postcss-merge-rules": "^4.0.3", - "postcss-minify-font-values": "^4.0.2", - "postcss-minify-gradients": "^4.0.2", - "postcss-minify-params": "^4.0.2", - "postcss-minify-selectors": "^4.0.2", - "postcss-normalize-charset": "^4.0.1", - "postcss-normalize-display-values": "^4.0.2", - "postcss-normalize-positions": "^4.0.2", - "postcss-normalize-repeat-style": "^4.0.2", - "postcss-normalize-string": "^4.0.2", - "postcss-normalize-timing-functions": "^4.0.2", - "postcss-normalize-unicode": "^4.0.1", - "postcss-normalize-url": "^4.0.1", - "postcss-normalize-whitespace": "^4.0.2", - "postcss-ordered-values": "^4.1.2", - "postcss-reduce-initial": "^4.0.3", - "postcss-reduce-transforms": "^4.0.2", - "postcss-svgo": "^4.0.3", - "postcss-unique-selectors": "^4.0.1" - } - }, - "cssnano-util-get-arguments": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/cssnano-util-get-arguments/-/cssnano-util-get-arguments-4.0.0.tgz", - "integrity": "sha1-7ToIKZ8h11dBsg87gfGU7UnMFQ8=", - "dev": true - }, - "cssnano-util-get-match": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/cssnano-util-get-match/-/cssnano-util-get-match-4.0.0.tgz", - "integrity": "sha1-wOTKB/U4a7F+xeUiULT1lhNlFW0=", - "dev": true - }, - "cssnano-util-raw-cache": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/cssnano-util-raw-cache/-/cssnano-util-raw-cache-4.0.1.tgz", - "integrity": "sha512-qLuYtWK2b2Dy55I8ZX3ky1Z16WYsx544Q0UWViebptpwn/xDBmog2TLg4f+DBMg1rJ6JDWtn96WHbOKDWt1WQA==", + "node_modules/es-to-primitive": { + "version": "1.2.1", "dev": true, - "requires": { - "postcss": "^7.0.0" + "license": "MIT", + "dependencies": { + "is-callable": "^1.1.4", + "is-date-object": "^1.0.1", + "is-symbol": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "cssnano-util-same-parent": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/cssnano-util-same-parent/-/cssnano-util-same-parent-4.0.1.tgz", - "integrity": "sha512-WcKx5OY+KoSIAxBW6UBBRay1U6vkYheCdjyVNDm85zt5K9mHoGOfsOsqIszfAqrQQFIIKgjh2+FDgIj/zsl21Q==", - "dev": true - }, - "csso": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/csso/-/csso-4.2.0.tgz", - "integrity": "sha512-wvlcdIbf6pwKEk7vHj8/Bkc0B4ylXZruLvOgs9doS5eOsOpuodOV2zJChSpkp+pRpYQLQMeF04nr3Z68Sta9jA==", - "dev": true, - "requires": { - "css-tree": "^1.1.2" - }, - "dependencies": { - "css-tree": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-1.1.3.tgz", - "integrity": "sha512-tRpdppF7TRazZrjJ6v3stzv93qxRcSsFmW6cX0Zm2NVKpxE1WV1HblnghVv9TreireHkqI/VDEsfolRF1p6y7Q==", - "dev": true, - "requires": { - "mdn-data": "2.0.14", - "source-map": "^0.6.1" - } - }, - "mdn-data": { - "version": "2.0.14", - "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.14.tgz", - "integrity": "sha512-dn6wd0uw5GsdswPFfsgMp5NSB0/aDe6fK94YJV/AJDYXL6HVLWBsxeq7js7Ad+mU2K9LAlwpk6kN2D5mwCPVow==", - "dev": true - } + "node_modules/es5-ext": { + "version": "0.10.64", + "hasInstallScript": true, + "license": "ISC", + "dependencies": { + "es6-iterator": "^2.0.3", + "es6-symbol": "^3.1.3", + "esniff": "^2.0.1", + "next-tick": "^1.1.0" + }, + "engines": { + "node": ">=0.10" } }, - "cuint": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/cuint/-/cuint-0.2.2.tgz", - "integrity": "sha1-QICG1AlVDCYxFVYZ6fp7ytw7mRs=", - "dev": true - }, - "custom-event": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/custom-event/-/custom-event-1.0.1.tgz", - "integrity": "sha1-XQKkaFCt8bSjF5RqOSj8y1v9BCU=", - "dev": true - }, - "cyclist": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/cyclist/-/cyclist-1.0.1.tgz", - "integrity": "sha1-WW6WmP0MgOEgOMK4LW6xs1tiJNk=", - "dev": true - }, - "d": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/d/-/d-1.0.1.tgz", - "integrity": "sha512-m62ShEObQ39CfralilEQRjH6oAMtNCV1xJyEx5LpRYUVN+EviphDgUc/F3hnYbADmkiNs67Y+3ylmlG7Lnu+FA==", - "requires": { - "es5-ext": "^0.10.50", - "type": "^1.0.1" + "node_modules/es6-iterator": { + "version": "2.0.3", + "license": "MIT", + "dependencies": { + "d": "1", + "es5-ext": "^0.10.35", + "es6-symbol": "^3.1.1" } }, - "damerau-levenshtein": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/damerau-levenshtein/-/damerau-levenshtein-1.0.8.tgz", - "integrity": "sha512-sdQSFB7+llfUcQHUQO3+B8ERRj0Oa4w9POWMI/puGtuf7gFywGmkaLCElnudfTiKZV+NvHqL0ifzdrI8Ro7ESA==", - "dev": true + "node_modules/es6-symbol": { + "version": "3.1.4", + "license": "ISC", + "dependencies": { + "d": "^1.0.2", + "ext": "^1.7.0" + }, + "engines": { + "node": ">=0.12" + } }, - "dashdash": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", - "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=", + "node_modules/es6-templates": { + "version": "0.2.3", "dev": true, - "requires": { - "assert-plus": "^1.0.0" + "license": "Apache 2", + "dependencies": { + "recast": "~0.11.12", + "through": "~2.3.6" } }, - "date-format": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/date-format/-/date-format-2.1.0.tgz", - "integrity": "sha512-bYQuGLeFxhkxNOF3rcMtiZxvCBAquGzZm6oWA1oZ0g2THUzivaRhv8uOhdr19LmoobSOLoIAxeUK2RdbM8IFTA==", - "dev": true + "node_modules/es6-weak-map": { + "version": "2.0.3", + "license": "ISC", + "dependencies": { + "d": "1", + "es5-ext": "^0.10.46", + "es6-iterator": "^2.0.3", + "es6-symbol": "^3.1.1" + } }, - "debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "node_modules/esbuild": { + "version": "0.15.5", "dev": true, - "requires": { - "ms": "2.1.2" + "hasInstallScript": true, + "license": "MIT", + "optional": true, + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { + "node": ">=12" + }, + "optionalDependencies": { + "@esbuild/linux-loong64": "0.15.5", + "esbuild-android-64": "0.15.5", + "esbuild-android-arm64": "0.15.5", + "esbuild-darwin-64": "0.15.5", + "esbuild-darwin-arm64": "0.15.5", + "esbuild-freebsd-64": "0.15.5", + "esbuild-freebsd-arm64": "0.15.5", + "esbuild-linux-32": "0.15.5", + "esbuild-linux-64": "0.15.5", + "esbuild-linux-arm": "0.15.5", + "esbuild-linux-arm64": "0.15.5", + "esbuild-linux-mips64le": "0.15.5", + "esbuild-linux-ppc64le": "0.15.5", + "esbuild-linux-riscv64": "0.15.5", + "esbuild-linux-s390x": "0.15.5", + "esbuild-netbsd-64": "0.15.5", + "esbuild-openbsd-64": "0.15.5", + "esbuild-sunos-64": "0.15.5", + "esbuild-windows-32": "0.15.5", + "esbuild-windows-64": "0.15.5", + "esbuild-windows-arm64": "0.15.5" + } + }, + "node_modules/esbuild-darwin-arm64": { + "version": "0.15.5", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=12" } }, - "debuglog": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/debuglog/-/debuglog-1.0.1.tgz", - "integrity": "sha1-qiT/uaw9+aI1GDfPstJ5NgzXhJI=", - "dev": true - }, - "decamelize": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", - "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", - "dev": true - }, - "decode-uri-component": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz", - "integrity": "sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU=", - "dev": true - }, - "decompress-response": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-3.3.0.tgz", - "integrity": "sha1-gKTdMjdIOEv6JICDYirt7Jgq3/M=", + "node_modules/esbuild-wasm": { + "version": "0.15.5", "dev": true, - "requires": { - "mimic-response": "^1.0.0" + "license": "MIT", + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { + "node": ">=12" } }, - "deep-equal": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-1.1.1.tgz", - "integrity": "sha512-yd9c5AdiqVcR+JjcwUQb9DkhJc8ngNr0MahEBGvDiJw8puWab2yZlh+nkasOnZP+EGTAP6rRp2JzJhJZzvNF8g==", + "node_modules/escalade": { + "version": "3.2.0", "dev": true, - "requires": { - "is-arguments": "^1.0.4", - "is-date-object": "^1.0.1", - "is-regex": "^1.0.4", - "object-is": "^1.0.1", - "object-keys": "^1.1.1", - "regexp.prototype.flags": "^1.2.0" + "license": "MIT", + "engines": { + "node": ">=6" } }, - "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==" + "node_modules/escape-html": { + "version": "1.0.3", + "dev": true, + "license": "MIT" }, - "deepmerge": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.1.tgz", - "integrity": "sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==" + "node_modules/escape-string-regexp": { + "version": "1.0.5", + "license": "MIT", + "engines": { + "node": ">=0.8.0" + } }, - "default-gateway": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/default-gateway/-/default-gateway-4.2.0.tgz", - "integrity": "sha512-h6sMrVB1VMWVrW13mSc6ia/DwYYw5MN6+exNu1OaJeFac5aSAvwM7lZ0NVfTABuSkQelr4h5oebg3KB1XPdjgA==", + "node_modules/eslint-scope": { + "version": "5.1.1", "dev": true, - "requires": { - "execa": "^1.0.0", - "ip-regex": "^2.1.0" + "license": "BSD-2-Clause", + "dependencies": { + "esrecurse": "^4.3.0", + "estraverse": "^4.1.1" + }, + "engines": { + "node": ">=8.0.0" } }, - "default-require-extensions": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/default-require-extensions/-/default-require-extensions-2.0.0.tgz", - "integrity": "sha1-9fj7sYp9bVCyH2QfZJ67Uiz+JPc=", - "dev": true, - "requires": { - "strip-bom": "^3.0.0" + "node_modules/esniff": { + "version": "2.0.1", + "license": "ISC", + "dependencies": { + "d": "^1.0.1", + "es5-ext": "^0.10.62", + "event-emitter": "^0.3.5", + "type": "^2.7.2" + }, + "engines": { + "node": ">=0.10" } }, - "defaults": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/defaults/-/defaults-1.0.3.tgz", - "integrity": "sha1-xlYFHpgX2f8I7YgUd/P+QBnz730=", + "node_modules/esprima": { + "version": "4.0.1", "dev": true, - "requires": { - "clone": "^1.0.2" + "license": "BSD-2-Clause", + "bin": { + "esparse": "bin/esparse.js", + "esvalidate": "bin/esvalidate.js" }, + "engines": { + "node": ">=4" + } + }, + "node_modules/esrecurse": { + "version": "4.3.0", + "dev": true, + "license": "BSD-2-Clause", "dependencies": { - "clone": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz", - "integrity": "sha1-2jCcwmPfFZlMaIypAheco8fNfH4=", - "dev": true - } + "estraverse": "^5.2.0" + }, + "engines": { + "node": ">=4.0" } }, - "defer-to-connect": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/defer-to-connect/-/defer-to-connect-1.1.3.tgz", - "integrity": "sha512-0ISdNousHvZT2EiFlZeZAHBUvSxmKswVCEf8hW7KWgG4a8MVEu/3Vb6uWYozkjylyCxe0JBIiRB1jV45S70WVQ==", - "dev": true + "node_modules/esrecurse/node_modules/estraverse": { + "version": "5.3.0", + "dev": true, + "license": "BSD-2-Clause", + "engines": { + "node": ">=4.0" + } }, - "define-properties": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz", - "integrity": "sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==", + "node_modules/estraverse": { + "version": "4.3.0", "dev": true, - "requires": { - "object-keys": "^1.0.12" + "license": "BSD-2-Clause", + "engines": { + "node": ">=4.0" } }, - "define-property": { + "node_modules/estree-walker": { "version": "2.0.2", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz", - "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==", "dev": true, - "requires": { - "is-descriptor": "^1.0.2", - "isobject": "^3.0.1" - }, - "dependencies": { - "is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-data-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", - "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-descriptor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", - "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", - "dev": true, - "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - } - } + "license": "MIT" + }, + "node_modules/esutils": { + "version": "2.0.3", + "license": "BSD-2-Clause", + "engines": { + "node": ">=0.10.0" } }, - "del": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/del/-/del-4.1.1.tgz", - "integrity": "sha512-QwGuEUouP2kVwQenAsOof5Fv8K9t3D8Ca8NxcXKrIpEHjTXK5J2nXLdP+ALI1cgv8wj7KuwBhTwBkOZSJKM5XQ==", - "dev": true, - "requires": { - "@types/glob": "^7.1.1", - "globby": "^6.1.0", - "is-path-cwd": "^2.0.0", - "is-path-in-cwd": "^2.0.0", - "p-map": "^2.0.0", - "pify": "^4.0.1", - "rimraf": "^2.6.3" - }, - "dependencies": { - "array-union": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz", - "integrity": "sha1-mjRBDk9OPaI96jdb5b5w8kd47Dk=", - "dev": true, - "requires": { - "array-uniq": "^1.0.1" - } - }, - "globby": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/globby/-/globby-6.1.0.tgz", - "integrity": "sha1-9abXDoOV4hyFj7BInWTfAkJNUGw=", - "dev": true, - "requires": { - "array-union": "^1.0.1", - "glob": "^7.0.3", - "object-assign": "^4.0.1", - "pify": "^2.0.0", - "pinkie-promise": "^2.0.0" - }, - "dependencies": { - "pify": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", - "dev": true - } - } - }, - "p-map": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/p-map/-/p-map-2.1.0.tgz", - "integrity": "sha512-y3b8Kpd8OAN444hxfBbFfj1FY/RjtTd8tzYwhUqNYXx0fXx2iX4maP4Qr6qhIKbQXI02wTLAda4fYUbDagTUFw==", - "dev": true - }, - "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" - } - } + "node_modules/etag": { + "version": "1.8.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.6" } }, - "delayed-stream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", - "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=" + "node_modules/ev-emitter": { + "version": "1.1.1", + "license": "MIT" }, - "delegates": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", - "integrity": "sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ==", - "optional": true + "node_modules/event-emitter": { + "version": "0.3.5", + "license": "MIT", + "dependencies": { + "d": "1", + "es5-ext": "~0.10.14" + } }, - "depd": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", - "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=", - "dev": true + "node_modules/eventemitter-asyncresource": { + "version": "1.0.0", + "dev": true, + "license": "MIT" }, - "dependency-graph": { - "version": "0.7.2", - "resolved": "https://registry.npmjs.org/dependency-graph/-/dependency-graph-0.7.2.tgz", - "integrity": "sha512-KqtH4/EZdtdfWX0p6MGP9jljvxSY6msy/pRUD4jgNwVpv3v1QmNLlsB3LDSSUg79BRVSn7jI1QPRtArGABovAQ==", - "dev": true + "node_modules/eventemitter3": { + "version": "4.0.7", + "dev": true, + "license": "MIT" }, - "des.js": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/des.js/-/des.js-1.0.1.tgz", - "integrity": "sha512-Q0I4pfFrv2VPd34/vfLrFOoRmlYj3OV50i7fskps1jZWK1kApMWWT9G6RRUeYedLcBDIhnSDaUvJMb3AhUlaEA==", + "node_modules/events": { + "version": "3.3.0", "dev": true, - "requires": { - "inherits": "^2.0.1", - "minimalistic-assert": "^1.0.0" + "license": "MIT", + "engines": { + "node": ">=0.8.x" } }, - "destroy": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz", - "integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA=", - "dev": true - }, - "detect-libc": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-1.0.3.tgz", - "integrity": "sha512-pGjwhsmsp4kL2RTz08wcOlGN83otlqHeD/Z5T8GXZB+/YcpQ/dgo+lbU8ZsGxV0HIvqqxo9l7mqYwyYMD9bKDg==", - "optional": true - }, - "detect-node": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/detect-node/-/detect-node-2.1.0.tgz", - "integrity": "sha512-T0NIuQpnTvFDATNuHN5roPwSBG83rFsuO+MXXH9/3N1eFbn4wcPjttvjMLEPWJ0RGUYgQE7cGgS3tNxbqCGM7g==", - "dev": true + "node_modules/execa": { + "version": "5.1.1", + "dev": true, + "license": "MIT", + "dependencies": { + "cross-spawn": "^7.0.3", + "get-stream": "^6.0.0", + "human-signals": "^2.1.0", + "is-stream": "^2.0.0", + "merge-stream": "^2.0.0", + "npm-run-path": "^4.0.1", + "onetime": "^5.1.2", + "signal-exit": "^3.0.3", + "strip-final-newline": "^2.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sindresorhus/execa?sponsor=1" + } }, - "dezalgo": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/dezalgo/-/dezalgo-1.0.4.tgz", - "integrity": "sha512-rXSP0bf+5n0Qonsb+SVVfNfIsimO4HEtmnIpPHY8Q1UCzKlQrDMfdobr8nJOOsRgWCyMRqeSBQzmWUMq7zvVig==", + "node_modules/execa/node_modules/cross-spawn": { + "version": "7.0.3", "dev": true, - "requires": { - "asap": "^2.0.0", - "wrappy": "1" + "license": "MIT", + "dependencies": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + }, + "engines": { + "node": ">= 8" } }, - "di": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/di/-/di-0.0.1.tgz", - "integrity": "sha1-gGZJMmzqp8qjMG112YXqJ0i6kTw=", - "dev": true - }, - "diff": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/diff/-/diff-3.5.0.tgz", - "integrity": "sha512-A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA==", - "dev": true - }, - "diffie-hellman": { - "version": "5.0.3", - "resolved": "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz", - "integrity": "sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg==", + "node_modules/execa/node_modules/is-stream": { + "version": "2.0.1", "dev": true, - "requires": { - "bn.js": "^4.1.0", - "miller-rabin": "^4.0.0", - "randombytes": "^2.0.0" + "license": "MIT", + "engines": { + "node": ">=8" }, - "dependencies": { - "bn.js": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", - "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", - "dev": true - } + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "dir-glob": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", - "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", + "node_modules/execa/node_modules/path-key": { + "version": "3.1.1", "dev": true, - "requires": { - "path-type": "^4.0.0" + "license": "MIT", + "engines": { + "node": ">=8" } }, - "dns-equal": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/dns-equal/-/dns-equal-1.0.0.tgz", - "integrity": "sha1-s55/HabrCnW6nBcySzR1PEfgZU0=", - "dev": true + "node_modules/execa/node_modules/shebang-command": { + "version": "2.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "shebang-regex": "^3.0.0" + }, + "engines": { + "node": ">=8" + } }, - "dns-packet": { - "version": "1.3.4", - "resolved": "https://registry.npmjs.org/dns-packet/-/dns-packet-1.3.4.tgz", - "integrity": "sha512-BQ6F4vycLXBvdrJZ6S3gZewt6rcrks9KBgM9vrhW+knGRqc8uEdT7fuCwloc7nny5xNoMJ17HGH0R/6fpo8ECA==", + "node_modules/execa/node_modules/shebang-regex": { + "version": "3.0.0", "dev": true, - "requires": { - "ip": "^1.1.0", - "safe-buffer": "^5.0.1" + "license": "MIT", + "engines": { + "node": ">=8" } }, - "dns-txt": { + "node_modules/execa/node_modules/which": { "version": "2.0.2", - "resolved": "https://registry.npmjs.org/dns-txt/-/dns-txt-2.0.2.tgz", - "integrity": "sha1-uR2Ab10nGI5Ks+fRB9iBocxGQrY=", "dev": true, - "requires": { - "buffer-indexof": "^1.0.0" + "license": "ISC", + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" } }, - "dom-converter": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/dom-converter/-/dom-converter-0.2.0.tgz", - "integrity": "sha512-gd3ypIPfOMr9h5jIKq8E3sHOTCjeirnl0WK5ZdS1AW0Odt0b1PaWaHdJ4Qk4klv+YB9aJBS7mESXjFoDQPu6DA==", + "node_modules/exif-js": { + "version": "2.1.1", + "license": "MIT" + }, + "node_modules/expand-template": { + "version": "2.0.3", + "license": "(MIT OR WTFPL)", + "optional": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/exponential-backoff": { + "version": "3.1.1", "dev": true, - "requires": { - "utila": "~0.4" + "license": "Apache-2.0" + }, + "node_modules/express": { + "version": "4.19.2", + "dev": true, + "license": "MIT", + "dependencies": { + "accepts": "~1.3.8", + "array-flatten": "1.1.1", + "body-parser": "1.20.2", + "content-disposition": "0.5.4", + "content-type": "~1.0.4", + "cookie": "0.6.0", + "cookie-signature": "1.0.6", + "debug": "2.6.9", + "depd": "2.0.0", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "finalhandler": "1.2.0", + "fresh": "0.5.2", + "http-errors": "2.0.0", + "merge-descriptors": "1.0.1", + "methods": "~1.1.2", + "on-finished": "2.4.1", + "parseurl": "~1.3.3", + "path-to-regexp": "0.1.7", + "proxy-addr": "~2.0.7", + "qs": "6.11.0", + "range-parser": "~1.2.1", + "safe-buffer": "5.2.1", + "send": "0.18.0", + "serve-static": "1.15.0", + "setprototypeof": "1.2.0", + "statuses": "2.0.1", + "type-is": "~1.6.18", + "utils-merge": "1.0.1", + "vary": "~1.1.2" + }, + "engines": { + "node": ">= 0.10.0" } }, - "dom-serialize": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/dom-serialize/-/dom-serialize-2.2.1.tgz", - "integrity": "sha1-ViromZ9Evl6jB29UGdzVnrQ6yVs=", + "node_modules/express/node_modules/cookie": { + "version": "0.6.0", "dev": true, - "requires": { - "custom-event": "~1.0.0", - "ent": "~2.2.0", - "extend": "^3.0.0", - "void-elements": "^2.0.0" + "license": "MIT", + "engines": { + "node": ">= 0.6" } }, - "dom-serializer": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-0.2.2.tgz", - "integrity": "sha512-2/xPb3ORsQ42nHYiSunXkDjPLBaEj/xTwUO4B7XCZQTRk7EBtTOPaygh10YAAh2OI1Qrp6NWfpAhzswj0ydt9g==", + "node_modules/express/node_modules/debug": { + "version": "2.6.9", "dev": true, - "requires": { - "domelementtype": "^2.0.1", - "entities": "^2.0.0" - }, + "license": "MIT", "dependencies": { - "domelementtype": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz", - "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==", - "dev": true - } + "ms": "2.0.0" } }, - "domain-browser": { + "node_modules/express/node_modules/finalhandler": { "version": "1.2.0", - "resolved": "https://registry.npmjs.org/domain-browser/-/domain-browser-1.2.0.tgz", - "integrity": "sha512-jnjyiM6eRyZl2H+W8Q/zLMA481hzi0eszAaBUzIVnmYVDBbnLxVNnfu1HgEBvCbL+71FrxMl3E6lpKH7Ge3OXA==", - "dev": true - }, - "domelementtype": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-1.3.1.tgz", - "integrity": "sha512-BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w==", - "dev": true - }, - "domhandler": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.3.1.tgz", - "integrity": "sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==", "dev": true, - "requires": { - "domelementtype": "^2.2.0" - }, + "license": "MIT", "dependencies": { - "domelementtype": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz", - "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==", - "dev": true - } + "debug": "2.6.9", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "on-finished": "2.4.1", + "parseurl": "~1.3.3", + "statuses": "2.0.1", + "unpipe": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" } }, - "dompurify": { - "version": "2.4.5", - "resolved": "https://registry.npmjs.org/dompurify/-/dompurify-2.4.5.tgz", - "integrity": "sha512-jggCCd+8Iqp4Tsz0nIvpcb22InKEBrGz5dw3EQJMs8HPJDsKbFIO3STYtAvCfDx26Muevn1MHVI0XxjgFfmiSA==" - }, - "domutils": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/domutils/-/domutils-1.7.0.tgz", - "integrity": "sha512-Lgd2XcJ/NjEw+7tFvfKxOzCYKZsdct5lczQ2ZaQY8Djz7pfAD3Gbp8ySJWtreII/vDlMVmxwa6pHmdxIYgttDg==", + "node_modules/express/node_modules/ms": { + "version": "2.0.0", "dev": true, - "requires": { - "dom-serializer": "0", - "domelementtype": "1" - } + "license": "MIT" }, - "dot-prop": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-5.3.0.tgz", - "integrity": "sha512-QM8q3zDe58hqUqjraQOmzZ1LIH9SWQJTlEKCH4kJ2oQvLZk7RbQXvtDM2XEq3fwkV9CCvvH4LA0AV+ogFsBM2Q==", + "node_modules/express/node_modules/statuses": { + "version": "2.0.1", "dev": true, - "requires": { - "is-obj": "^2.0.0" + "license": "MIT", + "engines": { + "node": ">= 0.8" } }, - "draggabilly": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/draggabilly/-/draggabilly-2.4.1.tgz", - "integrity": "sha512-HHHLPEPZqRXIDQDFRFdK7RONZausNlJ4WkA73ST7Z6O2HPWttxFHVwHo8nccuDLzXWwiVKRVuc6fTkW+CQA++A==", - "requires": { - "get-size": "^2.0.2", - "unidragger": "^2.4.0" + "node_modules/ext": { + "version": "1.7.0", + "license": "ISC", + "dependencies": { + "type": "^2.7.2" } }, - "duplexer": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/duplexer/-/duplexer-0.1.2.tgz", - "integrity": "sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg==", - "dev": true - }, - "duplexer3": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/duplexer3/-/duplexer3-0.1.4.tgz", - "integrity": "sha1-7gHdHKwO08vH/b6jfcCo8c4ALOI=", - "dev": true - }, - "duplexify": { - "version": "3.7.1", - "resolved": "https://registry.npmjs.org/duplexify/-/duplexify-3.7.1.tgz", - "integrity": "sha512-07z8uv2wMyS51kKhD1KsdXJg5WQ6t93RneqRxUHnskXVtlYYkLqM0gqStQZ3pj073g687jPCHrqNfCzawLYh5g==", + "node_modules/extend": { + "version": "3.0.2", "dev": true, - "requires": { - "end-of-stream": "^1.0.0", - "inherits": "^2.0.1", - "readable-stream": "^2.0.0", - "stream-shift": "^1.0.0" - } + "license": "MIT" }, - "ecc-jsbn": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz", - "integrity": "sha1-OoOpBOVDUyh4dMVkt1SThoSamMk=", + "node_modules/external-editor": { + "version": "3.1.0", "dev": true, - "requires": { - "jsbn": "~0.1.0", - "safer-buffer": "^2.1.0" + "license": "MIT", + "dependencies": { + "chardet": "^0.7.0", + "iconv-lite": "^0.4.24", + "tmp": "^0.0.33" + }, + "engines": { + "node": ">=4" } }, - "ee-first": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", - "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=", - "dev": true - }, - "ejs": { - "version": "2.7.4", - "resolved": "https://registry.npmjs.org/ejs/-/ejs-2.7.4.tgz", - "integrity": "sha512-7vmuyh5+kuUyJKePhQfRQBhXV5Ce+RnaeeQArKu1EAMpL3WbgMt5WG6uQZpEVvYSSsxMXRKOewtDk9RaTKXRlA==", - "dev": true - }, - "electron-to-chromium": { - "version": "1.4.107", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.107.tgz", - "integrity": "sha512-Huen6taaVrUrSy8o7mGStByba8PfOWWluHNxSHGBrCgEdFVLtvdQDBr9LBCF9Uci8SYxh28QNNMO0oC17wbGAg==", - "dev": true - }, - "elliptic": { - "version": "6.5.4", - "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.4.tgz", - "integrity": "sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ==", - "dev": true, - "requires": { - "bn.js": "^4.11.9", - "brorand": "^1.1.0", - "hash.js": "^1.0.0", - "hmac-drbg": "^1.0.1", - "inherits": "^2.0.4", - "minimalistic-assert": "^1.0.1", - "minimalistic-crypto-utils": "^1.0.1" - }, + "node_modules/fast-deep-equal": { + "version": "3.1.3", + "license": "MIT" + }, + "node_modules/fast-glob": { + "version": "3.3.2", + "dev": true, + "license": "MIT", "dependencies": { - "bn.js": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", - "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", - "dev": true - } + "@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" + }, + "engines": { + "node": ">=8.6.0" } }, - "emitter-component": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/emitter-component/-/emitter-component-1.1.1.tgz", - "integrity": "sha1-Bl4tvtaVm/RwZ57avq95gdEAOrY=" + "node_modules/fast-json-patch": { + "version": "3.1.1", + "license": "MIT" }, - "emoji-regex": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", - "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==" + "node_modules/fast-json-stable-stringify": { + "version": "2.1.0", + "license": "MIT" }, - "emojis-list": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-3.0.0.tgz", - "integrity": "sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==", - "dev": true + "node_modules/fast-uri": { + "version": "3.0.1", + "dev": true, + "license": "MIT" }, - "encodeurl": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", - "integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k=", - "dev": true + "node_modules/fastest-levenshtein": { + "version": "1.0.16", + "license": "MIT", + "engines": { + "node": ">= 4.9.1" + } }, - "encoding": { - "version": "0.1.13", - "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.13.tgz", - "integrity": "sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==", - "requires": { - "iconv-lite": "^0.6.2" + "node_modules/fastparse": { + "version": "1.1.2", + "dev": true, + "license": "MIT" + }, + "node_modules/fastq": { + "version": "1.17.1", + "dev": true, + "license": "ISC", + "dependencies": { + "reusify": "^1.0.4" } }, - "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" + "node_modules/fault": { + "version": "1.0.4", + "license": "MIT", + "dependencies": { + "format": "^0.2.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" } }, - "engine.io": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/engine.io/-/engine.io-3.2.1.tgz", - "integrity": "sha512-+VlKzHzMhaU+GsCIg4AoXF1UdDFjHHwMmMKqMJNDNLlUlejz58FCy4LBqB2YVJskHGYl06BatYWKP2TVdVXE5w==", + "node_modules/faye-websocket": { + "version": "0.11.4", "dev": true, - "requires": { - "accepts": "~1.3.4", - "base64id": "1.0.0", - "cookie": "0.3.1", - "debug": "~3.1.0", - "engine.io-parser": "~2.1.0", - "ws": "~3.3.1" - }, + "license": "Apache-2.0", "dependencies": { - "cookie": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.3.1.tgz", - "integrity": "sha1-5+Ch+e9DtMi6klxcWpboBtFoc7s=", - "dev": true - }, - "debug": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", - "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true - }, - "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 - }, - "ws": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/ws/-/ws-3.3.3.tgz", - "integrity": "sha512-nnWLa/NwZSt4KQJu51MYlCcSQ5g7INpOrOMt4XV8j4dqTXdmlUmSHQ8/oLC069ckre0fRsgfvsKwbTdtKLCDkA==", - "dev": true, - "requires": { - "async-limiter": "~1.0.0", - "safe-buffer": "~5.1.0", - "ultron": "~1.1.0" - } - } + "websocket-driver": ">=0.5.1" + }, + "engines": { + "node": ">=0.8.0" } }, - "engine.io-client": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/engine.io-client/-/engine.io-client-3.2.1.tgz", - "integrity": "sha512-y5AbkytWeM4jQr7m/koQLc5AxpRKC1hEVUb/s1FUAWEJq5AzJJ4NLvzuKPuxtDi5Mq755WuDvZ6Iv2rXj4PTzw==", - "dev": true, - "requires": { - "component-emitter": "1.2.1", - "component-inherit": "0.0.3", - "debug": "~3.1.0", - "engine.io-parser": "~2.1.1", - "has-cors": "1.1.0", - "indexof": "0.0.1", - "parseqs": "0.0.5", - "parseuri": "0.0.5", - "ws": "~3.3.1", - "xmlhttprequest-ssl": "~1.5.4", - "yeast": "0.1.2" - }, - "dependencies": { - "component-emitter": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.2.1.tgz", - "integrity": "sha1-E3kY1teCg/ffemt8WmPhQOaUJeY=", - "dev": true - }, - "debug": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", - "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true - }, - "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 - }, - "ws": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/ws/-/ws-3.3.3.tgz", - "integrity": "sha512-nnWLa/NwZSt4KQJu51MYlCcSQ5g7INpOrOMt4XV8j4dqTXdmlUmSHQ8/oLC069ckre0fRsgfvsKwbTdtKLCDkA==", - "dev": true, - "requires": { - "async-limiter": "~1.0.0", - "safe-buffer": "~5.1.0", - "ultron": "~1.1.0" - } - } + "node_modules/fbjs": { + "version": "0.8.18", + "license": "MIT", + "dependencies": { + "core-js": "^1.0.0", + "isomorphic-fetch": "^2.1.1", + "loose-envify": "^1.0.0", + "object-assign": "^4.1.0", + "promise": "^7.1.1", + "setimmediate": "^1.0.5", + "ua-parser-js": "^0.7.30" } }, - "engine.io-parser": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-2.1.3.tgz", - "integrity": "sha512-6HXPre2O4Houl7c4g7Ic/XzPnHBvaEmN90vtRO9uLmwtRqQmTOw0QMevL1TOfL2Cpu1VzsaTmMotQgMdkzGkVA==", + "node_modules/fbjs/node_modules/core-js": { + "version": "1.2.7", + "license": "MIT" + }, + "node_modules/figures": { + "version": "3.2.0", "dev": true, - "requires": { - "after": "0.8.2", - "arraybuffer.slice": "~0.0.7", - "base64-arraybuffer": "0.1.5", - "blob": "0.0.5", - "has-binary2": "~1.0.2" + "license": "MIT", + "dependencies": { + "escape-string-regexp": "^1.0.5" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "enhanced-resolve": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-4.1.1.tgz", - "integrity": "sha512-98p2zE+rL7/g/DzMHMTF4zZlCgeVdJ7yr6xzEpJRYwFYrGi9ANdn5DnJURg6RpBkyk60XYDnWIv51VfIhfNGuA==", + "node_modules/fill-range": { + "version": "7.1.1", "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "memory-fs": "^0.5.0", - "tapable": "^1.0.0" + "license": "MIT", + "dependencies": { + "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" } }, - "ent": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/ent/-/ent-2.2.0.tgz", - "integrity": "sha1-6WQhkyWiHQX0RGai9obtbOX13R0=", - "dev": true - }, - "entities": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", - "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==", - "dev": true - }, - "err-code": { + "node_modules/finalhandler": { "version": "1.1.2", - "resolved": "https://registry.npmjs.org/err-code/-/err-code-1.1.2.tgz", - "integrity": "sha1-BuARbTAo9q70gGhJ6w6mp0iuaWA=", - "dev": true - }, - "errno": { - "version": "0.1.8", - "resolved": "https://registry.npmjs.org/errno/-/errno-0.1.8.tgz", - "integrity": "sha512-dJ6oBr5SQ1VSd9qkk7ByRgb/1SH4JZjCHSW/mr63/QcXO9zLVxvJ6Oy13nio03rxpSnVDDjFor75SjVeZWPW/A==", "dev": true, - "requires": { - "prr": "~1.0.1" + "license": "MIT", + "dependencies": { + "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" + }, + "engines": { + "node": ">= 0.8" } }, - "error-ex": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", - "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", + "node_modules/finalhandler/node_modules/debug": { + "version": "2.6.9", "dev": true, - "requires": { - "is-arrayish": "^0.2.1" + "license": "MIT", + "dependencies": { + "ms": "2.0.0" } }, - "es-abstract": { - "version": "1.19.4", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.19.4.tgz", - "integrity": "sha512-flV8e5g9/xulChMG48Fygk1ptpo4lQRJ0eJYtxJFgi7pklLx7EFcOJ34jnvr8pbWlaFN/AT1cZpe0hiFel9Hqg==", + "node_modules/finalhandler/node_modules/ms": { + "version": "2.0.0", "dev": true, - "requires": { - "call-bind": "^1.0.2", - "es-to-primitive": "^1.2.1", - "function-bind": "^1.1.1", - "get-intrinsic": "^1.1.1", - "get-symbol-description": "^1.0.0", - "has": "^1.0.3", - "has-symbols": "^1.0.3", - "internal-slot": "^1.0.3", - "is-callable": "^1.2.4", - "is-negative-zero": "^2.0.2", - "is-regex": "^1.1.4", - "is-shared-array-buffer": "^1.0.2", - "is-string": "^1.0.7", - "is-weakref": "^1.0.2", - "object-inspect": "^1.12.0", - "object-keys": "^1.1.1", - "object.assign": "^4.1.2", - "string.prototype.trimend": "^1.0.4", - "string.prototype.trimstart": "^1.0.4", - "unbox-primitive": "^1.0.1" - } + "license": "MIT" }, - "es-to-primitive": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", - "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", + "node_modules/finalhandler/node_modules/on-finished": { + "version": "2.3.0", "dev": true, - "requires": { - "is-callable": "^1.1.4", - "is-date-object": "^1.0.1", - "is-symbol": "^1.0.2" + "license": "MIT", + "dependencies": { + "ee-first": "1.1.1" + }, + "engines": { + "node": ">= 0.8" } }, - "es5-ext": { - "version": "0.10.62", - "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.62.tgz", - "integrity": "sha512-BHLqn0klhEpnOKSrzn/Xsz2UIW8j+cGmo9JLzr8BiUapV8hPL9+FliFqjwr9ngW7jWdnxv6eO+/LqyhJVqgrjA==", - "requires": { - "es6-iterator": "^2.0.3", - "es6-symbol": "^3.1.3", - "next-tick": "^1.1.0" + "node_modules/find-cache-dir": { + "version": "3.3.2", + "dev": true, + "license": "MIT", + "dependencies": { + "commondir": "^1.0.1", + "make-dir": "^3.0.2", + "pkg-dir": "^4.1.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/avajs/find-cache-dir?sponsor=1" } }, - "es6-iterator": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/es6-iterator/-/es6-iterator-2.0.3.tgz", - "integrity": "sha1-p96IkUGgWpSwhUQDstCg+/qY87c=", - "requires": { - "d": "1", - "es5-ext": "^0.10.35", - "es6-symbol": "^3.1.1" + "node_modules/find-up": { + "version": "4.1.0", + "dev": true, + "license": "MIT", + "dependencies": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=8" } }, - "es6-promise": { - "version": "4.2.8", - "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-4.2.8.tgz", - "integrity": "sha512-HJDGx5daxeIvxdBxvG2cb9g4tEvwIk3i8+nhX0yGrYmZUzbkdg8QbDevheDB8gd0//uPj4c1EQua8Q+MViT0/w==", - "dev": true - }, - "es6-promisify": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/es6-promisify/-/es6-promisify-5.0.0.tgz", - "integrity": "sha1-UQnWLz5W6pZ8S2NQWu8IKRyKUgM=", + "node_modules/flatted": { + "version": "3.3.1", "dev": true, - "requires": { - "es6-promise": "^4.0.3" + "license": "ISC" + }, + "node_modules/focus-trap": { + "version": "5.1.0", + "license": "MIT", + "dependencies": { + "tabbable": "^4.0.0", + "xtend": "^4.0.1" + } + }, + "node_modules/follow-redirects": { + "version": "1.15.9", + "funding": [ + { + "type": "individual", + "url": "https://github.com/sponsors/RubenVerborgh" + } + ], + "license": "MIT", + "engines": { + "node": ">=4.0" + }, + "peerDependenciesMeta": { + "debug": { + "optional": true + } } }, - "es6-symbol": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-3.1.3.tgz", - "integrity": "sha512-NJ6Yn3FuDinBaBRWl/q5X/s4koRHBrgKAu+yGI6JCBeiu3qrcbJhwT2GeR/EXVfylRk8dpQVJoLEFhK+Mu31NA==", - "requires": { - "d": "^1.0.1", - "ext": "^1.1.2" + "node_modules/font-awesome": { + "version": "4.7.0", + "license": "(OFL-1.1 AND MIT)", + "engines": { + "node": ">=0.10.3" } }, - "es6-templates": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/es6-templates/-/es6-templates-0.2.3.tgz", - "integrity": "sha1-XLmsn7He1usSOTQrgdeSu7QHjuQ=", + "node_modules/for-each": { + "version": "0.3.3", "dev": true, - "requires": { - "recast": "~0.11.12", - "through": "~2.3.6" + "license": "MIT", + "dependencies": { + "is-callable": "^1.1.3" } }, - "es6-weak-map": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/es6-weak-map/-/es6-weak-map-2.0.3.tgz", - "integrity": "sha512-p5um32HOTO1kP+w7PRnB+5lQ43Z6muuMuIMffvDN8ZB4GcnjLBV6zGStpbASIMk4DCAvEaamhe2zhyCb/QXXsA==", - "requires": { - "d": "1", - "es5-ext": "^0.10.46", - "es6-iterator": "^2.0.3", - "es6-symbol": "^3.1.1" + "node_modules/form-data": { + "version": "4.0.0", + "license": "MIT", + "dependencies": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "mime-types": "^2.1.12" + }, + "engines": { + "node": ">= 6" } }, - "escalade": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", - "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", - "dev": true - }, - "escape-goat": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/escape-goat/-/escape-goat-2.1.1.tgz", - "integrity": "sha512-8/uIhbG12Csjy2JEW7D9pHbreaVaS/OpN3ycnyvElTdwM5n6GY6W6e2IPemfvGZeUMqZ9A/3GqIZMgKnBhAw/Q==", - "dev": true - }, - "escape-html": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", - "integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg=", - "dev": true - }, - "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=" + "node_modules/format": { + "version": "0.2.2", + "engines": { + "node": ">=0.4.x" + } }, - "eslint-scope": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-4.0.3.tgz", - "integrity": "sha512-p7VutNr1O/QrxysMo3E45FjYDTeXBy0iTltPFNSqKAIfjDSXC+4dj+qfyuD8bfAXrW/y6lW3O76VaYNPKfpKrg==", + "node_modules/forwarded": { + "version": "0.2.0", "dev": true, - "requires": { - "esrecurse": "^4.1.0", - "estraverse": "^4.1.1" + "license": "MIT", + "engines": { + "node": ">= 0.6" } }, - "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 - }, - "esrecurse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", - "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", + "node_modules/fraction.js": { + "version": "4.3.7", "dev": true, - "requires": { - "estraverse": "^5.2.0" + "license": "MIT", + "engines": { + "node": "*" }, - "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 - } + "funding": { + "type": "patreon", + "url": "https://github.com/sponsors/rawify" } }, - "estraverse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", - "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", - "dev": true - }, - "estree-walker": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-1.0.1.tgz", - "integrity": "sha512-1fMXF3YP4pZZVozF8j/ZLfvnR8NSIljt56UhbZ5PeeDmmGHpgpdwQt7ITlGvYaQukCvuBRMLEiKiYC+oeIg4cg==", - "dev": true - }, - "esutils": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", - "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==" - }, - "etag": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", - "integrity": "sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc=", - "dev": true - }, - "ev-emitter": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/ev-emitter/-/ev-emitter-1.1.1.tgz", - "integrity": "sha512-ipiDYhdQSCZ4hSbX4rMW+XzNKMD1prg/sTvoVmSLkuQ1MVlwjJQQA+sW8tMYR3BLUr9KjodFV4pvzunvRhd33Q==" - }, - "event-emitter": { - "version": "0.3.5", - "resolved": "https://registry.npmjs.org/event-emitter/-/event-emitter-0.3.5.tgz", - "integrity": "sha1-34xp7vFkeSPHFXuc6DhAYQsCzDk=", - "requires": { - "d": "1", - "es5-ext": "~0.10.14" + "node_modules/fresh": { + "version": "0.5.2", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.6" } }, - "eventemitter3": { - "version": "4.0.7", - "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.7.tgz", - "integrity": "sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==", - "dev": true - }, - "events": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", - "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", - "dev": true + "node_modules/fs-constants": { + "version": "1.0.0", + "license": "MIT", + "optional": true }, - "eventsource": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/eventsource/-/eventsource-1.1.0.tgz", - "integrity": "sha512-VSJjT5oCNrFvCS6igjzPAt5hBzQ2qPBFIbJ03zLI9SE0mxwZpMw6BfJrbFHm1a141AavMEB8JHmBhWAd66PfCg==", + "node_modules/fs-extra": { + "version": "8.1.0", "dev": true, - "requires": { - "original": "^1.0.0" + "license": "MIT", + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^4.0.0", + "universalify": "^0.1.0" + }, + "engines": { + "node": ">=6 <7 || >=8" } }, - "evp_bytestokey": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz", - "integrity": "sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==", + "node_modules/fs-minipass": { + "version": "2.1.0", "dev": true, - "requires": { - "md5.js": "^1.3.4", - "safe-buffer": "^5.1.1" + "license": "ISC", + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">= 8" } }, - "execa": { + "node_modules/fs-monkey": { + "version": "1.0.6", + "dev": true, + "license": "Unlicense" + }, + "node_modules/fs.realpath": { "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" - } + "license": "ISC" }, - "exif-js": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/exif-js/-/exif-js-2.1.1.tgz", - "integrity": "sha1-KWLmqmYANApFSyTFLkWLgczx5tY=" + "node_modules/fsevents": { + "version": "2.3.3", + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } }, - "exit": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz", - "integrity": "sha1-BjJjj42HfMghB9MKD/8aF8uhzQw=", - "dev": true + "node_modules/function-bind": { + "version": "1.1.2", + "dev": true, + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, - "expand-brackets": { - "version": "2.1.4", - "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-2.1.4.tgz", - "integrity": "sha1-t3c14xXOMPa27/D4OwQVGiJEliI=", + "node_modules/function.prototype.name": { + "version": "1.1.6", "dev": true, - "requires": { - "debug": "^2.3.3", - "define-property": "^0.2.5", - "extend-shallow": "^2.0.1", - "posix-character-classes": "^0.1.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.1" - }, + "license": "MIT", "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "dev": true, - "requires": { - "is-descriptor": "^0.1.0" - } - }, - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true - } + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1", + "functions-have-names": "^1.2.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "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==", - "optional": true - }, - "express": { - "version": "4.17.3", - "resolved": "https://registry.npmjs.org/express/-/express-4.17.3.tgz", - "integrity": "sha512-yuSQpz5I+Ch7gFrPCk4/c+dIBKlQUxtgwqzph132bsT6qhuzss6I8cLJQz7B3rFblzd6wtcI0ZbGltH/C4LjUg==", + "node_modules/functions-have-names": { + "version": "1.2.3", "dev": true, - "requires": { - "accepts": "~1.3.8", - "array-flatten": "1.1.1", - "body-parser": "1.19.2", - "content-disposition": "0.5.4", - "content-type": "~1.0.4", - "cookie": "0.4.2", - "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.7", - "qs": "6.9.7", - "range-parser": "~1.2.1", - "safe-buffer": "5.2.1", - "send": "0.17.2", - "serve-static": "1.14.2", - "setprototypeof": "1.2.0", - "statuses": "~1.5.0", - "type-is": "~1.6.18", - "utils-merge": "1.0.1", - "vary": "~1.1.2" - }, - "dependencies": { - "array-flatten": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", - "integrity": "sha1-ml9pkFGx5wczKPKgCJaLZOopVdI=", - "dev": true - }, - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true - }, - "qs": { - "version": "6.9.7", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.9.7.tgz", - "integrity": "sha512-IhMFgUmuNpyRfxA90umL7ByLlgRXu6tIfKPpF5TmcfRLlLCckfP/g3IQmju6jjpu+Hh8rA+2p6A27ZSPOOHdKw==", - "dev": true - } + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "ext": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/ext/-/ext-1.7.0.tgz", - "integrity": "sha512-6hxeJYaL110a9b5TEJSj0gojyHQAmA2ch5Os+ySCiA1QGdS697XWY1pzsrSjqA9LDEEgdB/KypIlR59RcLuHYw==", - "requires": { - "type": "^2.7.2" - }, + "node_modules/gauge": { + "version": "4.0.4", + "dev": true, + "license": "ISC", "dependencies": { - "type": { - "version": "2.7.2", - "resolved": "https://registry.npmjs.org/type/-/type-2.7.2.tgz", - "integrity": "sha512-dzlvlNlt6AXU7EBSfpAscydQ7gXB+pPGsPnfJnZpiNJBDj7IaJzQlBZYGdEi4R9HmPdBv2XmWJ6YUtoTa7lmCw==" - } + "aproba": "^1.0.3 || ^2.0.0", + "color-support": "^1.1.3", + "console-control-strings": "^1.1.0", + "has-unicode": "^2.0.1", + "signal-exit": "^3.0.7", + "string-width": "^4.2.3", + "strip-ansi": "^6.0.1", + "wide-align": "^1.1.5" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "extend": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", - "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==", - "dev": true + "node_modules/gensync": { + "version": "1.0.0-beta.2", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } }, - "extend-shallow": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", - "integrity": "sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=", - "dev": true, - "requires": { - "assign-symbols": "^1.0.0", - "is-extendable": "^1.0.1" - }, - "dependencies": { - "is-extendable": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", - "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", - "dev": true, - "requires": { - "is-plain-object": "^2.0.4" - } - }, - "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" - } - } + "node_modules/get-caller-file": { + "version": "2.0.5", + "dev": true, + "license": "ISC", + "engines": { + "node": "6.* || 8.* || >= 10.*" } }, - "external-editor": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz", - "integrity": "sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==", + "node_modules/get-intrinsic": { + "version": "1.2.4", "dev": true, - "requires": { - "chardet": "^0.7.0", - "iconv-lite": "^0.4.24", - "tmp": "^0.0.33" - }, + "license": "MIT", "dependencies": { - "iconv-lite": { - "version": "0.4.24", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", - "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", - "dev": true, - "requires": { - "safer-buffer": ">= 2.1.2 < 3" - } - } + "es-errors": "^1.3.0", + "function-bind": "^1.1.2", + "has-proto": "^1.0.1", + "has-symbols": "^1.0.3", + "hasown": "^2.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "extglob": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz", - "integrity": "sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==", - "dev": true, - "requires": { - "array-unique": "^0.3.2", - "define-property": "^1.0.0", - "expand-brackets": "^2.1.4", - "extend-shallow": "^2.0.1", - "fragment-cache": "^0.2.1", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.1" - }, - "dependencies": { - "define-property": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", - "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", - "dev": true, - "requires": { - "is-descriptor": "^1.0.0" - } - }, - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - }, - "is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-data-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", - "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-descriptor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", - "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", - "dev": true, - "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - } - } + "node_modules/get-package-type": { + "version": "0.1.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8.0.0" } }, - "extsprintf": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", - "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=", - "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==" + "node_modules/get-size": { + "version": "2.0.3", + "license": "MIT" }, - "fast-glob": { - "version": "3.2.11", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.11.tgz", - "integrity": "sha512-xrO3+1bxSo3ZVHAnqzyuewYT6aMFHRAd4Kcs92MAonjwQZLsK9d0SF1IyQ3k5PoirxTW0Oe/RqFgMQ6TcNE5Ew==", + "node_modules/get-stream": { + "version": "6.0.1", "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" + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "fast-json-patch": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/fast-json-patch/-/fast-json-patch-3.1.1.tgz", - "integrity": "sha512-vf6IHUX2SBcA+5/+4883dsIjpBTqmfBjmYiWK1savxQmFk4JfBMLa7ynTYOs1Rolp/T1betJxHiGD3g1Mn8lUQ==" - }, - "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==" - }, - "fastparse": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/fastparse/-/fastparse-1.1.2.tgz", - "integrity": "sha512-483XLLxTVIwWK3QTrMGRqUfUpoOs/0hbQrl2oz4J0pAcm3A3bu84wxTFqGqkJzewCLdME38xJLJAxBABfQT8sQ==", - "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==", + "node_modules/get-symbol-description": { + "version": "1.0.2", "dev": true, - "requires": { - "reusify": "^1.0.4" + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.5", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.4" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "fault": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/fault/-/fault-1.0.4.tgz", - "integrity": "sha512-CJ0HCB5tL5fYTEA7ToAq5+kTwd++Borf1/bifxd9iT70QcXr4MRrO3Llf8Ifs70q+SJcGHFtnIE/Nw6giCtECA==", - "requires": { - "format": "^0.2.0" - } + "node_modules/github-from-package": { + "version": "0.0.0", + "license": "MIT", + "optional": true }, - "faye-websocket": { - "version": "0.10.0", - "resolved": "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.10.0.tgz", - "integrity": "sha1-TkkvjQTftviQA1B/btvy1QHnxvQ=", + "node_modules/glob": { + "version": "8.0.3", "dev": true, - "requires": { - "websocket-driver": ">=0.5.1" + "license": "ISC", + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^5.0.1", + "once": "^1.3.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "fbjs": { - "version": "0.8.18", - "resolved": "https://registry.npmjs.org/fbjs/-/fbjs-0.8.18.tgz", - "integrity": "sha512-EQaWFK+fEPSoibjNy8IxUtaFOMXcWsY0JaVrQoZR9zC8N2Ygf9iDITPWjUTVIax95b6I742JFLqASHfsag/vKA==", - "requires": { - "core-js": "^1.0.0", - "isomorphic-fetch": "^2.1.1", - "loose-envify": "^1.0.0", - "object-assign": "^4.1.0", - "promise": "^7.1.1", - "setimmediate": "^1.0.5", - "ua-parser-js": "^0.7.30" - }, + "node_modules/glob-parent": { + "version": "5.1.2", + "dev": true, + "license": "ISC", "dependencies": { - "core-js": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/core-js/-/core-js-1.2.7.tgz", - "integrity": "sha1-ZSKUwUZR2yj6k70tX/KYOk8IxjY=" - } + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" } }, - "figgy-pudding": { - "version": "3.5.2", - "resolved": "https://registry.npmjs.org/figgy-pudding/-/figgy-pudding-3.5.2.tgz", - "integrity": "sha512-0btnI/H8f2pavGMN8w40mlSKOfTK2SVJmBfBeVIj3kNw0swwgzyRq0d5TJVOwodFmtvpPeWPN/MCcfuWF0Ezbw==", - "dev": true + "node_modules/glob-to-regexp": { + "version": "0.4.1", + "dev": true, + "license": "BSD-2-Clause" }, - "figures": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz", - "integrity": "sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==", + "node_modules/globals": { + "version": "11.12.0", "dev": true, - "requires": { - "escape-string-regexp": "^1.0.5" + "license": "MIT", + "engines": { + "node": ">=4" } }, - "file-loader": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/file-loader/-/file-loader-6.0.0.tgz", - "integrity": "sha512-/aMOAYEFXDdjG0wytpTL5YQLfZnnTmLNjn+AIrJ/6HVnTfDqLsVKUUwkDf4I4kgex36BvjuXEn/TX9B/1ESyqQ==", + "node_modules/globalthis": { + "version": "1.0.4", "dev": true, - "requires": { - "loader-utils": "^2.0.0", - "schema-utils": "^2.6.5" + "license": "MIT", + "dependencies": { + "define-properties": "^1.2.1", + "gopd": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "file-uri-to-path": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz", - "integrity": "sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==", + "node_modules/globby": { + "version": "13.2.2", "dev": true, - "optional": true + "license": "MIT", + "dependencies": { + "dir-glob": "^3.0.1", + "fast-glob": "^3.3.0", + "ignore": "^5.2.4", + "merge2": "^1.4.1", + "slash": "^4.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } }, - "fileset": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/fileset/-/fileset-2.0.3.tgz", - "integrity": "sha1-jnVIqW08wjJ+5eZ0FocjozO7oqA=", + "node_modules/gopd": { + "version": "1.0.1", "dev": true, - "requires": { - "glob": "^7.0.3", - "minimatch": "^3.0.3" + "license": "MIT", + "dependencies": { + "get-intrinsic": "^1.1.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "filesize": { - "version": "3.6.1", - "resolved": "https://registry.npmjs.org/filesize/-/filesize-3.6.1.tgz", - "integrity": "sha512-7KjR1vv6qnicaPMi1iiTcI85CyYwRO/PSFCu6SvqL8jN2Wjt/NIYQTFtFs7fSDCYOstUkEWIQGFUg5YZQfjlcg==", - "dev": true - }, - "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==", + "node_modules/graceful-fs": { + "version": "4.2.11", "dev": true, - "requires": { - "to-regex-range": "^5.0.1" - } + "license": "ISC" }, - "finalhandler": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.2.tgz", - "integrity": "sha512-aAWcW57uxVNrQZqFXjITpW3sIUQmHGG3qSb9mUah9MgMC4NeWhNOlNjXEYq3HjRAvL6arUviZGGJsBg6z0zsWA==", + "node_modules/gzip-size": { + "version": "6.0.0", "dev": true, - "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" - }, + "license": "MIT", "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true - } + "duplexer": "^0.1.2" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/hammerjs": { + "version": "2.0.8", + "license": "MIT", + "engines": { + "node": ">=0.8.0" } }, - "find-cache-dir": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-3.3.1.tgz", - "integrity": "sha512-t2GDMt3oGC/v+BMwzmllWDuJF/xcDtE5j/fCGbqDD7OLuJkj0cfh1YSA5VKPvwMeLFLNDBkwOKZ2X85jGLVftQ==", + "node_modules/handle-thing": { + "version": "2.0.1", "dev": true, - "requires": { - "commondir": "^1.0.1", - "make-dir": "^3.0.2", - "pkg-dir": "^4.1.0" - }, + "license": "MIT" + }, + "node_modules/has-ansi": { + "version": "2.0.0", + "license": "MIT", "dependencies": { - "find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", - "dev": true, - "requires": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - } - }, - "locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", - "dev": true, - "requires": { - "p-locate": "^4.1.0" - } - }, - "make-dir": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", - "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", - "dev": true, - "requires": { - "semver": "^6.0.0" - } - }, - "p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", - "dev": true, - "requires": { - "p-limit": "^2.2.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 - }, - "pkg-dir": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", - "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", - "dev": true, - "requires": { - "find-up": "^4.0.0" - } - }, - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - } + "ansi-regex": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" } }, - "find-parent-dir": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/find-parent-dir/-/find-parent-dir-0.3.1.tgz", - "integrity": "sha512-o4UcykWV/XN9wm+jMEtWLPlV8RXCZnMhQI6F6OdHeSez7iiJWePw8ijOlskJZMsaQoGR/b7dH6lO02HhaTN7+A==", - "dev": true + "node_modules/has-ansi/node_modules/ansi-regex": { + "version": "2.1.1", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } }, - "find-up": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", - "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "node_modules/has-bigints": { + "version": "1.0.2", "dev": true, - "requires": { - "locate-path": "^3.0.0" + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "flatted": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-2.0.2.tgz", - "integrity": "sha512-r5wGx7YeOwNWNlCA0wQ86zKyDLMQr+/RB8xy74M4hTphfmjlijTSSXGuH8rnvKZnfT9i+75zmd8jcKdMR4O6jA==", - "dev": true - }, - "flush-write-stream": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/flush-write-stream/-/flush-write-stream-1.1.1.tgz", - "integrity": "sha512-3Z4XhFZ3992uIq0XOqb9AreonueSYphE6oYbpt5+3u06JWklbsPkNv3ZKkP9Bz/r+1MWCaMoSQ28P85+1Yc77w==", + "node_modules/has-flag": { + "version": "3.0.0", "dev": true, - "requires": { - "inherits": "^2.0.3", - "readable-stream": "^2.3.6" + "license": "MIT", + "engines": { + "node": ">=4" } }, - "focus-trap": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/focus-trap/-/focus-trap-5.1.0.tgz", - "integrity": "sha512-CkB/nrO55069QAUjWFBpX6oc+9V90Qhgpe6fBWApzruMq5gnlh90Oo7iSSDK7pKiV5ugG6OY2AXM5mxcmL3lwQ==", - "requires": { - "tabbable": "^4.0.0", - "xtend": "^4.0.1" + "node_modules/has-property-descriptors": { + "version": "1.0.2", + "dev": true, + "license": "MIT", + "dependencies": { + "es-define-property": "^1.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "follow-redirects": { - "version": "1.14.9", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.14.9.tgz", - "integrity": "sha512-MQDfihBQYMcyy5dhRDJUHcw7lb2Pv/TuE6xP1vyraLukNDHKbDxDNaOE3NbCAdKQApno+GPRyo1YAp89yCjK4w==", - "dev": true + "node_modules/has-proto": { + "version": "1.0.3", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, - "font-awesome": { - "version": "4.7.0", - "resolved": "https://registry.npmjs.org/font-awesome/-/font-awesome-4.7.0.tgz", - "integrity": "sha1-j6jPBBGhoxr9B7BtKQK7n8gVoTM=" + "node_modules/has-symbols": { + "version": "1.0.3", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, - "for-in": { + "node_modules/has-tostringtag": { "version": "1.0.2", - "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", - "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=", - "dev": true - }, - "forever-agent": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", - "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=", - "dev": true - }, - "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==", "dev": true, - "requires": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.6", - "mime-types": "^2.1.12" + "license": "MIT", + "dependencies": { + "has-symbols": "^1.0.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "form-data-encoder": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/form-data-encoder/-/form-data-encoder-1.9.0.tgz", - "integrity": "sha512-rahaRMkN8P8d/tgK/BLPX+WBVM27NbvdXBxqQujBtkDAIFspaRqN7Od7lfdGQA6KAD+f82fYCLBq1ipvcu8qLw==" + "node_modules/has-unicode": { + "version": "2.0.1", + "dev": true, + "license": "ISC" }, - "format": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/format/-/format-0.2.2.tgz", - "integrity": "sha512-wzsgA6WOq+09wrU1tsJ09udeR/YZRaeArL9e1wPbFg3GG2yDnC2ldKpxs4xunpFF9DgqCqOIra3bc1HWrJ37Ww==" + "node_modules/hasown": { + "version": "2.0.2", + "dev": true, + "license": "MIT", + "dependencies": { + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } }, - "formdata-node": { - "version": "4.4.1", - "resolved": "https://registry.npmjs.org/formdata-node/-/formdata-node-4.4.1.tgz", - "integrity": "sha512-0iirZp3uVDjVGt9p49aTaqjk84TrglENEDuqfdlZQ1roC9CWlPk6Avf8EEnZNcAqPonwkG35x4n3ww/1THYAeQ==", - "requires": { - "node-domexception": "1.0.0", - "web-streams-polyfill": "4.0.0-beta.3" + "node_modules/hast-util-parse-selector": { + "version": "2.2.5", + "license": "MIT", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "forwarded": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz", - "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==", - "dev": true + "node_modules/hastscript": { + "version": "6.0.0", + "license": "MIT", + "dependencies": { + "@types/hast": "^2.0.0", + "comma-separated-tokens": "^1.0.0", + "hast-util-parse-selector": "^2.0.0", + "property-information": "^5.0.0", + "space-separated-tokens": "^1.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } }, - "fragment-cache": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/fragment-cache/-/fragment-cache-0.2.1.tgz", - "integrity": "sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk=", + "node_modules/hdr-histogram-js": { + "version": "2.0.3", "dev": true, - "requires": { - "map-cache": "^0.2.2" + "license": "BSD", + "dependencies": { + "@assemblyscript/loader": "^0.10.1", + "base64-js": "^1.2.0", + "pako": "^1.0.3" } }, - "fresh": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", - "integrity": "sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac=", - "dev": true + "node_modules/hdr-histogram-percentiles-obj": { + "version": "3.0.0", + "dev": true, + "license": "MIT" }, - "from2": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/from2/-/from2-2.3.0.tgz", - "integrity": "sha1-i/tVAr3kpNNs/e6gB/zKIdfjgq8=", + "node_modules/he": { + "version": "1.2.0", "dev": true, - "requires": { - "inherits": "^2.0.1", - "readable-stream": "^2.0.0" + "license": "MIT", + "bin": { + "he": "bin/he" } }, - "fs-access": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/fs-access/-/fs-access-1.0.1.tgz", - "integrity": "sha1-1qh/JiJxzv6+wwxVNAf7mV2od3o=", - "dev": true, - "requires": { - "null-check": "^1.0.0" + "node_modules/highlight.js": { + "version": "10.7.3", + "license": "BSD-3-Clause", + "engines": { + "node": "*" } }, - "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==", - "optional": true + "node_modules/hoist-non-react-statics": { + "version": "3.3.2", + "license": "BSD-3-Clause", + "dependencies": { + "react-is": "^16.7.0" + } }, - "fs-extra": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-4.0.2.tgz", - "integrity": "sha1-+RcExT0bRh+JNFKwwwfZmXZHq2s=", + "node_modules/hosted-git-info": { + "version": "5.2.1", "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "jsonfile": "^4.0.0", - "universalify": "^0.1.0" + "license": "ISC", + "dependencies": { + "lru-cache": "^7.5.1" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "fs-minipass": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", - "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", + "node_modules/hosted-git-info/node_modules/lru-cache": { + "version": "7.18.3", "dev": true, - "requires": { - "minipass": "^3.0.0" + "license": "ISC", + "engines": { + "node": ">=12" } }, - "fs-write-stream-atomic": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/fs-write-stream-atomic/-/fs-write-stream-atomic-1.0.10.tgz", - "integrity": "sha1-tH31NJPvkR33VzHnCp3tAYnbQMk=", + "node_modules/hpack.js": { + "version": "2.1.6", "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "iferr": "^0.1.5", - "imurmurhash": "^0.1.4", - "readable-stream": "1 || 2" + "license": "MIT", + "dependencies": { + "inherits": "^2.0.1", + "obuf": "^1.0.0", + "readable-stream": "^2.0.1", + "wbuf": "^1.1.0" } }, - "fs.realpath": { + "node_modules/hpack.js/node_modules/isarray": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", - "dev": true + "dev": true, + "license": "MIT" }, - "fsevents": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.1.3.tgz", - "integrity": "sha512-Auw9a4AxqWpa9GUfj370BMPzzyncfBABW8Mab7BGWBYDj4Isgq+cDKtx0i6u9jcX9pQDnswsaaOTgTmA5pEjuQ==", + "node_modules/hpack.js/node_modules/readable-stream": { + "version": "2.3.8", "dev": true, - "optional": true + "license": "MIT", + "dependencies": { + "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" + } + }, + "node_modules/hpack.js/node_modules/safe-buffer": { + "version": "5.1.2", + "dev": true, + "license": "MIT" }, - "function-bind": { + "node_modules/hpack.js/node_modules/string_decoder": { "version": "1.1.1", - "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", - "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" + "dev": true, + "license": "MIT", + "dependencies": { + "safe-buffer": "~5.1.0" + } }, - "gauge": { - "version": "2.7.4", - "resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz", - "integrity": "sha512-14x4kjc6lkD3ltw589k0NrPD6cCNTD6CWoVUNpB85+DrtONoZn+Rug6xZU5RvSC4+TZPxA5AnBibQYAvZn41Hg==", - "optional": true, - "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" - }, - "dependencies": { - "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": "sha512-1pqUqRjkhPJ9miNq9SwMfdvi6lBJcd6eFxvfaivQhaH3SgisfiuudvFntdKOmxuee/77l+FPjKrQjWvmPjWrRw==", - "optional": true, - "requires": { - "number-is-nan": "^1.0.0" - } + "node_modules/html-entities": { + "version": "2.5.2", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/mdevils" }, - "string-width": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", - "integrity": "sha512-0XsVpQLnVCXHJfyEs8tC0zpTVIr5PKKsQtkT29IwupnPTjtPmQ3xT/4yCREF9hYkV/3M3kzcUTSAZT6a6h81tw==", - "optional": true, - "requires": { - "code-point-at": "^1.0.0", - "is-fullwidth-code-point": "^1.0.0", - "strip-ansi": "^3.0.0" - } + { + "type": "patreon", + "url": "https://patreon.com/mdevils" } - } - }, - "genfun": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/genfun/-/genfun-5.0.0.tgz", - "integrity": "sha512-KGDOARWVga7+rnB3z9Sd2Letx515owfk0hSxHGuqjANb1M+x2bGZGqHLiozPsYMdM2OubeMni/Hpwmjq6qIUhA==", - "dev": true + ], + "license": "MIT" }, - "gensync": { - "version": "1.0.0-beta.2", - "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", - "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", - "dev": true + "node_modules/html-escaper": { + "version": "2.0.2", + "dev": true, + "license": "MIT" }, - "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 + "node_modules/html-loader": { + "version": "0.5.5", + "dev": true, + "license": "MIT", + "dependencies": { + "es6-templates": "^0.2.3", + "fastparse": "^1.1.1", + "html-minifier": "^3.5.8", + "loader-utils": "^1.1.0", + "object-assign": "^4.1.1" + } }, - "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" + "node_modules/html-loader/node_modules/json5": { + "version": "1.0.2", + "dev": true, + "license": "MIT", + "dependencies": { + "minimist": "^1.2.0" + }, + "bin": { + "json5": "lib/cli.js" } }, - "get-size": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/get-size/-/get-size-2.0.3.tgz", - "integrity": "sha512-lXNzT/h/dTjTxRbm9BXb+SGxxzkm97h/PCIKtlN/CBCxxmkkIVV21udumMS93MuVTDX583gqc94v3RjuHmI+2Q==" + "node_modules/html-loader/node_modules/loader-utils": { + "version": "1.4.2", + "dev": true, + "license": "MIT", + "dependencies": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^1.0.1" + }, + "engines": { + "node": ">=4.0.0" + } }, - "get-stream": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz", - "integrity": "sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==", + "node_modules/html-minifier": { + "version": "3.5.21", "dev": true, - "requires": { - "pump": "^3.0.0" + "license": "MIT", + "dependencies": { + "camel-case": "3.0.x", + "clean-css": "4.2.x", + "commander": "2.17.x", + "he": "1.2.x", + "param-case": "2.1.x", + "relateurl": "0.2.x", + "uglify-js": "3.4.x" + }, + "bin": { + "html-minifier": "cli.js" + }, + "engines": { + "node": ">=4" } }, - "get-symbol-description": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.0.tgz", - "integrity": "sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==", + "node_modules/html-minifier-terser": { + "version": "6.1.0", "dev": true, - "requires": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.1.1" + "license": "MIT", + "dependencies": { + "camel-case": "^4.1.2", + "clean-css": "^5.2.2", + "commander": "^8.3.0", + "he": "^1.2.0", + "param-case": "^3.0.4", + "relateurl": "^0.2.7", + "terser": "^5.10.0" + }, + "bin": { + "html-minifier-terser": "cli.js" + }, + "engines": { + "node": ">=12" } }, - "get-value": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz", - "integrity": "sha1-3BXKHGcjh8p2vTesCjlbogQqLCg=", - "dev": true + "node_modules/html-minifier-terser/node_modules/camel-case": { + "version": "4.1.2", + "dev": true, + "license": "MIT", + "dependencies": { + "pascal-case": "^3.1.2", + "tslib": "^2.0.3" + } }, - "getpass": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", - "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=", + "node_modules/html-minifier-terser/node_modules/clean-css": { + "version": "5.3.3", "dev": true, - "requires": { - "assert-plus": "^1.0.0" + "license": "MIT", + "dependencies": { + "source-map": "~0.6.0" + }, + "engines": { + "node": ">= 10.0" } }, - "github-from-package": { - "version": "0.0.0", - "resolved": "https://registry.npmjs.org/github-from-package/-/github-from-package-0.0.0.tgz", - "integrity": "sha512-SyHy3T1v2NUXn29OsWdxmK6RwHD+vkj3v8en8AOBZ1wBQ/hCAQ5bAQTD02kW4W9tUp/3Qh6J8r9EvntiyCmOOw==", - "optional": true + "node_modules/html-minifier-terser/node_modules/commander": { + "version": "8.3.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 12" + } }, - "glob": { - "version": "7.1.6", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz", - "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==", + "node_modules/html-minifier-terser/node_modules/param-case": { + "version": "3.0.4", "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" + "license": "MIT", + "dependencies": { + "dot-case": "^3.0.4", + "tslib": "^2.0.3" } }, - "glob-parent": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", - "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "node_modules/html-minifier-terser/node_modules/source-map": { + "version": "0.6.1", "dev": true, - "requires": { - "is-glob": "^4.0.1" + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.10.0" } }, - "global-dirs": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/global-dirs/-/global-dirs-2.1.0.tgz", - "integrity": "sha512-MG6kdOUh/xBnyo9cJFeIKkLEc1AyFq42QTU4XiX51i2NEdxLxLWXIjEjmqKeSuKR7pAZjTqUVoT2b2huxVLgYQ==", + "node_modules/html-webpack-plugin": { + "version": "5.5.0", "dev": true, - "requires": { - "ini": "1.3.7" - }, + "license": "MIT", "dependencies": { - "ini": { - "version": "1.3.7", - "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.7.tgz", - "integrity": "sha512-iKpRpXP+CrP2jyrxvg1kMUpXDyRUFDWurxbnVT1vQPx+Wz9uCYsMIqYuSBLV+PAaZG/d7kRLKRFc9oDMsH+mFQ==", - "dev": true + "@types/html-minifier-terser": "^6.0.0", + "html-minifier-terser": "^6.0.2", + "lodash": "^4.17.21", + "pretty-error": "^4.0.0", + "tapable": "^2.0.0" + }, + "engines": { + "node": ">=10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/html-webpack-plugin" + }, + "peerDependencies": { + "webpack": "^5.20.0" + } + }, + "node_modules/htmlparser2": { + "version": "6.1.0", + "dev": true, + "funding": [ + "https://github.com/fb55/htmlparser2?sponsor=1", + { + "type": "github", + "url": "https://github.com/sponsors/fb55" } + ], + "license": "MIT", + "dependencies": { + "domelementtype": "^2.0.1", + "domhandler": "^4.0.0", + "domutils": "^2.5.2", + "entities": "^2.0.0" } }, - "globals": { - "version": "11.12.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", - "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", - "dev": true + "node_modules/http-cache-semantics": { + "version": "4.1.1", + "dev": true, + "license": "BSD-2-Clause" }, - "globby": { - "version": "11.1.0", - "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz", - "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==", + "node_modules/http-deceiver": { + "version": "1.2.7", "dev": true, - "requires": { - "array-union": "^2.1.0", - "dir-glob": "^3.0.1", - "fast-glob": "^3.2.9", - "ignore": "^5.2.0", - "merge2": "^1.4.1", - "slash": "^3.0.0" + "license": "MIT" + }, + "node_modules/http-errors": { + "version": "2.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "depd": "2.0.0", + "inherits": "2.0.4", + "setprototypeof": "1.2.0", + "statuses": "2.0.1", + "toidentifier": "1.0.1" + }, + "engines": { + "node": ">= 0.8" } }, - "got": { - "version": "9.6.0", - "resolved": "https://registry.npmjs.org/got/-/got-9.6.0.tgz", - "integrity": "sha512-R7eWptXuGYxwijs0eV+v3o6+XH1IqVK8dJOEecQfTmkncw9AV4dcw/Dhxi8MdlqPthxxpZyizMzyg8RTmEsG+Q==", - "dev": true, - "requires": { - "@sindresorhus/is": "^0.14.0", - "@szmarczak/http-timer": "^1.1.2", - "cacheable-request": "^6.0.0", - "decompress-response": "^3.3.0", - "duplexer3": "^0.1.4", - "get-stream": "^4.1.0", - "lowercase-keys": "^1.0.1", - "mimic-response": "^1.0.1", - "p-cancelable": "^1.0.0", - "to-readable-stream": "^1.0.0", - "url-parse-lax": "^3.0.0" - } - }, - "graceful-fs": { - "version": "4.2.10", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", - "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==", - "dev": true - }, - "gzip-size": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/gzip-size/-/gzip-size-5.1.1.tgz", - "integrity": "sha512-FNHi6mmoHvs1mxZAds4PpdCS6QG8B4C1krxJsMutgxl5t3+GlRTzzI3NEkifXx2pVsOvJdOGSmIgDhQ55FwdPA==", + "node_modules/http-errors/node_modules/statuses": { + "version": "2.0.1", "dev": true, - "requires": { - "duplexer": "^0.1.1", - "pify": "^4.0.1" + "license": "MIT", + "engines": { + "node": ">= 0.8" } }, - "hammerjs": { - "version": "2.0.8", - "resolved": "https://registry.npmjs.org/hammerjs/-/hammerjs-2.0.8.tgz", - "integrity": "sha1-BO93hiz/K7edMPdpIJWTAiK/YPE=" + "node_modules/http-parser-js": { + "version": "0.5.8", + "dev": true, + "license": "MIT" }, - "handle-thing": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/handle-thing/-/handle-thing-2.0.1.tgz", - "integrity": "sha512-9Qn4yBxelxoh2Ow62nP+Ka/kMnOXRi8BXnRaUwezLNhqelnN49xKz4F/dPP8OYLxLxq6JDtZb2i9XznUQbNPTg==", - "dev": true + "node_modules/http-proxy": { + "version": "1.18.1", + "dev": true, + "license": "MIT", + "dependencies": { + "eventemitter3": "^4.0.0", + "follow-redirects": "^1.0.0", + "requires-port": "^1.0.0" + }, + "engines": { + "node": ">=8.0.0" + } }, - "har-schema": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz", - "integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=", - "dev": true + "node_modules/http-proxy-agent": { + "version": "5.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "@tootallnate/once": "2", + "agent-base": "6", + "debug": "4" + }, + "engines": { + "node": ">= 6" + } }, - "har-validator": { - "version": "5.1.5", - "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.5.tgz", - "integrity": "sha512-nmT2T0lljbxdQZfspsno9hgrG3Uir6Ks5afism62poxqBM6sDnMEuPmzTq8XN0OEwqKLLdh1jQI3qyE66Nzb3w==", + "node_modules/http-proxy-middleware": { + "version": "2.0.6", "dev": true, - "requires": { - "ajv": "^6.12.3", - "har-schema": "^2.0.0" + "license": "MIT", + "dependencies": { + "@types/http-proxy": "^1.17.8", + "http-proxy": "^1.18.1", + "is-glob": "^4.0.1", + "is-plain-obj": "^3.0.0", + "micromatch": "^4.0.2" + }, + "engines": { + "node": ">=12.0.0" + }, + "peerDependencies": { + "@types/express": "^4.17.13" + }, + "peerDependenciesMeta": { + "@types/express": { + "optional": true + } } }, - "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" + "node_modules/https-proxy-agent": { + "version": "5.0.1", + "dev": true, + "license": "MIT", + "dependencies": { + "agent-base": "6", + "debug": "4" + }, + "engines": { + "node": ">= 6" } }, - "has-ansi": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", - "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", - "requires": { - "ansi-regex": "^2.0.0" + "node_modules/human-signals": { + "version": "2.1.0", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": ">=10.17.0" } }, - "has-bigints": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.1.tgz", - "integrity": "sha512-LSBS2LjbNBTf6287JEbEzvJgftkF5qFkmCo9hDRpAzKhUOlJ+hx8dd4USs00SgsUNwc4617J9ki5YtEClM2ffA==", - "dev": true - }, - "has-binary2": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has-binary2/-/has-binary2-1.0.3.tgz", - "integrity": "sha512-G1LWKhDSvhGeAQ8mPVQlqNcOB2sJdwATtZKl2pDKKHfpf/rYj24lkinxf69blJbnsvtqqNU+L3SL50vzZhXOnw==", + "node_modules/humanize-ms": { + "version": "1.2.1", "dev": true, - "requires": { - "isarray": "2.0.1" - }, + "license": "MIT", "dependencies": { - "isarray": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.1.tgz", - "integrity": "sha1-o32U7ZzaLVmGXJ92/llu4fM4dB4=", - "dev": true - } + "ms": "^2.0.0" } }, - "has-cors": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/has-cors/-/has-cors-1.1.0.tgz", - "integrity": "sha1-XkdHk/fqmEPRu5nCPu9J/xJv/zk=", - "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 - }, - "has-symbols": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", - "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==" - }, - "has-tostringtag": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz", - "integrity": "sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==", + "node_modules/iconv-lite": { + "version": "0.4.24", "dev": true, - "requires": { - "has-symbols": "^1.0.2" + "license": "MIT", + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3" + }, + "engines": { + "node": ">=0.10.0" } }, - "has-unicode": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", - "integrity": "sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ==", - "optional": true - }, - "has-value": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-value/-/has-value-1.0.0.tgz", - "integrity": "sha1-GLKB2lhbHFxR3vJMkw7SmgvmsXc=", + "node_modules/icss-utils": { + "version": "5.1.0", "dev": true, - "requires": { - "get-value": "^2.0.6", - "has-values": "^1.0.0", - "isobject": "^3.0.0" + "license": "ISC", + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" } }, - "has-values": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-values/-/has-values-1.0.0.tgz", - "integrity": "sha1-lbC2P+whRmGab+V/51Yo1aOe/k8=", - "dev": true, - "requires": { - "is-number": "^3.0.0", - "kind-of": "^4.0.0" - }, - "dependencies": { - "is-number": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", - "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", - "dev": true, - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "kind-of": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz", - "integrity": "sha1-IIE989cSkosgc3hpGkUGb65y3Vc=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } + "node_modules/ieee754": { + "version": "1.2.1", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" } - } - }, - "has-yarn": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/has-yarn/-/has-yarn-2.1.0.tgz", - "integrity": "sha512-UqBRqi4ju7T+TqGNdqAO0PaSVGsDGJUBQvk9eUWNGRY1CFGDzYhLWoM7JQEemnlvVcv/YEmc2wNW8BC24EnUsw==", - "dev": true + ], + "license": "BSD-3-Clause" }, - "hash-base": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.1.0.tgz", - "integrity": "sha512-1nmYp/rhMDiE7AYkDw+lLwlAzz0AntGIe51F3RfFfEqyQ3feY2eI/NcwC6umIQVOASPMsWJLJScWKSSvzL9IVA==", + "node_modules/ignore": { + "version": "5.3.2", "dev": true, - "requires": { - "inherits": "^2.0.4", - "readable-stream": "^3.6.0", - "safe-buffer": "^5.2.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==", - "dev": true, - "requires": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - } - } + "license": "MIT", + "engines": { + "node": ">= 4" } }, - "hash.js": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.7.tgz", - "integrity": "sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==", + "node_modules/ignore-walk": { + "version": "5.0.1", "dev": true, - "requires": { - "inherits": "^2.0.3", - "minimalistic-assert": "^1.0.1" + "license": "ISC", + "dependencies": { + "minimatch": "^5.0.1" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "hast-util-parse-selector": { - "version": "2.2.5", - "resolved": "https://registry.npmjs.org/hast-util-parse-selector/-/hast-util-parse-selector-2.2.5.tgz", - "integrity": "sha512-7j6mrk/qqkSehsM92wQjdIgWM2/BW61u/53G6xmC8i1OmEdKLHbk419QKQUjz6LglWsfqoiHmyMRkP1BGjecNQ==" - }, - "hastscript": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/hastscript/-/hastscript-6.0.0.tgz", - "integrity": "sha512-nDM6bvd7lIqDUiYEiu5Sl/+6ReP0BMk/2f4U/Rooccxkj0P5nm+acM5PrGJ/t5I8qPGiqZSE6hVAwZEdZIvP4w==", - "requires": { - "@types/hast": "^2.0.0", - "comma-separated-tokens": "^1.0.0", - "hast-util-parse-selector": "^2.0.0", - "property-information": "^5.0.0", - "space-separated-tokens": "^1.0.0" + "node_modules/image-size": { + "version": "0.5.5", + "dev": true, + "license": "MIT", + "optional": true, + "bin": { + "image-size": "bin/image-size.js" + }, + "engines": { + "node": ">=0.10.0" } }, - "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 - }, - "hex-color-regex": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/hex-color-regex/-/hex-color-regex-1.1.0.tgz", - "integrity": "sha512-l9sfDFsuqtOqKDsQdqrMRk0U85RZc0RtOR9yPI7mRVOa4FsR/BVnZ0shmQRM96Ji99kYZP/7hn1cedc1+ApsTQ==", - "dev": true - }, - "highlight.js": { - "version": "10.7.3", - "resolved": "https://registry.npmjs.org/highlight.js/-/highlight.js-10.7.3.tgz", - "integrity": "sha512-tzcUFauisWKNHaRkN4Wjl/ZA07gENAjFl3J/c480dprkGTg5EQstgaNFqBfUqCq54kZRIEcreTsAgF/m2quD7A==" + "node_modules/immutable": { + "version": "4.3.7", + "license": "MIT" }, - "hmac-drbg": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz", - "integrity": "sha1-0nRXAQJabHdabFRXk+1QL8DGSaE=", + "node_modules/import-fresh": { + "version": "3.3.0", "dev": true, - "requires": { - "hash.js": "^1.0.3", - "minimalistic-assert": "^1.0.0", - "minimalistic-crypto-utils": "^1.0.1" + "license": "MIT", + "dependencies": { + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "hoist-non-react-statics": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/hoist-non-react-statics/-/hoist-non-react-statics-3.3.2.tgz", - "integrity": "sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw==", - "requires": { - "react-is": "^16.7.0" + "node_modules/import-fresh/node_modules/resolve-from": { + "version": "4.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" } }, - "hoopy": { + "node_modules/imurmurhash": { "version": "0.1.4", - "resolved": "https://registry.npmjs.org/hoopy/-/hoopy-0.1.4.tgz", - "integrity": "sha512-HRcs+2mr52W0K+x8RzcLzuPPmVIKMSv97RGHy0Ea9y/mpcaK+xTrjICA04KAHi4GRzxliNqNJEFYWHghy3rSfQ==", - "dev": true - }, - "hosted-git-info": { - "version": "3.0.8", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-3.0.8.tgz", - "integrity": "sha512-aXpmwoOhRBrw6X3j0h5RloK4x1OzsxMPyxqIHyNfSe2pypkVTZFpEiRoSipPEPlMrh0HW/XsjkJ5WgnCirpNUw==", "dev": true, - "requires": { - "lru-cache": "^6.0.0" - }, - "dependencies": { - "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" - } - } + "license": "MIT", + "engines": { + "node": ">=0.8.19" } }, - "hpack.js": { - "version": "2.1.6", - "resolved": "https://registry.npmjs.org/hpack.js/-/hpack.js-2.1.6.tgz", - "integrity": "sha1-h3dMCUnlE/QuhFdbPEVoH63ioLI=", + "node_modules/indent-string": { + "version": "4.0.0", "dev": true, - "requires": { - "inherits": "^2.0.1", - "obuf": "^1.0.0", - "readable-stream": "^2.0.1", - "wbuf": "^1.1.0" + "license": "MIT", + "engines": { + "node": ">=8" } }, - "hsl-regex": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/hsl-regex/-/hsl-regex-1.0.0.tgz", - "integrity": "sha1-1JMwx4ntgZ4nakwNJy3/owsY/m4=", - "dev": true - }, - "hsla-regex": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/hsla-regex/-/hsla-regex-1.0.0.tgz", - "integrity": "sha1-wc56MWjIxmFAM6S194d/OyJfnDg=", - "dev": true + "node_modules/infer-owner": { + "version": "1.0.4", + "dev": true, + "license": "ISC" }, - "html-entities": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/html-entities/-/html-entities-1.4.0.tgz", - "integrity": "sha512-8nxjcBcd8wovbeKx7h3wTji4e6+rhaVuPNpMqwWgnHh+N9ToqsCs6XztWRBPQ+UtzsoMAdKZtUENoVzU/EMtZA==", - "dev": true + "node_modules/inflight": { + "version": "1.0.6", + "dev": true, + "license": "ISC", + "dependencies": { + "once": "^1.3.0", + "wrappy": "1" + } }, - "html-escaper": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", - "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", - "dev": true + "node_modules/inherits": { + "version": "2.0.4", + "license": "ISC" }, - "html-loader": { - "version": "0.5.5", - "resolved": "https://registry.npmjs.org/html-loader/-/html-loader-0.5.5.tgz", - "integrity": "sha512-7hIW7YinOYUpo//kSYcPB6dCKoceKLmOwjEMmhIobHuWGDVl0Nwe4l68mdG/Ru0wcUxQjVMEoZpkalZ/SE7zog==", + "node_modules/ini": { + "version": "3.0.0", "dev": true, - "requires": { - "es6-templates": "^0.2.3", - "fastparse": "^1.1.1", - "html-minifier": "^3.5.8", - "loader-utils": "^1.1.0", - "object-assign": "^4.1.1" - }, - "dependencies": { - "json5": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", - "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", - "dev": true, - "requires": { - "minimist": "^1.2.0" - } - }, - "loader-utils": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.0.tgz", - "integrity": "sha512-qH0WSMBtn/oHuwjy/NucEgbx5dbxxnxup9s4PVXJUDHZBQY+s0NWA9rJf53RBnQZxfch7euUui7hpoAPvALZdA==", - "dev": true, - "requires": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^1.0.1" - } - } + "license": "ISC", + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "html-minifier": { - "version": "3.5.21", - "resolved": "https://registry.npmjs.org/html-minifier/-/html-minifier-3.5.21.tgz", - "integrity": "sha512-LKUKwuJDhxNa3uf/LPR/KVjm/l3rBqtYeCOAekvG8F1vItxMUpueGd94i/asDDr8/1u7InxzFA5EeGjhhG5mMA==", + "node_modules/injection-js": { + "version": "2.4.0", "dev": true, - "requires": { - "camel-case": "3.0.x", - "clean-css": "4.2.x", - "commander": "2.17.x", - "he": "1.2.x", - "param-case": "2.1.x", - "relateurl": "0.2.x", - "uglify-js": "3.4.x" - }, + "license": "MIT", "dependencies": { - "commander": { - "version": "2.17.1", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.17.1.tgz", - "integrity": "sha512-wPMUt6FnH2yzG95SA6mzjQOEKUU3aLaDEmzs1ti+1E9h+CsrZghRlqEM/EJ4KscsQVG8uNN4uVreUeT8+drlgg==", - "dev": true - } + "tslib": "^2.0.0" } }, - "html-webpack-plugin": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/html-webpack-plugin/-/html-webpack-plugin-3.2.0.tgz", - "integrity": "sha1-sBq71yOsqqeze2r0SS69oD2d03s=", - "dev": true, - "requires": { - "html-minifier": "^3.2.3", - "loader-utils": "^0.2.16", - "lodash": "^4.17.3", - "pretty-error": "^2.0.2", - "tapable": "^1.0.0", - "toposort": "^1.0.0", - "util.promisify": "1.0.0" - }, - "dependencies": { - "big.js": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/big.js/-/big.js-3.2.0.tgz", - "integrity": "sha512-+hN/Zh2D08Mx65pZ/4g5bsmNiZUuChDiQfTUQ7qJr4/kuopCr88xZsAXv6mBoZEsUI4OuGHlX59qE94K2mMW8Q==", - "dev": true - }, - "emojis-list": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-2.1.0.tgz", - "integrity": "sha1-TapNnbAPmBmIDHn6RXrlsJof04k=", - "dev": true - }, - "json5": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/json5/-/json5-0.5.1.tgz", - "integrity": "sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE=", - "dev": true - }, - "loader-utils": { - "version": "0.2.17", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-0.2.17.tgz", - "integrity": "sha1-+G5jdNQyBabmxg6RlvF8Apm/s0g=", - "dev": true, - "requires": { - "big.js": "^3.1.3", - "emojis-list": "^2.0.0", - "json5": "^0.5.0", - "object-assign": "^4.0.1" - } - }, - "util.promisify": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/util.promisify/-/util.promisify-1.0.0.tgz", - "integrity": "sha512-i+6qA2MPhvoKLuxnJNpXAGhg7HphQOSUq2LKMZD0m15EiskXUkMvKdF4Uui0WYeCUGea+o2cw/ZuwehtfsrNkA==", - "dev": true, - "requires": { - "define-properties": "^1.1.2", - "object.getownpropertydescriptors": "^2.0.3" - } - } - } + "node_modules/inputmask": { + "version": "5.0.8", + "license": "MIT" }, - "htmlparser2": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-6.1.0.tgz", - "integrity": "sha512-gyyPk6rgonLFEDGoeRgQNaEUvdJ4ktTmmUh/h2t7s+M8oPpIPxgNACWa+6ESR57kXstwqPiCut0V8NRpcwgU7A==", + "node_modules/inquirer": { + "version": "8.2.4", "dev": true, - "requires": { - "domelementtype": "^2.0.1", - "domhandler": "^4.0.0", - "domutils": "^2.5.2", - "entities": "^2.0.0" - }, + "license": "MIT", "dependencies": { - "dom-serializer": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.4.1.tgz", - "integrity": "sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag==", - "dev": true, - "requires": { - "domelementtype": "^2.0.1", - "domhandler": "^4.2.0", - "entities": "^2.0.0" - } - }, - "domelementtype": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz", - "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==", - "dev": true - }, - "domutils": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/domutils/-/domutils-2.8.0.tgz", - "integrity": "sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==", - "dev": true, - "requires": { - "dom-serializer": "^1.0.1", - "domelementtype": "^2.2.0", - "domhandler": "^4.2.0" - } - } + "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.4.1", + "run-async": "^2.4.0", + "rxjs": "^7.5.5", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0", + "through": "^2.3.6", + "wrap-ansi": "^7.0.0" + }, + "engines": { + "node": ">=12.0.0" } }, - "http-cache-semantics": { - "version": "3.8.1", - "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-3.8.1.tgz", - "integrity": "sha512-5ai2iksyV8ZXmnZhHH4rWPoxxistEexSi5936zIQ1bnNTW5VnA85B6P/VpXiRM017IgRvb2kKo1a//y+0wSp3w==", - "dev": true - }, - "http-deceiver": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/http-deceiver/-/http-deceiver-1.2.7.tgz", - "integrity": "sha1-+nFolEq5pRnTN8sL7HKE3D5yPYc=", - "dev": true - }, - "http-errors": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.8.1.tgz", - "integrity": "sha512-Kpk9Sm7NmI+RHhnj6OIWDI1d6fIoFAtFt9RLaTMRlg/8w49juAStsrBgp0Dp4OdxdVbRIeKhtCUvoi/RuAhO4g==", + "node_modules/inquirer/node_modules/ansi-styles": { + "version": "4.3.0", "dev": true, - "requires": { - "depd": "~1.1.2", - "inherits": "2.0.4", - "setprototypeof": "1.2.0", - "statuses": ">= 1.5.0 < 2", - "toidentifier": "1.0.1" + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "http-proxy": { - "version": "1.18.1", - "resolved": "https://registry.npmjs.org/http-proxy/-/http-proxy-1.18.1.tgz", - "integrity": "sha512-7mz/721AbnJwIVbnaSv1Cz3Am0ZLT/UBwkC92VlxhXv/k/BBQfM2fXElQNC27BVGr0uwUpplYPQM9LnaBMR5NQ==", + "node_modules/inquirer/node_modules/chalk": { + "version": "4.1.2", "dev": true, - "requires": { - "eventemitter3": "^4.0.0", - "follow-redirects": "^1.0.0", - "requires-port": "^1.0.0" + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "http-proxy-agent": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-2.1.0.tgz", - "integrity": "sha512-qwHbBLV7WviBl0rQsOzH6o5lwyOIvwp/BdFnvVxXORldu5TmjFfjzBcWUWS5kWAZhmv+JtiDhSuQCp4sBfbIgg==", + "node_modules/inquirer/node_modules/color-convert": { + "version": "2.0.1", "dev": true, - "requires": { - "agent-base": "4", - "debug": "3.1.0" - }, + "license": "MIT", "dependencies": { - "debug": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", - "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true - } + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" } }, - "http-proxy-middleware": { - "version": "0.19.1", - "resolved": "https://registry.npmjs.org/http-proxy-middleware/-/http-proxy-middleware-0.19.1.tgz", - "integrity": "sha512-yHYTgWMQO8VvwNS22eLLloAkvungsKdKTLO8AJlftYIKNfJr3GK3zK0ZCfzDDGUBttdGc8xFy1mCitvNKQtC3Q==", + "node_modules/inquirer/node_modules/color-name": { + "version": "1.1.4", "dev": true, - "requires": { - "http-proxy": "^1.17.0", - "is-glob": "^4.0.0", - "lodash": "^4.17.11", - "micromatch": "^3.1.10" - }, - "dependencies": { - "braces": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", - "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", - "dev": true, - "requires": { - "arr-flatten": "^1.1.0", - "array-unique": "^0.3.2", - "extend-shallow": "^2.0.1", - "fill-range": "^4.0.0", - "isobject": "^3.0.1", - "repeat-element": "^1.1.2", - "snapdragon": "^0.8.1", - "snapdragon-node": "^2.0.1", - "split-string": "^3.0.2", - "to-regex": "^3.0.1" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "fill-range": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", - "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", - "dev": true, - "requires": { - "extend-shallow": "^2.0.1", - "is-number": "^3.0.0", - "repeat-string": "^1.6.1", - "to-regex-range": "^2.1.0" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "is-number": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", - "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", - "dev": true, - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "micromatch": { - "version": "3.1.10", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", - "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", - "dev": true, - "requires": { - "arr-diff": "^4.0.0", - "array-unique": "^0.3.2", - "braces": "^2.3.1", - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "extglob": "^2.0.4", - "fragment-cache": "^0.2.1", - "kind-of": "^6.0.2", - "nanomatch": "^1.2.9", - "object.pick": "^1.3.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.2" - } - }, - "to-regex-range": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", - "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=", - "dev": true, - "requires": { - "is-number": "^3.0.0", - "repeat-string": "^1.6.1" - } - } - } + "license": "MIT" }, - "http-signature": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", - "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=", + "node_modules/inquirer/node_modules/has-flag": { + "version": "4.0.0", "dev": true, - "requires": { - "assert-plus": "^1.0.0", - "jsprim": "^1.2.2", - "sshpk": "^1.7.0" + "license": "MIT", + "engines": { + "node": ">=8" } }, - "https-browserify": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/https-browserify/-/https-browserify-1.0.0.tgz", - "integrity": "sha1-7AbBDgo0wPL68Zn3/X/Hj//QPHM=", - "dev": true - }, - "https-proxy-agent": { - "version": "2.2.4", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-2.2.4.tgz", - "integrity": "sha512-OmvfoQ53WLjtA9HeYP9RNrWMJzzAz1JGaSFr1nijg0PVR1JaD/xbJq1mdEIIlxGpXp9eSe/O2LgU9DJmTPd0Eg==", + "node_modules/inquirer/node_modules/supports-color": { + "version": "7.2.0", "dev": true, - "requires": { - "agent-base": "^4.3.0", - "debug": "^3.1.0" - }, + "license": "MIT", "dependencies": { - "debug": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - } + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" } }, - "humanize-ms": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/humanize-ms/-/humanize-ms-1.2.1.tgz", - "integrity": "sha1-xG4xWaKT9riW2ikxbYtv6Lt5u+0=", + "node_modules/internal-slot": { + "version": "1.0.7", "dev": true, - "requires": { - "ms": "^2.0.0" + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "hasown": "^2.0.0", + "side-channel": "^1.0.4" + }, + "engines": { + "node": ">= 0.4" } }, - "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" + "node_modules/invariant": { + "version": "2.2.4", + "license": "MIT", + "dependencies": { + "loose-envify": "^1.0.0" } }, - "icss-utils": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/icss-utils/-/icss-utils-4.1.1.tgz", - "integrity": "sha512-4aFq7wvWyMHKgxsH8QQtGpvbASCf+eM3wPRLI6R+MgAnTCZ6STYsRvttLvRWK0Nfif5piF394St3HeJDaljGPA==", + "node_modules/ip-address": { + "version": "9.0.5", "dev": true, - "requires": { - "postcss": "^7.0.14" + "license": "MIT", + "dependencies": { + "jsbn": "1.1.0", + "sprintf-js": "^1.1.3" + }, + "engines": { + "node": ">= 12" } }, - "ieee754": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", - "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==" + "node_modules/ipaddr.js": { + "version": "2.2.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 10" + } }, - "iferr": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/iferr/-/iferr-0.1.5.tgz", - "integrity": "sha1-xg7taebY/bazEEofy8ocGS3FtQE=", - "dev": true + "node_modules/is-alphabetical": { + "version": "1.0.4", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } }, - "ignore": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.0.tgz", - "integrity": "sha512-CmxgYGiEPCLhfLnpPp1MoRmifwEIOgjcHXxOBjv7mY96c+eWScsOP9c112ZyLdWHi0FxHjI+4uVhKYp/gcdRmQ==", - "dev": true + "node_modules/is-alphanumerical": { + "version": "1.0.4", + "license": "MIT", + "dependencies": { + "is-alphabetical": "^1.0.0", + "is-decimal": "^1.0.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } }, - "ignore-walk": { + "node_modules/is-array-buffer": { "version": "3.0.4", - "resolved": "https://registry.npmjs.org/ignore-walk/-/ignore-walk-3.0.4.tgz", - "integrity": "sha512-PY6Ii8o1jMRA1z4F2hRkH/xN59ox43DavKvD3oDpfurRlOJyAHpifIwpbdv1n4jt4ov0jSpw3kQ4GhJnpBL6WQ==", "dev": true, - "requires": { - "minimatch": "^3.0.4" + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.2", + "get-intrinsic": "^1.2.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "image-size": { - "version": "0.5.5", - "resolved": "https://registry.npmjs.org/image-size/-/image-size-0.5.5.tgz", - "integrity": "sha1-Cd/Uq50g4p6xw+gLiZA3jfnjy5w=", + "node_modules/is-arrayish": { + "version": "0.2.1", "dev": true, - "optional": true - }, - "immediate": { - "version": "3.0.6", - "resolved": "https://registry.npmjs.org/immediate/-/immediate-3.0.6.tgz", - "integrity": "sha1-nbHb0Pr43m++D13V5Wu2BigN5ps=", - "dev": true + "license": "MIT" }, - "immutable": { - "version": "3.8.2", - "resolved": "https://registry.npmjs.org/immutable/-/immutable-3.8.2.tgz", - "integrity": "sha1-wkOZUUVbs5kT2vKBN28VMOEErfM=" + "node_modules/is-bigint": { + "version": "1.0.4", + "dev": true, + "license": "MIT", + "dependencies": { + "has-bigints": "^1.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, - "import-cwd": { + "node_modules/is-binary-path": { "version": "2.1.0", - "resolved": "https://registry.npmjs.org/import-cwd/-/import-cwd-2.1.0.tgz", - "integrity": "sha1-qmzzbnInYShcs3HsZRn1PiQ1sKk=", "dev": true, - "requires": { - "import-from": "^2.1.0" + "license": "MIT", + "dependencies": { + "binary-extensions": "^2.0.0" + }, + "engines": { + "node": ">=8" } }, - "import-fresh": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-2.0.0.tgz", - "integrity": "sha1-2BNVwVYS04bGH53dOSLUMEgipUY=", + "node_modules/is-boolean-object": { + "version": "1.1.2", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-builtin-module": { + "version": "3.2.1", "dev": true, - "requires": { - "caller-path": "^2.0.0", - "resolve-from": "^3.0.0" + "license": "MIT", + "dependencies": { + "builtin-modules": "^3.3.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "import-from": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/import-from/-/import-from-2.1.0.tgz", - "integrity": "sha1-M1238qev/VOqpHHUuAId7ja387E=", + "node_modules/is-callable": { + "version": "1.2.7", "dev": true, - "requires": { - "resolve-from": "^3.0.0" + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "import-lazy": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/import-lazy/-/import-lazy-2.1.0.tgz", - "integrity": "sha1-BWmOPUXIjo1+nZLLBYTnfwlvPkM=", - "dev": true - }, - "import-local": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/import-local/-/import-local-2.0.0.tgz", - "integrity": "sha512-b6s04m3O+s3CGSbqDIyP4R6aAwAeYlVq9+WUWep6iHa8ETRf9yei1U48C5MmfJmV9AiLYYBKPMq/W+/WRpQmCQ==", + "node_modules/is-core-module": { + "version": "2.15.1", "dev": true, - "requires": { - "pkg-dir": "^3.0.0", - "resolve-cwd": "^2.0.0" + "license": "MIT", + "dependencies": { + "hasown": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "imurmurhash": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", - "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", - "dev": true - }, - "indent-string": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", - "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", - "dev": true - }, - "indexes-of": { + "node_modules/is-data-view": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/indexes-of/-/indexes-of-1.0.1.tgz", - "integrity": "sha1-8w9xbI4r00bHtn0985FVZqfAVgc=", - "dev": true - }, - "indexof": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/indexof/-/indexof-0.0.1.tgz", - "integrity": "sha1-gtwzbSMrkGIXnQWrMpOmYFn9Q10=", - "dev": true - }, - "infer-owner": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/infer-owner/-/infer-owner-1.0.4.tgz", - "integrity": "sha512-IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A==", - "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" + "license": "MIT", + "dependencies": { + "is-typed-array": "^1.1.13" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "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.6", - "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.6.tgz", - "integrity": "sha512-IZUoxEjNjubzrmvzZU4lKP7OnYmX72XRl3sqkfJhBKweKi5rnGi5+IUdlj/H1M+Ip5JQ1WzaDMOBRY90Ajc5jg==" - }, - "injection-js": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/injection-js/-/injection-js-2.4.0.tgz", - "integrity": "sha512-6jiJt0tCAo9zjHbcwLiPL+IuNe9SQ6a9g0PEzafThW3fOQi0mrmiJGBJvDD6tmhPh8cQHIQtCOrJuBfQME4kPA==", + "node_modules/is-date-object": { + "version": "1.0.5", "dev": true, - "requires": { - "tslib": "^2.0.0" - }, + "license": "MIT", "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 - } + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "inputmask": { - "version": "5.0.8", - "resolved": "https://registry.npmjs.org/inputmask/-/inputmask-5.0.8.tgz", - "integrity": "sha512-1WcbyudPTXP1B28ozWWyFa6QRIUG4KiLoyR6LFHlpT4OfTzRqFfWgHFadNvRuMN1S9XNVz9CdNvCGjJi+uAMqQ==" + "node_modules/is-decimal": { + "version": "1.0.4", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } }, - "inquirer": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-7.1.0.tgz", - "integrity": "sha512-5fJMWEmikSYu0nv/flMc475MhGbB7TSPd/2IpFV4I4rMklboCH2rQjYY5kKiYGHqUF9gvaambupcJFFG9dvReg==", + "node_modules/is-docker": { + "version": "2.2.1", "dev": true, - "requires": { - "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" + "license": "MIT", + "bin": { + "is-docker": "cli.js" }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-dom": { + "version": "1.1.0", + "license": "MIT", "dependencies": { - "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" - } - }, - "chalk": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", - "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.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 - }, - "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 - }, - "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 - }, - "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.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" - } - }, - "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" - } - }, - "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" - } - } + "is-object": "^1.0.1", + "is-window": "^1.0.2" } }, - "internal-ip": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/internal-ip/-/internal-ip-4.3.0.tgz", - "integrity": "sha512-S1zBo1D6zcsyuC6PMmY5+55YMILQ9av8lotMx447Bq6SAgo/sDK6y6uUKmuYhW7eacnIhFfsPmCNYdDzsnnDCg==", + "node_modules/is-extglob": { + "version": "2.1.1", "dev": true, - "requires": { - "default-gateway": "^4.2.0", - "ipaddr.js": "^1.9.0" + "license": "MIT", + "engines": { + "node": ">=0.10.0" } }, - "internal-slot": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.3.tgz", - "integrity": "sha512-O0DB1JC/sPyZl7cIo78n5dR7eUSwwpYPiXRhTzNxZVAMUuB8vlnRFyLxdrVToks6XPLVnFfbzaVd5WLjhgg+vA==", + "node_modules/is-fullwidth-code-point": { + "version": "3.0.0", "dev": true, - "requires": { - "get-intrinsic": "^1.1.0", - "has": "^1.0.3", - "side-channel": "^1.0.4" + "license": "MIT", + "engines": { + "node": ">=8" } }, - "invariant": { - "version": "2.2.4", - "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz", - "integrity": "sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==", - "requires": { - "loose-envify": "^1.0.0" + "node_modules/is-glob": { + "version": "4.0.3", + "dev": true, + "license": "MIT", + "dependencies": { + "is-extglob": "^2.1.1" + }, + "engines": { + "node": ">=0.10.0" } }, - "invert-kv": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/invert-kv/-/invert-kv-2.0.0.tgz", - "integrity": "sha512-wPVv/y/QQ/Uiirj/vh3oP+1Ww+AWehmi1g5fFWGPF6IpCBCDVrhgHRMvrLfdYcwDh3QJbGXDW4JAuzxElLSqKA==", - "dev": true - }, - "ip": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/ip/-/ip-1.1.5.tgz", - "integrity": "sha1-vd7XARQpCCjAoDnnLvJfWq7ENUo=", - "dev": true + "node_modules/is-hexadecimal": { + "version": "1.0.4", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } }, - "ip-regex": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/ip-regex/-/ip-regex-2.1.0.tgz", - "integrity": "sha1-+ni/XS5pE8kRzp+BnuUUa7bYROk=", - "dev": true + "node_modules/is-interactive": { + "version": "1.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } }, - "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==", - "dev": true + "node_modules/is-lambda": { + "version": "1.0.1", + "dev": true, + "license": "MIT" }, - "is-absolute-url": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-absolute-url/-/is-absolute-url-2.1.0.tgz", - "integrity": "sha1-UFMN+4T8yap9vnhS6Do3uTufKqY=", - "dev": true + "node_modules/is-module": { + "version": "1.0.0", + "dev": true, + "license": "MIT" }, - "is-accessor-descriptor": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", - "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", + "node_modules/is-negative-zero": { + "version": "2.0.3", "dev": true, - "requires": { - "kind-of": "^3.0.2" + "license": "MIT", + "engines": { + "node": ">= 0.4" }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "is-alphabetical": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-alphabetical/-/is-alphabetical-1.0.4.tgz", - "integrity": "sha512-DwzsA04LQ10FHTZuL0/grVDk4rFoVH1pjAToYwBrHSxcrBIGQuXrQMtD5U1b0U2XVgKZCTLLP8u2Qxqhy3l2Vg==" - }, - "is-alphanumerical": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-alphanumerical/-/is-alphanumerical-1.0.4.tgz", - "integrity": "sha512-UzoZUr+XfVz3t3v4KyGEniVL9BDRoQtY7tOyrRybkVNjDFWyo1yhXNGrrBTQxp3ib9BLAWs7k2YKBQsFRkZG9A==", - "requires": { - "is-alphabetical": "^1.0.0", - "is-decimal": "^1.0.0" + "node_modules/is-number": { + "version": "7.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.12.0" } }, - "is-arguments": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/is-arguments/-/is-arguments-1.1.1.tgz", - "integrity": "sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA==", + "node_modules/is-number-object": { + "version": "1.0.7", "dev": true, - "requires": { - "call-bind": "^1.0.2", + "license": "MIT", + "dependencies": { "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "is-arrayish": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", - "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=", - "dev": true + "node_modules/is-object": { + "version": "1.0.2", + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, - "is-bigint": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz", - "integrity": "sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==", + "node_modules/is-plain-obj": { + "version": "3.0.0", "dev": true, - "requires": { - "has-bigints": "^1.0.1" + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "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==", + "node_modules/is-plain-object": { + "version": "2.0.4", "dev": true, - "requires": { - "binary-extensions": "^2.0.0" + "license": "MIT", + "dependencies": { + "isobject": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" } }, - "is-boolean-object": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz", - "integrity": "sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==", + "node_modules/is-promise": { + "version": "2.2.2", + "license": "MIT" + }, + "node_modules/is-reference": { + "version": "1.2.1", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/estree": "*" + } + }, + "node_modules/is-regex": { + "version": "1.1.4", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "call-bind": "^1.0.2", "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "is-buffer": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", - "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==", - "dev": true - }, - "is-callable": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.4.tgz", - "integrity": "sha512-nsuwtxZfMX67Oryl9LCQ+upnC0Z0BgpwntpS89m1H/TLF0zNfzfLMV/9Wa/6MZsj0acpEjAO0KF1xT6ZdLl95w==", - "dev": true - }, - "is-ci": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-2.0.0.tgz", - "integrity": "sha512-YfJT7rkpQB0updsdHLGWrvhBJfcfzNNawYDNIyQXJz0IViGf75O8EBPKSdvw2rF+LGCsX4FZ8tcr3b19LcZq4w==", + "node_modules/is-shared-array-buffer": { + "version": "1.0.3", "dev": true, - "requires": { - "ci-info": "^2.0.0" + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "is-color-stop": { + "node_modules/is-stream": { "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-color-stop/-/is-color-stop-1.1.0.tgz", - "integrity": "sha1-z/9HGu5N1cnhWFmPvhKWe1za00U=", - "dev": true, - "requires": { - "css-color-names": "^0.0.4", - "hex-color-regex": "^1.1.0", - "hsl-regex": "^1.0.0", - "hsla-regex": "^1.0.0", - "rgb-regex": "^1.0.1", - "rgba-regex": "^1.0.0" + "license": "MIT", + "engines": { + "node": ">=0.10.0" } }, - "is-core-module": { - "version": "2.8.1", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.8.1.tgz", - "integrity": "sha512-SdNCUs284hr40hFTFP6l0IfZ/RSrMXF3qgoRHd3/79unUTvrFO/JoXwkGm+5J/Oe3E/b5GsnG330uUNgRpu1PA==", + "node_modules/is-string": { + "version": "1.0.7", "dev": true, - "requires": { - "has": "^1.0.3" + "license": "MIT", + "dependencies": { + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "is-data-descriptor": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", - "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", + "node_modules/is-symbol": { + "version": "1.0.4", "dev": true, - "requires": { - "kind-of": "^3.0.2" - }, + "license": "MIT", "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } + "has-symbols": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "is-date-object": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz", - "integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==", + "node_modules/is-typed-array": { + "version": "1.1.13", "dev": true, - "requires": { - "has-tostringtag": "^1.0.0" + "license": "MIT", + "dependencies": { + "which-typed-array": "^1.1.14" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "is-decimal": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-decimal/-/is-decimal-1.0.4.tgz", - "integrity": "sha512-RGdriMmQQvZ2aqaQq3awNA6dCGtKpiDFcOzrTWrDAT2MiWrKQVPmxLGHl7Y2nNu6led0kEyoX0enY0qXYsv9zw==" - }, - "is-descriptor": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", - "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", + "node_modules/is-unicode-supported": { + "version": "0.1.0", "dev": true, - "requires": { - "is-accessor-descriptor": "^0.1.6", - "is-data-descriptor": "^0.1.4", - "kind-of": "^5.0.0" + "license": "MIT", + "engines": { + "node": ">=10" }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-weakref": { + "version": "1.0.2", + "dev": true, + "license": "MIT", "dependencies": { - "kind-of": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", - "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", - "dev": true - } + "call-bind": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "is-directory": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/is-directory/-/is-directory-0.3.1.tgz", - "integrity": "sha1-YTObbyR1/Hcv2cnYP1yFddwVSuE=", - "dev": true + "node_modules/is-what": { + "version": "3.14.1", + "dev": true, + "license": "MIT" }, - "is-docker": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz", - "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==", - "dev": true + "node_modules/is-window": { + "version": "1.0.2", + "license": "MIT" }, - "is-dom": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-dom/-/is-dom-1.1.0.tgz", - "integrity": "sha512-u82f6mvhYxRPKpw8V1N0W8ce1xXwOrQtgGcxl6UCL5zBmZu3is/18K0rR7uFCnMDuAsS/3W54mGL4vsaFUQlEQ==", - "requires": { - "is-object": "^1.0.1", - "is-window": "^1.0.2" + "node_modules/is-wsl": { + "version": "2.2.0", + "dev": true, + "license": "MIT", + "dependencies": { + "is-docker": "^2.0.0" + }, + "engines": { + "node": ">=8" } }, - "is-extendable": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", - "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=", - "dev": true + "node_modules/isarray": { + "version": "0.0.1", + "dev": true, + "license": "MIT" }, - "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 + "node_modules/isbinaryfile": { + "version": "4.0.10", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 8.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/gjtorikian/" + } }, - "is-fullwidth-code-point": { + "node_modules/isexe": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=" + "dev": true, + "license": "ISC" }, - "is-glob": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", - "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "node_modules/isobject": { + "version": "3.0.1", "dev": true, - "requires": { - "is-extglob": "^2.1.1" + "license": "MIT", + "engines": { + "node": ">=0.10.0" } }, - "is-hexadecimal": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-hexadecimal/-/is-hexadecimal-1.0.4.tgz", - "integrity": "sha512-gyPJuv83bHMpocVYoqof5VDiZveEoGoFL8m3BXNb2VW8Xs+rz9kqO8LOQ5DH6EsuvilT1ApazU0pyl+ytbPtlw==" + "node_modules/isomorphic-fetch": { + "version": "2.2.1", + "license": "MIT", + "dependencies": { + "node-fetch": "^1.0.1", + "whatwg-fetch": ">=0.10.0" + } }, - "is-installed-globally": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/is-installed-globally/-/is-installed-globally-0.3.2.tgz", - "integrity": "sha512-wZ8x1js7Ia0kecP/CHM/3ABkAmujX7WPvQk6uu3Fly/Mk44pySulQpnHG46OMjHGXApINnV4QhY3SWnECO2z5g==", + "node_modules/istanbul-lib-coverage": { + "version": "3.2.2", "dev": true, - "requires": { - "global-dirs": "^2.0.1", - "is-path-inside": "^3.0.1" - }, - "dependencies": { - "is-path-inside": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", - "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==", - "dev": true - } + "license": "BSD-3-Clause", + "engines": { + "node": ">=8" } }, - "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==", - "dev": true + "node_modules/istanbul-lib-instrument": { + "version": "5.2.1", + "dev": true, + "license": "BSD-3-Clause", + "dependencies": { + "@babel/core": "^7.12.3", + "@babel/parser": "^7.14.7", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-coverage": "^3.2.0", + "semver": "^6.3.0" + }, + "engines": { + "node": ">=8" + } }, - "is-module": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-module/-/is-module-1.0.0.tgz", - "integrity": "sha1-Mlj7afeMFNW4FdZkM2tM/7ZEFZE=", - "dev": true + "node_modules/istanbul-lib-instrument/node_modules/semver": { + "version": "6.3.1", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + } }, - "is-negative-zero": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.2.tgz", - "integrity": "sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==", - "dev": true + "node_modules/istanbul-lib-report": { + "version": "3.0.1", + "dev": true, + "license": "BSD-3-Clause", + "dependencies": { + "istanbul-lib-coverage": "^3.0.0", + "make-dir": "^4.0.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + } }, - "is-npm": { + "node_modules/istanbul-lib-report/node_modules/has-flag": { "version": "4.0.0", - "resolved": "https://registry.npmjs.org/is-npm/-/is-npm-4.0.0.tgz", - "integrity": "sha512-96ECIfh9xtDDlPylNPXhzjsykHsMJZ18ASpaWzQyBr4YRTcVjUvzaHayDAES2oU/3KpljhHUjtSRNiDwi0F0ig==", - "dev": true - }, - "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-number-object": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.7.tgz", - "integrity": "sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==", "dev": true, - "requires": { - "has-tostringtag": "^1.0.0" + "license": "MIT", + "engines": { + "node": ">=8" } }, - "is-obj": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-2.0.0.tgz", - "integrity": "sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w==", - "dev": true + "node_modules/istanbul-lib-report/node_modules/make-dir": { + "version": "4.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "semver": "^7.5.3" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } }, - "is-object": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-object/-/is-object-1.0.2.tgz", - "integrity": "sha512-2rRIahhZr2UWb45fIOuvZGpFtz0TyOZLf32KxBbSoUCeZR495zCKlWUKKUByk3geS2eAs7ZAABt0Y/Rx0GiQGA==" + "node_modules/istanbul-lib-report/node_modules/supports-color": { + "version": "7.2.0", + "dev": true, + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } }, - "is-path-cwd": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/is-path-cwd/-/is-path-cwd-2.2.0.tgz", - "integrity": "sha512-w942bTcih8fdJPJmQHFzkS76NEP8Kzzvmw92cXsazb8intwLqPibPPdXf4ANdKV3rYMuuQYGIWtvz9JilB3NFQ==", - "dev": true + "node_modules/istanbul-lib-source-maps": { + "version": "4.0.1", + "dev": true, + "license": "BSD-3-Clause", + "dependencies": { + "debug": "^4.1.1", + "istanbul-lib-coverage": "^3.0.0", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=10" + } }, - "is-path-in-cwd": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-path-in-cwd/-/is-path-in-cwd-2.1.0.tgz", - "integrity": "sha512-rNocXHgipO+rvnP6dk3zI20RpOtrAM/kzbB258Uw5BWr3TpXi861yzjo16Dn4hUox07iw5AyeMLHWsujkjzvRQ==", + "node_modules/istanbul-lib-source-maps/node_modules/source-map": { + "version": "0.6.1", "dev": true, - "requires": { - "is-path-inside": "^2.1.0" + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.10.0" } }, - "is-path-inside": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-2.1.0.tgz", - "integrity": "sha512-wiyhTzfDWsvwAW53OBWF5zuvaOGlZ6PwYxAbPVDhpm+gM09xKQGjBq/8uYN12aDvMxnAnq3dxTyoSoRNmg5YFg==", + "node_modules/istanbul-reports": { + "version": "3.1.7", "dev": true, - "requires": { - "path-is-inside": "^1.0.2" + "license": "BSD-3-Clause", + "dependencies": { + "html-escaper": "^2.0.0", + "istanbul-lib-report": "^3.0.0" + }, + "engines": { + "node": ">=8" } }, - "is-plain-obj": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz", - "integrity": "sha1-caUMhCnfync8kqOQpKA7OfzVHT4=", - "dev": true - }, - "is-plain-object": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz", - "integrity": "sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==" - }, - "is-promise": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-2.2.2.tgz", - "integrity": "sha512-+lP4/6lKUBfQjZ2pdxThZvLUAafmZb8OAxFb8XXtiQmS35INgr85hdOGoEs124ez1FCnZJt6jau/T+alh58QFQ==" + "node_modules/jasmine-core": { + "version": "4.5.0", + "dev": true, + "license": "MIT" }, - "is-reference": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/is-reference/-/is-reference-1.2.1.tgz", - "integrity": "sha512-U82MsXXiFIrjCK4otLT+o2NA2Cd2g5MLoOVXUZjIOhLurrRxpEXzI8O0KZHr3IjLvlAH1kTPYSuqer5T9ZVBKQ==", + "node_modules/jest-worker": { + "version": "27.5.1", "dev": true, - "requires": { - "@types/estree": "*" + "license": "MIT", + "dependencies": { + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" + }, + "engines": { + "node": ">= 10.13.0" } }, - "is-regex": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz", - "integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==", + "node_modules/jest-worker/node_modules/has-flag": { + "version": "4.0.0", "dev": true, - "requires": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" + "license": "MIT", + "engines": { + "node": ">=8" } }, - "is-resolvable": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-resolvable/-/is-resolvable-1.1.0.tgz", - "integrity": "sha512-qgDYXFSR5WvEfuS5dMj6oTMEbrrSaM0CrFk2Yiq/gXnBvD9pMa2jGXxyhGLfvhZpuMZe18CJpFxAt3CRs42NMg==", - "dev": true - }, - "is-shared-array-buffer": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz", - "integrity": "sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==", + "node_modules/jest-worker/node_modules/supports-color": { + "version": "8.1.1", "dev": true, - "requires": { - "call-bind": "^1.0.2" + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/supports-color?sponsor=1" } }, - "is-stream": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", - "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=" + "node_modules/jquery": { + "version": "3.7.1", + "license": "MIT" }, - "is-string": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz", - "integrity": "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==", - "dev": true, - "requires": { - "has-tostringtag": "^1.0.0" + "node_modules/jquery-file-download": { + "version": "1.4.6" + }, + "node_modules/jquery-minicolors": { + "version": "2.1.10", + "license": "MIT", + "dependencies": { + "jquery": ">= 1.7.x" } }, - "is-symbol": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz", - "integrity": "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==", + "node_modules/js_cols": { + "version": "1.0.1" + }, + "node_modules/js-file-download": { + "version": "0.4.12", + "license": "MIT" + }, + "node_modules/js-tokens": { + "version": "4.0.0", + "license": "MIT" + }, + "node_modules/js-yaml": { + "version": "3.14.1", "dev": true, - "requires": { - "has-symbols": "^1.0.2" + "license": "MIT", + "dependencies": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" } }, - "is-typedarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", - "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=", - "dev": true + "node_modules/jsbn": { + "version": "1.1.0", + "dev": true, + "license": "MIT" }, - "is-weakref": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.2.tgz", - "integrity": "sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==", + "node_modules/jsesc": { + "version": "2.5.2", "dev": true, - "requires": { - "call-bind": "^1.0.2" + "license": "MIT", + "bin": { + "jsesc": "bin/jsesc" + }, + "engines": { + "node": ">=4" } }, - "is-window": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-window/-/is-window-1.0.2.tgz", - "integrity": "sha1-LIlspT25feRdPDMTOmXYyfVjSA0=" - }, - "is-windows": { + "node_modules/json-parse-better-errors": { "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz", - "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==", - "dev": true - }, - "is-wsl": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", - "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==", "dev": true, - "requires": { - "is-docker": "^2.0.0" - } + "license": "MIT" }, - "is-yarn-global": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/is-yarn-global/-/is-yarn-global-0.3.0.tgz", - "integrity": "sha512-VjSeb/lHmkoyd8ryPVIKvOCn4D1koMqY+vqyjjUfc3xyKtP4dYOxM44sZrnqQSzSds3xyOrUTLTC9LVCVgLngw==", - "dev": true + "node_modules/json-parse-even-better-errors": { + "version": "2.3.1", + "dev": true, + "license": "MIT" }, - "isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" + "node_modules/json-schema-traverse": { + "version": "0.4.1", + "license": "MIT" }, - "isbinaryfile": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/isbinaryfile/-/isbinaryfile-3.0.3.tgz", - "integrity": "sha512-8cJBL5tTd2OS0dM4jz07wQd5g0dCCqIhUxPIGtZfa5L6hWlvV5MHTITy/DBAsF+Oe2LS1X3krBUhNwaGUWpWxw==", + "node_modules/json5": { + "version": "2.2.3", "dev": true, - "requires": { - "buffer-alloc": "^1.2.0" + "license": "MIT", + "bin": { + "json5": "lib/cli.js" + }, + "engines": { + "node": ">=6" } }, - "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 + "node_modules/jsonc-parser": { + "version": "3.1.0", + "dev": true, + "license": "MIT" }, - "isomorphic-fetch": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/isomorphic-fetch/-/isomorphic-fetch-2.2.1.tgz", - "integrity": "sha1-YRrhrPFPXoH3KVB0coGf6XM1WKk=", - "requires": { - "node-fetch": "^1.0.1", - "whatwg-fetch": ">=0.10.0" + "node_modules/jsonfile": { + "version": "4.0.0", + "dev": true, + "license": "MIT", + "optionalDependencies": { + "graceful-fs": "^4.1.6" } }, - "isstream": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", - "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=", - "dev": true - }, - "istanbul-api": { - "version": "2.1.7", - "resolved": "https://registry.npmjs.org/istanbul-api/-/istanbul-api-2.1.7.tgz", - "integrity": "sha512-LYTOa2UrYFyJ/aSczZi/6lBykVMjCCvUmT64gOe+jPZFy4w6FYfPGqFT2IiQ2BxVHHDOvCD7qrIXb0EOh4uGWw==", - "dev": true, - "requires": { - "async": "^2.6.2", - "compare-versions": "^3.4.0", - "fileset": "^2.0.3", - "istanbul-lib-coverage": "^2.0.5", - "istanbul-lib-hook": "^2.0.7", - "istanbul-lib-instrument": "^3.3.0", - "istanbul-lib-report": "^2.0.8", - "istanbul-lib-source-maps": "^3.0.6", - "istanbul-reports": "^2.2.5", - "js-yaml": "^3.13.1", - "make-dir": "^2.1.0", + "node_modules/jsonparse": { + "version": "1.3.1", + "dev": true, + "engines": [ + "node >= 0.2.0" + ], + "license": "MIT" + }, + "node_modules/karma": { + "version": "6.4.1", + "dev": true, + "license": "MIT", + "dependencies": { + "@colors/colors": "1.5.0", + "body-parser": "^1.19.0", + "braces": "^3.0.2", + "chokidar": "^3.5.1", + "connect": "^3.7.0", + "di": "^0.0.1", + "dom-serialize": "^2.2.1", + "glob": "^7.1.7", + "graceful-fs": "^4.2.6", + "http-proxy": "^1.18.1", + "isbinaryfile": "^4.0.8", + "lodash": "^4.17.21", + "log4js": "^6.4.1", + "mime": "^2.5.2", "minimatch": "^3.0.4", - "once": "^1.4.0" + "mkdirp": "^0.5.5", + "qjobs": "^1.2.0", + "range-parser": "^1.2.1", + "rimraf": "^3.0.2", + "socket.io": "^4.4.1", + "source-map": "^0.6.1", + "tmp": "^0.2.1", + "ua-parser-js": "^0.7.30", + "yargs": "^16.1.1" }, - "dependencies": { - "istanbul-lib-coverage": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.5.tgz", - "integrity": "sha512-8aXznuEPCJvGnMSRft4udDRDtb1V3pkQkMMI5LI+6HuQz5oQ4J2UFn1H82raA3qJtyOLkkwVqICBQkjnGtn5mA==", - "dev": true - }, - "istanbul-lib-instrument": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-3.3.0.tgz", - "integrity": "sha512-5nnIN4vo5xQZHdXno/YDXJ0G+I3dAm4XgzfSVTPLQpj/zAV2dV6Juy0yaf10/zrJOJeHoN3fraFe+XRq2bFVZA==", - "dev": true, - "requires": { - "@babel/generator": "^7.4.0", - "@babel/parser": "^7.4.3", - "@babel/template": "^7.4.0", - "@babel/traverse": "^7.4.3", - "@babel/types": "^7.4.0", - "istanbul-lib-coverage": "^2.0.5", - "semver": "^6.0.0" - } - }, - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - } + "bin": { + "karma": "bin/karma" + }, + "engines": { + "node": ">= 10" } }, - "istanbul-lib-coverage": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.0.tgz", - "integrity": "sha512-eOeJ5BHCmHYvQK7xt9GkdHuzuCGS1Y6g9Gvnx3Ym33fz/HpLRYxiS0wHNr+m/MBC8B647Xt608vCDEvhl9c6Mw==", - "dev": true + "node_modules/karma-chrome-launcher": { + "version": "3.1.1", + "dev": true, + "license": "MIT", + "dependencies": { + "which": "^1.2.1" + } }, - "istanbul-lib-hook": { - "version": "2.0.7", - "resolved": "https://registry.npmjs.org/istanbul-lib-hook/-/istanbul-lib-hook-2.0.7.tgz", - "integrity": "sha512-vrRztU9VRRFDyC+aklfLoeXyNdTfga2EI3udDGn4cZ6fpSXpHLV9X6CHvfoMCPtggg8zvDDmC4b9xfu0z6/llA==", + "node_modules/karma-coverage": { + "version": "2.2.0", "dev": true, - "requires": { - "append-transform": "^1.0.0" + "license": "MIT", + "dependencies": { + "istanbul-lib-coverage": "^3.2.0", + "istanbul-lib-instrument": "^5.1.0", + "istanbul-lib-report": "^3.0.0", + "istanbul-lib-source-maps": "^4.0.1", + "istanbul-reports": "^3.0.5", + "minimatch": "^3.0.4" + }, + "engines": { + "node": ">=10.0.0" } }, - "istanbul-lib-instrument": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-4.0.3.tgz", - "integrity": "sha512-BXgQl9kf4WTCPCCpmFGoJkz/+uhvm7h7PFKUYxh7qarQd3ER33vHG//qaE8eN25l07YqZPpHXU9I09l/RD5aGQ==", + "node_modules/karma-coverage-istanbul-reporter": { + "version": "3.0.3", "dev": true, - "requires": { - "@babel/core": "^7.7.5", - "@istanbuljs/schema": "^0.1.2", + "license": "MIT", + "dependencies": { "istanbul-lib-coverage": "^3.0.0", - "semver": "^6.3.0" + "istanbul-lib-report": "^3.0.0", + "istanbul-lib-source-maps": "^3.0.6", + "istanbul-reports": "^3.0.2", + "minimatch": "^3.0.4" }, + "funding": { + "url": "https://github.com/sponsors/mattlewis92" + } + }, + "node_modules/karma-coverage-istanbul-reporter/node_modules/brace-expansion": { + "version": "1.1.11", + "dev": true, + "license": "MIT", "dependencies": { - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - } + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" } }, - "istanbul-lib-report": { - "version": "2.0.8", - "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-2.0.8.tgz", - "integrity": "sha512-fHBeG573EIihhAblwgxrSenp0Dby6tJMFR/HvlerBsrCTD5bkUuoNtn3gVh29ZCS824cGGBPn7Sg7cNk+2xUsQ==", + "node_modules/karma-coverage-istanbul-reporter/node_modules/glob": { + "version": "7.2.3", "dev": true, - "requires": { - "istanbul-lib-coverage": "^2.0.5", - "make-dir": "^2.1.0", - "supports-color": "^6.1.0" - }, + "license": "ISC", "dependencies": { - "istanbul-lib-coverage": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.5.tgz", - "integrity": "sha512-8aXznuEPCJvGnMSRft4udDRDtb1V3pkQkMMI5LI+6HuQz5oQ4J2UFn1H82raA3qJtyOLkkwVqICBQkjnGtn5mA==", - "dev": true - }, - "supports-color": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", - "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - } + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "istanbul-lib-source-maps": { + "node_modules/karma-coverage-istanbul-reporter/node_modules/istanbul-lib-source-maps": { "version": "3.0.6", - "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-3.0.6.tgz", - "integrity": "sha512-R47KzMtDJH6X4/YW9XTx+jrLnZnscW4VpNN+1PViSYTejLVPWv7oov+Duf8YQSPyVRUvueQqz1TcsC6mooZTXw==", "dev": true, - "requires": { + "license": "BSD-3-Clause", + "dependencies": { "debug": "^4.1.1", "istanbul-lib-coverage": "^2.0.5", "make-dir": "^2.1.0", "rimraf": "^2.6.3", "source-map": "^0.6.1" }, - "dependencies": { - "istanbul-lib-coverage": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.5.tgz", - "integrity": "sha512-8aXznuEPCJvGnMSRft4udDRDtb1V3pkQkMMI5LI+6HuQz5oQ4J2UFn1H82raA3qJtyOLkkwVqICBQkjnGtn5mA==", - "dev": true - }, - "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" - } - } + "engines": { + "node": ">=6" } }, - "istanbul-reports": { - "version": "2.2.7", - "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-2.2.7.tgz", - "integrity": "sha512-uu1F/L1o5Y6LzPVSVZXNOoD/KXpJue9aeLRd0sM9uMXfZvzomB0WxVamWb5ue8kA2vVWEmW7EG+A5n3f1kqHKg==", + "node_modules/karma-coverage-istanbul-reporter/node_modules/istanbul-lib-source-maps/node_modules/istanbul-lib-coverage": { + "version": "2.0.5", "dev": true, - "requires": { - "html-escaper": "^2.0.0" + "license": "BSD-3-Clause", + "engines": { + "node": ">=6" } }, - "jasmine": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/jasmine/-/jasmine-2.8.0.tgz", - "integrity": "sha1-awicChFXax8W3xG4AUbZHU6Lij4=", + "node_modules/karma-coverage-istanbul-reporter/node_modules/make-dir": { + "version": "2.1.0", "dev": true, - "requires": { - "exit": "^0.1.2", - "glob": "^7.0.6", - "jasmine-core": "~2.8.0" - }, + "license": "MIT", "dependencies": { - "jasmine-core": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/jasmine-core/-/jasmine-core-2.8.0.tgz", - "integrity": "sha1-vMl5rh+f0FcB5F5S5l06XWPxok4=", - "dev": true - } + "pify": "^4.0.1", + "semver": "^5.6.0" + }, + "engines": { + "node": ">=6" } }, - "jasmine-core": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/jasmine-core/-/jasmine-core-3.4.0.tgz", - "integrity": "sha512-HU/YxV4i6GcmiH4duATwAbJQMlE0MsDIR5XmSVxURxKHn3aGAdbY1/ZJFmVRbKtnLwIxxMJD7gYaPsypcbYimg==", - "dev": true - }, - "jasmine-spec-reporter": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/jasmine-spec-reporter/-/jasmine-spec-reporter-4.2.1.tgz", - "integrity": "sha512-FZBoZu7VE5nR7Nilzy+Np8KuVIOxF4oXDPDknehCYBDE080EnlPu0afdZNmpGDBRCUBv3mj5qgqCRmk6W/K8vg==", + "node_modules/karma-coverage-istanbul-reporter/node_modules/minimatch": { + "version": "3.1.2", "dev": true, - "requires": { - "colors": "1.1.2" + "license": "ISC", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" } }, - "jasminewd2": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/jasminewd2/-/jasminewd2-2.2.0.tgz", - "integrity": "sha1-43zwsX8ZnM4jvqcbIDk5Uka07E4=", - "dev": true + "node_modules/karma-coverage-istanbul-reporter/node_modules/pify": { + "version": "4.0.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } }, - "jest-worker": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-25.1.0.tgz", - "integrity": "sha512-ZHhHtlxOWSxCoNOKHGbiLzXnl42ga9CxDr27H36Qn+15pQZd3R/F24jrmjDelw9j/iHUIWMWs08/u2QN50HHOg==", + "node_modules/karma-coverage-istanbul-reporter/node_modules/rimraf": { + "version": "2.7.1", "dev": true, - "requires": { - "merge-stream": "^2.0.0", - "supports-color": "^7.0.0" - }, + "license": "ISC", "dependencies": { - "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" - } - } + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" } }, - "jquery": { - "version": "3.7.1", - "resolved": "https://registry.npmjs.org/jquery/-/jquery-3.7.1.tgz", - "integrity": "sha512-m4avr8yL8kmFN8psrbFFFmB/If14iN5o9nw/NgnnM+kybDJpRsAynV2BsfpTYrTRysYUdADVD7CkUUizgkpLfg==" - }, - "jquery-file-download": { - "version": "1.4.6", - "resolved": "https://registry.npmjs.org/jquery-file-download/-/jquery-file-download-1.4.6.tgz", - "integrity": "sha1-/ly0XUcE+Jflt2I+zoc3EaqLRuo=" - }, - "jquery-minicolors": { - "version": "2.1.10", - "resolved": "https://registry.npmjs.org/jquery-minicolors/-/jquery-minicolors-2.1.10.tgz", - "integrity": "sha1-sp7qVB2aMrTiaSMWj7LBYnGGc3k=", - "requires": { - "jquery": ">= 1.7.x" + "node_modules/karma-coverage-istanbul-reporter/node_modules/semver": { + "version": "5.7.2", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver" } }, - "js-file-download": { - "version": "0.4.12", - "resolved": "https://registry.npmjs.org/js-file-download/-/js-file-download-0.4.12.tgz", - "integrity": "sha512-rML+NkoD08p5Dllpjo0ffy4jRHeY6Zsapvr/W86N7E0yuzAO6qa5X9+xog6zQNlH102J7IXljNY2FtS6Lj3ucg==" - }, - "js-tokens": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", - "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==" - }, - "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==", + "node_modules/karma-coverage-istanbul-reporter/node_modules/source-map": { + "version": "0.6.1", "dev": true, - "requires": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.10.0" } }, - "jsbn": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", - "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=", - "dev": true - }, - "jsesc": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", - "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", - "dev": true - }, - "json-buffer": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.0.tgz", - "integrity": "sha1-Wx85evx11ne96Lz8Dkfh+aPZqJg=", - "dev": true - }, - "json-parse-better-errors": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz", - "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==", - "dev": true - }, - "json-parse-even-better-errors": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", - "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", - "dev": true - }, - "json-schema": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.4.0.tgz", - "integrity": "sha512-es94M3nTIfsEPisRafak+HDLfHXnKBhV3vU5eqPcS3flIWqcxJWgXHXiey3YrpaNsanY5ei1VoYEbOzijuq9BA==", - "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==" - }, - "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=", - "dev": true - }, - "json3": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/json3/-/json3-3.3.3.tgz", - "integrity": "sha512-c7/8mbUsKigAbLkD5B010BK4D9LZm7A1pNItkEwiUZRpIN66exu/e7YQWysGun+TRKaJp8MhemM+VkfWv42aCA==", - "dev": true - }, - "json5": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.1.tgz", - "integrity": "sha512-1hqLFMSrGHRHxav9q9gNjJ5EXznIxGVO09xQRrwplcS8qs28pZ8s8hupZAmqDwZUmVZ2Qb2jnyPOWcDH8m8dlA==", - "dev": true - }, - "jsonfile": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", - "integrity": "sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss=", + "node_modules/karma-coverage/node_modules/brace-expansion": { + "version": "1.1.11", "dev": true, - "requires": { - "graceful-fs": "^4.1.6" + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" } }, - "jsonparse": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/jsonparse/-/jsonparse-1.3.1.tgz", - "integrity": "sha1-P02uSpH6wxX3EGL4UhzCOfE2YoA=", - "dev": true + "node_modules/karma-coverage/node_modules/minimatch": { + "version": "3.1.2", + "dev": true, + "license": "ISC", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } }, - "jsprim": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.2.tgz", - "integrity": "sha512-P2bSOMAc/ciLz6DzgjVlGJP9+BrJWu5UDGK70C2iweC5QBIeFf0ZXRvGjEj2uYgrY2MkAAhsSWHDWlFtEroZWw==", + "node_modules/karma-jasmine": { + "version": "5.1.0", "dev": true, - "requires": { - "assert-plus": "1.0.0", - "extsprintf": "1.3.0", - "json-schema": "0.4.0", - "verror": "1.10.0" + "license": "MIT", + "dependencies": { + "jasmine-core": "^4.1.0" + }, + "engines": { + "node": ">=12" + }, + "peerDependencies": { + "karma": "^6.0.0" } }, - "jszip": { - "version": "3.9.1", - "resolved": "https://registry.npmjs.org/jszip/-/jszip-3.9.1.tgz", - "integrity": "sha512-H9A60xPqJ1CuC4Ka6qxzXZeU8aNmgOeP5IFqwJbQQwtu2EUYxota3LdsiZWplF7Wgd9tkAd0mdu36nceSaPuYw==", + "node_modules/karma-jasmine-html-reporter": { + "version": "2.0.0", "dev": true, - "requires": { - "lie": "~3.3.0", - "pako": "~1.0.2", - "readable-stream": "~2.3.6", - "set-immediate-shim": "~1.0.1" + "license": "MIT", + "peerDependencies": { + "jasmine-core": "^4.0.0", + "karma": "^6.0.0", + "karma-jasmine": "^5.0.0" } }, - "karma": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/karma/-/karma-4.1.0.tgz", - "integrity": "sha512-xckiDqyNi512U4dXGOOSyLKPwek6X/vUizSy2f3geYevbLj+UIdvNwbn7IwfUIL2g1GXEPWt/87qFD1fBbl/Uw==", - "dev": true, - "requires": { - "bluebird": "^3.3.0", - "body-parser": "^1.16.1", - "braces": "^2.3.2", - "chokidar": "^2.0.3", - "colors": "^1.1.0", - "connect": "^3.6.0", - "core-js": "^2.2.0", - "di": "^0.0.1", - "dom-serialize": "^2.2.0", - "flatted": "^2.0.0", - "glob": "^7.1.1", - "graceful-fs": "^4.1.2", - "http-proxy": "^1.13.0", - "isbinaryfile": "^3.0.0", - "lodash": "^4.17.11", - "log4js": "^4.0.0", - "mime": "^2.3.1", - "minimatch": "^3.0.2", - "optimist": "^0.6.1", - "qjobs": "^1.1.4", - "range-parser": "^1.2.0", - "rimraf": "^2.6.0", - "safe-buffer": "^5.0.1", - "socket.io": "2.1.1", - "source-map": "^0.6.1", - "tmp": "0.0.33", - "useragent": "2.3.0" - }, - "dependencies": { - "anymatch": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-2.0.0.tgz", - "integrity": "sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw==", - "dev": true, - "requires": { - "micromatch": "^3.1.4", - "normalize-path": "^2.1.1" - }, - "dependencies": { - "normalize-path": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", - "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", - "dev": true, - "requires": { - "remove-trailing-separator": "^1.0.1" - } - } - } - }, - "binary-extensions": { - "version": "1.13.1", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.13.1.tgz", - "integrity": "sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw==", - "dev": true - }, - "braces": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", - "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", - "dev": true, - "requires": { - "arr-flatten": "^1.1.0", - "array-unique": "^0.3.2", - "extend-shallow": "^2.0.1", - "fill-range": "^4.0.0", - "isobject": "^3.0.1", - "repeat-element": "^1.1.2", - "snapdragon": "^0.8.1", - "snapdragon-node": "^2.0.1", - "split-string": "^3.0.2", - "to-regex": "^3.0.1" - } - }, - "chokidar": { - "version": "2.1.8", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-2.1.8.tgz", - "integrity": "sha512-ZmZUazfOzf0Nve7duiCKD23PFSCs4JPoYyccjUFF3aQkQadqBhfzhjkwBH2mNOG9cTBwhamM37EIsIkZw3nRgg==", - "dev": true, - "requires": { - "anymatch": "^2.0.0", - "async-each": "^1.0.1", - "braces": "^2.3.2", - "fsevents": "^1.2.7", - "glob-parent": "^3.1.0", - "inherits": "^2.0.3", - "is-binary-path": "^1.0.0", - "is-glob": "^4.0.0", - "normalize-path": "^3.0.0", - "path-is-absolute": "^1.0.0", - "readdirp": "^2.2.1", - "upath": "^1.1.1" - } - }, - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - }, - "fill-range": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", - "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", - "dev": true, - "requires": { - "extend-shallow": "^2.0.1", - "is-number": "^3.0.0", - "repeat-string": "^1.6.1", - "to-regex-range": "^2.1.0" - } - }, - "fsevents": { - "version": "1.2.13", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.13.tgz", - "integrity": "sha512-oWb1Z6mkHIskLzEJ/XWX0srkpkTQ7vaopMQkyaEIoq0fmtFVxOthb8cCxeT+p3ynTdkk/RZwbgG4brR5BeWECw==", - "dev": true, - "optional": true, - "requires": { - "bindings": "^1.5.0", - "nan": "^2.12.1" - } - }, - "glob-parent": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz", - "integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=", - "dev": true, - "requires": { - "is-glob": "^3.1.0", - "path-dirname": "^1.0.0" - }, - "dependencies": { - "is-glob": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", - "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", - "dev": true, - "requires": { - "is-extglob": "^2.1.0" - } - } - } - }, - "is-binary-path": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz", - "integrity": "sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg=", - "dev": true, - "requires": { - "binary-extensions": "^1.0.0" - } - }, - "is-number": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", - "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", - "dev": true, - "requires": { - "kind-of": "^3.0.2" - } - }, - "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" - } - }, - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - }, - "micromatch": { - "version": "3.1.10", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", - "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", - "dev": true, - "requires": { - "arr-diff": "^4.0.0", - "array-unique": "^0.3.2", - "braces": "^2.3.1", - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "extglob": "^2.0.4", - "fragment-cache": "^0.2.1", - "kind-of": "^6.0.2", - "nanomatch": "^1.2.9", - "object.pick": "^1.3.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.2" - }, - "dependencies": { - "extend-shallow": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", - "integrity": "sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=", - "dev": true, - "requires": { - "assign-symbols": "^1.0.0", - "is-extendable": "^1.0.1" - } - }, - "is-extendable": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", - "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", - "dev": true, - "requires": { - "is-plain-object": "^2.0.4" - } - }, - "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 - } - } - }, - "mime": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/mime/-/mime-2.6.0.tgz", - "integrity": "sha512-USPkMeET31rOMiarsBNIHZKLGgvKc/LrjofAnBlOttf5ajRvqiRA8QsenbcooctK6d6Ts6aqZXBA+XbkKthiQg==", - "dev": true - }, - "readdirp": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.2.1.tgz", - "integrity": "sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ==", - "dev": true, - "requires": { - "graceful-fs": "^4.1.11", - "micromatch": "^3.1.10", - "readable-stream": "^2.0.2" - } - }, - "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" - } - }, - "to-regex-range": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", - "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=", - "dev": true, - "requires": { - "is-number": "^3.0.0", - "repeat-string": "^1.6.1" - } - } + "node_modules/karma-source-map-support": { + "version": "1.4.0", + "dev": true, + "license": "MIT", + "dependencies": { + "source-map-support": "^0.5.5" + } + }, + "node_modules/karma/node_modules/brace-expansion": { + "version": "1.1.11", + "dev": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" } }, - "karma-chrome-launcher": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/karma-chrome-launcher/-/karma-chrome-launcher-2.2.0.tgz", - "integrity": "sha512-uf/ZVpAabDBPvdPdveyk1EPgbnloPvFFGgmRhYLTDH7gEB4nZdSBk8yTU47w1g/drLSx5uMOkjKk7IWKfWg/+w==", + "node_modules/karma/node_modules/glob": { + "version": "7.2.3", "dev": true, - "requires": { - "fs-access": "^1.0.0", - "which": "^1.2.1" + "license": "ISC", + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "karma-coverage-istanbul-reporter": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/karma-coverage-istanbul-reporter/-/karma-coverage-istanbul-reporter-2.0.6.tgz", - "integrity": "sha512-WFh77RI8bMIKdOvI/1/IBmgnM+Q7NOLhnwG91QJrM8lW+CIXCjTzhhUsT/svLvAkLmR10uWY4RyYbHMLkTglvg==", + "node_modules/karma/node_modules/minimatch": { + "version": "3.1.2", "dev": true, - "requires": { - "istanbul-api": "^2.1.6", - "minimatch": "^3.0.4" + "license": "ISC", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" } }, - "karma-jasmine": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/karma-jasmine/-/karma-jasmine-2.0.1.tgz", - "integrity": "sha512-iuC0hmr9b+SNn1DaUD2QEYtUxkS1J+bSJSn7ejdEexs7P8EYvA1CWkEdrDQ+8jVH3AgWlCNwjYsT1chjcNW9lA==", + "node_modules/karma/node_modules/mkdirp": { + "version": "0.5.6", "dev": true, - "requires": { - "jasmine-core": "^3.3" + "license": "MIT", + "dependencies": { + "minimist": "^1.2.6" + }, + "bin": { + "mkdirp": "bin/cmd.js" } }, - "karma-jasmine-html-reporter": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/karma-jasmine-html-reporter/-/karma-jasmine-html-reporter-1.7.0.tgz", - "integrity": "sha512-pzum1TL7j90DTE86eFt48/s12hqwQuiD+e5aXx2Dc9wDEn2LfGq6RoAxEZZjFiN0RDSCOnosEKRZWxbQ+iMpQQ==", - "dev": true + "node_modules/karma/node_modules/source-map": { + "version": "0.6.1", + "dev": true, + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.10.0" + } }, - "karma-source-map-support": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/karma-source-map-support/-/karma-source-map-support-1.4.0.tgz", - "integrity": "sha512-RsBECncGO17KAoJCYXjv+ckIz+Ii9NCi+9enk+rq6XC81ezYkb4/RHE6CTXdA7IOJqoF3wcaLfVG0CPmE5ca6A==", + "node_modules/karma/node_modules/tmp": { + "version": "0.2.3", "dev": true, - "requires": { - "source-map-support": "^0.5.5" + "license": "MIT", + "engines": { + "node": ">=14.14" } }, - "keyv": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/keyv/-/keyv-3.1.0.tgz", - "integrity": "sha512-9ykJ/46SN/9KPM/sichzQ7OvXyGDYKGTaDlKMGCAlg2UK8KRy4jb0d8sFc+0Tt0YYnThq8X2RZgCg74RPxgcVA==", + "node_modules/karma/node_modules/yargs": { + "version": "16.2.0", "dev": true, - "requires": { - "json-buffer": "3.0.0" + "license": "MIT", + "dependencies": { + "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" + }, + "engines": { + "node": ">=10" } }, - "killable": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/killable/-/killable-1.0.1.tgz", - "integrity": "sha512-LzqtLKlUwirEUyl/nicirVmNiPvYs7l5n8wOPP7fyJVpUPkvCnW/vuiXGpylGUlnPDnB7311rARzAt3Mhswpjg==", - "dev": true + "node_modules/karma/node_modules/yargs-parser": { + "version": "20.2.9", + "dev": true, + "license": "ISC", + "engines": { + "node": ">=10" + } }, - "kind-of": { + "node_modules/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 - }, - "latest-version": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/latest-version/-/latest-version-5.1.0.tgz", - "integrity": "sha512-weT+r0kTkRQdCdYCNtkMwWXQTMEswKrFBkm4ckQOMVhhqhIMI1UT2hMj+1iigIhgSZm5gTmrRXBNoGUgaTY1xA==", "dev": true, - "requires": { - "package-json": "^6.3.0" + "license": "MIT", + "engines": { + "node": ">=0.10.0" } }, - "lcid": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/lcid/-/lcid-2.0.0.tgz", - "integrity": "sha512-avPEb8P8EGnwXKClwsNUgryVjllcRqtMYa49NTsbQagYuT1DcXnl1915oxWjoyGrXR6zH/Y0Zc96xWsPcoDKeA==", + "node_modules/klona": { + "version": "2.0.6", "dev": true, - "requires": { - "invert-kv": "^2.0.0" + "license": "MIT", + "engines": { + "node": ">= 8" } }, - "leaflet": { + "node_modules/leaflet": { "version": "1.7.1", - "resolved": "https://registry.npmjs.org/leaflet/-/leaflet-1.7.1.tgz", - "integrity": "sha512-/xwPEBidtg69Q3HlqPdU3DnrXQOvQU/CCHA1tcDQVzOwm91YMYaILjNp7L4Eaw5Z4sOYdbBz6koWyibppd8Zqw==" + "license": "BSD-2-Clause" }, - "leaflet-editable": { + "node_modules/leaflet-editable": { "version": "1.2.0", - "resolved": "https://registry.npmjs.org/leaflet-editable/-/leaflet-editable-1.2.0.tgz", - "integrity": "sha512-wG11JwpL8zqIbypTop6xCRGagMuWw68ihYu4uqrqc5Ep0wnEJeyob7NB2Rt5t74Oih4rwJ3OfwaGbzdowOGfYQ==" + "license": "WTFPL" }, - "leaflet-groupedlayercontrol": { - "version": "git+https://github.com/newmanw/leaflet-groupedlayercontrol.git#2b24e1608cd38804dd2d44409aa48aaf64de1dff", - "from": "git+https://github.com/newmanw/leaflet-groupedlayercontrol.git#master", - "requires": { - "leaflet": "^1.0.1" + "node_modules/leaflet.markercluster": { + "version": "1.5.3", + "license": "MIT", + "peerDependencies": { + "leaflet": "^1.3.1" } }, - "leaflet.markercluster": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/leaflet.markercluster/-/leaflet.markercluster-1.4.1.tgz", - "integrity": "sha512-ZSEpE/EFApR0bJ1w/dUGwTSUvWlpalKqIzkaYdYB7jaftQA/Y2Jav+eT4CMtEYFj+ZK4mswP13Q2acnPBnhGOw==" - }, - "less": { - "version": "3.11.3", - "resolved": "https://registry.npmjs.org/less/-/less-3.11.3.tgz", - "integrity": "sha512-VkZiTDdtNEzXA3LgjQiC3D7/ejleBPFVvq+aRI9mIj+Zhmif5TvFPM244bT4rzkvOCvJ9q4zAztok1M7Nygagw==", + "node_modules/less": { + "version": "4.1.3", "dev": true, - "requires": { - "clone": "^2.1.2", + "license": "Apache-2.0", + "dependencies": { + "copy-anything": "^2.0.1", + "parse-node-version": "^1.0.1", + "tslib": "^2.3.0" + }, + "bin": { + "lessc": "bin/lessc" + }, + "engines": { + "node": ">=6" + }, + "optionalDependencies": { "errno": "^0.1.1", "graceful-fs": "^4.1.2", "image-size": "~0.5.0", "make-dir": "^2.1.0", "mime": "^1.4.1", - "promise": "^7.1.1", - "request": "^2.83.0", - "source-map": "~0.6.0", - "tslib": "^1.10.0" + "needle": "^3.1.0", + "source-map": "~0.6.0" } }, - "less-loader": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/less-loader/-/less-loader-5.0.0.tgz", - "integrity": "sha512-bquCU89mO/yWLaUq0Clk7qCsKhsF/TZpJUzETRvJa9KSVEL9SO3ovCvdEHISBhrC81OwC8QSVX7E0bzElZj9cg==", + "node_modules/less-loader": { + "version": "11.0.0", "dev": true, - "requires": { - "clone": "^2.1.1", - "loader-utils": "^1.1.0", - "pify": "^4.0.1" + "license": "MIT", + "dependencies": { + "klona": "^2.0.4" }, + "engines": { + "node": ">= 14.15.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "less": "^3.5.0 || ^4.0.0", + "webpack": "^5.0.0" + } + }, + "node_modules/less/node_modules/make-dir": { + "version": "2.1.0", + "dev": true, + "license": "MIT", + "optional": true, "dependencies": { - "json5": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", - "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", - "dev": true, - "requires": { - "minimist": "^1.2.0" - } - }, - "loader-utils": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.0.tgz", - "integrity": "sha512-qH0WSMBtn/oHuwjy/NucEgbx5dbxxnxup9s4PVXJUDHZBQY+s0NWA9rJf53RBnQZxfch7euUui7hpoAPvALZdA==", - "dev": true, - "requires": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^1.0.1" - } - } + "pify": "^4.0.1", + "semver": "^5.6.0" + }, + "engines": { + "node": ">=6" } }, - "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 + "node_modules/less/node_modules/mime": { + "version": "1.6.0", + "dev": true, + "license": "MIT", + "optional": true, + "bin": { + "mime": "cli.js" + }, + "engines": { + "node": ">=4" + } }, - "levenary": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/levenary/-/levenary-1.1.1.tgz", - "integrity": "sha512-mkAdOIt79FD6irqjYSs4rdbnlT5vRonMEvBVPVb3XmevfS8kgRXwfes0dhPdEtzTWD/1eNE/Bm/G1iRt6DcnQQ==", + "node_modules/less/node_modules/pify": { + "version": "4.0.1", "dev": true, - "requires": { - "leven": "^3.1.0" + "license": "MIT", + "optional": true, + "engines": { + "node": ">=6" } }, - "license-webpack-plugin": { - "version": "2.1.4", - "resolved": "https://registry.npmjs.org/license-webpack-plugin/-/license-webpack-plugin-2.1.4.tgz", - "integrity": "sha512-1Xq72fmPbTg5KofXs+yI5L4QqPFjQ6mZxoeI6D7gfiEDOtaEIk6PGrdLaej90bpDqKNHNxlQ/MW4tMAL6xMPJQ==", + "node_modules/less/node_modules/semver": { + "version": "5.7.2", "dev": true, - "requires": { - "@types/webpack-sources": "^0.1.5", - "webpack-sources": "^1.2.0" + "license": "ISC", + "optional": true, + "bin": { + "semver": "bin/semver" } }, - "lie": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/lie/-/lie-3.3.0.tgz", - "integrity": "sha512-UaiMJzeWRlEujzAuw5LokY1L5ecNQYZKfmyZ9L7wDHb/p5etKaxXhohBcrw0EYby+G/NA52vRSN4N39dxHAIwQ==", + "node_modules/less/node_modules/source-map": { + "version": "0.6.1", + "dev": true, + "license": "BSD-3-Clause", + "optional": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/license-webpack-plugin": { + "version": "4.0.2", "dev": true, - "requires": { - "immediate": "~3.0.5" + "license": "ISC", + "dependencies": { + "webpack-sources": "^3.0.0" + }, + "peerDependenciesMeta": { + "webpack": { + "optional": true + }, + "webpack-sources": { + "optional": true + } } }, - "lines-and-columns": { + "node_modules/lines-and-columns": { "version": "1.2.4", - "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", - "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==", - "dev": true + "dev": true, + "license": "MIT" }, - "load-json-file": { + "node_modules/load-json-file": { "version": "4.0.0", - "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-4.0.0.tgz", - "integrity": "sha1-L19Fq5HjMhYjT9U62rZo607AmTs=", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "graceful-fs": "^4.1.2", "parse-json": "^4.0.0", "pify": "^3.0.0", "strip-bom": "^3.0.0" }, + "engines": { + "node": ">=4" + } + }, + "node_modules/load-json-file/node_modules/parse-json": { + "version": "4.0.0", + "dev": true, + "license": "MIT", "dependencies": { - "pify": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", - "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", - "dev": true - } + "error-ex": "^1.3.1", + "json-parse-better-errors": "^1.0.1" + }, + "engines": { + "node": ">=4" } }, - "loader-runner": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-2.4.0.tgz", - "integrity": "sha512-Jsmr89RcXGIwivFY21FcRrisYZfvLMTWx5kOLc+JTxtpBOG6xML0vzbc6SEQG2FO9/4Fc3wW4LVcB5DmGflaRw==", - "dev": true + "node_modules/load-json-file/node_modules/pify": { + "version": "3.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } }, - "loader-utils": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.0.tgz", - "integrity": "sha512-rP4F0h2RaWSvPEkD7BLDFQnvSf+nK+wr3ESUjNTyAGobqrijmW92zc+SO6d4p4B1wh7+B/Jg1mkQe5NYUEHtHQ==", + "node_modules/loader-runner": { + "version": "4.3.0", "dev": true, - "requires": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^2.1.2" + "license": "MIT", + "engines": { + "node": ">=6.11.5" } }, - "locate-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", - "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "node_modules/loader-utils": { + "version": "3.2.1", "dev": true, - "requires": { - "p-locate": "^3.0.0", - "path-exists": "^3.0.0" + "license": "MIT", + "engines": { + "node": ">= 12.13.0" } }, - "lodash": { - "version": "4.17.21", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", - "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" + "node_modules/locate-path": { + "version": "5.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "p-locate": "^4.1.0" + }, + "engines": { + "node": ">=8" + } }, - "lodash-es": { + "node_modules/lodash": { "version": "4.17.21", - "resolved": "https://registry.npmjs.org/lodash-es/-/lodash-es-4.17.21.tgz", - "integrity": "sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==" + "license": "MIT" }, - "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 + "node_modules/lodash-es": { + "version": "4.17.21", + "license": "MIT" }, - "lodash.debounce": { + "node_modules/lodash.debounce": { "version": "4.0.8", - "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", - "integrity": "sha1-gteb/zCmfEAF/9XiUVMArZyk168=" + "license": "MIT" + }, + "node_modules/log-symbols": { + "version": "4.1.0", + "dev": true, + "license": "MIT", + "dependencies": { + "chalk": "^4.1.0", + "is-unicode-supported": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/log-symbols/node_modules/ansi-styles": { + "version": "4.3.0", + "dev": true, + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } }, - "lodash.memoize": { + "node_modules/log-symbols/node_modules/chalk": { "version": "4.1.2", - "resolved": "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-4.1.2.tgz", - "integrity": "sha1-vMbEmkKihA7Zl/Mj6tpezRguC/4=", - "dev": true + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } }, - "lodash.uniq": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/lodash.uniq/-/lodash.uniq-4.5.0.tgz", - "integrity": "sha1-0CJTc662Uq3BvILklFM5qEJ1R3M=", - "dev": true + "node_modules/log-symbols/node_modules/color-convert": { + "version": "2.0.1", + "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } }, - "log-symbols": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-3.0.0.tgz", - "integrity": "sha512-dSkNGuI7iG3mfvDzUuYZyvk5dD9ocYCYzNU6CYDE6+Xqd+gwme6Z00NS3dUh8mq/73HaEtT7m6W+yUPtU6BZnQ==", + "node_modules/log-symbols/node_modules/color-name": { + "version": "1.1.4", "dev": true, - "requires": { - "chalk": "^2.4.2" + "license": "MIT" + }, + "node_modules/log-symbols/node_modules/has-flag": { + "version": "4.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" } }, - "log4js": { - "version": "4.5.1", - "resolved": "https://registry.npmjs.org/log4js/-/log4js-4.5.1.tgz", - "integrity": "sha512-EEEgFcE9bLgaYUKuozyFfytQM2wDHtXn4tAN41pkaxpNjAykv11GVdeI4tHtmPWW4Xrgh9R/2d7XYghDVjbKKw==", + "node_modules/log-symbols/node_modules/supports-color": { + "version": "7.2.0", "dev": true, - "requires": { - "date-format": "^2.0.0", - "debug": "^4.1.1", - "flatted": "^2.0.0", - "rfdc": "^1.1.4", - "streamroller": "^1.0.6" + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" } }, - "loglevel": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/loglevel/-/loglevel-1.8.0.tgz", - "integrity": "sha512-G6A/nJLRgWOuuwdNuA6koovfEV1YpqqAG4pRUlFaz3jj2QNZ8M4vBqnVA+HBTmU/AMNUtlOsMmSpF6NyOjztbA==", - "dev": true + "node_modules/log4js": { + "version": "6.9.1", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "date-format": "^4.0.14", + "debug": "^4.3.4", + "flatted": "^3.2.7", + "rfdc": "^1.3.0", + "streamroller": "^3.1.5" + }, + "engines": { + "node": ">=8.0" + } }, - "loose-envify": { + "node_modules/loose-envify": { "version": "1.4.0", - "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", - "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", - "requires": { + "license": "MIT", + "dependencies": { "js-tokens": "^3.0.0 || ^4.0.0" + }, + "bin": { + "loose-envify": "cli.js" } }, - "lower-case": { + "node_modules/lower-case": { "version": "1.1.4", - "resolved": "https://registry.npmjs.org/lower-case/-/lower-case-1.1.4.tgz", - "integrity": "sha1-miyr0bno4K6ZOkv31YdcOcQujqw=", - "dev": true - }, - "lowercase-keys": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.1.tgz", - "integrity": "sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA==", - "dev": true + "dev": true, + "license": "MIT" }, - "lowlight": { + "node_modules/lowlight": { "version": "1.20.0", - "resolved": "https://registry.npmjs.org/lowlight/-/lowlight-1.20.0.tgz", - "integrity": "sha512-8Ktj+prEb1RoCPkEOrPMYUN/nCggB7qAWe3a7OpMjWQkh3l2RD5wKRQ+o8Q8YuI9RG/xs95waaI/E6ym/7NsTw==", - "requires": { + "license": "MIT", + "dependencies": { "fault": "^1.0.0", "highlight.js": "~10.7.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" } }, - "lru-cache": { + "node_modules/lru-cache": { "version": "5.1.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", - "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", "dev": true, - "requires": { - "yallist": "^3.0.2" - }, + "license": "ISC", "dependencies": { - "yallist": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", - "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", - "dev": true - } + "yallist": "^3.0.2" } }, - "lru-queue": { + "node_modules/lru-queue": { "version": "0.1.0", - "resolved": "https://registry.npmjs.org/lru-queue/-/lru-queue-0.1.0.tgz", - "integrity": "sha1-Jzi9nw089PhEkMVzbEhpmsYyzaM=", - "requires": { + "license": "MIT", + "dependencies": { "es5-ext": "~0.10.2" } }, - "magic-string": { - "version": "0.25.7", - "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.25.7.tgz", - "integrity": "sha512-4CrMT5DOHTDk4HYDlzmwu4FVCcIYI8gauveasrdCu2IKIFOJ3f0v/8MDGJCDL9oD2ppz/Av1b0Nj345H9M+XIA==", + "node_modules/magic-string": { + "version": "0.26.2", "dev": true, - "requires": { - "sourcemap-codec": "^1.4.4" + "license": "MIT", + "dependencies": { + "sourcemap-codec": "^1.4.8" + }, + "engines": { + "node": ">=12" } }, - "make-dir": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", - "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", + "node_modules/make-dir": { + "version": "3.1.0", "dev": true, - "requires": { - "pify": "^4.0.1", - "semver": "^5.6.0" - }, + "license": "MIT", "dependencies": { - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "dev": true - } + "semver": "^6.0.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "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 - }, - "make-fetch-happen": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-5.0.2.tgz", - "integrity": "sha512-07JHC0r1ykIoruKO8ifMXu+xEU8qOXDFETylktdug6vJDACnP+HKevOu3PXyNPzFyTSlz8vrBYlBO1JZRe8Cag==", - "dev": true, - "requires": { - "agentkeepalive": "^3.4.1", - "cacache": "^12.0.0", - "http-cache-semantics": "^3.8.1", - "http-proxy-agent": "^2.1.0", - "https-proxy-agent": "^2.2.3", - "lru-cache": "^5.1.1", - "mississippi": "^3.0.0", - "node-fetch-npm": "^2.0.2", - "promise-retry": "^1.1.1", - "socks-proxy-agent": "^4.0.0", - "ssri": "^6.0.0" - }, - "dependencies": { - "cacache": { - "version": "12.0.4", - "resolved": "https://registry.npmjs.org/cacache/-/cacache-12.0.4.tgz", - "integrity": "sha512-a0tMB40oefvuInr4Cwb3GerbL9xTj1D5yg0T5xrjGCGyfvbxseIXX7BAO/u/hIXdafzOI5JC3wDwHyf24buOAQ==", - "dev": true, - "requires": { - "bluebird": "^3.5.5", - "chownr": "^1.1.1", - "figgy-pudding": "^3.5.1", - "glob": "^7.1.4", - "graceful-fs": "^4.1.15", - "infer-owner": "^1.0.3", - "lru-cache": "^5.1.1", - "mississippi": "^3.0.0", - "mkdirp": "^0.5.1", - "move-concurrently": "^1.0.1", - "promise-inflight": "^1.0.1", - "rimraf": "^2.6.3", - "ssri": "^6.0.1", - "unique-filename": "^1.1.1", - "y18n": "^4.0.0" - } - }, - "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" - } - }, - "ssri": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/ssri/-/ssri-6.0.2.tgz", - "integrity": "sha512-cepbSq/neFK7xB6A50KHN0xHDotYzq58wWCa5LeWqnPrHG8GzfEjO/4O8kpmcGW+oaxkvhEJCWgbgNk4/ZV93Q==", - "dev": true, - "requires": { - "figgy-pudding": "^3.5.1" - } - } + "node_modules/make-dir/node_modules/semver": { + "version": "6.3.1", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" } }, - "mamacro": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/mamacro/-/mamacro-0.0.3.tgz", - "integrity": "sha512-qMEwh+UujcQ+kbz3T6V+wAmO2U8veoq2w+3wY8MquqwVA3jChfwY+Tk52GZKDfACEPjuZ7r2oJLejwpt8jtwTA==", - "dev": true - }, - "map-age-cleaner": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/map-age-cleaner/-/map-age-cleaner-0.1.3.tgz", - "integrity": "sha512-bJzx6nMoP6PDLPBFmg7+xRKeFZvFboMrGlxmNj9ClvX53KrmvM5bXFXEWjbz4cz1AFn+jWJ9z/DJSz7hrs0w3w==", + "node_modules/make-fetch-happen": { + "version": "10.2.1", "dev": true, - "requires": { - "p-defer": "^1.0.0" + "license": "ISC", + "dependencies": { + "agentkeepalive": "^4.2.1", + "cacache": "^16.1.0", + "http-cache-semantics": "^4.1.0", + "http-proxy-agent": "^5.0.0", + "https-proxy-agent": "^5.0.0", + "is-lambda": "^1.0.1", + "lru-cache": "^7.7.1", + "minipass": "^3.1.6", + "minipass-collect": "^1.0.2", + "minipass-fetch": "^2.0.3", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "negotiator": "^0.6.3", + "promise-retry": "^2.0.1", + "socks-proxy-agent": "^7.0.0", + "ssri": "^9.0.0" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "map-cache": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz", - "integrity": "sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8=", - "dev": true - }, - "map-visit": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/map-visit/-/map-visit-1.0.0.tgz", - "integrity": "sha1-7Nyo8TFE5mDxtb1B8S80edmN+48=", + "node_modules/make-fetch-happen/node_modules/lru-cache": { + "version": "7.18.3", "dev": true, - "requires": { - "object-visit": "^1.0.0" + "license": "ISC", + "engines": { + "node": ">=12" } }, - "material-colors": { + "node_modules/material-colors": { "version": "1.2.6", - "resolved": "https://registry.npmjs.org/material-colors/-/material-colors-1.2.6.tgz", - "integrity": "sha512-6qE4B9deFBIa9YSpOc9O0Sgc43zTeVYbgDT5veRKSlB2+ZuHNoVVxA1L/ckMUayV9Ay9y7Z/SZCLcGteW9i7bg==" + "license": "ISC" }, - "material-components-web": { + "node_modules/material-components-web": { "version": "3.2.0", - "resolved": "https://registry.npmjs.org/material-components-web/-/material-components-web-3.2.0.tgz", - "integrity": "sha512-HYluyPpKhFjibixPczRMGkvic/qib78wHPmXVCQ/N5PPOSZ15on33WgM1+307bqDMnaqU5IEyjznnGjUP78zRw==", - "requires": { + "license": "MIT", + "dependencies": { "@material/animation": "^3.1.0", "@material/auto-init": "^3.1.0", "@material/base": "^3.1.0", @@ -10836,1024 +11044,1000 @@ "@material/typography": "^3.1.0" } }, - "md5.js": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.5.tgz", - "integrity": "sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==", + "node_modules/media-typer": { + "version": "0.3.0", "dev": true, - "requires": { - "hash-base": "^3.0.0", - "inherits": "^2.0.1", - "safe-buffer": "^5.1.2" + "license": "MIT", + "engines": { + "node": ">= 0.6" } }, - "mdn-data": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.4.tgz", - "integrity": "sha512-iV3XNKw06j5Q7mi6h+9vbx23Tv7JkjEVgKHW4pimwyDGWm0OIQntJJ+u1C6mg6mK1EaTv42XQ7w76yuzH7M2cA==", - "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=", - "dev": true - }, - "mem": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/mem/-/mem-4.3.0.tgz", - "integrity": "sha512-qX2bG48pTqYRVmDB37rn/6PT7LcR8T7oAX3bf99u1Tt1nzxYfxkgqDwUwolPlXweM0XzBOBFzSx4kfp7KP1s/w==", + "node_modules/memfs": { + "version": "3.5.3", "dev": true, - "requires": { - "map-age-cleaner": "^0.1.1", - "mimic-fn": "^2.0.0", - "p-is-promise": "^2.0.0" + "license": "Unlicense", + "dependencies": { + "fs-monkey": "^1.0.4" + }, + "engines": { + "node": ">= 4.0.0" } }, - "memoizee": { - "version": "0.4.15", - "resolved": "https://registry.npmjs.org/memoizee/-/memoizee-0.4.15.tgz", - "integrity": "sha512-UBWmJpLZd5STPm7PMUlOw/TSy972M+z8gcyQ5veOnSDRREz/0bmpyTfKt3/51DhEBqCZQn1udM/5flcSPYhkdQ==", - "requires": { - "d": "^1.0.1", - "es5-ext": "^0.10.53", + "node_modules/memoizee": { + "version": "0.4.17", + "license": "ISC", + "dependencies": { + "d": "^1.0.2", + "es5-ext": "^0.10.64", "es6-weak-map": "^2.0.3", "event-emitter": "^0.3.5", "is-promise": "^2.2.2", "lru-queue": "^0.1.0", "next-tick": "^1.1.0", "timers-ext": "^0.1.7" + }, + "engines": { + "node": ">=0.12" } }, - "memory-fs": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/memory-fs/-/memory-fs-0.5.0.tgz", - "integrity": "sha512-jA0rdU5KoQMC0e6ppoNRtpp6vjFq6+NY7r8hywnC7V+1Xj/MtHwGIbB1QaK/dunyjWteJzmkpd7ooeWg10T7GA==", + "node_modules/memorystream": { + "version": "0.3.1", "dev": true, - "requires": { - "errno": "^0.1.3", - "readable-stream": "^2.0.1" + "engines": { + "node": ">= 0.10.0" } }, - "memorystream": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/memorystream/-/memorystream-0.3.1.tgz", - "integrity": "sha1-htcJCzDORV1j+64S3aUaR93K+bI=", - "dev": true - }, - "merge-descriptors": { + "node_modules/merge-descriptors": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", - "integrity": "sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E=", - "dev": true - }, - "merge-source-map": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/merge-source-map/-/merge-source-map-1.1.0.tgz", - "integrity": "sha512-Qkcp7P2ygktpMPh2mCQZaf3jhN6D3Z/qVZHSdWvQ+2Ef5HgRAPBO57A77+ENm0CPx2+1Ce/MYKi3ymqdfuqibw==", "dev": true, - "requires": { - "source-map": "^0.6.1" - } + "license": "MIT" }, - "merge-stream": { + "node_modules/merge-stream": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", - "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", - "dev": true + "dev": true, + "license": "MIT" }, - "merge2": { + "node_modules/merge2": { "version": "1.4.1", - "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", - "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 8" + } }, - "methods": { + "node_modules/methods": { "version": "1.1.2", - "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", - "integrity": "sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4=", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.6" + } }, - "mgrs": { + "node_modules/mgrs": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/mgrs/-/mgrs-1.0.0.tgz", - "integrity": "sha1-+5FYjnjJACVnI5XLQLJffNatGCk=" + "license": "MIT" + }, + "node_modules/micromatch": { + "version": "4.0.8", + "dev": true, + "license": "MIT", + "dependencies": { + "braces": "^3.0.3", + "picomatch": "^2.3.1" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/mime": { + "version": "2.6.0", + "dev": true, + "license": "MIT", + "bin": { + "mime": "cli.js" + }, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/mime-db": { + "version": "1.52.0", + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mime-types": { + "version": "2.1.35", + "license": "MIT", + "dependencies": { + "mime-db": "1.52.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mimic-fn": { + "version": "2.1.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/mimic-response": { + "version": "3.1.0", + "license": "MIT", + "optional": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } }, - "micromatch": { - "version": "4.0.5", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", - "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", + "node_modules/mini-css-extract-plugin": { + "version": "2.6.1", "dev": true, - "requires": { - "braces": "^3.0.2", - "picomatch": "^2.3.1" + "license": "MIT", + "dependencies": { + "schema-utils": "^4.0.0" + }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^5.0.0" } }, - "miller-rabin": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/miller-rabin/-/miller-rabin-4.0.1.tgz", - "integrity": "sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA==", + "node_modules/mini-css-extract-plugin/node_modules/ajv": { + "version": "8.17.1", "dev": true, - "requires": { - "bn.js": "^4.0.0", - "brorand": "^1.0.1" - }, + "license": "MIT", "dependencies": { - "bn.js": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", - "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", - "dev": true - } + "fast-deep-equal": "^3.1.3", + "fast-uri": "^3.0.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" } }, - "mime": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", - "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", - "dev": true - }, - "mime-db": { - "version": "1.52.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", - "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==" - }, - "mime-types": { - "version": "2.1.35", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", - "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", - "requires": { - "mime-db": "1.52.0" + "node_modules/mini-css-extract-plugin/node_modules/ajv-keywords": { + "version": "5.1.0", + "dev": true, + "license": "MIT", + "dependencies": { + "fast-deep-equal": "^3.1.3" + }, + "peerDependencies": { + "ajv": "^8.8.2" } }, - "mimic-fn": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", - "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", - "dev": true - }, - "mimic-response": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz", - "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==", - "dev": true + "node_modules/mini-css-extract-plugin/node_modules/json-schema-traverse": { + "version": "1.0.0", + "dev": true, + "license": "MIT" }, - "mini-css-extract-plugin": { - "version": "0.9.0", - "resolved": "https://registry.npmjs.org/mini-css-extract-plugin/-/mini-css-extract-plugin-0.9.0.tgz", - "integrity": "sha512-lp3GeY7ygcgAmVIcRPBVhIkf8Us7FZjA+ILpal44qLdSu11wmjKQ3d9k15lfD7pO4esu9eUIAW7qiYIBppv40A==", + "node_modules/mini-css-extract-plugin/node_modules/schema-utils": { + "version": "4.2.0", "dev": true, - "requires": { - "loader-utils": "^1.1.0", - "normalize-url": "1.9.1", - "schema-utils": "^1.0.0", - "webpack-sources": "^1.1.0" - }, - "dependencies": { - "json5": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", - "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", - "dev": true, - "requires": { - "minimist": "^1.2.0" - } - }, - "loader-utils": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.0.tgz", - "integrity": "sha512-qH0WSMBtn/oHuwjy/NucEgbx5dbxxnxup9s4PVXJUDHZBQY+s0NWA9rJf53RBnQZxfch7euUui7hpoAPvALZdA==", - "dev": true, - "requires": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^1.0.1" - } - }, - "normalize-url": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-1.9.1.tgz", - "integrity": "sha1-LMDWazHqIwNkWENuNiDYWVTGbDw=", - "dev": true, - "requires": { - "object-assign": "^4.0.1", - "prepend-http": "^1.0.0", - "query-string": "^4.1.0", - "sort-keys": "^1.0.0" - } - }, - "schema-utils": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-1.0.0.tgz", - "integrity": "sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g==", - "dev": true, - "requires": { - "ajv": "^6.1.0", - "ajv-errors": "^1.0.0", - "ajv-keywords": "^3.1.0" - } - } + "license": "MIT", + "dependencies": { + "@types/json-schema": "^7.0.9", + "ajv": "^8.9.0", + "ajv-formats": "^2.1.1", + "ajv-keywords": "^5.1.0" + }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" } }, - "minim": { + "node_modules/minim": { "version": "0.23.8", - "resolved": "https://registry.npmjs.org/minim/-/minim-0.23.8.tgz", - "integrity": "sha512-bjdr2xW1dBCMsMGGsUeqM4eFI60m94+szhxWys+B1ztIt6gWSfeGBdSVCIawezeHYLYn0j6zrsXdQS/JllBzww==", - "requires": { + "license": "MIT", + "dependencies": { "lodash": "^4.15.0" + }, + "engines": { + "node": ">=6" } }, - "minimalistic-assert": { + "node_modules/minimalistic-assert": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", - "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==", - "dev": true - }, - "minimalistic-crypto-utils": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz", - "integrity": "sha1-9sAMHAsIIkblxNmd+4x8CDsrWCo=", - "dev": true + "dev": true, + "license": "ISC" }, - "minimatch": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", - "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", + "node_modules/minimatch": { + "version": "5.1.0", "dev": true, - "requires": { - "brace-expansion": "^1.1.7" + "license": "ISC", + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=10" } }, - "minimist": { - "version": "1.2.6", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.6.tgz", - "integrity": "sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==" + "node_modules/minimist": { + "version": "1.2.8", + "devOptional": true, + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, - "minipass": { - "version": "3.1.6", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.1.6.tgz", - "integrity": "sha512-rty5kpw9/z8SX9dmxblFA6edItUmwJgMeYDZRrwlIVN27i8gysGbznJwUggw2V/FVqFSDdWy040ZPS811DYAqQ==", + "node_modules/minipass": { + "version": "3.3.6", "dev": true, - "requires": { + "license": "ISC", + "dependencies": { "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" } }, - "minipass-collect": { + "node_modules/minipass-collect": { "version": "1.0.2", - "resolved": "https://registry.npmjs.org/minipass-collect/-/minipass-collect-1.0.2.tgz", - "integrity": "sha512-6T6lH0H8OG9kITm/Jm6tdooIbogG9e0tLgpY6mphXSm/A9u8Nq1ryBG+Qspiub9LjWlBPsPS3tWQ/Botq4FdxA==", "dev": true, - "requires": { + "license": "ISC", + "dependencies": { "minipass": "^3.0.0" + }, + "engines": { + "node": ">= 8" } }, - "minipass-flush": { + "node_modules/minipass-fetch": { + "version": "2.1.2", + "dev": true, + "license": "MIT", + "dependencies": { + "minipass": "^3.1.6", + "minipass-sized": "^1.0.3", + "minizlib": "^2.1.2" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + }, + "optionalDependencies": { + "encoding": "^0.1.13" + } + }, + "node_modules/minipass-flush": { "version": "1.0.5", - "resolved": "https://registry.npmjs.org/minipass-flush/-/minipass-flush-1.0.5.tgz", - "integrity": "sha512-JmQSYYpPUqX5Jyn1mXaRwOda1uQ8HP5KAT/oDSLCzt1BYRhQU0/hDtsB1ufZfEEzMZ9aAVmsBw8+FWsIXlClWw==", "dev": true, - "requires": { + "license": "ISC", + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/minipass-json-stream": { + "version": "1.0.2", + "dev": true, + "license": "MIT", + "dependencies": { + "jsonparse": "^1.3.1", "minipass": "^3.0.0" } }, - "minipass-pipeline": { + "node_modules/minipass-pipeline": { "version": "1.2.4", - "resolved": "https://registry.npmjs.org/minipass-pipeline/-/minipass-pipeline-1.2.4.tgz", - "integrity": "sha512-xuIq7cIOt09RPRJ19gdi4b+RiNvDFYe5JH+ggNvBqGqpQXcru3PcRmOZuHBKWK1Txf9+cQ+HMVN4d6z46LZP7A==", "dev": true, - "requires": { + "license": "ISC", + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/minipass-sized": { + "version": "1.0.3", + "dev": true, + "license": "ISC", + "dependencies": { "minipass": "^3.0.0" + }, + "engines": { + "node": ">=8" } }, - "minizlib": { + "node_modules/minipass/node_modules/yallist": { + "version": "4.0.0", + "dev": true, + "license": "ISC" + }, + "node_modules/minizlib": { "version": "2.1.2", - "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz", - "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "minipass": "^3.0.0", "yallist": "^4.0.0" + }, + "engines": { + "node": ">= 8" } }, - "mississippi": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/mississippi/-/mississippi-3.0.0.tgz", - "integrity": "sha512-x471SsVjUtBRtcvd4BzKE9kFC+/2TeWgKCgw0bZcw1b9l2X3QX5vCWgF+KaZaYm87Ss//rHnWryupDrgLvmSkA==", + "node_modules/minizlib/node_modules/yallist": { + "version": "4.0.0", "dev": true, - "requires": { - "concat-stream": "^1.5.0", - "duplexify": "^3.4.2", - "end-of-stream": "^1.1.0", - "flush-write-stream": "^1.0.0", - "from2": "^2.1.0", - "parallel-transform": "^1.1.0", - "pump": "^3.0.0", - "pumpify": "^1.3.3", - "stream-each": "^1.1.0", - "through2": "^2.0.0" - } - }, - "mixin-deep": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.2.tgz", - "integrity": "sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA==", - "dev": true, - "requires": { - "for-in": "^1.0.2", - "is-extendable": "^1.0.1" - }, - "dependencies": { - "is-extendable": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", - "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", - "dev": true, - "requires": { - "is-plain-object": "^2.0.4" - } - }, - "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" - } - } - } + "license": "ISC" }, - "mkdirp": { - "version": "0.5.6", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", - "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", + "node_modules/mkdirp": { + "version": "1.0.4", "dev": true, - "requires": { - "minimist": "^1.2.6" + "license": "MIT", + "bin": { + "mkdirp": "bin/cmd.js" + }, + "engines": { + "node": ">=10" } }, - "mkdirp-classic": { + "node_modules/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==", + "license": "MIT", "optional": true }, - "moment": { + "node_modules/moment": { "version": "2.22.2", - "resolved": "https://registry.npmjs.org/moment/-/moment-2.22.2.tgz", - "integrity": "sha1-PCV/mDn8DpP/UxSWMiOeuQeD/2Y=" + "license": "MIT", + "engines": { + "node": "*" + } }, - "move-concurrently": { + "node_modules/mrmime": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/move-concurrently/-/move-concurrently-1.0.1.tgz", - "integrity": "sha1-viwAX9oy4LKa8fBdfEszIUxwH5I=", - "dev": true, - "requires": { - "aproba": "^1.1.1", - "copy-concurrently": "^1.0.0", - "fs-write-stream-atomic": "^1.0.8", - "mkdirp": "^0.5.1", - "rimraf": "^2.5.4", - "run-queue": "^1.0.3" - }, - "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" - } - } + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" } }, - "ms": { + "node_modules/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 + "dev": true, + "license": "MIT" }, - "multicast-dns": { - "version": "6.2.3", - "resolved": "https://registry.npmjs.org/multicast-dns/-/multicast-dns-6.2.3.tgz", - "integrity": "sha512-ji6J5enbMyGRHIAkAOu3WdV8nggqviKCEKtXcOqfphZZtQrmHKycfynJ2V7eVPUA4NhJ6V7Wf4TmGbTwKE9B6g==", + "node_modules/multicast-dns": { + "version": "7.2.5", "dev": true, - "requires": { - "dns-packet": "^1.3.1", + "license": "MIT", + "dependencies": { + "dns-packet": "^5.2.2", "thunky": "^1.0.2" + }, + "bin": { + "multicast-dns": "cli.js" } }, - "multicast-dns-service-types": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/multicast-dns-service-types/-/multicast-dns-service-types-1.1.0.tgz", - "integrity": "sha1-iZ8R2WhuXgXLkbNdXw5jt3PPyQE=", - "dev": true - }, - "mute-stream": { + "node_modules/mute-stream": { "version": "0.0.8", - "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz", - "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==", - "dev": true - }, - "nan": { - "version": "2.15.0", - "resolved": "https://registry.npmjs.org/nan/-/nan-2.15.0.tgz", - "integrity": "sha512-8ZtvEnA2c5aYCZYd1cvgdnU6cqwixRoYg70xPLWUws5ORTa/lnw+u4amixRS/Ac5U5mQVgp9pnlSUnbNWFaWZQ==", + "dev": true, + "license": "ISC" + }, + "node_modules/nan": { + "version": "2.20.0", + "license": "MIT", "optional": true }, - "nanomatch": { - "version": "1.2.13", - "resolved": "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.13.tgz", - "integrity": "sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA==", - "dev": true, - "requires": { - "arr-diff": "^4.0.0", - "array-unique": "^0.3.2", - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "fragment-cache": "^0.2.1", - "is-windows": "^1.0.2", - "kind-of": "^6.0.2", - "object.pick": "^1.3.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.1" + "node_modules/nanoid": { + "version": "3.3.7", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "bin": { + "nanoid": "bin/nanoid.cjs" + }, + "engines": { + "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" } }, - "napi-build-utils": { + "node_modules/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==", + "license": "MIT", "optional": true }, - "negotiator": { + "node_modules/needle": { + "version": "3.3.1", + "dev": true, + "license": "MIT", + "optional": true, + "dependencies": { + "iconv-lite": "^0.6.3", + "sax": "^1.2.4" + }, + "bin": { + "needle": "bin/needle" + }, + "engines": { + "node": ">= 4.4.x" + } + }, + "node_modules/needle/node_modules/iconv-lite": { + "version": "0.6.3", + "dev": true, + "license": "MIT", + "optional": true, + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/negotiator": { "version": "0.6.3", - "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", - "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.6" + } }, - "neo-async": { + "node_modules/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 + "dev": true, + "license": "MIT" }, - "next-tick": { + "node_modules/neotraverse": { + "version": "0.6.18", + "license": "MIT", + "engines": { + "node": ">= 10" + } + }, + "node_modules/next-tick": { "version": "1.1.0", - "resolved": "https://registry.npmjs.org/next-tick/-/next-tick-1.1.0.tgz", - "integrity": "sha512-CXdUiJembsNjuToQvxayPZF9Vqht7hewsvy2sOWafLvi2awflj9mOC6bHIg50orX8IJvWKY9wYQ/zB2kogPslQ==" - }, - "ng-packagr": { - "version": "9.1.5", - "resolved": "https://registry.npmjs.org/ng-packagr/-/ng-packagr-9.1.5.tgz", - "integrity": "sha512-biuNfM15uLkCW+Vvj8bnuwjX37oX7j5icGm+l71FhM6ydlEl+Cl7PdFXpy9rrIlKFYlYRiPiiiWazGwVGn1icQ==", - "dev": true, - "requires": { - "@rollup/plugin-commonjs": "^11.0.2", - "@rollup/plugin-json": "^4.0.0", - "@rollup/plugin-node-resolve": "^7.1.0", - "ajv": "^6.10.2", - "autoprefixer": "^9.7.6", - "browserslist": "^4.12.0", - "chalk": "^4.0.0", - "chokidar": "^3.2.1", - "clean-css": "^4.1.11", - "commander": "^4.0.0", - "fs-extra": "^9.0.0", - "glob": "^7.1.2", - "injection-js": "^2.2.1", - "less": "^3.10.3", - "node-sass-tilde-importer": "^1.0.0", - "postcss": "^7.0.18", - "postcss-url": "^8.0.0", - "read-pkg-up": "^5.0.0", - "rimraf": "^3.0.0", - "rollup": "2.7.5", - "rollup-plugin-sourcemaps": "^0.6.0", - "rxjs": "^6.5.0", - "sass": "^1.23.0", - "stylus": "^0.54.7", - "terser": "^4.3.8", - "update-notifier": "^4.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" - } - }, - "autoprefixer": { - "version": "9.8.8", - "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-9.8.8.tgz", - "integrity": "sha512-eM9d/swFopRt5gdJ7jrpCwgvEMIayITpojhkkSMRsFHYuH5bkSQ4p/9qTEHtmNudUZh22Tehu7I6CxAW0IXTKA==", - "dev": true, - "requires": { - "browserslist": "^4.12.0", - "caniuse-lite": "^1.0.30001109", - "normalize-range": "^0.1.2", - "num2fraction": "^1.2.2", - "picocolors": "^0.2.1", - "postcss": "^7.0.32", - "postcss-value-parser": "^4.1.0" - }, - "dependencies": { - "postcss": { - "version": "7.0.39", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", - "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", - "dev": true, - "requires": { - "picocolors": "^0.2.1", - "source-map": "^0.6.1" - } - } - } - }, - "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" - } - }, - "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 - }, - "commander": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/commander/-/commander-4.1.1.tgz", - "integrity": "sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==", - "dev": true - }, - "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==", - "dev": true, - "requires": { - "at-least-node": "^1.0.0", - "graceful-fs": "^4.2.0", - "jsonfile": "^6.0.1", - "universalify": "^2.0.0" - } - }, - "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 - }, - "jsonfile": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz", - "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==", - "dev": true, - "requires": { - "graceful-fs": "^4.1.6", - "universalify": "^2.0.0" - } - }, - "picocolors": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", - "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", - "dev": true - }, - "rollup": { - "version": "2.7.5", - "resolved": "https://registry.npmjs.org/rollup/-/rollup-2.7.5.tgz", - "integrity": "sha512-xQSM8uzhgtF6tTnTVEvOQThrcG3LPUP3T/4l4EukzDp0kbTY1QRDuXjiwtYzs9odKj9Bj/PccRG6viFfS7DmCQ==", - "dev": true, - "requires": { - "fsevents": "~2.1.2" - } - }, - "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" - } - }, - "universalify": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.0.tgz", - "integrity": "sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==", - "dev": true - } + "license": "ISC" + }, + "node_modules/ng-packagr": { + "version": "14.2.2", + "dev": true, + "license": "MIT", + "dependencies": { + "@rollup/plugin-json": "^4.1.0", + "@rollup/plugin-node-resolve": "^13.1.3", + "ajv": "^8.10.0", + "ansi-colors": "^4.1.1", + "browserslist": "^4.20.0", + "cacache": "^16.0.0", + "chokidar": "^3.5.3", + "commander": "^9.0.0", + "dependency-graph": "^0.11.0", + "esbuild-wasm": "^0.15.0", + "find-cache-dir": "^3.3.2", + "glob": "^8.0.0", + "injection-js": "^2.4.0", + "jsonc-parser": "^3.0.0", + "less": "^4.1.2", + "ora": "^5.1.0", + "postcss": "^8.4.8", + "postcss-preset-env": "^7.4.2", + "postcss-url": "^10.1.3", + "rollup": "^2.70.0", + "rollup-plugin-sourcemaps": "^0.6.3", + "rxjs": "^7.5.5", + "sass": "^1.49.9", + "stylus": "^0.59.0" + }, + "bin": { + "ng-packagr": "cli/main.js" + }, + "engines": { + "node": "^14.15.0 || >=16.10.0" + }, + "optionalDependencies": { + "esbuild": "^0.15.0" + }, + "peerDependencies": { + "@angular/compiler-cli": "^14.0.0 || ^14.0.0-next || ^14.2.0-next", + "tslib": "^2.3.0", + "typescript": ">=4.6.2 <4.9" } }, - "ngx-build-plus": { - "version": "9.0.6", - "resolved": "https://registry.npmjs.org/ngx-build-plus/-/ngx-build-plus-9.0.6.tgz", - "integrity": "sha512-RFfDH2UG2PuNI2ZXS9vMZoK6Sfo78HPoyzXzh1EzdsZyhlGKHvuNloDak7pCS4f/97JHRTPS1MKnrbste9I21A==", + "node_modules/ng-packagr/node_modules/ajv": { + "version": "8.17.1", "dev": true, - "requires": { - "@schematics/angular": "8.0.0", - "cross-spawn": "^6.0.5", - "rxjs": "6.4.0", - "webpack-dev-server": "^3.1.14", - "webpack-merge": "^4.2.1" - }, - "dependencies": { - "@angular-devkit/core": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/@angular-devkit/core/-/core-8.0.0.tgz", - "integrity": "sha512-wYf4zzpYj5Y673DG8iteK0GsDDuXBKN/TOXm4lUwmXcz8QHTD+BfR6qA5TBDqlMGpU7CP1/0vgbv2px17CDETQ==", - "dev": true, - "requires": { - "ajv": "6.10.0", - "fast-json-stable-stringify": "2.0.0", - "magic-string": "0.25.2", - "rxjs": "6.4.0", - "source-map": "0.7.3" - } - }, - "@angular-devkit/schematics": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/@angular-devkit/schematics/-/schematics-8.0.0.tgz", - "integrity": "sha512-IXJOs/DkDqNbfG76sNNY5ePZ37rjkMUopmtvhN6/U1hQFwTpGa9N0bCHFphcKraXeS6Jfox5XwFEStc/1xyhfw==", - "dev": true, - "requires": { - "@angular-devkit/core": "8.0.0", - "rxjs": "6.4.0" - } - }, - "@schematics/angular": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/@schematics/angular/-/angular-8.0.0.tgz", - "integrity": "sha512-c/cFpe+u7Xh4xX3/kn9BSRY4YhdO0OsDbRK0pGLDJFFs5JGvwoURtNXn4/4dVlsj3PWyNhxK0Ljl3dyw3NQBHA==", - "dev": true, - "requires": { - "@angular-devkit/core": "8.0.0", - "@angular-devkit/schematics": "8.0.0" - } - }, - "ajv": { - "version": "6.10.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.10.0.tgz", - "integrity": "sha512-nffhOpkymDECQyR0mnsUtoCE8RlX38G0rYP+wgLWFyZuUyuuojSSvi/+euOiQBIn63whYwYVIIH1TvE3tu4OEg==", - "dev": true, - "requires": { - "fast-deep-equal": "^2.0.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - } - }, - "fast-deep-equal": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz", - "integrity": "sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk=", - "dev": true - }, - "fast-json-stable-stringify": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz", - "integrity": "sha1-1RQsDK7msRifh9OnYREGT4bIu/I=", - "dev": true - }, - "magic-string": { - "version": "0.25.2", - "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.25.2.tgz", - "integrity": "sha512-iLs9mPjh9IuTtRsqqhNGYcZXGei0Nh/A4xirrsqW7c+QhKVFL2vm7U09ru6cHRD22azaP/wMDgI+HCqbETMTtg==", - "dev": true, - "requires": { - "sourcemap-codec": "^1.4.4" - } - }, - "rxjs": { - "version": "6.4.0", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.4.0.tgz", - "integrity": "sha512-Z9Yfa11F6B9Sg/BK9MnqnQ+aQYicPLtilXBp2yUtDt2JRCE0h26d33EnfO3ZxoNxG0T92OUucP3Ct7cpfkdFfw==", - "dev": true, - "requires": { - "tslib": "^1.9.0" - } - }, - "source-map": { - "version": "0.7.3", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz", - "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==", - "dev": true + "license": "MIT", + "dependencies": { + "fast-deep-equal": "^3.1.3", + "fast-uri": "^3.0.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/ng-packagr/node_modules/brace-expansion": { + "version": "1.1.11", + "dev": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/ng-packagr/node_modules/commander": { + "version": "9.5.0", + "dev": true, + "license": "MIT", + "engines": { + "node": "^12.20.0 || >=14" + } + }, + "node_modules/ng-packagr/node_modules/json-schema-traverse": { + "version": "1.0.0", + "dev": true, + "license": "MIT" + }, + "node_modules/ng-packagr/node_modules/minimatch": { + "version": "3.1.2", + "dev": true, + "license": "ISC", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/ng-packagr/node_modules/sax": { + "version": "1.2.4", + "dev": true, + "license": "ISC" + }, + "node_modules/ng-packagr/node_modules/stylus": { + "version": "0.59.0", + "dev": true, + "license": "MIT", + "dependencies": { + "@adobe/css-tools": "^4.0.1", + "debug": "^4.3.2", + "glob": "^7.1.6", + "sax": "~1.2.4", + "source-map": "^0.7.3" + }, + "bin": { + "stylus": "bin/stylus" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://opencollective.com/stylus" + } + }, + "node_modules/ng-packagr/node_modules/stylus/node_modules/glob": { + "version": "7.2.3", + "dev": true, + "license": "ISC", + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/ngx-build-plus": { + "version": "14.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "@angular-devkit/build-angular": ">=14.0.0", + "@schematics/angular": ">=14.0.0", + "webpack-merge": "^5.0.0" + }, + "peerDependencies": { + "@angular-devkit/build-angular": ">=12.0.0", + "rxjs": ">= 6.0.0" + } + }, + "node_modules/ngx-color": { + "version": "8.0.3", + "license": "MIT", + "dependencies": { + "@ctrl/tinycolor": "^3.4.1", + "material-colors": "^1.2.6", + "tslib": "^2.3.0" + }, + "peerDependencies": { + "@angular/common": ">=14.0.0-0", + "@angular/core": ">=14.0.0-0" + } + }, + "node_modules/ngx-mat-select-search": { + "version": "5.0.0", + "license": "MIT", + "dependencies": { + "tslib": "^2.4.0" + }, + "peerDependencies": { + "@angular/material": "^12.0.0 || ^13.0.0 || ^14.0.0" + } + }, + "node_modules/nice-napi": { + "version": "1.0.2", + "dev": true, + "hasInstallScript": true, + "license": "MIT", + "optional": true, + "os": [ + "!win32" + ], + "dependencies": { + "node-addon-api": "^3.0.0", + "node-gyp-build": "^4.2.2" + } + }, + "node_modules/nice-try": { + "version": "1.0.5", + "dev": true, + "license": "MIT" + }, + "node_modules/no-case": { + "version": "2.3.2", + "dev": true, + "license": "MIT", + "dependencies": { + "lower-case": "^1.1.1" + } + }, + "node_modules/node-abi": { + "version": "3.67.0", + "license": "MIT", + "optional": true, + "dependencies": { + "semver": "^7.3.5" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/node-abort-controller": { + "version": "3.1.1", + "license": "MIT" + }, + "node_modules/node-addon-api": { + "version": "3.2.1", + "dev": true, + "license": "MIT", + "optional": true + }, + "node_modules/node-domexception": { + "version": "1.0.0", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/jimmywarting" + }, + { + "type": "github", + "url": "https://paypal.me/jimmywarting" } + ], + "license": "MIT", + "engines": { + "node": ">=10.5.0" } }, - "ngx-color": { - "version": "5.1.4", - "resolved": "https://registry.npmjs.org/ngx-color/-/ngx-color-5.1.4.tgz", - "integrity": "sha512-giiRKDMaWxwzJzoLDMen9pxvEr2ULEHY78dDV78rzXwshZ9Mcyoj50EHQXzHdBnSO/FRfXLBuK15Jz8yam2Dww==", - "requires": { - "@ctrl/tinycolor": "^3.1.2", - "material-colors": "^1.2.6", - "tslib": "^1.10.0" + "node_modules/node-fetch": { + "version": "1.7.3", + "license": "MIT", + "dependencies": { + "encoding": "^0.1.11", + "is-stream": "^1.0.1" } }, - "ngx-mat-select-search": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/ngx-mat-select-search/-/ngx-mat-select-search-2.2.0.tgz", - "integrity": "sha512-hhkH5cNjX0fWd1A39oa0d5D9VyQ6Vu2MPgVz3DkqS4sg1vK2TQ9upD2ngp+5te2R58vO8MUEairRcsL3q0Tbpg==", - "requires": { - "tslib": "^1.9.0" + "node_modules/node-fetch-commonjs": { + "version": "3.3.2", + "license": "MIT", + "dependencies": { + "node-domexception": "^1.0.0", + "web-streams-polyfill": "^3.0.3" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/node-fetch" } }, - "ngx-virtual-scroller": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/ngx-virtual-scroller/-/ngx-virtual-scroller-3.0.3.tgz", - "integrity": "sha512-00au5zpcPMzbci9VmM9QlOT6ZQ+NqgpWaXsM2Y7dg6SSlCDcFMW8nMxoMsogP2b2mrBLpIIEB91nVtwLnwWs4A==", - "requires": { - "@tweenjs/tween.js": "17.4.0", - "@types/tween.js": "17.2.0", - "tslib": "^1.9.0" + "node_modules/node-forge": { + "version": "1.3.1", + "dev": true, + "license": "(BSD-3-Clause OR GPL-2.0)", + "engines": { + "node": ">= 6.13.0" } }, - "nice-try": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz", - "integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==", - "dev": true - }, - "no-case": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/no-case/-/no-case-2.3.2.tgz", - "integrity": "sha512-rmTZ9kz+f3rCvK2TD1Ue/oZlns7OGoIWP4fc3llxxRXlOkHKoWPPWJOfFYpITabSow43QJbRIoHQXtt10VldyQ==", + "node_modules/node-gyp": { + "version": "9.4.1", "dev": true, - "requires": { - "lower-case": "^1.1.1" + "license": "MIT", + "dependencies": { + "env-paths": "^2.2.0", + "exponential-backoff": "^3.1.1", + "glob": "^7.1.4", + "graceful-fs": "^4.2.6", + "make-fetch-happen": "^10.0.3", + "nopt": "^6.0.0", + "npmlog": "^6.0.0", + "rimraf": "^3.0.2", + "semver": "^7.3.5", + "tar": "^6.1.2", + "which": "^2.0.2" + }, + "bin": { + "node-gyp": "bin/node-gyp.js" + }, + "engines": { + "node": "^12.13 || ^14.13 || >=16" } }, - "node-abi": { - "version": "2.30.1", - "resolved": "https://registry.npmjs.org/node-abi/-/node-abi-2.30.1.tgz", - "integrity": "sha512-/2D0wOQPgaUWzVSVgRMx+trKJRC2UG4SUc4oCJoXx9Uxjtp0Vy3/kt7zcbxHF8+Z/pK3UloLWzBISg72brfy1w==", + "node_modules/node-gyp-build": { + "version": "4.8.2", + "dev": true, + "license": "MIT", "optional": true, - "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==", - "optional": true - } + "bin": { + "node-gyp-build": "bin.js", + "node-gyp-build-optional": "optional.js", + "node-gyp-build-test": "build-test.js" } }, - "node-domexception": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/node-domexception/-/node-domexception-1.0.0.tgz", - "integrity": "sha512-/jKZoMpw0F8GRwl4/eLROPA3cfcXtLApP0QzLmUT/HuPCZWyB7IY9ZrMeKw2O/nFIqPQB3PVM9aYm0F312AXDQ==" - }, - "node-fetch": { - "version": "1.7.3", - "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-1.7.3.tgz", - "integrity": "sha512-NhZ4CsKx7cYm2vSrBAr2PvFOe6sWDf0UYLRqA6svUYg7+/TSfVAu49jYC4BvQ4Sms9SZgdqGBgroqfDhJdTyKQ==", - "requires": { - "encoding": "^0.1.11", - "is-stream": "^1.0.1" + "node_modules/node-gyp/node_modules/brace-expansion": { + "version": "1.1.11", + "dev": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" } }, - "node-fetch-npm": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/node-fetch-npm/-/node-fetch-npm-2.0.4.tgz", - "integrity": "sha512-iOuIQDWDyjhv9qSDrj9aq/klt6F9z1p2otB3AV7v3zBDcL/x+OfGsvGQZZCcMZbUf4Ujw1xGNQkjvGnVT22cKg==", + "node_modules/node-gyp/node_modules/glob": { + "version": "7.2.3", "dev": true, - "requires": { - "encoding": "^0.1.11", - "json-parse-better-errors": "^1.0.0", - "safe-buffer": "^5.1.1" + "license": "ISC", + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "node-forge": { - "version": "0.10.0", - "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-0.10.0.tgz", - "integrity": "sha512-PPmu8eEeG9saEUvI97fm4OYxXVB6bFvyNTyiUOBichBpFG8A1Ljw3bY62+5oOjDEMHRnd0Y7HQ+x7uzxOzC6JA==", - "dev": true + "node_modules/node-gyp/node_modules/minimatch": { + "version": "3.1.2", + "dev": true, + "license": "ISC", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } }, - "node-libs-browser": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/node-libs-browser/-/node-libs-browser-2.2.1.tgz", - "integrity": "sha512-h/zcD8H9kaDZ9ALUWwlBUDo6TKF8a7qBSCSEGfjTVIYeqsioSKaAX+BN7NgiMGp6iSIXZ3PxgCu8KS3b71YK5Q==", - "dev": true, - "requires": { - "assert": "^1.1.1", - "browserify-zlib": "^0.2.0", - "buffer": "^4.3.0", - "console-browserify": "^1.1.0", - "constants-browserify": "^1.0.0", - "crypto-browserify": "^3.11.0", - "domain-browser": "^1.1.1", - "events": "^3.0.0", - "https-browserify": "^1.0.0", - "os-browserify": "^0.3.0", - "path-browserify": "0.0.1", - "process": "^0.11.10", - "punycode": "^1.2.4", - "querystring-es3": "^0.2.0", - "readable-stream": "^2.3.3", - "stream-browserify": "^2.0.1", - "stream-http": "^2.7.2", - "string_decoder": "^1.0.0", - "timers-browserify": "^2.0.4", - "tty-browserify": "0.0.0", - "url": "^0.11.0", - "util": "^0.11.0", - "vm-browserify": "^1.0.1" - }, - "dependencies": { - "punycode": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", - "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=", - "dev": true - } + "node_modules/node-gyp/node_modules/which": { + "version": "2.0.2", + "dev": true, + "license": "ISC", + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" } }, - "node-releases": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.3.tgz", - "integrity": "sha512-maHFz6OLqYxz+VQyCAtA3PTX4UP/53pa05fyDNc9CwjvJ0yEh6+xBwKsgCxMNhS8taUKBFYxfuiaD9U/55iFaw==", - "dev": true + "node_modules/node-releases": { + "version": "2.0.18", + "dev": true, + "license": "MIT" }, - "node-sass-tilde-importer": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/node-sass-tilde-importer/-/node-sass-tilde-importer-1.0.2.tgz", - "integrity": "sha512-Swcmr38Y7uB78itQeBm3mThjxBy9/Ah/ykPIaURY/L6Nec9AyRoL/jJ7ECfMR+oZeCTVQNxVMu/aHU+TLRVbdg==", + "node_modules/noms": { + "version": "0.0.0", "dev": true, - "requires": { - "find-parent-dir": "^0.3.0" + "license": "ISC", + "dependencies": { + "inherits": "^2.0.1", + "readable-stream": "~1.0.31" } }, - "normalize-package-data": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", - "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", + "node_modules/nopt": { + "version": "6.0.0", "dev": true, - "requires": { - "hosted-git-info": "^2.1.4", - "resolve": "^1.10.0", - "semver": "2 || 3 || 4 || 5", - "validate-npm-package-license": "^3.0.1" + "license": "ISC", + "dependencies": { + "abbrev": "^1.0.0" }, + "bin": { + "nopt": "bin/nopt.js" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/normalize-package-data": { + "version": "4.0.1", + "dev": true, + "license": "BSD-2-Clause", "dependencies": { - "hosted-git-info": { - "version": "2.8.9", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz", - "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==", - "dev": true - }, - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "dev": true - } + "hosted-git-info": "^5.0.0", + "is-core-module": "^2.8.1", + "semver": "^7.3.5", + "validate-npm-package-license": "^3.0.4" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "normalize-path": { + "node_modules/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 + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } }, - "normalize-range": { + "node_modules/normalize-range": { "version": "0.1.2", - "resolved": "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz", - "integrity": "sha1-LRDAa9/TEuqXd2laTShDlFa3WUI=", - "dev": true - }, - "normalize-url": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-3.3.0.tgz", - "integrity": "sha512-U+JJi7duF1o+u2pynbp2zXDW2/PADgC30f0GsHZtRh+HOcXHnw137TrNlyxxRvWW5fjKd3bcLHPxofWuCjaeZg==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } }, - "npm-bundled": { + "node_modules/npm-bundled": { "version": "1.1.2", - "resolved": "https://registry.npmjs.org/npm-bundled/-/npm-bundled-1.1.2.tgz", - "integrity": "sha512-x5DHup0SuyQcmL3s7Rx/YQ8sbw/Hzg0rj48eN0dV7hf5cmQq5PXIeioroH3raV1QC1yh3uTYuMThvEQF3iKgGQ==", "dev": true, - "requires": { + "license": "ISC", + "dependencies": { "npm-normalize-package-bin": "^1.0.1" } }, - "npm-install-checks": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/npm-install-checks/-/npm-install-checks-4.0.0.tgz", - "integrity": "sha512-09OmyDkNLYwqKPOnbI8exiOZU2GVVmQp7tgez2BPi5OZC8M82elDAps7sxC4l//uSUtotWqoEIDwjRvWH4qz8w==", + "node_modules/npm-install-checks": { + "version": "5.0.0", "dev": true, - "requires": { + "license": "BSD-2-Clause", + "dependencies": { "semver": "^7.1.1" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "npm-normalize-package-bin": { + "node_modules/npm-normalize-package-bin": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/npm-normalize-package-bin/-/npm-normalize-package-bin-1.0.1.tgz", - "integrity": "sha512-EPfafl6JL5/rU+ot6P3gRSCpPDW5VmIzX959Ob1+ySFUuuYHWHekXpwdUZcKP5C+DS4GEtdJluwBjnsNDl+fSA==", - "dev": true + "dev": true, + "license": "ISC" }, - "npm-package-arg": { - "version": "8.0.1", - "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-8.0.1.tgz", - "integrity": "sha512-/h5Fm6a/exByzFSTm7jAyHbgOqErl9qSNJDQF32Si/ZzgwT2TERVxRxn3Jurw1wflgyVVAxnFR4fRHPM7y1ClQ==", + "node_modules/npm-package-arg": { + "version": "9.1.0", "dev": true, - "requires": { - "hosted-git-info": "^3.0.2", - "semver": "^7.0.0", - "validate-npm-package-name": "^3.0.0" + "license": "ISC", + "dependencies": { + "hosted-git-info": "^5.0.0", + "proc-log": "^2.0.1", + "semver": "^7.3.5", + "validate-npm-package-name": "^4.0.0" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "npm-packlist": { - "version": "1.4.8", - "resolved": "https://registry.npmjs.org/npm-packlist/-/npm-packlist-1.4.8.tgz", - "integrity": "sha512-5+AZgwru5IevF5ZdnFglB5wNlHG1AOOuw28WhUq8/8emhBmLv6jX5by4WJCh7lW0uSYZYS6DXqIsyZVIXRZU9A==", + "node_modules/npm-packlist": { + "version": "5.1.3", "dev": true, - "requires": { - "ignore-walk": "^3.0.1", - "npm-bundled": "^1.0.1", - "npm-normalize-package-bin": "^1.0.1" + "license": "ISC", + "dependencies": { + "glob": "^8.0.1", + "ignore-walk": "^5.0.1", + "npm-bundled": "^2.0.0", + "npm-normalize-package-bin": "^2.0.0" + }, + "bin": { + "npm-packlist": "bin/index.js" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "npm-pick-manifest": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/npm-pick-manifest/-/npm-pick-manifest-6.0.0.tgz", - "integrity": "sha512-PdJpXMvjqt4nftNEDpCgjBUF8yI3Q3MyuAmVB9nemnnCg32F4BPL/JFBfdj8DubgHCYUFQhtLWmBPvdsFtjWMg==", + "node_modules/npm-packlist/node_modules/npm-bundled": { + "version": "2.0.1", "dev": true, - "requires": { - "npm-install-checks": "^4.0.0", - "npm-package-arg": "^8.0.0", - "semver": "^7.0.0" + "license": "ISC", + "dependencies": { + "npm-normalize-package-bin": "^2.0.0" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "npm-registry-fetch": { - "version": "4.0.7", - "resolved": "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-4.0.7.tgz", - "integrity": "sha512-cny9v0+Mq6Tjz+e0erFAB+RYJ/AVGzkjnISiobqP8OWj9c9FLoZZu8/SPSKJWE17F1tk4018wfjV+ZbIbqC7fQ==", + "node_modules/npm-packlist/node_modules/npm-normalize-package-bin": { + "version": "2.0.0", "dev": true, - "requires": { - "JSONStream": "^1.3.4", - "bluebird": "^3.5.1", - "figgy-pudding": "^3.4.1", - "lru-cache": "^5.1.1", - "make-fetch-happen": "^5.0.0", - "npm-package-arg": "^6.1.0", - "safe-buffer": "^5.2.0" + "license": "ISC", + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/npm-pick-manifest": { + "version": "7.0.1", + "dev": true, + "license": "ISC", + "dependencies": { + "npm-install-checks": "^5.0.0", + "npm-normalize-package-bin": "^1.0.1", + "npm-package-arg": "^9.0.0", + "semver": "^7.3.5" }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/npm-registry-fetch": { + "version": "13.3.1", + "dev": true, + "license": "ISC", "dependencies": { - "hosted-git-info": { - "version": "2.8.9", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz", - "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==", - "dev": true - }, - "npm-package-arg": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-6.1.1.tgz", - "integrity": "sha512-qBpssaL3IOZWi5vEKUKW0cO7kzLeT+EQO9W8RsLOZf76KF9E/K9+wH0C7t06HXPpaH8WH5xF1MExLuCwbTqRUg==", - "dev": true, - "requires": { - "hosted-git-info": "^2.7.1", - "osenv": "^0.1.5", - "semver": "^5.6.0", - "validate-npm-package-name": "^3.0.0" - } - }, - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "dev": true - } + "make-fetch-happen": "^10.0.6", + "minipass": "^3.1.6", + "minipass-fetch": "^2.0.3", + "minipass-json-stream": "^1.0.1", + "minizlib": "^2.1.2", + "npm-package-arg": "^9.0.1", + "proc-log": "^2.0.0" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "npm-run-all": { + "node_modules/npm-run-all": { "version": "4.1.5", - "resolved": "https://registry.npmjs.org/npm-run-all/-/npm-run-all-4.1.5.tgz", - "integrity": "sha512-Oo82gJDAVcaMdi3nuoKFavkIHBRVqQ1qvMb+9LHk/cF4P6B2m8aP04hGf7oL6wZ9BuGwX1onlLhpuoofSyoQDQ==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "ansi-styles": "^3.2.1", "chalk": "^2.4.1", "cross-spawn": "^6.0.5", @@ -11864,3287 +12048,2647 @@ "shell-quote": "^1.6.1", "string.prototype.padend": "^3.0.0" }, - "dependencies": { - "path-type": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz", - "integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==", - "dev": true, - "requires": { - "pify": "^3.0.0" - } - }, - "pify": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", - "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", - "dev": true - }, - "read-pkg": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-3.0.0.tgz", - "integrity": "sha1-nLxoaXj+5l0WwA4rGcI3/Pbjg4k=", - "dev": true, - "requires": { - "load-json-file": "^4.0.0", - "normalize-package-data": "^2.3.2", - "path-type": "^3.0.0" - } - } + "bin": { + "npm-run-all": "bin/npm-run-all/index.js", + "run-p": "bin/run-p/index.js", + "run-s": "bin/run-s/index.js" + }, + "engines": { + "node": ">= 4" } }, - "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=", + "node_modules/npm-run-all/node_modules/brace-expansion": { + "version": "1.1.11", "dev": true, - "requires": { - "path-key": "^2.0.0" + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" } }, - "npmlog": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz", - "integrity": "sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==", - "optional": true, - "requires": { - "are-we-there-yet": "~1.1.2", - "console-control-strings": "~1.1.0", - "gauge": "~2.7.3", - "set-blocking": "~2.0.0" + "node_modules/npm-run-all/node_modules/minimatch": { + "version": "3.1.2", + "dev": true, + "license": "ISC", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" } }, - "nth-check": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-1.0.2.tgz", - "integrity": "sha512-WeBOdju8SnzPN5vTUJYxYUxLeXpCaVP5i5e0LF8fg7WORF2Wd7wFX/pk0tYZk7s8T+J7VLy0Da6J1+wCT0AtHg==", + "node_modules/npm-run-path": { + "version": "4.0.1", "dev": true, - "requires": { - "boolbase": "~1.0.0" + "license": "MIT", + "dependencies": { + "path-key": "^3.0.0" + }, + "engines": { + "node": ">=8" } }, - "null-check": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/null-check/-/null-check-1.0.0.tgz", - "integrity": "sha1-l33/1xdgErnsMNKjnbXPcqBDnt0=", - "dev": true - }, - "num2fraction": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/num2fraction/-/num2fraction-1.2.2.tgz", - "integrity": "sha1-b2gragJ6Tp3fpFZM0lidHU5mnt4=", - "dev": true - }, - "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==", - "dev": true - }, - "object-assign": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" - }, - "object-component": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/object-component/-/object-component-0.0.3.tgz", - "integrity": "sha1-8MaapQ78lbhmwYb0AKM3acsvEpE=", - "dev": true - }, - "object-copy": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/object-copy/-/object-copy-0.1.0.tgz", - "integrity": "sha1-fn2Fi3gb18mRpBupde04EnVOmYw=", - "dev": true, - "requires": { - "copy-descriptor": "^0.1.0", - "define-property": "^0.2.5", - "kind-of": "^3.0.3" - }, - "dependencies": { - "define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "dev": true, - "requires": { - "is-descriptor": "^0.1.0" - } - }, - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } + "node_modules/npm-run-path/node_modules/path-key": { + "version": "3.1.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" } }, - "object-inspect": { - "version": "1.12.0", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.0.tgz", - "integrity": "sha512-Ho2z80bVIvJloH+YzRmpZVQe87+qASmBUKZDWgx9cu+KDrX2ZDH/3tMy+gXbZETVGs2M8YdxObOh7XAtim9Y0g==" - }, - "object-is": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/object-is/-/object-is-1.1.5.tgz", - "integrity": "sha512-3cyDsyHgtmi7I7DfSSI2LDp6SK2lwvtbg0p0R1e0RvTqF5ceGx+K2dfSjm1bKDMVCFEDAQvy+o8c6a7VujOddw==", + "node_modules/npmlog": { + "version": "6.0.2", "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3" + "license": "ISC", + "dependencies": { + "are-we-there-yet": "^3.0.0", + "console-control-strings": "^1.1.0", + "gauge": "^4.0.3", + "set-blocking": "^2.0.0" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "object-keys": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", - "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", - "dev": true - }, - "object-visit": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/object-visit/-/object-visit-1.0.1.tgz", - "integrity": "sha1-95xEk68MU3e1n+OdOV5BBC3QRbs=", + "node_modules/nth-check": { + "version": "2.1.1", "dev": true, - "requires": { - "isobject": "^3.0.0" + "license": "BSD-2-Clause", + "dependencies": { + "boolbase": "^1.0.0" + }, + "funding": { + "url": "https://github.com/fb55/nth-check?sponsor=1" } }, - "object.assign": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.2.tgz", - "integrity": "sha512-ixT2L5THXsApyiUPYKmW+2EHpXXe5Ii3M+f4e+aJFAHao5amFRW6J0OO6c/LU8Be47utCx2GL89hxGB6XSmKuQ==", - "dev": true, - "requires": { - "call-bind": "^1.0.0", - "define-properties": "^1.1.3", - "has-symbols": "^1.0.1", - "object-keys": "^1.1.1" + "node_modules/object-assign": { + "version": "4.1.1", + "license": "MIT", + "engines": { + "node": ">=0.10.0" } }, - "object.getownpropertydescriptors": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.1.3.tgz", - "integrity": "sha512-VdDoCwvJI4QdC6ndjpqFmoL3/+HxffFBbcJzKi5hwLLqqx3mdbedRpfZDdK0SrOSauj8X4GzBvnDZl4vTN7dOw==", + "node_modules/object-inspect": { + "version": "1.13.2", "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3", - "es-abstract": "^1.19.1" + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "object.pick": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz", - "integrity": "sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c=", + "node_modules/object-keys": { + "version": "1.1.1", "dev": true, - "requires": { - "isobject": "^3.0.1" + "license": "MIT", + "engines": { + "node": ">= 0.4" } }, - "object.values": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.1.5.tgz", - "integrity": "sha512-QUZRW0ilQ3PnPpbNtgdNV1PDbEqLIiSFB3l+EnGtBQ/8SUTLj1PZwtQHABZtLgwpJZTSZhuGLOGk57Drx2IvYg==", + "node_modules/object.assign": { + "version": "4.1.5", "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3", - "es-abstract": "^1.19.1" + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.5", + "define-properties": "^1.2.1", + "has-symbols": "^1.0.3", + "object-keys": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "obuf": { + "node_modules/obuf": { "version": "1.1.2", - "resolved": "https://registry.npmjs.org/obuf/-/obuf-1.1.2.tgz", - "integrity": "sha512-PX1wu0AmAdPqOL1mWhqmlOd8kOIZQwGZw6rh7uby9fTc5lhaOWFLX3I6R1hrF9k3zUY40e6igsLGkDXK92LJNg==", - "dev": true + "dev": true, + "license": "MIT" }, - "on-finished": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", - "integrity": "sha1-IPEzZIGwg811M3mSoWlxqi2QaUc=", + "node_modules/on-finished": { + "version": "2.4.1", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "ee-first": "1.1.1" + }, + "engines": { + "node": ">= 0.8" } }, - "on-headers": { + "node_modules/on-headers": { "version": "1.0.2", - "resolved": "https://registry.npmjs.org/on-headers/-/on-headers-1.0.2.tgz", - "integrity": "sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.8" + } }, - "once": { + "node_modules/once": { "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", - "requires": { + "devOptional": true, + "license": "ISC", + "dependencies": { "wrappy": "1" } }, - "onetime": { + "node_modules/onetime": { "version": "5.1.2", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", - "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "mimic-fn": "^2.1.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "open": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/open/-/open-7.0.3.tgz", - "integrity": "sha512-sP2ru2v0P290WFfv49Ap8MF6PkzGNnGlAwHweB4WR4mr5d2d0woiCluUeJ218w7/+PmoBy9JmYgD5A4mLcWOFA==", + "node_modules/open": { + "version": "8.4.0", "dev": true, - "requires": { - "is-docker": "^2.0.0", - "is-wsl": "^2.1.1" + "license": "MIT", + "dependencies": { + "define-lazy-prop": "^2.0.0", + "is-docker": "^2.1.1", + "is-wsl": "^2.2.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "opener": { - "version": "1.5.2", - "resolved": "https://registry.npmjs.org/opener/-/opener-1.5.2.tgz", - "integrity": "sha512-ur5UIdyw5Y7yEj9wLzhqXiy6GZ3Mwx0yGI+5sMn2r0N0v3cKJvUmFH5yPP+WXh9e0xfyzyJX95D8l088DNFj7A==", - "dev": true - }, - "opn": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/opn/-/opn-5.5.0.tgz", - "integrity": "sha512-PqHpggC9bLV0VeWcdKhkpxY+3JTzetLSqTCWL/z/tFIbI6G8JCjondXklT1JinczLz2Xib62sSp0T/gKT4KksA==", - "dev": true, - "requires": { - "is-wsl": "^1.1.0" + "node_modules/openapi-path-templating": { + "version": "1.6.0", + "license": "Apache-2.0", + "dependencies": { + "apg-lite": "^1.0.3" }, + "engines": { + "node": ">=12.20.0" + } + }, + "node_modules/openapi-server-url-templating": { + "version": "1.1.0", + "license": "Apache-2.0", "dependencies": { - "is-wsl": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-1.1.0.tgz", - "integrity": "sha1-HxbkqiKwTRM2tmGIpmrzxgDDpm0=", - "dev": true - } + "apg-lite": "^1.0.3" + }, + "engines": { + "node": ">=12.20.0" } }, - "optimist": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/optimist/-/optimist-0.6.1.tgz", - "integrity": "sha1-2j6nRob6IaGaERwybpDrFaAZZoY=", + "node_modules/opener": { + "version": "1.5.2", "dev": true, - "requires": { - "minimist": "~0.0.1", - "wordwrap": "~0.0.2" - }, - "dependencies": { - "minimist": { - "version": "0.0.10", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.10.tgz", - "integrity": "sha1-3j+YVD2/lggr5IrRoMfNqDYwHc8=", - "dev": true - } + "license": "(WTFPL OR MIT)", + "bin": { + "opener": "bin/opener-bin.js" } }, - "ora": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/ora/-/ora-4.0.3.tgz", - "integrity": "sha512-fnDebVFyz309A73cqCipVL1fBZewq4vwgSHfxh43vVy31mbyoQ8sCH3Oeaog/owYOs/lLlGVPCISQonTneg6Pg==", + "node_modules/ora": { + "version": "5.4.1", "dev": true, - "requires": { - "chalk": "^3.0.0", + "license": "MIT", + "dependencies": { + "bl": "^4.1.0", + "chalk": "^4.1.0", "cli-cursor": "^3.1.0", - "cli-spinners": "^2.2.0", + "cli-spinners": "^2.5.0", "is-interactive": "^1.0.0", - "log-symbols": "^3.0.0", - "mute-stream": "0.0.8", + "is-unicode-supported": "^0.1.0", + "log-symbols": "^4.1.0", "strip-ansi": "^6.0.0", "wcwidth": "^1.0.1" }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/ora/node_modules/ansi-styles": { + "version": "4.3.0", + "dev": true, + "license": "MIT", "dependencies": { - "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" - } - }, - "chalk": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", - "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.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 - }, - "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 - }, - "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" - } - }, - "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": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/ora/node_modules/chalk": { + "version": "4.1.2", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "original": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/original/-/original-1.0.2.tgz", - "integrity": "sha512-hyBVl6iqqUOJ8FqRe+l/gS8H+kKYjrEndd5Pm1MfBtsEKA038HkkdbAl/72EAXGyonD/PFsvmVG+EvcIpliMBg==", + "node_modules/ora/node_modules/color-convert": { + "version": "2.0.1", "dev": true, - "requires": { - "url-parse": "^1.4.3" + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" } }, - "os-browserify": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/os-browserify/-/os-browserify-0.3.0.tgz", - "integrity": "sha1-hUNzx/XCMVkU/Jv8a9gjj92h7Cc=", - "dev": true + "node_modules/ora/node_modules/color-name": { + "version": "1.1.4", + "dev": true, + "license": "MIT" }, - "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 + "node_modules/ora/node_modules/has-flag": { + "version": "4.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } }, - "os-locale": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-3.1.0.tgz", - "integrity": "sha512-Z8l3R4wYWM40/52Z+S265okfFj8Kt2cC2MKY+xNi3kFs+XGI7WXu/I309QQQYbRW4ijiZ+yxs9pqEhJh0DqW3Q==", + "node_modules/ora/node_modules/supports-color": { + "version": "7.2.0", "dev": true, - "requires": { - "execa": "^1.0.0", - "lcid": "^2.0.0", - "mem": "^4.0.0" + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" } }, - "os-tmpdir": { + "node_modules/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=", - "dev": true - }, - "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" + "license": "MIT", + "engines": { + "node": ">=0.10.0" } }, - "p-cancelable": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-1.1.0.tgz", - "integrity": "sha512-s73XxOZ4zpt1edZYZzvhqFa6uvQc1vwUa0K0BdtIZgQMAJj9IbebH+JkgKZc9h+B05PKHLOTl4ajG1BmNrVZlw==", - "dev": true - }, - "p-defer": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/p-defer/-/p-defer-1.0.0.tgz", - "integrity": "sha1-n26xgvbJqozXQwBKfU+WsZaw+ww=", - "dev": true - }, - "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-is-promise": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/p-is-promise/-/p-is-promise-2.1.0.tgz", - "integrity": "sha512-Y3W0wlRPK8ZMRbNq97l4M5otioeA5lm1z7bkNkxCka8HSPjR0xRWmpCmc9utiaLP9Jb1eD8BgeIxTW4AIF45Pg==", - "dev": true - }, - "p-limit": { + "node_modules/p-limit": { "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "p-try": "^2.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "p-locate": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", - "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "node_modules/p-locate": { + "version": "4.1.0", "dev": true, - "requires": { - "p-limit": "^2.0.0" + "license": "MIT", + "dependencies": { + "p-limit": "^2.2.0" + }, + "engines": { + "node": ">=8" } }, - "p-map": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/p-map/-/p-map-3.0.0.tgz", - "integrity": "sha512-d3qXVTF/s+W+CdJ5A29wywV2n8CQQYahlgz2bFiA+4eVNJbHJodPZ+/gXwPGh0bOqA+j8S+6+ckmvLGPk1QpxQ==", + "node_modules/p-map": { + "version": "4.0.0", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "aggregate-error": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "p-retry": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/p-retry/-/p-retry-3.0.1.tgz", - "integrity": "sha512-XE6G4+YTTkT2a0UWb2kjZe8xNwf8bIbnqpc/IS/idOBVhyves0mK5OJgeocjx7q5pvX/6m23xuzVPYT1uGM73w==", + "node_modules/p-retry": { + "version": "4.6.2", "dev": true, - "requires": { - "retry": "^0.12.0" + "license": "MIT", + "dependencies": { + "@types/retry": "0.12.0", + "retry": "^0.13.1" + }, + "engines": { + "node": ">=8" } }, - "p-try": { + "node_modules/p-retry/node_modules/retry": { + "version": "0.13.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 4" + } + }, + "node_modules/p-try": { "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", - "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", - "dev": true - }, - "package-json": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/package-json/-/package-json-6.5.0.tgz", - "integrity": "sha512-k3bdm2n25tkyxcjSKzB5x8kfVxlMdgsbPr0GkZcwHsLpba6cBjqCt1KlcChKEvxHIcTB1FVMuwoijZ26xex5MQ==", - "dev": true, - "requires": { - "got": "^9.6.0", - "registry-auth-token": "^4.0.0", - "registry-url": "^5.0.0", - "semver": "^6.2.0" - }, - "dependencies": { - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - } + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" } }, - "pacote": { - "version": "9.5.12", - "resolved": "https://registry.npmjs.org/pacote/-/pacote-9.5.12.tgz", - "integrity": "sha512-BUIj/4kKbwWg4RtnBncXPJd15piFSVNpTzY0rysSr3VnMowTYgkGKcaHrbReepAkjTr8lH2CVWRi58Spg2CicQ==", + "node_modules/pacote": { + "version": "13.6.2", "dev": true, - "requires": { - "bluebird": "^3.5.3", - "cacache": "^12.0.2", - "chownr": "^1.1.2", - "figgy-pudding": "^3.5.1", - "get-stream": "^4.1.0", - "glob": "^7.1.3", + "license": "ISC", + "dependencies": { + "@npmcli/git": "^3.0.0", + "@npmcli/installed-package-contents": "^1.0.7", + "@npmcli/promise-spawn": "^3.0.0", + "@npmcli/run-script": "^4.1.0", + "cacache": "^16.0.0", + "chownr": "^2.0.0", + "fs-minipass": "^2.1.0", "infer-owner": "^1.0.4", - "lru-cache": "^5.1.1", - "make-fetch-happen": "^5.0.0", - "minimatch": "^3.0.4", - "minipass": "^2.3.5", - "mississippi": "^3.0.0", - "mkdirp": "^0.5.1", - "normalize-package-data": "^2.4.0", - "npm-normalize-package-bin": "^1.0.0", - "npm-package-arg": "^6.1.0", - "npm-packlist": "^1.1.12", - "npm-pick-manifest": "^3.0.0", - "npm-registry-fetch": "^4.0.0", - "osenv": "^0.1.5", - "promise-inflight": "^1.0.1", - "promise-retry": "^1.1.1", - "protoduck": "^5.0.1", - "rimraf": "^2.6.2", - "safe-buffer": "^5.1.2", - "semver": "^5.6.0", - "ssri": "^6.0.1", - "tar": "^4.4.10", - "unique-filename": "^1.1.1", - "which": "^1.3.1" - }, - "dependencies": { - "cacache": { - "version": "12.0.4", - "resolved": "https://registry.npmjs.org/cacache/-/cacache-12.0.4.tgz", - "integrity": "sha512-a0tMB40oefvuInr4Cwb3GerbL9xTj1D5yg0T5xrjGCGyfvbxseIXX7BAO/u/hIXdafzOI5JC3wDwHyf24buOAQ==", - "dev": true, - "requires": { - "bluebird": "^3.5.5", - "chownr": "^1.1.1", - "figgy-pudding": "^3.5.1", - "glob": "^7.1.4", - "graceful-fs": "^4.1.15", - "infer-owner": "^1.0.3", - "lru-cache": "^5.1.1", - "mississippi": "^3.0.0", - "mkdirp": "^0.5.1", - "move-concurrently": "^1.0.1", - "promise-inflight": "^1.0.1", - "rimraf": "^2.6.3", - "ssri": "^6.0.1", - "unique-filename": "^1.1.1", - "y18n": "^4.0.0" - } - }, - "fs-minipass": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-1.2.7.tgz", - "integrity": "sha512-GWSSJGFy4e9GUeCcbIkED+bgAoFyj7XF1mV8rma3QW4NIqX9Kyx79N/PF61H5udOV3aY1IaMLs6pGbH71nlCTA==", - "dev": true, - "requires": { - "minipass": "^2.6.0" - } - }, - "hosted-git-info": { - "version": "2.8.9", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz", - "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==", - "dev": true - }, - "minipass": { - "version": "2.9.0", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-2.9.0.tgz", - "integrity": "sha512-wxfUjg9WebH+CUDX/CdbRlh5SmfZiy/hpkxaRI16Y9W56Pa75sWgd/rvFilSgrauD9NyFymP/+JFV3KwzIsJeg==", - "dev": true, - "requires": { - "safe-buffer": "^5.1.2", - "yallist": "^3.0.0" - } - }, - "minizlib": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-1.3.3.tgz", - "integrity": "sha512-6ZYMOEnmVsdCeTJVE0W9ZD+pVnE8h9Hma/iOwwRDsdQoePpoX56/8B6z3P9VNwppJuBKNRuFDRNRqRWexT9G9Q==", - "dev": true, - "requires": { - "minipass": "^2.9.0" - } - }, - "npm-package-arg": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-6.1.1.tgz", - "integrity": "sha512-qBpssaL3IOZWi5vEKUKW0cO7kzLeT+EQO9W8RsLOZf76KF9E/K9+wH0C7t06HXPpaH8WH5xF1MExLuCwbTqRUg==", - "dev": true, - "requires": { - "hosted-git-info": "^2.7.1", - "osenv": "^0.1.5", - "semver": "^5.6.0", - "validate-npm-package-name": "^3.0.0" - } - }, - "npm-pick-manifest": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/npm-pick-manifest/-/npm-pick-manifest-3.0.2.tgz", - "integrity": "sha512-wNprTNg+X5nf+tDi+hbjdHhM4bX+mKqv6XmPh7B5eG+QY9VARfQPfCEH013H5GqfNj6ee8Ij2fg8yk0mzps1Vw==", - "dev": true, - "requires": { - "figgy-pudding": "^3.5.1", - "npm-package-arg": "^6.0.0", - "semver": "^5.4.1" - } - }, - "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" - } - }, - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "dev": true - }, - "ssri": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/ssri/-/ssri-6.0.2.tgz", - "integrity": "sha512-cepbSq/neFK7xB6A50KHN0xHDotYzq58wWCa5LeWqnPrHG8GzfEjO/4O8kpmcGW+oaxkvhEJCWgbgNk4/ZV93Q==", - "dev": true, - "requires": { - "figgy-pudding": "^3.5.1" - } - }, - "tar": { - "version": "4.4.19", - "resolved": "https://registry.npmjs.org/tar/-/tar-4.4.19.tgz", - "integrity": "sha512-a20gEsvHnWe0ygBY8JbxoM4w3SJdhc7ZAuxkLqh+nvNQN2IOt0B5lLgM490X5Hl8FF0dl0tOf2ewFYAlIFgzVA==", - "dev": true, - "requires": { - "chownr": "^1.1.4", - "fs-minipass": "^1.2.7", - "minipass": "^2.9.0", - "minizlib": "^1.3.3", - "mkdirp": "^0.5.5", - "safe-buffer": "^5.2.1", - "yallist": "^3.1.1" - } - }, - "yallist": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", - "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", - "dev": true - } + "minipass": "^3.1.6", + "mkdirp": "^1.0.4", + "npm-package-arg": "^9.0.0", + "npm-packlist": "^5.1.0", + "npm-pick-manifest": "^7.0.0", + "npm-registry-fetch": "^13.0.1", + "proc-log": "^2.0.0", + "promise-retry": "^2.0.1", + "read-package-json": "^5.0.0", + "read-package-json-fast": "^2.0.3", + "rimraf": "^3.0.2", + "ssri": "^9.0.0", + "tar": "^6.1.11" + }, + "bin": { + "pacote": "lib/bin.js" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "pako": { + "node_modules/pako": { "version": "1.0.11", - "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz", - "integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==", - "dev": true - }, - "papaparse": { - "version": "4.1.4", - "resolved": "https://registry.npmjs.org/papaparse/-/papaparse-4.1.4.tgz", - "integrity": "sha1-V7IkYhdi2g+UPZW4Ko6Cw7SzMaI=" - }, - "parallel-transform": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/parallel-transform/-/parallel-transform-1.2.0.tgz", - "integrity": "sha512-P2vSmIu38uIlvdcU7fDkyrxj33gTUy/ABO5ZUbGowxNCopBq/OoD42bP4UmMrJoPyk4Uqf0mu3mtWBhHCZD8yg==", "dev": true, - "requires": { - "cyclist": "^1.0.1", - "inherits": "^2.0.3", - "readable-stream": "^2.1.5" - } + "license": "(MIT AND Zlib)" }, - "param-case": { + "node_modules/papaparse": { + "version": "4.1.4" + }, + "node_modules/param-case": { "version": "2.1.1", - "resolved": "https://registry.npmjs.org/param-case/-/param-case-2.1.1.tgz", - "integrity": "sha1-35T9jPZTHs915r75oIWPvHK+Ikc=", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "no-case": "^2.2.0" } }, - "parse-asn1": { - "version": "5.1.6", - "resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.6.tgz", - "integrity": "sha512-RnZRo1EPU6JBnra2vGHj0yhp6ebyjBZpmUCLHWiFhxlzvBCCpAuZ7elsBp1PVAbQN0/04VD/19rfzlBSwLstMw==", + "node_modules/parent-module": { + "version": "1.0.1", "dev": true, - "requires": { - "asn1.js": "^5.2.0", - "browserify-aes": "^1.0.0", - "evp_bytestokey": "^1.0.0", - "pbkdf2": "^3.0.3", - "safe-buffer": "^5.1.1" + "license": "MIT", + "dependencies": { + "callsites": "^3.0.0" + }, + "engines": { + "node": ">=6" } }, - "parse-entities": { + "node_modules/parse-entities": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/parse-entities/-/parse-entities-2.0.0.tgz", - "integrity": "sha512-kkywGpCcRYhqQIchaWqZ875wzpS/bMKhz5HnN3p7wveJTkTtyAB/AlnS0f8DFSqYW1T82t6yEAkEcB+A1I3MbQ==", - "requires": { + "license": "MIT", + "dependencies": { "character-entities": "^1.0.0", "character-entities-legacy": "^1.0.0", "character-reference-invalid": "^1.0.0", "is-alphanumerical": "^1.0.0", "is-decimal": "^1.0.0", "is-hexadecimal": "^1.0.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" } }, - "parse-json": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", - "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=", + "node_modules/parse-json": { + "version": "5.2.0", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.0.0", "error-ex": "^1.3.1", - "json-parse-better-errors": "^1.0.1" + "json-parse-even-better-errors": "^2.3.0", + "lines-and-columns": "^1.1.6" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/parse-node-version": { + "version": "1.0.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.10" } }, - "parse5": { + "node_modules/parse5": { "version": "5.1.1", - "resolved": "https://registry.npmjs.org/parse5/-/parse5-5.1.1.tgz", - "integrity": "sha512-ugq4DFI0Ptb+WWjAdOK16+u/nHfiIrcE+sh8kZMaM0WllQKLI9rOUq6c2b7cwPkXdzfQESqvoqK6ug7U/Yyzug==", + "license": "MIT", "optional": true }, - "parseqs": { - "version": "0.0.5", - "resolved": "https://registry.npmjs.org/parseqs/-/parseqs-0.0.5.tgz", - "integrity": "sha1-1SCKNzjkZ2bikbouoXNoSSGouJ0=", + "node_modules/parse5-html-rewriting-stream": { + "version": "6.0.1", + "dev": true, + "license": "MIT", + "dependencies": { + "parse5": "^6.0.1", + "parse5-sax-parser": "^6.0.1" + } + }, + "node_modules/parse5-html-rewriting-stream/node_modules/parse5": { + "version": "6.0.1", + "dev": true, + "license": "MIT" + }, + "node_modules/parse5-htmlparser2-tree-adapter": { + "version": "6.0.1", "dev": true, - "requires": { - "better-assert": "~1.0.0" + "license": "MIT", + "dependencies": { + "parse5": "^6.0.1" } }, - "parseuri": { - "version": "0.0.5", - "resolved": "https://registry.npmjs.org/parseuri/-/parseuri-0.0.5.tgz", - "integrity": "sha1-gCBKUNTbt3m/3G6+J3jZDkvOMgo=", + "node_modules/parse5-htmlparser2-tree-adapter/node_modules/parse5": { + "version": "6.0.1", + "dev": true, + "license": "MIT" + }, + "node_modules/parse5-sax-parser": { + "version": "6.0.1", "dev": true, - "requires": { - "better-assert": "~1.0.0" + "license": "MIT", + "dependencies": { + "parse5": "^6.0.1" } }, - "parseurl": { + "node_modules/parse5-sax-parser/node_modules/parse5": { + "version": "6.0.1", + "dev": true, + "license": "MIT" + }, + "node_modules/parseurl": { "version": "1.3.3", - "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", - "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.8" + } }, - "pascalcase": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/pascalcase/-/pascalcase-0.1.1.tgz", - "integrity": "sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ=", - "dev": true + "node_modules/pascal-case": { + "version": "3.1.2", + "dev": true, + "license": "MIT", + "dependencies": { + "no-case": "^3.0.4", + "tslib": "^2.0.3" + } }, - "path-browserify": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-0.0.1.tgz", - "integrity": "sha512-BapA40NHICOS+USX9SN4tyhq+A2RrN/Ws5F0Z5aMHDp98Fl86lX8Oti8B7uN93L4Ifv4fHOEA+pQw87gmMO/lQ==", - "dev": true + "node_modules/pascal-case/node_modules/lower-case": { + "version": "2.0.2", + "dev": true, + "license": "MIT", + "dependencies": { + "tslib": "^2.0.3" + } }, - "path-dirname": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/path-dirname/-/path-dirname-1.0.2.tgz", - "integrity": "sha1-zDPSTVJeCZpTiMAzbG4yuRYGCeA=", - "dev": true + "node_modules/pascal-case/node_modules/no-case": { + "version": "3.0.4", + "dev": true, + "license": "MIT", + "dependencies": { + "lower-case": "^2.0.2", + "tslib": "^2.0.3" + } }, - "path-exists": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", - "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", - "dev": true + "node_modules/path-exists": { + "version": "4.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } }, - "path-is-absolute": { + "node_modules/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-is-inside": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/path-is-inside/-/path-is-inside-1.0.2.tgz", - "integrity": "sha1-NlQX3t5EQw0cEa9hAn+s8HS9/FM=", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } }, - "path-key": { + "node_modules/path-key": { "version": "2.0.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", - "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } }, - "path-parse": { + "node_modules/path-parse": { "version": "1.0.7", - "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", - "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", - "dev": true + "dev": true, + "license": "MIT" }, - "path-to-regexp": { + "node_modules/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=", - "dev": true + "dev": true, + "license": "MIT" }, - "path-type": { + "node_modules/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 - }, - "pbkdf2": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.1.2.tgz", - "integrity": "sha512-iuh7L6jA7JEGu2WxDwtQP1ddOpaJNC4KlDEFfdQajSGgGPNi4OyDc2R7QnbY2bR9QjBVGwgvTdNJZoE7RaxUMA==", "dev": true, - "requires": { - "create-hash": "^1.1.2", - "create-hmac": "^1.1.4", - "ripemd160": "^2.0.1", - "safe-buffer": "^5.0.1", - "sha.js": "^2.4.8" + "license": "MIT", + "engines": { + "node": ">=8" } }, - "performance-now": { + "node_modules/performance-now": { "version": "0.2.0", - "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-0.2.0.tgz", - "integrity": "sha1-M+8wxcd9TqIcWlOGnZG1bY8lVeU=" + "license": "MIT" }, - "picocolors": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", - "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==", - "dev": true + "node_modules/picocolors": { + "version": "1.1.0", + "dev": true, + "license": "ISC" }, - "picomatch": { + "node_modules/picomatch": { "version": "2.3.1", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", - "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } }, - "pidtree": { + "node_modules/pidtree": { "version": "0.3.1", - "resolved": "https://registry.npmjs.org/pidtree/-/pidtree-0.3.1.tgz", - "integrity": "sha512-qQbW94hLHEqCg7nhby4yRC7G2+jYHY4Rguc2bjw7Uug4GIJuu1tvf2uHaZv5Q8zdt+WKJ6qK1FOI6amaWUo5FA==", - "dev": true - }, - "pify": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", - "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", - "dev": true - }, - "pinkie": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz", - "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=", - "dev": true - }, - "pinkie-promise": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", - "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=", "dev": true, - "requires": { - "pinkie": "^2.0.0" + "license": "MIT", + "bin": { + "pidtree": "bin/pidtree.js" + }, + "engines": { + "node": ">=0.10" } }, - "pkg-dir": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-3.0.0.tgz", - "integrity": "sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw==", + "node_modules/pify": { + "version": "2.3.0", "dev": true, - "requires": { - "find-up": "^3.0.0" + "license": "MIT", + "engines": { + "node": ">=0.10.0" } }, - "portfinder": { - "version": "1.0.28", - "resolved": "https://registry.npmjs.org/portfinder/-/portfinder-1.0.28.tgz", - "integrity": "sha512-Se+2isanIcEqf2XMHjyUKskczxbPH7dQnlMjXX6+dybayyHvAf/TCgyMRlzf/B6QDhAEFOGes0pzRo3by4AbMA==", + "node_modules/piscina": { + "version": "3.2.0", "dev": true, - "requires": { - "async": "^2.6.2", - "debug": "^3.1.1", - "mkdirp": "^0.5.5" - }, + "license": "MIT", "dependencies": { - "debug": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - } + "eventemitter-asyncresource": "^1.0.0", + "hdr-histogram-js": "^2.0.1", + "hdr-histogram-percentiles-obj": "^3.0.0" + }, + "optionalDependencies": { + "nice-napi": "^1.0.2" } }, - "posix-character-classes": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/posix-character-classes/-/posix-character-classes-0.1.1.tgz", - "integrity": "sha1-AerA/jta9xoqbAL+q7jB/vfgDqs=", - "dev": true - }, - "postcss": { - "version": "7.0.27", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.27.tgz", - "integrity": "sha512-WuQETPMcW9Uf1/22HWUWP9lgsIC+KEHg2kozMflKjbeUtw9ujvFX6QmIfozaErDkmLWS9WEnEdEe6Uo9/BNTdQ==", + "node_modules/pkg-dir": { + "version": "4.2.0", "dev": true, - "requires": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - }, + "license": "MIT", "dependencies": { - "supports-color": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", - "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - } + "find-up": "^4.0.0" + }, + "engines": { + "node": ">=8" } }, - "postcss-calc": { - "version": "7.0.5", - "resolved": "https://registry.npmjs.org/postcss-calc/-/postcss-calc-7.0.5.tgz", - "integrity": "sha512-1tKHutbGtLtEZF6PT4JSihCHfIVldU72mZ8SdZHIYriIZ9fh9k9aWSppaT8rHsyI3dX+KSR+W+Ix9BMY3AODrg==", + "node_modules/possible-typed-array-names": { + "version": "1.0.0", "dev": true, - "requires": { - "postcss": "^7.0.27", - "postcss-selector-parser": "^6.0.2", - "postcss-value-parser": "^4.0.2" + "license": "MIT", + "engines": { + "node": ">= 0.4" } }, - "postcss-colormin": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/postcss-colormin/-/postcss-colormin-4.0.3.tgz", - "integrity": "sha512-WyQFAdDZpExQh32j0U0feWisZ0dmOtPl44qYmJKkq9xFWY3p+4qnRzCHeNrkeRhwPHz9bQ3mo0/yVkaply0MNw==", - "dev": true, - "requires": { - "browserslist": "^4.0.0", - "color": "^3.0.0", - "has": "^1.0.0", - "postcss": "^7.0.0", - "postcss-value-parser": "^3.0.0" - }, - "dependencies": { - "postcss-value-parser": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", - "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", - "dev": true + "node_modules/postcss": { + "version": "8.4.31", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/postcss" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" } + ], + "license": "MIT", + "dependencies": { + "nanoid": "^3.3.6", + "picocolors": "^1.0.0", + "source-map-js": "^1.0.2" + }, + "engines": { + "node": "^10 || ^12 || >=14" } }, - "postcss-convert-values": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/postcss-convert-values/-/postcss-convert-values-4.0.1.tgz", - "integrity": "sha512-Kisdo1y77KUC0Jmn0OXU/COOJbzM8cImvw1ZFsBgBgMgb1iL23Zs/LXRe3r+EZqM3vGYKdQ2YJVQ5VkJI+zEJQ==", + "node_modules/postcss-attribute-case-insensitive": { + "version": "5.0.2", "dev": true, - "requires": { - "postcss": "^7.0.0", - "postcss-value-parser": "^3.0.0" + "license": "MIT", + "dependencies": { + "postcss-selector-parser": "^6.0.10" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" }, + "peerDependencies": { + "postcss": "^8.2" + } + }, + "node_modules/postcss-clamp": { + "version": "4.1.0", + "dev": true, + "license": "MIT", "dependencies": { - "postcss-value-parser": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", - "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", - "dev": true - } + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": ">=7.6.0" + }, + "peerDependencies": { + "postcss": "^8.4.6" } }, - "postcss-discard-comments": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/postcss-discard-comments/-/postcss-discard-comments-4.0.2.tgz", - "integrity": "sha512-RJutN259iuRf3IW7GZyLM5Sw4GLTOH8FmsXBnv8Ab/Tc2k4SR4qbV4DNbyyY4+Sjo362SyDmW2DQ7lBSChrpkg==", + "node_modules/postcss-color-functional-notation": { + "version": "4.2.4", + "dev": true, + "license": "CC0-1.0", + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.2" + } + }, + "node_modules/postcss-color-hex-alpha": { + "version": "8.0.4", "dev": true, - "requires": { - "postcss": "^7.0.0" + "license": "MIT", + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.4" } }, - "postcss-discard-duplicates": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/postcss-discard-duplicates/-/postcss-discard-duplicates-4.0.2.tgz", - "integrity": "sha512-ZNQfR1gPNAiXZhgENFfEglF93pciw0WxMkJeVmw8eF+JZBbMD7jp6C67GqJAXVZP2BWbOztKfbsdmMp/k8c6oQ==", + "node_modules/postcss-color-rebeccapurple": { + "version": "7.1.1", "dev": true, - "requires": { - "postcss": "^7.0.0" + "license": "CC0-1.0", + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.2" } }, - "postcss-discard-empty": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/postcss-discard-empty/-/postcss-discard-empty-4.0.1.tgz", - "integrity": "sha512-B9miTzbznhDjTfjvipfHoqbWKwd0Mj+/fL5s1QOz06wufguil+Xheo4XpOnc4NqKYBCNqqEzgPv2aPBIJLox0w==", + "node_modules/postcss-custom-media": { + "version": "8.0.2", "dev": true, - "requires": { - "postcss": "^7.0.0" + "license": "MIT", + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.3" } }, - "postcss-discard-overridden": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/postcss-discard-overridden/-/postcss-discard-overridden-4.0.1.tgz", - "integrity": "sha512-IYY2bEDD7g1XM1IDEsUT4//iEYCxAmP5oDSFMVU/JVvT7gh+l4fmjciLqGgwjdWpQIdb0Che2VX00QObS5+cTg==", + "node_modules/postcss-custom-properties": { + "version": "12.1.11", "dev": true, - "requires": { - "postcss": "^7.0.0" + "license": "MIT", + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.2" } }, - "postcss-import": { - "version": "12.0.1", - "resolved": "https://registry.npmjs.org/postcss-import/-/postcss-import-12.0.1.tgz", - "integrity": "sha512-3Gti33dmCjyKBgimqGxL3vcV8w9+bsHwO5UrBawp796+jdardbcFl4RP5w/76BwNL7aGzpKstIfF9I+kdE8pTw==", + "node_modules/postcss-custom-selectors": { + "version": "6.0.3", "dev": true, - "requires": { - "postcss": "^7.0.1", - "postcss-value-parser": "^3.2.3", - "read-cache": "^1.0.0", - "resolve": "^1.1.7" + "license": "MIT", + "dependencies": { + "postcss-selector-parser": "^6.0.4" }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.3" + } + }, + "node_modules/postcss-dir-pseudo-class": { + "version": "6.0.5", + "dev": true, + "license": "CC0-1.0", "dependencies": { - "postcss-value-parser": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", - "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", - "dev": true - } + "postcss-selector-parser": "^6.0.10" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.2" } }, - "postcss-load-config": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/postcss-load-config/-/postcss-load-config-2.1.2.tgz", - "integrity": "sha512-/rDeGV6vMUo3mwJZmeHfEDvwnTKKqQ0S7OHUi/kJvvtx3aWtyWG2/0ZWnzCt2keEclwN6Tf0DST2v9kITdOKYw==", + "node_modules/postcss-double-position-gradients": { + "version": "3.1.2", "dev": true, - "requires": { - "cosmiconfig": "^5.0.0", - "import-cwd": "^2.0.0" + "license": "CC0-1.0", + "dependencies": { + "@csstools/postcss-progressive-custom-properties": "^1.1.0", + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.2" } }, - "postcss-loader": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/postcss-loader/-/postcss-loader-3.0.0.tgz", - "integrity": "sha512-cLWoDEY5OwHcAjDnkyRQzAXfs2jrKjXpO/HQFcc5b5u/r7aa471wdmChmwfnv7x2u840iat/wi0lQ5nbRgSkUA==", + "node_modules/postcss-env-function": { + "version": "4.0.6", "dev": true, - "requires": { - "loader-utils": "^1.1.0", - "postcss": "^7.0.0", - "postcss-load-config": "^2.0.0", - "schema-utils": "^1.0.0" - }, - "dependencies": { - "json5": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", - "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", - "dev": true, - "requires": { - "minimist": "^1.2.0" - } - }, - "loader-utils": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.0.tgz", - "integrity": "sha512-qH0WSMBtn/oHuwjy/NucEgbx5dbxxnxup9s4PVXJUDHZBQY+s0NWA9rJf53RBnQZxfch7euUui7hpoAPvALZdA==", - "dev": true, - "requires": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^1.0.1" - } - }, - "schema-utils": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-1.0.0.tgz", - "integrity": "sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g==", - "dev": true, - "requires": { - "ajv": "^6.1.0", - "ajv-errors": "^1.0.0", - "ajv-keywords": "^3.1.0" - } - } + "license": "CC0-1.0", + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "peerDependencies": { + "postcss": "^8.4" } }, - "postcss-merge-longhand": { - "version": "4.0.11", - "resolved": "https://registry.npmjs.org/postcss-merge-longhand/-/postcss-merge-longhand-4.0.11.tgz", - "integrity": "sha512-alx/zmoeXvJjp7L4mxEMjh8lxVlDFX1gqWHzaaQewwMZiVhLo42TEClKaeHbRf6J7j82ZOdTJ808RtN0ZOZwvw==", + "node_modules/postcss-focus-visible": { + "version": "6.0.4", "dev": true, - "requires": { - "css-color-names": "0.0.4", - "postcss": "^7.0.0", - "postcss-value-parser": "^3.0.0", - "stylehacks": "^4.0.0" + "license": "CC0-1.0", + "dependencies": { + "postcss-selector-parser": "^6.0.9" + }, + "engines": { + "node": "^12 || ^14 || >=16" }, + "peerDependencies": { + "postcss": "^8.4" + } + }, + "node_modules/postcss-focus-within": { + "version": "5.0.4", + "dev": true, + "license": "CC0-1.0", "dependencies": { - "postcss-value-parser": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", - "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", - "dev": true - } + "postcss-selector-parser": "^6.0.9" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "peerDependencies": { + "postcss": "^8.4" + } + }, + "node_modules/postcss-font-variant": { + "version": "5.0.0", + "dev": true, + "license": "MIT", + "peerDependencies": { + "postcss": "^8.1.0" } }, - "postcss-merge-rules": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/postcss-merge-rules/-/postcss-merge-rules-4.0.3.tgz", - "integrity": "sha512-U7e3r1SbvYzO0Jr3UT/zKBVgYYyhAz0aitvGIYOYK5CPmkNih+WDSsS5tvPrJ8YMQYlEMvsZIiqmn7HdFUaeEQ==", - "dev": true, - "requires": { - "browserslist": "^4.0.0", - "caniuse-api": "^3.0.0", - "cssnano-util-same-parent": "^4.0.0", - "postcss": "^7.0.0", - "postcss-selector-parser": "^3.0.0", - "vendors": "^1.0.0" - }, - "dependencies": { - "postcss-selector-parser": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-3.1.2.tgz", - "integrity": "sha512-h7fJ/5uWuRVyOtkO45pnt1Ih40CEleeyCHzipqAZO2e5H20g25Y48uYnFUiShvY4rZWNJ/Bib/KVPmanaCtOhA==", - "dev": true, - "requires": { - "dot-prop": "^5.2.0", - "indexes-of": "^1.0.1", - "uniq": "^1.0.1" - } - } + "node_modules/postcss-gap-properties": { + "version": "3.0.5", + "dev": true, + "license": "CC0-1.0", + "engines": { + "node": "^12 || ^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.2" } }, - "postcss-minify-font-values": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/postcss-minify-font-values/-/postcss-minify-font-values-4.0.2.tgz", - "integrity": "sha512-j85oO6OnRU9zPf04+PZv1LYIYOprWm6IA6zkXkrJXyRveDEuQggG6tvoy8ir8ZwjLxLuGfNkCZEQG7zan+Hbtg==", + "node_modules/postcss-image-set-function": { + "version": "4.0.7", "dev": true, - "requires": { - "postcss": "^7.0.0", - "postcss-value-parser": "^3.0.0" - }, + "license": "CC0-1.0", "dependencies": { - "postcss-value-parser": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", - "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", - "dev": true - } + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.2" } }, - "postcss-minify-gradients": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/postcss-minify-gradients/-/postcss-minify-gradients-4.0.2.tgz", - "integrity": "sha512-qKPfwlONdcf/AndP1U8SJ/uzIJtowHlMaSioKzebAXSG4iJthlWC9iSWznQcX4f66gIWX44RSA841HTHj3wK+Q==", + "node_modules/postcss-import": { + "version": "15.0.0", "dev": true, - "requires": { - "cssnano-util-get-arguments": "^4.0.0", - "is-color-stop": "^1.0.0", - "postcss": "^7.0.0", - "postcss-value-parser": "^3.0.0" - }, + "license": "MIT", "dependencies": { - "postcss-value-parser": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", - "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", - "dev": true - } + "postcss-value-parser": "^4.0.0", + "read-cache": "^1.0.0", + "resolve": "^1.1.7" + }, + "engines": { + "node": ">=14.0.0" + }, + "peerDependencies": { + "postcss": "^8.0.0" } }, - "postcss-minify-params": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/postcss-minify-params/-/postcss-minify-params-4.0.2.tgz", - "integrity": "sha512-G7eWyzEx0xL4/wiBBJxJOz48zAKV2WG3iZOqVhPet/9geefm/Px5uo1fzlHu+DOjT+m0Mmiz3jkQzVHe6wxAWg==", - "dev": true, - "requires": { - "alphanum-sort": "^1.0.0", - "browserslist": "^4.0.0", - "cssnano-util-get-arguments": "^4.0.0", - "postcss": "^7.0.0", - "postcss-value-parser": "^3.0.0", - "uniqs": "^2.0.0" - }, - "dependencies": { - "postcss-value-parser": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", - "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", - "dev": true - } + "node_modules/postcss-initial": { + "version": "4.0.1", + "dev": true, + "license": "MIT", + "peerDependencies": { + "postcss": "^8.0.0" } }, - "postcss-minify-selectors": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/postcss-minify-selectors/-/postcss-minify-selectors-4.0.2.tgz", - "integrity": "sha512-D5S1iViljXBj9kflQo4YutWnJmwm8VvIsU1GeXJGiG9j8CIg9zs4voPMdQDUmIxetUOh60VilsNzCiAFTOqu3g==", - "dev": true, - "requires": { - "alphanum-sort": "^1.0.0", - "has": "^1.0.0", - "postcss": "^7.0.0", - "postcss-selector-parser": "^3.0.0" - }, - "dependencies": { - "postcss-selector-parser": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-3.1.2.tgz", - "integrity": "sha512-h7fJ/5uWuRVyOtkO45pnt1Ih40CEleeyCHzipqAZO2e5H20g25Y48uYnFUiShvY4rZWNJ/Bib/KVPmanaCtOhA==", - "dev": true, - "requires": { - "dot-prop": "^5.2.0", - "indexes-of": "^1.0.1", - "uniq": "^1.0.1" - } - } + "node_modules/postcss-lab-function": { + "version": "4.2.1", + "dev": true, + "license": "CC0-1.0", + "dependencies": { + "@csstools/postcss-progressive-custom-properties": "^1.1.0", + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.2" } }, - "postcss-modules-extract-imports": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/postcss-modules-extract-imports/-/postcss-modules-extract-imports-2.0.0.tgz", - "integrity": "sha512-LaYLDNS4SG8Q5WAWqIJgdHPJrDDr/Lv775rMBFUbgjTz6j34lUznACHcdRWroPvXANP2Vj7yNK57vp9eFqzLWQ==", + "node_modules/postcss-loader": { + "version": "7.0.1", "dev": true, - "requires": { - "postcss": "^7.0.5" + "license": "MIT", + "dependencies": { + "cosmiconfig": "^7.0.0", + "klona": "^2.0.5", + "semver": "^7.3.7" + }, + "engines": { + "node": ">= 14.15.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "postcss": "^7.0.0 || ^8.0.1", + "webpack": "^5.0.0" } }, - "postcss-modules-local-by-default": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/postcss-modules-local-by-default/-/postcss-modules-local-by-default-3.0.3.tgz", - "integrity": "sha512-e3xDq+LotiGesympRlKNgaJ0PCzoUIdpH0dj47iWAui/kyTgh3CiAr1qP54uodmJhl6p9rN6BoNcdEDVJx9RDw==", + "node_modules/postcss-logical": { + "version": "5.0.4", "dev": true, - "requires": { - "icss-utils": "^4.1.1", - "postcss": "^7.0.32", - "postcss-selector-parser": "^6.0.2", - "postcss-value-parser": "^4.1.0" + "license": "CC0-1.0", + "engines": { + "node": "^12 || ^14 || >=16" }, - "dependencies": { - "picocolors": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz", - "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==", - "dev": true - }, - "postcss": { - "version": "7.0.39", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz", - "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==", - "dev": true, - "requires": { - "picocolors": "^0.2.1", - "source-map": "^0.6.1" - } - } + "peerDependencies": { + "postcss": "^8.4" } }, - "postcss-modules-scope": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/postcss-modules-scope/-/postcss-modules-scope-2.2.0.tgz", - "integrity": "sha512-YyEgsTMRpNd+HmyC7H/mh3y+MeFWevy7V1evVhJWewmMbjDHIbZbOXICC2y+m1xI1UVfIT1HMW/O04Hxyu9oXQ==", + "node_modules/postcss-media-minmax": { + "version": "5.0.0", "dev": true, - "requires": { - "postcss": "^7.0.6", - "postcss-selector-parser": "^6.0.0" + "license": "MIT", + "engines": { + "node": ">=10.0.0" + }, + "peerDependencies": { + "postcss": "^8.1.0" } }, - "postcss-modules-values": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/postcss-modules-values/-/postcss-modules-values-3.0.0.tgz", - "integrity": "sha512-1//E5jCBrZ9DmRX+zCtmQtRSV6PV42Ix7Bzj9GbwJceduuf7IqP8MgeTXuRDHOWj2m0VzZD5+roFWDuU8RQjcg==", + "node_modules/postcss-modules-extract-imports": { + "version": "3.1.0", "dev": true, - "requires": { - "icss-utils": "^4.0.0", - "postcss": "^7.0.6" + "license": "ISC", + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" } }, - "postcss-normalize-charset": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/postcss-normalize-charset/-/postcss-normalize-charset-4.0.1.tgz", - "integrity": "sha512-gMXCrrlWh6G27U0hF3vNvR3w8I1s2wOBILvA87iNXaPvSNo5uZAMYsZG7XjCUf1eVxuPfyL4TJ7++SGZLc9A3g==", + "node_modules/postcss-modules-local-by-default": { + "version": "4.0.5", "dev": true, - "requires": { - "postcss": "^7.0.0" + "license": "MIT", + "dependencies": { + "icss-utils": "^5.0.0", + "postcss-selector-parser": "^6.0.2", + "postcss-value-parser": "^4.1.0" + }, + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" } }, - "postcss-normalize-display-values": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/postcss-normalize-display-values/-/postcss-normalize-display-values-4.0.2.tgz", - "integrity": "sha512-3F2jcsaMW7+VtRMAqf/3m4cPFhPD3EFRgNs18u+k3lTJJlVe7d0YPO+bnwqo2xg8YiRpDXJI2u8A0wqJxMsQuQ==", + "node_modules/postcss-modules-scope": { + "version": "3.2.0", "dev": true, - "requires": { - "cssnano-util-get-match": "^4.0.0", - "postcss": "^7.0.0", - "postcss-value-parser": "^3.0.0" - }, + "license": "ISC", "dependencies": { - "postcss-value-parser": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", - "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", - "dev": true - } + "postcss-selector-parser": "^6.0.4" + }, + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" } }, - "postcss-normalize-positions": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/postcss-normalize-positions/-/postcss-normalize-positions-4.0.2.tgz", - "integrity": "sha512-Dlf3/9AxpxE+NF1fJxYDeggi5WwV35MXGFnnoccP/9qDtFrTArZ0D0R+iKcg5WsUd8nUYMIl8yXDCtcrT8JrdA==", + "node_modules/postcss-modules-values": { + "version": "4.0.0", "dev": true, - "requires": { - "cssnano-util-get-arguments": "^4.0.0", - "has": "^1.0.0", - "postcss": "^7.0.0", - "postcss-value-parser": "^3.0.0" - }, + "license": "ISC", "dependencies": { - "postcss-value-parser": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", - "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", - "dev": true - } + "icss-utils": "^5.0.0" + }, + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" } }, - "postcss-normalize-repeat-style": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/postcss-normalize-repeat-style/-/postcss-normalize-repeat-style-4.0.2.tgz", - "integrity": "sha512-qvigdYYMpSuoFs3Is/f5nHdRLJN/ITA7huIoCyqqENJe9PvPmLhNLMu7QTjPdtnVf6OcYYO5SHonx4+fbJE1+Q==", + "node_modules/postcss-nesting": { + "version": "10.2.0", "dev": true, - "requires": { - "cssnano-util-get-arguments": "^4.0.0", - "cssnano-util-get-match": "^4.0.0", - "postcss": "^7.0.0", - "postcss-value-parser": "^3.0.0" - }, + "license": "CC0-1.0", "dependencies": { - "postcss-value-parser": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", - "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", - "dev": true - } + "@csstools/selector-specificity": "^2.0.0", + "postcss-selector-parser": "^6.0.10" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.2" } }, - "postcss-normalize-string": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/postcss-normalize-string/-/postcss-normalize-string-4.0.2.tgz", - "integrity": "sha512-RrERod97Dnwqq49WNz8qo66ps0swYZDSb6rM57kN2J+aoyEAJfZ6bMx0sx/F9TIEX0xthPGCmeyiam/jXif0eA==", + "node_modules/postcss-opacity-percentage": { + "version": "1.1.3", "dev": true, - "requires": { - "has": "^1.0.0", - "postcss": "^7.0.0", - "postcss-value-parser": "^3.0.0" - }, - "dependencies": { - "postcss-value-parser": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", - "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", - "dev": true + "funding": [ + { + "type": "kofi", + "url": "https://ko-fi.com/mrcgrtz" + }, + { + "type": "liberapay", + "url": "https://liberapay.com/mrcgrtz" } + ], + "license": "MIT", + "engines": { + "node": "^12 || ^14 || >=16" + }, + "peerDependencies": { + "postcss": "^8.2" } }, - "postcss-normalize-timing-functions": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/postcss-normalize-timing-functions/-/postcss-normalize-timing-functions-4.0.2.tgz", - "integrity": "sha512-acwJY95edP762e++00Ehq9L4sZCEcOPyaHwoaFOhIwWCDfik6YvqsYNxckee65JHLKzuNSSmAdxwD2Cud1Z54A==", + "node_modules/postcss-overflow-shorthand": { + "version": "3.0.4", "dev": true, - "requires": { - "cssnano-util-get-match": "^4.0.0", - "postcss": "^7.0.0", - "postcss-value-parser": "^3.0.0" - }, + "license": "CC0-1.0", "dependencies": { - "postcss-value-parser": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", - "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", - "dev": true - } + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.2" } }, - "postcss-normalize-unicode": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/postcss-normalize-unicode/-/postcss-normalize-unicode-4.0.1.tgz", - "integrity": "sha512-od18Uq2wCYn+vZ/qCOeutvHjB5jm57ToxRaMeNuf0nWVHaP9Hua56QyMF6fs/4FSUnVIw0CBPsU0K4LnBPwYwg==", + "node_modules/postcss-page-break": { + "version": "3.0.4", "dev": true, - "requires": { - "browserslist": "^4.0.0", - "postcss": "^7.0.0", - "postcss-value-parser": "^3.0.0" - }, - "dependencies": { - "postcss-value-parser": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", - "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", - "dev": true - } + "license": "MIT", + "peerDependencies": { + "postcss": "^8" } }, - "postcss-normalize-url": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/postcss-normalize-url/-/postcss-normalize-url-4.0.1.tgz", - "integrity": "sha512-p5oVaF4+IHwu7VpMan/SSpmpYxcJMtkGppYf0VbdH5B6hN8YNmVyJLuY9FmLQTzY3fag5ESUUHDqM+heid0UVA==", + "node_modules/postcss-place": { + "version": "7.0.5", "dev": true, - "requires": { - "is-absolute-url": "^2.0.0", - "normalize-url": "^3.0.0", - "postcss": "^7.0.0", - "postcss-value-parser": "^3.0.0" - }, + "license": "CC0-1.0", "dependencies": { - "postcss-value-parser": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", - "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", - "dev": true - } + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.2" } }, - "postcss-normalize-whitespace": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/postcss-normalize-whitespace/-/postcss-normalize-whitespace-4.0.2.tgz", - "integrity": "sha512-tO8QIgrsI3p95r8fyqKV+ufKlSHh9hMJqACqbv2XknufqEDhDvbguXGBBqxw9nsQoXWf0qOqppziKJKHMD4GtA==", + "node_modules/postcss-preset-env": { + "version": "7.8.0", "dev": true, - "requires": { - "postcss": "^7.0.0", - "postcss-value-parser": "^3.0.0" - }, + "license": "CC0-1.0", "dependencies": { - "postcss-value-parser": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", - "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", - "dev": true - } + "@csstools/postcss-cascade-layers": "^1.0.5", + "@csstools/postcss-color-function": "^1.1.1", + "@csstools/postcss-font-format-keywords": "^1.0.1", + "@csstools/postcss-hwb-function": "^1.0.2", + "@csstools/postcss-ic-unit": "^1.0.1", + "@csstools/postcss-is-pseudo-class": "^2.0.7", + "@csstools/postcss-nested-calc": "^1.0.0", + "@csstools/postcss-normalize-display-values": "^1.0.1", + "@csstools/postcss-oklab-function": "^1.1.1", + "@csstools/postcss-progressive-custom-properties": "^1.3.0", + "@csstools/postcss-stepped-value-functions": "^1.0.1", + "@csstools/postcss-text-decoration-shorthand": "^1.0.0", + "@csstools/postcss-trigonometric-functions": "^1.0.2", + "@csstools/postcss-unset-value": "^1.0.2", + "autoprefixer": "^10.4.8", + "browserslist": "^4.21.3", + "css-blank-pseudo": "^3.0.3", + "css-has-pseudo": "^3.0.4", + "css-prefers-color-scheme": "^6.0.3", + "cssdb": "^7.0.0", + "postcss-attribute-case-insensitive": "^5.0.2", + "postcss-clamp": "^4.1.0", + "postcss-color-functional-notation": "^4.2.4", + "postcss-color-hex-alpha": "^8.0.4", + "postcss-color-rebeccapurple": "^7.1.1", + "postcss-custom-media": "^8.0.2", + "postcss-custom-properties": "^12.1.8", + "postcss-custom-selectors": "^6.0.3", + "postcss-dir-pseudo-class": "^6.0.5", + "postcss-double-position-gradients": "^3.1.2", + "postcss-env-function": "^4.0.6", + "postcss-focus-visible": "^6.0.4", + "postcss-focus-within": "^5.0.4", + "postcss-font-variant": "^5.0.0", + "postcss-gap-properties": "^3.0.5", + "postcss-image-set-function": "^4.0.7", + "postcss-initial": "^4.0.1", + "postcss-lab-function": "^4.2.1", + "postcss-logical": "^5.0.4", + "postcss-media-minmax": "^5.0.0", + "postcss-nesting": "^10.1.10", + "postcss-opacity-percentage": "^1.1.2", + "postcss-overflow-shorthand": "^3.0.4", + "postcss-page-break": "^3.0.4", + "postcss-place": "^7.0.5", + "postcss-pseudo-class-any-link": "^7.1.6", + "postcss-replace-overflow-wrap": "^4.0.0", + "postcss-selector-not": "^6.0.1", + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.2" } }, - "postcss-ordered-values": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/postcss-ordered-values/-/postcss-ordered-values-4.1.2.tgz", - "integrity": "sha512-2fCObh5UanxvSxeXrtLtlwVThBvHn6MQcu4ksNT2tsaV2Fg76R2CV98W7wNSlX+5/pFwEyaDwKLLoEV7uRybAw==", + "node_modules/postcss-pseudo-class-any-link": { + "version": "7.1.6", "dev": true, - "requires": { - "cssnano-util-get-arguments": "^4.0.0", - "postcss": "^7.0.0", - "postcss-value-parser": "^3.0.0" - }, + "license": "CC0-1.0", "dependencies": { - "postcss-value-parser": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", - "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", - "dev": true - } + "postcss-selector-parser": "^6.0.10" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.2" } }, - "postcss-reduce-initial": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/postcss-reduce-initial/-/postcss-reduce-initial-4.0.3.tgz", - "integrity": "sha512-gKWmR5aUulSjbzOfD9AlJiHCGH6AEVLaM0AV+aSioxUDd16qXP1PCh8d1/BGVvpdWn8k/HiK7n6TjeoXN1F7DA==", + "node_modules/postcss-replace-overflow-wrap": { + "version": "4.0.0", "dev": true, - "requires": { - "browserslist": "^4.0.0", - "caniuse-api": "^3.0.0", - "has": "^1.0.0", - "postcss": "^7.0.0" + "license": "MIT", + "peerDependencies": { + "postcss": "^8.0.3" } }, - "postcss-reduce-transforms": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/postcss-reduce-transforms/-/postcss-reduce-transforms-4.0.2.tgz", - "integrity": "sha512-EEVig1Q2QJ4ELpJXMZR8Vt5DQx8/mo+dGWSR7vWXqcob2gQLyQGsionYcGKATXvQzMPn6DSN1vTN7yFximdIAg==", + "node_modules/postcss-selector-not": { + "version": "6.0.1", "dev": true, - "requires": { - "cssnano-util-get-match": "^4.0.0", - "has": "^1.0.0", - "postcss": "^7.0.0", - "postcss-value-parser": "^3.0.0" - }, + "license": "MIT", "dependencies": { - "postcss-value-parser": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", - "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", - "dev": true - } + "postcss-selector-parser": "^6.0.10" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.2" } }, - "postcss-selector-parser": { - "version": "6.0.10", - "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.10.tgz", - "integrity": "sha512-IQ7TZdoaqbT+LCpShg46jnZVlhWD2w6iQYAcYXfHARZ7X1t/UGhhceQDs5X0cGqKvYlHNOuv7Oa1xmb0oQuA3w==", + "node_modules/postcss-selector-parser": { + "version": "6.1.2", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "cssesc": "^3.0.0", "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" } }, - "postcss-svgo": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/postcss-svgo/-/postcss-svgo-4.0.3.tgz", - "integrity": "sha512-NoRbrcMWTtUghzuKSoIm6XV+sJdvZ7GZSc3wdBN0W19FTtp2ko8NqLsgoh/m9CzNhU3KLPvQmjIwtaNFkaFTvw==", + "node_modules/postcss-url": { + "version": "10.1.3", "dev": true, - "requires": { - "postcss": "^7.0.0", - "postcss-value-parser": "^3.0.0", - "svgo": "^1.0.0" - }, + "license": "MIT", "dependencies": { - "postcss-value-parser": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", - "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", - "dev": true - } + "make-dir": "~3.1.0", + "mime": "~2.5.2", + "minimatch": "~3.0.4", + "xxhashjs": "~0.2.2" + }, + "engines": { + "node": ">=10" + }, + "peerDependencies": { + "postcss": "^8.0.0" } }, - "postcss-unique-selectors": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/postcss-unique-selectors/-/postcss-unique-selectors-4.0.1.tgz", - "integrity": "sha512-+JanVaryLo9QwZjKrmJgkI4Fn8SBgRO6WXQBJi7KiAVPlmxikB5Jzc4EvXMT2H0/m0RjrVVm9rGNhZddm/8Spg==", + "node_modules/postcss-url/node_modules/brace-expansion": { + "version": "1.1.11", "dev": true, - "requires": { - "alphanum-sort": "^1.0.0", - "postcss": "^7.0.0", - "uniqs": "^2.0.0" + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" } }, - "postcss-url": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/postcss-url/-/postcss-url-8.0.0.tgz", - "integrity": "sha512-E2cbOQ5aii2zNHh8F6fk1cxls7QVFZjLPSrqvmiza8OuXLzIpErij8BDS5Y3STPfJgpIMNCPEr8JlKQWEoozUw==", + "node_modules/postcss-url/node_modules/mime": { + "version": "2.5.2", "dev": true, - "requires": { - "mime": "^2.3.1", - "minimatch": "^3.0.4", - "mkdirp": "^0.5.0", - "postcss": "^7.0.2", - "xxhashjs": "^0.2.1" + "license": "MIT", + "bin": { + "mime": "cli.js" }, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/postcss-url/node_modules/minimatch": { + "version": "3.0.8", + "dev": true, + "license": "ISC", "dependencies": { - "mime": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/mime/-/mime-2.6.0.tgz", - "integrity": "sha512-USPkMeET31rOMiarsBNIHZKLGgvKc/LrjofAnBlOttf5ajRvqiRA8QsenbcooctK6d6Ts6aqZXBA+XbkKthiQg==", - "dev": true - } + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" } }, - "postcss-value-parser": { + "node_modules/postcss-value-parser": { "version": "4.2.0", - "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz", - "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==", - "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==", + "dev": true, + "license": "MIT" + }, + "node_modules/prebuild-install": { + "version": "7.1.2", + "license": "MIT", "optional": true, - "requires": { - "detect-libc": "^1.0.3", + "dependencies": { + "detect-libc": "^2.0.0", "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", + "node-abi": "^3.3.0", "pump": "^3.0.0", "rc": "^1.2.7", - "simple-get": "^3.0.3", + "simple-get": "^4.0.0", "tar-fs": "^2.0.0", "tunnel-agent": "^0.6.0" + }, + "bin": { + "prebuild-install": "bin.js" + }, + "engines": { + "node": ">=10" } }, - "prepend-http": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-1.0.4.tgz", - "integrity": "sha1-1PRWKwzjaW5BrFLQ4ALlemNdxtw=", - "dev": true + "node_modules/pretty-bytes": { + "version": "5.6.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } }, - "pretty-error": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/pretty-error/-/pretty-error-2.1.2.tgz", - "integrity": "sha512-EY5oDzmsX5wvuynAByrmY0P0hcp+QpnAKbJng2A2MPjVKXCxrDSUkzghVJ4ZGPIv+JC4gX8fPUWscC0RtjsWGw==", + "node_modules/pretty-error": { + "version": "4.0.0", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "lodash": "^4.17.20", - "renderkid": "^2.0.4" + "renderkid": "^3.0.0" } }, - "prismjs": { + "node_modules/prismjs": { "version": "1.29.0", - "resolved": "https://registry.npmjs.org/prismjs/-/prismjs-1.29.0.tgz", - "integrity": "sha512-Kx/1w86q/epKcmte75LNrEoT+lX8pBpavuAbvJWRXar7Hz8jrtF+e3vY751p0R8H9HdArwaCTNDDzHg/ScJK1Q==" + "license": "MIT", + "engines": { + "node": ">=6" + } }, - "private": { + "node_modules/private": { "version": "0.1.8", - "resolved": "https://registry.npmjs.org/private/-/private-0.1.8.tgz", - "integrity": "sha512-VvivMrbvd2nKkiG38qjULzlc+4Vx4wm/whI9pQD35YrARNnhxeiRktSOhSukRLFNlzg6Br/cJPet5J/u19r/mg==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/proc-log": { + "version": "2.0.1", + "dev": true, + "license": "ISC", + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } }, - "process": { + "node_modules/process": { "version": "0.11.10", - "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", - "integrity": "sha1-czIwDoQBYb2j5podHZGn1LwW8YI=" + "license": "MIT", + "engines": { + "node": ">= 0.6.0" + } }, - "process-nextick-args": { + "node_modules/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, + "license": "MIT" }, - "promise": { + "node_modules/promise": { "version": "7.3.1", - "resolved": "https://registry.npmjs.org/promise/-/promise-7.3.1.tgz", - "integrity": "sha512-nolQXZ/4L+bP/UGlkfaIujX9BKxGwmQ9OT4mOt5yvy8iK1h3wqTEJCijzGANTCCl9nWjY41juyAn2K3Q1hLLTg==", - "requires": { + "license": "MIT", + "dependencies": { "asap": "~2.0.3" } }, - "promise-inflight": { + "node_modules/promise-inflight": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/promise-inflight/-/promise-inflight-1.0.1.tgz", - "integrity": "sha1-mEcocL8igTL8vdhoEputEsPAKeM=", - "dev": true + "dev": true, + "license": "ISC" }, - "promise-retry": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/promise-retry/-/promise-retry-1.1.1.tgz", - "integrity": "sha1-ZznpaOMFHaIM5kl/srUPaRHfPW0=", + "node_modules/promise-retry": { + "version": "2.0.1", "dev": true, - "requires": { - "err-code": "^1.0.0", - "retry": "^0.10.0" - }, + "license": "MIT", "dependencies": { - "retry": { - "version": "0.10.1", - "resolved": "https://registry.npmjs.org/retry/-/retry-0.10.1.tgz", - "integrity": "sha1-52OI0heZLCUnUCQdPTlW/tmNj/Q=", - "dev": true - } + "err-code": "^2.0.2", + "retry": "^0.12.0" + }, + "engines": { + "node": ">=10" } }, - "prop-types": { + "node_modules/prop-types": { "version": "15.8.1", - "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.8.1.tgz", - "integrity": "sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==", - "requires": { + "license": "MIT", + "dependencies": { "loose-envify": "^1.4.0", "object-assign": "^4.1.1", "react-is": "^16.13.1" } }, - "property-information": { + "node_modules/property-information": { "version": "5.6.0", - "resolved": "https://registry.npmjs.org/property-information/-/property-information-5.6.0.tgz", - "integrity": "sha512-YUHSPk+A30YPv+0Qf8i9Mbfe/C0hdPXk1s1jPVToV8pk8BQtpw10ct89Eo7OWkutrwqvT0eicAxlOg3dOAu8JA==", - "requires": { + "license": "MIT", + "dependencies": { "xtend": "^4.0.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" } }, - "protoduck": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/protoduck/-/protoduck-5.0.1.tgz", - "integrity": "sha512-WxoCeDCoCBY55BMvj4cAEjdVUFGRWed9ZxPlqTKYyw1nDDTQ4pqmnIMAGfJlg7Dx35uB/M+PHJPTmGOvaCaPTg==", - "dev": true, - "requires": { - "genfun": "^5.0.0" - } - }, - "protractor": { - "version": "5.4.4", - "resolved": "https://registry.npmjs.org/protractor/-/protractor-5.4.4.tgz", - "integrity": "sha512-BaL4vePgu3Vfa/whvTUAlgaCAId4uNSGxIFSCXMgj7LMYENPWLp85h5RBi9pdpX/bWQ8SF6flP7afmi2TC4eHw==", - "dev": true, - "requires": { - "@types/q": "^0.0.32", - "@types/selenium-webdriver": "^3.0.0", - "blocking-proxy": "^1.0.0", - "browserstack": "^1.5.1", - "chalk": "^1.1.3", - "glob": "^7.0.3", - "jasmine": "2.8.0", - "jasminewd2": "^2.1.0", - "q": "1.4.1", - "saucelabs": "^1.5.0", - "selenium-webdriver": "3.6.0", - "source-map-support": "~0.4.0", - "webdriver-js-extender": "2.1.0", - "webdriver-manager": "^12.0.6", - "yargs": "^12.0.5" - }, - "dependencies": { - "@types/q": { - "version": "0.0.32", - "resolved": "https://registry.npmjs.org/@types/q/-/q-0.0.32.tgz", - "integrity": "sha1-vShOV8hPEyXacCur/IKlMoGQwMU=", - "dev": true - }, - "ansi-regex": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.1.tgz", - "integrity": "sha512-+O9Jct8wf++lXxxFc4hc8LsjaSq0HFzzL7cVsw8pRDIPdjKD2mT4ytDZlLuSBZ4cLKZFXIrMGO7DbQCtMJJMKw==", - "dev": true - }, - "ansi-styles": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", - "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", - "dev": true - }, - "array-union": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz", - "integrity": "sha1-mjRBDk9OPaI96jdb5b5w8kd47Dk=", - "dev": true, - "requires": { - "array-uniq": "^1.0.1" - } - }, - "chalk": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", - "dev": true, - "requires": { - "ansi-styles": "^2.2.1", - "escape-string-regexp": "^1.0.2", - "has-ansi": "^2.0.0", - "strip-ansi": "^3.0.0", - "supports-color": "^2.0.0" - } - }, - "cliui": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-4.1.0.tgz", - "integrity": "sha512-4FG+RSG9DL7uEwRUZXZn3SS34DiDPfzP0VOiEwtUWlE+AR2EIg+hSyvrIgUUfhdgR/UkAeW2QHgeP+hWrXs7jQ==", - "dev": true, - "requires": { - "string-width": "^2.1.1", - "strip-ansi": "^4.0.0", - "wrap-ansi": "^2.0.0" - }, - "dependencies": { - "strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", - "dev": true, - "requires": { - "ansi-regex": "^3.0.0" - } - } - } - }, - "del": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/del/-/del-2.2.2.tgz", - "integrity": "sha1-wSyYHQZ4RshLyvhiz/kw2Qf/0ag=", - "dev": true, - "requires": { - "globby": "^5.0.0", - "is-path-cwd": "^1.0.0", - "is-path-in-cwd": "^1.0.0", - "object-assign": "^4.0.1", - "pify": "^2.0.0", - "pinkie-promise": "^2.0.0", - "rimraf": "^2.2.8" - } - }, - "get-caller-file": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.3.tgz", - "integrity": "sha512-3t6rVToeoZfYSGd8YoLFR2DJkiQrIiUrGcjvFX2mDw3bn6k2OtwHN0TNCLbBO+w8qTvimhDkv+LSscbJY1vE6w==", - "dev": true - }, - "globby": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/globby/-/globby-5.0.0.tgz", - "integrity": "sha1-69hGZ8oNuzMLmbz8aOrCvFQ3Dg0=", - "dev": true, - "requires": { - "array-union": "^1.0.1", - "arrify": "^1.0.0", - "glob": "^7.0.3", - "object-assign": "^4.0.1", - "pify": "^2.0.0", - "pinkie-promise": "^2.0.0" - } - }, - "is-path-cwd": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-path-cwd/-/is-path-cwd-1.0.0.tgz", - "integrity": "sha1-0iXsIxMuie3Tj9p2dHLmLmXxEG0=", - "dev": true - }, - "is-path-in-cwd": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-path-in-cwd/-/is-path-in-cwd-1.0.1.tgz", - "integrity": "sha512-FjV1RTW48E7CWM7eE/J2NJvAEEVektecDBVBE5Hh3nM1Jd0kvhHtX68Pr3xsDf857xt3Y4AkwVULK1Vku62aaQ==", - "dev": true, - "requires": { - "is-path-inside": "^1.0.0" - } - }, - "is-path-inside": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-1.0.1.tgz", - "integrity": "sha1-jvW33lBDej/cprToZe96pVy0gDY=", - "dev": true, - "requires": { - "path-is-inside": "^1.0.1" - } - }, - "pify": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", - "dev": true - }, - "q": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/q/-/q-1.4.1.tgz", - "integrity": "sha1-VXBbzZPF82c1MMLCy8DCs63cKG4=", - "dev": true - }, - "require-main-filename": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-1.0.1.tgz", - "integrity": "sha1-l/cXtp1IeE9fUmpsWqj/3aBVpNE=", - "dev": true - }, - "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" - } - }, - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "dev": true - }, - "source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", - "dev": true - }, - "source-map-support": { - "version": "0.4.18", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.4.18.tgz", - "integrity": "sha512-try0/JqxPLF9nOjvSta7tVondkP5dwgyLDjVoyMDlmjugT2lRZ1OfsrYTkCd2hkDnJTKRbO/Rl3orm8vlsUzbA==", - "dev": true, - "requires": { - "source-map": "^0.5.6" - } - }, - "string-width": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", - "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", - "dev": true, - "requires": { - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^4.0.0" - }, - "dependencies": { - "strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", - "dev": true, - "requires": { - "ansi-regex": "^3.0.0" - } - } - } - }, - "supports-color": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", - "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", - "dev": true - }, - "webdriver-manager": { - "version": "12.1.8", - "resolved": "https://registry.npmjs.org/webdriver-manager/-/webdriver-manager-12.1.8.tgz", - "integrity": "sha512-qJR36SXG2VwKugPcdwhaqcLQOD7r8P2Xiv9sfNbfZrKBnX243iAkOueX1yAmeNgIKhJ3YAT/F2gq6IiEZzahsg==", - "dev": true, - "requires": { - "adm-zip": "^0.4.9", - "chalk": "^1.1.1", - "del": "^2.2.0", - "glob": "^7.0.3", - "ini": "^1.3.4", - "minimist": "^1.2.0", - "q": "^1.4.1", - "request": "^2.87.0", - "rimraf": "^2.5.2", - "semver": "^5.3.0", - "xml2js": "^0.4.17" - } - }, - "wrap-ansi": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-2.1.0.tgz", - "integrity": "sha1-2Pw9KE3QV5T+hJc8rs3Rz4JP3YU=", - "dev": true, - "requires": { - "string-width": "^1.0.1", - "strip-ansi": "^3.0.1" - }, - "dependencies": { - "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=", - "dev": true, - "requires": { - "number-is-nan": "^1.0.0" - } - }, - "string-width": { - "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", - "strip-ansi": "^3.0.0" - } - } - } - }, - "yargs": { - "version": "12.0.5", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-12.0.5.tgz", - "integrity": "sha512-Lhz8TLaYnxq/2ObqHDql8dX8CJi97oHxrjUcYtzKbbykPtVW9WB+poxI+NM2UIzsMgNCZTIf0AQwsjK5yMAqZw==", - "dev": true, - "requires": { - "cliui": "^4.0.0", - "decamelize": "^1.2.0", - "find-up": "^3.0.0", - "get-caller-file": "^1.0.1", - "os-locale": "^3.0.0", - "require-directory": "^2.1.1", - "require-main-filename": "^1.0.1", - "set-blocking": "^2.0.0", - "string-width": "^2.0.0", - "which-module": "^2.0.0", - "y18n": "^3.2.1 || ^4.0.0", - "yargs-parser": "^11.1.1" - } - }, - "yargs-parser": { - "version": "11.1.1", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-11.1.1.tgz", - "integrity": "sha512-C6kB/WJDiaxONLJQnF8ccx9SEeoTTLek8RVbaOIsrAUS8VrBEXfmeSnCZxygc+XC2sNMBIwOOnfcxiynjHsVSQ==", - "dev": true, - "requires": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" - } - } - } - }, - "proxy-addr": { + "node_modules/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==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "forwarded": "0.2.0", "ipaddr.js": "1.9.1" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/proxy-addr/node_modules/ipaddr.js": { + "version": "1.9.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.10" } }, - "proxy-from-env": { + "node_modules/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==" + "license": "MIT" }, - "prr": { + "node_modules/prr": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/prr/-/prr-1.0.1.tgz", - "integrity": "sha1-0/wRS6BplaRexok/SEzrHXj19HY=", - "dev": true - }, - "pseudomap": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", - "integrity": "sha1-8FKijacOYYkX7wqKw0wa5aaChrM=", - "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==", - "dev": true - }, - "public-encrypt": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/public-encrypt/-/public-encrypt-4.0.3.tgz", - "integrity": "sha512-zVpa8oKZSz5bTMTFClc1fQOnyyEzpl5ozpi1B5YcvBrdohMjH2rfsBtyXcuNuwjsDIXmBYlF2N5FlJYhR29t8Q==", - "dev": true, - "requires": { - "bn.js": "^4.1.0", - "browserify-rsa": "^4.0.0", - "create-hash": "^1.1.0", - "parse-asn1": "^5.0.0", - "randombytes": "^2.0.1", - "safe-buffer": "^5.1.2" - }, - "dependencies": { - "bn.js": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", - "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", - "dev": true - } - } + "dev": true, + "license": "MIT", + "optional": true }, - "pump": { + "node_modules/pump": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", - "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", - "requires": { + "license": "MIT", + "optional": true, + "dependencies": { "end-of-stream": "^1.1.0", "once": "^1.3.1" } }, - "pumpify": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/pumpify/-/pumpify-1.5.1.tgz", - "integrity": "sha512-oClZI37HvuUJJxSKKrC17bZ9Cu0ZYhEAGPsPUy9KlMUmv9dKX2o77RUmq7f3XjIxbwyGwYzbzQ1L2Ks8sIradQ==", - "dev": true, - "requires": { - "duplexify": "^3.6.0", - "inherits": "^2.0.3", - "pump": "^2.0.0" - }, - "dependencies": { - "pump": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/pump/-/pump-2.0.1.tgz", - "integrity": "sha512-ruPMNRkN3MHP1cWJc9OWr+T/xDP0jhXYCLfJcBuX54hhfIBnaQmAUMfDcG4DM5UMWByBbJY69QSphm3jtDKIkA==", - "dev": true, - "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==" - }, - "pupa": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/pupa/-/pupa-2.1.1.tgz", - "integrity": "sha512-l1jNAspIBSFqbT+y+5FosojNpVpF94nlI+wDUpqP9enwOTfHx9f0gh5nB96vl+6yTpsJsypeNrwfzPrKuHB41A==", + "node_modules/punycode": { + "version": "1.4.1", "dev": true, - "requires": { - "escape-goat": "^2.0.0" - } - }, - "q": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/q/-/q-1.5.1.tgz", - "integrity": "sha1-fjL3W0E4EpHQRhHxvxQQmsAGUdc=", - "dev": true + "license": "MIT" }, - "qjobs": { + "node_modules/qjobs": { "version": "1.2.0", - "resolved": "https://registry.npmjs.org/qjobs/-/qjobs-1.2.0.tgz", - "integrity": "sha512-8YOJEHtxpySA3fFDyCRxA+UUV+fA+rTWnuWvylOK/NCjhY+b4ocCtmu8TtsWb+mYeU+GCHf/S66KZF/AsteKHg==", - "dev": true - }, - "qs": { - "version": "6.11.1", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.11.1.tgz", - "integrity": "sha512-0wsrzgTz/kAVIeuxSjnpGC56rzYtr6JT/2BwEvMaPhFIoYa1aGO8LbzuU1R0uUYQkLpWBTOj0l/CLAJB64J6nQ==", - "requires": { - "side-channel": "^1.0.4" - } - }, - "query-string": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/query-string/-/query-string-4.3.4.tgz", - "integrity": "sha1-u7aTucqRXCMlFbIosaArYJBD2+s=", "dev": true, - "requires": { - "object-assign": "^4.1.0", - "strict-uri-encode": "^1.0.0" + "license": "MIT", + "engines": { + "node": ">=0.9" } }, - "querystring": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/querystring/-/querystring-0.2.0.tgz", - "integrity": "sha1-sgmEkgO7Jd+CDadW50cAWHhSFiA=" - }, - "querystring-es3": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/querystring-es3/-/querystring-es3-0.2.1.tgz", - "integrity": "sha1-nsYfeQSYdXB9aUFFlv2Qek1xHnM=", - "dev": true + "node_modules/qs": { + "version": "6.11.0", + "dev": true, + "license": "BSD-3-Clause", + "dependencies": { + "side-channel": "^1.0.4" + }, + "engines": { + "node": ">=0.6" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, - "querystringify": { + "node_modules/querystringify": { "version": "2.2.0", - "resolved": "https://registry.npmjs.org/querystringify/-/querystringify-2.2.0.tgz", - "integrity": "sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ==" + "license": "MIT" }, - "queue-microtask": { + "node_modules/queue-microtask": { "version": "1.2.3", - "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", - "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", - "dev": true + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT" }, - "raf": { + "node_modules/raf": { "version": "3.4.1", - "resolved": "https://registry.npmjs.org/raf/-/raf-3.4.1.tgz", - "integrity": "sha512-Sq4CW4QhwOHE8ucn6J34MqtZCeWFP2aQSmrlroYgqAV1PjStIhJXxYuTgUIfkEk7zTLjmIjLmU5q+fbD1NnOJA==", - "requires": { - "performance-now": "^2.1.0" - }, + "license": "MIT", "dependencies": { - "performance-now": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", - "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=" - } + "performance-now": "^2.1.0" } }, - "ramda": { - "version": "0.28.0", - "resolved": "https://registry.npmjs.org/ramda/-/ramda-0.28.0.tgz", - "integrity": "sha512-9QnLuG/kPVgWvMQ4aODhsBUFKOUmnbUnsSXACv+NCQZcHbeb+v8Lodp8OVxtRULN1/xOyYLLaL6npE6dMq5QTA==" + "node_modules/raf/node_modules/performance-now": { + "version": "2.1.0", + "license": "MIT" }, - "ramda-adjunct": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/ramda-adjunct/-/ramda-adjunct-3.4.0.tgz", - "integrity": "sha512-qKRgqwZzJUZmPJfGK8/uLVxQXkiftKhW6FW9NUCUlQrzsBUZBvFAZUxwH7nTRwDMg+ChRU69rVVuS/4EUgtuIg==" + "node_modules/ramda": { + "version": "0.30.1", + "license": "MIT", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/ramda" + } }, - "randombytes": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", - "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", - "requires": { - "safe-buffer": "^5.1.0" + "node_modules/ramda-adjunct": { + "version": "5.1.0", + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.10.3" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/ramda-adjunct" + }, + "peerDependencies": { + "ramda": ">= 0.30.0" } }, - "randomfill": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/randomfill/-/randomfill-1.0.4.tgz", - "integrity": "sha512-87lcbR8+MhcWcUiQ+9e+Rwx8MyR2P7qnt15ynUlbm3TU/fjbgz4GsvfSUDTemtCCtVCqb4ZcEFlyPNTh9bBTLw==", - "dev": true, - "requires": { - "randombytes": "^2.0.5", + "node_modules/randombytes": { + "version": "2.1.0", + "license": "MIT", + "dependencies": { "safe-buffer": "^5.1.0" } }, - "range-parser": { + "node_modules/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==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.6" + } }, - "raw-body": { - "version": "2.4.3", - "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.4.3.tgz", - "integrity": "sha512-UlTNLIcu0uzb4D2f4WltY6cVjLi+/jEN4lgEUj3E04tpMDpUlkBo/eSn6zou9hum2VMNpCCUone0O0WeJim07g==", + "node_modules/raw-body": { + "version": "2.5.2", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "bytes": "3.1.2", - "http-errors": "1.8.1", + "http-errors": "2.0.0", "iconv-lite": "0.4.24", "unpipe": "1.0.0" }, - "dependencies": { - "bytes": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", - "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", - "dev": true - }, - "iconv-lite": { - "version": "0.4.24", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", - "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", - "dev": true, - "requires": { - "safer-buffer": ">= 2.1.2 < 3" - } - } - } - }, - "raw-loader": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/raw-loader/-/raw-loader-4.0.0.tgz", - "integrity": "sha512-iINUOYvl1cGEmfoaLjnZXt4bKfT2LJnZZib5N/LLyAphC+Dd11vNP9CNVb38j+SAJpFI1uo8j9frmih53ASy7Q==", - "dev": true, - "requires": { - "loader-utils": "^1.2.3", - "schema-utils": "^2.5.0" - }, - "dependencies": { - "json5": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", - "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", - "dev": true, - "requires": { - "minimist": "^1.2.0" - } - }, - "loader-utils": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.0.tgz", - "integrity": "sha512-qH0WSMBtn/oHuwjy/NucEgbx5dbxxnxup9s4PVXJUDHZBQY+s0NWA9rJf53RBnQZxfch7euUui7hpoAPvALZdA==", - "dev": true, - "requires": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^1.0.1" - } - } + "engines": { + "node": ">= 0.8" } }, - "rc": { + "node_modules/rc": { "version": "1.2.8", - "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", - "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==", - "requires": { + "license": "(BSD-2-Clause OR MIT OR Apache-2.0)", + "optional": true, + "dependencies": { "deep-extend": "^0.6.0", "ini": "~1.3.0", "minimist": "^1.2.0", "strip-json-comments": "~2.0.1" + }, + "bin": { + "rc": "cli.js" } }, - "react": { + "node_modules/rc/node_modules/ini": { + "version": "1.3.8", + "license": "ISC", + "optional": true + }, + "node_modules/react": { "version": "15.7.0", - "resolved": "https://registry.npmjs.org/react/-/react-15.7.0.tgz", - "integrity": "sha512-5/MMRYmpmM0sMTHGLossnJCrmXQIiJilD6y3YN3TzAwGFj6zdnMtFv6xmi65PHKRV+pehIHpT7oy67Sr6s9AHA==", - "requires": { + "license": "MIT", + "dependencies": { "create-react-class": "^15.6.0", "fbjs": "^0.8.9", "loose-envify": "^1.1.0", "object-assign": "^4.1.0", "prop-types": "^15.5.10" + }, + "engines": { + "node": ">=0.10.0" } }, - "react-copy-to-clipboard": { + "node_modules/react-copy-to-clipboard": { "version": "5.0.3", - "resolved": "https://registry.npmjs.org/react-copy-to-clipboard/-/react-copy-to-clipboard-5.0.3.tgz", - "integrity": "sha512-9S3j+m+UxDZOM0Qb8mhnT/rMR0NGSrj9A/073yz2DSxPMYhmYFBMYIdI2X4o8AjOjyFsSNxDRnCX6s/gRxpriw==", - "requires": { + "license": "MIT", + "dependencies": { "copy-to-clipboard": "^3", "prop-types": "^15.5.8" + }, + "peerDependencies": { + "react": "^15.3.0 || ^16.0.0 || ^17.0.0" } }, - "react-debounce-input": { + "node_modules/react-debounce-input": { "version": "3.3.0", - "resolved": "https://registry.npmjs.org/react-debounce-input/-/react-debounce-input-3.3.0.tgz", - "integrity": "sha512-VEqkvs8JvY/IIZvh71Z0TC+mdbxERvYF33RcebnodlsUZ8RSgyKe2VWaHXv4+/8aoOgXLxWrdsYs2hDhcwbUgA==", - "requires": { + "license": "MIT", + "dependencies": { "lodash.debounce": "^4", "prop-types": "^15.8.1" + }, + "peerDependencies": { + "react": "^15.3.0 || 16 || 17 || 18" } }, - "react-dom": { + "node_modules/react-dom": { "version": "15.7.0", - "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-15.7.0.tgz", - "integrity": "sha512-mpjXqC2t1FuYsILOLCj0kg6pbg460byZkVA/80VtDmKU/pYmoTdHOtaMcTRIDiyXLz4sIur0cQ04nOC6iGndJg==", - "requires": { + "license": "MIT", + "dependencies": { "fbjs": "^0.8.9", "loose-envify": "^1.1.0", "object-assign": "^4.1.0", "prop-types": "^15.5.10" + }, + "peerDependencies": { + "react": "^15.7.0" } }, - "react-immutable-proptypes": { + "node_modules/react-immutable-proptypes": { "version": "2.2.0", - "resolved": "https://registry.npmjs.org/react-immutable-proptypes/-/react-immutable-proptypes-2.2.0.tgz", - "integrity": "sha512-Vf4gBsePlwdGvSZoLSBfd4HAP93HDauMY4fDjXhreg/vg6F3Fj/MXDNyTbltPC/xZKmZc+cjLu3598DdYK6sgQ==", - "requires": { + "license": "MIT", + "dependencies": { "invariant": "^2.2.2" + }, + "peerDependencies": { + "immutable": ">=3.6.2" } }, - "react-immutable-pure-component": { + "node_modules/react-immutable-pure-component": { "version": "1.2.4", - "resolved": "https://registry.npmjs.org/react-immutable-pure-component/-/react-immutable-pure-component-1.2.4.tgz", - "integrity": "sha512-zPXaFWxaF4+ztVMFNMlCFkrhjpb9MPcL3JnXUpb6wKGF1+vBoSgClFbpbOsZAji7gm+RHBE24H44Lday2xxPjw==" + "license": "MIT", + "peerDependencies": { + "immutable": ">= 3", + "react": ">= 15", + "react-dom": ">= 15" + } }, - "react-inspector": { + "node_modules/react-inspector": { "version": "2.3.1", - "resolved": "https://registry.npmjs.org/react-inspector/-/react-inspector-2.3.1.tgz", - "integrity": "sha512-tUUK7t3KWgZEIUktOYko5Ic/oYwvjEvQUFAGC1UeMeDaQ5za2yZFtItJa2RTwBJB//NxPr000WQK6sEbqC6y0Q==", - "requires": { + "license": "MIT", + "dependencies": { "babel-runtime": "^6.26.0", "is-dom": "^1.0.9", "prop-types": "^15.6.1" + }, + "peerDependencies": { + "react": "^0.14.0 || ^15.0.0 || ^16.0.0" } }, - "react-is": { + "node_modules/react-is": { "version": "16.13.1", - "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", - "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==" + "license": "MIT" }, - "react-motion": { + "node_modules/react-motion": { "version": "0.5.2", - "resolved": "https://registry.npmjs.org/react-motion/-/react-motion-0.5.2.tgz", - "integrity": "sha512-9q3YAvHoUiWlP3cK0v+w1N5Z23HXMj4IF4YuvjvWegWqNPfLXsOBE/V7UvQGpXxHFKRQQcNcVQE31g9SB/6qgQ==", - "requires": { + "license": "MIT", + "dependencies": { "performance-now": "^0.2.0", "prop-types": "^15.5.8", "raf": "^3.1.0" + }, + "peerDependencies": { + "react": "^0.14.9 || ^15.3.0 || ^16.0.0" } }, - "react-redux": { + "node_modules/react-redux": { "version": "4.4.10", - "resolved": "https://registry.npmjs.org/react-redux/-/react-redux-4.4.10.tgz", - "integrity": "sha512-tjL0Bmpkj75Td0k+lXlF8Fc8a9GuXFv/3ahUOCXExWs/jhsKiQeTffdH0j5byejCGCRL4tvGFYlrwBF1X/Aujg==", - "requires": { + "license": "MIT", + "dependencies": { "create-react-class": "^15.5.1", "hoist-non-react-statics": "^3.3.0", "invariant": "^2.0.0", "lodash": "^4.17.11", "loose-envify": "^1.4.0", "prop-types": "^15.7.2" + }, + "peerDependencies": { + "react": "^0.14.0 || ^15.0.0-0 || ^15.4.0-0 || ^16.0.0-0", + "redux": "^2.0.0 || ^3.0.0" } }, - "react-syntax-highlighter": { + "node_modules/react-syntax-highlighter": { "version": "15.5.0", - "resolved": "https://registry.npmjs.org/react-syntax-highlighter/-/react-syntax-highlighter-15.5.0.tgz", - "integrity": "sha512-+zq2myprEnQmH5yw6Gqc8lD55QHnpKaU8TOcFeC/Lg/MQSs8UknEA0JC4nTZGFAXC2J2Hyj/ijJ7NlabyPi2gg==", - "requires": { + "license": "MIT", + "dependencies": { "@babel/runtime": "^7.3.1", "highlight.js": "^10.4.1", "lowlight": "^1.17.0", "prismjs": "^1.27.0", "refractor": "^3.6.0" + }, + "peerDependencies": { + "react": ">= 0.14.0" } }, - "read-cache": { + "node_modules/read-cache": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/read-cache/-/read-cache-1.0.0.tgz", - "integrity": "sha1-5mTvMRYRZsl1HNvo28+GtftY93Q=", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "pify": "^2.3.0" - }, + } + }, + "node_modules/read-package-json": { + "version": "5.0.2", + "dev": true, + "license": "ISC", "dependencies": { - "pify": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", - "dev": true - } + "glob": "^8.0.1", + "json-parse-even-better-errors": "^2.3.1", + "normalize-package-data": "^4.0.0", + "npm-normalize-package-bin": "^2.0.0" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "read-package-json": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/read-package-json/-/read-package-json-2.1.2.tgz", - "integrity": "sha512-D1KmuLQr6ZSJS0tW8hf3WGpRlwszJOXZ3E8Yd/DNRaM5d+1wVRZdHlpGBLAuovjr28LbWvjpWkBHMxpRGGjzNA==", + "node_modules/read-package-json-fast": { + "version": "2.0.3", "dev": true, - "requires": { - "glob": "^7.1.1", + "license": "ISC", + "dependencies": { "json-parse-even-better-errors": "^2.3.0", - "normalize-package-data": "^2.0.0", - "npm-normalize-package-bin": "^1.0.0" + "npm-normalize-package-bin": "^1.0.1" + }, + "engines": { + "node": ">=10" } }, - "read-package-tree": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/read-package-tree/-/read-package-tree-5.3.1.tgz", - "integrity": "sha512-mLUDsD5JVtlZxjSlPPx1RETkNjjvQYuweKwNVt1Sn8kP5Jh44pvYuUHCp6xSVDZWbNxVxG5lyZJ921aJH61sTw==", + "node_modules/read-package-json/node_modules/npm-normalize-package-bin": { + "version": "2.0.0", "dev": true, - "requires": { - "read-package-json": "^2.0.0", - "readdir-scoped-modules": "^1.0.0", - "util-promisify": "^2.1.0" + "license": "ISC", + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "read-pkg": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-5.2.0.tgz", - "integrity": "sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==", + "node_modules/read-pkg": { + "version": "3.0.0", "dev": true, - "requires": { - "@types/normalize-package-data": "^2.4.0", - "normalize-package-data": "^2.5.0", - "parse-json": "^5.0.0", - "type-fest": "^0.6.0" - }, - "dependencies": { - "parse-json": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", - "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.0.0", - "error-ex": "^1.3.1", - "json-parse-even-better-errors": "^2.3.0", - "lines-and-columns": "^1.1.6" - } - }, - "type-fest": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.6.0.tgz", - "integrity": "sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==", - "dev": true - } + "license": "MIT", + "dependencies": { + "load-json-file": "^4.0.0", + "normalize-package-data": "^2.3.2", + "path-type": "^3.0.0" + }, + "engines": { + "node": ">=4" } }, - "read-pkg-up": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-5.0.0.tgz", - "integrity": "sha512-XBQjqOBtTzyol2CpsQOw8LHV0XbDZVG7xMMjmXAJomlVY03WOBRmYgDJETlvcg0H63AJvPRwT7GFi5rvOzUOKg==", + "node_modules/read-pkg/node_modules/hosted-git-info": { + "version": "2.8.9", + "dev": true, + "license": "ISC" + }, + "node_modules/read-pkg/node_modules/normalize-package-data": { + "version": "2.5.0", "dev": true, - "requires": { - "find-up": "^3.0.0", - "read-pkg": "^5.0.0" + "license": "BSD-2-Clause", + "dependencies": { + "hosted-git-info": "^2.1.4", + "resolve": "^1.10.0", + "semver": "2 || 3 || 4 || 5", + "validate-npm-package-license": "^3.0.1" } }, - "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" - }, + "node_modules/read-pkg/node_modules/path-type": { + "version": "3.0.0", + "dev": true, + "license": "MIT", "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==" - } + "pify": "^3.0.0" + }, + "engines": { + "node": ">=4" } }, - "readdir-scoped-modules": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/readdir-scoped-modules/-/readdir-scoped-modules-1.1.0.tgz", - "integrity": "sha512-asaikDeqAQg7JifRsZn1NJZXo9E+VwlyCfbkZhwyISinqk5zNS6266HS5kah6P0SaQKGF6SkNnZVHUzHFYxYDw==", + "node_modules/read-pkg/node_modules/pify": { + "version": "3.0.0", "dev": true, - "requires": { - "debuglog": "^1.0.1", - "dezalgo": "^1.0.0", - "graceful-fs": "^4.1.2", - "once": "^1.3.0" + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/read-pkg/node_modules/semver": { + "version": "5.7.2", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/readable-stream": { + "version": "1.0.34", + "dev": true, + "license": "MIT", + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.1", + "isarray": "0.0.1", + "string_decoder": "~0.10.x" } }, - "readdirp": { + "node_modules/readdirp": { "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", - "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "picomatch": "^2.2.1" + }, + "engines": { + "node": ">=8.10.0" } }, - "recast": { + "node_modules/recast": { "version": "0.11.23", - "resolved": "https://registry.npmjs.org/recast/-/recast-0.11.23.tgz", - "integrity": "sha1-RR/TAEqx5N+bTktmN2sqIZEkYtM=", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "ast-types": "0.9.6", "esprima": "~3.1.0", "private": "~0.1.5", "source-map": "~0.5.0" }, - "dependencies": { - "esprima": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-3.1.3.tgz", - "integrity": "sha1-/cpRzuYTOJXjyI1TXOSdv/YqRjM=", - "dev": true - }, - "source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", - "dev": true - } + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/recast/node_modules/esprima": { + "version": "3.1.3", + "dev": true, + "license": "BSD-2-Clause", + "bin": { + "esparse": "bin/esparse.js", + "esvalidate": "bin/esvalidate.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/recast/node_modules/source-map": { + "version": "0.5.7", + "dev": true, + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.10.0" } }, - "redux": { + "node_modules/redux": { "version": "3.7.2", - "resolved": "https://registry.npmjs.org/redux/-/redux-3.7.2.tgz", - "integrity": "sha512-pNqnf9q1hI5HHZRBkj3bAngGZW/JMCmexDlOxw4XagXY2o1327nHH54LoTjiPJ0gizoqPDRqWyX/00g0hD6w+A==", - "requires": { + "license": "MIT", + "dependencies": { "lodash": "^4.2.1", "lodash-es": "^4.2.1", "loose-envify": "^1.1.0", "symbol-observable": "^1.0.3" } }, - "redux-immutable": { + "node_modules/redux-immutable": { "version": "3.1.0", - "resolved": "https://registry.npmjs.org/redux-immutable/-/redux-immutable-3.1.0.tgz", - "integrity": "sha1-yvvWhuBxEmERm5wolgk13EeknQo=", - "requires": { + "license": "BSD-3-Clause", + "dependencies": { "immutable": "^3.8.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==", - "dev": true + "node_modules/redux-immutable/node_modules/immutable": { + "version": "3.8.2", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/redux/node_modules/symbol-observable": { + "version": "1.2.0", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } }, - "refractor": { + "node_modules/reflect-metadata": { + "version": "0.1.14", + "dev": true, + "license": "Apache-2.0" + }, + "node_modules/refractor": { "version": "3.6.0", - "resolved": "https://registry.npmjs.org/refractor/-/refractor-3.6.0.tgz", - "integrity": "sha512-MY9W41IOWxxk31o+YvFCNyNzdkc9M20NoZK5vq6jkv4I/uh2zkWcfudj0Q1fovjUQJrNewS9NMzeTtqPf+n5EA==", - "requires": { + "license": "MIT", + "dependencies": { "hastscript": "^6.0.0", "parse-entities": "^2.0.0", "prismjs": "~1.27.0" }, - "dependencies": { - "prismjs": { - "version": "1.27.0", - "resolved": "https://registry.npmjs.org/prismjs/-/prismjs-1.27.0.tgz", - "integrity": "sha512-t13BGPUlFDR7wRB5kQDG4jjl7XeuH6jbJGt11JHPL96qwsEHNX2+68tFXqc1/k+/jALsbSWJKUOT/hcYAZ5LkA==" - } + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/refractor/node_modules/prismjs": { + "version": "1.27.0", + "license": "MIT", + "engines": { + "node": ">=6" } }, - "regenerate": { + "node_modules/regenerate": { "version": "1.4.2", - "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.2.tgz", - "integrity": "sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==", - "dev": true + "dev": true, + "license": "MIT" }, - "regenerate-unicode-properties": { - "version": "10.0.1", - "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-10.0.1.tgz", - "integrity": "sha512-vn5DU6yg6h8hP/2OkQo3K7uVILvY4iu0oI4t3HFa81UPkhGJwkRwM10JEc3upjdhHjs/k8GJY1sRBhk5sr69Bw==", + "node_modules/regenerate-unicode-properties": { + "version": "10.1.1", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "regenerate": "^1.4.2" + }, + "engines": { + "node": ">=4" } }, - "regenerator-runtime": { + "node_modules/regenerator-runtime": { "version": "0.13.9", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.9.tgz", - "integrity": "sha512-p3VT+cOEgxFsRRA9X4lkI1E+k2/CtnKtU4gcxyaCUreilL/vqI6CdZ3wxVUx3UOUg+gnUOQQcRI7BmSI656MYA==" + "license": "MIT" }, - "regenerator-transform": { - "version": "0.15.0", - "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.15.0.tgz", - "integrity": "sha512-LsrGtPmbYg19bcPHwdtmXwbW+TqNvtY4riE3P83foeHRroMbH6/2ddFBfab3t7kbzc7v7p4wbkIecHImqt0QNg==", + "node_modules/regenerator-transform": { + "version": "0.15.2", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "@babel/runtime": "^7.8.4" } }, - "regex-not": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/regex-not/-/regex-not-1.0.2.tgz", - "integrity": "sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A==", + "node_modules/regex-parser": { + "version": "2.3.0", "dev": true, - "requires": { - "extend-shallow": "^3.0.2", - "safe-regex": "^1.1.0" - } + "license": "MIT" }, - "regexp.prototype.flags": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.4.2.tgz", - "integrity": "sha512-Ynz8fTQW5/1elh+jWU2EDDzeoNbD0OQ0R+D1VJU5ATOkUaro4A9YEkdN2ODQl/8UQFPPpZNw91fOcLFamM7Pww==", + "node_modules/regexp.prototype.flags": { + "version": "1.5.2", "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3" + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.6", + "define-properties": "^1.2.1", + "es-errors": "^1.3.0", + "set-function-name": "^2.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "regexpu-core": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-5.0.1.tgz", - "integrity": "sha512-CriEZlrKK9VJw/xQGJpQM5rY88BtuL8DM+AEwvcThHilbxiTAy8vq4iJnd2tqq8wLmjbGZzP7ZcKFjbGkmEFrw==", + "node_modules/regexpu-core": { + "version": "5.3.2", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { + "@babel/regjsgen": "^0.8.0", "regenerate": "^1.4.2", - "regenerate-unicode-properties": "^10.0.1", - "regjsgen": "^0.6.0", - "regjsparser": "^0.8.2", + "regenerate-unicode-properties": "^10.1.0", + "regjsparser": "^0.9.1", "unicode-match-property-ecmascript": "^2.0.0", - "unicode-match-property-value-ecmascript": "^2.0.0" + "unicode-match-property-value-ecmascript": "^2.1.0" + }, + "engines": { + "node": ">=4" } }, - "registry-auth-token": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/registry-auth-token/-/registry-auth-token-4.2.1.tgz", - "integrity": "sha512-6gkSb4U6aWJB4SF2ZvLb76yCBjcvufXBqvvEx1HbmKPkutswjW1xNVRY0+daljIYRbogN7O0etYSlbiaEQyMyw==", + "node_modules/regjsparser": { + "version": "0.9.1", "dev": true, - "requires": { - "rc": "^1.2.8" + "license": "BSD-2-Clause", + "dependencies": { + "jsesc": "~0.5.0" + }, + "bin": { + "regjsparser": "bin/parser" } }, - "registry-url": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/registry-url/-/registry-url-5.1.0.tgz", - "integrity": "sha512-8acYXXTI0AkQv6RAOjE3vOaIXZkT9wo4LOFbBKYQEEnnMNBpKqdUrI6S4NT0KPIo/WVvJ5tE/X5LF/TQUf0ekw==", + "node_modules/regjsparser/node_modules/jsesc": { + "version": "0.5.0", "dev": true, - "requires": { - "rc": "^1.2.8" + "bin": { + "jsesc": "bin/jsesc" } }, - "regjsgen": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.6.0.tgz", - "integrity": "sha512-ozE883Uigtqj3bx7OhL1KNbCzGyW2NQZPl6Hs09WTvCuZD5sTI4JY58bkbQWa/Y9hxIsvJ3M8Nbf7j54IqeZbA==", - "dev": true - }, - "regjsparser": { - "version": "0.8.4", - "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.8.4.tgz", - "integrity": "sha512-J3LABycON/VNEu3abOviqGHuB/LOtOQj8SKmfP9anY5GfAVw/SPjwzSjxGjbZXIxbGfqTHtJw58C2Li/WkStmA==", + "node_modules/relateurl": { + "version": "0.2.7", "dev": true, - "requires": { - "jsesc": "~0.5.0" - }, - "dependencies": { - "jsesc": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", - "integrity": "sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0=", - "dev": true - } + "license": "MIT", + "engines": { + "node": ">= 0.10" } }, - "relateurl": { - "version": "0.2.7", - "resolved": "https://registry.npmjs.org/relateurl/-/relateurl-0.2.7.tgz", - "integrity": "sha1-VNvzd+UUQKypCkzSdGANP/LYiKk=", - "dev": true - }, - "remarkable": { + "node_modules/remarkable": { "version": "2.0.1", - "resolved": "https://registry.npmjs.org/remarkable/-/remarkable-2.0.1.tgz", - "integrity": "sha512-YJyMcOH5lrR+kZdmB0aJJ4+93bEojRZ1HGDn9Eagu6ibg7aVZhc3OWbbShRid+Q5eAfsEqWxpe+g5W5nYNfNiA==", - "requires": { + "license": "MIT", + "dependencies": { "argparse": "^1.0.10", "autolinker": "^3.11.0" + }, + "bin": { + "remarkable": "bin/remarkable.js" + }, + "engines": { + "node": ">= 6.0.0" } }, - "remove-trailing-separator": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz", - "integrity": "sha1-wkvOKig62tW8P1jg1IJJuSN52O8=", - "dev": true - }, - "renderkid": { - "version": "2.0.7", - "resolved": "https://registry.npmjs.org/renderkid/-/renderkid-2.0.7.tgz", - "integrity": "sha512-oCcFyxaMrKsKcTY59qnCAtmDVSLfPbrv6A3tVbPdFMMrv5jaK10V6m40cKsoPNhAqN6rmHW9sswW4o3ruSrwUQ==", + "node_modules/renderkid": { + "version": "3.0.0", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "css-select": "^4.1.3", "dom-converter": "^0.2.0", "htmlparser2": "^6.1.0", "lodash": "^4.17.21", - "strip-ansi": "^3.0.1" - }, - "dependencies": { - "css-select": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/css-select/-/css-select-4.3.0.tgz", - "integrity": "sha512-wPpOYtnsVontu2mODhA19JrqWxNsfdatRKd64kmpRbQgh1KtItko5sTnEpPdpSaJszTOhEMlF/RPz28qj4HqhQ==", - "dev": true, - "requires": { - "boolbase": "^1.0.0", - "css-what": "^6.0.1", - "domhandler": "^4.3.1", - "domutils": "^2.8.0", - "nth-check": "^2.0.1" - } - }, - "css-what": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/css-what/-/css-what-6.1.0.tgz", - "integrity": "sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw==", - "dev": true - }, - "dom-serializer": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.4.1.tgz", - "integrity": "sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag==", - "dev": true, - "requires": { - "domelementtype": "^2.0.1", - "domhandler": "^4.2.0", - "entities": "^2.0.0" - } - }, - "domelementtype": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz", - "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==", - "dev": true - }, - "domutils": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/domutils/-/domutils-2.8.0.tgz", - "integrity": "sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==", - "dev": true, - "requires": { - "dom-serializer": "^1.0.1", - "domelementtype": "^2.2.0", - "domhandler": "^4.2.0" - } - }, - "nth-check": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.0.1.tgz", - "integrity": "sha512-it1vE95zF6dTT9lBsYbxvqh0Soy4SPowchj0UBGj/V6cTPnXXtQOPUbhZ6CmGzAD/rW22LQK6E96pcdJXk4A4w==", - "dev": true, - "requires": { - "boolbase": "^1.0.0" - } - } + "strip-ansi": "^6.0.1" } }, - "repeat-element": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.4.tgz", - "integrity": "sha512-LFiNfRcSu7KK3evMyYOuCzv3L10TW7yC1G2/+StMjK8Y6Vqd2MG7r/Qjw4ghtuCOjFvlnms/iMmLqpvW/ES/WQ==", - "dev": true - }, - "repeat-string": { + "node_modules/repeat-string": { "version": "1.6.1", - "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz", - "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=" - }, - "request": { - "version": "2.88.2", - "resolved": "https://registry.npmjs.org/request/-/request-2.88.2.tgz", - "integrity": "sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw==", - "dev": true, - "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": { - "performance-now": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", - "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=", - "dev": true - }, - "qs": { - "version": "6.5.3", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.3.tgz", - "integrity": "sha512-qxXIEh4pCGfHICj1mAJQ2/2XVZkjCDTcEgfoSQxc/fYivUZxTkk7L3bDBJSoNrEzXI17oUO5Dp07ktqE5KzczA==", - "dev": true - } + "license": "MIT", + "engines": { + "node": ">=0.10" } }, - "require-directory": { + "node_modules/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 + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } }, - "require-main-filename": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz", - "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==", - "dev": true + "node_modules/require-from-string": { + "version": "2.0.2", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } }, - "requires-port": { + "node_modules/requires-port": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz", - "integrity": "sha1-kl0mAdOaxIXgkc8NpcbmlNw9yv8=" + "license": "MIT" }, - "reselect": { - "version": "4.1.7", - "resolved": "https://registry.npmjs.org/reselect/-/reselect-4.1.7.tgz", - "integrity": "sha512-Zu1xbUt3/OPwsXL46hvOOoQrap2azE7ZQbokq61BQfiXvhewsKDwhMeZjTX9sX0nvw1t/U5Audyn1I9P/m9z0A==" + "node_modules/reselect": { + "version": "4.1.8", + "license": "MIT" }, - "resolve": { - "version": "1.22.0", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.0.tgz", - "integrity": "sha512-Hhtrw0nLeSrFQ7phPp4OOcVjLPIeMnRlr5mcnVuMe7M/7eBn98A3hmFRLoFo3DLZkivSYwhRUJTyPyWAk56WLw==", + "node_modules/resolve": { + "version": "1.22.1", "dev": true, - "requires": { - "is-core-module": "^2.8.1", + "license": "MIT", + "dependencies": { + "is-core-module": "^2.9.0", "path-parse": "^1.0.7", "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "resolve-cwd": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-2.0.0.tgz", - "integrity": "sha1-AKn3OHVW4nA46uIyyqNypqWbZlo=", + "node_modules/resolve-from": { + "version": "5.0.0", "dev": true, - "requires": { - "resolve-from": "^3.0.0" + "license": "MIT", + "engines": { + "node": ">=8" } }, - "resolve-from": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-3.0.0.tgz", - "integrity": "sha1-six699nWiBvItuZTM17rywoYh0g=", - "dev": true - }, - "resolve-url": { + "node_modules/resolve-url": { "version": "0.2.1", - "resolved": "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz", - "integrity": "sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo=", - "dev": true + "dev": true, + "license": "MIT", + "peer": true }, - "responselike": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/responselike/-/responselike-1.0.2.tgz", - "integrity": "sha1-kYcg7ztjHFZCvgaPFa3lpG9Loec=", + "node_modules/resolve-url-loader": { + "version": "5.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "adjust-sourcemap-loader": "^4.0.0", + "convert-source-map": "^1.7.0", + "loader-utils": "^2.0.0", + "postcss": "^8.2.14", + "source-map": "0.6.1" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/resolve-url-loader/node_modules/loader-utils": { + "version": "2.0.4", + "dev": true, + "license": "MIT", + "dependencies": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^2.1.2" + }, + "engines": { + "node": ">=8.9.0" + } + }, + "node_modules/resolve-url-loader/node_modules/source-map": { + "version": "0.6.1", "dev": true, - "requires": { - "lowercase-keys": "^1.0.0" + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.10.0" } }, - "restore-cursor": { + "node_modules/restore-cursor": { "version": "3.1.0", - "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz", - "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "onetime": "^5.1.0", "signal-exit": "^3.0.2" + }, + "engines": { + "node": ">=8" } }, - "ret": { - "version": "0.1.15", - "resolved": "https://registry.npmjs.org/ret/-/ret-0.1.15.tgz", - "integrity": "sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==", - "dev": true - }, - "retry": { + "node_modules/retry": { "version": "0.12.0", - "resolved": "https://registry.npmjs.org/retry/-/retry-0.12.0.tgz", - "integrity": "sha1-G0KmJmoh8HQh0bC1S33BZ7AcATs=", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 4" + } }, - "reusify": { + "node_modules/reusify": { "version": "1.0.4", - "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", - "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", - "dev": true - }, - "rfdc": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/rfdc/-/rfdc-1.3.0.tgz", - "integrity": "sha512-V2hovdzFbOi77/WajaSMXk2OLm+xNIeQdMMuB7icj7bk6zi2F8GGAxigcnDFpJHbNyNcgyJDiP+8nOrY5cZGrA==", - "dev": true - }, - "rgb-regex": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/rgb-regex/-/rgb-regex-1.0.1.tgz", - "integrity": "sha1-wODWiC3w4jviVKR16O3UGRX+rrE=", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "iojs": ">=1.0.0", + "node": ">=0.10.0" + } }, - "rgba-regex": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/rgba-regex/-/rgba-regex-1.0.0.tgz", - "integrity": "sha1-QzdOLiyglosO8VI0YLfXMP8i7rM=", - "dev": true + "node_modules/rfdc": { + "version": "1.4.1", + "dev": true, + "license": "MIT" }, - "rimraf": { + "node_modules/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": { + "license": "ISC", + "dependencies": { "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/rimraf/node_modules/brace-expansion": { + "version": "1.1.11", + "dev": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/rimraf/node_modules/glob": { + "version": "7.2.3", + "dev": true, + "license": "ISC", + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "ripemd160": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.2.tgz", - "integrity": "sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==", + "node_modules/rimraf/node_modules/minimatch": { + "version": "3.1.2", "dev": true, - "requires": { - "hash-base": "^3.0.0", - "inherits": "^2.0.1" + "license": "ISC", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" } }, - "rollup": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/rollup/-/rollup-2.1.0.tgz", - "integrity": "sha512-gfE1455AEazVVTJoeQtcOq/U6GSxwoj4XPSWVsuWmgIxj7sBQNLDOSA82PbdMe+cP8ql8fR1jogPFe8Wg8g4SQ==", + "node_modules/rollup": { + "version": "2.79.1", "dev": true, - "requires": { - "fsevents": "~2.1.2" + "license": "MIT", + "bin": { + "rollup": "dist/bin/rollup" + }, + "engines": { + "node": ">=10.0.0" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" } }, - "rollup-plugin-sourcemaps": { + "node_modules/rollup-plugin-sourcemaps": { "version": "0.6.3", - "resolved": "https://registry.npmjs.org/rollup-plugin-sourcemaps/-/rollup-plugin-sourcemaps-0.6.3.tgz", - "integrity": "sha512-paFu+nT1xvuO1tPFYXGe+XnQvg4Hjqv/eIhG8i5EspfYYPBKL57X7iVbfv55aNVASg3dzWvES9dmWsL2KhfByw==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "@rollup/pluginutils": "^3.0.9", "source-map-resolve": "^0.6.0" }, - "dependencies": { - "source-map-resolve": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.6.0.tgz", - "integrity": "sha512-KXBr9d/fO/bWo97NXsPIAW1bFSBOuCnjbNTBMO7N59hsv5i9yzRDfcYwwt0l04+VqnKC+EwzvJZIP/qkuMgR/w==", - "dev": true, - "requires": { - "atob": "^2.1.2", - "decode-uri-component": "^0.2.0" - } + "engines": { + "node": ">=10.0.0" + }, + "peerDependencies": { + "@types/node": ">=10.0.0", + "rollup": ">=0.31.2" + }, + "peerDependenciesMeta": { + "@types/node": { + "optional": true } } }, - "run-async": { + "node_modules/rollup-plugin-sourcemaps/node_modules/@rollup/pluginutils": { + "version": "3.1.0", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/estree": "0.0.39", + "estree-walker": "^1.0.1", + "picomatch": "^2.2.2" + }, + "engines": { + "node": ">= 8.0.0" + }, + "peerDependencies": { + "rollup": "^1.20.0||^2.0.0" + } + }, + "node_modules/rollup-plugin-sourcemaps/node_modules/@types/estree": { + "version": "0.0.39", + "dev": true, + "license": "MIT" + }, + "node_modules/rollup-plugin-sourcemaps/node_modules/estree-walker": { + "version": "1.0.1", + "dev": true, + "license": "MIT" + }, + "node_modules/run-async": { "version": "2.4.1", - "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.4.1.tgz", - "integrity": "sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.12.0" + } }, - "run-parallel": { + "node_modules/run-parallel": { "version": "1.2.0", - "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", - "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", "dev": true, - "requires": { + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT", + "dependencies": { "queue-microtask": "^1.2.2" } }, - "run-queue": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/run-queue/-/run-queue-1.0.3.tgz", - "integrity": "sha1-6Eg5bwV9Ij8kOGkkYY4laUFh7Ec=", - "dev": true, - "requires": { - "aproba": "^1.1.1" + "node_modules/rxjs": { + "version": "7.6.0", + "license": "Apache-2.0", + "dependencies": { + "tslib": "^2.1.0" } }, - "rxjs": { - "version": "6.6.7", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", - "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", - "requires": { - "tslib": "^1.9.0" + "node_modules/safe-array-concat": { + "version": "1.1.2", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "get-intrinsic": "^1.2.4", + "has-symbols": "^1.0.3", + "isarray": "^2.0.5" + }, + "engines": { + "node": ">=0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "safe-buffer": { + "node_modules/safe-array-concat/node_modules/isarray": { + "version": "2.0.5", + "dev": true, + "license": "MIT" + }, + "node_modules/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==" + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT" }, - "safe-regex": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz", - "integrity": "sha1-QKNmnzsHfR6UPURinhV91IAjvy4=", + "node_modules/safe-regex-test": { + "version": "1.0.3", "dev": true, - "requires": { - "ret": "~0.1.10" + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.6", + "es-errors": "^1.3.0", + "is-regex": "^1.1.4" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "safer-buffer": { + "node_modules/safer-buffer": { "version": "2.1.2", - "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", - "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" + "license": "MIT" }, - "sass": { - "version": "1.26.3", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.26.3.tgz", - "integrity": "sha512-5NMHI1+YFYw4sN3yfKjpLuV9B5l7MqQ6FlkTcC4FT+oHbBRUZoSjHrrt/mE0nFXJyY2kQtU9ou9HxvFVjLFuuw==", + "node_modules/sass": { + "version": "1.54.4", "dev": true, - "requires": { - "chokidar": ">=2.0.0 <4.0.0" + "license": "MIT", + "dependencies": { + "chokidar": ">=3.0.0 <4.0.0", + "immutable": "^4.0.0", + "source-map-js": ">=0.6.2 <2.0.0" + }, + "bin": { + "sass": "sass.js" + }, + "engines": { + "node": ">=12.0.0" } }, - "sass-loader": { - "version": "8.0.2", - "resolved": "https://registry.npmjs.org/sass-loader/-/sass-loader-8.0.2.tgz", - "integrity": "sha512-7o4dbSK8/Ol2KflEmSco4jTjQoV988bM82P9CZdmo9hR3RLnvNc0ufMNdMrB0caq38JQ/FgF4/7RcbcfKzxoFQ==", + "node_modules/sass-loader": { + "version": "13.0.2", "dev": true, - "requires": { - "clone-deep": "^4.0.1", - "loader-utils": "^1.2.3", - "neo-async": "^2.6.1", - "schema-utils": "^2.6.1", - "semver": "^6.3.0" - }, + "license": "MIT", "dependencies": { - "json5": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", - "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", - "dev": true, - "requires": { - "minimist": "^1.2.0" - } + "klona": "^2.0.4", + "neo-async": "^2.6.2" + }, + "engines": { + "node": ">= 14.15.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "fibers": ">= 3.1.0", + "node-sass": "^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0", + "sass": "^1.3.0", + "sass-embedded": "*", + "webpack": "^5.0.0" + }, + "peerDependenciesMeta": { + "fibers": { + "optional": true }, - "loader-utils": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.0.tgz", - "integrity": "sha512-qH0WSMBtn/oHuwjy/NucEgbx5dbxxnxup9s4PVXJUDHZBQY+s0NWA9rJf53RBnQZxfch7euUui7hpoAPvALZdA==", - "dev": true, - "requires": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^1.0.1" - } + "node-sass": { + "optional": true + }, + "sass": { + "optional": true }, - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true + "sass-embedded": { + "optional": true } } }, - "saucelabs": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/saucelabs/-/saucelabs-1.5.0.tgz", - "integrity": "sha512-jlX3FGdWvYf4Q3LFfFWS1QvPg3IGCGWxIc8QBFdPTbpTJnt/v17FHXYVAn7C8sHf1yUXo2c7yIM0isDryfYtHQ==", + "node_modules/sax": { + "version": "1.4.1", "dev": true, - "requires": { - "https-proxy-agent": "^2.2.1" - } - }, - "sax": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", - "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==" + "license": "ISC", + "optional": true }, - "schema-utils": { + "node_modules/schema-utils": { "version": "2.7.1", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-2.7.1.tgz", - "integrity": "sha512-SHiNtMOUGWBQJwzISiVYKu82GiV4QYGePp3odlY1tuKO7gPtphAT5R/py0fA6xtbgLL/RvtJZnU9b8s0F1q0Xg==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "@types/json-schema": "^7.0.5", "ajv": "^6.12.4", "ajv-keywords": "^3.5.2" + }, + "engines": { + "node": ">= 8.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" } }, - "select-hose": { + "node_modules/select-hose": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/select-hose/-/select-hose-2.0.0.tgz", - "integrity": "sha1-Yl2GWPhlr0Psliv8N2o3NZpJlMo=", - "dev": true - }, - "select2": { - "version": "4.0.7", - "resolved": "https://registry.npmjs.org/select2/-/select2-4.0.7.tgz", - "integrity": "sha512-t46Z2nkEEYnBYdRpLNw5dj9qqO+YTiTlWKnpJ/B5e1Q3hPND00JRgcLJxYRzqpeLZd+ZkszkHEMagLKIfbTjVA==" - }, - "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" - } - } - } - }, - "selfsigned": { - "version": "1.10.14", - "resolved": "https://registry.npmjs.org/selfsigned/-/selfsigned-1.10.14.tgz", - "integrity": "sha512-lkjaiAye+wBZDCBsu5BGi0XiLRxeUlsGod5ZP924CRSEoGuZAw/f7y9RKu28rwTfiHVhdavhB0qH0INV6P1lEA==", "dev": true, - "requires": { - "node-forge": "^0.10.0" - } + "license": "MIT" }, - "semver": { - "version": "7.1.3", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.1.3.tgz", - "integrity": "sha512-ekM0zfiA9SCBlsKa2X1hxyxiI4L3B6EbVJkkdgQXnSEEaHlGdvyodMruTiulSRWMMB4NeIuYNMC9rTKTz97GxA==", - "dev": true + "node_modules/select2": { + "version": "4.0.7", + "license": "MIT" }, - "semver-diff": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/semver-diff/-/semver-diff-3.1.1.tgz", - "integrity": "sha512-GX0Ix/CJcHyB8c4ykpHGIAvLyOwOobtM/8d+TQkAd81/bEjgPHrfba41Vpesr7jX/t8Uh+R3EX9eAS5be+jQYg==", + "node_modules/selfsigned": { + "version": "2.4.1", "dev": true, - "requires": { - "semver": "^6.3.0" - }, + "license": "MIT", "dependencies": { - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - } - } - }, - "semver-dsl": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/semver-dsl/-/semver-dsl-1.0.1.tgz", - "integrity": "sha1-02eN5VVeimH2Ke7QJTZq5fJzQKA=", - "dev": true, - "requires": { - "semver": "^5.3.0" + "@types/node-forge": "^1.3.0", + "node-forge": "^1" }, - "dependencies": { - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "dev": true - } + "engines": { + "node": ">=10" } }, - "semver-intersect": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/semver-intersect/-/semver-intersect-1.4.0.tgz", - "integrity": "sha512-d8fvGg5ycKAq0+I6nfWeCx6ffaWJCsBYU0H2Rq56+/zFePYfT8mXkB3tWBSjR5BerkHNZ5eTPIk1/LBYas35xQ==", - "dev": true, - "requires": { - "semver": "^5.0.0" + "node_modules/semver": { + "version": "7.6.2", + "license": "ISC", + "bin": { + "semver": "bin/semver.js" }, - "dependencies": { - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "dev": true - } + "engines": { + "node": ">=10" } }, - "send": { - "version": "0.17.2", - "resolved": "https://registry.npmjs.org/send/-/send-0.17.2.tgz", - "integrity": "sha512-UJYB6wFSJE3G00nEivR5rgWp8c2xXvJ3OPWPhmuteU0IKj8nKbG3DrjiOmLwpnHGYWAVwA69zmTm++YG0Hmwww==", + "node_modules/send": { + "version": "0.18.0", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "debug": "2.6.9", - "depd": "~1.1.2", - "destroy": "~1.0.4", + "depd": "2.0.0", + "destroy": "1.2.0", "encodeurl": "~1.0.2", "escape-html": "~1.0.3", "etag": "~1.8.1", "fresh": "0.5.2", - "http-errors": "1.8.1", + "http-errors": "2.0.0", "mime": "1.6.0", "ms": "2.1.3", - "on-finished": "~2.3.0", + "on-finished": "2.4.1", "range-parser": "~1.2.1", - "statuses": "~1.5.0" + "statuses": "2.0.1" }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/send/node_modules/debug": { + "version": "2.6.9", + "dev": true, + "license": "MIT", "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "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=", - "dev": true - } - } - }, - "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 - } + "ms": "2.0.0" + } + }, + "node_modules/send/node_modules/debug/node_modules/ms": { + "version": "2.0.0", + "dev": true, + "license": "MIT" + }, + "node_modules/send/node_modules/mime": { + "version": "1.6.0", + "dev": true, + "license": "MIT", + "bin": { + "mime": "cli.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/send/node_modules/ms": { + "version": "2.1.3", + "dev": true, + "license": "MIT" + }, + "node_modules/send/node_modules/statuses": { + "version": "2.0.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.8" } }, - "serialize-error": { + "node_modules/serialize-error": { "version": "8.1.0", - "resolved": "https://registry.npmjs.org/serialize-error/-/serialize-error-8.1.0.tgz", - "integrity": "sha512-3NnuWfM6vBYoy5gZFvHiYsVbafvI9vZv/+jlIigFn4oP4zjNPK3LhcY0xSCgeb1a5L8jO71Mit9LlNoi2UfDDQ==", - "requires": { + "license": "MIT", + "dependencies": { "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==" - } + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "serialize-javascript": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-4.0.0.tgz", - "integrity": "sha512-GaNA54380uFefWghODBWEGisLZFj00nS5ACs6yHa9nLqlLpVLO8ChDGeKRjZnV4Nh4n0Qi7nhYZD/9fCPzEqkw==", + "node_modules/serialize-error/node_modules/type-fest": { + "version": "0.20.2", + "license": "(MIT OR CC0-1.0)", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/serialize-javascript": { + "version": "6.0.2", "dev": true, - "requires": { + "license": "BSD-3-Clause", + "dependencies": { "randombytes": "^2.1.0" } }, - "serve-index": { + "node_modules/serve-index": { "version": "1.9.1", - "resolved": "https://registry.npmjs.org/serve-index/-/serve-index-1.9.1.tgz", - "integrity": "sha1-03aNabHn2C5c4FD/9bRTvqEqkjk=", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "accepts": "~1.3.4", "batch": "0.6.1", "debug": "2.6.9", @@ -15153,1060 +14697,676 @@ "mime-types": "~2.1.17", "parseurl": "~1.3.2" }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/serve-index/node_modules/debug": { + "version": "2.6.9", + "dev": true, + "license": "MIT", "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "http-errors": { - "version": "1.6.3", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz", - "integrity": "sha1-i1VoC7S+KDoLW/TqLjhYC+HZMg0=", - "dev": true, - "requires": { - "depd": "~1.1.2", - "inherits": "2.0.3", - "setprototypeof": "1.1.0", - "statuses": ">= 1.4.0 < 2" - } - }, - "inherits": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=", - "dev": true - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true - }, - "setprototypeof": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz", - "integrity": "sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==", - "dev": true - } + "ms": "2.0.0" + } + }, + "node_modules/serve-index/node_modules/depd": { + "version": "1.1.2", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/serve-index/node_modules/http-errors": { + "version": "1.6.3", + "dev": true, + "license": "MIT", + "dependencies": { + "depd": "~1.1.2", + "inherits": "2.0.3", + "setprototypeof": "1.1.0", + "statuses": ">= 1.4.0 < 2" + }, + "engines": { + "node": ">= 0.6" } }, - "serve-static": { - "version": "1.14.2", - "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.14.2.tgz", - "integrity": "sha512-+TMNA9AFxUEGuC0z2mevogSnn9MXKb4fa7ngeRMJaaGv8vTwnIEkKi+QGvPt33HSnf8pRS+WGM0EbMtCJLKMBQ==", + "node_modules/serve-index/node_modules/inherits": { + "version": "2.0.3", + "dev": true, + "license": "ISC" + }, + "node_modules/serve-index/node_modules/ms": { + "version": "2.0.0", + "dev": true, + "license": "MIT" + }, + "node_modules/serve-index/node_modules/setprototypeof": { + "version": "1.1.0", + "dev": true, + "license": "ISC" + }, + "node_modules/serve-static": { + "version": "1.15.0", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "encodeurl": "~1.0.2", "escape-html": "~1.0.3", "parseurl": "~1.3.3", - "send": "0.17.2" + "send": "0.18.0" + }, + "engines": { + "node": ">= 0.8.0" } }, - "set-blocking": { + "node_modules/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, + "license": "ISC" }, - "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 + "node_modules/set-function-length": { + "version": "1.2.2", + "dev": true, + "license": "MIT", + "dependencies": { + "define-data-property": "^1.1.4", + "es-errors": "^1.3.0", + "function-bind": "^1.1.2", + "get-intrinsic": "^1.2.4", + "gopd": "^1.0.1", + "has-property-descriptors": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + } }, - "set-value": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/set-value/-/set-value-2.0.1.tgz", - "integrity": "sha512-JxHc1weCN68wRY0fhCoXpyK55m/XPHafOmK4UWD7m2CI14GMcFypt4w/0+NV5f/ZMby2F6S2wwA7fgynh9gWSw==", - "dev": true, - "requires": { - "extend-shallow": "^2.0.1", - "is-extendable": "^0.1.1", - "is-plain-object": "^2.0.3", - "split-string": "^3.0.1" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - }, - "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" - } - } + "node_modules/set-function-name": { + "version": "2.0.2", + "dev": true, + "license": "MIT", + "dependencies": { + "define-data-property": "^1.1.4", + "es-errors": "^1.3.0", + "functions-have-names": "^1.2.3", + "has-property-descriptors": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" } }, - "setimmediate": { + "node_modules/setimmediate": { "version": "1.0.5", - "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", - "integrity": "sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU=" + "license": "MIT" }, - "setprototypeof": { + "node_modules/setprototypeof": { "version": "1.2.0", - "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", - "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==", - "dev": true + "dev": true, + "license": "ISC" }, - "sha.js": { + "node_modules/sha.js": { "version": "2.4.11", - "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz", - "integrity": "sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==", - "requires": { + "license": "(MIT AND BSD-3-Clause)", + "dependencies": { "inherits": "^2.0.1", "safe-buffer": "^5.0.1" + }, + "bin": { + "sha.js": "bin.js" } }, - "shallow-clone": { + "node_modules/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": { + "license": "MIT", + "dependencies": { "kind-of": "^6.0.2" + }, + "engines": { + "node": ">=8" } }, - "shebang-command": { + "node_modules/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": { + "license": "MIT", + "dependencies": { "shebang-regex": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" } }, - "shebang-regex": { + "node_modules/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 + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } }, - "shell-quote": { - "version": "1.7.3", - "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.7.3.tgz", - "integrity": "sha512-Vpfqwm4EnqGdlsBFNmHhxhElJYrdfcxPThu+ryKS5J8L/fhAwLazFZtq+S+TWZ9ANj2piSQLGj6NQg+lKPmxrw==", - "dev": true + "node_modules/shell-quote": { + "version": "1.8.1", + "dev": true, + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, - "short-unique-id": { - "version": "4.4.4", - "resolved": "https://registry.npmjs.org/short-unique-id/-/short-unique-id-4.4.4.tgz", - "integrity": "sha512-oLF1NCmtbiTWl2SqdXZQbo5KM1b7axdp0RgQLq8qCBBLoq+o3A5wmLrNM6bZIh54/a8BJ3l69kTXuxwZ+XCYuw==" + "node_modules/short-unique-id": { + "version": "5.2.0", + "license": "Apache-2.0", + "bin": { + "short-unique-id": "bin/short-unique-id", + "suid": "bin/short-unique-id" + } }, - "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" + "node_modules/side-channel": { + "version": "1.0.6", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.4", + "object-inspect": "^1.13.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "signal-exit": { + "node_modules/signal-exit": { "version": "3.0.7", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", - "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==" + "dev": true, + "license": "ISC" }, - "simple-concat": { + "node_modules/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==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT", "optional": true }, - "simple-get": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/simple-get/-/simple-get-3.1.1.tgz", - "integrity": "sha512-CQ5LTKGfCpvE1K0n2us+kuMPbk/q0EKl82s4aheV9oXjFEz6W/Y7oQFVJuU6QG77hRT4Ghb5RURteF5vnWjupA==", + "node_modules/simple-get": { + "version": "4.0.1", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT", "optional": true, - "requires": { - "decompress-response": "^4.2.0", + "dependencies": { + "decompress-response": "^6.0.0", "once": "^1.3.1", "simple-concat": "^1.0.0" - }, - "dependencies": { - "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==", - "optional": true, - "requires": { - "mimic-response": "^2.0.0" - } - }, - "mimic-response": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-2.1.0.tgz", - "integrity": "sha512-wXqjST+SLt7R009ySCglWBCFpjUygmCIfD790/kVbiGmUgfYGuB14PiTd5DwVxSV4NcYHjzMkoj5LjQZwTQLEA==", - "optional": true - } } }, - "simple-swizzle": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/simple-swizzle/-/simple-swizzle-0.2.2.tgz", - "integrity": "sha1-pNprY1/8zMoz9w0Xy5JZLeleVXo=", + "node_modules/sirv": { + "version": "1.0.19", "dev": true, - "requires": { - "is-arrayish": "^0.3.1" - }, + "license": "MIT", "dependencies": { - "is-arrayish": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.3.2.tgz", - "integrity": "sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==", - "dev": true - } - } - }, - "slash": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", - "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", - "dev": true - }, - "smart-buffer": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.2.0.tgz", - "integrity": "sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==", - "dev": true - }, - "snapdragon": { - "version": "0.8.2", - "resolved": "https://registry.npmjs.org/snapdragon/-/snapdragon-0.8.2.tgz", - "integrity": "sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg==", - "dev": true, - "requires": { - "base": "^0.11.1", - "debug": "^2.2.0", - "define-property": "^0.2.5", - "extend-shallow": "^2.0.1", - "map-cache": "^0.2.2", - "source-map": "^0.5.6", - "source-map-resolve": "^0.5.0", - "use": "^3.1.0" + "@polka/url": "^1.0.0-next.20", + "mrmime": "^1.0.0", + "totalist": "^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==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "dev": true, - "requires": { - "is-descriptor": "^0.1.0" - } - }, - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true - }, - "source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", - "dev": true - } + "engines": { + "node": ">= 10" } }, - "snapdragon-node": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/snapdragon-node/-/snapdragon-node-2.1.1.tgz", - "integrity": "sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw==", - "dev": true, - "requires": { - "define-property": "^1.0.0", - "isobject": "^3.0.0", - "snapdragon-util": "^3.0.1" - }, - "dependencies": { - "define-property": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", - "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", - "dev": true, - "requires": { - "is-descriptor": "^1.0.0" - } - }, - "is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-data-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", - "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-descriptor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", - "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", - "dev": true, - "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - } - } + "node_modules/slash": { + "version": "4.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "snapdragon-util": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/snapdragon-util/-/snapdragon-util-3.0.1.tgz", - "integrity": "sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ==", + "node_modules/smart-buffer": { + "version": "4.2.0", "dev": true, - "requires": { - "kind-of": "^3.2.0" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } + "license": "MIT", + "engines": { + "node": ">= 6.0.0", + "npm": ">= 3.0.0" } }, - "socket.io": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/socket.io/-/socket.io-2.1.1.tgz", - "integrity": "sha512-rORqq9c+7W0DAK3cleWNSyfv/qKXV99hV4tZe+gGLfBECw3XEhBy7x85F3wypA9688LKjtwO9pX9L33/xQI8yA==", + "node_modules/socket.io": { + "version": "4.7.5", "dev": true, - "requires": { - "debug": "~3.1.0", - "engine.io": "~3.2.0", - "has-binary2": "~1.0.2", - "socket.io-adapter": "~1.1.0", - "socket.io-client": "2.1.1", - "socket.io-parser": "~3.2.0" - }, + "license": "MIT", "dependencies": { - "debug": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", - "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true - } + "accepts": "~1.3.4", + "base64id": "~2.0.0", + "cors": "~2.8.5", + "debug": "~4.3.2", + "engine.io": "~6.5.2", + "socket.io-adapter": "~2.5.2", + "socket.io-parser": "~4.2.4" + }, + "engines": { + "node": ">=10.2.0" } }, - "socket.io-adapter": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/socket.io-adapter/-/socket.io-adapter-1.1.2.tgz", - "integrity": "sha512-WzZRUj1kUjrTIrUKpZLEzFZ1OLj5FwLlAFQs9kuZJzJi5DKdU7FsWc36SNmA8iDOtwBQyT8FkrriRM8vXLYz8g==", - "dev": true - }, - "socket.io-client": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/socket.io-client/-/socket.io-client-2.1.1.tgz", - "integrity": "sha512-jxnFyhAuFxYfjqIgduQlhzqTcOEQSn+OHKVfAxWaNWa7ecP7xSNk2Dx/3UEsDcY7NcFafxvNvKPmmO7HTwTxGQ==", - "dev": true, - "requires": { - "backo2": "1.0.2", - "base64-arraybuffer": "0.1.5", - "component-bind": "1.0.0", - "component-emitter": "1.2.1", - "debug": "~3.1.0", - "engine.io-client": "~3.2.0", - "has-binary2": "~1.0.2", - "has-cors": "1.1.0", - "indexof": "0.0.1", - "object-component": "0.0.3", - "parseqs": "0.0.5", - "parseuri": "0.0.5", - "socket.io-parser": "~3.2.0", - "to-array": "0.1.4" - }, - "dependencies": { - "component-emitter": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.2.1.tgz", - "integrity": "sha1-E3kY1teCg/ffemt8WmPhQOaUJeY=", - "dev": true - }, - "debug": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", - "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true - } + "node_modules/socket.io-adapter": { + "version": "2.5.5", + "dev": true, + "license": "MIT", + "dependencies": { + "debug": "~4.3.4", + "ws": "~8.17.1" } }, - "socket.io-parser": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/socket.io-parser/-/socket.io-parser-3.2.0.tgz", - "integrity": "sha512-FYiBx7rc/KORMJlgsXysflWx/RIvtqZbyGLlHZvjfmPTPeuD/I8MaW7cfFrj5tRltICJdgwflhfZ3NVVbVLFQA==", + "node_modules/socket.io-parser": { + "version": "4.2.4", "dev": true, - "requires": { - "component-emitter": "1.2.1", - "debug": "~3.1.0", - "isarray": "2.0.1" - }, + "license": "MIT", "dependencies": { - "component-emitter": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.2.1.tgz", - "integrity": "sha1-E3kY1teCg/ffemt8WmPhQOaUJeY=", - "dev": true - }, - "debug": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", - "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "isarray": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.1.tgz", - "integrity": "sha1-o32U7ZzaLVmGXJ92/llu4fM4dB4=", - "dev": true - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true - } + "@socket.io/component-emitter": "~3.1.0", + "debug": "~4.3.1" + }, + "engines": { + "node": ">=10.0.0" } }, - "sockjs": { - "version": "0.3.20", - "resolved": "https://registry.npmjs.org/sockjs/-/sockjs-0.3.20.tgz", - "integrity": "sha512-SpmVOVpdq0DJc0qArhF3E5xsxvaiqGNb73XfgBpK1y3UD5gs8DSo8aCTsuT5pX8rssdc2NDIzANwP9eCAiSdTA==", + "node_modules/sockjs": { + "version": "0.3.24", "dev": true, - "requires": { - "faye-websocket": "^0.10.0", - "uuid": "^3.4.0", - "websocket-driver": "0.6.5" + "license": "MIT", + "dependencies": { + "faye-websocket": "^0.11.3", + "uuid": "^8.3.2", + "websocket-driver": "^0.7.4" } }, - "sockjs-client": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/sockjs-client/-/sockjs-client-1.4.0.tgz", - "integrity": "sha512-5zaLyO8/nri5cua0VtOrFXBPK1jbL4+1cebT/mmKA1E1ZXOvJrII75bPu0l0k843G/+iAbhEqzyKr0w/eCCj7g==", + "node_modules/socks": { + "version": "2.8.3", "dev": true, - "requires": { - "debug": "^3.2.5", - "eventsource": "^1.0.7", - "faye-websocket": "~0.11.1", - "inherits": "^2.0.3", - "json3": "^3.3.2", - "url-parse": "^1.4.3" - }, + "license": "MIT", "dependencies": { - "debug": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - }, - "faye-websocket": { - "version": "0.11.4", - "resolved": "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.11.4.tgz", - "integrity": "sha512-CzbClwlXAuiRQAlUyfqPgvPoNKTckTPGfwZV4ZdAhVcP2lh9KUxJg2b5GkE7XbjKQ3YJnQ9z6D9ntLAlB+tP8g==", - "dev": true, - "requires": { - "websocket-driver": ">=0.5.1" - } - } + "ip-address": "^9.0.5", + "smart-buffer": "^4.2.0" + }, + "engines": { + "node": ">= 10.0.0", + "npm": ">= 3.0.0" } }, - "socks": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/socks/-/socks-2.3.3.tgz", - "integrity": "sha512-o5t52PCNtVdiOvzMry7wU4aOqYWL0PeCXRWBEiJow4/i/wr+wpsJQ9awEu1EonLIqsfGd5qSgDdxEOvCdmBEpA==", + "node_modules/socks-proxy-agent": { + "version": "7.0.0", "dev": true, - "requires": { - "ip": "1.1.5", - "smart-buffer": "^4.1.0" + "license": "MIT", + "dependencies": { + "agent-base": "^6.0.2", + "debug": "^4.3.3", + "socks": "^2.6.2" + }, + "engines": { + "node": ">= 10" } }, - "socks-proxy-agent": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-4.0.2.tgz", - "integrity": "sha512-NT6syHhI9LmuEMSK6Kd2V7gNv5KFZoLE7V5udWmn0de+3Mkj3UMA/AJPLyeNUVmElCurSHtUdM3ETpR3z770Wg==", - "dev": true, - "requires": { - "agent-base": "~4.2.1", - "socks": "~2.3.2" - }, - "dependencies": { - "agent-base": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-4.2.1.tgz", - "integrity": "sha512-JVwXMr9nHYTUXsBFKUqhJwvlcYU/blreOEUkhNR2eXZIvwd+c+o5V4MgDPKWnMS/56awN3TRzIP+KoPn+roQtg==", - "dev": true, - "requires": { - "es6-promisify": "^5.0.0" - } - } + "node_modules/source-map": { + "version": "0.7.4", + "dev": true, + "license": "BSD-3-Clause", + "engines": { + "node": ">= 8" } }, - "sort-keys": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/sort-keys/-/sort-keys-1.1.2.tgz", - "integrity": "sha1-RBttTTRnmPG05J6JIK37oOVD+a0=", + "node_modules/source-map-js": { + "version": "1.2.0", "dev": true, - "requires": { - "is-plain-obj": "^1.0.0" + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.10.0" } }, - "source-list-map": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/source-list-map/-/source-list-map-2.0.1.tgz", - "integrity": "sha512-qnQ7gVMxGNxsiL4lEuJwe/To8UnK7fAnmbGEEH8RpLouuKbeEm0lhbQVFIrNSuB+G7tVrAlVsZgETT5nljf+Iw==", - "dev": true + "node_modules/source-map-loader": { + "version": "4.0.0", + "dev": true, + "license": "MIT", + "dependencies": { + "abab": "^2.0.6", + "iconv-lite": "^0.6.3", + "source-map-js": "^1.0.2" + }, + "engines": { + "node": ">= 14.15.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^5.72.1" + } }, - "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-loader": { - "version": "0.2.4", - "resolved": "https://registry.npmjs.org/source-map-loader/-/source-map-loader-0.2.4.tgz", - "integrity": "sha512-OU6UJUty+i2JDpTItnizPrlpOIBLmQbWMuBg9q5bVtnHACqw1tn9nNwqJLbv0/00JjnJb/Ee5g5WS5vrRv7zIQ==", - "dev": true, - "requires": { - "async": "^2.5.0", - "loader-utils": "^1.1.0" - }, - "dependencies": { - "json5": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", - "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", - "dev": true, - "requires": { - "minimist": "^1.2.0" - } - }, - "loader-utils": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.0.tgz", - "integrity": "sha512-qH0WSMBtn/oHuwjy/NucEgbx5dbxxnxup9s4PVXJUDHZBQY+s0NWA9rJf53RBnQZxfch7euUui7hpoAPvALZdA==", - "dev": true, - "requires": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^1.0.1" - } - } + "node_modules/source-map-loader/node_modules/iconv-lite": { + "version": "0.6.3", + "dev": true, + "license": "MIT", + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3.0.0" + }, + "engines": { + "node": ">=0.10.0" } }, - "source-map-resolve": { - "version": "0.5.3", - "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.3.tgz", - "integrity": "sha512-Htz+RnsXWk5+P2slx5Jh3Q66vhQj1Cllm0zvnaY98+NFx+Dv2CF/f5O/t8x+KaNdrdIAsruNzoh/KpialbqAnw==", + "node_modules/source-map-resolve": { + "version": "0.6.0", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "atob": "^2.1.2", - "decode-uri-component": "^0.2.0", - "resolve-url": "^0.2.1", - "source-map-url": "^0.4.0", - "urix": "^0.1.0" + "decode-uri-component": "^0.2.0" } }, - "source-map-support": { + "node_modules/source-map-support": { "version": "0.5.21", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", - "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "buffer-from": "^1.0.0", "source-map": "^0.6.0" } }, - "source-map-url": { + "node_modules/source-map-support/node_modules/source-map": { + "version": "0.6.1", + "dev": true, + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/source-map-url": { "version": "0.4.1", - "resolved": "https://registry.npmjs.org/source-map-url/-/source-map-url-0.4.1.tgz", - "integrity": "sha512-cPiFOTLUKvJFIg4SKVScy4ilPPW6rFgMgfuZJPNoDuMs3nC1HbMUycBoJw77xFIp6z1UJQJOfx6C9GMH80DiTw==", - "dev": true + "dev": true, + "license": "MIT", + "peer": true }, - "sourcemap-codec": { + "node_modules/sourcemap-codec": { "version": "1.4.8", - "resolved": "https://registry.npmjs.org/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz", - "integrity": "sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==", - "dev": true + "dev": true, + "license": "MIT" }, - "space-separated-tokens": { + "node_modules/space-separated-tokens": { "version": "1.1.5", - "resolved": "https://registry.npmjs.org/space-separated-tokens/-/space-separated-tokens-1.1.5.tgz", - "integrity": "sha512-q/JSVd1Lptzhf5bkYm4ob4iWPjx0KiRe3sRFBNrVqbJkFaBm5vbbowy1mymoPNLRa52+oadOhJ+K49wsSeSjTA==" + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } }, - "spdx-correct": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz", - "integrity": "sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==", + "node_modules/spdx-correct": { + "version": "3.2.0", "dev": true, - "requires": { + "license": "Apache-2.0", + "dependencies": { "spdx-expression-parse": "^3.0.0", "spdx-license-ids": "^3.0.0" } }, - "spdx-exceptions": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz", - "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==", - "dev": true + "node_modules/spdx-exceptions": { + "version": "2.5.0", + "dev": true, + "license": "CC-BY-3.0" }, - "spdx-expression-parse": { + "node_modules/spdx-expression-parse": { "version": "3.0.1", - "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", - "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "spdx-exceptions": "^2.1.0", "spdx-license-ids": "^3.0.0" } }, - "spdx-license-ids": { - "version": "3.0.11", - "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.11.tgz", - "integrity": "sha512-Ctl2BrFiM0X3MANYgj3CkygxhRmr9mi6xhejbdO960nF6EDJApTYpn0BQnDKlnNBULKiCN1n3w9EBkHK8ZWg+g==", - "dev": true + "node_modules/spdx-license-ids": { + "version": "3.0.20", + "dev": true, + "license": "CC0-1.0" }, - "spdy": { + "node_modules/spdy": { "version": "4.0.2", - "resolved": "https://registry.npmjs.org/spdy/-/spdy-4.0.2.tgz", - "integrity": "sha512-r46gZQZQV+Kl9oItvl1JZZqJKGr+oEkB08A6BzkiR7593/7IbtuncXHd2YoYeTsG4157ZssMu9KYvUHLcjcDoA==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "debug": "^4.1.0", "handle-thing": "^2.0.0", "http-deceiver": "^1.2.7", "select-hose": "^2.0.0", "spdy-transport": "^3.0.0" + }, + "engines": { + "node": ">=6.0.0" } }, - "spdy-transport": { + "node_modules/spdy-transport": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/spdy-transport/-/spdy-transport-3.0.0.tgz", - "integrity": "sha512-hsLVFE5SjA6TCisWeJXFKniGGOpBgMLmerfO2aCyCU5s7nJ/rpAepqmFifv/GCbSbueEeAJJnmSQ2rKC/g8Fcw==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "debug": "^4.1.0", "detect-node": "^2.0.4", "hpack.js": "^2.1.6", "obuf": "^1.1.2", "readable-stream": "^3.0.6", "wbuf": "^1.7.3" - }, - "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==", - "dev": true, - "requires": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - } - } } }, - "speed-measure-webpack-plugin": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/speed-measure-webpack-plugin/-/speed-measure-webpack-plugin-1.3.1.tgz", - "integrity": "sha512-qVIkJvbtS9j/UeZumbdfz0vg+QfG/zxonAjzefZrqzkr7xOncLVXkeGbTpzd1gjCBM4PmVNkWlkeTVhgskAGSQ==", + "node_modules/spdy-transport/node_modules/readable-stream": { + "version": "3.6.2", "dev": true, - "requires": { - "chalk": "^2.0.1" + "license": "MIT", + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" } }, - "split-string": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/split-string/-/split-string-3.1.0.tgz", - "integrity": "sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw==", + "node_modules/spdy-transport/node_modules/string_decoder": { + "version": "1.3.0", "dev": true, - "requires": { - "extend-shallow": "^3.0.0" - } - }, - "sprintf-js": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=" - }, - "sshpk": { - "version": "1.17.0", - "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.17.0.tgz", - "integrity": "sha512-/9HIEs1ZXGhSPE8X6Ccm7Nam1z8KcoCqPdI7ecm1N33EzAetWahvQWVqLZtaZQ+IDKX4IyA2o0gBzqIMkAagHQ==", - "dev": true, - "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" - } - }, - "ssri": { - "version": "8.0.1", - "resolved": "https://registry.npmjs.org/ssri/-/ssri-8.0.1.tgz", - "integrity": "sha512-97qShzy1AiyxvPNIkLWoGua7xoQzzPjQ0HAH4B0rWKo7SZ6USuPcrUiAFrws0UH8RrbWmgq3LMTObhPIHbbBeQ==", - "dev": true, - "requires": { - "minipass": "^3.1.1" + "license": "MIT", + "dependencies": { + "safe-buffer": "~5.2.0" } }, - "stable": { - "version": "0.1.8", - "resolved": "https://registry.npmjs.org/stable/-/stable-0.1.8.tgz", - "integrity": "sha512-ji9qxRnOVfcuLDySj9qzhGSEFVobyt1kIOSkj1qZzYLzq7Tos/oUUWvotUPQLlrsidqsK6tBH89Bc9kL5zHA6w==", - "dev": true - }, - "stampit": { - "version": "4.3.2", - "resolved": "https://registry.npmjs.org/stampit/-/stampit-4.3.2.tgz", - "integrity": "sha512-pE2org1+ZWQBnIxRPrBM2gVupkuDD0TTNIo1H6GdT/vO82NXli2z8lRE8cu/nBIHrcOCXFBAHpb9ZldrB2/qOA==" + "node_modules/sprintf-js": { + "version": "1.1.3", + "license": "BSD-3-Clause" }, - "static-extend": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/static-extend/-/static-extend-0.1.2.tgz", - "integrity": "sha1-YICcOcv/VTNyJv1eC1IPNB8ftcY=", - "dev": true, - "requires": { - "define-property": "^0.2.5", - "object-copy": "^0.1.0" - }, - "dependencies": { - "define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "dev": true, - "requires": { - "is-descriptor": "^0.1.0" - } - } + "node_modules/ssri": { + "version": "9.0.1", + "dev": true, + "license": "ISC", + "dependencies": { + "minipass": "^3.1.1" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "statuses": { + "node_modules/statuses": { "version": "1.5.0", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", - "integrity": "sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow=", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.6" + } }, - "stream": { + "node_modules/stream": { "version": "0.0.2", - "resolved": "https://registry.npmjs.org/stream/-/stream-0.0.2.tgz", - "integrity": "sha1-f1Nj8Ff2WSxVlfALyAon9c7B8O8=", - "requires": { + "license": "MIT", + "dependencies": { "emitter-component": "^1.1.1" } }, - "stream-browserify": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/stream-browserify/-/stream-browserify-2.0.2.tgz", - "integrity": "sha512-nX6hmklHs/gr2FuxYDltq8fJA1GDlxKQCz8O/IM4atRqBH8OORmBNgfvW5gG10GT/qQ9u0CzIvr2X5Pkt6ntqg==", + "node_modules/streamroller": { + "version": "3.1.5", "dev": true, - "requires": { - "inherits": "~2.0.1", - "readable-stream": "^2.0.2" + "license": "MIT", + "dependencies": { + "date-format": "^4.0.14", + "debug": "^4.3.4", + "fs-extra": "^8.1.0" + }, + "engines": { + "node": ">=8.0" } }, - "stream-each": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/stream-each/-/stream-each-1.2.3.tgz", - "integrity": "sha512-vlMC2f8I2u/bZGqkdfLQW/13Zihpej/7PmSiMQsbYddxuTsJp8vRe2x2FvVExZg7FaOds43ROAuFJwPR4MTZLw==", + "node_modules/string_decoder": { + "version": "0.10.31", "dev": true, - "requires": { - "end-of-stream": "^1.1.0", - "stream-shift": "^1.0.0" - } + "license": "MIT" }, - "stream-http": { - "version": "2.8.3", - "resolved": "https://registry.npmjs.org/stream-http/-/stream-http-2.8.3.tgz", - "integrity": "sha512-+TSkfINHDo4J+ZobQLWiMouQYB+UVYFttRA94FpEzzJ7ZdqcL4uUUQ7WkdkI4DSozGmgBUE/a47L+38PenXhUw==", + "node_modules/string-width": { + "version": "4.2.3", "dev": true, - "requires": { - "builtin-status-codes": "^3.0.0", - "inherits": "^2.0.1", - "readable-stream": "^2.3.6", - "to-arraybuffer": "^1.0.0", - "xtend": "^4.0.0" + "license": "MIT", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" } }, - "stream-shift": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/stream-shift/-/stream-shift-1.0.1.tgz", - "integrity": "sha512-AiisoFqQ0vbGcZgQPY1cdP2I76glaVA/RauYR4G4thNFgkTqr90yXTo4LYX60Jl+sIlPNHHdGSwo01AvbKUSVQ==", - "dev": true - }, - "streamroller": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/streamroller/-/streamroller-1.0.6.tgz", - "integrity": "sha512-3QC47Mhv3/aZNFpDDVO44qQb9gwB9QggMEE0sQmkTAwBVYdBRWISdsywlkfm5II1Q5y/pmrHflti/IgmIzdDBg==", + "node_modules/string.prototype.padend": { + "version": "3.1.6", "dev": true, - "requires": { - "async": "^2.6.2", - "date-format": "^2.0.0", - "debug": "^3.2.6", - "fs-extra": "^7.0.1", - "lodash": "^4.17.14" - }, + "license": "MIT", "dependencies": { - "debug": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - }, - "fs-extra": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-7.0.1.tgz", - "integrity": "sha512-YJDaCJZEnBmcbw13fvdAM9AwNOJwOzrE4pqMqBq5nFiEqXUqHwlK4B+3pUw6JNvfSPtX05xFHtYy/1ni01eGCw==", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "jsonfile": "^4.0.0", - "universalify": "^0.1.0" - } - } - } - }, - "strict-uri-encode": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/strict-uri-encode/-/strict-uri-encode-1.1.0.tgz", - "integrity": "sha1-J5siXfHVgrH1TmWt3UNS4Y+qBxM=", - "dev": true - }, - "string-width": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", - "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", - "requires": { - "emoji-regex": "^7.0.1", - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^5.1.0" - }, - "dependencies": { - "ansi-regex": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.1.tgz", - "integrity": "sha512-ILlv4k/3f6vfQ4OoP2AGvirOktlQ98ZEL1k9FaQjxa3L1abBgbuTDAdPOpvbGncC0BTVQrl+OM8xZGK6tWXt7g==" - }, - "strip-ansi": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", - "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", - "requires": { - "ansi-regex": "^4.1.0" - } - } + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.2", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "string.prototype.padend": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/string.prototype.padend/-/string.prototype.padend-3.1.3.tgz", - "integrity": "sha512-jNIIeokznm8SD/TZISQsZKYu7RJyheFNt84DUPrh482GC8RVp2MKqm2O5oBRdGxbDQoXrhhWtPIWQOiy20svUg==", + "node_modules/string.prototype.trim": { + "version": "1.2.9", "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3", - "es-abstract": "^1.19.1" + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.0", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "string.prototype.trimend": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.4.tgz", - "integrity": "sha512-y9xCjw1P23Awk8EvTpcyL2NIr1j7wJ39f+k6lvRnSMz+mz9CGz9NYPelDk42kOz6+ql8xjfK8oYzy3jAP5QU5A==", + "node_modules/string.prototype.trimend": { + "version": "1.0.8", "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3" + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "string.prototype.trimstart": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.4.tgz", - "integrity": "sha512-jh6e984OBfvxS50tdY2nRZnoC5/mLFKOREQfw8t5yytkoUsJRNxvI/E39qu1sD0OtWI3OC0XgKSmcWwziwYuZw==", + "node_modules/string.prototype.trimstart": { + "version": "1.0.8", "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3" - } - }, - "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" - }, + "license": "MIT", "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==" - } + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "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" + "node_modules/strip-ansi": { + "version": "6.0.1", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" } }, - "strip-bom": { + "node_modules/strip-bom": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", - "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=", - "dev": true - }, - "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=" + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } }, - "style-loader": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/style-loader/-/style-loader-1.1.3.tgz", - "integrity": "sha512-rlkH7X/22yuwFYK357fMN/BxYOorfnfq0eD7+vqlemSK4wEcejFF1dg4zxP0euBW8NrYx2WZzZ8PPFevr7D+Kw==", - "dev": true, - "requires": { - "loader-utils": "^1.2.3", - "schema-utils": "^2.6.4" - }, - "dependencies": { - "json5": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", - "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", - "dev": true, - "requires": { - "minimist": "^1.2.0" - } - }, - "loader-utils": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.0.tgz", - "integrity": "sha512-qH0WSMBtn/oHuwjy/NucEgbx5dbxxnxup9s4PVXJUDHZBQY+s0NWA9rJf53RBnQZxfch7euUui7hpoAPvALZdA==", - "dev": true, - "requires": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^1.0.1" - } - } + "node_modules/strip-final-newline": { + "version": "2.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" } }, - "stylehacks": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/stylehacks/-/stylehacks-4.0.3.tgz", - "integrity": "sha512-7GlLk9JwlElY4Y6a/rmbH2MhVlTyVmiJd1PfTCqFaIBEGMYNsrO/v3SeGTdhBThLg4Z+NbOk/qFMwCa+J+3p/g==", - "dev": true, - "requires": { - "browserslist": "^4.0.0", - "postcss": "^7.0.0", - "postcss-selector-parser": "^3.0.0" - }, - "dependencies": { - "postcss-selector-parser": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-3.1.2.tgz", - "integrity": "sha512-h7fJ/5uWuRVyOtkO45pnt1Ih40CEleeyCHzipqAZO2e5H20g25Y48uYnFUiShvY4rZWNJ/Bib/KVPmanaCtOhA==", - "dev": true, - "requires": { - "dot-prop": "^5.2.0", - "indexes-of": "^1.0.1", - "uniq": "^1.0.1" - } - } + "node_modules/strip-json-comments": { + "version": "2.0.1", + "license": "MIT", + "optional": true, + "engines": { + "node": ">=0.10.0" } }, - "stylus": { + "node_modules/stylus": { "version": "0.54.8", - "resolved": "https://registry.npmjs.org/stylus/-/stylus-0.54.8.tgz", - "integrity": "sha512-vr54Or4BZ7pJafo2mpf0ZcwA74rpuYCZbxrHBsH8kbcXOwSfvBFwsRfpGO5OD5fhG5HDCFW737PKaawI7OqEAg==", "dev": true, - "requires": { + "license": "MIT", + "peer": true, + "dependencies": { "css-parse": "~2.0.0", "debug": "~3.1.0", "glob": "^7.1.6", @@ -16216,160 +15376,175 @@ "semver": "^6.3.0", "source-map": "^0.7.3" }, + "bin": { + "stylus": "bin/stylus" + }, + "engines": { + "node": "*" + } + }, + "node_modules/stylus-loader": { + "version": "7.0.0", + "dev": true, + "license": "MIT", "dependencies": { - "debug": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", - "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "mkdirp": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", - "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", - "dev": true - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true - }, - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - }, - "source-map": { - "version": "0.7.3", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz", - "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==", - "dev": true - } + "fast-glob": "^3.2.11", + "klona": "^2.0.5", + "normalize-path": "^3.0.0" + }, + "engines": { + "node": ">= 14.15.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "stylus": ">=0.52.4", + "webpack": "^5.0.0" } }, - "stylus-loader": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/stylus-loader/-/stylus-loader-3.0.2.tgz", - "integrity": "sha512-+VomPdZ6a0razP+zinir61yZgpw2NfljeSsdUF5kJuEzlo3khXhY19Fn6l8QQz1GRJGtMCo8nG5C04ePyV7SUA==", - "dev": true, - "requires": { - "loader-utils": "^1.0.2", - "lodash.clonedeep": "^4.5.0", - "when": "~3.6.x" - }, - "dependencies": { - "json5": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", - "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", - "dev": true, - "requires": { - "minimist": "^1.2.0" - } - }, - "loader-utils": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.0.tgz", - "integrity": "sha512-qH0WSMBtn/oHuwjy/NucEgbx5dbxxnxup9s4PVXJUDHZBQY+s0NWA9rJf53RBnQZxfch7euUui7hpoAPvALZdA==", - "dev": true, - "requires": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^1.0.1" - } - } + "node_modules/stylus/node_modules/brace-expansion": { + "version": "1.1.11", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/stylus/node_modules/debug": { + "version": "3.1.0", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/stylus/node_modules/glob": { + "version": "7.2.3", + "dev": true, + "license": "ISC", + "peer": true, + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/stylus/node_modules/minimatch": { + "version": "3.1.2", + "dev": true, + "license": "ISC", + "peer": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/stylus/node_modules/ms": { + "version": "2.0.0", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/stylus/node_modules/sax": { + "version": "1.2.4", + "dev": true, + "license": "ISC", + "peer": true + }, + "node_modules/stylus/node_modules/semver": { + "version": "6.3.1", + "dev": true, + "license": "ISC", + "peer": true, + "bin": { + "semver": "bin/semver.js" } }, - "supports-color": { + "node_modules/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": { + "license": "MIT", + "dependencies": { "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" } }, - "supports-preserve-symlinks-flag": { + "node_modules/supports-preserve-symlinks-flag": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", - "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", - "dev": true - }, - "svgo": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/svgo/-/svgo-1.3.2.tgz", - "integrity": "sha512-yhy/sQYxR5BkC98CY7o31VGsg014AKLEPxdfhora76l36hD9Rdy5NZA/Ocn6yayNPgSamYdtX2rFJdcv07AYVw==", "dev": true, - "requires": { - "chalk": "^2.4.1", - "coa": "^2.0.2", - "css-select": "^2.0.0", - "css-select-base-adapter": "^0.1.1", - "css-tree": "1.0.0-alpha.37", - "csso": "^4.0.2", - "js-yaml": "^3.13.1", - "mkdirp": "~0.5.1", - "object.values": "^1.1.0", - "sax": "~1.2.4", - "stable": "^0.1.8", - "unquote": "~1.1.1", - "util.promisify": "~1.0.0" - } - }, - "swagger-client": { - "version": "3.19.6", - "resolved": "https://registry.npmjs.org/swagger-client/-/swagger-client-3.19.6.tgz", - "integrity": "sha512-fd0XaoKz3lgs6viKkqK+o8QyrOOZULD4tLcUd8wEfsVBjJIAks2Qa1AhGUr87mfCWZw0Z9OXItWF9T477rRXzw==", - "requires": { - "@babel/runtime-corejs3": "^7.20.13", - "@swagger-api/apidom-core": ">=0.69.2 <1.0.0", - "@swagger-api/apidom-json-pointer": ">=0.69.2 <1.0.0", - "@swagger-api/apidom-ns-openapi-3-1": ">=0.69.2 <1.0.0", - "@swagger-api/apidom-reference": ">=0.69.2 <1.0.0", - "cookie": "~0.5.0", - "cross-fetch": "^3.1.5", + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/swagger-client": { + "version": "3.29.2", + "license": "Apache-2.0", + "dependencies": { + "@babel/runtime-corejs3": "^7.22.15", + "@swagger-api/apidom-core": ">=1.0.0-alpha.9 <1.0.0-beta.0", + "@swagger-api/apidom-error": ">=1.0.0-alpha.9 <1.0.0-beta.0", + "@swagger-api/apidom-json-pointer": ">=1.0.0-alpha.9 <1.0.0-beta.0", + "@swagger-api/apidom-ns-openapi-3-1": ">=1.0.0-alpha.9 <1.0.0-beta.0", + "@swagger-api/apidom-reference": ">=1.0.0-alpha.9 <1.0.0-beta.0", + "cookie": "~0.6.0", "deepmerge": "~4.3.0", "fast-json-patch": "^3.0.0-1", - "form-data-encoder": "^1.4.3", - "formdata-node": "^4.0.0", - "is-plain-object": "^5.0.0", "js-yaml": "^4.1.0", - "lodash": "^4.17.21", - "qs": "^6.10.2", - "traverse": "~0.6.6", - "url": "~0.11.0" - }, + "neotraverse": "=0.6.18", + "node-abort-controller": "^3.1.1", + "node-fetch-commonjs": "^3.3.2", + "openapi-path-templating": "^1.5.1", + "openapi-server-url-templating": "^1.0.0", + "ramda-adjunct": "^5.0.0" + } + }, + "node_modules/swagger-client/node_modules/argparse": { + "version": "2.0.1", + "license": "Python-2.0" + }, + "node_modules/swagger-client/node_modules/cookie": { + "version": "0.6.0", + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/swagger-client/node_modules/js-yaml": { + "version": "4.1.0", + "license": "MIT", "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==" - }, - "cookie": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.5.0.tgz", - "integrity": "sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw==" - }, - "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" - } - } + "argparse": "^2.0.1" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" } }, - "swagger-ui": { - "version": "3.52.5", - "resolved": "https://registry.npmjs.org/swagger-ui/-/swagger-ui-3.52.5.tgz", - "integrity": "sha512-GvxNYvSaFkU9OoG4BQxjmengl5fA+A5wAuG4rtAbBLWlrLkBiQiHXKQPzyDMUUa3/8nielKpEK1NunnxwpY9Mg==", - "requires": { + "node_modules/swagger-ui": { + "version": "3.52.4", + "license": "Apache-2.0", + "dependencies": { "@babel/runtime-corejs3": "^7.14.7", "@braintree/sanitize-url": "^5.0.2", "@kyleshockey/object-assign-deep": "^0.4.2", @@ -16403,2566 +15578,1676 @@ "reselect": "^4.0.0", "serialize-error": "^8.1.0", "sha.js": "^2.4.11", - "swagger-client": "^3.17.0", + "swagger-client": "^3.16.1", "url-parse": "^1.5.2", "xml-but-prettier": "^1.0.1", "zenscroll": "^4.0.2" - }, + } + }, + "node_modules/swagger-ui/node_modules/argparse": { + "version": "2.0.1", + "license": "Python-2.0" + }, + "node_modules/swagger-ui/node_modules/immutable": { + "version": "3.8.2", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/swagger-ui/node_modules/js-yaml": { + "version": "4.1.0", + "license": "MIT", "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==" - }, - "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" - } - } + "argparse": "^2.0.1" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" } }, - "symbol-observable": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/symbol-observable/-/symbol-observable-1.2.0.tgz", - "integrity": "sha512-e900nM8RRtGhlV36KGEU9k65K3mPb1WV70OdjfxlG2EAuM1noi/E/BaW/uMhL7bPEssK8QV57vN3esixjUvcXQ==" + "node_modules/symbol-observable": { + "version": "4.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10" + } }, - "systemjs": { - "version": "6.12.1", - "resolved": "https://registry.npmjs.org/systemjs/-/systemjs-6.12.1.tgz", - "integrity": "sha512-hqTN6kW+pN6/qro6G9OZ7ceDQOcYno020zBQKpZQLsJhYTDMCMNfXi/Y8duF5iW+4WWZr42ry0MMkcRGpbwG2A==" + "node_modules/systemjs": { + "version": "6.10.0", + "license": "MIT" }, - "tabbable": { + "node_modules/tabbable": { "version": "4.0.0", - "resolved": "https://registry.npmjs.org/tabbable/-/tabbable-4.0.0.tgz", - "integrity": "sha512-H1XoH1URcBOa/rZZWxLxHCtOdVUEev+9vo5YdYhC9tCY4wnybX+VQrCYuy9ubkg69fCBxCONJOSLGfw0DWMffQ==" + "license": "MIT" }, - "tapable": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/tapable/-/tapable-1.1.3.tgz", - "integrity": "sha512-4WK/bYZmj8xLr+HUCODHGF1ZFzsYffasLUgEiMBY4fgtltdO6B4WJtlSbPaDTLpYTcGVwM2qLnFTICEcNxs3kA==", - "dev": true + "node_modules/tapable": { + "version": "2.2.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } }, - "tar": { - "version": "6.1.11", - "resolved": "https://registry.npmjs.org/tar/-/tar-6.1.11.tgz", - "integrity": "sha512-an/KZQzQUkZCkuoAA64hM92X0Urb6VpRhAFllDzz44U2mcD5scmT3zBc4VgVpkugF580+DQn8eAFSyoQt0tznA==", + "node_modules/tar": { + "version": "6.2.1", "dev": true, - "requires": { + "license": "ISC", + "dependencies": { "chownr": "^2.0.0", "fs-minipass": "^2.0.0", - "minipass": "^3.0.0", + "minipass": "^5.0.0", "minizlib": "^2.1.1", "mkdirp": "^1.0.3", "yallist": "^4.0.0" }, - "dependencies": { - "chownr": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", - "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==", - "dev": true - }, - "mkdirp": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", - "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", - "dev": true - } + "engines": { + "node": ">=10" } }, - "tar-fs": { + "node_modules/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==", + "license": "MIT", "optional": true, - "requires": { + "dependencies": { "chownr": "^1.1.1", "mkdirp-classic": "^0.5.2", "pump": "^3.0.0", "tar-stream": "^2.1.4" } }, - "tar-stream": { + "node_modules/tar-fs/node_modules/chownr": { + "version": "1.1.4", + "license": "ISC", + "optional": true + }, + "node_modules/tar-stream": { "version": "2.2.0", - "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-2.2.0.tgz", - "integrity": "sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ==", + "license": "MIT", "optional": true, - "requires": { + "dependencies": { "bl": "^4.0.3", "end-of-stream": "^1.4.1", "fs-constants": "^1.0.0", "inherits": "^2.0.3", "readable-stream": "^3.1.1" }, + "engines": { + "node": ">=6" + } + }, + "node_modules/tar-stream/node_modules/readable-stream": { + "version": "3.6.2", + "license": "MIT", + "optional": true, "dependencies": { - "readable-stream": { - "version": "3.6.2", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", - "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", - "optional": true, - "requires": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - } - } + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" } }, - "term-size": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/term-size/-/term-size-2.2.1.tgz", - "integrity": "sha512-wK0Ri4fOGjv/XPy8SBHZChl8CM7uMc5VML7SqiQ0zG7+J5Vr+RMQDoHa2CNT6KHUnTGIXH34UDMkPzAUyapBZg==", - "dev": true + "node_modules/tar-stream/node_modules/string_decoder": { + "version": "1.3.0", + "license": "MIT", + "optional": true, + "dependencies": { + "safe-buffer": "~5.2.0" + } + }, + "node_modules/tar/node_modules/minipass": { + "version": "5.0.0", + "dev": true, + "license": "ISC", + "engines": { + "node": ">=8" + } + }, + "node_modules/tar/node_modules/yallist": { + "version": "4.0.0", + "dev": true, + "license": "ISC" }, - "terser": { - "version": "4.6.10", - "resolved": "https://registry.npmjs.org/terser/-/terser-4.6.10.tgz", - "integrity": "sha512-qbF/3UOo11Hggsbsqm2hPa6+L4w7bkr+09FNseEe8xrcVD3APGLFqE+Oz1ZKAxjYnFsj80rLOfgAtJ0LNJjtTA==", + "node_modules/terser": { + "version": "5.14.2", "dev": true, - "requires": { + "license": "BSD-2-Clause", + "dependencies": { + "@jridgewell/source-map": "^0.3.2", + "acorn": "^8.5.0", "commander": "^2.20.0", - "source-map": "~0.6.1", - "source-map-support": "~0.5.12" + "source-map-support": "~0.5.20" + }, + "bin": { + "terser": "bin/terser" + }, + "engines": { + "node": ">=10" } }, - "terser-webpack-plugin": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-3.0.3.tgz", - "integrity": "sha512-bZFnotuIKq5Rqzrs+qIwFzGdKdffV9epG5vDSEbYzvKAhPeR5RbbrQysfPgbIIMhNAQtZD2hGwBfSKUXjXZZZw==", + "node_modules/terser-webpack-plugin": { + "version": "5.3.10", "dev": true, - "requires": { - "cacache": "^15.0.4", - "find-cache-dir": "^3.3.1", - "jest-worker": "^26.0.0", - "p-limit": "^2.3.0", - "schema-utils": "^2.6.6", - "serialize-javascript": "^3.1.0", - "source-map": "^0.6.1", - "terser": "^4.6.13", - "webpack-sources": "^1.4.3" - }, - "dependencies": { - "cacache": { - "version": "15.3.0", - "resolved": "https://registry.npmjs.org/cacache/-/cacache-15.3.0.tgz", - "integrity": "sha512-VVdYzXEn+cnbXpFgWs5hTT7OScegHVmLhJIR8Ufqk3iFD6A6j5iSX1KuBTfNEv4tdJWE2PzA6IVFtcLC7fN9wQ==", - "dev": true, - "requires": { - "@npmcli/fs": "^1.0.0", - "@npmcli/move-file": "^1.0.1", - "chownr": "^2.0.0", - "fs-minipass": "^2.0.0", - "glob": "^7.1.4", - "infer-owner": "^1.0.4", - "lru-cache": "^6.0.0", - "minipass": "^3.1.1", - "minipass-collect": "^1.0.2", - "minipass-flush": "^1.0.5", - "minipass-pipeline": "^1.2.2", - "mkdirp": "^1.0.3", - "p-map": "^4.0.0", - "promise-inflight": "^1.0.1", - "rimraf": "^3.0.2", - "ssri": "^8.0.1", - "tar": "^6.0.2", - "unique-filename": "^1.1.1" - } - }, - "chownr": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", - "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==", - "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 - }, - "jest-worker": { - "version": "26.6.2", - "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-26.6.2.tgz", - "integrity": "sha512-KWYVV1c4i+jbMpaBC+U++4Va0cp8OisU185o73T1vo99hqi7w8tSJfUXYswwqqrjzwxa6KpRK54WhPvwf5w6PQ==", - "dev": true, - "requires": { - "@types/node": "*", - "merge-stream": "^2.0.0", - "supports-color": "^7.0.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" - } - }, - "mkdirp": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", - "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", - "dev": true - }, - "p-map": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", - "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", - "dev": true, - "requires": { - "aggregate-error": "^3.0.0" - } - }, - "serialize-javascript": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-3.1.0.tgz", - "integrity": "sha512-JIJT1DGiWmIKhzRsG91aS6Ze4sFUrYbltlkg2onR5OrnNM02Kl/hnY/T4FN2omvyeBbQmMJv+K4cPOpGzOTFBg==", - "dev": true, - "requires": { - "randombytes": "^2.1.0" - } + "license": "MIT", + "dependencies": { + "@jridgewell/trace-mapping": "^0.3.20", + "jest-worker": "^27.4.5", + "schema-utils": "^3.1.1", + "serialize-javascript": "^6.0.1", + "terser": "^5.26.0" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^5.1.0" + }, + "peerDependenciesMeta": { + "@swc/core": { + "optional": 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" - } + "esbuild": { + "optional": true }, - "terser": { - "version": "4.8.0", - "resolved": "https://registry.npmjs.org/terser/-/terser-4.8.0.tgz", - "integrity": "sha512-EAPipTNeWsb/3wLPeup1tVPaXfIaU68xMnVdPafIL1TV05OhASArYyIfFvnvJCNrR2NIOvDVNNTFRa+Re2MWyw==", - "dev": true, - "requires": { - "commander": "^2.20.0", - "source-map": "~0.6.1", - "source-map-support": "~0.5.12" - } + "uglify-js": { + "optional": true } } }, - "through": { + "node_modules/terser-webpack-plugin/node_modules/commander": { + "version": "2.20.3", + "dev": true, + "license": "MIT" + }, + "node_modules/terser-webpack-plugin/node_modules/schema-utils": { + "version": "3.3.0", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/json-schema": "^7.0.8", + "ajv": "^6.12.5", + "ajv-keywords": "^3.5.2" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/terser-webpack-plugin/node_modules/terser": { + "version": "5.31.6", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "@jridgewell/source-map": "^0.3.3", + "acorn": "^8.8.2", + "commander": "^2.20.0", + "source-map-support": "~0.5.20" + }, + "bin": { + "terser": "bin/terser" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/terser/node_modules/commander": { + "version": "2.20.3", + "dev": true, + "license": "MIT" + }, + "node_modules/test-exclude": { + "version": "6.0.0", + "dev": true, + "license": "ISC", + "dependencies": { + "@istanbuljs/schema": "^0.1.2", + "glob": "^7.1.4", + "minimatch": "^3.0.4" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/test-exclude/node_modules/brace-expansion": { + "version": "1.1.11", + "dev": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/test-exclude/node_modules/glob": { + "version": "7.2.3", + "dev": true, + "license": "ISC", + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/test-exclude/node_modules/minimatch": { + "version": "3.1.2", + "dev": true, + "license": "ISC", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/text-table": { + "version": "0.2.0", + "dev": true, + "license": "MIT" + }, + "node_modules/through": { "version": "2.3.8", - "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", - "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=", - "dev": true + "dev": true, + "license": "MIT" }, - "through2": { + "node_modules/through2": { "version": "2.0.5", - "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz", - "integrity": "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "readable-stream": "~2.3.6", "xtend": "~4.0.1" } }, - "thunky": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/thunky/-/thunky-1.1.0.tgz", - "integrity": "sha512-eHY7nBftgThBqOyHGVN+l8gF0BucP09fMo0oO/Lb0w1OF80dJv+lDVpXG60WMQvkcxAkNybKsrEIE3ZtKGmPrA==", - "dev": true - }, - "timers-browserify": { - "version": "2.0.12", - "resolved": "https://registry.npmjs.org/timers-browserify/-/timers-browserify-2.0.12.tgz", - "integrity": "sha512-9phl76Cqm6FhSX9Xe1ZUAMLtm1BLkKj2Qd5ApyWkXzsMRaA7dgr81kf4wJmQf/hAvg8EEyJxDo3du/0KlhPiKQ==", + "node_modules/through2/node_modules/isarray": { + "version": "1.0.0", "dev": true, - "requires": { - "setimmediate": "^1.0.4" - } + "license": "MIT" }, - "timers-ext": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/timers-ext/-/timers-ext-0.1.7.tgz", - "integrity": "sha512-b85NUNzTSdodShTIbky6ZF02e8STtVVfD+fu4aXXShEELpozH+bCpJLYMPZbsABN2wDH7fJpqIoXxJpzbf0NqQ==", - "requires": { - "es5-ext": "~0.10.46", - "next-tick": "1" + "node_modules/through2/node_modules/readable-stream": { + "version": "2.3.8", + "dev": true, + "license": "MIT", + "dependencies": { + "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" } }, - "timsort": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/timsort/-/timsort-0.3.0.tgz", - "integrity": "sha1-QFQRqOfmM5/mTbmiNN4R3DHgK9Q=", - "dev": true + "node_modules/through2/node_modules/safe-buffer": { + "version": "5.1.2", + "dev": true, + "license": "MIT" }, - "tmp": { - "version": "0.0.33", - "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", - "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", + "node_modules/through2/node_modules/string_decoder": { + "version": "1.1.1", "dev": true, - "requires": { - "os-tmpdir": "~1.0.2" + "license": "MIT", + "dependencies": { + "safe-buffer": "~5.1.0" } }, - "to-array": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/to-array/-/to-array-0.1.4.tgz", - "integrity": "sha1-F+bBH3PdTz10zaek/zI46a2b+JA=", - "dev": true - }, - "to-arraybuffer": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/to-arraybuffer/-/to-arraybuffer-1.0.1.tgz", - "integrity": "sha1-fSKbH8xjfkZsoIEYCDanqr/4P0M=", - "dev": true + "node_modules/thunky": { + "version": "1.1.0", + "dev": true, + "license": "MIT" }, - "to-fast-properties": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", - "integrity": "sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4=", - "dev": true + "node_modules/timers-ext": { + "version": "0.1.8", + "license": "ISC", + "dependencies": { + "es5-ext": "^0.10.64", + "next-tick": "^1.1.0" + }, + "engines": { + "node": ">=0.12" + } }, - "to-object-path": { + "node_modules/timsort": { "version": "0.3.0", - "resolved": "https://registry.npmjs.org/to-object-path/-/to-object-path-0.3.0.tgz", - "integrity": "sha1-KXWIt7Dn4KwI4E5nL4XB9JmeF68=", + "license": "MIT" + }, + "node_modules/tmp": { + "version": "0.0.33", "dev": true, - "requires": { - "kind-of": "^3.0.2" - }, + "license": "MIT", "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } + "os-tmpdir": "~1.0.2" + }, + "engines": { + "node": ">=0.6.0" } }, - "to-readable-stream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/to-readable-stream/-/to-readable-stream-1.0.0.tgz", - "integrity": "sha512-Iq25XBt6zD5npPhlLVXGFN3/gyR2/qODcKNNyTMd4vbm39HUaOiAM4PMq0eMVC/Tkxz+Zjdsc55g9yyz+Yq00Q==", - "dev": true - }, - "to-regex": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/to-regex/-/to-regex-3.0.2.tgz", - "integrity": "sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw==", + "node_modules/to-fast-properties": { + "version": "2.0.0", "dev": true, - "requires": { - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "regex-not": "^1.0.2", - "safe-regex": "^1.1.0" + "license": "MIT", + "engines": { + "node": ">=4" } }, - "to-regex-range": { + "node_modules/to-regex-range": { "version": "5.0.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", - "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" } }, - "toggle-selection": { + "node_modules/toggle-selection": { "version": "1.0.6", - "resolved": "https://registry.npmjs.org/toggle-selection/-/toggle-selection-1.0.6.tgz", - "integrity": "sha512-BiZS+C1OS8g/q2RRbJmy59xpyghNBqrr6k5L/uKBGRsTfxmu3ffiRnd8mlGPUVayg8pvfi5urfnu8TU7DVOkLQ==" + "license": "MIT" }, - "toidentifier": { + "node_modules/toidentifier": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz", - "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==", - "dev": true - }, - "toposort": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/toposort/-/toposort-1.0.7.tgz", - "integrity": "sha1-LmhELZ9k7HILjMieZEOsbKqVACk=", - "dev": true - }, - "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==", "dev": true, - "requires": { - "psl": "^1.1.28", - "punycode": "^2.1.1" + "license": "MIT", + "engines": { + "node": ">=0.6" } }, - "tr46": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", - "integrity": "sha1-gYT9NH2snNwYWZLzpmIuFLnZq2o=" - }, - "traverse": { - "version": "0.6.7", - "resolved": "https://registry.npmjs.org/traverse/-/traverse-0.6.7.tgz", - "integrity": "sha512-/y956gpUo9ZNCb99YjxG7OaslxZWHfCHAUUfshwqOXmxUIvqLjVO581BT+gM59+QV9tFe6/CGG53tsA1Y7RSdg==" + "node_modules/totalist": { + "version": "1.1.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } }, - "tree-kill": { + "node_modules/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==", - "dev": true - }, - "tree-sitter": { - "version": "0.20.1", - "resolved": "https://registry.npmjs.org/tree-sitter/-/tree-sitter-0.20.1.tgz", - "integrity": "sha512-Cmb8V0ocamHbgWMVhZIa+78k/7r8VCQ6+ePG8eYEAO7AccwWi06Ct4ATNiI94KwhIkRl0+OwZ42/5nk3GnEMpQ==", + "dev": true, + "license": "MIT", + "bin": { + "tree-kill": "cli.js" + } + }, + "node_modules/tree-sitter": { + "version": "0.20.4", + "hasInstallScript": true, + "license": "MIT", "optional": true, - "requires": { - "nan": "^2.14.0", - "prebuild-install": "^6.0.1" + "dependencies": { + "nan": "^2.17.0", + "prebuild-install": "^7.1.1" } }, - "tree-sitter-json": { - "version": "0.20.0", - "resolved": "https://registry.npmjs.org/tree-sitter-json/-/tree-sitter-json-0.20.0.tgz", - "integrity": "sha512-PteOLH+Tx6Bz4ZA/d40/DbkiSXXRM/gKahhHI8hQ1lWNfFvdknnz9k3Mz84ol5srRyLboJ8wp8GSkhZ6ht9EGQ==", + "node_modules/tree-sitter-json": { + "version": "0.20.2", + "hasInstallScript": true, + "license": "MIT", "optional": true, - "requires": { - "nan": "^2.14.1" + "dependencies": { + "nan": "^2.18.0" } }, - "tree-sitter-yaml": { + "node_modules/tree-sitter-yaml": { "version": "0.5.0", - "resolved": "https://registry.npmjs.org/tree-sitter-yaml/-/tree-sitter-yaml-0.5.0.tgz", - "integrity": "sha512-POJ4ZNXXSWIG/W4Rjuyg36MkUD4d769YRUGKRqN+sVaj/VCo6Dh6Pkssn1Rtewd5kybx+jT1BWMyWN0CijXnMA==", + "hasInstallScript": true, + "license": "MIT", "optional": true, - "requires": { + "dependencies": { "nan": "^2.14.0" } }, - "tryer": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/tryer/-/tryer-1.0.1.tgz", - "integrity": "sha512-c3zayb8/kWWpycWYg87P71E1S1ZL6b6IJxfb5fvsUgsf0S2MVGaDhDXXjDMpdCpfWXqptc+4mXwmiy1ypXqRAA==", - "dev": true - }, - "ts-node": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-7.0.1.tgz", - "integrity": "sha512-BVwVbPJRspzNh2yfslyT1PSbl5uIk03EZlb493RKHN4qej/D06n1cEhjlOJG69oFsE7OT8XjpTUcYf6pKTLMhw==", - "dev": true, - "requires": { - "arrify": "^1.0.0", - "buffer-from": "^1.1.0", - "diff": "^3.1.0", - "make-error": "^1.1.1", - "minimist": "^1.2.0", - "mkdirp": "^0.5.1", - "source-map-support": "^0.5.6", - "yn": "^2.0.0" + "node_modules/ts-mixer": { + "version": "6.0.4", + "license": "MIT" + }, + "node_modules/ts-toolbelt": { + "version": "9.6.0", + "license": "Apache-2.0" + }, + "node_modules/tslib": { + "version": "2.8.1", + "license": "0BSD" + }, + "node_modules/tslint": { + "version": "6.1.3", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "@babel/code-frame": "^7.0.0", + "builtin-modules": "^1.1.1", + "chalk": "^2.3.0", + "commander": "^2.12.1", + "diff": "^4.0.1", + "glob": "^7.1.1", + "js-yaml": "^3.13.1", + "minimatch": "^3.0.4", + "mkdirp": "^0.5.3", + "resolve": "^1.3.2", + "semver": "^5.3.0", + "tslib": "^1.13.0", + "tsutils": "^2.29.0" + }, + "bin": { + "tslint": "bin/tslint" + }, + "engines": { + "node": ">=4.8.0" + }, + "peerDependencies": { + "typescript": ">=2.3.0-dev || >=2.4.0-dev || >=2.5.0-dev || >=2.6.0-dev || >=2.7.0-dev || >=2.8.0-dev || >=2.9.0-dev || >=3.0.0-dev || >= 3.1.0-dev || >= 3.2.0-dev || >= 4.0.0-dev" + } + }, + "node_modules/tslint/node_modules/brace-expansion": { + "version": "1.1.11", + "dev": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/tslint/node_modules/builtin-modules": { + "version": "1.1.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/tslint/node_modules/diff": { + "version": "4.0.2", + "dev": true, + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.3.1" + } + }, + "node_modules/tslint/node_modules/glob": { + "version": "7.2.3", + "dev": true, + "license": "ISC", + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/tslint/node_modules/minimatch": { + "version": "3.1.2", + "dev": true, + "license": "ISC", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/tslint/node_modules/mkdirp": { + "version": "0.5.6", + "dev": true, + "license": "MIT", + "dependencies": { + "minimist": "^1.2.6" + }, + "bin": { + "mkdirp": "bin/cmd.js" + } + }, + "node_modules/tslint/node_modules/semver": { + "version": "5.7.2", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver" } }, - "ts-toolbelt": { - "version": "6.15.5", - "resolved": "https://registry.npmjs.org/ts-toolbelt/-/ts-toolbelt-6.15.5.tgz", - "integrity": "sha512-FZIXf1ksVyLcfr7M317jbB67XFJhOO1YqdTcuGaq9q5jLUoTikukZ+98TPjKiP2jC5CgmYdWWYs0s2nLSU0/1A==" - }, - "tslib": { + "node_modules/tslint/node_modules/tslib": { "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" - }, - "tslint": { - "version": "5.15.0", - "resolved": "https://registry.npmjs.org/tslint/-/tslint-5.15.0.tgz", - "integrity": "sha512-6bIEujKR21/3nyeoX2uBnE8s+tMXCQXhqMmaIPJpHmXJoBJPTLcI7/VHRtUwMhnLVdwLqqY3zmd8Dxqa5CVdJA==", "dev": true, - "requires": { - "babel-code-frame": "^6.22.0", - "builtin-modules": "^1.1.1", - "chalk": "^2.3.0", - "commander": "^2.12.1", - "diff": "^3.2.0", - "glob": "^7.1.1", - "js-yaml": "^3.13.0", - "minimatch": "^3.0.4", - "mkdirp": "^0.5.1", - "resolve": "^1.3.2", - "semver": "^5.3.0", - "tslib": "^1.8.0", - "tsutils": "^2.29.0" - }, - "dependencies": { - "builtin-modules": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-1.1.1.tgz", - "integrity": "sha1-Jw8HbFpywC9bZaR9+Uxf46J4iS8=", - "dev": true - }, - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "dev": true - } - } + "license": "0BSD" }, - "tsutils": { + "node_modules/tstl": { + "version": "2.5.16", + "license": "MIT" + }, + "node_modules/tsutils": { "version": "2.29.0", - "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-2.29.0.tgz", - "integrity": "sha512-g5JVHCIJwzfISaXpXE1qvNalca5Jwob6FjI4AoPlqMusJ6ftFE7IkkFoMhVLRgK+4Kx3gkzb8UZK5t5yTTvEmA==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "tslib": "^1.8.1" + }, + "peerDependencies": { + "typescript": ">=2.1.0 || >=2.1.0-dev || >=2.2.0-dev || >=2.3.0-dev || >=2.4.0-dev || >=2.5.0-dev || >=2.6.0-dev || >=2.7.0-dev || >=2.8.0-dev || >=2.9.0-dev || >= 3.0.0-dev || >= 3.1.0-dev" } }, - "tty-browserify": { - "version": "0.0.0", - "resolved": "https://registry.npmjs.org/tty-browserify/-/tty-browserify-0.0.0.tgz", - "integrity": "sha1-oVe6QC2iTpv5V/mqadUk7tQpAaY=", - "dev": true + "node_modules/tsutils/node_modules/tslib": { + "version": "1.14.1", + "dev": true, + "license": "0BSD" }, - "tunnel-agent": { + "node_modules/tunnel-agent": { "version": "0.6.0", - "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", - "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", - "requires": { + "license": "Apache-2.0", + "optional": true, + "dependencies": { "safe-buffer": "^5.0.1" + }, + "engines": { + "node": "*" } }, - "tweetnacl": { - "version": "0.14.5", - "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", - "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=", - "dev": true - }, - "type": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/type/-/type-1.2.0.tgz", - "integrity": "sha512-+5nt5AAniqsCnu2cEQQdpzCAh33kVx8n0VoFidKpB1dVVLAN/F+bgVOqOJqOnEnrhp222clB5p3vUlD+1QAnfg==" + "node_modules/type": { + "version": "2.7.3", + "license": "ISC" }, - "type-fest": { + "node_modules/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==", - "dev": true + "dev": true, + "license": "(MIT OR CC0-1.0)", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } }, - "type-is": { + "node_modules/type-is": { "version": "1.6.18", - "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz", - "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "media-typer": "0.3.0", "mime-types": "~2.1.24" + }, + "engines": { + "node": ">= 0.6" } }, - "typedarray": { - "version": "0.0.6", - "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", - "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=", - "dev": true + "node_modules/typed-array-buffer": { + "version": "1.0.2", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "es-errors": "^1.3.0", + "is-typed-array": "^1.1.13" + }, + "engines": { + "node": ">= 0.4" + } }, - "typedarray-to-buffer": { - "version": "3.1.5", - "resolved": "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz", - "integrity": "sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==", + "node_modules/typed-array-byte-length": { + "version": "1.0.1", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "for-each": "^0.3.3", + "gopd": "^1.0.1", + "has-proto": "^1.0.3", + "is-typed-array": "^1.1.13" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/typed-array-byte-offset": { + "version": "1.0.2", + "dev": true, + "license": "MIT", + "dependencies": { + "available-typed-arrays": "^1.0.7", + "call-bind": "^1.0.7", + "for-each": "^0.3.3", + "gopd": "^1.0.1", + "has-proto": "^1.0.3", + "is-typed-array": "^1.1.13" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/typed-array-length": { + "version": "1.0.6", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "for-each": "^0.3.3", + "gopd": "^1.0.1", + "has-proto": "^1.0.3", + "is-typed-array": "^1.1.13", + "possible-typed-array-names": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/typed-assert": { + "version": "1.0.9", "dev": true, - "requires": { - "is-typedarray": "^1.0.0" + "license": "MIT" + }, + "node_modules/types-ramda": { + "version": "0.30.1", + "license": "MIT", + "dependencies": { + "ts-toolbelt": "^9.6.0" } }, - "typescript": { - "version": "3.8.3", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-3.8.3.tgz", - "integrity": "sha512-MYlEfn5VrLNsgudQTVJeNaQFUAI7DkhnOjdpAp4T+ku1TfQClewlbSuTVHiA+8skNBgaf02TL/kLOvig4y3G8w==", - "dev": true + "node_modules/typescript": { + "version": "4.8.4", + "dev": true, + "license": "Apache-2.0", + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=4.2.0" + } }, - "ua-parser-js": { - "version": "0.7.35", - "resolved": "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-0.7.35.tgz", - "integrity": "sha512-veRf7dawaj9xaWEu9HoTVn5Pggtc/qj+kqTOFvNiN1l0YdxwC1kvel57UCjThjGa3BHBihE8/UJAHI+uQHmd/g==" + "node_modules/ua-parser-js": { + "version": "0.7.38", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/ua-parser-js" + }, + { + "type": "paypal", + "url": "https://paypal.me/faisalman" + }, + { + "type": "github", + "url": "https://github.com/sponsors/faisalman" + } + ], + "license": "MIT", + "engines": { + "node": "*" + } }, - "uglify-js": { + "node_modules/uglify-js": { "version": "3.4.10", - "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.4.10.tgz", - "integrity": "sha512-Y2VsbPVs0FIshJztycsO2SfPk7/KAF/T72qzv9u5EpQ4kB2hQoHlhNQTsNyy6ul7lQtqJN/AoWeS23OzEiEFxw==", "dev": true, - "requires": { + "license": "BSD-2-Clause", + "dependencies": { "commander": "~2.19.0", "source-map": "~0.6.1" }, - "dependencies": { - "commander": { - "version": "2.19.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.19.0.tgz", - "integrity": "sha512-6tvAOO+D6OENvRAh524Dh9jcfKTYDQAqvqezbCW82xj5X0pSrcpxtvRKHLG0yBY6SD7PSDrJaj+0AiOcKVd1Xg==", - "dev": true - } + "bin": { + "uglifyjs": "bin/uglifyjs" + }, + "engines": { + "node": ">=0.8.0" } }, - "ui-select": { - "version": "0.17.1", - "resolved": "https://registry.npmjs.org/ui-select/-/ui-select-0.17.1.tgz", - "integrity": "sha512-+LcKWuybIQRDy+IYCaTApvcZlNvS5oK9jb5t6NNj3c3cLrPFx9a38u4p3NrxPwnIQHImbONYHr5X7zZlY86A7A==" + "node_modules/uglify-js/node_modules/commander": { + "version": "2.19.0", + "dev": true, + "license": "MIT" }, - "ultron": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/ultron/-/ultron-1.1.1.tgz", - "integrity": "sha512-UIEXBNeYmKptWH6z8ZnqTeS8fV74zG0/eRU9VGkpzz+LIJNs8W/zM/L+7ctCkRrgbNnnR0xxw4bKOr0cW0N0Og==", - "dev": true + "node_modules/uglify-js/node_modules/source-map": { + "version": "0.6.1", + "dev": true, + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.10.0" + } }, - "unbox-primitive": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.1.tgz", - "integrity": "sha512-tZU/3NqK3dA5gpE1KtyiJUrEB0lxnGkMFHptJ7q6ewdZ8s12QrODwNbhIJStmJkd1QDXa1NRA8aF2A1zk/Ypyw==", + "node_modules/ui-select": { + "version": "0.17.1", + "license": "MIT" + }, + "node_modules/unbox-primitive": { + "version": "1.0.2", "dev": true, - "requires": { - "function-bind": "^1.1.1", - "has-bigints": "^1.0.1", - "has-symbols": "^1.0.2", + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.2", + "has-bigints": "^1.0.2", + "has-symbols": "^1.0.3", "which-boxed-primitive": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "underscore": { + "node_modules/underscore": { "version": "1.13.6", - "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.13.6.tgz", - "integrity": "sha512-+A5Sja4HP1M08MaXya7p5LvjuM7K6q/2EaC0+iovj/wOcMsTzMvDFbasi/oSapiwOlt252IqsKqPjCl7huKS0A==" + "license": "MIT" }, - "unicode-canonical-property-names-ecmascript": { + "node_modules/unicode-canonical-property-names-ecmascript": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.0.tgz", - "integrity": "sha512-yY5PpDlfVIU5+y/BSCxAJRBIS1Zc2dDG3Ujq+sR0U+JjUevW2JhocOF+soROYDSaAezOzOKuyyixhD6mBknSmQ==", - "dev": true + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } }, - "unicode-match-property-ecmascript": { + "node_modules/unicode-match-property-ecmascript": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-2.0.0.tgz", - "integrity": "sha512-5kaZCrbp5mmbz5ulBkDkbY0SsPOjKqVS35VpL9ulMPfSl0J0Xsm+9Evphv9CoIZFwre7aJoa94AY6seMKGVN5Q==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "unicode-canonical-property-names-ecmascript": "^2.0.0", "unicode-property-aliases-ecmascript": "^2.0.0" + }, + "engines": { + "node": ">=4" } }, - "unicode-match-property-value-ecmascript": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.0.0.tgz", - "integrity": "sha512-7Yhkc0Ye+t4PNYzOGKedDhXbYIBe1XEQYQxOPyhcXNMJ0WCABqqj6ckydd6pWRZTHV4GuCPKdBAUiMc60tsKVw==", - "dev": true + "node_modules/unicode-match-property-value-ecmascript": { + "version": "2.1.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } }, - "unicode-property-aliases-ecmascript": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-2.0.0.tgz", - "integrity": "sha512-5Zfuy9q/DFr4tfO7ZPeVXb1aPoeQSdeFMLpYuFebehDAhbuevLs5yxSZmIFN1tP5F9Wl4IpJrYojg85/zgyZHQ==", - "dev": true + "node_modules/unicode-property-aliases-ecmascript": { + "version": "2.1.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } }, - "unidragger": { + "node_modules/unidragger": { "version": "2.4.0", - "resolved": "https://registry.npmjs.org/unidragger/-/unidragger-2.4.0.tgz", - "integrity": "sha512-MueZK2oXuGE6OAlGKIrSXK2zCq+8yb1QUZgqyTDCSJzvwYL0g2Llrad+TtoQTYxtFnNyxxSw0IMnKNIgEMia1w==", - "requires": { + "license": "MIT", + "dependencies": { "unipointer": "^2.4.0" } }, - "union-value": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/union-value/-/union-value-1.0.1.tgz", - "integrity": "sha512-tJfXmxMeWYnczCVs7XAEvIV7ieppALdyepWMkHkwciRpZraG/xwT+s2JN8+pr1+8jCRf80FFzvr+MpQeeoF4Xg==", - "dev": true, - "requires": { - "arr-union": "^3.1.0", - "get-value": "^2.0.6", - "is-extendable": "^0.1.1", - "set-value": "^2.0.1" - } - }, - "unipointer": { + "node_modules/unipointer": { "version": "2.4.0", - "resolved": "https://registry.npmjs.org/unipointer/-/unipointer-2.4.0.tgz", - "integrity": "sha512-VjzDLPjGK7aYpQKH7bnDZS8X4axF5AFU/LQi+NQe1oyEHfaz6lWKhaQ7n4o7vJ1iJ4i2T0quCIfrQM139p05Sw==", - "requires": { + "license": "MIT", + "dependencies": { "ev-emitter": "^1.0.1" } }, - "uniq": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/uniq/-/uniq-1.0.1.tgz", - "integrity": "sha1-sxxa6CVIRKOoKBVBzisEuGWnNP8=", - "dev": true - }, - "uniqs": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/uniqs/-/uniqs-2.0.0.tgz", - "integrity": "sha1-/+3ks2slKQaW5uFl1KWe25mOawI=", - "dev": true - }, - "unique-filename": { + "node_modules/unique-filename": { "version": "1.1.1", - "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-1.1.1.tgz", - "integrity": "sha512-Vmp0jIp2ln35UTXuryvjzkjGdRyf9b2lTXuSYUiPmzRcl3FDtYqAwOnTJkAngD9SWhnoJzDbTKwaOrZ+STtxNQ==", "dev": true, - "requires": { + "license": "ISC", + "dependencies": { "unique-slug": "^2.0.0" } }, - "unique-slug": { + "node_modules/unique-slug": { "version": "2.0.2", - "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-2.0.2.tgz", - "integrity": "sha512-zoWr9ObaxALD3DOPfjPSqxt4fnZiWblxHIgeWqW8x7UqDzEtHEQLzji2cuJYQFCU6KmoJikOYAZlrTHHebjx2w==", "dev": true, - "requires": { + "license": "ISC", + "dependencies": { "imurmurhash": "^0.1.4" } }, - "unique-string": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/unique-string/-/unique-string-2.0.0.tgz", - "integrity": "sha512-uNaeirEPvpZWSgzwsPGtU2zVSTrn/8L5q/IexZmH0eH6SA73CmAA5U4GwORTxQAZs95TAXLNqeLoPPNO5gZfWg==", + "node_modules/universalify": { + "version": "0.1.2", "dev": true, - "requires": { - "crypto-random-string": "^2.0.0" + "license": "MIT", + "engines": { + "node": ">= 4.0.0" } }, - "universal-analytics": { - "version": "0.4.20", - "resolved": "https://registry.npmjs.org/universal-analytics/-/universal-analytics-0.4.20.tgz", - "integrity": "sha512-gE91dtMvNkjO+kWsPstHRtSwHXz0l2axqptGYp5ceg4MsuurloM0PU3pdOfpb5zBXUvyjT4PwhWK2m39uczZuw==", + "node_modules/unpipe": { + "version": "1.0.0", "dev": true, - "requires": { - "debug": "^3.0.0", - "request": "^2.88.0", - "uuid": "^3.0.0" - }, - "dependencies": { - "debug": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - } + "license": "MIT", + "engines": { + "node": ">= 0.8" } }, - "universalify": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", - "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", - "dev": true - }, - "unpipe": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", - "integrity": "sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw=", - "dev": true - }, - "unquote": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/unquote/-/unquote-1.1.1.tgz", - "integrity": "sha1-j97XMk7G6IoP+LkF58CYzcCG1UQ=", - "dev": true - }, - "unraw": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/unraw/-/unraw-2.0.1.tgz", - "integrity": "sha512-tdOvLfRzHolwYcHS6HIX860MkK9LQ4+oLuNwFYL7bpgTEO64PZrcQxkisgwJYCfF8sKiWLwwu1c83DvMkbefIQ==" + "node_modules/unraw": { + "version": "3.0.0", + "license": "MIT" }, - "unset-value": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/unset-value/-/unset-value-1.0.0.tgz", - "integrity": "sha1-g3aHP30jNRef+x5vw6jtDfyKtVk=", - "dev": true, - "requires": { - "has-value": "^0.3.1", - "isobject": "^3.0.0" - }, - "dependencies": { - "has-value": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/has-value/-/has-value-0.3.1.tgz", - "integrity": "sha1-ex9YutpiyoJ+wKIHgCVlSEWZXh8=", - "dev": true, - "requires": { - "get-value": "^2.0.3", - "has-values": "^0.1.4", - "isobject": "^2.0.0" - }, - "dependencies": { - "isobject": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz", - "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=", - "dev": true, - "requires": { - "isarray": "1.0.0" - } - } - } - }, - "has-values": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/has-values/-/has-values-0.1.4.tgz", - "integrity": "sha1-bWHeldkd/Km5oCCJrThL/49it3E=", - "dev": true - } + "node_modules/untildify": { + "version": "4.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" } }, - "upath": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/upath/-/upath-1.2.0.tgz", - "integrity": "sha512-aZwGpamFO61g3OlfT7OQCHqhGnW43ieH9WZeP7QxN/G/jS4jfqUkZxoryvJgVPEcrl5NL/ggHsSmLMHuH64Lhg==", - "dev": true - }, - "update-notifier": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/update-notifier/-/update-notifier-4.1.3.tgz", - "integrity": "sha512-Yld6Z0RyCYGB6ckIjffGOSOmHXj1gMeE7aROz4MG+XMkmixBX4jUngrGXNYz7wPKBmtoD4MnBa2Anu7RSKht/A==", - "dev": true, - "requires": { - "boxen": "^4.2.0", - "chalk": "^3.0.0", - "configstore": "^5.0.1", - "has-yarn": "^2.1.0", - "import-lazy": "^2.1.0", - "is-ci": "^2.0.0", - "is-installed-globally": "^0.3.1", - "is-npm": "^4.0.0", - "is-yarn-global": "^0.3.0", - "latest-version": "^5.0.0", - "pupa": "^2.0.1", - "semver-diff": "^3.1.1", - "xdg-basedir": "^4.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" - } - }, - "chalk": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", - "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.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 + "node_modules/update-browserslist-db": { + "version": "1.1.0", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" }, - "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 + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" }, - "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" - } + { + "type": "github", + "url": "https://github.com/sponsors/ai" } + ], + "license": "MIT", + "dependencies": { + "escalade": "^3.1.2", + "picocolors": "^1.0.1" + }, + "bin": { + "update-browserslist-db": "cli.js" + }, + "peerDependencies": { + "browserslist": ">= 4.21.0" } }, - "upper-case": { + "node_modules/upper-case": { "version": "1.1.3", - "resolved": "https://registry.npmjs.org/upper-case/-/upper-case-1.1.3.tgz", - "integrity": "sha1-9rRQHC7EzdJrp4vnIilh3ndiFZg=", - "dev": true + "dev": true, + "license": "MIT" }, - "uri-js": { + "node_modules/uri-js": { "version": "4.4.1", - "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", - "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", - "requires": { + "license": "BSD-2-Clause", + "dependencies": { "punycode": "^2.1.0" } }, - "urix": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/urix/-/urix-0.1.0.tgz", - "integrity": "sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI=", - "dev": true - }, - "url": { - "version": "0.11.0", - "resolved": "https://registry.npmjs.org/url/-/url-0.11.0.tgz", - "integrity": "sha1-ODjpfPxgUh63PFJajlW/3Z4uKPE=", - "requires": { - "punycode": "1.3.2", - "querystring": "0.2.0" - }, - "dependencies": { - "punycode": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.3.2.tgz", - "integrity": "sha1-llOgNvt8HuQjQvIyXM7v6jkmxI0=" - } + "node_modules/uri-js/node_modules/punycode": { + "version": "2.3.1", + "license": "MIT", + "engines": { + "node": ">=6" } }, - "url-parse": { + "node_modules/urix": { + "version": "0.1.0", + "dev": true, + "license": "MIT", + "peer": true + }, + "node_modules/url-parse": { "version": "1.5.10", - "resolved": "https://registry.npmjs.org/url-parse/-/url-parse-1.5.10.tgz", - "integrity": "sha512-WypcfiRhfeUP9vvF0j6rw0J3hrWrw6iZv3+22h6iRMJ/8z1Tj6XfLP4DsUix5MhMPnXpiHDoKyoZ/bdCkwBCiQ==", - "requires": { + "license": "MIT", + "dependencies": { "querystringify": "^2.1.1", "requires-port": "^1.0.0" } }, - "url-parse-lax": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-3.0.0.tgz", - "integrity": "sha1-FrXK/Afb42dsGxmZF3gj1lA6yww=", + "node_modules/util-deprecate": { + "version": "1.0.2", + "devOptional": true, + "license": "MIT" + }, + "node_modules/utila": { + "version": "0.4.0", "dev": true, - "requires": { - "prepend-http": "^2.0.0" - }, - "dependencies": { - "prepend-http": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-2.0.0.tgz", - "integrity": "sha1-6SQ0v6XqjBn0HN/UAddBo8gZ2Jc=", - "dev": true - } + "license": "MIT" + }, + "node_modules/utils-merge": { + "version": "1.0.1", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4.0" } }, - "use": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/use/-/use-3.1.1.tgz", - "integrity": "sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==", - "dev": true + "node_modules/uuid": { + "version": "8.3.2", + "dev": true, + "license": "MIT", + "bin": { + "uuid": "dist/bin/uuid" + } }, - "useragent": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/useragent/-/useragent-2.3.0.tgz", - "integrity": "sha512-4AoH4pxuSvHCjqLO04sU6U/uE65BYza8l/KKBS0b0hnUPWi+cQ2BpeTEwejCSx9SPV5/U03nniDTrWx5NrmKdw==", - "dev": true, - "requires": { - "lru-cache": "4.1.x", - "tmp": "0.0.x" - }, - "dependencies": { - "lru-cache": { - "version": "4.1.5", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz", - "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==", - "dev": true, - "requires": { - "pseudomap": "^1.0.2", - "yallist": "^2.1.2" - } - }, - "yallist": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", - "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=", - "dev": true - } + "node_modules/validate-npm-package-license": { + "version": "3.0.4", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "spdx-correct": "^3.0.0", + "spdx-expression-parse": "^3.0.0" } }, - "util": { - "version": "0.11.1", - "resolved": "https://registry.npmjs.org/util/-/util-0.11.1.tgz", - "integrity": "sha512-HShAsny+zS2TZfaXxD9tYj4HQGlBezXZMZuM/S5PKLLoZkShZiGk9o5CzukI1LVHZvjdvZ2Sj1aW/Ndn2NB/HQ==", + "node_modules/validate-npm-package-name": { + "version": "4.0.0", "dev": true, - "requires": { - "inherits": "2.0.3" - }, + "license": "ISC", "dependencies": { - "inherits": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=", - "dev": true - } + "builtins": "^5.0.0" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, - "util-deprecate": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" + "node_modules/vary": { + "version": "1.1.2", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.8" + } }, - "util-promisify": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/util-promisify/-/util-promisify-2.1.0.tgz", - "integrity": "sha1-PCI2R2xNMsX/PEcAKt18E7moKlM=", + "node_modules/void-elements": { + "version": "2.0.1", "dev": true, - "requires": { - "object.getownpropertydescriptors": "^2.0.3" + "license": "MIT", + "engines": { + "node": ">=0.10.0" } }, - "util.promisify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/util.promisify/-/util.promisify-1.0.1.tgz", - "integrity": "sha512-g9JpC/3He3bm38zsLupWryXHoEcS22YHthuPQSJdMy6KNrzIRzWqcsHzD/WUnqe45whVou4VIsPew37DoXWNrA==", + "node_modules/watchpack": { + "version": "2.4.2", "dev": true, - "requires": { - "define-properties": "^1.1.3", - "es-abstract": "^1.17.2", - "has-symbols": "^1.0.1", - "object.getownpropertydescriptors": "^2.1.0" + "license": "MIT", + "dependencies": { + "glob-to-regexp": "^0.4.1", + "graceful-fs": "^4.1.2" + }, + "engines": { + "node": ">=10.13.0" } }, - "utila": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/utila/-/utila-0.4.0.tgz", - "integrity": "sha1-ihagXURWV6Oupe7MWxKk+lN5dyw=", - "dev": true + "node_modules/wbuf": { + "version": "1.7.3", + "dev": true, + "license": "MIT", + "dependencies": { + "minimalistic-assert": "^1.0.0" + } }, - "utils-merge": { + "node_modules/wcwidth": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", - "integrity": "sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM=", - "dev": true + "dev": true, + "license": "MIT", + "dependencies": { + "defaults": "^1.0.3" + } + }, + "node_modules/web-streams-polyfill": { + "version": "3.3.3", + "license": "MIT", + "engines": { + "node": ">= 8" + } }, - "uuid": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", - "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==", - "dev": true + "node_modules/web-tree-sitter": { + "version": "0.20.3", + "license": "MIT", + "optional": true }, - "validate-npm-package-license": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", - "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", + "node_modules/webfontloader": { + "version": "1.6.6", + "license": "Apache-2.0" + }, + "node_modules/webpack": { + "version": "5.75.0", "dev": true, - "requires": { - "spdx-correct": "^3.0.0", - "spdx-expression-parse": "^3.0.0" + "license": "MIT", + "dependencies": { + "@types/eslint-scope": "^3.7.3", + "@types/estree": "^0.0.51", + "@webassemblyjs/ast": "1.11.1", + "@webassemblyjs/wasm-edit": "1.11.1", + "@webassemblyjs/wasm-parser": "1.11.1", + "acorn": "^8.7.1", + "acorn-import-assertions": "^1.7.6", + "browserslist": "^4.14.5", + "chrome-trace-event": "^1.0.2", + "enhanced-resolve": "^5.10.0", + "es-module-lexer": "^0.9.0", + "eslint-scope": "5.1.1", + "events": "^3.2.0", + "glob-to-regexp": "^0.4.1", + "graceful-fs": "^4.2.9", + "json-parse-even-better-errors": "^2.3.1", + "loader-runner": "^4.2.0", + "mime-types": "^2.1.27", + "neo-async": "^2.6.2", + "schema-utils": "^3.1.0", + "tapable": "^2.1.1", + "terser-webpack-plugin": "^5.1.3", + "watchpack": "^2.4.0", + "webpack-sources": "^3.2.3" + }, + "bin": { + "webpack": "bin/webpack.js" + }, + "engines": { + "node": ">=10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependenciesMeta": { + "webpack-cli": { + "optional": true + } } }, - "validate-npm-package-name": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-3.0.0.tgz", - "integrity": "sha1-X6kS2B630MdK/BQN5zF/DKffQ34=", + "node_modules/webpack-bundle-analyzer": { + "version": "4.7.0", "dev": true, - "requires": { - "builtins": "^1.0.3" + "license": "MIT", + "dependencies": { + "acorn": "^8.0.4", + "acorn-walk": "^8.0.0", + "chalk": "^4.1.0", + "commander": "^7.2.0", + "gzip-size": "^6.0.0", + "lodash": "^4.17.20", + "opener": "^1.5.2", + "sirv": "^1.0.7", + "ws": "^7.3.1" + }, + "bin": { + "webpack-bundle-analyzer": "lib/bin/analyzer.js" + }, + "engines": { + "node": ">= 10.13.0" } }, - "vary": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", - "integrity": "sha1-IpnwLG3tMNSllhsLn3RSShj2NPw=", - "dev": true + "node_modules/webpack-bundle-analyzer/node_modules/ansi-styles": { + "version": "4.3.0", + "dev": true, + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } }, - "vendors": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/vendors/-/vendors-1.0.4.tgz", - "integrity": "sha512-/juG65kTL4Cy2su4P8HjtkTxk6VmJDiOPBufWniqQ6wknac6jNiXS9vU+hO3wgusiyqWlzTbVHi0dyJqRONg3w==", - "dev": true - }, - "verror": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", - "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=", - "dev": true, - "requires": { - "assert-plus": "^1.0.0", - "core-util-is": "1.0.2", - "extsprintf": "^1.2.0" - }, - "dependencies": { - "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 - } + "node_modules/webpack-bundle-analyzer/node_modules/chalk": { + "version": "4.1.2", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "vm-browserify": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/vm-browserify/-/vm-browserify-1.1.2.tgz", - "integrity": "sha512-2ham8XPWTONajOR0ohOKOHXkm3+gaBmGut3SRuu75xLd/RRaY6vqgh8NBYYk7+RW3u5AtzPQZG8F10LHkl0lAQ==", - "dev": true + "node_modules/webpack-bundle-analyzer/node_modules/color-convert": { + "version": "2.0.1", + "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/webpack-bundle-analyzer/node_modules/color-name": { + "version": "1.1.4", + "dev": true, + "license": "MIT" + }, + "node_modules/webpack-bundle-analyzer/node_modules/commander": { + "version": "7.2.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 10" + } }, - "void-elements": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/void-elements/-/void-elements-2.0.1.tgz", - "integrity": "sha1-wGavtYK7HLQSjWDqkjkulNXp2+w=", - "dev": true + "node_modules/webpack-bundle-analyzer/node_modules/has-flag": { + "version": "4.0.0", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } }, - "watchpack": { - "version": "1.7.5", - "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-1.7.5.tgz", - "integrity": "sha512-9P3MWk6SrKjHsGkLT2KHXdQ/9SNkyoJbabxnKOoJepsvJjJG8uYTR3yTPxPQvNDI3w4Nz1xnE0TLHK4RIVe/MQ==", + "node_modules/webpack-bundle-analyzer/node_modules/supports-color": { + "version": "7.2.0", "dev": true, - "requires": { - "chokidar": "^3.4.1", - "graceful-fs": "^4.1.2", - "neo-async": "^2.5.0", - "watchpack-chokidar2": "^2.0.1" + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" } }, - "watchpack-chokidar2": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/watchpack-chokidar2/-/watchpack-chokidar2-2.0.1.tgz", - "integrity": "sha512-nCFfBIPKr5Sh61s4LPpy1Wtfi0HE8isJ3d2Yb5/Ppw2P2B/3eVSEBjKfN0fmHJSK14+31KwMKmcrzs2GM4P0Ww==", + "node_modules/webpack-bundle-analyzer/node_modules/ws": { + "version": "7.5.10", "dev": true, - "optional": true, - "requires": { - "chokidar": "^2.1.8" - }, - "dependencies": { - "anymatch": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-2.0.0.tgz", - "integrity": "sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw==", - "dev": true, - "optional": true, - "requires": { - "micromatch": "^3.1.4", - "normalize-path": "^2.1.1" - }, - "dependencies": { - "normalize-path": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", - "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", - "dev": true, - "optional": true, - "requires": { - "remove-trailing-separator": "^1.0.1" - } - } - } - }, - "binary-extensions": { - "version": "1.13.1", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.13.1.tgz", - "integrity": "sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw==", - "dev": true, + "license": "MIT", + "engines": { + "node": ">=8.3.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": "^5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { "optional": true }, - "braces": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", - "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", - "dev": true, - "optional": true, - "requires": { - "arr-flatten": "^1.1.0", - "array-unique": "^0.3.2", - "extend-shallow": "^2.0.1", - "fill-range": "^4.0.0", - "isobject": "^3.0.1", - "repeat-element": "^1.1.2", - "snapdragon": "^0.8.1", - "snapdragon-node": "^2.0.1", - "split-string": "^3.0.2", - "to-regex": "^3.0.1" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "optional": true, - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "chokidar": { - "version": "2.1.8", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-2.1.8.tgz", - "integrity": "sha512-ZmZUazfOzf0Nve7duiCKD23PFSCs4JPoYyccjUFF3aQkQadqBhfzhjkwBH2mNOG9cTBwhamM37EIsIkZw3nRgg==", - "dev": true, - "optional": true, - "requires": { - "anymatch": "^2.0.0", - "async-each": "^1.0.1", - "braces": "^2.3.2", - "fsevents": "^1.2.7", - "glob-parent": "^3.1.0", - "inherits": "^2.0.3", - "is-binary-path": "^1.0.0", - "is-glob": "^4.0.0", - "normalize-path": "^3.0.0", - "path-is-absolute": "^1.0.0", - "readdirp": "^2.2.1", - "upath": "^1.1.1" - } - }, - "fill-range": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", - "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", - "dev": true, - "optional": true, - "requires": { - "extend-shallow": "^2.0.1", - "is-number": "^3.0.0", - "repeat-string": "^1.6.1", - "to-regex-range": "^2.1.0" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "optional": true, - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "fsevents": { - "version": "1.2.13", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.13.tgz", - "integrity": "sha512-oWb1Z6mkHIskLzEJ/XWX0srkpkTQ7vaopMQkyaEIoq0fmtFVxOthb8cCxeT+p3ynTdkk/RZwbgG4brR5BeWECw==", - "dev": true, - "optional": true, - "requires": { - "bindings": "^1.5.0", - "nan": "^2.12.1" - } - }, - "glob-parent": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz", - "integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=", - "dev": true, - "optional": true, - "requires": { - "is-glob": "^3.1.0", - "path-dirname": "^1.0.0" - }, - "dependencies": { - "is-glob": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", - "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", - "dev": true, - "optional": true, - "requires": { - "is-extglob": "^2.1.0" - } - } - } - }, - "is-binary-path": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz", - "integrity": "sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg=", - "dev": true, - "optional": true, - "requires": { - "binary-extensions": "^1.0.0" - } - }, - "is-number": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", - "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", - "dev": true, - "optional": true, - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "optional": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "micromatch": { - "version": "3.1.10", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", - "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", - "dev": true, - "optional": true, - "requires": { - "arr-diff": "^4.0.0", - "array-unique": "^0.3.2", - "braces": "^2.3.1", - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "extglob": "^2.0.4", - "fragment-cache": "^0.2.1", - "kind-of": "^6.0.2", - "nanomatch": "^1.2.9", - "object.pick": "^1.3.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.2" - } - }, - "readdirp": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.2.1.tgz", - "integrity": "sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ==", - "dev": true, - "optional": true, - "requires": { - "graceful-fs": "^4.1.11", - "micromatch": "^3.1.10", - "readable-stream": "^2.0.2" - } - }, - "to-regex-range": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", - "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=", - "dev": true, - "optional": true, - "requires": { - "is-number": "^3.0.0", - "repeat-string": "^1.6.1" - } + "utf-8-validate": { + "optional": true } } }, - "wbuf": { - "version": "1.7.3", - "resolved": "https://registry.npmjs.org/wbuf/-/wbuf-1.7.3.tgz", - "integrity": "sha512-O84QOnr0icsbFGLS0O3bI5FswxzRr8/gHwWkDlQFskhSPryQXvrTMxjxGP4+iWYoauLoBvfDpkrOauZ+0iZpDA==", + "node_modules/webpack-dev-middleware": { + "version": "5.3.3", "dev": true, - "requires": { - "minimalistic-assert": "^1.0.0" + "license": "MIT", + "dependencies": { + "colorette": "^2.0.10", + "memfs": "^3.4.3", + "mime-types": "^2.1.31", + "range-parser": "^1.2.1", + "schema-utils": "^4.0.0" + }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^4.0.0 || ^5.0.0" } }, - "wcwidth": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/wcwidth/-/wcwidth-1.0.1.tgz", - "integrity": "sha1-8LDc+RW8X/FSivrbLA4XtTLaL+g=", + "node_modules/webpack-dev-middleware/node_modules/ajv": { + "version": "8.17.1", "dev": true, - "requires": { - "defaults": "^1.0.3" + "license": "MIT", + "dependencies": { + "fast-deep-equal": "^3.1.3", + "fast-uri": "^3.0.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" } }, - "web-streams-polyfill": { - "version": "4.0.0-beta.3", - "resolved": "https://registry.npmjs.org/web-streams-polyfill/-/web-streams-polyfill-4.0.0-beta.3.tgz", - "integrity": "sha512-QW95TCTaHmsYfHDybGMwO5IJIM93I/6vTRk+daHTWFPhwh+C8Cg7j7XyKrwrj8Ib6vYXe0ocYNrmzY4xAAN6ug==" + "node_modules/webpack-dev-middleware/node_modules/ajv-keywords": { + "version": "5.1.0", + "dev": true, + "license": "MIT", + "dependencies": { + "fast-deep-equal": "^3.1.3" + }, + "peerDependencies": { + "ajv": "^8.8.2" + } }, - "web-tree-sitter": { - "version": "0.20.7", - "resolved": "https://registry.npmjs.org/web-tree-sitter/-/web-tree-sitter-0.20.7.tgz", - "integrity": "sha512-flC9JJmTII9uAeeYpWF8hxDJ7bfY+leldQryetll8Nv4WgI+MXc6h7TiyAZASWl9uC9TvmfdgOjZn1DAQecb3A==", - "optional": true + "node_modules/webpack-dev-middleware/node_modules/json-schema-traverse": { + "version": "1.0.0", + "dev": true, + "license": "MIT" }, - "webdriver-js-extender": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/webdriver-js-extender/-/webdriver-js-extender-2.1.0.tgz", - "integrity": "sha512-lcUKrjbBfCK6MNsh7xaY2UAUmZwe+/ib03AjVOpFobX4O7+83BUveSrLfU0Qsyb1DaKJdQRbuU+kM9aZ6QUhiQ==", + "node_modules/webpack-dev-middleware/node_modules/schema-utils": { + "version": "4.2.0", "dev": true, - "requires": { - "@types/selenium-webdriver": "^3.0.0", - "selenium-webdriver": "^3.0.1" + "license": "MIT", + "dependencies": { + "@types/json-schema": "^7.0.9", + "ajv": "^8.9.0", + "ajv-formats": "^2.1.1", + "ajv-keywords": "^5.1.0" + }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" } }, - "webfontloader": { - "version": "1.6.6", - "resolved": "https://registry.npmjs.org/webfontloader/-/webfontloader-1.6.6.tgz", - "integrity": "sha1-WdawVIApbYYlgFU0Hqv087pAQek=" - }, - "webidl-conversions": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", - "integrity": "sha1-JFNCdeKnvGvnvIZhHMFq4KVlSHE=" - }, - "webpack": { - "version": "4.46.0", - "resolved": "https://registry.npmjs.org/webpack/-/webpack-4.46.0.tgz", - "integrity": "sha512-6jJuJjg8znb/xRItk7bkT0+Q7AHCYjjFnvKIWQPkNIOyRqoCGvkOs0ipeQzrqz4l5FtN5ZI/ukEHroeX/o1/5Q==", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.9.0", - "@webassemblyjs/helper-module-context": "1.9.0", - "@webassemblyjs/wasm-edit": "1.9.0", - "@webassemblyjs/wasm-parser": "1.9.0", - "acorn": "^6.4.1", - "ajv": "^6.10.2", - "ajv-keywords": "^3.4.1", - "chrome-trace-event": "^1.0.2", - "enhanced-resolve": "^4.5.0", - "eslint-scope": "^4.0.3", - "json-parse-better-errors": "^1.0.2", - "loader-runner": "^2.4.0", - "loader-utils": "^1.2.3", - "memory-fs": "^0.4.1", - "micromatch": "^3.1.10", - "mkdirp": "^0.5.3", - "neo-async": "^2.6.1", - "node-libs-browser": "^2.2.1", - "schema-utils": "^1.0.0", - "tapable": "^1.1.3", - "terser-webpack-plugin": "^1.4.3", - "watchpack": "^1.7.4", - "webpack-sources": "^1.4.1" - }, - "dependencies": { - "@webassemblyjs/ast": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.9.0.tgz", - "integrity": "sha512-C6wW5L+b7ogSDVqymbkkvuW9kruN//YisMED04xzeBBqjHa2FYnmvOlS6Xj68xWQRgWvI9cIglsjFowH/RJyEA==", - "dev": true, - "requires": { - "@webassemblyjs/helper-module-context": "1.9.0", - "@webassemblyjs/helper-wasm-bytecode": "1.9.0", - "@webassemblyjs/wast-parser": "1.9.0" - } - }, - "@webassemblyjs/floating-point-hex-parser": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.9.0.tgz", - "integrity": "sha512-TG5qcFsS8QB4g4MhrxK5TqfdNe7Ey/7YL/xN+36rRjl/BlGE/NcBvJcqsRgCP6Z92mRE+7N50pRIi8SmKUbcQA==", - "dev": true - }, - "@webassemblyjs/helper-api-error": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.9.0.tgz", - "integrity": "sha512-NcMLjoFMXpsASZFxJ5h2HZRcEhDkvnNFOAKneP5RbKRzaWJN36NC4jqQHKwStIhGXu5mUWlUUk7ygdtrO8lbmw==", - "dev": true - }, - "@webassemblyjs/helper-buffer": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.9.0.tgz", - "integrity": "sha512-qZol43oqhq6yBPx7YM3m9Bv7WMV9Eevj6kMi6InKOuZxhw+q9hOkvq5e/PpKSiLfyetpaBnogSbNCfBwyB00CA==", - "dev": true - }, - "@webassemblyjs/helper-code-frame": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-code-frame/-/helper-code-frame-1.9.0.tgz", - "integrity": "sha512-ERCYdJBkD9Vu4vtjUYe8LZruWuNIToYq/ME22igL+2vj2dQ2OOujIZr3MEFvfEaqKoVqpsFKAGsRdBSBjrIvZA==", - "dev": true, - "requires": { - "@webassemblyjs/wast-printer": "1.9.0" - } - }, - "@webassemblyjs/helper-fsm": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-fsm/-/helper-fsm-1.9.0.tgz", - "integrity": "sha512-OPRowhGbshCb5PxJ8LocpdX9Kl0uB4XsAjl6jH/dWKlk/mzsANvhwbiULsaiqT5GZGT9qinTICdj6PLuM5gslw==", - "dev": true - }, - "@webassemblyjs/helper-module-context": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-module-context/-/helper-module-context-1.9.0.tgz", - "integrity": "sha512-MJCW8iGC08tMk2enck1aPW+BE5Cw8/7ph/VGZxwyvGbJwjktKkDK7vy7gAmMDx88D7mhDTCNKAW5tED+gZ0W8g==", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.9.0" - } - }, - "@webassemblyjs/helper-wasm-bytecode": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.9.0.tgz", - "integrity": "sha512-R7FStIzyNcd7xKxCZH5lE0Bqy+hGTwS3LJjuv1ZVxd9O7eHCedSdrId/hMOd20I+v8wDXEn+bjfKDLzTepoaUw==", - "dev": true - }, - "@webassemblyjs/helper-wasm-section": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.9.0.tgz", - "integrity": "sha512-XnMB8l3ek4tvrKUUku+IVaXNHz2YsJyOOmz+MMkZvh8h1uSJpSen6vYnw3IoQ7WwEuAhL8Efjms1ZWjqh2agvw==", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.9.0", - "@webassemblyjs/helper-buffer": "1.9.0", - "@webassemblyjs/helper-wasm-bytecode": "1.9.0", - "@webassemblyjs/wasm-gen": "1.9.0" - } - }, - "@webassemblyjs/ieee754": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.9.0.tgz", - "integrity": "sha512-dcX8JuYU/gvymzIHc9DgxTzUUTLexWwt8uCTWP3otys596io0L5aW02Gb1RjYpx2+0Jus1h4ZFqjla7umFniTg==", - "dev": true, - "requires": { - "@xtuc/ieee754": "^1.2.0" - } - }, - "@webassemblyjs/leb128": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.9.0.tgz", - "integrity": "sha512-ENVzM5VwV1ojs9jam6vPys97B/S65YQtv/aanqnU7D8aSoHFX8GyhGg0CMfyKNIHBuAVjy3tlzd5QMMINa7wpw==", - "dev": true, - "requires": { - "@xtuc/long": "4.2.2" - } - }, - "@webassemblyjs/utf8": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.9.0.tgz", - "integrity": "sha512-GZbQlWtopBTP0u7cHrEx+73yZKrQoBMpwkGEIqlacljhXCkVM1kMQge/Mf+csMJAjEdSwhOyLAS0AoR3AG5P8w==", - "dev": true - }, - "@webassemblyjs/wasm-edit": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.9.0.tgz", - "integrity": "sha512-FgHzBm80uwz5M8WKnMTn6j/sVbqilPdQXTWraSjBwFXSYGirpkSWE2R9Qvz9tNiTKQvoKILpCuTjBKzOIm0nxw==", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.9.0", - "@webassemblyjs/helper-buffer": "1.9.0", - "@webassemblyjs/helper-wasm-bytecode": "1.9.0", - "@webassemblyjs/helper-wasm-section": "1.9.0", - "@webassemblyjs/wasm-gen": "1.9.0", - "@webassemblyjs/wasm-opt": "1.9.0", - "@webassemblyjs/wasm-parser": "1.9.0", - "@webassemblyjs/wast-printer": "1.9.0" - } - }, - "@webassemblyjs/wasm-gen": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.9.0.tgz", - "integrity": "sha512-cPE3o44YzOOHvlsb4+E9qSqjc9Qf9Na1OO/BHFy4OI91XDE14MjFN4lTMezzaIWdPqHnsTodGGNP+iRSYfGkjA==", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.9.0", - "@webassemblyjs/helper-wasm-bytecode": "1.9.0", - "@webassemblyjs/ieee754": "1.9.0", - "@webassemblyjs/leb128": "1.9.0", - "@webassemblyjs/utf8": "1.9.0" - } - }, - "@webassemblyjs/wasm-opt": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.9.0.tgz", - "integrity": "sha512-Qkjgm6Anhm+OMbIL0iokO7meajkzQD71ioelnfPEj6r4eOFuqm4YC3VBPqXjFyyNwowzbMD+hizmprP/Fwkl2A==", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.9.0", - "@webassemblyjs/helper-buffer": "1.9.0", - "@webassemblyjs/wasm-gen": "1.9.0", - "@webassemblyjs/wasm-parser": "1.9.0" - } - }, - "@webassemblyjs/wasm-parser": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.9.0.tgz", - "integrity": "sha512-9+wkMowR2AmdSWQzsPEjFU7njh8HTO5MqO8vjwEHuM+AMHioNqSBONRdr0NQQ3dVQrzp0s8lTcYqzUdb7YgELA==", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.9.0", - "@webassemblyjs/helper-api-error": "1.9.0", - "@webassemblyjs/helper-wasm-bytecode": "1.9.0", - "@webassemblyjs/ieee754": "1.9.0", - "@webassemblyjs/leb128": "1.9.0", - "@webassemblyjs/utf8": "1.9.0" - } - }, - "@webassemblyjs/wast-parser": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-parser/-/wast-parser-1.9.0.tgz", - "integrity": "sha512-qsqSAP3QQ3LyZjNC/0jBJ/ToSxfYJ8kYyuiGvtn/8MK89VrNEfwj7BPQzJVHi0jGTRK2dGdJ5PRqhtjzoww+bw==", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.9.0", - "@webassemblyjs/floating-point-hex-parser": "1.9.0", - "@webassemblyjs/helper-api-error": "1.9.0", - "@webassemblyjs/helper-code-frame": "1.9.0", - "@webassemblyjs/helper-fsm": "1.9.0", - "@xtuc/long": "4.2.2" - } - }, - "@webassemblyjs/wast-printer": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.9.0.tgz", - "integrity": "sha512-2J0nE95rHXHyQ24cWjMKJ1tqB/ds8z/cyeOZxJhcb+rW+SQASVjuznUSmdz5GpVJTzU8JkhYut0D3siFDD6wsA==", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.9.0", - "@webassemblyjs/wast-parser": "1.9.0", - "@xtuc/long": "4.2.2" - } - }, - "braces": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", - "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", - "dev": true, - "requires": { - "arr-flatten": "^1.1.0", - "array-unique": "^0.3.2", - "extend-shallow": "^2.0.1", - "fill-range": "^4.0.0", - "isobject": "^3.0.1", - "repeat-element": "^1.1.2", - "snapdragon": "^0.8.1", - "snapdragon-node": "^2.0.1", - "split-string": "^3.0.2", - "to-regex": "^3.0.1" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "cacache": { - "version": "12.0.4", - "resolved": "https://registry.npmjs.org/cacache/-/cacache-12.0.4.tgz", - "integrity": "sha512-a0tMB40oefvuInr4Cwb3GerbL9xTj1D5yg0T5xrjGCGyfvbxseIXX7BAO/u/hIXdafzOI5JC3wDwHyf24buOAQ==", - "dev": true, - "requires": { - "bluebird": "^3.5.5", - "chownr": "^1.1.1", - "figgy-pudding": "^3.5.1", - "glob": "^7.1.4", - "graceful-fs": "^4.1.15", - "infer-owner": "^1.0.3", - "lru-cache": "^5.1.1", - "mississippi": "^3.0.0", - "mkdirp": "^0.5.1", - "move-concurrently": "^1.0.1", - "promise-inflight": "^1.0.1", - "rimraf": "^2.6.3", - "ssri": "^6.0.1", - "unique-filename": "^1.1.1", - "y18n": "^4.0.0" - } - }, - "enhanced-resolve": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-4.5.0.tgz", - "integrity": "sha512-Nv9m36S/vxpsI+Hc4/ZGRs0n9mXqSWGGq49zxb/cJfPAQMbUtttJAlNPS4AQzaBdw/pKskw5bMbekT/Y7W/Wlg==", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "memory-fs": "^0.5.0", - "tapable": "^1.0.0" - }, - "dependencies": { - "memory-fs": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/memory-fs/-/memory-fs-0.5.0.tgz", - "integrity": "sha512-jA0rdU5KoQMC0e6ppoNRtpp6vjFq6+NY7r8hywnC7V+1Xj/MtHwGIbB1QaK/dunyjWteJzmkpd7ooeWg10T7GA==", - "dev": true, - "requires": { - "errno": "^0.1.3", - "readable-stream": "^2.0.1" - } - } - } - }, - "fill-range": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", - "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", - "dev": true, - "requires": { - "extend-shallow": "^2.0.1", - "is-number": "^3.0.0", - "repeat-string": "^1.6.1", - "to-regex-range": "^2.1.0" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "find-cache-dir": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-2.1.0.tgz", - "integrity": "sha512-Tq6PixE0w/VMFfCgbONnkiQIVol/JJL7nRMi20fqzA4NRs9AfeqMGeRdPi3wIhYkxjeBaWh2rxwapn5Tu3IqOQ==", - "dev": true, - "requires": { - "commondir": "^1.0.1", - "make-dir": "^2.0.0", - "pkg-dir": "^3.0.0" - } - }, - "is-number": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", - "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", - "dev": true, - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "is-wsl": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-1.1.0.tgz", - "integrity": "sha1-HxbkqiKwTRM2tmGIpmrzxgDDpm0=", - "dev": true - }, - "json5": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", - "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", - "dev": true, - "requires": { - "minimist": "^1.2.0" - } - }, - "loader-utils": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.0.tgz", - "integrity": "sha512-qH0WSMBtn/oHuwjy/NucEgbx5dbxxnxup9s4PVXJUDHZBQY+s0NWA9rJf53RBnQZxfch7euUui7hpoAPvALZdA==", - "dev": true, - "requires": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^1.0.1" - } - }, - "memory-fs": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/memory-fs/-/memory-fs-0.4.1.tgz", - "integrity": "sha1-OpoguEYlI+RHz7x+i7gO1me/xVI=", - "dev": true, - "requires": { - "errno": "^0.1.3", - "readable-stream": "^2.0.1" - } - }, - "micromatch": { - "version": "3.1.10", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", - "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", - "dev": true, - "requires": { - "arr-diff": "^4.0.0", - "array-unique": "^0.3.2", - "braces": "^2.3.1", - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "extglob": "^2.0.4", - "fragment-cache": "^0.2.1", - "kind-of": "^6.0.2", - "nanomatch": "^1.2.9", - "object.pick": "^1.3.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.2" - } - }, - "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" - } - }, - "schema-utils": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-1.0.0.tgz", - "integrity": "sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g==", - "dev": true, - "requires": { - "ajv": "^6.1.0", - "ajv-errors": "^1.0.0", - "ajv-keywords": "^3.1.0" - } - }, - "ssri": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/ssri/-/ssri-6.0.2.tgz", - "integrity": "sha512-cepbSq/neFK7xB6A50KHN0xHDotYzq58wWCa5LeWqnPrHG8GzfEjO/4O8kpmcGW+oaxkvhEJCWgbgNk4/ZV93Q==", - "dev": true, - "requires": { - "figgy-pudding": "^3.5.1" - } - }, - "terser-webpack-plugin": { - "version": "1.4.5", - "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-1.4.5.tgz", - "integrity": "sha512-04Rfe496lN8EYruwi6oPQkG0vo8C+HT49X687FZnpPF0qMAIHONI6HEXYPKDOE8e5HjXTyKfqRd/agHtH0kOtw==", - "dev": true, - "requires": { - "cacache": "^12.0.2", - "find-cache-dir": "^2.1.0", - "is-wsl": "^1.1.0", - "schema-utils": "^1.0.0", - "serialize-javascript": "^4.0.0", - "source-map": "^0.6.1", - "terser": "^4.1.2", - "webpack-sources": "^1.4.0", - "worker-farm": "^1.7.0" - } - }, - "to-regex-range": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", - "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=", - "dev": true, - "requires": { - "is-number": "^3.0.0", - "repeat-string": "^1.6.1" - } + "node_modules/webpack-dev-server": { + "version": "4.11.0", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/bonjour": "^3.5.9", + "@types/connect-history-api-fallback": "^1.3.5", + "@types/express": "^4.17.13", + "@types/serve-index": "^1.9.1", + "@types/serve-static": "^1.13.10", + "@types/sockjs": "^0.3.33", + "@types/ws": "^8.5.1", + "ansi-html-community": "^0.0.8", + "bonjour-service": "^1.0.11", + "chokidar": "^3.5.3", + "colorette": "^2.0.10", + "compression": "^1.7.4", + "connect-history-api-fallback": "^2.0.0", + "default-gateway": "^6.0.3", + "express": "^4.17.3", + "graceful-fs": "^4.2.6", + "html-entities": "^2.3.2", + "http-proxy-middleware": "^2.0.3", + "ipaddr.js": "^2.0.1", + "open": "^8.0.9", + "p-retry": "^4.5.0", + "rimraf": "^3.0.2", + "schema-utils": "^4.0.0", + "selfsigned": "^2.0.1", + "serve-index": "^1.9.1", + "sockjs": "^0.3.24", + "spdy": "^4.0.2", + "webpack-dev-middleware": "^5.3.1", + "ws": "^8.4.2" + }, + "bin": { + "webpack-dev-server": "bin/webpack-dev-server.js" + }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^4.37.0 || ^5.0.0" + }, + "peerDependenciesMeta": { + "webpack-cli": { + "optional": true } } }, - "webpack-bundle-analyzer": { - "version": "3.9.0", - "resolved": "https://registry.npmjs.org/webpack-bundle-analyzer/-/webpack-bundle-analyzer-3.9.0.tgz", - "integrity": "sha512-Ob8amZfCm3rMB1ScjQVlbYYUEJyEjdEtQ92jqiFUYt5VkEeO2v5UMbv49P/gnmCZm3A6yaFQzCBvpZqN4MUsdA==", + "node_modules/webpack-dev-server/node_modules/ajv": { + "version": "8.17.1", "dev": true, - "requires": { - "acorn": "^7.1.1", - "acorn-walk": "^7.1.1", - "bfj": "^6.1.1", - "chalk": "^2.4.1", - "commander": "^2.18.0", - "ejs": "^2.6.1", - "express": "^4.16.3", - "filesize": "^3.6.1", - "gzip-size": "^5.0.0", - "lodash": "^4.17.19", - "mkdirp": "^0.5.1", - "opener": "^1.5.1", - "ws": "^6.0.0" - }, - "dependencies": { - "acorn": { - "version": "7.4.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", - "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", - "dev": true - } + "license": "MIT", + "dependencies": { + "fast-deep-equal": "^3.1.3", + "fast-uri": "^3.0.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" } }, - "webpack-dev-middleware": { - "version": "3.7.2", - "resolved": "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-3.7.2.tgz", - "integrity": "sha512-1xC42LxbYoqLNAhV6YzTYacicgMZQTqRd27Sim9wn5hJrX3I5nxYy1SxSd4+gjUFsz1dQFj+yEe6zEVmSkeJjw==", + "node_modules/webpack-dev-server/node_modules/ajv-keywords": { + "version": "5.1.0", "dev": true, - "requires": { - "memory-fs": "^0.4.1", - "mime": "^2.4.4", - "mkdirp": "^0.5.1", - "range-parser": "^1.2.1", - "webpack-log": "^2.0.0" - }, - "dependencies": { - "memory-fs": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/memory-fs/-/memory-fs-0.4.1.tgz", - "integrity": "sha1-OpoguEYlI+RHz7x+i7gO1me/xVI=", - "dev": true, - "requires": { - "errno": "^0.1.3", - "readable-stream": "^2.0.1" - } - }, - "mime": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/mime/-/mime-2.6.0.tgz", - "integrity": "sha512-USPkMeET31rOMiarsBNIHZKLGgvKc/LrjofAnBlOttf5ajRvqiRA8QsenbcooctK6d6Ts6aqZXBA+XbkKthiQg==", - "dev": true - } + "license": "MIT", + "dependencies": { + "fast-deep-equal": "^3.1.3" + }, + "peerDependencies": { + "ajv": "^8.8.2" } }, - "webpack-dev-server": { - "version": "3.11.0", - "resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-3.11.0.tgz", - "integrity": "sha512-PUxZ+oSTxogFQgkTtFndEtJIPNmml7ExwufBZ9L2/Xyyd5PnOL5UreWe5ZT7IU25DSdykL9p1MLQzmLh2ljSeg==", + "node_modules/webpack-dev-server/node_modules/json-schema-traverse": { + "version": "1.0.0", "dev": true, - "requires": { - "ansi-html": "0.0.7", - "bonjour": "^3.5.0", - "chokidar": "^2.1.8", - "compression": "^1.7.4", - "connect-history-api-fallback": "^1.6.0", - "debug": "^4.1.1", - "del": "^4.1.1", - "express": "^4.17.1", - "html-entities": "^1.3.1", - "http-proxy-middleware": "0.19.1", - "import-local": "^2.0.0", - "internal-ip": "^4.3.0", - "ip": "^1.1.5", - "is-absolute-url": "^3.0.3", - "killable": "^1.0.1", - "loglevel": "^1.6.8", - "opn": "^5.5.0", - "p-retry": "^3.0.1", - "portfinder": "^1.0.26", - "schema-utils": "^1.0.0", - "selfsigned": "^1.10.7", - "semver": "^6.3.0", - "serve-index": "^1.9.1", - "sockjs": "0.3.20", - "sockjs-client": "1.4.0", - "spdy": "^4.0.2", - "strip-ansi": "^3.0.1", - "supports-color": "^6.1.0", - "url": "^0.11.0", - "webpack-dev-middleware": "^3.7.2", - "webpack-log": "^2.0.0", - "ws": "^6.2.1", - "yargs": "^13.3.2" - }, - "dependencies": { - "anymatch": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-2.0.0.tgz", - "integrity": "sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw==", - "dev": true, - "requires": { - "micromatch": "^3.1.4", - "normalize-path": "^2.1.1" - }, - "dependencies": { - "normalize-path": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", - "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", - "dev": true, - "requires": { - "remove-trailing-separator": "^1.0.1" - } - } - } - }, - "binary-extensions": { - "version": "1.13.1", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.13.1.tgz", - "integrity": "sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw==", - "dev": true - }, - "braces": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", - "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", - "dev": true, - "requires": { - "arr-flatten": "^1.1.0", - "array-unique": "^0.3.2", - "extend-shallow": "^2.0.1", - "fill-range": "^4.0.0", - "isobject": "^3.0.1", - "repeat-element": "^1.1.2", - "snapdragon": "^0.8.1", - "snapdragon-node": "^2.0.1", - "split-string": "^3.0.2", - "to-regex": "^3.0.1" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "chokidar": { - "version": "2.1.8", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-2.1.8.tgz", - "integrity": "sha512-ZmZUazfOzf0Nve7duiCKD23PFSCs4JPoYyccjUFF3aQkQadqBhfzhjkwBH2mNOG9cTBwhamM37EIsIkZw3nRgg==", - "dev": true, - "requires": { - "anymatch": "^2.0.0", - "async-each": "^1.0.1", - "braces": "^2.3.2", - "fsevents": "^1.2.7", - "glob-parent": "^3.1.0", - "inherits": "^2.0.3", - "is-binary-path": "^1.0.0", - "is-glob": "^4.0.0", - "normalize-path": "^3.0.0", - "path-is-absolute": "^1.0.0", - "readdirp": "^2.2.1", - "upath": "^1.1.1" - } - }, - "fill-range": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", - "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", - "dev": true, - "requires": { - "extend-shallow": "^2.0.1", - "is-number": "^3.0.0", - "repeat-string": "^1.6.1", - "to-regex-range": "^2.1.0" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "fsevents": { - "version": "1.2.13", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.13.tgz", - "integrity": "sha512-oWb1Z6mkHIskLzEJ/XWX0srkpkTQ7vaopMQkyaEIoq0fmtFVxOthb8cCxeT+p3ynTdkk/RZwbgG4brR5BeWECw==", - "dev": true, - "optional": true, - "requires": { - "bindings": "^1.5.0", - "nan": "^2.12.1" - } - }, - "glob-parent": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz", - "integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=", - "dev": true, - "requires": { - "is-glob": "^3.1.0", - "path-dirname": "^1.0.0" - }, - "dependencies": { - "is-glob": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", - "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", - "dev": true, - "requires": { - "is-extglob": "^2.1.0" - } - } - } - }, - "is-absolute-url": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/is-absolute-url/-/is-absolute-url-3.0.3.tgz", - "integrity": "sha512-opmNIX7uFnS96NtPmhWQgQx6/NYFgsUXYMllcfzwWKUMwfo8kku1TvE6hkNcH+Q1ts5cMVrsY7j0bxXQDciu9Q==", - "dev": true - }, - "is-binary-path": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz", - "integrity": "sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg=", - "dev": true, - "requires": { - "binary-extensions": "^1.0.0" - } - }, - "is-number": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", - "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", - "dev": true, - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "micromatch": { - "version": "3.1.10", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", - "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", - "dev": true, - "requires": { - "arr-diff": "^4.0.0", - "array-unique": "^0.3.2", - "braces": "^2.3.1", - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "extglob": "^2.0.4", - "fragment-cache": "^0.2.1", - "kind-of": "^6.0.2", - "nanomatch": "^1.2.9", - "object.pick": "^1.3.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.2" - } - }, - "readdirp": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.2.1.tgz", - "integrity": "sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ==", - "dev": true, - "requires": { - "graceful-fs": "^4.1.11", - "micromatch": "^3.1.10", - "readable-stream": "^2.0.2" - } - }, - "schema-utils": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-1.0.0.tgz", - "integrity": "sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g==", - "dev": true, - "requires": { - "ajv": "^6.1.0", - "ajv-errors": "^1.0.0", - "ajv-keywords": "^3.1.0" - } - }, - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - }, - "supports-color": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", - "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - }, - "to-regex-range": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", - "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=", - "dev": true, - "requires": { - "is-number": "^3.0.0", - "repeat-string": "^1.6.1" - } - } + "license": "MIT" + }, + "node_modules/webpack-dev-server/node_modules/schema-utils": { + "version": "4.2.0", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/json-schema": "^7.0.9", + "ajv": "^8.9.0", + "ajv-formats": "^2.1.1", + "ajv-keywords": "^5.1.0" + }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" } }, - "webpack-log": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/webpack-log/-/webpack-log-2.0.0.tgz", - "integrity": "sha512-cX8G2vR/85UYG59FgkoMamwHUIkSSlV3bBMRsbxVXVUk2j6NleCKjQ/WE9eYg9WY4w25O9w8wKP4rzNZFmUcUg==", + "node_modules/webpack-merge": { + "version": "5.8.0", "dev": true, - "requires": { - "ansi-colors": "^3.0.0", - "uuid": "^3.3.2" + "license": "MIT", + "dependencies": { + "clone-deep": "^4.0.1", + "wildcard": "^2.0.0" + }, + "engines": { + "node": ">=10.0.0" } }, - "webpack-merge": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/webpack-merge/-/webpack-merge-4.2.2.tgz", - "integrity": "sha512-TUE1UGoTX2Cd42j3krGYqObZbOD+xF7u28WB7tfUordytSjbWTIjK/8V0amkBfTYN4/pB/GIDlJZZ657BGG19g==", + "node_modules/webpack-sources": { + "version": "3.2.3", "dev": true, - "requires": { - "lodash": "^4.17.15" + "license": "MIT", + "engines": { + "node": ">=10.13.0" } }, - "webpack-sources": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-1.4.3.tgz", - "integrity": "sha512-lgTS3Xhv1lCOKo7SA5TjKXMjpSM4sBjNV5+q2bqesbSPs5FjGmU6jjtBSkX9b4qW87vDIsCIlUPOEhbZrMdjeQ==", + "node_modules/webpack-subresource-integrity": { + "version": "5.1.0", "dev": true, - "requires": { - "source-list-map": "^2.0.0", - "source-map": "~0.6.1" + "license": "MIT", + "dependencies": { + "typed-assert": "^1.0.8" + }, + "engines": { + "node": ">= 12" + }, + "peerDependencies": { + "html-webpack-plugin": ">= 5.0.0-beta.1 < 6", + "webpack": "^5.12.0" + }, + "peerDependenciesMeta": { + "html-webpack-plugin": { + "optional": true + } } }, - "webpack-subresource-integrity": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/webpack-subresource-integrity/-/webpack-subresource-integrity-1.4.0.tgz", - "integrity": "sha512-GB1kB/LwAWC3CxwcedGhMkxGpNZxSheCe1q+KJP1bakuieAdX/rGHEcf5zsEzhKXpqsGqokgsDoD9dIkr61VDQ==", + "node_modules/webpack/node_modules/@types/estree": { + "version": "0.0.51", + "dev": true, + "license": "MIT" + }, + "node_modules/webpack/node_modules/schema-utils": { + "version": "3.3.0", "dev": true, - "requires": { - "webpack-sources": "^1.3.0" + "license": "MIT", + "dependencies": { + "@types/json-schema": "^7.0.8", + "ajv": "^6.12.5", + "ajv-keywords": "^3.5.2" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" } }, - "websocket-driver": { - "version": "0.6.5", - "resolved": "https://registry.npmjs.org/websocket-driver/-/websocket-driver-0.6.5.tgz", - "integrity": "sha1-XLJVbOuF9Dc8bYI4qmkchFThOjY=", + "node_modules/websocket-driver": { + "version": "0.7.4", "dev": true, - "requires": { + "license": "Apache-2.0", + "dependencies": { + "http-parser-js": ">=0.5.1", + "safe-buffer": ">=5.1.0", "websocket-extensions": ">=0.1.1" + }, + "engines": { + "node": ">=0.8.0" } }, - "websocket-extensions": { + "node_modules/websocket-extensions": { "version": "0.1.4", - "resolved": "https://registry.npmjs.org/websocket-extensions/-/websocket-extensions-0.1.4.tgz", - "integrity": "sha512-OqedPIGOfsDlo31UNwYbCFMSaO9m9G/0faIHj5/dZFDMFqPTcx6UwqyOy3COEaEOg/9VsGIpdqn62W5KhoKSpg==", - "dev": true - }, - "whatwg-fetch": { - "version": "3.6.2", - "resolved": "https://registry.npmjs.org/whatwg-fetch/-/whatwg-fetch-3.6.2.tgz", - "integrity": "sha512-bJlen0FcuU/0EMLrdbJ7zOnW6ITZLrZMIarMUVmdKtsGvZna8vxKYaexICWPfZ8qwf9fzNq+UEIZrnSaApt6RA==" - }, - "whatwg-url": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", - "integrity": "sha1-lmRU6HZUYuN2RNNib2dCzotwll0=", - "requires": { - "tr46": "~0.0.3", - "webidl-conversions": "^3.0.0" + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": ">=0.8.0" } }, - "when": { - "version": "3.6.4", - "resolved": "https://registry.npmjs.org/when/-/when-3.6.4.tgz", - "integrity": "sha1-RztRfsFZ4rhQBUl6E5g/CVQS404=", - "dev": true + "node_modules/whatwg-fetch": { + "version": "3.6.20", + "license": "MIT" }, - "which": { + "node_modules/which": { "version": "1.3.1", - "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", - "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", "dev": true, - "requires": { + "license": "ISC", + "dependencies": { "isexe": "^2.0.0" + }, + "bin": { + "which": "bin/which" } }, - "which-boxed-primitive": { + "node_modules/which-boxed-primitive": { "version": "1.0.2", - "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz", - "integrity": "sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "is-bigint": "^1.0.1", "is-boolean-object": "^1.1.0", "is-number-object": "^1.0.4", "is-string": "^1.0.5", "is-symbol": "^1.0.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "which-module": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", - "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=", - "dev": true - }, - "wide-align": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.5.tgz", - "integrity": "sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==", - "optional": true, - "requires": { - "string-width": "^1.0.2 || 2 || 3 || 4" + "node_modules/which-typed-array": { + "version": "1.1.15", + "dev": true, + "license": "MIT", + "dependencies": { + "available-typed-arrays": "^1.0.7", + "call-bind": "^1.0.7", + "for-each": "^0.3.3", + "gopd": "^1.0.1", + "has-tostringtag": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "widest-line": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/widest-line/-/widest-line-3.1.0.tgz", - "integrity": "sha512-NsmoXalsWVDMGupxZ5R08ka9flZjjiLvHVAWYOKtiKM8ujtZWr9cRffak+uSE48+Ob8ObalXpwyeUiyDD6QFgg==", + "node_modules/wide-align": { + "version": "1.1.5", "dev": true, - "requires": { - "string-width": "^4.0.0" - }, + "license": "ISC", "dependencies": { - "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 - }, - "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 - }, - "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.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" - } - }, - "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" - } - } + "string-width": "^1.0.2 || 2 || 3 || 4" } }, - "wordwrap": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.3.tgz", - "integrity": "sha1-o9XabNXAvAAI03I0u68b7WMFkQc=", - "dev": true + "node_modules/wildcard": { + "version": "2.0.1", + "dev": true, + "license": "MIT" }, - "worker-farm": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/worker-farm/-/worker-farm-1.7.0.tgz", - "integrity": "sha512-rvw3QTZc8lAxyVrqcSGVm5yP/IJ2UcB3U0graE3LCFoZ0Yn2x4EoVSqJKdB/T5M+FLcRPjz4TDacRf3OCfNUzw==", + "node_modules/wrap-ansi": { + "version": "7.0.0", "dev": true, - "requires": { - "errno": "~0.1.7" + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" } }, - "worker-plugin": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/worker-plugin/-/worker-plugin-4.0.3.tgz", - "integrity": "sha512-7hFDYWiKcE3yHZvemsoM9lZis/PzurHAEX1ej8PLCu818Rt6QqUAiDdxHPCKZctzmhqzPpcFSgvMCiPbtooqAg==", + "node_modules/wrap-ansi/node_modules/ansi-styles": { + "version": "4.3.0", "dev": true, - "requires": { - "loader-utils": "^1.1.0" - }, + "license": "MIT", "dependencies": { - "json5": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", - "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", - "dev": true, - "requires": { - "minimist": "^1.2.0" - } - }, - "loader-utils": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.0.tgz", - "integrity": "sha512-qH0WSMBtn/oHuwjy/NucEgbx5dbxxnxup9s4PVXJUDHZBQY+s0NWA9rJf53RBnQZxfch7euUui7hpoAPvALZdA==", - "dev": true, - "requires": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^1.0.1" - } - } + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "wrap-ansi": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-5.1.0.tgz", - "integrity": "sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q==", + "node_modules/wrap-ansi/node_modules/color-convert": { + "version": "2.0.1", "dev": true, - "requires": { - "ansi-styles": "^3.2.0", - "string-width": "^3.0.0", - "strip-ansi": "^5.0.0" - }, + "license": "MIT", "dependencies": { - "ansi-regex": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.1.tgz", - "integrity": "sha512-ILlv4k/3f6vfQ4OoP2AGvirOktlQ98ZEL1k9FaQjxa3L1abBgbuTDAdPOpvbGncC0BTVQrl+OM8xZGK6tWXt7g==", - "dev": true - }, - "strip-ansi": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", - "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", - "dev": true, - "requires": { - "ansi-regex": "^4.1.0" - } - } + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" } }, - "wrappy": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" - }, - "write-file-atomic": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-3.0.3.tgz", - "integrity": "sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q==", + "node_modules/wrap-ansi/node_modules/color-name": { + "version": "1.1.4", "dev": true, - "requires": { - "imurmurhash": "^0.1.4", - "is-typedarray": "^1.0.0", - "signal-exit": "^3.0.2", - "typedarray-to-buffer": "^3.1.5" - } + "license": "MIT" + }, + "node_modules/wrappy": { + "version": "1.0.2", + "devOptional": true, + "license": "ISC" }, - "ws": { - "version": "6.2.2", - "resolved": "https://registry.npmjs.org/ws/-/ws-6.2.2.tgz", - "integrity": "sha512-zmhltoSR8u1cnDsD43TX59mzoMZsLKqUweyYBAIvTngR3shc0W6aOZylZmq/7hqyVxPdi+5Ud2QInblgyE72fw==", + "node_modules/ws": { + "version": "8.17.1", "dev": true, - "requires": { - "async-limiter": "~1.0.0" + "license": "MIT", + "engines": { + "node": ">=10.0.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": ">=5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } } }, - "xdg-basedir": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/xdg-basedir/-/xdg-basedir-4.0.0.tgz", - "integrity": "sha512-PSNhEJDejZYV7h50BohL09Er9VaIefr2LMAf3OEmpCkjOi34eYyQYAXUTjEQtZJTKcF0E2UKTh+osDLsgNim9Q==", - "dev": true - }, - "xml-but-prettier": { + "node_modules/xml-but-prettier": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/xml-but-prettier/-/xml-but-prettier-1.0.1.tgz", - "integrity": "sha1-9aMyZ+1CzNTjVcYlV6XjmwH7QPM=", - "requires": { + "license": "MIT", + "dependencies": { "repeat-string": "^1.5.2" } }, - "xml2js": { - "version": "0.4.19", - "resolved": "https://registry.npmjs.org/xml2js/-/xml2js-0.4.19.tgz", - "integrity": "sha512-esZnJZJOiJR9wWKMyuvSE1y6Dq5LCuJanqhxslH2bxM6duahNZ+HMpCLhBQGZkbX6xRf8x1Y2eJlgt2q3qo49Q==", - "requires": { - "sax": ">=0.6.0", - "xmlbuilder": "~9.0.1" - } - }, - "xmlbuilder": { - "version": "9.0.7", - "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-9.0.7.tgz", - "integrity": "sha1-Ey7mPS7FVlxVfiD0wi35rKaGsQ0=" - }, - "xmlhttprequest-ssl": { - "version": "1.5.5", - "resolved": "https://registry.npmjs.org/xmlhttprequest-ssl/-/xmlhttprequest-ssl-1.5.5.tgz", - "integrity": "sha1-wodrBhaKrcQOV9l+gRkayPQ5iz4=", - "dev": true - }, - "xtend": { + "node_modules/xtend": { "version": "4.0.2", - "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", - "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==" + "license": "MIT", + "engines": { + "node": ">=0.4" + } }, - "xxhashjs": { + "node_modules/xxhashjs": { "version": "0.2.2", - "resolved": "https://registry.npmjs.org/xxhashjs/-/xxhashjs-0.2.2.tgz", - "integrity": "sha512-AkTuIuVTET12tpsVIQo+ZU6f/qDmKuRUcjaqR+OIvm+aCBsZ95i7UVY5WJ9TMsSaZ0DA2WxoZ4acu0sPH+OKAw==", "dev": true, - "requires": { + "license": "MIT", + "dependencies": { "cuint": "^0.2.2" } }, - "y18n": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz", - "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==", - "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": "13.3.2", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-13.3.2.tgz", - "integrity": "sha512-AX3Zw5iPruN5ie6xGRIDgqkT+ZhnRlZMLMHAs8tg7nRruy2Nb+i5o9bwghAogtM08q1dpr2LVoS8KSTMYpWXUw==", - "dev": true, - "requires": { - "cliui": "^5.0.0", - "find-up": "^3.0.0", - "get-caller-file": "^2.0.1", - "require-directory": "^2.1.1", - "require-main-filename": "^2.0.0", - "set-blocking": "^2.0.0", - "string-width": "^3.0.0", - "which-module": "^2.0.0", - "y18n": "^4.0.0", - "yargs-parser": "^13.1.2" + "node_modules/y18n": { + "version": "5.0.8", + "dev": true, + "license": "ISC", + "engines": { + "node": ">=10" } }, - "yargs-parser": { - "version": "13.1.2", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.2.tgz", - "integrity": "sha512-3lbsNRf/j+A4QuSZfDRA7HRSfWrzO0YjqTJd5kjAq37Zep1CEgaYmrH9Q3GwPiB9cHyd1Y1UwggGhJGoxipbzg==", + "node_modules/yallist": { + "version": "3.1.1", "dev": true, - "requires": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" - } + "license": "ISC" }, - "yeast": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/yeast/-/yeast-0.1.2.tgz", - "integrity": "sha1-AI4G2AlDIMNy28L47XagymyKxBk=", - "dev": true + "node_modules/yaml": { + "version": "1.10.2", + "dev": true, + "license": "ISC", + "engines": { + "node": ">= 6" + } }, - "yn": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/yn/-/yn-2.0.0.tgz", - "integrity": "sha1-5a2ryKz0CPY4X8dklWhMiOavaJo=", - "dev": true + "node_modules/yargs": { + "version": "17.5.1", + "dev": true, + "license": "MIT", + "dependencies": { + "cliui": "^7.0.2", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.3", + "y18n": "^5.0.5", + "yargs-parser": "^21.0.0" + }, + "engines": { + "node": ">=12" + } }, - "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 + "node_modules/yargs-parser": { + "version": "21.1.1", + "dev": true, + "license": "ISC", + "engines": { + "node": ">=12" + } }, - "zenscroll": { + "node_modules/zenscroll": { "version": "4.0.2", - "resolved": "https://registry.npmjs.org/zenscroll/-/zenscroll-4.0.2.tgz", - "integrity": "sha1-6NV3TRwHOKR7z6hynzcS4t7d6yU=" + "license": "Unlicense" }, - "zone.js": { - "version": "0.10.3", - "resolved": "https://registry.npmjs.org/zone.js/-/zone.js-0.10.3.tgz", - "integrity": "sha512-LXVLVEq0NNOqK/fLJo3d0kfzd4sxwn2/h67/02pjCjfKDxgx1i9QqpvtHD8CrBnSSwMw5+dy11O7FRX5mkO7Cg==" + "node_modules/zone.js": { + "version": "0.11.4", + "license": "MIT", + "dependencies": { + "tslib": "^2.0.0" + } }, - "zxcvbn": { + "node_modules/zxcvbn": { "version": "4.4.2", - "resolved": "https://registry.npmjs.org/zxcvbn/-/zxcvbn-4.4.2.tgz", - "integrity": "sha1-KOwXzwl0PtyrBW3dixsGJizHPDA=" + "license": "MIT" } } } diff --git a/web-app/package.json b/web-app/package.json index 63e25b788..a575ef494 100644 --- a/web-app/package.json +++ b/web-app/package.json @@ -1,7 +1,7 @@ { "private": true, "name": "@ngageoint/mage.web-app", - "version": "6.2.13", + "version": "6.3.0-beta.8", "description": "The MAGE web-app is the UI for interacting with the MAGE service in a web browser.", "keywords": [ "NGA", @@ -27,53 +27,73 @@ "url": "https://github.com/ngageoint/mage-server/issues" }, "scripts": { - "start": "ng serve", - "build": "npm-run-all build:core-lib build:app", - "build:app": "ng build --prod=true", - "build:core-lib": "ng build --project=core-lib", + "start:app": "ng serve --project=app --configuration development", + "start:admin": "ng serve --project=admin --configuration development", + "build": "npm-run-all clean build:core-lib build:app:dev build:admin:dev combine", + "build:prod": "npm-run-all clean build:core-lib build:app:prod build:admin:prod combine", + "build:app:dev": "ng build --project=app --configuration development", + "build:admin:dev": "ng build --project=admin --configuration development", + "build:app:prod": "ng build --project=app --configuration production", + "build:admin:prod": "ng build --project=admin --configuration production", + "build:core-lib": "npm-run-all build:core-lib:*", + "build:core-lib:api": "ng build --project core-lib", + "build:core-lib:angular-cli": "npm-run-all build:core-lib:angular-cli:*", + "build:core-lib:angular-cli:code": "tsc -p projects/core-lib/tsconfig.angular-cli.json", + "build:core-lib:angular-cli:resources": "copyfiles -V --up 1 \"projects/core-lib/angular-cli/**/*.json\" ./dist/", + "clean": "rimraf dist", + "combine": "node post_build.js", "ng": "ng", - "test": "ng test --code-coverage=false --project=app", + "test": "npm-run-all test:app test:admin", + "test:app": "ng test --project=app --code-coverage=false", + "test:admin": "ng test --project=admin --code-coverage=false", "test:core-lib": "ng test --project=core-lib", - "test-headless": "ng test --watch=false --browsers=ChromeHeadless --project=app", + "test-headless": "npm-run-all test-headless:app test-headless:admin", + "test-headless:app": "ng test --watch=false --browsers=ChromeHeadless --project=app", + "test-headless:admin": "ng test --watch=false --browsers=ChromeHeadless --project=admin", "test-headless:core-lib": "ng test --watch=false --browsers=ChromeHeadless --project=core-lib", "ci:test": "npm-run-all test-headless:core-lib test-headless", "lint": "ng lint", "e2e": "ng e2e", - "pack:app": "cd dist && cd app && npm pack", - "pack:core-lib": "cd dist && cd core-lib && npm pack", + "pack:app": "npm pack ./dist", + "pack:core-lib": "npm pack ./dist/core-lib", "bundle-report": "webpack-bundle-analyzer dist/stats.json" }, "files": [], "dependencies": { - "@ajsf/core": "^0.3.0-beta.3", - "@ajsf/material": "^0.3.0-beta.3", - "@angular/animations": "~9.1.13", - "@angular/cdk": "~9.2.4", - "@angular/common": "~9.1.13", - "@angular/compiler": "~9.1.13", - "@angular/core": "~9.1.13", - "@angular/flex-layout": "^9.0.0-beta.31", - "@angular/forms": "~9.1.13", - "@angular/material": "~9.2.4", - "@angular/material-moment-adapter": "^9.2.4", - "@angular/platform-browser": "~9.1.13", - "@angular/platform-browser-dynamic": "~9.1.13", - "@angular/router": "~9.1.13", - "@angular/upgrade": "~9.1.13", - "@mat-datetimepicker/core": "3.0.1", - "@mat-datetimepicker/moment": "3.0.1", - "@ng-select/ng-select": "^4.0.4", - "@ngageoint/md-date-time-picker": "^2.3.0", - "@ngneat/input-mask": "^4.1.1", + "@ajsf/core": "0.8.0", + "@ajsf/material": "0.8.0", + "@angular/animations": "14.3.0", + "@angular/cdk": "14.2.7", + "@angular/common": "14.3.0", + "@angular/compiler": "14.3.0", + "@angular/core": "14.3.0", + "@angular/flex-layout": "14.0.0-beta.40", + "@angular/forms": "14.3.0", + "@angular/material": "14.2.7", + "@angular/platform-browser": "14.3.0", + "@angular/platform-browser-dynamic": "14.3.0", + "@angular/router": "14.3.0", + "@angular/upgrade": "14.3.0", + "@mat-datetimepicker/core": "10.1.1", + "@mat-datetimepicker/moment": "10.1.1", + "@ng-select/ng-select": "9.1.0", + "@ngageoint/gars-js": "1.0.0", + "@ngageoint/md-date-time-picker": "2.3.0", + "@ngageoint/mgrs-js": "1.0.0", + "@ngneat/input-mask": "6.1.0", "@turf/center": "4.3.0", "@turf/helpers": "4.3.0", "@turf/kinks": "4.3.0", - "@types/geojson": "^7946.0.7", - "@uirouter/angular": "6.0.1", - "@uirouter/angular-hybrid": "^10.0.1", - "@uirouter/angularjs": "1.0.24", - "@uirouter/core": "6.0.3", - "@uirouter/rx": "^0.6.4", + "@types/geojson": "7946.0.7", + "@types/leaflet-editable": "1.2.6", + "@types/leaflet.markercluster": "1.5.3", + "@uirouter/angular": "10.0.0", + "@uirouter/angular-hybrid": "14.0.0", + "@uirouter/angularjs": "1.0.30", + "@uirouter/rx": "1.0.0", + "@zxcvbn-ts/core": "3.0.4", + "@zxcvbn-ts/language-common": "3.0.4", + "@zxcvbn-ts/language-en": "3.0.2", "angular": "1.5.11", "angular-animate": "1.5.11", "angular-messages": "1.5.11", @@ -84,69 +104,69 @@ "angular-ui-bootstrap": "2.5.6", "exif-js": "2.1.1", "font-awesome": "4.7.0", - "hammerjs": "^2.0.8", - "inputmask": "^5.0.8", - "jquery": "^3.7.1", + "hammerjs": "2.0.8", + "inputmask": "5.0.8", + "jquery": "3.7.1", "jquery-file-download": "1.4.6", "jquery-minicolors": "2.1.10", + "js_cols": "1.0.1", "leaflet": "1.7.1", "leaflet-editable": "1.2.0", - "leaflet-groupedlayercontrol": "git+https://github.com/newmanw/leaflet-groupedlayercontrol.git#master", - "leaflet.markercluster": "1.4.1", - "lodash": "^4.17.20", + "leaflet.markercluster": "1.5.3", + "lodash": "4.17.21", "material-components-web": "3.2.0", "mgrs": "1.0.0", "moment": "2.22.2", - "ngx-color": "5.1.4", - "ngx-mat-select-search": "^2.1.1", - "ngx-virtual-scroller": "^3.0.3", + "ngx-color": "8.0.3", + "ngx-mat-select-search": "5.0.0", "papaparse": "4.1.4", - "rxjs": "~6.6.7", + "rxjs": "7.6.0", "select2": "4.0.7", - "swagger-ui": "^3.52.4", - "systemjs": "^6.10.0", - "tslib": "^1.10.0", - "ui-select": "^0.17.1", - "underscore": "^1.13.6", + "semver": "7.6.2", + "swagger-ui": "3.52.4", + "systemjs": "6.10.0", + "tslib": "2.8.1", + "ui-select": "0.17.1", + "underscore": "1.13.6", "webfontloader": "1.6.6", - "xml2js": "0.4.19", - "zone.js": "~0.10.2", + "zone.js": "0.11.4", "zxcvbn": "4.4.2" }, "devDependencies": { - "@angular-devkit/build-angular": "~0.901.15", - "@angular-devkit/build-ng-packagr": "~0.901.15", - "@angular/cli": "^9.1.15", - "@angular/compiler-cli": "~9.1.13", - "@angular/language-service": "~9.1.13", - "@types/angular": "^1.8.1", + "@angular-devkit/build-angular": "14.2.13", + "@angular-devkit/core": "14.2.13", + "@angular/cli": "14.2.13", + "@angular/compiler-cli": "14.3.0", + "@angular/language-service": "14.3.0", + "@rollup/plugin-commonjs": "25.0.7", + "@schematics/angular": "14.2.13", + "@types/angular": "1.8.1", "@types/geojson": "7946.0.7", - "@types/hammerjs": "^2.0.36", - "@types/inputmask": "^5.0.3", - "@types/jasmine": "~3.3.8", - "@types/jasminewd2": "~2.0.3", - "@types/leaflet": "1.5.4", - "@types/lodash": "^4.14.168", - "@types/node": "^12.11.1", - "codelyzer": "^5.1.2", - "html-loader": "^0.5.5", - "html-webpack-plugin": "^3.2.0", - "jasmine-core": "~3.4.0", - "jasmine-spec-reporter": "~4.2.1", - "karma": "~4.1.0", - "karma-chrome-launcher": "~2.2.0", - "karma-coverage-istanbul-reporter": "~2.0.1", - "karma-jasmine": "~2.0.1", - "karma-jasmine-html-reporter": "^1.4.0", - "ng-packagr": "^9.0.0", - "ngx-build-plus": "^9.0.6", - "npm-run-all": "^4.1.5", - "protractor": "~5.4.0", - "stylus": "^0.54.8", - "ts-node": "~7.0.0", - "tslint": "~5.15.0", - "typescript": "~3.8.3", - "webpack": "^4.41.5", - "webpack-bundle-analyzer": "^3.6.1" + "@types/hammerjs": "2.0.36", + "@types/inputmask": "5.0.3", + "@types/jasmine": "4.3.1", + "@types/jasminewd2": "2.0.10", + "@types/leaflet": "1.7.4", + "@types/lodash": "4.17.6", + "@types/node": "18.11.13", + "@types/semver": "7.5.8", + "copyfiles": "2.4.1", + "html-loader": "0.5.5", + "html-webpack-plugin": "5.5.0", + "jasmine-core": "4.5.0", + "karma": "6.4.1", + "karma-chrome-launcher": "3.1.1", + "karma-coverage": "2.2.0", + "karma-coverage-istanbul-reporter": "3.0.3", + "karma-jasmine": "5.1.0", + "karma-jasmine-html-reporter": "2.0.0", + "ng-packagr": "14.2.2", + "ngx-build-plus": "14.0.0", + "npm-run-all": "4.1.5", + "rimraf": "3.0.2", + "tslint": "6.1.3", + "typescript": "4.8.4", + "webpack": "5.75.0", + "webpack-bundle-analyzer": "4.7.0" } -} +} \ No newline at end of file diff --git a/web-app/post_build.js b/web-app/post_build.js index 6d7a247dc..3e6f170af 100755 --- a/web-app/post_build.js +++ b/web-app/post_build.js @@ -11,20 +11,16 @@ const fs = require('fs-extra'); const path = require('path'); const process = require('process'); -const post = builderOptions => { - const packageDesc = require('./package'); - delete packageDesc.private; - delete packageDesc.scripts; - delete packageDesc.dependencies; - delete packageDesc.devDependencies; - delete packageDesc.main; - delete packageDesc.files; - packageDesc.peerDependencies = { - '@ngageoint/mage.service': `^${packageDesc.version}` - }; - const outputPathDir = path.resolve(process.cwd(), builderOptions.outputPath); - const packageDescPath = path.join(outputPathDir, 'package.json'); - fs.writeFileSync(packageDescPath, JSON.stringify(packageDesc, null, 2)); -} - -module.exports.default = { post } +const packageDesc = require('./package'); +delete packageDesc.private; +delete packageDesc.scripts; +delete packageDesc.dependencies; +delete packageDesc.devDependencies; +delete packageDesc.main; +packageDesc.files = ['app', 'admin']; +packageDesc.peerDependencies = { + '@ngageoint/mage.service': `^${packageDesc.version}` +}; +const outputPathDir = path.resolve(process.cwd(), "dist"); +const packageDescPath = path.join(outputPathDir, 'package.json'); +fs.writeFileSync(packageDescPath, JSON.stringify(packageDesc, null, 2)); diff --git a/web-app/projects/core-lib-showcase/.browserslistrc b/web-app/projects/core-lib-showcase/.browserslistrc new file mode 100644 index 000000000..80848532e --- /dev/null +++ b/web-app/projects/core-lib-showcase/.browserslistrc @@ -0,0 +1,12 @@ +# This file is used by the build system to adjust CSS and JS output to support the specified browsers below. +# For additional information regarding the format and rule options, please see: +# https://github.com/browserslist/browserslist#queries + +# You can see what browsers were selected by your queries by running: +# npx browserslist + +> 0.5% +last 2 versions +Firefox ESR +not dead +not IE 9-11 # For IE 9-11 support, remove 'not'. \ No newline at end of file diff --git a/web-app/projects/core-lib-showcase/e2e/protractor.conf.js b/web-app/projects/core-lib-showcase/e2e/protractor.conf.js deleted file mode 100644 index 7c798cfff..000000000 --- a/web-app/projects/core-lib-showcase/e2e/protractor.conf.js +++ /dev/null @@ -1,32 +0,0 @@ -// @ts-check -// Protractor configuration file, see link for more information -// https://github.com/angular/protractor/blob/master/lib/config.ts - -const { SpecReporter } = require('jasmine-spec-reporter'); - -/** - * @type { import("protractor").Config } - */ -exports.config = { - allScriptsTimeout: 11000, - specs: [ - './src/**/*.e2e-spec.ts' - ], - capabilities: { - browserName: 'chrome' - }, - directConnect: true, - baseUrl: 'http://localhost:4200/', - framework: 'jasmine', - jasmineNodeOpts: { - showColors: true, - defaultTimeoutInterval: 30000, - print: function() {} - }, - onPrepare() { - require('ts-node').register({ - project: require('path').join(__dirname, './tsconfig.json') - }); - jasmine.getEnv().addReporter(new SpecReporter({ spec: { displayStacktrace: true } })); - } -}; \ No newline at end of file diff --git a/web-app/projects/core-lib-showcase/e2e/src/app.e2e-spec.ts b/web-app/projects/core-lib-showcase/e2e/src/app.e2e-spec.ts deleted file mode 100644 index 7a5af36c8..000000000 --- a/web-app/projects/core-lib-showcase/e2e/src/app.e2e-spec.ts +++ /dev/null @@ -1,23 +0,0 @@ -import { AppPage } from './app.po'; -import { browser, logging } from 'protractor'; - -describe('workspace-project App', () => { - let page: AppPage; - - beforeEach(() => { - page = new AppPage(); - }); - - it('should display welcome message', () => { - page.navigateTo(); - expect(page.getTitleText()).toEqual('core-lib-showcase app is running!'); - }); - - afterEach(async () => { - // Assert that there are no errors emitted from the browser - const logs = await browser.manage().logs().get(logging.Type.BROWSER); - expect(logs).not.toContain(jasmine.objectContaining({ - level: logging.Level.SEVERE, - } as logging.Entry)); - }); -}); diff --git a/web-app/projects/core-lib-showcase/src/app/app-routing.module.ts b/web-app/projects/core-lib-showcase/src/app/app-routing.module.ts index 06c734263..66e886aa7 100644 --- a/web-app/projects/core-lib-showcase/src/app/app-routing.module.ts +++ b/web-app/projects/core-lib-showcase/src/app/app-routing.module.ts @@ -5,7 +5,7 @@ import { Routes, RouterModule } from '@angular/router'; const routes: Routes = []; @NgModule({ - imports: [RouterModule.forRoot(routes)], + imports: [RouterModule.forRoot(routes, { relativeLinkResolution: 'legacy' })], exports: [RouterModule] }) export class AppRoutingModule { } diff --git a/web-app/projects/core-lib-showcase/src/app/app.component.spec.ts b/web-app/projects/core-lib-showcase/src/app/app.component.spec.ts index 3da56f1d6..b12e43195 100644 --- a/web-app/projects/core-lib-showcase/src/app/app.component.spec.ts +++ b/web-app/projects/core-lib-showcase/src/app/app.component.spec.ts @@ -1,9 +1,9 @@ -import { TestBed, async } from '@angular/core/testing'; +import { TestBed, waitForAsync } from '@angular/core/testing'; import { RouterTestingModule } from '@angular/router/testing'; import { AppComponent } from './app.component'; describe('AppComponent', () => { - beforeEach(async(() => { + beforeEach(waitForAsync(() => { TestBed.configureTestingModule({ imports: [ RouterTestingModule diff --git a/web-app/projects/core-lib-showcase/src/app/app.component.ts b/web-app/projects/core-lib-showcase/src/app/app.component.ts index 81d4bbdc0..a5469a6e6 100644 --- a/web-app/projects/core-lib-showcase/src/app/app.component.ts +++ b/web-app/projects/core-lib-showcase/src/app/app.component.ts @@ -1,5 +1,5 @@ import { Component } from '@angular/core'; -import { FormControl } from '@angular/forms' +import { UntypedFormControl } from '@angular/forms' import { itemRangeOfPage, PageOf, PagingDataSource } from 'core-lib-src/paging' import { User } from 'core-lib-src/user' import { of } from 'rxjs' @@ -12,5 +12,5 @@ import { of } from 'rxjs' }) export class AppComponent { - userControl = new FormControl(null) + userControl = new UntypedFormControl(null) } diff --git a/web-app/projects/core-lib-showcase/src/app/user/mock-user-read.service.ts b/web-app/projects/core-lib-showcase/src/app/user/mock-user-read.service.ts index 497bd9af8..9a35a2a33 100644 --- a/web-app/projects/core-lib-showcase/src/app/user/mock-user-read.service.ts +++ b/web-app/projects/core-lib-showcase/src/app/user/mock-user-read.service.ts @@ -3,6 +3,7 @@ import { PageOf, itemRangeOfPage } from '@ngageoint/mage.web-core-lib/paging' import { Observable, of } from 'rxjs' import { delay } from 'rxjs/operators' import { UserPhone, UserSearchResult } from 'core-lib-src/user' +import { Injectable } from "@angular/core"; const userList: User[] = Array.from({ length: 5000 }).map((_, count: number) => { const phones: UserPhone[] = [] @@ -28,6 +29,7 @@ const userList: User[] = Array.from({ length: 5000 }).map((_, count: number) => type UserReadServiceInterface = { [K in keyof UserReadService]: UserReadService[K] extends Function ? UserReadService[K] : never } +@Injectable() export class MockUserReadService implements UserReadServiceInterface { search(which: UserSearchParams): Observable> { diff --git a/web-app/projects/core-lib-showcase/src/environments/environment.ts b/web-app/projects/core-lib-showcase/src/environments/environment.ts index 7b4f817ad..30d7bccb1 100644 --- a/web-app/projects/core-lib-showcase/src/environments/environment.ts +++ b/web-app/projects/core-lib-showcase/src/environments/environment.ts @@ -13,4 +13,4 @@ export const environment = { * This import should be commented out in production mode because it will have a negative impact * on performance if an error is thrown. */ -// import 'zone.js/dist/zone-error'; // Included with Angular CLI. +// import 'zone.js/plugins/zone-error'; // Included with Angular CLI. diff --git a/web-app/projects/core-lib-showcase/src/polyfills.ts b/web-app/projects/core-lib-showcase/src/polyfills.ts index 03711e5d9..dcd18eace 100644 --- a/web-app/projects/core-lib-showcase/src/polyfills.ts +++ b/web-app/projects/core-lib-showcase/src/polyfills.ts @@ -18,16 +18,6 @@ * BROWSER POLYFILLS */ -/** IE10 and IE11 requires the following for NgClass support on SVG elements */ -// import 'classlist.js'; // Run `npm install --save classlist.js`. - -/** - * Web Animations `@angular/platform-browser/animations` - * Only required if AnimationBuilder is used within the application and using IE/Edge or Safari. - * Standard animation support in Angular DOES NOT require any polyfills (as of Angular 6.0). - */ -// import 'web-animations-js'; // Run `npm install --save web-animations-js`. - /** * By default, zone.js will patch all possible macroTask and DomEvents * user can disable parts of macroTask/DomEvents patch by setting following flags @@ -55,7 +45,7 @@ /*************************************************************************************************** * Zone JS is required by default for Angular itself. */ -import 'zone.js/dist/zone'; // Included with Angular CLI. +import 'zone.js'; // Included with Angular CLI. /*************************************************************************************************** diff --git a/web-app/projects/core-lib-showcase/src/styles.scss b/web-app/projects/core-lib-showcase/src/styles.scss index 6e204fa02..9d7973a56 100644 --- a/web-app/projects/core-lib-showcase/src/styles.scss +++ b/web-app/projects/core-lib-showcase/src/styles.scss @@ -1,6 +1,6 @@ /* You can add global styles to this file, and also import other style files */ -@import "~@angular/material/prebuilt-themes/indigo-pink.css"; -@import "~@ng-select/ng-select/themes/material.theme.css"; +@import "@angular/material/prebuilt-themes/indigo-pink.css"; +@import "@ng-select/ng-select/themes/material.theme.css"; html, body { height: 100%; } body { margin: 0; font-family: Roboto, "Helvetica Neue", sans-serif; } diff --git a/web-app/projects/core-lib-showcase/src/test.ts b/web-app/projects/core-lib-showcase/src/test.ts index 50193eb0f..4bf4afba6 100644 --- a/web-app/projects/core-lib-showcase/src/test.ts +++ b/web-app/projects/core-lib-showcase/src/test.ts @@ -1,6 +1,6 @@ // This file is required by karma.conf.js and loads recursively all the .spec and framework files -import 'zone.js/dist/zone-testing'; +import 'zone.js/testing'; import { getTestBed } from '@angular/core/testing'; import { BrowserDynamicTestingModule, @@ -17,7 +17,9 @@ declare const require: { // First, initialize the Angular testing environment. getTestBed().initTestEnvironment( BrowserDynamicTestingModule, - platformBrowserDynamicTesting() + platformBrowserDynamicTesting(), { + teardown: { destroyAfterEach: false } +} ); // Then we find all the tests. const context = require.context('./', true, /\.spec\.ts$/); diff --git a/web-app/projects/core-lib/README.md b/web-app/projects/core-lib/README.md index a0b24f34d..d6627a2d9 100644 --- a/web-app/projects/core-lib/README.md +++ b/web-app/projects/core-lib/README.md @@ -1,11 +1,42 @@ -# CoreLib +# MAGE Web Core Lib This library was generated with [Angular CLI](https://github.com/angular/angular-cli) version 9.1.13. +## Dependency notes +This library depends on Angular's `library` [schematic](https://github.com/angular/angular-cli/tree/main/packages/schematics/angular/library), +as well as Angular's `ng-packagr` [builder](https://github.com/angular/angular-cli/tree/main/packages/angular_devkit/build_angular/src/builders/ng-packagr), +to generate a library project, and bundle the project, respectively. This library's builder also directly invokes +`rollup` as the last step of the bundle process to generate an AMD module. + +Ideally, this project would have peer dependencies on these packages to facilitate managing versions, while specifying +correlating `devDependencies` that reference the this root project's Angular-related dependencies. This would allow +development of this DevKit library to use the appropriate Angular libraries already installed at the parent level. +Similarly, a consuming project that adds this library would have Angular libraries installed at the top level of the +workspace, which should satisfy this library's peer dependencies, or cause an error during NPM's install process if the +consuming project does not supply compatible Angular libraries. + +There are some hangups with that strategy, though, as of version 14 of the Angular suite of packages. +1. One of MAGE's dependencies, `@ajsf/material`, requires `rxjs` `^7.0.0`, but `@angular-devkit/*` libraries pin `rxjs` + to `6.6.7`, which causes TypeScript type conflicts at build time for this DevKit library. There are presently + some undesirable `any` casts to overcome the `rxjs` type conflicts. This should be fixed after upgrading to the + latest Angular, currently 17, whose `@angular-devkit/core` package pins `rxjs` to `7.8.1`. +1. This library tries to reference a dev dependency on `rollup` through `../node_modules/rollup`. This relative path + dependency triggers NPM to try to run `rollup`'s `prepare` script, which invokes a tool called `husky`, pulled from + `rollup`'s `devDependencies`. However, NPM does not install `devDependencies` of dependencies, so `husky` is absent + and `npm install` in this DevKit project exits with error. The workaround is to install `husky` as a dev dependency + of this project, which is not really correct. + +Perhaps a better strategy is to just install the dependencies DevKit needs at the top level to manage the Angular +family of dependencies in one place, as opposed to managing and reconciling those dependency versions between the +root and sub-packages manually or with a custom script. NPM's workspaces feature may also facilitate shared dependency +management by hoisting common dependencies, but the [documentation](https://docs.npmjs.com/cli/v10/using-npm/workspaces) +does not mention that specifically. Other resources [state](https://blog.faizahmed.in/npm-workspaces#heading-what-are-npm-workspaces) +NPM does in fact hoist common dependencies. + ## Code scaffolding Run `ng generate component component-name --project core-lib` to generate a new component. You can also use `ng generate directive|pipe|service|class|guard|interface|enum|module --project core-lib`. -> Note: Don't forget to add `--project core-lib` or else it will be added to the default project in your `angular.json` file. +> Note: Don't forget to add `--project core-lib` or else it will be added to the default project in your `angular.json` file. ## Build diff --git a/web-app/projects/core-lib/angular-cli/README.md b/web-app/projects/core-lib/angular-cli/README.md new file mode 100644 index 000000000..8f82ec210 --- /dev/null +++ b/web-app/projects/core-lib/angular-cli/README.md @@ -0,0 +1,30 @@ +# Angular CLI Integration + +This subfolder of modules contains Angular CLI integrations, including a [schematic]() and +[builder](), that facilitates creating MAGE web plugin bundles. + +## Background +Before Angular 13, the Angular [Library](https://angular.dev/tools/libraries/creating-libraries) CLI tools and +[Angular Package Format](https://docs.google.com/document/d/1CZC2rcpxffTDfRDs6p1cfbmKNLA6x5O-NtkJglDaBVs/preview#heading=h.k0mh3o8u5hx) +produced a [UMD](https://github.com/umdjs/umd) bundle by default. The UMD bundle was suitable to include in a plugin's +NPM package and for the core web app to download directly and load with [SystemJS](https://github.com/systemjs/systemjs) +at runtime to hook the plugin module into the web app. Angular 13, however, eliminated the UMD bundle output from the +[Angular Package Format](https://angular.dev/tools/libraries/angular-package-format) leaving only ECMAScript Module +(ESM) outputs, as opposed to a concatenated, resolved bundle. Angular's intention is that libraries are strictly a +development time construct, with the hosting application left to resolving, bundling, and tree-shaking the library's +`import` statements. MAGE, however, is using Angular libraries differently, creating a bundle that excludes shared +dependencies the host web app provides, but including dependencies specific to the library, such that the host web app +can load the library as one chunk dynamically at runtime. While native ESM could be a possibility for MAGE in the +future, a significant amount of evaluation and testing is necessary, and at minimum MAGE would require all instances to +run on HTTP/2 to maximize performance. The major issue would be all the transactions required to load the large number +of module entry points that MAGE, Angular, Angular Material, and others comprise. Whereas a conventional web app can +provide all the shared entry points by bare module specifier to SystemJS's named registry from a single bundle +downloaded initially, an ESM app must download each module separately on-demand as the JS engine processes `import` +statements. Even with HTTP/2 multiplexing, this could be a serious performance hit. + +## Plugin Library Schematic + +## AMD Builder + +## TODO + diff --git a/web-app/projects/core-lib/angular-cli/builders.json b/web-app/projects/core-lib/angular-cli/builders.json new file mode 100644 index 000000000..7e877f217 --- /dev/null +++ b/web-app/projects/core-lib/angular-cli/builders.json @@ -0,0 +1,9 @@ +{ + "builders": { + "amd": { + "implementation": "./builders/fesm-amd.js", + "description": "Create an AMD module bundle from an ng-packagr FESM bundle.", + "schema": "./builders/schema.json" + } + } +} \ No newline at end of file diff --git a/web-app/projects/core-lib/angular-cli/builders/fesm-amd.ts b/web-app/projects/core-lib/angular-cli/builders/fesm-amd.ts new file mode 100644 index 000000000..257eb74c7 --- /dev/null +++ b/web-app/projects/core-lib/angular-cli/builders/fesm-amd.ts @@ -0,0 +1,130 @@ +import * as path from 'path' +import { executeNgPackagrBuilder } from '@angular-devkit/build-angular' +import { BuilderContext, BuilderOutput, createBuilder } from '@angular-devkit/architect' +import { Observable, concat, defer, tap } from 'rxjs' +import { rollup } from 'rollup' +import { discoverPackages as ngPackagrDiscoverPackages } from 'ng-packagr/lib/ng-package/discover-packages' +import { nodeResolve } from '@rollup/plugin-node-resolve' +import commonjs from '@rollup/plugin-commonjs' +import { NgPackage } from 'ng-packagr/lib/ng-package/package' +import { writeFile } from 'fs/promises' + +interface BuildInfo { + options: any, + context: BuilderContext, + packages: NgPackage, + ngPackagePath: string + destDir: string + amdName: string + amdPath: string + fesm2020Path: string +} + +function ngPackagrThenAmd(options: any, context: BuilderContext): Observable { + return concat( + executeNgPackagrBuilder(options, context).pipe( + tap((x: BuilderOutput) => { + if (x.error) { + context.logger.error(x.error) + } + }) as any + ) as any, + /* + TODO: + cast to any works around type incompatibility between rxjs 6.6.7 from @angular-devkit/* + packages and rxjs 7 other angular packages. hopefully that goes away with an angular upgrade. + */ + defer(async () => { + const buildInfo = await resolveBuildInfo(options, context) + const rollupResult = await rollupFesmToAmd(buildInfo) + if (rollupResult.success !== true) { + return rollupResult + } + const packageJsonResult = await writeDistPackageJson(buildInfo) + return packageJsonResult + }) + ) as Observable +} + +async function resolveBuildInfo(options: any, context: BuilderContext): Promise { + const root = context.workspaceRoot + const ngPackagePath = path.resolve(root, options.project) + const packages = await ngPackagrDiscoverPackages({ project: ngPackagePath }) + const destDir = packages.dest + const fesm2020Path = packages.primary.destinationFiles.fesm2020 + const amdName = `${packages.primary.flatModuleFile}.amd.js` + const amdPath = path.resolve(destDir, amdName) + return { + options, + context, + packages, + ngPackagePath, + destDir, + fesm2020Path, + amdName: amdName, + amdPath: amdPath + } +} + +async function rollupFesmToAmd(buildInfo: BuildInfo): Promise { + const { context, fesm2020Path, amdPath } = buildInfo + context.logger.info(`rolling FESM2020 to AMD ${JSON.stringify({ + fesm2020Path, + amdPath + }, null, 2)}`) + try { + const roller = await rollup({ + input: fesm2020Path, + plugins: [ + nodeResolve({ + resolveOnly: moduleId => { + const external = false + || moduleId.startsWith('@angular/') + || moduleId.startsWith('@ng-select/') + || /^rxjs(\/.+)?/.test(moduleId) + return !external + }, + preferBuiltins: false + }), + commonjs() + ], + }) + const rolled = await roller.write({ + format: 'amd', + file: amdPath + }) + for (const rollOut of rolled.output) { + context.logger.info(`rolled ${rollOut.name} ${rollOut.type} ${rollOut.fileName}`) + } + return { + success: true + } as BuilderOutput + } + catch (err) { + context.logger.error('error creating amd module from fesm: ' + err) + console.error(err) + return { + success: false, + error: err + } as BuilderOutput + } +} + +async function writeDistPackageJson(buildInfo: BuildInfo): Promise { + const distPkg = { + ...buildInfo.packages.primary.packageJson, + main: buildInfo.amdName + } + const distPkgPath = path.resolve(buildInfo.packages.primary.destinationPath, 'package.json') + const distPkgContent = JSON.stringify(distPkg, null, 2) + try { + buildInfo.context.logger.info(`writing dist package to ${distPkgPath}`) + await writeFile(distPkgPath, distPkgContent) + } + catch (err) { + buildInfo.context.logger.error(`error writing dist package ${distPkgPath}: ${err}`) + } + return { success: true } +} + +export default createBuilder(ngPackagrThenAmd) \ No newline at end of file diff --git a/web-app/projects/core-lib/angular-cli/builders/index.ts b/web-app/projects/core-lib/angular-cli/builders/index.ts new file mode 100644 index 000000000..d8905bef3 --- /dev/null +++ b/web-app/projects/core-lib/angular-cli/builders/index.ts @@ -0,0 +1 @@ +export * from './fesm-amd' \ No newline at end of file diff --git a/web-app/projects/core-lib/angular-cli/builders/schema.json b/web-app/projects/core-lib/angular-cli/builders/schema.json new file mode 100644 index 000000000..264f9b022 --- /dev/null +++ b/web-app/projects/core-lib/angular-cli/builders/schema.json @@ -0,0 +1,23 @@ +{ + "$schema": "http://json-schema.org/draft-07/schema", + "title": "ng-packagr Target", + "description": "plugin-library target options for Build Architect. Use to build MAGE plugin library projects.", + "type": "object", + "properties": { + "project": { + "type": "string", + "description": "The file path for the ng-packagr configuration file, relative to the current workspace." + }, + "tsConfig": { + "type": "string", + "description": "The full path for the TypeScript configuration file, relative to the current workspace." + }, + "watch": { + "type": "boolean", + "description": "Run build when files change.", + "default": false + } + }, + "additionalProperties": false, + "required": ["project"] +} \ No newline at end of file diff --git a/web-app/projects/core-lib/angular-cli/collection.json b/web-app/projects/core-lib/angular-cli/collection.json new file mode 100644 index 000000000..b10118fd6 --- /dev/null +++ b/web-app/projects/core-lib/angular-cli/collection.json @@ -0,0 +1,14 @@ +{ + "$schema": "../../../node_modules/@angular-devkit/schematics/collection-schema.json", + "schematics": { + "ng-add": { + "description": "Install the library to the target project.", + "factory": "./schematics/ng-add/index#ngAdd" + }, + "plugin-library": { + "description": "Generate a new MAGE web plugin library project.", + "factory": "./schematics/plugin-library/index#mageWebPluginLibrary", + "schema": "../../../node_modules/@schematics/angular/library/schema.json" + } + } +} \ No newline at end of file diff --git a/web-app/projects/core-lib/angular-cli/schematics/ng-add/index.ts b/web-app/projects/core-lib/angular-cli/schematics/ng-add/index.ts new file mode 100644 index 000000000..a3a974616 --- /dev/null +++ b/web-app/projects/core-lib/angular-cli/schematics/ng-add/index.ts @@ -0,0 +1,11 @@ +import { Rule } from '@angular-devkit/schematics' + +/** + * Return an identity rule that leaves the workspace tree unchanged, as there + * are no default artifacts to add on installation. However, an ng-add + * schematic is necessary to support the `"ng-add"` package.json entry which + * tells `ng-add` to add the lib to `"devDependencies"`. + */ +export function ngAdd(): Rule { + return tree => tree +} \ No newline at end of file diff --git a/web-app/projects/core-lib/angular-cli/schematics/plugin-library/index.ts b/web-app/projects/core-lib/angular-cli/schematics/plugin-library/index.ts new file mode 100644 index 000000000..f61588342 --- /dev/null +++ b/web-app/projects/core-lib/angular-cli/schematics/plugin-library/index.ts @@ -0,0 +1,136 @@ +import { Rule, chain, externalSchematic, SchematicsException, DirEntry, Tree, } from '@angular-devkit/schematics' +import { Schema as BaseLibraryOptions } from '@schematics/angular/library/schema' +import { getWorkspace, updateWorkspace, } from '@schematics/angular/utility/workspace' +import { insertImport, insertAfterLastOccurrence, findNodes } from '@schematics/angular/utility/ast-utils' +import { applyToUpdateRecorder, NoopChange } from '@schematics/angular/utility/change' +import * as ts from '@schematics/angular/third_party/github.com/Microsoft/TypeScript/lib/typescript' +import { JsonObject } from '@angular-devkit/core' +import { parse as semverParse } from 'semver' + +function addPluginHookToEntryPoint(options: PluginLibraryOptions): Rule { + const entryFile = options.entryFile + if (!entryFile) { + throw new SchematicsException('missing entryFile') + } + return async (tree, _context) => { + const workspace = await getWorkspace(tree) + const project = workspace.projects.get(options.name) + if (!project) { + throw new SchematicsException(`project not found in workspace: ${project}`) + } + const libDirPath = `${project.sourceRoot}/lib` + const libDir = tree.getDir(libDirPath) + const module = findLibraryNgModule(tree, libDir) + const moduleClassName = module.classDecl.name?.text + const component = findLibraryComponent(tree, libDir) + const componentClassName = component.classDecl.name?.text + const entryFilePath = `${project.sourceRoot}/${entryFile}.ts` + const entryFileText = tree.readText(entryFilePath) + const entrySource = ts.createSourceFile(entryFilePath, entryFileText, ts.ScriptTarget.Latest, true) + const importCoreChange = insertImport(entrySource, entryFilePath, 'PluginHooks', '@ngageoint/mage.web-core-lib/plugin') + const importModuleChange = moduleClassName ? insertImport(entrySource, entryFilePath, moduleClassName, `./lib/${module.sourceFile.fileName.slice(0, -3)}`) : new NoopChange() + const importComponentChange = componentClassName ? insertImport(entrySource, entryFilePath, componentClassName, `./lib/${component.sourceFile.fileName.slice(0, -3)}`) : new NoopChange() + const packageJson = tree.readJson(`${project.root}/package.json`) as JsonObject + const packageName = packageJson.name as string + const pluginExport = +` +export const MAGE_WEB_HOOKS: PluginHooks = { + module: ${moduleClassName}, + adminTab: { + title: '${packageName}', + tabContentComponent: ${componentClassName}, + } +} +` + type ExportNodes = ts.ExportAssignment | ts.ExportDeclaration | ts.ExportSpecifier | ts.NamedExports + const exportNodes = findNodes(entrySource, ((x: ts.Node) => { + return [ + ts.SyntaxKind.ExportAssignment, + ts.SyntaxKind.ExportDeclaration, + ts.SyntaxKind.ExportSpecifier, + ts.SyntaxKind.NamedExports, + ].includes(x.kind) + }) as ((node: ts.Node) => node is ExportNodes)) + .sort((a, b) => a.getStart() - b.getStart()) + const pluginExportChange = insertAfterLastOccurrence(exportNodes, pluginExport, entryFilePath, entrySource.end) + const edit = tree.beginUpdate(entryFilePath) + applyToUpdateRecorder(edit, [ importCoreChange, importModuleChange, importComponentChange, pluginExportChange ].filter(x => !!x)) + tree.commitUpdate(edit) + } +} + +function findLibraryNgModule(tree: Tree, baseDir: DirEntry): { sourceFile: ts.SourceFile, classDecl: ts.ClassDeclaration } { + const fileName = baseDir.subfiles.find(x => /\.module\.ts$/.test(x)) || '' + const filePath = `${baseDir.path}/${fileName}` + const fileText = tree.readText(filePath) + const source = ts.createSourceFile(fileName, fileText, ts.ScriptTarget.Latest, true) + const classDecl = findNodes(source, ts.SyntaxKind.ClassDeclaration)[0] as ts.ClassDeclaration + return { sourceFile: source, classDecl: classDecl } +} + +function findLibraryComponent(tree: Tree, baseDir: DirEntry): { sourceFile: ts.SourceFile, classDecl: ts.ClassDeclaration } { + const fileName = baseDir.subfiles.find(x => /\.component\.ts$/.test(x)) || '' + const filePath = `${baseDir.path}/${fileName}` + const fileText = tree.readText(filePath) + const source = ts.createSourceFile(fileName, fileText, ts.ScriptTarget.Latest, true) + const classDecl = findNodes(source, ts.SyntaxKind.ClassDeclaration)[0] as ts.ClassDeclaration + return { sourceFile: source, classDecl: classDecl } +} + +function useCustomBuilder(options: PluginLibraryOptions): Rule { + return updateWorkspace(workspace => { + const projName = options.name + const project = workspace.projects.get(projName) + if (!project) { + throw new SchematicsException(`project not found in workspace: ${projName}`) + } + const target = project.targets.get('build') + project.targets.set('build', { + ...target, + builder: '@ngageoint/mage.web-core-lib:amd' + }) + workspace.projects.set(projName, project) + }) +} + +function addCorePeerDependency(options: PluginLibraryOptions): Rule { + return async (tree, _context) => { + const corePkg = require('@ngageoint/mage.web-core-lib/package.json') + const coreVersion = semverParse(corePkg.version) + const coreVersionConstraint = !!coreVersion ? `^${coreVersion.major}.${coreVersion.minor}.${coreVersion.patch}` : null + const workspace = await getWorkspace(tree) + const project = workspace.projects.get(options.name) + if (!project) { + throw new SchematicsException(`project not found in workspace: ${options.name}`) + } + const packageJsonPath = `${project.root}/package.json` + const packageJson = tree.readJson(packageJsonPath) as JsonObject + const packageJsonMod = { + ...packageJson, + dependencies: {}, + peerDependencies: { + '@ngageoint/mage.web-app': coreVersionConstraint + } + } + tree.overwrite(packageJsonPath, JSON.stringify(packageJsonMod, null, 2)) + } +} + +export function mageWebPluginLibrary(options: PluginLibraryOptions): Rule { + if (!options.name) { + throw new SchematicsException('missing name of the library to generate') + } + return chain([ + (_tree, context) => { + context.logger.info(`creating MAGE web plugin library ${options.name}`) + }, + externalSchematic('@schematics/angular', 'library', options), + useCustomBuilder(options), + addPluginHookToEntryPoint(options), + addCorePeerDependency(options), + ]) +} + +export interface PluginLibraryOptions extends BaseLibraryOptions { + +} diff --git a/web-app/projects/core-lib/common/mage-common.module.ts b/web-app/projects/core-lib/common/mage-common.module.ts index 0fab911af..186c0080d 100644 --- a/web-app/projects/core-lib/common/mage-common.module.ts +++ b/web-app/projects/core-lib/common/mage-common.module.ts @@ -1,10 +1,10 @@ import { NgModule } from '@angular/core' -import { BrowserModule } from '@angular/platform-browser' import { XhrImgComponent } from './xhr-img.component' +import { CommonModule } from '@angular/common' @NgModule({ imports: [ - BrowserModule + CommonModule ], declarations: [ XhrImgComponent diff --git a/web-app/projects/core-lib/common/xhr-img.component.spec.ts b/web-app/projects/core-lib/common/xhr-img.component.spec.ts index 596b7848b..431162ef7 100644 --- a/web-app/projects/core-lib/common/xhr-img.component.spec.ts +++ b/web-app/projects/core-lib/common/xhr-img.component.spec.ts @@ -1,6 +1,6 @@ import { HttpClientTestingModule, HttpTestingController } from '@angular/common/http/testing' import { Component, DebugElement } from '@angular/core' -import { async, ComponentFixture, TestBed } from '@angular/core/testing' +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing' import { By } from '@angular/platform-browser' import { XhrImgComponent, ObjectUrlService, OBJECT_URL_SERVICE } from './xhr-img.component' @@ -26,7 +26,7 @@ describe('ImgXhrBlobSrcDirective', () => { let blob1: Blob let blob2: Blob - beforeEach(async(() => { + beforeEach(waitForAsync(() => { objectUrlService = jasmine.createSpyObj('ObjectUrlService', [ 'createObjectURL', 'revokeObjectURL' ]) objectUrlService.createObjectURL.and.callFake(URL.createObjectURL) objectUrlService.revokeObjectURL.and.callFake(URL.revokeObjectURL) @@ -145,12 +145,12 @@ describe('ImgXhrBlobSrcDirective', () => { xhr2.flush(blob1) - expect(objectUrlService.createObjectURL).not.toHaveBeenCalledWith(xhr1.request.url) + expect(objectUrlService.createObjectURL).not.toHaveBeenCalledWith(xhr1.request.url as any) expect(objectUrlService.createObjectURL).toHaveBeenCalledTimes(1) expect(objectUrlService.createObjectURL).toHaveBeenCalledWith(blob1) }) - it('revokes the blob url when the source url changes before the image loads', async(() => { + it('revokes the blob url when the source url changes before the image loads', waitForAsync(() => { host.sourceUrl = '/test/foresaken' fixture.detectChanges() @@ -164,7 +164,7 @@ describe('ImgXhrBlobSrcDirective', () => { const xhr2 = httpTest.expectOne('/test/usurper') xhr2.flush(blob2) - expect(objectUrlService.createObjectURL).not.toHaveBeenCalledWith(xhr1.request.url) + expect(objectUrlService.createObjectURL).not.toHaveBeenCalledWith(xhr1.request.url as any) expect(objectUrlService.createObjectURL).toHaveBeenCalledTimes(2) expect(objectUrlService.createObjectURL.calls.argsFor(0)).toEqual([ blob1 ]) expect(objectUrlService.createObjectURL.calls.argsFor(1)).toEqual([ blob2 ]) @@ -175,4 +175,4 @@ describe('ImgXhrBlobSrcDirective', () => { expect(img.src).toEqual(objectUrlService.createObjectURL.calls.all()[1].returnValue) expect(img.src).toMatch(/^blob:/) })) -}) \ No newline at end of file +}) diff --git a/web-app/projects/core-lib/feed/feed.service.spec.ts b/web-app/projects/core-lib/feed/feed.service.spec.ts index 954492735..eca13d891 100644 --- a/web-app/projects/core-lib/feed/feed.service.spec.ts +++ b/web-app/projects/core-lib/feed/feed.service.spec.ts @@ -1,10 +1,10 @@ import { HttpClientModule } from '@angular/common/http'; -import { async, TestBed } from '@angular/core/testing'; +import { TestBed, waitForAsync } from '@angular/core/testing'; import { FeedService } from './feed.service'; describe('FeedService', () => { - beforeEach(async(() => { + beforeEach(waitForAsync(() => { TestBed.configureTestingModule({ imports: [ HttpClientModule @@ -15,7 +15,7 @@ describe('FeedService', () => { it('should be created', () => { - const service: FeedService = TestBed.get(FeedService); + const service: FeedService = TestBed.inject(FeedService); expect(service).toBeTruthy(); }) }) diff --git a/web-app/projects/core-lib/feed/feed.service.ts b/web-app/projects/core-lib/feed/feed.service.ts index c3593be79..943187956 100644 --- a/web-app/projects/core-lib/feed/feed.service.ts +++ b/web-app/projects/core-lib/feed/feed.service.ts @@ -19,7 +19,7 @@ export class FeedService { // TODO: there is probably a better solution than maintaining this map here private _feeds = new BehaviorSubject>([]); - readonly feeds = this._feeds.asObservable(); + readonly feeds$ = this._feeds.asObservable(); private _feedItems = new Map>>(); feedItems(feedId: string): Observable> { diff --git a/web-app/projects/core-lib/ng-package.json b/web-app/projects/core-lib/ng-package.json index 22ccdcf6d..2b7097aa4 100644 --- a/web-app/projects/core-lib/ng-package.json +++ b/web-app/projects/core-lib/ng-package.json @@ -4,7 +4,9 @@ "lib": { "entryFile": "src/public-api.ts" }, - "whitelistedNonPeerDependencies": [ - "@types/geojson" + "allowedNonPeerDependencies": [ + "@rollup/plugin-commonjs", + "@rollup/plugin-node-resolve", + "rxjs" ] -} \ No newline at end of file +} diff --git a/web-app/projects/core-lib/package-lock.json b/web-app/projects/core-lib/package-lock.json new file mode 100644 index 000000000..cc9b041b1 --- /dev/null +++ b/web-app/projects/core-lib/package-lock.json @@ -0,0 +1,11089 @@ +{ + "name": "@ngageoint/mage.web-core-lib", + "version": "6.3.0-beta.8", + "lockfileVersion": 3, + "requires": true, + "packages": { + "": { + "name": "@ngageoint/mage.web-core-lib", + "version": "6.3.0-beta.8", + "dependencies": { + "@rollup/plugin-commonjs": "25.0.8", + "@rollup/plugin-node-resolve": "15.3.1", + "rxjs": "7.8.2", + "tslib": "2.8.1" + }, + "peerDependencies": { + "@angular-devkit/architect": "0.1400.0", + "@angular-devkit/build-angular": "14.2.13", + "@angular-devkit/core": "14.2.13", + "@angular-devkit/schematics": "14.2.0", + "@angular/animations": "14.3.0", + "@angular/cdk": "14.2.7", + "@angular/common": "14.3.0", + "@angular/core": "14.3.0", + "@angular/forms": "14.3.0", + "@angular/material": "14.2.7", + "@angular/platform-browser": "14.3.0", + "@ng-select/ng-select": "9.1.0", + "@schematics/angular": "14.2.0", + "ng-packagr": "14.2.0", + "rollup": "2.78.0" + } + }, + "node_modules/@adobe/css-tools": { + "version": "4.4.2", + "resolved": "https://registry.npmjs.org/@adobe/css-tools/-/css-tools-4.4.2.tgz", + "integrity": "sha512-baYZExFpsdkBNuvGKTKWCwKH57HRZLVtycZS05WTQNVOiXVSeAki3nU35zlRbToeMW8aHlJfyS+1C4BOv27q0A==", + "peer": true + }, + "node_modules/@ampproject/remapping": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.0.tgz", + "integrity": "sha512-qRmjj8nj9qmLTQXXmaR1cck3UXSRMPrbsLJAasZpF+t3riI71BXed5ebIOYwQntykeZuhjsdweEc9BxH5Jc26w==", + "peer": true, + "dependencies": { + "@jridgewell/gen-mapping": "^0.1.0", + "@jridgewell/trace-mapping": "^0.3.9" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@angular-devkit/architect": { + "version": "0.1400.0", + "resolved": "https://registry.npmjs.org/@angular-devkit/architect/-/architect-0.1400.0.tgz", + "integrity": "sha512-INPO+r5CHElPdFLOrwUYShZqtr37/kTJegAoWpSNC8Zy8WgTlecvA+y5eHy0bNeXMjWbZ3YCZJ1jXYpJJNL1Kg==", + "peer": true, + "dependencies": { + "@angular-devkit/core": "14.0.0", + "rxjs": "6.6.7" + }, + "engines": { + "node": "^14.15.0 || >=16.10.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" + } + }, + "node_modules/@angular-devkit/architect/node_modules/@angular-devkit/core": { + "version": "14.0.0", + "resolved": "https://registry.npmjs.org/@angular-devkit/core/-/core-14.0.0.tgz", + "integrity": "sha512-xQXpNbIeBjnbY68OFkrpFm6v7xlmTLFk6zGPIkI4T/hrqT2kNmg0y1/FcN6yMBgCEC9WVWR8SHGaPWrc5VVZMw==", + "peer": true, + "dependencies": { + "ajv": "8.11.0", + "ajv-formats": "2.1.1", + "jsonc-parser": "3.0.0", + "rxjs": "6.6.7", + "source-map": "0.7.3" + }, + "engines": { + "node": "^14.15.0 || >=16.10.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" + }, + "peerDependencies": { + "chokidar": "^3.5.2" + }, + "peerDependenciesMeta": { + "chokidar": { + "optional": true + } + } + }, + "node_modules/@angular-devkit/architect/node_modules/jsonc-parser": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-3.0.0.tgz", + "integrity": "sha512-fQzRfAbIBnR0IQvftw9FJveWiHp72Fg20giDrHz6TdfB12UH/uue0D3hm57UB5KgAVuniLMCaS8P1IMj9NR7cA==", + "peer": true + }, + "node_modules/@angular-devkit/architect/node_modules/rxjs": { + "version": "6.6.7", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", + "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", + "peer": true, + "dependencies": { + "tslib": "^1.9.0" + }, + "engines": { + "npm": ">=2.0.0" + } + }, + "node_modules/@angular-devkit/architect/node_modules/source-map": { + "version": "0.7.3", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz", + "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==", + "peer": true, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@angular-devkit/architect/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "peer": true + }, + "node_modules/@angular-devkit/build-angular": { + "version": "14.2.13", + "resolved": "https://registry.npmjs.org/@angular-devkit/build-angular/-/build-angular-14.2.13.tgz", + "integrity": "sha512-FJZKQ3xYFvEJ807sxVy4bCVyGU2NMl3UUPNfLIdIdzwwDEP9tx/cc+c4VtVPEZZfU8jVenu8XOvL6L0vpjt3yg==", + "peer": true, + "dependencies": { + "@ampproject/remapping": "2.2.0", + "@angular-devkit/architect": "0.1402.13", + "@angular-devkit/build-webpack": "0.1402.13", + "@angular-devkit/core": "14.2.13", + "@babel/core": "7.18.10", + "@babel/generator": "7.18.12", + "@babel/helper-annotate-as-pure": "7.18.6", + "@babel/plugin-proposal-async-generator-functions": "7.18.10", + "@babel/plugin-transform-async-to-generator": "7.18.6", + "@babel/plugin-transform-runtime": "7.18.10", + "@babel/preset-env": "7.18.10", + "@babel/runtime": "7.18.9", + "@babel/template": "7.18.10", + "@discoveryjs/json-ext": "0.5.7", + "@ngtools/webpack": "14.2.13", + "ansi-colors": "4.1.3", + "babel-loader": "8.2.5", + "babel-plugin-istanbul": "6.1.1", + "browserslist": "^4.9.1", + "cacache": "16.1.2", + "copy-webpack-plugin": "11.0.0", + "critters": "0.0.16", + "css-loader": "6.7.1", + "esbuild-wasm": "0.15.5", + "glob": "8.0.3", + "https-proxy-agent": "5.0.1", + "inquirer": "8.2.4", + "jsonc-parser": "3.1.0", + "karma-source-map-support": "1.4.0", + "less": "4.1.3", + "less-loader": "11.0.0", + "license-webpack-plugin": "4.0.2", + "loader-utils": "3.2.1", + "mini-css-extract-plugin": "2.6.1", + "minimatch": "5.1.0", + "open": "8.4.0", + "ora": "5.4.1", + "parse5-html-rewriting-stream": "6.0.1", + "piscina": "3.2.0", + "postcss": "8.4.31", + "postcss-import": "15.0.0", + "postcss-loader": "7.0.1", + "postcss-preset-env": "7.8.0", + "regenerator-runtime": "0.13.9", + "resolve-url-loader": "5.0.0", + "rxjs": "6.6.7", + "sass": "1.54.4", + "sass-loader": "13.0.2", + "semver": "7.5.3", + "source-map-loader": "4.0.0", + "source-map-support": "0.5.21", + "stylus": "0.59.0", + "stylus-loader": "7.0.0", + "terser": "5.14.2", + "text-table": "0.2.0", + "tree-kill": "1.2.2", + "tslib": "2.4.0", + "webpack": "5.76.1", + "webpack-dev-middleware": "5.3.3", + "webpack-dev-server": "4.11.0", + "webpack-merge": "5.8.0", + "webpack-subresource-integrity": "5.1.0" + }, + "engines": { + "node": "^14.15.0 || >=16.10.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" + }, + "optionalDependencies": { + "esbuild": "0.15.5" + }, + "peerDependencies": { + "@angular/compiler-cli": "^14.0.0", + "@angular/localize": "^14.0.0", + "@angular/service-worker": "^14.0.0", + "karma": "^6.3.0", + "ng-packagr": "^14.0.0", + "protractor": "^7.0.0", + "tailwindcss": "^2.0.0 || ^3.0.0", + "typescript": ">=4.6.2 <4.9" + }, + "peerDependenciesMeta": { + "@angular/localize": { + "optional": true + }, + "@angular/service-worker": { + "optional": true + }, + "karma": { + "optional": true + }, + "ng-packagr": { + "optional": true + }, + "protractor": { + "optional": true + }, + "tailwindcss": { + "optional": true + } + } + }, + "node_modules/@angular-devkit/build-angular/node_modules/@angular-devkit/architect": { + "version": "0.1402.13", + "resolved": "https://registry.npmjs.org/@angular-devkit/architect/-/architect-0.1402.13.tgz", + "integrity": "sha512-n0ISBuvkZHoOpAzuAZql1TU9VLHUE9e/a9g4VNOPHewjMzpN02VqeGKvJfOCKtzkCs6gVssIlILm2/SXxkIFxQ==", + "peer": true, + "dependencies": { + "@angular-devkit/core": "14.2.13", + "rxjs": "6.6.7" + }, + "engines": { + "node": "^14.15.0 || >=16.10.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" + } + }, + "node_modules/@angular-devkit/build-angular/node_modules/rxjs": { + "version": "6.6.7", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", + "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", + "peer": true, + "dependencies": { + "tslib": "^1.9.0" + }, + "engines": { + "npm": ">=2.0.0" + } + }, + "node_modules/@angular-devkit/build-angular/node_modules/rxjs/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "peer": true + }, + "node_modules/@angular-devkit/build-angular/node_modules/tslib": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz", + "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==", + "peer": true + }, + "node_modules/@angular-devkit/build-webpack": { + "version": "0.1402.13", + "resolved": "https://registry.npmjs.org/@angular-devkit/build-webpack/-/build-webpack-0.1402.13.tgz", + "integrity": "sha512-K27aJmuw86ZOdiu5PoGeGDJ2v7g2ZCK0bGwc8jzkjTLRfvd4FRKIIZumGv3hbQ3vQRLikiU6WMDRTFyCZky/EA==", + "peer": true, + "dependencies": { + "@angular-devkit/architect": "0.1402.13", + "rxjs": "6.6.7" + }, + "engines": { + "node": "^14.15.0 || >=16.10.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" + }, + "peerDependencies": { + "webpack": "^5.30.0", + "webpack-dev-server": "^4.0.0" + } + }, + "node_modules/@angular-devkit/build-webpack/node_modules/@angular-devkit/architect": { + "version": "0.1402.13", + "resolved": "https://registry.npmjs.org/@angular-devkit/architect/-/architect-0.1402.13.tgz", + "integrity": "sha512-n0ISBuvkZHoOpAzuAZql1TU9VLHUE9e/a9g4VNOPHewjMzpN02VqeGKvJfOCKtzkCs6gVssIlILm2/SXxkIFxQ==", + "peer": true, + "dependencies": { + "@angular-devkit/core": "14.2.13", + "rxjs": "6.6.7" + }, + "engines": { + "node": "^14.15.0 || >=16.10.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" + } + }, + "node_modules/@angular-devkit/build-webpack/node_modules/rxjs": { + "version": "6.6.7", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", + "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", + "peer": true, + "dependencies": { + "tslib": "^1.9.0" + }, + "engines": { + "npm": ">=2.0.0" + } + }, + "node_modules/@angular-devkit/build-webpack/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "peer": true + }, + "node_modules/@angular-devkit/core": { + "version": "14.2.13", + "resolved": "https://registry.npmjs.org/@angular-devkit/core/-/core-14.2.13.tgz", + "integrity": "sha512-aIefeZcbjghQg/V6U9CTLtyB5fXDJ63KwYqVYkWP+i0XriS5A9puFgq2u/OVsWxAfYvqpDqp5AdQ0g0bi3CAsA==", + "peer": true, + "dependencies": { + "ajv": "8.11.0", + "ajv-formats": "2.1.1", + "jsonc-parser": "3.1.0", + "rxjs": "6.6.7", + "source-map": "0.7.4" + }, + "engines": { + "node": "^14.15.0 || >=16.10.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" + }, + "peerDependencies": { + "chokidar": "^3.5.2" + }, + "peerDependenciesMeta": { + "chokidar": { + "optional": true + } + } + }, + "node_modules/@angular-devkit/core/node_modules/rxjs": { + "version": "6.6.7", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", + "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", + "peer": true, + "dependencies": { + "tslib": "^1.9.0" + }, + "engines": { + "npm": ">=2.0.0" + } + }, + "node_modules/@angular-devkit/core/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "peer": true + }, + "node_modules/@angular-devkit/schematics": { + "version": "14.2.0", + "resolved": "https://registry.npmjs.org/@angular-devkit/schematics/-/schematics-14.2.0.tgz", + "integrity": "sha512-5H78HBAYshCKSYsjIr4K33TkS6CMB7IZpZunisSDiX23fHa1IvIkDrpbXlfMvZykHbcmKA/nt2wHMIsQl0YNuw==", + "peer": true, + "dependencies": { + "@angular-devkit/core": "14.2.0", + "jsonc-parser": "3.1.0", + "magic-string": "0.26.2", + "ora": "5.4.1", + "rxjs": "6.6.7" + }, + "engines": { + "node": "^14.15.0 || >=16.10.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" + } + }, + "node_modules/@angular-devkit/schematics/node_modules/@angular-devkit/core": { + "version": "14.2.0", + "resolved": "https://registry.npmjs.org/@angular-devkit/core/-/core-14.2.0.tgz", + "integrity": "sha512-IwiS6uDs3drR4i3nuqVinh5jtI1SHIyn/OaoWL6t3V7Y6b65BdJN1liyd+WBUEZmEwGCkY2/FjnLx1G8Dflc8A==", + "peer": true, + "dependencies": { + "ajv": "8.11.0", + "ajv-formats": "2.1.1", + "jsonc-parser": "3.1.0", + "rxjs": "6.6.7", + "source-map": "0.7.4" + }, + "engines": { + "node": "^14.15.0 || >=16.10.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" + }, + "peerDependencies": { + "chokidar": "^3.5.2" + }, + "peerDependenciesMeta": { + "chokidar": { + "optional": true + } + } + }, + "node_modules/@angular-devkit/schematics/node_modules/rxjs": { + "version": "6.6.7", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", + "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", + "peer": true, + "dependencies": { + "tslib": "^1.9.0" + }, + "engines": { + "npm": ">=2.0.0" + } + }, + "node_modules/@angular-devkit/schematics/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "peer": true + }, + "node_modules/@angular/animations": { + "version": "14.3.0", + "resolved": "https://registry.npmjs.org/@angular/animations/-/animations-14.3.0.tgz", + "integrity": "sha512-QoBcIKy1ZiU+4qJsAh5Ls20BupWiXiZzKb0s6L9/dntPt5Msr4Ao289XR2P6O1L+kTsCprH9Kt41zyGQ/bkRqg==", + "peer": true, + "dependencies": { + "tslib": "^2.3.0" + }, + "engines": { + "node": "^14.15.0 || >=16.10.0" + }, + "peerDependencies": { + "@angular/core": "14.3.0" + } + }, + "node_modules/@angular/cdk": { + "version": "14.2.7", + "resolved": "https://registry.npmjs.org/@angular/cdk/-/cdk-14.2.7.tgz", + "integrity": "sha512-/tEsYaUbDSnfEmKVvAMramIptmhI67O+9STjOV0i+74XR2NospeK0fkbywIANu1n3w6AHGMotvRWJrjmbCElFg==", + "peer": true, + "dependencies": { + "tslib": "^2.3.0" + }, + "optionalDependencies": { + "parse5": "^5.0.0" + }, + "peerDependencies": { + "@angular/common": "^14.0.0 || ^15.0.0", + "@angular/core": "^14.0.0 || ^15.0.0", + "rxjs": "^6.5.3 || ^7.4.0" + } + }, + "node_modules/@angular/common": { + "version": "14.3.0", + "resolved": "https://registry.npmjs.org/@angular/common/-/common-14.3.0.tgz", + "integrity": "sha512-pV9oyG3JhGWeQ+TFB0Qub6a1VZWMNZ6/7zEopvYivdqa5yDLLDSBRWb6P80RuONXyGnM1pa7l5nYopX+r/23GQ==", + "peer": true, + "dependencies": { + "tslib": "^2.3.0" + }, + "engines": { + "node": "^14.15.0 || >=16.10.0" + }, + "peerDependencies": { + "@angular/core": "14.3.0", + "rxjs": "^6.5.3 || ^7.4.0" + } + }, + "node_modules/@angular/compiler": { + "version": "14.3.0", + "resolved": "https://registry.npmjs.org/@angular/compiler/-/compiler-14.3.0.tgz", + "integrity": "sha512-E15Rh0t3vA+bctbKnBCaDmLvc3ix+ZBt6yFZmhZalReQ+KpOlvOJv+L9oiFEgg+rYVl2QdvN7US1fvT0PqswLw==", + "peer": true, + "dependencies": { + "tslib": "^2.3.0" + }, + "engines": { + "node": "^14.15.0 || >=16.10.0" + }, + "peerDependencies": { + "@angular/core": "14.3.0" + }, + "peerDependenciesMeta": { + "@angular/core": { + "optional": true + } + } + }, + "node_modules/@angular/compiler-cli": { + "version": "14.3.0", + "resolved": "https://registry.npmjs.org/@angular/compiler-cli/-/compiler-cli-14.3.0.tgz", + "integrity": "sha512-eoKpKdQ2X6axMgzcPUMZVYl3bIlTMzMeTo5V29No4BzgiUB+QoOTYGNJZkGRyqTNpwD9uSBJvmT2vG9+eC4ghQ==", + "peer": true, + "dependencies": { + "@babel/core": "^7.17.2", + "chokidar": "^3.0.0", + "convert-source-map": "^1.5.1", + "dependency-graph": "^0.11.0", + "magic-string": "^0.26.0", + "reflect-metadata": "^0.1.2", + "semver": "^7.0.0", + "sourcemap-codec": "^1.4.8", + "tslib": "^2.3.0", + "yargs": "^17.2.1" + }, + "bin": { + "ng-xi18n": "bundles/src/bin/ng_xi18n.js", + "ngc": "bundles/src/bin/ngc.js", + "ngcc": "bundles/ngcc/main-ngcc.js" + }, + "engines": { + "node": "^14.15.0 || >=16.10.0" + }, + "peerDependencies": { + "@angular/compiler": "14.3.0", + "typescript": ">=4.6.2 <4.9" + } + }, + "node_modules/@angular/core": { + "version": "14.3.0", + "resolved": "https://registry.npmjs.org/@angular/core/-/core-14.3.0.tgz", + "integrity": "sha512-wYiwItc0Uyn4FWZ/OAx/Ubp2/WrD3EgUJ476y1XI7yATGPF8n9Ld5iCXT08HOvc4eBcYlDfh90kTXR6/MfhzdQ==", + "peer": true, + "dependencies": { + "tslib": "^2.3.0" + }, + "engines": { + "node": "^14.15.0 || >=16.10.0" + }, + "peerDependencies": { + "rxjs": "^6.5.3 || ^7.4.0", + "zone.js": "~0.11.4 || ~0.12.0" + } + }, + "node_modules/@angular/forms": { + "version": "14.3.0", + "resolved": "https://registry.npmjs.org/@angular/forms/-/forms-14.3.0.tgz", + "integrity": "sha512-fBZZC2UFMom2AZPjGQzROPXFWO6kvCsPDKctjJwClVC8PuMrkm+RRyiYRdBbt2qxWHEqOZM2OCQo73xUyZOYHw==", + "peer": true, + "dependencies": { + "tslib": "^2.3.0" + }, + "engines": { + "node": "^14.15.0 || >=16.10.0" + }, + "peerDependencies": { + "@angular/common": "14.3.0", + "@angular/core": "14.3.0", + "@angular/platform-browser": "14.3.0", + "rxjs": "^6.5.3 || ^7.4.0" + } + }, + "node_modules/@angular/material": { + "version": "14.2.7", + "resolved": "https://registry.npmjs.org/@angular/material/-/material-14.2.7.tgz", + "integrity": "sha512-WXHh8pEStpgkXZJmYOg2cI8BSHkV82ET4XTJCNPdveumaCn1UYnaNzsXD13kw5z+zmy8CufhFEzdXTrv/yt7KQ==", + "peer": true, + "dependencies": { + "tslib": "^2.3.0" + }, + "peerDependencies": { + "@angular/animations": "^14.0.0 || ^15.0.0", + "@angular/cdk": "14.2.7", + "@angular/common": "^14.0.0 || ^15.0.0", + "@angular/core": "^14.0.0 || ^15.0.0", + "@angular/forms": "^14.0.0 || ^15.0.0", + "@angular/platform-browser": "^14.0.0 || ^15.0.0", + "rxjs": "^6.5.3 || ^7.4.0" + } + }, + "node_modules/@angular/platform-browser": { + "version": "14.3.0", + "resolved": "https://registry.npmjs.org/@angular/platform-browser/-/platform-browser-14.3.0.tgz", + "integrity": "sha512-w9Y3740UmTz44T0Egvc+4QV9sEbO61L+aRHbpkLTJdlEGzHByZvxJmJyBYmdqeyTPwc/Zpy7c02frlpfAlyB7A==", + "peer": true, + "dependencies": { + "tslib": "^2.3.0" + }, + "engines": { + "node": "^14.15.0 || >=16.10.0" + }, + "peerDependencies": { + "@angular/animations": "14.3.0", + "@angular/common": "14.3.0", + "@angular/core": "14.3.0" + }, + "peerDependenciesMeta": { + "@angular/animations": { + "optional": true + } + } + }, + "node_modules/@assemblyscript/loader": { + "version": "0.10.1", + "resolved": "https://registry.npmjs.org/@assemblyscript/loader/-/loader-0.10.1.tgz", + "integrity": "sha512-H71nDOOL8Y7kWRLqf6Sums+01Q5msqBW2KhDUTemh1tvY04eSkSXrK0uj/4mmY0Xr16/3zyZmsrxN7CKuRbNRg==", + "peer": true + }, + "node_modules/@babel/code-frame": { + "version": "7.26.2", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.26.2.tgz", + "integrity": "sha512-RJlIHRueQgwWitWgF8OdFYGZX328Ax5BCemNGlqHfplnRT9ESi8JkFlvaVYbS+UubVY6dpv87Fs2u5M29iNFVQ==", + "peer": true, + "dependencies": { + "@babel/helper-validator-identifier": "^7.25.9", + "js-tokens": "^4.0.0", + "picocolors": "^1.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/compat-data": { + "version": "7.26.8", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.26.8.tgz", + "integrity": "sha512-oH5UPLMWR3L2wEFLnFJ1TZXqHufiTKAiLfqw5zkhS4dKXLJ10yVztfil/twG8EDTA4F/tvVNw9nOl4ZMslB8rQ==", + "peer": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/core": { + "version": "7.18.10", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.18.10.tgz", + "integrity": "sha512-JQM6k6ENcBFKVtWvLavlvi/mPcpYZ3+R+2EySDEMSMbp7Mn4FexlbbJVrx2R7Ijhr01T8gyqrOaABWIOgxeUyw==", + "peer": true, + "dependencies": { + "@ampproject/remapping": "^2.1.0", + "@babel/code-frame": "^7.18.6", + "@babel/generator": "^7.18.10", + "@babel/helper-compilation-targets": "^7.18.9", + "@babel/helper-module-transforms": "^7.18.9", + "@babel/helpers": "^7.18.9", + "@babel/parser": "^7.18.10", + "@babel/template": "^7.18.10", + "@babel/traverse": "^7.18.10", + "@babel/types": "^7.18.10", + "convert-source-map": "^1.7.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.2", + "json5": "^2.2.1", + "semver": "^6.3.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/babel" + } + }, + "node_modules/@babel/core/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "peer": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@babel/generator": { + "version": "7.18.12", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.18.12.tgz", + "integrity": "sha512-dfQ8ebCN98SvyL7IxNMCUtZQSq5R7kxgN+r8qYTGDmmSion1hX2C0zq2yo1bsCDhXixokv1SAWTZUMYbO/V5zg==", + "peer": true, + "dependencies": { + "@babel/types": "^7.18.10", + "@jridgewell/gen-mapping": "^0.3.2", + "jsesc": "^2.5.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/generator/node_modules/@jridgewell/gen-mapping": { + "version": "0.3.8", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.8.tgz", + "integrity": "sha512-imAbBGkb+ebQyxKgzv5Hu2nmROxoDOXHh80evxdoXNOrvAnVx7zimzc1Oo5h9RlfV4vPXaE2iM5pOFbvOCClWA==", + "peer": true, + "dependencies": { + "@jridgewell/set-array": "^1.2.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.24" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/helper-annotate-as-pure": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.18.6.tgz", + "integrity": "sha512-duORpUiYrEpzKIop6iNbjnwKLAKnJ47csTyRACyEmWj0QdUrm5aqNJGHSSEQSUAvNW0ojX0dOmK9dZduvkfeXA==", + "peer": true, + "dependencies": { + "@babel/types": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-compilation-targets": { + "version": "7.27.0", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.27.0.tgz", + "integrity": "sha512-LVk7fbXml0H2xH34dFzKQ7TDZ2G4/rVTOrq9V+icbbadjbVxxeFeDsNHv2SrZeWoA+6ZiTyWYWtScEIW07EAcA==", + "peer": true, + "dependencies": { + "@babel/compat-data": "^7.26.8", + "@babel/helper-validator-option": "^7.25.9", + "browserslist": "^4.24.0", + "lru-cache": "^5.1.1", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-compilation-targets/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "peer": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@babel/helper-create-class-features-plugin": { + "version": "7.27.0", + "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.27.0.tgz", + "integrity": "sha512-vSGCvMecvFCd/BdpGlhpXYNhhC4ccxyvQWpbGL4CWbvfEoLFWUZuSuf7s9Aw70flgQF+6vptvgK2IfOnKlRmBg==", + "peer": true, + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.25.9", + "@babel/helper-member-expression-to-functions": "^7.25.9", + "@babel/helper-optimise-call-expression": "^7.25.9", + "@babel/helper-replace-supers": "^7.26.5", + "@babel/helper-skip-transparent-expression-wrappers": "^7.25.9", + "@babel/traverse": "^7.27.0", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-create-class-features-plugin/node_modules/@babel/helper-annotate-as-pure": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.25.9.tgz", + "integrity": "sha512-gv7320KBUFJz1RnylIg5WWYPRXKZ884AGkYpgpWW02TH66Dl+HaC1t1CKd0z3R4b6hdYEcmrNZHUmfCP+1u3/g==", + "peer": true, + "dependencies": { + "@babel/types": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-create-class-features-plugin/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "peer": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@babel/helper-create-regexp-features-plugin": { + "version": "7.27.0", + "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.27.0.tgz", + "integrity": "sha512-fO8l08T76v48BhpNRW/nQ0MxfnSdoSKUJBMjubOAYffsVuGG5qOfMq7N6Es7UJvi7Y8goXXo07EfcHZXDPuELQ==", + "peer": true, + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.25.9", + "regexpu-core": "^6.2.0", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-create-regexp-features-plugin/node_modules/@babel/helper-annotate-as-pure": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.25.9.tgz", + "integrity": "sha512-gv7320KBUFJz1RnylIg5WWYPRXKZ884AGkYpgpWW02TH66Dl+HaC1t1CKd0z3R4b6hdYEcmrNZHUmfCP+1u3/g==", + "peer": true, + "dependencies": { + "@babel/types": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-create-regexp-features-plugin/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "peer": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@babel/helper-define-polyfill-provider": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.3.3.tgz", + "integrity": "sha512-z5aQKU4IzbqCC1XH0nAqfsFLMVSo22SBKUc0BxGrLkolTdPTructy0ToNnlO2zA4j9Q/7pjMZf0DSY+DSTYzww==", + "peer": true, + "dependencies": { + "@babel/helper-compilation-targets": "^7.17.7", + "@babel/helper-plugin-utils": "^7.16.7", + "debug": "^4.1.1", + "lodash.debounce": "^4.0.8", + "resolve": "^1.14.2", + "semver": "^6.1.2" + }, + "peerDependencies": { + "@babel/core": "^7.4.0-0" + } + }, + "node_modules/@babel/helper-define-polyfill-provider/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "peer": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@babel/helper-environment-visitor": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.24.7.tgz", + "integrity": "sha512-DoiN84+4Gnd0ncbBOM9AZENV4a5ZiL39HYMyZJGZ/AZEykHYdJw0wW3kdcsh9/Kn+BRXHLkkklZ51ecPKmI1CQ==", + "peer": true, + "dependencies": { + "@babel/types": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-member-expression-to-functions": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.25.9.tgz", + "integrity": "sha512-wbfdZ9w5vk0C0oyHqAJbc62+vet5prjj01jjJ8sKn3j9h3MQQlflEdXYvuqRWjHnM12coDEqiC1IRCi0U/EKwQ==", + "peer": true, + "dependencies": { + "@babel/traverse": "^7.25.9", + "@babel/types": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-imports": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.25.9.tgz", + "integrity": "sha512-tnUA4RsrmflIM6W6RFTLFSXITtl0wKjgpnLgXyowocVPrbYrLUXSBXDgTs8BlbmIzIdlBySRQjINYs2BAkiLtw==", + "peer": true, + "dependencies": { + "@babel/traverse": "^7.25.9", + "@babel/types": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-transforms": { + "version": "7.26.0", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.26.0.tgz", + "integrity": "sha512-xO+xu6B5K2czEnQye6BHA7DolFFmS3LB7stHZFaOLb1pAwO1HWLS8fXA+eh0A2yIvltPVmx3eNNDBJA2SLHXFw==", + "peer": true, + "dependencies": { + "@babel/helper-module-imports": "^7.25.9", + "@babel/helper-validator-identifier": "^7.25.9", + "@babel/traverse": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-optimise-call-expression": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.25.9.tgz", + "integrity": "sha512-FIpuNaz5ow8VyrYcnXQTDRGvV6tTjkNtCK/RYNDXGSLlUD6cBuQTSw43CShGxjvfBTfcUA/r6UhUCbtYqkhcuQ==", + "peer": true, + "dependencies": { + "@babel/types": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-plugin-utils": { + "version": "7.26.5", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.26.5.tgz", + "integrity": "sha512-RS+jZcRdZdRFzMyr+wcsaqOmld1/EqTghfaBGQQd/WnRdzdlvSZ//kF7U8VQTxf1ynZ4cjUcYgjVGx13ewNPMg==", + "peer": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-remap-async-to-generator": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.25.9.tgz", + "integrity": "sha512-IZtukuUeBbhgOcaW2s06OXTzVNJR0ybm4W5xC1opWFFJMZbwRj5LCk+ByYH7WdZPZTt8KnFwA8pvjN2yqcPlgw==", + "peer": true, + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.25.9", + "@babel/helper-wrap-function": "^7.25.9", + "@babel/traverse": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-remap-async-to-generator/node_modules/@babel/helper-annotate-as-pure": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.25.9.tgz", + "integrity": "sha512-gv7320KBUFJz1RnylIg5WWYPRXKZ884AGkYpgpWW02TH66Dl+HaC1t1CKd0z3R4b6hdYEcmrNZHUmfCP+1u3/g==", + "peer": true, + "dependencies": { + "@babel/types": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-replace-supers": { + "version": "7.26.5", + "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.26.5.tgz", + "integrity": "sha512-bJ6iIVdYX1YooY2X7w1q6VITt+LnUILtNk7zT78ykuwStx8BauCzxvFqFaHjOpW1bVnSUM1PN1f0p5P21wHxvg==", + "peer": true, + "dependencies": { + "@babel/helper-member-expression-to-functions": "^7.25.9", + "@babel/helper-optimise-call-expression": "^7.25.9", + "@babel/traverse": "^7.26.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-skip-transparent-expression-wrappers": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.25.9.tgz", + "integrity": "sha512-K4Du3BFa3gvyhzgPcntrkDgZzQaq6uozzcpGbOO1OEJaI+EJdqWIMTLgFgQf6lrfiDFo5FU+BxKepI9RmZqahA==", + "peer": true, + "dependencies": { + "@babel/traverse": "^7.25.9", + "@babel/types": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-string-parser": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.25.9.tgz", + "integrity": "sha512-4A/SCr/2KLd5jrtOMFzaKjVtAei3+2r/NChoBNoZ3EyP/+GlhoaEGoWOZUmFmoITP7zOJyHIMm+DYRd8o3PvHA==", + "peer": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-identifier": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.25.9.tgz", + "integrity": "sha512-Ed61U6XJc3CVRfkERJWDz4dJwKe7iLmmJsbOGu9wSloNSFttHV0I8g6UAgb7qnK5ly5bGLPd4oXZlxCdANBOWQ==", + "peer": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-option": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.25.9.tgz", + "integrity": "sha512-e/zv1co8pp55dNdEcCynfj9X7nyUKUXoUEwfXqaZt0omVOmDe9oOTdKStH4GmAw6zxMFs50ZayuMfHDKlO7Tfw==", + "peer": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-wrap-function": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.25.9.tgz", + "integrity": "sha512-ETzz9UTjQSTmw39GboatdymDq4XIQbR8ySgVrylRhPOFpsd+JrKHIuF0de7GCWmem+T4uC5z7EZguod7Wj4A4g==", + "peer": true, + "dependencies": { + "@babel/template": "^7.25.9", + "@babel/traverse": "^7.25.9", + "@babel/types": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-wrap-function/node_modules/@babel/template": { + "version": "7.27.0", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.27.0.tgz", + "integrity": "sha512-2ncevenBqXI6qRMukPlXwHKHchC7RyMuu4xv5JBXRfOGVcTy1mXCD12qrp7Jsoxll1EV3+9sE4GugBVRjT2jFA==", + "peer": true, + "dependencies": { + "@babel/code-frame": "^7.26.2", + "@babel/parser": "^7.27.0", + "@babel/types": "^7.27.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helpers": { + "version": "7.27.0", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.27.0.tgz", + "integrity": "sha512-U5eyP/CTFPuNE3qk+WZMxFkp/4zUzdceQlfzf7DdGdhp+Fezd7HD+i8Y24ZuTMKX3wQBld449jijbGq6OdGNQg==", + "peer": true, + "dependencies": { + "@babel/template": "^7.27.0", + "@babel/types": "^7.27.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helpers/node_modules/@babel/template": { + "version": "7.27.0", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.27.0.tgz", + "integrity": "sha512-2ncevenBqXI6qRMukPlXwHKHchC7RyMuu4xv5JBXRfOGVcTy1mXCD12qrp7Jsoxll1EV3+9sE4GugBVRjT2jFA==", + "peer": true, + "dependencies": { + "@babel/code-frame": "^7.26.2", + "@babel/parser": "^7.27.0", + "@babel/types": "^7.27.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/parser": { + "version": "7.27.0", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.27.0.tgz", + "integrity": "sha512-iaepho73/2Pz7w2eMS0Q5f83+0RKI7i4xmiYeBmDzfRVbQtTOG7Ts0S4HzJVsTMGI9keU8rNfuZr8DKfSt7Yyg==", + "peer": true, + "dependencies": { + "@babel/types": "^7.27.0" + }, + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.25.9.tgz", + "integrity": "sha512-2qUwwfAFpJLZqxd02YW9btUCZHl+RFvdDkNfZwaIJrvB8Tesjsk8pEQkTvGwZXLqXUx/2oyY3ySRhm6HOXuCug==", + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.25.9.tgz", + "integrity": "sha512-6xWgLZTJXwilVjlnV7ospI3xi+sl8lN8rXXbBD6vYn3UYDlGsag8wrZkKcSI8G6KgqKP7vNFaDgeDnfAABq61g==", + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.25.9", + "@babel/helper-skip-transparent-expression-wrappers": "^7.25.9", + "@babel/plugin-transform-optional-chaining": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.13.0" + } + }, + "node_modules/@babel/plugin-proposal-async-generator-functions": { + "version": "7.18.10", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.18.10.tgz", + "integrity": "sha512-1mFuY2TOsR1hxbjCo4QL+qlIjV07p4H4EUYw2J/WCqsvFV6V9X9z9YhXbWndc/4fw+hYGlDT7egYxliMp5O6Ew==", + "deprecated": "This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-async-generator-functions instead.", + "peer": true, + "dependencies": { + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-plugin-utils": "^7.18.9", + "@babel/helper-remap-async-to-generator": "^7.18.9", + "@babel/plugin-syntax-async-generators": "^7.8.4" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-class-properties": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.18.6.tgz", + "integrity": "sha512-cumfXOF0+nzZrrN8Rf0t7M+tF6sZc7vhQwYQck9q1/5w2OExlD+b4v4RpMJFaV1Z7WcDRgO6FqvxqxGlwo+RHQ==", + "deprecated": "This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-class-properties instead.", + "peer": true, + "dependencies": { + "@babel/helper-create-class-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-class-static-block": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-static-block/-/plugin-proposal-class-static-block-7.21.0.tgz", + "integrity": "sha512-XP5G9MWNUskFuP30IfFSEFB0Z6HzLIUcjYM4bYOPHXl7eiJ9HFv8tWj6TXTN5QODiEhDZAeI4hLok2iHFFV4hw==", + "deprecated": "This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-class-static-block instead.", + "peer": true, + "dependencies": { + "@babel/helper-create-class-features-plugin": "^7.21.0", + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/plugin-syntax-class-static-block": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.12.0" + } + }, + "node_modules/@babel/plugin-proposal-dynamic-import": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.18.6.tgz", + "integrity": "sha512-1auuwmK+Rz13SJj36R+jqFPMJWyKEDd7lLSdOj4oJK0UTgGueSAtkrCvz9ewmgyU/P941Rv2fQwZJN8s6QruXw==", + "deprecated": "This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-dynamic-import instead.", + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.6", + "@babel/plugin-syntax-dynamic-import": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-export-namespace-from": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-export-namespace-from/-/plugin-proposal-export-namespace-from-7.18.9.tgz", + "integrity": "sha512-k1NtHyOMvlDDFeb9G5PhUXuGj8m/wiwojgQVEhJ/fsVsMCpLyOP4h0uGEjYJKrRI+EVPlb5Jk+Gt9P97lOGwtA==", + "deprecated": "This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-export-namespace-from instead.", + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.9", + "@babel/plugin-syntax-export-namespace-from": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-json-strings": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.18.6.tgz", + "integrity": "sha512-lr1peyn9kOdbYc0xr0OdHTZ5FMqS6Di+H0Fz2I/JwMzGmzJETNeOFq2pBySw6X/KFL5EWDjlJuMsUGRFb8fQgQ==", + "deprecated": "This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-json-strings instead.", + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.6", + "@babel/plugin-syntax-json-strings": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-logical-assignment-operators": { + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-logical-assignment-operators/-/plugin-proposal-logical-assignment-operators-7.20.7.tgz", + "integrity": "sha512-y7C7cZgpMIjWlKE5T7eJwp+tnRYM89HmRvWM5EQuB5BoHEONjmQ8lSNmBUwOyy/GFRsohJED51YBF79hE1djug==", + "deprecated": "This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-logical-assignment-operators instead.", + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-nullish-coalescing-operator": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.18.6.tgz", + "integrity": "sha512-wQxQzxYeJqHcfppzBDnm1yAY0jSRkUXR2z8RePZYrKwMKgMlE8+Z6LUno+bd6LvbGh8Gltvy74+9pIYkr+XkKA==", + "deprecated": "This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-nullish-coalescing-operator instead.", + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.6", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-numeric-separator": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.18.6.tgz", + "integrity": "sha512-ozlZFogPqoLm8WBr5Z8UckIoE4YQ5KESVcNudyXOR8uqIkliTEgJ3RoketfG6pmzLdeZF0H/wjE9/cCEitBl7Q==", + "deprecated": "This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-numeric-separator instead.", + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.6", + "@babel/plugin-syntax-numeric-separator": "^7.10.4" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-object-rest-spread": { + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.20.7.tgz", + "integrity": "sha512-d2S98yCiLxDVmBmE8UjGcfPvNEUbA1U5q5WxaWFUGRzJSVAZqm5W6MbPct0jxnegUZ0niLeNX+IOzEs7wYg9Dg==", + "deprecated": "This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-object-rest-spread instead.", + "peer": true, + "dependencies": { + "@babel/compat-data": "^7.20.5", + "@babel/helper-compilation-targets": "^7.20.7", + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/plugin-syntax-object-rest-spread": "^7.8.3", + "@babel/plugin-transform-parameters": "^7.20.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-optional-catch-binding": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.18.6.tgz", + "integrity": "sha512-Q40HEhs9DJQyaZfUjjn6vE8Cv4GmMHCYuMGIWUnlxH6400VGxOuwWsPt4FxXxJkC/5eOzgn0z21M9gMT4MOhbw==", + "deprecated": "This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-optional-catch-binding instead.", + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.6", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-optional-chaining": { + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.21.0.tgz", + "integrity": "sha512-p4zeefM72gpmEe2fkUr/OnOXpWEf8nAgk7ZYVqqfFiyIG7oFfVZcCrU64hWn5xp4tQ9LkV4bTIa5rD0KANpKNA==", + "deprecated": "This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-optional-chaining instead.", + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/helper-skip-transparent-expression-wrappers": "^7.20.0", + "@babel/plugin-syntax-optional-chaining": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-private-methods": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-methods/-/plugin-proposal-private-methods-7.18.6.tgz", + "integrity": "sha512-nutsvktDItsNn4rpGItSNV2sz1XwS+nfU0Rg8aCx3W3NOKVzdMjJRu0O5OkgDp3ZGICSTbgRpxZoWsxoKRvbeA==", + "deprecated": "This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-private-methods instead.", + "peer": true, + "dependencies": { + "@babel/helper-create-class-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-private-property-in-object": { + "version": "7.21.11", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.21.11.tgz", + "integrity": "sha512-0QZ8qP/3RLDVBwBFoWAwCtgcDZJVwA5LUJRZU8x2YFfKNuFq161wK3cuGrALu5yiPu+vzwTAg/sMWVNeWeNyaw==", + "deprecated": "This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-private-property-in-object instead.", + "peer": true, + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.18.6", + "@babel/helper-create-class-features-plugin": "^7.21.0", + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/plugin-syntax-private-property-in-object": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-unicode-property-regex": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.18.6.tgz", + "integrity": "sha512-2BShG/d5yoZyXZfVePH91urL5wTG6ASZU9M4o03lKK8u8UW1y08OMttBSOADTcJrnPMpvDXRG3G8fyLh4ovs8w==", + "deprecated": "This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-unicode-property-regex instead.", + "peer": true, + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-async-generators": { + "version": "7.8.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz", + "integrity": "sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==", + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-class-properties": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz", + "integrity": "sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==", + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.12.13" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-class-static-block": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-static-block/-/plugin-syntax-class-static-block-7.14.5.tgz", + "integrity": "sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw==", + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-dynamic-import": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz", + "integrity": "sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==", + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-export-namespace-from": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-export-namespace-from/-/plugin-syntax-export-namespace-from-7.8.3.tgz", + "integrity": "sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q==", + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.3" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-import-assertions": { + "version": "7.26.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.26.0.tgz", + "integrity": "sha512-QCWT5Hh830hK5EQa7XzuqIkQU9tT/whqbDz7kuaZMHFl1inRRg7JnuAEOQ0Ur0QUl0NufCk1msK2BeY79Aj/eg==", + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-json-strings": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz", + "integrity": "sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==", + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-logical-assignment-operators": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz", + "integrity": "sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==", + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-nullish-coalescing-operator": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz", + "integrity": "sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==", + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-numeric-separator": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz", + "integrity": "sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==", + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-object-rest-spread": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz", + "integrity": "sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==", + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-optional-catch-binding": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz", + "integrity": "sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==", + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-optional-chaining": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz", + "integrity": "sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==", + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-private-property-in-object": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-private-property-in-object/-/plugin-syntax-private-property-in-object-7.14.5.tgz", + "integrity": "sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==", + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-top-level-await": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz", + "integrity": "sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==", + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-arrow-functions": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.25.9.tgz", + "integrity": "sha512-6jmooXYIwn9ca5/RylZADJ+EnSxVUS5sjeJ9UPk6RWRzXCmOJCy6dqItPJFpw2cuCangPK4OYr5uhGKcmrm5Qg==", + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-async-to-generator": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.18.6.tgz", + "integrity": "sha512-ARE5wZLKnTgPW7/1ftQmSi1CmkqqHo2DNmtztFhvgtOWSDfq0Cq9/9L+KnZNYSNrydBekhW3rwShduf59RoXag==", + "peer": true, + "dependencies": { + "@babel/helper-module-imports": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6", + "@babel/helper-remap-async-to-generator": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-block-scoped-functions": { + "version": "7.26.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.26.5.tgz", + "integrity": "sha512-chuTSY+hq09+/f5lMj8ZSYgCFpppV2CbYrhNFJ1BFoXpiWPnnAb7R0MqrafCpN8E1+YRrtM1MXZHJdIx8B6rMQ==", + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.26.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-block-scoping": { + "version": "7.27.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.27.0.tgz", + "integrity": "sha512-u1jGphZ8uDI2Pj/HJj6YQ6XQLZCNjOlprjxB5SVz6rq2T6SwAR+CdrWK0CP7F+9rDVMXdB0+r6Am5G5aobOjAQ==", + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.26.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-classes": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.25.9.tgz", + "integrity": "sha512-mD8APIXmseE7oZvZgGABDyM34GUmK45Um2TXiBUt7PnuAxrgoSVf123qUzPxEr/+/BHrRn5NMZCdE2m/1F8DGg==", + "peer": true, + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.25.9", + "@babel/helper-compilation-targets": "^7.25.9", + "@babel/helper-plugin-utils": "^7.25.9", + "@babel/helper-replace-supers": "^7.25.9", + "@babel/traverse": "^7.25.9", + "globals": "^11.1.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-classes/node_modules/@babel/helper-annotate-as-pure": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.25.9.tgz", + "integrity": "sha512-gv7320KBUFJz1RnylIg5WWYPRXKZ884AGkYpgpWW02TH66Dl+HaC1t1CKd0z3R4b6hdYEcmrNZHUmfCP+1u3/g==", + "peer": true, + "dependencies": { + "@babel/types": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/plugin-transform-computed-properties": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.25.9.tgz", + "integrity": "sha512-HnBegGqXZR12xbcTHlJ9HGxw1OniltT26J5YpfruGqtUHlz/xKf/G2ak9e+t0rVqrjXa9WOhvYPz1ERfMj23AA==", + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.25.9", + "@babel/template": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-computed-properties/node_modules/@babel/template": { + "version": "7.27.0", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.27.0.tgz", + "integrity": "sha512-2ncevenBqXI6qRMukPlXwHKHchC7RyMuu4xv5JBXRfOGVcTy1mXCD12qrp7Jsoxll1EV3+9sE4GugBVRjT2jFA==", + "peer": true, + "dependencies": { + "@babel/code-frame": "^7.26.2", + "@babel/parser": "^7.27.0", + "@babel/types": "^7.27.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/plugin-transform-destructuring": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.25.9.tgz", + "integrity": "sha512-WkCGb/3ZxXepmMiX101nnGiU+1CAdut8oHyEOHxkKuS1qKpU2SMXE2uSvfz8PBuLd49V6LEsbtyPhWC7fnkgvQ==", + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-dotall-regex": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.25.9.tgz", + "integrity": "sha512-t7ZQ7g5trIgSRYhI9pIJtRl64KHotutUJsh4Eze5l7olJv+mRSg4/MmbZ0tv1eeqRbdvo/+trvJD/Oc5DmW2cA==", + "peer": true, + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.25.9", + "@babel/helper-plugin-utils": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-duplicate-keys": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.25.9.tgz", + "integrity": "sha512-LZxhJ6dvBb/f3x8xwWIuyiAHy56nrRG3PeYTpBkkzkYRRQ6tJLu68lEF5VIqMUZiAV7a8+Tb78nEoMCMcqjXBw==", + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-exponentiation-operator": { + "version": "7.26.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.26.3.tgz", + "integrity": "sha512-7CAHcQ58z2chuXPWblnn1K6rLDnDWieghSOEmqQsrBenH0P9InCUtOJYD89pvngljmZlJcz3fcmgYsXFNGa1ZQ==", + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-for-of": { + "version": "7.26.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.26.9.tgz", + "integrity": "sha512-Hry8AusVm8LW5BVFgiyUReuoGzPUpdHQQqJY5bZnbbf+ngOHWuCuYFKw/BqaaWlvEUrF91HMhDtEaI1hZzNbLg==", + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.26.5", + "@babel/helper-skip-transparent-expression-wrappers": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-function-name": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.25.9.tgz", + "integrity": "sha512-8lP+Yxjv14Vc5MuWBpJsoUCd3hD6V9DgBon2FVYL4jJgbnVQ9fTgYmonchzZJOVNgzEgbxp4OwAf6xz6M/14XA==", + "peer": true, + "dependencies": { + "@babel/helper-compilation-targets": "^7.25.9", + "@babel/helper-plugin-utils": "^7.25.9", + "@babel/traverse": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-literals": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.25.9.tgz", + "integrity": "sha512-9N7+2lFziW8W9pBl2TzaNht3+pgMIRP74zizeCSrtnSKVdUl8mAjjOP2OOVQAfZ881P2cNjDj1uAMEdeD50nuQ==", + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-member-expression-literals": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.25.9.tgz", + "integrity": "sha512-PYazBVfofCQkkMzh2P6IdIUaCEWni3iYEerAsRWuVd8+jlM1S9S9cz1dF9hIzyoZ8IA3+OwVYIp9v9e+GbgZhA==", + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-modules-amd": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.25.9.tgz", + "integrity": "sha512-g5T11tnI36jVClQlMlt4qKDLlWnG5pP9CSM4GhdRciTNMRgkfpo5cR6b4rGIOYPgRRuFAvwjPQ/Yk+ql4dyhbw==", + "peer": true, + "dependencies": { + "@babel/helper-module-transforms": "^7.25.9", + "@babel/helper-plugin-utils": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-modules-commonjs": { + "version": "7.26.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.26.3.tgz", + "integrity": "sha512-MgR55l4q9KddUDITEzEFYn5ZsGDXMSsU9E+kh7fjRXTIC3RHqfCo8RPRbyReYJh44HQ/yomFkqbOFohXvDCiIQ==", + "peer": true, + "dependencies": { + "@babel/helper-module-transforms": "^7.26.0", + "@babel/helper-plugin-utils": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-modules-systemjs": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.25.9.tgz", + "integrity": "sha512-hyss7iIlH/zLHaehT+xwiymtPOpsiwIIRlCAOwBB04ta5Tt+lNItADdlXw3jAWZ96VJ2jlhl/c+PNIQPKNfvcA==", + "peer": true, + "dependencies": { + "@babel/helper-module-transforms": "^7.25.9", + "@babel/helper-plugin-utils": "^7.25.9", + "@babel/helper-validator-identifier": "^7.25.9", + "@babel/traverse": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-modules-umd": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.25.9.tgz", + "integrity": "sha512-bS9MVObUgE7ww36HEfwe6g9WakQ0KF07mQF74uuXdkoziUPfKyu/nIm663kz//e5O1nPInPFx36z7WJmJ4yNEw==", + "peer": true, + "dependencies": { + "@babel/helper-module-transforms": "^7.25.9", + "@babel/helper-plugin-utils": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-named-capturing-groups-regex": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.25.9.tgz", + "integrity": "sha512-oqB6WHdKTGl3q/ItQhpLSnWWOpjUJLsOCLVyeFgeTktkBSCiurvPOsyt93gibI9CmuKvTUEtWmG5VhZD+5T/KA==", + "peer": true, + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.25.9", + "@babel/helper-plugin-utils": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/plugin-transform-new-target": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.25.9.tgz", + "integrity": "sha512-U/3p8X1yCSoKyUj2eOBIx3FOn6pElFOKvAAGf8HTtItuPyB+ZeOqfn+mvTtg9ZlOAjsPdK3ayQEjqHjU/yLeVQ==", + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-object-super": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.25.9.tgz", + "integrity": "sha512-Kj/Gh+Rw2RNLbCK1VAWj2U48yxxqL2x0k10nPtSdRa0O2xnHXalD0s+o1A6a0W43gJ00ANo38jxkQreckOzv5A==", + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.25.9", + "@babel/helper-replace-supers": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-optional-chaining": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-optional-chaining/-/plugin-transform-optional-chaining-7.25.9.tgz", + "integrity": "sha512-6AvV0FsLULbpnXeBjrY4dmWF8F7gf8QnvTEoO/wX/5xm/xE1Xo8oPuD3MPS+KS9f9XBEAWN7X1aWr4z9HdOr7A==", + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.25.9", + "@babel/helper-skip-transparent-expression-wrappers": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-parameters": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.25.9.tgz", + "integrity": "sha512-wzz6MKwpnshBAiRmn4jR8LYz/g8Ksg0o80XmwZDlordjwEk9SxBzTWC7F5ef1jhbrbOW2DJ5J6ayRukrJmnr0g==", + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-property-literals": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.25.9.tgz", + "integrity": "sha512-IvIUeV5KrS/VPavfSM/Iu+RE6llrHrYIKY1yfCzyO/lMXHQ+p7uGhonmGVisv6tSBSVgWzMBohTcvkC9vQcQFA==", + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-regenerator": { + "version": "7.27.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.27.0.tgz", + "integrity": "sha512-LX/vCajUJQDqE7Aum/ELUMZAY19+cDpghxrnyt5I1tV6X5PyC86AOoWXWFYFeIvauyeSA6/ktn4tQVn/3ZifsA==", + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.26.5", + "regenerator-transform": "^0.15.2" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-reserved-words": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.25.9.tgz", + "integrity": "sha512-7DL7DKYjn5Su++4RXu8puKZm2XBPHyjWLUidaPEkCUBbE7IPcsrkRHggAOOKydH1dASWdcUBxrkOGNxUv5P3Jg==", + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-runtime": { + "version": "7.18.10", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.18.10.tgz", + "integrity": "sha512-q5mMeYAdfEbpBAgzl7tBre/la3LeCxmDO1+wMXRdPWbcoMjR3GiXlCLk7JBZVVye0bqTGNMbt0yYVXX1B1jEWQ==", + "peer": true, + "dependencies": { + "@babel/helper-module-imports": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.9", + "babel-plugin-polyfill-corejs2": "^0.3.2", + "babel-plugin-polyfill-corejs3": "^0.5.3", + "babel-plugin-polyfill-regenerator": "^0.4.0", + "semver": "^6.3.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-runtime/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "peer": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@babel/plugin-transform-shorthand-properties": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.25.9.tgz", + "integrity": "sha512-MUv6t0FhO5qHnS/W8XCbHmiRWOphNufpE1IVxhK5kuN3Td9FT1x4rx4K42s3RYdMXCXpfWkGSbCSd0Z64xA7Ng==", + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-spread": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.25.9.tgz", + "integrity": "sha512-oNknIB0TbURU5pqJFVbOOFspVlrpVwo2H1+HUIsVDvp5VauGGDP1ZEvO8Nn5xyMEs3dakajOxlmkNW7kNgSm6A==", + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.25.9", + "@babel/helper-skip-transparent-expression-wrappers": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-sticky-regex": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.25.9.tgz", + "integrity": "sha512-WqBUSgeVwucYDP9U/xNRQam7xV8W5Zf+6Eo7T2SRVUFlhRiMNFdFz58u0KZmCVVqs2i7SHgpRnAhzRNmKfi2uA==", + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-template-literals": { + "version": "7.26.8", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.26.8.tgz", + "integrity": "sha512-OmGDL5/J0CJPJZTHZbi2XpO0tyT2Ia7fzpW5GURwdtp2X3fMmN8au/ej6peC/T33/+CRiIpA8Krse8hFGVmT5Q==", + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.26.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-typeof-symbol": { + "version": "7.27.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.27.0.tgz", + "integrity": "sha512-+LLkxA9rKJpNoGsbLnAgOCdESl73vwYn+V6b+5wHbrE7OGKVDPHIQvbFSzqE6rwqaCw2RE+zdJrlLkcf8YOA0w==", + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.26.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-unicode-escapes": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.25.9.tgz", + "integrity": "sha512-s5EDrE6bW97LtxOcGj1Khcx5AaXwiMmi4toFWRDP9/y0Woo6pXC+iyPu/KuhKtfSrNFd7jJB+/fkOtZy6aIC6Q==", + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-unicode-regex": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.25.9.tgz", + "integrity": "sha512-yoxstj7Rg9dlNn9UQxzk4fcNivwv4nUYz7fYXBaKxvw/lnmPuOm/ikoELygbYq68Bls3D/D+NBPHiLwZdZZ4HA==", + "peer": true, + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.25.9", + "@babel/helper-plugin-utils": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/preset-env": { + "version": "7.18.10", + "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.18.10.tgz", + "integrity": "sha512-wVxs1yjFdW3Z/XkNfXKoblxoHgbtUF7/l3PvvP4m02Qz9TZ6uZGxRVYjSQeR87oQmHco9zWitW5J82DJ7sCjvA==", + "peer": true, + "dependencies": { + "@babel/compat-data": "^7.18.8", + "@babel/helper-compilation-targets": "^7.18.9", + "@babel/helper-plugin-utils": "^7.18.9", + "@babel/helper-validator-option": "^7.18.6", + "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "^7.18.6", + "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.18.9", + "@babel/plugin-proposal-async-generator-functions": "^7.18.10", + "@babel/plugin-proposal-class-properties": "^7.18.6", + "@babel/plugin-proposal-class-static-block": "^7.18.6", + "@babel/plugin-proposal-dynamic-import": "^7.18.6", + "@babel/plugin-proposal-export-namespace-from": "^7.18.9", + "@babel/plugin-proposal-json-strings": "^7.18.6", + "@babel/plugin-proposal-logical-assignment-operators": "^7.18.9", + "@babel/plugin-proposal-nullish-coalescing-operator": "^7.18.6", + "@babel/plugin-proposal-numeric-separator": "^7.18.6", + "@babel/plugin-proposal-object-rest-spread": "^7.18.9", + "@babel/plugin-proposal-optional-catch-binding": "^7.18.6", + "@babel/plugin-proposal-optional-chaining": "^7.18.9", + "@babel/plugin-proposal-private-methods": "^7.18.6", + "@babel/plugin-proposal-private-property-in-object": "^7.18.6", + "@babel/plugin-proposal-unicode-property-regex": "^7.18.6", + "@babel/plugin-syntax-async-generators": "^7.8.4", + "@babel/plugin-syntax-class-properties": "^7.12.13", + "@babel/plugin-syntax-class-static-block": "^7.14.5", + "@babel/plugin-syntax-dynamic-import": "^7.8.3", + "@babel/plugin-syntax-export-namespace-from": "^7.8.3", + "@babel/plugin-syntax-import-assertions": "^7.18.6", + "@babel/plugin-syntax-json-strings": "^7.8.3", + "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", + "@babel/plugin-syntax-numeric-separator": "^7.10.4", + "@babel/plugin-syntax-object-rest-spread": "^7.8.3", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.3", + "@babel/plugin-syntax-optional-chaining": "^7.8.3", + "@babel/plugin-syntax-private-property-in-object": "^7.14.5", + "@babel/plugin-syntax-top-level-await": "^7.14.5", + "@babel/plugin-transform-arrow-functions": "^7.18.6", + "@babel/plugin-transform-async-to-generator": "^7.18.6", + "@babel/plugin-transform-block-scoped-functions": "^7.18.6", + "@babel/plugin-transform-block-scoping": "^7.18.9", + "@babel/plugin-transform-classes": "^7.18.9", + "@babel/plugin-transform-computed-properties": "^7.18.9", + "@babel/plugin-transform-destructuring": "^7.18.9", + "@babel/plugin-transform-dotall-regex": "^7.18.6", + "@babel/plugin-transform-duplicate-keys": "^7.18.9", + "@babel/plugin-transform-exponentiation-operator": "^7.18.6", + "@babel/plugin-transform-for-of": "^7.18.8", + "@babel/plugin-transform-function-name": "^7.18.9", + "@babel/plugin-transform-literals": "^7.18.9", + "@babel/plugin-transform-member-expression-literals": "^7.18.6", + "@babel/plugin-transform-modules-amd": "^7.18.6", + "@babel/plugin-transform-modules-commonjs": "^7.18.6", + "@babel/plugin-transform-modules-systemjs": "^7.18.9", + "@babel/plugin-transform-modules-umd": "^7.18.6", + "@babel/plugin-transform-named-capturing-groups-regex": "^7.18.6", + "@babel/plugin-transform-new-target": "^7.18.6", + "@babel/plugin-transform-object-super": "^7.18.6", + "@babel/plugin-transform-parameters": "^7.18.8", + "@babel/plugin-transform-property-literals": "^7.18.6", + "@babel/plugin-transform-regenerator": "^7.18.6", + "@babel/plugin-transform-reserved-words": "^7.18.6", + "@babel/plugin-transform-shorthand-properties": "^7.18.6", + "@babel/plugin-transform-spread": "^7.18.9", + "@babel/plugin-transform-sticky-regex": "^7.18.6", + "@babel/plugin-transform-template-literals": "^7.18.9", + "@babel/plugin-transform-typeof-symbol": "^7.18.9", + "@babel/plugin-transform-unicode-escapes": "^7.18.10", + "@babel/plugin-transform-unicode-regex": "^7.18.6", + "@babel/preset-modules": "^0.1.5", + "@babel/types": "^7.18.10", + "babel-plugin-polyfill-corejs2": "^0.3.2", + "babel-plugin-polyfill-corejs3": "^0.5.3", + "babel-plugin-polyfill-regenerator": "^0.4.0", + "core-js-compat": "^3.22.1", + "semver": "^6.3.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/preset-env/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "peer": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@babel/preset-modules": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.6.tgz", + "integrity": "sha512-ID2yj6K/4lKfhuU3+EX4UvNbIt7eACFbHmNUjzA+ep+B5971CknnA/9DEWKbRokfbbtblxxxXFJJrH47UEAMVg==", + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.0.0", + "@babel/plugin-proposal-unicode-property-regex": "^7.4.4", + "@babel/plugin-transform-dotall-regex": "^7.4.4", + "@babel/types": "^7.4.4", + "esutils": "^2.0.2" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0 || ^8.0.0-0 <8.0.0" + } + }, + "node_modules/@babel/runtime": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.18.9.tgz", + "integrity": "sha512-lkqXDcvlFT5rvEjiu6+QYO+1GXrEHRo2LOtS7E4GtX5ESIZOgepqsZBVIj6Pv+a6zqsya9VCgiK1KAK4BvJDAw==", + "peer": true, + "dependencies": { + "regenerator-runtime": "^0.13.4" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/template": { + "version": "7.18.10", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.18.10.tgz", + "integrity": "sha512-TI+rCtooWHr3QJ27kJxfjutghu44DLnasDMwpDqCXVTal9RLp3RSYNh4NdBrRP2cQAoG9A8juOQl6P6oZG4JxA==", + "peer": true, + "dependencies": { + "@babel/code-frame": "^7.18.6", + "@babel/parser": "^7.18.10", + "@babel/types": "^7.18.10" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/traverse": { + "version": "7.27.0", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.27.0.tgz", + "integrity": "sha512-19lYZFzYVQkkHkl4Cy4WrAVcqBkgvV2YM2TU3xG6DIwO7O3ecbDPfW3yM3bjAGcqcQHi+CCtjMR3dIEHxsd6bA==", + "peer": true, + "dependencies": { + "@babel/code-frame": "^7.26.2", + "@babel/generator": "^7.27.0", + "@babel/parser": "^7.27.0", + "@babel/template": "^7.27.0", + "@babel/types": "^7.27.0", + "debug": "^4.3.1", + "globals": "^11.1.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/traverse/node_modules/@babel/generator": { + "version": "7.27.0", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.27.0.tgz", + "integrity": "sha512-VybsKvpiN1gU1sdMZIp7FcqphVVKEwcuj02x73uvcHE0PTihx1nlBcowYWhDwjpoAXRv43+gDzyggGnn1XZhVw==", + "peer": true, + "dependencies": { + "@babel/parser": "^7.27.0", + "@babel/types": "^7.27.0", + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.25", + "jsesc": "^3.0.2" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/traverse/node_modules/@babel/template": { + "version": "7.27.0", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.27.0.tgz", + "integrity": "sha512-2ncevenBqXI6qRMukPlXwHKHchC7RyMuu4xv5JBXRfOGVcTy1mXCD12qrp7Jsoxll1EV3+9sE4GugBVRjT2jFA==", + "peer": true, + "dependencies": { + "@babel/code-frame": "^7.26.2", + "@babel/parser": "^7.27.0", + "@babel/types": "^7.27.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/traverse/node_modules/@jridgewell/gen-mapping": { + "version": "0.3.8", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.8.tgz", + "integrity": "sha512-imAbBGkb+ebQyxKgzv5Hu2nmROxoDOXHh80evxdoXNOrvAnVx7zimzc1Oo5h9RlfV4vPXaE2iM5pOFbvOCClWA==", + "peer": true, + "dependencies": { + "@jridgewell/set-array": "^1.2.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.24" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/traverse/node_modules/jsesc": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-3.1.0.tgz", + "integrity": "sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==", + "peer": true, + "bin": { + "jsesc": "bin/jsesc" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@babel/types": { + "version": "7.27.0", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.27.0.tgz", + "integrity": "sha512-H45s8fVLYjbhFH62dIJ3WtmJ6RSPt/3DRO0ZcT2SUiYiQyz3BLVb9ADEnLl91m74aQPS3AzzeajZHYOalWe3bg==", + "peer": true, + "dependencies": { + "@babel/helper-string-parser": "^7.25.9", + "@babel/helper-validator-identifier": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@csstools/postcss-cascade-layers": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@csstools/postcss-cascade-layers/-/postcss-cascade-layers-1.1.1.tgz", + "integrity": "sha512-+KdYrpKC5TgomQr2DlZF4lDEpHcoxnj5IGddYYfBWJAKfj1JtuHUIqMa+E1pJJ+z3kvDViWMqyqPlG4Ja7amQA==", + "peer": true, + "dependencies": { + "@csstools/selector-specificity": "^2.0.2", + "postcss-selector-parser": "^6.0.10" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.2" + } + }, + "node_modules/@csstools/postcss-cascade-layers/node_modules/@csstools/selector-specificity": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@csstools/selector-specificity/-/selector-specificity-2.2.0.tgz", + "integrity": "sha512-+OJ9konv95ClSTOJCmMZqpd5+YGsB2S+x6w3E1oaM8UuR5j8nTNHYSz8c9BEPGDOCMQYIEEGlVPj/VY64iTbGw==", + "peer": true, + "engines": { + "node": "^14 || ^16 || >=18" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss-selector-parser": "^6.0.10" + } + }, + "node_modules/@csstools/postcss-cascade-layers/node_modules/postcss-selector-parser": { + "version": "6.1.2", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.1.2.tgz", + "integrity": "sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg==", + "peer": true, + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@csstools/postcss-color-function": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@csstools/postcss-color-function/-/postcss-color-function-1.1.1.tgz", + "integrity": "sha512-Bc0f62WmHdtRDjf5f3e2STwRAl89N2CLb+9iAwzrv4L2hncrbDwnQD9PCq0gtAt7pOI2leIV08HIBUd4jxD8cw==", + "peer": true, + "dependencies": { + "@csstools/postcss-progressive-custom-properties": "^1.1.0", + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.2" + } + }, + "node_modules/@csstools/postcss-font-format-keywords": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@csstools/postcss-font-format-keywords/-/postcss-font-format-keywords-1.0.1.tgz", + "integrity": "sha512-ZgrlzuUAjXIOc2JueK0X5sZDjCtgimVp/O5CEqTcs5ShWBa6smhWYbS0x5cVc/+rycTDbjjzoP0KTDnUneZGOg==", + "peer": true, + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.2" + } + }, + "node_modules/@csstools/postcss-hwb-function": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@csstools/postcss-hwb-function/-/postcss-hwb-function-1.0.2.tgz", + "integrity": "sha512-YHdEru4o3Rsbjmu6vHy4UKOXZD+Rn2zmkAmLRfPet6+Jz4Ojw8cbWxe1n42VaXQhD3CQUXXTooIy8OkVbUcL+w==", + "peer": true, + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.2" + } + }, + "node_modules/@csstools/postcss-ic-unit": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@csstools/postcss-ic-unit/-/postcss-ic-unit-1.0.1.tgz", + "integrity": "sha512-Ot1rcwRAaRHNKC9tAqoqNZhjdYBzKk1POgWfhN4uCOE47ebGcLRqXjKkApVDpjifL6u2/55ekkpnFcp+s/OZUw==", + "peer": true, + "dependencies": { + "@csstools/postcss-progressive-custom-properties": "^1.1.0", + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.2" + } + }, + "node_modules/@csstools/postcss-is-pseudo-class": { + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/@csstools/postcss-is-pseudo-class/-/postcss-is-pseudo-class-2.0.7.tgz", + "integrity": "sha512-7JPeVVZHd+jxYdULl87lvjgvWldYu+Bc62s9vD/ED6/QTGjy0jy0US/f6BG53sVMTBJ1lzKZFpYmofBN9eaRiA==", + "peer": true, + "dependencies": { + "@csstools/selector-specificity": "^2.0.0", + "postcss-selector-parser": "^6.0.10" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.2" + } + }, + "node_modules/@csstools/postcss-is-pseudo-class/node_modules/@csstools/selector-specificity": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@csstools/selector-specificity/-/selector-specificity-2.2.0.tgz", + "integrity": "sha512-+OJ9konv95ClSTOJCmMZqpd5+YGsB2S+x6w3E1oaM8UuR5j8nTNHYSz8c9BEPGDOCMQYIEEGlVPj/VY64iTbGw==", + "peer": true, + "engines": { + "node": "^14 || ^16 || >=18" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss-selector-parser": "^6.0.10" + } + }, + "node_modules/@csstools/postcss-is-pseudo-class/node_modules/postcss-selector-parser": { + "version": "6.1.2", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.1.2.tgz", + "integrity": "sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg==", + "peer": true, + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@csstools/postcss-nested-calc": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@csstools/postcss-nested-calc/-/postcss-nested-calc-1.0.0.tgz", + "integrity": "sha512-JCsQsw1wjYwv1bJmgjKSoZNvf7R6+wuHDAbi5f/7MbFhl2d/+v+TvBTU4BJH3G1X1H87dHl0mh6TfYogbT/dJQ==", + "peer": true, + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.2" + } + }, + "node_modules/@csstools/postcss-normalize-display-values": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@csstools/postcss-normalize-display-values/-/postcss-normalize-display-values-1.0.1.tgz", + "integrity": "sha512-jcOanIbv55OFKQ3sYeFD/T0Ti7AMXc9nM1hZWu8m/2722gOTxFg7xYu4RDLJLeZmPUVQlGzo4jhzvTUq3x4ZUw==", + "peer": true, + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.2" + } + }, + "node_modules/@csstools/postcss-oklab-function": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@csstools/postcss-oklab-function/-/postcss-oklab-function-1.1.1.tgz", + "integrity": "sha512-nJpJgsdA3dA9y5pgyb/UfEzE7W5Ka7u0CX0/HIMVBNWzWemdcTH3XwANECU6anWv/ao4vVNLTMxhiPNZsTK6iA==", + "peer": true, + "dependencies": { + "@csstools/postcss-progressive-custom-properties": "^1.1.0", + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.2" + } + }, + "node_modules/@csstools/postcss-progressive-custom-properties": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/@csstools/postcss-progressive-custom-properties/-/postcss-progressive-custom-properties-1.3.0.tgz", + "integrity": "sha512-ASA9W1aIy5ygskZYuWams4BzafD12ULvSypmaLJT2jvQ8G0M3I8PRQhC0h7mG0Z3LI05+agZjqSR9+K9yaQQjA==", + "peer": true, + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "peerDependencies": { + "postcss": "^8.3" + } + }, + "node_modules/@csstools/postcss-stepped-value-functions": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@csstools/postcss-stepped-value-functions/-/postcss-stepped-value-functions-1.0.1.tgz", + "integrity": "sha512-dz0LNoo3ijpTOQqEJLY8nyaapl6umbmDcgj4AD0lgVQ572b2eqA1iGZYTTWhrcrHztWDDRAX2DGYyw2VBjvCvQ==", + "peer": true, + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.2" + } + }, + "node_modules/@csstools/postcss-text-decoration-shorthand": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@csstools/postcss-text-decoration-shorthand/-/postcss-text-decoration-shorthand-1.0.0.tgz", + "integrity": "sha512-c1XwKJ2eMIWrzQenN0XbcfzckOLLJiczqy+YvfGmzoVXd7pT9FfObiSEfzs84bpE/VqfpEuAZ9tCRbZkZxxbdw==", + "peer": true, + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.2" + } + }, + "node_modules/@csstools/postcss-trigonometric-functions": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@csstools/postcss-trigonometric-functions/-/postcss-trigonometric-functions-1.0.2.tgz", + "integrity": "sha512-woKaLO///4bb+zZC2s80l+7cm07M7268MsyG3M0ActXXEFi6SuhvriQYcb58iiKGbjwwIU7n45iRLEHypB47Og==", + "peer": true, + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.2" + } + }, + "node_modules/@csstools/postcss-unset-value": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@csstools/postcss-unset-value/-/postcss-unset-value-1.0.2.tgz", + "integrity": "sha512-c8J4roPBILnelAsdLr4XOAR/GsTm0GJi4XpcfvoWk3U6KiTCqiFYc63KhRMQQX35jYMp4Ao8Ij9+IZRgMfJp1g==", + "peer": true, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.2" + } + }, + "node_modules/@discoveryjs/json-ext": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/@discoveryjs/json-ext/-/json-ext-0.5.7.tgz", + "integrity": "sha512-dBVuXR082gk3jsFp7Rd/JI4kytwGHecnCoTtXFb7DB6CNHp4rg5k1bhg0nWdLGLnOV71lmDzGQaLMy8iPLY0pw==", + "peer": true, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/@esbuild/linux-loong64": { + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.15.5.tgz", + "integrity": "sha512-UHkDFCfSGTuXq08oQltXxSZmH1TXyWsL+4QhZDWvvLl6mEJQqk3u7/wq1LjhrrAXYIllaTtRSzUXl4Olkf2J8A==", + "cpu": [ + "loong64" + ], + "optional": true, + "os": [ + "linux" + ], + "peer": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/@gar/promisify": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/@gar/promisify/-/promisify-1.1.3.tgz", + "integrity": "sha512-k2Ty1JcVojjJFwrg/ThKi2ujJ7XNLYaFGNB/bWT9wGR+oSMJHMa5w+CUq6p/pVrKeNNgA7pCqEcjSnHVoqJQFw==", + "peer": true + }, + "node_modules/@istanbuljs/load-nyc-config": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz", + "integrity": "sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==", + "peer": true, + "dependencies": { + "camelcase": "^5.3.1", + "find-up": "^4.1.0", + "get-package-type": "^0.1.0", + "js-yaml": "^3.13.1", + "resolve-from": "^5.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@istanbuljs/schema": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz", + "integrity": "sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jridgewell/gen-mapping": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.1.1.tgz", + "integrity": "sha512-sQXCasFk+U8lWYEe66WxRDOE9PjVz4vSM51fTu3Hw+ClTpUSQb718772vH3pyS5pShp6lvQM7SxgIDXXXmOX7w==", + "peer": true, + "dependencies": { + "@jridgewell/set-array": "^1.0.0", + "@jridgewell/sourcemap-codec": "^1.4.10" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/resolve-uri": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz", + "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==", + "peer": true, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/set-array": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.2.1.tgz", + "integrity": "sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==", + "peer": true, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/source-map": { + "version": "0.3.6", + "resolved": "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.6.tgz", + "integrity": "sha512-1ZJTZebgqllO79ue2bm3rIGud/bOe0pP5BjSRCRxxYkEZS8STV7zN84UBbiYu7jy+eCKSnVIUgoWWE/tt+shMQ==", + "peer": true, + "dependencies": { + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.25" + } + }, + "node_modules/@jridgewell/source-map/node_modules/@jridgewell/gen-mapping": { + "version": "0.3.8", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.8.tgz", + "integrity": "sha512-imAbBGkb+ebQyxKgzv5Hu2nmROxoDOXHh80evxdoXNOrvAnVx7zimzc1Oo5h9RlfV4vPXaE2iM5pOFbvOCClWA==", + "peer": true, + "dependencies": { + "@jridgewell/set-array": "^1.2.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.24" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.0.tgz", + "integrity": "sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ==" + }, + "node_modules/@jridgewell/trace-mapping": { + "version": "0.3.25", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz", + "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==", + "peer": true, + "dependencies": { + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" + } + }, + "node_modules/@leichtgewicht/ip-codec": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@leichtgewicht/ip-codec/-/ip-codec-2.0.5.tgz", + "integrity": "sha512-Vo+PSpZG2/fmgmiNzYK9qWRh8h/CHrwD0mo1h1DzL4yzHNSfWYujGTYsWGreD000gcgmZ7K4Ys6Tx9TxtsKdDw==", + "peer": true + }, + "node_modules/@ng-select/ng-select": { + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/@ng-select/ng-select/-/ng-select-9.1.0.tgz", + "integrity": "sha512-vxSRD2d84H39eqtTJaethlpQ+xkJUU8epQNUr3yPiah23z8MBCqSDE1t0chxi+rXJz7+xoC9qFa1aYnUVFan4w==", + "peer": true, + "dependencies": { + "tslib": "^2.3.1" + }, + "engines": { + "node": ">= 12.20.0", + "npm": ">= 6.0.0" + }, + "peerDependencies": { + "@angular/common": "<15.0.0", + "@angular/core": "<15.0.0", + "@angular/forms": "<15.0.0" + } + }, + "node_modules/@ngtools/webpack": { + "version": "14.2.13", + "resolved": "https://registry.npmjs.org/@ngtools/webpack/-/webpack-14.2.13.tgz", + "integrity": "sha512-RQx/rGX7K/+R55x1R6Ax1JzyeHi8cW11dEXpzHWipyuSpusQLUN53F02eMB4VTakXsL3mFNWWy4bX3/LSq8/9w==", + "peer": true, + "engines": { + "node": "^14.15.0 || >=16.10.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" + }, + "peerDependencies": { + "@angular/compiler-cli": "^14.0.0", + "typescript": ">=4.6.2 <4.9", + "webpack": "^5.54.0" + } + }, + "node_modules/@nodelib/fs.scandir": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", + "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", + "peer": true, + "dependencies": { + "@nodelib/fs.stat": "2.0.5", + "run-parallel": "^1.1.9" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.stat": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", + "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", + "peer": true, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.walk": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", + "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", + "peer": true, + "dependencies": { + "@nodelib/fs.scandir": "2.1.5", + "fastq": "^1.6.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@npmcli/fs": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/@npmcli/fs/-/fs-2.1.2.tgz", + "integrity": "sha512-yOJKRvohFOaLqipNtwYB9WugyZKhC/DZC4VYPmpaCzDBrA8YpK3qHZ8/HGscMnE4GqbkLNuVcCnxkeQEdGt6LQ==", + "peer": true, + "dependencies": { + "@gar/promisify": "^1.1.3", + "semver": "^7.3.5" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/@npmcli/move-file": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/@npmcli/move-file/-/move-file-2.0.1.tgz", + "integrity": "sha512-mJd2Z5TjYWq/ttPLLGqArdtnC74J6bOzg4rMDnN+p1xTacZ2yPRCk2y0oSWQtygLR9YVQXgOcONrwtnk3JupxQ==", + "deprecated": "This functionality has been moved to @npmcli/fs", + "peer": true, + "dependencies": { + "mkdirp": "^1.0.4", + "rimraf": "^3.0.2" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/@rollup/plugin-commonjs": { + "version": "25.0.8", + "resolved": "https://registry.npmjs.org/@rollup/plugin-commonjs/-/plugin-commonjs-25.0.8.tgz", + "integrity": "sha512-ZEZWTK5n6Qde0to4vS9Mr5x/0UZoqCxPVR9KRUjU4kA2sO7GEUn1fop0DAwpO6z0Nw/kJON9bDmSxdWxO/TT1A==", + "dependencies": { + "@rollup/pluginutils": "^5.0.1", + "commondir": "^1.0.1", + "estree-walker": "^2.0.2", + "glob": "^8.0.3", + "is-reference": "1.2.1", + "magic-string": "^0.30.3" + }, + "engines": { + "node": ">=14.0.0" + }, + "peerDependencies": { + "rollup": "^2.68.0||^3.0.0||^4.0.0" + }, + "peerDependenciesMeta": { + "rollup": { + "optional": true + } + } + }, + "node_modules/@rollup/plugin-commonjs/node_modules/magic-string": { + "version": "0.30.17", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.17.tgz", + "integrity": "sha512-sNPKHvyjVf7gyjwS4xGTaW/mCnF8wnjtifKBEhxfZ7E/S8tQ0rssrwGNn6q8JH/ohItJfSQp9mBtQYuTlH5QnA==", + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.5.0" + } + }, + "node_modules/@rollup/plugin-json": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/@rollup/plugin-json/-/plugin-json-4.1.0.tgz", + "integrity": "sha512-yfLbTdNS6amI/2OpmbiBoW12vngr5NW2jCJVZSBEz+H5KfUJZ2M7sDjk0U6GOOdCWFVScShte29o9NezJ53TPw==", + "peer": true, + "dependencies": { + "@rollup/pluginutils": "^3.0.8" + }, + "peerDependencies": { + "rollup": "^1.20.0 || ^2.0.0" + } + }, + "node_modules/@rollup/plugin-json/node_modules/@rollup/pluginutils": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-3.1.0.tgz", + "integrity": "sha512-GksZ6pr6TpIjHm8h9lSQ8pi8BE9VeubNT0OMJ3B5uZJ8pz73NPiqOtCog/x2/QzM1ENChPKxMDhiQuRHsqc+lg==", + "peer": true, + "dependencies": { + "@types/estree": "0.0.39", + "estree-walker": "^1.0.1", + "picomatch": "^2.2.2" + }, + "engines": { + "node": ">= 8.0.0" + }, + "peerDependencies": { + "rollup": "^1.20.0||^2.0.0" + } + }, + "node_modules/@rollup/plugin-json/node_modules/@types/estree": { + "version": "0.0.39", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.39.tgz", + "integrity": "sha512-EYNwp3bU+98cpU4lAWYYL7Zz+2gryWH1qbdDTidVd6hkiR6weksdbMadyXKXNPEkQFhXM+hVO9ZygomHXp+AIw==", + "peer": true + }, + "node_modules/@rollup/plugin-json/node_modules/estree-walker": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-1.0.1.tgz", + "integrity": "sha512-1fMXF3YP4pZZVozF8j/ZLfvnR8NSIljt56UhbZ5PeeDmmGHpgpdwQt7ITlGvYaQukCvuBRMLEiKiYC+oeIg4cg==", + "peer": true + }, + "node_modules/@rollup/plugin-json/node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "peer": true, + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/@rollup/plugin-node-resolve": { + "version": "15.3.1", + "resolved": "https://registry.npmjs.org/@rollup/plugin-node-resolve/-/plugin-node-resolve-15.3.1.tgz", + "integrity": "sha512-tgg6b91pAybXHJQMAAwW9VuWBO6Thi+q7BCNARLwSqlmsHz0XYURtGvh/AuwSADXSI4h/2uHbs7s4FzlZDGSGA==", + "dependencies": { + "@rollup/pluginutils": "^5.0.1", + "@types/resolve": "1.20.2", + "deepmerge": "^4.2.2", + "is-module": "^1.0.0", + "resolve": "^1.22.1" + }, + "engines": { + "node": ">=14.0.0" + }, + "peerDependencies": { + "rollup": "^2.78.0||^3.0.0||^4.0.0" + }, + "peerDependenciesMeta": { + "rollup": { + "optional": true + } + } + }, + "node_modules/@rollup/pluginutils": { + "version": "5.1.4", + "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-5.1.4.tgz", + "integrity": "sha512-USm05zrsFxYLPdWWq+K3STlWiT/3ELn3RcV5hJMghpeAIhxfsUIg6mt12CBJBInWMV4VneoV7SfGv8xIwo2qNQ==", + "dependencies": { + "@types/estree": "^1.0.0", + "estree-walker": "^2.0.2", + "picomatch": "^4.0.2" + }, + "engines": { + "node": ">=14.0.0" + }, + "peerDependencies": { + "rollup": "^1.20.0||^2.0.0||^3.0.0||^4.0.0" + }, + "peerDependenciesMeta": { + "rollup": { + "optional": true + } + } + }, + "node_modules/@schematics/angular": { + "version": "14.2.0", + "resolved": "https://registry.npmjs.org/@schematics/angular/-/angular-14.2.0.tgz", + "integrity": "sha512-9y5nnL4XpxhRIrkV2C8H12LbLEVhQP8VK7/V7sbXJ/V4ioUi5BT6P6t3qLcFNOrk9/+mJIVbsXdZkXnyxy2dRA==", + "peer": true, + "dependencies": { + "@angular-devkit/core": "14.2.0", + "@angular-devkit/schematics": "14.2.0", + "jsonc-parser": "3.1.0" + }, + "engines": { + "node": "^14.15.0 || >=16.10.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" + } + }, + "node_modules/@schematics/angular/node_modules/@angular-devkit/core": { + "version": "14.2.0", + "resolved": "https://registry.npmjs.org/@angular-devkit/core/-/core-14.2.0.tgz", + "integrity": "sha512-IwiS6uDs3drR4i3nuqVinh5jtI1SHIyn/OaoWL6t3V7Y6b65BdJN1liyd+WBUEZmEwGCkY2/FjnLx1G8Dflc8A==", + "peer": true, + "dependencies": { + "ajv": "8.11.0", + "ajv-formats": "2.1.1", + "jsonc-parser": "3.1.0", + "rxjs": "6.6.7", + "source-map": "0.7.4" + }, + "engines": { + "node": "^14.15.0 || >=16.10.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" + }, + "peerDependencies": { + "chokidar": "^3.5.2" + }, + "peerDependenciesMeta": { + "chokidar": { + "optional": true + } + } + }, + "node_modules/@schematics/angular/node_modules/rxjs": { + "version": "6.6.7", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", + "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", + "peer": true, + "dependencies": { + "tslib": "^1.9.0" + }, + "engines": { + "npm": ">=2.0.0" + } + }, + "node_modules/@schematics/angular/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "peer": true + }, + "node_modules/@types/body-parser": { + "version": "1.19.5", + "resolved": "https://registry.npmjs.org/@types/body-parser/-/body-parser-1.19.5.tgz", + "integrity": "sha512-fB3Zu92ucau0iQ0JMCFQE7b/dv8Ot07NI3KaZIkIUNXq82k4eBAqUaneXfleGY9JWskeS9y+u0nXMyspcuQrCg==", + "peer": true, + "dependencies": { + "@types/connect": "*", + "@types/node": "*" + } + }, + "node_modules/@types/bonjour": { + "version": "3.5.13", + "resolved": "https://registry.npmjs.org/@types/bonjour/-/bonjour-3.5.13.tgz", + "integrity": "sha512-z9fJ5Im06zvUL548KvYNecEVlA7cVDkGUi6kZusb04mpyEFKCIZJvloCcmpmLaIahDpOQGHaHmG6imtPMmPXGQ==", + "peer": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/connect": { + "version": "3.4.38", + "resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.38.tgz", + "integrity": "sha512-K6uROf1LD88uDQqJCktA4yzL1YYAK6NgfsI0v/mTgyPKWsX1CnJ0XPSDhViejru1GcRkLWb8RlzFYJRqGUbaug==", + "peer": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/connect-history-api-fallback": { + "version": "1.5.4", + "resolved": "https://registry.npmjs.org/@types/connect-history-api-fallback/-/connect-history-api-fallback-1.5.4.tgz", + "integrity": "sha512-n6Cr2xS1h4uAulPRdlw6Jl6s1oG8KrVilPN2yUITEs+K48EzMJJ3W1xy8K5eWuFvjp3R74AOIGSmp2UfBJ8HFw==", + "peer": true, + "dependencies": { + "@types/express-serve-static-core": "*", + "@types/node": "*" + } + }, + "node_modules/@types/eslint": { + "version": "9.6.1", + "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-9.6.1.tgz", + "integrity": "sha512-FXx2pKgId/WyYo2jXw63kk7/+TY7u7AziEJxJAnSFzHlqTAS3Ync6SvgYAN/k4/PQpnnVuzoMuVnByKK2qp0ag==", + "peer": true, + "dependencies": { + "@types/estree": "*", + "@types/json-schema": "*" + } + }, + "node_modules/@types/eslint-scope": { + "version": "3.7.7", + "resolved": "https://registry.npmjs.org/@types/eslint-scope/-/eslint-scope-3.7.7.tgz", + "integrity": "sha512-MzMFlSLBqNF2gcHWO0G1vP/YQyfvrxZ0bF+u7mzUdZ1/xK4A4sru+nraZz5i3iEIk1l1uyicaDVTB4QbbEkAYg==", + "peer": true, + "dependencies": { + "@types/eslint": "*", + "@types/estree": "*" + } + }, + "node_modules/@types/estree": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.7.tgz", + "integrity": "sha512-w28IoSUCJpidD/TGviZwwMJckNESJZXFu7NBZ5YJ4mEUnNraUn9Pm8HSZm/jDF1pDWYKspWE7oVphigUPRakIQ==" + }, + "node_modules/@types/express": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/@types/express/-/express-4.17.21.tgz", + "integrity": "sha512-ejlPM315qwLpaQlQDTjPdsUFSc6ZsP4AN6AlWnogPjQ7CVi7PYF3YVz+CY3jE2pwYf7E/7HlDAN0rV2GxTG0HQ==", + "peer": true, + "dependencies": { + "@types/body-parser": "*", + "@types/express-serve-static-core": "^4.17.33", + "@types/qs": "*", + "@types/serve-static": "*" + } + }, + "node_modules/@types/express-serve-static-core": { + "version": "5.0.6", + "resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-5.0.6.tgz", + "integrity": "sha512-3xhRnjJPkULekpSzgtoNYYcTWgEZkp4myc+Saevii5JPnHNvHMRlBSHDbs7Bh1iPPoVTERHEZXyhyLbMEsExsA==", + "peer": true, + "dependencies": { + "@types/node": "*", + "@types/qs": "*", + "@types/range-parser": "*", + "@types/send": "*" + } + }, + "node_modules/@types/express/node_modules/@types/express-serve-static-core": { + "version": "4.19.6", + "resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.19.6.tgz", + "integrity": "sha512-N4LZ2xG7DatVqhCZzOGb1Yi5lMbXSZcmdLDe9EzSndPV2HpWYWzRbaerl2n27irrm94EPpprqa8KpskPT085+A==", + "peer": true, + "dependencies": { + "@types/node": "*", + "@types/qs": "*", + "@types/range-parser": "*", + "@types/send": "*" + } + }, + "node_modules/@types/http-errors": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/@types/http-errors/-/http-errors-2.0.4.tgz", + "integrity": "sha512-D0CFMMtydbJAegzOyHjtiKPLlvnm3iTZyZRSZoLq2mRhDdmLfIWOCYPfQJ4cu2erKghU++QvjcUjp/5h7hESpA==", + "peer": true + }, + "node_modules/@types/http-proxy": { + "version": "1.17.16", + "resolved": "https://registry.npmjs.org/@types/http-proxy/-/http-proxy-1.17.16.tgz", + "integrity": "sha512-sdWoUajOB1cd0A8cRRQ1cfyWNbmFKLAqBB89Y8x5iYyG/mkJHc0YUH8pdWBy2omi9qtCpiIgGjuwO0dQST2l5w==", + "peer": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/json-schema": { + "version": "7.0.15", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.15.tgz", + "integrity": "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==", + "peer": true + }, + "node_modules/@types/mime": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/@types/mime/-/mime-1.3.5.tgz", + "integrity": "sha512-/pyBZWSLD2n0dcHE3hq8s8ZvcETHtEuF+3E7XVt0Ig2nvsVQXdghHVcEkIWjy9A0wKfTn97a/PSDYohKIlnP/w==", + "peer": true + }, + "node_modules/@types/node": { + "version": "22.14.1", + "resolved": "https://registry.npmjs.org/@types/node/-/node-22.14.1.tgz", + "integrity": "sha512-u0HuPQwe/dHrItgHHpmw3N2fYCR6x4ivMNbPHRkBVP4CvN+kiRrKHWk3i8tXiO/joPwXLMYvF9TTF0eqgHIuOw==", + "peer": true, + "dependencies": { + "undici-types": "~6.21.0" + } + }, + "node_modules/@types/node-forge": { + "version": "1.3.11", + "resolved": "https://registry.npmjs.org/@types/node-forge/-/node-forge-1.3.11.tgz", + "integrity": "sha512-FQx220y22OKNTqaByeBGqHWYz4cl94tpcxeFdvBo3wjG6XPBuZ0BNgNZRV5J5TFmmcsJ4IzsLkmGRiQbnYsBEQ==", + "peer": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/parse-json": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.2.tgz", + "integrity": "sha512-dISoDXWWQwUquiKsyZ4Ng+HX2KsPL7LyHKHQwgGFEA3IaKac4Obd+h2a/a6waisAoepJlBcx9paWqjA8/HVjCw==", + "peer": true + }, + "node_modules/@types/qs": { + "version": "6.9.18", + "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.18.tgz", + "integrity": "sha512-kK7dgTYDyGqS+e2Q4aK9X3D7q234CIZ1Bv0q/7Z5IwRDoADNU81xXJK/YVyLbLTZCoIwUoDoffFeF+p/eIklAA==", + "peer": true + }, + "node_modules/@types/range-parser": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/@types/range-parser/-/range-parser-1.2.7.tgz", + "integrity": "sha512-hKormJbkJqzQGhziax5PItDUTMAM9uE2XXQmM37dyd4hVM+5aVl7oVxMVUiVQn2oCQFN/LKCZdvSM0pFRqbSmQ==", + "peer": true + }, + "node_modules/@types/resolve": { + "version": "1.20.2", + "resolved": "https://registry.npmjs.org/@types/resolve/-/resolve-1.20.2.tgz", + "integrity": "sha512-60BCwRFOZCQhDncwQdxxeOEEkbc5dIMccYLwbxsS4TUNeVECQ/pBJ0j09mrHOl/JJvpRPGwO9SvE4nR2Nb/a4Q==" + }, + "node_modules/@types/retry": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/@types/retry/-/retry-0.12.0.tgz", + "integrity": "sha512-wWKOClTTiizcZhXnPY4wikVAwmdYHp8q6DmC+EJUzAMsycb7HB32Kh9RN4+0gExjmPmZSAQjgURXIGATPegAvA==", + "peer": true + }, + "node_modules/@types/send": { + "version": "0.17.4", + "resolved": "https://registry.npmjs.org/@types/send/-/send-0.17.4.tgz", + "integrity": "sha512-x2EM6TJOybec7c52BX0ZspPodMsQUd5L6PRwOunVyVUhXiBSKf3AezDL8Dgvgt5o0UfKNfuA0eMLr2wLT4AiBA==", + "peer": true, + "dependencies": { + "@types/mime": "^1", + "@types/node": "*" + } + }, + "node_modules/@types/serve-index": { + "version": "1.9.4", + "resolved": "https://registry.npmjs.org/@types/serve-index/-/serve-index-1.9.4.tgz", + "integrity": "sha512-qLpGZ/c2fhSs5gnYsQxtDEq3Oy8SXPClIXkW5ghvAvsNuVSA8k+gCONcUCS/UjLEYvYps+e8uBtfgXgvhwfNug==", + "peer": true, + "dependencies": { + "@types/express": "*" + } + }, + "node_modules/@types/serve-static": { + "version": "1.15.7", + "resolved": "https://registry.npmjs.org/@types/serve-static/-/serve-static-1.15.7.tgz", + "integrity": "sha512-W8Ym+h8nhuRwaKPaDw34QUkwsGi6Rc4yYqvKFo5rm2FUEhCFbzVWrxXUxuKK8TASjWsysJY0nsmNCGhCOIsrOw==", + "peer": true, + "dependencies": { + "@types/http-errors": "*", + "@types/node": "*", + "@types/send": "*" + } + }, + "node_modules/@types/sockjs": { + "version": "0.3.36", + "resolved": "https://registry.npmjs.org/@types/sockjs/-/sockjs-0.3.36.tgz", + "integrity": "sha512-MK9V6NzAS1+Ud7JV9lJLFqW85VbC9dq3LmwZCuBe4wBDgKC0Kj/jd8Xl+nSviU+Qc3+m7umHHyHg//2KSa0a0Q==", + "peer": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/ws": { + "version": "8.18.1", + "resolved": "https://registry.npmjs.org/@types/ws/-/ws-8.18.1.tgz", + "integrity": "sha512-ThVF6DCVhA8kUGy+aazFQ4kXQ7E1Ty7A3ypFOe0IcJV8O/M511G99AW24irKrW56Wt44yG9+ij8FaqoBGkuBXg==", + "peer": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@webassemblyjs/ast": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.11.1.tgz", + "integrity": "sha512-ukBh14qFLjxTQNTXocdyksN5QdM28S1CxHt2rdskFyL+xFV7VremuBLVbmCePj+URalXBENx/9Lm7lnhihtCSw==", + "peer": true, + "dependencies": { + "@webassemblyjs/helper-numbers": "1.11.1", + "@webassemblyjs/helper-wasm-bytecode": "1.11.1" + } + }, + "node_modules/@webassemblyjs/floating-point-hex-parser": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.11.1.tgz", + "integrity": "sha512-iGRfyc5Bq+NnNuX8b5hwBrRjzf0ocrJPI6GWFodBFzmFnyvrQ83SHKhmilCU/8Jv67i4GJZBMhEzltxzcNagtQ==", + "peer": true + }, + "node_modules/@webassemblyjs/helper-api-error": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.11.1.tgz", + "integrity": "sha512-RlhS8CBCXfRUR/cwo2ho9bkheSXG0+NwooXcc3PAILALf2QLdFyj7KGsKRbVc95hZnhnERon4kW/D3SZpp6Tcg==", + "peer": true + }, + "node_modules/@webassemblyjs/helper-buffer": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.11.1.tgz", + "integrity": "sha512-gwikF65aDNeeXa8JxXa2BAk+REjSyhrNC9ZwdT0f8jc4dQQeDQ7G4m0f2QCLPJiMTTO6wfDmRmj/pW0PsUvIcA==", + "peer": true + }, + "node_modules/@webassemblyjs/helper-numbers": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.1.tgz", + "integrity": "sha512-vDkbxiB8zfnPdNK9Rajcey5C0w+QJugEglN0of+kmO8l7lDb77AnlKYQF7aarZuCrv+l0UvqL+68gSDr3k9LPQ==", + "peer": true, + "dependencies": { + "@webassemblyjs/floating-point-hex-parser": "1.11.1", + "@webassemblyjs/helper-api-error": "1.11.1", + "@xtuc/long": "4.2.2" + } + }, + "node_modules/@webassemblyjs/helper-wasm-bytecode": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.1.tgz", + "integrity": "sha512-PvpoOGiJwXeTrSf/qfudJhwlvDQxFgelbMqtq52WWiXC6Xgg1IREdngmPN3bs4RoO83PnL/nFrxucXj1+BX62Q==", + "peer": true + }, + "node_modules/@webassemblyjs/helper-wasm-section": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.11.1.tgz", + "integrity": "sha512-10P9No29rYX1j7F3EVPX3JvGPQPae+AomuSTPiF9eBQeChHI6iqjMIwR9JmOJXwpnn/oVGDk7I5IlskuMwU/pg==", + "peer": true, + "dependencies": { + "@webassemblyjs/ast": "1.11.1", + "@webassemblyjs/helper-buffer": "1.11.1", + "@webassemblyjs/helper-wasm-bytecode": "1.11.1", + "@webassemblyjs/wasm-gen": "1.11.1" + } + }, + "node_modules/@webassemblyjs/ieee754": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.11.1.tgz", + "integrity": "sha512-hJ87QIPtAMKbFq6CGTkZYJivEwZDbQUgYd3qKSadTNOhVY7p+gfP6Sr0lLRVTaG1JjFj+r3YchoqRYxNH3M0GQ==", + "peer": true, + "dependencies": { + "@xtuc/ieee754": "^1.2.0" + } + }, + "node_modules/@webassemblyjs/leb128": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.11.1.tgz", + "integrity": "sha512-BJ2P0hNZ0u+Th1YZXJpzW6miwqQUGcIHT1G/sf72gLVD9DZ5AdYTqPNbHZh6K1M5VmKvFXwGSWZADz+qBWxeRw==", + "peer": true, + "dependencies": { + "@xtuc/long": "4.2.2" + } + }, + "node_modules/@webassemblyjs/utf8": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.11.1.tgz", + "integrity": "sha512-9kqcxAEdMhiwQkHpkNiorZzqpGrodQQ2IGrHHxCy+Ozng0ofyMA0lTqiLkVs1uzTRejX+/O0EOT7KxqVPuXosQ==", + "peer": true + }, + "node_modules/@webassemblyjs/wasm-edit": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.11.1.tgz", + "integrity": "sha512-g+RsupUC1aTHfR8CDgnsVRVZFJqdkFHpsHMfJuWQzWU3tvnLC07UqHICfP+4XyL2tnr1amvl1Sdp06TnYCmVkA==", + "peer": true, + "dependencies": { + "@webassemblyjs/ast": "1.11.1", + "@webassemblyjs/helper-buffer": "1.11.1", + "@webassemblyjs/helper-wasm-bytecode": "1.11.1", + "@webassemblyjs/helper-wasm-section": "1.11.1", + "@webassemblyjs/wasm-gen": "1.11.1", + "@webassemblyjs/wasm-opt": "1.11.1", + "@webassemblyjs/wasm-parser": "1.11.1", + "@webassemblyjs/wast-printer": "1.11.1" + } + }, + "node_modules/@webassemblyjs/wasm-gen": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.11.1.tgz", + "integrity": "sha512-F7QqKXwwNlMmsulj6+O7r4mmtAlCWfO/0HdgOxSklZfQcDu0TpLiD1mRt/zF25Bk59FIjEuGAIyn5ei4yMfLhA==", + "peer": true, + "dependencies": { + "@webassemblyjs/ast": "1.11.1", + "@webassemblyjs/helper-wasm-bytecode": "1.11.1", + "@webassemblyjs/ieee754": "1.11.1", + "@webassemblyjs/leb128": "1.11.1", + "@webassemblyjs/utf8": "1.11.1" + } + }, + "node_modules/@webassemblyjs/wasm-opt": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.11.1.tgz", + "integrity": "sha512-VqnkNqnZlU5EB64pp1l7hdm3hmQw7Vgqa0KF/KCNO9sIpI6Fk6brDEiX+iCOYrvMuBWDws0NkTOxYEb85XQHHw==", + "peer": true, + "dependencies": { + "@webassemblyjs/ast": "1.11.1", + "@webassemblyjs/helper-buffer": "1.11.1", + "@webassemblyjs/wasm-gen": "1.11.1", + "@webassemblyjs/wasm-parser": "1.11.1" + } + }, + "node_modules/@webassemblyjs/wasm-parser": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.11.1.tgz", + "integrity": "sha512-rrBujw+dJu32gYB7/Lup6UhdkPx9S9SnobZzRVL7VcBH9Bt9bCBLEuX/YXOOtBsOZ4NQrRykKhffRWHvigQvOA==", + "peer": true, + "dependencies": { + "@webassemblyjs/ast": "1.11.1", + "@webassemblyjs/helper-api-error": "1.11.1", + "@webassemblyjs/helper-wasm-bytecode": "1.11.1", + "@webassemblyjs/ieee754": "1.11.1", + "@webassemblyjs/leb128": "1.11.1", + "@webassemblyjs/utf8": "1.11.1" + } + }, + "node_modules/@webassemblyjs/wast-printer": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.11.1.tgz", + "integrity": "sha512-IQboUWM4eKzWW+N/jij2sRatKMh99QEelo3Eb2q0qXkvPRISAj8Qxtmw5itwqK+TTkBuUIE45AxYPToqPtL5gg==", + "peer": true, + "dependencies": { + "@webassemblyjs/ast": "1.11.1", + "@xtuc/long": "4.2.2" + } + }, + "node_modules/@xtuc/ieee754": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz", + "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==", + "peer": true + }, + "node_modules/@xtuc/long": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/@xtuc/long/-/long-4.2.2.tgz", + "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==", + "peer": true + }, + "node_modules/abab": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/abab/-/abab-2.0.6.tgz", + "integrity": "sha512-j2afSsaIENvHZN2B8GOpF566vZ5WVk5opAiMTvWgaQT8DkbOqsTfvNAvHoRGU2zzP8cPoqys+xHTRDWW8L+/BA==", + "deprecated": "Use your platform's native atob() and btoa() methods instead", + "peer": true + }, + "node_modules/accepts": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz", + "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==", + "peer": true, + "dependencies": { + "mime-types": "~2.1.34", + "negotiator": "0.6.3" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/accepts/node_modules/negotiator": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", + "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==", + "peer": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/acorn": { + "version": "8.14.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.14.1.tgz", + "integrity": "sha512-OvQ/2pUDKmgfCg++xsTX1wGxfTaszcHVcTctW4UJB4hibJx2HXxxO5UmVgyjMa+ZDsiaf5wWLXYpRWMmBI0QHg==", + "peer": true, + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/acorn-import-assertions": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/acorn-import-assertions/-/acorn-import-assertions-1.9.0.tgz", + "integrity": "sha512-cmMwop9x+8KFhxvKrKfPYmN6/pKTYYHBqLa0DfvVZcKMJWNyWLnaqND7dx/qn66R7ewM1UX5XMaDVP5wlVTaVA==", + "deprecated": "package has been renamed to acorn-import-attributes", + "peer": true, + "peerDependencies": { + "acorn": "^8" + } + }, + "node_modules/adjust-sourcemap-loader": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/adjust-sourcemap-loader/-/adjust-sourcemap-loader-4.0.0.tgz", + "integrity": "sha512-OXwN5b9pCUXNQHJpwwD2qP40byEmSgzj8B4ydSN0uMNYWiFmJ6x6KwUllMmfk8Rwu/HJDFR7U8ubsWBoN0Xp0A==", + "peer": true, + "dependencies": { + "loader-utils": "^2.0.0", + "regex-parser": "^2.2.11" + }, + "engines": { + "node": ">=8.9" + } + }, + "node_modules/adjust-sourcemap-loader/node_modules/loader-utils": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.4.tgz", + "integrity": "sha512-xXqpXoINfFhgua9xiqD8fPFHgkoq1mmmpE92WlDbm9rNRd/EbRb+Gqf908T2DMfuHjjJlksiK2RbHVOdD/MqSw==", + "peer": true, + "dependencies": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^2.1.2" + }, + "engines": { + "node": ">=8.9.0" + } + }, + "node_modules/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==", + "peer": true, + "dependencies": { + "debug": "4" + }, + "engines": { + "node": ">= 6.0.0" + } + }, + "node_modules/aggregate-error": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", + "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", + "peer": true, + "dependencies": { + "clean-stack": "^2.0.0", + "indent-string": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/ajv": { + "version": "8.11.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.11.0.tgz", + "integrity": "sha512-wGgprdCvMalC0BztXvitD2hC04YffAvtsUn93JbGXYLAtCUO4xd17mCCZQxUOItiBwZvJScWo8NIvQMQ71rdpg==", + "peer": true, + "dependencies": { + "fast-deep-equal": "^3.1.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/ajv-formats": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ajv-formats/-/ajv-formats-2.1.1.tgz", + "integrity": "sha512-Wx0Kx52hxE7C18hkMEggYlEifqWZtYaRgouJor+WMdPnQyEK13vgEWyVNup7SoeeoLMsr4kf5h6dOW11I15MUA==", + "peer": true, + "dependencies": { + "ajv": "^8.0.0" + }, + "peerDependencies": { + "ajv": "^8.0.0" + }, + "peerDependenciesMeta": { + "ajv": { + "optional": true + } + } + }, + "node_modules/ajv-keywords": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz", + "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", + "peer": true, + "dependencies": { + "fast-deep-equal": "^3.1.3" + }, + "peerDependencies": { + "ajv": "^8.8.2" + } + }, + "node_modules/ansi-colors": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.3.tgz", + "integrity": "sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==", + "peer": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/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==", + "peer": true, + "dependencies": { + "type-fest": "^0.21.3" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/ansi-html-community": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/ansi-html-community/-/ansi-html-community-0.0.8.tgz", + "integrity": "sha512-1APHAyr3+PCamwNw3bXCPp4HFLONZt/yIH0sZp0/469KWNTEy+qN5jQ3GVX6DMZ1UXAi34yVwtTeaG/HpBuuzw==", + "engines": [ + "node >= 0.8.0" + ], + "peer": true, + "bin": { + "ansi-html": "bin/ansi-html" + } + }, + "node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "peer": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/anymatch": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", + "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", + "peer": true, + "dependencies": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/anymatch/node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "peer": true, + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "peer": true, + "dependencies": { + "sprintf-js": "~1.0.2" + } + }, + "node_modules/array-flatten": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", + "integrity": "sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==", + "peer": true + }, + "node_modules/atob": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz", + "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==", + "peer": true, + "bin": { + "atob": "bin/atob.js" + }, + "engines": { + "node": ">= 4.5.0" + } + }, + "node_modules/autoprefixer": { + "version": "10.4.21", + "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.21.tgz", + "integrity": "sha512-O+A6LWV5LDHSJD3LjHYoNi4VLsj/Whi7k6zG12xTYaU4cQ8oxQGckXNX8cRHK5yOZ/ppVHe0ZBXGzSV9jXdVbQ==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/autoprefixer" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "peer": true, + "dependencies": { + "browserslist": "^4.24.4", + "caniuse-lite": "^1.0.30001702", + "fraction.js": "^4.3.7", + "normalize-range": "^0.1.2", + "picocolors": "^1.1.1", + "postcss-value-parser": "^4.2.0" + }, + "bin": { + "autoprefixer": "bin/autoprefixer" + }, + "engines": { + "node": "^10 || ^12 || >=14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/babel-loader": { + "version": "8.2.5", + "resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-8.2.5.tgz", + "integrity": "sha512-OSiFfH89LrEMiWd4pLNqGz4CwJDtbs2ZVc+iGu2HrkRfPxId9F2anQj38IxWpmRfsUY0aBZYi1EFcd3mhtRMLQ==", + "peer": true, + "dependencies": { + "find-cache-dir": "^3.3.1", + "loader-utils": "^2.0.0", + "make-dir": "^3.1.0", + "schema-utils": "^2.6.5" + }, + "engines": { + "node": ">= 8.9" + }, + "peerDependencies": { + "@babel/core": "^7.0.0", + "webpack": ">=2" + } + }, + "node_modules/babel-loader/node_modules/loader-utils": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.4.tgz", + "integrity": "sha512-xXqpXoINfFhgua9xiqD8fPFHgkoq1mmmpE92WlDbm9rNRd/EbRb+Gqf908T2DMfuHjjJlksiK2RbHVOdD/MqSw==", + "peer": true, + "dependencies": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^2.1.2" + }, + "engines": { + "node": ">=8.9.0" + } + }, + "node_modules/babel-plugin-istanbul": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz", + "integrity": "sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA==", + "peer": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.0.0", + "@istanbuljs/load-nyc-config": "^1.0.0", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-instrument": "^5.0.4", + "test-exclude": "^6.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/babel-plugin-polyfill-corejs2": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.3.3.tgz", + "integrity": "sha512-8hOdmFYFSZhqg2C/JgLUQ+t52o5nirNwaWM2B9LWteozwIvM14VSwdsCAUET10qT+kmySAlseadmfeeSWFCy+Q==", + "peer": true, + "dependencies": { + "@babel/compat-data": "^7.17.7", + "@babel/helper-define-polyfill-provider": "^0.3.3", + "semver": "^6.1.1" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/babel-plugin-polyfill-corejs2/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "peer": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/babel-plugin-polyfill-corejs3": { + "version": "0.5.3", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.5.3.tgz", + "integrity": "sha512-zKsXDh0XjnrUEW0mxIHLfjBfnXSMr5Q/goMe/fxpQnLm07mcOZiIZHBNWCMx60HmdvjxfXcalac0tfFg0wqxyw==", + "peer": true, + "dependencies": { + "@babel/helper-define-polyfill-provider": "^0.3.2", + "core-js-compat": "^3.21.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/babel-plugin-polyfill-regenerator": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.4.1.tgz", + "integrity": "sha512-NtQGmyQDXjQqQ+IzRkBVwEOz9lQ4zxAQZgoAYEtU9dJjnl1Oc98qnN7jcp+bE7O7aYzVpavXE3/VKXNzUbh7aw==", + "peer": true, + "dependencies": { + "@babel/helper-define-polyfill-provider": "^0.3.3" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" + }, + "node_modules/base64-js": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", + "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "peer": true + }, + "node_modules/batch": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/batch/-/batch-0.6.1.tgz", + "integrity": "sha512-x+VAiMRL6UPkx+kudNvxTl6hB2XNNCG2r+7wixVfIYwu/2HKRXimwQyaumLjMveWvT2Hkd/cAJw+QBMfJ/EKVw==", + "peer": true + }, + "node_modules/big.js": { + "version": "5.2.2", + "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz", + "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==", + "peer": true, + "engines": { + "node": "*" + } + }, + "node_modules/binary-extensions": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.3.0.tgz", + "integrity": "sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==", + "peer": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/bl": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz", + "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==", + "peer": true, + "dependencies": { + "buffer": "^5.5.0", + "inherits": "^2.0.4", + "readable-stream": "^3.4.0" + } + }, + "node_modules/body-parser": { + "version": "1.20.3", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.3.tgz", + "integrity": "sha512-7rAxByjUMqQ3/bHJy7D6OGXvx/MMc4IqBn/X0fcM1QUcAItpZrBEYhWGem+tzXH90c+G01ypMcYJBO9Y30203g==", + "peer": true, + "dependencies": { + "bytes": "3.1.2", + "content-type": "~1.0.5", + "debug": "2.6.9", + "depd": "2.0.0", + "destroy": "1.2.0", + "http-errors": "2.0.0", + "iconv-lite": "0.4.24", + "on-finished": "2.4.1", + "qs": "6.13.0", + "raw-body": "2.5.2", + "type-is": "~1.6.18", + "unpipe": "1.0.0" + }, + "engines": { + "node": ">= 0.8", + "npm": "1.2.8000 || >= 1.4.16" + } + }, + "node_modules/body-parser/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "peer": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/body-parser/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "peer": true + }, + "node_modules/bonjour-service": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/bonjour-service/-/bonjour-service-1.3.0.tgz", + "integrity": "sha512-3YuAUiSkWykd+2Azjgyxei8OWf8thdn8AITIog2M4UICzoqfjlqr64WIjEXZllf/W6vK1goqleSR6brGomxQqA==", + "peer": true, + "dependencies": { + "fast-deep-equal": "^3.1.3", + "multicast-dns": "^7.2.5" + } + }, + "node_modules/boolbase": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", + "integrity": "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==", + "peer": true + }, + "node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/braces": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", + "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", + "peer": true, + "dependencies": { + "fill-range": "^7.1.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/browserslist": { + "version": "4.24.4", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.24.4.tgz", + "integrity": "sha512-KDi1Ny1gSePi1vm0q4oxSF8b4DR44GF4BbmS2YdhPLOEqd8pDviZOGH/GsmRwoWJ2+5Lr085X7naowMwKHDG1A==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "peer": true, + "dependencies": { + "caniuse-lite": "^1.0.30001688", + "electron-to-chromium": "^1.5.73", + "node-releases": "^2.0.19", + "update-browserslist-db": "^1.1.1" + }, + "bin": { + "browserslist": "cli.js" + }, + "engines": { + "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" + } + }, + "node_modules/buffer": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", + "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "peer": true, + "dependencies": { + "base64-js": "^1.3.1", + "ieee754": "^1.1.13" + } + }, + "node_modules/buffer-from": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", + "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", + "peer": true + }, + "node_modules/builtin-modules": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-3.3.0.tgz", + "integrity": "sha512-zhaCDicdLuWN5UbN5IMnFqNMhNfo919sH85y2/ea+5Yg9TsTkeZxpL+JLbp6cgYFS4sRLp3YV4S6yDuqVWHYOw==", + "peer": true, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/bytes": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", + "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", + "peer": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/cacache": { + "version": "16.1.2", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-16.1.2.tgz", + "integrity": "sha512-Xx+xPlfCZIUHagysjjOAje9nRo8pRDczQCcXb4J2O0BLtH+xeVue6ba4y1kfJfQMAnM2mkcoMIAyOctlaRGWYA==", + "peer": true, + "dependencies": { + "@npmcli/fs": "^2.1.0", + "@npmcli/move-file": "^2.0.0", + "chownr": "^2.0.0", + "fs-minipass": "^2.1.0", + "glob": "^8.0.1", + "infer-owner": "^1.0.4", + "lru-cache": "^7.7.1", + "minipass": "^3.1.6", + "minipass-collect": "^1.0.2", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "mkdirp": "^1.0.4", + "p-map": "^4.0.0", + "promise-inflight": "^1.0.1", + "rimraf": "^3.0.2", + "ssri": "^9.0.0", + "tar": "^6.1.11", + "unique-filename": "^1.1.1" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/cacache/node_modules/lru-cache": { + "version": "7.18.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", + "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", + "peer": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/call-bind-apply-helpers": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.2.tgz", + "integrity": "sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==", + "peer": true, + "dependencies": { + "es-errors": "^1.3.0", + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/call-bound": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/call-bound/-/call-bound-1.0.4.tgz", + "integrity": "sha512-+ys997U96po4Kx/ABpBCqhA9EuxJaQWDQg7295H4hBphv3IZg0boBKuwYpt4YXp6MZ5AmZQnU/tyMTlRpaSejg==", + "peer": true, + "dependencies": { + "call-bind-apply-helpers": "^1.0.2", + "get-intrinsic": "^1.3.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "peer": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "peer": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/caniuse-lite": { + "version": "1.0.30001715", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001715.tgz", + "integrity": "sha512-7ptkFGMm2OAOgvZpwgA4yjQ5SQbrNVGdRjzH0pBdy1Fasvcr+KAeECmbCAECzTuDuoX0FCY8KzUxjf9+9kfZEw==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/caniuse-lite" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "peer": true + }, + "node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "peer": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/chardet": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz", + "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==", + "peer": true + }, + "node_modules/chokidar": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz", + "integrity": "sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==", + "peer": true, + "dependencies": { + "anymatch": "~3.1.2", + "braces": "~3.0.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" + }, + "engines": { + "node": ">= 8.10.0" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + } + }, + "node_modules/chownr": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", + "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==", + "peer": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/chrome-trace-event": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.4.tgz", + "integrity": "sha512-rNjApaLzuwaOTjCiT8lSDdGN1APCiqkChLMJxJPWLunPAt5fy8xgU9/jNOchV84wfIxrA0lRQB7oCT8jrn/wrQ==", + "peer": true, + "engines": { + "node": ">=6.0" + } + }, + "node_modules/clean-stack": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", + "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", + "peer": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/cli-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz", + "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", + "peer": true, + "dependencies": { + "restore-cursor": "^3.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/cli-spinners": { + "version": "2.9.2", + "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.9.2.tgz", + "integrity": "sha512-ywqV+5MmyL4E7ybXgKys4DugZbX0FC6LnwrhjuykIjnK9k8OQacQ7axGKnjDXWNhns0xot3bZI5h55H8yo9cJg==", + "peer": true, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/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==", + "peer": true, + "engines": { + "node": ">= 10" + } + }, + "node_modules/cliui": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", + "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", + "peer": true, + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.1", + "wrap-ansi": "^7.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/clone": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz", + "integrity": "sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg==", + "peer": true, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/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==", + "peer": true, + "dependencies": { + "is-plain-object": "^2.0.4", + "kind-of": "^6.0.2", + "shallow-clone": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "peer": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "peer": true + }, + "node_modules/colorette": { + "version": "2.0.20", + "resolved": "https://registry.npmjs.org/colorette/-/colorette-2.0.20.tgz", + "integrity": "sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==", + "peer": true + }, + "node_modules/commander": { + "version": "9.5.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-9.5.0.tgz", + "integrity": "sha512-KRs7WVDKg86PWiuAqhDrAQnTXZKraVcCc6vFdL14qrZ/DcWwuRo7VoiYXalXO7S5GKpqYiVEwCbgFDfxNHKJBQ==", + "peer": true, + "engines": { + "node": "^12.20.0 || >=14" + } + }, + "node_modules/commondir": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", + "integrity": "sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==" + }, + "node_modules/compressible": { + "version": "2.0.18", + "resolved": "https://registry.npmjs.org/compressible/-/compressible-2.0.18.tgz", + "integrity": "sha512-AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg==", + "peer": true, + "dependencies": { + "mime-db": ">= 1.43.0 < 2" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/compression": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/compression/-/compression-1.8.0.tgz", + "integrity": "sha512-k6WLKfunuqCYD3t6AsuPGvQWaKwuLLh2/xHNcX4qE+vIfDNXpSqnrhwA7O53R7WVQUnt8dVAIW+YHr7xTgOgGA==", + "peer": true, + "dependencies": { + "bytes": "3.1.2", + "compressible": "~2.0.18", + "debug": "2.6.9", + "negotiator": "~0.6.4", + "on-headers": "~1.0.2", + "safe-buffer": "5.2.1", + "vary": "~1.1.2" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/compression/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "peer": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/compression/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "peer": true + }, + "node_modules/concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", + "peer": true + }, + "node_modules/connect-history-api-fallback": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/connect-history-api-fallback/-/connect-history-api-fallback-2.0.0.tgz", + "integrity": "sha512-U73+6lQFmfiNPrYbXqr6kZ1i1wiRqXnp2nhMsINseWXO8lDau0LGEffJ8kQi4EjLZympVgRdvqjAgiZ1tgzDDA==", + "peer": true, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/content-disposition": { + "version": "0.5.4", + "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz", + "integrity": "sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==", + "peer": true, + "dependencies": { + "safe-buffer": "5.2.1" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/content-type": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.5.tgz", + "integrity": "sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==", + "peer": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/convert-source-map": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.9.0.tgz", + "integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==", + "peer": true + }, + "node_modules/cookie": { + "version": "0.7.1", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.7.1.tgz", + "integrity": "sha512-6DnInpx7SJ2AK3+CTUE/ZM0vWTUboZCegxhC2xiIydHR9jNuTAASBrfEpHhiGOZw/nX51bHt6YQl8jsGo4y/0w==", + "peer": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/cookie-signature": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", + "integrity": "sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==", + "peer": true + }, + "node_modules/copy-anything": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/copy-anything/-/copy-anything-2.0.6.tgz", + "integrity": "sha512-1j20GZTsvKNkc4BY3NpMOM8tt///wY3FpIzozTOFO2ffuZcV61nojHXVKIy3WM+7ADCy5FVhdZYHYDdgTU0yJw==", + "peer": true, + "dependencies": { + "is-what": "^3.14.1" + }, + "funding": { + "url": "https://github.com/sponsors/mesqueeb" + } + }, + "node_modules/copy-webpack-plugin": { + "version": "11.0.0", + "resolved": "https://registry.npmjs.org/copy-webpack-plugin/-/copy-webpack-plugin-11.0.0.tgz", + "integrity": "sha512-fX2MWpamkW0hZxMEg0+mYnA40LTosOSa5TqZ9GYIBzyJa9C3QUaMPSE2xAi/buNr8u89SfD9wHSQVBzrRa/SOQ==", + "peer": true, + "dependencies": { + "fast-glob": "^3.2.11", + "glob-parent": "^6.0.1", + "globby": "^13.1.1", + "normalize-path": "^3.0.0", + "schema-utils": "^4.0.0", + "serialize-javascript": "^6.0.0" + }, + "engines": { + "node": ">= 14.15.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^5.1.0" + } + }, + "node_modules/copy-webpack-plugin/node_modules/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==", + "peer": true, + "dependencies": { + "is-glob": "^4.0.3" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/copy-webpack-plugin/node_modules/schema-utils": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.3.1.tgz", + "integrity": "sha512-jjlZ7UknkyQxGnHF1w8wDgWfdtnW0hBX7tmDp04zBwDBZ/6tPJI1+RWfBHGMA4+0nAjGptp+eDpIYP6mldJbqg==", + "peer": true, + "dependencies": { + "@types/json-schema": "^7.0.9", + "ajv": "^8.9.0", + "ajv-formats": "^2.1.1", + "ajv-keywords": "^5.1.0" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/core-js-compat": { + "version": "3.41.0", + "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.41.0.tgz", + "integrity": "sha512-RFsU9LySVue9RTwdDVX/T0e2Y6jRYWXERKElIjpuEOEnxaXffI0X7RUwVzfYLfzuLXSNJDYoRYUAmRUcyln20A==", + "peer": true, + "dependencies": { + "browserslist": "^4.24.4" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/core-js" + } + }, + "node_modules/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==", + "peer": true + }, + "node_modules/cosmiconfig": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.1.0.tgz", + "integrity": "sha512-AdmX6xUzdNASswsFtmwSt7Vj8po9IuqXm0UXz7QKPuEUmPB4XyjGfaAr2PSuELMwkRMVH1EpIkX5bTZGRB3eCA==", + "peer": true, + "dependencies": { + "@types/parse-json": "^4.0.0", + "import-fresh": "^3.2.1", + "parse-json": "^5.0.0", + "path-type": "^4.0.0", + "yaml": "^1.10.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/critters": { + "version": "0.0.16", + "resolved": "https://registry.npmjs.org/critters/-/critters-0.0.16.tgz", + "integrity": "sha512-JwjgmO6i3y6RWtLYmXwO5jMd+maZt8Tnfu7VVISmEWyQqfLpB8soBswf8/2bu6SBXxtKA68Al3c+qIG1ApT68A==", + "peer": true, + "dependencies": { + "chalk": "^4.1.0", + "css-select": "^4.2.0", + "parse5": "^6.0.1", + "parse5-htmlparser2-tree-adapter": "^6.0.1", + "postcss": "^8.3.7", + "pretty-bytes": "^5.3.0" + } + }, + "node_modules/critters/node_modules/parse5": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", + "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==", + "peer": true + }, + "node_modules/cross-spawn": { + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", + "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==", + "peer": true, + "dependencies": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/css-blank-pseudo": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/css-blank-pseudo/-/css-blank-pseudo-3.0.3.tgz", + "integrity": "sha512-VS90XWtsHGqoM0t4KpH053c4ehxZ2E6HtGI7x68YFV0pTo/QmkV/YFA+NnlvK8guxZVNWGQhVNJGC39Q8XF4OQ==", + "peer": true, + "dependencies": { + "postcss-selector-parser": "^6.0.9" + }, + "bin": { + "css-blank-pseudo": "dist/cli.cjs" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "peerDependencies": { + "postcss": "^8.4" + } + }, + "node_modules/css-blank-pseudo/node_modules/postcss-selector-parser": { + "version": "6.1.2", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.1.2.tgz", + "integrity": "sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg==", + "peer": true, + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/css-has-pseudo": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/css-has-pseudo/-/css-has-pseudo-3.0.4.tgz", + "integrity": "sha512-Vse0xpR1K9MNlp2j5w1pgWIJtm1a8qS0JwS9goFYcImjlHEmywP9VUF05aGBXzGpDJF86QXk4L0ypBmwPhGArw==", + "peer": true, + "dependencies": { + "postcss-selector-parser": "^6.0.9" + }, + "bin": { + "css-has-pseudo": "dist/cli.cjs" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "peerDependencies": { + "postcss": "^8.4" + } + }, + "node_modules/css-has-pseudo/node_modules/postcss-selector-parser": { + "version": "6.1.2", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.1.2.tgz", + "integrity": "sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg==", + "peer": true, + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/css-loader": { + "version": "6.7.1", + "resolved": "https://registry.npmjs.org/css-loader/-/css-loader-6.7.1.tgz", + "integrity": "sha512-yB5CNFa14MbPJcomwNh3wLThtkZgcNyI2bNMRt8iE5Z8Vwl7f8vQXFAzn2HDOJvtDq2NTZBUGMSUNNyrv3/+cw==", + "peer": true, + "dependencies": { + "icss-utils": "^5.1.0", + "postcss": "^8.4.7", + "postcss-modules-extract-imports": "^3.0.0", + "postcss-modules-local-by-default": "^4.0.0", + "postcss-modules-scope": "^3.0.0", + "postcss-modules-values": "^4.0.0", + "postcss-value-parser": "^4.2.0", + "semver": "^7.3.5" + }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^5.0.0" + } + }, + "node_modules/css-prefers-color-scheme": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/css-prefers-color-scheme/-/css-prefers-color-scheme-6.0.3.tgz", + "integrity": "sha512-4BqMbZksRkJQx2zAjrokiGMd07RqOa2IxIrrN10lyBe9xhn9DEvjUK79J6jkeiv9D9hQFXKb6g1jwU62jziJZA==", + "peer": true, + "bin": { + "css-prefers-color-scheme": "dist/cli.cjs" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "peerDependencies": { + "postcss": "^8.4" + } + }, + "node_modules/css-select": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/css-select/-/css-select-4.3.0.tgz", + "integrity": "sha512-wPpOYtnsVontu2mODhA19JrqWxNsfdatRKd64kmpRbQgh1KtItko5sTnEpPdpSaJszTOhEMlF/RPz28qj4HqhQ==", + "peer": true, + "dependencies": { + "boolbase": "^1.0.0", + "css-what": "^6.0.1", + "domhandler": "^4.3.1", + "domutils": "^2.8.0", + "nth-check": "^2.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/fb55" + } + }, + "node_modules/css-what": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/css-what/-/css-what-6.1.0.tgz", + "integrity": "sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw==", + "peer": true, + "engines": { + "node": ">= 6" + }, + "funding": { + "url": "https://github.com/sponsors/fb55" + } + }, + "node_modules/cssdb": { + "version": "7.11.2", + "resolved": "https://registry.npmjs.org/cssdb/-/cssdb-7.11.2.tgz", + "integrity": "sha512-lhQ32TFkc1X4eTefGfYPvgovRSzIMofHkigfH8nWtyRL4XJLsRhJFreRvEgKzept7x1rjBuy3J/MurXLaFxW/A==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + } + ], + "peer": true + }, + "node_modules/cssesc": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", + "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", + "peer": true, + "bin": { + "cssesc": "bin/cssesc" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/cuint": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/cuint/-/cuint-0.2.2.tgz", + "integrity": "sha512-d4ZVpCW31eWwCMe1YT3ur7mUDnTXbgwyzaL320DrcRT45rfjYxkt5QWLrmOJ+/UEAI2+fQgKe/fCjR8l4TpRgw==", + "peer": true + }, + "node_modules/debug": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.0.tgz", + "integrity": "sha512-6WTZ/IxCY/T6BALoZHaE4ctp9xm+Z5kY/pzYaCHRFeyVhojxlrm+46y68HA6hr0TcwEssoxNiDEUJQjfPZ/RYA==", + "peer": true, + "dependencies": { + "ms": "^2.1.3" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/decode-uri-component": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.2.tgz", + "integrity": "sha512-FqUYQ+8o158GyGTrMFJms9qh3CqTKvAqgqsTnkLI8sKu0028orqBhxNMFkFen0zGyg6epACD32pjVk58ngIErQ==", + "peer": true, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/deepmerge": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.1.tgz", + "integrity": "sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/default-gateway": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/default-gateway/-/default-gateway-6.0.3.tgz", + "integrity": "sha512-fwSOJsbbNzZ/CUFpqFBqYfYNLj1NbMPm8MMCIzHjC83iSJRBEGmDUxU+WP661BaBQImeC2yHwXtz+P/O9o+XEg==", + "peer": true, + "dependencies": { + "execa": "^5.0.0" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/defaults": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/defaults/-/defaults-1.0.4.tgz", + "integrity": "sha512-eFuaLoy/Rxalv2kr+lqMlUnrDWV+3j4pljOIJgLIhI058IQfWJ7vXhyEIHu+HtC738klGALYxOKDO0bQP3tg8A==", + "peer": true, + "dependencies": { + "clone": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/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==", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/depd": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", + "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==", + "peer": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/dependency-graph": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/dependency-graph/-/dependency-graph-0.11.0.tgz", + "integrity": "sha512-JeMq7fEshyepOWDfcfHK06N3MhyPhz++vtqWhMT5O9A3K42rdsEDpfdVqjaqaAhsw6a+ZqeDvQVtD0hFHQWrzg==", + "peer": true, + "engines": { + "node": ">= 0.6.0" + } + }, + "node_modules/destroy": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz", + "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==", + "peer": true, + "engines": { + "node": ">= 0.8", + "npm": "1.2.8000 || >= 1.4.16" + } + }, + "node_modules/detect-node": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/detect-node/-/detect-node-2.1.0.tgz", + "integrity": "sha512-T0NIuQpnTvFDATNuHN5roPwSBG83rFsuO+MXXH9/3N1eFbn4wcPjttvjMLEPWJ0RGUYgQE7cGgS3tNxbqCGM7g==", + "peer": true + }, + "node_modules/dir-glob": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", + "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", + "peer": true, + "dependencies": { + "path-type": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/dns-packet": { + "version": "5.6.1", + "resolved": "https://registry.npmjs.org/dns-packet/-/dns-packet-5.6.1.tgz", + "integrity": "sha512-l4gcSouhcgIKRvyy99RNVOgxXiicE+2jZoNmaNmZ6JXiGajBOJAesk1OBlJuM5k2c+eudGdLxDqXuPCKIj6kpw==", + "peer": true, + "dependencies": { + "@leichtgewicht/ip-codec": "^2.0.1" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/dom-serializer": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.4.1.tgz", + "integrity": "sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag==", + "peer": true, + "dependencies": { + "domelementtype": "^2.0.1", + "domhandler": "^4.2.0", + "entities": "^2.0.0" + }, + "funding": { + "url": "https://github.com/cheeriojs/dom-serializer?sponsor=1" + } + }, + "node_modules/domelementtype": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz", + "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/fb55" + } + ], + "peer": true + }, + "node_modules/domhandler": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.3.1.tgz", + "integrity": "sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==", + "peer": true, + "dependencies": { + "domelementtype": "^2.2.0" + }, + "engines": { + "node": ">= 4" + }, + "funding": { + "url": "https://github.com/fb55/domhandler?sponsor=1" + } + }, + "node_modules/domutils": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-2.8.0.tgz", + "integrity": "sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==", + "peer": true, + "dependencies": { + "dom-serializer": "^1.0.1", + "domelementtype": "^2.2.0", + "domhandler": "^4.2.0" + }, + "funding": { + "url": "https://github.com/fb55/domutils?sponsor=1" + } + }, + "node_modules/dunder-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.1.tgz", + "integrity": "sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==", + "peer": true, + "dependencies": { + "call-bind-apply-helpers": "^1.0.1", + "es-errors": "^1.3.0", + "gopd": "^1.2.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/ee-first": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", + "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==", + "peer": true + }, + "node_modules/electron-to-chromium": { + "version": "1.5.140", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.140.tgz", + "integrity": "sha512-o82Rj+ONp4Ip7Cl1r7lrqx/pXhbp/lh9DpKcMNscFJdh8ebyRofnc7Sh01B4jx403RI0oqTBvlZ7OBIZLMr2+Q==", + "peer": true + }, + "node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "peer": true + }, + "node_modules/emojis-list": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-3.0.0.tgz", + "integrity": "sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==", + "peer": true, + "engines": { + "node": ">= 4" + } + }, + "node_modules/encodeurl": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-2.0.0.tgz", + "integrity": "sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg==", + "peer": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/enhanced-resolve": { + "version": "5.18.1", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.18.1.tgz", + "integrity": "sha512-ZSW3ma5GkcQBIpwZTSRAI8N71Uuwgs93IezB7mf7R60tC8ZbJideoDNKjHn2O9KIlx6rkGTTEk1xUCK2E1Y2Yg==", + "peer": true, + "dependencies": { + "graceful-fs": "^4.2.4", + "tapable": "^2.2.0" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/entities": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", + "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==", + "peer": true, + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } + }, + "node_modules/errno": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/errno/-/errno-0.1.8.tgz", + "integrity": "sha512-dJ6oBr5SQ1VSd9qkk7ByRgb/1SH4JZjCHSW/mr63/QcXO9zLVxvJ6Oy13nio03rxpSnVDDjFor75SjVeZWPW/A==", + "optional": true, + "peer": true, + "dependencies": { + "prr": "~1.0.1" + }, + "bin": { + "errno": "cli.js" + } + }, + "node_modules/error-ex": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", + "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", + "peer": true, + "dependencies": { + "is-arrayish": "^0.2.1" + } + }, + "node_modules/es-define-property": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.1.tgz", + "integrity": "sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==", + "peer": true, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-errors": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz", + "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==", + "peer": true, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-module-lexer": { + "version": "0.9.3", + "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-0.9.3.tgz", + "integrity": "sha512-1HQ2M2sPtxwnvOvT1ZClHyQDiggdNjURWpY2we6aMKCQiUVxTmVs2UYPLIrD84sS+kMdUwfBSylbJPwNnBrnHQ==", + "peer": true + }, + "node_modules/es-object-atoms": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.1.1.tgz", + "integrity": "sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==", + "peer": true, + "dependencies": { + "es-errors": "^1.3.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/esbuild": { + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.15.5.tgz", + "integrity": "sha512-VSf6S1QVqvxfIsSKb3UKr3VhUCis7wgDbtF4Vd9z84UJr05/Sp2fRKmzC+CSPG/dNAPPJZ0BTBLTT1Fhd6N9Gg==", + "hasInstallScript": true, + "optional": true, + "peer": true, + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { + "node": ">=12" + }, + "optionalDependencies": { + "@esbuild/linux-loong64": "0.15.5", + "esbuild-android-64": "0.15.5", + "esbuild-android-arm64": "0.15.5", + "esbuild-darwin-64": "0.15.5", + "esbuild-darwin-arm64": "0.15.5", + "esbuild-freebsd-64": "0.15.5", + "esbuild-freebsd-arm64": "0.15.5", + "esbuild-linux-32": "0.15.5", + "esbuild-linux-64": "0.15.5", + "esbuild-linux-arm": "0.15.5", + "esbuild-linux-arm64": "0.15.5", + "esbuild-linux-mips64le": "0.15.5", + "esbuild-linux-ppc64le": "0.15.5", + "esbuild-linux-riscv64": "0.15.5", + "esbuild-linux-s390x": "0.15.5", + "esbuild-netbsd-64": "0.15.5", + "esbuild-openbsd-64": "0.15.5", + "esbuild-sunos-64": "0.15.5", + "esbuild-windows-32": "0.15.5", + "esbuild-windows-64": "0.15.5", + "esbuild-windows-arm64": "0.15.5" + } + }, + "node_modules/esbuild-android-64": { + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-android-64/-/esbuild-android-64-0.15.5.tgz", + "integrity": "sha512-dYPPkiGNskvZqmIK29OPxolyY3tp+c47+Fsc2WYSOVjEPWNCHNyqhtFqQadcXMJDQt8eN0NMDukbyQgFcHquXg==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "android" + ], + "peer": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild-android-arm64": { + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-android-arm64/-/esbuild-android-arm64-0.15.5.tgz", + "integrity": "sha512-YyEkaQl08ze3cBzI/4Cm1S+rVh8HMOpCdq8B78JLbNFHhzi4NixVN93xDrHZLztlocEYqi45rHHCgA8kZFidFg==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "android" + ], + "peer": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild-darwin-64": { + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-darwin-64/-/esbuild-darwin-64-0.15.5.tgz", + "integrity": "sha512-Cr0iIqnWKx3ZTvDUAzG0H/u9dWjLE4c2gTtRLz4pqOBGjfjqdcZSfAObFzKTInLLSmD0ZV1I/mshhPoYSBMMCQ==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "darwin" + ], + "peer": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild-darwin-arm64": { + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-darwin-arm64/-/esbuild-darwin-arm64-0.15.5.tgz", + "integrity": "sha512-WIfQkocGtFrz7vCu44ypY5YmiFXpsxvz2xqwe688jFfSVCnUsCn2qkEVDo7gT8EpsLOz1J/OmqjExePL1dr1Kg==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "darwin" + ], + "peer": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild-freebsd-64": { + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-freebsd-64/-/esbuild-freebsd-64-0.15.5.tgz", + "integrity": "sha512-M5/EfzV2RsMd/wqwR18CELcenZ8+fFxQAAEO7TJKDmP3knhWSbD72ILzrXFMMwshlPAS1ShCZ90jsxkm+8FlaA==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "freebsd" + ], + "peer": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild-freebsd-arm64": { + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-freebsd-arm64/-/esbuild-freebsd-arm64-0.15.5.tgz", + "integrity": "sha512-2JQQ5Qs9J0440F/n/aUBNvY6lTo4XP/4lt1TwDfHuo0DY3w5++anw+jTjfouLzbJmFFiwmX7SmUhMnysocx96w==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "freebsd" + ], + "peer": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild-linux-32": { + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-linux-32/-/esbuild-linux-32-0.15.5.tgz", + "integrity": "sha512-gO9vNnIN0FTUGjvTFucIXtBSr1Woymmx/aHQtuU+2OllGU6YFLs99960UD4Dib1kFovVgs59MTXwpFdVoSMZoQ==", + "cpu": [ + "ia32" + ], + "optional": true, + "os": [ + "linux" + ], + "peer": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild-linux-64": { + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-linux-64/-/esbuild-linux-64-0.15.5.tgz", + "integrity": "sha512-ne0GFdNLsm4veXbTnYAWjbx3shpNKZJUd6XpNbKNUZaNllDZfYQt0/zRqOg0sc7O8GQ+PjSMv9IpIEULXVTVmg==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "linux" + ], + "peer": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild-linux-arm": { + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-linux-arm/-/esbuild-linux-arm-0.15.5.tgz", + "integrity": "sha512-wvAoHEN+gJ/22gnvhZnS/+2H14HyAxM07m59RSLn3iXrQsdS518jnEWRBnJz3fR6BJa+VUTo0NxYjGaNt7RA7Q==", + "cpu": [ + "arm" + ], + "optional": true, + "os": [ + "linux" + ], + "peer": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild-linux-arm64": { + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-linux-arm64/-/esbuild-linux-arm64-0.15.5.tgz", + "integrity": "sha512-7EgFyP2zjO065XTfdCxiXVEk+f83RQ1JsryN1X/VSX2li9rnHAt2swRbpoz5Vlrl6qjHrCmq5b6yxD13z6RheA==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "linux" + ], + "peer": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild-linux-mips64le": { + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-linux-mips64le/-/esbuild-linux-mips64le-0.15.5.tgz", + "integrity": "sha512-KdnSkHxWrJ6Y40ABu+ipTZeRhFtc8dowGyFsZY5prsmMSr1ZTG9zQawguN4/tunJ0wy3+kD54GaGwdcpwWAvZQ==", + "cpu": [ + "mips64el" + ], + "optional": true, + "os": [ + "linux" + ], + "peer": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild-linux-ppc64le": { + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-linux-ppc64le/-/esbuild-linux-ppc64le-0.15.5.tgz", + "integrity": "sha512-QdRHGeZ2ykl5P0KRmfGBZIHmqcwIsUKWmmpZTOq573jRWwmpfRmS7xOhmDHBj9pxv+6qRMH8tLr2fe+ZKQvCYw==", + "cpu": [ + "ppc64" + ], + "optional": true, + "os": [ + "linux" + ], + "peer": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild-linux-riscv64": { + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-linux-riscv64/-/esbuild-linux-riscv64-0.15.5.tgz", + "integrity": "sha512-p+WE6RX+jNILsf+exR29DwgV6B73khEQV0qWUbzxaycxawZ8NE0wA6HnnTxbiw5f4Gx9sJDUBemh9v49lKOORA==", + "cpu": [ + "riscv64" + ], + "optional": true, + "os": [ + "linux" + ], + "peer": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild-linux-s390x": { + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-linux-s390x/-/esbuild-linux-s390x-0.15.5.tgz", + "integrity": "sha512-J2ngOB4cNzmqLHh6TYMM/ips8aoZIuzxJnDdWutBw5482jGXiOzsPoEF4j2WJ2mGnm7FBCO4StGcwzOgic70JQ==", + "cpu": [ + "s390x" + ], + "optional": true, + "os": [ + "linux" + ], + "peer": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild-netbsd-64": { + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-netbsd-64/-/esbuild-netbsd-64-0.15.5.tgz", + "integrity": "sha512-MmKUYGDizYjFia0Rwt8oOgmiFH7zaYlsoQ3tIOfPxOqLssAsEgG0MUdRDm5lliqjiuoog8LyDu9srQk5YwWF3w==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "netbsd" + ], + "peer": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild-openbsd-64": { + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-openbsd-64/-/esbuild-openbsd-64-0.15.5.tgz", + "integrity": "sha512-2mMFfkLk3oPWfopA9Plj4hyhqHNuGyp5KQyTT9Rc8hFd8wAn5ZrbJg+gNcLMo2yzf8Uiu0RT6G9B15YN9WQyMA==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "openbsd" + ], + "peer": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild-sunos-64": { + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-sunos-64/-/esbuild-sunos-64-0.15.5.tgz", + "integrity": "sha512-2sIzhMUfLNoD+rdmV6AacilCHSxZIoGAU2oT7XmJ0lXcZWnCvCtObvO6D4puxX9YRE97GodciRGDLBaiC6x1SA==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "sunos" + ], + "peer": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild-wasm": { + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-wasm/-/esbuild-wasm-0.15.5.tgz", + "integrity": "sha512-lTJOEKekN/4JI/eOEq0wLcx53co2N6vaT/XjBz46D1tvIVoUEyM0o2K6txW6gEotf31szFD/J1PbxmnbkGlK9A==", + "peer": true, + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild-windows-32": { + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-windows-32/-/esbuild-windows-32-0.15.5.tgz", + "integrity": "sha512-e+duNED9UBop7Vnlap6XKedA/53lIi12xv2ebeNS4gFmu7aKyTrok7DPIZyU5w/ftHD4MUDs5PJUkQPP9xJRzg==", + "cpu": [ + "ia32" + ], + "optional": true, + "os": [ + "win32" + ], + "peer": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild-windows-64": { + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-windows-64/-/esbuild-windows-64-0.15.5.tgz", + "integrity": "sha512-v+PjvNtSASHOjPDMIai9Yi+aP+Vwox+3WVdg2JB8N9aivJ7lyhp4NVU+J0MV2OkWFPnVO8AE/7xH+72ibUUEnw==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "win32" + ], + "peer": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/esbuild-windows-arm64": { + "version": "0.15.5", + "resolved": "https://registry.npmjs.org/esbuild-windows-arm64/-/esbuild-windows-arm64-0.15.5.tgz", + "integrity": "sha512-Yz8w/D8CUPYstvVQujByu6mlf48lKmXkq6bkeSZZxTA626efQOJb26aDGLzmFWx6eg/FwrXgt6SZs9V8Pwy/aA==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "win32" + ], + "peer": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/escalade": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz", + "integrity": "sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==", + "peer": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/escape-html": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", + "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==", + "peer": true + }, + "node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "peer": true, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/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==", + "peer": true, + "dependencies": { + "esrecurse": "^4.3.0", + "estraverse": "^4.1.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", + "peer": true, + "bin": { + "esparse": "bin/esparse.js", + "esvalidate": "bin/esvalidate.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/esrecurse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", + "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", + "peer": true, + "dependencies": { + "estraverse": "^5.2.0" + }, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/esrecurse/node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "peer": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/estraverse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", + "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", + "peer": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/estree-walker": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz", + "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==" + }, + "node_modules/esutils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", + "peer": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/etag": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", + "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==", + "peer": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/eventemitter-asyncresource": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/eventemitter-asyncresource/-/eventemitter-asyncresource-1.0.0.tgz", + "integrity": "sha512-39F7TBIV0G7gTelxwbEqnwhp90eqCPON1k0NwNfwhgKn4Co4ybUbj2pECcXT0B3ztRKZ7Pw1JujUUgmQJHcVAQ==", + "peer": true + }, + "node_modules/eventemitter3": { + "version": "4.0.7", + "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.7.tgz", + "integrity": "sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==", + "peer": true + }, + "node_modules/events": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", + "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", + "peer": true, + "engines": { + "node": ">=0.8.x" + } + }, + "node_modules/execa": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz", + "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", + "peer": true, + "dependencies": { + "cross-spawn": "^7.0.3", + "get-stream": "^6.0.0", + "human-signals": "^2.1.0", + "is-stream": "^2.0.0", + "merge-stream": "^2.0.0", + "npm-run-path": "^4.0.1", + "onetime": "^5.1.2", + "signal-exit": "^3.0.3", + "strip-final-newline": "^2.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sindresorhus/execa?sponsor=1" + } + }, + "node_modules/express": { + "version": "4.21.2", + "resolved": "https://registry.npmjs.org/express/-/express-4.21.2.tgz", + "integrity": "sha512-28HqgMZAmih1Czt9ny7qr6ek2qddF4FclbMzwhCREB6OFfH+rXAnuNCwo1/wFvrtbgsQDb4kSbX9de9lFbrXnA==", + "peer": true, + "dependencies": { + "accepts": "~1.3.8", + "array-flatten": "1.1.1", + "body-parser": "1.20.3", + "content-disposition": "0.5.4", + "content-type": "~1.0.4", + "cookie": "0.7.1", + "cookie-signature": "1.0.6", + "debug": "2.6.9", + "depd": "2.0.0", + "encodeurl": "~2.0.0", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "finalhandler": "1.3.1", + "fresh": "0.5.2", + "http-errors": "2.0.0", + "merge-descriptors": "1.0.3", + "methods": "~1.1.2", + "on-finished": "2.4.1", + "parseurl": "~1.3.3", + "path-to-regexp": "0.1.12", + "proxy-addr": "~2.0.7", + "qs": "6.13.0", + "range-parser": "~1.2.1", + "safe-buffer": "5.2.1", + "send": "0.19.0", + "serve-static": "1.16.2", + "setprototypeof": "1.2.0", + "statuses": "2.0.1", + "type-is": "~1.6.18", + "utils-merge": "1.0.1", + "vary": "~1.1.2" + }, + "engines": { + "node": ">= 0.10.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/express" + } + }, + "node_modules/express/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "peer": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/express/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "peer": true + }, + "node_modules/external-editor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz", + "integrity": "sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==", + "peer": true, + "dependencies": { + "chardet": "^0.7.0", + "iconv-lite": "^0.4.24", + "tmp": "^0.0.33" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/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==", + "peer": true + }, + "node_modules/fast-glob": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.3.tgz", + "integrity": "sha512-7MptL8U0cqcFdzIzwOTHoilX9x5BrNqye7Z/LuC7kCMRio1EMSyqRK3BEAUD7sXRq4iT4AzTVuZdhgQ2TCvYLg==", + "peer": true, + "dependencies": { + "@nodelib/fs.stat": "^2.0.2", + "@nodelib/fs.walk": "^1.2.3", + "glob-parent": "^5.1.2", + "merge2": "^1.3.0", + "micromatch": "^4.0.8" + }, + "engines": { + "node": ">=8.6.0" + } + }, + "node_modules/fast-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==", + "peer": true + }, + "node_modules/fastq": { + "version": "1.19.1", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.19.1.tgz", + "integrity": "sha512-GwLTyxkCXjXbxqIhTsMI2Nui8huMPtnxg7krajPJAjnEG/iiOS7i+zCtWGZR9G0NBKbXKh6X9m9UIsYX/N6vvQ==", + "peer": true, + "dependencies": { + "reusify": "^1.0.4" + } + }, + "node_modules/faye-websocket": { + "version": "0.11.4", + "resolved": "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.11.4.tgz", + "integrity": "sha512-CzbClwlXAuiRQAlUyfqPgvPoNKTckTPGfwZV4ZdAhVcP2lh9KUxJg2b5GkE7XbjKQ3YJnQ9z6D9ntLAlB+tP8g==", + "peer": true, + "dependencies": { + "websocket-driver": ">=0.5.1" + }, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/figures": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz", + "integrity": "sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==", + "peer": true, + "dependencies": { + "escape-string-regexp": "^1.0.5" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/fill-range": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", + "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", + "peer": true, + "dependencies": { + "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/finalhandler": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.3.1.tgz", + "integrity": "sha512-6BN9trH7bp3qvnrRyzsBz+g3lZxTNZTbVO2EV1CS0WIcDbawYVdYvGflME/9QP0h0pYlCDBCTjYa9nZzMDpyxQ==", + "peer": true, + "dependencies": { + "debug": "2.6.9", + "encodeurl": "~2.0.0", + "escape-html": "~1.0.3", + "on-finished": "2.4.1", + "parseurl": "~1.3.3", + "statuses": "2.0.1", + "unpipe": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/finalhandler/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "peer": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/finalhandler/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "peer": true + }, + "node_modules/find-cache-dir": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-3.3.2.tgz", + "integrity": "sha512-wXZV5emFEjrridIgED11OoUKLxiYjAcqot/NJdAkOhlJ+vGzwhOAfcG5OX1jP+S0PcjEn8bdMJv+g2jwQ3Onig==", + "peer": true, + "dependencies": { + "commondir": "^1.0.1", + "make-dir": "^3.0.2", + "pkg-dir": "^4.1.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/avajs/find-cache-dir?sponsor=1" + } + }, + "node_modules/find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "peer": true, + "dependencies": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/follow-redirects": { + "version": "1.15.9", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.9.tgz", + "integrity": "sha512-gew4GsXizNgdoRyqmyfMHyAmXsZDk6mHkSxZFCzW9gwlbtOW44CDtYavM+y+72qD/Vq2l550kMF52DT8fOLJqQ==", + "funding": [ + { + "type": "individual", + "url": "https://github.com/sponsors/RubenVerborgh" + } + ], + "peer": true, + "engines": { + "node": ">=4.0" + }, + "peerDependenciesMeta": { + "debug": { + "optional": true + } + } + }, + "node_modules/forwarded": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz", + "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==", + "peer": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/fraction.js": { + "version": "4.3.7", + "resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-4.3.7.tgz", + "integrity": "sha512-ZsDfxO51wGAXREY55a7la9LScWpwv9RxIrYABrlvOFBlH/ShPnrtsXeuUIfXKKOVicNxQ+o8JTbJvjS4M89yew==", + "peer": true, + "engines": { + "node": "*" + }, + "funding": { + "type": "patreon", + "url": "https://github.com/sponsors/rawify" + } + }, + "node_modules/fresh": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", + "integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==", + "peer": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/fs-minipass": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", + "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", + "peer": true, + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/fs-monkey": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/fs-monkey/-/fs-monkey-1.0.6.tgz", + "integrity": "sha512-b1FMfwetIKymC0eioW7mTywihSQE4oLzQn1dB6rZB5fx/3NpNEdAWeCSMB+60/AeT0TCXsxzAlcYVEFCTAksWg==", + "peer": true + }, + "node_modules/fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==" + }, + "node_modules/fsevents": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", + "hasInstallScript": true, + "optional": true, + "os": [ + "darwin" + ], + "peer": true, + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, + "node_modules/function-bind": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", + "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/gensync": { + "version": "1.0.0-beta.2", + "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", + "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", + "peer": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/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==", + "peer": true, + "engines": { + "node": "6.* || 8.* || >= 10.*" + } + }, + "node_modules/get-intrinsic": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.3.0.tgz", + "integrity": "sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ==", + "peer": true, + "dependencies": { + "call-bind-apply-helpers": "^1.0.2", + "es-define-property": "^1.0.1", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.1.1", + "function-bind": "^1.1.2", + "get-proto": "^1.0.1", + "gopd": "^1.2.0", + "has-symbols": "^1.1.0", + "hasown": "^2.0.2", + "math-intrinsics": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/get-package-type": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz", + "integrity": "sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==", + "peer": true, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/get-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/get-proto/-/get-proto-1.0.1.tgz", + "integrity": "sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==", + "peer": true, + "dependencies": { + "dunder-proto": "^1.0.1", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/get-stream": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", + "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", + "peer": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/glob": { + "version": "8.0.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-8.0.3.tgz", + "integrity": "sha512-ull455NHSHI/Y1FqGaaYFaLGkNMMJbavMrEGFXG/PGrg6y7sutWHUHrz6gy6WEBH6akM1M414dWKCNs+IhKdiQ==", + "deprecated": "Glob versions prior to v9 are no longer supported", + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^5.0.1", + "once": "^1.3.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "peer": true, + "dependencies": { + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/glob-to-regexp": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz", + "integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==", + "peer": true + }, + "node_modules/globals": { + "version": "11.12.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", + "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", + "peer": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/globby": { + "version": "13.2.2", + "resolved": "https://registry.npmjs.org/globby/-/globby-13.2.2.tgz", + "integrity": "sha512-Y1zNGV+pzQdh7H39l9zgB4PJqjRNqydvdYCDG4HFXM4XuvSaQQlEc91IU1yALL8gUTDomgBAfz3XJdmUS+oo0w==", + "peer": true, + "dependencies": { + "dir-glob": "^3.0.1", + "fast-glob": "^3.3.0", + "ignore": "^5.2.4", + "merge2": "^1.4.1", + "slash": "^4.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/gopd": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.2.0.tgz", + "integrity": "sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==", + "peer": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/graceful-fs": { + "version": "4.2.11", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", + "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==", + "peer": true + }, + "node_modules/handle-thing": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/handle-thing/-/handle-thing-2.0.1.tgz", + "integrity": "sha512-9Qn4yBxelxoh2Ow62nP+Ka/kMnOXRi8BXnRaUwezLNhqelnN49xKz4F/dPP8OYLxLxq6JDtZb2i9XznUQbNPTg==", + "peer": true + }, + "node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/has-symbols": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.1.0.tgz", + "integrity": "sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==", + "peer": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/hasown": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", + "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", + "dependencies": { + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/hdr-histogram-js": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/hdr-histogram-js/-/hdr-histogram-js-2.0.3.tgz", + "integrity": "sha512-Hkn78wwzWHNCp2uarhzQ2SGFLU3JY8SBDDd3TAABK4fc30wm+MuPOrg5QVFVfkKOQd6Bfz3ukJEI+q9sXEkK1g==", + "peer": true, + "dependencies": { + "@assemblyscript/loader": "^0.10.1", + "base64-js": "^1.2.0", + "pako": "^1.0.3" + } + }, + "node_modules/hdr-histogram-percentiles-obj": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/hdr-histogram-percentiles-obj/-/hdr-histogram-percentiles-obj-3.0.0.tgz", + "integrity": "sha512-7kIufnBqdsBGcSZLPJwqHT3yhk1QTsSlFsVD3kx5ixH/AlgBs9yM1q6DPhXZ8f8gtdqgh7N7/5btRLpQsS2gHw==", + "peer": true + }, + "node_modules/hpack.js": { + "version": "2.1.6", + "resolved": "https://registry.npmjs.org/hpack.js/-/hpack.js-2.1.6.tgz", + "integrity": "sha512-zJxVehUdMGIKsRaNt7apO2Gqp0BdqW5yaiGHXXmbpvxgBYVZnAql+BJb4RO5ad2MgpbZKn5G6nMnegrH1FcNYQ==", + "peer": true, + "dependencies": { + "inherits": "^2.0.1", + "obuf": "^1.0.0", + "readable-stream": "^2.0.1", + "wbuf": "^1.1.0" + } + }, + "node_modules/hpack.js/node_modules/readable-stream": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", + "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", + "peer": true, + "dependencies": { + "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" + } + }, + "node_modules/hpack.js/node_modules/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==", + "peer": true + }, + "node_modules/hpack.js/node_modules/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==", + "peer": true, + "dependencies": { + "safe-buffer": "~5.1.0" + } + }, + "node_modules/html-entities": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/html-entities/-/html-entities-2.6.0.tgz", + "integrity": "sha512-kig+rMn/QOVRvr7c86gQ8lWXq+Hkv6CbAH1hLu+RG338StTpE8Z0b44SDVaqVu7HGKf27frdmUYEs9hTUX/cLQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/mdevils" + }, + { + "type": "patreon", + "url": "https://patreon.com/mdevils" + } + ], + "peer": true + }, + "node_modules/http-deceiver": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/http-deceiver/-/http-deceiver-1.2.7.tgz", + "integrity": "sha512-LmpOGxTfbpgtGVxJrj5k7asXHCgNZp5nLfp+hWc8QQRqtb7fUy6kRY3BO1h9ddF6yIPYUARgxGOwB42DnxIaNw==", + "peer": true + }, + "node_modules/http-errors": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", + "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==", + "peer": true, + "dependencies": { + "depd": "2.0.0", + "inherits": "2.0.4", + "setprototypeof": "1.2.0", + "statuses": "2.0.1", + "toidentifier": "1.0.1" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/http-parser-js": { + "version": "0.5.10", + "resolved": "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.5.10.tgz", + "integrity": "sha512-Pysuw9XpUq5dVc/2SMHpuTY01RFl8fttgcyunjL7eEMhGM3cI4eOmiCycJDVCo/7O7ClfQD3SaI6ftDzqOXYMA==", + "peer": true + }, + "node_modules/http-proxy": { + "version": "1.18.1", + "resolved": "https://registry.npmjs.org/http-proxy/-/http-proxy-1.18.1.tgz", + "integrity": "sha512-7mz/721AbnJwIVbnaSv1Cz3Am0ZLT/UBwkC92VlxhXv/k/BBQfM2fXElQNC27BVGr0uwUpplYPQM9LnaBMR5NQ==", + "peer": true, + "dependencies": { + "eventemitter3": "^4.0.0", + "follow-redirects": "^1.0.0", + "requires-port": "^1.0.0" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/http-proxy-middleware": { + "version": "2.0.9", + "resolved": "https://registry.npmjs.org/http-proxy-middleware/-/http-proxy-middleware-2.0.9.tgz", + "integrity": "sha512-c1IyJYLYppU574+YI7R4QyX2ystMtVXZwIdzazUIPIJsHuWNd+mho2j+bKoHftndicGj9yh+xjd+l0yj7VeT1Q==", + "peer": true, + "dependencies": { + "@types/http-proxy": "^1.17.8", + "http-proxy": "^1.18.1", + "is-glob": "^4.0.1", + "is-plain-obj": "^3.0.0", + "micromatch": "^4.0.2" + }, + "engines": { + "node": ">=12.0.0" + }, + "peerDependencies": { + "@types/express": "^4.17.13" + }, + "peerDependenciesMeta": { + "@types/express": { + "optional": true + } + } + }, + "node_modules/https-proxy-agent": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", + "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", + "peer": true, + "dependencies": { + "agent-base": "6", + "debug": "4" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/human-signals": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz", + "integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==", + "peer": true, + "engines": { + "node": ">=10.17.0" + } + }, + "node_modules/iconv-lite": { + "version": "0.4.24", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", + "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", + "peer": true, + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/icss-utils": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/icss-utils/-/icss-utils-5.1.0.tgz", + "integrity": "sha512-soFhflCVWLfRNOPU3iv5Z9VUdT44xFRbzjLsEzSr5AQmgqPMTHdU3PMT1Cf1ssx8fLNJDA1juftYl+PUcv3MqA==", + "peer": true, + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/ieee754": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", + "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "peer": true + }, + "node_modules/ignore": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.2.tgz", + "integrity": "sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==", + "peer": true, + "engines": { + "node": ">= 4" + } + }, + "node_modules/image-size": { + "version": "0.5.5", + "resolved": "https://registry.npmjs.org/image-size/-/image-size-0.5.5.tgz", + "integrity": "sha512-6TDAlDPZxUFCv+fuOkIoXT/V/f3Qbq8e37p+YOiYrUv3v9cc3/6x78VdfPgFVaB9dZYeLUfKgHRebpkm/oP2VQ==", + "optional": true, + "peer": true, + "bin": { + "image-size": "bin/image-size.js" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/immutable": { + "version": "4.3.7", + "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.3.7.tgz", + "integrity": "sha512-1hqclzwYwjRDFLjcFxOM5AYkkG0rpFPpr1RLPMEuGczoS7YA8gLhy8SWXYRAA/XwfEHpfo3cw5JGioS32fnMRw==", + "peer": true + }, + "node_modules/import-fresh": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.1.tgz", + "integrity": "sha512-TR3KfrTZTYLPB6jUjfx6MF9WcWrHL9su5TObK4ZkYgBdWKPOFoSoQIdEuTuR82pmtxH2spWG9h6etwfr1pLBqQ==", + "peer": true, + "dependencies": { + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/import-fresh/node_modules/resolve-from": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", + "peer": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", + "peer": true, + "engines": { + "node": ">=0.8.19" + } + }, + "node_modules/indent-string": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", + "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/infer-owner": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/infer-owner/-/infer-owner-1.0.4.tgz", + "integrity": "sha512-IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A==", + "peer": true + }, + "node_modules/inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "deprecated": "This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.", + "dependencies": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" + }, + "node_modules/injection-js": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/injection-js/-/injection-js-2.4.0.tgz", + "integrity": "sha512-6jiJt0tCAo9zjHbcwLiPL+IuNe9SQ6a9g0PEzafThW3fOQi0mrmiJGBJvDD6tmhPh8cQHIQtCOrJuBfQME4kPA==", + "peer": true, + "dependencies": { + "tslib": "^2.0.0" + } + }, + "node_modules/inquirer": { + "version": "8.2.4", + "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-8.2.4.tgz", + "integrity": "sha512-nn4F01dxU8VeKfq192IjLsxu0/OmMZ4Lg3xKAns148rCaXP6ntAoEkVYZThWjwON8AlzdZZi6oqnhNbxUG9hVg==", + "peer": true, + "dependencies": { + "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.4.1", + "run-async": "^2.4.0", + "rxjs": "^7.5.5", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0", + "through": "^2.3.6", + "wrap-ansi": "^7.0.0" + }, + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/ipaddr.js": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-2.2.0.tgz", + "integrity": "sha512-Ag3wB2o37wslZS19hZqorUnrnzSkpOVy+IiiDEiTqNubEYpYuHWIf6K4psgN2ZWKExS4xhVCrRVfb/wfW8fWJA==", + "peer": true, + "engines": { + "node": ">= 10" + } + }, + "node_modules/is-arrayish": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==", + "peer": true + }, + "node_modules/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==", + "peer": true, + "dependencies": { + "binary-extensions": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-builtin-module": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/is-builtin-module/-/is-builtin-module-3.2.1.tgz", + "integrity": "sha512-BSLE3HnV2syZ0FK0iMA/yUGplUeMmNz4AW5fnTunbCIqZi4vG3WjJT9FHMy5D69xmAYBHXQhJdALdpwVxV501A==", + "peer": true, + "dependencies": { + "builtin-modules": "^3.3.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-core-module": { + "version": "2.16.1", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.16.1.tgz", + "integrity": "sha512-UfoeMA6fIJ8wTYFEUjelnaGI67v6+N7qXJEvQuIGa99l4xsCruSYOVSQ0uPANn4dAzm8lkYPaKLrrijLq7x23w==", + "dependencies": { + "hasown": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-docker": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz", + "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==", + "peer": true, + "bin": { + "is-docker": "cli.js" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", + "peer": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/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==", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-glob": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "peer": true, + "dependencies": { + "is-extglob": "^2.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/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==", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-module": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-module/-/is-module-1.0.0.tgz", + "integrity": "sha512-51ypPSPCoTEIN9dy5Oy+h4pShgJmPCygKfyRCISBI+JoWT/2oJvK8QPxmwv7b/p239jXrm9M1mlQbyKJ5A152g==" + }, + "node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "peer": true, + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/is-plain-obj": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-3.0.0.tgz", + "integrity": "sha512-gwsOE28k+23GP1B6vFl1oVh/WOzmawBrKwo5Ev6wMKzPkaXaCDIQKzLnvsA42DRlbVTWorkgTKIviAKCWkfUwA==", + "peer": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/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==", + "peer": true, + "dependencies": { + "isobject": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-reference": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/is-reference/-/is-reference-1.2.1.tgz", + "integrity": "sha512-U82MsXXiFIrjCK4otLT+o2NA2Cd2g5MLoOVXUZjIOhLurrRxpEXzI8O0KZHr3IjLvlAH1kTPYSuqer5T9ZVBKQ==", + "dependencies": { + "@types/estree": "*" + } + }, + "node_modules/is-stream": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", + "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", + "peer": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/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==", + "peer": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-what": { + "version": "3.14.1", + "resolved": "https://registry.npmjs.org/is-what/-/is-what-3.14.1.tgz", + "integrity": "sha512-sNxgpk9793nzSs7bA6JQJGeIuRBQhAaNGG77kzYQgMkrID+lS6SlK07K5LaptscDlSaIgH+GPFzf+d75FVxozA==", + "peer": true + }, + "node_modules/is-wsl": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", + "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==", + "peer": true, + "dependencies": { + "is-docker": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", + "peer": true + }, + "node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", + "peer": true + }, + "node_modules/isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==", + "peer": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/istanbul-lib-coverage": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.2.tgz", + "integrity": "sha512-O8dpsF+r0WV/8MNRKfnmrtCWhuKjxrq2w+jpzBL5UZKTi2LeVWnWOmWRxFlesJONmc+wLAGvKQZEOanko0LFTg==", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/istanbul-lib-instrument": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.1.tgz", + "integrity": "sha512-pzqtp31nLv/XFOzXGuvhCb8qhjmTVo5vjVk19XE4CRlSWz0KoeJ3bw9XsA7nOp9YBf4qHjwBxkDzKcME/J29Yg==", + "peer": true, + "dependencies": { + "@babel/core": "^7.12.3", + "@babel/parser": "^7.14.7", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-coverage": "^3.2.0", + "semver": "^6.3.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/istanbul-lib-instrument/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "peer": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/jest-worker": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", + "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", + "peer": true, + "dependencies": { + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" + }, + "engines": { + "node": ">= 10.13.0" + } + }, + "node_modules/jest-worker/node_modules/supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "peer": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/supports-color?sponsor=1" + } + }, + "node_modules/js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", + "peer": true + }, + "node_modules/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==", + "peer": true, + "dependencies": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/jsesc": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", + "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", + "peer": true, + "bin": { + "jsesc": "bin/jsesc" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/json-parse-even-better-errors": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", + "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", + "peer": true + }, + "node_modules/json-schema-traverse": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", + "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", + "peer": true + }, + "node_modules/json5": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", + "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", + "peer": true, + "bin": { + "json5": "lib/cli.js" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/jsonc-parser": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-3.1.0.tgz", + "integrity": "sha512-DRf0QjnNeCUds3xTjKlQQ3DpJD51GvDjJfnxUVWg6PZTo2otSm+slzNAxU/35hF8/oJIKoG9slq30JYOsF2azg==", + "peer": true + }, + "node_modules/karma-source-map-support": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/karma-source-map-support/-/karma-source-map-support-1.4.0.tgz", + "integrity": "sha512-RsBECncGO17KAoJCYXjv+ckIz+Ii9NCi+9enk+rq6XC81ezYkb4/RHE6CTXdA7IOJqoF3wcaLfVG0CPmE5ca6A==", + "peer": true, + "dependencies": { + "source-map-support": "^0.5.5" + } + }, + "node_modules/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==", + "peer": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/klona": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/klona/-/klona-2.0.6.tgz", + "integrity": "sha512-dhG34DXATL5hSxJbIexCft8FChFXtmskoZYnoPWjXQuebWYCNkVeV3KkGegCK9CP1oswI/vQibS2GY7Em/sJJA==", + "peer": true, + "engines": { + "node": ">= 8" + } + }, + "node_modules/less": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/less/-/less-4.1.3.tgz", + "integrity": "sha512-w16Xk/Ta9Hhyei0Gpz9m7VS8F28nieJaL/VyShID7cYvP6IL5oHeL6p4TXSDJqZE/lNv0oJ2pGVjJsRkfwm5FA==", + "peer": true, + "dependencies": { + "copy-anything": "^2.0.1", + "parse-node-version": "^1.0.1", + "tslib": "^2.3.0" + }, + "bin": { + "lessc": "bin/lessc" + }, + "engines": { + "node": ">=6" + }, + "optionalDependencies": { + "errno": "^0.1.1", + "graceful-fs": "^4.1.2", + "image-size": "~0.5.0", + "make-dir": "^2.1.0", + "mime": "^1.4.1", + "needle": "^3.1.0", + "source-map": "~0.6.0" + } + }, + "node_modules/less-loader": { + "version": "11.0.0", + "resolved": "https://registry.npmjs.org/less-loader/-/less-loader-11.0.0.tgz", + "integrity": "sha512-9+LOWWjuoectIEx3zrfN83NAGxSUB5pWEabbbidVQVgZhN+wN68pOvuyirVlH1IK4VT1f3TmlyvAnCXh8O5KEw==", + "peer": true, + "dependencies": { + "klona": "^2.0.4" + }, + "engines": { + "node": ">= 14.15.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "less": "^3.5.0 || ^4.0.0", + "webpack": "^5.0.0" + } + }, + "node_modules/less/node_modules/make-dir": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", + "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", + "optional": true, + "peer": true, + "dependencies": { + "pify": "^4.0.1", + "semver": "^5.6.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/less/node_modules/pify": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", + "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", + "optional": true, + "peer": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/less/node_modules/semver": { + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", + "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", + "optional": true, + "peer": true, + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/less/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "optional": true, + "peer": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/license-webpack-plugin": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/license-webpack-plugin/-/license-webpack-plugin-4.0.2.tgz", + "integrity": "sha512-771TFWFD70G1wLTC4oU2Cw4qvtmNrIw+wRvBtn+okgHl7slJVi7zfNcdmqDL72BojM30VNJ2UHylr1o77U37Jw==", + "peer": true, + "dependencies": { + "webpack-sources": "^3.0.0" + }, + "peerDependenciesMeta": { + "webpack": { + "optional": true + }, + "webpack-sources": { + "optional": true + } + } + }, + "node_modules/lines-and-columns": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", + "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==", + "peer": true + }, + "node_modules/loader-runner": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-4.3.0.tgz", + "integrity": "sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg==", + "peer": true, + "engines": { + "node": ">=6.11.5" + } + }, + "node_modules/loader-utils": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-3.2.1.tgz", + "integrity": "sha512-ZvFw1KWS3GVyYBYb7qkmRM/WwL2TQQBxgCK62rlvm4WpVQ23Nb4tYjApUlfjrEGvOs7KHEsmyUn75OHZrJMWPw==", + "peer": true, + "engines": { + "node": ">= 12.13.0" + } + }, + "node_modules/locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "peer": true, + "dependencies": { + "p-locate": "^4.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/lodash": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", + "peer": true + }, + "node_modules/lodash.debounce": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", + "integrity": "sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==", + "peer": true + }, + "node_modules/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==", + "peer": true, + "dependencies": { + "chalk": "^4.1.0", + "is-unicode-supported": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "peer": true, + "dependencies": { + "yallist": "^3.0.2" + } + }, + "node_modules/magic-string": { + "version": "0.26.2", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.26.2.tgz", + "integrity": "sha512-NzzlXpclt5zAbmo6h6jNc8zl2gNRGHvmsZW4IvZhTC4W7k4OlLP+S5YLussa/r3ixNT66KOQfNORlXHSOy/X4A==", + "peer": true, + "dependencies": { + "sourcemap-codec": "^1.4.8" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/make-dir": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "peer": true, + "dependencies": { + "semver": "^6.0.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/make-dir/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "peer": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/math-intrinsics": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/math-intrinsics/-/math-intrinsics-1.1.0.tgz", + "integrity": "sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==", + "peer": true, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/media-typer": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", + "integrity": "sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==", + "peer": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/memfs": { + "version": "3.5.3", + "resolved": "https://registry.npmjs.org/memfs/-/memfs-3.5.3.tgz", + "integrity": "sha512-UERzLsxzllchadvbPs5aolHh65ISpKpM+ccLbOJ8/vvpBKmAWf+la7dXFy7Mr0ySHbdHrFv5kGFCUHHe6GFEmw==", + "peer": true, + "dependencies": { + "fs-monkey": "^1.0.4" + }, + "engines": { + "node": ">= 4.0.0" + } + }, + "node_modules/merge-descriptors": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.3.tgz", + "integrity": "sha512-gaNvAS7TZ897/rVaZ0nMtAyxNyi/pdbjbAwUpFQpN70GqnVfOiXpeUUMKRBmzXaSQ8DdTX4/0ms62r2K+hE6mQ==", + "peer": true, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/merge-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", + "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", + "peer": true + }, + "node_modules/merge2": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", + "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", + "peer": true, + "engines": { + "node": ">= 8" + } + }, + "node_modules/methods": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", + "integrity": "sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==", + "peer": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/micromatch": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz", + "integrity": "sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==", + "peer": true, + "dependencies": { + "braces": "^3.0.3", + "picomatch": "^2.3.1" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/micromatch/node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "peer": true, + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/mime": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", + "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", + "peer": true, + "bin": { + "mime": "cli.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/mime-db": { + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", + "peer": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mime-types": { + "version": "2.1.35", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", + "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", + "peer": true, + "dependencies": { + "mime-db": "1.52.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mimic-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", + "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", + "peer": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/mini-css-extract-plugin": { + "version": "2.6.1", + "resolved": "https://registry.npmjs.org/mini-css-extract-plugin/-/mini-css-extract-plugin-2.6.1.tgz", + "integrity": "sha512-wd+SD57/K6DiV7jIR34P+s3uckTRuQvx0tKPcvjFlrEylk6P4mQ2KSWk1hblj1Kxaqok7LogKOieygXqBczNlg==", + "peer": true, + "dependencies": { + "schema-utils": "^4.0.0" + }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^5.0.0" + } + }, + "node_modules/mini-css-extract-plugin/node_modules/schema-utils": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.3.1.tgz", + "integrity": "sha512-jjlZ7UknkyQxGnHF1w8wDgWfdtnW0hBX7tmDp04zBwDBZ/6tPJI1+RWfBHGMA4+0nAjGptp+eDpIYP6mldJbqg==", + "peer": true, + "dependencies": { + "@types/json-schema": "^7.0.9", + "ajv": "^8.9.0", + "ajv-formats": "^2.1.1", + "ajv-keywords": "^5.1.0" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/minimalistic-assert": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", + "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==", + "peer": true + }, + "node_modules/minimatch": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.0.tgz", + "integrity": "sha512-9TPBGGak4nHfGZsPBohm9AWg6NoT7QTCehS3BIJABslyZbzxfV78QM2Y6+i741OPZIafFAaiiEMh5OyIrJPgtg==", + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "peer": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/minipass-collect": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/minipass-collect/-/minipass-collect-1.0.2.tgz", + "integrity": "sha512-6T6lH0H8OG9kITm/Jm6tdooIbogG9e0tLgpY6mphXSm/A9u8Nq1ryBG+Qspiub9LjWlBPsPS3tWQ/Botq4FdxA==", + "peer": true, + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/minipass-flush": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/minipass-flush/-/minipass-flush-1.0.5.tgz", + "integrity": "sha512-JmQSYYpPUqX5Jyn1mXaRwOda1uQ8HP5KAT/oDSLCzt1BYRhQU0/hDtsB1ufZfEEzMZ9aAVmsBw8+FWsIXlClWw==", + "peer": true, + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/minipass-pipeline": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/minipass-pipeline/-/minipass-pipeline-1.2.4.tgz", + "integrity": "sha512-xuIq7cIOt09RPRJ19gdi4b+RiNvDFYe5JH+ggNvBqGqpQXcru3PcRmOZuHBKWK1Txf9+cQ+HMVN4d6z46LZP7A==", + "peer": true, + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/minipass/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "peer": true + }, + "node_modules/minizlib": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz", + "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==", + "peer": true, + "dependencies": { + "minipass": "^3.0.0", + "yallist": "^4.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/minizlib/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "peer": true + }, + "node_modules/mkdirp": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", + "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", + "peer": true, + "bin": { + "mkdirp": "bin/cmd.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "peer": true + }, + "node_modules/multicast-dns": { + "version": "7.2.5", + "resolved": "https://registry.npmjs.org/multicast-dns/-/multicast-dns-7.2.5.tgz", + "integrity": "sha512-2eznPJP8z2BFLX50tf0LuODrpINqP1RVIm/CObbTcBRITQgmC/TjcREF1NeTBzIcR5XO/ukWo+YHOjBbFwIupg==", + "peer": true, + "dependencies": { + "dns-packet": "^5.2.2", + "thunky": "^1.0.2" + }, + "bin": { + "multicast-dns": "cli.js" + } + }, + "node_modules/mute-stream": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz", + "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==", + "peer": true + }, + "node_modules/nanoid": { + "version": "3.3.11", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.11.tgz", + "integrity": "sha512-N8SpfPUnUp1bK+PMYW8qSWdl9U+wwNWI4QKxOYDy9JAro3WMX7p2OeVRF9v+347pnakNevPmiHhNmZ2HbFA76w==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "peer": true, + "bin": { + "nanoid": "bin/nanoid.cjs" + }, + "engines": { + "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" + } + }, + "node_modules/needle": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/needle/-/needle-3.3.1.tgz", + "integrity": "sha512-6k0YULvhpw+RoLNiQCRKOl09Rv1dPLr8hHnVjHqdolKwDrdNyk+Hmrthi4lIGPPz3r39dLx0hsF5s40sZ3Us4Q==", + "optional": true, + "peer": true, + "dependencies": { + "iconv-lite": "^0.6.3", + "sax": "^1.2.4" + }, + "bin": { + "needle": "bin/needle" + }, + "engines": { + "node": ">= 4.4.x" + } + }, + "node_modules/needle/node_modules/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==", + "optional": true, + "peer": true, + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/negotiator": { + "version": "0.6.4", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.4.tgz", + "integrity": "sha512-myRT3DiWPHqho5PrJaIRyaMv2kgYf0mUVgBNOYMuCH5Ki1yEiQaf/ZJuQ62nvpc44wL5WDbTX7yGJi1Neevw8w==", + "peer": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/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==", + "peer": true + }, + "node_modules/ng-packagr": { + "version": "14.2.0", + "resolved": "https://registry.npmjs.org/ng-packagr/-/ng-packagr-14.2.0.tgz", + "integrity": "sha512-Nb+2/L37CFcWmCz91USwNd87mdTfTXDb4MBl87Dkj2H53KfrAltX2psa+gTRbjE5USCX8bQeu4nRzf/Bp6Vivg==", + "peer": true, + "dependencies": { + "@rollup/plugin-json": "^4.1.0", + "@rollup/plugin-node-resolve": "^13.1.3", + "ajv": "^8.10.0", + "ansi-colors": "^4.1.1", + "browserslist": "^4.20.0", + "cacache": "^16.0.0", + "chokidar": "^3.5.3", + "commander": "^9.0.0", + "dependency-graph": "^0.11.0", + "esbuild-wasm": "^0.15.0", + "find-cache-dir": "^3.3.2", + "glob": "^8.0.0", + "injection-js": "^2.4.0", + "jsonc-parser": "^3.0.0", + "less": "^4.1.2", + "ora": "^5.1.0", + "postcss": "^8.4.8", + "postcss-preset-env": "^7.4.2", + "postcss-url": "^10.1.3", + "rollup": "^2.70.0", + "rollup-plugin-sourcemaps": "^0.6.3", + "rxjs": "^7.5.5", + "sass": "^1.49.9", + "stylus": "^0.59.0" + }, + "bin": { + "ng-packagr": "cli/main.js" + }, + "engines": { + "node": "^14.15.0 || >=16.10.0" + }, + "optionalDependencies": { + "esbuild": "^0.15.0" + }, + "peerDependencies": { + "@angular/compiler-cli": "^14.0.0 || ^14.0.0-next || ^14.2.0-next", + "tslib": "^2.3.0", + "typescript": ">=4.6.2 <4.9" + } + }, + "node_modules/ng-packagr/node_modules/@rollup/plugin-node-resolve": { + "version": "13.3.0", + "resolved": "https://registry.npmjs.org/@rollup/plugin-node-resolve/-/plugin-node-resolve-13.3.0.tgz", + "integrity": "sha512-Lus8rbUo1eEcnS4yTFKLZrVumLPY+YayBdWXgFSHYhTT2iJbMhoaaBL3xl5NCdeRytErGr8tZ0L71BMRmnlwSw==", + "peer": true, + "dependencies": { + "@rollup/pluginutils": "^3.1.0", + "@types/resolve": "1.17.1", + "deepmerge": "^4.2.2", + "is-builtin-module": "^3.1.0", + "is-module": "^1.0.0", + "resolve": "^1.19.0" + }, + "engines": { + "node": ">= 10.0.0" + }, + "peerDependencies": { + "rollup": "^2.42.0" + } + }, + "node_modules/ng-packagr/node_modules/@rollup/pluginutils": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-3.1.0.tgz", + "integrity": "sha512-GksZ6pr6TpIjHm8h9lSQ8pi8BE9VeubNT0OMJ3B5uZJ8pz73NPiqOtCog/x2/QzM1ENChPKxMDhiQuRHsqc+lg==", + "peer": true, + "dependencies": { + "@types/estree": "0.0.39", + "estree-walker": "^1.0.1", + "picomatch": "^2.2.2" + }, + "engines": { + "node": ">= 8.0.0" + }, + "peerDependencies": { + "rollup": "^1.20.0||^2.0.0" + } + }, + "node_modules/ng-packagr/node_modules/@types/estree": { + "version": "0.0.39", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.39.tgz", + "integrity": "sha512-EYNwp3bU+98cpU4lAWYYL7Zz+2gryWH1qbdDTidVd6hkiR6weksdbMadyXKXNPEkQFhXM+hVO9ZygomHXp+AIw==", + "peer": true + }, + "node_modules/ng-packagr/node_modules/@types/resolve": { + "version": "1.17.1", + "resolved": "https://registry.npmjs.org/@types/resolve/-/resolve-1.17.1.tgz", + "integrity": "sha512-yy7HuzQhj0dhGpD8RLXSZWEkLsV9ibvxvi6EiJ3bkqLAO1RGo0WbkWQiwpRlSFymTJRz0d3k5LM3kkx8ArDbLw==", + "peer": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/ng-packagr/node_modules/estree-walker": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-1.0.1.tgz", + "integrity": "sha512-1fMXF3YP4pZZVozF8j/ZLfvnR8NSIljt56UhbZ5PeeDmmGHpgpdwQt7ITlGvYaQukCvuBRMLEiKiYC+oeIg4cg==", + "peer": true + }, + "node_modules/ng-packagr/node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "peer": true, + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/nice-napi": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/nice-napi/-/nice-napi-1.0.2.tgz", + "integrity": "sha512-px/KnJAJZf5RuBGcfD+Sp2pAKq0ytz8j+1NehvgIGFkvtvFrDM3T8E4x/JJODXK9WZow8RRGrbA9QQ3hs+pDhA==", + "hasInstallScript": true, + "optional": true, + "os": [ + "!win32" + ], + "peer": true, + "dependencies": { + "node-addon-api": "^3.0.0", + "node-gyp-build": "^4.2.2" + } + }, + "node_modules/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==", + "optional": true, + "peer": true + }, + "node_modules/node-forge": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-1.3.1.tgz", + "integrity": "sha512-dPEtOeMvF9VMcYV/1Wb8CPoVAXtp6MKMlcbAt4ddqmGqUJ6fQZFXkNZNkNlfevtNkGtaSoXf/vNNNSvgrdXwtA==", + "peer": true, + "engines": { + "node": ">= 6.13.0" + } + }, + "node_modules/node-gyp-build": { + "version": "4.8.4", + "resolved": "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.8.4.tgz", + "integrity": "sha512-LA4ZjwlnUblHVgq0oBF3Jl/6h/Nvs5fzBLwdEF4nuxnFdsfajde4WfxtJr3CaiH+F6ewcIB/q4jQ4UzPyid+CQ==", + "optional": true, + "peer": true, + "bin": { + "node-gyp-build": "bin.js", + "node-gyp-build-optional": "optional.js", + "node-gyp-build-test": "build-test.js" + } + }, + "node_modules/node-releases": { + "version": "2.0.19", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.19.tgz", + "integrity": "sha512-xxOWJsBKtzAq7DY0J+DTzuz58K8e7sJbdgwkbMWQe8UYB6ekmsQ45q0M/tJDsGaZmbC+l7n57UV8Hl5tHxO9uw==", + "peer": true + }, + "node_modules/normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "peer": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/normalize-range": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz", + "integrity": "sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==", + "peer": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/npm-run-path": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", + "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", + "peer": true, + "dependencies": { + "path-key": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/nth-check": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.1.1.tgz", + "integrity": "sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==", + "peer": true, + "dependencies": { + "boolbase": "^1.0.0" + }, + "funding": { + "url": "https://github.com/fb55/nth-check?sponsor=1" + } + }, + "node_modules/object-inspect": { + "version": "1.13.4", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.4.tgz", + "integrity": "sha512-W67iLl4J2EXEGTbfeHCffrjDfitvLANg0UlX3wFUUSTx92KXRFegMHUVgSqE+wvhAbi4WqjGg9czysTV2Epbew==", + "peer": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/obuf": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/obuf/-/obuf-1.1.2.tgz", + "integrity": "sha512-PX1wu0AmAdPqOL1mWhqmlOd8kOIZQwGZw6rh7uby9fTc5lhaOWFLX3I6R1hrF9k3zUY40e6igsLGkDXK92LJNg==", + "peer": true + }, + "node_modules/on-finished": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz", + "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==", + "peer": true, + "dependencies": { + "ee-first": "1.1.1" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/on-headers": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/on-headers/-/on-headers-1.0.2.tgz", + "integrity": "sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA==", + "peer": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", + "dependencies": { + "wrappy": "1" + } + }, + "node_modules/onetime": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", + "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", + "peer": true, + "dependencies": { + "mimic-fn": "^2.1.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/open": { + "version": "8.4.0", + "resolved": "https://registry.npmjs.org/open/-/open-8.4.0.tgz", + "integrity": "sha512-XgFPPM+B28FtCCgSb9I+s9szOC1vZRSwgWsRUA5ylIxRTgKozqjOCrVOqGsYABPYK5qnfqClxZTFBa8PKt2v6Q==", + "peer": true, + "dependencies": { + "define-lazy-prop": "^2.0.0", + "is-docker": "^2.1.1", + "is-wsl": "^2.2.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/ora": { + "version": "5.4.1", + "resolved": "https://registry.npmjs.org/ora/-/ora-5.4.1.tgz", + "integrity": "sha512-5b6Y85tPxZZ7QytO+BQzysW31HJku27cRIlkbAXaNx+BdcVi+LlRFmVXzeF6a7JCwJpyw5c4b+YSVImQIrBpuQ==", + "peer": true, + "dependencies": { + "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" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/os-tmpdir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", + "integrity": "sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==", + "peer": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "peer": true, + "dependencies": { + "p-try": "^2.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "peer": true, + "dependencies": { + "p-limit": "^2.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/p-map": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", + "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", + "peer": true, + "dependencies": { + "aggregate-error": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-retry": { + "version": "4.6.2", + "resolved": "https://registry.npmjs.org/p-retry/-/p-retry-4.6.2.tgz", + "integrity": "sha512-312Id396EbJdvRONlngUx0NydfrIQ5lsYu0znKVUzVvArzEIt08V1qhtyESbGVd1FGX7UKtiFp5uwKZdM8wIuQ==", + "peer": true, + "dependencies": { + "@types/retry": "0.12.0", + "retry": "^0.13.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "peer": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/pako": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz", + "integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==", + "peer": true + }, + "node_modules/parent-module": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", + "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", + "peer": true, + "dependencies": { + "callsites": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/parse-json": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", + "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", + "peer": true, + "dependencies": { + "@babel/code-frame": "^7.0.0", + "error-ex": "^1.3.1", + "json-parse-even-better-errors": "^2.3.0", + "lines-and-columns": "^1.1.6" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/parse-node-version": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parse-node-version/-/parse-node-version-1.0.1.tgz", + "integrity": "sha512-3YHlOa/JgH6Mnpr05jP9eDG254US9ek25LyIxZlDItp2iJtwyaXQb57lBYLdT3MowkUFYEV2XXNAYIPlESvJlA==", + "peer": true, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/parse5": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-5.1.1.tgz", + "integrity": "sha512-ugq4DFI0Ptb+WWjAdOK16+u/nHfiIrcE+sh8kZMaM0WllQKLI9rOUq6c2b7cwPkXdzfQESqvoqK6ug7U/Yyzug==", + "optional": true, + "peer": true + }, + "node_modules/parse5-html-rewriting-stream": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/parse5-html-rewriting-stream/-/parse5-html-rewriting-stream-6.0.1.tgz", + "integrity": "sha512-vwLQzynJVEfUlURxgnf51yAJDQTtVpNyGD8tKi2Za7m+akukNHxCcUQMAa/mUGLhCeicFdpy7Tlvj8ZNKadprg==", + "peer": true, + "dependencies": { + "parse5": "^6.0.1", + "parse5-sax-parser": "^6.0.1" + } + }, + "node_modules/parse5-html-rewriting-stream/node_modules/parse5": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", + "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==", + "peer": true + }, + "node_modules/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==", + "peer": true, + "dependencies": { + "parse5": "^6.0.1" + } + }, + "node_modules/parse5-htmlparser2-tree-adapter/node_modules/parse5": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", + "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==", + "peer": true + }, + "node_modules/parse5-sax-parser": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/parse5-sax-parser/-/parse5-sax-parser-6.0.1.tgz", + "integrity": "sha512-kXX+5S81lgESA0LsDuGjAlBybImAChYRMT+/uKCEXFBFOeEhS52qUCydGhU3qLRD8D9DVjaUo821WK7DM4iCeg==", + "peer": true, + "dependencies": { + "parse5": "^6.0.1" + } + }, + "node_modules/parse5-sax-parser/node_modules/parse5": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", + "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==", + "peer": true + }, + "node_modules/parseurl": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", + "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==", + "peer": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", + "peer": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/path-parse": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==" + }, + "node_modules/path-to-regexp": { + "version": "0.1.12", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.12.tgz", + "integrity": "sha512-RA1GjUVMnvYFxuqovrEqZoxxW5NUZqbwKtYz/Tt7nXerk0LbLblQmrsgdeOxV5SFHf0UDggjS/bSeOZwt1pmEQ==", + "peer": true + }, + "node_modules/path-type": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", + "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/picocolors": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz", + "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==", + "peer": true + }, + "node_modules/picomatch": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.2.tgz", + "integrity": "sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg==", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==", + "peer": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/piscina": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/piscina/-/piscina-3.2.0.tgz", + "integrity": "sha512-yn/jMdHRw+q2ZJhFhyqsmANcbF6V2QwmD84c6xRau+QpQOmtrBCoRGdvTfeuFDYXB5W2m6MfLkjkvQa9lUSmIA==", + "peer": true, + "dependencies": { + "eventemitter-asyncresource": "^1.0.0", + "hdr-histogram-js": "^2.0.1", + "hdr-histogram-percentiles-obj": "^3.0.0" + }, + "optionalDependencies": { + "nice-napi": "^1.0.2" + } + }, + "node_modules/pkg-dir": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", + "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", + "peer": true, + "dependencies": { + "find-up": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/postcss": { + "version": "8.4.31", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.31.tgz", + "integrity": "sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/postcss" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "peer": true, + "dependencies": { + "nanoid": "^3.3.6", + "picocolors": "^1.0.0", + "source-map-js": "^1.0.2" + }, + "engines": { + "node": "^10 || ^12 || >=14" + } + }, + "node_modules/postcss-attribute-case-insensitive": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/postcss-attribute-case-insensitive/-/postcss-attribute-case-insensitive-5.0.2.tgz", + "integrity": "sha512-XIidXV8fDr0kKt28vqki84fRK8VW8eTuIa4PChv2MqKuT6C9UjmSKzen6KaWhWEoYvwxFCa7n/tC1SZ3tyq4SQ==", + "peer": true, + "dependencies": { + "postcss-selector-parser": "^6.0.10" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.2" + } + }, + "node_modules/postcss-attribute-case-insensitive/node_modules/postcss-selector-parser": { + "version": "6.1.2", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.1.2.tgz", + "integrity": "sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg==", + "peer": true, + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-clamp": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/postcss-clamp/-/postcss-clamp-4.1.0.tgz", + "integrity": "sha512-ry4b1Llo/9zz+PKC+030KUnPITTJAHeOwjfAyyB60eT0AorGLdzp52s31OsPRHRf8NchkgFoG2y6fCfn1IV1Ow==", + "peer": true, + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": ">=7.6.0" + }, + "peerDependencies": { + "postcss": "^8.4.6" + } + }, + "node_modules/postcss-color-functional-notation": { + "version": "4.2.4", + "resolved": "https://registry.npmjs.org/postcss-color-functional-notation/-/postcss-color-functional-notation-4.2.4.tgz", + "integrity": "sha512-2yrTAUZUab9s6CpxkxC4rVgFEVaR6/2Pipvi6qcgvnYiVqZcbDHEoBDhrXzyb7Efh2CCfHQNtcqWcIruDTIUeg==", + "peer": true, + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.2" + } + }, + "node_modules/postcss-color-hex-alpha": { + "version": "8.0.4", + "resolved": "https://registry.npmjs.org/postcss-color-hex-alpha/-/postcss-color-hex-alpha-8.0.4.tgz", + "integrity": "sha512-nLo2DCRC9eE4w2JmuKgVA3fGL3d01kGq752pVALF68qpGLmx2Qrk91QTKkdUqqp45T1K1XV8IhQpcu1hoAQflQ==", + "peer": true, + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.4" + } + }, + "node_modules/postcss-color-rebeccapurple": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/postcss-color-rebeccapurple/-/postcss-color-rebeccapurple-7.1.1.tgz", + "integrity": "sha512-pGxkuVEInwLHgkNxUc4sdg4g3py7zUeCQ9sMfwyHAT+Ezk8a4OaaVZ8lIY5+oNqA/BXXgLyXv0+5wHP68R79hg==", + "peer": true, + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.2" + } + }, + "node_modules/postcss-custom-media": { + "version": "8.0.2", + "resolved": "https://registry.npmjs.org/postcss-custom-media/-/postcss-custom-media-8.0.2.tgz", + "integrity": "sha512-7yi25vDAoHAkbhAzX9dHx2yc6ntS4jQvejrNcC+csQJAXjj15e7VcWfMgLqBNAbOvqi5uIa9huOVwdHbf+sKqg==", + "peer": true, + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.3" + } + }, + "node_modules/postcss-custom-properties": { + "version": "12.1.11", + "resolved": "https://registry.npmjs.org/postcss-custom-properties/-/postcss-custom-properties-12.1.11.tgz", + "integrity": "sha512-0IDJYhgU8xDv1KY6+VgUwuQkVtmYzRwu+dMjnmdMafXYv86SWqfxkc7qdDvWS38vsjaEtv8e0vGOUQrAiMBLpQ==", + "peer": true, + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.2" + } + }, + "node_modules/postcss-custom-selectors": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/postcss-custom-selectors/-/postcss-custom-selectors-6.0.3.tgz", + "integrity": "sha512-fgVkmyiWDwmD3JbpCmB45SvvlCD6z9CG6Ie6Iere22W5aHea6oWa7EM2bpnv2Fj3I94L3VbtvX9KqwSi5aFzSg==", + "peer": true, + "dependencies": { + "postcss-selector-parser": "^6.0.4" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.3" + } + }, + "node_modules/postcss-custom-selectors/node_modules/postcss-selector-parser": { + "version": "6.1.2", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.1.2.tgz", + "integrity": "sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg==", + "peer": true, + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-dir-pseudo-class": { + "version": "6.0.5", + "resolved": "https://registry.npmjs.org/postcss-dir-pseudo-class/-/postcss-dir-pseudo-class-6.0.5.tgz", + "integrity": "sha512-eqn4m70P031PF7ZQIvSgy9RSJ5uI2171O/OO/zcRNYpJbvaeKFUlar1aJ7rmgiQtbm0FSPsRewjpdS0Oew7MPA==", + "peer": true, + "dependencies": { + "postcss-selector-parser": "^6.0.10" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.2" + } + }, + "node_modules/postcss-dir-pseudo-class/node_modules/postcss-selector-parser": { + "version": "6.1.2", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.1.2.tgz", + "integrity": "sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg==", + "peer": true, + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-double-position-gradients": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/postcss-double-position-gradients/-/postcss-double-position-gradients-3.1.2.tgz", + "integrity": "sha512-GX+FuE/uBR6eskOK+4vkXgT6pDkexLokPaz/AbJna9s5Kzp/yl488pKPjhy0obB475ovfT1Wv8ho7U/cHNaRgQ==", + "peer": true, + "dependencies": { + "@csstools/postcss-progressive-custom-properties": "^1.1.0", + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.2" + } + }, + "node_modules/postcss-env-function": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/postcss-env-function/-/postcss-env-function-4.0.6.tgz", + "integrity": "sha512-kpA6FsLra+NqcFnL81TnsU+Z7orGtDTxcOhl6pwXeEq1yFPpRMkCDpHhrz8CFQDr/Wfm0jLiNQ1OsGGPjlqPwA==", + "peer": true, + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "peerDependencies": { + "postcss": "^8.4" + } + }, + "node_modules/postcss-focus-visible": { + "version": "6.0.4", + "resolved": "https://registry.npmjs.org/postcss-focus-visible/-/postcss-focus-visible-6.0.4.tgz", + "integrity": "sha512-QcKuUU/dgNsstIK6HELFRT5Y3lbrMLEOwG+A4s5cA+fx3A3y/JTq3X9LaOj3OC3ALH0XqyrgQIgey/MIZ8Wczw==", + "peer": true, + "dependencies": { + "postcss-selector-parser": "^6.0.9" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "peerDependencies": { + "postcss": "^8.4" + } + }, + "node_modules/postcss-focus-visible/node_modules/postcss-selector-parser": { + "version": "6.1.2", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.1.2.tgz", + "integrity": "sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg==", + "peer": true, + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-focus-within": { + "version": "5.0.4", + "resolved": "https://registry.npmjs.org/postcss-focus-within/-/postcss-focus-within-5.0.4.tgz", + "integrity": "sha512-vvjDN++C0mu8jz4af5d52CB184ogg/sSxAFS+oUJQq2SuCe7T5U2iIsVJtsCp2d6R4j0jr5+q3rPkBVZkXD9fQ==", + "peer": true, + "dependencies": { + "postcss-selector-parser": "^6.0.9" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "peerDependencies": { + "postcss": "^8.4" + } + }, + "node_modules/postcss-focus-within/node_modules/postcss-selector-parser": { + "version": "6.1.2", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.1.2.tgz", + "integrity": "sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg==", + "peer": true, + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-font-variant": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/postcss-font-variant/-/postcss-font-variant-5.0.0.tgz", + "integrity": "sha512-1fmkBaCALD72CK2a9i468mA/+tr9/1cBxRRMXOUaZqO43oWPR5imcyPjXwuv7PXbCid4ndlP5zWhidQVVa3hmA==", + "peer": true, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/postcss-gap-properties": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/postcss-gap-properties/-/postcss-gap-properties-3.0.5.tgz", + "integrity": "sha512-IuE6gKSdoUNcvkGIqdtjtcMtZIFyXZhmFd5RUlg97iVEvp1BZKV5ngsAjCjrVy+14uhGBQl9tzmi1Qwq4kqVOg==", + "peer": true, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.2" + } + }, + "node_modules/postcss-image-set-function": { + "version": "4.0.7", + "resolved": "https://registry.npmjs.org/postcss-image-set-function/-/postcss-image-set-function-4.0.7.tgz", + "integrity": "sha512-9T2r9rsvYzm5ndsBE8WgtrMlIT7VbtTfE7b3BQnudUqnBcBo7L758oc+o+pdj/dUV0l5wjwSdjeOH2DZtfv8qw==", + "peer": true, + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.2" + } + }, + "node_modules/postcss-import": { + "version": "15.0.0", + "resolved": "https://registry.npmjs.org/postcss-import/-/postcss-import-15.0.0.tgz", + "integrity": "sha512-Y20shPQ07RitgBGv2zvkEAu9bqvrD77C9axhj/aA1BQj4czape2MdClCExvB27EwYEJdGgKZBpKanb0t1rK2Kg==", + "peer": true, + "dependencies": { + "postcss-value-parser": "^4.0.0", + "read-cache": "^1.0.0", + "resolve": "^1.1.7" + }, + "engines": { + "node": ">=14.0.0" + }, + "peerDependencies": { + "postcss": "^8.0.0" + } + }, + "node_modules/postcss-initial": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/postcss-initial/-/postcss-initial-4.0.1.tgz", + "integrity": "sha512-0ueD7rPqX8Pn1xJIjay0AZeIuDoF+V+VvMt/uOnn+4ezUKhZM/NokDeP6DwMNyIoYByuN/94IQnt5FEkaN59xQ==", + "peer": true, + "peerDependencies": { + "postcss": "^8.0.0" + } + }, + "node_modules/postcss-lab-function": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/postcss-lab-function/-/postcss-lab-function-4.2.1.tgz", + "integrity": "sha512-xuXll4isR03CrQsmxyz92LJB2xX9n+pZJ5jE9JgcnmsCammLyKdlzrBin+25dy6wIjfhJpKBAN80gsTlCgRk2w==", + "peer": true, + "dependencies": { + "@csstools/postcss-progressive-custom-properties": "^1.1.0", + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.2" + } + }, + "node_modules/postcss-loader": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/postcss-loader/-/postcss-loader-7.0.1.tgz", + "integrity": "sha512-VRviFEyYlLjctSM93gAZtcJJ/iSkPZ79zWbN/1fSH+NisBByEiVLqpdVDrPLVSi8DX0oJo12kL/GppTBdKVXiQ==", + "peer": true, + "dependencies": { + "cosmiconfig": "^7.0.0", + "klona": "^2.0.5", + "semver": "^7.3.7" + }, + "engines": { + "node": ">= 14.15.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "postcss": "^7.0.0 || ^8.0.1", + "webpack": "^5.0.0" + } + }, + "node_modules/postcss-logical": { + "version": "5.0.4", + "resolved": "https://registry.npmjs.org/postcss-logical/-/postcss-logical-5.0.4.tgz", + "integrity": "sha512-RHXxplCeLh9VjinvMrZONq7im4wjWGlRJAqmAVLXyZaXwfDWP73/oq4NdIp+OZwhQUMj0zjqDfM5Fj7qby+B4g==", + "peer": true, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "peerDependencies": { + "postcss": "^8.4" + } + }, + "node_modules/postcss-media-minmax": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/postcss-media-minmax/-/postcss-media-minmax-5.0.0.tgz", + "integrity": "sha512-yDUvFf9QdFZTuCUg0g0uNSHVlJ5X1lSzDZjPSFaiCWvjgsvu8vEVxtahPrLMinIDEEGnx6cBe6iqdx5YWz08wQ==", + "peer": true, + "engines": { + "node": ">=10.0.0" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/postcss-modules-extract-imports": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/postcss-modules-extract-imports/-/postcss-modules-extract-imports-3.1.0.tgz", + "integrity": "sha512-k3kNe0aNFQDAZGbin48pL2VNidTF0w4/eASDsxlyspobzU3wZQLOGj7L9gfRe0Jo9/4uud09DsjFNH7winGv8Q==", + "peer": true, + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/postcss-modules-local-by-default": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/postcss-modules-local-by-default/-/postcss-modules-local-by-default-4.2.0.tgz", + "integrity": "sha512-5kcJm/zk+GJDSfw+V/42fJ5fhjL5YbFDl8nVdXkJPLLW+Vf9mTD5Xe0wqIaDnLuL2U6cDNpTr+UQ+v2HWIBhzw==", + "peer": true, + "dependencies": { + "icss-utils": "^5.0.0", + "postcss-selector-parser": "^7.0.0", + "postcss-value-parser": "^4.1.0" + }, + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/postcss-modules-scope": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/postcss-modules-scope/-/postcss-modules-scope-3.2.1.tgz", + "integrity": "sha512-m9jZstCVaqGjTAuny8MdgE88scJnCiQSlSrOWcTQgM2t32UBe+MUmFSO5t7VMSfAf/FJKImAxBav8ooCHJXCJA==", + "peer": true, + "dependencies": { + "postcss-selector-parser": "^7.0.0" + }, + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/postcss-modules-values": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/postcss-modules-values/-/postcss-modules-values-4.0.0.tgz", + "integrity": "sha512-RDxHkAiEGI78gS2ofyvCsu7iycRv7oqw5xMWn9iMoR0N/7mf9D50ecQqUo5BZ9Zh2vH4bCUR/ktCqbB9m8vJjQ==", + "peer": true, + "dependencies": { + "icss-utils": "^5.0.0" + }, + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/postcss-nesting": { + "version": "10.2.0", + "resolved": "https://registry.npmjs.org/postcss-nesting/-/postcss-nesting-10.2.0.tgz", + "integrity": "sha512-EwMkYchxiDiKUhlJGzWsD9b2zvq/r2SSubcRrgP+jujMXFzqvANLt16lJANC+5uZ6hjI7lpRmI6O8JIl+8l1KA==", + "peer": true, + "dependencies": { + "@csstools/selector-specificity": "^2.0.0", + "postcss-selector-parser": "^6.0.10" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.2" + } + }, + "node_modules/postcss-nesting/node_modules/@csstools/selector-specificity": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@csstools/selector-specificity/-/selector-specificity-2.2.0.tgz", + "integrity": "sha512-+OJ9konv95ClSTOJCmMZqpd5+YGsB2S+x6w3E1oaM8UuR5j8nTNHYSz8c9BEPGDOCMQYIEEGlVPj/VY64iTbGw==", + "peer": true, + "engines": { + "node": "^14 || ^16 || >=18" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss-selector-parser": "^6.0.10" + } + }, + "node_modules/postcss-nesting/node_modules/postcss-selector-parser": { + "version": "6.1.2", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.1.2.tgz", + "integrity": "sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg==", + "peer": true, + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-opacity-percentage": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/postcss-opacity-percentage/-/postcss-opacity-percentage-1.1.3.tgz", + "integrity": "sha512-An6Ba4pHBiDtyVpSLymUUERMo2cU7s+Obz6BTrS+gxkbnSBNKSuD0AVUc+CpBMrpVPKKfoVz0WQCX+Tnst0i4A==", + "funding": [ + { + "type": "kofi", + "url": "https://ko-fi.com/mrcgrtz" + }, + { + "type": "liberapay", + "url": "https://liberapay.com/mrcgrtz" + } + ], + "peer": true, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "peerDependencies": { + "postcss": "^8.2" + } + }, + "node_modules/postcss-overflow-shorthand": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/postcss-overflow-shorthand/-/postcss-overflow-shorthand-3.0.4.tgz", + "integrity": "sha512-otYl/ylHK8Y9bcBnPLo3foYFLL6a6Ak+3EQBPOTR7luMYCOsiVTUk1iLvNf6tVPNGXcoL9Hoz37kpfriRIFb4A==", + "peer": true, + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.2" + } + }, + "node_modules/postcss-page-break": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/postcss-page-break/-/postcss-page-break-3.0.4.tgz", + "integrity": "sha512-1JGu8oCjVXLa9q9rFTo4MbeeA5FMe00/9C7lN4va606Rdb+HkxXtXsmEDrIraQ11fGz/WvKWa8gMuCKkrXpTsQ==", + "peer": true, + "peerDependencies": { + "postcss": "^8" + } + }, + "node_modules/postcss-place": { + "version": "7.0.5", + "resolved": "https://registry.npmjs.org/postcss-place/-/postcss-place-7.0.5.tgz", + "integrity": "sha512-wR8igaZROA6Z4pv0d+bvVrvGY4GVHihBCBQieXFY3kuSuMyOmEnnfFzHl/tQuqHZkfkIVBEbDvYcFfHmpSet9g==", + "peer": true, + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.2" + } + }, + "node_modules/postcss-preset-env": { + "version": "7.8.0", + "resolved": "https://registry.npmjs.org/postcss-preset-env/-/postcss-preset-env-7.8.0.tgz", + "integrity": "sha512-leqiqLOellpLKfbHkD06E04P6d9ZQ24mat6hu4NSqun7WG0UhspHR5Myiv/510qouCjoo4+YJtNOqg5xHaFnCA==", + "peer": true, + "dependencies": { + "@csstools/postcss-cascade-layers": "^1.0.5", + "@csstools/postcss-color-function": "^1.1.1", + "@csstools/postcss-font-format-keywords": "^1.0.1", + "@csstools/postcss-hwb-function": "^1.0.2", + "@csstools/postcss-ic-unit": "^1.0.1", + "@csstools/postcss-is-pseudo-class": "^2.0.7", + "@csstools/postcss-nested-calc": "^1.0.0", + "@csstools/postcss-normalize-display-values": "^1.0.1", + "@csstools/postcss-oklab-function": "^1.1.1", + "@csstools/postcss-progressive-custom-properties": "^1.3.0", + "@csstools/postcss-stepped-value-functions": "^1.0.1", + "@csstools/postcss-text-decoration-shorthand": "^1.0.0", + "@csstools/postcss-trigonometric-functions": "^1.0.2", + "@csstools/postcss-unset-value": "^1.0.2", + "autoprefixer": "^10.4.8", + "browserslist": "^4.21.3", + "css-blank-pseudo": "^3.0.3", + "css-has-pseudo": "^3.0.4", + "css-prefers-color-scheme": "^6.0.3", + "cssdb": "^7.0.0", + "postcss-attribute-case-insensitive": "^5.0.2", + "postcss-clamp": "^4.1.0", + "postcss-color-functional-notation": "^4.2.4", + "postcss-color-hex-alpha": "^8.0.4", + "postcss-color-rebeccapurple": "^7.1.1", + "postcss-custom-media": "^8.0.2", + "postcss-custom-properties": "^12.1.8", + "postcss-custom-selectors": "^6.0.3", + "postcss-dir-pseudo-class": "^6.0.5", + "postcss-double-position-gradients": "^3.1.2", + "postcss-env-function": "^4.0.6", + "postcss-focus-visible": "^6.0.4", + "postcss-focus-within": "^5.0.4", + "postcss-font-variant": "^5.0.0", + "postcss-gap-properties": "^3.0.5", + "postcss-image-set-function": "^4.0.7", + "postcss-initial": "^4.0.1", + "postcss-lab-function": "^4.2.1", + "postcss-logical": "^5.0.4", + "postcss-media-minmax": "^5.0.0", + "postcss-nesting": "^10.1.10", + "postcss-opacity-percentage": "^1.1.2", + "postcss-overflow-shorthand": "^3.0.4", + "postcss-page-break": "^3.0.4", + "postcss-place": "^7.0.5", + "postcss-pseudo-class-any-link": "^7.1.6", + "postcss-replace-overflow-wrap": "^4.0.0", + "postcss-selector-not": "^6.0.1", + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.2" + } + }, + "node_modules/postcss-pseudo-class-any-link": { + "version": "7.1.6", + "resolved": "https://registry.npmjs.org/postcss-pseudo-class-any-link/-/postcss-pseudo-class-any-link-7.1.6.tgz", + "integrity": "sha512-9sCtZkO6f/5ML9WcTLcIyV1yz9D1rf0tWc+ulKcvV30s0iZKS/ONyETvoWsr6vnrmW+X+KmuK3gV/w5EWnT37w==", + "peer": true, + "dependencies": { + "postcss-selector-parser": "^6.0.10" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.2" + } + }, + "node_modules/postcss-pseudo-class-any-link/node_modules/postcss-selector-parser": { + "version": "6.1.2", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.1.2.tgz", + "integrity": "sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg==", + "peer": true, + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-replace-overflow-wrap": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/postcss-replace-overflow-wrap/-/postcss-replace-overflow-wrap-4.0.0.tgz", + "integrity": "sha512-KmF7SBPphT4gPPcKZc7aDkweHiKEEO8cla/GjcBK+ckKxiZslIu3C4GCRW3DNfL0o7yW7kMQu9xlZ1kXRXLXtw==", + "peer": true, + "peerDependencies": { + "postcss": "^8.0.3" + } + }, + "node_modules/postcss-selector-not": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/postcss-selector-not/-/postcss-selector-not-6.0.1.tgz", + "integrity": "sha512-1i9affjAe9xu/y9uqWH+tD4r6/hDaXJruk8xn2x1vzxC2U3J3LKO3zJW4CyxlNhA56pADJ/djpEwpH1RClI2rQ==", + "peer": true, + "dependencies": { + "postcss-selector-parser": "^6.0.10" + }, + "engines": { + "node": "^12 || ^14 || >=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + }, + "peerDependencies": { + "postcss": "^8.2" + } + }, + "node_modules/postcss-selector-not/node_modules/postcss-selector-parser": { + "version": "6.1.2", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.1.2.tgz", + "integrity": "sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg==", + "peer": true, + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-selector-parser": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-7.1.0.tgz", + "integrity": "sha512-8sLjZwK0R+JlxlYcTuVnyT2v+htpdrjDOKuMcOVdYjt52Lh8hWRYpxBPoKx/Zg+bcjc3wx6fmQevMmUztS/ccA==", + "peer": true, + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-url": { + "version": "10.1.3", + "resolved": "https://registry.npmjs.org/postcss-url/-/postcss-url-10.1.3.tgz", + "integrity": "sha512-FUzyxfI5l2tKmXdYc6VTu3TWZsInayEKPbiyW+P6vmmIrrb4I6CGX0BFoewgYHLK+oIL5FECEK02REYRpBvUCw==", + "peer": true, + "dependencies": { + "make-dir": "~3.1.0", + "mime": "~2.5.2", + "minimatch": "~3.0.4", + "xxhashjs": "~0.2.2" + }, + "engines": { + "node": ">=10" + }, + "peerDependencies": { + "postcss": "^8.0.0" + } + }, + "node_modules/postcss-url/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "peer": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/postcss-url/node_modules/mime": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/mime/-/mime-2.5.2.tgz", + "integrity": "sha512-tqkh47FzKeCPD2PUiPB6pkbMzsCasjxAfC62/Wap5qrUWcb+sFasXUC5I3gYM5iBM8v/Qpn4UK0x+j0iHyFPDg==", + "peer": true, + "bin": { + "mime": "cli.js" + }, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/postcss-url/node_modules/minimatch": { + "version": "3.0.8", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.8.tgz", + "integrity": "sha512-6FsRAQsxQ61mw+qP1ZzbL9Bc78x2p5OqNgNpnoAFLTrX8n5Kxph0CsnhmKKNXTWjXqU5L0pGPR7hYk+XWZr60Q==", + "peer": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/postcss-value-parser": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz", + "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==", + "peer": true + }, + "node_modules/pretty-bytes": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/pretty-bytes/-/pretty-bytes-5.6.0.tgz", + "integrity": "sha512-FFw039TmrBqFK8ma/7OL3sDz/VytdtJr044/QUJtH0wK9lb9jLq9tJyIxUwtQJHwar2BqtiA4iCWSwo9JLkzFg==", + "peer": true, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/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==", + "peer": true + }, + "node_modules/promise-inflight": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/promise-inflight/-/promise-inflight-1.0.1.tgz", + "integrity": "sha512-6zWPyEOFaQBJYcGMHBKTKJ3u6TBsnMFOIZSa6ce1e/ZrrsOlnHRHbabMjLiBYKp+n44X9eUI6VUPaukCXHuG4g==", + "peer": true + }, + "node_modules/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==", + "peer": true, + "dependencies": { + "forwarded": "0.2.0", + "ipaddr.js": "1.9.1" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/proxy-addr/node_modules/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==", + "peer": true, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/prr": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/prr/-/prr-1.0.1.tgz", + "integrity": "sha512-yPw4Sng1gWghHQWj0B3ZggWUm4qVbPwPFcRG8KyxiU7J2OHFSoEHKS+EZ3fv5l1t9CyCiop6l/ZYeWbrgoQejw==", + "optional": true, + "peer": true + }, + "node_modules/punycode": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz", + "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==", + "peer": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/qs": { + "version": "6.13.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.13.0.tgz", + "integrity": "sha512-+38qI9SOr8tfZ4QmJNplMUxqjbe7LKvvZgWdExBOmd+egZTtjLB67Gu0HRX3u/XOq7UU2Nx6nsjvS16Z9uwfpg==", + "peer": true, + "dependencies": { + "side-channel": "^1.0.6" + }, + "engines": { + "node": ">=0.6" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/queue-microtask": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", + "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "peer": true + }, + "node_modules/randombytes": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", + "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", + "peer": true, + "dependencies": { + "safe-buffer": "^5.1.0" + } + }, + "node_modules/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==", + "peer": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/raw-body": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.2.tgz", + "integrity": "sha512-8zGqypfENjCIqGhgXToC8aB2r7YrBX+AQAfIPs/Mlk+BtPTztOvTS01NRW/3Eh60J+a48lt8qsCzirQ6loCVfA==", + "peer": true, + "dependencies": { + "bytes": "3.1.2", + "http-errors": "2.0.0", + "iconv-lite": "0.4.24", + "unpipe": "1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/read-cache": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/read-cache/-/read-cache-1.0.0.tgz", + "integrity": "sha512-Owdv/Ft7IjOgm/i0xvNDZ1LrRANRfew4b2prF3OWMQLxLfu3bS8FVhCsrSCMK4lR56Y9ya+AThoTpDCTxCmpRA==", + "peer": true, + "dependencies": { + "pify": "^2.3.0" + } + }, + "node_modules/readable-stream": { + "version": "3.6.2", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", + "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", + "peer": true, + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/readdirp": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "peer": true, + "dependencies": { + "picomatch": "^2.2.1" + }, + "engines": { + "node": ">=8.10.0" + } + }, + "node_modules/readdirp/node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "peer": true, + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/reflect-metadata": { + "version": "0.1.14", + "resolved": "https://registry.npmjs.org/reflect-metadata/-/reflect-metadata-0.1.14.tgz", + "integrity": "sha512-ZhYeb6nRaXCfhnndflDK8qI6ZQ/YcWZCISRAWICW9XYqMUwjZM9Z0DveWX/ABN01oxSHwVxKQmxeYZSsm0jh5A==", + "peer": true + }, + "node_modules/regenerate": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.2.tgz", + "integrity": "sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==", + "peer": true + }, + "node_modules/regenerate-unicode-properties": { + "version": "10.2.0", + "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-10.2.0.tgz", + "integrity": "sha512-DqHn3DwbmmPVzeKj9woBadqmXxLvQoQIwu7nopMc72ztvxVmVk2SBhSnx67zuye5TP+lJsb/TBQsjLKhnDf3MA==", + "peer": true, + "dependencies": { + "regenerate": "^1.4.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/regenerator-runtime": { + "version": "0.13.9", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.9.tgz", + "integrity": "sha512-p3VT+cOEgxFsRRA9X4lkI1E+k2/CtnKtU4gcxyaCUreilL/vqI6CdZ3wxVUx3UOUg+gnUOQQcRI7BmSI656MYA==", + "peer": true + }, + "node_modules/regenerator-transform": { + "version": "0.15.2", + "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.15.2.tgz", + "integrity": "sha512-hfMp2BoF0qOk3uc5V20ALGDS2ddjQaLrdl7xrGXvAIow7qeWRM2VA2HuCHkUKk9slq3VwEwLNK3DFBqDfPGYtg==", + "peer": true, + "dependencies": { + "@babel/runtime": "^7.8.4" + } + }, + "node_modules/regex-parser": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/regex-parser/-/regex-parser-2.3.1.tgz", + "integrity": "sha512-yXLRqatcCuKtVHsWrNg0JL3l1zGfdXeEvDa0bdu4tCDQw0RpMDZsqbkyRTUnKMR0tXF627V2oEWjBEaEdqTwtQ==", + "peer": true + }, + "node_modules/regexpu-core": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-6.2.0.tgz", + "integrity": "sha512-H66BPQMrv+V16t8xtmq+UC0CBpiTBA60V8ibS1QVReIp8T1z8hwFxqcGzm9K6lgsN7sB5edVH8a+ze6Fqm4weA==", + "peer": true, + "dependencies": { + "regenerate": "^1.4.2", + "regenerate-unicode-properties": "^10.2.0", + "regjsgen": "^0.8.0", + "regjsparser": "^0.12.0", + "unicode-match-property-ecmascript": "^2.0.0", + "unicode-match-property-value-ecmascript": "^2.1.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/regjsgen": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.8.0.tgz", + "integrity": "sha512-RvwtGe3d7LvWiDQXeQw8p5asZUmfU1G/l6WbUXeHta7Y2PEIvBTwH6E2EfmYUK8pxcxEdEmaomqyp0vZZ7C+3Q==", + "peer": true + }, + "node_modules/regjsparser": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.12.0.tgz", + "integrity": "sha512-cnE+y8bz4NhMjISKbgeVJtqNbtf5QpjZP+Bslo+UqkIt9QPnX9q095eiRRASJG1/tz6dlNr6Z5NsBiWYokp6EQ==", + "peer": true, + "dependencies": { + "jsesc": "~3.0.2" + }, + "bin": { + "regjsparser": "bin/parser" + } + }, + "node_modules/regjsparser/node_modules/jsesc": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-3.0.2.tgz", + "integrity": "sha512-xKqzzWXDttJuOcawBt4KnKHHIf5oQ/Cxax+0PWFG+DFDgHNAdi+TXECADI+RYiFUMmx8792xsMbbgXj4CwnP4g==", + "peer": true, + "bin": { + "jsesc": "bin/jsesc" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/require-directory": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", + "peer": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/require-from-string": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz", + "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==", + "peer": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/requires-port": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz", + "integrity": "sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==", + "peer": true + }, + "node_modules/resolve": { + "version": "1.22.10", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.10.tgz", + "integrity": "sha512-NPRy+/ncIMeDlTAsuqwKIiferiawhefFJtkNSW0qZJEqMEb+qBt/77B/jGeeek+F0uOeN05CDa6HXbbIgtVX4w==", + "dependencies": { + "is-core-module": "^2.16.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/resolve-from": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", + "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/resolve-url-loader": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/resolve-url-loader/-/resolve-url-loader-5.0.0.tgz", + "integrity": "sha512-uZtduh8/8srhBoMx//5bwqjQ+rfYOUq8zC9NrMUGtjBiGTtFJM42s58/36+hTqeqINcnYe08Nj3LkK9lW4N8Xg==", + "peer": true, + "dependencies": { + "adjust-sourcemap-loader": "^4.0.0", + "convert-source-map": "^1.7.0", + "loader-utils": "^2.0.0", + "postcss": "^8.2.14", + "source-map": "0.6.1" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/resolve-url-loader/node_modules/loader-utils": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.4.tgz", + "integrity": "sha512-xXqpXoINfFhgua9xiqD8fPFHgkoq1mmmpE92WlDbm9rNRd/EbRb+Gqf908T2DMfuHjjJlksiK2RbHVOdD/MqSw==", + "peer": true, + "dependencies": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^2.1.2" + }, + "engines": { + "node": ">=8.9.0" + } + }, + "node_modules/resolve-url-loader/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "peer": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/restore-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz", + "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==", + "peer": true, + "dependencies": { + "onetime": "^5.1.0", + "signal-exit": "^3.0.2" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/retry": { + "version": "0.13.1", + "resolved": "https://registry.npmjs.org/retry/-/retry-0.13.1.tgz", + "integrity": "sha512-XQBQ3I8W1Cge0Seh+6gjj03LbmRFWuoszgK9ooCpwYIrhhoO80pfq4cUkU5DkknwfOfFteRwlZ56PYOGYyFWdg==", + "peer": true, + "engines": { + "node": ">= 4" + } + }, + "node_modules/reusify": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.1.0.tgz", + "integrity": "sha512-g6QUff04oZpHs0eG5p83rFLhHeV00ug/Yf9nZM6fLeUrPguBTkTQOdpAWWspMh55TZfVQDPaN3NQJfbVRAxdIw==", + "peer": true, + "engines": { + "iojs": ">=1.0.0", + "node": ">=0.10.0" + } + }, + "node_modules/rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "deprecated": "Rimraf versions prior to v4 are no longer supported", + "peer": true, + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/rimraf/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "peer": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/rimraf/node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "deprecated": "Glob versions prior to v9 are no longer supported", + "peer": true, + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/rimraf/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "peer": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/rollup": { + "version": "2.78.0", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-2.78.0.tgz", + "integrity": "sha512-4+YfbQC9QEVvKTanHhIAFVUFSRsezvQF8vFOJwtGfb9Bb+r014S+qryr9PSmw8x6sMnPkmFBGAvIFVQxvJxjtg==", + "peer": true, + "bin": { + "rollup": "dist/bin/rollup" + }, + "engines": { + "node": ">=10.0.0" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + } + }, + "node_modules/rollup-plugin-sourcemaps": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/rollup-plugin-sourcemaps/-/rollup-plugin-sourcemaps-0.6.3.tgz", + "integrity": "sha512-paFu+nT1xvuO1tPFYXGe+XnQvg4Hjqv/eIhG8i5EspfYYPBKL57X7iVbfv55aNVASg3dzWvES9dmWsL2KhfByw==", + "peer": true, + "dependencies": { + "@rollup/pluginutils": "^3.0.9", + "source-map-resolve": "^0.6.0" + }, + "engines": { + "node": ">=10.0.0" + }, + "peerDependencies": { + "@types/node": ">=10.0.0", + "rollup": ">=0.31.2" + }, + "peerDependenciesMeta": { + "@types/node": { + "optional": true + } + } + }, + "node_modules/rollup-plugin-sourcemaps/node_modules/@rollup/pluginutils": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-3.1.0.tgz", + "integrity": "sha512-GksZ6pr6TpIjHm8h9lSQ8pi8BE9VeubNT0OMJ3B5uZJ8pz73NPiqOtCog/x2/QzM1ENChPKxMDhiQuRHsqc+lg==", + "peer": true, + "dependencies": { + "@types/estree": "0.0.39", + "estree-walker": "^1.0.1", + "picomatch": "^2.2.2" + }, + "engines": { + "node": ">= 8.0.0" + }, + "peerDependencies": { + "rollup": "^1.20.0||^2.0.0" + } + }, + "node_modules/rollup-plugin-sourcemaps/node_modules/@types/estree": { + "version": "0.0.39", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.39.tgz", + "integrity": "sha512-EYNwp3bU+98cpU4lAWYYL7Zz+2gryWH1qbdDTidVd6hkiR6weksdbMadyXKXNPEkQFhXM+hVO9ZygomHXp+AIw==", + "peer": true + }, + "node_modules/rollup-plugin-sourcemaps/node_modules/estree-walker": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-1.0.1.tgz", + "integrity": "sha512-1fMXF3YP4pZZVozF8j/ZLfvnR8NSIljt56UhbZ5PeeDmmGHpgpdwQt7ITlGvYaQukCvuBRMLEiKiYC+oeIg4cg==", + "peer": true + }, + "node_modules/rollup-plugin-sourcemaps/node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "peer": true, + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/run-async": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.4.1.tgz", + "integrity": "sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==", + "peer": true, + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/run-parallel": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", + "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "peer": true, + "dependencies": { + "queue-microtask": "^1.2.2" + } + }, + "node_modules/rxjs": { + "version": "7.8.2", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.8.2.tgz", + "integrity": "sha512-dhKf903U/PQZY6boNNtAGdWbG85WAbjT/1xYoZIC7FAY0yWapOBQVsVrDl58W86//e1VpMNBtRV4MaXfdMySFA==", + "dependencies": { + "tslib": "^2.1.0" + } + }, + "node_modules/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==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "peer": true + }, + "node_modules/safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", + "peer": true + }, + "node_modules/sass": { + "version": "1.54.4", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.54.4.tgz", + "integrity": "sha512-3tmF16yvnBwtlPrNBHw/H907j8MlOX8aTBnlNX1yrKx24RKcJGPyLhFUwkoKBKesR3unP93/2z14Ll8NicwQUA==", + "peer": true, + "dependencies": { + "chokidar": ">=3.0.0 <4.0.0", + "immutable": "^4.0.0", + "source-map-js": ">=0.6.2 <2.0.0" + }, + "bin": { + "sass": "sass.js" + }, + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/sass-loader": { + "version": "13.0.2", + "resolved": "https://registry.npmjs.org/sass-loader/-/sass-loader-13.0.2.tgz", + "integrity": "sha512-BbiqbVmbfJaWVeOOAu2o7DhYWtcNmTfvroVgFXa6k2hHheMxNAeDHLNoDy/Q5aoaVlz0LH+MbMktKwm9vN/j8Q==", + "peer": true, + "dependencies": { + "klona": "^2.0.4", + "neo-async": "^2.6.2" + }, + "engines": { + "node": ">= 14.15.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "fibers": ">= 3.1.0", + "node-sass": "^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0", + "sass": "^1.3.0", + "sass-embedded": "*", + "webpack": "^5.0.0" + }, + "peerDependenciesMeta": { + "fibers": { + "optional": true + }, + "node-sass": { + "optional": true + }, + "sass": { + "optional": true + }, + "sass-embedded": { + "optional": true + } + } + }, + "node_modules/sax": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/sax/-/sax-1.4.1.tgz", + "integrity": "sha512-+aWOz7yVScEGoKNd4PA10LZ8sk0A/z5+nXQG5giUO5rprX9jgYsTdov9qCchZiPIZezbZH+jRut8nPodFAX4Jg==", + "optional": true, + "peer": true + }, + "node_modules/schema-utils": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-2.7.1.tgz", + "integrity": "sha512-SHiNtMOUGWBQJwzISiVYKu82GiV4QYGePp3odlY1tuKO7gPtphAT5R/py0fA6xtbgLL/RvtJZnU9b8s0F1q0Xg==", + "peer": true, + "dependencies": { + "@types/json-schema": "^7.0.5", + "ajv": "^6.12.4", + "ajv-keywords": "^3.5.2" + }, + "engines": { + "node": ">= 8.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/schema-utils/node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "peer": true, + "dependencies": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/schema-utils/node_modules/ajv-keywords": { + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", + "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", + "peer": true, + "peerDependencies": { + "ajv": "^6.9.1" + } + }, + "node_modules/schema-utils/node_modules/json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "peer": true + }, + "node_modules/select-hose": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/select-hose/-/select-hose-2.0.0.tgz", + "integrity": "sha512-mEugaLK+YfkijB4fx0e6kImuJdCIt2LxCRcbEYPqRGCs4F2ogyfZU5IAZRdjCP8JPq2AtdNoC/Dux63d9Kiryg==", + "peer": true + }, + "node_modules/selfsigned": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/selfsigned/-/selfsigned-2.4.1.tgz", + "integrity": "sha512-th5B4L2U+eGLq1TVh7zNRGBapioSORUeymIydxgFpwww9d2qyKvtuPU2jJuHvYAwwqi2Y596QBL3eEqcPEYL8Q==", + "peer": true, + "dependencies": { + "@types/node-forge": "^1.3.0", + "node-forge": "^1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/semver": { + "version": "7.5.3", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.3.tgz", + "integrity": "sha512-QBlUtyVk/5EeHbi7X0fw6liDZc7BBmEaSYn01fMU1OUYbf6GPsbTtd8WmnqbI20SeycoHSeiybkE/q1Q+qlThQ==", + "peer": true, + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/semver/node_modules/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==", + "peer": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/semver/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "peer": true + }, + "node_modules/send": { + "version": "0.19.0", + "resolved": "https://registry.npmjs.org/send/-/send-0.19.0.tgz", + "integrity": "sha512-dW41u5VfLXu8SJh5bwRmyYUbAoSB3c9uQh6L8h/KtsFREPWpbX1lrljJo186Jc4nmci/sGUZ9a0a0J2zgfq2hw==", + "peer": true, + "dependencies": { + "debug": "2.6.9", + "depd": "2.0.0", + "destroy": "1.2.0", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "fresh": "0.5.2", + "http-errors": "2.0.0", + "mime": "1.6.0", + "ms": "2.1.3", + "on-finished": "2.4.1", + "range-parser": "~1.2.1", + "statuses": "2.0.1" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/send/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "peer": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/send/node_modules/debug/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "peer": true + }, + "node_modules/send/node_modules/encodeurl": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", + "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==", + "peer": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/serialize-javascript": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.2.tgz", + "integrity": "sha512-Saa1xPByTTq2gdeFZYLLo+RFE35NHZkAbqZeWNd3BpzppeVisAqpDjcp8dyf6uIvEqJRd46jemmyA4iFIeVk8g==", + "peer": true, + "dependencies": { + "randombytes": "^2.1.0" + } + }, + "node_modules/serve-index": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/serve-index/-/serve-index-1.9.1.tgz", + "integrity": "sha512-pXHfKNP4qujrtteMrSBb0rc8HJ9Ms/GrXwcUtUtD5s4ewDJI8bT3Cz2zTVRMKtri49pLx2e0Ya8ziP5Ya2pZZw==", + "peer": true, + "dependencies": { + "accepts": "~1.3.4", + "batch": "0.6.1", + "debug": "2.6.9", + "escape-html": "~1.0.3", + "http-errors": "~1.6.2", + "mime-types": "~2.1.17", + "parseurl": "~1.3.2" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/serve-index/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "peer": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/serve-index/node_modules/depd": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", + "integrity": "sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==", + "peer": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/serve-index/node_modules/http-errors": { + "version": "1.6.3", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz", + "integrity": "sha512-lks+lVC8dgGyh97jxvxeYTWQFvh4uw4yC12gVl63Cg30sjPX4wuGcdkICVXDAESr6OJGjqGA8Iz5mkeN6zlD7A==", + "peer": true, + "dependencies": { + "depd": "~1.1.2", + "inherits": "2.0.3", + "setprototypeof": "1.1.0", + "statuses": ">= 1.4.0 < 2" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/serve-index/node_modules/inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw==", + "peer": true + }, + "node_modules/serve-index/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "peer": true + }, + "node_modules/serve-index/node_modules/setprototypeof": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz", + "integrity": "sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==", + "peer": true + }, + "node_modules/serve-index/node_modules/statuses": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", + "integrity": "sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA==", + "peer": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/serve-static": { + "version": "1.16.2", + "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.16.2.tgz", + "integrity": "sha512-VqpjJZKadQB/PEbEwvFdO43Ax5dFBZ2UECszz8bQ7pi7wt//PWe1P6MN7eCnjsatYtBT6EuiClbjSWP2WrIoTw==", + "peer": true, + "dependencies": { + "encodeurl": "~2.0.0", + "escape-html": "~1.0.3", + "parseurl": "~1.3.3", + "send": "0.19.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/setprototypeof": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", + "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==", + "peer": true + }, + "node_modules/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==", + "peer": true, + "dependencies": { + "kind-of": "^6.0.2" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "peer": true, + "dependencies": { + "shebang-regex": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/side-channel": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.1.0.tgz", + "integrity": "sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw==", + "peer": true, + "dependencies": { + "es-errors": "^1.3.0", + "object-inspect": "^1.13.3", + "side-channel-list": "^1.0.0", + "side-channel-map": "^1.0.1", + "side-channel-weakmap": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/side-channel-list": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/side-channel-list/-/side-channel-list-1.0.0.tgz", + "integrity": "sha512-FCLHtRD/gnpCiCHEiJLOwdmFP+wzCmDEkc9y7NsYxeF4u7Btsn1ZuwgwJGxImImHicJArLP4R0yX4c2KCrMrTA==", + "peer": true, + "dependencies": { + "es-errors": "^1.3.0", + "object-inspect": "^1.13.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/side-channel-map": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/side-channel-map/-/side-channel-map-1.0.1.tgz", + "integrity": "sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA==", + "peer": true, + "dependencies": { + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.5", + "object-inspect": "^1.13.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/side-channel-weakmap": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/side-channel-weakmap/-/side-channel-weakmap-1.0.2.tgz", + "integrity": "sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A==", + "peer": true, + "dependencies": { + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.5", + "object-inspect": "^1.13.3", + "side-channel-map": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/signal-exit": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", + "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", + "peer": true + }, + "node_modules/slash": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-4.0.0.tgz", + "integrity": "sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==", + "peer": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/sockjs": { + "version": "0.3.24", + "resolved": "https://registry.npmjs.org/sockjs/-/sockjs-0.3.24.tgz", + "integrity": "sha512-GJgLTZ7vYb/JtPSSZ10hsOYIvEYsjbNU+zPdIHcUaWVNUEPivzxku31865sSSud0Da0W4lEeOPlmw93zLQchuQ==", + "peer": true, + "dependencies": { + "faye-websocket": "^0.11.3", + "uuid": "^8.3.2", + "websocket-driver": "^0.7.4" + } + }, + "node_modules/source-map": { + "version": "0.7.4", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz", + "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==", + "peer": true, + "engines": { + "node": ">= 8" + } + }, + "node_modules/source-map-js": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.1.tgz", + "integrity": "sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==", + "peer": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/source-map-loader": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/source-map-loader/-/source-map-loader-4.0.0.tgz", + "integrity": "sha512-i3KVgM3+QPAHNbGavK+VBq03YoJl24m9JWNbLgsjTj8aJzXG9M61bantBTNBt7CNwY2FYf+RJRYJ3pzalKjIrw==", + "peer": true, + "dependencies": { + "abab": "^2.0.6", + "iconv-lite": "^0.6.3", + "source-map-js": "^1.0.2" + }, + "engines": { + "node": ">= 14.15.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^5.72.1" + } + }, + "node_modules/source-map-loader/node_modules/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==", + "peer": true, + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/source-map-resolve": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.6.0.tgz", + "integrity": "sha512-KXBr9d/fO/bWo97NXsPIAW1bFSBOuCnjbNTBMO7N59hsv5i9yzRDfcYwwt0l04+VqnKC+EwzvJZIP/qkuMgR/w==", + "deprecated": "See https://github.com/lydell/source-map-resolve#deprecated", + "peer": true, + "dependencies": { + "atob": "^2.1.2", + "decode-uri-component": "^0.2.0" + } + }, + "node_modules/source-map-support": { + "version": "0.5.21", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", + "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", + "peer": true, + "dependencies": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" + } + }, + "node_modules/source-map-support/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "peer": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/sourcemap-codec": { + "version": "1.4.8", + "resolved": "https://registry.npmjs.org/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz", + "integrity": "sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==", + "deprecated": "Please use @jridgewell/sourcemap-codec instead", + "peer": true + }, + "node_modules/spdy": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/spdy/-/spdy-4.0.2.tgz", + "integrity": "sha512-r46gZQZQV+Kl9oItvl1JZZqJKGr+oEkB08A6BzkiR7593/7IbtuncXHd2YoYeTsG4157ZssMu9KYvUHLcjcDoA==", + "peer": true, + "dependencies": { + "debug": "^4.1.0", + "handle-thing": "^2.0.0", + "http-deceiver": "^1.2.7", + "select-hose": "^2.0.0", + "spdy-transport": "^3.0.0" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/spdy-transport": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/spdy-transport/-/spdy-transport-3.0.0.tgz", + "integrity": "sha512-hsLVFE5SjA6TCisWeJXFKniGGOpBgMLmerfO2aCyCU5s7nJ/rpAepqmFifv/GCbSbueEeAJJnmSQ2rKC/g8Fcw==", + "peer": true, + "dependencies": { + "debug": "^4.1.0", + "detect-node": "^2.0.4", + "hpack.js": "^2.1.6", + "obuf": "^1.1.2", + "readable-stream": "^3.0.6", + "wbuf": "^1.7.3" + } + }, + "node_modules/sprintf-js": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", + "peer": true + }, + "node_modules/ssri": { + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/ssri/-/ssri-9.0.1.tgz", + "integrity": "sha512-o57Wcn66jMQvfHG1FlYbWeZWW/dHZhJXjpIcTfXldXEk5nz5lStPo3mK0OJQfGR3RbZUlbISexbljkJzuEj/8Q==", + "peer": true, + "dependencies": { + "minipass": "^3.1.1" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/statuses": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", + "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", + "peer": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/string_decoder": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "peer": true, + "dependencies": { + "safe-buffer": "~5.2.0" + } + }, + "node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "peer": true, + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "peer": true, + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-final-newline": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz", + "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==", + "peer": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/stylus": { + "version": "0.59.0", + "resolved": "https://registry.npmjs.org/stylus/-/stylus-0.59.0.tgz", + "integrity": "sha512-lQ9w/XIOH5ZHVNuNbWW8D822r+/wBSO/d6XvtyHLF7LW4KaCIDeVbvn5DF8fGCJAUCwVhVi/h6J0NUcnylUEjg==", + "peer": true, + "dependencies": { + "@adobe/css-tools": "^4.0.1", + "debug": "^4.3.2", + "glob": "^7.1.6", + "sax": "~1.2.4", + "source-map": "^0.7.3" + }, + "bin": { + "stylus": "bin/stylus" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://opencollective.com/stylus" + } + }, + "node_modules/stylus-loader": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/stylus-loader/-/stylus-loader-7.0.0.tgz", + "integrity": "sha512-WTbtLrNfOfLgzTaR9Lj/BPhQroKk/LC1hfTXSUbrxmxgfUo3Y3LpmKRVA2R1XbjvTAvOfaian9vOyfv1z99E+A==", + "peer": true, + "dependencies": { + "fast-glob": "^3.2.11", + "klona": "^2.0.5", + "normalize-path": "^3.0.0" + }, + "engines": { + "node": ">= 14.15.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "stylus": ">=0.52.4", + "webpack": "^5.0.0" + } + }, + "node_modules/stylus/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "peer": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/stylus/node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "deprecated": "Glob versions prior to v9 are no longer supported", + "peer": true, + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/stylus/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "peer": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/stylus/node_modules/sax": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", + "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==", + "peer": true + }, + "node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "peer": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/supports-preserve-symlinks-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/tapable": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz", + "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==", + "peer": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/tar": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/tar/-/tar-6.2.1.tgz", + "integrity": "sha512-DZ4yORTwrbTj/7MZYq2w+/ZFdI6OZ/f9SFHR+71gIVUZhOQPHzVCLpvRnPgyaMpfWxxk/4ONva3GQSyNIKRv6A==", + "peer": true, + "dependencies": { + "chownr": "^2.0.0", + "fs-minipass": "^2.0.0", + "minipass": "^5.0.0", + "minizlib": "^2.1.1", + "mkdirp": "^1.0.3", + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/tar/node_modules/minipass": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz", + "integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==", + "peer": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/tar/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "peer": true + }, + "node_modules/terser": { + "version": "5.14.2", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.14.2.tgz", + "integrity": "sha512-oL0rGeM/WFQCUd0y2QrWxYnq7tfSuKBiqTjRPWrRgB46WD/kiwHwF8T23z78H6Q6kGCuuHcPB+KULHRdxvVGQA==", + "peer": true, + "dependencies": { + "@jridgewell/source-map": "^0.3.2", + "acorn": "^8.5.0", + "commander": "^2.20.0", + "source-map-support": "~0.5.20" + }, + "bin": { + "terser": "bin/terser" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/terser-webpack-plugin": { + "version": "5.3.14", + "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.3.14.tgz", + "integrity": "sha512-vkZjpUjb6OMS7dhV+tILUW6BhpDR7P2L/aQSAv+Uwk+m8KATX9EccViHTJR2qDtACKPIYndLGCyl3FMo+r2LMw==", + "peer": true, + "dependencies": { + "@jridgewell/trace-mapping": "^0.3.25", + "jest-worker": "^27.4.5", + "schema-utils": "^4.3.0", + "serialize-javascript": "^6.0.2", + "terser": "^5.31.1" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^5.1.0" + }, + "peerDependenciesMeta": { + "@swc/core": { + "optional": true + }, + "esbuild": { + "optional": true + }, + "uglify-js": { + "optional": true + } + } + }, + "node_modules/terser-webpack-plugin/node_modules/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==", + "peer": true + }, + "node_modules/terser-webpack-plugin/node_modules/schema-utils": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.3.1.tgz", + "integrity": "sha512-jjlZ7UknkyQxGnHF1w8wDgWfdtnW0hBX7tmDp04zBwDBZ/6tPJI1+RWfBHGMA4+0nAjGptp+eDpIYP6mldJbqg==", + "peer": true, + "dependencies": { + "@types/json-schema": "^7.0.9", + "ajv": "^8.9.0", + "ajv-formats": "^2.1.1", + "ajv-keywords": "^5.1.0" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/terser-webpack-plugin/node_modules/terser": { + "version": "5.39.0", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.39.0.tgz", + "integrity": "sha512-LBAhFyLho16harJoWMg/nZsQYgTrg5jXOn2nCYjRUcZZEdE3qa2zb8QEDRUGVZBW4rlazf2fxkg8tztybTaqWw==", + "peer": true, + "dependencies": { + "@jridgewell/source-map": "^0.3.3", + "acorn": "^8.8.2", + "commander": "^2.20.0", + "source-map-support": "~0.5.20" + }, + "bin": { + "terser": "bin/terser" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/terser/node_modules/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==", + "peer": true + }, + "node_modules/test-exclude": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz", + "integrity": "sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==", + "peer": true, + "dependencies": { + "@istanbuljs/schema": "^0.1.2", + "glob": "^7.1.4", + "minimatch": "^3.0.4" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/test-exclude/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "peer": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/test-exclude/node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "deprecated": "Glob versions prior to v9 are no longer supported", + "peer": true, + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/test-exclude/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "peer": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/text-table": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", + "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==", + "peer": true + }, + "node_modules/through": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", + "integrity": "sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==", + "peer": true + }, + "node_modules/thunky": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/thunky/-/thunky-1.1.0.tgz", + "integrity": "sha512-eHY7nBftgThBqOyHGVN+l8gF0BucP09fMo0oO/Lb0w1OF80dJv+lDVpXG60WMQvkcxAkNybKsrEIE3ZtKGmPrA==", + "peer": true + }, + "node_modules/tmp": { + "version": "0.0.33", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", + "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", + "peer": true, + "dependencies": { + "os-tmpdir": "~1.0.2" + }, + "engines": { + "node": ">=0.6.0" + } + }, + "node_modules/to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "peer": true, + "dependencies": { + "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/toidentifier": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz", + "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==", + "peer": true, + "engines": { + "node": ">=0.6" + } + }, + "node_modules/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==", + "peer": true, + "bin": { + "tree-kill": "cli.js" + } + }, + "node_modules/tslib": { + "version": "2.8.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz", + "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==" + }, + "node_modules/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==", + "peer": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/type-is": { + "version": "1.6.18", + "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz", + "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==", + "peer": true, + "dependencies": { + "media-typer": "0.3.0", + "mime-types": "~2.1.24" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/typed-assert": { + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/typed-assert/-/typed-assert-1.0.9.tgz", + "integrity": "sha512-KNNZtayBCtmnNmbo5mG47p1XsCyrx6iVqomjcZnec/1Y5GGARaxPs6r49RnSPeUP3YjNYiU9sQHAtY4BBvnZwg==", + "peer": true + }, + "node_modules/typescript": { + "version": "4.8.4", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.8.4.tgz", + "integrity": "sha512-QCh+85mCy+h0IGff8r5XWzOVSbBO+KfeYrMQh7NJ58QujwcE22u+NUSmUxqF+un70P9GXKxa2HCNiTTMJknyjQ==", + "peer": true, + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=4.2.0" + } + }, + "node_modules/undici-types": { + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.21.0.tgz", + "integrity": "sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ==", + "peer": true + }, + "node_modules/unicode-canonical-property-names-ecmascript": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.1.tgz", + "integrity": "sha512-dA8WbNeb2a6oQzAQ55YlT5vQAWGV9WXOsi3SskE3bcCdM0P4SDd+24zS/OCacdRq5BkdsRj9q3Pg6YyQoxIGqg==", + "peer": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/unicode-match-property-ecmascript": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-2.0.0.tgz", + "integrity": "sha512-5kaZCrbp5mmbz5ulBkDkbY0SsPOjKqVS35VpL9ulMPfSl0J0Xsm+9Evphv9CoIZFwre7aJoa94AY6seMKGVN5Q==", + "peer": true, + "dependencies": { + "unicode-canonical-property-names-ecmascript": "^2.0.0", + "unicode-property-aliases-ecmascript": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/unicode-match-property-value-ecmascript": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.2.0.tgz", + "integrity": "sha512-4IehN3V/+kkr5YeSSDDQG8QLqO26XpL2XP3GQtqwlT/QYSECAwFztxVHjlbh0+gjJ3XmNLS0zDsbgs9jWKExLg==", + "peer": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/unicode-property-aliases-ecmascript": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-2.1.0.tgz", + "integrity": "sha512-6t3foTQI9qne+OZoVQB/8x8rk2k1eVy1gRXhV3oFQ5T6R1dqQ1xtin3XqSlx3+ATBkliTaR/hHyJBm+LVPNM8w==", + "peer": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/unique-filename": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-1.1.1.tgz", + "integrity": "sha512-Vmp0jIp2ln35UTXuryvjzkjGdRyf9b2lTXuSYUiPmzRcl3FDtYqAwOnTJkAngD9SWhnoJzDbTKwaOrZ+STtxNQ==", + "peer": true, + "dependencies": { + "unique-slug": "^2.0.0" + } + }, + "node_modules/unique-slug": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-2.0.2.tgz", + "integrity": "sha512-zoWr9ObaxALD3DOPfjPSqxt4fnZiWblxHIgeWqW8x7UqDzEtHEQLzji2cuJYQFCU6KmoJikOYAZlrTHHebjx2w==", + "peer": true, + "dependencies": { + "imurmurhash": "^0.1.4" + } + }, + "node_modules/unpipe": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", + "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==", + "peer": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/update-browserslist-db": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.1.3.tgz", + "integrity": "sha512-UxhIZQ+QInVdunkDAaiazvvT/+fXL5Osr0JZlJulepYu6Jd7qJtDZjlur0emRlT71EN3ScPoE7gvsuIKKNavKw==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "peer": true, + "dependencies": { + "escalade": "^3.2.0", + "picocolors": "^1.1.1" + }, + "bin": { + "update-browserslist-db": "cli.js" + }, + "peerDependencies": { + "browserslist": ">= 4.21.0" + } + }, + "node_modules/uri-js": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", + "peer": true, + "dependencies": { + "punycode": "^2.1.0" + } + }, + "node_modules/util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", + "peer": true + }, + "node_modules/utils-merge": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", + "integrity": "sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==", + "peer": true, + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/uuid": { + "version": "8.3.2", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", + "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==", + "peer": true, + "bin": { + "uuid": "dist/bin/uuid" + } + }, + "node_modules/vary": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", + "integrity": "sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==", + "peer": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/watchpack": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.2.tgz", + "integrity": "sha512-TnbFSbcOCcDgjZ4piURLCbJ3nJhznVh9kw6F6iokjiFPl8ONxe9A6nMDVXDiNbrSfLILs6vB07F7wLBrwPYzJw==", + "peer": true, + "dependencies": { + "glob-to-regexp": "^0.4.1", + "graceful-fs": "^4.1.2" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/wbuf": { + "version": "1.7.3", + "resolved": "https://registry.npmjs.org/wbuf/-/wbuf-1.7.3.tgz", + "integrity": "sha512-O84QOnr0icsbFGLS0O3bI5FswxzRr8/gHwWkDlQFskhSPryQXvrTMxjxGP4+iWYoauLoBvfDpkrOauZ+0iZpDA==", + "peer": true, + "dependencies": { + "minimalistic-assert": "^1.0.0" + } + }, + "node_modules/wcwidth": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/wcwidth/-/wcwidth-1.0.1.tgz", + "integrity": "sha512-XHPEwS0q6TaxcvG85+8EYkbiCux2XtWG2mkc47Ng2A77BQu9+DqIOJldST4HgPkuea7dvKSj5VgX3P1d4rW8Tg==", + "peer": true, + "dependencies": { + "defaults": "^1.0.3" + } + }, + "node_modules/webpack": { + "version": "5.76.1", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.76.1.tgz", + "integrity": "sha512-4+YIK4Abzv8172/SGqObnUjaIHjLEuUasz9EwQj/9xmPPkYJy2Mh03Q/lJfSD3YLzbxy5FeTq5Uw0323Oh6SJQ==", + "peer": true, + "dependencies": { + "@types/eslint-scope": "^3.7.3", + "@types/estree": "^0.0.51", + "@webassemblyjs/ast": "1.11.1", + "@webassemblyjs/wasm-edit": "1.11.1", + "@webassemblyjs/wasm-parser": "1.11.1", + "acorn": "^8.7.1", + "acorn-import-assertions": "^1.7.6", + "browserslist": "^4.14.5", + "chrome-trace-event": "^1.0.2", + "enhanced-resolve": "^5.10.0", + "es-module-lexer": "^0.9.0", + "eslint-scope": "5.1.1", + "events": "^3.2.0", + "glob-to-regexp": "^0.4.1", + "graceful-fs": "^4.2.9", + "json-parse-even-better-errors": "^2.3.1", + "loader-runner": "^4.2.0", + "mime-types": "^2.1.27", + "neo-async": "^2.6.2", + "schema-utils": "^3.1.0", + "tapable": "^2.1.1", + "terser-webpack-plugin": "^5.1.3", + "watchpack": "^2.4.0", + "webpack-sources": "^3.2.3" + }, + "bin": { + "webpack": "bin/webpack.js" + }, + "engines": { + "node": ">=10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependenciesMeta": { + "webpack-cli": { + "optional": true + } + } + }, + "node_modules/webpack-dev-middleware": { + "version": "5.3.3", + "resolved": "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-5.3.3.tgz", + "integrity": "sha512-hj5CYrY0bZLB+eTO+x/j67Pkrquiy7kWepMHmUMoPsmcUaeEnQJqFzHJOyxgWlq746/wUuA64p9ta34Kyb01pA==", + "peer": true, + "dependencies": { + "colorette": "^2.0.10", + "memfs": "^3.4.3", + "mime-types": "^2.1.31", + "range-parser": "^1.2.1", + "schema-utils": "^4.0.0" + }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^4.0.0 || ^5.0.0" + } + }, + "node_modules/webpack-dev-middleware/node_modules/schema-utils": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.3.1.tgz", + "integrity": "sha512-jjlZ7UknkyQxGnHF1w8wDgWfdtnW0hBX7tmDp04zBwDBZ/6tPJI1+RWfBHGMA4+0nAjGptp+eDpIYP6mldJbqg==", + "peer": true, + "dependencies": { + "@types/json-schema": "^7.0.9", + "ajv": "^8.9.0", + "ajv-formats": "^2.1.1", + "ajv-keywords": "^5.1.0" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/webpack-dev-server": { + "version": "4.11.0", + "resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-4.11.0.tgz", + "integrity": "sha512-L5S4Q2zT57SK7tazgzjMiSMBdsw+rGYIX27MgPgx7LDhWO0lViPrHKoLS7jo5In06PWYAhlYu3PbyoC6yAThbw==", + "peer": true, + "dependencies": { + "@types/bonjour": "^3.5.9", + "@types/connect-history-api-fallback": "^1.3.5", + "@types/express": "^4.17.13", + "@types/serve-index": "^1.9.1", + "@types/serve-static": "^1.13.10", + "@types/sockjs": "^0.3.33", + "@types/ws": "^8.5.1", + "ansi-html-community": "^0.0.8", + "bonjour-service": "^1.0.11", + "chokidar": "^3.5.3", + "colorette": "^2.0.10", + "compression": "^1.7.4", + "connect-history-api-fallback": "^2.0.0", + "default-gateway": "^6.0.3", + "express": "^4.17.3", + "graceful-fs": "^4.2.6", + "html-entities": "^2.3.2", + "http-proxy-middleware": "^2.0.3", + "ipaddr.js": "^2.0.1", + "open": "^8.0.9", + "p-retry": "^4.5.0", + "rimraf": "^3.0.2", + "schema-utils": "^4.0.0", + "selfsigned": "^2.0.1", + "serve-index": "^1.9.1", + "sockjs": "^0.3.24", + "spdy": "^4.0.2", + "webpack-dev-middleware": "^5.3.1", + "ws": "^8.4.2" + }, + "bin": { + "webpack-dev-server": "bin/webpack-dev-server.js" + }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^4.37.0 || ^5.0.0" + }, + "peerDependenciesMeta": { + "webpack-cli": { + "optional": true + } + } + }, + "node_modules/webpack-dev-server/node_modules/schema-utils": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.3.1.tgz", + "integrity": "sha512-jjlZ7UknkyQxGnHF1w8wDgWfdtnW0hBX7tmDp04zBwDBZ/6tPJI1+RWfBHGMA4+0nAjGptp+eDpIYP6mldJbqg==", + "peer": true, + "dependencies": { + "@types/json-schema": "^7.0.9", + "ajv": "^8.9.0", + "ajv-formats": "^2.1.1", + "ajv-keywords": "^5.1.0" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/webpack-merge": { + "version": "5.8.0", + "resolved": "https://registry.npmjs.org/webpack-merge/-/webpack-merge-5.8.0.tgz", + "integrity": "sha512-/SaI7xY0831XwP6kzuwhKWVKDP9t1QY1h65lAFLbZqMPIuYcD9QAW4u9STIbU9kaJbPBB/geU/gLr1wDjOhQ+Q==", + "peer": true, + "dependencies": { + "clone-deep": "^4.0.1", + "wildcard": "^2.0.0" + }, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/webpack-sources": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-3.2.3.tgz", + "integrity": "sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w==", + "peer": true, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/webpack-subresource-integrity": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/webpack-subresource-integrity/-/webpack-subresource-integrity-5.1.0.tgz", + "integrity": "sha512-sacXoX+xd8r4WKsy9MvH/q/vBtEHr86cpImXwyg74pFIpERKt6FmB8cXpeuh0ZLgclOlHI4Wcll7+R5L02xk9Q==", + "peer": true, + "dependencies": { + "typed-assert": "^1.0.8" + }, + "engines": { + "node": ">= 12" + }, + "peerDependencies": { + "html-webpack-plugin": ">= 5.0.0-beta.1 < 6", + "webpack": "^5.12.0" + }, + "peerDependenciesMeta": { + "html-webpack-plugin": { + "optional": true + } + } + }, + "node_modules/webpack/node_modules/@types/estree": { + "version": "0.0.51", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.51.tgz", + "integrity": "sha512-CuPgU6f3eT/XgKKPqKd/gLZV1Xmvf1a2R5POBOGQa6uv82xpls89HU5zKeVoyR8XzHd1RGNOlQlvUe3CFkjWNQ==", + "peer": true + }, + "node_modules/webpack/node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "peer": true, + "dependencies": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/webpack/node_modules/ajv-keywords": { + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", + "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", + "peer": true, + "peerDependencies": { + "ajv": "^6.9.1" + } + }, + "node_modules/webpack/node_modules/json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "peer": true + }, + "node_modules/webpack/node_modules/schema-utils": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.3.0.tgz", + "integrity": "sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==", + "peer": true, + "dependencies": { + "@types/json-schema": "^7.0.8", + "ajv": "^6.12.5", + "ajv-keywords": "^3.5.2" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/websocket-driver": { + "version": "0.7.4", + "resolved": "https://registry.npmjs.org/websocket-driver/-/websocket-driver-0.7.4.tgz", + "integrity": "sha512-b17KeDIQVjvb0ssuSDF2cYXSg2iztliJ4B9WdsuB6J952qCPKmnVq4DyW5motImXHDC1cBT/1UezrJVsKw5zjg==", + "peer": true, + "dependencies": { + "http-parser-js": ">=0.5.1", + "safe-buffer": ">=5.1.0", + "websocket-extensions": ">=0.1.1" + }, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/websocket-extensions": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/websocket-extensions/-/websocket-extensions-0.1.4.tgz", + "integrity": "sha512-OqedPIGOfsDlo31UNwYbCFMSaO9m9G/0faIHj5/dZFDMFqPTcx6UwqyOy3COEaEOg/9VsGIpdqn62W5KhoKSpg==", + "peer": true, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "peer": true, + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/wildcard": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/wildcard/-/wildcard-2.0.1.tgz", + "integrity": "sha512-CC1bOL87PIWSBhDcTrdeLo6eGT7mCFtrg0uIJtqJUFyK+eJnzl8A1niH56uu7KMa5XFrtiV+AQuHO3n7DsHnLQ==", + "peer": true + }, + "node_modules/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==", + "peer": true, + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==" + }, + "node_modules/ws": { + "version": "8.18.1", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.18.1.tgz", + "integrity": "sha512-RKW2aJZMXeMxVpnZ6bck+RswznaxmzdULiBr6KY7XkTnW8uvt0iT9H5DkHUChXrc+uurzwa0rVI16n/Xzjdz1w==", + "peer": true, + "engines": { + "node": ">=10.0.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": ">=5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } + } + }, + "node_modules/xxhashjs": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/xxhashjs/-/xxhashjs-0.2.2.tgz", + "integrity": "sha512-AkTuIuVTET12tpsVIQo+ZU6f/qDmKuRUcjaqR+OIvm+aCBsZ95i7UVY5WJ9TMsSaZ0DA2WxoZ4acu0sPH+OKAw==", + "peer": true, + "dependencies": { + "cuint": "^0.2.2" + } + }, + "node_modules/y18n": { + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", + "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", + "peer": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", + "peer": true + }, + "node_modules/yaml": { + "version": "1.10.2", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz", + "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==", + "peer": true, + "engines": { + "node": ">= 6" + } + }, + "node_modules/yargs": { + "version": "17.7.2", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.2.tgz", + "integrity": "sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==", + "peer": true, + "dependencies": { + "cliui": "^8.0.1", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.3", + "y18n": "^5.0.5", + "yargs-parser": "^21.1.1" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/yargs-parser": { + "version": "21.1.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", + "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", + "peer": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/zone.js": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/zone.js/-/zone.js-0.12.0.tgz", + "integrity": "sha512-XtC+I5dXU14HrzidAKBNMqneIVUykLEAA1x+v4KVrd6AUPWlwYORF8KgsVqvgdHiKZ4BkxxjvYi/ksEixTPR0Q==", + "peer": true, + "dependencies": { + "tslib": "^2.3.0" + } + } + } +} diff --git a/web-app/projects/core-lib/package.json b/web-app/projects/core-lib/package.json index 24e5cb80e..a8b0c6434 100644 --- a/web-app/projects/core-lib/package.json +++ b/web-app/projects/core-lib/package.json @@ -1,23 +1,39 @@ { "name": "@ngageoint/mage.web-core-lib", - "version": "6.2.13", + "version": "6.3.0-beta.8", "repository": { "type": "git", "url": "https://github.com/ngageoint/mage-server.git" }, + "builders": "./angular-cli/builders.json", + "schematics": "./angular-cli/collection.json", + "ng-add": { + "save": "devDependencies" + }, + "exports": { + "./angular-cli/*": "./angular-cli/*" + }, "peerDependencies": { - "@angular/animations": "~9.1.13", - "@angular/cdk": "^9.2.4", - "@angular/common": "^9.1.13", - "@angular/core": "^9.1.13", - "@angular/forms": "~9.1.13", - "@angular/material": "~9.2.4", - "@angular/platform-browser": "~9.1.13", - "@ng-select/ng-select": "4.0.4", - "rxjs": "~6.6.7" + "@angular/animations": "14.3.0", + "@angular/cdk": "14.2.7", + "@angular/common": "14.3.0", + "@angular/core": "14.3.0", + "@angular/forms": "14.3.0", + "@angular/material": "14.2.7", + "@angular/platform-browser": "14.3.0", + "@ng-select/ng-select": "9.1.0", + "@angular-devkit/architect": "0.1400.0", + "@angular-devkit/build-angular": "14.2.13", + "@angular-devkit/core": "14.2.13", + "@angular-devkit/schematics": "14.2.0", + "@schematics/angular": "14.2.0", + "ng-packagr": "14.2.0", + "rollup": "2.78.0" }, "dependencies": { - "@types/geojson": "^7946.0.7", - "tslib": "^1.10.0" + "@rollup/plugin-commonjs": "25.0.8", + "@rollup/plugin-node-resolve": "15.3.1", + "rxjs": "7.8.2", + "tslib": "2.8.1" } -} +} \ No newline at end of file diff --git a/web-app/projects/core-lib/paging/paging.cdk-data-source.adapter.ts b/web-app/projects/core-lib/paging/paging.cdk-data-source.adapter.ts index b1eb271ff..a810e7ae8 100644 --- a/web-app/projects/core-lib/paging/paging.cdk-data-source.adapter.ts +++ b/web-app/projects/core-lib/paging/paging.cdk-data-source.adapter.ts @@ -17,7 +17,7 @@ export class PagingDataSource extends DataSource { super() } - connect(collectionViewer: CollectionViewer): Observable { + connect(collectionViewer: CollectionViewer): Observable { this.subscription.add(collectionViewer.viewChange.subscribe(range => { const startPage = this.pageForItemIndex(range.start) const endPage = this.pageForItemIndex(range.end - 1) diff --git a/web-app/projects/core-lib/src/test.ts b/web-app/projects/core-lib/src/test.ts index 34992d519..34af36e32 100644 --- a/web-app/projects/core-lib/src/test.ts +++ b/web-app/projects/core-lib/src/test.ts @@ -1,7 +1,7 @@ // This file is required by karma.conf.js and loads recursively all the .spec and framework files -import 'zone.js/dist/zone'; -import 'zone.js/dist/zone-testing'; +import 'zone.js'; +import 'zone.js/testing'; import { getTestBed } from '@angular/core/testing'; import { BrowserDynamicTestingModule, @@ -18,7 +18,9 @@ declare const require: { // First, initialize the Angular testing environment. getTestBed().initTestEnvironment( BrowserDynamicTestingModule, - platformBrowserDynamicTesting() + platformBrowserDynamicTesting(), { + teardown: { destroyAfterEach: false } +} ); // Then we find all the tests. const context = require.context('../', true, /\.spec\.ts$/); diff --git a/web-app/projects/core-lib/static-icon/static-icon-form-field/static-icon-form-field.component.spec.ts b/web-app/projects/core-lib/static-icon/static-icon-form-field/static-icon-form-field.component.spec.ts index b2bd65b03..b37254784 100644 --- a/web-app/projects/core-lib/static-icon/static-icon-form-field/static-icon-form-field.component.spec.ts +++ b/web-app/projects/core-lib/static-icon/static-icon-form-field/static-icon-form-field.component.spec.ts @@ -1,7 +1,7 @@ import { HttpClientTestingModule } from '@angular/common/http/testing' import { Component } from '@angular/core' -import { async, ComponentFixture, TestBed } from '@angular/core/testing' -import { FormControl, FormGroup, FormsModule, ReactiveFormsModule } from '@angular/forms' +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing' +import { UntypedFormControl, UntypedFormGroup, FormsModule, ReactiveFormsModule } from '@angular/forms' import { By } from '@angular/platform-browser' import { of } from 'rxjs' import { MageCommonModule } from '@ngageoint/mage.web-core-lib/common' @@ -15,8 +15,8 @@ import { StaticIconFormFieldComponent } from './static-icon-form-field.component }) class TestHostComponent { - form = new FormGroup({ - icon: new FormControl(null) + form = new UntypedFormGroup({ + icon: new UntypedFormControl(null) }) } @@ -27,7 +27,7 @@ describe('StaticIconFormFieldComponent', () => { let fixture: ComponentFixture let iconService: jasmine.SpyObj - beforeEach(async(() => { + beforeEach(waitForAsync(() => { iconService = jasmine.createSpyObj('MockStaticIconService', [ 'fetchIconByReference' @@ -89,4 +89,4 @@ describe('StaticIconFormFieldComponent', () => { expect(iconService.fetchIconByReference).toHaveBeenCalledTimes(1) expect(iconService.fetchIconByReference).toHaveBeenCalledWith(iconRef) }) -}) \ No newline at end of file +}) diff --git a/web-app/projects/core-lib/static-icon/static-icon-form-field/static-icon-form-field.component.ts b/web-app/projects/core-lib/static-icon/static-icon-form-field/static-icon-form-field.component.ts index 46dbade45..ced3e09e6 100644 --- a/web-app/projects/core-lib/static-icon/static-icon-form-field/static-icon-form-field.component.ts +++ b/web-app/projects/core-lib/static-icon/static-icon-form-field/static-icon-form-field.component.ts @@ -1,6 +1,6 @@ import { HttpClient } from '@angular/common/http' import { Component, OnChanges, OnDestroy, SimpleChanges } from '@angular/core' -import { AbstractControl, ControlValueAccessor, FormControl, FormGroup, NG_VALIDATORS, NG_VALUE_ACCESSOR, ValidationErrors, Validator, Validators } from '@angular/forms' +import { AbstractControl, ControlValueAccessor, UntypedFormControl, UntypedFormGroup, NG_VALIDATORS, NG_VALUE_ACCESSOR, ValidationErrors, Validator, Validators } from '@angular/forms' import { DomSanitizer } from '@angular/platform-browser' import { StaticIcon, StaticIconReference } from '../static-icon.model' import { StaticIconService } from '../static-icon.service' @@ -27,9 +27,9 @@ export class StaticIconFormFieldComponent implements OnChanges, OnDestroy, Contr iconRef: StaticIconReference = null - form: FormGroup = new FormGroup({ - iconRefToken: new FormControl(null), - iconRefType: new FormControl(null, Validators.required) + form: UntypedFormGroup = new UntypedFormGroup({ + iconRefToken: new UntypedFormControl(null), + iconRefType: new UntypedFormControl(null, Validators.required) }) icon: StaticIcon | null diff --git a/web-app/projects/core-lib/static-icon/static-icon-img/static-icon-img.component.spec.ts b/web-app/projects/core-lib/static-icon/static-icon-img/static-icon-img.component.spec.ts index d5750d257..f3bad43ce 100644 --- a/web-app/projects/core-lib/static-icon/static-icon-img/static-icon-img.component.spec.ts +++ b/web-app/projects/core-lib/static-icon/static-icon-img/static-icon-img.component.spec.ts @@ -1,4 +1,4 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; import { StaticIconImgComponent } from './static-icon-img.component'; import { MageCommonModule } from '@ngageoint/mage.web-core-lib/common' @@ -8,7 +8,7 @@ describe('StaticIconImgComponent', () => { let component: StaticIconImgComponent; let fixture: ComponentFixture; - beforeEach(async(() => { + beforeEach(waitForAsync(() => { TestBed.configureTestingModule({ declarations: [ StaticIconImgComponent ], imports: [ diff --git a/web-app/projects/core-lib/static-icon/static-icon-select/static-icon-select.component.spec.ts b/web-app/projects/core-lib/static-icon/static-icon-select/static-icon-select.component.spec.ts index 182ca8116..cfd412ff1 100644 --- a/web-app/projects/core-lib/static-icon/static-icon-select/static-icon-select.component.spec.ts +++ b/web-app/projects/core-lib/static-icon/static-icon-select/static-icon-select.component.spec.ts @@ -1,5 +1,5 @@ import { ScrollingModule } from '@angular/cdk/scrolling' -import { async, ComponentFixture, TestBed } from '@angular/core/testing' +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing' import { MatCardModule } from '@angular/material/card' import { of } from 'rxjs' import { StaticIcon } from '../static-icon.model' @@ -12,7 +12,7 @@ describe('StaticIconSelectComponent', () => { let fixture: ComponentFixture let iconService: jasmine.SpyObj - beforeEach(async(() => { + beforeEach(waitForAsync(() => { iconService = jasmine.createSpyObj('MockStaticIconService', [ 'fetchIcons' ]) diff --git a/web-app/projects/core-lib/static-icon/static-icon.service.spec.ts b/web-app/projects/core-lib/static-icon/static-icon.service.spec.ts index 932ce5e41..b80898849 100644 --- a/web-app/projects/core-lib/static-icon/static-icon.service.spec.ts +++ b/web-app/projects/core-lib/static-icon/static-icon.service.spec.ts @@ -1,8 +1,7 @@ -import { HttpClient, HttpErrorResponse, HttpHeaders, HttpParams } from '@angular/common/http' +import { HttpClient, HttpErrorResponse, HttpParams } from '@angular/common/http' import { HttpClientTestingModule, HttpTestingController } from '@angular/common/http/testing' -import { async, TestBed } from '@angular/core/testing' +import { TestBed, waitForAsync } from '@angular/core/testing' import * as _ from 'lodash' -import { defer, throwError } from 'rxjs' import { RegisteredStaticIconReference, SourceUrlStaticIconReference, StaticIcon } from './static-icon.model' import { StaticIconService } from './static-icon.service' @@ -34,7 +33,7 @@ describe('StaticIconService', () => { describe('fetching icon by id', () => { - it('fetches icon by id', async(() => { + it('fetches icon by id', waitForAsync(() => { const icon: StaticIcon = { id: 'icon1', diff --git a/web-app/projects/core-lib/tsconfig.angular-cli.json b/web-app/projects/core-lib/tsconfig.angular-cli.json new file mode 100644 index 000000000..175bcfd0a --- /dev/null +++ b/web-app/projects/core-lib/tsconfig.angular-cli.json @@ -0,0 +1,34 @@ +{ + "compilerOptions": { + "baseUrl": ".", + "lib": [ + "ES2020", + "dom" + ], + "declaration": true, + "module": "commonjs", + "moduleResolution": "node", + "noEmitOnError": true, + "noFallthroughCasesInSwitch": true, + "noImplicitAny": true, + "noImplicitThis": true, + "noUnusedParameters": true, + "noUnusedLocals": true, + "rootDir": "./angular-cli", + "outDir": "../../dist/core-lib/angular-cli", + "skipDefaultLibCheck": true, + "skipLibCheck": true, + "sourceMap": true, + "strictNullChecks": true, + "target": "ES2020", + "types": [ + "jasmine", + "node" + ] + }, + "include": [ + "angular-cli/**/*.ts", + ], + "exclude": [ + ] +} \ No newline at end of file diff --git a/web-app/projects/core-lib/tsconfig.lib.dev.json b/web-app/projects/core-lib/tsconfig.lib.dev.json new file mode 100644 index 000000000..76ae1ab06 --- /dev/null +++ b/web-app/projects/core-lib/tsconfig.lib.dev.json @@ -0,0 +1,9 @@ +{ + "extends": "./tsconfig.lib.json", + "compilerOptions": { + "declarationMap": true + }, + "angularCompilerOptions": { + "enableIvy": false + } +} diff --git a/web-app/projects/core-lib/tsconfig.lib.json b/web-app/projects/core-lib/tsconfig.lib.json index 4b5d4afd4..edeb67363 100644 --- a/web-app/projects/core-lib/tsconfig.lib.json +++ b/web-app/projects/core-lib/tsconfig.lib.json @@ -2,7 +2,8 @@ "extends": "../../tsconfig.json", "compilerOptions": { "outDir": "../../out-tsc/lib", - "target": "es2015", + "declarationMap": true, + "target": "es2020", "declaration": true, "inlineSources": true, "types": [], diff --git a/web-app/projects/core-lib/tsconfig.lib.prod.json b/web-app/projects/core-lib/tsconfig.lib.prod.json index f8edd6324..a05c79305 100644 --- a/web-app/projects/core-lib/tsconfig.lib.prod.json +++ b/web-app/projects/core-lib/tsconfig.lib.prod.json @@ -1,5 +1,8 @@ { "extends": "./tsconfig.lib.json", + "compilerOptions": { + "declarationMap": false + }, "angularCompilerOptions": { "enableIvy": true } diff --git a/web-app/projects/core-lib/user/user-select/user-select.component.spec.ts b/web-app/projects/core-lib/user/user-select/user-select.component.spec.ts index 259ad95c5..441588dc7 100644 --- a/web-app/projects/core-lib/user/user-select/user-select.component.spec.ts +++ b/web-app/projects/core-lib/user/user-select/user-select.component.spec.ts @@ -1,10 +1,10 @@ import { UserSelectComponent } from './user-select.component' -import { ComponentFixture, TestBed, async, fakeAsync, tick } from '@angular/core/testing' +import { ComponentFixture, TestBed, fakeAsync, tick, waitForAsync } from '@angular/core/testing' import { UserReadService, UserSearchParams } from '../user-read.service' import { NgSelectModule } from '@ng-select/ng-select' import { User } from '../user.model' import { Component } from '@angular/core' -import { FormGroup, FormControl, FormsModule, ReactiveFormsModule } from '@angular/forms' +import { UntypedFormGroup, UntypedFormControl, FormsModule, ReactiveFormsModule } from '@angular/forms' import { By } from '@angular/platform-browser' import { of, Subject } from 'rxjs' import { PageOf, itemRangeOfPage, pageForItemIndex } from '@ngageoint/mage.web-core-lib/paging' @@ -15,8 +15,8 @@ import { PageOf, itemRangeOfPage, pageForItemIndex } from '@ngageoint/mage.web-c }) class TestHostComponent { - form = new FormGroup({ - user: new FormControl(null) + form = new UntypedFormGroup({ + user: new UntypedFormControl(null) }) } @@ -27,7 +27,7 @@ describe('user select component', () => { let fixture: ComponentFixture let userService: jasmine.SpyObj - beforeEach(async(() => { + beforeEach(waitForAsync(() => { userService = jasmine.createSpyObj('MockUserReadService', [ 'search' ]) @@ -435,4 +435,4 @@ describe('user select component', () => { })) }) }) -}) \ No newline at end of file +}) diff --git a/web-app/projects/core-lib/user/user.model.ts b/web-app/projects/core-lib/user/user.model.ts index d9233ad36..4c161b1b0 100644 --- a/web-app/projects/core-lib/user/user.model.ts +++ b/web-app/projects/core-lib/user/user.model.ts @@ -41,7 +41,7 @@ export interface User { * The authorization role of this user account that defines the actions this * user account has permission to perform */ - roleId: string + role: string email?: string /** * URL of the image that identifies this user account in the user feed, etc.; diff --git a/web-app/proxy.conf.json b/web-app/proxy.conf.json index 79499e58a..f1bcb4972 100644 --- a/web-app/proxy.conf.json +++ b/web-app/proxy.conf.json @@ -6,7 +6,7 @@ "/plugins", "/ui_plugins" ], - "target": "http://localhost:4242", + "target": "http://127.0.0.1:4242", "secure": false } ] \ No newline at end of file diff --git a/web-app/src/app/about/about.component.html b/web-app/src/app/about/about.component.html new file mode 100644 index 000000000..4bb895275 --- /dev/null +++ b/web-app/src/app/about/about.component.html @@ -0,0 +1,83 @@ + +
+ + About MAGE +
+
+ +
+
+

+ Mage is a dynamic, secure, mobile situational awareness and field data collection platform that supports + low-bandwidth and disconnected users. Mage can integrate with existing command centers and common operating + pictures or stand alone as a complete, mission-ready solution. The Mage mobile app on iOS and Android + allows agents in the field to create and share geo-tagged observations with attached photos, videos, + audio, and form data. Mage's data collection forms are easily tailored to suit any team and mission with + custom form fields and map symbologies. In addition to data collection, the Mage mobile app can optionally + report field agents' locations at regular intervals to the Mage server. The Mage server's web app provides + a common operating picture of field agents' observations and latest reported locations. +

+ + +
+ +
+

+ API +

+
+ Browse and try the Mage API live with Swagger UI. Swagger interactive documentation will modify Mage data via API calls; please be careful with POST/PUT/DELETE operations. +
+
+ +
+

+ System +

+
Server Version {{mageVersion?.major}}.{{mageVersion?.minor}}.{{mageVersion?.micro}}
+
Node Version {{nodeVersion}}
+
MongoDB Version {{mongoVersion}}
+
+ +
+

+ Acknowledgements +

+
Mage is built with the MEAN stack + MongoDB, + Express, + Angular and + NodeJS. +
+ +
Authentication is locked down by + Passport +
+ +
Maps are powered by + Leaflet +
+
+
+

+ Contact Us +

+

+1-571-557-1121

+

magesuitesupport@nga.mil

+
+
\ No newline at end of file diff --git a/web-app/src/app/about/about.component.scss b/web-app/src/app/about/about.component.scss new file mode 100644 index 000000000..ed889ea31 --- /dev/null +++ b/web-app/src/app/about/about.component.scss @@ -0,0 +1,52 @@ +@use '@angular/material' as mat; +@import "variables.scss"; + +.content { + width: 75vw; + margin: 0 auto; + padding: 32px 0; + display: flex; + flex-direction: column; + gap: 32px; +} + +.container { + display: flex; + flex-direction: row; + align-items: center; + justify-content: center; +} + +h3 { + width:100%; + text-align:left; + border-bottom: 1px solid #000; + line-height:0.1em; + margin:10px 0 20px; + color: mat.get-color-from-palette($app-primary); +} +h3 span { + background:#fff; + padding:0 10px; + border: none; +} + +.title { + margin-left: 16px; +} + +.app-store { + display: flex; + flex-direction: row; + gap: 16px; + align-items: center; + margin-top: 20px; +} + +.app-store-icon { + height: 48px; +} + +.center-content{ + margin: 0 auto !important; +} \ No newline at end of file diff --git a/web-app/src/app/about/about.component.spec.ts b/web-app/src/app/about/about.component.spec.ts new file mode 100644 index 000000000..4e54ac456 --- /dev/null +++ b/web-app/src/app/about/about.component.spec.ts @@ -0,0 +1,24 @@ +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; +import { AboutComponent } from './about.component'; +import { HttpClientTestingModule } from '@angular/common/http/testing'; + +describe('About Component', () => { + let component: AboutComponent; + let fixture: ComponentFixture; + + beforeEach(waitForAsync(() => { + TestBed.configureTestingModule({ + declarations: [AboutComponent], + imports: [HttpClientTestingModule] + }).compileComponents(); + })); + + beforeEach(() => { + fixture = TestBed.createComponent(AboutComponent); + component = fixture.componentInstance; + }); + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/web-app/src/app/about/about.component.ts b/web-app/src/app/about/about.component.ts new file mode 100644 index 000000000..06e4e5e98 --- /dev/null +++ b/web-app/src/app/about/about.component.ts @@ -0,0 +1,37 @@ +import { Component, Inject, OnInit } from '@angular/core'; +import { ApiService } from '../api/api.service'; +import { Router } from '@angular/router'; + +@Component({ + selector: 'about', + templateUrl: './about.component.html', + styleUrls: ['./about.component.scss', '../../../node_modules/font-awesome/css/font-awesome.min.css'] +}) +export class AboutComponent implements OnInit { + mageVersion: { + major: number, + minor: number, + micro: number + } + apk: string + nodeVersion: string + mongoVersion: string + + constructor( + private router: Router, + @Inject(ApiService) public apiService: ApiService + ) {} + + ngOnInit(): void { + this.apiService.getApi().subscribe(api =>{ + this.mageVersion = api.version; + this.apk = api.apk; + this.nodeVersion = api.environment.nodeVersion; + this.mongoVersion = api.environment.mongodbVersion; + }) + } + + onBack(): void { + this.router.navigate(['home']); + } +} diff --git a/web-app/src/app/about/about.module.ts b/web-app/src/app/about/about.module.ts new file mode 100644 index 000000000..21bd9be27 --- /dev/null +++ b/web-app/src/app/about/about.module.ts @@ -0,0 +1,36 @@ +import { NgModule } from '@angular/core'; +import { CommonModule } from '@angular/common'; +import { RouterModule, Routes } from '@angular/router'; +import { AboutComponent } from './about.component'; +import { MatToolbarModule } from '@angular/material/toolbar'; +import { MatIconModule } from '@angular/material/icon'; +import { MatButtonModule } from '@angular/material/button'; + +const routes: Routes = [{ + path: '', + component: AboutComponent +}]; + +@NgModule({ + declarations: [], + imports: [], + exports: [ + CommonModule, + MatButtonModule, + MatIconModule, + MatToolbarModule + ] +}) +class AngularModule { } + +@NgModule({ + declarations: [ + AboutComponent, + ], + imports: [ + AngularModule, + RouterModule.forChild(routes) + ], + exports: [RouterModule] +}) +export class AboutModule { } \ No newline at end of file diff --git a/web-app/src/app/admin/admin-authentication/admin-authentication.component.ts b/web-app/src/app/admin/admin-authentication/admin-authentication.component.ts deleted file mode 100644 index 2c17905a0..000000000 --- a/web-app/src/app/admin/admin-authentication/admin-authentication.component.ts +++ /dev/null @@ -1,138 +0,0 @@ -import _ from 'underscore' -import { Component, OnInit, Inject, EventEmitter, Output, Input, OnChanges, SimpleChanges } from '@angular/core'; -import { Team, Event, LocalStorageService, AuthenticationConfigurationService, UserService } from '../../upgrade/ajs-upgraded-providers'; -import { Strategy } from '../admin-authentication/admin-settings.model'; -import { MatDialog } from '@angular/material/dialog'; -import { StateService } from '@uirouter/angular'; -import { AuthenticationDeleteComponent } from './admin-authentication-delete/admin-authentication-delete.component'; - -@Component({ - selector: 'admin-authentication', - templateUrl: 'admin-authentication.component.html', - styleUrls: ['./admin-authentication.component.scss'] -}) -export class AdminAuthenticationComponent implements OnInit, OnChanges { - @Output() saveComplete = new EventEmitter(); - @Output() onDirty = new EventEmitter(); - @Input() beginSave: any; - - teams: any[] = []; - events: any[] = []; - - strategies: Strategy[] = []; - - hasAuthConfigEditPermission: boolean; - - constructor( - private dialog: MatDialog, - private stateService: StateService, - @Inject(Team) - public team: any, - @Inject(Event) - public event: any, - @Inject(LocalStorageService) - public localStorageService: any, - @Inject(AuthenticationConfigurationService) - private authenticationConfigurationService: any, - @Inject(UserService) - private userService: { myself: { role: { permissions: Array } } }) { - this.hasAuthConfigEditPermission = _.contains(this.userService.myself.role.permissions, 'UPDATE_AUTH_CONFIG'); - } - - ngOnInit(): void { - const configsPromise = this.authenticationConfigurationService.getAllConfigurations({ includeDisabled: true }); - const teamsPromise = this.team.query({ state: 'all', populate: false }).$promise; - const eventsPromise = this.event.query({ state: 'all', populate: false }).$promise; - - Promise.all([configsPromise, teamsPromise, eventsPromise]).then(result => { - //Remove event teams - this.teams = result[1].filter(function (team: any): boolean { - return team.teamEventId === undefined; - }); - this.events = result[2]; - - const unsortedStrategies = result[0] ? result[0].data : []; - this.processUnsortedStrategies(unsortedStrategies); - }).catch(err => { - console.log(err); - }); - } - - private processUnsortedStrategies(unsortedStrategies: Strategy[]): void { - this.strategies = _.sortBy(unsortedStrategies, 'title'); - - this.strategies.forEach(strategy => { - if (strategy.settings.newUserEvents) { - strategy.settings.newUserEvents = strategy.settings.newUserEvents.filter(id => { - return this.events.some(event => event.id === id) - }); - } - if (strategy.settings.newUserTeams) { - // Remove any teams and events that no longer exist - strategy.settings.newUserTeams = strategy.settings.newUserTeams.filter(id => { - return this.teams.some(team => team.id === id) - }); - } - if (strategy.icon) { - strategy.icon = "data:image/png;base64," + strategy.icon; - } - }); - } - - ngOnChanges(changes: SimpleChanges): void { - if (changes.beginSave && !changes.beginSave.firstChange) { - this.save(); - } - } - - private save(): void { - const promises = []; - this.strategies.forEach(strategy => { - if (strategy.isDirty) { - promises.push(this.authenticationConfigurationService.updateConfiguration(strategy)); - } - }); - - if (promises.length > 0) { - Promise.all(promises).then(() => { - return this.authenticationConfigurationService.getAllConfigurations({ includeDisabled: true }); - }).then(strategies => { - this.processUnsortedStrategies(strategies.data); - this.saveComplete.emit(true); - }).catch(err => { - console.log(err); - this.saveComplete.emit(false); - }); - } - this.onStrategyDirty(false); - } - - deleteStrategy(strategy: Strategy): void { - this.dialog.open(AuthenticationDeleteComponent, { - width: '500px', - data: strategy, - autoFocus: false - }).afterClosed().subscribe(result => { - if (result === 'delete') { - this.authenticationConfigurationService.getAllConfigurations().then(configs => { - this.processUnsortedStrategies(configs.data); - }).catch(err => { - console.error(err); - }) - } - }); - } - - createAuthentication(): void { - this.stateService.go('admin.authenticationCreate') - } - - onStrategyDirty(isDirty: boolean): void { - this.onDirty.emit(isDirty); - } - - onAuthenticationToggled(strategy: Strategy): void { - strategy.isDirty = true; - this.onStrategyDirty(true) - } -} \ No newline at end of file diff --git a/web-app/src/app/admin/admin-settings/admin-settings.component.spec.ts b/web-app/src/app/admin/admin-settings/admin-settings.component.spec.ts deleted file mode 100644 index 0dc3a4219..000000000 --- a/web-app/src/app/admin/admin-settings/admin-settings.component.spec.ts +++ /dev/null @@ -1,135 +0,0 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; - -import { AdminSettingsComponent } from './admin-settings.component'; -import { NoopAnimationsModule } from '@angular/platform-browser/animations'; -import { MatPaginatorModule } from '@angular/material/paginator'; -import { MatSortModule } from '@angular/material/sort'; -import { MatSnackBarModule, MatSnackBar, MatSnackBarDismiss } from '@angular/material/snack-bar'; -import { MatTableModule } from '@angular/material/table'; -import { MatDialogModule, MatDialogRef } from '@angular/material/dialog'; -import { MatProgressSpinnerModule } from '@angular/material/progress-spinner'; -import { MatInputModule } from '@angular/material/input'; -import { MatFormFieldModule } from '@angular/material/form-field'; -import { MatIconModule } from '@angular/material/icon'; -import { HttpClientTestingModule } from '@angular/common/http/testing'; -import { MatCheckboxModule } from '@angular/material/checkbox'; -import { MatListModule } from '@angular/material/list'; -import { MatCardModule } from '@angular/material/card'; -import { MatExpansionModule } from '@angular/material/expansion'; -import { MatRadioModule } from '@angular/material/radio'; -import { MatSelectModule } from '@angular/material/select'; -import { MatOptionModule, MatNativeDateModule } from '@angular/material/core'; -import { MatDatepickerModule } from '@angular/material/datepicker'; -import { FormsModule } from '@angular/forms'; -import { MatChipsModule } from '@angular/material/chips'; -import { LocalStorageService, Settings, Team, Event, AuthenticationConfigurationService, UserService } from 'src/app/upgrade/ajs-upgraded-providers'; -import { Subject, Observable } from 'rxjs'; -import { StateService, TransitionService } from '@uirouter/core'; - -class MockSnackbarRef { - private readonly _afterDismissed = new Subject() - - afterDismissed(): Observable { - return this._afterDismissed - } - - dismiss(): void { - this._afterDismissed.next({ dismissedByAction: false }) - this._afterDismissed.complete() - } - - dismissWithAction(): void { - this._afterDismissed.next({ dismissedByAction: true }) - this._afterDismissed.complete() - } -} - -class MockSnackbar { - private snackbarRef = new MockSnackbarRef() - - get _openedSnackBarRef(): any { - return this.snackbarRef - } - - open(): any { - return this.snackbarRef - } -} - -class MockSettings { - query(): any { - return { $promise: Promise.resolve({}) }; - } -} - -class MockTeam { - query(): any { - return { $promise: Promise.resolve([]) }; - } -} - -class MockEvent { - query(): any { - return { $promise: Promise.resolve([]) }; - } -} - -class MockAuthenticationConfigurationService { - getAllConfigurations(): Promise { - return Promise.resolve({ - data: [] - }); - } -} - -class MockStateService { - -} - -class MockTransitionService { - onExit(a: any, b: any, c: any): void { - - } - -} - -describe('AdminSettingsComponent', () => { - let component: AdminSettingsComponent; - let fixture: ComponentFixture; - - beforeEach(async(() => { - const mockLocalStorageService = { getToken: (): string => '1' }; - const mockDialogRef = { close: (): void => { } }; - const mockUserService = { myself: { role: { permissions: ['UPDATE_AUTH_CONFIG'] } } }; - - TestBed.configureTestingModule({ - imports: [NoopAnimationsModule, MatPaginatorModule, MatSortModule, MatSnackBarModule, MatTableModule, MatDialogModule, - MatProgressSpinnerModule, MatInputModule, MatFormFieldModule, MatIconModule, HttpClientTestingModule, - NoopAnimationsModule, MatCheckboxModule, MatListModule, MatCardModule, MatExpansionModule, MatRadioModule, - MatSelectModule, MatOptionModule, MatDatepickerModule, MatNativeDateModule, FormsModule, MatChipsModule], - providers: [ - { provide: LocalStorageService, useValue: mockLocalStorageService }, - { provide: Settings, useClass: MockSettings }, - { provide: Team, useClass: MockTeam }, - { provide: Event, useClass: MockEvent }, - { provide: AuthenticationConfigurationService, useClass: MockAuthenticationConfigurationService }, - { provide: MatDialogRef, useValue: mockDialogRef }, - { provide: MatSnackBar, useClass: MockSnackbar }, - { provide: UserService, useValue: mockUserService }, - { provide: StateService, useClass: MockStateService }, - { provide: TransitionService, useClass: MockTransitionService } - ], - declarations: [AdminSettingsComponent] - }).compileComponents(); - })); - - beforeEach(() => { - fixture = TestBed.createComponent(AdminSettingsComponent); - component = fixture.componentInstance; - fixture.detectChanges(); - }); - - it('should create', () => { - expect(component).toBeTruthy(); - }); -}); diff --git a/web-app/src/app/admin/admin-settings/admin-settings.component.ts b/web-app/src/app/admin/admin-settings/admin-settings.component.ts deleted file mode 100644 index d4e029737..000000000 --- a/web-app/src/app/admin/admin-settings/admin-settings.component.ts +++ /dev/null @@ -1,127 +0,0 @@ -import { Component, OnInit } from '@angular/core'; -import { AdminBreadcrumb } from '../admin-breadcrumb/admin-breadcrumb.model' -import { MatSnackBar } from '@angular/material/snack-bar'; -import { MatDialog } from '@angular/material/dialog'; -import { AdminSettingsUnsavedComponent } from './admin-settings-unsaved/admin-settings-unsaved.component'; -import { TransitionService } from '@uirouter/core'; - -@Component({ - selector: 'admin-settings', - templateUrl: 'admin-settings.component.html', - styleUrls: ['./admin-settings.component.scss'] -}) -export class AdminSettingsComponent implements OnInit { - readonly breadcrumbs: AdminBreadcrumb[] = [{ - title: 'Settings', - icon: 'build' - }]; - - onSave = {}; - isBannerDirty = false; - isDisclaimerDirty = false; - isAuthenticationDirty = false; - isContactInfoDirty = false; - - constructor( - private readonly dialog: MatDialog, - private readonly snackBar: MatSnackBar, - private readonly transitionService: TransitionService) { } - - ngOnInit(): void { - this.transitionService.onExit({}, this.onUnsavedChanges, { bind: this }); - } - - save(): void { - this.onSave = {}; - } - - onBannerDirty(isDirty: boolean): void { - this.isBannerDirty = isDirty; - } - - onBannerSaved(status: boolean): void { - if (status) { - this.snackBar.open('Banner successfully saved', null, { - duration: 2000, - }); - } else { - this.snackBar.open('Failed to save banner', null, { - duration: 2000, - }); - }; - this.isBannerDirty = false; - } - - onDisclaimerDirty(isDirty: boolean): void { - this.isDisclaimerDirty = isDirty; - } - - onDisclaimerSaved(status: boolean): void { - if (status) { - this.snackBar.open('Disclaimer successfully saved', null, { - duration: 2000, - }); - } else { - this.snackBar.open('Failed to save disclaimer', null, { - duration: 2000, - }); - }; - this.isDisclaimerDirty = false; - } - - onContactInfoDirty(isDirty: boolean): void { - this.isContactInfoDirty = isDirty; - } - - onContactInfoSaved(status: boolean): void { - if (status) { - this.snackBar.open('Contact info successfully saved', null, { - duration: 2000, - }); - } else { - this.snackBar.open('Failed to save contact info', null, { - duration: 2000, - }); - }; - this.isContactInfoDirty = false; - } - - onAuthenticationDirty(isDirty: boolean): void { - this.isAuthenticationDirty = isDirty; - } - - onAuthenticationSaved(status: boolean): void { - if (status) { - this.snackBar.open('Authentication successfully saved', null, { - duration: 2000, - }); - } else { - this.snackBar.open('1 or more authentications failed to save correctly', null, { - duration: 2000, - }); - }; - this.isAuthenticationDirty = false; - } - - isDirty(): boolean { - return this.isDisclaimerDirty || this.isAuthenticationDirty || this.isBannerDirty || this.isContactInfoDirty; - } - - onUnsavedChanges(): Promise { - if (this.isDirty()) { - const ref = this.dialog.open(AdminSettingsUnsavedComponent); - - return ref.afterClosed().toPromise().then(result => { - if (result.discard) { - this.isAuthenticationDirty = false; - this.isBannerDirty = false; - this.isDisclaimerDirty = false; - this.isContactInfoDirty = false; - } - return Promise.resolve(result.discard); - }); - } - - return Promise.resolve(true); - } -} \ No newline at end of file diff --git a/web-app/src/app/api/api.entity.ts b/web-app/src/app/api/api.entity.ts new file mode 100644 index 000000000..2b530ecd9 --- /dev/null +++ b/web-app/src/app/api/api.entity.ts @@ -0,0 +1,30 @@ +export interface Version { + major: number, + minor: number, + micro: number +} + +export interface AuthenticationStrategy { + enabled: boolean, + name: string, + type: string, + title: string, + textColor: string, + buttonColor: string, + icon: string +} + +export type Disclaimer = { + show: boolean, + title: string, + text: string +} + +export interface Api { + version: Version, + initial: boolean, + disclaimer?: Disclaimer, + contactInfo: any, + localAuthenticationStrategy: AuthenticationStrategy, + authenticationStrategies: { string: AuthenticationStrategy } +} diff --git a/web-app/src/app/api/api.resolver.ts b/web-app/src/app/api/api.resolver.ts new file mode 100644 index 000000000..4c433e678 --- /dev/null +++ b/web-app/src/app/api/api.resolver.ts @@ -0,0 +1,17 @@ +import { Injectable } from "@angular/core"; +import { ApiService } from "../api/api.service"; +import { ActivatedRouteSnapshot, Resolve, RouterStateSnapshot } from "@angular/router"; +import { Observable } from "rxjs"; +import { Api } from "../api/api.entity"; + +@Injectable({ providedIn: 'root' }) +export class ApiResolver implements Resolve { + constructor(private service: ApiService) { } + + resolve( + route: ActivatedRouteSnapshot, + state: RouterStateSnapshot + ): Observable { + return this.service.getApi() + } +} \ No newline at end of file diff --git a/web-app/src/app/api/api.service.ts b/web-app/src/app/api/api.service.ts index e40305a2d..5bd99c0e1 100644 --- a/web-app/src/app/api/api.service.ts +++ b/web-app/src/app/api/api.service.ts @@ -1,14 +1,17 @@ -import { HttpClient } from "@angular/common/http"; +import { HttpClient, HttpContext } from "@angular/common/http"; import { Injectable } from "@angular/core"; import { Observable } from "rxjs"; +import { BYPASS_TOKEN } from "../http/token.interceptor"; @Injectable({ - providedIn: 'root' + providedIn: 'root' }) export class ApiService { - constructor(private client: HttpClient) { } + constructor(private httpClient: HttpClient) { } - getApi(): Observable { - return this.client.get('/api'); - } + getApi(): Observable { + return this.httpClient.get('/api', { + context: new HttpContext().set(BYPASS_TOKEN, true) + }) + } } \ No newline at end of file diff --git a/web-app/src/app/app.component.html b/web-app/src/app/app.component.html new file mode 100644 index 000000000..7ac0668b9 --- /dev/null +++ b/web-app/src/app/app.component.html @@ -0,0 +1,3 @@ +
+ +
diff --git a/web-app/src/app/app.component.scss b/web-app/src/app/app.component.scss new file mode 100644 index 000000000..4ef253b1b --- /dev/null +++ b/web-app/src/app/app.component.scss @@ -0,0 +1,5 @@ +.application { + display: flex; + flex-direction: column; + height: 100%; +} \ No newline at end of file diff --git a/web-app/src/app/app.component.ts b/web-app/src/app/app.component.ts new file mode 100644 index 000000000..586c9e2e2 --- /dev/null +++ b/web-app/src/app/app.component.ts @@ -0,0 +1,9 @@ + +import { Component } from '@angular/core'; + +@Component({ + selector: 'app', + templateUrl: './app.component.html', + styleUrls: ['./app.component.scss'] +}) +export class AppComponent {} \ No newline at end of file diff --git a/web-app/src/app/app.module.ts b/web-app/src/app/app.module.ts index b23de4bed..f92424ec1 100644 --- a/web-app/src/app/app.module.ts +++ b/web-app/src/app/app.module.ts @@ -1,365 +1,37 @@ import { BrowserModule } from '@angular/platform-browser'; import { NgModule, ApplicationRef, DoBootstrap } from '@angular/core'; - -import { UpgradeModule } from '@angular/upgrade/static'; -import { UIRouterUpgradeModule } from '@uirouter/angular-hybrid'; -import { FormsModule, ReactiveFormsModule } from '@angular/forms'; - import { BrowserAnimationsModule } from '@angular/platform-browser/animations'; -import { NgxMatSelectSearchModule } from 'ngx-mat-select-search'; -import { ScrollingModule } from '@angular/cdk/scrolling'; -import { DragDropModule } from '@angular/cdk/drag-drop'; - -import { SaturationModule, HueModule, CheckboardModule, AlphaModule } from 'ngx-color'; - -import { MatAutocompleteModule } from '@angular/material/autocomplete'; -import { MatBadgeModule } from '@angular/material/badge'; -import { MatBottomSheetModule } from '@angular/material/bottom-sheet'; -import { MatButtonModule } from '@angular/material/button'; -import { MatButtonToggleModule } from '@angular/material/button-toggle'; -import { MatCardModule } from '@angular/material/card'; -import { MatCheckboxModule } from '@angular/material/checkbox'; -import { MatChipsModule } from '@angular/material/chips'; -import { MatRippleModule, MatNativeDateModule } from '@angular/material/core'; -import { MatDatepickerModule } from '@angular/material/datepicker'; +import { CommonModule, HashLocationStrategy, LocationStrategy } from '@angular/common'; +import { AppComponent } from './app.component'; +import { HTTP_INTERCEPTORS, HttpClientModule } from '@angular/common/http'; import { MatDialogModule } from '@angular/material/dialog'; -import { MatExpansionModule } from '@angular/material/expansion'; -import { MatFormFieldModule } from '@angular/material/form-field'; -import { MatGridListModule } from '@angular/material/grid-list'; -import { MatIconModule } from '@angular/material/icon'; -import { MatInputModule } from '@angular/material/input'; -import { MatListModule } from '@angular/material/list'; -import { MatPaginatorModule } from '@angular/material/paginator'; -import { MatProgressBarModule } from '@angular/material/progress-bar'; -import { MatProgressSpinnerModule } from '@angular/material/progress-spinner'; -import { MatRadioModule } from '@angular/material/radio'; -import { MatSelectModule } from '@angular/material/select'; -import { MatSidenavModule } from '@angular/material/sidenav'; -import { MatSliderModule } from '@angular/material/slider'; -import { MatSnackBarModule } from '@angular/material/snack-bar'; -import { MatSortModule } from '@angular/material/sort'; -import { MatTableModule } from '@angular/material/table'; -import { MatTabsModule } from '@angular/material/tabs'; -import { MatToolbarModule } from '@angular/material/toolbar'; -import { MatTooltipModule } from '@angular/material/tooltip'; -import { MatSlideToggleModule } from '@angular/material/slide-toggle'; -import { MatStepperModule } from '@angular/material/stepper'; - -import { MatDatetimepickerModule } from '@mat-datetimepicker/core' -import { MatMomentDatetimeModule } from '@mat-datetimepicker/moment' -import { InputMaskModule } from '@ngneat/input-mask' - -import { ZoomComponent } from './map/controls/zoom.component'; -import { AddObservationComponent } from './map/controls/add-observation.component'; -import { SwaggerComponent } from './swagger/swagger.component'; - -import { LocationComponent } from './map/controls/location.component'; -import { SearchComponent } from './map/controls/search.component'; -import { HttpClientModule, HTTP_INTERCEPTORS } from '@angular/common/http'; -import { LayersComponent } from './map/layers/layers.component' -import { LayersControlComponent } from './map/controls/layers-control.component'; -import { LeafletComponent } from './map/leaflet.component'; -import { LeafletDirective } from './map/leaflet.upgrade.component'; -import { LayerHeaderComponent } from './map/layers/layer-header.component'; -import { LayerContentComponent } from './map/layers/layer-content.component'; -import { ColorPickerComponent } from './color-picker/color-picker.component'; -import { ExportComponent } from './export/export.component'; -import { ExportDialogComponent } from "./export/export-dialog.component"; - -import { MapClipComponent } from './map/clip/clip.component'; -import { GeometryModule } from './geometry/geometry.module'; -import { ObservationDeleteComponent } from './observation/observation-delete/observation-delete.component'; -import { ObservationListItemComponent } from './observation/observation-list/observation-list-item.component'; -import { MomentModule } from './moment/moment.module'; -import { BootstrapComponent } from './bootstrap/bootstrap.component'; -import { AttachmentComponent } from './observation/attachment/attachment.component'; -import { FilenamePipe } from './filename/filename.pipe'; -import { AttachUploadComponent } from './observation/attachment/attachment-upload/attachment-upload.component'; -import { ObservationViewFormComponent } from './observation/observation-view/observation-view-form.component'; -import { ObservationViewComponent } from './observation/observation-view/observation-view.component'; -import { ObservationFavoritesComponent } from './observation/observation-favorites/observation-favorites.component'; -import { UserAvatarComponent } from './user/user-avatar/user-avatar.component'; -import { TokenInterceptorService } from './http/token-interceptor.service'; -import { ObservationListComponent } from './observation/observation-list/observation-list.component'; -import { UserViewComponent } from './user/user-view/user-view.component'; -import { UserListItemComponent } from './user/user-list/user-list-item.component'; -import { UserListComponent } from './user/user-list/user-list.component'; -import { FeedListComponent } from './feed/feed-list/feed-list.component'; -import { FeedPanelComponent } from './feed-panel/feed-panel.component'; - -import { - mapServiceProvider, - eventResourceProvider, - eventServiceProvider, - localStorageServiceProvider, - geometryServiceProvider, - observationServiceProvider, - filterServiceProvider, - locationServiceProvider, - userServiceProvider, - settingsProvider, - teamProvider, - eventProvider, - authenticationConfigurationServiceProvider, - userPagingServiceProvider -} from './upgrade/ajs-upgraded-providers'; - -import { - ObservationViewCheckboxComponent, - ObservationViewDateComponent, - ObservationViewGeometryComponent, - ObservationViewMultiselectdropdownComponent, - ObservationViewTextComponent, - ObservationViewTextareaComponent -} from './observation/observation-view/observation-view'; - -import { - DMSValidatorDirective, - MGRSValidatorDirective, - ObservationEditCheckboxComponent, - ObservationEditDateComponent, - ObservationEditSelectComponent, - ObservationEditEmailComponent, - ObservationEditGeometryComponent, - ObservationEditGeometryFormComponent, - ObservationEditGeometryMapComponent, - ObservationEditMultiselectComponent, - ObservationEditNumberComponent, - ObservationEditRadioComponent, - ObservationEditTextComponent, - ObservationEditTextareaComponent, - ObservationEditFormComponent, - ObservationEditComponent -} from './observation/observation-edit/observation-edit'; - -import { FeedItemComponent } from './feed/feed-item/feed-item.component'; -import { FeedItemMapPopupComponent } from './feed/feed-item/feed-item-map/feed-item-map-popup.component'; -import { FeedItemSummaryModule } from './feed/feed-item/feed-item-summary/feed-item-summary.module'; -import { FeedPanelTabComponent } from './feed-panel/feed-panel-tab.component'; -import { AdminFeedsModule } from './admin/admin-feeds/admin-feeds.module'; -import { ObservationPopupComponent } from './observation/observation-popup/observation-popup.component'; -import { UserPopupComponent } from './user/user-popup/user-popup.component'; -import { StaticIconModule } from '@ngageoint/mage.web-core-lib/static-icon' -import { MageCommonModule } from '@ngageoint/mage.web-core-lib/common' -import { AdminModule } from './admin/admin.module' -import { AdminSettingsComponent } from './admin/admin-settings/admin-settings.component'; -import { AdminBreadcrumbModule } from './admin/admin-breadcrumb/admin-breadcrumb.module'; -import { ContactInfoComponent } from './admin/admin-settings/admin-settings'; -import { SecurityBannerComponent, SecurityDisclaimerComponent } from './admin/admin-settings/admin-settings'; -import { DatetimePickerComponent } from './datetime-picker/datetime-picker.component'; -import { CommonModule } from '@angular/common'; -import { ObservationOptionsComponent } from './observation/observation-view/observation-options.component'; -import { ObservationEditFormPickerComponent } from './observation/observation-edit/observation-edit-form-picker.component'; -import { ObservationEditDiscardComponent } from './observation/observation-edit/observation-edit-discard/observation-edit-discard.component'; -import { ObservationViewAttachmentComponent } from './observation/observation-view/observation-view-attachment/observation-view-attachment.component'; -import { ObservationEditAttachmentComponent } from './observation/observation-edit/observation-edit-attachment/observation-edit-attachment.component'; -import { ObservationEditPasswordComponent } from './observation/observation-edit/observation-edit-password/observation-edit-password.component'; -import { ObservationViewPasswordComponent } from './observation/observation-view/observation-view-password/observation-view-password.component'; -import { PasswordPipe } from './observation/observation-view/observation-view-password/password.pipe'; -import { ContactComponent } from './contact/contact.component'; -import { ContactDialogComponent } from "./contact/contact-dialog.component"; -import { AdminAuthenticationOidcComponent } from './admin/admin-authentication/admin-authentication-oidc/admin-authentication-oidc.component'; -import { AuthenticationDeleteComponent } from './admin/admin-authentication/admin-authentication-delete/admin-authentication-delete.component'; -import { AdminAuthenticationLocalComponent } from './admin/admin-authentication/admin-authentication-local/admin-authentication-local.component'; -import { PasswordPolicyComponent } from './admin/admin-authentication/admin-authentication-local//password-policy/password-policy.component'; -import { AccountLockComponent } from './admin/admin-authentication/admin-authentication-local//account-lock/account-lock.component'; -import { AdminAuthenticationComponent } from './admin/admin-authentication/admin-authentication.component'; -import { IconUploadComponent } from './admin/admin-authentication/admin-authentication-create/icon-upload/icon-upload.component'; -import { AuthenticationCreateComponent } from './admin/admin-authentication/admin-authentication-create/admin-authentication-create.component'; -import { AdminAuthenticationOAuth2Component } from './admin/admin-authentication/admin-authentication-oauth2/admin-authentication-oauth2.component'; -import { AdminAuthenticationLDAPComponent } from './admin/admin-authentication/admin-authentication-ldap/admin-authentication-ldap.component'; -import { AdminAuthenticationSAMLComponent } from './admin/admin-authentication/admin-authentication-saml/admin-authentication-saml.component'; -import { ButtonPreviewComponent } from './admin/admin-authentication/admin-authentication-create/button-preview/button-preview.component'; -import { AdminAuthenticationSettingsComponent } from './admin/admin-authentication/admin-authentication-settings.component'; -import { AdminSettingsUnsavedComponent } from './admin/admin-settings/admin-settings-unsaved/admin-settings-unsaved.component'; -import { ExportDataComponent } from './export/export-data/export-data.component'; -import { NoExportsComponent } from './export/empty-state/no-exports.component'; -import { AdminEventFormPreviewComponent } from './admin/admin-event/admin-event-form/admin-event-form-preview/admin-event-form-preview.component'; -import { AdminEventFormPreviewDialogComponent } from './admin/admin-event/admin-event-form/admin-event-form-preview/admin-event-form-preview-dialog.component'; -import { AdminMapComponent } from './admin/admin-map/admin-map.component'; - +import { AppRoutingModule } from './routing.module'; +import { LocalStorageService } from './http/local-storage.service'; +import { TokenInterceptorService } from './http/token.interceptor'; +import { MageCommonModule } from '@ngageoint/mage.web-core-lib/common'; @NgModule({ declarations: [ - SwaggerComponent, - ZoomComponent, - AddObservationComponent, - LocationComponent, - SearchComponent, - LayersControlComponent, - LeafletComponent, - LeafletDirective, - LayersComponent, - LayerHeaderComponent, - LayerContentComponent, - ColorPickerComponent, - DMSValidatorDirective, - MGRSValidatorDirective, - FeedItemComponent, - FeedItemMapPopupComponent, - FeedListComponent, - FeedPanelComponent, - FeedPanelTabComponent, - ObservationListItemComponent, - ObservationEditComponent, - ObservationDeleteComponent, - ObservationEditAttachmentComponent, - ObservationEditFormComponent, - ObservationEditFormPickerComponent, - ObservationEditMultiselectComponent, - ObservationEditCheckboxComponent, - ObservationEditSelectComponent, - ObservationEditEmailComponent, - ObservationEditNumberComponent, - ObservationEditTextComponent, - ObservationEditTextareaComponent, - ObservationEditRadioComponent, - ObservationEditGeometryComponent, - ObservationEditGeometryMapComponent, - ObservationEditGeometryFormComponent, - ObservationEditDateComponent, - ObservationViewComponent, - ObservationViewAttachmentComponent, - ObservationViewTextComponent, - ObservationViewTextareaComponent, - ObservationViewCheckboxComponent, - ObservationViewDateComponent, - ObservationViewGeometryComponent, - ObservationViewMultiselectdropdownComponent, - ObservationViewFormComponent, - ObservationFavoritesComponent, - ObservationListComponent, - ObservationOptionsComponent, - MapClipComponent, - BootstrapComponent, - AttachmentComponent, - FilenamePipe, - AttachUploadComponent, - UserAvatarComponent, - UserViewComponent, - UserListItemComponent, - UserListComponent, - ObservationPopupComponent, - UserPopupComponent, - AdminSettingsComponent, - PasswordPolicyComponent, - AccountLockComponent, - AuthenticationCreateComponent, - AuthenticationDeleteComponent, - SecurityBannerComponent, - SecurityDisclaimerComponent, - IconUploadComponent, - ContactInfoComponent, - DatetimePickerComponent, - ExportComponent, - ExportDialogComponent, - ExportDataComponent, - NoExportsComponent, - ObservationEditDiscardComponent, - ObservationEditPasswordComponent, - ObservationViewPasswordComponent, - PasswordPipe, - ContactComponent, - ContactDialogComponent, - AdminAuthenticationOidcComponent, - AdminAuthenticationLocalComponent, - AdminAuthenticationComponent, - AdminAuthenticationOAuth2Component, - AdminAuthenticationLDAPComponent, - AdminAuthenticationSAMLComponent, - ButtonPreviewComponent, - AdminAuthenticationSettingsComponent, - AdminSettingsUnsavedComponent, - AdminEventFormPreviewComponent, - AdminEventFormPreviewDialogComponent, - AdminMapComponent + AppComponent ], imports: [ + AppRoutingModule, CommonModule, BrowserModule, - HttpClientModule, - UpgradeModule, - UIRouterUpgradeModule.forRoot(), - FormsModule, - ReactiveFormsModule, BrowserAnimationsModule, - DragDropModule, - MatBadgeModule, - MatBottomSheetModule, + HttpClientModule, MatDialogModule, - MatButtonToggleModule, - MatNativeDateModule, - MatDatepickerModule, - MatMomentDatetimeModule, - MatDatetimepickerModule, - MatToolbarModule, - MatIconModule, - MatTooltipModule, - MatTabsModule, - MatButtonModule, - MatCardModule, - MatGridListModule, - MatProgressSpinnerModule, - MatFormFieldModule, - MatRadioModule, - MatCheckboxModule, - MatInputModule, - MatAutocompleteModule, - MatSelectModule, - MatSliderModule, - MatExpansionModule, - MatListModule, - MatRippleModule, - MatChipsModule, - MatSidenavModule, - MatSnackBarModule, - MatProgressBarModule, - MatTableModule, - MatPaginatorModule, - MatSortModule, - MageCommonModule, - MomentModule, - GeometryModule, - ScrollingModule, - SaturationModule, - HueModule, - AlphaModule, - CheckboardModule, - MatTableModule, - MatPaginatorModule, - MatSortModule, - MatSnackBarModule, - MatDatepickerModule, - NgxMatSelectSearchModule, - AdminModule, - AdminFeedsModule, - FeedItemSummaryModule, - StaticIconModule, - AdminBreadcrumbModule, - MatSlideToggleModule, - MatStepperModule, - InputMaskModule.forRoot() + MageCommonModule ], + bootstrap: [ AppComponent ], providers: [ - mapServiceProvider, - userServiceProvider, - filterServiceProvider, - eventResourceProvider, - eventServiceProvider, - geometryServiceProvider, - observationServiceProvider, - localStorageServiceProvider, - locationServiceProvider, - settingsProvider, - teamProvider, - eventProvider, - authenticationConfigurationServiceProvider, - userPagingServiceProvider, + LocalStorageService, + TokenInterceptorService, + { provide: LocationStrategy, useClass: HashLocationStrategy }, { provide: HTTP_INTERCEPTORS, useClass: TokenInterceptorService, multi: true } ] }) export class AppModule implements DoBootstrap { // eslint-disable-next-line @typescript-eslint/no-empty-function - public ngDoBootstrap(appRef: ApplicationRef): void { - } -} + public ngDoBootstrap(_appRef: ApplicationRef): void { } +} \ No newline at end of file diff --git a/web-app/src/app/banner/baner.component.ts b/web-app/src/app/banner/baner.component.ts new file mode 100644 index 000000000..212628b03 --- /dev/null +++ b/web-app/src/app/banner/baner.component.ts @@ -0,0 +1,11 @@ +import { Component, Input } from '@angular/core'; +import { Banner } from '../setttings/settings.service'; + +@Component({ + selector: 'banner', + templateUrl: './banner.component.html', + styleUrls: ['./banner.component.scss'] +}) +export class BannerComponent { + @Input() banner?: Banner +} diff --git a/web-app/src/app/banner/banner.component.html b/web-app/src/app/banner/banner.component.html new file mode 100644 index 000000000..27954b5a7 --- /dev/null +++ b/web-app/src/app/banner/banner.component.html @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/web-app/src/app/banner/banner.component.scss b/web-app/src/app/banner/banner.component.scss new file mode 100644 index 000000000..a9d706953 --- /dev/null +++ b/web-app/src/app/banner/banner.component.scss @@ -0,0 +1,10 @@ +:host { + width: 100%; +} + +.banner { + display: flex; + align-items: center; + justify-content: center; + padding: 4px 0; +} \ No newline at end of file diff --git a/web-app/src/app/banner/banner.component.spec.ts b/web-app/src/app/banner/banner.component.spec.ts new file mode 100644 index 000000000..affc1c758 --- /dev/null +++ b/web-app/src/app/banner/banner.component.spec.ts @@ -0,0 +1,24 @@ +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; +import { BannerComponent } from './baner.component'; + +describe('Banner Component', () => { + let component: BannerComponent; + let fixture: ComponentFixture; + + beforeEach(waitForAsync(() => { + TestBed.configureTestingModule({ + declarations: [BannerComponent], + imports: [] + }).compileComponents(); + })); + + beforeEach(() => { + fixture = TestBed.createComponent(BannerComponent); + component = fixture.componentInstance; + }); + + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/web-app/src/app/banner/banner.module.ts b/web-app/src/app/banner/banner.module.ts new file mode 100644 index 000000000..1360c758d --- /dev/null +++ b/web-app/src/app/banner/banner.module.ts @@ -0,0 +1,12 @@ +import { NgModule } from '@angular/core'; +import { BannerComponent } from './baner.component'; +import { CommonModule } from '@angular/common'; + +@NgModule({ + declarations: [ + BannerComponent, + ], + imports: [CommonModule], + exports: [BannerComponent] +}) +export class BannerModule { } \ No newline at end of file diff --git a/web-app/src/app/color-picker/color-picker.component.scss b/web-app/src/app/color-picker/color-picker.component.scss index 4921658f5..d9bd39a4a 100644 --- a/web-app/src/app/color-picker/color-picker.component.scss +++ b/web-app/src/app/color-picker/color-picker.component.scss @@ -1,4 +1,4 @@ -@import '~@angular/material/theming'; +@use '@angular/material' as mat; @import "variables.scss"; mat-card { @@ -26,7 +26,7 @@ mat-card { position: relative; margin-bottom: 2px; font: 400 12px/24px Roboto, "Helvetica Neue", sans-serif; - color: mat-color($app-primary); + color: mat.get-color-from-palette($app-primary); } .swatch-input { diff --git a/web-app/src/app/color-picker/color-picker.component.spec.ts b/web-app/src/app/color-picker/color-picker.component.spec.ts index 4cd1c5b7c..63e58a764 100644 --- a/web-app/src/app/color-picker/color-picker.component.spec.ts +++ b/web-app/src/app/color-picker/color-picker.component.spec.ts @@ -1,4 +1,4 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; import { ColorPickerComponent } from './color-picker.component'; import { MatCardModule } from '@angular/material/card'; @@ -24,7 +24,7 @@ describe('ColorPickerComponent', () => { let component: ColorPickerComponent; let fixture: ComponentFixture; - beforeEach(async(() => { + beforeEach(waitForAsync(() => { TestBed.configureTestingModule({ imports: [ NoopAnimationsModule, MatInputModule, MatFormFieldModule, MatCardModule, CheckboardModule, SaturationModule, HueModule, AlphaModule ], declarations: [ TestHostComponent, ColorPickerComponent ] diff --git a/web-app/src/app/contact/contact-dialog.component.scss b/web-app/src/app/contact/contact-dialog.component.scss index cf557af87..dffba0cf7 100644 --- a/web-app/src/app/contact/contact-dialog.component.scss +++ b/web-app/src/app/contact/contact-dialog.component.scss @@ -1,9 +1,9 @@ -@import '~@angular/material/theming'; +@use '@angular/material' as mat; @import "variables.scss"; button { margin-left: 8px; - color: mat-color($app-primary); + color: mat.get-color-from-palette($app-primary); } mat-dialog-actions { diff --git a/web-app/src/app/contact/contact-dialog.component.ts b/web-app/src/app/contact/contact-dialog.component.ts index 836e68233..764739849 100644 --- a/web-app/src/app/contact/contact-dialog.component.ts +++ b/web-app/src/app/contact/contact-dialog.component.ts @@ -1,14 +1,15 @@ -import { Component, Inject, OnInit } from "@angular/core"; +import { Component, Inject } from "@angular/core"; import { MatDialogRef, MAT_DIALOG_DATA } from "@angular/material/dialog"; import { LinkGenerator } from "./utilities/link-generator"; +import { Api } from "../api/api.entity"; +import { ApiService } from "../api/api.service"; @Component({ selector: 'contact-dialog', templateUrl: 'contact-dialog.component.html', styleUrls: ['./contact-dialog.component.scss'], }) -export class ContactDialogComponent implements OnInit { - api: any; +export class ContactDialogComponent { statusTitle: string; statusMessage: string; id: string; @@ -17,37 +18,44 @@ export class ContactDialogComponent implements OnInit { phoneLink: string; constructor( - public dialogRef: MatDialogRef, - @Inject(MAT_DIALOG_DATA) public data: any) { + private apiService: ApiService, + @Inject(MAT_DIALOG_DATA) public data: any, + public dialogRef: MatDialogRef + ) { + this.statusTitle = data.info.statusTitle + this.statusMessage = data.info.statusMessage + this.id = data.info.id + this.strategy = data.strategy - this.api = data.api; - this.statusTitle = data.info.statusTitle; - this.statusMessage = data.info.statusMessage; - this.id = data.info.id; - this.strategy = data.strategy; + apiService.getApi().subscribe((api: Api) => { + this.statusMessage = `${this.statusMessage}${this.generateContactMessage(api)}` + }) } - ngOnInit(): void { - const emailLink = LinkGenerator.emailLink(this.api.contactinfo, this.statusMessage, this.id, this.strategy); - const phoneLink = LinkGenerator.phoneLink(this.api.contactinfo); + private generateContactMessage(api: Api): string { + const emailLink = LinkGenerator.emailLink(api.contactInfo, this.statusMessage, this.id, this.strategy) + const phoneLink = LinkGenerator.phoneLink(api.contactInfo); + var message = "" if (emailLink || phoneLink) { - this.statusMessage += "

"; - this.statusMessage += "You may contact your MAGE administrator via "; + message += "

" + message += "You may contact your Mage administrator via " if (emailLink) { - this.statusMessage += "Email"; + message += "Email" } if (emailLink && phoneLink) { - this.statusMessage += " or "; + message += " or " } if (phoneLink) { - this.statusMessage += "Phone"; + message += "Phone" } - this.statusMessage += " for further assistance."; + message += " for further assistance." } + + return message } close(): void { - this.dialogRef.close('cancel'); + this.dialogRef.close('cancel') } } \ No newline at end of file diff --git a/web-app/src/app/contact/utilities/email-builder.ts b/web-app/src/app/contact/utilities/email-builder.ts index 24b906145..9f9d07027 100644 --- a/web-app/src/app/contact/utilities/email-builder.ts +++ b/web-app/src/app/contact/utilities/email-builder.ts @@ -33,17 +33,17 @@ export class EmailBuilder { } } else { if (upperStatusMsg.includes('APPROVED') || upperStatusMsg.includes('ACTIVATE')) { - this._subject = "Please activate my account" + this._subject = "Please activate my Mage account" } else if (upperStatusMsg.includes('DISABLED')) { - this._subject = "Please enable my account" + this._subject = "Please enable my Mage account" } else if (upperStatusMsg.includes('LOCKED')) { - this._subject = "Please unlock my account" + this._subject = "Please unlock my Mage account" } else if (upperStatusMsg.includes('CAPTCHA')) { - this._subject = "CAPTCHA issue" + this._subject = "Mage CAPTCHA issue" } else if (upperStatusMsg.includes('EVENT')) { - this._subject = "Please add me to an event"; + this._subject = "Please add me to a Mage event"; } else { - this._subject = 'User login issue'; + this._subject = 'Mage signin issue'; } } @@ -51,15 +51,6 @@ export class EmailBuilder { this._subject += ' - ' + this._identifier; this._body += 'Identifier (username or device id): ' + this._identifier + '\n'; } - if (this._strategy) { - this._body += 'Authentication Method: '; - if (this._strategy.title) { - this._body += this._strategy.title; - } else { - this._body += this._strategy; - } - this._body += '\n'; - } this._body += 'Error Message Received: ' + this._statusMessage; } diff --git a/web-app/src/app/datetime-picker/datetime-picker.component.html b/web-app/src/app/datetime-picker/datetime-picker.component.html index 5152bb866..e20a7b671 100644 --- a/web-app/src/app/datetime-picker/datetime-picker.component.html +++ b/web-app/src/app/datetime-picker/datetime-picker.component.html @@ -13,7 +13,7 @@
- {{title}} Time {{timeZone === 'gmt' ? '(GMT)' : '(Local)'}} + {{title}} Time {{timezone === 'gmt' ? '(GMT)' : '(Local)'}} diff --git a/web-app/src/app/datetime-picker/datetime-picker.component.spec.ts b/web-app/src/app/datetime-picker/datetime-picker.component.spec.ts index 550fdd004..c16937b48 100644 --- a/web-app/src/app/datetime-picker/datetime-picker.component.spec.ts +++ b/web-app/src/app/datetime-picker/datetime-picker.component.spec.ts @@ -1,12 +1,13 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; import { DatetimePickerComponent } from './datetime-picker.component'; +/* TODO at least one test MUST be implemented describe('DatetimePickerComponent', () => { let component: DatetimePickerComponent; let fixture: ComponentFixture; - beforeEach(async(() => { + beforeEach(waitForAsync(() => { TestBed.configureTestingModule({ declarations: [ DatetimePickerComponent ] }) @@ -23,3 +24,4 @@ describe('DatetimePickerComponent', () => { // expect(component).toBeTruthy(); // }); }); +*/ diff --git a/web-app/src/app/datetime-picker/datetime-picker.component.ts b/web-app/src/app/datetime-picker/datetime-picker.component.ts index 2fc94a1ce..7c6aa4761 100644 --- a/web-app/src/app/datetime-picker/datetime-picker.component.ts +++ b/web-app/src/app/datetime-picker/datetime-picker.component.ts @@ -1,7 +1,7 @@ -import { Component, EventEmitter, Inject, Input, OnChanges, Output, SimpleChanges, ViewChild } from '@angular/core'; +import { Component, EventEmitter, Input, OnChanges, Output, SimpleChanges, ViewChild } from '@angular/core'; import { NgModel } from '@angular/forms'; -import { LocalStorageService } from '../upgrade/ajs-upgraded-providers'; import * as moment from 'moment' +import { LocalStorageService } from '../http/local-storage.service'; @Component({ selector: 'datetime-picker', @@ -13,6 +13,8 @@ export class DatetimePickerComponent implements OnChanges { @Input() title: string @Input() required: boolean @Input() datetime: Date + @Input() timezone: 'local' | 'gmt' + @Output() dateTimeChange = new EventEmitter() @ViewChild('dateModel') dateModel: NgModel @@ -20,11 +22,6 @@ export class DatetimePickerComponent implements OnChanges { date: moment.Moment time: moment.Moment - timeZone: string - - constructor(@Inject(LocalStorageService) localStorageService: any) { - this.timeZone = localStorageService.getTimeZoneEdit(); - } ngOnChanges(changes: SimpleChanges): void { if (changes.datetime && changes.datetime.currentValue) { @@ -58,7 +55,7 @@ export class DatetimePickerComponent implements OnChanges { second: this.time ? this.time.get('second') : 0, }) - if (this.timeZone === 'gmt') { + if (this.timezone === 'gmt') { date.utc(true) } diff --git a/web-app/src/app/entities/entities.password.ts b/web-app/src/app/entities/entities.password.ts new file mode 100644 index 000000000..b1c6e2f5d --- /dev/null +++ b/web-app/src/app/entities/entities.password.ts @@ -0,0 +1,33 @@ +export interface PasswordStrength { + color: string, + text: string, + value: string +} + +export const passwordStrengthScores: { [key: number]: PasswordStrength } = { + 0: { + color: '#F44336', + text: 'Weak', + value: '0' + }, + 1: { + color: '#F44336', + text: 'Fair', + value: '25' + }, + 2: { + color: '#F44336', + text: 'Good', + value: '50' + }, + 3: { + color: '#F44336', + text: 'Strong', + value: '75' + }, + 4: { + color: '#F44336', + text: 'Excellent', + value: '100' + } +} \ No newline at end of file diff --git a/web-app/src/app/event/event.service.spec.ts b/web-app/src/app/event/event.service.spec.ts new file mode 100644 index 000000000..45cd9ac47 --- /dev/null +++ b/web-app/src/app/event/event.service.spec.ts @@ -0,0 +1,21 @@ +import { TestBed } from '@angular/core/testing'; +import { EventService } from './event.service'; +import { HttpClientTestingModule } from '@angular/common/http/testing'; + +describe('Event Service Tests', () => { + + beforeEach(() => { + TestBed.configureTestingModule({ + providers: [EventService], + imports: [HttpClientTestingModule] + }); + }); + + afterEach(() => { + }); + + it('should be created', () => { + const service: EventService = TestBed.inject(EventService); + expect(service).toBeTruthy(); + }); +}); \ No newline at end of file diff --git a/web-app/src/app/event/event.service.ts b/web-app/src/app/event/event.service.ts new file mode 100644 index 000000000..4c28414f6 --- /dev/null +++ b/web-app/src/app/event/event.service.ts @@ -0,0 +1,702 @@ +import { Injectable } from "@angular/core"; +import { Observable, catchError, combineLatest, finalize, map, of, tap } from "rxjs"; +import { FilterService } from "../filter/filter.service"; +import { PollingService } from "./polling.service"; +import { ObservationService } from "../observation/observation.service"; +import { HttpClient, HttpParams } from "@angular/common/http"; +import { LayerService } from "../layer/layer.service"; +import { LocationService } from "../user/location/location.service"; +import { LocalStorageService } from "../http/local-storage.service"; +import * as _ from 'lodash' +import * as moment from 'moment' +import { FeedService } from "@ngageoint/mage.web-core-lib/feed"; + +@Injectable({ + providedIn: 'root' +}) +export class EventService { + private observationsChangedListeners: any = []; + private usersChangedListeners: any = []; + private layersChangedListeners: any = []; + private feedItemsChangedListeners: any = []; + private pollListeners: any = []; + private eventsById: any = {}; + private pollingTimeout: any = null; + private feedPollTimeout: any = null; + private feedSyncStates: any = {}; + + constructor( + private pollingService: PollingService, + private httpClient: HttpClient, + private feedService: FeedService, + private layerService: LayerService, + private filterService: FilterService, + private locationService: LocationService, + private observationService: ObservationService, + private localStorageService: LocalStorageService + ) {} + + init() { + this.filterService.addListener(this) + this.pollingService.addListener(this) + } + + destroy() { + this.eventsById = {} + this.filterService.removeListener(this) + this.pollingService.removeListener(this) + + if (this.pollingTimeout) { + clearTimeout(this.pollingTimeout) + } + + if (this.feedPollTimeout) { + clearTimeout(this.feedPollTimeout) + } + } + + query(options?: any): Observable { + options = options || {}; + return this.httpClient.get('/api/events/', options) + } + + addFeed(eventId: string, feed: any): Observable { + return this.httpClient.post(`/api/events/${eventId}/feeds`, feed) + } + + removeFeed(eventId: string, feedId: string): Observable { + return this.httpClient.delete(`/api/events/${eventId}/feeds/${feedId}`) + } + + onFilterChanged(filter: any) { + if (filter.event) { + this.onEventChanged(filter.event); + } + + if (filter.event?.added?.length || filter.timeInterval) { // requery server + this.fetch().subscribe() + } else if (filter.teams) { // filter in memory + this.onTeamsChanged() + } + + if (filter.actionFilter) { + this.onActionFilterChanged() + } + } + + onEventChanged(event: any) { + const { added = [], removed = [] } = event + added.forEach((added: any) => { + if (!this.eventsById[added.id]) { + this.eventsById[added.id] = (JSON.parse(JSON.stringify(added))); + + this.eventsById[added.id].filteredObservationsById = {}; + this.eventsById[added.id].observationsById = {}; + this.eventsById[added.id].usersById = {}; + this.eventsById[added.id].filteredUsersById = {}; + } + + this.fetchLayers(added); + this.fetchFeeds(added); + }) + + removed.forEach((removed: any) => { + this.observationsChanged({ removed: Object.values(this.eventsById[removed.id]?.filteredObservationsById || {}) }); + this.usersChanged({ removed: Object.values(this.eventsById[removed.id]?.filteredUsersById || {}) }); + this.layersChanged({ removed: Object.values(this.eventsById[removed.id]?.layersById || {}) }, removed); + this.feedItemsChanged({ removed: Object.values(this.eventsById[removed.id]?.feedsById || {}).map((feed: any) => ({ feed })) }, removed); + delete this.eventsById[removed.id]; + }) + } + + onTeamsChanged() { + const event = this.filterService.getEvent(); + if (!event) return; + + const teamsEvent = this.eventsById[event.id]; + if (!teamsEvent) return; + + // remove observations that are not part of filtered teams + const observationsRemoved = []; + Object.values(teamsEvent.filteredObservationsById).forEach((observation: any) => { + if (!this.filterService.isUserInTeamFilter(observation.userId)) { + delete teamsEvent.filteredObservationsById[observation.id]; + observationsRemoved.push(observation); + } + }); + + // remove users that are not part of filtered teams + const usersRemoved = []; + Object.values(teamsEvent.filteredUsersById).forEach((user: any) => { + if (!this.filterService.isUserInTeamFilter(user.id)) { + delete teamsEvent.filteredUsersById[user.id]; + usersRemoved.push(user); + } + }); + + // add any observations that are part of the filtered teams + const observationsAdded = []; + Object.values(teamsEvent.observationsById).forEach((observation: any) => { + if (this.filterService.isUserInTeamFilter(observation.userId) && !teamsEvent.filteredObservationsById[observation.id]) { + observationsAdded.push(observation); + teamsEvent.filteredObservationsById[observation.id] = observation; + } + }); + + // add any users that are part of the filtered teams + const usersAdded = []; + Object.values(teamsEvent.usersById).forEach((user: any) => { + if (this.filterService.isUserInTeamFilter(user.id) && !teamsEvent.filteredUsersById[user.id]) { + usersAdded.push(user); + teamsEvent.filteredUsersById[user.id] = user; + } + }); + + this.observationsChanged({ added: observationsAdded, removed: observationsRemoved }); + this.usersChanged({ added: usersAdded, removed: usersRemoved }); + } + + onActionFilterChanged() { + const event = this.filterService.getEvent(); + if (!event) return; + + const actionEvent = this.eventsById[event.id]; + + const observationsRemoved = []; + Object.values(actionEvent.filteredObservationsById).forEach((observation: any) => { + if (!this.filterService.observationInFilter(observation)) { + delete actionEvent.filteredObservationsById[observation.id]; + observationsRemoved.push(observation); + } + }); + + const observationsAdded = []; + // add any observations that are part of the filtered actions + Object.values(actionEvent.observationsById).forEach((observation: any) => { + if (!actionEvent.filteredObservationsById[observation.id] && this.filterService.observationInFilter(observation)) { + observationsAdded.push(observation); + actionEvent.filteredObservationsById[observation.id] = observation; + } + }); + + this.observationsChanged({ added: observationsAdded, removed: observationsRemoved }); + } + + onPollingIntervalChanged(interval: any) { + if (this.pollingTimeout) { + // cancel previous poll + clearTimeout(this.pollingTimeout) + } + + this.pollingTimeout = setTimeout(() => { + this.poll(interval); + }, interval) + } + + addObservationsChangedListener(listener: any) { + this.observationsChangedListeners.push(listener); + + if (typeof listener.onObservationsChanged === 'function') { + Object.values(this.eventsById).forEach((event: any) => { + listener.onObservationsChanged({ added: Object.values(event.observationsById) }); + }); + } + } + + removeObservationsChangedListener(listener) { + this.observationsChangedListeners = this.observationsChangedListeners.filter((l: any) => { + return listener !== l; + }); + } + + addUsersChangedListener(listener) { + this.usersChangedListeners.push(listener); + + if (typeof listener.onUsersChanged === 'function') { + Object.values(this.eventsById).forEach((event: any) => { + listener.onUsersChanged({ added: Object.values(event.usersById) }); + }); + } + } + + removeUsersChangedListener(listener) { + this.usersChangedListeners = this.usersChangedListeners.filter((l: any) => { + return listener !== l; + }); + } + + addLayersChangedListener(listener) { + this.layersChangedListeners.push(listener); + + if (typeof listener.onLayersChanged === 'function') { + Object.values(this.eventsById).forEach((event: any) => { + listener.onLayersChanged({ added: Object.values(event.layersById) }, event); // TODO this could be old layers, admin panel might have changed layers + }); + } + } + + addFeedItemsChangedListener(listener) { + this.feedItemsChangedListeners.push(listener); + + if (typeof listener.onFeedItemsChanged === 'function') { + Object.values(this.eventsById).forEach((event: any) => { + // TODO what do I send here? + // listener.onFeedItemsChanged({ added: _.values(event.feedsById) }, event); + }); + } + } + + addPollListener(listener) { + this.pollListeners.push(listener); + } + + removePollListener(listener) { + this.pollListeners = this.pollListeners.filter((l: any) => { + return listener !== l; + }); + } + + removeLayersChangedListener(listener) { + this.layersChangedListeners = this.layersChangedListeners.filter((l: any) => { + return listener !== l; + }); + } + + removeFeedItemsChangedListener(listener) { + this.feedItemsChangedListeners = this.feedItemsChangedListeners.filter((l: any) => { + return listener !== l; + }); + } + + getEventById(eventId) { + return this.eventsById[eventId]; + } + + saveObservation(observation: any) { + const event = this.eventsById[observation.eventId]; + const isNewObservation = !observation.id; + + return this.observationService.saveObservationForEvent(event, observation) + .pipe( + tap((update: any) => { + event.observationsById[update.id] = update; + + // Check if this new observation passes the current filter + if (this.filterService.observationInFilter(update)) { + event.filteredObservationsById[update.id] = update; + isNewObservation ? this.observationsChanged({ added: [update] }) : this.observationsChanged({ updated: [update] }); + } + }) + ) + } + + addObservationFavorite(observation) { + var event = this.eventsById[observation.eventId]; + return this.observationService.addObservationFavorite(event, observation) + .pipe( + tap((update: any) => { + event.observationsById[update.id] = update; + this.observationsChanged({ updated: [update] }); + }) + ) + } + + removeObservationFavorite(observation) { + var event = this.eventsById[observation.eventId]; + return this.observationService.removeObservationFavorite(event, observation) + .pipe( + tap((update: any) => { + event.observationsById[update.id] = update; + this.observationsChanged({ updated: [update] }); + }) + ) + } + + markObservationAsImportant(observation, important): Observable { + var event = this.eventsById[observation.eventId]; + return this.observationService.markObservationAsImportantForEvent(event, observation, important) + .pipe( + tap((update: any) => { + event.observationsById[update.id] = update; + this.observationsChanged({ updated: [update] }); + }) + ) + } + + clearObservationAsImportant(observation): Observable { + var event = this.eventsById[observation.eventId]; + return this.observationService.clearObservationAsImportantForEvent(event, observation) + .pipe( + tap((update: any) => { + event.observationsById[update.id] = update; + this.observationsChanged({ updated: [update] }); + }) + ) + } + + archiveObservation(observation): Observable { + var event = this.eventsById[observation.eventId] + return this.observationService.archiveObservationForEvent(event, observation) + .pipe( + tap((archived: any) => { + delete event.observationsById[archived.id] + this.observationsChanged({ removed: [archived] }) + }) + ) + } + + addAttachmentToObservation(observation, attachment) { + const event = this.eventsById[observation.eventId]; + this.observationService.addAttachmentToObservationForEvent(event, observation, attachment); + this.observationsChanged({ updated: [observation] }); + } + + deleteAttachmentForObservation(observation, attachment) { + const event = this.eventsById[observation.eventId]; + return this.observationService.deleteAttachmentInObservationForEvent(event, observation, attachment).subscribe((observation: any) => { + this.observationsChanged({ updated: [observation] }); + }); + } + + getFormField(form, fieldName) { + return form.fields.find((field: any) => field.name === fieldName); + } + + getForms(observation, options?: any) { + var event = this.eventsById[observation.eventId]; + return this.getFormsForEvent(event, options); + } + + getFormsForEvent(event, options?: any) { + options = options || {}; + var forms = event.forms; + if (options.archived === false) { + forms = forms.filter((form: any) => !form.archived); + } + + return forms; + } + + createForm(observationForm, formDefinition, viewModel?: any) { + const form = (JSON.parse(JSON.stringify(formDefinition))); + + form.remoteId = observationForm.id; + + const existingPropertyFields = []; + + for (const [key, value] of Object.entries(observationForm)) { + const field = this.getFormField(form, key); + if (field) { + if (field.type === 'date' && field.value) { + field.value = moment(value).toDate(); + } else { + field.value = value; + } + existingPropertyFields.push(field); + } + } + + if (viewModel) { + observationForm.fields = _.intersection(observationForm.fields, existingPropertyFields); + } + + return form; + } + + exportForm(event): Observable { + return this.httpClient.get(`/api/event/${event.id}/form.zip`) + } + + isUserInEvent(user, event): boolean { + if (!event) return false; + return event.teams.some((team: any) => team.userIds.includes(user.id)); + } + + usersChanged(changed) { + this.usersChangedListeners.forEach((listener: any) => { + changed.added = changed.added || []; + changed.updated = changed.updated || []; + changed.removed = changed.removed || []; + + if (typeof listener.onUsersChanged === 'function') { + listener.onUsersChanged(changed); + } + }); + } + + observationsChanged(changed) { + this.observationsChangedListeners.forEach((listener: any) => { + changed.added = changed.added || []; + changed.updated = changed.updated || []; + changed.removed = changed.removed || []; + + if (typeof listener.onObservationsChanged === 'function') { + listener.onObservationsChanged(changed); + } + }); + } + + layersChanged(changed, event) { + this.layersChangedListeners.forEach((listener: any) => { + changed.added = changed.added || []; + changed.updated = changed.updated || []; + changed.removed = changed.removed || []; + + if (typeof listener.onLayersChanged === 'function') { + listener.onLayersChanged(changed, event); + } + }); + } + + feedItemsChanged(changed, event) { + this.feedItemsChangedListeners.forEach((listener: any) => { + changed.added = changed.added || []; + changed.updated = changed.updated || []; + changed.removed = changed.removed || []; + + if (typeof listener.onFeedItemsChanged === 'function') { + listener.onFeedItemsChanged(changed, event); + } + }); + } + + fetch(): Observable { + const event = this.filterService.getEvent(); + if (!event) { return of()} + + const parameters: any = {}; + const interval = this.filterService.getInterval(); + if (interval) { + const time = this.filterService.formatInterval(interval); + parameters.interval = time; + } + + return combineLatest([ + this.locationService + .getUserLocationsForEvent(event, parameters) + .pipe(map((locations: any) => this.parseLocations(event, locations))), + this.observationService + .getObservationsForEvent(event, parameters) + .pipe(map((observations: any) => this.parseObservations(event, observations))) + ]) + } + + fetchLayers(event) { + return this.layerService.getLayersForEvent(event).subscribe((layers: any) => { + const added = layers.filter((l) => { + return !Object.keys(this.eventsById[event.id].layersById || {}).some((layerId: any) => l.id === layerId) + }) + + const removed = Object.keys(this.eventsById[event.id].layersById || {}).filter((layerId: any) => { + return !layers.some((l: any) => l.id === layerId); + }) + + this.eventsById[event.id].layersById = _.keyBy(layers, 'id'); + this.layersChanged({ added: added, removed: removed }, event); + }); + } + + fetchFeeds(event) { + this.feedService.fetchFeeds(event.id).subscribe(feeds => { + this.feedItemsChanged({ + added: feeds.map(feed => { + return { + feed, + items: [] + } + }) + }, event); + + this.eventsById[event.id].feedsById = _.keyBy(feeds, 'id'); + this.feedSyncStates = feeds.map(feed => { + return { + id: feed.id, + lastSync: 0 + } + }); + + this.pollFeeds(); + }); + } + + parseObservations(event: any, observations: any): void { + var added = []; + var updated = []; + var removed = []; + + var observationsById = {}; + var filteredObservationsById = this.eventsById[event.id].filteredObservationsById; + observations.forEach((observation: any) => { + // Check if this observation passes the current filter + if (this.filterService.observationInFilter(observation)) { + // Check if we already have this observation, if so update, otherwise add + var localObservation = filteredObservationsById[observation.id]; + if (localObservation) { + if (localObservation.lastModified !== observation.lastModified) { + updated.push(observation); + } else if (observation.attachments) { + var some = _.some(observation.attachments, function (attachment) { + var localAttachment = _.find(localObservation.attachments, function (a) { return a.id === attachment.id; }); + return !localAttachment || localAttachment.lastModified !== attachment.lastModified; + }); + + if (some) updated.push(observation); + } + } else { + added.push(observation); + } + + // remove from list of observations if it came back from server + // remaining elements in this list will be removed + delete filteredObservationsById[observation.id]; + + observationsById[observation.id] = observation; + } + }); + + // remaining elements were not pulled from the server, hence we should remove them + removed = Object.values(filteredObservationsById); + + this.eventsById[event.id].observationsById = _.keyBy(observations, 'id'); + this.eventsById[event.id].filteredObservationsById = observationsById; + + this.observationsChanged({ added: added, updated: updated, removed: removed }); + } + + parseLocations(event, userLocations: any): void { + const added = []; + const updated = []; + + const usersById = {}; + const filteredUsersById = this.eventsById[event.id].filteredUsersById; + userLocations.forEach((userLocation: any) => { + // Track each location feature by users id, + // so update the locations id to match the usersId + const location = userLocation.locations[0]; + location.id = userLocation.id; + + userLocation.location = location; + delete userLocation.locations; + + if (userLocation.user.iconUrl) { + var params = new HttpParams(); + params = params.append('access_token', this.localStorageService.getToken()) + params = params.append('_dc', userLocation.user.lastUpdated) + + location.style = { + iconUrl: `${userLocation.user.iconUrl}?${params.toString()}` + } + } + + if (this.filterService.isUserInTeamFilter(userLocation.id)) { + // Check if we already have this user, if so update, otherwise add + const localUser = filteredUsersById[userLocation.id]; + if (localUser) { + + if (userLocation.location.properties.timestamp !== localUser.location.properties.timestamp) { + updated.push(userLocation); + } + } else { + added.push(userLocation); + } + + // remove from list of observations if it came back from server + // remaining elements in this list will be removed + delete filteredUsersById[userLocation.id]; + + usersById[userLocation.id] = userLocation; + } + }); + + // remaining elements were not pulled from the server, hence we should remove them + const removed = _.values(filteredUsersById); + + this.eventsById[event.id].usersById = _.keyBy(userLocations, 'id'); + this.eventsById[event.id].filteredUsersById = usersById; + + this.usersChanged({ added: added, updated: updated, removed: removed }); + } + + poll(interval) { + if (interval <= 0) { + return; + } + this.fetch().subscribe(() => { + this.pollListeners.forEach((listener: any) => { + if (typeof listener.onPoll === 'function') { + listener.onPoll(); + } + }); + + this.pollingTimeout = setTimeout(() => { + this.poll(interval); + }, interval) + }); + } + + getNextFeed(event) { + const now = Date.now(); + const feedsInSyncPriorityOrder = _.sortBy(this.feedSyncStates, feed => { return feed.lastSync }); + const nextFeed = feedsInSyncPriorityOrder.find(syncState => { + if (!syncState.lastSync) { + return true; + } + const feed = this.eventsById[event.id].feedsById[syncState.id]; + if ((now - syncState.lastSync) > (feed.updateFrequencySeconds * 1000)) { + return true; + } + }) || {}; + return this.eventsById[event.id].feedsById[nextFeed.id]; + } + + getFeedFetchDelay(event) { + const now = Date.now(); + const delays = this.feedSyncStates.map(syncState => { + const feed = this.eventsById[event.id].feedsById[syncState.id] + if (!syncState.lastSync) { + return 0; + } + const elapsed = now - syncState.lastSync; + const frequencyMillis = feed.updateFrequencySeconds * 1000; + return frequencyMillis - elapsed; + }); + + return delays.length > 0 ? Math.min(...delays) : 60 * 1000 + } + + pollFeeds() { + const event = this.filterService.getEvent(); + const feed = this.getNextFeed(event); + const scheduleNextPoll = () => { + const delayMillis = this.getFeedFetchDelay(event); + clearTimeout(this.feedPollTimeout) + this.feedPollTimeout = setTimeout(() => { + this.pollFeeds() + }, delayMillis) + }; + + if (!feed) { + return scheduleNextPoll(); + } + + this.feedService.fetchFeedItems(event, feed).pipe( + tap((content: any) => { + // TODO is this really created or updated, maybe just create as empty when, + // feeds come back + this.feedItemsChanged({ + updated: [{ feed, items: content.items.features }] + }, event); + }), + catchError((err) => { + // TODO: add error handling + console.error(`error fetching feed content for feed ${feed.id}, ${feed.title}`, err); + return of(); + }), + finalize(() => { + const state = this.feedSyncStates.find(f => f.id === feed.id); + state.lastSync = Date.now(); + scheduleNextPoll(); + }) + ).subscribe(); + } +} \ No newline at end of file diff --git a/web-app/src/app/event/polling.service.spec.ts b/web-app/src/app/event/polling.service.spec.ts new file mode 100644 index 000000000..d999e47d2 --- /dev/null +++ b/web-app/src/app/event/polling.service.spec.ts @@ -0,0 +1,20 @@ +import { TestBed } from '@angular/core/testing'; +import { PollingService } from './polling.service'; + +describe('Polling Service Tests', () => { + + beforeEach(() => { + TestBed.configureTestingModule({ + providers: [PollingService], + imports: [] + }); + }); + + afterEach(() => { + }); + + it('should be created', () => { + const service: PollingService = TestBed.inject(PollingService); + expect(service).toBeTruthy(); + }); +}); \ No newline at end of file diff --git a/web-app/src/app/event/polling.service.ts b/web-app/src/app/event/polling.service.ts new file mode 100644 index 000000000..fc94a1ac3 --- /dev/null +++ b/web-app/src/app/event/polling.service.ts @@ -0,0 +1,49 @@ +import { Injectable } from "@angular/core"; +import { LocalStorageService } from "../http/local-storage.service"; +import * as _ from 'underscore'; + +@Injectable({ + providedIn: 'root' +}) +export class PollingService { + + private listeners = []; + private pollingInterval: any + + constructor( + private localStorageService: LocalStorageService + ) { + this.pollingInterval = parseInt(localStorageService.getPollingInterval()) + + if (!this.pollingInterval || parseInt(this.pollingInterval) === 0 || Number.isNaN(parseInt(this.pollingInterval))) { + this.pollingInterval = 30000; + } + } + + addListener(listener: any) { + this.listeners.push(listener); + + if (_.isFunction(listener.onPollingIntervalChanged)) { + listener.onPollingIntervalChanged(this.pollingInterval); + } + } + + removeListener(listener: any) { + this.listeners = _.reject(this.listeners, function (l: any) { return listener === l; }); + } + + setPollingInterval(interval: number) { + this.pollingInterval = interval; + this.localStorageService.setPollingInterval(interval); + _.each(this.listeners, function (listener: any) { + if (_.isFunction(listener.onPollingIntervalChanged)) { + listener.onPollingIntervalChanged(interval); + } + }); + } + + getPollingInterval() { + return this.pollingInterval; + } + +} \ No newline at end of file diff --git a/web-app/src/app/export/empty-state/no-exports.component.spec.ts b/web-app/src/app/export/empty-state/no-exports.component.spec.ts index 89d934f13..849002494 100644 --- a/web-app/src/app/export/empty-state/no-exports.component.spec.ts +++ b/web-app/src/app/export/empty-state/no-exports.component.spec.ts @@ -1,4 +1,4 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; import { NoExportsComponent } from './no-exports.component'; import { MatDialogModule } from '@angular/material/dialog'; @@ -7,7 +7,7 @@ describe('NoExportsComponent', () => { let component: NoExportsComponent; let fixture: ComponentFixture; - beforeEach(async(() => { + beforeEach(waitForAsync(() => { TestBed.configureTestingModule({ imports: [MatDialogModule], declarations: [NoExportsComponent] @@ -23,4 +23,4 @@ describe('NoExportsComponent', () => { it('should create', () => { expect(component).toBeDefined(); }); -}); \ No newline at end of file +}); diff --git a/web-app/src/app/export/export-data/export-data.component.scss b/web-app/src/app/export/export-data/export-data.component.scss index 49132eb00..a339e6ad9 100644 --- a/web-app/src/app/export/export-data/export-data.component.scss +++ b/web-app/src/app/export/export-data/export-data.component.scss @@ -1,4 +1,3 @@ -@import '~@angular/material/theming'; @import "variables.scss"; :host ::ng-deep label { diff --git a/web-app/src/app/export/export-data/export-data.component.spec.ts b/web-app/src/app/export/export-data/export-data.component.spec.ts index e8152a0c4..d13a6a584 100644 --- a/web-app/src/app/export/export-data/export-data.component.spec.ts +++ b/web-app/src/app/export/export-data/export-data.component.spec.ts @@ -1,5 +1,5 @@ import { HttpClientTestingModule } from "@angular/common/http/testing"; -import { async, ComponentFixture, TestBed } from "@angular/core/testing"; +import { ComponentFixture, TestBed, waitForAsync } from "@angular/core/testing"; import { FormsModule } from "@angular/forms"; import { MatCardModule } from "@angular/material/card"; import { MatCheckboxModule } from "@angular/material/checkbox"; @@ -20,10 +20,10 @@ import { MatSortModule } from "@angular/material/sort"; import { MatTableModule } from "@angular/material/table"; import { NoopAnimationsModule } from "@angular/platform-browser/animations"; import { Observable, of, Subject } from "rxjs"; -import { FilterService } from "src/app/upgrade/ajs-upgraded-providers"; import { ExportDialogComponent } from "../export-dialog.component"; import { ExportRequest, ExportResponse, Export, ExportService } from "../export.service"; import { ExportDataComponent } from "./export-data.component"; +import { FilterService } from "src/app/filter/filter.service"; class MockExportService { getExports(): Observable { @@ -84,29 +84,29 @@ class MockExportService { class MockSnackbarRef { private readonly _afterDismissed = new Subject() - + afterDismissed(): Observable { return this._afterDismissed } - + dismiss(): void { this._afterDismissed.next({ dismissedByAction: false }) this._afterDismissed.complete() } - + dismissWithAction(): void { this._afterDismissed.next({ dismissedByAction: true }) this._afterDismissed.complete() } } - + class MockSnackbar { private snackbarRef = new MockSnackbarRef() - + get _openedSnackBarRef(): any { return this.snackbarRef } - + open(): any { return this.snackbarRef } @@ -116,7 +116,7 @@ describe('ExportDataComponent', () => { let component: ExportDataComponent; let fixture: ComponentFixture; - beforeEach(async(() => { + beforeEach(waitForAsync(() => { const mockFilterService = { getEvent: (): any => { return { id: 1 } } }; TestBed.configureTestingModule({ @@ -193,4 +193,4 @@ describe('ExportDataComponent', () => { component.changeFormat(goodFormat); expect(component.exportFormat).toEqual(goodFormat); }); -}); \ No newline at end of file +}); diff --git a/web-app/src/app/export/export-data/export-data.component.ts b/web-app/src/app/export/export-data/export-data.component.ts index 5d11bb1e0..75e7992e6 100644 --- a/web-app/src/app/export/export-data/export-data.component.ts +++ b/web-app/src/app/export/export-data/export-data.component.ts @@ -1,10 +1,10 @@ import { Component, OnInit, Inject, QueryList, ViewChildren, ElementRef, EventEmitter, Output } from '@angular/core'; import { MatSnackBar } from '@angular/material/snack-bar'; import { ExportService, ExportResponse, ExportRequest } from '../export.service'; -import { FilterService } from '../../upgrade/ajs-upgraded-providers'; import * as moment from 'moment' import { first } from 'rxjs/operators'; import { trigger, transition, style, animate, state } from '@angular/animations'; +import { FilterService } from 'src/app/filter/filter.service'; export interface ExportTimeOption { all?: boolean, @@ -86,7 +86,7 @@ export class ExportDataComponent implements OnInit { constructor( public snackBar: MatSnackBar, @Inject(ExportService) public exportService: ExportService, - @Inject(FilterService) private filterService: any) { + private filterService: FilterService) { this.defaultStartDate = moment().startOf('day').toDate() this.defaultEndDate = moment().endOf('day').toDate() diff --git a/web-app/src/app/export/export-dialog.component.scss b/web-app/src/app/export/export-dialog.component.scss index f3c62ffb6..949350ca1 100644 --- a/web-app/src/app/export/export-dialog.component.scss +++ b/web-app/src/app/export/export-dialog.component.scss @@ -1,4 +1,3 @@ -@import '~@angular/material/theming'; @import "variables.scss"; :host ::ng-deep label { diff --git a/web-app/src/app/export/export-dialog.component.spec.ts b/web-app/src/app/export/export-dialog.component.spec.ts index c6f3943bf..cb62ad9a3 100644 --- a/web-app/src/app/export/export-dialog.component.spec.ts +++ b/web-app/src/app/export/export-dialog.component.spec.ts @@ -1,4 +1,4 @@ -import { async, ComponentFixture, fakeAsync, TestBed } from '@angular/core/testing'; +import { ComponentFixture, fakeAsync, TestBed, waitForAsync } from '@angular/core/testing'; import { Observable, of, Subject } from 'rxjs'; import { ExportDialogComponent } from './export-dialog.component'; import { MatCardModule } from '@angular/material/card'; @@ -18,12 +18,13 @@ import { MatSelectModule } from '@angular/material/select'; import { MatSnackBar, MatSnackBarDismiss, MatSnackBarModule } from '@angular/material/snack-bar'; import { MatSortModule } from '@angular/material/sort'; import { MatTableModule } from '@angular/material/table'; -import { LocalStorageService, FilterService } from '../upgrade/ajs-upgraded-providers'; import { ExportService, Export, ExportRequest, ExportResponse } from './export.service'; import { HttpClientTestingModule } from '@angular/common/http/testing'; import { NoopAnimationsModule } from '@angular/platform-browser/animations'; import { FormsModule } from '@angular/forms'; import { MatDialogModule, MatDialogRef } from '@angular/material/dialog'; +import { LocalStorageService } from '../http/local-storage.service'; +import { FilterService } from '../filter/filter.service'; class MockExportService { getExports(): Observable { @@ -117,7 +118,7 @@ describe('ExportDialogComponent', () => { let component: ExportDialogComponent; let fixture: ComponentFixture; - beforeEach(async(() => { + beforeEach(waitForAsync(() => { const mockLocalStorageService = { getToken: (): string => '1' }; const mockFilterService = { getEvent: (): any => { return { id: 1 } } }; const mockDialogRef = { close: (): void => { } }; @@ -253,4 +254,4 @@ describe('ExportDialogComponent', () => { expect(deleteSpy).toHaveBeenCalledTimes(0) expect(component.dataSource.data.length).toBe(1) })); -}); \ No newline at end of file +}); diff --git a/web-app/src/app/export/export-dialog.component.ts b/web-app/src/app/export/export-dialog.component.ts index b7f173e92..9a5eee543 100644 --- a/web-app/src/app/export/export-dialog.component.ts +++ b/web-app/src/app/export/export-dialog.component.ts @@ -4,9 +4,9 @@ import { MatSort } from '@angular/material/sort'; import { MatTable, MatTableDataSource } from '@angular/material/table'; import { MatSnackBar } from '@angular/material/snack-bar'; import { ExportService, Export, ExportResponse } from './export.service'; -import { LocalStorageService } from '../upgrade/ajs-upgraded-providers'; import { animate, state, style, transition, trigger } from '@angular/animations'; import { Observable, Subscription, timer } from 'rxjs'; +import { LocalStorageService } from '../http/local-storage.service'; @Component({ selector: 'export-dialog', @@ -58,9 +58,8 @@ export class ExportDialogComponent implements OnInit, OnDestroy { constructor(public dialogRef: MatDialogRef, public snackBar: MatSnackBar, @Inject(ExportService) public exportService: ExportService, - @Inject(LocalStorageService) public storageService: any) { - - this.token = this.storageService.getToken(); + localStorageService: LocalStorageService) { + this.token = localStorageService.getToken(); } ngOnInit(): void { @@ -128,7 +127,6 @@ export class ExportDialogComponent implements OnInit, OnDestroy { }) ref.afterDismissed().subscribe(event => { - console.log('CODE = snackbar dismissed', event) if (event.dismissedByAction) { exports.splice(index, 0, exp); this.dataSource.data = exports diff --git a/web-app/src/app/export/export.component.spec.ts b/web-app/src/app/export/export.component.spec.ts index 658fbebc8..abf29d2ac 100644 --- a/web-app/src/app/export/export.component.spec.ts +++ b/web-app/src/app/export/export.component.spec.ts @@ -1,4 +1,4 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; import { ExportComponent } from './export.component'; import { MatDialogModule } from '@angular/material/dialog'; @@ -7,7 +7,7 @@ describe('ExportComponent', () => { let component: ExportComponent; let fixture: ComponentFixture; - beforeEach(async(() => { + beforeEach(waitForAsync(() => { TestBed.configureTestingModule({ imports: [MatDialogModule], declarations: [ExportComponent] @@ -23,4 +23,4 @@ describe('ExportComponent', () => { it('should create', () => { expect(component).toBeDefined(); }); -}); \ No newline at end of file +}); diff --git a/web-app/src/app/feed-panel/feed-panel-tab.component.spec.ts b/web-app/src/app/feed-panel/feed-panel-tab.component.spec.ts index baea7e493..f9940afdc 100644 --- a/web-app/src/app/feed-panel/feed-panel-tab.component.spec.ts +++ b/web-app/src/app/feed-panel/feed-panel-tab.component.spec.ts @@ -1,4 +1,4 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; import { MatIconModule } from '@angular/material/icon'; import { FeedPanelTabComponent } from './feed-panel-tab.component'; @@ -7,7 +7,7 @@ describe('FeedTabComponent', () => { let component: FeedPanelTabComponent; let fixture: ComponentFixture; - beforeEach(async(() => { + beforeEach(waitForAsync(() => { TestBed.configureTestingModule({ imports: [ MatIconModule diff --git a/web-app/src/app/feed-panel/feed-panel.component.html b/web-app/src/app/feed-panel/feed-panel.component.html index 92d9ab47f..c9307b7cf 100644 --- a/web-app/src/app/feed-panel/feed-panel.component.html +++ b/web-app/src/app/feed-panel/feed-panel.component.html @@ -5,26 +5,14 @@
- - + - - + + + - - + - - - - - - - diff --git a/web-app/src/app/feed-panel/feed-panel.component.scss b/web-app/src/app/feed-panel/feed-panel.component.scss index e7794562f..32be23384 100644 --- a/web-app/src/app/feed-panel/feed-panel.component.scss +++ b/web-app/src/app/feed-panel/feed-panel.component.scss @@ -32,4 +32,27 @@ observation-feed { user-feed { display: block; height: 100%; +} + +.feeds-nav { + position: absolute; + background-color: white; + border-right: 1px solid rgba(0, 0, 0, 0.20); + width: 57px; + height: 100%; + z-index: 10; + overflow-y: auto; + -webkit-transition: width .3s linear; + transition: width .3s linear; + -webkit-transform: translateZ(0) scale(1, 1); +} + +.feeds-nav:hover { + width: 240px; +} + +.feeds-content { + position: relative; + margin-left: 56px; + width: 100%; } \ No newline at end of file diff --git a/web-app/src/app/feed-panel/feed-panel.component.spec.ts b/web-app/src/app/feed-panel/feed-panel.component.spec.ts index ee5cbb0b8..ef6ab109b 100644 --- a/web-app/src/app/feed-panel/feed-panel.component.spec.ts +++ b/web-app/src/app/feed-panel/feed-panel.component.spec.ts @@ -1,13 +1,14 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; import { MatDialogModule } from '@angular/material/dialog'; import { FeedPanelComponent } from './feed-panel.component'; +/* TODO tests MUST include at least 1 test describe('FeedPanelComponent', () => { let component: FeedPanelComponent; let fixture: ComponentFixture; - beforeEach(async(() => { + beforeEach(waitForAsync(() => { TestBed.configureTestingModule({ declarations: [FeedPanelComponent], imports: [MatDialogModule] @@ -25,3 +26,4 @@ describe('FeedPanelComponent', () => { // expect(component).toBeTruthy(); // }); }); +*/ diff --git a/web-app/src/app/feed-panel/feed-panel.component.ts b/web-app/src/app/feed-panel/feed-panel.component.ts index e881b7c0a..314d05602 100644 --- a/web-app/src/app/feed-panel/feed-panel.component.ts +++ b/web-app/src/app/feed-panel/feed-panel.component.ts @@ -1,10 +1,14 @@ import { animate, style, transition, trigger } from '@angular/animations'; -import { Component, EventEmitter, Inject, Input, OnChanges, OnInit, Output, SimpleChanges, TemplateRef, ViewChild } from '@angular/core'; +import { Component, EventEmitter, Input, OnChanges, OnInit, Output, SimpleChanges, TemplateRef, ViewChild } from '@angular/core'; import { MatDialog } from '@angular/material/dialog'; import { MatTabGroup } from '@angular/material/tabs'; import * as moment from 'moment'; -import { EventService, FilterService, MapService, UserService } from '../upgrade/ajs-upgraded-providers'; import { FeedAction, FeedPanelService } from './feed-panel.service'; +import { MapService } from '../map/map.service'; +import { UserService } from '../user/user.service'; +import { FilterService } from '../filter/filter.service'; +import { EventService } from '../event/event.service'; +import { ContactDialogComponent } from '../contact/contact-dialog.component'; import { FeedService } from '@ngageoint/mage.web-core-lib/feed'; @Component({ @@ -69,16 +73,16 @@ export class FeedPanelComponent implements OnInit, OnChanges { public dialog: MatDialog, private feedService: FeedService, private feedPanelService: FeedPanelService, - @Inject(MapService) private mapService: any, - @Inject(UserService) private userService: any, - @Inject(FilterService) private filterService: any, - @Inject(EventService) private eventService: any) { } + private mapService: MapService, + private userService: UserService, + private filterService: FilterService, + private eventService: EventService) { } ngOnInit(): void { this.currentTab = this.tabs[0] this.eventService.addObservationsChangedListener(this) - this.feedService.feeds.subscribe(feeds => this.onFeedsChanged(feeds)); + this.feedService.feeds$.subscribe(feeds => this.onFeedsChanged(feeds)); this.feedPanelService.item$.subscribe(event => this.onFeedItemEvent(event)); this.feedPanelService.viewUser$.subscribe(event => { @@ -186,13 +190,17 @@ export class FeedPanelComponent implements OnInit, OnChanges { createNewObservation(location: any): void { const event = this.filterService.getEvent() if (!this.eventService.isUserInEvent(this.userService.myself, event)) { - this.info = { - statusTitle: this.statusTitle, - statusMessage: this.statusMessage, - id: this.userService.myself.username - }; - this.contactOpen = { opened: true }; - + this.dialog.open(ContactDialogComponent, { + width: '500px', + data: { + info: { + statusTitle: this.statusTitle, + statusMessage: this.statusMessage, + id: this.userService.myself.username + } + } + }) + return } diff --git a/web-app/src/app/feed/feed-item/feed-item-map/feed-item-map-popup.component.spec.ts b/web-app/src/app/feed/feed-item/feed-item-map/feed-item-map-popup.component.spec.ts index d06a8fce8..125affd79 100644 --- a/web-app/src/app/feed/feed-item/feed-item-map/feed-item-map-popup.component.spec.ts +++ b/web-app/src/app/feed/feed-item/feed-item-map/feed-item-map-popup.component.spec.ts @@ -1,4 +1,4 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; import { MatIconModule } from '@angular/material/icon'; import { MatListModule } from '@angular/material/list'; import { MomentModule } from 'src/app/moment/moment.module'; @@ -9,7 +9,7 @@ describe('FeedItemMapPopupComponent', () => { let component: FeedItemMapPopupComponent; let fixture: ComponentFixture; - beforeEach(async(() => { + beforeEach(waitForAsync(() => { TestBed.configureTestingModule({ imports: [ MatIconModule, diff --git a/web-app/src/app/feed/feed-item/feed-item-summary/feed-item-summary.component.spec.ts b/web-app/src/app/feed/feed-item/feed-item-summary/feed-item-summary.component.spec.ts index c1722f2a4..5b285ce89 100644 --- a/web-app/src/app/feed/feed-item/feed-item-summary/feed-item-summary.component.spec.ts +++ b/web-app/src/app/feed/feed-item/feed-item-summary/feed-item-summary.component.spec.ts @@ -1,16 +1,16 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; import { MatIconModule } from '@angular/material/icon'; import { MatListModule } from '@angular/material/list'; import { MomentModule } from 'src/app/moment/moment.module'; -import { MapService } from 'src/app/upgrade/ajs-upgraded-providers'; import { FeedItemSummaryComponent } from './feed-item-summary.component'; +import { MapService } from 'src/app/map/map.service'; describe('FeedItemSummaryComponent', () => { let component: FeedItemSummaryComponent; let fixture: ComponentFixture; - beforeEach(async(() => { + beforeEach(waitForAsync(() => { TestBed.configureTestingModule({ providers: [ { provide: MapService, useValue: {} } diff --git a/web-app/src/app/feed/feed-item/feed-item-summary/feed-item-summary.component.ts b/web-app/src/app/feed/feed-item/feed-item-summary/feed-item-summary.component.ts index 8b73f19e3..6dd8a5ddd 100644 --- a/web-app/src/app/feed/feed-item/feed-item-summary/feed-item-summary.component.ts +++ b/web-app/src/app/feed/feed-item/feed-item-summary/feed-item-summary.component.ts @@ -1,9 +1,9 @@ -import { Component, Input, Inject, OnChanges, SimpleChanges } from '@angular/core'; +import { Component, Input, OnChanges, SimpleChanges } from '@angular/core'; import { Feed } from '@ngageoint/mage.web-core-lib/feed'; -import { MapService } from '../../../upgrade/ajs-upgraded-providers'; import { Feature } from 'geojson'; import { FeedPanelService } from '../../../feed-panel/feed-panel.service'; import { contentPathOfIcon } from '@ngageoint/mage.web-core-lib/static-icon' +import { MapService } from '../../../map/map.service'; @Component({ selector: 'feed-item-summary', @@ -20,7 +20,7 @@ export class FeedItemSummaryComponent implements OnChanges { secondary: string; iconUrl?: string; - constructor(private feedPanelService: FeedPanelService, @Inject(MapService) private mapService: any) { } + constructor(private feedPanelService: FeedPanelService, private mapService: MapService) { } ngOnChanges(_changes: SimpleChanges): void { if (!this.feed || !this.item.properties) return; diff --git a/web-app/src/app/feed/feed-item/feed-item.component.html b/web-app/src/app/feed/feed-item/feed-item.component.html index 99be7017c..7a2de6114 100644 --- a/web-app/src/app/feed/feed-item/feed-item.component.html +++ b/web-app/src/app/feed/feed-item/feed-item.component.html @@ -1,13 +1,13 @@ - - - {{feed?.title}} + {{feed?.title}} -
- +
+
{{date}}
@@ -26,7 +26,10 @@ {{item?.geometry|geometry:5}}
- + + + +
Properties
@@ -37,4 +40,5 @@
-
\ No newline at end of file +
+ diff --git a/web-app/src/app/feed/feed-item/feed-item.component.scss b/web-app/src/app/feed/feed-item/feed-item.component.scss index 4ad36d275..0104d78f8 100644 --- a/web-app/src/app/feed/feed-item/feed-item.component.scss +++ b/web-app/src/app/feed/feed-item/feed-item.component.scss @@ -1,7 +1,29 @@ +@use '@angular/material' as mat; +@import "variables.scss"; + mat-toolbar { - position: sticky; - top: 0; - z-index: 1; + background-color: white; +} + +.title { + flex: 1 1 auto; + overflow: hidden; + text-overflow: ellipsis; + color: mat.get-color-from-palette($app-primary); +} + +.feed-item { + position: absolute; + top: 64px; + bottom: 0; + width: 100%; + overflow-y: auto; +} + +.feed-item__card { + margin: 8px; + position: relative; + overflow: hidden; } .mat-list-base { diff --git a/web-app/src/app/feed/feed-item/feed-item.component.spec.ts b/web-app/src/app/feed/feed-item/feed-item.component.spec.ts index 49d9a3449..64ed69240 100644 --- a/web-app/src/app/feed/feed-item/feed-item.component.spec.ts +++ b/web-app/src/app/feed/feed-item/feed-item.component.spec.ts @@ -1,15 +1,16 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; import { MatCardModule } from '@angular/material/card' import { MatDividerModule } from '@angular/material/divider' import { MatIconModule } from '@angular/material/icon' import { MatToolbarModule } from '@angular/material/toolbar' import { GeometryModule } from 'src/app/geometry/geometry.module'; import { MapClipComponent } from 'src/app/map/clip/clip.component'; -import { LocalStorageService, MapService } from 'src/app/upgrade/ajs-upgraded-providers'; import { FeedItemComponent } from './feed-item.component'; import { Component, ViewChild } from '@angular/core'; import { MomentPipe } from 'src/app/moment/moment.pipe'; import { Feed } from 'core-lib-src/feed'; +import { MapService } from 'src/app/map/map.service'; +import { LocalStorageService } from 'src/app/http/local-storage.service'; class MockLocalStorageService { getTimeFormat(): string { @@ -79,7 +80,7 @@ describe('FeedItemComponent', () => { let hostComponent: TestHostComponent let fixture: ComponentFixture - beforeEach(async(() => { + beforeEach(waitForAsync(() => { TestBed.configureTestingModule({ providers: [{ provide: MapService, diff --git a/web-app/src/app/feed/feed-item/feed-item.component.ts b/web-app/src/app/feed/feed-item/feed-item.component.ts index 202b7fceb..d782c7506 100644 --- a/web-app/src/app/feed/feed-item/feed-item.component.ts +++ b/web-app/src/app/feed/feed-item/feed-item.component.ts @@ -1,8 +1,8 @@ -import { Component, Input, Inject, OnChanges, SimpleChanges } from '@angular/core'; +import { Component, Input, OnChanges, SimpleChanges } from '@angular/core'; import { Feed, StyledFeature } from '@ngageoint/mage.web-core-lib/feed'; import { FeedPanelService } from 'src/app/feed-panel/feed-panel.service'; -import { MomentPipe } from 'src/app/moment/moment.pipe'; -import { MapService } from 'src/app/upgrade/ajs-upgraded-providers'; +import { MapService } from '../../map/map.service'; +import { MomentPipe } from '../../moment/moment.pipe'; @Component({ selector: 'feed-item', @@ -23,7 +23,7 @@ export class FeedItemComponent implements OnChanges { constructor( private feedPanelService: FeedPanelService, private momentPipe: MomentPipe, - @Inject(MapService) private mapService: any + private mapService: MapService ) {} ngOnChanges(_changes: SimpleChanges): void { diff --git a/web-app/src/app/feed/feed-item/feed-item.service.spec.ts b/web-app/src/app/feed/feed-item/feed-item.service.spec.ts index 1b3354607..4a8348146 100644 --- a/web-app/src/app/feed/feed-item/feed-item.service.spec.ts +++ b/web-app/src/app/feed/feed-item/feed-item.service.spec.ts @@ -5,7 +5,7 @@ describe('FeedItemService', () => { beforeEach(() => TestBed.configureTestingModule({})); it('should be created', () => { - const service: FeedItemService = TestBed.get(FeedItemService); + const service: FeedItemService = TestBed.inject(FeedItemService); expect(service).toBeTruthy(); }); -}); \ No newline at end of file +}); diff --git a/web-app/src/app/feed/feed-list/feed-list.component.html b/web-app/src/app/feed/feed-list/feed-list.component.html index 19e1cca4e..dddd408d5 100644 --- a/web-app/src/app/feed/feed-list/feed-list.component.html +++ b/web-app/src/app/feed/feed-list/feed-list.component.html @@ -1,9 +1,9 @@ -
+
- {{feed?.title}} + {{feed?.title}} - + diff --git a/web-app/src/app/feed/feed-list/feed-list.component.scss b/web-app/src/app/feed/feed-list/feed-list.component.scss index e40d2b59a..614ac7291 100644 --- a/web-app/src/app/feed/feed-list/feed-list.component.scss +++ b/web-app/src/app/feed/feed-list/feed-list.component.scss @@ -1,3 +1,16 @@ +@use '@angular/material' as mat; +@import "variables.scss"; + +:host { + position: absolute; + top: 0; + bottom: 0; + right: 0; + left: 0; + overflow-y: auto; + background: #E1E2E1; +} + mat-toolbar { background-color: white; } @@ -6,7 +19,21 @@ mat-toolbar { padding: 0px; } -.feed-list { +.feed { + display: flex; + flex-direction: column; width: 444px; + height: 100%; border-right-width: solid 1px rgba(0, 0, 0, .2); +} + +.feed__title { + color: mat.get-color-from-palette($app-primary); +} + +.items { + background: #E1E2E1; + padding: 8px 0; + flex: 1; + overflow-y: auto; } \ No newline at end of file diff --git a/web-app/src/app/feed/feed-list/feed-list.component.spec.ts b/web-app/src/app/feed/feed-list/feed-list.component.spec.ts index ab7825508..863b82d53 100644 --- a/web-app/src/app/feed/feed-list/feed-list.component.spec.ts +++ b/web-app/src/app/feed/feed-list/feed-list.component.spec.ts @@ -1,5 +1,5 @@ import { HttpClientModule } from '@angular/common/http'; -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; import { MatDividerModule } from '@angular/material/divider'; import { MatListModule } from '@angular/material/list'; import { MatToolbarModule } from '@angular/material/toolbar'; @@ -10,7 +10,7 @@ describe('FeedComponent', () => { let component: FeedListComponent; let fixture: ComponentFixture; - beforeEach(async(() => { + beforeEach(waitForAsync(() => { TestBed.configureTestingModule({ imports: [ MatToolbarModule, diff --git a/web-app/src/app/filter/filter.component.html b/web-app/src/app/filter/filter.component.html new file mode 100644 index 000000000..81d9277fc --- /dev/null +++ b/web-app/src/app/filter/filter.component.html @@ -0,0 +1,69 @@ +
+
+

Filter

+
+
+ + Event + + + +
{{event.name}}
+
{{event.description}}
+
+
+
+
+ +
+ + Teams + + + {{team.name}} + cancel + + + + + + {{team.name}} + + + +
+ +
+ + Time + + + {{choice.label}} + + + + +
+
+ + +
+
+ +
+
+
+
+
+ +
+ + +
+ +
\ No newline at end of file diff --git a/web-app/src/app/filter/filter.component.scss b/web-app/src/app/filter/filter.component.scss new file mode 100644 index 000000000..d6d854d21 --- /dev/null +++ b/web-app/src/app/filter/filter.component.scss @@ -0,0 +1,62 @@ +mat-form-field { + width: 100%; +} + +mat-button { + width: 100%; +} + +.content { + height: 100%; + display: flex; + flex-direction: column; + justify-content: space-between; +} + +.mat-select-panel mat-option.mat-option { + height: 72px; +} + +.mat-option-text.mat-option-text { + display: flex; + flex-direction: column; + line-height: 24px; + margin: 8px 0; + white-space: nowrap; + text-overflow: ellipsis; +} + +.option-text { + overflow: hidden; + text-overflow: ellipsis; +} + +.option-description { + font: 400 12px / 16px Roboto, "Helvetica Neue", sans-serif; + overflow: hidden; + text-overflow: ellipsis; + opacity: .6; +} + +.datetime { + width: 100%; + display: flex; + flex-direction: row; + gap: 8px; +} + +.date { + flex: 1; +} + +.time { + flex: 1; +} + +.timezone { + margin-top: 58px; +} + +.timezone__button { + width: 120px; +} diff --git a/web-app/src/app/filter/filter.component.spec.ts b/web-app/src/app/filter/filter.component.spec.ts new file mode 100644 index 000000000..3960705fa --- /dev/null +++ b/web-app/src/app/filter/filter.component.spec.ts @@ -0,0 +1,37 @@ +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; +import { FilterComponent } from './filter.component'; +import { MatDialogModule, MatDialogRef } from '@angular/material/dialog'; +import { HttpClientTestingModule } from '@angular/common/http/testing'; +import { FormsModule, ReactiveFormsModule } from '@angular/forms'; +import { MatAutocompleteModule } from '@angular/material/autocomplete'; + +describe('FilterComponent', () => { + let component: FilterComponent; + let fixture: ComponentFixture; + + beforeEach(waitForAsync(() => { + TestBed.configureTestingModule({ + declarations: [FilterComponent], + imports: [ + HttpClientTestingModule, + FormsModule, + ReactiveFormsModule, + MatAutocompleteModule, + MatDialogModule + ], + providers: [{ + provide: MatDialogRef, useValue: {} + }] + }).compileComponents(); + })); + + beforeEach(() => { + fixture = TestBed.createComponent(FilterComponent); + component = fixture.componentInstance; + }); + + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/web-app/src/app/filter/filter.component.ts b/web-app/src/app/filter/filter.component.ts new file mode 100644 index 000000000..a0677f543 --- /dev/null +++ b/web-app/src/app/filter/filter.component.ts @@ -0,0 +1,166 @@ +import { Component, OnInit, ViewEncapsulation } from '@angular/core'; +import { MatDialogRef } from '@angular/material/dialog'; +import { FilterService } from './filter.service'; +import { EventService } from '../event/event.service'; +import { FormControl } from '@angular/forms'; +import { Observable, map, startWith } from 'rxjs'; +import { COMMA, ENTER } from '@angular/cdk/keycodes'; +import { MatAutocompleteSelectedEvent } from '@angular/material/autocomplete'; +import { LocalStorageService } from '../http/local-storage.service'; +import * as moment from 'moment' + +@Component({ + selector: 'filter', + templateUrl: './filter.component.html', + styleUrls: ['./filter.component.scss'], + encapsulation: ViewEncapsulation.None +}) +export class FilterComponent implements OnInit { + readonly separatorKeysCodes: number[] = [ENTER, COMMA] + + events: any[] + selectedTeams: any[] = [] + + eventControl = new FormControl() + teamControl = new FormControl() + + filteredEvents: Observable + filteredTeams: Observable + + timeZone: any + localOffset: string + interval: any + defaultStartDate: Date + startDate: Date + defaultEndDate: Date + endDate: Date + intervalChoice: any + intervalChoices: any + + constructor( + public dialogRef: MatDialogRef, + private eventService: EventService, + private filterService: FilterService, + private localStorageService: LocalStorageService + ) { } + + ngOnInit() { + const event = this.filterService.getEvent() + this.eventControl.setValue(event) + const teamIds = this.localStorageService.getTeams() || []; + this.selectedTeams = teamIds.map((teamId: string) => { + return event.teams.find((team: any) => team.id === teamId) + }) + + this.interval = this.filterService.getInterval() + this.timeZone = this.interval.options?.localTime === false ? 'gmt' : 'local' + this.intervalChoice = this.interval.choice + this.intervalChoices = this.filterService.intervalChoices + if (this.interval?.options && this.interval?.options?.startDate) { + this.defaultStartDate = this.interval?.options?.startDate; + } else { + this.defaultStartDate = moment().startOf('day').toDate(); + } + + if (this.interval?.options && this.interval?.options?.endDate) { + this.defaultEndDate = this.interval.options.endDate; + } else { + this.defaultEndDate = moment().endOf('day').toDate() + } + + this.localOffset = moment().format('Z') + + this.eventService.query().subscribe((events: any) => { + this.events = events + + this.filteredEvents = this.eventControl.valueChanges.pipe( + startWith(''), + map(value => typeof value === 'string' ? value : value.name), + map(name => name ? this.filterEvent(name) : this.events.slice()) + ) + + this.filteredTeams = this.teamControl.valueChanges.pipe( + startWith(''), + map(value => typeof value === 'string' ? value : value.name), + map(name => { + if (this.eventControl.value) { + let teams = this.eventControl.value.teams.filter(team => this.selectedTeams.indexOf(team) < 0) + if (name) { + const filterValue = name.toLowerCase() + return teams.filter((team: any) => team.name.toLowerCase().indexOf(filterValue) === 0) + } else { + return teams.slice() + } + } else { + return [] + } + }) + ) + }) + } + + onSelectEvent(): void { + this.selectedTeams = [] + this.teamControl.setValue('') + } + + onDisplayEvent(event: any): string { + return event && event.name ? event.name : ''; + } + + private filterEvent(name: string): any[] { + const filterValue = name.toLowerCase(); + return this.events.filter(option => option.name.toLowerCase().indexOf(filterValue) === 0); + } + + onSelectTeam(event: MatAutocompleteSelectedEvent): void { + this.selectedTeams.push(event.option.value) + this.teamControl.setValue('') + } + + onRemoveTeam(team: any): void { + this.selectedTeams = this.selectedTeams.filter((selectedTeam: any) => team.name !== selectedTeam.name) + this.teamControl.setValue('') + } + + onDisplayTeam(team: any): string { + return team && team.name ? team.name : ''; + } + + onStartDate(date: Date): void { + this.startDate = date; + } + + onTimezone(): void { + this.timeZone = this.timeZone === 'gmt' ? 'local' : 'gmt'; + } + + public compareIntervalChoices = function (option, value): boolean { + return option.label === value.label; + } + + onFilter(): void { + var options: any = {}; + if (this.intervalChoice.filter === 'custom') { + options.startDate = this.startDate + options.endDate = this.endDate + options.localTime = this.timeZone === 'local' + } + + this.filterService.setFilter({ + event: this.eventControl.value, + teams: this.selectedTeams, + timeInterval: { + choice: this.intervalChoice, + options: options + } + }); + + this.dialogRef.close() + } + + onCancel(): void { + this.dialogRef.close(); + } + +} \ No newline at end of file diff --git a/web-app/src/app/filter/filter.service.spec.ts b/web-app/src/app/filter/filter.service.spec.ts new file mode 100644 index 000000000..1d94dcfcf --- /dev/null +++ b/web-app/src/app/filter/filter.service.spec.ts @@ -0,0 +1,21 @@ +import { TestBed } from '@angular/core/testing'; +import { FilterService } from './filter.service'; +import { HttpClientTestingModule } from '@angular/common/http/testing'; + +describe('Filter Service Tests', () => { + + beforeEach(() => { + TestBed.configureTestingModule({ + providers: [FilterService], + imports: [ HttpClientTestingModule ] + }); + }); + + afterEach(() => { + }); + + it('should be created', () => { + const service: FilterService = TestBed.inject(FilterService); + expect(service).toBeTruthy(); + }); +}); \ No newline at end of file diff --git a/web-app/src/app/filter/filter.service.ts b/web-app/src/app/filter/filter.service.ts new file mode 100644 index 000000000..a7c9f388c --- /dev/null +++ b/web-app/src/app/filter/filter.service.ts @@ -0,0 +1,294 @@ +import { Injectable } from "@angular/core"; +import { UserService } from "../user/user.service"; +import { LocalStorageService } from "../http/local-storage.service"; +import * as moment from 'moment'; +import * as _ from 'lodash' + +@Injectable({ + providedIn: 'root' +}) +export class FilterService { + + event: any = null; + teamsById: any = {}; + listeners: any = []; + + interval: any = {}; + filterLocalOffset = moment().format('Z'); + actionFilter: any = {}; + + intervalChoices: any = [{ + filter: 'all', + label: 'All' + }, { + filter: 'today', + label: 'Today (Local GMT ' + this.filterLocalOffset + ')' + }, { + filter: 86400, + label: 'Last 24 Hours' + }, { + filter: 43200, + label: 'Last 12 Hours' + }, { + filter: 21600, + label: 'Last 6 Hours' + }, { + filter: 3600, + label: 'Last Hour' + }, { + filter: 'custom', + label: 'Custom' + }]; + + constructor( + private userService: UserService, + private localStorageService: LocalStorageService + ) { + this.setTimeInterval(localStorageService.getTimeInterval() || { choice: this.intervalChoices[1] }); + this.filterChanged({ intervalChoice: this.interval.choice }); + } + + addListener(listener: any) { + this.listeners.push(listener); + + if (typeof listener.onFilterChanged === 'function') { + listener.onFilterChanged({ + event: this.event, + teams: Object.values(this.teamsById), + timeInterval: { + choice: this.interval.choice + } + }); + } + } + + removeListener(listener: any) { + this.listeners = this.listeners.filter((l: any) => l !== listener ); + } + + setFilter(filter: any) { + var eventChanged = null; + var teamsChanged = null; + var timeIntervalChanged = null; + var actionFilterChanged = null; + + if (filter.teams) { + teamsChanged = this.setTeams(filter.teams); + } + + if (filter.event) { + eventChanged = this.setEvent(filter.event); + + // if they changed the event, and didn't set teams filter + // then reset teams filter to empty array + if (!filter.teams) { + var oldTeamIds = this.localStorageService.getTeams() || []; + var teams = []; + for (var i = 0; i < filter.event.teams.length; i++) { + if (oldTeamIds.indexOf(this.event.teams[i].id) != -1) { + teams.push(this.event.teams[i]); + } + } + teamsChanged = this.setTeams(teams); + } + } + + if (filter.actionFilter) { + actionFilterChanged = filter.actionFilter; + this.actionFilter = filter.actionFilter; + } + + if (filter.timeInterval && this.setTimeInterval(filter.timeInterval)) { + timeIntervalChanged = filter.timeInterval; + } + + var changed: any = {}; + if (eventChanged) changed.event = eventChanged; + if (teamsChanged) changed.teams = teamsChanged; + if (actionFilterChanged) changed.actionFilter = actionFilterChanged; + if (timeIntervalChanged) changed.timeInterval = timeIntervalChanged; + + this.filterChanged(changed); + } + + removeFilters() { + var changed: any = {}; + if (this.event) { + changed.event = { removed: [this.event] }; + this.event = null; + } + + this.filterChanged(changed); + } + + setEvent(newEvent: any) { + if (!newEvent && this.event) { + this.event = null; + + return { + added: [], + removed: [this.event] + }; + } else if (newEvent && !this.event || this.event.id !== newEvent.id) { + var added = [newEvent]; + var removed = this.event ? [this.event] : []; + + this.userService.addRecentEvent(newEvent).subscribe({ + error: e => console.error('Error adding recent event', e) + }); + + this.event = newEvent; + + return { + added: added, + removed: removed + }; + } else { + return null; + } + } + + getEvent() { + return this.event; + } + + setTeams(newTeams: any) { + var added = []; + var removed = []; + + newTeams.forEach((team: any) => { + if (!this.teamsById[team.id]) { + added.push(team); + } + }) + + var newTeamsById = _.keyBy(newTeams, 'id'); + Object.values(this.teamsById).forEach((team: any) => { + if (!newTeamsById[team.id]) { + removed.push(team); + } + }); + + this.teamsById = newTeamsById; + this.localStorageService.setTeams(Object.keys(this.teamsById)); + + return { + added: added, + removed: removed + }; + } + + getTeams() { + return Object.values(this.teamsById); + } + + getTeamsById() { + return this.teamsById; + } + + getIntervalChoice() { + return this.interval.choice; + } + + getInterval() { + return this.interval; + } + + setTimeInterval(newInterval: any) { + if (newInterval.choice.filter === 'custom') { + if (this.interval.startDate && newInterval.options.startDate === this.interval.options.startDate && + this.interval.endDate && newInterval.options.endDate === this.interval.options.endDate) { + return false; + } + } else if (this.interval.choice === newInterval.choice) { + return false; + } + this.localStorageService.setTimeInterval(newInterval); + this.interval = newInterval; + return true; + } + + observationInFilter(o) { + if (!this.isUserInTeamFilter(o.userId)) { + return false; + } + + if (!this.isObservationInTimeFilter(o)) { + return false; + } + + // remove observations that are not part of action filter + if (this.actionFilter === 'important' && !o.important) { + return false; + } + + if (this.actionFilter === 'favorite' && !o.favoriteUserIds.includes(this.userService.myself.id)) { + return false; + } + + if (this.actionFilter === 'attachments' && !o.attachments.length) { + return false; + } + + return true; + } + + isObservationInTimeFilter(o: any) { + var time = this.formatInterval(this.interval); + if (time) { + var properties = o.properties; + if (time.start && time.end) { + if (!moment(properties.timestamp).isBetween(time.start, time.end)) return false; + } else if (time.start) { + if (!moment(properties.timestamp).isAfter(time.start)) return false; + } else if (time.end) { + if (!moment(properties.timestamp).isBefore(time.start)) return false; + } + } + + return true; + } + + isUserInTeamFilter(userId: any) { + if (Object.keys(this.teamsById).length === 0) return true + return Object.values(this.teamsById).some((team: any) => team.userIds.includes(userId)) + } + + formatInterval(interval: any) { + if (!interval) return null; + + var choice = interval.choice; + var options = interval.options; + + if (choice.filter === 'all') { + return null; + } else if (choice.filter === 'today') { + return { start: moment().startOf('day').toISOString() }; + } else if (choice.filter === 'custom') { + var startDate = moment(options.startDate); + if (startDate) { + startDate = options.localTime ? startDate.utc() : startDate; + var start = startDate.utc().toISOString(); + } + + var endDate = moment(options.endDate); + if (endDate) { + endDate = options.localTime ? endDate.utc() : endDate; + var end = endDate.utc().toISOString(); + } + + return { start: start, end: end }; + } else { + return { start: moment().utc().subtract('seconds', parseInt(choice.filter)).toISOString() }; + } + } + + filterChanged(filter: any) { + this.listeners.forEach((listener: any) => { + if (typeof listener.onFilterChanged === 'function') { + listener.onFilterChanged(filter); + } + }); + } + +} diff --git a/web-app/src/app/geometry/geometry.pipe.spec.ts b/web-app/src/app/geometry/geometry.pipe.spec.ts index 9d61cf543..f1cdd0e4b 100644 --- a/web-app/src/app/geometry/geometry.pipe.spec.ts +++ b/web-app/src/app/geometry/geometry.pipe.spec.ts @@ -1,6 +1,7 @@ +import { LocalStorageService } from '../http/local-storage.service'; import { GeometryPipe } from './geometry.pipe'; -class MockLocalStorageService { +class MockLocalStorageService extends LocalStorageService { getCoordinateSystemView(): string { return 'mgrs'; } diff --git a/web-app/src/app/geometry/geometry.pipe.ts b/web-app/src/app/geometry/geometry.pipe.ts index bdc04658f..64c6bbfb9 100644 --- a/web-app/src/app/geometry/geometry.pipe.ts +++ b/web-app/src/app/geometry/geometry.pipe.ts @@ -1,16 +1,16 @@ -import { Inject, Pipe, PipeTransform } from '@angular/core' +import { Pipe, PipeTransform } from '@angular/core' import * as turfCenter from '@turf/center' import { Feature, Point } from 'geojson' import * as mgrs from 'mgrs' -import { LocalStorageService } from '../upgrade/ajs-upgraded-providers' import * as DMS from './geometry-dms' +import { LocalStorageService } from '../http/local-storage.service' @Pipe({ name: 'geometry' }) export class GeometryPipe implements PipeTransform { - constructor(@Inject(LocalStorageService) private localStorageService: any) { } + constructor(private localStorageService: LocalStorageService) { } transform(value: any, format?: number): any { if (value === undefined) return diff --git a/web-app/src/app/geometry/geometry.service.spec.ts b/web-app/src/app/geometry/geometry.service.spec.ts new file mode 100644 index 000000000..dac2c9760 --- /dev/null +++ b/web-app/src/app/geometry/geometry.service.spec.ts @@ -0,0 +1,20 @@ +import { TestBed } from '@angular/core/testing'; +import { GeometryService } from './geometry.service'; + +describe('Geometry Service Tests', () => { + + beforeEach(() => { + TestBed.configureTestingModule({ + providers: [GeometryService], + imports: [] + }); + }); + + afterEach(() => { + }); + + it('should be created', () => { + const service: GeometryService = TestBed.inject(GeometryService); + expect(service).toBeTruthy(); + }); +}); \ No newline at end of file diff --git a/web-app/src/app/geometry/geometry.service.ts b/web-app/src/app/geometry/geometry.service.ts new file mode 100644 index 000000000..f6e1f46e4 --- /dev/null +++ b/web-app/src/app/geometry/geometry.service.ts @@ -0,0 +1,18 @@ +import { Injectable } from "@angular/core"; +import { polygon } from "@turf/helpers"; +import * as turfKinks from '@turf/kinks' + +@Injectable({ + providedIn: 'root' +}) +export class GeometryService { + featureHasIntersections(feature) { + if (!Array.isArray(feature.geometry.coordinates[0]) || feature.geometry.coordinates[0].length < 4) { + return false; + } + + const kinks = turfKinks(polygon(feature.geometry.coordinates)); + + return kinks.features.length !== 0; + } +} \ No newline at end of file diff --git a/web-app/src/app/home/home.component.html b/web-app/src/app/home/home.component.html new file mode 100644 index 000000000..23590f193 --- /dev/null +++ b/web-app/src/app/home/home.component.html @@ -0,0 +1,22 @@ +
+ Hello + + + +
+ + + + + + + + + + + + +
+ + Hello +
\ No newline at end of file diff --git a/web-app/src/app/home/home.component.scss b/web-app/src/app/home/home.component.scss new file mode 100644 index 000000000..8c943fc2d --- /dev/null +++ b/web-app/src/app/home/home.component.scss @@ -0,0 +1,35 @@ +:host { + height: 100%; +} + +.home { + height: 100%; + display: flex; + flex-direction: column; + overflow: hidden; +} + +.home-content { + flex: 1; +} + +mat-sidenav-container { + height: 100%; +} + +.preferences-toolbar { + display: flex; + align-items: end; +} + +.feed { + background: #e1e2e1; + order: 1; + width: 500px; + height: 100%; + display: flex; + flex-direction: row; + position: relative; + transition: margin-left .3s linear; + z-index: 1; +} \ No newline at end of file diff --git a/web-app/src/app/home/home.component.spec.ts b/web-app/src/app/home/home.component.spec.ts new file mode 100644 index 000000000..11e374f60 --- /dev/null +++ b/web-app/src/app/home/home.component.spec.ts @@ -0,0 +1,29 @@ +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; +import { HomeComponent } from './home.component'; +import { HttpClientTestingModule } from '@angular/common/http/testing'; +import { RouterTestingModule } from '@angular/router/testing'; + +describe('Home Component', () => { + let component: HomeComponent; + let fixture: ComponentFixture; + + beforeEach(waitForAsync(() => { + TestBed.configureTestingModule({ + declarations: [HomeComponent], + imports: [ + HttpClientTestingModule, + RouterTestingModule + ] + }).compileComponents(); + })); + + beforeEach(() => { + fixture = TestBed.createComponent(HomeComponent); + component = fixture.componentInstance; + }); + + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/web-app/src/app/home/home.component.ts b/web-app/src/app/home/home.component.ts new file mode 100644 index 000000000..4b1ea3901 --- /dev/null +++ b/web-app/src/app/home/home.component.ts @@ -0,0 +1,101 @@ +import { Component, OnDestroy, OnInit, ViewChild } from '@angular/core'; +import { MapService } from '../map/map.service'; +import { FilterService } from '../filter/filter.service'; +import { MatSidenav } from '@angular/material/sidenav'; +import { LocationService } from '../user/location/location.service'; +import { ActivatedRoute } from '@angular/router'; +import { User } from 'core-lib-src/user'; +import { Banners, SettingsService } from '../setttings/settings.service'; +import * as _ from 'underscore'; +import { UserService } from '../user/user.service'; +import { MageEvent } from '@ngageoint/mage.web-core-lib/event'; + +@Component({ + selector: 'home', + templateUrl: './home.component.html', + styleUrls: ['./home.component.scss'] +}) +export class HomeComponent implements OnInit, OnDestroy { + + banners: Banners + map: any + myself: User + event: MageEvent + hideFeed: boolean = false + newObservation: any + + @ViewChild('feed') feed: MatSidenav + + constructor( + private mapService: MapService, + private userService: UserService, + private filterService: FilterService, + private locationService: LocationService, + private settingsService: SettingsService, + private activatedRoute: ActivatedRoute + ) { + this.userService.myself$.subscribe((myself: User) => { + this.myself = myself + }) + } + + ngOnInit(): void { + this.filterService.addListener(this) + this.mapService.addListener(this) + + this.activatedRoute.data.subscribe(({ user }) => { + this.myself = user + }) + + this.settingsService.getBanner().subscribe((banners: Banners) => { + this.banners = banners + }) + } + + ngOnDestroy(): void { + this.filterService.removeListener(this) + this.mapService.removeListener(this) + } + + onMap($event) { + this.map = $event.map + } + + onFilterChanged(filter: any) { + this.event = filter.event?.added?.length ? filter.event.added[0] : null + } + + onAddObservation($event) { + if (!this.feed.opened) { + this.feed.toggle() + } + + this.newObservation = $event + } + + onLocation(location) { + //TODO where should this come from I think I can listen to the map service + const event = this.filterService.getEvent(); + + // TODO create location service to send location + this.locationService.create(event.id, { + eventId: event.id, + geometry: { + type: 'Point', + coordinates: [location.longitude, location.latitude] + }, + properties: { + timestamp: new Date().valueOf(), + accuracy: location.accuracy, + altitude: location.altitude, + altitudeAccuracy: location.altitudeAccuracy, + heading: location.heading, + speed: location.speed + } + }).subscribe({ + error: (response) => { + console.log('Error sending location', response.message) + } + }) + } +} \ No newline at end of file diff --git a/web-app/src/app/home/home.module.ts b/web-app/src/app/home/home.module.ts new file mode 100644 index 000000000..d7fd4cf23 --- /dev/null +++ b/web-app/src/app/home/home.module.ts @@ -0,0 +1,301 @@ +import { NgModule } from '@angular/core'; + +import { FormsModule, ReactiveFormsModule } from '@angular/forms'; + +import { NgxMatSelectSearchModule } from 'ngx-mat-select-search'; +import { ScrollingModule } from '@angular/cdk/scrolling'; +import { DragDropModule } from '@angular/cdk/drag-drop'; + +import { SaturationModule, HueModule, CheckboardModule, AlphaModule } from 'ngx-color'; + +import { MatAutocompleteModule } from '@angular/material/autocomplete'; +import { MatBadgeModule } from '@angular/material/badge'; +import { MatBottomSheetModule } from '@angular/material/bottom-sheet'; +import { MatButtonModule } from '@angular/material/button'; +import { MatButtonToggleModule } from '@angular/material/button-toggle'; +import { MatCardModule } from '@angular/material/card'; +import { MatCheckboxModule } from '@angular/material/checkbox'; +import { MatChipsModule } from '@angular/material/chips'; +import { MatRippleModule } from '@angular/material/core'; +import { MatDatepickerModule } from '@angular/material/datepicker'; +import { MatDialogModule } from '@angular/material/dialog'; +import { MatExpansionModule } from '@angular/material/expansion'; +import { MatFormFieldModule } from '@angular/material/form-field'; +import { MatGridListModule } from '@angular/material/grid-list'; +import { MatIconModule } from '@angular/material/icon'; +import { MatInputModule } from '@angular/material/input'; +import { MatListModule } from '@angular/material/list'; +import { MatPaginatorModule } from '@angular/material/paginator'; +import { MatProgressBarModule } from '@angular/material/progress-bar'; +import { MatProgressSpinnerModule } from '@angular/material/progress-spinner'; +import { MatRadioModule } from '@angular/material/radio'; +import { MatSelectModule } from '@angular/material/select'; +import { MatSidenavModule } from '@angular/material/sidenav'; +import { MatSliderModule } from '@angular/material/slider'; +import { MatSnackBarModule } from '@angular/material/snack-bar'; +import { MatSortModule } from '@angular/material/sort'; +import { MatTableModule } from '@angular/material/table'; +import { MatTabsModule } from '@angular/material/tabs'; +import { MatToolbarModule } from '@angular/material/toolbar'; +import { MatTooltipModule } from '@angular/material/tooltip'; +import { MatSlideToggleModule } from '@angular/material/slide-toggle'; +import { MatStepperModule } from '@angular/material/stepper'; + +import { MatDatetimepickerModule } from '@mat-datetimepicker/core' +import { MatMomentDatetimeModule } from '@mat-datetimepicker/moment' +import { InputMaskModule } from '@ngneat/input-mask' + +import { ZoomComponent } from '../map/controls/zoom.component'; +import { AddObservationComponent } from '../map/controls/add-observation.component'; + +import { LocationComponent } from '../map/controls/location.component'; +import { SearchComponent } from '../map/controls/search.component'; +import { LayersComponent } from '../map/layers/layers.component' +import { LayersControlComponent } from '../map/controls/layers-control.component'; +import { MapComponent } from '../map/map.component'; +import { LayerHeaderComponent } from '../map/layers/layer-header.component'; +import { LayerContentComponent } from '../map/layers/layer-content.component'; +import { ColorPickerComponent } from '../color-picker/color-picker.component'; +import { ExportComponent } from '../export/export.component'; +import { ExportDialogComponent } from '../export/export-dialog.component' + +import { MapClipComponent } from '../map/clip/clip.component'; +import { GeometryModule } from '../geometry/geometry.module'; +import { ObservationDeleteComponent } from '../observation/observation-delete/observation-delete.component'; +import { ObservationListItemComponent } from '../observation/observation-list/observation-list-item.component'; +import { MomentModule } from '../moment/moment.module'; +import { AttachmentComponent } from '../observation/attachment/attachment.component'; +import { FilenamePipe } from '../filename/filename.pipe'; +import { AttachUploadComponent } from '../observation/attachment/attachment-upload/attachment-upload.component'; +import { ObservationViewFormComponent } from '../observation/observation-view/observation-view-form.component'; +import { ObservationViewComponent } from '../observation/observation-view/observation-view.component'; +import { ObservationFavoritesComponent } from '../observation/observation-favorites/observation-favorites.component'; +import { ObservationListComponent } from '../observation/observation-list/observation-list.component'; +import { UserViewComponent } from '../user/user-view/user-view.component'; +import { UserListItemComponent } from '../user/user-list/user-list-item.component'; +import { UserListComponent } from '../user/user-list/user-list.component'; +import { FeedListComponent } from '../feed/feed-list/feed-list.component'; +import { FeedPanelComponent } from '../feed-panel/feed-panel.component'; + +import { + ObservationViewCheckboxComponent, + ObservationViewDateComponent, + ObservationViewGeometryComponent, + ObservationViewMultiselectdropdownComponent, + ObservationViewTextComponent, + ObservationViewTextareaComponent +} from '../observation/observation-view/observation-view'; + +import { + DMSValidatorDirective, + MGRSValidatorDirective, + ObservationEditCheckboxComponent, + ObservationEditDateComponent, + ObservationEditSelectComponent, + ObservationEditEmailComponent, + ObservationEditGeometryComponent, + ObservationEditGeometryFormComponent, + ObservationEditGeometryMapComponent, + ObservationEditMultiselectComponent, + ObservationEditNumberComponent, + ObservationEditRadioComponent, + ObservationEditTextComponent, + ObservationEditTextareaComponent, + ObservationEditFormComponent, + ObservationEditComponent +} from '../observation/observation-edit/observation-edit'; + +import { FeedItemComponent } from '../feed/feed-item/feed-item.component'; +import { FeedItemMapPopupComponent } from '../feed/feed-item/feed-item-map/feed-item-map-popup.component'; +import { FeedItemSummaryModule } from '../feed/feed-item/feed-item-summary/feed-item-summary.module'; +import { FeedPanelTabComponent } from '../feed-panel/feed-panel-tab.component'; +import { ObservationPopupComponent } from '../observation/observation-popup/observation-popup.component'; +import { UserPopupComponent } from '../user/user-popup/user-popup.component'; +import { StaticIconModule } from '@ngageoint/mage.web-core-lib/static-icon' +import { DatetimePickerComponent } from '../datetime-picker/datetime-picker.component'; +import { CommonModule } from '@angular/common'; +import { ObservationOptionsComponent } from '../observation/observation-view/observation-options.component'; +import { ObservationEditFormPickerComponent } from '../observation/observation-edit/observation-edit-form-picker.component'; +import { ObservationEditDiscardComponent } from '../observation/observation-edit/observation-edit-discard/observation-edit-discard.component'; +import { ObservationViewAttachmentComponent } from '../observation/observation-view/observation-view-attachment/observation-view-attachment.component'; +import { ObservationEditAttachmentComponent } from '../observation/observation-edit/observation-edit-attachment/observation-edit-attachment.component'; +import { ObservationEditPasswordComponent } from '../observation/observation-edit/observation-edit-password/observation-edit-password.component'; +import { ObservationViewPasswordComponent } from '../observation/observation-view/observation-view-password/observation-view-password.component'; +import { PasswordPipe } from '../observation/observation-view/observation-view-password/password.pipe'; +import { ContactDialogComponent } from '../contact/contact-dialog.component'; +import { ExportDataComponent } from '../export/export-data/export-data.component'; +import { NoExportsComponent } from '../export/empty-state/no-exports.component'; +import { NavigationComponent } from '../navigation/navigation.component'; +import { FilterComponent } from '../filter/filter.component'; +import { PreferencesComponent } from '../preferences/preferences.component'; +import { PollingIntervalComponent } from '../preferences/polling-interval/polling-interval.component'; +import { TimeFormatComponent } from '../preferences/time-format/time-format.component'; +import { TimeZoneComponent } from '../preferences/time-zone/time-zone.component'; +import { CoordinateSystemComponent } from '../preferences/coordinate-system/coordinate-system.component'; +import { PasswordResetSuccessDialog } from '../user/password/password-reset-success-dialog'; +import { HomeComponent } from '..//home/home.component'; +import { RouterModule, Routes } from '@angular/router'; +import { UserResolver } from '../ingress/user.resolver'; +import { UserAvatarModule } from '../user/user-avatar/user-avatar.module'; +import { IngressModule } from '../ingress/ingress.module'; +import { FilterControlComponent } from '../map/controls/filter.component'; +import { ExportControlComponent } from '../map/controls/export.component'; +import { BannerModule } from '../banner/banner.module'; + +const routes: Routes = [{ + path: '', + component: HomeComponent, + resolve: { + user: UserResolver + } +}]; + +@NgModule({ + declarations: [], + imports: [], + exports: [ + AlphaModule, + CheckboardModule, + CommonModule, + FormsModule, + HueModule, + ReactiveFormsModule, + DragDropModule, + MatAutocompleteModule, + MatBadgeModule, + MatBottomSheetModule, + MatButtonModule, + MatButtonToggleModule, + MatCardModule, + MatCheckboxModule, + MatChipsModule, + MatDatepickerModule, + MatDatetimepickerModule, + MatDialogModule, + MatExpansionModule, + MatFormFieldModule, + MatGridListModule, + MatIconModule, + MatInputModule, + MatMomentDatetimeModule, + MatPaginatorModule, + MatProgressBarModule, + MatProgressSpinnerModule, + MatRadioModule, + MatRippleModule, + MatSelectModule, + MatSidenavModule, + MatSliderModule, + MatSlideToggleModule, + MatSnackBarModule, + MatSortModule, + MatStepperModule, + MatTableModule, + MatTabsModule, + MatToolbarModule, + MatTooltipModule, + MatListModule, + NgxMatSelectSearchModule, + ScrollingModule, + SaturationModule + ] +}) +class AngularModule { } + +@NgModule({ + declarations: [ + AddObservationComponent, + AttachmentComponent, + AttachUploadComponent, + ColorPickerComponent, + ContactDialogComponent, + CoordinateSystemComponent, + DatetimePickerComponent, + DMSValidatorDirective, + ExportComponent, + ExportControlComponent, + ExportDataComponent, + ExportDialogComponent, + FeedItemComponent, + FeedItemMapPopupComponent, + FeedListComponent, + FeedPanelComponent, + FeedPanelTabComponent, + FilenamePipe, + FilterComponent, + FilterControlComponent, + HomeComponent, + LayerContentComponent, + LayerHeaderComponent, + LayersComponent, + LayersControlComponent, + LocationComponent, + MapClipComponent, + MapComponent, + MapComponent, + MGRSValidatorDirective, + NavigationComponent, + NoExportsComponent, + ObservationDeleteComponent, + ObservationEditAttachmentComponent, + ObservationEditCheckboxComponent, + ObservationEditComponent, + ObservationEditDateComponent, + ObservationEditDiscardComponent, + ObservationEditEmailComponent, + ObservationEditFormComponent, + ObservationEditFormPickerComponent, + ObservationEditGeometryComponent, + ObservationEditGeometryFormComponent, + ObservationEditGeometryMapComponent, + ObservationEditMultiselectComponent, + ObservationEditNumberComponent, + ObservationEditPasswordComponent, + ObservationEditRadioComponent, + ObservationEditSelectComponent, + ObservationEditTextareaComponent, + ObservationEditTextComponent, + ObservationFavoritesComponent, + ObservationListComponent, + ObservationListItemComponent, + ObservationOptionsComponent, + ObservationPopupComponent, + ObservationViewAttachmentComponent, + ObservationViewCheckboxComponent, + ObservationViewComponent, + ObservationViewDateComponent, + ObservationViewFormComponent, + ObservationViewGeometryComponent, + ObservationViewMultiselectdropdownComponent, + ObservationViewPasswordComponent, + ObservationViewTextareaComponent, + ObservationViewTextComponent, + PasswordPipe, + PasswordResetSuccessDialog, + PollingIntervalComponent, + PreferencesComponent, + SearchComponent, + TimeFormatComponent, + TimeZoneComponent, + UserListComponent, + UserListItemComponent, + UserPopupComponent, + UserViewComponent, + ZoomComponent, + ], + imports: [ + AngularModule, + BannerModule, + FeedItemSummaryModule, + GeometryModule, + IngressModule, + MomentModule, + StaticIconModule, + UserAvatarModule, + InputMaskModule.forRoot(), + RouterModule.forChild(routes) + ], + exports: [ RouterModule ] +}) +export class HomeModule { +} \ No newline at end of file diff --git a/web-app/src/app/http/local-storage.service.spec.ts b/web-app/src/app/http/local-storage.service.spec.ts new file mode 100644 index 000000000..4940875b9 --- /dev/null +++ b/web-app/src/app/http/local-storage.service.spec.ts @@ -0,0 +1,21 @@ +import { TestBed } from '@angular/core/testing'; +import { LocalStorageService } from './local-storage.service'; +import { HttpClientTestingModule } from '@angular/common/http/testing'; + +describe('Local Storage Service Tests', () => { + + beforeEach(() => { + TestBed.configureTestingModule({ + providers: [LocalStorageService], + imports: [HttpClientTestingModule] + }); + }); + + afterEach(() => { + }); + + it('should be created', () => { + const service: LocalStorageService = TestBed.inject(LocalStorageService); + expect(service).toBeTruthy(); + }); +}); \ No newline at end of file diff --git a/web-app/src/app/http/local-storage.service.ts b/web-app/src/app/http/local-storage.service.ts new file mode 100644 index 000000000..61f4c8c0a --- /dev/null +++ b/web-app/src/app/http/local-storage.service.ts @@ -0,0 +1,157 @@ +import { Injectable } from "@angular/core" + +@Injectable({ + providedIn: 'root' +}) +export class LocalStorageService { + + tokenKey = 'token' + pollingIntervalKey = 'pollingInterval' + timeIntervalKey = 'timeInterval' + teamsKey = 'teams' + mapPositionKey = 'mapPosition' + coordinateSystemViewKey = 'coordinateSystemView' + coordinateSystemEditKey = 'coordinateSystemEdit' + timeZoneViewKey = 'timeZoneView' + timeZoneEditKey = 'timeZoneEdit' + timeFormatKey = 'timeFormat' + + getToken() { + return this.getLocalItem(this.tokenKey) + } + + setToken(token: any) { + return this.setLocalItem(this.tokenKey, token) + } + + removeToken() { + return this.removeLocalItem(this.tokenKey) + } + + setPollingInterval(pollingInterval) { + return this.setLocalItem(this.pollingIntervalKey, pollingInterval) + } + + getPollingInterval() { + return this.getLocalItem(this.pollingIntervalKey) + } + + setTimeInterval(timeInterval: any) { + return this.setLocalItem(this.timeIntervalKey, JSON.stringify(timeInterval)) + } + + getTimeInterval() { + const item = this.getLocalItem(this.timeIntervalKey) + if (item) { + const time = JSON.parse(item) + + if (time && time.options) { + if (time.options.startDate) { + time.options.startDate = new Date(time.options.startDate) + } + if (time.options.endDate) { + time.options.endDate = new Date(time.options.endDate) + } + } + + return time + } else return undefined + } + + getTeams() { + const item = this.getLocalItem(this.teamsKey) + if (item) { + return JSON.parse(item) + } else return undefined + } + + setTeams(teams: any) { + return this.setLocalItem(this.teamsKey, JSON.stringify(teams)) + } + + removeTeams() { + return this.removeLocalItem(this.teamsKey) + } + + setMapPosition(mapPosition: any) { + return this.setLocalItem(this.mapPositionKey, JSON.stringify(mapPosition)) + } + + getMapPosition() { + const item = this.getLocalItem(this.mapPositionKey) + if (item) { + return JSON.parse(item) + } else return undefined + } + + getCoordinateSystemView() { + return this.getLocalItem(this.coordinateSystemViewKey) || 'wgs84' + } + + setCoordinateSystemView(coordinateSystem: any) { + return this.setLocalItem(this.coordinateSystemViewKey, coordinateSystem) + } + + getCoordinateSystemEdit() { + return this.getLocalItem(this.coordinateSystemEditKey) || this.getCoordinateSystemView() + } + + setCoordinateSystemEdit(coordinateSystem: any) { + return this.setLocalItem(this.coordinateSystemEditKey, coordinateSystem) + } + + getTimeZoneView() { + return this.getLocalItem(this.timeZoneViewKey) || 'local' + } + + setTimeZoneView(timeZone: any) { + return this.setLocalItem(this.timeZoneViewKey, timeZone) + } + + getTimeZoneEdit() { + return this.getLocalItem(this.timeZoneEditKey) || this.getTimeZoneView() + } + + setTimeZoneEdit(timeZone: any) { + return this.setLocalItem(this.timeZoneEditKey, timeZone) + } + + getTimeFormat() { + return this.getLocalItem(this.timeFormatKey) || 'absolute' + } + + setTimeFormat(timeFormat: any) { + return this.setLocalItem(this.timeFormatKey, timeFormat) + } + + getLocalItem(key: any) { + try { + if ('localStorage' in window && window['localStorage'] !== null) { + return localStorage.getItem(key) + } + } catch (e) { + return undefined + } + } + + setLocalItem(key: any, value: any) { + try { + if ('localStorage' in window && window.localStorage !== null) { + return localStorage.setItem(key, value) + } + } catch (e) { + return undefined + } + } + + removeLocalItem(key: any) { + try { + if ('localStorage' in window && window.localStorage !== null) { + return localStorage.removeItem(key) + } + } catch (e) { + return false + } + } + +} diff --git a/web-app/src/app/http/token.interceptor.spec.ts b/web-app/src/app/http/token.interceptor.spec.ts new file mode 100644 index 000000000..95d161ab6 --- /dev/null +++ b/web-app/src/app/http/token.interceptor.spec.ts @@ -0,0 +1,25 @@ +import { TestBed } from '@angular/core/testing'; +import { HttpClientTestingModule } from '@angular/common/http/testing'; +import { TokenInterceptorService } from './token.interceptor'; +import { MatDialogModule } from '@angular/material/dialog'; + +describe('Token Interceptor Service', () => { + + beforeEach(() => { + TestBed.configureTestingModule({ + providers: [TokenInterceptorService], + imports: [ + HttpClientTestingModule, + MatDialogModule + ] + }); + }); + + afterEach(() => { + }); + + it('should be created', () => { + const service: TokenInterceptorService = TestBed.inject(TokenInterceptorService); + expect(service).toBeTruthy(); + }); +}); \ No newline at end of file diff --git a/web-app/src/app/http/token.interceptor.ts b/web-app/src/app/http/token.interceptor.ts new file mode 100644 index 000000000..d48782e8d --- /dev/null +++ b/web-app/src/app/http/token.interceptor.ts @@ -0,0 +1,66 @@ +import { Injectable } from '@angular/core'; +import { HttpInterceptor, HttpRequest, HttpHandler, HttpEvent, HttpContextToken, HttpStatusCode, HttpErrorResponse } from '@angular/common/http'; +import { catchError, Observable, Subject, switchMap, throwError } from 'rxjs'; +import { LocalStorageService } from './local-storage.service'; +import { AuthenticationDialogComponent } from '../ingress/authentication/authentication-dialog.component'; +import { MatDialog } from '@angular/material/dialog'; +import { UserService } from '../user/user.service'; + +export const BYPASS_TOKEN = new HttpContextToken(() => false); + +@Injectable({ + providedIn: 'root' +}) +export class TokenInterceptorService implements HttpInterceptor { + isRefreshingToken: boolean = false + tokenSubject: Subject = new Subject() + + constructor( + public dialog: MatDialog, + private userService: UserService, + private localStorageService: LocalStorageService + ) { } + + intercept(req: HttpRequest, next: HttpHandler): Observable> { + const bypassToken = req.context.get(BYPASS_TOKEN) === true + if (bypassToken) { + return next.handle(req); + } + + if (req.url.startsWith('/api/')) { + return next.handle(this.tokenRequest(req)).pipe( + catchError((error) => { + if (error instanceof HttpErrorResponse) { + if (error.status === HttpStatusCode.Unauthorized) { + this.userService.setUser(null) + if (!this.isRefreshingToken) { + this.isRefreshingToken = true + this.dialog.open(AuthenticationDialogComponent, { + width: '600px', + disableClose: true, + autoFocus: false + }).afterClosed().subscribe(() => { + this.isRefreshingToken = false + this.tokenSubject.next() + }) + } + + return this.tokenSubject.pipe( + switchMap(() => next.handle(this.tokenRequest(req))) + ) + } + } + + return throwError(() => error) + }) + ) + } else { + return next.handle(req) + } + } + + tokenRequest(req: HttpRequest): HttpRequest { + const token = this.localStorageService.getToken() + return req.clone({ headers: req.headers.set('Authorization', `Bearer ${token}`) }) + } +} diff --git a/web-app/src/app/ingress/account-status/account-status.component.html b/web-app/src/app/ingress/account-status/account-status.component.html new file mode 100644 index 000000000..a168ebcbf --- /dev/null +++ b/web-app/src/app/ingress/account-status/account-status.component.html @@ -0,0 +1,9 @@ +
+ {{icon}} +
{{title}}
+

{{message}}

+
+ +
+ +
\ No newline at end of file diff --git a/web-app/src/app/ingress/account-status/account-status.component.scss b/web-app/src/app/ingress/account-status/account-status.component.scss new file mode 100644 index 000000000..907ec8fbb --- /dev/null +++ b/web-app/src/app/ingress/account-status/account-status.component.scss @@ -0,0 +1,37 @@ + +.content { + display: flex; + flex-direction: column; + align-items: center; + text-align: center; + width: 500px; +} + +.title { + font: 400 20px / 32px Roboto, "Helvetica Neue", sans-serif; +} + +.icon { + font-size: 96px; + font-variation-settings: 'fill' 0, 'wght' 200, 'grad' 0, 'opsz' 96; + margin-bottom: 32px; +} + +.icon--active { + color: #4CAF50; +} + +.icon-inactive { + color: red; +} + +.actions { + width: 100%; + display: flex; + flex-direction: row; + margin-top: 32px; +} + +.actions__button { + flex: 1 +} \ No newline at end of file diff --git a/web-app/src/app/ingress/account-status/account-status.component.spec.ts b/web-app/src/app/ingress/account-status/account-status.component.spec.ts new file mode 100644 index 000000000..7cf2775cc --- /dev/null +++ b/web-app/src/app/ingress/account-status/account-status.component.spec.ts @@ -0,0 +1,24 @@ +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; +import { AccountStatusComponent } from './account-status.component'; + +describe('Account Status Component', () => { + let component: AccountStatusComponent; + let fixture: ComponentFixture; + + beforeEach(waitForAsync(() => { + TestBed.configureTestingModule({ + declarations: [AccountStatusComponent], + imports: [] + }).compileComponents(); + })); + + beforeEach(() => { + fixture = TestBed.createComponent(AccountStatusComponent); + component = fixture.componentInstance; + }); + + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/web-app/src/app/ingress/account-status/account-status.component.ts b/web-app/src/app/ingress/account-status/account-status.component.ts new file mode 100644 index 000000000..b22cb88f0 --- /dev/null +++ b/web-app/src/app/ingress/account-status/account-status.component.ts @@ -0,0 +1,34 @@ +import { Component, EventEmitter, Input, OnChanges, Output, SimpleChanges } from '@angular/core'; + +@Component({ + selector: 'account-status', + templateUrl: './account-status.component.html', + styleUrls: ['./account-status.component.scss'] +}) +export class AccountStatusComponent implements OnChanges { + @Input() active: boolean + @Output() complete = new EventEmitter() + + icon: string + color: string + title: string + message: string + + ngOnChanges(changes: SimpleChanges): void { + if (changes['active'].currentValue === true) { + this.icon = "check_circle" + this.color = "#4CAF50" + this.title = "Account Created" + this.message = "Your account has been successfully created." + } else if (changes['active'].currentValue === false) { + this.icon = "preliminary" + this.color = "#FFA000" + this.title = "Account Pending" + this.message = "Your account has been successfully created. A Mage administrator will need to activate your account before you can log in." + } + } + + onDone(): void { + this.complete.emit() + } +} \ No newline at end of file diff --git a/web-app/src/app/ingress/authentication/authentication-dialog.component.html b/web-app/src/app/ingress/authentication/authentication-dialog.component.html new file mode 100644 index 000000000..1e60d92aa --- /dev/null +++ b/web-app/src/app/ingress/authentication/authentication-dialog.component.html @@ -0,0 +1,9 @@ +
+

Please signin to continue to Mage

+ +
+
+ +
+
+
diff --git a/web-app/src/app/ingress/authentication/authentication-dialog.component.scss b/web-app/src/app/ingress/authentication/authentication-dialog.component.scss new file mode 100644 index 000000000..bbe48b3e8 --- /dev/null +++ b/web-app/src/app/ingress/authentication/authentication-dialog.component.scss @@ -0,0 +1,4 @@ +.ingress { + width: 100%; + height: 100%; +} \ No newline at end of file diff --git a/web-app/src/app/ingress/authentication/authentication-dialog.component.spec.ts b/web-app/src/app/ingress/authentication/authentication-dialog.component.spec.ts new file mode 100644 index 000000000..99b67b260 --- /dev/null +++ b/web-app/src/app/ingress/authentication/authentication-dialog.component.spec.ts @@ -0,0 +1,30 @@ +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; +import { AuthenticationDialogComponent } from './authentication-dialog.component'; +import { HttpClientTestingModule } from '@angular/common/http/testing'; +import { MatDialogRef } from '@angular/material/dialog'; + +describe('Authentication Dialog', () => { + let component: AuthenticationDialogComponent; + let fixture: ComponentFixture; + + beforeEach(waitForAsync(() => { + TestBed.configureTestingModule({ + declarations: [AuthenticationDialogComponent], + imports: [HttpClientTestingModule], + providers: [{ + provide: MatDialogRef, + useValue: {} + },] + }).compileComponents(); + })); + + beforeEach(() => { + fixture = TestBed.createComponent(AuthenticationDialogComponent); + component = fixture.componentInstance; + }); + + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); \ No newline at end of file diff --git a/web-app/src/app/ingress/authentication/authentication-dialog.component.ts b/web-app/src/app/ingress/authentication/authentication-dialog.component.ts new file mode 100644 index 000000000..cfb2e7f2b --- /dev/null +++ b/web-app/src/app/ingress/authentication/authentication-dialog.component.ts @@ -0,0 +1,28 @@ +import { Component, OnInit } from '@angular/core'; +import { ApiService } from '../../api/api.service'; +import { Api } from '../../api/api.entity'; +import { MatDialogRef } from '@angular/material/dialog'; + +@Component({ + selector: 'authentication-dialog', + templateUrl: 'authentication-dialog.component.html', + styleUrls: ['./authentication-dialog.component.scss'] +}) +export class AuthenticationDialogComponent implements OnInit { + api: Api + + constructor( + private apiService: ApiService, + public dialogRef: MatDialogRef + ) {} + + ngOnInit(): void { + this.apiService.getApi().subscribe((api: Api) => { + this.api = api + }) + } + + onIngress(): void { + this.dialogRef.close() + } +} diff --git a/web-app/src/app/ingress/authentication/authentication.component.html b/web-app/src/app/ingress/authentication/authentication.component.html new file mode 100644 index 000000000..e7d9e26f1 --- /dev/null +++ b/web-app/src/app/ingress/authentication/authentication.component.html @@ -0,0 +1,39 @@ + \ No newline at end of file diff --git a/web-app/src/app/ingress/authentication/authentication.component.scss b/web-app/src/app/ingress/authentication/authentication.component.scss new file mode 100644 index 000000000..47387d55e --- /dev/null +++ b/web-app/src/app/ingress/authentication/authentication.component.scss @@ -0,0 +1,62 @@ +@import "variables.scss"; + +:host { + height: 100%; + width: 100%; +} + +.authentications { + display: flex; + flex-direction: column; + justify-content: start; +} + +.signin-container { + height: 100%; + display: flex; + flex-direction: column; + gap: 48px; +} + +.welcome { + display: flex; + flex-direction: column; + align-items: center; + justify-content: end; + color: $primary; + height: 30vh; +} + +.welcome__title { + margin-bottom: 16px; + font: 400 45px / 48px Roboto, "Helvetica Neue", sans-serif; +} + +.welcome__message { + font: 500 20px / 32px Roboto, "Helvetica Neue", sans-serif +} + +.or { + display: flex; + flex-direction: row; + align-items: center; + gap: 8px; + margin: 36px 0; +} + +.or__text { + opacity: .6; +} + +.or__divider { + flex: 1; + height: 2px; + background-color: rgba(0, 0, 0, .15); + border-radius: 1px; +} + +.strategies { + display: flex; + flex-direction: column; + gap: 16px; +} \ No newline at end of file diff --git a/web-app/src/app/ingress/authentication/authentication.component.spec.ts b/web-app/src/app/ingress/authentication/authentication.component.spec.ts new file mode 100644 index 000000000..b86effadf --- /dev/null +++ b/web-app/src/app/ingress/authentication/authentication.component.spec.ts @@ -0,0 +1,24 @@ +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; +import { AuthenticationComponent } from './authentication.component'; + +describe('AuthenticationComponent', () => { + let component: AuthenticationComponent; + let fixture: ComponentFixture; + + beforeEach(waitForAsync(() => { + TestBed.configureTestingModule({ + declarations: [AuthenticationComponent], + imports: [] + }).compileComponents(); + })); + + beforeEach(() => { + fixture = TestBed.createComponent(AuthenticationComponent); + component = fixture.componentInstance; + }); + + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/web-app/src/app/ingress/authentication/authentication.component.ts b/web-app/src/app/ingress/authentication/authentication.component.ts new file mode 100644 index 000000000..cdfbffddb --- /dev/null +++ b/web-app/src/app/ingress/authentication/authentication.component.ts @@ -0,0 +1,53 @@ +import { Component, EventEmitter, Input, OnChanges, Output, SimpleChanges } from '@angular/core' +import { Api, AuthenticationStrategy } from '../../api/api.entity' +import { User } from 'core-lib-src/user' +import * as _ from 'underscore' + +export interface AuthenticationEvent { + user: User, + authenticationToken: string +} + +@Component({ + selector: 'authentication', + templateUrl: './authentication.component.html', + styleUrls: ['./authentication.component.scss'] +}) +export class AuthenticationComponent implements OnChanges { + @Input() api: Api + @Input() landing: boolean = false + + @Output() signup = new EventEmitter() + @Output() authenticated = new EventEmitter<{ user: User, token: string}>() + + strategy: any + thirdPartyStrategies: any + localAuthenticationStrategy: any + + ngOnChanges(changes: SimpleChanges): void { + if (changes.api) { + this.api = changes.api.currentValue + this.localAuthenticationStrategy = this.api?.authenticationStrategies['local'] + if (this.localAuthenticationStrategy) { + this.localAuthenticationStrategy.name = 'local' + } + + this.thirdPartyStrategies = _.map(_.omit(this.api?.authenticationStrategies, this.localStrategyFilter), function (strategy: AuthenticationStrategy, name: string) { + strategy.name = name + return strategy + }) + } + } + + localStrategyFilter(_strategy: AuthenticationStrategy, name: string) { + return name === 'local' + } + + signin($event: { user: User, token: string }) { + this.authenticated.emit($event) + } + + onSignup(): void { + this.signup.emit() + } +} diff --git a/web-app/src/app/ingress/authentication/button/authentication-button.component.html b/web-app/src/app/ingress/authentication/button/authentication-button.component.html new file mode 100644 index 000000000..47d3c2631 --- /dev/null +++ b/web-app/src/app/ingress/authentication/button/authentication-button.component.html @@ -0,0 +1,9 @@ + \ No newline at end of file diff --git a/web-app/src/app/ingress/authentication/button/authentication-button.component.scss b/web-app/src/app/ingress/authentication/button/authentication-button.component.scss new file mode 100644 index 000000000..25fc62606 --- /dev/null +++ b/web-app/src/app/ingress/authentication/button/authentication-button.component.scss @@ -0,0 +1,43 @@ +.authentication-button { + width: 100%; +} + +.authentication-button-container { + display: flex; + flex-direction: row; + gap: 8px; + margin: 0 -16px; +} + +.authentication-button__icon { + display: flex; + align-items: center; + justify-content: center; + margin: 2px; + width: 36px; + border-radius: 2px; + background-color: white; +} + +.authentication-button__image { + display: flex; + align-items: center; + justify-content: center; + margin: 2px; + height: 28px; + border-radius: 2px; + background-color: white; +} + +.authentication-button__text { + flex: 1; + width: 250px; + white-space: nowrap; + overflow: hidden; + text-overflow: ellipsis; +} + +.spacer { + margin: 2px; + width: 36px; +} \ No newline at end of file diff --git a/web-app/src/app/ingress/authentication/button/authentication-button.component.spec.ts b/web-app/src/app/ingress/authentication/button/authentication-button.component.spec.ts new file mode 100644 index 000000000..55dd2b2cd --- /dev/null +++ b/web-app/src/app/ingress/authentication/button/authentication-button.component.spec.ts @@ -0,0 +1,24 @@ +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; +import { AuthenticationButtonComponent } from './authentication-button.component'; + +describe('Authentication Button Component', () => { + let component: AuthenticationButtonComponent; + let fixture: ComponentFixture; + + beforeEach(waitForAsync(() => { + TestBed.configureTestingModule({ + declarations: [AuthenticationButtonComponent], + imports: [] + }).compileComponents(); + })); + + beforeEach(() => { + fixture = TestBed.createComponent(AuthenticationButtonComponent); + component = fixture.componentInstance; + }); + + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/web-app/src/app/ingress/authentication/button/authentication-button.component.ts b/web-app/src/app/ingress/authentication/button/authentication-button.component.ts new file mode 100644 index 000000000..0884011b1 --- /dev/null +++ b/web-app/src/app/ingress/authentication/button/authentication-button.component.ts @@ -0,0 +1,19 @@ +import { Component, EventEmitter, Input, Output } from '@angular/core' + +@Component({ + selector: 'authentication-button', + templateUrl: './authentication-button.component.html', + styleUrls: ['./authentication-button.component.scss'] +}) +export class AuthenticationButtonComponent { + @Input() icon: string + @Input() color: string + @Input() text: string + @Input() textColor: string + + @Output() click = new EventEmitter() + + onClick(): void { + this.click.emit() + } +} diff --git a/web-app/src/app/ingress/authentication/idp/idp-authentication.component.html b/web-app/src/app/ingress/authentication/idp/idp-authentication.component.html new file mode 100644 index 000000000..969900bc2 --- /dev/null +++ b/web-app/src/app/ingress/authentication/idp/idp-authentication.component.html @@ -0,0 +1,7 @@ + + \ No newline at end of file diff --git a/web-app/src/app/ingress/authentication/idp/idp-authentication.component.scss b/web-app/src/app/ingress/authentication/idp/idp-authentication.component.scss new file mode 100644 index 000000000..e69de29bb diff --git a/web-app/src/app/ingress/authentication/idp/idp-authentication.component.spec.ts b/web-app/src/app/ingress/authentication/idp/idp-authentication.component.spec.ts new file mode 100644 index 000000000..715469998 --- /dev/null +++ b/web-app/src/app/ingress/authentication/idp/idp-authentication.component.spec.ts @@ -0,0 +1,25 @@ +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; +import { IdpAuthenticationComponent } from './idp-authentication.component'; +import { HttpClientTestingModule } from '@angular/common/http/testing'; + +describe('Idp Authentication Component', () => { + let component: IdpAuthenticationComponent; + let fixture: ComponentFixture; + + beforeEach(waitForAsync(() => { + TestBed.configureTestingModule({ + declarations: [IdpAuthenticationComponent], + imports: [HttpClientTestingModule] + }).compileComponents(); + })); + + beforeEach(() => { + fixture = TestBed.createComponent(IdpAuthenticationComponent); + component = fixture.componentInstance; + }); + + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/web-app/src/app/ingress/authentication/idp/idp-authentication.component.ts b/web-app/src/app/ingress/authentication/idp/idp-authentication.component.ts new file mode 100644 index 000000000..3aa15252a --- /dev/null +++ b/web-app/src/app/ingress/authentication/idp/idp-authentication.component.ts @@ -0,0 +1,50 @@ +import { Component, EventEmitter, Input, Output } from '@angular/core'; +import { AuthenticationStrategy } from '../../../api/api.entity'; +import { UserService } from '../../../user/user.service'; +@Component({ + selector: 'idp-authentication', + templateUrl: './idp-authentication.component.html', + styleUrls: ['./idp-authentication.component.scss'] +}) +export class IdpAuthenticationComponent { + @Input() strategy: AuthenticationStrategy + @Output() authenticated = new EventEmitter() + + error: { + title: string, + message: string + } + + constructor( + private userService: UserService + ) {} + + signin() { + this.userService.idpSignin(this.strategy.name).subscribe({ + next: (response: any) => { + if (!response.token || !response.user) { + let message = 'There was a problem signing in, Please contact a Mage administrator for assistance.' + if (response.user) { + if (!response.user.active) { + message = 'Your account has been created but it is not active. A Mage administrator needs to activate your account before you can log in.' + } else if (!response.user.enabled) { + message = 'Your account has been disabled, please contact a Mage administrator for assistance.' + } + } + + this.error.title = 'Signin Failed' + this.error.message = message + return; + } + + this.authenticated.emit(response) + }, + error: (error: any) => { + this.error = { + title: 'Error signing in', + message: error.data || 'Please check your username and password and try again.' + }; + } + }) + } +} diff --git a/web-app/src/app/ingress/authentication/ldap/ldap-authentication.component.html b/web-app/src/app/ingress/authentication/ldap/ldap-authentication.component.html new file mode 100644 index 000000000..bfcd3101e --- /dev/null +++ b/web-app/src/app/ingress/authentication/ldap/ldap-authentication.component.html @@ -0,0 +1,34 @@ +
+
+ + {{strategy.title}} Username + + Username is required + +
+ +
+ + {{strategy.title}} Password + + Password is required + +
+ + + + +
+
+ sentiment_dissatisfied +
+
{{error?.message}}
+
+
+
+
\ No newline at end of file diff --git a/web-app/src/app/ingress/authentication/ldap/ldap-authentication.component.scss b/web-app/src/app/ingress/authentication/ldap/ldap-authentication.component.scss new file mode 100644 index 000000000..2abf89de1 --- /dev/null +++ b/web-app/src/app/ingress/authentication/ldap/ldap-authentication.component.scss @@ -0,0 +1,58 @@ +@use '@angular/material' as mat; +@import "variables.scss"; + +:host ::ng-deep a { + color: mat.get-color-from-palette($app-warn); + cursor: pointer; + text-decoration: underline; +} + +mat-form-field { + width: 100%; + margin-bottom: 8px; +} + +.auth-button { + width: 100%; +} + +.signup { + display: flex; + margin-top: 32px; + justify-content: center; + gap: 8px; +} + +.signup-text { + opacity: 60%; +} + +.signup-button { + cursor: pointer; + color: $primary; +} + +.error-container { + overflow: hidden; +} + +.error { + display: flex; + flex-direction: column; + align-items: center; + gap: 8px; + margin-top: 24px; + color: mat.get-color-from-palette($app-warn); + border-radius: 4px; + padding: 0 16px; +} + +.error__icon { + font-size: 48px; + font-variation-settings: 'fill' 0, 'wght' 400, 'grad' 0, 'opsz' 48; +} + +.error__message { + flex: 1; + text-align: center; +} \ No newline at end of file diff --git a/web-app/src/app/ingress/authentication/ldap/ldap-authentication.component.spec.ts b/web-app/src/app/ingress/authentication/ldap/ldap-authentication.component.spec.ts new file mode 100644 index 000000000..5724145e6 --- /dev/null +++ b/web-app/src/app/ingress/authentication/ldap/ldap-authentication.component.spec.ts @@ -0,0 +1,25 @@ +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; +import { LdapAuthenticationComponent } from './ldap-authentication.component'; +import { HttpClientTestingModule } from '@angular/common/http/testing'; + +describe('LDAP Authentication Component', () => { + let component: LdapAuthenticationComponent; + let fixture: ComponentFixture; + + beforeEach(waitForAsync(() => { + TestBed.configureTestingModule({ + declarations: [LdapAuthenticationComponent], + imports: [HttpClientTestingModule] + }).compileComponents(); + })); + + beforeEach(() => { + fixture = TestBed.createComponent(LdapAuthenticationComponent); + component = fixture.componentInstance; + }); + + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/web-app/src/app/ingress/authentication/ldap/ldap-authentication.component.ts b/web-app/src/app/ingress/authentication/ldap/ldap-authentication.component.ts new file mode 100644 index 000000000..013de8dc9 --- /dev/null +++ b/web-app/src/app/ingress/authentication/ldap/ldap-authentication.component.ts @@ -0,0 +1,56 @@ +import { Component, EventEmitter, Input, Output } from '@angular/core' +import { FormControl, FormGroup, Validators } from '@angular/forms' +import { Api, AuthenticationStrategy } from '../../../api/api.entity' +import { UserService } from '../../../user/user.service' +import { LinkGenerator } from '../../../contact/utilities/link-generator' + +@Component({ + selector: 'ldap-authentication', + templateUrl: './ldap-authentication.component.html', + styleUrls: ['./ldap-authentication.component.scss'] +}) +export class LdapAuthenticationComponent { + @Input() api: Api + @Input() strategy: AuthenticationStrategy + + @Output() authenticated = new EventEmitter(); + + authenticationForm = new FormGroup({ + username: new FormControl('', [Validators.required]), + password: new FormControl('', [Validators.required]) + }) + + contact: string + + error: { + title: string, + message: string + } + + constructor( + private userService: UserService + ) {} + + onSignin(): void { + if (this.authenticationForm.invalid) { + return + } + + const { username, password } = this.authenticationForm.value + this.userService.ldapSignin(username, password).subscribe({ + next: (response: any) => { + this.authenticated.emit(response) + }, + error: (response: any) => { + this.error = { + title: 'Error Signing In', + message: response.error || 'Please check your username and password and try again.' + } + + const email = LinkGenerator.emailLink(this.api.contactInfo, response.error, username, this.strategy) + const phone = LinkGenerator.phoneLink(this.api.contactInfo) + this.contact = `Should you need futher assistance you may contact your Mage administrator via ${[`email`, `phone`].join(' or ')}.` + } + }) + } +} diff --git a/web-app/src/app/ingress/authentication/local/local-authentication.component.html b/web-app/src/app/ingress/authentication/local/local-authentication.component.html new file mode 100644 index 000000000..541fcb639 --- /dev/null +++ b/web-app/src/app/ingress/authentication/local/local-authentication.component.html @@ -0,0 +1,35 @@ +
+
+ + Username + + Username is required + +
+ +
+ + Password + + Password is required + +
+ +
+ +
+ +
+
+ sentiment_dissatisfied +
+
+
+
+
+ + +
\ No newline at end of file diff --git a/web-app/src/app/ingress/authentication/local/local-authentication.component.scss b/web-app/src/app/ingress/authentication/local/local-authentication.component.scss new file mode 100644 index 000000000..739d1461a --- /dev/null +++ b/web-app/src/app/ingress/authentication/local/local-authentication.component.scss @@ -0,0 +1,59 @@ +@use '@angular/material' as mat; +@import "variables.scss"; + +:host ::ng-deep a { + color: mat.get-color-from-palette($app-warn); + cursor: pointer; + text-decoration: underline; +} + +mat-form-field { + width: 100%; + margin-bottom: 8px; +} + +.auth-button { + width: 100%; +} + +.signup { + display: flex; + margin-top: 32px; + justify-content: center; + gap: 8px; +} + +.signup-text { + opacity: 60%; +} + +.signup-button { + cursor: pointer; + color: $primary; +} + +.error-container { + overflow: hidden; +} + +.error { + display: flex; + flex-direction: column; + align-items: center; + gap: 8px; + margin: 24px 0; + color: mat.get-color-from-palette($app-warn); + border-radius: 4px; + padding: 0 16px; +} + +.error__icon { + font-size: 48px; + font-variation-settings: 'fill' 0, 'wght' 400, 'grad' 0, 'opsz' 48; +} + +.error__message { + flex: 1; + text-align: center; +} + diff --git a/web-app/src/app/ingress/authentication/local/local-authentication.component.spec.ts b/web-app/src/app/ingress/authentication/local/local-authentication.component.spec.ts new file mode 100644 index 000000000..26cbde89a --- /dev/null +++ b/web-app/src/app/ingress/authentication/local/local-authentication.component.spec.ts @@ -0,0 +1,25 @@ +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; +import { LocalAuthenticationComponent } from './local-authentication.component'; +import { HttpClientTestingModule } from '@angular/common/http/testing'; + +describe('Local Authentication Component', () => { + let component: LocalAuthenticationComponent; + let fixture: ComponentFixture; + + beforeEach(waitForAsync(() => { + TestBed.configureTestingModule({ + declarations: [LocalAuthenticationComponent], + imports: [HttpClientTestingModule] + }).compileComponents(); + })); + + beforeEach(() => { + fixture = TestBed.createComponent(LocalAuthenticationComponent); + component = fixture.componentInstance; + }); + + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/web-app/src/app/ingress/authentication/local/local-authentication.component.ts b/web-app/src/app/ingress/authentication/local/local-authentication.component.ts new file mode 100644 index 000000000..b459f806d --- /dev/null +++ b/web-app/src/app/ingress/authentication/local/local-authentication.component.ts @@ -0,0 +1,95 @@ +import { Component, ElementRef, EventEmitter, Input, OnInit, Output, SecurityContext, ViewChild } from '@angular/core'; +import { FormControl, FormGroup, Validators } from '@angular/forms'; +import { ApiService } from '../../../api/api.service'; +import { LinkGenerator } from '../../../contact/utilities/link-generator' +import { animate, style, transition, trigger } from '@angular/animations'; +import { Api, AuthenticationStrategy } from '../../../../app/api/api.entity'; +import { UserService } from '../../../user/user.service'; +import { DomSanitizer, SafeHtml } from '@angular/platform-browser'; + +@Component({ + selector: 'local-authentication', + templateUrl: './local-authentication.component.html', + styleUrls: ['./local-authentication.component.scss'], + animations: [ + trigger('slide', [ + transition(':enter', [ + style({ 'height': '0px', opacity: 0 }), + animate('250ms ease-out', style({ 'height': '*', opacity: 1 })), + ]), + transition(":leave", [ + animate('250ms ease-out', style({ 'height': '0px', opacity: 0 })), + ]) + ]), + ] +}) +export class LocalAuthenticationComponent implements OnInit { + @Input() api: Api + @Input() strategy: AuthenticationStrategy + @Input() landing: boolean + + @Output() signup = new EventEmitter() + @Output() authenticated = new EventEmitter() + + @ViewChild('errorElement') private errorElement: ElementRef; + + authenticationForm = new FormGroup({ + username: new FormControl('', [Validators.required]), + password: new FormControl('', [Validators.required]) + }) + + error: { + title: string, + message: SafeHtml + } + + constructor( + private apiService: ApiService, + private userService: UserService, + private sanitizer: DomSanitizer + ) { } + + ngOnInit(): void { + this.apiService.getApi().subscribe((api: any) => { + this.api = api + }) + } + + onSignin() { + if (this.authenticationForm.invalid) { + return + } + + const { username, password } = this.authenticationForm.value + this.userService.signin(username, password).subscribe({ + next: (response) => { + this.authenticated.emit(response) + }, + error: (response: any) => { + let message = response.error || 'Please check your username and password and try again.' + if (this.api.contactInfo.email || this.api.contactInfo.phone) { + const email = LinkGenerator.emailLink(this.api.contactInfo, response.error, username, this.strategy) + const phone = LinkGenerator.phoneLink(this.api.contactInfo) + message = `${message} Should you need futher assistance you may contact your Mage administrator via ${[`email`, `phone`].join(' or ')}.` + } + + this.error = { + title: 'Error Signing In', + message: this.sanitizer.sanitize(SecurityContext.HTML, message) + } + + this.scrollToError() + } + }) + } + + onSignup(): void { + this.signup.emit() + } + + scrollToError(): void { + try { + this.errorElement.nativeElement.scrollIntoView({ behavior: 'smooth' }); + } catch (err) { } + } +} diff --git a/web-app/src/app/ingress/authentication/local/signup.component.html b/web-app/src/app/ingress/authentication/local/signup.component.html new file mode 100644 index 000000000..7ba9bfb9f --- /dev/null +++ b/web-app/src/app/ingress/authentication/local/signup.component.html @@ -0,0 +1,97 @@ + diff --git a/web-app/src/app/ingress/authentication/local/signup.component.scss b/web-app/src/app/ingress/authentication/local/signup.component.scss new file mode 100644 index 000000000..fbbc8c6e3 --- /dev/null +++ b/web-app/src/app/ingress/authentication/local/signup.component.scss @@ -0,0 +1,102 @@ +@import "variables.scss"; + +:host { + width: 100%; + height: 100%; +} + +mat-form-field { + width: 100%; + margin-bottom: 8px; +} + +.signup-container { + height: 100%; + display: flex; + flex-direction: column; + gap: 48px; + padding-top: 32px; +} + +.signup { + padding-bottom: 16px; +} + +.welcome { + display: flex; + flex-direction: column; + align-items: center; + justify-content: end; + color: $primary; +} + +.welcome__title { + margin-bottom: 16px; + font: 400 45px / 48px Roboto, "Helvetica Neue", sans-serif; +} + +.welcome__message { + font: 500 20px / 32px Roboto, "Helvetica Neue", sans-serif +} + +.auth-captcha-container { + position: relative; + border: 1px solid rgba(0, 0, 0, .4); + border-radius: 4px; + padding: 4px; + width: 100%; + height: 80px; + margin: 16px 0; +} + +.auth-captcha { + position: absolute; + right: 56px; + left: 56px; + top: 4px; + bottom: 4px; +} + +.auth-captcha-progress { + display: flex; + flex-direction: row; + justify-content: center; + align-items: center; + height: 100%; +} + +.auth-captcha-progress__container { + display: flex; + flex-direction: column; + align-items: center; + margin: 0 64px; + width: 100%; +} + +.auth-captcha-progress-text { + color: rgba(0, 0, 0, .6); + font-size: 24px; +} + +.auth-captcha-progressbar{ + margin-top: 8px; +} + +.auth-captcha-refresh { + position: absolute; + right: 8px; + top: 24px; +} + +.actions { + width: 100%; + display: flex; + flex-direction: row; + align-items: center; + gap: 16px; + margin-top: 16px; +} + +.actions__button { + flex: 1 +} \ No newline at end of file diff --git a/web-app/src/app/ingress/authentication/local/signup.component.spec.ts b/web-app/src/app/ingress/authentication/local/signup.component.spec.ts new file mode 100644 index 000000000..60c27df61 --- /dev/null +++ b/web-app/src/app/ingress/authentication/local/signup.component.spec.ts @@ -0,0 +1,25 @@ +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; +import { SignupComponent } from './signup.component'; +import { HttpClientTestingModule } from '@angular/common/http/testing'; + +describe('Signup Component', () => { + let component: SignupComponent; + let fixture: ComponentFixture; + + beforeEach(waitForAsync(() => { + TestBed.configureTestingModule({ + declarations: [SignupComponent], + imports: [HttpClientTestingModule] + }).compileComponents(); + })); + + beforeEach(() => { + fixture = TestBed.createComponent(SignupComponent); + component = fixture.componentInstance; + }); + + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/web-app/src/app/ingress/authentication/local/signup.component.ts b/web-app/src/app/ingress/authentication/local/signup.component.ts new file mode 100644 index 000000000..354f1c614 --- /dev/null +++ b/web-app/src/app/ingress/authentication/local/signup.component.ts @@ -0,0 +1,94 @@ +import { Component, EventEmitter, Output } from '@angular/core'; +import { FormControl, FormGroup, Validators } from '@angular/forms'; +import { PasswordStrength } from '../../../entities/entities.password'; +import { UserService } from '../../../user/user.service'; +import { User } from 'core-lib-src/user'; + +export interface SignupEvent { + reason: 'signup' | 'cancel' + user?: User +} + +@Component({ + selector: 'signup', + templateUrl: './signup.component.html', + styleUrls: ['./signup.component.scss'] +}) +export class SignupComponent { + @Output() complete = new EventEmitter() + + signup = new FormGroup({ + username: new FormControl('', [Validators.required]), + displayName: new FormControl('', [Validators.required]), + email: new FormControl('', [Validators.email]), + phone: new FormControl(''), + password: new FormControl('', [Validators.required]), + passwordconfirm: new FormControl('', [Validators.required]), + captchaText: new FormControl('', [Validators.required]) + }) + + passwordStrength?: PasswordStrength + loadingCaptcha = false + captcha: { + uri?: string, + token?: string + } = {} + + constructor( + private userService: UserService + ) {} + + getCaptcha(): void { + this.loadingCaptcha = true + this.userService.signup(this.signup.controls.username.value).subscribe((response: any) => { + this.captcha = { + uri: response.captcha, + token: response.token + } + + this.loadingCaptcha = false; + }); + } + + onCancel(): void { + this.complete.emit({ + reason: 'cancel' + }) + } + + onSignup(): void { + if (this.signup.controls.password.value !== this.signup.controls.passwordconfirm.value) { + this.signup.controls.password.setErrors({ + match: true + }); + } else { + if (this.signup.controls.password.value.length < 1) { + this.signup.controls.password.setErrors({ required: true }); + } else { + this.signup.controls.password.setErrors(null); + } + } + this.signup.markAllAsTouched() + + if (this.signup.valid) { + this.userService.signupVerify(this.signup.value, this.captcha.token).subscribe({ + next: (response: any) => { + this.complete.emit({ + reason: 'signup', + user: response + }) + }, + error: ((response: any) => { + if (response.status === 401) { + this.getCaptcha(); + } else if (response.status === 403) { + this.signup.controls.captchaText.setErrors({ invalid: true }) + } else if (response.status === 409) { + this.captcha = {}; + this.signup.controls.username.setErrors({ exists: true }) + } + }) + }) + } + } +} diff --git a/web-app/src/app/ingress/authorization/authorization.component.html b/web-app/src/app/ingress/authorization/authorization.component.html new file mode 100644 index 000000000..e28e557aa --- /dev/null +++ b/web-app/src/app/ingress/authorization/authorization.component.html @@ -0,0 +1,19 @@ +
+
+
Access Code
+
Please enter your Mage access code. If you do not have an access code please ask you Mage + administrator to provide you with one.
+
+ +
+ + Access Code + + Invalid access code + +
+ +
+ +
+
\ No newline at end of file diff --git a/web-app/src/app/ingress/authorization/authorization.component.scss b/web-app/src/app/ingress/authorization/authorization.component.scss new file mode 100644 index 000000000..a7895fb7b --- /dev/null +++ b/web-app/src/app/ingress/authorization/authorization.component.scss @@ -0,0 +1,42 @@ +@use '@angular/material' as mat; +@import "variables.scss"; + +:host { + width: 100%; +} + +.authorization { + height: 100%; + display: flex; + flex-direction: column; + gap: 48px; +} + +.header { + display: flex; + flex-direction: column; + align-items: center; + justify-content: end; + height: 30vh; +} + +.header__title { + font: 400 34px / 40px Roboto, "Helvetica Neue", sans-serif; + color: $primary; + margin-bottom: 16px; +} + +.header__message { + font: 400 16px / 20px Roboto,"Helvetica Neue",sans-serif; + margin-bottom: 32px; + opacity: 60%; +} + +.authorize { + display: flex; + justify-content: flex-end; +} + +mat-form-field { + width: 100%; +} \ No newline at end of file diff --git a/web-app/src/app/ingress/authorization/authorization.component.spec.ts b/web-app/src/app/ingress/authorization/authorization.component.spec.ts new file mode 100644 index 000000000..c0e1b2ae0 --- /dev/null +++ b/web-app/src/app/ingress/authorization/authorization.component.spec.ts @@ -0,0 +1,25 @@ +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; +import { AuthorizationComponent } from './authorization.component'; +import { HttpClientTestingModule } from '@angular/common/http/testing'; + +describe('Authorization Component', () => { + let component: AuthorizationComponent; + let fixture: ComponentFixture; + + beforeEach(waitForAsync(() => { + TestBed.configureTestingModule({ + declarations: [AuthorizationComponent], + imports: [HttpClientTestingModule] + }).compileComponents(); + })); + + beforeEach(() => { + fixture = TestBed.createComponent(AuthorizationComponent); + component = fixture.componentInstance; + }); + + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/web-app/src/app/ingress/authorization/authorization.component.ts b/web-app/src/app/ingress/authorization/authorization.component.ts new file mode 100644 index 000000000..59eb4ed88 --- /dev/null +++ b/web-app/src/app/ingress/authorization/authorization.component.ts @@ -0,0 +1,35 @@ +import { Component, EventEmitter, Input, Output } from '@angular/core'; +import { FormControl, Validators } from '@angular/forms'; +import { UserService } from 'src/app/user/user.service'; + +export interface AuthorizationEvent { + token: string +} + +@Component({ + selector: 'authorization', + templateUrl: './authorization.component.html', + styleUrls: ['./authorization.component.scss'] +}) +export class AuthorizationComponent { + @Input() token: string + @Output() authorized = new EventEmitter() + + deviceId = new FormControl('', [Validators.required]) + + constructor( + private userService: UserService + ) {} + + authorize(): void { + this.deviceId.setErrors(null) + this.userService.authorize(this.token, this.deviceId.value).subscribe({ + next: (response) => { + this.authorized.emit({ token: response.token }) + }, + error: () => { + this.deviceId.setErrors({ invalid: true}) + } + }) + } +} diff --git a/web-app/src/app/ingress/disclaimer/disclaimer.component.html b/web-app/src/app/ingress/disclaimer/disclaimer.component.html new file mode 100644 index 000000000..9693847df --- /dev/null +++ b/web-app/src/app/ingress/disclaimer/disclaimer.component.html @@ -0,0 +1,15 @@ +
+
+
{{title}}
+
+ +
+
{{text}}
+
+ +
+ + +
+ +
diff --git a/web-app/src/app/ingress/disclaimer/disclaimer.component.scss b/web-app/src/app/ingress/disclaimer/disclaimer.component.scss new file mode 100644 index 000000000..0aec83f09 --- /dev/null +++ b/web-app/src/app/ingress/disclaimer/disclaimer.component.scss @@ -0,0 +1,45 @@ +@use '@angular/material' as mat; +@import "variables.scss"; + +.container { + height: 100%; + display: flex; + flex-direction: column; + gap: 48px; +} + +.header { + display: flex; + flex-direction: column; + align-items: center; + justify-content: end; + height: 30vh; +} + +.header__title { + font: 400 34px / 40px Roboto, "Helvetica Neue", sans-serif; + color: $primary; + margin-bottom: 16px; +} + +.disclaimer { + overflow-y: scroll; +} + +.disclaimer__text { + font: 400 16px / 20px Roboto, "Helvetica Neue", sans-serif; + margin-bottom: 32px; + opacity: 60%; +} + +.actions { + display: flex; + flex-direction: row; + justify-content: start; + width: 100%; + gap: 16px; +} + +.actions__button { + flex: 1; +} \ No newline at end of file diff --git a/web-app/src/app/ingress/disclaimer/disclaimer.component.spec.ts b/web-app/src/app/ingress/disclaimer/disclaimer.component.spec.ts new file mode 100644 index 000000000..96c56392c --- /dev/null +++ b/web-app/src/app/ingress/disclaimer/disclaimer.component.spec.ts @@ -0,0 +1,23 @@ +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; +import { DisclaimerComponent } from './disclaimer.component'; + +describe('Disclaimer Component', () => { + let component: DisclaimerComponent; + let fixture: ComponentFixture; + + beforeEach(waitForAsync(() => { + TestBed.configureTestingModule({ + declarations: [DisclaimerComponent], + imports: [] + }).compileComponents(); + })); + + beforeEach(() => { + fixture = TestBed.createComponent(DisclaimerComponent); + component = fixture.componentInstance; + }); + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/web-app/src/app/ingress/disclaimer/disclaimer.component.ts b/web-app/src/app/ingress/disclaimer/disclaimer.component.ts new file mode 100644 index 000000000..1ca9393f4 --- /dev/null +++ b/web-app/src/app/ingress/disclaimer/disclaimer.component.ts @@ -0,0 +1,34 @@ +import { Component, EventEmitter, Input, Output } from '@angular/core' + +export enum DiscalimerCloseReason { + ACCEPT, REJECT +} + +export interface DiscalimeCloseEvent { + reason: DiscalimerCloseReason +} + +@Component({ + selector: 'disclaimer', + templateUrl: './disclaimer.component.html', + styleUrls: ['./disclaimer.component.scss'] +}) +export class DisclaimerComponent { + @Input() title: string + @Input() text: string + + @Output() close = new EventEmitter() + + onAccept(): void { + this.close.emit({ + reason: DiscalimerCloseReason.ACCEPT + }) + } + + onReject(): void { + this.close.emit({ + reason: DiscalimerCloseReason.REJECT + }) + } + +} diff --git a/web-app/src/app/ingress/ingress.component.html b/web-app/src/app/ingress/ingress.component.html new file mode 100644 index 000000000..590d1a29b --- /dev/null +++ b/web-app/src/app/ingress/ingress.component.html @@ -0,0 +1,29 @@ +
+
+ +
+ +
+ +
+ +
+ +
+ +
+ +
+ +
+ +
+ +
+ +
+ +
+ +
+
diff --git a/web-app/src/app/ingress/ingress.component.scss b/web-app/src/app/ingress/ingress.component.scss new file mode 100644 index 000000000..7e821628c --- /dev/null +++ b/web-app/src/app/ingress/ingress.component.scss @@ -0,0 +1,22 @@ +:host { + position: relative; +} + +.container { + width: 100%; + height: 100%; + min-height: 250px; + position: relative; +} + +.state { + display: flex; + flex-direction: row; + align-items: center; + justify-content: center; + position: absolute; + top: 0; + bottom: 0; + left: 0; + right: 0; +} \ No newline at end of file diff --git a/web-app/src/app/ingress/ingress.component.spec.ts b/web-app/src/app/ingress/ingress.component.spec.ts new file mode 100644 index 000000000..7f07fddd8 --- /dev/null +++ b/web-app/src/app/ingress/ingress.component.spec.ts @@ -0,0 +1,24 @@ +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; +import { IngressComponent } from './ingress.component'; +import { HttpClientTestingModule } from '@angular/common/http/testing'; + +describe('Ingress Component', () => { + let component: IngressComponent; + let fixture: ComponentFixture; + + beforeEach(waitForAsync(() => { + TestBed.configureTestingModule({ + declarations: [IngressComponent], + imports: [HttpClientTestingModule] + }).compileComponents(); + })); + + beforeEach(() => { + fixture = TestBed.createComponent(IngressComponent); + component = fixture.componentInstance; + }); + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/web-app/src/app/ingress/ingress.component.ts b/web-app/src/app/ingress/ingress.component.ts new file mode 100644 index 000000000..56534f4a3 --- /dev/null +++ b/web-app/src/app/ingress/ingress.component.ts @@ -0,0 +1,172 @@ +import { Component, EventEmitter, Input, OnChanges, OnInit, Output, SimpleChanges } from '@angular/core' +import { Api, AuthenticationStrategy } from '../api/api.entity' +import { UserService } from '../user/user.service' +import { AuthorizationEvent } from './authorization/authorization.component' +import { LocalStorageService } from '../http/local-storage.service' +import { DiscalimeCloseEvent, DiscalimerCloseReason } from './disclaimer/disclaimer.component' +import { animate, style, transition, trigger } from '@angular/animations' +import { SignupEvent } from './authentication/local/signup.component' +import { User } from 'core-lib-src/user' +import { InitializedEvent } from './intialize/initialize.component' +import * as _ from 'underscore' + +enum IngressState { + Initialize, + Signin, + Signup, + Authorization, + Disclaimer, + ActiveAccount, + DisabledAccount, + InactiveAccount +} + +class Ingress { + state: IngressState +} + +class Signin extends Ingress { + state = IngressState.Signin +} + +class Signup extends Ingress { + state = IngressState.Signup +} + +class Authenticated extends Ingress { + state = IngressState.Authorization + readonly authenticationToken: string + + constructor(authenticationToken: string) { + super() + this.authenticationToken = authenticationToken + } +} + +class Authorized extends Ingress { + state = IngressState.Disclaimer + readonly apiToken: string + + constructor(apiToken: string) { + super() + this.apiToken = apiToken + } +} + +class ActiveAccount extends Ingress { + state = IngressState.ActiveAccount +} + +class InactiveAccount extends Ingress { + state = IngressState.InactiveAccount +} + +class Initialize extends Ingress { + state = IngressState.Initialize +} + +@Component({ + selector: 'ingress', + templateUrl: './ingress.component.html', + styleUrls: ['./ingress.component.scss'], + animations: [ + trigger('disableOnEnter', [ + transition(':enter', []) + ]), + trigger('slide', [ + transition(':enter', [ + style({ transform: 'translateX(100%)' }), + animate('250ms', style({ transform: 'translateX(0%)', opacity: 1 })), + ]), + transition(':leave', [ + animate('250ms', style({ transform: 'translateX(-100%)', opacity: 0 })) + ]) + ]) + ] +}) +export class IngressComponent implements OnChanges { + @Input() api: Api + @Input() landing: boolean + @Output() complete = new EventEmitter() + + public readonly IngressState: typeof IngressState = IngressState + + ingress: Ingress = new Signin() + strategy: any + thirdPartyStrategies: any + localAuthenticationStrategy: any + + constructor( + private userService: UserService, + private localStorageService: LocalStorageService + ) { } + + ngOnChanges(changes: SimpleChanges): void { + if (changes.api?.currentValue?.initial === true) { + this.ingress = new Initialize() + } + } + + localStrategyFilter(_strategy: AuthenticationStrategy, name: string) { + return name === 'local' + } + + getAuthenticationToken(): string | undefined { + return (this.ingress as Authenticated)?.authenticationToken + } + + onSignup(): void { + this.ingress = new Signup() + } + + signup($event: SignupEvent): void { + if ($event.reason === 'signup') { + this.ingress = $event.user.active ? new ActiveAccount() : new InactiveAccount() + } else { + this.ingress = new Signin() + } + } + + onAuthenticated($event: { user: User, token: string }) { + this.userService.authorize($event.token, null).subscribe({ + next: (response) => { + this.authorized(response.token) + }, + error: () => { + this.ingress = new Authenticated($event.token) + } + }) + } + + onAuthorized($event: AuthorizationEvent) { + this.authorized($event.token) + } + + private authorized(token: string) { + if (this.api.disclaimer?.show === true) { + this.ingress = new Authorized(token) + } else { + this.localStorageService.setToken(token) + this.complete.emit() + } + } + + onDisclaimer($event: DiscalimeCloseEvent) { + if ($event.reason === DiscalimerCloseReason.ACCEPT) { + const ingress = this.ingress as Authorized + this.localStorageService.setToken(ingress.apiToken) + this.complete.emit() + } else { + this.ingress = new Signin() + } + } + + onAccountStatus(): void { + this.ingress = new Signin() + } + + onInitialized($event: InitializedEvent): void { + this.localStorageService.setToken($event.token) + this.complete.emit() + } +} diff --git a/web-app/src/app/ingress/ingress.module.ts b/web-app/src/app/ingress/ingress.module.ts new file mode 100644 index 000000000..e4272ee44 --- /dev/null +++ b/web-app/src/app/ingress/ingress.module.ts @@ -0,0 +1,59 @@ +import { NgModule } from '@angular/core'; +import { CommonModule } from '@angular/common'; +import { IngressComponent } from './ingress.component'; +import { InitializeComponent } from './intialize/initialize.component'; +import { AuthenticationComponent } from './authentication/authentication.component'; +import { LocalAuthenticationComponent } from './authentication/local/local-authentication.component'; +import { MatFormFieldModule } from '@angular/material/form-field'; +import { MatInputModule } from '@angular/material/input'; +import { MatIconModule } from '@angular/material/icon'; +import { ReactiveFormsModule } from '@angular/forms'; +import { SignupComponent } from './authentication/local/signup.component'; +import { MatProgressBarModule } from '@angular/material/progress-bar'; +import { AuthorizationComponent } from './authorization/authorization.component'; +import { DisclaimerComponent } from './disclaimer/disclaimer.component'; +import { MatButtonModule } from '@angular/material/button'; +import { IdpAuthenticationComponent } from './authentication/idp/idp-authentication.component'; +import { AccountStatusComponent } from './account-status/account-status.component'; +import { AuthenticationDialogComponent } from './authentication/authentication-dialog.component'; +import { LdapAuthenticationComponent } from './authentication/ldap/ldap-authentication.component'; +import { AuthenticationButtonComponent } from './authentication/button/authentication-button.component'; + +@NgModule({ + declarations: [], + imports: [], + exports: [ + CommonModule, + MatButtonModule, + MatIconModule, + MatFormFieldModule, + MatInputModule, + MatProgressBarModule, + ReactiveFormsModule + ] +}) +class AngularModule { } + +@NgModule({ + declarations: [ + AccountStatusComponent, + AuthenticationComponent, + AuthenticationButtonComponent, + AuthenticationDialogComponent, + AuthorizationComponent, + DisclaimerComponent, + IdpAuthenticationComponent, + IngressComponent, + InitializeComponent, + LdapAuthenticationComponent, + LocalAuthenticationComponent, + SignupComponent + ], + imports: [ + AngularModule + ], + exports: [ + IngressComponent + ] +}) +export class IngressModule { } diff --git a/web-app/src/app/ingress/intialize/initialize.component.html b/web-app/src/app/ingress/intialize/initialize.component.html new file mode 100644 index 000000000..f043b2bdd --- /dev/null +++ b/web-app/src/app/ingress/intialize/initialize.component.html @@ -0,0 +1,65 @@ +
+
+
Admin Account Creation
+
Create an account to access and administor Mage
+
+ +
+
+ + Username + + Username is required + +
+ +
+ + Password + + Password is required + Passwords must match + +
+ +
+ + Confirm Password + + Password confirmation is required + +
+ +
+
+
Password Strengh
+
{{passwordStrength?.text}}
+
+ +
+ +
+ + Access Code + + This code will allow users to access Mage via the web client + Access code is required + +
+ +
+ +
+ +
+
+ sentiment_dissatisfied +
+
{{error?.title}}
+
{{error?.message}}
+
+
+
+ +
+
\ No newline at end of file diff --git a/web-app/src/app/ingress/intialize/initialize.component.scss b/web-app/src/app/ingress/intialize/initialize.component.scss new file mode 100644 index 000000000..ce0dda4b1 --- /dev/null +++ b/web-app/src/app/ingress/intialize/initialize.component.scss @@ -0,0 +1,97 @@ +@use '@angular/material' as mat; +@import "variables.scss"; + +:host { + width: 100%; + height: 100%; +} + +:host ::ng-deep a { + color: mat.get-color-from-palette($app-warn); + cursor: pointer; + text-decoration: underline; +} + +mat-form-field { + width: 100%; + margin-bottom: 16px; +} + +.container { + height: 100%; + display: flex; + flex-direction: column; + gap: 48px; + padding-top: 32px; +} + +.form { + padding-bottom: 16px; +} + +.welcome { + display: flex; + flex-direction: column; + align-items: center; + justify-content: end; + color: $primary; + height: 30vh; +} + +.welcome__title { + margin-bottom: 16px; + font: 400 45px / 48px Roboto, "Helvetica Neue", sans-serif; +} + +.welcome__message { + font: 500 20px / 32px Roboto, "Helvetica Neue", sans-serif +} + +.password-strength { + margin-bottom: 32px; +} + +.password-strength__text { + margin-bottom: 8px; +} + +.actions { + width: 100%; + display: flex; + flex-direction: row; + align-items: center; + gap: 16px; + margin-top: 16px; +} + +.actions__button { + flex: 1 +} + +.error-container { + overflow: hidden; +} + +.error { + display: flex; + flex-direction: column; + align-items: center; + gap: 8px; + margin-top: 24px; + color: mat.get-color-from-palette($app-warn); + border-radius: 4px; + padding: 0 16px; +} + +.error__icon { + font-size: 48px; + font-variation-settings: 'fill' 0, 'wght' 400, 'grad' 0, 'opsz' 48; +} + +.error__message { + display: flex; + flex-direction: column; + flex: 1; + text-align: center; + gap: 4px; +} \ No newline at end of file diff --git a/web-app/src/app/ingress/intialize/initialize.component.spec.ts b/web-app/src/app/ingress/intialize/initialize.component.spec.ts new file mode 100644 index 000000000..76843684f --- /dev/null +++ b/web-app/src/app/ingress/intialize/initialize.component.spec.ts @@ -0,0 +1,24 @@ +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; +import { InitializeComponent } from './initialize.component'; +import { HttpClientTestingModule } from '@angular/common/http/testing'; + +describe('Initialize Component', () => { + let component: InitializeComponent; + let fixture: ComponentFixture; + + beforeEach(waitForAsync(() => { + TestBed.configureTestingModule({ + declarations: [InitializeComponent], + imports: [HttpClientTestingModule] + }).compileComponents(); + })); + + beforeEach(() => { + fixture = TestBed.createComponent(InitializeComponent); + component = fixture.componentInstance; + }); + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/web-app/src/app/ingress/intialize/initialize.component.ts b/web-app/src/app/ingress/intialize/initialize.component.ts new file mode 100644 index 000000000..36d4dbd5a --- /dev/null +++ b/web-app/src/app/ingress/intialize/initialize.component.ts @@ -0,0 +1,119 @@ +import { Component, EventEmitter, OnInit, Output } from '@angular/core'; +import { PasswordStrength, passwordStrengthScores } from '../../entities/entities.password'; +import { FormControl, FormGroup, Validators } from '@angular/forms'; +import { zxcvbn, zxcvbnOptions } from '@zxcvbn-ts/core' +import { InitializeService } from './initialize.service'; +import { UserService } from '../../user/user.service'; +import { User } from 'core-lib-src/user'; +import * as zxcvbnCommonPackage from '@zxcvbn-ts/language-common' +import * as zxcvbnEnPackage from '@zxcvbn-ts/language-en' +import { animate, style, transition, trigger } from '@angular/animations'; + +export interface InitializedEvent { + token: string +} + +@Component({ + selector: 'initialize', + templateUrl: './initialize.component.html', + styleUrls: ['./initialize.component.scss'], + animations: [ + trigger('slide', [ + transition(':enter', [ + style({ 'height': '0px', opacity: 0 }), + animate('250ms ease-out', style({ 'height': '*', opacity: 1 })), + ]), + transition(":leave", [ + animate('250ms ease-out', style({ 'height': '0px', opacity: 0 })), + ]) + ]), + ] +}) +export class InitializeComponent implements OnInit { + @Output() initialized = new EventEmitter() + + passwordStrength?: PasswordStrength + + accountForm = new FormGroup({ + username: new FormControl('', [Validators.required]), + password: new FormControl('', [Validators.required]), + passwordconfirm: new FormControl('', [Validators.required]), + accessCode: new FormControl('', [Validators.required]) + }) + + error: { + title: string, + message: string + } + + constructor( + private userService: UserService, + private initializeService: InitializeService + ) { + this.accountForm.controls.password.valueChanges.subscribe((password: string) => { + this.onPasswordChanged(password) + }) + } + + ngOnInit(): void { + zxcvbnOptions.setOptions({ + dictionary: { + ...zxcvbnCommonPackage.dictionary, + ...zxcvbnEnPackage.dictionary, + }, + graphs: zxcvbnCommonPackage.adjacencyGraphs, + translations: zxcvbnEnPackage.translations, + }) + } + + onPasswordChanged(password: string) { + if (password && password.length > 0) { + const score = password && password.length ? zxcvbn(password, [this.accountForm.value.username]).score : 0; + this.passwordStrength = passwordStrengthScores[score] + } else { + this.passwordStrength = passwordStrengthScores[0] + } + } + + onInitialize(): void { + // TODO ensure for valid + const { username, password, passwordconfirm, accessCode } = this.accountForm.value + + if (password !== passwordconfirm) { + this.accountForm.controls.password.setErrors({ + match: true + }); + } else { + if (password.length < 1) { + this.accountForm.controls.password.setErrors({ required: true }); + } else { + this.accountForm.controls.password.setErrors(null); + } + } + this.accountForm.markAllAsTouched() + + if (this.accountForm.invalid) { + return + } + + this.initializeService.initialize(username, password, accessCode).subscribe({ + next: () => { + this.userService.signin(username, password).subscribe({ + next: (response: { user: User, token: string }) => { + this.userService.authorize(response.token, accessCode).subscribe({ + next: (response: { user: User, token: string }) => { + this.initialized.emit({ token: response.token }) + } + }) + } + }) + }, + error: (response: any) => { + this.error = { + title: 'Could not create account', + message: response.error + } + } + }) + } +} diff --git a/web-app/src/app/ingress/intialize/initialize.service.ts b/web-app/src/app/ingress/intialize/initialize.service.ts new file mode 100644 index 000000000..3335d2243 --- /dev/null +++ b/web-app/src/app/ingress/intialize/initialize.service.ts @@ -0,0 +1,25 @@ +import { HttpClient, HttpContext } from '@angular/common/http' +import { Injectable } from '@angular/core' +import { Observable } from 'rxjs' +import { BYPASS_TOKEN } from '../../http/token.interceptor' + +@Injectable({ + providedIn: 'root' +}) +export class InitializeService { + + constructor( + private httpClient: HttpClient + ) { } + + initialize(username: string, password: string, accessCode: string): Observable { + return this.httpClient.post('/api/setup', { + username: username, + password: password, + passwordconfirm: password, + uid: accessCode + },{ + context: new HttpContext().set(BYPASS_TOKEN, true) + }) + } +} \ No newline at end of file diff --git a/web-app/src/app/ingress/user.resolver.ts b/web-app/src/app/ingress/user.resolver.ts new file mode 100644 index 000000000..b87d88343 --- /dev/null +++ b/web-app/src/app/ingress/user.resolver.ts @@ -0,0 +1,21 @@ +import { Injectable } from "@angular/core"; +import { ActivatedRouteSnapshot, Resolve, RouterStateSnapshot } from "@angular/router"; +import { Observable, catchError, of } from "rxjs"; +import { Api } from "../api/api.entity"; +import { UserService } from "../user/user.service"; + +@Injectable({ providedIn: 'root' }) +export class UserResolver implements Resolve { + constructor(private service: UserService) { } + + resolve( + _route: ActivatedRouteSnapshot, + _state: RouterStateSnapshot + ): Observable { + return this.service.getMyself().pipe( + catchError(() => { + return of(null) + }) + ) + } +} \ No newline at end of file diff --git a/web-app/src/app/landing/info.component.html b/web-app/src/app/landing/info.component.html new file mode 100644 index 000000000..6a5c3441c --- /dev/null +++ b/web-app/src/app/landing/info.component.html @@ -0,0 +1,39 @@ +
+ +
+
+
Mage
+
+ +
+
+
+ photo_camera +
+
+
Share what you see
+
Attach photos, videos, and voice to your observations from the field +
+
+
+
+
+ place +
+
+
Location, location, location
+
See your observations and your team's locations on the map
+
+
+
+
+ signal_cellular_alt +
+
+
No connection, no problem
+
Keep collecting observations even when you have no service
+
+
+
+ +
diff --git a/web-app/src/app/landing/info.component.scss b/web-app/src/app/landing/info.component.scss new file mode 100644 index 000000000..68465ac1b --- /dev/null +++ b/web-app/src/app/landing/info.component.scss @@ -0,0 +1,109 @@ +$background-images: '1', '2', '3', '4'; + +:host { + width: 80%; +} + +@each $image in $background-images { + .mage-#{$image}-bg { + background-image: url('/assets/images/splash/#{$image}.jpg'); + } +} + +@keyframes bg-slide { + from { + transform: translateX(0); + } + + 50% { + transform: translateX(-50%); + } + + to { + transform: translateX(0); + } +} + +.slide { + width: 100%; + background-size: cover; + position: absolute; + top: 0; + bottom: 0; + left: 0; + animation: bg-slide 400s linear infinite; + z-index: -1; +} + +.title-container { + text-align: center; +} + +.title { + font-size: 8rem; +} + +.subtitle { + margin-top: -10px; + font-size: 1.5rem; +} + +.features { + display: flex; + flex-direction: column; + align-items: center; +} + +.feature { + display: flex; + flex-direction: row; + padding-bottom: 30px; + padding-top: 30px; + width: 550px; +} + +.feature-icon { + display: flex; + justify-content: center; + align-items: center; + padding-right: 16px; + + i { + font-size: 3.5rem; + stroke: white; + } +} + +.feature-description { + display: flex; + flex-direction: column; +} + +.feature-title { + font-size: 1.6rem; + font-weight: 400; + margin-bottom: 10px; +} + +.feature-subtitle { + font-size: 1rem; +} + +@media all and (max-width:1025px) { + .slide { + animation: none; + } + + .title { + font-size: 4rem; + letter-spacing: none; + } + + .subtitle { + display: none; + } + + .features { + display: none; + } +} \ No newline at end of file diff --git a/web-app/src/app/landing/info.component.spec.ts b/web-app/src/app/landing/info.component.spec.ts new file mode 100644 index 000000000..432b8250d --- /dev/null +++ b/web-app/src/app/landing/info.component.spec.ts @@ -0,0 +1,23 @@ +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; +import { InfoComponent } from './info.component'; + +describe('Info Component', () => { + let component: InfoComponent; + let fixture: ComponentFixture; + + beforeEach(waitForAsync(() => { + TestBed.configureTestingModule({ + declarations: [InfoComponent], + imports: [] + }).compileComponents(); + })); + + beforeEach(() => { + fixture = TestBed.createComponent(InfoComponent); + component = fixture.componentInstance; + }); + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/web-app/src/app/landing/info.component.ts b/web-app/src/app/landing/info.component.ts new file mode 100644 index 000000000..cc3515149 --- /dev/null +++ b/web-app/src/app/landing/info.component.ts @@ -0,0 +1,17 @@ +import { Component } from '@angular/core'; + +@Component({ + selector: 'info', + templateUrl: './info.component.html', + styleUrls: ['./info.component.scss'] +}) +export class InfoComponent { + backgrounds = [ + 'mage-1-bg', + 'mage-2-bg', + 'mage-3-bg', + 'mage-4-bg' + ] + + background = this.backgrounds[Math.floor(Math.random() * 4)] +} diff --git a/web-app/src/app/landing/landing.component.html b/web-app/src/app/landing/landing.component.html new file mode 100644 index 000000000..0d8845248 --- /dev/null +++ b/web-app/src/app/landing/landing.component.html @@ -0,0 +1,10 @@ +
+
+ +
+
+
+ +
+
+
\ No newline at end of file diff --git a/web-app/src/app/landing/landing.component.scss b/web-app/src/app/landing/landing.component.scss new file mode 100644 index 000000000..371282ee3 --- /dev/null +++ b/web-app/src/app/landing/landing.component.scss @@ -0,0 +1,42 @@ +.landing { + display: flex; + flex-direction: row; +} + +.section { + flex: 1; + display: flex; + justify-content: center; + align-items: center; + flex-direction: column; +} + +.info { + height: 100vh; + overflow: hidden; + color: #fff; + background-color: rgba(16, 69, 130, .5); +} + +.ingress-container { + overflow-y: scroll; + background-color: #fff; +} + +.ingress { + width: 75%; + height: 100vh; + min-width: 285px; + max-width: 600px; + position: relative; +} + +@media (max-width: 1100px) or (max-height: 460px) { + .ingress-container { + width: 100%; + } + + .info { + display: none; + } +} \ No newline at end of file diff --git a/web-app/src/app/landing/landing.component.spec.ts b/web-app/src/app/landing/landing.component.spec.ts new file mode 100644 index 000000000..13eeaae9c --- /dev/null +++ b/web-app/src/app/landing/landing.component.spec.ts @@ -0,0 +1,24 @@ +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; +import { LandingComponent } from './landing.component'; +import { HttpClientTestingModule } from '@angular/common/http/testing'; + +describe('Landing Component', () => { + let component: LandingComponent; + let fixture: ComponentFixture; + + beforeEach(waitForAsync(() => { + TestBed.configureTestingModule({ + declarations: [LandingComponent], + imports: [HttpClientTestingModule] + }).compileComponents(); + })); + + beforeEach(() => { + fixture = TestBed.createComponent(LandingComponent); + component = fixture.componentInstance; + }); + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/web-app/src/app/landing/landing.component.ts b/web-app/src/app/landing/landing.component.ts new file mode 100644 index 000000000..89e6fe8a2 --- /dev/null +++ b/web-app/src/app/landing/landing.component.ts @@ -0,0 +1,27 @@ +import { Component } from '@angular/core'; +import { Api } from '../api/api.entity'; +import { ApiService } from 'admin/src/app/api/api.service'; +import { Router } from '@angular/router'; + +@Component({ + selector: 'landing', + templateUrl: './landing.component.html', + styleUrls: ['./landing.component.scss'], +}) +export class LandingComponent { + api: Api + + constructor( + apiService: ApiService, + private router: Router + ) { + apiService.getApi().subscribe((api: Api) => { + this.api = api + }) + } + + onIngress(): void { + this.router.navigate(['home']) + } + +} diff --git a/web-app/src/app/landing/landing.module.ts b/web-app/src/app/landing/landing.module.ts new file mode 100644 index 000000000..b6f5f919a --- /dev/null +++ b/web-app/src/app/landing/landing.module.ts @@ -0,0 +1,29 @@ +import { NgModule } from '@angular/core'; +import { CommonModule } from '@angular/common'; +import { LandingComponent } from './landing.component'; +import { InfoComponent } from './info.component'; +import { RouterModule, Routes } from '@angular/router'; +import { ApiResolver } from '../api/api.resolver'; +import { IngressModule } from '../ingress/ingress.module'; + +const routes: Routes = [{ + path: '', + component: LandingComponent, + resolve: { + api: ApiResolver + } +}]; + +@NgModule({ + declarations: [ + LandingComponent, + InfoComponent + ], + imports: [ + CommonModule, + IngressModule, + RouterModule.forChild(routes) + ], + exports: [ RouterModule ] +}) +export class LandingModule { } \ No newline at end of file diff --git a/web-app/src/app/layer/feature.service.spec.ts b/web-app/src/app/layer/feature.service.spec.ts new file mode 100644 index 000000000..07b280f70 --- /dev/null +++ b/web-app/src/app/layer/feature.service.spec.ts @@ -0,0 +1,21 @@ +import { TestBed } from '@angular/core/testing'; +import { FeatureService } from './feature.service'; +import { HttpClientTestingModule } from '@angular/common/http/testing'; + +describe('Feature Service Tests', () => { + + beforeEach(() => { + TestBed.configureTestingModule({ + providers: [FeatureService], + imports: [HttpClientTestingModule] + }); + }); + + afterEach(() => { + }); + + it('should be created', () => { + const service: FeatureService = TestBed.inject(FeatureService); + expect(service).toBeTruthy(); + }); +}); \ No newline at end of file diff --git a/web-app/src/app/layer/feature.service.ts b/web-app/src/app/layer/feature.service.ts new file mode 100644 index 000000000..2a26ddf04 --- /dev/null +++ b/web-app/src/app/layer/feature.service.ts @@ -0,0 +1,47 @@ +import { HttpClient } from "@angular/common/http"; +import { Injectable } from "@angular/core"; +import { Observable, map } from "rxjs"; +import * as _ from 'underscore'; + +@Injectable({ + providedIn: 'root' +}) +export class FeatureService { + constructor( + private httpClient: HttpClient + ) {} + + getFeatureCollection(event, layer): Observable { + let url: string + if (event) { + url = `/api/events/${event.id}/layers/${layer.id}/features`; + } else if (layer) { + url = `/api/layers/${layer.id}/features`; + } + + return this.httpClient.get(url).pipe( + map((featureCollection: any) => { + _.each(featureCollection.features, function (feature) { + const style = feature.properties.style; + if (!style) return; + + feature.style = {}; + if (style.iconStyle && style.iconStyle.icon) { + feature.style.iconUrl = style.iconStyle.icon.href; + } + + if (style.lineStyle && style.lineStyle.color) { + feature.style.color = style.lineStyle.color.rgb; + } + + if (style.polyStyle && style.polyStyle.color) { + feature.style.fillColor = style.polyStyle.color.rgb; + feature.style.fillOpacity = style.polyStyle.color.opacity / 255; + } + }); + + return featureCollection + }) + ) + } +} \ No newline at end of file diff --git a/web-app/src/app/layer/layer.service.spec.ts b/web-app/src/app/layer/layer.service.spec.ts new file mode 100644 index 000000000..b31e88e05 --- /dev/null +++ b/web-app/src/app/layer/layer.service.spec.ts @@ -0,0 +1,21 @@ +import { TestBed } from '@angular/core/testing'; +import { LayerService } from './layer.service'; +import { HttpClientTestingModule } from '@angular/common/http/testing'; + +describe('Layer Service Tests', () => { + + beforeEach(() => { + TestBed.configureTestingModule({ + providers: [LayerService], + imports: [HttpClientTestingModule] + }); + }); + + afterEach(() => { + }); + + it('should be created', () => { + const service: LayerService = TestBed.inject(LayerService); + expect(service).toBeTruthy(); + }); +}); \ No newline at end of file diff --git a/web-app/src/app/layer/layer.service.ts b/web-app/src/app/layer/layer.service.ts new file mode 100644 index 000000000..ad381c4b3 --- /dev/null +++ b/web-app/src/app/layer/layer.service.ts @@ -0,0 +1,42 @@ +import { HttpClient } from "@angular/common/http"; +import { Injectable } from "@angular/core"; +import { Observable } from "rxjs"; +import { FilterService } from "../filter/filter.service"; + +@Injectable({ + providedIn: 'root' +}) +export class LayerService { + + constructor( + private httpClient: HttpClient, + private filterService: FilterService + ) { } + + getLayersForEvent(event, includeUnavailable?: any): Observable { + return this.httpClient.get(`/api/events/${event.id}/layers`, { params: { includeUnavailable } } ) + } + + getClosestFeaturesForLayers(layerIds, latlng, tile): Observable { + const event = this.filterService.getEvent(); + return this.httpClient.post(`/api/events/${event.id}/features`, { layerIds: layerIds, latlng: latlng, tile: tile }) + } + + makeAvailable(layerId) { + return this.httpClient.get(`/api/layers/${layerId}/available`) + } + + uploadGeopackage(data) { + const formData = new FormData(); + for (const property in data) { + if (data[property] != null) { + formData.append(property, data[property]); + } + } + + return this.httpClient.post('/api/layers', formData, { + reportProgress: true, + observe: 'events' + }); + } +} \ No newline at end of file diff --git a/web-app/src/app/map/clip/clip.component.spec.ts b/web-app/src/app/map/clip/clip.component.spec.ts index 4ae1d561a..71bdb7e76 100644 --- a/web-app/src/app/map/clip/clip.component.spec.ts +++ b/web-app/src/app/map/clip/clip.component.spec.ts @@ -1,12 +1,13 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; import { MapClipComponent } from './clip.component'; +/* TODO test MUST include at least 1 test describe('MapClipComponent', () => { let component: MapClipComponent; let fixture: ComponentFixture; - beforeEach(async(() => { + beforeEach(waitForAsync(() => { TestBed.configureTestingModule({ declarations: [MapClipComponent] }) @@ -23,3 +24,4 @@ describe('MapClipComponent', () => { // expect(component).toBeTruthy(); // }); }); +*/ diff --git a/web-app/src/app/map/clip/clip.component.ts b/web-app/src/app/map/clip/clip.component.ts index 6bcd0851f..87ba9883f 100644 --- a/web-app/src/app/map/clip/clip.component.ts +++ b/web-app/src/app/map/clip/clip.component.ts @@ -1,7 +1,9 @@ -import { Component, Input, ElementRef, Inject, OnDestroy, OnChanges, SimpleChanges, OnInit, ViewChild } from '@angular/core' +import { Component, Input, ElementRef, OnDestroy, OnChanges, SimpleChanges, OnInit, ViewChild } from '@angular/core' import { Feature } from 'geojson' -import { Map, GeoJSON, PathOptions, Layer, FixedWidthMarker, control, TileLayer, WMSOptions, Circle, LatLng } from 'leaflet' -import { LocalStorageService, MapService } from 'src/app/upgrade/ajs-upgraded-providers' +import { Map, GeoJSON, PathOptions, Layer, control, TileLayer, WMSOptions, Circle, LatLng } from 'leaflet' +import { MapService } from '../map.service' +import { LocalStorageService } from '../../http/local-storage.service' +import { fixedWidthMarker } from '../marker/FixedWidthMarker' interface FeatureWithStyle extends Feature { style?: any @@ -35,8 +37,8 @@ export class MapClipComponent implements OnInit, OnChanges, OnDestroy { } constructor( - @Inject(MapService) private mapService: any, - @Inject(LocalStorageService) private localStorageService: any) { + private mapService: MapService, + private localStorageService: LocalStorageService) { } ngOnInit(): void { @@ -118,7 +120,7 @@ export class MapClipComponent implements OnInit, OnChanges, OnDestroy { this.layer = new GeoJSON(this.feature, { pointToLayer: function (feature: FeatureWithStyle, latlng): Layer { - return new FixedWidthMarker(latlng, { + return fixedWidthMarker(latlng, { iconUrl: feature.style ? feature.style.iconUrl : '' }) }, diff --git a/web-app/src/app/map/controls/add-observation.component.html b/web-app/src/app/map/controls/add-observation.component.html index a7366a2f4..8701d7ee0 100644 --- a/web-app/src/app/map/controls/add-observation.component.html +++ b/web-app/src/app/map/controls/add-observation.component.html @@ -1,3 +1,3 @@ - diff --git a/web-app/src/app/map/controls/add-observation.component.scss b/web-app/src/app/map/controls/add-observation.component.scss index 18cc100d6..5f7be4392 100644 --- a/web-app/src/app/map/controls/add-observation.component.scss +++ b/web-app/src/app/map/controls/add-observation.component.scss @@ -1,7 +1,3 @@ -button { - margin-top: 32px; -} - mat-icon { color: white; } \ No newline at end of file diff --git a/web-app/src/app/map/controls/add-observation.component.spec.ts b/web-app/src/app/map/controls/add-observation.component.spec.ts index a4613e1a3..752f0fb6e 100644 --- a/web-app/src/app/map/controls/add-observation.component.spec.ts +++ b/web-app/src/app/map/controls/add-observation.component.spec.ts @@ -1,4 +1,4 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; import { AddObservationComponent } from './add-observation.component'; import { MatButtonModule } from '@angular/material/button'; @@ -9,7 +9,7 @@ describe('AddObservationComponent', () => { let component: AddObservationComponent; let fixture: ComponentFixture; - beforeEach(async(() => { + beforeEach(waitForAsync(() => { TestBed.configureTestingModule({ imports: [ MatIconModule, MatButtonModule ], declarations: [ AddObservationComponent ] diff --git a/web-app/src/app/map/controls/export.component.html b/web-app/src/app/map/controls/export.component.html new file mode 100644 index 000000000..84c303667 --- /dev/null +++ b/web-app/src/app/map/controls/export.component.html @@ -0,0 +1,3 @@ + \ No newline at end of file diff --git a/web-app/src/app/map/controls/export.component.scss b/web-app/src/app/map/controls/export.component.scss new file mode 100644 index 000000000..e69de29bb diff --git a/web-app/src/app/map/controls/export.component.spec.ts b/web-app/src/app/map/controls/export.component.spec.ts new file mode 100644 index 000000000..7a7ad90df --- /dev/null +++ b/web-app/src/app/map/controls/export.component.spec.ts @@ -0,0 +1,29 @@ +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; + +import { MatButtonModule } from '@angular/material/button'; +import { MatIconModule } from '@angular/material/icon'; +import { ExportControlComponent } from './export.component'; +import { MatTooltipModule } from '@angular/material/tooltip'; + +describe('Export Control Component', () => { + let component: ExportControlComponent; + let fixture: ComponentFixture; + + beforeEach(waitForAsync(() => { + TestBed.configureTestingModule({ + imports: [ MatIconModule, MatButtonModule, MatTooltipModule ], + declarations: [ ExportControlComponent ] + }) + .compileComponents(); + })); + + beforeEach(() => { + fixture = TestBed.createComponent(ExportControlComponent); + component = fixture.componentInstance; + fixture.detectChanges(); + }); + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/web-app/src/app/map/controls/export.component.ts b/web-app/src/app/map/controls/export.component.ts new file mode 100644 index 000000000..5fc6b9a54 --- /dev/null +++ b/web-app/src/app/map/controls/export.component.ts @@ -0,0 +1,23 @@ +import { Component, EventEmitter, Output, AfterViewInit, ElementRef, ViewChild } from '@angular/core'; +import { MatButton } from '@angular/material/button'; +import { DomEvent } from 'leaflet'; + +@Component({ + selector: 'map-control-export', + templateUrl: './export.component.html', + styleUrls: ['./export.component.scss'] +}) +export class ExportControlComponent implements AfterViewInit { + @ViewChild(MatButton, { read: ElementRef }) button: ElementRef; + + @Output() click = new EventEmitter(); + + ngAfterViewInit(): void { + DomEvent.disableClickPropagation(this.button.nativeElement); + } + + onClick($event: MouseEvent): void { + $event.stopPropagation(); + this.click.emit(); + } +} diff --git a/web-app/src/app/map/controls/filter.component.html b/web-app/src/app/map/controls/filter.component.html new file mode 100644 index 000000000..6ead8af3d --- /dev/null +++ b/web-app/src/app/map/controls/filter.component.html @@ -0,0 +1,3 @@ + diff --git a/web-app/src/app/map/controls/filter.component.scss b/web-app/src/app/map/controls/filter.component.scss new file mode 100644 index 000000000..e69de29bb diff --git a/web-app/src/app/map/controls/filter.component.spec.ts b/web-app/src/app/map/controls/filter.component.spec.ts new file mode 100644 index 000000000..068e40a5a --- /dev/null +++ b/web-app/src/app/map/controls/filter.component.spec.ts @@ -0,0 +1,28 @@ +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; + +import { MatButtonModule } from '@angular/material/button'; +import { MatIconModule } from '@angular/material/icon'; +import { FilterControlComponent } from './filter.component'; + +describe('Filter Control Component', () => { + let component: FilterControlComponent; + let fixture: ComponentFixture; + + beforeEach(waitForAsync(() => { + TestBed.configureTestingModule({ + imports: [ MatIconModule, MatButtonModule ], + declarations: [ FilterControlComponent ] + }) + .compileComponents(); + })); + + beforeEach(() => { + fixture = TestBed.createComponent(FilterControlComponent); + component = fixture.componentInstance; + fixture.detectChanges(); + }); + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/web-app/src/app/map/controls/filter.component.ts b/web-app/src/app/map/controls/filter.component.ts new file mode 100644 index 000000000..386de8974 --- /dev/null +++ b/web-app/src/app/map/controls/filter.component.ts @@ -0,0 +1,23 @@ +import { Component, EventEmitter, Output, AfterViewInit, ElementRef, ViewChild } from '@angular/core'; +import { MatButton } from '@angular/material/button'; +import { DomEvent } from 'leaflet'; + +@Component({ + selector: 'map-control-filter', + templateUrl: './filter.component.html', + styleUrls: ['./filter.component.scss'] +}) +export class FilterControlComponent implements AfterViewInit { + @ViewChild(MatButton, { read: ElementRef }) button: ElementRef; + + @Output() click = new EventEmitter(); + + ngAfterViewInit(): void { + DomEvent.disableClickPropagation(this.button.nativeElement); + } + + onClick($event: MouseEvent): void { + $event.stopPropagation(); + this.click.emit(); + } +} diff --git a/web-app/src/app/map/controls/layers-control.component.spec.ts b/web-app/src/app/map/controls/layers-control.component.spec.ts index 53ba86cac..d1a19eb21 100644 --- a/web-app/src/app/map/controls/layers-control.component.spec.ts +++ b/web-app/src/app/map/controls/layers-control.component.spec.ts @@ -1,4 +1,4 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; import { LayersControlComponent } from './layers-control.component'; import { MatIconModule } from '@angular/material/icon'; @@ -8,7 +8,7 @@ describe('LayersControlComponent', () => { let component: LayersControlComponent; let fixture: ComponentFixture; - beforeEach(async(() => { + beforeEach(waitForAsync(() => { TestBed.configureTestingModule({ imports: [ NoopAnimationsModule, MatIconModule ], declarations: [ LayersControlComponent ] diff --git a/web-app/src/app/map/controls/location.component.html b/web-app/src/app/map/controls/location.component.html index c82185d6e..463f4dd14 100644 --- a/web-app/src/app/map/controls/location.component.html +++ b/web-app/src/app/map/controls/location.component.html @@ -1,8 +1,8 @@
- -
\ No newline at end of file diff --git a/web-app/src/app/map/controls/location.component.spec.ts b/web-app/src/app/map/controls/location.component.spec.ts index 204162232..20a730a34 100644 --- a/web-app/src/app/map/controls/location.component.spec.ts +++ b/web-app/src/app/map/controls/location.component.spec.ts @@ -1,4 +1,4 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; import { LocationComponent, LocationState } from './location.component'; import { MatButtonModule } from '@angular/material/button'; @@ -10,7 +10,7 @@ describe('LocationComponent', () => { let component: LocationComponent; let fixture: ComponentFixture; - beforeEach(async(() => { + beforeEach(waitForAsync(() => { TestBed.configureTestingModule({ imports: [MatIconModule, MatButtonModule, MatTooltipModule], declarations: [ LocationComponent ] @@ -29,85 +29,76 @@ describe('LocationComponent', () => { }); it('should toggle locate on', () => { - spyOn(component.onLocate, 'emit'); + spyOn(component.stageChange, 'emit'); + component.state = LocationState.Off const button = fixture.debugElement.queryAll(By.css('button'))[0]; button.nativeElement.click(); - expect(component.onLocate.emit).toHaveBeenCalledWith({ - state: LocationState.ON + expect(component.stageChange.emit).toHaveBeenCalledWith({ + state: LocationState.Locate }); }); it('should toggle locate off', () => { - component.locateState = LocationState.ON; + component.state = LocationState.Locate; - spyOn(component.onLocate, 'emit'); + spyOn(component.stageChange, 'emit'); const button = fixture.debugElement.queryAll(By.css('button'))[0]; button.nativeElement.click(); - expect(component.onLocate.emit).toHaveBeenCalledWith({ - state: LocationState.OFF + expect(component.stageChange.emit).toHaveBeenCalledWith({ + state: LocationState.Off }); }); it('should toggle broadcast on', () => { - spyOn(component.onBroadcast, 'emit'); + spyOn(component.stageChange, 'emit'); const button = fixture.debugElement.queryAll(By.css('button'))[1]; button.nativeElement.click(); - expect(component.onBroadcast.emit).toHaveBeenCalledWith({ - state: LocationState.ON + expect(component.stageChange.emit).toHaveBeenCalledWith({ + state: LocationState.Broadcast }); }); it('should toggle broadcast off', () => { - component.broadcastState = LocationState.ON; + component.state = LocationState.Broadcast; - spyOn(component.onBroadcast, 'emit'); + spyOn(component.stageChange, 'emit'); const button = fixture.debugElement.queryAll(By.css('button'))[1]; button.nativeElement.click(); - expect(component.onBroadcast.emit).toHaveBeenCalledWith({ - state: LocationState.OFF + expect(component.stageChange.emit).toHaveBeenCalledWith({ + state: LocationState.Locate }); }); it('should toggle locate on if broadcast is on', () => { - spyOn(component.onLocate, 'emit'); - spyOn(component.onBroadcast, 'emit'); + spyOn(component.stageChange, 'emit'); + component.state = LocationState.Off const button = fixture.debugElement.queryAll(By.css('button'))[1]; button.nativeElement.click(); - expect(component.onBroadcast.emit).toHaveBeenCalledWith({ - state: LocationState.ON - }); - - expect(component.onLocate.emit).toHaveBeenCalledWith({ - state: LocationState.ON + expect(component.stageChange.emit).toHaveBeenCalledWith({ + state: LocationState.Broadcast }); }); it('should toggle broadcast off if locate is off', () => { - component.locateState = LocationState.ON; - component.broadcastState = LocationState.ON; + component.state = LocationState.Broadcast; - spyOn(component.onLocate, 'emit'); - spyOn(component.onBroadcast, 'emit'); + spyOn(component.stageChange, 'emit'); const button = fixture.debugElement.queryAll(By.css('button'))[0]; button.nativeElement.click(); - expect(component.onBroadcast.emit).toHaveBeenCalledWith({ - state: LocationState.OFF - }); - - expect(component.onLocate.emit).toHaveBeenCalledWith({ - state: LocationState.OFF + expect(component.stageChange.emit).toHaveBeenCalledWith({ + state: LocationState.Off }); }); }); diff --git a/web-app/src/app/map/controls/location.component.ts b/web-app/src/app/map/controls/location.component.ts index 9a77248fb..3aa433510 100644 --- a/web-app/src/app/map/controls/location.component.ts +++ b/web-app/src/app/map/controls/location.component.ts @@ -1,10 +1,11 @@ -import { Component, Output, EventEmitter, AfterViewInit, ElementRef, ViewChildren, QueryList } from '@angular/core'; +import { Component, Output, EventEmitter, AfterViewInit, ElementRef, ViewChildren, QueryList, Input } from '@angular/core'; import { DomEvent } from 'leaflet'; import { MatButton } from '@angular/material/button'; export enum LocationState { - ON, - OFF + Off, + Locate, + Broadcast } export interface LocationEvent { @@ -19,36 +20,22 @@ export interface LocationEvent { export class LocationComponent implements AfterViewInit { @ViewChildren(MatButton, { read: ElementRef }) buttons: QueryList; - @Output() onLocate = new EventEmitter(); - @Output() onBroadcast = new EventEmitter(); + @Input() state: LocationState + @Output() stageChange = new EventEmitter() - LocationState = LocationState; - locateState = LocationState.OFF; - broadcastState = LocationState.OFF; + LocationState = LocationState ngAfterViewInit(): void { - DomEvent.disableClickPropagation(this.buttons.first.nativeElement); - DomEvent.disableClickPropagation(this.buttons.last.nativeElement); + DomEvent.disableClickPropagation(this.buttons.first.nativeElement) + DomEvent.disableClickPropagation(this.buttons.last.nativeElement) } - locate(): void { - this.locateState = this.locateState === LocationState.ON ? LocationState.OFF : LocationState.ON; - - if (this.locateState === LocationState.OFF && this.broadcastState === LocationState.ON) { - this.broadcast(); - } - - this.onLocate.emit({ state: this.locateState }); + onLocate(): void { + this.stageChange.emit({ state: this.state === LocationState.Off ? LocationState.Locate : LocationState.Off }) } - broadcast(): void { - this.broadcastState = this.broadcastState === LocationState.ON ? LocationState.OFF : LocationState.ON; - - if (this.broadcastState === LocationState.ON && this.locateState === LocationState.OFF) { - this.locate(); - } - - this.onBroadcast.emit({ state: this.broadcastState }); + onBroadcast(): void { + this.stageChange.emit({ state: this.state === LocationState.Broadcast ? LocationState.Locate : LocationState.Broadcast }) } } diff --git a/web-app/src/app/map/controls/search.component.scss b/web-app/src/app/map/controls/search.component.scss index 22e54cea3..876a9391d 100644 --- a/web-app/src/app/map/controls/search.component.scss +++ b/web-app/src/app/map/controls/search.component.scss @@ -3,7 +3,6 @@ display: inline-flex; flex-direction: row; align-items: center; - margin-top: 32px; font-family: Roboto, "Helvetica Neue", sans-serif; font-size: 16px; } diff --git a/web-app/src/app/map/controls/search.component.spec.ts b/web-app/src/app/map/controls/search.component.spec.ts index 61cc67ecb..63dd3a6fe 100644 --- a/web-app/src/app/map/controls/search.component.spec.ts +++ b/web-app/src/app/map/controls/search.component.spec.ts @@ -1,4 +1,4 @@ -import { async, ComponentFixture, TestBed, getTestBed, tick, fakeAsync } from '@angular/core/testing'; +import { ComponentFixture, TestBed, getTestBed, tick, fakeAsync, waitForAsync } from '@angular/core/testing'; import { SearchComponent, SearchState } from './search.component'; import { MatButtonModule } from '@angular/material/button'; @@ -21,7 +21,7 @@ describe('SearchComponent', () => { let injector: TestBed; let service: PlacenameSearchService; - beforeEach(async(() => { + beforeEach(waitForAsync(() => { TestBed.configureTestingModule({ imports: [BrowserAnimationsModule, HttpClientTestingModule, MatCardModule, MatButtonModule, MatIconModule, MatInputModule, MatListModule, MatProgressSpinnerModule, MatSnackBarModule ], declarations: [ SearchComponent ], @@ -36,7 +36,7 @@ describe('SearchComponent', () => { fixture.detectChanges(); injector = getTestBed(); - service = injector.get(PlacenameSearchService); + service = injector.inject(PlacenameSearchService); }); it('should create', () => { @@ -85,7 +85,7 @@ describe('SearchComponent', () => { const input = fixture.debugElement.query(By.css('input')).nativeElement input.value = "test" - + const event = new KeyboardEvent("keydown", { "key": "Enter" }); diff --git a/web-app/src/app/map/controls/zoom.component.html b/web-app/src/app/map/controls/zoom.component.html index 88daf9af2..53b332507 100644 --- a/web-app/src/app/map/controls/zoom.component.html +++ b/web-app/src/app/map/controls/zoom.component.html @@ -1,8 +1,9 @@
- + +
diff --git a/web-app/src/app/map/controls/zoom.component.scss b/web-app/src/app/map/controls/zoom.component.scss index ad4f47ed2..689adb370 100644 --- a/web-app/src/app/map/controls/zoom.component.scss +++ b/web-app/src/app/map/controls/zoom.component.scss @@ -1,6 +1,7 @@ .zoom { display: inline-flex; - flex-direction: column; + flex-direction: row; + gap: 8px; } button:not(:last-child) { diff --git a/web-app/src/app/map/controls/zoom.component.spec.ts b/web-app/src/app/map/controls/zoom.component.spec.ts index fdf3c976f..99b094196 100644 --- a/web-app/src/app/map/controls/zoom.component.spec.ts +++ b/web-app/src/app/map/controls/zoom.component.spec.ts @@ -1,4 +1,4 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; import { ZoomComponent, ZoomDirection } from './zoom.component'; import { MatButtonModule } from '@angular/material/button'; @@ -9,7 +9,7 @@ describe('ZoomComponent', () => { let component: ZoomComponent; let fixture: ComponentFixture; - beforeEach(async(() => { + beforeEach(waitForAsync(() => { TestBed.configureTestingModule({ imports: [ MatIconModule, MatButtonModule ], declarations: [ ZoomComponent ] @@ -30,7 +30,7 @@ describe('ZoomComponent', () => { it('should emit zoom in', () => { spyOn(component.onZoom, 'emit'); - const button = fixture.debugElement.queryAll(By.css('button'))[0]; + const button = fixture.debugElement.queryAll(By.css('button'))[1]; button.nativeElement.click(); expect(component.onZoom.emit).toHaveBeenCalledWith({ @@ -41,7 +41,7 @@ describe('ZoomComponent', () => { it('should emit zoom out', () => { spyOn(component.onZoom, 'emit'); - const button = fixture.debugElement.queryAll(By.css('button'))[1]; + const button = fixture.debugElement.queryAll(By.css('button'))[0]; button.nativeElement.click(); expect(component.onZoom.emit).toHaveBeenCalledWith({ diff --git a/web-app/src/ng1/leaflet-extensions/FeatureEdit.js b/web-app/src/app/map/edit/FeatureEditor.ts similarity index 71% rename from web-app/src/ng1/leaflet-extensions/FeatureEdit.js rename to web-app/src/app/map/edit/FeatureEditor.ts index 202183c9e..e13085ee5 100644 --- a/web-app/src/ng1/leaflet-extensions/FeatureEdit.js +++ b/web-app/src/app/map/edit/FeatureEditor.ts @@ -1,14 +1,22 @@ -var L = require('leaflet'); - -class MageFeatureEdit { - constructor(map, feature, delegate) { +import { DomUtil, geoJSON, GeoJSON, Map, marker, point, tooltip, Tooltip } from "leaflet"; +import { fixedWidthIcon } from "../marker/FixedWidthIcon"; + +export class FeatureEditor { + private map: Map + private layer: any + private editedFeature: any + private tooltip: Tooltip + private vertexClickListener: any + private geometryChangedListener: any + + constructor(map: Map, feature: any, delegate: any) { this.map = map; this.geometryChangedListener = delegate.geometryChanged || function () { }; this.vertexClickListener = delegate.vertexClick || function () { }; - this.tooltip = new L.tooltip({ + this.tooltip = tooltip({ className: 'overlay-tooltip', - offset: L.point(20, 0), + offset: point(20, 0), direction: 'right', permanent: true }); @@ -19,28 +27,29 @@ class MageFeatureEdit { if (feature.geometry.type === 'Point') { if (feature.geometry.coordinates.length) { - this.map.setView(L.GeoJSON.coordsToLatLng(feature.geometry.coordinates), 17); + this.map.setView(GeoJSON.coordsToLatLng(feature.geometry.coordinates), 17); } else { let center = this.map.getCenter(); feature.geometry.coordinates = [center.lng, center.lat]; } - this.layer = L.geoJson(feature, { - pointToLayer: (_, latlng) => { - return L.fixedWidthMarker(latlng, { - icon: L.fixedWidthIcon({ - iconUrl: feature.style ? feature.style.iconUrl : '', - tooltip: true - }), - tooltip: true + this.layer = geoJSON(feature, { + pointToLayer: (_, latLng) => { + return marker(latLng, { + icon: fixedWidthIcon({ + iconUrl: feature?.style?.iconUrl, + html: 'Edit Observation
Drag this marker to re-position
' + }) }); } }).getLayers()[0]; - this.layer.addTo(this.map); + + this.layer.addTo(this.map) + this.initiatePointEdit(); } else { if (feature.geometry.coordinates.length) { - this.layer = L.geoJson(feature, { + this.layer = geoJSON(feature, { style: () => { return feature.style; } @@ -100,10 +109,10 @@ class MageFeatureEdit { }); } - initiateShapeEdit(selectVertexIndex) { + initiateShapeEdit(selectVertexIndex?: any) { this.layer.enableEdit(); this.layer.selectedVertex = this.layer.editor.editLayer.getLayers()[selectVertexIndex || 0]; - L.DomUtil.addClass(this.layer.selectedVertex.getElement(), 'selected-marker'); + DomUtil.addClass(this.layer.selectedVertex.getElement(), 'selected-marker'); this._addEditEvents(this.layer); } @@ -137,9 +146,9 @@ class MageFeatureEdit { _selectVertex(layer, vertex) { layer.editor.editLayer.eachLayer(function (layer) { - L.DomUtil.removeClass(layer.getElement(), 'selected-marker'); + DomUtil.removeClass(layer.getElement(), 'selected-marker'); }); - L.DomUtil.addClass(vertex.getElement(), 'selected-marker'); + DomUtil.addClass(vertex.getElement(), 'selected-marker'); layer.selectedVertex = vertex; this.vertexClickListener({ index: vertex.getIndex(), @@ -150,10 +159,10 @@ class MageFeatureEdit { addTooltip (e) { this.map.on('mousemove', this.moveTooltip, this); - if (e.layer.editor instanceof L.Editable.PolylineEditor) { - this.tooltip.setContent('Edit Observation
Click on the map to start a line
'); - } else { + if (this.isPolygonEditor(e.layer.editor)) { this.tooltip.setContent('Edit Observation
Click on the map to start a polygon
'); + } else { + this.tooltip.setContent('Edit Observation
Click on the map to start a line
'); } const center = this.map.getCenter(); @@ -176,19 +185,21 @@ class MageFeatureEdit { updateTooltip (e) { if (e.layer.editor._drawnLatLngs.length < e.layer.editor.MIN_VERTEX) { - if (e.layer.editor instanceof L.Editable.PolylineEditor) { - this.tooltip.setContent('Edit Observation

Click on the map to continue line

'); + if (this.isPolygonEditor(e.layer.editor)) { + this.tooltip.setContent('Edit Observation
Click on the map to continue polygon
'); } else { - this.tooltip.setContent('Edit Observation

Click on the map to continue polygon

'); + this.tooltip.setContent('Edit Observation
Click on the map to continue line
'); } } else { - if (e.layer.editor instanceof L.Editable.PolylineEditor) { - this.tooltip.setContent('Edit Observation

Click on last point to finish line

'); + if (this.isPolygonEditor(e.layer.editor)) { + this.tooltip.setContent('Edit Observation
Click on last point to finish polygon
'); } else { - this.tooltip.setContent('Edit Observation

Click on last point to finish polygon

'); + this.tooltip.setContent('Edit Observation
Click on last point to finish line
'); } } } -} -module.exports = MageFeatureEdit; \ No newline at end of file + isPolygonEditor(editor: any): boolean { + return typeof editor.newHole === 'function' + } +} \ No newline at end of file diff --git a/web-app/src/ng1/leaflet-extensions/GeoPackageLayer.ts b/web-app/src/app/map/geopackage/GeoPackageLayer.ts similarity index 95% rename from web-app/src/ng1/leaflet-extensions/GeoPackageLayer.ts rename to web-app/src/app/map/geopackage/GeoPackageLayer.ts index 5c6fb571f..6659d4ef5 100644 --- a/web-app/src/ng1/leaflet-extensions/GeoPackageLayer.ts +++ b/web-app/src/app/map/geopackage/GeoPackageLayer.ts @@ -1,5 +1,5 @@ import { TileLayer, TileLayerOptions, Util } from 'leaflet'; -import { SimpleStyle } from 'src/app/map/layers/layer.service'; +import { SimpleStyle } from '../layers/layer.service'; export interface GeoPackageLayerOptions extends TileLayerOptions { token: string; diff --git a/web-app/src/ng1/leaflet-extensions/GeoPackageLayers.ts b/web-app/src/app/map/geopackage/GeoPackageLayers.ts similarity index 90% rename from web-app/src/ng1/leaflet-extensions/GeoPackageLayers.ts rename to web-app/src/app/map/geopackage/GeoPackageLayers.ts index c49a02025..ebb9a298b 100644 --- a/web-app/src/ng1/leaflet-extensions/GeoPackageLayers.ts +++ b/web-app/src/app/map/geopackage/GeoPackageLayers.ts @@ -7,16 +7,14 @@ export default class GeoPackageLayers { closestLayer: Layer & { feature?: { layerId?: number; gp_table?: string } }; constructor( public map: Map, - public layerControl: any, - public LayerService: any, - public FilterService: any, - public LocalStorageService: any + public layerService: any, + public filterService: any, + public localStorageService: any ) { this.map = map; - this.layerControl = layerControl; - this.LayerService = LayerService; - this.FilterService = FilterService; - this.LocalStorageService = LocalStorageService; + this.layerService = layerService; + this.filterService = filterService; + this.localStorageService = localStorageService; this.visibleGeoPackageLayers = []; this.map.on('click', this.mapClickEventHandler.bind(this)); @@ -25,9 +23,9 @@ export default class GeoPackageLayers { } createGeoPackageLayer(table, id, pane): Layer { - const filteredEvent = this.FilterService.getEvent(); + const filteredEvent = this.filterService.getEvent(); const layer = new GeoPackageLayer('api/events/' + filteredEvent.id + '/layers/' + id + '/' + table.name + '/{z}/{x}/{y}.png', { - token: this.LocalStorageService.getToken(), + token: this.localStorageService.getToken(), minZoom: table.minZoom, maxZoom: table.maxZoom, layerId: id, @@ -95,7 +93,7 @@ export default class GeoPackageLayers { }; }); - this.LayerService.getClosestFeaturesForLayers(layers, event.latlng, this.getTileFromPoint(event.latlng)).then(features => { + this.layerService.getClosestFeaturesForLayers(layers, event.latlng, this.getTileFromPoint(event.latlng)).then(features => { if (this.closestLayer) { this.map.removeLayer(this.closestLayer); } diff --git a/web-app/src/app/map/layers/gars/GARSLayer.ts b/web-app/src/app/map/layers/gars/GARSLayer.ts new file mode 100644 index 000000000..77db040ba --- /dev/null +++ b/web-app/src/app/map/layers/gars/GARSLayer.ts @@ -0,0 +1,81 @@ +import { Grids, ZoomGrids } from '@ngageoint/gars-js'; +import { GridTile } from '@ngageoint/grid-js'; +import { Coords, DoneCallback, DomUtil, GridLayerOptions, GridLayer } from 'leaflet'; +import { TileDraw } from './TileDraw'; + +export class GARSLayer extends GridLayer { + + private readonly grids: Grids; + + constructor(options?: GridLayerOptions) { + super(options); + this.grids = Grids.create() + } + + /** + * @inheritdoc + */ + protected createTile(coords: Coords, done: DoneCallback): HTMLElement { + const zoom = coords.z; + + // create a element for drawing + const tile = DomUtil.create('canvas', 'leaflet-tile') as HTMLCanvasElement; + + // setup tile width and height according to the options + const size = this.getTileSize(); + tile.width = size.x; + tile.height = size.y; + + const context = tile.getContext('2d', { alpha: true }); + context.clearRect(0, 0, tile.width, tile.height); + + if (tile.getContext) { + this.drawTile(context, tile, coords.x, coords.y, zoom).then(() => { + done(null, tile); + }).catch(err => { + done(err); + }); + } + + // return the tile so it can be rendered on screen + return tile; + } + + /** + * Draw the tile + * + * @param tile tile + * @param x x coordinate + * @param y y coordinate + * @param zoom zoom level + * @return bitmap + */ + private drawTile(context: CanvasRenderingContext2D, tile: HTMLCanvasElement, x: number, y: number, zoom: number): Promise { + const zoomGrids = this.grids.getGrids(zoom); + if (zoomGrids.hasGrids()) { + this.drawTileFromTile(context, GridTile.tile(tile.width, tile.height, x, y, zoom), zoomGrids); + } + return Promise.resolve(); + } + + /** + * Draw the tile + * + * @param gridTile tile + * @param zoomGrids zoom grids + * @return bitmap tile + */ + private drawTileFromTile(context: CanvasRenderingContext2D, gridTile: GridTile, zoomGrids: ZoomGrids): void { + for (const grid of zoomGrids.getGrids()) { + const lines = grid.getLinesFromGridTile(gridTile); + if (lines) { + TileDraw.drawLines(lines, gridTile, grid, context); + } + + const labels = grid.getLabelsFromGridTile(gridTile); + if (labels) { + TileDraw.drawLabels(labels, gridTile, grid, context); + } + } + } +} diff --git a/web-app/src/app/map/layers/gars/TileDraw.ts b/web-app/src/app/map/layers/gars/TileDraw.ts new file mode 100644 index 000000000..89f72a305 --- /dev/null +++ b/web-app/src/app/map/layers/gars/TileDraw.ts @@ -0,0 +1,99 @@ +import { Grid, GridLabel, GridLine } from '@ngageoint/gars-js'; +import { GridTile } from '@ngageoint/grid-js'; + +/** + * Tile draw utilities for lines and labels + * + */ +export class TileDraw { + + /** + * Draw the lines on the tile + * + * @param lines lines to draw + * @param tile tile + * @param grid grid + * @param context draw canvas + */ + public static drawLines(lines: GridLine[], tile: GridTile, grid: Grid, context: CanvasRenderingContext2D): void { + + for (const line of lines) { + context.beginPath(); + this.addPolyline(tile, context, line); + context.lineWidth = grid.getWidth(line.getGridType()); + context.strokeStyle = grid.getColor(line.getGridType()).getColorHex(); + context.stroke(); + } + } + + /** + * Add the polyline to the path + * + * @param tile tile + * @param context line path + * @param line line to draw + */ + private static addPolyline(tile: GridTile, context: CanvasRenderingContext2D, line: GridLine): void { + + const metersLine = line.toMeters(); + const point1 = metersLine.getPoint1(); + const point2 = metersLine.getPoint2(); + + const pixel = point1.getPixelFromTile(tile); + context.moveTo(pixel.getX(), pixel.getY()); + + const pixel2 = point2.getPixelFromTile(tile); + context.lineTo(pixel2.getX(), pixel2.getY()); + } + + /** + * Draw the labels on the tile + * + * @param labels labels to draw + * @param tile tile + * @param grid grid + * @param context draw canvas + */ + public static drawLabels(labels: GridLabel[], tile: GridTile, grid: Grid, context: CanvasRenderingContext2D): void { + for (const label of labels) { + this.drawLabel(label, tile, grid, context); + } + } + + /** + * Draw the label + * + * @param label label to draw + * @param tile tile + * @param grid grid + * @param context draw canvas + */ + public static drawLabel(label: GridLabel, tile: GridTile, grid: Grid, context: CanvasRenderingContext2D): void { + + const name = label.getName(); + const textHeight = 12; + context.font = textHeight.toString() + 'px monospace'; + context.fillStyle = grid.getLabeler().getColor().getColorHex(); + context.textBaseline = 'middle'; + context.textAlign = 'center'; + + const textMetrics = context.measureText(name); + + // Determine the text bounds + const textWidth = textMetrics.width; + + // Determine the pixel width and height of the label grid zone to the tile + const pixelRange = label.getBounds().getPixelRangeFromTile(tile); + + // Determine the maximum width and height a label in the grid should be + const gridPercentage = 1.0 - (2 * grid.getLabelBuffer()); + const maxWidth = gridPercentage * pixelRange.getWidth(); + const maxHeight = gridPercentage * pixelRange.getHeight(); + + // If it fits, draw the label in the center of the grid zone + if (textWidth <= maxWidth && textHeight <= maxHeight) { + const centerPixel = label.getCenter().getPixelFromTile(tile); + context.fillText(name, centerPixel.getX(), centerPixel.getY()); + } + } +} diff --git a/web-app/src/app/map/layers/layer-content.component.spec.ts b/web-app/src/app/map/layers/layer-content.component.spec.ts index e930003aa..e4382936d 100644 --- a/web-app/src/app/map/layers/layer-content.component.spec.ts +++ b/web-app/src/app/map/layers/layer-content.component.spec.ts @@ -1,4 +1,4 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; import { LayerContentComponent } from './layer-content.component'; import { MatCardModule } from '@angular/material/card'; @@ -9,7 +9,7 @@ import { MatSliderModule } from '@angular/material/slider'; import { ColorPickerComponent } from 'src/app/color-picker/color-picker.component'; import { CheckboardModule, SaturationModule, HueModule, AlphaModule } from 'ngx-color'; import { FormsModule } from '@angular/forms'; -import { LayerService } from './layer.service'; +import { MapLayerService } from './layer.service'; import { Component, ViewChild } from '@angular/core'; @Component({ @@ -32,10 +32,10 @@ describe('LayerContentComponent', () => { let hostComponent: TestHostComponent; let fixture: ComponentFixture; - beforeEach(async(() => { + beforeEach(waitForAsync(() => { TestBed.configureTestingModule({ imports: [ FormsModule, MatInputModule, MatFormFieldModule, MatCardModule, MatSliderModule, MatIconModule, CheckboardModule, SaturationModule, HueModule, AlphaModule ], - providers: [ LayerService ], + providers: [MapLayerService ], declarations: [ ColorPickerComponent, TestHostComponent, LayerContentComponent ] }) .compileComponents(); diff --git a/web-app/src/app/map/layers/layer-content.component.ts b/web-app/src/app/map/layers/layer-content.component.ts index 7386dab50..a29fbbb07 100644 --- a/web-app/src/app/map/layers/layer-content.component.ts +++ b/web-app/src/app/map/layers/layer-content.component.ts @@ -1,6 +1,6 @@ import { Component, Input, ViewChild, ElementRef } from '@angular/core'; import { MatSliderChange } from '@angular/material/slider'; -import { LayerService, SimpleStyle } from './layer.service'; +import { MapLayerService, SimpleStyle } from './layer.service'; import { ColorEvent } from 'src/app/color-picker/color-picker.component'; import { trigger, style, transition, animate } from '@angular/animations'; @@ -29,7 +29,7 @@ export class LayerContentComponent { showColorPicker = false; stroke = '#000000'; - constructor(private layerService: LayerService) {} + constructor(private layerService: MapLayerService) {} toggleStyle(): void { if (this.style) { diff --git a/web-app/src/app/map/layers/layer-header.component.spec.ts b/web-app/src/app/map/layers/layer-header.component.spec.ts index 1b662eb92..061f69ffc 100644 --- a/web-app/src/app/map/layers/layer-header.component.spec.ts +++ b/web-app/src/app/map/layers/layer-header.component.spec.ts @@ -1,4 +1,4 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; import { LayerHeaderComponent } from './layer-header.component'; import { MatCheckboxModule } from '@angular/material/checkbox'; @@ -6,7 +6,7 @@ import { MatFormFieldModule } from '@angular/material/form-field'; import { MatIconModule } from '@angular/material/icon'; import { MatRadioModule } from '@angular/material/radio'; import { Component, ViewChild } from '@angular/core'; -import { LayerService } from './layer.service'; +import { MapLayerService } from './layer.service'; import { NoopAnimationsModule } from '@angular/platform-browser/animations'; import { By } from '@angular/platform-browser'; @@ -30,10 +30,10 @@ describe('LayerHeaderComponent', () => { let hostComponent: TestHostComponent; let fixture: ComponentFixture; - beforeEach(async(() => { + beforeEach(waitForAsync(() => { TestBed.configureTestingModule({ imports: [ NoopAnimationsModule, MatFormFieldModule, MatCheckboxModule, MatRadioModule, MatIconModule ], - providers: [ LayerService ], + providers: [MapLayerService ], declarations: [ LayerHeaderComponent, TestHostComponent ] }) .compileComponents(); diff --git a/web-app/src/app/map/layers/layer-header.component.ts b/web-app/src/app/map/layers/layer-header.component.ts index d29319c30..3730117c3 100644 --- a/web-app/src/app/map/layers/layer-header.component.ts +++ b/web-app/src/app/map/layers/layer-header.component.ts @@ -1,6 +1,6 @@ import { Component, Input, Output, EventEmitter } from '@angular/core'; import { MatCheckboxChange } from '@angular/material/checkbox'; -import { LayerService } from './layer.service'; +import { MapLayerService } from './layer.service'; import { state, style, trigger } from '@angular/animations'; @Component({ @@ -21,7 +21,7 @@ export class LayerHeaderComponent { expanded = false; - constructor(private layerService: LayerService) {} + constructor(private layerService: MapLayerService) {} hasBounds(): boolean { const mapLayer = this.layer.layer; diff --git a/web-app/src/app/map/layers/layer.service.spec.ts b/web-app/src/app/map/layers/layer.service.spec.ts index ec45c3f23..17171e90a 100644 --- a/web-app/src/app/map/layers/layer.service.spec.ts +++ b/web-app/src/app/map/layers/layer.service.spec.ts @@ -1,19 +1,19 @@ import { TestBed } from '@angular/core/testing'; -import { LayerService } from './layer.service'; +import { MapLayerService } from './layer.service'; describe('LayerService', () => { beforeEach(() => TestBed.configureTestingModule({ - providers: [ LayerService ] + providers: [MapLayerService ] })); it('should be created', () => { - const service: LayerService = TestBed.inject(LayerService); + const service: MapLayerService = TestBed.inject(MapLayerService); expect(service).toBeTruthy(); }); it('should toggle on', (done) => { - const service: LayerService = TestBed.inject(LayerService); + const service: MapLayerService = TestBed.inject(MapLayerService); const layer = {}; const checked = true; @@ -28,7 +28,7 @@ describe('LayerService', () => { }); it('should toggle off', (done) => { - const service: LayerService = TestBed.inject(LayerService); + const service: MapLayerService = TestBed.inject(MapLayerService); const layer = {}; const checked = false; @@ -42,7 +42,7 @@ describe('LayerService', () => { }); it('should toggle zoom', (done) => { - const service: LayerService = TestBed.inject(LayerService); + const service: MapLayerService = TestBed.inject(MapLayerService); const layer = {}; service.zoom$.subscribe(event => { @@ -54,7 +54,7 @@ describe('LayerService', () => { }); it('should change opacity', (done) => { - const service: LayerService = TestBed.inject(LayerService); + const service: MapLayerService = TestBed.inject(MapLayerService); const layer = {}; const opacity = .5; @@ -68,7 +68,7 @@ describe('LayerService', () => { }); it('should change style', (done) => { - const service: LayerService = TestBed.inject(LayerService); + const service: MapLayerService = TestBed.inject(MapLayerService); const layer = {}; const style = { stroke: '#FFFFFF', fill: '#000000', width: 2}; diff --git a/web-app/src/app/map/layers/layer.service.ts b/web-app/src/app/map/layers/layer.service.ts index 7ec64ef75..747ffcd86 100644 --- a/web-app/src/app/map/layers/layer.service.ts +++ b/web-app/src/app/map/layers/layer.service.ts @@ -26,42 +26,44 @@ export interface StyleEvent { style: SimpleStyle; } -@Injectable() -export class LayerService { - private toggleSource = new Subject(); - private zoomSource = new Subject(); - private opacitySource = new Subject(); - private styleSource = new Subject(); +@Injectable({ + providedIn: 'root' +}) +export class MapLayerService { + private toggleSource = new Subject() + private zoomSource = new Subject() + private opacitySource = new Subject() + private styleSource = new Subject() - toggle$ = this.toggleSource.asObservable(); - zoom$ = this.zoomSource.asObservable(); - opacity$ = this.opacitySource.asObservable(); - style$ = this.styleSource.asObservable(); + toggle$ = this.toggleSource.asObservable() + zoom$ = this.zoomSource.asObservable() + opacity$ = this.opacitySource.asObservable() + style$ = this.styleSource.asObservable() toggle(layer: any, value: boolean): void { this.toggleSource.next({ layer: layer, value: value - }); + }) } zoom(layer: any): void { this.zoomSource.next({ layer: layer - }); + }) } opacity(layer: any, opacity: number): void { this.opacitySource.next({ layer: layer, opacity: opacity - }); + }) } style(layer: any, style: SimpleStyle): void { this.styleSource.next({ layer: layer, style: style - }); + }) } } diff --git a/web-app/src/app/map/layers/layers.component.html b/web-app/src/app/map/layers/layers.component.html index 454e9f813..424293a15 100644 --- a/web-app/src/app/map/layers/layers.component.html +++ b/web-app/src/app/map/layers/layers.component.html @@ -1,5 +1,5 @@
-

MAGE

+

Mage

@@ -25,6 +25,19 @@

MAGE

+

Grid Overlays

+ + + + + + + + + + + +

Feeds

diff --git a/web-app/src/app/map/layers/layers.component.scss b/web-app/src/app/map/layers/layers.component.scss index 22080b80f..bd1e33ea3 100644 --- a/web-app/src/app/map/layers/layers.component.scss +++ b/web-app/src/app/map/layers/layers.component.scss @@ -1,10 +1,10 @@ -@import '~@angular/material/theming'; +@use '@angular/material' as mat; @import "variables.scss"; .header { margin: 16px 0; font: 400 16px/24px Roboto, "Helvetica Neue", sans-serif; - color: mat-color($app-primary); + color: mat.get-color-from-palette($app-primary); } .map-layers { diff --git a/web-app/src/app/map/layers/layers.component.spec.ts b/web-app/src/app/map/layers/layers.component.spec.ts index e25c3a77f..d40b7879a 100644 --- a/web-app/src/app/map/layers/layers.component.spec.ts +++ b/web-app/src/app/map/layers/layers.component.spec.ts @@ -1,4 +1,4 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; import { LayersComponent } from './layers.component'; import { LayerHeaderComponent } from './layer-header.component'; @@ -17,11 +17,12 @@ import { Component, ViewChild } from '@angular/core'; @Component({ selector: `host-component`, - template: ` + template: ` ` }) class TestHostComponent { @@ -30,6 +31,7 @@ class TestHostComponent { baseLayers= []; tileOverlays = []; featureOverlays = []; + gridOverlays = []; @ViewChild(LayersComponent) layers: LayersComponent; } @@ -40,7 +42,7 @@ describe('LayersComponent', () => { let hostComponent: TestHostComponent; let fixture: ComponentFixture; - beforeEach(async(() => { + beforeEach(waitForAsync(() => { TestBed.configureTestingModule({ imports: [ FormsModule, MatCardModule, MatFormFieldModule, MatIconModule, MatSliderModule, MatCheckboxModule, MatRadioModule, MatExpansionModule, CheckboardModule, HueModule, SaturationModule, AlphaModule ], declarations: [ LayersComponent, LayerHeaderComponent, LayerContentComponent, ColorPickerComponent, TestHostComponent ] diff --git a/web-app/src/app/map/layers/layers.component.ts b/web-app/src/app/map/layers/layers.component.ts index 33e29bc8a..d23fc2d99 100644 --- a/web-app/src/app/map/layers/layers.component.ts +++ b/web-app/src/app/map/layers/layers.component.ts @@ -20,6 +20,7 @@ export class LayersComponent { @Input() baseLayers: [any]; @Input() tileOverlays: [any]; @Input() featureOverlays: [any]; + @Input() gridOverlays: [any]; @Output() onReorder = new EventEmitter(); diff --git a/web-app/src/app/map/layers/mgrs/MGRSLayer.ts b/web-app/src/app/map/layers/mgrs/MGRSLayer.ts new file mode 100644 index 000000000..d4ca69526 --- /dev/null +++ b/web-app/src/app/map/layers/mgrs/MGRSLayer.ts @@ -0,0 +1,87 @@ +import { Grids, GridZones, ZoomGrids } from '@ngageoint/mgrs-js'; +import { GridTile } from '@ngageoint/grid-js'; +import { Coords, DoneCallback, DomUtil, GridLayerOptions, GridLayer } from 'leaflet'; +import { TileDraw } from './TileDraw'; + +export class MGRSLayer extends GridLayer { + + private readonly grids: Grids; + + constructor(options?: GridLayerOptions) { + super(options); + this.grids = Grids.create() + } + + /** + * @inheritdoc + */ + protected createTile(coords: Coords, done: DoneCallback): HTMLElement { + const zoom = coords.z; + + // create a element for drawing + const tile = DomUtil.create('canvas', 'leaflet-tile') as HTMLCanvasElement; + + // setup tile width and height according to the options + const size = this.getTileSize(); + tile.width = size.x; + tile.height = size.y; + + const context = tile.getContext('2d', { alpha: true }); + context.clearRect(0, 0, tile.width, tile.height); + + if (tile.getContext) { + this.drawTile(context, tile, coords.x, coords.y, zoom).then(() => { + done(null, tile); + }).catch(err => { + done(err); + }); + } + + // return the tile so it can be rendered on screen + return tile; + } + + /** + * Draw the tile + * + * @param tile tile + * @param x x coordinate + * @param y y coordinate + * @param zoom zoom level + * @return bitmap + */ + private drawTile(context: CanvasRenderingContext2D, tile: HTMLCanvasElement, x: number, y: number, zoom: number): Promise { + const zoomGrids = this.grids.getGrids(zoom); + if (zoomGrids.hasGrids()) { + this.drawTileFromTile(context, GridTile.tile(tile.width, tile.height, x, y, zoom), zoomGrids); + } + return Promise.resolve(); + } + + /** + * Draw the tile + * + * @param gridTile tile + * @param zoomGrids zoom grids + * @return bitmap tile + */ + private drawTileFromTile(context: CanvasRenderingContext2D, gridTile: GridTile, zoomGrids: ZoomGrids): void { + + const gridRange = GridZones.getGridRange(gridTile.getBounds()); + + for (const grid of zoomGrids.getGrids()) { + gridRange.reset(); + for (const zone of gridRange) { + const lines = grid.getLinesFromGridTile(gridTile, zone); + if (lines) { + TileDraw.drawLines(lines, gridTile, grid, zone, context); + } + + const labels = grid.getLabelsFromGridTile(gridTile, zone); + if (labels) { + TileDraw.drawLabels(labels, gridTile, grid, context); + } + } + } + } +} diff --git a/web-app/src/app/map/layers/mgrs/TileDraw.ts b/web-app/src/app/map/layers/mgrs/TileDraw.ts new file mode 100644 index 000000000..0e92d0c89 --- /dev/null +++ b/web-app/src/app/map/layers/mgrs/TileDraw.ts @@ -0,0 +1,108 @@ +import { Grid, GridLabel, GridLine, GridZone } from '@ngageoint/mgrs-js'; +import { GridTile } from '@ngageoint/grid-js'; + +/** + * Tile draw utilities for lines and labels + */ +export class TileDraw { + + /** + * Draw the lines on the tile + * + * @param lines lines to draw + * @param tile tile + * @param grid grid + * @param context draw canvas + */ + public static drawLines(lines: GridLine[], tile: GridTile, grid: Grid, zone: GridZone, context: CanvasRenderingContext2D): void { + + const bounds = zone.getBounds(); + const pixelRange = bounds.getPixelRangeFromTile(tile); + + context.save(); + const region = new Path2D(); + region.rect(pixelRange.getLeft(), pixelRange.getTop(), pixelRange.getWidth(), pixelRange.getHeight()); + context.clip(region); + + for (const line of lines) { + context.beginPath(); + this.addPolyline(tile, context, line); + context.lineWidth = grid.getWidth(line.getGridType()); + context.strokeStyle = grid.getColor(line.getGridType()).getColorHex(); + context.stroke(); + } + + context.restore(); + } + + /** + * Add the polyline to the path + * + * @param tile tile + * @param context line path + * @param line line to draw + */ + private static addPolyline(tile: GridTile, context: CanvasRenderingContext2D, line: GridLine): void { + + const metersLine = line.toMeters(); + const point1 = metersLine.getPoint1(); + const point2 = metersLine.getPoint2(); + + const pixel = point1.getPixelFromTile(tile); + context.moveTo(pixel.getX(), pixel.getY()); + + const pixel2 = point2.getPixelFromTile(tile); + context.lineTo(pixel2.getX(), pixel2.getY()); + } + + /** + * Draw the labels on the tile + * + * @param labels labels to draw + * @param tile tile + * @param grid grid + * @param context draw canvas + */ + public static drawLabels(labels: GridLabel[], tile: GridTile, grid: Grid, context: CanvasRenderingContext2D): void { + for (const label of labels) { + this.drawLabel(label, tile, grid, context); + } + } + + /** + * Draw the label + * + * @param label label to draw + * @param tile tile + * @param grid grid + * @param context draw canvas + */ + public static drawLabel(label: GridLabel, tile: GridTile, grid: Grid, context: CanvasRenderingContext2D): void { + + const name = label.getName(); + const textHeight = 12; + context.font = textHeight.toString() + 'px monospace'; + context.fillStyle = grid.getLabeler().getColor().getColorHex(); + context.textBaseline = 'middle'; + context.textAlign = 'center'; + + const textMetrics = context.measureText(name); + + // Determine the text bounds + const textWidth = textMetrics.width; + + // Determine the pixel width and height of the label grid zone to the tile + const pixelRange = label.getBounds().getPixelRangeFromTile(tile); + + // Determine the maximum width and height a label in the grid should be + const gridPercentage = 1.0 - (2 * grid.getLabelBuffer()); + const maxWidth = gridPercentage * pixelRange.getWidth(); + const maxHeight = gridPercentage * pixelRange.getHeight(); + + // If it fits, draw the label in the center of the grid zone + if (textWidth <= maxWidth && textHeight <= maxHeight) { + const centerPixel = label.getCenter().getPixelFromTile(tile); + context.fillText(name, centerPixel.getX(), centerPixel.getY()); + } + } +} diff --git a/web-app/src/app/map/layers/static/layers.ts b/web-app/src/app/map/layers/static/layers.ts new file mode 100644 index 000000000..96eef80b6 --- /dev/null +++ b/web-app/src/app/map/layers/static/layers.ts @@ -0,0 +1,295139 @@ +import { FeatureCollection } from "geojson"; + +export const COUNTRIES: FeatureCollection = { + "type": "FeatureCollection", + "features": [ + { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + -24.39, + 14.81 + ], + [ + -24.5, + 14.92 + ], + [ + -24.37, + 15.05 + ], + [ + -24.28, + 14.88 + ], + [ + -24.39, + 14.81 + ] + ] + ], + [ + [ + [ + -23.68, + 15.31 + ], + [ + -23.44, + 15.04 + ], + [ + -23.48, + 14.91 + ], + [ + -23.78, + 15.06 + ], + [ + -23.68, + 15.31 + ] + ] + ], + [ + [ + [ + -24.32, + 16.49 + ], + [ + -24.42, + 16.65 + ], + [ + -24.01, + 16.57 + ], + [ + -24.32, + 16.49 + ] + ] + ], + [ + [ + [ + -25.09, + 17.2 + ], + [ + -24.99, + 17.06 + ], + [ + -25.3, + 16.91 + ], + [ + -25.34, + 17.09 + ], + [ + -25.09, + 17.2 + ] + ] + ], + [ + [ + [ + -23.12, + 15.14 + ], + [ + -23.23, + 15.15 + ], + [ + -23.18, + 15.34 + ], + [ + -23.12, + 15.14 + ] + ] + ], + [ + [ + [ + -22.91, + 16.15 + ], + [ + -22.79, + 16.23 + ], + [ + -22.67, + 16.08 + ], + [ + -22.88, + 15.97 + ], + [ + -22.91, + 16.15 + ] + ] + ], + [ + [ + [ + -22.94, + 16.68 + ], + [ + -22.92, + 16.86 + ], + [ + -22.89, + 16.59 + ], + [ + -22.94, + 16.68 + ] + ] + ] + ] + }, + "properties": { + "A3": "CPV" + } + }, + { + "type": "Feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + -68.31, + 12.2 + ], + [ + -68.39, + 12.31 + ], + [ + -68.21, + 12.11 + ], + [ + -68.31, + 12.2 + ] + ] + ] + }, + "properties": { + "A3": "BES" + } + }, + { + "type": "Feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + 9.53, + 47.27 + ], + [ + 9.61, + 47.06 + ], + [ + 9.48, + 47.06 + ], + [ + 9.47, + 47.06 + ], + [ + 9.51, + 47.08 + ], + [ + 9.51, + 47.09 + ], + [ + 9.52, + 47.1 + ], + [ + 9.52, + 47.12 + ], + [ + 9.51, + 47.13 + ], + [ + 9.49, + 47.16 + ], + [ + 9.49, + 47.17 + ], + [ + 9.49, + 47.18 + ], + [ + 9.49, + 47.2 + ], + [ + 9.5, + 47.21 + ], + [ + 9.51, + 47.23 + ], + [ + 9.52, + 47.25 + ], + [ + 9.53, + 47.26 + ], + [ + 9.53, + 47.27 + ] + ] + ] + }, + "properties": { + "A3": "LIE" + } + }, + { + "type": "Feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + -4.46, + 54.17 + ], + [ + -4.79, + 54.06 + ], + [ + -4.37, + 54.42 + ], + [ + -4.46, + 54.17 + ] + ] + ] + }, + "properties": { + "A3": "IMN" + } + }, + { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + 140.91, + -6.56 + ], + [ + 141, + -6.31 + ], + [ + 141, + -6.29 + ], + [ + 141, + -4.18 + ], + [ + 141, + -4.16 + ], + [ + 141, + -4.15 + ], + [ + 141, + -4.14 + ], + [ + 141, + -2.6 + ], + [ + 142.53, + -3.23 + ], + [ + 143.5, + -3.44 + ], + [ + 144, + -3.82 + ], + [ + 144.53, + -3.82 + ], + [ + 144.49, + -3.99 + ], + [ + 144.54, + -3.91 + ], + [ + 145.02, + -4.34 + ], + [ + 145.32, + -4.39 + ], + [ + 145.81, + -4.85 + ], + [ + 145.76, + -5.48 + ], + [ + 146.46, + -5.61 + ], + [ + 146.8, + -5.86 + ], + [ + 147.57, + -6.06 + ], + [ + 147.81, + -6.33 + ], + [ + 147.86, + -6.65 + ], + [ + 146.94, + -6.71 + ], + [ + 147.18, + -7.46 + ], + [ + 147.47, + -7.59 + ], + [ + 147.75, + -7.96 + ], + [ + 148.13, + -8.06 + ], + [ + 148.23, + -8.58 + ], + [ + 148.44, + -8.68 + ], + [ + 148.6, + -9.08 + ], + [ + 149.29, + -9.01 + ], + [ + 149.24, + -9.5 + ], + [ + 150.06, + -9.68 + ], + [ + 149.71, + -9.81 + ], + [ + 149.86, + -10.02 + ], + [ + 150.61, + -10.29 + ], + [ + 150.87, + -10.22 + ], + [ + 150.63, + -10.35 + ], + [ + 150.34, + -10.33 + ], + [ + 150.7, + -10.56 + ], + [ + 150.2, + -10.7 + ], + [ + 149.85, + -10.55 + ], + [ + 150.11, + -10.41 + ], + [ + 149.91, + -10.5 + ], + [ + 149.75, + -10.35 + ], + [ + 148.74, + -10.24 + ], + [ + 148.72, + -10.1 + ], + [ + 148.4, + -10.21 + ], + [ + 148.17, + -10.09 + ], + [ + 148.25, + -10 + ], + [ + 147.99, + -10.16 + ], + [ + 147.91, + -10.04 + ], + [ + 147.73, + -10.1 + ], + [ + 147.3, + -9.5 + ], + [ + 146.9, + -9.27 + ], + [ + 146.93, + -9.15 + ], + [ + 146.98, + -9 + ], + [ + 146.89, + -9.11 + ], + [ + 146.59, + -9 + ], + [ + 146.62, + -8.79 + ], + [ + 146.1, + -8.08 + ], + [ + 145.83, + -8.03 + ], + [ + 145.78, + -7.89 + ], + [ + 145.41, + -7.95 + ], + [ + 145.05, + -7.71 + ], + [ + 145.05, + -7.85 + ], + [ + 144.95, + -7.69 + ], + [ + 144.95, + -7.8 + ], + [ + 144.85, + -7.61 + ], + [ + 145.01, + -7.56 + ], + [ + 144.77, + -7.45 + ], + [ + 144.76, + -7.57 + ], + [ + 144.76, + -7.38 + ], + [ + 144.66, + -7.49 + ], + [ + 144.45, + -7.3 + ], + [ + 144.27, + -7.34 + ], + [ + 144.39, + -7.42 + ], + [ + 144.23, + -7.35 + ], + [ + 144.25, + -7.59 + ], + [ + 144.06, + -7.58 + ], + [ + 144.15, + -7.8 + ], + [ + 143.62, + -7.45 + ], + [ + 143.92, + -7.98 + ], + [ + 143.44, + -7.97 + ], + [ + 143.69, + -8.23 + ], + [ + 142.52, + -8.33 + ], + [ + 142.35, + -8.15 + ], + [ + 142.19, + -8.19 + ], + [ + 142.36, + -8.18 + ], + [ + 142.45, + -8.37 + ], + [ + 142.76, + -8.31 + ], + [ + 143.1, + -8.45 + ], + [ + 143.4, + -8.76 + ], + [ + 143.34, + -9.03 + ], + [ + 142.64, + -9.33 + ], + [ + 142.23, + -9.08 + ], + [ + 141.18, + -9.23 + ], + [ + 141.02, + -9.12 + ], + [ + 141.02, + -6.89 + ], + [ + 140.87, + -6.79 + ], + [ + 140.91, + -6.56 + ] + ], + [ + [ + 141.48, + -7.1 + ], + [ + 141.5, + -7.27 + ], + [ + 141.55, + -6.87 + ], + [ + 141.48, + -7.1 + ] + ] + ], + [ + [ + [ + 152.52, + -3.9 + ], + [ + 152.17, + -3.5 + ], + [ + 150.98, + -2.78 + ], + [ + 150.72, + -2.75 + ], + [ + 150.86, + -2.7 + ], + [ + 150.8, + -2.55 + ], + [ + 152.05, + -3.24 + ], + [ + 152.55, + -3.81 + ], + [ + 152.93, + -3.98 + ], + [ + 153.12, + -4.37 + ], + [ + 152.88, + -4.85 + ], + [ + 152.52, + -3.9 + ] + ] + ], + [ + [ + [ + 150.88, + -2.97 + ], + [ + 150.74, + -2.98 + ], + [ + 151.01, + -2.96 + ], + [ + 150.88, + -2.97 + ] + ] + ], + [ + [ + [ + 150.45, + -2.65 + ], + [ + 150.17, + -2.68 + ], + [ + 149.94, + -2.47 + ], + [ + 150.2, + -2.36 + ], + [ + 150.44, + -2.48 + ], + [ + 150.45, + -2.65 + ] + ] + ], + [ + [ + [ + 154.62, + -5.46 + ], + [ + 154.52, + -5.13 + ], + [ + 154.62, + -5 + ], + [ + 154.62, + -5.46 + ] + ] + ], + [ + [ + [ + 155.41, + -6.06 + ], + [ + 155.92, + -6.51 + ], + [ + 155.92, + -6.8 + ], + [ + 155.6, + -6.86 + ], + [ + 155.25, + -6.63 + ], + [ + 155.21, + -6.31 + ], + [ + 154.74, + -5.93 + ], + [ + 154.67, + -5.43 + ], + [ + 155.07, + -5.54 + ], + [ + 155.41, + -6.06 + ] + ] + ], + [ + [ + [ + 149.54, + -1.34 + ], + [ + 149.75, + -1.53 + ], + [ + 149.51, + -1.44 + ], + [ + 149.54, + -1.34 + ] + ] + ], + [ + [ + [ + 152.42, + -9.03 + ], + [ + 152.79, + -9 + ], + [ + 153.02, + -9.16 + ], + [ + 152.74, + -9.26 + ], + [ + 152.7, + -9.09 + ], + [ + 152.42, + -9.03 + ] + ] + ], + [ + [ + [ + 150.76, + -9.77 + ], + [ + 151.11, + -10.04 + ], + [ + 151.27, + -9.92 + ], + [ + 151.22, + -10.19 + ], + [ + 150.96, + -10.11 + ], + [ + 150.76, + -9.77 + ] + ] + ], + [ + [ + [ + 150.69, + -9.43 + ], + [ + 150.93, + -9.68 + ], + [ + 150.44, + -9.63 + ], + [ + 150.44, + -9.35 + ], + [ + 150.69, + -9.43 + ] + ] + ], + [ + [ + [ + 150.35, + -9.51 + ], + [ + 150.1, + -9.37 + ], + [ + 150.16, + -9.22 + ], + [ + 150.34, + -9.27 + ], + [ + 150.35, + -9.51 + ] + ] + ], + [ + [ + [ + 151.06, + -8.75 + ], + [ + 151.13, + -8.59 + ], + [ + 151, + -8.51 + ], + [ + 151.12, + -8.4 + ], + [ + 151.11, + -8.5 + ], + [ + 151.15, + -8.57 + ], + [ + 151.1, + -8.75 + ], + [ + 151.13, + -8.8 + ], + [ + 151.06, + -8.75 + ] + ] + ], + [ + [ + [ + 152.75, + -10.63 + ], + [ + 152.88, + -10.67 + ], + [ + 152.52, + -10.62 + ], + [ + 152.75, + -10.63 + ] + ] + ], + [ + [ + [ + 153.49, + -11.46 + ], + [ + 153.78, + -11.61 + ], + [ + 153.55, + -11.65 + ], + [ + 153.17, + -11.35 + ], + [ + 153.49, + -11.46 + ] + ] + ], + [ + [ + [ + 150.42, + -6.25 + ], + [ + 149.61, + -6.29 + ], + [ + 149.33, + -6.05 + ], + [ + 149.04, + -6.16 + ], + [ + 149.03, + -6.02 + ], + [ + 148.37, + -5.75 + ], + [ + 148.32, + -5.56 + ], + [ + 148.42, + -5.44 + ], + [ + 149.22, + -5.58 + ], + [ + 149.66, + -5.45 + ], + [ + 149.87, + -5.52 + ], + [ + 150.09, + -5 + ], + [ + 150.19, + -5.06 + ], + [ + 150.02, + -5.29 + ], + [ + 150.09, + -5.52 + ], + [ + 150.9, + -5.49 + ], + [ + 151.35, + -4.91 + ], + [ + 151.69, + -4.87 + ], + [ + 151.49, + -4.21 + ], + [ + 151.95, + -4.34 + ], + [ + 152.17, + -4.13 + ], + [ + 152.16, + -4.3 + ], + [ + 152.4, + -4.32 + ], + [ + 152.33, + -4.84 + ], + [ + 151.95, + -4.99 + ], + [ + 152.09, + -5.45 + ], + [ + 151.81, + -5.59 + ], + [ + 151.47, + -5.52 + ], + [ + 151.51, + -5.68 + ], + [ + 151.19, + -5.96 + ], + [ + 150.42, + -6.25 + ] + ] + ], + [ + [ + [ + 147.09, + -5.21 + ], + [ + 147.22, + -5.35 + ], + [ + 147.13, + -5.44 + ], + [ + 147, + -5.35 + ], + [ + 147.09, + -5.21 + ] + ] + ], + [ + [ + [ + 147.86, + -5.71 + ], + [ + 147.77, + -5.46 + ], + [ + 148.09, + -5.64 + ], + [ + 148.02, + -5.83 + ], + [ + 147.86, + -5.71 + ] + ] + ], + [ + [ + [ + 145.99, + -4.52 + ], + [ + 146.05, + -4.71 + ], + [ + 145.93, + -4.75 + ], + [ + 145.99, + -4.52 + ] + ] + ], + [ + [ + [ + 147, + -1.97 + ], + [ + 147.44, + -2.04 + ], + [ + 147.19, + -2.2 + ], + [ + 146.51, + -2.21 + ], + [ + 146.57, + -1.99 + ], + [ + 147, + -1.97 + ] + ] + ], + [ + [ + [ + 143.42, + -8.59 + ], + [ + 143.19, + -8.41 + ], + [ + 143.64, + -8.69 + ], + [ + 143.42, + -8.59 + ] + ] + ] + ] + }, + "properties": { + "A3": "PNG" + } + }, + { + "type": "Feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + -5.38, + 35.91 + ], + [ + -5.34, + 35.87 + ], + [ + -5.06, + 35.41 + ], + [ + -4.3, + 35.17 + ], + [ + -3.71, + 35.29 + ], + [ + -3.34, + 35.19 + ], + [ + -2.98, + 35.44 + ], + [ + -2.95, + 35.32 + ], + [ + -2.93, + 35.27 + ], + [ + -2.81, + 35.1 + ], + [ + -2.21, + 35.09 + ], + [ + -1.74, + 34.74 + ], + [ + -1.85, + 34.62 + ], + [ + -1.69, + 34.49 + ], + [ + -1.71, + 34.23 + ], + [ + -1.54, + 32.96 + ], + [ + -1, + 32.52 + ], + [ + -1.25, + 32.33 + ], + [ + -1.3, + 32.17 + ], + [ + -1.15, + 32.11 + ], + [ + -2.87, + 32.11 + ], + [ + -2.82, + 31.79 + ], + [ + -3.66, + 31.63 + ], + [ + -3.78, + 31.1 + ], + [ + -3.64, + 31.17 + ], + [ + -3.54, + 31.01 + ], + [ + -3.67, + 30.66 + ], + [ + -4.32, + 30.53 + ], + [ + -5.29, + 29.9 + ], + [ + -5.56, + 29.48 + ], + [ + -5.8, + 29.61 + ], + [ + -7.15, + 29.52 + ], + [ + -8.67, + 28.71 + ], + [ + -8.67, + 27.67 + ], + [ + -8.81, + 27.66 + ], + [ + -8.77, + 26.99 + ], + [ + -9.47, + 26.96 + ], + [ + -9.91, + 26.73 + ], + [ + -10.58, + 26.9 + ], + [ + -11.33, + 26.85 + ], + [ + -11.26, + 26.72 + ], + [ + -11.67, + 26 + ], + [ + -12, + 26 + ], + [ + -12, + 25.75 + ], + [ + -12.05, + 25.29 + ], + [ + -12.93, + 24.42 + ], + [ + -13.04, + 23.99 + ], + [ + -13.77, + 23.76 + ], + [ + -14.16, + 22.42 + ], + [ + -14.49, + 22.04 + ], + [ + -14.52, + 21.62 + ], + [ + -15.04, + 21.34 + ], + [ + -15.17, + 21.34 + ], + [ + -15.27, + 21.34 + ], + [ + -15.72, + 21.34 + ], + [ + -15.81, + 21.34 + ], + [ + -15.92, + 21.34 + ], + [ + -15.98, + 21.34 + ], + [ + -15.99, + 21.34 + ], + [ + -17.03, + 21.34 + ], + [ + -16.81, + 22.16 + ], + [ + -16.49, + 22.33 + ], + [ + -16.2, + 23.11 + ], + [ + -15.71, + 23.83 + ], + [ + -15.77, + 23.92 + ], + [ + -16, + 23.63 + ], + [ + -15.9, + 23.82 + ], + [ + -14.88, + 24.7 + ], + [ + -14.83, + 25.3 + ], + [ + -14.48, + 26.18 + ], + [ + -13.57, + 26.74 + ], + [ + -13.19, + 27.63 + ], + [ + -12.92, + 27.95 + ], + [ + -11.51, + 28.31 + ], + [ + -10.22, + 29.31 + ], + [ + -9.67, + 30.05 + ], + [ + -9.61, + 30.41 + ], + [ + -9.89, + 30.63 + ], + [ + -9.84, + 31.39 + ], + [ + -9.26, + 32.18 + ], + [ + -9.28, + 32.54 + ], + [ + -8.53, + 33.26 + ], + [ + -6.82, + 34.03 + ], + [ + -6.26, + 34.83 + ], + [ + -5.93, + 35.79 + ], + [ + -5.38, + 35.91 + ] + ], + [ + [ + -7.63, + 32.51 + ], + [ + -7.6, + 32.39 + ], + [ + -7.4, + 32.47 + ], + [ + -7.63, + 32.51 + ] + ] + ] + }, + "properties": { + "A3": "MAR" + } + }, + { + "type": "Feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + 8.62, + 4.82 + ], + [ + 8.63, + 4.82 + ], + [ + 8.63, + 4.84 + ], + [ + 8.62, + 4.86 + ], + [ + 8.61, + 4.89 + ], + [ + 8.62, + 4.9 + ], + [ + 8.64, + 4.91 + ], + [ + 8.65, + 4.94 + ], + [ + 8.68, + 4.98 + ], + [ + 8.92, + 5.56 + ], + [ + 8.84, + 5.82 + ], + [ + 9.47, + 6.45 + ], + [ + 9.71, + 6.51 + ], + [ + 9.78, + 6.79 + ], + [ + 10.15, + 7.04 + ], + [ + 10.22, + 6.89 + ], + [ + 10.49, + 6.9 + ], + [ + 10.57, + 7.16 + ], + [ + 10.7, + 7.01 + ], + [ + 10.92, + 6.71 + ], + [ + 11.09, + 6.68 + ], + [ + 11.1, + 6.52 + ], + [ + 11.52, + 6.61 + ], + [ + 11.62, + 6.98 + ], + [ + 11.88, + 7.1 + ], + [ + 12.26, + 8.44 + ], + [ + 12.78, + 8.75 + ], + [ + 12.85, + 9.37 + ], + [ + 13.23, + 9.58 + ], + [ + 13.25, + 10.03 + ], + [ + 13.47, + 10.16 + ], + [ + 13.73, + 11 + ], + [ + 13.98, + 11.31 + ], + [ + 14.19, + 11.24 + ], + [ + 14.62, + 11.51 + ], + [ + 14.67, + 12.18 + ], + [ + 14.6, + 12.19 + ], + [ + 14.61, + 12.21 + ], + [ + 14.6, + 12.21 + ], + [ + 14.58, + 12.23 + ], + [ + 14.56, + 12.23 + ], + [ + 14.56, + 12.24 + ], + [ + 14.55, + 12.24 + ], + [ + 14.56, + 12.25 + ], + [ + 14.56, + 12.26 + ], + [ + 14.54, + 12.29 + ], + [ + 14.51, + 12.31 + ], + [ + 14.5, + 12.33 + ], + [ + 14.44, + 12.36 + ], + [ + 14.42, + 12.36 + ], + [ + 14.41, + 12.36 + ], + [ + 14.38, + 12.36 + ], + [ + 14.37, + 12.36 + ], + [ + 14.37, + 12.37 + ], + [ + 14.36, + 12.36 + ], + [ + 14.35, + 12.37 + ], + [ + 14.33, + 12.37 + ], + [ + 14.3, + 12.36 + ], + [ + 14.3, + 12.37 + ], + [ + 14.29, + 12.37 + ], + [ + 14.28, + 12.37 + ], + [ + 14.24, + 12.37 + ], + [ + 14.22, + 12.37 + ], + [ + 14.19, + 12.4 + ], + [ + 14.18, + 12.41 + ], + [ + 14.18, + 12.43 + ], + [ + 14.19, + 12.43 + ], + [ + 14.19, + 12.45 + ], + [ + 14.19, + 12.49 + ], + [ + 14.08, + 13.08 + ], + [ + 14.15, + 13.08 + ], + [ + 14.16, + 13.08 + ], + [ + 14.31, + 13.08 + ], + [ + 14.33, + 13.08 + ], + [ + 14.35, + 13.08 + ], + [ + 14.3, + 12.85 + ], + [ + 14.49, + 12.77 + ], + [ + 14.46, + 12.9 + ], + [ + 14.37, + 12.83 + ], + [ + 14.53, + 12.96 + ], + [ + 14.54, + 12.94 + ], + [ + 14.55, + 12.94 + ], + [ + 14.56, + 12.9 + ], + [ + 14.56, + 12.89 + ], + [ + 14.57, + 12.89 + ], + [ + 14.55, + 12.85 + ], + [ + 14.55, + 12.83 + ], + [ + 14.55, + 12.8 + ], + [ + 14.55, + 12.78 + ], + [ + 14.58, + 12.77 + ], + [ + 14.58, + 12.75 + ], + [ + 14.6, + 12.75 + ], + [ + 14.62, + 12.77 + ], + [ + 14.63, + 12.77 + ], + [ + 14.63, + 12.74 + ], + [ + 14.64, + 12.74 + ], + [ + 14.65, + 12.73 + ], + [ + 14.68, + 12.72 + ], + [ + 14.73, + 12.71 + ], + [ + 14.72, + 12.7 + ], + [ + 14.71, + 12.69 + ], + [ + 14.7, + 12.68 + ], + [ + 14.72, + 12.66 + ], + [ + 14.73, + 12.66 + ], + [ + 14.74, + 12.69 + ], + [ + 14.75, + 12.69 + ], + [ + 14.76, + 12.67 + ], + [ + 14.76, + 12.66 + ], + [ + 14.78, + 12.63 + ], + [ + 14.8, + 12.64 + ], + [ + 14.83, + 12.63 + ], + [ + 14.84, + 12.61 + ], + [ + 14.84, + 12.6 + ], + [ + 14.85, + 12.55 + ], + [ + 14.85, + 12.53 + ], + [ + 14.86, + 12.51 + ], + [ + 14.87, + 12.47 + ], + [ + 14.88, + 12.45 + ], + [ + 14.88, + 12.43 + ], + [ + 14.89, + 12.43 + ], + [ + 14.9, + 12.41 + ], + [ + 14.9, + 12.4 + ], + [ + 14.9, + 12.37 + ], + [ + 14.9, + 12.36 + ], + [ + 14.9, + 12.35 + ], + [ + 14.91, + 12.34 + ], + [ + 14.91, + 12.33 + ], + [ + 14.9, + 12.32 + ], + [ + 14.89, + 12.31 + ], + [ + 14.9, + 12.29 + ], + [ + 14.9, + 12.27 + ], + [ + 14.9, + 12.23 + ], + [ + 14.9, + 12.2 + ], + [ + 14.91, + 12.19 + ], + [ + 14.9, + 12.18 + ], + [ + 14.89, + 12.18 + ], + [ + 14.89, + 12.17 + ], + [ + 14.89, + 12.16 + ], + [ + 14.9, + 12.15 + ], + [ + 14.92, + 12.14 + ], + [ + 14.96, + 12.1 + ], + [ + 14.97, + 12.1 + ], + [ + 14.99, + 12.12 + ], + [ + 15.03, + 12.11 + ], + [ + 15.04, + 12.08 + ], + [ + 15.05, + 12.07 + ], + [ + 15.06, + 12.06 + ], + [ + 15.06, + 12.04 + ], + [ + 15.05, + 12.04 + ], + [ + 15.04, + 12.04 + ], + [ + 15.06, + 12 + ], + [ + 15.07, + 12 + ], + [ + 15.08, + 11.98 + ], + [ + 15.06, + 11.98 + ], + [ + 15.05, + 11.97 + ], + [ + 15.05, + 11.95 + ], + [ + 15.06, + 11.95 + ], + [ + 15.06, + 11.93 + ], + [ + 15.04, + 11.91 + ], + [ + 15.05, + 11.88 + ], + [ + 15.05, + 11.86 + ], + [ + 15.07, + 11.84 + ], + [ + 15.1, + 11.83 + ], + [ + 15.11, + 11.8 + ], + [ + 15.12, + 11.8 + ], + [ + 15.11, + 11.78 + ], + [ + 15.09, + 11.77 + ], + [ + 15.1, + 11.74 + ], + [ + 15.09, + 11.73 + ], + [ + 15.07, + 11.72 + ], + [ + 15.06, + 11.72 + ], + [ + 15.06, + 11.71 + ], + [ + 15.08, + 11.69 + ], + [ + 15.08, + 11.66 + ], + [ + 15.08, + 11.65 + ], + [ + 15.09, + 11.63 + ], + [ + 15.09, + 11.62 + ], + [ + 15.1, + 11.6 + ], + [ + 15.14, + 11.57 + ], + [ + 15.14, + 11.54 + ], + [ + 15.13, + 11.52 + ], + [ + 15.12, + 11.51 + ], + [ + 15.11, + 11.5 + ], + [ + 15.09, + 11.47 + ], + [ + 15.08, + 11.45 + ], + [ + 15.07, + 11.45 + ], + [ + 15.07, + 11.43 + ], + [ + 15.06, + 11.4 + ], + [ + 15.06, + 11.39 + ], + [ + 15.07, + 11.38 + ], + [ + 15.07, + 11.37 + ], + [ + 15.08, + 10.94 + ], + [ + 15.09, + 10.92 + ], + [ + 15.09, + 10.91 + ], + [ + 15.09, + 10.88 + ], + [ + 15.09, + 10.86 + ], + [ + 15.08, + 10.85 + ], + [ + 15.07, + 10.85 + ], + [ + 15.07, + 10.84 + ], + [ + 15.07, + 10.83 + ], + [ + 15.07, + 10.82 + ], + [ + 15.07, + 10.81 + ], + [ + 15.08, + 10.8 + ], + [ + 14.88, + 10.88 + ], + [ + 15.08, + 10.78 + ], + [ + 15.09, + 10.76 + ], + [ + 15.1, + 10.74 + ], + [ + 15.13, + 10.7 + ], + [ + 15.14, + 10.67 + ], + [ + 15.14, + 10.66 + ], + [ + 15.15, + 10.66 + ], + [ + 15.16, + 10.63 + ], + [ + 15.15, + 10.6 + ], + [ + 15.14, + 10.59 + ], + [ + 15.15, + 10.56 + ], + [ + 15.15, + 10.53 + ], + [ + 15.16, + 10.52 + ], + [ + 15.17, + 10.52 + ], + [ + 15.18, + 10.51 + ], + [ + 15.19, + 10.51 + ], + [ + 15.21, + 10.5 + ], + [ + 15.24, + 10.48 + ], + [ + 15.24, + 10.45 + ], + [ + 15.26, + 10.43 + ], + [ + 15.28, + 10.41 + ], + [ + 15.28, + 10.4 + ], + [ + 15.28, + 10.37 + ], + [ + 15.3, + 10.31 + ], + [ + 15.33, + 10.3 + ], + [ + 15.34, + 10.3 + ], + [ + 15.36, + 10.28 + ], + [ + 15.36, + 10.27 + ], + [ + 15.38, + 10.25 + ], + [ + 15.39, + 10.25 + ], + [ + 15.4, + 10.23 + ], + [ + 15.41, + 10.23 + ], + [ + 15.44, + 10.2 + ], + [ + 15.45, + 10.19 + ], + [ + 15.45, + 10.17 + ], + [ + 15.46, + 10.16 + ], + [ + 15.47, + 10.15 + ], + [ + 15.47, + 10.14 + ], + [ + 15.49, + 10.11 + ], + [ + 15.51, + 10.1 + ], + [ + 15.52, + 10.1 + ], + [ + 15.53, + 10.1 + ], + [ + 15.54, + 10.09 + ], + [ + 15.55, + 10.08 + ], + [ + 15.56, + 10.07 + ], + [ + 15.59, + 10.05 + ], + [ + 15.6, + 10.05 + ], + [ + 15.61, + 10.05 + ], + [ + 15.64, + 10.03 + ], + [ + 15.66, + 10.02 + ], + [ + 15.67, + 10.01 + ], + [ + 15.69, + 10 + ], + [ + 15.69, + 9.99 + ], + [ + 15.65, + 9.98 + ], + [ + 15.64, + 9.98 + ], + [ + 15.24, + 9.99 + ], + [ + 15.22, + 9.99 + ], + [ + 14.2, + 10 + ], + [ + 13.98, + 9.64 + ], + [ + 14.49, + 9.06 + ], + [ + 15.11, + 8.66 + ], + [ + 15.59, + 7.67 + ], + [ + 15.58, + 7.67 + ], + [ + 15.58, + 7.65 + ], + [ + 15.58, + 7.64 + ], + [ + 15.56, + 7.6 + ], + [ + 15.55, + 7.58 + ], + [ + 15.53, + 7.56 + ], + [ + 15.49, + 7.53 + ], + [ + 15.22, + 7.24 + ], + [ + 14.8, + 6.34 + ], + [ + 14.42, + 6.04 + ], + [ + 14.62, + 5.89 + ], + [ + 14.53, + 5.28 + ], + [ + 14.66, + 5.2 + ], + [ + 14.73, + 4.61 + ], + [ + 15.1, + 4.22 + ], + [ + 15.1, + 4.21 + ], + [ + 15.14, + 4.09 + ], + [ + 15.14, + 4.08 + ], + [ + 15.18, + 4.06 + ], + [ + 15.07, + 4.02 + ], + [ + 16.06, + 3.02 + ], + [ + 16.08, + 2.7 + ], + [ + 16.08, + 2.69 + ], + [ + 16.07, + 2.66 + ], + [ + 16.07, + 2.65 + ], + [ + 16.07, + 2.63 + ], + [ + 16.08, + 2.61 + ], + [ + 16.08, + 2.6 + ], + [ + 16.08, + 2.59 + ], + [ + 16.08, + 2.58 + ], + [ + 16.08, + 2.57 + ], + [ + 16.08, + 2.56 + ], + [ + 16.07, + 2.55 + ], + [ + 16.07, + 2.54 + ], + [ + 16.07, + 2.53 + ], + [ + 16.07, + 2.52 + ], + [ + 16.08, + 2.49 + ], + [ + 16.07, + 2.46 + ], + [ + 16.08, + 2.44 + ], + [ + 16.09, + 2.44 + ], + [ + 16.1, + 2.42 + ], + [ + 16.11, + 2.4 + ], + [ + 16.11, + 2.39 + ], + [ + 16.13, + 2.38 + ], + [ + 16.14, + 2.35 + ], + [ + 16.14, + 2.34 + ], + [ + 16.15, + 2.31 + ], + [ + 16.16, + 2.31 + ], + [ + 16.16, + 2.29 + ], + [ + 16.17, + 2.27 + ], + [ + 16.17, + 2.25 + ], + [ + 16.17, + 2.24 + ], + [ + 16.19, + 2.23 + ], + [ + 16.19, + 2.21 + ], + [ + 16.17, + 2.2 + ], + [ + 16.17, + 2.19 + ], + [ + 16.15, + 2.18 + ], + [ + 16.14, + 2.18 + ], + [ + 16.13, + 2.2 + ], + [ + 16.11, + 2.2 + ], + [ + 16.09, + 2.2 + ], + [ + 16.08, + 2.2 + ], + [ + 16.08, + 2.18 + ], + [ + 16.08, + 2.17 + ], + [ + 16.08, + 2.16 + ], + [ + 16.08, + 2.14 + ], + [ + 16.08, + 2.11 + ], + [ + 16.07, + 2.08 + ], + [ + 16.06, + 2.07 + ], + [ + 16.06, + 2.06 + ], + [ + 16.08, + 2.05 + ], + [ + 16.08, + 2.04 + ], + [ + 16.07, + 2.03 + ], + [ + 16.06, + 2.02 + ], + [ + 16.05, + 2 + ], + [ + 16.05, + 1.99 + ], + [ + 16.06, + 1.96 + ], + [ + 16.07, + 1.96 + ], + [ + 16.08, + 1.94 + ], + [ + 16.08, + 1.93 + ], + [ + 16.08, + 1.92 + ], + [ + 16.08, + 1.91 + ], + [ + 16.08, + 1.9 + ], + [ + 16.1, + 1.89 + ], + [ + 16.11, + 1.89 + ], + [ + 16.11, + 1.88 + ], + [ + 16.1, + 1.88 + ], + [ + 16.11, + 1.87 + ], + [ + 16.11, + 1.86 + ], + [ + 16.12, + 1.85 + ], + [ + 16.12, + 1.83 + ], + [ + 16.12, + 1.82 + ], + [ + 16.13, + 1.81 + ], + [ + 16.14, + 1.8 + ], + [ + 16.14, + 1.76 + ], + [ + 16.15, + 1.76 + ], + [ + 16.14, + 1.74 + ], + [ + 16.14, + 1.72 + ], + [ + 16.15, + 1.7 + ], + [ + 16.15, + 1.69 + ], + [ + 16.14, + 1.69 + ], + [ + 16.13, + 1.7 + ], + [ + 16.12, + 1.7 + ], + [ + 16.1, + 1.7 + ], + [ + 16.07, + 1.68 + ], + [ + 16.07, + 1.67 + ], + [ + 16.06, + 1.66 + ], + [ + 16.02, + 1.67 + ], + [ + 16.02, + 1.68 + ], + [ + 16.02, + 1.71 + ], + [ + 16.02, + 1.72 + ], + [ + 16.02, + 1.74 + ], + [ + 16.02, + 1.77 + ], + [ + 16, + 1.76 + ], + [ + 15.97, + 1.77 + ], + [ + 15.95, + 1.77 + ], + [ + 15.92, + 1.78 + ], + [ + 15.91, + 1.79 + ], + [ + 15.87, + 1.82 + ], + [ + 15.82, + 1.85 + ], + [ + 15.8, + 1.87 + ], + [ + 15.79, + 1.87 + ], + [ + 15.78, + 1.89 + ], + [ + 15.77, + 1.9 + ], + [ + 15.74, + 1.92 + ], + [ + 15.72, + 1.91 + ], + [ + 15.71, + 1.93 + ], + [ + 15.67, + 1.93 + ], + [ + 15.66, + 1.93 + ], + [ + 15.63, + 1.94 + ], + [ + 15.62, + 1.94 + ], + [ + 15.6, + 1.95 + ], + [ + 15.56, + 1.95 + ], + [ + 15.55, + 1.96 + ], + [ + 15.53, + 1.96 + ], + [ + 15.51, + 1.97 + ], + [ + 15.47, + 1.97 + ], + [ + 15.42, + 1.96 + ], + [ + 15.42, + 1.95 + ], + [ + 15.39, + 1.94 + ], + [ + 15.37, + 1.93 + ], + [ + 15.35, + 1.91 + ], + [ + 15.34, + 1.92 + ], + [ + 15.33, + 1.93 + ], + [ + 15.34, + 1.94 + ], + [ + 15.31, + 1.93 + ], + [ + 15.31, + 1.96 + ], + [ + 15.29, + 1.98 + ], + [ + 15.27, + 2 + ], + [ + 15.25, + 2.02 + ], + [ + 15.21, + 2.04 + ], + [ + 15.2, + 2.04 + ], + [ + 15.18, + 2.03 + ], + [ + 15.18, + 2.02 + ], + [ + 15.16, + 2.04 + ], + [ + 15.15, + 2.04 + ], + [ + 15.14, + 2.02 + ], + [ + 15.11, + 2 + ], + [ + 15.1, + 1.98 + ], + [ + 15.09, + 1.98 + ], + [ + 15.03, + 2 + ], + [ + 14.99, + 2.04 + ], + [ + 14.98, + 2.04 + ], + [ + 14.94, + 2 + ], + [ + 14.92, + 2 + ], + [ + 14.91, + 2 + ], + [ + 14.9, + 2.07 + ], + [ + 14.89, + 2.07 + ], + [ + 14.6, + 2.21 + ], + [ + 13.29, + 2.17 + ], + [ + 13.19, + 2.28 + ], + [ + 11.67, + 2.32 + ], + [ + 11.37, + 2.29 + ], + [ + 11.36, + 2.17 + ], + [ + 9.87, + 2.24 + ], + [ + 9.86, + 2.24 + ], + [ + 9.84, + 2.26 + ], + [ + 9.84, + 2.28 + ], + [ + 9.83, + 2.3 + ], + [ + 9.84, + 2.31 + ], + [ + 9.84, + 2.32 + ], + [ + 9.84, + 2.33 + ], + [ + 9.83, + 2.34 + ], + [ + 9.97, + 3.09 + ], + [ + 9.58, + 3.77 + ], + [ + 9.62, + 3.87 + ], + [ + 9.69, + 3.74 + ], + [ + 9.78, + 3.94 + ], + [ + 9.62, + 3.95 + ], + [ + 9.67, + 4.13 + ], + [ + 9.63, + 4.02 + ], + [ + 9.46, + 4.06 + ], + [ + 9.41, + 3.89 + ], + [ + 8.98, + 4.1 + ], + [ + 8.88, + 4.43 + ], + [ + 8.97, + 4.54 + ], + [ + 8.88, + 4.52 + ], + [ + 8.8, + 4.8 + ], + [ + 8.8, + 4.54 + ], + [ + 8.68, + 4.65 + ], + [ + 8.76, + 4.83 + ], + [ + 8.63, + 4.71 + ], + [ + 8.72, + 4.5 + ], + [ + 8.56, + 4.49 + ], + [ + 8.62, + 4.82 + ] + ], + [ + [ + 12.63, + 6.49 + ], + [ + 12.83, + 6.3 + ], + [ + 12.85, + 6.49 + ], + [ + 12.63, + 6.49 + ] + ], + [ + [ + 11.25, + 6.14 + ], + [ + 11.32, + 6.04 + ], + [ + 11.47, + 6.1 + ], + [ + 11.38, + 6.28 + ], + [ + 11.36, + 6.1 + ], + [ + 11.25, + 6.14 + ], + [ + 11.23, + 6.18 + ], + [ + 11.21, + 6.18 + ], + [ + 11.23, + 6.18 + ], + [ + 11.25, + 6.14 + ] + ], + [ + [ + 13.63, + 9.02 + ], + [ + 13.82, + 8.91 + ], + [ + 13.71, + 8.8 + ], + [ + 14.04, + 8.71 + ], + [ + 14.06, + 8.89 + ], + [ + 13.63, + 9.02 + ] + ], + [ + [ + 10.57, + 5.88 + ], + [ + 10.47, + 5.81 + ], + [ + 10.55, + 5.68 + ], + [ + 10.68, + 5.91 + ], + [ + 10.57, + 5.88 + ] + ] + ] + }, + "properties": { + "A3": "CMR" + } + }, + { + "type": "Feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + 9.76, + 1.06 + ], + [ + 9.76, + 1.05 + ], + [ + 9.8, + 1 + ], + [ + 11.35, + 1 + ], + [ + 11.36, + 2.17 + ], + [ + 11.37, + 2.29 + ], + [ + 11.67, + 2.32 + ], + [ + 13.19, + 2.28 + ], + [ + 13.29, + 2.17 + ], + [ + 13.13, + 1.58 + ], + [ + 13.26, + 1.33 + ], + [ + 13.15, + 1.24 + ], + [ + 13.8, + 1.44 + ], + [ + 14.24, + 1.4 + ], + [ + 14.5, + 0.96 + ], + [ + 14.38, + 0.67 + ], + [ + 14.08, + 0.57 + ], + [ + 13.88, + 0.24 + ], + [ + 13.91, + -0.22 + ], + [ + 14.15, + -0.25 + ], + [ + 14.19, + -0.43 + ], + [ + 14.54, + -0.59 + ], + [ + 14.43, + -1.89 + ], + [ + 14.26, + -1.97 + ], + [ + 14.16, + -2.24 + ], + [ + 14.26, + -2.35 + ], + [ + 14.1, + -2.5 + ], + [ + 13.87, + -2.47 + ], + [ + 13.93, + -2.35 + ], + [ + 13.76, + -2.09 + ], + [ + 13.48, + -2.44 + ], + [ + 12.98, + -2.37 + ], + [ + 12.82, + -1.91 + ], + [ + 12.65, + -1.82 + ], + [ + 12.44, + -1.9 + ], + [ + 12.48, + -2.33 + ], + [ + 11.74, + -2.44 + ], + [ + 11.57, + -2.33 + ], + [ + 11.65, + -2.62 + ], + [ + 11.54, + -2.86 + ], + [ + 11.8, + -3.01 + ], + [ + 11.7, + -3.18 + ], + [ + 11.97, + -3.31 + ], + [ + 11.84, + -3.56 + ], + [ + 11.93, + -3.64 + ], + [ + 11.68, + -3.69 + ], + [ + 11.5, + -3.51 + ], + [ + 11.13, + -3.94 + ], + [ + 10.94, + -3.6 + ], + [ + 9.65, + -2.42 + ], + [ + 9.27, + -1.88 + ], + [ + 9.55, + -2.1 + ], + [ + 9.5, + -1.9 + ], + [ + 9.27, + -1.87 + ], + [ + 9.2, + -1.58 + ], + [ + 9.3, + -1.54 + ], + [ + 9.18, + -1.48 + ], + [ + 9.34, + -1.41 + ], + [ + 9.09, + -1.36 + ], + [ + 9.15, + -1.51 + ], + [ + 8.7, + -0.64 + ], + [ + 8.85, + -0.85 + ], + [ + 8.96, + -0.66 + ], + [ + 9.12, + -0.7 + ], + [ + 9.29, + -0.39 + ], + [ + 9.35, + 0.35 + ], + [ + 9.47, + 0.03 + ], + [ + 9.51, + 0.17 + ], + [ + 9.58, + 0.02 + ], + [ + 9.62, + 0.15 + ], + [ + 9.85, + 0 + ], + [ + 9.76, + 0.12 + ], + [ + 9.93, + 0.2 + ], + [ + 9.67, + 0.22 + ], + [ + 9.57, + 0.36 + ], + [ + 9.5, + 0.29 + ], + [ + 9.31, + 0.52 + ], + [ + 9.5, + 0.67 + ], + [ + 9.59, + 0.46 + ], + [ + 9.55, + 0.95 + ], + [ + 9.76, + 1.06 + ] + ], + [ + [ + 10.01, + -0.88 + ], + [ + 9.98, + -1.03 + ], + [ + 10.11, + -1.07 + ], + [ + 10.14, + -0.88 + ], + [ + 10.01, + -0.88 + ] + ], + [ + [ + 9.41, + -1.54 + ], + [ + 9.27, + -1.68 + ], + [ + 9.56, + -1.63 + ], + [ + 9.41, + -1.54 + ] + ], + [ + [ + 9.83, + -2.46 + ], + [ + 10.02, + -2.71 + ], + [ + 10.14, + -2.68 + ], + [ + 9.83, + -2.46 + ] + ] + ] + }, + "properties": { + "A3": "GAB" + } + }, + { + "type": "Feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + -35.87, + -54.8 + ], + [ + -36.12, + -54.76 + ], + [ + -35.94, + -54.86 + ], + [ + -36.11, + -54.89 + ], + [ + -36.49, + -54.51 + ], + [ + -37.42, + -54.28 + ], + [ + -37.24, + -54.15 + ], + [ + -37.63, + -54.19 + ], + [ + -37.61, + -54.05 + ], + [ + -38.02, + -54.01 + ], + [ + -36.64, + -54.12 + ], + [ + -36.49, + -54.2 + ], + [ + -36.7, + -54.3 + ], + [ + -36.49, + -54.24 + ], + [ + -36.35, + -54.37 + ], + [ + -36.3, + -54.27 + ], + [ + -36.12, + -54.58 + ], + [ + -35.89, + -54.55 + ], + [ + -35.87, + -54.8 + ] + ] + ] + }, + "properties": { + "A3": "SGS" + } + }, + { + "type": "Feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + 41.9, + 3.98 + ], + [ + 41.92, + 4 + ], + [ + 41.95, + 4.04 + ], + [ + 42.07, + 4.17 + ], + [ + 42.08, + 4.17 + ], + [ + 42.82, + 4.27 + ], + [ + 43.12, + 4.63 + ], + [ + 43.81, + 4.9 + ], + [ + 44.98, + 4.92 + ], + [ + 45.41, + 5.54 + ], + [ + 47.98, + 8 + ], + [ + 46.99, + 8 + ], + [ + 44.06, + 8.99 + ], + [ + 43.3, + 9.61 + ], + [ + 43.26, + 9.84 + ], + [ + 42.86, + 10.23 + ], + [ + 42.71, + 10.62 + ], + [ + 42.96, + 10.98 + ], + [ + 43.26, + 11.46 + ], + [ + 43.51, + 11.37 + ], + [ + 43.65, + 10.98 + ], + [ + 44.11, + 10.56 + ], + [ + 44.59, + 10.38 + ], + [ + 44.96, + 10.41 + ], + [ + 45.8, + 10.87 + ], + [ + 46.44, + 10.68 + ], + [ + 47.41, + 11.18 + ], + [ + 48.14, + 11.13 + ], + [ + 48.53, + 11.31 + ], + [ + 49.42, + 11.34 + ], + [ + 50.27, + 11.59 + ], + [ + 50.79, + 11.99 + ], + [ + 51.29, + 11.83 + ], + [ + 51.08, + 11.27 + ], + [ + 51.17, + 10.58 + ], + [ + 51.03, + 10.45 + ], + [ + 51.24, + 10.43 + ], + [ + 51.19, + 10.54 + ], + [ + 51.41, + 10.44 + ], + [ + 50.9, + 10.31 + ], + [ + 50.83, + 9.42 + ], + [ + 50.13, + 8.2 + ], + [ + 49.82, + 7.92 + ], + [ + 48.93, + 5.96 + ], + [ + 47.96, + 4.47 + ], + [ + 46.01, + 2.43 + ], + [ + 44.6, + 1.6 + ], + [ + 43.51, + 0.66 + ], + [ + 42.07, + -0.84 + ], + [ + 41.56, + -1.66 + ], + [ + 40.99, + -0.83 + ], + [ + 40.99, + 2.83 + ], + [ + 41.9, + 3.98 + ] + ] + ] + }, + "properties": { + "A3": "SOM" + } + }, + { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + -62.64, + -22.25 + ], + [ + -62.26, + -21.06 + ], + [ + -62.27, + -20.56 + ], + [ + -61.74, + -19.63 + ], + [ + -59.97, + -19.29 + ], + [ + -59.07, + -19.29 + ], + [ + -58.16, + -19.83 + ], + [ + -58.2, + -19.93 + ], + [ + -58.19, + -19.97 + ], + [ + -58.18, + -19.99 + ], + [ + -58.18, + -20.01 + ], + [ + -58.18, + -20.02 + ], + [ + -58.17, + -20.04 + ], + [ + -58.16, + -20.04 + ], + [ + -58.16, + -20.07 + ], + [ + -58.16, + -20.08 + ], + [ + -58.14, + -20.11 + ], + [ + -58.14, + -20.12 + ], + [ + -58.17, + -20.16 + ], + [ + -58.17, + -20.17 + ], + [ + -58.16, + -20.18 + ], + [ + -58.14, + -20.18 + ], + [ + -58.15, + -20.21 + ], + [ + -58.17, + -20.23 + ], + [ + -58.16, + -20.25 + ], + [ + -58.16, + -20.27 + ], + [ + -58.14, + -20.26 + ], + [ + -58.13, + -20.26 + ], + [ + -58.12, + -20.25 + ], + [ + -58.11, + -20.25 + ], + [ + -58.09, + -20.26 + ], + [ + -58.09, + -20.28 + ], + [ + -58.09, + -20.29 + ], + [ + -58.1, + -20.31 + ], + [ + -58.1, + -20.34 + ], + [ + -58.09, + -20.36 + ], + [ + -58.08, + -20.37 + ], + [ + -58.06, + -20.39 + ], + [ + -58.03, + -20.4 + ], + [ + -58.01, + -20.42 + ], + [ + -58, + -20.43 + ], + [ + -58, + -20.46 + ], + [ + -58.01, + -20.47 + ], + [ + -58.02, + -20.49 + ], + [ + -58.02, + -20.53 + ], + [ + -58.01, + -20.53 + ], + [ + -58.01, + -20.54 + ], + [ + -58, + -20.56 + ], + [ + -58, + -20.58 + ], + [ + -58.01, + -20.6 + ], + [ + -58, + -20.63 + ], + [ + -57.98, + -20.64 + ], + [ + -57.97, + -20.66 + ], + [ + -57.99, + -20.68 + ], + [ + -57.99, + -20.69 + ], + [ + -57.99, + -20.7 + ], + [ + -57.97, + -20.7 + ], + [ + -57.96, + -20.7 + ], + [ + -57.95, + -20.7 + ], + [ + -57.95, + -20.69 + ], + [ + -57.94, + -20.68 + ], + [ + -57.91, + -20.67 + ], + [ + -57.91, + -20.68 + ], + [ + -57.88, + -20.71 + ], + [ + -57.88, + -20.72 + ], + [ + -57.87, + -20.72 + ], + [ + -57.87, + -20.75 + ], + [ + -57.88, + -20.75 + ], + [ + -57.9, + -20.75 + ], + [ + -57.92, + -20.74 + ], + [ + -57.94, + -20.75 + ], + [ + -57.95, + -20.76 + ], + [ + -57.95, + -20.78 + ], + [ + -57.95, + -20.8 + ], + [ + -57.94, + -20.8 + ], + [ + -57.93, + -20.8 + ], + [ + -57.92, + -20.79 + ], + [ + -57.89, + -20.8 + ], + [ + -57.88, + -20.81 + ], + [ + -57.86, + -20.82 + ], + [ + -57.85, + -20.84 + ], + [ + -57.87, + -20.85 + ], + [ + -57.88, + -20.86 + ], + [ + -57.89, + -20.87 + ], + [ + -57.9, + -20.87 + ], + [ + -57.91, + -20.88 + ], + [ + -57.92, + -20.89 + ], + [ + -57.92, + -20.9 + ], + [ + -57.91, + -20.9 + ], + [ + -57.89, + -20.91 + ], + [ + -57.88, + -20.92 + ], + [ + -57.87, + -20.94 + ], + [ + -57.85, + -20.95 + ], + [ + -57.84, + -20.94 + ], + [ + -57.83, + -20.94 + ], + [ + -57.83, + -20.93 + ], + [ + -57.82, + -20.96 + ], + [ + -57.85, + -21.02 + ], + [ + -57.85, + -21.03 + ], + [ + -57.86, + -21.04 + ], + [ + -57.87, + -21.04 + ], + [ + -57.87, + -21.06 + ], + [ + -57.86, + -21.07 + ], + [ + -57.85, + -21.09 + ], + [ + -57.86, + -21.12 + ], + [ + -57.86, + -21.13 + ], + [ + -57.86, + -21.15 + ], + [ + -57.86, + -21.16 + ], + [ + -57.85, + -21.18 + ], + [ + -57.85, + -21.19 + ], + [ + -57.85, + -21.22 + ], + [ + -57.85, + -21.23 + ], + [ + -57.86, + -21.23 + ], + [ + -57.89, + -21.26 + ], + [ + -57.91, + -21.27 + ], + [ + -57.92, + -21.28 + ], + [ + -57.91, + -21.3 + ], + [ + -57.87, + -21.31 + ], + [ + -57.85, + -21.32 + ], + [ + -57.85, + -21.33 + ], + [ + -57.86, + -21.35 + ], + [ + -57.88, + -21.36 + ], + [ + -57.88, + -21.37 + ], + [ + -57.89, + -21.38 + ], + [ + -57.91, + -21.41 + ], + [ + -57.91, + -21.43 + ], + [ + -57.92, + -21.43 + ], + [ + -57.93, + -21.45 + ], + [ + -57.93, + -21.47 + ], + [ + -57.93, + -21.48 + ], + [ + -57.96, + -21.51 + ], + [ + -57.97, + -21.52 + ], + [ + -57.97, + -21.53 + ], + [ + -57.96, + -21.56 + ], + [ + -57.93, + -21.58 + ], + [ + -57.91, + -21.59 + ], + [ + -57.92, + -21.6 + ], + [ + -57.93, + -21.61 + ], + [ + -57.94, + -21.63 + ], + [ + -57.93, + -21.66 + ], + [ + -57.92, + -21.67 + ], + [ + -57.9, + -21.71 + ], + [ + -57.91, + -21.72 + ], + [ + -57.92, + -21.72 + ], + [ + -57.93, + -21.72 + ], + [ + -57.95, + -21.75 + ], + [ + -57.92, + -21.77 + ], + [ + -57.93, + -21.82 + ], + [ + -57.97, + -21.85 + ], + [ + -57.96, + -21.85 + ], + [ + -57.94, + -21.86 + ], + [ + -57.92, + -21.88 + ], + [ + -57.94, + -21.94 + ], + [ + -57.96, + -21.96 + ], + [ + -57.96, + -21.99 + ], + [ + -57.99, + -22.02 + ], + [ + -58.01, + -22.04 + ], + [ + -57.99, + -22.09 + ], + [ + -57.94, + -22.08 + ], + [ + -57.94, + -22.09 + ], + [ + -57.93, + -22.11 + ], + [ + -57.92, + -22.11 + ], + [ + -57.34, + -22.23 + ], + [ + -57.16, + -22.23 + ], + [ + -57.15, + -22.23 + ], + [ + -56.64, + -22.27 + ], + [ + -56.39, + -22.07 + ], + [ + -56.21, + -22.28 + ], + [ + -55.85, + -22.28 + ], + [ + -55.61, + -22.66 + ], + [ + -55.63, + -23 + ], + [ + -55.43, + -23.94 + ], + [ + -55.04, + -23.98 + ], + [ + -54.67, + -23.81 + ], + [ + -54.31, + -24.05 + ], + [ + -54.29, + -24.07 + ], + [ + -54.3, + -24.09 + ], + [ + -54.32, + -24.1 + ], + [ + -54.34, + -24.13 + ], + [ + -54.34, + -24.14 + ], + [ + -54.33, + -24.18 + ], + [ + -54.31, + -24.26 + ], + [ + -54.28, + -24.29 + ], + [ + -54.3, + -24.43 + ], + [ + -54.32, + -24.45 + ], + [ + -54.42, + -24.85 + ], + [ + -54.6, + -24.85 + ], + [ + -54.44, + -24.93 + ], + [ + -54.62, + -25.07 + ], + [ + -54.45, + -25.13 + ], + [ + -54.59, + -25.41 + ], + [ + -54.59, + -25.42 + ], + [ + -54.6, + -25.43 + ], + [ + -54.61, + -25.44 + ], + [ + -54.61, + -25.45 + ], + [ + -54.61, + -25.48 + ], + [ + -54.6, + -25.48 + ], + [ + -54.6, + -25.49 + ], + [ + -54.6, + -25.51 + ], + [ + -54.59, + -25.54 + ], + [ + -54.59, + -25.56 + ], + [ + -54.59, + -25.57 + ], + [ + -54.59, + -25.59 + ], + [ + -54.61, + -25.6 + ], + [ + -54.6, + -25.64 + ], + [ + -54.6, + -25.62 + ], + [ + -54.58, + -25.65 + ], + [ + -54.59, + -25.67 + ], + [ + -54.62, + -25.66 + ], + [ + -54.64, + -25.66 + ], + [ + -54.66, + -25.68 + ], + [ + -54.65, + -25.69 + ], + [ + -54.65, + -25.7 + ], + [ + -54.64, + -25.71 + ], + [ + -54.64, + -25.73 + ], + [ + -54.63, + -25.76 + ], + [ + -54.63, + -25.77 + ], + [ + -54.62, + -25.79 + ], + [ + -54.59, + -25.82 + ], + [ + -54.59, + -25.83 + ], + [ + -54.59, + -25.84 + ], + [ + -54.59, + -25.85 + ], + [ + -54.6, + -25.87 + ], + [ + -54.61, + -25.88 + ], + [ + -54.62, + -25.9 + ], + [ + -54.62, + -25.94 + ], + [ + -54.62, + -25.98 + ], + [ + -54.64, + -25.98 + ], + [ + -54.66, + -25.98 + ], + [ + -54.67, + -25.99 + ], + [ + -54.68, + -26.01 + ], + [ + -54.68, + -26.02 + ], + [ + -54.67, + -26.03 + ], + [ + -54.66, + -26.04 + ], + [ + -54.65, + -26.07 + ], + [ + -54.64, + -26.08 + ], + [ + -54.64, + -26.1 + ], + [ + -54.65, + -26.1 + ], + [ + -54.65, + -26.12 + ], + [ + -54.67, + -26.14 + ], + [ + -54.67, + -26.15 + ], + [ + -54.67, + -26.16 + ], + [ + -54.65, + -26.19 + ], + [ + -54.63, + -26.19 + ], + [ + -54.62, + -26.21 + ], + [ + -54.63, + -26.23 + ], + [ + -54.64, + -26.23 + ], + [ + -54.65, + -26.24 + ], + [ + -54.66, + -26.25 + ], + [ + -54.68, + -26.26 + ], + [ + -54.66, + -26.29 + ], + [ + -54.65, + -26.31 + ], + [ + -54.65, + -26.32 + ], + [ + -54.67, + -26.33 + ], + [ + -54.67, + -26.34 + ], + [ + -54.68, + -26.35 + ], + [ + -54.68, + -26.36 + ], + [ + -54.69, + -26.37 + ], + [ + -54.7, + -26.38 + ], + [ + -54.7, + -26.4 + ], + [ + -54.7, + -26.41 + ], + [ + -54.7, + -26.43 + ], + [ + -54.7, + -26.44 + ], + [ + -54.72, + -26.46 + ], + [ + -54.73, + -26.47 + ], + [ + -54.74, + -26.48 + ], + [ + -54.75, + -26.49 + ], + [ + -54.76, + -26.5 + ], + [ + -54.77, + -26.5 + ], + [ + -54.78, + -26.51 + ], + [ + -54.8, + -26.54 + ], + [ + -54.81, + -26.56 + ], + [ + -54.8, + -26.57 + ], + [ + -54.79, + -26.58 + ], + [ + -54.79, + -26.59 + ], + [ + -54.78, + -26.61 + ], + [ + -54.79, + -26.64 + ], + [ + -54.81, + -26.66 + ], + [ + -54.81, + -26.67 + ], + [ + -54.85, + -26.66 + ], + [ + -54.87, + -26.66 + ], + [ + -54.89, + -26.66 + ], + [ + -54.9, + -26.66 + ], + [ + -54.92, + -26.67 + ], + [ + -54.93, + -26.68 + ], + [ + -54.94, + -26.69 + ], + [ + -54.95, + -26.7 + ], + [ + -54.95, + -26.71 + ], + [ + -54.94, + -26.74 + ], + [ + -54.94, + -26.75 + ], + [ + -54.96, + -26.78 + ], + [ + -54.98, + -26.79 + ], + [ + -55, + -26.79 + ], + [ + -55.02, + -26.79 + ], + [ + -55.08, + -26.82 + ], + [ + -55.15, + -26.88 + ], + [ + -55.15, + -26.91 + ], + [ + -55.14, + -26.92 + ], + [ + -55.14, + -26.93 + ], + [ + -55.13, + -26.94 + ], + [ + -55.14, + -26.95 + ], + [ + -55.16, + -26.96 + ], + [ + -55.22, + -26.96 + ], + [ + -55.23, + -26.95 + ], + [ + -55.26, + -26.94 + ], + [ + -55.27, + -26.94 + ], + [ + -55.28, + -26.95 + ], + [ + -55.3, + -26.96 + ], + [ + -55.34, + -26.96 + ], + [ + -55.36, + -26.96 + ], + [ + -55.38, + -26.97 + ], + [ + -55.4, + -26.98 + ], + [ + -55.42, + -26.99 + ], + [ + -55.43, + -27 + ], + [ + -55.44, + -27.01 + ], + [ + -55.44, + -27.02 + ], + [ + -55.45, + -27.03 + ], + [ + -55.45, + -27.04 + ], + [ + -55.49, + -27.11 + ], + [ + -55.5, + -27.11 + ], + [ + -55.51, + -27.1 + ], + [ + -55.52, + -27.1 + ], + [ + -55.58, + -27.17 + ], + [ + -55.59, + -27.16 + ], + [ + -55.6, + -27.22 + ], + [ + -55.58, + -27.23 + ], + [ + -55.59, + -27.31 + ], + [ + -55.59, + -27.32 + ], + [ + -55.6, + -27.34 + ], + [ + -55.62, + -27.35 + ], + [ + -55.63, + -27.36 + ], + [ + -55.65, + -27.37 + ], + [ + -55.66, + -27.37 + ], + [ + -55.67, + -27.37 + ], + [ + -55.68, + -27.38 + ], + [ + -55.69, + -27.39 + ], + [ + -55.7, + -27.4 + ], + [ + -55.71, + -27.41 + ], + [ + -55.74, + -27.45 + ], + [ + -55.76, + -27.44 + ], + [ + -55.83, + -27.41 + ], + [ + -55.85, + -27.39 + ], + [ + -55.87, + -27.36 + ], + [ + -56.2, + -27.15 + ], + [ + -56.34, + -27.33 + ], + [ + -56.82, + -27.38 + ], + [ + -56.63, + -27.4 + ], + [ + -56.75, + -27.48 + ], + [ + -56.87, + -27.39 + ], + [ + -57.02, + -27.45 + ], + [ + -57.05, + -27.47 + ], + [ + -57.06, + -27.47 + ], + [ + -57.17, + -27.48 + ], + [ + -57.19, + -27.47 + ], + [ + -57.5, + -27.4 + ], + [ + -57.48, + -27.44 + ], + [ + -57.49, + -27.44 + ], + [ + -57.52, + -27.44 + ], + [ + -57.55, + -27.42 + ], + [ + -57.55, + -27.41 + ], + [ + -57.56, + -27.41 + ], + [ + -57.57, + -27.41 + ], + [ + -57.57, + -27.4 + ], + [ + -57.55, + -27.39 + ], + [ + -57.67, + -27.35 + ], + [ + -57.69, + -27.33 + ], + [ + -57.74, + -27.32 + ], + [ + -57.74, + -27.33 + ], + [ + -57.75, + -27.33 + ], + [ + -57.77, + -27.33 + ], + [ + -57.77, + -27.32 + ], + [ + -57.92, + -27.26 + ], + [ + -57.94, + -27.26 + ], + [ + -57.99, + -27.26 + ], + [ + -58.01, + -27.26 + ], + [ + -58.1, + -27.27 + ], + [ + -58.12, + -27.27 + ], + [ + -58.21, + -27.23 + ], + [ + -58.31, + -27.26 + ], + [ + -58.31, + -27.27 + ], + [ + -58.32, + -27.28 + ], + [ + -58.32, + -27.27 + ], + [ + -58.32, + -27.26 + ], + [ + -58.33, + -27.26 + ], + [ + -58.33, + -27.27 + ], + [ + -58.34, + -27.27 + ], + [ + -58.51, + -27.25 + ], + [ + -58.56, + -27.29 + ], + [ + -58.59, + -27.25 + ], + [ + -58.61, + -27.29 + ], + [ + -58.66, + -27.19 + ], + [ + -58.66, + -27.16 + ], + [ + -58.65, + -27.14 + ], + [ + -58.65, + -27.13 + ], + [ + -58.59, + -27.11 + ], + [ + -58.57, + -27.11 + ], + [ + -58.56, + -27.06 + ], + [ + -58.55, + -27.06 + ], + [ + -58.54, + -27.03 + ], + [ + -58.51, + -27.06 + ], + [ + -58.51, + -27.02 + ], + [ + -58.52, + -27 + ], + [ + -58.49, + -27 + ], + [ + -58.47, + -26.98 + ], + [ + -58.48, + -26.96 + ], + [ + -58.49, + -26.94 + ], + [ + -58.49, + -26.93 + ], + [ + -58.45, + -26.93 + ], + [ + -58.45, + -26.92 + ], + [ + -58.38, + -26.88 + ], + [ + -58.36, + -26.87 + ], + [ + -58.33, + -26.87 + ], + [ + -58.32, + -26.86 + ], + [ + -58.32, + -26.85 + ], + [ + -58.31, + -26.81 + ], + [ + -58.29, + -26.76 + ], + [ + -58.26, + -26.76 + ], + [ + -58.25, + -26.75 + ], + [ + -58.25, + -26.74 + ], + [ + -58.26, + -26.72 + ], + [ + -58.26, + -26.71 + ], + [ + -58.26, + -26.68 + ], + [ + -58.26, + -26.65 + ], + [ + -58.19, + -26.64 + ], + [ + -58.21, + -26.63 + ], + [ + -58.19, + -26.6 + ], + [ + -58.2, + -26.58 + ], + [ + -58.21, + -26.55 + ], + [ + -58.22, + -26.53 + ], + [ + -58.21, + -26.51 + ], + [ + -58.23, + -26.47 + ], + [ + -58.21, + -26.47 + ], + [ + -58.18, + -26.46 + ], + [ + -58.22, + -26.41 + ], + [ + -58.21, + -26.38 + ], + [ + -58.18, + -26.37 + ], + [ + -58.18, + -26.36 + ], + [ + -58.14, + -26.25 + ], + [ + -58.13, + -26.21 + ], + [ + -58.12, + -26.19 + ], + [ + -58.1, + -26.13 + ], + [ + -58.08, + -26.11 + ], + [ + -58.01, + -26.1 + ], + [ + -58, + -26.09 + ], + [ + -57.96, + -26.08 + ], + [ + -57.95, + -26.07 + ], + [ + -57.92, + -26.04 + ], + [ + -57.91, + -26.03 + ], + [ + -57.88, + -25.93 + ], + [ + -57.87, + -25.93 + ], + [ + -57.87, + -25.88 + ], + [ + -57.87, + -25.86 + ], + [ + -57.83, + -25.85 + ], + [ + -57.79, + -25.82 + ], + [ + -57.81, + -25.79 + ], + [ + -57.83, + -25.76 + ], + [ + -57.82, + -25.75 + ], + [ + -57.77, + -25.75 + ], + [ + -57.74, + -25.73 + ], + [ + -57.74, + -25.71 + ], + [ + -57.75, + -25.71 + ], + [ + -57.76, + -25.68 + ], + [ + -57.75, + -25.67 + ], + [ + -57.71, + -25.65 + ], + [ + -57.7, + -25.66 + ], + [ + -57.67, + -25.65 + ], + [ + -57.67, + -25.64 + ], + [ + -57.68, + -25.6 + ], + [ + -57.65, + -25.6 + ], + [ + -57.62, + -25.62 + ], + [ + -57.61, + -25.6 + ], + [ + -57.61, + -25.59 + ], + [ + -57.59, + -25.57 + ], + [ + -57.57, + -25.54 + ], + [ + -57.58, + -25.52 + ], + [ + -57.58, + -25.5 + ], + [ + -57.56, + -25.47 + ], + [ + -57.56, + -25.44 + ], + [ + -57.57, + -25.43 + ], + [ + -57.65, + -25.38 + ], + [ + -57.65, + -25.36 + ], + [ + -57.7, + -25.28 + ], + [ + -57.72, + -25.27 + ], + [ + -57.72, + -25.26 + ], + [ + -57.86, + -25.08 + ], + [ + -59.13, + -24.62 + ], + [ + -60.04, + -24.01 + ], + [ + -60.99, + -23.82 + ], + [ + -62.2, + -22.7 + ], + [ + -62.2, + -22.69 + ], + [ + -62.2, + -22.68 + ], + [ + -62.2, + -22.67 + ], + [ + -62.2, + -22.66 + ], + [ + -62.22, + -22.64 + ], + [ + -62.23, + -22.65 + ], + [ + -62.24, + -22.63 + ], + [ + -62.24, + -22.61 + ], + [ + -62.25, + -22.6 + ], + [ + -62.25, + -22.58 + ], + [ + -62.24, + -22.57 + ], + [ + -62.22, + -22.56 + ], + [ + -62.23, + -22.55 + ], + [ + -62.24, + -22.54 + ], + [ + -62.26, + -22.52 + ], + [ + -62.29, + -22.52 + ], + [ + -62.28, + -22.51 + ], + [ + -62.29, + -22.48 + ], + [ + -62.3, + -22.48 + ], + [ + -62.32, + -22.48 + ], + [ + -62.33, + -22.48 + ], + [ + -62.33, + -22.47 + ], + [ + -62.34, + -22.46 + ], + [ + -62.35, + -22.46 + ], + [ + -62.36, + -22.45 + ], + [ + -62.36, + -22.46 + ], + [ + -62.37, + -22.47 + ], + [ + -62.38, + -22.47 + ], + [ + -62.4, + -22.45 + ], + [ + -62.41, + -22.45 + ], + [ + -62.42, + -22.43 + ], + [ + -62.44, + -22.42 + ], + [ + -62.45, + -22.41 + ], + [ + -62.47, + -22.4 + ], + [ + -62.47, + -22.39 + ], + [ + -62.49, + -22.37 + ], + [ + -62.53, + -22.37 + ], + [ + -62.54, + -22.36 + ], + [ + -62.54, + -22.35 + ], + [ + -62.55, + -22.34 + ], + [ + -62.57, + -22.32 + ], + [ + -62.59, + -22.32 + ], + [ + -62.6, + -22.31 + ], + [ + -62.62, + -22.26 + ], + [ + -62.63, + -22.25 + ], + [ + -62.64, + -22.25 + ] + ], + [ + [ + -55.37, + -25.13 + ], + [ + -55.24, + -25.2 + ], + [ + -55.37, + -25.24 + ], + [ + -55.36, + -25.4 + ], + [ + -55.28, + -25.26 + ], + [ + -54.93, + -25.4 + ], + [ + -55.05, + -25.28 + ], + [ + -55.15, + -25.3 + ], + [ + -55.22, + -25.17 + ], + [ + -55.37, + -25.13 + ] + ] + ], + [ + [ + [ + -57.95, + -21.96 + ], + [ + -57.96, + -21.98 + ], + [ + -57.96, + -21.96 + ], + [ + -57.95, + -21.96 + ] + ] + ], + [ + [ + [ + -56.7, + -27.52 + ], + [ + -56.7, + -27.53 + ], + [ + -56.7, + -27.54 + ], + [ + -56.7, + -27.55 + ], + [ + -56.7, + -27.56 + ], + [ + -56.69, + -27.57 + ], + [ + -56.68, + -27.57 + ], + [ + -56.69, + -27.58 + ], + [ + -56.7, + -27.57 + ], + [ + -56.72, + -27.58 + ], + [ + -56.72, + -27.59 + ], + [ + -56.73, + -27.59 + ], + [ + -56.73, + -27.6 + ], + [ + -56.74, + -27.61 + ], + [ + -56.74, + -27.59 + ], + [ + -56.76, + -27.57 + ], + [ + -56.76, + -27.56 + ], + [ + -56.76, + -27.57 + ], + [ + -56.76, + -27.58 + ], + [ + -56.76, + -27.59 + ], + [ + -56.77, + -27.6 + ], + [ + -56.78, + -27.59 + ], + [ + -56.78, + -27.58 + ], + [ + -56.78, + -27.57 + ], + [ + -56.79, + -27.57 + ], + [ + -56.81, + -27.58 + ], + [ + -56.82, + -27.59 + ], + [ + -56.82, + -27.6 + ], + [ + -56.83, + -27.61 + ], + [ + -56.83, + -27.6 + ], + [ + -56.85, + -27.59 + ], + [ + -56.86, + -27.59 + ], + [ + -56.87, + -27.59 + ], + [ + -56.87, + -27.6 + ], + [ + -56.87, + -27.59 + ], + [ + -56.88, + -27.58 + ], + [ + -56.9, + -27.57 + ], + [ + -56.91, + -27.58 + ], + [ + -56.92, + -27.57 + ], + [ + -56.92, + -27.56 + ], + [ + -56.92, + -27.54 + ], + [ + -56.91, + -27.53 + ], + [ + -56.92, + -27.53 + ], + [ + -56.93, + -27.54 + ], + [ + -56.94, + -27.54 + ], + [ + -56.94, + -27.53 + ], + [ + -56.95, + -27.53 + ], + [ + -56.95, + -27.52 + ], + [ + -56.96, + -27.51 + ], + [ + -56.97, + -27.5 + ], + [ + -56.98, + -27.49 + ], + [ + -56.99, + -27.49 + ], + [ + -57, + -27.49 + ], + [ + -57.01, + -27.49 + ], + [ + -57.05, + -27.48 + ], + [ + -57.05, + -27.47 + ], + [ + -57.04, + -27.47 + ], + [ + -57.03, + -27.48 + ], + [ + -57.02, + -27.48 + ], + [ + -57, + -27.47 + ], + [ + -57.01, + -27.47 + ], + [ + -57.04, + -27.47 + ], + [ + -57.02, + -27.45 + ], + [ + -57, + -27.47 + ], + [ + -56.99, + -27.46 + ], + [ + -56.97, + -27.44 + ], + [ + -56.95, + -27.44 + ], + [ + -56.94, + -27.43 + ], + [ + -56.93, + -27.43 + ], + [ + -56.92, + -27.42 + ], + [ + -56.91, + -27.42 + ], + [ + -56.9, + -27.42 + ], + [ + -56.89, + -27.42 + ], + [ + -56.87, + -27.43 + ], + [ + -56.86, + -27.44 + ], + [ + -56.85, + -27.45 + ], + [ + -56.83, + -27.47 + ], + [ + -56.82, + -27.47 + ], + [ + -56.81, + -27.48 + ], + [ + -56.78, + -27.5 + ], + [ + -56.77, + -27.5 + ], + [ + -56.73, + -27.5 + ], + [ + -56.73, + -27.51 + ], + [ + -56.73, + -27.52 + ], + [ + -56.72, + -27.52 + ], + [ + -56.7, + -27.52 + ] + ] + ], + [ + [ + [ + -57.42, + -27.43 + ], + [ + -57.47, + -27.44 + ], + [ + -57.47, + -27.43 + ], + [ + -57.44, + -27.43 + ], + [ + -57.42, + -27.43 + ] + ] + ], + [ + [ + [ + -58.21, + -27.27 + ], + [ + -58.21, + -27.26 + ], + [ + -58.18, + -27.26 + ], + [ + -58.2, + -27.27 + ], + [ + -58.21, + -27.27 + ] + ] + ], + [ + [ + [ + -62.35, + -22.46 + ], + [ + -62.36, + -22.46 + ], + [ + -62.36, + -22.45 + ], + [ + -62.35, + -22.46 + ] + ] + ] + ] + }, + "properties": { + "A3": "PRY" + } + }, + { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + 124.48, + -9.17 + ], + [ + 124.35, + -9.49 + ], + [ + 124.04, + -9.34 + ], + [ + 124.48, + -9.17 + ] + ] + ], + [ + [ + [ + 125.09, + -9.46 + ], + [ + 125.09, + -9.45 + ], + [ + 125, + -9.19 + ], + [ + 125, + -9.18 + ], + [ + 125.19, + -9.16 + ], + [ + 125.14, + -8.99 + ], + [ + 125.13, + -8.99 + ], + [ + 124.98, + -9.07 + ], + [ + 124.95, + -8.96 + ], + [ + 125.21, + -8.61 + ], + [ + 126.57, + -8.48 + ], + [ + 127, + -8.32 + ], + [ + 127.3, + -8.39 + ], + [ + 126.48, + -8.95 + ], + [ + 125.09, + -9.46 + ] + ] + ] + ] + }, + "properties": { + "A3": "TLS" + } + }, + { + "type": "Feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + 35.92, + 35.93 + ], + [ + 36.16, + 35.81 + ], + [ + 36.38, + 36.22 + ], + [ + 36.69, + 36.25 + ], + [ + 36.54, + 36.49 + ], + [ + 36.67, + 36.83 + ], + [ + 37.44, + 36.63 + ], + [ + 38.03, + 36.83 + ], + [ + 38.03, + 36.84 + ], + [ + 38.03, + 36.86 + ], + [ + 39.49, + 36.7 + ], + [ + 40.77, + 37.13 + ], + [ + 41.52, + 37.08 + ], + [ + 42.21, + 37.32 + ], + [ + 42.22, + 37.32 + ], + [ + 42.22, + 37.3 + ], + [ + 42.21, + 37.3 + ], + [ + 42.21, + 37.29 + ], + [ + 42.21, + 37.28 + ], + [ + 42.28, + 37.28 + ], + [ + 42.3, + 37.26 + ], + [ + 42.31, + 37.25 + ], + [ + 42.32, + 37.25 + ], + [ + 42.34, + 37.24 + ], + [ + 42.34, + 37.23 + ], + [ + 42.35, + 37.21 + ], + [ + 42.34, + 37.21 + ], + [ + 42.32, + 37.19 + ], + [ + 42.32, + 37.17 + ], + [ + 42.34, + 37.15 + ], + [ + 42.34, + 37.14 + ], + [ + 42.35, + 37.12 + ], + [ + 42.35, + 37.11 + ], + [ + 41.82, + 36.59 + ], + [ + 41.4, + 36.52 + ], + [ + 41.29, + 36.37 + ], + [ + 41.38, + 35.65 + ], + [ + 41.38, + 35.64 + ], + [ + 41.36, + 35.6 + ], + [ + 41.22, + 35.19 + ], + [ + 41.22, + 35.16 + ], + [ + 41.23, + 34.81 + ], + [ + 41.14, + 34.88 + ], + [ + 41.2, + 34.75 + ], + [ + 40.98, + 34.4 + ], + [ + 39.56, + 33.77 + ], + [ + 39.54, + 33.76 + ], + [ + 39.52, + 33.75 + ], + [ + 38.8, + 33.38 + ], + [ + 38.79, + 33.38 + ], + [ + 38.79, + 33.37 + ], + [ + 38.78, + 33.37 + ], + [ + 36.84, + 32.31 + ], + [ + 36.08, + 32.51 + ], + [ + 35.9, + 32.72 + ], + [ + 35.76, + 32.75 + ], + [ + 35.9, + 32.94 + ], + [ + 35.77, + 33.34 + ], + [ + 36.06, + 33.58 + ], + [ + 35.93, + 33.65 + ], + [ + 36.07, + 33.82 + ], + [ + 36.39, + 33.83 + ], + [ + 36.28, + 33.92 + ], + [ + 36.63, + 34.2 + ], + [ + 36.32, + 34.69 + ], + [ + 36.26, + 34.63 + ], + [ + 36.25, + 34.63 + ], + [ + 36.19, + 34.64 + ], + [ + 36.15, + 34.64 + ], + [ + 36.14, + 34.64 + ], + [ + 36.08, + 34.63 + ], + [ + 36.06, + 34.63 + ], + [ + 35.99, + 34.65 + ], + [ + 35.98, + 34.63 + ], + [ + 35.88, + 34.94 + ], + [ + 35.91, + 35.42 + ], + [ + 35.72, + 35.59 + ], + [ + 35.92, + 35.93 + ] + ], + [ + [ + 38.1, + 36 + ], + [ + 38.36, + 35.78 + ], + [ + 38.57, + 35.87 + ], + [ + 38.12, + 36.07 + ], + [ + 38.19, + 36.38 + ], + [ + 38.1, + 36 + ] + ], + [ + [ + 37.44, + 36.09 + ], + [ + 37.66, + 35.9 + ], + [ + 37.66, + 36.09 + ], + [ + 37.44, + 36.09 + ] + ] + ] + }, + "properties": { + "A3": "SYR" + } + }, + { + "type": "Feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + 19.37, + 41.86 + ], + [ + 19.38, + 41.88 + ], + [ + 19.37, + 41.89 + ], + [ + 19.35, + 41.9 + ], + [ + 19.34, + 41.91 + ], + [ + 19.36, + 41.92 + ], + [ + 19.36, + 41.93 + ], + [ + 19.36, + 41.94 + ], + [ + 19.35, + 41.94 + ], + [ + 19.35, + 41.95 + ], + [ + 19.38, + 41.97 + ], + [ + 19.38, + 41.99 + ], + [ + 19.38, + 42 + ], + [ + 19.28, + 42.18 + ], + [ + 19.66, + 42.63 + ], + [ + 19.83, + 42.47 + ], + [ + 20.08, + 42.56 + ], + [ + 20.54, + 42.17 + ], + [ + 20.55, + 42.16 + ], + [ + 20.59, + 41.88 + ], + [ + 20.47, + 41.51 + ], + [ + 20.56, + 41.41 + ], + [ + 20.52, + 41.25 + ], + [ + 20.52, + 41.24 + ], + [ + 20.63, + 41.09 + ], + [ + 20.73, + 40.91 + ], + [ + 20.98, + 40.88 + ], + [ + 20.98, + 40.8 + ], + [ + 20.96, + 40.48 + ], + [ + 20.68, + 40.1 + ], + [ + 20.48, + 40.06 + ], + [ + 20.46, + 40.07 + ], + [ + 20.28, + 39.71 + ], + [ + 20.01, + 39.69 + ], + [ + 19.86, + 40.04 + ], + [ + 19.29, + 40.42 + ], + [ + 19.48, + 40.35 + ], + [ + 19.34, + 40.67 + ], + [ + 19.53, + 40.91 + ], + [ + 19.39, + 41.41 + ], + [ + 19.62, + 41.78 + ], + [ + 19.37, + 41.86 + ] + ] + ] + }, + "properties": { + "A3": "ALB" + } + }, + { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + 121.51, + 19.25 + ], + [ + 121.35, + 19.36 + ], + [ + 121.52, + 19.39 + ], + [ + 121.51, + 19.25 + ] + ] + ], + [ + [ + [ + 124.32, + 13.91 + ], + [ + 124.42, + 13.66 + ], + [ + 124.19, + 13.52 + ], + [ + 124.02, + 13.66 + ], + [ + 124.13, + 14.06 + ], + [ + 124.32, + 13.91 + ] + ] + ], + [ + [ + [ + 123.1, + 13.04 + ], + [ + 123.39, + 12.69 + ], + [ + 122.93, + 13.11 + ], + [ + 123.1, + 13.04 + ] + ] + ], + [ + [ + [ + 122.05, + 13.48 + ], + [ + 122.15, + 13.37 + ], + [ + 122.01, + 13.2 + ], + [ + 121.81, + 13.46 + ], + [ + 121.87, + 13.57 + ], + [ + 122.05, + 13.48 + ] + ] + ], + [ + [ + [ + 121.85, + 14.9 + ], + [ + 121.84, + 15.04 + ], + [ + 122.05, + 15.01 + ], + [ + 121.95, + 14.63 + ], + [ + 121.85, + 14.9 + ] + ] + ], + [ + [ + [ + 125.42, + 11.91 + ], + [ + 125.49, + 11.45 + ], + [ + 125.63, + 11.36 + ], + [ + 125.53, + 11.2 + ], + [ + 125.67, + 11.2 + ], + [ + 125.76, + 11.01 + ], + [ + 125.66, + 11.14 + ], + [ + 125.23, + 11.09 + ], + [ + 125.15, + 11.28 + ], + [ + 124.98, + 11.28 + ], + [ + 124.99, + 11.42 + ], + [ + 124.82, + 11.52 + ], + [ + 125.04, + 11.75 + ], + [ + 124.39, + 12.2 + ], + [ + 124.27, + 12.57 + ], + [ + 125.15, + 12.58 + ], + [ + 125.34, + 12.41 + ], + [ + 125.28, + 12.3 + ], + [ + 125.52, + 12.19 + ], + [ + 125.42, + 11.91 + ] + ] + ], + [ + [ + [ + 124.36, + 11.64 + ], + [ + 124.54, + 11.68 + ], + [ + 124.61, + 11.49 + ], + [ + 124.46, + 11.47 + ], + [ + 124.36, + 11.64 + ] + ] + ], + [ + [ + [ + 123.66, + 12.34 + ], + [ + 124.05, + 11.97 + ], + [ + 124.07, + 11.72 + ], + [ + 123.53, + 12.22 + ], + [ + 123.14, + 11.93 + ], + [ + 123.3, + 12.21 + ], + [ + 123.24, + 12.6 + ], + [ + 123.38, + 12.54 + ], + [ + 123.33, + 12.43 + ], + [ + 123.44, + 12.52 + ], + [ + 123.66, + 12.34 + ] + ] + ], + [ + [ + [ + 123.59, + 12.64 + ], + [ + 123.73, + 12.61 + ], + [ + 123.79, + 12.34 + ], + [ + 123.59, + 12.64 + ] + ] + ], + [ + [ + [ + 122.43, + 12.45 + ], + [ + 122.66, + 12.48 + ], + [ + 122.68, + 12.33 + ], + [ + 122.43, + 12.45 + ] + ] + ], + [ + [ + [ + 121.99, + 12.16 + ], + [ + 121.92, + 12.31 + ], + [ + 122.12, + 12.67 + ], + [ + 121.99, + 12.16 + ] + ] + ], + [ + [ + [ + 120.89, + 13.5 + ], + [ + 121.2, + 13.44 + ], + [ + 121.56, + 13.12 + ], + [ + 121.56, + 12.61 + ], + [ + 121.24, + 12.21 + ], + [ + 120.93, + 12.5 + ], + [ + 120.67, + 13.16 + ], + [ + 120.3, + 13.44 + ], + [ + 120.89, + 13.5 + ] + ] + ], + [ + [ + [ + 121.73, + 14.18 + ], + [ + 122.23, + 13.9 + ], + [ + 122.25, + 14.24 + ], + [ + 122.33, + 14.11 + ], + [ + 122.42, + 14.31 + ], + [ + 122.71, + 14.34 + ], + [ + 123.04, + 14.1 + ], + [ + 123.11, + 13.71 + ], + [ + 123.33, + 13.79 + ], + [ + 123.23, + 14 + ], + [ + 123.34, + 14.11 + ], + [ + 123.42, + 13.89 + ], + [ + 123.71, + 13.94 + ], + [ + 123.94, + 13.8 + ], + [ + 123.97, + 13.71 + ], + [ + 123.56, + 13.74 + ], + [ + 123.53, + 13.57 + ], + [ + 123.83, + 13.24 + ], + [ + 123.93, + 13.33 + ], + [ + 123.76, + 13.06 + ], + [ + 124.19, + 13.06 + ], + [ + 124.1, + 12.56 + ], + [ + 123.83, + 12.83 + ], + [ + 124.03, + 12.96 + ], + [ + 123.74, + 12.85 + ], + [ + 123.72, + 12.95 + ], + [ + 123.32, + 13.01 + ], + [ + 123.2, + 13.43 + ], + [ + 122.54, + 13.96 + ], + [ + 122.42, + 13.95 + ], + [ + 122.67, + 13.39 + ], + [ + 122.6, + 13.16 + ], + [ + 122.4, + 13.52 + ], + [ + 121.75, + 13.97 + ], + [ + 121.29, + 13.6 + ], + [ + 121.04, + 13.63 + ], + [ + 121, + 13.78 + ], + [ + 120.89, + 13.68 + ], + [ + 120.91, + 13.87 + ], + [ + 120.79, + 13.93 + ], + [ + 120.65, + 13.77 + ], + [ + 120.59, + 14.23 + ], + [ + 120.99, + 14.49 + ], + [ + 120.95, + 14.73 + ], + [ + 120.65, + 14.77 + ], + [ + 120.58, + 14.9 + ], + [ + 120.61, + 14.48 + ], + [ + 120.5, + 14.41 + ], + [ + 120.27, + 14.85 + ], + [ + 120.08, + 14.79 + ], + [ + 119.77, + 16.28 + ], + [ + 119.93, + 16.38 + ], + [ + 120.14, + 16.04 + ], + [ + 120.41, + 16.13 + ], + [ + 120.28, + 16.62 + ], + [ + 120.45, + 16.98 + ], + [ + 120.35, + 17.68 + ], + [ + 120.56, + 18.49 + ], + [ + 120.85, + 18.65 + ], + [ + 121.86, + 18.26 + ], + [ + 122.22, + 18.52 + ], + [ + 122.34, + 18.31 + ], + [ + 122.14, + 17.78 + ], + [ + 122.25, + 17.37 + ], + [ + 122.52, + 17.13 + ], + [ + 122.46, + 16.89 + ], + [ + 122.07, + 16.09 + ], + [ + 121.99, + 16.03 + ], + [ + 122.12, + 16.26 + ], + [ + 121.56, + 15.9 + ], + [ + 121.64, + 15.71 + ], + [ + 121.37, + 15.34 + ], + [ + 121.73, + 14.7 + ], + [ + 121.6, + 14.65 + ], + [ + 121.73, + 14.18 + ] + ], + [ + [ + 121.01, + 14.09 + ], + [ + 120.98, + 13.88 + ], + [ + 121.11, + 14.04 + ], + [ + 121.01, + 14.09 + ] + ], + [ + [ + 121.09, + 14.52 + ], + [ + 121.19, + 14.18 + ], + [ + 121.5, + 14.32 + ], + [ + 121.42, + 14.41 + ], + [ + 121.33, + 14.28 + ], + [ + 121.31, + 14.48 + ], + [ + 121.2, + 14.4 + ], + [ + 121.09, + 14.52 + ] + ] + ], + [ + [ + [ + 119.88, + 11.96 + ], + [ + 120.07, + 11.79 + ], + [ + 119.96, + 11.66 + ], + [ + 119.88, + 11.96 + ] + ] + ], + [ + [ + [ + 119.89, + 12.28 + ], + [ + 120.16, + 12.12 + ], + [ + 120.22, + 12.23 + ], + [ + 120.34, + 11.99 + ], + [ + 119.98, + 12.01 + ], + [ + 119.89, + 12.28 + ] + ] + ], + [ + [ + [ + 119.77, + 11.48 + ], + [ + 119.87, + 11.51 + ], + [ + 119.83, + 11.38 + ], + [ + 119.77, + 11.48 + ] + ] + ], + [ + [ + [ + 126.1, + 9.84 + ], + [ + 126.05, + 9.75 + ], + [ + 125.96, + 9.88 + ], + [ + 126.06, + 10.06 + ], + [ + 126.1, + 9.84 + ] + ] + ], + [ + [ + [ + 125.93, + 9.66 + ], + [ + 125.94, + 9.76 + ], + [ + 125.94, + 9.56 + ], + [ + 125.93, + 9.66 + ] + ] + ], + [ + [ + [ + 125.66, + 10.34 + ], + [ + 125.67, + 9.85 + ], + [ + 125.47, + 10.14 + ], + [ + 125.64, + 10.47 + ], + [ + 125.66, + 10.34 + ] + ] + ], + [ + [ + [ + 124.76, + 9.21 + ], + [ + 124.77, + 9.08 + ], + [ + 124.63, + 9.18 + ], + [ + 124.76, + 9.21 + ] + ] + ], + [ + [ + [ + 124.96, + 11.42 + ], + [ + 125, + 10.73 + ], + [ + 125.27, + 10.3 + ], + [ + 125.13, + 10.16 + ], + [ + 124.97, + 10.38 + ], + [ + 125.03, + 10 + ], + [ + 124.76, + 10.16 + ], + [ + 124.8, + 10.66 + ], + [ + 124.69, + 10.93 + ], + [ + 124.38, + 10.92 + ], + [ + 124.29, + 11.53 + ], + [ + 124.64, + 11.3 + ], + [ + 124.96, + 11.42 + ] + ] + ], + [ + [ + [ + 123.97, + 11.09 + ], + [ + 124.06, + 11.29 + ], + [ + 124, + 10.4 + ], + [ + 123.64, + 10.08 + ], + [ + 123.3, + 9.42 + ], + [ + 123.37, + 9.99 + ], + [ + 123.97, + 11.09 + ] + ] + ], + [ + [ + [ + 124.06, + 10.05 + ], + [ + 124.37, + 10.15 + ], + [ + 124.56, + 10.02 + ], + [ + 124.59, + 9.76 + ], + [ + 124.26, + 9.6 + ], + [ + 123.87, + 9.63 + ], + [ + 123.8, + 9.84 + ], + [ + 124.06, + 10.05 + ] + ] + ], + [ + [ + [ + 123.45, + 9.19 + ], + [ + 123.62, + 9.3 + ], + [ + 123.7, + 9.14 + ], + [ + 123.45, + 9.19 + ] + ] + ], + [ + [ + [ + 122.52, + 10.51 + ], + [ + 122.67, + 10.75 + ], + [ + 122.68, + 10.5 + ], + [ + 122.52, + 10.4 + ], + [ + 122.52, + 10.51 + ] + ] + ], + [ + [ + [ + 122.19, + 10.63 + ], + [ + 121.92, + 10.44 + ], + [ + 122.1, + 11.69 + ], + [ + 121.84, + 11.76 + ], + [ + 121.88, + 11.9 + ], + [ + 122.39, + 11.73 + ], + [ + 122.56, + 11.51 + ], + [ + 122.83, + 11.61 + ], + [ + 122.87, + 11.41 + ], + [ + 123.15, + 11.6 + ], + [ + 123.13, + 11.17 + ], + [ + 122.77, + 11.01 + ], + [ + 122.58, + 10.69 + ], + [ + 122.19, + 10.63 + ] + ] + ], + [ + [ + [ + 119.77, + 10.5 + ], + [ + 119.83, + 10.65 + ], + [ + 120, + 10.57 + ], + [ + 119.77, + 10.5 + ] + ] + ], + [ + [ + [ + 122.72, + 9.38 + ], + [ + 122.38, + 9.84 + ], + [ + 122.87, + 10.1 + ], + [ + 122.79, + 10.52 + ], + [ + 122.96, + 10.9 + ], + [ + 123.19, + 11 + ], + [ + 123.5, + 10.93 + ], + [ + 123.57, + 10.79 + ], + [ + 123.1, + 9.63 + ], + [ + 123.28, + 9.21 + ], + [ + 123.01, + 9.04 + ], + [ + 122.72, + 9.38 + ] + ] + ], + [ + [ + [ + 122.81, + 7.31 + ], + [ + 122.82, + 7.44 + ], + [ + 122.98, + 7.37 + ], + [ + 122.81, + 7.31 + ] + ] + ], + [ + [ + [ + 118.42, + 9.25 + ], + [ + 117.17, + 8.34 + ], + [ + 117.63, + 9.05 + ], + [ + 118.13, + 9.34 + ], + [ + 118.76, + 10.13 + ], + [ + 118.81, + 10.03 + ], + [ + 118.99, + 10.41 + ], + [ + 119.26, + 10.48 + ], + [ + 119.34, + 10.73 + ], + [ + 119.22, + 10.95 + ], + [ + 119.46, + 10.72 + ], + [ + 119.3, + 11.01 + ], + [ + 119.5, + 11.42 + ], + [ + 119.48, + 10.87 + ], + [ + 119.72, + 10.51 + ], + [ + 119.32, + 10.31 + ], + [ + 119.2, + 10.05 + ], + [ + 118.75, + 9.93 + ], + [ + 118.76, + 9.67 + ], + [ + 118.42, + 9.25 + ] + ] + ], + [ + [ + [ + 117.03, + 7.81 + ], + [ + 116.93, + 7.94 + ], + [ + 117.07, + 8.08 + ], + [ + 117.03, + 7.81 + ] + ] + ], + [ + [ + [ + 121.42, + 5.99 + ], + [ + 121.29, + 5.86 + ], + [ + 120.87, + 5.94 + ], + [ + 121.03, + 6.09 + ], + [ + 121.42, + 5.99 + ] + ] + ], + [ + [ + [ + 122.17, + 6.46 + ], + [ + 121.96, + 6.41 + ], + [ + 121.8, + 6.64 + ], + [ + 122.06, + 6.75 + ], + [ + 122.32, + 6.63 + ], + [ + 122.17, + 6.46 + ] + ] + ], + [ + [ + [ + 125.49, + 6.99 + ], + [ + 125.38, + 6.62 + ], + [ + 125.58, + 6.52 + ], + [ + 125.72, + 6.1 + ], + [ + 125.33, + 5.55 + ], + [ + 125.17, + 5.81 + ], + [ + 125.27, + 6.08 + ], + [ + 124.92, + 5.86 + ], + [ + 124.06, + 6.38 + ], + [ + 123.96, + 6.91 + ], + [ + 124.26, + 7.38 + ], + [ + 123.69, + 7.81 + ], + [ + 123.42, + 7.81 + ], + [ + 123.41, + 7.36 + ], + [ + 123.3, + 7.53 + ], + [ + 123.12, + 7.51 + ], + [ + 123.11, + 7.74 + ], + [ + 122.99, + 7.46 + ], + [ + 122.9, + 7.54 + ], + [ + 122.81, + 7.43 + ], + [ + 122.81, + 7.75 + ], + [ + 122.62, + 7.78 + ], + [ + 122.35, + 7.47 + ], + [ + 122.16, + 6.91 + ], + [ + 121.94, + 6.97 + ], + [ + 121.9, + 7.11 + ], + [ + 122.23, + 7.96 + ], + [ + 122.92, + 8.15 + ], + [ + 123.03, + 8.49 + ], + [ + 123.3, + 8.52 + ], + [ + 123.38, + 8.73 + ], + [ + 123.57, + 8.57 + ], + [ + 123.69, + 8.64 + ], + [ + 123.84, + 8.43 + ], + [ + 123.87, + 8.16 + ], + [ + 123.66, + 7.95 + ], + [ + 124.23, + 8.22 + ], + [ + 124.39, + 8.59 + ], + [ + 124.74, + 8.5 + ], + [ + 124.8, + 9 + ], + [ + 125.08, + 8.83 + ], + [ + 125.21, + 9.09 + ], + [ + 125.54, + 8.97 + ], + [ + 125.45, + 9.82 + ], + [ + 125.66, + 9.57 + ], + [ + 125.96, + 9.48 + ], + [ + 126.06, + 9.23 + ], + [ + 126.21, + 9.31 + ], + [ + 126.16, + 9.11 + ], + [ + 126.33, + 8.84 + ], + [ + 126.08, + 8.61 + ], + [ + 126.4, + 8.49 + ], + [ + 126.36, + 7.89 + ], + [ + 126.57, + 7.72 + ], + [ + 126.61, + 7.29 + ], + [ + 126.28, + 6.93 + ], + [ + 126.35, + 6.8 + ], + [ + 126.16, + 6.91 + ], + [ + 126.26, + 6.75 + ], + [ + 126.19, + 6.27 + ], + [ + 125.85, + 7.36 + ], + [ + 125.49, + 6.99 + ] + ], + [ + [ + 124.26, + 7.97 + ], + [ + 124.1, + 7.82 + ], + [ + 124.33, + 7.8 + ], + [ + 124.36, + 8.02 + ], + [ + 124.26, + 7.97 + ] + ] + ], + [ + [ + [ + 120.2, + 5.19 + ], + [ + 119.82, + 5.06 + ], + [ + 120.21, + 5.35 + ], + [ + 120.2, + 5.19 + ] + ] + ] + ] + }, + "properties": { + "A3": "PHL" + } + }, + { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + -61.81, + 16.27 + ], + [ + -61.55, + 16.28 + ], + [ + -61.62, + 15.97 + ], + [ + -61.81, + 16.27 + ] + ] + ], + [ + [ + [ + -61.35, + 16.24 + ], + [ + -61.55, + 16.25 + ], + [ + -61.46, + 16.51 + ], + [ + -61.17, + 16.25 + ], + [ + -61.35, + 16.24 + ] + ] + ] + ] + }, + "properties": { + "A3": "GLP" + } + }, + { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + -69.95, + -4.23 + ], + [ + -69.94, + -4.22 + ], + [ + -69.93, + -4.22 + ], + [ + -69.7, + -2.91 + ], + [ + -69.7, + -2.9 + ], + [ + -69.69, + -2.88 + ], + [ + -69.69, + -2.87 + ], + [ + -69.46, + -1.56 + ], + [ + -69.42, + -1.56 + ], + [ + -69.13, + -1.76 + ], + [ + -69.41, + -1.56 + ], + [ + -69.42, + -1.56 + ], + [ + -69.45, + -1.55 + ], + [ + -69.45, + -1.54 + ], + [ + -69.45, + -1.48 + ], + [ + -69.43, + -1.46 + ], + [ + -69.43, + -1.38 + ], + [ + -69.41, + -1.37 + ], + [ + -69.4, + -1.34 + ], + [ + -69.41, + -1.33 + ], + [ + -69.41, + -1.32 + ], + [ + -69.41, + -1.31 + ], + [ + -69.41, + -1.3 + ], + [ + -69.41, + -1.29 + ], + [ + -69.41, + -1.27 + ], + [ + -69.42, + -1.27 + ], + [ + -69.42, + -1.25 + ], + [ + -69.43, + -1.24 + ], + [ + -69.43, + -1.22 + ], + [ + -69.43, + -1.21 + ], + [ + -69.42, + -1.19 + ], + [ + -69.41, + -1.18 + ], + [ + -69.41, + -1.15 + ], + [ + -69.4, + -1.14 + ], + [ + -69.41, + -1.1 + ], + [ + -69.41, + -1.09 + ], + [ + -69.43, + -1.08 + ], + [ + -69.43, + -1.07 + ], + [ + -69.61, + -0.5 + ], + [ + -70.04, + -0.19 + ], + [ + -70.05, + 0.56 + ], + [ + -69.48, + 0.74 + ], + [ + -69.2, + 0.62 + ], + [ + -69.2, + 0.64 + ], + [ + -69.2, + 0.65 + ], + [ + -69.18, + 0.65 + ], + [ + -69.16, + 0.65 + ], + [ + -69.15, + 0.64 + ], + [ + -69.14, + 0.64 + ], + [ + -69.13, + 0.63 + ], + [ + -69.12, + 0.64 + ], + [ + -69.12, + 0.65 + ], + [ + -69.12, + 0.66 + ], + [ + -69.13, + 0.68 + ], + [ + -69.14, + 0.68 + ], + [ + -69.14, + 0.69 + ], + [ + -69.16, + 0.71 + ], + [ + -69.18, + 0.72 + ], + [ + -69.19, + 0.74 + ], + [ + -69.17, + 0.76 + ], + [ + -69.16, + 0.76 + ], + [ + -69.15, + 0.78 + ], + [ + -69.15, + 0.8 + ], + [ + -69.16, + 0.81 + ], + [ + -69.17, + 0.83 + ], + [ + -69.17, + 0.85 + ], + [ + -69.15, + 0.85 + ], + [ + -69.14, + 0.85 + ], + [ + -69.14, + 0.86 + ], + [ + -69.14, + 0.87 + ], + [ + -69.14, + 0.88 + ], + [ + -69.16, + 0.88 + ], + [ + -69.17, + 0.89 + ], + [ + -69.18, + 0.9 + ], + [ + -69.19, + 0.92 + ], + [ + -69.18, + 0.94 + ], + [ + -69.17, + 0.93 + ], + [ + -69.17, + 0.94 + ], + [ + -69.17, + 0.95 + ], + [ + -69.19, + 0.96 + ], + [ + -69.2, + 0.96 + ], + [ + -69.21, + 0.97 + ], + [ + -69.22, + 0.97 + ], + [ + -69.21, + 1.01 + ], + [ + -69.21, + 1.02 + ], + [ + -69.23, + 1.03 + ], + [ + -69.23, + 1.04 + ], + [ + -69.24, + 1.04 + ], + [ + -69.24, + 1.05 + ], + [ + -69.25, + 1.06 + ], + [ + -69.27, + 1.05 + ], + [ + -69.28, + 1.05 + ], + [ + -69.29, + 1.06 + ], + [ + -69.3, + 1.06 + ], + [ + -69.31, + 1.08 + ], + [ + -69.33, + 1.08 + ], + [ + -69.35, + 1.08 + ], + [ + -69.36, + 1.08 + ], + [ + -69.37, + 1.08 + ], + [ + -69.4, + 1.06 + ], + [ + -69.43, + 1.05 + ], + [ + -69.43, + 1.07 + ], + [ + -69.47, + 1.08 + ], + [ + -69.49, + 1.08 + ], + [ + -69.51, + 1.07 + ], + [ + -69.53, + 1.07 + ], + [ + -69.56, + 1.07 + ], + [ + -69.57, + 1.07 + ], + [ + -69.58, + 1.08 + ], + [ + -69.59, + 1.09 + ], + [ + -69.62, + 1.1 + ], + [ + -69.63, + 1.09 + ], + [ + -69.67, + 1.08 + ], + [ + -69.68, + 1.07 + ], + [ + -69.69, + 1.07 + ], + [ + -69.71, + 1.09 + ], + [ + -69.7, + 1.11 + ], + [ + -69.71, + 1.12 + ], + [ + -69.73, + 1.11 + ], + [ + -69.75, + 1.11 + ], + [ + -69.78, + 1.1 + ], + [ + -69.79, + 1.09 + ], + [ + -69.8, + 1.08 + ], + [ + -69.84, + 1.08 + ], + [ + -69.84, + 1.72 + ], + [ + -68.16, + 1.73 + ], + [ + -68.29, + 1.83 + ], + [ + -68.2, + 2.03 + ], + [ + -67.9, + 1.81 + ], + [ + -67.4, + 2.23 + ], + [ + -67.33, + 1.94 + ], + [ + -67.15, + 1.83 + ], + [ + -67.09, + 1.17 + ], + [ + -66.85, + 1.23 + ], + [ + -66.84, + 1.22 + ], + [ + -66.41, + 0.84 + ], + [ + -66.41, + 0.83 + ], + [ + -66.12, + 0.75 + ], + [ + -65.62, + 1.01 + ], + [ + -65.5, + 0.87 + ], + [ + -65.6, + 0.69 + ], + [ + -65.44, + 0.69 + ], + [ + -65.16, + 1.12 + ], + [ + -64.8, + 1.32 + ], + [ + -64.74, + 1.23 + ], + [ + -64.39, + 1.53 + ], + [ + -64.34, + 1.36 + ], + [ + -64.07, + 1.65 + ], + [ + -63.99, + 1.98 + ], + [ + -63.4, + 2.15 + ], + [ + -63.42, + 2.45 + ], + [ + -64.06, + 2.5 + ], + [ + -63.98, + 2.72 + ], + [ + -64.23, + 3.12 + ], + [ + -64.17, + 3.57 + ], + [ + -64.81, + 4.27 + ], + [ + -64.56, + 4.11 + ], + [ + -64.16, + 4.13 + ], + [ + -63.96, + 3.87 + ], + [ + -63.68, + 3.91 + ], + [ + -63.68, + 4.02 + ], + [ + -63.5, + 3.84 + ], + [ + -63.43, + 3.98 + ], + [ + -63.2, + 3.95 + ], + [ + -62.96, + 3.61 + ], + [ + -62.74, + 3.67 + ], + [ + -62.75, + 4.03 + ], + [ + -62.55, + 4.02 + ], + [ + -62.46, + 4.18 + ], + [ + -61.93, + 4.12 + ], + [ + -61.56, + 4.25 + ], + [ + -61.32, + 4.54 + ], + [ + -60.99, + 4.52 + ], + [ + -60.59, + 4.93 + ], + [ + -60.73, + 5.19 + ], + [ + -60.74, + 5.2 + ], + [ + -60.22, + 5.28 + ], + [ + -60.21, + 5.28 + ], + [ + -60.19, + 5.25 + ], + [ + -60.11, + 5.19 + ], + [ + -60.1, + 5.14 + ], + [ + -60.06, + 5.14 + ], + [ + -60.06, + 5.13 + ], + [ + -60.06, + 5.12 + ], + [ + -60.05, + 5.12 + ], + [ + -60.03, + 5.1 + ], + [ + -60.02, + 5.09 + ], + [ + -60.16, + 4.52 + ], + [ + -59.67, + 4.38 + ], + [ + -59.73, + 4.18 + ], + [ + -59.52, + 3.94 + ], + [ + -59.87, + 3.58 + ], + [ + -59.8, + 3.36 + ], + [ + -59.98, + 2.93 + ], + [ + -59.8, + 2.29 + ], + [ + -59.69, + 1.76 + ], + [ + -58.83, + 1.17 + ], + [ + -58.5, + 1.27 + ], + [ + -58.51, + 1.46 + ], + [ + -58.32, + 1.6 + ], + [ + -58, + 1.5 + ], + [ + -57.99, + 1.66 + ], + [ + -57.54, + 1.7 + ], + [ + -57.31, + 2 + ], + [ + -56.8, + 1.85 + ], + [ + -56.47, + 1.95 + ], + [ + -55.9, + 1.89 + ], + [ + -56.14, + 2.27 + ], + [ + -55.97, + 2.53 + ], + [ + -55.39, + 2.42 + ], + [ + -55, + 2.59 + ], + [ + -54.6, + 2.33 + ], + [ + -54.11, + 2.11 + ], + [ + -53.74, + 2.37 + ], + [ + -52.96, + 2.17 + ], + [ + -52.55, + 2.52 + ], + [ + -52.36, + 3.01 + ], + [ + -52.34, + 3.05 + ], + [ + -52.34, + 3.06 + ], + [ + -52.33, + 3.07 + ], + [ + -52.34, + 3.11 + ], + [ + -52.34, + 3.12 + ], + [ + -52.35, + 3.13 + ], + [ + -52.34, + 3.15 + ], + [ + -52.33, + 3.16 + ], + [ + -52.3, + 3.18 + ], + [ + -52.3, + 3.19 + ], + [ + -52.29, + 3.22 + ], + [ + -52.29, + 3.23 + ], + [ + -52.26, + 3.25 + ], + [ + -52.25, + 3.24 + ], + [ + -52.23, + 3.25 + ], + [ + -52.22, + 3.26 + ], + [ + -52.2, + 3.29 + ], + [ + -52.19, + 3.3 + ], + [ + -52.19, + 3.32 + ], + [ + -52.16, + 3.36 + ], + [ + -52.15, + 3.38 + ], + [ + -52.13, + 3.4 + ], + [ + -52.12, + 3.42 + ], + [ + -52.12, + 3.43 + ], + [ + -52.11, + 3.44 + ], + [ + -52.11, + 3.45 + ], + [ + -52.09, + 3.46 + ], + [ + -52.09, + 3.48 + ], + [ + -52.07, + 3.51 + ], + [ + -52.07, + 3.52 + ], + [ + -52.05, + 3.53 + ], + [ + -52.05, + 3.54 + ], + [ + -52.03, + 3.58 + ], + [ + -52.01, + 3.6 + ], + [ + -52.01, + 3.61 + ], + [ + -51.99, + 3.64 + ], + [ + -51.99, + 3.65 + ], + [ + -51.99, + 3.66 + ], + [ + -51.98, + 3.68 + ], + [ + -51.97, + 3.71 + ], + [ + -51.96, + 3.71 + ], + [ + -51.94, + 3.72 + ], + [ + -51.92, + 3.73 + ], + [ + -51.92, + 3.74 + ], + [ + -51.93, + 3.77 + ], + [ + -51.9, + 3.78 + ], + [ + -51.91, + 3.8 + ], + [ + -51.9, + 3.8 + ], + [ + -51.88, + 3.8 + ], + [ + -51.87, + 3.81 + ], + [ + -51.86, + 3.83 + ], + [ + -51.84, + 3.84 + ], + [ + -51.83, + 3.85 + ], + [ + -51.82, + 3.86 + ], + [ + -51.81, + 3.87 + ], + [ + -51.8, + 3.89 + ], + [ + -51.79, + 3.9 + ], + [ + -51.78, + 3.92 + ], + [ + -51.78, + 3.94 + ], + [ + -51.78, + 3.96 + ], + [ + -51.78, + 3.97 + ], + [ + -51.77, + 3.98 + ], + [ + -51.75, + 4 + ], + [ + -51.74, + 4.01 + ], + [ + -51.69, + 4.03 + ], + [ + -51.68, + 4.04 + ], + [ + -51.65, + 4.04 + ], + [ + -51.6, + 4.24 + ], + [ + -51.53, + 4.16 + ], + [ + -51.51, + 4.44 + ], + [ + -51.21, + 4.15 + ], + [ + -51.2, + 3.72 + ], + [ + -51.06, + 3.88 + ], + [ + -51.04, + 3.12 + ], + [ + -50.68, + 2.18 + ], + [ + -50.78, + 2.1 + ], + [ + -50.61, + 2.04 + ], + [ + -50.62, + 2.02 + ], + [ + -50.61, + 2.04 + ], + [ + -50.47, + 1.82 + ], + [ + -49.93, + 1.7 + ], + [ + -49.88, + 1.34 + ], + [ + -50.16, + 1.21 + ], + [ + -49.87, + 1.2 + ], + [ + -50.27, + 0.9 + ], + [ + -50.78, + 0.19 + ], + [ + -51.06, + 0.03 + ], + [ + -50.75, + 0.04 + ], + [ + -50.62, + -0.08 + ], + [ + -51.08, + -0.4 + ], + [ + -50.77, + -0.45 + ], + [ + -51.04, + -0.65 + ], + [ + -51.17, + -0.49 + ], + [ + -51.26, + -1.18 + ], + [ + -51.41, + -1.19 + ], + [ + -51.25, + -1.01 + ], + [ + -51.94, + -1.47 + ], + [ + -51.88, + -1.19 + ], + [ + -51.67, + -1.12 + ], + [ + -51.68, + -1.03 + ], + [ + -51.7, + -1.11 + ], + [ + -51.77, + -1.07 + ], + [ + -51.91, + -1.16 + ], + [ + -52.01, + -1.42 + ], + [ + -54.01, + -1.96 + ], + [ + -54.07, + -2.25 + ], + [ + -54.1, + -2.04 + ], + [ + -54.51, + -2.33 + ], + [ + -54.25, + -2.38 + ], + [ + -54.56, + -2.45 + ], + [ + -54.53, + -2.13 + ], + [ + -55.04, + -2.14 + ], + [ + -55, + -2.04 + ], + [ + -55.02, + -2 + ], + [ + -54.48, + -2.11 + ], + [ + -54.94, + -2.01 + ], + [ + -54.74, + -1.93 + ], + [ + -54.84, + -1.89 + ], + [ + -55.2, + -1.93 + ], + [ + -55.23, + -2.06 + ], + [ + -55.02, + -2.06 + ], + [ + -55.09, + -2.14 + ], + [ + -55.33, + -2.11 + ], + [ + -55.42, + -1.88 + ], + [ + -55.52, + -1.91 + ], + [ + -55.46, + -2.08 + ], + [ + -55.53, + -1.98 + ], + [ + -55.91, + -2.15 + ], + [ + -55.37, + -2.32 + ], + [ + -54.87, + -2.18 + ], + [ + -54.71, + -2.43 + ], + [ + -54.36, + -2.53 + ], + [ + -54.06, + -2.39 + ], + [ + -54.01, + -2.11 + ], + [ + -53.77, + -1.95 + ], + [ + -51.99, + -1.45 + ], + [ + -51.88, + -1.54 + ], + [ + -52.24, + -1.54 + ], + [ + -52.34, + -1.71 + ], + [ + -52.03, + -2.78 + ], + [ + -51.95, + -2.6 + ], + [ + -52.16, + -2.18 + ], + [ + -52.2, + -1.63 + ], + [ + -51.94, + -1.59 + ], + [ + -51.26, + -1.22 + ], + [ + -51.15, + -0.69 + ], + [ + -51.13, + -0.88 + ], + [ + -50.89, + -0.56 + ], + [ + -50.81, + -0.68 + ], + [ + -50.96, + -0.73 + ], + [ + -50.81, + -0.73 + ], + [ + -50.76, + -1.05 + ], + [ + -50.76, + -0.56 + ], + [ + -50.69, + -0.66 + ], + [ + -50.57, + -0.66 + ], + [ + -50.69, + -0.62 + ], + [ + -50.7, + -0.37 + ], + [ + -50.34, + -0.09 + ], + [ + -49.61, + -0.25 + ], + [ + -49.2, + -0.13 + ], + [ + -48.44, + -0.23 + ], + [ + -48.49, + -0.74 + ], + [ + -48.66, + -0.7 + ], + [ + -48.51, + -0.88 + ], + [ + -48.65, + -1.03 + ], + [ + -48.76, + -1.19 + ], + [ + -48.89, + -1.5 + ], + [ + -49.33, + -1.64 + ], + [ + -49.39, + -1.55 + ], + [ + -49.3, + -1.69 + ], + [ + -49.46, + -1.63 + ], + [ + -49.79, + -1.82 + ], + [ + -50.05, + -1.74 + ], + [ + -50.23, + -1.78 + ], + [ + -50.38, + -1.82 + ], + [ + -50.37, + -1.97 + ], + [ + -49.97, + -1.81 + ], + [ + -49.84, + -2.04 + ], + [ + -49.83, + -1.89 + ], + [ + -49.28, + -1.71 + ], + [ + -49.51, + -2.61 + ], + [ + -49.13, + -1.77 + ], + [ + -48.86, + -1.55 + ], + [ + -48.96, + -1.77 + ], + [ + -48.85, + -1.65 + ], + [ + -48.58, + -1.31 + ], + [ + -48.49, + -1.6 + ], + [ + -48.47, + -1.14 + ], + [ + -48.26, + -1.1 + ], + [ + -48.31, + -0.94 + ], + [ + -48.06, + -0.67 + ], + [ + -47.93, + -0.89 + ], + [ + -47.96, + -0.64 + ], + [ + -47.84, + -0.78 + ], + [ + -47.65, + -0.58 + ], + [ + -47.73, + -0.82 + ], + [ + -47.58, + -0.78 + ], + [ + -47.56, + -0.58 + ], + [ + -47.5, + -0.82 + ], + [ + -47.48, + -0.59 + ], + [ + -47.34, + -0.73 + ], + [ + -47.32, + -0.59 + ], + [ + -47.18, + -0.84 + ], + [ + -47.09, + -0.72 + ], + [ + -47.11, + -0.93 + ], + [ + -46.95, + -0.72 + ], + [ + -47, + -0.97 + ], + [ + -46.84, + -0.75 + ], + [ + -46.82, + -0.93 + ], + [ + -46.65, + -0.82 + ], + [ + -46.74, + -0.99 + ], + [ + -46.44, + -1.1 + ], + [ + -46.35, + -1.01 + ], + [ + -46.35, + -1.13 + ], + [ + -46.2, + -0.89 + ], + [ + -46.27, + -1.16 + ], + [ + -46.08, + -1.02 + ], + [ + -46.06, + -1.22 + ], + [ + -45.98, + -1.05 + ], + [ + -46.06, + -1.21 + ], + [ + -45.9, + -1.12 + ], + [ + -45.92, + -1.31 + ], + [ + -45.72, + -1.11 + ], + [ + -45.77, + -1.38 + ], + [ + -45.52, + -1.3 + ], + [ + -45.55, + -1.53 + ], + [ + -45.31, + -1.37 + ], + [ + -45.42, + -1.72 + ], + [ + -45.22, + -1.87 + ], + [ + -45.2, + -1.5 + ], + [ + -45.16, + -1.59 + ], + [ + -45.15, + -1.47 + ], + [ + -45.01, + -1.49 + ], + [ + -45.06, + -1.61 + ], + [ + -44.97, + -1.61 + ], + [ + -44.83, + -1.42 + ], + [ + -44.91, + -1.65 + ], + [ + -45.01, + -1.67 + ], + [ + -44.83, + -1.69 + ], + [ + -44.81, + -1.59 + ], + [ + -44.76, + -1.73 + ], + [ + -44.88, + -1.77 + ], + [ + -44.6, + -1.74 + ], + [ + -44.48, + -1.99 + ], + [ + -44.83, + -2.31 + ], + [ + -44.66, + -2.29 + ], + [ + -44.76, + -2.43 + ], + [ + -44.65, + -2.45 + ], + [ + -44.46, + -2.15 + ], + [ + -44.36, + -2.34 + ], + [ + -44.58, + -2.42 + ], + [ + -44.5, + -2.48 + ], + [ + -44.7, + -2.71 + ], + [ + -44.61, + -3.04 + ], + [ + -44.83, + -3.38 + ], + [ + -44.42, + -2.97 + ], + [ + -44.36, + -2.64 + ], + [ + -44.39, + -2.78 + ], + [ + -44.18, + -2.77 + ], + [ + -44.22, + -2.89 + ], + [ + -43.93, + -2.56 + ], + [ + -43.62, + -2.55 + ], + [ + -43.53, + -2.42 + ], + [ + -43.47, + -2.53 + ], + [ + -43.4, + -2.34 + ], + [ + -42.19, + -2.82 + ], + [ + -41.79, + -2.73 + ], + [ + -41.68, + -2.88 + ], + [ + -41.33, + -2.92 + ], + [ + -41.34, + -3.03 + ], + [ + -41.19, + -2.98 + ], + [ + -41.26, + -2.89 + ], + [ + -40.5, + -2.78 + ], + [ + -39.99, + -2.84 + ], + [ + -39.39, + -3.18 + ], + [ + -38.46, + -3.71 + ], + [ + -37.15, + -4.95 + ], + [ + -36.96, + -4.92 + ], + [ + -36.62, + -5.13 + ], + [ + -35.98, + -5.04 + ], + [ + -35.42, + -5.22 + ], + [ + -34.83, + -6.97 + ], + [ + -34.84, + -7.62 + ], + [ + -35.15, + -8.92 + ], + [ + -35.35, + -9.26 + ], + [ + -35.7, + -9.67 + ], + [ + -35.8, + -9.72 + ], + [ + -35.78, + -9.7 + ], + [ + -35.76, + -9.67 + ], + [ + -35.76, + -9.65 + ], + [ + -35.74, + -9.62 + ], + [ + -35.77, + -9.58 + ], + [ + -35.78, + -9.7 + ], + [ + -35.81, + -9.73 + ], + [ + -35.83, + -9.73 + ], + [ + -35.83, + -9.71 + ], + [ + -36.05, + -10.08 + ], + [ + -36.29, + -10.29 + ], + [ + -36.39, + -10.5 + ], + [ + -36.43, + -10.41 + ], + [ + -37.18, + -11.07 + ], + [ + -37.76, + -12.23 + ], + [ + -38.28, + -12.88 + ], + [ + -38.53, + -13.01 + ], + [ + -38.42, + -12.77 + ], + [ + -38.62, + -12.75 + ], + [ + -38.71, + -12.58 + ], + [ + -38.81, + -12.84 + ], + [ + -38.84, + -12.66 + ], + [ + -38.93, + -12.73 + ], + [ + -38.93, + -12.86 + ], + [ + -38.72, + -12.88 + ], + [ + -38.89, + -13.12 + ], + [ + -39.1, + -13.54 + ], + [ + -39.05, + -13.48 + ], + [ + -38.99, + -13.53 + ], + [ + -38.98, + -13.83 + ], + [ + -39.06, + -13.69 + ], + [ + -39.15, + -13.75 + ], + [ + -39.07, + -13.79 + ], + [ + -39.12, + -13.96 + ], + [ + -39, + -13.97 + ], + [ + -38.98, + -14.06 + ], + [ + -39.09, + -14.17 + ], + [ + -38.97, + -14.08 + ], + [ + -38.93, + -13.91 + ], + [ + -39.08, + -14.8 + ], + [ + -38.86, + -15.86 + ], + [ + -39.21, + -17.17 + ], + [ + -39.14, + -17.69 + ], + [ + -39.35, + -17.86 + ], + [ + -39.73, + -18.52 + ], + [ + -39.77, + -19.55 + ], + [ + -40.18, + -19.93 + ], + [ + -40.42, + -20.64 + ], + [ + -40.75, + -20.86 + ], + [ + -41.07, + -21.5 + ], + [ + -40.98, + -21.95 + ], + [ + -41.19, + -22.13 + ], + [ + -41.62, + -22.21 + ], + [ + -41.96, + -22.54 + ], + [ + -41.86, + -22.75 + ], + [ + -42.01, + -23 + ], + [ + -42.16, + -22.95 + ], + [ + -42.1, + -22.82 + ], + [ + -43.05, + -22.98 + ], + [ + -43.09, + -22.68 + ], + [ + -43.28, + -22.78 + ], + [ + -43.19, + -22.99 + ], + [ + -43.99, + -23.1 + ], + [ + -43.59, + -23.03 + ], + [ + -43.84, + -22.9 + ], + [ + -44.24, + -23.06 + ], + [ + -44.36, + -22.92 + ], + [ + -44.69, + -23.08 + ], + [ + -44.71, + -23.23 + ], + [ + -44.5, + -23.29 + ], + [ + -44.59, + -23.36 + ], + [ + -45.01, + -23.4 + ], + [ + -45.42, + -23.63 + ], + [ + -45.41, + -23.82 + ], + [ + -45.9, + -23.76 + ], + [ + -46.29, + -24.04 + ], + [ + -46.42, + -23.96 + ], + [ + -46.8, + -24.18 + ], + [ + -48.05, + -25.01 + ], + [ + -48.03, + -25.18 + ], + [ + -47.89, + -25.11 + ], + [ + -48.21, + -25.46 + ], + [ + -48.11, + -25.26 + ], + [ + -48.43, + -25.24 + ], + [ + -48.47, + -25.48 + ], + [ + -48.74, + -25.36 + ], + [ + -48.56, + -25.52 + ], + [ + -48.35, + -25.57 + ], + [ + -48.53, + -25.85 + ], + [ + -48.73, + -25.87 + ], + [ + -48.56, + -25.89 + ], + [ + -48.74, + -26.35 + ], + [ + -48.53, + -26.16 + ], + [ + -48.69, + -26.68 + ], + [ + -48.61, + -27.11 + ], + [ + -48.46, + -27.14 + ], + [ + -48.61, + -27.24 + ], + [ + -48.57, + -27.89 + ], + [ + -48.76, + -28.5 + ], + [ + -48.7, + -28.25 + ], + [ + -48.89, + -28.34 + ], + [ + -48.76, + -28.54 + ], + [ + -49.7, + -29.31 + ], + [ + -50.79, + -31.14 + ], + [ + -52.08, + -32.14 + ], + [ + -52.1, + -31.84 + ], + [ + -51.88, + -31.88 + ], + [ + -51.28, + -31.5 + ], + [ + -51.17, + -31.07 + ], + [ + -51, + -31.03 + ], + [ + -50.98, + -31.15 + ], + [ + -50.96, + -30.9 + ], + [ + -50.72, + -30.82 + ], + [ + -50.74, + -30.37 + ], + [ + -50.58, + -30.49 + ], + [ + -50.54, + -30.2 + ], + [ + -51.06, + -30.4 + ], + [ + -51.02, + -30.27 + ], + [ + -51.32, + -29.99 + ], + [ + -51.33, + -30.26 + ], + [ + -51.12, + -30.41 + ], + [ + -51.41, + -30.64 + ], + [ + -51.47, + -31.09 + ], + [ + -51.96, + -31.35 + ], + [ + -52.02, + -31.69 + ], + [ + -52.24, + -31.73 + ], + [ + -52.12, + -31.95 + ], + [ + -52.25, + -32.07 + ], + [ + -52.12, + -31.97 + ], + [ + -52.1, + -32.16 + ], + [ + -52.6, + -33.07 + ], + [ + -52.79, + -33.3 + ], + [ + -53.37, + -33.74 + ], + [ + -53.43, + -33.73 + ], + [ + -53.43, + -33.72 + ], + [ + -53.51, + -33.69 + ], + [ + -53.53, + -33.69 + ], + [ + -53.53, + -33.67 + ], + [ + -53.53, + -33.63 + ], + [ + -53.53, + -33.6 + ], + [ + -53.46, + -33.21 + ], + [ + -53.14, + -32.81 + ], + [ + -52.72, + -32.84 + ], + [ + -52.6, + -32.16 + ], + [ + -52.75, + -32.18 + ], + [ + -52.76, + -32.44 + ], + [ + -53.18, + -32.65 + ], + [ + -53.29, + -32.62 + ], + [ + -53.31, + -32.6 + ], + [ + -53.35, + -32.59 + ], + [ + -53.36, + -32.58 + ], + [ + -53.39, + -32.58 + ], + [ + -53.4, + -32.58 + ], + [ + -53.43, + -32.56 + ], + [ + -53.44, + -32.55 + ], + [ + -53.44, + -32.54 + ], + [ + -53.54, + -32.47 + ], + [ + -53.55, + -32.47 + ], + [ + -53.57, + -32.46 + ], + [ + -53.59, + -32.43 + ], + [ + -53.6, + -32.43 + ], + [ + -53.61, + -32.42 + ], + [ + -53.61, + -32.4 + ], + [ + -53.62, + -32.4 + ], + [ + -53.64, + -32.34 + ], + [ + -53.66, + -32.29 + ], + [ + -53.66, + -32.28 + ], + [ + -53.68, + -32.25 + ], + [ + -53.68, + -32.24 + ], + [ + -53.68, + -32.23 + ], + [ + -53.71, + -32.19 + ], + [ + -53.7, + -32.19 + ], + [ + -53.73, + -32.13 + ], + [ + -53.74, + -32.12 + ], + [ + -53.74, + -32.1 + ], + [ + -53.75, + -32.08 + ], + [ + -53.96, + -31.95 + ], + [ + -54.36, + -31.72 + ], + [ + -54.59, + -31.46 + ], + [ + -55.24, + -31.26 + ], + [ + -55.58, + -30.83 + ], + [ + -56.01, + -31.08 + ], + [ + -56.02, + -30.79 + ], + [ + -56.78, + -30.15 + ], + [ + -56.78, + -30.14 + ], + [ + -56.82, + -30.11 + ], + [ + -56.91, + -30.11 + ], + [ + -56.91, + -30.1 + ], + [ + -57.09, + -30.1 + ], + [ + -57.09, + -30.11 + ], + [ + -57.09, + -30.12 + ], + [ + -57.13, + -30.14 + ], + [ + -57.13, + -30.15 + ], + [ + -57.16, + -30.22 + ], + [ + -57.17, + -30.22 + ], + [ + -57.2, + -30.28 + ], + [ + -57.28, + -30.29 + ], + [ + -57.3, + -30.27 + ], + [ + -57.31, + -30.26 + ], + [ + -57.56, + -30.26 + ], + [ + -57.57, + -30.26 + ], + [ + -57.56, + -30.22 + ], + [ + -57.6, + -30.19 + ], + [ + -57.59, + -30.18 + ], + [ + -57.54, + -30.16 + ], + [ + -57.52, + -30.15 + ], + [ + -57.49, + -30.13 + ], + [ + -57.46, + -30.11 + ], + [ + -57.45, + -30.08 + ], + [ + -57.44, + -30.07 + ], + [ + -57.41, + -30.04 + ], + [ + -57.39, + -30.02 + ], + [ + -57.38, + -30.02 + ], + [ + -57.35, + -30 + ], + [ + -57.33, + -29.98 + ], + [ + -57.32, + -29.93 + ], + [ + -57.33, + -29.92 + ], + [ + -57.33, + -29.89 + ], + [ + -57.33, + -29.88 + ], + [ + -57.31, + -29.85 + ], + [ + -57.3, + -29.84 + ], + [ + -57.28, + -29.82 + ], + [ + -57.22, + -29.78 + ], + [ + -57.2, + -29.78 + ], + [ + -57.16, + -29.78 + ], + [ + -57.1, + -29.75 + ], + [ + -57.07, + -29.73 + ], + [ + -57.07, + -29.72 + ], + [ + -57.04, + -29.69 + ], + [ + -57.02, + -29.66 + ], + [ + -57.01, + -29.65 + ], + [ + -56.99, + -29.62 + ], + [ + -56.98, + -29.61 + ], + [ + -56.96, + -29.59 + ], + [ + -56.94, + -29.57 + ], + [ + -56.93, + -29.56 + ], + [ + -56.88, + -29.52 + ], + [ + -56.82, + -29.49 + ], + [ + -56.81, + -29.48 + ], + [ + -56.78, + -29.44 + ], + [ + -56.78, + -29.41 + ], + [ + -56.76, + -29.37 + ], + [ + -56.73, + -29.37 + ], + [ + -56.7, + -29.36 + ], + [ + -56.69, + -29.34 + ], + [ + -56.69, + -29.33 + ], + [ + -56.66, + -29.29 + ], + [ + -56.65, + -29.28 + ], + [ + -56.64, + -29.19 + ], + [ + -56.63, + -29.18 + ], + [ + -56.62, + -29.18 + ], + [ + -56.62, + -29.17 + ], + [ + -56.6, + -29.14 + ], + [ + -56.59, + -29.12 + ], + [ + -56.58, + -29.12 + ], + [ + -56.57, + -29.12 + ], + [ + -56.56, + -29.12 + ], + [ + -56.55, + -29.12 + ], + [ + -56.53, + -29.1 + ], + [ + -56.48, + -29.09 + ], + [ + -56.46, + -29.08 + ], + [ + -56.41, + -29.07 + ], + [ + -56.41, + -29.05 + ], + [ + -56.41, + -29.04 + ], + [ + -56.4, + -29.03 + ], + [ + -56.41, + -29.01 + ], + [ + -56.41, + -28.98 + ], + [ + -56.41, + -28.97 + ], + [ + -56.39, + -28.96 + ], + [ + -56.38, + -28.95 + ], + [ + -56.37, + -28.95 + ], + [ + -56.35, + -28.94 + ], + [ + -56.33, + -28.93 + ], + [ + -56.31, + -28.91 + ], + [ + -56.3, + -28.89 + ], + [ + -56.01, + -28.61 + ], + [ + -56, + -28.59 + ], + [ + -56, + -28.58 + ], + [ + -56.01, + -28.57 + ], + [ + -56.03, + -28.54 + ], + [ + -56.02, + -28.53 + ], + [ + -56.02, + -28.52 + ], + [ + -56.01, + -28.51 + ], + [ + -55.99, + -28.5 + ], + [ + -55.97, + -28.5 + ], + [ + -55.96, + -28.5 + ], + [ + -55.92, + -28.48 + ], + [ + -55.89, + -28.48 + ], + [ + -55.89, + -28.44 + ], + [ + -55.9, + -28.41 + ], + [ + -55.9, + -28.39 + ], + [ + -55.89, + -28.38 + ], + [ + -55.79, + -28.37 + ], + [ + -55.77, + -28.37 + ], + [ + -55.75, + -28.37 + ], + [ + -55.74, + -28.37 + ], + [ + -55.73, + -28.38 + ], + [ + -55.73, + -28.4 + ], + [ + -55.72, + -28.41 + ], + [ + -55.72, + -28.42 + ], + [ + -55.69, + -28.41 + ], + [ + -55.69, + -28.39 + ], + [ + -55.69, + -28.38 + ], + [ + -55.68, + -28.37 + ], + [ + -55.67, + -28.35 + ], + [ + -55.67, + -28.33 + ], + [ + -55.69, + -28.32 + ], + [ + -55.7, + -28.31 + ], + [ + -55.71, + -28.3 + ], + [ + -55.74, + -28.29 + ], + [ + -55.76, + -28.28 + ], + [ + -55.77, + -28.28 + ], + [ + -55.78, + -28.27 + ], + [ + -55.78, + -28.26 + ], + [ + -55.78, + -28.25 + ], + [ + -55.75, + -28.24 + ], + [ + -55.74, + -28.23 + ], + [ + -55.71, + -28.23 + ], + [ + -55.69, + -28.21 + ], + [ + -55.68, + -28.21 + ], + [ + -55.67, + -28.19 + ], + [ + -55.65, + -28.18 + ], + [ + -55.63, + -28.18 + ], + [ + -55.63, + -28.17 + ], + [ + -55.62, + -28.16 + ], + [ + -55.61, + -28.12 + ], + [ + -55.59, + -28.12 + ], + [ + -55.58, + -28.15 + ], + [ + -55.56, + -28.16 + ], + [ + -55.54, + -28.12 + ], + [ + -55.52, + -28.12 + ], + [ + -55.52, + -28.11 + ], + [ + -55.51, + -28.1 + ], + [ + -55.5, + -28.09 + ], + [ + -55.5, + -28.08 + ], + [ + -55.48, + -28.08 + ], + [ + -55.47, + -28.09 + ], + [ + -55.45, + -28.1 + ], + [ + -55.43, + -28.07 + ], + [ + -55.42, + -28.06 + ], + [ + -55.39, + -28.04 + ], + [ + -55.37, + -28 + ], + [ + -55.38, + -27.99 + ], + [ + -55.38, + -27.98 + ], + [ + -55.37, + -27.97 + ], + [ + -55.34, + -27.97 + ], + [ + -55.34, + -27.96 + ], + [ + -55.33, + -27.94 + ], + [ + -55.33, + -27.93 + ], + [ + -55.31, + -27.92 + ], + [ + -55.29, + -27.93 + ], + [ + -55.28, + -27.93 + ], + [ + -55.26, + -27.93 + ], + [ + -55.25, + -27.92 + ], + [ + -55.25, + -27.91 + ], + [ + -55.24, + -27.9 + ], + [ + -55.23, + -27.88 + ], + [ + -55.21, + -27.87 + ], + [ + -55.2, + -27.86 + ], + [ + -55.16, + -27.87 + ], + [ + -55.16, + -27.88 + ], + [ + -55.15, + -27.88 + ], + [ + -55.13, + -27.89 + ], + [ + -55.12, + -27.87 + ], + [ + -55.13, + -27.86 + ], + [ + -55.12, + -27.86 + ], + [ + -55.11, + -27.85 + ], + [ + -55.1, + -27.85 + ], + [ + -55.08, + -27.85 + ], + [ + -55.04, + -27.86 + ], + [ + -55.02, + -27.85 + ], + [ + -55.02, + -27.84 + ], + [ + -55.02, + -27.83 + ], + [ + -55.04, + -27.8 + ], + [ + -55.01, + -27.8 + ], + [ + -55, + -27.79 + ], + [ + -54.94, + -27.77 + ], + [ + -54.93, + -27.76 + ], + [ + -54.93, + -27.75 + ], + [ + -54.91, + -27.73 + ], + [ + -54.9, + -27.71 + ], + [ + -54.91, + -27.65 + ], + [ + -54.91, + -27.64 + ], + [ + -54.86, + -27.63 + ], + [ + -54.85, + -27.63 + ], + [ + -54.84, + -27.62 + ], + [ + -54.84, + -27.59 + ], + [ + -54.83, + -27.59 + ], + [ + -54.83, + -27.58 + ], + [ + -54.83, + -27.57 + ], + [ + -54.82, + -27.55 + ], + [ + -54.82, + -27.54 + ], + [ + -54.79, + -27.56 + ], + [ + -54.79, + -27.57 + ], + [ + -54.76, + -27.58 + ], + [ + -54.73, + -27.56 + ], + [ + -54.71, + -27.57 + ], + [ + -54.7, + -27.57 + ], + [ + -54.69, + -27.57 + ], + [ + -54.68, + -27.57 + ], + [ + -54.65, + -27.54 + ], + [ + -54.61, + -27.53 + ], + [ + -54.61, + -27.52 + ], + [ + -54.61, + -27.51 + ], + [ + -54.6, + -27.5 + ], + [ + -54.59, + -27.48 + ], + [ + -54.59, + -27.46 + ], + [ + -54.57, + -27.45 + ], + [ + -54.56, + -27.47 + ], + [ + -54.55, + -27.48 + ], + [ + -54.54, + -27.49 + ], + [ + -54.54, + -27.5 + ], + [ + -54.52, + -27.51 + ], + [ + -54.51, + -27.49 + ], + [ + -54.51, + -27.48 + ], + [ + -54.48, + -27.48 + ], + [ + -54.47, + -27.48 + ], + [ + -54.46, + -27.48 + ], + [ + -54.44, + -27.47 + ], + [ + -54.47, + -27.44 + ], + [ + -54.44, + -27.43 + ], + [ + -54.43, + -27.42 + ], + [ + -54.42, + -27.42 + ], + [ + -54.42, + -27.41 + ], + [ + -54.4, + -27.41 + ], + [ + -54.38, + -27.43 + ], + [ + -54.36, + -27.46 + ], + [ + -54.35, + -27.47 + ], + [ + -54.34, + -27.46 + ], + [ + -54.34, + -27.44 + ], + [ + -54.34, + -27.43 + ], + [ + -54.34, + -27.4 + ], + [ + -54.31, + -27.43 + ], + [ + -54.3, + -27.44 + ], + [ + -54.27, + -27.44 + ], + [ + -54.27, + -27.43 + ], + [ + -54.27, + -27.42 + ], + [ + -54.27, + -27.41 + ], + [ + -54.22, + -27.39 + ], + [ + -54.21, + -27.37 + ], + [ + -54.21, + -27.34 + ], + [ + -54.21, + -27.33 + ], + [ + -54.2, + -27.31 + ], + [ + -54.19, + -27.29 + ], + [ + -54.18, + -27.26 + ], + [ + -54.16, + -27.26 + ], + [ + -54.14, + -27.3 + ], + [ + -54.12, + -27.3 + ], + [ + -54.09, + -27.3 + ], + [ + -54.07, + -27.28 + ], + [ + -54.05, + -27.26 + ], + [ + -54.03, + -27.26 + ], + [ + -54.02, + -27.25 + ], + [ + -54.02, + -27.22 + ], + [ + -54.01, + -27.2 + ], + [ + -54, + -27.2 + ], + [ + -53.97, + -27.2 + ], + [ + -53.96, + -27.19 + ], + [ + -53.96, + -27.18 + ], + [ + -53.96, + -27.17 + ], + [ + -53.95, + -27.15 + ], + [ + -53.94, + -27.15 + ], + [ + -53.92, + -27.17 + ], + [ + -53.91, + -27.18 + ], + [ + -53.89, + -27.16 + ], + [ + -53.89, + -27.14 + ], + [ + -53.88, + -27.13 + ], + [ + -53.87, + -27.14 + ], + [ + -53.86, + -27.14 + ], + [ + -53.85, + -27.14 + ], + [ + -53.85, + -27.16 + ], + [ + -53.84, + -27.17 + ], + [ + -53.83, + -27.16 + ], + [ + -53.8, + -27.14 + ], + [ + -53.81, + -27.14 + ], + [ + -53.81, + -27.1 + ], + [ + -53.78, + -27.05 + ], + [ + -53.78, + -27.06 + ], + [ + -53.75, + -27.02 + ], + [ + -53.76, + -27.02 + ], + [ + -53.74, + -27 + ], + [ + -53.74, + -26.99 + ], + [ + -53.72, + -26.98 + ], + [ + -53.7, + -26.96 + ], + [ + -53.7, + -26.95 + ], + [ + -53.68, + -26.94 + ], + [ + -53.68, + -26.9 + ], + [ + -53.68, + -26.86 + ], + [ + -53.64, + -26.21 + ], + [ + -53.83, + -25.78 + ], + [ + -53.96, + -25.64 + ], + [ + -53.96, + -25.63 + ], + [ + -53.97, + -25.62 + ], + [ + -53.99, + -25.59 + ], + [ + -54, + -25.58 + ], + [ + -54.02, + -25.57 + ], + [ + -54.03, + -25.57 + ], + [ + -54.04, + -25.58 + ], + [ + -54.06, + -25.57 + ], + [ + -54.07, + -25.56 + ], + [ + -54.08, + -25.56 + ], + [ + -54.09, + -25.57 + ], + [ + -54.11, + -25.54 + ], + [ + -54.13, + -25.51 + ], + [ + -54.14, + -25.52 + ], + [ + -54.15, + -25.52 + ], + [ + -54.16, + -25.53 + ], + [ + -54.18, + -25.54 + ], + [ + -54.19, + -25.53 + ], + [ + -54.22, + -25.57 + ], + [ + -54.23, + -25.56 + ], + [ + -54.24, + -25.57 + ], + [ + -54.24, + -25.58 + ], + [ + -54.24, + -25.59 + ], + [ + -54.25, + -25.59 + ], + [ + -54.26, + -25.58 + ], + [ + -54.27, + -25.57 + ], + [ + -54.28, + -25.56 + ], + [ + -54.28, + -25.55 + ], + [ + -54.29, + -25.55 + ], + [ + -54.29, + -25.56 + ], + [ + -54.3, + -25.56 + ], + [ + -54.32, + -25.56 + ], + [ + -54.33, + -25.57 + ], + [ + -54.34, + -25.59 + ], + [ + -54.34, + -25.6 + ], + [ + -54.37, + -25.6 + ], + [ + -54.38, + -25.6 + ], + [ + -54.39, + -25.61 + ], + [ + -54.39, + -25.62 + ], + [ + -54.39, + -25.63 + ], + [ + -54.4, + -25.64 + ], + [ + -54.4, + -25.65 + ], + [ + -54.42, + -25.65 + ], + [ + -54.44, + -25.69 + ], + [ + -54.45, + -25.66 + ], + [ + -54.47, + -25.64 + ], + [ + -54.49, + -25.62 + ], + [ + -54.51, + -25.62 + ], + [ + -54.54, + -25.62 + ], + [ + -54.53, + -25.61 + ], + [ + -54.55, + -25.59 + ], + [ + -54.56, + -25.59 + ], + [ + -54.59, + -25.59 + ], + [ + -54.59, + -25.57 + ], + [ + -54.59, + -25.56 + ], + [ + -54.59, + -25.54 + ], + [ + -54.6, + -25.51 + ], + [ + -54.6, + -25.49 + ], + [ + -54.6, + -25.48 + ], + [ + -54.61, + -25.48 + ], + [ + -54.61, + -25.45 + ], + [ + -54.61, + -25.44 + ], + [ + -54.6, + -25.43 + ], + [ + -54.59, + -25.42 + ], + [ + -54.59, + -25.41 + ], + [ + -54.42, + -25.28 + ], + [ + -54.3, + -25.28 + ], + [ + -54.44, + -25.09 + ], + [ + -54.28, + -25.02 + ], + [ + -54.43, + -25.01 + ], + [ + -54.27, + -24.86 + ], + [ + -54.33, + -24.69 + ], + [ + -54.32, + -24.65 + ], + [ + -54.3, + -24.45 + ], + [ + -54.27, + -24.45 + ], + [ + -54.28, + -24.29 + ], + [ + -54.31, + -24.26 + ], + [ + -54.33, + -24.18 + ], + [ + -54.34, + -24.14 + ], + [ + -54.34, + -24.13 + ], + [ + -54.32, + -24.1 + ], + [ + -54.3, + -24.09 + ], + [ + -54.29, + -24.07 + ], + [ + -54.19, + -24.05 + ], + [ + -54.31, + -24.05 + ], + [ + -54.67, + -23.81 + ], + [ + -55.04, + -23.98 + ], + [ + -55.43, + -23.94 + ], + [ + -55.63, + -23 + ], + [ + -55.61, + -22.66 + ], + [ + -55.85, + -22.28 + ], + [ + -56.21, + -22.28 + ], + [ + -56.39, + -22.07 + ], + [ + -56.64, + -22.27 + ], + [ + -57.15, + -22.23 + ], + [ + -57.16, + -22.23 + ], + [ + -57.34, + -22.23 + ], + [ + -57.92, + -22.11 + ], + [ + -57.93, + -22.11 + ], + [ + -57.94, + -22.09 + ], + [ + -57.94, + -22.08 + ], + [ + -57.99, + -22.09 + ], + [ + -58.01, + -22.04 + ], + [ + -57.99, + -22.02 + ], + [ + -57.96, + -21.99 + ], + [ + -57.96, + -21.98 + ], + [ + -57.95, + -21.96 + ], + [ + -57.94, + -21.94 + ], + [ + -57.92, + -21.88 + ], + [ + -57.94, + -21.86 + ], + [ + -57.96, + -21.85 + ], + [ + -57.97, + -21.85 + ], + [ + -57.93, + -21.82 + ], + [ + -57.92, + -21.8 + ], + [ + -57.91, + -21.78 + ], + [ + -57.92, + -21.77 + ], + [ + -57.95, + -21.75 + ], + [ + -57.93, + -21.72 + ], + [ + -57.92, + -21.72 + ], + [ + -57.91, + -21.72 + ], + [ + -57.9, + -21.71 + ], + [ + -57.9, + -21.7 + ], + [ + -57.89, + -21.68 + ], + [ + -57.92, + -21.67 + ], + [ + -57.93, + -21.66 + ], + [ + -57.94, + -21.63 + ], + [ + -57.93, + -21.61 + ], + [ + -57.92, + -21.6 + ], + [ + -57.91, + -21.59 + ], + [ + -57.93, + -21.58 + ], + [ + -57.96, + -21.56 + ], + [ + -57.97, + -21.53 + ], + [ + -57.97, + -21.52 + ], + [ + -57.96, + -21.51 + ], + [ + -57.93, + -21.48 + ], + [ + -57.93, + -21.47 + ], + [ + -57.93, + -21.45 + ], + [ + -57.92, + -21.43 + ], + [ + -57.91, + -21.43 + ], + [ + -57.91, + -21.41 + ], + [ + -57.89, + -21.38 + ], + [ + -57.88, + -21.37 + ], + [ + -57.88, + -21.36 + ], + [ + -57.86, + -21.35 + ], + [ + -57.85, + -21.33 + ], + [ + -57.85, + -21.32 + ], + [ + -57.87, + -21.31 + ], + [ + -57.89, + -21.31 + ], + [ + -57.91, + -21.3 + ], + [ + -57.92, + -21.28 + ], + [ + -57.91, + -21.27 + ], + [ + -57.89, + -21.26 + ], + [ + -57.86, + -21.23 + ], + [ + -57.85, + -21.23 + ], + [ + -57.85, + -21.22 + ], + [ + -57.85, + -21.19 + ], + [ + -57.85, + -21.18 + ], + [ + -57.86, + -21.16 + ], + [ + -57.86, + -21.15 + ], + [ + -57.86, + -21.13 + ], + [ + -57.86, + -21.12 + ], + [ + -57.85, + -21.09 + ], + [ + -57.86, + -21.07 + ], + [ + -57.87, + -21.06 + ], + [ + -57.87, + -21.04 + ], + [ + -57.86, + -21.04 + ], + [ + -57.85, + -21.03 + ], + [ + -57.85, + -21.02 + ], + [ + -57.82, + -20.96 + ], + [ + -57.83, + -20.93 + ], + [ + -57.83, + -20.94 + ], + [ + -57.84, + -20.94 + ], + [ + -57.88, + -20.92 + ], + [ + -57.89, + -20.91 + ], + [ + -57.91, + -20.9 + ], + [ + -57.92, + -20.9 + ], + [ + -57.92, + -20.89 + ], + [ + -57.91, + -20.88 + ], + [ + -57.9, + -20.87 + ], + [ + -57.89, + -20.87 + ], + [ + -57.88, + -20.86 + ], + [ + -57.87, + -20.85 + ], + [ + -57.85, + -20.84 + ], + [ + -57.86, + -20.82 + ], + [ + -57.88, + -20.81 + ], + [ + -57.89, + -20.8 + ], + [ + -57.92, + -20.79 + ], + [ + -57.93, + -20.8 + ], + [ + -57.94, + -20.8 + ], + [ + -57.95, + -20.8 + ], + [ + -57.95, + -20.78 + ], + [ + -57.95, + -20.76 + ], + [ + -57.94, + -20.75 + ], + [ + -57.92, + -20.74 + ], + [ + -57.9, + -20.75 + ], + [ + -57.88, + -20.75 + ], + [ + -57.87, + -20.75 + ], + [ + -57.87, + -20.72 + ], + [ + -57.88, + -20.72 + ], + [ + -57.88, + -20.71 + ], + [ + -57.91, + -20.68 + ], + [ + -57.91, + -20.67 + ], + [ + -57.94, + -20.67 + ], + [ + -57.94, + -20.68 + ], + [ + -57.95, + -20.69 + ], + [ + -57.95, + -20.7 + ], + [ + -57.96, + -20.7 + ], + [ + -57.97, + -20.7 + ], + [ + -57.99, + -20.7 + ], + [ + -57.99, + -20.69 + ], + [ + -57.99, + -20.68 + ], + [ + -57.97, + -20.66 + ], + [ + -57.98, + -20.64 + ], + [ + -58, + -20.63 + ], + [ + -58.01, + -20.6 + ], + [ + -58, + -20.58 + ], + [ + -58, + -20.56 + ], + [ + -58.01, + -20.54 + ], + [ + -58.01, + -20.53 + ], + [ + -58.02, + -20.53 + ], + [ + -58.02, + -20.49 + ], + [ + -58.01, + -20.47 + ], + [ + -58, + -20.46 + ], + [ + -58, + -20.43 + ], + [ + -58.01, + -20.42 + ], + [ + -58.03, + -20.4 + ], + [ + -58.06, + -20.39 + ], + [ + -58.08, + -20.37 + ], + [ + -58.09, + -20.36 + ], + [ + -58.1, + -20.34 + ], + [ + -58.1, + -20.31 + ], + [ + -58.09, + -20.29 + ], + [ + -58.09, + -20.28 + ], + [ + -58.09, + -20.26 + ], + [ + -58.11, + -20.25 + ], + [ + -58.12, + -20.25 + ], + [ + -58.13, + -20.26 + ], + [ + -58.16, + -20.25 + ], + [ + -58.17, + -20.23 + ], + [ + -58.15, + -20.21 + ], + [ + -58.14, + -20.18 + ], + [ + -58.16, + -20.18 + ], + [ + -58.17, + -20.17 + ], + [ + -58.14, + -20.15 + ], + [ + -58.11, + -20.14 + ], + [ + -58.11, + -20.13 + ], + [ + -58.1, + -20.12 + ], + [ + -58.09, + -20.11 + ], + [ + -58.04, + -20.1 + ], + [ + -58.04, + -20.08 + ], + [ + -58.04, + -20.07 + ], + [ + -58.02, + -20.06 + ], + [ + -58, + -20.06 + ], + [ + -57.99, + -20.06 + ], + [ + -57.98, + -20.05 + ], + [ + -57.97, + -20.04 + ], + [ + -57.96, + -20.03 + ], + [ + -57.95, + -20.02 + ], + [ + -57.93, + -20.02 + ], + [ + -57.92, + -20.03 + ], + [ + -57.91, + -20.04 + ], + [ + -57.89, + -20.03 + ], + [ + -57.89, + -20.01 + ], + [ + -57.88, + -20 + ], + [ + -57.87, + -19.99 + ], + [ + -57.86, + -19.98 + ], + [ + -57.86, + -19.97 + ], + [ + -58.13, + -19.76 + ], + [ + -57.7, + -19.02 + ], + [ + -57.7, + -19.01 + ], + [ + -57.7, + -19 + ], + [ + -57.59, + -18.35 + ], + [ + -57.43, + -18.44 + ], + [ + -57.58, + -18.33 + ], + [ + -57.51, + -18.19 + ], + [ + -57.61, + -18.04 + ], + [ + -57.69, + -17.81 + ], + [ + -57.61, + -17.73 + ], + [ + -57.57, + -17.84 + ], + [ + -57.54, + -17.7 + ], + [ + -57.71, + -17.73 + ], + [ + -57.72, + -17.72 + ], + [ + -57.73, + -17.72 + ], + [ + -57.74, + -17.69 + ], + [ + -57.75, + -17.68 + ], + [ + -57.76, + -17.66 + ], + [ + -57.77, + -17.66 + ], + [ + -57.78, + -17.61 + ], + [ + -57.78, + -17.6 + ], + [ + -57.79, + -17.59 + ], + [ + -57.79, + -17.58 + ], + [ + -57.78, + -17.58 + ], + [ + -57.62, + -17.68 + ], + [ + -57.73, + -17.43 + ], + [ + -57.93, + -17.48 + ], + [ + -58.12, + -17.43 + ], + [ + -58.13, + -17.41 + ], + [ + -58.14, + -17.41 + ], + [ + -58.16, + -17.39 + ], + [ + -58.2, + -17.38 + ], + [ + -58.47, + -16.93 + ], + [ + -58.32, + -16.27 + ], + [ + -60.17, + -16.27 + ], + [ + -60.21, + -15.79 + ], + [ + -60.23, + -15.55 + ], + [ + -60.24, + -15.47 + ], + [ + -60.58, + -15.1 + ], + [ + -60.25, + -15.1 + ], + [ + -60.27, + -14.62 + ], + [ + -60.49, + -14.19 + ], + [ + -60.42, + -13.97 + ], + [ + -60.43, + -13.96 + ], + [ + -60.43, + -13.94 + ], + [ + -60.45, + -13.93 + ], + [ + -60.45, + -13.92 + ], + [ + -60.45, + -13.91 + ], + [ + -60.46, + -13.9 + ], + [ + -60.45, + -13.88 + ], + [ + -60.47, + -13.88 + ], + [ + -60.47, + -13.86 + ], + [ + -60.48, + -13.85 + ], + [ + -60.49, + -13.85 + ], + [ + -60.48, + -13.83 + ], + [ + -60.46, + -13.81 + ], + [ + -60.47, + -13.81 + ], + [ + -60.47, + -13.79 + ], + [ + -60.48, + -13.8 + ], + [ + -60.5, + -13.79 + ], + [ + -60.53, + -13.79 + ], + [ + -60.52, + -13.77 + ], + [ + -60.55, + -13.77 + ], + [ + -60.57, + -13.76 + ], + [ + -60.58, + -13.75 + ], + [ + -60.6, + -13.75 + ], + [ + -60.64, + -13.73 + ], + [ + -60.65, + -13.73 + ], + [ + -60.65, + -13.74 + ], + [ + -60.66, + -13.74 + ], + [ + -60.66, + -13.73 + ], + [ + -60.68, + -13.72 + ], + [ + -60.71, + -13.69 + ], + [ + -60.72, + -13.69 + ], + [ + -61.1, + -13.53 + ], + [ + -61.11, + -13.53 + ], + [ + -61.19, + -13.54 + ], + [ + -61.2, + -13.54 + ], + [ + -61.78, + -13.54 + ], + [ + -61.79, + -13.54 + ], + [ + -61.85, + -13.53 + ], + [ + -61.86, + -13.54 + ], + [ + -61.87, + -13.52 + ], + [ + -61.87, + -13.51 + ], + [ + -61.88, + -13.5 + ], + [ + -61.88, + -13.48 + ], + [ + -61.88, + -13.47 + ], + [ + -62.17, + -13.11 + ], + [ + -62.78, + -13.01 + ], + [ + -63.16, + -12.61 + ], + [ + -63.3, + -12.68 + ], + [ + -63.78, + -12.43 + ], + [ + -64.2, + -12.47 + ], + [ + -64.21, + -12.47 + ], + [ + -64.24, + -12.46 + ], + [ + -64.26, + -12.48 + ], + [ + -64.27, + -12.49 + ], + [ + -64.28, + -12.5 + ], + [ + -64.42, + -12.44 + ], + [ + -64.43, + -12.42 + ], + [ + -64.45, + -12.41 + ], + [ + -64.45, + -12.4 + ], + [ + -64.47, + -12.38 + ], + [ + -64.51, + -12.34 + ], + [ + -64.5, + -12.33 + ], + [ + -64.58, + -12.21 + ], + [ + -64.6, + -12.22 + ], + [ + -64.71, + -12.09 + ], + [ + -64.73, + -12.09 + ], + [ + -64.74, + -12.12 + ], + [ + -64.74, + -12.13 + ], + [ + -64.74, + -12.15 + ], + [ + -64.75, + -12.16 + ], + [ + -64.76, + -12.11 + ], + [ + -64.76, + -12.1 + ], + [ + -64.79, + -12.09 + ], + [ + -64.81, + -12.09 + ], + [ + -64.82, + -12.1 + ], + [ + -64.82, + -12.11 + ], + [ + -64.84, + -12.11 + ], + [ + -64.84, + -12.1 + ], + [ + -64.84, + -12.09 + ], + [ + -64.84, + -12.08 + ], + [ + -64.81, + -12.04 + ], + [ + -64.82, + -12.03 + ], + [ + -64.84, + -12.01 + ], + [ + -64.85, + -12.01 + ], + [ + -64.88, + -12.01 + ], + [ + -64.89, + -12.01 + ], + [ + -64.9, + -12.02 + ], + [ + -64.91, + -12.03 + ], + [ + -64.93, + -12.02 + ], + [ + -64.94, + -12.01 + ], + [ + -64.94, + -12 + ], + [ + -64.94, + -11.99 + ], + [ + -64.95, + -11.99 + ], + [ + -64.99, + -12.01 + ], + [ + -65, + -12 + ], + [ + -65.01, + -11.99 + ], + [ + -65.02, + -12 + ], + [ + -65.03, + -12 + ], + [ + -65.04, + -11.99 + ], + [ + -65.03, + -11.97 + ], + [ + -65.04, + -11.96 + ], + [ + -65.03, + -11.94 + ], + [ + -65.01, + -11.9 + ], + [ + -65.03, + -11.89 + ], + [ + -65.04, + -11.89 + ], + [ + -65.05, + -11.89 + ], + [ + -65.07, + -11.88 + ], + [ + -65.07, + -11.87 + ], + [ + -65.07, + -11.86 + ], + [ + -65.06, + -11.84 + ], + [ + -65.06, + -11.82 + ], + [ + -65.06, + -11.8 + ], + [ + -65.07, + -11.77 + ], + [ + -65.08, + -11.75 + ], + [ + -65.08, + -11.73 + ], + [ + -65.08, + -11.72 + ], + [ + -65.08, + -11.71 + ], + [ + -65.12, + -11.71 + ], + [ + -65.17, + -11.72 + ], + [ + -65.18, + -11.72 + ], + [ + -65.18, + -11.74 + ], + [ + -65.18, + -11.76 + ], + [ + -65.2, + -11.75 + ], + [ + -65.23, + -11.74 + ], + [ + -65.25, + -11.72 + ], + [ + -65.26, + -11.71 + ], + [ + -65.24, + -11.69 + ], + [ + -65.22, + -11.66 + ], + [ + -65.22, + -11.65 + ], + [ + -65.22, + -11.64 + ], + [ + -65.22, + -11.63 + ], + [ + -65.22, + -11.62 + ], + [ + -65.23, + -11.61 + ], + [ + -65.23, + -11.58 + ], + [ + -65.23, + -11.57 + ], + [ + -65.23, + -11.56 + ], + [ + -65.21, + -11.54 + ], + [ + -65.21, + -11.52 + ], + [ + -65.22, + -11.52 + ], + [ + -65.27, + -11.51 + ], + [ + -65.31, + -11.49 + ], + [ + -65.31, + -11.48 + ], + [ + -65.31, + -11.47 + ], + [ + -65.32, + -11.44 + ], + [ + -65.33, + -11.38 + ], + [ + -65.33, + -11.37 + ], + [ + -65.33, + -11.36 + ], + [ + -65.33, + -11.34 + ], + [ + -65.32, + -11.33 + ], + [ + -65.31, + -11.34 + ], + [ + -65.29, + -11.33 + ], + [ + -65.3, + -11.32 + ], + [ + -65.32, + -11.32 + ], + [ + -65.34, + -11.31 + ], + [ + -65.35, + -11.3 + ], + [ + -65.35, + -11.29 + ], + [ + -65.36, + -11.28 + ], + [ + -65.36, + -11.25 + ], + [ + -65.36, + -11.24 + ], + [ + -65.36, + -11.23 + ], + [ + -65.36, + -11.22 + ], + [ + -65.33, + -11.21 + ], + [ + -65.32, + -11.2 + ], + [ + -65.32, + -11.19 + ], + [ + -65.34, + -11.18 + ], + [ + -65.35, + -11.19 + ], + [ + -65.36, + -11.17 + ], + [ + -65.36, + -11.16 + ], + [ + -65.36, + -11.15 + ], + [ + -65.35, + -11.12 + ], + [ + -65.34, + -11.11 + ], + [ + -65.31, + -11.1 + ], + [ + -65.29, + -11.09 + ], + [ + -65.28, + -11.08 + ], + [ + -65.28, + -11.06 + ], + [ + -65.29, + -11.05 + ], + [ + -65.29, + -11.04 + ], + [ + -65.29, + -11.01 + ], + [ + -65.28, + -11.01 + ], + [ + -65.26, + -11 + ], + [ + -65.26, + -10.97 + ], + [ + -65.27, + -10.95 + ], + [ + -65.27, + -10.94 + ], + [ + -65.27, + -10.93 + ], + [ + -65.27, + -10.9 + ], + [ + -65.27, + -10.89 + ], + [ + -65.29, + -10.85 + ], + [ + -65.3, + -10.84 + ], + [ + -65.32, + -10.82 + ], + [ + -65.34, + -10.81 + ], + [ + -65.35, + -10.8 + ], + [ + -65.35, + -10.76 + ], + [ + -65.35, + -10.74 + ], + [ + -65.35, + -10.67 + ], + [ + -65.36, + -10.66 + ], + [ + -65.37, + -10.65 + ], + [ + -65.39, + -10.65 + ], + [ + -65.4, + -10.64 + ], + [ + -65.4, + -10.63 + ], + [ + -65.41, + -10.6 + ], + [ + -65.39, + -10.6 + ], + [ + -65.39, + -10.59 + ], + [ + -65.39, + -10.58 + ], + [ + -65.39, + -10.57 + ], + [ + -65.4, + -10.56 + ], + [ + -65.42, + -10.54 + ], + [ + -65.42, + -10.52 + ], + [ + -65.41, + -10.47 + ], + [ + -65.41, + -10.46 + ], + [ + -65.4, + -10.46 + ], + [ + -65.39, + -10.44 + ], + [ + -65.38, + -10.41 + ], + [ + -65.38, + -10.4 + ], + [ + -65.39, + -10.39 + ], + [ + -65.39, + -10.38 + ], + [ + -65.39, + -10.37 + ], + [ + -65.37, + -10.35 + ], + [ + -65.35, + -10.33 + ], + [ + -65.34, + -10.31 + ], + [ + -65.33, + -10.31 + ], + [ + -65.31, + -10.27 + ], + [ + -65.31, + -10.26 + ], + [ + -65.29, + -10.21 + ], + [ + -65.3, + -10.2 + ], + [ + -65.31, + -10.16 + ], + [ + -65.3, + -10.15 + ], + [ + -65.3, + -10.13 + ], + [ + -65.3, + -10.11 + ], + [ + -65.31, + -10.09 + ], + [ + -65.32, + -10.08 + ], + [ + -65.33, + -10.06 + ], + [ + -65.33, + -10.04 + ], + [ + -65.32, + -10.02 + ], + [ + -65.32, + -9.9 + ], + [ + -65.31, + -9.89 + ], + [ + -65.29, + -9.87 + ], + [ + -65.29, + -9.86 + ], + [ + -65.28, + -9.85 + ], + [ + -65.29, + -9.84 + ], + [ + -65.29, + -9.83 + ], + [ + -65.3, + -9.83 + ], + [ + -65.32, + -9.8 + ], + [ + -65.33, + -9.78 + ], + [ + -65.34, + -9.76 + ], + [ + -65.35, + -9.74 + ], + [ + -65.35, + -9.73 + ], + [ + -65.36, + -9.72 + ], + [ + -65.37, + -9.71 + ], + [ + -65.39, + -9.69 + ], + [ + -65.41, + -9.68 + ], + [ + -65.43, + -9.68 + ], + [ + -65.44, + -9.67 + ], + [ + -65.56, + -9.84 + ], + [ + -65.77, + -9.73 + ], + [ + -66.62, + -9.89 + ], + [ + -67.71, + -10.71 + ], + [ + -68.03, + -10.66 + ], + [ + -68.24, + -10.96 + ], + [ + -68.54, + -11.11 + ], + [ + -68.72, + -11.14 + ], + [ + -68.75, + -11.01 + ], + [ + -68.79, + -11.01 + ], + [ + -68.8, + -11 + ], + [ + -68.82, + -11 + ], + [ + -68.86, + -11 + ], + [ + -68.86, + -11.01 + ], + [ + -68.93, + -11.01 + ], + [ + -68.95, + -11.01 + ], + [ + -68.95, + -11 + ], + [ + -69, + -11.01 + ], + [ + -69, + -11 + ], + [ + -69.02, + -10.99 + ], + [ + -69.06, + -10.98 + ], + [ + -69.06, + -10.99 + ], + [ + -69.15, + -10.97 + ], + [ + -69.14, + -10.96 + ], + [ + -69.15, + -10.96 + ], + [ + -69.17, + -10.96 + ], + [ + -69.21, + -10.96 + ], + [ + -69.26, + -10.95 + ], + [ + -69.25, + -10.94 + ], + [ + -69.26, + -10.94 + ], + [ + -69.28, + -10.95 + ], + [ + -69.28, + -10.94 + ], + [ + -69.32, + -10.94 + ], + [ + -69.33, + -10.94 + ], + [ + -69.35, + -10.95 + ], + [ + -69.35, + -10.94 + ], + [ + -69.38, + -10.94 + ], + [ + -69.39, + -10.94 + ], + [ + -69.39, + -10.95 + ], + [ + -69.45, + -10.94 + ], + [ + -69.5, + -10.95 + ], + [ + -69.5, + -10.94 + ], + [ + -69.54, + -10.94 + ], + [ + -69.54, + -10.95 + ], + [ + -69.57, + -10.95 + ], + [ + -69.59, + -10.94 + ], + [ + -69.59, + -10.95 + ], + [ + -70.62, + -11 + ], + [ + -70.6, + -9.56 + ], + [ + -70.58, + -9.56 + ], + [ + -70.58, + -9.57 + ], + [ + -70.58, + -9.56 + ], + [ + -70.56, + -9.58 + ], + [ + -70.55, + -9.57 + ], + [ + -70.56, + -9.56 + ], + [ + -70.57, + -9.55 + ], + [ + -70.56, + -9.53 + ], + [ + -70.56, + -9.54 + ], + [ + -70.55, + -9.54 + ], + [ + -70.53, + -9.51 + ], + [ + -70.53, + -9.52 + ], + [ + -70.52, + -9.5 + ], + [ + -70.51, + -9.5 + ], + [ + -70.5, + -9.5 + ], + [ + -70.51, + -9.49 + ], + [ + -70.51, + -9.46 + ], + [ + -70.51, + -9.45 + ], + [ + -71.2, + -9.96 + ], + [ + -72.18, + -10 + ], + [ + -72.15, + -9.8 + ], + [ + -72.36, + -9.49 + ], + [ + -73.2, + -9.41 + ], + [ + -72.94, + -8.98 + ], + [ + -73.54, + -8.35 + ], + [ + -73.77, + -7.91 + ], + [ + -73.68, + -7.78 + ], + [ + -73.98, + -7.53 + ], + [ + -73.95, + -7.36 + ], + [ + -73.7, + -7.31 + ], + [ + -73.8, + -7.12 + ], + [ + -73.71, + -6.84 + ], + [ + -73.14, + -6.51 + ], + [ + -73.24, + -6.04 + ], + [ + -72.96, + -5.66 + ], + [ + -72.87, + -5.14 + ], + [ + -71.91, + -4.52 + ], + [ + -70.94, + -4.38 + ], + [ + -70.76, + -4.16 + ], + [ + -70.36, + -4.15 + ], + [ + -70.34, + -4.18 + ], + [ + -70.33, + -4.16 + ], + [ + -70.32, + -4.14 + ], + [ + -70.31, + -4.15 + ], + [ + -70.31, + -4.16 + ], + [ + -70.29, + -4.17 + ], + [ + -70.29, + -4.18 + ], + [ + -70.28, + -4.21 + ], + [ + -70.28, + -4.22 + ], + [ + -70.29, + -4.24 + ], + [ + -70.31, + -4.25 + ], + [ + -70.31, + -4.26 + ], + [ + -70.28, + -4.28 + ], + [ + -70.25, + -4.28 + ], + [ + -70.25, + -4.29 + ], + [ + -70.27, + -4.29 + ], + [ + -70.27, + -4.3 + ], + [ + -70.26, + -4.31 + ], + [ + -70.22, + -4.3 + ], + [ + -70.21, + -4.32 + ], + [ + -70.2, + -4.34 + ], + [ + -70.2, + -4.35 + ], + [ + -70.18, + -4.35 + ], + [ + -70.17, + -4.33 + ], + [ + -70.15, + -4.32 + ], + [ + -70.16, + -4.31 + ], + [ + -70.14, + -4.28 + ], + [ + -70.12, + -4.29 + ], + [ + -70.11, + -4.28 + ], + [ + -70.12, + -4.27 + ], + [ + -70.1, + -4.27 + ], + [ + -70.1, + -4.28 + ], + [ + -70.09, + -4.29 + ], + [ + -70.08, + -4.29 + ], + [ + -70.07, + -4.29 + ], + [ + -70.06, + -4.3 + ], + [ + -70.08, + -4.31 + ], + [ + -70.06, + -4.33 + ], + [ + -70.04, + -4.33 + ], + [ + -70.03, + -4.37 + ], + [ + -70.02, + -4.37 + ], + [ + -70, + -4.37 + ], + [ + -69.99, + -4.37 + ], + [ + -69.98, + -4.34 + ], + [ + -69.96, + -4.32 + ], + [ + -69.95, + -4.3 + ], + [ + -69.95, + -4.26 + ], + [ + -69.95, + -4.25 + ], + [ + -69.95, + -4.24 + ], + [ + -69.95, + -4.23 + ] + ], + [ + [ + -41.62, + -9.67 + ], + [ + -42.1, + -9.65 + ], + [ + -42.32, + -10.06 + ], + [ + -41.98, + -9.71 + ], + [ + -41.75, + -9.81 + ], + [ + -41.18, + -9.71 + ], + [ + -41.09, + -9.43 + ], + [ + -40.81, + -9.45 + ], + [ + -40.89, + -9.32 + ], + [ + -41.17, + -9.36 + ], + [ + -41.31, + -9.64 + ], + [ + -41.62, + -9.67 + ] + ], + [ + [ + -38.59, + -8.8 + ], + [ + -38.62, + -8.93 + ], + [ + -38.52, + -8.84 + ], + [ + -38.5, + -8.97 + ], + [ + -38.43, + -8.8 + ], + [ + -38.59, + -8.8 + ] + ], + [ + [ + -38.67, + -8.75 + ], + [ + -38.78, + -8.84 + ], + [ + -38.63, + -8.99 + ], + [ + -38.67, + -8.75 + ] + ], + [ + [ + -38.32, + -9.15 + ], + [ + -38.21, + -9.02 + ], + [ + -38.32, + -8.95 + ], + [ + -38.32, + -9.15 + ] + ], + [ + [ + -38.86, + -8.75 + ], + [ + -38.97, + -8.79 + ], + [ + -38.76, + -8.78 + ], + [ + -38.86, + -8.75 + ] + ], + [ + [ + -38.45, + -5.48 + ], + [ + -38.67, + -5.67 + ], + [ + -38.41, + -5.59 + ], + [ + -38.45, + -5.48 + ] + ], + [ + [ + -41.41, + -21.94 + ], + [ + -41.35, + -22.11 + ], + [ + -41.25, + -21.98 + ], + [ + -41.41, + -21.94 + ] + ], + [ + [ + -45.75, + -20.61 + ], + [ + -45.75, + -20.76 + ], + [ + -45.66, + -20.83 + ], + [ + -45.63, + -20.69 + ], + [ + -45.7, + -20.76 + ], + [ + -45.75, + -20.61 + ] + ], + [ + [ + -46.01, + -20.63 + ], + [ + -45.97, + -20.79 + ], + [ + -45.83, + -20.78 + ], + [ + -46.01, + -20.63 + ] + ], + [ + [ + -45.2, + -18.9 + ], + [ + -45.12, + -18.98 + ], + [ + -45.09, + -18.82 + ], + [ + -45.2, + -18.9 + ] + ], + [ + [ + -45.33, + -18.23 + ], + [ + -45.31, + -18.54 + ], + [ + -45.2, + -18.31 + ], + [ + -45.33, + -18.23 + ] + ], + [ + [ + -45.26, + -18.5 + ], + [ + -45.3, + -18.69 + ], + [ + -45.18, + -18.7 + ], + [ + -45.26, + -18.5 + ] + ], + [ + [ + -47.65, + -17.69 + ], + [ + -47.75, + -17.98 + ], + [ + -47.64, + -18.02 + ], + [ + -47.65, + -17.69 + ] + ], + [ + [ + -48.39, + -12.25 + ], + [ + -48.21, + -12.55 + ], + [ + -48.23, + -12.3 + ], + [ + -48.39, + -12.25 + ] + ], + [ + [ + -47.48, + -5.61 + ], + [ + -47.48, + -5.62 + ], + [ + -47.48, + -5.63 + ], + [ + -47.47, + -5.62 + ], + [ + -47.48, + -5.61 + ] + ], + [ + [ + -48.88, + -14.14 + ], + [ + -48.91, + -14.32 + ], + [ + -48.8, + -14.18 + ], + [ + -48.88, + -14.14 + ] + ], + [ + [ + -48.91, + -6.75 + ], + [ + -49.13, + -6.89 + ], + [ + -48.82, + -6.75 + ], + [ + -48.91, + -6.75 + ] + ], + [ + [ + -48.42, + -13.76 + ], + [ + -48.34, + -13.94 + ], + [ + -48.69, + -14.18 + ], + [ + -48.6, + -14.26 + ], + [ + -48.43, + -14.02 + ], + [ + -48.21, + -14.33 + ], + [ + -48.19, + -14.01 + ], + [ + -48.42, + -13.76 + ] + ], + [ + [ + -46.82, + -20.43 + ], + [ + -46.93, + -20.4 + ], + [ + -46.85, + -20.55 + ], + [ + -46.82, + -20.43 + ] + ], + [ + [ + -49.09, + -20.13 + ], + [ + -49.11, + -20.26 + ], + [ + -48.98, + -20.18 + ], + [ + -49.09, + -20.13 + ] + ], + [ + [ + -50.07, + -18.6 + ], + [ + -50.05, + -18.77 + ], + [ + -50.03, + -18.6 + ], + [ + -49.84, + -18.65 + ], + [ + -49.88, + -18.6 + ], + [ + -50.07, + -18.6 + ] + ], + [ + [ + -46.98, + -20.43 + ], + [ + -46.87, + -20.3 + ], + [ + -47.02, + -20.23 + ], + [ + -46.98, + -20.43 + ] + ], + [ + [ + -47.84, + -18.35 + ], + [ + -48, + -18.52 + ], + [ + -47.66, + -18.48 + ], + [ + -47.84, + -18.35 + ] + ], + [ + [ + -48.87, + -18.23 + ], + [ + -49.09, + -18.47 + ], + [ + -48.96, + -18.34 + ], + [ + -48.82, + -18.42 + ], + [ + -48.87, + -18.23 + ] + ], + [ + [ + -48.87, + -21.95 + ], + [ + -48.87, + -21.94 + ], + [ + -49, + -21.81 + ], + [ + -48.87, + -21.95 + ] + ], + [ + [ + -49.44, + -21.49 + ], + [ + -49.7, + -21.2 + ], + [ + -49.79, + -21.31 + ], + [ + -49.57, + -21.45 + ], + [ + -49.1, + -21.73 + ], + [ + -49.44, + -21.49 + ] + ], + [ + [ + -49.66, + -23.2 + ], + [ + -49.77, + -23.36 + ], + [ + -49.55, + -23.44 + ], + [ + -49.66, + -23.2 + ] + ], + [ + [ + -48.82, + -23.28 + ], + [ + -49.25, + -23.24 + ], + [ + -49.19, + -23.4 + ], + [ + -49.17, + -23.25 + ], + [ + -48.82, + -23.28 + ] + ], + [ + [ + -45.92, + -21.08 + ], + [ + -46.05, + -20.87 + ], + [ + -45.89, + -21.21 + ], + [ + -45.92, + -21.08 + ] + ], + [ + [ + -46.19, + -20.8 + ], + [ + -46.04, + -20.84 + ], + [ + -46.1, + -20.59 + ], + [ + -46.19, + -20.8 + ] + ], + [ + [ + -50.86, + -19.44 + ], + [ + -51.01, + -19.44 + ], + [ + -51.05, + -19.75 + ], + [ + -50.86, + -19.44 + ] + ], + [ + [ + -50.27, + -18.64 + ], + [ + -50.49, + -18.78 + ], + [ + -50.51, + -19.04 + ], + [ + -50.33, + -18.98 + ], + [ + -50.49, + -18.94 + ], + [ + -50.35, + -18.9 + ], + [ + -50.43, + -18.85 + ], + [ + -50.27, + -18.64 + ] + ], + [ + [ + -57.85, + -16.63 + ], + [ + -57.88, + -16.64 + ], + [ + -57.86, + -16.66 + ], + [ + -57.85, + -16.65 + ], + [ + -57.85, + -16.63 + ] + ], + [ + [ + -63.45, + -8.71 + ], + [ + -63.28, + -9.13 + ], + [ + -63.26, + -8.8 + ], + [ + -63.45, + -8.71 + ] + ], + [ + [ + -61.9, + -6.26 + ], + [ + -61.87, + -6.27 + ], + [ + -61.89, + -6.25 + ], + [ + -61.9, + -6.26 + ] + ], + [ + [ + -57.5, + -5.86 + ], + [ + -57.04, + -5.51 + ], + [ + -56.74, + -4.94 + ], + [ + -57.11, + -5.53 + ], + [ + -57.66, + -5.93 + ], + [ + -57.63, + -6.11 + ], + [ + -57.5, + -5.86 + ] + ], + [ + [ + -50.14, + -21.08 + ], + [ + -50.14, + -21.31 + ], + [ + -49.99, + -21.25 + ], + [ + -50.14, + -21.08 + ] + ], + [ + [ + -50.76, + -20.92 + ], + [ + -50.58, + -20.98 + ], + [ + -50.71, + -20.83 + ], + [ + -50.76, + -20.92 + ] + ], + [ + [ + -50.98, + -20.8 + ], + [ + -50.78, + -20.84 + ], + [ + -51.15, + -20.67 + ], + [ + -50.98, + -20.8 + ] + ], + [ + [ + -51.51, + -20.59 + ], + [ + -51.24, + -20.4 + ], + [ + -51.32, + -20.34 + ], + [ + -50.91, + -20.3 + ], + [ + -50.98, + -20.07 + ], + [ + -50.64, + -19.87 + ], + [ + -50.61, + -19.85 + ], + [ + -50.64, + -19.87 + ], + [ + -50.65, + -19.87 + ], + [ + -51.02, + -20.06 + ], + [ + -51.11, + -20.26 + ], + [ + -51.37, + -20.32 + ], + [ + -51.64, + -20.71 + ], + [ + -51.86, + -20.61 + ], + [ + -51.67, + -20.79 + ], + [ + -51.51, + -20.59 + ] + ], + [ + [ + -51.3, + -20.63 + ], + [ + -51.28, + -20.74 + ], + [ + -51.26, + -20.65 + ], + [ + -51.11, + -20.66 + ], + [ + -51.3, + -20.63 + ] + ], + [ + [ + -50.14, + -19.93 + ], + [ + -49.54, + -19.93 + ], + [ + -50.05, + -19.92 + ], + [ + -50.1, + -19.75 + ], + [ + -50.34, + -19.81 + ], + [ + -50.14, + -19.93 + ] + ], + [ + [ + -52.56, + -32.77 + ], + [ + -53.13, + -33.53 + ], + [ + -52.75, + -33.21 + ], + [ + -52.62, + -32.93 + ], + [ + -52.56, + -32.94 + ], + [ + -52.56, + -32.77 + ] + ], + [ + [ + -52.53, + -25.64 + ], + [ + -52.38, + -25.73 + ], + [ + -52.28, + -25.6 + ], + [ + -52.53, + -25.64 + ] + ], + [ + [ + -51.2, + -22.72 + ], + [ + -51.24, + -22.65 + ], + [ + -51.39, + -22.65 + ], + [ + -51.35, + -22.87 + ], + [ + -51.27, + -22.67 + ], + [ + -51.2, + -22.82 + ], + [ + -50.94, + -22.88 + ], + [ + -50.93, + -23 + ], + [ + -50.91, + -22.76 + ], + [ + -51.2, + -22.72 + ] + ], + [ + [ + -53.37, + -25.52 + ], + [ + -53.27, + -25.56 + ], + [ + -53.31, + -25.45 + ], + [ + -53.37, + -25.52 + ] + ], + [ + [ + -53.42, + -22.82 + ], + [ + -53.28, + -22.74 + ], + [ + -53.43, + -22.82 + ], + [ + -53.42, + -22.82 + ] + ], + [ + [ + -52.29, + -21.96 + ], + [ + -52.29, + -21.94 + ], + [ + -52, + -21.7 + ], + [ + -51.91, + -21.39 + ], + [ + -52.29, + -21.64 + ], + [ + -52.49, + -22.13 + ], + [ + -52.91, + -22.28 + ], + [ + -53.11, + -22.56 + ], + [ + -52.39, + -22.19 + ], + [ + -52.29, + -21.96 + ] + ], + [ + [ + -53.75, + -2.04 + ], + [ + -53.9, + -2.11 + ], + [ + -53.83, + -2.19 + ], + [ + -53.75, + -2.04 + ] + ], + [ + [ + -50.96, + -1.98 + ], + [ + -50.76, + -2.17 + ], + [ + -50.8, + -1.98 + ], + [ + -50.96, + -1.98 + ] + ], + [ + [ + -51.34, + -1.67 + ], + [ + -51.5, + -1.8 + ], + [ + -51.46, + -2.13 + ], + [ + -51.3, + -1.76 + ], + [ + -51.11, + -1.86 + ], + [ + -51.34, + -1.67 + ] + ], + [ + [ + -50.61, + -1.76 + ], + [ + -50.92, + -1.89 + ], + [ + -50.69, + -1.93 + ], + [ + -50.61, + -1.76 + ] + ], + [ + [ + -51.02, + -0.24 + ], + [ + -51.1, + -0.11 + ], + [ + -51.24, + -0.37 + ], + [ + -51.14, + -0.35 + ], + [ + -51.41, + -0.46 + ], + [ + -51.37, + -0.33 + ], + [ + -51.55, + -0.53 + ], + [ + -51.7, + -0.73 + ], + [ + -51.71, + -1.08 + ], + [ + -51.64, + -0.72 + ], + [ + -51.61, + -0.78 + ], + [ + -51.53, + -0.57 + ], + [ + -51.26, + -0.52 + ], + [ + -51.02, + -0.24 + ] + ], + [ + [ + -51.24, + -0.08 + ], + [ + -51.37, + -0.33 + ], + [ + -51.11, + -0.12 + ], + [ + -51.24, + -0.08 + ] + ], + [ + [ + -49.66, + -3.82 + ], + [ + -49.86, + -3.73 + ], + [ + -49.75, + -3.82 + ], + [ + -49.94, + -3.91 + ], + [ + -49.83, + -4.03 + ], + [ + -49.64, + -3.91 + ], + [ + -49.77, + -4 + ], + [ + -49.72, + -4.17 + ], + [ + -49.83, + -4.11 + ], + [ + -49.83, + -4.42 + ], + [ + -49.57, + -4.37 + ], + [ + -49.7, + -4.57 + ], + [ + -49.46, + -4.61 + ], + [ + -49.42, + -4.94 + ], + [ + -49.39, + -4.62 + ], + [ + -49.22, + -4.55 + ], + [ + -49.42, + -4.52 + ], + [ + -49.61, + -3.58 + ], + [ + -49.66, + -3.82 + ] + ], + [ + [ + -52.21, + -3.21 + ], + [ + -52.6, + -3.89 + ], + [ + -52.16, + -3.36 + ], + [ + -52.21, + -3.25 + ], + [ + -51.97, + -3.37 + ], + [ + -52.21, + -3.21 + ] + ], + [ + [ + -53.48, + -4.24 + ], + [ + -53.68, + -4.42 + ], + [ + -53.5, + -4.39 + ], + [ + -53.48, + -4.24 + ] + ], + [ + [ + -52.82, + -4.81 + ], + [ + -52.94, + -5.03 + ], + [ + -52.87, + -5.42 + ], + [ + -52.82, + -4.81 + ] + ], + [ + [ + -45.19, + -3.29 + ], + [ + -45.28, + -3.34 + ], + [ + -45.1, + -3.29 + ], + [ + -45.19, + -3.29 + ] + ], + [ + [ + -53.96, + -2.1 + ], + [ + -53.92, + -2.34 + ], + [ + -53.84, + -2.2 + ], + [ + -53.96, + -2.1 + ] + ], + [ + [ + -57.96, + -2.55 + ], + [ + -58.2, + -2.59 + ], + [ + -57.96, + -2.67 + ], + [ + -57.86, + -2.59 + ], + [ + -57.96, + -2.55 + ] + ], + [ + [ + -55.52, + -2.6 + ], + [ + -55.57, + -2.62 + ], + [ + -55.52, + -2.6 + ], + [ + -55.4, + -2.58 + ], + [ + -55.52, + -2.59 + ], + [ + -55.52, + -2.6 + ] + ], + [ + [ + -56.47, + -2.09 + ], + [ + -56.64, + -2.17 + ], + [ + -56.6, + -2.34 + ], + [ + -56.36, + -2.28 + ], + [ + -56.43, + -2.2 + ], + [ + -56.33, + -2.15 + ], + [ + -56.47, + -2.09 + ] + ], + [ + [ + -56.27, + -2.2 + ], + [ + -56.36, + -2.33 + ], + [ + -56.56, + -2.38 + ], + [ + -56.34, + -2.43 + ], + [ + -56.07, + -2.09 + ], + [ + -55.52, + -1.91 + ], + [ + -56.07, + -2.05 + ], + [ + -55.84, + -1.76 + ], + [ + -56.23, + -1.85 + ], + [ + -56.08, + -1.91 + ], + [ + -56.27, + -2.2 + ] + ], + [ + [ + -59.55, + -1.23 + ], + [ + -59.59, + -1.4 + ], + [ + -59.6, + -1.28 + ], + [ + -59.9, + -1.27 + ], + [ + -59.85, + -1.42 + ], + [ + -59.63, + -1.44 + ], + [ + -59.77, + -1.51 + ], + [ + -60.29, + -1.21 + ], + [ + -59.94, + -1.76 + ], + [ + -59.85, + -1.62 + ], + [ + -59.9, + -1.8 + ], + [ + -59.85, + -1.68 + ], + [ + -59.48, + -1.92 + ], + [ + -59.28, + -1.83 + ], + [ + -59.55, + -1.74 + ], + [ + -59.55, + -1.56 + ], + [ + -59.65, + -1.63 + ], + [ + -59.55, + -1.23 + ] + ], + [ + [ + -56.43, + -1.39 + ], + [ + -56.66, + -1.32 + ], + [ + -56.38, + -1.47 + ], + [ + -56.43, + -1.39 + ] + ], + [ + [ + -60.6, + -3.38 + ], + [ + -60.69, + -3.47 + ], + [ + -60.52, + -3.43 + ], + [ + -60.6, + -3.38 + ] + ], + [ + [ + -59.99, + -3.29 + ], + [ + -59.88, + -3.24 + ], + [ + -60.23, + -3.33 + ], + [ + -60.29, + -3.28 + ], + [ + -60.23, + -3.26 + ], + [ + -60.4, + -3.29 + ], + [ + -60.23, + -3.37 + ], + [ + -59.99, + -3.29 + ] + ], + [ + [ + -56.98, + -2.75 + ], + [ + -57.18, + -2.9 + ], + [ + -57.19, + -3.11 + ], + [ + -57.12, + -2.9 + ], + [ + -56.9, + -2.83 + ], + [ + -56.98, + -2.75 + ] + ], + [ + [ + -61.37, + -2.99 + ], + [ + -61.61, + -3.07 + ], + [ + -61.39, + -3.11 + ], + [ + -61.28, + -3.03 + ], + [ + -61.37, + -2.99 + ] + ], + [ + [ + -58.27, + -2.81 + ], + [ + -58.36, + -3.11 + ], + [ + -58.17, + -2.94 + ], + [ + -58.27, + -2.81 + ] + ], + [ + [ + -56.8, + -2.77 + ], + [ + -56.78, + -2.92 + ], + [ + -56.71, + -2.72 + ], + [ + -56.8, + -2.77 + ] + ], + [ + [ + -56.33, + -4.61 + ], + [ + -56.65, + -4.74 + ], + [ + -56.39, + -4.74 + ], + [ + -56.33, + -4.61 + ] + ], + [ + [ + -56.23, + -4.37 + ], + [ + -56.24, + -4.37 + ], + [ + -56.26, + -4.41 + ], + [ + -56.23, + -4.37 + ] + ], + [ + [ + -55.18, + -2.81 + ], + [ + -55.36, + -3.62 + ], + [ + -55.68, + -4.05 + ], + [ + -55.28, + -3.55 + ], + [ + -55.03, + -2.81 + ], + [ + -55.18, + -2.81 + ] + ], + [ + [ + -61.89, + -3.91 + ], + [ + -62.12, + -3.82 + ], + [ + -62.01, + -3.93 + ], + [ + -61.77, + -3.97 + ], + [ + -61.89, + -3.95 + ], + [ + -61.89, + -3.91 + ] + ], + [ + [ + -61.5, + -3.66 + ], + [ + -61.74, + -3.89 + ], + [ + -61.37, + -3.6 + ], + [ + -60.9, + -3.64 + ], + [ + -60.82, + -3.56 + ], + [ + -60.82, + -3.62 + ], + [ + -60.67, + -3.35 + ], + [ + -60.4, + -3.32 + ], + [ + -60.78, + -3.25 + ], + [ + -60.95, + -3.3 + ], + [ + -60.83, + -3.4 + ], + [ + -60.68, + -3.31 + ], + [ + -60.82, + -3.54 + ], + [ + -61.39, + -3.58 + ], + [ + -61.5, + -3.66 + ] + ], + [ + [ + -57.75, + -3.36 + ], + [ + -57.57, + -3.71 + ], + [ + -57.22, + -3.8 + ], + [ + -57.56, + -3.67 + ], + [ + -57.75, + -3.36 + ] + ], + [ + [ + -65.39, + -2.5 + ], + [ + -65.28, + -2.64 + ], + [ + -65.37, + -2.38 + ], + [ + -65.39, + -2.5 + ] + ], + [ + [ + -66.2, + -2.49 + ], + [ + -66.34, + -2.59 + ], + [ + -66.42, + -2.38 + ], + [ + -66.66, + -2.39 + ], + [ + -66.6, + -2.56 + ], + [ + -66.51, + -2.41 + ], + [ + -66.39, + -2.59 + ], + [ + -66.29, + -2.6 + ], + [ + -66.2, + -2.49 + ] + ], + [ + [ + -66.23, + -1.65 + ], + [ + -66.29, + -1.71 + ], + [ + -66.06, + -1.74 + ], + [ + -66.23, + -1.65 + ] + ], + [ + [ + -64.05, + -0.29 + ], + [ + -63.9, + -0.32 + ], + [ + -65.02, + -0.44 + ], + [ + -64.87, + -0.54 + ], + [ + -63.75, + -0.35 + ], + [ + -62.69, + -1.05 + ], + [ + -63.06, + -0.73 + ], + [ + -63, + -0.66 + ], + [ + -63.87, + -0.3 + ], + [ + -64.05, + -0.29 + ] + ], + [ + [ + -67.83, + -1.64 + ], + [ + -68.03, + -1.62 + ], + [ + -67.65, + -1.67 + ], + [ + -67.83, + -1.64 + ] + ], + [ + [ + -66.07, + -0.31 + ], + [ + -66.31, + -0.42 + ], + [ + -65.79, + -0.25 + ], + [ + -65.03, + -0.44 + ], + [ + -65.75, + -0.23 + ], + [ + -66.07, + -0.31 + ] + ], + [ + [ + -64.25, + -3.64 + ], + [ + -63.96, + -3.76 + ], + [ + -64.34, + -3.54 + ], + [ + -64.25, + -3.64 + ] + ], + [ + [ + -64.64, + -3.37 + ], + [ + -64.35, + -3.56 + ], + [ + -64.75, + -3.07 + ], + [ + -64.82, + -3.16 + ], + [ + -64.82, + -3.11 + ], + [ + -65.02, + -3.03 + ], + [ + -65.06, + -2.95 + ], + [ + -65.17, + -2.9 + ], + [ + -65.15, + -2.89 + ], + [ + -65.17, + -2.75 + ], + [ + -65.15, + -2.75 + ], + [ + -65.3, + -2.77 + ], + [ + -65.17, + -2.78 + ], + [ + -65.21, + -2.86 + ], + [ + -65.18, + -2.86 + ], + [ + -65.18, + -2.9 + ], + [ + -65.13, + -2.95 + ], + [ + -65.07, + -2.96 + ], + [ + -65.08, + -3.01 + ], + [ + -64.64, + -3.37 + ] + ], + [ + [ + -58.49, + -3.25 + ], + [ + -58.54, + -3.4 + ], + [ + -58.34, + -3.38 + ], + [ + -58.4, + -3.19 + ], + [ + -58.19, + -3.21 + ], + [ + -58.12, + -2.91 + ], + [ + -57.79, + -2.8 + ], + [ + -57.51, + -2.39 + ], + [ + -57.26, + -2.64 + ], + [ + -57.19, + -2.5 + ], + [ + -57.08, + -2.57 + ], + [ + -57.22, + -2.64 + ], + [ + -57.03, + -2.55 + ], + [ + -56.8, + -2.66 + ], + [ + -56.44, + -2.42 + ], + [ + -56.73, + -2.6 + ], + [ + -57.19, + -2.49 + ], + [ + -57.22, + -2.55 + ], + [ + -57.5, + -2.37 + ], + [ + -57.77, + -2.75 + ], + [ + -58.07, + -2.82 + ], + [ + -58.21, + -3.04 + ], + [ + -58.19, + -3.16 + ], + [ + -58.49, + -3.13 + ], + [ + -58.65, + -3.35 + ], + [ + -59.11, + -3.21 + ], + [ + -59.7, + -3.05 + ], + [ + -59.83, + -3.04 + ], + [ + -59.96, + -3.16 + ], + [ + -60.11, + -3.03 + ], + [ + -60.3, + -3.06 + ], + [ + -60.91, + -2.44 + ], + [ + -61.05, + -2.13 + ], + [ + -61.37, + -1.89 + ], + [ + -61.47, + -1.52 + ], + [ + -61.5, + -1.62 + ], + [ + -61.62, + -1.41 + ], + [ + -61.86, + -1.3 + ], + [ + -62.07, + -1.11 + ], + [ + -62.01, + -1.23 + ], + [ + -62.16, + -1.19 + ], + [ + -62.01, + -1.32 + ], + [ + -62.2, + -1.21 + ], + [ + -62.58, + -1 + ], + [ + -62.24, + -1.25 + ], + [ + -62.31, + -1.35 + ], + [ + -61.61, + -1.45 + ], + [ + -61.49, + -1.87 + ], + [ + -61.25, + -2 + ], + [ + -61.06, + -2.53 + ], + [ + -60.94, + -2.64 + ], + [ + -61.02, + -2.45 + ], + [ + -60.91, + -2.47 + ], + [ + -60.53, + -3.13 + ], + [ + -60.23, + -3.08 + ], + [ + -59.96, + -3.25 + ], + [ + -59.92, + -3.15 + ], + [ + -59.89, + -3.23 + ], + [ + -59.86, + -3.11 + ], + [ + -59.72, + -3.06 + ], + [ + -59.63, + -3.11 + ], + [ + -59.81, + -3.18 + ], + [ + -58.97, + -3.26 + ], + [ + -58.91, + -3.37 + ], + [ + -59.02, + -3.32 + ], + [ + -58.97, + -3.29 + ], + [ + -59.02, + -3.28 + ], + [ + -59.19, + -3.34 + ], + [ + -58.99, + -3.36 + ], + [ + -58.97, + -3.48 + ], + [ + -58.89, + -3.38 + ], + [ + -58.89, + -3.31 + ], + [ + -58.77, + -3.36 + ], + [ + -58.89, + -3.52 + ], + [ + -58.49, + -3.25 + ] + ], + [ + [ + -67.16, + -2.61 + ], + [ + -66.98, + -2.79 + ], + [ + -66.71, + -2.72 + ], + [ + -67.16, + -2.61 + ] + ], + [ + [ + -65.79, + -2.53 + ], + [ + -65.9, + -2.48 + ], + [ + -65.67, + -2.68 + ], + [ + -65.43, + -2.53 + ], + [ + -65.65, + -2.66 + ], + [ + -65.79, + -2.53 + ] + ], + [ + [ + -67.29, + -2.53 + ], + [ + -67.46, + -2.67 + ], + [ + -67.27, + -2.55 + ], + [ + -67.13, + -2.66 + ], + [ + -67.29, + -2.53 + ] + ], + [ + [ + -63.21, + -4 + ], + [ + -63.63, + -4.08 + ], + [ + -63.5, + -4.13 + ], + [ + -63.76, + -4.26 + ], + [ + -63.39, + -4.13 + ], + [ + -63.59, + -4.64 + ], + [ + -63.33, + -4.1 + ], + [ + -63, + -4.06 + ], + [ + -63.21, + -4 + ] + ], + [ + [ + -62.17, + -4.39 + ], + [ + -62.27, + -4.48 + ], + [ + -62.13, + -4.7 + ], + [ + -62.06, + -4.41 + ], + [ + -62.17, + -4.39 + ] + ], + [ + [ + -69.52, + -4.11 + ], + [ + -69.37, + -4.13 + ], + [ + -69.53, + -4.3 + ], + [ + -69.36, + -4.13 + ], + [ + -69.52, + -4.11 + ] + ], + [ + [ + -63.36, + -3.91 + ], + [ + -64, + -3.8 + ], + [ + -63.13, + -3.99 + ], + [ + -63.36, + -3.91 + ] + ], + [ + [ + -64.76, + -3.29 + ], + [ + -64.98, + -3.47 + ], + [ + -65, + -3.76 + ], + [ + -64.76, + -3.29 + ] + ], + [ + [ + -62.66, + -3.91 + ], + [ + -62.38, + -3.8 + ], + [ + -62.89, + -3.92 + ], + [ + -62.66, + -3.91 + ] + ] + ], + [ + [ + [ + -61.81, + 0 + ], + [ + -61.85, + -0.34 + ], + [ + -61.81, + 0.01 + ], + [ + -61.81, + 0 + ] + ] + ], + [ + [ + [ + -55.05, + -27.82 + ], + [ + -55.06, + -27.81 + ], + [ + -55.07, + -27.8 + ], + [ + -55.08, + -27.79 + ], + [ + -55.05, + -27.77 + ], + [ + -55.04, + -27.78 + ], + [ + -55.03, + -27.79 + ], + [ + -55.04, + -27.8 + ], + [ + -55.05, + -27.82 + ] + ] + ], + [ + [ + [ + -54.68, + -27.52 + ], + [ + -54.68, + -27.51 + ], + [ + -54.66, + -27.51 + ], + [ + -54.65, + -27.52 + ], + [ + -54.68, + -27.52 + ] + ] + ], + [ + [ + [ + -54.18, + -25.57 + ], + [ + -54.18, + -25.58 + ], + [ + -54.2, + -25.58 + ], + [ + -54.21, + -25.58 + ], + [ + -54.18, + -25.57 + ] + ] + ], + [ + [ + [ + -54.32, + -24.45 + ], + [ + -54.3, + -24.43 + ], + [ + -54.3, + -24.45 + ], + [ + -54.32, + -24.45 + ] + ] + ], + [ + [ + [ + -65.42, + -10.5 + ], + [ + -65.42, + -10.47 + ], + [ + -65.41, + -10.47 + ], + [ + -65.42, + -10.5 + ] + ] + ], + [ + [ + [ + -38.67, + -12.89 + ], + [ + -38.61, + -12.99 + ], + [ + -38.79, + -13.13 + ], + [ + -38.67, + -12.89 + ] + ] + ], + [ + [ + [ + -39.03, + -13.49 + ], + [ + -38.91, + -13.37 + ], + [ + -38.9, + -13.67 + ], + [ + -38.97, + -13.67 + ], + [ + -38.98, + -13.52 + ], + [ + -39.03, + -13.49 + ] + ] + ], + [ + [ + [ + -49.68, + -0.14 + ], + [ + -49.83, + -0.08 + ], + [ + -49.59, + 0.09 + ], + [ + -49.37, + 0.04 + ], + [ + -49.44, + -0.12 + ], + [ + -49.68, + -0.14 + ] + ] + ], + [ + [ + [ + -49.98, + 0.96 + ], + [ + -50.11, + 0.94 + ], + [ + -49.92, + 1.09 + ], + [ + -49.98, + 0.96 + ] + ] + ], + [ + [ + [ + -50.21, + 0.88 + ], + [ + -50.01, + 0.9 + ], + [ + -50.28, + 0.74 + ], + [ + -50.21, + 0.88 + ] + ] + ], + [ + [ + [ + -49.57, + 0.3 + ], + [ + -50, + -0.05 + ], + [ + -50.39, + 0.14 + ], + [ + -50.03, + 0.31 + ], + [ + -49.57, + 0.3 + ] + ] + ], + [ + [ + [ + -50.28, + 0.56 + ], + [ + -50.04, + 0.57 + ], + [ + -50.29, + 0.35 + ], + [ + -50.28, + 0.56 + ] + ] + ], + [ + [ + [ + -50.43, + 1.87 + ], + [ + -50.52, + 2.01 + ], + [ + -50.4, + 2.12 + ], + [ + -50.31, + 1.95 + ], + [ + -50.43, + 1.87 + ] + ] + ], + [ + [ + [ + -50.55, + 0.26 + ], + [ + -50.3, + 0.63 + ], + [ + -50.3, + 0.29 + ], + [ + -50.43, + 0.16 + ], + [ + -50.55, + 0.26 + ] + ] + ], + [ + [ + [ + -50.64, + 0.11 + ], + [ + -50.51, + 0.17 + ], + [ + -50.43, + 0.02 + ], + [ + -50.64, + 0.11 + ], + [ + -50.61, + 0.11 + ], + [ + -50.64, + 0.11 + ] + ] + ], + [ + [ + [ + -47.48, + -5.63 + ], + [ + -47.48, + -5.62 + ], + [ + -47.47, + -5.62 + ], + [ + -47.48, + -5.63 + ] + ] + ], + [ + [ + [ + -44.36, + -2.54 + ], + [ + -44.03, + -2.41 + ], + [ + -44.31, + -2.77 + ], + [ + -44.36, + -2.54 + ] + ] + ], + [ + [ + [ + -44.58, + -2.91 + ], + [ + -44.48, + -2.73 + ], + [ + -44.59, + -3.03 + ], + [ + -44.58, + -2.91 + ] + ] + ], + [ + [ + [ + -45.36, + -23.78 + ], + [ + -45.23, + -23.78 + ], + [ + -45.24, + -23.96 + ], + [ + -45.46, + -23.92 + ], + [ + -45.36, + -23.78 + ] + ] + ], + [ + [ + [ + -44.18, + -23.18 + ], + [ + -44.38, + -23.17 + ], + [ + -44.24, + -23.08 + ], + [ + -44.18, + -23.18 + ] + ] + ], + [ + [ + [ + -48.43, + -27.59 + ], + [ + -48.57, + -27.84 + ], + [ + -48.42, + -27.38 + ], + [ + -48.43, + -27.59 + ] + ] + ] + ] + }, + "properties": { + "A3": "BRA" + } + }, + { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + 33.24, + -14 + ], + [ + 33.67, + -14.62 + ], + [ + 33.72, + -14.5 + ], + [ + 34.36, + -14.39 + ], + [ + 34.52, + -14.56 + ], + [ + 34.6, + -15.27 + ], + [ + 34.44, + -15.59 + ], + [ + 34.26, + -15.92 + ], + [ + 34.43, + -16.04 + ], + [ + 34.43, + -16.26 + ], + [ + 35.16, + -16.84 + ], + [ + 35.06, + -17.03 + ], + [ + 35.06, + -17.04 + ], + [ + 35.07, + -17.06 + ], + [ + 35.1, + -17.08 + ], + [ + 35.09, + -17.1 + ], + [ + 35.1, + -17.13 + ], + [ + 35.23, + -17.13 + ], + [ + 35.31, + -17.13 + ], + [ + 35.31, + -17.12 + ], + [ + 35.3, + -17.11 + ], + [ + 35.3, + -17.09 + ], + [ + 35.31, + -17.09 + ], + [ + 35.31, + -17.07 + ], + [ + 35.31, + -17.06 + ], + [ + 35.27, + -16.93 + ], + [ + 35.3, + -16.85 + ], + [ + 35.31, + -16.83 + ], + [ + 35.31, + -16.82 + ], + [ + 35.29, + -16.73 + ], + [ + 35.29, + -16.72 + ], + [ + 35.14, + -16.56 + ], + [ + 35.26, + -16.41 + ], + [ + 35.31, + -16.22 + ], + [ + 35.76, + -16.07 + ], + [ + 35.81, + -15.93 + ], + [ + 35.83, + -15.64 + ], + [ + 35.84, + -15.62 + ], + [ + 35.85, + -15.52 + ], + [ + 35.85, + -15.48 + ], + [ + 35.85, + -15.47 + ], + [ + 35.85, + -15.45 + ], + [ + 35.85, + -15.43 + ], + [ + 35.85, + -15.4 + ], + [ + 35.82, + -15.3 + ], + [ + 35.81, + -15.26 + ], + [ + 35.81, + -15.24 + ], + [ + 35.8, + -15.2 + ], + [ + 35.83, + -15.09 + ], + [ + 35.87, + -14.85 + ], + [ + 35.87, + -14.82 + ], + [ + 35.87, + -14.81 + ], + [ + 35.87, + -14.74 + ], + [ + 35.87, + -14.72 + ], + [ + 35.87, + -14.69 + ], + [ + 35.87, + -14.67 + ], + [ + 35.86, + -14.66 + ], + [ + 35.8, + -14.6 + ], + [ + 35.71, + -14.48 + ], + [ + 35.61, + -14.36 + ], + [ + 34.87, + -13.48 + ], + [ + 34.69, + -12.21 + ], + [ + 34.89, + -12.06 + ], + [ + 34.96, + -11.57 + ], + [ + 35.64, + -11.56 + ], + [ + 35.83, + -11.41 + ], + [ + 36.13, + -11.54 + ], + [ + 36.28, + -11.72 + ], + [ + 36.51, + -11.7 + ], + [ + 36.52, + -11.7 + ], + [ + 36.59, + -11.7 + ], + [ + 36.6, + -11.72 + ], + [ + 36.61, + -11.72 + ], + [ + 36.62, + -11.74 + ], + [ + 36.63, + -11.74 + ], + [ + 36.64, + -11.73 + ], + [ + 36.65, + -11.73 + ], + [ + 36.86, + -11.59 + ], + [ + 36.88, + -11.59 + ], + [ + 36.9, + -11.6 + ], + [ + 36.92, + -11.6 + ], + [ + 37.13, + -11.63 + ], + [ + 37.15, + -11.63 + ], + [ + 37.16, + -11.63 + ], + [ + 37.62, + -11.61 + ], + [ + 37.89, + -11.28 + ], + [ + 37.91, + -11.27 + ], + [ + 37.92, + -11.26 + ], + [ + 37.93, + -11.26 + ], + [ + 37.95, + -11.26 + ], + [ + 37.99, + -11.26 + ], + [ + 38, + -11.26 + ], + [ + 38.02, + -11.27 + ], + [ + 38.03, + -11.27 + ], + [ + 38.04, + -11.27 + ], + [ + 38.07, + -11.27 + ], + [ + 38.08, + -11.27 + ], + [ + 38.15, + -11.27 + ], + [ + 38.24, + -11.28 + ], + [ + 38.25, + -11.29 + ], + [ + 38.26, + -11.29 + ], + [ + 38.28, + -11.3 + ], + [ + 38.28, + -11.31 + ], + [ + 38.28, + -11.33 + ], + [ + 38.31, + -11.33 + ], + [ + 38.34, + -11.34 + ], + [ + 38.36, + -11.35 + ], + [ + 38.36, + -11.37 + ], + [ + 38.38, + -11.38 + ], + [ + 38.41, + -11.39 + ], + [ + 38.42, + -11.39 + ], + [ + 38.44, + -11.4 + ], + [ + 38.45, + -11.41 + ], + [ + 38.5, + -11.41 + ], + [ + 38.52, + -11.39 + ], + [ + 38.52, + -11.38 + ], + [ + 38.53, + -11.37 + ], + [ + 38.54, + -11.36 + ], + [ + 38.57, + -11.35 + ], + [ + 38.58, + -11.34 + ], + [ + 38.6, + -11.32 + ], + [ + 38.61, + -11.31 + ], + [ + 38.62, + -11.3 + ], + [ + 38.64, + -11.28 + ], + [ + 38.65, + -11.28 + ], + [ + 38.68, + -11.28 + ], + [ + 38.69, + -11.27 + ], + [ + 38.76, + -11.27 + ], + [ + 38.77, + -11.25 + ], + [ + 38.78, + -11.27 + ], + [ + 38.82, + -11.23 + ], + [ + 38.86, + -11.2 + ], + [ + 39.2, + -11.17 + ], + [ + 39.27, + -11.17 + ], + [ + 39.38, + -11.09 + ], + [ + 39.39, + -11.09 + ], + [ + 39.42, + -11.06 + ], + [ + 39.48, + -11.02 + ], + [ + 39.56, + -10.97 + ], + [ + 39.57, + -10.97 + ], + [ + 39.62, + -10.96 + ], + [ + 39.61, + -10.95 + ], + [ + 39.63, + -10.94 + ], + [ + 39.7, + -10.93 + ], + [ + 39.74, + -10.92 + ], + [ + 39.76, + -10.92 + ], + [ + 39.78, + -10.91 + ], + [ + 39.79, + -10.9 + ], + [ + 39.83, + -10.87 + ], + [ + 39.84, + -10.87 + ], + [ + 39.9, + -10.85 + ], + [ + 39.9, + -10.84 + ], + [ + 39.92, + -10.83 + ], + [ + 39.94, + -10.82 + ], + [ + 39.96, + -10.82 + ], + [ + 39.97, + -10.81 + ], + [ + 39.98, + -10.81 + ], + [ + 39.99, + -10.81 + ], + [ + 40.01, + -10.8 + ], + [ + 40.04, + -10.78 + ], + [ + 40.05, + -10.76 + ], + [ + 40.07, + -10.75 + ], + [ + 40.08, + -10.75 + ], + [ + 40.09, + -10.74 + ], + [ + 40.1, + -10.72 + ], + [ + 40.11, + -10.72 + ], + [ + 40.12, + -10.7 + ], + [ + 40.13, + -10.7 + ], + [ + 40.14, + -10.69 + ], + [ + 40.15, + -10.68 + ], + [ + 40.18, + -10.66 + ], + [ + 40.2, + -10.64 + ], + [ + 40.21, + -10.62 + ], + [ + 40.22, + -10.61 + ], + [ + 40.25, + -10.59 + ], + [ + 40.27, + -10.58 + ], + [ + 40.3, + -10.57 + ], + [ + 40.33, + -10.57 + ], + [ + 40.35, + -10.57 + ], + [ + 40.36, + -10.56 + ], + [ + 40.37, + -10.55 + ], + [ + 40.37, + -10.54 + ], + [ + 40.38, + -10.53 + ], + [ + 40.39, + -10.52 + ], + [ + 40.52, + -10.48 + ], + [ + 40.64, + -10.69 + ], + [ + 40.48, + -10.75 + ], + [ + 40.62, + -10.83 + ], + [ + 40.36, + -11.33 + ], + [ + 40.55, + -12 + ], + [ + 40.45, + -12.41 + ], + [ + 40.63, + -12.75 + ], + [ + 40.4, + -12.92 + ], + [ + 40.5, + -13.06 + ], + [ + 40.59, + -12.97 + ], + [ + 40.46, + -13.52 + ], + [ + 40.6, + -13.55 + ], + [ + 40.64, + -14.03 + ], + [ + 40.51, + -14.18 + ], + [ + 40.74, + -14.28 + ], + [ + 40.62, + -14.33 + ], + [ + 40.63, + -14.6 + ], + [ + 40.71, + -14.44 + ], + [ + 40.83, + -14.5 + ], + [ + 40.83, + -14.84 + ], + [ + 40.64, + -14.86 + ], + [ + 40.77, + -15.01 + ], + [ + 40.64, + -14.97 + ], + [ + 40.71, + -15.08 + ], + [ + 40.52, + -15.16 + ], + [ + 40.68, + -15.27 + ], + [ + 40.03, + -16.19 + ], + [ + 39.76, + -16.28 + ], + [ + 39.95, + -16.3 + ], + [ + 39.91, + -16.41 + ], + [ + 39.24, + -16.73 + ], + [ + 39.07, + -17.01 + ], + [ + 38.67, + -17.02 + ], + [ + 38.15, + -17.3 + ], + [ + 38.08, + -17.21 + ], + [ + 38.08, + -17.32 + ], + [ + 37.35, + -17.6 + ], + [ + 36.98, + -18.02 + ], + [ + 36.9, + -17.96 + ], + [ + 36.32, + -18.86 + ], + [ + 36.25, + -18.77 + ], + [ + 36.28, + -18.88 + ], + [ + 35.88, + -18.94 + ], + [ + 34.89, + -19.85 + ], + [ + 34.67, + -19.66 + ], + [ + 34.78, + -20.14 + ], + [ + 34.66, + -20.57 + ], + [ + 35, + -20.71 + ], + [ + 35.13, + -20.93 + ], + [ + 35.03, + -21.25 + ], + [ + 35.27, + -21.64 + ], + [ + 35.37, + -22.23 + ], + [ + 35.55, + -22.14 + ], + [ + 35.6, + -22.94 + ], + [ + 35.34, + -23.69 + ], + [ + 35.33, + -24.01 + ], + [ + 35.54, + -23.79 + ], + [ + 35.47, + -24.17 + ], + [ + 35.12, + -24.61 + ], + [ + 34.41, + -24.85 + ], + [ + 33.03, + -25.4 + ], + [ + 32.7, + -25.88 + ], + [ + 32.41, + -26.03 + ], + [ + 32.43, + -26.14 + ], + [ + 32.55, + -25.97 + ], + [ + 32.9, + -26.34 + ], + [ + 32.96, + -26.08 + ], + [ + 32.89, + -26.86 + ], + [ + 32.35, + -26.86 + ], + [ + 32.33, + -26.86 + ], + [ + 32.28, + -26.85 + ], + [ + 32.25, + -26.85 + ], + [ + 32.25, + -26.84 + ], + [ + 32.23, + -26.84 + ], + [ + 32.21, + -26.84 + ], + [ + 32.19, + -26.86 + ], + [ + 32.18, + -26.86 + ], + [ + 32.17, + -26.86 + ], + [ + 32.16, + -26.86 + ], + [ + 32.14, + -26.85 + ], + [ + 32.14, + -26.84 + ], + [ + 32.13, + -26.84 + ], + [ + 32, + -25.99 + ], + [ + 32, + -25.98 + ], + [ + 31.98, + -25.95 + ], + [ + 31.99, + -25.44 + ], + [ + 32.03, + -25.2 + ], + [ + 32.03, + -25.19 + ], + [ + 32.03, + -25.17 + ], + [ + 32.12, + -25.25 + ], + [ + 32.12, + -25.11 + ], + [ + 32.03, + -25.17 + ], + [ + 31.99, + -24.3 + ], + [ + 31.56, + -23.48 + ], + [ + 31.38, + -22.63 + ], + [ + 31.31, + -22.43 + ], + [ + 31.31, + -22.42 + ], + [ + 32.41, + -21.32 + ], + [ + 32.89, + -21.51 + ], + [ + 32.48, + -21.32 + ], + [ + 32.37, + -21.14 + ], + [ + 32.49, + -20.63 + ], + [ + 32.86, + -20.29 + ], + [ + 33.06, + -19.78 + ], + [ + 32.83, + -19.67 + ], + [ + 32.88, + -19.1 + ], + [ + 32.7, + -18.94 + ], + [ + 32.93, + -18.77 + ], + [ + 32.89, + -18.51 + ], + [ + 33.07, + -18.35 + ], + [ + 32.94, + -18.03 + ], + [ + 33.05, + -17.34 + ], + [ + 32.84, + -16.93 + ], + [ + 32.9, + -16.71 + ], + [ + 32.89, + -16.72 + ], + [ + 32.85, + -16.71 + ], + [ + 32.85, + -16.7 + ], + [ + 32.83, + -16.7 + ], + [ + 32.82, + -16.71 + ], + [ + 32.81, + -16.7 + ], + [ + 32.8, + -16.7 + ], + [ + 32.41, + -16.47 + ], + [ + 31.91, + -16.41 + ], + [ + 31.28, + -16.01 + ], + [ + 30.42, + -16 + ], + [ + 30.42, + -15.62 + ], + [ + 30.41, + -15.59 + ], + [ + 30.39, + -15.58 + ], + [ + 30.39, + -15.57 + ], + [ + 30.38, + -15.57 + ], + [ + 30.37, + -15.56 + ], + [ + 30.37, + -15.53 + ], + [ + 30.39, + -15.5 + ], + [ + 30.39, + -15.49 + ], + [ + 30.22, + -15.08 + ], + [ + 30.22, + -15.06 + ], + [ + 30.23, + -15.04 + ], + [ + 30.23, + -15.02 + ], + [ + 33.24, + -14 + ] + ], + [ + [ + 34.15, + -16.64 + ], + [ + 34.12, + -16.63 + ], + [ + 34.15, + -16.65 + ], + [ + 34.15, + -16.64 + ] + ], + [ + [ + 32.12, + -15.52 + ], + [ + 32.04, + -15.64 + ], + [ + 31.33, + -15.59 + ], + [ + 31.29, + -15.7 + ], + [ + 30.48, + -15.65 + ], + [ + 31.07, + -15.73 + ], + [ + 31.11, + -15.97 + ], + [ + 31.26, + -15.71 + ], + [ + 32.12, + -15.8 + ], + [ + 32.51, + -15.55 + ], + [ + 32.12, + -15.52 + ] + ], + [ + [ + 33.13, + -19.06 + ], + [ + 33.01, + -19.1 + ], + [ + 33.13, + -19.17 + ], + [ + 33.13, + -19.06 + ] + ], + [ + [ + 35.07, + -24.47 + ], + [ + 34.99, + -24.55 + ], + [ + 35.11, + -24.59 + ], + [ + 35.07, + -24.47 + ] + ] + ], + [ + [ + [ + 39.26, + -11.17 + ], + [ + 39.27, + -11.16 + ], + [ + 39.27, + -11.17 + ], + [ + 39.26, + -11.17 + ] + ] + ], + [ + [ + [ + 39.47, + -11.02 + ], + [ + 39.48, + -11.01 + ], + [ + 39.48, + -11.02 + ], + [ + 39.47, + -11.02 + ] + ] + ] + ] + }, + "properties": { + "A3": "MOZ" + } + }, + { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + 22.68, + 44.21 + ], + [ + 22.7, + 44.2 + ], + [ + 22.75, + 44.2 + ], + [ + 22.76, + 44.19 + ], + [ + 22.77, + 44.18 + ], + [ + 22.78, + 44.17 + ], + [ + 22.8, + 44.16 + ], + [ + 22.81, + 44.16 + ], + [ + 22.84, + 44.14 + ], + [ + 22.85, + 44.14 + ], + [ + 22.87, + 44.13 + ], + [ + 22.88, + 44.13 + ], + [ + 22.99, + 44.1 + ], + [ + 23.01, + 44.09 + ], + [ + 23.02, + 44.09 + ], + [ + 23.03, + 44.08 + ], + [ + 23.04, + 44.05 + ], + [ + 23.03, + 44.04 + ], + [ + 23.03, + 44.03 + ], + [ + 23.02, + 44.02 + ], + [ + 23.01, + 44.01 + ], + [ + 22.99, + 44.01 + ], + [ + 22.93, + 44 + ], + [ + 22.92, + 44 + ], + [ + 22.88, + 43.98 + ], + [ + 22.87, + 43.96 + ], + [ + 22.87, + 43.95 + ], + [ + 22.85, + 43.9 + ], + [ + 22.84, + 43.89 + ], + [ + 22.84, + 43.87 + ], + [ + 22.86, + 43.84 + ], + [ + 22.87, + 43.83 + ], + [ + 22.89, + 43.83 + ], + [ + 22.91, + 43.83 + ], + [ + 23.14, + 43.8 + ], + [ + 23.15, + 43.81 + ], + [ + 23.17, + 43.82 + ], + [ + 23.18, + 43.82 + ], + [ + 23.19, + 43.83 + ], + [ + 23.2, + 43.83 + ], + [ + 23.25, + 43.84 + ], + [ + 23.26, + 43.84 + ], + [ + 23.43, + 43.85 + ], + [ + 23.51, + 43.84 + ], + [ + 23.53, + 43.83 + ], + [ + 23.59, + 43.8 + ], + [ + 23.61, + 43.79 + ], + [ + 23.63, + 43.79 + ], + [ + 23.65, + 43.8 + ], + [ + 23.77, + 43.79 + ], + [ + 23.83, + 43.77 + ], + [ + 23.84, + 43.76 + ], + [ + 23.92, + 43.75 + ], + [ + 23.94, + 43.75 + ], + [ + 24.01, + 43.73 + ], + [ + 24.02, + 43.73 + ], + [ + 24.05, + 43.72 + ], + [ + 24.06, + 43.72 + ], + [ + 24.09, + 43.7 + ], + [ + 24.12, + 43.7 + ], + [ + 24.16, + 43.69 + ], + [ + 24.17, + 43.68 + ], + [ + 24.18, + 43.68 + ], + [ + 24.2, + 43.68 + ], + [ + 24.31, + 43.7 + ], + [ + 24.32, + 43.7 + ], + [ + 24.34, + 43.7 + ], + [ + 24.35, + 43.7 + ], + [ + 24.39, + 43.72 + ], + [ + 24.42, + 43.74 + ], + [ + 24.43, + 43.74 + ], + [ + 24.46, + 43.75 + ], + [ + 24.6, + 43.75 + ], + [ + 24.61, + 43.75 + ], + [ + 24.63, + 43.74 + ], + [ + 24.64, + 43.73 + ], + [ + 24.68, + 43.71 + ], + [ + 24.7, + 43.7 + ], + [ + 24.78, + 43.7 + ], + [ + 24.79, + 43.7 + ], + [ + 24.89, + 43.71 + ], + [ + 24.9, + 43.71 + ], + [ + 24.91, + 43.71 + ], + [ + 24.97, + 43.73 + ], + [ + 25.01, + 43.72 + ], + [ + 25.04, + 43.7 + ], + [ + 25.05, + 43.7 + ], + [ + 25.09, + 43.69 + ], + [ + 25.1, + 43.68 + ], + [ + 25.15, + 43.69 + ], + [ + 25.16, + 43.7 + ], + [ + 25.25, + 43.68 + ], + [ + 25.26, + 43.68 + ], + [ + 25.3, + 43.65 + ], + [ + 25.31, + 43.65 + ], + [ + 25.32, + 43.64 + ], + [ + 25.33, + 43.64 + ], + [ + 25.36, + 43.62 + ], + [ + 25.38, + 43.62 + ], + [ + 25.39, + 43.62 + ], + [ + 25.41, + 43.62 + ], + [ + 25.47, + 43.64 + ], + [ + 25.48, + 43.64 + ], + [ + 25.57, + 43.65 + ], + [ + 25.58, + 43.65 + ], + [ + 25.62, + 43.67 + ], + [ + 25.66, + 43.66 + ], + [ + 25.65, + 43.68 + ], + [ + 25.66, + 43.69 + ], + [ + 25.74, + 43.7 + ], + [ + 25.75, + 43.7 + ], + [ + 25.77, + 43.71 + ], + [ + 25.78, + 43.71 + ], + [ + 25.8, + 43.74 + ], + [ + 25.82, + 43.75 + ], + [ + 25.85, + 43.76 + ], + [ + 25.88, + 43.78 + ], + [ + 25.88, + 43.79 + ], + [ + 25.9, + 43.8 + ], + [ + 25.91, + 43.81 + ], + [ + 25.91, + 43.82 + ], + [ + 25.92, + 43.83 + ], + [ + 25.93, + 43.84 + ], + [ + 25.94, + 43.85 + ], + [ + 25.95, + 43.86 + ], + [ + 25.96, + 43.86 + ], + [ + 25.97, + 43.87 + ], + [ + 25.98, + 43.87 + ], + [ + 26.01, + 43.89 + ], + [ + 26.03, + 43.89 + ], + [ + 26.05, + 43.91 + ], + [ + 26.06, + 43.91 + ], + [ + 26.07, + 43.92 + ], + [ + 26.08, + 43.93 + ], + [ + 26.09, + 43.95 + ], + [ + 26.11, + 43.97 + ], + [ + 26.19, + 43.99 + ], + [ + 26.2, + 43.99 + ], + [ + 26.22, + 43.99 + ], + [ + 26.24, + 44 + ], + [ + 26.38, + 44.04 + ], + [ + 26.39, + 44.04 + ], + [ + 26.5, + 44.05 + ], + [ + 26.51, + 44.05 + ], + [ + 26.67, + 44.07 + ], + [ + 26.68, + 44.07 + ], + [ + 26.75, + 44.08 + ], + [ + 26.76, + 44.08 + ], + [ + 26.81, + 44.1 + ], + [ + 26.82, + 44.1 + ], + [ + 26.85, + 44.11 + ], + [ + 26.86, + 44.12 + ], + [ + 26.89, + 44.12 + ], + [ + 26.89, + 44.13 + ], + [ + 26.95, + 44.14 + ], + [ + 26.96, + 44.14 + ], + [ + 27.01, + 44.14 + ], + [ + 27.03, + 44.14 + ], + [ + 27.08, + 44.15 + ], + [ + 27.09, + 44.14 + ], + [ + 27.15, + 44.13 + ], + [ + 27.18, + 44.12 + ], + [ + 27.26, + 44.12 + ], + [ + 27.28, + 44.12 + ], + [ + 28.58, + 43.74 + ], + [ + 28.47, + 43.36 + ], + [ + 28.15, + 43.4 + ], + [ + 28, + 43.22 + ], + [ + 27.65, + 43.19 + ], + [ + 27.95, + 43.17 + ], + [ + 27.9, + 42.7 + ], + [ + 27.44, + 42.46 + ], + [ + 27.73, + 42.41 + ], + [ + 28.03, + 41.98 + ], + [ + 28.02, + 41.98 + ], + [ + 28.01, + 41.98 + ], + [ + 27.97, + 41.98 + ], + [ + 27.57, + 41.9 + ], + [ + 27.27, + 42.1 + ], + [ + 26.98, + 42.04 + ], + [ + 26.98, + 42.03 + ], + [ + 26.62, + 41.98 + ], + [ + 26.36, + 41.71 + ], + [ + 26.3, + 41.71 + ], + [ + 26.26, + 41.72 + ], + [ + 26.25, + 41.72 + ], + [ + 26.06, + 41.7 + ], + [ + 26.13, + 41.35 + ], + [ + 25.43, + 41.26 + ], + [ + 25.42, + 41.26 + ], + [ + 25.42, + 41.27 + ], + [ + 25.41, + 41.27 + ], + [ + 25.41, + 41.26 + ], + [ + 25.4, + 41.26 + ], + [ + 25.39, + 41.26 + ], + [ + 24.8, + 41.35 + ], + [ + 24.53, + 41.57 + ], + [ + 23.12, + 41.32 + ], + [ + 22.93, + 41.34 + ], + [ + 23.03, + 41.72 + ], + [ + 22.87, + 42.02 + ], + [ + 22.36, + 42.31 + ], + [ + 22.56, + 42.48 + ], + [ + 22.44, + 42.82 + ], + [ + 22.74, + 42.89 + ], + [ + 23.01, + 43.19 + ], + [ + 22.53, + 43.47 + ], + [ + 22.36, + 43.81 + ], + [ + 22.67, + 44.21 + ], + [ + 22.68, + 44.21 + ] + ] + ], + [ + [ + [ + 23.78, + 43.8 + ], + [ + 23.8, + 43.79 + ], + [ + 23.8, + 43.78 + ], + [ + 23.77, + 43.79 + ], + [ + 23.78, + 43.8 + ] + ] + ] + ] + }, + "properties": { + "A3": "BGR" + } + }, + { + "type": "Feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + -61.87, + 17.12 + ], + [ + -61.67, + 17.05 + ], + [ + -61.89, + 17.02 + ], + [ + -61.87, + 17.12 + ] + ] + ] + }, + "properties": { + "A3": "ATG" + } + }, + { + "type": "Feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + 51.3, + 24.51 + ], + [ + 50.99, + 24.5 + ], + [ + 50.81, + 24.74 + ], + [ + 50.76, + 25.5 + ], + [ + 50.85, + 25.47 + ], + [ + 50.85, + 25.65 + ], + [ + 50.91, + 25.51 + ], + [ + 50.99, + 25.98 + ], + [ + 51.26, + 26.16 + ], + [ + 51.66, + 25.9 + ], + [ + 51.47, + 25.51 + ], + [ + 51.66, + 25.02 + ], + [ + 51.37, + 24.58 + ], + [ + 51.22, + 24.64 + ], + [ + 51.3, + 24.51 + ] + ] + ] + }, + "properties": { + "A3": "QAT" + } + }, + { + "type": "Feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + -72.15, + 21.82 + ], + [ + -72.36, + 21.76 + ], + [ + -72.33, + 21.87 + ], + [ + -72.15, + 21.82 + ] + ] + ] + }, + "properties": { + "A3": "TCA" + } + }, + { + "type": "Feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + 144.77, + 13.39 + ], + [ + 144.68, + 13.25 + ], + [ + 144.62, + 13.45 + ], + [ + 144.87, + 13.65 + ], + [ + 144.95, + 13.58 + ], + [ + 144.77, + 13.39 + ] + ] + ] + }, + "properties": { + "A3": "GUM" + } + }, + { + "type": "Feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + 18.82, + 45.91 + ], + [ + 18.89, + 45.92 + ], + [ + 19.57, + 46.18 + ], + [ + 20.07, + 46.16 + ], + [ + 20.1, + 46.16 + ], + [ + 20.26, + 46.13 + ], + [ + 20.82, + 45.77 + ], + [ + 20.79, + 45.59 + ], + [ + 21.02, + 45.32 + ], + [ + 21.51, + 45.17 + ], + [ + 21.36, + 45.02 + ], + [ + 21.56, + 44.9 + ], + [ + 21.36, + 44.86 + ], + [ + 21.36, + 44.84 + ], + [ + 21.36, + 44.83 + ], + [ + 21.35, + 44.83 + ], + [ + 21.2, + 44.77 + ], + [ + 21.39, + 44.79 + ], + [ + 21.55, + 44.77 + ], + [ + 21.56, + 44.77 + ], + [ + 21.58, + 44.76 + ], + [ + 21.59, + 44.76 + ], + [ + 21.61, + 44.73 + ], + [ + 21.61, + 44.72 + ], + [ + 21.61, + 44.7 + ], + [ + 21.7, + 44.66 + ], + [ + 21.72, + 44.65 + ], + [ + 21.74, + 44.66 + ], + [ + 21.75, + 44.66 + ], + [ + 21.77, + 44.66 + ], + [ + 21.78, + 44.66 + ], + [ + 21.91, + 44.65 + ], + [ + 21.92, + 44.64 + ], + [ + 22, + 44.62 + ], + [ + 22.02, + 44.6 + ], + [ + 22.03, + 44.57 + ], + [ + 22.03, + 44.56 + ], + [ + 22.17, + 44.48 + ], + [ + 22.18, + 44.48 + ], + [ + 22.2, + 44.51 + ], + [ + 22.21, + 44.52 + ], + [ + 22.22, + 44.54 + ], + [ + 22.22, + 44.55 + ], + [ + 22.25, + 44.58 + ], + [ + 22.26, + 44.59 + ], + [ + 22.26, + 44.6 + ], + [ + 22.27, + 44.61 + ], + [ + 22.28, + 44.62 + ], + [ + 22.28, + 44.63 + ], + [ + 22.29, + 44.63 + ], + [ + 22.3, + 44.65 + ], + [ + 22.31, + 44.66 + ], + [ + 22.4, + 44.69 + ], + [ + 22.41, + 44.7 + ], + [ + 22.49, + 44.7 + ], + [ + 22.52, + 44.68 + ], + [ + 22.53, + 44.67 + ], + [ + 22.54, + 44.66 + ], + [ + 22.56, + 44.65 + ], + [ + 22.58, + 44.64 + ], + [ + 22.59, + 44.63 + ], + [ + 22.62, + 44.61 + ], + [ + 22.64, + 44.61 + ], + [ + 22.69, + 44.61 + ], + [ + 22.7, + 44.6 + ], + [ + 22.71, + 44.6 + ], + [ + 22.72, + 44.59 + ], + [ + 22.73, + 44.58 + ], + [ + 22.75, + 44.57 + ], + [ + 22.75, + 44.54 + ], + [ + 22.73, + 44.53 + ], + [ + 22.72, + 44.52 + ], + [ + 22.71, + 44.52 + ], + [ + 22.7, + 44.52 + ], + [ + 22.65, + 44.54 + ], + [ + 22.64, + 44.54 + ], + [ + 22.6, + 44.55 + ], + [ + 22.59, + 44.55 + ], + [ + 22.57, + 44.55 + ], + [ + 22.54, + 44.51 + ], + [ + 22.56, + 44.5 + ], + [ + 22.48, + 44.48 + ], + [ + 22.47, + 44.48 + ], + [ + 22.46, + 44.46 + ], + [ + 22.47, + 44.45 + ], + [ + 22.48, + 44.43 + ], + [ + 22.49, + 44.42 + ], + [ + 22.5, + 44.37 + ], + [ + 22.51, + 44.37 + ], + [ + 22.52, + 44.35 + ], + [ + 22.53, + 44.34 + ], + [ + 22.55, + 44.32 + ], + [ + 22.56, + 44.31 + ], + [ + 22.58, + 44.3 + ], + [ + 22.59, + 44.3 + ], + [ + 22.66, + 44.29 + ], + [ + 22.68, + 44.28 + ], + [ + 22.68, + 44.24 + ], + [ + 22.67, + 44.23 + ], + [ + 22.67, + 44.21 + ], + [ + 22.36, + 43.81 + ], + [ + 22.53, + 43.47 + ], + [ + 23.01, + 43.19 + ], + [ + 22.74, + 42.89 + ], + [ + 22.44, + 42.82 + ], + [ + 22.56, + 42.48 + ], + [ + 22.36, + 42.31 + ], + [ + 21.59, + 42.26 + ], + [ + 21.79, + 42.66 + ], + [ + 21.4, + 42.74 + ], + [ + 21.25, + 42.93 + ], + [ + 21.24, + 42.94 + ], + [ + 20.83, + 43.27 + ], + [ + 20.67, + 43.14 + ], + [ + 20.68, + 43.13 + ], + [ + 20.68, + 43.12 + ], + [ + 20.69, + 43.1 + ], + [ + 20.69, + 43.08 + ], + [ + 20.66, + 43.08 + ], + [ + 20.67, + 43.06 + ], + [ + 20.67, + 43.05 + ], + [ + 20.67, + 43.04 + ], + [ + 20.66, + 43.03 + ], + [ + 20.65, + 43.02 + ], + [ + 20.64, + 43.01 + ], + [ + 20.63, + 43.01 + ], + [ + 20.62, + 43 + ], + [ + 20.57, + 43 + ], + [ + 20.53, + 42.97 + ], + [ + 20.51, + 42.97 + ], + [ + 20.52, + 42.97 + ], + [ + 20.49, + 42.94 + ], + [ + 20.49, + 42.93 + ], + [ + 20.49, + 42.92 + ], + [ + 20.5, + 42.91 + ], + [ + 20.51, + 42.9 + ], + [ + 20.52, + 42.89 + ], + [ + 20.54, + 42.89 + ], + [ + 20.44, + 42.84 + ], + [ + 20.44, + 42.83 + ], + [ + 20.38, + 42.84 + ], + [ + 20.37, + 42.84 + ], + [ + 20.36, + 42.83 + ], + [ + 20.35, + 42.83 + ], + [ + 20.35, + 42.84 + ], + [ + 20.35, + 42.88 + ], + [ + 20.35, + 42.89 + ], + [ + 20.35, + 42.91 + ], + [ + 20.34, + 42.91 + ], + [ + 20.33, + 42.91 + ], + [ + 20.31, + 42.92 + ], + [ + 20.29, + 42.93 + ], + [ + 20.26, + 42.94 + ], + [ + 20.18, + 42.97 + ], + [ + 20.16, + 42.98 + ], + [ + 20.15, + 42.99 + ], + [ + 20.14, + 42.99 + ], + [ + 20.14, + 42.98 + ], + [ + 20.14, + 42.97 + ], + [ + 20.13, + 42.97 + ], + [ + 20.12, + 42.97 + ], + [ + 20.12, + 42.96 + ], + [ + 20.12, + 42.97 + ], + [ + 20.11, + 42.97 + ], + [ + 20.09, + 42.99 + ], + [ + 20.08, + 42.99 + ], + [ + 20.05, + 43 + ], + [ + 20.05, + 43.02 + ], + [ + 20.04, + 43.03 + ], + [ + 20.01, + 43.04 + ], + [ + 19.97, + 43.1 + ], + [ + 19.97, + 43.11 + ], + [ + 19.96, + 43.11 + ], + [ + 19.92, + 43.09 + ], + [ + 19.91, + 43.09 + ], + [ + 19.9, + 43.1 + ], + [ + 19.89, + 43.1 + ], + [ + 19.86, + 43.11 + ], + [ + 19.85, + 43.1 + ], + [ + 19.84, + 43.1 + ], + [ + 19.83, + 43.12 + ], + [ + 19.82, + 43.12 + ], + [ + 19.78, + 43.13 + ], + [ + 19.78, + 43.14 + ], + [ + 19.78, + 43.15 + ], + [ + 19.77, + 43.16 + ], + [ + 19.77, + 43.17 + ], + [ + 19.76, + 43.16 + ], + [ + 19.75, + 43.16 + ], + [ + 19.74, + 43.16 + ], + [ + 19.73, + 43.17 + ], + [ + 19.71, + 43.17 + ], + [ + 19.7, + 43.17 + ], + [ + 19.69, + 43.17 + ], + [ + 19.68, + 43.17 + ], + [ + 19.68, + 43.18 + ], + [ + 19.67, + 43.19 + ], + [ + 19.66, + 43.19 + ], + [ + 19.64, + 43.19 + ], + [ + 19.63, + 43.22 + ], + [ + 19.62, + 43.23 + ], + [ + 19.59, + 43.24 + ], + [ + 19.54, + 43.25 + ], + [ + 19.54, + 43.26 + ], + [ + 19.53, + 43.28 + ], + [ + 19.54, + 43.3 + ], + [ + 19.38, + 43.41 + ], + [ + 19.37, + 43.41 + ], + [ + 19.23, + 43.53 + ], + [ + 19.38, + 43.6 + ], + [ + 19.38, + 43.59 + ], + [ + 19.52, + 43.71 + ], + [ + 19.24, + 43.98 + ], + [ + 19.25, + 44.01 + ], + [ + 19.29, + 44 + ], + [ + 19.37, + 43.97 + ], + [ + 19.39, + 43.96 + ], + [ + 19.4, + 43.96 + ], + [ + 19.42, + 43.96 + ], + [ + 19.44, + 43.96 + ], + [ + 19.45, + 43.96 + ], + [ + 19.53, + 43.96 + ], + [ + 19.56, + 43.98 + ], + [ + 19.59, + 44.01 + ], + [ + 19.6, + 44.01 + ], + [ + 19.62, + 44.02 + ], + [ + 19.62, + 44.03 + ], + [ + 19.62, + 44.05 + ], + [ + 19.6, + 44.05 + ], + [ + 19.6, + 44.06 + ], + [ + 19.58, + 44.06 + ], + [ + 19.56, + 44.07 + ], + [ + 19.57, + 44.07 + ], + [ + 19.55, + 44.07 + ], + [ + 19.53, + 44.08 + ], + [ + 19.51, + 44.09 + ], + [ + 19.5, + 44.1 + ], + [ + 19.49, + 44.11 + ], + [ + 19.47, + 44.15 + ], + [ + 19.46, + 44.15 + ], + [ + 19.45, + 44.13 + ], + [ + 19.44, + 44.13 + ], + [ + 19.42, + 44.15 + ], + [ + 19.38, + 44.18 + ], + [ + 19.36, + 44.19 + ], + [ + 19.36, + 44.21 + ], + [ + 19.35, + 44.21 + ], + [ + 19.34, + 44.25 + ], + [ + 19.33, + 44.25 + ], + [ + 19.33, + 44.26 + ], + [ + 19.31, + 44.27 + ], + [ + 19.25, + 44.26 + ], + [ + 19.23, + 44.26 + ], + [ + 19.23, + 44.27 + ], + [ + 19.21, + 44.29 + ], + [ + 19.2, + 44.29 + ], + [ + 19.18, + 44.28 + ], + [ + 19.16, + 44.3 + ], + [ + 19.13, + 44.34 + ], + [ + 19.11, + 44.35 + ], + [ + 19.11, + 44.4 + ], + [ + 19.12, + 44.4 + ], + [ + 19.14, + 44.46 + ], + [ + 19.14, + 44.47 + ], + [ + 19.13, + 44.48 + ], + [ + 19.13, + 44.49 + ], + [ + 19.13, + 44.5 + ], + [ + 19.13, + 44.52 + ], + [ + 19.14, + 44.52 + ], + [ + 19.15, + 44.52 + ], + [ + 19.16, + 44.52 + ], + [ + 19.18, + 44.54 + ], + [ + 19.19, + 44.54 + ], + [ + 19.18, + 44.57 + ], + [ + 19.19, + 44.58 + ], + [ + 19.21, + 44.58 + ], + [ + 19.21, + 44.59 + ], + [ + 19.22, + 44.59 + ], + [ + 19.22, + 44.6 + ], + [ + 19.23, + 44.61 + ], + [ + 19.29, + 44.69 + ], + [ + 19.3, + 44.69 + ], + [ + 19.31, + 44.72 + ], + [ + 19.32, + 44.74 + ], + [ + 19.32, + 44.76 + ], + [ + 19.3, + 44.78 + ], + [ + 19.3, + 44.79 + ], + [ + 19.36, + 44.83 + ], + [ + 19.36, + 44.86 + ], + [ + 19.37, + 44.88 + ], + [ + 19.35, + 44.89 + ], + [ + 19.34, + 44.89 + ], + [ + 19.32, + 44.9 + ], + [ + 19.31, + 44.91 + ], + [ + 19.29, + 44.91 + ], + [ + 19.25, + 44.91 + ], + [ + 19.23, + 44.9 + ], + [ + 19.21, + 44.9 + ], + [ + 19.2, + 44.91 + ], + [ + 19.2, + 44.92 + ], + [ + 19.19, + 44.92 + ], + [ + 19.17, + 44.92 + ], + [ + 19.16, + 44.91 + ], + [ + 19.14, + 44.9 + ], + [ + 19.13, + 44.9 + ], + [ + 19.12, + 44.89 + ], + [ + 19.11, + 44.88 + ], + [ + 19.08, + 44.87 + ], + [ + 19.06, + 44.86 + ], + [ + 19.05, + 44.86 + ], + [ + 19.04, + 44.86 + ], + [ + 19.02, + 44.86 + ], + [ + 19.07, + 44.97 + ], + [ + 19.09, + 45.15 + ], + [ + 19.42, + 45.23 + ], + [ + 19.33, + 45.23 + ], + [ + 19.28, + 45.24 + ], + [ + 19.24, + 45.25 + ], + [ + 19.23, + 45.25 + ], + [ + 19.22, + 45.26 + ], + [ + 19.2, + 45.26 + ], + [ + 19.19, + 45.27 + ], + [ + 19.17, + 45.27 + ], + [ + 19.15, + 45.28 + ], + [ + 19.14, + 45.28 + ], + [ + 19.13, + 45.29 + ], + [ + 19.1, + 45.3 + ], + [ + 19.09, + 45.33 + ], + [ + 19.09, + 45.34 + ], + [ + 19.06, + 45.34 + ], + [ + 19.03, + 45.35 + ], + [ + 19.02, + 45.35 + ], + [ + 19.01, + 45.36 + ], + [ + 18.99, + 45.36 + ], + [ + 18.97, + 45.38 + ], + [ + 18.97, + 45.39 + ], + [ + 19, + 45.4 + ], + [ + 19.01, + 45.4 + ], + [ + 19.02, + 45.4 + ], + [ + 19.03, + 45.42 + ], + [ + 19.02, + 45.43 + ], + [ + 18.99, + 45.44 + ], + [ + 18.99, + 45.45 + ], + [ + 18.99, + 45.47 + ], + [ + 18.99, + 45.48 + ], + [ + 19, + 45.49 + ], + [ + 19.01, + 45.5 + ], + [ + 19.02, + 45.49 + ], + [ + 19.04, + 45.49 + ], + [ + 19.06, + 45.49 + ], + [ + 19.09, + 45.49 + ], + [ + 19.1, + 45.5 + ], + [ + 19.1, + 45.51 + ], + [ + 19.1, + 45.52 + ], + [ + 19.09, + 45.52 + ], + [ + 19.07, + 45.53 + ], + [ + 19.06, + 45.53 + ], + [ + 19.03, + 45.54 + ], + [ + 19.02, + 45.56 + ], + [ + 19.01, + 45.56 + ], + [ + 19, + 45.54 + ], + [ + 18.98, + 45.54 + ], + [ + 18.94, + 45.54 + ], + [ + 18.93, + 45.54 + ], + [ + 18.89, + 45.57 + ], + [ + 18.9, + 45.57 + ], + [ + 18.9, + 45.58 + ], + [ + 18.9, + 45.59 + ], + [ + 18.92, + 45.6 + ], + [ + 18.91, + 45.6 + ], + [ + 18.92, + 45.63 + ], + [ + 18.92, + 45.62 + ], + [ + 18.93, + 45.62 + ], + [ + 18.93, + 45.63 + ], + [ + 18.95, + 45.65 + ], + [ + 18.96, + 45.65 + ], + [ + 18.96, + 45.66 + ], + [ + 18.97, + 45.67 + ], + [ + 18.95, + 45.68 + ], + [ + 18.94, + 45.68 + ], + [ + 18.94, + 45.69 + ], + [ + 18.93, + 45.69 + ], + [ + 18.9, + 45.72 + ], + [ + 18.9, + 45.75 + ], + [ + 18.9, + 45.77 + ], + [ + 18.89, + 45.78 + ], + [ + 18.88, + 45.78 + ], + [ + 18.87, + 45.78 + ], + [ + 18.87, + 45.79 + ], + [ + 18.87, + 45.78 + ], + [ + 18.85, + 45.81 + ], + [ + 18.86, + 45.83 + ], + [ + 18.86, + 45.85 + ], + [ + 18.86, + 45.86 + ], + [ + 18.84, + 45.87 + ], + [ + 18.83, + 45.89 + ], + [ + 18.83, + 45.9 + ], + [ + 18.82, + 45.91 + ] + ] + ] + }, + "properties": { + "A3": "SRB" + } + }, + { + "type": "Feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + -76.87, + 17.98 + ], + [ + -76.95, + 17.84 + ], + [ + -77.13, + 17.89 + ], + [ + -77.18, + 17.71 + ], + [ + -77.41, + 17.86 + ], + [ + -77.74, + 17.85 + ], + [ + -78.05, + 18.2 + ], + [ + -78.37, + 18.27 + ], + [ + -78.21, + 18.46 + ], + [ + -77.88, + 18.52 + ], + [ + -76.9, + 18.41 + ], + [ + -76.34, + 18.16 + ], + [ + -76.18, + 17.91 + ], + [ + -76.87, + 17.98 + ] + ] + ] + }, + "properties": { + "A3": "JAM" + } + }, + { + "type": "Feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + -92.23, + 14.53 + ], + [ + -92.22, + 14.54 + ], + [ + -92.2, + 14.57 + ], + [ + -92.19, + 14.57 + ], + [ + -92.18, + 14.58 + ], + [ + -92.18, + 14.6 + ], + [ + -92.18, + 14.61 + ], + [ + -92.16, + 14.65 + ], + [ + -92.15, + 14.67 + ], + [ + -92.15, + 14.71 + ], + [ + -92.15, + 14.72 + ], + [ + -92.17, + 14.75 + ], + [ + -92.17, + 14.79 + ], + [ + -92.18, + 14.8 + ], + [ + -92.18, + 14.82 + ], + [ + -92.17, + 14.86 + ], + [ + -92.06, + 15.07 + ], + [ + -92.21, + 15.26 + ], + [ + -91.69, + 16.07 + ], + [ + -91.67, + 16.07 + ], + [ + -90.45, + 16.08 + ], + [ + -90.44, + 16.1 + ], + [ + -90.43, + 16.17 + ], + [ + -90.44, + 16.26 + ], + [ + -90.43, + 16.26 + ], + [ + -90.42, + 16.26 + ], + [ + -90.44, + 16.3 + ], + [ + -90.4, + 16.34 + ], + [ + -90.39, + 16.34 + ], + [ + -90.39, + 16.35 + ], + [ + -90.4, + 16.35 + ], + [ + -90.39, + 16.42 + ], + [ + -90.4, + 16.42 + ], + [ + -90.44, + 16.42 + ], + [ + -90.45, + 16.42 + ], + [ + -90.48, + 16.42 + ], + [ + -90.48, + 16.46 + ], + [ + -90.52, + 16.47 + ], + [ + -90.53, + 16.46 + ], + [ + -90.55, + 16.48 + ], + [ + -90.57, + 16.47 + ], + [ + -90.58, + 16.47 + ], + [ + -90.59, + 16.48 + ], + [ + -90.59, + 16.49 + ], + [ + -90.6, + 16.49 + ], + [ + -90.63, + 16.48 + ], + [ + -90.63, + 16.49 + ], + [ + -90.63, + 16.51 + ], + [ + -90.64, + 16.51 + ], + [ + -90.64, + 16.53 + ], + [ + -90.64, + 16.57 + ], + [ + -90.63, + 16.57 + ], + [ + -90.67, + 16.58 + ], + [ + -90.66, + 16.6 + ], + [ + -90.66, + 16.62 + ], + [ + -90.66, + 16.64 + ], + [ + -90.66, + 16.65 + ], + [ + -90.66, + 16.64 + ], + [ + -90.68, + 16.68 + ], + [ + -90.68, + 16.69 + ], + [ + -90.7, + 16.7 + ], + [ + -90.71, + 16.7 + ], + [ + -90.71, + 16.72 + ], + [ + -90.75, + 16.74 + ], + [ + -90.75, + 16.75 + ], + [ + -90.77, + 16.76 + ], + [ + -90.8, + 16.78 + ], + [ + -90.86, + 16.8 + ], + [ + -90.87, + 16.82 + ], + [ + -90.89, + 16.83 + ], + [ + -90.9, + 16.82 + ], + [ + -90.91, + 16.82 + ], + [ + -90.92, + 16.82 + ], + [ + -90.93, + 16.83 + ], + [ + -90.94, + 16.86 + ], + [ + -90.96, + 16.86 + ], + [ + -90.97, + 16.87 + ], + [ + -90.99, + 16.86 + ], + [ + -90.99, + 16.87 + ], + [ + -91.01, + 16.89 + ], + [ + -91.07, + 16.91 + ], + [ + -91.12, + 16.99 + ], + [ + -91.12, + 17 + ], + [ + -91.19, + 17.04 + ], + [ + -91.21, + 17.06 + ], + [ + -91.23, + 17.1 + ], + [ + -91.25, + 17.1 + ], + [ + -91.26, + 17.1 + ], + [ + -91.27, + 17.12 + ], + [ + -91.27, + 17.14 + ], + [ + -91.29, + 17.18 + ], + [ + -91.3, + 17.18 + ], + [ + -91.31, + 17.18 + ], + [ + -91.32, + 17.18 + ], + [ + -91.38, + 17.21 + ], + [ + -91.39, + 17.21 + ], + [ + -91.41, + 17.21 + ], + [ + -91.43, + 17.22 + ], + [ + -91.43, + 17.23 + ], + [ + -90.99, + 17.25 + ], + [ + -90.99, + 17.82 + ], + [ + -90.44, + 17.81 + ], + [ + -90.4, + 17.81 + ], + [ + -90.39, + 17.81 + ], + [ + -90.31, + 17.81 + ], + [ + -90.13, + 17.82 + ], + [ + -89.15, + 17.82 + ], + [ + -89.19, + 15.9 + ], + [ + -89.15, + 15.9 + ], + [ + -89.14, + 15.9 + ], + [ + -89.12, + 15.9 + ], + [ + -89.08, + 15.9 + ], + [ + -89.06, + 15.92 + ], + [ + -89.05, + 15.91 + ], + [ + -89.01, + 15.9 + ], + [ + -88.92, + 15.89 + ], + [ + -88.91, + 15.9 + ], + [ + -88.62, + 15.69 + ], + [ + -88.49, + 15.85 + ], + [ + -88.59, + 15.96 + ], + [ + -88.23, + 15.72 + ], + [ + -88.24, + 15.71 + ], + [ + -88.24, + 15.7 + ], + [ + -88.31, + 15.68 + ], + [ + -89.15, + 15.07 + ], + [ + -89.15, + 14.58 + ], + [ + -89.36, + 14.42 + ], + [ + -89.57, + 14.42 + ], + [ + -89.55, + 14.29 + ], + [ + -89.54, + 14.26 + ], + [ + -89.52, + 14.22 + ], + [ + -89.54, + 14.22 + ], + [ + -90.09, + 13.86 + ], + [ + -90.13, + 13.74 + ], + [ + -91.14, + 13.92 + ], + [ + -92.23, + 14.53 + ] + ], + [ + [ + -89.03, + 15.63 + ], + [ + -89.42, + 15.5 + ], + [ + -89.32, + 15.33 + ], + [ + -89, + 15.5 + ], + [ + -89.03, + 15.63 + ] + ] + ] + }, + "properties": { + "A3": "GTM" + } + }, + { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + -8.87, + 41.87 + ], + [ + -8.85, + 41.87 + ], + [ + -8.8, + 41.92 + ], + [ + -8.79, + 41.92 + ], + [ + -8.78, + 41.92 + ], + [ + -8.77, + 41.93 + ], + [ + -8.75, + 41.94 + ], + [ + -8.75, + 41.96 + ], + [ + -8.74, + 41.97 + ], + [ + -8.72, + 41.98 + ], + [ + -8.71, + 41.98 + ], + [ + -8.7, + 41.98 + ], + [ + -8.69, + 41.99 + ], + [ + -8.67, + 42 + ], + [ + -8.66, + 42.03 + ], + [ + -8.65, + 42.03 + ], + [ + -8.64, + 42.05 + ], + [ + -8.63, + 42.05 + ], + [ + -8.61, + 42.05 + ], + [ + -8.57, + 42.05 + ], + [ + -8.55, + 42.05 + ], + [ + -8.53, + 42.06 + ], + [ + -8.53, + 42.07 + ], + [ + -8.51, + 42.08 + ], + [ + -8.5, + 42.08 + ], + [ + -8.47, + 42.08 + ], + [ + -8.46, + 42.08 + ], + [ + -8.44, + 42.08 + ], + [ + -8.4, + 42.08 + ], + [ + -8.39, + 42.08 + ], + [ + -8.32, + 42.1 + ], + [ + -8.28, + 42.12 + ], + [ + -8.08, + 42.05 + ], + [ + -8.22, + 41.91 + ], + [ + -8.22, + 41.9 + ], + [ + -8.2, + 41.87 + ], + [ + -7.91, + 41.9 + ], + [ + -7.91, + 41.91 + ], + [ + -7.43, + 41.81 + ], + [ + -7.14, + 41.99 + ], + [ + -6.81, + 41.97 + ], + [ + -6.55, + 41.94 + ], + [ + -6.55, + 41.69 + ], + [ + -6.26, + 41.64 + ], + [ + -6.27, + 41.49 + ], + [ + -6.26, + 41.49 + ], + [ + -6.29, + 41.48 + ], + [ + -6.31, + 41.45 + ], + [ + -6.3, + 41.44 + ], + [ + -6.3, + 41.43 + ], + [ + -6.3, + 41.42 + ], + [ + -6.33, + 41.41 + ], + [ + -6.34, + 41.38 + ], + [ + -6.35, + 41.38 + ], + [ + -6.37, + 41.39 + ], + [ + -6.39, + 41.38 + ], + [ + -6.38, + 41.36 + ], + [ + -6.41, + 41.35 + ], + [ + -6.42, + 41.34 + ], + [ + -6.42, + 41.33 + ], + [ + -6.42, + 41.32 + ], + [ + -6.44, + 41.31 + ], + [ + -6.45, + 41.3 + ], + [ + -6.46, + 41.3 + ], + [ + -6.48, + 41.28 + ], + [ + -6.5, + 41.27 + ], + [ + -6.51, + 41.26 + ], + [ + -6.57, + 41.24 + ], + [ + -6.59, + 41.24 + ], + [ + -6.59, + 41.25 + ], + [ + -6.6, + 41.25 + ], + [ + -6.6, + 41.24 + ], + [ + -6.63, + 41.24 + ], + [ + -6.64, + 41.25 + ], + [ + -6.66, + 41.23 + ], + [ + -6.7, + 41.19 + ], + [ + -6.72, + 41.17 + ], + [ + -6.73, + 41.16 + ], + [ + -6.74, + 41.15 + ], + [ + -6.75, + 41.15 + ], + [ + -6.77, + 41.14 + ], + [ + -6.77, + 41.13 + ], + [ + -6.76, + 41.1 + ], + [ + -6.77, + 41.09 + ], + [ + -6.77, + 41.08 + ], + [ + -6.78, + 41.07 + ], + [ + -6.79, + 41.06 + ], + [ + -6.81, + 41.05 + ], + [ + -6.81, + 41.04 + ], + [ + -6.83, + 41.03 + ], + [ + -6.85, + 41.03 + ], + [ + -6.86, + 41.03 + ], + [ + -6.87, + 41.03 + ], + [ + -6.88, + 41.03 + ], + [ + -6.9, + 41.03 + ], + [ + -6.82, + 40.61 + ], + [ + -6.79, + 40.33 + ], + [ + -7.03, + 40.19 + ], + [ + -6.86, + 40.01 + ], + [ + -6.97, + 39.83 + ], + [ + -7.02, + 39.67 + ], + [ + -7.25, + 39.67 + ], + [ + -7.33, + 39.64 + ], + [ + -7.35, + 39.64 + ], + [ + -7.38, + 39.65 + ], + [ + -7.39, + 39.65 + ], + [ + -7.47, + 39.66 + ], + [ + -7.51, + 39.67 + ], + [ + -7.52, + 39.67 + ], + [ + -7.13, + 39.11 + ], + [ + -7.12, + 39.1 + ], + [ + -6.95, + 39.02 + ], + [ + -7.08, + 38.84 + ], + [ + -7.14, + 38.81 + ], + [ + -7.14, + 38.8 + ], + [ + -7.16, + 38.79 + ], + [ + -7.2, + 38.76 + ], + [ + -7.21, + 38.75 + ], + [ + -7.25, + 38.73 + ], + [ + -7.26, + 38.71 + ], + [ + -7.27, + 38.65 + ], + [ + -7.26, + 38.63 + ], + [ + -7.26, + 38.6 + ], + [ + -7.29, + 38.56 + ], + [ + -7.3, + 38.55 + ], + [ + -7.3, + 38.52 + ], + [ + -7.31, + 38.51 + ], + [ + -7.31, + 38.47 + ], + [ + -7.31, + 38.46 + ], + [ + -7.31, + 38.45 + ], + [ + -7.09, + 38.17 + ], + [ + -6.94, + 38.22 + ], + [ + -6.99, + 38.1 + ], + [ + -7.26, + 37.98 + ], + [ + -7.46, + 37.65 + ], + [ + -7.47, + 37.64 + ], + [ + -7.5, + 37.59 + ], + [ + -7.52, + 37.57 + ], + [ + -7.52, + 37.55 + ], + [ + -7.51, + 37.54 + ], + [ + -7.51, + 37.53 + ], + [ + -7.51, + 37.52 + ], + [ + -7.49, + 37.51 + ], + [ + -7.49, + 37.5 + ], + [ + -7.47, + 37.49 + ], + [ + -7.47, + 37.46 + ], + [ + -7.46, + 37.46 + ], + [ + -7.46, + 37.44 + ], + [ + -7.46, + 37.43 + ], + [ + -7.45, + 37.42 + ], + [ + -7.44, + 37.39 + ], + [ + -7.44, + 37.37 + ], + [ + -7.44, + 37.34 + ], + [ + -7.44, + 37.33 + ], + [ + -7.44, + 37.32 + ], + [ + -7.44, + 37.31 + ], + [ + -7.44, + 37.3 + ], + [ + -7.42, + 37.28 + ], + [ + -7.43, + 37.27 + ], + [ + -7.43, + 37.26 + ], + [ + -7.42, + 37.23 + ], + [ + -7.41, + 37.22 + ], + [ + -7.88, + 36.99 + ], + [ + -8.61, + 37.14 + ], + [ + -9, + 37.02 + ], + [ + -8.79, + 37.53 + ], + [ + -8.89, + 37.95 + ], + [ + -8.78, + 38.27 + ], + [ + -8.91, + 38.49 + ], + [ + -8.57, + 38.4 + ], + [ + -8.74, + 38.57 + ], + [ + -8.79, + 38.48 + ], + [ + -8.9, + 38.52 + ], + [ + -9.22, + 38.41 + ], + [ + -9.26, + 38.66 + ], + [ + -8.92, + 38.76 + ], + [ + -9.01, + 38.89 + ], + [ + -9.11, + 38.71 + ], + [ + -9.5, + 38.78 + ], + [ + -9.41, + 39.36 + ], + [ + -9.07, + 39.58 + ], + [ + -8.66, + 40.93 + ], + [ + -8.87, + 41.87 + ] + ] + ], + [ + [ + [ + -31.13, + 39.46 + ], + [ + -31.25, + 39.38 + ], + [ + -31.24, + 39.52 + ], + [ + -31.13, + 39.46 + ] + ] + ], + [ + [ + [ + -28.07, + 38.63 + ], + [ + -28.32, + 38.76 + ], + [ + -27.75, + 38.55 + ], + [ + -28.07, + 38.63 + ] + ] + ], + [ + [ + [ + -27.32, + 38.8 + ], + [ + -27.07, + 38.77 + ], + [ + -27.08, + 38.64 + ], + [ + -27.35, + 38.69 + ], + [ + -27.32, + 38.8 + ] + ] + ], + [ + [ + [ + -25.67, + 37.83 + ], + [ + -25.13, + 37.81 + ], + [ + -25.51, + 37.71 + ], + [ + -25.85, + 37.86 + ], + [ + -25.67, + 37.83 + ] + ] + ], + [ + [ + [ + -16.79, + 32.77 + ], + [ + -16.68, + 32.74 + ], + [ + -16.94, + 32.63 + ], + [ + -17.27, + 32.81 + ], + [ + -16.79, + 32.77 + ] + ] + ] + ] + }, + "properties": { + "A3": "PRT" + } + }, + { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + 26.36, + 41.71 + ], + [ + 26.62, + 41.98 + ], + [ + 26.98, + 42.03 + ], + [ + 26.98, + 42.04 + ], + [ + 27.27, + 42.1 + ], + [ + 27.57, + 41.9 + ], + [ + 27.97, + 41.98 + ], + [ + 28.01, + 41.98 + ], + [ + 28.02, + 41.98 + ], + [ + 28.03, + 41.98 + ], + [ + 28.21, + 41.53 + ], + [ + 29.12, + 41.23 + ], + [ + 28.98, + 41 + ], + [ + 28.62, + 40.96 + ], + [ + 28.52, + 41.1 + ], + [ + 28.54, + 40.98 + ], + [ + 28.22, + 41.08 + ], + [ + 27.51, + 40.97 + ], + [ + 27.31, + 40.7 + ], + [ + 26.7, + 40.45 + ], + [ + 26.19, + 40.04 + ], + [ + 26.22, + 40.32 + ], + [ + 26.84, + 40.59 + ], + [ + 26.13, + 40.59 + ], + [ + 26.07, + 40.73 + ], + [ + 26.13, + 40.75 + ], + [ + 26.15, + 40.8 + ], + [ + 26.17, + 40.81 + ], + [ + 26.19, + 40.82 + ], + [ + 26.2, + 40.83 + ], + [ + 26.21, + 40.85 + ], + [ + 26.21, + 40.87 + ], + [ + 26.22, + 40.87 + ], + [ + 26.23, + 40.89 + ], + [ + 26.24, + 40.89 + ], + [ + 26.26, + 40.91 + ], + [ + 26.3, + 40.93 + ], + [ + 26.32, + 41.25 + ], + [ + 26.54, + 41.34 + ], + [ + 26.55, + 41.34 + ], + [ + 26.59, + 41.32 + ], + [ + 26.63, + 41.36 + ], + [ + 26.63, + 41.39 + ], + [ + 26.63, + 41.4 + ], + [ + 26.63, + 41.41 + ], + [ + 26.6, + 41.49 + ], + [ + 26.37, + 41.71 + ], + [ + 26.36, + 41.71 + ] + ], + [ + [ + 27.92, + 40.25 + ], + [ + 27.83, + 40.18 + ], + [ + 28.06, + 40.15 + ], + [ + 27.92, + 40.25 + ] + ] + ], + [ + [ + [ + 41.55, + 41.52 + ], + [ + 41.63, + 41.49 + ], + [ + 41.7, + 41.5 + ], + [ + 41.71, + 41.5 + ], + [ + 41.71, + 41.48 + ], + [ + 42.52, + 41.44 + ], + [ + 42.83, + 41.59 + ], + [ + 43.2, + 41.23 + ], + [ + 43.23, + 41.19 + ], + [ + 43.47, + 41.12 + ], + [ + 43.75, + 40.69 + ], + [ + 43.75, + 40.68 + ], + [ + 43.72, + 40.65 + ], + [ + 43.67, + 40.57 + ], + [ + 43.64, + 40.53 + ], + [ + 43.57, + 40.5 + ], + [ + 43.57, + 40.49 + ], + [ + 43.55, + 40.47 + ], + [ + 43.57, + 40.46 + ], + [ + 43.59, + 40.45 + ], + [ + 43.68, + 40.1 + ], + [ + 44.23, + 40.04 + ], + [ + 44.23, + 40.05 + ], + [ + 44.25, + 40.05 + ], + [ + 44.29, + 40.04 + ], + [ + 44.34, + 40.03 + ], + [ + 44.36, + 40.02 + ], + [ + 44.52, + 39.93 + ], + [ + 44.54, + 39.91 + ], + [ + 44.56, + 39.88 + ], + [ + 44.6, + 39.82 + ], + [ + 44.61, + 39.83 + ], + [ + 44.67, + 39.79 + ], + [ + 44.69, + 39.79 + ], + [ + 44.71, + 39.76 + ], + [ + 44.74, + 39.75 + ], + [ + 44.76, + 39.71 + ], + [ + 44.77, + 39.71 + ], + [ + 44.78, + 39.69 + ], + [ + 44.8, + 39.68 + ], + [ + 44.8, + 39.67 + ], + [ + 44.81, + 39.67 + ], + [ + 44.81, + 39.66 + ], + [ + 44.82, + 39.65 + ], + [ + 44.81, + 39.64 + ], + [ + 44.8, + 39.64 + ], + [ + 44.61, + 39.78 + ], + [ + 44.6, + 39.78 + ], + [ + 44.42, + 39.41 + ], + [ + 44.03, + 39.38 + ], + [ + 44.2, + 38.93 + ], + [ + 44.3, + 38.39 + ], + [ + 44.51, + 38.34 + ], + [ + 44.22, + 37.89 + ], + [ + 44.62, + 37.73 + ], + [ + 44.58, + 37.45 + ], + [ + 44.78, + 37.14 + ], + [ + 44.63, + 37.19 + ], + [ + 44.31, + 36.96 + ], + [ + 44.13, + 37.32 + ], + [ + 43.83, + 37.19 + ], + [ + 43.15, + 37.37 + ], + [ + 42.74, + 37.33 + ], + [ + 42.73, + 37.33 + ], + [ + 42.58, + 37.15 + ], + [ + 42.57, + 37.14 + ], + [ + 42.57, + 37.15 + ], + [ + 42.35, + 37.11 + ], + [ + 42.35, + 37.12 + ], + [ + 42.34, + 37.14 + ], + [ + 42.34, + 37.15 + ], + [ + 42.32, + 37.17 + ], + [ + 42.32, + 37.19 + ], + [ + 42.34, + 37.21 + ], + [ + 42.35, + 37.21 + ], + [ + 42.34, + 37.23 + ], + [ + 42.34, + 37.24 + ], + [ + 42.32, + 37.25 + ], + [ + 42.31, + 37.25 + ], + [ + 42.3, + 37.26 + ], + [ + 42.28, + 37.28 + ], + [ + 42.21, + 37.28 + ], + [ + 42.21, + 37.29 + ], + [ + 42.21, + 37.3 + ], + [ + 42.22, + 37.3 + ], + [ + 42.22, + 37.32 + ], + [ + 42.21, + 37.32 + ], + [ + 41.52, + 37.08 + ], + [ + 40.77, + 37.13 + ], + [ + 39.49, + 36.7 + ], + [ + 38.03, + 36.86 + ], + [ + 38.03, + 36.84 + ], + [ + 38.03, + 36.83 + ], + [ + 37.44, + 36.63 + ], + [ + 36.67, + 36.83 + ], + [ + 36.54, + 36.49 + ], + [ + 36.69, + 36.25 + ], + [ + 36.38, + 36.22 + ], + [ + 36.16, + 35.81 + ], + [ + 35.92, + 35.93 + ], + [ + 35.78, + 36.32 + ], + [ + 36.22, + 36.66 + ], + [ + 36.01, + 36.93 + ], + [ + 35.34, + 36.54 + ], + [ + 34.65, + 36.81 + ], + [ + 33.96, + 36.23 + ], + [ + 33.87, + 36.32 + ], + [ + 33.69, + 36.14 + ], + [ + 32.8, + 36.02 + ], + [ + 32.39, + 36.16 + ], + [ + 32.02, + 36.54 + ], + [ + 31.01, + 36.86 + ], + [ + 30.61, + 36.84 + ], + [ + 30.41, + 36.21 + ], + [ + 30.18, + 36.31 + ], + [ + 29.68, + 36.13 + ], + [ + 29.1, + 36.39 + ], + [ + 29.09, + 36.68 + ], + [ + 28.93, + 36.76 + ], + [ + 28.85, + 36.59 + ], + [ + 28.46, + 36.88 + ], + [ + 28.03, + 36.56 + ], + [ + 28.13, + 36.81 + ], + [ + 27.41, + 36.66 + ], + [ + 27.64, + 36.81 + ], + [ + 28.03, + 36.79 + ], + [ + 28.02, + 36.93 + ], + [ + 28.33, + 37.05 + ], + [ + 27.26, + 36.96 + ], + [ + 27.25, + 37.13 + ], + [ + 27.47, + 37.08 + ], + [ + 27.64, + 37.25 + ], + [ + 27.46, + 37.25 + ], + [ + 27.42, + 37.42 + ], + [ + 27.19, + 37.35 + ], + [ + 27.23, + 37.58 + ], + [ + 27, + 37.66 + ], + [ + 27.25, + 37.74 + ], + [ + 27.25, + 37.98 + ], + [ + 26.87, + 38.03 + ], + [ + 26.76, + 38.22 + ], + [ + 26.59, + 38.1 + ], + [ + 26.23, + 38.27 + ], + [ + 26.52, + 38.43 + ], + [ + 26.42, + 38.68 + ], + [ + 26.67, + 38.31 + ], + [ + 26.71, + 38.43 + ], + [ + 26.8, + 38.36 + ], + [ + 27.17, + 38.44 + ], + [ + 26.94, + 38.43 + ], + [ + 26.72, + 38.65 + ], + [ + 27.07, + 38.88 + ], + [ + 26.8, + 38.95 + ], + [ + 26.88, + 39.09 + ], + [ + 26.61, + 39.28 + ], + [ + 26.95, + 39.56 + ], + [ + 26.06, + 39.48 + ], + [ + 26.18, + 39.99 + ], + [ + 26.4, + 40.2 + ], + [ + 26.75, + 40.4 + ], + [ + 27.29, + 40.48 + ], + [ + 27.31, + 40.38 + ], + [ + 27.78, + 40.31 + ], + [ + 27.75, + 40.53 + ], + [ + 28.03, + 40.48 + ], + [ + 27.96, + 40.35 + ], + [ + 29.05, + 40.36 + ], + [ + 29.15, + 40.44 + ], + [ + 28.79, + 40.55 + ], + [ + 29.94, + 40.73 + ], + [ + 29.26, + 40.8 + ], + [ + 29.01, + 41.01 + ], + [ + 29.17, + 41.22 + ], + [ + 31.25, + 41.1 + ], + [ + 31.4, + 41.32 + ], + [ + 32.28, + 41.72 + ], + [ + 33.34, + 42.02 + ], + [ + 34.72, + 41.94 + ], + [ + 35.02, + 42.09 + ], + [ + 35.21, + 42.02 + ], + [ + 35.09, + 41.92 + ], + [ + 35.28, + 41.72 + ], + [ + 36.07, + 41.68 + ], + [ + 36.4, + 41.25 + ], + [ + 36.66, + 41.38 + ], + [ + 37.51, + 41.03 + ], + [ + 37.68, + 41.14 + ], + [ + 38.36, + 40.91 + ], + [ + 39.42, + 41.11 + ], + [ + 40.18, + 40.91 + ], + [ + 41.55, + 41.52 + ] + ], + [ + [ + 38.85, + 37.72 + ], + [ + 38.41, + 37.5 + ], + [ + 38.36, + 37.6 + ], + [ + 38.45, + 37.63 + ], + [ + 38.25, + 37.58 + ], + [ + 38.36, + 37.46 + ], + [ + 38.58, + 37.42 + ], + [ + 38.85, + 37.72 + ] + ], + [ + [ + 31.32, + 37.96 + ], + [ + 31.43, + 37.61 + ], + [ + 31.71, + 37.65 + ], + [ + 31.32, + 37.96 + ] + ], + [ + [ + 30.2, + 37.79 + ], + [ + 30.07, + 37.65 + ], + [ + 30.34, + 37.79 + ], + [ + 30.2, + 37.79 + ] + ], + [ + [ + 33.56, + 38.82 + ], + [ + 33.62, + 38.5 + ], + [ + 33.73, + 38.62 + ], + [ + 33.56, + 38.82 + ] + ], + [ + [ + 43.39, + 38.99 + ], + [ + 43.04, + 38.93 + ], + [ + 43.18, + 38.89 + ], + [ + 43.07, + 38.78 + ], + [ + 42.45, + 38.74 + ], + [ + 42.29, + 38.48 + ], + [ + 42.87, + 38.48 + ], + [ + 43.12, + 38.31 + ], + [ + 43.32, + 38.48 + ], + [ + 43.1, + 38.65 + ], + [ + 43.66, + 38.93 + ], + [ + 43.39, + 38.99 + ] + ], + [ + [ + 33.32, + 39.13 + ], + [ + 33.37, + 38.93 + ], + [ + 33.17, + 38.79 + ], + [ + 33.38, + 38.58 + ], + [ + 33.52, + 38.7 + ], + [ + 33.32, + 39.13 + ] + ], + [ + [ + 39.47, + 38.72 + ], + [ + 39.33, + 38.59 + ], + [ + 39.73, + 38.63 + ], + [ + 39.47, + 38.72 + ] + ], + [ + [ + 43.52, + 38.74 + ], + [ + 43.55, + 38.59 + ], + [ + 43.65, + 38.69 + ], + [ + 43.52, + 38.74 + ] + ], + [ + [ + 39.24, + 38.86 + ], + [ + 38.89, + 39 + ], + [ + 38.73, + 38.89 + ], + [ + 39.24, + 38.86 + ] + ], + [ + [ + 33.77, + 39.1 + ], + [ + 33.44, + 39.23 + ], + [ + 33.93, + 39.03 + ], + [ + 33.77, + 39.1 + ] + ], + [ + [ + 43.24, + 41 + ], + [ + 43.29, + 41.1 + ], + [ + 43.13, + 41.08 + ], + [ + 43.24, + 41 + ] + ] + ], + [ + [ + [ + 44.81, + 39.64 + ], + [ + 44.81, + 39.63 + ], + [ + 44.8, + 39.63 + ], + [ + 44.81, + 39.64 + ] + ] + ], + [ + [ + [ + 25.74, + 40.19 + ], + [ + 26.01, + 40.15 + ], + [ + 25.74, + 40.09 + ], + [ + 25.74, + 40.19 + ] + ] + ] + ] + }, + "properties": { + "A3": "TUR" + } + }, + { + "type": "Feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + 45.2, + -12.73 + ], + [ + 45.11, + -12.99 + ], + [ + 45.04, + -12.72 + ], + [ + 45.2, + -12.73 + ] + ] + ] + }, + "properties": { + "A3": "MYT" + } + }, + { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + 12.2, + -5.77 + ], + [ + 12.22, + -5.75 + ], + [ + 12.28, + -5.74 + ], + [ + 12.39, + -5.74 + ], + [ + 12.42, + -5.74 + ], + [ + 12.52, + -5.66 + ], + [ + 12.52, + -5.57 + ], + [ + 12.46, + -5.09 + ], + [ + 13.1, + -4.69 + ], + [ + 13.1, + -4.68 + ], + [ + 13.1, + -4.64 + ], + [ + 13.43, + -4.92 + ], + [ + 13.51, + -4.75 + ], + [ + 13.7, + -4.74 + ], + [ + 13.73, + -4.44 + ], + [ + 13.95, + -4.51 + ], + [ + 14.4, + -4.28 + ], + [ + 14.41, + -4.89 + ], + [ + 14.43, + -4.88 + ], + [ + 14.44, + -4.87 + ], + [ + 14.46, + -4.86 + ], + [ + 14.47, + -4.85 + ], + [ + 14.48, + -4.85 + ], + [ + 14.51, + -4.86 + ], + [ + 14.52, + -4.86 + ], + [ + 14.57, + -4.88 + ], + [ + 14.59, + -4.89 + ], + [ + 14.6, + -4.9 + ], + [ + 14.62, + -4.91 + ], + [ + 14.65, + -4.92 + ], + [ + 14.66, + -4.92 + ], + [ + 14.67, + -4.92 + ], + [ + 14.7, + -4.91 + ], + [ + 14.73, + -4.88 + ], + [ + 14.74, + -4.87 + ], + [ + 14.76, + -4.86 + ], + [ + 14.78, + -4.84 + ], + [ + 14.8, + -4.84 + ], + [ + 14.82, + -4.83 + ], + [ + 14.83, + -4.83 + ], + [ + 14.84, + -4.82 + ], + [ + 14.85, + -4.79 + ], + [ + 14.86, + -4.77 + ], + [ + 14.87, + -4.76 + ], + [ + 14.88, + -4.76 + ], + [ + 14.88, + -4.73 + ], + [ + 14.89, + -4.7 + ], + [ + 14.9, + -4.69 + ], + [ + 14.96, + -4.63 + ], + [ + 14.97, + -4.62 + ], + [ + 14.99, + -4.6 + ], + [ + 14.99, + -4.59 + ], + [ + 15, + -4.58 + ], + [ + 15.02, + -4.56 + ], + [ + 15.03, + -4.54 + ], + [ + 15.05, + -4.54 + ], + [ + 15.07, + -4.51 + ], + [ + 15.09, + -4.5 + ], + [ + 15.1, + -4.48 + ], + [ + 15.11, + -4.48 + ], + [ + 15.12, + -4.47 + ], + [ + 15.12, + -4.46 + ], + [ + 15.13, + -4.44 + ], + [ + 15.13, + -4.43 + ], + [ + 15.14, + -4.43 + ], + [ + 15.15, + -4.41 + ], + [ + 15.16, + -4.4 + ], + [ + 15.18, + -4.39 + ], + [ + 15.17, + -4.38 + ], + [ + 15.19, + -4.33 + ], + [ + 15.21, + -4.32 + ], + [ + 15.23, + -4.32 + ], + [ + 15.24, + -4.32 + ], + [ + 15.28, + -4.3 + ], + [ + 15.3, + -4.28 + ], + [ + 15.51, + -4.32 + ], + [ + 15.52, + -4.08 + ], + [ + 15.64, + -4.02 + ], + [ + 15.74, + -3.99 + ], + [ + 15.75, + -3.99 + ], + [ + 15.86, + -3.96 + ], + [ + 15.88, + -3.96 + ], + [ + 15.9, + -3.94 + ], + [ + 15.91, + -3.93 + ], + [ + 15.92, + -3.9 + ], + [ + 15.92, + -3.88 + ], + [ + 15.94, + -3.83 + ], + [ + 15.95, + -3.81 + ], + [ + 15.96, + -3.78 + ], + [ + 15.98, + -3.76 + ], + [ + 15.98, + -3.75 + ], + [ + 15.99, + -3.74 + ], + [ + 16, + -3.71 + ], + [ + 16.01, + -3.7 + ], + [ + 16.01, + -3.69 + ], + [ + 16.02, + -3.68 + ], + [ + 16.03, + -3.64 + ], + [ + 16.04, + -3.63 + ], + [ + 16.05, + -3.61 + ], + [ + 16.05, + -3.6 + ], + [ + 16.07, + -3.58 + ], + [ + 16.08, + -3.57 + ], + [ + 16.09, + -3.56 + ], + [ + 16.09, + -3.55 + ], + [ + 16.11, + -3.51 + ], + [ + 16.14, + -3.45 + ], + [ + 16.15, + -3.44 + ], + [ + 16.16, + -3.43 + ], + [ + 16.17, + -3.42 + ], + [ + 16.19, + -3.38 + ], + [ + 16.19, + -3.37 + ], + [ + 16.2, + -3.34 + ], + [ + 16.21, + -3.33 + ], + [ + 16.18, + -3.25 + ], + [ + 16.18, + -3.24 + ], + [ + 16.18, + -3.23 + ], + [ + 16.2, + -3.17 + ], + [ + 16.18, + -3.05 + ], + [ + 16.18, + -3.04 + ], + [ + 16.25, + -2.59 + ], + [ + 16.19, + -2.31 + ], + [ + 16.43, + -1.96 + ], + [ + 16.44, + -1.96 + ], + [ + 16.47, + -1.92 + ], + [ + 16.48, + -1.92 + ], + [ + 16.63, + -1.79 + ], + [ + 16.79, + -1.35 + ], + [ + 16.79, + -1.34 + ], + [ + 16.8, + -1.33 + ], + [ + 16.82, + -1.3 + ], + [ + 16.98, + -1.19 + ], + [ + 16.93, + -1.19 + ], + [ + 16.94, + -1.18 + ], + [ + 17.35, + -0.98 + ], + [ + 17.36, + -0.96 + ], + [ + 17.42, + -0.89 + ], + [ + 17.43, + -0.87 + ], + [ + 17.46, + -0.83 + ], + [ + 17.48, + -0.81 + ], + [ + 17.49, + -0.8 + ], + [ + 17.67, + -0.66 + ], + [ + 17.88, + -0.35 + ], + [ + 17.91, + -0.33 + ], + [ + 18.06, + -0.2 + ], + [ + 18.02, + -0.22 + ], + [ + 18, + -0.24 + ], + [ + 17.91, + -0.33 + ], + [ + 17.88, + -0.35 + ], + [ + 17.86, + -0.35 + ], + [ + 17.73, + -0.48 + ], + [ + 17.72, + -0.4 + ], + [ + 17.72, + -0.39 + ], + [ + 17.71, + -0.35 + ], + [ + 17.7, + -0.34 + ], + [ + 17.67, + -0.26 + ], + [ + 17.66, + -0.25 + ], + [ + 17.66, + -0.24 + ], + [ + 17.67, + -0.21 + ], + [ + 17.68, + -0.17 + ], + [ + 17.68, + -0.16 + ], + [ + 17.68, + -0.15 + ], + [ + 17.69, + -0.14 + ], + [ + 17.71, + -0.11 + ], + [ + 17.72, + -0.1 + ], + [ + 17.73, + -0.07 + ], + [ + 17.74, + -0.05 + ], + [ + 17.74, + -0.04 + ], + [ + 17.74, + -0.02 + ], + [ + 17.75, + 0 + ], + [ + 17.79, + 0.16 + ], + [ + 17.81, + 0.21 + ], + [ + 17.89, + 0.29 + ], + [ + 17.89, + 0.3 + ], + [ + 17.91, + 0.31 + ], + [ + 17.92, + 0.32 + ], + [ + 17.94, + 0.33 + ], + [ + 17.95, + 0.34 + ], + [ + 17.97, + 0.44 + ], + [ + 17.96, + 0.49 + ], + [ + 17.94, + 0.52 + ], + [ + 17.94, + 0.53 + ], + [ + 17.93, + 0.54 + ], + [ + 17.92, + 0.54 + ], + [ + 17.87, + 0.59 + ], + [ + 17.87, + 0.6 + ], + [ + 17.87, + 0.62 + ], + [ + 17.87, + 0.63 + ], + [ + 17.87, + 0.67 + ], + [ + 17.87, + 0.68 + ], + [ + 17.87, + 0.72 + ], + [ + 17.89, + 0.79 + ], + [ + 17.88, + 0.82 + ], + [ + 17.88, + 0.85 + ], + [ + 17.87, + 0.86 + ], + [ + 17.85, + 0.9 + ], + [ + 17.85, + 0.91 + ], + [ + 17.84, + 1 + ], + [ + 17.84, + 1.02 + ], + [ + 17.85, + 1.04 + ], + [ + 17.86, + 1.06 + ], + [ + 17.88, + 1.07 + ], + [ + 17.88, + 1.08 + ], + [ + 17.92, + 1.13 + ], + [ + 17.93, + 1.16 + ], + [ + 17.93, + 1.17 + ], + [ + 17.95, + 1.27 + ], + [ + 17.96, + 1.29 + ], + [ + 17.96, + 1.31 + ], + [ + 17.96, + 1.32 + ], + [ + 17.98, + 1.36 + ], + [ + 18.01, + 1.41 + ], + [ + 18.01, + 1.42 + ], + [ + 18.03, + 1.45 + ], + [ + 18.04, + 1.48 + ], + [ + 18.07, + 1.56 + ], + [ + 18.08, + 1.56 + ], + [ + 18.08, + 1.68 + ], + [ + 18.08, + 1.72 + ], + [ + 18.1, + 1.76 + ], + [ + 18.07, + 1.78 + ], + [ + 18.07, + 1.8 + ], + [ + 18.07, + 1.82 + ], + [ + 18.06, + 1.82 + ], + [ + 18.06, + 1.85 + ], + [ + 18.1, + 1.97 + ], + [ + 18.07, + 2.04 + ], + [ + 18.07, + 2.05 + ], + [ + 18.09, + 2.11 + ], + [ + 18.09, + 2.12 + ], + [ + 18.1, + 2.17 + ], + [ + 18.09, + 2.2 + ], + [ + 18.1, + 2.24 + ], + [ + 18.11, + 2.27 + ], + [ + 18.16, + 2.33 + ], + [ + 18.21, + 2.39 + ], + [ + 18.22, + 2.41 + ], + [ + 18.23, + 2.46 + ], + [ + 18.23, + 2.5 + ], + [ + 18.24, + 2.5 + ], + [ + 18.26, + 2.53 + ], + [ + 18.28, + 2.55 + ], + [ + 18.31, + 2.57 + ], + [ + 18.32, + 2.58 + ], + [ + 18.33, + 2.59 + ], + [ + 18.37, + 2.67 + ], + [ + 18.37, + 2.68 + ], + [ + 18.38, + 2.7 + ], + [ + 18.39, + 2.71 + ], + [ + 18.41, + 2.77 + ], + [ + 18.41, + 2.78 + ], + [ + 18.46, + 2.83 + ], + [ + 18.44, + 2.84 + ], + [ + 18.44, + 2.86 + ], + [ + 18.45, + 2.87 + ], + [ + 18.46, + 2.89 + ], + [ + 18.46, + 2.9 + ], + [ + 18.49, + 2.96 + ], + [ + 18.51, + 2.98 + ], + [ + 18.51, + 3 + ], + [ + 18.53, + 3.05 + ], + [ + 18.54, + 3.07 + ], + [ + 18.59, + 3.11 + ], + [ + 18.6, + 3.12 + ], + [ + 18.62, + 3.14 + ], + [ + 18.62, + 3.15 + ], + [ + 18.64, + 3.32 + ], + [ + 18.64, + 3.34 + ], + [ + 18.63, + 3.51 + ], + [ + 18.62, + 3.5 + ], + [ + 18.61, + 3.54 + ], + [ + 18.61, + 3.57 + ], + [ + 18.6, + 3.63 + ], + [ + 18.59, + 3.71 + ], + [ + 18.59, + 3.73 + ], + [ + 18.59, + 3.81 + ], + [ + 18.59, + 3.83 + ], + [ + 18.6, + 3.9 + ], + [ + 18.61, + 3.92 + ], + [ + 18.63, + 3.93 + ], + [ + 18.64, + 3.94 + ], + [ + 18.66, + 3.97 + ], + [ + 18.64, + 4.08 + ], + [ + 18.63, + 4.1 + ], + [ + 18.63, + 4.11 + ], + [ + 18.62, + 4.13 + ], + [ + 18.62, + 4.14 + ], + [ + 18.65, + 4.13 + ], + [ + 18.6, + 4.18 + ], + [ + 18.6, + 4.19 + ], + [ + 18.59, + 4.22 + ], + [ + 18.57, + 4.24 + ], + [ + 18.56, + 4.28 + ], + [ + 18.55, + 4.29 + ], + [ + 18.54, + 4.31 + ], + [ + 18.55, + 4.32 + ], + [ + 18.55, + 4.33 + ], + [ + 18.57, + 4.34 + ], + [ + 18.58, + 4.35 + ], + [ + 18.59, + 4.36 + ], + [ + 18.6, + 4.36 + ], + [ + 18.61, + 4.37 + ], + [ + 18.62, + 4.36 + ], + [ + 18.64, + 4.36 + ], + [ + 18.67, + 4.36 + ], + [ + 18.68, + 4.36 + ], + [ + 18.73, + 4.38 + ], + [ + 18.74, + 4.39 + ], + [ + 18.76, + 4.4 + ], + [ + 18.79, + 4.43 + ], + [ + 18.79, + 4.45 + ], + [ + 18.81, + 4.47 + ], + [ + 18.81, + 4.48 + ], + [ + 18.81, + 4.49 + ], + [ + 18.82, + 4.52 + ], + [ + 18.82, + 4.53 + ], + [ + 18.82, + 4.54 + ], + [ + 18.82, + 4.56 + ], + [ + 18.82, + 4.57 + ], + [ + 18.83, + 4.58 + ], + [ + 18.84, + 4.59 + ], + [ + 18.85, + 4.6 + ], + [ + 18.88, + 4.63 + ], + [ + 18.89, + 4.65 + ], + [ + 18.93, + 4.67 + ], + [ + 18.94, + 4.69 + ], + [ + 18.94, + 4.7 + ], + [ + 18.97, + 4.73 + ], + [ + 19.01, + 4.75 + ], + [ + 19.02, + 4.77 + ], + [ + 19.02, + 4.8 + ], + [ + 19.03, + 4.81 + ], + [ + 19.04, + 4.82 + ], + [ + 19.06, + 4.85 + ], + [ + 19.06, + 4.86 + ], + [ + 19.07, + 4.87 + ], + [ + 19.07, + 4.88 + ], + [ + 19.08, + 4.91 + ], + [ + 19.09, + 4.93 + ], + [ + 19.15, + 4.95 + ], + [ + 19.17, + 4.95 + ], + [ + 19.19, + 4.94 + ], + [ + 19.2, + 4.95 + ], + [ + 19.21, + 4.96 + ], + [ + 19.21, + 4.97 + ], + [ + 19.29, + 5.03 + ], + [ + 19.3, + 5.04 + ], + [ + 19.34, + 5.06 + ], + [ + 19.35, + 5.07 + ], + [ + 19.37, + 5.09 + ], + [ + 19.38, + 5.1 + ], + [ + 19.4, + 5.12 + ], + [ + 19.41, + 5.13 + ], + [ + 19.46, + 5.13 + ], + [ + 19.47, + 5.13 + ], + [ + 19.48, + 5.12 + ], + [ + 19.49, + 5.12 + ], + [ + 19.53, + 5.15 + ], + [ + 19.55, + 5.15 + ], + [ + 19.58, + 5.15 + ], + [ + 19.59, + 5.14 + ], + [ + 19.72, + 5.13 + ], + [ + 19.73, + 5.12 + ], + [ + 19.79, + 5.11 + ], + [ + 19.8, + 5.1 + ], + [ + 19.83, + 5.09 + ], + [ + 19.84, + 5.08 + ], + [ + 19.86, + 5.04 + ], + [ + 19.88, + 5.02 + ], + [ + 19.9, + 5 + ], + [ + 19.91, + 4.99 + ], + [ + 19.92, + 4.98 + ], + [ + 19.95, + 4.98 + ], + [ + 19.96, + 4.98 + ], + [ + 19.98, + 4.98 + ], + [ + 20, + 4.97 + ], + [ + 20.02, + 4.97 + ], + [ + 20.04, + 4.95 + ], + [ + 20.04, + 4.94 + ], + [ + 20.06, + 4.93 + ], + [ + 20.1, + 4.91 + ], + [ + 20.1, + 4.9 + ], + [ + 20.17, + 4.87 + ], + [ + 20.18, + 4.89 + ], + [ + 20.19, + 4.88 + ], + [ + 20.2, + 4.86 + ], + [ + 20.21, + 4.83 + ], + [ + 20.23, + 4.81 + ], + [ + 20.25, + 4.8 + ], + [ + 20.29, + 4.78 + ], + [ + 20.35, + 4.77 + ], + [ + 20.36, + 4.76 + ], + [ + 20.37, + 4.75 + ], + [ + 20.4, + 4.69 + ], + [ + 20.4, + 4.68 + ], + [ + 20.4, + 4.67 + ], + [ + 20.41, + 4.66 + ], + [ + 20.43, + 4.65 + ], + [ + 20.45, + 4.64 + ], + [ + 20.46, + 4.62 + ], + [ + 20.45, + 4.58 + ], + [ + 20.45, + 4.57 + ], + [ + 20.47, + 4.52 + ], + [ + 20.49, + 4.5 + ], + [ + 20.53, + 4.45 + ], + [ + 20.54, + 4.44 + ], + [ + 20.55, + 4.43 + ], + [ + 20.57, + 4.42 + ], + [ + 20.58, + 4.41 + ], + [ + 20.8, + 4.42 + ], + [ + 20.81, + 4.43 + ], + [ + 21.05, + 4.41 + ], + [ + 21.06, + 4.41 + ], + [ + 21.09, + 4.39 + ], + [ + 21.09, + 4.38 + ], + [ + 21.1, + 4.37 + ], + [ + 21.1, + 4.36 + ], + [ + 21.11, + 4.35 + ], + [ + 21.13, + 4.33 + ], + [ + 21.15, + 4.33 + ], + [ + 21.16, + 4.32 + ], + [ + 21.16, + 4.31 + ], + [ + 21.22, + 4.29 + ], + [ + 21.23, + 4.29 + ], + [ + 21.23, + 4.3 + ], + [ + 21.24, + 4.32 + ], + [ + 21.25, + 4.34 + ], + [ + 21.26, + 4.34 + ], + [ + 21.27, + 4.34 + ], + [ + 21.28, + 4.34 + ], + [ + 21.3, + 4.34 + ], + [ + 21.31, + 4.32 + ], + [ + 21.39, + 4.28 + ], + [ + 21.4, + 4.28 + ], + [ + 21.41, + 4.29 + ], + [ + 21.44, + 4.29 + ], + [ + 21.45, + 4.29 + ], + [ + 21.48, + 4.27 + ], + [ + 21.56, + 4.25 + ], + [ + 21.56, + 4.26 + ], + [ + 21.58, + 4.27 + ], + [ + 21.6, + 4.28 + ], + [ + 21.62, + 4.29 + ], + [ + 21.63, + 4.3 + ], + [ + 21.68, + 4.3 + ], + [ + 21.74, + 4.31 + ], + [ + 21.77, + 4.29 + ], + [ + 21.83, + 4.27 + ], + [ + 21.85, + 4.25 + ], + [ + 21.87, + 4.25 + ], + [ + 21.88, + 4.25 + ], + [ + 21.98, + 4.24 + ], + [ + 22.02, + 4.23 + ], + [ + 22.04, + 4.22 + ], + [ + 22.44, + 4.13 + ], + [ + 22.46, + 4.15 + ], + [ + 22.49, + 4.16 + ], + [ + 22.5, + 4.17 + ], + [ + 22.51, + 4.18 + ], + [ + 22.51, + 4.19 + ], + [ + 22.52, + 4.2 + ], + [ + 22.54, + 4.21 + ], + [ + 22.55, + 4.22 + ], + [ + 22.55, + 4.24 + ], + [ + 22.54, + 4.27 + ], + [ + 22.55, + 4.3 + ], + [ + 22.56, + 4.31 + ], + [ + 22.56, + 4.33 + ], + [ + 22.57, + 4.33 + ], + [ + 22.6, + 4.36 + ], + [ + 22.61, + 4.37 + ], + [ + 22.61, + 4.38 + ], + [ + 22.59, + 4.39 + ], + [ + 22.6, + 4.39 + ], + [ + 22.59, + 4.39 + ], + [ + 22.58, + 4.39 + ], + [ + 22.59, + 4.42 + ], + [ + 22.6, + 4.44 + ], + [ + 22.59, + 4.47 + ], + [ + 22.59, + 4.48 + ], + [ + 22.66, + 4.48 + ], + [ + 22.68, + 4.47 + ], + [ + 22.69, + 4.47 + ], + [ + 22.7, + 4.52 + ], + [ + 22.71, + 4.54 + ], + [ + 22.73, + 4.56 + ], + [ + 22.73, + 4.57 + ], + [ + 22.73, + 4.59 + ], + [ + 22.73, + 4.63 + ], + [ + 22.74, + 4.63 + ], + [ + 22.76, + 4.67 + ], + [ + 22.77, + 4.68 + ], + [ + 22.78, + 4.71 + ], + [ + 22.79, + 4.72 + ], + [ + 22.82, + 4.72 + ], + [ + 22.83, + 4.72 + ], + [ + 22.84, + 4.7 + ], + [ + 22.85, + 4.7 + ], + [ + 22.86, + 4.72 + ], + [ + 22.87, + 4.72 + ], + [ + 22.87, + 4.73 + ], + [ + 22.87, + 4.74 + ], + [ + 22.9, + 4.75 + ], + [ + 22.89, + 4.77 + ], + [ + 22.89, + 4.8 + ], + [ + 22.9, + 4.81 + ], + [ + 22.98, + 4.83 + ], + [ + 22.99, + 4.81 + ], + [ + 23, + 4.79 + ], + [ + 23, + 4.78 + ], + [ + 23, + 4.77 + ], + [ + 23.01, + 4.76 + ], + [ + 23.04, + 4.75 + ], + [ + 23.06, + 4.74 + ], + [ + 23.09, + 4.72 + ], + [ + 23.11, + 4.71 + ], + [ + 23.12, + 4.72 + ], + [ + 23.14, + 4.73 + ], + [ + 23.17, + 4.74 + ], + [ + 23.2, + 4.72 + ], + [ + 23.22, + 4.69 + ], + [ + 23.23, + 4.68 + ], + [ + 23.24, + 4.67 + ], + [ + 23.25, + 4.68 + ], + [ + 23.27, + 4.66 + ], + [ + 23.27, + 4.65 + ], + [ + 23.27, + 4.64 + ], + [ + 23.3, + 4.63 + ], + [ + 23.33, + 4.61 + ], + [ + 23.35, + 4.61 + ], + [ + 23.37, + 4.59 + ], + [ + 23.39, + 4.59 + ], + [ + 23.4, + 4.59 + ], + [ + 23.41, + 4.59 + ], + [ + 23.43, + 4.6 + ], + [ + 23.43, + 4.62 + ], + [ + 23.43, + 4.63 + ], + [ + 23.43, + 4.64 + ], + [ + 23.44, + 4.66 + ], + [ + 23.45, + 4.67 + ], + [ + 23.48, + 4.68 + ], + [ + 23.49, + 4.68 + ], + [ + 23.5, + 4.68 + ], + [ + 23.53, + 4.7 + ], + [ + 23.55, + 4.72 + ], + [ + 23.56, + 4.72 + ], + [ + 23.59, + 4.76 + ], + [ + 23.62, + 4.76 + ], + [ + 23.63, + 4.76 + ], + [ + 23.66, + 4.77 + ], + [ + 23.67, + 4.76 + ], + [ + 23.7, + 4.78 + ], + [ + 23.71, + 4.79 + ], + [ + 23.74, + 4.79 + ], + [ + 23.76, + 4.78 + ], + [ + 23.78, + 4.79 + ], + [ + 23.81, + 4.82 + ], + [ + 23.84, + 4.83 + ], + [ + 23.86, + 4.81 + ], + [ + 23.87, + 4.82 + ], + [ + 23.89, + 4.83 + ], + [ + 23.91, + 4.83 + ], + [ + 23.95, + 4.81 + ], + [ + 23.96, + 4.81 + ], + [ + 23.96, + 4.84 + ], + [ + 23.96, + 4.85 + ], + [ + 23.97, + 4.87 + ], + [ + 23.98, + 4.88 + ], + [ + 24, + 4.87 + ], + [ + 24.02, + 4.86 + ], + [ + 24.04, + 4.87 + ], + [ + 24.05, + 4.89 + ], + [ + 24.07, + 4.89 + ], + [ + 24.1, + 4.91 + ], + [ + 24.11, + 4.92 + ], + [ + 24.14, + 4.89 + ], + [ + 24.15, + 4.89 + ], + [ + 24.17, + 4.91 + ], + [ + 24.17, + 4.92 + ], + [ + 24.19, + 4.94 + ], + [ + 24.21, + 4.95 + ], + [ + 24.22, + 4.95 + ], + [ + 24.24, + 4.96 + ], + [ + 24.25, + 4.93 + ], + [ + 24.26, + 4.93 + ], + [ + 24.27, + 4.96 + ], + [ + 24.3, + 5 + ], + [ + 24.38, + 5.11 + ], + [ + 24.72, + 4.89 + ], + [ + 25.09, + 4.98 + ], + [ + 25.18, + 5 + ], + [ + 25.27, + 5.02 + ], + [ + 25.27, + 5.03 + ], + [ + 25.33, + 5.09 + ], + [ + 25.31, + 5.18 + ], + [ + 25.33, + 5.24 + ], + [ + 25.34, + 5.26 + ], + [ + 25.34, + 5.27 + ], + [ + 25.35, + 5.28 + ], + [ + 25.36, + 5.28 + ], + [ + 25.4, + 5.33 + ], + [ + 25.66, + 5.31 + ], + [ + 25.67, + 5.31 + ], + [ + 25.9, + 5.17 + ], + [ + 26.16, + 5.26 + ], + [ + 26.5, + 5.05 + ], + [ + 26.87, + 5.04 + ], + [ + 27.13, + 5.21 + ], + [ + 27.44, + 5.02 + ], + [ + 27.77, + 4.79 + ], + [ + 27.79, + 4.61 + ], + [ + 28.38, + 4.29 + ], + [ + 28.78, + 4.56 + ], + [ + 29.22, + 4.34 + ], + [ + 29.49, + 4.69 + ], + [ + 29.66, + 4.65 + ], + [ + 30.21, + 3.94 + ], + [ + 30.55, + 3.84 + ], + [ + 30.56, + 3.62 + ], + [ + 30.78, + 3.68 + ], + [ + 30.85, + 3.5 + ], + [ + 30.85, + 3.49 + ], + [ + 30.87, + 3.48 + ], + [ + 30.94, + 3.51 + ], + [ + 30.94, + 3.4 + ], + [ + 30.77, + 3.05 + ], + [ + 30.89, + 2.86 + ], + [ + 30.74, + 2.45 + ], + [ + 31.28, + 2.18 + ], + [ + 30.52, + 1.54 + ], + [ + 30.36, + 1.27 + ], + [ + 30.47, + 1.21 + ], + [ + 30.35, + 1.19 + ], + [ + 30.28, + 1.16 + ], + [ + 30.26, + 1.15 + ], + [ + 30.25, + 1.14 + ], + [ + 30.23, + 1.13 + ], + [ + 30.24, + 1.12 + ], + [ + 30.23, + 1.06 + ], + [ + 30.23, + 1.05 + ], + [ + 30.23, + 1.01 + ], + [ + 30.22, + 0.99 + ], + [ + 30.21, + 0.99 + ], + [ + 30.21, + 0.98 + ], + [ + 30.2, + 0.97 + ], + [ + 30.19, + 0.97 + ], + [ + 30.19, + 0.96 + ], + [ + 30.17, + 0.93 + ], + [ + 30.17, + 0.92 + ], + [ + 30.15, + 0.89 + ], + [ + 30.14, + 0.89 + ], + [ + 30.08, + 0.88 + ], + [ + 30.02, + 0.86 + ], + [ + 30.01, + 0.86 + ], + [ + 30.01, + 0.85 + ], + [ + 29.88, + 0.4 + ], + [ + 29.88, + 0.39 + ], + [ + 29.73, + -0.08 + ], + [ + 29.49, + -0.19 + ], + [ + 29.3, + -0.57 + ], + [ + 29.53, + -0.64 + ], + [ + 29.69, + -0.45 + ], + [ + 29.59, + -1.39 + ], + [ + 29.24, + -1.7 + ], + [ + 29.11, + -1.63 + ], + [ + 28.88, + -2.05 + ], + [ + 28.97, + -2.02 + ], + [ + 28.85, + -2.15 + ], + [ + 28.99, + -2.32 + ], + [ + 28.99, + -2.33 + ], + [ + 28.93, + -2.37 + ], + [ + 28.92, + -2.37 + ], + [ + 28.89, + -2.47 + ], + [ + 28.89, + -2.5 + ], + [ + 28.89, + -2.51 + ], + [ + 28.87, + -2.54 + ], + [ + 28.9, + -2.65 + ], + [ + 28.9, + -2.66 + ], + [ + 28.91, + -2.68 + ], + [ + 28.92, + -2.68 + ], + [ + 28.96, + -2.69 + ], + [ + 29.02, + -2.72 + ], + [ + 29.04, + -2.74 + ], + [ + 29, + -2.81 + ], + [ + 29.07, + -2.85 + ], + [ + 29.07, + -2.86 + ], + [ + 29.09, + -2.87 + ], + [ + 29.09, + -2.88 + ], + [ + 29.11, + -2.93 + ], + [ + 29.13, + -2.94 + ], + [ + 29.14, + -2.94 + ], + [ + 29.25, + -3.1 + ], + [ + 29.23, + -3.16 + ], + [ + 29.22, + -3.18 + ], + [ + 29.22, + -3.19 + ], + [ + 29.23, + -3.23 + ], + [ + 29.24, + -3.27 + ], + [ + 29.21, + -3.36 + ], + [ + 29.06, + -4.3 + ], + [ + 29.17, + -4.34 + ], + [ + 29.22, + -4.04 + ], + [ + 29.27, + -4.15 + ], + [ + 29.1, + -5.07 + ], + [ + 29.42, + -5.62 + ], + [ + 29.21, + -6.1 + ], + [ + 29.71, + -7 + ], + [ + 30.15, + -7.28 + ], + [ + 30.26, + -7.8 + ], + [ + 30.57, + -8.1 + ], + [ + 30.56, + -8.3 + ], + [ + 28.92, + -8.48 + ], + [ + 28.91, + -8.48 + ], + [ + 28.9, + -8.48 + ], + [ + 28.43, + -9.02 + ], + [ + 28.34, + -9.49 + ], + [ + 28.57, + -9.52 + ], + [ + 28.68, + -9.81 + ], + [ + 28.67, + -9.84 + ], + [ + 28.63, + -9.98 + ], + [ + 28.62, + -9.99 + ], + [ + 28.64, + -10.03 + ], + [ + 28.64, + -10.04 + ], + [ + 28.63, + -10.07 + ], + [ + 28.63, + -10.08 + ], + [ + 28.63, + -10.09 + ], + [ + 28.63, + -10.11 + ], + [ + 28.63, + -10.13 + ], + [ + 28.62, + -10.15 + ], + [ + 28.63, + -10.16 + ], + [ + 28.61, + -10.16 + ], + [ + 28.61, + -10.17 + ], + [ + 28.61, + -10.18 + ], + [ + 28.58, + -10.23 + ], + [ + 28.62, + -10.36 + ], + [ + 28.62, + -10.37 + ], + [ + 28.62, + -10.38 + ], + [ + 28.62, + -10.39 + ], + [ + 28.63, + -10.4 + ], + [ + 28.64, + -10.42 + ], + [ + 28.64, + -10.43 + ], + [ + 28.65, + -10.44 + ], + [ + 28.65, + -10.45 + ], + [ + 28.63, + -10.47 + ], + [ + 28.63, + -10.48 + ], + [ + 28.64, + -10.51 + ], + [ + 28.63, + -10.51 + ], + [ + 28.66, + -10.55 + ], + [ + 28.67, + -10.57 + ], + [ + 28.48, + -11.2 + ], + [ + 28.48, + -11.21 + ], + [ + 28.48, + -11.22 + ], + [ + 28.48, + -11.23 + ], + [ + 28.48, + -11.26 + ], + [ + 28.47, + -11.27 + ], + [ + 28.46, + -11.3 + ], + [ + 28.45, + -11.33 + ], + [ + 28.46, + -11.35 + ], + [ + 28.46, + -11.36 + ], + [ + 28.45, + -11.37 + ], + [ + 28.43, + -11.39 + ], + [ + 28.43, + -11.41 + ], + [ + 28.43, + -11.42 + ], + [ + 28.42, + -11.46 + ], + [ + 28.41, + -11.46 + ], + [ + 28.39, + -11.51 + ], + [ + 28.39, + -11.53 + ], + [ + 28.39, + -11.56 + ], + [ + 28.38, + -11.57 + ], + [ + 28.39, + -11.58 + ], + [ + 28.39, + -11.59 + ], + [ + 28.4, + -11.61 + ], + [ + 28.41, + -11.62 + ], + [ + 28.42, + -11.63 + ], + [ + 28.43, + -11.64 + ], + [ + 28.43, + -11.66 + ], + [ + 28.43, + -11.69 + ], + [ + 28.44, + -11.7 + ], + [ + 28.43, + -11.73 + ], + [ + 28.44, + -11.74 + ], + [ + 28.45, + -11.77 + ], + [ + 28.44, + -11.79 + ], + [ + 28.44, + -11.8 + ], + [ + 28.44, + -11.81 + ], + [ + 28.47, + -11.83 + ], + [ + 28.48, + -11.83 + ], + [ + 28.49, + -11.86 + ], + [ + 28.49, + -11.87 + ], + [ + 28.52, + -11.88 + ], + [ + 28.54, + -11.89 + ], + [ + 28.55, + -11.9 + ], + [ + 28.58, + -11.91 + ], + [ + 28.59, + -11.91 + ], + [ + 28.63, + -11.93 + ], + [ + 28.63, + -11.94 + ], + [ + 28.64, + -11.95 + ], + [ + 28.67, + -11.97 + ], + [ + 28.69, + -11.97 + ], + [ + 28.7, + -11.98 + ], + [ + 28.74, + -11.98 + ], + [ + 28.76, + -12 + ], + [ + 28.77, + -12.04 + ], + [ + 28.8, + -12.06 + ], + [ + 28.84, + -12.12 + ], + [ + 28.85, + -12.13 + ], + [ + 28.87, + -12.15 + ], + [ + 28.88, + -12.15 + ], + [ + 28.91, + -12.17 + ], + [ + 28.92, + -12.17 + ], + [ + 28.93, + -12.19 + ], + [ + 28.95, + -12.21 + ], + [ + 28.96, + -12.23 + ], + [ + 28.97, + -12.24 + ], + [ + 29.01, + -12.29 + ], + [ + 29.01, + -12.3 + ], + [ + 29.01, + -12.31 + ], + [ + 29.01, + -12.32 + ], + [ + 29.02, + -12.34 + ], + [ + 29.03, + -12.35 + ], + [ + 29.03, + -12.36 + ], + [ + 29.04, + -12.38 + ], + [ + 29.06, + -12.39 + ], + [ + 29.07, + -12.39 + ], + [ + 29.09, + -12.38 + ], + [ + 29.1, + -12.38 + ], + [ + 29.12, + -12.39 + ], + [ + 29.12, + -12.4 + ], + [ + 29.13, + -12.39 + ], + [ + 29.14, + -12.38 + ], + [ + 29.16, + -12.38 + ], + [ + 29.2, + -12.38 + ], + [ + 29.22, + -12.38 + ], + [ + 29.23, + -12.38 + ], + [ + 29.25, + -12.38 + ], + [ + 29.27, + -12.36 + ], + [ + 29.28, + -12.37 + ], + [ + 29.31, + -12.4 + ], + [ + 29.33, + -12.42 + ], + [ + 29.39, + -12.42 + ], + [ + 29.41, + -12.44 + ], + [ + 29.43, + -12.45 + ], + [ + 29.44, + -12.45 + ], + [ + 29.46, + -12.45 + ], + [ + 29.47, + -12.45 + ], + [ + 29.52, + -12.43 + ], + [ + 29.53, + -12.42 + ], + [ + 29.48, + -12.39 + ], + [ + 29.48, + -12.38 + ], + [ + 29.47, + -12.36 + ], + [ + 29.46, + -12.34 + ], + [ + 29.46, + -12.3 + ], + [ + 29.47, + -12.3 + ], + [ + 29.51, + -12.23 + ], + [ + 29.52, + -12.23 + ], + [ + 29.53, + -12.23 + ], + [ + 29.81, + -12.15 + ], + [ + 29.81, + -13.44 + ], + [ + 29.64, + -13.43 + ], + [ + 29.59, + -13.2 + ], + [ + 29.01, + -13.42 + ], + [ + 28.78, + -12.94 + ], + [ + 28.46, + -12.73 + ], + [ + 28.45, + -12.52 + ], + [ + 27.96, + -12.36 + ], + [ + 27.93, + -12.24 + ], + [ + 27.62, + -12.27 + ], + [ + 27.46, + -11.93 + ], + [ + 27.23, + -11.79 + ], + [ + 27.21, + -11.56 + ], + [ + 27.02, + -11.61 + ], + [ + 26.88, + -11.98 + ], + [ + 25.98, + -11.95 + ], + [ + 25.33, + -11.63 + ], + [ + 25.35, + -11.2 + ], + [ + 24.44, + -11.47 + ], + [ + 24.28, + -11.39 + ], + [ + 24.38, + -11.09 + ], + [ + 24, + -10.89 + ], + [ + 23.86, + -11.04 + ], + [ + 23.48, + -10.94 + ], + [ + 23.2, + -11.11 + ], + [ + 22.51, + -11.04 + ], + [ + 22.25, + -11.26 + ], + [ + 22.17, + -10.87 + ], + [ + 22.33, + -10.76 + ], + [ + 22.33, + -10.39 + ], + [ + 22.19, + -9.92 + ], + [ + 22.01, + -9.82 + ], + [ + 22.02, + -9.81 + ], + [ + 22.01, + -9.8 + ], + [ + 22, + -9.77 + ], + [ + 21.99, + -9.75 + ], + [ + 21.98, + -9.75 + ], + [ + 21.97, + -9.75 + ], + [ + 21.97, + -9.73 + ], + [ + 21.95, + -9.71 + ], + [ + 21.93, + -9.68 + ], + [ + 21.91, + -9.67 + ], + [ + 21.9, + -9.67 + ], + [ + 21.87, + -9.6 + ], + [ + 21.86, + -9.58 + ], + [ + 21.87, + -9.58 + ], + [ + 21.86, + -9.56 + ], + [ + 21.86, + -9.55 + ], + [ + 21.84, + -9.51 + ], + [ + 21.82, + -9.45 + ], + [ + 21.8, + -9.43 + ], + [ + 21.8, + -9.42 + ], + [ + 21.83, + -9.3 + ], + [ + 21.84, + -9.26 + ], + [ + 21.84, + -9.25 + ], + [ + 21.86, + -9.23 + ], + [ + 21.86, + -9.17 + ], + [ + 21.85, + -9.15 + ], + [ + 21.84, + -9.14 + ], + [ + 21.84, + -9.1 + ], + [ + 21.84, + -9.06 + ], + [ + 21.85, + -9.06 + ], + [ + 21.85, + -8.99 + ], + [ + 21.86, + -8.93 + ], + [ + 21.86, + -8.89 + ], + [ + 21.87, + -8.87 + ], + [ + 21.86, + -8.86 + ], + [ + 21.89, + -8.8 + ], + [ + 21.89, + -8.71 + ], + [ + 21.9, + -8.69 + ], + [ + 21.91, + -8.67 + ], + [ + 21.91, + -8.63 + ], + [ + 21.91, + -8.62 + ], + [ + 21.92, + -8.61 + ], + [ + 21.93, + -8.6 + ], + [ + 21.93, + -8.57 + ], + [ + 21.94, + -8.56 + ], + [ + 21.94, + -8.54 + ], + [ + 21.95, + -8.5 + ], + [ + 21.95, + -8.49 + ], + [ + 21.94, + -8.47 + ], + [ + 21.93, + -8.41 + ], + [ + 21.93, + -8.4 + ], + [ + 21.92, + -8.39 + ], + [ + 21.92, + -8.38 + ], + [ + 21.93, + -8.34 + ], + [ + 21.93, + -8.32 + ], + [ + 21.91, + -8.3 + ], + [ + 21.9, + -8.3 + ], + [ + 21.89, + -8.28 + ], + [ + 21.89, + -8.27 + ], + [ + 21.89, + -8.25 + ], + [ + 21.88, + -8.23 + ], + [ + 21.88, + -8.21 + ], + [ + 21.87, + -8.19 + ], + [ + 21.88, + -8.18 + ], + [ + 21.86, + -8.15 + ], + [ + 21.85, + -8.15 + ], + [ + 21.84, + -8.12 + ], + [ + 21.84, + -8.1 + ], + [ + 21.83, + -8.1 + ], + [ + 21.83, + -8.08 + ], + [ + 21.81, + -8.06 + ], + [ + 21.79, + -8.04 + ], + [ + 21.79, + -8.03 + ], + [ + 21.78, + -8.02 + ], + [ + 21.78, + -8.01 + ], + [ + 21.77, + -8.01 + ], + [ + 21.77, + -7.97 + ], + [ + 21.76, + -7.95 + ], + [ + 21.75, + -7.93 + ], + [ + 21.76, + -7.93 + ], + [ + 21.78, + -7.91 + ], + [ + 21.77, + -7.9 + ], + [ + 21.78, + -7.89 + ], + [ + 21.78, + -7.88 + ], + [ + 21.77, + -7.85 + ], + [ + 21.77, + -7.84 + ], + [ + 21.78, + -7.82 + ], + [ + 21.78, + -7.81 + ], + [ + 21.78, + -7.8 + ], + [ + 21.78, + -7.79 + ], + [ + 21.79, + -7.76 + ], + [ + 21.79, + -7.75 + ], + [ + 21.8, + -7.73 + ], + [ + 21.81, + -7.69 + ], + [ + 21.82, + -7.67 + ], + [ + 21.81, + -7.67 + ], + [ + 21.83, + -7.65 + ], + [ + 21.84, + -7.62 + ], + [ + 21.85, + -7.58 + ], + [ + 21.86, + -7.56 + ], + [ + 21.86, + -7.55 + ], + [ + 21.85, + -7.54 + ], + [ + 21.84, + -7.53 + ], + [ + 21.84, + -7.51 + ], + [ + 21.86, + -7.48 + ], + [ + 21.86, + -7.47 + ], + [ + 21.86, + -7.45 + ], + [ + 21.86, + -7.44 + ], + [ + 21.85, + -7.42 + ], + [ + 21.84, + -7.42 + ], + [ + 21.84, + -7.39 + ], + [ + 21.84, + -7.38 + ], + [ + 21.8, + -7.32 + ], + [ + 21.79, + -7.31 + ], + [ + 20.55, + -7.23 + ], + [ + 20.56, + -7.17 + ], + [ + 20.55, + -7.15 + ], + [ + 20.55, + -7.14 + ], + [ + 20.56, + -7.12 + ], + [ + 20.58, + -7.08 + ], + [ + 20.59, + -7.06 + ], + [ + 20.59, + -7.04 + ], + [ + 20.61, + -7.01 + ], + [ + 20.61, + -6.99 + ], + [ + 20.62, + -6.92 + ], + [ + 20.43, + -6.92 + ], + [ + 20.33, + -6.92 + ], + [ + 20.29, + -7 + ], + [ + 20.18, + -7 + ], + [ + 20.13, + -7 + ], + [ + 19.97, + -7 + ], + [ + 19.55, + -7 + ], + [ + 19.38, + -8 + ], + [ + 18.53, + -7.92 + ], + [ + 18.1, + -8.1 + ], + [ + 17.53, + -8.1 + ], + [ + 17.51, + -8.08 + ], + [ + 17.51, + -8.06 + ], + [ + 17.53, + -8.05 + ], + [ + 17.53, + -8.04 + ], + [ + 17.52, + -8.02 + ], + [ + 17.51, + -8.02 + ], + [ + 17.51, + -8.01 + ], + [ + 17.49, + -8 + ], + [ + 17.48, + -7.97 + ], + [ + 17.48, + -7.95 + ], + [ + 17.47, + -7.94 + ], + [ + 17.46, + -7.94 + ], + [ + 17.45, + -7.94 + ], + [ + 17.45, + -7.93 + ], + [ + 17.44, + -7.92 + ], + [ + 17.45, + -7.89 + ], + [ + 17.45, + -7.88 + ], + [ + 17.43, + -7.87 + ], + [ + 17.42, + -7.86 + ], + [ + 17.43, + -7.84 + ], + [ + 17.41, + -7.83 + ], + [ + 17.39, + -7.84 + ], + [ + 17.4, + -7.82 + ], + [ + 17.38, + -7.82 + ], + [ + 17.38, + -7.8 + ], + [ + 17.38, + -7.79 + ], + [ + 17.36, + -7.78 + ], + [ + 17.35, + -7.78 + ], + [ + 17.33, + -7.78 + ], + [ + 17.32, + -7.76 + ], + [ + 17.32, + -7.75 + ], + [ + 17.33, + -7.73 + ], + [ + 17.33, + -7.72 + ], + [ + 17.31, + -7.7 + ], + [ + 17.3, + -7.69 + ], + [ + 17.3, + -7.67 + ], + [ + 17.3, + -7.63 + ], + [ + 17.3, + -7.62 + ], + [ + 17.29, + -7.62 + ], + [ + 17.28, + -7.62 + ], + [ + 17.26, + -7.6 + ], + [ + 17.25, + -7.6 + ], + [ + 17.23, + -7.59 + ], + [ + 17.22, + -7.58 + ], + [ + 17.21, + -7.56 + ], + [ + 17.21, + -7.55 + ], + [ + 17.2, + -7.52 + ], + [ + 17.2, + -7.51 + ], + [ + 17.19, + -7.49 + ], + [ + 17.18, + -7.49 + ], + [ + 17.17, + -7.49 + ], + [ + 17.16, + -7.48 + ], + [ + 17.15, + -7.46 + ], + [ + 17.17, + -7.45 + ], + [ + 17.18, + -7.43 + ], + [ + 17.17, + -7.42 + ], + [ + 17.16, + -7.42 + ], + [ + 17.14, + -7.41 + ], + [ + 17.14, + -7.4 + ], + [ + 17.12, + -7.43 + ], + [ + 17.11, + -7.42 + ], + [ + 17.1, + -7.35 + ], + [ + 17.09, + -7.34 + ], + [ + 17.08, + -7.34 + ], + [ + 17.07, + -7.34 + ], + [ + 17.06, + -7.33 + ], + [ + 17.04, + -7.32 + ], + [ + 17.03, + -7.31 + ], + [ + 17.02, + -7.29 + ], + [ + 17.01, + -7.3 + ], + [ + 17, + -7.3 + ], + [ + 16.98, + -7.29 + ], + [ + 16.98, + -7.28 + ], + [ + 16.98, + -7.27 + ], + [ + 16.96, + -7.25 + ], + [ + 16.95, + -7.25 + ], + [ + 16.94, + -7.23 + ], + [ + 16.96, + -7.21 + ], + [ + 16.94, + -7.19 + ], + [ + 16.94, + -7.18 + ], + [ + 16.93, + -7.15 + ], + [ + 16.93, + -7.14 + ], + [ + 16.92, + -7.11 + ], + [ + 16.92, + -7.1 + ], + [ + 16.94, + -7.12 + ], + [ + 16.96, + -7.11 + ], + [ + 16.96, + -7.1 + ], + [ + 16.97, + -7.06 + ], + [ + 16.94, + -7.04 + ], + [ + 16.93, + -7.02 + ], + [ + 16.92, + -7.02 + ], + [ + 16.9, + -7 + ], + [ + 16.9, + -6.99 + ], + [ + 16.91, + -6.97 + ], + [ + 16.9, + -6.95 + ], + [ + 16.9, + -6.94 + ], + [ + 16.88, + -6.88 + ], + [ + 16.89, + -6.88 + ], + [ + 16.87, + -6.88 + ], + [ + 16.86, + -6.88 + ], + [ + 16.85, + -6.89 + ], + [ + 16.84, + -6.86 + ], + [ + 16.84, + -6.83 + ], + [ + 16.82, + -6.82 + ], + [ + 16.81, + -6.8 + ], + [ + 16.81, + -6.79 + ], + [ + 16.8, + -6.77 + ], + [ + 16.8, + -6.75 + ], + [ + 16.79, + -6.72 + ], + [ + 16.78, + -6.72 + ], + [ + 16.76, + -6.71 + ], + [ + 16.76, + -6.7 + ], + [ + 16.76, + -6.67 + ], + [ + 16.76, + -6.66 + ], + [ + 16.76, + -6.62 + ], + [ + 16.74, + -6.59 + ], + [ + 16.74, + -6.56 + ], + [ + 16.75, + -6.54 + ], + [ + 16.75, + -6.53 + ], + [ + 16.75, + -6.52 + ], + [ + 16.73, + -6.5 + ], + [ + 16.72, + -6.49 + ], + [ + 16.72, + -6.47 + ], + [ + 16.72, + -6.46 + ], + [ + 16.72, + -6.45 + ], + [ + 16.71, + -6.44 + ], + [ + 16.7, + -6.43 + ], + [ + 16.7, + -6.42 + ], + [ + 16.72, + -6.41 + ], + [ + 16.7, + -6.39 + ], + [ + 16.68, + -6.34 + ], + [ + 16.7, + -6.33 + ], + [ + 16.71, + -6.34 + ], + [ + 16.72, + -6.32 + ], + [ + 16.72, + -6.3 + ], + [ + 16.71, + -6.29 + ], + [ + 16.71, + -6.27 + ], + [ + 16.7, + -6.27 + ], + [ + 16.71, + -6.23 + ], + [ + 16.71, + -6.22 + ], + [ + 16.72, + -6.19 + ], + [ + 16.73, + -6.18 + ], + [ + 16.72, + -6.16 + ], + [ + 16.7, + -6.12 + ], + [ + 16.69, + -6.12 + ], + [ + 16.66, + -6.09 + ], + [ + 16.64, + -6.1 + ], + [ + 16.64, + -6.09 + ], + [ + 16.61, + -6.05 + ], + [ + 16.62, + -6.05 + ], + [ + 16.61, + -6.03 + ], + [ + 16.6, + -6.03 + ], + [ + 16.59, + -6.02 + ], + [ + 16.59, + -5.97 + ], + [ + 16.6, + -5.94 + ], + [ + 16.58, + -5.95 + ], + [ + 16.58, + -5.92 + ], + [ + 16.58, + -5.9 + ], + [ + 16.57, + -5.87 + ], + [ + 16.53, + -5.86 + ], + [ + 16.52, + -5.86 + ], + [ + 16.47, + -5.85 + ], + [ + 16.46, + -5.85 + ], + [ + 16.45, + -5.86 + ], + [ + 15.02, + -5.87 + ], + [ + 14.98, + -5.87 + ], + [ + 13.43, + -5.86 + ], + [ + 13.41, + -5.87 + ], + [ + 13.29, + -5.88 + ], + [ + 13.25, + -5.87 + ], + [ + 13.24, + -5.87 + ], + [ + 13.21, + -5.87 + ], + [ + 13.19, + -5.87 + ], + [ + 13.18, + -5.87 + ], + [ + 13.14, + -5.89 + ], + [ + 13.13, + -5.9 + ], + [ + 13.1, + -5.89 + ], + [ + 12.4, + -6.03 + ], + [ + 12.2, + -5.77 + ] + ], + [ + [ + 26.31, + -8.49 + ], + [ + 26.35, + -8.78 + ], + [ + 26.56, + -8.54 + ], + [ + 26.31, + -8.49 + ] + ], + [ + [ + 26.48, + -8.18 + ], + [ + 26.34, + -8.32 + ], + [ + 26.59, + -8.38 + ], + [ + 26.48, + -8.18 + ] + ], + [ + [ + 26.98, + -10.82 + ], + [ + 27.03, + -11.02 + ], + [ + 27.16, + -10.85 + ], + [ + 26.98, + -10.82 + ] + ], + [ + [ + 18.18, + -1.58 + ], + [ + 18.22, + -1.67 + ], + [ + 18.11, + -1.61 + ], + [ + 18.04, + -1.76 + ], + [ + 18.3, + -2.11 + ], + [ + 18.26, + -2.67 + ], + [ + 18.43, + -2.24 + ], + [ + 18.59, + -2.2 + ], + [ + 18.41, + -2.14 + ], + [ + 18.45, + -1.93 + ], + [ + 18.27, + -1.98 + ], + [ + 18.51, + -1.58 + ], + [ + 18.18, + -1.58 + ] + ], + [ + [ + 28.52, + -9.45 + ], + [ + 28.53, + -9.47 + ], + [ + 28.54, + -9.48 + ], + [ + 28.57, + -9.51 + ], + [ + 28.52, + -9.45 + ] + ], + [ + [ + 25.93, + -9.02 + ], + [ + 26.04, + -8.88 + ], + [ + 25.93, + -8.86 + ], + [ + 25.93, + -9.02 + ] + ], + [ + [ + 25.71, + -10.63 + ], + [ + 25.63, + -10.7 + ], + [ + 25.75, + -10.77 + ], + [ + 25.71, + -10.63 + ] + ], + [ + [ + 17.96, + -0.62 + ], + [ + 17.83, + -0.7 + ], + [ + 18.19, + -1.01 + ], + [ + 18.14, + -0.66 + ], + [ + 17.96, + -0.62 + ] + ], + [ + [ + 18.26, + 0.29 + ], + [ + 18.22, + 0.01 + ], + [ + 18.17, + 0 + ], + [ + 18.17, + -0.01 + ], + [ + 18.02, + -0.14 + ], + [ + 18.22, + 0.01 + ], + [ + 18.31, + 0.42 + ], + [ + 18.26, + 0.29 + ] + ], + [ + [ + 18.57, + 1.12 + ], + [ + 18.81, + 1.35 + ], + [ + 18.68, + 1.29 + ], + [ + 18.42, + 0.97 + ], + [ + 18.5, + 1.03 + ], + [ + 18.57, + 1.12 + ] + ], + [ + [ + 18.83, + 1.33 + ], + [ + 18.94, + 1.41 + ], + [ + 18.83, + 1.34 + ], + [ + 18.83, + 1.33 + ] + ], + [ + [ + 23.44, + 1.36 + ], + [ + 23.61, + 1.16 + ], + [ + 23.53, + 1.27 + ], + [ + 23.44, + 1.36 + ] + ], + [ + [ + 24.3, + 0.75 + ], + [ + 24.58, + 0.7 + ], + [ + 24.26, + 0.87 + ], + [ + 24.3, + 0.75 + ] + ], + [ + [ + 22.9, + 1.91 + ], + [ + 22.7, + 1.95 + ], + [ + 23.03, + 1.85 + ], + [ + 23.11, + 1.8 + ], + [ + 23.01, + 1.92 + ], + [ + 22.9, + 1.91 + ] + ], + [ + [ + 20.15, + 1.91 + ], + [ + 19.91, + 1.91 + ], + [ + 19.97, + 1.9 + ], + [ + 20.15, + 1.91 + ] + ], + [ + [ + 22.51, + 2.13 + ], + [ + 22.52, + 2.14 + ], + [ + 22.52, + 2.15 + ], + [ + 22.06, + 2.22 + ], + [ + 22.51, + 2.13 + ] + ] + ], + [ + [ + [ + 15.64, + -4.01 + ], + [ + 15.65, + -4 + ], + [ + 15.64, + -4.02 + ], + [ + 15.64, + -4.01 + ] + ] + ], + [ + [ + [ + 16.6, + -1.75 + ], + [ + 16.6, + -1.73 + ], + [ + 16.61, + -1.72 + ], + [ + 16.62, + -1.7 + ], + [ + 16.6, + -1.75 + ] + ] + ], + [ + [ + [ + 16.84, + -1.28 + ], + [ + 16.86, + -1.26 + ], + [ + 16.83, + -1.3 + ], + [ + 16.84, + -1.28 + ] + ] + ], + [ + [ + [ + 17.26, + -1.03 + ], + [ + 17.27, + -1.03 + ], + [ + 17.28, + -1.02 + ], + [ + 17.33, + -1 + ], + [ + 17.26, + -1.03 + ] + ] + ], + [ + [ + [ + 17.66, + -0.63 + ], + [ + 17.67, + -0.62 + ], + [ + 17.67, + -0.66 + ], + [ + 17.66, + -0.63 + ] + ] + ], + [ + [ + [ + 18.23, + 2.51 + ], + [ + 18.25, + 2.54 + ], + [ + 18.26, + 2.53 + ], + [ + 18.24, + 2.5 + ], + [ + 18.23, + 2.51 + ] + ] + ], + [ + [ + [ + 18.62, + 3.94 + ], + [ + 18.63, + 3.94 + ], + [ + 18.63, + 3.93 + ], + [ + 18.62, + 3.94 + ] + ] + ], + [ + [ + [ + 18.64, + 4.07 + ], + [ + 18.63, + 4.08 + ], + [ + 18.64, + 4.08 + ], + [ + 18.64, + 4.07 + ] + ] + ], + [ + [ + [ + 29.05, + -2.28 + ], + [ + 29.03, + -2.29 + ], + [ + 29.12, + -1.93 + ], + [ + 29.05, + -2.28 + ] + ] + ], + [ + [ + [ + 22.52, + 2.14 + ], + [ + 22.52, + 2.13 + ], + [ + 22.51, + 2.13 + ], + [ + 22.52, + 2.14 + ] + ] + ] + ] + }, + "properties": { + "A3": "COD" + } + }, + { + "type": "Feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + 114.03, + 22.51 + ], + [ + 114.23, + 22.55 + ], + [ + 114.2, + 22.41 + ], + [ + 114.4, + 22.44 + ], + [ + 114.3, + 22.26 + ], + [ + 113.92, + 22.37 + ], + [ + 114.03, + 22.51 + ] + ] + ] + }, + "properties": { + "A3": "HKG" + } + }, + { + "type": "Feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + 14.5, + 35.9 + ], + [ + 14.53, + 35.81 + ], + [ + 14.33, + 35.99 + ], + [ + 14.5, + 35.9 + ] + ] + ] + }, + "properties": { + "A3": "MLT" + } + }, + { + "type": "Feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + 29.04, + -2.74 + ], + [ + 29.05, + -2.72 + ], + [ + 29.15, + -2.59 + ], + [ + 29.33, + -2.65 + ], + [ + 29.37, + -2.84 + ], + [ + 29.72, + -2.82 + ], + [ + 29.93, + -2.59 + ], + [ + 30.01, + -2.34 + ], + [ + 30.03, + -2.35 + ], + [ + 30.08, + -2.41 + ], + [ + 30.1, + -2.43 + ], + [ + 30.12, + -2.44 + ], + [ + 30.15, + -2.43 + ], + [ + 30.16, + -2.43 + ], + [ + 30.26, + -2.37 + ], + [ + 30.28, + -2.47 + ], + [ + 30.36, + -2.36 + ], + [ + 30.54, + -2.41 + ], + [ + 30.42, + -2.66 + ], + [ + 30.53, + -2.66 + ], + [ + 30.41, + -2.85 + ], + [ + 30.41, + -2.86 + ], + [ + 30.84, + -2.98 + ], + [ + 30.84, + -3.25 + ], + [ + 30.5, + -3.52 + ], + [ + 30.23, + -3.95 + ], + [ + 30.04, + -4.28 + ], + [ + 30.01, + -4.29 + ], + [ + 29.95, + -4.33 + ], + [ + 29.66, + -4.45 + ], + [ + 29.32, + -3.78 + ], + [ + 29.36, + -3.36 + ], + [ + 29.21, + -3.36 + ], + [ + 29.24, + -3.27 + ], + [ + 29.23, + -3.23 + ], + [ + 29.22, + -3.19 + ], + [ + 29.23, + -3.19 + ], + [ + 29.23, + -3.18 + ], + [ + 29.22, + -3.18 + ], + [ + 29.23, + -3.16 + ], + [ + 29.25, + -3.1 + ], + [ + 29.14, + -2.94 + ], + [ + 29.13, + -2.94 + ], + [ + 29.11, + -2.93 + ], + [ + 29.09, + -2.88 + ], + [ + 29.09, + -2.87 + ], + [ + 29.07, + -2.86 + ], + [ + 29.07, + -2.85 + ], + [ + 29, + -2.81 + ], + [ + 29.04, + -2.74 + ] + ] + ] + }, + "properties": { + "A3": "BDI" + } + }, + { + "type": "Feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + 12.25, + 50.27 + ], + [ + 12.26, + 50.26 + ], + [ + 12.28, + 50.22 + ], + [ + 12.29, + 50.18 + ], + [ + 12.33, + 50.18 + ], + [ + 12.32, + 50.18 + ], + [ + 12.33, + 50.23 + ], + [ + 12.35, + 50.24 + ], + [ + 12.36, + 50.24 + ], + [ + 12.35, + 50.25 + ], + [ + 12.73, + 50.43 + ], + [ + 13.34, + 50.61 + ], + [ + 13.43, + 50.61 + ], + [ + 13.53, + 50.7 + ], + [ + 13.54, + 50.71 + ], + [ + 14.23, + 50.87 + ], + [ + 14.24, + 50.88 + ], + [ + 14.23, + 50.89 + ], + [ + 14.24, + 50.89 + ], + [ + 14.33, + 50.98 + ], + [ + 14.32, + 50.99 + ], + [ + 14.26, + 50.99 + ], + [ + 14.5, + 51.05 + ], + [ + 14.58, + 50.94 + ], + [ + 14.81, + 50.85 + ], + [ + 14.82, + 50.87 + ], + [ + 15.06, + 51.02 + ], + [ + 15.31, + 50.86 + ], + [ + 15.32, + 50.86 + ], + [ + 15.36, + 50.85 + ], + [ + 16.02, + 50.6 + ], + [ + 16.39, + 50.62 + ], + [ + 16.4, + 50.62 + ], + [ + 16.42, + 50.57 + ], + [ + 16.41, + 50.56 + ], + [ + 16.4, + 50.55 + ], + [ + 16.39, + 50.54 + ], + [ + 16.4, + 50.54 + ], + [ + 16.37, + 50.52 + ], + [ + 16.37, + 50.51 + ], + [ + 16.29, + 50.48 + ], + [ + 16.27, + 50.48 + ], + [ + 16.25, + 50.47 + ], + [ + 16.23, + 50.45 + ], + [ + 16.2, + 50.43 + ], + [ + 16.21, + 50.42 + ], + [ + 16.36, + 50.38 + ], + [ + 16.36, + 50.37 + ], + [ + 16.36, + 50.35 + ], + [ + 16.38, + 50.34 + ], + [ + 16.52, + 50.25 + ], + [ + 16.52, + 50.24 + ], + [ + 16.7, + 50.1 + ], + [ + 17.01, + 50.22 + ], + [ + 16.91, + 50.45 + ], + [ + 17.35, + 50.26 + ], + [ + 17.72, + 50.32 + ], + [ + 17.59, + 50.16 + ], + [ + 17.75, + 50.07 + ], + [ + 18.35, + 49.93 + ], + [ + 18.35, + 49.94 + ], + [ + 18.34, + 49.94 + ], + [ + 18.33, + 49.95 + ], + [ + 18.37, + 49.94 + ], + [ + 18.41, + 49.94 + ], + [ + 18.45, + 49.92 + ], + [ + 18.46, + 49.92 + ], + [ + 18.48, + 49.91 + ], + [ + 18.54, + 49.93 + ], + [ + 18.55, + 49.92 + ], + [ + 18.58, + 49.81 + ], + [ + 18.61, + 49.77 + ], + [ + 18.61, + 49.76 + ], + [ + 18.85, + 49.52 + ], + [ + 18.77, + 49.5 + ], + [ + 18.72, + 49.5 + ], + [ + 18.25, + 49.29 + ], + [ + 17.89, + 48.93 + ], + [ + 17.18, + 48.87 + ], + [ + 17.18, + 48.86 + ], + [ + 17.16, + 48.85 + ], + [ + 17.12, + 48.83 + ], + [ + 17.09, + 48.79 + ], + [ + 16.99, + 48.69 + ], + [ + 16.97, + 48.66 + ], + [ + 16.94, + 48.62 + ], + [ + 16.92, + 48.65 + ], + [ + 16.92, + 48.66 + ], + [ + 16.91, + 48.71 + ], + [ + 16.88, + 48.72 + ], + [ + 16.89, + 48.72 + ], + [ + 16.88, + 48.72 + ], + [ + 16.67, + 48.78 + ], + [ + 16.66, + 48.78 + ], + [ + 16.64, + 48.79 + ], + [ + 16.62, + 48.78 + ], + [ + 16.61, + 48.78 + ], + [ + 16.46, + 48.81 + ], + [ + 16.44, + 48.78 + ], + [ + 15.93, + 48.82 + ], + [ + 15.91, + 48.84 + ], + [ + 15.89, + 48.84 + ], + [ + 15.88, + 48.85 + ], + [ + 15.84, + 48.86 + ], + [ + 15.85, + 48.86 + ], + [ + 15.85, + 48.87 + ], + [ + 15.84, + 48.87 + ], + [ + 15.84, + 48.88 + ], + [ + 15.85, + 48.88 + ], + [ + 15.84, + 48.88 + ], + [ + 15.34, + 48.98 + ], + [ + 15.33, + 48.98 + ], + [ + 15.24, + 48.96 + ], + [ + 15.16, + 48.98 + ], + [ + 15.15, + 48.98 + ], + [ + 14.99, + 49.01 + ], + [ + 14.99, + 48.94 + ], + [ + 14.98, + 48.92 + ], + [ + 14.97, + 48.84 + ], + [ + 14.97, + 48.83 + ], + [ + 14.97, + 48.76 + ], + [ + 14.96, + 48.76 + ], + [ + 14.81, + 48.78 + ], + [ + 14.81, + 48.77 + ], + [ + 14.6, + 48.63 + ], + [ + 14.07, + 48.59 + ], + [ + 13.84, + 48.77 + ], + [ + 13.41, + 48.98 + ], + [ + 13.41, + 48.99 + ], + [ + 13.41, + 49.01 + ], + [ + 12.66, + 49.43 + ], + [ + 12.48, + 49.84 + ], + [ + 12.4, + 50.01 + ], + [ + 12.39, + 50.01 + ], + [ + 12.36, + 50.02 + ], + [ + 12.36, + 50.03 + ], + [ + 12.36, + 50.02 + ], + [ + 12.36, + 50.03 + ], + [ + 12.13, + 50.23 + ], + [ + 12.25, + 50.27 + ] + ] + ] + }, + "properties": { + "A3": "CZE" + } + }, + { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + 34.49, + 31.6 + ], + [ + 34.27, + 31.22 + ], + [ + 34.22, + 31.32 + ], + [ + 34.49, + 31.6 + ] + ] + ], + [ + [ + [ + 35.15, + 31.74 + ], + [ + 35.19, + 31.81 + ], + [ + 34.98, + 31.83 + ], + [ + 34.99, + 32.07 + ], + [ + 34.99, + 32.09 + ], + [ + 34.98, + 32.09 + ], + [ + 34.99, + 32.1 + ], + [ + 34.99, + 32.11 + ], + [ + 35.08, + 32.46 + ], + [ + 35.37, + 32.52 + ], + [ + 35.45, + 32.41 + ], + [ + 35.46, + 32.41 + ], + [ + 35.55, + 32.39 + ], + [ + 35.56, + 31.77 + ], + [ + 35.4, + 31.49 + ], + [ + 34.91, + 31.35 + ], + [ + 35.15, + 31.74 + ] + ] + ] + ] + }, + "properties": { + "A3": "PSE" + } + }, + { + "type": "Feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + -59.54, + 13.23 + ], + [ + -59.42, + 13.15 + ], + [ + -59.53, + 13.04 + ], + [ + -59.64, + 13.33 + ], + [ + -59.54, + 13.23 + ] + ] + ] + }, + "properties": { + "A3": "BRB" + } + }, + { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + 11.13, + -3.94 + ], + [ + 11.5, + -3.51 + ], + [ + 11.68, + -3.69 + ], + [ + 11.93, + -3.64 + ], + [ + 11.84, + -3.56 + ], + [ + 11.97, + -3.31 + ], + [ + 11.7, + -3.18 + ], + [ + 11.8, + -3.01 + ], + [ + 11.54, + -2.86 + ], + [ + 11.65, + -2.62 + ], + [ + 11.57, + -2.33 + ], + [ + 11.74, + -2.44 + ], + [ + 12.48, + -2.33 + ], + [ + 12.44, + -1.9 + ], + [ + 12.65, + -1.82 + ], + [ + 12.82, + -1.91 + ], + [ + 12.98, + -2.37 + ], + [ + 13.48, + -2.44 + ], + [ + 13.76, + -2.09 + ], + [ + 13.93, + -2.35 + ], + [ + 13.87, + -2.47 + ], + [ + 14.1, + -2.5 + ], + [ + 14.26, + -2.35 + ], + [ + 14.16, + -2.24 + ], + [ + 14.26, + -1.97 + ], + [ + 14.43, + -1.89 + ], + [ + 14.54, + -0.59 + ], + [ + 14.19, + -0.43 + ], + [ + 14.15, + -0.25 + ], + [ + 13.91, + -0.22 + ], + [ + 13.88, + 0.24 + ], + [ + 14.08, + 0.57 + ], + [ + 14.38, + 0.67 + ], + [ + 14.5, + 0.96 + ], + [ + 14.24, + 1.4 + ], + [ + 13.8, + 1.44 + ], + [ + 13.15, + 1.24 + ], + [ + 13.26, + 1.33 + ], + [ + 13.13, + 1.58 + ], + [ + 13.29, + 2.17 + ], + [ + 14.6, + 2.21 + ], + [ + 14.89, + 2.07 + ], + [ + 14.9, + 2.07 + ], + [ + 14.91, + 2 + ], + [ + 14.92, + 2 + ], + [ + 14.94, + 2 + ], + [ + 14.98, + 2.04 + ], + [ + 14.99, + 2.04 + ], + [ + 15.03, + 2 + ], + [ + 15.09, + 1.98 + ], + [ + 15.1, + 1.98 + ], + [ + 15.11, + 2 + ], + [ + 15.14, + 2.02 + ], + [ + 15.15, + 2.04 + ], + [ + 15.16, + 2.04 + ], + [ + 15.18, + 2.02 + ], + [ + 15.18, + 2.03 + ], + [ + 15.2, + 2.04 + ], + [ + 15.21, + 2.04 + ], + [ + 15.25, + 2.02 + ], + [ + 15.27, + 2 + ], + [ + 15.29, + 1.98 + ], + [ + 15.31, + 1.96 + ], + [ + 15.31, + 1.93 + ], + [ + 15.34, + 1.94 + ], + [ + 15.33, + 1.93 + ], + [ + 15.34, + 1.92 + ], + [ + 15.35, + 1.91 + ], + [ + 15.37, + 1.93 + ], + [ + 15.39, + 1.94 + ], + [ + 15.42, + 1.95 + ], + [ + 15.42, + 1.96 + ], + [ + 15.47, + 1.97 + ], + [ + 15.51, + 1.97 + ], + [ + 15.53, + 1.96 + ], + [ + 15.55, + 1.96 + ], + [ + 15.56, + 1.95 + ], + [ + 15.6, + 1.95 + ], + [ + 15.62, + 1.94 + ], + [ + 15.63, + 1.94 + ], + [ + 15.66, + 1.93 + ], + [ + 15.67, + 1.93 + ], + [ + 15.71, + 1.93 + ], + [ + 15.72, + 1.91 + ], + [ + 15.74, + 1.92 + ], + [ + 15.77, + 1.9 + ], + [ + 15.78, + 1.89 + ], + [ + 15.79, + 1.87 + ], + [ + 15.8, + 1.87 + ], + [ + 15.82, + 1.85 + ], + [ + 15.87, + 1.82 + ], + [ + 15.91, + 1.79 + ], + [ + 15.92, + 1.78 + ], + [ + 15.95, + 1.77 + ], + [ + 15.97, + 1.77 + ], + [ + 16, + 1.76 + ], + [ + 16.02, + 1.77 + ], + [ + 16.02, + 1.74 + ], + [ + 16.02, + 1.72 + ], + [ + 16.02, + 1.71 + ], + [ + 16.02, + 1.68 + ], + [ + 16.02, + 1.67 + ], + [ + 16.06, + 1.66 + ], + [ + 16.07, + 1.67 + ], + [ + 16.07, + 1.68 + ], + [ + 16.1, + 1.7 + ], + [ + 16.12, + 1.7 + ], + [ + 16.13, + 1.7 + ], + [ + 16.14, + 1.69 + ], + [ + 16.15, + 1.69 + ], + [ + 16.15, + 1.7 + ], + [ + 16.14, + 1.72 + ], + [ + 16.14, + 1.74 + ], + [ + 16.15, + 1.76 + ], + [ + 16.14, + 1.76 + ], + [ + 16.14, + 1.8 + ], + [ + 16.13, + 1.81 + ], + [ + 16.12, + 1.82 + ], + [ + 16.12, + 1.83 + ], + [ + 16.12, + 1.85 + ], + [ + 16.11, + 1.86 + ], + [ + 16.11, + 1.87 + ], + [ + 16.11, + 1.89 + ], + [ + 16.1, + 1.89 + ], + [ + 16.08, + 1.9 + ], + [ + 16.08, + 1.91 + ], + [ + 16.08, + 1.92 + ], + [ + 16.08, + 1.93 + ], + [ + 16.08, + 1.94 + ], + [ + 16.07, + 1.96 + ], + [ + 16.06, + 1.96 + ], + [ + 16.05, + 1.99 + ], + [ + 16.05, + 2 + ], + [ + 16.06, + 2.02 + ], + [ + 16.07, + 2.03 + ], + [ + 16.08, + 2.04 + ], + [ + 16.08, + 2.05 + ], + [ + 16.06, + 2.06 + ], + [ + 16.06, + 2.07 + ], + [ + 16.07, + 2.08 + ], + [ + 16.08, + 2.11 + ], + [ + 16.08, + 2.14 + ], + [ + 16.08, + 2.16 + ], + [ + 16.08, + 2.17 + ], + [ + 16.08, + 2.18 + ], + [ + 16.08, + 2.2 + ], + [ + 16.13, + 2.2 + ], + [ + 16.14, + 2.18 + ], + [ + 16.15, + 2.18 + ], + [ + 16.17, + 2.19 + ], + [ + 16.17, + 2.2 + ], + [ + 16.19, + 2.21 + ], + [ + 16.19, + 2.22 + ], + [ + 16.66, + 3.53 + ], + [ + 17.48, + 3.71 + ], + [ + 18.18, + 3.48 + ], + [ + 18.48, + 3.64 + ], + [ + 18.62, + 3.48 + ], + [ + 18.63, + 3.27 + ], + [ + 18.63, + 3.26 + ], + [ + 18.62, + 3.15 + ], + [ + 18.62, + 3.14 + ], + [ + 18.6, + 3.12 + ], + [ + 18.59, + 3.11 + ], + [ + 18.54, + 3.08 + ], + [ + 18.54, + 3.07 + ], + [ + 18.51, + 3 + ], + [ + 18.51, + 2.98 + ], + [ + 18.5, + 2.97 + ], + [ + 18.5, + 2.96 + ], + [ + 18.49, + 2.96 + ], + [ + 18.46, + 2.9 + ], + [ + 18.46, + 2.89 + ], + [ + 18.45, + 2.87 + ], + [ + 18.44, + 2.86 + ], + [ + 18.44, + 2.84 + ], + [ + 18.42, + 2.79 + ], + [ + 18.41, + 2.78 + ], + [ + 18.41, + 2.77 + ], + [ + 18.41, + 2.76 + ], + [ + 18.41, + 2.75 + ], + [ + 18.39, + 2.71 + ], + [ + 18.38, + 2.7 + ], + [ + 18.37, + 2.68 + ], + [ + 18.37, + 2.67 + ], + [ + 18.28, + 2.55 + ], + [ + 18.25, + 2.54 + ], + [ + 18.23, + 2.51 + ], + [ + 18.19, + 2.4 + ], + [ + 18.22, + 2.41 + ], + [ + 18.21, + 2.39 + ], + [ + 18.16, + 2.33 + ], + [ + 18.15, + 2.33 + ], + [ + 18.15, + 2.32 + ], + [ + 18.15, + 2.31 + ], + [ + 18.13, + 2.3 + ], + [ + 18.11, + 2.27 + ], + [ + 18.1, + 2.24 + ], + [ + 18.05, + 2.04 + ], + [ + 18.08, + 1.92 + ], + [ + 18.08, + 1.91 + ], + [ + 18.05, + 1.87 + ], + [ + 18.07, + 1.76 + ], + [ + 18.07, + 1.75 + ], + [ + 18.08, + 1.72 + ], + [ + 18.08, + 1.68 + ], + [ + 18.04, + 1.48 + ], + [ + 18.03, + 1.45 + ], + [ + 17.98, + 1.37 + ], + [ + 17.98, + 1.36 + ], + [ + 17.97, + 1.36 + ], + [ + 17.97, + 1.35 + ], + [ + 17.91, + 1.17 + ], + [ + 17.93, + 1.17 + ], + [ + 17.93, + 1.16 + ], + [ + 17.92, + 1.13 + ], + [ + 17.87, + 1.08 + ], + [ + 17.86, + 1.06 + ], + [ + 17.85, + 1.04 + ], + [ + 17.84, + 1.02 + ], + [ + 17.84, + 1 + ], + [ + 17.84, + 0.99 + ], + [ + 17.84, + 0.98 + ], + [ + 17.85, + 0.91 + ], + [ + 17.85, + 0.9 + ], + [ + 17.88, + 0.82 + ], + [ + 17.89, + 0.79 + ], + [ + 17.87, + 0.72 + ], + [ + 17.86, + 0.81 + ], + [ + 17.87, + 0.68 + ], + [ + 17.87, + 0.67 + ], + [ + 17.87, + 0.63 + ], + [ + 17.87, + 0.62 + ], + [ + 17.87, + 0.55 + ], + [ + 17.89, + 0.56 + ], + [ + 17.9, + 0.55 + ], + [ + 17.92, + 0.54 + ], + [ + 17.93, + 0.54 + ], + [ + 17.94, + 0.53 + ], + [ + 17.94, + 0.52 + ], + [ + 17.92, + 0.32 + ], + [ + 17.91, + 0.31 + ], + [ + 17.88, + 0.29 + ], + [ + 17.86, + 0.29 + ], + [ + 17.84, + 0.26 + ], + [ + 17.83, + 0.25 + ], + [ + 17.81, + 0.21 + ], + [ + 17.79, + 0.16 + ], + [ + 17.75, + 0.03 + ], + [ + 17.75, + 0 + ], + [ + 17.74, + -0.02 + ], + [ + 17.74, + -0.04 + ], + [ + 17.74, + -0.05 + ], + [ + 17.73, + -0.07 + ], + [ + 17.73, + -0.08 + ], + [ + 17.72, + -0.1 + ], + [ + 17.71, + -0.11 + ], + [ + 17.69, + -0.14 + ], + [ + 17.68, + -0.15 + ], + [ + 17.67, + -0.21 + ], + [ + 17.66, + -0.24 + ], + [ + 17.66, + -0.25 + ], + [ + 17.67, + -0.26 + ], + [ + 17.7, + -0.34 + ], + [ + 17.71, + -0.35 + ], + [ + 17.72, + -0.39 + ], + [ + 17.72, + -0.4 + ], + [ + 17.7, + -0.55 + ], + [ + 17.69, + -0.55 + ], + [ + 17.69, + -0.56 + ], + [ + 17.69, + -0.57 + ], + [ + 17.69, + -0.58 + ], + [ + 17.69, + -0.59 + ], + [ + 17.64, + -0.57 + ], + [ + 17.67, + -0.62 + ], + [ + 17.66, + -0.63 + ], + [ + 17.5, + -0.78 + ], + [ + 17.49, + -0.79 + ], + [ + 17.49, + -0.8 + ], + [ + 17.48, + -0.81 + ], + [ + 17.47, + -0.72 + ], + [ + 17.07, + -1.1 + ], + [ + 17.03, + -1.12 + ], + [ + 16.98, + -1.08 + ], + [ + 16.89, + -1.16 + ], + [ + 16.85, + -1.23 + ], + [ + 16.83, + -1.29 + ], + [ + 16.83, + -1.3 + ], + [ + 16.82, + -1.3 + ], + [ + 16.8, + -1.33 + ], + [ + 16.83, + -1.22 + ], + [ + 16.78, + -1.3 + ], + [ + 16.78, + -1.36 + ], + [ + 16.78, + -1.37 + ], + [ + 16.7, + -1.41 + ], + [ + 16.58, + -1.77 + ], + [ + 16.58, + -1.78 + ], + [ + 16.13, + -2.19 + ], + [ + 16.22, + -2.7 + ], + [ + 16.21, + -2.7 + ], + [ + 16.16, + -2.89 + ], + [ + 16.18, + -3.18 + ], + [ + 16.18, + -3.19 + ], + [ + 16.17, + -3.23 + ], + [ + 16.18, + -3.24 + ], + [ + 16.18, + -3.25 + ], + [ + 16.19, + -3.37 + ], + [ + 16.19, + -3.38 + ], + [ + 16.17, + -3.42 + ], + [ + 16.16, + -3.43 + ], + [ + 16.15, + -3.44 + ], + [ + 16.14, + -3.45 + ], + [ + 16.11, + -3.51 + ], + [ + 16.08, + -3.57 + ], + [ + 16.07, + -3.58 + ], + [ + 16.05, + -3.6 + ], + [ + 16.05, + -3.61 + ], + [ + 16.04, + -3.63 + ], + [ + 16.03, + -3.64 + ], + [ + 16.02, + -3.68 + ], + [ + 16.01, + -3.69 + ], + [ + 16.01, + -3.7 + ], + [ + 16, + -3.71 + ], + [ + 15.99, + -3.74 + ], + [ + 15.98, + -3.75 + ], + [ + 15.98, + -3.76 + ], + [ + 15.96, + -3.78 + ], + [ + 15.95, + -3.81 + ], + [ + 15.94, + -3.83 + ], + [ + 15.92, + -3.88 + ], + [ + 15.92, + -3.9 + ], + [ + 15.91, + -3.93 + ], + [ + 15.9, + -3.94 + ], + [ + 15.88, + -3.96 + ], + [ + 15.86, + -3.96 + ], + [ + 15.75, + -3.99 + ], + [ + 15.74, + -3.99 + ], + [ + 15.65, + -4 + ], + [ + 15.64, + -4.01 + ], + [ + 15.55, + -4.05 + ], + [ + 15.54, + -4.05 + ], + [ + 15.39, + -4.17 + ], + [ + 15.49, + -4.17 + ], + [ + 15.48, + -4.18 + ], + [ + 15.48, + -4.2 + ], + [ + 15.35, + -4.27 + ], + [ + 15.3, + -4.17 + ], + [ + 15.3, + -4.28 + ], + [ + 15.28, + -4.3 + ], + [ + 15.21, + -4.32 + ], + [ + 15.19, + -4.33 + ], + [ + 15.17, + -4.38 + ], + [ + 15.18, + -4.39 + ], + [ + 15.16, + -4.4 + ], + [ + 15.15, + -4.41 + ], + [ + 15.14, + -4.43 + ], + [ + 15.13, + -4.43 + ], + [ + 15.13, + -4.44 + ], + [ + 15.12, + -4.46 + ], + [ + 15.12, + -4.47 + ], + [ + 15.11, + -4.48 + ], + [ + 15.1, + -4.48 + ], + [ + 15.09, + -4.5 + ], + [ + 15.07, + -4.51 + ], + [ + 15.05, + -4.54 + ], + [ + 15.03, + -4.54 + ], + [ + 15.02, + -4.56 + ], + [ + 15, + -4.58 + ], + [ + 14.99, + -4.59 + ], + [ + 14.99, + -4.6 + ], + [ + 14.97, + -4.62 + ], + [ + 14.96, + -4.63 + ], + [ + 14.9, + -4.69 + ], + [ + 14.89, + -4.7 + ], + [ + 14.88, + -4.73 + ], + [ + 14.87, + -4.76 + ], + [ + 14.86, + -4.77 + ], + [ + 14.85, + -4.79 + ], + [ + 14.84, + -4.82 + ], + [ + 14.83, + -4.83 + ], + [ + 14.82, + -4.83 + ], + [ + 14.8, + -4.84 + ], + [ + 14.78, + -4.84 + ], + [ + 14.76, + -4.86 + ], + [ + 14.74, + -4.87 + ], + [ + 14.73, + -4.88 + ], + [ + 14.7, + -4.91 + ], + [ + 14.67, + -4.92 + ], + [ + 14.66, + -4.92 + ], + [ + 14.62, + -4.91 + ], + [ + 14.6, + -4.9 + ], + [ + 14.59, + -4.89 + ], + [ + 14.57, + -4.88 + ], + [ + 14.56, + -4.86 + ], + [ + 14.54, + -4.86 + ], + [ + 14.52, + -4.86 + ], + [ + 14.51, + -4.86 + ], + [ + 14.48, + -4.85 + ], + [ + 14.47, + -4.85 + ], + [ + 14.46, + -4.86 + ], + [ + 14.44, + -4.87 + ], + [ + 14.43, + -4.88 + ], + [ + 14.41, + -4.89 + ], + [ + 14.4, + -4.28 + ], + [ + 13.95, + -4.51 + ], + [ + 13.73, + -4.44 + ], + [ + 13.7, + -4.74 + ], + [ + 13.51, + -4.75 + ], + [ + 13.43, + -4.92 + ], + [ + 13.1, + -4.64 + ], + [ + 13.1, + -4.68 + ], + [ + 12.77, + -4.39 + ], + [ + 12.76, + -4.4 + ], + [ + 12.75, + -4.42 + ], + [ + 12.73, + -4.43 + ], + [ + 12.68, + -4.5 + ], + [ + 12.67, + -4.51 + ], + [ + 12.66, + -4.53 + ], + [ + 12.66, + -4.54 + ], + [ + 12.64, + -4.56 + ], + [ + 12.62, + -4.56 + ], + [ + 12.56, + -4.58 + ], + [ + 12.52, + -4.58 + ], + [ + 12.45, + -4.6 + ], + [ + 12.43, + -4.61 + ], + [ + 12.4, + -4.61 + ], + [ + 12.39, + -4.62 + ], + [ + 12.39, + -4.64 + ], + [ + 12.4, + -4.65 + ], + [ + 12.4, + -4.66 + ], + [ + 12.39, + -4.67 + ], + [ + 12.38, + -4.68 + ], + [ + 12.38, + -4.7 + ], + [ + 12.37, + -4.72 + ], + [ + 12.35, + -4.76 + ], + [ + 12.33, + -4.79 + ], + [ + 12.2, + -4.79 + ], + [ + 12.19, + -4.8 + ], + [ + 12.19, + -4.82 + ], + [ + 12.19, + -4.83 + ], + [ + 12.18, + -4.85 + ], + [ + 12.17, + -4.9 + ], + [ + 12.15, + -4.91 + ], + [ + 12.08, + -4.97 + ], + [ + 12.01, + -5.03 + ], + [ + 11.8, + -4.57 + ], + [ + 11.13, + -3.94 + ] + ], + [ + [ + 16.86, + -1.14 + ], + [ + 16.89, + -1.12 + ], + [ + 16.88, + -1.12 + ], + [ + 16.86, + -1.14 + ] + ] + ], + [ + [ + [ + 17.88, + 1.08 + ], + [ + 17.88, + 1.07 + ], + [ + 17.87, + 1.08 + ], + [ + 17.88, + 1.08 + ] + ] + ], + [ + [ + [ + 16.88, + -1.24 + ], + [ + 16.87, + -1.24 + ], + [ + 16.86, + -1.23 + ], + [ + 16.88, + -1.23 + ], + [ + 16.88, + -1.24 + ] + ] + ], + [ + [ + [ + 16.6, + -1.73 + ], + [ + 16.6, + -1.75 + ], + [ + 16.59, + -1.76 + ], + [ + 16.6, + -1.73 + ] + ] + ], + [ + [ + [ + 16.49, + -1.91 + ], + [ + 16.48, + -1.92 + ], + [ + 16.47, + -1.92 + ], + [ + 16.49, + -1.91 + ] + ] + ] + ] + }, + "properties": { + "A3": "COG" + } + }, + { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + 13.59, + 45.47 + ], + [ + 14.32, + 45.47 + ], + [ + 14.57, + 45.67 + ], + [ + 14.82, + 45.46 + ], + [ + 15.17, + 45.42 + ], + [ + 15.18, + 45.42 + ], + [ + 15.2, + 45.43 + ], + [ + 15.21, + 45.43 + ], + [ + 15.3, + 45.57 + ], + [ + 15.29, + 45.61 + ], + [ + 15.3, + 45.61 + ], + [ + 15.34, + 45.64 + ], + [ + 15.34, + 45.65 + ], + [ + 15.28, + 45.74 + ], + [ + 15.7, + 45.84 + ], + [ + 15.71, + 45.85 + ], + [ + 15.69, + 45.86 + ], + [ + 15.68, + 46.23 + ], + [ + 15.69, + 46.23 + ], + [ + 16.06, + 46.39 + ], + [ + 16.07, + 46.39 + ], + [ + 16.1, + 46.39 + ], + [ + 16.11, + 46.39 + ], + [ + 16.13, + 46.4 + ], + [ + 16.15, + 46.4 + ], + [ + 16.17, + 46.39 + ], + [ + 16.16, + 46.38 + ], + [ + 16.2, + 46.38 + ], + [ + 16.24, + 46.38 + ], + [ + 16.25, + 46.38 + ], + [ + 16.26, + 46.38 + ], + [ + 16.33, + 46.53 + ], + [ + 16.41, + 46.53 + ], + [ + 16.42, + 46.53 + ], + [ + 16.43, + 46.53 + ], + [ + 16.46, + 46.52 + ], + [ + 16.48, + 46.51 + ], + [ + 16.5, + 46.5 + ], + [ + 16.51, + 46.5 + ], + [ + 16.57, + 46.47 + ], + [ + 16.6, + 46.48 + ], + [ + 16.61, + 46.47 + ], + [ + 16.62, + 46.47 + ], + [ + 16.63, + 46.46 + ], + [ + 16.64, + 46.46 + ], + [ + 16.7, + 46.41 + ], + [ + 16.72, + 46.39 + ], + [ + 16.74, + 46.4 + ], + [ + 16.74, + 46.39 + ], + [ + 16.76, + 46.38 + ], + [ + 16.77, + 46.38 + ], + [ + 16.79, + 46.38 + ], + [ + 16.79, + 46.39 + ], + [ + 16.8, + 46.38 + ], + [ + 16.81, + 46.38 + ], + [ + 16.83, + 46.37 + ], + [ + 16.84, + 46.37 + ], + [ + 16.86, + 46.35 + ], + [ + 16.87, + 46.34 + ], + [ + 16.88, + 46.34 + ], + [ + 16.88, + 46.33 + ], + [ + 16.88, + 46.3 + ], + [ + 16.89, + 46.29 + ], + [ + 16.97, + 46.23 + ], + [ + 17.18, + 46.11 + ], + [ + 17.19, + 46.11 + ], + [ + 17.23, + 46.09 + ], + [ + 17.22, + 46.09 + ], + [ + 17.26, + 46.06 + ], + [ + 17.26, + 46.01 + ], + [ + 17.3, + 45.99 + ], + [ + 17.29, + 45.99 + ], + [ + 17.31, + 45.97 + ], + [ + 17.32, + 45.97 + ], + [ + 17.36, + 45.97 + ], + [ + 17.36, + 45.96 + ], + [ + 17.35, + 45.94 + ], + [ + 17.36, + 45.94 + ], + [ + 17.37, + 45.95 + ], + [ + 17.38, + 45.95 + ], + [ + 17.4, + 45.93 + ], + [ + 17.4, + 45.94 + ], + [ + 17.43, + 45.95 + ], + [ + 17.51, + 45.94 + ], + [ + 17.53, + 45.93 + ], + [ + 17.54, + 45.93 + ], + [ + 17.59, + 45.92 + ], + [ + 17.6, + 45.92 + ], + [ + 17.62, + 45.91 + ], + [ + 17.63, + 45.89 + ], + [ + 17.64, + 45.88 + ], + [ + 17.64, + 45.87 + ], + [ + 17.65, + 45.86 + ], + [ + 17.69, + 45.84 + ], + [ + 17.72, + 45.83 + ], + [ + 17.73, + 45.83 + ], + [ + 17.75, + 45.82 + ], + [ + 17.76, + 45.81 + ], + [ + 17.77, + 45.81 + ], + [ + 17.82, + 45.81 + ], + [ + 17.83, + 45.81 + ], + [ + 17.84, + 45.79 + ], + [ + 17.85, + 45.78 + ], + [ + 17.87, + 45.77 + ], + [ + 17.88, + 45.78 + ], + [ + 17.89, + 45.79 + ], + [ + 17.92, + 45.79 + ], + [ + 17.93, + 45.79 + ], + [ + 17.95, + 45.79 + ], + [ + 17.99, + 45.79 + ], + [ + 18, + 45.8 + ], + [ + 18.01, + 45.79 + ], + [ + 18.02, + 45.78 + ], + [ + 18.06, + 45.77 + ], + [ + 18.08, + 45.77 + ], + [ + 18.09, + 45.77 + ], + [ + 18.13, + 45.79 + ], + [ + 18.21, + 45.78 + ], + [ + 18.24, + 45.77 + ], + [ + 18.26, + 45.76 + ], + [ + 18.72, + 45.91 + ], + [ + 18.81, + 45.88 + ], + [ + 18.81, + 45.89 + ], + [ + 18.83, + 45.89 + ], + [ + 18.83, + 45.9 + ], + [ + 18.81, + 45.9 + ], + [ + 18.81, + 45.91 + ], + [ + 18.82, + 45.91 + ], + [ + 18.89, + 45.92 + ], + [ + 18.86, + 45.86 + ], + [ + 18.84, + 45.87 + ], + [ + 18.86, + 45.85 + ], + [ + 18.86, + 45.83 + ], + [ + 18.85, + 45.81 + ], + [ + 18.87, + 45.79 + ], + [ + 18.87, + 45.78 + ], + [ + 18.85, + 45.77 + ], + [ + 18.9, + 45.75 + ], + [ + 18.9, + 45.72 + ], + [ + 18.9, + 45.75 + ], + [ + 18.93, + 45.69 + ], + [ + 18.94, + 45.68 + ], + [ + 18.94, + 45.69 + ], + [ + 18.95, + 45.68 + ], + [ + 18.96, + 45.66 + ], + [ + 18.97, + 45.67 + ], + [ + 18.95, + 45.65 + ], + [ + 18.96, + 45.65 + ], + [ + 18.93, + 45.63 + ], + [ + 18.95, + 45.62 + ], + [ + 18.93, + 45.62 + ], + [ + 18.93, + 45.63 + ], + [ + 18.92, + 45.63 + ], + [ + 18.92, + 45.62 + ], + [ + 18.92, + 45.6 + ], + [ + 18.91, + 45.6 + ], + [ + 18.9, + 45.59 + ], + [ + 18.9, + 45.58 + ], + [ + 18.89, + 45.57 + ], + [ + 18.9, + 45.57 + ], + [ + 18.93, + 45.54 + ], + [ + 18.94, + 45.54 + ], + [ + 18.98, + 45.54 + ], + [ + 19, + 45.54 + ], + [ + 19.03, + 45.54 + ], + [ + 19.06, + 45.53 + ], + [ + 19.07, + 45.53 + ], + [ + 19.09, + 45.52 + ], + [ + 19.1, + 45.5 + ], + [ + 19.09, + 45.49 + ], + [ + 19.02, + 45.49 + ], + [ + 19.01, + 45.5 + ], + [ + 19, + 45.49 + ], + [ + 18.99, + 45.48 + ], + [ + 18.99, + 45.47 + ], + [ + 18.99, + 45.45 + ], + [ + 18.99, + 45.44 + ], + [ + 19.02, + 45.43 + ], + [ + 19.03, + 45.42 + ], + [ + 19.01, + 45.4 + ], + [ + 19, + 45.4 + ], + [ + 18.97, + 45.39 + ], + [ + 18.97, + 45.38 + ], + [ + 18.99, + 45.36 + ], + [ + 19.01, + 45.36 + ], + [ + 19.01, + 45.35 + ], + [ + 19.03, + 45.35 + ], + [ + 19.06, + 45.34 + ], + [ + 19.09, + 45.34 + ], + [ + 19.09, + 45.33 + ], + [ + 19.1, + 45.3 + ], + [ + 19.13, + 45.29 + ], + [ + 19.14, + 45.28 + ], + [ + 19.15, + 45.28 + ], + [ + 19.17, + 45.27 + ], + [ + 19.19, + 45.27 + ], + [ + 19.2, + 45.26 + ], + [ + 19.22, + 45.26 + ], + [ + 19.23, + 45.25 + ], + [ + 19.24, + 45.25 + ], + [ + 19.28, + 45.24 + ], + [ + 19.33, + 45.23 + ], + [ + 19.42, + 45.23 + ], + [ + 19.09, + 45.15 + ], + [ + 19.07, + 44.97 + ], + [ + 19.02, + 44.86 + ], + [ + 19.01, + 44.86 + ], + [ + 19, + 44.85 + ], + [ + 18.97, + 44.85 + ], + [ + 18.96, + 44.85 + ], + [ + 18.92, + 44.85 + ], + [ + 18.91, + 44.85 + ], + [ + 18.9, + 44.85 + ], + [ + 18.89, + 44.85 + ], + [ + 18.87, + 44.85 + ], + [ + 18.85, + 44.85 + ], + [ + 18.84, + 44.86 + ], + [ + 18.83, + 44.87 + ], + [ + 18.82, + 44.88 + ], + [ + 18.81, + 44.88 + ], + [ + 18.8, + 44.88 + ], + [ + 18.77, + 44.9 + ], + [ + 18.76, + 44.91 + ], + [ + 18.76, + 44.92 + ], + [ + 18.76, + 44.94 + ], + [ + 18.78, + 44.94 + ], + [ + 18.79, + 44.93 + ], + [ + 18.81, + 44.94 + ], + [ + 18.8, + 44.95 + ], + [ + 18.78, + 44.98 + ], + [ + 18.79, + 44.98 + ], + [ + 18.8, + 44.99 + ], + [ + 18.78, + 45 + ], + [ + 18.76, + 45 + ], + [ + 18.74, + 44.99 + ], + [ + 18.74, + 45.01 + ], + [ + 18.73, + 45.02 + ], + [ + 18.72, + 45.03 + ], + [ + 18.71, + 45.04 + ], + [ + 18.69, + 45.04 + ], + [ + 18.67, + 45.06 + ], + [ + 18.67, + 45.07 + ], + [ + 18.68, + 45.07 + ], + [ + 18.68, + 45.09 + ], + [ + 18.66, + 45.09 + ], + [ + 18.66, + 45.08 + ], + [ + 18.66, + 45.07 + ], + [ + 18.65, + 45.06 + ], + [ + 18.63, + 45.06 + ], + [ + 18.61, + 45.07 + ], + [ + 18.62, + 45.08 + ], + [ + 18.63, + 45.08 + ], + [ + 18.64, + 45.09 + ], + [ + 18.63, + 45.09 + ], + [ + 18.62, + 45.09 + ], + [ + 18.61, + 45.08 + ], + [ + 18.59, + 45.09 + ], + [ + 18.57, + 45.1 + ], + [ + 18.57, + 45.09 + ], + [ + 18.55, + 45.09 + ], + [ + 18.54, + 45.09 + ], + [ + 18.55, + 45.07 + ], + [ + 18.54, + 45.07 + ], + [ + 18.53, + 45.04 + ], + [ + 18.53, + 45.05 + ], + [ + 18.51, + 45.06 + ], + [ + 18.5, + 45.06 + ], + [ + 18.49, + 45.06 + ], + [ + 18.48, + 45.06 + ], + [ + 18.46, + 45.07 + ], + [ + 18.45, + 45.08 + ], + [ + 18.44, + 45.09 + ], + [ + 18.44, + 45.1 + ], + [ + 18.43, + 45.11 + ], + [ + 18.41, + 45.11 + ], + [ + 18.38, + 45.11 + ], + [ + 18.37, + 45.11 + ], + [ + 18.36, + 45.1 + ], + [ + 18.35, + 45.1 + ], + [ + 18.33, + 45.1 + ], + [ + 18.32, + 45.1 + ], + [ + 18.31, + 45.11 + ], + [ + 18.3, + 45.12 + ], + [ + 18.28, + 45.12 + ], + [ + 18.28, + 45.13 + ], + [ + 18.27, + 45.14 + ], + [ + 18.25, + 45.14 + ], + [ + 18.23, + 45.13 + ], + [ + 18.22, + 45.13 + ], + [ + 18.21, + 45.12 + ], + [ + 18.21, + 45.11 + ], + [ + 18.22, + 45.1 + ], + [ + 18.21, + 45.09 + ], + [ + 18.18, + 45.08 + ], + [ + 18.17, + 45.08 + ], + [ + 18.15, + 45.08 + ], + [ + 18.14, + 45.09 + ], + [ + 18.11, + 45.08 + ], + [ + 18.1, + 45.09 + ], + [ + 18.08, + 45.1 + ], + [ + 18.07, + 45.11 + ], + [ + 18.08, + 45.12 + ], + [ + 18.04, + 45.14 + ], + [ + 18.03, + 45.14 + ], + [ + 18.02, + 45.15 + ], + [ + 18.01, + 45.15 + ], + [ + 18, + 45.15 + ], + [ + 17.99, + 45.15 + ], + [ + 17.98, + 45.14 + ], + [ + 17.98, + 45.13 + ], + [ + 17.97, + 45.12 + ], + [ + 17.94, + 45.11 + ], + [ + 17.93, + 45.1 + ], + [ + 17.93, + 45.08 + ], + [ + 17.92, + 45.07 + ], + [ + 17.89, + 45.06 + ], + [ + 17.89, + 45.05 + ], + [ + 17.87, + 45.05 + ], + [ + 17.85, + 45.04 + ], + [ + 17.84, + 45.05 + ], + [ + 17.82, + 45.06 + ], + [ + 17.8, + 45.07 + ], + [ + 17.79, + 45.08 + ], + [ + 17.78, + 45.08 + ], + [ + 17.77, + 45.08 + ], + [ + 17.75, + 45.09 + ], + [ + 17.73, + 45.1 + ], + [ + 17.72, + 45.11 + ], + [ + 17.69, + 45.12 + ], + [ + 17.67, + 45.13 + ], + [ + 17.65, + 45.13 + ], + [ + 17.64, + 45.13 + ], + [ + 17.63, + 45.12 + ], + [ + 17.61, + 45.11 + ], + [ + 17.59, + 45.11 + ], + [ + 17.58, + 45.12 + ], + [ + 17.57, + 45.12 + ], + [ + 17.54, + 45.12 + ], + [ + 17.52, + 45.11 + ], + [ + 17.51, + 45.11 + ], + [ + 17.49, + 45.11 + ], + [ + 17.49, + 45.13 + ], + [ + 17.49, + 45.14 + ], + [ + 17.48, + 45.14 + ], + [ + 17.47, + 45.13 + ], + [ + 17.46, + 45.13 + ], + [ + 17.45, + 45.14 + ], + [ + 17.41, + 45.13 + ], + [ + 17.4, + 45.14 + ], + [ + 17.38, + 45.14 + ], + [ + 17.37, + 45.14 + ], + [ + 17.36, + 45.14 + ], + [ + 17.35, + 45.14 + ], + [ + 17.34, + 45.15 + ], + [ + 17.33, + 45.15 + ], + [ + 17.33, + 45.16 + ], + [ + 17.32, + 45.17 + ], + [ + 17.31, + 45.16 + ], + [ + 17.31, + 45.17 + ], + [ + 17.27, + 45.19 + ], + [ + 17.27, + 45.18 + ], + [ + 17.26, + 45.17 + ], + [ + 17.25, + 45.15 + ], + [ + 17.23, + 45.15 + ], + [ + 17.21, + 45.15 + ], + [ + 17.2, + 45.15 + ], + [ + 17.18, + 45.15 + ], + [ + 17.15, + 45.16 + ], + [ + 17.13, + 45.17 + ], + [ + 17.1, + 45.18 + ], + [ + 17.09, + 45.18 + ], + [ + 17.07, + 45.2 + ], + [ + 17.06, + 45.2 + ], + [ + 17.05, + 45.2 + ], + [ + 17.01, + 45.22 + ], + [ + 17.01, + 45.23 + ], + [ + 17, + 45.23 + ], + [ + 17, + 45.22 + ], + [ + 16.98, + 45.23 + ], + [ + 16.98, + 45.24 + ], + [ + 16.98, + 45.25 + ], + [ + 16.96, + 45.23 + ], + [ + 16.94, + 45.23 + ], + [ + 16.94, + 45.24 + ], + [ + 16.94, + 45.26 + ], + [ + 16.94, + 45.27 + ], + [ + 16.93, + 45.28 + ], + [ + 16.92, + 45.27 + ], + [ + 16.91, + 45.26 + ], + [ + 16.88, + 45.25 + ], + [ + 16.87, + 45.24 + ], + [ + 16.88, + 45.24 + ], + [ + 16.86, + 45.23 + ], + [ + 16.84, + 45.21 + ], + [ + 16.81, + 45.18 + ], + [ + 16.81, + 45.19 + ], + [ + 16.77, + 45.2 + ], + [ + 16.76, + 45.2 + ], + [ + 16.7, + 45.2 + ], + [ + 16.68, + 45.2 + ], + [ + 16.67, + 45.2 + ], + [ + 16.66, + 45.21 + ], + [ + 16.65, + 45.21 + ], + [ + 16.63, + 45.21 + ], + [ + 16.61, + 45.23 + ], + [ + 16.57, + 45.22 + ], + [ + 16.52, + 45.22 + ], + [ + 16.5, + 45.21 + ], + [ + 16.49, + 45.2 + ], + [ + 16.48, + 45.17 + ], + [ + 16.41, + 45.12 + ], + [ + 16.39, + 45.11 + ], + [ + 16.39, + 45.1 + ], + [ + 16.39, + 45.09 + ], + [ + 16.39, + 45.08 + ], + [ + 16.39, + 45.07 + ], + [ + 16.37, + 45.04 + ], + [ + 16.36, + 45.04 + ], + [ + 16.28, + 45.01 + ], + [ + 16.01, + 45.22 + ], + [ + 15.78, + 45.19 + ], + [ + 15.73, + 44.83 + ], + [ + 15.95, + 44.7 + ], + [ + 16.13, + 44.5 + ], + [ + 16.13, + 44.49 + ], + [ + 16.21, + 44.22 + ], + [ + 16.97, + 43.61 + ], + [ + 16.98, + 43.6 + ], + [ + 16.99, + 43.6 + ], + [ + 16.99, + 43.59 + ], + [ + 17.13, + 43.52 + ], + [ + 17.13, + 43.51 + ], + [ + 17.14, + 43.51 + ], + [ + 17.66, + 43.05 + ], + [ + 17.62, + 42.94 + ], + [ + 17.6, + 42.94 + ], + [ + 17.58, + 42.94 + ], + [ + 16.89, + 43.4 + ], + [ + 16.43, + 43.55 + ], + [ + 15.95, + 43.51 + ], + [ + 15.96, + 43.69 + ], + [ + 15.14, + 44.2 + ], + [ + 15.28, + 44.33 + ], + [ + 15.63, + 44.14 + ], + [ + 14.99, + 44.57 + ], + [ + 14.85, + 45.12 + ], + [ + 14.56, + 45.3 + ], + [ + 14.32, + 45.35 + ], + [ + 13.91, + 44.77 + ], + [ + 13.63, + 45.06 + ], + [ + 13.59, + 45.47 + ] + ], + [ + [ + 15.33, + 43.81 + ], + [ + 15.46, + 43.73 + ], + [ + 15.22, + 43.88 + ], + [ + 15.33, + 43.81 + ] + ] + ], + [ + [ + [ + 18.85, + 45.81 + ], + [ + 18.92, + 45.82 + ], + [ + 18.9, + 45.77 + ], + [ + 18.89, + 45.78 + ], + [ + 18.88, + 45.78 + ], + [ + 18.87, + 45.78 + ], + [ + 18.85, + 45.81 + ] + ] + ], + [ + [ + [ + 18.57, + 45.09 + ], + [ + 18.58, + 45.08 + ], + [ + 18.58, + 45.07 + ], + [ + 18.57, + 45.08 + ], + [ + 18.57, + 45.09 + ] + ] + ], + [ + [ + [ + 17.65, + 42.89 + ], + [ + 18.44, + 42.56 + ], + [ + 18.52, + 42.42 + ], + [ + 17, + 43.05 + ], + [ + 17.65, + 42.89 + ] + ] + ], + [ + [ + [ + 14.67, + 45.11 + ], + [ + 14.75, + 44.94 + ], + [ + 14.43, + 45.08 + ], + [ + 14.55, + 45.25 + ], + [ + 14.67, + 45.11 + ] + ] + ], + [ + [ + [ + 14.75, + 44.76 + ], + [ + 14.68, + 44.85 + ], + [ + 14.87, + 44.7 + ], + [ + 14.75, + 44.76 + ] + ] + ], + [ + [ + [ + 14.36, + 45 + ], + [ + 14.32, + 45.18 + ], + [ + 14.5, + 44.6 + ], + [ + 14.36, + 45 + ] + ] + ], + [ + [ + [ + 14.38, + 44.63 + ], + [ + 14.34, + 44.71 + ], + [ + 14.46, + 44.54 + ], + [ + 14.38, + 44.63 + ] + ] + ], + [ + [ + [ + 15.14, + 44.08 + ], + [ + 15.06, + 44.16 + ], + [ + 15.26, + 44.02 + ], + [ + 15.14, + 44.08 + ] + ] + ], + [ + [ + [ + 16.86, + 43.12 + ], + [ + 16.37, + 43.2 + ], + [ + 17.2, + 43.12 + ], + [ + 16.86, + 43.12 + ] + ] + ], + [ + [ + [ + 16.47, + 43.3 + ], + [ + 16.43, + 43.39 + ], + [ + 16.9, + 43.31 + ], + [ + 16.47, + 43.3 + ] + ] + ], + [ + [ + [ + 17.59, + 42.75 + ], + [ + 17.75, + 42.69 + ], + [ + 17.32, + 42.79 + ], + [ + 17.59, + 42.75 + ] + ] + ] + ] + }, + "properties": { + "A3": "HRV" + } + }, + { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + 126.58, + 37.76 + ], + [ + 126.67, + 37.65 + ], + [ + 126.67, + 37.83 + ], + [ + 126.69, + 37.84 + ], + [ + 126.96, + 38.13 + ], + [ + 126.97, + 38.14 + ], + [ + 126.96, + 38.15 + ], + [ + 126.95, + 38.15 + ], + [ + 127.13, + 38.31 + ], + [ + 127.68, + 38.32 + ], + [ + 127.69, + 38.32 + ], + [ + 127.79, + 38.34 + ], + [ + 127.8, + 38.33 + ], + [ + 127.8, + 38.32 + ], + [ + 127.85, + 38.31 + ], + [ + 127.86, + 38.31 + ], + [ + 127.88, + 38.33 + ], + [ + 127.92, + 38.32 + ], + [ + 127.97, + 38.32 + ], + [ + 128.16, + 38.35 + ], + [ + 128.21, + 38.37 + ], + [ + 128.22, + 38.38 + ], + [ + 128.28, + 38.43 + ], + [ + 128.28, + 38.44 + ], + [ + 128.36, + 38.62 + ], + [ + 129.43, + 37.06 + ], + [ + 129.37, + 36.01 + ], + [ + 129.58, + 36.02 + ], + [ + 129.45, + 35.49 + ], + [ + 129.36, + 35.55 + ], + [ + 129.36, + 35.36 + ], + [ + 128.97, + 35.03 + ], + [ + 128.89, + 35.12 + ], + [ + 128.83, + 34.99 + ], + [ + 128.58, + 35.21 + ], + [ + 128.63, + 35.07 + ], + [ + 128.36, + 35.05 + ], + [ + 128.5, + 35.02 + ], + [ + 128.42, + 34.76 + ], + [ + 128.33, + 34.96 + ], + [ + 128.04, + 34.94 + ], + [ + 128.05, + 35.08 + ], + [ + 127.87, + 34.94 + ], + [ + 128.06, + 34.71 + ], + [ + 127.86, + 34.73 + ], + [ + 127.87, + 34.95 + ], + [ + 127.72, + 34.99 + ], + [ + 127.57, + 34.9 + ], + [ + 127.78, + 34.85 + ], + [ + 127.64, + 34.63 + ], + [ + 127.51, + 34.89 + ], + [ + 127.35, + 34.84 + ], + [ + 127.51, + 34.59 + ], + [ + 127.34, + 34.45 + ], + [ + 127.11, + 34.55 + ], + [ + 127.34, + 34.71 + ], + [ + 127.23, + 34.76 + ], + [ + 126.96, + 34.64 + ], + [ + 126.89, + 34.42 + ], + [ + 126.79, + 34.64 + ], + [ + 126.53, + 34.29 + ], + [ + 126.51, + 34.56 + ], + [ + 126.31, + 34.57 + ], + [ + 126.26, + 34.7 + ], + [ + 126.45, + 34.59 + ], + [ + 126.39, + 34.73 + ], + [ + 126.59, + 34.63 + ], + [ + 126.47, + 34.72 + ], + [ + 126.65, + 34.82 + ], + [ + 126.37, + 34.78 + ], + [ + 126.43, + 34.98 + ], + [ + 126.31, + 34.93 + ], + [ + 126.39, + 35.03 + ], + [ + 126.24, + 35.11 + ], + [ + 126.43, + 35.03 + ], + [ + 126.31, + 35.24 + ], + [ + 126.49, + 35.52 + ], + [ + 126.68, + 35.55 + ], + [ + 126.46, + 35.61 + ], + [ + 126.48, + 35.81 + ], + [ + 126.57, + 35.69 + ], + [ + 126.89, + 35.91 + ], + [ + 126.59, + 35.95 + ], + [ + 126.45, + 35.81 + ], + [ + 126.52, + 35.97 + ], + [ + 126.85, + 36.06 + ], + [ + 126.5, + 36.13 + ], + [ + 126.59, + 36.47 + ], + [ + 126.45, + 36.7 + ], + [ + 126.29, + 36.58 + ], + [ + 126.11, + 36.77 + ], + [ + 126.3, + 36.98 + ], + [ + 126.37, + 36.83 + ], + [ + 126.33, + 37 + ], + [ + 126.47, + 36.93 + ], + [ + 126.5, + 37.06 + ], + [ + 126.84, + 36.83 + ], + [ + 127, + 36.92 + ], + [ + 126.65, + 37.15 + ], + [ + 126.78, + 37.3 + ], + [ + 126.58, + 37.35 + ], + [ + 126.58, + 37.76 + ] + ] + ], + [ + [ + [ + 126.52, + 37.75 + ], + [ + 126.54, + 37.62 + ], + [ + 126.37, + 37.61 + ], + [ + 126.35, + 37.79 + ], + [ + 126.52, + 37.75 + ] + ] + ], + [ + [ + [ + 126.39, + 36.53 + ], + [ + 126.43, + 36.4 + ], + [ + 126.35, + 36.61 + ], + [ + 126.39, + 36.53 + ] + ] + ], + [ + [ + [ + 128.62, + 34.89 + ], + [ + 128.71, + 35.03 + ], + [ + 128.74, + 34.79 + ], + [ + 128.58, + 34.7 + ], + [ + 128.47, + 34.88 + ], + [ + 128.62, + 34.89 + ] + ] + ], + [ + [ + [ + 126.33, + 34.54 + ], + [ + 126.34, + 34.4 + ], + [ + 126.13, + 34.36 + ], + [ + 126.33, + 34.54 + ] + ] + ], + [ + [ + [ + 126.57, + 33.52 + ], + [ + 126.95, + 33.46 + ], + [ + 126.61, + 33.24 + ], + [ + 126.18, + 33.26 + ], + [ + 126.26, + 33.44 + ], + [ + 126.57, + 33.52 + ] + ] + ] + ] + }, + "properties": { + "A3": "KOR" + } + }, + { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + 9.42, + 54.83 + ], + [ + 9.09, + 54.87 + ], + [ + 9.08, + 54.87 + ], + [ + 8.97, + 54.9 + ], + [ + 8.88, + 54.9 + ], + [ + 8.8, + 54.9 + ], + [ + 8.78, + 54.9 + ], + [ + 8.79, + 54.9 + ], + [ + 8.76, + 54.9 + ], + [ + 8.75, + 54.89 + ], + [ + 8.72, + 54.89 + ], + [ + 8.66, + 54.91 + ], + [ + 8.69, + 55.14 + ], + [ + 8.46, + 55.1 + ], + [ + 8.69, + 55.16 + ], + [ + 8.61, + 55.44 + ], + [ + 8.07, + 55.56 + ], + [ + 8.12, + 56 + ], + [ + 8.18, + 55.82 + ], + [ + 8.38, + 55.91 + ], + [ + 8.13, + 56.12 + ], + [ + 8.11, + 56 + ], + [ + 8.11, + 56.37 + ], + [ + 8.29, + 56.31 + ], + [ + 8.12, + 56.41 + ], + [ + 8.22, + 56.61 + ], + [ + 8.73, + 56.48 + ], + [ + 8.68, + 56.62 + ], + [ + 9.07, + 56.8 + ], + [ + 9.05, + 56.56 + ], + [ + 9.15, + 56.66 + ], + [ + 9.37, + 56.54 + ], + [ + 9.2, + 56.94 + ], + [ + 9.49, + 57.02 + ], + [ + 9.57, + 56.93 + ], + [ + 9.69, + 57.04 + ], + [ + 9.98, + 57.04 + ], + [ + 10.01, + 57.08 + ], + [ + 10.31, + 56.98 + ], + [ + 10.33, + 56.71 + ], + [ + 9.8, + 56.64 + ], + [ + 10.36, + 56.66 + ], + [ + 10.04, + 56.46 + ], + [ + 10.29, + 56.47 + ], + [ + 10.3, + 56.61 + ], + [ + 10.96, + 56.44 + ], + [ + 10.71, + 56.14 + ], + [ + 10.38, + 56.17 + ], + [ + 10.45, + 56.3 + ], + [ + 10.24, + 56.18 + ], + [ + 10.19, + 55.84 + ], + [ + 9.86, + 55.86 + ], + [ + 10.03, + 55.7 + ], + [ + 9.54, + 55.71 + ], + [ + 9.86, + 55.63 + ], + [ + 9.48, + 55.49 + ], + [ + 9.69, + 55.46 + ], + [ + 9.49, + 55.25 + ], + [ + 9.72, + 55.25 + ], + [ + 9.42, + 55.03 + ], + [ + 9.78, + 54.91 + ], + [ + 9.42, + 54.83 + ] + ] + ], + [ + [ + [ + 11.86, + 54.77 + ], + [ + 11.75, + 54.96 + ], + [ + 12.17, + 54.84 + ], + [ + 11.97, + 54.56 + ], + [ + 11.86, + 54.77 + ] + ] + ], + [ + [ + [ + 12.13, + 54.9 + ], + [ + 12.26, + 55.06 + ], + [ + 12.55, + 54.98 + ], + [ + 12.13, + 54.9 + ] + ] + ], + [ + [ + [ + 12.42, + 56.1 + ], + [ + 12.62, + 56.04 + ], + [ + 12.61, + 55.71 + ], + [ + 12.22, + 55.53 + ], + [ + 12.45, + 55.29 + ], + [ + 12.02, + 55.16 + ], + [ + 12.18, + 55.11 + ], + [ + 12.03, + 54.96 + ], + [ + 11.62, + 55.08 + ], + [ + 11.83, + 55.04 + ], + [ + 11.71, + 55.21 + ], + [ + 11.26, + 55.2 + ], + [ + 10.93, + 55.67 + ], + [ + 11.1, + 55.68 + ], + [ + 10.87, + 55.74 + ], + [ + 11.21, + 55.7 + ], + [ + 11.5, + 55.85 + ], + [ + 11.28, + 56.01 + ], + [ + 11.78, + 55.98 + ], + [ + 11.65, + 55.72 + ], + [ + 11.84, + 55.68 + ], + [ + 11.95, + 55.93 + ], + [ + 12.08, + 55.65 + ], + [ + 12.02, + 55.96 + ], + [ + 11.84, + 55.97 + ], + [ + 12.42, + 56.1 + ] + ] + ], + [ + [ + [ + 10.61, + 55.06 + ], + [ + 10.07, + 55.08 + ], + [ + 9.68, + 55.52 + ], + [ + 10.31, + 55.62 + ], + [ + 10.47, + 55.44 + ], + [ + 10.62, + 55.62 + ], + [ + 10.75, + 55.48 + ], + [ + 10.54, + 55.44 + ], + [ + 10.86, + 55.29 + ], + [ + 10.61, + 55.06 + ] + ] + ], + [ + [ + [ + 8.61, + 56.82 + ], + [ + 8.94, + 56.98 + ], + [ + 8.73, + 56.68 + ], + [ + 8.5, + 56.72 + ], + [ + 8.61, + 56.82 + ] + ] + ], + [ + [ + [ + 10.28, + 56.99 + ], + [ + 10.03, + 57.09 + ], + [ + 9.94, + 57.05 + ], + [ + 9.78, + 57.11 + ], + [ + 8.88, + 57.03 + ], + [ + 8.4, + 56.68 + ], + [ + 8.59, + 56.6 + ], + [ + 8.21, + 56.72 + ], + [ + 8.59, + 57.12 + ], + [ + 9.39, + 57.16 + ], + [ + 9.96, + 57.6 + ], + [ + 10.62, + 57.75 + ], + [ + 10.28, + 56.99 + ] + ] + ], + [ + [ + [ + 10.98, + 54.83 + ], + [ + 11.18, + 54.96 + ], + [ + 11.64, + 54.8 + ], + [ + 11.65, + 54.9 + ], + [ + 11.86, + 54.69 + ], + [ + 11.5, + 54.59 + ], + [ + 10.98, + 54.83 + ] + ] + ], + [ + [ + [ + 14.7, + 55.12 + ], + [ + 14.77, + 55.3 + ], + [ + 15.16, + 55.08 + ], + [ + 15.07, + 54.99 + ], + [ + 14.7, + 55.12 + ] + ] + ] + ] + }, + "properties": { + "A3": "DNK" + } + }, + { + "type": "Feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + 16.94, + 48.62 + ], + [ + 16.97, + 48.66 + ], + [ + 16.99, + 48.69 + ], + [ + 17.09, + 48.79 + ], + [ + 17.12, + 48.83 + ], + [ + 17.16, + 48.85 + ], + [ + 17.18, + 48.86 + ], + [ + 17.18, + 48.87 + ], + [ + 17.89, + 48.93 + ], + [ + 18.25, + 49.29 + ], + [ + 18.72, + 49.5 + ], + [ + 18.77, + 49.5 + ], + [ + 18.85, + 49.52 + ], + [ + 18.96, + 49.49 + ], + [ + 18.96, + 49.46 + ], + [ + 19.19, + 49.41 + ], + [ + 19.47, + 49.61 + ], + [ + 19.61, + 49.45 + ], + [ + 19.77, + 49.24 + ], + [ + 19.77, + 49.23 + ], + [ + 19.77, + 49.22 + ], + [ + 19.76, + 49.22 + ], + [ + 19.76, + 49.21 + ], + [ + 19.77, + 49.21 + ], + [ + 19.78, + 49.21 + ], + [ + 19.79, + 49.2 + ], + [ + 19.8, + 49.2 + ], + [ + 20.08, + 49.18 + ], + [ + 20.09, + 49.18 + ], + [ + 20.35, + 49.4 + ], + [ + 20.41, + 49.39 + ], + [ + 20.41, + 49.4 + ], + [ + 20.43, + 49.4 + ], + [ + 20.44, + 49.41 + ], + [ + 20.43, + 49.41 + ], + [ + 20.74, + 49.41 + ], + [ + 20.74, + 49.4 + ], + [ + 20.76, + 49.38 + ], + [ + 20.76, + 49.37 + ], + [ + 20.79, + 49.37 + ], + [ + 20.78, + 49.37 + ], + [ + 20.81, + 49.35 + ], + [ + 20.81, + 49.36 + ], + [ + 20.8, + 49.35 + ], + [ + 20.87, + 49.34 + ], + [ + 21.63, + 49.45 + ], + [ + 22.19, + 49.18 + ], + [ + 22.19, + 49.17 + ], + [ + 22.23, + 49.17 + ], + [ + 22.24, + 49.15 + ], + [ + 22.26, + 49.15 + ], + [ + 22.27, + 49.15 + ], + [ + 22.28, + 49.14 + ], + [ + 22.3, + 49.14 + ], + [ + 22.31, + 49.14 + ], + [ + 22.32, + 49.14 + ], + [ + 22.33, + 49.14 + ], + [ + 22.37, + 49.15 + ], + [ + 22.37, + 49.14 + ], + [ + 22.4, + 49.12 + ], + [ + 22.4, + 49.11 + ], + [ + 22.41, + 49.11 + ], + [ + 22.41, + 49.1 + ], + [ + 22.42, + 49.1 + ], + [ + 22.43, + 49.1 + ], + [ + 22.44, + 49.1 + ], + [ + 22.5, + 49.09 + ], + [ + 22.53, + 49.09 + ], + [ + 22.57, + 49.09 + ], + [ + 22.27, + 48.66 + ], + [ + 22.27, + 48.65 + ], + [ + 22.26, + 48.65 + ], + [ + 22.19, + 48.61 + ], + [ + 22.16, + 48.56 + ], + [ + 22.16, + 48.53 + ], + [ + 22.15, + 48.48 + ], + [ + 22.14, + 48.45 + ], + [ + 22.16, + 48.4 + ], + [ + 22.14, + 48.39 + ], + [ + 22.13, + 48.38 + ], + [ + 21.76, + 48.34 + ], + [ + 21.53, + 48.52 + ], + [ + 21.32, + 48.56 + ], + [ + 21.31, + 48.53 + ], + [ + 21.28, + 48.53 + ], + [ + 21.27, + 48.53 + ], + [ + 20.51, + 48.53 + ], + [ + 20, + 48.17 + ], + [ + 19.99, + 48.17 + ], + [ + 19.56, + 48.21 + ], + [ + 19.51, + 48.18 + ], + [ + 19.38, + 48.09 + ], + [ + 19.25, + 48.06 + ], + [ + 19.05, + 48.06 + ], + [ + 18.76, + 47.89 + ], + [ + 18.76, + 47.87 + ], + [ + 18.85, + 47.83 + ], + [ + 18.85, + 47.82 + ], + [ + 18.83, + 47.82 + ], + [ + 18.81, + 47.82 + ], + [ + 18.77, + 47.82 + ], + [ + 18.73, + 47.8 + ], + [ + 18.73, + 47.79 + ], + [ + 18.72, + 47.78 + ], + [ + 18.71, + 47.78 + ], + [ + 18.7, + 47.78 + ], + [ + 18.68, + 47.77 + ], + [ + 18.66, + 47.76 + ], + [ + 18.65, + 47.76 + ], + [ + 18.62, + 47.76 + ], + [ + 18.61, + 47.76 + ], + [ + 18.6, + 47.76 + ], + [ + 18.58, + 47.76 + ], + [ + 18.57, + 47.77 + ], + [ + 18.54, + 47.76 + ], + [ + 18.51, + 47.76 + ], + [ + 18.49, + 47.75 + ], + [ + 18.48, + 47.76 + ], + [ + 18.46, + 47.77 + ], + [ + 18.45, + 47.76 + ], + [ + 18.44, + 47.76 + ], + [ + 18.39, + 47.75 + ], + [ + 18.38, + 47.75 + ], + [ + 18.37, + 47.74 + ], + [ + 18.36, + 47.74 + ], + [ + 18.29, + 47.73 + ], + [ + 18.27, + 47.73 + ], + [ + 18.25, + 47.74 + ], + [ + 18.24, + 47.74 + ], + [ + 18.22, + 47.74 + ], + [ + 18.21, + 47.74 + ], + [ + 18.18, + 47.74 + ], + [ + 18.17, + 47.74 + ], + [ + 18.16, + 47.74 + ], + [ + 18.14, + 47.75 + ], + [ + 18.09, + 47.76 + ], + [ + 18.08, + 47.76 + ], + [ + 18.07, + 47.76 + ], + [ + 18.06, + 47.76 + ], + [ + 18.05, + 47.76 + ], + [ + 18.03, + 47.75 + ], + [ + 17.99, + 47.75 + ], + [ + 17.96, + 47.75 + ], + [ + 17.95, + 47.75 + ], + [ + 17.94, + 47.74 + ], + [ + 17.91, + 47.74 + ], + [ + 17.9, + 47.74 + ], + [ + 17.89, + 47.74 + ], + [ + 17.88, + 47.74 + ], + [ + 17.85, + 47.74 + ], + [ + 17.83, + 47.74 + ], + [ + 17.81, + 47.74 + ], + [ + 17.79, + 47.74 + ], + [ + 17.76, + 47.75 + ], + [ + 17.75, + 47.75 + ], + [ + 17.74, + 47.75 + ], + [ + 17.73, + 47.75 + ], + [ + 17.72, + 47.75 + ], + [ + 17.71, + 47.76 + ], + [ + 17.7, + 47.76 + ], + [ + 17.7, + 47.77 + ], + [ + 17.69, + 47.78 + ], + [ + 17.67, + 47.79 + ], + [ + 17.66, + 47.79 + ], + [ + 17.65, + 47.79 + ], + [ + 17.64, + 47.8 + ], + [ + 17.63, + 47.81 + ], + [ + 17.62, + 47.81 + ], + [ + 17.61, + 47.82 + ], + [ + 17.59, + 47.82 + ], + [ + 17.56, + 47.82 + ], + [ + 17.56, + 47.83 + ], + [ + 17.54, + 47.84 + ], + [ + 17.54, + 47.86 + ], + [ + 17.54, + 47.89 + ], + [ + 17.49, + 47.87 + ], + [ + 17.45, + 47.88 + ], + [ + 17.45, + 47.9 + ], + [ + 17.44, + 47.91 + ], + [ + 17.43, + 47.92 + ], + [ + 17.41, + 47.94 + ], + [ + 17.45, + 47.94 + ], + [ + 17.38, + 47.96 + ], + [ + 17.37, + 47.96 + ], + [ + 17.37, + 47.97 + ], + [ + 17.36, + 47.98 + ], + [ + 17.34, + 47.98 + ], + [ + 17.25, + 48.04 + ], + [ + 17.24, + 48.02 + ], + [ + 17.23, + 48.02 + ], + [ + 17.16, + 48.01 + ], + [ + 17.06, + 48.14 + ], + [ + 17.05, + 48.14 + ], + [ + 17.04, + 48.14 + ], + [ + 17.03, + 48.14 + ], + [ + 16.99, + 48.16 + ], + [ + 16.98, + 48.17 + ], + [ + 16.96, + 48.21 + ], + [ + 16.95, + 48.24 + ], + [ + 16.94, + 48.27 + ], + [ + 16.9, + 48.3 + ], + [ + 16.89, + 48.31 + ], + [ + 16.9, + 48.31 + ], + [ + 16.9, + 48.33 + ], + [ + 16.88, + 48.34 + ], + [ + 16.88, + 48.35 + ], + [ + 16.87, + 48.35 + ], + [ + 16.83, + 48.38 + ], + [ + 16.84, + 48.38 + ], + [ + 16.86, + 48.4 + ], + [ + 16.85, + 48.4 + ], + [ + 16.85, + 48.41 + ], + [ + 16.86, + 48.41 + ], + [ + 16.86, + 48.43 + ], + [ + 16.85, + 48.43 + ], + [ + 16.88, + 48.47 + ], + [ + 16.9, + 48.49 + ], + [ + 16.89, + 48.49 + ], + [ + 16.91, + 48.5 + ], + [ + 16.92, + 48.51 + ], + [ + 16.92, + 48.52 + ], + [ + 16.94, + 48.53 + ], + [ + 16.95, + 48.53 + ], + [ + 16.94, + 48.59 + ], + [ + 16.94, + 48.6 + ], + [ + 16.94, + 48.61 + ], + [ + 16.94, + 48.62 + ] + ] + ] + }, + "properties": { + "A3": "SVK" + } + }, + { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + 69.34, + -49.03 + ], + [ + 69.21, + -49.12 + ], + [ + 69.35, + -48.88 + ], + [ + 69.34, + -49.03 + ] + ] + ], + [ + [ + [ + 70.31, + -49.35 + ], + [ + 70.44, + -49.44 + ], + [ + 69.61, + -49.39 + ], + [ + 69.94, + -49.6 + ], + [ + 70.3, + -49.55 + ], + [ + 70.22, + -49.7 + ], + [ + 69.86, + -49.71 + ], + [ + 69.67, + -49.48 + ], + [ + 69.68, + -49.66 + ], + [ + 69.43, + -49.64 + ], + [ + 69.29, + -49.47 + ], + [ + 69.31, + -49.58 + ], + [ + 69.11, + -49.47 + ], + [ + 69.08, + -49.69 + ], + [ + 68.77, + -49.73 + ], + [ + 68.92, + -49.42 + ], + [ + 68.76, + -49.2 + ], + [ + 68.92, + -49.14 + ], + [ + 68.73, + -49.08 + ], + [ + 68.93, + -48.67 + ], + [ + 69.12, + -48.73 + ], + [ + 68.89, + -48.9 + ], + [ + 69.18, + -48.78 + ], + [ + 69, + -48.99 + ], + [ + 69.05, + -49.12 + ], + [ + 69.1, + -48.99 + ], + [ + 69.22, + -49.13 + ], + [ + 69.63, + -48.97 + ], + [ + 69.66, + -49.12 + ], + [ + 69.33, + -49.11 + ], + [ + 69.22, + -49.21 + ], + [ + 69.43, + -49.13 + ], + [ + 69.54, + -49.24 + ], + [ + 69.4, + -49.28 + ], + [ + 69.71, + -49.32 + ], + [ + 70.39, + -49.06 + ], + [ + 70.56, + -49.24 + ], + [ + 70.31, + -49.35 + ] + ] + ] + ] + }, + "properties": { + "A3": "ATF" + } + }, + { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + 100.12, + 6.42 + ], + [ + 100.21, + 6.73 + ], + [ + 100.42, + 6.52 + ], + [ + 100.74, + 6.51 + ], + [ + 100.85, + 6.23 + ], + [ + 101.11, + 6.25 + ], + [ + 100.98, + 5.81 + ], + [ + 101.14, + 5.61 + ], + [ + 101.58, + 5.93 + ], + [ + 101.82, + 5.73 + ], + [ + 101.93, + 5.94 + ], + [ + 101.93, + 5.95 + ], + [ + 101.95, + 5.99 + ], + [ + 101.97, + 6.01 + ], + [ + 102.08, + 6.14 + ], + [ + 102.08, + 6.16 + ], + [ + 102.08, + 6.17 + ], + [ + 102.08, + 6.2 + ], + [ + 102.08, + 6.21 + ], + [ + 102.08, + 6.23 + ], + [ + 102.09, + 6.24 + ], + [ + 102.09, + 6.25 + ], + [ + 102.35, + 6.17 + ], + [ + 102.47, + 5.9 + ], + [ + 103.12, + 5.4 + ], + [ + 103.44, + 4.78 + ], + [ + 103.49, + 4.31 + ], + [ + 103.33, + 3.8 + ], + [ + 103.47, + 3.51 + ], + [ + 103.43, + 2.94 + ], + [ + 103.6, + 2.64 + ], + [ + 103.82, + 2.58 + ], + [ + 104.3, + 1.43 + ], + [ + 104.14, + 1.34 + ], + [ + 103.97, + 1.62 + ], + [ + 104, + 1.43 + ], + [ + 103.73, + 1.46 + ], + [ + 103.51, + 1.27 + ], + [ + 103.38, + 1.53 + ], + [ + 101.29, + 2.84 + ], + [ + 101.39, + 2.99 + ], + [ + 101.3, + 3.25 + ], + [ + 100.73, + 3.86 + ], + [ + 100.71, + 3.99 + ], + [ + 100.87, + 4.03 + ], + [ + 100.56, + 4.31 + ], + [ + 100.66, + 4.68 + ], + [ + 100.36, + 5.09 + ], + [ + 100.35, + 5.97 + ], + [ + 100.12, + 6.42 + ] + ], + [ + [ + 102.61, + 5.09 + ], + [ + 102.56, + 4.96 + ], + [ + 102.74, + 4.85 + ], + [ + 102.61, + 5.09 + ] + ] + ], + [ + [ + [ + 114.08, + 4.59 + ], + [ + 114.16, + 4.57 + ], + [ + 114.17, + 4.57 + ], + [ + 114.65, + 4.01 + ], + [ + 114.88, + 4.37 + ], + [ + 114.77, + 4.72 + ], + [ + 114.99, + 4.87 + ], + [ + 115, + 4.89 + ], + [ + 115.03, + 4.81 + ], + [ + 115.05, + 4.79 + ], + [ + 115.05, + 4.78 + ], + [ + 115.04, + 4.78 + ], + [ + 115.03, + 4.75 + ], + [ + 115.03, + 4.74 + ], + [ + 115.03, + 4.7 + ], + [ + 115.04, + 4.65 + ], + [ + 115.05, + 4.65 + ], + [ + 115.05, + 4.61 + ], + [ + 115.09, + 4.39 + ], + [ + 115.34, + 4.31 + ], + [ + 115.16, + 4.87 + ], + [ + 115.15, + 4.87 + ], + [ + 115.16, + 4.89 + ], + [ + 115.15, + 4.9 + ], + [ + 115.16, + 4.91 + ], + [ + 115.54, + 5.07 + ], + [ + 115.6, + 5.22 + ], + [ + 115.34, + 5.3 + ], + [ + 115.37, + 5.4 + ], + [ + 115.59, + 5.63 + ], + [ + 115.6, + 5.52 + ], + [ + 115.87, + 5.58 + ], + [ + 116.74, + 7.04 + ], + [ + 116.86, + 6.89 + ], + [ + 116.79, + 6.56 + ], + [ + 117.15, + 7.01 + ], + [ + 117.29, + 6.61 + ], + [ + 117.52, + 6.63 + ], + [ + 117.74, + 6.43 + ], + [ + 117.54, + 6.15 + ], + [ + 117.68, + 5.97 + ], + [ + 117.53, + 5.88 + ], + [ + 117.98, + 6.07 + ], + [ + 118.13, + 5.85 + ], + [ + 117.9, + 5.79 + ], + [ + 117.95, + 5.67 + ], + [ + 118.35, + 5.83 + ], + [ + 118.6, + 5.65 + ], + [ + 118.54, + 5.51 + ], + [ + 118.63, + 5.64 + ], + [ + 118.8, + 5.44 + ], + [ + 119.15, + 5.45 + ], + [ + 119.26, + 5.31 + ], + [ + 119.1, + 5.08 + ], + [ + 118.68, + 4.93 + ], + [ + 118.33, + 5.02 + ], + [ + 118.12, + 4.88 + ], + [ + 118.62, + 4.48 + ], + [ + 118.55, + 4.35 + ], + [ + 118, + 4.22 + ], + [ + 117.58, + 4.43 + ], + [ + 117.59, + 4.18 + ], + [ + 117.56, + 4.18 + ], + [ + 117.55, + 4.17 + ], + [ + 117.54, + 4.17 + ], + [ + 117.25, + 4.37 + ], + [ + 116.57, + 4.41 + ], + [ + 116.44, + 4.29 + ], + [ + 116.17, + 4.39 + ], + [ + 116.08, + 4.28 + ], + [ + 115.88, + 4.39 + ], + [ + 115.56, + 3.92 + ], + [ + 115.57, + 3.16 + ], + [ + 115.09, + 2.82 + ], + [ + 115.09, + 2.6 + ], + [ + 115.24, + 2.51 + ], + [ + 114.8, + 2.25 + ], + [ + 114.88, + 1.92 + ], + [ + 114.72, + 1.86 + ], + [ + 114.56, + 1.43 + ], + [ + 113.98, + 1.45 + ], + [ + 113.63, + 1.22 + ], + [ + 112.97, + 1.41 + ], + [ + 113, + 1.58 + ], + [ + 112.5, + 1.58 + ], + [ + 112.21, + 1.45 + ], + [ + 112.15, + 1.14 + ], + [ + 111.83, + 0.99 + ], + [ + 111.22, + 1.09 + ], + [ + 110.58, + 0.85 + ], + [ + 109.66, + 1.62 + ], + [ + 109.54, + 1.92 + ], + [ + 109.65, + 2.08 + ], + [ + 109.68, + 1.86 + ], + [ + 109.91, + 1.69 + ], + [ + 110.29, + 1.71 + ], + [ + 110.32, + 1.59 + ], + [ + 110.34, + 1.81 + ], + [ + 110.73, + 1.55 + ], + [ + 110.7, + 1.43 + ], + [ + 110.7, + 1.42 + ], + [ + 110.7, + 1.43 + ], + [ + 110.79, + 1.58 + ], + [ + 111.16, + 1.37 + ], + [ + 110.99, + 1.57 + ], + [ + 111.18, + 1.63 + ], + [ + 111.09, + 1.76 + ], + [ + 111.21, + 2.09 + ], + [ + 111.44, + 2.13 + ], + [ + 111.16, + 2.16 + ], + [ + 111.23, + 2.43 + ], + [ + 111.49, + 2.36 + ], + [ + 111.43, + 2.7 + ], + [ + 113.03, + 3.18 + ], + [ + 114.08, + 4.59 + ] + ], + [ + [ + 113.92, + 2.67 + ], + [ + 113.84, + 2.5 + ], + [ + 113.99, + 2.62 + ], + [ + 113.92, + 2.67 + ] + ], + [ + [ + 114.5, + 2.77 + ], + [ + 114.43, + 2.57 + ], + [ + 114.63, + 2.72 + ], + [ + 114.5, + 2.77 + ] + ], + [ + [ + 111.92, + 1.23 + ], + [ + 111.8, + 1.16 + ], + [ + 111.93, + 1.13 + ], + [ + 111.92, + 1.23 + ] + ] + ], + [ + [ + [ + 117.9, + 4.17 + ], + [ + 117.68, + 4.17 + ], + [ + 117.68, + 4.26 + ], + [ + 117.9, + 4.17 + ] + ] + ], + [ + [ + [ + 104.21, + 2.8 + ], + [ + 104.12, + 2.74 + ], + [ + 104.16, + 2.89 + ], + [ + 104.21, + 2.8 + ] + ] + ], + [ + [ + [ + 100.18, + 5.45 + ], + [ + 100.35, + 5.42 + ], + [ + 100.28, + 5.26 + ], + [ + 100.18, + 5.45 + ] + ] + ], + [ + [ + [ + 99.84, + 6.47 + ], + [ + 99.91, + 6.33 + ], + [ + 99.73, + 6.26 + ], + [ + 99.64, + 6.44 + ], + [ + 99.84, + 6.47 + ] + ] + ], + [ + [ + [ + 117.06, + 7.13 + ], + [ + 117.06, + 7.29 + ], + [ + 117.28, + 7.35 + ], + [ + 117.26, + 7.19 + ], + [ + 117.06, + 7.13 + ] + ] + ] + ] + }, + "properties": { + "A3": "MYS" + } + }, + { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + -13.3, + 9.04 + ], + [ + -13.08, + 9.05 + ], + [ + -12.88, + 9.29 + ], + [ + -12.87, + 9.29 + ], + [ + -12.79, + 9.31 + ], + [ + -12.78, + 9.32 + ], + [ + -12.77, + 9.34 + ], + [ + -12.75, + 9.36 + ], + [ + -12.75, + 9.4 + ], + [ + -12.74, + 9.4 + ], + [ + -12.69, + 9.41 + ], + [ + -12.68, + 9.41 + ], + [ + -12.68, + 9.43 + ], + [ + -12.66, + 9.49 + ], + [ + -12.65, + 9.53 + ], + [ + -12.65, + 9.54 + ], + [ + -12.63, + 9.56 + ], + [ + -12.62, + 9.6 + ], + [ + -12.59, + 9.6 + ], + [ + -12.58, + 9.64 + ], + [ + -12.44, + 9.88 + ], + [ + -11.21, + 10 + ], + [ + -10.66, + 9.31 + ], + [ + -10.73, + 9.08 + ], + [ + -10.57, + 9.05 + ], + [ + -10.5, + 8.62 + ], + [ + -10.51, + 8.62 + ], + [ + -10.57, + 8.6 + ], + [ + -10.57, + 8.58 + ], + [ + -10.59, + 8.56 + ], + [ + -10.59, + 8.55 + ], + [ + -10.62, + 8.54 + ], + [ + -10.61, + 8.54 + ], + [ + -10.66, + 8.38 + ], + [ + -10.7, + 8.28 + ], + [ + -10.69, + 8.3 + ], + [ + -10.68, + 8.32 + ], + [ + -10.64, + 8.35 + ], + [ + -10.63, + 8.34 + ], + [ + -10.62, + 8.34 + ], + [ + -10.61, + 8.34 + ], + [ + -10.59, + 8.34 + ], + [ + -10.57, + 8.32 + ], + [ + -10.51, + 8.34 + ], + [ + -10.5, + 8.34 + ], + [ + -10.49, + 8.35 + ], + [ + -10.48, + 8.37 + ], + [ + -10.46, + 8.39 + ], + [ + -10.44, + 8.4 + ], + [ + -10.44, + 8.41 + ], + [ + -10.39, + 8.47 + ], + [ + -10.35, + 8.49 + ], + [ + -10.31, + 8.5 + ], + [ + -10.3, + 8.49 + ], + [ + -10.28, + 8.48 + ], + [ + -10.3, + 8.2 + ], + [ + -10.61, + 8.04 + ], + [ + -10.6, + 7.77 + ], + [ + -11.09, + 7.39 + ], + [ + -11.1, + 7.39 + ], + [ + -11.14, + 7.32 + ], + [ + -11.18, + 7.29 + ], + [ + -11.18, + 7.27 + ], + [ + -11.23, + 7.25 + ], + [ + -11.25, + 7.23 + ], + [ + -11.26, + 7.23 + ], + [ + -11.27, + 7.24 + ], + [ + -11.28, + 7.23 + ], + [ + -11.28, + 7.22 + ], + [ + -11.29, + 7.21 + ], + [ + -11.31, + 7.19 + ], + [ + -11.32, + 7.21 + ], + [ + -11.31, + 7.19 + ], + [ + -11.33, + 7.15 + ], + [ + -11.34, + 7.15 + ], + [ + -11.35, + 7.14 + ], + [ + -11.35, + 7.13 + ], + [ + -11.34, + 7.11 + ], + [ + -11.33, + 7.09 + ], + [ + -11.34, + 7.08 + ], + [ + -11.36, + 7.08 + ], + [ + -11.37, + 7.06 + ], + [ + -11.36, + 7.05 + ], + [ + -11.38, + 7.01 + ], + [ + -11.4, + 6.99 + ], + [ + -11.42, + 6.97 + ], + [ + -11.43, + 6.97 + ], + [ + -11.46, + 6.93 + ], + [ + -11.5, + 6.93 + ], + [ + -11.51, + 6.93 + ], + [ + -11.82, + 7.2 + ], + [ + -12.52, + 7.39 + ], + [ + -12.32, + 7.38 + ], + [ + -12.49, + 7.45 + ], + [ + -12.34, + 7.55 + ], + [ + -12.54, + 7.65 + ], + [ + -12.46, + 7.78 + ], + [ + -12.59, + 7.69 + ], + [ + -12.87, + 7.82 + ], + [ + -12.99, + 8.24 + ], + [ + -13.16, + 8.17 + ], + [ + -13.29, + 8.42 + ], + [ + -13.21, + 8.49 + ], + [ + -13.07, + 8.33 + ], + [ + -13.14, + 8.45 + ], + [ + -12.89, + 8.58 + ], + [ + -13.17, + 8.53 + ], + [ + -13.25, + 8.81 + ], + [ + -13.1, + 8.85 + ], + [ + -13.3, + 9.04 + ] + ] + ], + [ + [ + [ + -12.56, + 7.4 + ], + [ + -12.96, + 7.57 + ], + [ + -12.59, + 7.64 + ], + [ + -12.56, + 7.4 + ] + ] + ] + ] + }, + "properties": { + "A3": "SLE" + } + }, + { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + 34.22, + 31.32 + ], + [ + 34.27, + 31.22 + ], + [ + 34.36, + 30.96 + ], + [ + 34.37, + 30.96 + ], + [ + 34.51, + 30.64 + ], + [ + 34.73, + 30.06 + ], + [ + 34.74, + 30.05 + ], + [ + 34.9, + 29.49 + ], + [ + 34.25, + 27.72 + ], + [ + 33.24, + 28.56 + ], + [ + 33.18, + 29 + ], + [ + 32.72, + 29.45 + ], + [ + 32.59, + 30.18 + ], + [ + 32.37, + 30.41 + ], + [ + 32.31, + 31.09 + ], + [ + 32.37, + 31.25 + ], + [ + 32.61, + 31.06 + ], + [ + 32.92, + 31.15 + ], + [ + 32.71, + 31.03 + ], + [ + 33.09, + 31.18 + ], + [ + 33.16, + 31.04 + ], + [ + 33.46, + 31.08 + ], + [ + 33.27, + 31.21 + ], + [ + 33.69, + 31.12 + ], + [ + 34.22, + 31.32 + ] + ] + ], + [ + [ + [ + 36.88, + 22 + ], + [ + 34.08, + 22 + ], + [ + 33.18, + 22 + ], + [ + 31.4, + 22 + ], + [ + 31.47, + 22.14 + ], + [ + 31.49, + 22.15 + ], + [ + 31.5, + 22.17 + ], + [ + 31.71, + 22.35 + ], + [ + 31.89, + 22.31 + ], + [ + 31.96, + 22.72 + ], + [ + 31.77, + 22.58 + ], + [ + 31.51, + 22.73 + ], + [ + 31.69, + 22.43 + ], + [ + 31.35, + 22.11 + ], + [ + 31.35, + 22.1 + ], + [ + 31.3, + 22 + ], + [ + 25, + 22 + ], + [ + 25, + 25.62 + ], + [ + 25, + 29.25 + ], + [ + 24.71, + 30.16 + ], + [ + 25.02, + 30.79 + ], + [ + 24.87, + 31.38 + ], + [ + 25.14, + 31.67 + ], + [ + 25.29, + 31.51 + ], + [ + 25.91, + 31.63 + ], + [ + 27.34, + 31.37 + ], + [ + 27.46, + 31.21 + ], + [ + 27.85, + 31.25 + ], + [ + 27.93, + 31.1 + ], + [ + 28.43, + 31.09 + ], + [ + 29.04, + 30.82 + ], + [ + 29.48, + 30.86 + ], + [ + 29.38, + 30.89 + ], + [ + 30.39, + 31.48 + ], + [ + 30.86, + 31.54 + ], + [ + 30.63, + 31.38 + ], + [ + 30.89, + 31.41 + ], + [ + 31.05, + 31.58 + ], + [ + 30.87, + 31.56 + ], + [ + 31.05, + 31.6 + ], + [ + 31.57, + 31.44 + ], + [ + 31.93, + 31.52 + ], + [ + 32.1, + 31.35 + ], + [ + 31.82, + 31.42 + ], + [ + 31.77, + 31.28 + ], + [ + 32.08, + 31.15 + ], + [ + 32.3, + 31.23 + ], + [ + 32.3, + 30.35 + ], + [ + 32.56, + 30.2 + ], + [ + 32.56, + 29.95 + ], + [ + 32.34, + 29.59 + ], + [ + 32.59, + 29.34 + ], + [ + 32.62, + 28.98 + ], + [ + 33.58, + 27.85 + ], + [ + 33.49, + 27.64 + ], + [ + 33.85, + 27.25 + ], + [ + 33.94, + 26.67 + ], + [ + 35.14, + 24.51 + ], + [ + 35.79, + 23.91 + ], + [ + 35.47, + 23.93 + ], + [ + 35.67, + 22.95 + ], + [ + 35.92, + 22.69 + ], + [ + 36.26, + 22.61 + ], + [ + 36.88, + 22 + ] + ], + [ + [ + 32.83, + 23.32 + ], + [ + 32.62, + 23.16 + ], + [ + 32.54, + 22.76 + ], + [ + 32.31, + 22.63 + ], + [ + 32.27, + 22.8 + ], + [ + 32.06, + 22.8 + ], + [ + 32.04, + 22.63 + ], + [ + 32.17, + 22.71 + ], + [ + 32.34, + 22.5 + ], + [ + 32.75, + 23 + ], + [ + 33.15, + 22.8 + ], + [ + 32.88, + 23.12 + ], + [ + 33, + 23.11 + ], + [ + 32.93, + 23.2 + ], + [ + 33.1, + 23.36 + ], + [ + 32.92, + 23.48 + ], + [ + 33.03, + 23.64 + ], + [ + 32.91, + 24.04 + ], + [ + 32.76, + 23.89 + ], + [ + 32.89, + 23.85 + ], + [ + 32.84, + 23.6 + ], + [ + 32.7, + 23.71 + ], + [ + 32.49, + 23.48 + ], + [ + 32.87, + 23.51 + ], + [ + 32.83, + 23.32 + ] + ], + [ + [ + 30.53, + 23.48 + ], + [ + 30.67, + 23.31 + ], + [ + 30.76, + 23.51 + ], + [ + 30.53, + 23.48 + ] + ] + ] + ] + }, + "properties": { + "A3": "EGY" + } + }, + { + "type": "Feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + 87.81, + 49.17 + ], + [ + 88.17, + 49.29 + ], + [ + 88.22, + 49.48 + ], + [ + 89.15, + 49.5 + ], + [ + 89.19, + 49.63 + ], + [ + 89.72, + 49.73 + ], + [ + 89.59, + 49.91 + ], + [ + 90.67, + 50.21 + ], + [ + 90.92, + 50.42 + ], + [ + 91.41, + 50.46 + ], + [ + 91.4, + 50.46 + ], + [ + 91.79, + 50.72 + ], + [ + 92.27, + 50.73 + ], + [ + 92.35, + 50.88 + ], + [ + 92.65, + 50.71 + ], + [ + 93.01, + 50.79 + ], + [ + 92.96, + 50.67 + ], + [ + 92.23, + 50.43 + ], + [ + 92.55, + 49.99 + ], + [ + 93.42, + 50.26 + ], + [ + 93.16, + 50.35 + ], + [ + 93.31, + 50.37 + ], + [ + 93.06, + 50.62 + ], + [ + 94.25, + 50.58 + ], + [ + 94.55, + 50.12 + ], + [ + 94.55, + 50.11 + ], + [ + 94.57, + 50.09 + ], + [ + 94.61, + 50.04 + ], + [ + 94.99, + 50.05 + ], + [ + 94.97, + 50.04 + ], + [ + 95, + 50.01 + ], + [ + 95.01, + 50.01 + ], + [ + 95.01, + 50 + ], + [ + 95.01, + 49.98 + ], + [ + 95.1, + 49.96 + ], + [ + 95.14, + 49.96 + ], + [ + 95.46, + 49.93 + ], + [ + 95.48, + 49.92 + ], + [ + 95.52, + 49.9 + ], + [ + 95.63, + 49.96 + ], + [ + 95.76, + 50 + ], + [ + 95.77, + 50.02 + ], + [ + 95.84, + 50.04 + ], + [ + 95.87, + 50.04 + ], + [ + 95.88, + 50.03 + ], + [ + 95.89, + 50.03 + ], + [ + 95.9, + 50.03 + ], + [ + 95.91, + 50.01 + ], + [ + 95.96, + 49.98 + ], + [ + 95.97, + 49.97 + ], + [ + 95.99, + 49.97 + ], + [ + 96, + 49.99 + ], + [ + 96.01, + 49.99 + ], + [ + 96.03, + 50 + ], + [ + 96.03, + 50.01 + ], + [ + 96.04, + 50.01 + ], + [ + 96.09, + 50 + ], + [ + 96.13, + 49.99 + ], + [ + 96.22, + 49.98 + ], + [ + 96.23, + 49.98 + ], + [ + 96.25, + 49.98 + ], + [ + 96.26, + 49.97 + ], + [ + 96.27, + 49.97 + ], + [ + 96.28, + 49.96 + ], + [ + 96.29, + 49.96 + ], + [ + 96.3, + 49.95 + ], + [ + 96.31, + 49.94 + ], + [ + 96.33, + 49.95 + ], + [ + 96.38, + 49.9 + ], + [ + 96.39, + 49.89 + ], + [ + 96.41, + 49.88 + ], + [ + 96.45, + 49.89 + ], + [ + 96.46, + 49.91 + ], + [ + 96.5, + 49.93 + ], + [ + 96.52, + 49.94 + ], + [ + 96.53, + 49.94 + ], + [ + 96.56, + 49.93 + ], + [ + 96.57, + 49.92 + ], + [ + 96.58, + 49.91 + ], + [ + 96.59, + 49.88 + ], + [ + 96.6, + 49.88 + ], + [ + 96.6, + 49.87 + ], + [ + 96.65, + 49.9 + ], + [ + 96.68, + 49.91 + ], + [ + 96.72, + 49.92 + ], + [ + 96.8, + 49.91 + ], + [ + 96.82, + 49.91 + ], + [ + 96.84, + 49.9 + ], + [ + 96.85, + 49.9 + ], + [ + 96.89, + 49.9 + ], + [ + 96.9, + 49.9 + ], + [ + 96.91, + 49.89 + ], + [ + 96.94, + 49.89 + ], + [ + 96.95, + 49.89 + ], + [ + 96.96, + 49.89 + ], + [ + 96.98, + 49.89 + ], + [ + 97, + 49.88 + ], + [ + 97, + 49.87 + ], + [ + 97, + 49.85 + ], + [ + 97.01, + 49.83 + ], + [ + 97.02, + 49.83 + ], + [ + 97.04, + 49.83 + ], + [ + 97.06, + 49.83 + ], + [ + 97.07, + 49.82 + ], + [ + 97.11, + 49.82 + ], + [ + 97.12, + 49.82 + ], + [ + 97.13, + 49.8 + ], + [ + 97.18, + 49.78 + ], + [ + 97.18, + 49.77 + ], + [ + 97.24, + 49.75 + ], + [ + 97.26, + 49.75 + ], + [ + 97.33, + 49.75 + ], + [ + 97.33, + 49.76 + ], + [ + 97.34, + 49.76 + ], + [ + 97.37, + 49.78 + ], + [ + 97.51, + 49.82 + ], + [ + 97.53, + 49.84 + ], + [ + 97.54, + 49.84 + ], + [ + 97.56, + 49.85 + ], + [ + 97.58, + 49.86 + ], + [ + 97.58, + 49.87 + ], + [ + 97.58, + 49.88 + ], + [ + 97.58, + 49.89 + ], + [ + 97.57, + 49.91 + ], + [ + 97.58, + 49.91 + ], + [ + 97.56, + 49.92 + ], + [ + 97.57, + 49.93 + ], + [ + 97.58, + 49.94 + ], + [ + 97.62, + 49.94 + ], + [ + 97.63, + 49.95 + ], + [ + 98.07, + 50.04 + ], + [ + 98.31, + 50.46 + ], + [ + 97.82, + 51.01 + ], + [ + 98.05, + 51.45 + ], + [ + 98.77, + 51.91 + ], + [ + 98.78, + 51.92 + ], + [ + 98.78, + 51.94 + ], + [ + 98.93, + 52.15 + ], + [ + 99.8, + 51.92 + ], + [ + 99.91, + 51.74 + ], + [ + 100.59, + 51.73 + ], + [ + 102.12, + 51.36 + ], + [ + 102.3, + 50.68 + ], + [ + 102.65, + 50.4 + ], + [ + 103.24, + 50.32 + ], + [ + 103.26, + 50.19 + ], + [ + 104.14, + 50.14 + ], + [ + 104.39, + 50.31 + ], + [ + 105.35, + 50.48 + ], + [ + 106.07, + 50.35 + ], + [ + 106.08, + 50.34 + ], + [ + 106.82, + 50.3 + ], + [ + 107.14, + 50.04 + ], + [ + 107.15, + 50.04 + ], + [ + 107.15, + 50.02 + ], + [ + 107.16, + 50.02 + ], + [ + 107.18, + 50.01 + ], + [ + 107.2, + 50.01 + ], + [ + 107.21, + 50 + ], + [ + 107.23, + 50 + ], + [ + 107.26, + 49.99 + ], + [ + 107.28, + 50 + ], + [ + 107.35, + 50 + ], + [ + 107.36, + 49.99 + ], + [ + 107.39, + 49.98 + ], + [ + 107.41, + 49.98 + ], + [ + 107.44, + 49.98 + ], + [ + 107.45, + 49.98 + ], + [ + 107.49, + 49.98 + ], + [ + 107.51, + 49.98 + ], + [ + 107.52, + 49.98 + ], + [ + 107.55, + 49.99 + ], + [ + 107.57, + 49.98 + ], + [ + 107.58, + 49.98 + ], + [ + 107.6, + 49.97 + ], + [ + 107.61, + 49.97 + ], + [ + 107.62, + 49.98 + ], + [ + 107.63, + 49.98 + ], + [ + 107.73, + 49.98 + ], + [ + 107.75, + 49.97 + ], + [ + 107.76, + 49.96 + ], + [ + 107.77, + 49.95 + ], + [ + 107.78, + 49.95 + ], + [ + 107.8, + 49.93 + ], + [ + 107.81, + 49.95 + ], + [ + 107.82, + 49.95 + ], + [ + 107.83, + 49.96 + ], + [ + 107.84, + 49.96 + ], + [ + 107.85, + 49.95 + ], + [ + 107.86, + 49.94 + ], + [ + 107.87, + 49.94 + ], + [ + 107.89, + 49.93 + ], + [ + 107.92, + 49.94 + ], + [ + 107.94, + 49.94 + ], + [ + 107.95, + 49.94 + ], + [ + 107.97, + 49.94 + ], + [ + 107.92, + 49.87 + ], + [ + 107.93, + 49.86 + ], + [ + 107.95, + 49.67 + ], + [ + 108.53, + 49.32 + ], + [ + 109.19, + 49.35 + ], + [ + 110.2, + 49.15 + ], + [ + 111.84, + 49.37 + ], + [ + 111.87, + 49.38 + ], + [ + 112.35, + 49.5 + ], + [ + 112.36, + 49.5 + ], + [ + 112.78, + 49.51 + ], + [ + 112.79, + 49.52 + ], + [ + 113.55, + 49.98 + ], + [ + 113.62, + 49.99 + ], + [ + 113.77, + 50.08 + ], + [ + 113.8, + 50.09 + ], + [ + 114.51, + 50.23 + ], + [ + 114.57, + 50.24 + ], + [ + 114.7, + 50.24 + ], + [ + 114.75, + 50.23 + ], + [ + 115.03, + 50.14 + ], + [ + 115.06, + 50.12 + ], + [ + 115.26, + 49.97 + ], + [ + 115.27, + 49.97 + ], + [ + 115.36, + 49.94 + ], + [ + 115.37, + 49.94 + ], + [ + 115.53, + 49.9 + ], + [ + 116.13, + 50.02 + ], + [ + 116.23, + 50.04 + ], + [ + 116.65, + 49.91 + ], + [ + 116.7, + 49.85 + ], + [ + 116.71, + 49.84 + ], + [ + 116.69, + 49.81 + ], + [ + 116.68, + 49.79 + ], + [ + 116.33, + 49.3 + ], + [ + 116.32, + 49.29 + ], + [ + 115.79, + 48.52 + ], + [ + 115.81, + 48.26 + ], + [ + 115.52, + 48.15 + ], + [ + 115.75, + 47.8 + ], + [ + 115.78, + 47.78 + ], + [ + 115.8, + 47.77 + ], + [ + 115.94, + 47.68 + ], + [ + 116.25, + 47.88 + ], + [ + 116.87, + 47.89 + ], + [ + 117.38, + 47.64 + ], + [ + 117.5, + 47.77 + ], + [ + 117.57, + 47.64 + ], + [ + 117.79, + 47.72 + ], + [ + 117.91, + 47.88 + ], + [ + 117.75, + 47.97 + ], + [ + 117.77, + 47.99 + ], + [ + 117.78, + 48 + ], + [ + 118.55, + 47.99 + ], + [ + 119.12, + 47.66 + ], + [ + 119.71, + 47.19 + ], + [ + 119.9, + 46.67 + ], + [ + 119.3, + 46.61 + ], + [ + 118.9, + 46.78 + ], + [ + 118.3, + 46.74 + ], + [ + 117.83, + 46.53 + ], + [ + 117.41, + 46.58 + ], + [ + 117.37, + 46.36 + ], + [ + 116.59, + 46.3 + ], + [ + 116.28, + 45.77 + ], + [ + 115.69, + 45.45 + ], + [ + 114.74, + 45.44 + ], + [ + 114.39, + 45.15 + ], + [ + 114.07, + 44.93 + ], + [ + 113.63, + 44.74 + ], + [ + 112.76, + 44.86 + ], + [ + 112.42, + 45.07 + ], + [ + 111.79, + 44.99 + ], + [ + 111.41, + 44.34 + ], + [ + 111.95, + 43.69 + ], + [ + 111.01, + 43.32 + ], + [ + 110.1, + 42.64 + ], + [ + 108.84, + 42.4 + ], + [ + 107.45, + 42.46 + ], + [ + 105.01, + 41.58 + ], + [ + 104.52, + 41.66 + ], + [ + 104.52, + 41.87 + ], + [ + 103.39, + 41.89 + ], + [ + 102.07, + 42.22 + ], + [ + 101.8, + 42.5 + ], + [ + 100.86, + 42.67 + ], + [ + 99.5, + 42.57 + ], + [ + 97.17, + 42.8 + ], + [ + 96.51, + 42.74 + ], + [ + 96.38, + 42.77 + ], + [ + 96.37, + 42.87 + ], + [ + 96.17, + 43.04 + ], + [ + 96.06, + 43.13 + ], + [ + 95.52, + 44 + ], + [ + 95.32, + 44.03 + ], + [ + 95.41, + 44.29 + ], + [ + 94.73, + 44.34 + ], + [ + 93.5, + 44.97 + ], + [ + 90.88, + 45.19 + ], + [ + 90.67, + 45.55 + ], + [ + 91.02, + 46.02 + ], + [ + 90.89, + 46.31 + ], + [ + 91.05, + 46.72 + ], + [ + 90.27, + 47.69 + ], + [ + 90.26, + 47.69 + ], + [ + 90.06, + 47.89 + ], + [ + 89.76, + 47.83 + ], + [ + 89.55, + 48.04 + ], + [ + 89.06, + 47.99 + ], + [ + 88.59, + 48.25 + ], + [ + 88.59, + 48.31 + ], + [ + 88.57, + 48.35 + ], + [ + 88.57, + 48.36 + ], + [ + 88.57, + 48.37 + ], + [ + 88.56, + 48.37 + ], + [ + 88.55, + 48.37 + ], + [ + 88.53, + 48.37 + ], + [ + 88.52, + 48.37 + ], + [ + 88.51, + 48.4 + ], + [ + 88.5, + 48.4 + ], + [ + 87.97, + 48.57 + ], + [ + 88.09, + 48.71 + ], + [ + 87.74, + 48.87 + ], + [ + 87.81, + 49.17 + ] + ], + [ + [ + 99.13, + 45.68 + ], + [ + 98.95, + 45.58 + ], + [ + 99.23, + 45.51 + ], + [ + 99.13, + 45.68 + ] + ], + [ + [ + 93.25, + 47.81 + ], + [ + 93.47, + 47.56 + ], + [ + 93.61, + 47.64 + ], + [ + 93.25, + 47.81 + ] + ], + [ + [ + 92.57, + 48.31 + ], + [ + 92.55, + 48.07 + ], + [ + 92.83, + 48.22 + ], + [ + 92.57, + 48.31 + ] + ], + [ + [ + 92.24, + 48.37 + ], + [ + 92.31, + 48.14 + ], + [ + 91.95, + 47.99 + ], + [ + 92.07, + 47.74 + ], + [ + 92.44, + 48.03 + ], + [ + 92.5, + 48.31 + ], + [ + 92.24, + 48.37 + ] + ], + [ + [ + 93.13, + 48.2 + ], + [ + 93.01, + 48.03 + ], + [ + 93.23, + 47.96 + ], + [ + 93.43, + 48.21 + ], + [ + 93.13, + 48.2 + ] + ], + [ + [ + 97.36, + 48.89 + ], + [ + 97.14, + 48.81 + ], + [ + 97.51, + 48.8 + ], + [ + 97.36, + 48.89 + ] + ], + [ + [ + 100.37, + 51.43 + ], + [ + 100.15, + 50.5 + ], + [ + 100.46, + 50.55 + ], + [ + 100.75, + 51.04 + ], + [ + 100.81, + 51.38 + ], + [ + 100.59, + 51.62 + ], + [ + 100.37, + 51.43 + ] + ], + [ + [ + 90.92, + 50.21 + ], + [ + 90.97, + 50.08 + ], + [ + 91.14, + 50.11 + ], + [ + 90.92, + 50.21 + ] + ], + [ + [ + 90.53, + 49.59 + ], + [ + 90.4, + 49.5 + ], + [ + 90.6, + 49.38 + ], + [ + 90.73, + 49.55 + ], + [ + 90.53, + 49.59 + ] + ], + [ + [ + 92.86, + 49.34 + ], + [ + 92.79, + 49.24 + ], + [ + 93.3, + 49.12 + ], + [ + 93.36, + 48.95 + ], + [ + 93.8, + 49.1 + ], + [ + 92.86, + 49.34 + ] + ] + ] + }, + "properties": { + "A3": "MNG" + } + }, + { + "type": "Feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + -175.19, + -21.14 + ], + [ + -175.03, + -21.15 + ], + [ + -175.12, + -21.27 + ], + [ + -175.36, + -21.09 + ], + [ + -175.19, + -21.14 + ] + ] + ] + }, + "properties": { + "A3": "TON" + } + }, + { + "type": "Feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + 158.18, + 6.97 + ], + [ + 158.3, + 6.96 + ], + [ + 158.3, + 6.79 + ], + [ + 158.16, + 6.81 + ], + [ + 158.18, + 6.97 + ] + ] + ] + }, + "properties": { + "A3": "FSM" + } + }, + { + "type": "Feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + 38.79, + 33.38 + ], + [ + 38.8, + 33.38 + ], + [ + 39.52, + 33.75 + ], + [ + 39.54, + 33.76 + ], + [ + 39.56, + 33.77 + ], + [ + 40.98, + 34.4 + ], + [ + 41.2, + 34.75 + ], + [ + 41.18, + 34.62 + ], + [ + 41.23, + 34.78 + ], + [ + 41.23, + 34.8 + ], + [ + 41.26, + 34.92 + ], + [ + 41.23, + 34.81 + ], + [ + 41.22, + 35.16 + ], + [ + 41.22, + 35.19 + ], + [ + 41.36, + 35.6 + ], + [ + 41.38, + 35.64 + ], + [ + 41.38, + 35.65 + ], + [ + 41.29, + 36.37 + ], + [ + 41.4, + 36.52 + ], + [ + 41.82, + 36.59 + ], + [ + 42.35, + 37.11 + ], + [ + 42.57, + 37.15 + ], + [ + 42.57, + 37.14 + ], + [ + 42.58, + 37.15 + ], + [ + 42.73, + 37.33 + ], + [ + 42.74, + 37.33 + ], + [ + 43.15, + 37.37 + ], + [ + 43.83, + 37.19 + ], + [ + 44.13, + 37.32 + ], + [ + 44.31, + 36.96 + ], + [ + 44.63, + 37.19 + ], + [ + 44.78, + 37.14 + ], + [ + 44.84, + 36.78 + ], + [ + 45.07, + 36.69 + ], + [ + 45.01, + 36.52 + ], + [ + 45.27, + 36.39 + ], + [ + 45.35, + 35.98 + ], + [ + 45.55, + 36 + ], + [ + 45.76, + 35.8 + ], + [ + 46.34, + 35.82 + ], + [ + 45.97, + 35.58 + ], + [ + 46.19, + 35.11 + ], + [ + 45.92, + 35.08 + ], + [ + 45.92, + 35.07 + ], + [ + 45.65, + 34.72 + ], + [ + 45.74, + 34.54 + ], + [ + 45.53, + 34.6 + ], + [ + 45.44, + 34.46 + ], + [ + 45.58, + 34.15 + ], + [ + 45.41, + 33.98 + ], + [ + 45.61, + 33.8 + ], + [ + 45.62, + 33.8 + ], + [ + 46.19, + 33.26 + ], + [ + 46.1, + 32.98 + ], + [ + 47.39, + 32.46 + ], + [ + 47.82, + 31.68 + ], + [ + 47.75, + 31.54 + ], + [ + 47.68, + 31.39 + ], + [ + 47.68, + 31.24 + ], + [ + 47.73, + 31 + ], + [ + 48.01, + 31 + ], + [ + 48.03, + 30.99 + ], + [ + 48.03, + 30.5 + ], + [ + 48.11, + 30.45 + ], + [ + 48.13, + 30.44 + ], + [ + 48.14, + 30.44 + ], + [ + 48.15, + 30.44 + ], + [ + 48.16, + 30.42 + ], + [ + 48.18, + 30.41 + ], + [ + 48.18, + 30.4 + ], + [ + 48.18, + 30.39 + ], + [ + 48.19, + 30.38 + ], + [ + 48.19, + 30.36 + ], + [ + 48.19, + 30.35 + ], + [ + 48.19, + 30.34 + ], + [ + 48.2, + 30.33 + ], + [ + 48.21, + 30.32 + ], + [ + 48.22, + 30.32 + ], + [ + 48.24, + 30.33 + ], + [ + 48.24, + 30.34 + ], + [ + 48.27, + 30.34 + ], + [ + 48.28, + 30.33 + ], + [ + 48.31, + 30.3 + ], + [ + 48.33, + 30.28 + ], + [ + 48.34, + 30.27 + ], + [ + 48.35, + 30.26 + ], + [ + 48.36, + 30.25 + ], + [ + 48.37, + 30.24 + ], + [ + 48.41, + 30.2 + ], + [ + 48.42, + 30.19 + ], + [ + 48.41, + 30.17 + ], + [ + 48.41, + 30.16 + ], + [ + 48.39, + 30.15 + ], + [ + 48.39, + 30.14 + ], + [ + 48.39, + 30.11 + ], + [ + 48.41, + 30.1 + ], + [ + 48.43, + 30.08 + ], + [ + 48.44, + 30.07 + ], + [ + 48.44, + 30.06 + ], + [ + 48.45, + 30.06 + ], + [ + 48.45, + 30.01 + ], + [ + 48.45, + 30 + ], + [ + 48.46, + 30 + ], + [ + 48.47, + 29.99 + ], + [ + 48.48, + 29.98 + ], + [ + 48.51, + 29.96 + ], + [ + 48.52, + 29.96 + ], + [ + 48.55, + 29.95 + ], + [ + 48.56, + 29.95 + ], + [ + 48.57, + 29.95 + ], + [ + 48.59, + 29.94 + ], + [ + 47.98, + 30.01 + ], + [ + 47.84, + 30.34 + ], + [ + 47.96, + 30.01 + ], + [ + 47.71, + 30.1 + ], + [ + 47.17, + 30.02 + ], + [ + 46.55, + 29.1 + ], + [ + 44.72, + 29.2 + ], + [ + 42.98, + 30.48 + ], + [ + 42.98, + 30.73 + ], + [ + 40, + 32.06 + ], + [ + 39.3, + 32.23 + ], + [ + 39.26, + 32.36 + ], + [ + 39.04, + 32.3 + ], + [ + 38.99, + 32.48 + ], + [ + 39.09, + 32.5 + ], + [ + 39, + 32.75 + ], + [ + 38.79, + 33.38 + ] + ], + [ + [ + 42.13, + 34.38 + ], + [ + 42.1, + 34.28 + ], + [ + 42.4, + 34.2 + ], + [ + 42.42, + 34.34 + ], + [ + 42.13, + 34.38 + ] + ], + [ + [ + 43.77, + 32.69 + ], + [ + 43.48, + 33.03 + ], + [ + 43.49, + 32.62 + ], + [ + 43.81, + 32.53 + ], + [ + 43.89, + 32.68 + ], + [ + 43.77, + 32.69 + ] + ], + [ + [ + 43.4, + 33.36 + ], + [ + 43.46, + 33.2 + ], + [ + 43.59, + 33.27 + ], + [ + 43.4, + 33.36 + ] + ], + [ + [ + 43.51, + 33.87 + ], + [ + 43.11, + 34.36 + ], + [ + 43.06, + 33.98 + ], + [ + 43.23, + 33.72 + ], + [ + 43.48, + 33.69 + ], + [ + 43.51, + 33.87 + ] + ], + [ + [ + 44.98, + 34.27 + ], + [ + 44.98, + 34.13 + ], + [ + 45.13, + 34.11 + ], + [ + 44.98, + 34.27 + ] + ], + [ + [ + 47.29, + 31.95 + ], + [ + 47.22, + 31.88 + ], + [ + 47.37, + 31.88 + ], + [ + 47.29, + 31.95 + ] + ], + [ + [ + 47.38, + 30.71 + ], + [ + 47.5, + 30.55 + ], + [ + 47.53, + 30.68 + ], + [ + 47.38, + 30.71 + ] + ], + [ + [ + 46.71, + 30.9 + ], + [ + 46.41, + 30.79 + ], + [ + 46.76, + 30.76 + ], + [ + 46.71, + 30.9 + ] + ] + ] + }, + "properties": { + "A3": "IRQ" + } + }, + { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + -54.01, + 5.56 + ], + [ + -54.01, + 5.55 + ], + [ + -54.03, + 5.52 + ], + [ + -54.04, + 5.51 + ], + [ + -54.05, + 5.49 + ], + [ + -54.06, + 5.48 + ], + [ + -54.09, + 5.45 + ], + [ + -54.1, + 5.43 + ], + [ + -54.13, + 5.41 + ], + [ + -54.13, + 5.4 + ], + [ + -54.14, + 5.38 + ], + [ + -54.15, + 5.36 + ], + [ + -54.17, + 5.34 + ], + [ + -54.19, + 5.32 + ], + [ + -54.23, + 5.3 + ], + [ + -54.24, + 5.29 + ], + [ + -54.25, + 5.28 + ], + [ + -54.26, + 5.27 + ], + [ + -54.27, + 5.26 + ], + [ + -54.28, + 5.25 + ], + [ + -54.3, + 5.23 + ], + [ + -54.31, + 5.22 + ], + [ + -54.33, + 5.19 + ], + [ + -54.33, + 5.18 + ], + [ + -54.34, + 5.17 + ], + [ + -54.35, + 5.16 + ], + [ + -54.37, + 5.12 + ], + [ + -54.39, + 5.1 + ], + [ + -54.41, + 5.07 + ], + [ + -54.43, + 5.03 + ], + [ + -54.44, + 5.01 + ], + [ + -54.44, + 5 + ], + [ + -54.44, + 4.99 + ], + [ + -54.44, + 4.97 + ], + [ + -54.44, + 4.96 + ], + [ + -54.44, + 4.95 + ], + [ + -54.46, + 4.93 + ], + [ + -54.48, + 4.91 + ], + [ + -54.48, + 4.88 + ], + [ + -54.48, + 4.87 + ], + [ + -54.47, + 4.85 + ], + [ + -54.48, + 4.74 + ], + [ + -54.47, + 4.73 + ], + [ + -54.46, + 4.73 + ], + [ + -54.45, + 4.72 + ], + [ + -54.44, + 4.72 + ], + [ + -54.43, + 4.7 + ], + [ + -54.43, + 4.69 + ], + [ + -54.44, + 4.67 + ], + [ + -54.43, + 4.62 + ], + [ + -54.42, + 4.59 + ], + [ + -54.43, + 4.59 + ], + [ + -54.43, + 4.56 + ], + [ + -54.44, + 4.54 + ], + [ + -54.45, + 4.51 + ], + [ + -54.45, + 4.48 + ], + [ + -54.45, + 4.47 + ], + [ + -54.44, + 4.45 + ], + [ + -54.43, + 4.42 + ], + [ + -54.25, + 3.91 + ], + [ + -54.25, + 3.89 + ], + [ + -54.25, + 3.88 + ], + [ + -54.23, + 3.86 + ], + [ + -54.21, + 3.85 + ], + [ + -54.19, + 3.85 + ], + [ + -54.19, + 3.84 + ], + [ + -54.2, + 3.83 + ], + [ + -54.2, + 3.82 + ], + [ + -54.2, + 3.8 + ], + [ + -54.18, + 3.8 + ], + [ + -54.17, + 3.8 + ], + [ + -54.16, + 3.8 + ], + [ + -54.15, + 3.8 + ], + [ + -54.14, + 3.8 + ], + [ + -54.12, + 3.78 + ], + [ + -54.11, + 3.77 + ], + [ + -54.1, + 3.74 + ], + [ + -54.09, + 3.73 + ], + [ + -54.09, + 3.69 + ], + [ + -54.08, + 3.67 + ], + [ + -54.07, + 3.67 + ], + [ + -54.05, + 3.65 + ], + [ + -54.04, + 3.63 + ], + [ + -54.03, + 3.63 + ], + [ + -54.01, + 3.65 + ], + [ + -54, + 3.64 + ], + [ + -53.98, + 3.61 + ], + [ + -53.98, + 3.6 + ], + [ + -53.98, + 3.59 + ], + [ + -53.99, + 3.58 + ], + [ + -54, + 3.57 + ], + [ + -54, + 3.56 + ], + [ + -54.01, + 3.54 + ], + [ + -54, + 3.53 + ], + [ + -54.01, + 3.51 + ], + [ + -54.01, + 3.48 + ], + [ + -54.01, + 3.46 + ], + [ + -54.02, + 3.45 + ], + [ + -54.01, + 3.43 + ], + [ + -54.02, + 3.42 + ], + [ + -54.03, + 3.41 + ], + [ + -54.03, + 3.4 + ], + [ + -54.05, + 3.39 + ], + [ + -54.06, + 3.39 + ], + [ + -54.05, + 3.37 + ], + [ + -54.06, + 3.36 + ], + [ + -54.07, + 3.32 + ], + [ + -54.09, + 3.29 + ], + [ + -54.21, + 3.15 + ], + [ + -54.21, + 2.78 + ], + [ + -54.6, + 2.33 + ], + [ + -55, + 2.59 + ], + [ + -55.39, + 2.42 + ], + [ + -55.97, + 2.53 + ], + [ + -56.14, + 2.27 + ], + [ + -55.9, + 1.89 + ], + [ + -56.47, + 1.95 + ], + [ + -56.69, + 2.03 + ], + [ + -57.21, + 2.85 + ], + [ + -57.3, + 3.38 + ], + [ + -57.65, + 3.36 + ], + [ + -58.04, + 4 + ], + [ + -57.84, + 4.65 + ], + [ + -57.92, + 4.83 + ], + [ + -57.55, + 5.01 + ], + [ + -57.53, + 5.01 + ], + [ + -57.52, + 5.01 + ], + [ + -57.51, + 4.99 + ], + [ + -57.5, + 4.99 + ], + [ + -57.49, + 4.99 + ], + [ + -57.47, + 4.99 + ], + [ + -57.44, + 4.99 + ], + [ + -57.42, + 4.99 + ], + [ + -57.41, + 4.99 + ], + [ + -57.38, + 5.01 + ], + [ + -57.35, + 5.01 + ], + [ + -57.34, + 5.01 + ], + [ + -57.34, + 5.02 + ], + [ + -57.34, + 5.03 + ], + [ + -57.32, + 5.03 + ], + [ + -57.3, + 5.02 + ], + [ + -57.29, + 5.02 + ], + [ + -57.28, + 5.03 + ], + [ + -57.3, + 5.05 + ], + [ + -57.32, + 5.06 + ], + [ + -57.32, + 5.08 + ], + [ + -57.31, + 5.1 + ], + [ + -57.3, + 5.14 + ], + [ + -57.3, + 5.15 + ], + [ + -57.3, + 5.17 + ], + [ + -57.28, + 5.18 + ], + [ + -57.26, + 5.18 + ], + [ + -57.24, + 5.17 + ], + [ + -57.23, + 5.15 + ], + [ + -57.23, + 5.13 + ], + [ + -57.21, + 5.15 + ], + [ + -57.19, + 5.15 + ], + [ + -57.19, + 5.16 + ], + [ + -57.18, + 5.17 + ], + [ + -57.18, + 5.2 + ], + [ + -57.21, + 5.22 + ], + [ + -57.22, + 5.26 + ], + [ + -57.23, + 5.27 + ], + [ + -57.26, + 5.27 + ], + [ + -57.27, + 5.27 + ], + [ + -57.27, + 5.25 + ], + [ + -57.3, + 5.33 + ], + [ + -57.32, + 5.32 + ], + [ + -57.33, + 5.34 + ], + [ + -57.31, + 5.35 + ], + [ + -57.3, + 5.36 + ], + [ + -57.28, + 5.37 + ], + [ + -57.27, + 5.38 + ], + [ + -57.25, + 5.49 + ], + [ + -57.24, + 5.5 + ], + [ + -57.21, + 5.53 + ], + [ + -57.2, + 5.54 + ], + [ + -57.19, + 5.57 + ], + [ + -57.18, + 5.59 + ], + [ + -57.17, + 5.59 + ], + [ + -57.17, + 5.6 + ], + [ + -57.14, + 5.71 + ], + [ + -57.14, + 5.74 + ], + [ + -57.14, + 5.75 + ], + [ + -57.14, + 5.77 + ], + [ + -56.96, + 6.01 + ], + [ + -55.94, + 5.81 + ], + [ + -55.9, + 5.66 + ], + [ + -55.89, + 5.97 + ], + [ + -55.09, + 5.87 + ], + [ + -55.15, + 5.96 + ], + [ + -54.85, + 6 + ], + [ + -54.04, + 5.84 + ], + [ + -54.01, + 5.56 + ] + ], + [ + [ + -55.15, + 4.63 + ], + [ + -55.22, + 4.57 + ], + [ + -55.06, + 4.5 + ], + [ + -55.02, + 4.68 + ], + [ + -54.93, + 4.59 + ], + [ + -54.96, + 4.83 + ], + [ + -54.84, + 4.77 + ], + [ + -54.84, + 4.92 + ], + [ + -55.13, + 5 + ], + [ + -55.24, + 4.74 + ], + [ + -55.15, + 4.63 + ] + ] + ], + [ + [ + [ + -54.42, + 4.59 + ], + [ + -54.42, + 4.58 + ], + [ + -54.43, + 4.59 + ], + [ + -54.42, + 4.59 + ] + ] + ] + ] + }, + "properties": { + "A3": "SUR" + } + }, + { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + -172.2, + -13.73 + ], + [ + -172.54, + -13.8 + ], + [ + -172.8, + -13.52 + ], + [ + -172.33, + -13.44 + ], + [ + -172.2, + -13.73 + ] + ] + ], + [ + [ + [ + -171.74, + -13.84 + ], + [ + -171.43, + -14.05 + ], + [ + -172.07, + -13.87 + ], + [ + -171.74, + -13.84 + ] + ] + ] + ] + }, + "properties": { + "A3": "WSM" + } + }, + { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + 29.59, + -1.39 + ], + [ + 29.82, + -1.31 + ], + [ + 29.93, + -1.48 + ], + [ + 30.47, + -1.06 + ], + [ + 30.74, + -1.51 + ], + [ + 30.75, + -1.53 + ], + [ + 30.76, + -1.55 + ], + [ + 30.86, + -2.31 + ], + [ + 30.54, + -2.41 + ], + [ + 30.36, + -2.36 + ], + [ + 30.26, + -2.37 + ], + [ + 30.16, + -2.43 + ], + [ + 30.15, + -2.43 + ], + [ + 30.12, + -2.44 + ], + [ + 30.1, + -2.43 + ], + [ + 30.08, + -2.41 + ], + [ + 30.03, + -2.35 + ], + [ + 30.01, + -2.34 + ], + [ + 29.93, + -2.59 + ], + [ + 29.72, + -2.82 + ], + [ + 29.37, + -2.84 + ], + [ + 29.33, + -2.65 + ], + [ + 29.15, + -2.59 + ], + [ + 29.05, + -2.72 + ], + [ + 29.02, + -2.72 + ], + [ + 28.96, + -2.69 + ], + [ + 28.92, + -2.68 + ], + [ + 28.91, + -2.68 + ], + [ + 28.9, + -2.66 + ], + [ + 28.9, + -2.65 + ], + [ + 28.87, + -2.54 + ], + [ + 28.89, + -2.51 + ], + [ + 28.89, + -2.5 + ], + [ + 28.89, + -2.47 + ], + [ + 29.03, + -2.29 + ], + [ + 29.05, + -2.28 + ], + [ + 29.08, + -2.41 + ], + [ + 29.38, + -2.06 + ], + [ + 29.24, + -1.7 + ], + [ + 29.59, + -1.39 + ] + ] + ], + [ + [ + [ + 29.05, + -2.72 + ], + [ + 29.04, + -2.74 + ], + [ + 29.02, + -2.72 + ], + [ + 29.05, + -2.72 + ] + ] + ] + ] + }, + "properties": { + "A3": "RWA" + } + }, + { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + -67.28, + 45.19 + ], + [ + -67.41, + 45.17 + ], + [ + -67.4, + 45.17 + ], + [ + -67.4, + 45.18 + ], + [ + -67.42, + 45.19 + ], + [ + -67.48, + 45.27 + ], + [ + -67.48, + 45.28 + ], + [ + -67.49, + 45.29 + ], + [ + -67.42, + 45.56 + ], + [ + -67.43, + 45.56 + ], + [ + -67.45, + 45.6 + ], + [ + -67.46, + 45.63 + ], + [ + -67.53, + 45.59 + ], + [ + -67.58, + 45.6 + ], + [ + -67.6, + 45.61 + ], + [ + -67.63, + 45.62 + ], + [ + -67.67, + 45.63 + ], + [ + -67.69, + 45.66 + ], + [ + -67.72, + 45.68 + ], + [ + -67.73, + 45.68 + ], + [ + -67.8, + 45.78 + ], + [ + -67.8, + 45.8 + ], + [ + -67.79, + 45.81 + ], + [ + -67.76, + 45.83 + ], + [ + -67.77, + 45.83 + ], + [ + -67.85, + 47.09 + ], + [ + -67.86, + 47.1 + ], + [ + -67.89, + 47.13 + ], + [ + -67.9, + 47.13 + ], + [ + -67.98, + 47.21 + ], + [ + -67.99, + 47.21 + ], + [ + -68.05, + 47.25 + ], + [ + -68.08, + 47.26 + ], + [ + -68.14, + 47.3 + ], + [ + -68.16, + 47.33 + ], + [ + -68.19, + 47.33 + ], + [ + -68.21, + 47.34 + ], + [ + -68.23, + 47.35 + ], + [ + -68.26, + 47.35 + ], + [ + -68.28, + 47.36 + ], + [ + -68.3, + 47.36 + ], + [ + -68.31, + 47.36 + ], + [ + -68.33, + 47.36 + ], + [ + -68.34, + 47.36 + ], + [ + -68.38, + 47.34 + ], + [ + -68.38, + 47.32 + ], + [ + -68.38, + 47.31 + ], + [ + -68.38, + 47.29 + ], + [ + -68.39, + 47.29 + ], + [ + -68.45, + 47.28 + ], + [ + -68.46, + 47.29 + ], + [ + -68.51, + 47.3 + ], + [ + -68.54, + 47.28 + ], + [ + -68.55, + 47.28 + ], + [ + -68.59, + 47.28 + ], + [ + -68.59, + 47.27 + ], + [ + -68.64, + 47.24 + ], + [ + -68.68, + 47.24 + ], + [ + -68.69, + 47.24 + ], + [ + -68.73, + 47.24 + ], + [ + -68.81, + 47.22 + ], + [ + -68.82, + 47.21 + ], + [ + -68.85, + 47.19 + ], + [ + -68.86, + 47.19 + ], + [ + -68.89, + 47.18 + ], + [ + -68.91, + 47.19 + ], + [ + -68.95, + 47.2 + ], + [ + -68.99, + 47.23 + ], + [ + -69, + 47.23 + ], + [ + -69.05, + 47.28 + ], + [ + -69.05, + 47.31 + ], + [ + -69.04, + 47.38 + ], + [ + -69.04, + 47.4 + ], + [ + -69.06, + 47.43 + ], + [ + -69.17, + 47.45 + ], + [ + -69.18, + 47.46 + ], + [ + -69.22, + 47.46 + ], + [ + -69.23, + 47.46 + ], + [ + -69.53, + 47.17 + ], + [ + -69.53, + 47.16 + ], + [ + -70.01, + 46.65 + ], + [ + -70.02, + 46.6 + ], + [ + -70.02, + 46.58 + ], + [ + -70.02, + 46.57 + ], + [ + -70.03, + 46.56 + ], + [ + -70.03, + 46.55 + ], + [ + -70.03, + 46.53 + ], + [ + -70.03, + 46.52 + ], + [ + -70.04, + 46.52 + ], + [ + -70.04, + 46.51 + ], + [ + -70.05, + 46.44 + ], + [ + -70.09, + 46.41 + ], + [ + -70.1, + 46.41 + ], + [ + -70.26, + 46.1 + ], + [ + -70.27, + 46.1 + ], + [ + -70.31, + 46.01 + ], + [ + -70.3, + 46 + ], + [ + -70.25, + 45.95 + ], + [ + -70.24, + 45.95 + ], + [ + -70.26, + 45.89 + ], + [ + -70.27, + 45.89 + ], + [ + -70.27, + 45.88 + ], + [ + -70.62, + 45.61 + ], + [ + -70.62, + 45.4 + ], + [ + -70.8, + 45.43 + ], + [ + -70.88, + 45.23 + ], + [ + -71.01, + 45.35 + ], + [ + -71.19, + 45.25 + ], + [ + -71.44, + 45.24 + ], + [ + -71.5, + 45.03 + ], + [ + -71.5, + 45.02 + ], + [ + -71.56, + 45.01 + ], + [ + -72.21, + 45.01 + ], + [ + -72.29, + 45.14 + ], + [ + -72.25, + 45 + ], + [ + -72.58, + 45.01 + ], + [ + -72.59, + 45.01 + ], + [ + -73.09, + 45.02 + ], + [ + -73.2, + 45.01 + ], + [ + -73.34, + 45.01 + ], + [ + -73.35, + 45.01 + ], + [ + -73.51, + 45.01 + ], + [ + -73.52, + 45.01 + ], + [ + -74.63, + 45 + ], + [ + -74.66, + 45.01 + ], + [ + -74.44, + 45.08 + ], + [ + -74.13, + 45.26 + ], + [ + -74.67, + 45.01 + ], + [ + -74.69, + 45.01 + ], + [ + -74.76, + 45 + ], + [ + -74.76, + 45.01 + ], + [ + -74.88, + 45.04 + ], + [ + -74.99, + 44.98 + ], + [ + -75, + 44.96 + ], + [ + -75.01, + 44.96 + ], + [ + -75.09, + 44.93 + ], + [ + -75.1, + 44.92 + ], + [ + -75.19, + 44.88 + ], + [ + -75.23, + 44.87 + ], + [ + -75.26, + 44.86 + ], + [ + -75.3, + 44.84 + ], + [ + -75.34, + 44.81 + ], + [ + -75.37, + 44.79 + ], + [ + -75.48, + 44.72 + ], + [ + -75.5, + 44.71 + ], + [ + -75.51, + 44.7 + ], + [ + -75.57, + 44.66 + ], + [ + -75.59, + 44.64 + ], + [ + -75.62, + 44.62 + ], + [ + -75.64, + 44.6 + ], + [ + -75.66, + 44.59 + ], + [ + -75.69, + 44.58 + ], + [ + -75.71, + 44.56 + ], + [ + -75.72, + 44.55 + ], + [ + -76, + 44.35 + ], + [ + -76.04, + 44.33 + ], + [ + -76.42, + 44.21 + ], + [ + -76.2, + 44.22 + ], + [ + -76.21, + 44.21 + ], + [ + -76.28, + 44.2 + ], + [ + -76.29, + 44.2 + ], + [ + -76.77, + 44.18 + ], + [ + -77.12, + 43.85 + ], + [ + -77.54, + 43.96 + ], + [ + -77.61, + 44.05 + ], + [ + -79.05, + 43.83 + ], + [ + -79.88, + 43.26 + ], + [ + -79.34, + 43.18 + ], + [ + -79.08, + 43.28 + ], + [ + -79.07, + 43.27 + ], + [ + -79.07, + 43.26 + ], + [ + -79.06, + 43.26 + ], + [ + -79.05, + 43.17 + ], + [ + -79.04, + 43.15 + ], + [ + -79.06, + 43.13 + ], + [ + -79.06, + 43.11 + ], + [ + -79.06, + 43.1 + ], + [ + -79.07, + 43.08 + ], + [ + -79.02, + 43.03 + ], + [ + -79.02, + 43.02 + ], + [ + -79.02, + 43.01 + ], + [ + -79.02, + 43 + ], + [ + -78.99, + 42.98 + ], + [ + -78.98, + 42.97 + ], + [ + -78.91, + 42.9 + ], + [ + -78.91, + 42.89 + ], + [ + -79.78, + 42.84 + ], + [ + -80.2, + 42.79 + ], + [ + -80.49, + 42.57 + ], + [ + -81.47, + 42.6 + ], + [ + -82.53, + 41.92 + ], + [ + -82.62, + 42.05 + ], + [ + -82.92, + 41.99 + ], + [ + -83.13, + 42.1 + ], + [ + -83.12, + 42.13 + ], + [ + -83.11, + 42.26 + ], + [ + -83.11, + 42.27 + ], + [ + -83.09, + 42.29 + ], + [ + -83.08, + 42.3 + ], + [ + -83.06, + 42.32 + ], + [ + -83.04, + 42.32 + ], + [ + -82.98, + 42.33 + ], + [ + -82.97, + 42.34 + ], + [ + -82.47, + 42.29 + ], + [ + -82.41, + 42.47 + ], + [ + -82.63, + 42.56 + ], + [ + -82.61, + 42.55 + ], + [ + -82.59, + 42.55 + ], + [ + -82.57, + 42.57 + ], + [ + -82.57, + 42.58 + ], + [ + -82.52, + 42.61 + ], + [ + -82.51, + 42.65 + ], + [ + -82.51, + 42.67 + ], + [ + -82.5, + 42.7 + ], + [ + -82.49, + 42.71 + ], + [ + -82.48, + 42.75 + ], + [ + -82.47, + 42.76 + ], + [ + -82.47, + 42.77 + ], + [ + -82.47, + 42.78 + ], + [ + -82.47, + 42.79 + ], + [ + -82.48, + 42.8 + ], + [ + -82.48, + 42.83 + ], + [ + -82.47, + 42.84 + ], + [ + -82.47, + 42.89 + ], + [ + -82.47, + 42.9 + ], + [ + -82.46, + 42.92 + ], + [ + -82.45, + 42.93 + ], + [ + -82.44, + 42.95 + ], + [ + -82.42, + 42.96 + ], + [ + -82.42, + 43 + ], + [ + -82.41, + 43.01 + ], + [ + -81.74, + 43.31 + ], + [ + -81.75, + 44.09 + ], + [ + -81.28, + 44.59 + ], + [ + -81.37, + 45 + ], + [ + -81.74, + 45.22 + ], + [ + -81.29, + 45.24 + ], + [ + -81.27, + 45 + ], + [ + -80.97, + 44.96 + ], + [ + -80.95, + 44.58 + ], + [ + -80.68, + 44.73 + ], + [ + -80.09, + 44.47 + ], + [ + -79.97, + 44.65 + ], + [ + -80.11, + 44.83 + ], + [ + -79.66, + 44.75 + ], + [ + -80.09, + 45.07 + ], + [ + -79.8, + 45.15 + ], + [ + -80.07, + 45.18 + ], + [ + -80.22, + 45.27 + ], + [ + -80.2, + 45.34 + ], + [ + -80.1, + 45.24 + ], + [ + -80.01, + 45.34 + ], + [ + -80.2, + 45.34 + ], + [ + -80.77, + 45.95 + ], + [ + -81.67, + 46.06 + ], + [ + -81.83, + 45.97 + ], + [ + -82, + 46.01 + ], + [ + -81.76, + 46.07 + ], + [ + -81.87, + 46.19 + ], + [ + -81.87, + 46.08 + ], + [ + -82.31, + 46.09 + ], + [ + -82.44, + 46.22 + ], + [ + -82.57, + 46.12 + ], + [ + -82.84, + 46.32 + ], + [ + -82.79, + 46.19 + ], + [ + -83.06, + 46.16 + ], + [ + -83.58, + 46.25 + ], + [ + -83.58, + 46.28 + ], + [ + -83.91, + 46.3 + ], + [ + -83.91, + 46.34 + ], + [ + -84.12, + 46.34 + ], + [ + -84.12, + 46.35 + ], + [ + -84.12, + 46.52 + ], + [ + -84.13, + 46.53 + ], + [ + -84.15, + 46.53 + ], + [ + -84.16, + 46.53 + ], + [ + -84.17, + 46.53 + ], + [ + -84.21, + 46.54 + ], + [ + -84.22, + 46.53 + ], + [ + -84.23, + 46.53 + ], + [ + -84.24, + 46.52 + ], + [ + -84.25, + 46.51 + ], + [ + -84.26, + 46.5 + ], + [ + -84.34, + 46.51 + ], + [ + -84.35, + 46.51 + ], + [ + -84.39, + 46.51 + ], + [ + -84.4, + 46.5 + ], + [ + -84.46, + 46.47 + ], + [ + -84.61, + 46.56 + ], + [ + -84.51, + 46.83 + ], + [ + -84.39, + 46.92 + ], + [ + -84.81, + 46.97 + ], + [ + -84.57, + 47.31 + ], + [ + -85.02, + 47.59 + ], + [ + -84.86, + 47.96 + ], + [ + -85.91, + 47.98 + ], + [ + -86.4, + 48.77 + ], + [ + -87.28, + 48.76 + ], + [ + -87.85, + 48.92 + ], + [ + -88.02, + 49.02 + ], + [ + -88.24, + 48.94 + ], + [ + -88.11, + 48.73 + ], + [ + -87.94, + 48.86 + ], + [ + -87.6, + 48.79 + ], + [ + -88.07, + 48.66 + ], + [ + -88.33, + 48.65 + ], + [ + -88.55, + 48.41 + ], + [ + -88.42, + 48.63 + ], + [ + -88.31, + 48.76 + ], + [ + -88.5, + 48.86 + ], + [ + -88.76, + 48.34 + ], + [ + -88.92, + 48.31 + ], + [ + -88.73, + 48.56 + ], + [ + -89.14, + 48.48 + ], + [ + -89.32, + 48.11 + ], + [ + -89.6, + 48.02 + ], + [ + -89.54, + 48.01 + ], + [ + -89.65, + 48.01 + ], + [ + -89.65, + 48 + ], + [ + -89.71, + 48.01 + ], + [ + -89.73, + 48.02 + ], + [ + -89.74, + 48.02 + ], + [ + -89.78, + 48.02 + ], + [ + -89.84, + 48 + ], + [ + -89.87, + 47.99 + ], + [ + -90, + 48.04 + ], + [ + -90.02, + 48.08 + ], + [ + -90.07, + 48.1 + ], + [ + -90.11, + 48.1 + ], + [ + -90.16, + 48.11 + ], + [ + -90.18, + 48.11 + ], + [ + -90.22, + 48.11 + ], + [ + -90.23, + 48.11 + ], + [ + -90.24, + 48.1 + ], + [ + -90.34, + 48.09 + ], + [ + -90.35, + 48.09 + ], + [ + -90.54, + 48.1 + ], + [ + -90.56, + 48.12 + ], + [ + -90.62, + 48.11 + ], + [ + -90.76, + 48.11 + ], + [ + -90.79, + 48.16 + ], + [ + -90.8, + 48.17 + ], + [ + -90.83, + 48.19 + ], + [ + -90.83, + 48.2 + ], + [ + -90.86, + 48.24 + ], + [ + -90.98, + 48.22 + ], + [ + -91, + 48.2 + ], + [ + -91.01, + 48.2 + ], + [ + -91.02, + 48.2 + ], + [ + -91.05, + 48.19 + ], + [ + -91.07, + 48.18 + ], + [ + -91.1, + 48.17 + ], + [ + -91.16, + 48.14 + ], + [ + -91.17, + 48.13 + ], + [ + -91.19, + 48.12 + ], + [ + -91.2, + 48.12 + ], + [ + -91.24, + 48.09 + ], + [ + -91.27, + 48.08 + ], + [ + -91.31, + 48.07 + ], + [ + -91.34, + 48.07 + ], + [ + -91.36, + 48.07 + ], + [ + -91.37, + 48.07 + ], + [ + -91.44, + 48.05 + ], + [ + -91.47, + 48.07 + ], + [ + -91.56, + 48.1 + ], + [ + -91.56, + 48.11 + ], + [ + -91.58, + 48.13 + ], + [ + -91.64, + 48.1 + ], + [ + -91.67, + 48.11 + ], + [ + -91.68, + 48.11 + ], + [ + -91.71, + 48.17 + ], + [ + -91.74, + 48.2 + ], + [ + -91.76, + 48.21 + ], + [ + -91.79, + 48.2 + ], + [ + -91.82, + 48.21 + ], + [ + -91.85, + 48.21 + ], + [ + -91.89, + 48.23 + ], + [ + -91.9, + 48.24 + ], + [ + -91.96, + 48.24 + ], + [ + -91.98, + 48.25 + ], + [ + -92.01, + 48.27 + ], + [ + -92.01, + 48.3 + ], + [ + -92.01, + 48.32 + ], + [ + -92.02, + 48.32 + ], + [ + -91.98, + 48.38 + ], + [ + -92.14, + 48.37 + ], + [ + -92.17, + 48.36 + ], + [ + -92.29, + 48.34 + ], + [ + -92.29, + 48.33 + ], + [ + -92.3, + 48.28 + ], + [ + -92.37, + 48.22 + ], + [ + -92.38, + 48.23 + ], + [ + -92.38, + 48.25 + ], + [ + -92.39, + 48.25 + ], + [ + -92.4, + 48.28 + ], + [ + -92.42, + 48.3 + ], + [ + -92.44, + 48.32 + ], + [ + -92.46, + 48.41 + ], + [ + -92.46, + 48.42 + ], + [ + -92.46, + 48.47 + ], + [ + -92.71, + 48.48 + ], + [ + -92.69, + 48.5 + ], + [ + -92.68, + 48.5 + ], + [ + -92.63, + 48.52 + ], + [ + -92.9, + 48.6 + ], + [ + -92.81, + 48.69 + ], + [ + -93.25, + 48.65 + ], + [ + -93.18, + 48.79 + ], + [ + -93.38, + 48.92 + ], + [ + -93.31, + 48.63 + ], + [ + -93.35, + 48.62 + ], + [ + -93.37, + 48.61 + ], + [ + -93.38, + 48.61 + ], + [ + -93.39, + 48.61 + ], + [ + -93.42, + 48.6 + ], + [ + -93.43, + 48.6 + ], + [ + -93.44, + 48.59 + ], + [ + -93.45, + 48.59 + ], + [ + -93.46, + 48.59 + ], + [ + -93.47, + 48.58 + ], + [ + -93.46, + 48.56 + ], + [ + -93.48, + 48.54 + ], + [ + -93.49, + 48.54 + ], + [ + -93.5, + 48.54 + ], + [ + -93.53, + 48.53 + ], + [ + -93.55, + 48.53 + ], + [ + -93.58, + 48.53 + ], + [ + -93.59, + 48.53 + ], + [ + -93.6, + 48.52 + ], + [ + -93.61, + 48.52 + ], + [ + -93.63, + 48.53 + ], + [ + -93.64, + 48.52 + ], + [ + -93.65, + 48.52 + ], + [ + -93.66, + 48.52 + ], + [ + -93.68, + 48.52 + ], + [ + -93.69, + 48.52 + ], + [ + -93.7, + 48.52 + ], + [ + -93.73, + 48.52 + ], + [ + -93.74, + 48.52 + ], + [ + -93.75, + 48.52 + ], + [ + -93.77, + 48.52 + ], + [ + -93.79, + 48.52 + ], + [ + -93.82, + 48.53 + ], + [ + -93.82, + 48.54 + ], + [ + -93.81, + 48.56 + ], + [ + -93.8, + 48.57 + ], + [ + -93.81, + 48.57 + ], + [ + -93.81, + 48.58 + ], + [ + -93.81, + 48.59 + ], + [ + -93.82, + 48.59 + ], + [ + -93.82, + 48.6 + ], + [ + -93.82, + 48.61 + ], + [ + -93.83, + 48.62 + ], + [ + -93.86, + 48.63 + ], + [ + -93.88, + 48.63 + ], + [ + -93.89, + 48.63 + ], + [ + -93.9, + 48.63 + ], + [ + -93.92, + 48.63 + ], + [ + -93.94, + 48.63 + ], + [ + -93.96, + 48.64 + ], + [ + -93.99, + 48.64 + ], + [ + -94.01, + 48.64 + ], + [ + -94.02, + 48.64 + ], + [ + -94.04, + 48.64 + ], + [ + -94.05, + 48.64 + ], + [ + -94.06, + 48.64 + ], + [ + -94.07, + 48.65 + ], + [ + -94.1, + 48.65 + ], + [ + -94.12, + 48.64 + ], + [ + -94.14, + 48.65 + ], + [ + -94.16, + 48.65 + ], + [ + -94.17, + 48.65 + ], + [ + -94.18, + 48.65 + ], + [ + -94.21, + 48.65 + ], + [ + -94.23, + 48.65 + ], + [ + -94.24, + 48.65 + ], + [ + -94.25, + 48.66 + ], + [ + -94.25, + 48.67 + ], + [ + -94.25, + 48.69 + ], + [ + -94.26, + 48.69 + ], + [ + -94.27, + 48.7 + ], + [ + -94.29, + 48.71 + ], + [ + -94.32, + 48.71 + ], + [ + -94.33, + 48.7 + ], + [ + -94.34, + 48.7 + ], + [ + -94.36, + 48.7 + ], + [ + -94.37, + 48.71 + ], + [ + -94.38, + 48.71 + ], + [ + -94.39, + 48.71 + ], + [ + -94.4, + 48.71 + ], + [ + -94.42, + 48.71 + ], + [ + -94.44, + 48.7 + ], + [ + -94.45, + 48.69 + ], + [ + -94.47, + 48.7 + ], + [ + -94.48, + 48.7 + ], + [ + -94.49, + 48.7 + ], + [ + -94.5, + 48.7 + ], + [ + -94.51, + 48.7 + ], + [ + -94.53, + 48.7 + ], + [ + -94.58, + 48.72 + ], + [ + -94.59, + 48.72 + ], + [ + -94.6, + 48.72 + ], + [ + -94.62, + 48.74 + ], + [ + -94.65, + 48.75 + ], + [ + -94.65, + 48.76 + ], + [ + -94.67, + 48.77 + ], + [ + -94.68, + 48.77 + ], + [ + -94.69, + 48.78 + ], + [ + -94.69, + 48.79 + ], + [ + -94.7, + 48.8 + ], + [ + -94.7, + 48.81 + ], + [ + -94.7, + 48.83 + ], + [ + -94.61, + 48.94 + ], + [ + -94.11, + 49.15 + ], + [ + -94.39, + 49.29 + ], + [ + -94.57, + 49.01 + ], + [ + -94.77, + 49.18 + ], + [ + -94.51, + 49.18 + ], + [ + -94.53, + 49.3 + ], + [ + -94.86, + 49.33 + ], + [ + -94.89, + 49.34 + ], + [ + -94.88, + 49.38 + ], + [ + -94.79, + 49.42 + ], + [ + -94.71, + 49.55 + ], + [ + -94.96, + 49.37 + ], + [ + -94.99, + 49.37 + ], + [ + -95.1, + 49.36 + ], + [ + -95.14, + 49.38 + ], + [ + -95.15, + 49.38 + ], + [ + -95.15, + 49.17 + ], + [ + -95.3, + 49 + ], + [ + -98.79, + 49 + ], + [ + -98.8, + 49 + ], + [ + -99.88, + 49 + ], + [ + -99.89, + 49 + ], + [ + -99.98, + 49 + ], + [ + -100.15, + 49 + ], + [ + -100.16, + 49 + ], + [ + -100.23, + 49 + ], + [ + -100.24, + 49 + ], + [ + -100.32, + 49 + ], + [ + -100.33, + 49 + ], + [ + -100.35, + 49 + ], + [ + -100.37, + 49 + ], + [ + -100.46, + 49 + ], + [ + -107.45, + 49 + ], + [ + -109.86, + 49 + ], + [ + -112.01, + 49 + ], + [ + -112.02, + 49 + ], + [ + -113.69, + 49 + ], + [ + -113.9, + 49 + ], + [ + -113.91, + 49 + ], + [ + -116.5, + 49 + ], + [ + -119.43, + 49 + ], + [ + -119.45, + 49 + ], + [ + -121.07, + 49 + ], + [ + -121.09, + 49 + ], + [ + -121.46, + 49 + ], + [ + -122.76, + 49 + ], + [ + -123.04, + 49 + ], + [ + -123.09, + 49 + ], + [ + -123.26, + 49.27 + ], + [ + -122.84, + 49.29 + ], + [ + -122.88, + 49.47 + ], + [ + -122.96, + 49.3 + ], + [ + -123.27, + 49.33 + ], + [ + -123.14, + 49.71 + ], + [ + -123.54, + 49.38 + ], + [ + -123.96, + 49.51 + ], + [ + -124.07, + 49.64 + ], + [ + -124.03, + 49.74 + ], + [ + -123.97, + 49.77 + ], + [ + -123.91, + 49.75 + ], + [ + -123.76, + 49.48 + ], + [ + -123.79, + 49.6 + ], + [ + -123.52, + 49.71 + ], + [ + -123.8, + 49.62 + ], + [ + -123.72, + 49.79 + ], + [ + -123.84, + 49.69 + ], + [ + -123.89, + 49.75 + ], + [ + -123.95, + 49.78 + ], + [ + -123.87, + 49.92 + ], + [ + -123.97, + 49.98 + ], + [ + -123.74, + 50.09 + ], + [ + -123.77, + 50.21 + ], + [ + -123.99, + 50.21 + ], + [ + -123.8, + 50.09 + ], + [ + -124.01, + 50 + ], + [ + -123.92, + 49.83 + ], + [ + -124.04, + 49.93 + ], + [ + -124.27, + 49.74 + ], + [ + -124.81, + 50.01 + ], + [ + -124.67, + 49.96 + ], + [ + -124.81, + 50.08 + ], + [ + -124.59, + 50.24 + ], + [ + -124.74, + 50.33 + ], + [ + -124.36, + 50.49 + ], + [ + -124.83, + 50.31 + ], + [ + -125.01, + 50.45 + ], + [ + -125.08, + 50.33 + ], + [ + -124.82, + 50.93 + ], + [ + -125.11, + 50.43 + ], + [ + -125.37, + 50.57 + ], + [ + -125.59, + 50.45 + ], + [ + -125.47, + 50.72 + ], + [ + -125.71, + 50.42 + ], + [ + -125.72, + 50.53 + ], + [ + -126.28, + 50.52 + ], + [ + -125.94, + 50.64 + ], + [ + -126.3, + 50.63 + ], + [ + -125.73, + 50.66 + ], + [ + -125.59, + 51.09 + ], + [ + -125.71, + 50.72 + ], + [ + -126.18, + 50.67 + ], + [ + -126.01, + 50.8 + ], + [ + -126.19, + 50.78 + ], + [ + -126.17, + 50.88 + ], + [ + -126.57, + 50.83 + ], + [ + -126.19, + 50.92 + ], + [ + -126.52, + 51.04 + ], + [ + -126.66, + 50.87 + ], + [ + -126.84, + 50.91 + ], + [ + -126.64, + 50.93 + ], + [ + -126.78, + 51.02 + ], + [ + -126.85, + 50.95 + ], + [ + -126.81, + 51.04 + ], + [ + -126.9, + 50.89 + ], + [ + -127.07, + 51.01 + ], + [ + -127.2, + 50.92 + ], + [ + -126.9, + 50.89 + ], + [ + -127.02, + 50.82 + ], + [ + -127.52, + 51 + ], + [ + -127.5, + 51.1 + ], + [ + -127.21, + 50.95 + ], + [ + -127.19, + 51.02 + ], + [ + -127.24, + 51 + ], + [ + -127.32, + 51.04 + ], + [ + -126.77, + 51.07 + ], + [ + -126.7, + 50.99 + ], + [ + -126.66, + 51.2 + ], + [ + -126.8, + 51.08 + ], + [ + -126.85, + 51.08 + ], + [ + -126.82, + 51.1 + ], + [ + -127.16, + 51.05 + ], + [ + -127.34, + 51.06 + ], + [ + -127.34, + 51.04 + ], + [ + -127.47, + 51.09 + ], + [ + -127.14, + 51.06 + ], + [ + -127.55, + 51.13 + ], + [ + -126.92, + 51.19 + ], + [ + -127.79, + 51.16 + ], + [ + -127.06, + 51.35 + ], + [ + -127.78, + 51.32 + ], + [ + -127.57, + 51.47 + ], + [ + -127.25, + 51.41 + ], + [ + -127.56, + 51.48 + ], + [ + -127.25, + 51.68 + ], + [ + -127.45, + 51.66 + ], + [ + -127.36, + 51.87 + ], + [ + -127.78, + 51.52 + ], + [ + -127.88, + 51.9 + ], + [ + -127.15, + 52.32 + ], + [ + -126.67, + 51.96 + ], + [ + -126.96, + 52.31 + ], + [ + -126.77, + 52.39 + ], + [ + -127.22, + 52.39 + ], + [ + -126.92, + 52.71 + ], + [ + -127.08, + 52.88 + ], + [ + -126.96, + 52.72 + ], + [ + -127.33, + 52.43 + ], + [ + -127.63, + 52.61 + ], + [ + -127.49, + 52.34 + ], + [ + -127.75, + 52.27 + ], + [ + -127.72, + 52.36 + ], + [ + -127.88, + 52.2 + ], + [ + -127.93, + 52.35 + ], + [ + -127.87, + 52.36 + ], + [ + -127.84, + 52.34 + ], + [ + -127.93, + 52.44 + ], + [ + -127.87, + 52.5 + ], + [ + -127.71, + 52.45 + ], + [ + -127.89, + 52.5 + ], + [ + -127.95, + 52.45 + ], + [ + -127.88, + 52.37 + ], + [ + -127.94, + 52.36 + ], + [ + -127.98, + 52.31 + ], + [ + -127.96, + 52.48 + ], + [ + -128.03, + 52.32 + ], + [ + -128.05, + 52.65 + ], + [ + -128.36, + 52.27 + ], + [ + -128.11, + 52.76 + ], + [ + -127.83, + 52.73 + ], + [ + -128.13, + 52.77 + ], + [ + -128.03, + 52.92 + ], + [ + -128.44, + 52.82 + ], + [ + -128.41, + 53.09 + ], + [ + -128.85, + 53.27 + ], + [ + -128.99, + 53.54 + ], + [ + -128.47, + 53.32 + ], + [ + -128.48, + 53.43 + ], + [ + -128.16, + 53.46 + ], + [ + -127.87, + 53.25 + ], + [ + -128.11, + 53.5 + ], + [ + -128.54, + 53.43 + ], + [ + -128.77, + 53.55 + ], + [ + -128.81, + 53.77 + ], + [ + -128.48, + 53.83 + ], + [ + -128.71, + 53.88 + ], + [ + -128.61, + 54.03 + ], + [ + -129.3, + 53.65 + ], + [ + -129.28, + 53.36 + ], + [ + -130.07, + 53.89 + ], + [ + -130.05, + 54.15 + ], + [ + -129.55, + 54.22 + ], + [ + -130.28, + 54.2 + ], + [ + -130.15, + 54.28 + ], + [ + -130.33, + 54.44 + ], + [ + -130.49, + 54.36 + ], + [ + -130.45, + 54.63 + ], + [ + -129.98, + 54.3 + ], + [ + -129.98, + 54.51 + ], + [ + -130.11, + 54.42 + ], + [ + -130.39, + 54.65 + ], + [ + -129.9, + 54.62 + ], + [ + -130.22, + 54.72 + ], + [ + -130.18, + 54.85 + ], + [ + -129.66, + 54.97 + ], + [ + -129.99, + 55.06 + ], + [ + -129.46, + 55.47 + ], + [ + -129.7, + 55.41 + ], + [ + -129.81, + 55.63 + ], + [ + -129.78, + 55.36 + ], + [ + -130.11, + 54.98 + ], + [ + -129.94, + 55.29 + ], + [ + -130.14, + 55.75 + ], + [ + -130.01, + 55.91 + ], + [ + -130.1, + 56.12 + ], + [ + -130.45, + 56.21 + ], + [ + -131.85, + 56.65 + ], + [ + -131.85, + 56.66 + ], + [ + -133.64, + 58.57 + ], + [ + -134.96, + 59.28 + ], + [ + -135.4, + 59.76 + ], + [ + -135.44, + 59.78 + ], + [ + -136.35, + 59.6 + ], + [ + -136.58, + 59.17 + ], + [ + -136.83, + 59.16 + ], + [ + -137.45, + 58.91 + ], + [ + -137.96, + 59.43 + ], + [ + -137.77, + 59.48 + ], + [ + -138.02, + 59.46 + ], + [ + -139.2, + 60.09 + ], + [ + -139.07, + 60.35 + ], + [ + -139.69, + 60.34 + ], + [ + -139.98, + 60.18 + ], + [ + -141, + 60.31 + ], + [ + -141, + 61.66 + ], + [ + -141, + 61.74 + ], + [ + -141, + 62.24 + ], + [ + -141, + 62.6 + ], + [ + -141, + 62.61 + ], + [ + -141, + 64.68 + ], + [ + -141, + 67.41 + ], + [ + -141, + 69.64 + ], + [ + -139.11, + 69.5 + ], + [ + -138.61, + 69.23 + ], + [ + -138.27, + 69.18 + ], + [ + -138.39, + 69.3 + ], + [ + -137.21, + 68.93 + ], + [ + -134.98, + 68.63 + ], + [ + -135.65, + 68.88 + ], + [ + -135.22, + 68.93 + ], + [ + -135.85, + 69.3 + ], + [ + -135.51, + 69.18 + ], + [ + -135.61, + 69.33 + ], + [ + -135.15, + 69.25 + ], + [ + -135.3, + 69.42 + ], + [ + -135.09, + 69.33 + ], + [ + -135.06, + 69.47 + ], + [ + -134.47, + 69.44 + ], + [ + -134.49, + 69.71 + ], + [ + -133.75, + 69.52 + ], + [ + -134.31, + 69.14 + ], + [ + -133.57, + 69.39 + ], + [ + -132.98, + 69.36 + ], + [ + -132.93, + 69.64 + ], + [ + -132, + 69.7 + ], + [ + -131.41, + 69.96 + ], + [ + -131.2, + 69.8 + ], + [ + -130.94, + 70.09 + ], + [ + -130.4, + 70.15 + ], + [ + -130.14, + 70.01 + ], + [ + -129.67, + 70.25 + ], + [ + -129.53, + 69.99 + ], + [ + -130.94, + 69.53 + ], + [ + -131.05, + 69.62 + ], + [ + -132.01, + 69.52 + ], + [ + -132.33, + 69.23 + ], + [ + -132.51, + 69.28 + ], + [ + -132.49, + 69.14 + ], + [ + -132.53, + 69.13 + ], + [ + -132.6, + 69.27 + ], + [ + -132.87, + 69.21 + ], + [ + -132.93, + 69.12 + ], + [ + -132.85, + 69.09 + ], + [ + -132.92, + 69.07 + ], + [ + -132.87, + 68.96 + ], + [ + -132.94, + 69.07 + ], + [ + -133.31, + 68.99 + ], + [ + -133.5, + 68.79 + ], + [ + -132.93, + 68.67 + ], + [ + -133.41, + 68.84 + ], + [ + -132.46, + 68.79 + ], + [ + -132.52, + 68.9 + ], + [ + -132.8, + 68.83 + ], + [ + -132.52, + 68.99 + ], + [ + -132.77, + 68.93 + ], + [ + -132.87, + 68.97 + ], + [ + -132.89, + 69.05 + ], + [ + -132.83, + 69.07 + ], + [ + -132.73, + 69.04 + ], + [ + -132.58, + 69.12 + ], + [ + -132.56, + 69.07 + ], + [ + -132.57, + 69.1 + ], + [ + -132.47, + 69.14 + ], + [ + -132.45, + 69.22 + ], + [ + -132.49, + 69.09 + ], + [ + -132.32, + 69.22 + ], + [ + -132.13, + 69.15 + ], + [ + -131.73, + 69.37 + ], + [ + -131.99, + 69.39 + ], + [ + -131.45, + 69.43 + ], + [ + -131.6, + 69.29 + ], + [ + -131.39, + 69.44 + ], + [ + -131.43, + 69.3 + ], + [ + -131.29, + 69.5 + ], + [ + -131.37, + 69.29 + ], + [ + -131.25, + 69.57 + ], + [ + -131.23, + 69.3 + ], + [ + -131.1, + 69.59 + ], + [ + -130.95, + 69.11 + ], + [ + -130.34, + 69.68 + ], + [ + -129.14, + 69.84 + ], + [ + -128.98, + 69.66 + ], + [ + -128.39, + 69.94 + ], + [ + -128.21, + 69.85 + ], + [ + -128.33, + 70.13 + ], + [ + -127.8, + 70.04 + ], + [ + -128.14, + 70.16 + ], + [ + -127.23, + 70.15 + ], + [ + -128.06, + 70.28 + ], + [ + -128.01, + 70.57 + ], + [ + -127.17, + 70.23 + ], + [ + -126.54, + 69.65 + ], + [ + -125.55, + 69.32 + ], + [ + -125.16, + 69.42 + ], + [ + -125.64, + 69.41 + ], + [ + -125.14, + 69.48 + ], + [ + -125.39, + 69.68 + ], + [ + -124.79, + 69.71 + ], + [ + -125.3, + 69.81 + ], + [ + -124.64, + 69.98 + ], + [ + -125.22, + 70.01 + ], + [ + -124.69, + 70.07 + ], + [ + -124.39, + 69.98 + ], + [ + -124.51, + 69.71 + ], + [ + -124.03, + 69.68 + ], + [ + -124.39, + 69.64 + ], + [ + -124.38, + 69.33 + ], + [ + -123.38, + 69.4 + ], + [ + -122.98, + 69.83 + ], + [ + -121.88, + 69.82 + ], + [ + -120, + 69.35 + ], + [ + -117.07, + 68.88 + ], + [ + -115.89, + 68.81 + ], + [ + -116.33, + 68.96 + ], + [ + -115.92, + 69.01 + ], + [ + -114.97, + 68.87 + ], + [ + -113.89, + 68.4 + ], + [ + -114, + 68.24 + ], + [ + -115.02, + 68.29 + ], + [ + -114.72, + 68.18 + ], + [ + -115.25, + 68.19 + ], + [ + -115.09, + 68.01 + ], + [ + -115.72, + 67.91 + ], + [ + -115.16, + 67.79 + ], + [ + -112.99, + 67.67 + ], + [ + -111.97, + 67.75 + ], + [ + -111.91, + 67.63 + ], + [ + -111.9, + 67.76 + ], + [ + -111.06, + 67.76 + ], + [ + -110.04, + 68.01 + ], + [ + -109.7, + 67.72 + ], + [ + -109.02, + 67.72 + ], + [ + -108.83, + 67.35 + ], + [ + -108.66, + 67.64 + ], + [ + -108.47, + 67.35 + ], + [ + -108.38, + 67.45 + ], + [ + -107.96, + 67.28 + ], + [ + -107.85, + 67.04 + ], + [ + -108.6, + 67.16 + ], + [ + -108.54, + 67.06 + ], + [ + -107.13, + 66.33 + ], + [ + -107.79, + 66.78 + ], + [ + -107.62, + 67.08 + ], + [ + -107.56, + 66.84 + ], + [ + -107.43, + 66.99 + ], + [ + -107.07, + 66.82 + ], + [ + -107.43, + 67.06 + ], + [ + -107, + 67.14 + ], + [ + -107.52, + 67.21 + ], + [ + -108.02, + 67.78 + ], + [ + -107.67, + 68.05 + ], + [ + -106.69, + 68.1 + ], + [ + -106.59, + 68.26 + ], + [ + -106.26, + 68.18 + ], + [ + -106.43, + 68.34 + ], + [ + -105.73, + 68.41 + ], + [ + -105.62, + 68.64 + ], + [ + -106.59, + 68.53 + ], + [ + -106.52, + 68.29 + ], + [ + -106.93, + 68.43 + ], + [ + -107.22, + 68.26 + ], + [ + -107.81, + 68.35 + ], + [ + -107.56, + 68.17 + ], + [ + -108.03, + 68.12 + ], + [ + -108.4, + 68.14 + ], + [ + -108.33, + 68.35 + ], + [ + -108.81, + 68.27 + ], + [ + -108.26, + 68.63 + ], + [ + -106.18, + 68.95 + ], + [ + -105.45, + 68.75 + ], + [ + -105.48, + 68.42 + ], + [ + -104.96, + 68.22 + ], + [ + -104.57, + 68.25 + ], + [ + -104.48, + 68.02 + ], + [ + -103.43, + 68.17 + ], + [ + -102.19, + 67.68 + ], + [ + -101.95, + 67.8 + ], + [ + -101.52, + 67.68 + ], + [ + -99.74, + 67.86 + ], + [ + -98.99, + 67.68 + ], + [ + -98.7, + 67.81 + ], + [ + -98.3, + 67.77 + ], + [ + -98.65, + 68.13 + ], + [ + -98.12, + 67.74 + ], + [ + -97.64, + 67.58 + ], + [ + -97.2, + 67.66 + ], + [ + -97.19, + 67.64 + ], + [ + -97.41, + 67.59 + ], + [ + -97.43, + 67.57 + ], + [ + -97.15, + 67.44 + ], + [ + -97.12, + 67.46 + ], + [ + -97.42, + 67.58 + ], + [ + -97.17, + 67.63 + ], + [ + -97.14, + 67.68 + ], + [ + -97.01, + 67.67 + ], + [ + -97.2, + 67.95 + ], + [ + -97.97, + 67.99 + ], + [ + -98.09, + 67.84 + ], + [ + -98.68, + 68.4 + ], + [ + -97.68, + 68.36 + ], + [ + -97.84, + 68.56 + ], + [ + -97.47, + 68.41 + ], + [ + -97.58, + 68.51 + ], + [ + -97.3, + 68.51 + ], + [ + -96.57, + 68.18 + ], + [ + -96.37, + 68.32 + ], + [ + -96.64, + 68.09 + ], + [ + -96.84, + 68.12 + ], + [ + -96.67, + 67.99 + ], + [ + -95.87, + 68.3 + ], + [ + -96.13, + 67.63 + ], + [ + -96.31, + 67.71 + ], + [ + -96.72, + 67.24 + ], + [ + -96.44, + 67.52 + ], + [ + -96.31, + 67.41 + ], + [ + -96.07, + 67.48 + ], + [ + -96.24, + 67.24 + ], + [ + -95.55, + 67.39 + ], + [ + -95.83, + 67.16 + ], + [ + -95.29, + 67.27 + ], + [ + -95.32, + 67.11 + ], + [ + -95.13, + 67.3 + ], + [ + -95.7, + 67.73 + ], + [ + -95.47, + 68.06 + ], + [ + -94.86, + 68.01 + ], + [ + -93.15, + 68.68 + ], + [ + -93.75, + 68.62 + ], + [ + -93.85, + 69.02 + ], + [ + -94.07, + 68.76 + ], + [ + -94.62, + 68.75 + ], + [ + -94.58, + 68.98 + ], + [ + -93.99, + 69.16 + ], + [ + -94.29, + 69.16 + ], + [ + -94.27, + 69.32 + ], + [ + -93.51, + 69.44 + ], + [ + -93.86, + 69.26 + ], + [ + -93.83, + 69.16 + ], + [ + -93.32, + 69.39 + ], + [ + -93.57, + 69.37 + ], + [ + -93.42, + 69.48 + ], + [ + -93.52, + 69.54 + ], + [ + -94.28, + 69.44 + ], + [ + -94.52, + 69.73 + ], + [ + -94.82, + 69.56 + ], + [ + -95.75, + 69.74 + ], + [ + -96.5, + 70.13 + ], + [ + -96.22, + 70.57 + ], + [ + -95.57, + 70.47 + ], + [ + -96.04, + 70.61 + ], + [ + -95.74, + 70.72 + ], + [ + -96.15, + 70.62 + ], + [ + -96.57, + 70.78 + ], + [ + -96.46, + 71.27 + ], + [ + -96.03, + 71.42 + ], + [ + -95.51, + 71.29 + ], + [ + -95.17, + 71.52 + ], + [ + -95.9, + 71.61 + ], + [ + -94.58, + 71.86 + ], + [ + -95.23, + 71.85 + ], + [ + -94.67, + 72 + ], + [ + -94.4, + 71.67 + ], + [ + -94.18, + 71.8 + ], + [ + -93.68, + 71.77 + ], + [ + -92.95, + 71.35 + ], + [ + -93, + 70.85 + ], + [ + -91.51, + 70.18 + ], + [ + -92.02, + 70.13 + ], + [ + -92.28, + 70.28 + ], + [ + -92.58, + 70.08 + ], + [ + -91.93, + 70.02 + ], + [ + -92.85, + 69.71 + ], + [ + -92.51, + 69.71 + ], + [ + -92.66, + 69.66 + ], + [ + -93, + 69.69 + ], + [ + -92.65, + 69.66 + ], + [ + -92.47, + 69.7 + ], + [ + -92.26, + 69.67 + ], + [ + -91.75, + 69.47 + ], + [ + -91.49, + 69.66 + ], + [ + -91.17, + 69.65 + ], + [ + -91.63, + 69.52 + ], + [ + -90.98, + 69.53 + ], + [ + -91.3, + 69.41 + ], + [ + -90.69, + 69.55 + ], + [ + -90.34, + 69.47 + ], + [ + -90.71, + 69.46 + ], + [ + -90.86, + 69.25 + ], + [ + -91.43, + 69.36 + ], + [ + -90.43, + 68.88 + ], + [ + -90.59, + 68.46 + ], + [ + -90.27, + 68.23 + ], + [ + -89.31, + 69.25 + ], + [ + -88.22, + 68.92 + ], + [ + -87.79, + 68.32 + ], + [ + -87.92, + 68.2 + ], + [ + -88.33, + 68.32 + ], + [ + -88.41, + 68.01 + ], + [ + -87.29, + 67.1 + ], + [ + -87.05, + 67.26 + ], + [ + -86.84, + 67.16 + ], + [ + -87.07, + 67.35 + ], + [ + -86.51, + 67.33 + ], + [ + -85.62, + 68.74 + ], + [ + -84.7, + 68.73 + ], + [ + -85.19, + 68.86 + ], + [ + -84.51, + 69.01 + ], + [ + -85.39, + 69.21 + ], + [ + -85.26, + 69.78 + ], + [ + -85.55, + 69.86 + ], + [ + -85.03, + 69.76 + ], + [ + -84.41, + 69.86 + ], + [ + -83.34, + 69.66 + ], + [ + -82.56, + 69.7 + ], + [ + -82.21, + 69.64 + ], + [ + -82.76, + 69.58 + ], + [ + -82.44, + 69.49 + ], + [ + -83.26, + 69.55 + ], + [ + -82.62, + 69.47 + ], + [ + -82.26, + 69.21 + ], + [ + -81.67, + 69.27 + ], + [ + -81.24, + 69.09 + ], + [ + -82.05, + 68.9 + ], + [ + -82.05, + 68.81 + ], + [ + -82.31, + 68.93 + ], + [ + -82.18, + 68.74 + ], + [ + -82.71, + 68.7 + ], + [ + -82.57, + 68.54 + ], + [ + -82.18, + 68.56 + ], + [ + -81.79, + 68.91 + ], + [ + -81.2, + 68.76 + ], + [ + -81.94, + 68.41 + ], + [ + -82, + 68.54 + ], + [ + -82.63, + 68.5 + ], + [ + -82, + 68.34 + ], + [ + -82.49, + 68.31 + ], + [ + -82.25, + 68.12 + ], + [ + -81.98, + 68.21 + ], + [ + -82.08, + 67.91 + ], + [ + -81.19, + 67.45 + ], + [ + -81.46, + 67 + ], + [ + -82.11, + 66.95 + ], + [ + -82.12, + 66.71 + ], + [ + -82.42, + 66.74 + ], + [ + -82.58, + 66.56 + ], + [ + -83.55, + 66.34 + ], + [ + -83.99, + 66.63 + ], + [ + -83.9, + 66.91 + ], + [ + -84.22, + 66.71 + ], + [ + -84.61, + 66.99 + ], + [ + -84.32, + 66.96 + ], + [ + -84.87, + 67.05 + ], + [ + -84.6, + 66.97 + ], + [ + -85.2, + 66.87 + ], + [ + -84.56, + 66.93 + ], + [ + -83.67, + 66.18 + ], + [ + -84.48, + 66.41 + ], + [ + -84.34, + 66.15 + ], + [ + -85.11, + 66.34 + ], + [ + -85.21, + 66.26 + ], + [ + -85.43, + 66.6 + ], + [ + -85.92, + 66.48 + ], + [ + -86.74, + 66.54 + ], + [ + -86.62, + 66.32 + ], + [ + -85.86, + 66.16 + ], + [ + -87.34, + 65.32 + ], + [ + -88.02, + 65.34 + ], + [ + -88.84, + 65.65 + ], + [ + -88.39, + 65.63 + ], + [ + -89.82, + 65.99 + ], + [ + -89.71, + 65.83 + ], + [ + -90, + 65.89 + ], + [ + -89.98, + 65.89 + ], + [ + -90, + 65.89 + ], + [ + -90.46, + 65.88 + ], + [ + -89.68, + 65.72 + ], + [ + -89.05, + 65.33 + ], + [ + -87.01, + 65.24 + ], + [ + -86.97, + 65.05 + ], + [ + -88.11, + 64.14 + ], + [ + -88.62, + 64.12 + ], + [ + -88.34, + 64.09 + ], + [ + -88.76, + 63.96 + ], + [ + -89.22, + 64.11 + ], + [ + -89.22, + 63.95 + ], + [ + -89.46, + 64.11 + ], + [ + -89.51, + 63.97 + ], + [ + -89.71, + 64.03 + ], + [ + -89.74, + 64.26 + ], + [ + -89.79, + 64.14 + ], + [ + -90, + 64.21 + ], + [ + -89.82, + 63.92 + ], + [ + -90.24, + 64.01 + ], + [ + -89.96, + 63.79 + ], + [ + -90.27, + 63.75 + ], + [ + -90.22, + 63.6 + ], + [ + -90.75, + 63.61 + ], + [ + -90.64, + 63.49 + ], + [ + -91.68, + 63.79 + ], + [ + -92.14, + 63.73 + ], + [ + -93.34, + 63.97 + ], + [ + -93.81, + 64.22 + ], + [ + -93.53, + 63.98 + ], + [ + -94.1, + 64 + ], + [ + -94.03, + 63.91 + ], + [ + -93.33, + 63.81 + ], + [ + -93.36, + 63.97 + ], + [ + -92.24, + 63.74 + ], + [ + -92.47, + 63.51 + ], + [ + -91.73, + 63.71 + ], + [ + -91.38, + 63.47 + ], + [ + -90.67, + 63.34 + ], + [ + -90.75, + 62.93 + ], + [ + -91.35, + 62.79 + ], + [ + -92.42, + 62.82 + ], + [ + -91.83, + 62.61 + ], + [ + -92.04, + 62.53 + ], + [ + -92.07, + 62.53 + ], + [ + -92.65, + 62.63 + ], + [ + -92.7, + 62.49 + ], + [ + -92.28, + 62.42 + ], + [ + -92.81, + 62.41 + ], + [ + -92.64, + 62.27 + ], + [ + -93.08, + 62.33 + ], + [ + -92.92, + 62.25 + ], + [ + -93.28, + 62.18 + ], + [ + -92.96, + 62.1 + ], + [ + -93.1, + 61.98 + ], + [ + -93.45, + 62.05 + ], + [ + -93.21, + 61.93 + ], + [ + -93.64, + 61.96 + ], + [ + -93.59, + 61.81 + ], + [ + -93.21, + 61.77 + ], + [ + -93.67, + 61.75 + ], + [ + -93.29, + 61.73 + ], + [ + -93.88, + 61.54 + ], + [ + -94.06, + 61.4 + ], + [ + -93.81, + 61.34 + ], + [ + -94.13, + 61.32 + ], + [ + -94.13, + 61.16 + ], + [ + -94.11, + 61.12 + ], + [ + -94.53, + 60.54 + ], + [ + -94.82, + 60.54 + ], + [ + -94.61, + 60.38 + ], + [ + -94.86, + 59.05 + ], + [ + -94.43, + 58.7 + ], + [ + -94.22, + 58.79 + ], + [ + -94.26, + 58.39 + ], + [ + -94.21, + 58.79 + ], + [ + -93.17, + 58.73 + ], + [ + -92.42, + 57.33 + ], + [ + -92.71, + 56.95 + ], + [ + -93.12, + 56.92 + ], + [ + -92.7, + 56.93 + ], + [ + -92.2, + 57.07 + ], + [ + -92.26, + 56.99 + ], + [ + -91.13, + 57.25 + ], + [ + -90.63, + 57.24 + ], + [ + -89.95, + 57 + ], + [ + -88.86, + 56.86 + ], + [ + -87.97, + 56.47 + ], + [ + -87.67, + 55.97 + ], + [ + -85.9, + 55.66 + ], + [ + -85.19, + 55.26 + ], + [ + -82.71, + 55.21 + ], + [ + -82.32, + 55.06 + ], + [ + -82.32, + 55.15 + ], + [ + -82.19, + 54.81 + ], + [ + -82.46, + 54.2 + ], + [ + -82.11, + 53.81 + ], + [ + -82.1, + 53.29 + ], + [ + -82.35, + 52.94 + ], + [ + -81.53, + 52.44 + ], + [ + -81.44, + 52.23 + ], + [ + -81.71, + 52.23 + ], + [ + -80.99, + 52.01 + ], + [ + -80.39, + 51.34 + ], + [ + -79.78, + 51.13 + ], + [ + -79.71, + 51.25 + ], + [ + -79.44, + 51.21 + ], + [ + -79.74, + 51.33 + ], + [ + -79.36, + 51.66 + ], + [ + -78.98, + 51.46 + ], + [ + -78.85, + 51.15 + ], + [ + -78.87, + 51.35 + ], + [ + -78.73, + 51.32 + ], + [ + -78.83, + 51.57 + ], + [ + -78.64, + 51.55 + ], + [ + -79.04, + 51.76 + ], + [ + -78.63, + 51.98 + ], + [ + -78.56, + 52.23 + ], + [ + -78.17, + 52.23 + ], + [ + -78.58, + 52.25 + ], + [ + -78.51, + 52.47 + ], + [ + -78.87, + 52.74 + ], + [ + -78.7, + 52.88 + ], + [ + -78.99, + 53.01 + ], + [ + -78.9, + 53.4 + ], + [ + -79.14, + 53.49 + ], + [ + -78.89, + 53.56 + ], + [ + -79.16, + 53.71 + ], + [ + -78.88, + 53.81 + ], + [ + -79.15, + 53.95 + ], + [ + -78.97, + 53.99 + ], + [ + -79.18, + 54.08 + ], + [ + -79.06, + 54.16 + ], + [ + -79.39, + 54.18 + ], + [ + -79.51, + 54.36 + ], + [ + -79.03, + 54.37 + ], + [ + -79.29, + 54.43 + ], + [ + -79.01, + 54.49 + ], + [ + -79.5, + 54.41 + ], + [ + -79.54, + 54.62 + ], + [ + -79.76, + 54.63 + ], + [ + -77.62, + 55.28 + ], + [ + -77.79, + 55.27 + ], + [ + -76.7, + 55.98 + ], + [ + -76.66, + 56.17 + ], + [ + -75.9, + 56.13 + ], + [ + -76.34, + 56.35 + ], + [ + -76.12, + 56.41 + ], + [ + -76.36, + 56.55 + ], + [ + -76.48, + 56.16 + ], + [ + -76.67, + 56.19 + ], + [ + -76.55, + 57.1 + ], + [ + -77.2, + 58 + ], + [ + -76.99, + 58.02 + ], + [ + -78.6, + 58.68 + ], + [ + -78.6, + 58.8 + ], + [ + -78.35, + 58.69 + ], + [ + -78.54, + 58.78 + ], + [ + -78.54, + 58.95 + ], + [ + -78.51, + 58.84 + ], + [ + -78.29, + 58.93 + ], + [ + -78.25, + 59.11 + ], + [ + -78.08, + 59.09 + ], + [ + -78.13, + 59.21 + ], + [ + -77.89, + 59.16 + ], + [ + -78.02, + 59.25 + ], + [ + -77.64, + 59.37 + ], + [ + -77.93, + 59.39 + ], + [ + -77.89, + 59.51 + ], + [ + -77.32, + 59.45 + ], + [ + -77.81, + 59.71 + ], + [ + -77.06, + 59.56 + ], + [ + -77.57, + 59.69 + ], + [ + -77.19, + 60 + ], + [ + -77.64, + 60.06 + ], + [ + -77.44, + 60.12 + ], + [ + -77.78, + 60.39 + ], + [ + -77.58, + 60.54 + ], + [ + -77.26, + 60.5 + ], + [ + -77.84, + 60.64 + ], + [ + -77.49, + 60.85 + ], + [ + -78.23, + 60.78 + ], + [ + -77.71, + 61.19 + ], + [ + -77.59, + 61.61 + ], + [ + -78, + 61.71 + ], + [ + -78.19, + 62.26 + ], + [ + -77.51, + 62.58 + ], + [ + -75.56, + 62.27 + ], + [ + -75.89, + 62.16 + ], + [ + -75.34, + 62.32 + ], + [ + -74.53, + 62.09 + ], + [ + -74.71, + 62.25 + ], + [ + -73.71, + 62.48 + ], + [ + -72.95, + 62.12 + ], + [ + -72.61, + 62.11 + ], + [ + -72.79, + 61.83 + ], + [ + -72.59, + 61.78 + ], + [ + -72.58, + 61.95 + ], + [ + -72.2, + 61.87 + ], + [ + -71.98, + 61.66 + ], + [ + -72.27, + 61.56 + ], + [ + -71.96, + 61.59 + ], + [ + -71.94, + 61.71 + ], + [ + -71.55, + 61.62 + ], + [ + -71.87, + 61.43 + ], + [ + -71.57, + 61.4 + ], + [ + -71.92, + 61.4 + ], + [ + -71.58, + 61.16 + ], + [ + -70.73, + 61.01 + ], + [ + -70.13, + 61.09 + ], + [ + -69.9, + 60.8 + ], + [ + -69.5, + 61.07 + ], + [ + -69.36, + 60.81 + ], + [ + -69.81, + 60.52 + ], + [ + -69.64, + 60.06 + ], + [ + -71.22, + 60.05 + ], + [ + -69.54, + 59.87 + ], + [ + -69.81, + 59.3 + ], + [ + -69.24, + 59.33 + ], + [ + -69.53, + 59.16 + ], + [ + -69.45, + 58.89 + ], + [ + -69.65, + 58.79 + ], + [ + -69.84, + 59.06 + ], + [ + -69.79, + 58.83 + ], + [ + -70.29, + 58.76 + ], + [ + -69.91, + 58.79 + ], + [ + -69.81, + 58.58 + ], + [ + -69.25, + 58.9 + ], + [ + -68.35, + 58.78 + ], + [ + -68.33, + 58.12 + ], + [ + -69.03, + 57.9 + ], + [ + -68.39, + 58.03 + ], + [ + -68.01, + 58.58 + ], + [ + -67.85, + 58.31 + ], + [ + -68.11, + 58.08 + ], + [ + -67.86, + 58.23 + ], + [ + -67.74, + 58.47 + ], + [ + -67.7, + 57.92 + ], + [ + -67.58, + 58.23 + ], + [ + -67.18, + 58.4 + ], + [ + -67.06, + 58.27 + ], + [ + -66.94, + 58.51 + ], + [ + -66.85, + 58.41 + ], + [ + -66.62, + 58.47 + ], + [ + -66.38, + 58.86 + ], + [ + -65.93, + 58.62 + ], + [ + -65.96, + 58.4 + ], + [ + -65.83, + 58.6 + ], + [ + -66.1, + 58.79 + ], + [ + -65.76, + 58.85 + ], + [ + -66, + 58.91 + ], + [ + -65.87, + 59.02 + ], + [ + -65.66, + 58.93 + ], + [ + -65.69, + 59.06 + ], + [ + -65.37, + 58.91 + ], + [ + -65.59, + 59.06 + ], + [ + -65.31, + 59.05 + ], + [ + -65.75, + 59.18 + ], + [ + -65.72, + 59.29 + ], + [ + -65.47, + 59.14 + ], + [ + -65.63, + 59.41 + ], + [ + -65.31, + 59.24 + ], + [ + -65.51, + 59.48 + ], + [ + -64.91, + 59.37 + ], + [ + -65.39, + 59.5 + ], + [ + -65.54, + 59.75 + ], + [ + -65.14, + 59.97 + ], + [ + -65, + 59.9 + ], + [ + -65.14, + 60.07 + ], + [ + -64.92, + 59.93 + ], + [ + -64.85, + 60.37 + ], + [ + -64.42, + 60.27 + ], + [ + -64.82, + 60.24 + ], + [ + -64.39, + 60.23 + ], + [ + -64.7, + 60.02 + ], + [ + -64.36, + 60.13 + ], + [ + -64.48, + 59.89 + ], + [ + -64.17, + 60.04 + ], + [ + -64.3, + 59.95 + ], + [ + -64.13, + 59.9 + ], + [ + -64.17, + 59.78 + ], + [ + -64.06, + 59.87 + ], + [ + -63.94, + 59.76 + ], + [ + -64.13, + 59.69 + ], + [ + -64.2, + 59.77 + ], + [ + -64.11, + 59.78 + ], + [ + -64.22, + 59.78 + ], + [ + -64.25, + 59.8 + ], + [ + -64.24, + 59.71 + ], + [ + -64.09, + 59.68 + ], + [ + -63.93, + 59.69 + ], + [ + -63.99, + 59.65 + ], + [ + -63.91, + 59.67 + ], + [ + -63.95, + 59.64 + ], + [ + -64.04, + 59.64 + ], + [ + -64.13, + 59.52 + ], + [ + -64, + 59.63 + ], + [ + -63.86, + 59.58 + ], + [ + -63.98, + 59.5 + ], + [ + -63.72, + 59.51 + ], + [ + -64.07, + 59.39 + ], + [ + -63.7, + 59.37 + ], + [ + -64.01, + 59.23 + ], + [ + -63.64, + 59.36 + ], + [ + -63.64, + 59.21 + ], + [ + -63.36, + 59.2 + ], + [ + -64.07, + 59.02 + ], + [ + -63.14, + 59.05 + ], + [ + -63.34, + 58.86 + ], + [ + -63.18, + 58.76 + ], + [ + -63.02, + 58.9 + ], + [ + -63.09, + 58.66 + ], + [ + -62.85, + 58.7 + ], + [ + -63.16, + 58.51 + ], + [ + -63.47, + 58.55 + ], + [ + -63.61, + 58.29 + ], + [ + -63.28, + 58.47 + ], + [ + -63.17, + 58.36 + ], + [ + -62.56, + 58.48 + ], + [ + -62.96, + 58.19 + ], + [ + -62.59, + 58.2 + ], + [ + -63.41, + 57.97 + ], + [ + -62.45, + 58.17 + ], + [ + -62.55, + 58.05 + ], + [ + -62.32, + 58.02 + ], + [ + -62.67, + 57.92 + ], + [ + -61.94, + 57.91 + ], + [ + -61.94, + 57.78 + ], + [ + -62.17, + 57.83 + ], + [ + -61.89, + 57.63 + ], + [ + -62.54, + 57.48 + ], + [ + -61.9, + 57.41 + ], + [ + -61.79, + 57.24 + ], + [ + -62.05, + 57.2 + ], + [ + -61.64, + 57.24 + ], + [ + -61.73, + 57.16 + ], + [ + -61.36, + 57.1 + ], + [ + -61.36, + 56.95 + ], + [ + -61.39, + 56.98 + ], + [ + -61.54, + 56.97 + ], + [ + -61.69, + 56.8 + ], + [ + -61.93, + 56.81 + ], + [ + -61.67, + 56.62 + ], + [ + -62.52, + 56.79 + ], + [ + -62.09, + 56.84 + ], + [ + -62.61, + 56.8 + ], + [ + -61.64, + 56.53 + ], + [ + -62.01, + 56.52 + ], + [ + -62.23, + 56.46 + ], + [ + -61.58, + 56.28 + ], + [ + -62.05, + 56.22 + ], + [ + -61.33, + 56.23 + ], + [ + -61.51, + 56.07 + ], + [ + -61.25, + 56.06 + ], + [ + -61.54, + 56.01 + ], + [ + -61.07, + 55.93 + ], + [ + -61.53, + 55.88 + ], + [ + -60.73, + 55.84 + ], + [ + -60.91, + 55.72 + ], + [ + -60.6, + 55.81 + ], + [ + -60.68, + 55.54 + ], + [ + -60.33, + 55.78 + ], + [ + -60.61, + 55.51 + ], + [ + -60.45, + 55.63 + ], + [ + -60.52, + 55.34 + ], + [ + -60.34, + 55.49 + ], + [ + -60.2, + 55.42 + ], + [ + -61, + 55.04 + ], + [ + -60.69, + 54.98 + ], + [ + -60.03, + 55.27 + ], + [ + -60.38, + 54.95 + ], + [ + -59.78, + 55.33 + ], + [ + -59.96, + 55.09 + ], + [ + -59.42, + 55.16 + ], + [ + -59.93, + 54.74 + ], + [ + -59.15, + 55.23 + ], + [ + -59.37, + 54.95 + ], + [ + -59.03, + 55.15 + ], + [ + -58.95, + 54.83 + ], + [ + -58.4, + 54.73 + ], + [ + -57.94, + 54.93 + ], + [ + -58, + 54.79 + ], + [ + -57.84, + 54.81 + ], + [ + -58.2, + 54.75 + ], + [ + -57.33, + 54.58 + ], + [ + -57.75, + 54.48 + ], + [ + -57.41, + 54.46 + ], + [ + -57.6, + 54.38 + ], + [ + -58.93, + 54.14 + ], + [ + -59.5, + 54.03 + ], + [ + -58.38, + 54.23 + ], + [ + -58.62, + 54.04 + ], + [ + -60.12, + 53.77 + ], + [ + -60.03, + 53.44 + ], + [ + -60.4, + 53.34 + ], + [ + -59.11, + 53.67 + ], + [ + -58.85, + 53.95 + ], + [ + -57.79, + 54.06 + ], + [ + -58.33, + 54.09 + ], + [ + -58.36, + 54.2 + ], + [ + -57.47, + 54.2 + ], + [ + -57.07, + 53.81 + ], + [ + -57.53, + 53.58 + ], + [ + -57.32, + 53.59 + ], + [ + -57.37, + 53.43 + ], + [ + -57.02, + 53.71 + ], + [ + -56.48, + 53.79 + ], + [ + -56.73, + 53.68 + ], + [ + -56.26, + 53.6 + ], + [ + -56.49, + 53.51 + ], + [ + -56.18, + 53.6 + ], + [ + -55.96, + 53.54 + ], + [ + -56.29, + 53.56 + ], + [ + -55.74, + 53.25 + ], + [ + -55.89, + 53.02 + ], + [ + -56.2, + 53.05 + ], + [ + -56.15, + 52.94 + ], + [ + -55.86, + 52.99 + ], + [ + -55.81, + 52.83 + ], + [ + -56.21, + 52.84 + ], + [ + -55.77, + 52.69 + ], + [ + -55.9, + 52.64 + ], + [ + -55.74, + 52.66 + ], + [ + -55.86, + 52.6 + ], + [ + -56.29, + 52.72 + ], + [ + -55.84, + 52.58 + ], + [ + -56.54, + 52.6 + ], + [ + -56.03, + 52.51 + ], + [ + -55.63, + 52.44 + ], + [ + -55.81, + 52.34 + ], + [ + -56.24, + 52.45 + ], + [ + -55.71, + 52.29 + ], + [ + -55.71, + 52.08 + ], + [ + -56.79, + 51.52 + ], + [ + -56.87, + 51.6 + ], + [ + -56.96, + 51.42 + ], + [ + -57.44, + 51.54 + ], + [ + -57.7, + 51.42 + ], + [ + -57.59, + 51.68 + ], + [ + -58, + 51.31 + ], + [ + -57.83, + 51.5 + ], + [ + -58.07, + 51.29 + ], + [ + -58.07, + 51.5 + ], + [ + -58.17, + 51.28 + ], + [ + -58.27, + 51.39 + ], + [ + -58.29, + 51.26 + ], + [ + -58.63, + 51.27 + ], + [ + -58.91, + 50.95 + ], + [ + -59.04, + 51.01 + ], + [ + -59.01, + 50.74 + ], + [ + -59.26, + 50.76 + ], + [ + -60.04, + 50.22 + ], + [ + -60.29, + 50.22 + ], + [ + -60.27, + 50.35 + ], + [ + -60.32, + 50.22 + ], + [ + -60.85, + 50.29 + ], + [ + -61.7, + 50.13 + ], + [ + -62.8, + 50.3 + ], + [ + -63.4, + 50.2 + ], + [ + -63.76, + 50.33 + ], + [ + -65.96, + 50.31 + ], + [ + -66.11, + 50.19 + ], + [ + -66.45, + 50.27 + ], + [ + -66.45, + 50.13 + ], + [ + -66.71, + 50.13 + ], + [ + -67.15, + 49.81 + ], + [ + -67.37, + 49.32 + ], + [ + -68.13, + 49.27 + ], + [ + -68.33, + 49.19 + ], + [ + -68.19, + 49.1 + ], + [ + -68.46, + 49.04 + ], + [ + -68.37, + 49.14 + ], + [ + -68.73, + 48.91 + ], + [ + -69.05, + 48.79 + ], + [ + -69.69, + 48.14 + ], + [ + -71.25, + 48.45 + ], + [ + -69.71, + 48.1 + ], + [ + -70.23, + 47.49 + ], + [ + -70.5, + 47.44 + ], + [ + -70.72, + 47.11 + ], + [ + -71.21, + 46.82 + ], + [ + -71.69, + 46.67 + ], + [ + -71.88, + 46.69 + ], + [ + -72.2, + 46.55 + ], + [ + -72.99, + 46.2 + ], + [ + -73.21, + 45.98 + ], + [ + -72.67, + 46.19 + ], + [ + -71.87, + 46.66 + ], + [ + -71.63, + 46.64 + ], + [ + -70.49, + 47.01 + ], + [ + -69.43, + 48 + ], + [ + -68.17, + 48.64 + ], + [ + -66.65, + 49.11 + ], + [ + -65.37, + 49.25 + ], + [ + -64.24, + 48.9 + ], + [ + -64.16, + 48.75 + ], + [ + -64.57, + 48.84 + ], + [ + -64.17, + 48.63 + ], + [ + -64.32, + 48.42 + ], + [ + -65.33, + 48 + ], + [ + -65.91, + 48.21 + ], + [ + -66.95, + 47.95 + ], + [ + -66.36, + 48.07 + ], + [ + -65.76, + 47.86 + ], + [ + -65.65, + 47.6 + ], + [ + -65.19, + 47.82 + ], + [ + -64.8, + 47.8 + ], + [ + -64.96, + 47.29 + ], + [ + -65.37, + 47.07 + ], + [ + -64.84, + 47.08 + ], + [ + -65, + 46.8 + ], + [ + -64.87, + 46.64 + ], + [ + -64.72, + 46.69 + ], + [ + -64.61, + 46.26 + ], + [ + -64.34, + 46.23 + ], + [ + -63.81, + 46.1 + ], + [ + -64.1, + 46.02 + ], + [ + -63.65, + 45.81 + ], + [ + -63.25, + 45.8 + ], + [ + -63.4, + 45.76 + ], + [ + -63.28, + 45.7 + ], + [ + -62.77, + 45.77 + ], + [ + -62.75, + 45.6 + ], + [ + -62.62, + 45.69 + ], + [ + -62.5, + 45.58 + ], + [ + -61.94, + 45.89 + ], + [ + -61.87, + 45.68 + ], + [ + -61.49, + 45.69 + ], + [ + -61.39, + 45.58 + ], + [ + -61.25, + 45.52 + ], + [ + -61.5, + 45.35 + ], + [ + -60.96, + 45.32 + ], + [ + -61.48, + 45.18 + ], + [ + -61.82, + 45.25 + ], + [ + -61.65, + 45.09 + ], + [ + -62, + 45.14 + ], + [ + -61.98, + 44.98 + ], + [ + -62.44, + 44.85 + ], + [ + -62.56, + 44.94 + ], + [ + -62.54, + 44.79 + ], + [ + -62.88, + 44.82 + ], + [ + -62.84, + 44.7 + ], + [ + -63.14, + 44.79 + ], + [ + -63.09, + 44.69 + ], + [ + -63.15, + 44.78 + ], + [ + -63.45, + 44.59 + ], + [ + -63.66, + 44.73 + ], + [ + -63.52, + 44.5 + ], + [ + -63.65, + 44.43 + ], + [ + -63.94, + 44.51 + ], + [ + -63.89, + 44.69 + ], + [ + -64.07, + 44.47 + ], + [ + -64.3, + 44.57 + ], + [ + -64.26, + 44.27 + ], + [ + -64.55, + 44.41 + ], + [ + -64.35, + 44.28 + ], + [ + -64.75, + 44.06 + ], + [ + -64.83, + 43.81 + ], + [ + -64.97, + 43.87 + ], + [ + -65.15, + 43.68 + ], + [ + -65.27, + 43.95 + ], + [ + -65.35, + 43.54 + ], + [ + -65.5, + 43.69 + ], + [ + -65.47, + 43.5 + ], + [ + -65.65, + 43.52 + ], + [ + -65.86, + 43.81 + ], + [ + -66, + 43.85 + ], + [ + -66.03, + 43.69 + ], + [ + -66.17, + 43.86 + ], + [ + -66.13, + 44.33 + ], + [ + -65.86, + 44.59 + ], + [ + -66.2, + 44.41 + ], + [ + -65.79, + 44.69 + ], + [ + -65.66, + 44.59 + ], + [ + -65.48, + 44.76 + ], + [ + -65.74, + 44.71 + ], + [ + -64.42, + 45.32 + ], + [ + -64.44, + 45.08 + ], + [ + -64.29, + 45.14 + ], + [ + -64.16, + 44.98 + ], + [ + -64.01, + 45.06 + ], + [ + -64.17, + 45.19 + ], + [ + -63.72, + 45.32 + ], + [ + -63.45, + 45.25 + ], + [ + -63.36, + 45.37 + ], + [ + -64.94, + 45.33 + ], + [ + -64.34, + 45.83 + ], + [ + -64.28, + 45.74 + ], + [ + -64.34, + 45.88 + ], + [ + -64.55, + 45.73 + ], + [ + -64.53, + 45.94 + ], + [ + -64.7, + 46.01 + ], + [ + -64.57, + 45.83 + ], + [ + -64.77, + 45.61 + ], + [ + -65.89, + 45.2 + ], + [ + -66.07, + 45.27 + ], + [ + -66.46, + 45.06 + ], + [ + -66.47, + 45.16 + ], + [ + -66.89, + 45.04 + ], + [ + -66.97, + 45.19 + ], + [ + -67.05, + 45.07 + ], + [ + -67.28, + 45.19 + ] + ], + [ + [ + -97.91, + 54.7 + ], + [ + -97.81, + 54.62 + ], + [ + -97.69, + 54.75 + ], + [ + -97.91, + 54.7 + ] + ], + [ + [ + -97.91, + 55 + ], + [ + -97.51, + 55.01 + ], + [ + -97.73, + 55.05 + ], + [ + -97.49, + 55.18 + ], + [ + -97.91, + 55 + ] + ], + [ + [ + -99.18, + 55.95 + ], + [ + -99.44, + 55.91 + ], + [ + -99.25, + 55.75 + ], + [ + -99.4, + 55.89 + ], + [ + -99.18, + 55.95 + ] + ], + [ + [ + -98.92, + 54.85 + ], + [ + -98.94, + 54.78 + ], + [ + -98.7, + 54.83 + ], + [ + -98.92, + 54.85 + ] + ], + [ + [ + -98, + 55.5 + ], + [ + -98.09, + 55.41 + ], + [ + -97.8, + 55.53 + ], + [ + -98, + 55.5 + ] + ], + [ + [ + -98.16, + 54.9 + ], + [ + -98.3, + 54.81 + ], + [ + -98.07, + 54.8 + ], + [ + -98.16, + 54.9 + ] + ], + [ + [ + -99.56, + 56.32 + ], + [ + -99.67, + 56.15 + ], + [ + -99.8, + 56.23 + ], + [ + -99.76, + 56.05 + ], + [ + -99.51, + 56.12 + ], + [ + -99.56, + 56.32 + ] + ], + [ + [ + -96.15, + 56.22 + ], + [ + -96.63, + 56.15 + ], + [ + -96.21, + 56.08 + ], + [ + -95.81, + 56.28 + ], + [ + -96.15, + 56.22 + ] + ], + [ + [ + -99.68, + 54.03 + ], + [ + -99.89, + 53.83 + ], + [ + -100.48, + 53.8 + ], + [ + -100.13, + 53.66 + ], + [ + -99.73, + 53.8 + ], + [ + -99.68, + 54.03 + ] + ], + [ + [ + -94.92, + 53.89 + ], + [ + -94.83, + 53.75 + ], + [ + -94.49, + 53.75 + ], + [ + -94.82, + 53.85 + ], + [ + -94.64, + 53.8 + ], + [ + -94.73, + 53.9 + ], + [ + -94.5, + 53.96 + ], + [ + -94.77, + 53.93 + ], + [ + -94.92, + 53.89 + ] + ], + [ + [ + -100.2, + 54.25 + ], + [ + -100.41, + 54.16 + ], + [ + -100.15, + 53.88 + ], + [ + -100.27, + 54.03 + ], + [ + -99.8, + 54.19 + ], + [ + -100.04, + 54.12 + ], + [ + -100.2, + 54.25 + ] + ], + [ + [ + -100.68, + 54.09 + ], + [ + -100.7, + 53.98 + ], + [ + -100.5, + 54.03 + ], + [ + -100.68, + 54.09 + ] + ], + [ + [ + -98.03, + 54.42 + ], + [ + -98.73, + 54.24 + ], + [ + -98.31, + 54.29 + ], + [ + -98.48, + 54.2 + ], + [ + -98.35, + 54.09 + ], + [ + -98.02, + 54.37 + ], + [ + -98.17, + 54.1 + ], + [ + -97.78, + 54.28 + ], + [ + -98.03, + 54.42 + ] + ], + [ + [ + -94.26, + 54.87 + ], + [ + -94.75, + 54.41 + ], + [ + -94.31, + 54.66 + ], + [ + -94.04, + 54.69 + ], + [ + -94.13, + 54.59 + ], + [ + -93.93, + 54.76 + ], + [ + -93.59, + 54.75 + ], + [ + -94.26, + 54.87 + ] + ], + [ + [ + -100.59, + 54.7 + ], + [ + -100.5, + 54.57 + ], + [ + -100.24, + 54.67 + ], + [ + -100.59, + 54.7 + ] + ], + [ + [ + -98.12, + 54.57 + ], + [ + -98, + 54.49 + ], + [ + -97.88, + 54.67 + ], + [ + -98.12, + 54.57 + ] + ], + [ + [ + -98.5, + 50.88 + ], + [ + -98.75, + 50.89 + ], + [ + -99.01, + 51.16 + ], + [ + -98.44, + 50.13 + ], + [ + -98, + 50.3 + ], + [ + -98.5, + 50.88 + ] + ], + [ + [ + -96, + 50.43 + ], + [ + -96.02, + 50.43 + ], + [ + -96, + 50.43 + ], + [ + -96.02, + 50.27 + ], + [ + -95.76, + 50.37 + ], + [ + -95.98, + 50.43 + ], + [ + -96, + 50.43 + ] + ], + [ + [ + -95.05, + 49.64 + ], + [ + -95.12, + 49.44 + ], + [ + -94.86, + 49.53 + ], + [ + -95.05, + 49.64 + ] + ], + [ + [ + -94.31, + 49.47 + ], + [ + -94.48, + 49.77 + ], + [ + -94.83, + 49.61 + ], + [ + -94.61, + 49.64 + ], + [ + -94.61, + 49.45 + ], + [ + -94.31, + 49.47 + ] + ], + [ + [ + -97.56, + 53.25 + ], + [ + -97.98, + 53.85 + ], + [ + -97.73, + 54.05 + ], + [ + -98.04, + 53.9 + ], + [ + -98.19, + 54.09 + ], + [ + -98.32, + 53.98 + ], + [ + -97.87, + 53.69 + ], + [ + -98.96, + 53.86 + ], + [ + -99.27, + 53.18 + ], + [ + -99.03, + 53.03 + ], + [ + -98.41, + 53.04 + ], + [ + -98.93, + 52.91 + ], + [ + -98.81, + 52.7 + ], + [ + -97.93, + 51.89 + ], + [ + -97.78, + 51.88 + ], + [ + -97.73, + 52.16 + ], + [ + -97.51, + 52.13 + ], + [ + -97.56, + 51.91 + ], + [ + -97.36, + 52.05 + ], + [ + -97.27, + 51.43 + ], + [ + -96.96, + 51.73 + ], + [ + -96.72, + 51.6 + ], + [ + -97.01, + 51.21 + ], + [ + -96.65, + 51.34 + ], + [ + -96.97, + 51.04 + ], + [ + -96.86, + 50.29 + ], + [ + -96.56, + 50.41 + ], + [ + -96.59, + 50.67 + ], + [ + -96.33, + 50.63 + ], + [ + -96.46, + 51.08 + ], + [ + -96.28, + 51.26 + ], + [ + -96.64, + 51.18 + ], + [ + -96.33, + 51.29 + ], + [ + -96.9, + 51.85 + ], + [ + -97.08, + 52.34 + ], + [ + -97.56, + 53.25 + ] + ], + [ + [ + -98.57, + 51.13 + ], + [ + -98.64, + 50.99 + ], + [ + -98.4, + 50.96 + ], + [ + -98.57, + 51.13 + ] + ], + [ + [ + -99.46, + 51.81 + ], + [ + -99.58, + 51.51 + ], + [ + -99.32, + 51.64 + ], + [ + -99.07, + 51.26 + ], + [ + -98.86, + 51.26 + ], + [ + -98.88, + 51.07 + ], + [ + -98.66, + 51.09 + ], + [ + -98.55, + 51.26 + ], + [ + -98.81, + 51.39 + ], + [ + -98.83, + 51.71 + ], + [ + -98.96, + 51.71 + ], + [ + -99.05, + 51.65 + ], + [ + -98.92, + 51.31 + ], + [ + -99.08, + 51.67 + ], + [ + -99.05, + 51.69 + ], + [ + -99.2, + 51.75 + ], + [ + -99.23, + 51.62 + ], + [ + -99.46, + 51.81 + ] + ], + [ + [ + -99.91, + 51.45 + ], + [ + -99.85, + 51.15 + ], + [ + -99.62, + 51.11 + ], + [ + -99.91, + 51.45 + ] + ], + [ + [ + -101.47, + 54.6 + ], + [ + -101.88, + 54.55 + ], + [ + -101.73, + 54.46 + ], + [ + -101.47, + 54.6 + ] + ], + [ + [ + -106.92, + 54.72 + ], + [ + -106.92, + 54.56 + ], + [ + -106.67, + 54.7 + ], + [ + -106.92, + 54.72 + ] + ], + [ + [ + -107.45, + 54.65 + ], + [ + -106.99, + 54.75 + ], + [ + -107.38, + 54.92 + ], + [ + -107.59, + 54.72 + ], + [ + -107.45, + 54.65 + ] + ], + [ + [ + -105.21, + 55.3 + ], + [ + -105.41, + 55.3 + ], + [ + -105.29, + 55.45 + ], + [ + -105.6, + 55.25 + ], + [ + -105.21, + 55.3 + ] + ], + [ + [ + -101.27, + 55.13 + ], + [ + -101.23, + 55.25 + ], + [ + -101.47, + 55.24 + ], + [ + -101.38, + 55.06 + ], + [ + -101.27, + 55.13 + ] + ], + [ + [ + -105.12, + 55.24 + ], + [ + -105.32, + 55.08 + ], + [ + -105.12, + 54.88 + ], + [ + -104.71, + 55.18 + ], + [ + -104.37, + 55.17 + ], + [ + -104.41, + 55.27 + ], + [ + -104.66, + 55.18 + ], + [ + -104.68, + 55.3 + ], + [ + -105.12, + 55.24 + ] + ], + [ + [ + -106.57, + 55.6 + ], + [ + -106.78, + 55.39 + ], + [ + -106.57, + 55.31 + ], + [ + -106.57, + 55.6 + ] + ], + [ + [ + -106.04, + 55.79 + ], + [ + -106.06, + 55.75 + ], + [ + -106.17, + 55.64 + ], + [ + -106, + 55.78 + ], + [ + -105.97, + 55.8 + ], + [ + -106, + 55.78 + ], + [ + -106.04, + 55.79 + ] + ], + [ + [ + -106.19, + 54.16 + ], + [ + -106.27, + 54.01 + ], + [ + -106.03, + 54.09 + ], + [ + -106.19, + 54.16 + ] + ], + [ + [ + -105.73, + 54.51 + ], + [ + -105.73, + 54.05 + ], + [ + -105.53, + 54.37 + ], + [ + -105.73, + 54.51 + ] + ], + [ + [ + -102.72, + 54.42 + ], + [ + -102.89, + 54.32 + ], + [ + -102.49, + 54.32 + ], + [ + -102.72, + 54.42 + ] + ], + [ + [ + -102.04, + 54.29 + ], + [ + -101.99, + 54.09 + ], + [ + -101.75, + 54.24 + ], + [ + -102.04, + 54.29 + ] + ], + [ + [ + -100.99, + 54.31 + ], + [ + -101.03, + 54.2 + ], + [ + -100.69, + 54.14 + ], + [ + -100.73, + 54.32 + ], + [ + -100.99, + 54.31 + ] + ], + [ + [ + -101.53, + 54.5 + ], + [ + -101.7, + 54.39 + ], + [ + -101.38, + 54.41 + ], + [ + -101.53, + 54.5 + ] + ], + [ + [ + -107.45, + 54.54 + ], + [ + -107.51, + 54.42 + ], + [ + -107.32, + 54.4 + ], + [ + -107.45, + 54.54 + ] + ], + [ + [ + -107.21, + 54.57 + ], + [ + -107.22, + 54.45 + ], + [ + -107.05, + 54.53 + ], + [ + -107.21, + 54.57 + ] + ], + [ + [ + -106.16, + 50.15 + ], + [ + -105.81, + 50.01 + ], + [ + -105.82, + 50.13 + ], + [ + -106.16, + 50.15 + ] + ], + [ + [ + -100.59, + 53.19 + ], + [ + -100.68, + 53.08 + ], + [ + -101.1, + 53.12 + ], + [ + -101.04, + 52.88 + ], + [ + -100.68, + 52.75 + ], + [ + -100.76, + 52.99 + ], + [ + -100.4, + 52.96 + ], + [ + -100.37, + 52.65 + ], + [ + -100.28, + 52.9 + ], + [ + -100.02, + 52.82 + ], + [ + -100.23, + 52.21 + ], + [ + -100.05, + 51.73 + ], + [ + -100, + 52.05 + ], + [ + -99.76, + 51.56 + ], + [ + -99.65, + 51.86 + ], + [ + -99.8, + 51.73 + ], + [ + -99.87, + 52.24 + ], + [ + -99.67, + 52.38 + ], + [ + -99.65, + 52.88 + ], + [ + -100.59, + 53.19 + ] + ], + [ + [ + -100.59, + 53.51 + ], + [ + -100.93, + 53.45 + ], + [ + -100.32, + 53.13 + ], + [ + -99.85, + 53.07 + ], + [ + -99.62, + 53.2 + ], + [ + -99.4, + 53.04 + ], + [ + -99.4, + 53.37 + ], + [ + -99.57, + 53.2 + ], + [ + -99.76, + 53.32 + ], + [ + -99.89, + 53.19 + ], + [ + -100, + 53.54 + ], + [ + -100.28, + 53.64 + ], + [ + -100.42, + 53.47 + ], + [ + -100.59, + 53.51 + ] + ], + [ + [ + -107.05, + 53.94 + ], + [ + -106.87, + 53.88 + ], + [ + -107.13, + 54.11 + ], + [ + -107.05, + 53.94 + ] + ], + [ + [ + -103.6, + 53.64 + ], + [ + -103.97, + 53.44 + ], + [ + -103.62, + 53.62 + ], + [ + -103.45, + 53.53 + ], + [ + -103.6, + 53.64 + ] + ], + [ + [ + -101.23, + 52.88 + ], + [ + -101.21, + 53 + ], + [ + -101.51, + 53 + ], + [ + -101.23, + 52.88 + ] + ], + [ + [ + -102.34, + 54.14 + ], + [ + -102.44, + 54.01 + ], + [ + -102.17, + 53.95 + ], + [ + -102.34, + 54.14 + ] + ], + [ + [ + -101.11, + 54.16 + ], + [ + -101.16, + 53.96 + ], + [ + -100.9, + 53.99 + ], + [ + -100.9, + 54.16 + ], + [ + -101.11, + 54.16 + ] + ], + [ + [ + -112.1, + 54.9 + ], + [ + -112.3, + 54.88 + ], + [ + -111.9, + 54.8 + ], + [ + -111.9, + 54.93 + ], + [ + -112.1, + 54.9 + ] + ], + [ + [ + -108.37, + 55.26 + ], + [ + -108.36, + 55.08 + ], + [ + -108.02, + 55.15 + ], + [ + -108.37, + 55.26 + ] + ], + [ + [ + -113.29, + 55.3 + ], + [ + -113.43, + 55.25 + ], + [ + -113.23, + 55.18 + ], + [ + -113.29, + 55.3 + ] + ], + [ + [ + -115.21, + 55.53 + ], + [ + -116.1, + 55.45 + ], + [ + -114.77, + 55.3 + ], + [ + -114.92, + 55.53 + ], + [ + -115.21, + 55.53 + ] + ], + [ + [ + -123.75, + 55.85 + ], + [ + -123.77, + 55.85 + ], + [ + -123.75, + 56.05 + ], + [ + -123.77, + 56.05 + ], + [ + -124.08, + 56.12 + ], + [ + -123.94, + 56.29 + ], + [ + -124.3, + 56.28 + ], + [ + -124.94, + 56.91 + ], + [ + -124.13, + 56.1 + ], + [ + -124.51, + 56.12 + ], + [ + -124.04, + 56.02 + ], + [ + -123.79, + 55.79 + ], + [ + -123.4, + 55.59 + ], + [ + -123.75, + 55.85 + ] + ], + [ + [ + -108.46, + 55.79 + ], + [ + -108.15, + 56.13 + ], + [ + -108.43, + 56.12 + ], + [ + -108.63, + 55.82 + ], + [ + -108.63, + 56 + ], + [ + -109.12, + 56.15 + ], + [ + -109.1, + 55.97 + ], + [ + -108.68, + 55.79 + ], + [ + -108.46, + 55.79 + ] + ], + [ + [ + -115.54, + 55.95 + ], + [ + -115.4, + 55.78 + ], + [ + -115.16, + 55.92 + ], + [ + -115.54, + 55.95 + ] + ], + [ + [ + -122.64, + 56.15 + ], + [ + -122.95, + 56.07 + ], + [ + -122.16, + 56.02 + ], + [ + -122.64, + 56.15 + ] + ], + [ + [ + -125.79, + 54.06 + ], + [ + -126.28, + 53.98 + ], + [ + -124.98, + 53.98 + ], + [ + -125.79, + 54.06 + ] + ], + [ + [ + -129.36, + 54.3 + ], + [ + -129.37, + 54.3 + ], + [ + -129.39, + 54.28 + ], + [ + -129.36, + 54.3 + ] + ], + [ + [ + -109.4, + 54.47 + ], + [ + -109.55, + 54.4 + ], + [ + -109.25, + 54.44 + ], + [ + -109.4, + 54.47 + ] + ], + [ + [ + -124.94, + 54.68 + ], + [ + -125.14, + 54.62 + ], + [ + -124.24, + 54.42 + ], + [ + -124.94, + 54.68 + ] + ], + [ + [ + -110.13, + 54.65 + ], + [ + -110.25, + 54.52 + ], + [ + -110.04, + 54.43 + ], + [ + -109.83, + 54.55 + ], + [ + -110.13, + 54.65 + ] + ], + [ + [ + -125.75, + 54.57 + ], + [ + -125.51, + 54.44 + ], + [ + -125.17, + 54.5 + ], + [ + -125.75, + 54.57 + ] + ], + [ + [ + -109.73, + 55.03 + ], + [ + -110.04, + 54.75 + ], + [ + -109.57, + 54.88 + ], + [ + -109.73, + 55.03 + ] + ], + [ + [ + -125.09, + 54.88 + ], + [ + -125.42, + 54.76 + ], + [ + -124.96, + 54.83 + ], + [ + -125.09, + 54.88 + ] + ], + [ + [ + -115.27, + 49.15 + ], + [ + -115.27, + 49.12 + ], + [ + -115.25, + 49.15 + ], + [ + -115.27, + 49.15 + ] + ], + [ + [ + -122.05, + 49.67 + ], + [ + -121.77, + 49.31 + ], + [ + -121.76, + 49.53 + ], + [ + -122.05, + 49.67 + ] + ], + [ + [ + -116.95, + 50.18 + ], + [ + -116.98, + 49.61 + ], + [ + -116.62, + 49.21 + ], + [ + -116.95, + 50.18 + ] + ], + [ + [ + -118.46, + 52.19 + ], + [ + -118.55, + 52.08 + ], + [ + -118.33, + 52.05 + ], + [ + -118.24, + 52.16 + ], + [ + -118.46, + 52.19 + ] + ], + [ + [ + -120.95, + 52.7 + ], + [ + -121.4, + 52.48 + ], + [ + -120.72, + 52.5 + ], + [ + -121.04, + 52.54 + ], + [ + -120.95, + 52.7 + ] + ], + [ + [ + -119.45, + 50.26 + ], + [ + -119.49, + 49.92 + ], + [ + -119.76, + 49.75 + ], + [ + -119.62, + 49.51 + ], + [ + -119.74, + 49.75 + ], + [ + -119.5, + 49.81 + ], + [ + -119.36, + 50.27 + ], + [ + -119.45, + 50.26 + ] + ], + [ + [ + -126.93, + 53.44 + ], + [ + -127.12, + 53.3 + ], + [ + -126.8, + 53.36 + ], + [ + -126.78, + 53.24 + ], + [ + -126.69, + 53.33 + ], + [ + -126.93, + 53.44 + ] + ], + [ + [ + -126.69, + 53.67 + ], + [ + -126.43, + 53.82 + ], + [ + -125.73, + 53.63 + ], + [ + -126.34, + 53.86 + ], + [ + -126.69, + 53.76 + ], + [ + -126.78, + 53.63 + ], + [ + -126.69, + 53.67 + ] + ], + [ + [ + -101.27, + 62.41 + ], + [ + -101.16, + 62.25 + ], + [ + -101.14, + 62.37 + ], + [ + -100.79, + 62.35 + ], + [ + -101.27, + 62.41 + ] + ], + [ + [ + -94.66, + 62.27 + ], + [ + -94.88, + 62.37 + ], + [ + -95.01, + 62.26 + ], + [ + -94.66, + 62.27 + ] + ], + [ + [ + -97.34, + 62.43 + ], + [ + -97.65, + 62.97 + ], + [ + -97.73, + 62.83 + ], + [ + -98.53, + 62.82 + ], + [ + -97.91, + 62.43 + ], + [ + -97.34, + 62.43 + ] + ], + [ + [ + -100.27, + 62.65 + ], + [ + -100.46, + 62.54 + ], + [ + -100.11, + 62.56 + ], + [ + -100.27, + 62.65 + ] + ], + [ + [ + -95.49, + 62.98 + ], + [ + -95.54, + 63.21 + ], + [ + -95.62, + 63.04 + ], + [ + -95.82, + 62.98 + ], + [ + -96.15, + 62.9 + ], + [ + -95.68, + 62.73 + ], + [ + -95.84, + 62.92 + ], + [ + -95.49, + 62.98 + ] + ], + [ + [ + -99.32, + 62.85 + ], + [ + -99.27, + 63.18 + ], + [ + -99.76, + 62.83 + ], + [ + -99.32, + 62.85 + ] + ], + [ + [ + -97.99, + 63.15 + ], + [ + -97.95, + 63.03 + ], + [ + -98.26, + 63.12 + ], + [ + -98.4, + 63 + ], + [ + -98, + 63.02 + ], + [ + -98.04, + 62.9 + ], + [ + -97.81, + 63 + ], + [ + -97.99, + 63.15 + ] + ], + [ + [ + -97.31, + 63.49 + ], + [ + -97.47, + 63.14 + ], + [ + -97.11, + 63.23 + ], + [ + -97.31, + 63.49 + ] + ], + [ + [ + -99.67, + 59.98 + ], + [ + -99.67, + 60.09 + ], + [ + -99.89, + 60.13 + ], + [ + -100.05, + 59.98 + ], + [ + -99.71, + 59.88 + ], + [ + -100.13, + 59.84 + ], + [ + -100.06, + 59.72 + ], + [ + -100.06, + 59.83 + ], + [ + -99.76, + 59.8 + ], + [ + -99.71, + 59.78 + ], + [ + -99.42, + 59.82 + ], + [ + -99.67, + 59.81 + ], + [ + -99.69, + 59.98 + ], + [ + -99.67, + 59.98 + ] + ], + [ + [ + -97.34, + 61.61 + ], + [ + -97.65, + 61.58 + ], + [ + -97.25, + 61.27 + ], + [ + -97.34, + 61.61 + ] + ], + [ + [ + -98.76, + 60.89 + ], + [ + -98.79, + 60.77 + ], + [ + -98.53, + 60.82 + ], + [ + -98.76, + 60.89 + ] + ], + [ + [ + -97.73, + 61.81 + ], + [ + -97.69, + 61.63 + ], + [ + -97.5, + 61.69 + ], + [ + -97.73, + 61.81 + ] + ], + [ + [ + -99.45, + 60.22 + ], + [ + -99.1, + 60.09 + ], + [ + -99.27, + 60.36 + ], + [ + -99.57, + 60.31 + ], + [ + -99.25, + 60.52 + ], + [ + -99.36, + 60.69 + ], + [ + -99.54, + 60.49 + ], + [ + -99.81, + 60.61 + ], + [ + -99.8, + 60.26 + ], + [ + -99.45, + 60.22 + ] + ], + [ + [ + -97.78, + 62.05 + ], + [ + -97.87, + 61.94 + ], + [ + -97.55, + 62 + ], + [ + -97.78, + 62.05 + ] + ], + [ + [ + -99.69, + 62.35 + ], + [ + -100.28, + 62.21 + ], + [ + -99.67, + 62.12 + ], + [ + -99.69, + 62.35 + ] + ], + [ + [ + -101.96, + 62.49 + ], + [ + -101.94, + 62.14 + ], + [ + -101.6, + 62.28 + ], + [ + -101.49, + 62.19 + ], + [ + -101.38, + 62.42 + ], + [ + -101.73, + 62.34 + ], + [ + -101.96, + 62.49 + ] + ], + [ + [ + -99.05, + 56.7 + ], + [ + -98.82, + 56.61 + ], + [ + -98.92, + 56.79 + ], + [ + -99.05, + 56.7 + ] + ], + [ + [ + -95.25, + 56.43 + ], + [ + -94.81, + 56.37 + ], + [ + -94.59, + 56.38 + ], + [ + -95.34, + 56.54 + ], + [ + -95.25, + 56.43 + ] + ], + [ + [ + -100.37, + 56.41 + ], + [ + -100.5, + 56.25 + ], + [ + -100.32, + 56.24 + ], + [ + -100.37, + 56.41 + ] + ], + [ + [ + -98.26, + 58.72 + ], + [ + -98.51, + 58.61 + ], + [ + -98.13, + 58.48 + ], + [ + -98.26, + 58.72 + ] + ], + [ + [ + -99.36, + 57.02 + ], + [ + -99.57, + 56.73 + ], + [ + -99.23, + 56.72 + ], + [ + -99.1, + 56.9 + ], + [ + -98.8, + 56.82 + ], + [ + -98.61, + 57.06 + ], + [ + -98.23, + 57.11 + ], + [ + -98.12, + 57.33 + ], + [ + -98.39, + 57.5 + ], + [ + -98.17, + 57.68 + ], + [ + -98.63, + 57.53 + ], + [ + -98.47, + 57.26 + ], + [ + -98.7, + 57.23 + ], + [ + -98.33, + 57.14 + ], + [ + -98.67, + 57.16 + ], + [ + -98.96, + 56.89 + ], + [ + -99.05, + 57.04 + ], + [ + -99.18, + 56.92 + ], + [ + -99.36, + 57.02 + ] + ], + [ + [ + -98.72, + 58.88 + ], + [ + -98.64, + 58.75 + ], + [ + -98.35, + 58.85 + ], + [ + -98.72, + 58.88 + ] + ], + [ + [ + -97.98, + 58.84 + ], + [ + -98.13, + 58.78 + ], + [ + -97.78, + 58.76 + ], + [ + -97.98, + 58.84 + ] + ], + [ + [ + -97.81, + 59.67 + ], + [ + -97.78, + 59.49 + ], + [ + -97.58, + 59.67 + ], + [ + -97.81, + 59.67 + ] + ], + [ + [ + -108.11, + 61.67 + ], + [ + -108.15, + 61.6 + ], + [ + -108.06, + 61.61 + ], + [ + -108.06, + 61.6 + ], + [ + -108.06, + 61.61 + ], + [ + -108.06, + 61.62 + ], + [ + -107.87, + 61.79 + ], + [ + -108.11, + 61.67 + ] + ], + [ + [ + -109.69, + 61.79 + ], + [ + -110.02, + 61.65 + ], + [ + -109.67, + 61.73 + ], + [ + -109.82, + 61.63 + ], + [ + -109.56, + 61.62 + ], + [ + -109.26, + 61.75 + ], + [ + -109.69, + 61.79 + ] + ], + [ + [ + -107.89, + 62.49 + ], + [ + -108.1, + 62.41 + ], + [ + -107.89, + 62.36 + ], + [ + -107.89, + 62.49 + ] + ], + [ + [ + -107.69, + 63.45 + ], + [ + -108.13, + 62.96 + ], + [ + -107.6, + 63.25 + ], + [ + -107.69, + 63.45 + ] + ], + [ + [ + -103.25, + 62.69 + ], + [ + -103.58, + 62.57 + ], + [ + -103.38, + 62.46 + ], + [ + -103.08, + 62.57 + ], + [ + -103.25, + 62.69 + ] + ], + [ + [ + -107.64, + 62.33 + ], + [ + -107.86, + 62.23 + ], + [ + -107.62, + 62.12 + ], + [ + -107.64, + 62.33 + ] + ], + [ + [ + -108.98, + 61.86 + ], + [ + -109.27, + 61.88 + ], + [ + -109.14, + 61.84 + ], + [ + -108.98, + 61.86 + ] + ], + [ + [ + -101.23, + 63.47 + ], + [ + -101.25, + 63.47 + ], + [ + -101.38, + 63.44 + ], + [ + -102.2, + 63.17 + ], + [ + -101.82, + 62.89 + ], + [ + -101.51, + 62.69 + ], + [ + -101.38, + 62.95 + ], + [ + -101.43, + 62.67 + ], + [ + -101.03, + 62.72 + ], + [ + -100.81, + 63.01 + ], + [ + -101.12, + 63.05 + ], + [ + -101.05, + 63.39 + ], + [ + -100.7, + 63.31 + ], + [ + -100.72, + 63.59 + ], + [ + -101.08, + 63.39 + ], + [ + -101.23, + 63.47 + ] + ], + [ + [ + -104.28, + 58.17 + ], + [ + -104.5, + 58.22 + ], + [ + -104.46, + 58.01 + ], + [ + -104.28, + 58.17 + ] + ], + [ + [ + -108.28, + 58.94 + ], + [ + -108.29, + 58.79 + ], + [ + -108.1, + 58.93 + ], + [ + -108.28, + 58.94 + ] + ], + [ + [ + -105.27, + 59.29 + ], + [ + -105.82, + 59.04 + ], + [ + -104.92, + 59.22 + ], + [ + -105.27, + 59.29 + ] + ], + [ + [ + -109.35, + 59.91 + ], + [ + -109.26, + 59.71 + ], + [ + -109.56, + 59.78 + ], + [ + -109.29, + 59.65 + ], + [ + -109.2, + 59.78 + ], + [ + -108.69, + 59.71 + ], + [ + -109.35, + 59.91 + ] + ], + [ + [ + -106.35, + 59.18 + ], + [ + -106.66, + 59.08 + ], + [ + -106.15, + 59.09 + ], + [ + -106.35, + 59.18 + ] + ], + [ + [ + -106.33, + 59.82 + ], + [ + -105.72, + 60.04 + ], + [ + -106.15, + 60.13 + ], + [ + -106.13, + 59.96 + ], + [ + -106.4, + 60.11 + ], + [ + -106.33, + 59.82 + ] + ], + [ + [ + -104.68, + 60.01 + ], + [ + -104.41, + 59.94 + ], + [ + -104.3, + 60.01 + ], + [ + -104.33, + 59.84 + ], + [ + -104.21, + 59.93 + ], + [ + -104.33, + 60.22 + ], + [ + -104.61, + 60.2 + ], + [ + -104.68, + 60.01 + ] + ], + [ + [ + -102.4, + 60.63 + ], + [ + -102.32, + 60.39 + ], + [ + -102.66, + 60.23 + ], + [ + -102.24, + 60.26 + ], + [ + -101.95, + 60.01 + ], + [ + -101.94, + 60.35 + ], + [ + -102.4, + 60.63 + ] + ], + [ + [ + -108.5, + 56.41 + ], + [ + -108.41, + 56.55 + ], + [ + -108.72, + 56.62 + ], + [ + -108.5, + 56.41 + ] + ], + [ + [ + -109.69, + 56.58 + ], + [ + -109.44, + 56.34 + ], + [ + -109.38, + 56.5 + ], + [ + -109.69, + 56.58 + ] + ], + [ + [ + -101.87, + 57.54 + ], + [ + -101.51, + 57.82 + ], + [ + -101.6, + 57.93 + ], + [ + -101.9, + 57.87 + ], + [ + -101.8, + 58.12 + ], + [ + -102.08, + 57.98 + ], + [ + -101.98, + 58.14 + ], + [ + -102.83, + 57.38 + ], + [ + -102.54, + 56.78 + ], + [ + -103.1, + 56.47 + ], + [ + -103.03, + 56.7 + ], + [ + -103.14, + 56.52 + ], + [ + -103.31, + 56.61 + ], + [ + -103.27, + 56.33 + ], + [ + -102.39, + 56.6 + ], + [ + -102.5, + 56.7 + ], + [ + -102.26, + 56.74 + ], + [ + -102.44, + 56.78 + ], + [ + -102.09, + 56.9 + ], + [ + -102.28, + 56.92 + ], + [ + -102.22, + 57.09 + ], + [ + -102, + 57.05 + ], + [ + -102.06, + 57.2 + ], + [ + -101.82, + 57.25 + ], + [ + -102.12, + 57.48 + ], + [ + -101.87, + 57.54 + ] + ], + [ + [ + -108.22, + 56.41 + ], + [ + -108.41, + 56.32 + ], + [ + -108.28, + 56.24 + ], + [ + -108.24, + 56.38 + ], + [ + -108.24, + 56.27 + ], + [ + -107.98, + 56.32 + ], + [ + -108.22, + 56.41 + ] + ], + [ + [ + -108.83, + 56.8 + ], + [ + -108.85, + 56.64 + ], + [ + -108.62, + 56.8 + ], + [ + -108.83, + 56.8 + ] + ], + [ + [ + -107.64, + 56.85 + ], + [ + -107.71, + 56.98 + ], + [ + -107.8, + 56.85 + ], + [ + -107.64, + 56.85 + ] + ], + [ + [ + -106.22, + 57.59 + ], + [ + -106.08, + 57.68 + ], + [ + -106.3, + 57.71 + ], + [ + -107.2, + 57.35 + ], + [ + -106.13, + 57.38 + ], + [ + -106.22, + 57.59 + ] + ], + [ + [ + -103.05, + 58.22 + ], + [ + -102.76, + 58.4 + ], + [ + -102.92, + 58.56 + ], + [ + -103.27, + 58.49 + ], + [ + -103.61, + 58.44 + ], + [ + -103.58, + 58.19 + ], + [ + -103.49, + 58.03 + ], + [ + -103.71, + 58 + ], + [ + -103.47, + 58.01 + ], + [ + -103.45, + 58.16 + ], + [ + -103.32, + 57.93 + ], + [ + -103.25, + 58.11 + ], + [ + -103.01, + 58.1 + ], + [ + -102.86, + 58.19 + ], + [ + -103.05, + 58.22 + ] + ], + [ + [ + -119.36, + 62.24 + ], + [ + -119.27, + 62.1 + ], + [ + -118.92, + 62.17 + ], + [ + -119.36, + 62.24 + ] + ], + [ + [ + -134.82, + 62.21 + ], + [ + -135, + 62.17 + ], + [ + -134.37, + 62.19 + ], + [ + -134.82, + 62.21 + ] + ], + [ + [ + -139.94, + 63.21 + ], + [ + -140.41, + 63.14 + ], + [ + -140.3, + 62.96 + ], + [ + -140.03, + 62.76 + ], + [ + -140.16, + 62.87 + ], + [ + -140.38, + 63.13 + ], + [ + -139.94, + 63.21 + ] + ], + [ + [ + -118.09, + 63.57 + ], + [ + -118.7, + 63.33 + ], + [ + -118.12, + 63.3 + ], + [ + -117.75, + 63.09 + ], + [ + -117.25, + 63.13 + ], + [ + -118.09, + 63.57 + ] + ], + [ + [ + -140.05, + 62.75 + ], + [ + -140.32, + 62.4 + ], + [ + -140.07, + 62.45 + ], + [ + -140.05, + 62.75 + ] + ], + [ + [ + -115.66, + 63.09 + ], + [ + -115.71, + 63.2 + ], + [ + -115.99, + 62.88 + ], + [ + -116.36, + 63.05 + ], + [ + -116.15, + 62.77 + ], + [ + -115.66, + 63.09 + ] + ], + [ + [ + -109.16, + 62.65 + ], + [ + -108.94, + 62.81 + ], + [ + -110.43, + 62.96 + ], + [ + -111.53, + 62.62 + ], + [ + -110.65, + 62.84 + ], + [ + -109.16, + 62.65 + ] + ], + [ + [ + -118.28, + 63.04 + ], + [ + -118.17, + 63.16 + ], + [ + -118.52, + 63.15 + ], + [ + -118.26, + 63.02 + ], + [ + -118.28, + 63.04 + ] + ], + [ + [ + -121.35, + 60.76 + ], + [ + -121.18, + 60.57 + ], + [ + -121.55, + 60.48 + ], + [ + -121.42, + 60.39 + ], + [ + -121.05, + 60.53 + ], + [ + -121.35, + 60.76 + ] + ], + [ + [ + -136.14, + 60.61 + ], + [ + -136.32, + 60.41 + ], + [ + -136.13, + 60.61 + ], + [ + -136.14, + 60.61 + ] + ], + [ + [ + -117.56, + 60.65 + ], + [ + -118.04, + 60.45 + ], + [ + -117.38, + 60.42 + ], + [ + -117.25, + 60.59 + ], + [ + -117.56, + 60.65 + ] + ], + [ + [ + -111.42, + 62.06 + ], + [ + -111.65, + 62.12 + ], + [ + -111.31, + 62.3 + ], + [ + -110.48, + 62.5 + ], + [ + -110.79, + 62.53 + ], + [ + -110.39, + 62.5 + ], + [ + -109.86, + 62.51 + ], + [ + -109.72, + 62.71 + ], + [ + -111.31, + 62.63 + ], + [ + -111.62, + 62.37 + ], + [ + -111.53, + 62.61 + ], + [ + -112.48, + 62.08 + ], + [ + -113.42, + 62 + ], + [ + -113.64, + 62.04 + ], + [ + -114.28, + 62.29 + ], + [ + -114.3, + 62.5 + ], + [ + -114.39, + 62.39 + ], + [ + -114.43, + 62.39 + ], + [ + -114.7, + 62.34 + ], + [ + -115.27, + 62.61 + ], + [ + -115.8, + 62.64 + ], + [ + -115.97, + 62.82 + ], + [ + -115.84, + 62.53 + ], + [ + -115.25, + 62.47 + ], + [ + -115.34, + 62.23 + ], + [ + -114.63, + 61.92 + ], + [ + -114.83, + 61.76 + ], + [ + -115.53, + 61.76 + ], + [ + -115.84, + 61.4 + ], + [ + -116.08, + 61.38 + ], + [ + -115.83, + 61.29 + ], + [ + -115.97, + 61.17 + ], + [ + -116.77, + 61.33 + ], + [ + -116.68, + 61.21 + ], + [ + -116.94, + 61.2 + ], + [ + -116.98, + 61.11 + ], + [ + -117.84, + 61.31 + ], + [ + -117.2, + 61.07 + ], + [ + -115.47, + 60.82 + ], + [ + -113.86, + 60.98 + ], + [ + -113.45, + 61.44 + ], + [ + -112.76, + 61.39 + ], + [ + -112.52, + 61.52 + ], + [ + -112.5, + 61.52 + ], + [ + -112.24, + 61.62 + ], + [ + -111.42, + 62.06 + ] + ], + [ + [ + -138.65, + 61.46 + ], + [ + -139.05, + 61.42 + ], + [ + -138.45, + 61 + ], + [ + -138.65, + 61.46 + ] + ], + [ + [ + -120.02, + 61.35 + ], + [ + -119.51, + 61.21 + ], + [ + -118.86, + 61.24 + ], + [ + -118.41, + 61.33 + ], + [ + -118.31, + 61.41 + ], + [ + -118.1, + 61.45 + ], + [ + -117.64, + 61.33 + ], + [ + -118.22, + 61.56 + ], + [ + -118.39, + 61.52 + ], + [ + -118.4, + 61.39 + ], + [ + -118.5, + 61.33 + ], + [ + -119.18, + 61.23 + ], + [ + -120.02, + 61.35 + ] + ], + [ + [ + -140.62, + 61.68 + ], + [ + -140.59, + 61.69 + ], + [ + -140.66, + 61.8 + ], + [ + -140.62, + 61.68 + ] + ], + [ + [ + -121.56, + 61.92 + ], + [ + -121.28, + 61.79 + ], + [ + -121.27, + 61.86 + ], + [ + -122.34, + 62.14 + ], + [ + -123.42, + 62.28 + ], + [ + -123.13, + 62.16 + ], + [ + -122.37, + 62.13 + ], + [ + -121.56, + 61.92 + ] + ], + [ + [ + -111.53, + 58.68 + ], + [ + -111.65, + 58.57 + ], + [ + -111.38, + 58.56 + ], + [ + -111.53, + 58.68 + ] + ], + [ + [ + -132.36, + 59.83 + ], + [ + -132.14, + 59.66 + ], + [ + -132.5, + 60.11 + ], + [ + -133.1, + 60.33 + ], + [ + -132.36, + 59.83 + ] + ], + [ + [ + -108.76, + 59.5 + ], + [ + -109.18, + 59.6 + ], + [ + -109.73, + 59.52 + ], + [ + -111.19, + 58.7 + ], + [ + -110.39, + 58.6 + ], + [ + -110.21, + 58.91 + ], + [ + -109.34, + 59.16 + ], + [ + -108.19, + 59.15 + ], + [ + -107.71, + 59.34 + ], + [ + -106.57, + 59.25 + ], + [ + -107.82, + 59.4 + ], + [ + -108.28, + 59.5 + ], + [ + -108.96, + 59.39 + ], + [ + -108.76, + 59.5 + ] + ], + [ + [ + -112.1, + 58.71 + ], + [ + -112.17, + 58.84 + ], + [ + -112.49, + 58.68 + ], + [ + -112.15, + 58.34 + ], + [ + -111.8, + 58.37 + ], + [ + -111.84, + 58.61 + ], + [ + -111.83, + 58.75 + ], + [ + -112.1, + 58.71 + ] + ], + [ + [ + -118.67, + 59.84 + ], + [ + -119.21, + 59.76 + ], + [ + -118.7, + 59.64 + ], + [ + -118.5, + 59.71 + ], + [ + -118.67, + 59.84 + ] + ], + [ + [ + -133.77, + 59.33 + ], + [ + -133.58, + 59.45 + ], + [ + -133.85, + 60.03 + ], + [ + -133.68, + 59.41 + ], + [ + -134.06, + 59.31 + ], + [ + -133.86, + 59.14 + ], + [ + -133.77, + 59.33 + ] + ], + [ + [ + -134.31, + 60.26 + ], + [ + -134.43, + 60.13 + ], + [ + -134.17, + 60.05 + ], + [ + -134.31, + 60.26 + ] + ], + [ + [ + -115.16, + 60.37 + ], + [ + -115.92, + 60.17 + ], + [ + -115.31, + 60.08 + ], + [ + -115.16, + 60.37 + ] + ], + [ + [ + -99.32, + 65.97 + ], + [ + -100.11, + 65.92 + ], + [ + -99.8, + 65.79 + ], + [ + -99.32, + 65.97 + ], + [ + -99.16, + 66.04 + ], + [ + -99.32, + 65.97 + ] + ], + [ + [ + -96.44, + 67.08 + ], + [ + -95.82, + 66.77 + ], + [ + -95.94, + 67.05 + ], + [ + -96.15, + 66.95 + ], + [ + -96.44, + 67.08 + ] + ], + [ + [ + -100.72, + 65.91 + ], + [ + -100.13, + 65.89 + ], + [ + -100.42, + 66.18 + ], + [ + -100.42, + 65.9 + ], + [ + -100.72, + 65.91 + ] + ], + [ + [ + -95.36, + 67.1 + ], + [ + -95.32, + 66.97 + ], + [ + -95.87, + 66.92 + ], + [ + -95.27, + 66.9 + ], + [ + -95.36, + 67.1 + ] + ], + [ + [ + -102.61, + 66.5 + ], + [ + -102.61, + 66.51 + ], + [ + -103.06, + 66.71 + ], + [ + -102.74, + 66.52 + ], + [ + -102.7, + 66.5 + ], + [ + -102.61, + 66.41 + ], + [ + -102.61, + 66.5 + ] + ], + [ + [ + -98.48, + 67.44 + ], + [ + -98.39, + 67.16 + ], + [ + -98.16, + 67.36 + ], + [ + -98.48, + 67.44 + ] + ], + [ + [ + -95.84, + 64.55 + ], + [ + -96.14, + 64.64 + ], + [ + -96.06, + 64.45 + ], + [ + -95.84, + 64.55 + ] + ], + [ + [ + -100.06, + 64.64 + ], + [ + -100.15, + 64.66 + ], + [ + -100.81, + 64.6 + ], + [ + -100.28, + 64.53 + ], + [ + -100.15, + 64.66 + ], + [ + -100.06, + 64.64 + ] + ], + [ + [ + -95.19, + 65 + ], + [ + -95.93, + 65.03 + ], + [ + -96.05, + 64.92 + ], + [ + -95.58, + 64.87 + ], + [ + -95.62, + 64.81 + ], + [ + -95.41, + 64.77 + ], + [ + -95.54, + 64.93 + ], + [ + -95.19, + 65 + ] + ], + [ + [ + -97.49, + 64.81 + ], + [ + -98.09, + 64.68 + ], + [ + -97.08, + 64.65 + ], + [ + -97.04, + 64.77 + ], + [ + -97.49, + 64.81 + ] + ], + [ + [ + -103.1, + 65.05 + ], + [ + -103.23, + 64.98 + ], + [ + -102.73, + 65.04 + ], + [ + -103.1, + 65.05 + ] + ], + [ + [ + -98.59, + 65.71 + ], + [ + -98.82, + 65.77 + ], + [ + -98.57, + 65.69 + ], + [ + -98.59, + 65.71 + ] + ], + [ + [ + -99.67, + 65.29 + ], + [ + -99.68, + 65.16 + ], + [ + -99.45, + 65.26 + ], + [ + -99.67, + 65.29 + ] + ], + [ + [ + -101.29, + 65.88 + ], + [ + -101.11, + 65.77 + ], + [ + -100.99, + 65.88 + ], + [ + -101.65, + 65.98 + ], + [ + -101.29, + 65.88 + ] + ], + [ + [ + -99.07, + 63.9 + ], + [ + -98.92, + 63.72 + ], + [ + -99.24, + 63.82 + ], + [ + -99.23, + 63.63 + ], + [ + -98.7, + 63.63 + ], + [ + -98.7, + 63.85 + ], + [ + -99.07, + 63.9 + ] + ], + [ + [ + -97.51, + 63.9 + ], + [ + -97.24, + 64 + ], + [ + -98, + 64.07 + ], + [ + -97.47, + 63.77 + ], + [ + -97.51, + 63.9 + ] + ], + [ + [ + -96.93, + 63.68 + ], + [ + -96.59, + 63.57 + ], + [ + -95.99, + 63.63 + ], + [ + -96.93, + 63.68 + ] + ], + [ + [ + -96.71, + 64.09 + ], + [ + -96.64, + 63.81 + ], + [ + -96.31, + 63.96 + ], + [ + -96.71, + 64.09 + ] + ], + [ + [ + -99.87, + 63.88 + ], + [ + -99.72, + 64.16 + ], + [ + -100, + 64.09 + ], + [ + -99.87, + 63.88 + ] + ], + [ + [ + -98.33, + 64.13 + ], + [ + -98.66, + 64.02 + ], + [ + -98.35, + 63.82 + ], + [ + -98.05, + 63.94 + ], + [ + -98.31, + 63.91 + ], + [ + -98.33, + 64.13 + ] + ], + [ + [ + -95.49, + 64.01 + ], + [ + -94.97, + 64.12 + ], + [ + -94.29, + 63.94 + ], + [ + -94.18, + 64.05 + ], + [ + -95.36, + 64.3 + ], + [ + -96.19, + 64.28 + ], + [ + -95.49, + 64.01 + ] + ], + [ + [ + -98.31, + 64.66 + ], + [ + -98.96, + 64.53 + ], + [ + -99.8, + 64.61 + ], + [ + -98.5, + 64.36 + ], + [ + -98.57, + 64.54 + ], + [ + -98.01, + 64.43 + ], + [ + -98.37, + 64.51 + ], + [ + -98.31, + 64.66 + ] + ], + [ + [ + -113.03, + 65.55 + ], + [ + -112.76, + 65.45 + ], + [ + -112.54, + 65.57 + ], + [ + -113.03, + 65.55 + ] + ], + [ + [ + -112.53, + 65.93 + ], + [ + -112.41, + 65.8 + ], + [ + -112.08, + 65.82 + ], + [ + -112.35, + 65.86 + ], + [ + -112.19, + 65.97 + ], + [ + -112.53, + 65.93 + ] + ], + [ + [ + -107.16, + 66.25 + ], + [ + -107.4, + 66.37 + ], + [ + -107.05, + 66.17 + ], + [ + -107.16, + 66.25 + ] + ], + [ + [ + -106.06, + 67.24 + ], + [ + -106.04, + 67.24 + ], + [ + -105.78, + 67.26 + ], + [ + -106.06, + 67.24 + ] + ], + [ + [ + -111.59, + 64.28 + ], + [ + -111.46, + 64.13 + ], + [ + -110.98, + 64.15 + ], + [ + -111.59, + 64.28 + ] + ], + [ + [ + -111.97, + 64.17 + ], + [ + -112.19, + 64.14 + ], + [ + -111.71, + 64.13 + ], + [ + -111.97, + 64.17 + ] + ], + [ + [ + -110.43, + 64.54 + ], + [ + -110.39, + 64.73 + ], + [ + -110.59, + 64.5 + ], + [ + -111.18, + 64.59 + ], + [ + -110.68, + 64.45 + ], + [ + -110.79, + 64.34 + ], + [ + -110, + 64.56 + ], + [ + -110.43, + 64.54 + ] + ], + [ + [ + -112.52, + 65.15 + ], + [ + -112.12, + 65.19 + ], + [ + -112.52, + 65.2 + ], + [ + -112.83, + 65.16 + ], + [ + -112.57, + 65.18 + ], + [ + -112.52, + 65.15 + ] + ], + [ + [ + -110.83, + 64.87 + ], + [ + -110.83, + 64.86 + ], + [ + -110.98, + 64.79 + ], + [ + -111.01, + 64.79 + ], + [ + -110.98, + 64.79 + ], + [ + -110.92, + 64.79 + ], + [ + -110.83, + 64.86 + ], + [ + -110.83, + 64.87 + ] + ], + [ + [ + -110.55, + 65.42 + ], + [ + -110.55, + 65.17 + ], + [ + -110.3, + 65.16 + ], + [ + -110.55, + 65.42 + ] + ], + [ + [ + -109.64, + 65.07 + ], + [ + -109.34, + 65.15 + ], + [ + -109.75, + 65.18 + ], + [ + -109.78, + 64.94 + ], + [ + -109.78, + 64.93 + ], + [ + -109.78, + 64.94 + ], + [ + -109.38, + 64.98 + ], + [ + -109.64, + 65.07 + ] + ], + [ + [ + -110.21, + 65.43 + ], + [ + -110.48, + 65.68 + ], + [ + -110.83, + 65.71 + ], + [ + -110.68, + 65.82 + ], + [ + -111.01, + 65.76 + ], + [ + -111.39, + 66.02 + ], + [ + -111.51, + 65.77 + ], + [ + -111.27, + 65.83 + ], + [ + -110.7, + 65.66 + ], + [ + -110.61, + 65.43 + ], + [ + -109.95, + 65.3 + ], + [ + -110.21, + 65.43 + ] + ], + [ + [ + -108.35, + 63.37 + ], + [ + -108.68, + 63.49 + ], + [ + -108.88, + 63.45 + ], + [ + -108.35, + 63.37 + ] + ], + [ + [ + -111.58, + 63.64 + ], + [ + -111.23, + 63.63 + ], + [ + -111.43, + 63.51 + ], + [ + -111.02, + 63.63 + ], + [ + -111.42, + 63.65 + ], + [ + -111.58, + 63.64 + ] + ], + [ + [ + -111.23, + 64 + ], + [ + -111.49, + 64.03 + ], + [ + -111.65, + 63.74 + ], + [ + -111.95, + 63.76 + ], + [ + -111.73, + 63.65 + ], + [ + -111.28, + 63.76 + ], + [ + -111.45, + 63.91 + ], + [ + -110.83, + 63.83 + ], + [ + -111.23, + 64 + ] + ], + [ + [ + -108.87, + 63.7 + ], + [ + -108.91, + 63.53 + ], + [ + -108.61, + 63.53 + ], + [ + -108.87, + 63.7 + ] + ], + [ + [ + -109.33, + 63.92 + ], + [ + -109.47, + 63.73 + ], + [ + -109.16, + 63.85 + ], + [ + -109.33, + 63.92 + ] + ], + [ + [ + -107.67, + 64.07 + ], + [ + -107.84, + 64.03 + ], + [ + -107.8, + 64.01 + ], + [ + -107.27, + 63.74 + ], + [ + -107.16, + 63.88 + ], + [ + -107.31, + 63.86 + ], + [ + -107.38, + 64.07 + ], + [ + -107.67, + 64.07 + ] + ], + [ + [ + -109.82, + 64.15 + ], + [ + -110.14, + 64.24 + ], + [ + -110.7, + 63.84 + ], + [ + -109.82, + 64.15 + ] + ], + [ + [ + -108.46, + 64.34 + ], + [ + -108.6, + 64.09 + ], + [ + -109.16, + 64.1 + ], + [ + -108.59, + 63.99 + ], + [ + -108.06, + 64.09 + ], + [ + -108.43, + 64.11 + ], + [ + -108.46, + 64.34 + ] + ], + [ + [ + -125.02, + 67.58 + ], + [ + -124.89, + 67.35 + ], + [ + -124.62, + 67.51 + ], + [ + -125.02, + 67.58 + ] + ], + [ + [ + -122.26, + 67.54 + ], + [ + -122.81, + 67.47 + ], + [ + -122.24, + 67.44 + ], + [ + -122.26, + 67.54 + ] + ], + [ + [ + -119.7, + 68.64 + ], + [ + -119.82, + 68.23 + ], + [ + -119.49, + 68.34 + ], + [ + -119.7, + 68.64 + ] + ], + [ + [ + -131.92, + 69.16 + ], + [ + -132.19, + 69.07 + ], + [ + -132.14, + 69.02 + ], + [ + -132.14, + 68.99 + ], + [ + -132.14, + 69.02 + ], + [ + -132.1, + 69.04 + ], + [ + -131.92, + 69.16 + ] + ], + [ + [ + -135, + 69.12 + ], + [ + -135.01, + 69.16 + ], + [ + -135.01, + 69.12 + ], + [ + -135, + 69.12 + ] + ], + [ + [ + -132.82, + 68.67 + ], + [ + -132.78, + 68.4 + ], + [ + -132.46, + 68.57 + ], + [ + -132.82, + 68.67 + ] + ], + [ + [ + -134.8, + 68.96 + ], + [ + -134.21, + 68.66 + ], + [ + -134.07, + 68.4 + ], + [ + -134.37, + 68.29 + ], + [ + -134.05, + 68.39 + ], + [ + -134.21, + 68.66 + ], + [ + -134.8, + 68.96 + ] + ], + [ + [ + -140.38, + 68.25 + ], + [ + -140.1, + 68.08 + ], + [ + -140.41, + 68.02 + ], + [ + -140.1, + 68.01 + ], + [ + -140.01, + 68.13 + ], + [ + -140.38, + 68.25 + ] + ], + [ + [ + -112.81, + 66.5 + ], + [ + -112.81, + 66.51 + ], + [ + -113.39, + 66.48 + ], + [ + -112.92, + 66.3 + ], + [ + -112.93, + 66.05 + ], + [ + -113.03, + 66.29 + ], + [ + -113.51, + 66.35 + ], + [ + -113.62, + 66.23 + ], + [ + -112.97, + 66 + ], + [ + -112.84, + 66.07 + ], + [ + -112.74, + 66.36 + ], + [ + -112.81, + 66.5 + ] + ], + [ + [ + -134.45, + 67.95 + ], + [ + -134.46, + 67.67 + ], + [ + -133, + 67.2 + ], + [ + -131.56, + 67.44 + ], + [ + -130.96, + 67.47 + ], + [ + -130.81, + 67.34 + ], + [ + -130.31, + 67.2 + ], + [ + -130.15, + 66.8 + ], + [ + -129.11, + 66.53 + ], + [ + -130.08, + 66.83 + ], + [ + -130.25, + 67.23 + ], + [ + -130.87, + 67.47 + ], + [ + -130.99, + 67.49 + ], + [ + -131.53, + 67.46 + ], + [ + -133, + 67.22 + ], + [ + -134.11, + 67.63 + ], + [ + -134.36, + 68.27 + ], + [ + -134.45, + 67.95 + ] + ], + [ + [ + -125.38, + 67 + ], + [ + -125.52, + 66.79 + ], + [ + -124.85, + 66.66 + ], + [ + -125.38, + 67 + ] + ], + [ + [ + -126.39, + 67.02 + ], + [ + -126.26, + 66.73 + ], + [ + -126.08, + 66.9 + ], + [ + -126.39, + 67.02 + ] + ], + [ + [ + -135, + 66.95 + ], + [ + -135.02, + 66.95 + ], + [ + -135, + 66.93 + ], + [ + -135, + 66.95 + ] + ], + [ + [ + -125.73, + 67.34 + ], + [ + -126.3, + 67.22 + ], + [ + -126.17, + 67.03 + ], + [ + -125.82, + 67.08 + ], + [ + -125.73, + 67.34 + ] + ], + [ + [ + -135, + 67.19 + ], + [ + -134.99, + 67.19 + ], + [ + -134.99, + 67.17 + ], + [ + -135, + 67.12 + ], + [ + -134.99, + 67.12 + ], + [ + -134.99, + 67.17 + ], + [ + -134.99, + 67.19 + ], + [ + -135.01, + 67.2 + ], + [ + -135, + 67.19 + ] + ], + [ + [ + -126.43, + 67.25 + ], + [ + -126.04, + 67.32 + ], + [ + -126.83, + 67.56 + ], + [ + -126.43, + 67.25 + ] + ], + [ + [ + -121.61, + 64.07 + ], + [ + -121.77, + 63.83 + ], + [ + -121.32, + 63.86 + ], + [ + -121.61, + 64.07 + ] + ], + [ + [ + -121.33, + 64.96 + ], + [ + -121.53, + 64.87 + ], + [ + -121.2, + 64.8 + ], + [ + -119.93, + 65.34 + ], + [ + -119.49, + 65.32 + ], + [ + -120.12, + 65.62 + ], + [ + -119.58, + 65.7 + ], + [ + -119.73, + 65.78 + ], + [ + -118.48, + 65.66 + ], + [ + -117.6, + 66.23 + ], + [ + -117.84, + 66.27 + ], + [ + -117.95, + 66.36 + ], + [ + -117.46, + 66.44 + ], + [ + -117.91, + 66.4 + ], + [ + -117.82, + 66.5 + ], + [ + -117.61, + 66.69 + ], + [ + -118.56, + 66.33 + ], + [ + -119.62, + 66.3 + ], + [ + -120.47, + 66.37 + ], + [ + -120.41, + 66.5 + ], + [ + -119.22, + 66.94 + ], + [ + -119.93, + 67.03 + ], + [ + -122.96, + 66.51 + ], + [ + -124.5, + 66.24 + ], + [ + -124.99, + 66.3 + ], + [ + -125.09, + 66.07 + ], + [ + -124.83, + 65.91 + ], + [ + -124.34, + 66.17 + ], + [ + -123.25, + 66.16 + ], + [ + -123.12, + 66.04 + ], + [ + -123.05, + 66.25 + ], + [ + -122.08, + 66.25 + ], + [ + -121.32, + 66.11 + ], + [ + -121.51, + 65.92 + ], + [ + -122.81, + 65.96 + ], + [ + -122.15, + 65.78 + ], + [ + -122.96, + 65.48 + ], + [ + -122.87, + 65.25 + ], + [ + -123.52, + 65.13 + ], + [ + -122.06, + 64.93 + ], + [ + -121.6, + 65.07 + ], + [ + -121.53, + 65.4 + ], + [ + -120.41, + 65.57 + ], + [ + -120.57, + 65.26 + ], + [ + -121.33, + 64.96 + ] + ], + [ + [ + -118.34, + 65.22 + ], + [ + -118.83, + 65.18 + ], + [ + -118.26, + 64.71 + ], + [ + -118.07, + 64.77 + ], + [ + -118.39, + 64.83 + ], + [ + -118.38, + 65 + ], + [ + -118.13, + 64.98 + ], + [ + -118.45, + 65.07 + ], + [ + -118.19, + 65.15 + ], + [ + -118.34, + 65.22 + ] + ], + [ + [ + -114.7, + 64.98 + ], + [ + -114.37, + 65.07 + ], + [ + -114.74, + 65.1 + ], + [ + -114.7, + 64.98 + ] + ], + [ + [ + -123.31, + 63.92 + ], + [ + -122.9, + 63.84 + ], + [ + -123.01, + 64.19 + ], + [ + -123.31, + 63.92 + ] + ], + [ + [ + -117.84, + 64.62 + ], + [ + -118.08, + 64.54 + ], + [ + -117.78, + 64.44 + ], + [ + -117.51, + 64.52 + ], + [ + -117.51, + 64.38 + ], + [ + -117.4, + 64.53 + ], + [ + -117.84, + 64.62 + ] + ], + [ + [ + -113.99, + 65.4 + ], + [ + -113.73, + 65.44 + ], + [ + -114.02, + 65.4 + ], + [ + -113.77, + 65.23 + ], + [ + -113.65, + 65.39 + ], + [ + -113.55, + 65.28 + ], + [ + -113.29, + 65.28 + ], + [ + -112.76, + 65.23 + ], + [ + -113.42, + 65.31 + ], + [ + -112.94, + 65.36 + ], + [ + -113.1, + 65.4 + ], + [ + -114.02, + 65.4 + ], + [ + -113.99, + 65.4 + ] + ], + [ + [ + -117.92, + 65.82 + ], + [ + -118.45, + 65.68 + ], + [ + -118.04, + 65.66 + ], + [ + -117.92, + 65.82 + ] + ], + [ + [ + -70.4, + 51.88 + ], + [ + -70.2, + 51.51 + ], + [ + -70.11, + 51.67 + ], + [ + -69.99, + 51.56 + ], + [ + -70.05, + 51.86 + ], + [ + -70.16, + 51.73 + ], + [ + -70.4, + 51.88 + ] + ], + [ + [ + -67.52, + 51.7 + ], + [ + -67.5, + 51.85 + ], + [ + -67.81, + 51.93 + ], + [ + -67.52, + 51.7 + ] + ], + [ + [ + -63.28, + 52.17 + ], + [ + -62.97, + 52.05 + ], + [ + -63.11, + 52.13 + ], + [ + -63.28, + 52.17 + ] + ], + [ + [ + -64.78, + 52.78 + ], + [ + -64.34, + 52.54 + ], + [ + -64.64, + 52.96 + ], + [ + -64.78, + 52.78 + ] + ], + [ + [ + -65.32, + 52.91 + ], + [ + -65.45, + 52.7 + ], + [ + -65.13, + 52.76 + ], + [ + -64.97, + 52.64 + ], + [ + -65.32, + 52.91 + ] + ], + [ + [ + -65.87, + 52.55 + ], + [ + -65.72, + 52.59 + ], + [ + -65.86, + 52.7 + ], + [ + -66.05, + 52.56 + ], + [ + -66.2, + 52.88 + ], + [ + -66.16, + 52.96 + ], + [ + -66.27, + 52.96 + ], + [ + -66.2, + 52.88 + ], + [ + -66.17, + 52.56 + ], + [ + -66.4, + 52.56 + ], + [ + -65.87, + 52.55 + ] + ], + [ + [ + -67.98, + 52.8 + ], + [ + -67.9, + 52.63 + ], + [ + -67.76, + 52.74 + ], + [ + -67.98, + 52.8 + ] + ], + [ + [ + -60.95, + 52.48 + ], + [ + -60.7, + 52.35 + ], + [ + -60.67, + 52.46 + ], + [ + -60.95, + 52.48 + ] + ], + [ + [ + -70.71, + 49.44 + ], + [ + -70.62, + 49.53 + ], + [ + -70.49, + 49.42 + ], + [ + -70.27, + 49.65 + ], + [ + -70.13, + 49.53 + ], + [ + -70.09, + 49.69 + ], + [ + -70.49, + 49.7 + ], + [ + -70.62, + 49.53 + ], + [ + -70.71, + 49.44 + ] + ], + [ + [ + -68.69, + 50.06 + ], + [ + -68.61, + 49.81 + ], + [ + -68.6, + 50.25 + ], + [ + -68.69, + 50.06 + ] + ], + [ + [ + -73.05, + 51.37 + ], + [ + -73.78, + 51.07 + ], + [ + -74.09, + 50.45 + ], + [ + -73.85, + 50.43 + ], + [ + -73.64, + 50.82 + ], + [ + -72.76, + 51.32 + ], + [ + -73.08, + 51.28 + ], + [ + -73.05, + 51.37 + ] + ], + [ + [ + -68.64, + 50.99 + ], + [ + -68.67, + 50.99 + ], + [ + -68.69, + 51.11 + ], + [ + -68.33, + 51.12 + ], + [ + -68.15, + 51.29 + ], + [ + -68.25, + 51.56 + ], + [ + -68.55, + 51.67 + ], + [ + -68.48, + 51.78 + ], + [ + -69.04, + 51.6 + ], + [ + -69.09, + 51.75 + ], + [ + -69.18, + 51.29 + ], + [ + -68.98, + 51.56 + ], + [ + -68.61, + 51.65 + ], + [ + -68.35, + 51.51 + ], + [ + -68.42, + 51.34 + ], + [ + -68.58, + 51.48 + ], + [ + -68.42, + 51.23 + ], + [ + -68.77, + 51.14 + ], + [ + -69.13, + 51.31 + ], + [ + -68.76, + 51.12 + ], + [ + -68.73, + 50.86 + ], + [ + -68.67, + 50.99 + ], + [ + -68.64, + 50.99 + ] + ], + [ + [ + -72.84, + 51.23 + ], + [ + -73.45, + 50.76 + ], + [ + -72.61, + 51.23 + ], + [ + -72.84, + 51.23 + ] + ], + [ + [ + -74.03, + 45.4 + ], + [ + -73.89, + 45.55 + ], + [ + -74.34, + 45.52 + ], + [ + -74.03, + 45.4 + ] + ], + [ + [ + -66.18, + 45.87 + ], + [ + -66.02, + 45.86 + ], + [ + -65.96, + 46.07 + ], + [ + -66.18, + 45.87 + ] + ], + [ + [ + -73.83, + 45.45 + ], + [ + -73.98, + 45.31 + ], + [ + -73.68, + 45.4 + ], + [ + -73.83, + 45.45 + ] + ], + [ + [ + -72.11, + 48.76 + ], + [ + -72.37, + 48.72 + ], + [ + -72.22, + 48.49 + ], + [ + -71.77, + 48.47 + ], + [ + -72.11, + 48.76 + ] + ], + [ + [ + -74.4, + 48.92 + ], + [ + -74.4, + 48.91 + ], + [ + -74.36, + 48.92 + ], + [ + -74.36, + 48.94 + ], + [ + -74.4, + 48.92 + ] + ], + [ + [ + -76.82, + 49.89 + ], + [ + -76.9, + 49.65 + ], + [ + -76.71, + 49.72 + ], + [ + -76.82, + 49.89 + ] + ], + [ + [ + -74.25, + 49.92 + ], + [ + -74.44, + 49.81 + ], + [ + -74.29, + 49.72 + ], + [ + -74.03, + 49.92 + ], + [ + -74.25, + 49.92 + ] + ], + [ + [ + -77.19, + 49.87 + ], + [ + -77.27, + 49.75 + ], + [ + -77.04, + 49.77 + ], + [ + -77.19, + 49.87 + ] + ], + [ + [ + -77.48, + 49.89 + ], + [ + -77.78, + 49.92 + ], + [ + -77.7, + 49.8 + ], + [ + -77.36, + 49.84 + ], + [ + -77.48, + 49.89 + ] + ], + [ + [ + -76.73, + 49.99 + ], + [ + -76.73, + 49.88 + ], + [ + -76.55, + 49.94 + ], + [ + -76.73, + 49.99 + ] + ], + [ + [ + -76.54, + 52.7 + ], + [ + -76.72, + 52.54 + ], + [ + -76.29, + 52.54 + ], + [ + -76.73, + 52.41 + ], + [ + -76.71, + 52.27 + ], + [ + -76.04, + 52.51 + ], + [ + -76.54, + 52.7 + ] + ], + [ + [ + -76.55, + 52.28 + ], + [ + -76.59, + 52.2 + ], + [ + -76.37, + 52.24 + ], + [ + -76.55, + 52.28 + ] + ], + [ + [ + -75.89, + 52.21 + ], + [ + -76.13, + 52.16 + ], + [ + -76.03, + 51.99 + ], + [ + -75.23, + 52.13 + ], + [ + -75.76, + 52.09 + ], + [ + -75.89, + 52.21 + ] + ], + [ + [ + -76.64, + 47.5 + ], + [ + -76.8, + 47.4 + ], + [ + -76.55, + 47.26 + ], + [ + -76.64, + 47.5 + ] + ], + [ + [ + -77.08, + 47.52 + ], + [ + -76.9, + 47.41 + ], + [ + -76.87, + 47.6 + ], + [ + -77.08, + 47.52 + ] + ], + [ + [ + -78.4, + 48.38 + ], + [ + -78.55, + 48.28 + ], + [ + -78.31, + 48.26 + ], + [ + -78.4, + 48.38 + ] + ], + [ + [ + -74.62, + 48.72 + ], + [ + -74.64, + 48.6 + ], + [ + -74.58, + 48.86 + ], + [ + -74.62, + 48.72 + ], + [ + -74.88, + 48.72 + ], + [ + -75.19, + 48.65 + ], + [ + -75.37, + 48.43 + ], + [ + -75.19, + 48.39 + ], + [ + -75.15, + 48.52 + ], + [ + -75.06, + 48.62 + ], + [ + -74.88, + 48.65 + ], + [ + -74.62, + 48.37 + ], + [ + -74.53, + 48.54 + ], + [ + -74.31, + 48.44 + ], + [ + -74.49, + 48.61 + ], + [ + -74.69, + 48.49 + ], + [ + -74.62, + 48.72 + ] + ], + [ + [ + -75.27, + 49.49 + ], + [ + -75.28, + 49.36 + ], + [ + -75.07, + 49.41 + ], + [ + -75.27, + 49.49 + ] + ], + [ + [ + -75.41, + 49.41 + ], + [ + -75.5, + 49.31 + ], + [ + -75.26, + 49.35 + ], + [ + -75.41, + 49.41 + ] + ], + [ + [ + -76.52, + 49.64 + ], + [ + -76.45, + 49.5 + ], + [ + -76.68, + 49.47 + ], + [ + -76.32, + 49.5 + ], + [ + -76.52, + 49.64 + ] + ], + [ + [ + -80.06, + 48.92 + ], + [ + -80.22, + 48.81 + ], + [ + -79.94, + 48.63 + ], + [ + -79.28, + 48.63 + ], + [ + -79.55, + 48.83 + ], + [ + -79.63, + 48.68 + ], + [ + -79.94, + 48.69 + ], + [ + -79.82, + 48.86 + ], + [ + -80.06, + 48.92 + ] + ], + [ + [ + -77.26, + 44.19 + ], + [ + -77.43, + 44.13 + ], + [ + -77.12, + 44.15 + ], + [ + -77.26, + 44.19 + ] + ], + [ + [ + -79.43, + 44.59 + ], + [ + -79.7, + 44.37 + ], + [ + -79.52, + 44.4 + ], + [ + -79.54, + 44.19 + ], + [ + -79.15, + 44.45 + ], + [ + -79.43, + 44.59 + ] + ], + [ + [ + -75.98, + 46.79 + ], + [ + -75.81, + 46.68 + ], + [ + -75.76, + 46.97 + ], + [ + -75.98, + 46.79 + ] + ], + [ + [ + -79.56, + 45.1 + ], + [ + -79.41, + 44.91 + ], + [ + -79.37, + 45.03 + ], + [ + -79.56, + 45.1 + ] + ], + [ + [ + -80.03, + 46.35 + ], + [ + -80.28, + 46.2 + ], + [ + -79.37, + 46.2 + ], + [ + -79.5, + 46.33 + ], + [ + -80.03, + 46.35 + ] + ], + [ + [ + -78.51, + 44.53 + ], + [ + -78.53, + 44.38 + ], + [ + -78.38, + 44.47 + ], + [ + -78.51, + 44.53 + ] + ], + [ + [ + -79.59, + 47.55 + ], + [ + -79.41, + 47.09 + ], + [ + -79.45, + 47.57 + ], + [ + -79.59, + 47.55 + ] + ], + [ + [ + -80.05, + 47.01 + ], + [ + -80.09, + 47.1 + ], + [ + -80.11, + 46.94 + ], + [ + -80.16, + 46.78 + ], + [ + -80.05, + 47.01 + ] + ], + [ + [ + -88.52, + 52.03 + ], + [ + -88.7, + 51.94 + ], + [ + -88.33, + 52.03 + ], + [ + -88.52, + 52.03 + ] + ], + [ + [ + -88.2, + 52.19 + ], + [ + -88.29, + 52.24 + ], + [ + -88.48, + 52.19 + ], + [ + -88.2, + 52.19 + ] + ], + [ + [ + -90.79, + 52.79 + ], + [ + -91.05, + 52.75 + ], + [ + -90.48, + 52.68 + ], + [ + -90.91, + 52.93 + ], + [ + -90.79, + 52.79 + ] + ], + [ + [ + -85.28, + 52.4 + ], + [ + -85.32, + 52.27 + ], + [ + -85.08, + 52.23 + ], + [ + -85.28, + 52.4 + ] + ], + [ + [ + -87.63, + 52.93 + ], + [ + -87.85, + 52.85 + ], + [ + -87.54, + 52.84 + ], + [ + -87.63, + 52.93 + ] + ], + [ + [ + -87.98, + 52.96 + ], + [ + -87.89, + 52.81 + ], + [ + -87.81, + 52.98 + ], + [ + -87.98, + 52.96 + ] + ], + [ + [ + -91.58, + 52.91 + ], + [ + -91.32, + 52.79 + ], + [ + -91.23, + 52.88 + ], + [ + -91.58, + 52.91 + ] + ], + [ + [ + -87.76, + 52.24 + ], + [ + -87.93, + 52.35 + ], + [ + -88.15, + 52.21 + ], + [ + -87.76, + 52.24 + ] + ], + [ + [ + -92.91, + 49.75 + ], + [ + -92.61, + 49.67 + ], + [ + -92.64, + 49.79 + ], + [ + -92.91, + 49.75 + ] + ], + [ + [ + -91.93, + 50.1 + ], + [ + -92.02, + 49.97 + ], + [ + -91.84, + 49.9 + ], + [ + -91.93, + 50.1 + ] + ], + [ + [ + -92.64, + 50.23 + ], + [ + -92.42, + 50.3 + ], + [ + -92.41, + 50.15 + ], + [ + -92.29, + 50.3 + ], + [ + -92.2, + 50.16 + ], + [ + -92.17, + 50.37 + ], + [ + -92.02, + 50.25 + ], + [ + -91.84, + 50.43 + ], + [ + -92.72, + 50.37 + ], + [ + -92.7, + 50.6 + ], + [ + -92.92, + 50.47 + ], + [ + -93.16, + 50.64 + ], + [ + -92.94, + 50.4 + ], + [ + -92.64, + 50.23 + ] + ], + [ + [ + -80.24, + 50.44 + ], + [ + -80.33, + 50.26 + ], + [ + -80.08, + 50.42 + ], + [ + -80.24, + 50.44 + ] + ], + [ + [ + -87.85, + 51.05 + ], + [ + -87.98, + 50.9 + ], + [ + -87.77, + 50.93 + ], + [ + -87.85, + 51.05 + ] + ], + [ + [ + -86.85, + 50.37 + ], + [ + -86.98, + 50.32 + ], + [ + -86.69, + 50.35 + ], + [ + -86.85, + 50.37 + ] + ], + [ + [ + -93.93, + 51.07 + ], + [ + -94.2, + 50.99 + ], + [ + -93.76, + 51.04 + ], + [ + -93.93, + 51.07 + ] + ], + [ + [ + -93.3, + 51.1 + ], + [ + -93.05, + 51.15 + ], + [ + -93.38, + 51.33 + ], + [ + -93.5, + 51.21 + ], + [ + -93.3, + 51.1 + ] + ], + [ + [ + -80.82, + 46.77 + ], + [ + -80.68, + 46.66 + ], + [ + -80.61, + 46.74 + ], + [ + -80.82, + 46.77 + ] + ], + [ + [ + -84.29, + 48.92 + ], + [ + -84.29, + 48.94 + ], + [ + -84.24, + 48.95 + ], + [ + -84.37, + 48.92 + ], + [ + -84.46, + 48.91 + ], + [ + -84.5, + 48.79 + ], + [ + -84.37, + 48.91 + ], + [ + -84.29, + 48.92 + ] + ], + [ + [ + -93.96, + 49.21 + ], + [ + -93.67, + 49.19 + ], + [ + -93.91, + 49.31 + ], + [ + -93.96, + 49.21 + ] + ], + [ + [ + -86.18, + 48.92 + ], + [ + -86.15, + 48.89 + ], + [ + -86.13, + 48.91 + ], + [ + -86.18, + 48.92 + ] + ], + [ + [ + -94.13, + 49.44 + ], + [ + -94.31, + 49.43 + ], + [ + -94.09, + 49.28 + ], + [ + -94.13, + 49.44 + ] + ], + [ + [ + -88.59, + 49.61 + ], + [ + -88.77, + 49.41 + ], + [ + -88.53, + 49.44 + ], + [ + -88.55, + 49.57 + ], + [ + -88.42, + 49.34 + ], + [ + -88.33, + 49.47 + ], + [ + -88.14, + 49.38 + ], + [ + -88.07, + 49.94 + ], + [ + -88.26, + 49.98 + ], + [ + -88.2, + 50.23 + ], + [ + -88.44, + 50.29 + ], + [ + -88.33, + 50.21 + ], + [ + -88.27, + 50.12 + ], + [ + -88.68, + 50.28 + ], + [ + -88.96, + 50.04 + ], + [ + -88.77, + 49.92 + ], + [ + -89.1, + 49.84 + ], + [ + -88.89, + 49.61 + ], + [ + -89.05, + 49.55 + ], + [ + -88.98, + 49.47 + ], + [ + -88.59, + 49.61 + ] + ], + [ + [ + -93.77, + 49.61 + ], + [ + -93.96, + 49.55 + ], + [ + -93.7, + 49.5 + ], + [ + -93.77, + 49.61 + ] + ], + [ + [ + -63.7, + 55.13 + ], + [ + -63.93, + 55.04 + ], + [ + -63.63, + 54.91 + ], + [ + -63.7, + 55.13 + ] + ], + [ + [ + -63.02, + 55.54 + ], + [ + -62.97, + 55.64 + ], + [ + -63.17, + 55.6 + ], + [ + -63.02, + 55.54 + ] + ], + [ + [ + -63.94, + 55.92 + ], + [ + -63.96, + 55.92 + ], + [ + -63.98, + 55.92 + ], + [ + -63.94, + 55.9 + ], + [ + -63.92, + 55.9 + ], + [ + -63.94, + 55.9 + ], + [ + -63.94, + 55.92 + ] + ], + [ + [ + -63.02, + 57.18 + ], + [ + -62.97, + 57.08 + ], + [ + -62.82, + 57.16 + ], + [ + -63.02, + 57.18 + ] + ], + [ + [ + -64.31, + 56.24 + ], + [ + -64.33, + 56.08 + ], + [ + -64.25, + 56.17 + ], + [ + -64.31, + 56.24 + ] + ], + [ + [ + -64.24, + 56.1 + ], + [ + -64.2, + 56 + ], + [ + -64.08, + 56.12 + ], + [ + -64.24, + 56.1 + ] + ], + [ + [ + -60.73, + 54.29 + ], + [ + -60.95, + 54.16 + ], + [ + -60.82, + 54.09 + ], + [ + -60.73, + 54.29 + ] + ], + [ + [ + -66.27, + 54.34 + ], + [ + -66.49, + 54.39 + ], + [ + -66.45, + 54.2 + ], + [ + -66.47, + 54.37 + ], + [ + -66.27, + 54.34 + ] + ], + [ + [ + -63.63, + 54.47 + ], + [ + -63.79, + 54.37 + ], + [ + -63.53, + 54.34 + ], + [ + -63.53, + 54.52 + ], + [ + -63.63, + 54.47 + ] + ], + [ + [ + -63.33, + 54.44 + ], + [ + -63.41, + 54.35 + ], + [ + -63.49, + 54.42 + ], + [ + -63.48, + 54.33 + ], + [ + -63.66, + 54.29 + ], + [ + -63.26, + 54.24 + ], + [ + -63.33, + 54.44 + ] + ], + [ + [ + -65.28, + 54.55 + ], + [ + -65.3, + 54.43 + ], + [ + -65.11, + 54.47 + ], + [ + -65.28, + 54.55 + ] + ], + [ + [ + -60.32, + 54.57 + ], + [ + -60.47, + 54.51 + ], + [ + -60.13, + 54.52 + ], + [ + -60.32, + 54.57 + ] + ], + [ + [ + -61.26, + 54.57 + ], + [ + -61.66, + 54.58 + ], + [ + -61.52, + 54.46 + ], + [ + -61.26, + 54.57 + ] + ], + [ + [ + -65.17, + 54.8 + ], + [ + -65.39, + 54.83 + ], + [ + -65.3, + 54.7 + ], + [ + -65.17, + 54.8 + ] + ], + [ + [ + -65.46, + 53.59 + ], + [ + -65.63, + 53.5 + ], + [ + -64.97, + 53.41 + ], + [ + -65.46, + 53.59 + ] + ], + [ + [ + -66.6, + 53.2 + ], + [ + -66.2, + 53.33 + ], + [ + -66.49, + 53.35 + ], + [ + -66.6, + 53.2 + ] + ], + [ + [ + -60.95, + 53.72 + ], + [ + -60.21, + 53.54 + ], + [ + -60.84, + 53.81 + ], + [ + -60.95, + 53.72 + ] + ], + [ + [ + -62.45, + 53.84 + ], + [ + -62.72, + 53.8 + ], + [ + -62.49, + 53.8 + ], + [ + -62.45, + 53.84 + ] + ], + [ + [ + -64.82, + 54.19 + ], + [ + -64.82, + 54.07 + ], + [ + -65.08, + 54.19 + ], + [ + -65.21, + 54.1 + ], + [ + -65.3, + 54.26 + ], + [ + -65.65, + 53.91 + ], + [ + -65.47, + 53.96 + ], + [ + -65.3, + 53.75 + ], + [ + -65.04, + 53.88 + ], + [ + -64.69, + 53.8 + ], + [ + -64.86, + 53.88 + ], + [ + -64.6, + 53.83 + ], + [ + -64.75, + 53.88 + ], + [ + -64.49, + 53.93 + ], + [ + -64.56, + 54.06 + ], + [ + -64.36, + 54.01 + ], + [ + -64.38, + 54.01 + ], + [ + -64.36, + 54.01 + ], + [ + -64.18, + 54.11 + ], + [ + -64.12, + 53.8 + ], + [ + -63.46, + 53.89 + ], + [ + -63.7, + 54.09 + ], + [ + -63.68, + 54.09 + ], + [ + -63.02, + 54.14 + ], + [ + -62.97, + 54.16 + ], + [ + -63.02, + 54.14 + ], + [ + -63.59, + 54.11 + ], + [ + -63.7, + 54.09 + ], + [ + -63.72, + 54.09 + ], + [ + -64.01, + 54.37 + ], + [ + -64.12, + 54.27 + ], + [ + -64.42, + 54.77 + ], + [ + -64.48, + 54.21 + ], + [ + -64.56, + 54.36 + ], + [ + -64.79, + 54.32 + ], + [ + -64.73, + 54.12 + ], + [ + -64.49, + 54.11 + ], + [ + -64.69, + 54.06 + ], + [ + -64.82, + 54.19 + ] + ], + [ + [ + -63.19, + 54.09 + ], + [ + -63.28, + 53.93 + ], + [ + -63.08, + 53.98 + ], + [ + -63.19, + 54.09 + ] + ], + [ + [ + -64.82, + 53.77 + ], + [ + -64.86, + 53.67 + ], + [ + -64.52, + 53.7 + ], + [ + -64.82, + 53.77 + ] + ], + [ + [ + -65.65, + 54.14 + ], + [ + -66.03, + 54.33 + ], + [ + -65.61, + 54.04 + ], + [ + -65.65, + 54.14 + ] + ], + [ + [ + -69.31, + 57.8 + ], + [ + -69.04, + 57.91 + ], + [ + -69.19, + 57.86 + ], + [ + -69.31, + 57.8 + ] + ], + [ + [ + -73.8, + 59.45 + ], + [ + -73.7, + 59.3 + ], + [ + -73.33, + 59.29 + ], + [ + -73.8, + 59.45 + ] + ], + [ + [ + -73.65, + 60.52 + ], + [ + -73.99, + 60.57 + ], + [ + -73.46, + 60.46 + ], + [ + -73.65, + 60.52 + ] + ], + [ + [ + -71.89, + 58.95 + ], + [ + -71.61, + 58.95 + ], + [ + -71.94, + 59.2 + ], + [ + -71.89, + 58.95 + ] + ], + [ + [ + -71.59, + 54.6 + ], + [ + -71.67, + 54.5 + ], + [ + -71.41, + 54.57 + ], + [ + -71.59, + 54.6 + ] + ], + [ + [ + -70.71, + 54.83 + ], + [ + -70.91, + 54.67 + ], + [ + -70.49, + 54.55 + ], + [ + -70.71, + 54.83 + ] + ], + [ + [ + -67.87, + 54.85 + ], + [ + -67.81, + 54.75 + ], + [ + -67.59, + 54.81 + ], + [ + -67.87, + 54.85 + ] + ], + [ + [ + -66.67, + 55 + ], + [ + -66.36, + 54.83 + ], + [ + -66.4, + 55.09 + ], + [ + -66.67, + 55 + ] + ], + [ + [ + -72.35, + 55.25 + ], + [ + -73.54, + 55.03 + ], + [ + -72.95, + 54.9 + ], + [ + -72.33, + 55.1 + ], + [ + -72.35, + 55.25 + ] + ], + [ + [ + -74.66, + 57.42 + ], + [ + -74.71, + 57.27 + ], + [ + -74.44, + 57.34 + ], + [ + -74.66, + 57.42 + ] + ], + [ + [ + -73.85, + 57.6 + ], + [ + -74, + 57.52 + ], + [ + -73.65, + 57.64 + ], + [ + -73.85, + 57.6 + ] + ], + [ + [ + -73.44, + 56.66 + ], + [ + -74.27, + 56.46 + ], + [ + -74, + 56.32 + ], + [ + -73.74, + 56.52 + ], + [ + -73.21, + 56.5 + ], + [ + -73.55, + 56.56 + ], + [ + -73.44, + 56.66 + ] + ], + [ + [ + -70.22, + 54.32 + ], + [ + -70.05, + 54.29 + ], + [ + -70.18, + 54.06 + ], + [ + -69.92, + 54.33 + ], + [ + -69.87, + 54.1 + ], + [ + -69.87, + 53.92 + ], + [ + -69.67, + 54.01 + ], + [ + -69.48, + 54.06 + ], + [ + -69.83, + 54.17 + ], + [ + -69.63, + 54.27 + ], + [ + -69.92, + 54.42 + ], + [ + -69.59, + 54.35 + ], + [ + -69.88, + 54.72 + ], + [ + -69.52, + 54.65 + ], + [ + -69.21, + 54.55 + ], + [ + -69.22, + 54.39 + ], + [ + -68.95, + 54.42 + ], + [ + -69.04, + 54.78 + ], + [ + -69.8, + 54.89 + ], + [ + -70.21, + 54.72 + ], + [ + -69.99, + 54.44 + ], + [ + -70.4, + 54.44 + ], + [ + -70.4, + 54.39 + ], + [ + -70.58, + 54.4 + ], + [ + -70.31, + 54.33 + ], + [ + -70.22, + 54.44 + ], + [ + -70.22, + 54.32 + ] + ], + [ + [ + -68, + 53.25 + ], + [ + -68.4, + 53.12 + ], + [ + -68.09, + 53.07 + ], + [ + -68, + 53.25 + ] + ], + [ + [ + -72.42, + 54.3 + ], + [ + -72.85, + 54.26 + ], + [ + -72.6, + 54.15 + ], + [ + -72.26, + 54.29 + ], + [ + -72.16, + 54.16 + ], + [ + -71.7, + 54.52 + ], + [ + -72.33, + 54.47 + ], + [ + -72.54, + 54.39 + ], + [ + -72.42, + 54.3 + ] + ], + [ + [ + -72.69, + 53.85 + ], + [ + -72.69, + 53.76 + ], + [ + -72.5, + 53.83 + ], + [ + -72.69, + 53.85 + ] + ], + [ + [ + -66.75, + 53.07 + ], + [ + -66.51, + 53.07 + ], + [ + -66.71, + 53.17 + ], + [ + -66.75, + 53.07 + ] + ], + [ + [ + -73.21, + 54.19 + ], + [ + -73.67, + 53.93 + ], + [ + -73.41, + 53.94 + ], + [ + -73.26, + 53.76 + ], + [ + -73.06, + 53.93 + ], + [ + -72.82, + 53.91 + ], + [ + -73.14, + 53.98 + ], + [ + -72.97, + 54.06 + ], + [ + -73.28, + 54.05 + ], + [ + -73.21, + 54.19 + ] + ], + [ + [ + -66.58, + 54.27 + ], + [ + -66.55, + 54.27 + ], + [ + -66.47, + 54.06 + ], + [ + -66.53, + 54.27 + ], + [ + -66.55, + 54.27 + ], + [ + -66.65, + 54.44 + ], + [ + -66.51, + 54.42 + ], + [ + -66.49, + 54.52 + ], + [ + -66.79, + 54.52 + ], + [ + -66.58, + 54.27 + ] + ], + [ + [ + -66.27, + 54.6 + ], + [ + -66.27, + 54.65 + ], + [ + -66.4, + 54.75 + ], + [ + -66.58, + 54.81 + ], + [ + -66.43, + 54.7 + ], + [ + -66.67, + 54.57 + ], + [ + -66.56, + 54.52 + ], + [ + -66.53, + 54.59 + ], + [ + -66.37, + 54.44 + ], + [ + -66.49, + 54.65 + ], + [ + -66.27, + 54.6 + ] + ], + [ + [ + -74.75, + 57.23 + ], + [ + -74.9, + 57.23 + ], + [ + -75.21, + 57.3 + ], + [ + -75.1, + 57.17 + ], + [ + -75.58, + 57.17 + ], + [ + -75.15, + 57.14 + ], + [ + -74.6, + 57.18 + ], + [ + -74.75, + 57.23 + ] + ], + [ + [ + -93.8, + 58.24 + ], + [ + -93.68, + 58.12 + ], + [ + -93.78, + 58.23 + ], + [ + -93.58, + 58.22 + ], + [ + -93.8, + 58.24 + ] + ], + [ + [ + -76.13, + 58.77 + ], + [ + -76.16, + 58.66 + ], + [ + -75.87, + 58.68 + ], + [ + -76.13, + 58.77 + ] + ], + [ + [ + -93.25, + 69.43 + ], + [ + -93.08, + 69.06 + ], + [ + -92.77, + 69.39 + ], + [ + -93.25, + 69.43 + ] + ], + [ + [ + -92.99, + 69.57 + ], + [ + -93.2, + 69.46 + ], + [ + -92.74, + 69.49 + ], + [ + -92.77, + 69.63 + ], + [ + -92.99, + 69.57 + ] + ], + [ + [ + -92.81, + 69.02 + ], + [ + -92.1, + 69.21 + ], + [ + -92.42, + 69.25 + ], + [ + -92.81, + 69.02 + ] + ], + [ + [ + -92.72, + 63.19 + ], + [ + -93.02, + 63.25 + ], + [ + -92.9, + 63.15 + ], + [ + -92.86, + 63.01 + ], + [ + -92.72, + 63.19 + ] + ], + [ + [ + -74.53, + 59.53 + ], + [ + -74.75, + 59.47 + ], + [ + -73.96, + 59.43 + ], + [ + -74.53, + 59.53 + ] + ], + [ + [ + -88.29, + 53.64 + ], + [ + -88.35, + 53.54 + ], + [ + -88.11, + 53.5 + ], + [ + -88.29, + 53.64 + ] + ], + [ + [ + -75.23, + 53.71 + ], + [ + -74.28, + 53.9 + ], + [ + -74.44, + 53.99 + ], + [ + -74.95, + 53.81 + ], + [ + -75.06, + 53.94 + ], + [ + -75.56, + 53.92 + ], + [ + -76.04, + 53.7 + ], + [ + -75.41, + 53.74 + ], + [ + -75.59, + 53.64 + ], + [ + -75.21, + 53.62 + ], + [ + -75.23, + 53.71 + ] + ], + [ + [ + -74.95, + 53.72 + ], + [ + -74.96, + 53.62 + ], + [ + -74.5, + 53.7 + ], + [ + -74.95, + 53.72 + ] + ], + [ + [ + -90, + 53.9 + ], + [ + -90.18, + 53.83 + ], + [ + -90.4, + 53.75 + ], + [ + -89.71, + 53.67 + ], + [ + -89.96, + 53.81 + ], + [ + -90, + 53.9 + ] + ], + [ + [ + -78.43, + 53.75 + ], + [ + -78.66, + 53.74 + ], + [ + -78.23, + 53.74 + ], + [ + -78.43, + 53.75 + ] + ], + [ + [ + -92.16, + 53.88 + ], + [ + -92.2, + 53.73 + ], + [ + -91.85, + 53.76 + ], + [ + -92.16, + 53.88 + ] + ], + [ + [ + -79.56, + 54.82 + ], + [ + -79.76, + 54.77 + ], + [ + -79.02, + 54.93 + ], + [ + -79.56, + 54.82 + ] + ], + [ + [ + -74.75, + 56.32 + ], + [ + -74.82, + 56.1 + ], + [ + -73.91, + 56 + ], + [ + -73.96, + 56.15 + ], + [ + -74.34, + 56.15 + ], + [ + -74.31, + 56.32 + ], + [ + -74.75, + 56.32 + ] + ], + [ + [ + -87.39, + 53.12 + ], + [ + -87.41, + 53.12 + ], + [ + -87.39, + 53.12 + ], + [ + -87.32, + 53.04 + ], + [ + -87.5, + 53.07 + ], + [ + -87.34, + 52.96 + ], + [ + -87.54, + 52.86 + ], + [ + -87.14, + 52.86 + ], + [ + -87.34, + 52.96 + ], + [ + -87.32, + 53.04 + ], + [ + -87.36, + 53.12 + ], + [ + -87.39, + 53.12 + ] + ], + [ + [ + -89.01, + 53.01 + ], + [ + -89.3, + 52.99 + ], + [ + -89.25, + 52.86 + ], + [ + -89.03, + 52.86 + ], + [ + -89.01, + 53.01 + ] + ], + [ + [ + -93.34, + 53.01 + ], + [ + -92.74, + 52.96 + ], + [ + -92.53, + 53.07 + ], + [ + -92.67, + 53.17 + ], + [ + -93.34, + 53.01 + ] + ], + [ + [ + -88.7, + 52.88 + ], + [ + -88.95, + 52.86 + ], + [ + -88.51, + 52.85 + ], + [ + -88.7, + 52.88 + ] + ], + [ + [ + -76.75, + 53.28 + ], + [ + -76.84, + 53.41 + ], + [ + -76.92, + 53.33 + ], + [ + -76.77, + 53.25 + ], + [ + -76.93, + 53.25 + ], + [ + -76.86, + 53.2 + ], + [ + -76.93, + 53.04 + ], + [ + -76.86, + 52.95 + ], + [ + -76.66, + 52.96 + ], + [ + -76.86, + 52.96 + ], + [ + -76.65, + 52.99 + ], + [ + -76.89, + 53.07 + ], + [ + -76.78, + 53.2 + ], + [ + -76.69, + 53.15 + ], + [ + -76.75, + 53.28 + ] + ], + [ + [ + -76.58, + 53.46 + ], + [ + -76.73, + 53.35 + ], + [ + -76.45, + 53.38 + ], + [ + -76.58, + 53.46 + ] + ], + [ + [ + -75.61, + 53.57 + ], + [ + -75.84, + 53.64 + ], + [ + -76, + 53.46 + ], + [ + -75.68, + 53.44 + ], + [ + -75.78, + 53.55 + ], + [ + -75.61, + 53.57 + ] + ], + [ + [ + -76.16, + 54.06 + ], + [ + -76.31, + 54.09 + ], + [ + -76.16, + 54.09 + ], + [ + -76.33, + 54.25 + ], + [ + -76.29, + 54.11 + ], + [ + -76.51, + 54.09 + ], + [ + -76.85, + 54.11 + ], + [ + -76.52, + 54.03 + ], + [ + -77.12, + 53.76 + ], + [ + -77.58, + 53.77 + ], + [ + -77.56, + 53.64 + ], + [ + -77.38, + 53.49 + ], + [ + -76.84, + 53.59 + ], + [ + -76.19, + 53.59 + ], + [ + -76.49, + 53.64 + ], + [ + -76.25, + 53.75 + ], + [ + -76.76, + 53.72 + ], + [ + -76.33, + 53.85 + ], + [ + -76.57, + 53.98 + ], + [ + -76.41, + 53.9 + ], + [ + -76.16, + 54.06 + ] + ] + ], + [ + [ + [ + -110.76, + 61.61 + ], + [ + -110.72, + 61.74 + ], + [ + -110.79, + 61.44 + ], + [ + -110.76, + 61.61 + ] + ] + ], + [ + [ + [ + -64.73, + 56.23 + ], + [ + -64.77, + 56.05 + ], + [ + -64.77, + 56.4 + ], + [ + -64.73, + 56.23 + ] + ] + ], + [ + [ + [ + -105.07, + 55.79 + ], + [ + -105.03, + 55.78 + ], + [ + -105.07, + 55.79 + ], + [ + -105.25, + 55.65 + ], + [ + -105.12, + 55.76 + ], + [ + -105.07, + 55.79 + ] + ] + ], + [ + [ + [ + -107.75, + 55.79 + ], + [ + -107.89, + 55.35 + ], + [ + -107.75, + 55.94 + ], + [ + -107.75, + 55.79 + ] + ] + ], + [ + [ + [ + -74.64, + 45 + ], + [ + -74.67, + 45.01 + ], + [ + -74.66, + 45.01 + ], + [ + -74.64, + 45 + ] + ] + ], + [ + [ + [ + -83.91, + 46.06 + ], + [ + -83.92, + 46.06 + ], + [ + -83.94, + 46.06 + ], + [ + -84.08, + 46.2 + ], + [ + -84.1, + 46.25 + ], + [ + -84.1, + 46.26 + ], + [ + -84.11, + 46.32 + ], + [ + -83.93, + 46.32 + ], + [ + -83.83, + 46.16 + ], + [ + -83.91, + 46.06 + ] + ] + ], + [ + [ + [ + -82.86, + 66.26 + ], + [ + -83.05, + 66.2 + ], + [ + -83.25, + 66.36 + ], + [ + -82.86, + 66.26 + ] + ] + ], + [ + [ + [ + -85.15, + 65.95 + ], + [ + -84.92, + 66.02 + ], + [ + -84.73, + 65.87 + ], + [ + -84.71, + 65.54 + ], + [ + -85.15, + 65.95 + ] + ] + ], + [ + [ + [ + -84.17, + 65.95 + ], + [ + -84.44, + 66.14 + ], + [ + -83.22, + 65.65 + ], + [ + -83.83, + 65.65 + ], + [ + -83.66, + 65.75 + ], + [ + -84.12, + 65.76 + ], + [ + -84.17, + 65.95 + ] + ] + ], + [ + [ + [ + -86.74, + 68.26 + ], + [ + -86.41, + 68.2 + ], + [ + -86.57, + 67.72 + ], + [ + -86.96, + 67.9 + ], + [ + -86.74, + 68.26 + ] + ] + ], + [ + [ + [ + -100.29, + 68.76 + ], + [ + -100.6, + 68.77 + ], + [ + -100.52, + 69.05 + ], + [ + -100.12, + 68.91 + ], + [ + -100.29, + 68.76 + ] + ] + ], + [ + [ + [ + -101.68, + 68.75 + ], + [ + -101.81, + 68.56 + ], + [ + -102.33, + 68.7 + ], + [ + -101.97, + 68.83 + ], + [ + -101.68, + 68.75 + ] + ] + ], + [ + [ + [ + -98.65, + 69.29 + ], + [ + -98.35, + 69.31 + ], + [ + -98.53, + 69.59 + ], + [ + -97.98, + 69.44 + ], + [ + -98.34, + 69.61 + ], + [ + -97.92, + 69.9 + ], + [ + -97.38, + 69.58 + ], + [ + -97.26, + 69.71 + ], + [ + -96.26, + 69.35 + ], + [ + -96.14, + 69.02 + ], + [ + -96.01, + 69.24 + ], + [ + -95.83, + 68.88 + ], + [ + -95.16, + 68.87 + ], + [ + -96.26, + 68.47 + ], + [ + -97.44, + 68.55 + ], + [ + -98.25, + 68.84 + ], + [ + -98.71, + 68.8 + ], + [ + -98.85, + 68.95 + ], + [ + -99.17, + 68.83 + ], + [ + -99.42, + 68.9 + ], + [ + -99.47, + 69.12 + ], + [ + -98.65, + 69.29 + ] + ] + ], + [ + [ + [ + -104.67, + 68.58 + ], + [ + -104.56, + 68.4 + ], + [ + -105.08, + 68.55 + ], + [ + -104.67, + 68.58 + ] + ] + ], + [ + [ + [ + -85.03, + 77.58 + ], + [ + -85.11, + 77.45 + ], + [ + -85.52, + 77.54 + ], + [ + -85.03, + 77.58 + ] + ] + ], + [ + [ + [ + -85.87, + 79.06 + ], + [ + -85.17, + 79.01 + ], + [ + -86.48, + 78.9 + ], + [ + -85.87, + 79.06 + ] + ] + ], + [ + [ + [ + -89.78, + 76.78 + ], + [ + -89.97, + 76.47 + ], + [ + -90.6, + 76.74 + ], + [ + -89.78, + 76.78 + ] + ] + ], + [ + [ + [ + -84.39, + 82 + ], + [ + -86.85, + 82.2 + ], + [ + -85.31, + 82.28 + ], + [ + -85.74, + 82.46 + ], + [ + -84.48, + 82.36 + ], + [ + -84.36, + 82.35 + ], + [ + -83.14, + 82.05 + ], + [ + -81.29, + 81.89 + ], + [ + -82.61, + 82.28 + ], + [ + -79.44, + 81.88 + ], + [ + -82.68, + 82.39 + ], + [ + -81.32, + 82.48 + ], + [ + -82.14, + 82.67 + ], + [ + -80.26, + 82.46 + ], + [ + -81.42, + 82.82 + ], + [ + -79.56, + 82.58 + ], + [ + -79.88, + 82.71 + ], + [ + -78.32, + 82.67 + ], + [ + -80.34, + 82.87 + ], + [ + -79.06, + 82.92 + ], + [ + -77.12, + 82.86 + ], + [ + -76.19, + 82.5 + ], + [ + -75.23, + 82.63 + ], + [ + -77.46, + 83.05 + ], + [ + -74.04, + 83.14 + ], + [ + -73.83, + 82.83 + ], + [ + -72.57, + 82.59 + ], + [ + -73.81, + 83.03 + ], + [ + -71.55, + 83.1 + ], + [ + -70.93, + 82.87 + ], + [ + -71.06, + 83.09 + ], + [ + -69.69, + 83.11 + ], + [ + -68.77, + 82.92 + ], + [ + -68.49, + 83.01 + ], + [ + -66.32, + 82.93 + ], + [ + -69.66, + 82.52 + ], + [ + -67.37, + 82.65 + ], + [ + -65.73, + 82.85 + ], + [ + -65.1, + 82.72 + ], + [ + -64.88, + 82.91 + ], + [ + -64.86, + 82.68 + ], + [ + -63.57, + 82.83 + ], + [ + -63.63, + 82.43 + ], + [ + -61.67, + 82.49 + ], + [ + -61.16, + 82.23 + ], + [ + -64.36, + 81.71 + ], + [ + -68.23, + 81.56 + ], + [ + -69.26, + 81.72 + ], + [ + -68.52, + 81.51 + ], + [ + -66.6, + 81.52 + ], + [ + -70.01, + 81.08 + ], + [ + -64.52, + 81.55 + ], + [ + -64.67, + 81.39 + ], + [ + -67.79, + 80.94 + ], + [ + -69.53, + 80.37 + ], + [ + -70.22, + 80.34 + ], + [ + -70.65, + 80.55 + ], + [ + -72.04, + 80.64 + ], + [ + -70.78, + 80.55 + ], + [ + -70.42, + 80.34 + ], + [ + -69.89, + 80.25 + ], + [ + -71.6, + 80.11 + ], + [ + -72.38, + 80.21 + ], + [ + -72.22, + 80.06 + ], + [ + -70.46, + 80.1 + ], + [ + -71.45, + 79.72 + ], + [ + -72.67, + 79.67 + ], + [ + -72.85, + 79.82 + ], + [ + -74.39, + 79.89 + ], + [ + -75.2, + 79.81 + ], + [ + -73.3, + 79.78 + ], + [ + -73.18, + 79.52 + ], + [ + -74.93, + 79.51 + ], + [ + -75.15, + 79.37 + ], + [ + -77.11, + 79.57 + ], + [ + -75.87, + 79.34 + ], + [ + -77.09, + 79.47 + ], + [ + -77.14, + 79.32 + ], + [ + -78.05, + 79.35 + ], + [ + -77.57, + 79.24 + ], + [ + -74.47, + 79.23 + ], + [ + -74.41, + 79.04 + ], + [ + -76.13, + 79.2 + ], + [ + -78.46, + 79.15 + ], + [ + -76.07, + 79.08 + ], + [ + -78.8, + 79.07 + ], + [ + -77.66, + 79.02 + ], + [ + -78.16, + 78.77 + ], + [ + -76.68, + 79.03 + ], + [ + -75.7, + 78.97 + ], + [ + -76.43, + 78.84 + ], + [ + -74.72, + 78.82 + ], + [ + -74.57, + 78.59 + ], + [ + -76.62, + 78.53 + ], + [ + -75, + 78.33 + ], + [ + -75.63, + 78.2 + ], + [ + -76.94, + 78.22 + ], + [ + -75.56, + 78.13 + ], + [ + -75.86, + 77.96 + ], + [ + -78.34, + 77.97 + ], + [ + -77.7, + 77.61 + ], + [ + -79.17, + 77.29 + ], + [ + -80.86, + 77.35 + ], + [ + -81.88, + 77.72 + ], + [ + -81.79, + 77.44 + ], + [ + -81.14, + 77.34 + ], + [ + -82.2, + 77.3 + ], + [ + -81.79, + 77.16 + ], + [ + -81.07, + 77.29 + ], + [ + -80.06, + 77.2 + ], + [ + -80.34, + 77.07 + ], + [ + -79.28, + 77.22 + ], + [ + -79.4, + 76.92 + ], + [ + -78.73, + 76.81 + ], + [ + -78.09, + 77.02 + ], + [ + -77.74, + 76.81 + ], + [ + -78.39, + 76.46 + ], + [ + -79.04, + 76.57 + ], + [ + -79.45, + 76.31 + ], + [ + -81.04, + 76.13 + ], + [ + -80.79, + 76.43 + ], + [ + -82.09, + 76.52 + ], + [ + -81.77, + 76.69 + ], + [ + -82.29, + 76.64 + ], + [ + -82.73, + 76.83 + ], + [ + -82.19, + 76.41 + ], + [ + -83.04, + 76.44 + ], + [ + -83.39, + 76.76 + ], + [ + -83.2, + 76.41 + ], + [ + -84.28, + 76.66 + ], + [ + -84.14, + 76.48 + ], + [ + -84.63, + 76.43 + ], + [ + -85.22, + 76.64 + ], + [ + -84.38, + 76.31 + ], + [ + -84.92, + 76.28 + ], + [ + -86.39, + 76.39 + ], + [ + -86.6, + 76.64 + ], + [ + -86.67, + 76.34 + ], + [ + -87.51, + 76.63 + ], + [ + -87.4, + 76.35 + ], + [ + -88.38, + 76.39 + ], + [ + -88.45, + 76.84 + ], + [ + -88.59, + 76.4 + ], + [ + -88.68, + 76.6 + ], + [ + -88.9, + 76.41 + ], + [ + -89.66, + 76.57 + ], + [ + -88.54, + 77.1 + ], + [ + -86.59, + 77.19 + ], + [ + -87.23, + 77.2 + ], + [ + -86.78, + 77.36 + ], + [ + -87.72, + 77.36 + ], + [ + -88.22, + 77.85 + ], + [ + -86.41, + 77.84 + ], + [ + -85.81, + 77.42 + ], + [ + -84.44, + 77.29 + ], + [ + -84.55, + 77.4 + ], + [ + -83.46, + 77.35 + ], + [ + -83.83, + 77.46 + ], + [ + -82.31, + 78.04 + ], + [ + -83.9, + 77.49 + ], + [ + -84.85, + 77.54 + ], + [ + -84.42, + 77.75 + ], + [ + -84.92, + 77.6 + ], + [ + -85.28, + 77.67 + ], + [ + -85.29, + 77.87 + ], + [ + -84.46, + 77.91 + ], + [ + -85.68, + 77.93 + ], + [ + -84.21, + 78.04 + ], + [ + -84.97, + 78.18 + ], + [ + -83.99, + 78.17 + ], + [ + -84.95, + 78.22 + ], + [ + -84.61, + 78.6 + ], + [ + -85.44, + 78.1 + ], + [ + -86.26, + 78.08 + ], + [ + -85.79, + 78.39 + ], + [ + -86.69, + 78.12 + ], + [ + -87.52, + 78.13 + ], + [ + -86.63, + 78.8 + ], + [ + -85.07, + 78.92 + ], + [ + -82.35, + 78.57 + ], + [ + -82.19, + 78.73 + ], + [ + -83.24, + 78.85 + ], + [ + -81.62, + 78.89 + ], + [ + -81.53, + 79.06 + ], + [ + -82.53, + 78.89 + ], + [ + -84.69, + 79.02 + ], + [ + -84.5, + 79.15 + ], + [ + -83.33, + 79.06 + ], + [ + -84.33, + 79.19 + ], + [ + -85.14, + 79.65 + ], + [ + -86.45, + 79.78 + ], + [ + -86.39, + 79.97 + ], + [ + -85.23, + 79.93 + ], + [ + -86.49, + 80.02 + ], + [ + -86.49, + 80.3 + ], + [ + -83.85, + 80.26 + ], + [ + -81.72, + 79.59 + ], + [ + -80.59, + 79.56 + ], + [ + -79.74, + 79.7 + ], + [ + -81.52, + 79.72 + ], + [ + -81.43, + 79.95 + ], + [ + -83.2, + 80.33 + ], + [ + -78.08, + 80.56 + ], + [ + -79.99, + 80.62 + ], + [ + -76.46, + 80.86 + ], + [ + -78.97, + 80.88 + ], + [ + -76.85, + 81.45 + ], + [ + -78.61, + 81.12 + ], + [ + -79.45, + 81.19 + ], + [ + -79.47, + 80.85 + ], + [ + -81.59, + 80.6 + ], + [ + -83.17, + 80.56 + ], + [ + -81.92, + 80.84 + ], + [ + -83.33, + 80.68 + ], + [ + -83.22, + 80.84 + ], + [ + -83.91, + 80.53 + ], + [ + -86.71, + 80.6 + ], + [ + -85.68, + 80.97 + ], + [ + -82.33, + 81.18 + ], + [ + -85.67, + 81.05 + ], + [ + -87.2, + 80.63 + ], + [ + -88.18, + 80.68 + ], + [ + -89.4, + 80.92 + ], + [ + -85.76, + 81.07 + ], + [ + -84.88, + 81.3 + ], + [ + -89.7, + 81.01 + ], + [ + -90.25, + 81.2 + ], + [ + -89.04, + 81.25 + ], + [ + -89.91, + 81.34 + ], + [ + -87.86, + 81.54 + ], + [ + -90.37, + 81.36 + ], + [ + -90.8, + 81.45 + ], + [ + -89.51, + 81.62 + ], + [ + -90.22, + 81.7 + ], + [ + -91.4, + 81.51 + ], + [ + -91.88, + 81.66 + ], + [ + -89.8, + 81.91 + ], + [ + -89.23, + 81.78 + ], + [ + -89.25, + 81.94 + ], + [ + -89.06, + 81.76 + ], + [ + -88.01, + 82.1 + ], + [ + -86.79, + 81.87 + ], + [ + -86.26, + 82.05 + ], + [ + -84.9, + 81.79 + ], + [ + -85.7, + 82 + ], + [ + -84, + 81.84 + ], + [ + -84.39, + 82 + ], + [ + -84.36, + 82 + ], + [ + -84.39, + 82 + ] + ], + [ + [ + -67.54, + 82.1 + ], + [ + -67.48, + 82.11 + ], + [ + -67.54, + 82.11 + ], + [ + -67.54, + 82.1 + ] + ] + ], + [ + [ + [ + -90.98, + 77.63 + ], + [ + -89.73, + 77.47 + ], + [ + -90.12, + 77.2 + ], + [ + -91.21, + 77.39 + ], + [ + -90.98, + 77.63 + ] + ] + ], + [ + [ + [ + -87.18, + 70.02 + ], + [ + -87.07, + 70.16 + ], + [ + -86.45, + 70.01 + ], + [ + -87.18, + 70.02 + ] + ] + ], + [ + [ + [ + -90.48, + 69.36 + ], + [ + -90.2, + 69.45 + ], + [ + -90.27, + 69.25 + ], + [ + -90.48, + 69.36 + ] + ] + ], + [ + [ + [ + -94.81, + 75.86 + ], + [ + -94.5, + 75.99 + ], + [ + -94.29, + 75.76 + ], + [ + -94.81, + 75.86 + ] + ] + ], + [ + [ + [ + -96.26, + 77.69 + ], + [ + -95.48, + 77.82 + ], + [ + -93.08, + 77.67 + ], + [ + -93.9, + 77.44 + ], + [ + -95.83, + 77.47 + ], + [ + -96.26, + 77.69 + ] + ] + ], + [ + [ + [ + -94.09, + 72.04 + ], + [ + -95.21, + 72 + ], + [ + -94.73, + 72.16 + ], + [ + -95.16, + 72.13 + ], + [ + -95.85, + 73.11 + ], + [ + -95.48, + 73.13 + ], + [ + -95.64, + 73.74 + ], + [ + -94.75, + 73.66 + ], + [ + -95.3, + 73.99 + ], + [ + -93.47, + 74.18 + ], + [ + -92.6, + 74.12 + ], + [ + -92.34, + 73.94 + ], + [ + -91.53, + 74.03 + ], + [ + -90.29, + 73.93 + ], + [ + -92.08, + 72.75 + ], + [ + -94.29, + 72.78 + ], + [ + -93.75, + 72.75 + ], + [ + -93.44, + 72.46 + ], + [ + -94.09, + 72.04 + ] + ], + [ + [ + -95.16, + 72.88 + ], + [ + -94.88, + 72.64 + ], + [ + -94.37, + 72.7 + ], + [ + -95.16, + 72.88 + ] + ] + ], + [ + [ + [ + -95.61, + 69.61 + ], + [ + -95.49, + 69.32 + ], + [ + -95.68, + 69.58 + ], + [ + -95.98, + 69.37 + ], + [ + -95.9, + 69.6 + ], + [ + -95.61, + 69.61 + ] + ] + ], + [ + [ + [ + -90.08, + 78.57 + ], + [ + -89.47, + 78.15 + ], + [ + -90.23, + 78.34 + ], + [ + -90.75, + 78.32 + ], + [ + -90.33, + 78.14 + ], + [ + -92.12, + 78.22 + ], + [ + -92.98, + 78.48 + ], + [ + -91.89, + 78.57 + ], + [ + -93.29, + 78.58 + ], + [ + -93.82, + 78.77 + ], + [ + -93.03, + 78.76 + ], + [ + -94.3, + 78.99 + ], + [ + -93.38, + 79.16 + ], + [ + -90.34, + 79.25 + ], + [ + -92.26, + 79.21 + ], + [ + -92.57, + 79.3 + ], + [ + -91.12, + 79.39 + ], + [ + -92.11, + 79.34 + ], + [ + -93.09, + 79.49 + ], + [ + -93.86, + 79.27 + ], + [ + -94.38, + 79.43 + ], + [ + -95.12, + 79.27 + ], + [ + -95.73, + 79.54 + ], + [ + -94.26, + 79.76 + ], + [ + -95.72, + 79.64 + ], + [ + -96.64, + 79.88 + ], + [ + -96.68, + 80.15 + ], + [ + -94.33, + 79.98 + ], + [ + -94.79, + 80.09 + ], + [ + -94.07, + 80.18 + ], + [ + -95.33, + 80.12 + ], + [ + -95.21, + 80.24 + ], + [ + -95.91, + 80.19 + ], + [ + -96.62, + 80.33 + ], + [ + -95.22, + 80.38 + ], + [ + -95.96, + 80.58 + ], + [ + -93.78, + 80.52 + ], + [ + -95.49, + 80.81 + ], + [ + -94.88, + 81.06 + ], + [ + -94.35, + 80.96 + ], + [ + -94.27, + 81.11 + ], + [ + -92.99, + 81.1 + ], + [ + -94.35, + 81.25 + ], + [ + -94.08, + 81.37 + ], + [ + -92.06, + 81.23 + ], + [ + -90.75, + 80.56 + ], + [ + -89.22, + 80.53 + ], + [ + -88.33, + 80.08 + ], + [ + -88.61, + 80.38 + ], + [ + -87.61, + 80.41 + ], + [ + -87.55, + 80.18 + ], + [ + -88.25, + 80.15 + ], + [ + -87.25, + 80.08 + ], + [ + -87.48, + 79.84 + ], + [ + -86.94, + 79.92 + ], + [ + -87.4, + 79.52 + ], + [ + -86.31, + 79.65 + ], + [ + -86.04, + 79.44 + ], + [ + -85.7, + 79.62 + ], + [ + -84.88, + 79.28 + ], + [ + -86.7, + 78.96 + ], + [ + -86.99, + 79.06 + ], + [ + -87.62, + 78.64 + ], + [ + -87.73, + 79.09 + ], + [ + -88.14, + 79 + ], + [ + -87.87, + 78.56 + ], + [ + -88.2, + 78.45 + ], + [ + -88.8, + 78.61 + ], + [ + -88.82, + 78.15 + ], + [ + -90.08, + 78.57 + ] + ] + ], + [ + [ + [ + -96.11, + 75.61 + ], + [ + -96.84, + 75.36 + ], + [ + -97, + 75.51 + ], + [ + -96.11, + 75.61 + ] + ] + ], + [ + [ + [ + -93.49, + 75.11 + ], + [ + -93.72, + 74.64 + ], + [ + -95.06, + 74.68 + ], + [ + -96.08, + 75.03 + ], + [ + -96.23, + 74.91 + ], + [ + -96.63, + 74.99 + ], + [ + -95.77, + 75.52 + ], + [ + -94.91, + 75.64 + ], + [ + -93.64, + 75.36 + ], + [ + -93.49, + 75.11 + ] + ] + ], + [ + [ + [ + -81.06, + 75.64 + ], + [ + -80.24, + 75.63 + ], + [ + -79.93, + 75.54 + ], + [ + -80.44, + 75.46 + ], + [ + -79.48, + 75.38 + ], + [ + -80.43, + 75.01 + ], + [ + -79.59, + 75.02 + ], + [ + -79.34, + 74.89 + ], + [ + -79.97, + 74.81 + ], + [ + -80.37, + 74.93 + ], + [ + -80.3, + 74.58 + ], + [ + -82.79, + 74.53 + ], + [ + -83.51, + 74.9 + ], + [ + -83.45, + 74.59 + ], + [ + -84.26, + 74.5 + ], + [ + -84.91, + 74.5 + ], + [ + -85.01, + 74.7 + ], + [ + -85.23, + 74.49 + ], + [ + -85.56, + 74.69 + ], + [ + -85.61, + 74.49 + ], + [ + -86.13, + 74.48 + ], + [ + -86.18, + 74.61 + ], + [ + -86.46, + 74.48 + ], + [ + -86.79, + 74.62 + ], + [ + -86.62, + 74.47 + ], + [ + -88.54, + 74.5 + ], + [ + -88.55, + 74.91 + ], + [ + -89.5, + 74.55 + ], + [ + -91.03, + 74.71 + ], + [ + -90.74, + 74.89 + ], + [ + -91.3, + 74.63 + ], + [ + -92.08, + 74.8 + ], + [ + -92.26, + 75.07 + ], + [ + -91.82, + 75.12 + ], + [ + -92.5, + 75.22 + ], + [ + -92, + 75.66 + ], + [ + -93.08, + 76.36 + ], + [ + -95.4, + 76.23 + ], + [ + -94.83, + 76.33 + ], + [ + -96.02, + 76.44 + ], + [ + -95.6, + 76.61 + ], + [ + -96.93, + 76.71 + ], + [ + -96.88, + 76.82 + ], + [ + -96.3, + 76.76 + ], + [ + -96.86, + 76.97 + ], + [ + -95.69, + 77.07 + ], + [ + -93.72, + 76.93 + ], + [ + -93.17, + 76.74 + ], + [ + -93.58, + 76.41 + ], + [ + -93.12, + 76.62 + ], + [ + -90.97, + 76.65 + ], + [ + -90.47, + 76.47 + ], + [ + -91.47, + 76.45 + ], + [ + -89.19, + 76.25 + ], + [ + -90.46, + 76.18 + ], + [ + -90.11, + 76.13 + ], + [ + -91.62, + 76.27 + ], + [ + -90.19, + 76.06 + ], + [ + -91.16, + 76.02 + ], + [ + -91.2, + 75.82 + ], + [ + -90.8, + 76 + ], + [ + -90.55, + 75.9 + ], + [ + -89.93, + 76.01 + ], + [ + -89.79, + 75.79 + ], + [ + -89.16, + 75.77 + ], + [ + -89.75, + 75.58 + ], + [ + -88.93, + 75.43 + ], + [ + -88.76, + 75.68 + ], + [ + -88.22, + 75.47 + ], + [ + -87.73, + 75.58 + ], + [ + -87.58, + 75.44 + ], + [ + -87.28, + 75.62 + ], + [ + -86.35, + 75.42 + ], + [ + -86.63, + 75.36 + ], + [ + -85.54, + 75.4 + ], + [ + -86.16, + 75.51 + ], + [ + -84.51, + 75.62 + ], + [ + -84, + 75.82 + ], + [ + -81.59, + 75.81 + ], + [ + -81.06, + 75.64 + ] + ] + ], + [ + [ + [ + -98.11, + 78.58 + ], + [ + -98.4, + 78.77 + ], + [ + -97.7, + 78.81 + ], + [ + -95.08, + 78.44 + ], + [ + -95.11, + 77.95 + ], + [ + -97.13, + 77.8 + ], + [ + -97.8, + 78.04 + ], + [ + -96.84, + 78.11 + ], + [ + -97.96, + 78.22 + ], + [ + -98.11, + 78.58 + ] + ] + ], + [ + [ + [ + -99.3, + 79.76 + ], + [ + -100.16, + 79.9 + ], + [ + -99.64, + 80.15 + ], + [ + -98.7, + 79.97 + ], + [ + -98.83, + 79.67 + ], + [ + -99.3, + 79.76 + ] + ] + ], + [ + [ + [ + -99.01, + 73.96 + ], + [ + -97.63, + 74.09 + ], + [ + -98.76, + 73.81 + ], + [ + -99.38, + 73.88 + ], + [ + -99.01, + 73.96 + ] + ] + ], + [ + [ + [ + -102.26, + 77.73 + ], + [ + -102.09, + 77.91 + ], + [ + -100.89, + 77.74 + ], + [ + -102.26, + 77.73 + ] + ] + ], + [ + [ + [ + -101.24, + 78.97 + ], + [ + -101.2, + 78.8 + ], + [ + -100.36, + 78.84 + ], + [ + -99.48, + 78.59 + ], + [ + -99.79, + 78.3 + ], + [ + -98.91, + 78.06 + ], + [ + -99.87, + 77.78 + ], + [ + -101.03, + 78.2 + ], + [ + -102.57, + 78.24 + ], + [ + -102.78, + 78.4 + ], + [ + -104.04, + 78.24 + ], + [ + -104.7, + 78.33 + ], + [ + -104.89, + 78.56 + ], + [ + -103.54, + 78.5 + ], + [ + -103.39, + 78.62 + ], + [ + -104.01, + 78.63 + ], + [ + -103.3, + 78.74 + ], + [ + -104.21, + 78.78 + ], + [ + -104.12, + 78.98 + ], + [ + -104.98, + 78.8 + ], + [ + -104.68, + 79.03 + ], + [ + -105.6, + 79.03 + ], + [ + -105.55, + 79.33 + ], + [ + -103.11, + 79.29 + ], + [ + -102.57, + 78.87 + ], + [ + -101.96, + 79.09 + ], + [ + -101.24, + 78.97 + ] + ] + ], + [ + [ + [ + -105.6, + 77.73 + ], + [ + -104.44, + 77.32 + ], + [ + -104.63, + 77.11 + ], + [ + -105.43, + 77.21 + ], + [ + -106.12, + 77.73 + ], + [ + -105.6, + 77.73 + ] + ] + ], + [ + [ + [ + -111.84, + 78.56 + ], + [ + -110.4, + 78.77 + ], + [ + -109.32, + 78.55 + ], + [ + -109.38, + 78.32 + ], + [ + -111.16, + 78.39 + ], + [ + -111.45, + 78.27 + ], + [ + -112.16, + 78.37 + ], + [ + -113.19, + 78.27 + ], + [ + -113.22, + 78.41 + ], + [ + -111.84, + 78.56 + ] + ] + ], + [ + [ + [ + -110.23, + 77.52 + ], + [ + -112.43, + 77.37 + ], + [ + -113.2, + 77.53 + ], + [ + -113.22, + 77.92 + ], + [ + -109.65, + 78.1 + ], + [ + -109.72, + 77.95 + ], + [ + -110.92, + 77.86 + ], + [ + -110.05, + 77.77 + ], + [ + -110.23, + 77.52 + ] + ] + ], + [ + [ + [ + -114.04, + 76.7 + ], + [ + -114.84, + 76.76 + ], + [ + -114.66, + 76.86 + ], + [ + -113.46, + 76.83 + ], + [ + -114.04, + 76.7 + ] + ] + ], + [ + [ + [ + -98, + 75.12 + ], + [ + -98.65, + 74.99 + ], + [ + -99.39, + 75 + ], + [ + -99.29, + 75.13 + ], + [ + -99.55, + 74.97 + ], + [ + -100.37, + 75.03 + ], + [ + -100.54, + 75.2 + ], + [ + -99.86, + 75.24 + ], + [ + -100.72, + 75.43 + ], + [ + -98.91, + 75.71 + ], + [ + -102.66, + 75.5 + ], + [ + -102.86, + 75.64 + ], + [ + -102.04, + 75.7 + ], + [ + -102.29, + 75.86 + ], + [ + -101.84, + 75.91 + ], + [ + -101.3, + 75.75 + ], + [ + -100.9, + 75.82 + ], + [ + -101.36, + 75.78 + ], + [ + -101.25, + 76.01 + ], + [ + -101.83, + 76.02 + ], + [ + -101.35, + 76.25 + ], + [ + -102.17, + 76.24 + ], + [ + -101.9, + 76.45 + ], + [ + -99.91, + 75.88 + ], + [ + -99.43, + 75.96 + ], + [ + -100.24, + 76.13 + ], + [ + -99.41, + 76.16 + ], + [ + -100.43, + 76.22 + ], + [ + -99.91, + 76.33 + ], + [ + -100.99, + 76.5 + ], + [ + -99.65, + 76.63 + ], + [ + -99.07, + 76.39 + ], + [ + -98.5, + 76.69 + ], + [ + -97.67, + 76.49 + ], + [ + -97.54, + 75.87 + ], + [ + -98, + 75.73 + ], + [ + -97.37, + 75.69 + ], + [ + -97.26, + 75.4 + ], + [ + -97.97, + 75.57 + ], + [ + -98.17, + 75.33 + ], + [ + -97.56, + 75.14 + ], + [ + -98.07, + 75.23 + ], + [ + -98, + 75.12 + ] + ] + ], + [ + [ + [ + -102.49, + 75.81 + ], + [ + -103.38, + 75.77 + ], + [ + -102.14, + 76 + ], + [ + -102.49, + 75.81 + ] + ] + ], + [ + [ + [ + -102.52, + 76.16 + ], + [ + -103.92, + 76.04 + ], + [ + -104.48, + 76.16 + ], + [ + -102.9, + 76.32 + ], + [ + -102.52, + 76.16 + ] + ] + ], + [ + [ + [ + -104.65, + 76.59 + ], + [ + -104, + 76.67 + ], + [ + -103.03, + 76.41 + ], + [ + -104.33, + 76.33 + ], + [ + -104.65, + 76.59 + ] + ] + ], + [ + [ + [ + -103.77, + 75.31 + ], + [ + -103.85, + 75.06 + ], + [ + -104.91, + 75.12 + ], + [ + -104.5, + 75.42 + ], + [ + -103.77, + 75.31 + ] + ] + ], + [ + [ + [ + -96.65, + 73.14 + ], + [ + -96.93, + 72.93 + ], + [ + -97.09, + 73.12 + ], + [ + -96.65, + 73.14 + ] + ] + ], + [ + [ + [ + -100.66, + 70.59 + ], + [ + -100.61, + 70.7 + ], + [ + -100.23, + 70.47 + ], + [ + -100.66, + 70.59 + ] + ] + ], + [ + [ + [ + -99.19, + 73.7 + ], + [ + -97.77, + 73.92 + ], + [ + -97.18, + 73.85 + ], + [ + -96.96, + 73.64 + ], + [ + -97.72, + 73.54 + ], + [ + -97.16, + 73.36 + ], + [ + -98.47, + 73.02 + ], + [ + -98.47, + 72.84 + ], + [ + -98.07, + 73.03 + ], + [ + -97.46, + 73.01 + ], + [ + -97.21, + 72.6 + ], + [ + -96.53, + 72.76 + ], + [ + -96.27, + 72.42 + ], + [ + -96.85, + 72.32 + ], + [ + -96.5, + 72.24 + ], + [ + -96.86, + 72.04 + ], + [ + -96.46, + 72.04 + ], + [ + -96.53, + 71.84 + ], + [ + -97.48, + 71.62 + ], + [ + -98.17, + 71.65 + ], + [ + -98.24, + 71.94 + ], + [ + -98.49, + 71.72 + ], + [ + -98.04, + 71.53 + ], + [ + -98.69, + 71.28 + ], + [ + -99.22, + 71.35 + ], + [ + -100.61, + 72.19 + ], + [ + -101.2, + 72.35 + ], + [ + -101.78, + 72.3 + ], + [ + -102.75, + 72.77 + ], + [ + -102.13, + 73.09 + ], + [ + -101.33, + 72.72 + ], + [ + -100.46, + 72.71 + ], + [ + -100.46, + 73.02 + ], + [ + -100.31, + 72.87 + ], + [ + -100.01, + 72.94 + ], + [ + -100.52, + 73.23 + ], + [ + -99.74, + 73.23 + ], + [ + -100.38, + 73.4 + ], + [ + -100.96, + 73.28 + ], + [ + -101.62, + 73.5 + ], + [ + -100.9, + 73.61 + ], + [ + -100.42, + 73.41 + ], + [ + -101.13, + 73.74 + ], + [ + -100.54, + 73.87 + ], + [ + -100.04, + 73.77 + ], + [ + -100.09, + 73.95 + ], + [ + -99.19, + 73.7 + ] + ] + ], + [ + [ + [ + -105.9, + 73.14 + ], + [ + -107.01, + 73.49 + ], + [ + -106.49, + 73.72 + ], + [ + -105.1, + 73.75 + ], + [ + -104.45, + 73.55 + ], + [ + -105.24, + 72.85 + ], + [ + -105.9, + 73.14 + ] + ] + ], + [ + [ + [ + -112.48, + 69.93 + ], + [ + -112.46, + 69.94 + ], + [ + -112.46, + 69.93 + ], + [ + -112.48, + 69.93 + ] + ] + ], + [ + [ + [ + -101.23, + 69.44 + ], + [ + -101.26, + 69.6 + ], + [ + -100.93, + 69.48 + ], + [ + -101.23, + 69.44 + ] + ] + ], + [ + [ + [ + -96.69, + 69.58 + ], + [ + -96.15, + 69.59 + ], + [ + -96.11, + 69.35 + ], + [ + -96.69, + 69.58 + ] + ] + ], + [ + [ + [ + -72.02, + 71.04 + ], + [ + -71.39, + 71.02 + ], + [ + -71.42, + 70.92 + ], + [ + -72.13, + 70.82 + ], + [ + -72.02, + 71.04 + ] + ] + ], + [ + [ + [ + -73.33, + 71.47 + ], + [ + -73.14, + 71.57 + ], + [ + -73.24, + 71.39 + ], + [ + -73, + 71.52 + ], + [ + -72.84, + 71.46 + ], + [ + -73.02, + 71.3 + ], + [ + -73.26, + 71.36 + ], + [ + -73.33, + 71.47 + ] + ] + ], + [ + [ + [ + -78.73, + 69.49 + ], + [ + -78.13, + 69.76 + ], + [ + -77.99, + 69.62 + ], + [ + -78.73, + 69.49 + ] + ] + ], + [ + [ + [ + -77.1, + 69.3 + ], + [ + -76.97, + 69.4 + ], + [ + -76.64, + 69.3 + ], + [ + -77.1, + 69.13 + ], + [ + -77.33, + 69.42 + ], + [ + -77.1, + 69.3 + ] + ] + ], + [ + [ + [ + -79.68, + 75.89 + ], + [ + -78.81, + 76.09 + ], + [ + -78.89, + 75.84 + ], + [ + -79.68, + 75.89 + ] + ] + ], + [ + [ + [ + -76.89, + 73.33 + ], + [ + -76.12, + 72.85 + ], + [ + -78.23, + 72.9 + ], + [ + -79.57, + 72.76 + ], + [ + -80.14, + 73.23 + ], + [ + -80.88, + 73.33 + ], + [ + -80.84, + 73.75 + ], + [ + -78.12, + 73.67 + ], + [ + -76.89, + 73.33 + ] + ] + ], + [ + [ + [ + -79.67, + 69.82 + ], + [ + -79.32, + 69.71 + ], + [ + -80.05, + 69.66 + ], + [ + -80.02, + 69.49 + ], + [ + -80.81, + 69.69 + ], + [ + -79.67, + 69.82 + ] + ] + ], + [ + [ + [ + -68.31, + 69.59 + ], + [ + -67.72, + 69.66 + ], + [ + -67.93, + 69.53 + ], + [ + -68.31, + 69.59 + ] + ] + ], + [ + [ + [ + -69.35, + 66.52 + ], + [ + -69.3, + 66.5 + ], + [ + -69.39, + 66.5 + ], + [ + -69.35, + 66.52 + ] + ] + ], + [ + [ + [ + -69.8, + 66.51 + ], + [ + -69.74, + 66.62 + ], + [ + -69.74, + 66.49 + ], + [ + -69.86, + 66.44 + ], + [ + -69.57, + 66.37 + ], + [ + -69.96, + 66.4 + ], + [ + -69.8, + 66.51 + ] + ] + ], + [ + [ + [ + -68.19, + 68.79 + ], + [ + -67.68, + 68.71 + ], + [ + -68.48, + 68.8 + ], + [ + -68.19, + 68.79 + ] + ] + ], + [ + [ + [ + -74.1, + 68.36 + ], + [ + -74.22, + 68.25 + ], + [ + -74.37, + 68.47 + ], + [ + -74.1, + 68.36 + ] + ] + ], + [ + [ + [ + -74.82, + 68.57 + ], + [ + -74.75, + 68.68 + ], + [ + -74.51, + 68.57 + ], + [ + -74.82, + 68.57 + ] + ] + ], + [ + [ + [ + -78.84, + 68.25 + ], + [ + -79.19, + 68.22 + ], + [ + -79.15, + 68.36 + ], + [ + -78.84, + 68.25 + ] + ] + ], + [ + [ + [ + -74.79, + 68.39 + ], + [ + -75.4, + 68.52 + ], + [ + -75.26, + 68.73 + ], + [ + -74.79, + 68.39 + ] + ] + ], + [ + [ + [ + -74.52, + 68.07 + ], + [ + -74.35, + 68.19 + ], + [ + -74.25, + 68.06 + ], + [ + -73.52, + 68.05 + ], + [ + -73.42, + 67.76 + ], + [ + -74.54, + 67.8 + ], + [ + -74.78, + 68.01 + ], + [ + -74.52, + 68.07 + ] + ] + ], + [ + [ + [ + -76.07, + 67.24 + ], + [ + -77.06, + 67.25 + ], + [ + -77.24, + 67.51 + ], + [ + -76.95, + 68.09 + ], + [ + -76.31, + 68.35 + ], + [ + -75.01, + 68.14 + ], + [ + -75.18, + 67.44 + ], + [ + -76.07, + 67.24 + ] + ] + ], + [ + [ + [ + -78.31, + 69.38 + ], + [ + -78.84, + 68.93 + ], + [ + -79.17, + 68.9 + ], + [ + -79.21, + 69.1 + ], + [ + -78.31, + 69.38 + ] + ] + ], + [ + [ + [ + -62.63, + 67.05 + ], + [ + -62.88, + 67.06 + ], + [ + -62.38, + 67.19 + ], + [ + -62.63, + 67.05 + ] + ] + ], + [ + [ + [ + -77.66, + 63.94 + ], + [ + -77.95, + 64.01 + ], + [ + -77.56, + 64.04 + ], + [ + -77.66, + 63.94 + ] + ] + ], + [ + [ + [ + -62.22, + 65.7 + ], + [ + -62.23, + 65.6 + ], + [ + -62.47, + 65.65 + ], + [ + -62.22, + 65.7 + ] + ] + ], + [ + [ + [ + -64.56, + 63.8 + ], + [ + -64.41, + 63.67 + ], + [ + -64.91, + 63.82 + ], + [ + -64.62, + 63.92 + ], + [ + -64.56, + 63.8 + ] + ] + ], + [ + [ + [ + -114.25, + 78.02 + ], + [ + -113.55, + 77.83 + ], + [ + -114.22, + 77.71 + ], + [ + -115.1, + 77.96 + ], + [ + -114.25, + 78.02 + ] + ] + ], + [ + [ + [ + -115.39, + 75.1 + ], + [ + -115.68, + 75.17 + ], + [ + -115.69, + 74.97 + ], + [ + -116.21, + 75.22 + ], + [ + -116.69, + 75.12 + ], + [ + -117.67, + 75.26 + ], + [ + -117.26, + 75.47 + ], + [ + -116.01, + 75.49 + ], + [ + -115.01, + 75.7 + ], + [ + -117.22, + 75.58 + ], + [ + -116.81, + 75.8 + ], + [ + -114.78, + 75.9 + ], + [ + -116.73, + 75.91 + ], + [ + -116.21, + 76.2 + ], + [ + -114.63, + 76.17 + ], + [ + -115.91, + 76.29 + ], + [ + -114.89, + 76.52 + ], + [ + -114.17, + 76.48 + ], + [ + -113.98, + 76.2 + ], + [ + -112.41, + 76.18 + ], + [ + -111.68, + 75.92 + ], + [ + -112.24, + 75.81 + ], + [ + -111.44, + 75.85 + ], + [ + -111.22, + 75.52 + ], + [ + -108.77, + 75.52 + ], + [ + -108.81, + 75.69 + ], + [ + -110.05, + 75.91 + ], + [ + -109.27, + 76.11 + ], + [ + -110.42, + 76.36 + ], + [ + -109.12, + 76.83 + ], + [ + -108.41, + 76.74 + ], + [ + -108.6, + 76.43 + ], + [ + -108.04, + 76.28 + ], + [ + -108.49, + 76.04 + ], + [ + -107.61, + 76 + ], + [ + -108, + 75.79 + ], + [ + -107.04, + 75.9 + ], + [ + -106.84, + 75.65 + ], + [ + -106.58, + 76.07 + ], + [ + -105.42, + 75.85 + ], + [ + -105.99, + 75.05 + ], + [ + -107.2, + 74.91 + ], + [ + -107.76, + 75.1 + ], + [ + -108.35, + 74.92 + ], + [ + -108.79, + 75.07 + ], + [ + -112.38, + 74.42 + ], + [ + -113.53, + 74.43 + ], + [ + -114.44, + 74.7 + ], + [ + -112.85, + 74.98 + ], + [ + -111.62, + 75 + ], + [ + -111.01, + 75.28 + ], + [ + -112.38, + 75.13 + ], + [ + -112.65, + 75.29 + ], + [ + -112.68, + 75.14 + ], + [ + -113.91, + 75.05 + ], + [ + -113.31, + 75.42 + ], + [ + -114.03, + 75.48 + ], + [ + -114.17, + 75.22 + ], + [ + -114.61, + 75.28 + ], + [ + -114.45, + 75.06 + ], + [ + -115.04, + 74.96 + ], + [ + -115.23, + 75.19 + ], + [ + -115.39, + 75.1 + ] + ] + ], + [ + [ + [ + -118.91, + 75.8 + ], + [ + -117.44, + 76.1 + ], + [ + -118.57, + 75.5 + ], + [ + -119.4, + 75.61 + ], + [ + -118.91, + 75.8 + ] + ] + ], + [ + [ + [ + -121.01, + 75.86 + ], + [ + -120.86, + 75.95 + ], + [ + -121.14, + 75.73 + ], + [ + -121.01, + 75.86 + ] + ] + ], + [ + [ + [ + -119.21, + 77.31 + ], + [ + -116.99, + 77.3 + ], + [ + -116.89, + 77.54 + ], + [ + -116.02, + 77.5 + ], + [ + -115.34, + 77.31 + ], + [ + -116.4, + 77.15 + ], + [ + -115.73, + 76.95 + ], + [ + -116.37, + 76.94 + ], + [ + -116.05, + 76.62 + ], + [ + -116.96, + 76.57 + ], + [ + -117.47, + 76.27 + ], + [ + -118.05, + 76.42 + ], + [ + -117.68, + 76.8 + ], + [ + -118.29, + 76.78 + ], + [ + -119.04, + 76.09 + ], + [ + -119.73, + 76.33 + ], + [ + -119.46, + 76.01 + ], + [ + -119.91, + 75.85 + ], + [ + -120.47, + 75.83 + ], + [ + -120.86, + 76.21 + ], + [ + -120.92, + 75.95 + ], + [ + -121.85, + 76.05 + ], + [ + -122.54, + 75.94 + ], + [ + -122.49, + 76.15 + ], + [ + -122.98, + 76.2 + ], + [ + -122.39, + 76.41 + ], + [ + -121.45, + 76.43 + ], + [ + -119.21, + 77.31 + ] + ] + ], + [ + [ + [ + -120, + 74.28 + ], + [ + -119.75, + 74.04 + ], + [ + -119.08, + 74.21 + ], + [ + -119.15, + 73.99 + ], + [ + -118.76, + 74.21 + ], + [ + -117.39, + 74.23 + ], + [ + -115.29, + 73.48 + ], + [ + -119.14, + 72.65 + ], + [ + -119.77, + 72.23 + ], + [ + -120.23, + 72.27 + ], + [ + -120.64, + 71.49 + ], + [ + -121.37, + 71.38 + ], + [ + -121.68, + 71.47 + ], + [ + -123.14, + 71.08 + ], + [ + -123.97, + 71.67 + ], + [ + -125.27, + 71.97 + ], + [ + -124.88, + 71.96 + ], + [ + -125.27, + 71.99 + ], + [ + -126.01, + 71.97 + ], + [ + -124.88, + 72.58 + ], + [ + -125.13, + 72.87 + ], + [ + -124.42, + 72.94 + ], + [ + -124.86, + 73.1 + ], + [ + -123.73, + 73.75 + ], + [ + -124.77, + 74.34 + ], + [ + -121.54, + 74.56 + ], + [ + -120, + 74.28 + ] + ] + ], + [ + [ + [ + -139.13, + 69.64 + ], + [ + -138.85, + 69.58 + ], + [ + -139.09, + 69.52 + ], + [ + -139.13, + 69.64 + ] + ] + ], + [ + [ + [ + -135.92, + 69.24 + ], + [ + -135.52, + 69.02 + ], + [ + -135.94, + 69.08 + ], + [ + -135.92, + 69.24 + ] + ] + ], + [ + [ + [ + -101.88, + 69.69 + ], + [ + -102.04, + 69.96 + ], + [ + -102.67, + 69.77 + ], + [ + -102.53, + 69.55 + ], + [ + -103.47, + 69.7 + ], + [ + -103.16, + 69.4 + ], + [ + -103, + 69.5 + ], + [ + -103.18, + 69.1 + ], + [ + -102.43, + 69.5 + ], + [ + -101.96, + 69.46 + ], + [ + -102.15, + 69.3 + ], + [ + -101.77, + 69.01 + ], + [ + -102.91, + 68.8 + ], + [ + -104.35, + 68.97 + ], + [ + -105.12, + 68.9 + ], + [ + -104.9, + 69.04 + ], + [ + -105, + 69.13 + ], + [ + -105.21, + 69.1 + ], + [ + -105.16, + 69.09 + ], + [ + -106.38, + 69.18 + ], + [ + -106.56, + 69.5 + ], + [ + -106.92, + 69.36 + ], + [ + -107.35, + 69.01 + ], + [ + -108.57, + 68.94 + ], + [ + -109.16, + 68.71 + ], + [ + -113.25, + 68.47 + ], + [ + -113.01, + 68.52 + ], + [ + -113.67, + 68.82 + ], + [ + -113.69, + 69.19 + ], + [ + -113.35, + 69.17 + ], + [ + -116.5, + 69.41 + ], + [ + -117.37, + 70.03 + ], + [ + -114.5, + 70.32 + ], + [ + -112.53, + 70.2 + ], + [ + -111.44, + 70.34 + ], + [ + -113.82, + 70.72 + ], + [ + -115.57, + 70.57 + ], + [ + -117.55, + 70.6 + ], + [ + -118.36, + 71.03 + ], + [ + -115.04, + 71.54 + ], + [ + -117.42, + 71.38 + ], + [ + -117.56, + 71.51 + ], + [ + -117.51, + 71.38 + ], + [ + -118.15, + 71.38 + ], + [ + -118.22, + 71.52 + ], + [ + -117.65, + 71.58 + ], + [ + -117.96, + 71.62 + ], + [ + -117.67, + 71.68 + ], + [ + -118.11, + 71.66 + ], + [ + -118.12, + 71.65 + ], + [ + -118.89, + 71.58 + ], + [ + -119.11, + 71.74 + ], + [ + -118.08, + 72.24 + ], + [ + -118.5, + 72.51 + ], + [ + -117.32, + 72.93 + ], + [ + -114.68, + 73.38 + ], + [ + -113.93, + 73.13 + ], + [ + -113.93, + 72.82 + ], + [ + -114.65, + 72.6 + ], + [ + -113.57, + 72.64 + ], + [ + -113.23, + 72.99 + ], + [ + -112.8, + 73 + ], + [ + -111.18, + 72.73 + ], + [ + -112.06, + 72.27 + ], + [ + -111.22, + 72.47 + ], + [ + -111, + 72.28 + ], + [ + -110.68, + 72.58 + ], + [ + -110.29, + 72.43 + ], + [ + -110.36, + 72.56 + ], + [ + -109.77, + 72.48 + ], + [ + -110.29, + 72.67 + ], + [ + -109.73, + 72.72 + ], + [ + -110.23, + 72.73 + ], + [ + -110.72, + 72.96 + ], + [ + -109.9, + 72.98 + ], + [ + -108.58, + 72.55 + ], + [ + -108.22, + 71.73 + ], + [ + -107.8, + 71.6 + ], + [ + -107.22, + 71.94 + ], + [ + -107.76, + 72.15 + ], + [ + -108.24, + 73.18 + ], + [ + -107.86, + 73.19 + ], + [ + -107.99, + 73.35 + ], + [ + -106.89, + 73.15 + ], + [ + -106.85, + 73.31 + ], + [ + -106.2, + 73.08 + ], + [ + -105.76, + 73.03 + ], + [ + -105.65, + 72.9 + ], + [ + -105.62, + 72.95 + ], + [ + -105.29, + 72.82 + ], + [ + -105.5, + 72.89 + ], + [ + -104.83, + 71.9 + ], + [ + -104.3, + 71.6 + ], + [ + -104.48, + 71.03 + ], + [ + -103.53, + 70.59 + ], + [ + -102.88, + 70.5 + ], + [ + -103.01, + 70.69 + ], + [ + -102.16, + 70.31 + ], + [ + -101.53, + 70.27 + ], + [ + -101.5, + 70.11 + ], + [ + -100.97, + 70.19 + ], + [ + -100.92, + 69.68 + ], + [ + -101.31, + 69.68 + ], + [ + -101.44, + 69.94 + ], + [ + -101.64, + 69.65 + ], + [ + -101.88, + 69.69 + ] + ], + [ + [ + -105.82, + 69.26 + ], + [ + -105.45, + 69.21 + ], + [ + -105.55, + 69.32 + ], + [ + -105.82, + 69.26 + ] + ], + [ + [ + -112.46, + 69.94 + ], + [ + -112.76, + 69.98 + ], + [ + -112.79, + 69.86 + ], + [ + -112.46, + 69.94 + ] + ], + [ + [ + -108.29, + 69.85 + ], + [ + -108.5, + 69.79 + ], + [ + -108.15, + 69.76 + ], + [ + -108.29, + 69.85 + ] + ], + [ + [ + -106.14, + 69.49 + ], + [ + -106.26, + 69.39 + ], + [ + -104.77, + 69.31 + ], + [ + -104.24, + 69.46 + ], + [ + -106.14, + 69.49 + ] + ], + [ + [ + -111.69, + 68.93 + ], + [ + -112.05, + 68.88 + ], + [ + -111.42, + 68.86 + ], + [ + -111.69, + 68.93 + ] + ] + ], + [ + [ + [ + -103.56, + 69.44 + ], + [ + -103.54, + 69.44 + ], + [ + -103.56, + 69.44 + ], + [ + -103.62, + 69.4 + ], + [ + -103.62, + 69.43 + ], + [ + -103.56, + 69.44 + ] + ] + ], + [ + [ + [ + -111.69, + 62.33 + ], + [ + -111.67, + 62.33 + ], + [ + -111.84, + 62.17 + ], + [ + -111.69, + 62.33 + ] + ] + ], + [ + [ + [ + -111.75, + 62.02 + ], + [ + -111.84, + 62.05 + ], + [ + -111.86, + 61.93 + ], + [ + -112.17, + 61.84 + ], + [ + -111.88, + 61.94 + ], + [ + -111.91, + 62.02 + ], + [ + -112, + 62.04 + ], + [ + -111.88, + 62.11 + ], + [ + -111.53, + 62.08 + ], + [ + -111.75, + 62.02 + ] + ] + ], + [ + [ + [ + -112.5, + 62.03 + ], + [ + -112.04, + 62.12 + ], + [ + -112.79, + 61.92 + ], + [ + -112.5, + 62.03 + ] + ] + ], + [ + [ + [ + -112.52, + 61.69 + ], + [ + -112.26, + 61.79 + ], + [ + -112.68, + 61.56 + ], + [ + -112.64, + 61.66 + ], + [ + -113.01, + 61.71 + ], + [ + -112.69, + 61.9 + ], + [ + -112.5, + 61.87 + ], + [ + -111.97, + 61.99 + ], + [ + -112.06, + 62.02 + ], + [ + -112.15, + 61.98 + ], + [ + -112.1, + 62.03 + ], + [ + -111.93, + 62.01 + ], + [ + -111.93, + 61.97 + ], + [ + -112.37, + 61.86 + ], + [ + -112.37, + 61.81 + ], + [ + -112.66, + 61.77 + ], + [ + -112.48, + 61.73 + ], + [ + -112.52, + 61.69 + ] + ] + ], + [ + [ + [ + -116.75, + 61.19 + ], + [ + -116.44, + 61.12 + ], + [ + -116.76, + 61.07 + ], + [ + -116.92, + 61.14 + ], + [ + -116.75, + 61.19 + ] + ] + ], + [ + [ + [ + -82.14, + 62.61 + ], + [ + -83.07, + 62.18 + ], + [ + -83.37, + 62.26 + ], + [ + -83.72, + 62.14 + ], + [ + -83.97, + 62.45 + ], + [ + -83.34, + 62.92 + ], + [ + -81.9, + 62.94 + ], + [ + -82.14, + 62.61 + ] + ] + ], + [ + [ + [ + -71.28, + 66.5 + ], + [ + -71.29, + 66.09 + ], + [ + -71.03, + 66.05 + ], + [ + -71.3, + 65.93 + ], + [ + -71.28, + 65.93 + ], + [ + -71.06, + 66.01 + ], + [ + -70.58, + 66.33 + ], + [ + -70.31, + 66.15 + ], + [ + -69.87, + 66.28 + ], + [ + -69.74, + 66.14 + ], + [ + -69.48, + 66.27 + ], + [ + -69.28, + 66.34 + ], + [ + -69.55, + 66.36 + ], + [ + -69.48, + 66.45 + ], + [ + -69.13, + 66.39 + ], + [ + -69.35, + 66.46 + ], + [ + -69.61, + 66.6 + ], + [ + -70.31, + 66.72 + ], + [ + -70.31, + 66.71 + ], + [ + -70.31, + 66.67 + ], + [ + -70.75, + 66.91 + ], + [ + -71.15, + 66.96 + ], + [ + -71.43, + 66.6 + ], + [ + -72.99, + 66.74 + ], + [ + -72.14, + 67.28 + ], + [ + -73, + 68.24 + ], + [ + -73.5, + 68.28 + ], + [ + -73.28, + 68.4 + ], + [ + -73.63, + 68.25 + ], + [ + -73.88, + 68.35 + ], + [ + -73.65, + 68.67 + ], + [ + -74.19, + 68.74 + ], + [ + -73.89, + 68.56 + ], + [ + -74.23, + 68.52 + ], + [ + -74.73, + 68.74 + ], + [ + -74.4, + 68.84 + ], + [ + -74.95, + 68.8 + ], + [ + -74.81, + 69.1 + ], + [ + -75.12, + 68.89 + ], + [ + -75.49, + 69.03 + ], + [ + -75.62, + 68.87 + ], + [ + -76.63, + 68.69 + ], + [ + -76.6, + 69.03 + ], + [ + -75.6, + 69.08 + ], + [ + -75.59, + 69.24 + ], + [ + -76.65, + 69.54 + ], + [ + -76.46, + 69.66 + ], + [ + -76.21, + 69.53 + ], + [ + -76.15, + 69.69 + ], + [ + -76.57, + 69.7 + ], + [ + -76.72, + 69.56 + ], + [ + -77.19, + 69.64 + ], + [ + -76.69, + 69.85 + ], + [ + -77.31, + 69.84 + ], + [ + -76.92, + 70.01 + ], + [ + -77.62, + 69.75 + ], + [ + -77.67, + 70.2 + ], + [ + -78.38, + 70.21 + ], + [ + -78.73, + 70.46 + ], + [ + -79.59, + 70.42 + ], + [ + -78.92, + 70.31 + ], + [ + -78.79, + 69.89 + ], + [ + -79.68, + 69.86 + ], + [ + -79.94, + 70.02 + ], + [ + -81.73, + 70.15 + ], + [ + -80.94, + 69.72 + ], + [ + -83.02, + 70.32 + ], + [ + -81.76, + 69.87 + ], + [ + -82.3, + 69.8 + ], + [ + -83.07, + 70.02 + ], + [ + -84.66, + 70.01 + ], + [ + -84.79, + 70.12 + ], + [ + -85.82, + 70.01 + ], + [ + -86.56, + 70.24 + ], + [ + -86.38, + 70.53 + ], + [ + -86.65, + 70.32 + ], + [ + -86.99, + 70.47 + ], + [ + -86.98, + 70.29 + ], + [ + -87.76, + 70.34 + ], + [ + -87.85, + 70.24 + ], + [ + -88.24, + 70.32 + ], + [ + -87.87, + 70.31 + ], + [ + -88.84, + 70.52 + ], + [ + -89.54, + 71.09 + ], + [ + -88.05, + 70.94 + ], + [ + -86.99, + 71 + ], + [ + -87.83, + 71.27 + ], + [ + -89.85, + 71.34 + ], + [ + -90.11, + 71.93 + ], + [ + -89.56, + 72.16 + ], + [ + -89.96, + 72.35 + ], + [ + -89.56, + 72.8 + ], + [ + -89.23, + 72.78 + ], + [ + -89.31, + 73.05 + ], + [ + -88.96, + 73.29 + ], + [ + -88.51, + 73.28 + ], + [ + -88.85, + 73.34 + ], + [ + -88.27, + 73.58 + ], + [ + -86.55, + 73.86 + ], + [ + -84.83, + 73.74 + ], + [ + -85.93, + 73.37 + ], + [ + -86.76, + 72.71 + ], + [ + -86.23, + 72.42 + ], + [ + -86.2, + 71.85 + ], + [ + -84.82, + 71.27 + ], + [ + -86.81, + 70.99 + ], + [ + -84.97, + 71.2 + ], + [ + -84.78, + 70.94 + ], + [ + -84.41, + 71.65 + ], + [ + -85.31, + 71.68 + ], + [ + -86.04, + 72.02 + ], + [ + -85.51, + 72.06 + ], + [ + -85.24, + 72.27 + ], + [ + -84.14, + 72.01 + ], + [ + -84.94, + 72.29 + ], + [ + -84.39, + 72.39 + ], + [ + -85.51, + 72.46 + ], + [ + -85.7, + 72.91 + ], + [ + -85.32, + 72.98 + ], + [ + -83.92, + 72.74 + ], + [ + -85.48, + 73.1 + ], + [ + -83.57, + 73.06 + ], + [ + -84.72, + 73.13 + ], + [ + -85.13, + 73.31 + ], + [ + -84.76, + 73.39 + ], + [ + -84.32, + 73.22 + ], + [ + -84.63, + 73.4 + ], + [ + -84.16, + 73.48 + ], + [ + -83.6, + 73.3 + ], + [ + -84.01, + 73.51 + ], + [ + -82.84, + 73.74 + ], + [ + -81.6, + 73.73 + ], + [ + -80.22, + 72.73 + ], + [ + -81.38, + 72.24 + ], + [ + -80.5, + 72.51 + ], + [ + -80.96, + 71.88 + ], + [ + -80.22, + 72.31 + ], + [ + -79.68, + 72.13 + ], + [ + -80.17, + 72.33 + ], + [ + -79.79, + 72.51 + ], + [ + -79.73, + 72.22 + ], + [ + -79.43, + 72.19 + ], + [ + -79.35, + 72.41 + ], + [ + -78.94, + 72.28 + ], + [ + -79.18, + 71.96 + ], + [ + -78.51, + 71.87 + ], + [ + -78.86, + 72.18 + ], + [ + -77.74, + 71.75 + ], + [ + -78.8, + 72.34 + ], + [ + -78.42, + 72.17 + ], + [ + -78.42, + 72.33 + ], + [ + -77.65, + 72.1 + ], + [ + -77, + 72.14 + ], + [ + -78.48, + 72.41 + ], + [ + -78.41, + 72.59 + ], + [ + -77.18, + 72.75 + ], + [ + -76.13, + 72.59 + ], + [ + -76.14, + 72.46 + ], + [ + -75.97, + 72.59 + ], + [ + -75.16, + 72.5 + ], + [ + -75.04, + 72.19 + ], + [ + -75.95, + 72.1 + ], + [ + -76.4, + 71.86 + ], + [ + -75.75, + 72.11 + ], + [ + -75.22, + 72.08 + ], + [ + -75.88, + 71.7 + ], + [ + -75.08, + 72.11 + ], + [ + -74.24, + 72.08 + ], + [ + -74.23, + 71.83 + ], + [ + -75.4, + 71.67 + ], + [ + -74.91, + 71.67 + ], + [ + -75.37, + 71.51 + ], + [ + -74.61, + 71.66 + ], + [ + -75.13, + 71.48 + ], + [ + -74.83, + 71.52 + ], + [ + -74.69, + 71.4 + ], + [ + -75.05, + 71.18 + ], + [ + -74.61, + 71.38 + ], + [ + -74.51, + 71.66 + ], + [ + -74.1, + 71.74 + ], + [ + -74.11, + 71.53 + ], + [ + -73.6, + 71.78 + ], + [ + -74.31, + 71.4 + ], + [ + -74.02, + 71.44 + ], + [ + -74.21, + 71.2 + ], + [ + -73.59, + 71.57 + ], + [ + -73.39, + 71.39 + ], + [ + -73.86, + 71.05 + ], + [ + -73.33, + 71.35 + ], + [ + -73.04, + 71.26 + ], + [ + -73.36, + 70.97 + ], + [ + -72.56, + 71.66 + ], + [ + -71.15, + 71.27 + ], + [ + -71.49, + 71.06 + ], + [ + -72.08, + 71.08 + ], + [ + -72.85, + 70.81 + ], + [ + -72.19, + 70.84 + ], + [ + -72.64, + 70.63 + ], + [ + -70.61, + 71.06 + ], + [ + -70.79, + 70.75 + ], + [ + -71.19, + 70.59 + ], + [ + -71.61, + 70.62 + ], + [ + -71.98, + 70.42 + ], + [ + -71.81, + 70.3 + ], + [ + -71.51, + 70.58 + ], + [ + -71.18, + 70.55 + ], + [ + -71.55, + 70.03 + ], + [ + -71.01, + 70.63 + ], + [ + -69.89, + 70.88 + ], + [ + -70.63, + 70.46 + ], + [ + -69.45, + 70.79 + ], + [ + -68.29, + 70.52 + ], + [ + -70.19, + 70.03 + ], + [ + -69.82, + 69.99 + ], + [ + -70.47, + 69.85 + ], + [ + -69.79, + 69.96 + ], + [ + -69.65, + 70.14 + ], + [ + -68.68, + 70.21 + ], + [ + -70.01, + 69.62 + ], + [ + -68.23, + 70.1 + ], + [ + -68.12, + 70.32 + ], + [ + -67.28, + 70.02 + ], + [ + -67.1, + 69.73 + ], + [ + -67.9, + 69.78 + ], + [ + -68.31, + 69.63 + ], + [ + -70.06, + 69.53 + ], + [ + -68.73, + 69.6 + ], + [ + -68.03, + 69.47 + ], + [ + -67.23, + 69.47 + ], + [ + -66.74, + 69.15 + ], + [ + -69.04, + 69.36 + ], + [ + -69.27, + 69.27 + ], + [ + -68.08, + 69.22 + ], + [ + -68.98, + 69.23 + ], + [ + -68.51, + 69.21 + ], + [ + -69.09, + 69.11 + ], + [ + -69.01, + 68.98 + ], + [ + -68.21, + 69.15 + ], + [ + -67.71, + 69.02 + ], + [ + -68.57, + 68.98 + ], + [ + -67.97, + 68.86 + ], + [ + -68.52, + 68.9 + ], + [ + -67.77, + 68.79 + ], + [ + -69.31, + 68.88 + ], + [ + -69.41, + 68.81 + ], + [ + -68.06, + 68.68 + ], + [ + -68.91, + 68.6 + ], + [ + -67.94, + 68.56 + ], + [ + -67.95, + 68.4 + ], + [ + -67.69, + 68.57 + ], + [ + -67.62, + 68.38 + ], + [ + -67.57, + 68.49 + ], + [ + -66.67, + 68.45 + ], + [ + -67.88, + 68.27 + ], + [ + -67.02, + 68.33 + ], + [ + -67.34, + 68.19 + ], + [ + -66.76, + 68.24 + ], + [ + -67.05, + 67.99 + ], + [ + -66.68, + 68.14 + ], + [ + -66.74, + 67.93 + ], + [ + -66.61, + 68.14 + ], + [ + -66.31, + 68.13 + ], + [ + -66.39, + 67.87 + ], + [ + -66.73, + 67.88 + ], + [ + -66.37, + 67.77 + ], + [ + -65.93, + 68.03 + ], + [ + -66.06, + 67.59 + ], + [ + -65.8, + 67.97 + ], + [ + -65.46, + 67.99 + ], + [ + -65.34, + 67.59 + ], + [ + -65.43, + 67.92 + ], + [ + -65.08, + 68.04 + ], + [ + -64.72, + 67.98 + ], + [ + -65.1, + 67.92 + ], + [ + -65.23, + 67.64 + ], + [ + -64.52, + 67.81 + ], + [ + -64.65, + 67.65 + ], + [ + -64.29, + 67.72 + ], + [ + -64.07, + 67.57 + ], + [ + -64.46, + 67.47 + ], + [ + -63.94, + 67.35 + ], + [ + -65, + 67.37 + ], + [ + -64.23, + 67.3 + ], + [ + -64.8, + 67.19 + ], + [ + -63.95, + 67.27 + ], + [ + -64.64, + 67.13 + ], + [ + -64.71, + 66.96 + ], + [ + -64.57, + 67.12 + ], + [ + -63.5, + 67.24 + ], + [ + -63.8, + 66.9 + ], + [ + -63.12, + 67.33 + ], + [ + -63.19, + 66.97 + ], + [ + -63.86, + 66.82 + ], + [ + -63.42, + 66.91 + ], + [ + -63.4, + 66.7 + ], + [ + -63.33, + 66.9 + ], + [ + -62.84, + 66.96 + ], + [ + -62.89, + 66.64 + ], + [ + -62.76, + 66.93 + ], + [ + -62.31, + 66.74 + ], + [ + -62.42, + 66.93 + ], + [ + -62.01, + 67.06 + ], + [ + -62.08, + 66.89 + ], + [ + -61.72, + 66.93 + ], + [ + -62.01, + 66.85 + ], + [ + -61.6, + 66.86 + ], + [ + -61.79, + 66.81 + ], + [ + -61.28, + 66.67 + ], + [ + -61.43, + 66.53 + ], + [ + -61.98, + 66.69 + ], + [ + -62.21, + 66.62 + ], + [ + -61.8, + 66.61 + ], + [ + -61.56, + 66.46 + ], + [ + -62.03, + 66.39 + ], + [ + -61.53, + 66.33 + ], + [ + -62.17, + 66.31 + ], + [ + -62.64, + 66.45 + ], + [ + -62.32, + 66.3 + ], + [ + -62.7, + 66.21 + ], + [ + -62.85, + 66.31 + ], + [ + -62.71, + 66.18 + ], + [ + -62.1, + 66.13 + ], + [ + -62.15, + 66.03 + ], + [ + -61.93, + 66.01 + ], + [ + -63.03, + 66.11 + ], + [ + -62.28, + 65.8 + ], + [ + -62.85, + 65.91 + ], + [ + -62.66, + 65.57 + ], + [ + -62.91, + 65.75 + ], + [ + -62.95, + 65.57 + ], + [ + -63.24, + 65.63 + ], + [ + -63.52, + 65.93 + ], + [ + -63.34, + 65.66 + ], + [ + -63.73, + 65.67 + ], + [ + -63.33, + 65.59 + ], + [ + -63.69, + 65.56 + ], + [ + -63.29, + 65.42 + ], + [ + -63.68, + 65.47 + ], + [ + -63.32, + 65.21 + ], + [ + -63.54, + 64.89 + ], + [ + -63.85, + 64.98 + ], + [ + -63.8, + 65.19 + ], + [ + -64.11, + 65.04 + ], + [ + -64.12, + 65.26 + ], + [ + -64.37, + 65.18 + ], + [ + -64.21, + 65.45 + ], + [ + -64.56, + 65.08 + ], + [ + -64.91, + 65.34 + ], + [ + -64.4, + 65.48 + ], + [ + -65.09, + 65.39 + ], + [ + -64.71, + 65.65 + ], + [ + -65.1, + 65.54 + ], + [ + -65.3, + 65.63 + ], + [ + -64.79, + 65.73 + ], + [ + -65.46, + 65.69 + ], + [ + -65.36, + 65.91 + ], + [ + -64.67, + 65.96 + ], + [ + -64.86, + 66.03 + ], + [ + -64.77, + 66.18 + ], + [ + -64.35, + 66.36 + ], + [ + -64.7, + 66.28 + ], + [ + -64.95, + 66.07 + ], + [ + -65.87, + 65.94 + ], + [ + -65.48, + 66.45 + ], + [ + -65.99, + 66.11 + ], + [ + -66.54, + 66.24 + ], + [ + -66.45, + 66.42 + ], + [ + -66.77, + 66.37 + ], + [ + -66.73, + 66.6 + ], + [ + -67.17, + 66.67 + ], + [ + -66.85, + 66.57 + ], + [ + -67.16, + 66.49 + ], + [ + -67.94, + 66.63 + ], + [ + -67.12, + 66.44 + ], + [ + -67.44, + 66.44 + ], + [ + -67.28, + 66.27 + ], + [ + -67.99, + 66.51 + ], + [ + -67.79, + 66.25 + ], + [ + -67.15, + 66.04 + ], + [ + -67.5, + 65.9 + ], + [ + -67.71, + 66.1 + ], + [ + -67.94, + 65.91 + ], + [ + -67.93, + 66.14 + ], + [ + -68.47, + 66.31 + ], + [ + -68.97, + 66.19 + ], + [ + -68.12, + 66.04 + ], + [ + -68.37, + 66.07 + ], + [ + -68.24, + 65.77 + ], + [ + -67.85, + 65.82 + ], + [ + -68.36, + 65.39 + ], + [ + -67.52, + 65.64 + ], + [ + -67.46, + 65.63 + ], + [ + -67.48, + 65.49 + ], + [ + -67.05, + 65.43 + ], + [ + -67.57, + 65.34 + ], + [ + -67.11, + 65.32 + ], + [ + -67.26, + 65.17 + ], + [ + -66.92, + 65.24 + ], + [ + -67.13, + 65.01 + ], + [ + -66.75, + 65.18 + ], + [ + -66.73, + 64.72 + ], + [ + -66.67, + 65.04 + ], + [ + -66.12, + 64.87 + ], + [ + -66.33, + 64.63 + ], + [ + -66.01, + 64.86 + ], + [ + -65.78, + 64.62 + ], + [ + -65.87, + 64.77 + ], + [ + -65.92, + 64.89 + ], + [ + -65.53, + 64.72 + ], + [ + -65.7, + 64.48 + ], + [ + -65.31, + 64.54 + ], + [ + -65.36, + 64.42 + ], + [ + -65.2, + 64.54 + ], + [ + -65.04, + 64.43 + ], + [ + -65.32, + 64.42 + ], + [ + -65.2, + 64.29 + ], + [ + -65.67, + 64.3 + ], + [ + -65.23, + 64.2 + ], + [ + -65.41, + 64.14 + ], + [ + -65.01, + 64.05 + ], + [ + -65.22, + 64.02 + ], + [ + -64.61, + 63.97 + ], + [ + -64.97, + 63.81 + ], + [ + -64.5, + 63.68 + ], + [ + -64.5, + 63.24 + ], + [ + -64.7, + 63.28 + ], + [ + -64.85, + 63.55 + ], + [ + -65.3, + 63.8 + ], + [ + -64.96, + 63.6 + ], + [ + -65.15, + 63.4 + ], + [ + -64.88, + 63.23 + ], + [ + -65.06, + 63.32 + ], + [ + -65.08, + 63.16 + ], + [ + -64.6, + 62.91 + ], + [ + -64.81, + 62.83 + ], + [ + -65.25, + 63 + ], + [ + -64.89, + 62.65 + ], + [ + -65.1, + 62.56 + ], + [ + -64.8, + 62.58 + ], + [ + -65.12, + 62.54 + ], + [ + -65.29, + 62.94 + ], + [ + -65.54, + 62.8 + ], + [ + -65.69, + 63.05 + ], + [ + -65.76, + 62.88 + ], + [ + -66.24, + 63.22 + ], + [ + -66.06, + 62.94 + ], + [ + -66.46, + 63.05 + ], + [ + -66.5, + 63.41 + ], + [ + -66.53, + 63 + ], + [ + -66.79, + 63.29 + ], + [ + -66.8, + 63.15 + ], + [ + -67.01, + 63.25 + ], + [ + -66.92, + 63.4 + ], + [ + -67.14, + 63.28 + ], + [ + -67.9, + 63.78 + ], + [ + -67.67, + 63.36 + ], + [ + -68.24, + 63.7 + ], + [ + -68.98, + 63.76 + ], + [ + -67.97, + 63.04 + ], + [ + -67.61, + 63.09 + ], + [ + -67.75, + 62.95 + ], + [ + -67.5, + 63.03 + ], + [ + -67.63, + 62.91 + ], + [ + -67.37, + 62.96 + ], + [ + -66.34, + 62.44 + ], + [ + -66.5, + 62.34 + ], + [ + -65.89, + 62.21 + ], + [ + -66.01, + 62.05 + ], + [ + -66.24, + 62.08 + ], + [ + -65.94, + 61.88 + ], + [ + -66.27, + 61.86 + ], + [ + -67.71, + 62.22 + ], + [ + -68.6, + 62.26 + ], + [ + -68.85, + 62.58 + ], + [ + -68.97, + 62.36 + ], + [ + -69.24, + 62.64 + ], + [ + -69.34, + 62.53 + ], + [ + -69.59, + 62.65 + ], + [ + -69.38, + 62.77 + ], + [ + -69.94, + 62.78 + ], + [ + -69.88, + 62.92 + ], + [ + -70.16, + 62.74 + ], + [ + -71, + 62.95 + ], + [ + -70.82, + 63.06 + ], + [ + -71.11, + 62.98 + ], + [ + -70.85, + 63.16 + ], + [ + -71.4, + 63.05 + ], + [ + -71.7, + 63.41 + ], + [ + -72.12, + 63.44 + ], + [ + -71.6, + 63.41 + ], + [ + -71.2, + 63.59 + ], + [ + -71.56, + 63.57 + ], + [ + -71.49, + 63.72 + ], + [ + -71.61, + 63.63 + ], + [ + -71.91, + 63.87 + ], + [ + -71.89, + 63.64 + ], + [ + -72.17, + 63.77 + ], + [ + -72.25, + 63.67 + ], + [ + -72.22, + 63.95 + ], + [ + -72.56, + 63.78 + ], + [ + -72.58, + 64.02 + ], + [ + -72.96, + 64.05 + ], + [ + -72.86, + 64.17 + ], + [ + -73.49, + 64.4 + ], + [ + -73.29, + 64.66 + ], + [ + -73.58, + 64.31 + ], + [ + -73.65, + 64.51 + ], + [ + -74.18, + 64.36 + ], + [ + -74.04, + 64.72 + ], + [ + -74.38, + 64.57 + ], + [ + -74.61, + 64.89 + ], + [ + -74.94, + 64.79 + ], + [ + -74.44, + 64.56 + ], + [ + -74.65, + 64.35 + ], + [ + -75.81, + 64.62 + ], + [ + -75.69, + 64.37 + ], + [ + -76.7, + 64.3 + ], + [ + -76.65, + 64.19 + ], + [ + -78.03, + 64.43 + ], + [ + -78.14, + 64.96 + ], + [ + -77.31, + 65.18 + ], + [ + -77.42, + 65.46 + ], + [ + -75.72, + 65.2 + ], + [ + -75.91, + 65.33 + ], + [ + -75.15, + 65.25 + ], + [ + -75.1, + 65.39 + ], + [ + -74.5, + 65.33 + ], + [ + -74.13, + 65.54 + ], + [ + -73.5, + 65.43 + ], + [ + -74.4, + 66.2 + ], + [ + -73.06, + 66.72 + ], + [ + -71.28, + 66.5 + ] + ], + [ + [ + -71.77, + 65.4 + ], + [ + -71.39, + 64.89 + ], + [ + -71.76, + 64.8 + ], + [ + -72.04, + 64.92 + ], + [ + -71.84, + 64.66 + ], + [ + -71.17, + 64.63 + ], + [ + -70.8, + 64.8 + ], + [ + -70.58, + 64.7 + ], + [ + -70.81, + 64.62 + ], + [ + -70.4, + 64.56 + ], + [ + -70.71, + 65.05 + ], + [ + -71.77, + 65.4 + ] + ], + [ + [ + -69.35, + 66.52 + ], + [ + -69.39, + 66.5 + ], + [ + -69.3, + 66.5 + ], + [ + -69.35, + 66.52 + ] + ], + [ + [ + -73.09, + 70.5 + ], + [ + -73.56, + 70.34 + ], + [ + -73.3, + 70.26 + ], + [ + -72.7, + 70.38 + ], + [ + -73.09, + 70.5 + ] + ] + ], + [ + [ + [ + -70.66, + 62.59 + ], + [ + -70.91, + 62.75 + ], + [ + -70.73, + 62.78 + ], + [ + -71.21, + 62.89 + ], + [ + -70.51, + 62.78 + ], + [ + -70.17, + 62.58 + ], + [ + -70.66, + 62.59 + ] + ] + ], + [ + [ + [ + -77.69, + 63.14 + ], + [ + -78.02, + 63.12 + ], + [ + -78.53, + 63.43 + ], + [ + -77.66, + 63.43 + ], + [ + -77.69, + 63.14 + ] + ] + ], + [ + [ + [ + -83.19, + 64.15 + ], + [ + -83.66, + 64.05 + ], + [ + -83.61, + 63.76 + ], + [ + -84.29, + 63.63 + ], + [ + -84.57, + 63.29 + ], + [ + -85.21, + 63.11 + ], + [ + -85.61, + 63.18 + ], + [ + -85.64, + 63.69 + ], + [ + -87.16, + 63.57 + ], + [ + -86.95, + 63.89 + ], + [ + -86.17, + 64.09 + ], + [ + -86.39, + 64.59 + ], + [ + -85.99, + 65.71 + ], + [ + -85.59, + 65.91 + ], + [ + -85.17, + 65.79 + ], + [ + -85.02, + 65.61 + ], + [ + -85.28, + 65.54 + ], + [ + -84.91, + 65.21 + ], + [ + -84.51, + 65.48 + ], + [ + -84.11, + 65.2 + ], + [ + -83.4, + 65.14 + ], + [ + -83.18, + 64.93 + ], + [ + -81.83, + 64.55 + ], + [ + -81.58, + 64.13 + ], + [ + -82, + 63.99 + ], + [ + -81.39, + 64.09 + ], + [ + -80.93, + 63.97 + ], + [ + -80.92, + 64.12 + ], + [ + -80.54, + 63.98 + ], + [ + -80.66, + 63.88 + ], + [ + -80.15, + 63.77 + ], + [ + -81.05, + 63.45 + ], + [ + -82.47, + 63.66 + ], + [ + -82.36, + 63.89 + ], + [ + -83.16, + 63.98 + ], + [ + -82.93, + 64.13 + ], + [ + -83.19, + 64.15 + ] + ] + ], + [ + [ + [ + -77.32, + 63.69 + ], + [ + -76.67, + 63.57 + ], + [ + -76.66, + 63.37 + ], + [ + -77.4, + 63.58 + ], + [ + -77.32, + 63.69 + ] + ] + ], + [ + [ + [ + -64.25, + 63.47 + ], + [ + -64.01, + 63.28 + ], + [ + -64.25, + 63.35 + ], + [ + -64.38, + 63.67 + ], + [ + -64.25, + 63.47 + ] + ] + ], + [ + [ + [ + -65.01, + 61.89 + ], + [ + -64.85, + 61.72 + ], + [ + -65.24, + 61.87 + ], + [ + -65.01, + 61.89 + ] + ] + ], + [ + [ + [ + -64.6, + 62.41 + ], + [ + -64.92, + 62.42 + ], + [ + -64.78, + 62.56 + ], + [ + -64.37, + 62.53 + ], + [ + -64.6, + 62.41 + ] + ] + ], + [ + [ + [ + -80.04, + 61.74 + ], + [ + -80.21, + 62.14 + ], + [ + -79.6, + 62.42 + ], + [ + -79.26, + 62.24 + ], + [ + -79.3, + 62.03 + ], + [ + -79.72, + 61.59 + ], + [ + -80.04, + 61.74 + ] + ] + ], + [ + [ + [ + -69.33, + 58.98 + ], + [ + -69.25, + 59.17 + ], + [ + -69.09, + 59.06 + ], + [ + -69.33, + 58.98 + ] + ] + ], + [ + [ + [ + -68.36, + 60.4 + ], + [ + -68.23, + 60.59 + ], + [ + -67.83, + 60.48 + ], + [ + -68.33, + 60.2 + ], + [ + -68.36, + 60.4 + ] + ] + ], + [ + [ + [ + -64.67, + 61.56 + ], + [ + -64.89, + 61.33 + ], + [ + -65.47, + 61.62 + ], + [ + -65.01, + 61.7 + ], + [ + -64.67, + 61.56 + ] + ] + ], + [ + [ + [ + -64.54, + 60.38 + ], + [ + -64.4, + 60.28 + ], + [ + -64.87, + 60.46 + ], + [ + -64.54, + 60.38 + ] + ] + ], + [ + [ + [ + -80, + 56.32 + ], + [ + -79.82, + 56.37 + ], + [ + -79.72, + 56.35 + ], + [ + -79.71, + 56.29 + ], + [ + -79.54, + 56.54 + ], + [ + -79.66, + 56.32 + ], + [ + -79.72, + 56.29 + ], + [ + -79.76, + 56.27 + ], + [ + -80.05, + 56.17 + ], + [ + -80, + 56.32 + ] + ] + ], + [ + [ + [ + -78.91, + 56.14 + ], + [ + -78.68, + 56.44 + ], + [ + -78.67, + 56.17 + ], + [ + -78.91, + 56.14 + ] + ] + ], + [ + [ + [ + -61.41, + 56.52 + ], + [ + -61.14, + 56.44 + ], + [ + -61.64, + 56.49 + ], + [ + -61.41, + 56.52 + ] + ] + ], + [ + [ + [ + -61.45, + 56.85 + ], + [ + -61.39, + 56.6 + ], + [ + -61.72, + 56.67 + ], + [ + -61.48, + 56.96 + ], + [ + -61.34, + 56.93 + ], + [ + -61.45, + 56.85 + ] + ] + ], + [ + [ + [ + -61.72, + 57.54 + ], + [ + -61.65, + 57.39 + ], + [ + -61.92, + 57.44 + ], + [ + -61.72, + 57.54 + ] + ] + ], + [ + [ + [ + -61.97, + 57.58 + ], + [ + -61.78, + 57.55 + ], + [ + -61.92, + 57.45 + ], + [ + -61.97, + 57.58 + ] + ] + ], + [ + [ + [ + -81.49, + 53.2 + ], + [ + -80.91, + 53.09 + ], + [ + -80.71, + 52.67 + ], + [ + -82.05, + 53.01 + ], + [ + -81.49, + 53.2 + ] + ] + ], + [ + [ + [ + -79.33, + 51.96 + ], + [ + -79.67, + 51.98 + ], + [ + -79.34, + 52.1 + ], + [ + -79.33, + 51.96 + ] + ] + ], + [ + [ + [ + -99.98, + 52.46 + ], + [ + -99.84, + 52.54 + ], + [ + -99.91, + 52.3 + ], + [ + -99.98, + 52.46 + ] + ] + ], + [ + [ + [ + -73.28, + 53.96 + ], + [ + -73.39, + 54.02 + ], + [ + -73.11, + 53.96 + ], + [ + -73.28, + 53.96 + ] + ] + ], + [ + [ + [ + -79.39, + 56.15 + ], + [ + -79.34, + 56.24 + ], + [ + -79.39, + 56.24 + ], + [ + -79.25, + 56.63 + ], + [ + -79.28, + 56.54 + ], + [ + -79.22, + 56.51 + ], + [ + -79.23, + 56.55 + ], + [ + -79.13, + 56.54 + ], + [ + -79.06, + 56.43 + ], + [ + -78.92, + 56.43 + ], + [ + -78.88, + 56.31 + ], + [ + -79.21, + 55.86 + ], + [ + -78.94, + 56.39 + ], + [ + -79.28, + 55.85 + ], + [ + -79.13, + 56.24 + ], + [ + -79.47, + 55.87 + ], + [ + -79.78, + 55.78 + ], + [ + -79.52, + 56.13 + ], + [ + -79.91, + 55.82 + ], + [ + -79.85, + 55.99 + ], + [ + -80.02, + 55.92 + ], + [ + -79.63, + 56.2 + ], + [ + -79.67, + 56.1 + ], + [ + -79.45, + 56.56 + ], + [ + -79.64, + 56.08 + ], + [ + -79.39, + 56.24 + ], + [ + -79.39, + 56.15 + ], + [ + -79.41, + 56.15 + ], + [ + -79.38, + 56.05 + ], + [ + -79.39, + 56.15 + ] + ] + ], + [ + [ + [ + -61.08, + 56.11 + ], + [ + -60.94, + 56.01 + ], + [ + -61.23, + 56.06 + ], + [ + -61.08, + 56.11 + ] + ] + ], + [ + [ + [ + -130.27, + 54.85 + ], + [ + -130.49, + 54.83 + ], + [ + -130.19, + 55.03 + ], + [ + -130.27, + 54.85 + ] + ] + ], + [ + [ + [ + -130.28, + 53.8 + ], + [ + -130.08, + 53.56 + ], + [ + -130.41, + 53.67 + ], + [ + -130.28, + 53.8 + ] + ] + ], + [ + [ + [ + -130.7, + 53.91 + ], + [ + -130.64, + 53.83 + ], + [ + -130.72, + 53.94 + ], + [ + -130.42, + 54.1 + ], + [ + -130.23, + 53.98 + ], + [ + -130.34, + 53.83 + ], + [ + -130.52, + 53.87 + ], + [ + -130.47, + 53.89 + ], + [ + -130.41, + 53.97 + ], + [ + -130.34, + 53.96 + ], + [ + -130.41, + 54.03 + ], + [ + -130.49, + 53.88 + ], + [ + -130.56, + 53.9 + ], + [ + -130.64, + 53.96 + ], + [ + -130.7, + 53.91 + ] + ] + ], + [ + [ + [ + -129.1, + 53.49 + ], + [ + -129.17, + 53.38 + ], + [ + -129.18, + 53.63 + ], + [ + -128.84, + 53.71 + ], + [ + -129.1, + 53.49 + ] + ] + ], + [ + [ + [ + -129.47, + 53.38 + ], + [ + -129.59, + 53.21 + ], + [ + -130.26, + 53.89 + ], + [ + -129.47, + 53.38 + ] + ] + ], + [ + [ + [ + -129.77, + 53.19 + ], + [ + -129.96, + 53.17 + ], + [ + -130.54, + 53.63 + ], + [ + -129.99, + 53.45 + ], + [ + -129.77, + 53.19 + ] + ] + ], + [ + [ + [ + -129.33, + 53.22 + ], + [ + -129.23, + 53.32 + ], + [ + -129.15, + 53.1 + ], + [ + -129.33, + 53.22 + ] + ] + ], + [ + [ + [ + -129.08, + 52.52 + ], + [ + -129.28, + 52.83 + ], + [ + -128.93, + 52.61 + ], + [ + -128.97, + 52.45 + ], + [ + -129.08, + 52.52 + ] + ] + ], + [ + [ + [ + -128.7, + 53.16 + ], + [ + -128.52, + 52.9 + ], + [ + -128.76, + 52.6 + ], + [ + -128.66, + 52.97 + ], + [ + -128.89, + 52.65 + ], + [ + -129.14, + 52.85 + ], + [ + -128.9, + 53.03 + ], + [ + -129.11, + 52.9 + ], + [ + -129.2, + 53 + ], + [ + -129.06, + 53.21 + ], + [ + -128.89, + 53.16 + ], + [ + -129.08, + 53.29 + ], + [ + -128.7, + 53.16 + ] + ] + ], + [ + [ + [ + -128.52, + 52.59 + ], + [ + -128.5, + 52.43 + ], + [ + -128.83, + 52.51 + ], + [ + -128.55, + 52.68 + ], + [ + -128.52, + 52.59 + ] + ] + ], + [ + [ + [ + -128.16, + 52.77 + ], + [ + -128.29, + 52.59 + ], + [ + -128.35, + 52.78 + ], + [ + -128.16, + 52.77 + ] + ] + ], + [ + [ + [ + -127.66, + 52.27 + ], + [ + -127.23, + 52.42 + ], + [ + -127.9, + 51.93 + ], + [ + -127.66, + 52.27 + ] + ] + ], + [ + [ + [ + -128.11, + 51.84 + ], + [ + -128.02, + 51.95 + ], + [ + -128.13, + 51.96 + ], + [ + -128.17, + 51.85 + ], + [ + -128.25, + 51.89 + ], + [ + -127.99, + 52.08 + ], + [ + -127.96, + 51.95 + ], + [ + -128.08, + 51.79 + ], + [ + -128.11, + 51.84 + ] + ] + ], + [ + [ + [ + -54.84, + 49.57 + ], + [ + -54.55, + 49.64 + ], + [ + -54.75, + 49.47 + ], + [ + -54.84, + 49.57 + ] + ] + ], + [ + [ + [ + -54.18, + 49.7 + ], + [ + -54, + 49.65 + ], + [ + -54.29, + 49.56 + ], + [ + -54.18, + 49.7 + ] + ] + ], + [ + [ + [ + -64.34, + 49.92 + ], + [ + -62.7, + 49.66 + ], + [ + -61.9, + 49.35 + ], + [ + -61.7, + 49.08 + ], + [ + -63.18, + 49.26 + ], + [ + -64.51, + 49.86 + ], + [ + -64.34, + 49.92 + ] + ] + ], + [ + [ + [ + -53.74, + 48.11 + ], + [ + -53.95, + 48.21 + ], + [ + -53.72, + 48.15 + ], + [ + -53.52, + 48.2 + ], + [ + -53.74, + 48.11 + ] + ] + ], + [ + [ + [ + -61.85, + 47.22 + ], + [ + -62.02, + 47.23 + ], + [ + -61.96, + 47.39 + ], + [ + -61.4, + 47.63 + ], + [ + -61.87, + 47.42 + ], + [ + -61.85, + 47.22 + ] + ] + ], + [ + [ + [ + -57.88, + 48.94 + ], + [ + -58.15, + 49.12 + ], + [ + -57.85, + 49.18 + ], + [ + -58.11, + 49.15 + ], + [ + -57.92, + 49.25 + ], + [ + -58.2, + 49.23 + ], + [ + -58.23, + 49.39 + ], + [ + -57.99, + 49.56 + ], + [ + -57.7, + 49.45 + ], + [ + -57.94, + 49.73 + ], + [ + -57.61, + 50.21 + ], + [ + -57.44, + 50.18 + ], + [ + -57.61, + 50.21 + ], + [ + -57.37, + 50.6 + ], + [ + -57.15, + 50.6 + ], + [ + -57.41, + 50.7 + ], + [ + -56.95, + 50.96 + ], + [ + -56.56, + 51.34 + ], + [ + -55.9, + 51.63 + ], + [ + -55.9, + 51.5 + ], + [ + -55.65, + 51.47 + ], + [ + -55.74, + 51.59 + ], + [ + -55.42, + 51.59 + ], + [ + -55.59, + 51.3 + ], + [ + -56.19, + 51.32 + ], + [ + -56.03, + 51.18 + ], + [ + -55.77, + 51.22 + ], + [ + -55.73, + 51.09 + ], + [ + -56.1, + 50.72 + ], + [ + -56.1, + 50.85 + ], + [ + -56.25, + 50.9 + ], + [ + -56.2, + 50.85 + ], + [ + -56.27, + 50.8 + ], + [ + -56.5, + 50.79 + ], + [ + -56.28, + 50.79 + ], + [ + -56.25, + 50.81 + ], + [ + -56.22, + 50.83 + ], + [ + -56.2, + 50.83 + ], + [ + -56.2, + 50.85 + ], + [ + -56.16, + 50.87 + ], + [ + -56.11, + 50.67 + ], + [ + -56.73, + 50.13 + ], + [ + -56.87, + 49.55 + ], + [ + -56.16, + 50.16 + ], + [ + -56.19, + 49.93 + ], + [ + -56.02, + 50.04 + ], + [ + -55.78, + 49.92 + ], + [ + -55.48, + 49.97 + ], + [ + -56.18, + 49.62 + ], + [ + -55.89, + 49.72 + ], + [ + -56, + 49.57 + ], + [ + -55.84, + 49.57 + ], + [ + -56.14, + 49.42 + ], + [ + -55.69, + 49.56 + ], + [ + -55.9, + 49.46 + ], + [ + -55.69, + 49.38 + ], + [ + -55.54, + 49.49 + ], + [ + -55.61, + 49.41 + ], + [ + -55.37, + 49.5 + ], + [ + -55.49, + 49.33 + ], + [ + -55.32, + 49.41 + ], + [ + -55.32, + 49.3 + ], + [ + -55.25, + 49.4 + ], + [ + -55.34, + 49.54 + ], + [ + -55.16, + 49.54 + ], + [ + -55.3, + 49.07 + ], + [ + -55.09, + 49.36 + ], + [ + -55.04, + 49.22 + ], + [ + -54.88, + 49.41 + ], + [ + -54.84, + 49.27 + ], + [ + -54.45, + 49.48 + ], + [ + -54.5, + 49.26 + ], + [ + -54.38, + 49.44 + ], + [ + -53.94, + 49.46 + ], + [ + -53.46, + 49.26 + ], + [ + -53.88, + 48.92 + ], + [ + -54.22, + 48.77 + ], + [ + -53.88, + 48.84 + ], + [ + -53.97, + 48.62 + ], + [ + -53.62, + 48.68 + ], + [ + -54.17, + 48.32 + ], + [ + -53.66, + 48.54 + ], + [ + -53.63, + 48.4 + ], + [ + -53.45, + 48.63 + ], + [ + -53.26, + 48.52 + ], + [ + -53.09, + 48.7 + ], + [ + -53, + 48.6 + ], + [ + -53.11, + 48.4 + ], + [ + -53.37, + 48.4 + ], + [ + -53.39, + 48.27 + ], + [ + -53.61, + 48.26 + ], + [ + -53.64, + 48.17 + ], + [ + -53.96, + 48.24 + ], + [ + -53.93, + 48.08 + ], + [ + -53.68, + 48.06 + ], + [ + -53.96, + 48.02 + ], + [ + -53.61, + 48.05 + ], + [ + -53.8, + 47.77 + ], + [ + -53.94, + 47.86 + ], + [ + -53.86, + 47.69 + ], + [ + -53.56, + 47.52 + ], + [ + -53.3, + 48.01 + ], + [ + -52.95, + 48.17 + ], + [ + -53.28, + 47.55 + ], + [ + -53.13, + 47.39 + ], + [ + -52.79, + 47.81 + ], + [ + -52.62, + 47.52 + ], + [ + -53.07, + 46.66 + ], + [ + -53.35, + 46.77 + ], + [ + -53.57, + 46.62 + ], + [ + -53.59, + 46.83 + ], + [ + -53.57, + 46.83 + ], + [ + -53.59, + 46.83 + ], + [ + -53.61, + 46.83 + ], + [ + -53.4, + 47.18 + ], + [ + -53.55, + 47.22 + ], + [ + -54.2, + 46.82 + ], + [ + -53.79, + 47.44 + ], + [ + -53.94, + 47.45 + ], + [ + -53.81, + 47.58 + ], + [ + -53.99, + 47.85 + ], + [ + -54.27, + 47.93 + ], + [ + -54.43, + 47.55 + ], + [ + -54.74, + 47.36 + ], + [ + -54.84, + 47.43 + ], + [ + -55.06, + 47.19 + ], + [ + -55.33, + 47.11 + ], + [ + -55.09, + 47.16 + ], + [ + -55.26, + 46.92 + ], + [ + -55.63, + 46.89 + ], + [ + -55.97, + 47 + ], + [ + -55.5, + 47.13 + ], + [ + -55.19, + 47.2 + ], + [ + -55.36, + 47.24 + ], + [ + -55.3, + 47.39 + ], + [ + -54.71, + 47.68 + ], + [ + -55.09, + 47.59 + ], + [ + -54.94, + 47.81 + ], + [ + -55.12, + 47.58 + ], + [ + -55.12, + 47.7 + ], + [ + -55.44, + 47.73 + ], + [ + -55.58, + 47.4 + ], + [ + -55.58, + 47.58 + ], + [ + -55.94, + 47.44 + ], + [ + -55.72, + 47.62 + ], + [ + -56.16, + 47.48 + ], + [ + -55.62, + 47.68 + ], + [ + -55.93, + 47.66 + ], + [ + -55.6, + 48 + ], + [ + -56.05, + 47.7 + ], + [ + -55.99, + 47.85 + ], + [ + -56.11, + 47.75 + ], + [ + -56.18, + 47.89 + ], + [ + -56.27, + 47.64 + ], + [ + -56.35, + 47.8 + ], + [ + -56.38, + 47.6 + ], + [ + -56.6, + 47.75 + ], + [ + -56.53, + 47.62 + ], + [ + -56.77, + 47.66 + ], + [ + -56.81, + 47.53 + ], + [ + -56.84, + 47.66 + ], + [ + -56.87, + 47.54 + ], + [ + -57.18, + 47.71 + ], + [ + -57.22, + 47.61 + ], + [ + -57.28, + 47.88 + ], + [ + -57.4, + 47.62 + ], + [ + -57.58, + 47.65 + ], + [ + -57.5, + 47.73 + ], + [ + -57.66, + 47.6 + ], + [ + -57.72, + 47.75 + ], + [ + -57.78, + 47.62 + ], + [ + -57.91, + 47.75 + ], + [ + -58.36, + 47.65 + ], + [ + -58.33, + 47.8 + ], + [ + -58.42, + 47.64 + ], + [ + -59.31, + 47.62 + ], + [ + -59.4, + 47.92 + ], + [ + -58.28, + 48.51 + ], + [ + -59.22, + 48.55 + ], + [ + -58.76, + 48.79 + ], + [ + -58.97, + 48.63 + ], + [ + -58.71, + 48.56 + ], + [ + -58.37, + 49.15 + ], + [ + -57.88, + 48.94 + ] + ], + [ + [ + -54.01, + 49.24 + ], + [ + -54.1, + 49.17 + ], + [ + -53.9, + 49.18 + ], + [ + -54.01, + 49.24 + ] + ], + [ + [ + -57, + 49.38 + ], + [ + -57.06, + 49.18 + ], + [ + -56.87, + 49.27 + ], + [ + -57, + 49.38 + ] + ], + [ + [ + -56.6, + 51.21 + ], + [ + -56.73, + 51.1 + ], + [ + -56.53, + 51.1 + ], + [ + -56.6, + 51.21 + ] + ], + [ + [ + -56.65, + 48.34 + ], + [ + -56.84, + 48.22 + ], + [ + -56.73, + 48.12 + ], + [ + -56.32, + 48.28 + ], + [ + -56.65, + 48.34 + ] + ], + [ + [ + -57.26, + 48.37 + ], + [ + -57.39, + 48.21 + ], + [ + -57.11, + 48.34 + ], + [ + -57.26, + 48.37 + ] + ], + [ + [ + -57.48, + 48.91 + ], + [ + -57.13, + 49.22 + ], + [ + -57.57, + 48.91 + ], + [ + -57.61, + 48.89 + ], + [ + -57.63, + 48.89 + ], + [ + -57.61, + 48.89 + ], + [ + -57.57, + 48.91 + ], + [ + -57.48, + 48.91 + ] + ] + ], + [ + [ + [ + -63.02, + 46.29 + ], + [ + -62.86, + 46.36 + ], + [ + -63.21, + 46.28 + ], + [ + -63.25, + 46.13 + ], + [ + -63.65, + 46.23 + ], + [ + -63.75, + 46.4 + ], + [ + -64.14, + 46.4 + ], + [ + -64.08, + 46.65 + ], + [ + -64.38, + 46.62 + ], + [ + -64.4, + 46.72 + ], + [ + -64, + 47.06 + ], + [ + -64.15, + 46.69 + ], + [ + -63.89, + 46.65 + ], + [ + -63.93, + 46.46 + ], + [ + -63.69, + 46.43 + ], + [ + -63.66, + 46.57 + ], + [ + -62.98, + 46.35 + ], + [ + -61.97, + 46.45 + ], + [ + -62.64, + 46.24 + ], + [ + -62.45, + 46.1 + ], + [ + -62.56, + 45.97 + ], + [ + -63.02, + 46.05 + ], + [ + -62.84, + 46.15 + ], + [ + -63.11, + 46.2 + ], + [ + -63.02, + 46.29 + ] + ] + ], + [ + [ + [ + -60.69, + 46.01 + ], + [ + -60.32, + 46.21 + ], + [ + -60.67, + 46.07 + ], + [ + -60.36, + 46.32 + ], + [ + -60.23, + 46.11 + ], + [ + -60.13, + 46.27 + ], + [ + -59.81, + 46.17 + ], + [ + -60, + 46.04 + ], + [ + -59.79, + 45.95 + ], + [ + -60.15, + 45.88 + ], + [ + -60.26, + 45.71 + ], + [ + -60.73, + 45.57 + ], + [ + -60.92, + 45.66 + ], + [ + -61.13, + 45.57 + ], + [ + -61.23, + 45.61 + ], + [ + -61.33, + 45.56 + ], + [ + -61.47, + 45.72 + ], + [ + -61.55, + 46.04 + ], + [ + -60.62, + 47.03 + ], + [ + -60.41, + 47.04 + ], + [ + -60.35, + 46.62 + ], + [ + -60.62, + 46.21 + ], + [ + -60.42, + 46.29 + ], + [ + -61.13, + 45.97 + ], + [ + -60.74, + 46.07 + ], + [ + -61.17, + 45.71 + ], + [ + -60.9, + 45.77 + ], + [ + -60.83, + 45.66 + ], + [ + -60.37, + 46.01 + ], + [ + -60.72, + 45.9 + ], + [ + -60.69, + 46.01 + ] + ] + ], + [ + [ + [ + -66.75, + 44.68 + ], + [ + -66.9, + 44.6 + ], + [ + -66.78, + 44.8 + ], + [ + -66.75, + 44.68 + ] + ] + ], + [ + [ + [ + -123.89, + 49.14 + ], + [ + -123.56, + 48.8 + ], + [ + -123.55, + 48.49 + ], + [ + -123.44, + 48.7 + ], + [ + -123.27, + 48.46 + ], + [ + -123.56, + 48.31 + ], + [ + -125.21, + 48.78 + ], + [ + -124.86, + 49 + ], + [ + -124.83, + 49.26 + ], + [ + -124.91, + 48.98 + ], + [ + -125.2, + 49.1 + ], + [ + -125.22, + 48.95 + ], + [ + -125.35, + 49.04 + ], + [ + -125.54, + 48.92 + ], + [ + -125.92, + 49.14 + ], + [ + -125.73, + 49.07 + ], + [ + -125.6, + 49.21 + ], + [ + -125.79, + 49.14 + ], + [ + -125.78, + 49.37 + ], + [ + -125.97, + 49.23 + ], + [ + -126.03, + 49.46 + ], + [ + -126.21, + 49.4 + ], + [ + -126.3, + 49.52 + ], + [ + -126.26, + 49.35 + ], + [ + -126.4, + 49.48 + ], + [ + -126.55, + 49.38 + ], + [ + -126.48, + 49.64 + ], + [ + -126.1, + 49.68 + ], + [ + -126.44, + 49.65 + ], + [ + -126.5, + 49.8 + ], + [ + -126.59, + 49.69 + ], + [ + -126.65, + 49.92 + ], + [ + -126.86, + 49.98 + ], + [ + -126.83, + 49.88 + ], + [ + -126.94, + 49.99 + ], + [ + -126.94, + 49.86 + ], + [ + -127.15, + 49.86 + ], + [ + -127.09, + 50.15 + ], + [ + -127.31, + 50.2 + ], + [ + -127.34, + 50.02 + ], + [ + -127.43, + 50.19 + ], + [ + -127.92, + 50.11 + ], + [ + -127.72, + 50.3 + ], + [ + -127.98, + 50.32 + ], + [ + -127.94, + 50.46 + ], + [ + -127.59, + 50.49 + ], + [ + -127.43, + 50.34 + ], + [ + -127.61, + 50.52 + ], + [ + -127.42, + 50.6 + ], + [ + -128.01, + 50.65 + ], + [ + -127.56, + 50.55 + ], + [ + -128.05, + 50.44 + ], + [ + -128.43, + 50.79 + ], + [ + -127.91, + 50.87 + ], + [ + -126.87, + 50.53 + ], + [ + -125.45, + 50.33 + ], + [ + -125.39, + 50.12 + ], + [ + -124.86, + 49.71 + ], + [ + -124.98, + 49.67 + ], + [ + -124.79, + 49.46 + ], + [ + -123.89, + 49.14 + ] + ] + ], + [ + [ + [ + -125.34, + 50.14 + ], + [ + -125.27, + 50.26 + ], + [ + -125.38, + 50.28 + ], + [ + -125.24, + 50.31 + ], + [ + -125.16, + 50 + ], + [ + -125.34, + 50.14 + ] + ] + ], + [ + [ + [ + -126.63, + 49.66 + ], + [ + -126.83, + 49.62 + ], + [ + -126.95, + 49.73 + ], + [ + -126.74, + 49.8 + ], + [ + -126.97, + 49.83 + ], + [ + -126.67, + 49.86 + ], + [ + -126.63, + 49.66 + ] + ] + ], + [ + [ + [ + -126.08, + 49.37 + ], + [ + -126.05, + 49.26 + ], + [ + -126.23, + 49.28 + ], + [ + -126.08, + 49.37 + ] + ] + ], + [ + [ + [ + -123.5, + 48.85 + ], + [ + -123.49, + 48.71 + ], + [ + -123.6, + 48.95 + ], + [ + -123.5, + 48.85 + ] + ] + ], + [ + [ + [ + -125.4, + 50.3 + ], + [ + -125.28, + 50.44 + ], + [ + -125.16, + 50.39 + ], + [ + -125.4, + 50.3 + ] + ] + ], + [ + [ + [ + -126.42, + 50.52 + ], + [ + -126.68, + 50.55 + ], + [ + -126.21, + 50.58 + ], + [ + -126.42, + 50.52 + ] + ] + ], + [ + [ + [ + -126.52, + 50.65 + ], + [ + -126.6, + 50.7 + ], + [ + -126.33, + 50.83 + ], + [ + -126.16, + 50.76 + ], + [ + -126.52, + 50.65 + ] + ] + ], + [ + [ + [ + -128.15, + 51.66 + ], + [ + -127.92, + 51.61 + ], + [ + -127.9, + 51.42 + ], + [ + -128.15, + 51.66 + ] + ] + ], + [ + [ + [ + -82.31, + 45.95 + ], + [ + -82.18, + 45.84 + ], + [ + -81.87, + 45.92 + ], + [ + -81.81, + 45.71 + ], + [ + -81.69, + 45.9 + ], + [ + -81.58, + 45.77 + ], + [ + -81.87, + 45.51 + ], + [ + -83.23, + 45.87 + ], + [ + -82.84, + 46 + ], + [ + -82.56, + 45.77 + ], + [ + -82.73, + 45.95 + ], + [ + -82.31, + 45.95 + ] + ], + [ + [ + -81.96, + 45.8 + ], + [ + -82.13, + 45.8 + ], + [ + -82.09, + 45.67 + ], + [ + -81.84, + 45.74 + ], + [ + -81.96, + 45.8 + ] + ] + ], + [ + [ + [ + -132.63, + 53.96 + ], + [ + -132.31, + 54.11 + ], + [ + -132.11, + 53.89 + ], + [ + -132.26, + 53.76 + ], + [ + -132.67, + 53.68 + ], + [ + -132.36, + 53.67 + ], + [ + -132.48, + 53.56 + ], + [ + -132.14, + 53.7 + ], + [ + -132.09, + 53.9 + ], + [ + -132.2, + 54.05 + ], + [ + -131.66, + 54.15 + ], + [ + -131.97, + 53.28 + ], + [ + -132.32, + 53.23 + ], + [ + -132.21, + 53.15 + ], + [ + -132.71, + 53.25 + ], + [ + -132.55, + 53.33 + ], + [ + -132.72, + 53.38 + ], + [ + -132.42, + 53.34 + ], + [ + -132.99, + 53.56 + ], + [ + -132.82, + 53.6 + ], + [ + -133.13, + 53.8 + ], + [ + -133.07, + 54.18 + ], + [ + -132.59, + 54.12 + ], + [ + -132.63, + 53.96 + ] + ] + ], + [ + [ + [ + -131.6, + 52.66 + ], + [ + -131.69, + 52.73 + ], + [ + -131.45, + 52.71 + ], + [ + -131.6, + 52.66 + ] + ] + ], + [ + [ + [ + -132.14, + 53.14 + ], + [ + -131.8, + 53.25 + ], + [ + -131.61, + 53.03 + ], + [ + -132.03, + 53.04 + ], + [ + -131.62, + 52.9 + ], + [ + -132.01, + 52.88 + ], + [ + -131.66, + 52.81 + ], + [ + -131.85, + 52.7 + ], + [ + -131.04, + 52.16 + ], + [ + -131.29, + 52.24 + ], + [ + -131.31, + 52.15 + ], + [ + -132.1, + 52.72 + ], + [ + -131.97, + 52.8 + ], + [ + -132.24, + 52.8 + ], + [ + -132.36, + 52.95 + ], + [ + -132.11, + 52.99 + ], + [ + -132.57, + 53.08 + ], + [ + -132.14, + 53.14 + ] + ] + ] + ] + }, + "properties": { + "A3": "CAN" + } + }, + { + "type": "Feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + 24.35, + 57.88 + ], + [ + 24.78, + 57.99 + ], + [ + 24.82, + 57.98 + ], + [ + 24.92, + 58 + ], + [ + 24.93, + 58 + ], + [ + 25.3, + 58.08 + ], + [ + 25.66, + 57.91 + ], + [ + 25.67, + 57.91 + ], + [ + 26.21, + 57.67 + ], + [ + 26.23, + 57.66 + ], + [ + 26.24, + 57.66 + ], + [ + 26.23, + 57.65 + ], + [ + 26.24, + 57.65 + ], + [ + 26.24, + 57.63 + ], + [ + 26.62, + 57.51 + ], + [ + 26.85, + 57.59 + ], + [ + 27.07, + 57.58 + ], + [ + 27.35, + 57.52 + ], + [ + 27.4, + 57.53 + ], + [ + 27.42, + 57.52 + ], + [ + 27.43, + 57.53 + ], + [ + 27.44, + 57.53 + ], + [ + 27.45, + 57.53 + ], + [ + 27.46, + 57.53 + ], + [ + 27.47, + 57.53 + ], + [ + 27.47, + 57.54 + ], + [ + 27.48, + 57.54 + ], + [ + 27.55, + 57.52 + ], + [ + 27.56, + 57.52 + ], + [ + 27.55, + 57.52 + ], + [ + 27.56, + 57.52 + ], + [ + 27.57, + 57.51 + ], + [ + 27.56, + 57.51 + ], + [ + 27.56, + 57.5 + ], + [ + 27.56, + 57.49 + ], + [ + 27.55, + 57.48 + ], + [ + 27.55, + 57.47 + ], + [ + 27.87, + 57.3 + ], + [ + 27.66, + 56.83 + ], + [ + 27.83, + 56.87 + ], + [ + 27.91, + 56.75 + ], + [ + 28.03, + 56.61 + ], + [ + 28.04, + 56.59 + ], + [ + 28.12, + 56.51 + ], + [ + 28.13, + 56.51 + ], + [ + 28.18, + 56.39 + ], + [ + 28.17, + 56.39 + ], + [ + 28.19, + 56.36 + ], + [ + 28.24, + 56.27 + ], + [ + 28.15, + 56.17 + ], + [ + 27.86, + 56.04 + ], + [ + 27.64, + 55.9 + ], + [ + 27.63, + 55.9 + ], + [ + 27.64, + 55.85 + ], + [ + 27.61, + 55.79 + ], + [ + 27.59, + 55.78 + ], + [ + 27.56, + 55.78 + ], + [ + 27.55, + 55.78 + ], + [ + 27.53, + 55.79 + ], + [ + 27.52, + 55.79 + ], + [ + 27.51, + 55.79 + ], + [ + 27.5, + 55.79 + ], + [ + 27.48, + 55.79 + ], + [ + 27.46, + 55.79 + ], + [ + 27.44, + 55.79 + ], + [ + 27.42, + 55.8 + ], + [ + 27.4, + 55.8 + ], + [ + 27.39, + 55.8 + ], + [ + 27.25, + 55.79 + ], + [ + 27.25, + 55.8 + ], + [ + 26.86, + 55.71 + ], + [ + 26.85, + 55.71 + ], + [ + 26.74, + 55.68 + ], + [ + 26.7, + 55.7 + ], + [ + 26.67, + 55.7 + ], + [ + 26.65, + 55.71 + ], + [ + 26.65, + 55.7 + ], + [ + 26.63, + 55.68 + ], + [ + 26.62, + 55.68 + ], + [ + 26.58, + 55.68 + ], + [ + 26.56, + 55.68 + ], + [ + 26.54, + 55.68 + ], + [ + 26.37, + 55.73 + ], + [ + 26.31, + 55.74 + ], + [ + 26.3, + 55.75 + ], + [ + 26.28, + 55.76 + ], + [ + 26.23, + 55.81 + ], + [ + 26.23, + 55.82 + ], + [ + 26.23, + 55.83 + ], + [ + 26.22, + 55.85 + ], + [ + 26.21, + 55.85 + ], + [ + 26.07, + 55.92 + ], + [ + 26.07, + 55.93 + ], + [ + 25.91, + 55.99 + ], + [ + 25.9, + 56 + ], + [ + 25.54, + 56.16 + ], + [ + 25.53, + 56.16 + ], + [ + 25.08, + 56.2 + ], + [ + 25.07, + 56.2 + ], + [ + 25.07, + 56.22 + ], + [ + 25.07, + 56.23 + ], + [ + 25.07, + 56.24 + ], + [ + 25.06, + 56.24 + ], + [ + 25.06, + 56.25 + ], + [ + 25.06, + 56.26 + ], + [ + 24.97, + 56.33 + ], + [ + 24.97, + 56.34 + ], + [ + 24.97, + 56.35 + ], + [ + 24.97, + 56.36 + ], + [ + 24.92, + 56.44 + ], + [ + 24.89, + 56.45 + ], + [ + 24.83, + 56.41 + ], + [ + 24.82, + 56.41 + ], + [ + 24.81, + 56.42 + ], + [ + 24.8, + 56.41 + ], + [ + 24.79, + 56.4 + ], + [ + 24.77, + 56.4 + ], + [ + 24.76, + 56.4 + ], + [ + 24.72, + 56.4 + ], + [ + 24.7, + 56.39 + ], + [ + 24.7, + 56.38 + ], + [ + 24.69, + 56.38 + ], + [ + 24.68, + 56.38 + ], + [ + 24.67, + 56.38 + ], + [ + 24.65, + 56.38 + ], + [ + 24.64, + 56.38 + ], + [ + 24.63, + 56.38 + ], + [ + 24.63, + 56.37 + ], + [ + 24.63, + 56.36 + ], + [ + 24.61, + 56.34 + ], + [ + 24.59, + 56.33 + ], + [ + 24.58, + 56.33 + ], + [ + 24.58, + 56.32 + ], + [ + 24.58, + 56.29 + ], + [ + 24.56, + 56.29 + ], + [ + 24.35, + 56.29 + ], + [ + 24.34, + 56.29 + ], + [ + 24.3, + 56.3 + ], + [ + 24.1, + 56.28 + ], + [ + 24.08, + 56.28 + ], + [ + 23.67, + 56.37 + ], + [ + 23.66, + 56.36 + ], + [ + 23.37, + 56.38 + ], + [ + 23.35, + 56.38 + ], + [ + 23.28, + 56.37 + ], + [ + 23.26, + 56.37 + ], + [ + 22.94, + 56.41 + ], + [ + 22.81, + 56.37 + ], + [ + 22.78, + 56.37 + ], + [ + 22.76, + 56.37 + ], + [ + 22.56, + 56.39 + ], + [ + 22.55, + 56.39 + ], + [ + 22.54, + 56.39 + ], + [ + 22.33, + 56.4 + ], + [ + 22.32, + 56.4 + ], + [ + 22.22, + 56.41 + ], + [ + 22.13, + 56.43 + ], + [ + 22.12, + 56.43 + ], + [ + 22.11, + 56.43 + ], + [ + 21.88, + 56.36 + ], + [ + 21.64, + 56.32 + ], + [ + 21.63, + 56.32 + ], + [ + 21.62, + 56.32 + ], + [ + 21.56, + 56.31 + ], + [ + 21.55, + 56.3 + ], + [ + 21.54, + 56.3 + ], + [ + 21.54, + 56.29 + ], + [ + 21.53, + 56.29 + ], + [ + 21.52, + 56.29 + ], + [ + 21.49, + 56.29 + ], + [ + 21.33, + 56.22 + ], + [ + 21.23, + 56.14 + ], + [ + 21.06, + 56.07 + ], + [ + 21.06, + 56.84 + ], + [ + 21.7, + 57.57 + ], + [ + 22.61, + 57.76 + ], + [ + 23.26, + 57.09 + ], + [ + 23.93, + 56.97 + ], + [ + 24.41, + 57.27 + ], + [ + 24.35, + 57.88 + ] + ] + ] + }, + "properties": { + "A3": "LVA" + } + }, + { + "type": "Feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + 134.5, + 7.5 + ], + [ + 134.62, + 7.73 + ], + [ + 134.55, + 7.33 + ], + [ + 134.5, + 7.5 + ] + ] + ] + }, + "properties": { + "A3": "PLW" + } + }, + { + "type": "Feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + -63.09, + 18.05 + ], + [ + -63.08, + 18.05 + ], + [ + -63.07, + 18.06 + ], + [ + -63.06, + 18.06 + ], + [ + -63.04, + 18.06 + ], + [ + -63.02, + 18.06 + ], + [ + -63.01, + 18.06 + ], + [ + -63.02, + 18.06 + ], + [ + -63.04, + 18.01 + ], + [ + -63.09, + 18.05 + ] + ] + ] + }, + "properties": { + "A3": "SXM" + } + }, + { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + -1.79, + 43.35 + ], + [ + -1.77, + 43.34 + ], + [ + -1.76, + 43.34 + ], + [ + -1.74, + 43.31 + ], + [ + -1.73, + 43.31 + ], + [ + -1.38, + 43.25 + ], + [ + -1.44, + 43.05 + ], + [ + -1.27, + 43.12 + ], + [ + -1.01, + 42.99 + ], + [ + -0.6, + 42.83 + ], + [ + -0.58, + 42.81 + ], + [ + -0.57, + 42.81 + ], + [ + -0.42, + 42.81 + ], + [ + -0.41, + 42.81 + ], + [ + -0.32, + 42.84 + ], + [ + -0.3, + 42.84 + ], + [ + 0.13, + 42.71 + ], + [ + 0.68, + 42.69 + ], + [ + 0.75, + 42.85 + ], + [ + 1.05, + 42.78 + ], + [ + 1.06, + 42.78 + ], + [ + 1.18, + 42.71 + ], + [ + 1.19, + 42.72 + ], + [ + 1.44, + 42.6 + ], + [ + 1.44, + 42.59 + ], + [ + 1.43, + 42.59 + ], + [ + 1.45, + 42.44 + ], + [ + 1.66, + 42.49 + ], + [ + 1.73, + 42.5 + ], + [ + 1.75, + 42.49 + ], + [ + 1.8, + 42.49 + ], + [ + 1.96, + 42.41 + ], + [ + 2.46, + 42.37 + ], + [ + 2.46, + 42.36 + ], + [ + 3.17, + 42.44 + ], + [ + 3.32, + 42.32 + ], + [ + 3.11, + 42.23 + ], + [ + 3.18, + 41.87 + ], + [ + 2.15, + 41.3 + ], + [ + 0.99, + 41.04 + ], + [ + 0.7, + 40.81 + ], + [ + 0.87, + 40.69 + ], + [ + 0.59, + 40.62 + ], + [ + 0.05, + 40.04 + ], + [ + -0.34, + 39.43 + ], + [ + -0.16, + 38.99 + ], + [ + 0.23, + 38.73 + ], + [ + -0.64, + 38.2 + ], + [ + -0.86, + 37.72 + ], + [ + -0.69, + 37.63 + ], + [ + -1.35, + 37.55 + ], + [ + -1.78, + 37.26 + ], + [ + -2.06, + 36.78 + ], + [ + -2.31, + 36.84 + ], + [ + -2.7, + 36.68 + ], + [ + -4.41, + 36.72 + ], + [ + -4.64, + 36.51 + ], + [ + -5.18, + 36.41 + ], + [ + -5.34, + 36.15 + ], + [ + -5.35, + 36.15 + ], + [ + -5.61, + 36 + ], + [ + -6.04, + 36.18 + ], + [ + -6.32, + 36.53 + ], + [ + -6.18, + 36.47 + ], + [ + -6.14, + 36.6 + ], + [ + -6.39, + 36.63 + ], + [ + -6.46, + 36.92 + ], + [ + -6.93, + 37.18 + ], + [ + -6.82, + 37.31 + ], + [ + -6.94, + 37.21 + ], + [ + -6.97, + 37.32 + ], + [ + -6.95, + 37.16 + ], + [ + -7.41, + 37.22 + ], + [ + -7.42, + 37.23 + ], + [ + -7.43, + 37.26 + ], + [ + -7.43, + 37.27 + ], + [ + -7.42, + 37.28 + ], + [ + -7.44, + 37.3 + ], + [ + -7.44, + 37.31 + ], + [ + -7.44, + 37.32 + ], + [ + -7.44, + 37.33 + ], + [ + -7.44, + 37.34 + ], + [ + -7.44, + 37.37 + ], + [ + -7.44, + 37.39 + ], + [ + -7.45, + 37.42 + ], + [ + -7.46, + 37.43 + ], + [ + -7.46, + 37.44 + ], + [ + -7.46, + 37.46 + ], + [ + -7.47, + 37.46 + ], + [ + -7.47, + 37.49 + ], + [ + -7.49, + 37.5 + ], + [ + -7.49, + 37.51 + ], + [ + -7.51, + 37.52 + ], + [ + -7.51, + 37.53 + ], + [ + -7.51, + 37.54 + ], + [ + -7.52, + 37.55 + ], + [ + -7.52, + 37.57 + ], + [ + -7.5, + 37.59 + ], + [ + -7.47, + 37.64 + ], + [ + -7.46, + 37.64 + ], + [ + -7.46, + 37.65 + ], + [ + -7.26, + 37.98 + ], + [ + -6.99, + 38.1 + ], + [ + -6.94, + 38.22 + ], + [ + -7.09, + 38.17 + ], + [ + -7.31, + 38.45 + ], + [ + -7.3, + 38.52 + ], + [ + -7.3, + 38.55 + ], + [ + -7.29, + 38.56 + ], + [ + -7.26, + 38.6 + ], + [ + -7.24, + 38.62 + ], + [ + -7.25, + 38.63 + ], + [ + -7.26, + 38.63 + ], + [ + -7.27, + 38.65 + ], + [ + -7.26, + 38.71 + ], + [ + -7.25, + 38.73 + ], + [ + -7.21, + 38.75 + ], + [ + -7.2, + 38.76 + ], + [ + -7.16, + 38.79 + ], + [ + -7.14, + 38.8 + ], + [ + -7.14, + 38.81 + ], + [ + -7.08, + 38.84 + ], + [ + -6.95, + 39.02 + ], + [ + -7.12, + 39.1 + ], + [ + -7.13, + 39.11 + ], + [ + -7.52, + 39.67 + ], + [ + -7.51, + 39.67 + ], + [ + -7.47, + 39.66 + ], + [ + -7.39, + 39.65 + ], + [ + -7.38, + 39.65 + ], + [ + -7.35, + 39.64 + ], + [ + -7.33, + 39.64 + ], + [ + -7.25, + 39.67 + ], + [ + -7.02, + 39.67 + ], + [ + -6.97, + 39.83 + ], + [ + -6.86, + 40.01 + ], + [ + -7.03, + 40.19 + ], + [ + -6.79, + 40.33 + ], + [ + -6.82, + 40.61 + ], + [ + -6.9, + 41.03 + ], + [ + -6.88, + 41.03 + ], + [ + -6.87, + 41.03 + ], + [ + -6.86, + 41.03 + ], + [ + -6.85, + 41.03 + ], + [ + -6.83, + 41.03 + ], + [ + -6.81, + 41.04 + ], + [ + -6.81, + 41.05 + ], + [ + -6.79, + 41.06 + ], + [ + -6.78, + 41.07 + ], + [ + -6.77, + 41.08 + ], + [ + -6.77, + 41.09 + ], + [ + -6.76, + 41.09 + ], + [ + -6.76, + 41.1 + ], + [ + -6.77, + 41.13 + ], + [ + -6.77, + 41.14 + ], + [ + -6.75, + 41.15 + ], + [ + -6.74, + 41.15 + ], + [ + -6.73, + 41.16 + ], + [ + -6.72, + 41.17 + ], + [ + -6.7, + 41.19 + ], + [ + -6.66, + 41.23 + ], + [ + -6.64, + 41.25 + ], + [ + -6.64, + 41.24 + ], + [ + -6.63, + 41.24 + ], + [ + -6.6, + 41.24 + ], + [ + -6.59, + 41.24 + ], + [ + -6.57, + 41.24 + ], + [ + -6.51, + 41.26 + ], + [ + -6.5, + 41.27 + ], + [ + -6.48, + 41.28 + ], + [ + -6.46, + 41.3 + ], + [ + -6.45, + 41.3 + ], + [ + -6.44, + 41.31 + ], + [ + -6.42, + 41.32 + ], + [ + -6.42, + 41.33 + ], + [ + -6.42, + 41.34 + ], + [ + -6.41, + 41.35 + ], + [ + -6.38, + 41.36 + ], + [ + -6.39, + 41.38 + ], + [ + -6.37, + 41.39 + ], + [ + -6.35, + 41.38 + ], + [ + -6.34, + 41.38 + ], + [ + -6.33, + 41.41 + ], + [ + -6.3, + 41.42 + ], + [ + -6.3, + 41.43 + ], + [ + -6.3, + 41.44 + ], + [ + -6.31, + 41.45 + ], + [ + -6.29, + 41.48 + ], + [ + -6.26, + 41.49 + ], + [ + -6.27, + 41.49 + ], + [ + -6.26, + 41.64 + ], + [ + -6.55, + 41.69 + ], + [ + -6.55, + 41.94 + ], + [ + -6.81, + 41.97 + ], + [ + -7.14, + 41.99 + ], + [ + -7.43, + 41.81 + ], + [ + -7.91, + 41.91 + ], + [ + -7.91, + 41.9 + ], + [ + -8.2, + 41.87 + ], + [ + -8.22, + 41.9 + ], + [ + -8.22, + 41.91 + ], + [ + -8.08, + 42.05 + ], + [ + -8.28, + 42.12 + ], + [ + -8.32, + 42.1 + ], + [ + -8.39, + 42.08 + ], + [ + -8.4, + 42.08 + ], + [ + -8.44, + 42.08 + ], + [ + -8.46, + 42.08 + ], + [ + -8.47, + 42.08 + ], + [ + -8.5, + 42.08 + ], + [ + -8.51, + 42.08 + ], + [ + -8.53, + 42.07 + ], + [ + -8.53, + 42.06 + ], + [ + -8.55, + 42.05 + ], + [ + -8.57, + 42.05 + ], + [ + -8.61, + 42.05 + ], + [ + -8.63, + 42.05 + ], + [ + -8.64, + 42.05 + ], + [ + -8.65, + 42.03 + ], + [ + -8.66, + 42.03 + ], + [ + -8.67, + 42 + ], + [ + -8.69, + 41.99 + ], + [ + -8.7, + 41.98 + ], + [ + -8.71, + 41.98 + ], + [ + -8.72, + 41.98 + ], + [ + -8.74, + 41.97 + ], + [ + -8.75, + 41.96 + ], + [ + -8.75, + 41.94 + ], + [ + -8.77, + 41.93 + ], + [ + -8.78, + 41.92 + ], + [ + -8.79, + 41.92 + ], + [ + -8.8, + 41.92 + ], + [ + -8.81, + 41.91 + ], + [ + -8.82, + 41.91 + ], + [ + -8.84, + 41.89 + ], + [ + -8.85, + 41.87 + ], + [ + -8.87, + 41.87 + ], + [ + -8.9, + 42.11 + ], + [ + -8.57, + 42.34 + ], + [ + -8.86, + 42.31 + ], + [ + -8.59, + 42.45 + ], + [ + -8.94, + 42.46 + ], + [ + -8.73, + 42.69 + ], + [ + -9.04, + 42.52 + ], + [ + -8.89, + 42.82 + ], + [ + -9.09, + 42.74 + ], + [ + -9.3, + 43.06 + ], + [ + -8.84, + 43.35 + ], + [ + -8.31, + 43.41 + ], + [ + -8.21, + 43.28 + ], + [ + -8.12, + 43.43 + ], + [ + -8.32, + 43.45 + ], + [ + -8.15, + 43.52 + ], + [ + -8.33, + 43.45 + ], + [ + -8.33, + 43.56 + ], + [ + -7.9, + 43.77 + ], + [ + -7.87, + 43.66 + ], + [ + -7.69, + 43.79 + ], + [ + -7.6, + 43.65 + ], + [ + -7.47, + 43.72 + ], + [ + -7.06, + 43.47 + ], + [ + -6.94, + 43.57 + ], + [ + -5.91, + 43.55 + ], + [ + -5.84, + 43.66 + ], + [ + -4.62, + 43.4 + ], + [ + -3.55, + 43.51 + ], + [ + -3.12, + 43.33 + ], + [ + -2.95, + 43.27 + ], + [ + -3.04, + 43.37 + ], + [ + -2.75, + 43.46 + ], + [ + -2.25, + 43.28 + ], + [ + -1.79, + 43.35 + ] + ] + ], + [ + [ + [ + -17.95, + 27.72 + ], + [ + -18.16, + 27.72 + ], + [ + -17.92, + 27.85 + ], + [ + -17.95, + 27.72 + ] + ] + ], + [ + [ + [ + -17.75, + 28.78 + ], + [ + -17.84, + 28.45 + ], + [ + -18.01, + 28.78 + ], + [ + -17.75, + 28.78 + ] + ] + ], + [ + [ + [ + -17.11, + 28.08 + ], + [ + -17.27, + 28.03 + ], + [ + -17.32, + 28.2 + ], + [ + -17.11, + 28.08 + ] + ] + ], + [ + [ + [ + -16.52, + 28.42 + ], + [ + -16.12, + 28.56 + ], + [ + -16.69, + 28 + ], + [ + -16.92, + 28.35 + ], + [ + -16.52, + 28.42 + ] + ] + ], + [ + [ + [ + -15.82, + 28.01 + ], + [ + -15.71, + 28.17 + ], + [ + -15.42, + 28.18 + ], + [ + -15.36, + 27.93 + ], + [ + -15.6, + 27.73 + ], + [ + -15.82, + 28.01 + ] + ] + ], + [ + [ + [ + -13.88, + 28.89 + ], + [ + -13.42, + 29.21 + ], + [ + -13.49, + 28.99 + ], + [ + -13.88, + 28.89 + ] + ] + ], + [ + [ + [ + -14.22, + 28.22 + ], + [ + -14.02, + 28.72 + ], + [ + -13.87, + 28.75 + ], + [ + -13.93, + 28.24 + ], + [ + -14.51, + 28.07 + ], + [ + -14.22, + 28.22 + ] + ] + ], + [ + [ + [ + 1.38, + 38.64 + ], + [ + 1.4, + 38.74 + ], + [ + 1.58, + 38.67 + ], + [ + 1.38, + 38.64 + ] + ] + ], + [ + [ + [ + 1.45, + 38.91 + ], + [ + 1.37, + 38.83 + ], + [ + 1.21, + 38.96 + ], + [ + 1.54, + 39.12 + ], + [ + 1.45, + 38.91 + ] + ] + ], + [ + [ + [ + 4.28, + 39.81 + ], + [ + 3.79, + 40.02 + ], + [ + 4.17, + 40.06 + ], + [ + 4.28, + 39.81 + ] + ] + ], + [ + [ + [ + 3.23, + 39.74 + ], + [ + 3.48, + 39.72 + ], + [ + 3.07, + 39.27 + ], + [ + 2.67, + 39.56 + ], + [ + 2.52, + 39.46 + ], + [ + 2.35, + 39.56 + ], + [ + 2.95, + 39.92 + ], + [ + 3.21, + 39.96 + ], + [ + 3.08, + 39.89 + ], + [ + 3.23, + 39.74 + ] + ] + ] + ] + }, + "properties": { + "A3": "ESP" + } + }, + { + "type": "Feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + 35.98, + 34.63 + ], + [ + 35.99, + 34.65 + ], + [ + 36.06, + 34.63 + ], + [ + 36.08, + 34.63 + ], + [ + 36.14, + 34.64 + ], + [ + 36.15, + 34.64 + ], + [ + 36.19, + 34.64 + ], + [ + 36.25, + 34.63 + ], + [ + 36.26, + 34.63 + ], + [ + 36.32, + 34.69 + ], + [ + 36.63, + 34.2 + ], + [ + 36.28, + 33.92 + ], + [ + 36.39, + 33.83 + ], + [ + 36.07, + 33.82 + ], + [ + 35.93, + 33.65 + ], + [ + 36.06, + 33.58 + ], + [ + 35.77, + 33.34 + ], + [ + 35.67, + 33.29 + ], + [ + 35.64, + 33.28 + ], + [ + 35.5, + 33.09 + ], + [ + 35.11, + 33.09 + ], + [ + 35.64, + 34 + ], + [ + 35.65, + 34.28 + ], + [ + 35.98, + 34.63 + ] + ] + ] + }, + "properties": { + "A3": "LBN" + } + }, + { + "type": "Feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + -61.39, + 15.32 + ], + [ + -61.46, + 15.64 + ], + [ + -61.24, + 15.47 + ], + [ + -61.26, + 15.25 + ], + [ + -61.39, + 15.32 + ] + ] + ] + }, + "properties": { + "A3": "DMA" + } + }, + { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + 43.45, + -11.79 + ], + [ + 43.47, + -11.94 + ], + [ + 43.24, + -11.78 + ], + [ + 43.34, + -11.37 + ], + [ + 43.45, + -11.79 + ] + ] + ], + [ + [ + [ + 44.2, + -12.17 + ], + [ + 44.47, + -12.07 + ], + [ + 44.53, + -12.38 + ], + [ + 44.2, + -12.17 + ] + ] + ] + ] + }, + "properties": { + "A3": "COM" + } + }, + { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + -179.91, + 65.38 + ], + [ + -180, + 65.36 + ], + [ + -180, + 65.38 + ], + [ + -180, + 65.39 + ], + [ + -180, + 65.41 + ], + [ + -180, + 65.43 + ], + [ + -180, + 65.44 + ], + [ + -180, + 65.45 + ], + [ + -180, + 65.48 + ], + [ + -180, + 65.8 + ], + [ + -180, + 65.86 + ], + [ + -180, + 65.87 + ], + [ + -180, + 66.64 + ], + [ + -180, + 66.89 + ], + [ + -180, + 66.91 + ], + [ + -180, + 66.93 + ], + [ + -180, + 67.17 + ], + [ + -180, + 67.55 + ], + [ + -180, + 67.93 + ], + [ + -180, + 68.36 + ], + [ + -180, + 68.51 + ], + [ + -180, + 68.55 + ], + [ + -180, + 68.92 + ], + [ + -180, + 68.93 + ], + [ + -180, + 68.96 + ], + [ + -180, + 68.97 + ], + [ + -180, + 68.98 + ], + [ + -178.83, + 68.75 + ], + [ + -178.71, + 68.54 + ], + [ + -178, + 68.42 + ], + [ + -178.07, + 68.24 + ], + [ + -177.63, + 68.31 + ], + [ + -177.76, + 68.17 + ], + [ + -177.66, + 68.15 + ], + [ + -177.6, + 68.09 + ], + [ + -177.6, + 68.07 + ], + [ + -177.6, + 68.09 + ], + [ + -177.66, + 68.15 + ], + [ + -177.34, + 68.24 + ], + [ + -176.41, + 67.97 + ], + [ + -176.96, + 67.97 + ], + [ + -175.94, + 67.85 + ], + [ + -176.51, + 67.67 + ], + [ + -175.89, + 67.64 + ], + [ + -175.77, + 67.8 + ], + [ + -175.26, + 67.66 + ], + [ + -175.32, + 67.3 + ], + [ + -174.97, + 67.44 + ], + [ + -174.78, + 67.35 + ], + [ + -174.7, + 66.76 + ], + [ + -175, + 66.66 + ], + [ + -174.44, + 66.53 + ], + [ + -174.41, + 66.28 + ], + [ + -174, + 66.47 + ], + [ + -173.94, + 66.2 + ], + [ + -173.69, + 66.43 + ], + [ + -174.22, + 66.57 + ], + [ + -174.26, + 66.5 + ], + [ + -174.26, + 66.57 + ], + [ + -173.87, + 66.67 + ], + [ + -174, + 66.98 + ], + [ + -174.62, + 67.06 + ], + [ + -173.64, + 67.11 + ], + [ + -172.79, + 66.89 + ], + [ + -172.38, + 66.95 + ], + [ + -173.01, + 67.04 + ], + [ + -171.67, + 66.94 + ], + [ + -170.37, + 66.31 + ], + [ + -170.61, + 66.21 + ], + [ + -170.28, + 66.3 + ], + [ + -170.24, + 66.16 + ], + [ + -169.67, + 66.13 + ], + [ + -170.59, + 65.85 + ], + [ + -170.58, + 65.6 + ], + [ + -171.46, + 65.84 + ], + [ + -171.05, + 65.47 + ], + [ + -172.07, + 65.48 + ], + [ + -171.71, + 65.51 + ], + [ + -172.77, + 65.68 + ], + [ + -172.15, + 65.42 + ], + [ + -172.2, + 65.24 + ], + [ + -172.69, + 65.21 + ], + [ + -172.71, + 65.21 + ], + [ + -172.69, + 65.21 + ], + [ + -172.22, + 65.21 + ], + [ + -172.1, + 65.06 + ], + [ + -172.39, + 64.92 + ], + [ + -172.76, + 64.83 + ], + [ + -172.99, + 64.86 + ], + [ + -173.18, + 64.75 + ], + [ + -172.91, + 64.84 + ], + [ + -172.74, + 64.76 + ], + [ + -172.98, + 64.57 + ], + [ + -172.32, + 64.45 + ], + [ + -172.59, + 64.37 + ], + [ + -172.96, + 64.49 + ], + [ + -172.84, + 64.3 + ], + [ + -172.92, + 64.4 + ], + [ + -173.11, + 64.24 + ], + [ + -173.37, + 64.3 + ], + [ + -173.34, + 64.6 + ], + [ + -173.65, + 64.33 + ], + [ + -174.64, + 64.71 + ], + [ + -174.68, + 64.92 + ], + [ + -174.73, + 64.81 + ], + [ + -175.43, + 64.77 + ], + [ + -175.89, + 65 + ], + [ + -175.92, + 65.41 + ], + [ + -176.53, + 65.55 + ], + [ + -176.95, + 65.6 + ], + [ + -177.16, + 65.58 + ], + [ + -176.92, + 65.67 + ], + [ + -177.19, + 65.57 + ], + [ + -177.32, + 65.49 + ], + [ + -177.43, + 65.47 + ], + [ + -178.26, + 65.45 + ], + [ + -178.53, + 65.49 + ], + [ + -178.4, + 65.7 + ], + [ + -178.92, + 66.04 + ], + [ + -178.51, + 66.1 + ], + [ + -178.48, + 66.39 + ], + [ + -178.84, + 66.16 + ], + [ + -179.07, + 66.37 + ], + [ + -179.39, + 66.32 + ], + [ + -179.28, + 66.13 + ], + [ + -179.79, + 66.09 + ], + [ + -179.36, + 65.48 + ], + [ + -179.43, + 65.57 + ], + [ + -179.47, + 65.42 + ], + [ + -180, + 65.04 + ], + [ + -180, + 65.24 + ], + [ + -180, + 65.31 + ], + [ + -180, + 65.32 + ], + [ + -179.91, + 65.38 + ] + ], + [ + [ + -173.31, + 66.98 + ], + [ + -173.31, + 66.81 + ], + [ + -173.07, + 66.84 + ], + [ + -173.31, + 66.98 + ] + ] + ], + [ + [ + [ + -180, + 70.98 + ], + [ + -180, + 71.03 + ], + [ + -180, + 71.53 + ], + [ + -179.68, + 71.57 + ], + [ + -178.28, + 71.52 + ], + [ + -177.43, + 71.22 + ], + [ + -177.92, + 71.02 + ], + [ + -179.24, + 70.88 + ], + [ + -180, + 70.98 + ] + ] + ], + [ + [ + [ + 20.95, + 55.28 + ], + [ + 20.98, + 55.28 + ], + [ + 20.51, + 54.95 + ], + [ + 21.21, + 54.92 + ], + [ + 21.27, + 55.25 + ], + [ + 21.29, + 55.25 + ], + [ + 21.31, + 55.26 + ], + [ + 21.32, + 55.27 + ], + [ + 21.33, + 55.27 + ], + [ + 21.34, + 55.28 + ], + [ + 21.37, + 55.29 + ], + [ + 21.39, + 55.29 + ], + [ + 21.4, + 55.28 + ], + [ + 21.41, + 55.27 + ], + [ + 21.42, + 55.26 + ], + [ + 21.43, + 55.25 + ], + [ + 21.44, + 55.24 + ], + [ + 21.45, + 55.23 + ], + [ + 21.48, + 55.21 + ], + [ + 21.48, + 55.2 + ], + [ + 21.51, + 55.19 + ], + [ + 21.52, + 55.19 + ], + [ + 21.53, + 55.19 + ], + [ + 21.54, + 55.2 + ], + [ + 21.56, + 55.2 + ], + [ + 21.6, + 55.19 + ], + [ + 21.61, + 55.19 + ], + [ + 21.64, + 55.18 + ], + [ + 21.65, + 55.18 + ], + [ + 21.66, + 55.17 + ], + [ + 21.67, + 55.17 + ], + [ + 21.68, + 55.17 + ], + [ + 21.69, + 55.16 + ], + [ + 21.7, + 55.16 + ], + [ + 21.7, + 55.15 + ], + [ + 21.72, + 55.14 + ], + [ + 21.72, + 55.13 + ], + [ + 21.73, + 55.13 + ], + [ + 21.74, + 55.13 + ], + [ + 21.76, + 55.12 + ], + [ + 21.79, + 55.12 + ], + [ + 21.8, + 55.12 + ], + [ + 21.81, + 55.12 + ], + [ + 21.82, + 55.12 + ], + [ + 21.83, + 55.11 + ], + [ + 21.86, + 55.1 + ], + [ + 21.88, + 55.09 + ], + [ + 21.89, + 55.09 + ], + [ + 21.92, + 55.08 + ], + [ + 21.94, + 55.08 + ], + [ + 21.96, + 55.08 + ], + [ + 21.96, + 55.07 + ], + [ + 21.97, + 55.07 + ], + [ + 21.98, + 55.08 + ], + [ + 22.01, + 55.09 + ], + [ + 22.02, + 55.09 + ], + [ + 22.04, + 55.07 + ], + [ + 22.03, + 55.06 + ], + [ + 22.03, + 55.05 + ], + [ + 22.04, + 55.04 + ], + [ + 22.05, + 55.03 + ], + [ + 22.06, + 55.03 + ], + [ + 22.08, + 55.02 + ], + [ + 22.1, + 55.02 + ], + [ + 22.11, + 55.03 + ], + [ + 22.13, + 55.04 + ], + [ + 22.16, + 55.06 + ], + [ + 22.19, + 55.05 + ], + [ + 22.21, + 55.06 + ], + [ + 22.22, + 55.06 + ], + [ + 22.25, + 55.06 + ], + [ + 22.27, + 55.06 + ], + [ + 22.29, + 55.06 + ], + [ + 22.31, + 55.06 + ], + [ + 22.32, + 55.06 + ], + [ + 22.33, + 55.06 + ], + [ + 22.35, + 55.06 + ], + [ + 22.39, + 55.05 + ], + [ + 22.4, + 55.05 + ], + [ + 22.42, + 55.05 + ], + [ + 22.43, + 55.05 + ], + [ + 22.44, + 55.05 + ], + [ + 22.47, + 55.04 + ], + [ + 22.48, + 55.05 + ], + [ + 22.49, + 55.05 + ], + [ + 22.51, + 55.05 + ], + [ + 22.52, + 55.06 + ], + [ + 22.54, + 55.06 + ], + [ + 22.55, + 55.07 + ], + [ + 22.57, + 55.07 + ], + [ + 22.63, + 54.99 + ], + [ + 22.64, + 54.99 + ], + [ + 22.65, + 54.97 + ], + [ + 22.65, + 54.96 + ], + [ + 22.66, + 54.97 + ], + [ + 22.67, + 54.99 + ], + [ + 22.68, + 54.99 + ], + [ + 22.72, + 54.97 + ], + [ + 22.72, + 54.96 + ], + [ + 22.74, + 54.94 + ], + [ + 22.76, + 54.94 + ], + [ + 22.76, + 54.92 + ], + [ + 22.79, + 54.92 + ], + [ + 22.79, + 54.91 + ], + [ + 22.85, + 54.89 + ], + [ + 22.87, + 54.85 + ], + [ + 22.88, + 54.79 + ], + [ + 22.87, + 54.79 + ], + [ + 22.85, + 54.79 + ], + [ + 22.85, + 54.78 + ], + [ + 22.85, + 54.77 + ], + [ + 22.71, + 54.45 + ], + [ + 22.74, + 54.39 + ], + [ + 22.77, + 54.39 + ], + [ + 22.78, + 54.37 + ], + [ + 22.79, + 54.37 + ], + [ + 22.79, + 54.36 + ], + [ + 22.33, + 54.34 + ], + [ + 22.32, + 54.34 + ], + [ + 22.24, + 54.34 + ], + [ + 22.19, + 54.34 + ], + [ + 22.06, + 54.34 + ], + [ + 19.8, + 54.44 + ], + [ + 20.42, + 54.67 + ], + [ + 19.87, + 54.65 + ], + [ + 19.98, + 54.96 + ], + [ + 20.5, + 54.97 + ], + [ + 20.95, + 55.28 + ] + ] + ], + [ + [ + [ + 22.75, + 54.42 + ], + [ + 22.76, + 54.39 + ], + [ + 22.74, + 54.39 + ], + [ + 22.75, + 54.42 + ] + ] + ], + [ + [ + [ + 19.65, + 54.45 + ], + [ + 19.64, + 54.46 + ], + [ + 19.87, + 54.65 + ], + [ + 19.65, + 54.45 + ] + ] + ], + [ + [ + [ + 27.79, + 60.54 + ], + [ + 27.84, + 60.57 + ], + [ + 27.99, + 60.67 + ], + [ + 28.06, + 60.7 + ], + [ + 28.06, + 60.71 + ], + [ + 28.08, + 60.71 + ], + [ + 28.08, + 60.72 + ], + [ + 28.13, + 60.74 + ], + [ + 28.14, + 60.74 + ], + [ + 28.17, + 60.78 + ], + [ + 28.18, + 60.78 + ], + [ + 28.28, + 60.82 + ], + [ + 28.32, + 60.86 + ], + [ + 28.34, + 60.86 + ], + [ + 28.52, + 60.95 + ], + [ + 28.52, + 60.96 + ], + [ + 28.55, + 60.96 + ], + [ + 28.59, + 60.95 + ], + [ + 28.61, + 60.95 + ], + [ + 28.62, + 60.95 + ], + [ + 28.71, + 61.02 + ], + [ + 28.71, + 61.04 + ], + [ + 28.81, + 61.11 + ], + [ + 28.82, + 61.12 + ], + [ + 28.83, + 61.12 + ], + [ + 28.87, + 61.14 + ], + [ + 28.9, + 61.14 + ], + [ + 29.13, + 61.23 + ], + [ + 29.14, + 61.23 + ], + [ + 29.31, + 61.33 + ], + [ + 29.52, + 61.49 + ], + [ + 29.55, + 61.49 + ], + [ + 29.65, + 61.52 + ], + [ + 29.64, + 61.52 + ], + [ + 29.7, + 61.56 + ], + [ + 29.73, + 61.57 + ], + [ + 29.75, + 61.59 + ], + [ + 29.75, + 61.6 + ], + [ + 29.79, + 61.62 + ], + [ + 29.8, + 61.63 + ], + [ + 29.84, + 61.67 + ], + [ + 29.86, + 61.67 + ], + [ + 29.88, + 61.69 + ], + [ + 29.93, + 61.71 + ], + [ + 29.94, + 61.72 + ], + [ + 29.97, + 61.73 + ], + [ + 30.03, + 61.76 + ], + [ + 30.16, + 61.86 + ], + [ + 30.31, + 61.94 + ], + [ + 30.31, + 61.95 + ], + [ + 30.45, + 62.04 + ], + [ + 30.54, + 62.1 + ], + [ + 30.63, + 62.18 + ], + [ + 30.65, + 62.21 + ], + [ + 30.66, + 62.21 + ], + [ + 30.67, + 62.21 + ], + [ + 30.68, + 62.21 + ], + [ + 30.74, + 62.23 + ], + [ + 30.75, + 62.23 + ], + [ + 30.89, + 62.3 + ], + [ + 30.91, + 62.31 + ], + [ + 30.94, + 62.31 + ], + [ + 30.96, + 62.32 + ], + [ + 31.15, + 62.45 + ], + [ + 31.21, + 62.5 + ], + [ + 31.25, + 62.52 + ], + [ + 31.25, + 62.53 + ], + [ + 31.38, + 62.67 + ], + [ + 31.38, + 62.69 + ], + [ + 31.44, + 62.78 + ], + [ + 31.44, + 62.79 + ], + [ + 31.58, + 62.91 + ], + [ + 31.59, + 62.91 + ], + [ + 31.58, + 62.92 + ], + [ + 31.57, + 62.92 + ], + [ + 31.52, + 62.98 + ], + [ + 31.49, + 63 + ], + [ + 31.45, + 63.01 + ], + [ + 31.44, + 63.04 + ], + [ + 31.43, + 63.04 + ], + [ + 31.41, + 63.04 + ], + [ + 31.38, + 63.05 + ], + [ + 31.38, + 63.06 + ], + [ + 31.37, + 63.07 + ], + [ + 31.36, + 63.07 + ], + [ + 31.31, + 63.09 + ], + [ + 31.29, + 63.1 + ], + [ + 31.26, + 63.13 + ], + [ + 31.26, + 63.14 + ], + [ + 31.26, + 63.15 + ], + [ + 31.26, + 63.16 + ], + [ + 31.25, + 63.17 + ], + [ + 31.25, + 63.18 + ], + [ + 31.24, + 63.19 + ], + [ + 31.24, + 63.21 + ], + [ + 31.21, + 63.23 + ], + [ + 31.16, + 63.25 + ], + [ + 31.15, + 63.26 + ], + [ + 31.12, + 63.27 + ], + [ + 31.1, + 63.27 + ], + [ + 31.09, + 63.28 + ], + [ + 31, + 63.3 + ], + [ + 30.99, + 63.3 + ], + [ + 30.99, + 63.31 + ], + [ + 30.98, + 63.31 + ], + [ + 30.94, + 63.34 + ], + [ + 30.93, + 63.36 + ], + [ + 30.84, + 63.37 + ], + [ + 30.84, + 63.38 + ], + [ + 30.83, + 63.38 + ], + [ + 30.81, + 63.39 + ], + [ + 30.79, + 63.41 + ], + [ + 30.45, + 63.49 + ], + [ + 30.42, + 63.52 + ], + [ + 30.38, + 63.55 + ], + [ + 30.39, + 63.55 + ], + [ + 30.38, + 63.55 + ], + [ + 30.37, + 63.55 + ], + [ + 30.35, + 63.56 + ], + [ + 30.34, + 63.56 + ], + [ + 30.3, + 63.57 + ], + [ + 30.27, + 63.58 + ], + [ + 30.25, + 63.59 + ], + [ + 30.21, + 63.63 + ], + [ + 30.12, + 63.67 + ], + [ + 30.11, + 63.68 + ], + [ + 30.1, + 63.68 + ], + [ + 30.09, + 63.69 + ], + [ + 30.07, + 63.7 + ], + [ + 30.06, + 63.71 + ], + [ + 30.02, + 63.73 + ], + [ + 29.99, + 63.76 + ], + [ + 30, + 63.76 + ], + [ + 30.36, + 63.94 + ], + [ + 30.37, + 63.94 + ], + [ + 30.54, + 64.07 + ], + [ + 30.54, + 64.08 + ], + [ + 30.55, + 64.09 + ], + [ + 30.45, + 64.26 + ], + [ + 30.44, + 64.27 + ], + [ + 30.37, + 64.28 + ], + [ + 30.32, + 64.31 + ], + [ + 30.15, + 64.36 + ], + [ + 30.26, + 64.55 + ], + [ + 30.14, + 64.36 + ], + [ + 30.06, + 64.39 + ], + [ + 30.05, + 64.42 + ], + [ + 30.06, + 64.45 + ], + [ + 30.05, + 64.46 + ], + [ + 29.99, + 64.55 + ], + [ + 30, + 64.58 + ], + [ + 29.99, + 64.59 + ], + [ + 30.02, + 64.6 + ], + [ + 30.09, + 64.62 + ], + [ + 30.11, + 64.62 + ], + [ + 30.12, + 64.63 + ], + [ + 30.13, + 64.64 + ], + [ + 30.13, + 64.65 + ], + [ + 30.1, + 64.68 + ], + [ + 30.09, + 64.68 + ], + [ + 30.06, + 64.71 + ], + [ + 30.06, + 64.73 + ], + [ + 30.05, + 64.72 + ], + [ + 30.09, + 64.76 + ], + [ + 30.07, + 64.78 + ], + [ + 30.06, + 64.79 + ], + [ + 30.04, + 64.79 + ], + [ + 30.03, + 64.79 + ], + [ + 30, + 64.79 + ], + [ + 29.99, + 64.79 + ], + [ + 29.87, + 64.79 + ], + [ + 29.76, + 64.79 + ], + [ + 29.74, + 64.79 + ], + [ + 29.71, + 64.81 + ], + [ + 29.7, + 64.81 + ], + [ + 29.69, + 64.82 + ], + [ + 29.67, + 64.86 + ], + [ + 29.66, + 64.86 + ], + [ + 29.61, + 64.92 + ], + [ + 29.61, + 64.93 + ], + [ + 29.62, + 64.95 + ], + [ + 29.62, + 64.96 + ], + [ + 29.61, + 64.97 + ], + [ + 29.6, + 65 + ], + [ + 29.61, + 65.01 + ], + [ + 29.62, + 65.02 + ], + [ + 29.62, + 65.04 + ], + [ + 29.62, + 65.05 + ], + [ + 29.63, + 65.06 + ], + [ + 29.65, + 65.07 + ], + [ + 29.68, + 65.08 + ], + [ + 29.74, + 65.09 + ], + [ + 29.9, + 65.11 + ], + [ + 29.87, + 65.12 + ], + [ + 29.85, + 65.13 + ], + [ + 29.86, + 65.13 + ], + [ + 29.82, + 65.15 + ], + [ + 29.84, + 65.15 + ], + [ + 29.85, + 65.22 + ], + [ + 29.84, + 65.22 + ], + [ + 29.61, + 65.26 + ], + [ + 29.6, + 65.26 + ], + [ + 29.73, + 65.44 + ], + [ + 29.75, + 65.49 + ], + [ + 29.76, + 65.5 + ], + [ + 29.84, + 65.55 + ], + [ + 29.75, + 65.61 + ], + [ + 29.74, + 65.62 + ], + [ + 29.79, + 65.65 + ], + [ + 29.84, + 65.66 + ], + [ + 29.89, + 65.67 + ], + [ + 29.92, + 65.68 + ], + [ + 30, + 65.69 + ], + [ + 30.03, + 65.69 + ], + [ + 30.06, + 65.68 + ], + [ + 30.07, + 65.68 + ], + [ + 30.13, + 65.71 + ], + [ + 30.12, + 65.74 + ], + [ + 30.12, + 65.75 + ], + [ + 30.1, + 65.8 + ], + [ + 30.1, + 65.82 + ], + [ + 30.07, + 65.89 + ], + [ + 30.07, + 65.9 + ], + [ + 30.06, + 65.91 + ], + [ + 30.05, + 65.92 + ], + [ + 30.05, + 65.93 + ], + [ + 30.02, + 65.96 + ], + [ + 30.01, + 65.97 + ], + [ + 29.98, + 66.04 + ], + [ + 29.97, + 66.04 + ], + [ + 29.97, + 66.05 + ], + [ + 29.85, + 66.18 + ], + [ + 29.82, + 66.2 + ], + [ + 29.71, + 66.27 + ], + [ + 29.7, + 66.28 + ], + [ + 29.49, + 66.53 + ], + [ + 29.4, + 66.6 + ], + [ + 29.39, + 66.6 + ], + [ + 29.38, + 66.61 + ], + [ + 29.37, + 66.62 + ], + [ + 29.13, + 66.79 + ], + [ + 29.11, + 66.81 + ], + [ + 29.45, + 67.24 + ], + [ + 29.48, + 67.26 + ], + [ + 30.02, + 67.67 + ], + [ + 29.33, + 68.07 + ], + [ + 28.65, + 68.2 + ], + [ + 28.48, + 68.47 + ], + [ + 28.47, + 68.48 + ], + [ + 28.53, + 68.61 + ], + [ + 28.56, + 68.59 + ], + [ + 28.53, + 68.61 + ], + [ + 28.68, + 68.72 + ], + [ + 28.7, + 68.72 + ], + [ + 28.74, + 68.78 + ], + [ + 28.74, + 68.79 + ], + [ + 28.79, + 68.85 + ], + [ + 28.66, + 68.89 + ], + [ + 28.65, + 68.89 + ], + [ + 28.52, + 68.89 + ], + [ + 28.82, + 69.02 + ], + [ + 28.83, + 69.02 + ], + [ + 28.93, + 69.05 + ], + [ + 29.02, + 69.02 + ], + [ + 29.03, + 69.02 + ], + [ + 29.07, + 69.02 + ], + [ + 29.09, + 69.03 + ], + [ + 29.1, + 69.04 + ], + [ + 29.11, + 69.05 + ], + [ + 29.13, + 69.06 + ], + [ + 29.14, + 69.06 + ], + [ + 29.15, + 69.06 + ], + [ + 29.16, + 69.07 + ], + [ + 29.17, + 69.07 + ], + [ + 29.18, + 69.08 + ], + [ + 29.24, + 69.12 + ], + [ + 29.23, + 69.12 + ], + [ + 29.24, + 69.13 + ], + [ + 29.24, + 69.14 + ], + [ + 29.3, + 69.21 + ], + [ + 29.35, + 69.31 + ], + [ + 29.36, + 69.31 + ], + [ + 29.37, + 69.32 + ], + [ + 29.38, + 69.32 + ], + [ + 29.48, + 69.32 + ], + [ + 29.49, + 69.32 + ], + [ + 29.52, + 69.33 + ], + [ + 29.54, + 69.32 + ], + [ + 29.68, + 69.36 + ], + [ + 29.71, + 69.38 + ], + [ + 29.72, + 69.39 + ], + [ + 29.73, + 69.39 + ], + [ + 29.75, + 69.39 + ], + [ + 29.76, + 69.39 + ], + [ + 29.79, + 69.4 + ], + [ + 29.86, + 69.42 + ], + [ + 29.88, + 69.42 + ], + [ + 29.92, + 69.42 + ], + [ + 29.93, + 69.42 + ], + [ + 29.94, + 69.41 + ], + [ + 30.07, + 69.45 + ], + [ + 30.1, + 69.46 + ], + [ + 30.11, + 69.48 + ], + [ + 30.12, + 69.5 + ], + [ + 30.13, + 69.52 + ], + [ + 30.15, + 69.53 + ], + [ + 30.16, + 69.6 + ], + [ + 30.15, + 69.61 + ], + [ + 30.15, + 69.63 + ], + [ + 30.14, + 69.64 + ], + [ + 30.13, + 69.67 + ], + [ + 30.14, + 69.67 + ], + [ + 30.18, + 69.66 + ], + [ + 30.21, + 69.66 + ], + [ + 30.23, + 69.65 + ], + [ + 30.24, + 69.65 + ], + [ + 30.36, + 69.61 + ], + [ + 30.37, + 69.61 + ], + [ + 30.5, + 69.55 + ], + [ + 30.76, + 69.53 + ], + [ + 30.87, + 69.54 + ], + [ + 30.9, + 69.55 + ], + [ + 30.94, + 69.56 + ], + [ + 30.95, + 69.58 + ], + [ + 30.94, + 69.58 + ], + [ + 30.84, + 69.78 + ], + [ + 31.42, + 69.71 + ], + [ + 31.27, + 69.57 + ], + [ + 31.82, + 69.65 + ], + [ + 31.78, + 69.83 + ], + [ + 32.09, + 69.76 + ], + [ + 31.94, + 69.95 + ], + [ + 33.09, + 69.74 + ], + [ + 32.83, + 69.57 + ], + [ + 32.12, + 69.74 + ], + [ + 31.95, + 69.63 + ], + [ + 32.44, + 69.55 + ], + [ + 32.28, + 69.42 + ], + [ + 33.07, + 69.45 + ], + [ + 32.88, + 69.28 + ], + [ + 33.5, + 69.4 + ], + [ + 33.21, + 69.25 + ], + [ + 33.48, + 69.16 + ], + [ + 32.97, + 69.03 + ], + [ + 33.02, + 68.88 + ], + [ + 33.07, + 69.05 + ], + [ + 33.63, + 69.12 + ], + [ + 33.58, + 69.3 + ], + [ + 35.16, + 69.16 + ], + [ + 35.25, + 69.25 + ], + [ + 36.28, + 69.1 + ], + [ + 38.44, + 68.29 + ], + [ + 38.78, + 68.24 + ], + [ + 38.65, + 68.37 + ], + [ + 39.7, + 67.99 + ], + [ + 39.74, + 68.16 + ], + [ + 40.48, + 67.72 + ], + [ + 40.96, + 67.71 + ], + [ + 41.39, + 67.11 + ], + [ + 41.21, + 66.82 + ], + [ + 40, + 66.25 + ], + [ + 38.28, + 66.06 + ], + [ + 35.55, + 66.38 + ], + [ + 34.81, + 66.61 + ], + [ + 34.46, + 66.54 + ], + [ + 34.15, + 66.79 + ], + [ + 33.95, + 66.68 + ], + [ + 33.61, + 66.85 + ], + [ + 33.63, + 66.71 + ], + [ + 33.17, + 66.82 + ], + [ + 32.79, + 67.02 + ], + [ + 33, + 67.08 + ], + [ + 32.32, + 67.17 + ], + [ + 31.87, + 67.14 + ], + [ + 32.25, + 67.12 + ], + [ + 32.54, + 67 + ], + [ + 32.45, + 66.91 + ], + [ + 33.32, + 66.64 + ], + [ + 32.93, + 66.52 + ], + [ + 33.72, + 66.42 + ], + [ + 32.98, + 66.25 + ], + [ + 34.11, + 66.23 + ], + [ + 35.02, + 65.76 + ], + [ + 34.93, + 65.67 + ], + [ + 34.66, + 65.79 + ], + [ + 34.69, + 65.44 + ], + [ + 34.27, + 65.37 + ], + [ + 34.83, + 65.02 + ], + [ + 34.76, + 64.74 + ], + [ + 35, + 64.62 + ], + [ + 34.69, + 64.51 + ], + [ + 35.4, + 64.28 + ], + [ + 35.83, + 64.32 + ], + [ + 36.3, + 63.97 + ], + [ + 37.44, + 63.78 + ], + [ + 37.98, + 63.93 + ], + [ + 38.28, + 63.83 + ], + [ + 37.79, + 64.44 + ], + [ + 37.23, + 64.36 + ], + [ + 36.53, + 64.72 + ], + [ + 36.44, + 64.92 + ], + [ + 36.81, + 64.96 + ], + [ + 36.85, + 65.15 + ], + [ + 38.37, + 64.84 + ], + [ + 38.01, + 64.58 + ], + [ + 38.43, + 64.81 + ], + [ + 39.55, + 64.54 + ], + [ + 39.84, + 64.66 + ], + [ + 40.85, + 64.4 + ], + [ + 40.85, + 64.44 + ], + [ + 40.98, + 64.43 + ], + [ + 40.69, + 64.49 + ], + [ + 39.75, + 65.55 + ], + [ + 40.75, + 65.99 + ], + [ + 41.79, + 66.26 + ], + [ + 41.84, + 66.16 + ], + [ + 42.14, + 66.5 + ], + [ + 42.59, + 66.44 + ], + [ + 42.45, + 66.34 + ], + [ + 43.22, + 66.41 + ], + [ + 43.6, + 66.29 + ], + [ + 43.33, + 66.05 + ], + [ + 43.47, + 65.89 + ], + [ + 43.4, + 66.1 + ], + [ + 43.84, + 66.19 + ], + [ + 44.25, + 65.69 + ], + [ + 44.65, + 65.59 + ], + [ + 44.09, + 65.99 + ], + [ + 44.55, + 66.91 + ], + [ + 43.77, + 67.24 + ], + [ + 44.34, + 67.9 + ], + [ + 44.21, + 68.29 + ], + [ + 43.29, + 68.66 + ], + [ + 44.06, + 68.53 + ], + [ + 45.28, + 68.54 + ], + [ + 45.54, + 68.52 + ], + [ + 46.03, + 68.43 + ], + [ + 45.8, + 68.47 + ], + [ + 46.03, + 68.34 + ], + [ + 46, + 68.31 + ], + [ + 46.54, + 68.12 + ], + [ + 46.69, + 67.81 + ], + [ + 45.36, + 67.71 + ], + [ + 44.91, + 67.33 + ], + [ + 45.57, + 67.16 + ], + [ + 45.73, + 66.89 + ], + [ + 46.52, + 66.79 + ], + [ + 47.61, + 66.86 + ], + [ + 47.99, + 67.64 + ], + [ + 49.08, + 67.59 + ], + [ + 48.76, + 67.84 + ], + [ + 50.06, + 68.1 + ], + [ + 49.83, + 67.99 + ], + [ + 50.19, + 68 + ], + [ + 50.06, + 68.09 + ], + [ + 50.81, + 68.37 + ], + [ + 52.24, + 68.58 + ], + [ + 51.99, + 68.51 + ], + [ + 52.38, + 68.47 + ], + [ + 52.36, + 68.31 + ], + [ + 52.76, + 68.48 + ], + [ + 52.65, + 68.63 + ], + [ + 52.33, + 68.61 + ], + [ + 53.06, + 68.81 + ], + [ + 53.22, + 68.72 + ], + [ + 53.09, + 68.81 + ], + [ + 53.56, + 68.92 + ], + [ + 54.54, + 68.99 + ], + [ + 53.57, + 68.89 + ], + [ + 54, + 68.83 + ], + [ + 53.92, + 68.4 + ], + [ + 53.32, + 68.35 + ], + [ + 53.17, + 68.17 + ], + [ + 54.01, + 68.2 + ], + [ + 54.23, + 68.31 + ], + [ + 53.99, + 68.02 + ], + [ + 53.17, + 67.83 + ], + [ + 53.13, + 67.79 + ], + [ + 53.17, + 67.83 + ], + [ + 53.15, + 67.71 + ], + [ + 53.75, + 67.89 + ], + [ + 53.79, + 67.91 + ], + [ + 54.18, + 68.11 + ], + [ + 54.49, + 68.29 + ], + [ + 54.87, + 68.14 + ], + [ + 55.39, + 68.55 + ], + [ + 56.01, + 68.64 + ], + [ + 57.3, + 68.53 + ], + [ + 59.05, + 68.98 + ], + [ + 59.48, + 68.68 + ], + [ + 59.09, + 68.65 + ], + [ + 59.12, + 68.41 + ], + [ + 59.68, + 68.29 + ], + [ + 59.95, + 68.71 + ], + [ + 61.14, + 68.83 + ], + [ + 61.01, + 69.06 + ], + [ + 60.78, + 69.16 + ], + [ + 60.19, + 69.56 + ], + [ + 60.73, + 69.66 + ], + [ + 60.74, + 69.66 + ], + [ + 60.73, + 69.66 + ], + [ + 61.1, + 69.86 + ], + [ + 64.14, + 69.53 + ], + [ + 64.92, + 69.31 + ], + [ + 64.71, + 69.08 + ], + [ + 65.1, + 69.26 + ], + [ + 67.15, + 68.82 + ], + [ + 68.2, + 68.37 + ], + [ + 68.27, + 68.15 + ], + [ + 69.21, + 68.93 + ], + [ + 68.48, + 68.97 + ], + [ + 68.13, + 69.54 + ], + [ + 67.03, + 69.69 + ], + [ + 66.83, + 69.57 + ], + [ + 66.95, + 70.02 + ], + [ + 67.38, + 70.01 + ], + [ + 67.13, + 70.22 + ], + [ + 67.53, + 70.7 + ], + [ + 67.25, + 70.83 + ], + [ + 66.69, + 70.75 + ], + [ + 66.75, + 71.1 + ], + [ + 68.42, + 71.67 + ], + [ + 69.4, + 72.94 + ], + [ + 71, + 72.8 + ], + [ + 71.62, + 72.89 + ], + [ + 72.01, + 72.82 + ], + [ + 71.75, + 72.72 + ], + [ + 72.06, + 72.82 + ], + [ + 72.84, + 72.69 + ], + [ + 72.83, + 72.25 + ], + [ + 71.82, + 71.48 + ], + [ + 72.8, + 70.84 + ], + [ + 72.74, + 70.4 + ], + [ + 72.35, + 70.24 + ], + [ + 72.52, + 69 + ], + [ + 73.59, + 68.42 + ], + [ + 73.07, + 68.2 + ], + [ + 73.11, + 67.69 + ], + [ + 72.53, + 67.59 + ], + [ + 71.75, + 66.9 + ], + [ + 71.39, + 66.97 + ], + [ + 70.19, + 66.73 + ], + [ + 69.02, + 66.94 + ], + [ + 68.33, + 66.78 + ], + [ + 68.61, + 66.75 + ], + [ + 68.36, + 66.72 + ], + [ + 68.48, + 66.68 + ], + [ + 68.09, + 66.71 + ], + [ + 68.31, + 66.65 + ], + [ + 68.59, + 66.69 + ], + [ + 68.16, + 66.52 + ], + [ + 67.47, + 66.69 + ], + [ + 67.05, + 66.65 + ], + [ + 67.18, + 66.57 + ], + [ + 66.71, + 66.66 + ], + [ + 66.35, + 66.63 + ], + [ + 66.25, + 66.36 + ], + [ + 65.55, + 66.12 + ], + [ + 65.46, + 65.91 + ], + [ + 65.15, + 65.87 + ], + [ + 65.43, + 65.88 + ], + [ + 65.35, + 65.72 + ], + [ + 65.86, + 66.1 + ], + [ + 65.21, + 65.05 + ], + [ + 65.69, + 64.98 + ], + [ + 65.49, + 64.73 + ], + [ + 65.76, + 64.49 + ], + [ + 65.76, + 64.32 + ], + [ + 65.96, + 64.35 + ], + [ + 65.59, + 64.69 + ], + [ + 65.72, + 65 + ], + [ + 65.27, + 65.08 + ], + [ + 65.68, + 65.47 + ], + [ + 66.03, + 65.39 + ], + [ + 65.68, + 65.48 + ], + [ + 65.8, + 65.75 + ], + [ + 66.38, + 65.77 + ], + [ + 65.87, + 65.78 + ], + [ + 66.03, + 65.99 + ], + [ + 65.94, + 66.2 + ], + [ + 66.42, + 66.36 + ], + [ + 66.56, + 66.62 + ], + [ + 67.1, + 66.53 + ], + [ + 67.38, + 66.65 + ], + [ + 67.96, + 66.51 + ], + [ + 68.2, + 66.5 + ], + [ + 68.78, + 66.76 + ], + [ + 69.15, + 66.77 + ], + [ + 69.44, + 66.49 + ], + [ + 72.12, + 66.2 + ], + [ + 72.47, + 66.59 + ], + [ + 73.88, + 67 + ], + [ + 73.93, + 67.3 + ], + [ + 74.75, + 67.69 + ], + [ + 74.82, + 68 + ], + [ + 74.31, + 68.36 + ], + [ + 74.48, + 68.71 + ], + [ + 76.17, + 68.97 + ], + [ + 76.6, + 68.96 + ], + [ + 77.29, + 68.49 + ], + [ + 77.07, + 67.78 + ], + [ + 77.67, + 67.53 + ], + [ + 77.63, + 67.38 + ], + [ + 77.83, + 67.57 + ], + [ + 77.83, + 67.44 + ], + [ + 77.9, + 67.56 + ], + [ + 78.75, + 67.58 + ], + [ + 79.39, + 67.41 + ], + [ + 78.84, + 67.63 + ], + [ + 77.46, + 67.76 + ], + [ + 77.53, + 68.12 + ], + [ + 78.17, + 68.25 + ], + [ + 77.67, + 68.89 + ], + [ + 76.02, + 69.24 + ], + [ + 74.8, + 69.07 + ], + [ + 73.78, + 69.16 + ], + [ + 73.53, + 69.74 + ], + [ + 74.3, + 70.6 + ], + [ + 73, + 71.4 + ], + [ + 73.52, + 71.8 + ], + [ + 74.99, + 72.16 + ], + [ + 74.95, + 72.87 + ], + [ + 75.46, + 72.74 + ], + [ + 75.71, + 72.28 + ], + [ + 75.24, + 71.93 + ], + [ + 75.3, + 71.33 + ], + [ + 76.92, + 71.18 + ], + [ + 76.88, + 71.06 + ], + [ + 77.03, + 71.18 + ], + [ + 77.77, + 71.13 + ], + [ + 78.35, + 70.86 + ], + [ + 78.97, + 70.88 + ], + [ + 79.1, + 71.05 + ], + [ + 78.79, + 70.95 + ], + [ + 78.42, + 70.9 + ], + [ + 78.08, + 71.38 + ], + [ + 77.69, + 71.26 + ], + [ + 76.3, + 71.56 + ], + [ + 76.03, + 71.9 + ], + [ + 76.39, + 72 + ], + [ + 76.61, + 71.86 + ], + [ + 76.39, + 72 + ], + [ + 76.89, + 72.05 + ], + [ + 77.98, + 71.84 + ], + [ + 78.19, + 72.02 + ], + [ + 77.43, + 72.06 + ], + [ + 77.46, + 72.21 + ], + [ + 78.09, + 72.36 + ], + [ + 78.62, + 72.26 + ], + [ + 78.55, + 72.38 + ], + [ + 80.82, + 72.07 + ], + [ + 81.17, + 71.76 + ], + [ + 83.32, + 71.68 + ], + [ + 83.02, + 71.41 + ], + [ + 82.25, + 71.25 + ], + [ + 82.42, + 70.75 + ], + [ + 81.95, + 70.29 + ], + [ + 82.31, + 70.58 + ], + [ + 82.67, + 70.48 + ], + [ + 82.43, + 70.66 + ], + [ + 82.88, + 70.93 + ], + [ + 83.08, + 70.74 + ], + [ + 82.52, + 70.16 + ], + [ + 82.2, + 70.32 + ], + [ + 82.31, + 70.15 + ], + [ + 82.52, + 70.16 + ], + [ + 84.11, + 69.57 + ], + [ + 84.4, + 69.57 + ], + [ + 85.1, + 69.76 + ], + [ + 86.03, + 69.47 + ], + [ + 85.7, + 69.22 + ], + [ + 86.06, + 69.11 + ], + [ + 85.83, + 68.84 + ], + [ + 86.58, + 68.25 + ], + [ + 86.22, + 67.63 + ], + [ + 86.73, + 66.8 + ], + [ + 86.21, + 66.57 + ], + [ + 86.86, + 66.59 + ], + [ + 87.46, + 66.38 + ], + [ + 87.22, + 66.17 + ], + [ + 87.36, + 66.1 + ], + [ + 87.93, + 66.06 + ], + [ + 87.78, + 65.79 + ], + [ + 88.03, + 65.59 + ], + [ + 87.17, + 63.4 + ], + [ + 87.69, + 63.23 + ], + [ + 88.07, + 63.06 + ], + [ + 88.19, + 62.92 + ], + [ + 88.45, + 62.85 + ], + [ + 88.43, + 62.73 + ], + [ + 88.77, + 62.54 + ], + [ + 88.47, + 62.74 + ], + [ + 88.49, + 62.85 + ], + [ + 88.22, + 62.92 + ], + [ + 88.09, + 63.09 + ], + [ + 87.67, + 63.28 + ], + [ + 87.24, + 63.39 + ], + [ + 88.09, + 65.7 + ], + [ + 87.98, + 66.07 + ], + [ + 87.33, + 66.15 + ], + [ + 87.61, + 66.29 + ], + [ + 87.36, + 66.51 + ], + [ + 87.36, + 66.52 + ], + [ + 87.36, + 66.51 + ], + [ + 86.9, + 66.62 + ], + [ + 86.31, + 66.58 + ], + [ + 86.78, + 66.79 + ], + [ + 86.31, + 67.66 + ], + [ + 86.64, + 68.23 + ], + [ + 85.94, + 68.82 + ], + [ + 86.15, + 69.08 + ], + [ + 85.88, + 69.19 + ], + [ + 86.14, + 69.44 + ], + [ + 85.47, + 69.78 + ], + [ + 84.79, + 69.77 + ], + [ + 84.42, + 69.61 + ], + [ + 83.95, + 69.78 + ], + [ + 82.98, + 70.29 + ], + [ + 83.56, + 70.31 + ], + [ + 83.78, + 70.5 + ], + [ + 83.17, + 71.11 + ], + [ + 83.68, + 71.63 + ], + [ + 83.36, + 71.84 + ], + [ + 82.68, + 71.88 + ], + [ + 82.36, + 72.32 + ], + [ + 80.9, + 72.42 + ], + [ + 80.88, + 72.95 + ], + [ + 80.32, + 73.17 + ], + [ + 80.75, + 73.2 + ], + [ + 80.35, + 73.29 + ], + [ + 80.6, + 73.56 + ], + [ + 87.14, + 73.85 + ], + [ + 86.42, + 73.63 + ], + [ + 85.7, + 73.39 + ], + [ + 86.69, + 73.13 + ], + [ + 86.64, + 72.94 + ], + [ + 87, + 72.92 + ], + [ + 87.78, + 73.02 + ], + [ + 88.24, + 73.01 + ], + [ + 88.35, + 73.15 + ], + [ + 87.71, + 73.02 + ], + [ + 86.88, + 72.94 + ], + [ + 86.79, + 73.1 + ], + [ + 86.42, + 73.26 + ], + [ + 85.87, + 73.35 + ], + [ + 87.45, + 73.79 + ], + [ + 86.94, + 74.02 + ], + [ + 87.32, + 74.08 + ], + [ + 85.9, + 74.34 + ], + [ + 86.44, + 74.48 + ], + [ + 87, + 74.28 + ], + [ + 87.41, + 74.38 + ], + [ + 85.78, + 74.6 + ], + [ + 85.9, + 74.85 + ], + [ + 86.98, + 74.6 + ], + [ + 87.18, + 74.98 + ], + [ + 87.62, + 74.91 + ], + [ + 87.83, + 75.01 + ], + [ + 86.96, + 75.12 + ], + [ + 88.19, + 75.14 + ], + [ + 88.19, + 75.04 + ], + [ + 89.29, + 75.51 + ], + [ + 89.77, + 75.43 + ], + [ + 90.19, + 75.6 + ], + [ + 91.72, + 75.61 + ], + [ + 91.73, + 75.73 + ], + [ + 93.89, + 75.87 + ], + [ + 94.16, + 75.97 + ], + [ + 92.87, + 75.89 + ], + [ + 93.45, + 76.12 + ], + [ + 93.43, + 76.01 + ], + [ + 94.62, + 76.16 + ], + [ + 96.27, + 76.1 + ], + [ + 95.75, + 75.83 + ], + [ + 96.43, + 76 + ], + [ + 96.48, + 75.86 + ], + [ + 97.32, + 76.02 + ], + [ + 97.19, + 75.92 + ], + [ + 97.87, + 75.97 + ], + [ + 97.56, + 76.04 + ], + [ + 98.87, + 76.26 + ], + [ + 99.86, + 76.02 + ], + [ + 99.25, + 75.62 + ], + [ + 100.06, + 76 + ], + [ + 98.95, + 76.5 + ], + [ + 99.79, + 76.43 + ], + [ + 100.11, + 76.47 + ], + [ + 100.3, + 76.44 + ], + [ + 100.97, + 76.52 + ], + [ + 101.1, + 76.43 + ], + [ + 102.48, + 76.29 + ], + [ + 103.62, + 76.4 + ], + [ + 103.95, + 76.31 + ], + [ + 103.6, + 76.41 + ], + [ + 102.5, + 76.3 + ], + [ + 102.57, + 76.42 + ], + [ + 102.35, + 76.35 + ], + [ + 101.86, + 76.45 + ], + [ + 101.6, + 76.45 + ], + [ + 101.45, + 76.49 + ], + [ + 101.12, + 76.48 + ], + [ + 101.01, + 76.52 + ], + [ + 100.94, + 76.52 + ], + [ + 101.39, + 77.11 + ], + [ + 104.09, + 77.72 + ], + [ + 105.93, + 77.55 + ], + [ + 106.31, + 77.37 + ], + [ + 104.14, + 77.08 + ], + [ + 105.93, + 77.13 + ], + [ + 105.53, + 76.96 + ], + [ + 106.81, + 77.05 + ], + [ + 107.53, + 76.91 + ], + [ + 106.5, + 76.49 + ], + [ + 107.73, + 76.5 + ], + [ + 108.02, + 76.74 + ], + [ + 110.1, + 76.65 + ], + [ + 111.23, + 76.74 + ], + [ + 112.23, + 76.46 + ], + [ + 111.91, + 76.32 + ], + [ + 112.34, + 76.45 + ], + [ + 112.81, + 76.32 + ], + [ + 112.71, + 76.05 + ], + [ + 113.09, + 76.15 + ], + [ + 113.34, + 76.1 + ], + [ + 113.29, + 76.25 + ], + [ + 113.59, + 75.95 + ], + [ + 113.38, + 75.94 + ], + [ + 113.61, + 75.92 + ], + [ + 113.44, + 75.83 + ], + [ + 113.91, + 75.9 + ], + [ + 113.56, + 75.54 + ], + [ + 113.58, + 75.65 + ], + [ + 112.33, + 75.85 + ], + [ + 112.68, + 75.7 + ], + [ + 112.8, + 75.55 + ], + [ + 113.28, + 75.66 + ], + [ + 113.76, + 75.45 + ], + [ + 112.84, + 74.96 + ], + [ + 111.8, + 74.65 + ], + [ + 109.58, + 74.34 + ], + [ + 109.89, + 74.2 + ], + [ + 108.11, + 73.63 + ], + [ + 106.79, + 73.6 + ], + [ + 107.21, + 73.53 + ], + [ + 106.8, + 73.32 + ], + [ + 106.13, + 73.27 + ], + [ + 105.72, + 72.88 + ], + [ + 103.23, + 72.42 + ], + [ + 102.55, + 72.02 + ], + [ + 101.78, + 71.86 + ], + [ + 102.11, + 71.91 + ], + [ + 102.63, + 71.6 + ], + [ + 102.12, + 71.92 + ], + [ + 102.61, + 72.01 + ], + [ + 103.38, + 72.41 + ], + [ + 103.93, + 72.42 + ], + [ + 106.06, + 72.94 + ], + [ + 106.82, + 72.85 + ], + [ + 106.24, + 72.96 + ], + [ + 106.35, + 73.19 + ], + [ + 108.36, + 73.21 + ], + [ + 109.45, + 73.41 + ], + [ + 109.22, + 73.55 + ], + [ + 110.01, + 73.44 + ], + [ + 110.98, + 73.7 + ], + [ + 110.67, + 73.79 + ], + [ + 109.77, + 73.65 + ], + [ + 109.55, + 73.82 + ], + [ + 109.97, + 74 + ], + [ + 111.04, + 73.9 + ], + [ + 111.46, + 74.05 + ], + [ + 111.31, + 73.84 + ], + [ + 111.87, + 73.72 + ], + [ + 112.9, + 73.73 + ], + [ + 112.83, + 74 + ], + [ + 113.18, + 73.87 + ], + [ + 113.58, + 73.32 + ], + [ + 113.19, + 73.23 + ], + [ + 113.61, + 73.14 + ], + [ + 113.21, + 72.83 + ], + [ + 113.55, + 72.92 + ], + [ + 113.77, + 73.32 + ], + [ + 114.81, + 73.17 + ], + [ + 113.51, + 73.51 + ], + [ + 115.59, + 73.71 + ], + [ + 118.79, + 73.54 + ], + [ + 118.51, + 73.18 + ], + [ + 119.62, + 73.02 + ], + [ + 119.89, + 72.8 + ], + [ + 120.23, + 72.92 + ], + [ + 121.57, + 72.78 + ], + [ + 123.29, + 72.19 + ], + [ + 121.58, + 72.8 + ], + [ + 119.8, + 73 + ], + [ + 122.8, + 72.82 + ], + [ + 122.71, + 72.91 + ], + [ + 122.85, + 72.79 + ], + [ + 124.21, + 72.72 + ], + [ + 124.37, + 72.64 + ], + [ + 124.52, + 72.62 + ], + [ + 124.76, + 72.65 + ], + [ + 125.6, + 72.38 + ], + [ + 125.2, + 72.55 + ], + [ + 125.24, + 72.51 + ], + [ + 124.78, + 72.66 + ], + [ + 124.42, + 72.65 + ], + [ + 124.23, + 72.73 + ], + [ + 123.33, + 72.86 + ], + [ + 123.62, + 72.86 + ], + [ + 123.79, + 72.93 + ], + [ + 124.23, + 72.97 + ], + [ + 123.62, + 72.86 + ], + [ + 123.22, + 72.88 + ], + [ + 123.73, + 72.77 + ], + [ + 123.33, + 72.77 + ], + [ + 122.54, + 73 + ], + [ + 123.27, + 72.89 + ], + [ + 123.71, + 73.08 + ], + [ + 123.27, + 73.4 + ], + [ + 123.6, + 73.69 + ], + [ + 123.77, + 73.56 + ], + [ + 124.36, + 73.8 + ], + [ + 125.02, + 73.6 + ], + [ + 125.16, + 73.71 + ], + [ + 125.58, + 73.37 + ], + [ + 126.3, + 73.55 + ], + [ + 126.13, + 73.36 + ], + [ + 126.95, + 73.37 + ], + [ + 127.14, + 73.52 + ], + [ + 127.46, + 73.37 + ], + [ + 127.84, + 73.47 + ], + [ + 127.73, + 73.36 + ], + [ + 128.43, + 73.35 + ], + [ + 128.1, + 73.19 + ], + [ + 128.93, + 73.21 + ], + [ + 128.71, + 73.02 + ], + [ + 127.88, + 72.93 + ], + [ + 128.39, + 72.91 + ], + [ + 128.29, + 72.8 + ], + [ + 127.41, + 72.75 + ], + [ + 126.56, + 72.54 + ], + [ + 126.5, + 72.39 + ], + [ + 126.5, + 72.57 + ], + [ + 126.15, + 72.56 + ], + [ + 126.19, + 72.28 + ], + [ + 126.5, + 72.39 + ], + [ + 127.62, + 70.8 + ], + [ + 127.01, + 70.55 + ], + [ + 126.04, + 70.53 + ], + [ + 125.78, + 70.44 + ], + [ + 125.91, + 70.13 + ], + [ + 125.05, + 69.89 + ], + [ + 124.64, + 69.33 + ], + [ + 123.99, + 69.03 + ], + [ + 123.83, + 68.39 + ], + [ + 122.97, + 67.96 + ], + [ + 123, + 67.4 + ], + [ + 124.4, + 65.08 + ], + [ + 125, + 64.66 + ], + [ + 126.39, + 64.39 + ], + [ + 127.55, + 63.79 + ], + [ + 127.64, + 63.77 + ], + [ + 128.38, + 63.47 + ], + [ + 129.27, + 63.5 + ], + [ + 129.9, + 62.51 + ], + [ + 129.98, + 62.55 + ], + [ + 129.9, + 62.46 + ], + [ + 130.07, + 62.3 + ], + [ + 129.87, + 62.21 + ], + [ + 129.79, + 62.04 + ], + [ + 129.53, + 61.7 + ], + [ + 129.4, + 61.63 + ], + [ + 128.67, + 61.3 + ], + [ + 126.3, + 61.1 + ], + [ + 126.01, + 60.98 + ], + [ + 125.29, + 60.81 + ], + [ + 125.36, + 60.79 + ], + [ + 125.02, + 60.78 + ], + [ + 124.78, + 60.68 + ], + [ + 124.34, + 60.66 + ], + [ + 124.04, + 60.58 + ], + [ + 123.61, + 60.61 + ], + [ + 122.56, + 60.55 + ], + [ + 121.77, + 60.57 + ], + [ + 121.26, + 60.66 + ], + [ + 121, + 60.58 + ], + [ + 120.74, + 60.49 + ], + [ + 120.65, + 60.38 + ], + [ + 120.36, + 60.38 + ], + [ + 120.14, + 60.32 + ], + [ + 120.03, + 60.2 + ], + [ + 120.32, + 60.35 + ], + [ + 120.65, + 60.37 + ], + [ + 120.7, + 60.28 + ], + [ + 120.81, + 60.5 + ], + [ + 121.29, + 60.63 + ], + [ + 121.71, + 60.56 + ], + [ + 122.41, + 60.54 + ], + [ + 123.16, + 60.58 + ], + [ + 123.71, + 60.59 + ], + [ + 123.97, + 60.56 + ], + [ + 124.19, + 60.58 + ], + [ + 124.3, + 60.64 + ], + [ + 124.76, + 60.66 + ], + [ + 125.05, + 60.76 + ], + [ + 125.46, + 60.8 + ], + [ + 125.73, + 60.89 + ], + [ + 125.73, + 60.86 + ], + [ + 126.28, + 61.05 + ], + [ + 128.76, + 61.25 + ], + [ + 129.36, + 61.53 + ], + [ + 129.77, + 61.88 + ], + [ + 129.97, + 62.09 + ], + [ + 129.9, + 62.21 + ], + [ + 130.07, + 62.27 + ], + [ + 130.12, + 62.41 + ], + [ + 129.54, + 63.43 + ], + [ + 130.03, + 63.4 + ], + [ + 130.24, + 63.32 + ], + [ + 130.64, + 63.33 + ], + [ + 130.85, + 63.26 + ], + [ + 131.01, + 63.25 + ], + [ + 130.85, + 63.24 + ], + [ + 130.67, + 63.28 + ], + [ + 130.78, + 63.23 + ], + [ + 130.94, + 63.23 + ], + [ + 131.13, + 63.27 + ], + [ + 131.37, + 63.38 + ], + [ + 132.22, + 63.26 + ], + [ + 132.45, + 63.34 + ], + [ + 132.61, + 63.31 + ], + [ + 132.98, + 63.38 + ], + [ + 133.25, + 63.37 + ], + [ + 133.19, + 63.29 + ], + [ + 133.24, + 63.24 + ], + [ + 133.12, + 63.13 + ], + [ + 133.48, + 63.04 + ], + [ + 133.22, + 63.19 + ], + [ + 133.26, + 63.24 + ], + [ + 133.22, + 63.31 + ], + [ + 133.28, + 63.34 + ], + [ + 133.27, + 63.37 + ], + [ + 133.22, + 63.38 + ], + [ + 132.96, + 63.39 + ], + [ + 132.61, + 63.32 + ], + [ + 132.54, + 63.35 + ], + [ + 132.41, + 63.34 + ], + [ + 132.23, + 63.27 + ], + [ + 131.3, + 63.42 + ], + [ + 130.87, + 63.28 + ], + [ + 130.69, + 63.34 + ], + [ + 130.34, + 63.34 + ], + [ + 129.95, + 63.44 + ], + [ + 129.75, + 63.43 + ], + [ + 129.46, + 63.52 + ], + [ + 128.98, + 63.57 + ], + [ + 128.61, + 63.51 + ], + [ + 128.21, + 63.72 + ], + [ + 128.42, + 63.52 + ], + [ + 128.19, + 63.73 + ], + [ + 127.51, + 63.89 + ], + [ + 126.28, + 64.47 + ], + [ + 125.64, + 64.61 + ], + [ + 124.43, + 65.39 + ], + [ + 123.93, + 66.29 + ], + [ + 123.06, + 67.49 + ], + [ + 123.44, + 68.02 + ], + [ + 123.75, + 68.2 + ], + [ + 124.12, + 69.06 + ], + [ + 124.86, + 69.43 + ], + [ + 125.2, + 69.89 + ], + [ + 126.11, + 70.12 + ], + [ + 126.22, + 70.28 + ], + [ + 125.86, + 70.37 + ], + [ + 125.93, + 70.48 + ], + [ + 126.91, + 70.49 + ], + [ + 127.22, + 70.62 + ], + [ + 127.68, + 70.8 + ], + [ + 127.31, + 71.73 + ], + [ + 126.85, + 72.41 + ], + [ + 127.8, + 72.33 + ], + [ + 128.76, + 71.76 + ], + [ + 129.25, + 71.79 + ], + [ + 129.12, + 72.01 + ], + [ + 129.6, + 71.71 + ], + [ + 128.98, + 71.71 + ], + [ + 128.9, + 71.58 + ], + [ + 129.25, + 71.6 + ], + [ + 129.72, + 71.07 + ], + [ + 130.63, + 70.84 + ], + [ + 130.85, + 70.97 + ], + [ + 131.07, + 70.71 + ], + [ + 131.46, + 70.69 + ], + [ + 131.97, + 71.22 + ], + [ + 132.3, + 71.17 + ], + [ + 131.99, + 71.26 + ], + [ + 132.78, + 71.95 + ], + [ + 133.19, + 71.95 + ], + [ + 132.76, + 71.79 + ], + [ + 133.64, + 71.44 + ], + [ + 134.73, + 71.4 + ], + [ + 134.76, + 71.27 + ], + [ + 134.99, + 71.47 + ], + [ + 135.01, + 71.46 + ], + [ + 134.99, + 71.47 + ], + [ + 134.98, + 71.48 + ], + [ + 134.98, + 71.5 + ], + [ + 135.93, + 71.65 + ], + [ + 136.6, + 71.57 + ], + [ + 136.25, + 71.46 + ], + [ + 136.76, + 71.47 + ], + [ + 137.59, + 71.36 + ], + [ + 137.94, + 71.1 + ], + [ + 137.87, + 71.26 + ], + [ + 138.49, + 71.3 + ], + [ + 137.86, + 71.39 + ], + [ + 138.13, + 71.6 + ], + [ + 138.57, + 71.54 + ], + [ + 138.52, + 71.39 + ], + [ + 138.87, + 71.32 + ], + [ + 138.82, + 71.64 + ], + [ + 139.24, + 71.4 + ], + [ + 140.11, + 71.44 + ], + [ + 140.04, + 71.86 + ], + [ + 139.37, + 71.96 + ], + [ + 140.61, + 72.26 + ], + [ + 139.42, + 72.15 + ], + [ + 139.15, + 72.25 + ], + [ + 139.83, + 72.37 + ], + [ + 139.4, + 72.4 + ], + [ + 139.6, + 72.49 + ], + [ + 141.3, + 72.58 + ], + [ + 140.76, + 72.88 + ], + [ + 141.94, + 72.72 + ], + [ + 144.47, + 72.63 + ], + [ + 146.86, + 72.35 + ], + [ + 144.97, + 72.43 + ], + [ + 144.17, + 72.27 + ], + [ + 144.55, + 72.15 + ], + [ + 145.21, + 72.26 + ], + [ + 146.95, + 72.31 + ], + [ + 145.98, + 71.86 + ], + [ + 146.33, + 72.2 + ], + [ + 146, + 72.06 + ], + [ + 146.07, + 72.21 + ], + [ + 145.49, + 72.25 + ], + [ + 145.81, + 72.22 + ], + [ + 145.84, + 71.94 + ], + [ + 145.03, + 71.96 + ], + [ + 144.98, + 71.62 + ], + [ + 145.39, + 71.58 + ], + [ + 146.06, + 71.77 + ], + [ + 147.14, + 72.31 + ], + [ + 148.39, + 72.32 + ], + [ + 149.93, + 72.02 + ], + [ + 150.08, + 71.83 + ], + [ + 149.7, + 71.75 + ], + [ + 149.41, + 71.89 + ], + [ + 148.86, + 71.68 + ], + [ + 149.98, + 71.65 + ], + [ + 149.88, + 71.47 + ], + [ + 150.45, + 71.48 + ], + [ + 150.71, + 71.47 + ], + [ + 150.49, + 71.32 + ], + [ + 149.78, + 71.19 + ], + [ + 150.39, + 71.24 + ], + [ + 150.74, + 71.38 + ], + [ + 150.57, + 71.16 + ], + [ + 151.11, + 71.39 + ], + [ + 152.07, + 71.01 + ], + [ + 151.45, + 70.97 + ], + [ + 152.53, + 70.74 + ], + [ + 155.86, + 71.07 + ], + [ + 157.24, + 71.05 + ], + [ + 157.48, + 71.03 + ], + [ + 157.5, + 71.03 + ], + [ + 157.48, + 71.03 + ], + [ + 158.83, + 70.89 + ], + [ + 159.78, + 70.59 + ], + [ + 160.1, + 70.25 + ], + [ + 159.56, + 70.09 + ], + [ + 159.95, + 70.08 + ], + [ + 159.6, + 69.86 + ], + [ + 160.37, + 69.68 + ], + [ + 160.51, + 69.46 + ], + [ + 160.43, + 69.67 + ], + [ + 161, + 69.57 + ], + [ + 160.96, + 69.07 + ], + [ + 161.42, + 68.92 + ], + [ + 161.15, + 68.65 + ], + [ + 161.1, + 68.53 + ], + [ + 160.53, + 68.48 + ], + [ + 159.57, + 68.59 + ], + [ + 159.08, + 68.65 + ], + [ + 159.21, + 68.75 + ], + [ + 158.51, + 68.8 + ], + [ + 157.94, + 68.65 + ], + [ + 158.01, + 68.65 + ], + [ + 157.94, + 68.65 + ], + [ + 158.03, + 68.48 + ], + [ + 157.65, + 68.31 + ], + [ + 157.68, + 68.12 + ], + [ + 157.46, + 68.04 + ], + [ + 156.93, + 68.02 + ], + [ + 156.71, + 67.92 + ], + [ + 156.49, + 67.96 + ], + [ + 156.21, + 67.96 + ], + [ + 156.14, + 67.95 + ], + [ + 156.18, + 67.82 + ], + [ + 156.34, + 67.78 + ], + [ + 156.23, + 67.67 + ], + [ + 156.32, + 67.63 + ], + [ + 156.01, + 67.61 + ], + [ + 155.63, + 67.56 + ], + [ + 156.28, + 67.6 + ], + [ + 156.45, + 67.67 + ], + [ + 156.28, + 67.68 + ], + [ + 156.36, + 67.78 + ], + [ + 156.46, + 67.77 + ], + [ + 156.23, + 67.81 + ], + [ + 156.17, + 67.9 + ], + [ + 156.23, + 67.95 + ], + [ + 156.48, + 67.95 + ], + [ + 156.72, + 67.91 + ], + [ + 156.9, + 67.99 + ], + [ + 157.46, + 68.03 + ], + [ + 157.71, + 68.11 + ], + [ + 157.71, + 68.3 + ], + [ + 158.06, + 68.45 + ], + [ + 157.97, + 68.61 + ], + [ + 158.33, + 68.66 + ], + [ + 158.49, + 68.78 + ], + [ + 158.59, + 68.65 + ], + [ + 159.17, + 68.75 + ], + [ + 159.03, + 68.65 + ], + [ + 159.5, + 68.57 + ], + [ + 160.49, + 68.47 + ], + [ + 161.1, + 68.51 + ], + [ + 161.67, + 68.88 + ], + [ + 161.46, + 69.35 + ], + [ + 162.36, + 69.68 + ], + [ + 164.09, + 69.75 + ], + [ + 164.4, + 69.6 + ], + [ + 166.73, + 69.51 + ], + [ + 166.51, + 69.45 + ], + [ + 167.92, + 69.77 + ], + [ + 168.22, + 69.43 + ], + [ + 168.32, + 69.21 + ], + [ + 169.39, + 69.05 + ], + [ + 169.59, + 68.77 + ], + [ + 170.68, + 68.86 + ], + [ + 171.17, + 69.04 + ], + [ + 170.65, + 69.57 + ], + [ + 170.16, + 69.59 + ], + [ + 170.63, + 69.75 + ], + [ + 170.44, + 70.11 + ], + [ + 172.75, + 69.96 + ], + [ + 173.28, + 69.76 + ], + [ + 173.47, + 69.93 + ], + [ + 173.76, + 69.81 + ], + [ + 176.14, + 69.85 + ], + [ + 178.76, + 69.41 + ], + [ + 179.1, + 69.31 + ], + [ + 178.73, + 69.36 + ], + [ + 178.77, + 69.26 + ], + [ + 179.3, + 69.26 + ], + [ + 180, + 68.97 + ], + [ + 180, + 68.96 + ], + [ + 180, + 68.94 + ], + [ + 180, + 68.92 + ], + [ + 180, + 68.91 + ], + [ + 180, + 68.55 + ], + [ + 180, + 68.51 + ], + [ + 180, + 68.36 + ], + [ + 180, + 67.93 + ], + [ + 180, + 67.55 + ], + [ + 180, + 67.17 + ], + [ + 180, + 66.93 + ], + [ + 180, + 66.91 + ], + [ + 180, + 66.89 + ], + [ + 180, + 66.64 + ], + [ + 180, + 65.87 + ], + [ + 180, + 65.86 + ], + [ + 180, + 65.8 + ], + [ + 180, + 65.48 + ], + [ + 180, + 65.46 + ], + [ + 180, + 65.43 + ], + [ + 180, + 65.39 + ], + [ + 180, + 65.38 + ], + [ + 180, + 65.36 + ], + [ + 180, + 65.3 + ], + [ + 180, + 65.04 + ], + [ + 178.55, + 64.56 + ], + [ + 178.83, + 64.65 + ], + [ + 177.63, + 64.7 + ], + [ + 177.57, + 64.93 + ], + [ + 176.95, + 65.07 + ], + [ + 176.6, + 65.01 + ], + [ + 176.41, + 65.07 + ], + [ + 176.56, + 65.18 + ], + [ + 176.27, + 65.03 + ], + [ + 176.67, + 64.98 + ], + [ + 177.01, + 65.04 + ], + [ + 177.31, + 64.79 + ], + [ + 176.45, + 64.8 + ], + [ + 176.11, + 64.94 + ], + [ + 175.74, + 64.75 + ], + [ + 174.87, + 64.69 + ], + [ + 175.72, + 64.73 + ], + [ + 176.22, + 64.88 + ], + [ + 176.44, + 64.69 + ], + [ + 176.22, + 64.62 + ], + [ + 176.07, + 64.51 + ], + [ + 176, + 64.37 + ], + [ + 176.17, + 64.36 + ], + [ + 176.04, + 64.43 + ], + [ + 176.24, + 64.61 + ], + [ + 176.54, + 64.67 + ], + [ + 176.77, + 64.54 + ], + [ + 177.51, + 64.74 + ], + [ + 177.49, + 64.41 + ], + [ + 178.23, + 64.18 + ], + [ + 178.23, + 64.43 + ], + [ + 178.6, + 64.06 + ], + [ + 178.32, + 63.98 + ], + [ + 178.7, + 63.94 + ], + [ + 179, + 63.34 + ], + [ + 178.84, + 63.35 + ], + [ + 179.45, + 63.12 + ], + [ + 179.23, + 63.04 + ], + [ + 179.62, + 62.66 + ], + [ + 179.36, + 62.48 + ], + [ + 178.97, + 62.53 + ], + [ + 179.1, + 62.27 + ], + [ + 177.65, + 62.57 + ], + [ + 176.7, + 62.53 + ], + [ + 176.28, + 62.29 + ], + [ + 174.65, + 61.98 + ], + [ + 174.58, + 61.82 + ], + [ + 174.02, + 61.81 + ], + [ + 173.84, + 61.64 + ], + [ + 173.48, + 61.74 + ], + [ + 173.26, + 61.43 + ], + [ + 172.67, + 61.43 + ], + [ + 172.94, + 61.27 + ], + [ + 172.34, + 61.21 + ], + [ + 172.42, + 61.01 + ], + [ + 172.01, + 61.09 + ], + [ + 172.07, + 60.84 + ], + [ + 171.69, + 60.92 + ], + [ + 171.63, + 60.72 + ], + [ + 170.61, + 60.44 + ], + [ + 170.32, + 59.93 + ], + [ + 169.23, + 60.62 + ], + [ + 167.8, + 60.53 + ], + [ + 167.23, + 60.34 + ], + [ + 167, + 60.42 + ], + [ + 166.29, + 59.81 + ], + [ + 166.09, + 59.8 + ], + [ + 166.27, + 60.47 + ], + [ + 165.03, + 60.1 + ], + [ + 165.22, + 59.99 + ], + [ + 164.84, + 59.78 + ], + [ + 164.48, + 60.1 + ], + [ + 164.2, + 59.85 + ], + [ + 164.23, + 59.98 + ], + [ + 163.65, + 60.02 + ], + [ + 163.84, + 59.99 + ], + [ + 163.19, + 59.56 + ], + [ + 163.22, + 59.04 + ], + [ + 162.94, + 59.18 + ], + [ + 163.04, + 58.96 + ], + [ + 162.21, + 58.62 + ], + [ + 161.9, + 57.97 + ], + [ + 162.48, + 57.77 + ], + [ + 162.36, + 57.66 + ], + [ + 162.7, + 57.95 + ], + [ + 163.32, + 57.73 + ], + [ + 162.73, + 57.33 + ], + [ + 162.78, + 56.77 + ], + [ + 163.23, + 56.74 + ], + [ + 163.36, + 56.18 + ], + [ + 163.02, + 56.01 + ], + [ + 162.62, + 56.23 + ], + [ + 162.29, + 56.19 + ], + [ + 161.7, + 55.45 + ], + [ + 162.14, + 54.75 + ], + [ + 161.71, + 54.51 + ], + [ + 160.64, + 54.5 + ], + [ + 159.99, + 54.16 + ], + [ + 159.87, + 53.67 + ], + [ + 160.04, + 53.1 + ], + [ + 159.61, + 53.27 + ], + [ + 158.7, + 52.88 + ], + [ + 158.51, + 53.08 + ], + [ + 158.43, + 52.89 + ], + [ + 158.65, + 52.84 + ], + [ + 158.44, + 52.75 + ], + [ + 158.55, + 52.63 + ], + [ + 158.39, + 52.65 + ], + [ + 158.56, + 52.31 + ], + [ + 158.27, + 51.96 + ], + [ + 156.66, + 50.87 + ], + [ + 156.47, + 52.54 + ], + [ + 156.15, + 52.85 + ], + [ + 155.56, + 55.2 + ], + [ + 155.99, + 56.68 + ], + [ + 156.75, + 57.08 + ], + [ + 157, + 57.44 + ], + [ + 156.85, + 57.8 + ], + [ + 157.45, + 57.79 + ], + [ + 157.68, + 58.02 + ], + [ + 158.39, + 57.96 + ], + [ + 158.23, + 58.03 + ], + [ + 159.25, + 58.46 + ], + [ + 160.49, + 59.56 + ], + [ + 161.92, + 60.21 + ], + [ + 161.95, + 60.42 + ], + [ + 162.96, + 60.77 + ], + [ + 163.76, + 60.83 + ], + [ + 163.49, + 61.01 + ], + [ + 164.03, + 61.35 + ], + [ + 163.75, + 61.46 + ], + [ + 164.06, + 61.68 + ], + [ + 164.14, + 62.26 + ], + [ + 164.53, + 62.44 + ], + [ + 165.31, + 62.33 + ], + [ + 165.1, + 62.44 + ], + [ + 165.41, + 62.45 + ], + [ + 164.44, + 62.69 + ], + [ + 163.27, + 62.53 + ], + [ + 162.96, + 61.81 + ], + [ + 163.32, + 61.66 + ], + [ + 163.02, + 61.51 + ], + [ + 162.84, + 61.72 + ], + [ + 162.75, + 61.59 + ], + [ + 162.39, + 61.67 + ], + [ + 160.8, + 60.72 + ], + [ + 160.43, + 60.76 + ], + [ + 160.17, + 60.57 + ], + [ + 160.44, + 61.03 + ], + [ + 159.79, + 60.93 + ], + [ + 160, + 61.11 + ], + [ + 159.77, + 61.24 + ], + [ + 160.28, + 61.55 + ], + [ + 160.38, + 61.95 + ], + [ + 159.58, + 61.65 + ], + [ + 159.57, + 61.82 + ], + [ + 158.97, + 61.93 + ], + [ + 158.08, + 61.73 + ], + [ + 157.5, + 61.79 + ], + [ + 156.69, + 61.53 + ], + [ + 156.66, + 61.21 + ], + [ + 155.93, + 60.93 + ], + [ + 155.91, + 60.71 + ], + [ + 154.87, + 60.32 + ], + [ + 154.48, + 59.93 + ], + [ + 154.58, + 60.11 + ], + [ + 154.41, + 60.07 + ], + [ + 154.48, + 59.89 + ], + [ + 154.21, + 59.88 + ], + [ + 154.37, + 59.58 + ], + [ + 154.23, + 59.66 + ], + [ + 154.13, + 59.46 + ], + [ + 154.97, + 59.49 + ], + [ + 155.18, + 59.17 + ], + [ + 154.33, + 59.21 + ], + [ + 154.04, + 59.05 + ], + [ + 153.79, + 59.25 + ], + [ + 153.39, + 59.25 + ], + [ + 152.91, + 58.91 + ], + [ + 152.36, + 59.06 + ], + [ + 152.07, + 58.89 + ], + [ + 151.34, + 58.84 + ], + [ + 151.1, + 59.11 + ], + [ + 152.32, + 59.21 + ], + [ + 151.74, + 59.3 + ], + [ + 151.41, + 59.61 + ], + [ + 150.76, + 59.43 + ], + [ + 150.5, + 59.49 + ], + [ + 150.77, + 59.56 + ], + [ + 149.41, + 59.76 + ], + [ + 149.05, + 59.62 + ], + [ + 149.23, + 59.46 + ], + [ + 148.88, + 59.55 + ], + [ + 148.71, + 59.45 + ], + [ + 148.93, + 59.23 + ], + [ + 148.42, + 59.25 + ], + [ + 148.2, + 59.41 + ], + [ + 147.54, + 59.24 + ], + [ + 146.51, + 59.47 + ], + [ + 146.05, + 59.14 + ], + [ + 145.92, + 59.42 + ], + [ + 144.24, + 59.39 + ], + [ + 144.44, + 59.37 + ], + [ + 143.88, + 59.4 + ], + [ + 143.94, + 59.47 + ], + [ + 143.48, + 59.32 + ], + [ + 143.25, + 59.41 + ], + [ + 142.08, + 59.05 + ], + [ + 141.56, + 58.61 + ], + [ + 140.78, + 58.3 + ], + [ + 140.49, + 57.84 + ], + [ + 138.93, + 57.14 + ], + [ + 138.58, + 56.78 + ], + [ + 138.44, + 56.84 + ], + [ + 138.11, + 56.58 + ], + [ + 138.23, + 56.42 + ], + [ + 135.23, + 54.91 + ], + [ + 135.2, + 54.75 + ], + [ + 135.74, + 54.57 + ], + [ + 136.83, + 54.64 + ], + [ + 136.76, + 53.76 + ], + [ + 137.19, + 53.85 + ], + [ + 137.19, + 54.21 + ], + [ + 137.73, + 54.32 + ], + [ + 137.3, + 54.05 + ], + [ + 137.86, + 53.96 + ], + [ + 137.31, + 53.53 + ], + [ + 137.95, + 53.58 + ], + [ + 138.58, + 53.99 + ], + [ + 138.24, + 53.47 + ], + [ + 138.46, + 53.52 + ], + [ + 138.77, + 53.98 + ], + [ + 138.66, + 54.29 + ], + [ + 139.16, + 54.14 + ], + [ + 139.73, + 54.3 + ], + [ + 140.53, + 53.64 + ], + [ + 141.42, + 53.3 + ], + [ + 141.14, + 52.99 + ], + [ + 140.17, + 53.26 + ], + [ + 139.83, + 53.25 + ], + [ + 139.67, + 52.99 + ], + [ + 140.03, + 52.82 + ], + [ + 139.71, + 53 + ], + [ + 139.9, + 53.21 + ], + [ + 140.25, + 53.23 + ], + [ + 140.93, + 53.04 + ], + [ + 141.24, + 52.87 + ], + [ + 141.11, + 52.41 + ], + [ + 141.55, + 52.15 + ], + [ + 140.73, + 51.47 + ], + [ + 140.86, + 51.37 + ], + [ + 140.67, + 51.33 + ], + [ + 140.43, + 50.72 + ], + [ + 140.5, + 50.17 + ], + [ + 140.69, + 50.09 + ], + [ + 140.4, + 49.88 + ], + [ + 140.55, + 49.56 + ], + [ + 140.2, + 49.02 + ], + [ + 140.39, + 48.98 + ], + [ + 140.17, + 48.45 + ], + [ + 139.26, + 47.8 + ], + [ + 137.69, + 45.81 + ], + [ + 136.15, + 44.5 + ], + [ + 135.82, + 44.37 + ], + [ + 135.14, + 43.51 + ], + [ + 133.92, + 42.87 + ], + [ + 133.15, + 42.68 + ], + [ + 132.99, + 42.85 + ], + [ + 132.83, + 42.74 + ], + [ + 132.76, + 42.92 + ], + [ + 132.32, + 42.84 + ], + [ + 132.33, + 43.31 + ], + [ + 131.84, + 43.07 + ], + [ + 132.07, + 43.32 + ], + [ + 131.79, + 43.38 + ], + [ + 131.78, + 43.18 + ], + [ + 131.35, + 42.83 + ], + [ + 131.22, + 42.55 + ], + [ + 131.12, + 42.67 + ], + [ + 130.92, + 42.59 + ], + [ + 130.81, + 42.63 + ], + [ + 130.96, + 42.65 + ], + [ + 130.65, + 42.66 + ], + [ + 130.87, + 42.53 + ], + [ + 130.65, + 42.33 + ], + [ + 130.65, + 42.35 + ], + [ + 130.65, + 42.36 + ], + [ + 130.67, + 42.37 + ], + [ + 130.67, + 42.38 + ], + [ + 130.65, + 42.39 + ], + [ + 130.65, + 42.41 + ], + [ + 130.64, + 42.42 + ], + [ + 130.61, + 42.44 + ], + [ + 130.59, + 42.45 + ], + [ + 130.59, + 42.46 + ], + [ + 130.59, + 42.49 + ], + [ + 130.58, + 42.49 + ], + [ + 130.55, + 42.52 + ], + [ + 130.56, + 42.52 + ], + [ + 130.56, + 42.53 + ], + [ + 130.58, + 42.67 + ], + [ + 130.4, + 42.73 + ], + [ + 131.14, + 42.93 + ], + [ + 131.31, + 43.4 + ], + [ + 131.3, + 44.04 + ], + [ + 130.96, + 44.85 + ], + [ + 131.49, + 44.97 + ], + [ + 131.87, + 45.34 + ], + [ + 132, + 45.25 + ], + [ + 132.05, + 44.75 + ], + [ + 132.24, + 44.57 + ], + [ + 132.5, + 44.54 + ], + [ + 132.65, + 44.76 + ], + [ + 132.86, + 45.06 + ], + [ + 133.13, + 45.13 + ], + [ + 133.13, + 45.43 + ], + [ + 133.4, + 45.6 + ], + [ + 133.41, + 45.62 + ], + [ + 133.42, + 45.61 + ], + [ + 133.43, + 45.63 + ], + [ + 133.44, + 45.63 + ], + [ + 133.47, + 45.63 + ], + [ + 133.44, + 45.64 + ], + [ + 133.44, + 45.65 + ], + [ + 133.45, + 45.66 + ], + [ + 133.47, + 45.66 + ], + [ + 133.48, + 45.67 + ], + [ + 133.48, + 45.68 + ], + [ + 133.47, + 45.69 + ], + [ + 133.46, + 45.69 + ], + [ + 133.45, + 45.7 + ], + [ + 133.43, + 45.71 + ], + [ + 133.45, + 45.73 + ], + [ + 133.46, + 45.74 + ], + [ + 133.47, + 45.74 + ], + [ + 133.47, + 45.75 + ], + [ + 133.46, + 45.75 + ], + [ + 133.46, + 45.76 + ], + [ + 133.47, + 45.77 + ], + [ + 133.47, + 45.78 + ], + [ + 133.48, + 45.77 + ], + [ + 133.49, + 45.79 + ], + [ + 133.48, + 45.79 + ], + [ + 133.46, + 45.8 + ], + [ + 133.46, + 45.82 + ], + [ + 133.46, + 45.83 + ], + [ + 133.48, + 45.84 + ], + [ + 133.48, + 45.85 + ], + [ + 133.48, + 45.86 + ], + [ + 133.5, + 45.89 + ], + [ + 133.51, + 45.89 + ], + [ + 133.54, + 45.89 + ], + [ + 133.55, + 45.89 + ], + [ + 133.56, + 45.87 + ], + [ + 133.59, + 45.87 + ], + [ + 133.59, + 45.89 + ], + [ + 133.6, + 45.89 + ], + [ + 133.61, + 45.91 + ], + [ + 133.6, + 45.93 + ], + [ + 133.6, + 45.94 + ], + [ + 133.63, + 45.94 + ], + [ + 133.64, + 45.95 + ], + [ + 133.66, + 45.94 + ], + [ + 133.67, + 45.94 + ], + [ + 133.68, + 45.96 + ], + [ + 133.67, + 45.98 + ], + [ + 133.67, + 45.99 + ], + [ + 133.69, + 46 + ], + [ + 133.7, + 46.02 + ], + [ + 133.71, + 46.03 + ], + [ + 133.72, + 46.03 + ], + [ + 133.73, + 46.05 + ], + [ + 133.74, + 46.07 + ], + [ + 133.73, + 46.08 + ], + [ + 133.72, + 46.09 + ], + [ + 133.7, + 46.1 + ], + [ + 133.7, + 46.11 + ], + [ + 133.69, + 46.13 + ], + [ + 133.69, + 46.16 + ], + [ + 133.71, + 46.16 + ], + [ + 133.74, + 46.17 + ], + [ + 133.75, + 46.17 + ], + [ + 133.79, + 46.19 + ], + [ + 133.79, + 46.21 + ], + [ + 133.8, + 46.23 + ], + [ + 133.82, + 46.23 + ], + [ + 133.83, + 46.21 + ], + [ + 133.83, + 46.2 + ], + [ + 133.84, + 46.2 + ], + [ + 133.85, + 46.22 + ], + [ + 133.87, + 46.23 + ], + [ + 133.87, + 46.24 + ], + [ + 133.86, + 46.24 + ], + [ + 133.85, + 46.25 + ], + [ + 133.87, + 46.25 + ], + [ + 133.91, + 46.27 + ], + [ + 133.91, + 46.28 + ], + [ + 133.9, + 46.29 + ], + [ + 133.91, + 46.31 + ], + [ + 133.91, + 46.32 + ], + [ + 133.91, + 46.33 + ], + [ + 133.9, + 46.33 + ], + [ + 133.89, + 46.33 + ], + [ + 133.87, + 46.33 + ], + [ + 133.86, + 46.35 + ], + [ + 133.88, + 46.36 + ], + [ + 133.89, + 46.37 + ], + [ + 133.9, + 46.37 + ], + [ + 133.91, + 46.37 + ], + [ + 133.94, + 46.38 + ], + [ + 133.93, + 46.41 + ], + [ + 133.92, + 46.43 + ], + [ + 133.91, + 46.44 + ], + [ + 133.89, + 46.45 + ], + [ + 133.88, + 46.45 + ], + [ + 133.87, + 46.45 + ], + [ + 133.86, + 46.44 + ], + [ + 133.85, + 46.44 + ], + [ + 133.84, + 46.46 + ], + [ + 133.84, + 46.47 + ], + [ + 133.86, + 46.49 + ], + [ + 133.86, + 46.5 + ], + [ + 133.87, + 46.51 + ], + [ + 133.88, + 46.52 + ], + [ + 133.89, + 46.54 + ], + [ + 133.9, + 46.55 + ], + [ + 133.9, + 46.56 + ], + [ + 133.9, + 46.57 + ], + [ + 133.91, + 46.58 + ], + [ + 133.92, + 46.6 + ], + [ + 133.94, + 46.61 + ], + [ + 133.95, + 46.61 + ], + [ + 133.96, + 46.62 + ], + [ + 133.97, + 46.63 + ], + [ + 133.98, + 46.63 + ], + [ + 133.99, + 46.64 + ], + [ + 134, + 46.65 + ], + [ + 134.02, + 46.69 + ], + [ + 134.02, + 46.7 + ], + [ + 134.02, + 46.71 + ], + [ + 134.02, + 46.72 + ], + [ + 134.02, + 46.73 + ], + [ + 134.02, + 46.75 + ], + [ + 134.04, + 46.76 + ], + [ + 134.05, + 46.78 + ], + [ + 134.04, + 46.79 + ], + [ + 134.02, + 46.81 + ], + [ + 134.02, + 46.83 + ], + [ + 134.03, + 46.84 + ], + [ + 134.03, + 46.86 + ], + [ + 134.04, + 46.89 + ], + [ + 134.04, + 46.9 + ], + [ + 134.05, + 46.91 + ], + [ + 134.06, + 46.93 + ], + [ + 134.07, + 46.94 + ], + [ + 134.07, + 46.95 + ], + [ + 134.06, + 46.96 + ], + [ + 134.09, + 47 + ], + [ + 134.1, + 47.02 + ], + [ + 134.11, + 47.04 + ], + [ + 134.11, + 47.06 + ], + [ + 134.13, + 47.07 + ], + [ + 134.14, + 47.09 + ], + [ + 134.15, + 47.1 + ], + [ + 134.18, + 47.1 + ], + [ + 134.22, + 47.11 + ], + [ + 134.22, + 47.12 + ], + [ + 134.22, + 47.14 + ], + [ + 134.22, + 47.15 + ], + [ + 134.22, + 47.16 + ], + [ + 134.22, + 47.17 + ], + [ + 134.22, + 47.18 + ], + [ + 134.22, + 47.19 + ], + [ + 134.2, + 47.21 + ], + [ + 134.19, + 47.22 + ], + [ + 134.18, + 47.23 + ], + [ + 134.15, + 47.25 + ], + [ + 134.15, + 47.26 + ], + [ + 134.16, + 47.29 + ], + [ + 134.18, + 47.32 + ], + [ + 134.18, + 47.33 + ], + [ + 134.2, + 47.34 + ], + [ + 134.21, + 47.35 + ], + [ + 134.24, + 47.35 + ], + [ + 134.25, + 47.36 + ], + [ + 134.26, + 47.4 + ], + [ + 134.29, + 47.41 + ], + [ + 134.3, + 47.42 + ], + [ + 134.31, + 47.43 + ], + [ + 134.33, + 47.44 + ], + [ + 134.34, + 47.44 + ], + [ + 134.39, + 47.44 + ], + [ + 134.41, + 47.44 + ], + [ + 134.44, + 47.44 + ], + [ + 134.45, + 47.45 + ], + [ + 134.47, + 47.45 + ], + [ + 134.48, + 47.44 + ], + [ + 134.5, + 47.45 + ], + [ + 134.51, + 47.46 + ], + [ + 134.52, + 47.47 + ], + [ + 134.53, + 47.47 + ], + [ + 134.55, + 47.47 + ], + [ + 134.56, + 47.48 + ], + [ + 134.57, + 47.49 + ], + [ + 134.59, + 47.53 + ], + [ + 134.6, + 47.53 + ], + [ + 134.62, + 47.54 + ], + [ + 134.63, + 47.56 + ], + [ + 134.64, + 47.57 + ], + [ + 134.68, + 47.58 + ], + [ + 134.68, + 47.6 + ], + [ + 134.68, + 47.63 + ], + [ + 134.69, + 47.64 + ], + [ + 134.7, + 47.65 + ], + [ + 134.72, + 47.66 + ], + [ + 134.74, + 47.68 + ], + [ + 134.75, + 47.69 + ], + [ + 134.75, + 47.7 + ], + [ + 134.77, + 47.71 + ], + [ + 134.77, + 47.72 + ], + [ + 134.77, + 47.75 + ], + [ + 134.76, + 47.76 + ], + [ + 134.74, + 47.77 + ], + [ + 134.73, + 47.78 + ], + [ + 134.72, + 47.79 + ], + [ + 134.69, + 47.81 + ], + [ + 134.68, + 47.81 + ], + [ + 134.67, + 47.85 + ], + [ + 134.66, + 47.86 + ], + [ + 134.67, + 47.88 + ], + [ + 134.66, + 47.89 + ], + [ + 134.65, + 47.9 + ], + [ + 134.64, + 47.9 + ], + [ + 134.63, + 47.9 + ], + [ + 134.61, + 47.9 + ], + [ + 134.6, + 47.92 + ], + [ + 134.6, + 47.94 + ], + [ + 134.58, + 47.96 + ], + [ + 134.56, + 47.97 + ], + [ + 134.55, + 47.99 + ], + [ + 134.55, + 48.02 + ], + [ + 134.54, + 48.03 + ], + [ + 134.55, + 48.04 + ], + [ + 134.56, + 48.04 + ], + [ + 134.57, + 48.04 + ], + [ + 134.57, + 48.06 + ], + [ + 134.59, + 48.07 + ], + [ + 134.6, + 48.08 + ], + [ + 134.62, + 48.09 + ], + [ + 134.63, + 48.1 + ], + [ + 134.63, + 48.12 + ], + [ + 134.64, + 48.13 + ], + [ + 134.67, + 48.14 + ], + [ + 134.67, + 48.18 + ], + [ + 134.68, + 48.19 + ], + [ + 134.74, + 48.28 + ], + [ + 134.72, + 48.28 + ], + [ + 134.77, + 48.36 + ], + [ + 134.88, + 48.41 + ], + [ + 134.55, + 48.41 + ], + [ + 134.53, + 48.42 + ], + [ + 134.2, + 48.38 + ], + [ + 134.19, + 48.38 + ], + [ + 134.07, + 48.34 + ], + [ + 134.02, + 48.34 + ], + [ + 134.02, + 48.33 + ], + [ + 134, + 48.3 + ], + [ + 133.98, + 48.3 + ], + [ + 133.96, + 48.3 + ], + [ + 133.94, + 48.3 + ], + [ + 133.91, + 48.29 + ], + [ + 133.9, + 48.29 + ], + [ + 133.85, + 48.28 + ], + [ + 133.83, + 48.27 + ], + [ + 133.81, + 48.27 + ], + [ + 133.8, + 48.26 + ], + [ + 133.73, + 48.25 + ], + [ + 133.66, + 48.19 + ], + [ + 133.65, + 48.19 + ], + [ + 133.58, + 48.19 + ], + [ + 133.57, + 48.14 + ], + [ + 133.56, + 48.13 + ], + [ + 133.45, + 48.11 + ], + [ + 133.44, + 48.11 + ], + [ + 133.35, + 48.12 + ], + [ + 133.24, + 48.1 + ], + [ + 132.84, + 47.97 + ], + [ + 132.84, + 47.96 + ], + [ + 132.67, + 47.96 + ], + [ + 132.66, + 47.95 + ], + [ + 132.59, + 47.77 + ], + [ + 132.6, + 47.75 + ], + [ + 132.6, + 47.74 + ], + [ + 132.44, + 47.73 + ], + [ + 132.43, + 47.73 + ], + [ + 132.39, + 47.75 + ], + [ + 132.37, + 47.75 + ], + [ + 132.28, + 47.74 + ], + [ + 132.26, + 47.74 + ], + [ + 132.28, + 47.72 + ], + [ + 132.27, + 47.72 + ], + [ + 132.23, + 47.71 + ], + [ + 132.15, + 47.7 + ], + [ + 132.14, + 47.7 + ], + [ + 132.12, + 47.7 + ], + [ + 132.1, + 47.7 + ], + [ + 132.06, + 47.7 + ], + [ + 132.05, + 47.7 + ], + [ + 132.03, + 47.72 + ], + [ + 131.99, + 47.71 + ], + [ + 131.99, + 47.69 + ], + [ + 131.99, + 47.68 + ], + [ + 131.97, + 47.68 + ], + [ + 131.93, + 47.67 + ], + [ + 131.92, + 47.67 + ], + [ + 131.91, + 47.68 + ], + [ + 131.91, + 47.69 + ], + [ + 131.86, + 47.67 + ], + [ + 131.85, + 47.67 + ], + [ + 131.66, + 47.68 + ], + [ + 131.65, + 47.68 + ], + [ + 131.6, + 47.66 + ], + [ + 131.59, + 47.66 + ], + [ + 131.55, + 47.68 + ], + [ + 131.55, + 47.69 + ], + [ + 131.55, + 47.74 + ], + [ + 131.48, + 47.74 + ], + [ + 131.43, + 47.77 + ], + [ + 131.37, + 47.73 + ], + [ + 131.31, + 47.73 + ], + [ + 131.26, + 47.75 + ], + [ + 131.21, + 47.72 + ], + [ + 131.2, + 47.71 + ], + [ + 131.11, + 47.69 + ], + [ + 131.1, + 47.68 + ], + [ + 131.03, + 47.69 + ], + [ + 131.02, + 47.69 + ], + [ + 130.98, + 47.7 + ], + [ + 130.97, + 47.71 + ], + [ + 130.95, + 47.83 + ], + [ + 130.94, + 47.83 + ], + [ + 130.92, + 47.86 + ], + [ + 130.88, + 47.92 + ], + [ + 130.87, + 47.92 + ], + [ + 130.86, + 47.94 + ], + [ + 130.85, + 47.95 + ], + [ + 130.83, + 47.95 + ], + [ + 130.82, + 47.96 + ], + [ + 130.81, + 47.96 + ], + [ + 130.8, + 47.97 + ], + [ + 130.78, + 47.98 + ], + [ + 130.77, + 47.99 + ], + [ + 130.76, + 48 + ], + [ + 130.74, + 48 + ], + [ + 130.73, + 48.03 + ], + [ + 130.72, + 48.03 + ], + [ + 130.69, + 48.04 + ], + [ + 130.69, + 48.05 + ], + [ + 130.68, + 48.06 + ], + [ + 130.68, + 48.07 + ], + [ + 130.67, + 48.09 + ], + [ + 130.65, + 48.1 + ], + [ + 130.66, + 48.12 + ], + [ + 130.67, + 48.13 + ], + [ + 130.69, + 48.14 + ], + [ + 130.71, + 48.16 + ], + [ + 130.73, + 48.17 + ], + [ + 130.75, + 48.18 + ], + [ + 130.76, + 48.22 + ], + [ + 130.76, + 48.23 + ], + [ + 130.76, + 48.25 + ], + [ + 130.78, + 48.25 + ], + [ + 130.8, + 48.26 + ], + [ + 130.81, + 48.27 + ], + [ + 130.81, + 48.28 + ], + [ + 130.82, + 48.29 + ], + [ + 130.83, + 48.3 + ], + [ + 130.83, + 48.31 + ], + [ + 130.82, + 48.33 + ], + [ + 130.81, + 48.34 + ], + [ + 130.8, + 48.35 + ], + [ + 130.78, + 48.35 + ], + [ + 130.77, + 48.36 + ], + [ + 130.76, + 48.37 + ], + [ + 130.75, + 48.4 + ], + [ + 130.75, + 48.41 + ], + [ + 130.74, + 48.42 + ], + [ + 130.73, + 48.43 + ], + [ + 130.73, + 48.44 + ], + [ + 130.73, + 48.45 + ], + [ + 130.74, + 48.46 + ], + [ + 130.75, + 48.47 + ], + [ + 130.76, + 48.5 + ], + [ + 130.75, + 48.5 + ], + [ + 130.74, + 48.51 + ], + [ + 130.73, + 48.51 + ], + [ + 130.67, + 48.5 + ], + [ + 130.66, + 48.49 + ], + [ + 130.63, + 48.49 + ], + [ + 130.62, + 48.49 + ], + [ + 130.6, + 48.58 + ], + [ + 130.59, + 48.6 + ], + [ + 130.54, + 48.6 + ], + [ + 130.53, + 48.6 + ], + [ + 130.52, + 48.63 + ], + [ + 130.53, + 48.64 + ], + [ + 130.55, + 48.66 + ], + [ + 130.55, + 48.67 + ], + [ + 130.57, + 48.71 + ], + [ + 130.58, + 48.71 + ], + [ + 130.59, + 48.75 + ], + [ + 130.6, + 48.76 + ], + [ + 130.62, + 48.79 + ], + [ + 130.63, + 48.8 + ], + [ + 130.64, + 48.82 + ], + [ + 130.66, + 48.83 + ], + [ + 130.67, + 48.84 + ], + [ + 130.68, + 48.85 + ], + [ + 130.68, + 48.86 + ], + [ + 130.68, + 48.87 + ], + [ + 130.58, + 48.87 + ], + [ + 130.56, + 48.86 + ], + [ + 130.5, + 48.86 + ], + [ + 130.49, + 48.86 + ], + [ + 130.46, + 48.9 + ], + [ + 130.44, + 48.9 + ], + [ + 130.41, + 48.9 + ], + [ + 130.4, + 48.9 + ], + [ + 130.35, + 48.89 + ], + [ + 130.34, + 48.89 + ], + [ + 130.31, + 48.88 + ], + [ + 130.3, + 48.87 + ], + [ + 130.24, + 48.86 + ], + [ + 130.19, + 48.9 + ], + [ + 130.18, + 48.91 + ], + [ + 130.14, + 48.93 + ], + [ + 130.12, + 48.94 + ], + [ + 130.08, + 48.96 + ], + [ + 130.07, + 48.97 + ], + [ + 130.02, + 49 + ], + [ + 130.01, + 49.01 + ], + [ + 129.95, + 49.03 + ], + [ + 129.94, + 49.03 + ], + [ + 129.91, + 49.04 + ], + [ + 129.91, + 49.06 + ], + [ + 129.9, + 49.1 + ], + [ + 129.85, + 49.12 + ], + [ + 129.86, + 49.14 + ], + [ + 129.85, + 49.17 + ], + [ + 129.85, + 49.18 + ], + [ + 129.8, + 49.18 + ], + [ + 129.79, + 49.18 + ], + [ + 129.77, + 49.18 + ], + [ + 129.76, + 49.19 + ], + [ + 129.76, + 49.2 + ], + [ + 129.74, + 49.27 + ], + [ + 129.73, + 49.28 + ], + [ + 129.7, + 49.29 + ], + [ + 129.7, + 49.3 + ], + [ + 129.64, + 49.29 + ], + [ + 129.63, + 49.28 + ], + [ + 129.57, + 49.28 + ], + [ + 129.56, + 49.29 + ], + [ + 129.54, + 49.38 + ], + [ + 129.54, + 49.39 + ], + [ + 129.46, + 49.43 + ], + [ + 129.45, + 49.43 + ], + [ + 129.41, + 49.44 + ], + [ + 129.39, + 49.43 + ], + [ + 129.38, + 49.36 + ], + [ + 129.37, + 49.36 + ], + [ + 129.34, + 49.35 + ], + [ + 129.33, + 49.35 + ], + [ + 129.31, + 49.36 + ], + [ + 129.3, + 49.36 + ], + [ + 129.27, + 49.38 + ], + [ + 129.26, + 49.39 + ], + [ + 129.18, + 49.39 + ], + [ + 129.17, + 49.38 + ], + [ + 129.15, + 49.37 + ], + [ + 129.15, + 49.36 + ], + [ + 129.08, + 49.35 + ], + [ + 129.07, + 49.36 + ], + [ + 129.06, + 49.37 + ], + [ + 129.05, + 49.38 + ], + [ + 129.04, + 49.41 + ], + [ + 128.94, + 49.46 + ], + [ + 128.93, + 49.46 + ], + [ + 128.87, + 49.49 + ], + [ + 128.85, + 49.49 + ], + [ + 128.8, + 49.48 + ], + [ + 128.79, + 49.47 + ], + [ + 128.76, + 49.48 + ], + [ + 128.75, + 49.48 + ], + [ + 128.78, + 49.54 + ], + [ + 128.79, + 49.54 + ], + [ + 128.8, + 49.55 + ], + [ + 128.8, + 49.56 + ], + [ + 128.79, + 49.58 + ], + [ + 128.78, + 49.58 + ], + [ + 128.77, + 49.58 + ], + [ + 128.76, + 49.59 + ], + [ + 128.73, + 49.59 + ], + [ + 128.73, + 49.57 + ], + [ + 128.65, + 49.57 + ], + [ + 128.64, + 49.58 + ], + [ + 128.5, + 49.59 + ], + [ + 128.48, + 49.59 + ], + [ + 128.47, + 49.59 + ], + [ + 128.46, + 49.59 + ], + [ + 128.42, + 49.59 + ], + [ + 128.41, + 49.59 + ], + [ + 128.4, + 49.59 + ], + [ + 128.37, + 49.59 + ], + [ + 128.35, + 49.55 + ], + [ + 128.34, + 49.54 + ], + [ + 128.31, + 49.55 + ], + [ + 128.29, + 49.56 + ], + [ + 128.28, + 49.56 + ], + [ + 128.27, + 49.56 + ], + [ + 128.25, + 49.56 + ], + [ + 128.23, + 49.56 + ], + [ + 128.23, + 49.55 + ], + [ + 128.22, + 49.55 + ], + [ + 128.17, + 49.54 + ], + [ + 128.15, + 49.54 + ], + [ + 128.13, + 49.55 + ], + [ + 128.12, + 49.55 + ], + [ + 128.09, + 49.55 + ], + [ + 128.08, + 49.55 + ], + [ + 128.03, + 49.56 + ], + [ + 128.02, + 49.56 + ], + [ + 128.02, + 49.57 + ], + [ + 128, + 49.58 + ], + [ + 127.99, + 49.6 + ], + [ + 127.96, + 49.6 + ], + [ + 127.91, + 49.57 + ], + [ + 127.9, + 49.57 + ], + [ + 127.81, + 49.59 + ], + [ + 127.78, + 49.62 + ], + [ + 127.77, + 49.63 + ], + [ + 127.76, + 49.63 + ], + [ + 127.73, + 49.65 + ], + [ + 127.72, + 49.65 + ], + [ + 127.69, + 49.67 + ], + [ + 127.68, + 49.67 + ], + [ + 127.67, + 49.7 + ], + [ + 127.67, + 49.71 + ], + [ + 127.67, + 49.72 + ], + [ + 127.67, + 49.75 + ], + [ + 127.67, + 49.76 + ], + [ + 127.53, + 49.81 + ], + [ + 127.54, + 49.9 + ], + [ + 127.54, + 49.92 + ], + [ + 127.54, + 49.93 + ], + [ + 127.53, + 49.94 + ], + [ + 127.5, + 49.97 + ], + [ + 127.5, + 49.98 + ], + [ + 127.5, + 50.04 + ], + [ + 127.51, + 50.07 + ], + [ + 127.52, + 50.08 + ], + [ + 127.56, + 50.12 + ], + [ + 127.57, + 50.13 + ], + [ + 127.58, + 50.14 + ], + [ + 127.59, + 50.16 + ], + [ + 127.61, + 50.23 + ], + [ + 127.58, + 50.24 + ], + [ + 127.51, + 50.25 + ], + [ + 127.5, + 50.26 + ], + [ + 127.47, + 50.26 + ], + [ + 127.45, + 50.27 + ], + [ + 127.4, + 50.28 + ], + [ + 127.39, + 50.28 + ], + [ + 127.36, + 50.3 + ], + [ + 127.35, + 50.31 + ], + [ + 127.33, + 50.33 + ], + [ + 127.33, + 50.36 + ], + [ + 127.34, + 50.37 + ], + [ + 127.35, + 50.39 + ], + [ + 127.36, + 50.39 + ], + [ + 127.36, + 50.41 + ], + [ + 127.36, + 50.44 + ], + [ + 127.32, + 50.45 + ], + [ + 127.31, + 50.45 + ], + [ + 127.3, + 50.45 + ], + [ + 127.29, + 50.48 + ], + [ + 127.3, + 50.49 + ], + [ + 127.31, + 50.5 + ], + [ + 127.32, + 50.53 + ], + [ + 127.33, + 50.54 + ], + [ + 127.37, + 50.57 + ], + [ + 127.36, + 50.59 + ], + [ + 127.35, + 50.6 + ], + [ + 127.34, + 50.61 + ], + [ + 127.33, + 50.62 + ], + [ + 127.32, + 50.63 + ], + [ + 127.3, + 50.65 + ], + [ + 127.29, + 50.66 + ], + [ + 127.28, + 50.69 + ], + [ + 127.3, + 50.73 + ], + [ + 127.3, + 50.74 + ], + [ + 127.3, + 50.75 + ], + [ + 127.29, + 50.76 + ], + [ + 127.27, + 50.76 + ], + [ + 127.26, + 50.76 + ], + [ + 127.24, + 50.77 + ], + [ + 127.23, + 50.77 + ], + [ + 127.22, + 50.79 + ], + [ + 127.21, + 50.8 + ], + [ + 127.2, + 50.81 + ], + [ + 127.2, + 50.83 + ], + [ + 127.19, + 50.84 + ], + [ + 127.18, + 50.86 + ], + [ + 127.17, + 50.86 + ], + [ + 127.17, + 50.87 + ], + [ + 127.15, + 50.89 + ], + [ + 127.15, + 50.9 + ], + [ + 127.14, + 50.9 + ], + [ + 127.14, + 50.91 + ], + [ + 127.12, + 50.92 + ], + [ + 127.11, + 50.93 + ], + [ + 127.1, + 50.94 + ], + [ + 127.07, + 50.95 + ], + [ + 127.04, + 50.96 + ], + [ + 127.03, + 50.97 + ], + [ + 127.02, + 50.98 + ], + [ + 127.02, + 50.99 + ], + [ + 127.01, + 50.99 + ], + [ + 127.01, + 51 + ], + [ + 127, + 51.01 + ], + [ + 126.99, + 51.02 + ], + [ + 126.97, + 51.04 + ], + [ + 126.96, + 51.04 + ], + [ + 126.94, + 51.05 + ], + [ + 126.93, + 51.05 + ], + [ + 126.91, + 51.15 + ], + [ + 126.91, + 51.16 + ], + [ + 126.9, + 51.21 + ], + [ + 126.91, + 51.23 + ], + [ + 126.92, + 51.25 + ], + [ + 126.94, + 51.26 + ], + [ + 126.95, + 51.27 + ], + [ + 126.97, + 51.29 + ], + [ + 126.97, + 51.3 + ], + [ + 126.98, + 51.32 + ], + [ + 126.97, + 51.33 + ], + [ + 126.96, + 51.33 + ], + [ + 126.95, + 51.33 + ], + [ + 126.9, + 51.34 + ], + [ + 126.92, + 51.35 + ], + [ + 126.92, + 51.36 + ], + [ + 126.92, + 51.37 + ], + [ + 126.91, + 51.4 + ], + [ + 126.9, + 51.41 + ], + [ + 126.82, + 51.42 + ], + [ + 126.8, + 51.42 + ], + [ + 126.79, + 51.43 + ], + [ + 126.78, + 51.44 + ], + [ + 126.79, + 51.46 + ], + [ + 126.8, + 51.47 + ], + [ + 126.81, + 51.5 + ], + [ + 126.82, + 51.5 + ], + [ + 126.83, + 51.52 + ], + [ + 126.84, + 51.53 + ], + [ + 126.81, + 51.54 + ], + [ + 126.8, + 51.55 + ], + [ + 126.77, + 51.56 + ], + [ + 126.75, + 51.56 + ], + [ + 126.72, + 51.57 + ], + [ + 126.71, + 51.57 + ], + [ + 126.69, + 51.58 + ], + [ + 126.68, + 51.59 + ], + [ + 126.67, + 51.59 + ], + [ + 126.67, + 51.6 + ], + [ + 126.68, + 51.61 + ], + [ + 126.72, + 51.63 + ], + [ + 126.73, + 51.64 + ], + [ + 126.73, + 51.66 + ], + [ + 126.73, + 51.67 + ], + [ + 126.72, + 51.69 + ], + [ + 126.73, + 51.7 + ], + [ + 126.72, + 51.72 + ], + [ + 126.7, + 51.73 + ], + [ + 126.68, + 51.73 + ], + [ + 126.67, + 51.73 + ], + [ + 126.66, + 51.73 + ], + [ + 126.66, + 51.75 + ], + [ + 126.66, + 51.76 + ], + [ + 126.65, + 51.76 + ], + [ + 126.64, + 51.77 + ], + [ + 126.62, + 51.77 + ], + [ + 126.61, + 51.79 + ], + [ + 126.6, + 51.8 + ], + [ + 126.59, + 51.81 + ], + [ + 126.58, + 51.82 + ], + [ + 126.57, + 51.83 + ], + [ + 126.55, + 51.86 + ], + [ + 126.55, + 51.87 + ], + [ + 126.54, + 51.88 + ], + [ + 126.53, + 51.89 + ], + [ + 126.52, + 51.9 + ], + [ + 126.51, + 51.9 + ], + [ + 126.51, + 51.91 + ], + [ + 126.5, + 51.92 + ], + [ + 126.5, + 51.93 + ], + [ + 126.48, + 51.93 + ], + [ + 126.46, + 51.94 + ], + [ + 126.46, + 51.95 + ], + [ + 126.46, + 51.97 + ], + [ + 126.46, + 51.98 + ], + [ + 126.45, + 51.99 + ], + [ + 126.44, + 52.01 + ], + [ + 126.44, + 52.03 + ], + [ + 126.45, + 52.03 + ], + [ + 126.48, + 52.04 + ], + [ + 126.5, + 52.03 + ], + [ + 126.53, + 52.07 + ], + [ + 126.54, + 52.1 + ], + [ + 126.55, + 52.11 + ], + [ + 126.55, + 52.13 + ], + [ + 126.53, + 52.14 + ], + [ + 126.5, + 52.16 + ], + [ + 126.48, + 52.16 + ], + [ + 126.47, + 52.16 + ], + [ + 126.46, + 52.16 + ], + [ + 126.43, + 52.17 + ], + [ + 126.41, + 52.18 + ], + [ + 126.4, + 52.18 + ], + [ + 126.35, + 52.19 + ], + [ + 126.34, + 52.19 + ], + [ + 126.32, + 52.2 + ], + [ + 126.31, + 52.2 + ], + [ + 126.3, + 52.21 + ], + [ + 126.31, + 52.23 + ], + [ + 126.32, + 52.25 + ], + [ + 126.34, + 52.26 + ], + [ + 126.36, + 52.26 + ], + [ + 126.38, + 52.27 + ], + [ + 126.4, + 52.28 + ], + [ + 126.42, + 52.3 + ], + [ + 126.33, + 52.3 + ], + [ + 126.33, + 52.31 + ], + [ + 126.32, + 52.32 + ], + [ + 126.32, + 52.34 + ], + [ + 126.34, + 52.35 + ], + [ + 126.34, + 52.4 + ], + [ + 126.33, + 52.41 + ], + [ + 126.32, + 52.42 + ], + [ + 126.31, + 52.43 + ], + [ + 126.3, + 52.44 + ], + [ + 126.28, + 52.45 + ], + [ + 126.27, + 52.47 + ], + [ + 126.25, + 52.48 + ], + [ + 126.24, + 52.47 + ], + [ + 126.22, + 52.47 + ], + [ + 126.21, + 52.47 + ], + [ + 126.18, + 52.49 + ], + [ + 126.19, + 52.5 + ], + [ + 126.2, + 52.51 + ], + [ + 126.2, + 52.52 + ], + [ + 126.2, + 52.53 + ], + [ + 126.19, + 52.54 + ], + [ + 126.18, + 52.54 + ], + [ + 126.17, + 52.55 + ], + [ + 126.16, + 52.56 + ], + [ + 126.13, + 52.57 + ], + [ + 126.11, + 52.58 + ], + [ + 126.1, + 52.59 + ], + [ + 126.09, + 52.59 + ], + [ + 126.06, + 52.6 + ], + [ + 126.05, + 52.6 + ], + [ + 126.04, + 52.58 + ], + [ + 126.04, + 52.59 + ], + [ + 126.01, + 52.6 + ], + [ + 126, + 52.58 + ], + [ + 125.99, + 52.59 + ], + [ + 125.99, + 52.6 + ], + [ + 125.97, + 52.61 + ], + [ + 125.96, + 52.63 + ], + [ + 125.96, + 52.64 + ], + [ + 125.96, + 52.65 + ], + [ + 125.97, + 52.66 + ], + [ + 125.98, + 52.67 + ], + [ + 126, + 52.67 + ], + [ + 126.06, + 52.67 + ], + [ + 126.07, + 52.69 + ], + [ + 126.06, + 52.7 + ], + [ + 126.05, + 52.71 + ], + [ + 126.04, + 52.72 + ], + [ + 126.04, + 52.73 + ], + [ + 126.05, + 52.75 + ], + [ + 126.07, + 52.75 + ], + [ + 126.08, + 52.75 + ], + [ + 126.09, + 52.75 + ], + [ + 126.1, + 52.75 + ], + [ + 126.1, + 52.76 + ], + [ + 126.11, + 52.76 + ], + [ + 126.11, + 52.77 + ], + [ + 126.09, + 52.78 + ], + [ + 126.07, + 52.79 + ], + [ + 126.04, + 52.8 + ], + [ + 126.03, + 52.8 + ], + [ + 126.01, + 52.79 + ], + [ + 125.99, + 52.77 + ], + [ + 125.99, + 52.76 + ], + [ + 125.92, + 52.78 + ], + [ + 125.92, + 52.79 + ], + [ + 125.93, + 52.8 + ], + [ + 125.91, + 52.81 + ], + [ + 125.9, + 52.82 + ], + [ + 125.89, + 52.83 + ], + [ + 125.88, + 52.84 + ], + [ + 125.87, + 52.84 + ], + [ + 125.86, + 52.85 + ], + [ + 125.85, + 52.86 + ], + [ + 125.84, + 52.87 + ], + [ + 125.84, + 52.88 + ], + [ + 125.85, + 52.89 + ], + [ + 125.82, + 52.9 + ], + [ + 125.8, + 52.89 + ], + [ + 125.78, + 52.89 + ], + [ + 125.77, + 52.9 + ], + [ + 125.76, + 52.9 + ], + [ + 125.76, + 52.89 + ], + [ + 125.75, + 52.88 + ], + [ + 125.73, + 52.88 + ], + [ + 125.72, + 52.88 + ], + [ + 125.71, + 52.88 + ], + [ + 125.68, + 52.86 + ], + [ + 125.66, + 52.86 + ], + [ + 125.65, + 52.91 + ], + [ + 125.66, + 52.92 + ], + [ + 125.69, + 52.93 + ], + [ + 125.71, + 52.93 + ], + [ + 125.72, + 52.94 + ], + [ + 125.73, + 52.94 + ], + [ + 125.72, + 52.96 + ], + [ + 125.72, + 52.97 + ], + [ + 125.74, + 52.98 + ], + [ + 125.74, + 52.99 + ], + [ + 125.73, + 52.99 + ], + [ + 125.71, + 53 + ], + [ + 125.67, + 53.01 + ], + [ + 125.66, + 53.02 + ], + [ + 125.64, + 53.03 + ], + [ + 125.63, + 53.05 + ], + [ + 125.63, + 53.07 + ], + [ + 125.61, + 53.08 + ], + [ + 125.59, + 53.08 + ], + [ + 125.56, + 53.07 + ], + [ + 125.55, + 53.07 + ], + [ + 125.54, + 53.06 + ], + [ + 125.5, + 53.05 + ], + [ + 125.5, + 53.06 + ], + [ + 125.5, + 53.07 + ], + [ + 125.49, + 53.08 + ], + [ + 125.49, + 53.1 + ], + [ + 125.48, + 53.1 + ], + [ + 125.46, + 53.1 + ], + [ + 125.43, + 53.11 + ], + [ + 125.42, + 53.12 + ], + [ + 125.4, + 53.12 + ], + [ + 125.39, + 53.13 + ], + [ + 125.38, + 53.13 + ], + [ + 125.33, + 53.14 + ], + [ + 125.32, + 53.14 + ], + [ + 125.28, + 53.16 + ], + [ + 125.27, + 53.17 + ], + [ + 125.25, + 53.17 + ], + [ + 125.23, + 53.18 + ], + [ + 125.21, + 53.19 + ], + [ + 125.18, + 53.2 + ], + [ + 125.14, + 53.2 + ], + [ + 125.13, + 53.2 + ], + [ + 125.12, + 53.2 + ], + [ + 125.1, + 53.2 + ], + [ + 125.07, + 53.2 + ], + [ + 125.06, + 53.2 + ], + [ + 125.04, + 53.2 + ], + [ + 125.03, + 53.2 + ], + [ + 125, + 53.2 + ], + [ + 124.93, + 53.18 + ], + [ + 124.9, + 53.17 + ], + [ + 124.88, + 53.17 + ], + [ + 124.88, + 53.16 + ], + [ + 124.88, + 53.15 + ], + [ + 124.89, + 53.14 + ], + [ + 124.89, + 53.1 + ], + [ + 124.88, + 53.1 + ], + [ + 124.84, + 53.12 + ], + [ + 124.84, + 53.13 + ], + [ + 124.83, + 53.14 + ], + [ + 124.81, + 53.14 + ], + [ + 124.8, + 53.14 + ], + [ + 124.77, + 53.14 + ], + [ + 124.76, + 53.14 + ], + [ + 124.75, + 53.14 + ], + [ + 124.69, + 53.2 + ], + [ + 124.65, + 53.21 + ], + [ + 124.58, + 53.21 + ], + [ + 124.57, + 53.21 + ], + [ + 124.48, + 53.22 + ], + [ + 124.45, + 53.22 + ], + [ + 124.42, + 53.23 + ], + [ + 124.42, + 53.24 + ], + [ + 124.41, + 53.24 + ], + [ + 124.39, + 53.25 + ], + [ + 124.38, + 53.25 + ], + [ + 124.37, + 53.26 + ], + [ + 124.36, + 53.28 + ], + [ + 124.34, + 53.29 + ], + [ + 124.33, + 53.3 + ], + [ + 124.33, + 53.31 + ], + [ + 124.33, + 53.32 + ], + [ + 124.3, + 53.34 + ], + [ + 124.28, + 53.35 + ], + [ + 124.27, + 53.35 + ], + [ + 124.26, + 53.36 + ], + [ + 124.24, + 53.37 + ], + [ + 124.22, + 53.38 + ], + [ + 124.18, + 53.37 + ], + [ + 124.16, + 53.36 + ], + [ + 124.15, + 53.36 + ], + [ + 124.14, + 53.35 + ], + [ + 124.11, + 53.35 + ], + [ + 124.09, + 53.36 + ], + [ + 124.08, + 53.36 + ], + [ + 124.07, + 53.37 + ], + [ + 124.08, + 53.38 + ], + [ + 124.07, + 53.39 + ], + [ + 124.06, + 53.4 + ], + [ + 124, + 53.4 + ], + [ + 124, + 53.41 + ], + [ + 123.99, + 53.42 + ], + [ + 123.98, + 53.43 + ], + [ + 123.99, + 53.44 + ], + [ + 123.96, + 53.44 + ], + [ + 123.94, + 53.45 + ], + [ + 123.93, + 53.46 + ], + [ + 123.91, + 53.46 + ], + [ + 123.9, + 53.47 + ], + [ + 123.89, + 53.47 + ], + [ + 123.89, + 53.48 + ], + [ + 123.87, + 53.48 + ], + [ + 123.85, + 53.49 + ], + [ + 123.83, + 53.49 + ], + [ + 123.77, + 53.49 + ], + [ + 123.75, + 53.5 + ], + [ + 123.74, + 53.5 + ], + [ + 123.72, + 53.49 + ], + [ + 123.71, + 53.49 + ], + [ + 123.69, + 53.49 + ], + [ + 123.68, + 53.51 + ], + [ + 123.67, + 53.52 + ], + [ + 123.65, + 53.53 + ], + [ + 123.64, + 53.54 + ], + [ + 123.63, + 53.54 + ], + [ + 123.6, + 53.55 + ], + [ + 123.58, + 53.55 + ], + [ + 123.57, + 53.52 + ], + [ + 123.57, + 53.51 + ], + [ + 123.56, + 53.5 + ], + [ + 123.55, + 53.5 + ], + [ + 123.53, + 53.5 + ], + [ + 123.54, + 53.52 + ], + [ + 123.55, + 53.53 + ], + [ + 123.54, + 53.55 + ], + [ + 123.53, + 53.55 + ], + [ + 123.5, + 53.55 + ], + [ + 123.49, + 53.54 + ], + [ + 123.48, + 53.53 + ], + [ + 123.48, + 53.52 + ], + [ + 123.49, + 53.51 + ], + [ + 123.5, + 53.5 + ], + [ + 123.48, + 53.5 + ], + [ + 123.46, + 53.51 + ], + [ + 123.46, + 53.52 + ], + [ + 123.46, + 53.53 + ], + [ + 123.45, + 53.53 + ], + [ + 123.44, + 53.53 + ], + [ + 123.43, + 53.53 + ], + [ + 123.41, + 53.54 + ], + [ + 123.37, + 53.54 + ], + [ + 123.34, + 53.55 + ], + [ + 123.32, + 53.55 + ], + [ + 123.31, + 53.56 + ], + [ + 123.29, + 53.56 + ], + [ + 123.28, + 53.56 + ], + [ + 123.26, + 53.56 + ], + [ + 123.24, + 53.56 + ], + [ + 123.24, + 53.55 + ], + [ + 123.22, + 53.55 + ], + [ + 123.22, + 53.54 + ], + [ + 123.2, + 53.53 + ], + [ + 123.19, + 53.53 + ], + [ + 123.18, + 53.52 + ], + [ + 123.17, + 53.51 + ], + [ + 123.16, + 53.5 + ], + [ + 123.15, + 53.5 + ], + [ + 123.1, + 53.5 + ], + [ + 123.05, + 53.51 + ], + [ + 123.05, + 53.5 + ], + [ + 123.03, + 53.5 + ], + [ + 123.01, + 53.5 + ], + [ + 122.99, + 53.49 + ], + [ + 122.97, + 53.49 + ], + [ + 122.93, + 53.49 + ], + [ + 122.93, + 53.48 + ], + [ + 122.91, + 53.47 + ], + [ + 122.75, + 53.46 + ], + [ + 122.73, + 53.46 + ], + [ + 122.62, + 53.46 + ], + [ + 122.6, + 53.46 + ], + [ + 122.56, + 53.46 + ], + [ + 122.54, + 53.45 + ], + [ + 122.51, + 53.45 + ], + [ + 122.5, + 53.46 + ], + [ + 122.49, + 53.46 + ], + [ + 122.47, + 53.45 + ], + [ + 122.45, + 53.44 + ], + [ + 122.42, + 53.45 + ], + [ + 122.41, + 53.45 + ], + [ + 122.4, + 53.46 + ], + [ + 122.39, + 53.46 + ], + [ + 122.38, + 53.47 + ], + [ + 122.36, + 53.49 + ], + [ + 122.35, + 53.5 + ], + [ + 122.33, + 53.5 + ], + [ + 122.32, + 53.5 + ], + [ + 122.31, + 53.5 + ], + [ + 122.29, + 53.48 + ], + [ + 122.28, + 53.48 + ], + [ + 122.26, + 53.47 + ], + [ + 122.24, + 53.46 + ], + [ + 122.23, + 53.46 + ], + [ + 122.2, + 53.47 + ], + [ + 122.18, + 53.47 + ], + [ + 122.17, + 53.47 + ], + [ + 122.15, + 53.47 + ], + [ + 122.13, + 53.45 + ], + [ + 122.12, + 53.44 + ], + [ + 122.11, + 53.43 + ], + [ + 122.1, + 53.43 + ], + [ + 122.09, + 53.42 + ], + [ + 122.01, + 53.43 + ], + [ + 122, + 53.43 + ], + [ + 121.99, + 53.43 + ], + [ + 121.95, + 53.43 + ], + [ + 121.94, + 53.43 + ], + [ + 121.91, + 53.42 + ], + [ + 121.89, + 53.42 + ], + [ + 121.88, + 53.42 + ], + [ + 121.87, + 53.43 + ], + [ + 121.84, + 53.42 + ], + [ + 121.82, + 53.42 + ], + [ + 121.8, + 53.41 + ], + [ + 121.79, + 53.41 + ], + [ + 121.76, + 53.39 + ], + [ + 121.75, + 53.39 + ], + [ + 121.73, + 53.39 + ], + [ + 121.72, + 53.39 + ], + [ + 121.71, + 53.39 + ], + [ + 121.7, + 53.39 + ], + [ + 121.67, + 53.39 + ], + [ + 121.66, + 53.38 + ], + [ + 121.66, + 53.37 + ], + [ + 121.64, + 53.37 + ], + [ + 121.6, + 53.36 + ], + [ + 121.59, + 53.35 + ], + [ + 121.56, + 53.35 + ], + [ + 121.53, + 53.34 + ], + [ + 121.52, + 53.34 + ], + [ + 121.51, + 53.34 + ], + [ + 121.5, + 53.33 + ], + [ + 121.49, + 53.33 + ], + [ + 121.48, + 53.33 + ], + [ + 121.46, + 53.33 + ], + [ + 121.44, + 53.32 + ], + [ + 121.41, + 53.32 + ], + [ + 121.39, + 53.32 + ], + [ + 121.38, + 53.32 + ], + [ + 121.37, + 53.32 + ], + [ + 121.35, + 53.32 + ], + [ + 121.32, + 53.32 + ], + [ + 121.31, + 53.31 + ], + [ + 121.29, + 53.3 + ], + [ + 121.29, + 53.29 + ], + [ + 121.27, + 53.29 + ], + [ + 121.25, + 53.29 + ], + [ + 121.23, + 53.28 + ], + [ + 121.22, + 53.28 + ], + [ + 121.2, + 53.28 + ], + [ + 121.19, + 53.28 + ], + [ + 121.18, + 53.28 + ], + [ + 121.17, + 53.28 + ], + [ + 121.14, + 53.28 + ], + [ + 121.12, + 53.28 + ], + [ + 121.11, + 53.28 + ], + [ + 121.11, + 53.29 + ], + [ + 121.1, + 53.29 + ], + [ + 121.09, + 53.3 + ], + [ + 121.08, + 53.3 + ], + [ + 121.07, + 53.3 + ], + [ + 121.06, + 53.3 + ], + [ + 120.97, + 53.29 + ], + [ + 120.94, + 53.29 + ], + [ + 120.92, + 53.29 + ], + [ + 120.9, + 53.29 + ], + [ + 120.88, + 53.29 + ], + [ + 120.86, + 53.28 + ], + [ + 120.84, + 53.27 + ], + [ + 120.83, + 53.27 + ], + [ + 120.83, + 53.26 + ], + [ + 120.83, + 53.24 + ], + [ + 120.81, + 53.24 + ], + [ + 120.8, + 53.23 + ], + [ + 120.79, + 53.23 + ], + [ + 120.78, + 53.22 + ], + [ + 120.75, + 53.21 + ], + [ + 120.73, + 53.2 + ], + [ + 120.72, + 53.2 + ], + [ + 120.69, + 53.16 + ], + [ + 120.66, + 53.14 + ], + [ + 120.65, + 53.13 + ], + [ + 120.64, + 53.12 + ], + [ + 120.64, + 53.11 + ], + [ + 120.61, + 53.1 + ], + [ + 120.6, + 53.09 + ], + [ + 120.59, + 53.09 + ], + [ + 120.57, + 53.08 + ], + [ + 120.56, + 53.08 + ], + [ + 120.53, + 53.06 + ], + [ + 120.52, + 53.05 + ], + [ + 120.51, + 53.04 + ], + [ + 120.5, + 53.04 + ], + [ + 120.48, + 53.02 + ], + [ + 120.46, + 53.01 + ], + [ + 120.45, + 53.01 + ], + [ + 120.44, + 53 + ], + [ + 120.43, + 53 + ], + [ + 120.42, + 52.98 + ], + [ + 120.41, + 52.97 + ], + [ + 120.41, + 52.96 + ], + [ + 120.4, + 52.96 + ], + [ + 120.39, + 52.95 + ], + [ + 120.38, + 52.95 + ], + [ + 120.37, + 52.94 + ], + [ + 120.36, + 52.94 + ], + [ + 120.35, + 52.94 + ], + [ + 120.35, + 52.93 + ], + [ + 120.34, + 52.92 + ], + [ + 120.34, + 52.9 + ], + [ + 120.31, + 52.9 + ], + [ + 120.3, + 52.9 + ], + [ + 120.29, + 52.89 + ], + [ + 120.29, + 52.88 + ], + [ + 120.29, + 52.87 + ], + [ + 120.27, + 52.86 + ], + [ + 120.25, + 52.86 + ], + [ + 120.22, + 52.84 + ], + [ + 120.21, + 52.84 + ], + [ + 120.2, + 52.83 + ], + [ + 120.17, + 52.81 + ], + [ + 120.15, + 52.81 + ], + [ + 120.14, + 52.81 + ], + [ + 120.11, + 52.8 + ], + [ + 120.1, + 52.8 + ], + [ + 120.08, + 52.78 + ], + [ + 120.07, + 52.78 + ], + [ + 120.05, + 52.78 + ], + [ + 120.04, + 52.78 + ], + [ + 120.03, + 52.78 + ], + [ + 120.03, + 52.76 + ], + [ + 120.04, + 52.74 + ], + [ + 120.05, + 52.74 + ], + [ + 120.05, + 52.73 + ], + [ + 120.06, + 52.71 + ], + [ + 120.06, + 52.7 + ], + [ + 120.05, + 52.69 + ], + [ + 120.04, + 52.68 + ], + [ + 120.04, + 52.66 + ], + [ + 120.03, + 52.66 + ], + [ + 120.03, + 52.65 + ], + [ + 120.03, + 52.63 + ], + [ + 120.03, + 52.62 + ], + [ + 120.04, + 52.61 + ], + [ + 120.04, + 52.6 + ], + [ + 120.05, + 52.59 + ], + [ + 120.06, + 52.59 + ], + [ + 120.1, + 52.58 + ], + [ + 120.12, + 52.59 + ], + [ + 120.13, + 52.58 + ], + [ + 120.16, + 52.58 + ], + [ + 120.17, + 52.58 + ], + [ + 120.18, + 52.58 + ], + [ + 120.19, + 52.58 + ], + [ + 120.21, + 52.59 + ], + [ + 120.22, + 52.59 + ], + [ + 120.23, + 52.6 + ], + [ + 120.24, + 52.6 + ], + [ + 120.26, + 52.61 + ], + [ + 120.27, + 52.62 + ], + [ + 120.28, + 52.62 + ], + [ + 120.3, + 52.62 + ], + [ + 120.31, + 52.62 + ], + [ + 120.34, + 52.62 + ], + [ + 120.35, + 52.62 + ], + [ + 120.37, + 52.62 + ], + [ + 120.38, + 52.62 + ], + [ + 120.39, + 52.62 + ], + [ + 120.41, + 52.62 + ], + [ + 120.41, + 52.63 + ], + [ + 120.43, + 52.64 + ], + [ + 120.44, + 52.64 + ], + [ + 120.45, + 52.64 + ], + [ + 120.46, + 52.64 + ], + [ + 120.47, + 52.64 + ], + [ + 120.49, + 52.62 + ], + [ + 120.51, + 52.61 + ], + [ + 120.52, + 52.61 + ], + [ + 120.53, + 52.61 + ], + [ + 120.54, + 52.6 + ], + [ + 120.56, + 52.59 + ], + [ + 120.57, + 52.59 + ], + [ + 120.59, + 52.59 + ], + [ + 120.61, + 52.58 + ], + [ + 120.62, + 52.57 + ], + [ + 120.63, + 52.57 + ], + [ + 120.67, + 52.56 + ], + [ + 120.67, + 52.55 + ], + [ + 120.68, + 52.55 + ], + [ + 120.7, + 52.55 + ], + [ + 120.73, + 52.54 + ], + [ + 120.73, + 52.53 + ], + [ + 120.7, + 52.52 + ], + [ + 120.69, + 52.52 + ], + [ + 120.69, + 52.5 + ], + [ + 120.7, + 52.5 + ], + [ + 120.7, + 52.49 + ], + [ + 120.69, + 52.48 + ], + [ + 120.68, + 52.47 + ], + [ + 120.68, + 52.46 + ], + [ + 120.68, + 52.45 + ], + [ + 120.68, + 52.44 + ], + [ + 120.68, + 52.43 + ], + [ + 120.66, + 52.41 + ], + [ + 120.65, + 52.4 + ], + [ + 120.64, + 52.38 + ], + [ + 120.65, + 52.38 + ], + [ + 120.64, + 52.36 + ], + [ + 120.63, + 52.36 + ], + [ + 120.62, + 52.36 + ], + [ + 120.61, + 52.36 + ], + [ + 120.62, + 52.34 + ], + [ + 120.62, + 52.33 + ], + [ + 120.63, + 52.32 + ], + [ + 120.63, + 52.31 + ], + [ + 120.65, + 52.3 + ], + [ + 120.67, + 52.29 + ], + [ + 120.69, + 52.29 + ], + [ + 120.7, + 52.28 + ], + [ + 120.7, + 52.27 + ], + [ + 120.71, + 52.26 + ], + [ + 120.72, + 52.26 + ], + [ + 120.74, + 52.26 + ], + [ + 120.76, + 52.25 + ], + [ + 120.75, + 52.24 + ], + [ + 120.74, + 52.23 + ], + [ + 120.74, + 52.22 + ], + [ + 120.74, + 52.21 + ], + [ + 120.74, + 52.2 + ], + [ + 120.75, + 52.2 + ], + [ + 120.76, + 52.18 + ], + [ + 120.77, + 52.17 + ], + [ + 120.78, + 52.16 + ], + [ + 120.77, + 52.15 + ], + [ + 120.76, + 52.14 + ], + [ + 120.76, + 52.12 + ], + [ + 120.76, + 52.11 + ], + [ + 120.76, + 52.1 + ], + [ + 120.74, + 52.1 + ], + [ + 120.74, + 52.09 + ], + [ + 120.75, + 52.08 + ], + [ + 120.73, + 52.08 + ], + [ + 120.71, + 52.07 + ], + [ + 120.68, + 52.04 + ], + [ + 120.69, + 52.02 + ], + [ + 120.7, + 52.02 + ], + [ + 120.71, + 52.01 + ], + [ + 120.7, + 51.99 + ], + [ + 120.7, + 51.98 + ], + [ + 120.68, + 51.97 + ], + [ + 120.67, + 51.97 + ], + [ + 120.66, + 51.96 + ], + [ + 120.65, + 51.95 + ], + [ + 120.65, + 51.94 + ], + [ + 120.66, + 51.93 + ], + [ + 120.65, + 51.93 + ], + [ + 120.64, + 51.92 + ], + [ + 120.63, + 51.92 + ], + [ + 120.62, + 51.92 + ], + [ + 120.6, + 51.91 + ], + [ + 120.57, + 51.91 + ], + [ + 120.56, + 51.91 + ], + [ + 120.54, + 51.91 + ], + [ + 120.54, + 51.9 + ], + [ + 120.55, + 51.9 + ], + [ + 120.55, + 51.89 + ], + [ + 120.52, + 51.88 + ], + [ + 120.51, + 51.88 + ], + [ + 120.5, + 51.89 + ], + [ + 120.49, + 51.89 + ], + [ + 120.47, + 51.87 + ], + [ + 120.47, + 51.86 + ], + [ + 120.46, + 51.85 + ], + [ + 120.45, + 51.84 + ], + [ + 120.44, + 51.84 + ], + [ + 120.42, + 51.84 + ], + [ + 120.39, + 51.83 + ], + [ + 120.39, + 51.82 + ], + [ + 120.4, + 51.81 + ], + [ + 120.39, + 51.81 + ], + [ + 120.37, + 51.81 + ], + [ + 120.37, + 51.8 + ], + [ + 120.35, + 51.79 + ], + [ + 120.34, + 51.79 + ], + [ + 120.33, + 51.79 + ], + [ + 120.32, + 51.79 + ], + [ + 120.31, + 51.78 + ], + [ + 120.3, + 51.78 + ], + [ + 120.3, + 51.77 + ], + [ + 120.3, + 51.76 + ], + [ + 120.26, + 51.75 + ], + [ + 120.26, + 51.74 + ], + [ + 120.24, + 51.73 + ], + [ + 120.23, + 51.73 + ], + [ + 120.22, + 51.72 + ], + [ + 120.21, + 51.71 + ], + [ + 120.2, + 51.7 + ], + [ + 120.19, + 51.7 + ], + [ + 120.13, + 51.67 + ], + [ + 120.12, + 51.67 + ], + [ + 120.11, + 51.68 + ], + [ + 120.1, + 51.68 + ], + [ + 120.08, + 51.68 + ], + [ + 120.08, + 51.67 + ], + [ + 120.09, + 51.66 + ], + [ + 120.1, + 51.66 + ], + [ + 120.08, + 51.64 + ], + [ + 120.05, + 51.62 + ], + [ + 120.04, + 51.61 + ], + [ + 120.04, + 51.6 + ], + [ + 120.03, + 51.58 + ], + [ + 120.04, + 51.58 + ], + [ + 120.04, + 51.57 + ], + [ + 120.04, + 51.56 + ], + [ + 120.04, + 51.55 + ], + [ + 120.03, + 51.55 + ], + [ + 120.02, + 51.54 + ], + [ + 120.02, + 51.53 + ], + [ + 120.01, + 51.52 + ], + [ + 119.99, + 51.51 + ], + [ + 119.98, + 51.5 + ], + [ + 119.98, + 51.49 + ], + [ + 119.99, + 51.47 + ], + [ + 120, + 51.46 + ], + [ + 119.99, + 51.45 + ], + [ + 119.97, + 51.44 + ], + [ + 119.97, + 51.42 + ], + [ + 119.97, + 51.41 + ], + [ + 119.96, + 51.4 + ], + [ + 119.95, + 51.4 + ], + [ + 119.93, + 51.4 + ], + [ + 119.92, + 51.4 + ], + [ + 119.9, + 51.39 + ], + [ + 119.9, + 51.38 + ], + [ + 119.92, + 51.37 + ], + [ + 119.93, + 51.37 + ], + [ + 119.91, + 51.34 + ], + [ + 119.9, + 51.35 + ], + [ + 119.88, + 51.33 + ], + [ + 119.88, + 51.32 + ], + [ + 119.88, + 51.31 + ], + [ + 119.88, + 51.3 + ], + [ + 119.84, + 51.29 + ], + [ + 119.82, + 51.29 + ], + [ + 119.81, + 51.29 + ], + [ + 119.82, + 51.26 + ], + [ + 119.8, + 51.25 + ], + [ + 119.79, + 51.25 + ], + [ + 119.8, + 51.23 + ], + [ + 119.81, + 51.23 + ], + [ + 119.82, + 51.22 + ], + [ + 119.79, + 51.22 + ], + [ + 119.77, + 51.22 + ], + [ + 119.75, + 51.21 + ], + [ + 119.76, + 51.21 + ], + [ + 119.77, + 51.18 + ], + [ + 119.78, + 51.18 + ], + [ + 119.78, + 51.17 + ], + [ + 119.77, + 51.16 + ], + [ + 119.76, + 51.17 + ], + [ + 119.76, + 51.16 + ], + [ + 119.77, + 51.14 + ], + [ + 119.76, + 51.12 + ], + [ + 119.75, + 51.12 + ], + [ + 119.76, + 51.1 + ], + [ + 119.76, + 51.09 + ], + [ + 119.74, + 51.09 + ], + [ + 119.74, + 51.08 + ], + [ + 119.73, + 51.07 + ], + [ + 119.72, + 51.07 + ], + [ + 119.72, + 51.06 + ], + [ + 119.71, + 51.05 + ], + [ + 119.69, + 51.04 + ], + [ + 119.68, + 51.02 + ], + [ + 119.67, + 51.01 + ], + [ + 119.66, + 51.01 + ], + [ + 119.65, + 51.01 + ], + [ + 119.63, + 51.01 + ], + [ + 119.62, + 51 + ], + [ + 119.63, + 51 + ], + [ + 119.6, + 50.99 + ], + [ + 119.59, + 50.98 + ], + [ + 119.58, + 50.97 + ], + [ + 119.58, + 50.96 + ], + [ + 119.57, + 50.95 + ], + [ + 119.56, + 50.93 + ], + [ + 119.55, + 50.93 + ], + [ + 119.54, + 50.92 + ], + [ + 119.52, + 50.91 + ], + [ + 119.51, + 50.9 + ], + [ + 119.52, + 50.88 + ], + [ + 119.51, + 50.85 + ], + [ + 119.5, + 50.84 + ], + [ + 119.49, + 50.84 + ], + [ + 119.49, + 50.83 + ], + [ + 119.51, + 50.81 + ], + [ + 119.5, + 50.8 + ], + [ + 119.51, + 50.79 + ], + [ + 119.5, + 50.78 + ], + [ + 119.49, + 50.77 + ], + [ + 119.49, + 50.75 + ], + [ + 119.47, + 50.73 + ], + [ + 119.46, + 50.72 + ], + [ + 119.45, + 50.71 + ], + [ + 119.43, + 50.68 + ], + [ + 119.42, + 50.68 + ], + [ + 119.41, + 50.68 + ], + [ + 119.4, + 50.68 + ], + [ + 119.38, + 50.68 + ], + [ + 119.37, + 50.68 + ], + [ + 119.38, + 50.67 + ], + [ + 119.39, + 50.67 + ], + [ + 119.36, + 50.64 + ], + [ + 119.34, + 50.64 + ], + [ + 119.33, + 50.64 + ], + [ + 119.29, + 50.62 + ], + [ + 119.29, + 50.61 + ], + [ + 119.27, + 50.6 + ], + [ + 119.28, + 50.6 + ], + [ + 119.29, + 50.59 + ], + [ + 119.29, + 50.58 + ], + [ + 119.27, + 50.57 + ], + [ + 119.26, + 50.57 + ], + [ + 119.26, + 50.56 + ], + [ + 119.27, + 50.56 + ], + [ + 119.27, + 50.55 + ], + [ + 119.26, + 50.54 + ], + [ + 119.26, + 50.53 + ], + [ + 119.23, + 50.5 + ], + [ + 119.25, + 50.49 + ], + [ + 119.25, + 50.48 + ], + [ + 119.23, + 50.44 + ], + [ + 119.22, + 50.44 + ], + [ + 119.21, + 50.42 + ], + [ + 119.21, + 50.41 + ], + [ + 119.17, + 50.42 + ], + [ + 119.16, + 50.42 + ], + [ + 119.14, + 50.39 + ], + [ + 119.16, + 50.38 + ], + [ + 119.16, + 50.37 + ], + [ + 119.15, + 50.36 + ], + [ + 119.18, + 50.36 + ], + [ + 119.2, + 50.36 + ], + [ + 119.21, + 50.36 + ], + [ + 119.23, + 50.36 + ], + [ + 119.24, + 50.34 + ], + [ + 119.25, + 50.34 + ], + [ + 119.28, + 50.36 + ], + [ + 119.29, + 50.35 + ], + [ + 119.29, + 50.34 + ], + [ + 119.33, + 50.36 + ], + [ + 119.33, + 50.35 + ], + [ + 119.35, + 50.36 + ], + [ + 119.35, + 50.35 + ], + [ + 119.36, + 50.33 + ], + [ + 119.35, + 50.33 + ], + [ + 119.35, + 50.32 + ], + [ + 119.36, + 50.32 + ], + [ + 119.37, + 50.32 + ], + [ + 119.36, + 50.31 + ], + [ + 119.35, + 50.31 + ], + [ + 119.34, + 50.29 + ], + [ + 119.32, + 50.26 + ], + [ + 119.34, + 50.26 + ], + [ + 119.32, + 50.24 + ], + [ + 119.32, + 50.23 + ], + [ + 119.31, + 50.22 + ], + [ + 119.33, + 50.21 + ], + [ + 119.34, + 50.2 + ], + [ + 119.35, + 50.2 + ], + [ + 119.34, + 50.19 + ], + [ + 119.33, + 50.19 + ], + [ + 119.31, + 50.16 + ], + [ + 119.29, + 50.14 + ], + [ + 119.29, + 50.13 + ], + [ + 119.27, + 50.11 + ], + [ + 119.25, + 50.1 + ], + [ + 119.25, + 50.09 + ], + [ + 119.23, + 50.08 + ], + [ + 119.22, + 50.08 + ], + [ + 119.2, + 50.08 + ], + [ + 119.18, + 50.07 + ], + [ + 119.18, + 50.06 + ], + [ + 119.18, + 50.05 + ], + [ + 119.17, + 50.05 + ], + [ + 119.16, + 50.04 + ], + [ + 119.16, + 50.03 + ], + [ + 119.15, + 50.03 + ], + [ + 119.14, + 50.03 + ], + [ + 119.13, + 50.02 + ], + [ + 119.12, + 50.01 + ], + [ + 119.11, + 50.01 + ], + [ + 119.11, + 50 + ], + [ + 119.1, + 50 + ], + [ + 119.09, + 50 + ], + [ + 119.09, + 49.99 + ], + [ + 119.05, + 49.98 + ], + [ + 118.98, + 49.98 + ], + [ + 118.94, + 49.99 + ], + [ + 118.93, + 49.99 + ], + [ + 118.9, + 49.98 + ], + [ + 118.89, + 49.98 + ], + [ + 118.86, + 49.97 + ], + [ + 118.85, + 49.97 + ], + [ + 118.83, + 49.96 + ], + [ + 118.74, + 49.95 + ], + [ + 118.7, + 49.95 + ], + [ + 118.69, + 49.95 + ], + [ + 118.65, + 49.95 + ], + [ + 118.61, + 49.95 + ], + [ + 118.6, + 49.93 + ], + [ + 118.55, + 49.91 + ], + [ + 118.54, + 49.9 + ], + [ + 118.52, + 49.9 + ], + [ + 118.52, + 49.89 + ], + [ + 118.5, + 49.88 + ], + [ + 118.48, + 49.87 + ], + [ + 118.48, + 49.86 + ], + [ + 118.49, + 49.84 + ], + [ + 118.48, + 49.84 + ], + [ + 118.47, + 49.84 + ], + [ + 118.48, + 49.83 + ], + [ + 118.47, + 49.83 + ], + [ + 118.45, + 49.84 + ], + [ + 118.45, + 49.83 + ], + [ + 118.41, + 49.82 + ], + [ + 118.39, + 49.81 + ], + [ + 118.37, + 49.78 + ], + [ + 118.36, + 49.78 + ], + [ + 118.35, + 49.78 + ], + [ + 118.34, + 49.78 + ], + [ + 118.33, + 49.77 + ], + [ + 118.32, + 49.77 + ], + [ + 118.28, + 49.74 + ], + [ + 118.26, + 49.74 + ], + [ + 118.24, + 49.74 + ], + [ + 118.23, + 49.74 + ], + [ + 118.21, + 49.71 + ], + [ + 118.2, + 49.68 + ], + [ + 118.19, + 49.68 + ], + [ + 118.17, + 49.68 + ], + [ + 118.15, + 49.67 + ], + [ + 118.13, + 49.67 + ], + [ + 118.11, + 49.67 + ], + [ + 118.1, + 49.64 + ], + [ + 118.08, + 49.63 + ], + [ + 118.08, + 49.62 + ], + [ + 118.06, + 49.61 + ], + [ + 118.02, + 49.61 + ], + [ + 118.01, + 49.61 + ], + [ + 117.86, + 49.51 + ], + [ + 117.78, + 49.52 + ], + [ + 117.78, + 49.53 + ], + [ + 116.71, + 49.84 + ], + [ + 116.7, + 49.85 + ], + [ + 116.65, + 49.91 + ], + [ + 116.23, + 50.04 + ], + [ + 116.13, + 50.02 + ], + [ + 115.53, + 49.9 + ], + [ + 115.96, + 50.12 + ], + [ + 115.62, + 50.05 + ], + [ + 115.68, + 50.23 + ], + [ + 115.53, + 50.23 + ], + [ + 115.37, + 49.94 + ], + [ + 115.36, + 49.94 + ], + [ + 115.27, + 49.97 + ], + [ + 115.26, + 49.97 + ], + [ + 115.06, + 50.12 + ], + [ + 115.03, + 50.14 + ], + [ + 114.75, + 50.23 + ], + [ + 114.7, + 50.24 + ], + [ + 114.57, + 50.24 + ], + [ + 114.51, + 50.23 + ], + [ + 113.8, + 50.09 + ], + [ + 113.77, + 50.08 + ], + [ + 113.62, + 49.99 + ], + [ + 113.55, + 49.98 + ], + [ + 112.79, + 49.52 + ], + [ + 112.78, + 49.51 + ], + [ + 112.36, + 49.5 + ], + [ + 112.35, + 49.5 + ], + [ + 111.87, + 49.38 + ], + [ + 111.84, + 49.37 + ], + [ + 110.2, + 49.15 + ], + [ + 109.19, + 49.35 + ], + [ + 108.53, + 49.32 + ], + [ + 107.95, + 49.67 + ], + [ + 107.93, + 49.86 + ], + [ + 107.92, + 49.87 + ], + [ + 107.97, + 49.94 + ], + [ + 107.95, + 49.94 + ], + [ + 107.94, + 49.94 + ], + [ + 107.92, + 49.94 + ], + [ + 107.89, + 49.93 + ], + [ + 107.87, + 49.94 + ], + [ + 107.86, + 49.94 + ], + [ + 107.85, + 49.95 + ], + [ + 107.84, + 49.96 + ], + [ + 107.83, + 49.96 + ], + [ + 107.82, + 49.95 + ], + [ + 107.81, + 49.95 + ], + [ + 107.8, + 49.93 + ], + [ + 107.78, + 49.95 + ], + [ + 107.77, + 49.95 + ], + [ + 107.76, + 49.96 + ], + [ + 107.76, + 49.97 + ], + [ + 107.75, + 49.97 + ], + [ + 107.73, + 49.98 + ], + [ + 107.63, + 49.98 + ], + [ + 107.62, + 49.98 + ], + [ + 107.61, + 49.97 + ], + [ + 107.6, + 49.97 + ], + [ + 107.58, + 49.98 + ], + [ + 107.57, + 49.98 + ], + [ + 107.55, + 49.99 + ], + [ + 107.52, + 49.98 + ], + [ + 107.51, + 49.98 + ], + [ + 107.49, + 49.98 + ], + [ + 107.45, + 49.98 + ], + [ + 107.44, + 49.98 + ], + [ + 107.41, + 49.98 + ], + [ + 107.39, + 49.98 + ], + [ + 107.36, + 49.99 + ], + [ + 107.35, + 50 + ], + [ + 107.28, + 50 + ], + [ + 107.26, + 49.99 + ], + [ + 107.23, + 50 + ], + [ + 107.22, + 50 + ], + [ + 107.21, + 50 + ], + [ + 107.2, + 50.01 + ], + [ + 107.18, + 50.01 + ], + [ + 107.16, + 50.02 + ], + [ + 107.15, + 50.02 + ], + [ + 107.15, + 50.04 + ], + [ + 107.14, + 50.04 + ], + [ + 106.82, + 50.3 + ], + [ + 106.08, + 50.34 + ], + [ + 106.07, + 50.35 + ], + [ + 105.35, + 50.48 + ], + [ + 104.39, + 50.31 + ], + [ + 104.14, + 50.14 + ], + [ + 103.26, + 50.19 + ], + [ + 103.24, + 50.32 + ], + [ + 102.65, + 50.4 + ], + [ + 102.3, + 50.68 + ], + [ + 102.12, + 51.36 + ], + [ + 100.59, + 51.73 + ], + [ + 99.91, + 51.74 + ], + [ + 99.8, + 51.92 + ], + [ + 98.93, + 52.15 + ], + [ + 98.78, + 51.94 + ], + [ + 98.78, + 51.92 + ], + [ + 98.77, + 51.91 + ], + [ + 98.05, + 51.45 + ], + [ + 97.82, + 51.01 + ], + [ + 98.31, + 50.46 + ], + [ + 98.07, + 50.04 + ], + [ + 97.63, + 49.95 + ], + [ + 97.62, + 49.94 + ], + [ + 97.58, + 49.94 + ], + [ + 97.57, + 49.93 + ], + [ + 97.56, + 49.92 + ], + [ + 97.58, + 49.91 + ], + [ + 97.57, + 49.91 + ], + [ + 97.58, + 49.89 + ], + [ + 97.58, + 49.88 + ], + [ + 97.58, + 49.87 + ], + [ + 97.58, + 49.86 + ], + [ + 97.56, + 49.85 + ], + [ + 97.54, + 49.84 + ], + [ + 97.53, + 49.84 + ], + [ + 97.51, + 49.82 + ], + [ + 97.37, + 49.78 + ], + [ + 97.34, + 49.76 + ], + [ + 97.33, + 49.76 + ], + [ + 97.33, + 49.75 + ], + [ + 97.26, + 49.75 + ], + [ + 97.24, + 49.75 + ], + [ + 97.18, + 49.77 + ], + [ + 97.18, + 49.78 + ], + [ + 97.13, + 49.8 + ], + [ + 97.12, + 49.82 + ], + [ + 97.11, + 49.82 + ], + [ + 97.07, + 49.82 + ], + [ + 97.06, + 49.83 + ], + [ + 97.04, + 49.83 + ], + [ + 97.02, + 49.83 + ], + [ + 97.01, + 49.83 + ], + [ + 97, + 49.85 + ], + [ + 97, + 49.87 + ], + [ + 97, + 49.88 + ], + [ + 96.98, + 49.89 + ], + [ + 96.96, + 49.89 + ], + [ + 96.95, + 49.89 + ], + [ + 96.94, + 49.89 + ], + [ + 96.91, + 49.89 + ], + [ + 96.9, + 49.9 + ], + [ + 96.89, + 49.9 + ], + [ + 96.85, + 49.9 + ], + [ + 96.84, + 49.9 + ], + [ + 96.82, + 49.91 + ], + [ + 96.8, + 49.91 + ], + [ + 96.72, + 49.92 + ], + [ + 96.68, + 49.91 + ], + [ + 96.65, + 49.9 + ], + [ + 96.6, + 49.87 + ], + [ + 96.6, + 49.88 + ], + [ + 96.59, + 49.88 + ], + [ + 96.58, + 49.91 + ], + [ + 96.57, + 49.92 + ], + [ + 96.56, + 49.93 + ], + [ + 96.53, + 49.94 + ], + [ + 96.52, + 49.94 + ], + [ + 96.5, + 49.93 + ], + [ + 96.46, + 49.91 + ], + [ + 96.45, + 49.89 + ], + [ + 96.41, + 49.88 + ], + [ + 96.39, + 49.89 + ], + [ + 96.38, + 49.9 + ], + [ + 96.33, + 49.95 + ], + [ + 96.31, + 49.94 + ], + [ + 96.3, + 49.95 + ], + [ + 96.29, + 49.96 + ], + [ + 96.28, + 49.96 + ], + [ + 96.27, + 49.97 + ], + [ + 96.26, + 49.97 + ], + [ + 96.25, + 49.98 + ], + [ + 96.23, + 49.98 + ], + [ + 96.22, + 49.98 + ], + [ + 96.13, + 49.99 + ], + [ + 96.09, + 50 + ], + [ + 96.04, + 50.01 + ], + [ + 96.03, + 50.01 + ], + [ + 96.03, + 50 + ], + [ + 96.01, + 49.99 + ], + [ + 96, + 49.99 + ], + [ + 95.99, + 49.97 + ], + [ + 95.97, + 49.97 + ], + [ + 95.96, + 49.98 + ], + [ + 95.91, + 50.01 + ], + [ + 95.9, + 50.03 + ], + [ + 95.89, + 50.03 + ], + [ + 95.88, + 50.03 + ], + [ + 95.87, + 50.04 + ], + [ + 95.84, + 50.04 + ], + [ + 95.77, + 50.02 + ], + [ + 95.76, + 50 + ], + [ + 95.63, + 49.96 + ], + [ + 95.52, + 49.9 + ], + [ + 95.48, + 49.92 + ], + [ + 95.46, + 49.93 + ], + [ + 95.14, + 49.96 + ], + [ + 95.1, + 49.96 + ], + [ + 95.01, + 49.98 + ], + [ + 95.01, + 50 + ], + [ + 95, + 50.01 + ], + [ + 95.01, + 50.01 + ], + [ + 95, + 50.02 + ], + [ + 95, + 50.03 + ], + [ + 95.16, + 50.09 + ], + [ + 94.99, + 50.05 + ], + [ + 94.97, + 50.04 + ], + [ + 94.61, + 50.04 + ], + [ + 94.57, + 50.09 + ], + [ + 94.55, + 50.11 + ], + [ + 94.55, + 50.12 + ], + [ + 94.25, + 50.58 + ], + [ + 93.06, + 50.62 + ], + [ + 92.96, + 50.67 + ], + [ + 93.01, + 50.79 + ], + [ + 92.65, + 50.71 + ], + [ + 92.35, + 50.88 + ], + [ + 92.27, + 50.73 + ], + [ + 91.79, + 50.72 + ], + [ + 91.4, + 50.46 + ], + [ + 91.41, + 50.46 + ], + [ + 90.92, + 50.42 + ], + [ + 90.67, + 50.21 + ], + [ + 89.59, + 49.91 + ], + [ + 89.72, + 49.73 + ], + [ + 89.19, + 49.63 + ], + [ + 89.15, + 49.5 + ], + [ + 88.22, + 49.48 + ], + [ + 88.17, + 49.29 + ], + [ + 87.81, + 49.17 + ], + [ + 87.63, + 49.15 + ], + [ + 87.6, + 49.15 + ], + [ + 87.29, + 49.12 + ], + [ + 87.3, + 49.18 + ], + [ + 86.62, + 49.57 + ], + [ + 86.78, + 49.79 + ], + [ + 86.59, + 49.81 + ], + [ + 86.2, + 49.47 + ], + [ + 85.26, + 49.59 + ], + [ + 85.04, + 50.05 + ], + [ + 84.28, + 50.26 + ], + [ + 84.23, + 50.54 + ], + [ + 83.79, + 50.89 + ], + [ + 83.77, + 50.89 + ], + [ + 83.67, + 50.93 + ], + [ + 83.64, + 50.95 + ], + [ + 83.63, + 50.95 + ], + [ + 83.62, + 50.95 + ], + [ + 83.12, + 51.01 + ], + [ + 82.57, + 50.75 + ], + [ + 81.58, + 50.74 + ], + [ + 81.41, + 50.98 + ], + [ + 81.06, + 50.95 + ], + [ + 81.12, + 51.07 + ], + [ + 81.13, + 51.07 + ], + [ + 81.18, + 51.18 + ], + [ + 81.17, + 51.18 + ], + [ + 80.68, + 51.32 + ], + [ + 80.08, + 50.74 + ], + [ + 79.2, + 51.89 + ], + [ + 78.9, + 52.23 + ], + [ + 78.87, + 52.26 + ], + [ + 78.76, + 52.38 + ], + [ + 78.63, + 52.53 + ], + [ + 78.52, + 52.65 + ], + [ + 78.5, + 52.67 + ], + [ + 78.31, + 52.88 + ], + [ + 78.21, + 52.98 + ], + [ + 77.84, + 53.33 + ], + [ + 77.71, + 53.4 + ], + [ + 77.61, + 53.45 + ], + [ + 77.57, + 53.47 + ], + [ + 77.24, + 53.65 + ], + [ + 77.09, + 53.72 + ], + [ + 77.03, + 53.75 + ], + [ + 77, + 53.76 + ], + [ + 76.62, + 53.96 + ], + [ + 76.54, + 54 + ], + [ + 76.44, + 54.17 + ], + [ + 76.76, + 54.16 + ], + [ + 76.83, + 54.39 + ], + [ + 76.88, + 54.4 + ], + [ + 76.9, + 54.41 + ], + [ + 76.93, + 54.41 + ], + [ + 76.95, + 54.42 + ], + [ + 76.94, + 54.44 + ], + [ + 76.93, + 54.45 + ], + [ + 76.3, + 54.35 + ], + [ + 75.94, + 54.19 + ], + [ + 75.93, + 54.19 + ], + [ + 75.66, + 54.11 + ], + [ + 75.64, + 54.11 + ], + [ + 75.55, + 54.11 + ], + [ + 75.54, + 54.11 + ], + [ + 75.43, + 54.09 + ], + [ + 75.42, + 54.08 + ], + [ + 75.24, + 53.89 + ], + [ + 75.23, + 53.89 + ], + [ + 75.03, + 53.8 + ], + [ + 74.46, + 53.69 + ], + [ + 74.4, + 53.46 + ], + [ + 74.37, + 53.46 + ], + [ + 73.9, + 53.65 + ], + [ + 73.36, + 53.47 + ], + [ + 73.25, + 53.67 + ], + [ + 73.73, + 53.95 + ], + [ + 73.74, + 53.97 + ], + [ + 73.63, + 54.07 + ], + [ + 73.3, + 53.94 + ], + [ + 72.61, + 54.14 + ], + [ + 72.71, + 53.96 + ], + [ + 72.43, + 53.91 + ], + [ + 72.52, + 54.14 + ], + [ + 72.19, + 54.36 + ], + [ + 72.01, + 54.37 + ], + [ + 72.17, + 54.12 + ], + [ + 71.76, + 54.25 + ], + [ + 71.72, + 54.1 + ], + [ + 71.47, + 54.16 + ], + [ + 71.46, + 54.16 + ], + [ + 71.28, + 54.16 + ], + [ + 71.28, + 54.15 + ], + [ + 71, + 54.27 + ], + [ + 71.23, + 54.35 + ], + [ + 71.29, + 54.67 + ], + [ + 71.11, + 54.7 + ], + [ + 71.1, + 54.7 + ], + [ + 71.02, + 55.09 + ], + [ + 70.98, + 55.1 + ], + [ + 70.93, + 55.12 + ], + [ + 70.93, + 55.15 + ], + [ + 70.82, + 55.29 + ], + [ + 69.95, + 55.21 + ], + [ + 69.68, + 55.48 + ], + [ + 69.66, + 55.35 + ], + [ + 69.18, + 55.38 + ], + [ + 69.17, + 55.38 + ], + [ + 69.16, + 55.39 + ], + [ + 69.04, + 55.42 + ], + [ + 69, + 55.34 + ], + [ + 68.92, + 55.32 + ], + [ + 68.78, + 55.37 + ], + [ + 68.73, + 55.46 + ], + [ + 68.73, + 55.36 + ], + [ + 68.66, + 55.23 + ], + [ + 68.63, + 55.2 + ], + [ + 68.52, + 55.2 + ], + [ + 68.2, + 55.14 + ], + [ + 68.21, + 55.14 + ], + [ + 68.25, + 55.11 + ], + [ + 68.26, + 55.1 + ], + [ + 68.24, + 55.05 + ], + [ + 67.54, + 54.85 + ], + [ + 67.53, + 54.85 + ], + [ + 67.29, + 54.86 + ], + [ + 67.29, + 54.84 + ], + [ + 67.1, + 54.81 + ], + [ + 67.04, + 54.78 + ], + [ + 66.4, + 54.71 + ], + [ + 66.38, + 54.7 + ], + [ + 65.49, + 54.66 + ], + [ + 65.21, + 54.54 + ], + [ + 65.22, + 54.33 + ], + [ + 64.97, + 54.42 + ], + [ + 63.96, + 54.2 + ], + [ + 63.17, + 54.19 + ], + [ + 62.59, + 54.07 + ], + [ + 62.52, + 53.91 + ], + [ + 62.23, + 54.03 + ], + [ + 62.23, + 54.04 + ], + [ + 62.21, + 54.04 + ], + [ + 62.21, + 54.03 + ], + [ + 62.19, + 54.03 + ], + [ + 61.86, + 54.01 + ], + [ + 61.85, + 54.01 + ], + [ + 61.85, + 54.02 + ], + [ + 61.85, + 54.03 + ], + [ + 61.73, + 54.02 + ], + [ + 61.72, + 54.03 + ], + [ + 61.7, + 54.02 + ], + [ + 61.66, + 54.03 + ], + [ + 61.46, + 54.08 + ], + [ + 61.41, + 54.08 + ], + [ + 61.41, + 54.09 + ], + [ + 61.35, + 54.07 + ], + [ + 61.26, + 54.01 + ], + [ + 61.26, + 54 + ], + [ + 61, + 53.94 + ], + [ + 61.24, + 53.84 + ], + [ + 61, + 53.66 + ], + [ + 61, + 53.67 + ], + [ + 60.96, + 53.67 + ], + [ + 60.95, + 53.67 + ], + [ + 60.91, + 53.63 + ], + [ + 61.55, + 53.59 + ], + [ + 61.17, + 53.36 + ], + [ + 61.17, + 53.34 + ], + [ + 61.74, + 53.23 + ], + [ + 61.74, + 53.22 + ], + [ + 62.13, + 52.99 + ], + [ + 61.13, + 52.99 + ], + [ + 61.12, + 52.99 + ], + [ + 60.71, + 52.76 + ], + [ + 61, + 52.31 + ], + [ + 60.99, + 52.31 + ], + [ + 60.72, + 52.16 + ], + [ + 59.99, + 51.96 + ], + [ + 60.52, + 51.8 + ], + [ + 60.42, + 51.65 + ], + [ + 60.91, + 51.62 + ], + [ + 61.69, + 51.26 + ], + [ + 61.5, + 51.01 + ], + [ + 61.49, + 50.97 + ], + [ + 61.45, + 50.81 + ], + [ + 60.81, + 50.66 + ], + [ + 60.02, + 50.82 + ], + [ + 59.83, + 50.56 + ], + [ + 59.83, + 50.55 + ], + [ + 59.46, + 50.54 + ], + [ + 59.48, + 50.64 + ], + [ + 58.66, + 50.81 + ], + [ + 58.61, + 51.05 + ], + [ + 58.35, + 51.12 + ], + [ + 58.35, + 51.13 + ], + [ + 58.32, + 51.15 + ], + [ + 58.31, + 51.15 + ], + [ + 58.27, + 51.15 + ], + [ + 58.2, + 51.13 + ], + [ + 58.21, + 51.12 + ], + [ + 58.21, + 51.1 + ], + [ + 58.21, + 51.09 + ], + [ + 58.2, + 51.09 + ], + [ + 58.18, + 51.09 + ], + [ + 58.17, + 51.08 + ], + [ + 58.18, + 51.07 + ], + [ + 58.14, + 51.07 + ], + [ + 58.13, + 51.07 + ], + [ + 58.12, + 51.07 + ], + [ + 58.11, + 51.07 + ], + [ + 58.1, + 51.07 + ], + [ + 58.09, + 51.07 + ], + [ + 58.09, + 51.08 + ], + [ + 58.08, + 51.08 + ], + [ + 58.08, + 51.09 + ], + [ + 58.09, + 51.1 + ], + [ + 58.09, + 51.11 + ], + [ + 58.09, + 51.12 + ], + [ + 58.08, + 51.12 + ], + [ + 58.02, + 51.1 + ], + [ + 58.02, + 51.09 + ], + [ + 58.01, + 51.09 + ], + [ + 58, + 51.09 + ], + [ + 57.98, + 51.09 + ], + [ + 57.97, + 51.09 + ], + [ + 57.96, + 51.09 + ], + [ + 57.95, + 51.09 + ], + [ + 57.94, + 51.09 + ], + [ + 57.93, + 51.09 + ], + [ + 57.93, + 51.1 + ], + [ + 57.92, + 51.11 + ], + [ + 57.92, + 51.12 + ], + [ + 57.91, + 51.11 + ], + [ + 57.88, + 51.1 + ], + [ + 57.87, + 51.1 + ], + [ + 57.86, + 51.1 + ], + [ + 57.85, + 51.1 + ], + [ + 57.85, + 51.11 + ], + [ + 57.84, + 51.11 + ], + [ + 57.83, + 51.11 + ], + [ + 57.83, + 51.12 + ], + [ + 57.82, + 51.13 + ], + [ + 57.81, + 51.14 + ], + [ + 57.8, + 51.14 + ], + [ + 57.79, + 51.14 + ], + [ + 57.76, + 50.92 + ], + [ + 57.51, + 50.88 + ], + [ + 57.18, + 51.11 + ], + [ + 56.7, + 51.08 + ], + [ + 56.72, + 50.97 + ], + [ + 56.51, + 51.09 + ], + [ + 55.71, + 50.55 + ], + [ + 54.59, + 51.03 + ], + [ + 54.71, + 50.68 + ], + [ + 54.47, + 50.57 + ], + [ + 54.53, + 50.85 + ], + [ + 53.29, + 51.5 + ], + [ + 53.29, + 51.49 + ], + [ + 53.26, + 51.49 + ], + [ + 53.26, + 51.5 + ], + [ + 52.87, + 51.5 + ], + [ + 52.86, + 51.49 + ], + [ + 52.84, + 51.5 + ], + [ + 52.84, + 51.49 + ], + [ + 52.81, + 51.49 + ], + [ + 52.81, + 51.5 + ], + [ + 52.78, + 51.51 + ], + [ + 52.77, + 51.52 + ], + [ + 52.76, + 51.52 + ], + [ + 52.76, + 51.51 + ], + [ + 52.76, + 51.5 + ], + [ + 52.75, + 51.5 + ], + [ + 52.73, + 51.5 + ], + [ + 52.72, + 51.48 + ], + [ + 52.71, + 51.48 + ], + [ + 52.69, + 51.48 + ], + [ + 52.67, + 51.47 + ], + [ + 52.66, + 51.47 + ], + [ + 52.67, + 51.48 + ], + [ + 52.66, + 51.49 + ], + [ + 52.65, + 51.48 + ], + [ + 52.64, + 51.48 + ], + [ + 52.64, + 51.47 + ], + [ + 52.64, + 51.46 + ], + [ + 52.61, + 51.46 + ], + [ + 52.6, + 51.45 + ], + [ + 52.59, + 51.47 + ], + [ + 52.6, + 51.47 + ], + [ + 52.57, + 51.47 + ], + [ + 52.56, + 51.46 + ], + [ + 52.55, + 51.48 + ], + [ + 52.36, + 51.78 + ], + [ + 51.86, + 51.67 + ], + [ + 51.66, + 51.45 + ], + [ + 50.77, + 51.77 + ], + [ + 50.81, + 51.59 + ], + [ + 50.59, + 51.65 + ], + [ + 50.37, + 51.33 + ], + [ + 49.46, + 51.13 + ], + [ + 49.42, + 50.85 + ], + [ + 48.81, + 50.6 + ], + [ + 48.6, + 50.66 + ], + [ + 48.9, + 50.02 + ], + [ + 48.44, + 49.8 + ], + [ + 48.32, + 49.87 + ], + [ + 48.11, + 50.06 + ], + [ + 48.11, + 50.07 + ], + [ + 48.1, + 50.09 + ], + [ + 48.08, + 50.1 + ], + [ + 48.07, + 50.1 + ], + [ + 48.05, + 50.11 + ], + [ + 48.05, + 50.12 + ], + [ + 48.05, + 50.13 + ], + [ + 48.03, + 50.14 + ], + [ + 47.99, + 50.18 + ], + [ + 47.61, + 50.46 + ], + [ + 47.3, + 50.3 + ], + [ + 47.35, + 50.09 + ], + [ + 46.9, + 49.86 + ], + [ + 46.84, + 49.61 + ], + [ + 46.78, + 49.34 + ], + [ + 47.03, + 49.09 + ], + [ + 46.69, + 48.79 + ], + [ + 46.66, + 48.75 + ], + [ + 46.49, + 48.43 + ], + [ + 47.12, + 48.27 + ], + [ + 47.11, + 48.13 + ], + [ + 47.19, + 47.76 + ], + [ + 48.11, + 47.74 + ], + [ + 48.52, + 47.41 + ], + [ + 49, + 46.74 + ], + [ + 48.52, + 46.68 + ], + [ + 48.51, + 46.68 + ], + [ + 48.56, + 46.59 + ], + [ + 48.56, + 46.58 + ], + [ + 48.68, + 46.56 + ], + [ + 48.7, + 46.56 + ], + [ + 48.73, + 46.55 + ], + [ + 48.74, + 46.55 + ], + [ + 48.75, + 46.55 + ], + [ + 48.76, + 46.54 + ], + [ + 48.78, + 46.54 + ], + [ + 48.79, + 46.54 + ], + [ + 48.79, + 46.52 + ], + [ + 48.8, + 46.51 + ], + [ + 48.81, + 46.5 + ], + [ + 48.82, + 46.49 + ], + [ + 48.83, + 46.48 + ], + [ + 48.85, + 46.48 + ], + [ + 48.91, + 46.46 + ], + [ + 48.91, + 46.45 + ], + [ + 48.95, + 46.44 + ], + [ + 48.97, + 46.44 + ], + [ + 48.98, + 46.43 + ], + [ + 49.01, + 46.42 + ], + [ + 49.31, + 46.27 + ], + [ + 49.22, + 45.99 + ], + [ + 49.04, + 46.12 + ], + [ + 49.02, + 45.95 + ], + [ + 48.74, + 45.91 + ], + [ + 48.72, + 45.61 + ], + [ + 48.17, + 45.68 + ], + [ + 48.19, + 45.42 + ], + [ + 47.99, + 45.67 + ], + [ + 47.94, + 45.38 + ], + [ + 47.99, + 45.69 + ], + [ + 47.85, + 45.69 + ], + [ + 47.88, + 45.47 + ], + [ + 47.78, + 45.63 + ], + [ + 47.5, + 45.66 + ], + [ + 47.08, + 44.85 + ], + [ + 46.98, + 45.01 + ], + [ + 46.7, + 44.69 + ], + [ + 46.7, + 44.43 + ], + [ + 46.98, + 44.34 + ], + [ + 47.46, + 43.82 + ], + [ + 47.7, + 43.89 + ], + [ + 47.46, + 43.02 + ], + [ + 48.59, + 41.84 + ], + [ + 47.78, + 41.19 + ], + [ + 47.3, + 41.31 + ], + [ + 46.76, + 41.86 + ], + [ + 46.43, + 41.91 + ], + [ + 46.37, + 41.93 + ], + [ + 46.36, + 41.93 + ], + [ + 45.65, + 42.19 + ], + [ + 45.77, + 42.49 + ], + [ + 45.34, + 42.52 + ], + [ + 45.16, + 42.71 + ], + [ + 44.89, + 42.75 + ], + [ + 44.8, + 42.61 + ], + [ + 44.55, + 42.77 + ], + [ + 43.96, + 42.55 + ], + [ + 43.5, + 42.87 + ], + [ + 43.48, + 42.88 + ], + [ + 43.41, + 42.89 + ], + [ + 43.4, + 42.89 + ], + [ + 43.4, + 42.9 + ], + [ + 43.27, + 42.92 + ], + [ + 43.26, + 42.92 + ], + [ + 42.86, + 43.18 + ], + [ + 42.59, + 43.17 + ], + [ + 41.61, + 43.22 + ], + [ + 40.96, + 43.42 + ], + [ + 40.87, + 43.49 + ], + [ + 40.24, + 43.59 + ], + [ + 40.01, + 43.41 + ], + [ + 40.01, + 43.4 + ], + [ + 40.01, + 43.39 + ], + [ + 39.99, + 43.39 + ], + [ + 38.79, + 44.28 + ], + [ + 38.21, + 44.42 + ], + [ + 37.81, + 44.73 + ], + [ + 37.46, + 44.71 + ], + [ + 37.18, + 45.16 + ], + [ + 36.6, + 45.2 + ], + [ + 36.99, + 45.29 + ], + [ + 36.8, + 45.3 + ], + [ + 36.86, + 45.38 + ], + [ + 36.76, + 45.41 + ], + [ + 36.62, + 45.31 + ], + [ + 36.79, + 45.44 + ], + [ + 36.84, + 45.45 + ], + [ + 37.14, + 45.35 + ], + [ + 37.08, + 45.24 + ], + [ + 37.31, + 45.31 + ], + [ + 37.57, + 45.23 + ], + [ + 37.37, + 45.33 + ], + [ + 37.98, + 46.04 + ], + [ + 38.32, + 45.99 + ], + [ + 38.14, + 46.04 + ], + [ + 38.25, + 46.19 + ], + [ + 38.6, + 46.04 + ], + [ + 38.36, + 46.3 + ], + [ + 37.91, + 46.41 + ], + [ + 37.75, + 46.68 + ], + [ + 38.59, + 46.66 + ], + [ + 38.45, + 46.85 + ], + [ + 39.31, + 47.06 + ], + [ + 39.16, + 47.29 + ], + [ + 38.23, + 47.12 + ], + [ + 38.32, + 47.58 + ], + [ + 38.33, + 47.58 + ], + [ + 38.77, + 47.69 + ], + [ + 38.79, + 47.82 + ], + [ + 38.81, + 47.82 + ], + [ + 38.83, + 47.82 + ], + [ + 38.83, + 47.83 + ], + [ + 38.82, + 47.84 + ], + [ + 38.83, + 47.84 + ], + [ + 38.84, + 47.85 + ], + [ + 38.86, + 47.87 + ], + [ + 38.94, + 47.87 + ], + [ + 39.11, + 47.84 + ], + [ + 39.77, + 47.87 + ], + [ + 39.82, + 47.96 + ], + [ + 39.82, + 47.97 + ], + [ + 39.81, + 48 + ], + [ + 39.81, + 48.01 + ], + [ + 39.8, + 48.01 + ], + [ + 39.78, + 48.03 + ], + [ + 39.78, + 48.04 + ], + [ + 39.87, + 48.04 + ], + [ + 39.91, + 48.16 + ], + [ + 39.91, + 48.17 + ], + [ + 39.94, + 48.36 + ], + [ + 39.94, + 48.37 + ], + [ + 39.94, + 48.39 + ], + [ + 39.92, + 48.38 + ], + [ + 39.92, + 48.4 + ], + [ + 39.91, + 48.41 + ], + [ + 39.91, + 48.42 + ], + [ + 39.9, + 48.43 + ], + [ + 39.89, + 48.43 + ], + [ + 39.89, + 48.44 + ], + [ + 39.9, + 48.45 + ], + [ + 39.85, + 48.5 + ], + [ + 39.86, + 48.5 + ], + [ + 39.86, + 48.53 + ], + [ + 39.85, + 48.56 + ], + [ + 39.84, + 48.57 + ], + [ + 39.83, + 48.58 + ], + [ + 39.77, + 48.59 + ], + [ + 39.73, + 48.59 + ], + [ + 39.72, + 48.59 + ], + [ + 39.69, + 48.59 + ], + [ + 39.66, + 48.6 + ], + [ + 39.66, + 48.61 + ], + [ + 39.8, + 48.84 + ], + [ + 40.08, + 48.87 + ], + [ + 39.75, + 48.98 + ], + [ + 40.22, + 49.25 + ], + [ + 40.03, + 49.47 + ], + [ + 40.14, + 49.62 + ], + [ + 39.64, + 49.64 + ], + [ + 38.31, + 50.09 + ], + [ + 38.03, + 49.9 + ], + [ + 37.4, + 50.43 + ], + [ + 36.65, + 50.22 + ], + [ + 36.37, + 50.29 + ], + [ + 36.14, + 50.44 + ], + [ + 35.63, + 50.35 + ], + [ + 35.55, + 50.46 + ], + [ + 35.41, + 50.66 + ], + [ + 35.42, + 50.66 + ], + [ + 35.46, + 50.7 + ], + [ + 35.46, + 50.71 + ], + [ + 35.33, + 50.96 + ], + [ + 35.34, + 50.96 + ], + [ + 35.29, + 51.07 + ], + [ + 35.28, + 51.07 + ], + [ + 35.12, + 51.23 + ], + [ + 34.81, + 51.17 + ], + [ + 34.8, + 51.17 + ], + [ + 34.24, + 51.26 + ], + [ + 34.23, + 51.27 + ], + [ + 34.25, + 51.28 + ], + [ + 34.26, + 51.28 + ], + [ + 34.31, + 51.33 + ], + [ + 34.32, + 51.33 + ], + [ + 34.32, + 51.34 + ], + [ + 34.33, + 51.35 + ], + [ + 34.34, + 51.36 + ], + [ + 34.32, + 51.37 + ], + [ + 34.31, + 51.37 + ], + [ + 34.08, + 51.67 + ], + [ + 34.42, + 51.83 + ], + [ + 33.84, + 52.36 + ], + [ + 33.42, + 52.36 + ], + [ + 33.41, + 52.36 + ], + [ + 32.83, + 52.27 + ], + [ + 32.82, + 52.27 + ], + [ + 32.38, + 52.34 + ], + [ + 32.2, + 52.07 + ], + [ + 31.78, + 52.11 + ], + [ + 31.79, + 52.13 + ], + [ + 31.77, + 52.19 + ], + [ + 31.64, + 52.29 + ], + [ + 31.63, + 52.3 + ], + [ + 31.59, + 52.5 + ], + [ + 31.58, + 52.5 + ], + [ + 31.37, + 52.93 + ], + [ + 31.37, + 52.94 + ], + [ + 31.4, + 53.21 + ], + [ + 31.82, + 53.12 + ], + [ + 32.24, + 53.1 + ], + [ + 32.76, + 53.42 + ], + [ + 32.46, + 53.74 + ], + [ + 31.77, + 53.82 + ], + [ + 31.86, + 53.95 + ], + [ + 31.86, + 53.96 + ], + [ + 31.86, + 54.01 + ], + [ + 31.89, + 54.06 + ], + [ + 31.32, + 54.24 + ], + [ + 31.14, + 54.54 + ], + [ + 31.13, + 54.55 + ], + [ + 31.14, + 54.55 + ], + [ + 31.14, + 54.56 + ], + [ + 31.13, + 54.56 + ], + [ + 31.14, + 54.56 + ], + [ + 31.13, + 54.56 + ], + [ + 31.17, + 54.59 + ], + [ + 31.18, + 54.6 + ], + [ + 31.19, + 54.61 + ], + [ + 31.2, + 54.61 + ], + [ + 31.19, + 54.61 + ], + [ + 31.2, + 54.61 + ], + [ + 31.2, + 54.62 + ], + [ + 31.14, + 54.66 + ], + [ + 31.12, + 54.67 + ], + [ + 31.11, + 54.67 + ], + [ + 31.1, + 54.66 + ], + [ + 31.09, + 54.66 + ], + [ + 31.07, + 54.67 + ], + [ + 31.07, + 54.66 + ], + [ + 31.03, + 54.67 + ], + [ + 31.01, + 54.67 + ], + [ + 31, + 54.67 + ], + [ + 30.98, + 54.69 + ], + [ + 30.75, + 54.81 + ], + [ + 31, + 55.14 + ], + [ + 30.97, + 55.14 + ], + [ + 30.97, + 55.15 + ], + [ + 30.98, + 55.15 + ], + [ + 30.89, + 55.47 + ], + [ + 30.9, + 55.48 + ], + [ + 30.93, + 55.62 + ], + [ + 30.42, + 55.81 + ], + [ + 30.41, + 55.81 + ], + [ + 30.35, + 55.83 + ], + [ + 30.28, + 55.85 + ], + [ + 30.29, + 55.85 + ], + [ + 30.09, + 55.84 + ], + [ + 30.08, + 55.84 + ], + [ + 30.08, + 55.85 + ], + [ + 30.07, + 55.85 + ], + [ + 30.05, + 55.85 + ], + [ + 30.04, + 55.86 + ], + [ + 30, + 55.87 + ], + [ + 29.98, + 55.87 + ], + [ + 29.97, + 55.87 + ], + [ + 29.97, + 55.86 + ], + [ + 29.96, + 55.86 + ], + [ + 29.97, + 55.86 + ], + [ + 29.9, + 55.86 + ], + [ + 29.89, + 55.86 + ], + [ + 29.87, + 55.85 + ], + [ + 29.87, + 55.84 + ], + [ + 29.86, + 55.83 + ], + [ + 29.85, + 55.82 + ], + [ + 29.84, + 55.82 + ], + [ + 29.84, + 55.81 + ], + [ + 29.84, + 55.8 + ], + [ + 29.77, + 55.78 + ], + [ + 29.77, + 55.79 + ], + [ + 29.76, + 55.79 + ], + [ + 29.76, + 55.8 + ], + [ + 29.75, + 55.8 + ], + [ + 29.71, + 55.79 + ], + [ + 29.68, + 55.79 + ], + [ + 29.52, + 55.7 + ], + [ + 29.51, + 55.7 + ], + [ + 29.46, + 55.72 + ], + [ + 29.45, + 55.73 + ], + [ + 29.44, + 55.73 + ], + [ + 29.38, + 55.75 + ], + [ + 29.36, + 55.76 + ], + [ + 29.36, + 55.77 + ], + [ + 29.39, + 55.83 + ], + [ + 29.39, + 55.84 + ], + [ + 29.4, + 55.85 + ], + [ + 29.4, + 55.86 + ], + [ + 29.4, + 55.87 + ], + [ + 29.41, + 55.87 + ], + [ + 29.42, + 55.87 + ], + [ + 29.42, + 55.88 + ], + [ + 29.4, + 55.9 + ], + [ + 29.43, + 55.91 + ], + [ + 29.45, + 55.91 + ], + [ + 29.46, + 55.91 + ], + [ + 29.47, + 55.92 + ], + [ + 29.48, + 55.92 + ], + [ + 29.4, + 55.97 + ], + [ + 29.31, + 55.99 + ], + [ + 29.3, + 55.99 + ], + [ + 29.29, + 55.99 + ], + [ + 29.26, + 56 + ], + [ + 29.25, + 55.99 + ], + [ + 29.24, + 55.99 + ], + [ + 29.22, + 55.99 + ], + [ + 29.2, + 56 + ], + [ + 29.14, + 56.03 + ], + [ + 29.13, + 56.02 + ], + [ + 29, + 56.02 + ], + [ + 29, + 56.01 + ], + [ + 28.8, + 55.97 + ], + [ + 28.78, + 55.97 + ], + [ + 28.77, + 55.97 + ], + [ + 28.72, + 55.98 + ], + [ + 28.71, + 56 + ], + [ + 28.64, + 56.08 + ], + [ + 28.66, + 56.09 + ], + [ + 28.67, + 56.09 + ], + [ + 28.68, + 56.09 + ], + [ + 28.68, + 56.1 + ], + [ + 28.69, + 56.1 + ], + [ + 28.68, + 56.1 + ], + [ + 28.65, + 56.1 + ], + [ + 28.43, + 56.09 + ], + [ + 28.42, + 56.1 + ], + [ + 28.38, + 56.06 + ], + [ + 28.35, + 56.06 + ], + [ + 28.15, + 56.17 + ], + [ + 28.24, + 56.27 + ], + [ + 28.19, + 56.36 + ], + [ + 28.17, + 56.39 + ], + [ + 28.18, + 56.39 + ], + [ + 28.13, + 56.51 + ], + [ + 28.12, + 56.51 + ], + [ + 28.04, + 56.59 + ], + [ + 28.03, + 56.61 + ], + [ + 27.91, + 56.75 + ], + [ + 27.83, + 56.87 + ], + [ + 27.66, + 56.83 + ], + [ + 27.87, + 57.3 + ], + [ + 27.55, + 57.47 + ], + [ + 27.55, + 57.48 + ], + [ + 27.56, + 57.49 + ], + [ + 27.56, + 57.5 + ], + [ + 27.56, + 57.51 + ], + [ + 27.57, + 57.51 + ], + [ + 27.56, + 57.52 + ], + [ + 27.55, + 57.52 + ], + [ + 27.56, + 57.52 + ], + [ + 27.55, + 57.52 + ], + [ + 27.48, + 57.54 + ], + [ + 27.47, + 57.54 + ], + [ + 27.47, + 57.53 + ], + [ + 27.46, + 57.53 + ], + [ + 27.45, + 57.53 + ], + [ + 27.44, + 57.53 + ], + [ + 27.43, + 57.53 + ], + [ + 27.42, + 57.52 + ], + [ + 27.4, + 57.53 + ], + [ + 27.35, + 57.52 + ], + [ + 27.38, + 57.66 + ], + [ + 27.55, + 57.82 + ], + [ + 27.55, + 57.83 + ], + [ + 27.56, + 57.83 + ], + [ + 27.58, + 57.83 + ], + [ + 27.71, + 57.85 + ], + [ + 27.71, + 57.84 + ], + [ + 27.82, + 57.87 + ], + [ + 27.81, + 57.87 + ], + [ + 27.75, + 57.9 + ], + [ + 27.73, + 57.91 + ], + [ + 27.72, + 57.91 + ], + [ + 27.71, + 57.91 + ], + [ + 27.72, + 57.91 + ], + [ + 27.7, + 58 + ], + [ + 27.68, + 58.01 + ], + [ + 27.65, + 58.02 + ], + [ + 28.14, + 57.86 + ], + [ + 28.14, + 57.87 + ], + [ + 27.86, + 58.15 + ], + [ + 27.51, + 58.23 + ], + [ + 27.82, + 58.48 + ], + [ + 27.73, + 58.97 + ], + [ + 27.74, + 58.98 + ], + [ + 27.75, + 58.98 + ], + [ + 27.75, + 58.99 + ], + [ + 27.75, + 59 + ], + [ + 27.74, + 59 + ], + [ + 27.74, + 59.01 + ], + [ + 27.74, + 59.02 + ], + [ + 27.77, + 59.03 + ], + [ + 27.77, + 59.04 + ], + [ + 27.77, + 59.05 + ], + [ + 27.77, + 59.06 + ], + [ + 27.78, + 59.07 + ], + [ + 27.79, + 59.07 + ], + [ + 27.79, + 59.08 + ], + [ + 27.79, + 59.09 + ], + [ + 27.8, + 59.1 + ], + [ + 27.81, + 59.13 + ], + [ + 27.82, + 59.14 + ], + [ + 27.83, + 59.14 + ], + [ + 27.84, + 59.15 + ], + [ + 27.85, + 59.15 + ], + [ + 27.88, + 59.17 + ], + [ + 27.88, + 59.18 + ], + [ + 27.89, + 59.2 + ], + [ + 27.9, + 59.2 + ], + [ + 27.9, + 59.23 + ], + [ + 27.9, + 59.24 + ], + [ + 27.92, + 59.25 + ], + [ + 27.95, + 59.26 + ], + [ + 27.95, + 59.27 + ], + [ + 27.96, + 59.27 + ], + [ + 27.97, + 59.27 + ], + [ + 27.98, + 59.27 + ], + [ + 28, + 59.28 + ], + [ + 28.01, + 59.28 + ], + [ + 28.15, + 59.18 + ], + [ + 28.42, + 59.29 + ], + [ + 28.19, + 59.35 + ], + [ + 28.2, + 59.37 + ], + [ + 28.21, + 59.38 + ], + [ + 28.18, + 59.4 + ], + [ + 28.17, + 59.41 + ], + [ + 28.12, + 59.44 + ], + [ + 28.11, + 59.45 + ], + [ + 28.04, + 59.47 + ], + [ + 28.1, + 59.79 + ], + [ + 28.37, + 59.66 + ], + [ + 28.47, + 59.83 + ], + [ + 28.85, + 59.78 + ], + [ + 29.13, + 59.99 + ], + [ + 30.12, + 59.86 + ], + [ + 30.26, + 59.99 + ], + [ + 28.62, + 60.35 + ], + [ + 28.44, + 60.55 + ], + [ + 28.71, + 60.44 + ], + [ + 28.71, + 60.78 + ], + [ + 28.23, + 60.51 + ], + [ + 27.79, + 60.54 + ] + ], + [ + [ + 89.51, + 61.1 + ], + [ + 89.71, + 60.91 + ], + [ + 89.66, + 61.33 + ], + [ + 90.17, + 61.49 + ], + [ + 89.49, + 61.32 + ], + [ + 89.51, + 61.1 + ] + ], + [ + [ + 90.15, + 61.6 + ], + [ + 89.97, + 61.63 + ], + [ + 89.8, + 61.56 + ], + [ + 89.78, + 61.74 + ], + [ + 89.29, + 61.9 + ], + [ + 88.75, + 62.53 + ], + [ + 89.36, + 61.81 + ], + [ + 89.77, + 61.72 + ], + [ + 89.8, + 61.55 + ], + [ + 89.98, + 61.61 + ], + [ + 90.21, + 61.55 + ], + [ + 90.18, + 61.49 + ], + [ + 90.23, + 61.55 + ], + [ + 90.15, + 61.6 + ] + ], + [ + [ + 101.69, + 57.01 + ], + [ + 101.87, + 56.86 + ], + [ + 102.14, + 56.9 + ], + [ + 101.69, + 57.01 + ] + ], + [ + [ + 102.44, + 57.56 + ], + [ + 102.81, + 57.84 + ], + [ + 102.76, + 58.07 + ], + [ + 102.13, + 57.33 + ], + [ + 102.34, + 56.88 + ], + [ + 102.44, + 57.56 + ] + ], + [ + [ + 103.3, + 57.66 + ], + [ + 102.79, + 57.36 + ], + [ + 103.62, + 56.98 + ], + [ + 103.36, + 57.15 + ], + [ + 103.49, + 57.25 + ], + [ + 102.96, + 57.31 + ], + [ + 103.3, + 57.66 + ] + ], + [ + [ + 101.34, + 57.02 + ], + [ + 101.34, + 56.92 + ], + [ + 101.7, + 57.02 + ], + [ + 101.34, + 57.02 + ] + ], + [ + [ + 93.01, + 58.08 + ], + [ + 94.86, + 58.12 + ], + [ + 95.89, + 58.55 + ], + [ + 97.05, + 58.38 + ], + [ + 95.89, + 58.57 + ], + [ + 94.88, + 58.14 + ], + [ + 92.68, + 58.14 + ], + [ + 93.01, + 58.08 + ] + ], + [ + [ + 91.71, + 58.93 + ], + [ + 91.71, + 59.01 + ], + [ + 91.06, + 59.42 + ], + [ + 91.71, + 58.93 + ] + ], + [ + [ + 99.93, + 58.47 + ], + [ + 99.06, + 58.73 + ], + [ + 98.67, + 58.61 + ], + [ + 98.54, + 58.45 + ], + [ + 97.7, + 58.38 + ], + [ + 97.1, + 58.43 + ], + [ + 97.05, + 58.37 + ], + [ + 97.16, + 58.42 + ], + [ + 97.67, + 58.37 + ], + [ + 98.22, + 58.4 + ], + [ + 98.59, + 58.45 + ], + [ + 98.68, + 58.55 + ], + [ + 99.1, + 58.72 + ], + [ + 99.37, + 58.61 + ], + [ + 99.16, + 58.56 + ], + [ + 99.49, + 58.53 + ], + [ + 99.33, + 58.45 + ], + [ + 99.54, + 58.53 + ], + [ + 99.98, + 58.3 + ], + [ + 100.37, + 58.3 + ], + [ + 99.93, + 58.47 + ] + ], + [ + [ + 101.23, + 59 + ], + [ + 101.02, + 59.04 + ], + [ + 100.85, + 58.76 + ], + [ + 100.37, + 58.61 + ], + [ + 100.37, + 58.31 + ], + [ + 100.46, + 58.5 + ], + [ + 100.81, + 58.65 + ], + [ + 100.97, + 58.88 + ], + [ + 101.43, + 58.94 + ], + [ + 102.61, + 58.72 + ], + [ + 102.84, + 58.17 + ], + [ + 102.74, + 58.78 + ], + [ + 102.17, + 58.97 + ], + [ + 101.23, + 59 + ] + ], + [ + [ + 90, + 60.67 + ], + [ + 89.71, + 60.93 + ], + [ + 90, + 60.55 + ], + [ + 90.09, + 60.41 + ], + [ + 89.99, + 60.58 + ], + [ + 90, + 60.67 + ] + ], + [ + [ + 81.25, + 52.48 + ], + [ + 81.25, + 52.38 + ], + [ + 81.45, + 52.56 + ], + [ + 81.25, + 52.48 + ] + ], + [ + [ + 84.38, + 52.39 + ], + [ + 84.36, + 52.4 + ], + [ + 84.13, + 52.32 + ], + [ + 84.38, + 52.39 + ] + ], + [ + [ + 87.63, + 51.78 + ], + [ + 87.36, + 51.75 + ], + [ + 87.63, + 51.73 + ], + [ + 87.83, + 51.34 + ], + [ + 87.63, + 51.78 + ] + ], + [ + [ + 91.1, + 54.59 + ], + [ + 91.24, + 54.5 + ], + [ + 91.17, + 54.39 + ], + [ + 91.55, + 54.09 + ], + [ + 91.49, + 53.75 + ], + [ + 91.72, + 53.98 + ], + [ + 91.54, + 53.95 + ], + [ + 91.61, + 54.07 + ], + [ + 91.49, + 54.31 + ], + [ + 91.32, + 54.38 + ], + [ + 91.3, + 54.52 + ], + [ + 91.1, + 54.59 + ] + ], + [ + [ + 92.29, + 55.23 + ], + [ + 92.33, + 55.34 + ], + [ + 92.64, + 55.3 + ], + [ + 92.46, + 55.33 + ], + [ + 92.37, + 55.52 + ], + [ + 92.02, + 55.2 + ], + [ + 90.98, + 55.03 + ], + [ + 90.9, + 54.62 + ], + [ + 91.08, + 54.57 + ], + [ + 90.95, + 54.83 + ], + [ + 91.14, + 55.04 + ], + [ + 91.85, + 55.05 + ], + [ + 92.29, + 55.23 + ] + ], + [ + [ + 102.26, + 55.35 + ], + [ + 102.43, + 55.55 + ], + [ + 101.83, + 55.78 + ], + [ + 102.12, + 55.97 + ], + [ + 101.98, + 56.05 + ], + [ + 102.35, + 56.05 + ], + [ + 102.44, + 56.16 + ], + [ + 102.89, + 56.12 + ], + [ + 103.3, + 55 + ], + [ + 103.32, + 55.63 + ], + [ + 102.92, + 56.11 + ], + [ + 103.05, + 56.29 + ], + [ + 102.92, + 56.16 + ], + [ + 102.79, + 56.36 + ], + [ + 102.74, + 56.21 + ], + [ + 102.58, + 56.34 + ], + [ + 102.18, + 56.29 + ], + [ + 102.29, + 56.22 + ], + [ + 101.86, + 56.07 + ], + [ + 101.81, + 56.64 + ], + [ + 101.82, + 56.29 + ], + [ + 101.56, + 56.1 + ], + [ + 101.81, + 56.02 + ], + [ + 101.73, + 55.91 + ], + [ + 101.43, + 55.96 + ], + [ + 102.14, + 55.53 + ], + [ + 101.58, + 55.48 + ], + [ + 101.86, + 55.38 + ], + [ + 102.3, + 55.54 + ], + [ + 102.26, + 55.35 + ] + ], + [ + [ + 101.27, + 55.33 + ], + [ + 101.29, + 55.33 + ], + [ + 100.85, + 55.37 + ], + [ + 101.27, + 55.33 + ] + ], + [ + [ + 92.29, + 55.8 + ], + [ + 92.26, + 55.8 + ], + [ + 92.24, + 55.88 + ], + [ + 92.26, + 55.8 + ], + [ + 92.29, + 55.79 + ], + [ + 92.29, + 55.78 + ], + [ + 92.33, + 55.76 + ], + [ + 92.29, + 55.79 + ], + [ + 92.29, + 55.8 + ] + ], + [ + [ + 101.24, + 56.82 + ], + [ + 101.41, + 56.7 + ], + [ + 101.57, + 56.8 + ], + [ + 101.24, + 56.82 + ] + ], + [ + [ + 78.76, + 60.12 + ], + [ + 78.77, + 60.12 + ], + [ + 78.74, + 60.14 + ], + [ + 78.56, + 60.22 + ], + [ + 78.75, + 60.12 + ], + [ + 78.76, + 60.12 + ] + ], + [ + [ + 68.2, + 60.46 + ], + [ + 68.2, + 60.45 + ], + [ + 67.93, + 60.39 + ], + [ + 68.12, + 60.38 + ], + [ + 68.2, + 60.45 + ], + [ + 68.2, + 60.46 + ] + ], + [ + [ + 64.92, + 60.72 + ], + [ + 65, + 60.58 + ], + [ + 65.19, + 60.63 + ], + [ + 64.92, + 60.72 + ] + ], + [ + [ + 76.07, + 61.02 + ], + [ + 75.82, + 61.04 + ], + [ + 76.17, + 60.94 + ], + [ + 76.07, + 61.02 + ] + ], + [ + [ + 67.85, + 61.61 + ], + [ + 68.07, + 61.57 + ], + [ + 67.54, + 61.69 + ], + [ + 67.85, + 61.61 + ] + ], + [ + [ + 73.3, + 61.21 + ], + [ + 73.67, + 61.25 + ], + [ + 73.02, + 61.26 + ], + [ + 73.3, + 61.21 + ] + ], + [ + [ + 50.64, + 61.27 + ], + [ + 50.65, + 61.27 + ], + [ + 50.64, + 61.27 + ], + [ + 50.63, + 61.28 + ], + [ + 50.61, + 61.27 + ], + [ + 50.64, + 61.27 + ] + ], + [ + [ + 48.1, + 61.61 + ], + [ + 48.09, + 61.62 + ], + [ + 48.08, + 61.62 + ], + [ + 48.1, + 61.61 + ] + ], + [ + [ + 73.33, + 61.75 + ], + [ + 73.21, + 61.62 + ], + [ + 73.54, + 61.69 + ], + [ + 73.33, + 61.75 + ] + ], + [ + [ + 77.06, + 54.88 + ], + [ + 76.85, + 54.78 + ], + [ + 77.17, + 54.79 + ], + [ + 77.06, + 54.88 + ] + ], + [ + [ + 78.53, + 55.05 + ], + [ + 78.53, + 54.87 + ], + [ + 78.75, + 55 + ], + [ + 78.53, + 55.05 + ] + ], + [ + [ + 80.09, + 55.53 + ], + [ + 79.85, + 55.42 + ], + [ + 80.16, + 55.44 + ], + [ + 80.09, + 55.53 + ] + ], + [ + [ + 48.65, + 55.81 + ], + [ + 48.48, + 55.83 + ], + [ + 48.56, + 55.7 + ], + [ + 49, + 55.76 + ], + [ + 49.09, + 55.52 + ], + [ + 49.13, + 55.78 + ], + [ + 48.65, + 55.81 + ] + ], + [ + [ + 53.66, + 55.95 + ], + [ + 53.15, + 55.87 + ], + [ + 52.87, + 56.05 + ], + [ + 52.1, + 55.68 + ], + [ + 52.53, + 55.86 + ], + [ + 53.44, + 55.66 + ], + [ + 52.99, + 55.87 + ], + [ + 53.79, + 55.86 + ], + [ + 53.66, + 55.95 + ] + ], + [ + [ + 71.89, + 56.19 + ], + [ + 71.62, + 56.19 + ], + [ + 71.72, + 56.04 + ], + [ + 71.78, + 56.13 + ], + [ + 72.01, + 56.05 + ], + [ + 71.89, + 56.19 + ] + ], + [ + [ + 54.05, + 56.78 + ], + [ + 54.27, + 56.75 + ], + [ + 54.23, + 56.96 + ], + [ + 55.04, + 57.09 + ], + [ + 55.11, + 57.34 + ], + [ + 55.59, + 57.22 + ], + [ + 55.55, + 57.4 + ], + [ + 54.91, + 57.36 + ], + [ + 54.97, + 57.14 + ], + [ + 54.14, + 57.01 + ], + [ + 54.05, + 56.78 + ] + ], + [ + [ + 55.5, + 58.56 + ], + [ + 56.01, + 58.64 + ], + [ + 56.44, + 58.39 + ], + [ + 56.2, + 58.32 + ], + [ + 56.26, + 58.26 + ], + [ + 56.32, + 58.08 + ], + [ + 56.51, + 58.15 + ], + [ + 56.8, + 57.96 + ], + [ + 56.82, + 58.03 + ], + [ + 56.67, + 58.2 + ], + [ + 56.82, + 58.27 + ], + [ + 56.84, + 58.14 + ], + [ + 57.05, + 58.17 + ], + [ + 56.87, + 58.3 + ], + [ + 56.64, + 58.22 + ], + [ + 56.62, + 58.12 + ], + [ + 56.54, + 58.19 + ], + [ + 56.36, + 58.17 + ], + [ + 56.25, + 58.33 + ], + [ + 56.47, + 58.31 + ], + [ + 56.47, + 58.39 + ], + [ + 56.1, + 58.61 + ], + [ + 56.67, + 58.92 + ], + [ + 56.32, + 58.91 + ], + [ + 56.28, + 59.05 + ], + [ + 56.18, + 58.93 + ], + [ + 55.81, + 59 + ], + [ + 56.23, + 58.79 + ], + [ + 55.5, + 58.56 + ] + ], + [ + [ + 56.44, + 59.4 + ], + [ + 56.06, + 59.09 + ], + [ + 56.17, + 59.03 + ], + [ + 56.27, + 59.25 + ], + [ + 56.71, + 59.3 + ], + [ + 56.73, + 59.46 + ], + [ + 56.6, + 59.33 + ], + [ + 56.44, + 59.4 + ] + ], + [ + [ + 46.7, + 49.21 + ], + [ + 46.63, + 49.08 + ], + [ + 46.79, + 49.1 + ], + [ + 46.7, + 49.21 + ] + ], + [ + [ + 79.58, + 53.15 + ], + [ + 79.38, + 52.94 + ], + [ + 79.76, + 52.82 + ], + [ + 79.58, + 53.15 + ] + ], + [ + [ + 49.44, + 53.17 + ], + [ + 49.17, + 53.25 + ], + [ + 48.49, + 53.16 + ], + [ + 47.97, + 52.24 + ], + [ + 47.37, + 52.01 + ], + [ + 47.29, + 51.99 + ], + [ + 47.15, + 51.93 + ], + [ + 47.29, + 51.97 + ], + [ + 47.29, + 51.99 + ], + [ + 47.37, + 52 + ], + [ + 47.37, + 52.01 + ], + [ + 47.64, + 52.01 + ], + [ + 48.03, + 52.24 + ], + [ + 48.48, + 52.2 + ], + [ + 48.11, + 52.3 + ], + [ + 48.26, + 52.6 + ], + [ + 48.53, + 52.66 + ], + [ + 48.38, + 52.71 + ], + [ + 48.59, + 53.13 + ], + [ + 49.04, + 53.23 + ], + [ + 49.53, + 53.06 + ], + [ + 49.42, + 53.12 + ], + [ + 49.82, + 53.21 + ], + [ + 50.05, + 53.14 + ], + [ + 50.18, + 53.25 + ], + [ + 50.21, + 53.33 + ], + [ + 50.16, + 53.33 + ], + [ + 50.19, + 53.36 + ], + [ + 50.09, + 53.41 + ], + [ + 50.15, + 53.42 + ], + [ + 49.88, + 53.46 + ], + [ + 50.1, + 53.4 + ], + [ + 50.18, + 53.3 + ], + [ + 50.04, + 53.17 + ], + [ + 49.83, + 53.24 + ], + [ + 49.44, + 53.17 + ] + ], + [ + [ + 49, + 54.6 + ], + [ + 48.98, + 55 + ], + [ + 49.39, + 54.99 + ], + [ + 49.92, + 55.33 + ], + [ + 50.84, + 55.45 + ], + [ + 50.05, + 55.46 + ], + [ + 49.88, + 55.35 + ], + [ + 49.33, + 55.5 + ], + [ + 49.44, + 55.3 + ], + [ + 49.26, + 55.25 + ], + [ + 49.07, + 55.52 + ], + [ + 49.03, + 55.4 + ], + [ + 49.32, + 55.18 + ], + [ + 48.86, + 55 + ], + [ + 48.82, + 54.64 + ], + [ + 48.41, + 54.57 + ], + [ + 48.36, + 54.19 + ], + [ + 48.96, + 53.84 + ], + [ + 48.95, + 53.44 + ], + [ + 49.77, + 53.44 + ], + [ + 49.01, + 53.54 + ], + [ + 49.07, + 53.85 + ], + [ + 49.26, + 53.81 + ], + [ + 49.17, + 53.93 + ], + [ + 49.5, + 54.16 + ], + [ + 49, + 53.93 + ], + [ + 48.56, + 54.18 + ], + [ + 48.47, + 54.35 + ], + [ + 49, + 54.6 + ] + ], + [ + [ + 49.21, + 53.37 + ], + [ + 48.78, + 53.32 + ], + [ + 49.2, + 53.26 + ], + [ + 49.21, + 53.37 + ] + ], + [ + [ + 58.79, + 51.86 + ], + [ + 58.61, + 51.67 + ], + [ + 59.14, + 51.78 + ], + [ + 58.79, + 51.86 + ] + ], + [ + [ + 81.56, + 54.12 + ], + [ + 83.04, + 54.8 + ], + [ + 83.25, + 54.75 + ], + [ + 83.01, + 54.89 + ], + [ + 81.56, + 54.12 + ], + [ + 81.21, + 53.96 + ], + [ + 81.56, + 54.11 + ], + [ + 81.56, + 54.12 + ] + ], + [ + [ + 78.05, + 54.62 + ], + [ + 77.78, + 54.55 + ], + [ + 78, + 54.49 + ], + [ + 78.05, + 54.62 + ] + ], + [ + [ + 77.78, + 54.65 + ], + [ + 77.62, + 54.78 + ], + [ + 77.78, + 54.9 + ], + [ + 77.58, + 54.93 + ], + [ + 77.83, + 54.96 + ], + [ + 77.83, + 54.87 + ], + [ + 78, + 54.87 + ], + [ + 78.11, + 54.98 + ], + [ + 77.52, + 55.05 + ], + [ + 77.29, + 54.95 + ], + [ + 77.45, + 54.75 + ], + [ + 77.29, + 54.67 + ], + [ + 77.43, + 54.56 + ], + [ + 77.78, + 54.65 + ] + ], + [ + [ + 37.75, + 60.33 + ], + [ + 37.13, + 60.32 + ], + [ + 37.31, + 60.09 + ], + [ + 38.03, + 60.05 + ], + [ + 37.75, + 60.33 + ] + ], + [ + [ + 38.86, + 60.77 + ], + [ + 39.11, + 60.38 + ], + [ + 39.18, + 60.65 + ], + [ + 38.86, + 60.77 + ] + ], + [ + [ + 37.29, + 60.95 + ], + [ + 37.2, + 60.84 + ], + [ + 37.47, + 60.81 + ], + [ + 37.29, + 60.95 + ] + ], + [ + [ + 34.89, + 62.61 + ], + [ + 35.39, + 62.51 + ], + [ + 35.61, + 62.27 + ], + [ + 35.38, + 62.13 + ], + [ + 35.02, + 62.25 + ], + [ + 35.18, + 62.04 + ], + [ + 35.11, + 61.93 + ], + [ + 34.78, + 62.39 + ], + [ + 34.46, + 62.57 + ], + [ + 34.67, + 62.41 + ], + [ + 34.76, + 62.27 + ], + [ + 34.45, + 62.42 + ], + [ + 34.72, + 62.19 + ], + [ + 34.72, + 62.01 + ], + [ + 34.2, + 62.19 + ], + [ + 34.65, + 61.96 + ], + [ + 34.56, + 61.79 + ], + [ + 34.3, + 61.81 + ], + [ + 35.48, + 61.38 + ], + [ + 35.69, + 61.14 + ], + [ + 35.48, + 60.94 + ], + [ + 35.9, + 60.86 + ], + [ + 36.08, + 61.09 + ], + [ + 36.49, + 61.14 + ], + [ + 36.44, + 61.52 + ], + [ + 36.25, + 61.46 + ], + [ + 35.71, + 62.01 + ], + [ + 35.77, + 62.53 + ], + [ + 34.48, + 62.92 + ], + [ + 34.77, + 62.49 + ], + [ + 34.89, + 62.61 + ] + ], + [ + [ + 35.02, + 61.16 + ], + [ + 34.87, + 61.23 + ], + [ + 34.85, + 61.06 + ], + [ + 35.02, + 61.16 + ] + ], + [ + [ + 33.55, + 61.59 + ], + [ + 33.53, + 61.59 + ], + [ + 33.53, + 61.57 + ], + [ + 33.55, + 61.59 + ] + ], + [ + [ + 45.15, + 61.97 + ], + [ + 45.35, + 61.8 + ], + [ + 44.99, + 62.24 + ], + [ + 44.98, + 62.24 + ], + [ + 44.99, + 62.24 + ], + [ + 45.15, + 61.97 + ] + ], + [ + [ + 33.4, + 61.98 + ], + [ + 32.93, + 61.96 + ], + [ + 33.22, + 61.85 + ], + [ + 33.4, + 61.98 + ] + ], + [ + [ + 38.32, + 62.1 + ], + [ + 38.06, + 62.05 + ], + [ + 38.28, + 62.02 + ], + [ + 38.32, + 62.1 + ] + ], + [ + [ + 34.72, + 55.79 + ], + [ + 34.76, + 55.76 + ], + [ + 34.76, + 55.78 + ], + [ + 34.72, + 55.79 + ] + ], + [ + [ + 46.34, + 56.41 + ], + [ + 46.23, + 56.49 + ], + [ + 46.38, + 56.3 + ], + [ + 45.99, + 56.23 + ], + [ + 45.53, + 56.13 + ], + [ + 45.88, + 56.18 + ], + [ + 46.16, + 56.01 + ], + [ + 45.97, + 56.14 + ], + [ + 46.56, + 56.35 + ], + [ + 46.96, + 56.12 + ], + [ + 47.66, + 56.12 + ], + [ + 46.34, + 56.41 + ] + ], + [ + [ + 44.08, + 56.33 + ], + [ + 44.13, + 56.29 + ], + [ + 44.22, + 56.16 + ], + [ + 44.14, + 56.29 + ], + [ + 44.13, + 56.29 + ], + [ + 44.08, + 56.33 + ] + ], + [ + [ + 37.57, + 58.96 + ], + [ + 37.88, + 58.98 + ], + [ + 37.63, + 58.95 + ], + [ + 38.08, + 58.84 + ], + [ + 38.1, + 58.5 + ], + [ + 37.64, + 58.62 + ], + [ + 37.66, + 58.48 + ], + [ + 37.45, + 58.54 + ], + [ + 37.88, + 58.27 + ], + [ + 38.41, + 58.2 + ], + [ + 38.24, + 58.1 + ], + [ + 38.5, + 57.87 + ], + [ + 38.32, + 58.09 + ], + [ + 38.59, + 58.08 + ], + [ + 38.58, + 58.24 + ], + [ + 38.85, + 58.09 + ], + [ + 39.06, + 58.49 + ], + [ + 38.63, + 58.56 + ], + [ + 37.78, + 59.06 + ], + [ + 37.92, + 59.11 + ], + [ + 37.59, + 59.16 + ], + [ + 37.57, + 58.96 + ] + ], + [ + [ + 37.13, + 56.73 + ], + [ + 37.05, + 56.83 + ], + [ + 36.71, + 56.81 + ], + [ + 36.74, + 56.68 + ], + [ + 36.83, + 56.79 + ], + [ + 37.13, + 56.73 + ] + ], + [ + [ + 42.25, + 57.46 + ], + [ + 42.78, + 57.42 + ], + [ + 42.76, + 57.33 + ], + [ + 43.11, + 57.35 + ], + [ + 43.14, + 56.66 + ], + [ + 43.48, + 56.63 + ], + [ + 43.14, + 57.1 + ], + [ + 43.51, + 57.59 + ], + [ + 43.29, + 57.42 + ], + [ + 43.21, + 57.53 + ], + [ + 43.17, + 57.41 + ], + [ + 42.92, + 57.37 + ], + [ + 42.85, + 57.44 + ], + [ + 42.25, + 57.46 + ] + ], + [ + [ + 31.55, + 58.4 + ], + [ + 31.29, + 58.49 + ], + [ + 30.91, + 58.22 + ], + [ + 31.73, + 58.14 + ], + [ + 31.55, + 58.4 + ] + ], + [ + [ + 38.5, + 59.58 + ], + [ + 38.61, + 59.78 + ], + [ + 38.33, + 59.77 + ], + [ + 38.5, + 59.58 + ] + ], + [ + [ + 30.63, + 61.6 + ], + [ + 30.54, + 61.54 + ], + [ + 30.22, + 61.52 + ], + [ + 30.28, + 61.33 + ], + [ + 30.03, + 61.14 + ], + [ + 29.88, + 61.23 + ], + [ + 30.06, + 61.1 + ], + [ + 30.5, + 60.82 + ], + [ + 30.51, + 60.62 + ], + [ + 31.09, + 59.91 + ], + [ + 31.55, + 59.93 + ], + [ + 31.73, + 60.25 + ], + [ + 32.32, + 60.1 + ], + [ + 32.63, + 60.21 + ], + [ + 32.58, + 60.5 + ], + [ + 32.96, + 60.63 + ], + [ + 32.81, + 60.84 + ], + [ + 32.56, + 61.12 + ], + [ + 31.68, + 61.33 + ], + [ + 31.35, + 61.63 + ], + [ + 31.33, + 61.61 + ], + [ + 31.33, + 61.6 + ], + [ + 31.29, + 61.59 + ], + [ + 30.81, + 61.77 + ], + [ + 30.94, + 61.62 + ], + [ + 30.94, + 61.61 + ], + [ + 30.83, + 61.63 + ], + [ + 30.81, + 61.63 + ], + [ + 30.76, + 61.6 + ], + [ + 30.63, + 61.6 + ] + ], + [ + [ + 38.12, + 45.83 + ], + [ + 38.19, + 45.72 + ], + [ + 38.32, + 45.8 + ], + [ + 38.14, + 45.92 + ], + [ + 38.12, + 45.83 + ] + ], + [ + [ + 39.42, + 44.96 + ], + [ + 39.39, + 45.07 + ], + [ + 39.4, + 45.08 + ], + [ + 39.39, + 45.07 + ], + [ + 39.08, + 44.93 + ], + [ + 39.42, + 44.96 + ] + ], + [ + [ + 43.51, + 46.01 + ], + [ + 43.4, + 45.95 + ], + [ + 43.77, + 45.97 + ], + [ + 43.51, + 46.01 + ] + ], + [ + [ + 42.41, + 46.38 + ], + [ + 43.02, + 46.13 + ], + [ + 43.13, + 46.23 + ], + [ + 42.73, + 46.44 + ], + [ + 42.41, + 46.38 + ] + ], + [ + [ + 43.51, + 48.51 + ], + [ + 43.03, + 48.51 + ], + [ + 43.11, + 48.33 + ], + [ + 42.83, + 48.17 + ], + [ + 42.8, + 47.86 + ], + [ + 42.45, + 47.81 + ], + [ + 42.39, + 48 + ], + [ + 42.06, + 47.57 + ], + [ + 42.53, + 47.61 + ], + [ + 42.98, + 47.85 + ], + [ + 43.07, + 47.72 + ], + [ + 43.12, + 48.22 + ], + [ + 43.51, + 48.51 + ] + ], + [ + [ + 45.75, + 50.33 + ], + [ + 45.34, + 50.01 + ], + [ + 44.67, + 48.93 + ], + [ + 44.52, + 48.68 + ], + [ + 45.02, + 49.1 + ], + [ + 45.53, + 50.12 + ], + [ + 45.79, + 50.3 + ], + [ + 46.33, + 50.23 + ], + [ + 45.92, + 50.29 + ], + [ + 45.82, + 50.68 + ], + [ + 45.7, + 50.66 + ], + [ + 46.08, + 50.79 + ], + [ + 45.91, + 51.25 + ], + [ + 46.3, + 51.62 + ], + [ + 45.8, + 51.32 + ], + [ + 46.04, + 50.86 + ], + [ + 45.65, + 50.72 + ], + [ + 45.87, + 50.43 + ], + [ + 45.75, + 50.33 + ] + ], + [ + [ + 46.71, + 51.75 + ], + [ + 46.36, + 51.8 + ], + [ + 46.17, + 51.66 + ], + [ + 46.71, + 51.75 + ] + ], + [ + [ + 44.65, + 48.52 + ], + [ + 44.94, + 48.47 + ], + [ + 44.46, + 48.57 + ], + [ + 44.65, + 48.52 + ] + ], + [ + [ + 45.1, + 53.09 + ], + [ + 45.35, + 52.91 + ], + [ + 45.48, + 53.05 + ], + [ + 45.1, + 53.09 + ] + ], + [ + [ + 99.07, + 72.22 + ], + [ + 98.84, + 72.29 + ], + [ + 98.79, + 72.15 + ], + [ + 99.07, + 72.22 + ] + ], + [ + [ + 101.47, + 74.03 + ], + [ + 101.23, + 74.39 + ], + [ + 100.61, + 74.4 + ], + [ + 101.23, + 74.48 + ], + [ + 102.23, + 74.19 + ], + [ + 102, + 74.53 + ], + [ + 102.9, + 74.44 + ], + [ + 102.72, + 74.54 + ], + [ + 104.02, + 74.6 + ], + [ + 104.02, + 74.73 + ], + [ + 105.9, + 74.83 + ], + [ + 104.77, + 74.92 + ], + [ + 104.19, + 75.14 + ], + [ + 103.86, + 74.93 + ], + [ + 104.48, + 74.88 + ], + [ + 104.26, + 74.79 + ], + [ + 101.54, + 74.6 + ], + [ + 100.36, + 74.95 + ], + [ + 100.64, + 74.59 + ], + [ + 100.23, + 74.38 + ], + [ + 99.17, + 74.41 + ], + [ + 99.91, + 74.34 + ], + [ + 99.62, + 74.26 + ], + [ + 99.73, + 74.25 + ], + [ + 99.71, + 74.03 + ], + [ + 100.05, + 73.96 + ], + [ + 99.8, + 74.3 + ], + [ + 100.55, + 74.37 + ], + [ + 101.25, + 74.02 + ], + [ + 100.99, + 73.87 + ], + [ + 101.54, + 73.82 + ], + [ + 101.47, + 74.03 + ] + ], + [ + [ + 89.38, + 69.43 + ], + [ + 88.82, + 69.31 + ], + [ + 89.62, + 69.38 + ], + [ + 89.38, + 69.43 + ] + ], + [ + [ + 89.95, + 69.58 + ], + [ + 89.72, + 69.44 + ], + [ + 90.15, + 69.53 + ], + [ + 91.6, + 69.4 + ], + [ + 89.95, + 69.58 + ] + ], + [ + [ + 87.69, + 70.08 + ], + [ + 87.39, + 69.89 + ], + [ + 87.89, + 69.5 + ], + [ + 88.13, + 69.61 + ], + [ + 87.64, + 69.95 + ], + [ + 88.04, + 70.07 + ], + [ + 87.69, + 70.08 + ] + ], + [ + [ + 90.04, + 71.93 + ], + [ + 89.96, + 71.71 + ], + [ + 89.3, + 71.56 + ], + [ + 89.99, + 71.7 + ], + [ + 90.94, + 72.52 + ], + [ + 91.47, + 72.49 + ], + [ + 91.6, + 72.53 + ], + [ + 91.36, + 72.5 + ], + [ + 91.31, + 72.52 + ], + [ + 91.46, + 72.54 + ], + [ + 91.45, + 72.58 + ], + [ + 91.16, + 72.65 + ], + [ + 91.13, + 72.87 + ], + [ + 91.38, + 72.82 + ], + [ + 91.08, + 73.17 + ], + [ + 90.75, + 73.27 + ], + [ + 88.4, + 73.18 + ], + [ + 90.1, + 73.16 + ], + [ + 90.74, + 73.25 + ], + [ + 91, + 73.19 + ], + [ + 91.13, + 72.66 + ], + [ + 91.43, + 72.55 + ], + [ + 90.91, + 72.53 + ], + [ + 90.04, + 71.93 + ] + ], + [ + [ + 96.79, + 70.87 + ], + [ + 96.18, + 70.82 + ], + [ + 97.16, + 70.84 + ], + [ + 96.79, + 70.87 + ] + ], + [ + [ + 89.82, + 70.86 + ], + [ + 91.62, + 71.06 + ], + [ + 89.91, + 70.89 + ], + [ + 89.75, + 71.14 + ], + [ + 89.17, + 71.24 + ], + [ + 89.3, + 71.55 + ], + [ + 89.09, + 71.27 + ], + [ + 89.28, + 71.17 + ], + [ + 89.78, + 71.08 + ], + [ + 89.82, + 70.86 + ] + ], + [ + [ + 94.57, + 70.96 + ], + [ + 94.76, + 70.96 + ], + [ + 94.55, + 70.98 + ], + [ + 94.45, + 70.95 + ], + [ + 94.07, + 70.79 + ], + [ + 94.06, + 70.72 + ], + [ + 94.44, + 70.7 + ], + [ + 94.08, + 70.75 + ], + [ + 94.25, + 70.87 + ], + [ + 94.57, + 70.96 + ] + ], + [ + [ + 96.06, + 70.83 + ], + [ + 96.09, + 70.84 + ], + [ + 95.64, + 70.86 + ], + [ + 95.61, + 70.87 + ], + [ + 95.68, + 70.83 + ], + [ + 96.06, + 70.83 + ] + ], + [ + [ + 99.25, + 72.24 + ], + [ + 99.18, + 72.15 + ], + [ + 99.29, + 72.17 + ], + [ + 100.02, + 72.35 + ], + [ + 99.44, + 72.42 + ], + [ + 99.25, + 72.24 + ] + ], + [ + [ + 89.99, + 65.27 + ], + [ + 90.01, + 65.24 + ], + [ + 90.01, + 65.16 + ], + [ + 89.99, + 65.15 + ], + [ + 90.01, + 65.16 + ], + [ + 90.01, + 65.24 + ], + [ + 89.99, + 65.27 + ] + ], + [ + [ + 94.26, + 64.16 + ], + [ + 94.36, + 64.18 + ], + [ + 94.35, + 64.18 + ], + [ + 94.26, + 64.16 + ], + [ + 94.22, + 64.17 + ], + [ + 94.13, + 64.17 + ], + [ + 94.09, + 64.16 + ], + [ + 94.13, + 64.17 + ], + [ + 94.22, + 64.17 + ], + [ + 94.26, + 64.16 + ] + ], + [ + [ + 101.21, + 66.19 + ], + [ + 101.25, + 66.2 + ], + [ + 101.23, + 66.2 + ], + [ + 101.21, + 66.19 + ] + ], + [ + [ + 87.76, + 66.52 + ], + [ + 87.63, + 66.52 + ], + [ + 87.58, + 66.53 + ], + [ + 87.57, + 66.53 + ], + [ + 87.6, + 66.51 + ], + [ + 87.63, + 66.52 + ], + [ + 87.63, + 66.51 + ], + [ + 87.76, + 66.52 + ] + ], + [ + [ + 88.57, + 67.03 + ], + [ + 88.27, + 66.96 + ], + [ + 89.06, + 67.05 + ], + [ + 89.14, + 66.97 + ], + [ + 88.95, + 66.92 + ], + [ + 89.34, + 66.95 + ], + [ + 90.23, + 67.26 + ], + [ + 89.08, + 67.12 + ], + [ + 89.6, + 67.09 + ], + [ + 89.43, + 67.03 + ], + [ + 89.14, + 67.07 + ], + [ + 88.79, + 67.02 + ], + [ + 88.84, + 67.13 + ], + [ + 88.57, + 67.03 + ] + ], + [ + [ + 94.09, + 66.5 + ], + [ + 93.81, + 66.79 + ], + [ + 93.99, + 67.11 + ], + [ + 93.72, + 66.79 + ], + [ + 94.09, + 66.5 + ] + ], + [ + [ + 91.93, + 68.37 + ], + [ + 92.41, + 68.41 + ], + [ + 92.02, + 68.41 + ], + [ + 92.2, + 68.52 + ], + [ + 90.86, + 68.32 + ], + [ + 89.61, + 68.36 + ], + [ + 90.09, + 68.2 + ], + [ + 91.93, + 68.37 + ] + ], + [ + [ + 102.17, + 68.48 + ], + [ + 102.48, + 68.33 + ], + [ + 102.63, + 68.46 + ], + [ + 102.17, + 68.48 + ] + ], + [ + [ + 91.58, + 68.66 + ], + [ + 91.36, + 68.57 + ], + [ + 91.89, + 68.77 + ], + [ + 91.58, + 68.66 + ] + ], + [ + [ + 83.54, + 67.22 + ], + [ + 83.39, + 67.15 + ], + [ + 83.74, + 67.17 + ], + [ + 83.54, + 67.22 + ] + ], + [ + [ + 51.72, + 67.26 + ], + [ + 51.97, + 67.31 + ], + [ + 51.72, + 67.41 + ], + [ + 51.72, + 67.26 + ] + ], + [ + [ + 89.03, + 68.43 + ], + [ + 89.3, + 68.57 + ], + [ + 88.77, + 68.43 + ], + [ + 87.42, + 68.24 + ], + [ + 87.83, + 68.11 + ], + [ + 87.22, + 67.84 + ], + [ + 87.36, + 67.44 + ], + [ + 87.81, + 67.63 + ], + [ + 87.65, + 67.74 + ], + [ + 88.53, + 67.99 + ], + [ + 87.76, + 67.85 + ], + [ + 88.05, + 68.12 + ], + [ + 89.03, + 68.43 + ] + ], + [ + [ + 53, + 67.82 + ], + [ + 52.98, + 67.81 + ], + [ + 52.76, + 67.76 + ], + [ + 52.98, + 67.8 + ], + [ + 52.98, + 67.81 + ], + [ + 53.09, + 67.81 + ], + [ + 53.11, + 67.8 + ], + [ + 53.09, + 67.81 + ], + [ + 53.22, + 67.84 + ], + [ + 53, + 67.82 + ] + ], + [ + [ + 79.23, + 71.3 + ], + [ + 79.32, + 71.1 + ], + [ + 79.61, + 71.22 + ], + [ + 79.23, + 71.3 + ] + ], + [ + [ + 71.06, + 69.96 + ], + [ + 70.84, + 70.21 + ], + [ + 70.16, + 70.04 + ], + [ + 70.73, + 70.11 + ], + [ + 71.06, + 69.96 + ] + ], + [ + [ + 83.99, + 72.91 + ], + [ + 83.8, + 72.81 + ], + [ + 84.42, + 72.81 + ], + [ + 83.99, + 72.91 + ] + ], + [ + [ + 53.09, + 68.72 + ], + [ + 52.85, + 68.67 + ], + [ + 53.13, + 68.59 + ], + [ + 53.09, + 68.72 + ] + ], + [ + [ + 71.32, + 67.88 + ], + [ + 71.82, + 67.97 + ], + [ + 71.06, + 67.94 + ], + [ + 71.32, + 67.88 + ] + ], + [ + [ + 53.77, + 65.44 + ], + [ + 54.33, + 65.45 + ], + [ + 55.39, + 66.17 + ], + [ + 54.32, + 65.48 + ], + [ + 53.79, + 65.47 + ], + [ + 53.37, + 65.36 + ], + [ + 53.77, + 65.44 + ] + ], + [ + [ + 64.34, + 65.73 + ], + [ + 64.38, + 65.63 + ], + [ + 64.72, + 65.7 + ], + [ + 64.34, + 65.73 + ] + ], + [ + [ + 44.98, + 65.48 + ], + [ + 44.99, + 65.48 + ], + [ + 45.01, + 65.46 + ], + [ + 44.99, + 65.48 + ], + [ + 44.98, + 65.48 + ], + [ + 44.96, + 65.49 + ], + [ + 44.69, + 65.54 + ], + [ + 44.98, + 65.48 + ] + ], + [ + [ + 52.34, + 65.4 + ], + [ + 52.14, + 65.65 + ], + [ + 52.08, + 65.44 + ], + [ + 52.34, + 65.4 + ] + ], + [ + [ + 65.02, + 66.09 + ], + [ + 65.02, + 65.91 + ], + [ + 65.37, + 65.9 + ], + [ + 65.21, + 66.11 + ], + [ + 65.02, + 66.09 + ] + ], + [ + [ + 56.26, + 66.35 + ], + [ + 55.92, + 66.34 + ], + [ + 56.18, + 66.32 + ], + [ + 56.91, + 65.97 + ], + [ + 56.69, + 66.1 + ], + [ + 56.71, + 66.09 + ], + [ + 56.69, + 66.1 + ], + [ + 56.26, + 66.35 + ] + ], + [ + [ + 52.47, + 66.52 + ], + [ + 52.45, + 66.52 + ], + [ + 52.4, + 66.51 + ], + [ + 52.4, + 66.5 + ], + [ + 52.45, + 66.51 + ], + [ + 52.45, + 66.52 + ], + [ + 52.47, + 66.52 + ] + ], + [ + [ + 69.73, + 66.65 + ], + [ + 70.03, + 66.54 + ], + [ + 69.48, + 66.76 + ], + [ + 69.73, + 66.65 + ] + ], + [ + [ + 85.22, + 66.88 + ], + [ + 85.2, + 66.76 + ], + [ + 85.54, + 66.77 + ], + [ + 85.22, + 66.88 + ] + ], + [ + [ + 65.19, + 62.91 + ], + [ + 65.88, + 62.45 + ], + [ + 66.36, + 62.41 + ], + [ + 66.49, + 62.25 + ], + [ + 67.06, + 62.2 + ], + [ + 67.32, + 62.09 + ], + [ + 66.97, + 62.28 + ], + [ + 66.6, + 62.26 + ], + [ + 66.4, + 62.41 + ], + [ + 65.94, + 62.47 + ], + [ + 65.19, + 62.91 + ] + ], + [ + [ + 65.26, + 64.17 + ], + [ + 65.26, + 64.18 + ], + [ + 65.21, + 64.17 + ], + [ + 65.26, + 64.17 + ] + ], + [ + [ + 52.7, + 65.39 + ], + [ + 52.38, + 65.43 + ], + [ + 52.91, + 65.27 + ], + [ + 53.45, + 65.33 + ], + [ + 52.7, + 65.39 + ] + ], + [ + [ + 42.63, + 63 + ], + [ + 42.36, + 63.04 + ], + [ + 42.73, + 62.86 + ], + [ + 42.63, + 63 + ] + ], + [ + [ + 73.65, + 65.23 + ], + [ + 72.82, + 65.43 + ], + [ + 73.92, + 65.15 + ], + [ + 73.65, + 65.23 + ] + ], + [ + [ + 41.9, + 63.58 + ], + [ + 41.49, + 63.71 + ], + [ + 41.86, + 63.51 + ], + [ + 41.91, + 63.4 + ], + [ + 41.92, + 63.57 + ], + [ + 41.9, + 63.58 + ] + ], + [ + [ + 57.08, + 65.26 + ], + [ + 57.02, + 65.35 + ], + [ + 57.04, + 65.13 + ], + [ + 57.08, + 65.26 + ] + ], + [ + [ + 41.4, + 64.32 + ], + [ + 41.83, + 64.25 + ], + [ + 40.96, + 64.43 + ], + [ + 40.98, + 64.36 + ], + [ + 41.4, + 64.32 + ] + ], + [ + [ + 65.2, + 63.12 + ], + [ + 64.97, + 63.03 + ], + [ + 65.17, + 62.91 + ], + [ + 65.2, + 63.12 + ] + ], + [ + [ + 32.34, + 66.51 + ], + [ + 32.06, + 66.5 + ], + [ + 31.77, + 66.48 + ], + [ + 32.26, + 66.51 + ], + [ + 32.34, + 66.51 + ] + ], + [ + [ + 30.85, + 66.67 + ], + [ + 30.74, + 66.58 + ], + [ + 31.31, + 66.58 + ], + [ + 30.85, + 66.67 + ] + ], + [ + [ + 32.29, + 66.84 + ], + [ + 31.52, + 66.74 + ], + [ + 32.2, + 66.58 + ], + [ + 32.29, + 66.84 + ] + ], + [ + [ + 30.94, + 68.58 + ], + [ + 30.81, + 68.35 + ], + [ + 31.77, + 68.62 + ], + [ + 31.16, + 68.64 + ], + [ + 30.59, + 68.66 + ], + [ + 30.94, + 68.58 + ] + ], + [ + [ + 34.98, + 66.93 + ], + [ + 34.85, + 66.83 + ], + [ + 35.29, + 66.75 + ], + [ + 34.98, + 66.93 + ] + ], + [ + [ + 32.78, + 67.53 + ], + [ + 33.13, + 67.43 + ], + [ + 33.37, + 67.53 + ], + [ + 33.02, + 67.59 + ], + [ + 33.31, + 68.11 + ], + [ + 33.13, + 67.83 + ], + [ + 32.8, + 67.81 + ], + [ + 32.98, + 67.58 + ], + [ + 32.5, + 67.66 + ], + [ + 32.8, + 67.54 + ], + [ + 32.29, + 67.47 + ], + [ + 32.17, + 67.57 + ], + [ + 31.77, + 67.63 + ], + [ + 31.91, + 67.68 + ], + [ + 32.21, + 67.57 + ], + [ + 32.21, + 67.7 + ], + [ + 31.57, + 67.68 + ], + [ + 31.99, + 67.55 + ], + [ + 32.12, + 67.56 + ], + [ + 32.08, + 67.52 + ], + [ + 31.85, + 67.54 + ], + [ + 32.12, + 67.39 + ], + [ + 32.78, + 67.53 + ] + ], + [ + [ + 35.38, + 68.63 + ], + [ + 35.58, + 68.83 + ], + [ + 35.31, + 68.75 + ], + [ + 35.31, + 68.43 + ], + [ + 35.42, + 68.56 + ], + [ + 35.38, + 68.63 + ] + ], + [ + [ + 33.73, + 67.2 + ], + [ + 33.75, + 67.17 + ], + [ + 33.77, + 67.17 + ], + [ + 33.73, + 67.2 + ] + ], + [ + [ + 35.24, + 64.01 + ], + [ + 35.16, + 64 + ], + [ + 35.22, + 63.9 + ], + [ + 35.24, + 64.01 + ] + ], + [ + [ + 30.98, + 65.11 + ], + [ + 30.72, + 65.07 + ], + [ + 30.59, + 65.05 + ], + [ + 30.72, + 64.92 + ], + [ + 30.98, + 65.11 + ] + ], + [ + [ + 30.88, + 65.2 + ], + [ + 32.02, + 64.85 + ], + [ + 31.55, + 65.16 + ], + [ + 30.88, + 65.2 + ] + ], + [ + [ + 30.87, + 64.03 + ], + [ + 30.81, + 64.05 + ], + [ + 30.87, + 64.03 + ], + [ + 31.03, + 64 + ], + [ + 31.03, + 64.01 + ], + [ + 30.87, + 64.03 + ] + ], + [ + [ + 31.72, + 64.57 + ], + [ + 31.8, + 64.45 + ], + [ + 31.33, + 64.45 + ], + [ + 32.04, + 64.39 + ], + [ + 31.72, + 64.57 + ] + ], + [ + [ + 31.86, + 65.9 + ], + [ + 31.44, + 65.8 + ], + [ + 31.58, + 65.68 + ], + [ + 32.7, + 65.36 + ], + [ + 31.96, + 65.82 + ], + [ + 32.2, + 65.87 + ], + [ + 31.86, + 65.9 + ] + ], + [ + [ + 33.03, + 65.91 + ], + [ + 32.95, + 66.07 + ], + [ + 32.7, + 66 + ], + [ + 32.96, + 65.8 + ], + [ + 32.7, + 65.74 + ], + [ + 33.07, + 65.8 + ], + [ + 33.03, + 65.91 + ] + ], + [ + [ + 30.83, + 66.27 + ], + [ + 30.61, + 66.04 + ], + [ + 31.33, + 65.86 + ], + [ + 31.14, + 66.23 + ], + [ + 30.83, + 66.27 + ] + ], + [ + [ + 32.04, + 66.36 + ], + [ + 31.64, + 66.36 + ], + [ + 31.6, + 66.24 + ], + [ + 32.08, + 66.19 + ], + [ + 32.04, + 66.36 + ] + ], + [ + [ + 36.85, + 62.21 + ], + [ + 37.11, + 62.25 + ], + [ + 36.94, + 62.5 + ], + [ + 36.85, + 62.21 + ] + ], + [ + [ + 34.32, + 62.25 + ], + [ + 33.97, + 62.56 + ], + [ + 33.97, + 62.36 + ], + [ + 34.32, + 62.25 + ] + ], + [ + [ + 33.75, + 62.67 + ], + [ + 33.73, + 62.63 + ], + [ + 33.79, + 62.49 + ], + [ + 33.75, + 62.67 + ] + ], + [ + [ + 33.79, + 63.45 + ], + [ + 33.77, + 63.45 + ], + [ + 33.73, + 63.47 + ], + [ + 33.75, + 63.45 + ], + [ + 33.77, + 63.45 + ], + [ + 33.79, + 63.45 + ] + ], + [ + [ + 34.89, + 63.67 + ], + [ + 34.2, + 63.88 + ], + [ + 34.67, + 63.39 + ], + [ + 35, + 63.13 + ], + [ + 34.8, + 63.46 + ], + [ + 35.09, + 63.39 + ], + [ + 35.58, + 63.41 + ], + [ + 35.02, + 63.48 + ], + [ + 34.89, + 63.67 + ] + ], + [ + [ + 34.19, + 62.61 + ], + [ + 33.99, + 62.67 + ], + [ + 34.15, + 62.53 + ], + [ + 34.19, + 62.61 + ] + ], + [ + [ + 30.41, + 63.59 + ], + [ + 30.73, + 63.53 + ], + [ + 30.45, + 63.63 + ], + [ + 30.41, + 63.59 + ] + ], + [ + [ + 30.76, + 63.96 + ], + [ + 30.85, + 63.69 + ], + [ + 31.19, + 63.61 + ], + [ + 30.76, + 63.96 + ] + ], + [ + [ + 33.11, + 63.9 + ], + [ + 33.47, + 63.67 + ], + [ + 33.64, + 63.74 + ], + [ + 33.11, + 63.9 + ] + ], + [ + [ + 159.57, + 69.73 + ], + [ + 159.43, + 69.75 + ], + [ + 159.53, + 69.89 + ], + [ + 159.21, + 69.59 + ], + [ + 159.43, + 69.75 + ], + [ + 159.57, + 69.73 + ] + ], + [ + [ + 159.04, + 70.1 + ], + [ + 158.51, + 70.01 + ], + [ + 158.84, + 69.93 + ], + [ + 159.04, + 70.1 + ] + ], + [ + [ + 155.92, + 67.79 + ], + [ + 155.83, + 67.91 + ], + [ + 155.65, + 67.8 + ], + [ + 155.92, + 67.79 + ] + ], + [ + [ + 154.89, + 68.27 + ], + [ + 154.79, + 68.12 + ], + [ + 155.08, + 68.11 + ], + [ + 154.89, + 68.27 + ] + ], + [ + [ + 154.67, + 68.48 + ], + [ + 154.56, + 68.53 + ], + [ + 154.73, + 68.61 + ], + [ + 155.21, + 68.58 + ], + [ + 155.21, + 68.66 + ], + [ + 155.17, + 68.61 + ], + [ + 155, + 68.63 + ], + [ + 154.56, + 68.6 + ], + [ + 154.59, + 68.64 + ], + [ + 154.45, + 68.64 + ], + [ + 154.6, + 68.45 + ], + [ + 154.67, + 68.48 + ] + ], + [ + [ + 158.74, + 69.16 + ], + [ + 158.55, + 69.03 + ], + [ + 159.04, + 69.14 + ], + [ + 158.74, + 69.16 + ] + ], + [ + [ + 160.53, + 69.23 + ], + [ + 159.82, + 69.41 + ], + [ + 159.83, + 69.23 + ], + [ + 160.53, + 69.23 + ] + ], + [ + [ + 159.61, + 69.01 + ], + [ + 159.65, + 68.93 + ], + [ + 159.7, + 68.99 + ], + [ + 159.61, + 69.01 + ] + ], + [ + [ + 160.09, + 68.96 + ], + [ + 159.7, + 68.9 + ], + [ + 160.18, + 68.91 + ], + [ + 160.09, + 68.96 + ] + ], + [ + [ + 154.76, + 68.72 + ], + [ + 154.6, + 68.69 + ], + [ + 154.85, + 68.67 + ], + [ + 154.7, + 68.62 + ], + [ + 155.08, + 68.66 + ], + [ + 154.76, + 68.72 + ] + ], + [ + [ + 155.81, + 69.47 + ], + [ + 155.55, + 69.41 + ], + [ + 155.82, + 69.36 + ], + [ + 155.81, + 69.47 + ] + ], + [ + [ + 177.03, + 62.86 + ], + [ + 176.97, + 62.65 + ], + [ + 177.41, + 62.56 + ], + [ + 177.52, + 62.82 + ], + [ + 177.23, + 62.69 + ], + [ + 177.03, + 62.86 + ] + ], + [ + [ + 162.98, + 56.54 + ], + [ + 162.41, + 56.39 + ], + [ + 162.55, + 56.23 + ], + [ + 163.08, + 56.45 + ], + [ + 162.98, + 56.54 + ] + ], + [ + [ + 178.35, + 63.63 + ], + [ + 178.37, + 63.51 + ], + [ + 178.68, + 63.58 + ], + [ + 178.35, + 63.63 + ] + ], + [ + [ + 178.61, + 63.67 + ], + [ + 178.8, + 63.51 + ], + [ + 178.61, + 63.41 + ], + [ + 178.9, + 63.4 + ], + [ + 178.79, + 63.63 + ], + [ + 178.61, + 63.67 + ] + ], + [ + [ + 160.28, + 54.9 + ], + [ + 159.99, + 54.75 + ], + [ + 160.36, + 54.72 + ], + [ + 160.28, + 54.9 + ] + ], + [ + [ + 176.7, + 62.61 + ], + [ + 176.66, + 62.52 + ], + [ + 176.9, + 62.57 + ], + [ + 176.7, + 62.61 + ] + ], + [ + [ + 174.49, + 64.57 + ], + [ + 174.08, + 64.49 + ], + [ + 174.59, + 64.4 + ], + [ + 174.78, + 64.57 + ], + [ + 174.49, + 64.57 + ] + ], + [ + [ + 173.94, + 64.96 + ], + [ + 174.1, + 64.76 + ], + [ + 174.77, + 64.58 + ], + [ + 174.86, + 64.69 + ], + [ + 174.11, + 64.77 + ], + [ + 173.94, + 64.96 + ] + ], + [ + [ + 155.59, + 67.59 + ], + [ + 155.42, + 67.64 + ], + [ + 155.04, + 67.62 + ], + [ + 155.46, + 67.63 + ], + [ + 155.46, + 67.61 + ], + [ + 155.59, + 67.59 + ] + ], + [ + [ + 151.79, + 68.37 + ], + [ + 151.66, + 68.26 + ], + [ + 152.23, + 68.29 + ], + [ + 151.79, + 68.37 + ] + ], + [ + [ + 151.96, + 68.53 + ], + [ + 151.61, + 68.42 + ], + [ + 151.92, + 68.39 + ], + [ + 151.96, + 68.53 + ] + ], + [ + [ + 146.63, + 69.3 + ], + [ + 146.45, + 69.22 + ], + [ + 146.82, + 69.22 + ], + [ + 146.63, + 69.3 + ] + ], + [ + [ + 147.17, + 69.63 + ], + [ + 147.08, + 69.61 + ], + [ + 147.17, + 69.6 + ], + [ + 147.17, + 69.63 + ] + ], + [ + [ + 147.26, + 70.1 + ], + [ + 147.61, + 70 + ], + [ + 147.5, + 70.17 + ], + [ + 147.26, + 70.1 + ] + ], + [ + [ + 146.95, + 71.03 + ], + [ + 146.72, + 71.23 + ], + [ + 146.54, + 71.12 + ], + [ + 146.95, + 71.03 + ] + ], + [ + [ + 141.81, + 71.42 + ], + [ + 141.75, + 71.39 + ], + [ + 141.72, + 71.39 + ], + [ + 141.75, + 71.39 + ], + [ + 141.77, + 71.39 + ], + [ + 141.81, + 71.42 + ] + ], + [ + [ + 142.29, + 72.55 + ], + [ + 141.88, + 72.61 + ], + [ + 141.66, + 72.45 + ], + [ + 142.29, + 72.55 + ] + ], + [ + [ + 148.99, + 72.15 + ], + [ + 149.11, + 71.88 + ], + [ + 149.37, + 72.04 + ], + [ + 148.99, + 72.15 + ] + ], + [ + [ + 140.36, + 52.51 + ], + [ + 140.25, + 52.6 + ], + [ + 140.41, + 52.38 + ], + [ + 140.36, + 52.51 + ] + ], + [ + [ + 139.82, + 53.57 + ], + [ + 139.61, + 53.46 + ], + [ + 139.79, + 53.33 + ], + [ + 139.82, + 53.57 + ] + ], + [ + [ + 135.33, + 61.6 + ], + [ + 135.46, + 61.6 + ], + [ + 135.33, + 61.48 + ], + [ + 135.35, + 61.41 + ], + [ + 135.46, + 61.6 + ], + [ + 135.33, + 61.6 + ] + ], + [ + [ + 149.46, + 61.61 + ], + [ + 150.21, + 62.11 + ], + [ + 149.6, + 61.9 + ], + [ + 149.46, + 61.61 + ] + ], + [ + [ + 151.86, + 62.52 + ], + [ + 152.14, + 62.38 + ], + [ + 152.02, + 62.58 + ], + [ + 151.86, + 62.52 + ] + ], + [ + [ + 151.57, + 66.23 + ], + [ + 151.81, + 66.32 + ], + [ + 150.73, + 66.08 + ], + [ + 151.57, + 66.23 + ] + ], + [ + [ + 135.57, + 62.58 + ], + [ + 135.57, + 62.65 + ], + [ + 135.48, + 62.67 + ], + [ + 135.37, + 62.66 + ], + [ + 135.24, + 62.58 + ], + [ + 135.37, + 62.65 + ], + [ + 135.56, + 62.64 + ], + [ + 135.53, + 62.56 + ], + [ + 135.77, + 62.38 + ], + [ + 135.57, + 62.58 + ] + ], + [ + [ + 152.42, + 66.64 + ], + [ + 152.74, + 66.92 + ], + [ + 152.4, + 66.63 + ], + [ + 151.94, + 66.53 + ], + [ + 151.86, + 66.46 + ], + [ + 151.81, + 66.32 + ], + [ + 151.94, + 66.51 + ], + [ + 151.96, + 66.52 + ], + [ + 152.01, + 66.52 + ], + [ + 152.03, + 66.52 + ], + [ + 152.01, + 66.52 + ], + [ + 152.4, + 66.63 + ], + [ + 152.42, + 66.64 + ] + ], + [ + [ + 153.18, + 67.14 + ], + [ + 153.7, + 67.16 + ], + [ + 153.76, + 67.47 + ], + [ + 154.68, + 67.52 + ], + [ + 155.08, + 67.62 + ], + [ + 153.75, + 67.49 + ], + [ + 153.68, + 67.19 + ], + [ + 153.18, + 67.14 + ] + ], + [ + [ + 135.55, + 48.79 + ], + [ + 135.02, + 48.66 + ], + [ + 135.01, + 48.53 + ], + [ + 135.55, + 48.79 + ] + ], + [ + [ + 139.98, + 52.21 + ], + [ + 139.66, + 51.96 + ], + [ + 140.16, + 52.2 + ], + [ + 139.98, + 52.21 + ] + ], + [ + [ + 140.08, + 51.75 + ], + [ + 140, + 51.67 + ], + [ + 140.22, + 51.65 + ], + [ + 140.14, + 51.53 + ], + [ + 140.6, + 51.62 + ], + [ + 140.2, + 51.7 + ], + [ + 140.02, + 51.67 + ], + [ + 140.3, + 51.77 + ], + [ + 140.12, + 51.76 + ], + [ + 140.27, + 51.88 + ], + [ + 140.08, + 51.75 + ] + ], + [ + [ + 136.07, + 48.98 + ], + [ + 135.92, + 48.87 + ], + [ + 136.27, + 49 + ], + [ + 136.3, + 49.17 + ], + [ + 136.07, + 48.98 + ] + ], + [ + [ + 136.23, + 49.82 + ], + [ + 136.27, + 49.66 + ], + [ + 136.58, + 49.95 + ], + [ + 136.23, + 49.82 + ] + ], + [ + [ + 136.75, + 49.98 + ], + [ + 136.82, + 49.51 + ], + [ + 136.45, + 49.47 + ], + [ + 136.38, + 49.29 + ], + [ + 136.83, + 49.48 + ], + [ + 136.82, + 49.8 + ], + [ + 136.82, + 49.85 + ], + [ + 137.07, + 50.21 + ], + [ + 136.89, + 50.22 + ], + [ + 136.73, + 50.23 + ], + [ + 136.75, + 49.98 + ] + ], + [ + [ + 136.66, + 52.11 + ], + [ + 136.43, + 52.05 + ], + [ + 136.45, + 51.88 + ], + [ + 136.76, + 51.97 + ], + [ + 136.66, + 52.11 + ] + ], + [ + [ + 137.43, + 50.68 + ], + [ + 137.27, + 50.69 + ], + [ + 137.04, + 50.53 + ], + [ + 136.92, + 50.54 + ], + [ + 137, + 50.24 + ], + [ + 137.37, + 50.26 + ], + [ + 137.43, + 50.37 + ], + [ + 137.07, + 50.36 + ], + [ + 137.05, + 50.51 + ], + [ + 137.24, + 50.65 + ], + [ + 137.7, + 50.68 + ], + [ + 138.65, + 51.17 + ], + [ + 137.43, + 50.68 + ] + ], + [ + [ + 139.77, + 51.58 + ], + [ + 139.48, + 51.57 + ], + [ + 139.22, + 51.35 + ], + [ + 138.91, + 51.4 + ], + [ + 138.58, + 51.19 + ], + [ + 138.89, + 51.25 + ], + [ + 138.93, + 51.39 + ], + [ + 139.2, + 51.33 + ], + [ + 139.5, + 51.43 + ], + [ + 139.5, + 51.56 + ], + [ + 139.89, + 51.56 + ], + [ + 140.03, + 51.65 + ], + [ + 139.77, + 51.58 + ] + ], + [ + [ + 120.19, + 63.53 + ], + [ + 119.97, + 63.57 + ], + [ + 119.66, + 63.54 + ], + [ + 120.01, + 63.56 + ], + [ + 120.32, + 63.45 + ], + [ + 120.41, + 63.45 + ], + [ + 120.51, + 63.48 + ], + [ + 120.45, + 63.6 + ], + [ + 120.5, + 63.48 + ], + [ + 120.41, + 63.45 + ], + [ + 120.26, + 63.48 + ], + [ + 120.19, + 63.53 + ] + ], + [ + [ + 126.36, + 64.17 + ], + [ + 126.32, + 64.16 + ], + [ + 126.1, + 64.06 + ], + [ + 126.1, + 64.05 + ], + [ + 126.1, + 64.06 + ], + [ + 126.32, + 64.16 + ], + [ + 126.36, + 64.16 + ], + [ + 126.36, + 64.17 + ] + ], + [ + [ + 123.79, + 63.8 + ], + [ + 123.77, + 63.8 + ], + [ + 123.79, + 63.79 + ], + [ + 123.79, + 63.8 + ] + ], + [ + [ + 124.19, + 67.85 + ], + [ + 124.06, + 67.74 + ], + [ + 124.4, + 67.78 + ], + [ + 124.19, + 67.85 + ] + ], + [ + [ + 123.75, + 68.03 + ], + [ + 123.74, + 68.03 + ], + [ + 123.74, + 68.02 + ], + [ + 123.75, + 68.03 + ] + ], + [ + [ + 126.58, + 72.63 + ], + [ + 126.56, + 72.73 + ], + [ + 126.58, + 72.62 + ], + [ + 126.58, + 72.63 + ] + ], + [ + [ + 107.09, + 72.84 + ], + [ + 106.86, + 72.85 + ], + [ + 106.86, + 72.84 + ], + [ + 107.66, + 72.81 + ], + [ + 107.09, + 72.84 + ] + ], + [ + [ + 107.12, + 74.26 + ], + [ + 106.48, + 74.17 + ], + [ + 107.27, + 74.04 + ], + [ + 107.12, + 74.26 + ] + ], + [ + [ + 106.99, + 74.71 + ], + [ + 106.97, + 74.53 + ], + [ + 107.49, + 74.5 + ], + [ + 106.99, + 74.71 + ] + ], + [ + [ + 134.63, + 60.44 + ], + [ + 135.02, + 60.33 + ], + [ + 134.67, + 60.47 + ], + [ + 134.33, + 60.29 + ], + [ + 134.63, + 60.44 + ] + ], + [ + [ + 134.99, + 60.58 + ], + [ + 134.93, + 60.71 + ], + [ + 134.98, + 60.56 + ], + [ + 134.99, + 60.58 + ] + ], + [ + [ + 135.12, + 60.78 + ], + [ + 134.93, + 60.71 + ], + [ + 135.31, + 60.83 + ], + [ + 135.12, + 60.78 + ] + ], + [ + [ + 111.19, + 62.85 + ], + [ + 111.2, + 62.61 + ], + [ + 110.71, + 62.52 + ], + [ + 111.27, + 62.37 + ], + [ + 111.56, + 62.73 + ], + [ + 111.19, + 62.85 + ] + ], + [ + [ + 112.3, + 63.04 + ], + [ + 111.99, + 62.86 + ], + [ + 112.15, + 62.75 + ], + [ + 112.3, + 63.04 + ] + ], + [ + [ + 111.18, + 63.11 + ], + [ + 111.11, + 63.31 + ], + [ + 111.04, + 62.86 + ], + [ + 111.45, + 63.06 + ], + [ + 111.18, + 63.11 + ] + ], + [ + [ + 111.45, + 62.94 + ], + [ + 111.75, + 62.85 + ], + [ + 111.98, + 63.11 + ], + [ + 111.45, + 62.94 + ] + ], + [ + [ + 110.39, + 63.21 + ], + [ + 110.65, + 63.17 + ], + [ + 110.57, + 62.99 + ], + [ + 110.79, + 63.19 + ], + [ + 110.39, + 63.21 + ] + ], + [ + [ + 110.06, + 63.55 + ], + [ + 109.91, + 63.42 + ], + [ + 110.21, + 63.48 + ], + [ + 110.06, + 63.55 + ] + ], + [ + [ + 128.54, + 54.65 + ], + [ + 129.08, + 54.71 + ], + [ + 128.54, + 54.72 + ], + [ + 128.41, + 54.61 + ], + [ + 128.09, + 54.75 + ], + [ + 127.66, + 54.53 + ], + [ + 127.62, + 54.64 + ], + [ + 127.41, + 54.55 + ], + [ + 127.53, + 54.29 + ], + [ + 128.03, + 54.11 + ], + [ + 127.94, + 54.24 + ], + [ + 128.23, + 54.25 + ], + [ + 127.84, + 54.32 + ], + [ + 128.05, + 54.35 + ], + [ + 127.95, + 54.56 + ], + [ + 128.37, + 54.42 + ], + [ + 128.28, + 54.62 + ], + [ + 128.76, + 54.46 + ], + [ + 128.54, + 54.65 + ] + ], + [ + [ + 130.33, + 50.43 + ], + [ + 130.43, + 50.22 + ], + [ + 130.82, + 50.27 + ], + [ + 130.33, + 50.43 + ] + ], + [ + [ + 132.41, + 51.06 + ], + [ + 132.03, + 50.79 + ], + [ + 132.3, + 50.82 + ], + [ + 132.41, + 51.06 + ] + ], + [ + [ + 111.64, + 52.7 + ], + [ + 111.4, + 52.63 + ], + [ + 111.48, + 52.54 + ], + [ + 111.64, + 52.7 + ] + ], + [ + [ + 106.96, + 53.04 + ], + [ + 107.8, + 53.4 + ], + [ + 107.73, + 53.23 + ], + [ + 106.89, + 53.01 + ], + [ + 105.22, + 51.92 + ], + [ + 103.73, + 51.65 + ], + [ + 104.77, + 51.45 + ], + [ + 105.91, + 51.72 + ], + [ + 106.35, + 52.33 + ], + [ + 106.79, + 52.31 + ], + [ + 107.51, + 52.71 + ], + [ + 107.97, + 52.73 + ], + [ + 108.11, + 52.91 + ], + [ + 108.16, + 52.78 + ], + [ + 108.28, + 53.11 + ], + [ + 109.03, + 53.43 + ], + [ + 108.85, + 53.6 + ], + [ + 108.52, + 53.5 + ], + [ + 108.76, + 53.77 + ], + [ + 109.03, + 53.87 + ], + [ + 109.12, + 53.53 + ], + [ + 109.56, + 54.15 + ], + [ + 109.91, + 55.77 + ], + [ + 109.8, + 55.8 + ], + [ + 109.19, + 55.55 + ], + [ + 109.09, + 55.03 + ], + [ + 108.18, + 53.9 + ], + [ + 106.74, + 53.03 + ], + [ + 106.96, + 53.04 + ] + ], + [ + [ + 103.38, + 53.46 + ], + [ + 103.45, + 53.58 + ], + [ + 103.76, + 53.46 + ], + [ + 103.01, + 54.12 + ], + [ + 103.27, + 54.39 + ], + [ + 103.49, + 54.11 + ], + [ + 103.19, + 54.67 + ], + [ + 102.92, + 54.09 + ], + [ + 103.25, + 53.75 + ], + [ + 102.79, + 53.76 + ], + [ + 103.27, + 53.71 + ], + [ + 103.38, + 53.46 + ] + ], + [ + [ + 130.08, + 49.87 + ], + [ + 130.05, + 49.98 + ], + [ + 129.98, + 49.78 + ], + [ + 130.08, + 49.87 + ] + ], + [ + [ + 113.05, + 55.25 + ], + [ + 112.85, + 55.17 + ], + [ + 113.07, + 55.15 + ], + [ + 113.05, + 55.25 + ] + ], + [ + [ + 119.57, + 60.26 + ], + [ + 119.33, + 60.21 + ], + [ + 119.18, + 60.08 + ], + [ + 119.42, + 60.23 + ], + [ + 120.01, + 60.2 + ], + [ + 119.57, + 60.26 + ] + ] + ], + [ + [ + [ + 90.86, + 59.57 + ], + [ + 90.09, + 60.41 + ], + [ + 90.77, + 59.76 + ], + [ + 90.86, + 59.57 + ] + ] + ], + [ + [ + [ + 104.48, + 52.13 + ], + [ + 104.37, + 52.26 + ], + [ + 104.63, + 52.04 + ], + [ + 104.48, + 52.13 + ] + ] + ], + [ + [ + [ + 78.33, + 60.34 + ], + [ + 78.17, + 60.39 + ], + [ + 78.01, + 60.4 + ], + [ + 78.17, + 60.39 + ], + [ + 78.18, + 60.39 + ], + [ + 78.33, + 60.34 + ] + ] + ], + [ + [ + [ + 44.99, + 56.08 + ], + [ + 44.6, + 56.05 + ], + [ + 45.15, + 56.12 + ], + [ + 44.99, + 56.08 + ] + ] + ], + [ + [ + [ + 133.99, + 62.98 + ], + [ + 134.03, + 63.09 + ], + [ + 134.41, + 62.73 + ], + [ + 133.99, + 62.98 + ] + ] + ], + [ + [ + [ + 71.96, + 61.25 + ], + [ + 71.65, + 61.26 + ], + [ + 72.4, + 61.3 + ], + [ + 71.96, + 61.25 + ] + ] + ], + [ + [ + [ + 68.24, + 61.25 + ], + [ + 68.33, + 61.39 + ], + [ + 68.35, + 61.14 + ], + [ + 68.24, + 61.25 + ] + ] + ], + [ + [ + [ + 57.87, + 64.76 + ], + [ + 57.92, + 64.66 + ], + [ + 57.47, + 64.97 + ], + [ + 57.87, + 64.76 + ] + ] + ], + [ + [ + [ + 101.25, + 71.79 + ], + [ + 101.26, + 71.77 + ], + [ + 101.07, + 71.77 + ], + [ + 100.52, + 71.72 + ], + [ + 101.66, + 71.83 + ], + [ + 101.25, + 71.79 + ] + ] + ], + [ + [ + [ + 123.76, + 72.03 + ], + [ + 123.77, + 72.03 + ], + [ + 123.66, + 71.93 + ], + [ + 123.76, + 72.03 + ] + ] + ], + [ + [ + [ + 34.28, + 64.13 + ], + [ + 34.19, + 63.98 + ], + [ + 34.32, + 64.24 + ], + [ + 34.28, + 64.13 + ] + ] + ], + [ + [ + [ + 31.07, + 66.51 + ], + [ + 30.76, + 66.44 + ], + [ + 30.98, + 66.5 + ], + [ + 31.07, + 66.51 + ] + ] + ], + [ + [ + [ + 31.07, + 67.63 + ], + [ + 30.94, + 67.64 + ], + [ + 31.03, + 67.66 + ], + [ + 31.07, + 67.63 + ] + ] + ], + [ + [ + [ + 47.49, + 47.01 + ], + [ + 47.59, + 46.9 + ], + [ + 47.29, + 47.12 + ], + [ + 47.49, + 47.01 + ] + ] + ], + [ + [ + [ + 132, + 47.71 + ], + [ + 131.99, + 47.7 + ], + [ + 131.99, + 47.71 + ], + [ + 132, + 47.71 + ] + ] + ], + [ + [ + [ + 131.99, + 47.68 + ], + [ + 131.97, + 47.67 + ], + [ + 131.97, + 47.68 + ], + [ + 131.99, + 47.68 + ] + ] + ], + [ + [ + [ + 126.89, + 51.32 + ], + [ + 126.88, + 51.3 + ], + [ + 126.89, + 51.29 + ], + [ + 126.9, + 51.28 + ], + [ + 126.91, + 51.27 + ], + [ + 126.86, + 51.25 + ], + [ + 126.84, + 51.26 + ], + [ + 126.83, + 51.27 + ], + [ + 126.82, + 51.28 + ], + [ + 126.81, + 51.29 + ], + [ + 126.81, + 51.32 + ], + [ + 126.82, + 51.34 + ], + [ + 126.84, + 51.34 + ], + [ + 126.86, + 51.34 + ], + [ + 126.87, + 51.34 + ], + [ + 126.88, + 51.34 + ], + [ + 126.89, + 51.32 + ] + ] + ], + [ + [ + [ + 119.7, + 51.03 + ], + [ + 119.69, + 51.01 + ], + [ + 119.69, + 51.02 + ], + [ + 119.69, + 51.03 + ], + [ + 119.7, + 51.03 + ] + ] + ], + [ + [ + [ + 33.61, + 46.13 + ], + [ + 33.72, + 46.2 + ], + [ + 34.01, + 46.12 + ], + [ + 34.02, + 46.12 + ], + [ + 34.47, + 45.94 + ], + [ + 34.65, + 45.94 + ], + [ + 34.52, + 45.79 + ], + [ + 34.77, + 45.88 + ], + [ + 34.65, + 45.79 + ], + [ + 35.03, + 45.64 + ], + [ + 35.02, + 45.41 + ], + [ + 35.4, + 45.26 + ], + [ + 35.04, + 45.67 + ], + [ + 35.53, + 45.28 + ], + [ + 35.85, + 45.47 + ], + [ + 35.98, + 45.37 + ], + [ + 36.6, + 45.44 + ], + [ + 36.39, + 45.15 + ], + [ + 35.84, + 45 + ], + [ + 35.5, + 45.12 + ], + [ + 35.08, + 44.79 + ], + [ + 34.73, + 44.81 + ], + [ + 34.13, + 44.43 + ], + [ + 33.74, + 44.39 + ], + [ + 33.38, + 44.58 + ], + [ + 33.61, + 44.6 + ], + [ + 33.53, + 45.25 + ], + [ + 33.15, + 45.2 + ], + [ + 32.99, + 45.33 + ], + [ + 33.19, + 45.45 + ], + [ + 32.98, + 45.33 + ], + [ + 32.48, + 45.39 + ], + [ + 33.17, + 45.8 + ], + [ + 33.77, + 45.89 + ], + [ + 33.61, + 46.13 + ] + ] + ], + [ + [ + [ + 30.38, + 55.81 + ], + [ + 30.37, + 55.81 + ], + [ + 30.36, + 55.81 + ], + [ + 30.36, + 55.82 + ], + [ + 30.38, + 55.81 + ] + ] + ], + [ + [ + [ + 27.65, + 58.02 + ], + [ + 27.64, + 58 + ], + [ + 27.63, + 58.01 + ], + [ + 27.62, + 58.01 + ], + [ + 27.65, + 58.02 + ] + ] + ], + [ + [ + [ + 180, + 71.53 + ], + [ + 180, + 71.03 + ], + [ + 180, + 70.98 + ], + [ + 178.79, + 70.79 + ], + [ + 178.63, + 71.07 + ], + [ + 180, + 71.53 + ] + ] + ], + [ + [ + [ + -177.73, + 65.44 + ], + [ + -178.41, + 65.44 + ], + [ + -178.75, + 65.48 + ], + [ + -178.43, + 65.45 + ], + [ + -177.61, + 65.44 + ], + [ + -177.54, + 65.45 + ], + [ + -177.41, + 65.46 + ], + [ + -177.38, + 65.46 + ], + [ + -177.17, + 65.53 + ], + [ + -177.27, + 65.49 + ], + [ + -177.33, + 65.47 + ], + [ + -177.39, + 65.46 + ], + [ + -177.57, + 65.44 + ], + [ + -177.73, + 65.44 + ] + ] + ], + [ + [ + [ + -172.48, + 64.7 + ], + [ + -172.39, + 64.84 + ], + [ + -172.06, + 64.76 + ], + [ + -172.48, + 64.7 + ] + ] + ], + [ + [ + [ + 163.73, + 58.62 + ], + [ + 163.49, + 58.45 + ], + [ + 163.78, + 59.02 + ], + [ + 164.59, + 59.24 + ], + [ + 164.68, + 58.9 + ], + [ + 163.73, + 58.62 + ] + ] + ], + [ + [ + [ + 136.78, + 54.89 + ], + [ + 137.19, + 55.12 + ], + [ + 137.06, + 54.92 + ], + [ + 136.78, + 54.89 + ] + ] + ], + [ + [ + [ + 137.52, + 55.12 + ], + [ + 137.94, + 55.14 + ], + [ + 137.88, + 54.98 + ], + [ + 138.22, + 55.02 + ], + [ + 137.7, + 54.61 + ], + [ + 137.49, + 54.87 + ], + [ + 137.24, + 54.76 + ], + [ + 137.52, + 55.12 + ] + ] + ], + [ + [ + [ + 125.44, + 64.69 + ], + [ + 125.09, + 64.66 + ], + [ + 125, + 64.81 + ], + [ + 125.25, + 64.73 + ], + [ + 125.3, + 64.75 + ], + [ + 125.44, + 64.69 + ] + ] + ], + [ + [ + [ + 70.79, + 66.76 + ], + [ + 71.4, + 66.87 + ], + [ + 71.54, + 66.77 + ], + [ + 70.79, + 66.76 + ] + ] + ], + [ + [ + [ + 70.95, + 66.66 + ], + [ + 70.72, + 66.72 + ], + [ + 71.32, + 66.63 + ], + [ + 70.95, + 66.66 + ] + ] + ], + [ + [ + [ + 69.89, + 66.69 + ], + [ + 70.04, + 66.6 + ], + [ + 69.59, + 66.76 + ], + [ + 69.89, + 66.69 + ] + ] + ], + [ + [ + [ + 87.5, + 64.53 + ], + [ + 87.58, + 64.63 + ], + [ + 87.5, + 64.44 + ], + [ + 87.5, + 64.53 + ] + ] + ], + [ + [ + [ + 83.39, + 69.85 + ], + [ + 82.88, + 70.08 + ], + [ + 83.35, + 70.02 + ], + [ + 83.39, + 69.85 + ] + ] + ], + [ + [ + [ + 60.46, + 69.88 + ], + [ + 60.5, + 69.7 + ], + [ + 59.6, + 69.72 + ], + [ + 59.68, + 69.83 + ], + [ + 58.95, + 69.97 + ], + [ + 59.07, + 69.86 + ], + [ + 58.61, + 70.06 + ], + [ + 58.42, + 70.26 + ], + [ + 58.89, + 70.18 + ], + [ + 58.52, + 70.33 + ], + [ + 59.07, + 70.46 + ], + [ + 60.46, + 69.88 + ] + ] + ], + [ + [ + [ + 83.14, + 70.61 + ], + [ + 83.28, + 70.83 + ], + [ + 83.08, + 70.37 + ], + [ + 83.14, + 70.61 + ] + ] + ], + [ + [ + [ + 52.59, + 71.39 + ], + [ + 53.23, + 71.24 + ], + [ + 53.18, + 70.95 + ], + [ + 52.25, + 71.26 + ], + [ + 52.59, + 71.39 + ] + ] + ], + [ + [ + [ + 52.41, + 71.48 + ], + [ + 52.25, + 71.6 + ], + [ + 52.3, + 71.46 + ], + [ + 51.63, + 71.53 + ], + [ + 51.44, + 71.84 + ], + [ + 51.82, + 72.15 + ], + [ + 52.53, + 72.03 + ], + [ + 52.72, + 72.47 + ], + [ + 53.33, + 72.55 + ], + [ + 52.73, + 72.54 + ], + [ + 52.98, + 72.66 + ], + [ + 52.4, + 72.72 + ], + [ + 52.96, + 72.91 + ], + [ + 53.65, + 72.89 + ], + [ + 53.09, + 72.95 + ], + [ + 53.28, + 73.17 + ], + [ + 54.92, + 73.42 + ], + [ + 55.4, + 73.32 + ], + [ + 56.4, + 73.22 + ], + [ + 56.55, + 73.11 + ], + [ + 55.79, + 73.07 + ], + [ + 56.43, + 73.02 + ], + [ + 55.55, + 72.94 + ], + [ + 56.26, + 72.95 + ], + [ + 56.12, + 72.78 + ], + [ + 55.34, + 72.76 + ], + [ + 55.91, + 72.64 + ], + [ + 55.3, + 72.57 + ], + [ + 55.55, + 72.46 + ], + [ + 55.01, + 72.46 + ], + [ + 55.48, + 72.44 + ], + [ + 55.58, + 72.17 + ], + [ + 55.17, + 71.9 + ], + [ + 55.52, + 71.88 + ], + [ + 56.21, + 71.18 + ], + [ + 57.6, + 70.72 + ], + [ + 57.48, + 70.59 + ], + [ + 56.24, + 70.74 + ], + [ + 55.88, + 70.57 + ], + [ + 55.13, + 70.78 + ], + [ + 55.48, + 70.63 + ], + [ + 55.17, + 70.55 + ], + [ + 54.54, + 70.81 + ], + [ + 54.79, + 70.63 + ], + [ + 53.55, + 70.79 + ], + [ + 53.54, + 71.08 + ], + [ + 53.99, + 71 + ], + [ + 54.23, + 71.17 + ], + [ + 53.54, + 71.2 + ], + [ + 53.47, + 71.57 + ], + [ + 52.91, + 71.38 + ], + [ + 52.53, + 71.76 + ], + [ + 52.41, + 71.48 + ] + ] + ], + [ + [ + [ + 129.36, + 72.34 + ], + [ + 128.98, + 72.21 + ], + [ + 128.8, + 72.31 + ], + [ + 129.36, + 72.34 + ] + ] + ], + [ + [ + [ + 129, + 72.43 + ], + [ + 127.63, + 72.46 + ], + [ + 128.18, + 72.55 + ], + [ + 129, + 72.43 + ] + ] + ], + [ + [ + [ + 127.05, + 72.43 + ], + [ + 126.72, + 72.5 + ], + [ + 127.27, + 72.52 + ], + [ + 127.05, + 72.43 + ] + ] + ], + [ + [ + [ + 136.23, + 75.62 + ], + [ + 135.54, + 75.37 + ], + [ + 135.72, + 75.87 + ], + [ + 136.23, + 75.62 + ] + ] + ], + [ + [ + [ + 113.46, + 74.37 + ], + [ + 112.83, + 74.08 + ], + [ + 111.51, + 74.3 + ], + [ + 112.05, + 74.36 + ], + [ + 112.05, + 74.55 + ], + [ + 113.46, + 74.37 + ] + ] + ], + [ + [ + [ + 107.62, + 77.25 + ], + [ + 107.22, + 77.21 + ], + [ + 107.42, + 77.34 + ], + [ + 107.62, + 77.25 + ] + ] + ], + [ + [ + [ + 106.52, + 78.13 + ], + [ + 107.78, + 78.13 + ], + [ + 107.5, + 78.04 + ], + [ + 106.52, + 78.13 + ] + ] + ], + [ + [ + [ + 97.43, + 80.82 + ], + [ + 98.07, + 80.67 + ], + [ + 97.14, + 80.64 + ], + [ + 97.31, + 80.22 + ], + [ + 94.59, + 80.14 + ], + [ + 93.8, + 80 + ], + [ + 92.17, + 80.16 + ], + [ + 93.01, + 80.16 + ], + [ + 92.42, + 80.27 + ], + [ + 91.49, + 80.26 + ], + [ + 92.76, + 80.37 + ], + [ + 92.17, + 80.41 + ], + [ + 93.46, + 80.76 + ], + [ + 92.62, + 80.71 + ], + [ + 92.87, + 80.84 + ], + [ + 95.81, + 81.21 + ], + [ + 95.21, + 81.25 + ], + [ + 95.77, + 81.27 + ], + [ + 97.43, + 80.82 + ] + ] + ], + [ + [ + [ + 93.31, + 79.76 + ], + [ + 91.98, + 79.68 + ], + [ + 92.39, + 79.76 + ], + [ + 91.19, + 79.84 + ], + [ + 90.99, + 80.06 + ], + [ + 93.34, + 80 + ], + [ + 93.88, + 79.91 + ], + [ + 93.31, + 79.76 + ] + ] + ], + [ + [ + [ + 104.41, + 78.99 + ], + [ + 104.66, + 78.76 + ], + [ + 104.95, + 78.85 + ], + [ + 105.39, + 78.73 + ], + [ + 105.07, + 78.36 + ], + [ + 103.14, + 78.22 + ], + [ + 101.28, + 78.17 + ], + [ + 100.02, + 77.94 + ], + [ + 99.39, + 78.01 + ], + [ + 100.61, + 78.78 + ], + [ + 101.27, + 78.74 + ], + [ + 100.82, + 78.85 + ], + [ + 101.03, + 79.01 + ], + [ + 101.67, + 78.96 + ], + [ + 101.07, + 79.05 + ], + [ + 101.67, + 79.35 + ], + [ + 102.24, + 79.21 + ], + [ + 102.45, + 79.43 + ], + [ + 103.22, + 79.3 + ], + [ + 102.47, + 78.81 + ], + [ + 103.64, + 79.18 + ], + [ + 104.41, + 78.99 + ] + ] + ], + [ + [ + [ + 96.47, + 76.21 + ], + [ + 96.36, + 76.1 + ], + [ + 95.35, + 76.28 + ], + [ + 96.47, + 76.21 + ] + ] + ], + [ + [ + [ + 96.51, + 77.16 + ], + [ + 96.23, + 76.97 + ], + [ + 95.29, + 76.96 + ], + [ + 96.51, + 77.16 + ] + ] + ], + [ + [ + [ + 98.61, + 78.81 + ], + [ + 95.67, + 79.1 + ], + [ + 94.93, + 79.04 + ], + [ + 93.87, + 79.61 + ], + [ + 93.16, + 79.47 + ], + [ + 92.91, + 79.57 + ], + [ + 94.73, + 79.8 + ], + [ + 94.35, + 79.98 + ], + [ + 95, + 80.11 + ], + [ + 95.39, + 80.03 + ], + [ + 97.67, + 80.17 + ], + [ + 97.7, + 79.84 + ], + [ + 98.32, + 79.83 + ], + [ + 98.77, + 80.07 + ], + [ + 100.02, + 79.84 + ], + [ + 99.81, + 79.27 + ], + [ + 99.15, + 79.29 + ], + [ + 99.99, + 78.92 + ], + [ + 98.61, + 78.81 + ] + ] + ], + [ + [ + [ + 161.19, + 69.46 + ], + [ + 161.41, + 69.53 + ], + [ + 161.38, + 69.21 + ], + [ + 161.24, + 69.23 + ], + [ + 161.13, + 69.36 + ], + [ + 161.35, + 69.36 + ], + [ + 161.1, + 69.39 + ], + [ + 161.19, + 69.46 + ] + ] + ], + [ + [ + [ + 161.15, + 69.08 + ], + [ + 161.19, + 69.29 + ], + [ + 161.24, + 69.23 + ], + [ + 161.47, + 69.18 + ], + [ + 161.42, + 68.86 + ], + [ + 161.44, + 69.01 + ], + [ + 161.15, + 69.08 + ] + ] + ], + [ + [ + [ + 168.49, + 69.63 + ], + [ + 167.79, + 69.81 + ], + [ + 168.47, + 70.03 + ], + [ + 169.46, + 69.81 + ], + [ + 169.18, + 69.55 + ], + [ + 168.49, + 69.63 + ] + ] + ], + [ + [ + [ + 149.08, + 75.23 + ], + [ + 150.95, + 75.13 + ], + [ + 150.64, + 74.86 + ], + [ + 148.34, + 74.77 + ], + [ + 146.11, + 75.24 + ], + [ + 146.49, + 75.59 + ], + [ + 146.92, + 75.33 + ], + [ + 147.62, + 75.44 + ], + [ + 148.57, + 75.37 + ], + [ + 148.33, + 75.21 + ], + [ + 149.08, + 75.23 + ] + ] + ], + [ + [ + [ + 140.61, + 73.9 + ], + [ + 140.2, + 74.2 + ], + [ + 140.87, + 74.27 + ], + [ + 141.04, + 74.01 + ], + [ + 140.61, + 73.9 + ] + ] + ], + [ + [ + [ + 143.5, + 73.47 + ], + [ + 143.61, + 73.21 + ], + [ + 143.25, + 73.18 + ], + [ + 139.78, + 73.4 + ], + [ + 140.88, + 73.59 + ], + [ + 141.12, + 73.85 + ], + [ + 142.07, + 73.91 + ], + [ + 143.5, + 73.47 + ] + ] + ], + [ + [ + [ + 138.47, + 76.04 + ], + [ + 139.14, + 76.2 + ], + [ + 140.85, + 75.59 + ], + [ + 141.05, + 76 + ], + [ + 141.74, + 75.97 + ], + [ + 141.37, + 76.17 + ], + [ + 142.66, + 75.85 + ], + [ + 144.04, + 75.8 + ], + [ + 145.4, + 75.5 + ], + [ + 144.79, + 75.4 + ], + [ + 144.72, + 75.15 + ], + [ + 144.08, + 75.01 + ], + [ + 142.93, + 75.14 + ], + [ + 142.52, + 75.34 + ], + [ + 143.13, + 75.64 + ], + [ + 142.42, + 75.74 + ], + [ + 141.97, + 75.62 + ], + [ + 142.28, + 75.3 + ], + [ + 143.68, + 74.93 + ], + [ + 142.5, + 74.8 + ], + [ + 141.87, + 75 + ], + [ + 139.92, + 74.79 + ], + [ + 139.64, + 74.96 + ], + [ + 139.06, + 74.64 + ], + [ + 138.18, + 74.76 + ], + [ + 136.95, + 75.26 + ], + [ + 137.48, + 75.36 + ], + [ + 137.04, + 75.6 + ], + [ + 137.74, + 75.75 + ], + [ + 137.47, + 75.93 + ], + [ + 138.34, + 76.13 + ], + [ + 138.47, + 76.04 + ] + ] + ], + [ + [ + [ + 137.77, + 71.5 + ], + [ + 137.04, + 71.53 + ], + [ + 137.99, + 71.57 + ], + [ + 137.77, + 71.5 + ] + ] + ], + [ + [ + [ + 77.87, + 72.33 + ], + [ + 76.87, + 72.3 + ], + [ + 77.62, + 72.6 + ], + [ + 78.34, + 72.5 + ], + [ + 77.87, + 72.33 + ] + ] + ], + [ + [ + [ + 74.34, + 73.11 + ], + [ + 74.76, + 73.08 + ], + [ + 74.65, + 72.83 + ], + [ + 74.11, + 72.99 + ], + [ + 74.34, + 73.11 + ] + ] + ], + [ + [ + [ + 79.5, + 72.93 + ], + [ + 79.54, + 72.72 + ], + [ + 78.62, + 72.8 + ], + [ + 79.17, + 73.08 + ], + [ + 79.5, + 72.93 + ] + ] + ], + [ + [ + [ + 91.03, + 81.22 + ], + [ + 91.63, + 81.12 + ], + [ + 90.81, + 81.04 + ], + [ + 90.16, + 81.16 + ], + [ + 91.03, + 81.22 + ] + ] + ], + [ + [ + [ + 86.68, + 74.83 + ], + [ + 86.26, + 74.92 + ], + [ + 87.01, + 74.99 + ], + [ + 86.68, + 74.83 + ] + ] + ], + [ + [ + [ + 55.3, + 73.72 + ], + [ + 54.24, + 73.6 + ], + [ + 53.68, + 73.75 + ], + [ + 54.83, + 73.95 + ], + [ + 55.03, + 74.16 + ], + [ + 56.08, + 74.04 + ], + [ + 55.11, + 74.25 + ], + [ + 55.7, + 74.25 + ], + [ + 55.38, + 74.41 + ], + [ + 56.29, + 74.47 + ], + [ + 55.57, + 74.54 + ], + [ + 55.82, + 74.67 + ], + [ + 56.93, + 74.67 + ], + [ + 55.84, + 74.77 + ], + [ + 56.45, + 74.89 + ], + [ + 55.83, + 74.96 + ], + [ + 55.91, + 75.17 + ], + [ + 56.39, + 75.04 + ], + [ + 56.89, + 75.36 + ], + [ + 57.87, + 75.31 + ], + [ + 57.56, + 75.47 + ], + [ + 58.34, + 75.58 + ], + [ + 58.01, + 75.65 + ], + [ + 60.41, + 75.96 + ], + [ + 60.27, + 76.09 + ], + [ + 61.09, + 76.04 + ], + [ + 61.1, + 76.27 + ], + [ + 62.55, + 76.16 + ], + [ + 64.22, + 76.28 + ], + [ + 65.49, + 76.55 + ], + [ + 66.09, + 76.5 + ], + [ + 65.91, + 76.7 + ], + [ + 67.05, + 76.94 + ], + [ + 68.04, + 76.99 + ], + [ + 68.82, + 76.87 + ], + [ + 68.96, + 76.54 + ], + [ + 68.31, + 76.25 + ], + [ + 63.8, + 75.61 + ], + [ + 63.59, + 75.71 + ], + [ + 61.47, + 75.21 + ], + [ + 61.29, + 75.31 + ], + [ + 60.75, + 75.01 + ], + [ + 60.5, + 75.1 + ], + [ + 59.93, + 75 + ], + [ + 60.63, + 74.91 + ], + [ + 60.25, + 74.73 + ], + [ + 59.45, + 74.79 + ], + [ + 59.76, + 74.57 + ], + [ + 59.09, + 74.72 + ], + [ + 59.12, + 74.53 + ], + [ + 58.78, + 74.58 + ], + [ + 59.14, + 74.42 + ], + [ + 58.25, + 74.56 + ], + [ + 58.73, + 74.21 + ], + [ + 58.15, + 73.97 + ], + [ + 57.41, + 74.2 + ], + [ + 57.72, + 73.72 + ], + [ + 56.61, + 73.87 + ], + [ + 57.62, + 73.63 + ], + [ + 57.23, + 73.55 + ], + [ + 56.69, + 73.69 + ], + [ + 57.24, + 73.45 + ], + [ + 56.73, + 73.23 + ], + [ + 56.12, + 73.26 + ], + [ + 55.93, + 73.43 + ], + [ + 55.96, + 73.29 + ], + [ + 54.96, + 73.44 + ], + [ + 54.09, + 73.34 + ], + [ + 55.3, + 73.72 + ] + ] + ], + [ + [ + [ + 70.97, + 73.25 + ], + [ + 71.44, + 73.32 + ], + [ + 71.68, + 73.15 + ], + [ + 69.96, + 73.01 + ], + [ + 70.54, + 73.45 + ], + [ + 71.26, + 73.41 + ], + [ + 70.97, + 73.25 + ] + ] + ], + [ + [ + [ + 40.28, + 64.63 + ], + [ + 40.3, + 64.77 + ], + [ + 40.34, + 64.61 + ], + [ + 40.47, + 64.53 + ], + [ + 39.88, + 64.71 + ], + [ + 40.28, + 64.63 + ] + ] + ], + [ + [ + [ + 35.31, + 61.98 + ], + [ + 35.18, + 61.89 + ], + [ + 35.29, + 62.09 + ], + [ + 35.31, + 61.98 + ] + ] + ], + [ + [ + [ + 154.65, + 49.27 + ], + [ + 154.85, + 49.63 + ], + [ + 154.84, + 49.32 + ], + [ + 154.65, + 49.27 + ] + ] + ], + [ + [ + [ + 151.79, + 46.77 + ], + [ + 151.72, + 46.85 + ], + [ + 152.29, + 47.15 + ], + [ + 151.79, + 46.77 + ] + ] + ], + [ + [ + [ + 156.23, + 50.67 + ], + [ + 156.48, + 50.87 + ], + [ + 156.41, + 50.64 + ], + [ + 156.23, + 50.67 + ] + ] + ], + [ + [ + [ + 155.65, + 50.38 + ], + [ + 156.15, + 50.75 + ], + [ + 155.89, + 50.25 + ], + [ + 155.23, + 50.05 + ], + [ + 155.21, + 50.29 + ], + [ + 155.65, + 50.38 + ] + ] + ], + [ + [ + [ + 142.12, + 48.37 + ], + [ + 141.85, + 48.77 + ], + [ + 142.09, + 49.15 + ], + [ + 142.04, + 50.55 + ], + [ + 142.26, + 51.09 + ], + [ + 141.67, + 51.75 + ], + [ + 141.84, + 51.81 + ], + [ + 141.63, + 51.89 + ], + [ + 141.92, + 52.94 + ], + [ + 141.76, + 53.38 + ], + [ + 142.25, + 53.54 + ], + [ + 142.41, + 53.38 + ], + [ + 142.67, + 53.51 + ], + [ + 142.48, + 53.66 + ], + [ + 142.78, + 53.7 + ], + [ + 142.7, + 53.84 + ], + [ + 142.58, + 53.71 + ], + [ + 142.7, + 53.94 + ], + [ + 142.26, + 54.3 + ], + [ + 142.55, + 54.24 + ], + [ + 142.69, + 54.42 + ], + [ + 142.99, + 54.11 + ], + [ + 142.95, + 53.72 + ], + [ + 143.25, + 53.22 + ], + [ + 143.32, + 52.84 + ], + [ + 143.26, + 53.14 + ], + [ + 143.14, + 53.21 + ], + [ + 143.13, + 53.28 + ], + [ + 143.2, + 53.28 + ], + [ + 143.13, + 53.37 + ], + [ + 143.02, + 53.28 + ], + [ + 143.25, + 52.84 + ], + [ + 143.29, + 52.95 + ], + [ + 143.31, + 52.71 + ], + [ + 143.33, + 52.83 + ], + [ + 143.28, + 52.45 + ], + [ + 143.18, + 52.33 + ], + [ + 143.29, + 52.64 + ], + [ + 143.12, + 52.36 + ], + [ + 143.14, + 52.08 + ], + [ + 143.08, + 52.24 + ], + [ + 143.1, + 51.93 + ], + [ + 143.33, + 51.69 + ], + [ + 143.21, + 51.51 + ], + [ + 143.35, + 51.52 + ], + [ + 143.37, + 51.56 + ], + [ + 143.35, + 51.55 + ], + [ + 143.36, + 51.59 + ], + [ + 143.33, + 51.61 + ], + [ + 143.36, + 51.63 + ], + [ + 143.44, + 51.44 + ], + [ + 143.41, + 51.55 + ], + [ + 143.31, + 51.74 + ], + [ + 143.34, + 51.71 + ], + [ + 143.44, + 51.5 + ], + [ + 143.48, + 51.34 + ], + [ + 143.37, + 51.33 + ], + [ + 143.53, + 51.23 + ], + [ + 143.76, + 50.4 + ], + [ + 144.4, + 49.03 + ], + [ + 144.1, + 49.25 + ], + [ + 143.31, + 49.42 + ], + [ + 143.48, + 49.31 + ], + [ + 142.97, + 49.11 + ], + [ + 142.56, + 48.17 + ], + [ + 142.54, + 47.74 + ], + [ + 143.02, + 47.25 + ], + [ + 143.04, + 46.81 + ], + [ + 143.35, + 46.66 + ], + [ + 143.13, + 46.86 + ], + [ + 143.48, + 46.82 + ], + [ + 143.62, + 46.37 + ], + [ + 143.42, + 46.02 + ], + [ + 143.36, + 46.56 + ], + [ + 143.22, + 46.68 + ], + [ + 142.77, + 46.61 + ], + [ + 142.7, + 46.75 + ], + [ + 142.42, + 46.61 + ], + [ + 142.08, + 45.89 + ], + [ + 141.91, + 46.05 + ], + [ + 141.81, + 46.6 + ], + [ + 142.06, + 47.08 + ], + [ + 142.12, + 48.37 + ] + ] + ], + [ + [ + [ + 131.86, + 43.06 + ], + [ + 131.87, + 42.95 + ], + [ + 131.75, + 42.99 + ], + [ + 131.86, + 43.06 + ] + ] + ], + [ + [ + [ + 48.25, + 69 + ], + [ + 48.37, + 69.29 + ], + [ + 48.98, + 69.5 + ], + [ + 50.31, + 69.13 + ], + [ + 48.72, + 68.69 + ], + [ + 48.58, + 68.7 + ], + [ + 48.7, + 68.7 + ], + [ + 48.38, + 68.84 + ], + [ + 48.38, + 68.79 + ], + [ + 48.32, + 68.82 + ], + [ + 48.37, + 68.84 + ], + [ + 48.31, + 68.83 + ], + [ + 48.27, + 68.85 + ], + [ + 48.34, + 68.84 + ], + [ + 48.28, + 68.88 + ], + [ + 48.23, + 68.87 + ], + [ + 48.25, + 68.9 + ], + [ + 48.23, + 68.9 + ], + [ + 48.22, + 68.9 + ], + [ + 48.23, + 68.82 + ], + [ + 48.26, + 68.8 + ], + [ + 48.24, + 68.81 + ], + [ + 48.32, + 68.76 + ], + [ + 48.28, + 68.78 + ], + [ + 48.29, + 68.77 + ], + [ + 48.34, + 68.75 + ], + [ + 48.32, + 68.76 + ], + [ + 48.39, + 68.73 + ], + [ + 48.33, + 68.75 + ], + [ + 48.43, + 68.72 + ], + [ + 48.29, + 68.75 + ], + [ + 48.24, + 68.79 + ], + [ + 48.22, + 68.83 + ], + [ + 48.21, + 68.92 + ], + [ + 48.22, + 68.96 + ], + [ + 48.26, + 68.93 + ], + [ + 48.22, + 68.96 + ], + [ + 48.25, + 69 + ] + ] + ], + [ + [ + [ + 61.51, + 81.07 + ], + [ + 61.06, + 80.91 + ], + [ + 60, + 80.97 + ], + [ + 61.51, + 81.07 + ] + ] + ], + [ + [ + [ + 59.18, + 81.85 + ], + [ + 58.11, + 81.69 + ], + [ + 57.9, + 81.81 + ], + [ + 59.18, + 81.85 + ] + ] + ], + [ + [ + [ + 58.84, + 80.87 + ], + [ + 58.55, + 80.73 + ], + [ + 57.85, + 80.77 + ], + [ + 58.84, + 80.87 + ] + ] + ], + [ + [ + [ + 57.13, + 81.44 + ], + [ + 57.69, + 81.56 + ], + [ + 58.55, + 81.42 + ], + [ + 57.13, + 81.44 + ] + ] + ], + [ + [ + [ + 56.13, + 81.28 + ], + [ + 56.59, + 81.41 + ], + [ + 57.95, + 81.3 + ], + [ + 56.44, + 81.16 + ], + [ + 55.55, + 81.2 + ], + [ + 55.48, + 81.32 + ], + [ + 56.13, + 81.28 + ] + ] + ], + [ + [ + [ + 57.12, + 80.94 + ], + [ + 56.11, + 81.11 + ], + [ + 58.32, + 80.91 + ], + [ + 57.68, + 80.82 + ], + [ + 57.12, + 80.94 + ] + ] + ], + [ + [ + [ + 63.02, + 80.64 + ], + [ + 62.53, + 80.8 + ], + [ + 64.98, + 81.17 + ], + [ + 65.16, + 80.84 + ], + [ + 63.02, + 80.64 + ] + ] + ], + [ + [ + [ + 56.95, + 80.35 + ], + [ + 57.03, + 80.07 + ], + [ + 55.79, + 80.09 + ], + [ + 55.93, + 80.3 + ], + [ + 56.95, + 80.35 + ] + ] + ], + [ + [ + [ + 56.97, + 80.45 + ], + [ + 59.29, + 80.32 + ], + [ + 58.18, + 80.27 + ], + [ + 57.86, + 80.09 + ], + [ + 56.97, + 80.45 + ] + ] + ], + [ + [ + [ + 58.9, + 80 + ], + [ + 59.88, + 80.04 + ], + [ + 59.39, + 79.91 + ], + [ + 58.9, + 80 + ] + ] + ], + [ + [ + [ + 61.32, + 80.41 + ], + [ + 59.67, + 80.38 + ], + [ + 59.69, + 80.8 + ], + [ + 62.04, + 80.86 + ], + [ + 61.32, + 80.41 + ] + ] + ], + [ + [ + [ + 50.99, + 80.1 + ], + [ + 51.48, + 79.93 + ], + [ + 50.4, + 79.93 + ], + [ + 50.99, + 80.1 + ] + ] + ], + [ + [ + [ + 47.06, + 80.17 + ], + [ + 46.77, + 80.32 + ], + [ + 48.09, + 80.3 + ], + [ + 47.62, + 80.4 + ], + [ + 48.21, + 80.46 + ], + [ + 47.43, + 80.46 + ], + [ + 49.21, + 80.52 + ], + [ + 49.7, + 80.67 + ], + [ + 49, + 80.78 + ], + [ + 50.86, + 80.95 + ], + [ + 50.3, + 80.74 + ], + [ + 51.8, + 80.71 + ], + [ + 50.98, + 80.55 + ], + [ + 48.45, + 80.32 + ], + [ + 49.1, + 80.17 + ], + [ + 48.35, + 80.07 + ], + [ + 47.69, + 80.05 + ], + [ + 48.11, + 80.25 + ], + [ + 47.06, + 80.17 + ] + ] + ], + [ + [ + [ + 47.03, + 80.59 + ], + [ + 46.22, + 80.44 + ], + [ + 44.91, + 80.6 + ], + [ + 47.14, + 80.84 + ], + [ + 48.51, + 80.79 + ], + [ + 48.7, + 80.62 + ], + [ + 47.72, + 80.78 + ], + [ + 47.03, + 80.59 + ] + ] + ], + [ + [ + [ + 53.44, + 80.13 + ], + [ + 52.25, + 80.22 + ], + [ + 53, + 80.39 + ], + [ + 53.93, + 80.23 + ], + [ + 53.44, + 80.13 + ] + ] + ], + [ + [ + [ + 54.59, + 80.98 + ], + [ + 54.71, + 81.11 + ], + [ + 56.19, + 81.01 + ], + [ + 57.58, + 80.71 + ], + [ + 54.59, + 80.98 + ] + ] + ], + [ + [ + [ + 79.31, + 80.88 + ], + [ + 79.91, + 80.76 + ], + [ + 78.85, + 80.76 + ], + [ + 79.31, + 80.88 + ] + ] + ], + [ + [ + [ + 81.74, + 75.4 + ], + [ + 81.93, + 75.36 + ], + [ + 81.89, + 75.45 + ], + [ + 82, + 75.43 + ], + [ + 82.11, + 75.49 + ], + [ + 81.89, + 75.47 + ], + [ + 82.11, + 75.51 + ], + [ + 82.3, + 75.51 + ], + [ + 82.05, + 75.15 + ], + [ + 81.94, + 75.31 + ], + [ + 81.76, + 75.26 + ], + [ + 81.64, + 75.3 + ], + [ + 81.72, + 75.34 + ], + [ + 81.67, + 75.34 + ], + [ + 81.61, + 75.34 + ], + [ + 81.63, + 75.28 + ], + [ + 81.74, + 75.2 + ], + [ + 82.03, + 75.11 + ], + [ + 82.15, + 75.15 + ], + [ + 82.16, + 75.07 + ], + [ + 81.73, + 75.2 + ], + [ + 81.61, + 75.28 + ], + [ + 81.6, + 75.32 + ], + [ + 81.64, + 75.37 + ], + [ + 81.9, + 75.46 + ], + [ + 81.74, + 75.4 + ] + ] + ], + [ + [ + [ + 89.36, + 77.29 + ], + [ + 89.76, + 77.27 + ], + [ + 89.28, + 77.14 + ], + [ + 89.36, + 77.29 + ] + ] + ], + [ + [ + [ + 149.86, + 45.77 + ], + [ + 149.4, + 45.58 + ], + [ + 150.22, + 46.19 + ], + [ + 150.57, + 46.23 + ], + [ + 149.86, + 45.77 + ] + ] + ], + [ + [ + [ + 147.7, + 45.1 + ], + [ + 147.92, + 45.44 + ], + [ + 148.17, + 45.26 + ], + [ + 148.66, + 45.54 + ], + [ + 148.89, + 45.51 + ], + [ + 148.84, + 45.34 + ], + [ + 147.91, + 44.96 + ], + [ + 147.65, + 44.99 + ], + [ + 146.87, + 44.44 + ], + [ + 147.18, + 44.69 + ], + [ + 147.11, + 44.82 + ], + [ + 147.52, + 45 + ], + [ + 147.5, + 45.11 + ], + [ + 147.7, + 45.1 + ] + ] + ], + [ + [ + [ + 145.94, + 44.28 + ], + [ + 146.14, + 44.51 + ], + [ + 146.58, + 44.46 + ], + [ + 145.44, + 43.72 + ], + [ + 145.94, + 44.28 + ] + ] + ], + [ + [ + [ + 148.98, + 76.65 + ], + [ + 148.48, + 76.64 + ], + [ + 149.5, + 76.76 + ], + [ + 148.98, + 76.65 + ] + ] + ], + [ + [ + [ + 166, + 55.36 + ], + [ + 166.3, + 55.3 + ], + [ + 166.67, + 54.68 + ], + [ + 165.75, + 55.29 + ], + [ + 166, + 55.36 + ] + ] + ], + [ + [ + [ + 167.62, + 54.73 + ], + [ + 167.44, + 54.87 + ], + [ + 168.1, + 54.5 + ], + [ + 167.62, + 54.73 + ] + ] + ] + ] + }, + "properties": { + "A3": "RUS" + } + }, + { + "type": "Feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + -67.09, + 17.96 + ], + [ + -67.21, + 17.95 + ], + [ + -67.15, + 18.21 + ], + [ + -67.27, + 18.36 + ], + [ + -67.14, + 18.51 + ], + [ + -65.61, + 18.38 + ], + [ + -65.6, + 18.21 + ], + [ + -65.92, + 17.98 + ], + [ + -67.09, + 17.96 + ] + ] + ] + }, + "properties": { + "A3": "PRI" + } + }, + { + "type": "Feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + 40.01, + 43.39 + ], + [ + 40.01, + 43.4 + ], + [ + 40.01, + 43.41 + ], + [ + 40.24, + 43.59 + ], + [ + 40.87, + 43.49 + ], + [ + 40.96, + 43.42 + ], + [ + 41.61, + 43.22 + ], + [ + 42.59, + 43.17 + ], + [ + 42.86, + 43.18 + ], + [ + 43.26, + 42.92 + ], + [ + 43.27, + 42.92 + ], + [ + 43.4, + 42.9 + ], + [ + 43.4, + 42.89 + ], + [ + 43.41, + 42.89 + ], + [ + 43.48, + 42.88 + ], + [ + 43.5, + 42.87 + ], + [ + 43.96, + 42.55 + ], + [ + 44.55, + 42.77 + ], + [ + 44.8, + 42.61 + ], + [ + 44.89, + 42.75 + ], + [ + 45.16, + 42.71 + ], + [ + 45.34, + 42.52 + ], + [ + 45.77, + 42.49 + ], + [ + 45.65, + 42.19 + ], + [ + 46.36, + 41.93 + ], + [ + 46.37, + 41.93 + ], + [ + 46.43, + 41.91 + ], + [ + 46.27, + 41.77 + ], + [ + 46.18, + 41.74 + ], + [ + 46.21, + 41.63 + ], + [ + 46.2, + 41.63 + ], + [ + 46.21, + 41.62 + ], + [ + 46.23, + 41.61 + ], + [ + 46.23, + 41.6 + ], + [ + 46.27, + 41.62 + ], + [ + 46.28, + 41.61 + ], + [ + 46.27, + 41.61 + ], + [ + 46.27, + 41.6 + ], + [ + 46.28, + 41.6 + ], + [ + 46.3, + 41.56 + ], + [ + 46.3, + 41.55 + ], + [ + 46.32, + 41.54 + ], + [ + 46.33, + 41.54 + ], + [ + 46.35, + 41.49 + ], + [ + 46.36, + 41.49 + ], + [ + 46.4, + 41.47 + ], + [ + 46.41, + 41.48 + ], + [ + 46.43, + 41.46 + ], + [ + 46.45, + 41.45 + ], + [ + 46.52, + 41.41 + ], + [ + 46.53, + 41.41 + ], + [ + 46.54, + 41.41 + ], + [ + 46.56, + 41.41 + ], + [ + 46.6, + 41.39 + ], + [ + 46.62, + 41.38 + ], + [ + 46.63, + 41.38 + ], + [ + 46.62, + 41.36 + ], + [ + 46.65, + 41.36 + ], + [ + 46.66, + 41.36 + ], + [ + 46.67, + 41.35 + ], + [ + 46.67, + 41.34 + ], + [ + 46.68, + 41.33 + ], + [ + 46.69, + 41.33 + ], + [ + 46.7, + 41.33 + ], + [ + 46.69, + 41.31 + ], + [ + 46.7, + 41.31 + ], + [ + 46.71, + 41.3 + ], + [ + 46.71, + 41.29 + ], + [ + 46.72, + 41.29 + ], + [ + 46.72, + 41.28 + ], + [ + 46.66, + 41.21 + ], + [ + 46.49, + 41.06 + ], + [ + 45.23, + 41.44 + ], + [ + 45.2, + 41.42 + ], + [ + 45.09, + 41.34 + ], + [ + 45.08, + 41.34 + ], + [ + 45.07, + 41.33 + ], + [ + 45.01, + 41.3 + ], + [ + 44.83, + 41.23 + ], + [ + 43.81, + 41.15 + ], + [ + 43.47, + 41.12 + ], + [ + 43.23, + 41.19 + ], + [ + 43.2, + 41.23 + ], + [ + 42.83, + 41.59 + ], + [ + 42.52, + 41.44 + ], + [ + 41.71, + 41.48 + ], + [ + 41.71, + 41.5 + ], + [ + 41.7, + 41.5 + ], + [ + 41.63, + 41.49 + ], + [ + 41.55, + 41.52 + ], + [ + 41.78, + 42.1 + ], + [ + 41.45, + 42.72 + ], + [ + 40.01, + 43.39 + ] + ] + ] + }, + "properties": { + "A3": "GEO" + } + }, + { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + 124.29, + 39.94 + ], + [ + 124.28, + 39.95 + ], + [ + 124.29, + 39.96 + ], + [ + 124.28, + 39.96 + ], + [ + 124.34, + 39.99 + ], + [ + 124.34, + 39.98 + ], + [ + 124.29, + 39.94 + ] + ] + ], + [ + [ + [ + 124.36, + 39.98 + ], + [ + 124.36, + 39.99 + ], + [ + 124.36, + 40.04 + ], + [ + 124.34, + 40.05 + ], + [ + 124.34, + 40.06 + ], + [ + 124.34, + 40.07 + ], + [ + 124.36, + 40.09 + ], + [ + 124.37, + 40.09 + ], + [ + 124.38, + 40.1 + ], + [ + 124.39, + 40.11 + ], + [ + 124.4, + 40.12 + ], + [ + 124.4, + 40.13 + ], + [ + 124.41, + 40.14 + ], + [ + 124.42, + 40.14 + ], + [ + 124.43, + 40.14 + ], + [ + 124.46, + 40.17 + ], + [ + 124.47, + 40.18 + ], + [ + 124.48, + 40.17 + ], + [ + 124.49, + 40.18 + ], + [ + 124.5, + 40.2 + ], + [ + 124.52, + 40.23 + ], + [ + 124.54, + 40.24 + ], + [ + 124.56, + 40.25 + ], + [ + 124.57, + 40.25 + ], + [ + 124.58, + 40.27 + ], + [ + 124.6, + 40.28 + ], + [ + 124.61, + 40.28 + ], + [ + 124.62, + 40.29 + ], + [ + 124.63, + 40.29 + ], + [ + 124.63, + 40.3 + ], + [ + 124.65, + 40.3 + ], + [ + 124.69, + 40.31 + ], + [ + 124.7, + 40.31 + ], + [ + 124.72, + 40.32 + ], + [ + 124.73, + 40.33 + ], + [ + 124.75, + 40.38 + ], + [ + 124.77, + 40.39 + ], + [ + 124.82, + 40.4 + ], + [ + 124.83, + 40.41 + ], + [ + 124.85, + 40.43 + ], + [ + 124.86, + 40.43 + ], + [ + 124.88, + 40.46 + ], + [ + 124.89, + 40.48 + ], + [ + 124.91, + 40.47 + ], + [ + 124.91, + 40.46 + ], + [ + 124.93, + 40.45 + ], + [ + 124.94, + 40.45 + ], + [ + 124.95, + 40.46 + ], + [ + 124.96, + 40.46 + ], + [ + 124.97, + 40.47 + ], + [ + 125, + 40.47 + ], + [ + 125.02, + 40.46 + ], + [ + 125.11, + 40.56 + ], + [ + 125.14, + 40.58 + ], + [ + 125.16, + 40.59 + ], + [ + 125.17, + 40.6 + ], + [ + 125.26, + 40.61 + ], + [ + 125.27, + 40.63 + ], + [ + 125.36, + 40.65 + ], + [ + 125.41, + 40.63 + ], + [ + 125.42, + 40.67 + ], + [ + 125.45, + 40.67 + ], + [ + 125.46, + 40.71 + ], + [ + 125.5, + 40.72 + ], + [ + 125.52, + 40.72 + ], + [ + 125.55, + 40.76 + ], + [ + 125.59, + 40.76 + ], + [ + 125.66, + 40.76 + ], + [ + 125.69, + 40.77 + ], + [ + 125.68, + 40.79 + ], + [ + 125.66, + 40.79 + ], + [ + 125.65, + 40.79 + ], + [ + 125.63, + 40.8 + ], + [ + 125.63, + 40.81 + ], + [ + 125.64, + 40.82 + ], + [ + 125.66, + 40.83 + ], + [ + 125.67, + 40.83 + ], + [ + 125.68, + 40.84 + ], + [ + 125.69, + 40.85 + ], + [ + 125.7, + 40.86 + ], + [ + 125.71, + 40.87 + ], + [ + 125.72, + 40.87 + ], + [ + 125.73, + 40.87 + ], + [ + 125.75, + 40.88 + ], + [ + 125.76, + 40.88 + ], + [ + 125.79, + 40.89 + ], + [ + 125.8, + 40.88 + ], + [ + 125.81, + 40.86 + ], + [ + 125.82, + 40.86 + ], + [ + 125.83, + 40.88 + ], + [ + 125.84, + 40.88 + ], + [ + 125.86, + 40.89 + ], + [ + 125.86, + 40.9 + ], + [ + 125.98, + 40.9 + ], + [ + 125.99, + 40.89 + ], + [ + 126.01, + 40.91 + ], + [ + 126.02, + 40.93 + ], + [ + 126.04, + 40.93 + ], + [ + 126.05, + 40.96 + ], + [ + 126.08, + 40.97 + ], + [ + 126.07, + 40.99 + ], + [ + 126.07, + 41 + ], + [ + 126.1, + 41 + ], + [ + 126.1, + 41.01 + ], + [ + 126.1, + 41.02 + ], + [ + 126.1, + 41.03 + ], + [ + 126.12, + 41.04 + ], + [ + 126.13, + 41.06 + ], + [ + 126.11, + 41.07 + ], + [ + 126.16, + 41.09 + ], + [ + 126.17, + 41.1 + ], + [ + 126.18, + 41.1 + ], + [ + 126.2, + 41.12 + ], + [ + 126.21, + 41.12 + ], + [ + 126.23, + 41.14 + ], + [ + 126.24, + 41.15 + ], + [ + 126.25, + 41.15 + ], + [ + 126.26, + 41.15 + ], + [ + 126.28, + 41.16 + ], + [ + 126.29, + 41.18 + ], + [ + 126.32, + 41.23 + ], + [ + 126.36, + 41.27 + ], + [ + 126.36, + 41.28 + ], + [ + 126.39, + 41.3 + ], + [ + 126.4, + 41.31 + ], + [ + 126.41, + 41.33 + ], + [ + 126.42, + 41.33 + ], + [ + 126.43, + 41.33 + ], + [ + 126.43, + 41.34 + ], + [ + 126.43, + 41.35 + ], + [ + 126.45, + 41.36 + ], + [ + 126.46, + 41.36 + ], + [ + 126.49, + 41.37 + ], + [ + 126.5, + 41.37 + ], + [ + 126.52, + 41.38 + ], + [ + 126.52, + 41.45 + ], + [ + 126.54, + 41.48 + ], + [ + 126.58, + 41.55 + ], + [ + 126.57, + 41.59 + ], + [ + 126.6, + 41.63 + ], + [ + 126.61, + 41.64 + ], + [ + 126.62, + 41.67 + ], + [ + 126.67, + 41.66 + ], + [ + 126.7, + 41.69 + ], + [ + 126.68, + 41.73 + ], + [ + 126.76, + 41.72 + ], + [ + 126.77, + 41.71 + ], + [ + 126.77, + 41.7 + ], + [ + 126.79, + 41.7 + ], + [ + 126.79, + 41.71 + ], + [ + 126.85, + 41.75 + ], + [ + 126.86, + 41.77 + ], + [ + 127.14, + 41.53 + ], + [ + 127.17, + 41.53 + ], + [ + 127.18, + 41.52 + ], + [ + 127.22, + 41.52 + ], + [ + 127.23, + 41.52 + ], + [ + 127.23, + 41.51 + ], + [ + 127.27, + 41.49 + ], + [ + 127.26, + 41.49 + ], + [ + 127.29, + 41.48 + ], + [ + 127.3, + 41.48 + ], + [ + 127.31, + 41.47 + ], + [ + 127.36, + 41.47 + ], + [ + 127.36, + 41.48 + ], + [ + 127.39, + 41.48 + ], + [ + 127.4, + 41.47 + ], + [ + 127.41, + 41.46 + ], + [ + 127.42, + 41.46 + ], + [ + 127.66, + 41.41 + ], + [ + 127.67, + 41.41 + ], + [ + 127.68, + 41.42 + ], + [ + 127.69, + 41.42 + ], + [ + 127.74, + 41.42 + ], + [ + 127.75, + 41.43 + ], + [ + 127.77, + 41.42 + ], + [ + 127.78, + 41.42 + ], + [ + 127.79, + 41.41 + ], + [ + 128.12, + 41.38 + ], + [ + 128.14, + 41.38 + ], + [ + 128.19, + 41.41 + ], + [ + 128.31, + 41.6 + ], + [ + 128.04, + 42 + ], + [ + 128.1, + 42.02 + ], + [ + 128.65, + 42.02 + ], + [ + 129.22, + 42.21 + ], + [ + 129.2, + 42.23 + ], + [ + 129.35, + 42.41 + ], + [ + 129.6, + 42.44 + ], + [ + 129.59, + 42.44 + ], + [ + 129.63, + 42.44 + ], + [ + 129.7, + 42.43 + ], + [ + 129.71, + 42.43 + ], + [ + 129.75, + 42.58 + ], + [ + 129.77, + 42.6 + ], + [ + 129.78, + 42.6 + ], + [ + 129.75, + 42.62 + ], + [ + 129.75, + 42.65 + ], + [ + 129.8, + 42.68 + ], + [ + 129.79, + 42.69 + ], + [ + 129.77, + 42.7 + ], + [ + 129.77, + 42.73 + ], + [ + 129.82, + 42.84 + ], + [ + 129.81, + 42.85 + ], + [ + 129.84, + 42.87 + ], + [ + 129.84, + 42.88 + ], + [ + 129.84, + 42.91 + ], + [ + 129.85, + 42.94 + ], + [ + 129.9, + 42.97 + ], + [ + 129.88, + 42.98 + ], + [ + 129.88, + 42.99 + ], + [ + 129.92, + 43.01 + ], + [ + 129.93, + 43.01 + ], + [ + 129.95, + 43.01 + ], + [ + 129.95, + 42.99 + ], + [ + 129.95, + 42.98 + ], + [ + 129.99, + 42.97 + ], + [ + 130, + 42.97 + ], + [ + 130.01, + 42.97 + ], + [ + 130.02, + 42.97 + ], + [ + 130.03, + 42.97 + ], + [ + 130.04, + 42.97 + ], + [ + 130.06, + 42.97 + ], + [ + 130.09, + 42.98 + ], + [ + 130.1, + 42.99 + ], + [ + 130.11, + 42.99 + ], + [ + 130.12, + 42.99 + ], + [ + 130.15, + 42.97 + ], + [ + 130.12, + 42.96 + ], + [ + 130.12, + 42.94 + ], + [ + 130.12, + 42.93 + ], + [ + 130.1, + 42.93 + ], + [ + 130.1, + 42.92 + ], + [ + 130.14, + 42.9 + ], + [ + 130.15, + 42.91 + ], + [ + 130.18, + 42.91 + ], + [ + 130.19, + 42.91 + ], + [ + 130.21, + 42.9 + ], + [ + 130.23, + 42.9 + ], + [ + 130.24, + 42.9 + ], + [ + 130.25, + 42.91 + ], + [ + 130.26, + 42.9 + ], + [ + 130.27, + 42.89 + ], + [ + 130.27, + 42.88 + ], + [ + 130.25, + 42.86 + ], + [ + 130.25, + 42.85 + ], + [ + 130.25, + 42.84 + ], + [ + 130.24, + 42.82 + ], + [ + 130.23, + 42.82 + ], + [ + 130.23, + 42.78 + ], + [ + 130.24, + 42.77 + ], + [ + 130.24, + 42.75 + ], + [ + 130.24, + 42.73 + ], + [ + 130.25, + 42.72 + ], + [ + 130.25, + 42.71 + ], + [ + 130.27, + 42.7 + ], + [ + 130.28, + 42.7 + ], + [ + 130.3, + 42.69 + ], + [ + 130.3, + 42.67 + ], + [ + 130.31, + 42.66 + ], + [ + 130.32, + 42.65 + ], + [ + 130.37, + 42.62 + ], + [ + 130.38, + 42.6 + ], + [ + 130.39, + 42.6 + ], + [ + 130.43, + 42.61 + ], + [ + 130.44, + 42.6 + ], + [ + 130.42, + 42.57 + ], + [ + 130.42, + 42.55 + ], + [ + 130.44, + 42.55 + ], + [ + 130.46, + 42.55 + ], + [ + 130.48, + 42.56 + ], + [ + 130.48, + 42.57 + ], + [ + 130.48, + 42.58 + ], + [ + 130.47, + 42.59 + ], + [ + 130.46, + 42.59 + ], + [ + 130.47, + 42.61 + ], + [ + 130.48, + 42.62 + ], + [ + 130.51, + 42.62 + ], + [ + 130.52, + 42.61 + ], + [ + 130.52, + 42.59 + ], + [ + 130.52, + 42.57 + ], + [ + 130.52, + 42.55 + ], + [ + 130.55, + 42.52 + ], + [ + 130.55, + 42.51 + ], + [ + 130.55, + 42.5 + ], + [ + 130.55, + 42.49 + ], + [ + 130.56, + 42.49 + ], + [ + 130.57, + 42.49 + ], + [ + 130.58, + 42.48 + ], + [ + 130.58, + 42.47 + ], + [ + 130.57, + 42.47 + ], + [ + 130.56, + 42.45 + ], + [ + 130.57, + 42.44 + ], + [ + 130.58, + 42.43 + ], + [ + 130.59, + 42.43 + ], + [ + 130.61, + 42.43 + ], + [ + 130.65, + 42.41 + ], + [ + 130.65, + 42.39 + ], + [ + 130.67, + 42.38 + ], + [ + 130.67, + 42.37 + ], + [ + 130.65, + 42.36 + ], + [ + 130.65, + 42.35 + ], + [ + 130.65, + 42.33 + ], + [ + 130.37, + 42.34 + ], + [ + 129.76, + 41.77 + ], + [ + 129.76, + 40.91 + ], + [ + 129.39, + 40.76 + ], + [ + 128.63, + 40.31 + ], + [ + 128.63, + 40.18 + ], + [ + 128.33, + 40.03 + ], + [ + 128, + 40.06 + ], + [ + 127.52, + 39.77 + ], + [ + 127.57, + 39.3 + ], + [ + 127.37, + 39.38 + ], + [ + 127.39, + 39.18 + ], + [ + 127.74, + 39.13 + ], + [ + 128.36, + 38.62 + ], + [ + 128.28, + 38.44 + ], + [ + 128.28, + 38.43 + ], + [ + 128.22, + 38.38 + ], + [ + 128.21, + 38.37 + ], + [ + 128.16, + 38.35 + ], + [ + 127.97, + 38.32 + ], + [ + 127.92, + 38.32 + ], + [ + 127.88, + 38.33 + ], + [ + 127.86, + 38.31 + ], + [ + 127.85, + 38.31 + ], + [ + 127.8, + 38.32 + ], + [ + 127.8, + 38.33 + ], + [ + 127.79, + 38.34 + ], + [ + 127.69, + 38.32 + ], + [ + 127.68, + 38.32 + ], + [ + 127.13, + 38.31 + ], + [ + 126.95, + 38.15 + ], + [ + 126.96, + 38.15 + ], + [ + 126.97, + 38.14 + ], + [ + 126.96, + 38.13 + ], + [ + 126.69, + 37.84 + ], + [ + 126.67, + 37.83 + ], + [ + 126.66, + 37.81 + ], + [ + 126.65, + 37.8 + ], + [ + 126.39, + 37.91 + ], + [ + 126.12, + 37.74 + ], + [ + 125.59, + 38.04 + ], + [ + 125.73, + 37.92 + ], + [ + 125.34, + 37.68 + ], + [ + 125.44, + 37.85 + ], + [ + 125.16, + 37.89 + ], + [ + 124.97, + 37.93 + ], + [ + 125.26, + 38.08 + ], + [ + 124.65, + 38.13 + ], + [ + 125, + 38.22 + ], + [ + 124.85, + 38.35 + ], + [ + 124.96, + 38.59 + ], + [ + 125.43, + 38.69 + ], + [ + 125.12, + 38.76 + ], + [ + 125.46, + 39.58 + ], + [ + 125.27, + 39.52 + ], + [ + 125.23, + 39.65 + ], + [ + 125.08, + 39.57 + ], + [ + 124.95, + 39.68 + ], + [ + 124.82, + 39.49 + ], + [ + 124.91, + 39.67 + ], + [ + 124.77, + 39.8 + ], + [ + 124.62, + 39.59 + ], + [ + 124.36, + 39.98 + ] + ], + [ + [ + 125.51, + 38.85 + ], + [ + 125.62, + 38.66 + ], + [ + 125.42, + 38.72 + ], + [ + 125.63, + 38.63 + ], + [ + 125.62, + 38.74 + ], + [ + 125.51, + 38.85 + ] + ] + ], + [ + [ + [ + 130.24, + 42.81 + ], + [ + 130.25, + 42.79 + ], + [ + 130.24, + 42.78 + ], + [ + 130.24, + 42.81 + ] + ] + ] + ] + }, + "properties": { + "A3": "PRK" + } + }, + { + "type": "Feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + -16.08, + 66.51 + ], + [ + -15.38, + 66.14 + ], + [ + -14.53, + 66.38 + ], + [ + -15.18, + 66.11 + ], + [ + -14.61, + 65.99 + ], + [ + -14.9, + 65.76 + ], + [ + -14.33, + 65.79 + ], + [ + -14.52, + 65.55 + ], + [ + -14.25, + 65.66 + ], + [ + -13.67, + 65.55 + ], + [ + -14.01, + 65.27 + ], + [ + -13.57, + 65.27 + ], + [ + -14.02, + 65.19 + ], + [ + -13.49, + 65.08 + ], + [ + -14.24, + 65.03 + ], + [ + -13.68, + 64.91 + ], + [ + -14.04, + 64.94 + ], + [ + -13.75, + 64.87 + ], + [ + -14.08, + 64.7 + ], + [ + -14.51, + 64.79 + ], + [ + -14.23, + 64.65 + ], + [ + -14.5, + 64.65 + ], + [ + -14.5, + 64.44 + ], + [ + -14.89, + 64.43 + ], + [ + -14.96, + 64.24 + ], + [ + -15.38, + 64.38 + ], + [ + -15.46, + 64.24 + ], + [ + -15.19, + 64.23 + ], + [ + -15.71, + 64.2 + ], + [ + -15.65, + 64.25 + ], + [ + -16.64, + 63.8 + ], + [ + -17.03, + 63.78 + ], + [ + -17.02, + 63.92 + ], + [ + -17.07, + 63.78 + ], + [ + -17.42, + 63.76 + ], + [ + -17.41, + 63.92 + ], + [ + -17.95, + 63.61 + ], + [ + -18.19, + 63.46 + ], + [ + -18.44, + 63.63 + ], + [ + -18.24, + 63.45 + ], + [ + -19.13, + 63.4 + ], + [ + -20.19, + 63.54 + ], + [ + -21.09, + 63.94 + ], + [ + -22.71, + 63.8 + ], + [ + -22.71, + 64.08 + ], + [ + -22.53, + 63.97 + ], + [ + -22.04, + 64.04 + ], + [ + -21.73, + 64.34 + ], + [ + -21.36, + 64.38 + ], + [ + -22.11, + 64.31 + ], + [ + -21.74, + 64.59 + ], + [ + -22.24, + 64.48 + ], + [ + -22.39, + 64.82 + ], + [ + -23.8, + 64.73 + ], + [ + -24.05, + 64.89 + ], + [ + -23.19, + 65.01 + ], + [ + -23.09, + 64.91 + ], + [ + -22.7, + 65.07 + ], + [ + -22.58, + 64.97 + ], + [ + -21.75, + 65.03 + ], + [ + -21.74, + 65.2 + ], + [ + -22.56, + 65.19 + ], + [ + -21.7, + 65.44 + ], + [ + -22.1, + 65.53 + ], + [ + -22.28, + 65.44 + ], + [ + -22.09, + 65.6 + ], + [ + -22.48, + 65.5 + ], + [ + -22.54, + 65.64 + ], + [ + -22.72, + 65.5 + ], + [ + -22.85, + 65.63 + ], + [ + -23.73, + 65.42 + ], + [ + -24.53, + 65.5 + ], + [ + -24.31, + 65.64 + ], + [ + -23.79, + 65.53 + ], + [ + -24.1, + 65.81 + ], + [ + -23.54, + 65.6 + ], + [ + -23.26, + 65.68 + ], + [ + -23.53, + 65.72 + ], + [ + -23.19, + 65.78 + ], + [ + -23.87, + 65.89 + ], + [ + -23.18, + 65.84 + ], + [ + -23.81, + 66.01 + ], + [ + -23.39, + 65.99 + ], + [ + -23.67, + 66.12 + ], + [ + -23.36, + 66.08 + ], + [ + -23.47, + 66.2 + ], + [ + -23, + 66.09 + ], + [ + -23.09, + 65.97 + ], + [ + -22.87, + 66.04 + ], + [ + -22.98, + 65.91 + ], + [ + -22.68, + 66.05 + ], + [ + -22.48, + 65.81 + ], + [ + -22.38, + 66.09 + ], + [ + -22.98, + 66.23 + ], + [ + -22.36, + 66.27 + ], + [ + -23.2, + 66.35 + ], + [ + -22.46, + 66.47 + ], + [ + -21.67, + 66.02 + ], + [ + -21.31, + 66 + ], + [ + -21.61, + 65.96 + ], + [ + -21.29, + 65.93 + ], + [ + -21.34, + 65.73 + ], + [ + -21.78, + 65.76 + ], + [ + -21.3, + 65.59 + ], + [ + -21.48, + 65.44 + ], + [ + -21.19, + 65.43 + ], + [ + -21.08, + 65.16 + ], + [ + -20.93, + 65.58 + ], + [ + -20.66, + 65.69 + ], + [ + -20.65, + 65.58 + ], + [ + -20.48, + 65.49 + ], + [ + -20.61, + 65.6 + ], + [ + -20.35, + 65.6 + ], + [ + -20.27, + 65.66 + ], + [ + -20.41, + 66.09 + ], + [ + -20.1, + 66.12 + ], + [ + -19.47, + 65.74 + ], + [ + -19.44, + 66.05 + ], + [ + -18.79, + 66.19 + ], + [ + -18.06, + 65.65 + ], + [ + -18.27, + 66.17 + ], + [ + -17.56, + 65.96 + ], + [ + -17.14, + 66.21 + ], + [ + -16.92, + 66.09 + ], + [ + -16.48, + 66.19 + ], + [ + -16.54, + 66.51 + ], + [ + -16.08, + 66.51 + ] + ] + ] + }, + "properties": { + "A3": "ISL" + } + }, + { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + -141, + 69.65 + ], + [ + -141, + 69.64 + ], + [ + -141, + 67.41 + ], + [ + -141, + 64.68 + ], + [ + -141, + 62.61 + ], + [ + -141, + 62.6 + ], + [ + -141, + 62.24 + ], + [ + -141, + 61.74 + ], + [ + -141, + 61.66 + ], + [ + -141, + 60.31 + ], + [ + -139.98, + 60.18 + ], + [ + -139.69, + 60.34 + ], + [ + -139.07, + 60.35 + ], + [ + -139.2, + 60.09 + ], + [ + -138.02, + 59.46 + ], + [ + -137.96, + 59.43 + ], + [ + -137.45, + 58.91 + ], + [ + -136.83, + 59.16 + ], + [ + -136.58, + 59.17 + ], + [ + -136.35, + 59.6 + ], + [ + -135.44, + 59.78 + ], + [ + -135.4, + 59.76 + ], + [ + -134.96, + 59.28 + ], + [ + -133.64, + 58.57 + ], + [ + -131.85, + 56.66 + ], + [ + -131.85, + 56.65 + ], + [ + -130.45, + 56.21 + ], + [ + -130.1, + 56.12 + ], + [ + -130.01, + 55.91 + ], + [ + -130.18, + 55.76 + ], + [ + -130, + 55.28 + ], + [ + -130.48, + 54.84 + ], + [ + -130.65, + 54.97 + ], + [ + -130.72, + 54.77 + ], + [ + -130.75, + 54.96 + ], + [ + -130.86, + 54.77 + ], + [ + -131.01, + 55.05 + ], + [ + -130.66, + 55.02 + ], + [ + -130.48, + 55.34 + ], + [ + -130.77, + 55.09 + ], + [ + -131.09, + 55.19 + ], + [ + -130.62, + 55.3 + ], + [ + -130.61, + 55.4 + ], + [ + -130.88, + 55.36 + ], + [ + -130.65, + 55.65 + ], + [ + -130.83, + 55.55 + ], + [ + -130.9, + 55.7 + ], + [ + -130.7, + 55.75 + ], + [ + -130.91, + 55.72 + ], + [ + -131.22, + 55.98 + ], + [ + -131.11, + 56.1 + ], + [ + -131.84, + 55.96 + ], + [ + -131.95, + 55.5 + ], + [ + -132.19, + 55.59 + ], + [ + -132.29, + 55.76 + ], + [ + -132.01, + 55.78 + ], + [ + -131.97, + 56.17 + ], + [ + -131.46, + 56.23 + ], + [ + -131.9, + 56.23 + ], + [ + -132.18, + 56.38 + ], + [ + -132.37, + 56.57 + ], + [ + -132.19, + 56.7 + ], + [ + -132.56, + 56.71 + ], + [ + -132.36, + 56.84 + ], + [ + -132.52, + 56.75 + ], + [ + -132.79, + 56.84 + ], + [ + -132.82, + 57.12 + ], + [ + -133, + 57.01 + ], + [ + -133.15, + 57.17 + ], + [ + -133.58, + 57.18 + ], + [ + -133.06, + 57.35 + ], + [ + -133.46, + 57.36 + ], + [ + -133.34, + 57.59 + ], + [ + -133.62, + 57.58 + ], + [ + -133.65, + 57.72 + ], + [ + -132.83, + 57.51 + ], + [ + -133.6, + 57.77 + ], + [ + -133.58, + 57.92 + ], + [ + -133.1, + 57.83 + ], + [ + -133.16, + 57.93 + ], + [ + -133.59, + 57.93 + ], + [ + -133.68, + 57.79 + ], + [ + -133.85, + 57.95 + ], + [ + -133.54, + 58.03 + ], + [ + -133.76, + 58.02 + ], + [ + -133.67, + 58.15 + ], + [ + -133.89, + 57.97 + ], + [ + -134.05, + 58.06 + ], + [ + -133.9, + 58.51 + ], + [ + -134.15, + 58.2 + ], + [ + -134.77, + 58.39 + ], + [ + -134.99, + 58.68 + ], + [ + -134.95, + 58.82 + ], + [ + -134.75, + 58.77 + ], + [ + -134.95, + 58.96 + ], + [ + -135.02, + 58.73 + ], + [ + -135.15, + 58.84 + ], + [ + -135.35, + 59.49 + ], + [ + -135.55, + 59.32 + ], + [ + -135.31, + 59.08 + ], + [ + -135.82, + 59.34 + ], + [ + -135.38, + 59.1 + ], + [ + -135.09, + 58.24 + ], + [ + -135.5, + 58.5 + ], + [ + -135.47, + 58.38 + ], + [ + -135.92, + 58.38 + ], + [ + -136.09, + 58.82 + ], + [ + -135.76, + 58.88 + ], + [ + -136.06, + 58.85 + ], + [ + -136.37, + 59.09 + ], + [ + -136.15, + 58.75 + ], + [ + -136.53, + 58.96 + ], + [ + -136.7, + 59.01 + ], + [ + -136.67, + 58.89 + ], + [ + -137.07, + 59.05 + ], + [ + -136.92, + 58.93 + ], + [ + -137.13, + 58.84 + ], + [ + -136.56, + 58.83 + ], + [ + -136.35, + 58.69 + ], + [ + -136.53, + 58.6 + ], + [ + -136.31, + 58.67 + ], + [ + -136.07, + 58.47 + ], + [ + -136.28, + 58.31 + ], + [ + -136.52, + 58.45 + ], + [ + -136.37, + 58.3 + ], + [ + -136.6, + 58.36 + ], + [ + -136.67, + 58.21 + ], + [ + -138.6, + 59.12 + ], + [ + -138.27, + 59.19 + ], + [ + -138.61, + 59.12 + ], + [ + -139.86, + 59.54 + ], + [ + -139.47, + 59.7 + ], + [ + -139.49, + 59.99 + ], + [ + -139.3, + 59.56 + ], + [ + -139.3, + 59.82 + ], + [ + -138.92, + 59.8 + ], + [ + -139.54, + 60.04 + ], + [ + -140.31, + 59.69 + ], + [ + -141.46, + 59.9 + ], + [ + -141.15, + 60.17 + ], + [ + -141.6, + 60.17 + ], + [ + -141.37, + 60.02 + ], + [ + -141.61, + 59.96 + ], + [ + -142.51, + 60.1 + ], + [ + -144.25, + 60.02 + ], + [ + -144, + 60.04 + ], + [ + -144.2, + 60.2 + ], + [ + -144.96, + 60.29 + ], + [ + -144.76, + 60.64 + ], + [ + -145.33, + 60.34 + ], + [ + -145.96, + 60.47 + ], + [ + -145.59, + 60.68 + ], + [ + -146.25, + 60.62 + ], + [ + -146.05, + 60.8 + ], + [ + -146.65, + 60.69 + ], + [ + -146.05, + 60.83 + ], + [ + -146.64, + 60.82 + ], + [ + -146.66, + 61.07 + ], + [ + -145.92, + 61.06 + ], + [ + -146.65, + 61.16 + ], + [ + -146.98, + 60.93 + ], + [ + -147.08, + 61.16 + ], + [ + -147.38, + 60.87 + ], + [ + -147.53, + 61.15 + ], + [ + -147.6, + 60.85 + ], + [ + -147.73, + 60.94 + ], + [ + -147.88, + 60.83 + ], + [ + -148.07, + 60.94 + ], + [ + -147.73, + 61.27 + ], + [ + -148.07, + 61.01 + ], + [ + -148.14, + 61.13 + ], + [ + -148.41, + 61.05 + ], + [ + -148.16, + 61.07 + ], + [ + -148.34, + 60.81 + ], + [ + -148.51, + 60.84 + ], + [ + -148.72, + 60.79 + ], + [ + -148.45, + 60.8 + ], + [ + -148.68, + 60.65 + ], + [ + -148.36, + 60.77 + ], + [ + -148.43, + 60.62 + ], + [ + -148.23, + 60.76 + ], + [ + -148.19, + 60.61 + ], + [ + -148.33, + 60.53 + ], + [ + -148.4, + 60.59 + ], + [ + -148.57, + 60.55 + ], + [ + -148.71, + 60.44 + ], + [ + -148.45, + 60.55 + ], + [ + -148.28, + 60.43 + ], + [ + -148.1, + 60.6 + ], + [ + -147.96, + 60.5 + ], + [ + -148.45, + 60.18 + ], + [ + -148.21, + 60.26 + ], + [ + -148.12, + 60.17 + ], + [ + -148.29, + 60.11 + ], + [ + -148.34, + 60.19 + ], + [ + -148.44, + 59.94 + ], + [ + -148.53, + 60.03 + ], + [ + -148.73, + 59.94 + ], + [ + -148.71, + 60.06 + ], + [ + -148.84, + 59.92 + ], + [ + -149.09, + 59.96 + ], + [ + -149.06, + 60.06 + ], + [ + -149.29, + 59.87 + ], + [ + -149.6, + 60.19 + ], + [ + -149.5, + 59.93 + ], + [ + -149.52, + 59.7 + ], + [ + -149.69, + 59.95 + ], + [ + -149.74, + 59.64 + ], + [ + -150.07, + 59.85 + ], + [ + -149.94, + 59.66 + ], + [ + -150.13, + 59.69 + ], + [ + -150.4, + 59.46 + ], + [ + -150.23, + 59.75 + ], + [ + -150.96, + 59.2 + ], + [ + -151.03, + 59.33 + ], + [ + -151.59, + 59.16 + ], + [ + -151.98, + 59.26 + ], + [ + -151.65, + 59.49 + ], + [ + -151.3, + 59.41 + ], + [ + -151.47, + 59.5 + ], + [ + -151.15, + 59.65 + ], + [ + -150.88, + 59.81 + ], + [ + -151.41, + 59.6 + ], + [ + -151.87, + 59.77 + ], + [ + -151.28, + 60.37 + ], + [ + -151.41, + 60.72 + ], + [ + -150.38, + 61.04 + ], + [ + -150.05, + 60.86 + ], + [ + -149.77, + 60.97 + ], + [ + -148.97, + 60.81 + ], + [ + -150.07, + 61.15 + ], + [ + -149.26, + 61.49 + ], + [ + -149.72, + 61.46 + ], + [ + -149.99, + 61.24 + ], + [ + -150.49, + 61.25 + ], + [ + -150.58, + 61.39 + ], + [ + -151.16, + 61.04 + ], + [ + -151.74, + 60.95 + ], + [ + -151.71, + 60.72 + ], + [ + -152.07, + 60.69 + ], + [ + -152.41, + 60.29 + ], + [ + -153.03, + 60.3 + ], + [ + -152.58, + 60.08 + ], + [ + -152.71, + 59.92 + ], + [ + -153.21, + 59.87 + ], + [ + -152.99, + 59.81 + ], + [ + -153.22, + 59.64 + ], + [ + -153.47, + 59.8 + ], + [ + -153.58, + 59.55 + ], + [ + -153.87, + 59.54 + ], + [ + -153.73, + 59.44 + ], + [ + -154.14, + 59.37 + ], + [ + -153.95, + 59.36 + ], + [ + -154.27, + 59.14 + ], + [ + -154.16, + 59.01 + ], + [ + -153.7, + 59.08 + ], + [ + -153.25, + 58.85 + ], + [ + -153.91, + 58.61 + ], + [ + -154, + 58.38 + ], + [ + -154.47, + 58.28 + ], + [ + -154.1, + 58.28 + ], + [ + -154.32, + 58.08 + ], + [ + -154.48, + 58.2 + ], + [ + -154.57, + 58.02 + ], + [ + -154.95, + 58 + ], + [ + -155.06, + 58.13 + ], + [ + -154.95, + 58 + ], + [ + -155.3, + 57.73 + ], + [ + -155.62, + 57.79 + ], + [ + -155.73, + 57.54 + ], + [ + -156.04, + 57.57 + ], + [ + -156.02, + 57.43 + ], + [ + -156.54, + 57.33 + ], + [ + -156.31, + 57.3 + ], + [ + -156.55, + 56.98 + ], + [ + -156.77, + 57.04 + ], + [ + -157.2, + 56.76 + ], + [ + -157.46, + 56.85 + ], + [ + -157.47, + 56.62 + ], + [ + -157.76, + 56.68 + ], + [ + -158.13, + 56.55 + ], + [ + -157.86, + 56.47 + ], + [ + -158.41, + 56.45 + ], + [ + -158.64, + 56.26 + ], + [ + -158.11, + 56.24 + ], + [ + -158.49, + 56.11 + ], + [ + -158.43, + 55.99 + ], + [ + -158.62, + 56.2 + ], + [ + -158.67, + 55.95 + ], + [ + -158.86, + 56.02 + ], + [ + -159.41, + 55.79 + ], + [ + -159.53, + 55.89 + ], + [ + -159.6, + 55.57 + ], + [ + -159.58, + 55.8 + ], + [ + -159.82, + 55.86 + ], + [ + -160.42, + 55.66 + ], + [ + -160.5, + 55.48 + ], + [ + -160.59, + 55.61 + ], + [ + -160.67, + 55.46 + ], + [ + -160.91, + 55.53 + ], + [ + -161.24, + 55.36 + ], + [ + -161.5, + 55.36 + ], + [ + -161.49, + 55.49 + ], + [ + -161.14, + 55.54 + ], + [ + -161.59, + 55.62 + ], + [ + -161.96, + 55.11 + ], + [ + -162.41, + 55.03 + ], + [ + -162.65, + 55.3 + ], + [ + -162.55, + 54.96 + ], + [ + -162.64, + 55.06 + ], + [ + -162.88, + 54.93 + ], + [ + -163.18, + 55.13 + ], + [ + -163.03, + 54.95 + ], + [ + -163.36, + 54.81 + ], + [ + -163.22, + 54.93 + ], + [ + -163.42, + 55.07 + ], + [ + -163.02, + 55.24 + ], + [ + -162.86, + 55.18 + ], + [ + -161.8, + 55.89 + ], + [ + -160.88, + 56 + ], + [ + -161.02, + 55.9 + ], + [ + -160.8, + 55.71 + ], + [ + -160.79, + 55.89 + ], + [ + -160.25, + 55.77 + ], + [ + -160.58, + 55.91 + ], + [ + -160.37, + 56.26 + ], + [ + -159.52, + 56.62 + ], + [ + -158.85, + 56.89 + ], + [ + -158.63, + 56.78 + ], + [ + -158.64, + 57.04 + ], + [ + -158.03, + 57.33 + ], + [ + -157.75, + 57.55 + ], + [ + -157.49, + 57.47 + ], + [ + -157.71, + 57.64 + ], + [ + -157.54, + 58.11 + ], + [ + -157.52, + 58.1 + ], + [ + -157.54, + 58.11 + ], + [ + -157.18, + 58.19 + ], + [ + -157.45, + 58.21 + ], + [ + -157.53, + 58.39 + ], + [ + -156.87, + 58.72 + ], + [ + -157.06, + 58.77 + ], + [ + -156.85, + 59.11 + ], + [ + -157.09, + 58.87 + ], + [ + -158.18, + 58.61 + ], + [ + -158.56, + 58.84 + ], + [ + -158.37, + 59.03 + ], + [ + -158.04, + 58.94 + ], + [ + -158.44, + 59.08 + ], + [ + -158.8, + 58.73 + ], + [ + -159.01, + 58.78 + ], + [ + -158.7, + 58.49 + ], + [ + -158.9, + 58.39 + ], + [ + -159.6, + 58.95 + ], + [ + -159.91, + 58.77 + ], + [ + -160.33, + 59.08 + ], + [ + -161.71, + 58.55 + ], + [ + -162.18, + 58.65 + ], + [ + -161.64, + 58.8 + ], + [ + -161.84, + 59.03 + ], + [ + -161.55, + 59.11 + ], + [ + -161.98, + 59.15 + ], + [ + -161.7, + 59.5 + ], + [ + -162.17, + 60.22 + ], + [ + -162.46, + 60.3 + ], + [ + -161.81, + 60.72 + ], + [ + -162.61, + 60.33 + ], + [ + -162.55, + 59.98 + ], + [ + -163.94, + 59.8 + ], + [ + -164.22, + 59.94 + ], + [ + -164.02, + 60.02 + ], + [ + -164.67, + 60.3 + ], + [ + -164.03, + 60.76 + ], + [ + -163.7, + 60.57 + ], + [ + -163.37, + 60.85 + ], + [ + -163.93, + 60.86 + ], + [ + -163.54, + 60.9 + ], + [ + -163.75, + 61 + ], + [ + -163.95, + 60.86 + ], + [ + -164.1, + 60.87 + ], + [ + -163.97, + 60.89 + ], + [ + -163.94, + 60.93 + ], + [ + -163.99, + 61.05 + ], + [ + -164.09, + 60.87 + ], + [ + -164.54, + 60.85 + ], + [ + -164.66, + 60.96 + ], + [ + -165.15, + 60.93 + ], + [ + -164.77, + 61.12 + ], + [ + -165.08, + 61.1 + ], + [ + -165.28, + 61.26 + ], + [ + -165.37, + 61.08 + ], + [ + -165.59, + 61.1 + ], + [ + -165.93, + 61.41 + ], + [ + -165.69, + 61.48 + ], + [ + -166.15, + 61.51 + ], + [ + -166.17, + 61.65 + ], + [ + -165.73, + 61.66 + ], + [ + -166.1, + 61.81 + ], + [ + -165.62, + 61.84 + ], + [ + -165.74, + 62.08 + ], + [ + -165.08, + 62.53 + ], + [ + -164.7, + 62.45 + ], + [ + -164.78, + 62.34 + ], + [ + -164.55, + 62.42 + ], + [ + -164.86, + 62.55 + ], + [ + -164.61, + 62.65 + ], + [ + -164.51, + 62.72 + ], + [ + -164.51, + 62.75 + ], + [ + -164.38, + 62.71 + ], + [ + -164.17, + 62.69 + ], + [ + -163.96, + 62.51 + ], + [ + -163.79, + 62.51 + ], + [ + -164.1, + 62.83 + ], + [ + -163.8, + 62.92 + ], + [ + -163.71, + 63.03 + ], + [ + -163.26, + 62.97 + ], + [ + -162.31, + 63.54 + ], + [ + -162.01, + 63.48 + ], + [ + -162.17, + 63.41 + ], + [ + -161.14, + 63.5 + ], + [ + -160.75, + 63.87 + ], + [ + -161.01, + 64.3 + ], + [ + -161.53, + 64.41 + ], + [ + -161.08, + 64.49 + ], + [ + -160.78, + 64.71 + ], + [ + -161.14, + 64.93 + ], + [ + -161.42, + 64.76 + ], + [ + -162.18, + 64.68 + ], + [ + -162.78, + 64.32 + ], + [ + -163.12, + 64.66 + ], + [ + -163.39, + 64.58 + ], + [ + -163.03, + 64.52 + ], + [ + -163.15, + 64.4 + ], + [ + -163.65, + 64.57 + ], + [ + -164.97, + 64.56 + ], + [ + -164.74, + 64.47 + ], + [ + -165.01, + 64.43 + ], + [ + -166.2, + 64.58 + ], + [ + -166.95, + 65.16 + ], + [ + -166.85, + 65.28 + ], + [ + -166.75, + 65.11 + ], + [ + -166.04, + 65.25 + ], + [ + -167.4, + 65.4 + ], + [ + -168.12, + 65.65 + ], + [ + -166.26, + 66.17 + ], + [ + -165.47, + 66.13 + ], + [ + -165.86, + 66.22 + ], + [ + -165.75, + 66.32 + ], + [ + -164.4, + 66.58 + ], + [ + -163.75, + 66.55 + ], + [ + -163.84, + 66.26 + ], + [ + -164.2, + 66.19 + ], + [ + -163.76, + 66.06 + ], + [ + -162.75, + 66.1 + ], + [ + -162.65, + 65.98 + ], + [ + -162.13, + 66.08 + ], + [ + -161.85, + 65.96 + ], + [ + -161.49, + 66.26 + ], + [ + -161.06, + 66.23 + ], + [ + -161.09, + 66.11 + ], + [ + -160.98, + 66.23 + ], + [ + -161.13, + 66.34 + ], + [ + -161.69, + 66.4 + ], + [ + -161.91, + 66.27 + ], + [ + -161.81, + 66.44 + ], + [ + -162.5, + 66.74 + ], + [ + -162.47, + 66.95 + ], + [ + -161.58, + 66.44 + ], + [ + -161.19, + 66.54 + ], + [ + -160.58, + 66.35 + ], + [ + -160.18, + 66.5 + ], + [ + -160.09, + 66.55 + ], + [ + -160.14, + 66.4 + ], + [ + -160.02, + 66.5 + ], + [ + -159.57, + 66.41 + ], + [ + -159.96, + 66.52 + ], + [ + -160.09, + 66.55 + ], + [ + -160.79, + 66.66 + ], + [ + -161.46, + 66.52 + ], + [ + -161.88, + 66.72 + ], + [ + -161.48, + 66.93 + ], + [ + -161.65, + 67.02 + ], + [ + -163.66, + 67.1 + ], + [ + -163.89, + 67.49 + ], + [ + -164.53, + 67.73 + ], + [ + -166.67, + 68.34 + ], + [ + -166.42, + 68.4 + ], + [ + -166.21, + 68.88 + ], + [ + -163.94, + 68.99 + ], + [ + -163.11, + 69.33 + ], + [ + -163.01, + 69.76 + ], + [ + -162.46, + 70.04 + ], + [ + -160.98, + 70.3 + ], + [ + -160.12, + 70.61 + ], + [ + -160.2, + 70.34 + ], + [ + -159.76, + 70.2 + ], + [ + -159.8, + 70.49 + ], + [ + -159.26, + 70.51 + ], + [ + -160.12, + 70.6 + ], + [ + -159.65, + 70.79 + ], + [ + -158.77, + 70.91 + ], + [ + -159.48, + 70.78 + ], + [ + -159.09, + 70.66 + ], + [ + -159.07, + 70.82 + ], + [ + -157.88, + 70.85 + ], + [ + -156.6, + 71.34 + ], + [ + -156.15, + 71.15 + ], + [ + -155.57, + 71.16 + ], + [ + -155.73, + 70.98 + ], + [ + -156.35, + 70.92 + ], + [ + -155.96, + 70.9 + ], + [ + -156, + 70.75 + ], + [ + -155.2, + 70.79 + ], + [ + -155.51, + 70.94 + ], + [ + -155.1, + 71.15 + ], + [ + -154.39, + 70.76 + ], + [ + -153.19, + 70.92 + ], + [ + -152.67, + 70.74 + ], + [ + -152.71, + 70.88 + ], + [ + -152.23, + 70.83 + ], + [ + -152.59, + 70.63 + ], + [ + -152.07, + 70.56 + ], + [ + -152.6, + 70.54 + ], + [ + -151.76, + 70.55 + ], + [ + -151.97, + 70.43 + ], + [ + -151.2, + 70.35 + ], + [ + -150.82, + 70.45 + ], + [ + -150.89, + 70.2 + ], + [ + -149.46, + 70.52 + ], + [ + -148.2, + 70.35 + ], + [ + -148.36, + 70.25 + ], + [ + -147.89, + 70.3 + ], + [ + -148.08, + 70.18 + ], + [ + -145.56, + 70.07 + ], + [ + -146.16, + 70.03 + ], + [ + -146.38, + 69.91 + ], + [ + -143.22, + 70.11 + ], + [ + -141, + 69.65 + ] + ], + [ + [ + -154.78, + 58.51 + ], + [ + -154.8, + 58.55 + ], + [ + -155.07, + 58.56 + ], + [ + -154.78, + 58.51 + ] + ], + [ + [ + -156.73, + 58.08 + ], + [ + -156.88, + 57.91 + ], + [ + -156.13, + 57.84 + ], + [ + -155.98, + 57.7 + ], + [ + -156.01, + 57.95 + ], + [ + -156.73, + 58.08 + ] + ], + [ + [ + -156.34, + 58.72 + ], + [ + -156.33, + 58.61 + ], + [ + -155.3, + 58.5 + ], + [ + -155.79, + 58.61 + ], + [ + -155.39, + 58.66 + ], + [ + -156.34, + 58.72 + ] + ], + [ + [ + -157.48, + 57.4 + ], + [ + -157.52, + 57.4 + ], + [ + -157.54, + 57.39 + ], + [ + -157.48, + 57.4 + ] + ], + [ + [ + -155.3, + 58.97 + ], + [ + -154.96, + 58.96 + ], + [ + -155.59, + 59.03 + ], + [ + -155.35, + 58.98 + ], + [ + -155.3, + 58.97 + ] + ], + [ + [ + -155.35, + 59.22 + ], + [ + -155.54, + 59.13 + ], + [ + -155.05, + 59.14 + ], + [ + -155.35, + 59.22 + ] + ], + [ + [ + -154.32, + 59.8 + ], + [ + -155.7, + 59.61 + ], + [ + -155.9, + 59.33 + ], + [ + -154.47, + 59.43 + ], + [ + -154.75, + 59.48 + ], + [ + -154.53, + 59.51 + ], + [ + -154.67, + 59.6 + ], + [ + -154.25, + 59.65 + ], + [ + -153.85, + 59.78 + ], + [ + -154.16, + 59.7 + ], + [ + -154.25, + 59.78 + ], + [ + -154.16, + 59.81 + ], + [ + -154.32, + 59.8 + ] + ], + [ + [ + -158.92, + 60.06 + ], + [ + -159.13, + 60 + ], + [ + -158.55, + 60.04 + ], + [ + -158.92, + 60.06 + ] + ], + [ + [ + -164.07, + 60.27 + ], + [ + -163.71, + 60.31 + ], + [ + -163.75, + 60.15 + ], + [ + -163.52, + 60.39 + ], + [ + -163.83, + 60.45 + ], + [ + -164.07, + 60.27 + ] + ], + [ + [ + -158.86, + 60.29 + ], + [ + -159.15, + 60.2 + ], + [ + -158.73, + 60.16 + ], + [ + -158.86, + 60.29 + ] + ], + [ + [ + -163.79, + 61.23 + ], + [ + -163.83, + 61.09 + ], + [ + -163.51, + 61.23 + ], + [ + -163.79, + 61.23 + ] + ], + [ + [ + -161.76, + 61.6 + ], + [ + -161.3, + 61.69 + ], + [ + -161.95, + 61.62 + ], + [ + -162.13, + 61.87 + ], + [ + -162, + 61.61 + ], + [ + -162, + 61.6 + ], + [ + -161.76, + 61.6 + ] + ], + [ + [ + -162.86, + 61.93 + ], + [ + -162.69, + 61.89 + ], + [ + -162.51, + 62.01 + ], + [ + -162.36, + 61.92 + ], + [ + -162.51, + 62.01 + ], + [ + -162.7, + 61.9 + ], + [ + -162.83, + 61.97 + ], + [ + -163.02, + 61.88 + ], + [ + -163.37, + 62.07 + ], + [ + -163.94, + 62.1 + ], + [ + -163.03, + 61.87 + ], + [ + -162.86, + 61.93 + ] + ], + [ + [ + -160.45, + 61.96 + ], + [ + -160.63, + 61.93 + ], + [ + -160.05, + 61.94 + ], + [ + -160.45, + 61.96 + ] + ], + [ + [ + -158.7, + 64.15 + ], + [ + -158.71, + 64.17 + ], + [ + -159.54, + 63.41 + ], + [ + -158.59, + 64.12 + ], + [ + -158.69, + 64.35 + ], + [ + -158.45, + 64.48 + ], + [ + -158.72, + 64.35 + ], + [ + -158.66, + 64.17 + ], + [ + -158.69, + 64.16 + ], + [ + -158.7, + 64.15 + ] + ], + [ + [ + -157.49, + 64.83 + ], + [ + -157.48, + 64.83 + ], + [ + -157.49, + 64.83 + ], + [ + -157.92, + 64.86 + ], + [ + -158.4, + 64.52 + ], + [ + -157.9, + 64.85 + ], + [ + -157.49, + 64.83 + ] + ], + [ + [ + -156.88, + 64.74 + ], + [ + -157.1, + 64.82 + ], + [ + -156.64, + 64.63 + ], + [ + -156.88, + 64.74 + ] + ], + [ + [ + -165.43, + 65.2 + ], + [ + -165.95, + 65.15 + ], + [ + -165.64, + 65.04 + ], + [ + -165.43, + 65.2 + ] + ], + [ + [ + -159.17, + 66.52 + ], + [ + -159.21, + 66.51 + ], + [ + -159.26, + 66.52 + ], + [ + -159.21, + 66.5 + ], + [ + -159.21, + 66.51 + ], + [ + -159.17, + 66.51 + ], + [ + -159.17, + 66.52 + ] + ], + [ + [ + -153, + 70.61 + ], + [ + -153.59, + 70.73 + ], + [ + -154.29, + 70.67 + ], + [ + -153.76, + 70.45 + ], + [ + -153, + 70.61 + ] + ], + [ + [ + -159.43, + 66.54 + ], + [ + -159.43, + 66.53 + ], + [ + -159.43, + 66.52 + ], + [ + -159.48, + 66.51 + ], + [ + -159.52, + 66.52 + ], + [ + -159.48, + 66.51 + ], + [ + -159.48, + 66.5 + ], + [ + -159.43, + 66.52 + ], + [ + -159.43, + 66.53 + ], + [ + -159.43, + 66.54 + ] + ], + [ + [ + -144.76, + 61.34 + ], + [ + -144.93, + 61.14 + ], + [ + -144.49, + 60.81 + ], + [ + -144.9, + 61.14 + ], + [ + -144.76, + 61.34 + ] + ], + [ + [ + -141.68, + 61.75 + ], + [ + -141.83, + 61.69 + ], + [ + -141.33, + 61.72 + ], + [ + -141.68, + 61.75 + ] + ], + [ + [ + -146.24, + 64.24 + ], + [ + -146.26, + 64.25 + ], + [ + -146.25, + 64.24 + ], + [ + -146.24, + 64.24 + ] + ], + [ + [ + -152.67, + 65.16 + ], + [ + -153.28, + 65.16 + ], + [ + -152.39, + 65.1 + ], + [ + -152.67, + 65.16 + ] + ], + [ + [ + -148.49, + 70.11 + ], + [ + -148.72, + 69.96 + ], + [ + -148.75, + 69.81 + ], + [ + -148.1, + 69.14 + ], + [ + -148.72, + 69.85 + ], + [ + -148.16, + 70.13 + ], + [ + -148.63, + 70.01 + ], + [ + -148.39, + 70.12 + ], + [ + -148.3, + 70.25 + ], + [ + -148.49, + 70.11 + ] + ], + [ + [ + -146.26, + 69.46 + ], + [ + -146.24, + 69.46 + ], + [ + -146.28, + 69.55 + ], + [ + -146.26, + 69.46 + ] + ], + [ + [ + -142.98, + 65.35 + ], + [ + -142.53, + 65.39 + ], + [ + -143.42, + 65.37 + ], + [ + -142.98, + 65.35 + ] + ], + [ + [ + -150.95, + 60.17 + ], + [ + -150.66, + 60.04 + ], + [ + -151.06, + 60.3 + ], + [ + -150.95, + 60.17 + ] + ] + ], + [ + [ + [ + -147, + 64.51 + ], + [ + -146.98, + 64.4 + ], + [ + -147.02, + 64.44 + ], + [ + -147, + 64.51 + ] + ] + ], + [ + [ + [ + -144.05, + 65.85 + ], + [ + -143.99, + 65.84 + ], + [ + -143.99, + 65.79 + ], + [ + -144.08, + 65.67 + ], + [ + -143.99, + 65.84 + ], + [ + -144.69, + 66.22 + ], + [ + -144.87, + 66.33 + ], + [ + -145.06, + 66.43 + ], + [ + -145, + 66.43 + ], + [ + -144.89, + 66.39 + ], + [ + -144.69, + 66.22 + ], + [ + -144.05, + 65.85 + ] + ] + ], + [ + [ + [ + -159.79, + 62.22 + ], + [ + -159.74, + 62.11 + ], + [ + -160.05, + 62.41 + ], + [ + -159.79, + 62.22 + ] + ] + ], + [ + [ + [ + -132.68, + 54.66 + ], + [ + -133.16, + 54.95 + ], + [ + -133.22, + 55.24 + ], + [ + -132.68, + 54.66 + ] + ] + ], + [ + [ + [ + -122.76, + 49 + ], + [ + -121.46, + 49 + ], + [ + -121.09, + 49 + ], + [ + -121.07, + 48.94 + ], + [ + -121.07, + 49 + ], + [ + -119.45, + 49 + ], + [ + -119.43, + 49 + ], + [ + -116.5, + 49 + ], + [ + -113.91, + 49 + ], + [ + -113.9, + 49 + ], + [ + -113.69, + 49 + ], + [ + -112.02, + 49 + ], + [ + -112.01, + 49 + ], + [ + -109.86, + 49 + ], + [ + -107.45, + 49 + ], + [ + -100.46, + 49 + ], + [ + -100.37, + 49 + ], + [ + -100.35, + 49 + ], + [ + -100.33, + 49 + ], + [ + -100.32, + 49 + ], + [ + -100.24, + 49 + ], + [ + -100.23, + 49 + ], + [ + -100.16, + 49 + ], + [ + -100.15, + 49 + ], + [ + -99.98, + 49 + ], + [ + -99.89, + 49 + ], + [ + -99.88, + 49 + ], + [ + -98.8, + 49 + ], + [ + -98.79, + 49 + ], + [ + -95.3, + 49 + ], + [ + -95.32, + 48.94 + ], + [ + -95.14, + 48.91 + ], + [ + -94.92, + 48.94 + ], + [ + -94.7, + 48.83 + ], + [ + -94.7, + 48.81 + ], + [ + -94.7, + 48.8 + ], + [ + -94.69, + 48.79 + ], + [ + -94.69, + 48.78 + ], + [ + -94.68, + 48.77 + ], + [ + -94.67, + 48.77 + ], + [ + -94.65, + 48.76 + ], + [ + -94.65, + 48.75 + ], + [ + -94.62, + 48.74 + ], + [ + -94.6, + 48.72 + ], + [ + -94.59, + 48.72 + ], + [ + -94.58, + 48.72 + ], + [ + -94.53, + 48.7 + ], + [ + -94.51, + 48.7 + ], + [ + -94.5, + 48.7 + ], + [ + -94.49, + 48.7 + ], + [ + -94.48, + 48.7 + ], + [ + -94.47, + 48.7 + ], + [ + -94.45, + 48.69 + ], + [ + -94.44, + 48.7 + ], + [ + -94.42, + 48.71 + ], + [ + -94.4, + 48.71 + ], + [ + -94.39, + 48.71 + ], + [ + -94.38, + 48.71 + ], + [ + -94.37, + 48.71 + ], + [ + -94.36, + 48.7 + ], + [ + -94.34, + 48.7 + ], + [ + -94.33, + 48.7 + ], + [ + -94.32, + 48.71 + ], + [ + -94.29, + 48.71 + ], + [ + -94.27, + 48.7 + ], + [ + -94.26, + 48.69 + ], + [ + -94.25, + 48.69 + ], + [ + -94.25, + 48.67 + ], + [ + -94.25, + 48.66 + ], + [ + -94.24, + 48.65 + ], + [ + -94.23, + 48.65 + ], + [ + -94.21, + 48.65 + ], + [ + -94.18, + 48.65 + ], + [ + -94.17, + 48.65 + ], + [ + -94.16, + 48.65 + ], + [ + -94.14, + 48.65 + ], + [ + -94.12, + 48.64 + ], + [ + -94.1, + 48.65 + ], + [ + -94.07, + 48.65 + ], + [ + -94.06, + 48.64 + ], + [ + -94.05, + 48.64 + ], + [ + -94.04, + 48.64 + ], + [ + -94.02, + 48.64 + ], + [ + -94.01, + 48.64 + ], + [ + -93.99, + 48.64 + ], + [ + -93.96, + 48.64 + ], + [ + -93.94, + 48.63 + ], + [ + -93.92, + 48.63 + ], + [ + -93.9, + 48.63 + ], + [ + -93.89, + 48.63 + ], + [ + -93.88, + 48.63 + ], + [ + -93.86, + 48.63 + ], + [ + -93.83, + 48.62 + ], + [ + -93.82, + 48.61 + ], + [ + -93.82, + 48.6 + ], + [ + -93.82, + 48.59 + ], + [ + -93.81, + 48.59 + ], + [ + -93.81, + 48.58 + ], + [ + -93.81, + 48.57 + ], + [ + -93.8, + 48.57 + ], + [ + -93.81, + 48.56 + ], + [ + -93.82, + 48.54 + ], + [ + -93.82, + 48.53 + ], + [ + -93.79, + 48.52 + ], + [ + -93.77, + 48.52 + ], + [ + -93.75, + 48.52 + ], + [ + -93.74, + 48.52 + ], + [ + -93.73, + 48.52 + ], + [ + -93.7, + 48.52 + ], + [ + -93.69, + 48.52 + ], + [ + -93.68, + 48.52 + ], + [ + -93.66, + 48.52 + ], + [ + -93.65, + 48.52 + ], + [ + -93.64, + 48.52 + ], + [ + -93.63, + 48.53 + ], + [ + -93.61, + 48.52 + ], + [ + -93.6, + 48.52 + ], + [ + -93.59, + 48.53 + ], + [ + -93.58, + 48.53 + ], + [ + -93.55, + 48.53 + ], + [ + -93.53, + 48.53 + ], + [ + -93.5, + 48.54 + ], + [ + -93.49, + 48.54 + ], + [ + -93.48, + 48.54 + ], + [ + -93.46, + 48.56 + ], + [ + -93.47, + 48.58 + ], + [ + -93.46, + 48.59 + ], + [ + -93.45, + 48.59 + ], + [ + -93.44, + 48.59 + ], + [ + -93.43, + 48.6 + ], + [ + -93.42, + 48.6 + ], + [ + -93.39, + 48.61 + ], + [ + -93.38, + 48.61 + ], + [ + -93.37, + 48.61 + ], + [ + -93.36, + 48.61 + ], + [ + -93.35, + 48.62 + ], + [ + -92.95, + 48.61 + ], + [ + -92.92, + 48.6 + ], + [ + -92.63, + 48.52 + ], + [ + -92.68, + 48.5 + ], + [ + -92.69, + 48.5 + ], + [ + -92.71, + 48.48 + ], + [ + -92.65, + 48.44 + ], + [ + -92.62, + 48.44 + ], + [ + -92.5, + 48.45 + ], + [ + -92.48, + 48.42 + ], + [ + -92.44, + 48.32 + ], + [ + -92.42, + 48.3 + ], + [ + -92.4, + 48.28 + ], + [ + -92.39, + 48.25 + ], + [ + -92.38, + 48.25 + ], + [ + -92.38, + 48.23 + ], + [ + -92.37, + 48.22 + ], + [ + -92.3, + 48.28 + ], + [ + -92.29, + 48.33 + ], + [ + -92.29, + 48.34 + ], + [ + -92.07, + 48.36 + ], + [ + -92.06, + 48.36 + ], + [ + -92.05, + 48.35 + ], + [ + -92.04, + 48.33 + ], + [ + -92.01, + 48.3 + ], + [ + -92.01, + 48.27 + ], + [ + -91.98, + 48.25 + ], + [ + -91.96, + 48.24 + ], + [ + -91.9, + 48.24 + ], + [ + -91.89, + 48.23 + ], + [ + -91.86, + 48.21 + ], + [ + -91.85, + 48.21 + ], + [ + -91.82, + 48.21 + ], + [ + -91.79, + 48.2 + ], + [ + -91.76, + 48.21 + ], + [ + -91.74, + 48.2 + ], + [ + -91.71, + 48.17 + ], + [ + -91.68, + 48.11 + ], + [ + -91.67, + 48.11 + ], + [ + -91.64, + 48.1 + ], + [ + -91.57, + 48.08 + ], + [ + -91.57, + 48.06 + ], + [ + -91.58, + 48.05 + ], + [ + -91.55, + 48.05 + ], + [ + -91.49, + 47.96 + ], + [ + -91.47, + 48.07 + ], + [ + -91.44, + 48.05 + ], + [ + -91.41, + 47.95 + ], + [ + -91.37, + 48.07 + ], + [ + -91.36, + 48.07 + ], + [ + -91.34, + 48.07 + ], + [ + -91.31, + 48.07 + ], + [ + -91.27, + 48.08 + ], + [ + -91.24, + 48.09 + ], + [ + -91.19, + 48.12 + ], + [ + -91.17, + 48.13 + ], + [ + -91.16, + 48.14 + ], + [ + -91.1, + 48.17 + ], + [ + -91.07, + 48.18 + ], + [ + -91.05, + 48.19 + ], + [ + -91.02, + 48.2 + ], + [ + -91.01, + 48.2 + ], + [ + -91, + 48.2 + ], + [ + -90.98, + 48.22 + ], + [ + -90.86, + 48.24 + ], + [ + -90.83, + 48.2 + ], + [ + -90.83, + 48.19 + ], + [ + -90.8, + 48.17 + ], + [ + -90.79, + 48.16 + ], + [ + -90.76, + 48.11 + ], + [ + -90.75, + 48.09 + ], + [ + -90.72, + 48.1 + ], + [ + -90.56, + 48.1 + ], + [ + -90.55, + 48.1 + ], + [ + -90.54, + 48.1 + ], + [ + -90.35, + 48.09 + ], + [ + -90.34, + 48.09 + ], + [ + -90.24, + 48.1 + ], + [ + -90.22, + 48.11 + ], + [ + -90.18, + 48.11 + ], + [ + -90.16, + 48.11 + ], + [ + -90.11, + 48.1 + ], + [ + -90.07, + 48.1 + ], + [ + -90.02, + 48.08 + ], + [ + -90, + 48.04 + ], + [ + -89.87, + 47.99 + ], + [ + -89.84, + 48 + ], + [ + -89.78, + 48.02 + ], + [ + -89.74, + 48.02 + ], + [ + -89.73, + 48.02 + ], + [ + -89.71, + 48.01 + ], + [ + -89.65, + 48 + ], + [ + -89.65, + 48.01 + ], + [ + -89.54, + 48.01 + ], + [ + -90.88, + 47.56 + ], + [ + -92.09, + 46.74 + ], + [ + -91.82, + 46.69 + ], + [ + -90.75, + 46.97 + ], + [ + -90.94, + 46.59 + ], + [ + -90.75, + 46.69 + ], + [ + -90.42, + 46.57 + ], + [ + -89.21, + 46.9 + ], + [ + -87.98, + 47.48 + ], + [ + -87.71, + 47.43 + ], + [ + -88.24, + 47.2 + ], + [ + -88.48, + 46.74 + ], + [ + -88.2, + 46.97 + ], + [ + -87.89, + 46.91 + ], + [ + -87.67, + 46.82 + ], + [ + -87.4, + 46.5 + ], + [ + -86.84, + 46.42 + ], + [ + -86.15, + 46.67 + ], + [ + -84.99, + 46.78 + ], + [ + -85.03, + 46.49 + ], + [ + -84.46, + 46.47 + ], + [ + -84.37, + 46.5 + ], + [ + -84.38, + 46.51 + ], + [ + -84.37, + 46.51 + ], + [ + -84.35, + 46.51 + ], + [ + -84.34, + 46.51 + ], + [ + -84.29, + 46.49 + ], + [ + -84.28, + 46.49 + ], + [ + -84.26, + 46.5 + ], + [ + -84.25, + 46.51 + ], + [ + -84.24, + 46.52 + ], + [ + -84.23, + 46.53 + ], + [ + -84.22, + 46.53 + ], + [ + -84.21, + 46.54 + ], + [ + -84.17, + 46.53 + ], + [ + -84.16, + 46.53 + ], + [ + -84.15, + 46.53 + ], + [ + -84.13, + 46.53 + ], + [ + -84.12, + 46.52 + ], + [ + -84.12, + 46.35 + ], + [ + -84.12, + 46.34 + ], + [ + -84.11, + 46.33 + ], + [ + -84.27, + 46.2 + ], + [ + -83.91, + 45.97 + ], + [ + -84.64, + 46.06 + ], + [ + -84.7, + 45.84 + ], + [ + -84.9, + 46.01 + ], + [ + -85.52, + 46.09 + ], + [ + -85.65, + 45.97 + ], + [ + -86.28, + 45.95 + ], + [ + -86.7, + 45.59 + ], + [ + -86.53, + 45.89 + ], + [ + -86.97, + 45.67 + ], + [ + -87, + 45.92 + ], + [ + -87.63, + 44.98 + ], + [ + -87.99, + 44.72 + ], + [ + -87.93, + 44.52 + ], + [ + -86.97, + 45.29 + ], + [ + -87.47, + 44.56 + ], + [ + -87.92, + 43.25 + ], + [ + -87.83, + 42.28 + ], + [ + -87.41, + 41.63 + ], + [ + -86.75, + 41.79 + ], + [ + -86.31, + 42.32 + ], + [ + -86.19, + 42.84 + ], + [ + -86.54, + 43.61 + ], + [ + -86.51, + 44.06 + ], + [ + -86.18, + 44.37 + ], + [ + -86.26, + 44.66 + ], + [ + -86.09, + 44.65 + ], + [ + -86.24, + 44.72 + ], + [ + -85.96, + 44.98 + ], + [ + -85.85, + 44.9 + ], + [ + -85.53, + 45.21 + ], + [ + -85.65, + 44.76 + ], + [ + -85.43, + 44.91 + ], + [ + -85.3, + 44.8 + ], + [ + -85.4, + 45.21 + ], + [ + -84.92, + 45.4 + ], + [ + -85.12, + 45.55 + ], + [ + -84.97, + 45.77 + ], + [ + -83.5, + 45.35 + ], + [ + -83.26, + 45.03 + ], + [ + -83.45, + 45.04 + ], + [ + -83.32, + 44.39 + ], + [ + -83.87, + 43.96 + ], + [ + -83.95, + 43.71 + ], + [ + -83.67, + 43.59 + ], + [ + -83.41, + 43.83 + ], + [ + -83.02, + 44.06 + ], + [ + -82.74, + 43.99 + ], + [ + -82.41, + 43.01 + ], + [ + -82.42, + 43 + ], + [ + -82.42, + 42.96 + ], + [ + -82.44, + 42.95 + ], + [ + -82.45, + 42.93 + ], + [ + -82.46, + 42.92 + ], + [ + -82.47, + 42.9 + ], + [ + -82.47, + 42.89 + ], + [ + -82.47, + 42.84 + ], + [ + -82.48, + 42.8 + ], + [ + -82.47, + 42.79 + ], + [ + -82.47, + 42.78 + ], + [ + -82.47, + 42.77 + ], + [ + -82.47, + 42.76 + ], + [ + -82.48, + 42.75 + ], + [ + -82.49, + 42.71 + ], + [ + -82.5, + 42.7 + ], + [ + -82.51, + 42.67 + ], + [ + -82.51, + 42.65 + ], + [ + -82.52, + 42.62 + ], + [ + -82.52, + 42.61 + ], + [ + -82.57, + 42.58 + ], + [ + -82.57, + 42.57 + ], + [ + -82.59, + 42.55 + ], + [ + -82.61, + 42.55 + ], + [ + -82.63, + 42.56 + ], + [ + -82.66, + 42.7 + ], + [ + -82.82, + 42.65 + ], + [ + -82.97, + 42.34 + ], + [ + -83.04, + 42.32 + ], + [ + -83.06, + 42.32 + ], + [ + -83.08, + 42.3 + ], + [ + -83.09, + 42.29 + ], + [ + -83.12, + 42.28 + ], + [ + -83.11, + 42.27 + ], + [ + -83.11, + 42.26 + ], + [ + -83.49, + 41.72 + ], + [ + -82.72, + 41.53 + ], + [ + -83.06, + 41.44 + ], + [ + -81.74, + 41.49 + ], + [ + -81.39, + 41.74 + ], + [ + -80.09, + 42.16 + ], + [ + -79.15, + 42.56 + ], + [ + -78.91, + 42.89 + ], + [ + -78.91, + 42.9 + ], + [ + -78.94, + 42.96 + ], + [ + -78.96, + 42.96 + ], + [ + -78.98, + 42.97 + ], + [ + -78.99, + 42.98 + ], + [ + -79.01, + 42.98 + ], + [ + -79.02, + 43 + ], + [ + -79.02, + 43.01 + ], + [ + -79.02, + 43.02 + ], + [ + -79.02, + 43.03 + ], + [ + -79.01, + 43.05 + ], + [ + -79, + 43.06 + ], + [ + -79.07, + 43.08 + ], + [ + -79.06, + 43.1 + ], + [ + -79.06, + 43.11 + ], + [ + -79.06, + 43.13 + ], + [ + -79.04, + 43.15 + ], + [ + -79.05, + 43.17 + ], + [ + -79.05, + 43.19 + ], + [ + -79.05, + 43.2 + ], + [ + -79.06, + 43.26 + ], + [ + -79.07, + 43.26 + ], + [ + -79.07, + 43.27 + ], + [ + -79.08, + 43.28 + ], + [ + -78.4, + 43.38 + ], + [ + -77.54, + 43.23 + ], + [ + -76.82, + 43.28 + ], + [ + -76.16, + 43.56 + ], + [ + -76.31, + 43.87 + ], + [ + -76.1, + 43.96 + ], + [ + -76.36, + 44.12 + ], + [ + -76.09, + 44.28 + ], + [ + -76.1, + 44.3 + ], + [ + -76.07, + 44.32 + ], + [ + -76.04, + 44.33 + ], + [ + -76, + 44.35 + ], + [ + -75.98, + 44.35 + ], + [ + -75.94, + 44.36 + ], + [ + -75.87, + 44.4 + ], + [ + -75.86, + 44.4 + ], + [ + -75.72, + 44.55 + ], + [ + -75.71, + 44.56 + ], + [ + -75.69, + 44.58 + ], + [ + -75.66, + 44.59 + ], + [ + -75.64, + 44.6 + ], + [ + -75.62, + 44.62 + ], + [ + -75.59, + 44.64 + ], + [ + -75.57, + 44.66 + ], + [ + -75.51, + 44.7 + ], + [ + -75.5, + 44.71 + ], + [ + -75.48, + 44.72 + ], + [ + -75.45, + 44.74 + ], + [ + -75.37, + 44.79 + ], + [ + -75.34, + 44.81 + ], + [ + -75.31, + 44.82 + ], + [ + -75.3, + 44.83 + ], + [ + -75.3, + 44.84 + ], + [ + -75.26, + 44.86 + ], + [ + -75.23, + 44.87 + ], + [ + -75.19, + 44.88 + ], + [ + -75.1, + 44.92 + ], + [ + -75.09, + 44.93 + ], + [ + -74.84, + 45.01 + ], + [ + -74.8, + 45.01 + ], + [ + -74.79, + 45.01 + ], + [ + -74.79, + 45 + ], + [ + -74.76, + 45.01 + ], + [ + -74.76, + 45 + ], + [ + -74.74, + 44.99 + ], + [ + -74.73, + 44.99 + ], + [ + -74.67, + 45.01 + ], + [ + -74.64, + 45 + ], + [ + -74.63, + 45 + ], + [ + -73.52, + 45.01 + ], + [ + -73.51, + 45.01 + ], + [ + -73.35, + 45.01 + ], + [ + -73.26, + 44.84 + ], + [ + -73.39, + 44.87 + ], + [ + -73.46, + 44.65 + ], + [ + -73.38, + 44.21 + ], + [ + -73.12, + 44.78 + ], + [ + -73.34, + 45.01 + ], + [ + -73.2, + 45.01 + ], + [ + -73.09, + 45.02 + ], + [ + -72.59, + 45.01 + ], + [ + -72.58, + 45.01 + ], + [ + -72.25, + 45 + ], + [ + -72.2, + 44.9 + ], + [ + -72.21, + 45.01 + ], + [ + -71.56, + 45.01 + ], + [ + -71.5, + 45.02 + ], + [ + -71.5, + 45.03 + ], + [ + -71.44, + 45.24 + ], + [ + -71.19, + 45.25 + ], + [ + -71.01, + 45.35 + ], + [ + -70.88, + 45.23 + ], + [ + -70.8, + 45.43 + ], + [ + -70.62, + 45.4 + ], + [ + -70.62, + 45.61 + ], + [ + -70.27, + 45.88 + ], + [ + -70.27, + 45.89 + ], + [ + -70.26, + 45.89 + ], + [ + -70.24, + 45.95 + ], + [ + -70.25, + 45.95 + ], + [ + -70.3, + 46 + ], + [ + -70.31, + 46.01 + ], + [ + -70.27, + 46.1 + ], + [ + -70.26, + 46.1 + ], + [ + -70.1, + 46.41 + ], + [ + -70.09, + 46.41 + ], + [ + -70.05, + 46.44 + ], + [ + -70.04, + 46.51 + ], + [ + -70.04, + 46.52 + ], + [ + -70.03, + 46.52 + ], + [ + -70.03, + 46.53 + ], + [ + -70.03, + 46.55 + ], + [ + -70.03, + 46.56 + ], + [ + -70.02, + 46.57 + ], + [ + -70.02, + 46.58 + ], + [ + -70.02, + 46.6 + ], + [ + -70.01, + 46.65 + ], + [ + -69.53, + 47.16 + ], + [ + -69.53, + 47.17 + ], + [ + -69.23, + 47.46 + ], + [ + -69.22, + 47.46 + ], + [ + -69.18, + 47.46 + ], + [ + -69.17, + 47.45 + ], + [ + -69.06, + 47.43 + ], + [ + -69.04, + 47.4 + ], + [ + -69.04, + 47.41 + ], + [ + -69.04, + 47.4 + ], + [ + -69.04, + 47.38 + ], + [ + -69.05, + 47.31 + ], + [ + -69.05, + 47.28 + ], + [ + -69, + 47.23 + ], + [ + -68.99, + 47.23 + ], + [ + -68.95, + 47.2 + ], + [ + -68.91, + 47.19 + ], + [ + -68.91, + 47.18 + ], + [ + -68.9, + 47.18 + ], + [ + -68.89, + 47.18 + ], + [ + -68.86, + 47.19 + ], + [ + -68.85, + 47.19 + ], + [ + -68.82, + 47.21 + ], + [ + -68.81, + 47.22 + ], + [ + -68.73, + 47.24 + ], + [ + -68.69, + 47.24 + ], + [ + -68.68, + 47.24 + ], + [ + -68.64, + 47.24 + ], + [ + -68.59, + 47.27 + ], + [ + -68.59, + 47.28 + ], + [ + -68.55, + 47.28 + ], + [ + -68.54, + 47.28 + ], + [ + -68.51, + 47.3 + ], + [ + -68.46, + 47.29 + ], + [ + -68.45, + 47.28 + ], + [ + -68.39, + 47.29 + ], + [ + -68.38, + 47.29 + ], + [ + -68.38, + 47.31 + ], + [ + -68.38, + 47.32 + ], + [ + -68.38, + 47.34 + ], + [ + -68.34, + 47.36 + ], + [ + -68.33, + 47.36 + ], + [ + -68.31, + 47.36 + ], + [ + -68.3, + 47.36 + ], + [ + -68.28, + 47.36 + ], + [ + -68.26, + 47.35 + ], + [ + -68.23, + 47.35 + ], + [ + -68.21, + 47.34 + ], + [ + -68.19, + 47.33 + ], + [ + -68.16, + 47.33 + ], + [ + -68.14, + 47.3 + ], + [ + -68.08, + 47.26 + ], + [ + -68.05, + 47.25 + ], + [ + -67.99, + 47.21 + ], + [ + -67.98, + 47.21 + ], + [ + -67.9, + 47.13 + ], + [ + -67.89, + 47.13 + ], + [ + -67.86, + 47.1 + ], + [ + -67.85, + 47.09 + ], + [ + -67.77, + 45.83 + ], + [ + -67.76, + 45.83 + ], + [ + -67.79, + 45.81 + ], + [ + -67.69, + 45.66 + ], + [ + -67.67, + 45.63 + ], + [ + -67.65, + 45.61 + ], + [ + -67.64, + 45.61 + ], + [ + -67.63, + 45.62 + ], + [ + -67.6, + 45.61 + ], + [ + -67.58, + 45.6 + ], + [ + -67.53, + 45.59 + ], + [ + -67.5, + 45.59 + ], + [ + -67.48, + 45.6 + ], + [ + -67.47, + 45.6 + ], + [ + -67.45, + 45.6 + ], + [ + -67.43, + 45.56 + ], + [ + -67.42, + 45.56 + ], + [ + -67.49, + 45.29 + ], + [ + -67.52, + 45.27 + ], + [ + -67.48, + 45.27 + ], + [ + -67.42, + 45.19 + ], + [ + -67.41, + 45.17 + ], + [ + -67.28, + 45.19 + ], + [ + -67.04, + 44.96 + ], + [ + -67.23, + 44.93 + ], + [ + -67.17, + 44.79 + ], + [ + -67.06, + 44.91 + ], + [ + -66.95, + 44.82 + ], + [ + -67.19, + 44.64 + ], + [ + -67.39, + 44.73 + ], + [ + -67.41, + 44.59 + ], + [ + -67.57, + 44.66 + ], + [ + -67.71, + 44.5 + ], + [ + -67.72, + 44.65 + ], + [ + -67.78, + 44.52 + ], + [ + -67.93, + 44.59 + ], + [ + -68.06, + 44.33 + ], + [ + -68.19, + 44.57 + ], + [ + -68.42, + 44.4 + ], + [ + -68.42, + 44.54 + ], + [ + -68.53, + 44.23 + ], + [ + -68.83, + 44.31 + ], + [ + -68.66, + 44.37 + ], + [ + -68.73, + 44.47 + ], + [ + -68.82, + 44.38 + ], + [ + -68.8, + 44.54 + ], + [ + -69.04, + 44.45 + ], + [ + -68.95, + 44.32 + ], + [ + -69.21, + 43.93 + ], + [ + -69.17, + 44.08 + ], + [ + -69.31, + 43.95 + ], + [ + -69.38, + 44.09 + ], + [ + -69.51, + 43.83 + ], + [ + -69.52, + 44.07 + ], + [ + -69.6, + 43.81 + ], + [ + -69.65, + 44.02 + ], + [ + -69.76, + 43.89 + ], + [ + -69.83, + 43.98 + ], + [ + -69.83, + 43.7 + ], + [ + -69.87, + 43.92 + ], + [ + -70.02, + 43.73 + ], + [ + -69.95, + 43.87 + ], + [ + -70.27, + 43.72 + ], + [ + -70.2, + 43.57 + ], + [ + -70.57, + 43.33 + ], + [ + -70.82, + 42.8 + ], + [ + -70.67, + 42.61 + ], + [ + -70.9, + 42.55 + ], + [ + -71.04, + 42.28 + ], + [ + -70.77, + 42.25 + ], + [ + -70.6, + 42 + ], + [ + -70.73, + 41.99 + ], + [ + -70.35, + 41.7 + ], + [ + -70.01, + 41.8 + ], + [ + -70.07, + 42.04 + ], + [ + -69.95, + 41.64 + ], + [ + -70.67, + 41.52 + ], + [ + -70.65, + 41.77 + ], + [ + -71.19, + 41.46 + ], + [ + -71.15, + 41.72 + ], + [ + -71.3, + 41.65 + ], + [ + -71.4, + 41.82 + ], + [ + -71.48, + 41.36 + ], + [ + -72.07, + 41.32 + ], + [ + -72.08, + 41.52 + ], + [ + -72.09, + 41.31 + ], + [ + -72.37, + 41.34 + ], + [ + -73.37, + 41.15 + ], + [ + -74.01, + 40.7 + ], + [ + -73.91, + 40.88 + ], + [ + -73.87, + 41.08 + ], + [ + -73.98, + 41.24 + ], + [ + -73.93, + 40.91 + ], + [ + -74.07, + 40.66 + ], + [ + -74.09, + 40.81 + ], + [ + -74.31, + 40.51 + ], + [ + -74.21, + 40.44 + ], + [ + -74.14, + 40.46 + ], + [ + -73.98, + 40.4 + ], + [ + -74.1, + 40.32 + ], + [ + -73.99, + 40.31 + ], + [ + -73.98, + 40.41 + ], + [ + -74.02, + 40.48 + ], + [ + -73.98, + 40.45 + ], + [ + -73.97, + 40.33 + ], + [ + -74.03, + 40.12 + ], + [ + -74.1, + 40.11 + ], + [ + -74.03, + 40.09 + ], + [ + -74.09, + 39.79 + ], + [ + -74.09, + 40.08 + ], + [ + -74.19, + 39.68 + ], + [ + -74.34, + 39.54 + ], + [ + -74.65, + 39.63 + ], + [ + -74.38, + 39.48 + ], + [ + -74.69, + 39.33 + ], + [ + -74.91, + 38.95 + ], + [ + -74.8, + 39.19 + ], + [ + -75.03, + 39.19 + ], + [ + -75, + 39.36 + ], + [ + -75.14, + 39.18 + ], + [ + -75.36, + 39.35 + ], + [ + -75.23, + 39.42 + ], + [ + -75.54, + 39.46 + ], + [ + -75.46, + 39.76 + ], + [ + -75.21, + 39.86 + ], + [ + -75.47, + 39.79 + ], + [ + -75.62, + 39.58 + ], + [ + -75.28, + 38.86 + ], + [ + -75.09, + 38.8 + ], + [ + -75.1, + 38.62 + ], + [ + -75.23, + 38.58 + ], + [ + -75.08, + 38.58 + ], + [ + -75.07, + 38.68 + ], + [ + -75.05, + 38.5 + ], + [ + -75.1, + 38.48 + ], + [ + -75.15, + 38.41 + ], + [ + -75.97, + 37.12 + ], + [ + -75.94, + 37.57 + ], + [ + -75.64, + 37.96 + ], + [ + -75.86, + 37.94 + ], + [ + -75.85, + 38.36 + ], + [ + -75.98, + 38.25 + ], + [ + -75.98, + 38.4 + ], + [ + -76.05, + 38.22 + ], + [ + -76.33, + 38.48 + ], + [ + -76.19, + 38.51 + ], + [ + -76.29, + 38.63 + ], + [ + -76, + 38.58 + ], + [ + -76.33, + 38.77 + ], + [ + -76.15, + 38.77 + ], + [ + -76.19, + 39.32 + ], + [ + -75.93, + 39.37 + ], + [ + -75.94, + 39.6 + ], + [ + -76.11, + 39.62 + ], + [ + -76.1, + 39.44 + ], + [ + -76.38, + 39.32 + ], + [ + -76.5, + 39.23 + ], + [ + -76.49, + 39.23 + ], + [ + -76.5, + 39.23 + ], + [ + -76.6, + 39.29 + ], + [ + -76.55, + 39.2 + ], + [ + -76.49, + 38.98 + ], + [ + -76.46, + 38.93 + ], + [ + -76.57, + 38.77 + ], + [ + -76.51, + 38.5 + ], + [ + -76.38, + 38.39 + ], + [ + -76.42, + 38.31 + ], + [ + -76.7, + 38.53 + ], + [ + -76.53, + 38.34 + ], + [ + -76.38, + 38.29 + ], + [ + -76.35, + 38.05 + ], + [ + -76.93, + 38.42 + ], + [ + -76.92, + 38.29 + ], + [ + -77.02, + 38.51 + ], + [ + -77.25, + 38.38 + ], + [ + -77.1, + 38.69 + ], + [ + -77.12, + 38.7 + ], + [ + -77.32, + 38.36 + ], + [ + -77.04, + 38.4 + ], + [ + -77.02, + 38.2 + ], + [ + -76.7, + 38.06 + ], + [ + -76.61, + 38.15 + ], + [ + -76.49, + 37.93 + ], + [ + -76.24, + 37.89 + ], + [ + -76.44, + 37.88 + ], + [ + -76.29, + 37.78 + ], + [ + -76.38, + 37.61 + ], + [ + -76.87, + 37.93 + ], + [ + -76.54, + 37.61 + ], + [ + -76.3, + 37.56 + ], + [ + -76.41, + 37.53 + ], + [ + -76.28, + 37.31 + ], + [ + -76.42, + 37.47 + ], + [ + -76.51, + 37.25 + ], + [ + -76.67, + 37.46 + ], + [ + -76.83, + 37.54 + ], + [ + -76.3, + 37 + ], + [ + -76.87, + 37.24 + ], + [ + -76.9, + 37.41 + ], + [ + -76.92, + 37.23 + ], + [ + -76.99, + 37.3 + ], + [ + -77.06, + 37.3 + ], + [ + -77.07, + 37.27 + ], + [ + -77.07, + 37.33 + ], + [ + -77.31, + 37.37 + ], + [ + -77.07, + 37.24 + ], + [ + -77.01, + 37.3 + ], + [ + -76.98, + 37.24 + ], + [ + -77.02, + 37.21 + ], + [ + -76.68, + 37.16 + ], + [ + -76.49, + 36.96 + ], + [ + -76.56, + 36.74 + ], + [ + -76.36, + 36.92 + ], + [ + -76.43, + 36.79 + ], + [ + -76.32, + 36.86 + ], + [ + -76.24, + 36.72 + ], + [ + -76.33, + 36.96 + ], + [ + -76.08, + 36.82 + ], + [ + -75.99, + 36.92 + ], + [ + -75.54, + 35.78 + ], + [ + -75.94, + 36.73 + ], + [ + -75.9, + 36.49 + ], + [ + -76.07, + 36.6 + ], + [ + -76.07, + 36.59 + ], + [ + -75.79, + 36.07 + ], + [ + -76.2, + 36.34 + ], + [ + -76.07, + 36.14 + ], + [ + -76.48, + 36.21 + ], + [ + -76.31, + 36.09 + ], + [ + -76.58, + 36.01 + ], + [ + -76.71, + 36.33 + ], + [ + -76.74, + 35.94 + ], + [ + -76.06, + 35.99 + ], + [ + -76.04, + 35.65 + ], + [ + -75.86, + 35.98 + ], + [ + -75.74, + 35.63 + ], + [ + -75.89, + 35.65 + ], + [ + -76.16, + 35.33 + ], + [ + -76.54, + 35.46 + ], + [ + -76.46, + 35.58 + ], + [ + -76.64, + 35.54 + ], + [ + -76.58, + 35.39 + ], + [ + -76.71, + 35.43 + ], + [ + -77.06, + 35.54 + ], + [ + -76.47, + 35.28 + ], + [ + -76.74, + 35.14 + ], + [ + -76.6, + 35.07 + ], + [ + -76.82, + 34.97 + ], + [ + -77.06, + 35.1 + ], + [ + -76.75, + 34.91 + ], + [ + -76.47, + 35.08 + ], + [ + -76.44, + 34.9 + ], + [ + -76.34, + 35.03 + ], + [ + -76.28, + 34.94 + ], + [ + -76.52, + 34.72 + ], + [ + -76.63, + 34.84 + ], + [ + -76.62, + 34.71 + ], + [ + -76.68, + 34.81 + ], + [ + -76.99, + 34.71 + ], + [ + -77.16, + 34.77 + ], + [ + -77.32, + 34.55 + ], + [ + -77.44, + 34.74 + ], + [ + -77.37, + 34.52 + ], + [ + -77.76, + 34.31 + ], + [ + -77.92, + 33.96 + ], + [ + -77.94, + 34.14 + ], + [ + -78.02, + 33.89 + ], + [ + -78.62, + 33.85 + ], + [ + -79.1, + 33.49 + ], + [ + -79.18, + 33.21 + ], + [ + -79.3, + 33.36 + ], + [ + -79.19, + 33.17 + ], + [ + -79.82, + 32.76 + ], + [ + -79.94, + 32.86 + ], + [ + -80, + 32.6 + ], + [ + -80.68, + 32.53 + ], + [ + -80.48, + 32.47 + ], + [ + -80.55, + 32.35 + ], + [ + -80.43, + 32.4 + ], + [ + -80.64, + 32.27 + ], + [ + -80.86, + 32.36 + ], + [ + -80.67, + 32.22 + ], + [ + -80.82, + 32.11 + ], + [ + -80.8, + 32.25 + ], + [ + -80.99, + 31.93 + ], + [ + -81.1, + 31.91 + ], + [ + -81.12, + 31.84 + ], + [ + -81.13, + 31.72 + ], + [ + -81.28, + 31.8 + ], + [ + -81.13, + 31.63 + ], + [ + -81.3, + 31.56 + ], + [ + -81.18, + 31.52 + ], + [ + -81.41, + 31.17 + ], + [ + -81.65, + 31.12 + ], + [ + -81.5, + 31.03 + ], + [ + -81.68, + 30.96 + ], + [ + -81.5, + 30.94 + ], + [ + -81.65, + 30.84 + ], + [ + -81.48, + 30.59 + ], + [ + -81.66, + 30.56 + ], + [ + -81.46, + 30.4 + ], + [ + -81.69, + 30.41 + ], + [ + -81.65, + 29.67 + ], + [ + -81.52, + 29.77 + ], + [ + -81.67, + 30.31 + ], + [ + -81.38, + 30.4 + ], + [ + -81.34, + 29.9 + ], + [ + -80.83, + 28.95 + ], + [ + -80.79, + 28.77 + ], + [ + -80.86, + 28.77 + ], + [ + -80.73, + 28.37 + ], + [ + -80.8, + 28.65 + ], + [ + -80.73, + 28.73 + ], + [ + -80.6, + 28.61 + ], + [ + -80.72, + 28.3 + ], + [ + -80.03, + 26.8 + ], + [ + -80.13, + 25.91 + ], + [ + -80.42, + 25.21 + ], + [ + -81.14, + 25.18 + ], + [ + -81.11, + 25.34 + ], + [ + -80.85, + 25.24 + ], + [ + -81.04, + 25.37 + ], + [ + -80.92, + 25.44 + ], + [ + -81.15, + 25.39 + ], + [ + -81.06, + 25.44 + ], + [ + -81.2, + 25.53 + ], + [ + -81, + 25.57 + ], + [ + -81.15, + 25.65 + ], + [ + -81.23, + 25.56 + ], + [ + -81.29, + 25.73 + ], + [ + -81.18, + 25.73 + ], + [ + -81.38, + 25.77 + ], + [ + -81.29, + 25.86 + ], + [ + -81.78, + 26.05 + ], + [ + -81.87, + 26.52 + ], + [ + -82.01, + 26.49 + ], + [ + -81.87, + 26.69 + ], + [ + -82.06, + 26.55 + ], + [ + -82.1, + 26.91 + ], + [ + -81.97, + 26.98 + ], + [ + -82.13, + 26.98 + ], + [ + -82.3, + 27.06 + ], + [ + -82.17, + 26.78 + ], + [ + -82.69, + 27.47 + ], + [ + -82.42, + 27.52 + ], + [ + -82.62, + 27.59 + ], + [ + -82.39, + 27.95 + ], + [ + -82.53, + 27.83 + ], + [ + -82.7, + 28.04 + ], + [ + -82.58, + 27.88 + ], + [ + -82.68, + 27.69 + ], + [ + -82.85, + 27.87 + ], + [ + -82.61, + 28.71 + ], + [ + -82.73, + 29 + ], + [ + -83.98, + 30.12 + ], + [ + -84.35, + 30.08 + ], + [ + -84.35, + 29.9 + ], + [ + -85.35, + 29.67 + ], + [ + -85.36, + 29.9 + ], + [ + -85.73, + 30.12 + ], + [ + -85.39, + 30.05 + ], + [ + -85.73, + 30.18 + ], + [ + -85.56, + 30.35 + ], + [ + -85.87, + 30.28 + ], + [ + -85.73, + 30.12 + ], + [ + -86.52, + 30.4 + ], + [ + -86.12, + 30.37 + ], + [ + -86.19, + 30.51 + ], + [ + -86.42, + 30.45 + ], + [ + -86.5, + 30.52 + ], + [ + -86.6, + 30.4 + ], + [ + -86.78, + 30.41 + ], + [ + -86.95, + 30.4 + ], + [ + -87.18, + 30.34 + ], + [ + -87.2, + 30.36 + ], + [ + -86.94, + 30.45 + ], + [ + -86.86, + 30.44 + ], + [ + -87.03, + 30.63 + ], + [ + -87.27, + 30.34 + ], + [ + -87.5, + 30.31 + ], + [ + -87.39, + 30.46 + ], + [ + -87.74, + 30.28 + ], + [ + -87.92, + 30.69 + ], + [ + -87.93, + 30.69 + ], + [ + -88.19, + 30.32 + ], + [ + -88.95, + 30.47 + ], + [ + -89.04, + 30.43 + ], + [ + -88.86, + 30.39 + ], + [ + -89.33, + 30.38 + ], + [ + -89.59, + 30.15 + ], + [ + -90.22, + 30.39 + ], + [ + -90.43, + 30.18 + ], + [ + -90.35, + 30 + ], + [ + -89.65, + 30.14 + ], + [ + -89.88, + 30.03 + ], + [ + -89.74, + 29.82 + ], + [ + -89.43, + 30.05 + ], + [ + -89.35, + 29.78 + ], + [ + -89.52, + 29.85 + ], + [ + -89.62, + 29.66 + ], + [ + -89.69, + 29.76 + ], + [ + -89.82, + 29.56 + ], + [ + -90.02, + 29.65 + ], + [ + -90.04, + 29.47 + ], + [ + -90.18, + 29.59 + ], + [ + -90.24, + 29.46 + ], + [ + -90.18, + 29.28 + ], + [ + -90.2, + 29.38 + ], + [ + -90.09, + 29.44 + ], + [ + -90.18, + 29.34 + ], + [ + -90.13, + 29.25 + ], + [ + -90.22, + 29.27 + ], + [ + -90.25, + 29.17 + ], + [ + -90.09, + 29.17 + ], + [ + -90.23, + 29.08 + ], + [ + -90.35, + 29.49 + ], + [ + -90.56, + 29.46 + ], + [ + -90.62, + 29.24 + ], + [ + -90.7, + 29.46 + ], + [ + -90.68, + 29.25 + ], + [ + -90.75, + 29.34 + ], + [ + -90.83, + 29.24 + ], + [ + -90.95, + 29.33 + ], + [ + -90.78, + 29.43 + ], + [ + -91.12, + 29.29 + ], + [ + -91.23, + 29.62 + ], + [ + -91.27, + 29.48 + ], + [ + -91.54, + 29.52 + ], + [ + -91.61, + 29.76 + ], + [ + -91.87, + 29.72 + ], + [ + -91.78, + 29.83 + ], + [ + -92.26, + 29.76 + ], + [ + -92.01, + 29.61 + ], + [ + -92.32, + 29.53 + ], + [ + -93.05, + 29.75 + ], + [ + -93.34, + 29.76 + ], + [ + -93.31, + 30.15 + ], + [ + -93.44, + 29.86 + ], + [ + -93.35, + 29.76 + ], + [ + -94.5, + 29.51 + ], + [ + -94.78, + 29.54 + ], + [ + -94.75, + 29.9 + ], + [ + -94.87, + 29.67 + ], + [ + -95.02, + 29.72 + ], + [ + -94.98, + 29.42 + ], + [ + -94.81, + 29.36 + ], + [ + -95.08, + 29.19 + ], + [ + -95.22, + 29.21 + ], + [ + -95.26, + 28.99 + ], + [ + -95.12, + 29.07 + ], + [ + -95.38, + 28.87 + ], + [ + -95.74, + 28.74 + ], + [ + -95.8, + 28.82 + ], + [ + -95.96, + 28.63 + ], + [ + -95.66, + 28.75 + ], + [ + -96.31, + 28.42 + ], + [ + -95.98, + 28.66 + ], + [ + -96.21, + 28.61 + ], + [ + -96.17, + 28.76 + ], + [ + -96.36, + 28.63 + ], + [ + -96.44, + 28.77 + ], + [ + -96.49, + 28.57 + ], + [ + -96.66, + 28.72 + ], + [ + -96.4, + 28.44 + ], + [ + -96.69, + 28.33 + ], + [ + -96.81, + 28.5 + ], + [ + -96.78, + 28.24 + ], + [ + -96.94, + 28.12 + ], + [ + -97.03, + 28.18 + ], + [ + -96.9, + 28.24 + ], + [ + -97.16, + 28.18 + ], + [ + -97.21, + 27.98 + ], + [ + -97.02, + 28.07 + ], + [ + -97.16, + 27.9 + ], + [ + -96.39, + 28.37 + ], + [ + -97.06, + 27.88 + ], + [ + -97.37, + 26.91 + ], + [ + -97.37, + 27.37 + ], + [ + -97.08, + 27.86 + ], + [ + -97.23, + 27.82 + ], + [ + -97.53, + 27.88 + ], + [ + -97.25, + 27.68 + ], + [ + -97.4, + 27.33 + ], + [ + -97.71, + 27.25 + ], + [ + -97.44, + 27.25 + ], + [ + -97.57, + 26.86 + ], + [ + -97.28, + 26.16 + ], + [ + -97.38, + 26 + ], + [ + -97.25, + 26.11 + ], + [ + -97.15, + 25.96 + ], + [ + -97.16, + 25.95 + ], + [ + -97.16, + 25.96 + ], + [ + -97.17, + 25.96 + ], + [ + -97.19, + 25.96 + ], + [ + -97.19, + 25.95 + ], + [ + -97.2, + 25.96 + ], + [ + -97.21, + 25.96 + ], + [ + -97.22, + 25.96 + ], + [ + -97.23, + 25.96 + ], + [ + -97.26, + 25.95 + ], + [ + -97.28, + 25.94 + ], + [ + -97.29, + 25.93 + ], + [ + -97.3, + 25.93 + ], + [ + -97.36, + 25.92 + ], + [ + -97.37, + 25.88 + ], + [ + -97.36, + 25.88 + ], + [ + -97.38, + 25.84 + ], + [ + -97.4, + 25.84 + ], + [ + -97.45, + 25.86 + ], + [ + -97.49, + 25.88 + ], + [ + -97.5, + 25.88 + ], + [ + -97.5, + 25.89 + ], + [ + -97.54, + 25.92 + ], + [ + -97.58, + 25.94 + ], + [ + -97.6, + 25.96 + ], + [ + -97.63, + 26 + ], + [ + -97.62, + 25.99 + ], + [ + -97.62, + 26 + ], + [ + -97.63, + 26 + ], + [ + -97.65, + 26.02 + ], + [ + -97.69, + 26.02 + ], + [ + -97.8, + 26.05 + ], + [ + -97.8, + 26.06 + ], + [ + -97.82, + 26.06 + ], + [ + -97.83, + 26.06 + ], + [ + -97.87, + 26.06 + ], + [ + -97.91, + 26.06 + ], + [ + -97.93, + 26.06 + ], + [ + -97.93, + 26.05 + ], + [ + -97.97, + 26.06 + ], + [ + -97.98, + 26.06 + ], + [ + -97.99, + 26.06 + ], + [ + -98.02, + 26.06 + ], + [ + -98.04, + 26.04 + ], + [ + -98.08, + 26.06 + ], + [ + -98.09, + 26.06 + ], + [ + -98.15, + 26.06 + ], + [ + -98.17, + 26.07 + ], + [ + -98.18, + 26.07 + ], + [ + -98.22, + 26.07 + ], + [ + -98.22, + 26.08 + ], + [ + -98.24, + 26.08 + ], + [ + -98.26, + 26.08 + ], + [ + -98.27, + 26.12 + ], + [ + -98.3, + 26.12 + ], + [ + -98.33, + 26.14 + ], + [ + -98.35, + 26.16 + ], + [ + -98.36, + 26.16 + ], + [ + -98.37, + 26.16 + ], + [ + -98.38, + 26.16 + ], + [ + -98.44, + 26.2 + ], + [ + -98.45, + 26.22 + ], + [ + -98.46, + 26.22 + ], + [ + -98.48, + 26.22 + ], + [ + -98.49, + 26.21 + ], + [ + -98.51, + 26.21 + ], + [ + -98.53, + 26.23 + ], + [ + -98.52, + 26.23 + ], + [ + -98.53, + 26.23 + ], + [ + -98.56, + 26.23 + ], + [ + -98.56, + 26.24 + ], + [ + -98.61, + 26.25 + ], + [ + -98.63, + 26.25 + ], + [ + -98.65, + 26.24 + ], + [ + -98.66, + 26.24 + ], + [ + -98.68, + 26.25 + ], + [ + -98.68, + 26.26 + ], + [ + -98.7, + 26.28 + ], + [ + -98.74, + 26.3 + ], + [ + -98.75, + 26.29 + ], + [ + -98.79, + 26.33 + ], + [ + -98.79, + 26.34 + ], + [ + -98.81, + 26.37 + ], + [ + -98.89, + 26.35 + ], + [ + -98.9, + 26.36 + ], + [ + -98.92, + 26.39 + ], + [ + -98.98, + 26.39 + ], + [ + -98.99, + 26.39 + ], + [ + -99.01, + 26.39 + ], + [ + -99.03, + 26.41 + ], + [ + -99.07, + 26.4 + ], + [ + -99.09, + 26.41 + ], + [ + -99.1, + 26.41 + ], + [ + -99.1, + 26.45 + ], + [ + -99.1, + 26.49 + ], + [ + -99.14, + 26.53 + ], + [ + -99.16, + 26.54 + ], + [ + -99.17, + 26.55 + ], + [ + -99.26, + 26.81 + ], + [ + -99.26, + 26.82 + ], + [ + -99.29, + 26.86 + ], + [ + -99.31, + 26.86 + ], + [ + -99.33, + 26.92 + ], + [ + -99.36, + 26.93 + ], + [ + -99.39, + 26.98 + ], + [ + -99.39, + 26.99 + ], + [ + -99.4, + 27 + ], + [ + -99.41, + 27 + ], + [ + -99.44, + 27.02 + ], + [ + -99.45, + 27.02 + ], + [ + -99.44, + 27.04 + ], + [ + -99.45, + 27.05 + ], + [ + -99.45, + 27.07 + ], + [ + -99.43, + 27.14 + ], + [ + -99.43, + 27.18 + ], + [ + -99.44, + 27.25 + ], + [ + -99.45, + 27.25 + ], + [ + -99.49, + 27.29 + ], + [ + -99.49, + 27.3 + ], + [ + -99.54, + 27.31 + ], + [ + -99.54, + 27.32 + ], + [ + -99.51, + 27.35 + ], + [ + -99.49, + 27.39 + ], + [ + -99.49, + 27.41 + ], + [ + -99.5, + 27.45 + ], + [ + -99.49, + 27.45 + ], + [ + -99.51, + 27.57 + ], + [ + -99.53, + 27.59 + ], + [ + -99.54, + 27.61 + ], + [ + -99.58, + 27.6 + ], + [ + -99.58, + 27.61 + ], + [ + -99.6, + 27.64 + ], + [ + -99.62, + 27.64 + ], + [ + -99.63, + 27.64 + ], + [ + -99.65, + 27.63 + ], + [ + -99.67, + 27.66 + ], + [ + -99.69, + 27.66 + ], + [ + -99.69, + 27.67 + ], + [ + -99.76, + 27.72 + ], + [ + -99.8, + 27.74 + ], + [ + -99.8, + 27.75 + ], + [ + -100.22, + 28.23 + ], + [ + -100.26, + 28.24 + ], + [ + -100.26, + 28.25 + ], + [ + -100.29, + 28.3 + ], + [ + -100.35, + 28.46 + ], + [ + -100.35, + 28.48 + ], + [ + -100.35, + 28.5 + ], + [ + -100.37, + 28.51 + ], + [ + -100.41, + 28.56 + ], + [ + -100.41, + 28.59 + ], + [ + -100.42, + 28.59 + ], + [ + -100.48, + 28.65 + ], + [ + -100.5, + 28.67 + ], + [ + -100.5, + 28.68 + ], + [ + -100.51, + 28.73 + ], + [ + -100.53, + 28.77 + ], + [ + -100.55, + 28.83 + ], + [ + -100.57, + 28.83 + ], + [ + -100.59, + 28.86 + ], + [ + -100.59, + 28.87 + ], + [ + -100.59, + 28.88 + ], + [ + -100.6, + 28.9 + ], + [ + -100.61, + 28.9 + ], + [ + -100.64, + 28.92 + ], + [ + -100.63, + 28.92 + ], + [ + -100.66, + 29.02 + ], + [ + -100.66, + 29.06 + ], + [ + -100.66, + 29.08 + ], + [ + -100.7, + 29.12 + ], + [ + -100.74, + 29.15 + ], + [ + -100.77, + 29.19 + ], + [ + -100.78, + 29.23 + ], + [ + -100.79, + 29.23 + ], + [ + -100.88, + 29.29 + ], + [ + -100.9, + 29.31 + ], + [ + -100.92, + 29.33 + ], + [ + -100.94, + 29.34 + ], + [ + -100.95, + 29.35 + ], + [ + -100.99, + 29.36 + ], + [ + -101.03, + 29.4 + ], + [ + -101.05, + 29.44 + ], + [ + -101.06, + 29.44 + ], + [ + -101.06, + 29.45 + ], + [ + -101.17, + 29.5 + ], + [ + -101.19, + 29.52 + ], + [ + -101.25, + 29.6 + ], + [ + -101.25, + 29.61 + ], + [ + -101.25, + 29.62 + ], + [ + -101.28, + 29.62 + ], + [ + -101.28, + 29.61 + ], + [ + -101.28, + 29.59 + ], + [ + -101.31, + 29.58 + ], + [ + -101.33, + 29.66 + ], + [ + -101.34, + 29.66 + ], + [ + -101.37, + 29.68 + ], + [ + -101.37, + 29.7 + ], + [ + -101.42, + 29.77 + ], + [ + -101.43, + 29.76 + ], + [ + -101.51, + 29.76 + ], + [ + -101.51, + 29.77 + ], + [ + -101.52, + 29.76 + ], + [ + -101.54, + 29.76 + ], + [ + -101.55, + 29.8 + ], + [ + -101.56, + 29.8 + ], + [ + -102.32, + 29.88 + ], + [ + -102.67, + 29.74 + ], + [ + -102.87, + 29.22 + ], + [ + -103.29, + 28.98 + ], + [ + -104.51, + 29.63 + ], + [ + -104.92, + 30.6 + ], + [ + -105.91, + 31.31 + ], + [ + -106, + 31.39 + ], + [ + -106.53, + 31.78 + ], + [ + -108.21, + 31.78 + ], + [ + -108.21, + 31.33 + ], + [ + -111.07, + 31.33 + ], + [ + -113.42, + 32.07 + ], + [ + -113.44, + 32.07 + ], + [ + -114.38, + 32.36 + ], + [ + -114.4, + 32.37 + ], + [ + -114.78, + 32.49 + ], + [ + -114.72, + 32.71 + ], + [ + -114.76, + 32.72 + ], + [ + -114.78, + 32.71 + ], + [ + -114.79, + 32.71 + ], + [ + -115.38, + 32.67 + ], + [ + -116.62, + 32.58 + ], + [ + -116.63, + 32.58 + ], + [ + -117.12, + 32.53 + ], + [ + -117.27, + 33.09 + ], + [ + -117.86, + 33.63 + ], + [ + -118.41, + 33.74 + ], + [ + -118.55, + 34.04 + ], + [ + -118.81, + 34 + ], + [ + -119.56, + 34.41 + ], + [ + -119.84, + 34.42 + ], + [ + -120.64, + 34.56 + ], + [ + -120.64, + 35.14 + ], + [ + -121.9, + 36.31 + ], + [ + -121.98, + 36.58 + ], + [ + -121.76, + 36.81 + ], + [ + -122.34, + 37.12 + ], + [ + -122.52, + 37.52 + ], + [ + -122.41, + 37.81 + ], + [ + -122.36, + 37.59 + ], + [ + -121.93, + 37.44 + ], + [ + -122.3, + 37.86 + ], + [ + -122.37, + 38.01 + ], + [ + -121.7, + 38.01 + ], + [ + -121.68, + 38.12 + ], + [ + -122.14, + 38.04 + ], + [ + -122.37, + 38.2 + ], + [ + -122.5, + 37.96 + ], + [ + -122.53, + 37.82 + ], + [ + -122.93, + 38.09 + ], + [ + -123.02, + 37.99 + ], + [ + -123, + 38.24 + ], + [ + -122.83, + 38.09 + ], + [ + -123.73, + 38.92 + ], + [ + -123.76, + 39.23 + ], + [ + -123.85, + 39.83 + ], + [ + -124.41, + 40.44 + ], + [ + -124.08, + 40.83 + ], + [ + -124.04, + 41.54 + ], + [ + -124.23, + 41.77 + ], + [ + -124.57, + 42.84 + ], + [ + -124.39, + 43.33 + ], + [ + -124.15, + 43.37 + ], + [ + -124.23, + 43.47 + ], + [ + -124.35, + 43.36 + ], + [ + -123.96, + 45.57 + ], + [ + -123.87, + 45.5 + ], + [ + -124.07, + 46.23 + ], + [ + -123.78, + 46.08 + ], + [ + -123.87, + 46.19 + ], + [ + -123.54, + 46.24 + ], + [ + -122.95, + 46.09 + ], + [ + -123.68, + 46.31 + ], + [ + -124.09, + 46.26 + ], + [ + -124.07, + 46.65 + ], + [ + -123.96, + 46.36 + ], + [ + -123.83, + 46.71 + ], + [ + -124.09, + 46.74 + ], + [ + -124.16, + 46.91 + ], + [ + -124.02, + 46.83 + ], + [ + -123.85, + 46.96 + ], + [ + -124.04, + 47.06 + ], + [ + -124.18, + 46.93 + ], + [ + -124.73, + 48.38 + ], + [ + -123.98, + 48.16 + ], + [ + -123.1, + 48.18 + ], + [ + -122.89, + 47.99 + ], + [ + -122.75, + 48.14 + ], + [ + -122.61, + 47.89 + ], + [ + -122.78, + 47.69 + ], + [ + -122.86, + 47.82 + ], + [ + -123.16, + 47.35 + ], + [ + -122.84, + 47.43 + ], + [ + -123.11, + 47.38 + ], + [ + -122.53, + 47.91 + ], + [ + -122.47, + 47.75 + ], + [ + -122.71, + 47.61 + ], + [ + -122.5, + 47.51 + ], + [ + -122.59, + 47.34 + ], + [ + -122.55, + 47.29 + ], + [ + -122.59, + 47.25 + ], + [ + -122.61, + 47.3 + ], + [ + -122.69, + 47.28 + ], + [ + -122.63, + 47.41 + ], + [ + -122.77, + 47.17 + ], + [ + -122.83, + 47.41 + ], + [ + -123.09, + 47.21 + ], + [ + -122.94, + 47.2 + ], + [ + -123.08, + 47.09 + ], + [ + -122.92, + 47.17 + ], + [ + -122.99, + 47.04 + ], + [ + -122.81, + 47.18 + ], + [ + -122.73, + 47.05 + ], + [ + -122.58, + 47.19 + ], + [ + -122.53, + 47.28 + ], + [ + -122.55, + 47.32 + ], + [ + -122.36, + 47.26 + ], + [ + -122.44, + 47.66 + ], + [ + -122.18, + 48.03 + ], + [ + -122.37, + 48.24 + ], + [ + -122.36, + 48.06 + ], + [ + -122.51, + 48.13 + ], + [ + -122.37, + 48.33 + ], + [ + -122.56, + 48.58 + ], + [ + -122.42, + 48.6 + ], + [ + -122.76, + 49 + ] + ], + [ + [ + -85.61, + 34.14 + ], + [ + -85.45, + 34.2 + ], + [ + -85.69, + 34.26 + ], + [ + -85.61, + 34.14 + ] + ], + [ + [ + -82.91, + 34.49 + ], + [ + -82.84, + 34.34 + ], + [ + -82.79, + 34.52 + ], + [ + -82.91, + 34.49 + ] + ], + [ + [ + -76.26, + 35.53 + ], + [ + -76.2, + 35.44 + ], + [ + -76.07, + 35.53 + ], + [ + -76.26, + 35.53 + ] + ], + [ + [ + -74.22, + 40.98 + ], + [ + -74.27, + 41 + ], + [ + -74.27, + 41.01 + ], + [ + -74.27, + 41 + ], + [ + -74.27, + 40.96 + ], + [ + -74.22, + 40.98 + ] + ], + [ + [ + -71.41, + 43.71 + ], + [ + -71.46, + 43.6 + ], + [ + -71.19, + 43.55 + ], + [ + -71.41, + 43.71 + ] + ], + [ + [ + -78.48, + 36.63 + ], + [ + -78.35, + 36.44 + ], + [ + -78.27, + 36.56 + ], + [ + -78.48, + 36.63 + ] + ], + [ + [ + -87.32, + 34.81 + ], + [ + -87.65, + 34.79 + ], + [ + -86.91, + 34.58 + ], + [ + -87.32, + 34.81 + ] + ], + [ + [ + -81.69, + 28.67 + ], + [ + -81.69, + 28.54 + ], + [ + -81.5, + 28.61 + ], + [ + -81.69, + 28.67 + ] + ], + [ + [ + -80.93, + 26.77 + ], + [ + -80.73, + 26.69 + ], + [ + -80.63, + 26.86 + ], + [ + -80.73, + 27.2 + ], + [ + -81.12, + 26.96 + ], + [ + -80.93, + 26.77 + ] + ], + [ + [ + -84.8, + 29.69 + ], + [ + -84.69, + 29.77 + ], + [ + -84.96, + 29.61 + ], + [ + -84.8, + 29.69 + ] + ], + [ + [ + -80.82, + 27.81 + ], + [ + -80.73, + 27.7 + ], + [ + -80.69, + 27.83 + ], + [ + -80.82, + 27.81 + ] + ], + [ + [ + -80.09, + 33.39 + ], + [ + -80.07, + 33.21 + ], + [ + -79.95, + 33.28 + ], + [ + -80.09, + 33.39 + ] + ], + [ + [ + -82.33, + 33.76 + ], + [ + -82.37, + 33.65 + ], + [ + -82.2, + 33.65 + ], + [ + -82.33, + 33.76 + ] + ], + [ + [ + -81.36, + 34.13 + ], + [ + -81.61, + 34.08 + ], + [ + -81.24, + 34.02 + ], + [ + -81.36, + 34.13 + ] + ], + [ + [ + -94.94, + 35.32 + ], + [ + -94.77, + 35.35 + ], + [ + -95.1, + 35.47 + ], + [ + -94.94, + 35.32 + ] + ], + [ + [ + -93.91, + 36.42 + ], + [ + -94.07, + 36.38 + ], + [ + -93.91, + 36.3 + ], + [ + -93.91, + 36.42 + ] + ], + [ + [ + -92.78, + 38.2 + ], + [ + -92.74, + 38.1 + ], + [ + -92.62, + 38.2 + ], + [ + -92.78, + 38.2 + ] + ], + [ + [ + -91.37, + 40.61 + ], + [ + -91.43, + 40.56 + ], + [ + -91.36, + 40.38 + ], + [ + -91.4, + 40.56 + ], + [ + -91.19, + 40.65 + ], + [ + -91.37, + 40.61 + ] + ], + [ + [ + -94.88, + 36.56 + ], + [ + -94.78, + 36.7 + ], + [ + -95.05, + 36.48 + ], + [ + -94.88, + 36.56 + ] + ], + [ + [ + -92.22, + 35.53 + ], + [ + -92.09, + 35.46 + ], + [ + -92.03, + 35.57 + ], + [ + -92.22, + 35.53 + ] + ], + [ + [ + -88.45, + 44.18 + ], + [ + -88.42, + 43.79 + ], + [ + -88.29, + 44.17 + ], + [ + -88.45, + 44.18 + ] + ], + [ + [ + -94.37, + 31.28 + ], + [ + -94.26, + 31.12 + ], + [ + -94, + 31.12 + ], + [ + -94.37, + 31.28 + ] + ], + [ + [ + -93.91, + 31.91 + ], + [ + -93.83, + 31.5 + ], + [ + -93.65, + 31.39 + ], + [ + -93.79, + 31.28 + ], + [ + -93.6, + 31.16 + ], + [ + -93.6, + 31.41 + ], + [ + -93.91, + 31.91 + ] + ], + [ + [ + -96.06, + 32.84 + ], + [ + -96.06, + 32.86 + ], + [ + -95.89, + 32.82 + ], + [ + -96.02, + 33 + ], + [ + -96.06, + 32.86 + ], + [ + -96.06, + 32.84 + ] + ], + [ + [ + -94.22, + 33.25 + ], + [ + -94.17, + 33.34 + ], + [ + -94.45, + 33.25 + ], + [ + -94.22, + 33.25 + ] + ], + [ + [ + -89.65, + 34.45 + ], + [ + -89.53, + 34.56 + ], + [ + -89.81, + 34.42 + ], + [ + -89.65, + 34.45 + ] + ], + [ + [ + -91.13, + 33.89 + ], + [ + -91.14, + 33.72 + ], + [ + -91.03, + 33.8 + ], + [ + -91.13, + 33.89 + ] + ], + [ + [ + -93.41, + 34.67 + ], + [ + -93.43, + 34.55 + ], + [ + -93.16, + 34.63 + ], + [ + -93.41, + 34.67 + ] + ], + [ + [ + -93.96, + 29.8 + ], + [ + -93.88, + 29.73 + ], + [ + -93.75, + 29.99 + ], + [ + -93.96, + 29.8 + ] + ], + [ + [ + -90.09, + 29.73 + ], + [ + -90.19, + 29.69 + ], + [ + -90.26, + 29.9 + ], + [ + -90.36, + 29.71 + ], + [ + -90.06, + 29.57 + ], + [ + -90.09, + 29.73 + ] + ], + [ + [ + -92.61, + 29.8 + ], + [ + -92.48, + 29.67 + ], + [ + -92.34, + 29.75 + ], + [ + -92.61, + 29.8 + ] + ], + [ + [ + -90.02, + 29.73 + ], + [ + -90, + 29.73 + ], + [ + -89.99, + 29.73 + ], + [ + -90.01, + 29.75 + ], + [ + -90, + 29.73 + ], + [ + -90.02, + 29.73 + ] + ], + [ + [ + -92.86, + 29.97 + ], + [ + -92.84, + 29.84 + ], + [ + -92.64, + 29.86 + ], + [ + -92.86, + 29.97 + ] + ], + [ + [ + -90.5, + 30.33 + ], + [ + -90.55, + 30.16 + ], + [ + -90.41, + 30.26 + ], + [ + -90.5, + 30.33 + ] + ], + [ + [ + -95.1, + 30.73 + ], + [ + -95.2, + 30.86 + ], + [ + -95.21, + 30.71 + ], + [ + -95.01, + 30.63 + ], + [ + -95.1, + 30.73 + ] + ], + [ + [ + -122.41, + 40.85 + ], + [ + -122.47, + 40.73 + ], + [ + -122.3, + 40.75 + ], + [ + -122.41, + 40.85 + ] + ], + [ + [ + -109.64, + 41 + ], + [ + -109.6, + 40.98 + ], + [ + -109.6, + 40.96 + ], + [ + -109.58, + 41.28 + ], + [ + -109.6, + 41 + ], + [ + -109.64, + 41 + ] + ], + [ + [ + -121.98, + 42.59 + ], + [ + -122.05, + 42.42 + ], + [ + -121.83, + 42.26 + ], + [ + -121.98, + 42.59 + ] + ], + [ + [ + -120.41, + 42.1 + ], + [ + -120.5, + 41.72 + ], + [ + -120.32, + 41.96 + ], + [ + -120.41, + 42.1 + ] + ], + [ + [ + -112.73, + 43.04 + ], + [ + -112.9, + 42.79 + ], + [ + -112.62, + 42.94 + ], + [ + -112.73, + 43.04 + ] + ], + [ + [ + -119.19, + 43.26 + ], + [ + -119.09, + 43.17 + ], + [ + -118.96, + 43.28 + ], + [ + -119.19, + 43.26 + ] + ], + [ + [ + -118.76, + 43.42 + ], + [ + -118.97, + 43.29 + ], + [ + -118.63, + 43.29 + ], + [ + -118.76, + 43.42 + ] + ], + [ + [ + -113.23, + 38.89 + ], + [ + -113.2, + 38.72 + ], + [ + -113.1, + 38.89 + ], + [ + -113.23, + 38.89 + ] + ], + [ + [ + -120.15, + 39.16 + ], + [ + -120.1, + 38.93 + ], + [ + -119.97, + 38.94 + ], + [ + -119.95, + 39.25 + ], + [ + -120.15, + 39.16 + ] + ], + [ + [ + -122.89, + 39.13 + ], + [ + -122.92, + 39.02 + ], + [ + -122.61, + 38.96 + ], + [ + -122.89, + 39.13 + ] + ], + [ + [ + -119.67, + 40.18 + ], + [ + -119.47, + 39.85 + ], + [ + -119.51, + 40.18 + ], + [ + -119.67, + 40.18 + ] + ], + [ + [ + -111.91, + 40.35 + ], + [ + -111.93, + 40.01 + ], + [ + -111.71, + 40.23 + ], + [ + -111.91, + 40.35 + ] + ], + [ + [ + -120.3, + 40.31 + ], + [ + -120.46, + 40.28 + ], + [ + -120.3, + 40.15 + ], + [ + -120.3, + 40.31 + ] + ], + [ + [ + -112.19, + 41.2 + ], + [ + -112.05, + 41.41 + ], + [ + -112.26, + 41.41 + ], + [ + -112.26, + 41.53 + ], + [ + -112.48, + 41.21 + ], + [ + -112.52, + 41.34 + ], + [ + -112.81, + 41.53 + ], + [ + -112.79, + 41.7 + ], + [ + -113.1, + 41.64 + ], + [ + -113.08, + 41.28 + ], + [ + -112.83, + 41.21 + ], + [ + -112.63, + 40.76 + ], + [ + -112.5, + 40.94 + ], + [ + -112.32, + 40.67 + ], + [ + -112.02, + 40.88 + ], + [ + -111.88, + 40.92 + ], + [ + -112.19, + 41.2 + ] + ], + [ + [ + -111.29, + 37.16 + ], + [ + -111.56, + 37.06 + ], + [ + -111.49, + 36.94 + ], + [ + -111.05, + 37.08 + ], + [ + -111.29, + 37.16 + ] + ], + [ + [ + -96.79, + 33.76 + ], + [ + -96.58, + 33.8 + ], + [ + -96.57, + 33.98 + ], + [ + -96.9, + 33.87 + ], + [ + -96.79, + 33.76 + ] + ], + [ + [ + -116.08, + 33.5 + ], + [ + -115.66, + 33.12 + ], + [ + -115.63, + 33.32 + ], + [ + -116.08, + 33.5 + ] + ], + [ + [ + -118.5, + 33.42 + ], + [ + -118.61, + 33.48 + ], + [ + -118.31, + 33.31 + ], + [ + -118.5, + 33.42 + ] + ], + [ + [ + -114.71, + 36.14 + ], + [ + -114.83, + 36.14 + ], + [ + -114.74, + 36.02 + ], + [ + -114.59, + 36.14 + ], + [ + -114.71, + 36.14 + ] + ], + [ + [ + -96.15, + 31.97 + ], + [ + -96.24, + 31.97 + ], + [ + -96.4, + 31.91 + ], + [ + -96.24, + 31.95 + ], + [ + -96.24, + 31.97 + ], + [ + -96.15, + 31.97 + ] + ], + [ + [ + -119.03, + 38.07 + ], + [ + -119.15, + 38 + ], + [ + -119, + 37.94 + ], + [ + -118.9, + 38.03 + ], + [ + -119.03, + 38.07 + ] + ], + [ + [ + -95.76, + 46.68 + ], + [ + -95.76, + 46.66 + ], + [ + -95.85, + 46.59 + ], + [ + -95.76, + 46.65 + ], + [ + -95.76, + 46.66 + ], + [ + -95.76, + 46.68 + ] + ], + [ + [ + -94.66, + 47.44 + ], + [ + -94.6, + 47.31 + ], + [ + -94.49, + 47.52 + ], + [ + -94.66, + 47.44 + ] + ], + [ + [ + -94.27, + 47.31 + ], + [ + -94.66, + 47.22 + ], + [ + -94.57, + 47.05 + ], + [ + -94.24, + 47.1 + ], + [ + -94.27, + 47.31 + ] + ], + [ + [ + -94.13, + 47.55 + ], + [ + -94.29, + 47.37 + ], + [ + -94.03, + 47.46 + ], + [ + -94.13, + 47.55 + ] + ], + [ + [ + -94.51, + 48.17 + ], + [ + -95.01, + 48.15 + ], + [ + -95.28, + 47.9 + ], + [ + -94.79, + 47.88 + ], + [ + -94.75, + 48 + ], + [ + -94.99, + 48.06 + ], + [ + -94.51, + 48.17 + ] + ], + [ + [ + -88.52, + 47.1 + ], + [ + -88.54, + 47.01 + ], + [ + -88.37, + 47.12 + ], + [ + -88.52, + 47.1 + ] + ], + [ + [ + -68.83, + 45.8 + ], + [ + -69.04, + 45.71 + ], + [ + -68.95, + 45.58 + ], + [ + -68.83, + 45.8 + ] + ], + [ + [ + -95.45, + 46.04 + ], + [ + -95.33, + 45.92 + ], + [ + -95.32, + 46.07 + ], + [ + -95.45, + 46.04 + ] + ], + [ + [ + -70.87, + 45 + ], + [ + -70.88, + 44.82 + ], + [ + -70.74, + 44.84 + ], + [ + -70.87, + 45 + ] + ], + [ + [ + -69.7, + 45.58 + ], + [ + -69.5, + 45.58 + ], + [ + -69.57, + 45.72 + ], + [ + -69.7, + 45.58 + ] + ], + [ + [ + -69.32, + 45.95 + ], + [ + -69.36, + 46.13 + ], + [ + -69.35, + 45.95 + ], + [ + -69.32, + 45.95 + ], + [ + -69.3, + 45.84 + ], + [ + -69.17, + 45.87 + ], + [ + -69.3, + 45.95 + ], + [ + -69.32, + 45.95 + ] + ], + [ + [ + -93.72, + 46.35 + ], + [ + -93.78, + 46.14 + ], + [ + -93.52, + 46.11 + ], + [ + -93.51, + 46.35 + ], + [ + -93.72, + 46.35 + ] + ], + [ + [ + -94.37, + 46.41 + ], + [ + -94.35, + 46.41 + ], + [ + -94.21, + 46.44 + ], + [ + -94.35, + 46.56 + ], + [ + -94.37, + 46.41 + ] + ], + [ + [ + -106.28, + 47.81 + ], + [ + -106.39, + 48.02 + ], + [ + -106.95, + 47.75 + ], + [ + -106.87, + 47.62 + ], + [ + -106.48, + 47.91 + ], + [ + -106.3, + 47.65 + ], + [ + -106.28, + 47.81 + ] + ], + [ + [ + -114.2, + 48.08 + ], + [ + -114.35, + 47.81 + ], + [ + -114.05, + 47.69 + ], + [ + -114.2, + 48.08 + ] + ], + [ + [ + -102.61, + 47.81 + ], + [ + -102.61, + 47.78 + ], + [ + -102.48, + 47.75 + ], + [ + -102.61, + 47.81 + ] + ], + [ + [ + -116.46, + 48.31 + ], + [ + -116.63, + 48.25 + ], + [ + -116.35, + 48.22 + ], + [ + -116.57, + 47.94 + ], + [ + -116.19, + 48.14 + ], + [ + -116.46, + 48.31 + ] + ], + [ + [ + -103.01, + 48.17 + ], + [ + -103.56, + 48.02 + ], + [ + -102.83, + 48.12 + ], + [ + -102.57, + 47.95 + ], + [ + -102.73, + 48.14 + ], + [ + -103.01, + 48.17 + ] + ], + [ + [ + -99.2, + 48.17 + ], + [ + -99.12, + 48 + ], + [ + -98.75, + 48.05 + ], + [ + -99.2, + 48.17 + ] + ], + [ + [ + -110.39, + 44.56 + ], + [ + -110.55, + 44.37 + ], + [ + -110.2, + 44.31 + ], + [ + -110.39, + 44.56 + ] + ], + [ + [ + -100.63, + 44.76 + ], + [ + -100.55, + 44.74 + ], + [ + -100.35, + 44.87 + ], + [ + -100.4, + 45 + ], + [ + -100.24, + 45.05 + ], + [ + -100.44, + 45.03 + ], + [ + -100.53, + 44.78 + ], + [ + -100.68, + 44.86 + ], + [ + -101.03, + 44.75 + ], + [ + -100.68, + 44.76 + ], + [ + -100.5, + 44.5 + ], + [ + -100.63, + 44.76 + ] + ], + [ + [ + -97.38, + 45.52 + ], + [ + -97.51, + 45.43 + ], + [ + -97.34, + 45.22 + ], + [ + -97.38, + 45.52 + ] + ], + [ + [ + -119.63, + 45.92 + ], + [ + -119.81, + 45.83 + ], + [ + -119.37, + 45.92 + ], + [ + -119.63, + 45.92 + ] + ], + [ + [ + -101.91, + 47.46 + ], + [ + -101.09, + 47.58 + ], + [ + -102, + 47.54 + ], + [ + -102.25, + 47.64 + ], + [ + -102.39, + 47.98 + ], + [ + -102.48, + 47.75 + ], + [ + -102.28, + 47.64 + ], + [ + -102.47, + 47.53 + ], + [ + -102.3, + 47.61 + ], + [ + -101.91, + 47.46 + ] + ], + [ + [ + -100.42, + 45.68 + ], + [ + -100.58, + 45.58 + ], + [ + -100.28, + 45.44 + ], + [ + -100.42, + 45.68 + ] + ], + [ + [ + -119, + 46.13 + ], + [ + -118.97, + 46 + ], + [ + -118.92, + 46.13 + ], + [ + -119.11, + 46.22 + ], + [ + -119, + 46.13 + ] + ] + ], + [ + [ + [ + -86.11, + 34.52 + ], + [ + -85.97, + 34.6 + ], + [ + -86.24, + 34.38 + ], + [ + -86.11, + 34.52 + ] + ] + ], + [ + [ + [ + -95.15, + 49.17 + ], + [ + -95.15, + 49.38 + ], + [ + -95.14, + 49.38 + ], + [ + -95.1, + 49.36 + ], + [ + -94.95, + 49.21 + ], + [ + -95.15, + 49.17 + ] + ] + ], + [ + [ + [ + -94.89, + 49.34 + ], + [ + -94.86, + 49.33 + ], + [ + -94.82, + 49.32 + ], + [ + -94.83, + 49.3 + ], + [ + -94.89, + 49.34 + ] + ] + ], + [ + [ + [ + -91.58, + 48.11 + ], + [ + -91.57, + 48.11 + ], + [ + -91.56, + 48.11 + ], + [ + -91.56, + 48.1 + ], + [ + -91.58, + 48.11 + ] + ] + ], + [ + [ + [ + -83.5, + 45.93 + ], + [ + -83.5, + 45.92 + ], + [ + -83.88, + 45.98 + ], + [ + -83.63, + 46.1 + ], + [ + -83.5, + 45.93 + ] + ] + ], + [ + [ + [ + -76.16, + 44.25 + ], + [ + -76.16, + 44.28 + ], + [ + -76.15, + 44.29 + ], + [ + -76.11, + 44.28 + ], + [ + -76.16, + 44.25 + ] + ] + ], + [ + [ + [ + -172.39, + 52.29 + ], + [ + -172.63, + 52.27 + ], + [ + -172.45, + 52.39 + ], + [ + -172.39, + 52.29 + ] + ] + ], + [ + [ + [ + -174.19, + 52.42 + ], + [ + -174, + 52.36 + ], + [ + -174.2, + 52.22 + ], + [ + -174.09, + 52.11 + ], + [ + -175.34, + 52.02 + ], + [ + -174.34, + 52.18 + ], + [ + -174.29, + 52.33 + ], + [ + -174.46, + 52.32 + ], + [ + -174.19, + 52.42 + ] + ] + ], + [ + [ + [ + -173.6, + 52.14 + ], + [ + -172.95, + 52.09 + ], + [ + -173.49, + 52.02 + ], + [ + -174.05, + 52.13 + ], + [ + -173.6, + 52.14 + ] + ] + ], + [ + [ + [ + -176.55, + 51.84 + ], + [ + -176.43, + 51.74 + ], + [ + -176.98, + 51.6 + ], + [ + -176.91, + 51.81 + ], + [ + -176.71, + 51.79 + ], + [ + -176.79, + 51.96 + ], + [ + -176.56, + 51.99 + ], + [ + -176.55, + 51.84 + ] + ] + ], + [ + [ + [ + -178.01, + 51.91 + ], + [ + -177.62, + 51.85 + ], + [ + -177.91, + 51.6 + ], + [ + -178.23, + 51.87 + ], + [ + -178.01, + 51.91 + ] + ] + ], + [ + [ + [ + -177.57, + 51.72 + ], + [ + -177.05, + 51.91 + ], + [ + -177.15, + 51.71 + ], + [ + -177.67, + 51.66 + ], + [ + -177.57, + 51.72 + ] + ] + ], + [ + [ + [ + -172.92, + 60.47 + ], + [ + -172.95, + 60.61 + ], + [ + -172.22, + 60.31 + ], + [ + -172.92, + 60.47 + ] + ] + ], + [ + [ + [ + -158.66, + 64.17 + ], + [ + -158.64, + 64.17 + ], + [ + -158.7, + 64.15 + ], + [ + -158.69, + 64.16 + ], + [ + -158.66, + 64.17 + ] + ] + ], + [ + [ + [ + -167, + 65.98 + ], + [ + -167.24, + 65.91 + ], + [ + -166.81, + 66.05 + ], + [ + -167, + 65.98 + ] + ] + ], + [ + [ + [ + -166.56, + 66.13 + ], + [ + -166.16, + 66.22 + ], + [ + -166.8, + 66.04 + ], + [ + -166.56, + 66.13 + ] + ] + ], + [ + [ + [ + -164.62, + 62.69 + ], + [ + -164.87, + 62.74 + ], + [ + -164.8, + 62.93 + ], + [ + -164.38, + 63.02 + ], + [ + -164.1, + 62.76 + ], + [ + -164.22, + 62.71 + ], + [ + -164.49, + 62.76 + ], + [ + -164.53, + 62.75 + ], + [ + -164.53, + 62.71 + ], + [ + -164.62, + 62.69 + ] + ] + ], + [ + [ + [ + -163.79, + 63.11 + ], + [ + -164.13, + 63.01 + ], + [ + -163.66, + 63.11 + ], + [ + -163.89, + 62.99 + ], + [ + -163.8, + 62.92 + ], + [ + -164.1, + 62.9 + ], + [ + -164.59, + 63.12 + ], + [ + -164.05, + 63.26 + ], + [ + -163.79, + 63.11 + ] + ] + ], + [ + [ + [ + -146.09, + 60.4 + ], + [ + -146.7, + 60.26 + ], + [ + -146.61, + 60.48 + ], + [ + -146.09, + 60.4 + ] + ] + ], + [ + [ + [ + -148.29, + 60.1 + ], + [ + -148.12, + 60.12 + ], + [ + -148.04, + 60.2 + ], + [ + -148.18, + 60.02 + ], + [ + -148.29, + 60.1 + ] + ] + ], + [ + [ + [ + -147.62, + 60.38 + ], + [ + -147.77, + 60.15 + ], + [ + -147.7, + 60.51 + ], + [ + -147.62, + 60.38 + ] + ] + ], + [ + [ + [ + -165.04, + 60.46 + ], + [ + -165.42, + 60.56 + ], + [ + -164.86, + 60.86 + ], + [ + -164.26, + 60.79 + ], + [ + -164.71, + 60.3 + ], + [ + -165.04, + 60.46 + ] + ] + ], + [ + [ + [ + -153.36, + 57.05 + ], + [ + -153.26, + 57.21 + ], + [ + -152.87, + 57.16 + ], + [ + -153.36, + 57.05 + ] + ] + ], + [ + [ + [ + -154.34, + 57.16 + ], + [ + -154.49, + 57.06 + ], + [ + -154.12, + 57.09 + ], + [ + -154.12, + 57.06 + ], + [ + -154.25, + 56.87 + ], + [ + -154.51, + 56.99 + ], + [ + -154.8, + 57.35 + ], + [ + -154.35, + 57.64 + ], + [ + -154.01, + 57.65 + ], + [ + -154.1, + 57.53 + ], + [ + -153.62, + 57.27 + ], + [ + -153.88, + 57.64 + ], + [ + -153.55, + 57.59 + ], + [ + -153.92, + 57.71 + ], + [ + -153.85, + 57.87 + ], + [ + -153.62, + 57.88 + ], + [ + -153.49, + 57.62 + ], + [ + -153.49, + 57.77 + ], + [ + -153.31, + 57.72 + ], + [ + -153.48, + 57.84 + ], + [ + -153.18, + 57.7 + ], + [ + -153.24, + 57.9 + ], + [ + -153.04, + 57.82 + ], + [ + -153.29, + 58 + ], + [ + -152.8, + 57.91 + ], + [ + -152.85, + 57.72 + ], + [ + -152.62, + 57.92 + ], + [ + -152.33, + 57.83 + ], + [ + -152.57, + 57.7 + ], + [ + -152.15, + 57.62 + ], + [ + -152.32, + 57.43 + ], + [ + -152.96, + 57.52 + ], + [ + -153.05, + 57.43 + ], + [ + -152.76, + 57.46 + ], + [ + -152.63, + 57.32 + ], + [ + -153.16, + 57.36 + ], + [ + -152.95, + 57.25 + ], + [ + -153.54, + 57.18 + ], + [ + -153.49, + 57.07 + ], + [ + -153.76, + 57.05 + ], + [ + -153.59, + 56.94 + ], + [ + -153.98, + 56.74 + ], + [ + -154.15, + 56.75 + ], + [ + -153.74, + 57.14 + ], + [ + -154.09, + 56.97 + ], + [ + -153.95, + 57.12 + ], + [ + -154.34, + 57.16 + ] + ] + ], + [ + [ + [ + -153.36, + 58.04 + ], + [ + -153.27, + 58.15 + ], + [ + -152.91, + 57.98 + ], + [ + -153.36, + 58.04 + ] + ] + ], + [ + [ + [ + -152.67, + 58.08 + ], + [ + -152.86, + 57.99 + ], + [ + -153.22, + 58.16 + ], + [ + -152.85, + 58.15 + ], + [ + -153.1, + 58.26 + ], + [ + -152.72, + 58.26 + ], + [ + -152.89, + 58.41 + ], + [ + -152.49, + 58.47 + ], + [ + -152.43, + 58.3 + ], + [ + -152.12, + 58.4 + ], + [ + -152.14, + 58.21 + ], + [ + -151.99, + 58.35 + ], + [ + -152.08, + 58.15 + ], + [ + -152.26, + 58.27 + ], + [ + -152.27, + 58.12 + ], + [ + -152.56, + 58.09 + ], + [ + -152.58, + 58.22 + ], + [ + -152.67, + 58.08 + ] + ] + ], + [ + [ + [ + -161.12, + 58.66 + ], + [ + -160.69, + 58.82 + ], + [ + -160.92, + 58.56 + ], + [ + -161.12, + 58.66 + ] + ] + ], + [ + [ + [ + -165.88, + 59.87 + ], + [ + -166.29, + 59.85 + ], + [ + -166.19, + 59.75 + ], + [ + -167.46, + 60.21 + ], + [ + -166.85, + 60.2 + ], + [ + -166.16, + 60.43 + ], + [ + -165.68, + 60.29 + ], + [ + -165.57, + 59.93 + ], + [ + -165.88, + 59.87 + ] + ] + ], + [ + [ + [ + -132.87, + 56.51 + ], + [ + -132.94, + 56.82 + ], + [ + -132.54, + 56.61 + ], + [ + -132.87, + 56.51 + ] + ] + ], + [ + [ + [ + -132.94, + 56.27 + ], + [ + -133.01, + 56.43 + ], + [ + -132.63, + 56.42 + ], + [ + -132.66, + 56.28 + ], + [ + -132.94, + 56.27 + ] + ] + ], + [ + [ + [ + -131.95, + 56.23 + ], + [ + -132.07, + 56.12 + ], + [ + -132.33, + 56.24 + ], + [ + -132.39, + 56.49 + ], + [ + -131.95, + 56.23 + ] + ] + ], + [ + [ + [ + -133.66, + 56.46 + ], + [ + -133.68, + 56.85 + ], + [ + -134.05, + 57.02 + ], + [ + -133.91, + 57.1 + ], + [ + -132.95, + 56.87 + ], + [ + -133.01, + 56.6 + ], + [ + -133.37, + 56.84 + ], + [ + -133.15, + 56.46 + ], + [ + -133.66, + 56.46 + ] + ] + ], + [ + [ + [ + -134.52, + 57.51 + ], + [ + -134.34, + 57.57 + ], + [ + -134.58, + 57.51 + ], + [ + -134.68, + 57.61 + ], + [ + -134.96, + 58.41 + ], + [ + -134.69, + 58.16 + ], + [ + -134.18, + 58.16 + ], + [ + -133.8, + 57.6 + ], + [ + -134.32, + 58.09 + ], + [ + -134.31, + 57.83 + ], + [ + -133.85, + 57.46 + ], + [ + -134.1, + 57.47 + ], + [ + -133.86, + 57.37 + ], + [ + -134.19, + 57.4 + ], + [ + -134.12, + 57.24 + ], + [ + -134.62, + 57.01 + ], + [ + -134.58, + 57.4 + ], + [ + -134.32, + 57.34 + ], + [ + -134.52, + 57.51 + ] + ] + ], + [ + [ + [ + -135.12, + 57.49 + ], + [ + -135.83, + 57.77 + ], + [ + -135.55, + 57.46 + ], + [ + -135.71, + 57.37 + ], + [ + -135.97, + 57.46 + ], + [ + -135.92, + 57.59 + ], + [ + -136.43, + 57.82 + ], + [ + -136.35, + 58 + ], + [ + -136.03, + 57.84 + ], + [ + -136.43, + 58.09 + ], + [ + -136.36, + 58.22 + ], + [ + -136.11, + 58.07 + ], + [ + -136.17, + 58.22 + ], + [ + -135.58, + 58.21 + ], + [ + -135.68, + 57.95 + ], + [ + -135.41, + 58.14 + ], + [ + -134.95, + 58.04 + ], + [ + -134.94, + 57.85 + ], + [ + -135.23, + 57.95 + ], + [ + -135.07, + 57.77 + ], + [ + -135.89, + 58 + ], + [ + -135.44, + 57.74 + ], + [ + -134.94, + 57.76 + ], + [ + -134.84, + 57.48 + ], + [ + -135.12, + 57.49 + ] + ] + ], + [ + [ + [ + -135.65, + 57.26 + ], + [ + -135.6, + 57.04 + ], + [ + -135.85, + 56.99 + ], + [ + -135.86, + 57.33 + ], + [ + -135.65, + 57.26 + ] + ] + ], + [ + [ + [ + -134.82, + 56.38 + ], + [ + -135.07, + 56.54 + ], + [ + -134.83, + 56.74 + ], + [ + -135.12, + 56.6 + ], + [ + -135.02, + 56.82 + ], + [ + -135.31, + 56.78 + ], + [ + -135.4, + 56.95 + ], + [ + -135.12, + 56.98 + ], + [ + -135.69, + 57.36 + ], + [ + -135.48, + 57.35 + ], + [ + -135.43, + 57.56 + ], + [ + -134.84, + 57.25 + ], + [ + -134.67, + 56.16 + ], + [ + -134.82, + 56.38 + ] + ] + ], + [ + [ + [ + -136.56, + 57.95 + ], + [ + -136.5, + 58.11 + ], + [ + -136.45, + 57.84 + ], + [ + -136.56, + 57.95 + ] + ] + ], + [ + [ + [ + -139.46, + 59.39 + ], + [ + -139.61, + 59.45 + ], + [ + -139.31, + 59.35 + ], + [ + -139.46, + 59.39 + ] + ] + ], + [ + [ + [ + -147.29, + 60.22 + ], + [ + -147.16, + 60.37 + ], + [ + -146.92, + 60.31 + ], + [ + -147.43, + 59.87 + ], + [ + -147.91, + 59.77 + ], + [ + -147.29, + 60.22 + ] + ] + ], + [ + [ + [ + -133.59, + 55.71 + ], + [ + -133.63, + 55.83 + ], + [ + -133.31, + 55.8 + ], + [ + -133.59, + 55.71 + ] + ] + ], + [ + [ + [ + -132.63, + 56.06 + ], + [ + -132.72, + 56.22 + ], + [ + -132.43, + 56.35 + ], + [ + -132.51, + 56.19 + ], + [ + -132.1, + 56.1 + ], + [ + -132.26, + 56.13 + ], + [ + -132.22, + 55.94 + ], + [ + -132.45, + 55.96 + ], + [ + -132.46, + 56.17 + ], + [ + -132.63, + 56.06 + ] + ] + ], + [ + [ + [ + -133.35, + 55.99 + ], + [ + -133.49, + 56.05 + ], + [ + -133.81, + 55.94 + ], + [ + -133.43, + 56.16 + ], + [ + -133.29, + 56.15 + ], + [ + -133.39, + 56.08 + ], + [ + -133.29, + 56.02 + ], + [ + -133.41, + 55.9 + ], + [ + -133.35, + 55.99 + ] + ] + ], + [ + [ + [ + -134.32, + 56.64 + ], + [ + -134.41, + 56.86 + ], + [ + -134.12, + 56.85 + ], + [ + -134.27, + 56.94 + ], + [ + -133.91, + 56.76 + ], + [ + -134.05, + 56.64 + ], + [ + -133.73, + 56.78 + ], + [ + -134.14, + 56 + ], + [ + -134.3, + 56.35 + ], + [ + -134.18, + 56.45 + ], + [ + -134.05, + 56.34 + ], + [ + -134.04, + 56.5 + ], + [ + -134.32, + 56.64 + ] + ] + ], + [ + [ + [ + -160.84, + 55.2 + ], + [ + -160.8, + 55.38 + ], + [ + -160.52, + 55.38 + ], + [ + -160.52, + 55.13 + ], + [ + -160.84, + 55.2 + ] + ] + ], + [ + [ + [ + -131.76, + 55.13 + ], + [ + -131.85, + 55.43 + ], + [ + -131.61, + 55.29 + ], + [ + -131.76, + 55.13 + ] + ] + ], + [ + [ + [ + -131.47, + 55.38 + ], + [ + -131.55, + 55.29 + ], + [ + -131.83, + 55.45 + ], + [ + -131.53, + 55.73 + ], + [ + -131.72, + 55.75 + ], + [ + -131.49, + 55.79 + ], + [ + -131.71, + 55.84 + ], + [ + -131.26, + 55.97 + ], + [ + -130.97, + 55.39 + ], + [ + -131.18, + 55.19 + ], + [ + -131.24, + 55.41 + ], + [ + -131.46, + 55.28 + ], + [ + -131.36, + 55.65 + ], + [ + -131.47, + 55.38 + ] + ] + ], + [ + [ + [ + -132.94, + 56.01 + ], + [ + -132.14, + 55.47 + ], + [ + -132.56, + 55.62 + ], + [ + -132.74, + 55.36 + ], + [ + -132.41, + 55.52 + ], + [ + -132.47, + 55.32 + ], + [ + -132.28, + 55.42 + ], + [ + -132.1, + 55.28 + ], + [ + -132.47, + 55.26 + ], + [ + -132.36, + 55.13 + ], + [ + -131.99, + 55.26 + ], + [ + -132.31, + 54.98 + ], + [ + -131.98, + 55.04 + ], + [ + -132.02, + 54.69 + ], + [ + -132.32, + 54.72 + ], + [ + -132.39, + 55.08 + ], + [ + -132.42, + 54.91 + ], + [ + -132.62, + 54.97 + ], + [ + -132.54, + 55.28 + ], + [ + -132.67, + 55.14 + ], + [ + -132.82, + 55.28 + ], + [ + -133.24, + 55.29 + ], + [ + -133.23, + 55.38 + ], + [ + -132.88, + 55.35 + ], + [ + -133.16, + 55.48 + ], + [ + -132.93, + 55.62 + ], + [ + -133.4, + 55.62 + ], + [ + -133.13, + 55.88 + ], + [ + -133.27, + 56.15 + ], + [ + -133.64, + 56.21 + ], + [ + -133.63, + 56.35 + ], + [ + -133.17, + 56.33 + ], + [ + -132.94, + 56.01 + ] + ] + ], + [ + [ + [ + -159.92, + 55.23 + ], + [ + -160.23, + 54.86 + ], + [ + -160.2, + 55.11 + ], + [ + -159.92, + 55.23 + ] + ] + ], + [ + [ + [ + -131.54, + 55.13 + ], + [ + -131.57, + 55.29 + ], + [ + -131.39, + 55.01 + ], + [ + -131.64, + 55.01 + ], + [ + -131.54, + 55.13 + ] + ] + ], + [ + [ + [ + -159.51, + 55.12 + ], + [ + -159.64, + 55.04 + ], + [ + -159.52, + 55.25 + ], + [ + -159.51, + 55.12 + ] + ] + ], + [ + [ + [ + -163.53, + 54.63 + ], + [ + -164.22, + 54.6 + ], + [ + -164.65, + 54.39 + ], + [ + -164.95, + 54.58 + ], + [ + -164.49, + 54.92 + ], + [ + -163.77, + 55.05 + ], + [ + -163.45, + 55.04 + ], + [ + -163.39, + 54.8 + ], + [ + -163.05, + 54.69 + ], + [ + -163.37, + 54.75 + ], + [ + -163.53, + 54.63 + ] + ] + ], + [ + [ + [ + -165.58, + 54.27 + ], + [ + -165.39, + 54.2 + ], + [ + -165.56, + 54.11 + ], + [ + -165.58, + 54.27 + ] + ] + ], + [ + [ + [ + -165.88, + 54.18 + ], + [ + -165.67, + 54.1 + ], + [ + -166.05, + 54.05 + ], + [ + -166.08, + 54.17 + ], + [ + -165.88, + 54.18 + ] + ] + ], + [ + [ + [ + -166.42, + 53.67 + ], + [ + -166.66, + 53.48 + ], + [ + -166.8, + 53.56 + ], + [ + -166.75, + 53.44 + ], + [ + -167.02, + 53.48 + ], + [ + -167.49, + 53.26 + ], + [ + -167.85, + 53.31 + ], + [ + -166.97, + 53.53 + ], + [ + -167.16, + 53.6 + ], + [ + -167.04, + 53.71 + ], + [ + -166.79, + 53.63 + ], + [ + -166.7, + 53.72 + ], + [ + -167.15, + 53.83 + ], + [ + -167.01, + 53.96 + ], + [ + -166.65, + 54.01 + ], + [ + -166.61, + 53.83 + ], + [ + -166.27, + 53.98 + ], + [ + -166.62, + 53.74 + ], + [ + -166.34, + 53.79 + ], + [ + -166.42, + 53.67 + ] + ] + ], + [ + [ + [ + -169.86, + 52.86 + ], + [ + -169.7, + 52.78 + ], + [ + -170, + 52.81 + ], + [ + -169.86, + 52.86 + ] + ] + ], + [ + [ + [ + -168.33, + 53.48 + ], + [ + -167.79, + 53.5 + ], + [ + -169.11, + 52.82 + ], + [ + -168.61, + 53.27 + ], + [ + -168.35, + 53.26 + ], + [ + -168.33, + 53.48 + ] + ] + ], + [ + [ + [ + -170.76, + -14.37 + ], + [ + -170.84, + -14.32 + ], + [ + -170.56, + -14.25 + ], + [ + -170.76, + -14.37 + ] + ] + ], + [ + [ + [ + -169.71, + 63.01 + ], + [ + -170.73, + 63.39 + ], + [ + -171.73, + 63.37 + ], + [ + -171.74, + 63.78 + ], + [ + -171.5, + 63.58 + ], + [ + -170.29, + 63.69 + ], + [ + -170.06, + 63.43 + ], + [ + -168.69, + 63.3 + ], + [ + -169.71, + 63.01 + ] + ] + ], + [ + [ + [ + -159.54, + 21.89 + ], + [ + -159.78, + 22.07 + ], + [ + -159.35, + 22.22 + ], + [ + -159.33, + 21.96 + ], + [ + -159.54, + 21.89 + ] + ] + ], + [ + [ + [ + -160.1, + 21.88 + ], + [ + -160.23, + 21.79 + ], + [ + -160.07, + 22 + ], + [ + -160.1, + 21.88 + ] + ] + ], + [ + [ + [ + -157.31, + 21.1 + ], + [ + -157.25, + 21.22 + ], + [ + -156.71, + 21.16 + ], + [ + -156.87, + 21.05 + ], + [ + -157.31, + 21.1 + ] + ] + ], + [ + [ + [ + -158.12, + 21.33 + ], + [ + -158.28, + 21.57 + ], + [ + -157.98, + 21.71 + ], + [ + -157.65, + 21.3 + ], + [ + -158.12, + 21.33 + ] + ] + ], + [ + [ + [ + -156.89, + 20.74 + ], + [ + -157.06, + 20.91 + ], + [ + -156.83, + 20.86 + ], + [ + -156.89, + 20.74 + ] + ] + ], + [ + [ + [ + -156.64, + 21.02 + ], + [ + -156.47, + 20.89 + ], + [ + -156.24, + 20.94 + ], + [ + -155.99, + 20.71 + ], + [ + -156.41, + 20.58 + ], + [ + -156.47, + 20.8 + ], + [ + -156.69, + 20.88 + ], + [ + -156.64, + 21.02 + ] + ] + ], + [ + [ + [ + -155.57, + 55.8 + ], + [ + -155.75, + 55.82 + ], + [ + -155.6, + 55.91 + ], + [ + -155.57, + 55.8 + ] + ] + ], + [ + [ + [ + -155.88, + 19.05 + ], + [ + -156.06, + 19.73 + ], + [ + -155.83, + 19.98 + ], + [ + -155.85, + 20.27 + ], + [ + -155.21, + 19.97 + ], + [ + -154.81, + 19.52 + ], + [ + -155.67, + 18.91 + ], + [ + -155.88, + 19.05 + ] + ] + ], + [ + [ + [ + -73.34, + 44.68 + ], + [ + -73.25, + 44.75 + ], + [ + -73.3, + 44.6 + ], + [ + -73.34, + 44.68 + ] + ] + ], + [ + [ + [ + -72.55, + 41 + ], + [ + -72.28, + 41.16 + ], + [ + -72.66, + 40.92 + ], + [ + -71.86, + 41.07 + ], + [ + -72.87, + 40.74 + ], + [ + -74.04, + 40.62 + ], + [ + -73.48, + 40.95 + ], + [ + -72.55, + 41 + ] + ] + ], + [ + [ + [ + -85.62, + 45.68 + ], + [ + -85.5, + 45.74 + ], + [ + -85.56, + 45.56 + ], + [ + -85.62, + 45.68 + ] + ] + ], + [ + [ + [ + -68.35, + 44.4 + ], + [ + -68.17, + 44.35 + ], + [ + -68.33, + 44.37 + ], + [ + -68.33, + 44.22 + ], + [ + -68.35, + 44.4 + ] + ] + ], + [ + [ + [ + -70.1, + 41.29 + ], + [ + -70.05, + 41.39 + ], + [ + -69.97, + 41.25 + ], + [ + -70.24, + 41.29 + ], + [ + -70.1, + 41.29 + ] + ] + ], + [ + [ + [ + -70.71, + 41.34 + ], + [ + -70.84, + 41.35 + ], + [ + -70.57, + 41.47 + ], + [ + -70.47, + 41.35 + ], + [ + -70.71, + 41.34 + ] + ] + ], + [ + [ + [ + -88.77, + 48.09 + ], + [ + -88.44, + 48.18 + ], + [ + -88.91, + 47.87 + ], + [ + -89.24, + 47.84 + ], + [ + -88.77, + 48.09 + ] + ] + ], + [ + [ + [ + -122.76, + 48.24 + ], + [ + -122.6, + 48.41 + ], + [ + -122.51, + 48.3 + ], + [ + -122.73, + 48.23 + ], + [ + -122.38, + 47.91 + ], + [ + -122.76, + 48.24 + ] + ] + ], + [ + [ + [ + -122.93, + 48.71 + ], + [ + -122.74, + 48.66 + ], + [ + -122.8, + 48.6 + ], + [ + -122.89, + 48.7 + ], + [ + -122.87, + 48.59 + ], + [ + -123.03, + 48.61 + ], + [ + -122.93, + 48.71 + ] + ] + ], + [ + [ + [ + -123.02, + 48.55 + ], + [ + -122.96, + 48.45 + ], + [ + -123.15, + 48.62 + ], + [ + -123.02, + 48.55 + ] + ] + ], + [ + [ + [ + -118.47, + 32.83 + ], + [ + -118.61, + 33.03 + ], + [ + -118.35, + 32.82 + ], + [ + -118.47, + 32.83 + ] + ] + ], + [ + [ + [ + -120.05, + 34.01 + ], + [ + -120.12, + 33.89 + ], + [ + -120.25, + 34 + ], + [ + -120.05, + 34.01 + ] + ] + ], + [ + [ + [ + -119.85, + 34.07 + ], + [ + -119.52, + 34.03 + ], + [ + -119.82, + 33.96 + ], + [ + -119.85, + 34.07 + ] + ] + ], + [ + [ + [ + -81.47, + 30.86 + ], + [ + -81.4, + 30.95 + ], + [ + -81.45, + 30.71 + ], + [ + -81.47, + 30.86 + ] + ] + ], + [ + [ + [ + -86.76, + 30.39 + ], + [ + -87.16, + 30.33 + ], + [ + -87.3, + 30.33 + ], + [ + -87.16, + 30.33 + ], + [ + -87.15, + 30.34 + ], + [ + -86.73, + 30.4 + ], + [ + -86.51, + 30.38 + ], + [ + -86.76, + 30.39 + ] + ] + ], + [ + [ + [ + -75.47, + 35.58 + ], + [ + -75.49, + 35.68 + ], + [ + -75.46, + 35.57 + ], + [ + -75.53, + 35.22 + ], + [ + -75.67, + 35.21 + ], + [ + -75.52, + 35.27 + ], + [ + -75.47, + 35.58 + ] + ] + ], + [ + [ + [ + -80.44, + 25.13 + ], + [ + -80.26, + 25.33 + ], + [ + -80.59, + 24.95 + ], + [ + -80.44, + 25.13 + ] + ] + ], + [ + [ + [ + -89.78, + 29.57 + ], + [ + -89.39, + 29.32 + ], + [ + -89.73, + 29.39 + ], + [ + -89.69, + 29.49 + ], + [ + -89.84, + 29.42 + ], + [ + -89.78, + 29.57 + ] + ] + ], + [ + [ + [ + -91.31, + 29.3 + ], + [ + -91.24, + 29.37 + ], + [ + -91.13, + 29.22 + ], + [ + -91.31, + 29.3 + ] + ] + ], + [ + [ + [ + -94.98, + 29.19 + ], + [ + -94.72, + 29.33 + ], + [ + -95.12, + 29.09 + ], + [ + -94.98, + 29.19 + ] + ] + ], + [ + [ + [ + -67.09, + 17.96 + ], + [ + -67.21, + 17.95 + ], + [ + -67.15, + 18.21 + ], + [ + -67.27, + 18.36 + ], + [ + -67.14, + 18.51 + ], + [ + -65.61, + 18.38 + ], + [ + -65.6, + 18.21 + ], + [ + -65.92, + 17.98 + ], + [ + -67.09, + 17.96 + ] + ] + ], + [ + [ + [ + 144.77, + 13.39 + ], + [ + 144.68, + 13.25 + ], + [ + 144.62, + 13.45 + ], + [ + 144.87, + 13.65 + ], + [ + 144.95, + 13.58 + ], + [ + 144.77, + 13.39 + ] + ] + ], + [ + [ + [ + 145.72, + 15.22 + ], + [ + 145.83, + 15.27 + ], + [ + 145.75, + 15.09 + ], + [ + 145.72, + 15.22 + ] + ] + ], + [ + [ + [ + 172.76, + 52.88 + ], + [ + 172.44, + 52.92 + ], + [ + 173.12, + 52.99 + ], + [ + 173.43, + 52.83 + ], + [ + 172.9, + 52.75 + ], + [ + 172.76, + 52.88 + ] + ] + ], + [ + [ + [ + 173.49, + 52.44 + ], + [ + 173.77, + 52.51 + ], + [ + 173.72, + 52.36 + ], + [ + 173.49, + 52.44 + ] + ] + ], + [ + [ + [ + 177.61, + 51.95 + ], + [ + 177.2, + 51.88 + ], + [ + 177.59, + 52.14 + ], + [ + 177.61, + 51.95 + ] + ] + ], + [ + [ + [ + 178.68, + 51.65 + ], + [ + 179.47, + 51.37 + ], + [ + 179.24, + 51.35 + ], + [ + 178.68, + 51.65 + ] + ] + ] + ] + }, + "properties": { + "A3": "USA" + } + }, + { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + -176.63, + -43.71 + ], + [ + -176.33, + -44.03 + ], + [ + -176.58, + -44.13 + ], + [ + -176.56, + -43.83 + ], + [ + -176.89, + -43.82 + ], + [ + -176.63, + -43.71 + ] + ] + ], + [ + [ + [ + 165.95, + -50.75 + ], + [ + 166.06, + -50.53 + ], + [ + 166.29, + -50.54 + ], + [ + 166.08, + -50.72 + ], + [ + 166.22, + -50.86 + ], + [ + 166.02, + -50.74 + ], + [ + 165.89, + -50.84 + ], + [ + 165.95, + -50.75 + ] + ] + ], + [ + [ + [ + 175.49, + -36.19 + ], + [ + 175.52, + -36.35 + ], + [ + 175.31, + -36.23 + ], + [ + 175.34, + -36.07 + ], + [ + 175.49, + -36.19 + ] + ] + ], + [ + [ + [ + 173.81, + -40.83 + ], + [ + 173.96, + -40.69 + ], + [ + 173.77, + -40.94 + ], + [ + 173.81, + -40.83 + ] + ] + ], + [ + [ + [ + 177.89, + -39.06 + ], + [ + 177.86, + -39.27 + ], + [ + 177.84, + -39.06 + ], + [ + 177.07, + -39.16 + ], + [ + 176.86, + -39.48 + ], + [ + 177.1, + -39.64 + ], + [ + 176.62, + -40.49 + ], + [ + 175.96, + -41.25 + ], + [ + 175.29, + -41.61 + ], + [ + 175.17, + -41.38 + ], + [ + 174.87, + -41.41 + ], + [ + 174.9, + -41.22 + ], + [ + 174.82, + -41.34 + ], + [ + 174.62, + -41.29 + ], + [ + 175.17, + -40.65 + ], + [ + 175.14, + -40.07 + ], + [ + 173.77, + -39.37 + ], + [ + 173.85, + -39.15 + ], + [ + 174.36, + -38.99 + ], + [ + 174.6, + -38.82 + ], + [ + 174.68, + -38.11 + ], + [ + 174.92, + -38.09 + ], + [ + 174.78, + -38.08 + ], + [ + 174.89, + -37.96 + ], + [ + 174.77, + -37.84 + ], + [ + 174.97, + -37.8 + ], + [ + 174.84, + -37.8 + ], + [ + 174.7, + -37.42 + ], + [ + 174.81, + -37.32 + ], + [ + 174.69, + -37.35 + ], + [ + 174.54, + -37.06 + ], + [ + 174.73, + -37.25 + ], + [ + 174.69, + -37.14 + ], + [ + 174.94, + -37.06 + ], + [ + 174.77, + -36.93 + ], + [ + 174.48, + -37.04 + ], + [ + 174.16, + -36.47 + ], + [ + 174.44, + -36.65 + ], + [ + 174.43, + -36.34 + ], + [ + 174.25, + -36.38 + ], + [ + 174.51, + -36.25 + ], + [ + 174.31, + -36.31 + ], + [ + 174.42, + -36.14 + ], + [ + 174.31, + -36.23 + ], + [ + 174.2, + -36.11 + ], + [ + 174.23, + -36.26 + ], + [ + 173.97, + -36.1 + ], + [ + 174.18, + -36.34 + ], + [ + 174.05, + -36.39 + ], + [ + 173.22, + -35.38 + ], + [ + 173.28, + -35.28 + ], + [ + 173.21, + -35.38 + ], + [ + 173.06, + -35.19 + ], + [ + 173.15, + -35 + ], + [ + 172.68, + -34.42 + ], + [ + 173.05, + -34.41 + ], + [ + 172.86, + -34.54 + ], + [ + 173.28, + -34.89 + ], + [ + 173.23, + -35.02 + ], + [ + 173.4, + -34.78 + ], + [ + 173.46, + -35.02 + ], + [ + 173.56, + -34.91 + ], + [ + 173.72, + -35.09 + ], + [ + 173.86, + -34.99 + ], + [ + 174.08, + -35.12 + ], + [ + 173.96, + -35.22 + ], + [ + 174.1, + -35.36 + ], + [ + 174.33, + -35.17 + ], + [ + 174.59, + -35.85 + ], + [ + 174.36, + -35.73 + ], + [ + 174.31, + -35.84 + ], + [ + 174.5, + -35.84 + ], + [ + 174.57, + -36.14 + ], + [ + 174.87, + -36.37 + ], + [ + 174.72, + -36.36 + ], + [ + 174.74, + -36.5 + ], + [ + 174.66, + -36.4 + ], + [ + 174.66, + -36.6 + ], + [ + 174.84, + -36.6 + ], + [ + 174.68, + -36.62 + ], + [ + 174.81, + -36.83 + ], + [ + 174.6, + -36.76 + ], + [ + 174.66, + -36.9 + ], + [ + 175.19, + -36.93 + ], + [ + 175.34, + -37.21 + ], + [ + 175.5, + -37.2 + ], + [ + 175.47, + -36.62 + ], + [ + 175.33, + -36.49 + ], + [ + 175.49, + -36.51 + ], + [ + 175.61, + -36.76 + ], + [ + 175.82, + -36.72 + ], + [ + 175.66, + -36.87 + ], + [ + 175.83, + -36.86 + ], + [ + 176.04, + -37.68 + ], + [ + 176.23, + -37.71 + ], + [ + 176.18, + -37.62 + ], + [ + 177.15, + -38.04 + ], + [ + 177.98, + -37.54 + ], + [ + 178.54, + -37.67 + ], + [ + 178.35, + -38.42 + ], + [ + 177.95, + -38.7 + ], + [ + 177.89, + -39.06 + ] + ], + [ + [ + 175.77, + -38.69 + ], + [ + 175.85, + -38.96 + ], + [ + 176.09, + -38.7 + ], + [ + 175.77, + -38.69 + ] + ] + ], + [ + [ + [ + 166.6, + -45.74 + ], + [ + 166.45, + -45.73 + ], + [ + 166.68, + -45.6 + ], + [ + 166.6, + -45.74 + ] + ] + ], + [ + [ + [ + 168.06, + -46.95 + ], + [ + 168.22, + -47.1 + ], + [ + 167.45, + -47.28 + ], + [ + 167.77, + -46.92 + ], + [ + 167.72, + -46.71 + ], + [ + 167.98, + -46.72 + ], + [ + 168.16, + -46.9 + ], + [ + 167.91, + -46.98 + ], + [ + 168.06, + -46.95 + ] + ] + ], + [ + [ + [ + 172.71, + -43.55 + ], + [ + 172.66, + -43.67 + ], + [ + 173.05, + -43.65 + ], + [ + 173.1, + -43.83 + ], + [ + 172.97, + -43.89 + ], + [ + 172.93, + -43.75 + ], + [ + 172.93, + -43.9 + ], + [ + 172.79, + -43.78 + ], + [ + 172.72, + -43.83 + ], + [ + 172.22, + -43.89 + ], + [ + 171.33, + -44.3 + ], + [ + 171.15, + -44.94 + ], + [ + 170.9, + -44.89 + ], + [ + 171.15, + -44.94 + ], + [ + 170.57, + -45.72 + ], + [ + 170.58, + -45.75 + ], + [ + 170.64, + -45.74 + ], + [ + 170.72, + -45.77 + ], + [ + 170.72, + -45.79 + ], + [ + 170.51, + -45.88 + ], + [ + 170.6, + -45.87 + ], + [ + 170.6, + -45.85 + ], + [ + 170.65, + -45.84 + ], + [ + 170.64, + -45.82 + ], + [ + 170.67, + -45.83 + ], + [ + 170.67, + -45.81 + ], + [ + 170.72, + -45.8 + ], + [ + 170.73, + -45.77 + ], + [ + 170.75, + -45.87 + ], + [ + 170.29, + -45.96 + ], + [ + 169.58, + -46.58 + ], + [ + 168.33, + -46.63 + ], + [ + 168.34, + -46.42 + ], + [ + 167.78, + -46.39 + ], + [ + 167.52, + -46.16 + ], + [ + 166.66, + -46.2 + ], + [ + 166.92, + -45.92 + ], + [ + 166.71, + -46.08 + ], + [ + 166.56, + -46.07 + ], + [ + 166.71, + -45.86 + ], + [ + 166.45, + -46 + ], + [ + 166.45, + -45.81 + ], + [ + 166.98, + -45.72 + ], + [ + 166.73, + -45.73 + ], + [ + 166.97, + -45.6 + ], + [ + 166.72, + -45.6 + ], + [ + 167.01, + -45.49 + ], + [ + 166.67, + -45.58 + ], + [ + 166.76, + -45.4 + ], + [ + 166.91, + -45.43 + ], + [ + 166.84, + -45.28 + ], + [ + 167.16, + -45.47 + ], + [ + 166.97, + -45.14 + ], + [ + 167.31, + -45.05 + ], + [ + 167.14, + -44.99 + ], + [ + 167.33, + -44.84 + ], + [ + 167.44, + -44.98 + ], + [ + 167.36, + -44.82 + ], + [ + 167.53, + -44.88 + ], + [ + 167.75, + -44.58 + ], + [ + 167.93, + -44.68 + ], + [ + 167.82, + -44.5 + ], + [ + 168.37, + -44.01 + ], + [ + 168.79, + -43.98 + ], + [ + 170.94, + -42.78 + ], + [ + 171.46, + -41.75 + ], + [ + 171.72, + -41.72 + ], + [ + 172.08, + -41.38 + ], + [ + 172.13, + -40.85 + ], + [ + 172.68, + -40.5 + ], + [ + 173.04, + -40.56 + ], + [ + 172.73, + -40.52 + ], + [ + 172.65, + -40.66 + ], + [ + 172.84, + -40.84 + ], + [ + 173, + -40.78 + ], + [ + 173, + -41.15 + ], + [ + 173.19, + -41.33 + ], + [ + 173.83, + -40.92 + ], + [ + 174.02, + -40.91 + ], + [ + 173.77, + -41.02 + ], + [ + 173.76, + -41.12 + ], + [ + 173.95, + -41.06 + ], + [ + 173.77, + -41.29 + ], + [ + 174.12, + -41.18 + ], + [ + 173.87, + -41.21 + ], + [ + 174.05, + -41.11 + ], + [ + 174, + -40.97 + ], + [ + 174.32, + -40.99 + ], + [ + 174.2, + -41.18 + ], + [ + 173.91, + -41.28 + ], + [ + 174.32, + -41.21 + ], + [ + 174.03, + -41.44 + ], + [ + 174.28, + -41.74 + ], + [ + 173.32, + -42.88 + ], + [ + 172.78, + -43.15 + ], + [ + 172.71, + -43.55 + ] + ], + [ + [ + 172.41, + -43.74 + ], + [ + 172.35, + -43.86 + ], + [ + 172.67, + -43.8 + ], + [ + 172.41, + -43.74 + ] + ], + [ + [ + 169.15, + -44.33 + ], + [ + 168.99, + -44.65 + ], + [ + 169.15, + -44.71 + ], + [ + 169.15, + -44.33 + ] + ], + [ + [ + 168.73, + -45.09 + ], + [ + 168.66, + -45.02 + ], + [ + 168.47, + -45.09 + ], + [ + 168.35, + -44.84 + ], + [ + 168.42, + -45.09 + ], + [ + 168.51, + -45.12 + ], + [ + 168.66, + -45.07 + ], + [ + 168.73, + -45.24 + ], + [ + 168.73, + -45.09 + ] + ], + [ + [ + 167.7, + -45.35 + ], + [ + 167.7, + -45.45 + ], + [ + 167.83, + -45.18 + ], + [ + 167.61, + -45.12 + ], + [ + 167.74, + -45.32 + ], + [ + 167.48, + -45.31 + ], + [ + 167.7, + -45.35 + ] + ], + [ + [ + 167.54, + -45.55 + ], + [ + 167.38, + -45.43 + ], + [ + 167.39, + -45.52 + ], + [ + 167.54, + -45.55 + ] + ] + ], + [ + [ + [ + 169.15, + -52.59 + ], + [ + 169.01, + -52.54 + ], + [ + 169.21, + -52.47 + ], + [ + 169.15, + -52.59 + ] + ] + ] + ] + }, + "properties": { + "A3": "NZL" + } + }, + { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + 33.99, + 4.23 + ], + [ + 34.39, + 4.61 + ], + [ + 35.51, + 4.62 + ], + [ + 35.61, + 4.62 + ], + [ + 35.7, + 4.62 + ], + [ + 35.94, + 4.62 + ], + [ + 35.95, + 4.57 + ], + [ + 35.83, + 3.62 + ], + [ + 36.61, + 2.4 + ], + [ + 36.71, + 2.86 + ], + [ + 36.39, + 2.98 + ], + [ + 36.21, + 3.29 + ], + [ + 36.21, + 4.45 + ], + [ + 36.72, + 4.44 + ], + [ + 36.74, + 4.44 + ], + [ + 37.03, + 4.38 + ], + [ + 38.13, + 3.61 + ], + [ + 38.54, + 3.65 + ], + [ + 39.54, + 3.4 + ], + [ + 39.87, + 3.87 + ], + [ + 40.76, + 4.28 + ], + [ + 41.17, + 3.94 + ], + [ + 41.9, + 3.98 + ], + [ + 40.99, + 2.83 + ], + [ + 40.99, + -0.83 + ], + [ + 41.56, + -1.66 + ], + [ + 41.28, + -1.99 + ], + [ + 41.22, + -1.89 + ], + [ + 41.01, + -2.05 + ], + [ + 41, + -1.9 + ], + [ + 40.95, + -2.08 + ], + [ + 40.78, + -1.94 + ], + [ + 40.93, + -2.23 + ], + [ + 40.72, + -2.22 + ], + [ + 40.77, + -2.45 + ], + [ + 40.19, + -2.74 + ], + [ + 40.12, + -3.29 + ], + [ + 39.97, + -3.39 + ], + [ + 39.45, + -4.58 + ], + [ + 39.24, + -4.57 + ], + [ + 39.22, + -4.68 + ], + [ + 39.21, + -4.68 + ], + [ + 39.21, + -4.67 + ], + [ + 39.2, + -4.67 + ], + [ + 39.19, + -4.67 + ], + [ + 37.77, + -3.63 + ], + [ + 37.76, + -3.56 + ], + [ + 37.59, + -3.46 + ], + [ + 37.71, + -3.3 + ], + [ + 37.71, + -3.29 + ], + [ + 37.53, + -2.97 + ], + [ + 35.07, + -1.58 + ], + [ + 34.09, + -1.03 + ], + [ + 34.2, + -0.88 + ], + [ + 34.06, + -0.82 + ], + [ + 34.13, + -0.4 + ], + [ + 34.48, + -0.51 + ], + [ + 34.45, + -0.35 + ], + [ + 34.87, + -0.26 + ], + [ + 34.67, + -0.1 + ], + [ + 34.37, + -0.19 + ], + [ + 34.32, + -0.41 + ], + [ + 34.27, + -0.22 + ], + [ + 34.06, + -0.13 + ], + [ + 34.15, + -0.08 + ], + [ + 34.02, + -0.09 + ], + [ + 34.01, + 0.25 + ], + [ + 34.52, + 1.1 + ], + [ + 34.81, + 1.23 + ], + [ + 34.99, + 1.66 + ], + [ + 34.95, + 2.47 + ], + [ + 34.59, + 2.98 + ], + [ + 34.59, + 2.99 + ], + [ + 34.4, + 3.37 + ], + [ + 34.46, + 3.67 + ], + [ + 34.09, + 3.86 + ], + [ + 33.99, + 4.23 + ] + ] + ], + [ + [ + [ + 35.96, + 4.53 + ], + [ + 35.97, + 4.52 + ], + [ + 36.01, + 4.48 + ], + [ + 35.98, + 4.39 + ], + [ + 35.96, + 4.53 + ] + ] + ] + ] + }, + "properties": { + "A3": "KEN" + } + }, + { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + 20.01, + 39.69 + ], + [ + 20.28, + 39.71 + ], + [ + 20.46, + 40.07 + ], + [ + 20.48, + 40.06 + ], + [ + 20.68, + 40.1 + ], + [ + 20.96, + 40.48 + ], + [ + 20.98, + 40.8 + ], + [ + 21.11, + 40.85 + ], + [ + 21.13, + 40.85 + ], + [ + 21.14, + 40.85 + ], + [ + 21.14, + 40.86 + ], + [ + 21.19, + 40.88 + ], + [ + 21.2, + 40.88 + ], + [ + 21.21, + 40.88 + ], + [ + 21.22, + 40.88 + ], + [ + 21.23, + 40.88 + ], + [ + 21.24, + 40.87 + ], + [ + 21.25, + 40.87 + ], + [ + 21.27, + 40.86 + ], + [ + 21.27, + 40.87 + ], + [ + 21.28, + 40.86 + ], + [ + 21.29, + 40.86 + ], + [ + 21.29, + 40.87 + ], + [ + 21.3, + 40.87 + ], + [ + 21.31, + 40.87 + ], + [ + 21.78, + 40.93 + ], + [ + 22.06, + 41.16 + ], + [ + 22.55, + 41.13 + ], + [ + 22.63, + 41.14 + ], + [ + 22.63, + 41.15 + ], + [ + 22.75, + 41.18 + ], + [ + 22.76, + 41.26 + ], + [ + 22.93, + 41.34 + ], + [ + 23.12, + 41.32 + ], + [ + 24.53, + 41.57 + ], + [ + 24.8, + 41.35 + ], + [ + 25.39, + 41.26 + ], + [ + 25.4, + 41.26 + ], + [ + 25.41, + 41.26 + ], + [ + 25.41, + 41.27 + ], + [ + 25.42, + 41.27 + ], + [ + 25.42, + 41.26 + ], + [ + 25.43, + 41.26 + ], + [ + 26.13, + 41.35 + ], + [ + 26.06, + 41.7 + ], + [ + 26.25, + 41.72 + ], + [ + 26.26, + 41.72 + ], + [ + 26.3, + 41.71 + ], + [ + 26.36, + 41.71 + ], + [ + 26.37, + 41.71 + ], + [ + 26.6, + 41.49 + ], + [ + 26.63, + 41.41 + ], + [ + 26.63, + 41.4 + ], + [ + 26.63, + 41.39 + ], + [ + 26.63, + 41.36 + ], + [ + 26.59, + 41.32 + ], + [ + 26.55, + 41.34 + ], + [ + 26.54, + 41.34 + ], + [ + 26.32, + 41.25 + ], + [ + 26.3, + 40.93 + ], + [ + 26.26, + 40.91 + ], + [ + 26.24, + 40.89 + ], + [ + 26.23, + 40.89 + ], + [ + 26.22, + 40.87 + ], + [ + 26.21, + 40.87 + ], + [ + 26.21, + 40.85 + ], + [ + 26.2, + 40.83 + ], + [ + 26.19, + 40.82 + ], + [ + 26.17, + 40.81 + ], + [ + 26.15, + 40.8 + ], + [ + 26.13, + 40.75 + ], + [ + 26.07, + 40.73 + ], + [ + 26.06, + 40.73 + ], + [ + 26.03, + 40.73 + ], + [ + 25.31, + 40.96 + ], + [ + 25.07, + 41.01 + ], + [ + 24.8, + 40.85 + ], + [ + 24.51, + 40.96 + ], + [ + 24.09, + 40.72 + ], + [ + 23.74, + 40.75 + ], + [ + 23.87, + 40.41 + ], + [ + 24.01, + 40.45 + ], + [ + 24.4, + 40.16 + ], + [ + 23.74, + 40.35 + ], + [ + 24, + 40.11 + ], + [ + 23.95, + 39.94 + ], + [ + 23.65, + 40.22 + ], + [ + 22.89, + 40.37 + ], + [ + 22.93, + 40.64 + ], + [ + 22.59, + 40.47 + ], + [ + 22.59, + 40.01 + ], + [ + 23.35, + 39.19 + ], + [ + 23.07, + 39.09 + ], + [ + 23.22, + 39.18 + ], + [ + 22.94, + 39.36 + ], + [ + 22.83, + 39.2 + ], + [ + 23.06, + 39.02 + ], + [ + 22.53, + 38.86 + ], + [ + 23.31, + 38.64 + ], + [ + 23.33, + 38.5 + ], + [ + 24.07, + 38.2 + ], + [ + 24.03, + 37.65 + ], + [ + 23.57, + 38.05 + ], + [ + 23.01, + 37.92 + ], + [ + 22.85, + 38.03 + ], + [ + 23.22, + 38.16 + ], + [ + 22.78, + 38.23 + ], + [ + 22.66, + 38.39 + ], + [ + 22.55, + 38.28 + ], + [ + 22.4, + 38.45 + ], + [ + 22.38, + 38.33 + ], + [ + 21.94, + 38.41 + ], + [ + 21.51, + 38.3 + ], + [ + 21.36, + 38.5 + ], + [ + 21.32, + 38.31 + ], + [ + 21.14, + 38.3 + ], + [ + 20.99, + 38.67 + ], + [ + 20.71, + 38.83 + ], + [ + 20.86, + 38.96 + ], + [ + 21.17, + 38.87 + ], + [ + 21.12, + 39.04 + ], + [ + 20.79, + 39.11 + ], + [ + 20.73, + 38.95 + ], + [ + 20.01, + 39.69 + ] + ] + ], + [ + [ + [ + 25.6, + 40.5 + ], + [ + 25.7, + 40.42 + ], + [ + 25.44, + 40.48 + ], + [ + 25.6, + 40.5 + ] + ] + ], + [ + [ + [ + 24.6, + 40.61 + ], + [ + 24.56, + 40.76 + ], + [ + 24.72, + 40.79 + ], + [ + 24.78, + 40.61 + ], + [ + 24.6, + 40.61 + ] + ] + ], + [ + [ + [ + 27.03, + 37.77 + ], + [ + 26.86, + 37.64 + ], + [ + 26.57, + 37.73 + ], + [ + 27.03, + 37.77 + ] + ] + ], + [ + [ + [ + 25.94, + 38.59 + ], + [ + 26.16, + 38.55 + ], + [ + 26.01, + 38.15 + ], + [ + 25.86, + 38.24 + ], + [ + 25.94, + 38.59 + ] + ] + ], + [ + [ + [ + 24.91, + 37.9 + ], + [ + 24.96, + 37.68 + ], + [ + 24.69, + 37.95 + ], + [ + 24.91, + 37.9 + ] + ] + ], + [ + [ + [ + 25.93, + 39.14 + ], + [ + 25.9, + 39.29 + ], + [ + 26.34, + 39.39 + ], + [ + 26.61, + 39.02 + ], + [ + 26.48, + 39.12 + ], + [ + 26.52, + 38.97 + ], + [ + 26.17, + 39.01 + ], + [ + 26.25, + 39.21 + ], + [ + 25.93, + 39.14 + ] + ] + ], + [ + [ + [ + 24.5, + 38.84 + ], + [ + 24.49, + 38.99 + ], + [ + 24.68, + 38.77 + ], + [ + 24.5, + 38.84 + ] + ] + ], + [ + [ + [ + 25.05, + 39.83 + ], + [ + 25.04, + 39.99 + ], + [ + 25.45, + 40.04 + ], + [ + 25.35, + 39.78 + ], + [ + 25.26, + 39.91 + ], + [ + 25.23, + 39.8 + ], + [ + 25.05, + 39.83 + ] + ] + ], + [ + [ + [ + 25.56, + 37 + ], + [ + 25.44, + 36.92 + ], + [ + 25.33, + 37.08 + ], + [ + 25.53, + 37.2 + ], + [ + 25.56, + 37 + ] + ] + ], + [ + [ + [ + 25.21, + 36.99 + ], + [ + 25.11, + 37.06 + ], + [ + 25.28, + 37.15 + ], + [ + 25.21, + 36.99 + ] + ] + ], + [ + [ + [ + 25.85, + 36.84 + ], + [ + 26.09, + 36.9 + ], + [ + 25.74, + 36.79 + ], + [ + 25.85, + 36.84 + ] + ] + ], + [ + [ + [ + 28.21, + 36.45 + ], + [ + 28.09, + 36.05 + ], + [ + 27.77, + 35.89 + ], + [ + 27.68, + 36.16 + ], + [ + 28.21, + 36.45 + ] + ] + ], + [ + [ + [ + 27.23, + 35.82 + ], + [ + 27.13, + 35.4 + ], + [ + 27.06, + 35.6 + ], + [ + 27.23, + 35.82 + ] + ] + ], + [ + [ + [ + 23.68, + 39.97 + ], + [ + 23.35, + 39.95 + ], + [ + 23.32, + 40.2 + ], + [ + 23.68, + 39.97 + ] + ] + ], + [ + [ + [ + 19.88, + 39.8 + ], + [ + 20.11, + 39.36 + ], + [ + 19.63, + 39.75 + ], + [ + 19.88, + 39.8 + ] + ] + ], + [ + [ + [ + 20.67, + 38.83 + ], + [ + 20.72, + 38.63 + ], + [ + 20.54, + 38.56 + ], + [ + 20.67, + 38.83 + ] + ] + ], + [ + [ + [ + 23.48, + 37.67 + ], + [ + 23.42, + 37.76 + ], + [ + 23.56, + 37.77 + ], + [ + 23.48, + 37.67 + ] + ] + ], + [ + [ + [ + 23.12, + 38.99 + ], + [ + 23.32, + 39.04 + ], + [ + 23.59, + 38.76 + ], + [ + 24.15, + 38.65 + ], + [ + 24.25, + 38.23 + ], + [ + 24.59, + 38.16 + ], + [ + 24.56, + 37.98 + ], + [ + 24.2, + 38.09 + ], + [ + 24.05, + 38.39 + ], + [ + 23.65, + 38.4 + ], + [ + 23.2, + 38.83 + ], + [ + 22.83, + 38.82 + ], + [ + 23.12, + 38.99 + ] + ] + ], + [ + [ + [ + 23.47, + 37.35 + ], + [ + 23.58, + 37.37 + ], + [ + 23.36, + 37.3 + ], + [ + 23.47, + 37.35 + ] + ] + ], + [ + [ + [ + 20.54, + 38.41 + ], + [ + 20.79, + 38.06 + ], + [ + 20.51, + 38.1 + ], + [ + 20.44, + 38.28 + ], + [ + 20.34, + 38.18 + ], + [ + 20.54, + 38.41 + ] + ] + ], + [ + [ + [ + 20.65, + 37.8 + ], + [ + 20.7, + 37.93 + ], + [ + 20.99, + 37.7 + ], + [ + 20.83, + 37.64 + ], + [ + 20.65, + 37.8 + ] + ] + ], + [ + [ + [ + 23.56, + 35.27 + ], + [ + 23.58, + 35.59 + ], + [ + 23.72, + 35.51 + ], + [ + 23.74, + 35.7 + ], + [ + 23.84, + 35.53 + ], + [ + 24.17, + 35.59 + ], + [ + 24.06, + 35.49 + ], + [ + 24.28, + 35.36 + ], + [ + 25.77, + 35.34 + ], + [ + 25.81, + 35.11 + ], + [ + 26.31, + 35.32 + ], + [ + 26.32, + 35.19 + ], + [ + 26.11, + 35 + ], + [ + 24.76, + 34.92 + ], + [ + 24.74, + 35.08 + ], + [ + 24.39, + 35.19 + ], + [ + 23.56, + 35.27 + ] + ] + ], + [ + [ + [ + 21.66, + 36.97 + ], + [ + 21.62, + 37.52 + ], + [ + 21.11, + 37.88 + ], + [ + 21.37, + 38.2 + ], + [ + 21.61, + 38.14 + ], + [ + 21.85, + 38.34 + ], + [ + 22.96, + 37.95 + ], + [ + 23.01, + 37.85 + ], + [ + 23.18, + 37.8 + ], + [ + 23.16, + 37.62 + ], + [ + 23.33, + 37.53 + ], + [ + 23.4, + 37.64 + ], + [ + 23.52, + 37.45 + ], + [ + 23.17, + 37.29 + ], + [ + 23.12, + 37.45 + ], + [ + 22.72, + 37.56 + ], + [ + 23.2, + 36.44 + ], + [ + 22.7, + 36.81 + ], + [ + 22.52, + 36.71 + ], + [ + 22.48, + 36.39 + ], + [ + 22.15, + 37.02 + ], + [ + 21.93, + 36.98 + ], + [ + 21.88, + 36.72 + ], + [ + 21.66, + 36.97 + ] + ] + ] + ] + }, + "properties": { + "A3": "GRC" + } + }, + { + "type": "Feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + 8.64, + 36.94 + ], + [ + 8.57, + 36.77 + ], + [ + 8.15, + 36.5 + ], + [ + 8.41, + 36.41 + ], + [ + 8.25, + 35.89 + ], + [ + 8.31, + 35.32 + ], + [ + 8.48, + 35.24 + ], + [ + 8.25, + 34.92 + ], + [ + 8.32, + 34.73 + ], + [ + 7.53, + 34.07 + ], + [ + 7.53, + 33.8 + ], + [ + 7.83, + 33.19 + ], + [ + 8.12, + 33.1 + ], + [ + 8.32, + 32.82 + ], + [ + 8.36, + 32.5 + ], + [ + 9.07, + 32.09 + ], + [ + 9.56, + 30.24 + ], + [ + 9.41, + 30.07 + ], + [ + 9.78, + 29.42 + ], + [ + 9.9, + 28.76 + ], + [ + 9.96, + 27.87 + ], + [ + 9.78, + 27.26 + ], + [ + 9.93, + 26.86 + ], + [ + 9.86, + 26.52 + ], + [ + 9.4, + 26.2 + ], + [ + 10.03, + 25.36 + ], + [ + 10.22, + 24.65 + ], + [ + 10.36, + 24.54 + ], + [ + 10.9, + 24.56 + ], + [ + 11.42, + 24.2 + ], + [ + 11.6, + 24.26 + ], + [ + 12, + 23.52 + ], + [ + 7.51, + 20.88 + ], + [ + 5.81, + 19.45 + ], + [ + 4.27, + 19.14 + ], + [ + 3.3, + 19 + ], + [ + 3.11, + 19.16 + ], + [ + 3.25, + 19.83 + ], + [ + 2.68, + 20.1 + ], + [ + 2.38, + 20.03 + ], + [ + 2.21, + 20.32 + ], + [ + 1.8, + 20.3 + ], + [ + 1.6, + 20.6 + ], + [ + 1.17, + 20.74 + ], + [ + 1.17, + 21.12 + ], + [ + -1.87, + 23.08 + ], + [ + -4.83, + 25 + ], + [ + -8.67, + 27.31 + ], + [ + -8.67, + 27.67 + ], + [ + -8.67, + 28.71 + ], + [ + -7.15, + 29.52 + ], + [ + -5.8, + 29.61 + ], + [ + -5.56, + 29.48 + ], + [ + -5.29, + 29.9 + ], + [ + -4.32, + 30.53 + ], + [ + -3.67, + 30.66 + ], + [ + -3.54, + 31.01 + ], + [ + -3.64, + 31.17 + ], + [ + -3.78, + 31.1 + ], + [ + -3.66, + 31.63 + ], + [ + -2.82, + 31.79 + ], + [ + -2.87, + 32.11 + ], + [ + -1.15, + 32.11 + ], + [ + -1.3, + 32.17 + ], + [ + -1.25, + 32.33 + ], + [ + -1, + 32.52 + ], + [ + -1.54, + 32.96 + ], + [ + -1.71, + 34.23 + ], + [ + -1.69, + 34.49 + ], + [ + -1.85, + 34.62 + ], + [ + -1.74, + 34.74 + ], + [ + -2.21, + 35.09 + ], + [ + -1.77, + 35.12 + ], + [ + -1.29, + 35.36 + ], + [ + -1.05, + 35.67 + ], + [ + -0.63, + 35.71 + ], + [ + -0.47, + 35.89 + ], + [ + -0.1, + 35.79 + ], + [ + 0.34, + 36.19 + ], + [ + 1.34, + 36.55 + ], + [ + 2.56, + 36.59 + ], + [ + 2.89, + 36.8 + ], + [ + 3.49, + 36.77 + ], + [ + 3.89, + 36.92 + ], + [ + 4.79, + 36.89 + ], + [ + 5.37, + 36.64 + ], + [ + 6.47, + 37.09 + ], + [ + 6.94, + 36.87 + ], + [ + 7.22, + 36.95 + ], + [ + 7.21, + 37.09 + ], + [ + 7.79, + 36.97 + ], + [ + 7.82, + 36.84 + ], + [ + 8.64, + 36.94 + ] + ], + [ + [ + 7.15, + 35.75 + ], + [ + 7.03, + 35.63 + ], + [ + 7.24, + 35.64 + ], + [ + 7.15, + 35.75 + ] + ], + [ + [ + 4.77, + 35.46 + ], + [ + 4.66, + 35.37 + ], + [ + 4.9, + 35.42 + ], + [ + 4.77, + 35.46 + ] + ], + [ + [ + 6.15, + 34.34 + ], + [ + 6.12, + 34.17 + ], + [ + 6.44, + 34.16 + ], + [ + 6.37, + 34.32 + ], + [ + 6.15, + 34.34 + ] + ], + [ + [ + 6.06, + 34.2 + ], + [ + 5.93, + 34.14 + ], + [ + 6.06, + 33.86 + ], + [ + 6.2, + 34.02 + ], + [ + 6.06, + 34.2 + ] + ], + [ + [ + 2.94, + 35.03 + ], + [ + 2.61, + 34.92 + ], + [ + 2.86, + 34.88 + ], + [ + 2.94, + 35.03 + ] + ] + ] + }, + "properties": { + "A3": "DZA" + } + }, + { + "type": "Feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + -8.47, + 7.56 + ], + [ + -8.21, + 7.54 + ], + [ + -8.06, + 8.04 + ], + [ + -7.94, + 8.02 + ], + [ + -7.98, + 8.19 + ], + [ + -8.24, + 8.23 + ], + [ + -8.24, + 8.46 + ], + [ + -7.82, + 8.5 + ], + [ + -7.64, + 8.38 + ], + [ + -7.69, + 8.65 + ], + [ + -7.97, + 8.83 + ], + [ + -7.73, + 9.07 + ], + [ + -7.92, + 9.21 + ], + [ + -7.85, + 9.42 + ], + [ + -8.14, + 9.53 + ], + [ + -8.16, + 9.95 + ], + [ + -7.98, + 10.17 + ], + [ + -7.76, + 10.29 + ], + [ + -7.75, + 10.31 + ], + [ + -7.76, + 10.31 + ], + [ + -7.77, + 10.32 + ], + [ + -7.75, + 10.32 + ], + [ + -7.75, + 10.34 + ], + [ + -7.72, + 10.35 + ], + [ + -7.72, + 10.36 + ], + [ + -7.74, + 10.38 + ], + [ + -7.72, + 10.39 + ], + [ + -7.72, + 10.4 + ], + [ + -7.46, + 10.45 + ], + [ + -7.45, + 10.44 + ], + [ + -7.45, + 10.45 + ], + [ + -7.44, + 10.42 + ], + [ + -7.45, + 10.42 + ], + [ + -7.45, + 10.41 + ], + [ + -7.45, + 10.4 + ], + [ + -7.45, + 10.39 + ], + [ + -7.43, + 10.37 + ], + [ + -7.43, + 10.36 + ], + [ + -7.42, + 10.35 + ], + [ + -7.43, + 10.35 + ], + [ + -7.42, + 10.34 + ], + [ + -7.42, + 10.35 + ], + [ + -7.41, + 10.35 + ], + [ + -7.4, + 10.35 + ], + [ + -7.39, + 10.35 + ], + [ + -7.37, + 10.35 + ], + [ + -7.38, + 10.27 + ], + [ + -7.39, + 10.26 + ], + [ + -7.38, + 10.25 + ], + [ + -7.37, + 10.25 + ], + [ + -7.35, + 10.24 + ], + [ + -7.33, + 10.24 + ], + [ + -7.03, + 10.15 + ], + [ + -6.94, + 10.35 + ], + [ + -6.68, + 10.34 + ], + [ + -6.67, + 10.34 + ], + [ + -6.67, + 10.35 + ], + [ + -6.66, + 10.35 + ], + [ + -6.64, + 10.36 + ], + [ + -6.65, + 10.39 + ], + [ + -6.64, + 10.38 + ], + [ + -6.65, + 10.4 + ], + [ + -6.64, + 10.4 + ], + [ + -6.64, + 10.41 + ], + [ + -6.64, + 10.45 + ], + [ + -6.65, + 10.46 + ], + [ + -6.65, + 10.45 + ], + [ + -6.68, + 10.47 + ], + [ + -6.67, + 10.48 + ], + [ + -6.68, + 10.49 + ], + [ + -6.68, + 10.5 + ], + [ + -6.67, + 10.5 + ], + [ + -6.67, + 10.54 + ], + [ + -6.66, + 10.53 + ], + [ + -6.67, + 10.6 + ], + [ + -6.66, + 10.63 + ], + [ + -6.65, + 10.63 + ], + [ + -6.64, + 10.63 + ], + [ + -6.65, + 10.65 + ], + [ + -6.64, + 10.66 + ], + [ + -6.64, + 10.67 + ], + [ + -6.43, + 10.56 + ], + [ + -6.41, + 10.7 + ], + [ + -6.21, + 10.73 + ], + [ + -6.19, + 10.34 + ], + [ + -6.19, + 10.3 + ], + [ + -6.19, + 10.31 + ], + [ + -6.23, + 10.3 + ], + [ + -6.22, + 10.29 + ], + [ + -6.22, + 10.27 + ], + [ + -6.19, + 10.26 + ], + [ + -6.2, + 10.24 + ], + [ + -6.19, + 10.24 + ], + [ + -5.99, + 10.2 + ], + [ + -5.79, + 10.43 + ], + [ + -5.51, + 10.43 + ], + [ + -5.36, + 10.28 + ], + [ + -5.11, + 10.31 + ], + [ + -4.97, + 9.89 + ], + [ + -4.69, + 9.68 + ], + [ + -4.52, + 9.75 + ], + [ + -4.31, + 9.6 + ], + [ + -4.13, + 9.85 + ], + [ + -3.19, + 9.94 + ], + [ + -2.82, + 9.45 + ], + [ + -2.69, + 9.49 + ], + [ + -2.78, + 9.06 + ], + [ + -2.62, + 8.92 + ], + [ + -2.49, + 8.21 + ], + [ + -2.78, + 7.95 + ], + [ + -3.26, + 6.62 + ], + [ + -3.03, + 5.71 + ], + [ + -2.76, + 5.6 + ], + [ + -2.72, + 5.14 + ], + [ + -2.9, + 5.12 + ], + [ + -2.93, + 5.12 + ], + [ + -2.86, + 5.2 + ], + [ + -3.21, + 5.19 + ], + [ + -3.21, + 5.38 + ], + [ + -3.31, + 5.13 + ], + [ + -3.74, + 5.25 + ], + [ + -4.55, + 5.19 + ], + [ + -3.98, + 5.27 + ], + [ + -4.04, + 5.35 + ], + [ + -4.83, + 5.15 + ], + [ + -5.32, + 5.24 + ], + [ + -5.36, + 5.11 + ], + [ + -6.09, + 4.99 + ], + [ + -7.55, + 4.38 + ], + [ + -7.56, + 4.39 + ], + [ + -7.57, + 4.4 + ], + [ + -7.55, + 4.43 + ], + [ + -7.54, + 4.44 + ], + [ + -7.57, + 4.45 + ], + [ + -7.57, + 4.46 + ], + [ + -7.56, + 4.49 + ], + [ + -7.56, + 4.5 + ], + [ + -7.56, + 4.52 + ], + [ + -7.56, + 4.53 + ], + [ + -7.56, + 4.54 + ], + [ + -7.56, + 4.55 + ], + [ + -7.56, + 4.57 + ], + [ + -7.56, + 4.63 + ], + [ + -7.56, + 4.64 + ], + [ + -7.56, + 4.67 + ], + [ + -7.57, + 4.67 + ], + [ + -7.56, + 4.69 + ], + [ + -7.56, + 4.7 + ], + [ + -7.56, + 4.72 + ], + [ + -7.56, + 4.74 + ], + [ + -7.56, + 4.76 + ], + [ + -7.58, + 4.79 + ], + [ + -7.58, + 4.83 + ], + [ + -7.59, + 4.87 + ], + [ + -7.59, + 4.88 + ], + [ + -7.6, + 4.89 + ], + [ + -7.6, + 4.9 + ], + [ + -7.58, + 4.91 + ], + [ + -7.54, + 4.92 + ], + [ + -7.53, + 4.92 + ], + [ + -7.54, + 4.94 + ], + [ + -7.37, + 5.33 + ], + [ + -7.42, + 5.84 + ], + [ + -7.74, + 5.93 + ], + [ + -7.9, + 6.28 + ], + [ + -8.6, + 6.51 + ], + [ + -8.27, + 7 + ], + [ + -8.47, + 7.56 + ] + ], + [ + [ + -5.73, + 7.54 + ], + [ + -5.67, + 7.13 + ], + [ + -5.49, + 7.17 + ], + [ + -5.37, + 6.98 + ], + [ + -5.51, + 7.23 + ], + [ + -5.6, + 7.17 + ], + [ + -5.73, + 7.54 + ] + ], + [ + [ + -7.08, + 6.38 + ], + [ + -7.2, + 6.23 + ], + [ + -6.97, + 6.36 + ], + [ + -7.03, + 6.66 + ], + [ + -7.08, + 6.38 + ] + ] + ] + }, + "properties": { + "A3": "CIV" + } + }, + { + "type": "Feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + 50.63, + 26.13 + ], + [ + 50.57, + 25.79 + ], + [ + 50.44, + 26.23 + ], + [ + 50.63, + 26.13 + ] + ] + ] + }, + "properties": { + "A3": "BHR" + } + }, + { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + -59.99, + 8.53 + ], + [ + -59.82, + 8.32 + ], + [ + -60.03, + 8.03 + ], + [ + -60.54, + 7.82 + ], + [ + -60.72, + 7.54 + ], + [ + -60.55, + 7.13 + ], + [ + -60.29, + 7.13 + ], + [ + -60.37, + 6.94 + ], + [ + -61.14, + 6.72 + ], + [ + -61.23, + 6.57 + ], + [ + -61.12, + 6.19 + ], + [ + -61.41, + 5.97 + ], + [ + -60.74, + 5.19 + ], + [ + -60.73, + 5.19 + ], + [ + -60.59, + 4.93 + ], + [ + -60.99, + 4.52 + ], + [ + -61.32, + 4.54 + ], + [ + -61.56, + 4.25 + ], + [ + -61.93, + 4.12 + ], + [ + -62.46, + 4.18 + ], + [ + -62.55, + 4.02 + ], + [ + -62.75, + 4.03 + ], + [ + -62.74, + 3.67 + ], + [ + -62.96, + 3.61 + ], + [ + -63.2, + 3.95 + ], + [ + -63.43, + 3.98 + ], + [ + -63.5, + 3.84 + ], + [ + -63.68, + 4.02 + ], + [ + -63.68, + 3.91 + ], + [ + -63.96, + 3.87 + ], + [ + -64.16, + 4.13 + ], + [ + -64.56, + 4.11 + ], + [ + -64.81, + 4.27 + ], + [ + -64.17, + 3.57 + ], + [ + -64.23, + 3.12 + ], + [ + -63.98, + 2.72 + ], + [ + -64.06, + 2.5 + ], + [ + -63.42, + 2.45 + ], + [ + -63.4, + 2.15 + ], + [ + -63.99, + 1.98 + ], + [ + -64.07, + 1.65 + ], + [ + -64.34, + 1.36 + ], + [ + -64.39, + 1.53 + ], + [ + -64.74, + 1.23 + ], + [ + -64.8, + 1.32 + ], + [ + -65.16, + 1.12 + ], + [ + -65.44, + 0.69 + ], + [ + -65.6, + 0.69 + ], + [ + -65.5, + 0.87 + ], + [ + -65.62, + 1.01 + ], + [ + -66.12, + 0.75 + ], + [ + -66.41, + 0.83 + ], + [ + -66.41, + 0.84 + ], + [ + -66.84, + 1.22 + ], + [ + -66.85, + 1.23 + ], + [ + -66.86, + 1.24 + ], + [ + -66.88, + 1.26 + ], + [ + -66.88, + 1.27 + ], + [ + -66.88, + 1.3 + ], + [ + -66.86, + 1.31 + ], + [ + -66.85, + 1.34 + ], + [ + -66.86, + 1.37 + ], + [ + -66.87, + 1.4 + ], + [ + -66.88, + 1.4 + ], + [ + -66.9, + 1.41 + ], + [ + -66.91, + 1.41 + ], + [ + -66.91, + 1.42 + ], + [ + -66.91, + 1.43 + ], + [ + -66.91, + 1.47 + ], + [ + -66.91, + 1.48 + ], + [ + -66.91, + 1.51 + ], + [ + -66.92, + 1.53 + ], + [ + -66.93, + 1.55 + ], + [ + -66.93, + 1.56 + ], + [ + -66.94, + 1.57 + ], + [ + -66.95, + 1.58 + ], + [ + -66.96, + 1.59 + ], + [ + -66.96, + 1.6 + ], + [ + -66.96, + 1.62 + ], + [ + -66.96, + 1.63 + ], + [ + -66.96, + 1.64 + ], + [ + -66.97, + 1.66 + ], + [ + -66.98, + 1.67 + ], + [ + -67, + 1.73 + ], + [ + -67.01, + 1.75 + ], + [ + -67.03, + 1.78 + ], + [ + -67.03, + 1.79 + ], + [ + -67.04, + 1.85 + ], + [ + -67.05, + 1.87 + ], + [ + -67.05, + 1.88 + ], + [ + -67.06, + 1.92 + ], + [ + -67.08, + 1.93 + ], + [ + -67.09, + 1.94 + ], + [ + -67.1, + 1.96 + ], + [ + -67.11, + 1.97 + ], + [ + -67.12, + 1.99 + ], + [ + -67.12, + 2.01 + ], + [ + -67.11, + 2.04 + ], + [ + -67.1, + 2.05 + ], + [ + -67.1, + 2.08 + ], + [ + -67.11, + 2.1 + ], + [ + -67.11, + 2.11 + ], + [ + -67.11, + 2.12 + ], + [ + -67.12, + 2.14 + ], + [ + -67.13, + 2.14 + ], + [ + -67.15, + 2.13 + ], + [ + -67.17, + 2.15 + ], + [ + -67.18, + 2.15 + ], + [ + -67.18, + 2.16 + ], + [ + -67.19, + 2.19 + ], + [ + -67.2, + 2.2 + ], + [ + -67.2, + 2.21 + ], + [ + -67.21, + 2.24 + ], + [ + -67.22, + 2.25 + ], + [ + -67.22, + 2.28 + ], + [ + -67.21, + 2.28 + ], + [ + -67.22, + 2.3 + ], + [ + -67.2, + 2.33 + ], + [ + -67.19, + 2.35 + ], + [ + -67.2, + 2.37 + ], + [ + -67.21, + 2.37 + ], + [ + -67.21, + 2.38 + ], + [ + -67.22, + 2.39 + ], + [ + -67.22, + 2.4 + ], + [ + -67.24, + 2.41 + ], + [ + -67.26, + 2.43 + ], + [ + -67.28, + 2.43 + ], + [ + -67.29, + 2.44 + ], + [ + -67.31, + 2.47 + ], + [ + -67.33, + 2.5 + ], + [ + -67.34, + 2.52 + ], + [ + -67.35, + 2.53 + ], + [ + -67.38, + 2.54 + ], + [ + -67.39, + 2.55 + ], + [ + -67.39, + 2.56 + ], + [ + -67.4, + 2.58 + ], + [ + -67.43, + 2.6 + ], + [ + -67.47, + 2.63 + ], + [ + -67.47, + 2.64 + ], + [ + -67.48, + 2.65 + ], + [ + -67.48, + 2.66 + ], + [ + -67.49, + 2.67 + ], + [ + -67.5, + 2.67 + ], + [ + -67.52, + 2.67 + ], + [ + -67.53, + 2.67 + ], + [ + -67.54, + 2.66 + ], + [ + -67.55, + 2.66 + ], + [ + -67.57, + 2.67 + ], + [ + -67.57, + 2.68 + ], + [ + -67.57, + 2.7 + ], + [ + -67.57, + 2.71 + ], + [ + -67.56, + 2.72 + ], + [ + -67.56, + 2.73 + ], + [ + -67.58, + 2.74 + ], + [ + -67.58, + 2.75 + ], + [ + -67.59, + 2.76 + ], + [ + -67.58, + 2.77 + ], + [ + -67.86, + 2.87 + ], + [ + -67.39, + 3.25 + ], + [ + -67.38, + 3.25 + ], + [ + -67.33, + 3.36 + ], + [ + -67.32, + 3.37 + ], + [ + -67.32, + 3.4 + ], + [ + -67.32, + 3.41 + ], + [ + -67.33, + 3.43 + ], + [ + -67.36, + 3.46 + ], + [ + -67.37, + 3.47 + ], + [ + -67.38, + 3.47 + ], + [ + -67.4, + 3.48 + ], + [ + -67.41, + 3.51 + ], + [ + -67.41, + 3.52 + ], + [ + -67.41, + 3.54 + ], + [ + -67.43, + 3.56 + ], + [ + -67.43, + 3.58 + ], + [ + -67.44, + 3.58 + ], + [ + -67.45, + 3.6 + ], + [ + -67.44, + 3.62 + ], + [ + -67.44, + 3.63 + ], + [ + -67.45, + 3.67 + ], + [ + -67.48, + 3.71 + ], + [ + -67.48, + 3.72 + ], + [ + -67.49, + 3.73 + ], + [ + -67.49, + 3.74 + ], + [ + -67.49, + 3.75 + ], + [ + -67.5, + 3.76 + ], + [ + -67.5, + 3.77 + ], + [ + -67.51, + 3.78 + ], + [ + -67.51, + 3.77 + ], + [ + -67.54, + 3.76 + ], + [ + -67.55, + 3.76 + ], + [ + -67.58, + 3.75 + ], + [ + -67.59, + 3.75 + ], + [ + -67.6, + 3.75 + ], + [ + -67.62, + 3.77 + ], + [ + -67.62, + 3.78 + ], + [ + -67.63, + 3.78 + ], + [ + -67.63, + 3.79 + ], + [ + -67.64, + 3.8 + ], + [ + -67.64, + 3.82 + ], + [ + -67.65, + 3.86 + ], + [ + -67.65, + 3.87 + ], + [ + -67.66, + 3.89 + ], + [ + -67.68, + 3.91 + ], + [ + -67.69, + 3.93 + ], + [ + -67.69, + 3.94 + ], + [ + -67.7, + 3.97 + ], + [ + -67.7, + 3.99 + ], + [ + -67.7, + 4.01 + ], + [ + -67.7, + 4.04 + ], + [ + -67.71, + 4.05 + ], + [ + -67.73, + 4.11 + ], + [ + -67.74, + 4.13 + ], + [ + -67.77, + 4.17 + ], + [ + -67.78, + 4.18 + ], + [ + -67.8, + 4.29 + ], + [ + -67.8, + 4.3 + ], + [ + -67.81, + 4.32 + ], + [ + -67.8, + 4.32 + ], + [ + -67.8, + 4.33 + ], + [ + -67.77, + 4.34 + ], + [ + -67.78, + 4.38 + ], + [ + -67.78, + 4.39 + ], + [ + -67.8, + 4.48 + ], + [ + -67.8, + 4.49 + ], + [ + -67.83, + 4.5 + ], + [ + -67.84, + 4.51 + ], + [ + -67.84, + 4.56 + ], + [ + -67.84, + 4.57 + ], + [ + -67.84, + 4.58 + ], + [ + -67.84, + 4.59 + ], + [ + -67.83, + 4.63 + ], + [ + -67.84, + 4.65 + ], + [ + -67.84, + 4.67 + ], + [ + -67.82, + 4.73 + ], + [ + -67.83, + 4.77 + ], + [ + -67.82, + 4.8 + ], + [ + -67.82, + 4.83 + ], + [ + -67.82, + 4.84 + ], + [ + -67.83, + 4.87 + ], + [ + -67.84, + 4.89 + ], + [ + -67.84, + 4.92 + ], + [ + -67.84, + 4.93 + ], + [ + -67.83, + 4.96 + ], + [ + -67.82, + 4.97 + ], + [ + -67.82, + 5.03 + ], + [ + -67.82, + 5.07 + ], + [ + -67.84, + 5.11 + ], + [ + -67.85, + 5.15 + ], + [ + -67.83, + 5.24 + ], + [ + -67.79, + 5.18 + ], + [ + -67.83, + 5.27 + ], + [ + -67.84, + 5.31 + ], + [ + -67.84, + 5.32 + ], + [ + -67.72, + 5.41 + ], + [ + -67.68, + 5.43 + ], + [ + -67.65, + 5.45 + ], + [ + -67.62, + 5.5 + ], + [ + -67.62, + 5.51 + ], + [ + -67.61, + 5.56 + ], + [ + -67.62, + 5.57 + ], + [ + -67.62, + 5.58 + ], + [ + -67.62, + 5.6 + ], + [ + -67.63, + 5.63 + ], + [ + -67.63, + 5.64 + ], + [ + -67.64, + 5.65 + ], + [ + -67.64, + 5.66 + ], + [ + -67.62, + 5.74 + ], + [ + -67.62, + 5.76 + ], + [ + -67.52, + 5.9 + ], + [ + -67.51, + 5.9 + ], + [ + -67.47, + 5.92 + ], + [ + -67.47, + 5.95 + ], + [ + -67.47, + 5.96 + ], + [ + -67.4, + 5.97 + ], + [ + -67.42, + 6.02 + ], + [ + -67.43, + 6.04 + ], + [ + -67.45, + 6.05 + ], + [ + -67.46, + 6.06 + ], + [ + -67.49, + 6.16 + ], + [ + -67.43, + 6.18 + ], + [ + -67.43, + 6.23 + ], + [ + -67.46, + 6.19 + ], + [ + -67.48, + 6.22 + ], + [ + -67.51, + 6.23 + ], + [ + -67.52, + 6.24 + ], + [ + -67.54, + 6.26 + ], + [ + -67.57, + 6.26 + ], + [ + -67.6, + 6.27 + ], + [ + -67.69, + 6.29 + ], + [ + -67.7, + 6.29 + ], + [ + -67.72, + 6.3 + ], + [ + -67.73, + 6.3 + ], + [ + -67.76, + 6.29 + ], + [ + -67.77, + 6.3 + ], + [ + -67.81, + 6.32 + ], + [ + -67.83, + 6.32 + ], + [ + -67.84, + 6.32 + ], + [ + -67.85, + 6.3 + ], + [ + -67.88, + 6.28 + ], + [ + -67.91, + 6.26 + ], + [ + -67.92, + 6.25 + ], + [ + -67.93, + 6.24 + ], + [ + -67.94, + 6.23 + ], + [ + -67.95, + 6.23 + ], + [ + -67.97, + 6.23 + ], + [ + -67.97, + 6.22 + ], + [ + -67.98, + 6.21 + ], + [ + -68.05, + 6.21 + ], + [ + -68.07, + 6.22 + ], + [ + -68.09, + 6.23 + ], + [ + -68.11, + 6.23 + ], + [ + -68.16, + 6.22 + ], + [ + -68.17, + 6.22 + ], + [ + -68.18, + 6.21 + ], + [ + -68.2, + 6.21 + ], + [ + -68.25, + 6.2 + ], + [ + -68.26, + 6.19 + ], + [ + -68.27, + 6.18 + ], + [ + -68.28, + 6.18 + ], + [ + -68.29, + 6.17 + ], + [ + -68.35, + 6.17 + ], + [ + -68.36, + 6.18 + ], + [ + -68.37, + 6.18 + ], + [ + -68.38, + 6.19 + ], + [ + -68.44, + 6.18 + ], + [ + -68.46, + 6.19 + ], + [ + -68.48, + 6.18 + ], + [ + -68.51, + 6.18 + ], + [ + -68.52, + 6.16 + ], + [ + -68.53, + 6.15 + ], + [ + -68.54, + 6.15 + ], + [ + -68.55, + 6.15 + ], + [ + -68.57, + 6.16 + ], + [ + -68.58, + 6.17 + ], + [ + -68.61, + 6.16 + ], + [ + -68.62, + 6.14 + ], + [ + -68.63, + 6.13 + ], + [ + -68.64, + 6.13 + ], + [ + -68.69, + 6.14 + ], + [ + -68.74, + 6.16 + ], + [ + -68.78, + 6.15 + ], + [ + -68.8, + 6.15 + ], + [ + -68.81, + 6.17 + ], + [ + -68.82, + 6.18 + ], + [ + -68.84, + 6.18 + ], + [ + -68.85, + 6.18 + ], + [ + -68.86, + 6.17 + ], + [ + -68.9, + 6.17 + ], + [ + -68.91, + 6.18 + ], + [ + -68.96, + 6.19 + ], + [ + -68.99, + 6.19 + ], + [ + -69, + 6.19 + ], + [ + -69.02, + 6.2 + ], + [ + -69.03, + 6.21 + ], + [ + -69.03, + 6.22 + ], + [ + -69.05, + 6.22 + ], + [ + -69.07, + 6.22 + ], + [ + -69.09, + 6.21 + ], + [ + -69.1, + 6.19 + ], + [ + -69.14, + 6.17 + ], + [ + -69.14, + 6.16 + ], + [ + -69.15, + 6.15 + ], + [ + -69.18, + 6.14 + ], + [ + -69.19, + 6.13 + ], + [ + -69.21, + 6.12 + ], + [ + -69.21, + 6.11 + ], + [ + -69.23, + 6.08 + ], + [ + -69.24, + 6.08 + ], + [ + -69.27, + 6.08 + ], + [ + -69.28, + 6.08 + ], + [ + -69.3, + 6.09 + ], + [ + -69.31, + 6.09 + ], + [ + -69.32, + 6.1 + ], + [ + -69.32, + 6.12 + ], + [ + -69.33, + 6.13 + ], + [ + -69.38, + 6.12 + ], + [ + -69.39, + 6.12 + ], + [ + -69.41, + 6.12 + ], + [ + -69.42, + 6.11 + ], + [ + -70.12, + 6.98 + ], + [ + -70.55, + 7.08 + ], + [ + -70.56, + 7.08 + ], + [ + -70.64, + 7.07 + ], + [ + -70.65, + 7.08 + ], + [ + -70.68, + 7.1 + ], + [ + -70.69, + 7.1 + ], + [ + -70.71, + 7.09 + ], + [ + -70.77, + 7.09 + ], + [ + -70.78, + 7.08 + ], + [ + -70.81, + 7.08 + ], + [ + -70.82, + 7.08 + ], + [ + -71.24, + 7.02 + ], + [ + -71.24, + 7.01 + ], + [ + -71.3, + 7.03 + ], + [ + -71.32, + 7.02 + ], + [ + -71.34, + 7.02 + ], + [ + -71.35, + 7.02 + ], + [ + -71.36, + 7.02 + ], + [ + -71.37, + 7.02 + ], + [ + -71.38, + 7.02 + ], + [ + -71.39, + 7.04 + ], + [ + -71.4, + 7.04 + ], + [ + -71.43, + 7.04 + ], + [ + -71.43, + 7.03 + ], + [ + -71.45, + 7.02 + ], + [ + -71.47, + 7.01 + ], + [ + -71.48, + 7.03 + ], + [ + -71.56, + 7.03 + ], + [ + -71.58, + 7.02 + ], + [ + -71.59, + 7.02 + ], + [ + -71.59, + 7.04 + ], + [ + -71.58, + 7.05 + ], + [ + -71.6, + 7.05 + ], + [ + -71.62, + 7.05 + ], + [ + -71.63, + 7.06 + ], + [ + -71.65, + 7.05 + ], + [ + -71.66, + 7.04 + ], + [ + -71.67, + 7.04 + ], + [ + -71.68, + 7.04 + ], + [ + -71.71, + 7.03 + ], + [ + -71.72, + 7.04 + ], + [ + -71.73, + 7.06 + ], + [ + -71.74, + 7.06 + ], + [ + -71.79, + 7.06 + ], + [ + -71.82, + 7.06 + ], + [ + -71.83, + 7.05 + ], + [ + -71.82, + 7.04 + ], + [ + -71.83, + 7.03 + ], + [ + -71.85, + 7.03 + ], + [ + -71.86, + 7.03 + ], + [ + -71.9, + 7.02 + ], + [ + -71.98, + 7.02 + ], + [ + -72.04, + 7.04 + ], + [ + -72.05, + 7.04 + ], + [ + -72.2, + 7.38 + ], + [ + -72.44, + 7.4 + ], + [ + -72.45, + 7.86 + ], + [ + -72.46, + 7.91 + ], + [ + -72.43, + 7.99 + ], + [ + -72.42, + 7.99 + ], + [ + -72.42, + 8.01 + ], + [ + -72.42, + 8.02 + ], + [ + -72.36, + 8.17 + ], + [ + -72.38, + 8.21 + ], + [ + -72.39, + 8.34 + ], + [ + -72.4, + 8.34 + ], + [ + -72.41, + 8.37 + ], + [ + -72.41, + 8.38 + ], + [ + -72.66, + 8.61 + ], + [ + -72.77, + 9.08 + ], + [ + -72.77, + 9.09 + ], + [ + -72.88, + 9.13 + ], + [ + -72.88, + 9.12 + ], + [ + -72.9, + 9.1 + ], + [ + -72.91, + 9.1 + ], + [ + -72.95, + 9.11 + ], + [ + -72.97, + 9.21 + ], + [ + -72.99, + 9.23 + ], + [ + -73.35, + 9.19 + ], + [ + -72.95, + 9.84 + ], + [ + -72.89, + 10.45 + ], + [ + -72.65, + 10.88 + ], + [ + -72.45, + 11.12 + ], + [ + -72.25, + 11.14 + ], + [ + -71.97, + 11.65 + ], + [ + -71.38, + 11.81 + ], + [ + -71.97, + 11.55 + ], + [ + -71.88, + 11.22 + ], + [ + -71.6, + 11 + ], + [ + -71.82, + 10.99 + ], + [ + -71.58, + 10.7 + ], + [ + -71.63, + 10.44 + ], + [ + -72.13, + 9.81 + ], + [ + -72.01, + 9.46 + ], + [ + -71.72, + 9.38 + ], + [ + -71.82, + 9.23 + ], + [ + -71.7, + 9.06 + ], + [ + -71.34, + 9.09 + ], + [ + -71.06, + 9.32 + ], + [ + -71.03, + 9.71 + ], + [ + -71.59, + 10.79 + ], + [ + -71.43, + 10.8 + ], + [ + -71.45, + 10.97 + ], + [ + -70.05, + 11.44 + ], + [ + -70.14, + 11.56 + ], + [ + -69.75, + 11.46 + ], + [ + -69.81, + 11.69 + ], + [ + -70.24, + 11.63 + ], + [ + -70.29, + 11.9 + ], + [ + -70.02, + 12.2 + ], + [ + -69.63, + 11.47 + ], + [ + -69.26, + 11.53 + ], + [ + -68.66, + 11.35 + ], + [ + -68.22, + 10.89 + ], + [ + -68.33, + 10.85 + ], + [ + -68.24, + 10.58 + ], + [ + -67.93, + 10.45 + ], + [ + -66.24, + 10.65 + ], + [ + -66.05, + 10.58 + ], + [ + -65.87, + 10.23 + ], + [ + -65.08, + 10.04 + ], + [ + -64.19, + 10.48 + ], + [ + -63.64, + 10.49 + ], + [ + -64.02, + 10.59 + ], + [ + -64.23, + 10.5 + ], + [ + -64.26, + 10.66 + ], + [ + -61.86, + 10.75 + ], + [ + -62.35, + 10.53 + ], + [ + -62.67, + 10.59 + ], + [ + -62.97, + 10.53 + ], + [ + -63.04, + 10.45 + ], + [ + -62.85, + 10.53 + ], + [ + -62.82, + 10.42 + ], + [ + -63.03, + 10.44 + ], + [ + -63.01, + 10.31 + ], + [ + -62.91, + 10.27 + ], + [ + -62.95, + 10.4 + ], + [ + -62.73, + 10.38 + ], + [ + -62.83, + 10.37 + ], + [ + -62.69, + 10.33 + ], + [ + -62.62, + 10.12 + ], + [ + -62.79, + 10.03 + ], + [ + -62.61, + 10.1 + ], + [ + -62.62, + 10.23 + ], + [ + -62.54, + 10.21 + ], + [ + -62.33, + 9.8 + ], + [ + -62.2, + 10.02 + ], + [ + -61.82, + 9.76 + ], + [ + -61.58, + 9.8 + ], + [ + -61.64, + 9.9 + ], + [ + -60.88, + 9.47 + ], + [ + -60.78, + 9.32 + ], + [ + -61, + 9.18 + ], + [ + -60.75, + 9.22 + ], + [ + -60.89, + 8.82 + ], + [ + -60.85, + 8.71 + ], + [ + -60.68, + 8.79 + ], + [ + -61, + 8.56 + ], + [ + -60.18, + 8.63 + ], + [ + -59.99, + 8.53 + ] + ], + [ + [ + -62.67, + 7.28 + ], + [ + -62.56, + 7.54 + ], + [ + -62.72, + 7.67 + ], + [ + -62.52, + 7.8 + ], + [ + -63.06, + 7.76 + ], + [ + -63.08, + 7.49 + ], + [ + -62.97, + 7.39 + ], + [ + -62.91, + 7.49 + ], + [ + -62.85, + 7.32 + ], + [ + -63.06, + 7.08 + ], + [ + -63.2, + 7.19 + ], + [ + -63.23, + 7.06 + ], + [ + -62.95, + 6.9 + ], + [ + -63.43, + 6.73 + ], + [ + -62.84, + 6.86 + ], + [ + -62.93, + 6.97 + ], + [ + -62.69, + 7.1 + ], + [ + -62.8, + 7.19 + ], + [ + -62.67, + 7.28 + ] + ], + [ + [ + -67.1, + 6.66 + ], + [ + -67.17, + 6.46 + ], + [ + -67.01, + 6.88 + ], + [ + -67.08, + 7.04 + ], + [ + -66.86, + 7.19 + ], + [ + -67.06, + 7.16 + ], + [ + -67.09, + 7.04 + ], + [ + -67.03, + 6.88 + ], + [ + -67.1, + 6.66 + ] + ], + [ + [ + -66.36, + 7.62 + ], + [ + -65.8, + 7.71 + ], + [ + -66.33, + 7.67 + ], + [ + -66.45, + 7.54 + ], + [ + -66.36, + 7.62 + ] + ], + [ + [ + -65.33, + 7.89 + ], + [ + -64.91, + 7.6 + ], + [ + -64.72, + 7.71 + ], + [ + -65.33, + 7.89 + ] + ], + [ + [ + -63.68, + 8.17 + ], + [ + -63.97, + 7.95 + ], + [ + -64.3, + 8.1 + ], + [ + -64.56, + 8 + ], + [ + -64.6, + 7.9 + ], + [ + -64.46, + 7.8 + ], + [ + -64.5, + 7.99 + ], + [ + -64.27, + 8.08 + ], + [ + -63.95, + 7.93 + ], + [ + -63.68, + 8.17 + ] + ], + [ + [ + -63.51, + 8.15 + ], + [ + -63.43, + 8.22 + ], + [ + -63.61, + 8.12 + ], + [ + -63.51, + 8.15 + ] + ], + [ + [ + -62.93, + 8.32 + ], + [ + -63.14, + 8.36 + ], + [ + -63.41, + 8.19 + ], + [ + -62.8, + 8.28 + ], + [ + -62.93, + 8.32 + ] + ], + [ + [ + -62.81, + 8.41 + ], + [ + -62.8, + 8.31 + ], + [ + -62.69, + 8.36 + ], + [ + -62.81, + 8.41 + ] + ], + [ + [ + -62.53, + 8.46 + ], + [ + -62.41, + 8.54 + ], + [ + -62.69, + 8.36 + ], + [ + -62.53, + 8.46 + ] + ], + [ + [ + -61.43, + 8.6 + ], + [ + -61.57, + 8.57 + ], + [ + -61.3, + 8.58 + ], + [ + -61.43, + 8.6 + ] + ], + [ + [ + -62.14, + 8.6 + ], + [ + -62.23, + 8.64 + ], + [ + -62.16, + 8.69 + ], + [ + -62.14, + 8.62 + ], + [ + -62.12, + 8.68 + ], + [ + -61.96, + 8.67 + ], + [ + -62.12, + 8.74 + ], + [ + -62.24, + 8.65 + ], + [ + -62.25, + 8.59 + ], + [ + -62.14, + 8.6 + ] + ], + [ + [ + -61.76, + 8.58 + ], + [ + -61.57, + 8.55 + ], + [ + -61.87, + 8.61 + ], + [ + -61.76, + 8.58 + ] + ], + [ + [ + -67.73, + 10.27 + ], + [ + -67.88, + 10.1 + ], + [ + -67.6, + 10.1 + ], + [ + -67.73, + 10.27 + ] + ] + ], + [ + [ + [ + -67.83, + 5.26 + ], + [ + -67.84, + 5.27 + ], + [ + -67.83, + 5.27 + ], + [ + -67.83, + 5.26 + ] + ] + ], + [ + [ + [ + -63.89, + 10.9 + ], + [ + -64.17, + 10.98 + ], + [ + -63.88, + 11.18 + ], + [ + -63.78, + 11 + ], + [ + -63.89, + 10.9 + ] + ] + ], + [ + [ + [ + -62.73, + 10.39 + ], + [ + -62.81, + 10.5 + ], + [ + -62.67, + 10.31 + ], + [ + -62.73, + 10.39 + ] + ] + ] + ] + }, + "properties": { + "A3": "VEN" + } + }, + { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + 30.85, + 3.5 + ], + [ + 30.85, + 3.49 + ], + [ + 30.86, + 3.49 + ], + [ + 30.87, + 3.49 + ], + [ + 30.87, + 3.5 + ], + [ + 30.87, + 3.51 + ], + [ + 30.87, + 3.52 + ], + [ + 30.88, + 3.52 + ], + [ + 30.88, + 3.53 + ], + [ + 30.88, + 3.54 + ], + [ + 30.89, + 3.54 + ], + [ + 30.89, + 3.55 + ], + [ + 31.17, + 3.8 + ], + [ + 31.52, + 3.64 + ], + [ + 31.8, + 3.82 + ], + [ + 31.98, + 3.58 + ], + [ + 31.99, + 3.57 + ], + [ + 32, + 3.58 + ], + [ + 32.01, + 3.58 + ], + [ + 32.02, + 3.58 + ], + [ + 32.2, + 3.51 + ], + [ + 32.42, + 3.75 + ], + [ + 33.03, + 3.89 + ], + [ + 33.51, + 3.75 + ], + [ + 33.99, + 4.23 + ], + [ + 34.09, + 3.86 + ], + [ + 34.46, + 3.67 + ], + [ + 34.4, + 3.37 + ], + [ + 34.59, + 2.99 + ], + [ + 34.59, + 2.98 + ], + [ + 34.95, + 2.47 + ], + [ + 34.99, + 1.66 + ], + [ + 34.81, + 1.23 + ], + [ + 34.52, + 1.1 + ], + [ + 34.01, + 0.25 + ], + [ + 33.79, + 0.16 + ], + [ + 33.71, + 0.28 + ], + [ + 33.73, + 0.31 + ], + [ + 33.71, + 0.28 + ], + [ + 33.55, + 0.18 + ], + [ + 33.44, + 0.38 + ], + [ + 33.35, + 0.31 + ], + [ + 33.27, + 0.48 + ], + [ + 33, + 0.1 + ], + [ + 32.87, + 0.2 + ], + [ + 32.7, + 0.08 + ], + [ + 32.7, + 0.3 + ], + [ + 32.56, + 0.07 + ], + [ + 32.3, + 0.02 + ], + [ + 32.21, + -0.02 + ], + [ + 31.93, + -0.13 + ], + [ + 32.05, + -0.31 + ], + [ + 31.68, + -0.83 + ], + [ + 31.78, + -1 + ], + [ + 30.78, + -0.99 + ], + [ + 30.76, + -0.99 + ], + [ + 30.47, + -1.06 + ], + [ + 29.93, + -1.48 + ], + [ + 29.82, + -1.31 + ], + [ + 29.59, + -1.39 + ], + [ + 29.69, + -0.45 + ], + [ + 29.9, + -0.22 + ], + [ + 29.73, + -0.08 + ], + [ + 29.88, + 0.39 + ], + [ + 29.88, + 0.4 + ], + [ + 30.01, + 0.85 + ], + [ + 30.02, + 0.86 + ], + [ + 30.08, + 0.88 + ], + [ + 30.14, + 0.89 + ], + [ + 30.15, + 0.89 + ], + [ + 30.17, + 0.92 + ], + [ + 30.17, + 0.93 + ], + [ + 30.19, + 0.96 + ], + [ + 30.2, + 0.97 + ], + [ + 30.21, + 0.98 + ], + [ + 30.22, + 0.98 + ], + [ + 30.22, + 0.99 + ], + [ + 30.23, + 1.01 + ], + [ + 30.23, + 1.05 + ], + [ + 30.23, + 1.06 + ], + [ + 30.24, + 1.12 + ], + [ + 30.23, + 1.13 + ], + [ + 30.25, + 1.14 + ], + [ + 30.26, + 1.15 + ], + [ + 30.28, + 1.16 + ], + [ + 30.35, + 1.19 + ], + [ + 30.47, + 1.21 + ], + [ + 30.63, + 1.02 + ], + [ + 30.94, + 1.52 + ], + [ + 31.29, + 1.67 + ], + [ + 31.42, + 1.92 + ], + [ + 31.39, + 2.28 + ], + [ + 31.28, + 2.18 + ], + [ + 30.74, + 2.45 + ], + [ + 30.89, + 2.86 + ], + [ + 30.77, + 3.05 + ], + [ + 30.94, + 3.4 + ], + [ + 30.94, + 3.51 + ], + [ + 30.87, + 3.48 + ], + [ + 30.85, + 3.49 + ], + [ + 30.85, + 3.5 + ] + ], + [ + [ + 33, + 2.08 + ], + [ + 33.02, + 1.93 + ], + [ + 33.16, + 1.93 + ], + [ + 33, + 2.08 + ] + ], + [ + [ + 33.09, + 1.67 + ], + [ + 33, + 1.53 + ], + [ + 32.56, + 1.49 + ], + [ + 32.83, + 1.82 + ], + [ + 33, + 1.7 + ], + [ + 32.96, + 1.91 + ], + [ + 32.34, + 1.58 + ], + [ + 32.61, + 1.36 + ], + [ + 32.96, + 1.43 + ], + [ + 33.23, + 1.19 + ], + [ + 33.46, + 1.41 + ], + [ + 33.18, + 1.41 + ], + [ + 33.28, + 1.49 + ], + [ + 33.08, + 1.54 + ], + [ + 33.49, + 1.67 + ], + [ + 33.41, + 1.8 + ], + [ + 33.27, + 1.63 + ], + [ + 33.09, + 1.67 + ] + ], + [ + [ + 34.01, + 1.71 + ], + [ + 33.84, + 1.67 + ], + [ + 33.97, + 1.6 + ], + [ + 34.01, + 1.71 + ] + ], + [ + [ + 30.28, + -0.02 + ], + [ + 30.12, + 0.04 + ], + [ + 30.19, + -0.1 + ], + [ + 30.28, + -0.02 + ] + ], + [ + [ + 31.9, + 0.41 + ], + [ + 31.79, + 0.22 + ], + [ + 32.01, + 0.35 + ], + [ + 31.9, + 0.41 + ] + ] + ], + [ + [ + [ + 32.76, + 0 + ], + [ + 32.83, + -0.1 + ], + [ + 32.7, + -0.12 + ], + [ + 32.76, + 0 + ] + ] + ], + [ + [ + [ + 32.05, + -0.26 + ], + [ + 32.34, + -0.35 + ], + [ + 32.28, + -0.48 + ], + [ + 32.05, + -0.26 + ] + ] + ], + [ + [ + [ + 33.35, + 0.31 + ], + [ + 33.31, + 0.1 + ], + [ + 33.2, + 0.31 + ], + [ + 33.35, + 0.31 + ] + ] + ] + ] + }, + "properties": { + "A3": "UGA" + } + }, + { + "type": "Feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + -61.23, + 14.8 + ], + [ + -60.87, + 14.77 + ], + [ + -60.84, + 14.41 + ], + [ + -61.08, + 14.47 + ], + [ + -61, + 14.61 + ], + [ + -61.23, + 14.8 + ] + ] + ] + }, + "properties": { + "A3": "MTQ" + } + }, + { + "type": "Feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + -57.18, + 5.59 + ], + [ + -57.19, + 5.57 + ], + [ + -57.2, + 5.54 + ], + [ + -57.21, + 5.53 + ], + [ + -57.23, + 5.51 + ], + [ + -57.24, + 5.5 + ], + [ + -57.25, + 5.49 + ], + [ + -57.27, + 5.38 + ], + [ + -57.28, + 5.37 + ], + [ + -57.3, + 5.36 + ], + [ + -57.31, + 5.35 + ], + [ + -57.33, + 5.34 + ], + [ + -57.34, + 5.33 + ], + [ + -57.33, + 5.32 + ], + [ + -57.32, + 5.32 + ], + [ + -57.3, + 5.33 + ], + [ + -57.28, + 5.23 + ], + [ + -57.27, + 5.22 + ], + [ + -57.27, + 5.25 + ], + [ + -57.27, + 5.27 + ], + [ + -57.26, + 5.27 + ], + [ + -57.23, + 5.27 + ], + [ + -57.22, + 5.26 + ], + [ + -57.21, + 5.22 + ], + [ + -57.18, + 5.2 + ], + [ + -57.18, + 5.17 + ], + [ + -57.19, + 5.16 + ], + [ + -57.19, + 5.15 + ], + [ + -57.21, + 5.15 + ], + [ + -57.24, + 5.17 + ], + [ + -57.26, + 5.18 + ], + [ + -57.28, + 5.18 + ], + [ + -57.3, + 5.17 + ], + [ + -57.31, + 5.1 + ], + [ + -57.32, + 5.08 + ], + [ + -57.32, + 5.06 + ], + [ + -57.3, + 5.05 + ], + [ + -57.28, + 5.03 + ], + [ + -57.32, + 5.03 + ], + [ + -57.34, + 5.03 + ], + [ + -57.35, + 5.01 + ], + [ + -57.38, + 5.01 + ], + [ + -57.41, + 4.99 + ], + [ + -57.42, + 4.99 + ], + [ + -57.44, + 4.99 + ], + [ + -57.47, + 4.99 + ], + [ + -57.49, + 4.99 + ], + [ + -57.5, + 4.99 + ], + [ + -57.51, + 4.99 + ], + [ + -57.52, + 5.01 + ], + [ + -57.53, + 5.01 + ], + [ + -57.55, + 5.01 + ], + [ + -57.92, + 4.83 + ], + [ + -57.84, + 4.65 + ], + [ + -58.04, + 4 + ], + [ + -57.65, + 3.36 + ], + [ + -57.3, + 3.38 + ], + [ + -57.21, + 2.85 + ], + [ + -56.69, + 2.03 + ], + [ + -56.47, + 1.95 + ], + [ + -56.8, + 1.85 + ], + [ + -57.31, + 2 + ], + [ + -57.54, + 1.7 + ], + [ + -57.99, + 1.66 + ], + [ + -58, + 1.5 + ], + [ + -58.32, + 1.6 + ], + [ + -58.51, + 1.46 + ], + [ + -58.5, + 1.27 + ], + [ + -58.83, + 1.17 + ], + [ + -59.69, + 1.76 + ], + [ + -59.8, + 2.29 + ], + [ + -59.98, + 2.93 + ], + [ + -59.8, + 3.36 + ], + [ + -59.87, + 3.58 + ], + [ + -59.52, + 3.94 + ], + [ + -59.73, + 4.18 + ], + [ + -59.67, + 4.38 + ], + [ + -60.16, + 4.52 + ], + [ + -60.02, + 5.09 + ], + [ + -60.03, + 5.1 + ], + [ + -60.05, + 5.12 + ], + [ + -60.06, + 5.12 + ], + [ + -60.06, + 5.13 + ], + [ + -60.06, + 5.14 + ], + [ + -60.1, + 5.14 + ], + [ + -60.11, + 5.19 + ], + [ + -60.19, + 5.25 + ], + [ + -60.21, + 5.28 + ], + [ + -60.22, + 5.28 + ], + [ + -60.74, + 5.2 + ], + [ + -60.74, + 5.19 + ], + [ + -61.41, + 5.97 + ], + [ + -61.12, + 6.19 + ], + [ + -61.23, + 6.57 + ], + [ + -61.14, + 6.72 + ], + [ + -60.37, + 6.94 + ], + [ + -60.29, + 7.13 + ], + [ + -60.55, + 7.13 + ], + [ + -60.72, + 7.54 + ], + [ + -60.54, + 7.82 + ], + [ + -60.03, + 8.03 + ], + [ + -59.82, + 8.32 + ], + [ + -59.99, + 8.53 + ], + [ + -59.12, + 8.03 + ], + [ + -58.48, + 7.34 + ], + [ + -58.6, + 6.32 + ], + [ + -58.42, + 6.86 + ], + [ + -58.02, + 6.8 + ], + [ + -57.58, + 6.38 + ], + [ + -57.62, + 6.16 + ], + [ + -57.48, + 6.34 + ], + [ + -57.18, + 6.11 + ], + [ + -57.17, + 5.6 + ], + [ + -57.18, + 5.59 + ] + ] + ] + }, + "properties": { + "A3": "GUY" + } + }, + { + "type": "Feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + 3.37, + 51.37 + ], + [ + 3.37, + 51.36 + ], + [ + 3.37, + 51.35 + ], + [ + 3.38, + 51.34 + ], + [ + 3.38, + 51.33 + ], + [ + 3.37, + 51.33 + ], + [ + 3.37, + 51.32 + ], + [ + 3.36, + 51.32 + ], + [ + 3.38, + 51.3 + ], + [ + 3.37, + 51.3 + ], + [ + 3.38, + 51.29 + ], + [ + 3.38, + 51.28 + ], + [ + 3.38, + 51.27 + ], + [ + 3.39, + 51.27 + ], + [ + 3.4, + 51.27 + ], + [ + 3.4, + 51.26 + ], + [ + 3.41, + 51.26 + ], + [ + 3.42, + 51.26 + ], + [ + 3.42, + 51.25 + ], + [ + 3.43, + 51.25 + ], + [ + 3.43, + 51.24 + ], + [ + 3.43, + 51.25 + ], + [ + 3.44, + 51.24 + ], + [ + 3.45, + 51.24 + ], + [ + 3.46, + 51.24 + ], + [ + 3.47, + 51.24 + ], + [ + 3.48, + 51.24 + ], + [ + 3.49, + 51.24 + ], + [ + 3.51, + 51.24 + ], + [ + 3.51, + 51.25 + ], + [ + 3.52, + 51.25 + ], + [ + 3.53, + 51.25 + ], + [ + 3.52, + 51.26 + ], + [ + 3.52, + 51.27 + ], + [ + 3.52, + 51.28 + ], + [ + 3.52, + 51.29 + ], + [ + 3.53, + 51.29 + ], + [ + 3.53, + 51.28 + ], + [ + 3.54, + 51.28 + ], + [ + 3.54, + 51.29 + ], + [ + 3.56, + 51.29 + ], + [ + 3.56, + 51.3 + ], + [ + 3.57, + 51.29 + ], + [ + 3.58, + 51.29 + ], + [ + 3.59, + 51.29 + ], + [ + 3.58, + 51.3 + ], + [ + 3.59, + 51.3 + ], + [ + 3.59, + 51.31 + ], + [ + 3.59, + 51.3 + ], + [ + 3.61, + 51.3 + ], + [ + 3.63, + 51.29 + ], + [ + 3.64, + 51.29 + ], + [ + 3.68, + 51.28 + ], + [ + 3.69, + 51.28 + ], + [ + 3.7, + 51.27 + ], + [ + 3.71, + 51.27 + ], + [ + 3.72, + 51.27 + ], + [ + 3.73, + 51.27 + ], + [ + 3.74, + 51.27 + ], + [ + 3.75, + 51.27 + ], + [ + 3.76, + 51.27 + ], + [ + 3.76, + 51.26 + ], + [ + 3.77, + 51.26 + ], + [ + 3.78, + 51.26 + ], + [ + 3.79, + 51.26 + ], + [ + 3.8, + 51.26 + ], + [ + 3.79, + 51.25 + ], + [ + 3.79, + 51.23 + ], + [ + 3.79, + 51.22 + ], + [ + 3.8, + 51.21 + ], + [ + 3.86, + 51.21 + ], + [ + 3.91, + 51.21 + ], + [ + 3.92, + 51.21 + ], + [ + 3.94, + 51.21 + ], + [ + 3.95, + 51.22 + ], + [ + 3.96, + 51.22 + ], + [ + 3.97, + 51.22 + ], + [ + 3.97, + 51.23 + ], + [ + 4.07, + 51.25 + ], + [ + 4.09, + 51.26 + ], + [ + 4.1, + 51.26 + ], + [ + 4.12, + 51.27 + ], + [ + 4.13, + 51.28 + ], + [ + 4.14, + 51.28 + ], + [ + 4.15, + 51.29 + ], + [ + 4.16, + 51.29 + ], + [ + 4.23, + 51.35 + ], + [ + 4.24, + 51.37 + ], + [ + 4.28, + 51.38 + ], + [ + 4.3, + 51.38 + ], + [ + 4.31, + 51.38 + ], + [ + 4.38, + 51.45 + ], + [ + 4.45, + 51.47 + ], + [ + 4.61, + 51.43 + ], + [ + 4.62, + 51.43 + ], + [ + 4.73, + 51.49 + ], + [ + 4.83, + 51.48 + ], + [ + 4.84, + 51.48 + ], + [ + 4.82, + 51.42 + ], + [ + 4.93, + 51.4 + ], + [ + 5.04, + 51.49 + ], + [ + 5.13, + 51.32 + ], + [ + 5.62, + 51.21 + ], + [ + 5.63, + 51.21 + ], + [ + 5.67, + 51.19 + ], + [ + 5.84, + 51.15 + ], + [ + 5.83, + 51.13 + ], + [ + 5.81, + 51.11 + ], + [ + 5.8, + 51.09 + ], + [ + 5.8, + 51.08 + ], + [ + 5.8, + 51.06 + ], + [ + 5.77, + 51.06 + ], + [ + 5.77, + 51.05 + ], + [ + 5.76, + 51.03 + ], + [ + 5.75, + 50.99 + ], + [ + 5.75, + 50.98 + ], + [ + 5.73, + 50.97 + ], + [ + 5.72, + 50.96 + ], + [ + 5.73, + 50.96 + ], + [ + 5.74, + 50.96 + ], + [ + 5.76, + 50.96 + ], + [ + 5.76, + 50.95 + ], + [ + 5.73, + 50.93 + ], + [ + 5.7, + 50.91 + ], + [ + 5.7, + 50.9 + ], + [ + 5.68, + 50.89 + ], + [ + 5.67, + 50.88 + ], + [ + 5.67, + 50.82 + ], + [ + 5.68, + 50.81 + ], + [ + 5.69, + 50.76 + ], + [ + 5.68, + 50.76 + ], + [ + 6.02, + 50.75 + ], + [ + 6.2, + 50.66 + ], + [ + 6.41, + 50.34 + ], + [ + 6.14, + 50.13 + ], + [ + 5.97, + 50.17 + ], + [ + 5.78, + 49.88 + ], + [ + 5.8, + 49.78 + ], + [ + 5.82, + 49.75 + ], + [ + 5.84, + 49.72 + ], + [ + 5.85, + 49.72 + ], + [ + 5.86, + 49.73 + ], + [ + 5.82, + 49.55 + ], + [ + 5.79, + 49.56 + ], + [ + 5.78, + 49.56 + ], + [ + 5.47, + 49.5 + ], + [ + 4.86, + 49.86 + ], + [ + 4.83, + 50.15 + ], + [ + 4.52, + 49.95 + ], + [ + 4.35, + 49.95 + ], + [ + 4.14, + 49.98 + ], + [ + 4.2, + 50.11 + ], + [ + 4.11, + 50.3 + ], + [ + 3.67, + 50.4 + ], + [ + 3.63, + 50.48 + ], + [ + 3.62, + 50.49 + ], + [ + 3.5, + 50.53 + ], + [ + 3.49, + 50.53 + ], + [ + 3.29, + 50.53 + ], + [ + 3.12, + 50.79 + ], + [ + 3.01, + 50.77 + ], + [ + 3, + 50.76 + ], + [ + 2.97, + 50.75 + ], + [ + 2.96, + 50.75 + ], + [ + 2.94, + 50.74 + ], + [ + 2.9, + 50.69 + ], + [ + 2.9, + 50.7 + ], + [ + 2.87, + 50.71 + ], + [ + 2.86, + 50.71 + ], + [ + 2.55, + 51.09 + ], + [ + 3.37, + 51.37 + ] + ] + ] + }, + "properties": { + "A3": "BEL" + } + }, + { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + -77.89, + 7.22 + ], + [ + -77.73, + 7.7 + ], + [ + -77.56, + 7.51 + ], + [ + -77.33, + 7.89 + ], + [ + -77.14, + 7.95 + ], + [ + -77.45, + 8.47 + ], + [ + -77.37, + 8.67 + ], + [ + -76.93, + 8.09 + ], + [ + -76.81, + 8.13 + ], + [ + -76.92, + 7.92 + ], + [ + -76.75, + 7.92 + ], + [ + -76.75, + 8.12 + ], + [ + -76.76, + 8.4 + ], + [ + -76.94, + 8.55 + ], + [ + -76.33, + 8.92 + ], + [ + -75.95, + 9.44 + ], + [ + -75.62, + 9.41 + ], + [ + -75.58, + 9.64 + ], + [ + -75.7, + 9.7 + ], + [ + -75.55, + 9.96 + ], + [ + -75.52, + 10.24 + ], + [ + -75.64, + 10.19 + ], + [ + -75.47, + 10.4 + ], + [ + -75.51, + 10.57 + ], + [ + -74.79, + 11.05 + ], + [ + -74.41, + 10.98 + ], + [ + -74.53, + 10.92 + ], + [ + -74.47, + 10.79 + ], + [ + -74.61, + 10.81 + ], + [ + -74.58, + 10.7 + ], + [ + -74.4, + 10.73 + ], + [ + -74.14, + 11.34 + ], + [ + -73.28, + 11.29 + ], + [ + -72.23, + 11.89 + ], + [ + -72.18, + 12.22 + ], + [ + -71.96, + 12.26 + ], + [ + -71.93, + 12.15 + ], + [ + -71.96, + 12.27 + ], + [ + -71.67, + 12.46 + ], + [ + -71.22, + 12.29 + ], + [ + -71.12, + 12.03 + ], + [ + -71.32, + 11.85 + ], + [ + -71.38, + 11.83 + ], + [ + -71.39, + 11.83 + ], + [ + -71.39, + 11.82 + ], + [ + -71.39, + 11.81 + ], + [ + -71.38, + 11.81 + ], + [ + -71.97, + 11.65 + ], + [ + -72.25, + 11.14 + ], + [ + -72.45, + 11.12 + ], + [ + -72.65, + 10.88 + ], + [ + -72.89, + 10.45 + ], + [ + -72.95, + 9.84 + ], + [ + -73.35, + 9.19 + ], + [ + -72.99, + 9.23 + ], + [ + -72.97, + 9.21 + ], + [ + -72.95, + 9.11 + ], + [ + -72.91, + 9.1 + ], + [ + -72.9, + 9.1 + ], + [ + -72.88, + 9.12 + ], + [ + -72.88, + 9.13 + ], + [ + -72.77, + 9.09 + ], + [ + -72.77, + 9.08 + ], + [ + -72.66, + 8.61 + ], + [ + -72.41, + 8.38 + ], + [ + -72.41, + 8.37 + ], + [ + -72.4, + 8.34 + ], + [ + -72.39, + 8.34 + ], + [ + -72.38, + 8.21 + ], + [ + -72.36, + 8.17 + ], + [ + -72.42, + 8.02 + ], + [ + -72.42, + 8.01 + ], + [ + -72.42, + 7.99 + ], + [ + -72.43, + 7.99 + ], + [ + -72.46, + 7.91 + ], + [ + -72.45, + 7.86 + ], + [ + -72.44, + 7.4 + ], + [ + -72.2, + 7.38 + ], + [ + -72.05, + 7.04 + ], + [ + -72.04, + 7.04 + ], + [ + -71.98, + 7.02 + ], + [ + -71.9, + 7.02 + ], + [ + -71.86, + 7.03 + ], + [ + -71.85, + 7.03 + ], + [ + -71.83, + 7.03 + ], + [ + -71.82, + 7.04 + ], + [ + -71.83, + 7.05 + ], + [ + -71.79, + 7.06 + ], + [ + -71.74, + 7.06 + ], + [ + -71.73, + 7.06 + ], + [ + -71.72, + 7.04 + ], + [ + -71.71, + 7.03 + ], + [ + -71.68, + 7.04 + ], + [ + -71.67, + 7.03 + ], + [ + -71.66, + 7.04 + ], + [ + -71.65, + 7.05 + ], + [ + -71.63, + 7.06 + ], + [ + -71.62, + 7.05 + ], + [ + -71.6, + 7.05 + ], + [ + -71.59, + 7.04 + ], + [ + -71.59, + 7.02 + ], + [ + -71.58, + 7.02 + ], + [ + -71.56, + 7.03 + ], + [ + -71.51, + 7.03 + ], + [ + -71.5, + 7.03 + ], + [ + -71.48, + 7.03 + ], + [ + -71.47, + 7.01 + ], + [ + -71.45, + 7.02 + ], + [ + -71.43, + 7.03 + ], + [ + -71.43, + 7.04 + ], + [ + -71.4, + 7.04 + ], + [ + -71.39, + 7.04 + ], + [ + -71.38, + 7.02 + ], + [ + -71.37, + 7.02 + ], + [ + -71.36, + 7.02 + ], + [ + -71.35, + 7.02 + ], + [ + -71.34, + 7.02 + ], + [ + -71.32, + 7.02 + ], + [ + -71.3, + 7.03 + ], + [ + -71.24, + 7.01 + ], + [ + -71.24, + 7.02 + ], + [ + -70.82, + 7.08 + ], + [ + -70.81, + 7.08 + ], + [ + -70.78, + 7.08 + ], + [ + -70.77, + 7.09 + ], + [ + -70.71, + 7.09 + ], + [ + -70.69, + 7.1 + ], + [ + -70.68, + 7.1 + ], + [ + -70.65, + 7.08 + ], + [ + -70.64, + 7.07 + ], + [ + -70.56, + 7.08 + ], + [ + -70.55, + 7.08 + ], + [ + -70.12, + 6.98 + ], + [ + -69.42, + 6.11 + ], + [ + -69.38, + 6.12 + ], + [ + -69.33, + 6.13 + ], + [ + -69.32, + 6.12 + ], + [ + -69.32, + 6.1 + ], + [ + -69.31, + 6.09 + ], + [ + -69.3, + 6.09 + ], + [ + -69.28, + 6.08 + ], + [ + -69.27, + 6.08 + ], + [ + -69.24, + 6.08 + ], + [ + -69.23, + 6.08 + ], + [ + -69.21, + 6.11 + ], + [ + -69.21, + 6.12 + ], + [ + -69.19, + 6.13 + ], + [ + -69.18, + 6.14 + ], + [ + -69.15, + 6.15 + ], + [ + -69.14, + 6.16 + ], + [ + -69.14, + 6.17 + ], + [ + -69.1, + 6.19 + ], + [ + -69.09, + 6.21 + ], + [ + -69.07, + 6.22 + ], + [ + -69.05, + 6.22 + ], + [ + -69.03, + 6.22 + ], + [ + -69.03, + 6.21 + ], + [ + -69.02, + 6.2 + ], + [ + -69, + 6.19 + ], + [ + -68.99, + 6.19 + ], + [ + -68.96, + 6.19 + ], + [ + -68.91, + 6.18 + ], + [ + -68.9, + 6.17 + ], + [ + -68.86, + 6.17 + ], + [ + -68.85, + 6.18 + ], + [ + -68.84, + 6.18 + ], + [ + -68.82, + 6.18 + ], + [ + -68.81, + 6.17 + ], + [ + -68.8, + 6.15 + ], + [ + -68.78, + 6.15 + ], + [ + -68.77, + 6.15 + ], + [ + -68.76, + 6.15 + ], + [ + -68.74, + 6.16 + ], + [ + -68.69, + 6.14 + ], + [ + -68.69, + 6.13 + ], + [ + -68.66, + 6.13 + ], + [ + -68.64, + 6.13 + ], + [ + -68.63, + 6.13 + ], + [ + -68.62, + 6.14 + ], + [ + -68.61, + 6.16 + ], + [ + -68.58, + 6.17 + ], + [ + -68.57, + 6.16 + ], + [ + -68.55, + 6.15 + ], + [ + -68.54, + 6.15 + ], + [ + -68.53, + 6.15 + ], + [ + -68.52, + 6.16 + ], + [ + -68.51, + 6.18 + ], + [ + -68.48, + 6.18 + ], + [ + -68.46, + 6.19 + ], + [ + -68.44, + 6.18 + ], + [ + -68.38, + 6.19 + ], + [ + -68.37, + 6.18 + ], + [ + -68.36, + 6.18 + ], + [ + -68.35, + 6.17 + ], + [ + -68.28, + 6.18 + ], + [ + -68.27, + 6.18 + ], + [ + -68.26, + 6.19 + ], + [ + -68.25, + 6.2 + ], + [ + -68.2, + 6.21 + ], + [ + -68.18, + 6.21 + ], + [ + -68.17, + 6.22 + ], + [ + -68.16, + 6.22 + ], + [ + -68.11, + 6.23 + ], + [ + -68.09, + 6.23 + ], + [ + -68.07, + 6.22 + ], + [ + -68.05, + 6.21 + ], + [ + -68.05, + 6.2 + ], + [ + -68.02, + 6.2 + ], + [ + -67.98, + 6.21 + ], + [ + -67.97, + 6.22 + ], + [ + -67.96, + 6.22 + ], + [ + -67.94, + 6.23 + ], + [ + -67.93, + 6.24 + ], + [ + -67.92, + 6.25 + ], + [ + -67.91, + 6.26 + ], + [ + -67.88, + 6.28 + ], + [ + -67.85, + 6.3 + ], + [ + -67.84, + 6.32 + ], + [ + -67.83, + 6.32 + ], + [ + -67.77, + 6.3 + ], + [ + -67.76, + 6.29 + ], + [ + -67.75, + 6.29 + ], + [ + -67.7, + 6.29 + ], + [ + -67.69, + 6.29 + ], + [ + -67.67, + 6.29 + ], + [ + -67.66, + 6.29 + ], + [ + -67.6, + 6.27 + ], + [ + -67.57, + 6.26 + ], + [ + -67.55, + 6.27 + ], + [ + -67.54, + 6.27 + ], + [ + -67.54, + 6.26 + ], + [ + -67.52, + 6.24 + ], + [ + -67.51, + 6.23 + ], + [ + -67.48, + 6.22 + ], + [ + -67.46, + 6.19 + ], + [ + -67.48, + 6.17 + ], + [ + -67.52, + 6.16 + ], + [ + -67.5, + 6.12 + ], + [ + -67.46, + 6.06 + ], + [ + -67.45, + 6.05 + ], + [ + -67.43, + 6.04 + ], + [ + -67.42, + 6.02 + ], + [ + -67.41, + 5.99 + ], + [ + -67.48, + 5.97 + ], + [ + -67.48, + 5.94 + ], + [ + -67.57, + 5.9 + ], + [ + -67.55, + 5.89 + ], + [ + -67.55, + 5.88 + ], + [ + -67.58, + 5.85 + ], + [ + -67.62, + 5.76 + ], + [ + -67.62, + 5.74 + ], + [ + -67.64, + 5.66 + ], + [ + -67.64, + 5.65 + ], + [ + -67.63, + 5.63 + ], + [ + -67.62, + 5.6 + ], + [ + -67.62, + 5.58 + ], + [ + -67.62, + 5.57 + ], + [ + -67.61, + 5.56 + ], + [ + -67.62, + 5.51 + ], + [ + -67.65, + 5.45 + ], + [ + -67.68, + 5.43 + ], + [ + -67.72, + 5.41 + ], + [ + -67.84, + 5.32 + ], + [ + -67.84, + 5.31 + ], + [ + -67.84, + 5.27 + ], + [ + -67.83, + 5.26 + ], + [ + -67.83, + 5.24 + ], + [ + -67.85, + 5.15 + ], + [ + -67.84, + 5.11 + ], + [ + -67.82, + 5.07 + ], + [ + -67.82, + 5.03 + ], + [ + -67.82, + 4.97 + ], + [ + -67.83, + 4.96 + ], + [ + -67.84, + 4.93 + ], + [ + -67.84, + 4.92 + ], + [ + -67.84, + 4.89 + ], + [ + -67.83, + 4.87 + ], + [ + -67.82, + 4.84 + ], + [ + -67.82, + 4.83 + ], + [ + -67.82, + 4.8 + ], + [ + -67.83, + 4.77 + ], + [ + -67.82, + 4.73 + ], + [ + -67.84, + 4.67 + ], + [ + -67.84, + 4.65 + ], + [ + -67.86, + 4.52 + ], + [ + -67.84, + 4.51 + ], + [ + -67.83, + 4.5 + ], + [ + -67.8, + 4.49 + ], + [ + -67.8, + 4.48 + ], + [ + -67.8, + 4.45 + ], + [ + -67.79, + 4.43 + ], + [ + -67.78, + 4.39 + ], + [ + -67.78, + 4.38 + ], + [ + -67.77, + 4.37 + ], + [ + -67.77, + 4.34 + ], + [ + -67.8, + 4.33 + ], + [ + -67.8, + 4.32 + ], + [ + -67.81, + 4.32 + ], + [ + -67.8, + 4.3 + ], + [ + -67.8, + 4.29 + ], + [ + -67.79, + 4.28 + ], + [ + -67.78, + 4.18 + ], + [ + -67.77, + 4.17 + ], + [ + -67.74, + 4.13 + ], + [ + -67.73, + 4.11 + ], + [ + -67.71, + 4.05 + ], + [ + -67.7, + 4.04 + ], + [ + -67.7, + 4.01 + ], + [ + -67.7, + 3.99 + ], + [ + -67.7, + 3.97 + ], + [ + -67.69, + 3.94 + ], + [ + -67.69, + 3.93 + ], + [ + -67.68, + 3.91 + ], + [ + -67.66, + 3.89 + ], + [ + -67.65, + 3.87 + ], + [ + -67.65, + 3.86 + ], + [ + -67.64, + 3.82 + ], + [ + -67.64, + 3.8 + ], + [ + -67.63, + 3.79 + ], + [ + -67.62, + 3.78 + ], + [ + -67.62, + 3.77 + ], + [ + -67.6, + 3.75 + ], + [ + -67.59, + 3.75 + ], + [ + -67.58, + 3.75 + ], + [ + -67.55, + 3.76 + ], + [ + -67.54, + 3.76 + ], + [ + -67.51, + 3.77 + ], + [ + -67.49, + 3.75 + ], + [ + -67.49, + 3.74 + ], + [ + -67.49, + 3.73 + ], + [ + -67.48, + 3.72 + ], + [ + -67.48, + 3.71 + ], + [ + -67.45, + 3.67 + ], + [ + -67.44, + 3.63 + ], + [ + -67.44, + 3.62 + ], + [ + -67.45, + 3.6 + ], + [ + -67.44, + 3.58 + ], + [ + -67.43, + 3.58 + ], + [ + -67.43, + 3.56 + ], + [ + -67.41, + 3.54 + ], + [ + -67.41, + 3.52 + ], + [ + -67.41, + 3.51 + ], + [ + -67.4, + 3.48 + ], + [ + -67.38, + 3.47 + ], + [ + -67.37, + 3.47 + ], + [ + -67.36, + 3.46 + ], + [ + -67.33, + 3.43 + ], + [ + -67.32, + 3.41 + ], + [ + -67.32, + 3.4 + ], + [ + -67.32, + 3.37 + ], + [ + -67.33, + 3.36 + ], + [ + -67.38, + 3.25 + ], + [ + -67.39, + 3.25 + ], + [ + -67.86, + 2.87 + ], + [ + -67.58, + 2.77 + ], + [ + -67.59, + 2.76 + ], + [ + -67.58, + 2.75 + ], + [ + -67.58, + 2.74 + ], + [ + -67.56, + 2.73 + ], + [ + -67.56, + 2.72 + ], + [ + -67.57, + 2.71 + ], + [ + -67.57, + 2.7 + ], + [ + -67.57, + 2.68 + ], + [ + -67.57, + 2.67 + ], + [ + -67.55, + 2.66 + ], + [ + -67.54, + 2.66 + ], + [ + -67.53, + 2.67 + ], + [ + -67.52, + 2.67 + ], + [ + -67.5, + 2.67 + ], + [ + -67.49, + 2.66 + ], + [ + -67.48, + 2.65 + ], + [ + -67.47, + 2.64 + ], + [ + -67.47, + 2.63 + ], + [ + -67.43, + 2.6 + ], + [ + -67.4, + 2.58 + ], + [ + -67.39, + 2.56 + ], + [ + -67.39, + 2.55 + ], + [ + -67.38, + 2.54 + ], + [ + -67.35, + 2.53 + ], + [ + -67.34, + 2.52 + ], + [ + -67.33, + 2.5 + ], + [ + -67.31, + 2.47 + ], + [ + -67.29, + 2.44 + ], + [ + -67.28, + 2.43 + ], + [ + -67.26, + 2.43 + ], + [ + -67.24, + 2.41 + ], + [ + -67.22, + 2.4 + ], + [ + -67.22, + 2.39 + ], + [ + -67.21, + 2.38 + ], + [ + -67.21, + 2.37 + ], + [ + -67.2, + 2.37 + ], + [ + -67.19, + 2.35 + ], + [ + -67.2, + 2.33 + ], + [ + -67.22, + 2.3 + ], + [ + -67.21, + 2.28 + ], + [ + -67.22, + 2.28 + ], + [ + -67.22, + 2.25 + ], + [ + -67.21, + 2.24 + ], + [ + -67.2, + 2.21 + ], + [ + -67.2, + 2.2 + ], + [ + -67.19, + 2.19 + ], + [ + -67.18, + 2.16 + ], + [ + -67.18, + 2.15 + ], + [ + -67.17, + 2.15 + ], + [ + -67.15, + 2.13 + ], + [ + -67.13, + 2.14 + ], + [ + -67.12, + 2.14 + ], + [ + -67.11, + 2.12 + ], + [ + -67.11, + 2.11 + ], + [ + -67.11, + 2.1 + ], + [ + -67.1, + 2.08 + ], + [ + -67.1, + 2.05 + ], + [ + -67.11, + 2.04 + ], + [ + -67.12, + 2.01 + ], + [ + -67.12, + 1.99 + ], + [ + -67.11, + 1.97 + ], + [ + -67.1, + 1.96 + ], + [ + -67.09, + 1.94 + ], + [ + -67.08, + 1.93 + ], + [ + -67.06, + 1.92 + ], + [ + -67.08, + 1.93 + ], + [ + -67.05, + 1.87 + ], + [ + -67.04, + 1.85 + ], + [ + -67.03, + 1.79 + ], + [ + -67.03, + 1.78 + ], + [ + -67.01, + 1.75 + ], + [ + -67, + 1.73 + ], + [ + -66.98, + 1.67 + ], + [ + -66.97, + 1.66 + ], + [ + -66.96, + 1.64 + ], + [ + -66.96, + 1.63 + ], + [ + -66.96, + 1.62 + ], + [ + -66.96, + 1.6 + ], + [ + -66.96, + 1.59 + ], + [ + -66.95, + 1.58 + ], + [ + -66.94, + 1.57 + ], + [ + -66.93, + 1.56 + ], + [ + -66.93, + 1.55 + ], + [ + -66.92, + 1.53 + ], + [ + -66.91, + 1.51 + ], + [ + -66.91, + 1.48 + ], + [ + -66.91, + 1.47 + ], + [ + -66.91, + 1.43 + ], + [ + -66.91, + 1.42 + ], + [ + -66.91, + 1.41 + ], + [ + -66.9, + 1.41 + ], + [ + -66.88, + 1.4 + ], + [ + -66.87, + 1.4 + ], + [ + -66.86, + 1.31 + ], + [ + -66.88, + 1.3 + ], + [ + -66.88, + 1.27 + ], + [ + -66.88, + 1.26 + ], + [ + -66.86, + 1.24 + ], + [ + -66.85, + 1.23 + ], + [ + -67.09, + 1.17 + ], + [ + -67.15, + 1.83 + ], + [ + -67.33, + 1.94 + ], + [ + -67.4, + 2.23 + ], + [ + -67.9, + 1.81 + ], + [ + -68.2, + 2.03 + ], + [ + -68.29, + 1.83 + ], + [ + -68.16, + 1.73 + ], + [ + -69.84, + 1.72 + ], + [ + -69.84, + 1.08 + ], + [ + -69.84, + 1.07 + ], + [ + -69.82, + 1.07 + ], + [ + -69.8, + 1.07 + ], + [ + -69.8, + 1.08 + ], + [ + -69.79, + 1.09 + ], + [ + -69.78, + 1.1 + ], + [ + -69.75, + 1.11 + ], + [ + -69.73, + 1.11 + ], + [ + -69.71, + 1.12 + ], + [ + -69.7, + 1.11 + ], + [ + -69.71, + 1.09 + ], + [ + -69.69, + 1.07 + ], + [ + -69.68, + 1.07 + ], + [ + -69.67, + 1.07 + ], + [ + -69.67, + 1.08 + ], + [ + -69.63, + 1.09 + ], + [ + -69.62, + 1.09 + ], + [ + -69.62, + 1.1 + ], + [ + -69.59, + 1.09 + ], + [ + -69.58, + 1.08 + ], + [ + -69.57, + 1.07 + ], + [ + -69.56, + 1.07 + ], + [ + -69.53, + 1.07 + ], + [ + -69.51, + 1.07 + ], + [ + -69.49, + 1.08 + ], + [ + -69.47, + 1.08 + ], + [ + -69.43, + 1.07 + ], + [ + -69.43, + 1.05 + ], + [ + -69.4, + 1.05 + ], + [ + -69.4, + 1.06 + ], + [ + -69.37, + 1.08 + ], + [ + -69.36, + 1.08 + ], + [ + -69.35, + 1.08 + ], + [ + -69.33, + 1.08 + ], + [ + -69.31, + 1.08 + ], + [ + -69.3, + 1.06 + ], + [ + -69.29, + 1.06 + ], + [ + -69.29, + 1.05 + ], + [ + -69.28, + 1.05 + ], + [ + -69.27, + 1.05 + ], + [ + -69.24, + 1.04 + ], + [ + -69.23, + 1.03 + ], + [ + -69.21, + 1.02 + ], + [ + -69.21, + 1.01 + ], + [ + -69.22, + 0.97 + ], + [ + -69.21, + 0.97 + ], + [ + -69.2, + 0.96 + ], + [ + -69.19, + 0.96 + ], + [ + -69.17, + 0.95 + ], + [ + -69.17, + 0.94 + ], + [ + -69.17, + 0.93 + ], + [ + -69.18, + 0.94 + ], + [ + -69.19, + 0.92 + ], + [ + -69.18, + 0.9 + ], + [ + -69.17, + 0.89 + ], + [ + -69.16, + 0.88 + ], + [ + -69.14, + 0.87 + ], + [ + -69.14, + 0.86 + ], + [ + -69.15, + 0.85 + ], + [ + -69.17, + 0.85 + ], + [ + -69.17, + 0.83 + ], + [ + -69.16, + 0.81 + ], + [ + -69.15, + 0.8 + ], + [ + -69.15, + 0.78 + ], + [ + -69.16, + 0.76 + ], + [ + -69.17, + 0.76 + ], + [ + -69.19, + 0.74 + ], + [ + -69.18, + 0.72 + ], + [ + -69.16, + 0.71 + ], + [ + -69.14, + 0.69 + ], + [ + -69.14, + 0.68 + ], + [ + -69.13, + 0.68 + ], + [ + -69.12, + 0.66 + ], + [ + -69.12, + 0.65 + ], + [ + -69.12, + 0.64 + ], + [ + -69.13, + 0.63 + ], + [ + -69.14, + 0.64 + ], + [ + -69.15, + 0.64 + ], + [ + -69.16, + 0.65 + ], + [ + -69.18, + 0.65 + ], + [ + -69.2, + 0.65 + ], + [ + -69.2, + 0.64 + ], + [ + -69.2, + 0.62 + ], + [ + -69.48, + 0.74 + ], + [ + -70.05, + 0.56 + ], + [ + -70.04, + -0.19 + ], + [ + -69.61, + -0.5 + ], + [ + -69.43, + -1.07 + ], + [ + -69.43, + -1.08 + ], + [ + -69.41, + -1.09 + ], + [ + -69.41, + -1.1 + ], + [ + -69.4, + -1.14 + ], + [ + -69.41, + -1.15 + ], + [ + -69.41, + -1.18 + ], + [ + -69.42, + -1.19 + ], + [ + -69.43, + -1.21 + ], + [ + -69.43, + -1.22 + ], + [ + -69.43, + -1.24 + ], + [ + -69.43, + -1.46 + ], + [ + -69.45, + -1.48 + ], + [ + -69.45, + -1.54 + ], + [ + -69.45, + -1.55 + ], + [ + -69.46, + -1.56 + ], + [ + -69.69, + -2.87 + ], + [ + -69.69, + -2.88 + ], + [ + -69.7, + -2.9 + ], + [ + -69.7, + -2.91 + ], + [ + -69.93, + -4.22 + ], + [ + -69.94, + -4.22 + ], + [ + -69.95, + -4.23 + ], + [ + -69.95, + -4.22 + ], + [ + -69.97, + -4.2 + ], + [ + -69.98, + -4.18 + ], + [ + -70.04, + -4.13 + ], + [ + -70.05, + -4.12 + ], + [ + -70.06, + -4.09 + ], + [ + -70.06, + -4.08 + ], + [ + -70.07, + -4.08 + ], + [ + -70.08, + -4.07 + ], + [ + -70.11, + -4.05 + ], + [ + -70.12, + -4.04 + ], + [ + -70.13, + -4.03 + ], + [ + -70.14, + -4.02 + ], + [ + -70.15, + -4.01 + ], + [ + -70.17, + -3.97 + ], + [ + -70.19, + -3.92 + ], + [ + -70.2, + -3.92 + ], + [ + -70.2, + -3.88 + ], + [ + -70.22, + -3.91 + ], + [ + -70.31, + -3.81 + ], + [ + -70.32, + -3.81 + ], + [ + -70.4, + -3.83 + ], + [ + -70.42, + -3.83 + ], + [ + -70.49, + -3.88 + ], + [ + -70.54, + -3.87 + ], + [ + -70.55, + -3.85 + ], + [ + -70.55, + -3.84 + ], + [ + -70.57, + -3.82 + ], + [ + -70.58, + -3.82 + ], + [ + -70.59, + -3.82 + ], + [ + -70.61, + -3.83 + ], + [ + -70.62, + -3.84 + ], + [ + -70.71, + -3.8 + ], + [ + -70.06, + -2.75 + ], + [ + -70.07, + -2.67 + ], + [ + -70.08, + -2.66 + ], + [ + -70.09, + -2.65 + ], + [ + -70.1, + -2.66 + ], + [ + -70.11, + -2.67 + ], + [ + -70.11, + -2.69 + ], + [ + -70.12, + -2.7 + ], + [ + -70.14, + -2.7 + ], + [ + -70.15, + -2.69 + ], + [ + -70.16, + -2.67 + ], + [ + -70.16, + -2.66 + ], + [ + -70.16, + -2.65 + ], + [ + -70.17, + -2.63 + ], + [ + -70.18, + -2.64 + ], + [ + -70.22, + -2.64 + ], + [ + -70.22, + -2.63 + ], + [ + -70.23, + -2.57 + ], + [ + -70.24, + -2.56 + ], + [ + -70.26, + -2.55 + ], + [ + -70.29, + -2.56 + ], + [ + -70.29, + -2.57 + ], + [ + -70.3, + -2.57 + ], + [ + -70.32, + -2.58 + ], + [ + -70.33, + -2.58 + ], + [ + -70.35, + -2.57 + ], + [ + -70.36, + -2.56 + ], + [ + -70.33, + -2.54 + ], + [ + -70.31, + -2.53 + ], + [ + -70.3, + -2.53 + ], + [ + -70.3, + -2.51 + ], + [ + -70.33, + -2.5 + ], + [ + -70.35, + -2.49 + ], + [ + -70.36, + -2.49 + ], + [ + -70.38, + -2.5 + ], + [ + -70.39, + -2.5 + ], + [ + -70.41, + -2.52 + ], + [ + -70.43, + -2.52 + ], + [ + -70.44, + -2.51 + ], + [ + -70.45, + -2.48 + ], + [ + -70.47, + -2.46 + ], + [ + -70.48, + -2.46 + ], + [ + -70.5, + -2.47 + ], + [ + -70.51, + -2.48 + ], + [ + -70.52, + -2.46 + ], + [ + -70.53, + -2.45 + ], + [ + -70.55, + -2.42 + ], + [ + -70.56, + -2.42 + ], + [ + -70.59, + -2.42 + ], + [ + -70.58, + -2.43 + ], + [ + -70.58, + -2.44 + ], + [ + -70.57, + -2.44 + ], + [ + -70.55, + -2.46 + ], + [ + -70.56, + -2.47 + ], + [ + -70.62, + -2.48 + ], + [ + -70.63, + -2.47 + ], + [ + -70.64, + -2.44 + ], + [ + -70.63, + -2.43 + ], + [ + -70.63, + -2.42 + ], + [ + -70.63, + -2.41 + ], + [ + -70.64, + -2.41 + ], + [ + -70.66, + -2.41 + ], + [ + -70.68, + -2.41 + ], + [ + -70.68, + -2.39 + ], + [ + -70.66, + -2.36 + ], + [ + -70.67, + -2.35 + ], + [ + -70.69, + -2.34 + ], + [ + -70.7, + -2.34 + ], + [ + -70.72, + -2.34 + ], + [ + -70.73, + -2.33 + ], + [ + -70.76, + -2.31 + ], + [ + -70.77, + -2.3 + ], + [ + -70.79, + -2.29 + ], + [ + -70.8, + -2.3 + ], + [ + -70.84, + -2.29 + ], + [ + -70.85, + -2.24 + ], + [ + -70.86, + -2.23 + ], + [ + -70.89, + -2.22 + ], + [ + -70.91, + -2.23 + ], + [ + -70.92, + -2.25 + ], + [ + -70.94, + -2.25 + ], + [ + -70.95, + -2.25 + ], + [ + -70.96, + -2.24 + ], + [ + -70.96, + -2.23 + ], + [ + -70.99, + -2.21 + ], + [ + -71.01, + -2.21 + ], + [ + -71.02, + -2.22 + ], + [ + -71.02, + -2.23 + ], + [ + -71.01, + -2.25 + ], + [ + -71, + -2.27 + ], + [ + -71, + -2.31 + ], + [ + -71.02, + -2.3 + ], + [ + -71.03, + -2.28 + ], + [ + -71.05, + -2.27 + ], + [ + -71.07, + -2.27 + ], + [ + -71.08, + -2.28 + ], + [ + -71.1, + -2.28 + ], + [ + -71.11, + -2.28 + ], + [ + -71.13, + -2.28 + ], + [ + -71.14, + -2.3 + ], + [ + -71.14, + -2.31 + ], + [ + -71.13, + -2.32 + ], + [ + -71.13, + -2.33 + ], + [ + -71.14, + -2.34 + ], + [ + -71.16, + -2.33 + ], + [ + -71.17, + -2.34 + ], + [ + -71.17, + -2.35 + ], + [ + -71.17, + -2.37 + ], + [ + -71.21, + -2.36 + ], + [ + -71.22, + -2.35 + ], + [ + -71.22, + -2.34 + ], + [ + -71.25, + -2.34 + ], + [ + -71.28, + -2.34 + ], + [ + -71.3, + -2.34 + ], + [ + -71.31, + -2.36 + ], + [ + -71.31, + -2.37 + ], + [ + -71.33, + -2.38 + ], + [ + -71.36, + -2.38 + ], + [ + -71.4, + -2.38 + ], + [ + -71.4, + -2.37 + ], + [ + -71.4, + -2.35 + ], + [ + -71.41, + -2.34 + ], + [ + -71.42, + -2.33 + ], + [ + -71.43, + -2.31 + ], + [ + -71.45, + -2.29 + ], + [ + -71.45, + -2.28 + ], + [ + -71.46, + -2.28 + ], + [ + -71.47, + -2.27 + ], + [ + -71.48, + -2.27 + ], + [ + -71.49, + -2.27 + ], + [ + -71.5, + -2.29 + ], + [ + -71.49, + -2.31 + ], + [ + -71.48, + -2.32 + ], + [ + -71.51, + -2.35 + ], + [ + -71.51, + -2.32 + ], + [ + -71.52, + -2.26 + ], + [ + -71.52, + -2.25 + ], + [ + -71.53, + -2.25 + ], + [ + -71.59, + -2.24 + ], + [ + -71.61, + -2.23 + ], + [ + -71.62, + -2.22 + ], + [ + -71.64, + -2.2 + ], + [ + -71.65, + -2.2 + ], + [ + -71.67, + -2.2 + ], + [ + -71.67, + -2.21 + ], + [ + -71.68, + -2.21 + ], + [ + -71.73, + -2.21 + ], + [ + -71.72, + -2.19 + ], + [ + -71.72, + -2.17 + ], + [ + -71.72, + -2.15 + ], + [ + -71.73, + -2.14 + ], + [ + -71.74, + -2.14 + ], + [ + -71.75, + -2.15 + ], + [ + -71.75, + -2.17 + ], + [ + -71.76, + -2.17 + ], + [ + -71.79, + -2.19 + ], + [ + -71.83, + -2.19 + ], + [ + -71.84, + -2.2 + ], + [ + -71.84, + -2.21 + ], + [ + -71.86, + -2.25 + ], + [ + -71.86, + -2.28 + ], + [ + -71.87, + -2.29 + ], + [ + -71.88, + -2.31 + ], + [ + -71.94, + -2.32 + ], + [ + -71.94, + -2.33 + ], + [ + -71.94, + -2.34 + ], + [ + -71.92, + -2.36 + ], + [ + -71.93, + -2.38 + ], + [ + -71.94, + -2.36 + ], + [ + -71.96, + -2.36 + ], + [ + -71.97, + -2.37 + ], + [ + -71.98, + -2.37 + ], + [ + -71.99, + -2.37 + ], + [ + -72.01, + -2.36 + ], + [ + -72.02, + -2.35 + ], + [ + -72.03, + -2.34 + ], + [ + -72.06, + -2.34 + ], + [ + -72.08, + -2.37 + ], + [ + -72.09, + -2.38 + ], + [ + -72.1, + -2.39 + ], + [ + -72.12, + -2.4 + ], + [ + -72.13, + -2.42 + ], + [ + -72.14, + -2.45 + ], + [ + -72.15, + -2.47 + ], + [ + -72.17, + -2.47 + ], + [ + -72.16, + -2.45 + ], + [ + -72.17, + -2.43 + ], + [ + -72.19, + -2.44 + ], + [ + -72.2, + -2.45 + ], + [ + -72.25, + -2.43 + ], + [ + -72.26, + -2.45 + ], + [ + -72.27, + -2.46 + ], + [ + -72.28, + -2.45 + ], + [ + -72.29, + -2.47 + ], + [ + -72.3, + -2.47 + ], + [ + -72.31, + -2.47 + ], + [ + -72.33, + -2.47 + ], + [ + -72.35, + -2.48 + ], + [ + -72.36, + -2.49 + ], + [ + -72.38, + -2.47 + ], + [ + -72.38, + -2.45 + ], + [ + -72.4, + -2.43 + ], + [ + -72.41, + -2.42 + ], + [ + -72.42, + -2.43 + ], + [ + -72.44, + -2.43 + ], + [ + -72.45, + -2.43 + ], + [ + -72.48, + -2.42 + ], + [ + -72.5, + -2.41 + ], + [ + -72.53, + -2.41 + ], + [ + -72.55, + -2.4 + ], + [ + -72.59, + -2.37 + ], + [ + -72.6, + -2.37 + ], + [ + -72.61, + -2.36 + ], + [ + -72.63, + -2.36 + ], + [ + -72.64, + -2.37 + ], + [ + -72.66, + -2.41 + ], + [ + -72.66, + -2.42 + ], + [ + -72.67, + -2.43 + ], + [ + -72.69, + -2.41 + ], + [ + -72.7, + -2.39 + ], + [ + -72.71, + -2.39 + ], + [ + -72.72, + -2.39 + ], + [ + -72.76, + -2.4 + ], + [ + -72.78, + -2.39 + ], + [ + -72.8, + -2.41 + ], + [ + -72.83, + -2.42 + ], + [ + -72.85, + -2.44 + ], + [ + -72.87, + -2.44 + ], + [ + -72.9, + -2.43 + ], + [ + -72.91, + -2.44 + ], + [ + -72.93, + -2.46 + ], + [ + -72.94, + -2.45 + ], + [ + -72.93, + -2.42 + ], + [ + -72.95, + -2.41 + ], + [ + -72.95, + -2.4 + ], + [ + -72.96, + -2.39 + ], + [ + -72.96, + -2.37 + ], + [ + -72.96, + -2.36 + ], + [ + -72.96, + -2.35 + ], + [ + -72.95, + -2.35 + ], + [ + -72.98, + -2.35 + ], + [ + -73.02, + -2.34 + ], + [ + -73.03, + -2.32 + ], + [ + -73.04, + -2.32 + ], + [ + -73.04, + -2.33 + ], + [ + -73.04, + -2.35 + ], + [ + -73.05, + -2.36 + ], + [ + -73.06, + -2.36 + ], + [ + -73.07, + -2.35 + ], + [ + -73.09, + -2.33 + ], + [ + -73.1, + -2.32 + ], + [ + -73.12, + -2.31 + ], + [ + -73.12, + -2.3 + ], + [ + -73.12, + -2.28 + ], + [ + -73.13, + -2.28 + ], + [ + -73.15, + -2.26 + ], + [ + -73.16, + -2.26 + ], + [ + -73.16, + -2.24 + ], + [ + -73.17, + -2.23 + ], + [ + -73.17, + -2.2 + ], + [ + -73.15, + -2.19 + ], + [ + -73.12, + -2.17 + ], + [ + -73.12, + -2.14 + ], + [ + -73.11, + -2.13 + ], + [ + -73.1, + -2.12 + ], + [ + -73.09, + -2.11 + ], + [ + -73.07, + -2.11 + ], + [ + -73.07, + -2.08 + ], + [ + -73.09, + -2.08 + ], + [ + -73.1, + -2.08 + ], + [ + -73.1, + -2.05 + ], + [ + -73.1, + -2.03 + ], + [ + -73.11, + -2.02 + ], + [ + -73.12, + -1.97 + ], + [ + -73.11, + -1.96 + ], + [ + -73.11, + -1.95 + ], + [ + -73.12, + -1.92 + ], + [ + -73.11, + -1.91 + ], + [ + -73.1, + -1.91 + ], + [ + -73.11, + -1.89 + ], + [ + -73.12, + -1.87 + ], + [ + -73.14, + -1.87 + ], + [ + -73.15, + -1.85 + ], + [ + -73.15, + -1.83 + ], + [ + -73.14, + -1.81 + ], + [ + -73.16, + -1.8 + ], + [ + -73.18, + -1.8 + ], + [ + -73.19, + -1.79 + ], + [ + -73.2, + -1.78 + ], + [ + -73.22, + -1.75 + ], + [ + -73.23, + -1.75 + ], + [ + -73.23, + -1.76 + ], + [ + -73.23, + -1.79 + ], + [ + -73.23, + -1.8 + ], + [ + -73.25, + -1.81 + ], + [ + -73.25, + -1.8 + ], + [ + -73.25, + -1.78 + ], + [ + -73.26, + -1.78 + ], + [ + -73.28, + -1.78 + ], + [ + -73.31, + -1.79 + ], + [ + -73.31, + -1.81 + ], + [ + -73.32, + -1.82 + ], + [ + -73.33, + -1.82 + ], + [ + -73.34, + -1.8 + ], + [ + -73.35, + -1.8 + ], + [ + -73.37, + -1.79 + ], + [ + -73.38, + -1.78 + ], + [ + -73.4, + -1.78 + ], + [ + -73.41, + -1.79 + ], + [ + -73.43, + -1.79 + ], + [ + -73.43, + -1.77 + ], + [ + -73.44, + -1.76 + ], + [ + -73.45, + -1.74 + ], + [ + -73.46, + -1.74 + ], + [ + -73.49, + -1.73 + ], + [ + -73.51, + -1.72 + ], + [ + -73.53, + -1.71 + ], + [ + -73.54, + -1.69 + ], + [ + -73.54, + -1.68 + ], + [ + -73.52, + -1.67 + ], + [ + -73.52, + -1.66 + ], + [ + -73.51, + -1.63 + ], + [ + -73.5, + -1.62 + ], + [ + -73.49, + -1.61 + ], + [ + -73.47, + -1.6 + ], + [ + -73.48, + -1.58 + ], + [ + -73.49, + -1.58 + ], + [ + -73.48, + -1.55 + ], + [ + -73.48, + -1.54 + ], + [ + -73.48, + -1.53 + ], + [ + -73.49, + -1.52 + ], + [ + -73.49, + -1.49 + ], + [ + -73.5, + -1.48 + ], + [ + -73.51, + -1.48 + ], + [ + -73.53, + -1.47 + ], + [ + -73.53, + -1.44 + ], + [ + -73.54, + -1.43 + ], + [ + -73.55, + -1.43 + ], + [ + -73.57, + -1.43 + ], + [ + -73.55, + -1.41 + ], + [ + -73.55, + -1.4 + ], + [ + -73.56, + -1.38 + ], + [ + -73.57, + -1.37 + ], + [ + -73.58, + -1.35 + ], + [ + -73.58, + -1.34 + ], + [ + -73.57, + -1.33 + ], + [ + -73.62, + -1.3 + ], + [ + -73.62, + -1.28 + ], + [ + -73.62, + -1.27 + ], + [ + -73.63, + -1.27 + ], + [ + -73.64, + -1.27 + ], + [ + -73.66, + -1.25 + ], + [ + -73.69, + -1.24 + ], + [ + -73.7, + -1.25 + ], + [ + -73.71, + -1.25 + ], + [ + -73.73, + -1.25 + ], + [ + -73.74, + -1.23 + ], + [ + -73.74, + -1.22 + ], + [ + -73.74, + -1.21 + ], + [ + -73.75, + -1.2 + ], + [ + -73.75, + -1.21 + ], + [ + -73.75, + -1.22 + ], + [ + -73.76, + -1.24 + ], + [ + -73.76, + -1.25 + ], + [ + -73.78, + -1.25 + ], + [ + -73.8, + -1.25 + ], + [ + -73.82, + -1.24 + ], + [ + -73.83, + -1.23 + ], + [ + -73.86, + -1.23 + ], + [ + -73.87, + -1.22 + ], + [ + -73.87, + -1.2 + ], + [ + -73.88, + -1.19 + ], + [ + -73.88, + -1.18 + ], + [ + -73.9, + -1.15 + ], + [ + -73.9, + -1.13 + ], + [ + -73.91, + -1.12 + ], + [ + -73.92, + -1.12 + ], + [ + -73.94, + -1.13 + ], + [ + -73.96, + -1.13 + ], + [ + -73.96, + -1.11 + ], + [ + -73.95, + -1.1 + ], + [ + -73.95, + -1.09 + ], + [ + -73.97, + -1.09 + ], + [ + -74.02, + -1.07 + ], + [ + -74.03, + -1.05 + ], + [ + -74.02, + -1.04 + ], + [ + -74.02, + -1.01 + ], + [ + -74.03, + -1.01 + ], + [ + -74.26, + -0.95 + ], + [ + -74.26, + -0.94 + ], + [ + -74.27, + -0.93 + ], + [ + -74.27, + -0.92 + ], + [ + -74.44, + -0.49 + ], + [ + -74.45, + -0.49 + ], + [ + -74.47, + -0.49 + ], + [ + -74.47, + -0.48 + ], + [ + -74.73, + -0.3 + ], + [ + -74.73, + -0.29 + ], + [ + -74.75, + -0.27 + ], + [ + -74.75, + -0.26 + ], + [ + -74.82, + -0.2 + ], + [ + -75.08, + -0.08 + ], + [ + -75.26, + -0.12 + ], + [ + -75.29, + -0.12 + ], + [ + -75.31, + -0.11 + ], + [ + -75.81, + 0.05 + ], + [ + -76.27, + 0.44 + ], + [ + -76.42, + 0.24 + ], + [ + -76.44, + 0.26 + ], + [ + -76.46, + 0.24 + ], + [ + -76.48, + 0.24 + ], + [ + -76.49, + 0.24 + ], + [ + -76.51, + 0.24 + ], + [ + -76.53, + 0.26 + ], + [ + -76.54, + 0.26 + ], + [ + -76.57, + 0.24 + ], + [ + -76.59, + 0.22 + ], + [ + -76.6, + 0.23 + ], + [ + -76.61, + 0.24 + ], + [ + -76.63, + 0.26 + ], + [ + -76.64, + 0.26 + ], + [ + -76.76, + 0.25 + ], + [ + -76.77, + 0.25 + ], + [ + -76.81, + 0.26 + ], + [ + -76.82, + 0.26 + ], + [ + -76.83, + 0.25 + ], + [ + -76.84, + 0.24 + ], + [ + -76.86, + 0.25 + ], + [ + -76.9, + 0.25 + ], + [ + -76.91, + 0.25 + ], + [ + -76.94, + 0.26 + ], + [ + -76.93, + 0.27 + ], + [ + -76.95, + 0.27 + ], + [ + -76.98, + 0.27 + ], + [ + -76.99, + 0.27 + ], + [ + -77, + 0.29 + ], + [ + -77.03, + 0.28 + ], + [ + -77.04, + 0.28 + ], + [ + -77.05, + 0.28 + ], + [ + -77.06, + 0.29 + ], + [ + -77.08, + 0.28 + ], + [ + -77.08, + 0.29 + ], + [ + -77.53, + 0.4 + ], + [ + -77.48, + 0.66 + ], + [ + -77.71, + 0.84 + ], + [ + -78.18, + 0.94 + ], + [ + -78.31, + 1.19 + ], + [ + -78.43, + 1.14 + ], + [ + -78.73, + 1.37 + ], + [ + -78.74, + 1.38 + ], + [ + -78.75, + 1.38 + ], + [ + -78.76, + 1.39 + ], + [ + -79.01, + 1.65 + ], + [ + -78.83, + 1.82 + ], + [ + -78.56, + 1.75 + ], + [ + -78.71, + 2.17 + ], + [ + -78.57, + 2.45 + ], + [ + -78.48, + 2.37 + ], + [ + -78.55, + 2.49 + ], + [ + -78.44, + 2.39 + ], + [ + -78.47, + 2.56 + ], + [ + -78.32, + 2.36 + ], + [ + -78.32, + 2.51 + ], + [ + -78.2, + 2.44 + ], + [ + -77.84, + 2.7 + ], + [ + -77.8, + 2.61 + ], + [ + -77.54, + 3.24 + ], + [ + -77.12, + 3.65 + ], + [ + -77.15, + 3.7 + ], + [ + -77.04, + 3.9 + ], + [ + -77.28, + 3.84 + ], + [ + -77.18, + 4.05 + ], + [ + -77.36, + 3.93 + ], + [ + -77.53, + 4.13 + ], + [ + -77.29, + 4.74 + ], + [ + -77.39, + 5.44 + ], + [ + -77.54, + 5.48 + ], + [ + -77.24, + 5.76 + ], + [ + -77.48, + 6.19 + ], + [ + -77.33, + 6.55 + ], + [ + -77.7, + 6.84 + ], + [ + -77.7, + 7.07 + ], + [ + -77.89, + 7.22 + ] + ], + [ + [ + -75.16, + 8.62 + ], + [ + -75.26, + 8.54 + ], + [ + -75.1, + 8.54 + ], + [ + -75.16, + 8.62 + ] + ], + [ + [ + -74.92, + 9.06 + ], + [ + -74.88, + 8.8 + ], + [ + -74.76, + 9.06 + ], + [ + -74.92, + 9.06 + ] + ], + [ + [ + -74.85, + 9.94 + ], + [ + -74.81, + 9.84 + ], + [ + -74.79, + 10.01 + ], + [ + -74.85, + 9.94 + ] + ], + [ + [ + -73.82, + 9.27 + ], + [ + -73.92, + 9 + ], + [ + -73.74, + 9.04 + ], + [ + -73.82, + 9.27 + ] + ], + [ + [ + -74.4, + 8.75 + ], + [ + -74.48, + 8.84 + ], + [ + -74.36, + 8.66 + ], + [ + -74.4, + 8.75 + ] + ], + [ + [ + -74.71, + 8.89 + ], + [ + -74.51, + 8.95 + ], + [ + -74.75, + 9.02 + ], + [ + -74.71, + 8.89 + ] + ], + [ + [ + -75.52, + 2.68 + ], + [ + -75.45, + 2.59 + ], + [ + -75.41, + 2.7 + ], + [ + -75.52, + 2.68 + ] + ] + ], + [ + [ + [ + -67.49, + 2.67 + ], + [ + -67.48, + 2.66 + ], + [ + -67.49, + 2.66 + ], + [ + -67.49, + 2.67 + ] + ] + ], + [ + [ + [ + -69.41, + -1.27 + ], + [ + -69.41, + -1.29 + ], + [ + -69.41, + -1.3 + ], + [ + -69.41, + -1.31 + ], + [ + -69.41, + -1.32 + ], + [ + -69.41, + -1.33 + ], + [ + -69.4, + -1.34 + ], + [ + -69.41, + -1.37 + ], + [ + -69.41, + -1.27 + ] + ] + ], + [ + [ + [ + -70.19, + -2.64 + ], + [ + -70.19, + -2.66 + ], + [ + -70.21, + -2.66 + ], + [ + -70.22, + -2.65 + ], + [ + -70.19, + -2.64 + ] + ] + ], + [ + [ + [ + -71.26, + -2.36 + ], + [ + -71.27, + -2.39 + ], + [ + -71.29, + -2.39 + ], + [ + -71.28, + -2.36 + ], + [ + -71.26, + -2.36 + ] + ] + ], + [ + [ + [ + -72.73, + -2.4 + ], + [ + -72.73, + -2.42 + ], + [ + -72.74, + -2.42 + ], + [ + -72.75, + -2.43 + ], + [ + -72.73, + -2.4 + ] + ] + ], + [ + [ + [ + -73.1, + -2.33 + ], + [ + -73.11, + -2.33 + ], + [ + -73.1, + -2.32 + ], + [ + -73.1, + -2.33 + ] + ] + ], + [ + [ + [ + -73.12, + -1.91 + ], + [ + -73.11, + -1.9 + ], + [ + -73.11, + -1.91 + ], + [ + -73.12, + -1.91 + ] + ] + ] + ] + }, + "properties": { + "A3": "COL" + } + }, + { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + 43.14, + 12.71 + ], + [ + 42.7, + 12.35 + ], + [ + 42.4, + 12.47 + ], + [ + 40.94, + 14.08 + ], + [ + 40.21, + 14.39 + ], + [ + 40.13, + 14.55 + ], + [ + 39.93, + 14.42 + ], + [ + 39.59, + 14.61 + ], + [ + 39.25, + 14.41 + ], + [ + 39.15, + 14.65 + ], + [ + 38.46, + 14.41 + ], + [ + 37.91, + 14.89 + ], + [ + 37.53, + 14.18 + ], + [ + 37.31, + 14.45 + ], + [ + 37.11, + 14.35 + ], + [ + 36.76, + 14.32 + ], + [ + 36.69, + 14.3 + ], + [ + 36.68, + 14.3 + ], + [ + 36.67, + 14.31 + ], + [ + 36.63, + 14.31 + ], + [ + 36.62, + 14.3 + ], + [ + 36.56, + 14.26 + ], + [ + 36.43, + 15.17 + ], + [ + 36.97, + 16.27 + ], + [ + 37, + 17.07 + ], + [ + 37.4, + 17.05 + ], + [ + 37.52, + 17.33 + ], + [ + 38.26, + 17.53 + ], + [ + 38.58, + 18.02 + ], + [ + 38.92, + 17.41 + ], + [ + 39.24, + 16.07 + ], + [ + 39.71, + 15.09 + ], + [ + 39.85, + 15.17 + ], + [ + 39.88, + 15.51 + ], + [ + 40.21, + 14.95 + ], + [ + 40.53, + 15.02 + ], + [ + 40.78, + 14.71 + ], + [ + 41.19, + 14.62 + ], + [ + 41.69, + 13.93 + ], + [ + 41.97, + 13.85 + ], + [ + 42.24, + 13.54 + ], + [ + 42.24, + 13.64 + ], + [ + 42.39, + 13.21 + ], + [ + 42.55, + 13.23 + ], + [ + 42.77, + 12.85 + ], + [ + 42.99, + 12.83 + ], + [ + 42.91, + 12.97 + ], + [ + 43.14, + 12.71 + ] + ] + ], + [ + [ + [ + 40.1, + 16 + ], + [ + 39.99, + 16 + ], + [ + 40.05, + 16.12 + ], + [ + 40.1, + 16 + ] + ] + ], + [ + [ + [ + 40.13, + 15.78 + ], + [ + 40.17, + 15.63 + ], + [ + 40.31, + 15.69 + ], + [ + 40.42, + 15.56 + ], + [ + 39.96, + 15.62 + ], + [ + 40.08, + 15.65 + ], + [ + 39.92, + 15.73 + ], + [ + 40.05, + 15.82 + ], + [ + 39.95, + 15.89 + ], + [ + 40.13, + 15.78 + ] + ] + ] + ] + }, + "properties": { + "A3": "ERI" + } + }, + { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + -73.45, + -49.79 + ], + [ + -73.62, + -49.66 + ], + [ + -73.62, + -49.16 + ], + [ + -73.11, + -49.16 + ], + [ + -72.7, + -48.9 + ], + [ + -72.55, + -48.91 + ], + [ + -72.55, + -48.94 + ], + [ + -72.6, + -48.94 + ], + [ + -72.55, + -48.94 + ], + [ + -72.47, + -49.15 + ], + [ + -72.22, + -49.18 + ], + [ + -72.38, + -48.91 + ], + [ + -72.53, + -48.89 + ], + [ + -72.6, + -48.85 + ], + [ + -72.55, + -48.82 + ], + [ + -72.54, + -48.81 + ], + [ + -72.53, + -48.78 + ], + [ + -72.53, + -48.77 + ], + [ + -72.58, + -48.5 + ], + [ + -72.38, + -48.4 + ], + [ + -72.37, + -48.4 + ], + [ + -72.23, + -48.32 + ], + [ + -72.53, + -47.94 + ], + [ + -72.42, + -47.7 + ], + [ + -72.42, + -47.69 + ], + [ + -72.25, + -47.41 + ], + [ + -72.25, + -47.4 + ], + [ + -72.01, + -47.3 + ], + [ + -71.81, + -47.53 + ], + [ + -72.02, + -47.25 + ], + [ + -71.85, + -47.16 + ], + [ + -71.96, + -46.82 + ], + [ + -71.65, + -46.63 + ], + [ + -71.67, + -46.6 + ], + [ + -71.67, + -46.58 + ], + [ + -71.67, + -46.57 + ], + [ + -71.67, + -46.55 + ], + [ + -71.67, + -46.54 + ], + [ + -71.67, + -46.53 + ], + [ + -71.67, + -46.52 + ], + [ + -71.42, + -46.62 + ], + [ + -71.13, + -46.53 + ], + [ + -71.74, + -46.31 + ], + [ + -71.72, + -46.29 + ], + [ + -71.9, + -46.13 + ], + [ + -71.61, + -45.98 + ], + [ + -71.78, + -45.62 + ], + [ + -71.76, + -45.61 + ], + [ + -71.75, + -45.55 + ], + [ + -71.37, + -45.34 + ], + [ + -71.56, + -44.98 + ], + [ + -72.06, + -44.88 + ], + [ + -72.06, + -44.76 + ], + [ + -71.54, + -44.75 + ], + [ + -71.41, + -44.78 + ], + [ + -71.25, + -44.8 + ], + [ + -71.23, + -44.65 + ], + [ + -71.15, + -44.59 + ], + [ + -71.11, + -44.59 + ], + [ + -71.1, + -44.59 + ], + [ + -71.31, + -44.43 + ], + [ + -71.33, + -44.43 + ], + [ + -71.81, + -44.42 + ], + [ + -71.85, + -44.11 + ], + [ + -71.66, + -43.95 + ], + [ + -71.41, + -43.93 + ], + [ + -71.65, + -43.93 + ], + [ + -71.75, + -43.79 + ], + [ + -71.58, + -43.65 + ], + [ + -71.93, + -43.45 + ], + [ + -71.73, + -43.2 + ], + [ + -72.14, + -42.9 + ], + [ + -72.11, + -42.65 + ], + [ + -72.16, + -42.2 + ], + [ + -72.16, + -42.19 + ], + [ + -71.73, + -42.1 + ], + [ + -71.89, + -41.28 + ], + [ + -71.85, + -41.26 + ], + [ + -71.85, + -41.25 + ], + [ + -71.85, + -41.24 + ], + [ + -71.87, + -40.65 + ], + [ + -71.85, + -40.63 + ], + [ + -71.66, + -40.36 + ], + [ + -71.83, + -40.09 + ], + [ + -71.67, + -40.1 + ], + [ + -71.62, + -39.88 + ], + [ + -71.63, + -39.88 + ], + [ + -71.72, + -39.64 + ], + [ + -71.5, + -39.64 + ], + [ + -71.5, + -39.5 + ], + [ + -71.49, + -39.5 + ], + [ + -71.43, + -38.93 + ], + [ + -70.93, + -38.76 + ], + [ + -70.83, + -38.6 + ], + [ + -71.02, + -38.24 + ], + [ + -71.21, + -37.69 + ], + [ + -71.15, + -36.82 + ], + [ + -71.14, + -36.82 + ], + [ + -71.04, + -36.47 + ], + [ + -70.71, + -36.43 + ], + [ + -70.57, + -36.17 + ], + [ + -70.57, + -36.16 + ], + [ + -70.42, + -36.15 + ], + [ + -70.31, + -35.81 + ], + [ + -70.58, + -35.26 + ], + [ + -70.38, + -35.17 + ], + [ + -70.03, + -34.29 + ], + [ + -69.8, + -34.24 + ], + [ + -69.9, + -33.77 + ], + [ + -69.77, + -33.36 + ], + [ + -70.04, + -33.27 + ], + [ + -69.99, + -32.9 + ], + [ + -70.39, + -32.04 + ], + [ + -70.21, + -31.96 + ], + [ + -70.48, + -31.69 + ], + [ + -70.49, + -31.69 + ], + [ + -70.57, + -31.47 + ], + [ + -70.42, + -31.13 + ], + [ + -70.27, + -31.04 + ], + [ + -70.15, + -30.35 + ], + [ + -69.96, + -30.39 + ], + [ + -69.82, + -30.18 + ], + [ + -69.96, + -30.08 + ], + [ + -69.87, + -29.7 + ], + [ + -70.02, + -29.33 + ], + [ + -69.79, + -29.13 + ], + [ + -69.65, + -28.4 + ], + [ + -69.16, + -27.95 + ], + [ + -68.84, + -27.15 + ], + [ + -68.57, + -27.18 + ], + [ + -68.26, + -26.92 + ], + [ + -68.59, + -26.49 + ], + [ + -68.38, + -26.18 + ], + [ + -68.58, + -25.42 + ], + [ + -68.51, + -25.17 + ], + [ + -68.34, + -25.11 + ], + [ + -68.56, + -24.78 + ], + [ + -68.39, + -24.48 + ], + [ + -67.76, + -24.21 + ], + [ + -67.32, + -24.03 + ], + [ + -67.11, + -23.37 + ], + [ + -67.11, + -23.36 + ], + [ + -66.99, + -23 + ], + [ + -67.18, + -22.81 + ], + [ + -66.74, + -22.24 + ], + [ + -66.29, + -22.09 + ], + [ + -66.22, + -21.78 + ], + [ + -65.75, + -22.11 + ], + [ + -64.99, + -22.08 + ], + [ + -64.62, + -22.2 + ], + [ + -64.34, + -22.88 + ], + [ + -63.93, + -22 + ], + [ + -62.83, + -22 + ], + [ + -62.81, + -22.02 + ], + [ + -62.82, + -22.03 + ], + [ + -62.81, + -22.05 + ], + [ + -62.8, + -22.06 + ], + [ + -62.8, + -22.07 + ], + [ + -62.8, + -22.08 + ], + [ + -62.81, + -22.12 + ], + [ + -62.81, + -22.14 + ], + [ + -62.74, + -22.17 + ], + [ + -62.73, + -22.18 + ], + [ + -62.73, + -22.19 + ], + [ + -62.72, + -22.21 + ], + [ + -62.71, + -22.21 + ], + [ + -62.7, + -22.19 + ], + [ + -62.69, + -22.19 + ], + [ + -62.68, + -22.23 + ], + [ + -62.67, + -22.23 + ], + [ + -62.67, + -22.24 + ], + [ + -62.66, + -22.26 + ], + [ + -62.65, + -22.26 + ], + [ + -62.6, + -22.31 + ], + [ + -62.59, + -22.32 + ], + [ + -62.58, + -22.32 + ], + [ + -62.57, + -22.32 + ], + [ + -62.55, + -22.34 + ], + [ + -62.54, + -22.35 + ], + [ + -62.54, + -22.36 + ], + [ + -62.54, + -22.37 + ], + [ + -62.54, + -22.38 + ], + [ + -62.53, + -22.37 + ], + [ + -62.49, + -22.37 + ], + [ + -62.47, + -22.39 + ], + [ + -62.47, + -22.4 + ], + [ + -62.45, + -22.41 + ], + [ + -62.45, + -22.42 + ], + [ + -62.44, + -22.42 + ], + [ + -62.42, + -22.43 + ], + [ + -62.41, + -22.45 + ], + [ + -62.4, + -22.45 + ], + [ + -62.38, + -22.47 + ], + [ + -62.38, + -22.48 + ], + [ + -62.37, + -22.47 + ], + [ + -62.36, + -22.46 + ], + [ + -62.35, + -22.46 + ], + [ + -62.34, + -22.48 + ], + [ + -62.32, + -22.48 + ], + [ + -62.3, + -22.48 + ], + [ + -62.29, + -22.48 + ], + [ + -62.28, + -22.51 + ], + [ + -62.3, + -22.52 + ], + [ + -62.29, + -22.52 + ], + [ + -62.26, + -22.52 + ], + [ + -62.24, + -22.54 + ], + [ + -62.23, + -22.55 + ], + [ + -62.22, + -22.56 + ], + [ + -62.24, + -22.57 + ], + [ + -62.25, + -22.58 + ], + [ + -62.25, + -22.6 + ], + [ + -62.24, + -22.61 + ], + [ + -62.24, + -22.63 + ], + [ + -62.23, + -22.65 + ], + [ + -62.22, + -22.64 + ], + [ + -62.22, + -22.66 + ], + [ + -62.2, + -22.66 + ], + [ + -62.2, + -22.68 + ], + [ + -62.2, + -22.7 + ], + [ + -60.99, + -23.82 + ], + [ + -60.04, + -24.01 + ], + [ + -59.13, + -24.62 + ], + [ + -57.86, + -25.08 + ], + [ + -57.72, + -25.26 + ], + [ + -57.72, + -25.27 + ], + [ + -57.7, + -25.28 + ], + [ + -57.65, + -25.36 + ], + [ + -57.65, + -25.38 + ], + [ + -57.57, + -25.43 + ], + [ + -57.58, + -25.5 + ], + [ + -57.58, + -25.52 + ], + [ + -57.57, + -25.54 + ], + [ + -57.59, + -25.57 + ], + [ + -57.61, + -25.59 + ], + [ + -57.61, + -25.6 + ], + [ + -57.63, + -25.6 + ], + [ + -57.67, + -25.59 + ], + [ + -57.67, + -25.6 + ], + [ + -57.68, + -25.6 + ], + [ + -57.67, + -25.64 + ], + [ + -57.67, + -25.65 + ], + [ + -57.7, + -25.66 + ], + [ + -57.71, + -25.65 + ], + [ + -57.75, + -25.67 + ], + [ + -57.76, + -25.68 + ], + [ + -57.75, + -25.71 + ], + [ + -57.77, + -25.75 + ], + [ + -57.82, + -25.75 + ], + [ + -57.83, + -25.76 + ], + [ + -57.81, + -25.79 + ], + [ + -57.79, + -25.82 + ], + [ + -57.83, + -25.85 + ], + [ + -57.87, + -25.86 + ], + [ + -57.87, + -25.88 + ], + [ + -57.87, + -25.93 + ], + [ + -57.88, + -25.93 + ], + [ + -57.91, + -26.03 + ], + [ + -57.92, + -26.04 + ], + [ + -57.95, + -26.07 + ], + [ + -57.96, + -26.08 + ], + [ + -58, + -26.09 + ], + [ + -58.01, + -26.1 + ], + [ + -58.08, + -26.11 + ], + [ + -58.1, + -26.13 + ], + [ + -58.12, + -26.19 + ], + [ + -58.15, + -26.18 + ], + [ + -58.15, + -26.19 + ], + [ + -58.14, + -26.2 + ], + [ + -58.13, + -26.21 + ], + [ + -58.14, + -26.25 + ], + [ + -58.18, + -26.36 + ], + [ + -58.18, + -26.37 + ], + [ + -58.21, + -26.38 + ], + [ + -58.22, + -26.41 + ], + [ + -58.18, + -26.46 + ], + [ + -58.21, + -26.47 + ], + [ + -58.23, + -26.47 + ], + [ + -58.21, + -26.51 + ], + [ + -58.22, + -26.53 + ], + [ + -58.23, + -26.53 + ], + [ + -58.21, + -26.55 + ], + [ + -58.2, + -26.58 + ], + [ + -58.19, + -26.6 + ], + [ + -58.21, + -26.63 + ], + [ + -58.19, + -26.64 + ], + [ + -58.26, + -26.65 + ], + [ + -58.26, + -26.68 + ], + [ + -58.26, + -26.71 + ], + [ + -58.26, + -26.72 + ], + [ + -58.25, + -26.74 + ], + [ + -58.29, + -26.76 + ], + [ + -58.31, + -26.81 + ], + [ + -58.32, + -26.81 + ], + [ + -58.34, + -26.82 + ], + [ + -58.32, + -26.85 + ], + [ + -58.32, + -26.86 + ], + [ + -58.33, + -26.87 + ], + [ + -58.36, + -26.87 + ], + [ + -58.38, + -26.88 + ], + [ + -58.45, + -26.92 + ], + [ + -58.45, + -26.93 + ], + [ + -58.49, + -26.93 + ], + [ + -58.49, + -26.92 + ], + [ + -58.5, + -26.93 + ], + [ + -58.49, + -26.94 + ], + [ + -58.48, + -26.96 + ], + [ + -58.52, + -27 + ], + [ + -58.51, + -27.02 + ], + [ + -58.51, + -27.06 + ], + [ + -58.54, + -27.03 + ], + [ + -58.55, + -27.06 + ], + [ + -58.56, + -27.06 + ], + [ + -58.57, + -27.11 + ], + [ + -58.59, + -27.11 + ], + [ + -58.65, + -27.13 + ], + [ + -58.65, + -27.14 + ], + [ + -58.66, + -27.16 + ], + [ + -58.66, + -27.19 + ], + [ + -58.61, + -27.29 + ], + [ + -58.79, + -27.39 + ], + [ + -58.51, + -27.28 + ], + [ + -58.32, + -27.28 + ], + [ + -58.31, + -27.27 + ], + [ + -58.16, + -27.28 + ], + [ + -58.15, + -27.27 + ], + [ + -58.12, + -27.27 + ], + [ + -58.1, + -27.27 + ], + [ + -58.01, + -27.26 + ], + [ + -57.99, + -27.26 + ], + [ + -57.62, + -27.38 + ], + [ + -57.59, + -27.4 + ], + [ + -57.55, + -27.42 + ], + [ + -57.52, + -27.44 + ], + [ + -57.47, + -27.44 + ], + [ + -57.42, + -27.43 + ], + [ + -57.19, + -27.47 + ], + [ + -57.17, + -27.48 + ], + [ + -57.01, + -27.49 + ], + [ + -57, + -27.49 + ], + [ + -56.97, + -27.5 + ], + [ + -56.96, + -27.51 + ], + [ + -56.96, + -27.53 + ], + [ + -56.95, + -27.53 + ], + [ + -56.92, + -27.57 + ], + [ + -56.91, + -27.58 + ], + [ + -56.87, + -27.6 + ], + [ + -56.83, + -27.61 + ], + [ + -56.82, + -27.6 + ], + [ + -56.78, + -27.59 + ], + [ + -56.77, + -27.6 + ], + [ + -56.74, + -27.61 + ], + [ + -56.73, + -27.6 + ], + [ + -56.69, + -27.58 + ], + [ + -56.68, + -27.57 + ], + [ + -56.7, + -27.53 + ], + [ + -56.7, + -27.52 + ], + [ + -56.35, + -27.54 + ], + [ + -56.34, + -27.53 + ], + [ + -56.24, + -27.49 + ], + [ + -56.23, + -27.45 + ], + [ + -56.12, + -27.32 + ], + [ + -56.11, + -27.32 + ], + [ + -55.99, + -27.35 + ], + [ + -55.98, + -27.35 + ], + [ + -55.83, + -27.53 + ], + [ + -55.76, + -27.44 + ], + [ + -55.74, + -27.45 + ], + [ + -55.71, + -27.41 + ], + [ + -55.7, + -27.4 + ], + [ + -55.69, + -27.39 + ], + [ + -55.68, + -27.38 + ], + [ + -55.67, + -27.37 + ], + [ + -55.66, + -27.37 + ], + [ + -55.65, + -27.37 + ], + [ + -55.63, + -27.36 + ], + [ + -55.62, + -27.35 + ], + [ + -55.6, + -27.34 + ], + [ + -55.58, + -27.23 + ], + [ + -55.6, + -27.22 + ], + [ + -55.59, + -27.16 + ], + [ + -55.58, + -27.17 + ], + [ + -55.52, + -27.1 + ], + [ + -55.51, + -27.1 + ], + [ + -55.5, + -27.11 + ], + [ + -55.49, + -27.11 + ], + [ + -55.48, + -27.11 + ], + [ + -55.47, + -27.11 + ], + [ + -55.45, + -27.04 + ], + [ + -55.45, + -27.03 + ], + [ + -55.44, + -27.02 + ], + [ + -55.44, + -27.01 + ], + [ + -55.43, + -27 + ], + [ + -55.42, + -26.99 + ], + [ + -55.4, + -26.98 + ], + [ + -55.38, + -26.97 + ], + [ + -55.36, + -26.96 + ], + [ + -55.34, + -26.96 + ], + [ + -55.3, + -26.96 + ], + [ + -55.28, + -26.95 + ], + [ + -55.27, + -26.94 + ], + [ + -55.26, + -26.94 + ], + [ + -55.23, + -26.95 + ], + [ + -55.22, + -26.96 + ], + [ + -55.21, + -26.97 + ], + [ + -55.18, + -26.97 + ], + [ + -55.16, + -26.96 + ], + [ + -55.14, + -26.95 + ], + [ + -55.13, + -26.94 + ], + [ + -55.14, + -26.93 + ], + [ + -55.14, + -26.92 + ], + [ + -55.15, + -26.91 + ], + [ + -55.15, + -26.88 + ], + [ + -55.08, + -26.82 + ], + [ + -55.02, + -26.79 + ], + [ + -55, + -26.79 + ], + [ + -54.98, + -26.79 + ], + [ + -54.96, + -26.78 + ], + [ + -54.94, + -26.75 + ], + [ + -54.94, + -26.74 + ], + [ + -54.95, + -26.71 + ], + [ + -54.95, + -26.7 + ], + [ + -54.94, + -26.69 + ], + [ + -54.93, + -26.68 + ], + [ + -54.92, + -26.67 + ], + [ + -54.9, + -26.66 + ], + [ + -54.89, + -26.66 + ], + [ + -54.87, + -26.66 + ], + [ + -54.85, + -26.66 + ], + [ + -54.84, + -26.67 + ], + [ + -54.82, + -26.67 + ], + [ + -54.81, + -26.67 + ], + [ + -54.81, + -26.66 + ], + [ + -54.79, + -26.64 + ], + [ + -54.78, + -26.61 + ], + [ + -54.79, + -26.59 + ], + [ + -54.79, + -26.58 + ], + [ + -54.8, + -26.57 + ], + [ + -54.81, + -26.56 + ], + [ + -54.8, + -26.54 + ], + [ + -54.78, + -26.51 + ], + [ + -54.77, + -26.5 + ], + [ + -54.76, + -26.5 + ], + [ + -54.75, + -26.49 + ], + [ + -54.74, + -26.48 + ], + [ + -54.73, + -26.47 + ], + [ + -54.72, + -26.46 + ], + [ + -54.7, + -26.44 + ], + [ + -54.7, + -26.43 + ], + [ + -54.7, + -26.41 + ], + [ + -54.7, + -26.4 + ], + [ + -54.7, + -26.38 + ], + [ + -54.69, + -26.37 + ], + [ + -54.68, + -26.36 + ], + [ + -54.68, + -26.35 + ], + [ + -54.67, + -26.34 + ], + [ + -54.67, + -26.33 + ], + [ + -54.65, + -26.32 + ], + [ + -54.65, + -26.31 + ], + [ + -54.66, + -26.29 + ], + [ + -54.68, + -26.26 + ], + [ + -54.66, + -26.25 + ], + [ + -54.65, + -26.24 + ], + [ + -54.64, + -26.23 + ], + [ + -54.63, + -26.23 + ], + [ + -54.62, + -26.21 + ], + [ + -54.63, + -26.19 + ], + [ + -54.65, + -26.19 + ], + [ + -54.67, + -26.16 + ], + [ + -54.67, + -26.15 + ], + [ + -54.67, + -26.14 + ], + [ + -54.65, + -26.12 + ], + [ + -54.65, + -26.1 + ], + [ + -54.64, + -26.1 + ], + [ + -54.64, + -26.08 + ], + [ + -54.65, + -26.07 + ], + [ + -54.66, + -26.04 + ], + [ + -54.67, + -26.03 + ], + [ + -54.68, + -26.02 + ], + [ + -54.68, + -26.01 + ], + [ + -54.67, + -25.99 + ], + [ + -54.66, + -25.98 + ], + [ + -54.64, + -25.98 + ], + [ + -54.62, + -25.98 + ], + [ + -54.62, + -25.94 + ], + [ + -54.62, + -25.9 + ], + [ + -54.61, + -25.88 + ], + [ + -54.6, + -25.87 + ], + [ + -54.59, + -25.85 + ], + [ + -54.59, + -25.84 + ], + [ + -54.59, + -25.83 + ], + [ + -54.59, + -25.82 + ], + [ + -54.62, + -25.79 + ], + [ + -54.63, + -25.77 + ], + [ + -54.63, + -25.76 + ], + [ + -54.64, + -25.73 + ], + [ + -54.64, + -25.71 + ], + [ + -54.65, + -25.7 + ], + [ + -54.65, + -25.69 + ], + [ + -54.66, + -25.68 + ], + [ + -54.64, + -25.66 + ], + [ + -54.62, + -25.66 + ], + [ + -54.59, + -25.67 + ], + [ + -54.58, + -25.65 + ], + [ + -54.6, + -25.62 + ], + [ + -54.6, + -25.61 + ], + [ + -54.59, + -25.59 + ], + [ + -54.56, + -25.59 + ], + [ + -54.55, + -25.59 + ], + [ + -54.53, + -25.61 + ], + [ + -54.54, + -25.62 + ], + [ + -54.53, + -25.63 + ], + [ + -54.52, + -25.62 + ], + [ + -54.51, + -25.62 + ], + [ + -54.49, + -25.62 + ], + [ + -54.47, + -25.64 + ], + [ + -54.45, + -25.66 + ], + [ + -54.44, + -25.69 + ], + [ + -54.42, + -25.65 + ], + [ + -54.4, + -25.65 + ], + [ + -54.4, + -25.64 + ], + [ + -54.39, + -25.63 + ], + [ + -54.38, + -25.6 + ], + [ + -54.37, + -25.6 + ], + [ + -54.34, + -25.6 + ], + [ + -54.34, + -25.59 + ], + [ + -54.33, + -25.57 + ], + [ + -54.32, + -25.56 + ], + [ + -54.3, + -25.56 + ], + [ + -54.29, + -25.56 + ], + [ + -54.28, + -25.56 + ], + [ + -54.27, + -25.57 + ], + [ + -54.26, + -25.58 + ], + [ + -54.25, + -25.59 + ], + [ + -54.24, + -25.59 + ], + [ + -54.24, + -25.58 + ], + [ + -54.23, + -25.56 + ], + [ + -54.22, + -25.57 + ], + [ + -54.21, + -25.58 + ], + [ + -54.2, + -25.58 + ], + [ + -54.18, + -25.58 + ], + [ + -54.18, + -25.57 + ], + [ + -54.19, + -25.56 + ], + [ + -54.2, + -25.56 + ], + [ + -54.19, + -25.53 + ], + [ + -54.18, + -25.54 + ], + [ + -54.16, + -25.53 + ], + [ + -54.15, + -25.52 + ], + [ + -54.14, + -25.52 + ], + [ + -54.13, + -25.51 + ], + [ + -54.11, + -25.54 + ], + [ + -54.11, + -25.59 + ], + [ + -54.11, + -25.6 + ], + [ + -54.04, + -25.58 + ], + [ + -54.03, + -25.57 + ], + [ + -54.02, + -25.57 + ], + [ + -54, + -25.58 + ], + [ + -53.99, + -25.59 + ], + [ + -53.97, + -25.62 + ], + [ + -53.96, + -25.63 + ], + [ + -53.96, + -25.64 + ], + [ + -53.83, + -25.78 + ], + [ + -53.64, + -26.21 + ], + [ + -53.68, + -26.86 + ], + [ + -53.68, + -26.9 + ], + [ + -53.68, + -26.94 + ], + [ + -53.7, + -26.95 + ], + [ + -53.7, + -26.96 + ], + [ + -53.72, + -26.98 + ], + [ + -53.74, + -26.99 + ], + [ + -53.74, + -27 + ], + [ + -53.76, + -27.02 + ], + [ + -53.75, + -27.02 + ], + [ + -53.78, + -27.06 + ], + [ + -53.78, + -27.05 + ], + [ + -53.81, + -27.1 + ], + [ + -53.81, + -27.14 + ], + [ + -53.8, + -27.14 + ], + [ + -53.83, + -27.16 + ], + [ + -53.84, + -27.17 + ], + [ + -53.85, + -27.16 + ], + [ + -53.85, + -27.13 + ], + [ + -53.86, + -27.13 + ], + [ + -53.87, + -27.13 + ], + [ + -53.88, + -27.13 + ], + [ + -53.89, + -27.14 + ], + [ + -53.89, + -27.16 + ], + [ + -53.91, + -27.18 + ], + [ + -53.92, + -27.17 + ], + [ + -53.94, + -27.15 + ], + [ + -53.95, + -27.15 + ], + [ + -53.96, + -27.17 + ], + [ + -53.96, + -27.18 + ], + [ + -53.96, + -27.19 + ], + [ + -53.97, + -27.2 + ], + [ + -54, + -27.2 + ], + [ + -54.01, + -27.2 + ], + [ + -54.02, + -27.22 + ], + [ + -54.02, + -27.25 + ], + [ + -54.03, + -27.26 + ], + [ + -54.05, + -27.26 + ], + [ + -54.07, + -27.28 + ], + [ + -54.09, + -27.3 + ], + [ + -54.12, + -27.3 + ], + [ + -54.14, + -27.3 + ], + [ + -54.16, + -27.26 + ], + [ + -54.18, + -27.26 + ], + [ + -54.19, + -27.29 + ], + [ + -54.2, + -27.31 + ], + [ + -54.21, + -27.33 + ], + [ + -54.21, + -27.34 + ], + [ + -54.21, + -27.37 + ], + [ + -54.22, + -27.39 + ], + [ + -54.27, + -27.41 + ], + [ + -54.27, + -27.42 + ], + [ + -54.27, + -27.43 + ], + [ + -54.27, + -27.44 + ], + [ + -54.3, + -27.44 + ], + [ + -54.31, + -27.43 + ], + [ + -54.34, + -27.4 + ], + [ + -54.35, + -27.42 + ], + [ + -54.34, + -27.43 + ], + [ + -54.34, + -27.44 + ], + [ + -54.34, + -27.46 + ], + [ + -54.35, + -27.47 + ], + [ + -54.36, + -27.46 + ], + [ + -54.38, + -27.43 + ], + [ + -54.4, + -27.41 + ], + [ + -54.42, + -27.41 + ], + [ + -54.43, + -27.42 + ], + [ + -54.44, + -27.43 + ], + [ + -54.45, + -27.42 + ], + [ + -54.47, + -27.43 + ], + [ + -54.47, + -27.44 + ], + [ + -54.44, + -27.47 + ], + [ + -54.46, + -27.48 + ], + [ + -54.47, + -27.48 + ], + [ + -54.48, + -27.48 + ], + [ + -54.51, + -27.48 + ], + [ + -54.51, + -27.49 + ], + [ + -54.52, + -27.51 + ], + [ + -54.54, + -27.5 + ], + [ + -54.54, + -27.49 + ], + [ + -54.55, + -27.48 + ], + [ + -54.56, + -27.47 + ], + [ + -54.57, + -27.45 + ], + [ + -54.59, + -27.46 + ], + [ + -54.59, + -27.48 + ], + [ + -54.6, + -27.5 + ], + [ + -54.61, + -27.51 + ], + [ + -54.61, + -27.52 + ], + [ + -54.61, + -27.53 + ], + [ + -54.65, + -27.54 + ], + [ + -54.65, + -27.52 + ], + [ + -54.66, + -27.51 + ], + [ + -54.68, + -27.51 + ], + [ + -54.68, + -27.52 + ], + [ + -54.68, + -27.53 + ], + [ + -54.68, + -27.54 + ], + [ + -54.68, + -27.57 + ], + [ + -54.69, + -27.57 + ], + [ + -54.7, + -27.57 + ], + [ + -54.71, + -27.57 + ], + [ + -54.73, + -27.56 + ], + [ + -54.76, + -27.58 + ], + [ + -54.79, + -27.57 + ], + [ + -54.79, + -27.56 + ], + [ + -54.82, + -27.54 + ], + [ + -54.82, + -27.55 + ], + [ + -54.83, + -27.57 + ], + [ + -54.83, + -27.58 + ], + [ + -54.84, + -27.62 + ], + [ + -54.85, + -27.63 + ], + [ + -54.91, + -27.64 + ], + [ + -54.91, + -27.65 + ], + [ + -54.91, + -27.73 + ], + [ + -54.93, + -27.75 + ], + [ + -54.93, + -27.76 + ], + [ + -54.94, + -27.77 + ], + [ + -54.97, + -27.77 + ], + [ + -54.99, + -27.77 + ], + [ + -55, + -27.79 + ], + [ + -55.01, + -27.8 + ], + [ + -55.03, + -27.79 + ], + [ + -55.04, + -27.78 + ], + [ + -55.05, + -27.77 + ], + [ + -55.06, + -27.77 + ], + [ + -55.08, + -27.78 + ], + [ + -55.08, + -27.79 + ], + [ + -55.07, + -27.8 + ], + [ + -55.06, + -27.81 + ], + [ + -55.05, + -27.82 + ], + [ + -55.02, + -27.83 + ], + [ + -55.02, + -27.84 + ], + [ + -55.02, + -27.85 + ], + [ + -55.04, + -27.86 + ], + [ + -55.08, + -27.85 + ], + [ + -55.1, + -27.85 + ], + [ + -55.11, + -27.85 + ], + [ + -55.12, + -27.86 + ], + [ + -55.15, + -27.88 + ], + [ + -55.13, + -27.89 + ], + [ + -55.15, + -27.88 + ], + [ + -55.16, + -27.88 + ], + [ + -55.16, + -27.87 + ], + [ + -55.2, + -27.86 + ], + [ + -55.21, + -27.87 + ], + [ + -55.23, + -27.88 + ], + [ + -55.24, + -27.9 + ], + [ + -55.25, + -27.91 + ], + [ + -55.25, + -27.92 + ], + [ + -55.29, + -27.93 + ], + [ + -55.31, + -27.92 + ], + [ + -55.33, + -27.93 + ], + [ + -55.33, + -27.94 + ], + [ + -55.34, + -27.96 + ], + [ + -55.37, + -27.97 + ], + [ + -55.38, + -27.98 + ], + [ + -55.38, + -27.99 + ], + [ + -55.37, + -28 + ], + [ + -55.39, + -28.04 + ], + [ + -55.42, + -28.06 + ], + [ + -55.43, + -28.07 + ], + [ + -55.47, + -28.09 + ], + [ + -55.48, + -28.08 + ], + [ + -55.5, + -28.08 + ], + [ + -55.5, + -28.09 + ], + [ + -55.51, + -28.1 + ], + [ + -55.52, + -28.11 + ], + [ + -55.52, + -28.12 + ], + [ + -55.54, + -28.12 + ], + [ + -55.56, + -28.16 + ], + [ + -55.58, + -28.15 + ], + [ + -55.59, + -28.12 + ], + [ + -55.61, + -28.12 + ], + [ + -55.62, + -28.14 + ], + [ + -55.62, + -28.15 + ], + [ + -55.62, + -28.16 + ], + [ + -55.63, + -28.17 + ], + [ + -55.63, + -28.18 + ], + [ + -55.65, + -28.18 + ], + [ + -55.67, + -28.19 + ], + [ + -55.68, + -28.21 + ], + [ + -55.69, + -28.21 + ], + [ + -55.71, + -28.23 + ], + [ + -55.75, + -28.24 + ], + [ + -55.78, + -28.25 + ], + [ + -55.78, + -28.26 + ], + [ + -55.78, + -28.27 + ], + [ + -55.77, + -28.28 + ], + [ + -55.76, + -28.28 + ], + [ + -55.74, + -28.29 + ], + [ + -55.71, + -28.3 + ], + [ + -55.7, + -28.31 + ], + [ + -55.69, + -28.32 + ], + [ + -55.67, + -28.33 + ], + [ + -55.67, + -28.35 + ], + [ + -55.68, + -28.37 + ], + [ + -55.69, + -28.38 + ], + [ + -55.69, + -28.39 + ], + [ + -55.69, + -28.41 + ], + [ + -55.72, + -28.42 + ], + [ + -55.72, + -28.41 + ], + [ + -55.73, + -28.4 + ], + [ + -55.73, + -28.38 + ], + [ + -55.74, + -28.36 + ], + [ + -55.85, + -28.36 + ], + [ + -55.87, + -28.36 + ], + [ + -55.89, + -28.38 + ], + [ + -55.9, + -28.39 + ], + [ + -55.9, + -28.41 + ], + [ + -55.9, + -28.42 + ], + [ + -55.9, + -28.46 + ], + [ + -55.92, + -28.48 + ], + [ + -55.96, + -28.5 + ], + [ + -55.97, + -28.5 + ], + [ + -55.99, + -28.5 + ], + [ + -56.01, + -28.51 + ], + [ + -56.02, + -28.52 + ], + [ + -56.02, + -28.53 + ], + [ + -56.03, + -28.54 + ], + [ + -56.01, + -28.57 + ], + [ + -56.01, + -28.61 + ], + [ + -56.3, + -28.89 + ], + [ + -56.31, + -28.91 + ], + [ + -56.33, + -28.93 + ], + [ + -56.35, + -28.94 + ], + [ + -56.37, + -28.95 + ], + [ + -56.38, + -28.95 + ], + [ + -56.39, + -28.96 + ], + [ + -56.41, + -28.97 + ], + [ + -56.41, + -28.98 + ], + [ + -56.41, + -29.01 + ], + [ + -56.4, + -29.03 + ], + [ + -56.41, + -29.04 + ], + [ + -56.41, + -29.05 + ], + [ + -56.41, + -29.07 + ], + [ + -56.46, + -29.08 + ], + [ + -56.48, + -29.09 + ], + [ + -56.53, + -29.1 + ], + [ + -56.55, + -29.12 + ], + [ + -56.56, + -29.12 + ], + [ + -56.57, + -29.12 + ], + [ + -56.59, + -29.11 + ], + [ + -56.62, + -29.17 + ], + [ + -56.62, + -29.18 + ], + [ + -56.63, + -29.18 + ], + [ + -56.64, + -29.19 + ], + [ + -56.69, + -29.33 + ], + [ + -56.69, + -29.34 + ], + [ + -56.7, + -29.36 + ], + [ + -56.73, + -29.37 + ], + [ + -56.76, + -29.37 + ], + [ + -56.78, + -29.41 + ], + [ + -56.78, + -29.44 + ], + [ + -56.81, + -29.48 + ], + [ + -56.82, + -29.49 + ], + [ + -56.88, + -29.52 + ], + [ + -56.93, + -29.56 + ], + [ + -56.94, + -29.57 + ], + [ + -56.96, + -29.59 + ], + [ + -56.98, + -29.61 + ], + [ + -56.99, + -29.62 + ], + [ + -57.01, + -29.65 + ], + [ + -57.02, + -29.66 + ], + [ + -57.04, + -29.69 + ], + [ + -57.07, + -29.72 + ], + [ + -57.07, + -29.73 + ], + [ + -57.1, + -29.75 + ], + [ + -57.22, + -29.78 + ], + [ + -57.28, + -29.82 + ], + [ + -57.3, + -29.84 + ], + [ + -57.31, + -29.85 + ], + [ + -57.33, + -29.88 + ], + [ + -57.33, + -29.89 + ], + [ + -57.33, + -29.92 + ], + [ + -57.32, + -29.93 + ], + [ + -57.33, + -29.98 + ], + [ + -57.35, + -30 + ], + [ + -57.38, + -30.02 + ], + [ + -57.39, + -30.02 + ], + [ + -57.41, + -30.04 + ], + [ + -57.44, + -30.07 + ], + [ + -57.45, + -30.08 + ], + [ + -57.46, + -30.11 + ], + [ + -57.49, + -30.13 + ], + [ + -57.52, + -30.15 + ], + [ + -57.54, + -30.16 + ], + [ + -57.59, + -30.18 + ], + [ + -57.63, + -30.17 + ], + [ + -57.65, + -30.18 + ], + [ + -57.65, + -30.2 + ], + [ + -57.63, + -30.23 + ], + [ + -57.63, + -30.28 + ], + [ + -57.64, + -30.32 + ], + [ + -57.68, + -30.37 + ], + [ + -57.71, + -30.4 + ], + [ + -57.74, + -30.41 + ], + [ + -57.77, + -30.42 + ], + [ + -57.79, + -30.44 + ], + [ + -57.82, + -30.46 + ], + [ + -57.83, + -30.46 + ], + [ + -57.84, + -30.47 + ], + [ + -57.85, + -30.68 + ], + [ + -57.83, + -30.68 + ], + [ + -57.81, + -30.69 + ], + [ + -57.81, + -30.74 + ], + [ + -57.81, + -30.76 + ], + [ + -58.04, + -30.94 + ], + [ + -57.88, + -31.01 + ], + [ + -57.94, + -31.2 + ], + [ + -58.05, + -31.17 + ], + [ + -57.96, + -31.3 + ], + [ + -57.98, + -31.32 + ], + [ + -57.98, + -31.33 + ], + [ + -57.99, + -31.35 + ], + [ + -57.99, + -31.36 + ], + [ + -58, + -31.4 + ], + [ + -58.01, + -31.41 + ], + [ + -58.05, + -31.43 + ], + [ + -58.06, + -31.44 + ], + [ + -58.08, + -31.47 + ], + [ + -58.08, + -31.48 + ], + [ + -58.05, + -31.5 + ], + [ + -58.03, + -31.51 + ], + [ + -58, + -31.53 + ], + [ + -57.99, + -31.55 + ], + [ + -57.98, + -31.58 + ], + [ + -57.98, + -31.59 + ], + [ + -58, + -31.63 + ], + [ + -58.01, + -31.67 + ], + [ + -58.02, + -31.69 + ], + [ + -58.03, + -31.7 + ], + [ + -58.04, + -31.73 + ], + [ + -58.06, + -31.79 + ], + [ + -58.07, + -31.8 + ], + [ + -58.08, + -31.82 + ], + [ + -58.13, + -31.83 + ], + [ + -58.14, + -31.83 + ], + [ + -58.16, + -31.84 + ], + [ + -58.2, + -31.86 + ], + [ + -58.2, + -31.89 + ], + [ + -58.16, + -31.95 + ], + [ + -58.16, + -31.96 + ], + [ + -58.16, + -32.08 + ], + [ + -58.17, + -32.1 + ], + [ + -58.18, + -32.15 + ], + [ + -58.18, + -32.16 + ], + [ + -58.17, + -32.17 + ], + [ + -58.12, + -32.23 + ], + [ + -58.1, + -32.25 + ], + [ + -58.1, + -32.27 + ], + [ + -58.11, + -32.31 + ], + [ + -58.11, + -32.32 + ], + [ + -58.14, + -32.35 + ], + [ + -58.17, + -32.36 + ], + [ + -58.18, + -32.38 + ], + [ + -58.19, + -32.4 + ], + [ + -58.2, + -32.41 + ], + [ + -58.2, + -32.47 + ], + [ + -58.17, + -32.56 + ], + [ + -58.16, + -32.59 + ], + [ + -58.15, + -32.64 + ], + [ + -58.15, + -32.71 + ], + [ + -58.13, + -32.78 + ], + [ + -58.12, + -32.9 + ], + [ + -58.11, + -32.93 + ], + [ + -58.11, + -32.94 + ], + [ + -58.1, + -32.95 + ], + [ + -58.09, + -32.97 + ], + [ + -58.08, + -33 + ], + [ + -58.09, + -32.99 + ], + [ + -58.11, + -33.01 + ], + [ + -58.13, + -33.02 + ], + [ + -58.15, + -33.05 + ], + [ + -58.16, + -33.06 + ], + [ + -58.18, + -33.08 + ], + [ + -58.22, + -33.09 + ], + [ + -58.24, + -33.09 + ], + [ + -58.26, + -33.1 + ], + [ + -58.45, + -33.09 + ], + [ + -58.54, + -33.46 + ], + [ + -58.43, + -33.89 + ], + [ + -58.42, + -33.91 + ], + [ + -58.42, + -33.92 + ], + [ + -58.46, + -34.52 + ], + [ + -57.5, + -35.03 + ], + [ + -57.13, + -35.44 + ], + [ + -57.41, + -35.96 + ], + [ + -57.13, + -36.27 + ], + [ + -56.73, + -36.33 + ], + [ + -56.67, + -36.87 + ], + [ + -57.49, + -37.83 + ], + [ + -57.54, + -38.1 + ], + [ + -59.01, + -38.68 + ], + [ + -60.85, + -38.98 + ], + [ + -61.81, + -38.99 + ], + [ + -62.51, + -38.71 + ], + [ + -62.33, + -38.85 + ], + [ + -62.32, + -39.27 + ], + [ + -62.01, + -39.38 + ], + [ + -62.29, + -39.29 + ], + [ + -62.04, + -39.45 + ], + [ + -62.11, + -39.84 + ], + [ + -62.32, + -39.87 + ], + [ + -62.48, + -40.3 + ], + [ + -62.17, + -40.63 + ], + [ + -62.38, + -40.91 + ], + [ + -62.82, + -40.97 + ], + [ + -63.08, + -41.15 + ], + [ + -63.78, + -41.16 + ], + [ + -64.88, + -40.83 + ], + [ + -64.73, + -40.8 + ], + [ + -64.85, + -40.72 + ], + [ + -65.11, + -40.83 + ], + [ + -65.04, + -42.06 + ], + [ + -64.46, + -42.24 + ], + [ + -64.62, + -42.42 + ], + [ + -64.43, + -42.44 + ], + [ + -64.04, + -42.35 + ], + [ + -64.38, + -42.24 + ], + [ + -63.76, + -42.08 + ], + [ + -63.63, + -42.76 + ], + [ + -64.14, + -42.87 + ], + [ + -64.21, + -42.62 + ], + [ + -64.56, + -42.49 + ], + [ + -64.98, + -42.65 + ], + [ + -65.01, + -42.78 + ], + [ + -64.31, + -42.98 + ], + [ + -64.98, + -43.26 + ], + [ + -65.33, + -43.66 + ], + [ + -65.22, + -44.37 + ], + [ + -65.73, + -44.81 + ], + [ + -65.52, + -44.93 + ], + [ + -65.69, + -45.06 + ], + [ + -66.2, + -44.98 + ], + [ + -66.6, + -45.14 + ], + [ + -66.52, + -45.22 + ], + [ + -66.96, + -45.27 + ], + [ + -67.59, + -45.99 + ], + [ + -67.5, + -46.47 + ], + [ + -66.79, + -47 + ], + [ + -65.74, + -47.2 + ], + [ + -65.84, + -47.74 + ], + [ + -66.29, + -47.87 + ], + [ + -65.88, + -47.76 + ], + [ + -65.76, + -47.92 + ], + [ + -67.55, + -49.01 + ], + [ + -67.83, + -49.39 + ], + [ + -67.61, + -49.25 + ], + [ + -67.9, + -50 + ], + [ + -68.34, + -50.12 + ], + [ + -68.62, + -49.8 + ], + [ + -68.57, + -49.94 + ], + [ + -68.78, + -49.97 + ], + [ + -68.36, + -50.16 + ], + [ + -68.88, + -50.34 + ], + [ + -69.13, + -50.9 + ], + [ + -69.46, + -51.1 + ], + [ + -69.17, + -50.98 + ], + [ + -68.95, + -51.56 + ], + [ + -69.59, + -51.62 + ], + [ + -68.96, + -51.62 + ], + [ + -68.43, + -52.4 + ], + [ + -70, + -52 + ], + [ + -72.03, + -51.97 + ], + [ + -72.03, + -51.96 + ], + [ + -72.11, + -51.76 + ], + [ + -72.12, + -51.75 + ], + [ + -72.44, + -51.58 + ], + [ + -72.38, + -51.05 + ], + [ + -72.37, + -51.04 + ], + [ + -72.36, + -50.62 + ], + [ + -73.12, + -50.78 + ], + [ + -73.14, + -50.78 + ], + [ + -73.43, + -50.37 + ], + [ + -73.43, + -50.36 + ], + [ + -73.45, + -49.79 + ] + ], + [ + [ + -71.59, + -40.96 + ], + [ + -71.67, + -41.05 + ], + [ + -71.44, + -41.11 + ], + [ + -71.16, + -41.06 + ], + [ + -71.47, + -41.01 + ], + [ + -71.67, + -40.62 + ], + [ + -71.8, + -40.73 + ], + [ + -71.59, + -40.96 + ] + ], + [ + [ + -72.77, + -50.43 + ], + [ + -72.91, + -50.49 + ], + [ + -72.95, + -50.5 + ], + [ + -73.04, + -50.46 + ], + [ + -73, + -50.51 + ], + [ + -72.93, + -50.51 + ], + [ + -72.91, + -50.54 + ], + [ + -72.99, + -50.67 + ], + [ + -72.77, + -50.43 + ] + ], + [ + [ + -73.32, + -49.92 + ], + [ + -73.33, + -50.23 + ], + [ + -73.17, + -50.11 + ], + [ + -73.12, + -50.21 + ], + [ + -72.82, + -50.28 + ], + [ + -72.99, + -50.34 + ], + [ + -71.98, + -50.23 + ], + [ + -72.11, + -50.11 + ], + [ + -72.99, + -50.22 + ], + [ + -73.32, + -49.92 + ] + ], + [ + [ + -68.96, + -45.27 + ], + [ + -68.99, + -45.48 + ], + [ + -68.69, + -45.66 + ], + [ + -68.66, + -45.4 + ], + [ + -68.82, + -45.48 + ], + [ + -68.96, + -45.27 + ] + ], + [ + [ + -73.21, + -50.3 + ], + [ + -73.04, + -50.48 + ], + [ + -73.04, + -50.46 + ], + [ + -73.02, + -50.46 + ], + [ + -73.04, + -50.36 + ], + [ + -73.01, + -50.32 + ], + [ + -73.21, + -50.3 + ], + [ + -73.26, + -50.29 + ], + [ + -73.21, + -50.3 + ] + ], + [ + [ + -71.4, + -48.92 + ], + [ + -71.19, + -49.03 + ], + [ + -71.08, + -48.84 + ], + [ + -71.4, + -48.92 + ] + ], + [ + [ + -70.14, + -40.38 + ], + [ + -70.31, + -40.49 + ], + [ + -70.18, + -40.53 + ], + [ + -70.14, + -40.38 + ] + ], + [ + [ + -69.04, + -39.4 + ], + [ + -69.34, + -39.64 + ], + [ + -68.69, + -39.32 + ], + [ + -69.04, + -39.4 + ] + ], + [ + [ + -68.94, + -38.46 + ], + [ + -68.94, + -38.65 + ], + [ + -68.69, + -38.55 + ], + [ + -68.46, + -38.65 + ], + [ + -68.73, + -38.46 + ], + [ + -68.94, + -38.46 + ] + ], + [ + [ + -69.08, + -35.46 + ], + [ + -69.3, + -35.53 + ], + [ + -69.05, + -35.92 + ], + [ + -69.08, + -35.46 + ] + ], + [ + [ + -67.63, + -38.2 + ], + [ + -67.68, + -38.3 + ], + [ + -67.15, + -38.15 + ], + [ + -67.63, + -38.2 + ] + ], + [ + [ + -67.02, + -37.34 + ], + [ + -67.15, + -37.44 + ], + [ + -66.97, + -37.52 + ], + [ + -67.02, + -37.34 + ] + ], + [ + [ + -65.02, + -27.45 + ], + [ + -65.07, + -27.64 + ], + [ + -64.89, + -27.57 + ], + [ + -65.02, + -27.45 + ] + ], + [ + [ + -65.88, + -23.56 + ], + [ + -66.26, + -23.76 + ], + [ + -65.96, + -23.74 + ], + [ + -65.88, + -23.56 + ] + ], + [ + [ + -66.75, + -23.37 + ], + [ + -66.7, + -23.56 + ], + [ + -66.62, + -23.4 + ], + [ + -66.75, + -23.37 + ] + ], + [ + [ + -62.8, + -30.35 + ], + [ + -63.11, + -30.48 + ], + [ + -63.37, + -30.32 + ], + [ + -63.37, + -30.45 + ], + [ + -62.86, + -30.81 + ], + [ + -62.89, + -30.96 + ], + [ + -62.23, + -30.86 + ], + [ + -62.2, + -30.22 + ], + [ + -62.51, + -30.2 + ], + [ + -62.8, + -30.35 + ] + ], + [ + [ + -62.58, + -37.02 + ], + [ + -62.42, + -37.05 + ], + [ + -62.38, + -36.91 + ], + [ + -62.58, + -37.02 + ] + ], + [ + [ + -62.36, + -35.96 + ], + [ + -62.58, + -36 + ], + [ + -62.36, + -36.08 + ], + [ + -62.36, + -35.96 + ] + ], + [ + [ + -60.73, + -32.22 + ], + [ + -60.69, + -32.33 + ], + [ + -60.69, + -32.1 + ], + [ + -60.73, + -32.22 + ] + ], + [ + [ + -60.16, + -32.64 + ], + [ + -59.99, + -32.77 + ], + [ + -60.16, + -32.79 + ], + [ + -60.19, + -32.69 + ], + [ + -60.18, + -32.84 + ], + [ + -59.99, + -32.86 + ], + [ + -59.99, + -32.72 + ], + [ + -60.16, + -32.64 + ] + ], + [ + [ + -60.09, + -30.68 + ], + [ + -60.12, + -30.82 + ], + [ + -59.97, + -30.68 + ], + [ + -60.09, + -30.68 + ] + ], + [ + [ + -60.11, + -31.24 + ], + [ + -60.12, + -31.34 + ], + [ + -59.99, + -31.28 + ], + [ + -60.11, + -31.24 + ] + ] + ], + [ + [ + [ + -72.61, + -48.84 + ], + [ + -72.6, + -48.83 + ], + [ + -72.6, + -48.85 + ], + [ + -72.61, + -48.84 + ] + ] + ], + [ + [ + [ + -57.62, + -25.62 + ], + [ + -57.65, + -25.6 + ], + [ + -57.63, + -25.6 + ], + [ + -57.62, + -25.62 + ] + ] + ], + [ + [ + [ + -54.09, + -25.57 + ], + [ + -54.08, + -25.56 + ], + [ + -54.07, + -25.56 + ], + [ + -54.06, + -25.57 + ], + [ + -54.09, + -25.57 + ] + ] + ], + [ + [ + [ + -55.89, + -28.44 + ], + [ + -55.89, + -28.48 + ], + [ + -55.9, + -28.46 + ], + [ + -55.89, + -28.44 + ] + ] + ], + [ + [ + [ + -56.58, + -29.12 + ], + [ + -56.59, + -29.12 + ], + [ + -56.59, + -29.11 + ], + [ + -56.58, + -29.12 + ] + ] + ], + [ + [ + [ + -68.61, + -54.89 + ], + [ + -68.6, + -54.65 + ], + [ + -68.61, + -54.56 + ], + [ + -67.21, + -54.54 + ], + [ + -68.61, + -54.53 + ], + [ + -68.61, + -54.38 + ], + [ + -68.61, + -54.37 + ], + [ + -68.61, + -54.16 + ], + [ + -68.61, + -53.25 + ], + [ + -68.61, + -52.66 + ], + [ + -68.2, + -53.14 + ], + [ + -68.33, + -53.01 + ], + [ + -68.56, + -53.25 + ], + [ + -68.14, + -53.33 + ], + [ + -67.72, + -53.81 + ], + [ + -66.47, + -54.48 + ], + [ + -65.7, + -54.72 + ], + [ + -65.12, + -54.66 + ], + [ + -65.22, + -54.82 + ], + [ + -66.45, + -55.06 + ], + [ + -67.28, + -54.87 + ], + [ + -68.25, + -54.79 + ], + [ + -68.61, + -54.89 + ] + ] + ], + [ + [ + [ + -58.32, + -27.26 + ], + [ + -58.31, + -27.26 + ], + [ + -58.31, + -27.27 + ], + [ + -58.32, + -27.27 + ], + [ + -58.32, + -27.26 + ] + ] + ], + [ + [ + [ + -58.21, + -27.26 + ], + [ + -58.18, + -27.26 + ], + [ + -58.2, + -27.27 + ], + [ + -58.21, + -27.26 + ] + ] + ], + [ + [ + [ + -57.77, + -27.32 + ], + [ + -57.74, + -27.32 + ], + [ + -57.77, + -27.33 + ], + [ + -57.77, + -27.32 + ] + ] + ], + [ + [ + [ + -57.55, + -27.41 + ], + [ + -57.56, + -27.41 + ], + [ + -57.57, + -27.4 + ], + [ + -57.55, + -27.39 + ], + [ + -57.5, + -27.4 + ], + [ + -57.48, + -27.44 + ], + [ + -57.49, + -27.44 + ], + [ + -57.55, + -27.41 + ] + ] + ], + [ + [ + [ + -56.9, + -27.57 + ], + [ + -56.92, + -27.56 + ], + [ + -56.92, + -27.54 + ], + [ + -56.88, + -27.58 + ], + [ + -56.9, + -27.57 + ] + ] + ], + [ + [ + [ + -56.73, + -27.5 + ], + [ + -56.73, + -27.51 + ], + [ + -56.73, + -27.52 + ], + [ + -56.76, + -27.56 + ], + [ + -56.79, + -27.57 + ], + [ + -56.81, + -27.58 + ], + [ + -56.82, + -27.59 + ], + [ + -56.83, + -27.6 + ], + [ + -56.85, + -27.59 + ], + [ + -56.91, + -27.53 + ], + [ + -56.92, + -27.53 + ], + [ + -56.95, + -27.52 + ], + [ + -56.96, + -27.51 + ], + [ + -56.97, + -27.5 + ], + [ + -56.98, + -27.49 + ], + [ + -56.99, + -27.49 + ], + [ + -57, + -27.49 + ], + [ + -57.03, + -27.48 + ], + [ + -57.02, + -27.48 + ], + [ + -57, + -27.47 + ], + [ + -56.99, + -27.46 + ], + [ + -56.97, + -27.44 + ], + [ + -56.95, + -27.44 + ], + [ + -56.94, + -27.43 + ], + [ + -56.93, + -27.43 + ], + [ + -56.92, + -27.42 + ], + [ + -56.91, + -27.42 + ], + [ + -56.9, + -27.42 + ], + [ + -56.89, + -27.42 + ], + [ + -56.87, + -27.43 + ], + [ + -56.86, + -27.44 + ], + [ + -56.85, + -27.45 + ], + [ + -56.83, + -27.47 + ], + [ + -56.82, + -27.47 + ], + [ + -56.81, + -27.48 + ], + [ + -56.78, + -27.5 + ], + [ + -56.77, + -27.5 + ], + [ + -56.73, + -27.5 + ] + ] + ], + [ + [ + [ + -56.72, + -27.52 + ], + [ + -56.7, + -27.54 + ], + [ + -56.7, + -27.55 + ], + [ + -56.73, + -27.59 + ], + [ + -56.74, + -27.59 + ], + [ + -56.76, + -27.57 + ], + [ + -56.72, + -27.52 + ] + ] + ], + [ + [ + [ + -56.76, + -27.59 + ], + [ + -56.78, + -27.59 + ], + [ + -56.78, + -27.58 + ], + [ + -56.76, + -27.58 + ], + [ + -56.76, + -27.59 + ] + ] + ], + [ + [ + [ + -56.69, + -27.57 + ], + [ + -56.7, + -27.57 + ], + [ + -56.7, + -27.56 + ], + [ + -56.69, + -27.57 + ] + ] + ], + [ + [ + [ + -64.36, + -54.75 + ], + [ + -63.8, + -54.73 + ], + [ + -64.7, + -54.92 + ], + [ + -64.69, + -54.78 + ], + [ + -64.36, + -54.75 + ] + ] + ] + ] + }, + "properties": { + "A3": "ARG" + } + }, + { + "type": "Feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + 145.72, + 15.22 + ], + [ + 145.83, + 15.27 + ], + [ + 145.75, + 15.09 + ], + [ + 145.72, + 15.22 + ] + ] + ] + }, + "properties": { + "A3": "MNP" + } + }, + { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + -71.76, + 18.03 + ], + [ + -71.7, + 18.34 + ], + [ + -71.91, + 18.48 + ], + [ + -71.88, + 18.49 + ], + [ + -71.94, + 18.56 + ], + [ + -71.95, + 18.58 + ], + [ + -71.97, + 18.6 + ], + [ + -71.98, + 18.61 + ], + [ + -71.99, + 18.62 + ], + [ + -72.01, + 18.62 + ], + [ + -71.74, + 18.72 + ], + [ + -71.72, + 18.88 + ], + [ + -71.89, + 18.96 + ], + [ + -71.64, + 19.2 + ], + [ + -71.63, + 19.2 + ], + [ + -71.63, + 19.21 + ], + [ + -71.64, + 19.23 + ], + [ + -71.64, + 19.22 + ], + [ + -71.64, + 19.23 + ], + [ + -71.67, + 19.24 + ], + [ + -71.68, + 19.24 + ], + [ + -71.76, + 19.7 + ], + [ + -71.65, + 19.9 + ], + [ + -71.25, + 19.83 + ], + [ + -71.01, + 19.93 + ], + [ + -70.27, + 19.64 + ], + [ + -69.96, + 19.68 + ], + [ + -69.74, + 19.28 + ], + [ + -69.15, + 19.3 + ], + [ + -69.23, + 19.18 + ], + [ + -69.62, + 19.22 + ], + [ + -69.62, + 19.08 + ], + [ + -68.78, + 18.97 + ], + [ + -68.32, + 18.6 + ], + [ + -68.64, + 18.21 + ], + [ + -69.21, + 18.46 + ], + [ + -69.88, + 18.48 + ], + [ + -70.15, + 18.23 + ], + [ + -70.5, + 18.19 + ], + [ + -70.61, + 18.42 + ], + [ + -71.06, + 18.32 + ], + [ + -71.42, + 17.6 + ], + [ + -71.69, + 17.77 + ], + [ + -71.76, + 18.03 + ] + ], + [ + [ + -71.72, + 18.57 + ], + [ + -71.85, + 18.52 + ], + [ + -71.72, + 18.41 + ], + [ + -71.48, + 18.44 + ], + [ + -71.72, + 18.57 + ] + ] + ], + [ + [ + [ + -68.69, + 18.11 + ], + [ + -68.78, + 18.19 + ], + [ + -68.57, + 18.12 + ], + [ + -68.69, + 18.11 + ] + ] + ] + ] + }, + "properties": { + "A3": "DOM" + } + }, + { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + 33.48, + -10.78 + ], + [ + 33.7, + -10.56 + ], + [ + 33.56, + -10.21 + ], + [ + 33.32, + -10.05 + ], + [ + 33.36, + -9.82 + ], + [ + 33.21, + -9.6 + ], + [ + 33, + -9.63 + ], + [ + 32.95, + -9.4 + ], + [ + 33.64, + -9.6 + ], + [ + 33.71, + -9.61 + ], + [ + 33.71, + -9.6 + ], + [ + 33.8, + -9.61 + ], + [ + 33.82, + -9.64 + ], + [ + 33.94, + -9.72 + ], + [ + 33.88, + -9.87 + ], + [ + 34.26, + -10.4 + ], + [ + 34.15, + -10.6 + ], + [ + 34.33, + -11.65 + ], + [ + 34.02, + -12.19 + ], + [ + 34.28, + -12.75 + ], + [ + 34.3, + -13.37 + ], + [ + 34.62, + -13.73 + ], + [ + 34.59, + -14.21 + ], + [ + 34.78, + -14.26 + ], + [ + 34.85, + -13.99 + ], + [ + 35.24, + -14.42 + ], + [ + 35.07, + -13.73 + ], + [ + 34.85, + -13.72 + ], + [ + 34.87, + -13.48 + ], + [ + 35.61, + -14.36 + ], + [ + 35.71, + -14.48 + ], + [ + 35.8, + -14.6 + ], + [ + 35.86, + -14.66 + ], + [ + 35.87, + -14.67 + ], + [ + 35.87, + -14.69 + ], + [ + 35.87, + -14.85 + ], + [ + 35.83, + -15.09 + ], + [ + 35.66, + -15.04 + ], + [ + 35.54, + -15.33 + ], + [ + 35.74, + -15.54 + ], + [ + 35.85, + -15.48 + ], + [ + 35.85, + -15.52 + ], + [ + 35.84, + -15.62 + ], + [ + 35.83, + -15.64 + ], + [ + 35.81, + -15.93 + ], + [ + 35.76, + -16.07 + ], + [ + 35.31, + -16.22 + ], + [ + 35.26, + -16.41 + ], + [ + 35.14, + -16.56 + ], + [ + 35.29, + -16.72 + ], + [ + 35.29, + -16.73 + ], + [ + 35.31, + -16.82 + ], + [ + 35.31, + -16.83 + ], + [ + 35.3, + -16.85 + ], + [ + 35.27, + -16.93 + ], + [ + 35.31, + -17.06 + ], + [ + 35.31, + -17.07 + ], + [ + 35.31, + -17.09 + ], + [ + 35.3, + -17.09 + ], + [ + 35.3, + -17.11 + ], + [ + 35.31, + -17.12 + ], + [ + 35.31, + -17.13 + ], + [ + 35.23, + -17.13 + ], + [ + 35.1, + -17.13 + ], + [ + 35.09, + -17.1 + ], + [ + 35.1, + -17.08 + ], + [ + 35.07, + -17.06 + ], + [ + 35.06, + -17.04 + ], + [ + 35.06, + -17.03 + ], + [ + 35.16, + -16.84 + ], + [ + 34.43, + -16.26 + ], + [ + 34.43, + -16.04 + ], + [ + 34.26, + -15.92 + ], + [ + 34.44, + -15.59 + ], + [ + 34.6, + -15.27 + ], + [ + 34.52, + -14.56 + ], + [ + 34.36, + -14.39 + ], + [ + 33.72, + -14.5 + ], + [ + 33.67, + -14.62 + ], + [ + 33.24, + -14 + ], + [ + 33.16, + -13.92 + ], + [ + 33.02, + -14.05 + ], + [ + 32.67, + -13.57 + ], + [ + 32.85, + -13.53 + ], + [ + 33.01, + -13.21 + ], + [ + 32.94, + -12.77 + ], + [ + 33.05, + -12.6 + ], + [ + 33.38, + -12.55 + ], + [ + 33.55, + -12.36 + ], + [ + 33.38, + -12.35 + ], + [ + 33.26, + -12.13 + ], + [ + 33.35, + -11.92 + ], + [ + 33.23, + -11.42 + ], + [ + 33.4, + -11.16 + ], + [ + 33.26, + -10.89 + ], + [ + 33.48, + -10.78 + ] + ], + [ + [ + 35.24, + -14.52 + ], + [ + 35.18, + -14.73 + ], + [ + 35.29, + -14.77 + ], + [ + 35.24, + -14.52 + ] + ] + ], + [ + [ + [ + 33.96, + -9.65 + ], + [ + 33.95, + -9.64 + ], + [ + 33.96, + -9.63 + ], + [ + 33.96, + -9.64 + ], + [ + 33.96, + -9.65 + ] + ] + ], + [ + [ + [ + 34.54, + -10.08 + ], + [ + 34.54, + -10.09 + ], + [ + 34.52, + -10.12 + ], + [ + 34.54, + -10.08 + ] + ] + ] + ] + }, + "properties": { + "A3": "MWI" + } + }, + { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + -71.76, + 19.7 + ], + [ + -71.68, + 19.24 + ], + [ + -71.67, + 19.24 + ], + [ + -71.64, + 19.23 + ], + [ + -71.64, + 19.22 + ], + [ + -71.64, + 19.23 + ], + [ + -71.63, + 19.21 + ], + [ + -71.63, + 19.2 + ], + [ + -71.64, + 19.2 + ], + [ + -71.89, + 18.96 + ], + [ + -71.72, + 18.88 + ], + [ + -71.74, + 18.72 + ], + [ + -72.01, + 18.62 + ], + [ + -71.91, + 18.48 + ], + [ + -71.7, + 18.34 + ], + [ + -71.76, + 18.03 + ], + [ + -72.05, + 18.24 + ], + [ + -72.82, + 18.14 + ], + [ + -73.39, + 18.28 + ], + [ + -73.7, + 18.24 + ], + [ + -73.88, + 18.02 + ], + [ + -74.48, + 18.42 + ], + [ + -74.42, + 18.62 + ], + [ + -74.2, + 18.68 + ], + [ + -72.89, + 18.42 + ], + [ + -72.35, + 18.54 + ], + [ + -72.32, + 18.68 + ], + [ + -72.82, + 19.05 + ], + [ + -72.7, + 19.11 + ], + [ + -72.8, + 19.22 + ], + [ + -72.7, + 19.46 + ], + [ + -73.39, + 19.63 + ], + [ + -73.41, + 19.84 + ], + [ + -72.78, + 19.95 + ], + [ + -72.32, + 19.71 + ], + [ + -71.76, + 19.7 + ] + ] + ], + [ + [ + [ + -72.99, + 18.88 + ], + [ + -72.81, + 18.7 + ], + [ + -73.3, + 18.93 + ], + [ + -72.99, + 18.88 + ] + ] + ] + ] + }, + "properties": { + "A3": "HTI" + } + }, + { + "type": "Feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + 42.4, + 12.47 + ], + [ + 42.7, + 12.35 + ], + [ + 43.14, + 12.71 + ], + [ + 43.41, + 12.22 + ], + [ + 43.37, + 11.98 + ], + [ + 42.78, + 11.75 + ], + [ + 42.68, + 11.56 + ], + [ + 42.51, + 11.58 + ], + [ + 42.62, + 11.46 + ], + [ + 43.15, + 11.62 + ], + [ + 43.26, + 11.46 + ], + [ + 42.96, + 10.98 + ], + [ + 42.63, + 11.1 + ], + [ + 41.95, + 10.91 + ], + [ + 41.8, + 11.08 + ], + [ + 41.92, + 11.18 + ], + [ + 41.81, + 11.26 + ], + [ + 41.83, + 11.73 + ], + [ + 42.4, + 12.47 + ] + ] + ] + }, + "properties": { + "A3": "DJI" + } + }, + { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + -8.71, + 70.92 + ], + [ + -9.04, + 70.83 + ], + [ + -7.95, + 71.16 + ], + [ + -8, + 71.02 + ], + [ + -8.71, + 70.92 + ] + ] + ], + [ + [ + [ + 23.98, + 77.68 + ], + [ + 22.67, + 77.24 + ], + [ + 23.03, + 77.58 + ], + [ + 20.87, + 77.44 + ], + [ + 21.55, + 77.92 + ], + [ + 20.83, + 78.12 + ], + [ + 22.83, + 78.26 + ], + [ + 23.52, + 77.93 + ], + [ + 24.29, + 77.93 + ], + [ + 23.98, + 77.68 + ] + ] + ], + [ + [ + [ + 20.7, + 78.22 + ], + [ + 20.19, + 78.5 + ], + [ + 21.93, + 78.58 + ], + [ + 22.12, + 78.27 + ], + [ + 20.7, + 78.22 + ] + ] + ], + [ + [ + [ + 10.92, + 78.79 + ], + [ + 12.15, + 78.21 + ], + [ + 11.03, + 78.48 + ], + [ + 10.51, + 78.9 + ], + [ + 10.92, + 78.79 + ] + ] + ], + [ + [ + [ + 16.79, + 76.83 + ], + [ + 17.06, + 76.64 + ], + [ + 16.27, + 76.56 + ], + [ + 16.52, + 76.7 + ], + [ + 15.48, + 76.87 + ], + [ + 16.61, + 77.06 + ], + [ + 15.19, + 77.02 + ], + [ + 13.9, + 77.49 + ], + [ + 15.91, + 77.5 + ], + [ + 14.73, + 77.66 + ], + [ + 17.17, + 77.78 + ], + [ + 16.73, + 77.89 + ], + [ + 13.76, + 77.73 + ], + [ + 13.57, + 78.05 + ], + [ + 14.31, + 77.97 + ], + [ + 14.19, + 78.1 + ], + [ + 17.42, + 78.44 + ], + [ + 16.29, + 78.46 + ], + [ + 16.97, + 78.65 + ], + [ + 16.55, + 78.72 + ], + [ + 15.43, + 78.46 + ], + [ + 15.32, + 78.84 + ], + [ + 14.94, + 78.59 + ], + [ + 14.26, + 78.73 + ], + [ + 14.77, + 78.37 + ], + [ + 14.09, + 78.43 + ], + [ + 14.08, + 78.25 + ], + [ + 12.98, + 78.2 + ], + [ + 12.35, + 78.49 + ], + [ + 13.3, + 78.58 + ], + [ + 12.38, + 78.54 + ], + [ + 11.5, + 78.73 + ], + [ + 11.34, + 78.98 + ], + [ + 12.65, + 78.91 + ], + [ + 11.68, + 79.07 + ], + [ + 11.99, + 79.26 + ], + [ + 11.17, + 79.11 + ], + [ + 10.64, + 79.55 + ], + [ + 11.66, + 79.83 + ], + [ + 12.3, + 79.66 + ], + [ + 12.2, + 79.84 + ], + [ + 12.5, + 79.74 + ], + [ + 13.77, + 79.88 + ], + [ + 13.72, + 79.69 + ], + [ + 12.3, + 79.59 + ], + [ + 13.45, + 79.57 + ], + [ + 14.03, + 79.28 + ], + [ + 13.81, + 79.53 + ], + [ + 14.71, + 79.79 + ], + [ + 16.4, + 78.88 + ], + [ + 15.6, + 79.8 + ], + [ + 16.24, + 80.06 + ], + [ + 17.99, + 79.75 + ], + [ + 17.66, + 79.37 + ], + [ + 18.26, + 79.63 + ], + [ + 18.88, + 79.12 + ], + [ + 19.8, + 79.15 + ], + [ + 19.87, + 79 + ], + [ + 21.5, + 78.82 + ], + [ + 21.35, + 78.67 + ], + [ + 18.89, + 78.5 + ], + [ + 18.27, + 77.52 + ], + [ + 17.58, + 77.58 + ], + [ + 16.79, + 76.83 + ] + ] + ], + [ + [ + [ + 22.47, + 80.31 + ], + [ + 22.79, + 80.51 + ], + [ + 23.16, + 80.11 + ], + [ + 24.28, + 80.36 + ], + [ + 27.24, + 80.06 + ], + [ + 25.76, + 79.44 + ], + [ + 23.9, + 79.21 + ], + [ + 20.06, + 79.46 + ], + [ + 19.67, + 79.61 + ], + [ + 21.09, + 79.54 + ], + [ + 20.47, + 79.67 + ], + [ + 21.83, + 79.69 + ], + [ + 21.6, + 79.82 + ], + [ + 18.75, + 79.71 + ], + [ + 18.08, + 79.9 + ], + [ + 18.95, + 80.05 + ], + [ + 17.71, + 80.13 + ], + [ + 18.71, + 80.21 + ], + [ + 19.42, + 80.09 + ], + [ + 19, + 80.34 + ], + [ + 19.78, + 80.22 + ], + [ + 19.62, + 80.51 + ], + [ + 20.9, + 80.2 + ], + [ + 21.78, + 80.27 + ], + [ + 22.21, + 79.98 + ], + [ + 22.47, + 80.31 + ] + ] + ], + [ + [ + [ + 18.81, + 74.43 + ], + [ + 19.25, + 74.47 + ], + [ + 19.06, + 74.34 + ], + [ + 18.81, + 74.43 + ] + ] + ], + [ + [ + [ + 25.23, + 76.61 + ], + [ + 25.5, + 76.72 + ], + [ + 24.93, + 76.44 + ], + [ + 25.23, + 76.61 + ] + ] + ], + [ + [ + [ + 28.32, + 78.92 + ], + [ + 29.64, + 78.9 + ], + [ + 28.07, + 78.8 + ], + [ + 28.32, + 78.92 + ] + ] + ], + [ + [ + [ + 31.47, + 80.12 + ], + [ + 32.75, + 80.31 + ], + [ + 33.51, + 80.23 + ], + [ + 31.47, + 80.12 + ] + ] + ] + ] + }, + "properties": { + "A3": "SJM" + } + }, + { + "type": "Feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + 20.59, + 41.88 + ], + [ + 21.1, + 42.2 + ], + [ + 21.26, + 42.09 + ], + [ + 21.59, + 42.26 + ], + [ + 22.36, + 42.31 + ], + [ + 22.87, + 42.02 + ], + [ + 23.03, + 41.72 + ], + [ + 22.93, + 41.34 + ], + [ + 22.76, + 41.26 + ], + [ + 22.75, + 41.18 + ], + [ + 22.63, + 41.15 + ], + [ + 22.63, + 41.14 + ], + [ + 22.55, + 41.13 + ], + [ + 22.06, + 41.16 + ], + [ + 21.78, + 40.93 + ], + [ + 21.31, + 40.87 + ], + [ + 21.3, + 40.87 + ], + [ + 21.29, + 40.87 + ], + [ + 21.29, + 40.86 + ], + [ + 21.28, + 40.86 + ], + [ + 21.27, + 40.87 + ], + [ + 21.27, + 40.86 + ], + [ + 21.25, + 40.87 + ], + [ + 21.24, + 40.87 + ], + [ + 21.23, + 40.88 + ], + [ + 21.22, + 40.88 + ], + [ + 21.21, + 40.88 + ], + [ + 21.2, + 40.88 + ], + [ + 21.19, + 40.88 + ], + [ + 21.14, + 40.86 + ], + [ + 21.14, + 40.85 + ], + [ + 21.13, + 40.85 + ], + [ + 21.11, + 40.85 + ], + [ + 21.01, + 41.01 + ], + [ + 20.98, + 40.88 + ], + [ + 20.73, + 40.91 + ], + [ + 20.79, + 40.96 + ], + [ + 20.74, + 41.16 + ], + [ + 20.63, + 41.09 + ], + [ + 20.52, + 41.24 + ], + [ + 20.52, + 41.25 + ], + [ + 20.56, + 41.41 + ], + [ + 20.47, + 41.51 + ], + [ + 20.59, + 41.88 + ] + ] + ] + }, + "properties": { + "A3": "MKD" + } + }, + { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + -82.86, + 9.61 + ], + [ + -82.85, + 9.62 + ], + [ + -82.84, + 9.61 + ], + [ + -82.83, + 9.61 + ], + [ + -82.81, + 9.6 + ], + [ + -82.79, + 9.6 + ], + [ + -82.75, + 9.58 + ], + [ + -82.75, + 9.59 + ], + [ + -82.73, + 9.56 + ], + [ + -82.72, + 9.55 + ], + [ + -82.71, + 9.54 + ], + [ + -82.7, + 9.54 + ], + [ + -82.69, + 9.51 + ], + [ + -82.67, + 9.49 + ], + [ + -82.66, + 9.5 + ], + [ + -82.65, + 9.5 + ], + [ + -82.64, + 9.49 + ], + [ + -82.62, + 9.5 + ], + [ + -82.6, + 9.53 + ], + [ + -82.6, + 9.54 + ], + [ + -82.6, + 9.56 + ], + [ + -82.58, + 9.56 + ], + [ + -82.57, + 9.55 + ], + [ + -82.56, + 9.54 + ], + [ + -82.55, + 9.54 + ], + [ + -82.56, + 9.56 + ], + [ + -82.57, + 9.56 + ], + [ + -82.56, + 9.57 + ], + [ + -82.53, + 9.52 + ], + [ + -82.51, + 9.51 + ], + [ + -82.34, + 9.43 + ], + [ + -82.36, + 9.21 + ], + [ + -82.18, + 9.19 + ], + [ + -82.25, + 9 + ], + [ + -81.79, + 8.93 + ], + [ + -81.88, + 9.18 + ], + [ + -81.39, + 8.77 + ], + [ + -80.96, + 8.82 + ], + [ + -79.92, + 9.39 + ], + [ + -79.91, + 9.28 + ], + [ + -79.62, + 9.62 + ], + [ + -78.97, + 9.57 + ], + [ + -79.07, + 9.44 + ], + [ + -78.56, + 9.44 + ], + [ + -78.05, + 9.25 + ], + [ + -77.37, + 8.67 + ], + [ + -77.45, + 8.47 + ], + [ + -77.14, + 7.95 + ], + [ + -77.33, + 7.89 + ], + [ + -77.56, + 7.51 + ], + [ + -77.73, + 7.7 + ], + [ + -77.89, + 7.22 + ], + [ + -78.45, + 8.06 + ], + [ + -78.28, + 8.08 + ], + [ + -78.31, + 8.26 + ], + [ + -78.16, + 8.42 + ], + [ + -78.02, + 8.23 + ], + [ + -77.8, + 8.12 + ], + [ + -78.03, + 8.27 + ], + [ + -78.15, + 8.62 + ], + [ + -78.1, + 8.41 + ], + [ + -78.16, + 8.48 + ], + [ + -78.26, + 8.39 + ], + [ + -78.24, + 8.55 + ], + [ + -78.37, + 8.42 + ], + [ + -78.41, + 8.58 + ], + [ + -78.42, + 8.35 + ], + [ + -78.62, + 8.79 + ], + [ + -78.85, + 8.82 + ], + [ + -79.09, + 9.09 + ], + [ + -79.63, + 8.97 + ], + [ + -79.56, + 8.9 + ], + [ + -79.85, + 8.71 + ], + [ + -79.7, + 8.66 + ], + [ + -79.77, + 8.59 + ], + [ + -80.47, + 8.22 + ], + [ + -79.99, + 7.52 + ], + [ + -80.37, + 7.4 + ], + [ + -80.44, + 7.24 + ], + [ + -80.89, + 7.21 + ], + [ + -81.05, + 7.91 + ], + [ + -81.27, + 7.93 + ], + [ + -81.23, + 7.61 + ], + [ + -81.52, + 7.71 + ], + [ + -81.75, + 8.22 + ], + [ + -81.77, + 8.13 + ], + [ + -82.15, + 8.27 + ], + [ + -82.16, + 8.17 + ], + [ + -82.2, + 8.38 + ], + [ + -82.85, + 8.29 + ], + [ + -82.9, + 8.04 + ], + [ + -83.05, + 8.33 + ], + [ + -82.84, + 8.48 + ], + [ + -82.92, + 8.77 + ], + [ + -82.71, + 8.92 + ], + [ + -82.94, + 9.08 + ], + [ + -82.88, + 9.55 + ], + [ + -82.88, + 9.56 + ], + [ + -82.86, + 9.59 + ], + [ + -82.86, + 9.61 + ] + ], + [ + [ + -78.75, + 9.07 + ], + [ + -78.73, + 9.23 + ], + [ + -78.86, + 9.17 + ], + [ + -78.75, + 9.07 + ] + ], + [ + [ + -79.85, + 9.32 + ], + [ + -80.04, + 9.02 + ], + [ + -79.94, + 9.16 + ], + [ + -79.8, + 9.05 + ], + [ + -79.85, + 9.32 + ] + ] + ], + [ + [ + [ + -78.87, + 8.46 + ], + [ + -78.91, + 8.22 + ], + [ + -78.98, + 8.45 + ], + [ + -78.87, + 8.46 + ] + ] + ], + [ + [ + [ + -81.67, + 7.39 + ], + [ + -81.59, + 7.33 + ], + [ + -81.89, + 7.49 + ], + [ + -81.75, + 7.65 + ], + [ + -81.67, + 7.39 + ] + ] + ] + ] + }, + "properties": { + "A3": "PAN" + } + }, + { + "type": "Feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + 61.27, + 35.61 + ], + [ + 61.59, + 35.44 + ], + [ + 62.06, + 35.43 + ], + [ + 62.29, + 35.25 + ], + [ + 62.29, + 35.23 + ], + [ + 62.29, + 35.22 + ], + [ + 62.3, + 35.21 + ], + [ + 63.1, + 35.42 + ], + [ + 63.25, + 35.68 + ], + [ + 63.12, + 35.86 + ], + [ + 64.07, + 36 + ], + [ + 64.09, + 36.13 + ], + [ + 64.45, + 36.24 + ], + [ + 64.64, + 36.44 + ], + [ + 64.76, + 37.11 + ], + [ + 65.23, + 37.25 + ], + [ + 65.51, + 37.29 + ], + [ + 65.71, + 37.54 + ], + [ + 66.55, + 37.36 + ], + [ + 66.9, + 37.37 + ], + [ + 66.92, + 37.39 + ], + [ + 66.97, + 37.39 + ], + [ + 67.01, + 37.37 + ], + [ + 67.09, + 37.34 + ], + [ + 67.1, + 37.34 + ], + [ + 67.1, + 37.33 + ], + [ + 67.11, + 37.33 + ], + [ + 67.11, + 37.32 + ], + [ + 67.11, + 37.3 + ], + [ + 67.11, + 37.29 + ], + [ + 67.12, + 37.28 + ], + [ + 67.13, + 37.27 + ], + [ + 67.17, + 37.26 + ], + [ + 67.19, + 37.26 + ], + [ + 67.2, + 37.26 + ], + [ + 67.23, + 37.24 + ], + [ + 67.23, + 37.23 + ], + [ + 67.27, + 37.18 + ], + [ + 67.28, + 37.19 + ], + [ + 67.35, + 37.21 + ], + [ + 67.4, + 37.22 + ], + [ + 67.42, + 37.23 + ], + [ + 67.45, + 37.24 + ], + [ + 67.47, + 37.25 + ], + [ + 67.53, + 37.26 + ], + [ + 67.54, + 37.25 + ], + [ + 67.54, + 37.24 + ], + [ + 67.55, + 37.23 + ], + [ + 67.58, + 37.22 + ], + [ + 67.58, + 37.23 + ], + [ + 67.69, + 37.22 + ], + [ + 67.7, + 37.22 + ], + [ + 67.76, + 37.2 + ], + [ + 67.77, + 37.19 + ], + [ + 67.79, + 37.08 + ], + [ + 67.82, + 37.08 + ], + [ + 67.84, + 37.07 + ], + [ + 67.86, + 37.07 + ], + [ + 67.87, + 37.06 + ], + [ + 67.89, + 37.06 + ], + [ + 67.9, + 37.04 + ], + [ + 67.9, + 37.03 + ], + [ + 67.92, + 37.01 + ], + [ + 67.93, + 37.01 + ], + [ + 67.94, + 37 + ], + [ + 67.95, + 36.99 + ], + [ + 67.99, + 36.96 + ], + [ + 68, + 36.95 + ], + [ + 68.07, + 36.94 + ], + [ + 68.08, + 36.95 + ], + [ + 68.1, + 36.96 + ], + [ + 68.14, + 36.99 + ], + [ + 68.16, + 37.01 + ], + [ + 68.2, + 37.02 + ], + [ + 68.2, + 37 + ], + [ + 68.26, + 37.01 + ], + [ + 68.28, + 37.02 + ], + [ + 68.28, + 37.03 + ], + [ + 68.28, + 37.04 + ], + [ + 68.28, + 37.07 + ], + [ + 68.28, + 37.09 + ], + [ + 68.3, + 37.11 + ], + [ + 68.31, + 37.11 + ], + [ + 68.33, + 37.11 + ], + [ + 68.35, + 37.1 + ], + [ + 68.36, + 37.1 + ], + [ + 68.4, + 37.1 + ], + [ + 68.41, + 37.1 + ], + [ + 68.42, + 37.11 + ], + [ + 68.41, + 37.15 + ], + [ + 68.43, + 37.14 + ], + [ + 68.44, + 37.13 + ], + [ + 68.45, + 37.13 + ], + [ + 68.46, + 37.14 + ], + [ + 68.48, + 37.16 + ], + [ + 68.49, + 37.16 + ], + [ + 68.52, + 37.16 + ], + [ + 68.55, + 37.17 + ], + [ + 68.57, + 37.18 + ], + [ + 68.61, + 37.2 + ], + [ + 68.62, + 37.2 + ], + [ + 68.82, + 37.24 + ], + [ + 68.83, + 37.26 + ], + [ + 68.9, + 37.27 + ], + [ + 68.91, + 37.27 + ], + [ + 68.92, + 37.27 + ], + [ + 68.92, + 37.28 + ], + [ + 69.02, + 37.29 + ], + [ + 69.02, + 37.28 + ], + [ + 69.02, + 37.27 + ], + [ + 69.03, + 37.26 + ], + [ + 69.04, + 37.25 + ], + [ + 69.05, + 37.24 + ], + [ + 69.06, + 37.24 + ], + [ + 69.07, + 37.23 + ], + [ + 69.11, + 37.18 + ], + [ + 69.14, + 37.17 + ], + [ + 69.15, + 37.16 + ], + [ + 69.16, + 37.15 + ], + [ + 69.19, + 37.14 + ], + [ + 69.21, + 37.13 + ], + [ + 69.22, + 37.12 + ], + [ + 69.23, + 37.1 + ], + [ + 69.24, + 37.1 + ], + [ + 69.25, + 37.1 + ], + [ + 69.26, + 37.1 + ], + [ + 69.28, + 37.11 + ], + [ + 69.31, + 37.11 + ], + [ + 69.32, + 37.12 + ], + [ + 69.33, + 37.13 + ], + [ + 69.36, + 37.16 + ], + [ + 69.37, + 37.17 + ], + [ + 69.39, + 37.16 + ], + [ + 69.42, + 37.18 + ], + [ + 69.45, + 37.23 + ], + [ + 69.47, + 37.25 + ], + [ + 69.46, + 37.26 + ], + [ + 69.42, + 37.26 + ], + [ + 69.42, + 37.27 + ], + [ + 69.4, + 37.33 + ], + [ + 69.38, + 37.34 + ], + [ + 69.4, + 37.35 + ], + [ + 69.38, + 37.37 + ], + [ + 69.38, + 37.39 + ], + [ + 69.37, + 37.39 + ], + [ + 69.37, + 37.42 + ], + [ + 69.39, + 37.44 + ], + [ + 69.43, + 37.48 + ], + [ + 69.44, + 37.48 + ], + [ + 69.64, + 37.58 + ], + [ + 69.66, + 37.58 + ], + [ + 69.95, + 37.6 + ], + [ + 69.95, + 37.59 + ], + [ + 69.96, + 37.57 + ], + [ + 69.97, + 37.56 + ], + [ + 70, + 37.56 + ], + [ + 70.04, + 37.55 + ], + [ + 70.05, + 37.55 + ], + [ + 70.11, + 37.52 + ], + [ + 70.13, + 37.52 + ], + [ + 70.14, + 37.52 + ], + [ + 70.16, + 37.53 + ], + [ + 70.17, + 37.53 + ], + [ + 70.18, + 37.55 + ], + [ + 70.18, + 37.57 + ], + [ + 70.2, + 37.57 + ], + [ + 70.21, + 37.57 + ], + [ + 70.2, + 37.58 + ], + [ + 70.17, + 37.93 + ], + [ + 70.66, + 38.36 + ], + [ + 70.67, + 38.36 + ], + [ + 70.69, + 38.39 + ], + [ + 70.68, + 38.39 + ], + [ + 70.68, + 38.41 + ], + [ + 70.69, + 38.41 + ], + [ + 70.75, + 38.42 + ], + [ + 70.76, + 38.43 + ], + [ + 70.78, + 38.46 + ], + [ + 70.79, + 38.45 + ], + [ + 70.8, + 38.45 + ], + [ + 70.8, + 38.44 + ], + [ + 70.81, + 38.44 + ], + [ + 70.82, + 38.45 + ], + [ + 70.83, + 38.45 + ], + [ + 70.84, + 38.45 + ], + [ + 70.84, + 38.44 + ], + [ + 70.85, + 38.44 + ], + [ + 70.86, + 38.46 + ], + [ + 70.88, + 38.47 + ], + [ + 70.89, + 38.47 + ], + [ + 70.9, + 38.45 + ], + [ + 70.91, + 38.44 + ], + [ + 70.92, + 38.43 + ], + [ + 70.93, + 38.43 + ], + [ + 70.95, + 38.44 + ], + [ + 70.96, + 38.44 + ], + [ + 70.96, + 38.46 + ], + [ + 70.97, + 38.47 + ], + [ + 70.97, + 38.48 + ], + [ + 70.98, + 38.48 + ], + [ + 70.98, + 38.49 + ], + [ + 71, + 38.48 + ], + [ + 71.01, + 38.47 + ], + [ + 71.03, + 38.46 + ], + [ + 71.03, + 38.45 + ], + [ + 71.04, + 38.44 + ], + [ + 71.04, + 38.43 + ], + [ + 71.05, + 38.42 + ], + [ + 71.05, + 38.41 + ], + [ + 71.05, + 38.4 + ], + [ + 71.06, + 38.4 + ], + [ + 71.07, + 38.4 + ], + [ + 71.07, + 38.41 + ], + [ + 71.08, + 38.42 + ], + [ + 71.1, + 38.42 + ], + [ + 71.11, + 38.42 + ], + [ + 71.11, + 38.41 + ], + [ + 71.13, + 38.4 + ], + [ + 71.14, + 38.4 + ], + [ + 71.15, + 38.4 + ], + [ + 71.15, + 38.39 + ], + [ + 71.16, + 38.39 + ], + [ + 71.18, + 38.36 + ], + [ + 71.18, + 38.35 + ], + [ + 71.2, + 38.34 + ], + [ + 71.22, + 38.33 + ], + [ + 71.22, + 38.32 + ], + [ + 71.23, + 38.32 + ], + [ + 71.25, + 38.32 + ], + [ + 71.25, + 38.31 + ], + [ + 71.31, + 38.31 + ], + [ + 71.31, + 38.3 + ], + [ + 71.33, + 38.31 + ], + [ + 71.33, + 38.3 + ], + [ + 71.33, + 38.29 + ], + [ + 71.33, + 38.28 + ], + [ + 71.33, + 38.27 + ], + [ + 71.35, + 38.27 + ], + [ + 71.37, + 38.25 + ], + [ + 71.37, + 38.24 + ], + [ + 71.37, + 38.23 + ], + [ + 71.37, + 38.22 + ], + [ + 71.38, + 38.21 + ], + [ + 71.37, + 38.21 + ], + [ + 71.37, + 38.2 + ], + [ + 71.36, + 38.2 + ], + [ + 71.37, + 38.18 + ], + [ + 71.37, + 38.17 + ], + [ + 71.37, + 38.16 + ], + [ + 71.38, + 38.16 + ], + [ + 71.37, + 38.15 + ], + [ + 71.36, + 38.15 + ], + [ + 71.35, + 38.15 + ], + [ + 71.34, + 38.14 + ], + [ + 71.34, + 38.13 + ], + [ + 71.34, + 38.11 + ], + [ + 71.33, + 38.11 + ], + [ + 71.33, + 38.1 + ], + [ + 71.32, + 38.07 + ], + [ + 71.31, + 38.06 + ], + [ + 71.3, + 38.04 + ], + [ + 71.29, + 38.04 + ], + [ + 71.28, + 38.04 + ], + [ + 71.29, + 38.03 + ], + [ + 71.3, + 38.03 + ], + [ + 71.29, + 38.02 + ], + [ + 71.28, + 38.01 + ], + [ + 71.28, + 38 + ], + [ + 71.27, + 37.99 + ], + [ + 71.28, + 37.97 + ], + [ + 71.26, + 37.95 + ], + [ + 71.27, + 37.94 + ], + [ + 71.25, + 37.93 + ], + [ + 71.26, + 37.92 + ], + [ + 71.28, + 37.92 + ], + [ + 71.29, + 37.93 + ], + [ + 71.32, + 37.91 + ], + [ + 71.33, + 37.89 + ], + [ + 71.37, + 37.9 + ], + [ + 71.38, + 37.9 + ], + [ + 71.4, + 37.91 + ], + [ + 71.43, + 37.92 + ], + [ + 71.44, + 37.92 + ], + [ + 71.45, + 37.92 + ], + [ + 71.46, + 37.93 + ], + [ + 71.49, + 37.94 + ], + [ + 71.5, + 37.95 + ], + [ + 71.51, + 37.95 + ], + [ + 71.55, + 37.94 + ], + [ + 71.57, + 37.93 + ], + [ + 71.58, + 37.93 + ], + [ + 71.59, + 37.93 + ], + [ + 71.59, + 37.92 + ], + [ + 71.59, + 37.9 + ], + [ + 71.59, + 37.88 + ], + [ + 71.59, + 37.86 + ], + [ + 71.59, + 37.83 + ], + [ + 71.59, + 37.82 + ], + [ + 71.54, + 37.75 + ], + [ + 71.55, + 37.74 + ], + [ + 71.55, + 37.73 + ], + [ + 71.55, + 37.71 + ], + [ + 71.54, + 37.69 + ], + [ + 71.54, + 37.68 + ], + [ + 71.53, + 37.68 + ], + [ + 71.53, + 37.65 + ], + [ + 71.52, + 37.62 + ], + [ + 71.51, + 37.6 + ], + [ + 71.5, + 37.55 + ], + [ + 71.5, + 37.54 + ], + [ + 71.5, + 37.53 + ], + [ + 71.52, + 37.5 + ], + [ + 71.52, + 37.49 + ], + [ + 71.5, + 37.44 + ], + [ + 71.49, + 37.37 + ], + [ + 71.5, + 37.37 + ], + [ + 71.5, + 37.32 + ], + [ + 71.48, + 37.23 + ], + [ + 71.46, + 37.22 + ], + [ + 71.45, + 37.21 + ], + [ + 71.44, + 37.09 + ], + [ + 71.43, + 37.09 + ], + [ + 71.43, + 37.06 + ], + [ + 71.44, + 37.05 + ], + [ + 71.46, + 37.02 + ], + [ + 71.46, + 36.97 + ], + [ + 71.47, + 36.95 + ], + [ + 71.48, + 36.94 + ], + [ + 71.49, + 36.93 + ], + [ + 71.49, + 36.92 + ], + [ + 71.5, + 36.91 + ], + [ + 71.51, + 36.9 + ], + [ + 71.51, + 36.89 + ], + [ + 71.52, + 36.87 + ], + [ + 71.53, + 36.86 + ], + [ + 71.54, + 36.84 + ], + [ + 71.55, + 36.82 + ], + [ + 71.55, + 36.81 + ], + [ + 71.56, + 36.78 + ], + [ + 71.56, + 36.77 + ], + [ + 71.58, + 36.74 + ], + [ + 71.59, + 36.74 + ], + [ + 71.6, + 36.72 + ], + [ + 71.61, + 36.72 + ], + [ + 71.62, + 36.7 + ], + [ + 71.63, + 36.7 + ], + [ + 71.65, + 36.69 + ], + [ + 71.83, + 36.68 + ], + [ + 71.85, + 36.68 + ], + [ + 71.85, + 36.69 + ], + [ + 71.87, + 36.7 + ], + [ + 71.88, + 36.71 + ], + [ + 71.91, + 36.74 + ], + [ + 71.92, + 36.74 + ], + [ + 71.96, + 36.76 + ], + [ + 72, + 36.79 + ], + [ + 72.01, + 36.79 + ], + [ + 72.05, + 36.82 + ], + [ + 72.05, + 36.83 + ], + [ + 72.07, + 36.84 + ], + [ + 72.11, + 36.85 + ], + [ + 72.12, + 36.85 + ], + [ + 72.13, + 36.87 + ], + [ + 72.16, + 36.89 + ], + [ + 72.17, + 36.89 + ], + [ + 72.19, + 36.91 + ], + [ + 72.22, + 36.93 + ], + [ + 72.23, + 36.93 + ], + [ + 72.26, + 36.95 + ], + [ + 72.28, + 36.96 + ], + [ + 72.3, + 36.97 + ], + [ + 72.31, + 36.97 + ], + [ + 72.32, + 36.98 + ], + [ + 72.39, + 36.99 + ], + [ + 72.4, + 36.99 + ], + [ + 72.41, + 37 + ], + [ + 72.42, + 37 + ], + [ + 72.43, + 37.01 + ], + [ + 72.46, + 37 + ], + [ + 72.47, + 37 + ], + [ + 72.49, + 37 + ], + [ + 72.51, + 37 + ], + [ + 72.53, + 37 + ], + [ + 72.55, + 37 + ], + [ + 72.56, + 37 + ], + [ + 72.58, + 37.01 + ], + [ + 72.59, + 37.01 + ], + [ + 72.6, + 37.02 + ], + [ + 72.64, + 37.03 + ], + [ + 72.65, + 37.02 + ], + [ + 72.69, + 37.05 + ], + [ + 72.69, + 37.06 + ], + [ + 72.73, + 37.11 + ], + [ + 72.75, + 37.14 + ], + [ + 72.75, + 37.15 + ], + [ + 72.77, + 37.18 + ], + [ + 72.78, + 37.19 + ], + [ + 72.78, + 37.2 + ], + [ + 72.79, + 37.21 + ], + [ + 72.8, + 37.21 + ], + [ + 72.8, + 37.22 + ], + [ + 72.82, + 37.23 + ], + [ + 72.86, + 37.23 + ], + [ + 72.87, + 37.23 + ], + [ + 72.99, + 37.3 + ], + [ + 73, + 37.3 + ], + [ + 73.02, + 37.3 + ], + [ + 73.1, + 37.33 + ], + [ + 73.1, + 37.34 + ], + [ + 73.11, + 37.34 + ], + [ + 73.1, + 37.35 + ], + [ + 73.1, + 37.36 + ], + [ + 73.13, + 37.37 + ], + [ + 73.14, + 37.39 + ], + [ + 73.15, + 37.41 + ], + [ + 73.17, + 37.41 + ], + [ + 73.21, + 37.4 + ], + [ + 73.21, + 37.41 + ], + [ + 73.23, + 37.42 + ], + [ + 73.25, + 37.44 + ], + [ + 73.26, + 37.44 + ], + [ + 73.28, + 37.45 + ], + [ + 73.29, + 37.46 + ], + [ + 73.37, + 37.46 + ], + [ + 73.41, + 37.46 + ], + [ + 73.45, + 37.47 + ], + [ + 73.47, + 37.47 + ], + [ + 73.48, + 37.47 + ], + [ + 73.49, + 37.47 + ], + [ + 73.5, + 37.47 + ], + [ + 73.59, + 37.44 + ], + [ + 73.64, + 37.43 + ], + [ + 73.78, + 37.44 + ], + [ + 73.65, + 37.24 + ], + [ + 74.47, + 37.43 + ], + [ + 74.89, + 37.23 + ], + [ + 74.51, + 37.24 + ], + [ + 74.49, + 37.09 + ], + [ + 74.56, + 37.03 + ], + [ + 74.05, + 36.83 + ], + [ + 73.84, + 36.93 + ], + [ + 72.65, + 36.85 + ], + [ + 72.25, + 36.75 + ], + [ + 71.81, + 36.4 + ], + [ + 71.64, + 36.48 + ], + [ + 71.2, + 36.04 + ], + [ + 71.55, + 35.73 + ], + [ + 71.66, + 35.44 + ], + [ + 71.54, + 35.31 + ], + [ + 71.68, + 35.21 + ], + [ + 71.09, + 34.68 + ], + [ + 71, + 34.5 + ], + [ + 71.16, + 34.33 + ], + [ + 71.16, + 34.32 + ], + [ + 71.15, + 34.31 + ], + [ + 71.15, + 34.3 + ], + [ + 71.13, + 34.27 + ], + [ + 71.13, + 34.24 + ], + [ + 71.13, + 34.23 + ], + [ + 70.87, + 33.97 + ], + [ + 69.9, + 34.04 + ], + [ + 70.23, + 33.48 + ], + [ + 70.33, + 33.33 + ], + [ + 70.16, + 33.22 + ], + [ + 69.5, + 33.02 + ], + [ + 69.45, + 32.66 + ], + [ + 69.24, + 32.46 + ], + [ + 69.33, + 31.93 + ], + [ + 69.12, + 31.7 + ], + [ + 68.86, + 31.59 + ], + [ + 68.58, + 31.83 + ], + [ + 68.43, + 31.76 + ], + [ + 68.54, + 31.71 + ], + [ + 68.17, + 31.84 + ], + [ + 67.57, + 31.52 + ], + [ + 67.77, + 31.32 + ], + [ + 66.73, + 31.21 + ], + [ + 66.39, + 30.94 + ], + [ + 66.28, + 30.57 + ], + [ + 66.23, + 30.07 + ], + [ + 66.37, + 29.97 + ], + [ + 65.8, + 29.73 + ], + [ + 65.76, + 29.72 + ], + [ + 64.91, + 29.55 + ], + [ + 64.9, + 29.55 + ], + [ + 64.54, + 29.59 + ], + [ + 64.12, + 29.38 + ], + [ + 63.58, + 29.49 + ], + [ + 62.47, + 29.39 + ], + [ + 60.87, + 29.86 + ], + [ + 61.8, + 30.84 + ], + [ + 61.78, + 31.3 + ], + [ + 61.36, + 31.42 + ], + [ + 61.35, + 31.58 + ], + [ + 61.28, + 31.43 + ], + [ + 60.86, + 31.49 + ], + [ + 60.88, + 32.2 + ], + [ + 60.58, + 33.13 + ], + [ + 60.95, + 33.51 + ], + [ + 60.58, + 33.6 + ], + [ + 60.52, + 34.06 + ], + [ + 60.67, + 34.3 + ], + [ + 60.92, + 34.3 + ], + [ + 60.74, + 34.52 + ], + [ + 61, + 34.64 + ], + [ + 61.27, + 35.61 + ] + ], + [ + [ + 61.56, + 29.84 + ], + [ + 61.61, + 29.66 + ], + [ + 62.19, + 29.73 + ], + [ + 61.56, + 29.84 + ] + ], + [ + [ + 62.39, + 29.99 + ], + [ + 62.12, + 29.88 + ], + [ + 62.27, + 29.79 + ], + [ + 62.39, + 29.99 + ] + ] + ] + }, + "properties": { + "A3": "AFG" + } + }, + { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + 23.8, + 52.64 + ], + [ + 23.85, + 52.66 + ], + [ + 23.94, + 52.72 + ], + [ + 23.94, + 52.74 + ], + [ + 23.94, + 52.76 + ], + [ + 23.94, + 52.78 + ], + [ + 23.89, + 53.11 + ], + [ + 23.89, + 53.12 + ], + [ + 23.89, + 53.13 + ], + [ + 23.89, + 53.12 + ], + [ + 23.9, + 53.12 + ], + [ + 23.9, + 53.13 + ], + [ + 23.89, + 53.13 + ], + [ + 23.9, + 53.13 + ], + [ + 23.91, + 53.17 + ], + [ + 23.81, + 53.25 + ], + [ + 23.8, + 53.27 + ], + [ + 23.79, + 53.28 + ], + [ + 23.59, + 53.73 + ], + [ + 23.58, + 53.74 + ], + [ + 23.52, + 53.9 + ], + [ + 23.51, + 53.91 + ], + [ + 23.51, + 53.96 + ], + [ + 23.74, + 53.93 + ], + [ + 23.77, + 53.9 + ], + [ + 23.78, + 53.9 + ], + [ + 23.8, + 53.9 + ], + [ + 23.82, + 53.91 + ], + [ + 23.82, + 53.92 + ], + [ + 23.8, + 53.93 + ], + [ + 23.82, + 53.94 + ], + [ + 23.86, + 53.95 + ], + [ + 23.88, + 53.94 + ], + [ + 23.91, + 53.95 + ], + [ + 23.91, + 53.96 + ], + [ + 23.94, + 53.96 + ], + [ + 23.95, + 53.96 + ], + [ + 23.98, + 53.92 + ], + [ + 24, + 53.93 + ], + [ + 24.01, + 53.93 + ], + [ + 24.03, + 53.93 + ], + [ + 24.05, + 53.93 + ], + [ + 24.07, + 53.94 + ], + [ + 24.1, + 53.94 + ], + [ + 24.31, + 53.91 + ], + [ + 24.33, + 53.9 + ], + [ + 24.39, + 53.9 + ], + [ + 24.41, + 53.9 + ], + [ + 24.65, + 54.01 + ], + [ + 24.67, + 54.02 + ], + [ + 24.71, + 53.96 + ], + [ + 24.73, + 53.97 + ], + [ + 24.91, + 54.16 + ], + [ + 24.92, + 54.16 + ], + [ + 24.94, + 54.17 + ], + [ + 24.98, + 54.16 + ], + [ + 24.98, + 54.15 + ], + [ + 25.01, + 54.14 + ], + [ + 25.02, + 54.14 + ], + [ + 25.04, + 54.14 + ], + [ + 25.06, + 54.14 + ], + [ + 25.06, + 54.13 + ], + [ + 25.07, + 54.13 + ], + [ + 25.07, + 54.14 + ], + [ + 25.08, + 54.14 + ], + [ + 25.09, + 54.14 + ], + [ + 25.09, + 54.15 + ], + [ + 25.1, + 54.15 + ], + [ + 25.1, + 54.16 + ], + [ + 25.11, + 54.16 + ], + [ + 25.11, + 54.17 + ], + [ + 25.21, + 54.24 + ], + [ + 25.21, + 54.25 + ], + [ + 25.36, + 54.27 + ], + [ + 25.38, + 54.27 + ], + [ + 25.4, + 54.28 + ], + [ + 25.46, + 54.3 + ], + [ + 25.45, + 54.3 + ], + [ + 25.45, + 54.29 + ], + [ + 25.48, + 54.29 + ], + [ + 25.48, + 54.3 + ], + [ + 25.5, + 54.31 + ], + [ + 25.51, + 54.31 + ], + [ + 25.51, + 54.3 + ], + [ + 25.52, + 54.29 + ], + [ + 25.52, + 54.28 + ], + [ + 25.54, + 54.28 + ], + [ + 25.55, + 54.27 + ], + [ + 25.56, + 54.27 + ], + [ + 25.57, + 54.27 + ], + [ + 25.56, + 54.27 + ], + [ + 25.59, + 54.23 + ], + [ + 25.56, + 54.23 + ], + [ + 25.55, + 54.23 + ], + [ + 25.56, + 54.2 + ], + [ + 25.57, + 54.15 + ], + [ + 25.58, + 54.15 + ], + [ + 25.6, + 54.15 + ], + [ + 25.6, + 54.14 + ], + [ + 25.63, + 54.13 + ], + [ + 25.64, + 54.13 + ], + [ + 25.65, + 54.13 + ], + [ + 25.7, + 54.17 + ], + [ + 25.71, + 54.17 + ], + [ + 25.7, + 54.17 + ], + [ + 25.76, + 54.21 + ], + [ + 25.76, + 54.23 + ], + [ + 25.77, + 54.23 + ], + [ + 25.78, + 54.23 + ], + [ + 25.79, + 54.23 + ], + [ + 25.78, + 54.24 + ], + [ + 25.77, + 54.24 + ], + [ + 25.73, + 54.27 + ], + [ + 25.72, + 54.27 + ], + [ + 25.71, + 54.27 + ], + [ + 25.59, + 54.4 + ], + [ + 25.6, + 54.4 + ], + [ + 25.62, + 54.44 + ], + [ + 25.62, + 54.45 + ], + [ + 25.7, + 54.54 + ], + [ + 25.7, + 54.55 + ], + [ + 25.71, + 54.55 + ], + [ + 25.73, + 54.56 + ], + [ + 25.74, + 54.56 + ], + [ + 25.75, + 54.56 + ], + [ + 25.75, + 54.57 + ], + [ + 25.76, + 54.57 + ], + [ + 25.76, + 54.58 + ], + [ + 25.76, + 54.59 + ], + [ + 25.74, + 54.7 + ], + [ + 25.75, + 54.73 + ], + [ + 25.77, + 54.82 + ], + [ + 25.78, + 54.83 + ], + [ + 25.78, + 54.85 + ], + [ + 25.78, + 54.86 + ], + [ + 25.81, + 54.87 + ], + [ + 25.97, + 54.95 + ], + [ + 26.24, + 55.05 + ], + [ + 26.25, + 55.06 + ], + [ + 26.24, + 55.11 + ], + [ + 26.25, + 55.12 + ], + [ + 26.26, + 55.12 + ], + [ + 26.28, + 55.12 + ], + [ + 26.62, + 55.15 + ], + [ + 26.74, + 55.25 + ], + [ + 26.77, + 55.32 + ], + [ + 26.74, + 55.32 + ], + [ + 26.72, + 55.32 + ], + [ + 26.71, + 55.33 + ], + [ + 26.7, + 55.33 + ], + [ + 26.69, + 55.33 + ], + [ + 26.68, + 55.33 + ], + [ + 26.67, + 55.34 + ], + [ + 26.65, + 55.33 + ], + [ + 26.64, + 55.32 + ], + [ + 26.63, + 55.32 + ], + [ + 26.59, + 55.32 + ], + [ + 26.52, + 55.33 + ], + [ + 26.46, + 55.34 + ], + [ + 26.45, + 55.34 + ], + [ + 26.55, + 55.43 + ], + [ + 26.55, + 55.47 + ], + [ + 26.54, + 55.49 + ], + [ + 26.53, + 55.51 + ], + [ + 26.54, + 55.53 + ], + [ + 26.63, + 55.57 + ], + [ + 26.64, + 55.64 + ], + [ + 26.64, + 55.65 + ], + [ + 26.63, + 55.67 + ], + [ + 26.63, + 55.68 + ], + [ + 26.65, + 55.7 + ], + [ + 26.67, + 55.7 + ], + [ + 26.7, + 55.7 + ], + [ + 26.74, + 55.68 + ], + [ + 26.85, + 55.71 + ], + [ + 26.86, + 55.71 + ], + [ + 27.25, + 55.8 + ], + [ + 27.25, + 55.79 + ], + [ + 27.2, + 55.76 + ], + [ + 27.25, + 55.78 + ], + [ + 27.25, + 55.79 + ], + [ + 27.39, + 55.8 + ], + [ + 27.4, + 55.8 + ], + [ + 27.42, + 55.8 + ], + [ + 27.44, + 55.79 + ], + [ + 27.46, + 55.79 + ], + [ + 27.48, + 55.79 + ], + [ + 27.5, + 55.79 + ], + [ + 27.51, + 55.79 + ], + [ + 27.52, + 55.79 + ], + [ + 27.53, + 55.79 + ], + [ + 27.55, + 55.78 + ], + [ + 27.56, + 55.78 + ], + [ + 27.59, + 55.78 + ], + [ + 27.61, + 55.79 + ], + [ + 27.64, + 55.85 + ], + [ + 27.63, + 55.9 + ], + [ + 27.64, + 55.9 + ], + [ + 27.86, + 56.04 + ], + [ + 28.15, + 56.17 + ], + [ + 28.35, + 56.06 + ], + [ + 28.38, + 56.06 + ], + [ + 28.42, + 56.1 + ], + [ + 28.43, + 56.09 + ], + [ + 28.65, + 56.1 + ], + [ + 28.68, + 56.1 + ], + [ + 28.69, + 56.1 + ], + [ + 28.68, + 56.1 + ], + [ + 28.68, + 56.09 + ], + [ + 28.67, + 56.09 + ], + [ + 28.66, + 56.09 + ], + [ + 28.64, + 56.08 + ], + [ + 28.71, + 56 + ], + [ + 28.72, + 55.98 + ], + [ + 28.76, + 55.97 + ], + [ + 28.77, + 55.97 + ], + [ + 28.78, + 55.97 + ], + [ + 28.8, + 55.97 + ], + [ + 29, + 56.01 + ], + [ + 29, + 56.02 + ], + [ + 29.13, + 56.02 + ], + [ + 29.14, + 56.03 + ], + [ + 29.2, + 56 + ], + [ + 29.22, + 55.99 + ], + [ + 29.24, + 55.99 + ], + [ + 29.25, + 55.99 + ], + [ + 29.26, + 56 + ], + [ + 29.29, + 55.99 + ], + [ + 29.3, + 55.99 + ], + [ + 29.31, + 55.99 + ], + [ + 29.4, + 55.97 + ], + [ + 29.48, + 55.92 + ], + [ + 29.47, + 55.92 + ], + [ + 29.46, + 55.91 + ], + [ + 29.45, + 55.91 + ], + [ + 29.43, + 55.91 + ], + [ + 29.4, + 55.9 + ], + [ + 29.42, + 55.88 + ], + [ + 29.42, + 55.87 + ], + [ + 29.41, + 55.87 + ], + [ + 29.4, + 55.87 + ], + [ + 29.4, + 55.86 + ], + [ + 29.4, + 55.85 + ], + [ + 29.39, + 55.84 + ], + [ + 29.39, + 55.83 + ], + [ + 29.36, + 55.77 + ], + [ + 29.36, + 55.76 + ], + [ + 29.38, + 55.75 + ], + [ + 29.44, + 55.73 + ], + [ + 29.45, + 55.73 + ], + [ + 29.46, + 55.72 + ], + [ + 29.51, + 55.7 + ], + [ + 29.52, + 55.7 + ], + [ + 29.68, + 55.79 + ], + [ + 29.71, + 55.79 + ], + [ + 29.75, + 55.8 + ], + [ + 29.76, + 55.8 + ], + [ + 29.76, + 55.79 + ], + [ + 29.77, + 55.79 + ], + [ + 29.77, + 55.78 + ], + [ + 29.84, + 55.8 + ], + [ + 29.84, + 55.81 + ], + [ + 29.84, + 55.82 + ], + [ + 29.85, + 55.82 + ], + [ + 29.86, + 55.83 + ], + [ + 29.87, + 55.84 + ], + [ + 29.87, + 55.85 + ], + [ + 29.89, + 55.86 + ], + [ + 29.9, + 55.86 + ], + [ + 29.97, + 55.86 + ], + [ + 30.07, + 55.85 + ], + [ + 30.08, + 55.85 + ], + [ + 30.08, + 55.84 + ], + [ + 30.09, + 55.84 + ], + [ + 30.29, + 55.85 + ], + [ + 30.28, + 55.85 + ], + [ + 30.35, + 55.83 + ], + [ + 30.36, + 55.82 + ], + [ + 30.36, + 55.81 + ], + [ + 30.37, + 55.81 + ], + [ + 30.38, + 55.81 + ], + [ + 30.41, + 55.81 + ], + [ + 30.42, + 55.81 + ], + [ + 30.93, + 55.62 + ], + [ + 30.9, + 55.48 + ], + [ + 30.89, + 55.47 + ], + [ + 30.98, + 55.15 + ], + [ + 30.97, + 55.15 + ], + [ + 30.97, + 55.14 + ], + [ + 31, + 55.14 + ], + [ + 30.75, + 54.81 + ], + [ + 30.98, + 54.69 + ], + [ + 31, + 54.67 + ], + [ + 31.01, + 54.67 + ], + [ + 31.03, + 54.67 + ], + [ + 31.07, + 54.66 + ], + [ + 31.07, + 54.67 + ], + [ + 31.09, + 54.66 + ], + [ + 31.1, + 54.66 + ], + [ + 31.11, + 54.67 + ], + [ + 31.12, + 54.67 + ], + [ + 31.14, + 54.66 + ], + [ + 31.2, + 54.62 + ], + [ + 31.2, + 54.61 + ], + [ + 31.19, + 54.61 + ], + [ + 31.2, + 54.61 + ], + [ + 31.19, + 54.61 + ], + [ + 31.18, + 54.6 + ], + [ + 31.17, + 54.59 + ], + [ + 31.13, + 54.56 + ], + [ + 31.14, + 54.56 + ], + [ + 31.13, + 54.56 + ], + [ + 31.14, + 54.56 + ], + [ + 31.14, + 54.55 + ], + [ + 31.13, + 54.55 + ], + [ + 31.14, + 54.54 + ], + [ + 31.32, + 54.24 + ], + [ + 31.89, + 54.06 + ], + [ + 31.86, + 54.01 + ], + [ + 31.86, + 53.96 + ], + [ + 31.86, + 53.95 + ], + [ + 31.77, + 53.82 + ], + [ + 32.46, + 53.74 + ], + [ + 32.76, + 53.42 + ], + [ + 32.24, + 53.1 + ], + [ + 31.82, + 53.12 + ], + [ + 31.4, + 53.21 + ], + [ + 31.37, + 52.94 + ], + [ + 31.37, + 52.93 + ], + [ + 31.58, + 52.5 + ], + [ + 31.59, + 52.5 + ], + [ + 31.63, + 52.3 + ], + [ + 31.64, + 52.29 + ], + [ + 31.77, + 52.19 + ], + [ + 31.79, + 52.13 + ], + [ + 31.78, + 52.11 + ], + [ + 31.54, + 52.12 + ], + [ + 31.5, + 52.12 + ], + [ + 31.49, + 52.12 + ], + [ + 31.48, + 52.12 + ], + [ + 31.32, + 52.08 + ], + [ + 31.3, + 52.06 + ], + [ + 31.3, + 52.05 + ], + [ + 31.18, + 52.08 + ], + [ + 31.17, + 52.08 + ], + [ + 30.98, + 52.08 + ], + [ + 30.96, + 52.08 + ], + [ + 30.95, + 52.08 + ], + [ + 30.94, + 52.08 + ], + [ + 30.93, + 52.07 + ], + [ + 30.94, + 52.06 + ], + [ + 30.95, + 52.05 + ], + [ + 30.95, + 52.03 + ], + [ + 30.92, + 52.01 + ], + [ + 30.89, + 52 + ], + [ + 30.91, + 51.99 + ], + [ + 30.89, + 51.99 + ], + [ + 30.89, + 51.98 + ], + [ + 30.87, + 51.97 + ], + [ + 30.86, + 51.97 + ], + [ + 30.85, + 51.96 + ], + [ + 30.81, + 51.95 + ], + [ + 30.81, + 51.94 + ], + [ + 30.82, + 51.93 + ], + [ + 30.83, + 51.92 + ], + [ + 30.81, + 51.91 + ], + [ + 30.77, + 51.9 + ], + [ + 30.76, + 51.9 + ], + [ + 30.75, + 51.9 + ], + [ + 30.74, + 51.89 + ], + [ + 30.73, + 51.89 + ], + [ + 30.73, + 51.88 + ], + [ + 30.71, + 51.87 + ], + [ + 30.7, + 51.86 + ], + [ + 30.68, + 51.82 + ], + [ + 30.67, + 51.82 + ], + [ + 30.66, + 51.82 + ], + [ + 30.67, + 51.81 + ], + [ + 30.67, + 51.8 + ], + [ + 30.66, + 51.79 + ], + [ + 30.65, + 51.78 + ], + [ + 30.64, + 51.78 + ], + [ + 30.63, + 51.77 + ], + [ + 30.61, + 51.77 + ], + [ + 30.61, + 51.76 + ], + [ + 30.63, + 51.76 + ], + [ + 30.65, + 51.75 + ], + [ + 30.64, + 51.74 + ], + [ + 30.63, + 51.73 + ], + [ + 30.63, + 51.72 + ], + [ + 30.62, + 51.71 + ], + [ + 30.59, + 51.71 + ], + [ + 30.58, + 51.71 + ], + [ + 30.56, + 51.71 + ], + [ + 30.57, + 51.69 + ], + [ + 30.58, + 51.68 + ], + [ + 30.58, + 51.67 + ], + [ + 30.57, + 51.66 + ], + [ + 30.57, + 51.64 + ], + [ + 30.56, + 51.64 + ], + [ + 30.55, + 51.64 + ], + [ + 30.55, + 51.62 + ], + [ + 30.54, + 51.62 + ], + [ + 30.53, + 51.62 + ], + [ + 30.51, + 51.59 + ], + [ + 30.52, + 51.59 + ], + [ + 30.53, + 51.59 + ], + [ + 30.54, + 51.58 + ], + [ + 30.54, + 51.57 + ], + [ + 30.53, + 51.57 + ], + [ + 30.53, + 51.56 + ], + [ + 30.54, + 51.55 + ], + [ + 30.56, + 51.55 + ], + [ + 30.57, + 51.55 + ], + [ + 30.59, + 51.54 + ], + [ + 30.58, + 51.53 + ], + [ + 30.57, + 51.51 + ], + [ + 30.59, + 51.5 + ], + [ + 30.59, + 51.48 + ], + [ + 30.6, + 51.46 + ], + [ + 30.59, + 51.45 + ], + [ + 30.58, + 51.44 + ], + [ + 30.59, + 51.43 + ], + [ + 30.62, + 51.43 + ], + [ + 30.63, + 51.41 + ], + [ + 30.64, + 51.39 + ], + [ + 30.63, + 51.36 + ], + [ + 30.62, + 51.33 + ], + [ + 30.59, + 51.28 + ], + [ + 30.57, + 51.27 + ], + [ + 30.56, + 51.26 + ], + [ + 30.55, + 51.26 + ], + [ + 30.53, + 51.27 + ], + [ + 30.5, + 51.28 + ], + [ + 29.99, + 51.48 + ], + [ + 29.98, + 51.49 + ], + [ + 29.97, + 51.48 + ], + [ + 29.97, + 51.47 + ], + [ + 29.95, + 51.49 + ], + [ + 29.46, + 51.41 + ], + [ + 29.45, + 51.41 + ], + [ + 29.22, + 51.57 + ], + [ + 29.21, + 51.57 + ], + [ + 29.21, + 51.58 + ], + [ + 29.2, + 51.58 + ], + [ + 29.21, + 51.59 + ], + [ + 29.19, + 51.61 + ], + [ + 29.19, + 51.62 + ], + [ + 29.17, + 51.63 + ], + [ + 29.16, + 51.63 + ], + [ + 29.17, + 51.64 + ], + [ + 29.18, + 51.65 + ], + [ + 29.16, + 51.65 + ], + [ + 29.15, + 51.65 + ], + [ + 29.14, + 51.65 + ], + [ + 29.1, + 51.64 + ], + [ + 29.09, + 51.63 + ], + [ + 29.07, + 51.62 + ], + [ + 29, + 51.57 + ], + [ + 28.99, + 51.57 + ], + [ + 28.97, + 51.58 + ], + [ + 28.97, + 51.59 + ], + [ + 28.91, + 51.59 + ], + [ + 28.74, + 51.47 + ], + [ + 28.35, + 51.54 + ], + [ + 28.36, + 51.56 + ], + [ + 28.26, + 51.68 + ], + [ + 27.86, + 51.63 + ], + [ + 27.76, + 51.47 + ], + [ + 27.73, + 51.6 + ], + [ + 27.24, + 51.6 + ], + [ + 27.21, + 51.77 + ], + [ + 26.76, + 51.79 + ], + [ + 26.7, + 51.82 + ], + [ + 26.66, + 51.82 + ], + [ + 25.95, + 51.92 + ], + [ + 25.94, + 51.92 + ], + [ + 25.93, + 51.91 + ], + [ + 25.9, + 51.92 + ], + [ + 25.83, + 51.92 + ], + [ + 25.83, + 51.93 + ], + [ + 25.82, + 51.93 + ], + [ + 25.77, + 51.94 + ], + [ + 25.78, + 51.93 + ], + [ + 25.49, + 51.93 + ], + [ + 25.09, + 51.95 + ], + [ + 24.98, + 51.91 + ], + [ + 24.96, + 51.9 + ], + [ + 24.94, + 51.89 + ], + [ + 24.61, + 51.9 + ], + [ + 24.6, + 51.9 + ], + [ + 24.57, + 51.89 + ], + [ + 24.34, + 51.85 + ], + [ + 24.33, + 51.84 + ], + [ + 24.32, + 51.83 + ], + [ + 24.31, + 51.82 + ], + [ + 24.12, + 51.67 + ], + [ + 23.65, + 51.57 + ], + [ + 23.65, + 51.56 + ], + [ + 23.62, + 51.51 + ], + [ + 23.61, + 51.52 + ], + [ + 23.6, + 51.53 + ], + [ + 23.59, + 51.53 + ], + [ + 23.58, + 51.53 + ], + [ + 23.55, + 51.71 + ], + [ + 23.55, + 51.76 + ], + [ + 23.56, + 51.76 + ], + [ + 23.59, + 51.77 + ], + [ + 23.63, + 51.78 + ], + [ + 23.62, + 51.82 + ], + [ + 23.6, + 51.83 + ], + [ + 23.61, + 51.84 + ], + [ + 23.6, + 51.84 + ], + [ + 23.62, + 51.88 + ], + [ + 23.62, + 51.87 + ], + [ + 23.62, + 51.9 + ], + [ + 23.62, + 51.91 + ], + [ + 23.61, + 51.92 + ], + [ + 23.64, + 51.93 + ], + [ + 23.65, + 51.93 + ], + [ + 23.67, + 51.97 + ], + [ + 23.67, + 51.98 + ], + [ + 23.68, + 51.99 + ], + [ + 23.69, + 51.99 + ], + [ + 23.66, + 52.03 + ], + [ + 23.66, + 52.05 + ], + [ + 23.65, + 52.06 + ], + [ + 23.65, + 52.07 + ], + [ + 23.62, + 52.09 + ], + [ + 23.62, + 52.11 + ], + [ + 23.6, + 52.12 + ], + [ + 23.57, + 52.12 + ], + [ + 23.56, + 52.12 + ], + [ + 23.54, + 52.13 + ], + [ + 23.53, + 52.13 + ], + [ + 23.51, + 52.15 + ], + [ + 23.5, + 52.15 + ], + [ + 23.49, + 52.16 + ], + [ + 23.49, + 52.17 + ], + [ + 23.5, + 52.17 + ], + [ + 23.47, + 52.18 + ], + [ + 23.46, + 52.18 + ], + [ + 23.42, + 52.17 + ], + [ + 23.42, + 52.18 + ], + [ + 23.4, + 52.19 + ], + [ + 23.36, + 52.21 + ], + [ + 23.35, + 52.2 + ], + [ + 23.3, + 52.21 + ], + [ + 23.31, + 52.22 + ], + [ + 23.27, + 52.21 + ], + [ + 23.26, + 52.22 + ], + [ + 23.25, + 52.22 + ], + [ + 23.21, + 52.23 + ], + [ + 23.2, + 52.23 + ], + [ + 23.19, + 52.24 + ], + [ + 23.2, + 52.25 + ], + [ + 23.21, + 52.26 + ], + [ + 23.2, + 52.27 + ], + [ + 23.2, + 52.28 + ], + [ + 23.8, + 52.64 + ] + ] + ], + [ + [ + [ + 29.97, + 55.86 + ], + [ + 29.96, + 55.86 + ], + [ + 29.97, + 55.86 + ], + [ + 29.97, + 55.87 + ], + [ + 29.98, + 55.87 + ], + [ + 30, + 55.87 + ], + [ + 29.97, + 55.86 + ] + ] + ] + ] + }, + "properties": { + "A3": "BLR" + } + }, + { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + 13.1, + -5.89 + ], + [ + 13.13, + -5.9 + ], + [ + 13.14, + -5.89 + ], + [ + 13.18, + -5.87 + ], + [ + 13.19, + -5.87 + ], + [ + 13.21, + -5.87 + ], + [ + 13.24, + -5.87 + ], + [ + 13.25, + -5.87 + ], + [ + 13.29, + -5.88 + ], + [ + 13.37, + -5.89 + ], + [ + 13.41, + -5.87 + ], + [ + 13.43, + -5.86 + ], + [ + 14.98, + -5.87 + ], + [ + 15.02, + -5.87 + ], + [ + 16.45, + -5.86 + ], + [ + 16.47, + -5.86 + ], + [ + 16.47, + -5.85 + ], + [ + 16.52, + -5.86 + ], + [ + 16.53, + -5.86 + ], + [ + 16.57, + -5.87 + ], + [ + 16.58, + -5.9 + ], + [ + 16.58, + -5.92 + ], + [ + 16.58, + -5.95 + ], + [ + 16.6, + -5.94 + ], + [ + 16.59, + -5.97 + ], + [ + 16.59, + -6.02 + ], + [ + 16.6, + -6.03 + ], + [ + 16.61, + -6.03 + ], + [ + 16.62, + -6.05 + ], + [ + 16.61, + -6.05 + ], + [ + 16.64, + -6.09 + ], + [ + 16.64, + -6.1 + ], + [ + 16.66, + -6.09 + ], + [ + 16.69, + -6.12 + ], + [ + 16.7, + -6.12 + ], + [ + 16.72, + -6.16 + ], + [ + 16.73, + -6.18 + ], + [ + 16.72, + -6.19 + ], + [ + 16.71, + -6.22 + ], + [ + 16.71, + -6.23 + ], + [ + 16.7, + -6.27 + ], + [ + 16.71, + -6.27 + ], + [ + 16.71, + -6.29 + ], + [ + 16.72, + -6.3 + ], + [ + 16.72, + -6.32 + ], + [ + 16.71, + -6.34 + ], + [ + 16.7, + -6.34 + ], + [ + 16.7, + -6.33 + ], + [ + 16.68, + -6.34 + ], + [ + 16.7, + -6.39 + ], + [ + 16.72, + -6.41 + ], + [ + 16.7, + -6.42 + ], + [ + 16.7, + -6.43 + ], + [ + 16.71, + -6.44 + ], + [ + 16.72, + -6.45 + ], + [ + 16.72, + -6.46 + ], + [ + 16.72, + -6.47 + ], + [ + 16.72, + -6.49 + ], + [ + 16.73, + -6.5 + ], + [ + 16.75, + -6.52 + ], + [ + 16.75, + -6.53 + ], + [ + 16.75, + -6.54 + ], + [ + 16.74, + -6.56 + ], + [ + 16.74, + -6.59 + ], + [ + 16.76, + -6.62 + ], + [ + 16.76, + -6.66 + ], + [ + 16.76, + -6.67 + ], + [ + 16.76, + -6.7 + ], + [ + 16.76, + -6.71 + ], + [ + 16.78, + -6.72 + ], + [ + 16.79, + -6.72 + ], + [ + 16.8, + -6.75 + ], + [ + 16.8, + -6.77 + ], + [ + 16.81, + -6.79 + ], + [ + 16.81, + -6.8 + ], + [ + 16.82, + -6.82 + ], + [ + 16.84, + -6.83 + ], + [ + 16.84, + -6.86 + ], + [ + 16.85, + -6.89 + ], + [ + 16.86, + -6.88 + ], + [ + 16.88, + -6.88 + ], + [ + 16.9, + -6.94 + ], + [ + 16.9, + -6.95 + ], + [ + 16.91, + -6.97 + ], + [ + 16.9, + -6.99 + ], + [ + 16.9, + -7 + ], + [ + 16.92, + -7.02 + ], + [ + 16.94, + -7.04 + ], + [ + 16.97, + -7.06 + ], + [ + 16.96, + -7.1 + ], + [ + 16.96, + -7.11 + ], + [ + 16.94, + -7.12 + ], + [ + 16.92, + -7.1 + ], + [ + 16.92, + -7.11 + ], + [ + 16.93, + -7.14 + ], + [ + 16.93, + -7.15 + ], + [ + 16.94, + -7.18 + ], + [ + 16.94, + -7.19 + ], + [ + 16.96, + -7.21 + ], + [ + 16.94, + -7.23 + ], + [ + 16.95, + -7.25 + ], + [ + 16.96, + -7.25 + ], + [ + 16.98, + -7.27 + ], + [ + 16.98, + -7.28 + ], + [ + 16.98, + -7.29 + ], + [ + 17, + -7.3 + ], + [ + 17.01, + -7.3 + ], + [ + 17.02, + -7.29 + ], + [ + 17.03, + -7.31 + ], + [ + 17.04, + -7.32 + ], + [ + 17.06, + -7.33 + ], + [ + 17.07, + -7.34 + ], + [ + 17.08, + -7.34 + ], + [ + 17.09, + -7.34 + ], + [ + 17.1, + -7.35 + ], + [ + 17.11, + -7.42 + ], + [ + 17.12, + -7.43 + ], + [ + 17.14, + -7.4 + ], + [ + 17.14, + -7.41 + ], + [ + 17.16, + -7.42 + ], + [ + 17.17, + -7.42 + ], + [ + 17.18, + -7.43 + ], + [ + 17.15, + -7.46 + ], + [ + 17.16, + -7.48 + ], + [ + 17.17, + -7.49 + ], + [ + 17.18, + -7.49 + ], + [ + 17.19, + -7.49 + ], + [ + 17.2, + -7.51 + ], + [ + 17.2, + -7.52 + ], + [ + 17.21, + -7.55 + ], + [ + 17.21, + -7.56 + ], + [ + 17.22, + -7.58 + ], + [ + 17.23, + -7.59 + ], + [ + 17.25, + -7.6 + ], + [ + 17.26, + -7.6 + ], + [ + 17.28, + -7.62 + ], + [ + 17.3, + -7.63 + ], + [ + 17.3, + -7.67 + ], + [ + 17.3, + -7.69 + ], + [ + 17.29, + -7.69 + ], + [ + 17.3, + -7.7 + ], + [ + 17.31, + -7.7 + ], + [ + 17.33, + -7.72 + ], + [ + 17.33, + -7.73 + ], + [ + 17.32, + -7.75 + ], + [ + 17.32, + -7.76 + ], + [ + 17.33, + -7.78 + ], + [ + 17.35, + -7.78 + ], + [ + 17.36, + -7.78 + ], + [ + 17.38, + -7.79 + ], + [ + 17.38, + -7.8 + ], + [ + 17.38, + -7.82 + ], + [ + 17.4, + -7.82 + ], + [ + 17.39, + -7.84 + ], + [ + 17.41, + -7.83 + ], + [ + 17.43, + -7.84 + ], + [ + 17.42, + -7.86 + ], + [ + 17.43, + -7.87 + ], + [ + 17.45, + -7.88 + ], + [ + 17.45, + -7.89 + ], + [ + 17.44, + -7.92 + ], + [ + 17.45, + -7.93 + ], + [ + 17.45, + -7.94 + ], + [ + 17.46, + -7.94 + ], + [ + 17.48, + -7.97 + ], + [ + 17.49, + -8 + ], + [ + 17.51, + -8.01 + ], + [ + 17.52, + -8.02 + ], + [ + 17.53, + -8.04 + ], + [ + 17.53, + -8.05 + ], + [ + 17.51, + -8.06 + ], + [ + 17.51, + -8.08 + ], + [ + 17.53, + -8.1 + ], + [ + 18.1, + -8.1 + ], + [ + 18.53, + -7.92 + ], + [ + 19.38, + -8 + ], + [ + 19.55, + -7 + ], + [ + 19.97, + -7 + ], + [ + 20.13, + -7 + ], + [ + 20.18, + -7 + ], + [ + 20.29, + -7 + ], + [ + 20.33, + -6.92 + ], + [ + 20.43, + -6.92 + ], + [ + 20.62, + -6.92 + ], + [ + 20.61, + -6.99 + ], + [ + 20.61, + -7.01 + ], + [ + 20.59, + -7.04 + ], + [ + 20.59, + -7.06 + ], + [ + 20.58, + -7.08 + ], + [ + 20.56, + -7.12 + ], + [ + 20.55, + -7.14 + ], + [ + 20.55, + -7.15 + ], + [ + 20.56, + -7.17 + ], + [ + 20.55, + -7.23 + ], + [ + 21.79, + -7.31 + ], + [ + 21.8, + -7.32 + ], + [ + 21.84, + -7.38 + ], + [ + 21.84, + -7.39 + ], + [ + 21.84, + -7.42 + ], + [ + 21.85, + -7.42 + ], + [ + 21.86, + -7.44 + ], + [ + 21.86, + -7.45 + ], + [ + 21.86, + -7.47 + ], + [ + 21.86, + -7.48 + ], + [ + 21.84, + -7.51 + ], + [ + 21.84, + -7.53 + ], + [ + 21.85, + -7.54 + ], + [ + 21.86, + -7.55 + ], + [ + 21.86, + -7.56 + ], + [ + 21.85, + -7.58 + ], + [ + 21.84, + -7.62 + ], + [ + 21.83, + -7.65 + ], + [ + 21.81, + -7.67 + ], + [ + 21.82, + -7.67 + ], + [ + 21.81, + -7.69 + ], + [ + 21.8, + -7.73 + ], + [ + 21.79, + -7.75 + ], + [ + 21.79, + -7.76 + ], + [ + 21.78, + -7.79 + ], + [ + 21.77, + -7.8 + ], + [ + 21.78, + -7.82 + ], + [ + 21.77, + -7.84 + ], + [ + 21.77, + -7.85 + ], + [ + 21.78, + -7.88 + ], + [ + 21.78, + -7.89 + ], + [ + 21.77, + -7.9 + ], + [ + 21.78, + -7.91 + ], + [ + 21.76, + -7.93 + ], + [ + 21.75, + -7.93 + ], + [ + 21.76, + -7.95 + ], + [ + 21.77, + -7.97 + ], + [ + 21.77, + -8.01 + ], + [ + 21.78, + -8.02 + ], + [ + 21.79, + -8.03 + ], + [ + 21.79, + -8.04 + ], + [ + 21.81, + -8.06 + ], + [ + 21.83, + -8.08 + ], + [ + 21.83, + -8.1 + ], + [ + 21.84, + -8.1 + ], + [ + 21.84, + -8.12 + ], + [ + 21.85, + -8.15 + ], + [ + 21.86, + -8.15 + ], + [ + 21.88, + -8.18 + ], + [ + 21.88, + -8.19 + ], + [ + 21.87, + -8.19 + ], + [ + 21.88, + -8.21 + ], + [ + 21.88, + -8.23 + ], + [ + 21.89, + -8.25 + ], + [ + 21.89, + -8.27 + ], + [ + 21.89, + -8.28 + ], + [ + 21.9, + -8.3 + ], + [ + 21.91, + -8.3 + ], + [ + 21.93, + -8.32 + ], + [ + 21.93, + -8.34 + ], + [ + 21.92, + -8.38 + ], + [ + 21.92, + -8.39 + ], + [ + 21.93, + -8.4 + ], + [ + 21.93, + -8.41 + ], + [ + 21.94, + -8.47 + ], + [ + 21.95, + -8.49 + ], + [ + 21.95, + -8.5 + ], + [ + 21.94, + -8.54 + ], + [ + 21.94, + -8.56 + ], + [ + 21.93, + -8.57 + ], + [ + 21.93, + -8.6 + ], + [ + 21.92, + -8.61 + ], + [ + 21.91, + -8.62 + ], + [ + 21.91, + -8.63 + ], + [ + 21.91, + -8.67 + ], + [ + 21.9, + -8.69 + ], + [ + 21.89, + -8.71 + ], + [ + 21.89, + -8.8 + ], + [ + 21.86, + -8.86 + ], + [ + 21.87, + -8.87 + ], + [ + 21.86, + -8.89 + ], + [ + 21.86, + -8.93 + ], + [ + 21.85, + -8.99 + ], + [ + 21.85, + -9.06 + ], + [ + 21.84, + -9.06 + ], + [ + 21.84, + -9.1 + ], + [ + 21.84, + -9.14 + ], + [ + 21.85, + -9.15 + ], + [ + 21.86, + -9.17 + ], + [ + 21.86, + -9.23 + ], + [ + 21.84, + -9.25 + ], + [ + 21.84, + -9.26 + ], + [ + 21.83, + -9.3 + ], + [ + 21.8, + -9.42 + ], + [ + 21.8, + -9.43 + ], + [ + 21.82, + -9.45 + ], + [ + 21.84, + -9.51 + ], + [ + 21.86, + -9.55 + ], + [ + 21.86, + -9.56 + ], + [ + 21.87, + -9.58 + ], + [ + 21.86, + -9.58 + ], + [ + 21.87, + -9.6 + ], + [ + 21.9, + -9.67 + ], + [ + 21.91, + -9.67 + ], + [ + 21.93, + -9.68 + ], + [ + 21.95, + -9.71 + ], + [ + 21.97, + -9.73 + ], + [ + 21.97, + -9.75 + ], + [ + 21.98, + -9.75 + ], + [ + 21.99, + -9.75 + ], + [ + 22, + -9.77 + ], + [ + 22.01, + -9.8 + ], + [ + 22.02, + -9.81 + ], + [ + 22.01, + -9.82 + ], + [ + 22.19, + -9.92 + ], + [ + 22.33, + -10.39 + ], + [ + 22.33, + -10.76 + ], + [ + 22.17, + -10.87 + ], + [ + 22.25, + -11.26 + ], + [ + 22.51, + -11.04 + ], + [ + 23.2, + -11.11 + ], + [ + 23.48, + -10.94 + ], + [ + 23.86, + -11.04 + ], + [ + 24, + -10.89 + ], + [ + 24.08, + -12.38 + ], + [ + 23.89, + -12.84 + ], + [ + 24.06, + -13 + ], + [ + 22, + -13 + ], + [ + 22, + -16.21 + ], + [ + 22.12, + -16.49 + ], + [ + 23.43, + -17.64 + ], + [ + 21.42, + -18.02 + ], + [ + 21.4, + -18.01 + ], + [ + 21.37, + -18 + ], + [ + 21.36, + -17.99 + ], + [ + 21.31, + -17.98 + ], + [ + 21.29, + -17.97 + ], + [ + 21.26, + -17.96 + ], + [ + 21.24, + -17.95 + ], + [ + 21.23, + -17.94 + ], + [ + 21.22, + -17.93 + ], + [ + 21.2, + -17.93 + ], + [ + 21.16, + -17.93 + ], + [ + 21.15, + -17.94 + ], + [ + 21.14, + -17.94 + ], + [ + 21.13, + -17.94 + ], + [ + 21.12, + -17.94 + ], + [ + 21.11, + -17.94 + ], + [ + 21.09, + -17.95 + ], + [ + 21.05, + -17.95 + ], + [ + 21.03, + -17.95 + ], + [ + 21.01, + -17.96 + ], + [ + 20.99, + -17.96 + ], + [ + 20.98, + -17.96 + ], + [ + 20.94, + -17.97 + ], + [ + 20.88, + -18 + ], + [ + 20.87, + -18 + ], + [ + 20.87, + -18.02 + ], + [ + 20.81, + -18.04 + ], + [ + 20.79, + -18.03 + ], + [ + 20.78, + -18.02 + ], + [ + 20.75, + -18 + ], + [ + 20.74, + -18 + ], + [ + 20.66, + -17.98 + ], + [ + 20.65, + -17.98 + ], + [ + 20.61, + -17.98 + ], + [ + 20.59, + -17.97 + ], + [ + 20.59, + -17.98 + ], + [ + 20.55, + -17.98 + ], + [ + 20.54, + -17.98 + ], + [ + 20.51, + -17.96 + ], + [ + 20.48, + -17.95 + ], + [ + 20.46, + -17.92 + ], + [ + 20.45, + -17.91 + ], + [ + 20.37, + -17.9 + ], + [ + 20.36, + -17.89 + ], + [ + 20.35, + -17.88 + ], + [ + 20.34, + -17.87 + ], + [ + 20.3, + -17.87 + ], + [ + 20.3, + -17.88 + ], + [ + 20.26, + -17.87 + ], + [ + 20.25, + -17.88 + ], + [ + 20.19, + -17.88 + ], + [ + 20.17, + -17.88 + ], + [ + 20.13, + -17.9 + ], + [ + 20.11, + -17.91 + ], + [ + 20.1, + -17.91 + ], + [ + 20.08, + -17.89 + ], + [ + 19.97, + -17.89 + ], + [ + 19.95, + -17.87 + ], + [ + 19.89, + -17.88 + ], + [ + 19.88, + -17.88 + ], + [ + 19.84, + -17.87 + ], + [ + 19.8, + -17.87 + ], + [ + 19.79, + -17.88 + ], + [ + 19.76, + -17.91 + ], + [ + 19.75, + -17.91 + ], + [ + 19.74, + -17.9 + ], + [ + 19.73, + -17.89 + ], + [ + 19.71, + -17.87 + ], + [ + 19.71, + -17.89 + ], + [ + 19.69, + -17.86 + ], + [ + 19.68, + -17.85 + ], + [ + 19.67, + -17.85 + ], + [ + 19.66, + -17.85 + ], + [ + 19.64, + -17.85 + ], + [ + 19.56, + -17.87 + ], + [ + 19.55, + -17.87 + ], + [ + 19.52, + -17.86 + ], + [ + 19.51, + -17.86 + ], + [ + 19.49, + -17.86 + ], + [ + 19.49, + -17.87 + ], + [ + 18.9, + -17.82 + ], + [ + 18.63, + -17.64 + ], + [ + 18.61, + -17.6 + ], + [ + 18.57, + -17.58 + ], + [ + 18.55, + -17.56 + ], + [ + 18.54, + -17.56 + ], + [ + 18.52, + -17.52 + ], + [ + 18.52, + -17.51 + ], + [ + 18.5, + -17.49 + ], + [ + 18.48, + -17.48 + ], + [ + 18.48, + -17.47 + ], + [ + 18.48, + -17.46 + ], + [ + 18.47, + -17.45 + ], + [ + 18.46, + -17.43 + ], + [ + 18.45, + -17.43 + ], + [ + 18.41, + -17.39 + ], + [ + 15.91, + -17.39 + ], + [ + 15.77, + -17.39 + ], + [ + 14.22, + -17.39 + ], + [ + 14.22, + -17.4 + ], + [ + 14.2, + -17.41 + ], + [ + 14.19, + -17.41 + ], + [ + 14.17, + -17.42 + ], + [ + 14.15, + -17.43 + ], + [ + 14.13, + -17.43 + ], + [ + 14.12, + -17.43 + ], + [ + 14.11, + -17.43 + ], + [ + 14.1, + -17.44 + ], + [ + 14.08, + -17.43 + ], + [ + 14.02, + -17.42 + ], + [ + 14.01, + -17.41 + ], + [ + 14, + -17.43 + ], + [ + 13.99, + -17.43 + ], + [ + 13.97, + -17.43 + ], + [ + 13.93, + -17.42 + ], + [ + 13.93, + -17.41 + ], + [ + 13.91, + -17.37 + ], + [ + 13.8, + -17.31 + ], + [ + 13.79, + -17.31 + ], + [ + 13.74, + -17.27 + ], + [ + 13.73, + -17.27 + ], + [ + 13.69, + -17.25 + ], + [ + 13.67, + -17.24 + ], + [ + 13.65, + -17.22 + ], + [ + 13.64, + -17.22 + ], + [ + 13.62, + -17.2 + ], + [ + 13.6, + -17.18 + ], + [ + 13.54, + -17.15 + ], + [ + 13.53, + -17.14 + ], + [ + 13.51, + -17.13 + ], + [ + 13.52, + -17.11 + ], + [ + 13.52, + -17.1 + ], + [ + 13.49, + -17.06 + ], + [ + 13.49, + -17.05 + ], + [ + 13.48, + -17.04 + ], + [ + 13.48, + -17.03 + ], + [ + 13.47, + -17.01 + ], + [ + 13.46, + -17.01 + ], + [ + 13.45, + -17.01 + ], + [ + 13.44, + -17.01 + ], + [ + 13.43, + -17 + ], + [ + 13.42, + -17 + ], + [ + 13.36, + -16.98 + ], + [ + 13.35, + -16.97 + ], + [ + 13.32, + -16.99 + ], + [ + 13.31, + -16.99 + ], + [ + 13.27, + -17 + ], + [ + 13.26, + -16.99 + ], + [ + 13.24, + -17 + ], + [ + 12.98, + -16.98 + ], + [ + 12.44, + -17.24 + ], + [ + 12.43, + -17.24 + ], + [ + 12.08, + -17.14 + ], + [ + 11.8, + -17.27 + ], + [ + 11.79, + -17.27 + ], + [ + 11.78, + -17.26 + ], + [ + 11.77, + -17.26 + ], + [ + 11.73, + -15.87 + ], + [ + 12, + -15.63 + ], + [ + 12.15, + -15.18 + ], + [ + 12.53, + -13.42 + ], + [ + 12.98, + -12.98 + ], + [ + 12.94, + -12.83 + ], + [ + 13.48, + -12.51 + ], + [ + 13.76, + -11.96 + ], + [ + 13.87, + -11.01 + ], + [ + 13.49, + -10.24 + ], + [ + 14.04, + -10.4 + ], + [ + 13.48, + -10.23 + ], + [ + 13.31, + -9.98 + ], + [ + 12.99, + -9.09 + ], + [ + 13.4, + -8.75 + ], + [ + 13.39, + -8.39 + ], + [ + 12.83, + -6.99 + ], + [ + 12.27, + -6.14 + ], + [ + 12.65, + -6.15 + ], + [ + 12.6, + -6.05 + ], + [ + 13.1, + -5.89 + ] + ], + [ + [ + 15.89, + -13.28 + ], + [ + 15.8, + -13.41 + ], + [ + 15.96, + -13.45 + ], + [ + 15.89, + -13.28 + ] + ], + [ + [ + 14.01, + -8.93 + ], + [ + 13.91, + -8.97 + ], + [ + 14.1, + -8.97 + ], + [ + 14.01, + -8.93 + ] + ], + [ + [ + 13.69, + -9.21 + ], + [ + 13.58, + -9.17 + ], + [ + 13.73, + -9.32 + ], + [ + 13.69, + -9.21 + ] + ] + ], + [ + [ + [ + 12.01, + -5.03 + ], + [ + 12.08, + -4.97 + ], + [ + 12.15, + -4.91 + ], + [ + 12.17, + -4.9 + ], + [ + 12.18, + -4.85 + ], + [ + 12.19, + -4.83 + ], + [ + 12.19, + -4.82 + ], + [ + 12.19, + -4.8 + ], + [ + 12.2, + -4.79 + ], + [ + 12.33, + -4.79 + ], + [ + 12.35, + -4.76 + ], + [ + 12.37, + -4.72 + ], + [ + 12.38, + -4.7 + ], + [ + 12.38, + -4.68 + ], + [ + 12.39, + -4.67 + ], + [ + 12.4, + -4.66 + ], + [ + 12.4, + -4.65 + ], + [ + 12.39, + -4.64 + ], + [ + 12.39, + -4.62 + ], + [ + 12.4, + -4.61 + ], + [ + 12.43, + -4.61 + ], + [ + 12.45, + -4.6 + ], + [ + 12.52, + -4.58 + ], + [ + 12.56, + -4.58 + ], + [ + 12.62, + -4.56 + ], + [ + 12.64, + -4.56 + ], + [ + 12.66, + -4.54 + ], + [ + 12.66, + -4.53 + ], + [ + 12.67, + -4.51 + ], + [ + 12.68, + -4.5 + ], + [ + 12.73, + -4.43 + ], + [ + 12.75, + -4.42 + ], + [ + 12.76, + -4.4 + ], + [ + 12.77, + -4.39 + ], + [ + 13.1, + -4.64 + ], + [ + 13.1, + -4.68 + ], + [ + 13.1, + -4.69 + ], + [ + 12.46, + -5.09 + ], + [ + 12.52, + -5.57 + ], + [ + 12.52, + -5.66 + ], + [ + 12.42, + -5.74 + ], + [ + 12.39, + -5.74 + ], + [ + 12.28, + -5.74 + ], + [ + 12.22, + -5.75 + ], + [ + 12.2, + -5.77 + ], + [ + 12.23, + -5.49 + ], + [ + 12.04, + -5.07 + ], + [ + 12.15, + -5 + ], + [ + 12.01, + -5.03 + ] + ] + ] + ] + }, + "properties": { + "A3": "AGO" + } + }, + { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + -60.76, + 11.24 + ], + [ + -60.52, + 11.34 + ], + [ + -60.84, + 11.15 + ], + [ + -60.76, + 11.24 + ] + ] + ], + [ + [ + [ + -61.01, + 10.36 + ], + [ + -60.99, + 10.14 + ], + [ + -61.16, + 10.07 + ], + [ + -61.93, + 10.05 + ], + [ + -61.46, + 10.3 + ], + [ + -61.61, + 10.75 + ], + [ + -60.91, + 10.83 + ], + [ + -61.04, + 10.69 + ], + [ + -61.01, + 10.36 + ] + ] + ] + ] + }, + "properties": { + "A3": "TTO" + } + }, + { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + 44.76, + 39.71 + ], + [ + 45.06, + 39.79 + ], + [ + 45.47, + 39.49 + ], + [ + 45.78, + 39.58 + ], + [ + 46.14, + 38.84 + ], + [ + 46.12, + 38.86 + ], + [ + 46.1, + 38.87 + ], + [ + 46.08, + 38.87 + ], + [ + 46.07, + 38.88 + ], + [ + 46.04, + 38.87 + ], + [ + 46.03, + 38.87 + ], + [ + 46.01, + 38.87 + ], + [ + 45.97, + 38.89 + ], + [ + 45.96, + 38.89 + ], + [ + 45.9, + 38.88 + ], + [ + 45.88, + 38.89 + ], + [ + 45.84, + 38.91 + ], + [ + 45.83, + 38.9 + ], + [ + 45.81, + 38.91 + ], + [ + 45.8, + 38.92 + ], + [ + 45.79, + 38.92 + ], + [ + 45.77, + 38.93 + ], + [ + 45.76, + 38.93 + ], + [ + 45.7, + 38.94 + ], + [ + 45.68, + 38.95 + ], + [ + 45.64, + 38.95 + ], + [ + 45.62, + 38.94 + ], + [ + 45.62, + 38.95 + ], + [ + 45.59, + 38.96 + ], + [ + 45.57, + 38.98 + ], + [ + 45.57, + 38.97 + ], + [ + 45.53, + 38.97 + ], + [ + 45.44, + 39.01 + ], + [ + 45.46, + 39.04 + ], + [ + 45.46, + 39.05 + ], + [ + 45.4, + 39.08 + ], + [ + 45.4, + 39.09 + ], + [ + 45.4, + 39.13 + ], + [ + 45.22, + 39.21 + ], + [ + 45.2, + 39.2 + ], + [ + 45.2, + 39.21 + ], + [ + 45.19, + 39.22 + ], + [ + 45.17, + 39.22 + ], + [ + 45.15, + 39.22 + ], + [ + 45.15, + 39.23 + ], + [ + 45.15, + 39.24 + ], + [ + 45.11, + 39.32 + ], + [ + 45.1, + 39.32 + ], + [ + 45.09, + 39.35 + ], + [ + 45.08, + 39.35 + ], + [ + 45.04, + 39.38 + ], + [ + 45.04, + 39.39 + ], + [ + 45.02, + 39.4 + ], + [ + 45.02, + 39.41 + ], + [ + 44.98, + 39.42 + ], + [ + 44.97, + 39.42 + ], + [ + 44.98, + 39.45 + ], + [ + 44.97, + 39.45 + ], + [ + 44.96, + 39.45 + ], + [ + 44.95, + 39.45 + ], + [ + 44.94, + 39.48 + ], + [ + 44.94, + 39.49 + ], + [ + 44.92, + 39.52 + ], + [ + 44.92, + 39.54 + ], + [ + 44.91, + 39.54 + ], + [ + 44.91, + 39.57 + ], + [ + 44.89, + 39.59 + ], + [ + 44.87, + 39.61 + ], + [ + 44.86, + 39.6 + ], + [ + 44.85, + 39.61 + ], + [ + 44.84, + 39.61 + ], + [ + 44.81, + 39.63 + ], + [ + 44.81, + 39.64 + ], + [ + 44.82, + 39.65 + ], + [ + 44.81, + 39.66 + ], + [ + 44.81, + 39.67 + ], + [ + 44.8, + 39.68 + ], + [ + 44.78, + 39.69 + ], + [ + 44.77, + 39.71 + ], + [ + 44.76, + 39.71 + ] + ] + ], + [ + [ + [ + 45.01, + 41.3 + ], + [ + 45.07, + 41.33 + ], + [ + 45.08, + 41.34 + ], + [ + 45.09, + 41.34 + ], + [ + 45.2, + 41.42 + ], + [ + 45.23, + 41.44 + ], + [ + 46.49, + 41.06 + ], + [ + 46.66, + 41.21 + ], + [ + 46.72, + 41.28 + ], + [ + 46.73, + 41.28 + ], + [ + 46.74, + 41.28 + ], + [ + 46.72, + 41.29 + ], + [ + 46.71, + 41.29 + ], + [ + 46.71, + 41.3 + ], + [ + 46.7, + 41.31 + ], + [ + 46.69, + 41.31 + ], + [ + 46.7, + 41.33 + ], + [ + 46.68, + 41.33 + ], + [ + 46.67, + 41.34 + ], + [ + 46.67, + 41.35 + ], + [ + 46.66, + 41.36 + ], + [ + 46.65, + 41.37 + ], + [ + 46.64, + 41.36 + ], + [ + 46.65, + 41.36 + ], + [ + 46.62, + 41.36 + ], + [ + 46.63, + 41.38 + ], + [ + 46.62, + 41.38 + ], + [ + 46.6, + 41.39 + ], + [ + 46.56, + 41.41 + ], + [ + 46.54, + 41.41 + ], + [ + 46.53, + 41.41 + ], + [ + 46.52, + 41.41 + ], + [ + 46.45, + 41.45 + ], + [ + 46.43, + 41.46 + ], + [ + 46.41, + 41.48 + ], + [ + 46.4, + 41.47 + ], + [ + 46.36, + 41.49 + ], + [ + 46.36, + 41.5 + ], + [ + 46.35, + 41.5 + ], + [ + 46.35, + 41.49 + ], + [ + 46.33, + 41.54 + ], + [ + 46.32, + 41.54 + ], + [ + 46.3, + 41.55 + ], + [ + 46.3, + 41.56 + ], + [ + 46.28, + 41.6 + ], + [ + 46.28, + 41.61 + ], + [ + 46.27, + 41.62 + ], + [ + 46.27, + 41.63 + ], + [ + 46.27, + 41.62 + ], + [ + 46.23, + 41.6 + ], + [ + 46.23, + 41.61 + ], + [ + 46.21, + 41.62 + ], + [ + 46.21, + 41.63 + ], + [ + 46.18, + 41.74 + ], + [ + 46.27, + 41.77 + ], + [ + 46.43, + 41.91 + ], + [ + 46.76, + 41.86 + ], + [ + 47.3, + 41.31 + ], + [ + 47.78, + 41.19 + ], + [ + 48.59, + 41.84 + ], + [ + 49.55, + 40.63 + ], + [ + 50.06, + 40.59 + ], + [ + 50.36, + 40.36 + ], + [ + 49.86, + 40.37 + ], + [ + 49.48, + 40.19 + ], + [ + 49.31, + 39.37 + ], + [ + 49.15, + 39.13 + ], + [ + 49, + 39.29 + ], + [ + 48.87, + 39.2 + ], + [ + 49.01, + 39.2 + ], + [ + 48.8, + 38.89 + ], + [ + 48.88, + 38.44 + ], + [ + 48.63, + 38.4 + ], + [ + 48.02, + 38.84 + ], + [ + 48.33, + 39.02 + ], + [ + 48.13, + 39.26 + ], + [ + 48.37, + 39.38 + ], + [ + 47.97, + 39.69 + ], + [ + 47.96, + 39.69 + ], + [ + 47.93, + 39.67 + ], + [ + 47.92, + 39.67 + ], + [ + 47.88, + 39.67 + ], + [ + 47.84, + 39.66 + ], + [ + 47.83, + 39.66 + ], + [ + 47.82, + 39.66 + ], + [ + 47.81, + 39.66 + ], + [ + 47.79, + 39.64 + ], + [ + 47.77, + 39.62 + ], + [ + 47.76, + 39.62 + ], + [ + 47.75, + 39.6 + ], + [ + 47.73, + 39.59 + ], + [ + 47.72, + 39.59 + ], + [ + 47.71, + 39.59 + ], + [ + 47.69, + 39.59 + ], + [ + 47.66, + 39.57 + ], + [ + 47.64, + 39.56 + ], + [ + 47.6, + 39.54 + ], + [ + 47.59, + 39.54 + ], + [ + 47.57, + 39.53 + ], + [ + 47.57, + 39.52 + ], + [ + 47.4, + 39.47 + ], + [ + 47.38, + 39.46 + ], + [ + 47.38, + 39.45 + ], + [ + 47.38, + 39.44 + ], + [ + 47.37, + 39.44 + ], + [ + 47.36, + 39.42 + ], + [ + 47.35, + 39.41 + ], + [ + 47.34, + 39.4 + ], + [ + 47.33, + 39.39 + ], + [ + 47.32, + 39.38 + ], + [ + 47.25, + 39.34 + ], + [ + 47.24, + 39.34 + ], + [ + 47.13, + 39.28 + ], + [ + 47.09, + 39.26 + ], + [ + 47.08, + 39.26 + ], + [ + 47.07, + 39.25 + ], + [ + 47.06, + 39.25 + ], + [ + 46.98, + 39.15 + ], + [ + 46.97, + 39.15 + ], + [ + 46.93, + 39.16 + ], + [ + 46.85, + 39.14 + ], + [ + 46.84, + 39.13 + ], + [ + 46.82, + 39.11 + ], + [ + 46.8, + 39.09 + ], + [ + 46.76, + 39.05 + ], + [ + 46.76, + 39.04 + ], + [ + 46.71, + 39.01 + ], + [ + 46.69, + 39.01 + ], + [ + 46.67, + 38.98 + ], + [ + 46.61, + 38.92 + ], + [ + 46.6, + 38.91 + ], + [ + 46.54, + 38.87 + ], + [ + 46.53, + 38.87 + ], + [ + 46.43, + 39.19 + ], + [ + 46.63, + 39.23 + ], + [ + 46.39, + 39.43 + ], + [ + 46.58, + 39.55 + ], + [ + 46.24, + 39.6 + ], + [ + 46.22, + 39.6 + ], + [ + 45.6, + 39.99 + ], + [ + 45.84, + 39.99 + ], + [ + 45.98, + 40.21 + ], + [ + 45.44, + 40.52 + ], + [ + 45.38, + 40.71 + ], + [ + 45.57, + 40.88 + ], + [ + 45.56, + 40.88 + ], + [ + 45.23, + 41.02 + ], + [ + 45.23, + 41.03 + ], + [ + 45.13, + 41.08 + ], + [ + 45.13, + 41.07 + ], + [ + 45.01, + 41.3 + ] + ], + [ + [ + 46.76, + 40.98 + ], + [ + 46.54, + 41 + ], + [ + 47.12, + 40.78 + ], + [ + 46.76, + 40.98 + ] + ], + [ + [ + 47.58, + 40.04 + ], + [ + 47.64, + 39.92 + ], + [ + 47.74, + 40.01 + ], + [ + 47.58, + 40.04 + ] + ] + ] + ] + }, + "properties": { + "A3": "AZE" + } + }, + { + "type": "Feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + -68.86, + 12.08 + ], + [ + -69.16, + 12.39 + ], + [ + -68.74, + 12.04 + ], + [ + -68.86, + 12.08 + ] + ] + ] + }, + "properties": { + "A3": "CUW" + } + }, + { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + 20.26, + 46.13 + ], + [ + 20.48, + 46.16 + ], + [ + 20.5, + 46.19 + ], + [ + 20.5, + 46.18 + ], + [ + 20.5, + 46.19 + ], + [ + 20.52, + 46.18 + ], + [ + 20.54, + 46.18 + ], + [ + 20.55, + 46.18 + ], + [ + 20.59, + 46.16 + ], + [ + 20.59, + 46.15 + ], + [ + 20.62, + 46.13 + ], + [ + 20.65, + 46.13 + ], + [ + 20.65, + 46.15 + ], + [ + 20.66, + 46.15 + ], + [ + 20.68, + 46.15 + ], + [ + 21.2, + 46.36 + ], + [ + 21.26, + 46.41 + ], + [ + 21.27, + 46.41 + ], + [ + 21.3, + 46.56 + ], + [ + 21.44, + 46.65 + ], + [ + 21.45, + 46.65 + ], + [ + 21.45, + 46.67 + ], + [ + 21.44, + 46.67 + ], + [ + 21.79, + 47.11 + ], + [ + 21.86, + 47.25 + ], + [ + 22.02, + 47.52 + ], + [ + 22.03, + 47.53 + ], + [ + 22.32, + 47.77 + ], + [ + 22.71, + 47.82 + ], + [ + 22.71, + 47.83 + ], + [ + 22.9, + 47.95 + ], + [ + 22.93, + 47.96 + ], + [ + 23.17, + 48.12 + ], + [ + 23.53, + 48.02 + ], + [ + 23.55, + 48.01 + ], + [ + 23.57, + 48 + ], + [ + 23.58, + 48 + ], + [ + 23.62, + 48.01 + ], + [ + 23.62, + 48 + ], + [ + 23.68, + 47.99 + ], + [ + 23.69, + 47.99 + ], + [ + 23.73, + 47.99 + ], + [ + 23.76, + 47.99 + ], + [ + 23.83, + 47.96 + ], + [ + 23.84, + 47.96 + ], + [ + 23.84, + 47.95 + ], + [ + 23.86, + 47.93 + ], + [ + 23.88, + 47.94 + ], + [ + 23.89, + 47.94 + ], + [ + 23.93, + 47.95 + ], + [ + 23.95, + 47.96 + ], + [ + 23.96, + 47.96 + ], + [ + 23.97, + 47.96 + ], + [ + 24.02, + 47.96 + ], + [ + 24.1, + 47.93 + ], + [ + 24.12, + 47.92 + ], + [ + 24.13, + 47.92 + ], + [ + 24.15, + 47.91 + ], + [ + 24.15, + 47.92 + ], + [ + 24.58, + 47.97 + ], + [ + 25.04, + 47.73 + ], + [ + 25.31, + 47.91 + ], + [ + 26.18, + 47.99 + ], + [ + 26.34, + 48.18 + ], + [ + 26.35, + 48.18 + ], + [ + 26.37, + 48.2 + ], + [ + 26.46, + 48.21 + ], + [ + 26.52, + 48.21 + ], + [ + 26.6, + 48.24 + ], + [ + 26.61, + 48.24 + ], + [ + 26.63, + 48.25 + ], + [ + 26.63, + 48.26 + ], + [ + 26.65, + 48.25 + ], + [ + 26.66, + 48.26 + ], + [ + 26.79, + 48.25 + ], + [ + 26.8, + 48.25 + ], + [ + 26.81, + 48.25 + ], + [ + 26.83, + 48.24 + ], + [ + 26.83, + 48.23 + ], + [ + 26.84, + 48.23 + ], + [ + 26.89, + 48.19 + ], + [ + 26.91, + 48.18 + ], + [ + 26.92, + 48.18 + ], + [ + 26.91, + 48.2 + ], + [ + 26.92, + 48.2 + ], + [ + 26.94, + 48.18 + ], + [ + 26.94, + 48.17 + ], + [ + 26.93, + 48.17 + ], + [ + 26.96, + 48.16 + ], + [ + 26.95, + 48.14 + ], + [ + 27, + 48.12 + ], + [ + 27.01, + 48.13 + ], + [ + 27.02, + 48.14 + ], + [ + 27.03, + 48.14 + ], + [ + 27.03, + 48.13 + ], + [ + 27.03, + 48.12 + ], + [ + 27.04, + 48.12 + ], + [ + 27.03, + 48.09 + ], + [ + 27.05, + 48.07 + ], + [ + 27.11, + 48.03 + ], + [ + 27.09, + 48.01 + ], + [ + 27.11, + 48.01 + ], + [ + 27.12, + 48 + ], + [ + 27.13, + 47.99 + ], + [ + 27.16, + 47.98 + ], + [ + 27.15, + 47.96 + ], + [ + 27.18, + 47.95 + ], + [ + 27.16, + 47.92 + ], + [ + 27.15, + 47.92 + ], + [ + 27.16, + 47.92 + ], + [ + 27.18, + 47.91 + ], + [ + 27.22, + 47.83 + ], + [ + 27.24, + 47.81 + ], + [ + 27.24, + 47.8 + ], + [ + 27.25, + 47.8 + ], + [ + 27.27, + 47.77 + ], + [ + 27.29, + 47.72 + ], + [ + 27.27, + 47.73 + ], + [ + 27.27, + 47.71 + ], + [ + 27.29, + 47.68 + ], + [ + 27.29, + 47.67 + ], + [ + 27.29, + 47.66 + ], + [ + 27.31, + 47.65 + ], + [ + 27.38, + 47.6 + ], + [ + 27.38, + 47.59 + ], + [ + 27.4, + 47.59 + ], + [ + 27.43, + 47.58 + ], + [ + 27.42, + 47.58 + ], + [ + 27.42, + 47.56 + ], + [ + 27.44, + 47.55 + ], + [ + 27.44, + 47.54 + ], + [ + 27.45, + 47.53 + ], + [ + 27.46, + 47.5 + ], + [ + 27.47, + 47.5 + ], + [ + 27.48, + 47.49 + ], + [ + 27.49, + 47.49 + ], + [ + 27.51, + 47.49 + ], + [ + 27.51, + 47.48 + ], + [ + 27.52, + 47.47 + ], + [ + 27.53, + 47.48 + ], + [ + 27.53, + 47.49 + ], + [ + 27.55, + 47.47 + ], + [ + 27.56, + 47.47 + ], + [ + 27.58, + 47.42 + ], + [ + 27.57, + 47.41 + ], + [ + 27.58, + 47.4 + ], + [ + 27.57, + 47.4 + ], + [ + 27.57, + 47.38 + ], + [ + 27.57, + 47.37 + ], + [ + 27.59, + 47.37 + ], + [ + 27.6, + 47.37 + ], + [ + 27.6, + 47.33 + ], + [ + 27.59, + 47.33 + ], + [ + 27.6, + 47.32 + ], + [ + 27.61, + 47.32 + ], + [ + 27.62, + 47.32 + ], + [ + 27.63, + 47.32 + ], + [ + 27.64, + 47.3 + ], + [ + 27.66, + 47.3 + ], + [ + 27.66, + 47.31 + ], + [ + 27.68, + 47.3 + ], + [ + 27.68, + 47.29 + ], + [ + 27.71, + 47.29 + ], + [ + 27.7, + 47.3 + ], + [ + 27.72, + 47.3 + ], + [ + 27.73, + 47.29 + ], + [ + 27.75, + 47.28 + ], + [ + 27.76, + 47.25 + ], + [ + 27.75, + 47.25 + ], + [ + 27.77, + 47.22 + ], + [ + 27.78, + 47.22 + ], + [ + 27.78, + 47.21 + ], + [ + 27.78, + 47.2 + ], + [ + 27.78, + 47.21 + ], + [ + 27.79, + 47.19 + ], + [ + 27.8, + 47.19 + ], + [ + 27.8, + 47.15 + ], + [ + 27.79, + 47.14 + ], + [ + 27.84, + 47.13 + ], + [ + 27.84, + 47.11 + ], + [ + 27.86, + 47.1 + ], + [ + 27.88, + 47.1 + ], + [ + 27.95, + 47.05 + ], + [ + 27.99, + 47.04 + ], + [ + 28.01, + 47.03 + ], + [ + 28.04, + 47.03 + ], + [ + 28.04, + 47.02 + ], + [ + 28.04, + 47.01 + ], + [ + 28.09, + 46.97 + ], + [ + 28.08, + 46.96 + ], + [ + 28.09, + 46.94 + ], + [ + 28.08, + 46.94 + ], + [ + 28.09, + 46.93 + ], + [ + 28.09, + 46.91 + ], + [ + 28.08, + 46.91 + ], + [ + 28.09, + 46.9 + ], + [ + 28.11, + 46.89 + ], + [ + 28.12, + 46.88 + ], + [ + 28.11, + 46.88 + ], + [ + 28.1, + 46.87 + ], + [ + 28.13, + 46.85 + ], + [ + 28.12, + 46.85 + ], + [ + 28.11, + 46.85 + ], + [ + 28.1, + 46.85 + ], + [ + 28.11, + 46.84 + ], + [ + 28.13, + 46.82 + ], + [ + 28.13, + 46.81 + ], + [ + 28.14, + 46.8 + ], + [ + 28.15, + 46.8 + ], + [ + 28.16, + 46.78 + ], + [ + 28.17, + 46.78 + ], + [ + 28.18, + 46.76 + ], + [ + 28.17, + 46.75 + ], + [ + 28.19, + 46.72 + ], + [ + 28.21, + 46.71 + ], + [ + 28.21, + 46.7 + ], + [ + 28.23, + 46.68 + ], + [ + 28.24, + 46.68 + ], + [ + 28.25, + 46.62 + ], + [ + 28.24, + 46.59 + ], + [ + 28.23, + 46.59 + ], + [ + 28.23, + 46.56 + ], + [ + 28.23, + 46.53 + ], + [ + 28.21, + 46.5 + ], + [ + 28.22, + 46.5 + ], + [ + 28.23, + 46.49 + ], + [ + 28.23, + 46.48 + ], + [ + 28.26, + 46.44 + ], + [ + 28.26, + 46.42 + ], + [ + 28.25, + 46.42 + ], + [ + 28.23, + 46.41 + ], + [ + 28.23, + 46.4 + ], + [ + 28.24, + 46.39 + ], + [ + 28.23, + 46.39 + ], + [ + 28.22, + 46.39 + ], + [ + 28.19, + 46.35 + ], + [ + 28.2, + 46.35 + ], + [ + 28.19, + 46.33 + ], + [ + 28.17, + 46.29 + ], + [ + 28.17, + 46.28 + ], + [ + 28.15, + 46.29 + ], + [ + 28.14, + 46.29 + ], + [ + 28.13, + 46.26 + ], + [ + 28.14, + 46.26 + ], + [ + 28.15, + 46.25 + ], + [ + 28.13, + 46.24 + ], + [ + 28.12, + 46.24 + ], + [ + 28.11, + 46.23 + ], + [ + 28.13, + 46.21 + ], + [ + 28.13, + 46.2 + ], + [ + 28.12, + 46.2 + ], + [ + 28.12, + 46.19 + ], + [ + 28.13, + 46.19 + ], + [ + 28.14, + 46.18 + ], + [ + 28.13, + 46.19 + ], + [ + 28.1, + 46.16 + ], + [ + 28.12, + 46.15 + ], + [ + 28.13, + 46.14 + ], + [ + 28.13, + 46.13 + ], + [ + 28.13, + 46.12 + ], + [ + 28.12, + 46.11 + ], + [ + 28.1, + 46.05 + ], + [ + 28.1, + 46 + ], + [ + 28.1, + 45.98 + ], + [ + 28.11, + 45.97 + ], + [ + 28.11, + 45.96 + ], + [ + 28.12, + 45.94 + ], + [ + 28.13, + 45.92 + ], + [ + 28.12, + 45.92 + ], + [ + 28.12, + 45.91 + ], + [ + 28.12, + 45.9 + ], + [ + 28.12, + 45.89 + ], + [ + 28.11, + 45.86 + ], + [ + 28.11, + 45.84 + ], + [ + 28.11, + 45.82 + ], + [ + 28.11, + 45.81 + ], + [ + 28.12, + 45.81 + ], + [ + 28.12, + 45.79 + ], + [ + 28.15, + 45.77 + ], + [ + 28.16, + 45.74 + ], + [ + 28.17, + 45.74 + ], + [ + 28.17, + 45.72 + ], + [ + 28.16, + 45.72 + ], + [ + 28.16, + 45.71 + ], + [ + 28.17, + 45.68 + ], + [ + 28.17, + 45.67 + ], + [ + 28.17, + 45.65 + ], + [ + 28.1, + 45.59 + ], + [ + 28.12, + 45.58 + ], + [ + 28.13, + 45.57 + ], + [ + 28.14, + 45.57 + ], + [ + 28.15, + 45.56 + ], + [ + 28.15, + 45.57 + ], + [ + 28.17, + 45.54 + ], + [ + 28.16, + 45.54 + ], + [ + 28.16, + 45.51 + ], + [ + 28.19, + 45.48 + ], + [ + 28.21, + 45.47 + ], + [ + 28.22, + 45.47 + ], + [ + 28.23, + 45.46 + ], + [ + 28.24, + 45.46 + ], + [ + 28.26, + 45.46 + ], + [ + 28.27, + 45.45 + ], + [ + 28.29, + 45.44 + ], + [ + 28.29, + 45.42 + ], + [ + 28.29, + 45.39 + ], + [ + 28.31, + 45.37 + ], + [ + 28.32, + 45.36 + ], + [ + 28.32, + 45.35 + ], + [ + 28.33, + 45.34 + ], + [ + 28.35, + 45.32 + ], + [ + 28.38, + 45.31 + ], + [ + 28.4, + 45.3 + ], + [ + 28.41, + 45.3 + ], + [ + 28.51, + 45.27 + ], + [ + 28.52, + 45.27 + ], + [ + 28.55, + 45.25 + ], + [ + 28.56, + 45.25 + ], + [ + 28.58, + 45.25 + ], + [ + 28.6, + 45.25 + ], + [ + 28.71, + 45.22 + ], + [ + 28.72, + 45.22 + ], + [ + 28.72, + 45.23 + ], + [ + 28.73, + 45.23 + ], + [ + 28.76, + 45.22 + ], + [ + 28.75, + 45.23 + ], + [ + 28.78, + 45.24 + ], + [ + 28.79, + 45.24 + ], + [ + 28.79, + 45.26 + ], + [ + 28.78, + 45.26 + ], + [ + 28.76, + 45.27 + ], + [ + 28.75, + 45.28 + ], + [ + 28.77, + 45.29 + ], + [ + 28.8, + 45.3 + ], + [ + 28.8, + 45.31 + ], + [ + 28.79, + 45.32 + ], + [ + 28.78, + 45.32 + ], + [ + 28.82, + 45.33 + ], + [ + 28.83, + 45.33 + ], + [ + 28.84, + 45.32 + ], + [ + 28.86, + 45.32 + ], + [ + 28.88, + 45.31 + ], + [ + 28.89, + 45.3 + ], + [ + 28.91, + 45.29 + ], + [ + 28.92, + 45.29 + ], + [ + 28.93, + 45.28 + ], + [ + 28.94, + 45.28 + ], + [ + 28.95, + 45.29 + ], + [ + 28.95, + 45.3 + ], + [ + 28.95, + 45.31 + ], + [ + 28.97, + 45.33 + ], + [ + 29, + 45.34 + ], + [ + 29.02, + 45.35 + ], + [ + 29.03, + 45.35 + ], + [ + 29.07, + 45.36 + ], + [ + 29.07, + 45.37 + ], + [ + 29.11, + 45.38 + ], + [ + 29.12, + 45.38 + ], + [ + 29.14, + 45.38 + ], + [ + 29.15, + 45.39 + ], + [ + 29.17, + 45.39 + ], + [ + 29.18, + 45.4 + ], + [ + 29.19, + 45.41 + ], + [ + 29.21, + 45.42 + ], + [ + 29.23, + 45.43 + ], + [ + 29.24, + 45.43 + ], + [ + 29.25, + 45.43 + ], + [ + 29.3, + 45.43 + ], + [ + 29.31, + 45.44 + ], + [ + 29.32, + 45.45 + ], + [ + 29.35, + 45.44 + ], + [ + 29.36, + 45.44 + ], + [ + 29.37, + 45.44 + ], + [ + 29.39, + 45.44 + ], + [ + 29.41, + 45.44 + ], + [ + 29.43, + 45.44 + ], + [ + 29.46, + 45.43 + ], + [ + 29.47, + 45.42 + ], + [ + 29.5, + 45.42 + ], + [ + 29.51, + 45.42 + ], + [ + 29.52, + 45.41 + ], + [ + 29.53, + 45.41 + ], + [ + 29.54, + 45.41 + ], + [ + 29.55, + 45.41 + ], + [ + 29.57, + 45.4 + ], + [ + 29.58, + 45.4 + ], + [ + 29.58, + 45.39 + ], + [ + 29.61, + 45.37 + ], + [ + 29.63, + 45.36 + ], + [ + 29.63, + 45.35 + ], + [ + 29.65, + 45.34 + ], + [ + 29.66, + 45.33 + ], + [ + 29.67, + 45.31 + ], + [ + 29.67, + 45.3 + ], + [ + 29.68, + 45.28 + ], + [ + 29.68, + 45.27 + ], + [ + 29.69, + 45.2 + ], + [ + 29.59, + 44.83 + ], + [ + 29.14, + 44.77 + ], + [ + 29.09, + 45.02 + ], + [ + 28.85, + 44.93 + ], + [ + 28.95, + 44.78 + ], + [ + 28.72, + 44.72 + ], + [ + 28.85, + 44.65 + ], + [ + 28.74, + 44.48 + ], + [ + 28.9, + 44.57 + ], + [ + 28.56, + 44.26 + ], + [ + 28.71, + 44.11 + ], + [ + 28.58, + 43.74 + ], + [ + 27.28, + 44.12 + ], + [ + 27.26, + 44.12 + ], + [ + 27.18, + 44.12 + ], + [ + 27.15, + 44.13 + ], + [ + 27.09, + 44.14 + ], + [ + 27.08, + 44.15 + ], + [ + 27.03, + 44.14 + ], + [ + 27.01, + 44.14 + ], + [ + 26.96, + 44.14 + ], + [ + 26.95, + 44.14 + ], + [ + 26.94, + 44.14 + ], + [ + 26.93, + 44.14 + ], + [ + 26.91, + 44.14 + ], + [ + 26.91, + 44.13 + ], + [ + 26.89, + 44.13 + ], + [ + 26.86, + 44.12 + ], + [ + 26.85, + 44.11 + ], + [ + 26.82, + 44.1 + ], + [ + 26.81, + 44.1 + ], + [ + 26.76, + 44.08 + ], + [ + 26.75, + 44.08 + ], + [ + 26.65, + 44.06 + ], + [ + 26.51, + 44.05 + ], + [ + 26.5, + 44.05 + ], + [ + 26.39, + 44.04 + ], + [ + 26.38, + 44.04 + ], + [ + 26.24, + 44 + ], + [ + 26.22, + 43.99 + ], + [ + 26.17, + 43.99 + ], + [ + 26.14, + 43.98 + ], + [ + 26.11, + 43.97 + ], + [ + 26.09, + 43.95 + ], + [ + 26.08, + 43.93 + ], + [ + 26.07, + 43.92 + ], + [ + 26.06, + 43.91 + ], + [ + 26.05, + 43.91 + ], + [ + 26.03, + 43.89 + ], + [ + 26.01, + 43.89 + ], + [ + 25.98, + 43.87 + ], + [ + 25.97, + 43.87 + ], + [ + 25.96, + 43.86 + ], + [ + 25.95, + 43.86 + ], + [ + 25.94, + 43.85 + ], + [ + 25.93, + 43.84 + ], + [ + 25.92, + 43.83 + ], + [ + 25.91, + 43.82 + ], + [ + 25.91, + 43.81 + ], + [ + 25.9, + 43.8 + ], + [ + 25.88, + 43.79 + ], + [ + 25.88, + 43.78 + ], + [ + 25.84, + 43.76 + ], + [ + 25.82, + 43.75 + ], + [ + 25.8, + 43.74 + ], + [ + 25.78, + 43.71 + ], + [ + 25.77, + 43.71 + ], + [ + 25.75, + 43.7 + ], + [ + 25.74, + 43.7 + ], + [ + 25.66, + 43.7 + ], + [ + 25.64, + 43.68 + ], + [ + 25.63, + 43.68 + ], + [ + 25.62, + 43.67 + ], + [ + 25.61, + 43.67 + ], + [ + 25.58, + 43.65 + ], + [ + 25.57, + 43.65 + ], + [ + 25.48, + 43.64 + ], + [ + 25.47, + 43.64 + ], + [ + 25.41, + 43.62 + ], + [ + 25.39, + 43.62 + ], + [ + 25.38, + 43.62 + ], + [ + 25.36, + 43.62 + ], + [ + 25.33, + 43.64 + ], + [ + 25.32, + 43.64 + ], + [ + 25.31, + 43.65 + ], + [ + 25.3, + 43.65 + ], + [ + 25.28, + 43.66 + ], + [ + 25.26, + 43.68 + ], + [ + 25.25, + 43.68 + ], + [ + 25.16, + 43.7 + ], + [ + 25.15, + 43.69 + ], + [ + 25.1, + 43.68 + ], + [ + 25.09, + 43.69 + ], + [ + 25.05, + 43.7 + ], + [ + 25.04, + 43.7 + ], + [ + 25.01, + 43.72 + ], + [ + 24.97, + 43.73 + ], + [ + 24.91, + 43.71 + ], + [ + 24.9, + 43.71 + ], + [ + 24.89, + 43.71 + ], + [ + 24.79, + 43.7 + ], + [ + 24.78, + 43.7 + ], + [ + 24.7, + 43.7 + ], + [ + 24.68, + 43.71 + ], + [ + 24.64, + 43.73 + ], + [ + 24.63, + 43.74 + ], + [ + 24.61, + 43.75 + ], + [ + 24.6, + 43.75 + ], + [ + 24.46, + 43.75 + ], + [ + 24.43, + 43.74 + ], + [ + 24.42, + 43.74 + ], + [ + 24.41, + 43.74 + ], + [ + 24.4, + 43.73 + ], + [ + 24.39, + 43.72 + ], + [ + 24.38, + 43.71 + ], + [ + 24.35, + 43.7 + ], + [ + 24.34, + 43.7 + ], + [ + 24.32, + 43.7 + ], + [ + 24.31, + 43.7 + ], + [ + 24.2, + 43.68 + ], + [ + 24.18, + 43.68 + ], + [ + 24.17, + 43.68 + ], + [ + 24.16, + 43.69 + ], + [ + 24.12, + 43.7 + ], + [ + 24.09, + 43.7 + ], + [ + 24.06, + 43.72 + ], + [ + 24.05, + 43.72 + ], + [ + 24.02, + 43.73 + ], + [ + 24.01, + 43.73 + ], + [ + 23.94, + 43.75 + ], + [ + 23.92, + 43.75 + ], + [ + 23.84, + 43.76 + ], + [ + 23.83, + 43.77 + ], + [ + 23.8, + 43.78 + ], + [ + 23.8, + 43.79 + ], + [ + 23.78, + 43.8 + ], + [ + 23.65, + 43.8 + ], + [ + 23.63, + 43.79 + ], + [ + 23.61, + 43.79 + ], + [ + 23.59, + 43.8 + ], + [ + 23.57, + 43.81 + ], + [ + 23.54, + 43.82 + ], + [ + 23.53, + 43.83 + ], + [ + 23.51, + 43.84 + ], + [ + 23.47, + 43.84 + ], + [ + 23.45, + 43.85 + ], + [ + 23.26, + 43.84 + ], + [ + 23.25, + 43.84 + ], + [ + 23.2, + 43.83 + ], + [ + 23.19, + 43.83 + ], + [ + 23.18, + 43.82 + ], + [ + 23.17, + 43.82 + ], + [ + 23.14, + 43.81 + ], + [ + 22.91, + 43.83 + ], + [ + 22.89, + 43.83 + ], + [ + 22.87, + 43.83 + ], + [ + 22.86, + 43.84 + ], + [ + 22.84, + 43.89 + ], + [ + 22.85, + 43.9 + ], + [ + 22.86, + 43.92 + ], + [ + 22.87, + 43.93 + ], + [ + 22.87, + 43.95 + ], + [ + 22.87, + 43.96 + ], + [ + 22.88, + 43.98 + ], + [ + 22.92, + 44 + ], + [ + 22.93, + 44 + ], + [ + 22.99, + 44.01 + ], + [ + 23.01, + 44.01 + ], + [ + 23.02, + 44.02 + ], + [ + 23.03, + 44.03 + ], + [ + 23.03, + 44.04 + ], + [ + 23.04, + 44.05 + ], + [ + 23.03, + 44.08 + ], + [ + 23.02, + 44.09 + ], + [ + 23.01, + 44.09 + ], + [ + 22.99, + 44.1 + ], + [ + 22.88, + 44.13 + ], + [ + 22.87, + 44.13 + ], + [ + 22.85, + 44.14 + ], + [ + 22.84, + 44.14 + ], + [ + 22.81, + 44.16 + ], + [ + 22.8, + 44.16 + ], + [ + 22.78, + 44.17 + ], + [ + 22.77, + 44.18 + ], + [ + 22.76, + 44.19 + ], + [ + 22.75, + 44.2 + ], + [ + 22.7, + 44.2 + ], + [ + 22.68, + 44.21 + ], + [ + 22.67, + 44.23 + ], + [ + 22.68, + 44.24 + ], + [ + 22.68, + 44.28 + ], + [ + 22.66, + 44.29 + ], + [ + 22.59, + 44.3 + ], + [ + 22.58, + 44.3 + ], + [ + 22.56, + 44.31 + ], + [ + 22.55, + 44.32 + ], + [ + 22.53, + 44.34 + ], + [ + 22.52, + 44.35 + ], + [ + 22.51, + 44.37 + ], + [ + 22.5, + 44.4 + ], + [ + 22.49, + 44.43 + ], + [ + 22.47, + 44.45 + ], + [ + 22.46, + 44.46 + ], + [ + 22.47, + 44.48 + ], + [ + 22.48, + 44.48 + ], + [ + 22.5, + 44.48 + ], + [ + 22.56, + 44.5 + ], + [ + 22.57, + 44.54 + ], + [ + 22.59, + 44.55 + ], + [ + 22.6, + 44.55 + ], + [ + 22.64, + 44.54 + ], + [ + 22.65, + 44.54 + ], + [ + 22.71, + 44.52 + ], + [ + 22.72, + 44.52 + ], + [ + 22.73, + 44.53 + ], + [ + 22.75, + 44.54 + ], + [ + 22.75, + 44.57 + ], + [ + 22.73, + 44.58 + ], + [ + 22.72, + 44.59 + ], + [ + 22.71, + 44.6 + ], + [ + 22.7, + 44.6 + ], + [ + 22.69, + 44.61 + ], + [ + 22.59, + 44.63 + ], + [ + 22.58, + 44.64 + ], + [ + 22.56, + 44.65 + ], + [ + 22.54, + 44.66 + ], + [ + 22.53, + 44.67 + ], + [ + 22.52, + 44.68 + ], + [ + 22.51, + 44.68 + ], + [ + 22.49, + 44.7 + ], + [ + 22.41, + 44.7 + ], + [ + 22.4, + 44.69 + ], + [ + 22.31, + 44.66 + ], + [ + 22.3, + 44.65 + ], + [ + 22.29, + 44.63 + ], + [ + 22.28, + 44.63 + ], + [ + 22.28, + 44.62 + ], + [ + 22.27, + 44.61 + ], + [ + 22.26, + 44.6 + ], + [ + 22.26, + 44.59 + ], + [ + 22.25, + 44.58 + ], + [ + 22.19, + 44.51 + ], + [ + 22.18, + 44.48 + ], + [ + 22.17, + 44.48 + ], + [ + 22.07, + 44.53 + ], + [ + 22.03, + 44.56 + ], + [ + 22.03, + 44.57 + ], + [ + 22.03, + 44.58 + ], + [ + 22.02, + 44.6 + ], + [ + 22, + 44.62 + ], + [ + 21.92, + 44.64 + ], + [ + 21.91, + 44.65 + ], + [ + 21.78, + 44.66 + ], + [ + 21.77, + 44.66 + ], + [ + 21.75, + 44.66 + ], + [ + 21.74, + 44.66 + ], + [ + 21.72, + 44.65 + ], + [ + 21.7, + 44.66 + ], + [ + 21.61, + 44.7 + ], + [ + 21.61, + 44.72 + ], + [ + 21.61, + 44.73 + ], + [ + 21.59, + 44.76 + ], + [ + 21.58, + 44.76 + ], + [ + 21.56, + 44.77 + ], + [ + 21.55, + 44.77 + ], + [ + 21.39, + 44.79 + ], + [ + 21.36, + 44.83 + ], + [ + 21.36, + 44.84 + ], + [ + 21.36, + 44.86 + ], + [ + 21.56, + 44.9 + ], + [ + 21.36, + 45.02 + ], + [ + 21.51, + 45.17 + ], + [ + 21.02, + 45.32 + ], + [ + 20.79, + 45.59 + ], + [ + 20.82, + 45.77 + ], + [ + 20.26, + 46.13 + ] + ] + ], + [ + [ + [ + 28.11, + 45.82 + ], + [ + 28.12, + 45.81 + ], + [ + 28.11, + 45.81 + ], + [ + 28.11, + 45.82 + ] + ] + ], + [ + [ + [ + 28.13, + 45.57 + ], + [ + 28.14, + 45.58 + ], + [ + 28.14, + 45.57 + ], + [ + 28.13, + 45.57 + ] + ] + ], + [ + [ + [ + 23.15, + 43.81 + ], + [ + 23.14, + 43.8 + ], + [ + 23.14, + 43.81 + ], + [ + 23.15, + 43.81 + ] + ] + ], + [ + [ + [ + 22.21, + 44.52 + ], + [ + 22.2, + 44.51 + ], + [ + 22.19, + 44.51 + ], + [ + 22.21, + 44.52 + ] + ] + ] + ] + }, + "properties": { + "A3": "ROU" + } + }, + { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + 70.94, + 42.26 + ], + [ + 71.26, + 42.17 + ], + [ + 70.87, + 42.05 + ], + [ + 70.17, + 41.52 + ], + [ + 70.72, + 41.47 + ], + [ + 70.79, + 41.19 + ], + [ + 71.27, + 41.11 + ], + [ + 71.28, + 41.11 + ], + [ + 71.59, + 41.31 + ], + [ + 71.73, + 41.55 + ], + [ + 71.9, + 41.16 + ], + [ + 72.82, + 40.85 + ], + [ + 72.83, + 40.86 + ], + [ + 72.86, + 40.85 + ], + [ + 72.87, + 40.84 + ], + [ + 72.89, + 40.83 + ], + [ + 72.94, + 40.8 + ], + [ + 72.95, + 40.8 + ], + [ + 72.96, + 40.81 + ], + [ + 73.14, + 40.8 + ], + [ + 73.07, + 40.77 + ], + [ + 72.66, + 40.51 + ], + [ + 72.35, + 40.6 + ], + [ + 72.42, + 40.4 + ], + [ + 72.09, + 40.45 + ], + [ + 72.09, + 40.44 + ], + [ + 72.05, + 40.28 + ], + [ + 71.73, + 40.15 + ], + [ + 71.27, + 40.34 + ], + [ + 70.98, + 40.23 + ], + [ + 70.63, + 40.18 + ], + [ + 70.34, + 40.43 + ], + [ + 70.34, + 40.44 + ], + [ + 70.33, + 40.46 + ], + [ + 70.34, + 40.46 + ], + [ + 70.36, + 40.47 + ], + [ + 70.39, + 40.48 + ], + [ + 70.42, + 40.49 + ], + [ + 70.43, + 40.49 + ], + [ + 70.46, + 40.5 + ], + [ + 70.5, + 40.51 + ], + [ + 70.51, + 40.54 + ], + [ + 70.53, + 40.56 + ], + [ + 70.57, + 40.56 + ], + [ + 70.58, + 40.56 + ], + [ + 70.59, + 40.57 + ], + [ + 70.61, + 40.59 + ], + [ + 70.63, + 40.61 + ], + [ + 70.64, + 40.63 + ], + [ + 70.65, + 40.63 + ], + [ + 70.68, + 40.65 + ], + [ + 70.7, + 40.66 + ], + [ + 70.71, + 40.66 + ], + [ + 70.72, + 40.66 + ], + [ + 70.74, + 40.66 + ], + [ + 70.74, + 40.67 + ], + [ + 70.73, + 40.68 + ], + [ + 70.73, + 40.69 + ], + [ + 70.77, + 40.69 + ], + [ + 70.77, + 40.7 + ], + [ + 70.77, + 40.71 + ], + [ + 70.78, + 40.72 + ], + [ + 70.8, + 40.72 + ], + [ + 70.44, + 41.05 + ], + [ + 69.72, + 40.63 + ], + [ + 69.44, + 40.79 + ], + [ + 69.43, + 40.79 + ], + [ + 69.42, + 40.79 + ], + [ + 69.39, + 40.79 + ], + [ + 69.25, + 40.29 + ], + [ + 69.25, + 40.28 + ], + [ + 69.3, + 40.2 + ], + [ + 69.28, + 40.2 + ], + [ + 69.22, + 40.21 + ], + [ + 69.21, + 40.21 + ], + [ + 69.2, + 40.22 + ], + [ + 69.19, + 40.21 + ], + [ + 69.17, + 40.21 + ], + [ + 68.86, + 40.21 + ], + [ + 68.53, + 40.14 + ], + [ + 69.03, + 40.13 + ], + [ + 68.85, + 40.05 + ], + [ + 68.89, + 39.87 + ], + [ + 68.82, + 39.99 + ], + [ + 68.77, + 39.83 + ], + [ + 68.63, + 39.85 + ], + [ + 68.55, + 39.54 + ], + [ + 67.71, + 39.66 + ], + [ + 67.42, + 39.54 + ], + [ + 67.41, + 39.53 + ], + [ + 67.47, + 39.32 + ], + [ + 67.33, + 39.24 + ], + [ + 67.68, + 39.15 + ], + [ + 67.7, + 39 + ], + [ + 68.2, + 38.94 + ], + [ + 68.06, + 38.39 + ], + [ + 68.4, + 38.2 + ], + [ + 68.28, + 37.91 + ], + [ + 67.86, + 37.64 + ], + [ + 67.79, + 37.19 + ], + [ + 67.77, + 37.19 + ], + [ + 67.76, + 37.2 + ], + [ + 67.58, + 37.23 + ], + [ + 67.58, + 37.22 + ], + [ + 67.55, + 37.23 + ], + [ + 67.54, + 37.24 + ], + [ + 67.54, + 37.25 + ], + [ + 67.53, + 37.26 + ], + [ + 67.49, + 37.28 + ], + [ + 67.47, + 37.25 + ], + [ + 67.45, + 37.24 + ], + [ + 67.42, + 37.23 + ], + [ + 67.4, + 37.22 + ], + [ + 67.35, + 37.21 + ], + [ + 67.28, + 37.19 + ], + [ + 67.27, + 37.18 + ], + [ + 67.26, + 37.18 + ], + [ + 67.23, + 37.23 + ], + [ + 67.23, + 37.24 + ], + [ + 67.2, + 37.26 + ], + [ + 67.19, + 37.26 + ], + [ + 67.17, + 37.26 + ], + [ + 67.13, + 37.27 + ], + [ + 67.12, + 37.28 + ], + [ + 67.11, + 37.29 + ], + [ + 67.11, + 37.3 + ], + [ + 67.11, + 37.32 + ], + [ + 67.11, + 37.33 + ], + [ + 67.16, + 37.34 + ], + [ + 67.09, + 37.34 + ], + [ + 67.01, + 37.37 + ], + [ + 67, + 37.38 + ], + [ + 66.98, + 37.39 + ], + [ + 66.97, + 37.39 + ], + [ + 66.92, + 37.39 + ], + [ + 66.9, + 37.37 + ], + [ + 66.55, + 37.36 + ], + [ + 66.62, + 38.01 + ], + [ + 65.54, + 38.29 + ], + [ + 64, + 39.06 + ], + [ + 62.46, + 39.97 + ], + [ + 62.37, + 40.34 + ], + [ + 62.35, + 40.36 + ], + [ + 62.08, + 40.68 + ], + [ + 62.07, + 40.68 + ], + [ + 62.06, + 40.69 + ], + [ + 62.05, + 40.7 + ], + [ + 62.05, + 40.71 + ], + [ + 62.04, + 40.72 + ], + [ + 62.04, + 40.73 + ], + [ + 62.04, + 40.75 + ], + [ + 62.04, + 40.76 + ], + [ + 61.98, + 41.01 + ], + [ + 61.97, + 41.01 + ], + [ + 61.96, + 41.03 + ], + [ + 61.94, + 41.04 + ], + [ + 61.93, + 41.05 + ], + [ + 61.9, + 41.05 + ], + [ + 61.9, + 41.06 + ], + [ + 61.89, + 41.09 + ], + [ + 61.88, + 41.11 + ], + [ + 61.87, + 41.12 + ], + [ + 61.8, + 41.16 + ], + [ + 61.77, + 41.24 + ], + [ + 61.41, + 41.32 + ], + [ + 61.41, + 41.26 + ], + [ + 61.4, + 41.26 + ], + [ + 61.4, + 41.21 + ], + [ + 61.24, + 41.15 + ], + [ + 61.03, + 41.27 + ], + [ + 60.51, + 41.22 + ], + [ + 60.48, + 41.22 + ], + [ + 60.08, + 41.43 + ], + [ + 60.08, + 41.8 + ], + [ + 60.33, + 41.77 + ], + [ + 59.97, + 41.94 + ], + [ + 60.02, + 42.21 + ], + [ + 59.81, + 42.28 + ], + [ + 59.55, + 42.29 + ], + [ + 58.63, + 42.8 + ], + [ + 58.58, + 42.65 + ], + [ + 58.33, + 42.68 + ], + [ + 58.31, + 42.68 + ], + [ + 58.23, + 42.66 + ], + [ + 58.18, + 42.63 + ], + [ + 58.16, + 42.62 + ], + [ + 58.18, + 42.6 + ], + [ + 58.51, + 42.29 + ], + [ + 58.03, + 42.5 + ], + [ + 57.85, + 42.17 + ], + [ + 57.63, + 42.16 + ], + [ + 57.44, + 42.36 + ], + [ + 57.26, + 42.34 + ], + [ + 57.05, + 41.92 + ], + [ + 56.97, + 41.67 + ], + [ + 57.16, + 41.37 + ], + [ + 57.04, + 41.26 + ], + [ + 56, + 41.32 + ], + [ + 56, + 45 + ], + [ + 58.61, + 45.58 + ], + [ + 58.21, + 44.87 + ], + [ + 58.27, + 44.41 + ], + [ + 58.49, + 44.48 + ], + [ + 58.75, + 45.51 + ], + [ + 61.11, + 44.36 + ], + [ + 62, + 43.51 + ], + [ + 63.35, + 43.65 + ], + [ + 64.53, + 43.57 + ], + [ + 65, + 43.72 + ], + [ + 65.84, + 42.86 + ], + [ + 66.1, + 42.94 + ], + [ + 66, + 41.94 + ], + [ + 66.53, + 41.88 + ], + [ + 66.71, + 41.14 + ], + [ + 67.97, + 41.13 + ], + [ + 67.98, + 41.11 + ], + [ + 67.99, + 41.09 + ], + [ + 67.99, + 41.08 + ], + [ + 67.99, + 41.07 + ], + [ + 67.99, + 41.04 + ], + [ + 68.03, + 41.03 + ], + [ + 68.05, + 41.04 + ], + [ + 67.97, + 40.85 + ], + [ + 67.98, + 40.84 + ], + [ + 68.54, + 40.58 + ], + [ + 68.58, + 40.57 + ], + [ + 68.52, + 41.01 + ], + [ + 68.53, + 41.01 + ], + [ + 68.55, + 41.01 + ], + [ + 68.57, + 41.01 + ], + [ + 68.6, + 41.03 + ], + [ + 68.64, + 41 + ], + [ + 68.66, + 41 + ], + [ + 68.66, + 40.99 + ], + [ + 68.66, + 40.98 + ], + [ + 68.64, + 40.97 + ], + [ + 68.64, + 40.95 + ], + [ + 68.68, + 40.96 + ], + [ + 68.73, + 40.97 + ], + [ + 68.74, + 40.98 + ], + [ + 68.75, + 40.98 + ], + [ + 68.75, + 40.99 + ], + [ + 68.76, + 41 + ], + [ + 68.75, + 41.01 + ], + [ + 68.76, + 41.08 + ], + [ + 69.15, + 41.43 + ], + [ + 69.21, + 41.46 + ], + [ + 69.23, + 41.46 + ], + [ + 69.24, + 41.46 + ], + [ + 70.05, + 41.78 + ], + [ + 70.37, + 42.07 + ], + [ + 70.64, + 42.02 + ], + [ + 70.94, + 42.26 + ] + ], + [ + [ + 65.92, + 41 + ], + [ + 65.96, + 40.96 + ], + [ + 67.07, + 40.72 + ], + [ + 67.63, + 40.81 + ], + [ + 66.88, + 41 + ], + [ + 66.17, + 41.1 + ], + [ + 65.92, + 41 + ] + ], + [ + [ + 64.82, + 39.92 + ], + [ + 64.72, + 39.81 + ], + [ + 64.95, + 39.8 + ], + [ + 64.82, + 39.92 + ] + ], + [ + [ + 64.03, + 39.24 + ], + [ + 63.96, + 39.14 + ], + [ + 64.41, + 38.99 + ], + [ + 64.03, + 39.24 + ] + ], + [ + [ + 59.69, + 43.64 + ], + [ + 59.71, + 43.52 + ], + [ + 59.92, + 43.52 + ], + [ + 59.69, + 43.64 + ] + ] + ], + [ + [ + [ + 71.01, + 40.17 + ], + [ + 71.19, + 39.9 + ], + [ + 71.05, + 39.9 + ], + [ + 71.01, + 40.17 + ] + ] + ] + ] + }, + "properties": { + "A3": "UZB" + } + }, + { + "type": "Feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + 10.45, + 47.56 + ], + [ + 10.67, + 47.56 + ], + [ + 10.68, + 47.56 + ], + [ + 10.98, + 47.4 + ], + [ + 11.25, + 47.43 + ], + [ + 11.63, + 47.59 + ], + [ + 11.89, + 47.61 + ], + [ + 12.18, + 47.61 + ], + [ + 12.18, + 47.6 + ], + [ + 12.19, + 47.61 + ], + [ + 12.2, + 47.61 + ], + [ + 12.2, + 47.64 + ], + [ + 12.19, + 47.65 + ], + [ + 12.18, + 47.67 + ], + [ + 12.17, + 47.68 + ], + [ + 12.77, + 47.67 + ], + [ + 13.01, + 47.46 + ], + [ + 12.94, + 47.78 + ], + [ + 12.99, + 47.83 + ], + [ + 12.99, + 47.84 + ], + [ + 13, + 47.84 + ], + [ + 13, + 47.85 + ], + [ + 13, + 47.86 + ], + [ + 12.99, + 47.87 + ], + [ + 12.98, + 47.87 + ], + [ + 12.97, + 47.9 + ], + [ + 12.96, + 47.91 + ], + [ + 12.93, + 47.94 + ], + [ + 12.92, + 47.95 + ], + [ + 12.9, + 47.96 + ], + [ + 12.88, + 47.96 + ], + [ + 12.87, + 47.96 + ], + [ + 12.86, + 48 + ], + [ + 12.86, + 48.01 + ], + [ + 12.75, + 48.09 + ], + [ + 12.75, + 48.11 + ], + [ + 12.81, + 48.15 + ], + [ + 12.83, + 48.16 + ], + [ + 12.84, + 48.17 + ], + [ + 12.85, + 48.18 + ], + [ + 12.86, + 48.18 + ], + [ + 12.92, + 48.21 + ], + [ + 12.94, + 48.21 + ], + [ + 12.95, + 48.21 + ], + [ + 12.96, + 48.21 + ], + [ + 12.97, + 48.22 + ], + [ + 13, + 48.24 + ], + [ + 13.01, + 48.25 + ], + [ + 13.02, + 48.25 + ], + [ + 13.05, + 48.26 + ], + [ + 13.06, + 48.27 + ], + [ + 13.08, + 48.28 + ], + [ + 13.1, + 48.28 + ], + [ + 13.12, + 48.28 + ], + [ + 13.15, + 48.29 + ], + [ + 13.18, + 48.29 + ], + [ + 13.19, + 48.3 + ], + [ + 13.23, + 48.29 + ], + [ + 13.26, + 48.29 + ], + [ + 13.28, + 48.3 + ], + [ + 13.29, + 48.31 + ], + [ + 13.31, + 48.31 + ], + [ + 13.32, + 48.32 + ], + [ + 13.33, + 48.33 + ], + [ + 13.34, + 48.33 + ], + [ + 13.35, + 48.34 + ], + [ + 13.36, + 48.35 + ], + [ + 13.38, + 48.36 + ], + [ + 13.39, + 48.36 + ], + [ + 13.4, + 48.37 + ], + [ + 13.41, + 48.37 + ], + [ + 13.42, + 48.39 + ], + [ + 13.42, + 48.4 + ], + [ + 13.42, + 48.41 + ], + [ + 13.43, + 48.42 + ], + [ + 13.44, + 48.43 + ], + [ + 13.43, + 48.44 + ], + [ + 13.43, + 48.45 + ], + [ + 13.43, + 48.47 + ], + [ + 13.44, + 48.47 + ], + [ + 13.44, + 48.48 + ], + [ + 13.44, + 48.49 + ], + [ + 13.45, + 48.5 + ], + [ + 13.46, + 48.51 + ], + [ + 13.45, + 48.52 + ], + [ + 13.45, + 48.53 + ], + [ + 13.44, + 48.55 + ], + [ + 13.44, + 48.56 + ], + [ + 13.45, + 48.56 + ], + [ + 13.48, + 48.56 + ], + [ + 13.5, + 48.58 + ], + [ + 13.51, + 48.59 + ], + [ + 13.53, + 48.58 + ], + [ + 13.54, + 48.58 + ], + [ + 13.55, + 48.57 + ], + [ + 13.56, + 48.57 + ], + [ + 13.57, + 48.56 + ], + [ + 13.6, + 48.57 + ], + [ + 13.61, + 48.56 + ], + [ + 13.62, + 48.55 + ], + [ + 13.65, + 48.55 + ], + [ + 13.66, + 48.54 + ], + [ + 13.67, + 48.53 + ], + [ + 13.68, + 48.53 + ], + [ + 13.69, + 48.53 + ], + [ + 13.7, + 48.52 + ], + [ + 13.72, + 48.51 + ], + [ + 13.84, + 48.77 + ], + [ + 14.07, + 48.59 + ], + [ + 14.6, + 48.63 + ], + [ + 14.81, + 48.77 + ], + [ + 14.81, + 48.78 + ], + [ + 14.96, + 48.76 + ], + [ + 14.97, + 48.76 + ], + [ + 14.97, + 48.83 + ], + [ + 14.97, + 48.84 + ], + [ + 14.98, + 48.92 + ], + [ + 14.99, + 48.93 + ], + [ + 14.99, + 48.94 + ], + [ + 14.99, + 49.01 + ], + [ + 15.15, + 48.98 + ], + [ + 15.16, + 48.98 + ], + [ + 15.24, + 48.96 + ], + [ + 15.33, + 48.98 + ], + [ + 15.34, + 48.98 + ], + [ + 15.84, + 48.88 + ], + [ + 15.84, + 48.87 + ], + [ + 15.85, + 48.87 + ], + [ + 15.85, + 48.86 + ], + [ + 15.84, + 48.86 + ], + [ + 15.88, + 48.85 + ], + [ + 15.89, + 48.84 + ], + [ + 15.91, + 48.84 + ], + [ + 15.93, + 48.82 + ], + [ + 16.44, + 48.78 + ], + [ + 16.46, + 48.81 + ], + [ + 16.61, + 48.78 + ], + [ + 16.62, + 48.78 + ], + [ + 16.64, + 48.79 + ], + [ + 16.66, + 48.78 + ], + [ + 16.67, + 48.78 + ], + [ + 16.88, + 48.72 + ], + [ + 16.91, + 48.71 + ], + [ + 16.92, + 48.66 + ], + [ + 16.92, + 48.65 + ], + [ + 16.94, + 48.62 + ], + [ + 16.94, + 48.61 + ], + [ + 16.94, + 48.6 + ], + [ + 16.94, + 48.59 + ], + [ + 16.95, + 48.53 + ], + [ + 16.94, + 48.53 + ], + [ + 16.92, + 48.52 + ], + [ + 16.92, + 48.51 + ], + [ + 16.91, + 48.5 + ], + [ + 16.89, + 48.49 + ], + [ + 16.9, + 48.49 + ], + [ + 16.88, + 48.47 + ], + [ + 16.85, + 48.43 + ], + [ + 16.86, + 48.43 + ], + [ + 16.86, + 48.41 + ], + [ + 16.85, + 48.41 + ], + [ + 16.85, + 48.4 + ], + [ + 16.86, + 48.4 + ], + [ + 16.84, + 48.38 + ], + [ + 16.83, + 48.38 + ], + [ + 16.87, + 48.35 + ], + [ + 16.87, + 48.34 + ], + [ + 16.88, + 48.34 + ], + [ + 16.9, + 48.33 + ], + [ + 16.9, + 48.31 + ], + [ + 16.89, + 48.31 + ], + [ + 16.9, + 48.3 + ], + [ + 16.94, + 48.27 + ], + [ + 16.95, + 48.24 + ], + [ + 16.96, + 48.21 + ], + [ + 16.98, + 48.17 + ], + [ + 16.99, + 48.16 + ], + [ + 17.03, + 48.14 + ], + [ + 17.04, + 48.14 + ], + [ + 17.06, + 48.14 + ], + [ + 17.16, + 48.01 + ], + [ + 17.09, + 47.71 + ], + [ + 16.83, + 47.69 + ], + [ + 16.81, + 47.68 + ], + [ + 16.83, + 47.93 + ], + [ + 16.69, + 47.74 + ], + [ + 16.42, + 47.67 + ], + [ + 16.71, + 47.54 + ], + [ + 16.45, + 47.41 + ], + [ + 16.51, + 47 + ], + [ + 16.19, + 46.94 + ], + [ + 16.11, + 46.87 + ], + [ + 16.04, + 46.68 + ], + [ + 16.02, + 46.66 + ], + [ + 16, + 46.68 + ], + [ + 15.93, + 46.7 + ], + [ + 15.91, + 46.71 + ], + [ + 15.9, + 46.71 + ], + [ + 15.85, + 46.72 + ], + [ + 15.84, + 46.72 + ], + [ + 15.75, + 46.7 + ], + [ + 15.73, + 46.7 + ], + [ + 15.67, + 46.71 + ], + [ + 15.66, + 46.71 + ], + [ + 14.99, + 46.6 + ], + [ + 14.98, + 46.6 + ], + [ + 14.56, + 46.37 + ], + [ + 13.71, + 46.52 + ], + [ + 12.8, + 46.64 + ], + [ + 12.79, + 46.64 + ], + [ + 12.78, + 46.64 + ], + [ + 12.78, + 46.65 + ], + [ + 12.38, + 46.72 + ], + [ + 12.14, + 46.91 + ], + [ + 12.24, + 47.07 + ], + [ + 12.08, + 47.07 + ], + [ + 11.1, + 46.89 + ], + [ + 11.02, + 46.77 + ], + [ + 10.47, + 46.85 + ], + [ + 10.47, + 46.88 + ], + [ + 10.39, + 47 + ], + [ + 10.11, + 46.84 + ], + [ + 9.75, + 47.04 + ], + [ + 9.74, + 47.04 + ], + [ + 9.61, + 47.06 + ], + [ + 9.53, + 47.27 + ], + [ + 9.55, + 47.29 + ], + [ + 9.55, + 47.3 + ], + [ + 9.58, + 47.31 + ], + [ + 9.6, + 47.34 + ], + [ + 9.62, + 47.36 + ], + [ + 9.63, + 47.37 + ], + [ + 9.65, + 47.37 + ], + [ + 9.67, + 47.38 + ], + [ + 9.65, + 47.41 + ], + [ + 9.63, + 47.46 + ], + [ + 9.62, + 47.46 + ], + [ + 9.56, + 47.5 + ], + [ + 9.73, + 47.53 + ], + [ + 10.2, + 47.38 + ], + [ + 10.21, + 47.38 + ], + [ + 10.18, + 47.3 + ], + [ + 10.33, + 47.3 + ], + [ + 10.46, + 47.43 + ], + [ + 10.45, + 47.56 + ] + ] + ] + }, + "properties": { + "A3": "AUT" + } + }, + { + "type": "Feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + 52.45, + 41.76 + ], + [ + 52.98, + 42.12 + ], + [ + 54.22, + 42.38 + ], + [ + 54.93, + 41.93 + ], + [ + 55.43, + 41.28 + ], + [ + 56, + 41.32 + ], + [ + 57.04, + 41.26 + ], + [ + 57.16, + 41.37 + ], + [ + 56.97, + 41.67 + ], + [ + 57.05, + 41.92 + ], + [ + 57.04, + 41.69 + ], + [ + 57.13, + 41.79 + ], + [ + 57.3, + 41.56 + ], + [ + 57.61, + 41.6 + ], + [ + 57.87, + 41.82 + ], + [ + 57.66, + 41.93 + ], + [ + 57.63, + 42.16 + ], + [ + 57.85, + 42.17 + ], + [ + 58.03, + 42.5 + ], + [ + 58.51, + 42.29 + ], + [ + 58.18, + 42.6 + ], + [ + 58.23, + 42.66 + ], + [ + 58.31, + 42.68 + ], + [ + 58.33, + 42.68 + ], + [ + 58.58, + 42.65 + ], + [ + 58.63, + 42.8 + ], + [ + 59.55, + 42.29 + ], + [ + 59.81, + 42.28 + ], + [ + 60.02, + 42.21 + ], + [ + 59.97, + 41.94 + ], + [ + 60.33, + 41.77 + ], + [ + 60.08, + 41.8 + ], + [ + 60.08, + 41.43 + ], + [ + 60.48, + 41.22 + ], + [ + 60.51, + 41.22 + ], + [ + 61.03, + 41.27 + ], + [ + 61.24, + 41.15 + ], + [ + 61.4, + 41.21 + ], + [ + 61.46, + 41.29 + ], + [ + 61.59, + 41.26 + ], + [ + 61.8, + 41.16 + ], + [ + 61.87, + 41.12 + ], + [ + 61.88, + 41.11 + ], + [ + 61.89, + 41.09 + ], + [ + 61.9, + 41.06 + ], + [ + 61.9, + 41.05 + ], + [ + 61.93, + 41.05 + ], + [ + 61.94, + 41.04 + ], + [ + 61.98, + 41.01 + ], + [ + 62.04, + 40.76 + ], + [ + 62.04, + 40.75 + ], + [ + 62.04, + 40.73 + ], + [ + 62.04, + 40.72 + ], + [ + 62.05, + 40.71 + ], + [ + 62.05, + 40.7 + ], + [ + 62.06, + 40.69 + ], + [ + 62.07, + 40.68 + ], + [ + 62.08, + 40.68 + ], + [ + 62.35, + 40.36 + ], + [ + 62.37, + 40.34 + ], + [ + 62.46, + 39.97 + ], + [ + 64, + 39.06 + ], + [ + 65.54, + 38.29 + ], + [ + 66.62, + 38.01 + ], + [ + 66.55, + 37.36 + ], + [ + 65.71, + 37.54 + ], + [ + 65.53, + 37.24 + ], + [ + 65.23, + 37.25 + ], + [ + 64.76, + 37.11 + ], + [ + 64.64, + 36.44 + ], + [ + 64.45, + 36.24 + ], + [ + 64.09, + 36.13 + ], + [ + 64.07, + 36 + ], + [ + 63.12, + 35.86 + ], + [ + 63.25, + 35.68 + ], + [ + 63.1, + 35.42 + ], + [ + 62.3, + 35.21 + ], + [ + 62.29, + 35.22 + ], + [ + 62.29, + 35.23 + ], + [ + 62.29, + 35.25 + ], + [ + 62.06, + 35.43 + ], + [ + 61.59, + 35.44 + ], + [ + 61.27, + 35.61 + ], + [ + 61.26, + 35.81 + ], + [ + 61.26, + 35.83 + ], + [ + 61.24, + 35.88 + ], + [ + 61.24, + 35.89 + ], + [ + 61.23, + 35.91 + ], + [ + 61.22, + 35.92 + ], + [ + 61.22, + 35.93 + ], + [ + 61.2, + 35.94 + ], + [ + 61.17, + 35.95 + ], + [ + 61.15, + 36.65 + ], + [ + 60.35, + 36.63 + ], + [ + 60.04, + 37.02 + ], + [ + 59.55, + 37.14 + ], + [ + 59.35, + 37.53 + ], + [ + 58.82, + 37.7 + ], + [ + 58.39, + 37.63 + ], + [ + 57.45, + 37.94 + ], + [ + 57.21, + 38.28 + ], + [ + 56.44, + 38.26 + ], + [ + 56.34, + 38.08 + ], + [ + 55.44, + 38.09 + ], + [ + 54.84, + 37.75 + ], + [ + 54.67, + 37.44 + ], + [ + 53.97, + 37.35 + ], + [ + 53.81, + 37.92 + ], + [ + 54.02, + 38.96 + ], + [ + 53.55, + 39.3 + ], + [ + 53.24, + 39.4 + ], + [ + 53.17, + 39.28 + ], + [ + 53.1, + 39.42 + ], + [ + 53.21, + 39.57 + ], + [ + 53.46, + 39.55 + ], + [ + 53.43, + 39.44 + ], + [ + 53.74, + 39.55 + ], + [ + 53.45, + 39.69 + ], + [ + 53.49, + 39.88 + ], + [ + 54.14, + 39.81 + ], + [ + 53.66, + 40.02 + ], + [ + 52.91, + 40.03 + ], + [ + 52.92, + 39.87 + ], + [ + 52.78, + 40 + ], + [ + 52.85, + 41.15 + ], + [ + 53, + 40.73 + ], + [ + 53.53, + 40.74 + ], + [ + 53.62, + 40.88 + ], + [ + 53.72, + 40.61 + ], + [ + 54.54, + 40.7 + ], + [ + 54.33, + 40.88 + ], + [ + 54.62, + 40.81 + ], + [ + 54.81, + 41.05 + ], + [ + 54.01, + 41.57 + ], + [ + 53.83, + 42.15 + ], + [ + 52.97, + 42 + ], + [ + 52.73, + 41.74 + ], + [ + 52.73, + 41.61 + ], + [ + 52.87, + 41.67 + ], + [ + 52.82, + 41.38 + ], + [ + 52.45, + 41.76 + ] + ], + [ + [ + 61.26, + 37.25 + ], + [ + 61.3, + 37.15 + ], + [ + 61.44, + 37.23 + ], + [ + 61.26, + 37.25 + ] + ], + [ + [ + 65.11, + 37.54 + ], + [ + 65.08, + 37.37 + ], + [ + 65.4, + 37.41 + ], + [ + 65.11, + 37.54 + ] + ] + ] + }, + "properties": { + "A3": "TKM" + } + }, + { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + 20.22, + 60.08 + ], + [ + 20.18, + 59.97 + ], + [ + 19.97, + 60.07 + ], + [ + 20.22, + 60.08 + ] + ] + ], + [ + [ + [ + 19.84, + 60.42 + ], + [ + 20.27, + 60.29 + ], + [ + 20.17, + 60.18 + ], + [ + 19.98, + 60.3 + ], + [ + 19.96, + 60.06 + ], + [ + 19.63, + 60.29 + ], + [ + 19.82, + 60.2 + ], + [ + 19.84, + 60.42 + ] + ] + ] + ] + }, + "properties": { + "A3": "ALA" + } + }, + { + "type": "Feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + 55.46, + -4.6 + ], + [ + 55.54, + -4.8 + ], + [ + 55.37, + -4.64 + ], + [ + 55.46, + -4.6 + ] + ] + ] + }, + "properties": { + "A3": "SYC" + } + }, + { + "type": "Feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + 88.91, + 27.29 + ], + [ + 88.91, + 27.31 + ], + [ + 88.92, + 27.31 + ], + [ + 88.92, + 27.32 + ], + [ + 88.92, + 27.33 + ], + [ + 88.94, + 27.34 + ], + [ + 88.94, + 27.33 + ], + [ + 88.95, + 27.33 + ], + [ + 88.96, + 27.31 + ], + [ + 88.96, + 27.43 + ], + [ + 88.96, + 27.45 + ], + [ + 89.27, + 27.82 + ], + [ + 89.27, + 27.83 + ], + [ + 89.28, + 27.83 + ], + [ + 89.6, + 28.16 + ], + [ + 89.87, + 28.22 + ], + [ + 90.58, + 28.02 + ], + [ + 91.34, + 28.07 + ], + [ + 91.59, + 27.86 + ], + [ + 91.57, + 27.86 + ], + [ + 91.56, + 27.86 + ], + [ + 91.55, + 27.85 + ], + [ + 91.57, + 27.83 + ], + [ + 91.57, + 27.82 + ], + [ + 91.64, + 27.76 + ], + [ + 91.65, + 27.48 + ], + [ + 92.02, + 27.48 + ], + [ + 92.12, + 27.29 + ], + [ + 92.1, + 26.88 + ], + [ + 92.09, + 26.86 + ], + [ + 91.84, + 26.88 + ], + [ + 90.96, + 26.78 + ], + [ + 90.96, + 26.79 + ], + [ + 90.94, + 26.79 + ], + [ + 90.5, + 26.85 + ], + [ + 90.49, + 26.86 + ], + [ + 89.86, + 26.7 + ], + [ + 89.51, + 26.81 + ], + [ + 89.45, + 26.83 + ], + [ + 89.43, + 26.84 + ], + [ + 89.39, + 26.85 + ], + [ + 89.37, + 26.86 + ], + [ + 89.36, + 26.86 + ], + [ + 89.33, + 26.85 + ], + [ + 89.07, + 26.9 + ], + [ + 89.06, + 26.9 + ], + [ + 89.04, + 26.92 + ], + [ + 88.92, + 26.99 + ], + [ + 88.91, + 26.98 + ], + [ + 88.9, + 26.97 + ], + [ + 88.88, + 26.95 + ], + [ + 88.75, + 27.14 + ], + [ + 88.91, + 27.29 + ] + ] + ] + }, + "properties": { + "A3": "BTN" + } + }, + { + "type": "Feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + -61.26, + 13.27 + ], + [ + -61.13, + 13.37 + ], + [ + -61.17, + 13.12 + ], + [ + -61.26, + 13.27 + ] + ] + ] + }, + "properties": { + "A3": "VCT" + } + }, + { + "type": "Feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + 57.51, + -20.14 + ], + [ + 57.63, + -19.98 + ], + [ + 57.81, + -20.23 + ], + [ + 57.53, + -20.53 + ], + [ + 57.31, + -20.47 + ], + [ + 57.51, + -20.14 + ] + ] + ] + }, + "properties": { + "A3": "MUS" + } + }, + { + "type": "Feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + 73.77, + -53.12 + ], + [ + 73.49, + -53.19 + ], + [ + 73.25, + -52.99 + ], + [ + 73.77, + -53.12 + ] + ] + ] + }, + "properties": { + "A3": "HMD" + } + }, + { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + 88.44, + 25.18 + ], + [ + 88.86, + 25.2 + ], + [ + 89, + 25.27 + ], + [ + 89, + 25.26 + ], + [ + 89.01, + 25.26 + ], + [ + 89.01, + 25.3 + ], + [ + 88.99, + 25.3 + ], + [ + 88.99, + 25.31 + ], + [ + 88.86, + 25.35 + ], + [ + 88.84, + 25.38 + ], + [ + 88.81, + 25.52 + ], + [ + 88.8, + 25.52 + ], + [ + 88.79, + 25.52 + ], + [ + 88.78, + 25.52 + ], + [ + 88.77, + 25.52 + ], + [ + 88.76, + 25.53 + ], + [ + 88.76, + 25.52 + ], + [ + 88.76, + 25.51 + ], + [ + 88.77, + 25.5 + ], + [ + 88.72, + 25.5 + ], + [ + 88.66, + 25.48 + ], + [ + 88.65, + 25.48 + ], + [ + 88.47, + 25.59 + ], + [ + 88.46, + 25.64 + ], + [ + 88.45, + 25.64 + ], + [ + 88.43, + 25.67 + ], + [ + 88.09, + 25.91 + ], + [ + 88.33, + 26.21 + ], + [ + 88.43, + 26.33 + ], + [ + 88.44, + 26.35 + ], + [ + 88.51, + 26.36 + ], + [ + 88.51, + 26.35 + ], + [ + 88.51, + 26.41 + ], + [ + 88.41, + 26.48 + ], + [ + 88.4, + 26.48 + ], + [ + 88.33, + 26.49 + ], + [ + 88.33, + 26.5 + ], + [ + 88.35, + 26.52 + ], + [ + 88.36, + 26.53 + ], + [ + 88.36, + 26.54 + ], + [ + 88.36, + 26.55 + ], + [ + 88.37, + 26.58 + ], + [ + 88.38, + 26.59 + ], + [ + 88.38, + 26.6 + ], + [ + 88.4, + 26.6 + ], + [ + 88.39, + 26.61 + ], + [ + 88.39, + 26.62 + ], + [ + 88.4, + 26.62 + ], + [ + 88.4, + 26.63 + ], + [ + 88.42, + 26.59 + ], + [ + 88.59, + 26.45 + ], + [ + 88.59, + 26.46 + ], + [ + 88.6, + 26.46 + ], + [ + 88.6, + 26.47 + ], + [ + 88.68, + 26.41 + ], + [ + 88.68, + 26.38 + ], + [ + 88.74, + 26.33 + ], + [ + 88.75, + 26.32 + ], + [ + 88.74, + 26.32 + ], + [ + 88.73, + 26.31 + ], + [ + 88.72, + 26.31 + ], + [ + 88.7, + 26.29 + ], + [ + 88.67, + 26.26 + ], + [ + 88.73, + 26.29 + ], + [ + 88.74, + 26.29 + ], + [ + 88.75, + 26.29 + ], + [ + 88.74, + 26.3 + ], + [ + 88.75, + 26.31 + ], + [ + 88.76, + 26.31 + ], + [ + 88.79, + 26.31 + ], + [ + 88.92, + 26.28 + ], + [ + 88.95, + 26.24 + ], + [ + 88.98, + 26.24 + ], + [ + 88.99, + 26.25 + ], + [ + 88.96, + 26.46 + ], + [ + 89.27, + 26.09 + ], + [ + 89.43, + 26.04 + ], + [ + 89.43, + 26.02 + ], + [ + 89.45, + 26.01 + ], + [ + 89.48, + 26 + ], + [ + 89.49, + 26 + ], + [ + 89.55, + 26 + ], + [ + 89.54, + 25.97 + ], + [ + 89.63, + 26.13 + ], + [ + 89.6, + 26.16 + ], + [ + 89.65, + 26.19 + ], + [ + 89.63, + 26.21 + ], + [ + 89.63, + 26.23 + ], + [ + 89.65, + 26.23 + ], + [ + 89.68, + 26.22 + ], + [ + 89.68, + 26.21 + ], + [ + 89.69, + 26.18 + ], + [ + 89.69, + 26.17 + ], + [ + 89.74, + 26.16 + ], + [ + 89.74, + 26.15 + ], + [ + 89.78, + 26.08 + ], + [ + 89.78, + 26.07 + ], + [ + 89.84, + 26 + ], + [ + 89.74, + 25.89 + ], + [ + 89.87, + 25.93 + ], + [ + 89.83, + 25.87 + ], + [ + 89.66, + 25.78 + ], + [ + 89.7, + 25.5 + ], + [ + 89.83, + 25.71 + ], + [ + 89.84, + 25.7 + ], + [ + 89.83, + 25.45 + ], + [ + 89.85, + 25.29 + ], + [ + 90.57, + 25.17 + ], + [ + 90.67, + 25.17 + ], + [ + 90.68, + 25.16 + ], + [ + 90.7, + 25.16 + ], + [ + 91.25, + 25.21 + ], + [ + 91.26, + 25.21 + ], + [ + 91.37, + 25.17 + ], + [ + 91.39, + 25.17 + ], + [ + 91.75, + 25.16 + ], + [ + 91.76, + 25.17 + ], + [ + 92.12, + 25.17 + ], + [ + 92.5, + 24.89 + ], + [ + 92.25, + 24.9 + ], + [ + 92.14, + 24.41 + ], + [ + 91.92, + 24.34 + ], + [ + 91.89, + 24.15 + ], + [ + 91.76, + 24.24 + ], + [ + 91.37, + 24.1 + ], + [ + 91.16, + 23.73 + ], + [ + 91.22, + 23.5 + ], + [ + 91.24, + 23.49 + ], + [ + 91.35, + 23.1 + ], + [ + 91.42, + 23.27 + ], + [ + 91.58, + 22.98 + ], + [ + 91.78, + 23.04 + ], + [ + 91.8, + 23.19 + ], + [ + 91.8, + 23.2 + ], + [ + 91.79, + 23.22 + ], + [ + 91.78, + 23.22 + ], + [ + 91.95, + 23.73 + ], + [ + 92.27, + 23.72 + ], + [ + 92.6, + 21.98 + ], + [ + 92.68, + 21.29 + ], + [ + 92.37, + 21.48 + ], + [ + 92.18, + 21.16 + ], + [ + 92.2, + 21.14 + ], + [ + 92.21, + 21.12 + ], + [ + 92.22, + 21.12 + ], + [ + 92.35, + 20.75 + ], + [ + 92.05, + 21.19 + ], + [ + 91.94, + 21.47 + ], + [ + 92.06, + 21.48 + ], + [ + 92.06, + 21.75 + ], + [ + 91.98, + 21.66 + ], + [ + 92.01, + 21.74 + ], + [ + 91.96, + 21.68 + ], + [ + 91.94, + 21.76 + ], + [ + 91.92, + 21.73 + ], + [ + 91.91, + 21.76 + ], + [ + 91.94, + 21.76 + ], + [ + 91.89, + 21.77 + ], + [ + 91.87, + 22.17 + ], + [ + 91.42, + 22.81 + ], + [ + 91.51, + 22.93 + ], + [ + 91.1, + 22.48 + ], + [ + 90.77, + 22.75 + ], + [ + 90.66, + 23.32 + ], + [ + 90.6, + 23.6 + ], + [ + 90.57, + 23.6 + ], + [ + 90.55, + 23.32 + ], + [ + 90.01, + 23.68 + ], + [ + 90.62, + 23.22 + ], + [ + 90.48, + 23.05 + ], + [ + 90.86, + 22.42 + ], + [ + 90.64, + 21.99 + ], + [ + 90.66, + 22.55 + ], + [ + 90.49, + 22.72 + ], + [ + 90.6, + 22.47 + ], + [ + 90.64, + 22.29 + ], + [ + 90.23, + 21.81 + ], + [ + 90.03, + 21.88 + ], + [ + 90.15, + 22.11 + ], + [ + 89.99, + 22 + ], + [ + 89.93, + 22.41 + ], + [ + 89.82, + 22.07 + ], + [ + 89.58, + 22.55 + ], + [ + 89.53, + 21.99 + ], + [ + 89.43, + 22.53 + ], + [ + 89.33, + 22.2 + ], + [ + 89.15, + 22.42 + ], + [ + 89.2, + 22 + ], + [ + 89.07, + 22.2 + ], + [ + 89.04, + 22.22 + ], + [ + 89.04, + 22.24 + ], + [ + 89.04, + 22.25 + ], + [ + 89.03, + 22.26 + ], + [ + 89.02, + 22.25 + ], + [ + 89.01, + 22.28 + ], + [ + 89.01, + 22.3 + ], + [ + 89.02, + 22.3 + ], + [ + 89.02, + 22.31 + ], + [ + 89.01, + 22.31 + ], + [ + 88.98, + 22.33 + ], + [ + 88.99, + 22.34 + ], + [ + 88.99, + 22.36 + ], + [ + 88.98, + 22.37 + ], + [ + 88.99, + 22.39 + ], + [ + 88.97, + 22.41 + ], + [ + 88.98, + 22.41 + ], + [ + 89, + 22.43 + ], + [ + 88.99, + 22.44 + ], + [ + 89, + 22.47 + ], + [ + 88.98, + 22.48 + ], + [ + 88.97, + 22.51 + ], + [ + 88.96, + 22.54 + ], + [ + 88.95, + 22.55 + ], + [ + 88.94, + 22.58 + ], + [ + 88.94, + 22.59 + ], + [ + 88.95, + 22.6 + ], + [ + 88.95, + 22.62 + ], + [ + 88.93, + 22.62 + ], + [ + 88.93, + 22.64 + ], + [ + 88.93, + 22.65 + ], + [ + 88.84, + 23.01 + ], + [ + 89, + 23.21 + ], + [ + 88.72, + 23.25 + ], + [ + 88.79, + 23.49 + ], + [ + 88.56, + 23.65 + ], + [ + 88.73, + 24.06 + ], + [ + 88.71, + 24.07 + ], + [ + 88.71, + 24.1 + ], + [ + 88.71, + 24.11 + ], + [ + 88.83, + 24.1 + ], + [ + 88.71, + 24.12 + ], + [ + 88.7, + 24.14 + ], + [ + 88.71, + 24.17 + ], + [ + 88.71, + 24.18 + ], + [ + 88.73, + 24.19 + ], + [ + 88.75, + 24.2 + ], + [ + 88.74, + 24.25 + ], + [ + 88.71, + 24.3 + ], + [ + 88.7, + 24.31 + ], + [ + 88.69, + 24.31 + ], + [ + 88.67, + 24.31 + ], + [ + 88.66, + 24.3 + ], + [ + 88.44, + 24.36 + ], + [ + 88.43, + 24.37 + ], + [ + 88.41, + 24.38 + ], + [ + 88.4, + 24.39 + ], + [ + 88.39, + 24.39 + ], + [ + 88.37, + 24.41 + ], + [ + 88.34, + 24.42 + ], + [ + 88.32, + 24.43 + ], + [ + 88.25, + 24.46 + ], + [ + 88.23, + 24.47 + ], + [ + 88.17, + 24.5 + ], + [ + 88.17, + 24.63 + ], + [ + 88.02, + 24.65 + ], + [ + 88.15, + 24.85 + ], + [ + 88.21, + 24.96 + ], + [ + 88.34, + 24.87 + ], + [ + 88.44, + 25.18 + ] + ], + [ + [ + 89.82, + 23.7 + ], + [ + 90.03, + 23.73 + ], + [ + 89.79, + 23.81 + ], + [ + 89.78, + 24.29 + ], + [ + 89.79, + 24.41 + ], + [ + 89.84, + 24.51 + ], + [ + 89.78, + 24.39 + ], + [ + 89.71, + 23.81 + ], + [ + 89.32, + 23.9 + ], + [ + 89.82, + 23.7 + ] + ] + ], + [ + [ + [ + 90.21, + 22.19 + ], + [ + 90.16, + 22.11 + ], + [ + 90.21, + 22.29 + ], + [ + 90.21, + 22.19 + ] + ] + ], + [ + [ + [ + 88.14, + 24.5 + ], + [ + 88.11, + 24.55 + ], + [ + 88.1, + 24.6 + ], + [ + 88.14, + 24.5 + ] + ] + ], + [ + [ + [ + 88.97, + 26.28 + ], + [ + 88.95, + 26.28 + ], + [ + 88.93, + 26.29 + ], + [ + 88.93, + 26.3 + ], + [ + 88.97, + 26.28 + ] + ] + ], + [ + [ + [ + 89.83, + 21.95 + ], + [ + 89.77, + 21.84 + ], + [ + 89.78, + 22.09 + ], + [ + 89.83, + 21.95 + ] + ] + ], + [ + [ + [ + 89.46, + 21.82 + ], + [ + 89.38, + 21.73 + ], + [ + 89.41, + 21.99 + ], + [ + 89.46, + 21.82 + ] + ] + ], + [ + [ + [ + 89.57, + 22.18 + ], + [ + 89.66, + 22.37 + ], + [ + 89.7, + 22.07 + ], + [ + 89.57, + 22.18 + ] + ] + ], + [ + [ + [ + 90.99, + 22.21 + ], + [ + 90.91, + 22.07 + ], + [ + 90.98, + 22.34 + ], + [ + 90.99, + 22.21 + ] + ] + ], + [ + [ + [ + 91.89, + 21.58 + ], + [ + 91.88, + 21.69 + ], + [ + 91.94, + 21.74 + ], + [ + 91.97, + 21.51 + ], + [ + 91.89, + 21.58 + ] + ] + ] + ] + }, + "properties": { + "A3": "BGD" + } + }, + { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + 56.08, + 26.05 + ], + [ + 56.15, + 25.67 + ], + [ + 56.27, + 25.63 + ], + [ + 56.38, + 24.98 + ], + [ + 56.12, + 24.73 + ], + [ + 56.01, + 24.99 + ], + [ + 55.81, + 24.91 + ], + [ + 55.75, + 24.23 + ], + [ + 55.95, + 24.22 + ], + [ + 56.02, + 24.07 + ], + [ + 55.49, + 23.94 + ], + [ + 55.57, + 23.63 + ], + [ + 55.23, + 23.11 + ], + [ + 55.21, + 22.71 + ], + [ + 52.58, + 22.94 + ], + [ + 51.59, + 24.25 + ], + [ + 51.57, + 24.39 + ], + [ + 51.63, + 24.2 + ], + [ + 51.65, + 24.33 + ], + [ + 51.78, + 24.27 + ], + [ + 51.8, + 24.01 + ], + [ + 52.08, + 23.96 + ], + [ + 52.59, + 24.21 + ], + [ + 53.15, + 24.06 + ], + [ + 53.96, + 24.08 + ], + [ + 54.18, + 24.19 + ], + [ + 54.02, + 24.19 + ], + [ + 54.13, + 24.33 + ], + [ + 54.24, + 24.23 + ], + [ + 54.51, + 24.31 + ], + [ + 54.66, + 24.84 + ], + [ + 54.75, + 24.77 + ], + [ + 55.18, + 25.06 + ], + [ + 55.26, + 25.28 + ], + [ + 55.35, + 25.2 + ], + [ + 55.29, + 25.36 + ], + [ + 55.97, + 25.78 + ], + [ + 56.08, + 26.05 + ] + ] + ], + [ + [ + [ + 53.83, + 24.23 + ], + [ + 53.97, + 24.15 + ], + [ + 53.62, + 24.17 + ], + [ + 53.83, + 24.23 + ] + ] + ] + ] + }, + "properties": { + "A3": "ARE" + } + }, + { + "type": "Feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + 31.98, + -25.95 + ], + [ + 32, + -25.98 + ], + [ + 32, + -25.99 + ], + [ + 32.13, + -26.84 + ], + [ + 32.12, + -26.84 + ], + [ + 32.01, + -26.81 + ], + [ + 31.95, + -27.32 + ], + [ + 31.93, + -27.32 + ], + [ + 31.89, + -27.32 + ], + [ + 31.15, + -27.2 + ], + [ + 30.89, + -26.79 + ], + [ + 30.81, + -26.84 + ], + [ + 30.79, + -26.57 + ], + [ + 31.32, + -25.74 + ], + [ + 31.98, + -25.95 + ] + ] + ] + }, + "properties": { + "A3": "SWZ" + } + }, + { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + 25.26, + -17.79 + ], + [ + 25.27, + -17.8 + ], + [ + 25.28, + -17.8 + ], + [ + 25.31, + -17.82 + ], + [ + 25.35, + -17.84 + ], + [ + 25.36, + -17.84 + ], + [ + 25.37, + -17.84 + ], + [ + 25.39, + -17.85 + ], + [ + 25.41, + -17.85 + ], + [ + 25.45, + -17.84 + ], + [ + 25.46, + -17.84 + ], + [ + 25.47, + -17.85 + ], + [ + 25.48, + -17.85 + ], + [ + 25.5, + -17.86 + ], + [ + 25.51, + -17.86 + ], + [ + 25.54, + -17.85 + ], + [ + 25.54, + -17.84 + ], + [ + 25.55, + -17.84 + ], + [ + 25.6, + -17.84 + ], + [ + 25.61, + -17.84 + ], + [ + 25.63, + -17.84 + ], + [ + 25.64, + -17.83 + ], + [ + 25.65, + -17.83 + ], + [ + 25.67, + -17.81 + ], + [ + 25.69, + -17.81 + ], + [ + 25.7, + -17.81 + ], + [ + 25.7, + -17.82 + ], + [ + 25.72, + -17.84 + ], + [ + 25.73, + -17.84 + ], + [ + 25.79, + -17.87 + ], + [ + 25.79, + -17.86 + ], + [ + 25.79, + -17.87 + ], + [ + 25.8, + -17.88 + ], + [ + 25.83, + -17.9 + ], + [ + 25.84, + -17.9 + ], + [ + 25.86, + -17.93 + ], + [ + 25.85, + -17.93 + ], + [ + 25.86, + -17.93 + ], + [ + 25.85, + -17.94 + ], + [ + 26.06, + -17.98 + ], + [ + 26.07, + -17.98 + ], + [ + 26.22, + -17.88 + ], + [ + 26.58, + -18.02 + ], + [ + 26.6, + -18.04 + ], + [ + 26.63, + -18.06 + ], + [ + 26.65, + -18.06 + ], + [ + 26.66, + -18.06 + ], + [ + 26.68, + -18.07 + ], + [ + 26.7, + -18.07 + ], + [ + 26.72, + -18.05 + ], + [ + 26.73, + -18.04 + ], + [ + 26.74, + -18.03 + ], + [ + 26.75, + -18.02 + ], + [ + 26.78, + -18.02 + ], + [ + 26.8, + -18.02 + ], + [ + 26.81, + -18.01 + ], + [ + 26.83, + -18 + ], + [ + 26.83, + -17.99 + ], + [ + 26.87, + -17.99 + ], + [ + 26.88, + -17.98 + ], + [ + 26.91, + -17.98 + ], + [ + 26.92, + -17.98 + ], + [ + 26.94, + -17.97 + ], + [ + 26.98, + -17.97 + ], + [ + 26.99, + -17.97 + ], + [ + 27.03, + -17.96 + ], + [ + 27.07, + -17.92 + ], + [ + 27.09, + -17.9 + ], + [ + 27.24, + -17.85 + ], + [ + 27.16, + -17.79 + ], + [ + 27.18, + -17.77 + ], + [ + 27.61, + -17.35 + ], + [ + 27.62, + -17.33 + ], + [ + 27.99, + -17.03 + ], + [ + 28.06, + -17.1 + ], + [ + 28.11, + -16.85 + ], + [ + 28.87, + -16.78 + ], + [ + 29, + -16.59 + ], + [ + 28.75, + -16.53 + ], + [ + 28.8, + -16.49 + ], + [ + 28.81, + -16.49 + ], + [ + 28.82, + -16.47 + ], + [ + 28.82, + -16.43 + ], + [ + 28.83, + -16.42 + ], + [ + 28.85, + -16.37 + ], + [ + 28.85, + -16.33 + ], + [ + 28.84, + -16.33 + ], + [ + 28.83, + -16.32 + ], + [ + 28.82, + -16.32 + ], + [ + 28.82, + -16.31 + ], + [ + 28.83, + -16.29 + ], + [ + 28.85, + -16.26 + ], + [ + 28.86, + -16.25 + ], + [ + 28.85, + -16.24 + ], + [ + 28.84, + -16.23 + ], + [ + 28.84, + -16.21 + ], + [ + 28.84, + -16.19 + ], + [ + 28.84, + -16.16 + ], + [ + 28.85, + -16.15 + ], + [ + 28.86, + -16.14 + ], + [ + 28.86, + -16.13 + ], + [ + 28.87, + -16.12 + ], + [ + 28.86, + -16.09 + ], + [ + 28.86, + -16.08 + ], + [ + 28.85, + -16.04 + ], + [ + 28.86, + -16.03 + ], + [ + 28.88, + -16.01 + ], + [ + 28.89, + -15.99 + ], + [ + 29.02, + -15.94 + ], + [ + 29.03, + -15.94 + ], + [ + 29.03, + -15.92 + ], + [ + 29.04, + -15.91 + ], + [ + 29.06, + -15.89 + ], + [ + 29.07, + -15.88 + ], + [ + 29.08, + -15.87 + ], + [ + 29.1, + -15.86 + ], + [ + 29.11, + -15.86 + ], + [ + 29.12, + -15.85 + ], + [ + 29.14, + -15.83 + ], + [ + 29.14, + -15.82 + ], + [ + 29.17, + -15.8 + ], + [ + 29.19, + -15.79 + ], + [ + 29.21, + -15.77 + ], + [ + 29.22, + -15.77 + ], + [ + 29.24, + -15.76 + ], + [ + 29.26, + -15.76 + ], + [ + 29.28, + -15.75 + ], + [ + 29.3, + -15.74 + ], + [ + 29.32, + -15.73 + ], + [ + 29.35, + -15.72 + ], + [ + 29.37, + -15.71 + ], + [ + 29.41, + -15.69 + ], + [ + 29.42, + -15.69 + ], + [ + 29.52, + -15.69 + ], + [ + 29.56, + -15.67 + ], + [ + 29.65, + -15.66 + ], + [ + 29.66, + -15.66 + ], + [ + 29.74, + -15.64 + ], + [ + 29.76, + -15.63 + ], + [ + 29.81, + -15.61 + ], + [ + 29.82, + -15.61 + ], + [ + 29.84, + -15.61 + ], + [ + 29.88, + -15.61 + ], + [ + 29.9, + -15.62 + ], + [ + 29.92, + -15.62 + ], + [ + 29.94, + -15.63 + ], + [ + 29.96, + -15.64 + ], + [ + 29.98, + -15.64 + ], + [ + 29.99, + -15.64 + ], + [ + 30, + -15.64 + ], + [ + 30.01, + -15.64 + ], + [ + 30.02, + -15.64 + ], + [ + 30.04, + -15.64 + ], + [ + 30.1, + -15.63 + ], + [ + 30.12, + -15.63 + ], + [ + 30.13, + -15.62 + ], + [ + 30.16, + -15.62 + ], + [ + 30.17, + -15.62 + ], + [ + 30.19, + -15.64 + ], + [ + 30.19, + -15.65 + ], + [ + 30.21, + -15.66 + ], + [ + 30.22, + -15.66 + ], + [ + 30.23, + -15.65 + ], + [ + 30.24, + -15.65 + ], + [ + 30.25, + -15.63 + ], + [ + 30.27, + -15.63 + ], + [ + 30.27, + -15.64 + ], + [ + 30.29, + -15.65 + ], + [ + 30.31, + -15.65 + ], + [ + 30.33, + -15.65 + ], + [ + 30.37, + -15.65 + ], + [ + 30.41, + -15.63 + ], + [ + 30.42, + -15.63 + ], + [ + 30.42, + -15.62 + ], + [ + 30.42, + -16 + ], + [ + 31.28, + -16.01 + ], + [ + 31.91, + -16.41 + ], + [ + 32.41, + -16.47 + ], + [ + 32.8, + -16.7 + ], + [ + 32.81, + -16.7 + ], + [ + 32.82, + -16.71 + ], + [ + 32.83, + -16.7 + ], + [ + 32.85, + -16.7 + ], + [ + 32.85, + -16.71 + ], + [ + 32.89, + -16.72 + ], + [ + 32.9, + -16.71 + ], + [ + 32.84, + -16.93 + ], + [ + 33.05, + -17.34 + ], + [ + 32.94, + -18.03 + ], + [ + 33.07, + -18.35 + ], + [ + 32.89, + -18.51 + ], + [ + 32.93, + -18.77 + ], + [ + 32.7, + -18.94 + ], + [ + 32.88, + -19.1 + ], + [ + 32.83, + -19.67 + ], + [ + 33.06, + -19.78 + ], + [ + 32.86, + -20.29 + ], + [ + 32.49, + -20.63 + ], + [ + 32.37, + -21.14 + ], + [ + 32.48, + -21.32 + ], + [ + 32.45, + -21.31 + ], + [ + 32.44, + -21.31 + ], + [ + 32.41, + -21.32 + ], + [ + 31.31, + -22.42 + ], + [ + 31.3, + -22.41 + ], + [ + 31.29, + -22.4 + ], + [ + 31.27, + -22.38 + ], + [ + 31.26, + -22.36 + ], + [ + 31.23, + -22.37 + ], + [ + 31.21, + -22.37 + ], + [ + 31.2, + -22.36 + ], + [ + 31.19, + -22.34 + ], + [ + 31.16, + -22.33 + ], + [ + 31.15, + -22.33 + ], + [ + 31.12, + -22.34 + ], + [ + 31.11, + -22.34 + ], + [ + 31.08, + -22.35 + ], + [ + 31.07, + -22.34 + ], + [ + 31.06, + -22.34 + ], + [ + 31.05, + -22.34 + ], + [ + 31.04, + -22.33 + ], + [ + 31.03, + -22.33 + ], + [ + 31.02, + -22.32 + ], + [ + 30.99, + -22.32 + ], + [ + 30.98, + -22.33 + ], + [ + 30.02, + -22.25 + ], + [ + 30.02, + -22.24 + ], + [ + 30.02, + -22.23 + ], + [ + 30.01, + -22.23 + ], + [ + 30, + -22.23 + ], + [ + 29.99, + -22.22 + ], + [ + 29.97, + -22.22 + ], + [ + 29.62, + -22.14 + ], + [ + 29.59, + -22.15 + ], + [ + 29.56, + -22.15 + ], + [ + 29.55, + -22.15 + ], + [ + 29.54, + -22.15 + ], + [ + 29.53, + -22.16 + ], + [ + 29.54, + -22.17 + ], + [ + 29.53, + -22.18 + ], + [ + 29.51, + -22.18 + ], + [ + 29.5, + -22.17 + ], + [ + 29.49, + -22.17 + ], + [ + 29.48, + -22.17 + ], + [ + 29.45, + -22.17 + ], + [ + 29.43, + -22.17 + ], + [ + 29.42, + -22.17 + ], + [ + 29.42, + -22.18 + ], + [ + 29.38, + -22.19 + ], + [ + 29.34, + -22.17 + ], + [ + 29.33, + -22.16 + ], + [ + 29.31, + -22.14 + ], + [ + 29.3, + -22.14 + ], + [ + 29.29, + -22.12 + ], + [ + 29.28, + -22.09 + ], + [ + 29.27, + -22.08 + ], + [ + 29.25, + -22.06 + ], + [ + 29.23, + -22.07 + ], + [ + 29.04, + -22.01 + ], + [ + 29.06, + -21.8 + ], + [ + 29.04, + -21.8 + ], + [ + 29.03, + -21.79 + ], + [ + 29.02, + -21.79 + ], + [ + 29, + -21.78 + ], + [ + 29, + -21.77 + ], + [ + 28.97, + -21.77 + ], + [ + 28.95, + -21.77 + ], + [ + 28.92, + -21.77 + ], + [ + 28.91, + -21.77 + ], + [ + 28.89, + -21.76 + ], + [ + 28.87, + -21.76 + ], + [ + 28.02, + -21.57 + ], + [ + 27.69, + -21.09 + ], + [ + 27.72, + -20.51 + ], + [ + 27.29, + -20.5 + ], + [ + 27.21, + -20.08 + ], + [ + 26.73, + -19.94 + ], + [ + 26.17, + -19.55 + ], + [ + 25.98, + -18.97 + ], + [ + 25.32, + -18.08 + ], + [ + 25.26, + -17.79 + ] + ] + ], + [ + [ + [ + 29.38, + -22.19 + ], + [ + 29.38, + -22.2 + ], + [ + 29.36, + -22.19 + ], + [ + 29.38, + -22.19 + ] + ] + ] + ] + }, + "properties": { + "A3": "ZWE" + } + }, + { + "type": "Feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + 5.97, + 50.17 + ], + [ + 6.14, + 50.13 + ], + [ + 6.19, + 49.96 + ], + [ + 6.18, + 49.95 + ], + [ + 6.2, + 49.95 + ], + [ + 6.22, + 49.93 + ], + [ + 6.22, + 49.92 + ], + [ + 6.39, + 49.83 + ], + [ + 6.52, + 49.81 + ], + [ + 6.53, + 49.81 + ], + [ + 6.53, + 49.8 + ], + [ + 6.51, + 49.79 + ], + [ + 6.52, + 49.76 + ], + [ + 6.5, + 49.75 + ], + [ + 6.52, + 49.72 + ], + [ + 6.51, + 49.72 + ], + [ + 6.5, + 49.73 + ], + [ + 6.5, + 49.72 + ], + [ + 6.49, + 49.72 + ], + [ + 6.5, + 49.72 + ], + [ + 6.51, + 49.71 + ], + [ + 6.5, + 49.71 + ], + [ + 6.48, + 49.7 + ], + [ + 6.44, + 49.66 + ], + [ + 6.44, + 49.65 + ], + [ + 6.42, + 49.62 + ], + [ + 6.4, + 49.6 + ], + [ + 6.39, + 49.6 + ], + [ + 6.38, + 49.59 + ], + [ + 6.38, + 49.58 + ], + [ + 6.37, + 49.58 + ], + [ + 6.37, + 49.59 + ], + [ + 6.37, + 49.58 + ], + [ + 6.36, + 49.53 + ], + [ + 6.37, + 49.51 + ], + [ + 6.36, + 49.51 + ], + [ + 6.37, + 49.51 + ], + [ + 6.37, + 49.5 + ], + [ + 6.37, + 49.49 + ], + [ + 6.37, + 49.47 + ], + [ + 6.03, + 49.46 + ], + [ + 6.03, + 49.45 + ], + [ + 5.93, + 49.5 + ], + [ + 5.82, + 49.55 + ], + [ + 5.86, + 49.73 + ], + [ + 5.85, + 49.72 + ], + [ + 5.84, + 49.72 + ], + [ + 5.82, + 49.75 + ], + [ + 5.8, + 49.78 + ], + [ + 5.78, + 49.88 + ], + [ + 5.97, + 50.17 + ] + ] + ] + }, + "properties": { + "A3": "LUX" + } + }, + { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + -80.22, + -3.44 + ], + [ + -80.22, + -3.45 + ], + [ + -80.23, + -3.46 + ], + [ + -80.24, + -3.47 + ], + [ + -80.21, + -3.56 + ], + [ + -80.21, + -3.57 + ], + [ + -80.13, + -3.9 + ], + [ + -80.48, + -4.05 + ], + [ + -80.45, + -4.21 + ], + [ + -80.31, + -4.2 + ], + [ + -80.45, + -4.45 + ], + [ + -80.14, + -4.29 + ], + [ + -79.97, + -4.39 + ], + [ + -79.96, + -4.39 + ], + [ + -79.5, + -4.52 + ], + [ + -79.4, + -4.83 + ], + [ + -79.13, + -4.98 + ], + [ + -79.12, + -4.98 + ], + [ + -79.11, + -4.98 + ], + [ + -79.02, + -5.02 + ], + [ + -78.86, + -4.67 + ], + [ + -78.66, + -4.58 + ], + [ + -78.35, + -3.37 + ], + [ + -78.15, + -3.48 + ], + [ + -78.2, + -3.36 + ], + [ + -77.84, + -3.01 + ], + [ + -76.69, + -2.61 + ], + [ + -76.68, + -2.61 + ], + [ + -76.65, + -2.6 + ], + [ + -76.63, + -2.59 + ], + [ + -76.05, + -2.13 + ], + [ + -75.56, + -1.56 + ], + [ + -75.39, + -0.95 + ], + [ + -75.38, + -0.94 + ], + [ + -75.37, + -0.94 + ], + [ + -75.36, + -0.95 + ], + [ + -75.33, + -0.96 + ], + [ + -75.32, + -0.98 + ], + [ + -75.31, + -0.98 + ], + [ + -75.27, + -0.99 + ], + [ + -75.24, + -0.98 + ], + [ + -75.23, + -0.97 + ], + [ + -75.2, + -0.97 + ], + [ + -75.23, + -0.93 + ], + [ + -75.23, + -0.92 + ], + [ + -75.22, + -0.9 + ], + [ + -75.22, + -0.87 + ], + [ + -75.25, + -0.84 + ], + [ + -75.25, + -0.83 + ], + [ + -75.24, + -0.81 + ], + [ + -75.24, + -0.8 + ], + [ + -75.26, + -0.78 + ], + [ + -75.25, + -0.77 + ], + [ + -75.26, + -0.76 + ], + [ + -75.28, + -0.73 + ], + [ + -75.27, + -0.71 + ], + [ + -75.26, + -0.7 + ], + [ + -75.25, + -0.7 + ], + [ + -75.27, + -0.67 + ], + [ + -75.27, + -0.66 + ], + [ + -75.24, + -0.59 + ], + [ + -75.23, + -0.58 + ], + [ + -75.61, + -0.11 + ], + [ + -75.4, + -0.17 + ], + [ + -75.26, + -0.12 + ], + [ + -75.08, + -0.08 + ], + [ + -74.82, + -0.2 + ], + [ + -74.75, + -0.26 + ], + [ + -74.75, + -0.27 + ], + [ + -74.73, + -0.29 + ], + [ + -74.73, + -0.3 + ], + [ + -74.47, + -0.48 + ], + [ + -74.47, + -0.49 + ], + [ + -74.45, + -0.49 + ], + [ + -74.44, + -0.49 + ], + [ + -74.27, + -0.92 + ], + [ + -74.27, + -0.93 + ], + [ + -74.26, + -0.94 + ], + [ + -74.26, + -0.95 + ], + [ + -74.03, + -1.01 + ], + [ + -74.03, + -1.05 + ], + [ + -74.02, + -1.07 + ], + [ + -74.02, + -1.08 + ], + [ + -74.01, + -1.09 + ], + [ + -74, + -1.1 + ], + [ + -73.98, + -1.1 + ], + [ + -73.97, + -1.09 + ], + [ + -73.95, + -1.09 + ], + [ + -73.95, + -1.1 + ], + [ + -73.96, + -1.11 + ], + [ + -73.96, + -1.13 + ], + [ + -73.94, + -1.13 + ], + [ + -73.92, + -1.12 + ], + [ + -73.91, + -1.12 + ], + [ + -73.9, + -1.13 + ], + [ + -73.9, + -1.15 + ], + [ + -73.88, + -1.18 + ], + [ + -73.88, + -1.19 + ], + [ + -73.87, + -1.2 + ], + [ + -73.87, + -1.22 + ], + [ + -73.86, + -1.23 + ], + [ + -73.84, + -1.24 + ], + [ + -73.83, + -1.24 + ], + [ + -73.82, + -1.24 + ], + [ + -73.8, + -1.25 + ], + [ + -73.78, + -1.26 + ], + [ + -73.76, + -1.26 + ], + [ + -73.76, + -1.25 + ], + [ + -73.76, + -1.24 + ], + [ + -73.74, + -1.23 + ], + [ + -73.73, + -1.25 + ], + [ + -73.71, + -1.25 + ], + [ + -73.7, + -1.25 + ], + [ + -73.69, + -1.24 + ], + [ + -73.66, + -1.25 + ], + [ + -73.64, + -1.27 + ], + [ + -73.63, + -1.27 + ], + [ + -73.62, + -1.27 + ], + [ + -73.62, + -1.28 + ], + [ + -73.62, + -1.3 + ], + [ + -73.61, + -1.32 + ], + [ + -73.58, + -1.32 + ], + [ + -73.57, + -1.33 + ], + [ + -73.58, + -1.34 + ], + [ + -73.58, + -1.35 + ], + [ + -73.57, + -1.37 + ], + [ + -73.56, + -1.38 + ], + [ + -73.55, + -1.4 + ], + [ + -73.55, + -1.41 + ], + [ + -73.57, + -1.43 + ], + [ + -73.55, + -1.43 + ], + [ + -73.54, + -1.43 + ], + [ + -73.53, + -1.44 + ], + [ + -73.53, + -1.47 + ], + [ + -73.51, + -1.48 + ], + [ + -73.5, + -1.48 + ], + [ + -73.49, + -1.49 + ], + [ + -73.49, + -1.52 + ], + [ + -73.48, + -1.53 + ], + [ + -73.48, + -1.54 + ], + [ + -73.48, + -1.55 + ], + [ + -73.49, + -1.58 + ], + [ + -73.48, + -1.58 + ], + [ + -73.47, + -1.6 + ], + [ + -73.49, + -1.61 + ], + [ + -73.5, + -1.62 + ], + [ + -73.51, + -1.63 + ], + [ + -73.52, + -1.66 + ], + [ + -73.52, + -1.67 + ], + [ + -73.54, + -1.68 + ], + [ + -73.54, + -1.69 + ], + [ + -73.53, + -1.71 + ], + [ + -73.51, + -1.72 + ], + [ + -73.49, + -1.73 + ], + [ + -73.46, + -1.74 + ], + [ + -73.45, + -1.74 + ], + [ + -73.44, + -1.76 + ], + [ + -73.43, + -1.77 + ], + [ + -73.43, + -1.79 + ], + [ + -73.41, + -1.79 + ], + [ + -73.4, + -1.78 + ], + [ + -73.38, + -1.78 + ], + [ + -73.37, + -1.79 + ], + [ + -73.35, + -1.8 + ], + [ + -73.34, + -1.8 + ], + [ + -73.33, + -1.82 + ], + [ + -73.32, + -1.82 + ], + [ + -73.32, + -1.83 + ], + [ + -73.3, + -1.83 + ], + [ + -73.31, + -1.81 + ], + [ + -73.31, + -1.79 + ], + [ + -73.28, + -1.78 + ], + [ + -73.26, + -1.78 + ], + [ + -73.25, + -1.81 + ], + [ + -73.23, + -1.8 + ], + [ + -73.23, + -1.79 + ], + [ + -73.23, + -1.76 + ], + [ + -73.2, + -1.78 + ], + [ + -73.19, + -1.79 + ], + [ + -73.18, + -1.8 + ], + [ + -73.16, + -1.8 + ], + [ + -73.14, + -1.81 + ], + [ + -73.15, + -1.83 + ], + [ + -73.15, + -1.85 + ], + [ + -73.15, + -1.86 + ], + [ + -73.14, + -1.87 + ], + [ + -73.13, + -1.87 + ], + [ + -73.12, + -1.87 + ], + [ + -73.11, + -1.89 + ], + [ + -73.11, + -1.9 + ], + [ + -73.12, + -1.91 + ], + [ + -73.12, + -1.92 + ], + [ + -73.11, + -1.95 + ], + [ + -73.11, + -1.96 + ], + [ + -73.12, + -1.97 + ], + [ + -73.12, + -1.98 + ], + [ + -73.13, + -1.99 + ], + [ + -73.13, + -2 + ], + [ + -73.12, + -2 + ], + [ + -73.11, + -2.02 + ], + [ + -73.1, + -2.03 + ], + [ + -73.1, + -2.05 + ], + [ + -73.11, + -2.07 + ], + [ + -73.1, + -2.08 + ], + [ + -73.09, + -2.08 + ], + [ + -73.09, + -2.11 + ], + [ + -73.1, + -2.12 + ], + [ + -73.11, + -2.13 + ], + [ + -73.12, + -2.14 + ], + [ + -73.12, + -2.17 + ], + [ + -73.15, + -2.19 + ], + [ + -73.17, + -2.2 + ], + [ + -73.17, + -2.23 + ], + [ + -73.16, + -2.24 + ], + [ + -73.16, + -2.26 + ], + [ + -73.15, + -2.26 + ], + [ + -73.13, + -2.28 + ], + [ + -73.12, + -2.31 + ], + [ + -73.11, + -2.33 + ], + [ + -73.09, + -2.33 + ], + [ + -73.07, + -2.35 + ], + [ + -73.06, + -2.36 + ], + [ + -73.05, + -2.36 + ], + [ + -73.04, + -2.35 + ], + [ + -73.04, + -2.33 + ], + [ + -73.04, + -2.32 + ], + [ + -73.03, + -2.32 + ], + [ + -73.02, + -2.34 + ], + [ + -73.01, + -2.36 + ], + [ + -73, + -2.36 + ], + [ + -72.98, + -2.35 + ], + [ + -72.95, + -2.35 + ], + [ + -72.96, + -2.35 + ], + [ + -72.96, + -2.36 + ], + [ + -72.96, + -2.37 + ], + [ + -72.96, + -2.39 + ], + [ + -72.95, + -2.4 + ], + [ + -72.95, + -2.41 + ], + [ + -72.93, + -2.42 + ], + [ + -72.94, + -2.45 + ], + [ + -72.93, + -2.46 + ], + [ + -72.91, + -2.44 + ], + [ + -72.9, + -2.43 + ], + [ + -72.87, + -2.44 + ], + [ + -72.85, + -2.44 + ], + [ + -72.83, + -2.42 + ], + [ + -72.8, + -2.41 + ], + [ + -72.78, + -2.39 + ], + [ + -72.76, + -2.4 + ], + [ + -72.75, + -2.43 + ], + [ + -72.74, + -2.42 + ], + [ + -72.73, + -2.42 + ], + [ + -72.73, + -2.4 + ], + [ + -72.7, + -2.39 + ], + [ + -72.69, + -2.41 + ], + [ + -72.69, + -2.42 + ], + [ + -72.69, + -2.45 + ], + [ + -72.67, + -2.44 + ], + [ + -72.67, + -2.43 + ], + [ + -72.66, + -2.42 + ], + [ + -72.66, + -2.41 + ], + [ + -72.64, + -2.37 + ], + [ + -72.63, + -2.36 + ], + [ + -72.61, + -2.36 + ], + [ + -72.6, + -2.37 + ], + [ + -72.59, + -2.37 + ], + [ + -72.56, + -2.4 + ], + [ + -72.55, + -2.4 + ], + [ + -72.53, + -2.41 + ], + [ + -72.5, + -2.41 + ], + [ + -72.48, + -2.42 + ], + [ + -72.45, + -2.43 + ], + [ + -72.44, + -2.43 + ], + [ + -72.42, + -2.43 + ], + [ + -72.41, + -2.42 + ], + [ + -72.4, + -2.43 + ], + [ + -72.38, + -2.45 + ], + [ + -72.38, + -2.47 + ], + [ + -72.36, + -2.49 + ], + [ + -72.35, + -2.48 + ], + [ + -72.3, + -2.47 + ], + [ + -72.29, + -2.47 + ], + [ + -72.28, + -2.45 + ], + [ + -72.27, + -2.46 + ], + [ + -72.26, + -2.45 + ], + [ + -72.25, + -2.43 + ], + [ + -72.2, + -2.45 + ], + [ + -72.19, + -2.44 + ], + [ + -72.17, + -2.43 + ], + [ + -72.16, + -2.45 + ], + [ + -72.17, + -2.47 + ], + [ + -72.15, + -2.47 + ], + [ + -72.14, + -2.45 + ], + [ + -72.13, + -2.42 + ], + [ + -72.12, + -2.4 + ], + [ + -72.1, + -2.39 + ], + [ + -72.09, + -2.38 + ], + [ + -72.08, + -2.37 + ], + [ + -72.02, + -2.35 + ], + [ + -72.01, + -2.36 + ], + [ + -71.99, + -2.37 + ], + [ + -71.98, + -2.37 + ], + [ + -71.97, + -2.37 + ], + [ + -71.96, + -2.36 + ], + [ + -71.94, + -2.36 + ], + [ + -71.93, + -2.38 + ], + [ + -71.92, + -2.36 + ], + [ + -71.94, + -2.34 + ], + [ + -71.94, + -2.33 + ], + [ + -71.94, + -2.32 + ], + [ + -71.91, + -2.31 + ], + [ + -71.9, + -2.31 + ], + [ + -71.89, + -2.31 + ], + [ + -71.88, + -2.31 + ], + [ + -71.87, + -2.29 + ], + [ + -71.86, + -2.28 + ], + [ + -71.86, + -2.25 + ], + [ + -71.84, + -2.21 + ], + [ + -71.84, + -2.2 + ], + [ + -71.83, + -2.19 + ], + [ + -71.79, + -2.19 + ], + [ + -71.76, + -2.17 + ], + [ + -71.75, + -2.17 + ], + [ + -71.74, + -2.14 + ], + [ + -71.73, + -2.14 + ], + [ + -71.72, + -2.15 + ], + [ + -71.72, + -2.17 + ], + [ + -71.72, + -2.19 + ], + [ + -71.73, + -2.21 + ], + [ + -71.72, + -2.23 + ], + [ + -71.7, + -2.23 + ], + [ + -71.67, + -2.2 + ], + [ + -71.65, + -2.2 + ], + [ + -71.64, + -2.2 + ], + [ + -71.62, + -2.22 + ], + [ + -71.61, + -2.23 + ], + [ + -71.59, + -2.24 + ], + [ + -71.53, + -2.25 + ], + [ + -71.52, + -2.25 + ], + [ + -71.51, + -2.32 + ], + [ + -71.51, + -2.35 + ], + [ + -71.5, + -2.36 + ], + [ + -71.48, + -2.35 + ], + [ + -71.48, + -2.34 + ], + [ + -71.48, + -2.32 + ], + [ + -71.49, + -2.31 + ], + [ + -71.49, + -2.27 + ], + [ + -71.48, + -2.27 + ], + [ + -71.47, + -2.27 + ], + [ + -71.46, + -2.28 + ], + [ + -71.45, + -2.28 + ], + [ + -71.45, + -2.29 + ], + [ + -71.43, + -2.31 + ], + [ + -71.42, + -2.33 + ], + [ + -71.41, + -2.34 + ], + [ + -71.4, + -2.35 + ], + [ + -71.4, + -2.37 + ], + [ + -71.4, + -2.38 + ], + [ + -71.4, + -2.4 + ], + [ + -71.38, + -2.4 + ], + [ + -71.36, + -2.38 + ], + [ + -71.33, + -2.38 + ], + [ + -71.32, + -2.38 + ], + [ + -71.31, + -2.37 + ], + [ + -71.31, + -2.36 + ], + [ + -71.28, + -2.36 + ], + [ + -71.29, + -2.39 + ], + [ + -71.27, + -2.39 + ], + [ + -71.26, + -2.36 + ], + [ + -71.25, + -2.34 + ], + [ + -71.22, + -2.34 + ], + [ + -71.22, + -2.35 + ], + [ + -71.21, + -2.36 + ], + [ + -71.19, + -2.38 + ], + [ + -71.17, + -2.38 + ], + [ + -71.17, + -2.37 + ], + [ + -71.17, + -2.35 + ], + [ + -71.17, + -2.34 + ], + [ + -71.16, + -2.33 + ], + [ + -71.14, + -2.34 + ], + [ + -71.13, + -2.33 + ], + [ + -71.13, + -2.32 + ], + [ + -71.14, + -2.31 + ], + [ + -71.14, + -2.3 + ], + [ + -71.13, + -2.28 + ], + [ + -71.11, + -2.28 + ], + [ + -71.1, + -2.28 + ], + [ + -71.08, + -2.28 + ], + [ + -71.07, + -2.27 + ], + [ + -71.05, + -2.27 + ], + [ + -71.03, + -2.28 + ], + [ + -71.02, + -2.3 + ], + [ + -71, + -2.31 + ], + [ + -70.99, + -2.3 + ], + [ + -71, + -2.27 + ], + [ + -71.01, + -2.25 + ], + [ + -71.02, + -2.23 + ], + [ + -71.02, + -2.22 + ], + [ + -71.01, + -2.21 + ], + [ + -70.99, + -2.21 + ], + [ + -70.96, + -2.23 + ], + [ + -70.96, + -2.24 + ], + [ + -70.95, + -2.25 + ], + [ + -70.94, + -2.25 + ], + [ + -70.92, + -2.25 + ], + [ + -70.91, + -2.23 + ], + [ + -70.89, + -2.22 + ], + [ + -70.86, + -2.23 + ], + [ + -70.85, + -2.24 + ], + [ + -70.84, + -2.27 + ], + [ + -70.84, + -2.28 + ], + [ + -70.84, + -2.29 + ], + [ + -70.8, + -2.3 + ], + [ + -70.79, + -2.29 + ], + [ + -70.77, + -2.3 + ], + [ + -70.76, + -2.31 + ], + [ + -70.73, + -2.33 + ], + [ + -70.72, + -2.34 + ], + [ + -70.7, + -2.34 + ], + [ + -70.69, + -2.34 + ], + [ + -70.67, + -2.35 + ], + [ + -70.66, + -2.36 + ], + [ + -70.68, + -2.39 + ], + [ + -70.68, + -2.41 + ], + [ + -70.66, + -2.41 + ], + [ + -70.64, + -2.41 + ], + [ + -70.63, + -2.41 + ], + [ + -70.63, + -2.42 + ], + [ + -70.63, + -2.43 + ], + [ + -70.64, + -2.44 + ], + [ + -70.63, + -2.47 + ], + [ + -70.62, + -2.48 + ], + [ + -70.56, + -2.47 + ], + [ + -70.55, + -2.46 + ], + [ + -70.55, + -2.42 + ], + [ + -70.53, + -2.45 + ], + [ + -70.52, + -2.46 + ], + [ + -70.51, + -2.48 + ], + [ + -70.5, + -2.47 + ], + [ + -70.48, + -2.46 + ], + [ + -70.45, + -2.48 + ], + [ + -70.44, + -2.51 + ], + [ + -70.43, + -2.52 + ], + [ + -70.41, + -2.52 + ], + [ + -70.39, + -2.5 + ], + [ + -70.38, + -2.5 + ], + [ + -70.36, + -2.49 + ], + [ + -70.35, + -2.49 + ], + [ + -70.33, + -2.5 + ], + [ + -70.3, + -2.51 + ], + [ + -70.3, + -2.53 + ], + [ + -70.31, + -2.53 + ], + [ + -70.33, + -2.54 + ], + [ + -70.36, + -2.56 + ], + [ + -70.35, + -2.57 + ], + [ + -70.33, + -2.58 + ], + [ + -70.32, + -2.58 + ], + [ + -70.3, + -2.57 + ], + [ + -70.29, + -2.57 + ], + [ + -70.29, + -2.56 + ], + [ + -70.26, + -2.55 + ], + [ + -70.24, + -2.56 + ], + [ + -70.23, + -2.57 + ], + [ + -70.23, + -2.64 + ], + [ + -70.22, + -2.65 + ], + [ + -70.21, + -2.66 + ], + [ + -70.19, + -2.66 + ], + [ + -70.19, + -2.64 + ], + [ + -70.17, + -2.63 + ], + [ + -70.16, + -2.65 + ], + [ + -70.16, + -2.66 + ], + [ + -70.16, + -2.67 + ], + [ + -70.15, + -2.69 + ], + [ + -70.14, + -2.7 + ], + [ + -70.12, + -2.7 + ], + [ + -70.11, + -2.69 + ], + [ + -70.11, + -2.67 + ], + [ + -70.1, + -2.66 + ], + [ + -70.09, + -2.65 + ], + [ + -70.08, + -2.66 + ], + [ + -70.07, + -2.67 + ], + [ + -70.06, + -2.75 + ], + [ + -70.71, + -3.8 + ], + [ + -70.62, + -3.84 + ], + [ + -70.6, + -3.89 + ], + [ + -70.49, + -3.88 + ], + [ + -70.4, + -3.84 + ], + [ + -70.39, + -3.84 + ], + [ + -70.32, + -3.81 + ], + [ + -70.31, + -3.81 + ], + [ + -70.24, + -3.93 + ], + [ + -70.17, + -3.97 + ], + [ + -70.15, + -4.01 + ], + [ + -70.14, + -4.02 + ], + [ + -70.13, + -4.03 + ], + [ + -70.12, + -4.04 + ], + [ + -70.08, + -4.07 + ], + [ + -70.07, + -4.08 + ], + [ + -70.06, + -4.08 + ], + [ + -70.06, + -4.09 + ], + [ + -70.05, + -4.12 + ], + [ + -70.04, + -4.13 + ], + [ + -69.95, + -4.25 + ], + [ + -69.95, + -4.26 + ], + [ + -69.95, + -4.3 + ], + [ + -69.96, + -4.32 + ], + [ + -69.98, + -4.34 + ], + [ + -70.03, + -4.37 + ], + [ + -70.04, + -4.33 + ], + [ + -70.06, + -4.33 + ], + [ + -70.08, + -4.31 + ], + [ + -70.04, + -4.3 + ], + [ + -70.05, + -4.29 + ], + [ + -70.06, + -4.3 + ], + [ + -70.07, + -4.29 + ], + [ + -70.08, + -4.29 + ], + [ + -70.09, + -4.29 + ], + [ + -70.1, + -4.28 + ], + [ + -70.1, + -4.27 + ], + [ + -70.1, + -4.26 + ], + [ + -70.11, + -4.26 + ], + [ + -70.12, + -4.27 + ], + [ + -70.11, + -4.28 + ], + [ + -70.12, + -4.29 + ], + [ + -70.14, + -4.28 + ], + [ + -70.16, + -4.28 + ], + [ + -70.16, + -4.29 + ], + [ + -70.17, + -4.31 + ], + [ + -70.16, + -4.31 + ], + [ + -70.15, + -4.32 + ], + [ + -70.17, + -4.33 + ], + [ + -70.18, + -4.35 + ], + [ + -70.2, + -4.34 + ], + [ + -70.21, + -4.32 + ], + [ + -70.22, + -4.3 + ], + [ + -70.26, + -4.31 + ], + [ + -70.27, + -4.29 + ], + [ + -70.25, + -4.29 + ], + [ + -70.25, + -4.28 + ], + [ + -70.28, + -4.28 + ], + [ + -70.31, + -4.26 + ], + [ + -70.31, + -4.25 + ], + [ + -70.29, + -4.24 + ], + [ + -70.28, + -4.22 + ], + [ + -70.28, + -4.21 + ], + [ + -70.29, + -4.18 + ], + [ + -70.29, + -4.17 + ], + [ + -70.31, + -4.16 + ], + [ + -70.31, + -4.15 + ], + [ + -70.32, + -4.14 + ], + [ + -70.33, + -4.16 + ], + [ + -70.34, + -4.18 + ], + [ + -70.36, + -4.15 + ], + [ + -70.76, + -4.16 + ], + [ + -70.94, + -4.38 + ], + [ + -71.91, + -4.52 + ], + [ + -72.87, + -5.14 + ], + [ + -72.96, + -5.66 + ], + [ + -73.24, + -6.04 + ], + [ + -73.14, + -6.51 + ], + [ + -73.71, + -6.84 + ], + [ + -73.8, + -7.12 + ], + [ + -73.7, + -7.31 + ], + [ + -73.95, + -7.36 + ], + [ + -73.98, + -7.53 + ], + [ + -73.68, + -7.78 + ], + [ + -73.77, + -7.91 + ], + [ + -73.54, + -8.35 + ], + [ + -72.94, + -8.98 + ], + [ + -73.2, + -9.41 + ], + [ + -72.36, + -9.49 + ], + [ + -72.15, + -9.8 + ], + [ + -72.18, + -10 + ], + [ + -71.2, + -9.96 + ], + [ + -70.51, + -9.45 + ], + [ + -70.51, + -9.46 + ], + [ + -70.51, + -9.49 + ], + [ + -70.52, + -9.5 + ], + [ + -70.53, + -9.52 + ], + [ + -70.53, + -9.51 + ], + [ + -70.55, + -9.54 + ], + [ + -70.56, + -9.53 + ], + [ + -70.57, + -9.55 + ], + [ + -70.58, + -9.56 + ], + [ + -70.6, + -9.56 + ], + [ + -70.62, + -11 + ], + [ + -69.59, + -10.95 + ], + [ + -69.59, + -10.94 + ], + [ + -69.57, + -10.95 + ], + [ + -68.66, + -12.49 + ], + [ + -68.65, + -12.5 + ], + [ + -68.66, + -12.54 + ], + [ + -68.66, + -12.53 + ], + [ + -68.68, + -12.56 + ], + [ + -68.69, + -12.56 + ], + [ + -68.87, + -12.87 + ], + [ + -68.9, + -13.46 + ], + [ + -69.07, + -13.67 + ], + [ + -68.83, + -14.22 + ], + [ + -68.99, + -14.24 + ], + [ + -69.26, + -14.68 + ], + [ + -69.25, + -14.69 + ], + [ + -69.25, + -14.76 + ], + [ + -69.29, + -14.77 + ], + [ + -69.34, + -14.79 + ], + [ + -69.35, + -14.79 + ], + [ + -69.12, + -15.26 + ], + [ + -69.33, + -15.54 + ], + [ + -69.7, + -15.23 + ], + [ + -69.89, + -15.28 + ], + [ + -69.92, + -15.45 + ], + [ + -69.7, + -15.71 + ], + [ + -69.92, + -15.56 + ], + [ + -70.02, + -15.83 + ], + [ + -69.79, + -15.93 + ], + [ + -69.83, + -15.78 + ], + [ + -69.74, + -15.94 + ], + [ + -69.48, + -15.98 + ], + [ + -69.52, + -16.2 + ], + [ + -69.08, + -16.22 + ], + [ + -68.96, + -16.2 + ], + [ + -69.08, + -16.26 + ], + [ + -69.04, + -16.56 + ], + [ + -69.03, + -16.59 + ], + [ + -69.03, + -16.61 + ], + [ + -69.02, + -16.64 + ], + [ + -69.02, + -16.67 + ], + [ + -69.64, + -17.28 + ], + [ + -69.47, + -17.5 + ], + [ + -69.64, + -17.64 + ], + [ + -69.66, + -17.65 + ], + [ + -69.83, + -17.71 + ], + [ + -69.86, + -18.17 + ], + [ + -70.38, + -18.35 + ], + [ + -71.38, + -17.71 + ], + [ + -71.47, + -17.3 + ], + [ + -72.11, + -17.02 + ], + [ + -72.42, + -16.7 + ], + [ + -73.7, + -16.24 + ], + [ + -75.14, + -15.41 + ], + [ + -76.27, + -14.2 + ], + [ + -76.28, + -13.91 + ], + [ + -76.4, + -13.89 + ], + [ + -76.25, + -13.85 + ], + [ + -76.21, + -13.38 + ], + [ + -76.8, + -12.36 + ], + [ + -77.17, + -12.07 + ], + [ + -77.21, + -11.65 + ], + [ + -77.65, + -11.3 + ], + [ + -77.66, + -10.95 + ], + [ + -78.19, + -10.11 + ], + [ + -78.98, + -8.21 + ], + [ + -79.47, + -7.72 + ], + [ + -79.98, + -6.75 + ], + [ + -81.15, + -5.98 + ], + [ + -81.08, + -5.79 + ], + [ + -80.85, + -5.83 + ], + [ + -80.85, + -5.62 + ], + [ + -81.2, + -5.21 + ], + [ + -81.06, + -5.03 + ], + [ + -81.33, + -4.68 + ], + [ + -81.25, + -4.27 + ], + [ + -80.5, + -3.51 + ], + [ + -80.22, + -3.44 + ] + ], + [ + [ + -70.92, + -3.93 + ], + [ + -71.01, + -3.95 + ], + [ + -70.77, + -3.92 + ], + [ + -70.92, + -3.93 + ] + ], + [ + [ + -73.17, + -3.71 + ], + [ + -73.26, + -3.69 + ], + [ + -73.16, + -3.89 + ], + [ + -73.17, + -3.71 + ] + ], + [ + [ + -73.15, + -4.05 + ], + [ + -73.17, + -4.08 + ], + [ + -73.15, + -4.06 + ], + [ + -73.15, + -4.05 + ] + ], + [ + [ + -73.11, + -3.58 + ], + [ + -73.04, + -3.5 + ], + [ + -72.73, + -3.49 + ], + [ + -72.7, + -3.4 + ], + [ + -73.04, + -3.5 + ], + [ + -73.11, + -3.58 + ], + [ + -73.12, + -3.58 + ], + [ + -73.11, + -3.58 + ] + ], + [ + [ + -72.03, + -3.43 + ], + [ + -72.46, + -3.51 + ], + [ + -72.22, + -3.58 + ], + [ + -72.03, + -3.43 + ] + ], + [ + [ + -76.65, + -4.43 + ], + [ + -76.44, + -4.78 + ], + [ + -76.44, + -4.51 + ], + [ + -76.65, + -4.43 + ] + ] + ], + [ + [ + [ + -73.75, + -1.22 + ], + [ + -73.75, + -1.21 + ], + [ + -73.74, + -1.21 + ], + [ + -73.74, + -1.22 + ], + [ + -73.75, + -1.22 + ] + ] + ], + [ + [ + [ + -70.57, + -2.44 + ], + [ + -70.58, + -2.44 + ], + [ + -70.56, + -2.42 + ], + [ + -70.55, + -2.42 + ], + [ + -70.57, + -2.44 + ] + ] + ], + [ + [ + [ + -70.61, + -3.83 + ], + [ + -70.59, + -3.82 + ], + [ + -70.58, + -3.82 + ], + [ + -70.57, + -3.82 + ], + [ + -70.55, + -3.84 + ], + [ + -70.55, + -3.85 + ], + [ + -70.54, + -3.87 + ], + [ + -70.61, + -3.83 + ] + ] + ], + [ + [ + [ + -70.42, + -3.83 + ], + [ + -70.4, + -3.83 + ], + [ + -70.39, + -3.84 + ], + [ + -70.4, + -3.84 + ], + [ + -70.42, + -3.83 + ] + ] + ], + [ + [ + [ + -70.01, + -4.16 + ], + [ + -70, + -4.16 + ], + [ + -69.98, + -4.18 + ], + [ + -69.97, + -4.2 + ], + [ + -70.01, + -4.16 + ] + ] + ], + [ + [ + [ + -70.56, + -9.56 + ], + [ + -70.55, + -9.57 + ], + [ + -70.56, + -9.58 + ], + [ + -70.58, + -9.56 + ], + [ + -70.56, + -9.56 + ] + ] + ] + ] + }, + "properties": { + "A3": "PER" + } + }, + { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + 52, + 19 + ], + [ + 55, + 20 + ], + [ + 55.67, + 22 + ], + [ + 55.21, + 22.71 + ], + [ + 55.23, + 23.11 + ], + [ + 55.57, + 23.63 + ], + [ + 55.49, + 23.94 + ], + [ + 56.02, + 24.07 + ], + [ + 55.95, + 24.22 + ], + [ + 55.75, + 24.23 + ], + [ + 55.81, + 24.91 + ], + [ + 56.01, + 24.99 + ], + [ + 56.12, + 24.73 + ], + [ + 56.38, + 24.98 + ], + [ + 56.58, + 24.51 + ], + [ + 57.07, + 24 + ], + [ + 58.75, + 23.52 + ], + [ + 59.5, + 22.55 + ], + [ + 59.8, + 22.54 + ], + [ + 59.81, + 22.23 + ], + [ + 59.34, + 21.43 + ], + [ + 58.66, + 20.79 + ], + [ + 58.52, + 20.42 + ], + [ + 58.21, + 20.4 + ], + [ + 58.31, + 20.55 + ], + [ + 58.18, + 20.62 + ], + [ + 57.82, + 20.2 + ], + [ + 57.68, + 19.71 + ], + [ + 57.81, + 18.97 + ], + [ + 56.79, + 18.74 + ], + [ + 56.35, + 17.92 + ], + [ + 55.43, + 17.82 + ], + [ + 55.23, + 17.53 + ], + [ + 55.26, + 17.24 + ], + [ + 55.02, + 17 + ], + [ + 54.18, + 17.02 + ], + [ + 53.11, + 16.65 + ], + [ + 52, + 19 + ] + ] + ], + [ + [ + [ + 56.27, + 25.63 + ], + [ + 56.15, + 25.67 + ], + [ + 56.08, + 26.05 + ], + [ + 56.21, + 26.26 + ], + [ + 56.22, + 26.2 + ], + [ + 56.42, + 26.21 + ], + [ + 56.3, + 26.21 + ], + [ + 56.38, + 26.39 + ], + [ + 56.51, + 26.36 + ], + [ + 56.4, + 26.28 + ], + [ + 56.49, + 26.13 + ], + [ + 56.33, + 26.16 + ], + [ + 56.48, + 26.08 + ], + [ + 56.27, + 25.63 + ] + ] + ], + [ + [ + [ + 58.8, + 20.37 + ], + [ + 58.64, + 20.16 + ], + [ + 58.9, + 20.7 + ], + [ + 58.96, + 20.52 + ], + [ + 58.8, + 20.37 + ] + ] + ] + ] + }, + "properties": { + "A3": "OMN" + } + }, + { + "type": "Feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + 26.63, + 48.26 + ], + [ + 26.83, + 48.3 + ], + [ + 26.72, + 48.4 + ], + [ + 26.71, + 48.4 + ], + [ + 27.07, + 48.43 + ], + [ + 27.46, + 48.43 + ], + [ + 27.53, + 48.47 + ], + [ + 27.54, + 48.47 + ], + [ + 27.55, + 48.48 + ], + [ + 27.56, + 48.48 + ], + [ + 27.58, + 48.49 + ], + [ + 27.6, + 48.49 + ], + [ + 27.6, + 48.48 + ], + [ + 27.6, + 48.47 + ], + [ + 27.59, + 48.46 + ], + [ + 27.6, + 48.46 + ], + [ + 27.64, + 48.44 + ], + [ + 27.65, + 48.44 + ], + [ + 27.68, + 48.44 + ], + [ + 27.69, + 48.44 + ], + [ + 27.73, + 48.45 + ], + [ + 27.74, + 48.46 + ], + [ + 27.75, + 48.46 + ], + [ + 27.76, + 48.46 + ], + [ + 27.79, + 48.45 + ], + [ + 27.79, + 48.44 + ], + [ + 27.81, + 48.43 + ], + [ + 27.82, + 48.43 + ], + [ + 27.83, + 48.42 + ], + [ + 27.84, + 48.42 + ], + [ + 27.86, + 48.41 + ], + [ + 27.88, + 48.4 + ], + [ + 27.88, + 48.37 + ], + [ + 27.9, + 48.36 + ], + [ + 27.9, + 48.35 + ], + [ + 27.92, + 48.34 + ], + [ + 27.93, + 48.34 + ], + [ + 27.97, + 48.32 + ], + [ + 27.98, + 48.33 + ], + [ + 28, + 48.33 + ], + [ + 28.03, + 48.33 + ], + [ + 28.05, + 48.33 + ], + [ + 28.07, + 48.32 + ], + [ + 28.08, + 48.31 + ], + [ + 28.09, + 48.27 + ], + [ + 28.08, + 48.26 + ], + [ + 28.08, + 48.24 + ], + [ + 28.09, + 48.23 + ], + [ + 28.12, + 48.24 + ], + [ + 28.13, + 48.24 + ], + [ + 28.14, + 48.25 + ], + [ + 28.14, + 48.26 + ], + [ + 28.17, + 48.26 + ], + [ + 28.18, + 48.26 + ], + [ + 28.19, + 48.25 + ], + [ + 28.18, + 48.23 + ], + [ + 28.18, + 48.22 + ], + [ + 28.19, + 48.21 + ], + [ + 28.2, + 48.21 + ], + [ + 28.22, + 48.21 + ], + [ + 28.23, + 48.21 + ], + [ + 28.24, + 48.21 + ], + [ + 28.26, + 48.22 + ], + [ + 28.27, + 48.23 + ], + [ + 28.28, + 48.23 + ], + [ + 28.3, + 48.24 + ], + [ + 28.33, + 48.24 + ], + [ + 28.36, + 48.24 + ], + [ + 28.37, + 48.23 + ], + [ + 28.37, + 48.22 + ], + [ + 28.37, + 48.2 + ], + [ + 28.36, + 48.2 + ], + [ + 28.36, + 48.19 + ], + [ + 28.35, + 48.18 + ], + [ + 28.34, + 48.18 + ], + [ + 28.33, + 48.17 + ], + [ + 28.32, + 48.17 + ], + [ + 28.31, + 48.16 + ], + [ + 28.31, + 48.15 + ], + [ + 28.32, + 48.13 + ], + [ + 28.34, + 48.13 + ], + [ + 28.35, + 48.14 + ], + [ + 28.36, + 48.15 + ], + [ + 28.37, + 48.15 + ], + [ + 28.37, + 48.16 + ], + [ + 28.38, + 48.17 + ], + [ + 28.41, + 48.18 + ], + [ + 28.42, + 48.18 + ], + [ + 28.43, + 48.17 + ], + [ + 28.44, + 48.16 + ], + [ + 28.44, + 48.15 + ], + [ + 28.43, + 48.14 + ], + [ + 28.43, + 48.13 + ], + [ + 28.43, + 48.11 + ], + [ + 28.44, + 48.11 + ], + [ + 28.44, + 48.1 + ], + [ + 28.44, + 48.09 + ], + [ + 28.45, + 48.09 + ], + [ + 28.47, + 48.07 + ], + [ + 28.48, + 48.07 + ], + [ + 28.5, + 48.07 + ], + [ + 28.5, + 48.09 + ], + [ + 28.5, + 48.1 + ], + [ + 28.49, + 48.12 + ], + [ + 28.5, + 48.12 + ], + [ + 29.18, + 47.99 + ], + [ + 29.27, + 47.78 + ], + [ + 29.26, + 47.78 + ], + [ + 29.2, + 47.72 + ], + [ + 29.21, + 47.71 + ], + [ + 29.22, + 47.71 + ], + [ + 29.22, + 47.7 + ], + [ + 29.22, + 47.69 + ], + [ + 29.22, + 47.68 + ], + [ + 29.21, + 47.61 + ], + [ + 29.17, + 47.57 + ], + [ + 29.16, + 47.57 + ], + [ + 29.17, + 47.51 + ], + [ + 29.18, + 47.52 + ], + [ + 29.19, + 47.52 + ], + [ + 29.18, + 47.51 + ], + [ + 29.19, + 47.51 + ], + [ + 29.19, + 47.48 + ], + [ + 29.19, + 47.46 + ], + [ + 29.2, + 47.43 + ], + [ + 29.21, + 47.44 + ], + [ + 29.26, + 47.43 + ], + [ + 29.29, + 47.44 + ], + [ + 29.3, + 47.44 + ], + [ + 29.32, + 47.45 + ], + [ + 29.32, + 47.43 + ], + [ + 29.32, + 47.42 + ], + [ + 29.33, + 47.41 + ], + [ + 29.33, + 47.4 + ], + [ + 29.43, + 47.29 + ], + [ + 29.57, + 47.37 + ], + [ + 29.56, + 46.96 + ], + [ + 29.62, + 46.95 + ], + [ + 29.74, + 46.9 + ], + [ + 29.75, + 46.86 + ], + [ + 29.76, + 46.86 + ], + [ + 29.78, + 46.87 + ], + [ + 29.89, + 46.87 + ], + [ + 29.89, + 46.86 + ], + [ + 29.97, + 46.75 + ], + [ + 29.97, + 46.74 + ], + [ + 29.97, + 46.72 + ], + [ + 29.97, + 46.71 + ], + [ + 29.97, + 46.7 + ], + [ + 29.95, + 46.66 + ], + [ + 29.95, + 46.64 + ], + [ + 29.95, + 46.59 + ], + [ + 29.88, + 46.55 + ], + [ + 29.88, + 46.54 + ], + [ + 29.89, + 46.55 + ], + [ + 29.95, + 46.5 + ], + [ + 29.99, + 46.5 + ], + [ + 29.99, + 46.49 + ], + [ + 29.99, + 46.48 + ], + [ + 30.01, + 46.47 + ], + [ + 30.03, + 46.44 + ], + [ + 30.04, + 46.44 + ], + [ + 30.06, + 46.44 + ], + [ + 30.08, + 46.42 + ], + [ + 30.08, + 46.43 + ], + [ + 30.1, + 46.44 + ], + [ + 30.1, + 46.43 + ], + [ + 30.12, + 46.43 + ], + [ + 30.13, + 46.42 + ], + [ + 30.16, + 46.42 + ], + [ + 30.1, + 46.38 + ], + [ + 29.94, + 46.4 + ], + [ + 29.89, + 46.35 + ], + [ + 29.74, + 46.47 + ], + [ + 29.6, + 46.35 + ], + [ + 29.49, + 46.43 + ], + [ + 29.49, + 46.44 + ], + [ + 29.36, + 46.5 + ], + [ + 29.27, + 46.41 + ], + [ + 29.27, + 46.4 + ], + [ + 29.23, + 46.43 + ], + [ + 29.23, + 46.44 + ], + [ + 29.24, + 46.56 + ], + [ + 28.98, + 46.49 + ], + [ + 29, + 46.32 + ], + [ + 28.98, + 46 + ], + [ + 28.59, + 45.74 + ], + [ + 28.43, + 45.49 + ], + [ + 28.42, + 45.5 + ], + [ + 28.28, + 45.53 + ], + [ + 28.26, + 45.52 + ], + [ + 28.24, + 45.5 + ], + [ + 28.23, + 45.49 + ], + [ + 28.23, + 45.48 + ], + [ + 28.22, + 45.48 + ], + [ + 28.21, + 45.47 + ], + [ + 28.19, + 45.48 + ], + [ + 28.16, + 45.51 + ], + [ + 28.16, + 45.54 + ], + [ + 28.17, + 45.54 + ], + [ + 28.15, + 45.57 + ], + [ + 28.14, + 45.57 + ], + [ + 28.14, + 45.58 + ], + [ + 28.13, + 45.57 + ], + [ + 28.13, + 45.58 + ], + [ + 28.1, + 45.59 + ], + [ + 28.17, + 45.65 + ], + [ + 28.17, + 45.67 + ], + [ + 28.17, + 45.68 + ], + [ + 28.16, + 45.71 + ], + [ + 28.17, + 45.71 + ], + [ + 28.16, + 45.72 + ], + [ + 28.17, + 45.72 + ], + [ + 28.17, + 45.74 + ], + [ + 28.16, + 45.74 + ], + [ + 28.15, + 45.77 + ], + [ + 28.15, + 45.78 + ], + [ + 28.12, + 45.79 + ], + [ + 28.12, + 45.81 + ], + [ + 28.11, + 45.82 + ], + [ + 28.11, + 45.84 + ], + [ + 28.11, + 45.86 + ], + [ + 28.13, + 45.86 + ], + [ + 28.13, + 45.88 + ], + [ + 28.12, + 45.89 + ], + [ + 28.12, + 45.9 + ], + [ + 28.12, + 45.91 + ], + [ + 28.12, + 45.92 + ], + [ + 28.13, + 45.92 + ], + [ + 28.12, + 45.94 + ], + [ + 28.11, + 45.96 + ], + [ + 28.11, + 45.97 + ], + [ + 28.1, + 45.98 + ], + [ + 28.1, + 46 + ], + [ + 28.1, + 46.05 + ], + [ + 28.12, + 46.11 + ], + [ + 28.13, + 46.12 + ], + [ + 28.13, + 46.13 + ], + [ + 28.13, + 46.14 + ], + [ + 28.12, + 46.15 + ], + [ + 28.13, + 46.15 + ], + [ + 28.13, + 46.18 + ], + [ + 28.14, + 46.18 + ], + [ + 28.13, + 46.19 + ], + [ + 28.13, + 46.2 + ], + [ + 28.13, + 46.21 + ], + [ + 28.11, + 46.23 + ], + [ + 28.12, + 46.24 + ], + [ + 28.13, + 46.24 + ], + [ + 28.15, + 46.25 + ], + [ + 28.14, + 46.26 + ], + [ + 28.13, + 46.26 + ], + [ + 28.14, + 46.29 + ], + [ + 28.15, + 46.28 + ], + [ + 28.15, + 46.29 + ], + [ + 28.17, + 46.28 + ], + [ + 28.17, + 46.29 + ], + [ + 28.19, + 46.33 + ], + [ + 28.2, + 46.35 + ], + [ + 28.19, + 46.35 + ], + [ + 28.22, + 46.39 + ], + [ + 28.23, + 46.39 + ], + [ + 28.24, + 46.39 + ], + [ + 28.23, + 46.4 + ], + [ + 28.24, + 46.41 + ], + [ + 28.23, + 46.41 + ], + [ + 28.25, + 46.42 + ], + [ + 28.26, + 46.42 + ], + [ + 28.26, + 46.44 + ], + [ + 28.23, + 46.48 + ], + [ + 28.23, + 46.49 + ], + [ + 28.22, + 46.5 + ], + [ + 28.21, + 46.5 + ], + [ + 28.23, + 46.53 + ], + [ + 28.23, + 46.56 + ], + [ + 28.23, + 46.59 + ], + [ + 28.24, + 46.59 + ], + [ + 28.25, + 46.62 + ], + [ + 28.24, + 46.68 + ], + [ + 28.23, + 46.68 + ], + [ + 28.21, + 46.7 + ], + [ + 28.21, + 46.71 + ], + [ + 28.19, + 46.72 + ], + [ + 28.17, + 46.75 + ], + [ + 28.18, + 46.76 + ], + [ + 28.17, + 46.78 + ], + [ + 28.17, + 46.79 + ], + [ + 28.16, + 46.79 + ], + [ + 28.16, + 46.78 + ], + [ + 28.15, + 46.8 + ], + [ + 28.14, + 46.8 + ], + [ + 28.13, + 46.81 + ], + [ + 28.13, + 46.82 + ], + [ + 28.11, + 46.84 + ], + [ + 28.11, + 46.85 + ], + [ + 28.13, + 46.85 + ], + [ + 28.1, + 46.87 + ], + [ + 28.11, + 46.88 + ], + [ + 28.13, + 46.88 + ], + [ + 28.12, + 46.88 + ], + [ + 28.11, + 46.89 + ], + [ + 28.09, + 46.9 + ], + [ + 28.09, + 46.91 + ], + [ + 28.09, + 46.93 + ], + [ + 28.09, + 46.94 + ], + [ + 28.08, + 46.96 + ], + [ + 28.09, + 46.97 + ], + [ + 28.04, + 47.01 + ], + [ + 28.04, + 47.02 + ], + [ + 28.05, + 47.02 + ], + [ + 28.04, + 47.03 + ], + [ + 28.01, + 47.03 + ], + [ + 27.99, + 47.04 + ], + [ + 27.95, + 47.05 + ], + [ + 27.88, + 47.1 + ], + [ + 27.86, + 47.1 + ], + [ + 27.84, + 47.11 + ], + [ + 27.84, + 47.13 + ], + [ + 27.79, + 47.14 + ], + [ + 27.8, + 47.14 + ], + [ + 27.8, + 47.15 + ], + [ + 27.8, + 47.19 + ], + [ + 27.79, + 47.19 + ], + [ + 27.78, + 47.21 + ], + [ + 27.78, + 47.22 + ], + [ + 27.77, + 47.22 + ], + [ + 27.75, + 47.25 + ], + [ + 27.76, + 47.25 + ], + [ + 27.75, + 47.28 + ], + [ + 27.73, + 47.29 + ], + [ + 27.72, + 47.3 + ], + [ + 27.7, + 47.3 + ], + [ + 27.71, + 47.29 + ], + [ + 27.68, + 47.29 + ], + [ + 27.68, + 47.3 + ], + [ + 27.66, + 47.31 + ], + [ + 27.66, + 47.3 + ], + [ + 27.64, + 47.3 + ], + [ + 27.63, + 47.32 + ], + [ + 27.61, + 47.32 + ], + [ + 27.6, + 47.32 + ], + [ + 27.6, + 47.33 + ], + [ + 27.6, + 47.37 + ], + [ + 27.59, + 47.37 + ], + [ + 27.57, + 47.37 + ], + [ + 27.58, + 47.37 + ], + [ + 27.57, + 47.37 + ], + [ + 27.57, + 47.38 + ], + [ + 27.57, + 47.4 + ], + [ + 27.58, + 47.4 + ], + [ + 27.57, + 47.41 + ], + [ + 27.58, + 47.42 + ], + [ + 27.56, + 47.47 + ], + [ + 27.55, + 47.47 + ], + [ + 27.53, + 47.49 + ], + [ + 27.53, + 47.48 + ], + [ + 27.52, + 47.47 + ], + [ + 27.51, + 47.48 + ], + [ + 27.51, + 47.49 + ], + [ + 27.49, + 47.49 + ], + [ + 27.48, + 47.49 + ], + [ + 27.47, + 47.5 + ], + [ + 27.46, + 47.5 + ], + [ + 27.45, + 47.53 + ], + [ + 27.45, + 47.54 + ], + [ + 27.44, + 47.54 + ], + [ + 27.44, + 47.55 + ], + [ + 27.42, + 47.56 + ], + [ + 27.42, + 47.58 + ], + [ + 27.43, + 47.58 + ], + [ + 27.4, + 47.59 + ], + [ + 27.38, + 47.59 + ], + [ + 27.38, + 47.6 + ], + [ + 27.31, + 47.65 + ], + [ + 27.29, + 47.66 + ], + [ + 27.29, + 47.67 + ], + [ + 27.29, + 47.68 + ], + [ + 27.27, + 47.71 + ], + [ + 27.27, + 47.73 + ], + [ + 27.29, + 47.72 + ], + [ + 27.27, + 47.77 + ], + [ + 27.25, + 47.8 + ], + [ + 27.24, + 47.8 + ], + [ + 27.24, + 47.81 + ], + [ + 27.22, + 47.83 + ], + [ + 27.23, + 47.83 + ], + [ + 27.24, + 47.83 + ], + [ + 27.23, + 47.84 + ], + [ + 27.18, + 47.91 + ], + [ + 27.16, + 47.92 + ], + [ + 27.18, + 47.95 + ], + [ + 27.15, + 47.96 + ], + [ + 27.16, + 47.98 + ], + [ + 27.13, + 48.01 + ], + [ + 27.12, + 48.02 + ], + [ + 27.11, + 48.03 + ], + [ + 27.05, + 48.07 + ], + [ + 27.03, + 48.09 + ], + [ + 27.04, + 48.12 + ], + [ + 27.03, + 48.13 + ], + [ + 27.03, + 48.14 + ], + [ + 27.02, + 48.14 + ], + [ + 27.01, + 48.13 + ], + [ + 27, + 48.12 + ], + [ + 26.95, + 48.14 + ], + [ + 26.96, + 48.16 + ], + [ + 26.93, + 48.17 + ], + [ + 26.94, + 48.17 + ], + [ + 26.94, + 48.18 + ], + [ + 26.92, + 48.2 + ], + [ + 26.91, + 48.2 + ], + [ + 26.92, + 48.18 + ], + [ + 26.91, + 48.18 + ], + [ + 26.89, + 48.19 + ], + [ + 26.84, + 48.23 + ], + [ + 26.83, + 48.23 + ], + [ + 26.83, + 48.24 + ], + [ + 26.81, + 48.25 + ], + [ + 26.8, + 48.25 + ], + [ + 26.79, + 48.25 + ], + [ + 26.66, + 48.26 + ], + [ + 26.65, + 48.25 + ], + [ + 26.63, + 48.26 + ] + ] + ] + }, + "properties": { + "A3": "MDA" + } + }, + { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + 46.55, + 29.1 + ], + [ + 47.17, + 30.02 + ], + [ + 47.71, + 30.1 + ], + [ + 47.96, + 30.01 + ], + [ + 48.19, + 29.55 + ], + [ + 47.98, + 29.58 + ], + [ + 47.7, + 29.36 + ], + [ + 48.1, + 29.35 + ], + [ + 48.43, + 28.54 + ], + [ + 47.7, + 28.52 + ], + [ + 47.47, + 29 + ], + [ + 46.55, + 29.1 + ] + ] + ], + [ + [ + [ + 48.12, + 29.79 + ], + [ + 48.11, + 29.97 + ], + [ + 48.34, + 29.86 + ], + [ + 48.23, + 29.58 + ], + [ + 48.12, + 29.79 + ] + ] + ] + ] + }, + "properties": { + "A3": "KWT" + } + }, + { + "type": "Feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + 105.21, + 14.34 + ], + [ + 105.36, + 14.1 + ], + [ + 105.6, + 14.15 + ], + [ + 105.97, + 13.93 + ], + [ + 106, + 13.76 + ], + [ + 105.98, + 13.93 + ], + [ + 106.19, + 14.06 + ], + [ + 106, + 14.37 + ], + [ + 106.33, + 14.44 + ], + [ + 106.36, + 14.45 + ], + [ + 106.38, + 14.45 + ], + [ + 106.39, + 14.45 + ], + [ + 106.4, + 14.45 + ], + [ + 106.41, + 14.45 + ], + [ + 106.42, + 14.46 + ], + [ + 106.44, + 14.49 + ], + [ + 106.43, + 14.5 + ], + [ + 106.43, + 14.52 + ], + [ + 106.44, + 14.52 + ], + [ + 106.45, + 14.52 + ], + [ + 106.46, + 14.52 + ], + [ + 106.48, + 14.51 + ], + [ + 106.47, + 14.52 + ], + [ + 106.48, + 14.56 + ], + [ + 106.5, + 14.58 + ], + [ + 106.51, + 14.59 + ], + [ + 106.52, + 14.59 + ], + [ + 106.53, + 14.59 + ], + [ + 106.85, + 14.29 + ], + [ + 107.3, + 14.59 + ], + [ + 107.45, + 14.53 + ], + [ + 107.54, + 14.69 + ], + [ + 107.34, + 14.11 + ], + [ + 107.47, + 13.91 + ], + [ + 107.47, + 13.9 + ], + [ + 107.47, + 13.86 + ], + [ + 107.47, + 13.85 + ], + [ + 107.46, + 13.84 + ], + [ + 107.46, + 13.83 + ], + [ + 107.45, + 13.8 + ], + [ + 107.45, + 13.79 + ], + [ + 107.6, + 13.3 + ], + [ + 107.48, + 12.95 + ], + [ + 107.54, + 12.35 + ], + [ + 107.19, + 12.3 + ], + [ + 106.72, + 11.97 + ], + [ + 106.41, + 11.97 + ], + [ + 106.45, + 11.67 + ], + [ + 106.02, + 11.77 + ], + [ + 105.81, + 11.62 + ], + [ + 105.88, + 11.53 + ], + [ + 105.88, + 11.52 + ], + [ + 105.89, + 11.42 + ], + [ + 105.89, + 11.41 + ], + [ + 105.87, + 11.28 + ], + [ + 106.19, + 11.05 + ], + [ + 106.19, + 10.79 + ], + [ + 105.85, + 10.86 + ], + [ + 105.75, + 11.03 + ], + [ + 105.58, + 10.96 + ], + [ + 105.57, + 10.96 + ], + [ + 105.56, + 10.96 + ], + [ + 105.42, + 10.96 + ], + [ + 105.36, + 10.88 + ], + [ + 105.34, + 10.86 + ], + [ + 105.32, + 10.87 + ], + [ + 105.31, + 10.87 + ], + [ + 105.27, + 10.89 + ], + [ + 105.26, + 10.9 + ], + [ + 105.2, + 10.91 + ], + [ + 105.18, + 10.91 + ], + [ + 105.12, + 10.92 + ], + [ + 105.1, + 10.92 + ], + [ + 105.12, + 10.94 + ], + [ + 105.12, + 10.95 + ], + [ + 105.1, + 10.95 + ], + [ + 105.09, + 10.95 + ], + [ + 105.08, + 10.94 + ], + [ + 105.07, + 10.94 + ], + [ + 105.05, + 10.92 + ], + [ + 105.06, + 10.81 + ], + [ + 104.87, + 10.52 + ], + [ + 104.63, + 10.53 + ], + [ + 104.59, + 10.51 + ], + [ + 104.55, + 10.45 + ], + [ + 104.53, + 10.45 + ], + [ + 104.52, + 10.44 + ], + [ + 104.5, + 10.41 + ], + [ + 104.5, + 10.4 + ], + [ + 104.44, + 10.42 + ], + [ + 103.88, + 10.66 + ], + [ + 103.73, + 10.5 + ], + [ + 103.54, + 10.6 + ], + [ + 103.71, + 10.85 + ], + [ + 103.66, + 11.08 + ], + [ + 103.51, + 11.17 + ], + [ + 103.42, + 10.89 + ], + [ + 103.12, + 10.87 + ], + [ + 103.05, + 11.22 + ], + [ + 103.15, + 11.32 + ], + [ + 102.98, + 11.63 + ], + [ + 102.91, + 11.65 + ], + [ + 102.7, + 12.17 + ], + [ + 102.79, + 12.42 + ], + [ + 102.51, + 12.68 + ], + [ + 102.34, + 13.56 + ], + [ + 102.62, + 13.61 + ], + [ + 102.94, + 14.2 + ], + [ + 103.17, + 14.33 + ], + [ + 104.81, + 14.44 + ], + [ + 105.08, + 14.21 + ], + [ + 105.21, + 14.34 + ] + ], + [ + [ + 103.69, + 13.24 + ], + [ + 103.78, + 12.94 + ], + [ + 104.45, + 12.51 + ], + [ + 104.47, + 12.73 + ], + [ + 104.24, + 12.74 + ], + [ + 104.02, + 13.18 + ], + [ + 103.69, + 13.24 + ] + ] + ] + }, + "properties": { + "A3": "KHM" + } + }, + { + "type": "Feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + -90.13, + 13.74 + ], + [ + -90.09, + 13.86 + ], + [ + -89.54, + 14.22 + ], + [ + -89.52, + 14.22 + ], + [ + -89.47, + 14.26 + ], + [ + -89.55, + 14.29 + ], + [ + -89.57, + 14.42 + ], + [ + -89.36, + 14.42 + ], + [ + -89.1, + 14.4 + ], + [ + -88.51, + 13.93 + ], + [ + -88.51, + 13.92 + ], + [ + -88.5, + 13.9 + ], + [ + -88.23, + 14 + ], + [ + -87.8, + 13.92 + ], + [ + -87.71, + 13.8 + ], + [ + -87.8, + 13.41 + ], + [ + -87.81, + 13.41 + ], + [ + -87.82, + 13.41 + ], + [ + -87.9, + 13.16 + ], + [ + -88.9, + 13.33 + ], + [ + -89.81, + 13.52 + ], + [ + -90.13, + 13.74 + ] + ] + ] + }, + "properties": { + "A3": "SLV" + } + }, + { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + -151.38, + -16.82 + ], + [ + -151.47, + -16.91 + ], + [ + -151.48, + -16.73 + ], + [ + -151.38, + -16.82 + ] + ] + ], + [ + [ + [ + -149.13, + -17.83 + ], + [ + -149.58, + -17.74 + ], + [ + -149.62, + -17.56 + ], + [ + -149.34, + -17.54 + ], + [ + -149.13, + -17.83 + ] + ] + ], + [ + [ + [ + -146.28, + -15.32 + ], + [ + -146.4, + -15.3 + ], + [ + -146.3, + -15.31 + ], + [ + -146.19, + -15.34 + ], + [ + -146.22, + -15.45 + ], + [ + -146.19, + -15.34 + ], + [ + -146.28, + -15.32 + ] + ] + ], + [ + [ + [ + -140.13, + -9.38 + ], + [ + -140.02, + -9.36 + ], + [ + -140.05, + -9.47 + ], + [ + -140.13, + -9.38 + ] + ] + ], + [ + [ + [ + -140.03, + -8.82 + ], + [ + -140.02, + -8.93 + ], + [ + -140.23, + -8.93 + ], + [ + -140.24, + -8.8 + ], + [ + -140.03, + -8.82 + ] + ] + ], + [ + [ + [ + -138.94, + -9.8 + ], + [ + -139.16, + -9.77 + ], + [ + -138.8, + -9.74 + ], + [ + -138.94, + -9.8 + ] + ] + ] + ] + }, + "properties": { + "A3": "PYF" + } + }, + { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + -57.6, + -30.19 + ], + [ + -57.56, + -30.22 + ], + [ + -57.57, + -30.26 + ], + [ + -57.56, + -30.26 + ], + [ + -57.31, + -30.26 + ], + [ + -57.3, + -30.27 + ], + [ + -57.28, + -30.29 + ], + [ + -57.2, + -30.28 + ], + [ + -57.17, + -30.22 + ], + [ + -57.16, + -30.22 + ], + [ + -57.13, + -30.15 + ], + [ + -57.13, + -30.14 + ], + [ + -57.09, + -30.12 + ], + [ + -57.08, + -30.11 + ], + [ + -57.09, + -30.1 + ], + [ + -56.91, + -30.1 + ], + [ + -56.91, + -30.11 + ], + [ + -56.82, + -30.11 + ], + [ + -56.78, + -30.14 + ], + [ + -56.78, + -30.15 + ], + [ + -56.02, + -30.79 + ], + [ + -56.01, + -31.08 + ], + [ + -55.58, + -30.83 + ], + [ + -55.24, + -31.26 + ], + [ + -54.59, + -31.46 + ], + [ + -54.36, + -31.72 + ], + [ + -53.96, + -31.95 + ], + [ + -53.75, + -32.08 + ], + [ + -53.74, + -32.1 + ], + [ + -53.74, + -32.12 + ], + [ + -53.73, + -32.13 + ], + [ + -53.7, + -32.19 + ], + [ + -53.71, + -32.19 + ], + [ + -53.68, + -32.23 + ], + [ + -53.68, + -32.24 + ], + [ + -53.68, + -32.25 + ], + [ + -53.66, + -32.28 + ], + [ + -53.66, + -32.29 + ], + [ + -53.64, + -32.34 + ], + [ + -53.62, + -32.4 + ], + [ + -53.61, + -32.4 + ], + [ + -53.61, + -32.42 + ], + [ + -53.6, + -32.43 + ], + [ + -53.59, + -32.43 + ], + [ + -53.57, + -32.46 + ], + [ + -53.55, + -32.47 + ], + [ + -53.54, + -32.47 + ], + [ + -53.44, + -32.54 + ], + [ + -53.44, + -32.55 + ], + [ + -53.43, + -32.56 + ], + [ + -53.4, + -32.58 + ], + [ + -53.39, + -32.58 + ], + [ + -53.36, + -32.58 + ], + [ + -53.36, + -32.59 + ], + [ + -53.35, + -32.59 + ], + [ + -53.31, + -32.6 + ], + [ + -53.29, + -32.62 + ], + [ + -53.18, + -32.65 + ], + [ + -53.68, + -33.14 + ], + [ + -53.53, + -33.6 + ], + [ + -53.53, + -33.63 + ], + [ + -53.53, + -33.67 + ], + [ + -53.53, + -33.69 + ], + [ + -53.51, + -33.69 + ], + [ + -53.43, + -33.72 + ], + [ + -53.43, + -33.73 + ], + [ + -53.37, + -33.74 + ], + [ + -53.78, + -34.41 + ], + [ + -54.23, + -34.67 + ], + [ + -54.23, + -34.52 + ], + [ + -54.31, + -34.7 + ], + [ + -54.94, + -34.97 + ], + [ + -55.69, + -34.76 + ], + [ + -56.16, + -34.93 + ], + [ + -57.13, + -34.45 + ], + [ + -57.85, + -34.48 + ], + [ + -57.92, + -34.34 + ], + [ + -58.42, + -33.91 + ], + [ + -58.43, + -33.89 + ], + [ + -58.4, + -33.47 + ], + [ + -58.36, + -33.13 + ], + [ + -58.16, + -33.13 + ], + [ + -58.16, + -33.06 + ], + [ + -58.15, + -33.05 + ], + [ + -58.08, + -33 + ], + [ + -58.09, + -32.97 + ], + [ + -58.09, + -32.95 + ], + [ + -58.1, + -32.95 + ], + [ + -58.11, + -32.93 + ], + [ + -58.12, + -32.9 + ], + [ + -58.1, + -32.88 + ], + [ + -58.12, + -32.88 + ], + [ + -58.12, + -32.87 + ], + [ + -58.12, + -32.85 + ], + [ + -58.12, + -32.81 + ], + [ + -58.13, + -32.78 + ], + [ + -58.15, + -32.71 + ], + [ + -58.16, + -32.59 + ], + [ + -58.17, + -32.56 + ], + [ + -58.2, + -32.47 + ], + [ + -58.2, + -32.41 + ], + [ + -58.19, + -32.4 + ], + [ + -58.18, + -32.38 + ], + [ + -58.17, + -32.36 + ], + [ + -58.14, + -32.35 + ], + [ + -58.11, + -32.32 + ], + [ + -58.11, + -32.31 + ], + [ + -58.1, + -32.27 + ], + [ + -58.1, + -32.25 + ], + [ + -58.12, + -32.23 + ], + [ + -58.17, + -32.17 + ], + [ + -58.17, + -32.1 + ], + [ + -58.16, + -32.08 + ], + [ + -58.14, + -32.04 + ], + [ + -58.14, + -32.01 + ], + [ + -58.14, + -32 + ], + [ + -58.16, + -31.96 + ], + [ + -58.16, + -31.95 + ], + [ + -58.2, + -31.89 + ], + [ + -58.2, + -31.86 + ], + [ + -58.16, + -31.84 + ], + [ + -58.14, + -31.83 + ], + [ + -58.13, + -31.83 + ], + [ + -58.08, + -31.82 + ], + [ + -58.07, + -31.8 + ], + [ + -58.06, + -31.79 + ], + [ + -58.04, + -31.75 + ], + [ + -58.04, + -31.73 + ], + [ + -58.03, + -31.7 + ], + [ + -58.02, + -31.69 + ], + [ + -58.01, + -31.67 + ], + [ + -58, + -31.63 + ], + [ + -57.98, + -31.59 + ], + [ + -57.98, + -31.58 + ], + [ + -57.99, + -31.55 + ], + [ + -58, + -31.53 + ], + [ + -58.03, + -31.51 + ], + [ + -58.05, + -31.5 + ], + [ + -58.08, + -31.48 + ], + [ + -58.08, + -31.47 + ], + [ + -58.06, + -31.44 + ], + [ + -58.05, + -31.43 + ], + [ + -58.01, + -31.41 + ], + [ + -58, + -31.4 + ], + [ + -57.99, + -31.36 + ], + [ + -57.99, + -31.35 + ], + [ + -57.98, + -31.33 + ], + [ + -57.98, + -31.32 + ], + [ + -57.96, + -31.3 + ], + [ + -57.94, + -31.28 + ], + [ + -57.93, + -31.26 + ], + [ + -57.79, + -31.2 + ], + [ + -57.89, + -30.98 + ], + [ + -57.64, + -30.98 + ], + [ + -57.81, + -30.69 + ], + [ + -57.83, + -30.68 + ], + [ + -57.82, + -30.46 + ], + [ + -57.79, + -30.44 + ], + [ + -57.77, + -30.42 + ], + [ + -57.74, + -30.41 + ], + [ + -57.71, + -30.4 + ], + [ + -57.68, + -30.37 + ], + [ + -57.65, + -30.35 + ], + [ + -57.64, + -30.33 + ], + [ + -57.64, + -30.32 + ], + [ + -57.63, + -30.28 + ], + [ + -57.63, + -30.23 + ], + [ + -57.65, + -30.2 + ], + [ + -57.6, + -30.19 + ] + ], + [ + [ + -55.77, + -32.66 + ], + [ + -55.77, + -32.62 + ], + [ + -55.77, + -32.66 + ], + [ + -55.99, + -32.58 + ], + [ + -56.27, + -32.77 + ], + [ + -56.34, + -32.57 + ], + [ + -56.38, + -32.66 + ], + [ + -56.44, + -32.81 + ], + [ + -56.25, + -32.88 + ], + [ + -56.21, + -32.97 + ], + [ + -56.23, + -32.88 + ], + [ + -56.03, + -32.93 + ], + [ + -56.19, + -32.73 + ], + [ + -55.77, + -32.66 + ] + ], + [ + [ + -53.72, + -33.98 + ], + [ + -53.66, + -34.1 + ], + [ + -53.57, + -34.01 + ], + [ + -53.72, + -33.98 + ] + ] + ], + [ + [ + [ + -58.11, + -33.01 + ], + [ + -58.1, + -32.95 + ], + [ + -58.09, + -32.97 + ], + [ + -58.09, + -32.99 + ], + [ + -58.11, + -33.01 + ] + ] + ] + ] + }, + "properties": { + "A3": "URY" + } + }, + { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + 11.56, + 33.17 + ], + [ + 11.56, + 33.15 + ], + [ + 11.56, + 33.14 + ], + [ + 11.54, + 33.12 + ], + [ + 11.49, + 33.01 + ], + [ + 11.49, + 32.95 + ], + [ + 11.48, + 32.93 + ], + [ + 11.48, + 32.92 + ], + [ + 11.48, + 32.9 + ], + [ + 11.48, + 32.83 + ], + [ + 11.48, + 32.77 + ], + [ + 11.48, + 32.74 + ], + [ + 11.47, + 32.69 + ], + [ + 11.56, + 32.44 + ], + [ + 10.63, + 31.98 + ], + [ + 10.14, + 31.51 + ], + [ + 10.29, + 30.91 + ], + [ + 9.8, + 30.35 + ], + [ + 9.76, + 30.35 + ], + [ + 9.76, + 30.34 + ], + [ + 9.75, + 30.33 + ], + [ + 9.74, + 30.32 + ], + [ + 9.56, + 30.24 + ], + [ + 9.07, + 32.09 + ], + [ + 8.36, + 32.5 + ], + [ + 8.32, + 32.82 + ], + [ + 8.12, + 33.1 + ], + [ + 7.83, + 33.19 + ], + [ + 7.53, + 33.8 + ], + [ + 7.53, + 34.07 + ], + [ + 8.32, + 34.73 + ], + [ + 8.25, + 34.92 + ], + [ + 8.48, + 35.24 + ], + [ + 8.31, + 35.32 + ], + [ + 8.25, + 35.89 + ], + [ + 8.41, + 36.41 + ], + [ + 8.15, + 36.5 + ], + [ + 8.57, + 36.77 + ], + [ + 8.64, + 36.94 + ], + [ + 9.74, + 37.35 + ], + [ + 9.89, + 37.28 + ], + [ + 9.82, + 37.14 + ], + [ + 9.89, + 37.28 + ], + [ + 10.28, + 37.18 + ], + [ + 10.14, + 37.14 + ], + [ + 10.35, + 36.87 + ], + [ + 10.2, + 36.79 + ], + [ + 10.38, + 36.72 + ], + [ + 11.07, + 37.05 + ], + [ + 11.12, + 36.83 + ], + [ + 10.43, + 36.14 + ], + [ + 10.63, + 35.82 + ], + [ + 11.05, + 35.62 + ], + [ + 11.17, + 35.23 + ], + [ + 10.73, + 34.65 + ], + [ + 10.02, + 34.12 + ], + [ + 10.44, + 33.62 + ], + [ + 10.72, + 33.71 + ], + [ + 10.78, + 33.47 + ], + [ + 11, + 33.65 + ], + [ + 11.1, + 33.36 + ], + [ + 11.29, + 33.28 + ], + [ + 11.13, + 33.32 + ], + [ + 11.18, + 33.21 + ], + [ + 11.56, + 33.17 + ] + ], + [ + [ + 8.42, + 34.02 + ], + [ + 7.76, + 33.8 + ], + [ + 8.5, + 33.44 + ], + [ + 8.9, + 33.72 + ], + [ + 8.57, + 33.76 + ], + [ + 8.61, + 33.92 + ], + [ + 9.4, + 33.83 + ], + [ + 9.22, + 33.97 + ], + [ + 8.42, + 34.02 + ] + ] + ], + [ + [ + [ + 10.74, + 33.72 + ], + [ + 10.75, + 33.89 + ], + [ + 11.06, + 33.82 + ], + [ + 10.89, + 33.63 + ], + [ + 10.74, + 33.72 + ] + ] + ] + ] + }, + "properties": { + "A3": "TUN" + } + }, + { + "type": "Feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + 34.27, + 31.22 + ], + [ + 34.49, + 31.6 + ], + [ + 35.11, + 33.09 + ], + [ + 35.5, + 33.09 + ], + [ + 35.64, + 33.28 + ], + [ + 35.67, + 33.29 + ], + [ + 35.77, + 33.34 + ], + [ + 35.9, + 32.94 + ], + [ + 35.76, + 32.75 + ], + [ + 35.56, + 32.51 + ], + [ + 35.57, + 32.44 + ], + [ + 35.56, + 32.44 + ], + [ + 35.55, + 32.4 + ], + [ + 35.55, + 32.39 + ], + [ + 35.46, + 32.41 + ], + [ + 35.45, + 32.41 + ], + [ + 35.37, + 32.52 + ], + [ + 35.08, + 32.46 + ], + [ + 34.99, + 32.11 + ], + [ + 34.99, + 32.1 + ], + [ + 34.98, + 32.09 + ], + [ + 34.99, + 32.09 + ], + [ + 34.99, + 32.07 + ], + [ + 34.98, + 31.83 + ], + [ + 35.19, + 31.81 + ], + [ + 35.15, + 31.74 + ], + [ + 34.91, + 31.35 + ], + [ + 35.4, + 31.49 + ], + [ + 35.42, + 31.3 + ], + [ + 35.41, + 31.28 + ], + [ + 35.4, + 31.27 + ], + [ + 35.4, + 31.23 + ], + [ + 35.38, + 30.96 + ], + [ + 35.43, + 31.05 + ], + [ + 35.16, + 30.41 + ], + [ + 34.98, + 29.54 + ], + [ + 34.9, + 29.49 + ], + [ + 34.74, + 30.05 + ], + [ + 34.73, + 30.06 + ], + [ + 34.51, + 30.64 + ], + [ + 34.37, + 30.96 + ], + [ + 34.36, + 30.96 + ], + [ + 34.27, + 31.22 + ] + ] + ] + }, + "properties": { + "A3": "ISR" + } + }, + { + "type": "Feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + 6.64, + 0.11 + ], + [ + 6.51, + 0.02 + ], + [ + 6.46, + 0.24 + ], + [ + 6.66, + 0.41 + ], + [ + 6.76, + 0.3 + ], + [ + 6.64, + 0.11 + ] + ] + ] + }, + "properties": { + "A3": "STP" + } + }, + { + "type": "Feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + -63.01, + 18.05 + ], + [ + -63.01, + 18.06 + ], + [ + -63.02, + 18.06 + ], + [ + -63.04, + 18.06 + ], + [ + -63.06, + 18.06 + ], + [ + -63.07, + 18.06 + ], + [ + -63.08, + 18.05 + ], + [ + -63.09, + 18.05 + ], + [ + -63.04, + 18.12 + ], + [ + -63.01, + 18.05 + ] + ] + ] + }, + "properties": { + "A3": "MAF" + } + }, + { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + 48.25, + -13.24 + ], + [ + 48.36, + -13.41 + ], + [ + 48.19, + -13.39 + ], + [ + 48.25, + -13.24 + ] + ] + ], + [ + [ + [ + 47.07, + -15.47 + ], + [ + 47.29, + -15.44 + ], + [ + 47.05, + -15.19 + ], + [ + 47.38, + -14.92 + ], + [ + 47.28, + -14.86 + ], + [ + 47.46, + -14.67 + ], + [ + 47.42, + -15.15 + ], + [ + 47.79, + -14.57 + ], + [ + 47.88, + -14.73 + ], + [ + 47.99, + -14.67 + ], + [ + 47.88, + -14.83 + ], + [ + 47.9, + -14.97 + ], + [ + 48.01, + -14.86 + ], + [ + 47.94, + -14.82 + ], + [ + 48.06, + -14.68 + ], + [ + 47.95, + -14.59 + ], + [ + 47.97, + -14.48 + ], + [ + 47.86, + -14.61 + ], + [ + 47.8, + -14.54 + ], + [ + 47.74, + -14.61 + ], + [ + 47.69, + -14.44 + ], + [ + 47.8, + -14.22 + ], + [ + 47.93, + -14.27 + ], + [ + 47.89, + -14.1 + ], + [ + 48, + -14.13 + ], + [ + 47.99, + -14.42 + ], + [ + 48.07, + -14.22 + ], + [ + 47.89, + -13.6 + ], + [ + 48.06, + -13.53 + ], + [ + 48.27, + -13.83 + ], + [ + 48.56, + -13.53 + ], + [ + 48.47, + -13.37 + ], + [ + 48.69, + -13.53 + ], + [ + 48.9, + -13.27 + ], + [ + 48.93, + -12.79 + ], + [ + 48.89, + -12.54 + ], + [ + 48.72, + -12.44 + ], + [ + 48.94, + -12.49 + ], + [ + 49.27, + -11.95 + ], + [ + 49.37, + -12.21 + ], + [ + 49.26, + -12.14 + ], + [ + 49.19, + -12.32 + ], + [ + 49.36, + -12.23 + ], + [ + 49.51, + -12.36 + ], + [ + 49.53, + -12.68 + ], + [ + 49.93, + -13.05 + ], + [ + 50.14, + -13.8 + ], + [ + 50.18, + -14.77 + ], + [ + 50.49, + -15.27 + ], + [ + 50.22, + -15.99 + ], + [ + 50.02, + -15.87 + ], + [ + 49.9, + -15.43 + ], + [ + 49.61, + -15.56 + ], + [ + 49.68, + -16.05 + ], + [ + 49.86, + -16.22 + ], + [ + 49.72, + -16.74 + ], + [ + 49.84, + -16.84 + ], + [ + 49.59, + -16.91 + ], + [ + 49.43, + -17.27 + ], + [ + 49.52, + -17.69 + ], + [ + 49.35, + -18.23 + ], + [ + 47.9, + -22.43 + ], + [ + 47.24, + -24.61 + ], + [ + 47.1, + -24.99 + ], + [ + 46.89, + -25.07 + ], + [ + 45.19, + -25.61 + ], + [ + 44.81, + -25.34 + ], + [ + 44.35, + -25.26 + ], + [ + 43.68, + -24.37 + ], + [ + 43.64, + -23.67 + ], + [ + 43.82, + -23.56 + ], + [ + 43.37, + -22.85 + ], + [ + 43.22, + -22.25 + ], + [ + 43.35, + -21.75 + ], + [ + 43.51, + -21.69 + ], + [ + 43.5, + -21.39 + ], + [ + 43.75, + -21.34 + ], + [ + 43.9, + -20.85 + ], + [ + 44.52, + -19.97 + ], + [ + 43.93, + -17.55 + ], + [ + 44.42, + -16.72 + ], + [ + 44.44, + -16.2 + ], + [ + 44.83, + -16.24 + ], + [ + 45.26, + -15.94 + ], + [ + 45.24, + -16.15 + ], + [ + 45.38, + -16.12 + ], + [ + 45.35, + -15.98 + ], + [ + 45.66, + -16.1 + ], + [ + 45.67, + -15.77 + ], + [ + 45.79, + -15.91 + ], + [ + 45.93, + -15.78 + ], + [ + 46.07, + -15.9 + ], + [ + 46.12, + -15.71 + ], + [ + 46.31, + -15.98 + ], + [ + 46.46, + -15.98 + ], + [ + 46.3, + -15.84 + ], + [ + 46.46, + -15.52 + ], + [ + 46.75, + -15.46 + ], + [ + 46.63, + -15.41 + ], + [ + 46.94, + -15.2 + ], + [ + 47.07, + -15.34 + ], + [ + 46.93, + -15.57 + ], + [ + 47.07, + -15.47 + ] + ], + [ + [ + 48.54, + -17.31 + ], + [ + 48.47, + -17.64 + ], + [ + 48.64, + -17.42 + ], + [ + 48.54, + -17.31 + ] + ], + [ + [ + 43.64, + -21.94 + ], + [ + 43.64, + -21.96 + ], + [ + 43.73, + -21.96 + ], + [ + 43.77, + -21.88 + ], + [ + 43.64, + -21.94 + ] + ] + ] + ] + }, + "properties": { + "A3": "MDG" + } + }, + { + "type": "Feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + 15, + 23 + ], + [ + 16, + 23.5 + ], + [ + 20.04, + 21.57 + ], + [ + 24, + 19.5 + ], + [ + 24, + 15.7 + ], + [ + 23.12, + 15.72 + ], + [ + 23.09, + 15.69 + ], + [ + 22.93, + 15.55 + ], + [ + 23.01, + 15.23 + ], + [ + 22.68, + 14.87 + ], + [ + 22.67, + 14.86 + ], + [ + 22.7, + 14.69 + ], + [ + 22.38, + 14.54 + ], + [ + 22.55, + 14.12 + ], + [ + 22.08, + 13.78 + ], + [ + 22.23, + 13.48 + ], + [ + 22.23, + 13.47 + ], + [ + 22.29, + 13.34 + ], + [ + 21.81, + 12.81 + ], + [ + 21.95, + 12.64 + ], + [ + 22.22, + 12.75 + ], + [ + 22.47, + 12.62 + ], + [ + 22.48, + 12.03 + ], + [ + 22.64, + 12.07 + ], + [ + 22.56, + 11.62 + ], + [ + 22.97, + 11.28 + ], + [ + 22.88, + 10.92 + ], + [ + 22.86, + 10.92 + ], + [ + 22.85, + 10.93 + ], + [ + 22.82, + 10.93 + ], + [ + 22.81, + 10.93 + ], + [ + 22.46, + 11 + ], + [ + 21.72, + 10.64 + ], + [ + 21.72, + 10.29 + ], + [ + 20.44, + 9.14 + ], + [ + 18.96, + 8.96 + ], + [ + 18.86, + 8.85 + ], + [ + 19.12, + 8.67 + ], + [ + 18.62, + 8.05 + ], + [ + 17.73, + 7.98 + ], + [ + 16.84, + 7.53 + ], + [ + 16.59, + 7.88 + ], + [ + 16.58, + 7.88 + ], + [ + 15.97, + 7.48 + ], + [ + 15.49, + 7.53 + ], + [ + 15.53, + 7.56 + ], + [ + 15.55, + 7.58 + ], + [ + 15.56, + 7.6 + ], + [ + 15.58, + 7.64 + ], + [ + 15.58, + 7.65 + ], + [ + 15.58, + 7.67 + ], + [ + 15.59, + 7.67 + ], + [ + 15.11, + 8.66 + ], + [ + 14.49, + 9.06 + ], + [ + 13.98, + 9.64 + ], + [ + 14.2, + 10 + ], + [ + 15.22, + 9.99 + ], + [ + 15.24, + 9.99 + ], + [ + 15.64, + 9.98 + ], + [ + 15.65, + 9.98 + ], + [ + 15.69, + 9.99 + ], + [ + 15.69, + 10 + ], + [ + 15.67, + 10.01 + ], + [ + 15.66, + 10.02 + ], + [ + 15.64, + 10.03 + ], + [ + 15.63, + 10.03 + ], + [ + 15.63, + 10.04 + ], + [ + 15.61, + 10.05 + ], + [ + 15.6, + 10.05 + ], + [ + 15.59, + 10.05 + ], + [ + 15.56, + 10.07 + ], + [ + 15.55, + 10.08 + ], + [ + 15.54, + 10.09 + ], + [ + 15.53, + 10.1 + ], + [ + 15.52, + 10.1 + ], + [ + 15.51, + 10.1 + ], + [ + 15.49, + 10.11 + ], + [ + 15.47, + 10.14 + ], + [ + 15.47, + 10.15 + ], + [ + 15.46, + 10.16 + ], + [ + 15.45, + 10.17 + ], + [ + 15.45, + 10.19 + ], + [ + 15.44, + 10.2 + ], + [ + 15.41, + 10.23 + ], + [ + 15.4, + 10.23 + ], + [ + 15.39, + 10.25 + ], + [ + 15.38, + 10.25 + ], + [ + 15.36, + 10.27 + ], + [ + 15.36, + 10.28 + ], + [ + 15.34, + 10.3 + ], + [ + 15.33, + 10.3 + ], + [ + 15.3, + 10.31 + ], + [ + 15.28, + 10.37 + ], + [ + 15.28, + 10.4 + ], + [ + 15.28, + 10.41 + ], + [ + 15.26, + 10.43 + ], + [ + 15.24, + 10.45 + ], + [ + 15.24, + 10.48 + ], + [ + 15.21, + 10.5 + ], + [ + 15.19, + 10.51 + ], + [ + 15.18, + 10.51 + ], + [ + 15.17, + 10.52 + ], + [ + 15.16, + 10.52 + ], + [ + 15.15, + 10.53 + ], + [ + 15.15, + 10.56 + ], + [ + 15.14, + 10.59 + ], + [ + 15.15, + 10.6 + ], + [ + 15.15, + 10.66 + ], + [ + 15.14, + 10.66 + ], + [ + 15.14, + 10.67 + ], + [ + 15.13, + 10.7 + ], + [ + 15.1, + 10.74 + ], + [ + 15.09, + 10.76 + ], + [ + 15.08, + 10.78 + ], + [ + 15.08, + 10.8 + ], + [ + 15.07, + 10.81 + ], + [ + 15.07, + 10.82 + ], + [ + 15.07, + 10.83 + ], + [ + 15.07, + 10.84 + ], + [ + 15.07, + 10.85 + ], + [ + 15.08, + 10.85 + ], + [ + 15.09, + 10.86 + ], + [ + 15.09, + 10.88 + ], + [ + 15.09, + 10.91 + ], + [ + 15.09, + 10.92 + ], + [ + 15.08, + 10.94 + ], + [ + 15.07, + 11.37 + ], + [ + 15.07, + 11.38 + ], + [ + 15.06, + 11.39 + ], + [ + 15.06, + 11.4 + ], + [ + 15.07, + 11.43 + ], + [ + 15.08, + 11.45 + ], + [ + 15.09, + 11.47 + ], + [ + 15.11, + 11.5 + ], + [ + 15.12, + 11.51 + ], + [ + 15.13, + 11.52 + ], + [ + 15.14, + 11.54 + ], + [ + 15.14, + 11.56 + ], + [ + 15.14, + 11.57 + ], + [ + 15.1, + 11.6 + ], + [ + 15.1, + 11.61 + ], + [ + 15.1, + 11.62 + ], + [ + 15.09, + 11.62 + ], + [ + 15.09, + 11.63 + ], + [ + 15.08, + 11.65 + ], + [ + 15.08, + 11.66 + ], + [ + 15.08, + 11.69 + ], + [ + 15.07, + 11.7 + ], + [ + 15.06, + 11.71 + ], + [ + 15.06, + 11.72 + ], + [ + 15.07, + 11.72 + ], + [ + 15.09, + 11.73 + ], + [ + 15.1, + 11.73 + ], + [ + 15.1, + 11.74 + ], + [ + 15.09, + 11.77 + ], + [ + 15.11, + 11.78 + ], + [ + 15.12, + 11.8 + ], + [ + 15.11, + 11.8 + ], + [ + 15.1, + 11.83 + ], + [ + 15.09, + 11.85 + ], + [ + 15.08, + 11.85 + ], + [ + 15.07, + 11.84 + ], + [ + 15.05, + 11.86 + ], + [ + 15.05, + 11.88 + ], + [ + 15.04, + 11.91 + ], + [ + 15.06, + 11.93 + ], + [ + 15.06, + 11.95 + ], + [ + 15.05, + 11.95 + ], + [ + 15.05, + 11.97 + ], + [ + 15.08, + 11.98 + ], + [ + 15.07, + 12 + ], + [ + 15.06, + 12 + ], + [ + 15.04, + 12.04 + ], + [ + 15.05, + 12.04 + ], + [ + 15.06, + 12.04 + ], + [ + 15.06, + 12.06 + ], + [ + 15.05, + 12.07 + ], + [ + 15.04, + 12.08 + ], + [ + 15.03, + 12.11 + ], + [ + 14.99, + 12.12 + ], + [ + 14.92, + 12.14 + ], + [ + 14.9, + 12.15 + ], + [ + 14.89, + 12.16 + ], + [ + 14.89, + 12.17 + ], + [ + 14.9, + 12.18 + ], + [ + 14.91, + 12.19 + ], + [ + 14.9, + 12.2 + ], + [ + 14.9, + 12.23 + ], + [ + 14.9, + 12.27 + ], + [ + 14.9, + 12.29 + ], + [ + 14.89, + 12.31 + ], + [ + 14.9, + 12.32 + ], + [ + 14.91, + 12.33 + ], + [ + 14.91, + 12.34 + ], + [ + 14.9, + 12.35 + ], + [ + 14.9, + 12.36 + ], + [ + 14.9, + 12.37 + ], + [ + 14.9, + 12.4 + ], + [ + 14.9, + 12.41 + ], + [ + 14.89, + 12.43 + ], + [ + 14.88, + 12.43 + ], + [ + 14.88, + 12.45 + ], + [ + 14.87, + 12.47 + ], + [ + 14.86, + 12.51 + ], + [ + 14.85, + 12.53 + ], + [ + 14.85, + 12.55 + ], + [ + 14.85, + 12.57 + ], + [ + 14.85, + 12.58 + ], + [ + 14.84, + 12.6 + ], + [ + 14.84, + 12.61 + ], + [ + 14.83, + 12.63 + ], + [ + 14.8, + 12.64 + ], + [ + 14.78, + 12.63 + ], + [ + 14.76, + 12.66 + ], + [ + 14.76, + 12.67 + ], + [ + 14.75, + 12.69 + ], + [ + 14.74, + 12.69 + ], + [ + 14.73, + 12.66 + ], + [ + 14.72, + 12.66 + ], + [ + 14.7, + 12.68 + ], + [ + 14.71, + 12.69 + ], + [ + 14.72, + 12.7 + ], + [ + 14.73, + 12.71 + ], + [ + 14.68, + 12.72 + ], + [ + 14.65, + 12.73 + ], + [ + 14.64, + 12.74 + ], + [ + 14.63, + 12.74 + ], + [ + 14.63, + 12.77 + ], + [ + 14.62, + 12.77 + ], + [ + 14.6, + 12.75 + ], + [ + 14.58, + 12.75 + ], + [ + 14.58, + 12.77 + ], + [ + 14.55, + 12.78 + ], + [ + 14.55, + 12.8 + ], + [ + 14.55, + 12.83 + ], + [ + 14.55, + 12.85 + ], + [ + 14.57, + 12.89 + ], + [ + 14.56, + 12.9 + ], + [ + 14.55, + 12.94 + ], + [ + 14.54, + 12.94 + ], + [ + 14.53, + 12.96 + ], + [ + 14.53, + 12.97 + ], + [ + 14.72, + 12.95 + ], + [ + 14.71, + 13.23 + ], + [ + 14.55, + 13.27 + ], + [ + 14.31, + 13.08 + ], + [ + 14.16, + 13.08 + ], + [ + 14.15, + 13.08 + ], + [ + 14.08, + 13.08 + ], + [ + 14.03, + 13.15 + ], + [ + 13.63, + 13.71 + ], + [ + 13.48, + 14.46 + ], + [ + 13.7, + 14.55 + ], + [ + 13.86, + 15.03 + ], + [ + 14.38, + 15.73 + ], + [ + 15.51, + 16.9 + ], + [ + 15.75, + 19.93 + ], + [ + 16, + 20.35 + ], + [ + 15.58, + 20.77 + ], + [ + 15.63, + 20.96 + ], + [ + 15.2, + 21.5 + ], + [ + 15, + 23 + ] + ], + [ + [ + 17.36, + 10.36 + ], + [ + 17.06, + 10.49 + ], + [ + 17.53, + 10.17 + ], + [ + 17.36, + 10.36 + ] + ] + ] + }, + "properties": { + "A3": "TCD" + } + }, + { + "type": "Feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + -2.69, + 9.49 + ], + [ + -2.77, + 10.42 + ], + [ + -2.9, + 10.53 + ], + [ + -2.83, + 11.01 + ], + [ + -0.62, + 10.91 + ], + [ + -0.37, + 11.09 + ], + [ + -0.35, + 11.08 + ], + [ + -0.35, + 11.09 + ], + [ + -0.14, + 11.14 + ], + [ + 0.03, + 10.99 + ], + [ + -0.06, + 10.63 + ], + [ + 0.4, + 10.31 + ], + [ + 0.36, + 10.21 + ], + [ + 0.35, + 10.19 + ], + [ + 0.35, + 10.18 + ], + [ + 0.35, + 10.16 + ], + [ + 0.36, + 10.12 + ], + [ + 0.35, + 10.1 + ], + [ + 0.26, + 9.66 + ], + [ + 0.38, + 9.6 + ], + [ + 0.38, + 9.58 + ], + [ + 0.37, + 9.58 + ], + [ + 0.33, + 9.58 + ], + [ + 0.32, + 9.58 + ], + [ + 0.31, + 9.58 + ], + [ + 0.3, + 9.58 + ], + [ + 0.29, + 9.57 + ], + [ + 0.28, + 9.57 + ], + [ + 0.24, + 9.58 + ], + [ + 0.24, + 9.57 + ], + [ + 0.24, + 9.54 + ], + [ + 0.26, + 9.52 + ], + [ + 0.3, + 9.52 + ], + [ + 0.31, + 9.51 + ], + [ + 0.24, + 9.45 + ], + [ + 0.57, + 9.41 + ], + [ + 0.53, + 8.88 + ], + [ + 0.37, + 8.75 + ], + [ + 0.73, + 8.34 + ], + [ + 0.59, + 8.2 + ], + [ + 0.52, + 7.46 + ], + [ + 0.66, + 7.32 + ], + [ + 0.53, + 6.83 + ], + [ + 0.75, + 6.44 + ], + [ + 1.2, + 6.11 + ], + [ + 0.84, + 5.97 + ], + [ + 0.79, + 5.85 + ], + [ + 0.94, + 5.8 + ], + [ + 0.75, + 5.79 + ], + [ + 0.63, + 5.94 + ], + [ + 0.65, + 5.77 + ], + [ + 0.07, + 5.7 + ], + [ + -2.05, + 4.74 + ], + [ + -3.1, + 5.09 + ], + [ + -3.11, + 5.11 + ], + [ + -3, + 5.12 + ], + [ + -2.97, + 5.1 + ], + [ + -2.93, + 5.12 + ], + [ + -2.9, + 5.12 + ], + [ + -2.72, + 5.14 + ], + [ + -2.76, + 5.6 + ], + [ + -3.03, + 5.71 + ], + [ + -3.26, + 6.62 + ], + [ + -2.78, + 7.95 + ], + [ + -2.49, + 8.21 + ], + [ + -2.62, + 8.92 + ], + [ + -2.78, + 9.06 + ], + [ + -2.69, + 9.49 + ] + ], + [ + [ + -2.41, + 8.58 + ], + [ + -2.46, + 8.45 + ], + [ + -2.29, + 8.22 + ], + [ + -2.19, + 8.32 + ], + [ + -2.29, + 8.29 + ], + [ + -2.25, + 8.48 + ], + [ + -2.41, + 8.58 + ] + ] + ] + }, + "properties": { + "A3": "GHA" + } + }, + { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + 167.45, + -22.66 + ], + [ + 167.44, + -22.54 + ], + [ + 167.56, + -22.62 + ], + [ + 167.45, + -22.66 + ] + ] + ], + [ + [ + [ + 166.09, + -21.94 + ], + [ + 164.95, + -21.36 + ], + [ + 164.84, + -21.06 + ], + [ + 164.46, + -20.85 + ], + [ + 164.19, + -20.34 + ], + [ + 164.03, + -20.3 + ], + [ + 164, + -20.08 + ], + [ + 165.24, + -20.77 + ], + [ + 165.63, + -21.28 + ], + [ + 166.94, + -22.09 + ], + [ + 167.01, + -22.32 + ], + [ + 166.45, + -22.31 + ], + [ + 166.09, + -21.94 + ] + ] + ], + [ + [ + [ + 168.11, + -21.44 + ], + [ + 168.12, + -21.63 + ], + [ + 167.85, + -21.6 + ], + [ + 167.8, + -21.38 + ], + [ + 168.11, + -21.44 + ] + ] + ], + [ + [ + [ + 167.01, + -20.92 + ], + [ + 167.18, + -20.83 + ], + [ + 167.04, + -20.73 + ], + [ + 167.25, + -20.7 + ], + [ + 167.41, + -21.16 + ], + [ + 167.01, + -20.92 + ] + ] + ] + ] + }, + "properties": { + "A3": "NCL" + } + }, + { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + 167.92, + -15.4 + ], + [ + 167.67, + -15.44 + ], + [ + 167.99, + -15.28 + ], + [ + 167.92, + -15.4 + ] + ] + ], + [ + [ + [ + 167.54, + -14.2 + ], + [ + 167.57, + -14.36 + ], + [ + 167.42, + -14.36 + ], + [ + 167.54, + -14.2 + ] + ] + ], + [ + [ + [ + 167.47, + -13.96 + ], + [ + 167.38, + -13.83 + ], + [ + 167.47, + -13.71 + ], + [ + 167.58, + -13.88 + ], + [ + 167.47, + -13.96 + ] + ] + ], + [ + [ + [ + 168.28, + -15.92 + ], + [ + 168.21, + -16.02 + ], + [ + 168.15, + -15.45 + ], + [ + 168.28, + -15.92 + ] + ] + ], + [ + [ + [ + 168.31, + -16.32 + ], + [ + 168.13, + -16.37 + ], + [ + 167.91, + -16.23 + ], + [ + 168.17, + -16.1 + ], + [ + 168.31, + -16.32 + ] + ] + ], + [ + [ + [ + 167.44, + -16.11 + ], + [ + 167.77, + -16.33 + ], + [ + 167.77, + -16.55 + ], + [ + 167.42, + -16.53 + ], + [ + 167.39, + -16.18 + ], + [ + 167.19, + -16.14 + ], + [ + 167.18, + -15.9 + ], + [ + 167.44, + -16.11 + ] + ] + ], + [ + [ + [ + 168.29, + -16.68 + ], + [ + 168.48, + -16.84 + ], + [ + 168.18, + -16.8 + ], + [ + 168.15, + -16.57 + ], + [ + 168.29, + -16.68 + ] + ] + ], + [ + [ + [ + 167.02, + -14.93 + ], + [ + 167.26, + -15.52 + ], + [ + 166.82, + -15.67 + ], + [ + 166.65, + -15.4 + ], + [ + 166.57, + -14.68 + ], + [ + 166.76, + -14.83 + ], + [ + 166.83, + -15.16 + ], + [ + 167.02, + -14.93 + ] + ] + ], + [ + [ + [ + 168.18, + -17.69 + ], + [ + 168.32, + -17.52 + ], + [ + 168.6, + -17.69 + ], + [ + 168.4, + -17.83 + ], + [ + 168.18, + -17.69 + ] + ] + ], + [ + [ + [ + 169.34, + -18.92 + ], + [ + 169, + -18.88 + ], + [ + 169.01, + -18.66 + ], + [ + 169.15, + -18.63 + ], + [ + 169.34, + -18.92 + ] + ] + ], + [ + [ + [ + 169.47, + -19.57 + ], + [ + 169.29, + -19.58 + ], + [ + 169.25, + -19.34 + ], + [ + 169.36, + -19.32 + ], + [ + 169.47, + -19.57 + ] + ] + ] + ] + }, + "properties": { + "A3": "VUT" + } + }, + { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + 125.3, + 24.73 + ], + [ + 125.27, + 24.92 + ], + [ + 125.47, + 24.72 + ], + [ + 125.3, + 24.73 + ] + ] + ], + [ + [ + [ + 124.14, + 24.35 + ], + [ + 124.08, + 24.45 + ], + [ + 124.34, + 24.61 + ], + [ + 124.14, + 24.35 + ] + ] + ], + [ + [ + [ + 123.8, + 24.42 + ], + [ + 123.94, + 24.36 + ], + [ + 123.88, + 24.26 + ], + [ + 123.66, + 24.31 + ], + [ + 123.8, + 24.42 + ] + ] + ], + [ + [ + [ + 129.54, + 28.45 + ], + [ + 129.72, + 28.46 + ], + [ + 129.38, + 28.11 + ], + [ + 129.13, + 28.25 + ], + [ + 129.54, + 28.45 + ] + ] + ], + [ + [ + [ + 129.21, + 28.08 + ], + [ + 129.21, + 28.2 + ], + [ + 129.35, + 28.11 + ], + [ + 129.21, + 28.08 + ] + ] + ], + [ + [ + [ + 128.91, + 27.7 + ], + [ + 128.97, + 27.89 + ], + [ + 129.04, + 27.76 + ], + [ + 128.91, + 27.7 + ] + ] + ], + [ + [ + [ + 127.83, + 26.18 + ], + [ + 127.66, + 26.08 + ], + [ + 127.71, + 26.44 + ], + [ + 127.98, + 26.58 + ], + [ + 127.88, + 26.71 + ], + [ + 128.12, + 26.66 + ], + [ + 128.26, + 26.87 + ], + [ + 128.25, + 26.65 + ], + [ + 127.83, + 26.43 + ], + [ + 127.83, + 26.18 + ] + ] + ], + [ + [ + [ + 133.31, + 36.17 + ], + [ + 133.18, + 36.21 + ], + [ + 133.28, + 36.35 + ], + [ + 133.31, + 36.17 + ] + ] + ], + [ + [ + [ + 138.22, + 37.81 + ], + [ + 138.24, + 38.08 + ], + [ + 138.51, + 38.33 + ], + [ + 138.5, + 37.92 + ], + [ + 138.22, + 37.81 + ] + ] + ], + [ + [ + [ + 134.93, + 34.46 + ], + [ + 134.95, + 34.27 + ], + [ + 134.73, + 34.19 + ], + [ + 134.66, + 34.29 + ], + [ + 135, + 34.61 + ], + [ + 134.93, + 34.46 + ] + ] + ], + [ + [ + [ + 133.13, + 33.91 + ], + [ + 133.63, + 34.05 + ], + [ + 133.56, + 34.26 + ], + [ + 134.14, + 34.4 + ], + [ + 134.59, + 34.24 + ], + [ + 134.62, + 33.85 + ], + [ + 134.75, + 33.83 + ], + [ + 134.31, + 33.58 + ], + [ + 134.18, + 33.24 + ], + [ + 133.93, + 33.49 + ], + [ + 133.55, + 33.56 + ], + [ + 133.01, + 33.01 + ], + [ + 133.02, + 32.72 + ], + [ + 132.63, + 32.76 + ], + [ + 132.72, + 32.9 + ], + [ + 132.47, + 32.91 + ], + [ + 132.41, + 33.21 + ], + [ + 132.56, + 33.23 + ], + [ + 132.37, + 33.32 + ], + [ + 132.42, + 33.46 + ], + [ + 132.01, + 33.34 + ], + [ + 132.65, + 33.7 + ], + [ + 132.89, + 34.12 + ], + [ + 133.13, + 33.91 + ] + ] + ], + [ + [ + [ + 134.19, + 34.49 + ], + [ + 134.37, + 34.56 + ], + [ + 134.34, + 34.43 + ], + [ + 134.19, + 34.49 + ] + ] + ], + [ + [ + [ + 133.97, + 34.61 + ], + [ + 133.93, + 34.45 + ], + [ + 133.7, + 34.56 + ], + [ + 132.64, + 34.2 + ], + [ + 132.35, + 34.36 + ], + [ + 132.14, + 33.83 + ], + [ + 131.79, + 34.06 + ], + [ + 131.75, + 34.07 + ], + [ + 131.4, + 34.07 + ], + [ + 131.27, + 33.92 + ], + [ + 131.04, + 34.05 + ], + [ + 130.92, + 33.94 + ], + [ + 130.87, + 34.29 + ], + [ + 131.04, + 34.37 + ], + [ + 130.97, + 34.44 + ], + [ + 131.4, + 34.42 + ], + [ + 132.63, + 35.29 + ], + [ + 132.63, + 35.44 + ], + [ + 133.09, + 35.6 + ], + [ + 133.4, + 35.45 + ], + [ + 134.54, + 35.67 + ], + [ + 134.91, + 35.61 + ], + [ + 135.22, + 35.78 + ], + [ + 135.3, + 35.66 + ], + [ + 135.15, + 35.56 + ], + [ + 135.32, + 35.45 + ], + [ + 135.46, + 35.6 + ], + [ + 135.72, + 35.48 + ], + [ + 136.02, + 35.76 + ], + [ + 136.09, + 35.68 + ], + [ + 135.96, + 35.98 + ], + [ + 136.12, + 36.25 + ], + [ + 136.69, + 36.67 + ], + [ + 136.76, + 37.36 + ], + [ + 137.35, + 37.52 + ], + [ + 136.86, + 37.11 + ], + [ + 137.06, + 37.11 + ], + [ + 136.99, + 36.86 + ], + [ + 137.22, + 36.75 + ], + [ + 138.54, + 37.37 + ], + [ + 138.84, + 37.82 + ], + [ + 139.37, + 38.1 + ], + [ + 139.83, + 38.91 + ], + [ + 140.08, + 39.72 + ], + [ + 139.69, + 40 + ], + [ + 139.86, + 39.98 + ], + [ + 140.03, + 40.22 + ], + [ + 139.86, + 40.61 + ], + [ + 140.32, + 40.87 + ], + [ + 140.34, + 41.26 + ], + [ + 140.63, + 41.19 + ], + [ + 140.73, + 40.83 + ], + [ + 140.88, + 41.01 + ], + [ + 141.11, + 40.87 + ], + [ + 141.21, + 40.95 + ], + [ + 141.2, + 41.29 + ], + [ + 140.76, + 41.15 + ], + [ + 140.92, + 41.55 + ], + [ + 141.27, + 41.35 + ], + [ + 141.47, + 41.43 + ], + [ + 141.43, + 40.7 + ], + [ + 141.82, + 40.27 + ], + [ + 142.07, + 39.55 + ], + [ + 141.92, + 39.1 + ], + [ + 141.62, + 39 + ], + [ + 141.67, + 38.86 + ], + [ + 141.44, + 38.67 + ], + [ + 141.52, + 38.27 + ], + [ + 141.27, + 38.42 + ], + [ + 140.93, + 38.17 + ], + [ + 140.98, + 37 + ], + [ + 140.8, + 36.91 + ], + [ + 140.56, + 36.28 + ], + [ + 140.84, + 35.75 + ], + [ + 140.45, + 35.52 + ], + [ + 140.38, + 35.19 + ], + [ + 139.89, + 34.9 + ], + [ + 139.75, + 34.97 + ], + [ + 139.78, + 35.31 + ], + [ + 140.13, + 35.57 + ], + [ + 139.76, + 35.66 + ], + [ + 139.68, + 35.14 + ], + [ + 139.54, + 35.31 + ], + [ + 139.16, + 35.26 + ], + [ + 139.14, + 34.89 + ], + [ + 138.84, + 34.6 + ], + [ + 138.76, + 34.97 + ], + [ + 138.91, + 35.05 + ], + [ + 138.7, + 35.14 + ], + [ + 138.36, + 34.91 + ], + [ + 138.23, + 34.59 + ], + [ + 137.6, + 34.67 + ], + [ + 137.55, + 34.81 + ], + [ + 137.55, + 34.68 + ], + [ + 137.02, + 34.58 + ], + [ + 137.34, + 34.78 + ], + [ + 137.03, + 34.77 + ], + [ + 136.98, + 34.97 + ], + [ + 136.89, + 34.72 + ], + [ + 136.9, + 35.08 + ], + [ + 136.7, + 35.07 + ], + [ + 136.53, + 34.61 + ], + [ + 136.92, + 34.44 + ], + [ + 136.9, + 34.28 + ], + [ + 136.66, + 34.35 + ], + [ + 136.32, + 34.2 + ], + [ + 135.76, + 33.43 + ], + [ + 135.06, + 33.88 + ], + [ + 135.21, + 34.15 + ], + [ + 135.07, + 34.3 + ], + [ + 135.42, + 34.52 + ], + [ + 135.41, + 34.7 + ], + [ + 135.05, + 34.62 + ], + [ + 134.47, + 34.81 + ], + [ + 133.97, + 34.61 + ] + ], + [ + [ + 140.39, + 36.1 + ], + [ + 140.21, + 36.07 + ], + [ + 140.51, + 35.96 + ], + [ + 140.39, + 36.1 + ] + ], + [ + [ + 136.14, + 35.5 + ], + [ + 135.88, + 35.01 + ], + [ + 136.25, + 35.28 + ], + [ + 136.14, + 35.5 + ] + ] + ], + [ + [ + [ + 129.47, + 33.35 + ], + [ + 129.56, + 33.41 + ], + [ + 129.37, + 33.17 + ], + [ + 129.47, + 33.35 + ] + ] + ], + [ + [ + [ + 128.66, + 32.72 + ], + [ + 128.81, + 32.8 + ], + [ + 128.9, + 32.65 + ], + [ + 128.64, + 32.59 + ], + [ + 128.66, + 32.72 + ] + ] + ], + [ + [ + [ + 130.08, + 32.22 + ], + [ + 129.97, + 32.24 + ], + [ + 130.01, + 32.53 + ], + [ + 130.46, + 32.53 + ], + [ + 130.08, + 32.22 + ] + ] + ], + [ + [ + [ + 130.28, + 33.17 + ], + [ + 130.12, + 33.1 + ], + [ + 130.12, + 32.88 + ], + [ + 130.33, + 32.86 + ], + [ + 130.36, + 32.68 + ], + [ + 130.17, + 32.59 + ], + [ + 130.08, + 32.79 + ], + [ + 129.74, + 32.57 + ], + [ + 129.87, + 32.75 + ], + [ + 129.63, + 32.93 + ], + [ + 129.68, + 33.1 + ], + [ + 129.79, + 32.87 + ], + [ + 130.02, + 32.84 + ], + [ + 129.55, + 33.22 + ], + [ + 129.57, + 33.38 + ], + [ + 129.86, + 33.28 + ], + [ + 129.85, + 33.56 + ], + [ + 130.02, + 33.45 + ], + [ + 130.21, + 33.67 + ], + [ + 130.4, + 33.6 + ], + [ + 130.29, + 33.68 + ], + [ + 130.53, + 33.89 + ], + [ + 130.89, + 33.89 + ], + [ + 131, + 33.97 + ], + [ + 131.1, + 33.62 + ], + [ + 131.42, + 33.56 + ], + [ + 131.67, + 33.67 + ], + [ + 131.74, + 33.47 + ], + [ + 131.51, + 33.27 + ], + [ + 131.9, + 33.27 + ], + [ + 131.79, + 33.12 + ], + [ + 132.09, + 32.93 + ], + [ + 131.69, + 32.56 + ], + [ + 131.35, + 31.37 + ], + [ + 131.11, + 31.48 + ], + [ + 131.01, + 31.36 + ], + [ + 131.13, + 31.28 + ], + [ + 130.66, + 30.99 + ], + [ + 130.8, + 31.34 + ], + [ + 130.59, + 31.59 + ], + [ + 130.77, + 31.56 + ], + [ + 130.8, + 31.7 + ], + [ + 130.64, + 31.73 + ], + [ + 130.51, + 31.49 + ], + [ + 130.59, + 31.16 + ], + [ + 130.11, + 31.41 + ], + [ + 130.33, + 31.56 + ], + [ + 130.18, + 32.11 + ], + [ + 130.34, + 32.11 + ], + [ + 130.66, + 32.63 + ], + [ + 130.46, + 32.61 + ], + [ + 130.62, + 32.79 + ], + [ + 130.28, + 33.17 + ] + ] + ], + [ + [ + [ + 129.4, + 34.48 + ], + [ + 129.35, + 34.3 + ], + [ + 129.23, + 34.36 + ], + [ + 129.45, + 34.71 + ], + [ + 129.4, + 34.48 + ] + ] + ], + [ + [ + [ + 129.35, + 34.28 + ], + [ + 129.17, + 34.1 + ], + [ + 129.2, + 34.33 + ], + [ + 129.35, + 34.28 + ] + ] + ], + [ + [ + [ + 130.52, + 30.23 + ], + [ + 130.38, + 30.38 + ], + [ + 130.5, + 30.47 + ], + [ + 130.67, + 30.38 + ], + [ + 130.52, + 30.23 + ] + ] + ], + [ + [ + [ + 143.24, + 41.94 + ], + [ + 141.7, + 42.66 + ], + [ + 141, + 42.3 + ], + [ + 140.71, + 42.58 + ], + [ + 140.48, + 42.59 + ], + [ + 140.29, + 42.25 + ], + [ + 141.19, + 41.8 + ], + [ + 140.97, + 41.71 + ], + [ + 140.64, + 41.82 + ], + [ + 140.2, + 41.4 + ], + [ + 139.99, + 41.55 + ], + [ + 140.13, + 41.97 + ], + [ + 139.77, + 42.26 + ], + [ + 139.82, + 42.61 + ], + [ + 140.52, + 42.99 + ], + [ + 140.35, + 43.33 + ], + [ + 141.16, + 43.14 + ], + [ + 141.37, + 43.26 + ], + [ + 141.33, + 43.72 + ], + [ + 141.65, + 43.94 + ], + [ + 141.79, + 44.62 + ], + [ + 141.57, + 45.23 + ], + [ + 141.64, + 45.45 + ], + [ + 141.94, + 45.52 + ], + [ + 142.99, + 44.56 + ], + [ + 143.75, + 44.11 + ], + [ + 144.1, + 44.13 + ], + [ + 144.14, + 44 + ], + [ + 144.24, + 44.11 + ], + [ + 144.32, + 43.95 + ], + [ + 144.72, + 43.92 + ], + [ + 145.34, + 44.34 + ], + [ + 145.06, + 43.78 + ], + [ + 145.34, + 43.59 + ], + [ + 145.19, + 43.62 + ], + [ + 145.28, + 43.29 + ], + [ + 145.52, + 43.23 + ], + [ + 145.82, + 43.39 + ], + [ + 145.52, + 43.16 + ], + [ + 145.15, + 43.14 + ], + [ + 144.97, + 42.98 + ], + [ + 144.89, + 43.08 + ], + [ + 144.78, + 42.93 + ], + [ + 144.28, + 43 + ], + [ + 143.93, + 42.88 + ], + [ + 143.47, + 42.55 + ], + [ + 143.24, + 41.94 + ] + ] + ] + ] + }, + "properties": { + "A3": "JPN" + } + }, + { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + 9.81, + 2.34 + ], + [ + 9.82, + 2.35 + ], + [ + 9.83, + 2.34 + ], + [ + 9.84, + 2.33 + ], + [ + 9.84, + 2.32 + ], + [ + 9.84, + 2.31 + ], + [ + 9.83, + 2.3 + ], + [ + 9.84, + 2.28 + ], + [ + 9.84, + 2.26 + ], + [ + 9.86, + 2.24 + ], + [ + 9.87, + 2.24 + ], + [ + 11.36, + 2.17 + ], + [ + 11.35, + 1 + ], + [ + 9.8, + 1 + ], + [ + 9.78, + 1.04 + ], + [ + 9.76, + 1.05 + ], + [ + 9.76, + 1.06 + ], + [ + 9.89, + 1.09 + ], + [ + 9.59, + 1.03 + ], + [ + 9.34, + 1.18 + ], + [ + 9.81, + 1.92 + ], + [ + 9.81, + 2.34 + ] + ] + ], + [ + [ + [ + 8.71, + 3.79 + ], + [ + 8.94, + 3.67 + ], + [ + 8.68, + 3.21 + ], + [ + 8.41, + 3.36 + ], + [ + 8.71, + 3.79 + ] + ] + ] + ] + }, + "properties": { + "A3": "GNQ" + } + }, + { + "type": "Feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + 0.23, + 15 + ], + [ + 0.7, + 14.94 + ], + [ + 0.71, + 14.95 + ], + [ + 0.97, + 14.98 + ], + [ + 1.31, + 15.28 + ], + [ + 3.04, + 15.43 + ], + [ + 3.07, + 15.42 + ], + [ + 3.51, + 15.37 + ], + [ + 3.89, + 15.72 + ], + [ + 4.2, + 16.4 + ], + [ + 4.27, + 19.14 + ], + [ + 5.81, + 19.45 + ], + [ + 7.51, + 20.88 + ], + [ + 12, + 23.52 + ], + [ + 13.54, + 23.17 + ], + [ + 14.23, + 22.61 + ], + [ + 15, + 23 + ], + [ + 15.2, + 21.5 + ], + [ + 15.63, + 20.96 + ], + [ + 15.58, + 20.77 + ], + [ + 16, + 20.35 + ], + [ + 15.75, + 19.93 + ], + [ + 15.51, + 16.9 + ], + [ + 14.38, + 15.73 + ], + [ + 13.86, + 15.03 + ], + [ + 13.7, + 14.55 + ], + [ + 13.48, + 14.46 + ], + [ + 13.63, + 13.71 + ], + [ + 13.34, + 13.72 + ], + [ + 13.2, + 13.51 + ], + [ + 12.83, + 13.45 + ], + [ + 12.44, + 13.07 + ], + [ + 12.26, + 13.11 + ], + [ + 12.17, + 13.1 + ], + [ + 12.17, + 13.11 + ], + [ + 11.46, + 13.38 + ], + [ + 10.66, + 13.36 + ], + [ + 10.01, + 13.18 + ], + [ + 9.66, + 12.81 + ], + [ + 9.33, + 12.81 + ], + [ + 8.7, + 12.92 + ], + [ + 7.82, + 13.34 + ], + [ + 6.94, + 13 + ], + [ + 6.43, + 13.6 + ], + [ + 5.51, + 13.88 + ], + [ + 5.5, + 13.88 + ], + [ + 5.45, + 13.87 + ], + [ + 5.44, + 13.87 + ], + [ + 4.47, + 13.68 + ], + [ + 4.14, + 13.48 + ], + [ + 4.1, + 12.99 + ], + [ + 3.65, + 12.52 + ], + [ + 3.61, + 11.7 + ], + [ + 3.6, + 11.7 + ], + [ + 3.58, + 11.72 + ], + [ + 3.56, + 11.73 + ], + [ + 3.55, + 11.74 + ], + [ + 3.56, + 11.75 + ], + [ + 3.56, + 11.76 + ], + [ + 3.56, + 11.77 + ], + [ + 3.55, + 11.78 + ], + [ + 3.54, + 11.78 + ], + [ + 3.53, + 11.78 + ], + [ + 3.52, + 11.8 + ], + [ + 3.52, + 11.81 + ], + [ + 3.5, + 11.84 + ], + [ + 3.49, + 11.85 + ], + [ + 3.48, + 11.86 + ], + [ + 3.47, + 11.86 + ], + [ + 3.45, + 11.86 + ], + [ + 3.41, + 11.88 + ], + [ + 3.4, + 11.88 + ], + [ + 3.37, + 11.89 + ], + [ + 3.35, + 11.88 + ], + [ + 3.33, + 11.88 + ], + [ + 3.3, + 11.9 + ], + [ + 3.3, + 11.91 + ], + [ + 3.28, + 11.95 + ], + [ + 3.28, + 11.96 + ], + [ + 3.27, + 11.98 + ], + [ + 3.27, + 12.01 + ], + [ + 3.26, + 12.02 + ], + [ + 3.22, + 12.06 + ], + [ + 3.21, + 12.07 + ], + [ + 3.19, + 12.09 + ], + [ + 3.18, + 12.09 + ], + [ + 3.18, + 12.1 + ], + [ + 3.13, + 12.14 + ], + [ + 3.13, + 12.15 + ], + [ + 3.1, + 12.17 + ], + [ + 3.09, + 12.18 + ], + [ + 3.07, + 12.19 + ], + [ + 3.06, + 12.19 + ], + [ + 3.06, + 12.21 + ], + [ + 3.05, + 12.21 + ], + [ + 3.05, + 12.22 + ], + [ + 3.02, + 12.24 + ], + [ + 3.02, + 12.25 + ], + [ + 3.02, + 12.26 + ], + [ + 2.99, + 12.28 + ], + [ + 2.98, + 12.28 + ], + [ + 2.95, + 12.31 + ], + [ + 2.94, + 12.32 + ], + [ + 2.91, + 12.35 + ], + [ + 2.9, + 12.36 + ], + [ + 2.89, + 12.36 + ], + [ + 2.88, + 12.38 + ], + [ + 2.87, + 12.39 + ], + [ + 2.86, + 12.39 + ], + [ + 2.85, + 12.4 + ], + [ + 2.38, + 12.25 + ], + [ + 2.41, + 11.9 + ], + [ + 2.07, + 12.35 + ], + [ + 2.26, + 12.42 + ], + [ + 2.22, + 12.59 + ], + [ + 2.02, + 12.72 + ], + [ + 1.57, + 12.61 + ], + [ + 1.16, + 13.01 + ], + [ + 0.97, + 13.01 + ], + [ + 0.99, + 13.37 + ], + [ + 1.28, + 13.35 + ], + [ + 0.62, + 13.69 + ], + [ + 0.47, + 13.91 + ], + [ + 0.17, + 14.52 + ], + [ + 0.23, + 15 + ] + ], + [ + [ + 1.43, + 14.22 + ], + [ + 1.21, + 14.36 + ], + [ + 1.52, + 14.14 + ], + [ + 1.43, + 14.22 + ] + ] + ] + }, + "properties": { + "A3": "NER" + } + }, + { + "type": "Feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + 1.43, + 42.59 + ], + [ + 1.44, + 42.59 + ], + [ + 1.44, + 42.6 + ], + [ + 1.49, + 42.65 + ], + [ + 1.5, + 42.65 + ], + [ + 1.71, + 42.62 + ], + [ + 1.72, + 42.61 + ], + [ + 1.72, + 42.52 + ], + [ + 1.73, + 42.5 + ], + [ + 1.66, + 42.49 + ], + [ + 1.45, + 42.44 + ], + [ + 1.43, + 42.59 + ] + ] + ] + }, + "properties": { + "A3": "AND" + } + }, + { + "type": "Feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + 43.47, + 41.12 + ], + [ + 43.81, + 41.15 + ], + [ + 44.83, + 41.23 + ], + [ + 45.01, + 41.3 + ], + [ + 45.13, + 41.07 + ], + [ + 45.13, + 41.08 + ], + [ + 45.23, + 41.03 + ], + [ + 45.23, + 41.02 + ], + [ + 45.56, + 40.88 + ], + [ + 45.57, + 40.88 + ], + [ + 45.38, + 40.71 + ], + [ + 45.44, + 40.52 + ], + [ + 45.98, + 40.21 + ], + [ + 45.84, + 39.99 + ], + [ + 45.6, + 39.99 + ], + [ + 46.22, + 39.6 + ], + [ + 46.24, + 39.6 + ], + [ + 46.58, + 39.55 + ], + [ + 46.39, + 39.43 + ], + [ + 46.63, + 39.23 + ], + [ + 46.43, + 39.19 + ], + [ + 46.53, + 38.87 + ], + [ + 46.52, + 38.88 + ], + [ + 46.53, + 38.89 + ], + [ + 46.51, + 38.89 + ], + [ + 46.5, + 38.89 + ], + [ + 46.48, + 38.89 + ], + [ + 46.47, + 38.89 + ], + [ + 46.46, + 38.89 + ], + [ + 46.46, + 38.9 + ], + [ + 46.45, + 38.9 + ], + [ + 46.43, + 38.89 + ], + [ + 46.42, + 38.89 + ], + [ + 46.41, + 38.89 + ], + [ + 46.4, + 38.9 + ], + [ + 46.39, + 38.9 + ], + [ + 46.38, + 38.91 + ], + [ + 46.37, + 38.91 + ], + [ + 46.34, + 38.92 + ], + [ + 46.34, + 38.91 + ], + [ + 46.27, + 38.89 + ], + [ + 46.16, + 38.84 + ], + [ + 46.14, + 38.84 + ], + [ + 45.78, + 39.58 + ], + [ + 45.47, + 39.49 + ], + [ + 45.06, + 39.79 + ], + [ + 44.76, + 39.71 + ], + [ + 44.74, + 39.75 + ], + [ + 44.71, + 39.76 + ], + [ + 44.69, + 39.79 + ], + [ + 44.67, + 39.79 + ], + [ + 44.61, + 39.83 + ], + [ + 44.6, + 39.82 + ], + [ + 44.56, + 39.88 + ], + [ + 44.54, + 39.91 + ], + [ + 44.52, + 39.93 + ], + [ + 44.36, + 40.02 + ], + [ + 44.34, + 40.03 + ], + [ + 44.29, + 40.04 + ], + [ + 44.25, + 40.05 + ], + [ + 44.23, + 40.05 + ], + [ + 44.23, + 40.04 + ], + [ + 43.68, + 40.1 + ], + [ + 43.59, + 40.45 + ], + [ + 43.57, + 40.46 + ], + [ + 43.55, + 40.47 + ], + [ + 43.57, + 40.49 + ], + [ + 43.57, + 40.5 + ], + [ + 43.64, + 40.53 + ], + [ + 43.67, + 40.57 + ], + [ + 43.7, + 40.61 + ], + [ + 43.71, + 40.62 + ], + [ + 43.72, + 40.65 + ], + [ + 43.75, + 40.68 + ], + [ + 43.75, + 40.69 + ], + [ + 43.47, + 41.12 + ] + ], + [ + [ + 45, + 40.58 + ], + [ + 45.25, + 40.18 + ], + [ + 45.64, + 40.21 + ], + [ + 45.44, + 40.48 + ], + [ + 45.02, + 40.61 + ], + [ + 45, + 40.58 + ] + ] + ] + }, + "properties": { + "A3": "ARM" + } + }, + { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + -117.12, + 32.53 + ], + [ + -116.63, + 32.58 + ], + [ + -116.62, + 32.58 + ], + [ + -115.38, + 32.67 + ], + [ + -114.79, + 32.71 + ], + [ + -114.78, + 32.71 + ], + [ + -114.76, + 32.72 + ], + [ + -114.72, + 32.71 + ], + [ + -114.78, + 32.49 + ], + [ + -114.4, + 32.37 + ], + [ + -114.38, + 32.36 + ], + [ + -113.44, + 32.07 + ], + [ + -113.42, + 32.07 + ], + [ + -111.07, + 31.33 + ], + [ + -108.21, + 31.33 + ], + [ + -108.21, + 31.78 + ], + [ + -106.53, + 31.78 + ], + [ + -106, + 31.39 + ], + [ + -105.91, + 31.31 + ], + [ + -104.92, + 30.6 + ], + [ + -104.51, + 29.63 + ], + [ + -103.29, + 28.98 + ], + [ + -102.87, + 29.22 + ], + [ + -102.67, + 29.74 + ], + [ + -102.32, + 29.88 + ], + [ + -101.56, + 29.8 + ], + [ + -101.55, + 29.8 + ], + [ + -101.54, + 29.76 + ], + [ + -101.52, + 29.76 + ], + [ + -101.51, + 29.76 + ], + [ + -101.43, + 29.76 + ], + [ + -101.42, + 29.77 + ], + [ + -101.37, + 29.7 + ], + [ + -101.37, + 29.68 + ], + [ + -101.34, + 29.66 + ], + [ + -101.34, + 29.65 + ], + [ + -101.33, + 29.66 + ], + [ + -101.31, + 29.58 + ], + [ + -101.3, + 29.57 + ], + [ + -101.29, + 29.57 + ], + [ + -101.28, + 29.59 + ], + [ + -101.28, + 29.61 + ], + [ + -101.28, + 29.62 + ], + [ + -101.25, + 29.62 + ], + [ + -101.25, + 29.61 + ], + [ + -101.25, + 29.6 + ], + [ + -101.31, + 29.5 + ], + [ + -101.19, + 29.52 + ], + [ + -101.17, + 29.5 + ], + [ + -101.12, + 29.47 + ], + [ + -101.06, + 29.45 + ], + [ + -101.06, + 29.44 + ], + [ + -101.05, + 29.44 + ], + [ + -101.03, + 29.4 + ], + [ + -100.99, + 29.36 + ], + [ + -100.95, + 29.35 + ], + [ + -100.94, + 29.34 + ], + [ + -100.92, + 29.33 + ], + [ + -100.9, + 29.31 + ], + [ + -100.88, + 29.29 + ], + [ + -100.79, + 29.23 + ], + [ + -100.78, + 29.23 + ], + [ + -100.77, + 29.19 + ], + [ + -100.74, + 29.15 + ], + [ + -100.7, + 29.12 + ], + [ + -100.66, + 29.08 + ], + [ + -100.66, + 29.06 + ], + [ + -100.66, + 29.02 + ], + [ + -100.63, + 28.92 + ], + [ + -100.64, + 28.92 + ], + [ + -100.61, + 28.9 + ], + [ + -100.6, + 28.9 + ], + [ + -100.59, + 28.88 + ], + [ + -100.59, + 28.87 + ], + [ + -100.59, + 28.86 + ], + [ + -100.57, + 28.83 + ], + [ + -100.55, + 28.83 + ], + [ + -100.53, + 28.77 + ], + [ + -100.51, + 28.73 + ], + [ + -100.5, + 28.68 + ], + [ + -100.5, + 28.67 + ], + [ + -100.48, + 28.65 + ], + [ + -100.42, + 28.59 + ], + [ + -100.41, + 28.59 + ], + [ + -100.41, + 28.56 + ], + [ + -100.37, + 28.51 + ], + [ + -100.35, + 28.5 + ], + [ + -100.35, + 28.48 + ], + [ + -100.35, + 28.46 + ], + [ + -100.29, + 28.3 + ], + [ + -100.26, + 28.25 + ], + [ + -100.26, + 28.24 + ], + [ + -100.22, + 28.23 + ], + [ + -99.8, + 27.75 + ], + [ + -99.8, + 27.74 + ], + [ + -99.76, + 27.72 + ], + [ + -99.69, + 27.67 + ], + [ + -99.69, + 27.66 + ], + [ + -99.67, + 27.66 + ], + [ + -99.65, + 27.63 + ], + [ + -99.63, + 27.64 + ], + [ + -99.62, + 27.64 + ], + [ + -99.6, + 27.64 + ], + [ + -99.58, + 27.61 + ], + [ + -99.58, + 27.6 + ], + [ + -99.54, + 27.61 + ], + [ + -99.53, + 27.59 + ], + [ + -99.51, + 27.57 + ], + [ + -99.49, + 27.45 + ], + [ + -99.5, + 27.45 + ], + [ + -99.49, + 27.41 + ], + [ + -99.49, + 27.39 + ], + [ + -99.51, + 27.35 + ], + [ + -99.54, + 27.32 + ], + [ + -99.54, + 27.31 + ], + [ + -99.49, + 27.3 + ], + [ + -99.49, + 27.29 + ], + [ + -99.45, + 27.25 + ], + [ + -99.44, + 27.25 + ], + [ + -99.43, + 27.18 + ], + [ + -99.43, + 27.14 + ], + [ + -99.45, + 27.07 + ], + [ + -99.45, + 27.06 + ], + [ + -99.45, + 27.05 + ], + [ + -99.44, + 27.04 + ], + [ + -99.45, + 27.02 + ], + [ + -99.44, + 27.02 + ], + [ + -99.41, + 27 + ], + [ + -99.4, + 27 + ], + [ + -99.39, + 26.99 + ], + [ + -99.39, + 26.98 + ], + [ + -99.36, + 26.93 + ], + [ + -99.33, + 26.92 + ], + [ + -99.32, + 26.9 + ], + [ + -99.33, + 26.89 + ], + [ + -99.34, + 26.86 + ], + [ + -99.26, + 26.82 + ], + [ + -99.26, + 26.81 + ], + [ + -99.17, + 26.55 + ], + [ + -99.16, + 26.54 + ], + [ + -99.14, + 26.53 + ], + [ + -99.1, + 26.49 + ], + [ + -99.1, + 26.45 + ], + [ + -99.1, + 26.41 + ], + [ + -99.09, + 26.41 + ], + [ + -99.07, + 26.4 + ], + [ + -99.03, + 26.41 + ], + [ + -99.01, + 26.39 + ], + [ + -98.99, + 26.39 + ], + [ + -98.98, + 26.39 + ], + [ + -98.92, + 26.39 + ], + [ + -98.9, + 26.36 + ], + [ + -98.89, + 26.35 + ], + [ + -98.81, + 26.37 + ], + [ + -98.79, + 26.34 + ], + [ + -98.79, + 26.33 + ], + [ + -98.75, + 26.29 + ], + [ + -98.74, + 26.3 + ], + [ + -98.7, + 26.28 + ], + [ + -98.68, + 26.26 + ], + [ + -98.68, + 26.25 + ], + [ + -98.66, + 26.24 + ], + [ + -98.65, + 26.24 + ], + [ + -98.63, + 26.25 + ], + [ + -98.61, + 26.25 + ], + [ + -98.56, + 26.24 + ], + [ + -98.56, + 26.23 + ], + [ + -98.53, + 26.23 + ], + [ + -98.51, + 26.21 + ], + [ + -98.49, + 26.21 + ], + [ + -98.48, + 26.21 + ], + [ + -98.48, + 26.22 + ], + [ + -98.46, + 26.22 + ], + [ + -98.45, + 26.22 + ], + [ + -98.44, + 26.2 + ], + [ + -98.38, + 26.16 + ], + [ + -98.37, + 26.16 + ], + [ + -98.36, + 26.16 + ], + [ + -98.36, + 26.15 + ], + [ + -98.35, + 26.15 + ], + [ + -98.35, + 26.16 + ], + [ + -98.33, + 26.14 + ], + [ + -98.3, + 26.12 + ], + [ + -98.27, + 26.12 + ], + [ + -98.26, + 26.08 + ], + [ + -98.25, + 26.08 + ], + [ + -98.24, + 26.07 + ], + [ + -98.24, + 26.08 + ], + [ + -98.22, + 26.08 + ], + [ + -98.22, + 26.07 + ], + [ + -98.18, + 26.07 + ], + [ + -98.17, + 26.07 + ], + [ + -98.15, + 26.06 + ], + [ + -98.09, + 26.06 + ], + [ + -98.08, + 26.06 + ], + [ + -98.04, + 26.04 + ], + [ + -98.02, + 26.06 + ], + [ + -97.99, + 26.06 + ], + [ + -97.98, + 26.06 + ], + [ + -97.97, + 26.06 + ], + [ + -97.93, + 26.05 + ], + [ + -97.93, + 26.06 + ], + [ + -97.91, + 26.06 + ], + [ + -97.87, + 26.06 + ], + [ + -97.83, + 26.06 + ], + [ + -97.82, + 26.06 + ], + [ + -97.8, + 26.06 + ], + [ + -97.8, + 26.05 + ], + [ + -97.69, + 26.02 + ], + [ + -97.65, + 26.02 + ], + [ + -97.63, + 26 + ], + [ + -97.6, + 25.96 + ], + [ + -97.58, + 25.94 + ], + [ + -97.54, + 25.92 + ], + [ + -97.5, + 25.89 + ], + [ + -97.5, + 25.88 + ], + [ + -97.49, + 25.88 + ], + [ + -97.45, + 25.86 + ], + [ + -97.4, + 25.84 + ], + [ + -97.41, + 25.84 + ], + [ + -97.4, + 25.84 + ], + [ + -97.38, + 25.84 + ], + [ + -97.36, + 25.88 + ], + [ + -97.37, + 25.88 + ], + [ + -97.36, + 25.92 + ], + [ + -97.3, + 25.93 + ], + [ + -97.29, + 25.93 + ], + [ + -97.28, + 25.94 + ], + [ + -97.26, + 25.95 + ], + [ + -97.22, + 25.96 + ], + [ + -97.21, + 25.96 + ], + [ + -97.2, + 25.96 + ], + [ + -97.19, + 25.95 + ], + [ + -97.19, + 25.96 + ], + [ + -97.17, + 25.96 + ], + [ + -97.16, + 25.95 + ], + [ + -97.15, + 25.96 + ], + [ + -97.42, + 25.24 + ], + [ + -97.39, + 25.4 + ], + [ + -97.54, + 25.47 + ], + [ + -97.54, + 25.28 + ], + [ + -97.69, + 25.38 + ], + [ + -97.84, + 25.27 + ], + [ + -97.76, + 25.17 + ], + [ + -97.76, + 24.96 + ], + [ + -97.63, + 24.92 + ], + [ + -97.77, + 24.9 + ], + [ + -97.74, + 24.49 + ], + [ + -97.87, + 24.51 + ], + [ + -97.8, + 24.3 + ], + [ + -97.74, + 24.44 + ], + [ + -97.75, + 23.79 + ], + [ + -97.71, + 24.28 + ], + [ + -97.77, + 22.89 + ], + [ + -97.87, + 22.35 + ], + [ + -98.03, + 22.31 + ], + [ + -97.82, + 22.05 + ], + [ + -97.89, + 22.23 + ], + [ + -97.83, + 22.34 + ], + [ + -97.69, + 21.68 + ], + [ + -97.17, + 20.64 + ], + [ + -96.55, + 19.93 + ], + [ + -96.29, + 19.31 + ], + [ + -96.37, + 19.36 + ], + [ + -95.97, + 19.06 + ], + [ + -95.89, + 18.72 + ], + [ + -95.83, + 18.82 + ], + [ + -95.19, + 18.71 + ], + [ + -94.81, + 18.54 + ], + [ + -94.64, + 18.15 + ], + [ + -94.42, + 18.17 + ], + [ + -94.59, + 18.12 + ], + [ + -94.46, + 18.01 + ], + [ + -94.41, + 18.17 + ], + [ + -92.91, + 18.44 + ], + [ + -92.34, + 18.67 + ], + [ + -91.96, + 18.7 + ], + [ + -91.88, + 18.56 + ], + [ + -91.93, + 18.62 + ], + [ + -92.01, + 18.55 + ], + [ + -92.06, + 18.62 + ], + [ + -92.2, + 18.61 + ], + [ + -92.3, + 18.49 + ], + [ + -92.08, + 18.59 + ], + [ + -91.98, + 18.47 + ], + [ + -91.96, + 18.58 + ], + [ + -91.79, + 18.49 + ], + [ + -91.84, + 18.42 + ], + [ + -91.7, + 18.33 + ], + [ + -91.77, + 18.49 + ], + [ + -91.49, + 18.45 + ], + [ + -91.55, + 18.28 + ], + [ + -91.23, + 18.62 + ], + [ + -91.21, + 18.75 + ], + [ + -91.35, + 18.8 + ], + [ + -91.31, + 18.88 + ], + [ + -91.35, + 18.89 + ], + [ + -91.1, + 19.03 + ], + [ + -91.39, + 18.89 + ], + [ + -91.5, + 18.79 + ], + [ + -91.39, + 18.89 + ], + [ + -91.12, + 19.03 + ], + [ + -90.77, + 19.29 + ], + [ + -90.71, + 19.67 + ], + [ + -90.44, + 19.96 + ], + [ + -90.49, + 20.49 + ], + [ + -90.26, + 21.04 + ], + [ + -89.7, + 21.28 + ], + [ + -88.12, + 21.61 + ], + [ + -87.95, + 21.56 + ], + [ + -87.84, + 21.56 + ], + [ + -87.77, + 21.5 + ], + [ + -87.59, + 21.49 + ], + [ + -87.92, + 21.59 + ], + [ + -88.01, + 21.58 + ], + [ + -88.11, + 21.62 + ], + [ + -88.18, + 21.61 + ], + [ + -88.14, + 21.62 + ], + [ + -87.95, + 21.61 + ], + [ + -87.5, + 21.49 + ], + [ + -87.59, + 21.49 + ], + [ + -87.47, + 21.46 + ], + [ + -87.29, + 21.44 + ], + [ + -87.2, + 21.38 + ], + [ + -87.08, + 21.58 + ], + [ + -86.82, + 21.22 + ], + [ + -86.8, + 21.41 + ], + [ + -86.8, + 21.03 + ], + [ + -87.5, + 20.14 + ], + [ + -87.5, + 19.93 + ], + [ + -87.46, + 19.99 + ], + [ + -87.43, + 19.88 + ], + [ + -87.47, + 19.78 + ], + [ + -87.47, + 19.95 + ], + [ + -87.5, + 19.82 + ], + [ + -87.74, + 19.67 + ], + [ + -87.69, + 19.48 + ], + [ + -87.46, + 19.56 + ], + [ + -87.72, + 19.23 + ], + [ + -87.45, + 19.31 + ], + [ + -87.84, + 18.21 + ], + [ + -88.07, + 18.48 + ], + [ + -88.03, + 18.89 + ], + [ + -88.32, + 18.49 + ], + [ + -88.38, + 18.48 + ], + [ + -88.52, + 18.46 + ], + [ + -88.86, + 17.89 + ], + [ + -89.15, + 17.94 + ], + [ + -89.15, + 17.82 + ], + [ + -90.13, + 17.82 + ], + [ + -90.31, + 17.81 + ], + [ + -90.39, + 17.81 + ], + [ + -90.4, + 17.81 + ], + [ + -90.44, + 17.81 + ], + [ + -90.99, + 17.82 + ], + [ + -90.99, + 17.25 + ], + [ + -91.43, + 17.23 + ], + [ + -91.43, + 17.22 + ], + [ + -91.41, + 17.21 + ], + [ + -91.39, + 17.21 + ], + [ + -91.38, + 17.21 + ], + [ + -91.32, + 17.18 + ], + [ + -91.31, + 17.18 + ], + [ + -91.3, + 17.18 + ], + [ + -91.29, + 17.18 + ], + [ + -91.27, + 17.14 + ], + [ + -91.27, + 17.12 + ], + [ + -91.26, + 17.1 + ], + [ + -91.25, + 17.1 + ], + [ + -91.23, + 17.1 + ], + [ + -91.21, + 17.06 + ], + [ + -91.19, + 17.04 + ], + [ + -91.12, + 17 + ], + [ + -91.12, + 16.99 + ], + [ + -91.07, + 16.91 + ], + [ + -91.01, + 16.89 + ], + [ + -90.99, + 16.87 + ], + [ + -90.99, + 16.86 + ], + [ + -90.97, + 16.87 + ], + [ + -90.97, + 16.86 + ], + [ + -90.96, + 16.86 + ], + [ + -90.94, + 16.86 + ], + [ + -90.93, + 16.83 + ], + [ + -90.92, + 16.82 + ], + [ + -90.91, + 16.82 + ], + [ + -90.9, + 16.82 + ], + [ + -90.89, + 16.83 + ], + [ + -90.87, + 16.82 + ], + [ + -90.86, + 16.8 + ], + [ + -90.8, + 16.78 + ], + [ + -90.77, + 16.76 + ], + [ + -90.75, + 16.75 + ], + [ + -90.75, + 16.74 + ], + [ + -90.71, + 16.72 + ], + [ + -90.71, + 16.7 + ], + [ + -90.7, + 16.7 + ], + [ + -90.68, + 16.69 + ], + [ + -90.68, + 16.68 + ], + [ + -90.66, + 16.64 + ], + [ + -90.66, + 16.62 + ], + [ + -90.66, + 16.6 + ], + [ + -90.67, + 16.58 + ], + [ + -90.63, + 16.57 + ], + [ + -90.64, + 16.57 + ], + [ + -90.64, + 16.53 + ], + [ + -90.64, + 16.51 + ], + [ + -90.63, + 16.51 + ], + [ + -90.63, + 16.49 + ], + [ + -90.63, + 16.48 + ], + [ + -90.6, + 16.49 + ], + [ + -90.59, + 16.48 + ], + [ + -90.58, + 16.47 + ], + [ + -90.57, + 16.47 + ], + [ + -90.55, + 16.48 + ], + [ + -90.53, + 16.46 + ], + [ + -90.52, + 16.47 + ], + [ + -90.48, + 16.46 + ], + [ + -90.48, + 16.42 + ], + [ + -90.45, + 16.42 + ], + [ + -90.44, + 16.42 + ], + [ + -90.4, + 16.42 + ], + [ + -90.39, + 16.42 + ], + [ + -90.4, + 16.35 + ], + [ + -90.4, + 16.34 + ], + [ + -90.44, + 16.3 + ], + [ + -90.42, + 16.26 + ], + [ + -90.44, + 16.26 + ], + [ + -90.43, + 16.17 + ], + [ + -90.44, + 16.1 + ], + [ + -90.45, + 16.08 + ], + [ + -91.67, + 16.07 + ], + [ + -91.69, + 16.07 + ], + [ + -92.21, + 15.26 + ], + [ + -92.06, + 15.07 + ], + [ + -92.17, + 14.86 + ], + [ + -92.18, + 14.82 + ], + [ + -92.18, + 14.8 + ], + [ + -92.17, + 14.79 + ], + [ + -92.17, + 14.75 + ], + [ + -92.15, + 14.72 + ], + [ + -92.15, + 14.71 + ], + [ + -92.15, + 14.67 + ], + [ + -92.16, + 14.65 + ], + [ + -92.18, + 14.61 + ], + [ + -92.18, + 14.6 + ], + [ + -92.18, + 14.58 + ], + [ + -92.19, + 14.57 + ], + [ + -92.2, + 14.57 + ], + [ + -92.22, + 14.54 + ], + [ + -93.69, + 15.98 + ], + [ + -93.78, + 15.92 + ], + [ + -93.66, + 15.83 + ], + [ + -94.38, + 16.3 + ], + [ + -94.42, + 16.2 + ], + [ + -93.97, + 15.99 + ], + [ + -94.75, + 16.21 + ], + [ + -94.53, + 16.21 + ], + [ + -94.61, + 16.36 + ], + [ + -94.88, + 16.3 + ], + [ + -94.76, + 16.34 + ], + [ + -94.83, + 16.44 + ], + [ + -95.11, + 16.26 + ], + [ + -94.76, + 16.21 + ], + [ + -95.24, + 16.17 + ], + [ + -95.44, + 15.98 + ], + [ + -96.56, + 15.66 + ], + [ + -97.2, + 15.96 + ], + [ + -97.78, + 15.98 + ], + [ + -98.13, + 16.24 + ], + [ + -98.55, + 16.31 + ], + [ + -98.77, + 16.55 + ], + [ + -99.62, + 16.72 + ], + [ + -100.37, + 17.11 + ], + [ + -101.06, + 17.27 + ], + [ + -101.96, + 17.97 + ], + [ + -102.19, + 17.92 + ], + [ + -103.49, + 18.33 + ], + [ + -103.75, + 18.74 + ], + [ + -104.94, + 19.31 + ], + [ + -105.38, + 19.85 + ], + [ + -105.69, + 20.41 + ], + [ + -105.24, + 20.58 + ], + [ + -105.34, + 20.76 + ], + [ + -105.54, + 20.77 + ], + [ + -105.25, + 21.04 + ], + [ + -105.19, + 21.46 + ], + [ + -105.45, + 21.63 + ], + [ + -105.47, + 21.98 + ], + [ + -105.52, + 21.81 + ], + [ + -105.64, + 21.99 + ], + [ + -105.64, + 22.18 + ], + [ + -105.54, + 21.97 + ], + [ + -105.32, + 22.19 + ], + [ + -105.61, + 22.3 + ], + [ + -105.64, + 22.73 + ], + [ + -105.81, + 22.76 + ], + [ + -105.7, + 22.47 + ], + [ + -106.43, + 23.18 + ], + [ + -107.14, + 24.15 + ], + [ + -107.22, + 24.13 + ], + [ + -107.28, + 24.24 + ], + [ + -107.42, + 24.25 + ], + [ + -107.81, + 24.5 + ], + [ + -107.49, + 24.31 + ], + [ + -107.52, + 24.54 + ], + [ + -107.64, + 24.46 + ], + [ + -108, + 24.65 + ], + [ + -108.01, + 25.08 + ], + [ + -108.36, + 25.33 + ], + [ + -108.39, + 25.19 + ], + [ + -108.68, + 25.54 + ], + [ + -109.05, + 25.47 + ], + [ + -109.12, + 25.55 + ], + [ + -108.99, + 25.54 + ], + [ + -108.91, + 25.67 + ], + [ + -109.06, + 25.58 + ], + [ + -109.25, + 25.75 + ], + [ + -109.29, + 25.66 + ], + [ + -109.44, + 26 + ], + [ + -109.25, + 26.31 + ], + [ + -109.3, + 26.13 + ], + [ + -109.21, + 26.34 + ], + [ + -109.12, + 26.17 + ], + [ + -109.08, + 26.27 + ], + [ + -109.26, + 26.48 + ], + [ + -109.26, + 26.32 + ], + [ + -109.31, + 26.57 + ], + [ + -109.51, + 26.75 + ], + [ + -109.77, + 26.71 + ], + [ + -109.97, + 27.11 + ], + [ + -110.52, + 27.29 + ], + [ + -110.41, + 27.29 + ], + [ + -110.62, + 27.6 + ], + [ + -110.51, + 27.86 + ], + [ + -111.11, + 27.94 + ], + [ + -111.46, + 28.32 + ], + [ + -111.37, + 28.37 + ], + [ + -111.71, + 28.46 + ], + [ + -111.95, + 28.76 + ], + [ + -111.84, + 28.81 + ], + [ + -112.17, + 28.97 + ], + [ + -112.23, + 29.31 + ], + [ + -112.41, + 29.34 + ], + [ + -113.09, + 30.68 + ], + [ + -113.06, + 31.16 + ], + [ + -113.62, + 31.33 + ], + [ + -113.66, + 31.5 + ], + [ + -113.98, + 31.66 + ], + [ + -114.15, + 31.49 + ], + [ + -114.79, + 31.82 + ], + [ + -114.94, + 31.32 + ], + [ + -114.71, + 30.91 + ], + [ + -114.56, + 30.01 + ], + [ + -113.64, + 29.28 + ], + [ + -113.53, + 28.89 + ], + [ + -113.39, + 28.94 + ], + [ + -113.1, + 28.51 + ], + [ + -112.85, + 28.44 + ], + [ + -112.77, + 27.86 + ], + [ + -112.33, + 27.52 + ], + [ + -112.22, + 27.21 + ], + [ + -111.95, + 27.1 + ], + [ + -111.77, + 26.55 + ], + [ + -111.85, + 26.88 + ], + [ + -111.56, + 26.7 + ], + [ + -111.31, + 25.77 + ], + [ + -110.69, + 24.88 + ], + [ + -110.68, + 24.36 + ], + [ + -110.56, + 24.21 + ], + [ + -110.32, + 24.18 + ], + [ + -110.42, + 24.11 + ], + [ + -110.3, + 24.18 + ], + [ + -110.28, + 24.35 + ], + [ + -109.98, + 24.04 + ], + [ + -109.83, + 24.06 + ], + [ + -109.7, + 23.66 + ], + [ + -109.42, + 23.45 + ], + [ + -109.53, + 23.11 + ], + [ + -110.01, + 22.9 + ], + [ + -110.33, + 23.56 + ], + [ + -111.64, + 24.56 + ], + [ + -111.82, + 24.61 + ], + [ + -111.82, + 24.51 + ], + [ + -112, + 24.88 + ], + [ + -111.95, + 24.75 + ], + [ + -112.04, + 24.85 + ], + [ + -112.08, + 24.73 + ], + [ + -112.17, + 24.96 + ], + [ + -111.98, + 25.51 + ], + [ + -112.19, + 25.98 + ], + [ + -113.06, + 26.6 + ], + [ + -113.23, + 26.79 + ], + [ + -113.16, + 26.99 + ], + [ + -113.27, + 26.75 + ], + [ + -113.45, + 26.83 + ], + [ + -113.61, + 26.71 + ], + [ + -113.86, + 26.97 + ], + [ + -114.44, + 27.18 + ], + [ + -114.51, + 27.42 + ], + [ + -115.01, + 27.72 + ], + [ + -115.06, + 27.86 + ], + [ + -114.5, + 27.77 + ], + [ + -114.31, + 27.87 + ], + [ + -114.11, + 27.6 + ], + [ + -113.96, + 27.66 + ], + [ + -114.07, + 27.81 + ], + [ + -114.05, + 27.72 + ], + [ + -114.18, + 27.75 + ], + [ + -114.15, + 27.95 + ], + [ + -114.28, + 27.9 + ], + [ + -114.13, + 28.09 + ], + [ + -114.11, + 27.92 + ], + [ + -114.04, + 28.02 + ], + [ + -114.05, + 28.47 + ], + [ + -114.96, + 29.37 + ], + [ + -115.7, + 29.75 + ], + [ + -116.06, + 30.8 + ], + [ + -116.33, + 30.96 + ], + [ + -116.36, + 31.24 + ], + [ + -116.69, + 31.55 + ], + [ + -116.61, + 31.84 + ], + [ + -116.88, + 32.02 + ], + [ + -117.12, + 32.53 + ] + ], + [ + [ + -107.07, + 31.32 + ], + [ + -106.96, + 31.04 + ], + [ + -106.79, + 31.01 + ], + [ + -107.07, + 31.32 + ] + ], + [ + [ + -99, + 26.3 + ], + [ + -99.12, + 26.19 + ], + [ + -98.97, + 26.12 + ], + [ + -99, + 26.3 + ] + ], + [ + [ + -102.76, + 25.96 + ], + [ + -102.77, + 25.8 + ], + [ + -101.99, + 25.8 + ], + [ + -102.76, + 25.96 + ] + ], + [ + [ + -96.59, + 18.23 + ], + [ + -96.42, + 18.1 + ], + [ + -96.35, + 18.19 + ], + [ + -96.61, + 18.31 + ], + [ + -96.64, + 18.31 + ], + [ + -96.61, + 18.31 + ], + [ + -96.59, + 18.23 + ] + ], + [ + [ + -93.78, + 17.18 + ], + [ + -93.82, + 17.04 + ], + [ + -93.69, + 17.16 + ], + [ + -93.38, + 17.02 + ], + [ + -93.48, + 17.17 + ], + [ + -93.78, + 17.18 + ] + ], + [ + [ + -101.73, + 18.65 + ], + [ + -101.91, + 18.51 + ], + [ + -101.61, + 18.57 + ], + [ + -101.73, + 18.65 + ] + ], + [ + [ + -103.16, + 20.3 + ], + [ + -103.44, + 20.23 + ], + [ + -102.83, + 20.1 + ], + [ + -102.66, + 20.22 + ], + [ + -103.16, + 20.3 + ] + ], + [ + [ + -105.56, + 27.57 + ], + [ + -105.71, + 27.53 + ], + [ + -105.45, + 27.49 + ], + [ + -105.56, + 27.57 + ] + ] + ], + [ + [ + [ + -87.86, + 18.18 + ], + [ + -87.86, + 18.19 + ], + [ + -87.84, + 18.21 + ], + [ + -87.86, + 18.18 + ] + ] + ], + [ + [ + [ + -86.96, + 20.5 + ], + [ + -86.72, + 20.59 + ], + [ + -86.99, + 20.27 + ], + [ + -86.96, + 20.5 + ] + ] + ], + [ + [ + [ + -97.48, + 25.16 + ], + [ + -97.42, + 25.23 + ], + [ + -97.51, + 25.05 + ], + [ + -97.48, + 25.16 + ] + ] + ], + [ + [ + [ + -97.61, + 21.78 + ], + [ + -97.71, + 21.97 + ], + [ + -97.33, + 21.57 + ], + [ + -97.42, + 21.26 + ], + [ + -97.38, + 21.53 + ], + [ + -97.61, + 21.78 + ] + ] + ], + [ + [ + [ + -91.63, + 18.74 + ], + [ + -91.51, + 18.75 + ], + [ + -91.85, + 18.65 + ], + [ + -91.63, + 18.74 + ] + ] + ], + [ + [ + [ + -112.2, + 29.01 + ], + [ + -112.31, + 28.75 + ], + [ + -112.58, + 28.88 + ], + [ + -112.45, + 29.2 + ], + [ + -112.29, + 29.23 + ], + [ + -112.2, + 29.01 + ] + ] + ], + [ + [ + [ + -113.21, + 29.05 + ], + [ + -113.56, + 29.54 + ], + [ + -113.17, + 29.28 + ], + [ + -113.12, + 28.99 + ], + [ + -113.21, + 29.05 + ] + ] + ], + [ + [ + [ + -115.16, + 28.14 + ], + [ + -115.19, + 28.03 + ], + [ + -115.36, + 28.08 + ], + [ + -115.25, + 28.38 + ], + [ + -115.16, + 28.14 + ] + ] + ], + [ + [ + [ + -112.14, + 24.65 + ], + [ + -112.06, + 24.54 + ], + [ + -112.3, + 24.8 + ], + [ + -112.13, + 25.27 + ], + [ + -112.26, + 24.85 + ], + [ + -112.14, + 24.65 + ] + ] + ], + [ + [ + [ + -110.58, + 25.02 + ], + [ + -110.53, + 24.88 + ], + [ + -110.71, + 25.1 + ], + [ + -110.58, + 25.02 + ] + ] + ], + [ + [ + [ + -110.29, + 24.48 + ], + [ + -110.35, + 24.4 + ], + [ + -110.4, + 24.52 + ], + [ + -110.29, + 24.48 + ] + ] + ], + [ + [ + [ + -105.66, + 22.28 + ], + [ + -105.68, + 22.57 + ], + [ + -105.64, + 22.19 + ], + [ + -105.66, + 22.28 + ] + ] + ], + [ + [ + [ + -106.62, + 21.6 + ], + [ + -106.65, + 21.7 + ], + [ + -106.51, + 21.6 + ], + [ + -106.62, + 21.6 + ] + ] + ] + ] + }, + "properties": { + "A3": "MEX" + } + }, + { + "type": "Feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + 103.77, + 1.45 + ], + [ + 104.03, + 1.32 + ], + [ + 103.61, + 1.22 + ], + [ + 103.77, + 1.45 + ] + ] + ] + }, + "properties": { + "A3": "SGP" + } + }, + { + "type": "Feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + 105.7, + -10.43 + ], + [ + 105.67, + -10.57 + ], + [ + 105.53, + -10.51 + ], + [ + 105.7, + -10.43 + ] + ] + ] + }, + "properties": { + "A3": "CXR" + } + }, + { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + 73.55, + 39.33 + ], + [ + 73.6, + 39.46 + ], + [ + 73.95, + 39.6 + ], + [ + 73.94, + 40.03 + ], + [ + 74.9, + 40.34 + ], + [ + 74.84, + 40.52 + ], + [ + 75.22, + 40.44 + ], + [ + 75.6, + 40.66 + ], + [ + 75.69, + 40.28 + ], + [ + 76.04, + 40.37 + ], + [ + 76.18, + 40.38 + ], + [ + 76.5, + 40.43 + ], + [ + 76.87, + 41.02 + ], + [ + 77.77, + 41.01 + ], + [ + 78.16, + 41.38 + ], + [ + 80.2, + 42.04 + ], + [ + 80.14, + 42.15 + ], + [ + 80.17, + 42.21 + ], + [ + 80.19, + 42.23 + ], + [ + 80.21, + 42.23 + ], + [ + 80.22, + 42.22 + ], + [ + 80.24, + 42.49 + ], + [ + 80.26, + 42.5 + ], + [ + 80.27, + 42.5 + ], + [ + 80.27, + 42.51 + ], + [ + 80.25, + 42.52 + ], + [ + 80.22, + 42.71 + ], + [ + 80.23, + 42.72 + ], + [ + 80.6, + 42.9 + ], + [ + 80.38, + 43.02 + ], + [ + 80.41, + 43.06 + ], + [ + 80.81, + 43.18 + ], + [ + 80.52, + 43.82 + ], + [ + 80.41, + 44.61 + ], + [ + 80.17, + 44.79 + ], + [ + 80.17, + 44.83 + ], + [ + 79.89, + 44.89 + ], + [ + 80.06, + 45.01 + ], + [ + 80.09, + 45.03 + ], + [ + 80.73, + 45.15 + ], + [ + 80.74, + 45.16 + ], + [ + 81.77, + 45.38 + ], + [ + 81.81, + 45.36 + ], + [ + 82.18, + 45.23 + ], + [ + 82.2, + 45.23 + ], + [ + 82.21, + 45.23 + ], + [ + 82.22, + 45.23 + ], + [ + 82.23, + 45.23 + ], + [ + 82.25, + 45.23 + ], + [ + 82.26, + 45.23 + ], + [ + 82.26, + 45.24 + ], + [ + 82.27, + 45.24 + ], + [ + 82.33, + 45.21 + ], + [ + 82.57, + 45.21 + ], + [ + 82.56, + 45.38 + ], + [ + 82.54, + 45.42 + ], + [ + 82.31, + 45.52 + ], + [ + 82.27, + 45.55 + ], + [ + 82.73, + 46.5 + ], + [ + 82.77, + 46.63 + ], + [ + 82.79, + 46.68 + ], + [ + 82.79, + 46.7 + ], + [ + 82.86, + 46.79 + ], + [ + 82.87, + 46.82 + ], + [ + 82.92, + 46.93 + ], + [ + 82.92, + 46.94 + ], + [ + 83.15, + 47.23 + ], + [ + 83.91, + 46.98 + ], + [ + 84.37, + 47 + ], + [ + 84.38, + 47 + ], + [ + 84.39, + 47 + ], + [ + 84.4, + 47 + ], + [ + 84.41, + 47.01 + ], + [ + 84.94, + 46.86 + ], + [ + 85.22, + 47.05 + ], + [ + 85.53, + 47.05 + ], + [ + 85.57, + 47.13 + ], + [ + 85.61, + 47.54 + ], + [ + 85.55, + 47.98 + ], + [ + 85.54, + 47.99 + ], + [ + 85.54, + 48.02 + ], + [ + 85.53, + 48.02 + ], + [ + 85.57, + 48.16 + ], + [ + 85.58, + 48.17 + ], + [ + 85.59, + 48.19 + ], + [ + 85.59, + 48.2 + ], + [ + 85.6, + 48.2 + ], + [ + 85.62, + 48.21 + ], + [ + 85.63, + 48.22 + ], + [ + 85.63, + 48.23 + ], + [ + 85.64, + 48.24 + ], + [ + 85.66, + 48.24 + ], + [ + 85.67, + 48.26 + ], + [ + 85.68, + 48.27 + ], + [ + 85.68, + 48.28 + ], + [ + 85.69, + 48.29 + ], + [ + 85.69, + 48.3 + ], + [ + 85.7, + 48.33 + ], + [ + 85.71, + 48.35 + ], + [ + 85.71, + 48.36 + ], + [ + 85.72, + 48.36 + ], + [ + 85.75, + 48.39 + ], + [ + 85.76, + 48.4 + ], + [ + 85.77, + 48.41 + ], + [ + 85.79, + 48.41 + ], + [ + 85.8, + 48.42 + ], + [ + 85.83, + 48.42 + ], + [ + 85.84, + 48.43 + ], + [ + 85.88, + 48.43 + ], + [ + 86.22, + 48.43 + ], + [ + 86.24, + 48.44 + ], + [ + 86.32, + 48.49 + ], + [ + 86.34, + 48.49 + ], + [ + 86.36, + 48.49 + ], + [ + 86.37, + 48.49 + ], + [ + 86.37, + 48.5 + ], + [ + 86.38, + 48.5 + ], + [ + 86.38, + 48.49 + ], + [ + 86.4, + 48.48 + ], + [ + 86.58, + 48.54 + ], + [ + 86.74, + 48.91 + ], + [ + 86.74, + 48.92 + ], + [ + 87.06, + 49.13 + ], + [ + 87.07, + 49.13 + ], + [ + 87.29, + 49.12 + ], + [ + 87.6, + 49.15 + ], + [ + 87.63, + 49.15 + ], + [ + 87.81, + 49.17 + ], + [ + 87.74, + 48.87 + ], + [ + 88.09, + 48.71 + ], + [ + 87.97, + 48.57 + ], + [ + 88.5, + 48.4 + ], + [ + 88.51, + 48.4 + ], + [ + 88.52, + 48.37 + ], + [ + 88.53, + 48.37 + ], + [ + 88.55, + 48.37 + ], + [ + 88.56, + 48.37 + ], + [ + 88.57, + 48.37 + ], + [ + 88.57, + 48.36 + ], + [ + 88.57, + 48.35 + ], + [ + 88.59, + 48.31 + ], + [ + 88.59, + 48.25 + ], + [ + 89.06, + 47.99 + ], + [ + 89.55, + 48.04 + ], + [ + 89.76, + 47.83 + ], + [ + 90.06, + 47.89 + ], + [ + 90.26, + 47.69 + ], + [ + 90.27, + 47.69 + ], + [ + 91.05, + 46.72 + ], + [ + 90.89, + 46.31 + ], + [ + 91.02, + 46.02 + ], + [ + 90.67, + 45.55 + ], + [ + 90.88, + 45.19 + ], + [ + 93.5, + 44.97 + ], + [ + 94.73, + 44.34 + ], + [ + 95.41, + 44.29 + ], + [ + 95.32, + 44.03 + ], + [ + 95.52, + 44 + ], + [ + 96.06, + 43.13 + ], + [ + 96.17, + 43.04 + ], + [ + 96.37, + 42.87 + ], + [ + 96.38, + 42.77 + ], + [ + 96.51, + 42.74 + ], + [ + 97.17, + 42.8 + ], + [ + 99.5, + 42.57 + ], + [ + 100.86, + 42.67 + ], + [ + 101.8, + 42.5 + ], + [ + 102.07, + 42.22 + ], + [ + 103.39, + 41.89 + ], + [ + 104.52, + 41.87 + ], + [ + 104.52, + 41.66 + ], + [ + 105.01, + 41.58 + ], + [ + 107.45, + 42.46 + ], + [ + 108.84, + 42.4 + ], + [ + 110.1, + 42.64 + ], + [ + 111.01, + 43.32 + ], + [ + 111.95, + 43.69 + ], + [ + 111.41, + 44.34 + ], + [ + 111.79, + 44.99 + ], + [ + 112.42, + 45.07 + ], + [ + 112.76, + 44.86 + ], + [ + 113.63, + 44.74 + ], + [ + 114.07, + 44.93 + ], + [ + 114.39, + 45.15 + ], + [ + 114.74, + 45.44 + ], + [ + 115.69, + 45.45 + ], + [ + 116.28, + 45.77 + ], + [ + 116.59, + 46.3 + ], + [ + 117.37, + 46.36 + ], + [ + 117.41, + 46.58 + ], + [ + 117.83, + 46.53 + ], + [ + 118.3, + 46.74 + ], + [ + 118.9, + 46.78 + ], + [ + 119.3, + 46.61 + ], + [ + 119.9, + 46.67 + ], + [ + 119.71, + 47.19 + ], + [ + 119.12, + 47.66 + ], + [ + 118.55, + 47.99 + ], + [ + 117.78, + 48 + ], + [ + 117.77, + 47.99 + ], + [ + 117.75, + 47.97 + ], + [ + 117.53, + 47.79 + ], + [ + 117.52, + 47.78 + ], + [ + 117.5, + 47.77 + ], + [ + 117.38, + 47.64 + ], + [ + 116.87, + 47.89 + ], + [ + 116.25, + 47.88 + ], + [ + 115.94, + 47.68 + ], + [ + 115.8, + 47.77 + ], + [ + 115.78, + 47.78 + ], + [ + 115.75, + 47.8 + ], + [ + 115.52, + 48.15 + ], + [ + 115.81, + 48.26 + ], + [ + 115.79, + 48.52 + ], + [ + 116.32, + 49.29 + ], + [ + 116.33, + 49.3 + ], + [ + 116.68, + 49.79 + ], + [ + 116.69, + 49.81 + ], + [ + 116.71, + 49.84 + ], + [ + 117.78, + 49.53 + ], + [ + 117.78, + 49.52 + ], + [ + 117.86, + 49.51 + ], + [ + 118.01, + 49.61 + ], + [ + 118.02, + 49.61 + ], + [ + 118.06, + 49.61 + ], + [ + 118.08, + 49.62 + ], + [ + 118.08, + 49.63 + ], + [ + 118.1, + 49.64 + ], + [ + 118.11, + 49.67 + ], + [ + 118.13, + 49.67 + ], + [ + 118.15, + 49.67 + ], + [ + 118.17, + 49.68 + ], + [ + 118.19, + 49.68 + ], + [ + 118.2, + 49.68 + ], + [ + 118.21, + 49.71 + ], + [ + 118.23, + 49.74 + ], + [ + 118.24, + 49.74 + ], + [ + 118.26, + 49.74 + ], + [ + 118.28, + 49.74 + ], + [ + 118.32, + 49.77 + ], + [ + 118.33, + 49.77 + ], + [ + 118.34, + 49.78 + ], + [ + 118.35, + 49.78 + ], + [ + 118.36, + 49.78 + ], + [ + 118.37, + 49.78 + ], + [ + 118.39, + 49.81 + ], + [ + 118.41, + 49.82 + ], + [ + 118.45, + 49.83 + ], + [ + 118.45, + 49.84 + ], + [ + 118.47, + 49.83 + ], + [ + 118.48, + 49.83 + ], + [ + 118.47, + 49.84 + ], + [ + 118.49, + 49.84 + ], + [ + 118.48, + 49.86 + ], + [ + 118.48, + 49.87 + ], + [ + 118.5, + 49.88 + ], + [ + 118.52, + 49.89 + ], + [ + 118.52, + 49.9 + ], + [ + 118.54, + 49.9 + ], + [ + 118.55, + 49.91 + ], + [ + 118.6, + 49.93 + ], + [ + 118.61, + 49.93 + ], + [ + 118.61, + 49.94 + ], + [ + 118.61, + 49.95 + ], + [ + 118.65, + 49.95 + ], + [ + 118.66, + 49.95 + ], + [ + 118.65, + 49.95 + ], + [ + 118.69, + 49.95 + ], + [ + 118.7, + 49.95 + ], + [ + 118.74, + 49.95 + ], + [ + 118.83, + 49.96 + ], + [ + 118.85, + 49.97 + ], + [ + 118.86, + 49.97 + ], + [ + 118.89, + 49.98 + ], + [ + 118.9, + 49.98 + ], + [ + 118.93, + 49.99 + ], + [ + 118.94, + 49.99 + ], + [ + 118.98, + 49.98 + ], + [ + 119.05, + 49.98 + ], + [ + 119.09, + 49.99 + ], + [ + 119.1, + 50 + ], + [ + 119.11, + 50 + ], + [ + 119.11, + 50.01 + ], + [ + 119.12, + 50.01 + ], + [ + 119.13, + 50.02 + ], + [ + 119.14, + 50.03 + ], + [ + 119.15, + 50.03 + ], + [ + 119.15, + 50.02 + ], + [ + 119.16, + 50.03 + ], + [ + 119.16, + 50.04 + ], + [ + 119.17, + 50.05 + ], + [ + 119.18, + 50.05 + ], + [ + 119.18, + 50.06 + ], + [ + 119.18, + 50.07 + ], + [ + 119.2, + 50.08 + ], + [ + 119.22, + 50.08 + ], + [ + 119.23, + 50.08 + ], + [ + 119.25, + 50.09 + ], + [ + 119.25, + 50.1 + ], + [ + 119.27, + 50.11 + ], + [ + 119.29, + 50.13 + ], + [ + 119.29, + 50.14 + ], + [ + 119.31, + 50.16 + ], + [ + 119.33, + 50.19 + ], + [ + 119.34, + 50.19 + ], + [ + 119.35, + 50.2 + ], + [ + 119.34, + 50.2 + ], + [ + 119.33, + 50.21 + ], + [ + 119.31, + 50.22 + ], + [ + 119.32, + 50.23 + ], + [ + 119.32, + 50.24 + ], + [ + 119.34, + 50.26 + ], + [ + 119.32, + 50.26 + ], + [ + 119.34, + 50.29 + ], + [ + 119.35, + 50.31 + ], + [ + 119.36, + 50.31 + ], + [ + 119.37, + 50.32 + ], + [ + 119.38, + 50.32 + ], + [ + 119.37, + 50.32 + ], + [ + 119.36, + 50.32 + ], + [ + 119.36, + 50.33 + ], + [ + 119.35, + 50.35 + ], + [ + 119.36, + 50.35 + ], + [ + 119.35, + 50.36 + ], + [ + 119.33, + 50.35 + ], + [ + 119.33, + 50.36 + ], + [ + 119.29, + 50.34 + ], + [ + 119.29, + 50.35 + ], + [ + 119.28, + 50.36 + ], + [ + 119.25, + 50.34 + ], + [ + 119.24, + 50.34 + ], + [ + 119.23, + 50.36 + ], + [ + 119.21, + 50.36 + ], + [ + 119.2, + 50.36 + ], + [ + 119.19, + 50.36 + ], + [ + 119.18, + 50.36 + ], + [ + 119.15, + 50.36 + ], + [ + 119.16, + 50.37 + ], + [ + 119.16, + 50.38 + ], + [ + 119.14, + 50.39 + ], + [ + 119.16, + 50.42 + ], + [ + 119.17, + 50.42 + ], + [ + 119.21, + 50.41 + ], + [ + 119.21, + 50.42 + ], + [ + 119.22, + 50.44 + ], + [ + 119.23, + 50.44 + ], + [ + 119.25, + 50.48 + ], + [ + 119.25, + 50.49 + ], + [ + 119.23, + 50.5 + ], + [ + 119.26, + 50.53 + ], + [ + 119.27, + 50.55 + ], + [ + 119.27, + 50.56 + ], + [ + 119.26, + 50.56 + ], + [ + 119.26, + 50.57 + ], + [ + 119.27, + 50.57 + ], + [ + 119.29, + 50.58 + ], + [ + 119.29, + 50.59 + ], + [ + 119.28, + 50.6 + ], + [ + 119.27, + 50.6 + ], + [ + 119.29, + 50.61 + ], + [ + 119.29, + 50.62 + ], + [ + 119.33, + 50.64 + ], + [ + 119.34, + 50.64 + ], + [ + 119.36, + 50.64 + ], + [ + 119.39, + 50.67 + ], + [ + 119.38, + 50.67 + ], + [ + 119.37, + 50.68 + ], + [ + 119.38, + 50.68 + ], + [ + 119.4, + 50.68 + ], + [ + 119.41, + 50.68 + ], + [ + 119.42, + 50.68 + ], + [ + 119.43, + 50.68 + ], + [ + 119.45, + 50.71 + ], + [ + 119.46, + 50.72 + ], + [ + 119.47, + 50.73 + ], + [ + 119.49, + 50.75 + ], + [ + 119.49, + 50.77 + ], + [ + 119.5, + 50.78 + ], + [ + 119.51, + 50.79 + ], + [ + 119.5, + 50.8 + ], + [ + 119.51, + 50.81 + ], + [ + 119.49, + 50.83 + ], + [ + 119.5, + 50.84 + ], + [ + 119.51, + 50.85 + ], + [ + 119.52, + 50.88 + ], + [ + 119.51, + 50.9 + ], + [ + 119.52, + 50.91 + ], + [ + 119.54, + 50.92 + ], + [ + 119.55, + 50.93 + ], + [ + 119.56, + 50.93 + ], + [ + 119.57, + 50.95 + ], + [ + 119.58, + 50.96 + ], + [ + 119.58, + 50.97 + ], + [ + 119.59, + 50.98 + ], + [ + 119.6, + 50.99 + ], + [ + 119.63, + 51 + ], + [ + 119.62, + 51 + ], + [ + 119.63, + 51.01 + ], + [ + 119.65, + 51.01 + ], + [ + 119.66, + 51.01 + ], + [ + 119.67, + 51.01 + ], + [ + 119.68, + 51.02 + ], + [ + 119.69, + 51.01 + ], + [ + 119.7, + 51.03 + ], + [ + 119.69, + 51.04 + ], + [ + 119.71, + 51.05 + ], + [ + 119.72, + 51.06 + ], + [ + 119.73, + 51.07 + ], + [ + 119.74, + 51.08 + ], + [ + 119.74, + 51.09 + ], + [ + 119.76, + 51.09 + ], + [ + 119.76, + 51.1 + ], + [ + 119.75, + 51.12 + ], + [ + 119.76, + 51.12 + ], + [ + 119.77, + 51.14 + ], + [ + 119.76, + 51.16 + ], + [ + 119.76, + 51.17 + ], + [ + 119.77, + 51.16 + ], + [ + 119.78, + 51.16 + ], + [ + 119.78, + 51.17 + ], + [ + 119.78, + 51.18 + ], + [ + 119.77, + 51.18 + ], + [ + 119.76, + 51.21 + ], + [ + 119.75, + 51.21 + ], + [ + 119.77, + 51.22 + ], + [ + 119.79, + 51.22 + ], + [ + 119.8, + 51.22 + ], + [ + 119.82, + 51.22 + ], + [ + 119.81, + 51.23 + ], + [ + 119.8, + 51.23 + ], + [ + 119.79, + 51.25 + ], + [ + 119.8, + 51.25 + ], + [ + 119.82, + 51.26 + ], + [ + 119.81, + 51.29 + ], + [ + 119.82, + 51.29 + ], + [ + 119.84, + 51.29 + ], + [ + 119.88, + 51.3 + ], + [ + 119.88, + 51.31 + ], + [ + 119.88, + 51.32 + ], + [ + 119.88, + 51.33 + ], + [ + 119.9, + 51.35 + ], + [ + 119.91, + 51.34 + ], + [ + 119.93, + 51.37 + ], + [ + 119.92, + 51.37 + ], + [ + 119.9, + 51.38 + ], + [ + 119.9, + 51.39 + ], + [ + 119.92, + 51.4 + ], + [ + 119.93, + 51.4 + ], + [ + 119.95, + 51.4 + ], + [ + 119.96, + 51.4 + ], + [ + 119.97, + 51.41 + ], + [ + 119.97, + 51.42 + ], + [ + 119.97, + 51.44 + ], + [ + 119.99, + 51.45 + ], + [ + 120, + 51.46 + ], + [ + 119.99, + 51.47 + ], + [ + 119.98, + 51.49 + ], + [ + 119.98, + 51.5 + ], + [ + 119.99, + 51.51 + ], + [ + 120.01, + 51.52 + ], + [ + 120.02, + 51.53 + ], + [ + 120.02, + 51.54 + ], + [ + 120.03, + 51.55 + ], + [ + 120.04, + 51.55 + ], + [ + 120.04, + 51.56 + ], + [ + 120.04, + 51.57 + ], + [ + 120.04, + 51.58 + ], + [ + 120.03, + 51.58 + ], + [ + 120.04, + 51.6 + ], + [ + 120.04, + 51.61 + ], + [ + 120.05, + 51.62 + ], + [ + 120.08, + 51.64 + ], + [ + 120.1, + 51.66 + ], + [ + 120.09, + 51.66 + ], + [ + 120.08, + 51.67 + ], + [ + 120.08, + 51.68 + ], + [ + 120.1, + 51.68 + ], + [ + 120.11, + 51.68 + ], + [ + 120.12, + 51.67 + ], + [ + 120.13, + 51.67 + ], + [ + 120.19, + 51.7 + ], + [ + 120.2, + 51.7 + ], + [ + 120.21, + 51.71 + ], + [ + 120.22, + 51.72 + ], + [ + 120.23, + 51.73 + ], + [ + 120.24, + 51.73 + ], + [ + 120.26, + 51.74 + ], + [ + 120.26, + 51.75 + ], + [ + 120.3, + 51.76 + ], + [ + 120.3, + 51.77 + ], + [ + 120.3, + 51.78 + ], + [ + 120.31, + 51.78 + ], + [ + 120.32, + 51.79 + ], + [ + 120.33, + 51.79 + ], + [ + 120.34, + 51.79 + ], + [ + 120.35, + 51.79 + ], + [ + 120.37, + 51.8 + ], + [ + 120.37, + 51.81 + ], + [ + 120.39, + 51.81 + ], + [ + 120.4, + 51.81 + ], + [ + 120.39, + 51.82 + ], + [ + 120.39, + 51.83 + ], + [ + 120.42, + 51.84 + ], + [ + 120.44, + 51.84 + ], + [ + 120.45, + 51.84 + ], + [ + 120.46, + 51.85 + ], + [ + 120.47, + 51.86 + ], + [ + 120.47, + 51.87 + ], + [ + 120.49, + 51.89 + ], + [ + 120.5, + 51.89 + ], + [ + 120.51, + 51.88 + ], + [ + 120.52, + 51.88 + ], + [ + 120.55, + 51.89 + ], + [ + 120.55, + 51.9 + ], + [ + 120.54, + 51.9 + ], + [ + 120.54, + 51.91 + ], + [ + 120.56, + 51.91 + ], + [ + 120.57, + 51.91 + ], + [ + 120.6, + 51.91 + ], + [ + 120.62, + 51.92 + ], + [ + 120.63, + 51.92 + ], + [ + 120.64, + 51.92 + ], + [ + 120.65, + 51.93 + ], + [ + 120.66, + 51.93 + ], + [ + 120.65, + 51.94 + ], + [ + 120.65, + 51.95 + ], + [ + 120.66, + 51.96 + ], + [ + 120.67, + 51.97 + ], + [ + 120.68, + 51.97 + ], + [ + 120.7, + 51.98 + ], + [ + 120.7, + 51.99 + ], + [ + 120.71, + 52.01 + ], + [ + 120.7, + 52.02 + ], + [ + 120.69, + 52.02 + ], + [ + 120.68, + 52.04 + ], + [ + 120.71, + 52.07 + ], + [ + 120.73, + 52.08 + ], + [ + 120.74, + 52.08 + ], + [ + 120.75, + 52.08 + ], + [ + 120.74, + 52.09 + ], + [ + 120.74, + 52.1 + ], + [ + 120.76, + 52.1 + ], + [ + 120.76, + 52.11 + ], + [ + 120.76, + 52.12 + ], + [ + 120.76, + 52.14 + ], + [ + 120.77, + 52.15 + ], + [ + 120.78, + 52.16 + ], + [ + 120.77, + 52.17 + ], + [ + 120.76, + 52.18 + ], + [ + 120.75, + 52.2 + ], + [ + 120.74, + 52.2 + ], + [ + 120.74, + 52.21 + ], + [ + 120.74, + 52.22 + ], + [ + 120.74, + 52.23 + ], + [ + 120.75, + 52.24 + ], + [ + 120.76, + 52.25 + ], + [ + 120.74, + 52.26 + ], + [ + 120.72, + 52.26 + ], + [ + 120.71, + 52.26 + ], + [ + 120.7, + 52.27 + ], + [ + 120.7, + 52.28 + ], + [ + 120.69, + 52.29 + ], + [ + 120.67, + 52.29 + ], + [ + 120.65, + 52.3 + ], + [ + 120.63, + 52.31 + ], + [ + 120.63, + 52.32 + ], + [ + 120.62, + 52.33 + ], + [ + 120.62, + 52.34 + ], + [ + 120.61, + 52.36 + ], + [ + 120.62, + 52.36 + ], + [ + 120.63, + 52.36 + ], + [ + 120.64, + 52.36 + ], + [ + 120.65, + 52.38 + ], + [ + 120.64, + 52.38 + ], + [ + 120.65, + 52.4 + ], + [ + 120.66, + 52.4 + ], + [ + 120.66, + 52.41 + ], + [ + 120.68, + 52.43 + ], + [ + 120.68, + 52.44 + ], + [ + 120.68, + 52.45 + ], + [ + 120.68, + 52.46 + ], + [ + 120.68, + 52.47 + ], + [ + 120.69, + 52.48 + ], + [ + 120.7, + 52.49 + ], + [ + 120.7, + 52.5 + ], + [ + 120.69, + 52.5 + ], + [ + 120.69, + 52.52 + ], + [ + 120.7, + 52.52 + ], + [ + 120.73, + 52.53 + ], + [ + 120.73, + 52.54 + ], + [ + 120.7, + 52.55 + ], + [ + 120.68, + 52.55 + ], + [ + 120.67, + 52.55 + ], + [ + 120.67, + 52.56 + ], + [ + 120.63, + 52.57 + ], + [ + 120.62, + 52.57 + ], + [ + 120.61, + 52.58 + ], + [ + 120.59, + 52.59 + ], + [ + 120.57, + 52.59 + ], + [ + 120.56, + 52.59 + ], + [ + 120.54, + 52.6 + ], + [ + 120.53, + 52.61 + ], + [ + 120.52, + 52.61 + ], + [ + 120.51, + 52.61 + ], + [ + 120.49, + 52.62 + ], + [ + 120.47, + 52.64 + ], + [ + 120.46, + 52.64 + ], + [ + 120.45, + 52.64 + ], + [ + 120.44, + 52.64 + ], + [ + 120.43, + 52.64 + ], + [ + 120.41, + 52.63 + ], + [ + 120.41, + 52.62 + ], + [ + 120.39, + 52.62 + ], + [ + 120.38, + 52.62 + ], + [ + 120.37, + 52.62 + ], + [ + 120.35, + 52.62 + ], + [ + 120.34, + 52.62 + ], + [ + 120.31, + 52.62 + ], + [ + 120.3, + 52.62 + ], + [ + 120.28, + 52.62 + ], + [ + 120.27, + 52.62 + ], + [ + 120.26, + 52.61 + ], + [ + 120.24, + 52.6 + ], + [ + 120.23, + 52.6 + ], + [ + 120.22, + 52.59 + ], + [ + 120.21, + 52.59 + ], + [ + 120.19, + 52.58 + ], + [ + 120.18, + 52.58 + ], + [ + 120.17, + 52.58 + ], + [ + 120.16, + 52.58 + ], + [ + 120.13, + 52.58 + ], + [ + 120.12, + 52.59 + ], + [ + 120.1, + 52.58 + ], + [ + 120.06, + 52.59 + ], + [ + 120.05, + 52.59 + ], + [ + 120.04, + 52.6 + ], + [ + 120.04, + 52.61 + ], + [ + 120.03, + 52.62 + ], + [ + 120.03, + 52.63 + ], + [ + 120.03, + 52.65 + ], + [ + 120.03, + 52.66 + ], + [ + 120.04, + 52.66 + ], + [ + 120.04, + 52.68 + ], + [ + 120.05, + 52.69 + ], + [ + 120.06, + 52.7 + ], + [ + 120.06, + 52.71 + ], + [ + 120.05, + 52.73 + ], + [ + 120.05, + 52.74 + ], + [ + 120.04, + 52.74 + ], + [ + 120.03, + 52.76 + ], + [ + 120.03, + 52.78 + ], + [ + 120.04, + 52.78 + ], + [ + 120.05, + 52.78 + ], + [ + 120.07, + 52.78 + ], + [ + 120.08, + 52.78 + ], + [ + 120.1, + 52.8 + ], + [ + 120.11, + 52.8 + ], + [ + 120.14, + 52.81 + ], + [ + 120.15, + 52.81 + ], + [ + 120.17, + 52.81 + ], + [ + 120.2, + 52.83 + ], + [ + 120.21, + 52.84 + ], + [ + 120.22, + 52.84 + ], + [ + 120.25, + 52.86 + ], + [ + 120.27, + 52.86 + ], + [ + 120.29, + 52.87 + ], + [ + 120.29, + 52.88 + ], + [ + 120.29, + 52.89 + ], + [ + 120.3, + 52.9 + ], + [ + 120.31, + 52.9 + ], + [ + 120.34, + 52.9 + ], + [ + 120.34, + 52.92 + ], + [ + 120.35, + 52.93 + ], + [ + 120.35, + 52.94 + ], + [ + 120.36, + 52.94 + ], + [ + 120.37, + 52.94 + ], + [ + 120.38, + 52.95 + ], + [ + 120.39, + 52.95 + ], + [ + 120.4, + 52.96 + ], + [ + 120.41, + 52.96 + ], + [ + 120.41, + 52.97 + ], + [ + 120.42, + 52.98 + ], + [ + 120.43, + 53 + ], + [ + 120.44, + 53 + ], + [ + 120.45, + 53.01 + ], + [ + 120.46, + 53.01 + ], + [ + 120.48, + 53.02 + ], + [ + 120.5, + 53.04 + ], + [ + 120.51, + 53.04 + ], + [ + 120.52, + 53.05 + ], + [ + 120.53, + 53.06 + ], + [ + 120.56, + 53.08 + ], + [ + 120.57, + 53.08 + ], + [ + 120.59, + 53.09 + ], + [ + 120.6, + 53.09 + ], + [ + 120.61, + 53.1 + ], + [ + 120.64, + 53.11 + ], + [ + 120.64, + 53.12 + ], + [ + 120.65, + 53.13 + ], + [ + 120.66, + 53.14 + ], + [ + 120.69, + 53.16 + ], + [ + 120.72, + 53.2 + ], + [ + 120.73, + 53.2 + ], + [ + 120.75, + 53.21 + ], + [ + 120.78, + 53.22 + ], + [ + 120.79, + 53.23 + ], + [ + 120.8, + 53.23 + ], + [ + 120.81, + 53.24 + ], + [ + 120.83, + 53.24 + ], + [ + 120.83, + 53.25 + ], + [ + 120.83, + 53.26 + ], + [ + 120.83, + 53.27 + ], + [ + 120.84, + 53.27 + ], + [ + 120.86, + 53.28 + ], + [ + 120.88, + 53.29 + ], + [ + 120.9, + 53.29 + ], + [ + 120.92, + 53.29 + ], + [ + 120.94, + 53.29 + ], + [ + 120.97, + 53.29 + ], + [ + 121.02, + 53.29 + ], + [ + 121.04, + 53.29 + ], + [ + 121.06, + 53.3 + ], + [ + 121.07, + 53.3 + ], + [ + 121.08, + 53.3 + ], + [ + 121.09, + 53.3 + ], + [ + 121.1, + 53.29 + ], + [ + 121.11, + 53.29 + ], + [ + 121.11, + 53.28 + ], + [ + 121.12, + 53.28 + ], + [ + 121.14, + 53.28 + ], + [ + 121.17, + 53.28 + ], + [ + 121.18, + 53.28 + ], + [ + 121.19, + 53.28 + ], + [ + 121.2, + 53.28 + ], + [ + 121.22, + 53.28 + ], + [ + 121.23, + 53.28 + ], + [ + 121.25, + 53.29 + ], + [ + 121.27, + 53.29 + ], + [ + 121.29, + 53.29 + ], + [ + 121.29, + 53.3 + ], + [ + 121.31, + 53.31 + ], + [ + 121.32, + 53.32 + ], + [ + 121.35, + 53.32 + ], + [ + 121.37, + 53.32 + ], + [ + 121.38, + 53.32 + ], + [ + 121.39, + 53.32 + ], + [ + 121.41, + 53.32 + ], + [ + 121.44, + 53.32 + ], + [ + 121.46, + 53.33 + ], + [ + 121.48, + 53.33 + ], + [ + 121.49, + 53.33 + ], + [ + 121.5, + 53.33 + ], + [ + 121.51, + 53.34 + ], + [ + 121.52, + 53.34 + ], + [ + 121.53, + 53.34 + ], + [ + 121.56, + 53.35 + ], + [ + 121.59, + 53.35 + ], + [ + 121.6, + 53.36 + ], + [ + 121.64, + 53.37 + ], + [ + 121.66, + 53.37 + ], + [ + 121.66, + 53.38 + ], + [ + 121.67, + 53.39 + ], + [ + 121.7, + 53.39 + ], + [ + 121.71, + 53.39 + ], + [ + 121.72, + 53.39 + ], + [ + 121.73, + 53.39 + ], + [ + 121.75, + 53.39 + ], + [ + 121.76, + 53.39 + ], + [ + 121.79, + 53.41 + ], + [ + 121.8, + 53.41 + ], + [ + 121.82, + 53.42 + ], + [ + 121.84, + 53.42 + ], + [ + 121.87, + 53.43 + ], + [ + 121.88, + 53.42 + ], + [ + 121.89, + 53.42 + ], + [ + 121.91, + 53.42 + ], + [ + 121.94, + 53.43 + ], + [ + 121.95, + 53.43 + ], + [ + 121.99, + 53.43 + ], + [ + 122, + 53.43 + ], + [ + 122.01, + 53.43 + ], + [ + 122.07, + 53.42 + ], + [ + 122.09, + 53.42 + ], + [ + 122.1, + 53.43 + ], + [ + 122.11, + 53.43 + ], + [ + 122.12, + 53.44 + ], + [ + 122.13, + 53.45 + ], + [ + 122.15, + 53.47 + ], + [ + 122.17, + 53.47 + ], + [ + 122.18, + 53.47 + ], + [ + 122.2, + 53.47 + ], + [ + 122.24, + 53.46 + ], + [ + 122.26, + 53.47 + ], + [ + 122.28, + 53.48 + ], + [ + 122.29, + 53.48 + ], + [ + 122.31, + 53.5 + ], + [ + 122.32, + 53.5 + ], + [ + 122.35, + 53.5 + ], + [ + 122.36, + 53.49 + ], + [ + 122.38, + 53.47 + ], + [ + 122.39, + 53.46 + ], + [ + 122.4, + 53.46 + ], + [ + 122.41, + 53.45 + ], + [ + 122.42, + 53.45 + ], + [ + 122.45, + 53.44 + ], + [ + 122.47, + 53.45 + ], + [ + 122.49, + 53.46 + ], + [ + 122.5, + 53.46 + ], + [ + 122.51, + 53.45 + ], + [ + 122.54, + 53.45 + ], + [ + 122.56, + 53.46 + ], + [ + 122.57, + 53.46 + ], + [ + 122.6, + 53.46 + ], + [ + 122.62, + 53.46 + ], + [ + 122.73, + 53.46 + ], + [ + 122.75, + 53.46 + ], + [ + 122.91, + 53.47 + ], + [ + 122.93, + 53.48 + ], + [ + 122.94, + 53.48 + ], + [ + 123, + 53.49 + ], + [ + 122.99, + 53.49 + ], + [ + 123.01, + 53.5 + ], + [ + 123.03, + 53.5 + ], + [ + 123.05, + 53.5 + ], + [ + 123.16, + 53.5 + ], + [ + 123.17, + 53.51 + ], + [ + 123.19, + 53.53 + ], + [ + 123.2, + 53.53 + ], + [ + 123.22, + 53.54 + ], + [ + 123.22, + 53.55 + ], + [ + 123.24, + 53.55 + ], + [ + 123.24, + 53.56 + ], + [ + 123.26, + 53.56 + ], + [ + 123.28, + 53.56 + ], + [ + 123.32, + 53.55 + ], + [ + 123.34, + 53.55 + ], + [ + 123.37, + 53.54 + ], + [ + 123.41, + 53.54 + ], + [ + 123.43, + 53.53 + ], + [ + 123.44, + 53.53 + ], + [ + 123.46, + 53.53 + ], + [ + 123.46, + 53.52 + ], + [ + 123.46, + 53.51 + ], + [ + 123.48, + 53.5 + ], + [ + 123.5, + 53.5 + ], + [ + 123.49, + 53.51 + ], + [ + 123.48, + 53.52 + ], + [ + 123.48, + 53.53 + ], + [ + 123.49, + 53.54 + ], + [ + 123.5, + 53.55 + ], + [ + 123.53, + 53.55 + ], + [ + 123.54, + 53.55 + ], + [ + 123.55, + 53.53 + ], + [ + 123.54, + 53.52 + ], + [ + 123.53, + 53.5 + ], + [ + 123.55, + 53.5 + ], + [ + 123.56, + 53.5 + ], + [ + 123.57, + 53.51 + ], + [ + 123.57, + 53.52 + ], + [ + 123.58, + 53.55 + ], + [ + 123.6, + 53.55 + ], + [ + 123.63, + 53.54 + ], + [ + 123.64, + 53.54 + ], + [ + 123.65, + 53.53 + ], + [ + 123.67, + 53.52 + ], + [ + 123.68, + 53.51 + ], + [ + 123.69, + 53.49 + ], + [ + 123.71, + 53.49 + ], + [ + 123.72, + 53.49 + ], + [ + 123.74, + 53.5 + ], + [ + 123.83, + 53.48 + ], + [ + 123.83, + 53.49 + ], + [ + 123.85, + 53.49 + ], + [ + 123.87, + 53.48 + ], + [ + 123.89, + 53.48 + ], + [ + 123.89, + 53.47 + ], + [ + 123.9, + 53.47 + ], + [ + 123.91, + 53.46 + ], + [ + 123.93, + 53.46 + ], + [ + 123.94, + 53.45 + ], + [ + 123.96, + 53.44 + ], + [ + 123.98, + 53.43 + ], + [ + 123.99, + 53.42 + ], + [ + 124, + 53.41 + ], + [ + 124, + 53.4 + ], + [ + 124.06, + 53.4 + ], + [ + 124.07, + 53.39 + ], + [ + 124.08, + 53.38 + ], + [ + 124.07, + 53.37 + ], + [ + 124.08, + 53.36 + ], + [ + 124.09, + 53.36 + ], + [ + 124.11, + 53.35 + ], + [ + 124.15, + 53.35 + ], + [ + 124.16, + 53.36 + ], + [ + 124.18, + 53.37 + ], + [ + 124.22, + 53.38 + ], + [ + 124.24, + 53.37 + ], + [ + 124.26, + 53.36 + ], + [ + 124.27, + 53.35 + ], + [ + 124.28, + 53.35 + ], + [ + 124.3, + 53.34 + ], + [ + 124.33, + 53.31 + ], + [ + 124.33, + 53.3 + ], + [ + 124.34, + 53.29 + ], + [ + 124.36, + 53.28 + ], + [ + 124.37, + 53.26 + ], + [ + 124.38, + 53.25 + ], + [ + 124.39, + 53.25 + ], + [ + 124.41, + 53.24 + ], + [ + 124.41, + 53.23 + ], + [ + 124.42, + 53.24 + ], + [ + 124.42, + 53.23 + ], + [ + 124.57, + 53.21 + ], + [ + 124.58, + 53.21 + ], + [ + 124.64, + 53.21 + ], + [ + 124.65, + 53.2 + ], + [ + 124.71, + 53.16 + ], + [ + 124.75, + 53.14 + ], + [ + 124.76, + 53.14 + ], + [ + 124.77, + 53.14 + ], + [ + 124.8, + 53.14 + ], + [ + 124.81, + 53.14 + ], + [ + 124.83, + 53.14 + ], + [ + 124.84, + 53.13 + ], + [ + 124.84, + 53.12 + ], + [ + 124.85, + 53.12 + ], + [ + 124.88, + 53.1 + ], + [ + 124.89, + 53.1 + ], + [ + 124.9, + 53.12 + ], + [ + 124.89, + 53.16 + ], + [ + 124.88, + 53.16 + ], + [ + 124.88, + 53.17 + ], + [ + 124.9, + 53.17 + ], + [ + 124.93, + 53.18 + ], + [ + 125, + 53.2 + ], + [ + 125.06, + 53.2 + ], + [ + 125.07, + 53.2 + ], + [ + 125.1, + 53.2 + ], + [ + 125.12, + 53.2 + ], + [ + 125.13, + 53.2 + ], + [ + 125.14, + 53.2 + ], + [ + 125.18, + 53.2 + ], + [ + 125.21, + 53.19 + ], + [ + 125.23, + 53.18 + ], + [ + 125.25, + 53.17 + ], + [ + 125.27, + 53.17 + ], + [ + 125.28, + 53.16 + ], + [ + 125.32, + 53.14 + ], + [ + 125.33, + 53.14 + ], + [ + 125.38, + 53.13 + ], + [ + 125.39, + 53.13 + ], + [ + 125.4, + 53.12 + ], + [ + 125.42, + 53.12 + ], + [ + 125.43, + 53.11 + ], + [ + 125.46, + 53.1 + ], + [ + 125.48, + 53.1 + ], + [ + 125.5, + 53.06 + ], + [ + 125.5, + 53.05 + ], + [ + 125.52, + 53.05 + ], + [ + 125.54, + 53.06 + ], + [ + 125.55, + 53.07 + ], + [ + 125.56, + 53.07 + ], + [ + 125.59, + 53.08 + ], + [ + 125.61, + 53.08 + ], + [ + 125.63, + 53.07 + ], + [ + 125.63, + 53.05 + ], + [ + 125.64, + 53.03 + ], + [ + 125.65, + 53.03 + ], + [ + 125.66, + 53.02 + ], + [ + 125.67, + 53.01 + ], + [ + 125.71, + 52.99 + ], + [ + 125.71, + 53 + ], + [ + 125.73, + 52.99 + ], + [ + 125.74, + 52.99 + ], + [ + 125.74, + 52.98 + ], + [ + 125.72, + 52.97 + ], + [ + 125.72, + 52.96 + ], + [ + 125.73, + 52.94 + ], + [ + 125.72, + 52.94 + ], + [ + 125.71, + 52.93 + ], + [ + 125.69, + 52.93 + ], + [ + 125.67, + 52.92 + ], + [ + 125.66, + 52.92 + ], + [ + 125.65, + 52.91 + ], + [ + 125.66, + 52.86 + ], + [ + 125.68, + 52.86 + ], + [ + 125.73, + 52.88 + ], + [ + 125.75, + 52.88 + ], + [ + 125.76, + 52.89 + ], + [ + 125.76, + 52.9 + ], + [ + 125.77, + 52.9 + ], + [ + 125.78, + 52.89 + ], + [ + 125.8, + 52.89 + ], + [ + 125.82, + 52.9 + ], + [ + 125.85, + 52.89 + ], + [ + 125.84, + 52.88 + ], + [ + 125.84, + 52.87 + ], + [ + 125.85, + 52.86 + ], + [ + 125.86, + 52.85 + ], + [ + 125.87, + 52.84 + ], + [ + 125.88, + 52.84 + ], + [ + 125.89, + 52.83 + ], + [ + 125.9, + 52.82 + ], + [ + 125.91, + 52.81 + ], + [ + 125.91, + 52.8 + ], + [ + 125.92, + 52.79 + ], + [ + 125.92, + 52.78 + ], + [ + 125.93, + 52.77 + ], + [ + 125.94, + 52.76 + ], + [ + 125.96, + 52.76 + ], + [ + 125.98, + 52.76 + ], + [ + 125.99, + 52.76 + ], + [ + 125.99, + 52.77 + ], + [ + 126.03, + 52.78 + ], + [ + 126.01, + 52.79 + ], + [ + 126.03, + 52.8 + ], + [ + 126.04, + 52.8 + ], + [ + 126.07, + 52.79 + ], + [ + 126.09, + 52.78 + ], + [ + 126.11, + 52.77 + ], + [ + 126.1, + 52.75 + ], + [ + 126.09, + 52.75 + ], + [ + 126.08, + 52.75 + ], + [ + 126.07, + 52.75 + ], + [ + 126.05, + 52.75 + ], + [ + 126.04, + 52.73 + ], + [ + 126.04, + 52.72 + ], + [ + 126.05, + 52.71 + ], + [ + 126.06, + 52.68 + ], + [ + 126.04, + 52.68 + ], + [ + 126.03, + 52.67 + ], + [ + 126, + 52.67 + ], + [ + 125.98, + 52.67 + ], + [ + 125.97, + 52.66 + ], + [ + 125.96, + 52.65 + ], + [ + 125.96, + 52.64 + ], + [ + 125.96, + 52.63 + ], + [ + 125.97, + 52.61 + ], + [ + 125.99, + 52.6 + ], + [ + 125.99, + 52.59 + ], + [ + 126, + 52.58 + ], + [ + 126.01, + 52.58 + ], + [ + 126.04, + 52.57 + ], + [ + 126.04, + 52.58 + ], + [ + 126.05, + 52.6 + ], + [ + 126.06, + 52.6 + ], + [ + 126.09, + 52.59 + ], + [ + 126.1, + 52.59 + ], + [ + 126.11, + 52.58 + ], + [ + 126.13, + 52.57 + ], + [ + 126.16, + 52.56 + ], + [ + 126.17, + 52.55 + ], + [ + 126.18, + 52.54 + ], + [ + 126.19, + 52.54 + ], + [ + 126.2, + 52.53 + ], + [ + 126.19, + 52.5 + ], + [ + 126.18, + 52.49 + ], + [ + 126.18, + 52.48 + ], + [ + 126.19, + 52.46 + ], + [ + 126.21, + 52.47 + ], + [ + 126.22, + 52.47 + ], + [ + 126.24, + 52.47 + ], + [ + 126.25, + 52.48 + ], + [ + 126.27, + 52.47 + ], + [ + 126.28, + 52.45 + ], + [ + 126.3, + 52.44 + ], + [ + 126.31, + 52.43 + ], + [ + 126.32, + 52.42 + ], + [ + 126.33, + 52.41 + ], + [ + 126.34, + 52.4 + ], + [ + 126.34, + 52.35 + ], + [ + 126.32, + 52.34 + ], + [ + 126.31, + 52.34 + ], + [ + 126.31, + 52.33 + ], + [ + 126.33, + 52.3 + ], + [ + 126.42, + 52.3 + ], + [ + 126.43, + 52.3 + ], + [ + 126.43, + 52.29 + ], + [ + 126.4, + 52.28 + ], + [ + 126.38, + 52.27 + ], + [ + 126.36, + 52.26 + ], + [ + 126.34, + 52.26 + ], + [ + 126.32, + 52.25 + ], + [ + 126.31, + 52.23 + ], + [ + 126.3, + 52.21 + ], + [ + 126.31, + 52.2 + ], + [ + 126.32, + 52.2 + ], + [ + 126.34, + 52.19 + ], + [ + 126.4, + 52.18 + ], + [ + 126.41, + 52.18 + ], + [ + 126.43, + 52.17 + ], + [ + 126.44, + 52.16 + ], + [ + 126.46, + 52.16 + ], + [ + 126.47, + 52.16 + ], + [ + 126.48, + 52.16 + ], + [ + 126.5, + 52.16 + ], + [ + 126.53, + 52.14 + ], + [ + 126.55, + 52.13 + ], + [ + 126.55, + 52.11 + ], + [ + 126.54, + 52.1 + ], + [ + 126.53, + 52.07 + ], + [ + 126.5, + 52.03 + ], + [ + 126.48, + 52.04 + ], + [ + 126.45, + 52.03 + ], + [ + 126.44, + 52.03 + ], + [ + 126.44, + 52.01 + ], + [ + 126.45, + 51.99 + ], + [ + 126.46, + 51.95 + ], + [ + 126.46, + 51.94 + ], + [ + 126.48, + 51.93 + ], + [ + 126.5, + 51.93 + ], + [ + 126.5, + 51.92 + ], + [ + 126.51, + 51.91 + ], + [ + 126.51, + 51.9 + ], + [ + 126.52, + 51.9 + ], + [ + 126.53, + 51.89 + ], + [ + 126.54, + 51.88 + ], + [ + 126.55, + 51.87 + ], + [ + 126.55, + 51.86 + ], + [ + 126.57, + 51.83 + ], + [ + 126.58, + 51.82 + ], + [ + 126.59, + 51.81 + ], + [ + 126.6, + 51.8 + ], + [ + 126.61, + 51.79 + ], + [ + 126.62, + 51.77 + ], + [ + 126.64, + 51.77 + ], + [ + 126.65, + 51.76 + ], + [ + 126.66, + 51.73 + ], + [ + 126.67, + 51.73 + ], + [ + 126.68, + 51.73 + ], + [ + 126.7, + 51.73 + ], + [ + 126.72, + 51.69 + ], + [ + 126.73, + 51.67 + ], + [ + 126.73, + 51.66 + ], + [ + 126.73, + 51.64 + ], + [ + 126.72, + 51.63 + ], + [ + 126.7, + 51.62 + ], + [ + 126.68, + 51.61 + ], + [ + 126.67, + 51.6 + ], + [ + 126.67, + 51.59 + ], + [ + 126.68, + 51.59 + ], + [ + 126.69, + 51.58 + ], + [ + 126.71, + 51.57 + ], + [ + 126.75, + 51.56 + ], + [ + 126.77, + 51.56 + ], + [ + 126.8, + 51.55 + ], + [ + 126.81, + 51.54 + ], + [ + 126.84, + 51.53 + ], + [ + 126.83, + 51.52 + ], + [ + 126.82, + 51.5 + ], + [ + 126.81, + 51.5 + ], + [ + 126.8, + 51.47 + ], + [ + 126.79, + 51.46 + ], + [ + 126.78, + 51.44 + ], + [ + 126.79, + 51.43 + ], + [ + 126.8, + 51.42 + ], + [ + 126.82, + 51.42 + ], + [ + 126.9, + 51.41 + ], + [ + 126.91, + 51.4 + ], + [ + 126.92, + 51.35 + ], + [ + 126.9, + 51.34 + ], + [ + 126.88, + 51.34 + ], + [ + 126.87, + 51.34 + ], + [ + 126.86, + 51.34 + ], + [ + 126.84, + 51.34 + ], + [ + 126.82, + 51.34 + ], + [ + 126.81, + 51.32 + ], + [ + 126.81, + 51.29 + ], + [ + 126.82, + 51.28 + ], + [ + 126.83, + 51.27 + ], + [ + 126.84, + 51.26 + ], + [ + 126.86, + 51.25 + ], + [ + 126.91, + 51.23 + ], + [ + 126.9, + 51.21 + ], + [ + 126.91, + 51.16 + ], + [ + 126.91, + 51.15 + ], + [ + 126.93, + 51.05 + ], + [ + 126.94, + 51.05 + ], + [ + 126.96, + 51.04 + ], + [ + 126.97, + 51.04 + ], + [ + 126.99, + 51.02 + ], + [ + 127, + 51.01 + ], + [ + 127.01, + 51 + ], + [ + 127.01, + 50.99 + ], + [ + 127.02, + 50.99 + ], + [ + 127.02, + 50.98 + ], + [ + 127.03, + 50.97 + ], + [ + 127.04, + 50.96 + ], + [ + 127.07, + 50.95 + ], + [ + 127.1, + 50.94 + ], + [ + 127.11, + 50.93 + ], + [ + 127.12, + 50.92 + ], + [ + 127.14, + 50.91 + ], + [ + 127.14, + 50.9 + ], + [ + 127.15, + 50.9 + ], + [ + 127.15, + 50.89 + ], + [ + 127.17, + 50.87 + ], + [ + 127.17, + 50.86 + ], + [ + 127.18, + 50.86 + ], + [ + 127.19, + 50.84 + ], + [ + 127.2, + 50.83 + ], + [ + 127.2, + 50.81 + ], + [ + 127.21, + 50.8 + ], + [ + 127.22, + 50.79 + ], + [ + 127.23, + 50.77 + ], + [ + 127.24, + 50.77 + ], + [ + 127.26, + 50.76 + ], + [ + 127.27, + 50.76 + ], + [ + 127.29, + 50.76 + ], + [ + 127.3, + 50.75 + ], + [ + 127.3, + 50.74 + ], + [ + 127.28, + 50.69 + ], + [ + 127.29, + 50.67 + ], + [ + 127.29, + 50.66 + ], + [ + 127.3, + 50.65 + ], + [ + 127.32, + 50.63 + ], + [ + 127.33, + 50.62 + ], + [ + 127.34, + 50.61 + ], + [ + 127.35, + 50.6 + ], + [ + 127.36, + 50.59 + ], + [ + 127.37, + 50.57 + ], + [ + 127.33, + 50.54 + ], + [ + 127.32, + 50.53 + ], + [ + 127.31, + 50.52 + ], + [ + 127.31, + 50.5 + ], + [ + 127.3, + 50.49 + ], + [ + 127.29, + 50.48 + ], + [ + 127.3, + 50.45 + ], + [ + 127.31, + 50.45 + ], + [ + 127.32, + 50.45 + ], + [ + 127.35, + 50.39 + ], + [ + 127.34, + 50.37 + ], + [ + 127.33, + 50.36 + ], + [ + 127.33, + 50.34 + ], + [ + 127.33, + 50.33 + ], + [ + 127.35, + 50.31 + ], + [ + 127.36, + 50.3 + ], + [ + 127.39, + 50.28 + ], + [ + 127.4, + 50.28 + ], + [ + 127.44, + 50.27 + ], + [ + 127.45, + 50.27 + ], + [ + 127.47, + 50.26 + ], + [ + 127.5, + 50.26 + ], + [ + 127.51, + 50.25 + ], + [ + 127.58, + 50.24 + ], + [ + 127.61, + 50.23 + ], + [ + 127.57, + 50.13 + ], + [ + 127.56, + 50.12 + ], + [ + 127.52, + 50.08 + ], + [ + 127.51, + 50.07 + ], + [ + 127.5, + 50.04 + ], + [ + 127.5, + 49.98 + ], + [ + 127.5, + 49.97 + ], + [ + 127.53, + 49.94 + ], + [ + 127.54, + 49.93 + ], + [ + 127.54, + 49.92 + ], + [ + 127.54, + 49.9 + ], + [ + 127.53, + 49.81 + ], + [ + 127.64, + 49.78 + ], + [ + 127.67, + 49.76 + ], + [ + 127.67, + 49.75 + ], + [ + 127.67, + 49.72 + ], + [ + 127.67, + 49.71 + ], + [ + 127.67, + 49.7 + ], + [ + 127.67, + 49.69 + ], + [ + 127.68, + 49.67 + ], + [ + 127.69, + 49.67 + ], + [ + 127.72, + 49.65 + ], + [ + 127.73, + 49.65 + ], + [ + 127.76, + 49.63 + ], + [ + 127.77, + 49.63 + ], + [ + 127.78, + 49.62 + ], + [ + 127.79, + 49.58 + ], + [ + 127.81, + 49.59 + ], + [ + 127.84, + 49.58 + ], + [ + 127.87, + 49.57 + ], + [ + 127.9, + 49.57 + ], + [ + 127.91, + 49.57 + ], + [ + 127.96, + 49.6 + ], + [ + 127.97, + 49.59 + ], + [ + 127.97, + 49.58 + ], + [ + 128, + 49.58 + ], + [ + 128.02, + 49.57 + ], + [ + 128.02, + 49.56 + ], + [ + 128.03, + 49.56 + ], + [ + 128.08, + 49.55 + ], + [ + 128.12, + 49.55 + ], + [ + 128.13, + 49.55 + ], + [ + 128.15, + 49.54 + ], + [ + 128.17, + 49.54 + ], + [ + 128.22, + 49.55 + ], + [ + 128.23, + 49.55 + ], + [ + 128.23, + 49.56 + ], + [ + 128.25, + 49.56 + ], + [ + 128.27, + 49.56 + ], + [ + 128.28, + 49.56 + ], + [ + 128.29, + 49.56 + ], + [ + 128.31, + 49.55 + ], + [ + 128.34, + 49.54 + ], + [ + 128.35, + 49.55 + ], + [ + 128.37, + 49.59 + ], + [ + 128.4, + 49.59 + ], + [ + 128.41, + 49.59 + ], + [ + 128.42, + 49.59 + ], + [ + 128.48, + 49.59 + ], + [ + 128.5, + 49.59 + ], + [ + 128.64, + 49.58 + ], + [ + 128.65, + 49.57 + ], + [ + 128.73, + 49.57 + ], + [ + 128.73, + 49.59 + ], + [ + 128.76, + 49.59 + ], + [ + 128.77, + 49.58 + ], + [ + 128.78, + 49.58 + ], + [ + 128.79, + 49.58 + ], + [ + 128.8, + 49.56 + ], + [ + 128.8, + 49.55 + ], + [ + 128.79, + 49.54 + ], + [ + 128.78, + 49.54 + ], + [ + 128.76, + 49.52 + ], + [ + 128.75, + 49.52 + ], + [ + 128.75, + 49.48 + ], + [ + 128.76, + 49.48 + ], + [ + 128.79, + 49.47 + ], + [ + 128.8, + 49.48 + ], + [ + 128.87, + 49.47 + ], + [ + 128.93, + 49.46 + ], + [ + 128.94, + 49.46 + ], + [ + 129.01, + 49.44 + ], + [ + 129.04, + 49.41 + ], + [ + 129.05, + 49.38 + ], + [ + 129.06, + 49.37 + ], + [ + 129.07, + 49.36 + ], + [ + 129.08, + 49.35 + ], + [ + 129.15, + 49.36 + ], + [ + 129.15, + 49.37 + ], + [ + 129.17, + 49.38 + ], + [ + 129.18, + 49.39 + ], + [ + 129.26, + 49.39 + ], + [ + 129.27, + 49.38 + ], + [ + 129.3, + 49.36 + ], + [ + 129.31, + 49.36 + ], + [ + 129.39, + 49.43 + ], + [ + 129.41, + 49.44 + ], + [ + 129.45, + 49.43 + ], + [ + 129.46, + 49.43 + ], + [ + 129.51, + 49.42 + ], + [ + 129.54, + 49.39 + ], + [ + 129.54, + 49.38 + ], + [ + 129.56, + 49.29 + ], + [ + 129.57, + 49.28 + ], + [ + 129.63, + 49.28 + ], + [ + 129.64, + 49.29 + ], + [ + 129.7, + 49.3 + ], + [ + 129.7, + 49.29 + ], + [ + 129.73, + 49.28 + ], + [ + 129.74, + 49.27 + ], + [ + 129.76, + 49.2 + ], + [ + 129.76, + 49.19 + ], + [ + 129.79, + 49.18 + ], + [ + 129.8, + 49.18 + ], + [ + 129.85, + 49.18 + ], + [ + 129.85, + 49.17 + ], + [ + 129.86, + 49.14 + ], + [ + 129.85, + 49.12 + ], + [ + 129.9, + 49.1 + ], + [ + 129.91, + 49.06 + ], + [ + 129.91, + 49.04 + ], + [ + 129.94, + 49.03 + ], + [ + 129.95, + 49.03 + ], + [ + 130.01, + 49.01 + ], + [ + 130.02, + 49 + ], + [ + 130.07, + 48.97 + ], + [ + 130.08, + 48.96 + ], + [ + 130.14, + 48.93 + ], + [ + 130.18, + 48.91 + ], + [ + 130.19, + 48.9 + ], + [ + 130.2, + 48.89 + ], + [ + 130.23, + 48.86 + ], + [ + 130.32, + 48.86 + ], + [ + 130.34, + 48.89 + ], + [ + 130.35, + 48.89 + ], + [ + 130.4, + 48.9 + ], + [ + 130.41, + 48.9 + ], + [ + 130.49, + 48.86 + ], + [ + 130.5, + 48.86 + ], + [ + 130.56, + 48.86 + ], + [ + 130.68, + 48.87 + ], + [ + 130.68, + 48.86 + ], + [ + 130.68, + 48.85 + ], + [ + 130.67, + 48.84 + ], + [ + 130.66, + 48.83 + ], + [ + 130.64, + 48.82 + ], + [ + 130.63, + 48.8 + ], + [ + 130.62, + 48.79 + ], + [ + 130.6, + 48.76 + ], + [ + 130.59, + 48.75 + ], + [ + 130.58, + 48.71 + ], + [ + 130.57, + 48.71 + ], + [ + 130.55, + 48.67 + ], + [ + 130.55, + 48.66 + ], + [ + 130.53, + 48.64 + ], + [ + 130.52, + 48.63 + ], + [ + 130.53, + 48.6 + ], + [ + 130.54, + 48.6 + ], + [ + 130.59, + 48.6 + ], + [ + 130.6, + 48.58 + ], + [ + 130.62, + 48.49 + ], + [ + 130.63, + 48.49 + ], + [ + 130.66, + 48.49 + ], + [ + 130.67, + 48.5 + ], + [ + 130.73, + 48.51 + ], + [ + 130.74, + 48.51 + ], + [ + 130.75, + 48.5 + ], + [ + 130.76, + 48.5 + ], + [ + 130.75, + 48.47 + ], + [ + 130.74, + 48.46 + ], + [ + 130.73, + 48.45 + ], + [ + 130.73, + 48.44 + ], + [ + 130.73, + 48.43 + ], + [ + 130.74, + 48.42 + ], + [ + 130.75, + 48.41 + ], + [ + 130.75, + 48.4 + ], + [ + 130.76, + 48.37 + ], + [ + 130.77, + 48.36 + ], + [ + 130.78, + 48.35 + ], + [ + 130.8, + 48.35 + ], + [ + 130.81, + 48.34 + ], + [ + 130.82, + 48.33 + ], + [ + 130.82, + 48.29 + ], + [ + 130.81, + 48.28 + ], + [ + 130.81, + 48.27 + ], + [ + 130.8, + 48.26 + ], + [ + 130.78, + 48.25 + ], + [ + 130.76, + 48.25 + ], + [ + 130.76, + 48.23 + ], + [ + 130.76, + 48.22 + ], + [ + 130.75, + 48.18 + ], + [ + 130.73, + 48.17 + ], + [ + 130.71, + 48.16 + ], + [ + 130.69, + 48.14 + ], + [ + 130.67, + 48.13 + ], + [ + 130.66, + 48.12 + ], + [ + 130.65, + 48.1 + ], + [ + 130.67, + 48.09 + ], + [ + 130.65, + 48.08 + ], + [ + 130.68, + 48.06 + ], + [ + 130.69, + 48.05 + ], + [ + 130.72, + 48.03 + ], + [ + 130.73, + 48.03 + ], + [ + 130.74, + 48 + ], + [ + 130.76, + 48 + ], + [ + 130.77, + 47.99 + ], + [ + 130.78, + 47.98 + ], + [ + 130.8, + 47.97 + ], + [ + 130.81, + 47.96 + ], + [ + 130.82, + 47.96 + ], + [ + 130.83, + 47.95 + ], + [ + 130.85, + 47.95 + ], + [ + 130.86, + 47.94 + ], + [ + 130.87, + 47.92 + ], + [ + 130.88, + 47.92 + ], + [ + 130.92, + 47.86 + ], + [ + 130.94, + 47.83 + ], + [ + 130.95, + 47.83 + ], + [ + 130.97, + 47.71 + ], + [ + 130.98, + 47.7 + ], + [ + 131.02, + 47.69 + ], + [ + 131.03, + 47.69 + ], + [ + 131.1, + 47.68 + ], + [ + 131.11, + 47.69 + ], + [ + 131.12, + 47.69 + ], + [ + 131.13, + 47.69 + ], + [ + 131.26, + 47.73 + ], + [ + 131.28, + 47.73 + ], + [ + 131.29, + 47.73 + ], + [ + 131.39, + 47.71 + ], + [ + 131.38, + 47.73 + ], + [ + 131.39, + 47.73 + ], + [ + 131.48, + 47.74 + ], + [ + 131.53, + 47.73 + ], + [ + 131.54, + 47.73 + ], + [ + 131.54, + 47.68 + ], + [ + 131.59, + 47.65 + ], + [ + 131.79, + 47.67 + ], + [ + 131.8, + 47.67 + ], + [ + 131.85, + 47.67 + ], + [ + 131.86, + 47.67 + ], + [ + 131.91, + 47.69 + ], + [ + 131.91, + 47.68 + ], + [ + 131.92, + 47.66 + ], + [ + 131.97, + 47.67 + ], + [ + 131.99, + 47.68 + ], + [ + 131.99, + 47.69 + ], + [ + 131.99, + 47.7 + ], + [ + 132, + 47.71 + ], + [ + 132.05, + 47.7 + ], + [ + 132.06, + 47.7 + ], + [ + 132.1, + 47.69 + ], + [ + 132.23, + 47.69 + ], + [ + 132.17, + 47.7 + ], + [ + 132.25, + 47.7 + ], + [ + 132.28, + 47.71 + ], + [ + 132.29, + 47.74 + ], + [ + 132.3, + 47.74 + ], + [ + 132.43, + 47.73 + ], + [ + 132.44, + 47.73 + ], + [ + 132.47, + 47.69 + ], + [ + 132.56, + 47.72 + ], + [ + 132.6, + 47.74 + ], + [ + 132.6, + 47.75 + ], + [ + 132.59, + 47.77 + ], + [ + 132.64, + 47.84 + ], + [ + 132.84, + 47.96 + ], + [ + 132.84, + 47.97 + ], + [ + 133.04, + 48.09 + ], + [ + 133.04, + 48.1 + ], + [ + 133.05, + 48.1 + ], + [ + 133.08, + 48.11 + ], + [ + 133.24, + 48.1 + ], + [ + 133.31, + 48.1 + ], + [ + 133.44, + 48.11 + ], + [ + 133.45, + 48.11 + ], + [ + 133.56, + 48.13 + ], + [ + 133.57, + 48.14 + ], + [ + 133.59, + 48.18 + ], + [ + 133.71, + 48.18 + ], + [ + 133.74, + 48.22 + ], + [ + 133.74, + 48.24 + ], + [ + 133.8, + 48.26 + ], + [ + 133.81, + 48.27 + ], + [ + 133.83, + 48.27 + ], + [ + 133.85, + 48.28 + ], + [ + 133.86, + 48.27 + ], + [ + 133.98, + 48.3 + ], + [ + 134, + 48.3 + ], + [ + 134.19, + 48.38 + ], + [ + 134.2, + 48.38 + ], + [ + 134.42, + 48.39 + ], + [ + 134.44, + 48.4 + ], + [ + 134.53, + 48.42 + ], + [ + 134.55, + 48.41 + ], + [ + 134.77, + 48.36 + ], + [ + 134.72, + 48.28 + ], + [ + 134.64, + 48.13 + ], + [ + 134.63, + 48.12 + ], + [ + 134.62, + 48.09 + ], + [ + 134.6, + 48.08 + ], + [ + 134.59, + 48.07 + ], + [ + 134.57, + 48.06 + ], + [ + 134.57, + 48.04 + ], + [ + 134.56, + 48.04 + ], + [ + 134.55, + 48.04 + ], + [ + 134.54, + 48.03 + ], + [ + 134.55, + 48.02 + ], + [ + 134.55, + 47.99 + ], + [ + 134.54, + 47.99 + ], + [ + 134.55, + 47.98 + ], + [ + 134.56, + 47.97 + ], + [ + 134.58, + 47.96 + ], + [ + 134.61, + 47.9 + ], + [ + 134.63, + 47.9 + ], + [ + 134.64, + 47.9 + ], + [ + 134.65, + 47.9 + ], + [ + 134.66, + 47.89 + ], + [ + 134.66, + 47.86 + ], + [ + 134.67, + 47.85 + ], + [ + 134.66, + 47.83 + ], + [ + 134.68, + 47.81 + ], + [ + 134.69, + 47.81 + ], + [ + 134.72, + 47.79 + ], + [ + 134.73, + 47.78 + ], + [ + 134.76, + 47.76 + ], + [ + 134.77, + 47.75 + ], + [ + 134.77, + 47.72 + ], + [ + 134.77, + 47.71 + ], + [ + 134.75, + 47.7 + ], + [ + 134.75, + 47.69 + ], + [ + 134.74, + 47.68 + ], + [ + 134.73, + 47.67 + ], + [ + 134.72, + 47.67 + ], + [ + 134.72, + 47.66 + ], + [ + 134.7, + 47.65 + ], + [ + 134.69, + 47.64 + ], + [ + 134.68, + 47.63 + ], + [ + 134.67, + 47.59 + ], + [ + 134.67, + 47.58 + ], + [ + 134.64, + 47.57 + ], + [ + 134.63, + 47.56 + ], + [ + 134.62, + 47.54 + ], + [ + 134.6, + 47.53 + ], + [ + 134.59, + 47.53 + ], + [ + 134.57, + 47.49 + ], + [ + 134.56, + 47.48 + ], + [ + 134.55, + 47.47 + ], + [ + 134.53, + 47.47 + ], + [ + 134.52, + 47.47 + ], + [ + 134.51, + 47.46 + ], + [ + 134.5, + 47.45 + ], + [ + 134.48, + 47.44 + ], + [ + 134.47, + 47.45 + ], + [ + 134.45, + 47.45 + ], + [ + 134.44, + 47.44 + ], + [ + 134.34, + 47.44 + ], + [ + 134.33, + 47.44 + ], + [ + 134.31, + 47.43 + ], + [ + 134.3, + 47.42 + ], + [ + 134.29, + 47.41 + ], + [ + 134.26, + 47.4 + ], + [ + 134.25, + 47.36 + ], + [ + 134.24, + 47.35 + ], + [ + 134.21, + 47.35 + ], + [ + 134.2, + 47.34 + ], + [ + 134.18, + 47.33 + ], + [ + 134.18, + 47.32 + ], + [ + 134.17, + 47.3 + ], + [ + 134.16, + 47.3 + ], + [ + 134.16, + 47.29 + ], + [ + 134.15, + 47.26 + ], + [ + 134.15, + 47.25 + ], + [ + 134.18, + 47.23 + ], + [ + 134.19, + 47.22 + ], + [ + 134.22, + 47.17 + ], + [ + 134.22, + 47.16 + ], + [ + 134.22, + 47.15 + ], + [ + 134.22, + 47.14 + ], + [ + 134.22, + 47.12 + ], + [ + 134.22, + 47.11 + ], + [ + 134.18, + 47.1 + ], + [ + 134.15, + 47.1 + ], + [ + 134.14, + 47.09 + ], + [ + 134.13, + 47.07 + ], + [ + 134.11, + 47.06 + ], + [ + 134.11, + 47.04 + ], + [ + 134.1, + 47.02 + ], + [ + 134.09, + 47 + ], + [ + 134.07, + 46.99 + ], + [ + 134.06, + 46.97 + ], + [ + 134.06, + 46.96 + ], + [ + 134.07, + 46.95 + ], + [ + 134.07, + 46.94 + ], + [ + 134.06, + 46.93 + ], + [ + 134.05, + 46.91 + ], + [ + 134.04, + 46.9 + ], + [ + 134.04, + 46.89 + ], + [ + 134.03, + 46.86 + ], + [ + 134.03, + 46.84 + ], + [ + 134.02, + 46.83 + ], + [ + 134.02, + 46.81 + ], + [ + 134.04, + 46.79 + ], + [ + 134.05, + 46.78 + ], + [ + 134.04, + 46.76 + ], + [ + 134.02, + 46.75 + ], + [ + 134.02, + 46.73 + ], + [ + 134.02, + 46.72 + ], + [ + 134.02, + 46.71 + ], + [ + 134.02, + 46.7 + ], + [ + 134.02, + 46.69 + ], + [ + 134, + 46.65 + ], + [ + 133.99, + 46.64 + ], + [ + 133.98, + 46.63 + ], + [ + 133.97, + 46.63 + ], + [ + 133.96, + 46.62 + ], + [ + 133.95, + 46.61 + ], + [ + 133.94, + 46.61 + ], + [ + 133.92, + 46.6 + ], + [ + 133.91, + 46.58 + ], + [ + 133.9, + 46.57 + ], + [ + 133.9, + 46.56 + ], + [ + 133.9, + 46.55 + ], + [ + 133.89, + 46.54 + ], + [ + 133.88, + 46.52 + ], + [ + 133.87, + 46.51 + ], + [ + 133.86, + 46.5 + ], + [ + 133.86, + 46.49 + ], + [ + 133.84, + 46.47 + ], + [ + 133.84, + 46.46 + ], + [ + 133.85, + 46.44 + ], + [ + 133.86, + 46.44 + ], + [ + 133.87, + 46.45 + ], + [ + 133.88, + 46.45 + ], + [ + 133.89, + 46.45 + ], + [ + 133.91, + 46.44 + ], + [ + 133.92, + 46.43 + ], + [ + 133.93, + 46.41 + ], + [ + 133.94, + 46.39 + ], + [ + 133.94, + 46.38 + ], + [ + 133.91, + 46.37 + ], + [ + 133.9, + 46.37 + ], + [ + 133.89, + 46.37 + ], + [ + 133.88, + 46.36 + ], + [ + 133.86, + 46.35 + ], + [ + 133.87, + 46.33 + ], + [ + 133.89, + 46.33 + ], + [ + 133.9, + 46.33 + ], + [ + 133.91, + 46.33 + ], + [ + 133.91, + 46.32 + ], + [ + 133.91, + 46.31 + ], + [ + 133.9, + 46.29 + ], + [ + 133.91, + 46.28 + ], + [ + 133.91, + 46.27 + ], + [ + 133.9, + 46.26 + ], + [ + 133.87, + 46.25 + ], + [ + 133.85, + 46.25 + ], + [ + 133.86, + 46.24 + ], + [ + 133.87, + 46.24 + ], + [ + 133.85, + 46.22 + ], + [ + 133.84, + 46.2 + ], + [ + 133.83, + 46.2 + ], + [ + 133.83, + 46.21 + ], + [ + 133.82, + 46.23 + ], + [ + 133.8, + 46.23 + ], + [ + 133.79, + 46.21 + ], + [ + 133.79, + 46.19 + ], + [ + 133.75, + 46.17 + ], + [ + 133.74, + 46.17 + ], + [ + 133.71, + 46.16 + ], + [ + 133.69, + 46.16 + ], + [ + 133.69, + 46.13 + ], + [ + 133.7, + 46.11 + ], + [ + 133.7, + 46.1 + ], + [ + 133.72, + 46.09 + ], + [ + 133.73, + 46.08 + ], + [ + 133.74, + 46.07 + ], + [ + 133.73, + 46.05 + ], + [ + 133.72, + 46.03 + ], + [ + 133.71, + 46.03 + ], + [ + 133.7, + 46.02 + ], + [ + 133.69, + 46 + ], + [ + 133.67, + 45.99 + ], + [ + 133.67, + 45.98 + ], + [ + 133.68, + 45.96 + ], + [ + 133.67, + 45.94 + ], + [ + 133.66, + 45.94 + ], + [ + 133.64, + 45.95 + ], + [ + 133.63, + 45.94 + ], + [ + 133.6, + 45.94 + ], + [ + 133.6, + 45.93 + ], + [ + 133.61, + 45.91 + ], + [ + 133.6, + 45.89 + ], + [ + 133.59, + 45.89 + ], + [ + 133.59, + 45.87 + ], + [ + 133.56, + 45.87 + ], + [ + 133.55, + 45.89 + ], + [ + 133.54, + 45.89 + ], + [ + 133.51, + 45.89 + ], + [ + 133.5, + 45.89 + ], + [ + 133.48, + 45.86 + ], + [ + 133.48, + 45.85 + ], + [ + 133.48, + 45.84 + ], + [ + 133.46, + 45.83 + ], + [ + 133.46, + 45.82 + ], + [ + 133.46, + 45.8 + ], + [ + 133.47, + 45.79 + ], + [ + 133.48, + 45.79 + ], + [ + 133.49, + 45.79 + ], + [ + 133.48, + 45.77 + ], + [ + 133.47, + 45.78 + ], + [ + 133.47, + 45.77 + ], + [ + 133.46, + 45.76 + ], + [ + 133.46, + 45.75 + ], + [ + 133.47, + 45.75 + ], + [ + 133.47, + 45.74 + ], + [ + 133.46, + 45.74 + ], + [ + 133.45, + 45.73 + ], + [ + 133.43, + 45.71 + ], + [ + 133.42, + 45.7 + ], + [ + 133.42, + 45.69 + ], + [ + 133.43, + 45.7 + ], + [ + 133.45, + 45.7 + ], + [ + 133.46, + 45.69 + ], + [ + 133.47, + 45.69 + ], + [ + 133.48, + 45.68 + ], + [ + 133.48, + 45.67 + ], + [ + 133.47, + 45.66 + ], + [ + 133.45, + 45.66 + ], + [ + 133.44, + 45.65 + ], + [ + 133.44, + 45.64 + ], + [ + 133.47, + 45.63 + ], + [ + 133.44, + 45.63 + ], + [ + 133.43, + 45.63 + ], + [ + 133.42, + 45.61 + ], + [ + 133.41, + 45.62 + ], + [ + 133.4, + 45.6 + ], + [ + 133.13, + 45.43 + ], + [ + 133.13, + 45.13 + ], + [ + 132.86, + 45.06 + ], + [ + 132.67, + 45.35 + ], + [ + 132, + 45.25 + ], + [ + 131.87, + 45.34 + ], + [ + 131.49, + 44.97 + ], + [ + 130.96, + 44.85 + ], + [ + 131.3, + 44.04 + ], + [ + 131.31, + 43.4 + ], + [ + 131.14, + 42.93 + ], + [ + 130.4, + 42.73 + ], + [ + 130.58, + 42.67 + ], + [ + 130.56, + 42.53 + ], + [ + 130.55, + 42.52 + ], + [ + 130.52, + 42.55 + ], + [ + 130.52, + 42.57 + ], + [ + 130.52, + 42.59 + ], + [ + 130.52, + 42.61 + ], + [ + 130.51, + 42.62 + ], + [ + 130.48, + 42.62 + ], + [ + 130.47, + 42.61 + ], + [ + 130.46, + 42.59 + ], + [ + 130.47, + 42.59 + ], + [ + 130.48, + 42.58 + ], + [ + 130.47, + 42.55 + ], + [ + 130.43, + 42.55 + ], + [ + 130.42, + 42.57 + ], + [ + 130.44, + 42.6 + ], + [ + 130.43, + 42.61 + ], + [ + 130.39, + 42.6 + ], + [ + 130.38, + 42.6 + ], + [ + 130.37, + 42.62 + ], + [ + 130.32, + 42.65 + ], + [ + 130.31, + 42.66 + ], + [ + 130.3, + 42.67 + ], + [ + 130.3, + 42.69 + ], + [ + 130.28, + 42.7 + ], + [ + 130.27, + 42.7 + ], + [ + 130.25, + 42.71 + ], + [ + 130.25, + 42.72 + ], + [ + 130.24, + 42.73 + ], + [ + 130.24, + 42.75 + ], + [ + 130.24, + 42.77 + ], + [ + 130.24, + 42.78 + ], + [ + 130.25, + 42.79 + ], + [ + 130.24, + 42.81 + ], + [ + 130.24, + 42.82 + ], + [ + 130.25, + 42.84 + ], + [ + 130.25, + 42.85 + ], + [ + 130.25, + 42.86 + ], + [ + 130.27, + 42.88 + ], + [ + 130.27, + 42.89 + ], + [ + 130.26, + 42.9 + ], + [ + 130.25, + 42.91 + ], + [ + 130.24, + 42.9 + ], + [ + 130.23, + 42.9 + ], + [ + 130.21, + 42.9 + ], + [ + 130.19, + 42.91 + ], + [ + 130.18, + 42.91 + ], + [ + 130.15, + 42.91 + ], + [ + 130.14, + 42.9 + ], + [ + 130.1, + 42.92 + ], + [ + 130.1, + 42.93 + ], + [ + 130.12, + 42.93 + ], + [ + 130.12, + 42.94 + ], + [ + 130.12, + 42.96 + ], + [ + 130.15, + 42.97 + ], + [ + 130.12, + 42.99 + ], + [ + 130.11, + 42.99 + ], + [ + 130.1, + 42.99 + ], + [ + 130.09, + 42.98 + ], + [ + 130.06, + 42.97 + ], + [ + 130.04, + 42.97 + ], + [ + 130.03, + 42.97 + ], + [ + 130.02, + 42.97 + ], + [ + 130.01, + 42.97 + ], + [ + 130, + 42.97 + ], + [ + 129.99, + 42.97 + ], + [ + 129.95, + 42.98 + ], + [ + 129.95, + 42.99 + ], + [ + 129.95, + 43.01 + ], + [ + 129.93, + 43.01 + ], + [ + 129.92, + 43.01 + ], + [ + 129.88, + 42.99 + ], + [ + 129.88, + 42.98 + ], + [ + 129.9, + 42.97 + ], + [ + 129.85, + 42.94 + ], + [ + 129.84, + 42.91 + ], + [ + 129.84, + 42.88 + ], + [ + 129.84, + 42.87 + ], + [ + 129.81, + 42.85 + ], + [ + 129.82, + 42.84 + ], + [ + 129.77, + 42.73 + ], + [ + 129.77, + 42.7 + ], + [ + 129.79, + 42.69 + ], + [ + 129.8, + 42.68 + ], + [ + 129.75, + 42.65 + ], + [ + 129.75, + 42.62 + ], + [ + 129.78, + 42.6 + ], + [ + 129.77, + 42.6 + ], + [ + 129.75, + 42.58 + ], + [ + 129.71, + 42.43 + ], + [ + 129.7, + 42.43 + ], + [ + 129.63, + 42.44 + ], + [ + 129.59, + 42.44 + ], + [ + 129.6, + 42.44 + ], + [ + 129.35, + 42.41 + ], + [ + 129.2, + 42.23 + ], + [ + 129.22, + 42.21 + ], + [ + 128.65, + 42.02 + ], + [ + 128.1, + 42.02 + ], + [ + 128.04, + 42 + ], + [ + 128.31, + 41.6 + ], + [ + 128.19, + 41.41 + ], + [ + 128.14, + 41.38 + ], + [ + 128.12, + 41.38 + ], + [ + 127.79, + 41.41 + ], + [ + 127.78, + 41.42 + ], + [ + 127.77, + 41.42 + ], + [ + 127.75, + 41.43 + ], + [ + 127.74, + 41.42 + ], + [ + 127.69, + 41.42 + ], + [ + 127.68, + 41.42 + ], + [ + 127.67, + 41.41 + ], + [ + 127.66, + 41.41 + ], + [ + 127.42, + 41.46 + ], + [ + 127.41, + 41.46 + ], + [ + 127.4, + 41.47 + ], + [ + 127.39, + 41.48 + ], + [ + 127.36, + 41.48 + ], + [ + 127.36, + 41.47 + ], + [ + 127.31, + 41.47 + ], + [ + 127.3, + 41.48 + ], + [ + 127.29, + 41.48 + ], + [ + 127.26, + 41.49 + ], + [ + 127.27, + 41.49 + ], + [ + 127.23, + 41.51 + ], + [ + 127.23, + 41.52 + ], + [ + 127.22, + 41.52 + ], + [ + 127.18, + 41.52 + ], + [ + 127.17, + 41.53 + ], + [ + 127.14, + 41.53 + ], + [ + 126.86, + 41.77 + ], + [ + 126.85, + 41.75 + ], + [ + 126.79, + 41.71 + ], + [ + 126.77, + 41.71 + ], + [ + 126.76, + 41.72 + ], + [ + 126.68, + 41.73 + ], + [ + 126.7, + 41.69 + ], + [ + 126.67, + 41.66 + ], + [ + 126.62, + 41.67 + ], + [ + 126.61, + 41.66 + ], + [ + 126.61, + 41.64 + ], + [ + 126.6, + 41.63 + ], + [ + 126.54, + 41.61 + ], + [ + 126.54, + 41.48 + ], + [ + 126.52, + 41.45 + ], + [ + 126.49, + 41.37 + ], + [ + 126.46, + 41.36 + ], + [ + 126.45, + 41.36 + ], + [ + 126.43, + 41.35 + ], + [ + 126.43, + 41.34 + ], + [ + 126.43, + 41.33 + ], + [ + 126.42, + 41.33 + ], + [ + 126.41, + 41.33 + ], + [ + 126.4, + 41.31 + ], + [ + 126.39, + 41.3 + ], + [ + 126.36, + 41.28 + ], + [ + 126.36, + 41.27 + ], + [ + 126.32, + 41.23 + ], + [ + 126.29, + 41.18 + ], + [ + 126.28, + 41.16 + ], + [ + 126.26, + 41.15 + ], + [ + 126.25, + 41.15 + ], + [ + 126.24, + 41.15 + ], + [ + 126.23, + 41.14 + ], + [ + 126.21, + 41.12 + ], + [ + 126.2, + 41.12 + ], + [ + 126.18, + 41.1 + ], + [ + 126.17, + 41.1 + ], + [ + 126.16, + 41.09 + ], + [ + 126.11, + 41.07 + ], + [ + 126.13, + 41.06 + ], + [ + 126.12, + 41.04 + ], + [ + 126.11, + 41.04 + ], + [ + 126.1, + 41.03 + ], + [ + 126.1, + 41.02 + ], + [ + 126.1, + 41.01 + ], + [ + 126.1, + 41 + ], + [ + 126.07, + 41 + ], + [ + 126.07, + 40.99 + ], + [ + 126.08, + 40.97 + ], + [ + 126.05, + 40.96 + ], + [ + 126.04, + 40.94 + ], + [ + 126.04, + 40.93 + ], + [ + 126.02, + 40.93 + ], + [ + 125.98, + 40.92 + ], + [ + 125.97, + 40.91 + ], + [ + 125.98, + 40.91 + ], + [ + 125.98, + 40.9 + ], + [ + 125.86, + 40.9 + ], + [ + 125.86, + 40.89 + ], + [ + 125.84, + 40.88 + ], + [ + 125.83, + 40.88 + ], + [ + 125.82, + 40.86 + ], + [ + 125.81, + 40.86 + ], + [ + 125.8, + 40.88 + ], + [ + 125.79, + 40.89 + ], + [ + 125.76, + 40.88 + ], + [ + 125.75, + 40.88 + ], + [ + 125.73, + 40.87 + ], + [ + 125.72, + 40.87 + ], + [ + 125.71, + 40.87 + ], + [ + 125.7, + 40.86 + ], + [ + 125.69, + 40.85 + ], + [ + 125.68, + 40.84 + ], + [ + 125.67, + 40.83 + ], + [ + 125.66, + 40.83 + ], + [ + 125.64, + 40.82 + ], + [ + 125.63, + 40.81 + ], + [ + 125.63, + 40.8 + ], + [ + 125.65, + 40.79 + ], + [ + 125.66, + 40.79 + ], + [ + 125.68, + 40.79 + ], + [ + 125.66, + 40.76 + ], + [ + 125.59, + 40.76 + ], + [ + 125.58, + 40.78 + ], + [ + 125.57, + 40.78 + ], + [ + 125.55, + 40.76 + ], + [ + 125.52, + 40.72 + ], + [ + 125.5, + 40.72 + ], + [ + 125.46, + 40.71 + ], + [ + 125.45, + 40.67 + ], + [ + 125.42, + 40.67 + ], + [ + 125.41, + 40.66 + ], + [ + 125.41, + 40.63 + ], + [ + 125.36, + 40.65 + ], + [ + 125.27, + 40.63 + ], + [ + 125.26, + 40.61 + ], + [ + 125.17, + 40.6 + ], + [ + 125.16, + 40.59 + ], + [ + 125.14, + 40.58 + ], + [ + 125.11, + 40.56 + ], + [ + 125.05, + 40.54 + ], + [ + 125.01, + 40.53 + ], + [ + 124.97, + 40.47 + ], + [ + 124.96, + 40.46 + ], + [ + 124.95, + 40.46 + ], + [ + 124.94, + 40.45 + ], + [ + 124.93, + 40.45 + ], + [ + 124.91, + 40.46 + ], + [ + 124.91, + 40.47 + ], + [ + 124.89, + 40.48 + ], + [ + 124.88, + 40.46 + ], + [ + 124.86, + 40.43 + ], + [ + 124.85, + 40.43 + ], + [ + 124.83, + 40.41 + ], + [ + 124.82, + 40.4 + ], + [ + 124.77, + 40.39 + ], + [ + 124.75, + 40.38 + ], + [ + 124.73, + 40.33 + ], + [ + 124.72, + 40.32 + ], + [ + 124.7, + 40.31 + ], + [ + 124.69, + 40.31 + ], + [ + 124.65, + 40.3 + ], + [ + 124.63, + 40.3 + ], + [ + 124.63, + 40.29 + ], + [ + 124.62, + 40.29 + ], + [ + 124.61, + 40.28 + ], + [ + 124.6, + 40.28 + ], + [ + 124.58, + 40.27 + ], + [ + 124.57, + 40.25 + ], + [ + 124.56, + 40.25 + ], + [ + 124.54, + 40.24 + ], + [ + 124.52, + 40.23 + ], + [ + 124.5, + 40.2 + ], + [ + 124.49, + 40.18 + ], + [ + 124.48, + 40.17 + ], + [ + 124.47, + 40.18 + ], + [ + 124.46, + 40.17 + ], + [ + 124.43, + 40.14 + ], + [ + 124.42, + 40.14 + ], + [ + 124.41, + 40.14 + ], + [ + 124.4, + 40.13 + ], + [ + 124.4, + 40.12 + ], + [ + 124.39, + 40.11 + ], + [ + 124.38, + 40.1 + ], + [ + 124.37, + 40.09 + ], + [ + 124.36, + 40.09 + ], + [ + 124.34, + 40.07 + ], + [ + 124.34, + 40.06 + ], + [ + 124.34, + 40.05 + ], + [ + 124.36, + 40.04 + ], + [ + 124.34, + 39.99 + ], + [ + 124.28, + 39.96 + ], + [ + 124.28, + 39.95 + ], + [ + 124.29, + 39.94 + ], + [ + 124.28, + 39.93 + ], + [ + 124.24, + 39.93 + ], + [ + 124.23, + 39.92 + ], + [ + 124.14, + 39.75 + ], + [ + 123.64, + 39.87 + ], + [ + 122.75, + 39.6 + ], + [ + 122.29, + 39.37 + ], + [ + 122.06, + 39.06 + ], + [ + 121.84, + 39.04 + ], + [ + 121.91, + 38.96 + ], + [ + 121.69, + 39.05 + ], + [ + 121.69, + 38.86 + ], + [ + 121.13, + 38.73 + ], + [ + 121.09, + 38.93 + ], + [ + 121.66, + 39.09 + ], + [ + 121.59, + 39.27 + ], + [ + 121.93, + 39.4 + ], + [ + 121.55, + 39.31 + ], + [ + 121.24, + 39.45 + ], + [ + 121.57, + 39.55 + ], + [ + 121.47, + 39.81 + ], + [ + 121.89, + 40 + ], + [ + 122.28, + 40.47 + ], + [ + 122.16, + 40.68 + ], + [ + 121.97, + 40.68 + ], + [ + 121.84, + 40.99 + ], + [ + 121.75, + 40.84 + ], + [ + 120.97, + 40.83 + ], + [ + 121.03, + 40.71 + ], + [ + 120.83, + 40.67 + ], + [ + 120.46, + 40.21 + ], + [ + 119.4, + 39.79 + ], + [ + 119.29, + 39.4 + ], + [ + 118.92, + 39.13 + ], + [ + 118.53, + 39.21 + ], + [ + 118.4, + 38.97 + ], + [ + 118.06, + 39.23 + ], + [ + 117.69, + 39.13 + ], + [ + 117.88, + 38.94 + ], + [ + 117.71, + 38.96 + ], + [ + 117.85, + 38.87 + ], + [ + 117.62, + 38.84 + ], + [ + 117.72, + 38.67 + ], + [ + 117.57, + 38.61 + ], + [ + 117.76, + 38.33 + ], + [ + 118, + 38.41 + ], + [ + 117.84, + 38.28 + ], + [ + 117.95, + 38.18 + ], + [ + 118.15, + 38.32 + ], + [ + 118.02, + 38.01 + ], + [ + 118.12, + 38.19 + ], + [ + 118.55, + 38.01 + ], + [ + 118.63, + 38.13 + ], + [ + 119.07, + 38.15 + ], + [ + 118.94, + 38.02 + ], + [ + 119.31, + 37.73 + ], + [ + 119.01, + 37.65 + ], + [ + 118.93, + 37.35 + ], + [ + 119, + 37.19 + ], + [ + 119.27, + 37.31 + ], + [ + 119.18, + 37.23 + ], + [ + 119.16, + 37.07 + ], + [ + 119.2, + 37.18 + ], + [ + 119.29, + 37.14 + ], + [ + 119.24, + 37.07 + ], + [ + 119.48, + 37.15 + ], + [ + 119.36, + 37.04 + ], + [ + 119.75, + 37.12 + ], + [ + 119.84, + 37.37 + ], + [ + 120.29, + 37.58 + ], + [ + 120.22, + 37.69 + ], + [ + 120.74, + 37.83 + ], + [ + 121.56, + 37.44 + ], + [ + 122.12, + 37.56 + ], + [ + 122.16, + 37.43 + ], + [ + 122.71, + 37.4 + ], + [ + 122.37, + 37.02 + ], + [ + 122.57, + 37.04 + ], + [ + 122.51, + 36.9 + ], + [ + 122.17, + 36.84 + ], + [ + 122.17, + 37.06 + ], + [ + 121.64, + 36.74 + ], + [ + 121.48, + 36.77 + ], + [ + 121.57, + 36.85 + ], + [ + 121.01, + 36.58 + ], + [ + 120.77, + 36.63 + ], + [ + 120.99, + 36.55 + ], + [ + 120.89, + 36.38 + ], + [ + 120.69, + 36.4 + ], + [ + 120.71, + 36.13 + ], + [ + 120.28, + 36.04 + ], + [ + 120.33, + 36.26 + ], + [ + 120.11, + 36.19 + ], + [ + 120.3, + 35.97 + ], + [ + 119.92, + 35.64 + ], + [ + 119.65, + 35.6 + ], + [ + 119.17, + 34.95 + ], + [ + 119.64, + 34.51 + ], + [ + 120.27, + 34.3 + ], + [ + 120.86, + 33.23 + ], + [ + 120.96, + 32.61 + ], + [ + 121.37, + 32.43 + ], + [ + 121.36, + 32.2 + ], + [ + 121.73, + 32.06 + ], + [ + 121.97, + 31.72 + ], + [ + 121.3, + 31.89 + ], + [ + 120.96, + 31.8 + ], + [ + 120.76, + 32.05 + ], + [ + 120.45, + 32.07 + ], + [ + 120.26, + 31.95 + ], + [ + 120.26, + 31.94 + ], + [ + 120.15, + 31.95 + ], + [ + 120.01, + 31.99 + ], + [ + 119.89, + 32.12 + ], + [ + 119.99, + 31.96 + ], + [ + 120.26, + 31.94 + ], + [ + 120.45, + 31.96 + ], + [ + 120.45, + 32.03 + ], + [ + 120.76, + 31.98 + ], + [ + 120.83, + 31.77 + ], + [ + 121.09, + 31.73 + ], + [ + 121.88, + 31.13 + ], + [ + 121.96, + 30.88 + ], + [ + 121.49, + 30.81 + ], + [ + 120.79, + 30.29 + ], + [ + 120.72, + 30.39 + ], + [ + 120.52, + 30.4 + ], + [ + 120.42, + 30.39 + ], + [ + 120.35, + 30.26 + ], + [ + 120.21, + 30.28 + ], + [ + 120.38, + 30.24 + ], + [ + 120.44, + 30.37 + ], + [ + 120.63, + 30.38 + ], + [ + 120.88, + 30.17 + ], + [ + 121.32, + 30.36 + ], + [ + 121.66, + 30 + ], + [ + 122.13, + 29.9 + ], + [ + 121.46, + 29.54 + ], + [ + 121.49, + 29.38 + ], + [ + 122, + 29.59 + ], + [ + 121.97, + 29.22 + ], + [ + 121.79, + 29.17 + ], + [ + 121.81, + 29.38 + ], + [ + 121.75, + 29.15 + ], + [ + 121.54, + 29.28 + ], + [ + 121.61, + 29.14 + ], + [ + 121.44, + 29.16 + ], + [ + 121.73, + 28.94 + ], + [ + 121.51, + 28.94 + ], + [ + 121.68, + 28.79 + ], + [ + 121.45, + 28.69 + ], + [ + 121.67, + 28.35 + ], + [ + 121.15, + 28.04 + ], + [ + 121.27, + 28.36 + ], + [ + 121.17, + 28.39 + ], + [ + 121.01, + 28.01 + ], + [ + 120.76, + 27.98 + ], + [ + 120.87, + 27.87 + ], + [ + 120.59, + 27.6 + ], + [ + 120.7, + 27.48 + ], + [ + 120.52, + 27.2 + ], + [ + 120.19, + 27.27 + ], + [ + 120.44, + 27.15 + ], + [ + 120.01, + 26.89 + ], + [ + 120.13, + 26.8 + ], + [ + 120.12, + 26.63 + ], + [ + 119.84, + 26.52 + ], + [ + 120.07, + 26.8 + ], + [ + 119.92, + 26.78 + ], + [ + 119.87, + 26.65 + ], + [ + 119.85, + 26.85 + ], + [ + 119.73, + 26.7 + ], + [ + 119.57, + 26.78 + ], + [ + 119.56, + 26.62 + ], + [ + 119.83, + 26.45 + ], + [ + 119.6, + 26.47 + ], + [ + 119.67, + 26.34 + ], + [ + 119.96, + 26.38 + ], + [ + 119.52, + 26.08 + ], + [ + 119.71, + 26.01 + ], + [ + 119.6, + 25.7 + ], + [ + 119.46, + 25.69 + ], + [ + 119.58, + 25.54 + ], + [ + 119.64, + 25.35 + ], + [ + 119.36, + 25.59 + ], + [ + 119.34, + 25.43 + ], + [ + 119.11, + 25.42 + ], + [ + 119.37, + 25.25 + ], + [ + 119.09, + 25.2 + ], + [ + 119.16, + 25.13 + ], + [ + 119.02, + 25.29 + ], + [ + 118.85, + 25.24 + ], + [ + 119.03, + 24.96 + ], + [ + 118.72, + 24.85 + ], + [ + 118.66, + 24.97 + ], + [ + 118.6, + 24.87 + ], + [ + 118.78, + 24.77 + ], + [ + 118.61, + 24.53 + ], + [ + 118.44, + 24.72 + ], + [ + 118.23, + 24.53 + ], + [ + 118.17, + 24.67 + ], + [ + 118.13, + 24.42 + ], + [ + 118.08, + 24.6 + ], + [ + 118.04, + 24.44 + ], + [ + 117.77, + 24.5 + ], + [ + 118.14, + 24.27 + ], + [ + 117.77, + 23.91 + ], + [ + 117.7, + 24.04 + ], + [ + 117.59, + 23.72 + ], + [ + 117.58, + 23.9 + ], + [ + 117.36, + 23.95 + ], + [ + 117.51, + 23.87 + ], + [ + 117.3, + 23.8 + ], + [ + 117.28, + 23.63 + ], + [ + 116.92, + 23.54 + ], + [ + 116.94, + 23.64 + ], + [ + 116.8, + 23.29 + ], + [ + 116.53, + 23.44 + ], + [ + 116.81, + 23.24 + ], + [ + 116.59, + 23.22 + ], + [ + 116.5, + 22.94 + ], + [ + 116.28, + 22.98 + ], + [ + 115.82, + 22.74 + ], + [ + 115.69, + 22.91 + ], + [ + 115.57, + 22.65 + ], + [ + 115.26, + 22.83 + ], + [ + 114.98, + 22.69 + ], + [ + 114.88, + 22.77 + ], + [ + 114.88, + 22.54 + ], + [ + 114.73, + 22.6 + ], + [ + 114.79, + 22.84 + ], + [ + 114.52, + 22.72 + ], + [ + 114.61, + 22.5 + ], + [ + 114.5, + 22.45 + ], + [ + 114.41, + 22.61 + ], + [ + 114.23, + 22.55 + ], + [ + 114.2, + 22.41 + ], + [ + 114.4, + 22.44 + ], + [ + 114.3, + 22.26 + ], + [ + 113.92, + 22.37 + ], + [ + 114.03, + 22.51 + ], + [ + 113.95, + 22.49 + ], + [ + 113.49, + 23.05 + ], + [ + 113.62, + 22.75 + ], + [ + 113.55, + 22.21 + ], + [ + 113.55, + 22.22 + ], + [ + 113.53, + 22.17 + ], + [ + 113.54, + 22.16 + ], + [ + 113.55, + 22.14 + ], + [ + 113.55, + 22.12 + ], + [ + 113.39, + 22.21 + ], + [ + 113.45, + 22.08 + ], + [ + 113.21, + 22.04 + ], + [ + 113.25, + 21.87 + ], + [ + 113.08, + 22.23 + ], + [ + 112.98, + 21.89 + ], + [ + 112.82, + 21.96 + ], + [ + 112.57, + 21.75 + ], + [ + 112.4, + 22.07 + ], + [ + 112.35, + 21.71 + ], + [ + 112.02, + 21.81 + ], + [ + 111.91, + 21.68 + ], + [ + 112.01, + 21.62 + ], + [ + 111.81, + 21.56 + ], + [ + 111.91, + 21.69 + ], + [ + 111.69, + 21.78 + ], + [ + 111.79, + 21.62 + ], + [ + 111.65, + 21.52 + ], + [ + 111.43, + 21.58 + ], + [ + 111.26, + 21.42 + ], + [ + 111.03, + 21.53 + ], + [ + 110.43, + 21.21 + ], + [ + 110.38, + 21.46 + ], + [ + 110.31, + 21.11 + ], + [ + 110.55, + 21.07 + ], + [ + 110.52, + 20.93 + ], + [ + 110.2, + 20.95 + ], + [ + 110.31, + 21.11 + ], + [ + 110.16, + 20.94 + ], + [ + 110.39, + 20.82 + ], + [ + 110.3, + 20.66 + ], + [ + 110.46, + 20.68 + ], + [ + 110.52, + 20.43 + ], + [ + 110.28, + 20.24 + ], + [ + 109.92, + 20.22 + ], + [ + 109.86, + 20.4 + ], + [ + 110.01, + 20.43 + ], + [ + 109.82, + 20.51 + ], + [ + 109.66, + 20.94 + ], + [ + 109.75, + 21.34 + ], + [ + 109.96, + 21.35 + ], + [ + 109.94, + 21.49 + ], + [ + 109.65, + 21.52 + ], + [ + 109.6, + 21.75 + ], + [ + 109.49, + 21.71 + ], + [ + 109.55, + 21.48 + ], + [ + 109.16, + 21.4 + ], + [ + 109.04, + 21.45 + ], + [ + 109.15, + 21.6 + ], + [ + 108.96, + 21.6 + ], + [ + 108.85, + 21.68 + ], + [ + 108.9, + 21.79 + ], + [ + 108.83, + 21.81 + ], + [ + 108.86, + 21.76 + ], + [ + 108.82, + 21.71 + ], + [ + 108.86, + 21.63 + ], + [ + 108.74, + 21.6 + ], + [ + 108.72, + 21.74 + ], + [ + 108.69, + 21.6 + ], + [ + 108.55, + 21.92 + ], + [ + 108.47, + 21.56 + ], + [ + 108.37, + 21.54 + ], + [ + 108.44, + 21.69 + ], + [ + 108.22, + 21.5 + ], + [ + 108.23, + 21.63 + ], + [ + 108.04, + 21.55 + ], + [ + 108.02, + 21.55 + ], + [ + 107.88, + 21.61 + ], + [ + 107.89, + 21.61 + ], + [ + 107.36, + 21.6 + ], + [ + 107.02, + 21.94 + ], + [ + 106.72, + 21.97 + ], + [ + 106.71, + 21.97 + ], + [ + 106.68, + 22 + ], + [ + 106.57, + 22.47 + ], + [ + 106.83, + 22.81 + ], + [ + 106.14, + 23 + ], + [ + 105.88, + 22.92 + ], + [ + 105.32, + 23.39 + ], + [ + 104.8, + 23.12 + ], + [ + 104.86, + 22.95 + ], + [ + 104.73, + 22.82 + ], + [ + 104.37, + 22.69 + ], + [ + 104.12, + 22.81 + ], + [ + 103.97, + 22.51 + ], + [ + 103.95, + 22.51 + ], + [ + 103.95, + 22.52 + ], + [ + 103.93, + 22.53 + ], + [ + 103.93, + 22.54 + ], + [ + 103.91, + 22.55 + ], + [ + 103.89, + 22.57 + ], + [ + 103.88, + 22.57 + ], + [ + 103.82, + 22.63 + ], + [ + 103.81, + 22.64 + ], + [ + 103.8, + 22.65 + ], + [ + 103.8, + 22.66 + ], + [ + 103.78, + 22.67 + ], + [ + 103.78, + 22.68 + ], + [ + 103.75, + 22.69 + ], + [ + 103.75, + 22.7 + ], + [ + 103.74, + 22.71 + ], + [ + 103.73, + 22.72 + ], + [ + 103.71, + 22.74 + ], + [ + 103.62, + 22.79 + ], + [ + 103.53, + 22.59 + ], + [ + 103.33, + 22.81 + ], + [ + 103.03, + 22.44 + ], + [ + 102.48, + 22.78 + ], + [ + 102.14, + 22.4 + ], + [ + 101.78, + 22.5 + ], + [ + 101.74, + 22.5 + ], + [ + 101.73, + 22.5 + ], + [ + 101.71, + 22.48 + ], + [ + 101.68, + 22.48 + ], + [ + 101.67, + 22.45 + ], + [ + 101.67, + 22.44 + ], + [ + 101.67, + 22.42 + ], + [ + 101.66, + 22.42 + ], + [ + 101.67, + 22.37 + ], + [ + 101.66, + 22.37 + ], + [ + 101.66, + 22.36 + ], + [ + 101.65, + 22.35 + ], + [ + 101.65, + 22.34 + ], + [ + 101.63, + 22.28 + ], + [ + 101.62, + 22.27 + ], + [ + 101.6, + 22.27 + ], + [ + 101.56, + 22.22 + ], + [ + 101.62, + 21.98 + ], + [ + 101.62, + 21.97 + ], + [ + 101.77, + 21.7 + ], + [ + 101.77, + 21.69 + ], + [ + 101.78, + 21.66 + ], + [ + 101.79, + 21.64 + ], + [ + 101.81, + 21.64 + ], + [ + 101.82, + 21.63 + ], + [ + 101.83, + 21.62 + ], + [ + 101.83, + 21.6 + ], + [ + 101.81, + 21.59 + ], + [ + 101.81, + 21.58 + ], + [ + 101.76, + 21.58 + ], + [ + 101.75, + 21.58 + ], + [ + 101.74, + 21.49 + ], + [ + 101.74, + 21.48 + ], + [ + 101.75, + 21.47 + ], + [ + 101.75, + 21.43 + ], + [ + 101.75, + 21.41 + ], + [ + 101.8, + 21.21 + ], + [ + 101.79, + 21.2 + ], + [ + 101.79, + 21.18 + ], + [ + 101.68, + 21.18 + ], + [ + 101.68, + 21.19 + ], + [ + 101.65, + 21.2 + ], + [ + 101.63, + 21.2 + ], + [ + 101.62, + 21.19 + ], + [ + 101.62, + 21.18 + ], + [ + 101.61, + 21.18 + ], + [ + 101.59, + 21.18 + ], + [ + 101.22, + 21.23 + ], + [ + 101.22, + 21.24 + ], + [ + 101.23, + 21.25 + ], + [ + 101.22, + 21.26 + ], + [ + 101.23, + 21.26 + ], + [ + 101.23, + 21.27 + ], + [ + 101.24, + 21.27 + ], + [ + 101.24, + 21.28 + ], + [ + 101.25, + 21.29 + ], + [ + 101.25, + 21.3 + ], + [ + 101.22, + 21.31 + ], + [ + 101.18, + 21.42 + ], + [ + 101.15, + 21.56 + ], + [ + 101.1, + 21.78 + ], + [ + 100.59, + 21.45 + ], + [ + 100.17, + 21.49 + ], + [ + 100.16, + 21.68 + ], + [ + 99.95, + 21.82 + ], + [ + 99.97, + 22.06 + ], + [ + 99.17, + 22.15 + ], + [ + 99.38, + 22.5 + ], + [ + 99.31, + 22.74 + ], + [ + 99.56, + 22.95 + ], + [ + 99.51, + 23.08 + ], + [ + 98.89, + 23.18 + ], + [ + 98.84, + 23.48 + ], + [ + 98.83, + 23.48 + ], + [ + 98.89, + 23.62 + ], + [ + 98.67, + 23.81 + ], + [ + 98.83, + 24.13 + ], + [ + 98.77, + 24.13 + ], + [ + 98.76, + 24.13 + ], + [ + 98.73, + 24.13 + ], + [ + 98.72, + 24.13 + ], + [ + 98.64, + 24.1 + ], + [ + 98.63, + 24.1 + ], + [ + 98.59, + 24.08 + ], + [ + 98.59, + 24.09 + ], + [ + 98.35, + 24.1 + ], + [ + 98.34, + 24.1 + ], + [ + 98.33, + 24.1 + ], + [ + 98.32, + 24.1 + ], + [ + 98.31, + 24.1 + ], + [ + 98.3, + 24.1 + ], + [ + 98.27, + 24.11 + ], + [ + 98.12, + 24.09 + ], + [ + 98.1, + 24.09 + ], + [ + 98.09, + 24.09 + ], + [ + 98, + 24.05 + ], + [ + 97.9, + 24.01 + ], + [ + 97.89, + 24.01 + ], + [ + 97.89, + 24 + ], + [ + 97.88, + 23.99 + ], + [ + 97.89, + 23.99 + ], + [ + 97.88, + 23.97 + ], + [ + 97.88, + 23.98 + ], + [ + 97.86, + 23.98 + ], + [ + 97.85, + 23.97 + ], + [ + 97.84, + 23.97 + ], + [ + 97.84, + 23.98 + ], + [ + 97.83, + 23.96 + ], + [ + 97.81, + 23.95 + ], + [ + 97.82, + 23.96 + ], + [ + 97.81, + 23.96 + ], + [ + 97.79, + 23.95 + ], + [ + 97.79, + 23.94 + ], + [ + 97.78, + 23.94 + ], + [ + 97.77, + 23.94 + ], + [ + 97.76, + 23.92 + ], + [ + 97.77, + 23.92 + ], + [ + 97.76, + 23.91 + ], + [ + 97.75, + 23.91 + ], + [ + 97.75, + 23.9 + ], + [ + 97.74, + 23.9 + ], + [ + 97.71, + 23.87 + ], + [ + 97.7, + 23.87 + ], + [ + 97.65, + 23.85 + ], + [ + 97.64, + 23.85 + ], + [ + 97.64, + 23.86 + ], + [ + 97.64, + 23.87 + ], + [ + 97.63, + 23.87 + ], + [ + 97.63, + 23.88 + ], + [ + 97.62, + 23.89 + ], + [ + 97.6, + 23.9 + ], + [ + 97.58, + 23.99 + ], + [ + 97.59, + 23.99 + ], + [ + 97.75, + 24.17 + ], + [ + 97.75, + 24.18 + ], + [ + 97.74, + 24.18 + ], + [ + 97.73, + 24.21 + ], + [ + 97.74, + 24.24 + ], + [ + 97.76, + 24.25 + ], + [ + 97.76, + 24.26 + ], + [ + 97.77, + 24.26 + ], + [ + 97.67, + 24.46 + ], + [ + 97.53, + 24.44 + ], + [ + 97.55, + 24.74 + ], + [ + 97.8, + 24.85 + ], + [ + 97.78, + 25.12 + ], + [ + 97.78, + 25.13 + ], + [ + 98.14, + 25.39 + ], + [ + 98.17, + 25.63 + ], + [ + 98.4, + 25.6 + ], + [ + 98.69, + 25.93 + ], + [ + 98.69, + 25.94 + ], + [ + 98.68, + 25.94 + ], + [ + 98.67, + 25.95 + ], + [ + 98.66, + 25.95 + ], + [ + 98.66, + 25.96 + ], + [ + 98.65, + 25.96 + ], + [ + 98.65, + 25.97 + ], + [ + 98.64, + 25.98 + ], + [ + 98.63, + 25.98 + ], + [ + 98.63, + 25.97 + ], + [ + 98.62, + 25.97 + ], + [ + 98.62, + 25.98 + ], + [ + 98.62, + 25.99 + ], + [ + 98.61, + 25.99 + ], + [ + 98.61, + 26 + ], + [ + 98.61, + 26.01 + ], + [ + 98.61, + 26.02 + ], + [ + 98.6, + 26.02 + ], + [ + 98.6, + 26.03 + ], + [ + 98.6, + 26.04 + ], + [ + 98.6, + 26.05 + ], + [ + 98.6, + 26.06 + ], + [ + 98.59, + 26.07 + ], + [ + 98.58, + 26.07 + ], + [ + 98.58, + 26.08 + ], + [ + 98.72, + 26.13 + ], + [ + 98.78, + 26.61 + ], + [ + 98.71, + 27.56 + ], + [ + 98.44, + 27.67 + ], + [ + 98.32, + 27.52 + ], + [ + 98.14, + 28.14 + ], + [ + 98.14, + 28.15 + ], + [ + 98.13, + 28.15 + ], + [ + 97.95, + 28.3 + ], + [ + 97.74, + 28.46 + ], + [ + 97.65, + 28.54 + ], + [ + 97.64, + 28.54 + ], + [ + 97.56, + 28.54 + ], + [ + 97.55, + 28.53 + ], + [ + 97.52, + 28.5 + ], + [ + 97.51, + 28.5 + ], + [ + 97.51, + 28.49 + ], + [ + 97.35, + 28.21 + ], + [ + 97.25, + 28.26 + ], + [ + 97.25, + 28.27 + ], + [ + 96.65, + 28.61 + ], + [ + 96.5, + 28.43 + ], + [ + 96.46, + 28.53 + ], + [ + 96.46, + 28.54 + ], + [ + 96.59, + 28.7 + ], + [ + 96.37, + 29.11 + ], + [ + 96.25, + 29.08 + ], + [ + 96.24, + 29.08 + ], + [ + 96.2, + 29.03 + ], + [ + 96.19, + 29.04 + ], + [ + 96.2, + 29.08 + ], + [ + 96.3, + 29.18 + ], + [ + 96.14, + 29.35 + ], + [ + 95.84, + 29.34 + ], + [ + 95.59, + 29.19 + ], + [ + 95.58, + 29.19 + ], + [ + 95.27, + 29.08 + ], + [ + 95.27, + 29.07 + ], + [ + 94.99, + 29.17 + ], + [ + 95.02, + 29.14 + ], + [ + 95.02, + 29.13 + ], + [ + 94.66, + 29.31 + ], + [ + 93.91, + 28.77 + ], + [ + 93.17, + 28.47 + ], + [ + 93.15, + 28.38 + ], + [ + 92.68, + 28.15 + ], + [ + 92.73, + 27.98 + ], + [ + 92.46, + 27.79 + ], + [ + 92.24, + 27.89 + ], + [ + 91.93, + 27.73 + ], + [ + 91.93, + 27.72 + ], + [ + 91.85, + 27.76 + ], + [ + 91.58, + 27.83 + ], + [ + 91.57, + 27.83 + ], + [ + 91.57, + 27.82 + ], + [ + 91.55, + 27.85 + ], + [ + 91.56, + 27.86 + ], + [ + 91.57, + 27.86 + ], + [ + 91.59, + 27.86 + ], + [ + 91.34, + 28.07 + ], + [ + 90.58, + 28.02 + ], + [ + 89.87, + 28.22 + ], + [ + 89.6, + 28.16 + ], + [ + 89.28, + 27.83 + ], + [ + 89.27, + 27.83 + ], + [ + 89.27, + 27.82 + ], + [ + 88.96, + 27.45 + ], + [ + 88.96, + 27.43 + ], + [ + 88.96, + 27.31 + ], + [ + 88.95, + 27.33 + ], + [ + 88.94, + 27.33 + ], + [ + 88.94, + 27.34 + ], + [ + 88.92, + 27.33 + ], + [ + 88.81, + 27.64 + ], + [ + 88.84, + 28.02 + ], + [ + 88.63, + 28.12 + ], + [ + 88.41, + 27.99 + ], + [ + 88.13, + 27.88 + ], + [ + 88.12, + 27.87 + ], + [ + 88.11, + 27.87 + ], + [ + 88.1, + 27.87 + ], + [ + 88.09, + 27.89 + ], + [ + 88.08, + 27.9 + ], + [ + 88.08, + 27.89 + ], + [ + 88.07, + 27.89 + ], + [ + 88.06, + 27.89 + ], + [ + 88.05, + 27.9 + ], + [ + 88.04, + 27.9 + ], + [ + 88.02, + 27.9 + ], + [ + 88, + 27.89 + ], + [ + 87.98, + 27.89 + ], + [ + 87.97, + 27.89 + ], + [ + 87.94, + 27.91 + ], + [ + 87.93, + 27.92 + ], + [ + 87.91, + 27.92 + ], + [ + 87.9, + 27.91 + ], + [ + 87.88, + 27.91 + ], + [ + 87.87, + 27.91 + ], + [ + 87.86, + 27.91 + ], + [ + 87.86, + 27.92 + ], + [ + 87.86, + 27.94 + ], + [ + 87.83, + 27.95 + ], + [ + 87.83, + 27.94 + ], + [ + 87.83, + 27.93 + ], + [ + 87.83, + 27.92 + ], + [ + 87.82, + 27.92 + ], + [ + 87.81, + 27.92 + ], + [ + 87.81, + 27.91 + ], + [ + 87.8, + 27.91 + ], + [ + 87.79, + 27.9 + ], + [ + 87.78, + 27.89 + ], + [ + 87.78, + 27.88 + ], + [ + 87.78, + 27.87 + ], + [ + 87.78, + 27.86 + ], + [ + 87.77, + 27.86 + ], + [ + 87.75, + 27.84 + ], + [ + 87.74, + 27.83 + ], + [ + 87.74, + 27.82 + ], + [ + 87.74, + 27.81 + ], + [ + 87.73, + 27.81 + ], + [ + 87.71, + 27.81 + ], + [ + 87.7, + 27.81 + ], + [ + 87.69, + 27.81 + ], + [ + 87.68, + 27.81 + ], + [ + 87.67, + 27.81 + ], + [ + 87.66, + 27.81 + ], + [ + 87.16, + 27.82 + ], + [ + 86.72, + 28.11 + ], + [ + 86.41, + 27.91 + ], + [ + 86.19, + 28.17 + ], + [ + 86, + 27.91 + ], + [ + 85.71, + 28.39 + ], + [ + 85.61, + 28.26 + ], + [ + 85.39, + 28.28 + ], + [ + 85.38, + 28.28 + ], + [ + 85.36, + 28.29 + ], + [ + 85.11, + 28.35 + ], + [ + 85.11, + 28.69 + ], + [ + 84.86, + 28.57 + ], + [ + 84.23, + 28.89 + ], + [ + 84.2, + 29.24 + ], + [ + 83.9, + 29.33 + ], + [ + 83.58, + 29.18 + ], + [ + 83.28, + 29.57 + ], + [ + 82.69, + 29.76 + ], + [ + 82.55, + 29.96 + ], + [ + 82.17, + 30.07 + ], + [ + 82.11, + 30.35 + ], + [ + 81.83, + 30.37 + ], + [ + 81.82, + 30.38 + ], + [ + 81.42, + 30.37 + ], + [ + 81.25, + 30.01 + ], + [ + 81.03, + 30.2 + ], + [ + 80.21, + 30.58 + ], + [ + 80.24, + 30.76 + ], + [ + 79.87, + 30.97 + ], + [ + 79.43, + 31.02 + ], + [ + 79.1, + 31.45 + ], + [ + 78.78, + 31.31 + ], + [ + 78.77, + 32 + ], + [ + 78.39, + 32.54 + ], + [ + 78.74, + 32.7 + ], + [ + 78.89, + 32.4 + ], + [ + 79.42, + 32.53 + ], + [ + 79.46, + 32.71 + ], + [ + 79.23, + 32.97 + ], + [ + 79.19, + 32.99 + ], + [ + 79.17, + 33 + ], + [ + 79.17, + 33.01 + ], + [ + 79.16, + 33.03 + ], + [ + 78.7, + 33.68 + ], + [ + 78.76, + 33.73 + ], + [ + 78.66, + 34.08 + ], + [ + 79.04, + 34.33 + ], + [ + 78.2, + 34.75 + ], + [ + 78.23, + 34.81 + ], + [ + 78.14, + 35.01 + ], + [ + 78.13, + 35.05 + ], + [ + 78.11, + 35.11 + ], + [ + 78.05, + 35.18 + ], + [ + 78, + 35.24 + ], + [ + 78.01, + 35.27 + ], + [ + 78.01, + 35.3 + ], + [ + 78.01, + 35.31 + ], + [ + 78.04, + 35.38 + ], + [ + 78.11, + 35.47 + ], + [ + 78.08, + 35.49 + ], + [ + 77.75, + 35.5 + ], + [ + 77.74, + 35.5 + ], + [ + 77.73, + 35.47 + ], + [ + 77.72, + 35.46 + ], + [ + 77.71, + 35.46 + ], + [ + 77.7, + 35.46 + ], + [ + 77.69, + 35.46 + ], + [ + 77.69, + 35.45 + ], + [ + 77.69, + 35.46 + ], + [ + 77.68, + 35.46 + ], + [ + 77.68, + 35.47 + ], + [ + 76.78, + 35.66 + ], + [ + 76.57, + 35.93 + ], + [ + 76.16, + 35.83 + ], + [ + 76.01, + 36.17 + ], + [ + 76.01, + 36.18 + ], + [ + 76.01, + 36.23 + ], + [ + 76.01, + 36.24 + ], + [ + 76.02, + 36.24 + ], + [ + 76.06, + 36.25 + ], + [ + 76.05, + 36.25 + ], + [ + 75.96, + 36.52 + ], + [ + 75.95, + 36.54 + ], + [ + 75.92, + 36.57 + ], + [ + 75.93, + 36.57 + ], + [ + 75.94, + 36.6 + ], + [ + 75.93, + 36.6 + ], + [ + 75.67, + 36.76 + ], + [ + 75.45, + 36.72 + ], + [ + 75.4, + 36.96 + ], + [ + 74.56, + 37.03 + ], + [ + 74.49, + 37.09 + ], + [ + 74.51, + 37.24 + ], + [ + 74.89, + 37.23 + ], + [ + 75.15, + 37.41 + ], + [ + 74.93, + 37.57 + ], + [ + 75.01, + 37.78 + ], + [ + 74.7, + 38.43 + ], + [ + 74.19, + 38.64 + ], + [ + 74, + 38.52 + ], + [ + 73.8, + 38.61 + ], + [ + 73.69, + 38.85 + ], + [ + 73.84, + 39 + ], + [ + 73.63, + 39.23 + ], + [ + 73.61, + 39.25 + ], + [ + 73.56, + 39.3 + ], + [ + 73.55, + 39.33 + ] + ], + [ + [ + 119.79, + 31.69 + ], + [ + 119.75, + 31.48 + ], + [ + 119.89, + 31.62 + ], + [ + 119.79, + 31.69 + ] + ], + [ + [ + 119.75, + 32.29 + ], + [ + 119.75, + 32.31 + ], + [ + 119.88, + 32.28 + ], + [ + 119.79, + 32.33 + ], + [ + 119.74, + 32.31 + ], + [ + 119.71, + 32.31 + ], + [ + 119.74, + 32.31 + ], + [ + 119.75, + 32.31 + ], + [ + 119.75, + 32.29 + ] + ], + [ + [ + 116.81, + 32.55 + ], + [ + 116.85, + 32.23 + ], + [ + 116.99, + 32.4 + ], + [ + 116.81, + 32.55 + ] + ], + [ + [ + 119.14, + 32.95 + ], + [ + 119.12, + 32.77 + ], + [ + 119.38, + 32.72 + ], + [ + 119.44, + 33.01 + ], + [ + 119.31, + 32.99 + ], + [ + 119.32, + 33.1 + ], + [ + 119.27, + 32.85 + ], + [ + 119.14, + 32.95 + ] + ], + [ + [ + 118.65, + 33.21 + ], + [ + 118.75, + 33.08 + ], + [ + 118.86, + 33.34 + ], + [ + 118.52, + 33.63 + ], + [ + 118.65, + 33.34 + ], + [ + 118.41, + 33.23 + ], + [ + 118.21, + 33.37 + ], + [ + 118.19, + 33.21 + ], + [ + 118.65, + 33.21 + ] + ], + [ + [ + 117.03, + 30.51 + ], + [ + 116.86, + 30.44 + ], + [ + 116.91, + 30.26 + ], + [ + 116.74, + 30.05 + ], + [ + 116.94, + 30.28 + ], + [ + 116.89, + 30.44 + ], + [ + 116.92, + 30.37 + ], + [ + 117.03, + 30.51 + ] + ], + [ + [ + 116.4, + 30.22 + ], + [ + 116.47, + 30.08 + ], + [ + 116.56, + 30.18 + ], + [ + 116.4, + 30.22 + ] + ], + [ + [ + 118.85, + 31.13 + ], + [ + 119, + 31.03 + ], + [ + 119, + 31.15 + ], + [ + 118.85, + 31.13 + ] + ], + [ + [ + 117.31, + 31.73 + ], + [ + 117.53, + 31.43 + ], + [ + 117.83, + 31.58 + ], + [ + 117.31, + 31.73 + ] + ], + [ + [ + 118.93, + 31.54 + ], + [ + 118.67, + 31.53 + ], + [ + 118.83, + 31.39 + ], + [ + 118.93, + 31.54 + ] + ], + [ + [ + 118.15, + 31.25 + ], + [ + 118.35, + 31.3 + ], + [ + 118.33, + 31.45 + ], + [ + 118.34, + 31.31 + ], + [ + 118.15, + 31.25 + ] + ], + [ + [ + 116.11, + 28.48 + ], + [ + 116.26, + 28.42 + ], + [ + 116.19, + 28.57 + ], + [ + 116.11, + 28.48 + ] + ], + [ + [ + 116.32, + 28.61 + ], + [ + 116.35, + 28.44 + ], + [ + 116.44, + 28.52 + ], + [ + 116.32, + 28.61 + ] + ], + [ + [ + 116.67, + 29.15 + ], + [ + 116.5, + 29.3 + ], + [ + 116.37, + 29.1 + ], + [ + 116.4, + 29.27 + ], + [ + 116.13, + 29.25 + ], + [ + 116.24, + 29.73 + ], + [ + 115.85, + 29.15 + ], + [ + 116.2, + 29 + ], + [ + 116.32, + 28.78 + ], + [ + 116.22, + 28.54 + ], + [ + 116.41, + 28.89 + ], + [ + 116.46, + 28.78 + ], + [ + 116.5, + 28.92 + ], + [ + 116.73, + 28.84 + ], + [ + 116.63, + 29.05 + ], + [ + 116.47, + 29 + ], + [ + 116.67, + 29.15 + ] + ], + [ + [ + 115.22, + 29.32 + ], + [ + 115.39, + 29.19 + ], + [ + 115.53, + 29.3 + ], + [ + 115.22, + 29.32 + ] + ], + [ + [ + 116.21, + 29.99 + ], + [ + 115.99, + 29.95 + ], + [ + 116.2, + 29.88 + ], + [ + 116.21, + 29.99 + ] + ], + [ + [ + 116.31, + 30.11 + ], + [ + 116.29, + 29.97 + ], + [ + 116.52, + 29.95 + ], + [ + 116.31, + 30.11 + ] + ], + [ + [ + 115.05, + 30.45 + ], + [ + 114.87, + 30.41 + ], + [ + 115.09, + 30.34 + ], + [ + 115.05, + 30.45 + ] + ], + [ + [ + 114.81, + 30.64 + ], + [ + 114.65, + 30.57 + ], + [ + 114.81, + 30.6 + ], + [ + 114.87, + 30.41 + ], + [ + 114.81, + 30.64 + ] + ], + [ + [ + 112.52, + 30.49 + ], + [ + 112.5, + 30.49 + ], + [ + 112.3, + 30.41 + ], + [ + 112.48, + 30.41 + ], + [ + 112.5, + 30.49 + ], + [ + 112.52, + 30.49 + ] + ], + [ + [ + 90.53, + 31.37 + ], + [ + 90.49, + 31.18 + ], + [ + 90.62, + 31.15 + ], + [ + 90.68, + 31.32 + ], + [ + 90.53, + 31.37 + ] + ], + [ + [ + 90.83, + 32.15 + ], + [ + 90.72, + 32.06 + ], + [ + 90.92, + 32 + ], + [ + 90.83, + 32.15 + ] + ], + [ + [ + 113.91, + 32.12 + ], + [ + 113.99, + 31.95 + ], + [ + 114.03, + 32.13 + ], + [ + 113.91, + 32.12 + ] + ], + [ + [ + 113.12, + 29.45 + ], + [ + 112.76, + 29.46 + ], + [ + 112.94, + 29.38 + ], + [ + 112.81, + 29.22 + ], + [ + 112.99, + 29.23 + ], + [ + 112.85, + 28.98 + ], + [ + 113.09, + 29.19 + ], + [ + 113.12, + 29.45 + ] + ], + [ + [ + 113.37, + 29.95 + ], + [ + 113.36, + 29.84 + ], + [ + 113.21, + 29.92 + ], + [ + 113.25, + 29.73 + ], + [ + 113.47, + 29.91 + ], + [ + 113.37, + 29.95 + ] + ], + [ + [ + 114.08, + 29.99 + ], + [ + 113.96, + 29.95 + ], + [ + 114.13, + 29.91 + ], + [ + 114.08, + 29.99 + ] + ], + [ + [ + 113.86, + 30.19 + ], + [ + 113.69, + 30.12 + ], + [ + 114.05, + 30.13 + ], + [ + 113.86, + 30.19 + ] + ], + [ + [ + 114.21, + 30.11 + ], + [ + 114.13, + 29.97 + ], + [ + 114.29, + 30.01 + ], + [ + 114.21, + 30.11 + ] + ], + [ + [ + 114.52, + 30.37 + ], + [ + 114.37, + 30.18 + ], + [ + 114.48, + 30.1 + ], + [ + 114.65, + 30.25 + ], + [ + 114.52, + 30.37 + ] + ], + [ + [ + 102.83, + 24.61 + ], + [ + 102.78, + 24.29 + ], + [ + 102.94, + 24.53 + ], + [ + 102.83, + 24.61 + ] + ], + [ + [ + 112.54, + 28.83 + ], + [ + 112.59, + 28.73 + ], + [ + 112.72, + 28.87 + ], + [ + 112.54, + 28.83 + ] + ], + [ + [ + 102.66, + 25.01 + ], + [ + 102.66, + 24.67 + ], + [ + 102.78, + 24.87 + ], + [ + 102.66, + 25.01 + ] + ], + [ + [ + 112.85, + 28.96 + ], + [ + 112.72, + 28.77 + ], + [ + 112.89, + 28.81 + ], + [ + 112.85, + 28.96 + ] + ], + [ + [ + 112.28, + 28.81 + ], + [ + 112.38, + 28.88 + ], + [ + 112.24, + 29.02 + ], + [ + 112.11, + 28.92 + ], + [ + 112.28, + 28.81 + ] + ], + [ + [ + 90.65, + 29.19 + ], + [ + 90.7, + 28.91 + ], + [ + 90.49, + 28.77 + ], + [ + 90.79, + 28.84 + ], + [ + 90.74, + 28.96 + ], + [ + 91.03, + 28.92 + ], + [ + 90.75, + 29 + ], + [ + 90.65, + 29.19 + ] + ], + [ + [ + 83.1, + 31.66 + ], + [ + 82.83, + 31.54 + ], + [ + 83.3, + 31.43 + ], + [ + 83.1, + 31.66 + ] + ], + [ + [ + 88.86, + 31.99 + ], + [ + 88.98, + 31.95 + ], + [ + 88.81, + 31.82 + ], + [ + 88.54, + 31.84 + ], + [ + 88.73, + 31.65 + ], + [ + 88.53, + 31.62 + ], + [ + 88.77, + 31.5 + ], + [ + 88.73, + 31.7 + ], + [ + 88.95, + 31.74 + ], + [ + 88.9, + 31.51 + ], + [ + 89.12, + 31.51 + ], + [ + 89.36, + 31.84 + ], + [ + 89.03, + 32.02 + ], + [ + 89.08, + 32.12 + ], + [ + 88.86, + 31.99 + ] + ], + [ + [ + 89.74, + 33.06 + ], + [ + 89.78, + 32.91 + ], + [ + 89.87, + 32.99 + ], + [ + 89.74, + 33.06 + ] + ], + [ + [ + 90, + 32.51 + ], + [ + 89.86, + 32.4 + ], + [ + 90.07, + 32.4 + ], + [ + 90, + 32.51 + ] + ], + [ + [ + 89.86, + 33.5 + ], + [ + 89.71, + 33.47 + ], + [ + 89.82, + 33.23 + ], + [ + 89.99, + 33.49 + ], + [ + 89.86, + 33.5 + ] + ], + [ + [ + 88.96, + 33.17 + ], + [ + 89.11, + 33.03 + ], + [ + 89.14, + 33.17 + ], + [ + 88.96, + 33.17 + ] + ], + [ + [ + 86.64, + 31.35 + ], + [ + 86.38, + 30.83 + ], + [ + 86.47, + 30.75 + ], + [ + 86.62, + 31.07 + ], + [ + 86.81, + 31.13 + ], + [ + 86.64, + 31.35 + ] + ], + [ + [ + 83.56, + 30.94 + ], + [ + 83.54, + 30.79 + ], + [ + 83.67, + 30.86 + ], + [ + 83.56, + 30.94 + ] + ], + [ + [ + 87.14, + 31.13 + ], + [ + 86.98, + 30.86 + ], + [ + 87.35, + 30.98 + ], + [ + 87.14, + 31.13 + ] + ], + [ + [ + 84, + 31.2 + ], + [ + 83.94, + 31.05 + ], + [ + 84.33, + 31.17 + ], + [ + 84, + 31.2 + ] + ], + [ + [ + 84.93, + 31.28 + ], + [ + 84.91, + 31.17 + ], + [ + 85.12, + 31.28 + ], + [ + 84.93, + 31.28 + ] + ], + [ + [ + 84.04, + 31.5 + ], + [ + 83.98, + 31.25 + ], + [ + 84.14, + 31.32 + ], + [ + 84.04, + 31.5 + ] + ], + [ + [ + 90.46, + 28.96 + ], + [ + 90.48, + 28.82 + ], + [ + 90.58, + 28.96 + ], + [ + 90.46, + 28.96 + ] + ], + [ + [ + 81.37, + 30.75 + ], + [ + 81.43, + 30.56 + ], + [ + 81.62, + 30.71 + ], + [ + 81.37, + 30.75 + ] + ], + [ + [ + 85.51, + 29 + ], + [ + 85.5, + 28.81 + ], + [ + 85.65, + 28.79 + ], + [ + 85.64, + 29.03 + ], + [ + 85.51, + 29 + ] + ], + [ + [ + 85.39, + 31.07 + ], + [ + 85.34, + 30.87 + ], + [ + 85.84, + 30.75 + ], + [ + 85.87, + 30.97 + ], + [ + 85.39, + 31.07 + ] + ], + [ + [ + 81.21, + 30.86 + ], + [ + 81.11, + 30.68 + ], + [ + 81.25, + 30.59 + ], + [ + 81.21, + 30.86 + ] + ], + [ + [ + 90.26, + 30.91 + ], + [ + 90.35, + 30.51 + ], + [ + 91.05, + 30.77 + ], + [ + 90.99, + 30.93 + ], + [ + 90.62, + 30.81 + ], + [ + 90.26, + 30.91 + ] + ], + [ + [ + 124.41, + 46.86 + ], + [ + 124.29, + 46.75 + ], + [ + 124.43, + 46.63 + ], + [ + 124.41, + 46.86 + ] + ], + [ + [ + 117.6, + 48.91 + ], + [ + 117.79, + 49.14 + ], + [ + 117.64, + 49.33 + ], + [ + 116.94, + 48.81 + ], + [ + 117.2, + 48.57 + ], + [ + 117.6, + 48.91 + ] + ], + [ + [ + 124.76, + 48.94 + ], + [ + 124.8, + 49.06 + ], + [ + 124.63, + 48.81 + ], + [ + 124.76, + 48.94 + ] + ], + [ + [ + 132.1, + 47.37 + ], + [ + 132.1, + 47.38 + ], + [ + 132.01, + 47.29 + ], + [ + 132.1, + 47.37 + ] + ], + [ + [ + 127.22, + 42.68 + ], + [ + 127.09, + 42.61 + ], + [ + 127.32, + 42.62 + ], + [ + 127.22, + 42.68 + ] + ], + [ + [ + 116.6, + 43.39 + ], + [ + 116.48, + 43.23 + ], + [ + 116.72, + 43.25 + ], + [ + 116.6, + 43.39 + ] + ], + [ + [ + 124.19, + 45.38 + ], + [ + 124.02, + 45.27 + ], + [ + 124.49, + 45.12 + ], + [ + 124.19, + 45.38 + ] + ], + [ + [ + 126.74, + 45.95 + ], + [ + 127.27, + 45.99 + ], + [ + 126.94, + 46.07 + ], + [ + 126.74, + 45.95 + ] + ], + [ + [ + 117.57, + 45.58 + ], + [ + 117.22, + 45.4 + ], + [ + 117.64, + 45.42 + ], + [ + 117.79, + 45.58 + ], + [ + 117.57, + 45.58 + ] + ], + [ + [ + 124.02, + 46.83 + ], + [ + 124.26, + 46.53 + ], + [ + 124.19, + 46.81 + ], + [ + 124.02, + 46.83 + ] + ], + [ + [ + 116.89, + 34.96 + ], + [ + 116.72, + 35.12 + ], + [ + 116.99, + 34.85 + ], + [ + 116.89, + 34.96 + ] + ], + [ + [ + 118.1, + 34.2 + ], + [ + 118.26, + 34.01 + ], + [ + 118.32, + 34.13 + ], + [ + 118.1, + 34.2 + ] + ], + [ + [ + 117.2, + 34.74 + ], + [ + 117.09, + 34.67 + ], + [ + 117.25, + 34.45 + ], + [ + 117.36, + 34.6 + ], + [ + 117.2, + 34.74 + ] + ], + [ + [ + 116.19, + 36.13 + ], + [ + 116.1, + 35.96 + ], + [ + 116.28, + 35.91 + ], + [ + 116.19, + 36.13 + ] + ], + [ + [ + 116.85, + 40.59 + ], + [ + 116.94, + 40.43 + ], + [ + 117.08, + 40.55 + ], + [ + 116.85, + 40.59 + ] + ], + [ + [ + 100.63, + 42.49 + ], + [ + 100.55, + 42.34 + ], + [ + 100.89, + 42.44 + ], + [ + 100.63, + 42.49 + ] + ], + [ + [ + 94.99, + 37.06 + ], + [ + 95.21, + 36.91 + ], + [ + 95.14, + 36.81 + ], + [ + 95.31, + 36.85 + ], + [ + 95.23, + 37.04 + ], + [ + 94.99, + 37.06 + ] + ], + [ + [ + 96.88, + 37.2 + ], + [ + 96.86, + 37.09 + ], + [ + 97.03, + 37.11 + ], + [ + 96.88, + 37.2 + ] + ], + [ + [ + 90.77, + 38.17 + ], + [ + 90.69, + 38.1 + ], + [ + 90.88, + 38.05 + ], + [ + 90.77, + 38.17 + ] + ], + [ + [ + 97.5, + 38.41 + ], + [ + 97.4, + 38.24 + ], + [ + 97.79, + 38.2 + ], + [ + 97.5, + 38.41 + ] + ], + [ + [ + 95.84, + 36.91 + ], + [ + 95.77, + 36.81 + ], + [ + 96, + 36.91 + ], + [ + 95.84, + 36.91 + ] + ], + [ + [ + 93.89, + 38.89 + ], + [ + 93.75, + 38.86 + ], + [ + 94, + 38.89 + ], + [ + 93.89, + 38.89 + ] + ], + [ + [ + 92.61, + 35.82 + ], + [ + 92.9, + 35.63 + ], + [ + 93.05, + 35.68 + ], + [ + 92.61, + 35.82 + ] + ], + [ + [ + 90.64, + 35.64 + ], + [ + 90.49, + 35.63 + ], + [ + 90.77, + 35.64 + ], + [ + 90.64, + 35.64 + ] + ], + [ + [ + 90.31, + 35.82 + ], + [ + 90.02, + 35.75 + ], + [ + 90.26, + 35.69 + ], + [ + 90.31, + 35.82 + ] + ], + [ + [ + 89.46, + 35.85 + ], + [ + 89.28, + 35.78 + ], + [ + 89.57, + 35.82 + ], + [ + 89.46, + 35.85 + ] + ], + [ + [ + 99.98, + 37.23 + ], + [ + 99.75, + 37.16 + ], + [ + 99.9, + 36.99 + ], + [ + 99.62, + 36.92 + ], + [ + 99.8, + 36.73 + ], + [ + 100.75, + 36.56 + ], + [ + 100.74, + 36.84 + ], + [ + 100.42, + 36.84 + ], + [ + 100.54, + 36.91 + ], + [ + 100.33, + 37.2 + ], + [ + 99.98, + 37.23 + ] + ], + [ + [ + 100.72, + 36.17 + ], + [ + 100.68, + 35.96 + ], + [ + 100.42, + 35.85 + ], + [ + 100.67, + 35.9 + ], + [ + 100.79, + 36.12 + ], + [ + 100.85, + 35.98 + ], + [ + 100.9, + 36.17 + ], + [ + 100.72, + 36.17 + ] + ], + [ + [ + 90.29, + 34.89 + ], + [ + 90.44, + 34.68 + ], + [ + 90.38, + 34.81 + ], + [ + 90.65, + 34.92 + ], + [ + 90.29, + 34.89 + ] + ], + [ + [ + 97.71, + 35.07 + ], + [ + 97.54, + 34.79 + ], + [ + 97.9, + 34.81 + ], + [ + 97.71, + 35.07 + ] + ], + [ + [ + 90.02, + 33.47 + ], + [ + 90.13, + 33.34 + ], + [ + 90.42, + 33.36 + ], + [ + 90.31, + 33.68 + ], + [ + 90.31, + 33.45 + ], + [ + 90.02, + 33.47 + ] + ], + [ + [ + 97.34, + 35.03 + ], + [ + 97.06, + 34.92 + ], + [ + 97.38, + 34.81 + ], + [ + 97.51, + 34.97 + ], + [ + 97.34, + 35.03 + ] + ], + [ + [ + 90.3, + 35.28 + ], + [ + 90.11, + 35.25 + ], + [ + 90.14, + 35.14 + ], + [ + 90.65, + 35.19 + ], + [ + 90.3, + 35.28 + ] + ], + [ + [ + 91.83, + 35.6 + ], + [ + 91.84, + 35.5 + ], + [ + 92.11, + 35.5 + ], + [ + 91.83, + 35.6 + ] + ], + [ + [ + 88.4, + 39.61 + ], + [ + 88.15, + 39.44 + ], + [ + 88.39, + 39.44 + ], + [ + 88.4, + 39.61 + ] + ], + [ + [ + 87.33, + 46.98 + ], + [ + 87.36, + 46.85 + ], + [ + 87.58, + 46.89 + ], + [ + 87.33, + 46.98 + ] + ], + [ + [ + 81.11, + 44.72 + ], + [ + 81.09, + 44.5 + ], + [ + 81.39, + 44.58 + ], + [ + 81.11, + 44.72 + ] + ], + [ + [ + 82.64, + 45.12 + ], + [ + 82.7, + 44.87 + ], + [ + 83.1, + 44.77 + ], + [ + 83.13, + 44.9 + ], + [ + 82.64, + 45.12 + ] + ], + [ + [ + 86.69, + 42.23 + ], + [ + 86.75, + 41.88 + ], + [ + 86.31, + 41.8 + ], + [ + 87.12, + 41.93 + ], + [ + 87.45, + 41.81 + ], + [ + 87.36, + 42.01 + ], + [ + 86.69, + 42.23 + ] + ], + [ + [ + 87.39, + 47.4 + ], + [ + 87.03, + 47.31 + ], + [ + 87.28, + 47.01 + ], + [ + 87.37, + 47.25 + ], + [ + 87.58, + 47.22 + ], + [ + 87.58, + 47.42 + ], + [ + 87.39, + 47.4 + ] + ], + [ + [ + 83.19, + 35.11 + ], + [ + 83.04, + 34.99 + ], + [ + 83.27, + 35.03 + ], + [ + 83.19, + 35.11 + ] + ], + [ + [ + 87.01, + 35.1 + ], + [ + 86.9, + 35.03 + ], + [ + 87.14, + 35.05 + ], + [ + 87.01, + 35.1 + ] + ], + [ + [ + 89.22, + 35.45 + ], + [ + 89.03, + 35.32 + ], + [ + 89.38, + 35.2 + ], + [ + 89.22, + 35.45 + ] + ], + [ + [ + 89.27, + 37.61 + ], + [ + 89.06, + 37.58 + ], + [ + 89.19, + 37.44 + ], + [ + 89.95, + 37.47 + ], + [ + 89.27, + 37.61 + ] + ], + [ + [ + 88.37, + 37.18 + ], + [ + 88.29, + 37.05 + ], + [ + 88.55, + 36.97 + ], + [ + 88.57, + 37.13 + ], + [ + 88.37, + 37.18 + ] + ], + [ + [ + 88.09, + 39.57 + ], + [ + 87.89, + 39.44 + ], + [ + 88.21, + 39.54 + ], + [ + 88.09, + 39.57 + ] + ], + [ + [ + 79.69, + 33.65 + ], + [ + 79.72, + 33.48 + ], + [ + 79.89, + 33.46 + ], + [ + 79.93, + 33.58 + ], + [ + 79.69, + 33.65 + ] + ], + [ + [ + 81.43, + 33.96 + ], + [ + 81.82, + 33.95 + ], + [ + 81.61, + 34.13 + ], + [ + 81.43, + 33.96 + ] + ], + [ + [ + 88.72, + 33.61 + ], + [ + 88.6, + 33.39 + ], + [ + 88.76, + 33.43 + ], + [ + 88.72, + 33.61 + ] + ], + [ + [ + 87.13, + 34.63 + ], + [ + 87.15, + 34.49 + ], + [ + 87.36, + 34.58 + ], + [ + 87.13, + 34.63 + ] + ], + [ + [ + 88.71, + 34.67 + ], + [ + 89.01, + 34.49 + ], + [ + 89.23, + 34.56 + ], + [ + 88.71, + 34.67 + ] + ], + [ + [ + 80.99, + 35.07 + ], + [ + 80.95, + 34.97 + ], + [ + 81.23, + 35.01 + ], + [ + 80.99, + 35.07 + ] + ] + ], + [ + [ + [ + 124.14, + 53.35 + ], + [ + 124.15, + 53.36 + ], + [ + 124.15, + 53.35 + ], + [ + 124.14, + 53.35 + ] + ] + ], + [ + [ + [ + 126.91, + 51.27 + ], + [ + 126.9, + 51.28 + ], + [ + 126.89, + 51.29 + ], + [ + 126.88, + 51.3 + ], + [ + 126.87, + 51.3 + ], + [ + 126.87, + 51.31 + ], + [ + 126.89, + 51.32 + ], + [ + 126.95, + 51.33 + ], + [ + 126.96, + 51.33 + ], + [ + 126.97, + 51.33 + ], + [ + 126.98, + 51.32 + ], + [ + 126.97, + 51.3 + ], + [ + 126.97, + 51.29 + ], + [ + 126.95, + 51.27 + ], + [ + 126.94, + 51.26 + ], + [ + 126.92, + 51.25 + ], + [ + 126.91, + 51.27 + ] + ] + ], + [ + [ + [ + 130.55, + 42.52 + ], + [ + 130.58, + 42.49 + ], + [ + 130.57, + 42.49 + ], + [ + 130.56, + 42.49 + ], + [ + 130.55, + 42.49 + ], + [ + 130.55, + 42.5 + ], + [ + 130.55, + 42.51 + ], + [ + 130.55, + 42.52 + ] + ] + ], + [ + [ + [ + 130.59, + 42.49 + ], + [ + 130.59, + 42.46 + ], + [ + 130.59, + 42.45 + ], + [ + 130.61, + 42.44 + ], + [ + 130.61, + 42.43 + ], + [ + 130.59, + 42.43 + ], + [ + 130.58, + 42.43 + ], + [ + 130.57, + 42.44 + ], + [ + 130.56, + 42.45 + ], + [ + 130.57, + 42.47 + ], + [ + 130.58, + 42.47 + ], + [ + 130.58, + 42.48 + ], + [ + 130.59, + 42.49 + ] + ] + ], + [ + [ + [ + 125.99, + 40.91 + ], + [ + 126.01, + 40.91 + ], + [ + 125.99, + 40.89 + ], + [ + 125.99, + 40.91 + ] + ] + ], + [ + [ + [ + 124.36, + 39.99 + ], + [ + 124.36, + 39.98 + ], + [ + 124.34, + 39.98 + ], + [ + 124.36, + 39.99 + ] + ] + ], + [ + [ + [ + 118.48, + 39.05 + ], + [ + 118.65, + 39.06 + ], + [ + 118.51, + 38.92 + ], + [ + 118.48, + 39.05 + ] + ] + ], + [ + [ + [ + 121.72, + 31.41 + ], + [ + 121.78, + 31.32 + ], + [ + 121.51, + 31.49 + ], + [ + 121.72, + 31.41 + ] + ] + ], + [ + [ + [ + 121.35, + 31.84 + ], + [ + 121.96, + 31.47 + ], + [ + 121.16, + 31.79 + ], + [ + 121.35, + 31.84 + ] + ] + ], + [ + [ + [ + 121.98, + 30.07 + ], + [ + 121.95, + 30.18 + ], + [ + 122.1, + 30.16 + ], + [ + 122.32, + 29.94 + ], + [ + 121.98, + 30.07 + ] + ] + ], + [ + [ + [ + 119.79, + 25.61 + ], + [ + 119.89, + 25.57 + ], + [ + 119.77, + 25.4 + ], + [ + 119.68, + 25.6 + ], + [ + 119.79, + 25.61 + ] + ] + ], + [ + [ + [ + 110.46, + 21.16 + ], + [ + 110.62, + 21.21 + ], + [ + 110.57, + 21.09 + ], + [ + 110.46, + 21.16 + ] + ] + ], + [ + [ + [ + 117.39, + 23.58 + ], + [ + 117.35, + 23.75 + ], + [ + 117.51, + 23.76 + ], + [ + 117.39, + 23.58 + ] + ] + ], + [ + [ + [ + 108.85, + 18.44 + ], + [ + 108.67, + 18.55 + ], + [ + 108.65, + 19.31 + ], + [ + 109.3, + 19.7 + ], + [ + 109.28, + 19.79 + ], + [ + 109.15, + 19.71 + ], + [ + 109.29, + 19.91 + ], + [ + 109.53, + 19.84 + ], + [ + 109.71, + 20.02 + ], + [ + 110.01, + 19.91 + ], + [ + 110.37, + 20.09 + ], + [ + 110.64, + 19.92 + ], + [ + 110.57, + 20.09 + ], + [ + 110.68, + 20.16 + ], + [ + 110.93, + 20.01 + ], + [ + 111.04, + 19.64 + ], + [ + 110.86, + 19.52 + ], + [ + 110.8, + 19.61 + ], + [ + 110.54, + 18.78 + ], + [ + 110.05, + 18.38 + ], + [ + 109.75, + 18.4 + ], + [ + 109.7, + 18.18 + ], + [ + 108.85, + 18.44 + ] + ] + ] + ] + }, + "properties": { + "A3": "CHN" + } + }, + { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + 19.02, + 44.86 + ], + [ + 19.04, + 44.86 + ], + [ + 19.05, + 44.86 + ], + [ + 19.06, + 44.86 + ], + [ + 19.08, + 44.87 + ], + [ + 19.11, + 44.88 + ], + [ + 19.12, + 44.89 + ], + [ + 19.13, + 44.9 + ], + [ + 19.14, + 44.9 + ], + [ + 19.16, + 44.91 + ], + [ + 19.17, + 44.92 + ], + [ + 19.19, + 44.92 + ], + [ + 19.2, + 44.92 + ], + [ + 19.2, + 44.91 + ], + [ + 19.21, + 44.9 + ], + [ + 19.23, + 44.9 + ], + [ + 19.25, + 44.91 + ], + [ + 19.29, + 44.91 + ], + [ + 19.31, + 44.91 + ], + [ + 19.32, + 44.9 + ], + [ + 19.34, + 44.89 + ], + [ + 19.35, + 44.89 + ], + [ + 19.37, + 44.88 + ], + [ + 19.36, + 44.86 + ], + [ + 19.35, + 44.84 + ], + [ + 19.36, + 44.83 + ], + [ + 19.3, + 44.79 + ], + [ + 19.3, + 44.78 + ], + [ + 19.32, + 44.76 + ], + [ + 19.32, + 44.75 + ], + [ + 19.32, + 44.74 + ], + [ + 19.31, + 44.72 + ], + [ + 19.3, + 44.69 + ], + [ + 19.29, + 44.69 + ], + [ + 19.23, + 44.61 + ], + [ + 19.22, + 44.6 + ], + [ + 19.22, + 44.59 + ], + [ + 19.2, + 44.59 + ], + [ + 19.21, + 44.58 + ], + [ + 19.19, + 44.58 + ], + [ + 19.18, + 44.57 + ], + [ + 19.19, + 44.54 + ], + [ + 19.18, + 44.54 + ], + [ + 19.16, + 44.52 + ], + [ + 19.15, + 44.52 + ], + [ + 19.14, + 44.52 + ], + [ + 19.13, + 44.52 + ], + [ + 19.13, + 44.5 + ], + [ + 19.13, + 44.49 + ], + [ + 19.13, + 44.48 + ], + [ + 19.14, + 44.47 + ], + [ + 19.14, + 44.46 + ], + [ + 19.12, + 44.4 + ], + [ + 19.11, + 44.4 + ], + [ + 19.11, + 44.35 + ], + [ + 19.13, + 44.34 + ], + [ + 19.16, + 44.3 + ], + [ + 19.18, + 44.28 + ], + [ + 19.2, + 44.29 + ], + [ + 19.21, + 44.29 + ], + [ + 19.23, + 44.27 + ], + [ + 19.23, + 44.26 + ], + [ + 19.25, + 44.26 + ], + [ + 19.31, + 44.27 + ], + [ + 19.33, + 44.26 + ], + [ + 19.33, + 44.25 + ], + [ + 19.34, + 44.23 + ], + [ + 19.34, + 44.25 + ], + [ + 19.35, + 44.21 + ], + [ + 19.36, + 44.21 + ], + [ + 19.36, + 44.19 + ], + [ + 19.38, + 44.18 + ], + [ + 19.42, + 44.15 + ], + [ + 19.44, + 44.13 + ], + [ + 19.45, + 44.13 + ], + [ + 19.46, + 44.15 + ], + [ + 19.47, + 44.15 + ], + [ + 19.49, + 44.11 + ], + [ + 19.5, + 44.1 + ], + [ + 19.51, + 44.09 + ], + [ + 19.53, + 44.08 + ], + [ + 19.55, + 44.07 + ], + [ + 19.56, + 44.07 + ], + [ + 19.58, + 44.06 + ], + [ + 19.6, + 44.06 + ], + [ + 19.6, + 44.05 + ], + [ + 19.62, + 44.05 + ], + [ + 19.62, + 44.03 + ], + [ + 19.62, + 44.02 + ], + [ + 19.6, + 44.01 + ], + [ + 19.59, + 44.01 + ], + [ + 19.56, + 43.98 + ], + [ + 19.53, + 43.96 + ], + [ + 19.45, + 43.96 + ], + [ + 19.44, + 43.96 + ], + [ + 19.42, + 43.96 + ], + [ + 19.4, + 43.96 + ], + [ + 19.37, + 43.97 + ], + [ + 19.29, + 44 + ], + [ + 19.25, + 44.01 + ], + [ + 19.24, + 43.98 + ], + [ + 19.52, + 43.71 + ], + [ + 19.38, + 43.59 + ], + [ + 19.38, + 43.6 + ], + [ + 19.23, + 43.53 + ], + [ + 18.91, + 43.5 + ], + [ + 19.08, + 43.32 + ], + [ + 18.99, + 43.26 + ], + [ + 18.98, + 43.26 + ], + [ + 18.98, + 43.28 + ], + [ + 18.96, + 43.33 + ], + [ + 18.92, + 43.36 + ], + [ + 18.85, + 43.33 + ], + [ + 18.85, + 43.32 + ], + [ + 18.46, + 42.83 + ], + [ + 18.47, + 42.77 + ], + [ + 18.49, + 42.75 + ], + [ + 18.5, + 42.74 + ], + [ + 18.44, + 42.56 + ], + [ + 17.65, + 42.89 + ], + [ + 17.58, + 42.94 + ], + [ + 17.6, + 42.94 + ], + [ + 17.62, + 42.94 + ], + [ + 17.66, + 43.05 + ], + [ + 17.14, + 43.51 + ], + [ + 17.13, + 43.52 + ], + [ + 16.99, + 43.59 + ], + [ + 16.99, + 43.6 + ], + [ + 16.98, + 43.6 + ], + [ + 16.97, + 43.61 + ], + [ + 16.21, + 44.22 + ], + [ + 16.13, + 44.49 + ], + [ + 16.13, + 44.5 + ], + [ + 15.95, + 44.7 + ], + [ + 15.73, + 44.83 + ], + [ + 15.78, + 45.19 + ], + [ + 16.01, + 45.22 + ], + [ + 16.28, + 45.01 + ], + [ + 16.36, + 45.04 + ], + [ + 16.37, + 45.04 + ], + [ + 16.39, + 45.07 + ], + [ + 16.39, + 45.08 + ], + [ + 16.39, + 45.09 + ], + [ + 16.39, + 45.1 + ], + [ + 16.39, + 45.11 + ], + [ + 16.41, + 45.12 + ], + [ + 16.48, + 45.17 + ], + [ + 16.49, + 45.2 + ], + [ + 16.5, + 45.21 + ], + [ + 16.52, + 45.22 + ], + [ + 16.57, + 45.22 + ], + [ + 16.61, + 45.23 + ], + [ + 16.63, + 45.21 + ], + [ + 16.65, + 45.21 + ], + [ + 16.66, + 45.21 + ], + [ + 16.67, + 45.2 + ], + [ + 16.68, + 45.2 + ], + [ + 16.7, + 45.2 + ], + [ + 16.76, + 45.2 + ], + [ + 16.77, + 45.2 + ], + [ + 16.81, + 45.19 + ], + [ + 16.81, + 45.18 + ], + [ + 16.84, + 45.21 + ], + [ + 16.86, + 45.23 + ], + [ + 16.88, + 45.24 + ], + [ + 16.89, + 45.24 + ], + [ + 16.88, + 45.24 + ], + [ + 16.88, + 45.25 + ], + [ + 16.91, + 45.26 + ], + [ + 16.92, + 45.27 + ], + [ + 16.93, + 45.28 + ], + [ + 16.94, + 45.27 + ], + [ + 16.94, + 45.26 + ], + [ + 16.94, + 45.24 + ], + [ + 16.94, + 45.23 + ], + [ + 16.96, + 45.23 + ], + [ + 16.98, + 45.25 + ], + [ + 16.98, + 45.23 + ], + [ + 17, + 45.22 + ], + [ + 17.01, + 45.22 + ], + [ + 17.05, + 45.2 + ], + [ + 17.06, + 45.2 + ], + [ + 17.07, + 45.2 + ], + [ + 17.09, + 45.18 + ], + [ + 17.1, + 45.18 + ], + [ + 17.13, + 45.17 + ], + [ + 17.15, + 45.16 + ], + [ + 17.18, + 45.15 + ], + [ + 17.2, + 45.15 + ], + [ + 17.21, + 45.15 + ], + [ + 17.23, + 45.15 + ], + [ + 17.25, + 45.15 + ], + [ + 17.26, + 45.17 + ], + [ + 17.27, + 45.18 + ], + [ + 17.27, + 45.19 + ], + [ + 17.31, + 45.17 + ], + [ + 17.31, + 45.16 + ], + [ + 17.32, + 45.17 + ], + [ + 17.33, + 45.16 + ], + [ + 17.33, + 45.15 + ], + [ + 17.34, + 45.15 + ], + [ + 17.35, + 45.14 + ], + [ + 17.36, + 45.14 + ], + [ + 17.37, + 45.14 + ], + [ + 17.38, + 45.14 + ], + [ + 17.4, + 45.14 + ], + [ + 17.41, + 45.13 + ], + [ + 17.45, + 45.14 + ], + [ + 17.46, + 45.13 + ], + [ + 17.47, + 45.13 + ], + [ + 17.48, + 45.14 + ], + [ + 17.49, + 45.14 + ], + [ + 17.49, + 45.13 + ], + [ + 17.48, + 45.12 + ], + [ + 17.49, + 45.11 + ], + [ + 17.51, + 45.11 + ], + [ + 17.52, + 45.11 + ], + [ + 17.54, + 45.12 + ], + [ + 17.57, + 45.12 + ], + [ + 17.58, + 45.12 + ], + [ + 17.59, + 45.11 + ], + [ + 17.61, + 45.11 + ], + [ + 17.63, + 45.12 + ], + [ + 17.64, + 45.13 + ], + [ + 17.65, + 45.13 + ], + [ + 17.67, + 45.13 + ], + [ + 17.69, + 45.12 + ], + [ + 17.72, + 45.11 + ], + [ + 17.73, + 45.1 + ], + [ + 17.75, + 45.09 + ], + [ + 17.77, + 45.08 + ], + [ + 17.78, + 45.08 + ], + [ + 17.79, + 45.08 + ], + [ + 17.8, + 45.07 + ], + [ + 17.82, + 45.06 + ], + [ + 17.84, + 45.05 + ], + [ + 17.85, + 45.04 + ], + [ + 17.87, + 45.05 + ], + [ + 17.89, + 45.05 + ], + [ + 17.89, + 45.06 + ], + [ + 17.92, + 45.07 + ], + [ + 17.93, + 45.08 + ], + [ + 17.94, + 45.09 + ], + [ + 17.93, + 45.1 + ], + [ + 17.94, + 45.11 + ], + [ + 17.97, + 45.12 + ], + [ + 17.98, + 45.13 + ], + [ + 17.98, + 45.14 + ], + [ + 17.99, + 45.15 + ], + [ + 18, + 45.15 + ], + [ + 18.01, + 45.15 + ], + [ + 18.02, + 45.15 + ], + [ + 18.03, + 45.14 + ], + [ + 18.03, + 45.13 + ], + [ + 18.04, + 45.13 + ], + [ + 18.04, + 45.14 + ], + [ + 18.08, + 45.12 + ], + [ + 18.07, + 45.11 + ], + [ + 18.08, + 45.1 + ], + [ + 18.1, + 45.09 + ], + [ + 18.11, + 45.08 + ], + [ + 18.14, + 45.09 + ], + [ + 18.15, + 45.08 + ], + [ + 18.17, + 45.08 + ], + [ + 18.18, + 45.08 + ], + [ + 18.21, + 45.09 + ], + [ + 18.22, + 45.08 + ], + [ + 18.22, + 45.09 + ], + [ + 18.22, + 45.1 + ], + [ + 18.21, + 45.11 + ], + [ + 18.21, + 45.12 + ], + [ + 18.22, + 45.13 + ], + [ + 18.23, + 45.13 + ], + [ + 18.25, + 45.14 + ], + [ + 18.27, + 45.14 + ], + [ + 18.28, + 45.13 + ], + [ + 18.28, + 45.12 + ], + [ + 18.3, + 45.12 + ], + [ + 18.31, + 45.11 + ], + [ + 18.32, + 45.1 + ], + [ + 18.33, + 45.1 + ], + [ + 18.35, + 45.1 + ], + [ + 18.36, + 45.1 + ], + [ + 18.37, + 45.11 + ], + [ + 18.38, + 45.11 + ], + [ + 18.41, + 45.11 + ], + [ + 18.43, + 45.11 + ], + [ + 18.44, + 45.1 + ], + [ + 18.44, + 45.09 + ], + [ + 18.45, + 45.08 + ], + [ + 18.46, + 45.07 + ], + [ + 18.48, + 45.06 + ], + [ + 18.49, + 45.06 + ], + [ + 18.5, + 45.06 + ], + [ + 18.51, + 45.06 + ], + [ + 18.53, + 45.05 + ], + [ + 18.53, + 45.04 + ], + [ + 18.54, + 45.07 + ], + [ + 18.55, + 45.07 + ], + [ + 18.54, + 45.09 + ], + [ + 18.55, + 45.09 + ], + [ + 18.57, + 45.08 + ], + [ + 18.58, + 45.07 + ], + [ + 18.59, + 45.08 + ], + [ + 18.59, + 45.09 + ], + [ + 18.61, + 45.08 + ], + [ + 18.61, + 45.07 + ], + [ + 18.63, + 45.06 + ], + [ + 18.65, + 45.06 + ], + [ + 18.67, + 45.06 + ], + [ + 18.69, + 45.04 + ], + [ + 18.71, + 45.04 + ], + [ + 18.72, + 45.03 + ], + [ + 18.73, + 45.02 + ], + [ + 18.74, + 45.01 + ], + [ + 18.74, + 44.99 + ], + [ + 18.76, + 45 + ], + [ + 18.78, + 45 + ], + [ + 18.8, + 44.99 + ], + [ + 18.79, + 44.98 + ], + [ + 18.78, + 44.98 + ], + [ + 18.8, + 44.95 + ], + [ + 18.81, + 44.94 + ], + [ + 18.79, + 44.93 + ], + [ + 18.78, + 44.94 + ], + [ + 18.76, + 44.94 + ], + [ + 18.76, + 44.92 + ], + [ + 18.76, + 44.91 + ], + [ + 18.77, + 44.9 + ], + [ + 18.8, + 44.88 + ], + [ + 18.81, + 44.88 + ], + [ + 18.82, + 44.88 + ], + [ + 18.83, + 44.87 + ], + [ + 18.84, + 44.86 + ], + [ + 18.85, + 44.85 + ], + [ + 18.87, + 44.85 + ], + [ + 18.89, + 44.85 + ], + [ + 18.9, + 44.85 + ], + [ + 18.91, + 44.85 + ], + [ + 18.92, + 44.85 + ], + [ + 18.96, + 44.85 + ], + [ + 18.97, + 44.85 + ], + [ + 19, + 44.85 + ], + [ + 19.01, + 44.86 + ], + [ + 19.02, + 44.86 + ] + ] + ], + [ + [ + [ + 18.58, + 45.08 + ], + [ + 18.57, + 45.09 + ], + [ + 18.57, + 45.1 + ], + [ + 18.59, + 45.09 + ], + [ + 18.59, + 45.08 + ], + [ + 18.58, + 45.08 + ] + ] + ], + [ + [ + [ + 18.61, + 45.08 + ], + [ + 18.62, + 45.09 + ], + [ + 18.63, + 45.08 + ], + [ + 18.62, + 45.08 + ], + [ + 18.61, + 45.08 + ] + ] + ], + [ + [ + [ + 18.66, + 45.07 + ], + [ + 18.66, + 45.08 + ], + [ + 18.68, + 45.09 + ], + [ + 18.68, + 45.07 + ], + [ + 18.67, + 45.07 + ], + [ + 18.66, + 45.07 + ] + ] + ] + ] + }, + "properties": { + "A3": "BIH" + } + }, + { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + 156.09, + -6.8 + ], + [ + 156.15, + -6.93 + ], + [ + 156.03, + -6.99 + ], + [ + 156.09, + -6.8 + ] + ] + ], + [ + [ + [ + 155.68, + -7.06 + ], + [ + 155.73, + -6.96 + ], + [ + 155.87, + -7.05 + ], + [ + 155.68, + -7.06 + ] + ] + ], + [ + [ + [ + 157, + -6.9 + ], + [ + 157.56, + -7.39 + ], + [ + 157.1, + -7.36 + ], + [ + 156.39, + -6.66 + ], + [ + 156.5, + -6.59 + ], + [ + 157, + -6.9 + ] + ] + ], + [ + [ + [ + 160.15, + -9 + ], + [ + 160.41, + -9.14 + ], + [ + 160.22, + -9.19 + ], + [ + 160.31, + -9.09 + ], + [ + 160.1, + -9.1 + ], + [ + 160.15, + -9 + ] + ] + ], + [ + [ + [ + 158, + -8.77 + ], + [ + 157.87, + -8.67 + ], + [ + 158.01, + -8.5 + ], + [ + 158.13, + -8.57 + ], + [ + 158, + -8.77 + ] + ] + ], + [ + [ + [ + 159.08, + -9 + ], + [ + 159.21, + -9.03 + ], + [ + 159.14, + -9.12 + ], + [ + 159.08, + -9 + ] + ] + ], + [ + [ + [ + 158.14, + -8.81 + ], + [ + 158.19, + -8.67 + ], + [ + 158.24, + -8.8 + ], + [ + 158.14, + -8.81 + ] + ] + ], + [ + [ + [ + 159.05, + -8.09 + ], + [ + 158.3, + -7.57 + ], + [ + 158.73, + -7.58 + ], + [ + 159.85, + -8.34 + ], + [ + 159.74, + -8.4 + ], + [ + 159.9, + -8.57 + ], + [ + 159.71, + -8.41 + ], + [ + 159.05, + -8.09 + ] + ] + ], + [ + [ + [ + 159.56, + -8.5 + ], + [ + 159.52, + -8.43 + ], + [ + 159.59, + -8.38 + ], + [ + 159.7, + -8.52 + ], + [ + 159.56, + -8.5 + ] + ] + ], + [ + [ + [ + 160.77, + -9 + ], + [ + 160.57, + -8.33 + ], + [ + 160.74, + -8.32 + ], + [ + 160.99, + -8.63 + ], + [ + 160.94, + -8.82 + ], + [ + 161.17, + -8.98 + ], + [ + 161.4, + -9.59 + ], + [ + 160.77, + -9 + ] + ] + ], + [ + [ + [ + 161.42, + -10.36 + ], + [ + 161.27, + -10.33 + ], + [ + 161.28, + -10.21 + ], + [ + 162.09, + -10.47 + ], + [ + 162.22, + -10.81 + ], + [ + 162.38, + -10.84 + ], + [ + 161.76, + -10.74 + ], + [ + 161.42, + -10.36 + ] + ] + ], + [ + [ + [ + 160.46, + -9.49 + ], + [ + 160.83, + -9.87 + ], + [ + 160.63, + -9.95 + ], + [ + 159.82, + -9.8 + ], + [ + 159.58, + -9.37 + ], + [ + 159.71, + -9.25 + ], + [ + 159.91, + -9.43 + ], + [ + 160.46, + -9.49 + ] + ] + ], + [ + [ + [ + 157.56, + -8 + ], + [ + 157.62, + -8.23 + ], + [ + 157.9, + -8.45 + ], + [ + 157.8, + -8.64 + ], + [ + 157.54, + -8.26 + ], + [ + 157.21, + -8.32 + ], + [ + 157.41, + -7.99 + ], + [ + 157.56, + -8 + ] + ] + ], + [ + [ + [ + 157.1, + -8.24 + ], + [ + 157.14, + -8.35 + ], + [ + 157.01, + -8.19 + ], + [ + 157.1, + -8.24 + ] + ] + ], + [ + [ + [ + 156.94, + -7.97 + ], + [ + 157.12, + -7.85 + ], + [ + 157.18, + -8.1 + ], + [ + 156.94, + -7.97 + ] + ] + ], + [ + [ + [ + 157.2, + -8.58 + ], + [ + 157.38, + -8.41 + ], + [ + 157.41, + -8.72 + ], + [ + 157.2, + -8.58 + ] + ] + ], + [ + [ + [ + 156.51, + -7.67 + ], + [ + 156.6, + -7.56 + ], + [ + 156.78, + -7.72 + ], + [ + 156.71, + -7.96 + ], + [ + 156.51, + -7.67 + ] + ] + ], + [ + [ + [ + 160.37, + -11.72 + ], + [ + 159.95, + -11.5 + ], + [ + 160.62, + -11.83 + ], + [ + 160.37, + -11.72 + ] + ] + ], + [ + [ + [ + 166, + -10.78 + ], + [ + 165.75, + -10.79 + ], + [ + 165.88, + -10.66 + ], + [ + 166.15, + -10.68 + ], + [ + 166, + -10.78 + ] + ] + ] + ] + }, + "properties": { + "A3": "SLB" + } + }, + { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + -60.23, + -51.31 + ], + [ + -60.05, + -51.34 + ], + [ + -60.26, + -51.41 + ], + [ + -60.23, + -51.31 + ] + ] + ], + [ + [ + [ + -61.02, + -51.78 + ], + [ + -61.05, + -51.89 + ], + [ + -60.86, + -51.79 + ], + [ + -61, + -51.99 + ], + [ + -61.16, + -51.85 + ], + [ + -61.02, + -51.78 + ] + ] + ], + [ + [ + [ + -58.33, + -51.38 + ], + [ + -58.63, + -51.47 + ], + [ + -58.2, + -51.66 + ], + [ + -58.39, + -51.48 + ], + [ + -57.95, + -51.36 + ], + [ + -57.76, + -51.54 + ], + [ + -58.16, + -51.55 + ], + [ + -57.71, + -51.68 + ], + [ + -58.3, + -51.75 + ], + [ + -58.11, + -51.79 + ], + [ + -58.4, + -51.92 + ], + [ + -59.12, + -51.84 + ], + [ + -58.62, + -51.97 + ], + [ + -58.65, + -52.14 + ], + [ + -59.28, + -51.99 + ], + [ + -59.01, + -52.26 + ], + [ + -59.41, + -52.12 + ], + [ + -59.3, + -52.33 + ], + [ + -59.5, + -52.31 + ], + [ + -59.73, + -52.1 + ], + [ + -59.23, + -51.72 + ], + [ + -58.95, + -51.77 + ], + [ + -59.18, + -51.58 + ], + [ + -58.85, + -51.52 + ], + [ + -59.14, + -51.46 + ], + [ + -58.87, + -51.38 + ], + [ + -58.97, + -51.23 + ], + [ + -58.33, + -51.38 + ] + ] + ], + [ + [ + [ + -60.65, + -51.93 + ], + [ + -60.37, + -51.76 + ], + [ + -60.37, + -51.89 + ], + [ + -60.18, + -51.71 + ], + [ + -60.54, + -51.81 + ], + [ + -60.65, + -51.67 + ], + [ + -60.23, + -51.66 + ], + [ + -59.97, + -51.74 + ], + [ + -60.66, + -51.34 + ], + [ + -60.13, + -51.51 + ], + [ + -60.04, + -51.38 + ], + [ + -59.19, + -51.4 + ], + [ + -59.86, + -51.96 + ], + [ + -60.28, + -51.99 + ], + [ + -60.62, + -52.26 + ], + [ + -61.08, + -52.01 + ], + [ + -60.86, + -52.08 + ], + [ + -60.85, + -51.95 + ], + [ + -60.68, + -52.05 + ], + [ + -60.4, + -51.93 + ], + [ + -60.65, + -51.93 + ] + ] + ] + ] + }, + "properties": { + "A3": "FLK" + } + }, + { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + -5.51, + 10.43 + ], + [ + -5.4, + 10.85 + ], + [ + -5.49, + 11.08 + ], + [ + -5.2, + 11.43 + ], + [ + -5.26, + 11.76 + ], + [ + -5.4, + 11.83 + ], + [ + -4.74, + 12 + ], + [ + -4.4, + 12.31 + ], + [ + -4.48, + 12.72 + ], + [ + -4.21, + 12.82 + ], + [ + -4.34, + 13.14 + ], + [ + -3.97, + 13.5 + ], + [ + -3.96, + 13.38 + ], + [ + -3.43, + 13.17 + ], + [ + -3.42, + 13.17 + ], + [ + -3.42, + 13.18 + ], + [ + -3.43, + 13.19 + ], + [ + -3.23, + 13.29 + ], + [ + -3.26, + 13.71 + ], + [ + -2.87, + 13.65 + ], + [ + -2.84, + 14.05 + ], + [ + -2.47, + 14.3 + ], + [ + -2, + 14.19 + ], + [ + -1.98, + 14.48 + ], + [ + -1.31, + 14.73 + ], + [ + -0.72, + 15.08 + ], + [ + 0.23, + 15 + ], + [ + 0.17, + 14.52 + ], + [ + 0.47, + 13.91 + ], + [ + 0.62, + 13.69 + ], + [ + 1.28, + 13.35 + ], + [ + 0.99, + 13.37 + ], + [ + 0.97, + 13.01 + ], + [ + 1.16, + 13.01 + ], + [ + 1.57, + 12.61 + ], + [ + 2.02, + 12.72 + ], + [ + 2.22, + 12.59 + ], + [ + 2.26, + 12.42 + ], + [ + 2.07, + 12.35 + ], + [ + 2.41, + 11.9 + ], + [ + 2.02, + 11.43 + ], + [ + 1.59, + 11.44 + ], + [ + 1.58, + 11.44 + ], + [ + 1.4, + 11.45 + ], + [ + 1.06, + 11.15 + ], + [ + 1.11, + 11.03 + ], + [ + 0.91, + 11 + ], + [ + 0.49, + 10.93 + ], + [ + -0.14, + 11.14 + ], + [ + -0.35, + 11.09 + ], + [ + -0.35, + 11.08 + ], + [ + -0.37, + 11.09 + ], + [ + -0.62, + 10.91 + ], + [ + -2.83, + 11.01 + ], + [ + -2.9, + 10.53 + ], + [ + -2.77, + 10.42 + ], + [ + -2.69, + 9.49 + ], + [ + -2.82, + 9.45 + ], + [ + -3.19, + 9.94 + ], + [ + -4.13, + 9.85 + ], + [ + -4.31, + 9.6 + ], + [ + -4.52, + 9.75 + ], + [ + -4.69, + 9.68 + ], + [ + -4.97, + 9.89 + ], + [ + -5.11, + 10.31 + ], + [ + -5.36, + 10.28 + ], + [ + -5.51, + 10.43 + ] + ], + [ + [ + -0.76, + 11.65 + ], + [ + -0.75, + 11.5 + ], + [ + -0.52, + 11.48 + ], + [ + -0.53, + 11.6 + ], + [ + -0.63, + 11.52 + ], + [ + -0.76, + 11.65 + ] + ] + ], + [ + [ + [ + 0.7, + 11.16 + ], + [ + 0.59, + 11.22 + ], + [ + 0.53, + 11.31 + ], + [ + 0.7, + 11.16 + ] + ] + ] + ] + }, + "properties": { + "A3": "BFA" + } + }, + { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + 42.77, + 16.4 + ], + [ + 43.23, + 16.65 + ], + [ + 43.16, + 17.11 + ], + [ + 43.35, + 17.56 + ], + [ + 43.83, + 17.34 + ], + [ + 45.22, + 17.44 + ], + [ + 46.1, + 17.25 + ], + [ + 46.75, + 17.28 + ], + [ + 47, + 16.95 + ], + [ + 47.18, + 16.95 + ], + [ + 47.47, + 17.12 + ], + [ + 48.18, + 18.17 + ], + [ + 49.12, + 18.62 + ], + [ + 52, + 19 + ], + [ + 53.11, + 16.65 + ], + [ + 52.23, + 16.22 + ], + [ + 52.2, + 15.61 + ], + [ + 51.37, + 15.23 + ], + [ + 49.26, + 14.61 + ], + [ + 48.68, + 14.05 + ], + [ + 47.98, + 14.05 + ], + [ + 47.39, + 13.65 + ], + [ + 46.69, + 13.43 + ], + [ + 45.66, + 13.35 + ], + [ + 45.13, + 12.98 + ], + [ + 45.04, + 12.75 + ], + [ + 45, + 12.85 + ], + [ + 44.87, + 12.72 + ], + [ + 44.58, + 12.82 + ], + [ + 43.96, + 12.59 + ], + [ + 43.6, + 12.75 + ], + [ + 43.46, + 12.68 + ], + [ + 42.94, + 14.92 + ], + [ + 42.85, + 15.15 + ], + [ + 42.6, + 15.23 + ], + [ + 42.7, + 15.36 + ], + [ + 42.81, + 15.28 + ], + [ + 42.68, + 15.69 + ], + [ + 42.84, + 16.02 + ], + [ + 42.77, + 16.4 + ] + ] + ], + [ + [ + [ + 42.79, + 14 + ], + [ + 42.78, + 13.91 + ], + [ + 42.68, + 14 + ], + [ + 42.79, + 14 + ] + ] + ], + [ + [ + [ + 53.31, + 12.53 + ], + [ + 53.54, + 12.71 + ], + [ + 54.53, + 12.54 + ], + [ + 53.73, + 12.3 + ], + [ + 53.31, + 12.53 + ] + ] + ] + ] + }, + "properties": { + "A3": "YEM" + } + }, + { + "type": "Feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + 20.1, + 42.77 + ], + [ + 20.11, + 42.77 + ], + [ + 20.19, + 42.75 + ], + [ + 20.2, + 42.75 + ], + [ + 20.35, + 42.83 + ], + [ + 20.36, + 42.83 + ], + [ + 20.37, + 42.84 + ], + [ + 20.38, + 42.84 + ], + [ + 20.44, + 42.83 + ], + [ + 20.44, + 42.84 + ], + [ + 20.54, + 42.89 + ], + [ + 20.52, + 42.89 + ], + [ + 20.51, + 42.9 + ], + [ + 20.5, + 42.91 + ], + [ + 20.49, + 42.92 + ], + [ + 20.49, + 42.93 + ], + [ + 20.49, + 42.94 + ], + [ + 20.52, + 42.97 + ], + [ + 20.51, + 42.97 + ], + [ + 20.52, + 42.97 + ], + [ + 20.53, + 42.97 + ], + [ + 20.57, + 43 + ], + [ + 20.62, + 43 + ], + [ + 20.63, + 43.01 + ], + [ + 20.64, + 43.01 + ], + [ + 20.65, + 43.02 + ], + [ + 20.66, + 43.03 + ], + [ + 20.67, + 43.04 + ], + [ + 20.67, + 43.05 + ], + [ + 20.67, + 43.06 + ], + [ + 20.66, + 43.08 + ], + [ + 20.69, + 43.08 + ], + [ + 20.69, + 43.1 + ], + [ + 20.68, + 43.12 + ], + [ + 20.68, + 43.13 + ], + [ + 20.67, + 43.14 + ], + [ + 20.83, + 43.27 + ], + [ + 21.24, + 42.94 + ], + [ + 21.25, + 42.93 + ], + [ + 21.4, + 42.74 + ], + [ + 21.79, + 42.66 + ], + [ + 21.59, + 42.26 + ], + [ + 21.26, + 42.09 + ], + [ + 21.1, + 42.2 + ], + [ + 20.59, + 41.88 + ], + [ + 20.55, + 42.16 + ], + [ + 20.54, + 42.17 + ], + [ + 20.08, + 42.56 + ], + [ + 20.01, + 42.74 + ], + [ + 20.1, + 42.77 + ] + ] + ] + }, + "properties": { + "A3": "XKX" + } + }, + { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + -7.26, + 55.07 + ], + [ + -7.4, + 54.95 + ], + [ + -7.44, + 54.94 + ], + [ + -7.45, + 54.93 + ], + [ + -7.45, + 54.92 + ], + [ + -7.45, + 54.91 + ], + [ + -7.45, + 54.9 + ], + [ + -7.44, + 54.87 + ], + [ + -7.47, + 54.84 + ], + [ + -7.54, + 54.8 + ], + [ + -7.92, + 54.7 + ], + [ + -7.85, + 54.63 + ], + [ + -7.74, + 54.62 + ], + [ + -7.69, + 54.61 + ], + [ + -7.83, + 54.55 + ], + [ + -7.82, + 54.55 + ], + [ + -7.85, + 54.53 + ], + [ + -7.87, + 54.54 + ], + [ + -8, + 54.54 + ], + [ + -8.01, + 54.54 + ], + [ + -8.15, + 54.44 + ], + [ + -8.16, + 54.44 + ], + [ + -8.1, + 54.41 + ], + [ + -7.98, + 54.34 + ], + [ + -7.92, + 54.3 + ], + [ + -7.91, + 54.3 + ], + [ + -7.9, + 54.3 + ], + [ + -7.87, + 54.29 + ], + [ + -7.69, + 54.2 + ], + [ + -7.49, + 54.13 + ], + [ + -7.49, + 54.12 + ], + [ + -7.47, + 54.13 + ], + [ + -7.47, + 54.14 + ], + [ + -7.46, + 54.14 + ], + [ + -7.44, + 54.15 + ], + [ + -7.42, + 54.15 + ], + [ + -7.41, + 54.15 + ], + [ + -7.43, + 54.14 + ], + [ + -7.42, + 54.14 + ], + [ + -7.41, + 54.14 + ], + [ + -7.39, + 54.13 + ], + [ + -7.21, + 54.21 + ], + [ + -7.2, + 54.22 + ], + [ + -7.03, + 54.42 + ], + [ + -6.64, + 54.14 + ], + [ + -6.62, + 54.04 + ], + [ + -6.29, + 54.11 + ], + [ + -6.1, + 54 + ], + [ + -6.4, + 54.01 + ], + [ + -6.22, + 53.8 + ], + [ + -6.4, + 53.72 + ], + [ + -6.08, + 53.55 + ], + [ + -6.05, + 53.36 + ], + [ + -6.25, + 53.34 + ], + [ + -6, + 52.97 + ], + [ + -6.36, + 52.35 + ], + [ + -6.57, + 52.49 + ], + [ + -6.36, + 52.17 + ], + [ + -6.76, + 52.27 + ], + [ + -6.93, + 52.12 + ], + [ + -6.99, + 52.25 + ], + [ + -7.02, + 52.13 + ], + [ + -7.64, + 52.1 + ], + [ + -7.58, + 51.99 + ], + [ + -8.17, + 51.78 + ], + [ + -8.17, + 51.91 + ], + [ + -8.47, + 51.9 + ], + [ + -8.27, + 51.8 + ], + [ + -8.48, + 51.67 + ], + [ + -8.67, + 51.77 + ], + [ + -8.53, + 51.6 + ], + [ + -8.77, + 51.66 + ], + [ + -8.71, + 51.57 + ], + [ + -9.23, + 51.48 + ], + [ + -9.46, + 51.56 + ], + [ + -9.82, + 51.45 + ], + [ + -9.54, + 51.75 + ], + [ + -10.16, + 51.58 + ], + [ + -9.54, + 51.89 + ], + [ + -10.34, + 51.78 + ], + [ + -10.32, + 51.96 + ], + [ + -9.7, + 52.17 + ], + [ + -10.47, + 52.18 + ], + [ + -9.72, + 52.26 + ], + [ + -9.95, + 52.41 + ], + [ + -9.62, + 52.58 + ], + [ + -9.48, + 52.55 + ], + [ + -8.63, + 52.67 + ], + [ + -8.97, + 52.68 + ], + [ + -8.96, + 52.82 + ], + [ + -9.16, + 52.62 + ], + [ + -9.31, + 52.59 + ], + [ + -9.27, + 52.64 + ], + [ + -9.41, + 52.6 + ], + [ + -9.61, + 52.67 + ], + [ + -9.94, + 52.56 + ], + [ + -9.5, + 52.75 + ], + [ + -9.28, + 53.14 + ], + [ + -8.87, + 53.21 + ], + [ + -9.62, + 53.23 + ], + [ + -9.55, + 53.4 + ], + [ + -9.77, + 53.29 + ], + [ + -9.84, + 53.43 + ], + [ + -10.18, + 53.41 + ], + [ + -10.01, + 53.48 + ], + [ + -10.19, + 53.56 + ], + [ + -9.67, + 53.61 + ], + [ + -9.91, + 53.76 + ], + [ + -9.54, + 53.8 + ], + [ + -9.57, + 53.9 + ], + [ + -9.94, + 53.87 + ], + [ + -9.82, + 54.14 + ], + [ + -9.97, + 54.06 + ], + [ + -10.01, + 54.23 + ], + [ + -10.12, + 54.1 + ], + [ + -10.11, + 54.24 + ], + [ + -9.72, + 54.24 + ], + [ + -9.79, + 54.35 + ], + [ + -9.27, + 54.31 + ], + [ + -9.14, + 54.15 + ], + [ + -9.05, + 54.29 + ], + [ + -8.51, + 54.21 + ], + [ + -8.68, + 54.36 + ], + [ + -8.11, + 54.66 + ], + [ + -8.46, + 54.57 + ], + [ + -8.81, + 54.7 + ], + [ + -8.21, + 54.9 + ], + [ + -8.46, + 54.91 + ], + [ + -8.3, + 55.15 + ], + [ + -7.98, + 55.23 + ], + [ + -7.86, + 55.13 + ], + [ + -7.79, + 55.26 + ], + [ + -7.7, + 55.1 + ], + [ + -7.63, + 55.28 + ], + [ + -7.64, + 54.95 + ], + [ + -7.52, + 55.29 + ], + [ + -7.25, + 55.28 + ], + [ + -7.37, + 55.38 + ], + [ + -6.92, + 55.24 + ], + [ + -7.26, + 55.07 + ] + ] + ], + [ + [ + [ + -9.94, + 53.89 + ], + [ + -10.26, + 53.98 + ], + [ + -9.97, + 54.03 + ], + [ + -9.94, + 53.89 + ] + ] + ] + ] + }, + "properties": { + "A3": "IRL" + } + }, + { + "type": "Feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + 18.52, + 42.42 + ], + [ + 18.44, + 42.56 + ], + [ + 18.5, + 42.74 + ], + [ + 18.49, + 42.75 + ], + [ + 18.47, + 42.77 + ], + [ + 18.47, + 42.78 + ], + [ + 18.46, + 42.83 + ], + [ + 18.85, + 43.32 + ], + [ + 18.85, + 43.33 + ], + [ + 18.92, + 43.36 + ], + [ + 18.96, + 43.33 + ], + [ + 18.98, + 43.28 + ], + [ + 18.98, + 43.26 + ], + [ + 18.99, + 43.26 + ], + [ + 19.08, + 43.32 + ], + [ + 18.91, + 43.5 + ], + [ + 19.23, + 43.53 + ], + [ + 19.37, + 43.41 + ], + [ + 19.38, + 43.41 + ], + [ + 19.54, + 43.3 + ], + [ + 19.53, + 43.28 + ], + [ + 19.54, + 43.26 + ], + [ + 19.54, + 43.25 + ], + [ + 19.59, + 43.24 + ], + [ + 19.62, + 43.23 + ], + [ + 19.63, + 43.22 + ], + [ + 19.64, + 43.19 + ], + [ + 19.66, + 43.19 + ], + [ + 19.67, + 43.19 + ], + [ + 19.68, + 43.18 + ], + [ + 19.68, + 43.17 + ], + [ + 19.69, + 43.17 + ], + [ + 19.7, + 43.17 + ], + [ + 19.71, + 43.17 + ], + [ + 19.73, + 43.17 + ], + [ + 19.74, + 43.16 + ], + [ + 19.75, + 43.16 + ], + [ + 19.76, + 43.16 + ], + [ + 19.77, + 43.17 + ], + [ + 19.77, + 43.16 + ], + [ + 19.78, + 43.15 + ], + [ + 19.78, + 43.14 + ], + [ + 19.78, + 43.13 + ], + [ + 19.82, + 43.12 + ], + [ + 19.83, + 43.12 + ], + [ + 19.84, + 43.1 + ], + [ + 19.85, + 43.1 + ], + [ + 19.86, + 43.11 + ], + [ + 19.89, + 43.1 + ], + [ + 19.9, + 43.1 + ], + [ + 19.91, + 43.09 + ], + [ + 19.92, + 43.09 + ], + [ + 19.96, + 43.11 + ], + [ + 19.97, + 43.11 + ], + [ + 19.97, + 43.1 + ], + [ + 20.01, + 43.04 + ], + [ + 20.04, + 43.03 + ], + [ + 20.05, + 43.02 + ], + [ + 20.05, + 43 + ], + [ + 20.08, + 42.99 + ], + [ + 20.09, + 42.99 + ], + [ + 20.11, + 42.97 + ], + [ + 20.12, + 42.97 + ], + [ + 20.12, + 42.96 + ], + [ + 20.12, + 42.97 + ], + [ + 20.13, + 42.97 + ], + [ + 20.14, + 42.97 + ], + [ + 20.14, + 42.98 + ], + [ + 20.14, + 42.99 + ], + [ + 20.15, + 42.99 + ], + [ + 20.16, + 42.98 + ], + [ + 20.18, + 42.97 + ], + [ + 20.26, + 42.94 + ], + [ + 20.29, + 42.93 + ], + [ + 20.31, + 42.92 + ], + [ + 20.33, + 42.91 + ], + [ + 20.34, + 42.91 + ], + [ + 20.35, + 42.91 + ], + [ + 20.35, + 42.89 + ], + [ + 20.35, + 42.88 + ], + [ + 20.35, + 42.84 + ], + [ + 20.35, + 42.83 + ], + [ + 20.2, + 42.75 + ], + [ + 20.19, + 42.75 + ], + [ + 20.11, + 42.77 + ], + [ + 20.1, + 42.77 + ], + [ + 20.01, + 42.74 + ], + [ + 20.08, + 42.56 + ], + [ + 19.83, + 42.47 + ], + [ + 19.66, + 42.63 + ], + [ + 19.28, + 42.18 + ], + [ + 19.38, + 42 + ], + [ + 19.38, + 41.99 + ], + [ + 19.38, + 41.97 + ], + [ + 19.35, + 41.95 + ], + [ + 19.35, + 41.94 + ], + [ + 19.36, + 41.93 + ], + [ + 19.36, + 41.92 + ], + [ + 19.34, + 41.91 + ], + [ + 19.35, + 41.9 + ], + [ + 19.37, + 41.89 + ], + [ + 19.38, + 41.88 + ], + [ + 19.37, + 41.86 + ], + [ + 19.37, + 41.85 + ], + [ + 18.55, + 42.41 + ], + [ + 18.76, + 42.49 + ], + [ + 18.52, + 42.42 + ] + ] + ] + }, + "properties": { + "A3": "MNE" + } + }, + { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + -16.75, + 13.07 + ], + [ + -16.69, + 13.17 + ], + [ + -15.8, + 13.17 + ], + [ + -15.81, + 13.35 + ], + [ + -15.3, + 13.37 + ], + [ + -15.09, + 13.6 + ], + [ + -14.36, + 13.23 + ], + [ + -13.8, + 13.41 + ], + [ + -13.97, + 13.58 + ], + [ + -14.34, + 13.45 + ], + [ + -15.07, + 13.83 + ], + [ + -15.36, + 13.78 + ], + [ + -15.48, + 13.58 + ], + [ + -16.55, + 13.59 + ], + [ + -16.64, + 13.71 + ], + [ + -16.49, + 14 + ], + [ + -16.65, + 13.85 + ], + [ + -16.55, + 14.06 + ], + [ + -16.7, + 14.02 + ], + [ + -16.68, + 13.88 + ], + [ + -17.18, + 14.66 + ], + [ + -17.53, + 14.74 + ], + [ + -16.98, + 15.1 + ], + [ + -16.53, + 15.77 + ], + [ + -16.51, + 16.07 + ], + [ + -16.49, + 16.07 + ], + [ + -16.49, + 16.06 + ], + [ + -16.47, + 16.07 + ], + [ + -16.45, + 16.13 + ], + [ + -16.45, + 16.14 + ], + [ + -16.45, + 16.17 + ], + [ + -16.45, + 16.18 + ], + [ + -16.43, + 16.21 + ], + [ + -16.42, + 16.22 + ], + [ + -16.39, + 16.21 + ], + [ + -16.38, + 16.23 + ], + [ + -16.34, + 16.34 + ], + [ + -16.33, + 16.35 + ], + [ + -16.33, + 16.38 + ], + [ + -16.33, + 16.39 + ], + [ + -16.3, + 16.47 + ], + [ + -16.29, + 16.47 + ], + [ + -16.22, + 16.51 + ], + [ + -16.13, + 16.55 + ], + [ + -16.12, + 16.55 + ], + [ + -16.1, + 16.54 + ], + [ + -16.06, + 16.49 + ], + [ + -16, + 16.5 + ], + [ + -15.95, + 16.49 + ], + [ + -15.91, + 16.51 + ], + [ + -15.89, + 16.52 + ], + [ + -15.86, + 16.51 + ], + [ + -15.86, + 16.49 + ], + [ + -15.78, + 16.49 + ], + [ + -15.7, + 16.47 + ], + [ + -15.68, + 16.48 + ], + [ + -15.63, + 16.51 + ], + [ + -15.57, + 16.51 + ], + [ + -15.55, + 16.51 + ], + [ + -15.51, + 16.54 + ], + [ + -15.52, + 16.55 + ], + [ + -15.48, + 16.59 + ], + [ + -15.47, + 16.59 + ], + [ + -15.43, + 16.54 + ], + [ + -15.42, + 16.54 + ], + [ + -15.34, + 16.56 + ], + [ + -15.33, + 16.56 + ], + [ + -15.25, + 16.57 + ], + [ + -15.25, + 16.56 + ], + [ + -15.21, + 16.56 + ], + [ + -15.21, + 16.57 + ], + [ + -15.17, + 16.59 + ], + [ + -15.15, + 16.59 + ], + [ + -15.08, + 16.62 + ], + [ + -15.06, + 16.64 + ], + [ + -14.89, + 16.64 + ], + [ + -14.85, + 16.64 + ], + [ + -14.84, + 16.64 + ], + [ + -14.83, + 16.64 + ], + [ + -14.68, + 16.65 + ], + [ + -14.64, + 16.64 + ], + [ + -14.64, + 16.63 + ], + [ + -14.55, + 16.63 + ], + [ + -14.55, + 16.64 + ], + [ + -14.46, + 16.62 + ], + [ + -14.41, + 16.65 + ], + [ + -14.41, + 16.63 + ], + [ + -14.33, + 16.64 + ], + [ + -14.33, + 16.61 + ], + [ + -14.33, + 16.59 + ], + [ + -14.2, + 16.51 + ], + [ + -14.19, + 16.5 + ], + [ + -14.15, + 16.47 + ], + [ + -14.14, + 16.47 + ], + [ + -14.11, + 16.44 + ], + [ + -14.11, + 16.43 + ], + [ + -14.03, + 16.35 + ], + [ + -14.02, + 16.35 + ], + [ + -13.98, + 16.34 + ], + [ + -13.97, + 16.33 + ], + [ + -13.97, + 16.23 + ], + [ + -13.97, + 16.22 + ], + [ + -13.87, + 16.13 + ], + [ + -13.84, + 16.11 + ], + [ + -13.82, + 16.13 + ], + [ + -13.8, + 16.14 + ], + [ + -13.76, + 16.15 + ], + [ + -13.75, + 16.15 + ], + [ + -13.7, + 16.17 + ], + [ + -13.72, + 16.13 + ], + [ + -13.65, + 16.11 + ], + [ + -13.64, + 16.11 + ], + [ + -13.62, + 16.11 + ], + [ + -13.6, + 16.12 + ], + [ + -13.56, + 16.14 + ], + [ + -13.54, + 16.13 + ], + [ + -13.51, + 16.12 + ], + [ + -13.52, + 16.1 + ], + [ + -13.49, + 16.08 + ], + [ + -13.48, + 16.09 + ], + [ + -13.46, + 16.1 + ], + [ + -13.44, + 16.08 + ], + [ + -13.41, + 16.07 + ], + [ + -13.4, + 16.06 + ], + [ + -13.37, + 16.05 + ], + [ + -13.38, + 16.03 + ], + [ + -13.38, + 16.02 + ], + [ + -13.37, + 16 + ], + [ + -13.36, + 16 + ], + [ + -13.36, + 15.97 + ], + [ + -13.35, + 15.95 + ], + [ + -13.34, + 15.93 + ], + [ + -13.32, + 15.93 + ], + [ + -13.32, + 15.91 + ], + [ + -13.32, + 15.88 + ], + [ + -13.31, + 15.88 + ], + [ + -13.3, + 15.86 + ], + [ + -13.3, + 15.85 + ], + [ + -13.3, + 15.82 + ], + [ + -13.29, + 15.81 + ], + [ + -13.28, + 15.8 + ], + [ + -13.28, + 15.79 + ], + [ + -13.29, + 15.79 + ], + [ + -13.29, + 15.77 + ], + [ + -13.28, + 15.75 + ], + [ + -13.27, + 15.75 + ], + [ + -13.26, + 15.74 + ], + [ + -13.25, + 15.73 + ], + [ + -13.23, + 15.71 + ], + [ + -13.21, + 15.69 + ], + [ + -13.21, + 15.68 + ], + [ + -13.23, + 15.67 + ], + [ + -13.24, + 15.63 + ], + [ + -13.22, + 15.61 + ], + [ + -13.16, + 15.61 + ], + [ + -13.14, + 15.6 + ], + [ + -13.09, + 15.58 + ], + [ + -13.09, + 15.54 + ], + [ + -13.05, + 15.48 + ], + [ + -12.97, + 15.5 + ], + [ + -12.96, + 15.49 + ], + [ + -12.96, + 15.46 + ], + [ + -12.96, + 15.45 + ], + [ + -12.93, + 15.45 + ], + [ + -12.92, + 15.44 + ], + [ + -12.94, + 15.43 + ], + [ + -12.94, + 15.42 + ], + [ + -12.95, + 15.41 + ], + [ + -12.95, + 15.39 + ], + [ + -12.92, + 15.34 + ], + [ + -12.88, + 15.33 + ], + [ + -12.84, + 15.29 + ], + [ + -12.83, + 15.28 + ], + [ + -12.88, + 15.27 + ], + [ + -12.9, + 15.26 + ], + [ + -12.9, + 15.25 + ], + [ + -12.88, + 15.24 + ], + [ + -12.86, + 15.22 + ], + [ + -12.85, + 15.2 + ], + [ + -12.84, + 15.2 + ], + [ + -12.79, + 15.21 + ], + [ + -12.79, + 15.19 + ], + [ + -12.79, + 15.16 + ], + [ + -12.79, + 15.15 + ], + [ + -12.77, + 15.14 + ], + [ + -12.74, + 15.13 + ], + [ + -12.72, + 15.11 + ], + [ + -12.7, + 15.1 + ], + [ + -12.7, + 15.09 + ], + [ + -12.66, + 15.1 + ], + [ + -12.63, + 15.09 + ], + [ + -12.6, + 15.07 + ], + [ + -12.56, + 15.04 + ], + [ + -12.54, + 15.03 + ], + [ + -12.52, + 15.02 + ], + [ + -12.49, + 15.01 + ], + [ + -12.46, + 14.97 + ], + [ + -12.46, + 14.96 + ], + [ + -12.46, + 14.94 + ], + [ + -12.45, + 14.91 + ], + [ + -12.45, + 14.9 + ], + [ + -12.45, + 14.89 + ], + [ + -12.42, + 14.87 + ], + [ + -12.42, + 14.86 + ], + [ + -12.41, + 14.86 + ], + [ + -12.4, + 14.85 + ], + [ + -12.39, + 14.84 + ], + [ + -12.35, + 14.83 + ], + [ + -12.31, + 14.8 + ], + [ + -12.3, + 14.8 + ], + [ + -12.29, + 14.78 + ], + [ + -12.28, + 14.77 + ], + [ + -12.27, + 14.77 + ], + [ + -12.26, + 14.77 + ], + [ + -12.24, + 14.76 + ], + [ + -12.24, + 14.75 + ], + [ + -12.22, + 14.74 + ], + [ + -12.21, + 14.73 + ], + [ + -12.21, + 14.71 + ], + [ + -12.18, + 14.69 + ], + [ + -12.17, + 14.69 + ], + [ + -12.17, + 14.67 + ], + [ + -12.17, + 14.66 + ], + [ + -12.15, + 14.63 + ], + [ + -12.15, + 14.62 + ], + [ + -12.17, + 14.6 + ], + [ + -12.17, + 14.58 + ], + [ + -12.18, + 14.58 + ], + [ + -12.22, + 14.55 + ], + [ + -12.22, + 14.54 + ], + [ + -12.21, + 14.52 + ], + [ + -12.22, + 14.52 + ], + [ + -12.19, + 14.44 + ], + [ + -12.2, + 14.43 + ], + [ + -12.2, + 14.41 + ], + [ + -12.13, + 14.39 + ], + [ + -12.1, + 14.35 + ], + [ + -11.93, + 13.92 + ], + [ + -12.07, + 13.72 + ], + [ + -11.89, + 13.39 + ], + [ + -11.89, + 13.38 + ], + [ + -11.87, + 13.37 + ], + [ + -11.85, + 13.35 + ], + [ + -11.84, + 13.35 + ], + [ + -11.83, + 13.31 + ], + [ + -11.82, + 13.31 + ], + [ + -11.79, + 13.32 + ], + [ + -11.79, + 13.33 + ], + [ + -11.63, + 13.39 + ], + [ + -11.36, + 12.98 + ], + [ + -11.45, + 12.55 + ], + [ + -11.41, + 12.52 + ], + [ + -11.41, + 12.54 + ], + [ + -11.39, + 12.53 + ], + [ + -11.39, + 12.52 + ], + [ + -11.37, + 12.49 + ], + [ + -11.37, + 12.5 + ], + [ + -11.37, + 12.51 + ], + [ + -11.36, + 12.51 + ], + [ + -11.38, + 12.41 + ], + [ + -12.29, + 12.34 + ], + [ + -12.36, + 12.31 + ], + [ + -12.55, + 12.37 + ], + [ + -12.89, + 12.56 + ], + [ + -13.06, + 12.48 + ], + [ + -13.07, + 12.64 + ], + [ + -13.08, + 12.64 + ], + [ + -13.09, + 12.63 + ], + [ + -13.1, + 12.63 + ], + [ + -13.12, + 12.64 + ], + [ + -13.13, + 12.64 + ], + [ + -13.14, + 12.64 + ], + [ + -13.15, + 12.64 + ], + [ + -13.16, + 12.64 + ], + [ + -13.2, + 12.64 + ], + [ + -13.23, + 12.64 + ], + [ + -13.26, + 12.65 + ], + [ + -13.27, + 12.65 + ], + [ + -13.27, + 12.66 + ], + [ + -13.28, + 12.66 + ], + [ + -13.29, + 12.65 + ], + [ + -13.29, + 12.64 + ], + [ + -13.32, + 12.64 + ], + [ + -13.71, + 12.68 + ], + [ + -15.17, + 12.69 + ], + [ + -15.68, + 12.42 + ], + [ + -16.07, + 12.47 + ], + [ + -16.38, + 12.36 + ], + [ + -16.67, + 12.36 + ], + [ + -16.72, + 12.34 + ], + [ + -16.78, + 12.53 + ], + [ + -16.68, + 12.39 + ], + [ + -16.6, + 12.62 + ], + [ + -16.45, + 12.5 + ], + [ + -16.44, + 12.37 + ], + [ + -16.45, + 12.5 + ], + [ + -16.53, + 12.59 + ], + [ + -16.39, + 12.54 + ], + [ + -15.98, + 12.68 + ], + [ + -16.37, + 12.56 + ], + [ + -16.57, + 12.71 + ], + [ + -16.75, + 12.57 + ], + [ + -16.74, + 12.68 + ], + [ + -16.75, + 13.07 + ] + ] + ], + [ + [ + [ + -15.08, + 16.63 + ], + [ + -15.12, + 16.64 + ], + [ + -15.06, + 16.64 + ], + [ + -15.08, + 16.63 + ] + ] + ] + ] + }, + "properties": { + "A3": "SEN" + } + }, + { + "type": "Feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + 13.71, + 46.52 + ], + [ + 14.56, + 46.37 + ], + [ + 14.98, + 46.6 + ], + [ + 14.99, + 46.6 + ], + [ + 15.66, + 46.71 + ], + [ + 15.67, + 46.71 + ], + [ + 15.73, + 46.7 + ], + [ + 15.75, + 46.7 + ], + [ + 15.84, + 46.72 + ], + [ + 15.85, + 46.72 + ], + [ + 15.9, + 46.71 + ], + [ + 15.91, + 46.71 + ], + [ + 15.93, + 46.7 + ], + [ + 16, + 46.68 + ], + [ + 16.02, + 46.66 + ], + [ + 16.04, + 46.68 + ], + [ + 16.11, + 46.87 + ], + [ + 16.34, + 46.85 + ], + [ + 16.6, + 46.48 + ], + [ + 16.57, + 46.47 + ], + [ + 16.51, + 46.5 + ], + [ + 16.5, + 46.5 + ], + [ + 16.48, + 46.51 + ], + [ + 16.46, + 46.52 + ], + [ + 16.43, + 46.53 + ], + [ + 16.42, + 46.53 + ], + [ + 16.41, + 46.53 + ], + [ + 16.33, + 46.53 + ], + [ + 16.26, + 46.38 + ], + [ + 16.25, + 46.38 + ], + [ + 16.24, + 46.38 + ], + [ + 16.2, + 46.38 + ], + [ + 16.19, + 46.38 + ], + [ + 16.18, + 46.39 + ], + [ + 16.17, + 46.39 + ], + [ + 16.15, + 46.4 + ], + [ + 16.13, + 46.4 + ], + [ + 16.11, + 46.39 + ], + [ + 16.1, + 46.39 + ], + [ + 16.07, + 46.39 + ], + [ + 16.06, + 46.39 + ], + [ + 15.69, + 46.23 + ], + [ + 15.68, + 46.23 + ], + [ + 15.69, + 45.86 + ], + [ + 15.71, + 45.85 + ], + [ + 15.7, + 45.84 + ], + [ + 15.28, + 45.74 + ], + [ + 15.34, + 45.65 + ], + [ + 15.34, + 45.64 + ], + [ + 15.3, + 45.61 + ], + [ + 15.29, + 45.61 + ], + [ + 15.3, + 45.57 + ], + [ + 15.21, + 45.43 + ], + [ + 15.2, + 45.43 + ], + [ + 15.18, + 45.42 + ], + [ + 15.17, + 45.42 + ], + [ + 14.82, + 45.46 + ], + [ + 14.57, + 45.67 + ], + [ + 14.32, + 45.47 + ], + [ + 13.59, + 45.47 + ], + [ + 13.72, + 45.59 + ], + [ + 13.92, + 45.63 + ], + [ + 13.61, + 45.9 + ], + [ + 13.64, + 45.98 + ], + [ + 13.48, + 46.01 + ], + [ + 13.66, + 46.18 + ], + [ + 13.4, + 46.3 + ], + [ + 13.57, + 46.41 + ], + [ + 13.58, + 46.42 + ], + [ + 13.71, + 46.52 + ] + ] + ] + }, + "properties": { + "A3": "SVN" + } + }, + { + "type": "Feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + -16.55, + 13.59 + ], + [ + -15.48, + 13.58 + ], + [ + -15.36, + 13.78 + ], + [ + -15.07, + 13.83 + ], + [ + -14.34, + 13.45 + ], + [ + -13.97, + 13.58 + ], + [ + -13.8, + 13.41 + ], + [ + -14.36, + 13.23 + ], + [ + -15.09, + 13.6 + ], + [ + -15.3, + 13.37 + ], + [ + -15.81, + 13.35 + ], + [ + -15.8, + 13.17 + ], + [ + -16.69, + 13.17 + ], + [ + -16.75, + 13.07 + ], + [ + -16.82, + 13.34 + ], + [ + -16.69, + 13.48 + ], + [ + -16.46, + 13.25 + ], + [ + -16.22, + 13.35 + ], + [ + -16.48, + 13.36 + ], + [ + -16.55, + 13.59 + ] + ] + ] + }, + "properties": { + "A3": "GMB" + } + }, + { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + 68.27, + 23.9 + ], + [ + 68.28, + 23.91 + ], + [ + 68.32, + 23.92 + ], + [ + 68.33, + 23.92 + ], + [ + 68.35, + 23.93 + ], + [ + 68.35, + 23.96 + ], + [ + 68.36, + 23.97 + ], + [ + 68.39, + 23.96 + ], + [ + 68.4, + 23.97 + ], + [ + 68.43, + 23.97 + ], + [ + 68.24, + 23.68 + ], + [ + 68.27, + 23.9 + ] + ] + ], + [ + [ + [ + 68.45, + 23.97 + ], + [ + 68.5, + 23.97 + ], + [ + 68.33, + 23.79 + ], + [ + 68.45, + 23.97 + ] + ] + ], + [ + [ + [ + 68.88, + 24.27 + ], + [ + 68.9, + 24.32 + ], + [ + 70, + 24.17 + ], + [ + 70.21, + 24.33 + ], + [ + 70.12, + 23.92 + ], + [ + 70.84, + 23.91 + ], + [ + 71.14, + 23.45 + ], + [ + 70.83, + 23.34 + ], + [ + 70.79, + 23.19 + ], + [ + 70.32, + 23.21 + ], + [ + 70.12, + 22.93 + ], + [ + 69.72, + 22.73 + ], + [ + 69.1, + 22.9 + ], + [ + 68.76, + 23.08 + ], + [ + 68.63, + 23.18 + ], + [ + 68.75, + 23.09 + ], + [ + 68.73, + 23.14 + ], + [ + 68.6, + 23.24 + ], + [ + 68.74, + 23.31 + ], + [ + 68.48, + 23.55 + ], + [ + 68.73, + 23.83 + ], + [ + 69.01, + 23.75 + ], + [ + 69.24, + 24.11 + ], + [ + 68.88, + 24.27 + ] + ], + [ + [ + 70.34, + 23.64 + ], + [ + 70.06, + 23.56 + ], + [ + 70.22, + 23.48 + ], + [ + 70.34, + 23.64 + ] + ], + [ + [ + 70, + 23.73 + ], + [ + 69.92, + 23.64 + ], + [ + 70.14, + 23.63 + ], + [ + 69.96, + 23.88 + ], + [ + 70, + 23.73 + ] + ] + ], + [ + [ + [ + 70.41, + 24.39 + ], + [ + 70.44, + 24.41 + ], + [ + 70.46, + 24.41 + ], + [ + 70.49, + 24.42 + ], + [ + 70.41, + 24.39 + ] + ] + ], + [ + [ + [ + 70.58, + 24.28 + ], + [ + 71.07, + 24.38 + ], + [ + 71.28, + 24.27 + ], + [ + 71.05, + 24.6 + ], + [ + 71, + 24.49 + ], + [ + 70.98, + 24.61 + ], + [ + 71.1, + 24.69 + ], + [ + 70.67, + 25.4 + ], + [ + 70.66, + 25.7 + ], + [ + 70.27, + 25.71 + ], + [ + 70.1, + 25.94 + ], + [ + 70.18, + 26.55 + ], + [ + 69.51, + 26.74 + ], + [ + 69.59, + 27.18 + ], + [ + 70.37, + 28.01 + ], + [ + 70.59, + 28.01 + ], + [ + 70.87, + 27.7 + ], + [ + 71.9, + 27.96 + ], + [ + 72.39, + 28.77 + ], + [ + 72.95, + 29.03 + ], + [ + 73.4, + 29.95 + ], + [ + 73.97, + 30.2 + ], + [ + 73.99, + 30.51 + ], + [ + 74, + 30.51 + ], + [ + 74.26, + 30.77 + ], + [ + 74.27, + 30.77 + ], + [ + 74.28, + 30.77 + ], + [ + 74.29, + 30.77 + ], + [ + 74.3, + 30.79 + ], + [ + 74.3, + 30.81 + ], + [ + 74.31, + 30.81 + ], + [ + 74.32, + 30.82 + ], + [ + 74.32, + 30.83 + ], + [ + 74.43, + 30.94 + ], + [ + 74.44, + 30.94 + ], + [ + 74.55, + 31 + ], + [ + 74.54, + 31 + ], + [ + 74.7, + 31.07 + ], + [ + 74.7, + 31.08 + ], + [ + 74.51, + 31.13 + ], + [ + 74.66, + 31.43 + ], + [ + 74.5, + 31.71 + ], + [ + 74.48, + 31.72 + ], + [ + 74.51, + 31.74 + ], + [ + 74.52, + 31.75 + ], + [ + 74.56, + 31.82 + ], + [ + 74.56, + 31.83 + ], + [ + 74.6, + 31.88 + ], + [ + 74.61, + 31.88 + ], + [ + 74.67, + 31.92 + ], + [ + 74.83, + 32 + ], + [ + 74.84, + 32.01 + ], + [ + 74.86, + 32.04 + ], + [ + 74.87, + 32.05 + ], + [ + 74.98, + 32.05 + ], + [ + 74.98, + 32.04 + ], + [ + 75.12, + 32.08 + ], + [ + 75.13, + 32.08 + ], + [ + 75.22, + 32.1 + ], + [ + 75.29, + 32.15 + ], + [ + 75.3, + 32.15 + ], + [ + 75.32, + 32.34 + ], + [ + 74.97, + 32.45 + ], + [ + 74.96, + 32.45 + ], + [ + 74.95, + 32.45 + ], + [ + 74.68, + 32.49 + ], + [ + 74.69, + 32.67 + ], + [ + 74.68, + 32.68 + ], + [ + 74.67, + 32.69 + ], + [ + 74.66, + 32.7 + ], + [ + 74.65, + 32.83 + ], + [ + 74.65, + 32.82 + ], + [ + 74.54, + 32.75 + ], + [ + 74.52, + 32.75 + ], + [ + 74.51, + 32.76 + ], + [ + 74.46, + 32.78 + ], + [ + 74.46, + 32.79 + ], + [ + 74.44, + 32.81 + ], + [ + 74.01, + 33.2 + ], + [ + 74.19, + 33.46 + ], + [ + 73.96, + 33.72 + ], + [ + 74.25, + 34.01 + ], + [ + 73.92, + 34.01 + ], + [ + 73.98, + 34.26 + ], + [ + 73.75, + 34.38 + ], + [ + 73.97, + 34.69 + ], + [ + 74.31, + 34.8 + ], + [ + 75.19, + 34.65 + ], + [ + 75.75, + 34.52 + ], + [ + 77, + 34.94 + ], + [ + 77.12, + 35.07 + ], + [ + 76.78, + 35.66 + ], + [ + 77.68, + 35.47 + ], + [ + 77.68, + 35.46 + ], + [ + 77.69, + 35.46 + ], + [ + 77.69, + 35.45 + ], + [ + 77.69, + 35.46 + ], + [ + 77.7, + 35.46 + ], + [ + 77.71, + 35.46 + ], + [ + 77.72, + 35.46 + ], + [ + 77.73, + 35.47 + ], + [ + 77.74, + 35.5 + ], + [ + 77.75, + 35.5 + ], + [ + 78.08, + 35.49 + ], + [ + 78.11, + 35.47 + ], + [ + 78.04, + 35.38 + ], + [ + 78.01, + 35.31 + ], + [ + 78.01, + 35.3 + ], + [ + 78.01, + 35.27 + ], + [ + 78, + 35.24 + ], + [ + 78.05, + 35.18 + ], + [ + 78.11, + 35.11 + ], + [ + 78.13, + 35.05 + ], + [ + 78.14, + 35.01 + ], + [ + 78.23, + 34.81 + ], + [ + 78.2, + 34.75 + ], + [ + 79.04, + 34.33 + ], + [ + 78.66, + 34.08 + ], + [ + 78.76, + 33.73 + ], + [ + 78.41, + 33.98 + ], + [ + 78.7, + 33.68 + ], + [ + 79.16, + 33.03 + ], + [ + 79.17, + 33.01 + ], + [ + 79.17, + 33 + ], + [ + 79.19, + 32.99 + ], + [ + 79.23, + 32.97 + ], + [ + 79.46, + 32.71 + ], + [ + 79.42, + 32.53 + ], + [ + 78.89, + 32.4 + ], + [ + 78.74, + 32.7 + ], + [ + 78.39, + 32.54 + ], + [ + 78.77, + 32 + ], + [ + 78.78, + 31.31 + ], + [ + 79.1, + 31.45 + ], + [ + 79.43, + 31.02 + ], + [ + 79.87, + 30.97 + ], + [ + 80.24, + 30.76 + ], + [ + 80.21, + 30.58 + ], + [ + 81.03, + 30.2 + ], + [ + 80.55, + 29.86 + ], + [ + 80.51, + 29.82 + ], + [ + 80.36, + 29.56 + ], + [ + 80.35, + 29.56 + ], + [ + 80.35, + 29.54 + ], + [ + 80.36, + 29.53 + ], + [ + 80.33, + 29.51 + ], + [ + 80.31, + 29.5 + ], + [ + 80.31, + 29.49 + ], + [ + 80.29, + 29.48 + ], + [ + 80.27, + 29.46 + ], + [ + 80.27, + 29.45 + ], + [ + 80.24, + 29.44 + ], + [ + 80.25, + 29.44 + ], + [ + 80.24, + 29.42 + ], + [ + 80.25, + 29.42 + ], + [ + 80.28, + 29.34 + ], + [ + 80.32, + 29.31 + ], + [ + 80.29, + 29.23 + ], + [ + 80.29, + 29.21 + ], + [ + 80.3, + 29.21 + ], + [ + 80.27, + 29.21 + ], + [ + 80.26, + 29.21 + ], + [ + 80.24, + 29.21 + ], + [ + 80.27, + 29.15 + ], + [ + 80.27, + 29.14 + ], + [ + 80.25, + 29.13 + ], + [ + 80.24, + 29.13 + ], + [ + 80.22, + 29.12 + ], + [ + 80.18, + 29.14 + ], + [ + 80.18, + 29.13 + ], + [ + 80.16, + 29.11 + ], + [ + 80.14, + 29.09 + ], + [ + 80.13, + 29.07 + ], + [ + 80.12, + 28.98 + ], + [ + 80.1, + 28.99 + ], + [ + 80.1, + 28.83 + ], + [ + 80.12, + 28.82 + ], + [ + 80.2, + 28.77 + ], + [ + 80.52, + 28.55 + ], + [ + 80.51, + 28.65 + ], + [ + 80.5, + 28.67 + ], + [ + 80.51, + 28.67 + ], + [ + 80.54, + 28.69 + ], + [ + 80.55, + 28.69 + ], + [ + 80.57, + 28.69 + ], + [ + 80.58, + 28.69 + ], + [ + 80.59, + 28.68 + ], + [ + 80.6, + 28.65 + ], + [ + 80.61, + 28.65 + ], + [ + 80.62, + 28.64 + ], + [ + 80.63, + 28.64 + ], + [ + 80.66, + 28.64 + ], + [ + 80.67, + 28.64 + ], + [ + 80.67, + 28.63 + ], + [ + 80.68, + 28.62 + ], + [ + 80.68, + 28.61 + ], + [ + 80.68, + 28.6 + ], + [ + 80.69, + 28.6 + ], + [ + 80.7, + 28.6 + ], + [ + 80.7, + 28.58 + ], + [ + 80.71, + 28.58 + ], + [ + 80.71, + 28.57 + ], + [ + 80.72, + 28.57 + ], + [ + 80.73, + 28.57 + ], + [ + 80.77, + 28.56 + ], + [ + 80.85, + 28.5 + ], + [ + 80.86, + 28.49 + ], + [ + 80.86, + 28.5 + ], + [ + 80.9, + 28.5 + ], + [ + 80.9, + 28.48 + ], + [ + 80.9, + 28.47 + ], + [ + 80.97, + 28.45 + ], + [ + 80.97, + 28.44 + ], + [ + 81.02, + 28.44 + ], + [ + 81.02, + 28.43 + ], + [ + 81.03, + 28.4 + ], + [ + 81.04, + 28.41 + ], + [ + 81.19, + 28.36 + ], + [ + 81.2, + 28.36 + ], + [ + 81.32, + 28.13 + ], + [ + 81.73, + 27.97 + ], + [ + 81.74, + 27.95 + ], + [ + 81.76, + 27.94 + ], + [ + 81.76, + 27.93 + ], + [ + 81.77, + 27.93 + ], + [ + 82.07, + 27.92 + ], + [ + 82.45, + 27.68 + ], + [ + 82.71, + 27.72 + ], + [ + 82.74, + 27.5 + ], + [ + 83.09, + 27.45 + ], + [ + 83.1, + 27.45 + ], + [ + 83.3, + 27.33 + ], + [ + 83.39, + 27.48 + ], + [ + 83.85, + 27.36 + ], + [ + 83.86, + 27.37 + ], + [ + 83.85, + 27.39 + ], + [ + 83.86, + 27.39 + ], + [ + 83.87, + 27.43 + ], + [ + 83.89, + 27.44 + ], + [ + 83.9, + 27.44 + ], + [ + 83.91, + 27.44 + ], + [ + 83.92, + 27.45 + ], + [ + 84.15, + 27.52 + ], + [ + 84.62, + 27.34 + ], + [ + 84.64, + 27.05 + ], + [ + 85.16, + 26.87 + ], + [ + 85.17, + 26.87 + ], + [ + 85.33, + 26.74 + ], + [ + 85.34, + 26.75 + ], + [ + 85.63, + 26.87 + ], + [ + 85.78, + 26.63 + ], + [ + 85.89, + 26.59 + ], + [ + 85.9, + 26.59 + ], + [ + 85.91, + 26.61 + ], + [ + 85.92, + 26.61 + ], + [ + 85.95, + 26.62 + ], + [ + 85.95, + 26.63 + ], + [ + 85.96, + 26.63 + ], + [ + 85.96, + 26.65 + ], + [ + 85.97, + 26.65 + ], + [ + 85.97, + 26.66 + ], + [ + 85.97, + 26.65 + ], + [ + 85.97, + 26.66 + ], + [ + 85.98, + 26.66 + ], + [ + 85.99, + 26.66 + ], + [ + 86, + 26.66 + ], + [ + 86.01, + 26.66 + ], + [ + 86.01, + 26.65 + ], + [ + 86.01, + 26.66 + ], + [ + 86.06, + 26.66 + ], + [ + 86.09, + 26.64 + ], + [ + 86.1, + 26.64 + ], + [ + 86.12, + 26.63 + ], + [ + 86.14, + 26.61 + ], + [ + 86.15, + 26.61 + ], + [ + 86.4, + 26.59 + ], + [ + 86.75, + 26.43 + ], + [ + 86.8, + 26.45 + ], + [ + 86.81, + 26.43 + ], + [ + 86.7, + 26.36 + ], + [ + 86.46, + 26.06 + ], + [ + 86.86, + 26.45 + ], + [ + 86.86, + 26.46 + ], + [ + 86.88, + 26.46 + ], + [ + 86.89, + 26.46 + ], + [ + 86.89, + 26.47 + ], + [ + 86.94, + 26.52 + ], + [ + 87.07, + 26.59 + ], + [ + 87.34, + 26.35 + ], + [ + 87.45, + 26.44 + ], + [ + 87.58, + 26.39 + ], + [ + 87.59, + 26.39 + ], + [ + 87.62, + 26.39 + ], + [ + 87.68, + 26.42 + ], + [ + 87.68, + 26.43 + ], + [ + 87.78, + 26.43 + ], + [ + 87.8, + 26.47 + ], + [ + 87.91, + 26.45 + ], + [ + 87.92, + 26.45 + ], + [ + 87.92, + 26.43 + ], + [ + 88.06, + 26.41 + ], + [ + 88.07, + 26.41 + ], + [ + 88.1, + 26.51 + ], + [ + 88.11, + 26.54 + ], + [ + 88.11, + 26.55 + ], + [ + 88.11, + 26.57 + ], + [ + 88.12, + 26.57 + ], + [ + 88.12, + 26.58 + ], + [ + 88.13, + 26.58 + ], + [ + 88.13, + 26.59 + ], + [ + 88.17, + 26.68 + ], + [ + 88.17, + 26.69 + ], + [ + 88.17, + 26.7 + ], + [ + 88.18, + 26.71 + ], + [ + 88.18, + 26.72 + ], + [ + 88.18, + 26.73 + ], + [ + 88.19, + 26.75 + ], + [ + 88.18, + 26.8 + ], + [ + 88.18, + 26.81 + ], + [ + 88.18, + 26.82 + ], + [ + 88.17, + 26.82 + ], + [ + 87.99, + 27.11 + ], + [ + 87.99, + 27.12 + ], + [ + 87.99, + 27.13 + ], + [ + 88, + 27.13 + ], + [ + 88, + 27.14 + ], + [ + 88.01, + 27.14 + ], + [ + 88.01, + 27.15 + ], + [ + 88.01, + 27.16 + ], + [ + 88.01, + 27.17 + ], + [ + 88.02, + 27.17 + ], + [ + 88.01, + 27.18 + ], + [ + 88.01, + 27.19 + ], + [ + 88.02, + 27.19 + ], + [ + 88.02, + 27.2 + ], + [ + 88.01, + 27.2 + ], + [ + 88.01, + 27.21 + ], + [ + 88.02, + 27.21 + ], + [ + 88.01, + 27.21 + ], + [ + 88.01, + 27.22 + ], + [ + 88.02, + 27.22 + ], + [ + 88.02, + 27.23 + ], + [ + 88.02, + 27.24 + ], + [ + 88.03, + 27.29 + ], + [ + 88.06, + 27.33 + ], + [ + 88.07, + 27.34 + ], + [ + 88.06, + 27.35 + ], + [ + 88.05, + 27.36 + ], + [ + 88.05, + 27.37 + ], + [ + 88.04, + 27.37 + ], + [ + 88.04, + 27.38 + ], + [ + 88.04, + 27.39 + ], + [ + 88.05, + 27.39 + ], + [ + 88.04, + 27.39 + ], + [ + 88.05, + 27.39 + ], + [ + 88.05, + 27.4 + ], + [ + 88.05, + 27.41 + ], + [ + 88.05, + 27.42 + ], + [ + 88.06, + 27.42 + ], + [ + 88.07, + 27.42 + ], + [ + 88.07, + 27.43 + ], + [ + 88.08, + 27.43 + ], + [ + 88.07, + 27.43 + ], + [ + 88.07, + 27.44 + ], + [ + 88.07, + 27.45 + ], + [ + 88.07, + 27.53 + ], + [ + 88.06, + 27.53 + ], + [ + 88.15, + 27.7 + ], + [ + 88.14, + 27.88 + ], + [ + 88.13, + 27.88 + ], + [ + 88.41, + 27.99 + ], + [ + 88.63, + 28.12 + ], + [ + 88.84, + 28.02 + ], + [ + 88.81, + 27.64 + ], + [ + 88.92, + 27.33 + ], + [ + 88.92, + 27.32 + ], + [ + 88.92, + 27.31 + ], + [ + 88.91, + 27.31 + ], + [ + 88.91, + 27.29 + ], + [ + 88.75, + 27.14 + ], + [ + 88.88, + 26.95 + ], + [ + 88.9, + 26.97 + ], + [ + 88.91, + 26.98 + ], + [ + 88.92, + 26.99 + ], + [ + 89.04, + 26.92 + ], + [ + 89.06, + 26.9 + ], + [ + 89.07, + 26.9 + ], + [ + 89.33, + 26.85 + ], + [ + 89.36, + 26.86 + ], + [ + 89.32, + 26.68 + ], + [ + 89.37, + 26.86 + ], + [ + 89.39, + 26.85 + ], + [ + 89.43, + 26.84 + ], + [ + 89.45, + 26.83 + ], + [ + 89.51, + 26.81 + ], + [ + 89.86, + 26.7 + ], + [ + 90.49, + 26.86 + ], + [ + 90.5, + 26.85 + ], + [ + 90.94, + 26.79 + ], + [ + 90.96, + 26.78 + ], + [ + 91.84, + 26.88 + ], + [ + 92.09, + 26.86 + ], + [ + 92.1, + 26.88 + ], + [ + 92.12, + 27.29 + ], + [ + 92.02, + 27.48 + ], + [ + 91.65, + 27.48 + ], + [ + 91.64, + 27.76 + ], + [ + 91.57, + 27.82 + ], + [ + 91.57, + 27.83 + ], + [ + 91.58, + 27.83 + ], + [ + 91.85, + 27.76 + ], + [ + 91.93, + 27.72 + ], + [ + 91.93, + 27.73 + ], + [ + 92.24, + 27.89 + ], + [ + 92.46, + 27.79 + ], + [ + 92.73, + 27.98 + ], + [ + 92.68, + 28.15 + ], + [ + 93.15, + 28.38 + ], + [ + 93.17, + 28.47 + ], + [ + 93.91, + 28.77 + ], + [ + 94.66, + 29.31 + ], + [ + 95.02, + 29.13 + ], + [ + 95.02, + 29.14 + ], + [ + 94.99, + 29.17 + ], + [ + 95.27, + 29.07 + ], + [ + 95.27, + 29.08 + ], + [ + 95.58, + 29.19 + ], + [ + 95.59, + 29.19 + ], + [ + 95.84, + 29.34 + ], + [ + 96.14, + 29.35 + ], + [ + 96.3, + 29.18 + ], + [ + 96.2, + 29.08 + ], + [ + 96.19, + 29.04 + ], + [ + 96.2, + 29.03 + ], + [ + 96.24, + 29.08 + ], + [ + 96.25, + 29.08 + ], + [ + 96.37, + 29.11 + ], + [ + 96.59, + 28.7 + ], + [ + 96.46, + 28.54 + ], + [ + 96.46, + 28.53 + ], + [ + 96.5, + 28.43 + ], + [ + 96.65, + 28.61 + ], + [ + 97.25, + 28.27 + ], + [ + 97.25, + 28.26 + ], + [ + 97.35, + 28.21 + ], + [ + 97.36, + 28.21 + ], + [ + 97.36, + 28.2 + ], + [ + 97.36, + 28.18 + ], + [ + 97.35, + 28.17 + ], + [ + 97.36, + 28.17 + ], + [ + 97.35, + 28.15 + ], + [ + 97.33, + 28.14 + ], + [ + 97.33, + 28.13 + ], + [ + 97.33, + 28.1 + ], + [ + 97.31, + 28.06 + ], + [ + 97.38, + 27.99 + ], + [ + 97.37, + 27.92 + ], + [ + 97.34, + 27.88 + ], + [ + 97.34, + 27.89 + ], + [ + 96.9, + 27.61 + ], + [ + 97.15, + 27.09 + ], + [ + 96.61, + 27.37 + ], + [ + 96.1, + 27.22 + ], + [ + 95.15, + 26.61 + ], + [ + 95.18, + 26.07 + ], + [ + 94.64, + 25.4 + ], + [ + 94.58, + 25.22 + ], + [ + 94.74, + 25 + ], + [ + 94.16, + 23.85 + ], + [ + 93.76, + 24.01 + ], + [ + 93.5, + 23.95 + ], + [ + 93.34, + 24.1 + ], + [ + 93.39, + 23.14 + ], + [ + 93.29, + 23.01 + ], + [ + 93.13, + 23.06 + ], + [ + 93.1, + 22.81 + ], + [ + 93.2, + 22.26 + ], + [ + 93, + 21.99 + ], + [ + 92.71, + 22.16 + ], + [ + 92.6, + 21.98 + ], + [ + 92.27, + 23.72 + ], + [ + 91.95, + 23.73 + ], + [ + 91.78, + 23.22 + ], + [ + 91.79, + 23.22 + ], + [ + 91.8, + 23.2 + ], + [ + 91.8, + 23.19 + ], + [ + 91.78, + 23.04 + ], + [ + 91.58, + 22.98 + ], + [ + 91.42, + 23.27 + ], + [ + 91.35, + 23.1 + ], + [ + 91.24, + 23.49 + ], + [ + 91.22, + 23.5 + ], + [ + 91.16, + 23.73 + ], + [ + 91.37, + 24.1 + ], + [ + 91.76, + 24.24 + ], + [ + 91.89, + 24.15 + ], + [ + 91.92, + 24.34 + ], + [ + 92.14, + 24.41 + ], + [ + 92.25, + 24.9 + ], + [ + 92.5, + 24.89 + ], + [ + 92.12, + 25.17 + ], + [ + 91.76, + 25.17 + ], + [ + 91.75, + 25.16 + ], + [ + 91.39, + 25.17 + ], + [ + 91.37, + 25.17 + ], + [ + 91.26, + 25.21 + ], + [ + 91.25, + 25.21 + ], + [ + 90.7, + 25.16 + ], + [ + 90.68, + 25.16 + ], + [ + 90.67, + 25.17 + ], + [ + 90.57, + 25.17 + ], + [ + 89.85, + 25.29 + ], + [ + 89.83, + 25.45 + ], + [ + 89.84, + 25.7 + ], + [ + 89.83, + 25.71 + ], + [ + 90.37, + 26.18 + ], + [ + 91.54, + 26.12 + ], + [ + 92.53, + 26.56 + ], + [ + 93.66, + 26.71 + ], + [ + 94.35, + 26.9 + ], + [ + 94.9, + 27.51 + ], + [ + 95.38, + 27.58 + ], + [ + 95.15, + 27.59 + ], + [ + 95.49, + 27.79 + ], + [ + 95.93, + 27.79 + ], + [ + 95.61, + 27.88 + ], + [ + 95.47, + 27.83 + ], + [ + 95.31, + 28.11 + ], + [ + 95.38, + 27.86 + ], + [ + 94.68, + 27.42 + ], + [ + 94.31, + 26.91 + ], + [ + 93.96, + 26.95 + ], + [ + 93.67, + 26.76 + ], + [ + 92.48, + 26.62 + ], + [ + 91.58, + 26.16 + ], + [ + 90.46, + 26.27 + ], + [ + 89.83, + 25.87 + ], + [ + 89.87, + 25.93 + ], + [ + 89.86, + 25.94 + ], + [ + 89.86, + 25.99 + ], + [ + 89.85, + 26 + ], + [ + 89.84, + 26 + ], + [ + 89.78, + 26.07 + ], + [ + 89.78, + 26.08 + ], + [ + 89.74, + 26.15 + ], + [ + 89.74, + 26.16 + ], + [ + 89.69, + 26.17 + ], + [ + 89.7, + 26.17 + ], + [ + 89.69, + 26.18 + ], + [ + 89.68, + 26.21 + ], + [ + 89.68, + 26.22 + ], + [ + 89.65, + 26.23 + ], + [ + 89.63, + 26.23 + ], + [ + 89.63, + 26.21 + ], + [ + 89.65, + 26.19 + ], + [ + 89.6, + 26.16 + ], + [ + 89.63, + 26.13 + ], + [ + 89.54, + 25.97 + ], + [ + 89.55, + 26 + ], + [ + 89.49, + 26 + ], + [ + 89.48, + 26 + ], + [ + 89.45, + 26.01 + ], + [ + 89.43, + 26.02 + ], + [ + 89.43, + 26.04 + ], + [ + 89.27, + 26.09 + ], + [ + 88.96, + 26.46 + ], + [ + 88.99, + 26.25 + ], + [ + 88.98, + 26.24 + ], + [ + 88.95, + 26.24 + ], + [ + 88.97, + 26.28 + ], + [ + 88.95, + 26.28 + ], + [ + 88.93, + 26.27 + ], + [ + 88.93, + 26.29 + ], + [ + 88.93, + 26.3 + ], + [ + 88.92, + 26.28 + ], + [ + 88.79, + 26.31 + ], + [ + 88.76, + 26.31 + ], + [ + 88.75, + 26.31 + ], + [ + 88.74, + 26.3 + ], + [ + 88.75, + 26.29 + ], + [ + 88.74, + 26.29 + ], + [ + 88.73, + 26.29 + ], + [ + 88.67, + 26.26 + ], + [ + 88.7, + 26.29 + ], + [ + 88.71, + 26.29 + ], + [ + 88.7, + 26.29 + ], + [ + 88.72, + 26.31 + ], + [ + 88.73, + 26.31 + ], + [ + 88.74, + 26.32 + ], + [ + 88.75, + 26.32 + ], + [ + 88.74, + 26.33 + ], + [ + 88.68, + 26.38 + ], + [ + 88.68, + 26.41 + ], + [ + 88.6, + 26.47 + ], + [ + 88.6, + 26.46 + ], + [ + 88.59, + 26.46 + ], + [ + 88.59, + 26.45 + ], + [ + 88.42, + 26.59 + ], + [ + 88.4, + 26.63 + ], + [ + 88.4, + 26.62 + ], + [ + 88.39, + 26.62 + ], + [ + 88.39, + 26.61 + ], + [ + 88.38, + 26.6 + ], + [ + 88.38, + 26.59 + ], + [ + 88.36, + 26.59 + ], + [ + 88.37, + 26.58 + ], + [ + 88.36, + 26.55 + ], + [ + 88.36, + 26.54 + ], + [ + 88.36, + 26.53 + ], + [ + 88.35, + 26.52 + ], + [ + 88.33, + 26.5 + ], + [ + 88.33, + 26.49 + ], + [ + 88.4, + 26.48 + ], + [ + 88.41, + 26.48 + ], + [ + 88.51, + 26.41 + ], + [ + 88.51, + 26.35 + ], + [ + 88.51, + 26.36 + ], + [ + 88.44, + 26.35 + ], + [ + 88.43, + 26.33 + ], + [ + 88.33, + 26.21 + ], + [ + 88.09, + 25.91 + ], + [ + 88.43, + 25.67 + ], + [ + 88.45, + 25.64 + ], + [ + 88.46, + 25.64 + ], + [ + 88.47, + 25.59 + ], + [ + 88.65, + 25.48 + ], + [ + 88.66, + 25.48 + ], + [ + 88.72, + 25.5 + ], + [ + 88.77, + 25.5 + ], + [ + 88.76, + 25.51 + ], + [ + 88.76, + 25.52 + ], + [ + 88.76, + 25.53 + ], + [ + 88.77, + 25.52 + ], + [ + 88.78, + 25.52 + ], + [ + 88.79, + 25.52 + ], + [ + 88.8, + 25.52 + ], + [ + 88.81, + 25.52 + ], + [ + 88.84, + 25.38 + ], + [ + 88.86, + 25.35 + ], + [ + 88.99, + 25.31 + ], + [ + 88.99, + 25.3 + ], + [ + 89.01, + 25.3 + ], + [ + 89.01, + 25.26 + ], + [ + 89, + 25.26 + ], + [ + 89, + 25.27 + ], + [ + 88.86, + 25.2 + ], + [ + 88.44, + 25.18 + ], + [ + 88.34, + 24.87 + ], + [ + 88.21, + 24.96 + ], + [ + 88.15, + 24.85 + ], + [ + 88.02, + 24.65 + ], + [ + 88.09, + 24.62 + ], + [ + 88.1, + 24.61 + ], + [ + 88.1, + 24.6 + ], + [ + 88.11, + 24.55 + ], + [ + 88.14, + 24.5 + ], + [ + 88.15, + 24.45 + ], + [ + 88.25, + 24.46 + ], + [ + 88.32, + 24.43 + ], + [ + 88.34, + 24.42 + ], + [ + 88.37, + 24.41 + ], + [ + 88.37, + 24.39 + ], + [ + 88.41, + 24.38 + ], + [ + 88.43, + 24.37 + ], + [ + 88.44, + 24.36 + ], + [ + 88.66, + 24.3 + ], + [ + 88.67, + 24.31 + ], + [ + 88.69, + 24.31 + ], + [ + 88.7, + 24.31 + ], + [ + 88.71, + 24.3 + ], + [ + 88.72, + 24.29 + ], + [ + 88.72, + 24.28 + ], + [ + 88.74, + 24.25 + ], + [ + 88.71, + 24.18 + ], + [ + 88.71, + 24.17 + ], + [ + 88.7, + 24.16 + ], + [ + 88.7, + 24.15 + ], + [ + 88.7, + 24.14 + ], + [ + 88.71, + 24.12 + ], + [ + 88.7, + 24.09 + ], + [ + 88.7, + 24.08 + ], + [ + 88.71, + 24.07 + ], + [ + 88.73, + 24.06 + ], + [ + 88.56, + 23.65 + ], + [ + 88.79, + 23.49 + ], + [ + 88.72, + 23.25 + ], + [ + 89, + 23.21 + ], + [ + 88.84, + 23.01 + ], + [ + 88.93, + 22.65 + ], + [ + 88.93, + 22.64 + ], + [ + 88.93, + 22.62 + ], + [ + 88.95, + 22.62 + ], + [ + 88.95, + 22.6 + ], + [ + 88.94, + 22.59 + ], + [ + 88.94, + 22.58 + ], + [ + 88.95, + 22.55 + ], + [ + 88.96, + 22.54 + ], + [ + 88.97, + 22.51 + ], + [ + 88.98, + 22.48 + ], + [ + 89, + 22.47 + ], + [ + 88.99, + 22.44 + ], + [ + 89, + 22.43 + ], + [ + 88.98, + 22.41 + ], + [ + 88.97, + 22.41 + ], + [ + 88.99, + 22.39 + ], + [ + 88.98, + 22.37 + ], + [ + 88.99, + 22.36 + ], + [ + 88.99, + 22.34 + ], + [ + 88.98, + 22.33 + ], + [ + 89.01, + 22.31 + ], + [ + 89.01, + 22.3 + ], + [ + 89.01, + 22.28 + ], + [ + 89.02, + 22.25 + ], + [ + 89.03, + 22.26 + ], + [ + 89.04, + 22.25 + ], + [ + 89.04, + 22.24 + ], + [ + 89.04, + 22.22 + ], + [ + 89.07, + 22.2 + ], + [ + 88.96, + 22.25 + ], + [ + 88.72, + 22.01 + ], + [ + 88.64, + 22.16 + ], + [ + 88.55, + 21.82 + ], + [ + 88.47, + 22.05 + ], + [ + 88.27, + 21.73 + ], + [ + 88.21, + 22.16 + ], + [ + 88.07, + 22.25 + ], + [ + 87.87, + 22.45 + ], + [ + 88.18, + 22.09 + ], + [ + 87.79, + 21.69 + ], + [ + 87.28, + 21.61 + ], + [ + 87.37, + 21.55 + ], + [ + 86.89, + 21.32 + ], + [ + 86.78, + 21.14 + ], + [ + 86.96, + 20.79 + ], + [ + 86.83, + 20.77 + ], + [ + 86.71, + 20.61 + ], + [ + 86.86, + 20.78 + ], + [ + 87.01, + 20.74 + ], + [ + 86.84, + 20.65 + ], + [ + 87.05, + 20.72 + ], + [ + 86.74, + 20.52 + ], + [ + 86.8, + 20.36 + ], + [ + 86.38, + 19.98 + ], + [ + 86.21, + 20.04 + ], + [ + 86.37, + 19.96 + ], + [ + 85.46, + 19.64 + ], + [ + 85.54, + 19.89 + ], + [ + 85.25, + 19.78 + ], + [ + 85.1, + 19.52 + ], + [ + 85.41, + 19.62 + ], + [ + 84.72, + 19.1 + ], + [ + 84.12, + 18.31 + ], + [ + 82.34, + 17.1 + ], + [ + 82.29, + 16.71 + ], + [ + 81.89, + 16.72 + ], + [ + 82.23, + 16.71 + ], + [ + 82.19, + 16.54 + ], + [ + 82.32, + 16.57 + ], + [ + 81.73, + 16.32 + ], + [ + 81.56, + 16.4 + ], + [ + 81.26, + 16.33 + ], + [ + 81.39, + 16.34 + ], + [ + 80.96, + 15.8 + ], + [ + 80.84, + 16.15 + ], + [ + 80.83, + 15.75 + ], + [ + 80.5, + 15.94 + ], + [ + 80, + 15.22 + ], + [ + 80.2, + 14.58 + ], + [ + 80.12, + 14.07 + ], + [ + 80.26, + 13.58 + ], + [ + 80.11, + 13.81 + ], + [ + 80.17, + 13.62 + ], + [ + 80.05, + 13.58 + ], + [ + 80.36, + 13.31 + ], + [ + 80.15, + 12.45 + ], + [ + 79.89, + 12.07 + ], + [ + 79.78, + 12.12 + ], + [ + 79.88, + 12.06 + ], + [ + 79.76, + 11.57 + ], + [ + 79.88, + 10.3 + ], + [ + 79.28, + 10.25 + ], + [ + 78.9, + 9.49 + ], + [ + 79.19, + 9.28 + ], + [ + 78.84, + 9.26 + ], + [ + 78.2, + 8.96 + ], + [ + 78.07, + 8.37 + ], + [ + 77.75, + 8.18 + ], + [ + 77.32, + 8.12 + ], + [ + 76.55, + 8.9 + ], + [ + 76.68, + 9 + ], + [ + 76.53, + 8.97 + ], + [ + 76.35, + 9.39 + ], + [ + 76.24, + 9.97 + ], + [ + 76.37, + 9.81 + ], + [ + 76.37, + 9.52 + ], + [ + 76.39, + 9.85 + ], + [ + 76.27, + 10.02 + ], + [ + 76.22, + 9.98 + ], + [ + 75.76, + 11.35 + ], + [ + 75.2, + 12.01 + ], + [ + 74.82, + 12.88 + ], + [ + 74.38, + 14.57 + ], + [ + 74.11, + 14.75 + ], + [ + 73.78, + 15.41 + ], + [ + 73.96, + 15.38 + ], + [ + 73.79, + 15.46 + ], + [ + 74, + 15.51 + ], + [ + 73.77, + 15.49 + ], + [ + 73.46, + 16.06 + ], + [ + 73.19, + 17.3 + ], + [ + 73.28, + 17.31 + ], + [ + 72.93, + 18.22 + ], + [ + 73.09, + 18.15 + ], + [ + 73.12, + 18.33 + ], + [ + 72.92, + 18.35 + ], + [ + 72.86, + 18.69 + ], + [ + 72.94, + 18.83 + ], + [ + 73.05, + 18.67 + ], + [ + 73.07, + 18.8 + ], + [ + 72.91, + 18.88 + ], + [ + 73.04, + 18.98 + ], + [ + 73.01, + 19.27 + ], + [ + 72.76, + 19.37 + ], + [ + 72.88, + 19.53 + ], + [ + 72.72, + 19.54 + ], + [ + 72.65, + 19.84 + ], + [ + 72.95, + 20.76 + ], + [ + 72.72, + 21.04 + ], + [ + 72.88, + 21.05 + ], + [ + 72.71, + 21.08 + ], + [ + 72.81, + 21.22 + ], + [ + 72.61, + 21.09 + ], + [ + 72.63, + 21.38 + ], + [ + 72.82, + 21.42 + ], + [ + 72.64, + 21.44 + ], + [ + 72.75, + 21.57 + ], + [ + 72.61, + 21.58 + ], + [ + 72.81, + 21.65 + ], + [ + 72.52, + 21.7 + ], + [ + 72.73, + 21.95 + ], + [ + 72.51, + 21.94 + ], + [ + 72.59, + 22.2 + ], + [ + 72.87, + 22.24 + ], + [ + 72.42, + 22.29 + ], + [ + 72.36, + 22.41 + ], + [ + 72.21, + 22.01 + ], + [ + 72.1, + 22.1 + ], + [ + 72.19, + 21.95 + ], + [ + 72.03, + 22.03 + ], + [ + 72.24, + 21.91 + ], + [ + 72.26, + 21.75 + ], + [ + 72.13, + 21.82 + ], + [ + 72.31, + 21.63 + ], + [ + 72.11, + 21.2 + ], + [ + 70.81, + 20.7 + ], + [ + 70.18, + 21.04 + ], + [ + 68.96, + 22.24 + ], + [ + 69.07, + 22.48 + ], + [ + 69.19, + 22.24 + ], + [ + 70.15, + 22.52 + ], + [ + 70.73, + 23.2 + ], + [ + 70.83, + 23.1 + ], + [ + 71.11, + 23.22 + ], + [ + 71.23, + 23.15 + ], + [ + 71.72, + 23.14 + ], + [ + 71.46, + 23.28 + ], + [ + 71.41, + 23.19 + ], + [ + 71.21, + 23.21 + ], + [ + 71.39, + 23.35 + ], + [ + 71.24, + 23.32 + ], + [ + 71.31, + 23.57 + ], + [ + 71.05, + 23.63 + ], + [ + 71.06, + 23.87 + ], + [ + 71.27, + 24 + ], + [ + 71.16, + 24.22 + ], + [ + 70.58, + 24.28 + ] + ], + [ + [ + 77.74, + 11.94 + ], + [ + 77.83, + 11.79 + ], + [ + 77.89, + 11.91 + ], + [ + 77.74, + 11.94 + ] + ], + [ + [ + 74.84, + 14.18 + ], + [ + 74.76, + 14.09 + ], + [ + 74.88, + 13.98 + ], + [ + 75.09, + 14.01 + ], + [ + 74.84, + 14.18 + ] + ], + [ + [ + 75.72, + 16.4 + ], + [ + 75.74, + 16.27 + ], + [ + 75.94, + 16.37 + ], + [ + 75.72, + 16.4 + ] + ], + [ + [ + 75.15, + 18.19 + ], + [ + 75.06, + 18.25 + ], + [ + 75.06, + 18.13 + ], + [ + 75.15, + 18.19 + ] + ], + [ + [ + 76.28, + 15.28 + ], + [ + 76.09, + 15.16 + ], + [ + 76.33, + 15.17 + ], + [ + 76.28, + 15.28 + ] + ], + [ + [ + 77.99, + 16.13 + ], + [ + 78.16, + 15.88 + ], + [ + 78.31, + 15.99 + ], + [ + 78.46, + 15.92 + ], + [ + 78.34, + 16.08 + ], + [ + 78.15, + 15.96 + ], + [ + 77.99, + 16.13 + ] + ], + [ + [ + 78.12, + 19.06 + ], + [ + 78.05, + 18.86 + ], + [ + 78.39, + 18.98 + ], + [ + 78.12, + 19.06 + ] + ], + [ + [ + 76.3, + 16.25 + ], + [ + 76.11, + 16.17 + ], + [ + 76.29, + 16.12 + ], + [ + 76.3, + 16.25 + ] + ], + [ + [ + 75.03, + 19.6 + ], + [ + 75.19, + 19.58 + ], + [ + 75.19, + 19.44 + ], + [ + 75.39, + 19.52 + ], + [ + 75.21, + 19.62 + ], + [ + 75.03, + 19.6 + ] + ], + [ + [ + 74.16, + 21.94 + ], + [ + 74.25, + 21.92 + ], + [ + 74.16, + 21.95 + ], + [ + 74.14, + 21.96 + ], + [ + 74.07, + 21.93 + ], + [ + 74.16, + 21.95 + ], + [ + 74.16, + 21.94 + ] + ], + [ + [ + 73.82, + 23.36 + ], + [ + 73.92, + 23.29 + ], + [ + 74, + 23.4 + ], + [ + 73.82, + 23.36 + ] + ], + [ + [ + 76.82, + 22.31 + ], + [ + 76.82, + 22.41 + ], + [ + 76.61, + 22.35 + ], + [ + 76.6, + 21.94 + ], + [ + 76.82, + 22.08 + ], + [ + 76.66, + 22.15 + ], + [ + 76.82, + 22.31 + ] + ], + [ + [ + 75.63, + 24.61 + ], + [ + 75.41, + 24.45 + ], + [ + 75.63, + 24.43 + ], + [ + 75.63, + 24.61 + ] + ], + [ + [ + 75.43, + 24.41 + ], + [ + 75.37, + 24.23 + ], + [ + 75.54, + 24.42 + ], + [ + 75.43, + 24.41 + ] + ], + [ + [ + 75.56, + 24.89 + ], + [ + 75.39, + 24.73 + ], + [ + 75.66, + 24.77 + ], + [ + 75.56, + 24.89 + ] + ], + [ + [ + 76.16, + 31.93 + ], + [ + 75.98, + 32.13 + ], + [ + 75.97, + 31.95 + ], + [ + 76.16, + 31.93 + ] + ], + [ + [ + 83.54, + 21.76 + ], + [ + 83.8, + 21.49 + ], + [ + 84.01, + 21.6 + ], + [ + 83.98, + 21.72 + ], + [ + 83.89, + 21.6 + ], + [ + 83.54, + 21.76 + ] + ], + [ + [ + 79.54, + 11.19 + ], + [ + 79.48, + 11.17 + ], + [ + 79.46, + 11.16 + ], + [ + 79.48, + 11.16 + ], + [ + 79.48, + 11.17 + ], + [ + 79.54, + 11.19 + ] + ], + [ + [ + 79.94, + 22.96 + ], + [ + 79.91, + 22.84 + ], + [ + 80.16, + 22.74 + ], + [ + 79.94, + 22.96 + ] + ], + [ + [ + 80.16, + 16.65 + ], + [ + 80.18, + 16.63 + ], + [ + 80.59, + 16.51 + ], + [ + 80.31, + 16.65 + ], + [ + 80.16, + 16.65 + ] + ], + [ + [ + 80.37, + 18.54 + ], + [ + 80.49, + 18.26 + ], + [ + 80.75, + 18.12 + ], + [ + 80.37, + 18.54 + ] + ], + [ + [ + 80.82, + 18.04 + ], + [ + 80.73, + 18.1 + ], + [ + 80.88, + 17.86 + ], + [ + 80.82, + 18.04 + ] + ], + [ + [ + 82.78, + 24.17 + ], + [ + 82.63, + 24.01 + ], + [ + 83.04, + 24.17 + ], + [ + 82.78, + 24.17 + ] + ], + [ + [ + 85.03, + 21.27 + ], + [ + 85.14, + 21.45 + ], + [ + 84.95, + 21.35 + ], + [ + 85, + 21.6 + ], + [ + 84.86, + 21.37 + ], + [ + 85.03, + 21.27 + ] + ], + [ + [ + 84.11, + 24.85 + ], + [ + 83.96, + 24.56 + ], + [ + 83.58, + 24.51 + ], + [ + 83.85, + 24.52 + ], + [ + 83.86, + 24.41 + ], + [ + 83.86, + 24.52 + ], + [ + 84, + 24.57 + ], + [ + 84.11, + 24.85 + ] + ], + [ + [ + 78.21, + 24.77 + ], + [ + 78.23, + 24.54 + ], + [ + 78.32, + 24.65 + ], + [ + 78.21, + 24.77 + ] + ], + [ + [ + 87.71, + 25.3 + ], + [ + 87.96, + 24.71 + ], + [ + 87.98, + 25.01 + ], + [ + 87.71, + 25.3 + ] + ], + [ + [ + 84.36, + 25.94 + ], + [ + 84.22, + 26.01 + ], + [ + 84.59, + 25.82 + ], + [ + 84.36, + 25.94 + ] + ], + [ + [ + 85.95, + 25.4 + ], + [ + 86.04, + 25.3 + ], + [ + 86.46, + 25.34 + ], + [ + 86.04, + 25.33 + ], + [ + 85.84, + 25.53 + ], + [ + 85.45, + 25.49 + ], + [ + 85.95, + 25.4 + ] + ], + [ + [ + 96.06, + 27.95 + ], + [ + 96.05, + 27.84 + ], + [ + 96.35, + 27.9 + ], + [ + 96.06, + 27.86 + ], + [ + 96.06, + 27.95 + ] + ], + [ + [ + 86.85, + 25.32 + ], + [ + 86.73, + 25.26 + ], + [ + 87.18, + 25.3 + ], + [ + 86.85, + 25.32 + ] + ], + [ + [ + 84.08, + 25.74 + ], + [ + 83.98, + 25.59 + ], + [ + 84.34, + 25.7 + ], + [ + 84.08, + 25.74 + ] + ] + ], + [ + [ + [ + 86.81, + 26.44 + ], + [ + 86.82, + 26.44 + ], + [ + 86.81, + 26.43 + ], + [ + 86.81, + 26.44 + ] + ] + ], + [ + [ + [ + 93.88, + 26.8 + ], + [ + 93.77, + 26.77 + ], + [ + 93.98, + 26.84 + ], + [ + 93.88, + 26.8 + ] + ] + ], + [ + [ + [ + 88.82, + 21.9 + ], + [ + 88.8, + 21.79 + ], + [ + 88.7, + 21.85 + ], + [ + 88.82, + 21.9 + ] + ] + ], + [ + [ + [ + 88.04, + 21.68 + ], + [ + 88.14, + 21.88 + ], + [ + 88.16, + 21.65 + ], + [ + 88.04, + 21.68 + ] + ] + ], + [ + [ + [ + 72.82, + 19.23 + ], + [ + 72.86, + 19.32 + ], + [ + 73, + 19.22 + ], + [ + 72.8, + 18.88 + ], + [ + 72.82, + 19.23 + ] + ] + ], + [ + [ + [ + 80.83, + 15.71 + ], + [ + 80.86, + 15.82 + ], + [ + 80.9, + 15.75 + ], + [ + 80.93, + 15.72 + ], + [ + 80.83, + 15.71 + ] + ] + ], + [ + [ + [ + 80.9, + 15.76 + ], + [ + 80.89, + 15.85 + ], + [ + 81.01, + 15.76 + ], + [ + 80.94, + 15.72 + ], + [ + 80.9, + 15.76 + ] + ] + ], + [ + [ + [ + 92.67, + 12.9 + ], + [ + 92.71, + 12.99 + ], + [ + 92.67, + 12.78 + ], + [ + 92.67, + 12.9 + ] + ] + ], + [ + [ + [ + 92.39, + 10.56 + ], + [ + 92.37, + 10.78 + ], + [ + 92.52, + 10.9 + ], + [ + 92.57, + 10.58 + ], + [ + 92.39, + 10.56 + ] + ] + ], + [ + [ + [ + 92.61, + 11.56 + ], + [ + 92.51, + 11.85 + ], + [ + 92.77, + 12.23 + ], + [ + 92.72, + 12.83 + ], + [ + 92.84, + 13.41 + ], + [ + 93.03, + 13.58 + ], + [ + 93.03, + 13.08 + ], + [ + 92.85, + 12.93 + ], + [ + 92.97, + 12.5 + ], + [ + 92.82, + 12.43 + ], + [ + 92.71, + 11.48 + ], + [ + 92.61, + 11.56 + ] + ] + ], + [ + [ + [ + 93.65, + 7.37 + ], + [ + 93.76, + 7.37 + ], + [ + 93.65, + 7.24 + ], + [ + 93.65, + 7.37 + ] + ] + ], + [ + [ + [ + 93.67, + 7 + ], + [ + 93.67, + 7.17 + ], + [ + 93.84, + 7.24 + ], + [ + 93.9, + 6.8 + ], + [ + 93.67, + 7 + ] + ] + ] + ] + }, + "properties": { + "A3": "IND" + } + }, + { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + -14.92, + 11.07 + ], + [ + -14.66, + 11.5 + ], + [ + -13.71, + 11.71 + ], + [ + -13.7, + 12.01 + ], + [ + -13.93, + 12.21 + ], + [ + -13.81, + 12.26 + ], + [ + -13.8, + 12.25 + ], + [ + -13.79, + 12.25 + ], + [ + -13.72, + 12.25 + ], + [ + -13.71, + 12.26 + ], + [ + -13.71, + 12.68 + ], + [ + -13.32, + 12.64 + ], + [ + -13.29, + 12.64 + ], + [ + -13.29, + 12.65 + ], + [ + -13.28, + 12.66 + ], + [ + -13.27, + 12.66 + ], + [ + -13.27, + 12.65 + ], + [ + -13.26, + 12.65 + ], + [ + -13.23, + 12.64 + ], + [ + -13.2, + 12.64 + ], + [ + -13.16, + 12.64 + ], + [ + -13.15, + 12.64 + ], + [ + -13.14, + 12.64 + ], + [ + -13.13, + 12.64 + ], + [ + -13.12, + 12.64 + ], + [ + -13.1, + 12.63 + ], + [ + -13.09, + 12.63 + ], + [ + -13.08, + 12.64 + ], + [ + -13.07, + 12.64 + ], + [ + -13.06, + 12.48 + ], + [ + -12.89, + 12.56 + ], + [ + -12.55, + 12.37 + ], + [ + -12.36, + 12.31 + ], + [ + -12.29, + 12.34 + ], + [ + -11.38, + 12.41 + ], + [ + -11.44, + 12.28 + ], + [ + -11.45, + 12.28 + ], + [ + -11.45, + 12.27 + ], + [ + -11.45, + 12.26 + ], + [ + -11.23, + 12 + ], + [ + -10.93, + 12.23 + ], + [ + -10.66, + 11.9 + ], + [ + -10.34, + 12.23 + ], + [ + -9.69, + 12.03 + ], + [ + -9.65, + 12.17 + ], + [ + -9.34, + 12.25 + ], + [ + -9.41, + 12.46 + ], + [ + -9.25, + 12.51 + ], + [ + -8.95, + 12.36 + ], + [ + -8.88, + 12.04 + ], + [ + -8.78, + 11.97 + ], + [ + -8.78, + 11.94 + ], + [ + -8.79, + 11.86 + ], + [ + -8.82, + 11.82 + ], + [ + -8.85, + 11.65 + ], + [ + -8.73, + 11.62 + ], + [ + -8.69, + 11.63 + ], + [ + -8.66, + 11.57 + ], + [ + -8.57, + 11.46 + ], + [ + -8.54, + 11.48 + ], + [ + -8.53, + 11.49 + ], + [ + -8.52, + 11.48 + ], + [ + -8.39, + 11.37 + ], + [ + -8.39, + 11.33 + ], + [ + -8.37, + 11.33 + ], + [ + -8.37, + 11.28 + ], + [ + -8.41, + 11.28 + ], + [ + -8.42, + 11.28 + ], + [ + -8.44, + 11.29 + ], + [ + -8.47, + 11.29 + ], + [ + -8.48, + 11.28 + ], + [ + -8.48, + 11.25 + ], + [ + -8.48, + 11.24 + ], + [ + -8.48, + 11.23 + ], + [ + -8.49, + 11.22 + ], + [ + -8.52, + 11.22 + ], + [ + -8.53, + 11.22 + ], + [ + -8.55, + 11.22 + ], + [ + -8.55, + 11.21 + ], + [ + -8.56, + 11.18 + ], + [ + -8.67, + 10.96 + ], + [ + -8.29, + 11.02 + ], + [ + -8.33, + 10.59 + ], + [ + -7.99, + 10.34 + ], + [ + -7.98, + 10.17 + ], + [ + -8.16, + 9.95 + ], + [ + -8.14, + 9.53 + ], + [ + -7.85, + 9.42 + ], + [ + -7.92, + 9.21 + ], + [ + -7.73, + 9.07 + ], + [ + -7.97, + 8.83 + ], + [ + -7.69, + 8.65 + ], + [ + -7.64, + 8.38 + ], + [ + -7.82, + 8.5 + ], + [ + -8.24, + 8.46 + ], + [ + -8.24, + 8.23 + ], + [ + -7.98, + 8.19 + ], + [ + -7.94, + 8.02 + ], + [ + -8.06, + 8.04 + ], + [ + -8.21, + 7.54 + ], + [ + -8.47, + 7.56 + ], + [ + -8.68, + 7.7 + ], + [ + -8.84, + 7.28 + ], + [ + -9.11, + 7.19 + ], + [ + -9.21, + 7.39 + ], + [ + -9.45, + 7.41 + ], + [ + -9.47, + 7.38 + ], + [ + -9.47, + 7.4 + ], + [ + -9.47, + 7.41 + ], + [ + -9.47, + 7.42 + ], + [ + -9.47, + 7.43 + ], + [ + -9.45, + 7.45 + ], + [ + -9.43, + 7.47 + ], + [ + -9.43, + 7.48 + ], + [ + -9.41, + 7.51 + ], + [ + -9.41, + 7.52 + ], + [ + -9.48, + 8.35 + ], + [ + -9.77, + 8.55 + ], + [ + -9.89, + 8.49 + ], + [ + -9.89, + 8.5 + ], + [ + -10.17, + 8.51 + ], + [ + -10.19, + 8.5 + ], + [ + -10.2, + 8.5 + ], + [ + -10.28, + 8.48 + ], + [ + -10.3, + 8.49 + ], + [ + -10.3, + 8.5 + ], + [ + -10.31, + 8.5 + ], + [ + -10.35, + 8.49 + ], + [ + -10.39, + 8.47 + ], + [ + -10.44, + 8.41 + ], + [ + -10.44, + 8.4 + ], + [ + -10.46, + 8.39 + ], + [ + -10.48, + 8.37 + ], + [ + -10.49, + 8.35 + ], + [ + -10.5, + 8.34 + ], + [ + -10.51, + 8.34 + ], + [ + -10.57, + 8.32 + ], + [ + -10.59, + 8.34 + ], + [ + -10.61, + 8.34 + ], + [ + -10.62, + 8.34 + ], + [ + -10.63, + 8.34 + ], + [ + -10.64, + 8.35 + ], + [ + -10.68, + 8.32 + ], + [ + -10.69, + 8.3 + ], + [ + -10.7, + 8.28 + ], + [ + -10.66, + 8.38 + ], + [ + -10.61, + 8.54 + ], + [ + -10.62, + 8.54 + ], + [ + -10.59, + 8.55 + ], + [ + -10.59, + 8.56 + ], + [ + -10.57, + 8.58 + ], + [ + -10.57, + 8.6 + ], + [ + -10.51, + 8.62 + ], + [ + -10.5, + 8.62 + ], + [ + -10.57, + 9.05 + ], + [ + -10.73, + 9.08 + ], + [ + -10.66, + 9.31 + ], + [ + -11.21, + 10 + ], + [ + -12.44, + 9.88 + ], + [ + -12.58, + 9.64 + ], + [ + -12.59, + 9.6 + ], + [ + -12.62, + 9.6 + ], + [ + -12.63, + 9.56 + ], + [ + -12.65, + 9.54 + ], + [ + -12.65, + 9.53 + ], + [ + -12.66, + 9.49 + ], + [ + -12.68, + 9.43 + ], + [ + -12.68, + 9.41 + ], + [ + -12.69, + 9.41 + ], + [ + -12.74, + 9.4 + ], + [ + -12.75, + 9.4 + ], + [ + -12.75, + 9.36 + ], + [ + -12.77, + 9.34 + ], + [ + -12.78, + 9.32 + ], + [ + -12.79, + 9.31 + ], + [ + -12.87, + 9.29 + ], + [ + -12.88, + 9.29 + ], + [ + -13.08, + 9.05 + ], + [ + -13.3, + 9.04 + ], + [ + -13.27, + 9.41 + ], + [ + -13.43, + 9.27 + ], + [ + -13.55, + 9.64 + ], + [ + -13.72, + 9.51 + ], + [ + -13.5, + 9.78 + ], + [ + -13.62, + 9.77 + ], + [ + -13.62, + 9.94 + ], + [ + -13.74, + 9.82 + ], + [ + -13.67, + 9.99 + ], + [ + -13.82, + 9.84 + ], + [ + -14.03, + 10.16 + ], + [ + -14.22, + 10.11 + ], + [ + -14.14, + 10.2 + ], + [ + -14.19, + 10.29 + ], + [ + -14.19, + 10.18 + ], + [ + -14.31, + 10.19 + ], + [ + -14.29, + 10.28 + ], + [ + -14.45, + 10.21 + ], + [ + -14.45, + 10.36 + ], + [ + -14.64, + 10.47 + ], + [ + -14.52, + 10.56 + ], + [ + -14.67, + 10.51 + ], + [ + -14.5, + 10.59 + ], + [ + -14.62, + 10.63 + ], + [ + -14.51, + 10.85 + ], + [ + -14.74, + 10.7 + ], + [ + -14.66, + 10.91 + ], + [ + -14.8, + 10.82 + ], + [ + -14.82, + 10.93 + ], + [ + -14.63, + 11.01 + ], + [ + -14.69, + 11.11 + ], + [ + -14.87, + 10.96 + ], + [ + -14.92, + 11.07 + ] + ] + ], + [ + [ + [ + -15.07, + 10.88 + ], + [ + -14.9, + 10.93 + ], + [ + -14.96, + 10.77 + ], + [ + -15.07, + 10.88 + ] + ] + ] + ] + }, + "properties": { + "A3": "GIN" + } + }, + { + "type": "Feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + 120.59, + 22.37 + ], + [ + 120.32, + 22.52 + ], + [ + 120.18, + 23 + ], + [ + 120.04, + 23.05 + ], + [ + 120.17, + 23.81 + ], + [ + 121.04, + 25.03 + ], + [ + 121.58, + 25.3 + ], + [ + 122, + 25 + ], + [ + 121.83, + 24.84 + ], + [ + 121.88, + 24.53 + ], + [ + 121.63, + 24.15 + ], + [ + 121.41, + 23.12 + ], + [ + 120.95, + 22.53 + ], + [ + 120.87, + 21.9 + ], + [ + 120.71, + 21.93 + ], + [ + 120.59, + 22.37 + ] + ] + ] + }, + "properties": { + "A3": "TWN" + } + }, + { + "type": "Feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + 33.9, + 34.97 + ], + [ + 33.89, + 35.12 + ], + [ + 33.68, + 35.06 + ], + [ + 33.6, + 34.82 + ], + [ + 32.7, + 34.64 + ], + [ + 32.4, + 34.75 + ], + [ + 32.27, + 35.07 + ], + [ + 32.88, + 35.16 + ], + [ + 32.92, + 35.4 + ], + [ + 33.65, + 35.36 + ], + [ + 34.59, + 35.7 + ], + [ + 33.94, + 35.3 + ], + [ + 34.09, + 34.96 + ], + [ + 33.9, + 34.97 + ] + ] + ] + }, + "properties": { + "A3": "CYP" + } + }, + { + "type": "Feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + 24, + 19.5 + ], + [ + 24, + 20 + ], + [ + 25, + 20 + ], + [ + 25, + 22 + ], + [ + 31.3, + 22 + ], + [ + 31.16, + 21.64 + ], + [ + 31.38, + 21.96 + ], + [ + 31.47, + 22.14 + ], + [ + 31.4, + 22 + ], + [ + 33.18, + 22 + ], + [ + 33.57, + 21.72 + ], + [ + 34, + 21.77 + ], + [ + 34.08, + 22 + ], + [ + 36.88, + 22 + ], + [ + 36.98, + 21.4 + ], + [ + 37.32, + 21.07 + ], + [ + 37.26, + 20.99 + ], + [ + 37.1, + 21.2 + ], + [ + 37.22, + 19.61 + ], + [ + 37.41, + 18.87 + ], + [ + 38.58, + 18.02 + ], + [ + 38.26, + 17.53 + ], + [ + 37.52, + 17.33 + ], + [ + 37.4, + 17.05 + ], + [ + 37, + 17.07 + ], + [ + 36.97, + 16.27 + ], + [ + 36.43, + 15.17 + ], + [ + 36.56, + 14.26 + ], + [ + 36.14, + 12.71 + ], + [ + 35.7, + 12.67 + ], + [ + 35.08, + 11.8 + ], + [ + 34.96, + 11.24 + ], + [ + 34.89, + 11.24 + ], + [ + 34.97, + 11.24 + ], + [ + 34.86, + 10.74 + ], + [ + 34.59, + 10.89 + ], + [ + 34.28, + 10.54 + ], + [ + 34.35, + 10.23 + ], + [ + 34.11, + 9.5 + ], + [ + 33.88, + 9.5 + ], + [ + 33.97, + 10.15 + ], + [ + 33.25, + 10.78 + ], + [ + 33.14, + 11.44 + ], + [ + 33.29, + 12.22 + ], + [ + 32.74, + 12.24 + ], + [ + 32.73, + 12.23 + ], + [ + 32.74, + 12.22 + ], + [ + 32.74, + 12.18 + ], + [ + 32.74, + 12.16 + ], + [ + 32.74, + 12.14 + ], + [ + 32.75, + 12.11 + ], + [ + 32.75, + 12.1 + ], + [ + 32.76, + 12.07 + ], + [ + 32.75, + 12.06 + ], + [ + 32.75, + 12.04 + ], + [ + 32.76, + 12.03 + ], + [ + 32.76, + 12.01 + ], + [ + 32.76, + 11.98 + ], + [ + 32.75, + 11.97 + ], + [ + 32.17, + 11.95 + ], + [ + 32.39, + 11.71 + ], + [ + 32.47, + 11.04 + ], + [ + 31.99, + 10.65 + ], + [ + 31.33, + 9.78 + ], + [ + 30.85, + 9.75 + ], + [ + 30.84, + 9.75 + ], + [ + 30, + 10.29 + ], + [ + 29.97, + 10.29 + ], + [ + 29.94, + 10.29 + ], + [ + 29.89, + 10.26 + ], + [ + 29.84, + 10.24 + ], + [ + 29.54, + 10.08 + ], + [ + 29.54, + 9.75 + ], + [ + 29, + 9.67 + ], + [ + 28.74, + 9.35 + ], + [ + 28.04, + 9.35 + ], + [ + 27.91, + 9.61 + ], + [ + 26.39, + 9.56 + ], + [ + 25.93, + 10.18 + ], + [ + 25.93, + 10.39 + ], + [ + 25.76, + 10.44 + ], + [ + 25.1, + 10.32 + ], + [ + 25.05, + 10.02 + ], + [ + 24.84, + 9.82 + ], + [ + 24.55, + 9.23 + ], + [ + 24.58, + 8.91 + ], + [ + 24.26, + 8.69 + ], + [ + 23.51, + 8.72 + ], + [ + 23.58, + 8.99 + ], + [ + 23.45, + 9.03 + ], + [ + 23.65, + 9.28 + ], + [ + 23.7, + 9.67 + ], + [ + 23.31, + 10.46 + ], + [ + 22.88, + 10.92 + ], + [ + 22.97, + 11.28 + ], + [ + 22.56, + 11.62 + ], + [ + 22.64, + 12.07 + ], + [ + 22.48, + 12.03 + ], + [ + 22.47, + 12.62 + ], + [ + 22.22, + 12.75 + ], + [ + 21.95, + 12.64 + ], + [ + 21.81, + 12.81 + ], + [ + 22.29, + 13.34 + ], + [ + 22.23, + 13.47 + ], + [ + 22.23, + 13.48 + ], + [ + 22.08, + 13.78 + ], + [ + 22.55, + 14.12 + ], + [ + 22.38, + 14.54 + ], + [ + 22.7, + 14.69 + ], + [ + 22.67, + 14.86 + ], + [ + 22.68, + 14.87 + ], + [ + 23.01, + 15.23 + ], + [ + 22.93, + 15.55 + ], + [ + 23.09, + 15.69 + ], + [ + 23.12, + 15.72 + ], + [ + 24, + 15.7 + ], + [ + 24, + 19.5 + ] + ], + [ + [ + 32.37, + 18.98 + ], + [ + 32.08, + 18.96 + ], + [ + 32, + 18.65 + ], + [ + 32.37, + 18.98 + ] + ], + [ + [ + 32.48, + 15.26 + ], + [ + 32.41, + 14.94 + ], + [ + 32.17, + 14.76 + ], + [ + 32.14, + 14.43 + ], + [ + 32.43, + 13.77 + ], + [ + 32.18, + 14.37 + ], + [ + 32.19, + 14.65 + ], + [ + 32.44, + 14.94 + ], + [ + 32.48, + 15.26 + ] + ], + [ + [ + 33.75, + 13.33 + ], + [ + 33.77, + 13.33 + ], + [ + 33.69, + 13.41 + ], + [ + 33.75, + 13.33 + ] + ] + ] + }, + "properties": { + "A3": "SDN" + } + }, + { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + 73.77, + -53.12 + ], + [ + 73.49, + -53.19 + ], + [ + 73.25, + -52.99 + ], + [ + 73.77, + -53.12 + ] + ] + ], + [ + [ + [ + 105.7, + -10.43 + ], + [ + 105.67, + -10.57 + ], + [ + 105.53, + -10.51 + ], + [ + 105.7, + -10.43 + ] + ] + ], + [ + [ + [ + 146.29, + -18.33 + ], + [ + 146.3, + -18.49 + ], + [ + 146.07, + -18.25 + ], + [ + 146.23, + -18.29 + ], + [ + 146.23, + -18.2 + ], + [ + 146.29, + -18.33 + ] + ] + ], + [ + [ + [ + 142.2, + -10.6 + ], + [ + 142.28, + -10.71 + ], + [ + 142.15, + -10.77 + ], + [ + 142.2, + -10.6 + ] + ] + ], + [ + [ + [ + 132.56, + -11.03 + ], + [ + 132.59, + -11.36 + ], + [ + 132.47, + -11.15 + ], + [ + 132.56, + -11.03 + ] + ] + ], + [ + [ + [ + 136.14, + -13.47 + ], + [ + 136.14, + -13.57 + ], + [ + 136.09, + -13.36 + ], + [ + 136.14, + -13.47 + ] + ] + ], + [ + [ + [ + 136.29, + -13.74 + ], + [ + 136.11, + -13.82 + ], + [ + 136.2, + -13.67 + ], + [ + 136.29, + -13.74 + ] + ] + ], + [ + [ + [ + 136.44, + -14.2 + ], + [ + 136.33, + -14.25 + ], + [ + 136.42, + -13.82 + ], + [ + 136.69, + -13.65 + ], + [ + 136.73, + -13.84 + ], + [ + 136.91, + -13.77 + ], + [ + 136.7, + -14.12 + ], + [ + 136.96, + -14.17 + ], + [ + 136.95, + -14.3 + ], + [ + 136.44, + -14.2 + ] + ] + ], + [ + [ + [ + 136.65, + -11.27 + ], + [ + 136.47, + -11.45 + ], + [ + 136.76, + -11.02 + ], + [ + 136.65, + -11.27 + ] + ] + ], + [ + [ + [ + 139.19, + -16.67 + ], + [ + 139.31, + -16.46 + ], + [ + 139.55, + -16.39 + ], + [ + 139.7, + -16.48 + ], + [ + 139.55, + -16.46 + ], + [ + 139.31, + -16.73 + ], + [ + 139.19, + -16.67 + ] + ] + ], + [ + [ + [ + 139.55, + -17.1 + ], + [ + 139.39, + -17.08 + ], + [ + 139.49, + -16.98 + ], + [ + 139.55, + -17.1 + ] + ] + ], + [ + [ + [ + 136.94, + -15.71 + ], + [ + 137.07, + -15.63 + ], + [ + 137.07, + -15.85 + ], + [ + 136.94, + -15.71 + ] + ] + ], + [ + [ + [ + 137.6, + -36 + ], + [ + 136.7, + -36.06 + ], + [ + 136.53, + -35.88 + ], + [ + 136.59, + -35.75 + ], + [ + 137.62, + -35.56 + ], + [ + 137.58, + -35.73 + ], + [ + 137.78, + -35.72 + ], + [ + 137.76, + -35.84 + ], + [ + 137.91, + -35.72 + ], + [ + 138.13, + -35.8 + ], + [ + 137.6, + -36 + ] + ] + ], + [ + [ + [ + 153.08, + -25.79 + ], + [ + 152.94, + -25.59 + ], + [ + 152.99, + -25.22 + ], + [ + 153.23, + -24.98 + ], + [ + 153.12, + -24.82 + ], + [ + 153.26, + -24.7 + ], + [ + 153.36, + -25.01 + ], + [ + 153.08, + -25.79 + ] + ] + ], + [ + [ + [ + 153.41, + -27.57 + ], + [ + 153.44, + -27.4 + ], + [ + 153.54, + -27.43 + ], + [ + 153.42, + -27.74 + ], + [ + 153.41, + -27.57 + ] + ] + ], + [ + [ + [ + 151.18, + -23.74 + ], + [ + 151.02, + -23.45 + ], + [ + 151.24, + -23.49 + ], + [ + 151.32, + -23.76 + ], + [ + 151.18, + -23.74 + ] + ] + ], + [ + [ + [ + 147.96, + -39.76 + ], + [ + 148.29, + -39.97 + ], + [ + 148.31, + -40.22 + ], + [ + 148.05, + -40.25 + ], + [ + 147.76, + -39.89 + ], + [ + 147.96, + -39.76 + ] + ] + ], + [ + [ + [ + 148.41, + -40.37 + ], + [ + 148.4, + -40.49 + ], + [ + 147.98, + -40.4 + ], + [ + 148.41, + -40.37 + ] + ] + ], + [ + [ + [ + 145.27, + -38.38 + ], + [ + 145.3, + -38.28 + ], + [ + 145.5, + -38.35 + ], + [ + 145.27, + -38.38 + ] + ] + ], + [ + [ + [ + 144.96, + -40.63 + ], + [ + 145.07, + -40.72 + ], + [ + 144.89, + -40.74 + ], + [ + 144.96, + -40.63 + ] + ] + ], + [ + [ + [ + 144.05, + -39.64 + ], + [ + 144.13, + -39.98 + ], + [ + 143.92, + -40.16 + ], + [ + 143.84, + -39.72 + ], + [ + 144.05, + -39.64 + ] + ] + ], + [ + [ + [ + 144.72, + -40.5 + ], + [ + 144.79, + -40.4 + ], + [ + 144.76, + -40.61 + ], + [ + 144.72, + -40.5 + ] + ] + ], + [ + [ + [ + 147.4, + -43.24 + ], + [ + 147.32, + -43.5 + ], + [ + 147.14, + -43.49 + ], + [ + 147.35, + -43.06 + ], + [ + 147.4, + -43.24 + ] + ] + ], + [ + [ + [ + 147.93, + -43.01 + ], + [ + 148.01, + -43.22 + ], + [ + 147.86, + -43.11 + ], + [ + 147.79, + -43.24 + ], + [ + 147.62, + -43.01 + ], + [ + 147.86, + -43.06 + ], + [ + 147.91, + -42.84 + ], + [ + 147.93, + -43.01 + ] + ] + ], + [ + [ + [ + 147.3, + -40.96 + ], + [ + 147.84, + -40.89 + ], + [ + 147.97, + -40.74 + ], + [ + 148.35, + -40.99 + ], + [ + 148.36, + -42.19 + ], + [ + 148.3, + -42.28 + ], + [ + 148.3, + -42.13 + ], + [ + 148.08, + -42.11 + ], + [ + 147.79, + -42.9 + ], + [ + 147.45, + -42.76 + ], + [ + 147.61, + -42.85 + ], + [ + 147.42, + -43.05 + ], + [ + 147.48, + -42.91 + ], + [ + 147.16, + -42.75 + ], + [ + 147.34, + -43.05 + ], + [ + 147.17, + -43.28 + ], + [ + 147, + -43.02 + ], + [ + 147.1, + -43.29 + ], + [ + 146.83, + -43.64 + ], + [ + 146.56, + -43.47 + ], + [ + 146.03, + -43.57 + ], + [ + 145.92, + -43.38 + ], + [ + 146.23, + -43.32 + ], + [ + 146, + -43.34 + ], + [ + 145.94, + -43.15 + ], + [ + 145.84, + -43.32 + ], + [ + 145.49, + -42.99 + ], + [ + 145.17, + -42.2 + ], + [ + 145.47, + -42.53 + ], + [ + 145.56, + -42.36 + ], + [ + 145.33, + -42.15 + ], + [ + 145.22, + -42.22 + ], + [ + 144.61, + -41.01 + ], + [ + 144.73, + -40.64 + ], + [ + 144.77, + -40.74 + ], + [ + 145.12, + -40.84 + ], + [ + 145.26, + -40.71 + ], + [ + 145.68, + -40.96 + ], + [ + 146.39, + -41.24 + ], + [ + 146.53, + -41.12 + ], + [ + 146.61, + -41.26 + ], + [ + 146.77, + -41.08 + ], + [ + 147.12, + -41.44 + ], + [ + 146.79, + -41.05 + ], + [ + 147.3, + -40.96 + ], + [ + 147.3, + -41 + ], + [ + 147.3, + -41.01 + ], + [ + 147.3, + -41 + ], + [ + 147.3, + -40.96 + ] + ], + [ + [ + 146.68, + -41.8 + ], + [ + 146.78, + -41.98 + ], + [ + 146.83, + -41.84 + ], + [ + 146.68, + -41.8 + ] + ], + [ + [ + 146.25, + -42.75 + ], + [ + 146.21, + -42.6 + ], + [ + 146.12, + -42.75 + ], + [ + 146.25, + -42.75 + ] + ] + ], + [ + [ + [ + 124.55, + -15.41 + ], + [ + 124.57, + -15.25 + ], + [ + 124.66, + -15.4 + ], + [ + 124.55, + -15.41 + ] + ] + ], + [ + [ + [ + 130.5, + -11.61 + ], + [ + 130.37, + -11.17 + ], + [ + 130.8, + -11.58 + ], + [ + 130.71, + -11.38 + ], + [ + 131.03, + -11.41 + ], + [ + 131.15, + -11.25 + ], + [ + 131.22, + -11.44 + ], + [ + 131.25, + -11.19 + ], + [ + 131.54, + -11.41 + ], + [ + 131.47, + -11.61 + ], + [ + 130.97, + -11.94 + ], + [ + 130.5, + -11.61 + ] + ] + ], + [ + [ + [ + 130.54, + -11.82 + ], + [ + 130.02, + -11.8 + ], + [ + 130.08, + -11.67 + ], + [ + 130.31, + -11.73 + ], + [ + 130.15, + -11.48 + ], + [ + 130.25, + -11.35 + ], + [ + 130.4, + -11.42 + ], + [ + 130.34, + -11.6 + ], + [ + 130.64, + -11.75 + ], + [ + 130.54, + -11.82 + ] + ] + ], + [ + [ + [ + 115.46, + -20.79 + ], + [ + 115.32, + -20.89 + ], + [ + 115.43, + -20.67 + ], + [ + 115.46, + -20.79 + ] + ] + ], + [ + [ + [ + 112.92, + -25.58 + ], + [ + 113.02, + -25.5 + ], + [ + 113.22, + -26.16 + ], + [ + 112.92, + -25.58 + ] + ] + ], + [ + [ + [ + 134.47, + -12.07 + ], + [ + 134.61, + -12.19 + ], + [ + 134.76, + -11.95 + ], + [ + 134.81, + -12.19 + ], + [ + 135.06, + -12.26 + ], + [ + 134.99, + -12.34 + ], + [ + 135.15, + -12.24 + ], + [ + 135.33, + -12.4 + ], + [ + 135.27, + -12.25 + ], + [ + 135.34, + -12.25 + ], + [ + 135.39, + -12.18 + ], + [ + 135.51, + -12.15 + ], + [ + 135.37, + -12.18 + ], + [ + 135.32, + -12.24 + ], + [ + 135.22, + -12.19 + ], + [ + 135.3, + -12.12 + ], + [ + 135.91, + -11.95 + ], + [ + 135.65, + -12.16 + ], + [ + 135.67, + -12.31 + ], + [ + 136.05, + -12.06 + ], + [ + 135.9, + -12.44 + ], + [ + 136.02, + -12.4 + ], + [ + 136.01, + -12.59 + ], + [ + 136.06, + -12.43 + ], + [ + 136.23, + -12.48 + ], + [ + 136.4, + -12.33 + ], + [ + 136.47, + -12.15 + ], + [ + 136.37, + -12.25 + ], + [ + 136.17, + -12.16 + ], + [ + 136.56, + -11.88 + ], + [ + 136.45, + -11.99 + ], + [ + 136.65, + -12.27 + ], + [ + 136.78, + -12.16 + ], + [ + 136.9, + -12.25 + ], + [ + 136.87, + -12.38 + ], + [ + 136.98, + -12.35 + ], + [ + 136.77, + -12.56 + ], + [ + 136.72, + -12.46 + ], + [ + 136.62, + -12.84 + ], + [ + 136.46, + -12.77 + ], + [ + 136.67, + -13 + ], + [ + 136.46, + -12.98 + ], + [ + 136.57, + -13.06 + ], + [ + 136.47, + -13.25 + ], + [ + 136.33, + -13.32 + ], + [ + 136.34, + -13.05 + ], + [ + 136.18, + -13.28 + ], + [ + 136.14, + -13.13 + ], + [ + 136.05, + -13.31 + ], + [ + 135.91, + -13.29 + ], + [ + 135.87, + -13.56 + ], + [ + 135.74, + -13.56 + ], + [ + 135.91, + -13.75 + ], + [ + 136.08, + -13.66 + ], + [ + 135.9, + -14.19 + ], + [ + 135.6, + -14.23 + ], + [ + 135.73, + -14.3 + ], + [ + 135.67, + -14.43 + ], + [ + 135.36, + -14.73 + ], + [ + 135.36, + -14.96 + ], + [ + 135.67, + -15.06 + ], + [ + 135.61, + -15.17 + ], + [ + 135.71, + -15.09 + ], + [ + 135.4, + -15.45 + ], + [ + 135.75, + -15.12 + ], + [ + 136.24, + -15.42 + ], + [ + 136.32, + -15.63 + ], + [ + 136.6, + -15.76 + ], + [ + 136.54, + -15.85 + ], + [ + 136.72, + -15.69 + ], + [ + 136.56, + -15.91 + ], + [ + 136.68, + -15.81 + ], + [ + 136.65, + -15.95 + ], + [ + 136.9, + -15.96 + ], + [ + 136.98, + -15.85 + ], + [ + 137.42, + -16.19 + ], + [ + 137.73, + -16.24 + ], + [ + 137.59, + -16.47 + ], + [ + 137.75, + -16.26 + ], + [ + 138.3, + -16.8 + ], + [ + 139.01, + -16.9 + ], + [ + 139.22, + -17.31 + ], + [ + 139.55, + -17.46 + ], + [ + 139.38, + -17.64 + ], + [ + 139.55, + -17.47 + ], + [ + 140.23, + -17.76 + ], + [ + 140.82, + -17.52 + ], + [ + 141.26, + -16.55 + ], + [ + 141.32, + -16.69 + ], + [ + 141.38, + -15.92 + ], + [ + 141.51, + -16.04 + ], + [ + 141.41, + -15.92 + ], + [ + 141.44, + -15.87 + ], + [ + 141.43, + -15.86 + ], + [ + 141.43, + -15.84 + ], + [ + 141.6, + -15.83 + ], + [ + 141.43, + -15.83 + ], + [ + 141.42, + -15.84 + ], + [ + 141.42, + -15.85 + ], + [ + 141.43, + -15.87 + ], + [ + 141.4, + -15.91 + ], + [ + 141.44, + -15.66 + ], + [ + 141.58, + -15.2 + ], + [ + 141.69, + -15.24 + ], + [ + 141.63, + -15.11 + ], + [ + 141.69, + -15.19 + ], + [ + 141.47, + -13.88 + ], + [ + 141.6, + -13.89 + ], + [ + 141.51, + -13.76 + ], + [ + 141.47, + -13.86 + ], + [ + 141.63, + -13.37 + ], + [ + 141.73, + -13.63 + ], + [ + 141.7, + -13.45 + ], + [ + 141.82, + -13.38 + ], + [ + 141.84, + -13.37 + ], + [ + 141.84, + -13.33 + ], + [ + 141.86, + -13.31 + ], + [ + 141.87, + -13.28 + ], + [ + 141.93, + -13.24 + ], + [ + 141.87, + -13.28 + ], + [ + 141.84, + -13.33 + ], + [ + 141.84, + -13.37 + ], + [ + 141.73, + -13.38 + ], + [ + 141.68, + -13.35 + ], + [ + 141.75, + -13.24 + ], + [ + 141.66, + -13.34 + ], + [ + 141.6, + -12.95 + ], + [ + 141.8, + -12.68 + ], + [ + 141.95, + -12.94 + ], + [ + 141.91, + -12.75 + ], + [ + 142.12, + -12.75 + ], + [ + 141.69, + -12.52 + ], + [ + 141.83, + -12.39 + ], + [ + 141.59, + -12.56 + ], + [ + 141.88, + -11.96 + ], + [ + 141.93, + -12.17 + ], + [ + 142.16, + -12.02 + ], + [ + 141.94, + -11.97 + ], + [ + 141.99, + -11.77 + ], + [ + 142.15, + -11.78 + ], + [ + 142, + -11.75 + ], + [ + 142.13, + -11.54 + ], + [ + 142.13, + -10.96 + ], + [ + 142.53, + -10.69 + ], + [ + 142.61, + -10.75 + ], + [ + 142.46, + -10.98 + ], + [ + 142.59, + -10.87 + ], + [ + 142.79, + -11.07 + ], + [ + 142.85, + -11.84 + ], + [ + 143.24, + -11.97 + ], + [ + 143.05, + -12.15 + ], + [ + 143.08, + -12.34 + ], + [ + 143.44, + -12.61 + ], + [ + 143.36, + -12.93 + ], + [ + 143.54, + -12.84 + ], + [ + 143.53, + -13.76 + ], + [ + 143.78, + -14.4 + ], + [ + 143.96, + -14.53 + ], + [ + 144.17, + -14.38 + ], + [ + 144.2, + -14.48 + ], + [ + 144.2, + -14.26 + ], + [ + 144.52, + -14.17 + ], + [ + 144.68, + -14.55 + ], + [ + 145.35, + -14.95 + ], + [ + 145.18, + -15.12 + ], + [ + 145.36, + -15.27 + ], + [ + 145.22, + -15.47 + ], + [ + 145.48, + -16.08 + ], + [ + 145.41, + -16.46 + ], + [ + 145.79, + -17.02 + ], + [ + 145.96, + -16.9 + ], + [ + 145.89, + -17.06 + ], + [ + 146.15, + -17.65 + ], + [ + 145.98, + -18.1 + ], + [ + 146.19, + -18.47 + ], + [ + 146.34, + -18.53 + ], + [ + 146.25, + -18.84 + ], + [ + 146.88, + -19.3 + ], + [ + 147.02, + -19.18 + ], + [ + 147.16, + -19.45 + ], + [ + 147.44, + -19.42 + ], + [ + 147.41, + -19.31 + ], + [ + 147.59, + -19.65 + ], + [ + 147.44, + -19.6 + ], + [ + 147.66, + -19.83 + ], + [ + 147.82, + -19.71 + ], + [ + 147.87, + -19.88 + ], + [ + 148.26, + -19.98 + ], + [ + 148.34, + -20.15 + ], + [ + 148.56, + -20.07 + ], + [ + 148.77, + -20.24 + ], + [ + 148.93, + -20.54 + ], + [ + 148.67, + -20.43 + ], + [ + 148.7, + -20.67 + ], + [ + 149.23, + -21.06 + ], + [ + 149.29, + -21.54 + ], + [ + 149.49, + -21.53 + ], + [ + 149.52, + -22.34 + ], + [ + 149.69, + -22.35 + ], + [ + 149.67, + -22.49 + ], + [ + 149.81, + -22.38 + ], + [ + 150.04, + -22.65 + ], + [ + 149.91, + -22.32 + ], + [ + 150.05, + -22.13 + ], + [ + 150.64, + -22.66 + ], + [ + 150.53, + -22.38 + ], + [ + 150.63, + -22.33 + ], + [ + 150.66, + -22.45 + ], + [ + 150.67, + -22.35 + ], + [ + 150.7, + -22.63 + ], + [ + 150.77, + -22.52 + ], + [ + 150.84, + -22.69 + ], + [ + 150.78, + -23.52 + ], + [ + 151.02, + -23.57 + ], + [ + 151.45, + -24.09 + ], + [ + 151.89, + -24.15 + ], + [ + 152.02, + -24.53 + ], + [ + 152.47, + -24.82 + ], + [ + 152.66, + -25.24 + ], + [ + 152.91, + -25.29 + ], + [ + 152.84, + -25.48 + ], + [ + 152.96, + -25.43 + ], + [ + 152.86, + -25.55 + ], + [ + 153.02, + -26 + ], + [ + 153.04, + -25.81 + ], + [ + 153.19, + -25.93 + ], + [ + 153.03, + -26.39 + ], + [ + 153.15, + -26.8 + ], + [ + 153.04, + -27.27 + ], + [ + 153.32, + -27.58 + ], + [ + 153.48, + -28.27 + ], + [ + 153.57, + -28.2 + ], + [ + 153.61, + -28.84 + ], + [ + 153.29, + -29.42 + ], + [ + 153.33, + -29.68 + ], + [ + 152.97, + -30.67 + ], + [ + 153.06, + -31.06 + ], + [ + 152.84, + -31.4 + ], + [ + 152.94, + -31.48 + ], + [ + 152.55, + -32.01 + ], + [ + 152.53, + -32.38 + ], + [ + 152.34, + -32.4 + ], + [ + 152.54, + -32.44 + ], + [ + 152.31, + -32.44 + ], + [ + 152.21, + -32.7 + ], + [ + 151.97, + -32.65 + ], + [ + 151.92, + -32.78 + ], + [ + 152.17, + -32.76 + ], + [ + 151.77, + -32.86 + ], + [ + 151.42, + -33.52 + ], + [ + 151.19, + -33.52 + ], + [ + 151.34, + -33.62 + ], + [ + 151.27, + -33.97 + ], + [ + 151.04, + -33.98 + ], + [ + 151.17, + -34.09 + ], + [ + 150.78, + -34.56 + ], + [ + 150.9, + -34.6 + ], + [ + 150.71, + -34.9 + ], + [ + 150.83, + -35.07 + ], + [ + 150.67, + -35.02 + ], + [ + 150.76, + -35.17 + ], + [ + 150.54, + -35.17 + ], + [ + 150.18, + -35.71 + ], + [ + 150.01, + -36.59 + ], + [ + 149.96, + -37.52 + ], + [ + 149.77, + -37.48 + ], + [ + 149.48, + -37.78 + ], + [ + 147.66, + -37.85 + ], + [ + 147.45, + -38.07 + ], + [ + 147.61, + -38.03 + ], + [ + 147.74, + -37.98 + ], + [ + 146.88, + -38.63 + ], + [ + 146.21, + -38.69 + ], + [ + 146.29, + -38.9 + ], + [ + 146.48, + -38.79 + ], + [ + 146.37, + -39.14 + ], + [ + 146.16, + -38.8 + ], + [ + 145.92, + -38.91 + ], + [ + 145.82, + -38.64 + ], + [ + 145.37, + -38.54 + ], + [ + 145.55, + -38.37 + ], + [ + 145.49, + -38.23 + ], + [ + 145.25, + -38.22 + ], + [ + 145.23, + -38.41 + ], + [ + 144.89, + -38.5 + ], + [ + 144.67, + -38.31 + ], + [ + 144.97, + -38.33 + ], + [ + 145.12, + -38.09 + ], + [ + 144.98, + -37.85 + ], + [ + 144.76, + -37.93 + ], + [ + 144.36, + -38.1 + ], + [ + 144.69, + -38.12 + ], + [ + 144.67, + -38.27 + ], + [ + 144.04, + -38.48 + ], + [ + 143.55, + -38.86 + ], + [ + 142.37, + -38.35 + ], + [ + 141.74, + -38.25 + ], + [ + 141.54, + -38.43 + ], + [ + 141.02, + -38.05 + ], + [ + 140.58, + -38.03 + ], + [ + 139.74, + -37.18 + ], + [ + 139.67, + -36.95 + ], + [ + 139.86, + -36.7 + ], + [ + 139.63, + -36.1 + ], + [ + 139.04, + -35.64 + ], + [ + 139.14, + -35.5 + ], + [ + 139.36, + -35.5 + ], + [ + 139.37, + -35.34 + ], + [ + 139.31, + -35.44 + ], + [ + 139.26, + -35.31 + ], + [ + 138.98, + -35.39 + ], + [ + 139, + -35.55 + ], + [ + 138.1, + -35.63 + ], + [ + 138.44, + -35.35 + ], + [ + 138.47, + -34.79 + ], + [ + 138.59, + -34.78 + ], + [ + 138.09, + -34.13 + ], + [ + 137.76, + -35.12 + ], + [ + 136.85, + -35.28 + ], + [ + 137.01, + -34.9 + ], + [ + 137.45, + -34.91 + ], + [ + 137.45, + -34.14 + ], + [ + 137.98, + -33.56 + ], + [ + 137.81, + -33.27 + ], + [ + 138.05, + -33.12 + ], + [ + 137.77, + -32.49 + ], + [ + 137.79, + -33 + ], + [ + 137.64, + -32.95 + ], + [ + 137.45, + -33.13 + ], + [ + 137.21, + -33.66 + ], + [ + 136.93, + -33.66 + ], + [ + 136.36, + -34.07 + ], + [ + 136.09, + -34.54 + ], + [ + 135.93, + -34.53 + ], + [ + 135.79, + -34.81 + ], + [ + 136.01, + -34.74 + ], + [ + 135.95, + -35.01 + ], + [ + 135.75, + -34.85 + ], + [ + 135.62, + -34.94 + ], + [ + 135.25, + -34.55 + ], + [ + 135.11, + -34.59 + ], + [ + 135.21, + -34.43 + ], + [ + 135.37, + -34.64 + ], + [ + 135.52, + -34.61 + ], + [ + 135.39, + -34.59 + ], + [ + 135.31, + -34.02 + ], + [ + 134.83, + -33.63 + ], + [ + 134.89, + -33.43 + ], + [ + 134.7, + -33.17 + ], + [ + 134.37, + -33.18 + ], + [ + 134.28, + -33.02 + ], + [ + 134.33, + -33.2 + ], + [ + 134.14, + -33.02 + ], + [ + 134.06, + -32.72 + ], + [ + 134.2, + -32.8 + ], + [ + 134.29, + -32.66 + ], + [ + 134.18, + -32.48 + ], + [ + 133.85, + -32.54 + ], + [ + 133.95, + -32.39 + ], + [ + 133.61, + -32.09 + ], + [ + 133.13, + -32.21 + ], + [ + 132.75, + -31.95 + ], + [ + 132.2, + -32.03 + ], + [ + 131.15, + -31.47 + ], + [ + 130.79, + -31.61 + ], + [ + 129.05, + -31.68 + ], + [ + 127.22, + -32.28 + ], + [ + 125.96, + -32.29 + ], + [ + 124.25, + -33.01 + ], + [ + 123.98, + -33.56 + ], + [ + 123.54, + -33.94 + ], + [ + 123.16, + -34.02 + ], + [ + 123.02, + -33.86 + ], + [ + 122.11, + -34.02 + ], + [ + 122.01, + -33.83 + ], + [ + 120.72, + -33.85 + ], + [ + 120.44, + -33.97 + ], + [ + 120.09, + -33.87 + ], + [ + 119.62, + -34.09 + ], + [ + 119.58, + -34.39 + ], + [ + 119.35, + -34.35 + ], + [ + 119.42, + -34.46 + ], + [ + 119.26, + -34.53 + ], + [ + 118.87, + -34.45 + ], + [ + 118.4, + -34.92 + ], + [ + 118.19, + -35.02 + ], + [ + 117.94, + -34.94 + ], + [ + 117.95, + -35.13 + ], + [ + 117.33, + -35.03 + ], + [ + 117.46, + -34.97 + ], + [ + 116.63, + -35.06 + ], + [ + 116, + -34.84 + ], + [ + 115.58, + -34.42 + ], + [ + 115.14, + -34.38 + ], + [ + 114.99, + -34.1 + ], + [ + 115, + -33.53 + ], + [ + 115.42, + -33.65 + ], + [ + 115.71, + -33.33 + ], + [ + 115.61, + -32.68 + ], + [ + 115.77, + -32.19 + ], + [ + 115.7, + -31.69 + ], + [ + 115.06, + -30.51 + ], + [ + 114.96, + -29.35 + ], + [ + 114.56, + -28.53 + ], + [ + 114.17, + -28.11 + ], + [ + 114.18, + -27.68 + ], + [ + 113.96, + -27.22 + ], + [ + 113.16, + -26.15 + ], + [ + 113.27, + -26.24 + ], + [ + 113.3, + -26.02 + ], + [ + 113.38, + -26.33 + ], + [ + 113.36, + -26.02 + ], + [ + 113.59, + -26.64 + ], + [ + 113.63, + -26.46 + ], + [ + 113.66, + -26.67 + ], + [ + 113.84, + -26.58 + ], + [ + 113.88, + -26.33 + ], + [ + 113.8, + -26.25 + ], + [ + 113.69, + -26.22 + ], + [ + 113.58, + -26.1 + ], + [ + 113.41, + -25.72 + ], + [ + 113.51, + -25.5 + ], + [ + 113.76, + -25.88 + ], + [ + 113.7, + -26.04 + ], + [ + 113.7, + -26.2 + ], + [ + 113.78, + -26.21 + ], + [ + 113.81, + -26.18 + ], + [ + 113.88, + -25.94 + ], + [ + 114.08, + -26.47 + ], + [ + 114.24, + -26.31 + ], + [ + 114.28, + -25.86 + ], + [ + 113.4, + -24.41 + ], + [ + 113.47, + -23.9 + ], + [ + 113.78, + -23.47 + ], + [ + 113.83, + -22.95 + ], + [ + 113.65, + -22.58 + ], + [ + 114, + -21.87 + ], + [ + 114.19, + -21.81 + ], + [ + 114.1, + -22.54 + ], + [ + 114.31, + -22.43 + ], + [ + 114.43, + -22.61 + ], + [ + 114.56, + -22.13 + ], + [ + 114.82, + -21.86 + ], + [ + 114.68, + -21.83 + ], + [ + 115.49, + -21.55 + ], + [ + 116.18, + -20.98 + ], + [ + 116.19, + -20.82 + ], + [ + 116.71, + -20.79 + ], + [ + 116.81, + -20.53 + ], + [ + 116.8, + -20.7 + ], + [ + 117.17, + -20.59 + ], + [ + 117.38, + -20.79 + ], + [ + 117.82, + -20.67 + ], + [ + 118.18, + -20.34 + ], + [ + 118.86, + -20.29 + ], + [ + 119.1, + -19.96 + ], + [ + 119.57, + -20.08 + ], + [ + 121.11, + -19.54 + ], + [ + 121.81, + -18.45 + ], + [ + 122.37, + -18.12 + ], + [ + 122.38, + -17.99 + ], + [ + 122.18, + -17.97 + ], + [ + 122.17, + -17.26 + ], + [ + 122.48, + -16.9 + ], + [ + 122.62, + -16.97 + ], + [ + 122.58, + -16.76 + ], + [ + 122.82, + -16.77 + ], + [ + 122.74, + -16.68 + ], + [ + 122.93, + -16.39 + ], + [ + 123.04, + -16.36 + ], + [ + 122.96, + -16.58 + ], + [ + 123.14, + -16.69 + ], + [ + 123.12, + -16.94 + ], + [ + 123.56, + -17.48 + ], + [ + 123.58, + -17.72 + ], + [ + 123.63, + -17.2 + ], + [ + 123.71, + -17.28 + ], + [ + 123.58, + -17.03 + ], + [ + 123.93, + -17.24 + ], + [ + 123.8, + -17 + ], + [ + 123.92, + -17.1 + ], + [ + 123.83, + -16.96 + ], + [ + 123.96, + -16.83 + ], + [ + 123.8, + -16.91 + ], + [ + 123.78, + -16.73 + ], + [ + 123.5, + -16.66 + ], + [ + 123.64, + -16.57 + ], + [ + 123.43, + -16.5 + ], + [ + 123.66, + -16.49 + ], + [ + 123.5, + -16.38 + ], + [ + 123.73, + -16.42 + ], + [ + 123.56, + -16.18 + ], + [ + 123.81, + -16.19 + ], + [ + 123.72, + -16.25 + ], + [ + 123.87, + -16.45 + ], + [ + 123.89, + -16.3 + ], + [ + 124.04, + -16.4 + ], + [ + 123.91, + -16.21 + ], + [ + 124.13, + -16.28 + ], + [ + 124.4, + -16.58 + ], + [ + 124.51, + -16.55 + ], + [ + 124.39, + -16.35 + ], + [ + 124.96, + -16.37 + ], + [ + 124.39, + -16.34 + ], + [ + 124.45, + -16.07 + ], + [ + 124.6, + -16.2 + ], + [ + 124.61, + -15.9 + ], + [ + 124.78, + -15.81 + ], + [ + 124.8, + -15.66 + ], + [ + 124.7, + -15.62 + ], + [ + 124.75, + -15.81 + ], + [ + 124.69, + -15.73 + ], + [ + 124.5, + -16 + ], + [ + 124.42, + -15.55 + ], + [ + 124.68, + -15.49 + ], + [ + 124.7, + -15.25 + ], + [ + 125.29, + -15.6 + ], + [ + 125.23, + -15.42 + ], + [ + 125.07, + -15.44 + ], + [ + 125.11, + -15.26 + ], + [ + 124.88, + -15.31 + ], + [ + 125.05, + -15.15 + ], + [ + 124.88, + -15.26 + ], + [ + 124.83, + -15.16 + ], + [ + 125.07, + -14.98 + ], + [ + 125.19, + -15.21 + ], + [ + 125.29, + -15.1 + ], + [ + 125.55, + -15.26 + ], + [ + 125.37, + -15.11 + ], + [ + 125.49, + -14.98 + ], + [ + 125.21, + -14.97 + ], + [ + 125.34, + -14.89 + ], + [ + 125.14, + -14.75 + ], + [ + 125.35, + -14.67 + ], + [ + 125.25, + -14.6 + ], + [ + 125.37, + -14.51 + ], + [ + 125.44, + -14.66 + ], + [ + 125.49, + -14.51 + ], + [ + 125.6, + -14.57 + ], + [ + 125.62, + -14.23 + ], + [ + 125.73, + -14.28 + ], + [ + 125.64, + -14.73 + ], + [ + 125.73, + -14.41 + ], + [ + 125.93, + -14.71 + ], + [ + 126.17, + -14.15 + ], + [ + 125.99, + -14.07 + ], + [ + 126.1, + -14.05 + ], + [ + 126.01, + -13.93 + ], + [ + 126.22, + -13.97 + ], + [ + 126.15, + -14.08 + ], + [ + 126.31, + -14.25 + ], + [ + 126.33, + -14.05 + ], + [ + 126.57, + -13.94 + ], + [ + 126.45, + -14.08 + ], + [ + 126.61, + -14.28 + ], + [ + 126.71, + -13.97 + ], + [ + 126.95, + -13.99 + ], + [ + 126.77, + -13.78 + ], + [ + 126.96, + -13.74 + ], + [ + 127.32, + -14.04 + ], + [ + 127.32, + -13.91 + ], + [ + 127.43, + -13.94 + ], + [ + 127.96, + -14.6 + ], + [ + 128.22, + -14.72 + ], + [ + 128.03, + -14.92 + ], + [ + 128.14, + -14.87 + ], + [ + 128.09, + -15.28 + ], + [ + 127.98, + -15.28 + ], + [ + 128.08, + -15.44 + ], + [ + 127.79, + -15.59 + ], + [ + 127.87, + -15.73 + ], + [ + 128.1, + -15.5 + ], + [ + 128.13, + -15.18 + ], + [ + 128.33, + -15.49 + ], + [ + 128.2, + -15.1 + ], + [ + 128.29, + -14.97 + ], + [ + 128.38, + -15.12 + ], + [ + 128.36, + -14.99 + ], + [ + 128.53, + -15.07 + ], + [ + 128.42, + -14.8 + ], + [ + 129.02, + -14.88 + ], + [ + 129, + -15 + ], + [ + 129.09, + -14.91 + ], + [ + 129.13, + -15.31 + ], + [ + 129.24, + -15.11 + ], + [ + 129.36, + -15.16 + ], + [ + 129.25, + -15.08 + ], + [ + 129.29, + -14.86 + ], + [ + 129.6, + -15.1 + ], + [ + 129.57, + -15.24 + ], + [ + 129.78, + -15.2 + ], + [ + 129.65, + -14.84 + ], + [ + 129.85, + -14.85 + ], + [ + 129.84, + -14.95 + ], + [ + 129.87, + -14.8 + ], + [ + 130.05, + -14.8 + ], + [ + 129.91, + -14.72 + ], + [ + 129.76, + -14.83 + ], + [ + 129.8, + -14.73 + ], + [ + 129.62, + -14.69 + ], + [ + 129.83, + -14.54 + ], + [ + 129.53, + -14.55 + ], + [ + 129.37, + -14.34 + ], + [ + 129.75, + -13.98 + ], + [ + 129.9, + -13.44 + ], + [ + 130, + -13.54 + ], + [ + 130.27, + -13.33 + ], + [ + 130.42, + -13.51 + ], + [ + 130.12, + -13.17 + ], + [ + 130.13, + -12.97 + ], + [ + 130.42, + -12.91 + ], + [ + 130.44, + -12.63 + ], + [ + 130.51, + -12.76 + ], + [ + 130.77, + -12.74 + ], + [ + 130.55, + -12.64 + ], + [ + 130.66, + -12.64 + ], + [ + 130.62, + -12.38 + ], + [ + 130.94, + -12.73 + ], + [ + 130.86, + -12.51 + ], + [ + 131.03, + -12.58 + ], + [ + 130.82, + -12.41 + ], + [ + 131.05, + -12.39 + ], + [ + 131.03, + -12.15 + ], + [ + 131.28, + -12.25 + ], + [ + 131.3, + -12.04 + ], + [ + 131.36, + -12.24 + ], + [ + 131.77, + -12.27 + ], + [ + 131.74, + -12.39 + ], + [ + 131.89, + -12.21 + ], + [ + 132.1, + -12.36 + ], + [ + 132.25, + -12.17 + ], + [ + 132.23, + -12.36 + ], + [ + 132.36, + -12.2 + ], + [ + 132.51, + -12.7 + ], + [ + 132.42, + -12.2 + ], + [ + 132.56, + -12.09 + ], + [ + 132.77, + -12.16 + ], + [ + 132.62, + -12.08 + ], + [ + 132.58, + -11.79 + ], + [ + 132.75, + -11.64 + ], + [ + 132.55, + -11.61 + ], + [ + 132.53, + -11.43 + ], + [ + 132.08, + -11.53 + ], + [ + 131.94, + -11.32 + ], + [ + 131.76, + -11.32 + ], + [ + 131.82, + -11.21 + ], + [ + 131.96, + -11.25 + ], + [ + 132.01, + -11.13 + ], + [ + 132.2, + -11.42 + ], + [ + 132.14, + -11.12 + ], + [ + 132.28, + -11.28 + ], + [ + 132.34, + -11.12 + ], + [ + 132.37, + -11.3 + ], + [ + 132.45, + -11.22 + ], + [ + 132.71, + -11.52 + ], + [ + 132.92, + -11.33 + ], + [ + 133.16, + -11.71 + ], + [ + 133.54, + -11.76 + ], + [ + 133.49, + -11.88 + ], + [ + 133.92, + -11.74 + ], + [ + 133.78, + -11.88 + ], + [ + 134.18, + -11.96 + ], + [ + 134.1, + -12.32 + ], + [ + 134.25, + -11.98 + ], + [ + 134.47, + -12.07 + ] + ], + [ + [ + 121.9, + -31.93 + ], + [ + 122.17, + -31.57 + ], + [ + 121.73, + -31.8 + ], + [ + 121.73, + -32.16 + ], + [ + 121.87, + -32.06 + ], + [ + 121.77, + -31.93 + ], + [ + 121.9, + -31.93 + ] + ], + [ + [ + 115.88, + -31.95 + ], + [ + 115.88, + -31.96 + ], + [ + 115.82, + -32.03 + ], + [ + 115.88, + -31.96 + ], + [ + 115.91, + -31.95 + ], + [ + 115.88, + -31.95 + ], + [ + 115.88, + -31.94 + ], + [ + 115.88, + -31.95 + ] + ], + [ + [ + 121.84, + -32.44 + ], + [ + 121.68, + -32.52 + ], + [ + 121.86, + -32.74 + ], + [ + 121.84, + -32.44 + ] + ], + [ + [ + 118.39, + -32.96 + ], + [ + 118.43, + -33.14 + ], + [ + 118.53, + -32.99 + ], + [ + 118.39, + -32.96 + ] + ], + [ + [ + 120.76, + -32.95 + ], + [ + 120.66, + -33.03 + ], + [ + 120.81, + -33.05 + ], + [ + 120.76, + -32.95 + ] + ], + [ + [ + 119.16, + -33.39 + ], + [ + 119.15, + -33.58 + ], + [ + 119.26, + -33.49 + ], + [ + 119.16, + -33.39 + ] + ], + [ + [ + 121.84, + -31.13 + ], + [ + 121.6, + -31.3 + ], + [ + 121.64, + -31.5 + ], + [ + 121.68, + -31.3 + ], + [ + 121.93, + -31.24 + ], + [ + 121.84, + -31.13 + ] + ], + [ + [ + 117.42, + -30.83 + ], + [ + 117.25, + -31.04 + ], + [ + 117.47, + -30.94 + ], + [ + 117.42, + -30.83 + ] + ], + [ + [ + 119.75, + -30.86 + ], + [ + 119.53, + -30.98 + ], + [ + 119.66, + -31.03 + ], + [ + 119.75, + -30.86 + ] + ], + [ + [ + 119.09, + -30.71 + ], + [ + 118.87, + -30.95 + ], + [ + 119.13, + -30.83 + ], + [ + 119.09, + -30.71 + ] + ], + [ + [ + 122.08, + -30.56 + ], + [ + 121.9, + -30.84 + ], + [ + 122.17, + -30.71 + ], + [ + 122.08, + -30.56 + ] + ], + [ + [ + 117.72, + -29.38 + ], + [ + 117.64, + -29.51 + ], + [ + 117.38, + -29.47 + ], + [ + 117.53, + -29.57 + ], + [ + 117.38, + -30.25 + ], + [ + 117.49, + -30.33 + ], + [ + 117.5, + -29.92 + ], + [ + 117.66, + -29.88 + ], + [ + 117.47, + -29.86 + ], + [ + 117.6, + -29.63 + ], + [ + 117.73, + -29.67 + ], + [ + 117.72, + -29.38 + ] + ], + [ + [ + 119.31, + -30.64 + ], + [ + 119.27, + -30.73 + ], + [ + 119.46, + -30.68 + ], + [ + 119.53, + -30.79 + ], + [ + 119.49, + -30.66 + ], + [ + 119.31, + -30.64 + ] + ], + [ + [ + 116.85, + -29.95 + ], + [ + 117.03, + -30.22 + ], + [ + 117.04, + -29.95 + ], + [ + 116.85, + -29.95 + ] + ], + [ + [ + 122.12, + -29.8 + ], + [ + 122.02, + -29.84 + ], + [ + 122.29, + -29.99 + ], + [ + 122.12, + -29.8 + ] + ], + [ + [ + 121.35, + -29.57 + ], + [ + 121.46, + -29.92 + ], + [ + 121.63, + -29.75 + ], + [ + 121.35, + -29.57 + ] + ], + [ + [ + 120.66, + -29.34 + ], + [ + 120.56, + -29.42 + ], + [ + 120.97, + -29.6 + ], + [ + 121.23, + -29.5 + ], + [ + 120.66, + -29.34 + ] + ], + [ + [ + 119.73, + -28.88 + ], + [ + 119.62, + -29.06 + ], + [ + 119.36, + -28.98 + ], + [ + 119.05, + -29.15 + ], + [ + 119.26, + -29.19 + ], + [ + 119.19, + -29.38 + ], + [ + 119.46, + -29.15 + ], + [ + 119.4, + -29.55 + ], + [ + 119.58, + -29.18 + ], + [ + 119.69, + -29.23 + ], + [ + 119.61, + -29.38 + ], + [ + 119.79, + -29.42 + ], + [ + 119.69, + -29.08 + ], + [ + 119.99, + -28.92 + ], + [ + 119.73, + -28.88 + ] + ], + [ + [ + 122.26, + -29 + ], + [ + 122.5, + -29.31 + ], + [ + 122.38, + -28.86 + ], + [ + 122.13, + -28.85 + ], + [ + 122.26, + -29 + ] + ], + [ + [ + 119.6, + -28.42 + ], + [ + 119.05, + -28.6 + ], + [ + 119.27, + -28.79 + ], + [ + 119.6, + -28.42 + ] + ], + [ + [ + 118.39, + -26.86 + ], + [ + 118.3, + -26.97 + ], + [ + 118.43, + -26.97 + ], + [ + 118.39, + -26.86 + ] + ], + [ + [ + 122.43, + -26 + ], + [ + 122.35, + -26.25 + ], + [ + 122.65, + -26.3 + ], + [ + 122.74, + -26.16 + ], + [ + 122.48, + -26.18 + ], + [ + 122.43, + -26 + ] + ], + [ + [ + 122.76, + -26.16 + ], + [ + 123.12, + -26.51 + ], + [ + 123.1, + -26.27 + ], + [ + 122.76, + -26.16 + ] + ], + [ + [ + 122.17, + -26.16 + ], + [ + 122.27, + -26.27 + ], + [ + 122.3, + -26.16 + ], + [ + 122.3, + -26.04 + ], + [ + 122.17, + -25.99 + ], + [ + 122.17, + -26.16 + ] + ], + [ + [ + 113.85, + -23.6 + ], + [ + 113.53, + -23.97 + ], + [ + 113.54, + -24.61 + ], + [ + 113.8, + -24.11 + ], + [ + 113.83, + -24.24 + ], + [ + 113.97, + -24.05 + ], + [ + 113.73, + -23.98 + ], + [ + 113.85, + -23.6 + ] + ], + [ + [ + 122.7, + -23.27 + ], + [ + 122.6, + -23.52 + ], + [ + 122.83, + -23.71 + ], + [ + 122.93, + -23.28 + ], + [ + 122.7, + -23.27 + ] + ], + [ + [ + 122.92, + -21.94 + ], + [ + 122.83, + -21.96 + ], + [ + 123.08, + -22.19 + ], + [ + 123.13, + -22.02 + ], + [ + 123, + -22.08 + ], + [ + 122.92, + -21.94 + ] + ], + [ + [ + 136.32, + -31.97 + ], + [ + 136.32, + -31.95 + ], + [ + 136.1, + -31.25 + ], + [ + 135.62, + -31.23 + ], + [ + 135.4, + -31.03 + ], + [ + 135.42, + -31.24 + ], + [ + 135.75, + -31.39 + ], + [ + 135.6, + -31.58 + ], + [ + 135.77, + -31.54 + ], + [ + 135.97, + -31.84 + ], + [ + 136.08, + -31.95 + ], + [ + 135.87, + -32.29 + ], + [ + 136.05, + -32.12 + ], + [ + 136.25, + -32.25 + ], + [ + 136.32, + -31.97 + ] + ], + [ + [ + 137.68, + -31.73 + ], + [ + 137.55, + -31.8 + ], + [ + 137.77, + -31.93 + ], + [ + 138.13, + -31.35 + ], + [ + 138.11, + -31.13 + ], + [ + 137.87, + -30.56 + ], + [ + 137.21, + -30.15 + ], + [ + 137.44, + -30.52 + ], + [ + 137.33, + -30.63 + ], + [ + 137.71, + -30.94 + ], + [ + 137.72, + -31.1 + ], + [ + 137.43, + -31.13 + ], + [ + 137.79, + -31.28 + ], + [ + 137.68, + -31.73 + ] + ], + [ + [ + 136.85, + -31.93 + ], + [ + 136.78, + -31.91 + ], + [ + 136.6, + -31.73 + ], + [ + 136.64, + -32.1 + ], + [ + 136.85, + -31.93 + ] + ], + [ + [ + 135.51, + -31.95 + ], + [ + 135.35, + -31.93 + ], + [ + 135.4, + -32.11 + ], + [ + 135.51, + -31.95 + ] + ], + [ + [ + 136.45, + -31.28 + ], + [ + 136.54, + -31.54 + ], + [ + 136.8, + -31.67 + ], + [ + 136.93, + -31.41 + ], + [ + 136.58, + -31.27 + ], + [ + 136.54, + -31.43 + ], + [ + 136.45, + -31.28 + ] + ], + [ + [ + 134.91, + -31.62 + ], + [ + 135.13, + -31.44 + ], + [ + 135.22, + -31.6 + ], + [ + 135.42, + -31.58 + ], + [ + 135.11, + -31.32 + ], + [ + 134.96, + -31.45 + ], + [ + 134.81, + -31.35 + ], + [ + 134.91, + -31.62 + ] + ], + [ + [ + 135.24, + -31.02 + ], + [ + 135.09, + -31.3 + ], + [ + 135.33, + -31.13 + ], + [ + 135.38, + -31.02 + ], + [ + 135.24, + -31.02 + ] + ], + [ + [ + 130.9, + -29.34 + ], + [ + 130.84, + -29.46 + ], + [ + 131.04, + -29.55 + ], + [ + 131.09, + -29.34 + ], + [ + 130.9, + -29.34 + ] + ], + [ + [ + 137.67, + -29.11 + ], + [ + 137.13, + -29.23 + ], + [ + 137.14, + -29.46 + ], + [ + 137.68, + -29.28 + ], + [ + 137.67, + -29.11 + ] + ], + [ + [ + 137.77, + -28.97 + ], + [ + 137.77, + -29.09 + ], + [ + 138.02, + -29.08 + ], + [ + 137.77, + -28.97 + ] + ], + [ + [ + 136.95, + -27.88 + ], + [ + 136.8, + -27.96 + ], + [ + 136.99, + -28.23 + ], + [ + 136.91, + -28.96 + ], + [ + 137.13, + -29 + ], + [ + 137.11, + -28.88 + ], + [ + 137.31, + -28.67 + ], + [ + 137.35, + -28.84 + ], + [ + 137.2, + -28.84 + ], + [ + 137.33, + -29.08 + ], + [ + 137.33, + -28.85 + ], + [ + 137.59, + -29.05 + ], + [ + 137.75, + -29 + ], + [ + 137.81, + -28.82 + ], + [ + 137.59, + -28.67 + ], + [ + 137.72, + -28.5 + ], + [ + 137.58, + -28.34 + ], + [ + 137.79, + -28.3 + ], + [ + 137.61, + -28.29 + ], + [ + 137.61, + -28.11 + ], + [ + 137.53, + -28.23 + ], + [ + 137.5, + -27.98 + ], + [ + 136.95, + -27.88 + ] + ], + [ + [ + 135.4, + -28.84 + ], + [ + 135.6, + -28.96 + ], + [ + 135.61, + -28.84 + ], + [ + 135.4, + -28.84 + ] + ], + [ + [ + 124.32, + -27.94 + ], + [ + 124.08, + -27.99 + ], + [ + 124.58, + -28.03 + ], + [ + 124.32, + -27.94 + ] + ], + [ + [ + 137.29, + -26.94 + ], + [ + 137.37, + -27.11 + ], + [ + 137.44, + -26.98 + ], + [ + 137.2, + -26.82 + ], + [ + 137.29, + -26.94 + ] + ], + [ + [ + 138.02, + -26.78 + ], + [ + 137.9, + -26.83 + ], + [ + 138.02, + -26.92 + ], + [ + 138.02, + -26.78 + ] + ], + [ + [ + 137.59, + -26.57 + ], + [ + 137.88, + -26.86 + ], + [ + 137.86, + -26.68 + ], + [ + 137.59, + -26.57 + ] + ], + [ + [ + 123.16, + -26.63 + ], + [ + 122.97, + -26.63 + ], + [ + 123.4, + -26.84 + ], + [ + 123.16, + -26.63 + ] + ], + [ + [ + 130.49, + -24.57 + ], + [ + 131.04, + -24.94 + ], + [ + 131.33, + -24.97 + ], + [ + 130.91, + -24.66 + ], + [ + 130.49, + -24.57 + ] + ], + [ + [ + 129.01, + -23.4 + ], + [ + 128.89, + -23.52 + ], + [ + 129.02, + -23.6 + ], + [ + 129.01, + -23.4 + ] + ], + [ + [ + 133.51, + -17.62 + ], + [ + 133.29, + -17.88 + ], + [ + 133.42, + -18.04 + ], + [ + 133.61, + -17.94 + ], + [ + 133.51, + -17.62 + ] + ], + [ + [ + 132.38, + -22.8 + ], + [ + 132.54, + -22.93 + ], + [ + 132.53, + -22.8 + ], + [ + 132.38, + -22.8 + ] + ], + [ + [ + 135.02, + -18.44 + ], + [ + 135.15, + -18.35 + ], + [ + 135.04, + -18.29 + ], + [ + 134.81, + -18.4 + ], + [ + 135.02, + -18.44 + ] + ], + [ + [ + 135.46, + -18.56 + ], + [ + 135.34, + -18.65 + ], + [ + 135.49, + -19.02 + ], + [ + 135.78, + -18.85 + ], + [ + 135.83, + -18.98 + ], + [ + 135.97, + -18.91 + ], + [ + 135.92, + -18.8 + ], + [ + 135.75, + -18.84 + ], + [ + 135.75, + -18.59 + ], + [ + 135.46, + -18.56 + ] + ], + [ + [ + 135.6, + -19.02 + ], + [ + 135.49, + -19.02 + ], + [ + 135.65, + -19.14 + ], + [ + 135.6, + -19.02 + ] + ], + [ + [ + 129.02, + -22.19 + ], + [ + 129.24, + -22.03 + ], + [ + 129.02, + -21.96 + ], + [ + 128.8, + -22.24 + ], + [ + 128.28, + -22.47 + ], + [ + 128.3, + -22.59 + ], + [ + 128.89, + -22.7 + ], + [ + 129.29, + -22.41 + ], + [ + 129.02, + -22.19 + ] + ], + [ + [ + 128.91, + -16.13 + ], + [ + 128.64, + -16.17 + ], + [ + 128.63, + -16.65 + ], + [ + 128.8, + -16.43 + ], + [ + 128.72, + -16.38 + ], + [ + 128.88, + -16.42 + ], + [ + 128.87, + -16.26 + ], + [ + 129.02, + -16.21 + ], + [ + 128.91, + -16.13 + ] + ], + [ + [ + 127.4, + -20.1 + ], + [ + 127.31, + -20.28 + ], + [ + 127.44, + -20.3 + ], + [ + 127.53, + -20.15 + ], + [ + 127.4, + -20.1 + ] + ], + [ + [ + 143.56, + -38.03 + ], + [ + 143.36, + -38.03 + ], + [ + 143.44, + -38.32 + ], + [ + 143.46, + -38.13 + ], + [ + 143.65, + -38.13 + ], + [ + 143.56, + -38.03 + ] + ], + [ + [ + 147.2, + -38.07 + ], + [ + 147.3, + -38.18 + ], + [ + 147.42, + -38.07 + ], + [ + 147.2, + -38.07 + ] + ], + [ + [ + 148.62, + -36.08 + ], + [ + 148.82, + -36.14 + ], + [ + 148.67, + -35.98 + ], + [ + 148.62, + -36.08 + ] + ], + [ + [ + 139.22, + -35.56 + ], + [ + 139.35, + -35.7 + ], + [ + 139.39, + -35.57 + ], + [ + 139.22, + -35.56 + ] + ], + [ + [ + 144.01, + -31.5 + ], + [ + 143.9, + -31.62 + ], + [ + 144.05, + -31.71 + ], + [ + 144.01, + -31.5 + ] + ], + [ + [ + 149.14, + -32.62 + ], + [ + 149.16, + -32.73 + ], + [ + 149.33, + -32.62 + ], + [ + 149.14, + -32.62 + ] + ], + [ + [ + 142.69, + -32.11 + ], + [ + 142.6, + -32.3 + ], + [ + 142.84, + -32.14 + ], + [ + 142.69, + -32.11 + ] + ], + [ + [ + 139.93, + -30.26 + ], + [ + 139.51, + -30.83 + ], + [ + 139.83, + -31.16 + ], + [ + 140.07, + -30.45 + ], + [ + 139.93, + -30.26 + ] + ], + [ + [ + 145.75, + -22.35 + ], + [ + 145.7, + -22.43 + ], + [ + 145.85, + -22.42 + ], + [ + 145.75, + -22.35 + ] + ], + [ + [ + 139.81, + -29.42 + ], + [ + 139.79, + -29.19 + ], + [ + 139.48, + -29.19 + ], + [ + 139.81, + -29.42 + ] + ], + [ + [ + 147, + -20.55 + ], + [ + 146.91, + -20.82 + ], + [ + 147.14, + -20.63 + ], + [ + 147, + -20.55 + ] + ], + [ + [ + 141.61, + -26.16 + ], + [ + 141.26, + -26.27 + ], + [ + 141.32, + -26.43 + ], + [ + 141.52, + -26.43 + ], + [ + 141.61, + -26.16 + ] + ], + [ + [ + 143.64, + -30.64 + ], + [ + 143.64, + -30.89 + ], + [ + 143.86, + -30.79 + ], + [ + 143.7, + -30.83 + ], + [ + 143.64, + -30.64 + ] + ], + [ + [ + 140.1, + -29.69 + ], + [ + 140.18, + -29.57 + ], + [ + 140, + -29.57 + ], + [ + 139.96, + -29.73 + ], + [ + 140.2, + -29.8 + ], + [ + 140.1, + -29.69 + ] + ], + [ + [ + 139.73, + -24.77 + ], + [ + 139.7, + -24.89 + ], + [ + 139.89, + -24.81 + ], + [ + 139.73, + -24.77 + ] + ] + ], + [ + [ + [ + 113.1, + -25.12 + ], + [ + 113.12, + -24.99 + ], + [ + 113.08, + -25.27 + ], + [ + 113.1, + -25.12 + ] + ] + ], + [ + [ + [ + 113.13, + -24.86 + ], + [ + 113.16, + -24.75 + ], + [ + 113.12, + -24.99 + ], + [ + 113.13, + -24.86 + ] + ] + ] + ] + }, + "properties": { + "A3": "AUS" + } + }, + { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + 109.65, + 2.08 + ], + [ + 109.54, + 1.92 + ], + [ + 109.66, + 1.62 + ], + [ + 110.58, + 0.85 + ], + [ + 111.22, + 1.09 + ], + [ + 111.83, + 0.99 + ], + [ + 112.15, + 1.14 + ], + [ + 112.21, + 1.45 + ], + [ + 112.5, + 1.58 + ], + [ + 113, + 1.58 + ], + [ + 112.97, + 1.41 + ], + [ + 113.63, + 1.22 + ], + [ + 113.98, + 1.45 + ], + [ + 114.56, + 1.43 + ], + [ + 114.72, + 1.86 + ], + [ + 114.88, + 1.92 + ], + [ + 114.8, + 2.25 + ], + [ + 115.24, + 2.51 + ], + [ + 115.09, + 2.6 + ], + [ + 115.09, + 2.82 + ], + [ + 115.57, + 3.16 + ], + [ + 115.56, + 3.92 + ], + [ + 115.88, + 4.39 + ], + [ + 116.08, + 4.28 + ], + [ + 116.17, + 4.39 + ], + [ + 116.44, + 4.29 + ], + [ + 116.57, + 4.41 + ], + [ + 117.25, + 4.37 + ], + [ + 117.54, + 4.17 + ], + [ + 117.55, + 4.17 + ], + [ + 117.56, + 4.18 + ], + [ + 117.59, + 4.18 + ], + [ + 117.38, + 4.1 + ], + [ + 117.83, + 3.7 + ], + [ + 117.66, + 3.62 + ], + [ + 117.44, + 3.71 + ], + [ + 117.49, + 3.6 + ], + [ + 116.97, + 3.6 + ], + [ + 116.94, + 3.7 + ], + [ + 116.95, + 3.6 + ], + [ + 117.5, + 3.5 + ], + [ + 117.22, + 3.51 + ], + [ + 117.53, + 3.29 + ], + [ + 117.29, + 3.16 + ], + [ + 117.62, + 3.06 + ], + [ + 117.57, + 2.94 + ], + [ + 117.7, + 2.95 + ], + [ + 117.55, + 2.91 + ], + [ + 117.72, + 2.89 + ], + [ + 117.6, + 2.81 + ], + [ + 118.09, + 2.33 + ], + [ + 117.76, + 2.02 + ], + [ + 117.85, + 1.87 + ], + [ + 118.99, + 0.99 + ], + [ + 118.79, + 0.8 + ], + [ + 118.39, + 0.8 + ], + [ + 118.06, + 0.9 + ], + [ + 117.88, + 1.14 + ], + [ + 118.03, + 0.78 + ], + [ + 117.75, + 0.76 + ], + [ + 117.46, + 0.1 + ], + [ + 117.43, + -0.27 + ], + [ + 117.5, + -0.48 + ], + [ + 117.63, + -0.42 + ], + [ + 117.46, + -0.7 + ], + [ + 117.61, + -0.77 + ], + [ + 117.29, + -0.83 + ], + [ + 116.88, + -1.28 + ], + [ + 116.74, + -1 + ], + [ + 116.76, + -1.36 + ], + [ + 116.21, + -1.78 + ], + [ + 116.45, + -1.77 + ], + [ + 116.46, + -2.05 + ], + [ + 116.34, + -2.11 + ], + [ + 116.6, + -2.2 + ], + [ + 116.51, + -2.56 + ], + [ + 116.28, + -2.55 + ], + [ + 116.42, + -2.58 + ], + [ + 116.36, + -2.88 + ], + [ + 116.22, + -3.01 + ], + [ + 116.13, + -2.81 + ], + [ + 116.06, + -3.01 + ], + [ + 116.27, + -3.13 + ], + [ + 116.15, + -3.15 + ], + [ + 115.97, + -3.61 + ], + [ + 114.68, + -4.18 + ], + [ + 114.51, + -3.38 + ], + [ + 114.44, + -3.5 + ], + [ + 114.07, + -3.3 + ], + [ + 113.63, + -3.46 + ], + [ + 113.58, + -3.14 + ], + [ + 113.34, + -3.28 + ], + [ + 113.03, + -2.92 + ], + [ + 112.94, + -3.11 + ], + [ + 113.04, + -3.13 + ], + [ + 112.64, + -3.4 + ], + [ + 112.26, + -3.31 + ], + [ + 111.88, + -3.54 + ], + [ + 111.77, + -3.5 + ], + [ + 111.83, + -3.05 + ], + [ + 111.71, + -2.79 + ], + [ + 111.55, + -3.02 + ], + [ + 111.41, + -2.9 + ], + [ + 110.65, + -3.04 + ], + [ + 110.56, + -2.84 + ], + [ + 110.26, + -2.96 + ], + [ + 110.12, + -2.03 + ], + [ + 109.9, + -1.83 + ], + [ + 110.06, + -1.34 + ], + [ + 109.73, + -0.9 + ], + [ + 109.68, + -1.01 + ], + [ + 109.26, + -0.85 + ], + [ + 109.25, + -0.66 + ], + [ + 109.54, + -0.73 + ], + [ + 109.12, + -0.52 + ], + [ + 109.06, + -0.22 + ], + [ + 109.19, + 0.07 + ], + [ + 108.92, + 0.33 + ], + [ + 108.84, + 0.81 + ], + [ + 108.98, + 0.96 + ], + [ + 108.91, + 1.17 + ], + [ + 109.15, + 1.25 + ], + [ + 108.96, + 1.21 + ], + [ + 109.05, + 1.52 + ], + [ + 109.34, + 1.94 + ], + [ + 109.65, + 2.08 + ] + ], + [ + [ + 116.1, + -0.39 + ], + [ + 116.19, + -0.51 + ], + [ + 116.28, + -0.44 + ], + [ + 116.1, + -0.39 + ] + ], + [ + [ + 116.44, + -0.18 + ], + [ + 116.41, + -0.27 + ], + [ + 116.54, + -0.26 + ], + [ + 116.44, + -0.18 + ] + ] + ], + [ + [ + [ + 117.68, + 4.17 + ], + [ + 117.9, + 4.17 + ], + [ + 117.86, + 4.03 + ], + [ + 117.68, + 4.17 + ] + ] + ], + [ + [ + [ + 141, + -2.6 + ], + [ + 141, + -4.14 + ], + [ + 141, + -4.15 + ], + [ + 141, + -4.16 + ], + [ + 141, + -4.18 + ], + [ + 141, + -6.29 + ], + [ + 141, + -6.31 + ], + [ + 140.91, + -6.56 + ], + [ + 140.87, + -6.79 + ], + [ + 141.02, + -6.89 + ], + [ + 141.02, + -9.12 + ], + [ + 140, + -8.2 + ], + [ + 140.06, + -7.99 + ], + [ + 139.38, + -8.2 + ], + [ + 139.24, + -8.07 + ], + [ + 138.91, + -8.27 + ], + [ + 138.83, + -8.12 + ], + [ + 138.92, + -8.08 + ], + [ + 138.91, + -7.92 + ], + [ + 139.11, + -7.57 + ], + [ + 138.67, + -7.21 + ], + [ + 139.26, + -7.14 + ], + [ + 138.85, + -7.16 + ], + [ + 138.56, + -6.94 + ], + [ + 138.92, + -6.84 + ], + [ + 139.23, + -6.99 + ], + [ + 138.43, + -6.36 + ], + [ + 138.32, + -5.83 + ], + [ + 138.16, + -5.77 + ], + [ + 138.25, + -5.68 + ], + [ + 138.05, + -5.68 + ], + [ + 138.05, + -5.39 + ], + [ + 138.18, + -5.35 + ], + [ + 138.05, + -5.35 + ], + [ + 138.01, + -5.5 + ], + [ + 137.94, + -5.33 + ], + [ + 137.72, + -5.36 + ], + [ + 137.72, + -5.2 + ], + [ + 137.45, + -5.1 + ], + [ + 137.51, + -4.96 + ], + [ + 137.42, + -5.13 + ], + [ + 137.42, + -4.95 + ], + [ + 137.18, + -5.01 + ], + [ + 137.07, + -4.88 + ], + [ + 136.79, + -4.9 + ], + [ + 136.87, + -4.77 + ], + [ + 136.63, + -4.83 + ], + [ + 136.32, + -4.66 + ], + [ + 135.92, + -4.49 + ], + [ + 135.2, + -4.46 + ], + [ + 134.63, + -4.12 + ], + [ + 134.68, + -3.94 + ], + [ + 134.96, + -3.95 + ], + [ + 134.68, + -3.92 + ], + [ + 134.51, + -4.04 + ], + [ + 134.33, + -3.88 + ], + [ + 134.29, + -4.05 + ], + [ + 134.11, + -3.91 + ], + [ + 134.14, + -3.74 + ], + [ + 133.96, + -3.86 + ], + [ + 133.83, + -3.56 + ], + [ + 133.82, + -3.73 + ], + [ + 133.62, + -3.48 + ], + [ + 133.7, + -3.17 + ], + [ + 133.88, + -3.06 + ], + [ + 133.81, + -2.91 + ], + [ + 133.65, + -3.12 + ], + [ + 133.58, + -3.57 + ], + [ + 133.41, + -3.69 + ], + [ + 133.4, + -3.58 + ], + [ + 133.4, + -3.75 + ], + [ + 133.46, + -3.86 + ], + [ + 133.31, + -3.86 + ], + [ + 133.4, + -3.9 + ], + [ + 133.25, + -4.07 + ], + [ + 132.91, + -4.09 + ], + [ + 132.73, + -3.68 + ], + [ + 132.94, + -3.55 + ], + [ + 132.82, + -3.3 + ], + [ + 132.66, + -3.32 + ], + [ + 132.35, + -2.94 + ], + [ + 131.98, + -2.93 + ], + [ + 132.07, + -2.79 + ], + [ + 131.95, + -2.77 + ], + [ + 132.23, + -2.65 + ], + [ + 132.73, + -2.8 + ], + [ + 133.21, + -2.41 + ], + [ + 133.38, + -2.52 + ], + [ + 133.26, + -2.71 + ], + [ + 133.49, + -2.73 + ], + [ + 133.44, + -2.64 + ], + [ + 133.54, + -2.7 + ], + [ + 133.63, + -2.53 + ], + [ + 133.66, + -2.67 + ], + [ + 133.85, + -2.67 + ], + [ + 133.73, + -2.44 + ], + [ + 133.99, + -2.39 + ], + [ + 133.83, + -2.33 + ], + [ + 134.02, + -2.16 + ], + [ + 133.92, + -2.04 + ], + [ + 133.52, + -2.24 + ], + [ + 132.32, + -2.28 + ], + [ + 132.04, + -2.07 + ], + [ + 132.11, + -1.87 + ], + [ + 132.04, + -2.03 + ], + [ + 131.93, + -1.88 + ], + [ + 132.06, + -1.65 + ], + [ + 131.9, + -1.7 + ], + [ + 131.98, + -1.49 + ], + [ + 131.72, + -1.58 + ], + [ + 131.74, + -1.37 + ], + [ + 131.45, + -1.51 + ], + [ + 131.37, + -1.39 + ], + [ + 131.26, + -1.52 + ], + [ + 130.94, + -1.44 + ], + [ + 131.23, + -1.12 + ], + [ + 131.22, + -0.82 + ], + [ + 131.85, + -0.71 + ], + [ + 132.42, + -0.34 + ], + [ + 132.95, + -0.45 + ], + [ + 133.4, + -0.74 + ], + [ + 133.97, + -0.72 + ], + [ + 134.28, + -1.34 + ], + [ + 134.07, + -1.65 + ], + [ + 134.18, + -2.36 + ], + [ + 134.46, + -2.86 + ], + [ + 134.46, + -2.55 + ], + [ + 134.63, + -2.47 + ], + [ + 134.69, + -2.97 + ], + [ + 134.86, + -2.88 + ], + [ + 134.86, + -3.25 + ], + [ + 135.11, + -3.38 + ], + [ + 135.47, + -3.37 + ], + [ + 135.78, + -3.11 + ], + [ + 136.39, + -2.22 + ], + [ + 137.17, + -2.11 + ], + [ + 137.26, + -2.05 + ], + [ + 137.11, + -1.79 + ], + [ + 137.16, + -1.88 + ], + [ + 137.16, + -1.77 + ], + [ + 137.31, + -1.8 + ], + [ + 137.24, + -1.74 + ], + [ + 137.84, + -1.46 + ], + [ + 137.95, + -1.63 + ], + [ + 138.14, + -1.65 + ], + [ + 137.98, + -1.53 + ], + [ + 138.66, + -1.79 + ], + [ + 139.75, + -2.36 + ], + [ + 140.15, + -2.33 + ], + [ + 140.72, + -2.49 + ], + [ + 140.71, + -2.63 + ], + [ + 141, + -2.6 + ] + ], + [ + [ + 135.22, + -1.5 + ], + [ + 135.34, + -1.48 + ], + [ + 135.09, + -1.5 + ], + [ + 135.22, + -1.5 + ] + ] + ], + [ + [ + [ + 124.95, + -8.96 + ], + [ + 124.98, + -9.07 + ], + [ + 125.13, + -8.99 + ], + [ + 125.14, + -8.99 + ], + [ + 125.19, + -9.16 + ], + [ + 125, + -9.18 + ], + [ + 125, + -9.19 + ], + [ + 125.09, + -9.45 + ], + [ + 125.09, + -9.46 + ], + [ + 124.4, + -10.17 + ], + [ + 123.46, + -10.36 + ], + [ + 123.76, + -10.09 + ], + [ + 123.58, + -10.02 + ], + [ + 123.67, + -9.63 + ], + [ + 124.04, + -9.34 + ], + [ + 124.48, + -9.17 + ], + [ + 124.95, + -8.96 + ] + ] + ], + [ + [ + [ + 138.67, + -6.75 + ], + [ + 138.8, + -6.84 + ], + [ + 138.68, + -6.87 + ], + [ + 138.67, + -6.75 + ] + ] + ], + [ + [ + [ + 134.5, + -5.5 + ], + [ + 134.71, + -5.52 + ], + [ + 134.56, + -5.56 + ], + [ + 134.76, + -5.65 + ], + [ + 134.74, + -5.97 + ], + [ + 134.54, + -5.92 + ], + [ + 134.3, + -6.02 + ], + [ + 134.42, + -5.79 + ], + [ + 134.21, + -5.71 + ], + [ + 134.35, + -5.73 + ], + [ + 134.5, + -5.5 + ] + ] + ], + [ + [ + [ + 133.07, + -5.63 + ], + [ + 132.84, + -6.01 + ], + [ + 133.15, + -5.27 + ], + [ + 133.07, + -5.63 + ] + ] + ], + [ + [ + [ + 132.74, + -5.66 + ], + [ + 132.82, + -5.85 + ], + [ + 132.69, + -5.95 + ], + [ + 132.61, + -5.59 + ], + [ + 132.74, + -5.66 + ] + ] + ], + [ + [ + [ + 134.87, + -6.39 + ], + [ + 134.81, + -6.46 + ], + [ + 134.85, + -6.28 + ], + [ + 134.87, + -6.39 + ] + ] + ], + [ + [ + [ + 134.67, + -6.67 + ], + [ + 134.76, + -6.62 + ], + [ + 134.67, + -6.78 + ], + [ + 134.67, + -6.67 + ] + ] + ], + [ + [ + [ + 134.56, + -6.52 + ], + [ + 134.4, + -6.4 + ], + [ + 134.53, + -6.58 + ], + [ + 134.37, + -6.82 + ], + [ + 134.2, + -6.94 + ], + [ + 134.07, + -6.83 + ], + [ + 134.12, + -6.45 + ], + [ + 134.3, + -6.66 + ], + [ + 134.1, + -6.17 + ], + [ + 134.4, + -6.4 + ], + [ + 134.15, + -6.01 + ], + [ + 134.32, + -6.2 + ], + [ + 134.28, + -6.05 + ], + [ + 134.54, + -5.92 + ], + [ + 134.75, + -6.05 + ], + [ + 134.73, + -6.31 + ], + [ + 134.53, + -6.34 + ], + [ + 134.56, + -6.52 + ] + ] + ], + [ + [ + [ + 131.95, + -7.16 + ], + [ + 131.95, + -7.25 + ], + [ + 131.71, + -7.15 + ], + [ + 131.95, + -7.16 + ] + ] + ], + [ + [ + [ + 131.62, + -7.13 + ], + [ + 131.75, + -7.21 + ], + [ + 131.63, + -7.25 + ], + [ + 131.62, + -7.65 + ], + [ + 131.29, + -8.03 + ], + [ + 131.3, + -7.92 + ], + [ + 131.1, + -8 + ], + [ + 131.11, + -7.7 + ], + [ + 131.27, + -7.7 + ], + [ + 131.16, + -7.67 + ], + [ + 131.23, + -7.49 + ], + [ + 131.62, + -7.13 + ] + ] + ], + [ + [ + [ + 135.72, + -1.7 + ], + [ + 135.41, + -1.6 + ], + [ + 136.9, + -1.79 + ], + [ + 136.26, + -1.91 + ], + [ + 135.72, + -1.7 + ] + ] + ], + [ + [ + [ + 135.47, + -0.65 + ], + [ + 135.85, + -0.7 + ], + [ + 136.17, + -1.04 + ], + [ + 136.38, + -1.08 + ], + [ + 135.86, + -1.17 + ], + [ + 135.73, + -0.78 + ], + [ + 135.64, + -0.89 + ], + [ + 135.47, + -0.74 + ], + [ + 135.54, + -0.87 + ], + [ + 135.36, + -0.64 + ], + [ + 135.47, + -0.65 + ] + ] + ], + [ + [ + [ + 134.85, + -1.13 + ], + [ + 134.84, + -0.93 + ], + [ + 134.99, + -1.05 + ], + [ + 134.85, + -1.13 + ] + ] + ], + [ + [ + [ + 138.5, + -8.32 + ], + [ + 137.64, + -8.42 + ], + [ + 138.12, + -7.54 + ], + [ + 138.78, + -7.38 + ], + [ + 139.09, + -7.57 + ], + [ + 138.89, + -7.91 + ], + [ + 138.91, + -8.08 + ], + [ + 138.68, + -8.15 + ], + [ + 138.5, + -8.32 + ] + ] + ], + [ + [ + [ + 138.81, + -8.14 + ], + [ + 138.91, + -8.38 + ], + [ + 138.56, + -8.35 + ], + [ + 138.81, + -8.14 + ] + ] + ], + [ + [ + [ + 104.49, + 0.98 + ], + [ + 104.22, + 1.09 + ], + [ + 104.58, + 1.23 + ], + [ + 104.59, + 0.81 + ], + [ + 104.49, + 0.98 + ] + ] + ], + [ + [ + [ + 104.56, + 0.12 + ], + [ + 104.48, + 0.24 + ], + [ + 104.7, + 0.02 + ], + [ + 104.56, + 0.12 + ] + ] + ], + [ + [ + [ + 104.64, + -0.04 + ], + [ + 105, + -0.3 + ], + [ + 104.43, + -0.24 + ], + [ + 104.49, + 0 + ], + [ + 104.64, + -0.04 + ] + ] + ], + [ + [ + [ + 104.45, + -0.34 + ], + [ + 104.6, + -0.47 + ], + [ + 104.36, + -0.68 + ], + [ + 104.24, + -0.49 + ], + [ + 104.45, + -0.34 + ] + ] + ], + [ + [ + [ + 104.09, + 1.14 + ], + [ + 104.1, + 0.98 + ], + [ + 103.92, + 1.02 + ], + [ + 103.92, + 1.14 + ], + [ + 104.09, + 1.14 + ] + ] + ], + [ + [ + [ + 103.92, + 1.01 + ], + [ + 103.94, + 0.91 + ], + [ + 103.83, + 0.98 + ], + [ + 103.92, + 1.01 + ] + ] + ], + [ + [ + [ + 103.38, + 1.14 + ], + [ + 103.44, + 0.99 + ], + [ + 103.32, + 1.04 + ], + [ + 103.38, + 1.14 + ] + ] + ], + [ + [ + [ + 103.5, + 0.71 + ], + [ + 103.4, + 0.65 + ], + [ + 103.37, + 0.89 + ], + [ + 103.5, + 0.71 + ] + ] + ], + [ + [ + [ + 102.39, + 1.33 + ], + [ + 102, + 1.6 + ], + [ + 102.46, + 1.52 + ], + [ + 102.51, + 1.26 + ], + [ + 102.39, + 1.33 + ] + ] + ], + [ + [ + [ + 102.47, + 1.25 + ], + [ + 102.39, + 0.91 + ], + [ + 102.21, + 1.41 + ], + [ + 102.47, + 1.25 + ] + ] + ], + [ + [ + [ + 102.61, + 1.03 + ], + [ + 102.5, + 0.95 + ], + [ + 102.48, + 1.12 + ], + [ + 102.61, + 1.03 + ] + ] + ], + [ + [ + [ + 102.69, + 0.93 + ], + [ + 102.88, + 0.95 + ], + [ + 103.05, + 0.72 + ], + [ + 102.41, + 0.85 + ], + [ + 102.74, + 1.02 + ], + [ + 102.69, + 0.93 + ] + ] + ], + [ + [ + [ + 102.87, + 1.05 + ], + [ + 102.62, + 1.02 + ], + [ + 102.87, + 1.13 + ], + [ + 103.15, + 0.85 + ], + [ + 102.8, + 1 + ], + [ + 102.87, + 1.05 + ] + ] + ], + [ + [ + [ + 103.15, + 0.64 + ], + [ + 103.25, + 0.69 + ], + [ + 103.29, + 0.53 + ], + [ + 103.17, + 0.5 + ], + [ + 103.15, + 0.64 + ] + ] + ], + [ + [ + [ + 101.39, + 1.91 + ], + [ + 101.66, + 2.13 + ], + [ + 101.79, + 1.94 + ], + [ + 101.62, + 1.69 + ], + [ + 101.39, + 1.91 + ] + ] + ], + [ + [ + [ + 128.28, + 2.02 + ], + [ + 128.2, + 2.28 + ], + [ + 128.57, + 2.64 + ], + [ + 128.69, + 2.42 + ], + [ + 128.58, + 2.11 + ], + [ + 128.28, + 2.02 + ] + ] + ], + [ + [ + [ + 130.65, + -0.51 + ], + [ + 130.46, + -0.46 + ], + [ + 130.52, + -0.47 + ], + [ + 130.62, + -0.4 + ], + [ + 130.65, + -0.51 + ] + ] + ], + [ + [ + [ + 130.73, + -0.29 + ], + [ + 130.94, + -0.38 + ], + [ + 130.73, + -0.44 + ], + [ + 130.68, + -0.29 + ], + [ + 130.58, + -0.32 + ], + [ + 130.55, + -0.43 + ], + [ + 130.53, + -0.25 + ], + [ + 130.22, + -0.21 + ], + [ + 130.45, + -0.2 + ], + [ + 130.3, + -0.17 + ], + [ + 130.35, + -0.08 + ], + [ + 131.05, + -0.02 + ], + [ + 131.34, + -0.29 + ], + [ + 130.96, + -0.35 + ], + [ + 130.62, + -0.08 + ], + [ + 130.73, + -0.29 + ] + ] + ], + [ + [ + [ + 129.38, + 0 + ], + [ + 129.56, + -0.21 + ], + [ + 129.28, + 0.05 + ], + [ + 129.38, + 0 + ] + ] + ], + [ + [ + [ + 130.49, + -0.79 + ], + [ + 130.93, + -0.78 + ], + [ + 130.39, + -0.92 + ], + [ + 130.49, + -0.79 + ] + ] + ], + [ + [ + [ + 127.5, + 0.89 + ], + [ + 127.4, + 1.2 + ], + [ + 127.55, + 1.71 + ], + [ + 127.95, + 2.22 + ], + [ + 128.07, + 2.2 + ], + [ + 127.84, + 1.85 + ], + [ + 128.01, + 1.74 + ], + [ + 128.01, + 1.31 + ], + [ + 127.63, + 0.92 + ], + [ + 127.85, + 0.81 + ], + [ + 127.98, + 1.09 + ], + [ + 128.2, + 1.16 + ], + [ + 128.09, + 1.26 + ], + [ + 128.18, + 1.38 + ], + [ + 128.72, + 1.57 + ], + [ + 128.7, + 1.06 + ], + [ + 128.2, + 0.79 + ], + [ + 128.68, + 0.55 + ], + [ + 128.67, + 0.34 + ], + [ + 128.9, + 0.21 + ], + [ + 128.08, + 0.48 + ], + [ + 127.86, + 0.3 + ], + [ + 128.05, + -0.42 + ], + [ + 128.45, + -0.91 + ], + [ + 128.02, + -0.69 + ], + [ + 127.69, + -0.27 + ], + [ + 127.73, + 0.31 + ], + [ + 127.53, + 0.55 + ], + [ + 127.64, + 0.85 + ], + [ + 127.5, + 0.89 + ] + ] + ], + [ + [ + [ + 127.27, + -0.28 + ], + [ + 127.26, + -0.49 + ], + [ + 127.13, + -0.52 + ], + [ + 127.11, + -0.28 + ], + [ + 127.27, + -0.28 + ] + ] + ], + [ + [ + [ + 127.79, + -0.68 + ], + [ + 127.91, + -0.78 + ], + [ + 127.83, + -0.85 + ], + [ + 127.63, + -0.74 + ], + [ + 127.47, + -0.82 + ], + [ + 127.32, + -0.33 + ], + [ + 127.45, + -0.42 + ], + [ + 127.56, + -0.3 + ], + [ + 127.69, + -0.46 + ], + [ + 127.59, + -0.62 + ], + [ + 127.79, + -0.68 + ] + ] + ], + [ + [ + [ + 127.3, + -0.68 + ], + [ + 127.33, + -0.79 + ], + [ + 127.17, + -0.75 + ], + [ + 127.2, + -0.61 + ], + [ + 127.3, + -0.68 + ] + ] + ], + [ + [ + [ + 121.87, + -0.52 + ], + [ + 121.65, + -0.54 + ], + [ + 121.77, + -0.42 + ], + [ + 121.87, + -0.52 + ] + ] + ], + [ + [ + [ + 117.62, + 3.26 + ], + [ + 117.55, + 3.44 + ], + [ + 117.67, + 3.41 + ], + [ + 117.62, + 3.26 + ] + ] + ], + [ + [ + [ + 117.64, + 4.14 + ], + [ + 117.75, + 4.06 + ], + [ + 117.68, + 3.97 + ], + [ + 117.64, + 4.14 + ] + ] + ], + [ + [ + [ + 125.51, + 3.57 + ], + [ + 125.42, + 3.73 + ], + [ + 125.66, + 3.52 + ], + [ + 125.64, + 3.38 + ], + [ + 125.51, + 3.57 + ] + ] + ], + [ + [ + [ + 126.85, + 4.46 + ], + [ + 126.91, + 4.27 + ], + [ + 126.68, + 3.99 + ], + [ + 126.79, + 4.21 + ], + [ + 126.73, + 4.54 + ], + [ + 126.85, + 4.46 + ] + ] + ], + [ + [ + [ + 126.72, + 3.89 + ], + [ + 126.68, + 3.81 + ], + [ + 126.61, + 4.04 + ], + [ + 126.72, + 3.89 + ] + ] + ], + [ + [ + [ + 105.85, + 2.99 + ], + [ + 105.73, + 2.82 + ], + [ + 105.69, + 3.06 + ], + [ + 105.85, + 2.99 + ] + ] + ], + [ + [ + [ + 106.27, + 3.18 + ], + [ + 106.28, + 3.08 + ], + [ + 106.2, + 3.23 + ], + [ + 106.27, + 3.18 + ] + ] + ], + [ + [ + [ + 108.39, + 3.79 + ], + [ + 108.16, + 3.63 + ], + [ + 108.23, + 3.82 + ], + [ + 107.96, + 4 + ], + [ + 108.23, + 4.23 + ], + [ + 108.39, + 3.79 + ] + ] + ], + [ + [ + [ + 107.63, + -2.6 + ], + [ + 107.83, + -2.53 + ], + [ + 108.26, + -2.74 + ], + [ + 108.21, + -3.15 + ], + [ + 107.98, + -3.27 + ], + [ + 107.85, + -3.06 + ], + [ + 107.61, + -3.24 + ], + [ + 107.63, + -2.6 + ] + ] + ], + [ + [ + [ + 106.33, + -2.95 + ], + [ + 105.95, + -2.82 + ], + [ + 105.76, + -2.14 + ], + [ + 105.13, + -2.08 + ], + [ + 105.39, + -1.61 + ], + [ + 105.6, + -1.53 + ], + [ + 105.72, + -1.65 + ], + [ + 105.65, + -1.76 + ], + [ + 105.8, + -1.77 + ], + [ + 105.7, + -1.53 + ], + [ + 105.92, + -1.5 + ], + [ + 106.19, + -1.9 + ], + [ + 106.3, + -2.42 + ], + [ + 106.85, + -2.57 + ], + [ + 106.59, + -2.89 + ], + [ + 106.74, + -3.09 + ], + [ + 106.51, + -3.11 + ], + [ + 106.33, + -2.95 + ] + ] + ], + [ + [ + [ + 102.09, + -5.36 + ], + [ + 102.24, + -5.32 + ], + [ + 102.37, + -5.49 + ], + [ + 102.09, + -5.36 + ] + ] + ], + [ + [ + [ + 109.68, + -1.02 + ], + [ + 109.78, + -1.15 + ], + [ + 109.38, + -1.26 + ], + [ + 109.49, + -0.97 + ], + [ + 109.68, + -1.02 + ] + ] + ], + [ + [ + [ + 108.91, + -1.66 + ], + [ + 108.79, + -1.58 + ], + [ + 108.94, + -1.55 + ], + [ + 108.91, + -1.66 + ] + ] + ], + [ + [ + [ + 130.69, + -0.95 + ], + [ + 131.08, + -0.97 + ], + [ + 130.97, + -1.35 + ], + [ + 130.74, + -1.23 + ], + [ + 130.69, + -0.95 + ] + ] + ], + [ + [ + [ + 127.57, + -1.19 + ], + [ + 127.69, + -1.27 + ], + [ + 127.47, + -1.26 + ], + [ + 127.57, + -1.19 + ] + ] + ], + [ + [ + [ + 127.7, + -1.35 + ], + [ + 128.16, + -1.68 + ], + [ + 127.41, + -1.66 + ], + [ + 127.42, + -1.42 + ], + [ + 127.7, + -1.35 + ] + ] + ], + [ + [ + [ + 130.45, + -2.01 + ], + [ + 130.13, + -2.06 + ], + [ + 129.72, + -1.88 + ], + [ + 130.35, + -1.67 + ], + [ + 130.45, + -2.01 + ] + ] + ], + [ + [ + [ + 128.49, + -3.62 + ], + [ + 128.42, + -3.52 + ], + [ + 128.56, + -3.54 + ], + [ + 128.49, + -3.62 + ] + ] + ], + [ + [ + [ + 128.97, + -3.29 + ], + [ + 128.87, + -3.21 + ], + [ + 128.67, + -3.43 + ], + [ + 128.46, + -3.46 + ], + [ + 128.16, + -3.06 + ], + [ + 127.92, + -3.57 + ], + [ + 127.84, + -3.16 + ], + [ + 128.12, + -3.06 + ], + [ + 128.16, + -2.86 + ], + [ + 129.05, + -2.79 + ], + [ + 129.13, + -2.97 + ], + [ + 129.53, + -2.77 + ], + [ + 130.58, + -3.12 + ], + [ + 130.66, + -3.4 + ], + [ + 130.84, + -3.46 + ], + [ + 130.85, + -3.86 + ], + [ + 129.93, + -3.34 + ], + [ + 129.52, + -3.3 + ], + [ + 129.53, + -3.47 + ], + [ + 128.97, + -3.29 + ] + ] + ], + [ + [ + [ + 128.18, + -3.57 + ], + [ + 128.34, + -3.5 + ], + [ + 128.36, + -3.63 + ], + [ + 127.94, + -3.77 + ], + [ + 128.18, + -3.57 + ] + ] + ], + [ + [ + [ + 129.85, + -7.84 + ], + [ + 129.76, + -8.05 + ], + [ + 129.58, + -7.9 + ], + [ + 129.67, + -7.79 + ], + [ + 129.85, + -7.84 + ] + ] + ], + [ + [ + [ + 127.37, + -7.66 + ], + [ + 127.36, + -7.5 + ], + [ + 127.49, + -7.52 + ], + [ + 127.37, + -7.66 + ] + ] + ], + [ + [ + [ + 128.53, + -7.13 + ], + [ + 128.7, + -7.12 + ], + [ + 128.65, + -7.22 + ], + [ + 128.53, + -7.13 + ] + ] + ], + [ + [ + [ + 127.86, + -8.21 + ], + [ + 127.76, + -8.11 + ], + [ + 128.13, + -8.15 + ], + [ + 127.86, + -8.21 + ] + ] + ], + [ + [ + [ + 127.07, + -3.32 + ], + [ + 127.27, + -3.39 + ], + [ + 127.22, + -3.66 + ], + [ + 126.69, + -3.86 + ], + [ + 126.18, + -3.61 + ], + [ + 126.01, + -3.26 + ], + [ + 126.09, + -3.11 + ], + [ + 126.78, + -3.06 + ], + [ + 127.11, + -3.23 + ], + [ + 127.07, + -3.32 + ] + ] + ], + [ + [ + [ + 125.92, + -2.27 + ], + [ + 125.91, + -1.97 + ], + [ + 126.05, + -2.48 + ], + [ + 125.92, + -2.27 + ] + ] + ], + [ + [ + [ + 125.82, + -7.93 + ], + [ + 125.97, + -7.65 + ], + [ + 126.18, + -7.73 + ], + [ + 126.63, + -7.56 + ], + [ + 126.84, + -7.73 + ], + [ + 126.47, + -7.97 + ], + [ + 126.06, + -7.89 + ], + [ + 125.8, + -8.02 + ], + [ + 125.82, + -7.93 + ] + ] + ], + [ + [ + [ + 124.69, + -1.65 + ], + [ + 125.29, + -1.73 + ], + [ + 125.33, + -1.88 + ], + [ + 124.4, + -2.03 + ], + [ + 124.38, + -1.68 + ], + [ + 124.69, + -1.65 + ] + ] + ], + [ + [ + [ + 125.72, + -1.82 + ], + [ + 126.35, + -1.81 + ], + [ + 125.92, + -1.94 + ], + [ + 125.33, + -1.86 + ], + [ + 125.72, + -1.82 + ] + ] + ], + [ + [ + [ + 123.06, + -1.83 + ], + [ + 123.15, + -1.82 + ], + [ + 123.06, + -1.93 + ], + [ + 123.06, + -1.83 + ] + ] + ], + [ + [ + [ + 123.28, + -1.33 + ], + [ + 123.56, + -1.28 + ], + [ + 123.46, + -1.52 + ], + [ + 123.26, + -1.45 + ], + [ + 123.24, + -1.65 + ], + [ + 123.11, + -1.6 + ], + [ + 123.15, + -1.3 + ], + [ + 122.91, + -1.6 + ], + [ + 122.79, + -1.48 + ], + [ + 122.91, + -1.18 + ], + [ + 123.19, + -1.15 + ], + [ + 123.28, + -1.33 + ] + ] + ], + [ + [ + [ + 124.43, + -8.29 + ], + [ + 124.53, + -8.12 + ], + [ + 125.09, + -8.15 + ], + [ + 125.14, + -8.25 + ], + [ + 124.42, + -8.46 + ], + [ + 124.43, + -8.29 + ] + ] + ], + [ + [ + [ + 124.09, + -8.36 + ], + [ + 124.32, + -8.18 + ], + [ + 124.06, + -8.55 + ], + [ + 123.91, + -8.44 + ], + [ + 124.09, + -8.36 + ] + ] + ], + [ + [ + [ + 123.19, + -4.01 + ], + [ + 123.14, + -4.26 + ], + [ + 122.99, + -4.2 + ], + [ + 123.01, + -3.98 + ], + [ + 123.19, + -4.01 + ] + ] + ], + [ + [ + [ + 123.31, + -8.43 + ], + [ + 123.48, + -8.34 + ], + [ + 123.41, + -8.25 + ], + [ + 123.56, + -8.24 + ], + [ + 123.55, + -8.37 + ], + [ + 123.61, + -8.22 + ], + [ + 123.92, + -8.25 + ], + [ + 123.55, + -8.57 + ], + [ + 123.22, + -8.55 + ], + [ + 123.31, + -8.43 + ] + ] + ], + [ + [ + [ + 123.06, + -8.41 + ], + [ + 123.14, + -8.23 + ], + [ + 123.33, + -8.27 + ], + [ + 123.06, + -8.41 + ] + ] + ], + [ + [ + [ + 122.95, + -8.49 + ], + [ + 123.17, + -8.44 + ], + [ + 122.89, + -8.61 + ], + [ + 122.95, + -8.49 + ] + ] + ], + [ + [ + [ + 122.81, + -10.78 + ], + [ + 123.44, + -10.49 + ], + [ + 123.22, + -10.83 + ], + [ + 122.85, + -10.94 + ], + [ + 122.81, + -10.78 + ] + ] + ], + [ + [ + [ + 117.52, + -8.39 + ], + [ + 117.48, + -8.19 + ], + [ + 117.67, + -8.15 + ], + [ + 117.52, + -8.39 + ] + ] + ], + [ + [ + [ + 116.03, + -3.59 + ], + [ + 116.28, + -3.21 + ], + [ + 116.31, + -3.92 + ], + [ + 116.09, + -4.09 + ], + [ + 116.03, + -3.59 + ] + ] + ], + [ + [ + [ + 119.62, + -4.21 + ], + [ + 119.46, + -3.49 + ], + [ + 118.91, + -3.52 + ], + [ + 118.78, + -3.09 + ], + [ + 118.89, + -2.89 + ], + [ + 118.76, + -2.79 + ], + [ + 118.82, + -2.62 + ], + [ + 119.14, + -2.47 + ], + [ + 119.21, + -2 + ], + [ + 119.33, + -1.96 + ], + [ + 119.34, + -1.17 + ], + [ + 119.73, + -0.65 + ], + [ + 119.88, + -0.86 + ], + [ + 119.81, + -0.14 + ], + [ + 119.6, + -0.01 + ], + [ + 119.84, + -0.1 + ], + [ + 119.77, + 0.21 + ], + [ + 119.9, + 0.22 + ], + [ + 119.88, + 0.46 + ], + [ + 120.05, + 0.51 + ], + [ + 120.04, + 0.72 + ], + [ + 120.24, + 0.8 + ], + [ + 120.25, + 0.96 + ], + [ + 120.59, + 0.75 + ], + [ + 120.9, + 1.36 + ], + [ + 121.25, + 1.23 + ], + [ + 121.46, + 1.31 + ], + [ + 121.43, + 1.16 + ], + [ + 121.66, + 1.03 + ], + [ + 122.45, + 1.03 + ], + [ + 122.85, + 0.8 + ], + [ + 122.99, + 0.97 + ], + [ + 123.96, + 0.84 + ], + [ + 124.35, + 1.16 + ], + [ + 124.58, + 1.19 + ], + [ + 124.53, + 1.35 + ], + [ + 124.83, + 1.46 + ], + [ + 124.98, + 1.75 + ], + [ + 125.18, + 1.68 + ], + [ + 125.24, + 1.49 + ], + [ + 125.01, + 1.12 + ], + [ + 124.64, + 0.79 + ], + [ + 124.51, + 0.47 + ], + [ + 124.22, + 0.38 + ], + [ + 123.35, + 0.31 + ], + [ + 123.06, + 0.52 + ], + [ + 121.8, + 0.41 + ], + [ + 121.53, + 0.56 + ], + [ + 121.11, + 0.4 + ], + [ + 120.65, + 0.52 + ], + [ + 120.3, + 0.42 + ], + [ + 120.03, + -0.07 + ], + [ + 120.06, + -0.63 + ], + [ + 120.31, + -0.97 + ], + [ + 120.51, + -1 + ], + [ + 120.68, + -1.42 + ], + [ + 121.1, + -1.44 + ], + [ + 121.65, + -0.8 + ], + [ + 121.67, + -0.92 + ], + [ + 121.95, + -1 + ], + [ + 122.2, + -0.79 + ], + [ + 122.96, + -0.75 + ], + [ + 122.72, + -0.66 + ], + [ + 123.06, + -0.56 + ], + [ + 123.46, + -0.77 + ], + [ + 123.32, + -1.05 + ], + [ + 123.1, + -0.83 + ], + [ + 122.8, + -0.94 + ], + [ + 122.39, + -1.49 + ], + [ + 121.86, + -1.67 + ], + [ + 121.68, + -1.95 + ], + [ + 121.29, + -1.84 + ], + [ + 121.34, + -2.01 + ], + [ + 121.41, + -1.91 + ], + [ + 121.55, + -2.17 + ], + [ + 121.82, + -2.29 + ], + [ + 122.01, + -2.72 + ], + [ + 122.49, + -3.18 + ], + [ + 122.33, + -3.23 + ], + [ + 122.38, + -3.46 + ], + [ + 122.24, + -3.39 + ], + [ + 122.2, + -3.61 + ], + [ + 122.67, + -3.9 + ], + [ + 122.51, + -4 + ], + [ + 122.65, + -4.01 + ], + [ + 122.66, + -4.15 + ], + [ + 122.86, + -4.19 + ], + [ + 122.76, + -4.07 + ], + [ + 122.85, + -4.07 + ], + [ + 122.88, + -4.41 + ], + [ + 122.68, + -4.32 + ], + [ + 122.74, + -4.51 + ], + [ + 122.58, + -4.4 + ], + [ + 122.11, + -4.53 + ], + [ + 122.01, + -4.9 + ], + [ + 121.54, + -4.77 + ], + [ + 121.47, + -4.61 + ], + [ + 121.61, + -4.07 + ], + [ + 120.9, + -3.57 + ], + [ + 121.09, + -3.01 + ], + [ + 120.97, + -2.81 + ], + [ + 121.1, + -2.72 + ], + [ + 120.81, + -2.62 + ], + [ + 120.19, + -2.97 + ], + [ + 120.42, + -3.27 + ], + [ + 120.32, + -4.1 + ], + [ + 120.46, + -4.66 + ], + [ + 120.27, + -5.15 + ], + [ + 120.47, + -5.62 + ], + [ + 120.32, + -5.51 + ], + [ + 119.94, + -5.54 + ], + [ + 119.7, + -5.7 + ], + [ + 119.43, + -5.58 + ], + [ + 119.35, + -5.33 + ], + [ + 119.62, + -4.21 + ] + ], + [ + [ + 121.41, + -2.68 + ], + [ + 121.39, + -2.94 + ], + [ + 121.7, + -2.68 + ], + [ + 121.41, + -2.68 + ] + ], + [ + [ + 120.59, + -1.76 + ], + [ + 120.5, + -1.83 + ], + [ + 120.67, + -2.08 + ], + [ + 120.59, + -1.76 + ] + ] + ], + [ + [ + [ + 122.61, + -5.46 + ], + [ + 122.82, + -5.21 + ], + [ + 122.74, + -5.05 + ], + [ + 122.87, + -4.53 + ], + [ + 123.08, + -4.37 + ], + [ + 123.21, + -4.86 + ], + [ + 123.02, + -4.69 + ], + [ + 122.92, + -5.18 + ], + [ + 123.22, + -5.3 + ], + [ + 122.87, + -5.45 + ], + [ + 122.78, + -5.7 + ], + [ + 122.62, + -5.68 + ], + [ + 122.61, + -5.46 + ] + ] + ], + [ + [ + [ + 122.73, + -4.85 + ], + [ + 122.6, + -5.43 + ], + [ + 122.54, + -5.26 + ], + [ + 122.46, + -5.4 + ], + [ + 122.27, + -5.39 + ], + [ + 122.37, + -4.74 + ], + [ + 122.7, + -4.62 + ], + [ + 122.73, + -4.85 + ] + ] + ], + [ + [ + [ + 121.82, + -5.2 + ], + [ + 121.97, + -5.07 + ], + [ + 122.05, + -5.46 + ], + [ + 121.95, + -5.49 + ], + [ + 121.82, + -5.2 + ] + ] + ], + [ + [ + [ + 120.57, + -6.05 + ], + [ + 120.48, + -6.5 + ], + [ + 120.48, + -5.77 + ], + [ + 120.57, + -6.05 + ] + ] + ], + [ + [ + [ + 120.67, + -7.15 + ], + [ + 120.62, + -7 + ], + [ + 120.79, + -7.06 + ], + [ + 120.67, + -7.15 + ] + ] + ], + [ + [ + [ + 121.87, + -10.43 + ], + [ + 121.99, + -10.55 + ], + [ + 121.68, + -10.58 + ], + [ + 121.87, + -10.43 + ] + ] + ], + [ + [ + [ + 120.25, + -9.64 + ], + [ + 120.47, + -9.62 + ], + [ + 120.82, + -10.12 + ], + [ + 120.45, + -10.32 + ], + [ + 120.17, + -10.24 + ], + [ + 119.67, + -9.78 + ], + [ + 119.19, + -9.76 + ], + [ + 118.93, + -9.55 + ], + [ + 119.17, + -9.38 + ], + [ + 119.8, + -9.4 + ], + [ + 119.94, + -9.27 + ], + [ + 120.25, + -9.64 + ] + ] + ], + [ + [ + [ + 119.41, + -8.5 + ], + [ + 119.57, + -8.49 + ], + [ + 119.44, + -8.75 + ], + [ + 119.41, + -8.5 + ] + ] + ], + [ + [ + [ + 120.91, + -8.36 + ], + [ + 121.51, + -8.62 + ], + [ + 121.62, + -8.47 + ], + [ + 122.02, + -8.44 + ], + [ + 122.29, + -8.64 + ], + [ + 122.88, + -8.29 + ], + [ + 122.9, + -8.18 + ], + [ + 122.73, + -8.22 + ], + [ + 122.84, + -8.07 + ], + [ + 123.02, + -8.31 + ], + [ + 122.78, + -8.42 + ], + [ + 122.82, + -8.6 + ], + [ + 121.64, + -8.91 + ], + [ + 121.57, + -8.8 + ], + [ + 121, + -8.96 + ], + [ + 120.84, + -8.83 + ], + [ + 119.91, + -8.87 + ], + [ + 119.8, + -8.76 + ], + [ + 119.86, + -8.43 + ], + [ + 120.1, + -8.45 + ], + [ + 120.43, + -8.24 + ], + [ + 120.91, + -8.36 + ] + ] + ], + [ + [ + [ + 119.68, + -8.81 + ], + [ + 119.61, + -8.61 + ], + [ + 119.8, + -8.62 + ], + [ + 119.68, + -8.81 + ] + ] + ], + [ + [ + [ + 118.82, + -8.83 + ], + [ + 118.42, + -8.87 + ], + [ + 118.39, + -8.6 + ], + [ + 118.18, + -8.85 + ], + [ + 117.41, + -9.05 + ], + [ + 117.01, + -9.11 + ], + [ + 116.72, + -8.97 + ], + [ + 116.82, + -8.52 + ], + [ + 117.11, + -8.37 + ], + [ + 117.57, + -8.41 + ], + [ + 117.79, + -8.72 + ], + [ + 118.27, + -8.66 + ], + [ + 117.69, + -8.24 + ], + [ + 117.92, + -8.08 + ], + [ + 118.14, + -8.13 + ], + [ + 118.29, + -8.37 + ], + [ + 118.65, + -8.29 + ], + [ + 118.65, + -8.55 + ], + [ + 118.77, + -8.31 + ], + [ + 119, + -8.31 + ], + [ + 119.03, + -8.63 + ], + [ + 119.17, + -8.56 + ], + [ + 119.17, + -8.72 + ], + [ + 118.68, + -8.74 + ], + [ + 118.96, + -8.82 + ], + [ + 118.82, + -8.83 + ] + ] + ], + [ + [ + [ + 116.06, + -8.75 + ], + [ + 116.03, + -8.44 + ], + [ + 116.26, + -8.25 + ], + [ + 116.72, + -8.35 + ], + [ + 116.47, + -8.81 + ], + [ + 116.57, + -8.89 + ], + [ + 116.01, + -8.9 + ], + [ + 115.82, + -8.75 + ], + [ + 116.06, + -8.75 + ] + ] + ], + [ + [ + [ + 112.71, + -7.1 + ], + [ + 112.86, + -6.89 + ], + [ + 113.91, + -6.86 + ], + [ + 114.13, + -6.98 + ], + [ + 113.51, + -7.25 + ], + [ + 112.71, + -7.1 + ] + ] + ], + [ + [ + [ + 115.49, + -8.76 + ], + [ + 115.56, + -8.67 + ], + [ + 115.63, + -8.77 + ], + [ + 115.49, + -8.76 + ] + ] + ], + [ + [ + [ + 115.5, + -6.95 + ], + [ + 115.37, + -6.89 + ], + [ + 115.29, + -7.01 + ], + [ + 115.2, + -6.9 + ], + [ + 115.39, + -6.83 + ], + [ + 115.5, + -6.95 + ] + ] + ], + [ + [ + [ + 114.87, + -8.2 + ], + [ + 115.18, + -8.06 + ], + [ + 115.71, + -8.4 + ], + [ + 115.11, + -8.85 + ], + [ + 115.12, + -8.65 + ], + [ + 114.58, + -8.4 + ], + [ + 114.43, + -8.1 + ], + [ + 114.87, + -8.2 + ] + ] + ], + [ + [ + [ + 107.09, + -5.97 + ], + [ + 107.34, + -5.97 + ], + [ + 107.62, + -6.23 + ], + [ + 107.89, + -6.19 + ], + [ + 108.13, + -6.34 + ], + [ + 108.36, + -6.25 + ], + [ + 108.71, + -6.81 + ], + [ + 109.29, + -6.87 + ], + [ + 109.52, + -6.77 + ], + [ + 110.43, + -6.95 + ], + [ + 110.73, + -6.43 + ], + [ + 110.92, + -6.4 + ], + [ + 111.24, + -6.69 + ], + [ + 111.55, + -6.63 + ], + [ + 112.12, + -6.9 + ], + [ + 112.55, + -6.84 + ], + [ + 112.91, + -7.63 + ], + [ + 113.28, + -7.78 + ], + [ + 114.04, + -7.6 + ], + [ + 114.44, + -7.79 + ], + [ + 114.34, + -8.52 + ], + [ + 114.6, + -8.75 + ], + [ + 113.12, + -8.26 + ], + [ + 112.65, + -8.45 + ], + [ + 111.8, + -8.26 + ], + [ + 111.7, + -8.38 + ], + [ + 110.71, + -8.2 + ], + [ + 109.35, + -7.71 + ], + [ + 108.57, + -7.69 + ], + [ + 108.43, + -7.82 + ], + [ + 107.85, + -7.74 + ], + [ + 107.4, + -7.49 + ], + [ + 106.41, + -7.38 + ], + [ + 106.51, + -6.96 + ], + [ + 106.03, + -6.82 + ], + [ + 105.24, + -6.84 + ], + [ + 105.37, + -6.65 + ], + [ + 105.47, + -6.83 + ], + [ + 105.65, + -6.48 + ], + [ + 105.8, + -6.49 + ], + [ + 106.04, + -5.88 + ], + [ + 106.16, + -6.02 + ], + [ + 106.64, + -6 + ], + [ + 106.81, + -6.12 + ], + [ + 107.09, + -5.97 + ] + ] + ], + [ + [ + [ + 100.46, + -3.31 + ], + [ + 100.19, + -2.99 + ], + [ + 100.19, + -2.79 + ], + [ + 100.47, + -3.02 + ], + [ + 100.36, + -3.16 + ], + [ + 100.46, + -3.31 + ] + ] + ], + [ + [ + [ + 100.2, + -2.78 + ], + [ + 100, + -2.84 + ], + [ + 99.97, + -2.51 + ], + [ + 100.2, + -2.78 + ] + ] + ], + [ + [ + [ + 99.81, + -2.37 + ], + [ + 99.6, + -2.28 + ], + [ + 99.56, + -2.04 + ], + [ + 99.81, + -2.37 + ] + ] + ], + [ + [ + [ + 96.5, + 2.36 + ], + [ + 95.8, + 2.63 + ], + [ + 95.69, + 2.77 + ], + [ + 95.78, + 2.93 + ], + [ + 96.5, + 2.36 + ] + ] + ], + [ + [ + [ + 103.43, + -0.51 + ], + [ + 103.32, + -0.7 + ], + [ + 103.81, + -1.05 + ], + [ + 104.37, + -1.03 + ], + [ + 104.54, + -1.77 + ], + [ + 104.46, + -1.93 + ], + [ + 104.55, + -1.85 + ], + [ + 104.61, + -2 + ], + [ + 104.9, + -2.11 + ], + [ + 104.68, + -2.35 + ], + [ + 104.72, + -2.56 + ], + [ + 104.85, + -2.28 + ], + [ + 104.93, + -2.4 + ], + [ + 105.62, + -2.39 + ], + [ + 105.81, + -2.92 + ], + [ + 106.05, + -3 + ], + [ + 106.09, + -3.25 + ], + [ + 105.82, + -3.59 + ], + [ + 105.96, + -3.83 + ], + [ + 105.82, + -4.16 + ], + [ + 105.9, + -4.94 + ], + [ + 105.72, + -5.91 + ], + [ + 105.29, + -5.45 + ], + [ + 105.15, + -5.81 + ], + [ + 104.57, + -5.51 + ], + [ + 104.73, + -5.93 + ], + [ + 104.56, + -5.93 + ], + [ + 103.91, + -5.13 + ], + [ + 102.9, + -4.49 + ], + [ + 102.28, + -3.96 + ], + [ + 102.22, + -3.66 + ], + [ + 101.62, + -3.24 + ], + [ + 100.89, + -2.32 + ], + [ + 100.86, + -1.92 + ], + [ + 100.35, + -1.17 + ], + [ + 100.33, + -0.85 + ], + [ + 99.71, + 0 + ], + [ + 99.14, + 0.25 + ], + [ + 98.71, + 1.56 + ], + [ + 98.8, + 1.72 + ], + [ + 97.98, + 2.26 + ], + [ + 97.78, + 2.24 + ], + [ + 97.59, + 2.88 + ], + [ + 97.37, + 2.99 + ], + [ + 97, + 3.55 + ], + [ + 96.47, + 3.77 + ], + [ + 95.41, + 4.82 + ], + [ + 95.21, + 5.56 + ], + [ + 95.61, + 5.63 + ], + [ + 96.39, + 5.21 + ], + [ + 97.52, + 5.24 + ], + [ + 97.9, + 4.89 + ], + [ + 97.95, + 4.54 + ], + [ + 98.29, + 4.42 + ], + [ + 98.16, + 4.09 + ], + [ + 98.54, + 4.01 + ], + [ + 98.7, + 3.75 + ], + [ + 99.76, + 3.17 + ], + [ + 99.99, + 2.95 + ], + [ + 99.99, + 2.57 + ], + [ + 100.06, + 2.74 + ], + [ + 100.2, + 2.43 + ], + [ + 100.12, + 2.62 + ], + [ + 100.22, + 2.7 + ], + [ + 100.43, + 2.27 + ], + [ + 100.9, + 1.92 + ], + [ + 100.77, + 2.27 + ], + [ + 101.06, + 2.28 + ], + [ + 101.41, + 1.7 + ], + [ + 101.75, + 1.66 + ], + [ + 102.15, + 1.38 + ], + [ + 102.41, + 0.81 + ], + [ + 102.92, + 0.71 + ], + [ + 103.11, + 0.46 + ], + [ + 102.94, + 0.36 + ], + [ + 103.33, + 0.54 + ], + [ + 103.71, + 0.3 + ], + [ + 103.81, + 0 + ], + [ + 103.65, + -0.03 + ], + [ + 103.56, + -0.01 + ], + [ + 103.56, + 0 + ], + [ + 103.54, + 0.01 + ], + [ + 103.54, + 0 + ], + [ + 103.56, + -0.01 + ], + [ + 103.56, + -0.07 + ], + [ + 103.41, + -0.24 + ], + [ + 103.79, + -0.34 + ], + [ + 103.43, + -0.51 + ] + ], + [ + [ + 103.91, + -4.8 + ], + [ + 103.93, + -4.94 + ], + [ + 104.02, + -4.84 + ], + [ + 103.91, + -4.8 + ] + ], + [ + [ + 99.05, + 2.44 + ], + [ + 98.94, + 2.58 + ], + [ + 98.96, + 2.44 + ], + [ + 98.75, + 2.48 + ], + [ + 98.83, + 2.32 + ], + [ + 99.16, + 2.42 + ], + [ + 99.05, + 2.44 + ] + ], + [ + [ + 98.53, + 2.9 + ], + [ + 98.66, + 2.59 + ], + [ + 98.72, + 2.76 + ], + [ + 98.93, + 2.59 + ], + [ + 98.69, + 2.9 + ], + [ + 98.53, + 2.9 + ] + ] + ], + [ + [ + [ + 97.78, + 0.56 + ], + [ + 97.06, + 1.42 + ], + [ + 97.42, + 1.52 + ], + [ + 97.9, + 1.05 + ], + [ + 97.9, + 0.63 + ], + [ + 97.78, + 0.56 + ] + ] + ], + [ + [ + [ + 97.22, + 2.22 + ], + [ + 97.34, + 2.03 + ], + [ + 97.11, + 2.22 + ], + [ + 97.22, + 2.22 + ] + ] + ], + [ + [ + [ + 98.35, + -0.51 + ], + [ + 98.45, + -0.25 + ], + [ + 98.51, + -0.56 + ], + [ + 98.35, + -0.51 + ] + ] + ], + [ + [ + [ + 98.47, + -0.11 + ], + [ + 98.56, + -0.39 + ], + [ + 98.3, + -0.02 + ], + [ + 98.47, + -0.11 + ] + ] + ], + [ + [ + [ + 98.61, + -1.23 + ], + [ + 98.66, + -0.98 + ], + [ + 98.91, + -0.91 + ], + [ + 99.29, + -1.75 + ], + [ + 99.22, + -1.63 + ], + [ + 99.24, + -1.8 + ], + [ + 98.88, + -1.68 + ], + [ + 98.61, + -1.23 + ] + ] + ], + [ + [ + [ + 98.66, + 0.07 + ], + [ + 98.53, + 0.14 + ], + [ + 98.85, + 0.12 + ], + [ + 98.66, + 0.07 + ] + ] + ] + ] + }, + "properties": { + "A3": "IDN" + } + }, + { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + -78.74, + 1.38 + ], + [ + -78.74, + 1.37 + ], + [ + -78.73, + 1.37 + ], + [ + -78.43, + 1.14 + ], + [ + -78.31, + 1.19 + ], + [ + -78.18, + 0.94 + ], + [ + -77.71, + 0.84 + ], + [ + -77.48, + 0.66 + ], + [ + -77.53, + 0.4 + ], + [ + -77.08, + 0.29 + ], + [ + -77.08, + 0.28 + ], + [ + -77.06, + 0.29 + ], + [ + -77.05, + 0.28 + ], + [ + -77.04, + 0.28 + ], + [ + -77.03, + 0.28 + ], + [ + -77, + 0.29 + ], + [ + -76.99, + 0.27 + ], + [ + -76.98, + 0.27 + ], + [ + -76.95, + 0.27 + ], + [ + -76.93, + 0.27 + ], + [ + -76.94, + 0.26 + ], + [ + -76.91, + 0.25 + ], + [ + -76.9, + 0.25 + ], + [ + -76.86, + 0.25 + ], + [ + -76.84, + 0.24 + ], + [ + -76.83, + 0.25 + ], + [ + -76.82, + 0.26 + ], + [ + -76.81, + 0.26 + ], + [ + -76.77, + 0.25 + ], + [ + -76.76, + 0.25 + ], + [ + -76.64, + 0.26 + ], + [ + -76.63, + 0.26 + ], + [ + -76.61, + 0.24 + ], + [ + -76.6, + 0.23 + ], + [ + -76.59, + 0.22 + ], + [ + -76.57, + 0.24 + ], + [ + -76.54, + 0.26 + ], + [ + -76.53, + 0.26 + ], + [ + -76.51, + 0.24 + ], + [ + -76.49, + 0.24 + ], + [ + -76.48, + 0.24 + ], + [ + -76.46, + 0.24 + ], + [ + -76.44, + 0.26 + ], + [ + -76.42, + 0.24 + ], + [ + -76.27, + 0.44 + ], + [ + -75.81, + 0.05 + ], + [ + -75.31, + -0.11 + ], + [ + -75.29, + -0.12 + ], + [ + -75.26, + -0.12 + ], + [ + -75.4, + -0.17 + ], + [ + -75.61, + -0.11 + ], + [ + -75.23, + -0.58 + ], + [ + -75.24, + -0.58 + ], + [ + -75.24, + -0.59 + ], + [ + -75.27, + -0.66 + ], + [ + -75.27, + -0.67 + ], + [ + -75.25, + -0.7 + ], + [ + -75.26, + -0.7 + ], + [ + -75.27, + -0.71 + ], + [ + -75.28, + -0.73 + ], + [ + -75.26, + -0.76 + ], + [ + -75.25, + -0.77 + ], + [ + -75.26, + -0.78 + ], + [ + -75.24, + -0.81 + ], + [ + -75.25, + -0.83 + ], + [ + -75.25, + -0.84 + ], + [ + -75.22, + -0.87 + ], + [ + -75.22, + -0.9 + ], + [ + -75.23, + -0.92 + ], + [ + -75.23, + -0.93 + ], + [ + -75.2, + -0.97 + ], + [ + -75.23, + -0.97 + ], + [ + -75.24, + -0.98 + ], + [ + -75.27, + -0.99 + ], + [ + -75.31, + -0.98 + ], + [ + -75.32, + -0.98 + ], + [ + -75.33, + -0.96 + ], + [ + -75.36, + -0.95 + ], + [ + -75.37, + -0.94 + ], + [ + -75.38, + -0.94 + ], + [ + -75.39, + -0.95 + ], + [ + -75.56, + -1.56 + ], + [ + -76.05, + -2.13 + ], + [ + -76.63, + -2.59 + ], + [ + -76.65, + -2.6 + ], + [ + -76.68, + -2.61 + ], + [ + -76.68, + -2.59 + ], + [ + -76.69, + -2.61 + ], + [ + -77.84, + -3.01 + ], + [ + -78.2, + -3.36 + ], + [ + -78.15, + -3.48 + ], + [ + -78.35, + -3.37 + ], + [ + -78.66, + -4.58 + ], + [ + -78.86, + -4.67 + ], + [ + -79.02, + -5.02 + ], + [ + -79.11, + -4.98 + ], + [ + -79.12, + -4.98 + ], + [ + -79.13, + -4.98 + ], + [ + -79.4, + -4.83 + ], + [ + -79.5, + -4.52 + ], + [ + -79.96, + -4.39 + ], + [ + -79.97, + -4.39 + ], + [ + -80.14, + -4.29 + ], + [ + -80.45, + -4.45 + ], + [ + -80.31, + -4.2 + ], + [ + -80.45, + -4.21 + ], + [ + -80.48, + -4.05 + ], + [ + -80.13, + -3.9 + ], + [ + -80.21, + -3.57 + ], + [ + -80.21, + -3.56 + ], + [ + -80.24, + -3.47 + ], + [ + -79.95, + -3.43 + ], + [ + -80, + -3.23 + ], + [ + -79.79, + -3.03 + ], + [ + -79.85, + -2.89 + ], + [ + -79.65, + -2.52 + ], + [ + -79.83, + -2.4 + ], + [ + -79.78, + -2.08 + ], + [ + -80.24, + -2.64 + ], + [ + -80.26, + -2.74 + ], + [ + -81.01, + -2.19 + ], + [ + -80.74, + -2.06 + ], + [ + -80.85, + -1.6 + ], + [ + -80.74, + -1.36 + ], + [ + -80.91, + -1.06 + ], + [ + -80.56, + -0.9 + ], + [ + -80.38, + -0.66 + ], + [ + -80.49, + -0.36 + ], + [ + -80.09, + 0.01 + ], + [ + -79.91, + 0.26 + ], + [ + -80.05, + 0.47 + ], + [ + -80.05, + 0.83 + ], + [ + -79.16, + 1.1 + ], + [ + -78.74, + 1.38 + ] + ], + [ + [ + -80.23, + -3.46 + ], + [ + -80.22, + -3.45 + ], + [ + -80.22, + -3.44 + ], + [ + -80.23, + -3.46 + ] + ] + ], + [ + [ + [ + -90.52, + -0.71 + ], + [ + -90.48, + -0.52 + ], + [ + -90.17, + -0.57 + ], + [ + -90.24, + -0.75 + ], + [ + -90.52, + -0.71 + ] + ] + ], + [ + [ + [ + -90.57, + -0.28 + ], + [ + -90.61, + -0.38 + ], + [ + -90.87, + -0.26 + ], + [ + -90.78, + -0.15 + ], + [ + -90.57, + -0.28 + ] + ] + ], + [ + [ + [ + -90.89, + -0.63 + ], + [ + -90.78, + -0.77 + ], + [ + -90.91, + -0.95 + ], + [ + -91.44, + -1 + ], + [ + -91.49, + -0.85 + ], + [ + -91.07, + -0.59 + ], + [ + -91.39, + -0.26 + ], + [ + -91.42, + -0.03 + ], + [ + -91.59, + 0.01 + ], + [ + -91.34, + 0.16 + ], + [ + -90.89, + -0.63 + ] + ] + ], + [ + [ + [ + -91.65, + -0.3 + ], + [ + -91.44, + -0.26 + ], + [ + -91.39, + -0.46 + ], + [ + -91.6, + -0.49 + ], + [ + -91.65, + -0.3 + ] + ] + ], + [ + [ + [ + -80.1, + -2.86 + ], + [ + -80.12, + -3.02 + ], + [ + -80.26, + -3.02 + ], + [ + -80.22, + -2.74 + ], + [ + -79.9, + -2.74 + ], + [ + -80.1, + -2.86 + ] + ] + ] + ] + }, + "properties": { + "A3": "ECU" + } + }, + { + "type": "Feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + -61.63, + 12.05 + ], + [ + -61.8, + 12 + ], + [ + -61.66, + 12.24 + ], + [ + -61.63, + 12.05 + ] + ] + ] + }, + "properties": { + "A3": "GRD" + } + }, + { + "type": "Feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + 55.24, + -21.02 + ], + [ + 55.42, + -20.87 + ], + [ + 55.66, + -20.93 + ], + [ + 55.8, + -21.35 + ], + [ + 55.34, + -21.28 + ], + [ + 55.24, + -21.02 + ] + ] + ] + }, + "properties": { + "A3": "REU" + } + }, + { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + -16.96, + 21.3 + ], + [ + -16.57, + 21.34 + ], + [ + -15.99, + 21.34 + ], + [ + -15.98, + 21.34 + ], + [ + -15.92, + 21.34 + ], + [ + -15.81, + 21.34 + ], + [ + -15.72, + 21.34 + ], + [ + -15.27, + 21.34 + ], + [ + -15.17, + 21.34 + ], + [ + -15.04, + 21.34 + ], + [ + -13.54, + 21.34 + ], + [ + -13, + 21.34 + ], + [ + -13, + 21.37 + ], + [ + -13.11, + 22.89 + ], + [ + -12.57, + 23.29 + ], + [ + -12, + 23.45 + ], + [ + -12, + 25.75 + ], + [ + -12, + 26 + ], + [ + -11.67, + 26 + ], + [ + -8.67, + 26 + ], + [ + -8.67, + 27.31 + ], + [ + -4.83, + 25 + ], + [ + -6.57, + 25 + ], + [ + -6.08, + 20.76 + ], + [ + -5.61, + 16.5 + ], + [ + -5.33, + 16.33 + ], + [ + -5.5, + 15.5 + ], + [ + -6.98, + 15.5 + ], + [ + -6.99, + 15.5 + ], + [ + -9.33, + 15.5 + ], + [ + -9.33, + 15.7 + ], + [ + -9.4, + 15.44 + ], + [ + -10.72, + 15.44 + ], + [ + -10.9, + 15.11 + ], + [ + -11.52, + 15.64 + ], + [ + -11.75, + 15.46 + ], + [ + -11.8, + 14.9 + ], + [ + -12.06, + 14.72 + ], + [ + -12.07, + 14.72 + ], + [ + -12.08, + 14.73 + ], + [ + -12.09, + 14.74 + ], + [ + -12.12, + 14.77 + ], + [ + -12.13, + 14.78 + ], + [ + -12.14, + 14.78 + ], + [ + -12.16, + 14.76 + ], + [ + -12.24, + 14.76 + ], + [ + -12.26, + 14.77 + ], + [ + -12.27, + 14.77 + ], + [ + -12.28, + 14.77 + ], + [ + -12.29, + 14.78 + ], + [ + -12.3, + 14.8 + ], + [ + -12.31, + 14.8 + ], + [ + -12.35, + 14.83 + ], + [ + -12.39, + 14.84 + ], + [ + -12.4, + 14.85 + ], + [ + -12.41, + 14.86 + ], + [ + -12.42, + 14.86 + ], + [ + -12.42, + 14.87 + ], + [ + -12.45, + 14.9 + ], + [ + -12.45, + 14.91 + ], + [ + -12.46, + 14.94 + ], + [ + -12.46, + 14.96 + ], + [ + -12.46, + 14.97 + ], + [ + -12.49, + 15.01 + ], + [ + -12.52, + 15.02 + ], + [ + -12.54, + 15.03 + ], + [ + -12.56, + 15.04 + ], + [ + -12.6, + 15.07 + ], + [ + -12.63, + 15.09 + ], + [ + -12.66, + 15.1 + ], + [ + -12.7, + 15.09 + ], + [ + -12.7, + 15.1 + ], + [ + -12.72, + 15.11 + ], + [ + -12.74, + 15.13 + ], + [ + -12.77, + 15.14 + ], + [ + -12.79, + 15.15 + ], + [ + -12.79, + 15.16 + ], + [ + -12.79, + 15.19 + ], + [ + -12.79, + 15.21 + ], + [ + -12.84, + 15.2 + ], + [ + -12.85, + 15.2 + ], + [ + -12.86, + 15.22 + ], + [ + -12.88, + 15.24 + ], + [ + -12.9, + 15.25 + ], + [ + -12.9, + 15.26 + ], + [ + -12.88, + 15.27 + ], + [ + -12.83, + 15.28 + ], + [ + -12.84, + 15.29 + ], + [ + -12.88, + 15.33 + ], + [ + -12.92, + 15.34 + ], + [ + -12.95, + 15.39 + ], + [ + -12.95, + 15.41 + ], + [ + -12.94, + 15.42 + ], + [ + -12.94, + 15.43 + ], + [ + -12.92, + 15.44 + ], + [ + -12.93, + 15.45 + ], + [ + -12.96, + 15.45 + ], + [ + -12.96, + 15.46 + ], + [ + -12.96, + 15.49 + ], + [ + -12.97, + 15.5 + ], + [ + -13.05, + 15.48 + ], + [ + -13.09, + 15.54 + ], + [ + -13.09, + 15.55 + ], + [ + -13.09, + 15.56 + ], + [ + -13.09, + 15.58 + ], + [ + -13.14, + 15.6 + ], + [ + -13.16, + 15.61 + ], + [ + -13.22, + 15.61 + ], + [ + -13.24, + 15.63 + ], + [ + -13.23, + 15.67 + ], + [ + -13.21, + 15.68 + ], + [ + -13.21, + 15.69 + ], + [ + -13.23, + 15.71 + ], + [ + -13.25, + 15.73 + ], + [ + -13.26, + 15.74 + ], + [ + -13.27, + 15.75 + ], + [ + -13.28, + 15.75 + ], + [ + -13.29, + 15.77 + ], + [ + -13.29, + 15.79 + ], + [ + -13.28, + 15.79 + ], + [ + -13.27, + 15.78 + ], + [ + -13.27, + 15.79 + ], + [ + -13.27, + 15.8 + ], + [ + -13.28, + 15.8 + ], + [ + -13.29, + 15.81 + ], + [ + -13.3, + 15.82 + ], + [ + -13.3, + 15.85 + ], + [ + -13.3, + 15.86 + ], + [ + -13.31, + 15.88 + ], + [ + -13.32, + 15.88 + ], + [ + -13.32, + 15.91 + ], + [ + -13.31, + 15.92 + ], + [ + -13.31, + 15.93 + ], + [ + -13.32, + 15.93 + ], + [ + -13.34, + 15.93 + ], + [ + -13.35, + 15.95 + ], + [ + -13.36, + 15.97 + ], + [ + -13.36, + 16 + ], + [ + -13.37, + 16 + ], + [ + -13.38, + 16.02 + ], + [ + -13.38, + 16.03 + ], + [ + -13.37, + 16.05 + ], + [ + -13.4, + 16.06 + ], + [ + -13.41, + 16.07 + ], + [ + -13.44, + 16.08 + ], + [ + -13.46, + 16.1 + ], + [ + -13.48, + 16.09 + ], + [ + -13.49, + 16.08 + ], + [ + -13.52, + 16.1 + ], + [ + -13.51, + 16.12 + ], + [ + -13.54, + 16.13 + ], + [ + -13.56, + 16.14 + ], + [ + -13.6, + 16.12 + ], + [ + -13.62, + 16.11 + ], + [ + -13.64, + 16.11 + ], + [ + -13.65, + 16.11 + ], + [ + -13.72, + 16.13 + ], + [ + -13.7, + 16.17 + ], + [ + -13.75, + 16.15 + ], + [ + -13.76, + 16.15 + ], + [ + -13.8, + 16.14 + ], + [ + -13.82, + 16.13 + ], + [ + -13.84, + 16.11 + ], + [ + -13.87, + 16.13 + ], + [ + -13.97, + 16.22 + ], + [ + -13.97, + 16.23 + ], + [ + -13.97, + 16.33 + ], + [ + -13.98, + 16.34 + ], + [ + -14.02, + 16.35 + ], + [ + -14.03, + 16.35 + ], + [ + -14.11, + 16.43 + ], + [ + -14.11, + 16.44 + ], + [ + -14.14, + 16.47 + ], + [ + -14.15, + 16.47 + ], + [ + -14.19, + 16.5 + ], + [ + -14.2, + 16.51 + ], + [ + -14.33, + 16.59 + ], + [ + -14.33, + 16.61 + ], + [ + -14.33, + 16.64 + ], + [ + -14.41, + 16.63 + ], + [ + -14.41, + 16.65 + ], + [ + -14.46, + 16.62 + ], + [ + -14.55, + 16.64 + ], + [ + -14.55, + 16.63 + ], + [ + -14.64, + 16.63 + ], + [ + -14.64, + 16.64 + ], + [ + -14.68, + 16.65 + ], + [ + -14.83, + 16.64 + ], + [ + -14.84, + 16.64 + ], + [ + -14.85, + 16.64 + ], + [ + -14.89, + 16.64 + ], + [ + -15.06, + 16.64 + ], + [ + -15.12, + 16.64 + ], + [ + -15.08, + 16.63 + ], + [ + -15.08, + 16.62 + ], + [ + -15.15, + 16.59 + ], + [ + -15.17, + 16.59 + ], + [ + -15.21, + 16.57 + ], + [ + -15.21, + 16.56 + ], + [ + -15.25, + 16.56 + ], + [ + -15.25, + 16.57 + ], + [ + -15.33, + 16.56 + ], + [ + -15.34, + 16.56 + ], + [ + -15.42, + 16.54 + ], + [ + -15.43, + 16.54 + ], + [ + -15.47, + 16.59 + ], + [ + -15.48, + 16.59 + ], + [ + -15.52, + 16.55 + ], + [ + -15.51, + 16.54 + ], + [ + -15.55, + 16.51 + ], + [ + -15.57, + 16.51 + ], + [ + -15.63, + 16.51 + ], + [ + -15.68, + 16.48 + ], + [ + -15.7, + 16.47 + ], + [ + -15.78, + 16.49 + ], + [ + -15.86, + 16.49 + ], + [ + -15.86, + 16.51 + ], + [ + -15.89, + 16.52 + ], + [ + -15.91, + 16.51 + ], + [ + -15.95, + 16.49 + ], + [ + -16, + 16.5 + ], + [ + -16.06, + 16.49 + ], + [ + -16.1, + 16.54 + ], + [ + -16.12, + 16.55 + ], + [ + -16.13, + 16.55 + ], + [ + -16.22, + 16.51 + ], + [ + -16.29, + 16.47 + ], + [ + -16.3, + 16.47 + ], + [ + -16.33, + 16.39 + ], + [ + -16.33, + 16.38 + ], + [ + -16.33, + 16.35 + ], + [ + -16.34, + 16.34 + ], + [ + -16.38, + 16.23 + ], + [ + -16.39, + 16.21 + ], + [ + -16.42, + 16.22 + ], + [ + -16.43, + 16.21 + ], + [ + -16.45, + 16.18 + ], + [ + -16.45, + 16.17 + ], + [ + -16.45, + 16.14 + ], + [ + -16.45, + 16.13 + ], + [ + -16.47, + 16.07 + ], + [ + -16.49, + 16.07 + ], + [ + -16.51, + 16.07 + ], + [ + -16.02, + 17.98 + ], + [ + -16.19, + 18.93 + ], + [ + -16.53, + 19.37 + ], + [ + -16.3, + 19.47 + ], + [ + -16.47, + 19.42 + ], + [ + -16.2, + 20.21 + ], + [ + -16.49, + 20.72 + ], + [ + -16.53, + 20.56 + ], + [ + -16.68, + 20.68 + ], + [ + -16.92, + 21.16 + ], + [ + -17.05, + 20.77 + ], + [ + -16.96, + 21.3 + ] + ] + ], + [ + [ + [ + -16.42, + 19.77 + ], + [ + -16.35, + 19.86 + ], + [ + -16.43, + 19.6 + ], + [ + -16.42, + 19.77 + ] + ] + ] + ] + }, + "properties": { + "A3": "MRT" + } + }, + { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + -87.31, + 12.99 + ], + [ + -87.3, + 12.99 + ], + [ + -87.05, + 12.98 + ], + [ + -87.03, + 12.99 + ], + [ + -87.01, + 13 + ], + [ + -86.99, + 13.02 + ], + [ + -86.97, + 13.03 + ], + [ + -86.95, + 13.07 + ], + [ + -86.94, + 13.07 + ], + [ + -86.92, + 13.09 + ], + [ + -86.93, + 13.13 + ], + [ + -86.92, + 13.13 + ], + [ + -86.92, + 13.2 + ], + [ + -86.92, + 13.22 + ], + [ + -86.71, + 13.3 + ], + [ + -86.76, + 13.77 + ], + [ + -86.33, + 13.77 + ], + [ + -86.01, + 14.08 + ], + [ + -85.76, + 13.84 + ], + [ + -85.75, + 13.84 + ], + [ + -85.73, + 13.86 + ], + [ + -85.76, + 13.9 + ], + [ + -85.75, + 13.92 + ], + [ + -85.75, + 13.94 + ], + [ + -85.76, + 13.95 + ], + [ + -85.74, + 13.97 + ], + [ + -85.73, + 13.97 + ], + [ + -85.69, + 13.99 + ], + [ + -85.67, + 14.01 + ], + [ + -85.66, + 14.01 + ], + [ + -85.65, + 14.01 + ], + [ + -85.64, + 14.01 + ], + [ + -85.61, + 14.03 + ], + [ + -85.6, + 14.03 + ], + [ + -85.56, + 14.05 + ], + [ + -85.52, + 14.05 + ], + [ + -85.52, + 14.06 + ], + [ + -85.48, + 14.09 + ], + [ + -85.47, + 14.09 + ], + [ + -85.46, + 14.11 + ], + [ + -85.45, + 14.11 + ], + [ + -85.43, + 14.11 + ], + [ + -85.43, + 14.12 + ], + [ + -85.4, + 14.13 + ], + [ + -85.4, + 14.14 + ], + [ + -85.37, + 14.22 + ], + [ + -85.34, + 14.24 + ], + [ + -85.34, + 14.25 + ], + [ + -85.3, + 14.25 + ], + [ + -85.28, + 14.26 + ], + [ + -85.27, + 14.26 + ], + [ + -85.17, + 14.28 + ], + [ + -85.16, + 14.28 + ], + [ + -85.16, + 14.31 + ], + [ + -85.17, + 14.31 + ], + [ + -85.19, + 14.33 + ], + [ + -85.2, + 14.35 + ], + [ + -85.19, + 14.35 + ], + [ + -85.21, + 14.37 + ], + [ + -85.18, + 14.43 + ], + [ + -85.18, + 14.45 + ], + [ + -85.18, + 14.46 + ], + [ + -85.17, + 14.48 + ], + [ + -85.16, + 14.48 + ], + [ + -85.14, + 14.52 + ], + [ + -85.14, + 14.56 + ], + [ + -85.15, + 14.57 + ], + [ + -85.13, + 14.58 + ], + [ + -85.12, + 14.58 + ], + [ + -85.1, + 14.56 + ], + [ + -85.08, + 14.56 + ], + [ + -85.07, + 14.56 + ], + [ + -85.04, + 14.58 + ], + [ + -85.03, + 14.61 + ], + [ + -85.04, + 14.61 + ], + [ + -85.03, + 14.65 + ], + [ + -85.04, + 14.67 + ], + [ + -85.03, + 14.67 + ], + [ + -85.01, + 14.71 + ], + [ + -85.01, + 14.72 + ], + [ + -84.99, + 14.73 + ], + [ + -84.99, + 14.74 + ], + [ + -84.96, + 14.75 + ], + [ + -84.94, + 14.76 + ], + [ + -84.93, + 14.77 + ], + [ + -84.92, + 14.78 + ], + [ + -84.9, + 14.81 + ], + [ + -84.89, + 14.81 + ], + [ + -84.88, + 14.82 + ], + [ + -84.87, + 14.81 + ], + [ + -84.86, + 14.81 + ], + [ + -84.8, + 14.82 + ], + [ + -84.79, + 14.8 + ], + [ + -84.78, + 14.79 + ], + [ + -84.77, + 14.78 + ], + [ + -84.75, + 14.77 + ], + [ + -84.76, + 14.75 + ], + [ + -84.77, + 14.76 + ], + [ + -84.77, + 14.75 + ], + [ + -84.76, + 14.74 + ], + [ + -84.75, + 14.73 + ], + [ + -84.73, + 14.71 + ], + [ + -84.73, + 14.7 + ], + [ + -84.71, + 14.69 + ], + [ + -84.7, + 14.69 + ], + [ + -84.69, + 14.68 + ], + [ + -84.68, + 14.68 + ], + [ + -84.68, + 14.69 + ], + [ + -84.67, + 14.67 + ], + [ + -84.66, + 14.67 + ], + [ + -84.64, + 14.67 + ], + [ + -84.64, + 14.68 + ], + [ + -84.62, + 14.66 + ], + [ + -84.58, + 14.65 + ], + [ + -84.57, + 14.66 + ], + [ + -84.52, + 14.65 + ], + [ + -84.54, + 14.65 + ], + [ + -84.48, + 14.62 + ], + [ + -84.47, + 14.62 + ], + [ + -84.46, + 14.63 + ], + [ + -84.44, + 14.63 + ], + [ + -84.42, + 14.64 + ], + [ + -84.4, + 14.67 + ], + [ + -84.39, + 14.67 + ], + [ + -84.38, + 14.69 + ], + [ + -84.37, + 14.7 + ], + [ + -84.37, + 14.71 + ], + [ + -84.36, + 14.71 + ], + [ + -84.35, + 14.7 + ], + [ + -84.35, + 14.69 + ], + [ + -84.33, + 14.68 + ], + [ + -84.29, + 14.66 + ], + [ + -84.27, + 14.67 + ], + [ + -84.26, + 14.67 + ], + [ + -84.27, + 14.69 + ], + [ + -84.26, + 14.7 + ], + [ + -84.27, + 14.71 + ], + [ + -84.27, + 14.72 + ], + [ + -84.25, + 14.75 + ], + [ + -84.24, + 14.75 + ], + [ + -84.23, + 14.76 + ], + [ + -84.22, + 14.75 + ], + [ + -84.23, + 14.74 + ], + [ + -84.22, + 14.73 + ], + [ + -84.16, + 14.72 + ], + [ + -84.14, + 14.73 + ], + [ + -84.13, + 14.73 + ], + [ + -84.12, + 14.73 + ], + [ + -84.11, + 14.73 + ], + [ + -84.11, + 14.75 + ], + [ + -84.11, + 14.76 + ], + [ + -84.12, + 14.77 + ], + [ + -84.12, + 14.78 + ], + [ + -84.08, + 14.78 + ], + [ + -84.08, + 14.77 + ], + [ + -84.05, + 14.77 + ], + [ + -84.04, + 14.77 + ], + [ + -84.05, + 14.75 + ], + [ + -84.04, + 14.75 + ], + [ + -84.02, + 14.74 + ], + [ + -83.98, + 14.75 + ], + [ + -83.94, + 14.76 + ], + [ + -83.93, + 14.75 + ], + [ + -83.94, + 14.78 + ], + [ + -83.93, + 14.78 + ], + [ + -83.87, + 14.77 + ], + [ + -83.85, + 14.77 + ], + [ + -83.84, + 14.78 + ], + [ + -83.83, + 14.8 + ], + [ + -83.82, + 14.79 + ], + [ + -83.8, + 14.8 + ], + [ + -83.78, + 14.82 + ], + [ + -83.78, + 14.81 + ], + [ + -83.75, + 14.82 + ], + [ + -83.73, + 14.84 + ], + [ + -83.72, + 14.84 + ], + [ + -83.72, + 14.83 + ], + [ + -83.7, + 14.83 + ], + [ + -83.7, + 14.84 + ], + [ + -83.71, + 14.85 + ], + [ + -83.7, + 14.86 + ], + [ + -83.69, + 14.87 + ], + [ + -83.69, + 14.88 + ], + [ + -83.66, + 14.88 + ], + [ + -83.64, + 14.88 + ], + [ + -83.63, + 14.88 + ], + [ + -83.62, + 14.88 + ], + [ + -83.61, + 14.9 + ], + [ + -83.6, + 14.9 + ], + [ + -83.6, + 14.92 + ], + [ + -83.56, + 14.92 + ], + [ + -83.55, + 14.94 + ], + [ + -83.54, + 14.94 + ], + [ + -83.53, + 14.95 + ], + [ + -83.54, + 14.97 + ], + [ + -83.52, + 14.99 + ], + [ + -83.51, + 14.99 + ], + [ + -83.5, + 15.01 + ], + [ + -83.48, + 14.99 + ], + [ + -83.47, + 14.99 + ], + [ + -83.45, + 14.98 + ], + [ + -83.43, + 15 + ], + [ + -83.43, + 14.99 + ], + [ + -83.41, + 15.01 + ], + [ + -83.41, + 15.02 + ], + [ + -83.4, + 15.03 + ], + [ + -83.32, + 15 + ], + [ + -83.29, + 15 + ], + [ + -83.27, + 14.99 + ], + [ + -83.23, + 14.98 + ], + [ + -83.21, + 14.99 + ], + [ + -83.43, + 14.82 + ], + [ + -83.36, + 14.71 + ], + [ + -83.3, + 14.81 + ], + [ + -83.2, + 14.31 + ], + [ + -83.63, + 13.64 + ], + [ + -83.51, + 13.68 + ], + [ + -83.6, + 13.24 + ], + [ + -83.49, + 12.39 + ], + [ + -83.64, + 12.38 + ], + [ + -83.63, + 12.58 + ], + [ + -83.57, + 12.54 + ], + [ + -83.58, + 12.83 + ], + [ + -83.6, + 12.62 + ], + [ + -83.78, + 12.49 + ], + [ + -83.68, + 12.27 + ], + [ + -83.62, + 12.35 + ], + [ + -83.68, + 11.99 + ], + [ + -83.8, + 12.06 + ], + [ + -83.84, + 11.88 + ], + [ + -83.7, + 11.85 + ], + [ + -83.64, + 11.6 + ], + [ + -83.87, + 11.36 + ], + [ + -83.7, + 10.93 + ], + [ + -83.67, + 10.84 + ], + [ + -83.67, + 10.83 + ], + [ + -83.69, + 10.79 + ], + [ + -83.74, + 10.78 + ], + [ + -83.76, + 10.78 + ], + [ + -83.77, + 10.77 + ], + [ + -83.79, + 10.77 + ], + [ + -83.8, + 10.77 + ], + [ + -83.86, + 10.73 + ], + [ + -83.89, + 10.73 + ], + [ + -83.9, + 10.72 + ], + [ + -83.91, + 10.71 + ], + [ + -83.92, + 10.71 + ], + [ + -83.94, + 10.71 + ], + [ + -83.94, + 10.72 + ], + [ + -83.96, + 10.73 + ], + [ + -83.97, + 10.73 + ], + [ + -83.98, + 10.75 + ], + [ + -83.99, + 10.75 + ], + [ + -84.01, + 10.77 + ], + [ + -84.02, + 10.79 + ], + [ + -84.03, + 10.79 + ], + [ + -84.04, + 10.77 + ], + [ + -84.05, + 10.78 + ], + [ + -84.06, + 10.77 + ], + [ + -84.1, + 10.77 + ], + [ + -84.11, + 10.77 + ], + [ + -84.12, + 10.76 + ], + [ + -84.13, + 10.79 + ], + [ + -84.16, + 10.79 + ], + [ + -84.19, + 10.79 + ], + [ + -84.2, + 10.78 + ], + [ + -84.24, + 10.81 + ], + [ + -84.24, + 10.82 + ], + [ + -84.22, + 10.83 + ], + [ + -84.22, + 10.84 + ], + [ + -84.22, + 10.85 + ], + [ + -84.22, + 10.86 + ], + [ + -84.26, + 10.89 + ], + [ + -84.27, + 10.89 + ], + [ + -84.28, + 10.89 + ], + [ + -84.29, + 10.9 + ], + [ + -84.3, + 10.92 + ], + [ + -84.31, + 10.92 + ], + [ + -84.33, + 10.94 + ], + [ + -84.34, + 10.95 + ], + [ + -84.35, + 10.96 + ], + [ + -84.35, + 10.97 + ], + [ + -84.35, + 10.98 + ], + [ + -84.35, + 10.99 + ], + [ + -84.68, + 11.08 + ], + [ + -84.91, + 10.94 + ], + [ + -85.61, + 11.22 + ], + [ + -85.69, + 11.08 + ], + [ + -86.52, + 11.78 + ], + [ + -86.79, + 12.23 + ], + [ + -87.69, + 12.91 + ], + [ + -87.58, + 13.09 + ], + [ + -87.43, + 12.92 + ], + [ + -87.31, + 12.99 + ] + ], + [ + [ + -84.79, + 11.18 + ], + [ + -85.17, + 11.78 + ], + [ + -85.89, + 12.1 + ], + [ + -85.94, + 11.74 + ], + [ + -85.74, + 11.31 + ], + [ + -84.95, + 11.04 + ], + [ + -84.79, + 11.18 + ] + ], + [ + [ + -86.26, + 12.44 + ], + [ + -86.62, + 12.41 + ], + [ + -86.61, + 12.3 + ], + [ + -86.12, + 12.17 + ], + [ + -86.12, + 12.36 + ], + [ + -86.18, + 12.28 + ], + [ + -86.26, + 12.44 + ] + ] + ], + [ + [ + [ + -85.62, + 11.49 + ], + [ + -85.69, + 11.57 + ], + [ + -85.45, + 11.44 + ], + [ + -85.62, + 11.49 + ] + ] + ] + ] + }, + "properties": { + "A3": "NIC" + } + }, + { + "type": "Feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + 16.11, + 46.87 + ], + [ + 16.19, + 46.94 + ], + [ + 16.2, + 46.94 + ], + [ + 16.19, + 46.94 + ], + [ + 16.51, + 47 + ], + [ + 16.45, + 47.41 + ], + [ + 16.71, + 47.54 + ], + [ + 16.42, + 47.67 + ], + [ + 16.69, + 47.74 + ], + [ + 16.7, + 47.74 + ], + [ + 16.72, + 47.74 + ], + [ + 16.72, + 47.73 + ], + [ + 16.73, + 47.72 + ], + [ + 16.81, + 47.68 + ], + [ + 16.83, + 47.69 + ], + [ + 17.09, + 47.71 + ], + [ + 17.16, + 48.01 + ], + [ + 17.23, + 48.02 + ], + [ + 17.24, + 48.02 + ], + [ + 17.25, + 48.02 + ], + [ + 17.25, + 48.01 + ], + [ + 17.26, + 48 + ], + [ + 17.28, + 47.99 + ], + [ + 17.31, + 48 + ], + [ + 17.33, + 48 + ], + [ + 17.34, + 47.98 + ], + [ + 17.36, + 47.98 + ], + [ + 17.37, + 47.97 + ], + [ + 17.37, + 47.96 + ], + [ + 17.38, + 47.96 + ], + [ + 17.4, + 47.95 + ], + [ + 17.41, + 47.94 + ], + [ + 17.43, + 47.92 + ], + [ + 17.44, + 47.91 + ], + [ + 17.45, + 47.9 + ], + [ + 17.45, + 47.88 + ], + [ + 17.49, + 47.87 + ], + [ + 17.5, + 47.87 + ], + [ + 17.52, + 47.87 + ], + [ + 17.53, + 47.86 + ], + [ + 17.55, + 47.83 + ], + [ + 17.54, + 47.84 + ], + [ + 17.56, + 47.83 + ], + [ + 17.56, + 47.82 + ], + [ + 17.59, + 47.82 + ], + [ + 17.61, + 47.82 + ], + [ + 17.62, + 47.81 + ], + [ + 17.63, + 47.81 + ], + [ + 17.64, + 47.8 + ], + [ + 17.65, + 47.79 + ], + [ + 17.66, + 47.79 + ], + [ + 17.67, + 47.79 + ], + [ + 17.69, + 47.78 + ], + [ + 17.7, + 47.77 + ], + [ + 17.7, + 47.76 + ], + [ + 17.71, + 47.76 + ], + [ + 17.72, + 47.75 + ], + [ + 17.73, + 47.75 + ], + [ + 17.74, + 47.75 + ], + [ + 17.75, + 47.75 + ], + [ + 17.76, + 47.75 + ], + [ + 17.79, + 47.74 + ], + [ + 17.81, + 47.74 + ], + [ + 17.83, + 47.74 + ], + [ + 17.85, + 47.74 + ], + [ + 17.88, + 47.74 + ], + [ + 17.89, + 47.74 + ], + [ + 17.9, + 47.74 + ], + [ + 17.91, + 47.74 + ], + [ + 17.94, + 47.74 + ], + [ + 17.95, + 47.75 + ], + [ + 17.96, + 47.75 + ], + [ + 17.99, + 47.75 + ], + [ + 18, + 47.75 + ], + [ + 18.01, + 47.75 + ], + [ + 18.03, + 47.75 + ], + [ + 18.05, + 47.76 + ], + [ + 18.06, + 47.76 + ], + [ + 18.07, + 47.76 + ], + [ + 18.08, + 47.76 + ], + [ + 18.09, + 47.76 + ], + [ + 18.11, + 47.75 + ], + [ + 18.12, + 47.75 + ], + [ + 18.14, + 47.75 + ], + [ + 18.16, + 47.74 + ], + [ + 18.17, + 47.74 + ], + [ + 18.18, + 47.74 + ], + [ + 18.21, + 47.74 + ], + [ + 18.22, + 47.74 + ], + [ + 18.24, + 47.74 + ], + [ + 18.25, + 47.74 + ], + [ + 18.27, + 47.73 + ], + [ + 18.29, + 47.73 + ], + [ + 18.3, + 47.73 + ], + [ + 18.32, + 47.74 + ], + [ + 18.36, + 47.74 + ], + [ + 18.37, + 47.74 + ], + [ + 18.38, + 47.75 + ], + [ + 18.39, + 47.75 + ], + [ + 18.44, + 47.76 + ], + [ + 18.45, + 47.76 + ], + [ + 18.48, + 47.76 + ], + [ + 18.49, + 47.75 + ], + [ + 18.51, + 47.76 + ], + [ + 18.54, + 47.76 + ], + [ + 18.54, + 47.75 + ], + [ + 18.55, + 47.76 + ], + [ + 18.58, + 47.76 + ], + [ + 18.6, + 47.76 + ], + [ + 18.61, + 47.76 + ], + [ + 18.62, + 47.76 + ], + [ + 18.65, + 47.76 + ], + [ + 18.66, + 47.76 + ], + [ + 18.68, + 47.77 + ], + [ + 18.7, + 47.78 + ], + [ + 18.73, + 47.79 + ], + [ + 18.73, + 47.8 + ], + [ + 18.85, + 47.82 + ], + [ + 18.85, + 47.83 + ], + [ + 18.76, + 47.87 + ], + [ + 18.76, + 47.89 + ], + [ + 19.05, + 48.06 + ], + [ + 19.25, + 48.06 + ], + [ + 19.38, + 48.09 + ], + [ + 19.51, + 48.18 + ], + [ + 19.56, + 48.21 + ], + [ + 19.99, + 48.17 + ], + [ + 20, + 48.17 + ], + [ + 20.51, + 48.53 + ], + [ + 21.27, + 48.53 + ], + [ + 21.28, + 48.53 + ], + [ + 21.31, + 48.53 + ], + [ + 21.32, + 48.56 + ], + [ + 21.53, + 48.52 + ], + [ + 21.76, + 48.34 + ], + [ + 22.13, + 48.38 + ], + [ + 22.14, + 48.38 + ], + [ + 22.14, + 48.39 + ], + [ + 22.16, + 48.4 + ], + [ + 22.16, + 48.41 + ], + [ + 22.18, + 48.41 + ], + [ + 22.19, + 48.42 + ], + [ + 22.2, + 48.42 + ], + [ + 22.21, + 48.43 + ], + [ + 22.22, + 48.42 + ], + [ + 22.23, + 48.41 + ], + [ + 22.24, + 48.41 + ], + [ + 22.25, + 48.41 + ], + [ + 22.26, + 48.41 + ], + [ + 22.27, + 48.41 + ], + [ + 22.26, + 48.4 + ], + [ + 22.24, + 48.39 + ], + [ + 22.26, + 48.37 + ], + [ + 22.65, + 48.1 + ], + [ + 22.67, + 48.09 + ], + [ + 22.68, + 48.09 + ], + [ + 22.7, + 48.11 + ], + [ + 22.74, + 48.12 + ], + [ + 22.75, + 48.12 + ], + [ + 22.76, + 48.12 + ], + [ + 22.77, + 48.12 + ], + [ + 22.79, + 48.12 + ], + [ + 22.8, + 48.12 + ], + [ + 22.81, + 48.12 + ], + [ + 22.8, + 48.11 + ], + [ + 22.81, + 48.11 + ], + [ + 22.83, + 48.11 + ], + [ + 22.83, + 48.1 + ], + [ + 22.83, + 48.09 + ], + [ + 22.84, + 47.98 + ], + [ + 22.85, + 47.98 + ], + [ + 22.9, + 47.95 + ], + [ + 22.71, + 47.83 + ], + [ + 22.71, + 47.82 + ], + [ + 22.32, + 47.77 + ], + [ + 22.03, + 47.53 + ], + [ + 22.02, + 47.52 + ], + [ + 21.86, + 47.25 + ], + [ + 21.79, + 47.11 + ], + [ + 21.44, + 46.67 + ], + [ + 21.45, + 46.67 + ], + [ + 21.45, + 46.65 + ], + [ + 21.44, + 46.65 + ], + [ + 21.3, + 46.56 + ], + [ + 21.27, + 46.41 + ], + [ + 21.26, + 46.41 + ], + [ + 21.2, + 46.36 + ], + [ + 20.68, + 46.15 + ], + [ + 20.66, + 46.15 + ], + [ + 20.65, + 46.15 + ], + [ + 20.65, + 46.13 + ], + [ + 20.62, + 46.13 + ], + [ + 20.59, + 46.15 + ], + [ + 20.59, + 46.16 + ], + [ + 20.55, + 46.18 + ], + [ + 20.54, + 46.18 + ], + [ + 20.52, + 46.18 + ], + [ + 20.5, + 46.19 + ], + [ + 20.48, + 46.16 + ], + [ + 20.26, + 46.13 + ], + [ + 20.1, + 46.16 + ], + [ + 20.1, + 46.17 + ], + [ + 20.08, + 46.17 + ], + [ + 20.07, + 46.16 + ], + [ + 19.57, + 46.18 + ], + [ + 18.89, + 45.92 + ], + [ + 18.82, + 45.91 + ], + [ + 18.81, + 45.91 + ], + [ + 18.81, + 45.9 + ], + [ + 18.81, + 45.89 + ], + [ + 18.81, + 45.88 + ], + [ + 18.72, + 45.91 + ], + [ + 18.26, + 45.76 + ], + [ + 18.24, + 45.77 + ], + [ + 18.23, + 45.78 + ], + [ + 18.22, + 45.78 + ], + [ + 18.21, + 45.78 + ], + [ + 18.13, + 45.79 + ], + [ + 18.09, + 45.77 + ], + [ + 18.08, + 45.77 + ], + [ + 18.06, + 45.77 + ], + [ + 18.02, + 45.78 + ], + [ + 18.01, + 45.79 + ], + [ + 18, + 45.8 + ], + [ + 17.99, + 45.79 + ], + [ + 17.95, + 45.79 + ], + [ + 17.93, + 45.79 + ], + [ + 17.92, + 45.79 + ], + [ + 17.89, + 45.79 + ], + [ + 17.88, + 45.78 + ], + [ + 17.87, + 45.77 + ], + [ + 17.85, + 45.78 + ], + [ + 17.84, + 45.79 + ], + [ + 17.83, + 45.81 + ], + [ + 17.82, + 45.81 + ], + [ + 17.77, + 45.81 + ], + [ + 17.75, + 45.82 + ], + [ + 17.73, + 45.83 + ], + [ + 17.72, + 45.83 + ], + [ + 17.69, + 45.84 + ], + [ + 17.65, + 45.86 + ], + [ + 17.64, + 45.87 + ], + [ + 17.64, + 45.88 + ], + [ + 17.63, + 45.89 + ], + [ + 17.62, + 45.91 + ], + [ + 17.6, + 45.92 + ], + [ + 17.59, + 45.92 + ], + [ + 17.54, + 45.93 + ], + [ + 17.53, + 45.93 + ], + [ + 17.51, + 45.94 + ], + [ + 17.43, + 45.95 + ], + [ + 17.4, + 45.94 + ], + [ + 17.4, + 45.93 + ], + [ + 17.38, + 45.95 + ], + [ + 17.37, + 45.95 + ], + [ + 17.36, + 45.94 + ], + [ + 17.35, + 45.94 + ], + [ + 17.36, + 45.96 + ], + [ + 17.36, + 45.97 + ], + [ + 17.36, + 45.98 + ], + [ + 17.36, + 45.97 + ], + [ + 17.32, + 45.97 + ], + [ + 17.31, + 45.97 + ], + [ + 17.29, + 45.99 + ], + [ + 17.3, + 45.99 + ], + [ + 17.26, + 46.01 + ], + [ + 17.26, + 46.06 + ], + [ + 17.22, + 46.09 + ], + [ + 17.23, + 46.09 + ], + [ + 17.19, + 46.11 + ], + [ + 17.18, + 46.11 + ], + [ + 16.97, + 46.23 + ], + [ + 16.89, + 46.29 + ], + [ + 16.88, + 46.3 + ], + [ + 16.88, + 46.33 + ], + [ + 16.88, + 46.34 + ], + [ + 16.87, + 46.34 + ], + [ + 16.86, + 46.35 + ], + [ + 16.84, + 46.37 + ], + [ + 16.83, + 46.37 + ], + [ + 16.81, + 46.38 + ], + [ + 16.8, + 46.38 + ], + [ + 16.79, + 46.39 + ], + [ + 16.79, + 46.38 + ], + [ + 16.77, + 46.38 + ], + [ + 16.76, + 46.38 + ], + [ + 16.74, + 46.39 + ], + [ + 16.74, + 46.4 + ], + [ + 16.72, + 46.39 + ], + [ + 16.7, + 46.41 + ], + [ + 16.64, + 46.46 + ], + [ + 16.63, + 46.46 + ], + [ + 16.62, + 46.47 + ], + [ + 16.61, + 46.47 + ], + [ + 16.6, + 46.48 + ], + [ + 16.34, + 46.85 + ], + [ + 16.11, + 46.87 + ] + ], + [ + [ + 18.02, + 47.06 + ], + [ + 17.89, + 46.89 + ], + [ + 17.26, + 46.71 + ], + [ + 18.15, + 46.94 + ], + [ + 18.02, + 47.06 + ] + ] + ] + }, + "properties": { + "A3": "HUN" + } + }, + { + "type": "Feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + 70.98, + 40.23 + ], + [ + 71.27, + 40.34 + ], + [ + 71.73, + 40.15 + ], + [ + 72.05, + 40.28 + ], + [ + 72.09, + 40.44 + ], + [ + 72.09, + 40.45 + ], + [ + 72.42, + 40.4 + ], + [ + 72.35, + 40.6 + ], + [ + 72.66, + 40.51 + ], + [ + 73.07, + 40.77 + ], + [ + 73.14, + 40.8 + ], + [ + 72.96, + 40.81 + ], + [ + 72.95, + 40.8 + ], + [ + 72.94, + 40.8 + ], + [ + 72.89, + 40.83 + ], + [ + 72.87, + 40.84 + ], + [ + 72.83, + 40.86 + ], + [ + 72.82, + 40.85 + ], + [ + 71.9, + 41.16 + ], + [ + 71.73, + 41.55 + ], + [ + 71.59, + 41.31 + ], + [ + 71.28, + 41.11 + ], + [ + 71.27, + 41.11 + ], + [ + 70.79, + 41.19 + ], + [ + 70.72, + 41.47 + ], + [ + 70.17, + 41.52 + ], + [ + 70.87, + 42.05 + ], + [ + 71.26, + 42.17 + ], + [ + 70.94, + 42.26 + ], + [ + 71, + 42.59 + ], + [ + 71.28, + 42.78 + ], + [ + 71.86, + 42.83 + ], + [ + 73.49, + 42.42 + ], + [ + 73.52, + 42.87 + ], + [ + 73.52, + 42.88 + ], + [ + 73.52, + 42.89 + ], + [ + 73.92, + 43.13 + ], + [ + 74.21, + 43.27 + ], + [ + 75.1, + 42.91 + ], + [ + 75.1, + 42.9 + ], + [ + 75.19, + 42.88 + ], + [ + 75.72, + 42.8 + ], + [ + 75.82, + 42.94 + ], + [ + 76.34, + 42.86 + ], + [ + 76.97, + 42.99 + ], + [ + 79.2, + 42.8 + ], + [ + 79.5, + 42.46 + ], + [ + 79.96, + 42.44 + ], + [ + 80.17, + 42.21 + ], + [ + 80.14, + 42.15 + ], + [ + 80.2, + 42.04 + ], + [ + 78.16, + 41.38 + ], + [ + 77.77, + 41.01 + ], + [ + 76.87, + 41.02 + ], + [ + 76.5, + 40.43 + ], + [ + 76.18, + 40.38 + ], + [ + 76.04, + 40.37 + ], + [ + 75.69, + 40.28 + ], + [ + 75.6, + 40.66 + ], + [ + 75.22, + 40.44 + ], + [ + 74.84, + 40.52 + ], + [ + 74.9, + 40.34 + ], + [ + 73.94, + 40.03 + ], + [ + 73.95, + 39.6 + ], + [ + 73.6, + 39.46 + ], + [ + 72.84, + 39.36 + ], + [ + 72.49, + 39.38 + ], + [ + 72.25, + 39.17 + ], + [ + 72.04, + 39.37 + ], + [ + 71.79, + 39.28 + ], + [ + 71.5, + 39.61 + ], + [ + 70.89, + 39.38 + ], + [ + 70.53, + 39.62 + ], + [ + 69.34, + 39.54 + ], + [ + 69.3, + 39.92 + ], + [ + 69.35, + 40.02 + ], + [ + 69.54, + 39.93 + ], + [ + 69.54, + 40.12 + ], + [ + 70.02, + 40.23 + ], + [ + 70.55, + 40.04 + ], + [ + 70.5, + 39.93 + ], + [ + 70.98, + 40.23 + ] + ], + [ + [ + 72.75, + 41.84 + ], + [ + 72.74, + 41.74 + ], + [ + 73.06, + 41.77 + ], + [ + 72.75, + 41.84 + ] + ], + [ + [ + 78.13, + 42.75 + ], + [ + 76.18, + 42.46 + ], + [ + 76.29, + 42.31 + ], + [ + 76.92, + 42.16 + ], + [ + 77.52, + 42.16 + ], + [ + 77.83, + 42.44 + ], + [ + 78.33, + 42.59 + ], + [ + 78.09, + 42.6 + ], + [ + 78.13, + 42.75 + ] + ], + [ + [ + 75.04, + 41.9 + ], + [ + 75.1, + 41.76 + ], + [ + 75.34, + 41.8 + ], + [ + 75.04, + 41.9 + ] + ], + [ + [ + 75.31, + 40.68 + ], + [ + 75.17, + 40.58 + ], + [ + 75.35, + 40.56 + ], + [ + 75.31, + 40.68 + ] + ] + ] + }, + "properties": { + "A3": "KGZ" + } + }, + { + "type": "Feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + 34.98, + 29.54 + ], + [ + 35.16, + 30.41 + ], + [ + 35.43, + 31.05 + ], + [ + 35.44, + 31.07 + ], + [ + 35.46, + 31.11 + ], + [ + 35.4, + 31.23 + ], + [ + 35.4, + 31.27 + ], + [ + 35.41, + 31.28 + ], + [ + 35.42, + 31.3 + ], + [ + 35.45, + 31.35 + ], + [ + 35.56, + 31.77 + ], + [ + 35.55, + 32.39 + ], + [ + 35.55, + 32.4 + ], + [ + 35.56, + 32.44 + ], + [ + 35.57, + 32.44 + ], + [ + 35.56, + 32.51 + ], + [ + 35.76, + 32.75 + ], + [ + 35.9, + 32.72 + ], + [ + 36.08, + 32.51 + ], + [ + 36.84, + 32.31 + ], + [ + 38.78, + 33.37 + ], + [ + 38.79, + 33.37 + ], + [ + 38.79, + 33.38 + ], + [ + 39, + 32.75 + ], + [ + 39.09, + 32.5 + ], + [ + 38.99, + 32.48 + ], + [ + 39.04, + 32.3 + ], + [ + 39.26, + 32.36 + ], + [ + 39.3, + 32.23 + ], + [ + 39.01, + 32 + ], + [ + 37, + 31.5 + ], + [ + 38, + 30.5 + ], + [ + 37.67, + 30.33 + ], + [ + 37.5, + 30 + ], + [ + 36.75, + 29.87 + ], + [ + 36.07, + 29.18 + ], + [ + 34.96, + 29.36 + ], + [ + 34.98, + 29.54 + ] + ] + ] + }, + "properties": { + "A3": "JOR" + } + }, + { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + 10.45, + 47.56 + ], + [ + 10.46, + 47.43 + ], + [ + 10.33, + 47.3 + ], + [ + 10.18, + 47.3 + ], + [ + 10.21, + 47.38 + ], + [ + 10.2, + 47.38 + ], + [ + 9.73, + 47.53 + ], + [ + 9.56, + 47.59 + ], + [ + 9.03, + 47.81 + ], + [ + 9.19, + 47.66 + ], + [ + 9.15, + 47.67 + ], + [ + 9.14, + 47.66 + ], + [ + 9.12, + 47.67 + ], + [ + 8.93, + 47.75 + ], + [ + 9.01, + 47.68 + ], + [ + 9, + 47.68 + ], + [ + 8.87, + 47.67 + ], + [ + 8.79, + 47.68 + ], + [ + 8.75, + 47.69 + ], + [ + 8.74, + 47.69 + ], + [ + 8.57, + 47.81 + ], + [ + 8.41, + 47.67 + ], + [ + 8.63, + 47.65 + ], + [ + 8.62, + 47.64 + ], + [ + 8.61, + 47.64 + ], + [ + 8.61, + 47.65 + ], + [ + 8.49, + 47.58 + ], + [ + 8.48, + 47.58 + ], + [ + 8.46, + 47.57 + ], + [ + 8.44, + 47.57 + ], + [ + 8.42, + 47.57 + ], + [ + 8.41, + 47.57 + ], + [ + 8.37, + 47.57 + ], + [ + 8.22, + 47.62 + ], + [ + 8.21, + 47.62 + ], + [ + 8.19, + 47.62 + ], + [ + 8.18, + 47.6 + ], + [ + 8.17, + 47.6 + ], + [ + 8.16, + 47.59 + ], + [ + 8.15, + 47.6 + ], + [ + 8.14, + 47.59 + ], + [ + 8.11, + 47.58 + ], + [ + 8.1, + 47.57 + ], + [ + 8.09, + 47.56 + ], + [ + 8.02, + 47.55 + ], + [ + 8.01, + 47.55 + ], + [ + 7.98, + 47.56 + ], + [ + 7.96, + 47.56 + ], + [ + 7.95, + 47.56 + ], + [ + 7.94, + 47.54 + ], + [ + 7.93, + 47.55 + ], + [ + 7.91, + 47.56 + ], + [ + 7.91, + 47.57 + ], + [ + 7.91, + 47.58 + ], + [ + 7.9, + 47.58 + ], + [ + 7.89, + 47.59 + ], + [ + 7.88, + 47.59 + ], + [ + 7.87, + 47.59 + ], + [ + 7.86, + 47.59 + ], + [ + 7.84, + 47.58 + ], + [ + 7.81, + 47.58 + ], + [ + 7.8, + 47.56 + ], + [ + 7.78, + 47.55 + ], + [ + 7.74, + 47.54 + ], + [ + 7.73, + 47.54 + ], + [ + 7.72, + 47.54 + ], + [ + 7.71, + 47.54 + ], + [ + 7.68, + 47.53 + ], + [ + 7.67, + 47.54 + ], + [ + 7.59, + 47.59 + ], + [ + 7.58, + 47.61 + ], + [ + 7.57, + 47.62 + ], + [ + 7.57, + 47.63 + ], + [ + 7.56, + 47.64 + ], + [ + 7.55, + 47.64 + ], + [ + 7.53, + 47.65 + ], + [ + 7.52, + 47.67 + ], + [ + 7.52, + 47.68 + ], + [ + 7.54, + 47.72 + ], + [ + 7.55, + 47.73 + ], + [ + 7.54, + 47.75 + ], + [ + 7.54, + 47.76 + ], + [ + 7.53, + 47.79 + ], + [ + 7.54, + 47.81 + ], + [ + 7.55, + 47.81 + ], + [ + 7.56, + 47.84 + ], + [ + 7.56, + 47.86 + ], + [ + 7.58, + 47.9 + ], + [ + 7.58, + 47.91 + ], + [ + 7.58, + 47.92 + ], + [ + 7.61, + 47.96 + ], + [ + 7.62, + 47.97 + ], + [ + 7.62, + 47.98 + ], + [ + 7.61, + 48 + ], + [ + 7.6, + 48.01 + ], + [ + 7.57, + 48.03 + ], + [ + 7.57, + 48.05 + ], + [ + 7.57, + 48.06 + ], + [ + 7.57, + 48.07 + ], + [ + 7.57, + 48.08 + ], + [ + 7.58, + 48.12 + ], + [ + 7.58, + 48.13 + ], + [ + 7.6, + 48.14 + ], + [ + 7.6, + 48.15 + ], + [ + 7.6, + 48.16 + ], + [ + 7.61, + 48.17 + ], + [ + 7.63, + 48.18 + ], + [ + 7.64, + 48.2 + ], + [ + 7.66, + 48.22 + ], + [ + 7.68, + 48.25 + ], + [ + 7.69, + 48.27 + ], + [ + 7.69, + 48.28 + ], + [ + 7.69, + 48.3 + ], + [ + 7.72, + 48.31 + ], + [ + 7.73, + 48.32 + ], + [ + 7.74, + 48.32 + ], + [ + 7.74, + 48.34 + ], + [ + 7.74, + 48.35 + ], + [ + 7.75, + 48.37 + ], + [ + 7.73, + 48.37 + ], + [ + 7.73, + 48.38 + ], + [ + 7.73, + 48.39 + ], + [ + 7.74, + 48.41 + ], + [ + 7.74, + 48.42 + ], + [ + 7.75, + 48.44 + ], + [ + 7.8, + 48.51 + ], + [ + 7.81, + 48.53 + ], + [ + 7.81, + 48.55 + ], + [ + 7.8, + 48.57 + ], + [ + 7.8, + 48.58 + ], + [ + 7.81, + 48.6 + ], + [ + 7.82, + 48.61 + ], + [ + 7.83, + 48.62 + ], + [ + 7.84, + 48.64 + ], + [ + 7.85, + 48.65 + ], + [ + 7.88, + 48.66 + ], + [ + 7.89, + 48.66 + ], + [ + 7.9, + 48.67 + ], + [ + 7.92, + 48.68 + ], + [ + 7.92, + 48.69 + ], + [ + 7.93, + 48.69 + ], + [ + 7.93, + 48.7 + ], + [ + 7.94, + 48.71 + ], + [ + 7.95, + 48.71 + ], + [ + 7.96, + 48.72 + ], + [ + 7.97, + 48.73 + ], + [ + 7.97, + 48.75 + ], + [ + 7.97, + 48.76 + ], + [ + 7.99, + 48.76 + ], + [ + 8, + 48.76 + ], + [ + 8.01, + 48.76 + ], + [ + 8.02, + 48.76 + ], + [ + 8.02, + 48.77 + ], + [ + 8.04, + 48.79 + ], + [ + 8.05, + 48.79 + ], + [ + 8.07, + 48.79 + ], + [ + 8.08, + 48.8 + ], + [ + 8.09, + 48.81 + ], + [ + 8.13, + 48.82 + ], + [ + 8.13, + 48.88 + ], + [ + 8.14, + 48.89 + ], + [ + 8.15, + 48.91 + ], + [ + 8.16, + 48.92 + ], + [ + 8.2, + 48.92 + ], + [ + 8.18, + 48.94 + ], + [ + 8.19, + 48.95 + ], + [ + 8.21, + 48.96 + ], + [ + 8.22, + 48.96 + ], + [ + 8.23, + 48.97 + ], + [ + 7.45, + 49.18 + ], + [ + 7.16, + 49.13 + ], + [ + 7.13, + 49.14 + ], + [ + 7.1, + 49.16 + ], + [ + 7.1, + 49.15 + ], + [ + 7.09, + 49.15 + ], + [ + 7.08, + 49.15 + ], + [ + 7.08, + 49.14 + ], + [ + 7.09, + 49.13 + ], + [ + 7.08, + 49.13 + ], + [ + 7.07, + 49.12 + ], + [ + 7.07, + 49.11 + ], + [ + 7.06, + 49.11 + ], + [ + 7.05, + 49.11 + ], + [ + 7.04, + 49.15 + ], + [ + 7.03, + 49.18 + ], + [ + 6.74, + 49.16 + ], + [ + 6.47, + 49.46 + ], + [ + 6.37, + 49.47 + ], + [ + 6.37, + 49.49 + ], + [ + 6.37, + 49.52 + ], + [ + 6.37, + 49.51 + ], + [ + 6.36, + 49.51 + ], + [ + 6.36, + 49.53 + ], + [ + 6.37, + 49.58 + ], + [ + 6.38, + 49.58 + ], + [ + 6.37, + 49.59 + ], + [ + 6.38, + 49.6 + ], + [ + 6.42, + 49.62 + ], + [ + 6.44, + 49.65 + ], + [ + 6.44, + 49.66 + ], + [ + 6.48, + 49.7 + ], + [ + 6.5, + 49.71 + ], + [ + 6.51, + 49.71 + ], + [ + 6.49, + 49.72 + ], + [ + 6.5, + 49.72 + ], + [ + 6.51, + 49.72 + ], + [ + 6.5, + 49.75 + ], + [ + 6.52, + 49.76 + ], + [ + 6.51, + 49.79 + ], + [ + 6.53, + 49.81 + ], + [ + 6.52, + 49.81 + ], + [ + 6.39, + 49.83 + ], + [ + 6.22, + 49.92 + ], + [ + 6.22, + 49.93 + ], + [ + 6.2, + 49.95 + ], + [ + 6.2, + 49.96 + ], + [ + 6.19, + 49.96 + ], + [ + 6.14, + 50.13 + ], + [ + 6.41, + 50.34 + ], + [ + 6.2, + 50.66 + ], + [ + 6.02, + 50.75 + ], + [ + 6.02, + 50.98 + ], + [ + 5.89, + 51.01 + ], + [ + 6.08, + 51.12 + ], + [ + 6.09, + 51.12 + ], + [ + 6.1, + 51.26 + ], + [ + 6.11, + 51.26 + ], + [ + 6.21, + 51.51 + ], + [ + 6.2, + 51.53 + ], + [ + 6.18, + 51.54 + ], + [ + 6.02, + 51.73 + ], + [ + 6.01, + 51.73 + ], + [ + 6.06, + 51.86 + ], + [ + 6.06, + 51.87 + ], + [ + 6.1, + 51.85 + ], + [ + 6.11, + 51.85 + ], + [ + 6.14, + 51.85 + ], + [ + 6.15, + 51.84 + ], + [ + 6.12, + 51.89 + ], + [ + 6.13, + 51.89 + ], + [ + 6.11, + 51.89 + ], + [ + 6.73, + 51.9 + ], + [ + 6.69, + 52.05 + ], + [ + 7.04, + 52.27 + ], + [ + 7.03, + 52.27 + ], + [ + 6.73, + 52.56 + ], + [ + 6.73, + 52.61 + ], + [ + 6.73, + 52.62 + ], + [ + 6.77, + 52.65 + ], + [ + 7.06, + 52.64 + ], + [ + 7.2, + 53.06 + ], + [ + 7.2, + 53.07 + ], + [ + 7.2, + 53.17 + ], + [ + 7.21, + 53.18 + ], + [ + 7.21, + 53.22 + ], + [ + 7.21, + 53.23 + ], + [ + 7.21, + 53.24 + ], + [ + 7.36, + 53.32 + ], + [ + 7, + 53.36 + ], + [ + 7.16, + 53.63 + ], + [ + 8.01, + 53.71 + ], + [ + 8.21, + 53.39 + ], + [ + 8.27, + 53.61 + ], + [ + 8.55, + 53.54 + ], + [ + 8.45, + 53.23 + ], + [ + 8.88, + 53.05 + ], + [ + 8.48, + 53.24 + ], + [ + 8.66, + 53.89 + ], + [ + 9.27, + 53.86 + ], + [ + 9.75, + 53.54 + ], + [ + 9.4, + 53.83 + ], + [ + 8.8, + 54.02 + ], + [ + 8.98, + 54.04 + ], + [ + 8.81, + 54.17 + ], + [ + 8.95, + 54.32 + ], + [ + 8.59, + 54.34 + ], + [ + 9.01, + 54.5 + ], + [ + 8.81, + 54.47 + ], + [ + 8.96, + 54.55 + ], + [ + 8.6, + 54.88 + ], + [ + 8.41, + 54.85 + ], + [ + 8.31, + 54.88 + ], + [ + 8.28, + 54.75 + ], + [ + 8.3, + 54.91 + ], + [ + 8.4, + 55.05 + ], + [ + 8.38, + 54.89 + ], + [ + 8.66, + 54.91 + ], + [ + 8.72, + 54.89 + ], + [ + 8.75, + 54.89 + ], + [ + 8.76, + 54.9 + ], + [ + 8.79, + 54.9 + ], + [ + 8.8, + 54.9 + ], + [ + 8.88, + 54.9 + ], + [ + 8.97, + 54.9 + ], + [ + 9.08, + 54.87 + ], + [ + 9.09, + 54.87 + ], + [ + 9.42, + 54.83 + ], + [ + 9.96, + 54.78 + ], + [ + 10.03, + 54.55 + ], + [ + 9.83, + 54.47 + ], + [ + 10.2, + 54.46 + ], + [ + 10.13, + 54.31 + ], + [ + 10.46, + 54.39 + ], + [ + 11.13, + 54.39 + ], + [ + 10.75, + 54.03 + ], + [ + 11.45, + 53.89 + ], + [ + 11.68, + 54.15 + ], + [ + 12.11, + 54.12 + ], + [ + 12.51, + 54.48 + ], + [ + 12.93, + 54.43 + ], + [ + 12.59, + 54.45 + ], + [ + 12.42, + 54.25 + ], + [ + 13.02, + 54.44 + ], + [ + 13.1, + 54.28 + ], + [ + 13.46, + 54.09 + ], + [ + 13.7, + 54.17 + ], + [ + 13.8, + 54.1 + ], + [ + 13.74, + 54.03 + ], + [ + 13.91, + 53.92 + ], + [ + 13.81, + 53.88 + ], + [ + 13.81, + 53.83 + ], + [ + 14.27, + 53.7 + ], + [ + 14.28, + 53.65 + ], + [ + 14.28, + 53.64 + ], + [ + 14.41, + 53.34 + ], + [ + 14.44, + 53.28 + ], + [ + 14.44, + 53.27 + ], + [ + 14.44, + 53.25 + ], + [ + 14.43, + 53.24 + ], + [ + 14.41, + 53.23 + ], + [ + 14.41, + 53.22 + ], + [ + 14.41, + 53.21 + ], + [ + 14.39, + 53.21 + ], + [ + 14.38, + 53.19 + ], + [ + 14.37, + 53.18 + ], + [ + 14.37, + 53.17 + ], + [ + 14.38, + 53.15 + ], + [ + 14.38, + 53.13 + ], + [ + 14.38, + 53.11 + ], + [ + 14.37, + 53.11 + ], + [ + 14.37, + 53.1 + ], + [ + 14.37, + 53.09 + ], + [ + 14.37, + 53.08 + ], + [ + 14.34, + 53.08 + ], + [ + 14.36, + 53.07 + ], + [ + 14.33, + 53.04 + ], + [ + 14.32, + 53.04 + ], + [ + 14.31, + 53.03 + ], + [ + 14.3, + 53.03 + ], + [ + 14.29, + 53.02 + ], + [ + 14.28, + 53.01 + ], + [ + 14.24, + 53 + ], + [ + 14.24, + 52.99 + ], + [ + 14.22, + 52.99 + ], + [ + 14.2, + 52.98 + ], + [ + 14.19, + 52.98 + ], + [ + 14.18, + 52.98 + ], + [ + 14.14, + 52.96 + ], + [ + 14.14, + 52.95 + ], + [ + 14.14, + 52.94 + ], + [ + 14.14, + 52.93 + ], + [ + 14.15, + 52.93 + ], + [ + 14.15, + 52.92 + ], + [ + 14.15, + 52.91 + ], + [ + 14.15, + 52.9 + ], + [ + 14.15, + 52.87 + ], + [ + 14.14, + 52.86 + ], + [ + 14.13, + 52.85 + ], + [ + 14.12, + 52.83 + ], + [ + 14.14, + 52.82 + ], + [ + 14.17, + 52.82 + ], + [ + 14.22, + 52.81 + ], + [ + 14.23, + 52.8 + ], + [ + 14.24, + 52.8 + ], + [ + 14.27, + 52.78 + ], + [ + 14.28, + 52.77 + ], + [ + 14.32, + 52.76 + ], + [ + 14.33, + 52.76 + ], + [ + 14.35, + 52.75 + ], + [ + 14.36, + 52.74 + ], + [ + 14.37, + 52.74 + ], + [ + 14.38, + 52.73 + ], + [ + 14.39, + 52.72 + ], + [ + 14.41, + 52.7 + ], + [ + 14.42, + 52.7 + ], + [ + 14.43, + 52.69 + ], + [ + 14.43, + 52.68 + ], + [ + 14.45, + 52.68 + ], + [ + 14.46, + 52.67 + ], + [ + 14.48, + 52.66 + ], + [ + 14.48, + 52.65 + ], + [ + 14.5, + 52.65 + ], + [ + 14.5, + 52.64 + ], + [ + 14.52, + 52.64 + ], + [ + 14.53, + 52.63 + ], + [ + 14.56, + 52.63 + ], + [ + 14.58, + 52.62 + ], + [ + 14.59, + 52.61 + ], + [ + 14.6, + 52.6 + ], + [ + 14.61, + 52.6 + ], + [ + 14.61, + 52.59 + ], + [ + 14.64, + 52.57 + ], + [ + 14.63, + 52.56 + ], + [ + 14.62, + 52.56 + ], + [ + 14.61, + 52.55 + ], + [ + 14.61, + 52.54 + ], + [ + 14.6, + 52.53 + ], + [ + 14.61, + 52.51 + ], + [ + 14.63, + 52.5 + ], + [ + 14.63, + 52.49 + ], + [ + 14.61, + 52.48 + ], + [ + 14.61, + 52.46 + ], + [ + 14.59, + 52.45 + ], + [ + 14.57, + 52.44 + ], + [ + 14.56, + 52.44 + ], + [ + 14.55, + 52.43 + ], + [ + 14.54, + 52.42 + ], + [ + 14.55, + 52.41 + ], + [ + 14.54, + 52.39 + ], + [ + 14.55, + 52.38 + ], + [ + 14.55, + 52.37 + ], + [ + 14.55, + 52.36 + ], + [ + 14.56, + 52.34 + ], + [ + 14.56, + 52.33 + ], + [ + 14.58, + 52.32 + ], + [ + 14.58, + 52.31 + ], + [ + 14.58, + 52.3 + ], + [ + 14.58, + 52.29 + ], + [ + 14.59, + 52.28 + ], + [ + 14.6, + 52.27 + ], + [ + 14.61, + 52.27 + ], + [ + 14.63, + 52.27 + ], + [ + 14.64, + 52.26 + ], + [ + 14.67, + 52.26 + ], + [ + 14.68, + 52.26 + ], + [ + 14.69, + 52.26 + ], + [ + 14.69, + 52.25 + ], + [ + 14.7, + 52.24 + ], + [ + 14.71, + 52.24 + ], + [ + 14.71, + 52.23 + ], + [ + 14.71, + 52.21 + ], + [ + 14.69, + 52.19 + ], + [ + 14.7, + 52.18 + ], + [ + 14.71, + 52.17 + ], + [ + 14.7, + 52.16 + ], + [ + 14.69, + 52.16 + ], + [ + 14.68, + 52.15 + ], + [ + 14.68, + 52.14 + ], + [ + 14.68, + 52.12 + ], + [ + 14.69, + 52.11 + ], + [ + 14.7, + 52.1 + ], + [ + 14.74, + 52.08 + ], + [ + 14.75, + 52.08 + ], + [ + 14.76, + 52.07 + ], + [ + 14.75, + 52.05 + ], + [ + 14.75, + 52.04 + ], + [ + 14.74, + 52.03 + ], + [ + 14.74, + 52.02 + ], + [ + 14.72, + 51.94 + ], + [ + 14.7, + 51.92 + ], + [ + 14.68, + 51.89 + ], + [ + 14.67, + 51.89 + ], + [ + 14.65, + 51.88 + ], + [ + 14.63, + 51.86 + ], + [ + 14.61, + 51.85 + ], + [ + 14.59, + 51.84 + ], + [ + 14.59, + 51.83 + ], + [ + 14.59, + 51.82 + ], + [ + 14.65, + 51.78 + ], + [ + 14.65, + 51.77 + ], + [ + 14.66, + 51.75 + ], + [ + 14.66, + 51.74 + ], + [ + 14.76, + 51.62 + ], + [ + 14.74, + 51.59 + ], + [ + 14.81, + 51.51 + ], + [ + 14.92, + 51.48 + ], + [ + 14.96, + 51.46 + ], + [ + 14.96, + 51.45 + ], + [ + 14.97, + 51.41 + ], + [ + 14.97, + 51.4 + ], + [ + 14.96, + 51.4 + ], + [ + 14.98, + 51.37 + ], + [ + 14.99, + 51.33 + ], + [ + 15, + 51.32 + ], + [ + 15.01, + 51.32 + ], + [ + 15.03, + 51.29 + ], + [ + 15.03, + 51.25 + ], + [ + 15.01, + 51.18 + ], + [ + 15, + 51.13 + ], + [ + 14.99, + 51.12 + ], + [ + 14.98, + 51.1 + ], + [ + 14.96, + 51.06 + ], + [ + 14.96, + 51.05 + ], + [ + 14.95, + 51.04 + ], + [ + 14.94, + 51.03 + ], + [ + 14.94, + 51.01 + ], + [ + 14.9, + 50.94 + ], + [ + 14.82, + 50.87 + ], + [ + 14.81, + 50.85 + ], + [ + 14.58, + 50.94 + ], + [ + 14.5, + 51.05 + ], + [ + 14.26, + 50.99 + ], + [ + 14.32, + 50.99 + ], + [ + 14.33, + 50.98 + ], + [ + 14.24, + 50.89 + ], + [ + 14.23, + 50.89 + ], + [ + 14.24, + 50.88 + ], + [ + 14.23, + 50.87 + ], + [ + 13.54, + 50.71 + ], + [ + 13.53, + 50.7 + ], + [ + 13.43, + 50.61 + ], + [ + 13.34, + 50.61 + ], + [ + 12.73, + 50.43 + ], + [ + 12.35, + 50.25 + ], + [ + 12.36, + 50.24 + ], + [ + 12.35, + 50.24 + ], + [ + 12.33, + 50.23 + ], + [ + 12.32, + 50.18 + ], + [ + 12.33, + 50.18 + ], + [ + 12.29, + 50.18 + ], + [ + 12.28, + 50.22 + ], + [ + 12.26, + 50.26 + ], + [ + 12.25, + 50.27 + ], + [ + 12.13, + 50.23 + ], + [ + 12.36, + 50.03 + ], + [ + 12.36, + 50.02 + ], + [ + 12.36, + 50.03 + ], + [ + 12.36, + 50.02 + ], + [ + 12.39, + 50.01 + ], + [ + 12.4, + 50.01 + ], + [ + 12.48, + 49.84 + ], + [ + 12.66, + 49.43 + ], + [ + 13.41, + 49.01 + ], + [ + 13.41, + 48.99 + ], + [ + 13.41, + 48.98 + ], + [ + 13.84, + 48.77 + ], + [ + 13.72, + 48.51 + ], + [ + 13.7, + 48.52 + ], + [ + 13.69, + 48.53 + ], + [ + 13.68, + 48.53 + ], + [ + 13.67, + 48.53 + ], + [ + 13.66, + 48.54 + ], + [ + 13.65, + 48.55 + ], + [ + 13.62, + 48.55 + ], + [ + 13.61, + 48.56 + ], + [ + 13.6, + 48.57 + ], + [ + 13.59, + 48.57 + ], + [ + 13.57, + 48.56 + ], + [ + 13.56, + 48.57 + ], + [ + 13.55, + 48.57 + ], + [ + 13.54, + 48.58 + ], + [ + 13.53, + 48.58 + ], + [ + 13.51, + 48.59 + ], + [ + 13.5, + 48.58 + ], + [ + 13.48, + 48.56 + ], + [ + 13.45, + 48.56 + ], + [ + 13.44, + 48.56 + ], + [ + 13.44, + 48.55 + ], + [ + 13.45, + 48.53 + ], + [ + 13.45, + 48.52 + ], + [ + 13.46, + 48.51 + ], + [ + 13.45, + 48.5 + ], + [ + 13.44, + 48.49 + ], + [ + 13.44, + 48.48 + ], + [ + 13.44, + 48.47 + ], + [ + 13.43, + 48.47 + ], + [ + 13.43, + 48.45 + ], + [ + 13.42, + 48.41 + ], + [ + 13.42, + 48.4 + ], + [ + 13.42, + 48.39 + ], + [ + 13.41, + 48.37 + ], + [ + 13.4, + 48.37 + ], + [ + 13.39, + 48.36 + ], + [ + 13.38, + 48.36 + ], + [ + 13.36, + 48.35 + ], + [ + 13.35, + 48.34 + ], + [ + 13.34, + 48.33 + ], + [ + 13.33, + 48.33 + ], + [ + 13.32, + 48.32 + ], + [ + 13.31, + 48.31 + ], + [ + 13.29, + 48.31 + ], + [ + 13.27, + 48.3 + ], + [ + 13.21, + 48.3 + ], + [ + 13.23, + 48.29 + ], + [ + 13.19, + 48.3 + ], + [ + 13.18, + 48.29 + ], + [ + 13.15, + 48.29 + ], + [ + 13.08, + 48.28 + ], + [ + 13.06, + 48.27 + ], + [ + 13.05, + 48.26 + ], + [ + 13.02, + 48.25 + ], + [ + 13.01, + 48.25 + ], + [ + 13, + 48.24 + ], + [ + 12.97, + 48.22 + ], + [ + 12.96, + 48.21 + ], + [ + 12.95, + 48.21 + ], + [ + 12.92, + 48.21 + ], + [ + 12.86, + 48.18 + ], + [ + 12.85, + 48.18 + ], + [ + 12.84, + 48.17 + ], + [ + 12.83, + 48.16 + ], + [ + 12.81, + 48.15 + ], + [ + 12.75, + 48.11 + ], + [ + 12.75, + 48.09 + ], + [ + 12.86, + 48.01 + ], + [ + 12.86, + 48 + ], + [ + 12.87, + 47.96 + ], + [ + 12.88, + 47.96 + ], + [ + 12.9, + 47.96 + ], + [ + 12.92, + 47.95 + ], + [ + 12.92, + 47.94 + ], + [ + 12.93, + 47.94 + ], + [ + 12.96, + 47.91 + ], + [ + 12.97, + 47.9 + ], + [ + 12.98, + 47.87 + ], + [ + 12.99, + 47.87 + ], + [ + 13, + 47.86 + ], + [ + 13, + 47.85 + ], + [ + 13, + 47.84 + ], + [ + 12.99, + 47.84 + ], + [ + 12.99, + 47.83 + ], + [ + 12.94, + 47.78 + ], + [ + 13.01, + 47.46 + ], + [ + 12.77, + 47.67 + ], + [ + 12.17, + 47.68 + ], + [ + 12.18, + 47.67 + ], + [ + 12.19, + 47.65 + ], + [ + 12.2, + 47.64 + ], + [ + 12.2, + 47.61 + ], + [ + 12.19, + 47.61 + ], + [ + 12.18, + 47.6 + ], + [ + 12.18, + 47.61 + ], + [ + 11.89, + 47.61 + ], + [ + 11.63, + 47.59 + ], + [ + 11.25, + 47.43 + ], + [ + 10.98, + 47.4 + ], + [ + 10.68, + 47.56 + ], + [ + 10.67, + 47.56 + ], + [ + 10.45, + 47.56 + ] + ], + [ + [ + 12.54, + 53.51 + ], + [ + 12.7, + 53.32 + ], + [ + 12.77, + 53.44 + ], + [ + 12.54, + 53.51 + ] + ], + [ + [ + 12.57, + 48.92 + ], + [ + 12.61, + 48.92 + ], + [ + 12.57, + 48.94 + ], + [ + 12.57, + 48.92 + ] + ] + ], + [ + [ + [ + 7.74, + 48.36 + ], + [ + 7.73, + 48.37 + ], + [ + 7.75, + 48.37 + ], + [ + 7.74, + 48.36 + ] + ] + ], + [ + [ + [ + 6.49, + 49.72 + ], + [ + 6.5, + 49.73 + ], + [ + 6.5, + 49.72 + ], + [ + 6.49, + 49.72 + ] + ] + ], + [ + [ + [ + 14.23, + 53.93 + ], + [ + 14.19, + 53.91 + ], + [ + 14.21, + 53.87 + ], + [ + 13.83, + 53.85 + ], + [ + 13.94, + 53.91 + ], + [ + 13.91, + 53.99 + ], + [ + 14.04, + 53.94 + ], + [ + 14.05, + 54 + ], + [ + 13.97, + 54.06 + ], + [ + 13.91, + 54.06 + ], + [ + 13.86, + 54 + ], + [ + 13.86, + 54.05 + ], + [ + 13.77, + 54.02 + ], + [ + 13.81, + 54.11 + ], + [ + 13.76, + 54.17 + ], + [ + 13.81, + 54.17 + ], + [ + 13.87, + 54.1 + ], + [ + 14.02, + 54.05 + ], + [ + 14.23, + 53.93 + ] + ] + ], + [ + [ + [ + 13.43, + 48.44 + ], + [ + 13.44, + 48.43 + ], + [ + 13.43, + 48.42 + ], + [ + 13.43, + 48.44 + ] + ] + ], + [ + [ + [ + 13.16, + 54.51 + ], + [ + 13.37, + 54.58 + ], + [ + 13.55, + 54.42 + ], + [ + 13.37, + 54.62 + ], + [ + 13.25, + 54.56 + ], + [ + 13.28, + 54.65 + ], + [ + 13.16, + 54.56 + ], + [ + 13.25, + 54.66 + ], + [ + 13.43, + 54.68 + ], + [ + 13.72, + 54.27 + ], + [ + 13.65, + 54.36 + ], + [ + 13.39, + 54.22 + ], + [ + 13.14, + 54.28 + ], + [ + 13.16, + 54.51 + ] + ] + ] + ] + }, + "properties": { + "A3": "DEU" + } + }, + { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + -63.01, + 18.05 + ], + [ + -63.01, + 18.06 + ], + [ + -63.02, + 18.06 + ], + [ + -63.04, + 18.06 + ], + [ + -63.06, + 18.06 + ], + [ + -63.07, + 18.06 + ], + [ + -63.08, + 18.05 + ], + [ + -63.09, + 18.05 + ], + [ + -63.04, + 18.12 + ], + [ + -63.01, + 18.05 + ] + ] + ], + [ + [ + [ + -54.6, + 2.33 + ], + [ + -54.21, + 2.78 + ], + [ + -54.21, + 3.15 + ], + [ + -54.09, + 3.29 + ], + [ + -54.07, + 3.3 + ], + [ + -54.06, + 3.32 + ], + [ + -54.07, + 3.32 + ], + [ + -54.06, + 3.36 + ], + [ + -54.05, + 3.37 + ], + [ + -54.06, + 3.39 + ], + [ + -54.05, + 3.39 + ], + [ + -54.03, + 3.4 + ], + [ + -54.03, + 3.41 + ], + [ + -54.02, + 3.42 + ], + [ + -54.01, + 3.43 + ], + [ + -54.02, + 3.45 + ], + [ + -54.01, + 3.46 + ], + [ + -54.01, + 3.48 + ], + [ + -54.01, + 3.51 + ], + [ + -54, + 3.53 + ], + [ + -54.01, + 3.54 + ], + [ + -54, + 3.56 + ], + [ + -54, + 3.57 + ], + [ + -53.99, + 3.58 + ], + [ + -53.98, + 3.59 + ], + [ + -53.98, + 3.6 + ], + [ + -53.98, + 3.61 + ], + [ + -54, + 3.64 + ], + [ + -54.01, + 3.65 + ], + [ + -54.03, + 3.63 + ], + [ + -54.04, + 3.63 + ], + [ + -54.05, + 3.65 + ], + [ + -54.07, + 3.67 + ], + [ + -54.08, + 3.67 + ], + [ + -54.09, + 3.69 + ], + [ + -54.09, + 3.73 + ], + [ + -54.1, + 3.74 + ], + [ + -54.11, + 3.77 + ], + [ + -54.12, + 3.78 + ], + [ + -54.14, + 3.8 + ], + [ + -54.15, + 3.8 + ], + [ + -54.16, + 3.8 + ], + [ + -54.17, + 3.8 + ], + [ + -54.18, + 3.8 + ], + [ + -54.2, + 3.8 + ], + [ + -54.2, + 3.82 + ], + [ + -54.2, + 3.83 + ], + [ + -54.19, + 3.84 + ], + [ + -54.19, + 3.85 + ], + [ + -54.21, + 3.85 + ], + [ + -54.23, + 3.86 + ], + [ + -54.25, + 3.88 + ], + [ + -54.25, + 3.89 + ], + [ + -54.25, + 3.91 + ], + [ + -54.43, + 4.42 + ], + [ + -54.44, + 4.45 + ], + [ + -54.45, + 4.47 + ], + [ + -54.45, + 4.48 + ], + [ + -54.44, + 4.54 + ], + [ + -54.43, + 4.56 + ], + [ + -54.42, + 4.58 + ], + [ + -54.42, + 4.59 + ], + [ + -54.43, + 4.62 + ], + [ + -54.44, + 4.67 + ], + [ + -54.43, + 4.69 + ], + [ + -54.45, + 4.72 + ], + [ + -54.46, + 4.73 + ], + [ + -54.48, + 4.74 + ], + [ + -54.47, + 4.85 + ], + [ + -54.48, + 4.88 + ], + [ + -54.48, + 4.91 + ], + [ + -54.46, + 4.93 + ], + [ + -54.44, + 4.95 + ], + [ + -54.44, + 4.96 + ], + [ + -54.44, + 4.97 + ], + [ + -54.44, + 4.99 + ], + [ + -54.44, + 5 + ], + [ + -54.44, + 5.01 + ], + [ + -54.43, + 5.03 + ], + [ + -54.41, + 5.07 + ], + [ + -54.39, + 5.1 + ], + [ + -54.37, + 5.12 + ], + [ + -54.35, + 5.14 + ], + [ + -54.35, + 5.15 + ], + [ + -54.35, + 5.16 + ], + [ + -54.34, + 5.17 + ], + [ + -54.33, + 5.18 + ], + [ + -54.33, + 5.19 + ], + [ + -54.31, + 5.22 + ], + [ + -54.3, + 5.23 + ], + [ + -54.28, + 5.25 + ], + [ + -54.27, + 5.26 + ], + [ + -54.26, + 5.27 + ], + [ + -54.25, + 5.28 + ], + [ + -54.24, + 5.29 + ], + [ + -54.23, + 5.3 + ], + [ + -54.19, + 5.32 + ], + [ + -54.17, + 5.34 + ], + [ + -54.15, + 5.36 + ], + [ + -54.14, + 5.38 + ], + [ + -54.13, + 5.4 + ], + [ + -54.13, + 5.41 + ], + [ + -54.1, + 5.43 + ], + [ + -54.09, + 5.45 + ], + [ + -54.06, + 5.48 + ], + [ + -54.05, + 5.49 + ], + [ + -54.04, + 5.51 + ], + [ + -54.03, + 5.52 + ], + [ + -54.01, + 5.55 + ], + [ + -54.01, + 5.56 + ], + [ + -53.88, + 5.75 + ], + [ + -52.94, + 5.45 + ], + [ + -52.38, + 4.89 + ], + [ + -52.29, + 4.94 + ], + [ + -52.32, + 4.81 + ], + [ + -52.04, + 4.72 + ], + [ + -51.94, + 4.44 + ], + [ + -51.91, + 4.67 + ], + [ + -51.8, + 4.61 + ], + [ + -51.63, + 4.2 + ], + [ + -51.66, + 4.05 + ], + [ + -51.67, + 4.05 + ], + [ + -51.68, + 4.04 + ], + [ + -51.69, + 4.03 + ], + [ + -51.74, + 4.01 + ], + [ + -51.75, + 4 + ], + [ + -51.77, + 3.98 + ], + [ + -51.78, + 3.97 + ], + [ + -51.78, + 3.96 + ], + [ + -51.78, + 3.94 + ], + [ + -51.78, + 3.92 + ], + [ + -51.79, + 3.9 + ], + [ + -51.8, + 3.89 + ], + [ + -51.81, + 3.87 + ], + [ + -51.82, + 3.86 + ], + [ + -51.83, + 3.85 + ], + [ + -51.84, + 3.84 + ], + [ + -51.86, + 3.83 + ], + [ + -51.87, + 3.81 + ], + [ + -51.88, + 3.8 + ], + [ + -51.9, + 3.8 + ], + [ + -51.91, + 3.8 + ], + [ + -51.9, + 3.78 + ], + [ + -51.93, + 3.77 + ], + [ + -51.92, + 3.74 + ], + [ + -51.92, + 3.73 + ], + [ + -51.94, + 3.72 + ], + [ + -51.96, + 3.71 + ], + [ + -51.97, + 3.71 + ], + [ + -51.98, + 3.68 + ], + [ + -51.99, + 3.67 + ], + [ + -51.99, + 3.66 + ], + [ + -51.99, + 3.65 + ], + [ + -51.99, + 3.64 + ], + [ + -52.01, + 3.61 + ], + [ + -52.01, + 3.6 + ], + [ + -52.03, + 3.58 + ], + [ + -52.05, + 3.54 + ], + [ + -52.05, + 3.53 + ], + [ + -52.07, + 3.52 + ], + [ + -52.07, + 3.51 + ], + [ + -52.09, + 3.48 + ], + [ + -52.09, + 3.46 + ], + [ + -52.11, + 3.45 + ], + [ + -52.11, + 3.44 + ], + [ + -52.12, + 3.43 + ], + [ + -52.12, + 3.42 + ], + [ + -52.13, + 3.4 + ], + [ + -52.15, + 3.38 + ], + [ + -52.16, + 3.36 + ], + [ + -52.19, + 3.32 + ], + [ + -52.19, + 3.3 + ], + [ + -52.2, + 3.29 + ], + [ + -52.22, + 3.26 + ], + [ + -52.23, + 3.25 + ], + [ + -52.25, + 3.24 + ], + [ + -52.26, + 3.25 + ], + [ + -52.29, + 3.23 + ], + [ + -52.29, + 3.22 + ], + [ + -52.3, + 3.19 + ], + [ + -52.3, + 3.18 + ], + [ + -52.33, + 3.16 + ], + [ + -52.34, + 3.15 + ], + [ + -52.35, + 3.13 + ], + [ + -52.34, + 3.12 + ], + [ + -52.34, + 3.11 + ], + [ + -52.33, + 3.07 + ], + [ + -52.34, + 3.06 + ], + [ + -52.34, + 3.05 + ], + [ + -52.36, + 3.01 + ], + [ + -52.55, + 2.52 + ], + [ + -52.96, + 2.17 + ], + [ + -53.74, + 2.37 + ], + [ + -54.11, + 2.11 + ], + [ + -54.6, + 2.33 + ] + ] + ], + [ + [ + [ + 2.55, + 51.09 + ], + [ + 2.86, + 50.71 + ], + [ + 2.87, + 50.71 + ], + [ + 2.9, + 50.7 + ], + [ + 2.9, + 50.69 + ], + [ + 2.94, + 50.74 + ], + [ + 2.96, + 50.75 + ], + [ + 2.97, + 50.75 + ], + [ + 3, + 50.76 + ], + [ + 3.01, + 50.77 + ], + [ + 3.12, + 50.79 + ], + [ + 3.29, + 50.53 + ], + [ + 3.49, + 50.53 + ], + [ + 3.5, + 50.53 + ], + [ + 3.62, + 50.49 + ], + [ + 3.63, + 50.48 + ], + [ + 3.67, + 50.4 + ], + [ + 4.11, + 50.3 + ], + [ + 4.2, + 50.11 + ], + [ + 4.14, + 49.98 + ], + [ + 4.35, + 49.95 + ], + [ + 4.52, + 49.95 + ], + [ + 4.83, + 50.15 + ], + [ + 4.86, + 49.86 + ], + [ + 5.47, + 49.5 + ], + [ + 5.78, + 49.56 + ], + [ + 5.79, + 49.56 + ], + [ + 5.82, + 49.55 + ], + [ + 5.93, + 49.5 + ], + [ + 6.03, + 49.45 + ], + [ + 6.03, + 49.46 + ], + [ + 6.37, + 49.47 + ], + [ + 6.47, + 49.46 + ], + [ + 6.74, + 49.16 + ], + [ + 7.03, + 49.18 + ], + [ + 7.04, + 49.15 + ], + [ + 7.05, + 49.11 + ], + [ + 7.06, + 49.11 + ], + [ + 7.07, + 49.11 + ], + [ + 7.07, + 49.12 + ], + [ + 7.08, + 49.13 + ], + [ + 7.09, + 49.13 + ], + [ + 7.08, + 49.14 + ], + [ + 7.08, + 49.15 + ], + [ + 7.09, + 49.15 + ], + [ + 7.1, + 49.15 + ], + [ + 7.1, + 49.16 + ], + [ + 7.13, + 49.14 + ], + [ + 7.16, + 49.13 + ], + [ + 7.45, + 49.18 + ], + [ + 8.23, + 48.97 + ], + [ + 8.22, + 48.96 + ], + [ + 8.21, + 48.96 + ], + [ + 8.19, + 48.95 + ], + [ + 8.18, + 48.94 + ], + [ + 8.17, + 48.93 + ], + [ + 8.15, + 48.91 + ], + [ + 8.14, + 48.89 + ], + [ + 8.13, + 48.88 + ], + [ + 8.12, + 48.86 + ], + [ + 8.12, + 48.85 + ], + [ + 8.11, + 48.83 + ], + [ + 8.09, + 48.81 + ], + [ + 8.08, + 48.8 + ], + [ + 8.07, + 48.79 + ], + [ + 8.05, + 48.79 + ], + [ + 8.04, + 48.79 + ], + [ + 8.03, + 48.79 + ], + [ + 8.03, + 48.78 + ], + [ + 8.02, + 48.77 + ], + [ + 8.02, + 48.76 + ], + [ + 8.01, + 48.76 + ], + [ + 8, + 48.76 + ], + [ + 7.99, + 48.76 + ], + [ + 7.97, + 48.76 + ], + [ + 7.97, + 48.75 + ], + [ + 7.97, + 48.73 + ], + [ + 7.96, + 48.72 + ], + [ + 7.95, + 48.71 + ], + [ + 7.94, + 48.71 + ], + [ + 7.93, + 48.7 + ], + [ + 7.93, + 48.69 + ], + [ + 7.9, + 48.67 + ], + [ + 7.89, + 48.66 + ], + [ + 7.88, + 48.66 + ], + [ + 7.85, + 48.65 + ], + [ + 7.84, + 48.64 + ], + [ + 7.83, + 48.62 + ], + [ + 7.82, + 48.61 + ], + [ + 7.81, + 48.6 + ], + [ + 7.8, + 48.58 + ], + [ + 7.8, + 48.57 + ], + [ + 7.81, + 48.53 + ], + [ + 7.8, + 48.51 + ], + [ + 7.78, + 48.49 + ], + [ + 7.77, + 48.49 + ], + [ + 7.75, + 48.44 + ], + [ + 7.74, + 48.42 + ], + [ + 7.74, + 48.41 + ], + [ + 7.73, + 48.39 + ], + [ + 7.73, + 48.38 + ], + [ + 7.73, + 48.37 + ], + [ + 7.74, + 48.36 + ], + [ + 7.74, + 48.35 + ], + [ + 7.74, + 48.34 + ], + [ + 7.74, + 48.32 + ], + [ + 7.73, + 48.32 + ], + [ + 7.72, + 48.31 + ], + [ + 7.69, + 48.3 + ], + [ + 7.69, + 48.28 + ], + [ + 7.69, + 48.27 + ], + [ + 7.68, + 48.25 + ], + [ + 7.66, + 48.22 + ], + [ + 7.64, + 48.2 + ], + [ + 7.63, + 48.18 + ], + [ + 7.61, + 48.17 + ], + [ + 7.6, + 48.16 + ], + [ + 7.6, + 48.15 + ], + [ + 7.6, + 48.14 + ], + [ + 7.58, + 48.13 + ], + [ + 7.58, + 48.12 + ], + [ + 7.58, + 48.1 + ], + [ + 7.57, + 48.08 + ], + [ + 7.57, + 48.07 + ], + [ + 7.57, + 48.06 + ], + [ + 7.57, + 48.05 + ], + [ + 7.57, + 48.03 + ], + [ + 7.6, + 48.01 + ], + [ + 7.61, + 48 + ], + [ + 7.62, + 47.98 + ], + [ + 7.62, + 47.97 + ], + [ + 7.61, + 47.96 + ], + [ + 7.58, + 47.92 + ], + [ + 7.58, + 47.91 + ], + [ + 7.58, + 47.9 + ], + [ + 7.56, + 47.86 + ], + [ + 7.56, + 47.84 + ], + [ + 7.55, + 47.81 + ], + [ + 7.54, + 47.81 + ], + [ + 7.53, + 47.79 + ], + [ + 7.54, + 47.76 + ], + [ + 7.54, + 47.75 + ], + [ + 7.55, + 47.73 + ], + [ + 7.54, + 47.72 + ], + [ + 7.52, + 47.68 + ], + [ + 7.52, + 47.67 + ], + [ + 7.53, + 47.65 + ], + [ + 7.55, + 47.64 + ], + [ + 7.57, + 47.63 + ], + [ + 7.57, + 47.62 + ], + [ + 7.58, + 47.61 + ], + [ + 7.59, + 47.59 + ], + [ + 7.39, + 47.43 + ], + [ + 7.01, + 47.5 + ], + [ + 6.88, + 47.35 + ], + [ + 7.05, + 47.35 + ], + [ + 6.97, + 47.29 + ], + [ + 6.96, + 47.29 + ], + [ + 6.95, + 47.28 + ], + [ + 6.94, + 47.28 + ], + [ + 6.95, + 47.28 + ], + [ + 6.94, + 47.24 + ], + [ + 6.94, + 47.23 + ], + [ + 6.92, + 47.22 + ], + [ + 6.86, + 47.16 + ], + [ + 6.85, + 47.16 + ], + [ + 6.84, + 47.15 + ], + [ + 6.83, + 47.15 + ], + [ + 6.74, + 47.1 + ], + [ + 6.73, + 47.09 + ], + [ + 6.71, + 47.09 + ], + [ + 6.7, + 47.08 + ], + [ + 6.7, + 47.07 + ], + [ + 6.69, + 47.07 + ], + [ + 6.11, + 46.5 + ], + [ + 6.16, + 46.35 + ], + [ + 6.15, + 46.35 + ], + [ + 5.98, + 46.17 + ], + [ + 5.98, + 46.16 + ], + [ + 5.96, + 46.13 + ], + [ + 6.09, + 46.15 + ], + [ + 6.25, + 46.3 + ], + [ + 6.8, + 46.39 + ], + [ + 6.81, + 46.13 + ], + [ + 7.04, + 45.92 + ], + [ + 6.87, + 45.84 + ], + [ + 6.86, + 45.83 + ], + [ + 6.85, + 45.84 + ], + [ + 6.84, + 45.84 + ], + [ + 6.89, + 45.68 + ], + [ + 6.9, + 45.68 + ], + [ + 6.98, + 45.61 + ], + [ + 6.99, + 45.61 + ], + [ + 6.98, + 45.58 + ], + [ + 6.99, + 45.58 + ], + [ + 7.19, + 45.4 + ], + [ + 6.99, + 45.21 + ], + [ + 6.63, + 45.11 + ], + [ + 7.08, + 44.69 + ], + [ + 7.08, + 44.68 + ], + [ + 6.95, + 44.65 + ], + [ + 6.86, + 44.53 + ], + [ + 7.2, + 44.18 + ], + [ + 7.43, + 44.12 + ], + [ + 7.72, + 44.08 + ], + [ + 7.53, + 43.78 + ], + [ + 7.44, + 43.75 + ], + [ + 7.42, + 43.72 + ], + [ + 6.75, + 43.42 + ], + [ + 6.65, + 43.17 + ], + [ + 5.86, + 43.05 + ], + [ + 5.34, + 43.21 + ], + [ + 5.34, + 43.36 + ], + [ + 4.68, + 43.37 + ], + [ + 4.61, + 43.56 + ], + [ + 4.46, + 43.55 + ], + [ + 4.59, + 43.36 + ], + [ + 3.95, + 43.58 + ], + [ + 3.1, + 43.08 + ], + [ + 2.99, + 43.15 + ], + [ + 3.17, + 42.44 + ], + [ + 2.46, + 42.36 + ], + [ + 2.46, + 42.37 + ], + [ + 1.96, + 42.41 + ], + [ + 1.8, + 42.49 + ], + [ + 1.75, + 42.49 + ], + [ + 1.73, + 42.5 + ], + [ + 1.72, + 42.52 + ], + [ + 1.72, + 42.61 + ], + [ + 1.71, + 42.62 + ], + [ + 1.5, + 42.65 + ], + [ + 1.49, + 42.65 + ], + [ + 1.44, + 42.6 + ], + [ + 1.19, + 42.72 + ], + [ + 1.18, + 42.71 + ], + [ + 1.06, + 42.78 + ], + [ + 1.05, + 42.78 + ], + [ + 0.75, + 42.85 + ], + [ + 0.68, + 42.69 + ], + [ + 0.13, + 42.71 + ], + [ + -0.3, + 42.84 + ], + [ + -0.31, + 42.85 + ], + [ + -0.32, + 42.84 + ], + [ + -0.41, + 42.81 + ], + [ + -0.42, + 42.81 + ], + [ + -0.57, + 42.81 + ], + [ + -0.58, + 42.81 + ], + [ + -0.6, + 42.83 + ], + [ + -1.01, + 42.99 + ], + [ + -1.27, + 43.12 + ], + [ + -1.44, + 43.05 + ], + [ + -1.38, + 43.25 + ], + [ + -1.73, + 43.31 + ], + [ + -1.74, + 43.31 + ], + [ + -1.76, + 43.34 + ], + [ + -1.77, + 43.34 + ], + [ + -1.79, + 43.35 + ], + [ + -1.45, + 43.65 + ], + [ + -1.2, + 44.66 + ], + [ + -1.01, + 44.64 + ], + [ + -1.16, + 44.77 + ], + [ + -1.26, + 44.63 + ], + [ + -1.09, + 45.57 + ], + [ + -0.68, + 45.06 + ], + [ + -0.49, + 45 + ], + [ + -0.64, + 45.08 + ], + [ + -0.81, + 45.5 + ], + [ + -1.23, + 45.68 + ], + [ + -1.16, + 45.8 + ], + [ + -0.96, + 45.7 + ], + [ + -1.17, + 45.85 + ], + [ + -0.95, + 45.92 + ], + [ + -1.23, + 46.15 + ], + [ + -1.11, + 46.32 + ], + [ + -1.47, + 46.34 + ], + [ + -1.85, + 46.6 + ], + [ + -2.14, + 46.82 + ], + [ + -2, + 47.06 + ], + [ + -2.25, + 47.13 + ], + [ + -1.98, + 47.3 + ], + [ + -2.55, + 47.29 + ], + [ + -2.36, + 47.5 + ], + [ + -2.85, + 47.5 + ], + [ + -2.76, + 47.65 + ], + [ + -3.12, + 47.6 + ], + [ + -3.13, + 47.47 + ], + [ + -3.28, + 47.78 + ], + [ + -3.86, + 47.79 + ], + [ + -4.12, + 47.98 + ], + [ + -4.17, + 47.81 + ], + [ + -4.38, + 47.8 + ], + [ + -4.49, + 48.04 + ], + [ + -4.74, + 48.04 + ], + [ + -4.27, + 48.15 + ], + [ + -4.63, + 48.28 + ], + [ + -4.11, + 48.25 + ], + [ + -4.46, + 48.33 + ], + [ + -4.25, + 48.45 + ], + [ + -4.77, + 48.33 + ], + [ + -4.78, + 48.52 + ], + [ + -4.01, + 48.73 + ], + [ + -3.85, + 48.61 + ], + [ + -3.51, + 48.84 + ], + [ + -3.22, + 48.87 + ], + [ + -3.26, + 48.74 + ], + [ + -3.07, + 48.88 + ], + [ + -3.14, + 48.71 + ], + [ + -3.01, + 48.82 + ], + [ + -2.69, + 48.5 + ], + [ + -2.32, + 48.69 + ], + [ + -2.22, + 48.55 + ], + [ + -2.05, + 48.64 + ], + [ + -2.02, + 48.48 + ], + [ + -1.94, + 48.7 + ], + [ + -1.35, + 48.63 + ], + [ + -1.57, + 48.74 + ], + [ + -1.58, + 49.22 + ], + [ + -1.94, + 49.73 + ], + [ + -1.27, + 49.7 + ], + [ + -1.12, + 49.34 + ], + [ + -0.23, + 49.27 + ], + [ + 0.36, + 49.44 + ], + [ + 0.09, + 49.48 + ], + [ + 0.12, + 49.67 + ], + [ + 1.1, + 49.92 + ], + [ + 1.68, + 50.18 + ], + [ + 1.58, + 50.26 + ], + [ + 1.58, + 50.87 + ], + [ + 2.55, + 51.09 + ] + ], + [ + [ + 3.25, + 49.61 + ], + [ + 3.27, + 49.61 + ], + [ + 3.26, + 49.62 + ], + [ + 3.25, + 49.61 + ] + ] + ], + [ + [ + [ + -151.38, + -16.82 + ], + [ + -151.47, + -16.91 + ], + [ + -151.48, + -16.73 + ], + [ + -151.38, + -16.82 + ] + ] + ], + [ + [ + [ + -149.13, + -17.83 + ], + [ + -149.58, + -17.74 + ], + [ + -149.62, + -17.56 + ], + [ + -149.34, + -17.54 + ], + [ + -149.13, + -17.83 + ] + ] + ], + [ + [ + [ + -146.28, + -15.32 + ], + [ + -146.4, + -15.3 + ], + [ + -146.3, + -15.31 + ], + [ + -146.19, + -15.34 + ], + [ + -146.22, + -15.45 + ], + [ + -146.19, + -15.34 + ], + [ + -146.28, + -15.32 + ] + ] + ], + [ + [ + [ + -140.13, + -9.38 + ], + [ + -140.02, + -9.36 + ], + [ + -140.05, + -9.47 + ], + [ + -140.13, + -9.38 + ] + ] + ], + [ + [ + [ + -140.03, + -8.82 + ], + [ + -140.02, + -8.93 + ], + [ + -140.23, + -8.93 + ], + [ + -140.24, + -8.8 + ], + [ + -140.03, + -8.82 + ] + ] + ], + [ + [ + [ + -138.94, + -9.8 + ], + [ + -139.16, + -9.77 + ], + [ + -138.8, + -9.74 + ], + [ + -138.94, + -9.8 + ] + ] + ], + [ + [ + [ + -1.27, + 45.95 + ], + [ + -1.23, + 45.8 + ], + [ + -1.41, + 46.05 + ], + [ + -1.27, + 45.95 + ] + ] + ], + [ + [ + [ + 9.29, + 41.59 + ], + [ + 9.2, + 41.36 + ], + [ + 8.79, + 41.56 + ], + [ + 8.92, + 41.69 + ], + [ + 8.66, + 41.74 + ], + [ + 8.8, + 41.9 + ], + [ + 8.61, + 41.89 + ], + [ + 8.75, + 42.05 + ], + [ + 8.54, + 42.37 + ], + [ + 8.72, + 42.58 + ], + [ + 9.3, + 42.68 + ], + [ + 9.42, + 43.01 + ], + [ + 9.56, + 42.13 + ], + [ + 9.29, + 41.59 + ] + ] + ], + [ + [ + [ + 45.2, + -12.73 + ], + [ + 45.11, + -12.99 + ], + [ + 45.04, + -12.72 + ], + [ + 45.2, + -12.73 + ] + ] + ], + [ + [ + [ + 69.34, + -49.03 + ], + [ + 69.21, + -49.12 + ], + [ + 69.35, + -48.88 + ], + [ + 69.34, + -49.03 + ] + ] + ], + [ + [ + [ + 70.31, + -49.35 + ], + [ + 70.44, + -49.44 + ], + [ + 69.61, + -49.39 + ], + [ + 69.94, + -49.6 + ], + [ + 70.3, + -49.55 + ], + [ + 70.22, + -49.7 + ], + [ + 69.86, + -49.71 + ], + [ + 69.67, + -49.48 + ], + [ + 69.68, + -49.66 + ], + [ + 69.43, + -49.64 + ], + [ + 69.29, + -49.47 + ], + [ + 69.31, + -49.58 + ], + [ + 69.11, + -49.47 + ], + [ + 69.08, + -49.69 + ], + [ + 68.77, + -49.73 + ], + [ + 68.92, + -49.42 + ], + [ + 68.76, + -49.2 + ], + [ + 68.92, + -49.14 + ], + [ + 68.73, + -49.08 + ], + [ + 68.93, + -48.67 + ], + [ + 69.12, + -48.73 + ], + [ + 68.89, + -48.9 + ], + [ + 69.18, + -48.78 + ], + [ + 69, + -48.99 + ], + [ + 69.05, + -49.12 + ], + [ + 69.1, + -48.99 + ], + [ + 69.22, + -49.13 + ], + [ + 69.63, + -48.97 + ], + [ + 69.66, + -49.12 + ], + [ + 69.33, + -49.11 + ], + [ + 69.22, + -49.21 + ], + [ + 69.43, + -49.13 + ], + [ + 69.54, + -49.24 + ], + [ + 69.4, + -49.28 + ], + [ + 69.71, + -49.32 + ], + [ + 70.39, + -49.06 + ], + [ + 70.56, + -49.24 + ], + [ + 70.31, + -49.35 + ] + ] + ], + [ + [ + [ + 167.45, + -22.66 + ], + [ + 167.44, + -22.54 + ], + [ + 167.56, + -22.62 + ], + [ + 167.45, + -22.66 + ] + ] + ], + [ + [ + [ + 166.09, + -21.94 + ], + [ + 164.95, + -21.36 + ], + [ + 164.84, + -21.06 + ], + [ + 164.46, + -20.85 + ], + [ + 164.19, + -20.34 + ], + [ + 164.03, + -20.3 + ], + [ + 164, + -20.08 + ], + [ + 165.24, + -20.77 + ], + [ + 165.63, + -21.28 + ], + [ + 166.94, + -22.09 + ], + [ + 167.01, + -22.32 + ], + [ + 166.45, + -22.31 + ], + [ + 166.09, + -21.94 + ] + ] + ], + [ + [ + [ + 168.11, + -21.44 + ], + [ + 168.12, + -21.63 + ], + [ + 167.85, + -21.6 + ], + [ + 167.8, + -21.38 + ], + [ + 168.11, + -21.44 + ] + ] + ], + [ + [ + [ + 167.01, + -20.92 + ], + [ + 167.18, + -20.83 + ], + [ + 167.04, + -20.73 + ], + [ + 167.25, + -20.7 + ], + [ + 167.41, + -21.16 + ], + [ + 167.01, + -20.92 + ] + ] + ] + ] + }, + "properties": { + "A3": "FRA" + } + }, + { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + 100.08, + 20.35 + ], + [ + 100.09, + 20.34 + ], + [ + 100.1, + 20.31 + ], + [ + 100.1, + 20.3 + ], + [ + 100.09, + 20.29 + ], + [ + 100.09, + 20.28 + ], + [ + 100.1, + 20.26 + ], + [ + 100.11, + 20.25 + ], + [ + 100.12, + 20.25 + ], + [ + 100.14, + 20.25 + ], + [ + 100.15, + 20.24 + ], + [ + 100.16, + 20.24 + ], + [ + 100.18, + 20.25 + ], + [ + 100.18, + 20.27 + ], + [ + 100.17, + 20.29 + ], + [ + 100.17, + 20.3 + ], + [ + 100.2, + 20.3 + ], + [ + 100.2, + 20.31 + ], + [ + 100.22, + 20.32 + ], + [ + 100.23, + 20.32 + ], + [ + 100.23, + 20.34 + ], + [ + 100.22, + 20.34 + ], + [ + 100.22, + 20.35 + ], + [ + 100.25, + 20.38 + ], + [ + 100.26, + 20.39 + ], + [ + 100.28, + 20.4 + ], + [ + 100.3, + 20.4 + ], + [ + 100.31, + 20.4 + ], + [ + 100.32, + 20.4 + ], + [ + 100.33, + 20.4 + ], + [ + 100.36, + 20.37 + ], + [ + 100.37, + 20.35 + ], + [ + 100.38, + 20.34 + ], + [ + 100.38, + 20.33 + ], + [ + 100.38, + 20.32 + ], + [ + 100.39, + 20.31 + ], + [ + 100.39, + 20.3 + ], + [ + 100.4, + 20.29 + ], + [ + 100.41, + 20.28 + ], + [ + 100.41, + 20.27 + ], + [ + 100.41, + 20.26 + ], + [ + 100.43, + 20.24 + ], + [ + 100.44, + 20.24 + ], + [ + 100.45, + 20.23 + ], + [ + 100.46, + 20.22 + ], + [ + 100.45, + 20.21 + ], + [ + 100.47, + 20.2 + ], + [ + 100.48, + 20.18 + ], + [ + 100.49, + 20.18 + ], + [ + 100.49, + 20.17 + ], + [ + 100.52, + 20.14 + ], + [ + 100.53, + 20.15 + ], + [ + 100.55, + 20.17 + ], + [ + 100.56, + 20.17 + ], + [ + 100.57, + 20.17 + ], + [ + 100.57, + 20.14 + ], + [ + 100.4, + 19.75 + ], + [ + 100.49, + 19.54 + ], + [ + 101.29, + 19.57 + ], + [ + 101.19, + 19.4 + ], + [ + 101.36, + 19.05 + ], + [ + 101.05, + 18.44 + ], + [ + 101.18, + 18.07 + ], + [ + 100.98, + 17.76 + ], + [ + 101.1, + 17.5 + ], + [ + 101.12, + 17.48 + ], + [ + 101.11, + 17.48 + ], + [ + 101.12, + 17.48 + ], + [ + 101.14, + 17.47 + ], + [ + 101.14, + 17.48 + ], + [ + 101.23, + 17.54 + ], + [ + 101.25, + 17.58 + ], + [ + 101.31, + 17.64 + ], + [ + 101.55, + 17.81 + ], + [ + 101.56, + 17.83 + ], + [ + 101.56, + 17.84 + ], + [ + 101.57, + 17.87 + ], + [ + 101.58, + 17.87 + ], + [ + 101.59, + 17.85 + ], + [ + 101.61, + 17.87 + ], + [ + 101.61, + 17.88 + ], + [ + 101.64, + 17.9 + ], + [ + 101.65, + 17.9 + ], + [ + 101.68, + 17.91 + ], + [ + 101.7, + 17.91 + ], + [ + 101.72, + 17.91 + ], + [ + 101.73, + 17.92 + ], + [ + 101.73, + 17.93 + ], + [ + 101.73, + 17.94 + ], + [ + 101.73, + 17.95 + ], + [ + 101.74, + 17.98 + ], + [ + 101.75, + 18.01 + ], + [ + 101.76, + 18.04 + ], + [ + 101.77, + 18.05 + ], + [ + 101.83, + 18.06 + ], + [ + 101.85, + 18.05 + ], + [ + 101.87, + 18.03 + ], + [ + 101.91, + 18.03 + ], + [ + 101.92, + 18.05 + ], + [ + 101.93, + 18.06 + ], + [ + 101.94, + 18.08 + ], + [ + 101.95, + 18.09 + ], + [ + 101.96, + 18.11 + ], + [ + 101.98, + 18.11 + ], + [ + 102, + 18.12 + ], + [ + 102.01, + 18.14 + ], + [ + 102.03, + 18.15 + ], + [ + 102.04, + 18.18 + ], + [ + 102.04, + 18.19 + ], + [ + 102.04, + 18.2 + ], + [ + 102.08, + 18.22 + ], + [ + 102.14, + 18.21 + ], + [ + 102.15, + 18.21 + ], + [ + 102.15, + 18.2 + ], + [ + 102.16, + 18.2 + ], + [ + 102.17, + 18.18 + ], + [ + 102.18, + 18.17 + ], + [ + 102.18, + 18.16 + ], + [ + 102.19, + 18.14 + ], + [ + 102.21, + 18.13 + ], + [ + 102.22, + 18.13 + ], + [ + 102.23, + 18.12 + ], + [ + 102.24, + 18.11 + ], + [ + 102.24, + 18.1 + ], + [ + 102.25, + 18.09 + ], + [ + 102.26, + 18.08 + ], + [ + 102.27, + 18.07 + ], + [ + 102.29, + 18.06 + ], + [ + 102.33, + 18.05 + ], + [ + 102.36, + 18.04 + ], + [ + 102.4, + 18 + ], + [ + 102.41, + 17.99 + ], + [ + 102.43, + 17.98 + ], + [ + 102.44, + 17.98 + ], + [ + 102.45, + 17.98 + ], + [ + 102.47, + 17.97 + ], + [ + 102.55, + 17.97 + ], + [ + 102.57, + 17.97 + ], + [ + 102.58, + 17.96 + ], + [ + 102.61, + 17.95 + ], + [ + 102.61, + 17.94 + ], + [ + 102.61, + 17.92 + ], + [ + 102.61, + 17.9 + ], + [ + 102.61, + 17.89 + ], + [ + 102.59, + 17.85 + ], + [ + 102.59, + 17.84 + ], + [ + 102.6, + 17.83 + ], + [ + 102.64, + 17.83 + ], + [ + 102.66, + 17.82 + ], + [ + 102.67, + 17.81 + ], + [ + 102.68, + 17.8 + ], + [ + 102.69, + 17.8 + ], + [ + 102.69, + 17.81 + ], + [ + 102.69, + 17.83 + ], + [ + 102.68, + 17.85 + ], + [ + 102.69, + 17.87 + ], + [ + 102.7, + 17.88 + ], + [ + 102.73, + 17.88 + ], + [ + 102.74, + 17.89 + ], + [ + 102.76, + 17.89 + ], + [ + 102.77, + 17.91 + ], + [ + 102.78, + 17.92 + ], + [ + 102.78, + 17.93 + ], + [ + 102.79, + 17.94 + ], + [ + 102.81, + 17.94 + ], + [ + 102.82, + 17.94 + ], + [ + 102.83, + 17.95 + ], + [ + 102.84, + 17.96 + ], + [ + 102.87, + 17.98 + ], + [ + 102.89, + 17.98 + ], + [ + 102.9, + 17.98 + ], + [ + 102.91, + 17.98 + ], + [ + 102.92, + 17.99 + ], + [ + 102.93, + 18 + ], + [ + 102.94, + 18 + ], + [ + 102.95, + 18 + ], + [ + 102.98, + 18 + ], + [ + 102.99, + 17.99 + ], + [ + 103.01, + 17.98 + ], + [ + 103.01, + 17.97 + ], + [ + 103.03, + 17.97 + ], + [ + 103.04, + 17.98 + ], + [ + 103.05, + 17.99 + ], + [ + 103.06, + 18.01 + ], + [ + 103.08, + 18.03 + ], + [ + 103.08, + 18.05 + ], + [ + 103.08, + 18.06 + ], + [ + 103.07, + 18.07 + ], + [ + 103.08, + 18.1 + ], + [ + 103.08, + 18.12 + ], + [ + 103.09, + 18.13 + ], + [ + 103.1, + 18.14 + ], + [ + 103.13, + 18.16 + ], + [ + 103.15, + 18.17 + ], + [ + 103.15, + 18.19 + ], + [ + 103.16, + 18.2 + ], + [ + 103.16, + 18.24 + ], + [ + 103.18, + 18.26 + ], + [ + 103.19, + 18.27 + ], + [ + 103.22, + 18.28 + ], + [ + 103.25, + 18.29 + ], + [ + 103.29, + 18.3 + ], + [ + 103.3, + 18.31 + ], + [ + 103.29, + 18.32 + ], + [ + 103.28, + 18.33 + ], + [ + 103.25, + 18.34 + ], + [ + 103.24, + 18.35 + ], + [ + 103.24, + 18.36 + ], + [ + 103.26, + 18.38 + ], + [ + 103.28, + 18.4 + ], + [ + 103.29, + 18.42 + ], + [ + 103.31, + 18.43 + ], + [ + 103.37, + 18.44 + ], + [ + 103.38, + 18.44 + ], + [ + 103.39, + 18.44 + ], + [ + 103.42, + 18.45 + ], + [ + 103.44, + 18.44 + ], + [ + 103.45, + 18.43 + ], + [ + 103.48, + 18.42 + ], + [ + 103.49, + 18.42 + ], + [ + 103.53, + 18.42 + ], + [ + 103.55, + 18.42 + ], + [ + 103.57, + 18.41 + ], + [ + 103.58, + 18.4 + ], + [ + 103.59, + 18.4 + ], + [ + 103.6, + 18.41 + ], + [ + 103.63, + 18.39 + ], + [ + 103.65, + 18.38 + ], + [ + 103.66, + 18.38 + ], + [ + 103.67, + 18.37 + ], + [ + 103.68, + 18.36 + ], + [ + 103.69, + 18.35 + ], + [ + 103.7, + 18.34 + ], + [ + 103.72, + 18.34 + ], + [ + 103.73, + 18.34 + ], + [ + 103.74, + 18.34 + ], + [ + 103.8, + 18.34 + ], + [ + 103.83, + 18.33 + ], + [ + 103.84, + 18.31 + ], + [ + 103.85, + 18.3 + ], + [ + 103.97, + 18.34 + ], + [ + 103.99, + 18.31 + ], + [ + 104.01, + 18.29 + ], + [ + 104.03, + 18.26 + ], + [ + 104.06, + 18.21 + ], + [ + 104.07, + 18.19 + ], + [ + 104.09, + 18.16 + ], + [ + 104.09, + 18.15 + ], + [ + 104.1, + 18.12 + ], + [ + 104.11, + 18.1 + ], + [ + 104.14, + 18.07 + ], + [ + 104.15, + 18.06 + ], + [ + 104.17, + 18.05 + ], + [ + 104.22, + 17.98 + ], + [ + 104.24, + 17.94 + ], + [ + 104.25, + 17.92 + ], + [ + 104.25, + 17.91 + ], + [ + 104.26, + 17.89 + ], + [ + 104.27, + 17.87 + ], + [ + 104.32, + 17.84 + ], + [ + 104.33, + 17.84 + ], + [ + 104.35, + 17.82 + ], + [ + 104.36, + 17.81 + ], + [ + 104.37, + 17.8 + ], + [ + 104.38, + 17.78 + ], + [ + 104.39, + 17.76 + ], + [ + 104.4, + 17.74 + ], + [ + 104.42, + 17.72 + ], + [ + 104.43, + 17.71 + ], + [ + 104.44, + 17.7 + ], + [ + 104.45, + 17.69 + ], + [ + 104.46, + 17.67 + ], + [ + 104.47, + 17.66 + ], + [ + 104.49, + 17.64 + ], + [ + 104.5, + 17.63 + ], + [ + 104.53, + 17.62 + ], + [ + 104.55, + 17.61 + ], + [ + 104.58, + 17.59 + ], + [ + 104.59, + 17.59 + ], + [ + 104.6, + 17.58 + ], + [ + 104.61, + 17.58 + ], + [ + 104.62, + 17.57 + ], + [ + 104.63, + 17.57 + ], + [ + 104.64, + 17.56 + ], + [ + 104.66, + 17.55 + ], + [ + 104.69, + 17.53 + ], + [ + 104.71, + 17.52 + ], + [ + 104.72, + 17.51 + ], + [ + 104.73, + 17.49 + ], + [ + 104.74, + 17.47 + ], + [ + 104.75, + 17.46 + ], + [ + 104.76, + 17.44 + ], + [ + 104.78, + 17.43 + ], + [ + 104.79, + 17.41 + ], + [ + 104.8, + 17.39 + ], + [ + 104.8, + 17.17 + ], + [ + 104.8, + 17.15 + ], + [ + 104.79, + 17.13 + ], + [ + 104.78, + 17.11 + ], + [ + 104.76, + 17.07 + ], + [ + 104.75, + 17.06 + ], + [ + 104.74, + 17.04 + ], + [ + 104.74, + 17.03 + ], + [ + 104.73, + 16.97 + ], + [ + 104.75, + 16.87 + ], + [ + 104.76, + 16.86 + ], + [ + 104.74, + 16.81 + ], + [ + 104.74, + 16.8 + ], + [ + 104.75, + 16.75 + ], + [ + 104.76, + 16.74 + ], + [ + 104.75, + 16.67 + ], + [ + 104.75, + 16.66 + ], + [ + 104.74, + 16.64 + ], + [ + 104.74, + 16.62 + ], + [ + 104.74, + 16.61 + ], + [ + 104.75, + 16.52 + ], + [ + 104.76, + 16.51 + ], + [ + 104.77, + 16.5 + ], + [ + 104.78, + 16.49 + ], + [ + 104.8, + 16.48 + ], + [ + 104.81, + 16.47 + ], + [ + 104.85, + 16.44 + ], + [ + 104.87, + 16.39 + ], + [ + 104.88, + 16.37 + ], + [ + 104.89, + 16.35 + ], + [ + 104.9, + 16.34 + ], + [ + 104.91, + 16.34 + ], + [ + 104.92, + 16.34 + ], + [ + 104.93, + 16.33 + ], + [ + 104.94, + 16.31 + ], + [ + 104.96, + 16.29 + ], + [ + 104.99, + 16.27 + ], + [ + 105, + 16.26 + ], + [ + 105.01, + 16.25 + ], + [ + 105.02, + 16.24 + ], + [ + 105.01, + 16.22 + ], + [ + 105.01, + 16.21 + ], + [ + 105.02, + 16.18 + ], + [ + 105.02, + 16.17 + ], + [ + 105.03, + 16.14 + ], + [ + 105.04, + 16.13 + ], + [ + 105.04, + 16.12 + ], + [ + 105.05, + 16.1 + ], + [ + 105.07, + 16.1 + ], + [ + 105.07, + 16.09 + ], + [ + 105.08, + 16.09 + ], + [ + 105.09, + 16.09 + ], + [ + 105.11, + 16.09 + ], + [ + 105.12, + 16.08 + ], + [ + 105.13, + 16.08 + ], + [ + 105.14, + 16.07 + ], + [ + 105.17, + 16.07 + ], + [ + 105.2, + 16.05 + ], + [ + 105.29, + 16.04 + ], + [ + 105.3, + 16.04 + ], + [ + 105.33, + 16.03 + ], + [ + 105.38, + 16.02 + ], + [ + 105.39, + 16.02 + ], + [ + 105.4, + 16.02 + ], + [ + 105.42, + 16.01 + ], + [ + 105.41, + 15.99 + ], + [ + 105.4, + 15.99 + ], + [ + 105.38, + 15.98 + ], + [ + 105.37, + 15.98 + ], + [ + 105.36, + 15.96 + ], + [ + 105.36, + 15.95 + ], + [ + 105.34, + 15.93 + ], + [ + 105.35, + 15.91 + ], + [ + 105.36, + 15.89 + ], + [ + 105.36, + 15.88 + ], + [ + 105.37, + 15.86 + ], + [ + 105.38, + 15.85 + ], + [ + 105.39, + 15.82 + ], + [ + 105.39, + 15.81 + ], + [ + 105.4, + 15.79 + ], + [ + 105.41, + 15.79 + ], + [ + 105.42, + 15.77 + ], + [ + 105.44, + 15.75 + ], + [ + 105.46, + 15.75 + ], + [ + 105.47, + 15.75 + ], + [ + 105.49, + 15.76 + ], + [ + 105.5, + 15.77 + ], + [ + 105.53, + 15.75 + ], + [ + 105.55, + 15.75 + ], + [ + 105.56, + 15.75 + ], + [ + 105.57, + 15.73 + ], + [ + 105.58, + 15.73 + ], + [ + 105.6, + 15.72 + ], + [ + 105.61, + 15.7 + ], + [ + 105.63, + 15.67 + ], + [ + 105.64, + 15.65 + ], + [ + 105.64, + 15.64 + ], + [ + 105.63, + 15.62 + ], + [ + 105.63, + 15.61 + ], + [ + 105.63, + 15.6 + ], + [ + 105.63, + 15.59 + ], + [ + 105.63, + 15.58 + ], + [ + 105.61, + 15.55 + ], + [ + 105.6, + 15.53 + ], + [ + 105.59, + 15.5 + ], + [ + 105.6, + 15.5 + ], + [ + 105.6, + 15.48 + ], + [ + 105.6, + 15.46 + ], + [ + 105.6, + 15.45 + ], + [ + 105.59, + 15.43 + ], + [ + 105.59, + 15.42 + ], + [ + 105.56, + 15.4 + ], + [ + 105.55, + 15.4 + ], + [ + 105.53, + 15.39 + ], + [ + 105.5, + 15.39 + ], + [ + 105.49, + 15.38 + ], + [ + 105.48, + 15.37 + ], + [ + 105.47, + 15.37 + ], + [ + 105.47, + 15.35 + ], + [ + 105.47, + 15.34 + ], + [ + 105.48, + 15.33 + ], + [ + 105.52, + 15.32 + ], + [ + 105.55, + 15.32 + ], + [ + 105.57, + 15.32 + ], + [ + 105.53, + 14.55 + ], + [ + 105.21, + 14.34 + ], + [ + 105.08, + 14.21 + ], + [ + 104.81, + 14.44 + ], + [ + 103.17, + 14.33 + ], + [ + 102.94, + 14.2 + ], + [ + 102.62, + 13.61 + ], + [ + 102.34, + 13.56 + ], + [ + 102.51, + 12.68 + ], + [ + 102.79, + 12.42 + ], + [ + 102.7, + 12.17 + ], + [ + 102.91, + 11.65 + ], + [ + 102.64, + 12.18 + ], + [ + 102.58, + 12.04 + ], + [ + 102.29, + 12.19 + ], + [ + 102.33, + 12.34 + ], + [ + 102.06, + 12.55 + ], + [ + 101.76, + 12.71 + ], + [ + 101.42, + 12.58 + ], + [ + 101.26, + 12.66 + ], + [ + 100.84, + 12.68 + ], + [ + 100.98, + 13.48 + ], + [ + 100.58, + 13.56 + ], + [ + 99.99, + 13.37 + ], + [ + 100.11, + 13.06 + ], + [ + 99.96, + 12.73 + ], + [ + 100.02, + 12.19 + ], + [ + 99.56, + 11.34 + ], + [ + 99.29, + 10.37 + ], + [ + 99.15, + 10.34 + ], + [ + 99.25, + 10.24 + ], + [ + 99.15, + 9.74 + ], + [ + 99.31, + 9.39 + ], + [ + 99.25, + 9.23 + ], + [ + 99.84, + 9.29 + ], + [ + 99.96, + 8.62 + ], + [ + 100.09, + 8.41 + ], + [ + 100.18, + 8.39 + ], + [ + 100.11, + 8.52 + ], + [ + 100.22, + 8.44 + ], + [ + 100.55, + 7.14 + ], + [ + 100.6, + 7.22 + ], + [ + 101.07, + 6.84 + ], + [ + 101.33, + 6.87 + ], + [ + 101.28, + 6.95 + ], + [ + 101.56, + 6.85 + ], + [ + 102.09, + 6.24 + ], + [ + 102.08, + 6.23 + ], + [ + 102.08, + 6.21 + ], + [ + 102.08, + 6.2 + ], + [ + 102.08, + 6.17 + ], + [ + 102.08, + 6.16 + ], + [ + 102.08, + 6.14 + ], + [ + 101.97, + 6.01 + ], + [ + 101.95, + 5.99 + ], + [ + 101.93, + 5.95 + ], + [ + 101.93, + 5.94 + ], + [ + 101.82, + 5.73 + ], + [ + 101.58, + 5.93 + ], + [ + 101.14, + 5.61 + ], + [ + 100.98, + 5.81 + ], + [ + 101.11, + 6.25 + ], + [ + 100.85, + 6.23 + ], + [ + 100.74, + 6.51 + ], + [ + 100.42, + 6.52 + ], + [ + 100.21, + 6.73 + ], + [ + 100.12, + 6.42 + ], + [ + 99.68, + 6.9 + ], + [ + 99.74, + 7.13 + ], + [ + 99.59, + 7.15 + ], + [ + 99.51, + 7.37 + ], + [ + 99.39, + 7.31 + ], + [ + 99.14, + 7.78 + ], + [ + 99.04, + 7.7 + ], + [ + 99.08, + 7.91 + ], + [ + 98.92, + 8.06 + ], + [ + 98.77, + 8.02 + ], + [ + 98.68, + 8.39 + ], + [ + 98.47, + 8.36 + ], + [ + 98.46, + 8.34 + ], + [ + 98.39, + 8.13 + ], + [ + 98.28, + 8.2 + ], + [ + 98.22, + 8.74 + ], + [ + 98.32, + 8.97 + ], + [ + 98.39, + 8.91 + ], + [ + 98.32, + 9.2 + ], + [ + 98.53, + 9.56 + ], + [ + 98.52, + 9.85 + ], + [ + 98.7, + 10.16 + ], + [ + 98.66, + 10.17 + ], + [ + 98.7, + 10.16 + ], + [ + 98.71, + 10.25 + ], + [ + 98.72, + 10.26 + ], + [ + 98.74, + 10.31 + ], + [ + 98.74, + 10.32 + ], + [ + 98.75, + 10.38 + ], + [ + 98.77, + 10.42 + ], + [ + 98.78, + 10.44 + ], + [ + 98.8, + 10.45 + ], + [ + 98.81, + 10.49 + ], + [ + 98.78, + 10.68 + ], + [ + 99.23, + 11.11 + ], + [ + 99.66, + 11.82 + ], + [ + 99.47, + 12.13 + ], + [ + 99.44, + 12.58 + ], + [ + 99.1, + 13.07 + ], + [ + 99.21, + 13.26 + ], + [ + 99.11, + 13.89 + ], + [ + 98.25, + 14.83 + ], + [ + 98.2, + 15.23 + ], + [ + 98.4, + 15.32 + ], + [ + 98.39, + 15.33 + ], + [ + 98.58, + 15.38 + ], + [ + 98.57, + 16.06 + ], + [ + 98.85, + 16.13 + ], + [ + 98.93, + 16.33 + ], + [ + 98.83, + 16.42 + ], + [ + 98.68, + 16.27 + ], + [ + 98.5, + 16.7 + ], + [ + 98.48, + 16.72 + ], + [ + 98.48, + 16.76 + ], + [ + 98.5, + 16.79 + ], + [ + 98.53, + 16.8 + ], + [ + 98.53, + 16.81 + ], + [ + 98.02, + 17.47 + ], + [ + 98.02, + 17.48 + ], + [ + 98, + 17.5 + ], + [ + 97.69, + 17.83 + ], + [ + 97.69, + 17.84 + ], + [ + 97.67, + 17.87 + ], + [ + 97.67, + 17.88 + ], + [ + 97.69, + 17.91 + ], + [ + 97.69, + 17.92 + ], + [ + 97.73, + 17.96 + ], + [ + 97.74, + 17.96 + ], + [ + 97.74, + 17.98 + ], + [ + 97.71, + 18.04 + ], + [ + 97.69, + 18.07 + ], + [ + 97.69, + 18.08 + ], + [ + 97.69, + 18.09 + ], + [ + 97.34, + 18.58 + ], + [ + 97.77, + 18.58 + ], + [ + 97.67, + 18.94 + ], + [ + 97.84, + 19.09 + ], + [ + 97.79, + 19.4 + ], + [ + 98.03, + 19.81 + ], + [ + 98.25, + 19.68 + ], + [ + 98.99, + 19.74 + ], + [ + 99.08, + 20.1 + ], + [ + 99.54, + 20.15 + ], + [ + 99.46, + 20.39 + ], + [ + 100.06, + 20.39 + ], + [ + 100.08, + 20.37 + ], + [ + 100.08, + 20.36 + ], + [ + 100.08, + 20.35 + ] + ], + [ + [ + 104.06, + 15.45 + ], + [ + 103.99, + 15.37 + ], + [ + 104.11, + 15.35 + ], + [ + 104.06, + 15.45 + ] + ], + [ + [ + 103.45, + 16.59 + ], + [ + 103.49, + 16.74 + ], + [ + 103.37, + 16.68 + ], + [ + 103.45, + 16.59 + ] + ], + [ + [ + 102.59, + 16.85 + ], + [ + 102.41, + 16.8 + ], + [ + 102.57, + 16.55 + ], + [ + 102.59, + 16.85 + ] + ], + [ + [ + 99.03, + 14.86 + ], + [ + 99.06, + 14.4 + ], + [ + 99.16, + 14.48 + ], + [ + 99.03, + 14.86 + ] + ], + [ + [ + 98.53, + 14.77 + ], + [ + 98.6, + 14.66 + ], + [ + 98.63, + 14.99 + ], + [ + 98.48, + 15.17 + ], + [ + 98.53, + 14.85 + ], + [ + 98.42, + 14.82 + ], + [ + 98.53, + 14.77 + ] + ], + [ + [ + 98.75, + 9.02 + ], + [ + 98.61, + 9.17 + ], + [ + 98.54, + 9.1 + ], + [ + 98.75, + 9.02 + ] + ], + [ + [ + 100.33, + 7.41 + ], + [ + 100.44, + 7.36 + ], + [ + 100.38, + 7.58 + ], + [ + 100.25, + 7.58 + ], + [ + 100.28, + 7.81 + ], + [ + 100.15, + 7.82 + ], + [ + 100.17, + 7.54 + ], + [ + 100.33, + 7.41 + ] + ] + ], + [ + [ + [ + 98.33, + 9.08 + ], + [ + 98.25, + 9.03 + ], + [ + 98.26, + 9.17 + ], + [ + 98.33, + 9.08 + ] + ] + ], + [ + [ + [ + 100.04, + 9.45 + ], + [ + 99.93, + 9.42 + ], + [ + 99.92, + 9.58 + ], + [ + 100.08, + 9.59 + ], + [ + 100.04, + 9.45 + ] + ] + ], + [ + [ + [ + 98.4, + 7.97 + ], + [ + 98.3, + 7.76 + ], + [ + 98.29, + 8.2 + ], + [ + 98.39, + 8.09 + ], + [ + 98.44, + 8.09 + ], + [ + 98.4, + 7.97 + ] + ] + ], + [ + [ + [ + 99.09, + 7.61 + ], + [ + 99.1, + 7.47 + ], + [ + 99.04, + 7.68 + ], + [ + 99.09, + 7.61 + ] + ] + ] + ] + }, + "properties": { + "A3": "THA" + } + }, + { + "type": "Feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + 15.49, + 7.53 + ], + [ + 15.97, + 7.48 + ], + [ + 16.58, + 7.88 + ], + [ + 16.59, + 7.88 + ], + [ + 16.84, + 7.53 + ], + [ + 17.73, + 7.98 + ], + [ + 18.62, + 8.05 + ], + [ + 19.12, + 8.67 + ], + [ + 18.86, + 8.85 + ], + [ + 18.96, + 8.96 + ], + [ + 20.44, + 9.14 + ], + [ + 21.72, + 10.29 + ], + [ + 21.72, + 10.64 + ], + [ + 22.46, + 11 + ], + [ + 22.81, + 10.93 + ], + [ + 22.82, + 10.93 + ], + [ + 22.85, + 10.93 + ], + [ + 22.86, + 10.92 + ], + [ + 22.88, + 10.92 + ], + [ + 23.31, + 10.46 + ], + [ + 23.7, + 9.67 + ], + [ + 23.65, + 9.28 + ], + [ + 23.45, + 9.03 + ], + [ + 23.58, + 8.99 + ], + [ + 23.51, + 8.72 + ], + [ + 24.26, + 8.69 + ], + [ + 24.17, + 8.33 + ], + [ + 24.86, + 8.17 + ], + [ + 25.22, + 7.87 + ], + [ + 25.21, + 7.5 + ], + [ + 26.43, + 6.65 + ], + [ + 26.33, + 6.36 + ], + [ + 26.58, + 6.2 + ], + [ + 26.51, + 6.07 + ], + [ + 27.21, + 5.72 + ], + [ + 27.44, + 5.02 + ], + [ + 27.13, + 5.21 + ], + [ + 26.87, + 5.04 + ], + [ + 26.5, + 5.05 + ], + [ + 26.16, + 5.26 + ], + [ + 25.9, + 5.17 + ], + [ + 25.67, + 5.31 + ], + [ + 25.66, + 5.31 + ], + [ + 25.4, + 5.33 + ], + [ + 25.36, + 5.28 + ], + [ + 25.35, + 5.28 + ], + [ + 25.34, + 5.27 + ], + [ + 25.34, + 5.26 + ], + [ + 25.33, + 5.24 + ], + [ + 25.31, + 5.18 + ], + [ + 25.33, + 5.09 + ], + [ + 25.27, + 5.03 + ], + [ + 25.27, + 5.02 + ], + [ + 25.18, + 5 + ], + [ + 25.09, + 4.98 + ], + [ + 24.72, + 4.89 + ], + [ + 24.38, + 5.11 + ], + [ + 24.3, + 5 + ], + [ + 24.27, + 4.96 + ], + [ + 24.26, + 4.93 + ], + [ + 24.25, + 4.93 + ], + [ + 24.24, + 4.96 + ], + [ + 24.22, + 4.95 + ], + [ + 24.21, + 4.95 + ], + [ + 24.19, + 4.94 + ], + [ + 24.17, + 4.92 + ], + [ + 24.17, + 4.91 + ], + [ + 24.15, + 4.89 + ], + [ + 24.14, + 4.89 + ], + [ + 24.11, + 4.92 + ], + [ + 24.1, + 4.91 + ], + [ + 24.07, + 4.89 + ], + [ + 24.05, + 4.89 + ], + [ + 24.04, + 4.87 + ], + [ + 24.02, + 4.86 + ], + [ + 24, + 4.87 + ], + [ + 23.98, + 4.88 + ], + [ + 23.97, + 4.87 + ], + [ + 23.96, + 4.85 + ], + [ + 23.96, + 4.84 + ], + [ + 23.96, + 4.81 + ], + [ + 23.95, + 4.81 + ], + [ + 23.91, + 4.83 + ], + [ + 23.89, + 4.83 + ], + [ + 23.87, + 4.82 + ], + [ + 23.86, + 4.81 + ], + [ + 23.84, + 4.83 + ], + [ + 23.81, + 4.82 + ], + [ + 23.78, + 4.79 + ], + [ + 23.76, + 4.78 + ], + [ + 23.74, + 4.79 + ], + [ + 23.71, + 4.79 + ], + [ + 23.7, + 4.78 + ], + [ + 23.67, + 4.76 + ], + [ + 23.66, + 4.77 + ], + [ + 23.63, + 4.76 + ], + [ + 23.62, + 4.76 + ], + [ + 23.59, + 4.76 + ], + [ + 23.56, + 4.72 + ], + [ + 23.55, + 4.72 + ], + [ + 23.53, + 4.7 + ], + [ + 23.5, + 4.68 + ], + [ + 23.49, + 4.68 + ], + [ + 23.48, + 4.68 + ], + [ + 23.45, + 4.67 + ], + [ + 23.44, + 4.66 + ], + [ + 23.43, + 4.64 + ], + [ + 23.43, + 4.63 + ], + [ + 23.43, + 4.62 + ], + [ + 23.43, + 4.6 + ], + [ + 23.41, + 4.59 + ], + [ + 23.4, + 4.59 + ], + [ + 23.39, + 4.59 + ], + [ + 23.37, + 4.59 + ], + [ + 23.35, + 4.61 + ], + [ + 23.33, + 4.61 + ], + [ + 23.3, + 4.63 + ], + [ + 23.27, + 4.64 + ], + [ + 23.27, + 4.65 + ], + [ + 23.27, + 4.66 + ], + [ + 23.25, + 4.68 + ], + [ + 23.24, + 4.67 + ], + [ + 23.23, + 4.68 + ], + [ + 23.22, + 4.69 + ], + [ + 23.2, + 4.72 + ], + [ + 23.17, + 4.74 + ], + [ + 23.14, + 4.73 + ], + [ + 23.12, + 4.72 + ], + [ + 23.11, + 4.71 + ], + [ + 23.09, + 4.72 + ], + [ + 23.06, + 4.74 + ], + [ + 23.04, + 4.75 + ], + [ + 23.01, + 4.76 + ], + [ + 23, + 4.77 + ], + [ + 23, + 4.78 + ], + [ + 23, + 4.79 + ], + [ + 22.99, + 4.81 + ], + [ + 22.98, + 4.83 + ], + [ + 22.9, + 4.81 + ], + [ + 22.89, + 4.8 + ], + [ + 22.89, + 4.77 + ], + [ + 22.9, + 4.75 + ], + [ + 22.87, + 4.74 + ], + [ + 22.87, + 4.73 + ], + [ + 22.87, + 4.72 + ], + [ + 22.86, + 4.72 + ], + [ + 22.85, + 4.7 + ], + [ + 22.84, + 4.7 + ], + [ + 22.83, + 4.72 + ], + [ + 22.82, + 4.72 + ], + [ + 22.79, + 4.72 + ], + [ + 22.78, + 4.71 + ], + [ + 22.77, + 4.68 + ], + [ + 22.76, + 4.67 + ], + [ + 22.74, + 4.63 + ], + [ + 22.73, + 4.63 + ], + [ + 22.73, + 4.59 + ], + [ + 22.73, + 4.57 + ], + [ + 22.73, + 4.56 + ], + [ + 22.71, + 4.54 + ], + [ + 22.7, + 4.52 + ], + [ + 22.66, + 4.48 + ], + [ + 22.59, + 4.48 + ], + [ + 22.59, + 4.47 + ], + [ + 22.6, + 4.44 + ], + [ + 22.59, + 4.42 + ], + [ + 22.58, + 4.39 + ], + [ + 22.59, + 4.39 + ], + [ + 22.61, + 4.38 + ], + [ + 22.61, + 4.37 + ], + [ + 22.6, + 4.36 + ], + [ + 22.58, + 4.34 + ], + [ + 22.57, + 4.34 + ], + [ + 22.57, + 4.33 + ], + [ + 22.56, + 4.33 + ], + [ + 22.56, + 4.31 + ], + [ + 22.55, + 4.3 + ], + [ + 22.54, + 4.29 + ], + [ + 22.54, + 4.28 + ], + [ + 22.54, + 4.27 + ], + [ + 22.55, + 4.24 + ], + [ + 22.55, + 4.22 + ], + [ + 22.54, + 4.21 + ], + [ + 22.52, + 4.2 + ], + [ + 22.51, + 4.19 + ], + [ + 22.51, + 4.18 + ], + [ + 22.5, + 4.17 + ], + [ + 22.49, + 4.16 + ], + [ + 22.46, + 4.15 + ], + [ + 22.44, + 4.13 + ], + [ + 22.43, + 4.13 + ], + [ + 22.4, + 4.13 + ], + [ + 22.04, + 4.22 + ], + [ + 22.02, + 4.23 + ], + [ + 21.98, + 4.24 + ], + [ + 21.88, + 4.25 + ], + [ + 22, + 4.26 + ], + [ + 21.83, + 4.27 + ], + [ + 21.77, + 4.29 + ], + [ + 21.74, + 4.31 + ], + [ + 21.68, + 4.3 + ], + [ + 21.6, + 4.28 + ], + [ + 21.58, + 4.27 + ], + [ + 21.56, + 4.26 + ], + [ + 21.56, + 4.25 + ], + [ + 21.48, + 4.27 + ], + [ + 21.45, + 4.29 + ], + [ + 21.44, + 4.29 + ], + [ + 21.41, + 4.29 + ], + [ + 21.4, + 4.28 + ], + [ + 21.39, + 4.28 + ], + [ + 21.3, + 4.34 + ], + [ + 21.28, + 4.34 + ], + [ + 21.25, + 4.34 + ], + [ + 21.24, + 4.32 + ], + [ + 21.23, + 4.3 + ], + [ + 21.19, + 4.31 + ], + [ + 21.16, + 4.31 + ], + [ + 21.16, + 4.32 + ], + [ + 21.15, + 4.33 + ], + [ + 21.13, + 4.33 + ], + [ + 21.1, + 4.36 + ], + [ + 21.1, + 4.37 + ], + [ + 21.09, + 4.38 + ], + [ + 21.09, + 4.39 + ], + [ + 21.06, + 4.41 + ], + [ + 21.05, + 4.41 + ], + [ + 21.04, + 4.41 + ], + [ + 21.01, + 4.42 + ], + [ + 20.99, + 4.43 + ], + [ + 20.97, + 4.44 + ], + [ + 20.94, + 4.44 + ], + [ + 20.89, + 4.45 + ], + [ + 20.88, + 4.45 + ], + [ + 20.87, + 4.45 + ], + [ + 20.81, + 4.43 + ], + [ + 20.8, + 4.42 + ], + [ + 20.79, + 4.42 + ], + [ + 20.78, + 4.43 + ], + [ + 20.75, + 4.43 + ], + [ + 20.74, + 4.43 + ], + [ + 20.57, + 4.42 + ], + [ + 20.55, + 4.43 + ], + [ + 20.54, + 4.44 + ], + [ + 20.53, + 4.45 + ], + [ + 20.49, + 4.5 + ], + [ + 20.47, + 4.52 + ], + [ + 20.46, + 4.54 + ], + [ + 20.45, + 4.57 + ], + [ + 20.45, + 4.58 + ], + [ + 20.46, + 4.62 + ], + [ + 20.45, + 4.64 + ], + [ + 20.43, + 4.65 + ], + [ + 20.41, + 4.66 + ], + [ + 20.39, + 4.71 + ], + [ + 20.39, + 4.73 + ], + [ + 20.37, + 4.74 + ], + [ + 20.37, + 4.75 + ], + [ + 20.36, + 4.76 + ], + [ + 20.35, + 4.77 + ], + [ + 20.29, + 4.78 + ], + [ + 20.26, + 4.79 + ], + [ + 20.25, + 4.8 + ], + [ + 20.23, + 4.81 + ], + [ + 20.21, + 4.83 + ], + [ + 20.2, + 4.86 + ], + [ + 20.19, + 4.88 + ], + [ + 20.18, + 4.89 + ], + [ + 20.14, + 4.9 + ], + [ + 20.11, + 4.9 + ], + [ + 20.1, + 4.9 + ], + [ + 20.1, + 4.91 + ], + [ + 20.06, + 4.93 + ], + [ + 20.04, + 4.94 + ], + [ + 20.04, + 4.95 + ], + [ + 20.02, + 4.97 + ], + [ + 19.97, + 5 + ], + [ + 19.96, + 4.98 + ], + [ + 19.95, + 4.98 + ], + [ + 19.91, + 4.99 + ], + [ + 19.9, + 5 + ], + [ + 19.88, + 5.02 + ], + [ + 19.86, + 5.04 + ], + [ + 19.84, + 5.08 + ], + [ + 19.83, + 5.09 + ], + [ + 19.83, + 5.1 + ], + [ + 19.81, + 5.1 + ], + [ + 19.8, + 5.1 + ], + [ + 19.79, + 5.11 + ], + [ + 19.73, + 5.12 + ], + [ + 19.72, + 5.13 + ], + [ + 19.69, + 5.14 + ], + [ + 19.68, + 5.15 + ], + [ + 19.59, + 5.14 + ], + [ + 19.58, + 5.15 + ], + [ + 19.55, + 5.15 + ], + [ + 19.53, + 5.15 + ], + [ + 19.49, + 5.12 + ], + [ + 19.48, + 5.12 + ], + [ + 19.47, + 5.13 + ], + [ + 19.46, + 5.13 + ], + [ + 19.41, + 5.13 + ], + [ + 19.4, + 5.12 + ], + [ + 19.38, + 5.1 + ], + [ + 19.37, + 5.09 + ], + [ + 19.35, + 5.07 + ], + [ + 19.34, + 5.06 + ], + [ + 19.3, + 5.04 + ], + [ + 19.29, + 5.03 + ], + [ + 19.26, + 5.02 + ], + [ + 19.24, + 5.01 + ], + [ + 19.21, + 4.97 + ], + [ + 19.21, + 4.96 + ], + [ + 19.2, + 4.95 + ], + [ + 19.19, + 4.94 + ], + [ + 19.17, + 4.95 + ], + [ + 19.15, + 4.95 + ], + [ + 19.14, + 4.95 + ], + [ + 19.13, + 4.95 + ], + [ + 19.11, + 4.94 + ], + [ + 19.1, + 4.94 + ], + [ + 19.09, + 4.93 + ], + [ + 19.08, + 4.91 + ], + [ + 19.07, + 4.9 + ], + [ + 19.07, + 4.89 + ], + [ + 19.07, + 4.88 + ], + [ + 19.07, + 4.87 + ], + [ + 19.06, + 4.86 + ], + [ + 19.06, + 4.85 + ], + [ + 19.04, + 4.82 + ], + [ + 19.03, + 4.81 + ], + [ + 19.02, + 4.8 + ], + [ + 19.02, + 4.77 + ], + [ + 19.01, + 4.75 + ], + [ + 18.97, + 4.73 + ], + [ + 18.94, + 4.7 + ], + [ + 18.94, + 4.69 + ], + [ + 18.93, + 4.67 + ], + [ + 18.89, + 4.65 + ], + [ + 18.88, + 4.63 + ], + [ + 18.85, + 4.6 + ], + [ + 18.84, + 4.59 + ], + [ + 18.83, + 4.58 + ], + [ + 18.82, + 4.57 + ], + [ + 18.82, + 4.56 + ], + [ + 18.82, + 4.54 + ], + [ + 18.81, + 4.49 + ], + [ + 18.81, + 4.48 + ], + [ + 18.81, + 4.47 + ], + [ + 18.79, + 4.45 + ], + [ + 18.79, + 4.43 + ], + [ + 18.76, + 4.4 + ], + [ + 18.74, + 4.39 + ], + [ + 18.73, + 4.38 + ], + [ + 18.68, + 4.36 + ], + [ + 18.67, + 4.36 + ], + [ + 18.64, + 4.36 + ], + [ + 18.62, + 4.36 + ], + [ + 18.61, + 4.37 + ], + [ + 18.6, + 4.36 + ], + [ + 18.59, + 4.36 + ], + [ + 18.58, + 4.35 + ], + [ + 18.57, + 4.34 + ], + [ + 18.55, + 4.33 + ], + [ + 18.55, + 4.32 + ], + [ + 18.54, + 4.31 + ], + [ + 18.55, + 4.29 + ], + [ + 18.56, + 4.28 + ], + [ + 18.57, + 4.24 + ], + [ + 18.59, + 4.22 + ], + [ + 18.6, + 4.19 + ], + [ + 18.6, + 4.18 + ], + [ + 18.61, + 4.17 + ], + [ + 18.62, + 4.14 + ], + [ + 18.62, + 4.13 + ], + [ + 18.63, + 4.11 + ], + [ + 18.63, + 4.1 + ], + [ + 18.63, + 4.08 + ], + [ + 18.64, + 4.07 + ], + [ + 18.63, + 3.94 + ], + [ + 18.62, + 3.94 + ], + [ + 18.61, + 3.92 + ], + [ + 18.6, + 3.9 + ], + [ + 18.59, + 3.83 + ], + [ + 18.59, + 3.81 + ], + [ + 18.58, + 3.79 + ], + [ + 18.58, + 3.76 + ], + [ + 18.59, + 3.73 + ], + [ + 18.59, + 3.71 + ], + [ + 18.6, + 3.63 + ], + [ + 18.61, + 3.57 + ], + [ + 18.61, + 3.54 + ], + [ + 18.62, + 3.5 + ], + [ + 18.62, + 3.48 + ], + [ + 18.48, + 3.64 + ], + [ + 18.18, + 3.48 + ], + [ + 17.48, + 3.71 + ], + [ + 16.66, + 3.53 + ], + [ + 16.19, + 2.22 + ], + [ + 16.19, + 2.23 + ], + [ + 16.17, + 2.24 + ], + [ + 16.17, + 2.25 + ], + [ + 16.17, + 2.27 + ], + [ + 16.16, + 2.29 + ], + [ + 16.16, + 2.31 + ], + [ + 16.15, + 2.31 + ], + [ + 16.14, + 2.34 + ], + [ + 16.14, + 2.35 + ], + [ + 16.13, + 2.38 + ], + [ + 16.11, + 2.39 + ], + [ + 16.11, + 2.4 + ], + [ + 16.1, + 2.42 + ], + [ + 16.09, + 2.44 + ], + [ + 16.08, + 2.44 + ], + [ + 16.07, + 2.46 + ], + [ + 16.08, + 2.49 + ], + [ + 16.07, + 2.52 + ], + [ + 16.07, + 2.53 + ], + [ + 16.07, + 2.54 + ], + [ + 16.07, + 2.55 + ], + [ + 16.08, + 2.56 + ], + [ + 16.08, + 2.57 + ], + [ + 16.08, + 2.58 + ], + [ + 16.08, + 2.59 + ], + [ + 16.08, + 2.6 + ], + [ + 16.08, + 2.61 + ], + [ + 16.07, + 2.63 + ], + [ + 16.07, + 2.65 + ], + [ + 16.07, + 2.66 + ], + [ + 16.08, + 2.69 + ], + [ + 16.08, + 2.7 + ], + [ + 16.06, + 3.02 + ], + [ + 15.07, + 4.02 + ], + [ + 15.18, + 4.06 + ], + [ + 15.14, + 4.08 + ], + [ + 15.14, + 4.09 + ], + [ + 15.1, + 4.21 + ], + [ + 15.1, + 4.22 + ], + [ + 14.73, + 4.61 + ], + [ + 14.66, + 5.2 + ], + [ + 14.53, + 5.28 + ], + [ + 14.62, + 5.89 + ], + [ + 14.42, + 6.04 + ], + [ + 14.8, + 6.34 + ], + [ + 15.22, + 7.24 + ], + [ + 15.49, + 7.53 + ] + ] + ] + }, + "properties": { + "A3": "CAF" + } + }, + { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + -74.01, + 22.72 + ], + [ + -74.29, + 22.69 + ], + [ + -74.35, + 22.83 + ], + [ + -74.01, + 22.72 + ] + ] + ], + [ + [ + [ + -74.86, + 22.85 + ], + [ + -75.23, + 23.17 + ], + [ + -75.04, + 23.08 + ], + [ + -75.1, + 23.33 + ], + [ + -74.86, + 22.85 + ] + ] + ], + [ + [ + [ + -74.2, + 22.26 + ], + [ + -73.88, + 22.52 + ], + [ + -74.03, + 22.69 + ], + [ + -73.83, + 22.73 + ], + [ + -73.91, + 22.69 + ], + [ + -73.84, + 22.54 + ], + [ + -73.98, + 22.36 + ], + [ + -74.29, + 22.16 + ], + [ + -74.2, + 22.26 + ] + ] + ], + [ + [ + [ + -73.07, + 22.44 + ], + [ + -72.73, + 22.34 + ], + [ + -73.17, + 22.36 + ], + [ + -73.07, + 22.44 + ] + ] + ], + [ + [ + [ + -73.17, + 21.16 + ], + [ + -73.01, + 21.33 + ], + [ + -73.16, + 20.96 + ], + [ + -73.67, + 20.93 + ], + [ + -73.67, + 21.11 + ], + [ + -73.52, + 21.19 + ], + [ + -73.17, + 21.16 + ] + ], + [ + [ + -73.38, + 21.13 + ], + [ + -73.64, + 21 + ], + [ + -73.32, + 21.04 + ], + [ + -73.38, + 21.13 + ] + ] + ], + [ + [ + [ + -75.41, + 24.29 + ], + [ + -75.76, + 24.68 + ], + [ + -75.62, + 24.64 + ], + [ + -75.29, + 24.14 + ], + [ + -75.53, + 24.15 + ], + [ + -75.41, + 24.29 + ] + ] + ], + [ + [ + [ + -76.15, + 24.63 + ], + [ + -76.34, + 24.84 + ], + [ + -76.14, + 24.84 + ], + [ + -76.15, + 24.63 + ] + ] + ], + [ + [ + [ + -77.17, + 26.51 + ], + [ + -77.55, + 26.89 + ], + [ + -77.83, + 26.91 + ], + [ + -77.58, + 26.92 + ], + [ + -77.02, + 26.56 + ], + [ + -77.22, + 25.85 + ], + [ + -77.41, + 26.01 + ], + [ + -77.19, + 26.15 + ], + [ + -77.17, + 26.51 + ] + ] + ], + [ + [ + [ + -76.16, + 24.85 + ], + [ + -76.15, + 25.12 + ], + [ + -76.38, + 25.35 + ], + [ + -76.49, + 25.35 + ], + [ + -76.61, + 25.44 + ], + [ + -76.79, + 25.4 + ], + [ + -76.74, + 25.56 + ], + [ + -76.67, + 25.55 + ], + [ + -76.71, + 25.5 + ], + [ + -76.37, + 25.35 + ], + [ + -76.13, + 25.15 + ], + [ + -76.16, + 24.85 + ] + ] + ], + [ + [ + [ + -77.84, + 24.11 + ], + [ + -77.87, + 24.13 + ], + [ + -77.82, + 24.22 + ], + [ + -77.83, + 24.16 + ], + [ + -77.67, + 24.3 + ], + [ + -77.85, + 24.14 + ], + [ + -77.7, + 24.12 + ], + [ + -77.72, + 24.04 + ], + [ + -77.84, + 24.11 + ] + ] + ], + [ + [ + [ + -77.8, + 23.94 + ], + [ + -77.76, + 24.03 + ], + [ + -77.69, + 24.03 + ], + [ + -77.6, + 24.21 + ], + [ + -77.52, + 24.01 + ], + [ + -77.52, + 23.83 + ], + [ + -77.66, + 23.84 + ], + [ + -77.53, + 23.93 + ], + [ + -77.54, + 23.99 + ], + [ + -77.62, + 24 + ], + [ + -77.57, + 23.98 + ], + [ + -77.71, + 23.93 + ], + [ + -77.58, + 23.95 + ], + [ + -77.67, + 23.85 + ], + [ + -77.8, + 23.94 + ] + ] + ], + [ + [ + [ + -78.16, + 25.02 + ], + [ + -78.22, + 25.2 + ], + [ + -78.02, + 25.18 + ], + [ + -77.93, + 24.9 + ], + [ + -78.07, + 24.88 + ], + [ + -77.92, + 24.89 + ], + [ + -77.78, + 24.73 + ], + [ + -77.97, + 24.69 + ], + [ + -77.78, + 24.73 + ], + [ + -77.72, + 24.51 + ], + [ + -77.87, + 24.41 + ], + [ + -77.94, + 24.52 + ], + [ + -77.86, + 24.38 + ], + [ + -78.04, + 24.27 + ], + [ + -78.05, + 24.47 + ], + [ + -78.18, + 24.41 + ], + [ + -78.09, + 24.53 + ], + [ + -78.21, + 24.43 + ], + [ + -78.46, + 24.6 + ], + [ + -78.28, + 24.57 + ], + [ + -78.29, + 24.68 + ], + [ + -78.27, + 24.51 + ], + [ + -78.18, + 24.58 + ], + [ + -78.29, + 24.79 + ], + [ + -78.16, + 25.02 + ] + ] + ], + [ + [ + [ + -78.74, + 26.5 + ], + [ + -78.99, + 26.7 + ], + [ + -78.74, + 26.53 + ], + [ + -78.55, + 26.72 + ], + [ + -77.91, + 26.77 + ], + [ + -77.97, + 26.65 + ], + [ + -78.74, + 26.5 + ] + ] + ] + ] + }, + "properties": { + "A3": "BHS" + } + }, + { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + -70.38, + -18.35 + ], + [ + -69.86, + -18.17 + ], + [ + -69.83, + -17.71 + ], + [ + -69.66, + -17.65 + ], + [ + -69.64, + -17.64 + ], + [ + -69.47, + -17.5 + ], + [ + -69.28, + -17.97 + ], + [ + -69.05, + -18.06 + ], + [ + -69.15, + -18.16 + ], + [ + -68.95, + -18.94 + ], + [ + -68.4, + -19.42 + ], + [ + -68.7, + -19.74 + ], + [ + -68.52, + -19.92 + ], + [ + -68.76, + -20.08 + ], + [ + -68.74, + -20.46 + ], + [ + -68.44, + -20.64 + ], + [ + -68.54, + -20.91 + ], + [ + -68.18, + -21.3 + ], + [ + -67.84, + -22.54 + ], + [ + -67.88, + -22.83 + ], + [ + -67.42, + -22.87 + ], + [ + -67.41, + -22.86 + ], + [ + -67.18, + -22.81 + ], + [ + -66.99, + -23 + ], + [ + -67.11, + -23.36 + ], + [ + -67.11, + -23.37 + ], + [ + -67.32, + -24.03 + ], + [ + -67.76, + -24.21 + ], + [ + -68.39, + -24.48 + ], + [ + -68.56, + -24.78 + ], + [ + -68.34, + -25.11 + ], + [ + -68.51, + -25.17 + ], + [ + -68.58, + -25.42 + ], + [ + -68.38, + -26.18 + ], + [ + -68.59, + -26.49 + ], + [ + -68.26, + -26.92 + ], + [ + -68.57, + -27.18 + ], + [ + -68.84, + -27.15 + ], + [ + -69.16, + -27.95 + ], + [ + -69.65, + -28.4 + ], + [ + -69.79, + -29.13 + ], + [ + -70.02, + -29.33 + ], + [ + -69.87, + -29.7 + ], + [ + -69.96, + -30.08 + ], + [ + -69.82, + -30.18 + ], + [ + -69.96, + -30.39 + ], + [ + -70.15, + -30.35 + ], + [ + -70.27, + -31.04 + ], + [ + -70.42, + -31.13 + ], + [ + -70.57, + -31.47 + ], + [ + -70.49, + -31.69 + ], + [ + -70.48, + -31.69 + ], + [ + -70.21, + -31.96 + ], + [ + -70.39, + -32.04 + ], + [ + -69.99, + -32.9 + ], + [ + -70.04, + -33.27 + ], + [ + -69.77, + -33.36 + ], + [ + -69.9, + -33.77 + ], + [ + -69.8, + -34.24 + ], + [ + -70.03, + -34.29 + ], + [ + -70.38, + -35.17 + ], + [ + -70.58, + -35.26 + ], + [ + -70.31, + -35.81 + ], + [ + -70.42, + -36.15 + ], + [ + -70.57, + -36.16 + ], + [ + -70.57, + -36.17 + ], + [ + -70.71, + -36.43 + ], + [ + -71.04, + -36.47 + ], + [ + -71.14, + -36.82 + ], + [ + -71.15, + -36.82 + ], + [ + -71.21, + -37.69 + ], + [ + -71.02, + -38.24 + ], + [ + -70.83, + -38.6 + ], + [ + -70.93, + -38.76 + ], + [ + -71.43, + -38.93 + ], + [ + -71.49, + -39.5 + ], + [ + -71.5, + -39.5 + ], + [ + -71.5, + -39.64 + ], + [ + -71.72, + -39.64 + ], + [ + -71.63, + -39.88 + ], + [ + -71.62, + -39.88 + ], + [ + -71.67, + -40.1 + ], + [ + -71.83, + -40.09 + ], + [ + -71.66, + -40.36 + ], + [ + -71.85, + -40.63 + ], + [ + -71.87, + -40.65 + ], + [ + -71.85, + -41.24 + ], + [ + -71.85, + -41.25 + ], + [ + -71.85, + -41.26 + ], + [ + -71.89, + -41.28 + ], + [ + -71.73, + -42.1 + ], + [ + -72.16, + -42.19 + ], + [ + -72.16, + -42.2 + ], + [ + -72.11, + -42.65 + ], + [ + -72.14, + -42.9 + ], + [ + -71.73, + -43.2 + ], + [ + -71.93, + -43.45 + ], + [ + -71.58, + -43.65 + ], + [ + -71.75, + -43.79 + ], + [ + -71.65, + -43.93 + ], + [ + -71.83, + -43.93 + ], + [ + -71.66, + -43.95 + ], + [ + -71.85, + -44.11 + ], + [ + -71.81, + -44.42 + ], + [ + -71.33, + -44.43 + ], + [ + -71.31, + -44.43 + ], + [ + -71.1, + -44.59 + ], + [ + -71.11, + -44.59 + ], + [ + -71.15, + -44.59 + ], + [ + -71.23, + -44.65 + ], + [ + -71.25, + -44.8 + ], + [ + -71.41, + -44.78 + ], + [ + -71.54, + -44.75 + ], + [ + -72.06, + -44.76 + ], + [ + -72.06, + -44.88 + ], + [ + -71.56, + -44.98 + ], + [ + -71.37, + -45.34 + ], + [ + -71.75, + -45.55 + ], + [ + -71.76, + -45.61 + ], + [ + -71.78, + -45.62 + ], + [ + -71.61, + -45.98 + ], + [ + -71.9, + -46.13 + ], + [ + -71.72, + -46.29 + ], + [ + -71.74, + -46.31 + ], + [ + -71.74, + -46.32 + ], + [ + -71.76, + -46.36 + ], + [ + -72.47, + -46.62 + ], + [ + -72.64, + -46.56 + ], + [ + -72.69, + -46.46 + ], + [ + -72.77, + -46.91 + ], + [ + -72.33, + -46.57 + ], + [ + -71.67, + -46.52 + ], + [ + -71.67, + -46.53 + ], + [ + -71.67, + -46.54 + ], + [ + -71.67, + -46.55 + ], + [ + -71.67, + -46.57 + ], + [ + -71.67, + -46.58 + ], + [ + -71.67, + -46.6 + ], + [ + -71.65, + -46.63 + ], + [ + -71.96, + -46.82 + ], + [ + -71.85, + -47.16 + ], + [ + -72.02, + -47.25 + ], + [ + -72.11, + -47.16 + ], + [ + -72.01, + -47.3 + ], + [ + -72.25, + -47.4 + ], + [ + -72.25, + -47.41 + ], + [ + -72.42, + -47.69 + ], + [ + -72.42, + -47.7 + ], + [ + -72.53, + -47.94 + ], + [ + -72.23, + -48.32 + ], + [ + -72.37, + -48.4 + ], + [ + -72.38, + -48.4 + ], + [ + -72.58, + -48.5 + ], + [ + -72.53, + -48.77 + ], + [ + -72.53, + -48.78 + ], + [ + -72.54, + -48.81 + ], + [ + -72.55, + -48.82 + ], + [ + -72.6, + -48.83 + ], + [ + -72.61, + -48.84 + ], + [ + -72.77, + -48.81 + ], + [ + -72.82, + -48.43 + ], + [ + -72.8, + -48.72 + ], + [ + -73.01, + -48.69 + ], + [ + -73.12, + -48.91 + ], + [ + -73.12, + -48.92 + ], + [ + -73.12, + -48.94 + ], + [ + -73.12, + -48.92 + ], + [ + -73.12, + -48.91 + ], + [ + -72.7, + -48.9 + ], + [ + -73.11, + -49.16 + ], + [ + -72.97, + -49.16 + ], + [ + -72.97, + -49.79 + ], + [ + -73.45, + -49.79 + ], + [ + -73.43, + -50.36 + ], + [ + -73.43, + -50.37 + ], + [ + -73.14, + -50.78 + ], + [ + -73.12, + -50.78 + ], + [ + -72.36, + -50.62 + ], + [ + -72.37, + -51.04 + ], + [ + -72.38, + -51.05 + ], + [ + -72.44, + -51.58 + ], + [ + -72.12, + -51.75 + ], + [ + -72.11, + -51.76 + ], + [ + -72.03, + -51.96 + ], + [ + -72.03, + -51.97 + ], + [ + -70, + -52 + ], + [ + -68.43, + -52.4 + ], + [ + -69.22, + -52.2 + ], + [ + -69.67, + -52.54 + ], + [ + -71, + -52.75 + ], + [ + -70.74, + -52.78 + ], + [ + -70.91, + -53.63 + ], + [ + -71.29, + -53.9 + ], + [ + -72.11, + -53.68 + ], + [ + -72.48, + -53.4 + ], + [ + -72.12, + -53.25 + ], + [ + -72.22, + -53.45 + ], + [ + -71.87, + -53.23 + ], + [ + -71.76, + -53.44 + ], + [ + -72.1, + -53.54 + ], + [ + -71.87, + -53.54 + ], + [ + -71.75, + -53.45 + ], + [ + -71.74, + -53.21 + ], + [ + -71.12, + -52.91 + ], + [ + -71.56, + -52.56 + ], + [ + -72.33, + -52.53 + ], + [ + -72.43, + -52.68 + ], + [ + -72.4, + -52.51 + ], + [ + -72.86, + -52.54 + ], + [ + -72.99, + -52.76 + ], + [ + -72.86, + -52.62 + ], + [ + -72.67, + -52.68 + ], + [ + -73.05, + -52.85 + ], + [ + -72.99, + -53.08 + ], + [ + -73.14, + -53.11 + ], + [ + -73.12, + -52.96 + ], + [ + -73.18, + -53.11 + ], + [ + -73.38, + -53.07 + ], + [ + -73.14, + -52.92 + ], + [ + -73.57, + -52.81 + ], + [ + -73.2, + -52.79 + ], + [ + -73.38, + -52.56 + ], + [ + -73.72, + -52.76 + ], + [ + -73.45, + -52.52 + ], + [ + -73.73, + -52.04 + ], + [ + -73.36, + -52.22 + ], + [ + -73, + -52.06 + ], + [ + -73.13, + -52.23 + ], + [ + -72.9, + -52.3 + ], + [ + -72.74, + -52.08 + ], + [ + -72.91, + -52.22 + ], + [ + -72.96, + -52.05 + ], + [ + -72.77, + -51.95 + ], + [ + -72.53, + -52.22 + ], + [ + -72.99, + -52.49 + ], + [ + -72.56, + -52.49 + ], + [ + -72.68, + -52.41 + ], + [ + -72.47, + -52.22 + ], + [ + -72.66, + -51.95 + ], + [ + -72.45, + -51.78 + ], + [ + -73.1, + -51.41 + ], + [ + -73.31, + -51.51 + ], + [ + -73.06, + -51.49 + ], + [ + -73.11, + -51.61 + ], + [ + -73, + -51.51 + ], + [ + -72.54, + -51.77 + ], + [ + -72.97, + -51.77 + ], + [ + -73.29, + -51.57 + ], + [ + -73, + -51.78 + ], + [ + -73.21, + -51.89 + ], + [ + -72.91, + -51.85 + ], + [ + -73.23, + -52.1 + ], + [ + -73.4, + -51.64 + ], + [ + -73.27, + -52.16 + ], + [ + -73.53, + -52.05 + ], + [ + -73.64, + -51.82 + ], + [ + -73.37, + -52.04 + ], + [ + -73.59, + -51.75 + ], + [ + -73.44, + -51.68 + ], + [ + -73.62, + -51.64 + ], + [ + -73.71, + -51.79 + ], + [ + -73.98, + -51.49 + ], + [ + -73.81, + -51.39 + ], + [ + -73.58, + -51.62 + ], + [ + -73.67, + -51.14 + ], + [ + -73.83, + -51.06 + ], + [ + -73.76, + -51.19 + ], + [ + -73.91, + -51.26 + ], + [ + -73.99, + -51.11 + ], + [ + -74.08, + -51.21 + ], + [ + -74.05, + -50.95 + ], + [ + -74.18, + -51.06 + ], + [ + -74.24, + -50.96 + ], + [ + -74.11, + -50.87 + ], + [ + -73.67, + -50.95 + ], + [ + -73.88, + -50.85 + ], + [ + -73.72, + -50.83 + ], + [ + -73.8, + -50.68 + ], + [ + -73.35, + -50.68 + ], + [ + -73.75, + -50.54 + ], + [ + -73.55, + -50.38 + ], + [ + -73.77, + -50.52 + ], + [ + -73.82, + -50.77 + ], + [ + -74.03, + -50.85 + ], + [ + -74.3, + -50.47 + ], + [ + -73.99, + -50.6 + ], + [ + -73.86, + -50.55 + ], + [ + -74.16, + -50.43 + ], + [ + -73.97, + -50.37 + ], + [ + -74.25, + -50.45 + ], + [ + -74.29, + -50.24 + ], + [ + -74.35, + -50.39 + ], + [ + -74.7, + -50.2 + ], + [ + -74.43, + -50.02 + ], + [ + -74.17, + -50.28 + ], + [ + -73.85, + -50.29 + ], + [ + -74.36, + -49.99 + ], + [ + -73.98, + -50.07 + ], + [ + -73.81, + -49.83 + ], + [ + -74.02, + -49.98 + ], + [ + -74.28, + -49.91 + ], + [ + -74.32, + -49.78 + ], + [ + -74.02, + -49.72 + ], + [ + -74.28, + -49.77 + ], + [ + -74.31, + -49.64 + ], + [ + -74.07, + -49.54 + ], + [ + -74.03, + -49.65 + ], + [ + -73.9, + -49.55 + ], + [ + -73.69, + -49.8 + ], + [ + -73.62, + -49.66 + ], + [ + -73.72, + -49.68 + ], + [ + -73.91, + -49.51 + ], + [ + -74.07, + -49.5 + ], + [ + -74.01, + -49.26 + ], + [ + -73.77, + -49.4 + ], + [ + -74.12, + -49.18 + ], + [ + -74.15, + -49.53 + ], + [ + -74.39, + -49.39 + ], + [ + -74.39, + -48.78 + ], + [ + -73.96, + -48.72 + ], + [ + -74.36, + -48.59 + ], + [ + -74.15, + -48.47 + ], + [ + -73.92, + -48.6 + ], + [ + -73.84, + -48.41 + ], + [ + -74.23, + -48.33 + ], + [ + -74.47, + -48.09 + ], + [ + -74.36, + -48 + ], + [ + -74.53, + -48.09 + ], + [ + -74.61, + -47.99 + ], + [ + -74.29, + -48 + ], + [ + -74.22, + -48.25 + ], + [ + -74.06, + -48.19 + ], + [ + -74.26, + -48 + ], + [ + -73.71, + -48.02 + ], + [ + -73.47, + -48.32 + ], + [ + -73.49, + -48.2 + ], + [ + -73.33, + -48.22 + ], + [ + -73.23, + -48.15 + ], + [ + -73.22, + -48.01 + ], + [ + -73.32, + -48.17 + ], + [ + -73.55, + -48.03 + ], + [ + -73.48, + -47.98 + ], + [ + -73.59, + -48 + ], + [ + -73.61, + -47.87 + ], + [ + -73.19, + -47.96 + ], + [ + -73.67, + -47.77 + ], + [ + -73.62, + -47.6 + ], + [ + -73.88, + -47.83 + ], + [ + -74.68, + -47.72 + ], + [ + -74.5, + -47.51 + ], + [ + -74.35, + -47.61 + ], + [ + -74.54, + -47.68 + ], + [ + -74.29, + -47.63 + ], + [ + -74.16, + -47.75 + ], + [ + -74.25, + -47.64 + ], + [ + -74.03, + -47.63 + ], + [ + -74.24, + -47.61 + ], + [ + -73.92, + -47.63 + ], + [ + -74.1, + -47.59 + ], + [ + -73.91, + -47.49 + ], + [ + -74.29, + -47.58 + ], + [ + -74.06, + -47.43 + ], + [ + -74.32, + -47.54 + ], + [ + -74.42, + -47.45 + ], + [ + -74.23, + -47.38 + ], + [ + -74.48, + -47.44 + ], + [ + -74.24, + -47.19 + ], + [ + -74.03, + -47.38 + ], + [ + -73.97, + -47.09 + ], + [ + -74.2, + -47.1 + ], + [ + -73.96, + -46.96 + ], + [ + -74.37, + -46.78 + ], + [ + -74.23, + -46.75 + ], + [ + -74.69, + -46.81 + ], + [ + -74.4, + -46.9 + ], + [ + -74.97, + -46.74 + ], + [ + -74.89, + -46.44 + ], + [ + -75.54, + -46.71 + ], + [ + -75.57, + -46.81 + ], + [ + -75.32, + -46.73 + ], + [ + -75.31, + -46.93 + ], + [ + -75.49, + -46.96 + ], + [ + -75.65, + -46.72 + ], + [ + -75.17, + -46.3 + ], + [ + -75.02, + -46.37 + ], + [ + -74.87, + -46.37 + ], + [ + -75.1, + -46.33 + ], + [ + -75.1, + -46.29 + ], + [ + -75, + -46.29 + ], + [ + -75.04, + -46.23 + ], + [ + -74.86, + -46.3 + ], + [ + -74.87, + -46.16 + ], + [ + -74.64, + -46.18 + ], + [ + -74.67, + -45.91 + ], + [ + -74.88, + -46.12 + ], + [ + -75.04, + -46.1 + ], + [ + -74.81, + -46 + ], + [ + -75.03, + -45.99 + ], + [ + -75.02, + -45.86 + ], + [ + -74.78, + -45.95 + ], + [ + -74.94, + -45.86 + ], + [ + -74.52, + -45.84 + ], + [ + -74.43, + -46.05 + ], + [ + -74.44, + -45.8 + ], + [ + -74.07, + -45.81 + ], + [ + -74.26, + -45.9 + ], + [ + -74.01, + -45.97 + ], + [ + -74.3, + -46.01 + ], + [ + -74.06, + -46.11 + ], + [ + -74.33, + -46.13 + ], + [ + -74.05, + -46.12 + ], + [ + -74, + -45.99 + ], + [ + -73.98, + -46.15 + ], + [ + -74.45, + -46.19 + ], + [ + -74, + -46.18 + ], + [ + -73.83, + -46.35 + ], + [ + -73.95, + -46.14 + ], + [ + -73.73, + -46.23 + ], + [ + -73.95, + -46.74 + ], + [ + -73.75, + -46.4 + ], + [ + -73.4, + -46.32 + ], + [ + -73.56, + -46.27 + ], + [ + -73.32, + -46.01 + ], + [ + -73.67, + -46.33 + ], + [ + -73.63, + -45.97 + ], + [ + -73.13, + -45.65 + ], + [ + -73.28, + -45.59 + ], + [ + -73.56, + -45.78 + ], + [ + -73.49, + -45.46 + ], + [ + -73.2, + -45.29 + ], + [ + -73.01, + -45.45 + ], + [ + -72.77, + -45.4 + ], + [ + -73.51, + -45.2 + ], + [ + -73.32, + -45.21 + ], + [ + -73.36, + -44.96 + ], + [ + -73.1, + -44.95 + ], + [ + -72.69, + -44.75 + ], + [ + -72.53, + -44.53 + ], + [ + -72.56, + -44.33 + ], + [ + -72.67, + -44.51 + ], + [ + -72.85, + -44.29 + ], + [ + -73.18, + -44.25 + ], + [ + -73.1, + -44.12 + ], + [ + -73.28, + -44.16 + ], + [ + -72.97, + -43.76 + ], + [ + -72.74, + -43.83 + ], + [ + -72.82, + -43.65 + ], + [ + -72.84, + -43.77 + ], + [ + -73.05, + -43.74 + ], + [ + -72.87, + -43.61 + ], + [ + -73.09, + -43.44 + ], + [ + -72.75, + -43 + ], + [ + -72.81, + -42.51 + ], + [ + -72.49, + -42.55 + ], + [ + -72.83, + -42.3 + ], + [ + -72.58, + -42.19 + ], + [ + -72.44, + -42.5 + ], + [ + -72.36, + -42.17 + ], + [ + -72.43, + -41.97 + ], + [ + -72.61, + -42.04 + ], + [ + -72.88, + -41.91 + ], + [ + -72.32, + -41.66 + ], + [ + -72.28, + -41.39 + ], + [ + -72.55, + -41.71 + ], + [ + -72.94, + -41.47 + ], + [ + -73.16, + -41.81 + ], + [ + -73.75, + -41.75 + ], + [ + -73.33, + -41.5 + ], + [ + -73.79, + -41.58 + ], + [ + -73.94, + -41.06 + ], + [ + -73.71, + -40.01 + ], + [ + -73.47, + -39.85 + ], + [ + -73.25, + -39.91 + ], + [ + -73.41, + -39.72 + ], + [ + -73.2, + -39.4 + ], + [ + -73.5, + -38.59 + ], + [ + -73.46, + -38.07 + ], + [ + -73.67, + -37.29 + ], + [ + -73.59, + -37.15 + ], + [ + -73.35, + -37.24 + ], + [ + -73.15, + -37.12 + ], + [ + -73.22, + -36.77 + ], + [ + -73.12, + -36.61 + ], + [ + -73.08, + -36.76 + ], + [ + -72.98, + -36.71 + ], + [ + -72.79, + -35.98 + ], + [ + -72.57, + -35.8 + ], + [ + -72.62, + -35.56 + ], + [ + -72.2, + -35.12 + ], + [ + -72.01, + -34.13 + ], + [ + -71.61, + -33.59 + ], + [ + -71.74, + -33.1 + ], + [ + -71.55, + -33.01 + ], + [ + -71.43, + -32.64 + ], + [ + -71.71, + -30.72 + ], + [ + -71.65, + -30.27 + ], + [ + -71.39, + -30.18 + ], + [ + -71.27, + -29.89 + ], + [ + -71.52, + -28.92 + ], + [ + -71.16, + -28.36 + ], + [ + -71.04, + -27.66 + ], + [ + -70.9, + -27.62 + ], + [ + -70.97, + -27.17 + ], + [ + -70.81, + -27.06 + ], + [ + -70.63, + -26.35 + ], + [ + -70.74, + -25.82 + ], + [ + -70.43, + -25.26 + ], + [ + -70.58, + -24.55 + ], + [ + -70.39, + -23.58 + ], + [ + -70.63, + -23.52 + ], + [ + -70.6, + -23.25 + ], + [ + -70.58, + -23.08 + ], + [ + -70.29, + -22.91 + ], + [ + -70.06, + -21.44 + ], + [ + -70.38, + -18.35 + ] + ], + [ + [ + -73.83, + -49.04 + ], + [ + -73.83, + -48.93 + ], + [ + -74, + -49.01 + ], + [ + -74.09, + -48.91 + ], + [ + -74.09, + -49.01 + ], + [ + -73.83, + -49.04 + ] + ], + [ + [ + -72.86, + -51.26 + ], + [ + -72.69, + -51.32 + ], + [ + -72.55, + -51.11 + ], + [ + -72.96, + -51.18 + ], + [ + -72.86, + -51.26 + ] + ], + [ + [ + -72.25, + -39.64 + ], + [ + -72.35, + -39.71 + ], + [ + -72.11, + -39.8 + ], + [ + -72.25, + -39.64 + ] + ], + [ + [ + -72.36, + -41.08 + ], + [ + -72.29, + -41.24 + ], + [ + -72.03, + -41.11 + ], + [ + -72.36, + -41.08 + ] + ], + [ + [ + -72.33, + -40.26 + ], + [ + -72.33, + -40.12 + ], + [ + -72.58, + -40.28 + ], + [ + -72.22, + -40.31 + ], + [ + -72.33, + -40.26 + ] + ], + [ + [ + -72.18, + -39.2 + ], + [ + -72.22, + -39.3 + ], + [ + -71.95, + -39.25 + ], + [ + -72.18, + -39.2 + ] + ], + [ + [ + -72.99, + -41.11 + ], + [ + -72.98, + -41.34 + ], + [ + -72.55, + -41.21 + ], + [ + -72.82, + -40.96 + ], + [ + -72.99, + -41.11 + ] + ], + [ + [ + -74.36, + -46.5 + ], + [ + -74.28, + -46.59 + ], + [ + -74.49, + -46.24 + ], + [ + -74.4, + -46.44 + ], + [ + -74.62, + -46.44 + ], + [ + -74.4, + -46.65 + ], + [ + -74.52, + -46.53 + ], + [ + -74.36, + -46.5 + ] + ] + ], + [ + [ + [ + -68.61, + -52.66 + ], + [ + -68.61, + -53.25 + ], + [ + -68.61, + -54.16 + ], + [ + -68.61, + -54.37 + ], + [ + -68.77, + -54.37 + ], + [ + -68.61, + -54.38 + ], + [ + -68.61, + -54.53 + ], + [ + -68.8, + -54.5 + ], + [ + -68.61, + -54.56 + ], + [ + -68.6, + -54.65 + ], + [ + -68.61, + -54.89 + ], + [ + -69.08, + -54.96 + ], + [ + -69.65, + -54.85 + ], + [ + -69.71, + -54.7 + ], + [ + -69.69, + -54.84 + ], + [ + -69.78, + -54.73 + ], + [ + -69.92, + -54.85 + ], + [ + -69.95, + -54.69 + ], + [ + -69.95, + -54.85 + ], + [ + -70.3, + -54.87 + ], + [ + -70.19, + -54.69 + ], + [ + -70.35, + -54.85 + ], + [ + -70.53, + -54.73 + ], + [ + -70.76, + -54.86 + ], + [ + -70.44, + -54.63 + ], + [ + -71.02, + -54.78 + ], + [ + -70.92, + -54.62 + ], + [ + -71.19, + -54.7 + ], + [ + -71.34, + -54.51 + ], + [ + -71.49, + -54.69 + ], + [ + -71.49, + -54.58 + ], + [ + -71.89, + -54.64 + ], + [ + -72.02, + -54.51 + ], + [ + -71.64, + -54.58 + ], + [ + -71.87, + -54.43 + ], + [ + -71.46, + -54.49 + ], + [ + -71.61, + -54.4 + ], + [ + -71.37, + -54.37 + ], + [ + -70.94, + -54.52 + ], + [ + -70.76, + -54.33 + ], + [ + -70.58, + -54.36 + ], + [ + -70.77, + -54.63 + ], + [ + -70.56, + -54.4 + ], + [ + -70.11, + -54.56 + ], + [ + -70.93, + -54.12 + ], + [ + -70.12, + -54.44 + ], + [ + -70.2, + -54.32 + ], + [ + -69.99, + -54.27 + ], + [ + -69.76, + -54.6 + ], + [ + -69.85, + -54.29 + ], + [ + -69.58, + -54.53 + ], + [ + -69.46, + -54.35 + ], + [ + -69.2, + -54.45 + ], + [ + -69.51, + -54.67 + ], + [ + -69.34, + -54.72 + ], + [ + -68.97, + -54.45 + ], + [ + -69.92, + -54.16 + ], + [ + -70.18, + -53.8 + ], + [ + -69.33, + -53.4 + ], + [ + -70.23, + -53.48 + ], + [ + -70.45, + -53.38 + ], + [ + -70.42, + -53.02 + ], + [ + -70.09, + -52.93 + ], + [ + -70.44, + -52.78 + ], + [ + -69.91, + -52.84 + ], + [ + -69.43, + -52.45 + ], + [ + -69.18, + -52.69 + ], + [ + -68.76, + -52.54 + ], + [ + -68.61, + -52.66 + ] + ] + ], + [ + [ + [ + -109.34, + -27.15 + ], + [ + -109.45, + -27.19 + ], + [ + -109.39, + -27.06 + ], + [ + -109.23, + -27.1 + ], + [ + -109.34, + -27.15 + ] + ] + ], + [ + [ + [ + -67.05, + -55.29 + ], + [ + -66.87, + -55.23 + ], + [ + -66.86, + -55.34 + ], + [ + -67.05, + -55.29 + ] + ] + ], + [ + [ + [ + -67.38, + -55.64 + ], + [ + -67.27, + -55.79 + ], + [ + -67.58, + -55.73 + ], + [ + -67.38, + -55.64 + ] + ] + ], + [ + [ + [ + -67.05, + -55.16 + ], + [ + -67.26, + -55.33 + ], + [ + -67.5, + -55.18 + ], + [ + -68.04, + -55.24 + ], + [ + -68.38, + -54.95 + ], + [ + -67.28, + -54.93 + ], + [ + -67.05, + -55.16 + ] + ] + ], + [ + [ + [ + -71.38, + -54 + ], + [ + -71.21, + -54.19 + ], + [ + -71, + -54.1 + ], + [ + -71.12, + -54.4 + ], + [ + -71.39, + -54.11 + ], + [ + -71.67, + -54.23 + ], + [ + -71.61, + -53.94 + ], + [ + -71.41, + -54.09 + ], + [ + -71.38, + -54 + ] + ] + ], + [ + [ + [ + -69.39, + -54.93 + ], + [ + -69.13, + -54.97 + ], + [ + -69.93, + -55.07 + ], + [ + -69.86, + -54.89 + ], + [ + -69.75, + -54.99 + ], + [ + -69.75, + -54.88 + ], + [ + -69.39, + -54.93 + ] + ] + ], + [ + [ + [ + -70.27, + -54.21 + ], + [ + -70.49, + -54.25 + ], + [ + -70.88, + -54.06 + ], + [ + -70.53, + -53.57 + ], + [ + -70.33, + -54.02 + ], + [ + -70.67, + -53.96 + ], + [ + -70.53, + -54.21 + ], + [ + -70.27, + -54.21 + ] + ] + ], + [ + [ + [ + -67.98, + -55.68 + ], + [ + -68.53, + -55.41 + ], + [ + -68.91, + -55.46 + ], + [ + -68.69, + -55.39 + ], + [ + -68.93, + -55.41 + ], + [ + -68.77, + -55.19 + ], + [ + -69.49, + -55.27 + ], + [ + -69.07, + -55.48 + ], + [ + -69.33, + -55.42 + ], + [ + -69.36, + -55.55 + ], + [ + -69.35, + -55.4 + ], + [ + -69.79, + -55.35 + ], + [ + -69.47, + -55.2 + ], + [ + -69.86, + -55.31 + ], + [ + -70.03, + -55.15 + ], + [ + -69.56, + -55.05 + ], + [ + -69.54, + -55.19 + ], + [ + -69.53, + -55.05 + ], + [ + -68.44, + -54.94 + ], + [ + -68.33, + -55.08 + ], + [ + -68.59, + -55.16 + ], + [ + -69.07, + -55.08 + ], + [ + -68.25, + -55.23 + ], + [ + -68.72, + -55.28 + ], + [ + -68.13, + -55.39 + ], + [ + -67.98, + -55.68 + ] + ] + ], + [ + [ + [ + -71.23, + -54.87 + ], + [ + -71.37, + -54.96 + ], + [ + -71.48, + -54.88 + ], + [ + -71.2, + -54.82 + ], + [ + -70.92, + -54.93 + ], + [ + -71.23, + -54.87 + ] + ] + ], + [ + [ + [ + -70.65, + -55.03 + ], + [ + -70.27, + -55.13 + ], + [ + -70.56, + -55.22 + ], + [ + -70.59, + -55.07 + ], + [ + -70.95, + -55.09 + ], + [ + -71.03, + -54.97 + ], + [ + -70.3, + -54.91 + ], + [ + -70.65, + -55.03 + ] + ] + ], + [ + [ + [ + -74.29, + -48.27 + ], + [ + -74.14, + -48.43 + ], + [ + -74.22, + -48.47 + ], + [ + -74.45, + -48.35 + ], + [ + -74.22, + -48.42 + ], + [ + -74.29, + -48.27 + ] + ] + ], + [ + [ + [ + -74.01, + -47.83 + ], + [ + -73.78, + -47.93 + ], + [ + -74.47, + -47.89 + ], + [ + -74.01, + -47.83 + ] + ] + ], + [ + [ + [ + -74.32, + -48.44 + ], + [ + -74.36, + -48.54 + ], + [ + -74.47, + -48.37 + ], + [ + -74.32, + -48.44 + ] + ] + ], + [ + [ + [ + -74.23, + -49.55 + ], + [ + -74.4, + -49.63 + ], + [ + -74.39, + -49.41 + ], + [ + -74.23, + -49.55 + ] + ] + ], + [ + [ + [ + -74.51, + -48.16 + ], + [ + -74.31, + -48.26 + ], + [ + -74.46, + -48.34 + ], + [ + -74.51, + -48.16 + ] + ] + ], + [ + [ + [ + -74.59, + -48.42 + ], + [ + -74.46, + -48.67 + ], + [ + -74.95, + -48.58 + ], + [ + -74.84, + -48.39 + ], + [ + -74.66, + -48.46 + ], + [ + -74.69, + -48.11 + ], + [ + -74.59, + -48.42 + ] + ] + ], + [ + [ + [ + -74.98, + -48.71 + ], + [ + -74.96, + -48.6 + ], + [ + -74.77, + -48.65 + ], + [ + -74.98, + -48.71 + ] + ] + ], + [ + [ + [ + -74.74, + -50.42 + ], + [ + -74.54, + -50.4 + ], + [ + -74.75, + -50.52 + ], + [ + -74.74, + -50.42 + ] + ] + ], + [ + [ + [ + -75.03, + -48 + ], + [ + -75.22, + -48.01 + ], + [ + -74.98, + -47.87 + ], + [ + -74.75, + -48.04 + ], + [ + -75.03, + -48.03 + ], + [ + -74.79, + -48.13 + ], + [ + -75.11, + -48.06 + ], + [ + -75.03, + -48 + ] + ] + ], + [ + [ + [ + -75.29, + -47.72 + ], + [ + -75.08, + -47.66 + ], + [ + -74.99, + -47.78 + ], + [ + -75.17, + -47.84 + ], + [ + -75.29, + -47.72 + ] + ] + ], + [ + [ + [ + -75.05, + -48.26 + ], + [ + -75.21, + -48.07 + ], + [ + -74.9, + -48.12 + ], + [ + -74.9, + -48.26 + ], + [ + -74.74, + -48.17 + ], + [ + -74.96, + -48.45 + ], + [ + -75.05, + -48.26 + ] + ] + ], + [ + [ + [ + -75.25, + -48.81 + ], + [ + -75, + -48.94 + ], + [ + -75.14, + -48.99 + ], + [ + -75.25, + -48.81 + ] + ] + ], + [ + [ + [ + -75.09, + -48.81 + ], + [ + -75.22, + -48.75 + ], + [ + -75.01, + -48.6 + ], + [ + -75.09, + -48.81 + ] + ] + ], + [ + [ + [ + -75.09, + -49 + ], + [ + -74.83, + -49.07 + ], + [ + -74.87, + -49.29 + ], + [ + -75.09, + -49.08 + ], + [ + -75.2, + -49.13 + ], + [ + -75.09, + -49 + ] + ] + ], + [ + [ + [ + -75.34, + -48 + ], + [ + -75.02, + -48.46 + ], + [ + -75.17, + -48.69 + ], + [ + -75.21, + -48.31 + ], + [ + -75.5, + -48.37 + ], + [ + -75.32, + -48.33 + ], + [ + -75.53, + -48.1 + ], + [ + -75.34, + -48 + ] + ] + ], + [ + [ + [ + -75.58, + -48.49 + ], + [ + -75.29, + -48.41 + ], + [ + -75.23, + -48.59 + ], + [ + -75.47, + -48.68 + ], + [ + -75.55, + -48.63 + ], + [ + -75.32, + -48.52 + ], + [ + -75.53, + -48.61 + ], + [ + -75.58, + -48.49 + ] + ] + ], + [ + [ + [ + -75.26, + -48.63 + ], + [ + -75.58, + -48.75 + ], + [ + -75.59, + -48.65 + ], + [ + -75.45, + -48.7 + ], + [ + -75.26, + -48.63 + ] + ] + ], + [ + [ + [ + -75.33, + -48.93 + ], + [ + -75.45, + -49.04 + ], + [ + -75.63, + -48.86 + ], + [ + -75.23, + -48.84 + ], + [ + -75.2, + -49.05 + ], + [ + -75.25, + -48.9 + ], + [ + -75.33, + -48.93 + ] + ] + ], + [ + [ + [ + -75.39, + -49 + ], + [ + -75.28, + -48.93 + ], + [ + -75.24, + -49.07 + ], + [ + -75.59, + -49.22 + ], + [ + -75.39, + -49 + ] + ] + ], + [ + [ + [ + -74.56, + -50.02 + ], + [ + -74.91, + -49.94 + ], + [ + -74.62, + -49.8 + ], + [ + -74.82, + -49.85 + ], + [ + -74.88, + -49.6 + ], + [ + -74.67, + -49.63 + ], + [ + -74.88, + -49.55 + ], + [ + -74.58, + -49.31 + ], + [ + -74.93, + -49.54 + ], + [ + -74.97, + -49.43 + ], + [ + -74.97, + -49.6 + ], + [ + -75.09, + -49.53 + ], + [ + -75.01, + -49.7 + ], + [ + -74.92, + -49.62 + ], + [ + -75.06, + -49.91 + ], + [ + -75.14, + -49.57 + ], + [ + -75.3, + -49.6 + ], + [ + -75.19, + -49.44 + ], + [ + -75.31, + -49.52 + ], + [ + -75.45, + -49.34 + ], + [ + -75.33, + -49.25 + ], + [ + -75.42, + -49.33 + ], + [ + -75.1, + -49.48 + ], + [ + -74.95, + -49.4 + ], + [ + -75.21, + -49.41 + ], + [ + -75.31, + -49.25 + ], + [ + -75.02, + -49.35 + ], + [ + -75.07, + -49.17 + ], + [ + -74.86, + -49.37 + ], + [ + -74.74, + -49.19 + ], + [ + -74.81, + -49.14 + ], + [ + -74.76, + -49.09 + ], + [ + -74.91, + -48.99 + ], + [ + -74.7, + -49.03 + ], + [ + -74.98, + -48.89 + ], + [ + -74.79, + -48.8 + ], + [ + -75.02, + -48.82 + ], + [ + -74.69, + -48.65 + ], + [ + -74.64, + -48.86 + ], + [ + -74.47, + -48.7 + ], + [ + -74.58, + -48.95 + ], + [ + -74.4, + -48.96 + ], + [ + -74.58, + -49.68 + ], + [ + -74.44, + -49.62 + ], + [ + -74.38, + -49.76 + ], + [ + -74.48, + -49.97 + ], + [ + -74.63, + -49.88 + ], + [ + -74.56, + -50.02 + ] + ] + ], + [ + [ + [ + -75.27, + -49.67 + ], + [ + -75.15, + -49.9 + ], + [ + -75.35, + -49.69 + ], + [ + -75.62, + -49.85 + ], + [ + -75.55, + -49.59 + ], + [ + -75.27, + -49.67 + ] + ] + ], + [ + [ + [ + -74.88, + -50.15 + ], + [ + -75.23, + -50.46 + ], + [ + -75.19, + -50.29 + ], + [ + -75.46, + -50.38 + ], + [ + -75.41, + -50.16 + ], + [ + -75.21, + -50.27 + ], + [ + -74.88, + -50.15 + ] + ] + ], + [ + [ + [ + -75.11, + -50.17 + ], + [ + -75.42, + -50.03 + ], + [ + -74.96, + -50.07 + ], + [ + -75.11, + -50.17 + ] + ] + ], + [ + [ + [ + -72.81, + -52.81 + ], + [ + -72.68, + -52.72 + ], + [ + -72.72, + -52.9 + ], + [ + -72.42, + -52.88 + ], + [ + -72.17, + -52.65 + ], + [ + -71.4, + -52.72 + ], + [ + -72.04, + -53.14 + ], + [ + -72.6, + -53.07 + ], + [ + -72.2, + -53.19 + ], + [ + -72.62, + -53.2 + ], + [ + -72.42, + -53.26 + ], + [ + -72.68, + -53.35 + ], + [ + -72.43, + -53.54 + ], + [ + -73.31, + -53.17 + ], + [ + -72.72, + -53.3 + ], + [ + -72.85, + -53.19 + ], + [ + -72.68, + -53.14 + ], + [ + -72.97, + -53.11 + ], + [ + -73.01, + -52.86 + ], + [ + -72.81, + -52.81 + ] + ] + ], + [ + [ + [ + -72.94, + -54.13 + ], + [ + -73.07, + -54.08 + ], + [ + -72.78, + -54.09 + ], + [ + -72.98, + -54.03 + ], + [ + -72.74, + -54.06 + ], + [ + -72.88, + -53.97 + ], + [ + -72.67, + -53.86 + ], + [ + -72.93, + -53.94 + ], + [ + -72.73, + -53.76 + ], + [ + -73.04, + -53.91 + ], + [ + -72.81, + -53.7 + ], + [ + -73.18, + -53.68 + ], + [ + -72.93, + -53.62 + ], + [ + -73.24, + -53.64 + ], + [ + -73.43, + -53.47 + ], + [ + -73.04, + -53.54 + ], + [ + -73.2, + -53.42 + ], + [ + -73.04, + -53.38 + ], + [ + -72.86, + -53.66 + ], + [ + -72.86, + -53.45 + ], + [ + -72.68, + -53.65 + ], + [ + -72.66, + -53.52 + ], + [ + -72.39, + -53.64 + ], + [ + -72.62, + -53.72 + ], + [ + -72.15, + -53.79 + ], + [ + -72.48, + -53.83 + ], + [ + -72.36, + -54.06 + ], + [ + -72.49, + -53.96 + ], + [ + -72.55, + -54.11 + ], + [ + -72.63, + -54.02 + ], + [ + -72.72, + -54.12 + ], + [ + -72.94, + -54.13 + ] + ] + ], + [ + [ + [ + -73.33, + -54.1 + ], + [ + -73.39, + -54 + ], + [ + -73.19, + -54.06 + ], + [ + -73.33, + -54.1 + ] + ] + ], + [ + [ + [ + -73.66, + -53.46 + ], + [ + -73.4, + -53.4 + ], + [ + -73.51, + -53.5 + ], + [ + -73.33, + -53.58 + ], + [ + -73.56, + -53.59 + ], + [ + -73.82, + -53.43 + ], + [ + -73.46, + -53.56 + ], + [ + -73.66, + -53.46 + ] + ] + ], + [ + [ + [ + -72.84, + -44.64 + ], + [ + -72.97, + -44.58 + ], + [ + -72.79, + -44.69 + ], + [ + -73.12, + -44.91 + ], + [ + -73.39, + -44.83 + ], + [ + -73.18, + -44.81 + ], + [ + -73.45, + -44.64 + ], + [ + -73.13, + -44.59 + ], + [ + -73.21, + -44.41 + ], + [ + -73, + -44.5 + ], + [ + -73.1, + -44.39 + ], + [ + -72.96, + -44.37 + ], + [ + -72.98, + -44.58 + ], + [ + -72.78, + -44.45 + ], + [ + -72.84, + -44.64 + ] + ] + ], + [ + [ + [ + -73.58, + -44.74 + ], + [ + -73.74, + -44.75 + ], + [ + -73.88, + -44.59 + ], + [ + -73.62, + -44.55 + ], + [ + -73.72, + -44.73 + ], + [ + -73.58, + -44.74 + ] + ] + ], + [ + [ + [ + -73.86, + -44.93 + ], + [ + -73.83, + -44.77 + ], + [ + -73.72, + -44.91 + ], + [ + -73.86, + -44.93 + ] + ] + ], + [ + [ + [ + -73.79, + -45.62 + ], + [ + -73.55, + -45.46 + ], + [ + -73.62, + -45.77 + ], + [ + -73.79, + -45.62 + ] + ] + ], + [ + [ + [ + -73.68, + -46.06 + ], + [ + -73.73, + -46.21 + ], + [ + -73.92, + -46.09 + ], + [ + -73.68, + -46.06 + ] + ] + ], + [ + [ + [ + -73.66, + -46.02 + ], + [ + -73.8, + -46 + ], + [ + -73.7, + -45.88 + ], + [ + -73.92, + -45.95 + ], + [ + -73.7, + -45.8 + ], + [ + -73.66, + -46.02 + ] + ] + ], + [ + [ + [ + -72.03, + -53.9 + ], + [ + -71.65, + -53.93 + ], + [ + -71.75, + -54.17 + ], + [ + -71.95, + -54.04 + ], + [ + -71.8, + -54.34 + ], + [ + -72.26, + -54.07 + ], + [ + -72.28, + -53.92 + ], + [ + -72.06, + -53.99 + ], + [ + -72.03, + -53.9 + ] + ] + ], + [ + [ + [ + -72.48, + -54.35 + ], + [ + -72.29, + -54.35 + ], + [ + -72.46, + -54.44 + ], + [ + -72.48, + -54.35 + ] + ] + ], + [ + [ + [ + -72.23, + -54.15 + ], + [ + -72.51, + -54.26 + ], + [ + -72.34, + -54.06 + ], + [ + -72.23, + -54.15 + ] + ] + ], + [ + [ + [ + -73.51, + -42.46 + ], + [ + -73.39, + -42.58 + ], + [ + -73.66, + -42.39 + ], + [ + -73.51, + -42.46 + ] + ] + ], + [ + [ + [ + -74.34, + -45.75 + ], + [ + -74.49, + -45.73 + ], + [ + -74.39, + -45.45 + ], + [ + -74.18, + -45.62 + ], + [ + -74.34, + -45.75 + ] + ] + ], + [ + [ + [ + -73.87, + -45.75 + ], + [ + -74, + -45.93 + ], + [ + -74.09, + -45.78 + ], + [ + -73.87, + -45.75 + ] + ] + ], + [ + [ + [ + -73.76, + -45.31 + ], + [ + -74.09, + -45.37 + ], + [ + -74.15, + -45.24 + ], + [ + -73.76, + -45.31 + ] + ] + ], + [ + [ + [ + -73.79, + -45.45 + ], + [ + -74.11, + -45.59 + ], + [ + -74.06, + -45.43 + ], + [ + -73.79, + -45.45 + ] + ] + ], + [ + [ + [ + -73.81, + -45.25 + ], + [ + -74.23, + -45.08 + ], + [ + -73.81, + -44.98 + ], + [ + -73.67, + -45.18 + ], + [ + -73.81, + -45.25 + ] + ] + ], + [ + [ + [ + -74.13, + -43.83 + ], + [ + -73.78, + -43.83 + ], + [ + -73.94, + -43.96 + ], + [ + -74.13, + -43.83 + ] + ] + ], + [ + [ + [ + -73.99, + -44.23 + ], + [ + -74.02, + -44.14 + ], + [ + -73.85, + -44.22 + ], + [ + -74.04, + -44.23 + ], + [ + -73.99, + -44.34 + ], + [ + -74.1, + -44.19 + ], + [ + -73.99, + -44.23 + ] + ] + ], + [ + [ + [ + -75.03, + -44.84 + ], + [ + -75.15, + -44.93 + ], + [ + -75.2, + -44.81 + ], + [ + -75.03, + -44.84 + ] + ] + ], + [ + [ + [ + -74.32, + -45.33 + ], + [ + -74.32, + -45.43 + ], + [ + -74.52, + -45.33 + ], + [ + -74.32, + -45.33 + ] + ] + ], + [ + [ + [ + -73.95, + -44.98 + ], + [ + -74.38, + -45 + ], + [ + -74.15, + -44.86 + ], + [ + -73.95, + -44.98 + ] + ] + ], + [ + [ + [ + -74.27, + -44.72 + ], + [ + -74.11, + -44.73 + ], + [ + -74.4, + -44.62 + ], + [ + -73.84, + -44.7 + ], + [ + -74.24, + -44.81 + ], + [ + -74.27, + -44.72 + ] + ] + ], + [ + [ + [ + -73.39, + -42.26 + ], + [ + -73.67, + -42.39 + ], + [ + -73.58, + -42.53 + ], + [ + -73.78, + -42.53 + ], + [ + -73.74, + -42.43 + ], + [ + -73.8, + -42.54 + ], + [ + -73.47, + -42.81 + ], + [ + -73.75, + -42.85 + ], + [ + -73.48, + -43.15 + ], + [ + -73.73, + -43.09 + ], + [ + -73.66, + -43.32 + ], + [ + -73.88, + -43.28 + ], + [ + -73.85, + -43.43 + ], + [ + -74.3, + -43.32 + ], + [ + -74.05, + -41.8 + ], + [ + -73.9, + -41.77 + ], + [ + -74.01, + -41.84 + ], + [ + -73.77, + -41.97 + ], + [ + -73.67, + -41.8 + ], + [ + -73.48, + -41.83 + ], + [ + -73.39, + -42.26 + ] + ] + ], + [ + [ + [ + -74.47, + -44.53 + ], + [ + -74.51, + -44.43 + ], + [ + -74.25, + -44.4 + ], + [ + -74.47, + -44.53 + ] + ] + ], + [ + [ + [ + -74.78, + -43.58 + ], + [ + -74.55, + -43.63 + ], + [ + -74.77, + -43.68 + ], + [ + -74.78, + -43.58 + ] + ] + ], + [ + [ + [ + -74.55, + -51.34 + ], + [ + -74.73, + -51.29 + ], + [ + -75.03, + -51.48 + ], + [ + -74.8, + -51.21 + ], + [ + -74.56, + -51.21 + ], + [ + -74.55, + -51.34 + ] + ] + ], + [ + [ + [ + -75.15, + -51.57 + ], + [ + -75.35, + -51.59 + ], + [ + -75.12, + -51.25 + ], + [ + -75.14, + -51.39 + ], + [ + -74.98, + -51.36 + ], + [ + -75.15, + -51.57 + ] + ] + ], + [ + [ + [ + -75.11, + -51.84 + ], + [ + -74.98, + -51.72 + ], + [ + -75, + -51.9 + ], + [ + -75.11, + -51.84 + ] + ] + ], + [ + [ + [ + -74.29, + -50.85 + ], + [ + -74.64, + -50.66 + ], + [ + -74.35, + -50.54 + ], + [ + -74.69, + -50.49 + ], + [ + -74.54, + -50.41 + ], + [ + -74.36, + -50.46 + ], + [ + -74.22, + -50.67 + ], + [ + -74.29, + -50.85 + ] + ] + ], + [ + [ + [ + -74.4, + -51.1 + ], + [ + -74.39, + -51.23 + ], + [ + -74.59, + -51.06 + ], + [ + -74.4, + -51.1 + ] + ] + ], + [ + [ + [ + -75.43, + -50.48 + ], + [ + -75.06, + -50.51 + ], + [ + -75.32, + -50.56 + ], + [ + -75.3, + -50.81 + ], + [ + -75.51, + -50.67 + ], + [ + -75.34, + -50.63 + ], + [ + -75.43, + -50.48 + ] + ] + ], + [ + [ + [ + -74.95, + -50.79 + ], + [ + -74.79, + -50.66 + ], + [ + -74.66, + -50.88 + ], + [ + -74.95, + -50.79 + ] + ] + ], + [ + [ + [ + -74.4, + -50.88 + ], + [ + -74.37, + -51.09 + ], + [ + -74.48, + -50.99 + ], + [ + -74.74, + -51.1 + ], + [ + -74.6, + -50.96 + ], + [ + -74.97, + -51.07 + ], + [ + -74.77, + -50.98 + ], + [ + -74.94, + -50.88 + ], + [ + -74.53, + -50.92 + ], + [ + -74.64, + -50.71 + ], + [ + -74.4, + -50.88 + ] + ] + ], + [ + [ + [ + -74.01, + -52.24 + ], + [ + -74.01, + -52.14 + ], + [ + -73.72, + -52.42 + ], + [ + -74.01, + -52.24 + ] + ] + ], + [ + [ + [ + -73.69, + -52.58 + ], + [ + -73.9, + -52.75 + ], + [ + -73.84, + -52.57 + ], + [ + -74.07, + -52.64 + ], + [ + -73.75, + -52.42 + ], + [ + -73.69, + -52.58 + ] + ] + ], + [ + [ + [ + -73.91, + -51.78 + ], + [ + -74.25, + -51.72 + ], + [ + -74.1, + -51.54 + ], + [ + -73.91, + -51.78 + ] + ] + ], + [ + [ + [ + -74.07, + -52 + ], + [ + -74.51, + -51.71 + ], + [ + -73.64, + -52.22 + ], + [ + -74.07, + -52 + ] + ] + ], + [ + [ + [ + -74.12, + -52.21 + ], + [ + -74.42, + -52.14 + ], + [ + -74.26, + -52.1 + ], + [ + -73.9, + -52.34 + ], + [ + -74.11, + -52.42 + ], + [ + -74.12, + -52.21 + ] + ] + ], + [ + [ + [ + -73.38, + -53.19 + ], + [ + -73.1, + -53.37 + ], + [ + -73.61, + -53.34 + ], + [ + -73.46, + -53.31 + ], + [ + -73.6, + -53.28 + ], + [ + -73.61, + -53.2 + ], + [ + -73.73, + -53.14 + ], + [ + -73.75, + -53.2 + ], + [ + -73.89, + -53.07 + ], + [ + -74.32, + -53.13 + ], + [ + -74.73, + -52.73 + ], + [ + -74.32, + -52.98 + ], + [ + -74.12, + -52.94 + ], + [ + -73.63, + -53.18 + ], + [ + -73.6, + -53.08 + ], + [ + -73.53, + -53.28 + ], + [ + -73.51, + -53.23 + ], + [ + -73.43, + -53.25 + ], + [ + -73.51, + -53.15 + ], + [ + -73.38, + -53.19 + ] + ] + ], + [ + [ + [ + -74.88, + -52.24 + ], + [ + -74.58, + -52.21 + ], + [ + -74.7, + -52.34 + ], + [ + -74.88, + -52.24 + ] + ] + ] + ] + }, + "properties": { + "A3": "CHL" + } + }, + { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + -77.83, + 22.23 + ], + [ + -77.87, + 22.32 + ], + [ + -77.74, + 22.17 + ], + [ + -77.83, + 22.23 + ] + ] + ], + [ + [ + [ + -82.62, + 21.76 + ], + [ + -82.55, + 21.56 + ], + [ + -82.84, + 21.44 + ], + [ + -83.19, + 21.63 + ], + [ + -82.96, + 21.58 + ], + [ + -83.09, + 21.78 + ], + [ + -82.98, + 21.94 + ], + [ + -82.62, + 21.76 + ] + ] + ], + [ + [ + [ + -83.28, + 22.33 + ], + [ + -83.42, + 22.18 + ], + [ + -83.92, + 22.16 + ], + [ + -84.01, + 21.92 + ], + [ + -84.44, + 21.77 + ], + [ + -84.5, + 21.93 + ], + [ + -84.95, + 21.86 + ], + [ + -84.28, + 22.01 + ], + [ + -84.45, + 22.19 + ], + [ + -84.22, + 22.57 + ], + [ + -83.22, + 23 + ], + [ + -82.76, + 22.98 + ], + [ + -82.23, + 23.18 + ], + [ + -81.61, + 23.15 + ], + [ + -81.56, + 23.03 + ], + [ + -81.14, + 23.21 + ], + [ + -81.28, + 23.13 + ], + [ + -81.13, + 23.02 + ], + [ + -80.6, + 23.13 + ], + [ + -80.41, + 22.94 + ], + [ + -80.25, + 23.03 + ], + [ + -80.26, + 22.9 + ], + [ + -79.79, + 22.9 + ], + [ + -79.86, + 22.8 + ], + [ + -79.65, + 22.76 + ], + [ + -79.36, + 22.42 + ], + [ + -78.69, + 22.38 + ], + [ + -77.92, + 21.91 + ], + [ + -78.09, + 22.3 + ], + [ + -78.71, + 22.55 + ], + [ + -78.38, + 22.55 + ], + [ + -77.44, + 21.81 + ], + [ + -77.83, + 22.03 + ], + [ + -77.89, + 21.86 + ], + [ + -77.83, + 21.97 + ], + [ + -77.44, + 21.65 + ], + [ + -77.35, + 21.76 + ], + [ + -77.14, + 21.66 + ], + [ + -77.15, + 21.54 + ], + [ + -77.37, + 21.61 + ], + [ + -77.22, + 21.44 + ], + [ + -77.09, + 21.61 + ], + [ + -76.95, + 21.46 + ], + [ + -77.04, + 21.41 + ], + [ + -76.81, + 21.39 + ], + [ + -76.89, + 21.3 + ], + [ + -76.66, + 21.36 + ], + [ + -76.74, + 21.28 + ], + [ + -76.55, + 21.29 + ], + [ + -76.59, + 21.19 + ], + [ + -76.38, + 21.28 + ], + [ + -76.03, + 21.06 + ], + [ + -75.72, + 21.13 + ], + [ + -75.57, + 21.01 + ], + [ + -75.76, + 20.88 + ], + [ + -75.55, + 20.79 + ], + [ + -75.76, + 20.85 + ], + [ + -75.76, + 20.7 + ], + [ + -75.52, + 20.79 + ], + [ + -75.58, + 20.69 + ], + [ + -74.75, + 20.63 + ], + [ + -74.14, + 20.19 + ], + [ + -75.16, + 19.89 + ], + [ + -75.1, + 20.06 + ], + [ + -75.3, + 19.88 + ], + [ + -75.87, + 20.03 + ], + [ + -77.68, + 19.83 + ], + [ + -77.58, + 20.09 + ], + [ + -77.18, + 20.28 + ], + [ + -77.07, + 20.51 + ], + [ + -77.35, + 20.72 + ], + [ + -78.14, + 20.76 + ], + [ + -78.49, + 21.03 + ], + [ + -78.49, + 21.29 + ], + [ + -78.75, + 21.64 + ], + [ + -79.21, + 21.54 + ], + [ + -79.83, + 21.67 + ], + [ + -80.29, + 21.9 + ], + [ + -80.47, + 22.19 + ], + [ + -80.48, + 22.04 + ], + [ + -81.05, + 22.07 + ], + [ + -81.21, + 22.28 + ], + [ + -81.21, + 22.05 + ], + [ + -81.8, + 22.17 + ], + [ + -82.16, + 22.39 + ], + [ + -81.59, + 22.52 + ], + [ + -81.87, + 22.68 + ], + [ + -82.76, + 22.7 + ], + [ + -83.28, + 22.33 + ] + ] + ] + ] + }, + "properties": { + "A3": "CUB" + } + }, + { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + 48.32, + 49.87 + ], + [ + 48.44, + 49.8 + ], + [ + 48.9, + 50.02 + ], + [ + 48.6, + 50.66 + ], + [ + 48.81, + 50.6 + ], + [ + 49.42, + 50.85 + ], + [ + 49.46, + 51.13 + ], + [ + 50.37, + 51.33 + ], + [ + 50.59, + 51.65 + ], + [ + 50.81, + 51.59 + ], + [ + 50.77, + 51.77 + ], + [ + 51.66, + 51.45 + ], + [ + 51.86, + 51.67 + ], + [ + 52.36, + 51.78 + ], + [ + 52.55, + 51.48 + ], + [ + 52.56, + 51.46 + ], + [ + 52.57, + 51.47 + ], + [ + 52.6, + 51.47 + ], + [ + 52.59, + 51.47 + ], + [ + 52.6, + 51.45 + ], + [ + 52.61, + 51.46 + ], + [ + 52.64, + 51.46 + ], + [ + 52.64, + 51.47 + ], + [ + 52.64, + 51.48 + ], + [ + 52.65, + 51.48 + ], + [ + 52.66, + 51.49 + ], + [ + 52.67, + 51.48 + ], + [ + 52.66, + 51.47 + ], + [ + 52.67, + 51.46 + ], + [ + 52.68, + 51.47 + ], + [ + 52.67, + 51.47 + ], + [ + 52.69, + 51.48 + ], + [ + 52.71, + 51.48 + ], + [ + 52.72, + 51.48 + ], + [ + 52.73, + 51.5 + ], + [ + 52.75, + 51.5 + ], + [ + 52.76, + 51.5 + ], + [ + 52.76, + 51.51 + ], + [ + 52.77, + 51.51 + ], + [ + 52.78, + 51.5 + ], + [ + 52.78, + 51.51 + ], + [ + 52.81, + 51.5 + ], + [ + 52.81, + 51.49 + ], + [ + 52.84, + 51.49 + ], + [ + 52.84, + 51.5 + ], + [ + 52.86, + 51.49 + ], + [ + 52.87, + 51.5 + ], + [ + 53.26, + 51.5 + ], + [ + 53.26, + 51.49 + ], + [ + 53.29, + 51.49 + ], + [ + 53.29, + 51.5 + ], + [ + 54.53, + 50.85 + ], + [ + 54.47, + 50.57 + ], + [ + 54.71, + 50.68 + ], + [ + 54.59, + 51.03 + ], + [ + 55.71, + 50.55 + ], + [ + 56.51, + 51.09 + ], + [ + 56.72, + 50.97 + ], + [ + 56.7, + 51.08 + ], + [ + 57.18, + 51.11 + ], + [ + 57.51, + 50.88 + ], + [ + 57.76, + 50.92 + ], + [ + 57.79, + 51.14 + ], + [ + 57.8, + 51.14 + ], + [ + 57.81, + 51.14 + ], + [ + 57.82, + 51.13 + ], + [ + 57.83, + 51.12 + ], + [ + 57.83, + 51.11 + ], + [ + 57.84, + 51.11 + ], + [ + 57.85, + 51.11 + ], + [ + 57.85, + 51.1 + ], + [ + 57.86, + 51.1 + ], + [ + 57.87, + 51.1 + ], + [ + 57.88, + 51.1 + ], + [ + 57.91, + 51.11 + ], + [ + 57.92, + 51.12 + ], + [ + 57.92, + 51.11 + ], + [ + 57.93, + 51.1 + ], + [ + 57.93, + 51.09 + ], + [ + 57.94, + 51.09 + ], + [ + 57.95, + 51.09 + ], + [ + 57.96, + 51.09 + ], + [ + 57.97, + 51.09 + ], + [ + 57.98, + 51.09 + ], + [ + 58, + 51.09 + ], + [ + 58.01, + 51.09 + ], + [ + 58.02, + 51.09 + ], + [ + 58.02, + 51.1 + ], + [ + 58.08, + 51.12 + ], + [ + 58.09, + 51.12 + ], + [ + 58.09, + 51.11 + ], + [ + 58.09, + 51.1 + ], + [ + 58.08, + 51.09 + ], + [ + 58.08, + 51.08 + ], + [ + 58.09, + 51.08 + ], + [ + 58.09, + 51.07 + ], + [ + 58.1, + 51.07 + ], + [ + 58.11, + 51.07 + ], + [ + 58.12, + 51.07 + ], + [ + 58.13, + 51.07 + ], + [ + 58.14, + 51.07 + ], + [ + 58.18, + 51.07 + ], + [ + 58.17, + 51.08 + ], + [ + 58.18, + 51.09 + ], + [ + 58.2, + 51.09 + ], + [ + 58.21, + 51.09 + ], + [ + 58.21, + 51.1 + ], + [ + 58.21, + 51.12 + ], + [ + 58.2, + 51.13 + ], + [ + 58.27, + 51.15 + ], + [ + 58.31, + 51.15 + ], + [ + 58.32, + 51.15 + ], + [ + 58.35, + 51.13 + ], + [ + 58.35, + 51.12 + ], + [ + 58.61, + 51.05 + ], + [ + 58.66, + 50.81 + ], + [ + 59.48, + 50.64 + ], + [ + 59.46, + 50.54 + ], + [ + 59.83, + 50.55 + ], + [ + 59.83, + 50.56 + ], + [ + 60.02, + 50.82 + ], + [ + 60.81, + 50.66 + ], + [ + 61.45, + 50.81 + ], + [ + 61.49, + 50.97 + ], + [ + 61.63, + 50.93 + ], + [ + 61.5, + 51.01 + ], + [ + 61.69, + 51.26 + ], + [ + 60.91, + 51.62 + ], + [ + 60.42, + 51.65 + ], + [ + 60.52, + 51.8 + ], + [ + 59.99, + 51.96 + ], + [ + 60.72, + 52.16 + ], + [ + 60.99, + 52.31 + ], + [ + 61, + 52.31 + ], + [ + 60.71, + 52.76 + ], + [ + 61.12, + 52.99 + ], + [ + 61.13, + 52.99 + ], + [ + 62.13, + 52.99 + ], + [ + 61.74, + 53.22 + ], + [ + 61.74, + 53.23 + ], + [ + 61.17, + 53.34 + ], + [ + 61.17, + 53.36 + ], + [ + 61.55, + 53.59 + ], + [ + 60.91, + 53.63 + ], + [ + 60.95, + 53.67 + ], + [ + 60.96, + 53.67 + ], + [ + 61, + 53.67 + ], + [ + 61, + 53.66 + ], + [ + 61.24, + 53.84 + ], + [ + 61, + 53.94 + ], + [ + 61.26, + 54 + ], + [ + 61.26, + 54.01 + ], + [ + 61.35, + 54.07 + ], + [ + 61.41, + 54.09 + ], + [ + 61.41, + 54.08 + ], + [ + 61.46, + 54.08 + ], + [ + 61.66, + 54.03 + ], + [ + 61.7, + 54.02 + ], + [ + 61.72, + 54.03 + ], + [ + 61.73, + 54.02 + ], + [ + 61.85, + 54.03 + ], + [ + 61.85, + 54.02 + ], + [ + 61.85, + 54.01 + ], + [ + 61.86, + 54.01 + ], + [ + 62.19, + 54.03 + ], + [ + 62.21, + 54.03 + ], + [ + 62.21, + 54.04 + ], + [ + 62.23, + 54.04 + ], + [ + 62.23, + 54.03 + ], + [ + 62.52, + 53.91 + ], + [ + 62.59, + 54.07 + ], + [ + 63.17, + 54.19 + ], + [ + 63.96, + 54.2 + ], + [ + 64.97, + 54.42 + ], + [ + 65.22, + 54.33 + ], + [ + 65.21, + 54.54 + ], + [ + 65.49, + 54.66 + ], + [ + 66.38, + 54.7 + ], + [ + 66.4, + 54.71 + ], + [ + 67.04, + 54.78 + ], + [ + 67.09, + 54.8 + ], + [ + 67.1, + 54.81 + ], + [ + 67.29, + 54.84 + ], + [ + 67.29, + 54.86 + ], + [ + 67.53, + 54.85 + ], + [ + 67.54, + 54.85 + ], + [ + 68.24, + 55.05 + ], + [ + 68.26, + 55.1 + ], + [ + 68.26, + 55.11 + ], + [ + 68.25, + 55.11 + ], + [ + 68.21, + 55.14 + ], + [ + 68.2, + 55.14 + ], + [ + 68.52, + 55.2 + ], + [ + 68.63, + 55.2 + ], + [ + 68.66, + 55.23 + ], + [ + 68.73, + 55.36 + ], + [ + 68.78, + 55.37 + ], + [ + 68.92, + 55.32 + ], + [ + 68.99, + 55.29 + ], + [ + 69, + 55.33 + ], + [ + 69, + 55.34 + ], + [ + 69.04, + 55.42 + ], + [ + 69.16, + 55.39 + ], + [ + 69.18, + 55.38 + ], + [ + 69.66, + 55.35 + ], + [ + 69.68, + 55.48 + ], + [ + 69.95, + 55.21 + ], + [ + 70.82, + 55.29 + ], + [ + 70.93, + 55.15 + ], + [ + 70.93, + 55.12 + ], + [ + 70.98, + 55.1 + ], + [ + 71.02, + 55.09 + ], + [ + 71.1, + 54.7 + ], + [ + 71.11, + 54.7 + ], + [ + 71.29, + 54.67 + ], + [ + 71.23, + 54.35 + ], + [ + 71, + 54.27 + ], + [ + 71.28, + 54.15 + ], + [ + 71.28, + 54.16 + ], + [ + 71.46, + 54.16 + ], + [ + 71.47, + 54.16 + ], + [ + 71.72, + 54.1 + ], + [ + 71.76, + 54.25 + ], + [ + 72.17, + 54.12 + ], + [ + 72.01, + 54.37 + ], + [ + 72.19, + 54.36 + ], + [ + 72.52, + 54.14 + ], + [ + 72.43, + 53.91 + ], + [ + 72.71, + 53.96 + ], + [ + 72.61, + 54.14 + ], + [ + 73.3, + 53.94 + ], + [ + 73.63, + 54.07 + ], + [ + 73.74, + 53.97 + ], + [ + 73.73, + 53.95 + ], + [ + 73.25, + 53.67 + ], + [ + 73.36, + 53.47 + ], + [ + 73.9, + 53.65 + ], + [ + 74.37, + 53.46 + ], + [ + 74.4, + 53.46 + ], + [ + 74.46, + 53.69 + ], + [ + 75.03, + 53.8 + ], + [ + 75.23, + 53.89 + ], + [ + 75.24, + 53.89 + ], + [ + 75.42, + 54.08 + ], + [ + 75.43, + 54.09 + ], + [ + 75.54, + 54.11 + ], + [ + 75.55, + 54.11 + ], + [ + 75.64, + 54.11 + ], + [ + 75.66, + 54.11 + ], + [ + 75.93, + 54.19 + ], + [ + 75.94, + 54.19 + ], + [ + 76.3, + 54.35 + ], + [ + 76.93, + 54.45 + ], + [ + 76.94, + 54.44 + ], + [ + 76.95, + 54.42 + ], + [ + 76.93, + 54.41 + ], + [ + 76.9, + 54.41 + ], + [ + 76.88, + 54.4 + ], + [ + 76.83, + 54.39 + ], + [ + 76.76, + 54.16 + ], + [ + 76.44, + 54.17 + ], + [ + 76.54, + 54 + ], + [ + 76.62, + 53.96 + ], + [ + 77, + 53.76 + ], + [ + 77.03, + 53.75 + ], + [ + 77.09, + 53.72 + ], + [ + 77.24, + 53.65 + ], + [ + 77.57, + 53.47 + ], + [ + 77.61, + 53.45 + ], + [ + 77.71, + 53.4 + ], + [ + 77.84, + 53.33 + ], + [ + 78.21, + 52.98 + ], + [ + 78.31, + 52.88 + ], + [ + 78.5, + 52.67 + ], + [ + 78.52, + 52.65 + ], + [ + 78.63, + 52.53 + ], + [ + 78.76, + 52.38 + ], + [ + 78.87, + 52.26 + ], + [ + 78.9, + 52.23 + ], + [ + 79.2, + 51.89 + ], + [ + 80.08, + 50.74 + ], + [ + 80.68, + 51.32 + ], + [ + 81.17, + 51.18 + ], + [ + 81.18, + 51.18 + ], + [ + 81.13, + 51.07 + ], + [ + 81.12, + 51.07 + ], + [ + 81.06, + 50.95 + ], + [ + 81.41, + 50.98 + ], + [ + 81.58, + 50.74 + ], + [ + 82.57, + 50.75 + ], + [ + 83.12, + 51.01 + ], + [ + 83.62, + 50.95 + ], + [ + 83.63, + 50.95 + ], + [ + 83.64, + 50.95 + ], + [ + 83.67, + 50.93 + ], + [ + 83.77, + 50.89 + ], + [ + 83.79, + 50.89 + ], + [ + 84.23, + 50.54 + ], + [ + 84.28, + 50.26 + ], + [ + 85.04, + 50.05 + ], + [ + 85.26, + 49.59 + ], + [ + 86.2, + 49.47 + ], + [ + 86.59, + 49.81 + ], + [ + 86.78, + 49.79 + ], + [ + 86.62, + 49.57 + ], + [ + 87.3, + 49.18 + ], + [ + 87.29, + 49.12 + ], + [ + 87.07, + 49.13 + ], + [ + 87.06, + 49.13 + ], + [ + 86.74, + 48.92 + ], + [ + 86.74, + 48.91 + ], + [ + 86.58, + 48.54 + ], + [ + 86.4, + 48.48 + ], + [ + 86.38, + 48.49 + ], + [ + 86.38, + 48.5 + ], + [ + 86.37, + 48.5 + ], + [ + 86.37, + 48.49 + ], + [ + 86.36, + 48.49 + ], + [ + 86.34, + 48.49 + ], + [ + 86.32, + 48.49 + ], + [ + 86.24, + 48.44 + ], + [ + 86.22, + 48.43 + ], + [ + 85.88, + 48.43 + ], + [ + 85.84, + 48.43 + ], + [ + 85.83, + 48.42 + ], + [ + 85.8, + 48.42 + ], + [ + 85.79, + 48.41 + ], + [ + 85.77, + 48.41 + ], + [ + 85.76, + 48.4 + ], + [ + 85.75, + 48.39 + ], + [ + 85.72, + 48.36 + ], + [ + 85.71, + 48.36 + ], + [ + 85.71, + 48.35 + ], + [ + 85.7, + 48.33 + ], + [ + 85.69, + 48.3 + ], + [ + 85.69, + 48.29 + ], + [ + 85.68, + 48.28 + ], + [ + 85.68, + 48.27 + ], + [ + 85.67, + 48.26 + ], + [ + 85.66, + 48.24 + ], + [ + 85.64, + 48.24 + ], + [ + 85.63, + 48.23 + ], + [ + 85.63, + 48.22 + ], + [ + 85.62, + 48.21 + ], + [ + 85.6, + 48.2 + ], + [ + 85.59, + 48.2 + ], + [ + 85.59, + 48.19 + ], + [ + 85.58, + 48.17 + ], + [ + 85.57, + 48.16 + ], + [ + 85.53, + 48.02 + ], + [ + 85.54, + 48.02 + ], + [ + 85.54, + 47.99 + ], + [ + 85.55, + 47.98 + ], + [ + 85.61, + 47.54 + ], + [ + 85.57, + 47.13 + ], + [ + 85.53, + 47.05 + ], + [ + 85.22, + 47.05 + ], + [ + 84.94, + 46.86 + ], + [ + 84.41, + 47.01 + ], + [ + 84.4, + 47 + ], + [ + 84.39, + 47 + ], + [ + 84.38, + 47 + ], + [ + 84.37, + 47 + ], + [ + 83.91, + 46.98 + ], + [ + 83.15, + 47.23 + ], + [ + 82.92, + 46.94 + ], + [ + 82.92, + 46.93 + ], + [ + 82.87, + 46.82 + ], + [ + 82.86, + 46.79 + ], + [ + 82.79, + 46.7 + ], + [ + 82.79, + 46.68 + ], + [ + 82.77, + 46.63 + ], + [ + 82.73, + 46.5 + ], + [ + 82.27, + 45.55 + ], + [ + 82.31, + 45.52 + ], + [ + 82.54, + 45.42 + ], + [ + 82.56, + 45.38 + ], + [ + 82.57, + 45.21 + ], + [ + 82.33, + 45.21 + ], + [ + 82.27, + 45.24 + ], + [ + 82.26, + 45.24 + ], + [ + 82.26, + 45.23 + ], + [ + 82.25, + 45.23 + ], + [ + 82.23, + 45.23 + ], + [ + 82.22, + 45.23 + ], + [ + 82.21, + 45.23 + ], + [ + 82.2, + 45.23 + ], + [ + 82.18, + 45.23 + ], + [ + 81.81, + 45.36 + ], + [ + 81.77, + 45.38 + ], + [ + 80.74, + 45.16 + ], + [ + 80.73, + 45.15 + ], + [ + 80.09, + 45.03 + ], + [ + 80.06, + 45.01 + ], + [ + 79.89, + 44.89 + ], + [ + 80.17, + 44.83 + ], + [ + 80.17, + 44.79 + ], + [ + 80.41, + 44.61 + ], + [ + 80.52, + 43.82 + ], + [ + 80.81, + 43.18 + ], + [ + 80.41, + 43.06 + ], + [ + 80.38, + 43.02 + ], + [ + 80.6, + 42.9 + ], + [ + 80.23, + 42.72 + ], + [ + 80.22, + 42.71 + ], + [ + 80.25, + 42.52 + ], + [ + 80.27, + 42.51 + ], + [ + 80.27, + 42.5 + ], + [ + 80.26, + 42.5 + ], + [ + 80.24, + 42.49 + ], + [ + 80.22, + 42.22 + ], + [ + 80.21, + 42.23 + ], + [ + 80.19, + 42.23 + ], + [ + 80.17, + 42.21 + ], + [ + 79.96, + 42.44 + ], + [ + 79.5, + 42.46 + ], + [ + 79.2, + 42.8 + ], + [ + 76.97, + 42.99 + ], + [ + 76.34, + 42.86 + ], + [ + 75.82, + 42.94 + ], + [ + 75.72, + 42.8 + ], + [ + 75.19, + 42.88 + ], + [ + 75.1, + 42.9 + ], + [ + 75.1, + 42.91 + ], + [ + 74.21, + 43.27 + ], + [ + 73.92, + 43.13 + ], + [ + 73.52, + 42.89 + ], + [ + 73.52, + 42.87 + ], + [ + 73.49, + 42.42 + ], + [ + 71.86, + 42.83 + ], + [ + 71.28, + 42.78 + ], + [ + 71, + 42.59 + ], + [ + 70.94, + 42.26 + ], + [ + 70.64, + 42.02 + ], + [ + 70.37, + 42.07 + ], + [ + 70.05, + 41.78 + ], + [ + 69.24, + 41.46 + ], + [ + 69.23, + 41.46 + ], + [ + 69.21, + 41.46 + ], + [ + 69.15, + 41.43 + ], + [ + 68.76, + 41.08 + ], + [ + 68.75, + 41.01 + ], + [ + 68.76, + 41 + ], + [ + 68.75, + 40.99 + ], + [ + 68.75, + 40.98 + ], + [ + 68.74, + 40.98 + ], + [ + 68.73, + 40.97 + ], + [ + 68.68, + 40.96 + ], + [ + 68.64, + 40.95 + ], + [ + 68.64, + 40.97 + ], + [ + 68.66, + 40.98 + ], + [ + 68.67, + 40.98 + ], + [ + 68.66, + 40.99 + ], + [ + 68.66, + 41 + ], + [ + 68.64, + 41 + ], + [ + 68.6, + 41.03 + ], + [ + 68.57, + 41.01 + ], + [ + 68.55, + 41.01 + ], + [ + 68.53, + 41.01 + ], + [ + 68.52, + 41.01 + ], + [ + 68.58, + 40.57 + ], + [ + 68.54, + 40.58 + ], + [ + 67.98, + 40.84 + ], + [ + 67.97, + 40.85 + ], + [ + 68.05, + 41.04 + ], + [ + 67.99, + 41.07 + ], + [ + 67.99, + 41.08 + ], + [ + 68.16, + 41.05 + ], + [ + 68.2, + 41.21 + ], + [ + 67.94, + 41.25 + ], + [ + 67.97, + 41.13 + ], + [ + 66.71, + 41.14 + ], + [ + 66.53, + 41.88 + ], + [ + 66, + 41.94 + ], + [ + 66.1, + 42.94 + ], + [ + 65.84, + 42.86 + ], + [ + 65, + 43.72 + ], + [ + 64.53, + 43.57 + ], + [ + 63.35, + 43.65 + ], + [ + 62, + 43.51 + ], + [ + 61.11, + 44.36 + ], + [ + 58.75, + 45.51 + ], + [ + 59.3, + 46.01 + ], + [ + 58.8, + 45.9 + ], + [ + 58.61, + 45.58 + ], + [ + 56, + 45 + ], + [ + 56, + 41.32 + ], + [ + 55.43, + 41.28 + ], + [ + 54.93, + 41.93 + ], + [ + 54.22, + 42.38 + ], + [ + 52.98, + 42.12 + ], + [ + 52.45, + 41.76 + ], + [ + 52.44, + 42.15 + ], + [ + 52.75, + 42.71 + ], + [ + 51.9, + 42.83 + ], + [ + 51.68, + 43.18 + ], + [ + 51.28, + 43.15 + ], + [ + 51.37, + 43.45 + ], + [ + 50.84, + 44.19 + ], + [ + 50.31, + 44.33 + ], + [ + 50.24, + 44.54 + ], + [ + 50.8, + 44.63 + ], + [ + 51.1, + 44.47 + ], + [ + 51.6, + 44.51 + ], + [ + 51.32, + 44.6 + ], + [ + 51.2, + 44.89 + ], + [ + 51.3, + 45.23 + ], + [ + 51.73, + 45.4 + ], + [ + 53.7, + 45.31 + ], + [ + 53.09, + 45.4 + ], + [ + 52.98, + 45.66 + ], + [ + 53.04, + 45.89 + ], + [ + 53.26, + 45.89 + ], + [ + 53.39, + 46.47 + ], + [ + 52.89, + 47.01 + ], + [ + 52.33, + 47.07 + ], + [ + 51.84, + 46.93 + ], + [ + 51.2, + 47.12 + ], + [ + 50.49, + 46.97 + ], + [ + 49.92, + 46.57 + ], + [ + 49.84, + 46.19 + ], + [ + 49.31, + 46.27 + ], + [ + 49.01, + 46.42 + ], + [ + 48.98, + 46.43 + ], + [ + 48.97, + 46.44 + ], + [ + 48.95, + 46.44 + ], + [ + 48.91, + 46.45 + ], + [ + 48.91, + 46.46 + ], + [ + 48.85, + 46.48 + ], + [ + 48.83, + 46.48 + ], + [ + 48.82, + 46.49 + ], + [ + 48.81, + 46.5 + ], + [ + 48.8, + 46.51 + ], + [ + 48.79, + 46.52 + ], + [ + 48.79, + 46.54 + ], + [ + 48.78, + 46.54 + ], + [ + 48.76, + 46.54 + ], + [ + 48.75, + 46.55 + ], + [ + 48.74, + 46.55 + ], + [ + 48.73, + 46.55 + ], + [ + 48.7, + 46.56 + ], + [ + 48.68, + 46.56 + ], + [ + 48.56, + 46.58 + ], + [ + 48.56, + 46.59 + ], + [ + 48.51, + 46.68 + ], + [ + 48.52, + 46.68 + ], + [ + 49, + 46.74 + ], + [ + 48.52, + 47.41 + ], + [ + 48.11, + 47.74 + ], + [ + 47.19, + 47.76 + ], + [ + 47.11, + 48.13 + ], + [ + 47.12, + 48.27 + ], + [ + 46.49, + 48.43 + ], + [ + 46.66, + 48.75 + ], + [ + 46.69, + 48.79 + ], + [ + 47.03, + 49.09 + ], + [ + 46.78, + 49.34 + ], + [ + 46.84, + 49.61 + ], + [ + 46.9, + 49.86 + ], + [ + 47.35, + 50.09 + ], + [ + 47.3, + 50.3 + ], + [ + 47.61, + 50.46 + ], + [ + 47.99, + 50.18 + ], + [ + 48.03, + 50.14 + ], + [ + 48.05, + 50.13 + ], + [ + 48.05, + 50.12 + ], + [ + 48.05, + 50.11 + ], + [ + 48.07, + 50.1 + ], + [ + 48.08, + 50.1 + ], + [ + 48.1, + 50.09 + ], + [ + 48.11, + 50.07 + ], + [ + 48.11, + 50.06 + ], + [ + 48.32, + 49.87 + ] + ], + [ + [ + 68.48, + 42.49 + ], + [ + 68.33, + 42.25 + ], + [ + 68.61, + 42.39 + ], + [ + 68.48, + 42.49 + ] + ], + [ + [ + 59.5, + 46.33 + ], + [ + 59.77, + 46.08 + ], + [ + 59.79, + 46.29 + ], + [ + 59.5, + 46.33 + ] + ], + [ + [ + 61.44, + 46.68 + ], + [ + 61.17, + 46.59 + ], + [ + 61.27, + 46.47 + ], + [ + 61.44, + 46.68 + ] + ], + [ + [ + 60.53, + 46.77 + ], + [ + 60.79, + 46.65 + ], + [ + 60.82, + 46.75 + ], + [ + 60.53, + 46.77 + ] + ], + [ + [ + 78.75, + 46.38 + ], + [ + 79.23, + 46.6 + ], + [ + 79.15, + 46.82 + ], + [ + 78.57, + 46.74 + ], + [ + 78.31, + 46.45 + ], + [ + 77.87, + 46.66 + ], + [ + 77.12, + 46.54 + ], + [ + 76.85, + 46.71 + ], + [ + 76.9, + 46.55 + ], + [ + 76.72, + 46.68 + ], + [ + 76.38, + 46.62 + ], + [ + 76.16, + 46.81 + ], + [ + 75.32, + 46.7 + ], + [ + 74.86, + 46.85 + ], + [ + 74.02, + 46.41 + ], + [ + 74, + 46.18 + ], + [ + 73.63, + 46.13 + ], + [ + 73.72, + 45.98 + ], + [ + 73.39, + 45.8 + ], + [ + 73.57, + 45.77 + ], + [ + 73.43, + 45.58 + ], + [ + 74.17, + 45.06 + ], + [ + 74.05, + 45.32 + ], + [ + 74.27, + 45.61 + ], + [ + 74.23, + 45.98 + ], + [ + 74.75, + 46.09 + ], + [ + 74.9, + 46.41 + ], + [ + 75.45, + 46.52 + ], + [ + 75.37, + 46.57 + ], + [ + 75.5, + 46.68 + ], + [ + 75.67, + 46.65 + ], + [ + 75.47, + 46.62 + ], + [ + 75.63, + 46.48 + ], + [ + 76.29, + 46.58 + ], + [ + 77.43, + 46.51 + ], + [ + 78.05, + 46.31 + ], + [ + 78.75, + 46.38 + ] + ], + [ + [ + 60.21, + 46.68 + ], + [ + 59.97, + 46.5 + ], + [ + 60.12, + 46.36 + ], + [ + 60.72, + 46.38 + ], + [ + 60.8, + 46.09 + ], + [ + 61.24, + 46.26 + ], + [ + 61.26, + 46.48 + ], + [ + 60.82, + 46.49 + ], + [ + 60.75, + 46.64 + ], + [ + 60.47, + 46.63 + ], + [ + 60.42, + 46.48 + ], + [ + 60.21, + 46.68 + ] + ], + [ + [ + 60.27, + 46.1 + ], + [ + 59.72, + 46.05 + ], + [ + 59.68, + 45.68 + ], + [ + 59.81, + 45.95 + ], + [ + 60.42, + 45.83 + ], + [ + 60.75, + 46.04 + ], + [ + 60.27, + 46.1 + ] + ], + [ + [ + 47.53, + 48.92 + ], + [ + 47.29, + 49.04 + ], + [ + 47.37, + 48.83 + ], + [ + 47.53, + 48.92 + ] + ], + [ + [ + 75.39, + 49.95 + ], + [ + 75.2, + 49.79 + ], + [ + 75.59, + 49.86 + ], + [ + 75.39, + 49.95 + ] + ], + [ + [ + 64.12, + 50.15 + ], + [ + 64.29, + 50.47 + ], + [ + 64.02, + 50.37 + ], + [ + 64.07, + 50.08 + ], + [ + 64.12, + 50.15 + ] + ], + [ + [ + 69.17, + 50.58 + ], + [ + 68.79, + 50.54 + ], + [ + 68.64, + 50.25 + ], + [ + 69.13, + 50.19 + ], + [ + 69.21, + 50.32 + ], + [ + 68.99, + 50.4 + ], + [ + 69.17, + 50.57 + ], + [ + 69.17, + 50.58 + ] + ], + [ + [ + 71.91, + 54.03 + ], + [ + 71.84, + 53.98 + ], + [ + 71.83, + 53.93 + ], + [ + 71.89, + 53.82 + ], + [ + 71.85, + 53.98 + ], + [ + 71.98, + 53.97 + ], + [ + 72.03, + 53.93 + ], + [ + 72.07, + 53.96 + ], + [ + 71.91, + 54.03 + ] + ], + [ + [ + 73.03, + 53.38 + ], + [ + 73.39, + 53.11 + ], + [ + 73.39, + 53.37 + ], + [ + 73.03, + 53.38 + ] + ], + [ + [ + 72.95, + 53.93 + ], + [ + 72.82, + 53.83 + ], + [ + 72.99, + 53.74 + ], + [ + 72.95, + 53.93 + ] + ], + [ + [ + 64.81, + 52.8 + ], + [ + 64.6, + 52.5 + ], + [ + 64.93, + 52.68 + ], + [ + 64.81, + 52.8 + ] + ], + [ + [ + 69.48, + 50.56 + ], + [ + 69.39, + 50.43 + ], + [ + 69.57, + 50.45 + ], + [ + 69.48, + 50.56 + ] + ], + [ + [ + 77.3, + 43.93 + ], + [ + 77.08, + 43.91 + ], + [ + 77.1, + 43.78 + ], + [ + 77.89, + 43.71 + ], + [ + 78.18, + 43.83 + ], + [ + 77.3, + 43.93 + ] + ], + [ + [ + 77.42, + 53.33 + ], + [ + 77.29, + 53.25 + ], + [ + 77.48, + 53.21 + ], + [ + 77.42, + 53.33 + ] + ], + [ + [ + 80.6, + 46.69 + ], + [ + 80.82, + 46.49 + ], + [ + 81.21, + 46.51 + ], + [ + 81.19, + 46.67 + ], + [ + 80.6, + 46.69 + ] + ], + [ + [ + 81.55, + 46.5 + ], + [ + 81.37, + 46.01 + ], + [ + 82.13, + 45.73 + ], + [ + 81.97, + 46.32 + ], + [ + 81.55, + 46.5 + ] + ], + [ + [ + 85.68, + 48.81 + ], + [ + 85.52, + 48.71 + ], + [ + 85.78, + 48.66 + ], + [ + 86.03, + 48.81 + ], + [ + 85.68, + 48.81 + ] + ], + [ + [ + 83.94, + 49.41 + ], + [ + 83.66, + 49.53 + ], + [ + 83.85, + 49.65 + ], + [ + 83.39, + 49.64 + ], + [ + 83.67, + 49.42 + ], + [ + 83.94, + 49.41 + ] + ], + [ + [ + 84.68, + 47.78 + ], + [ + 84.77, + 47.88 + ], + [ + 83.52, + 48.25 + ], + [ + 83.97, + 48.34 + ], + [ + 83.54, + 48.45 + ], + [ + 83.58, + 48.94 + ], + [ + 84.49, + 49.21 + ], + [ + 84.11, + 49.3 + ], + [ + 84.16, + 49.12 + ], + [ + 83.52, + 48.95 + ], + [ + 83.38, + 48.5 + ], + [ + 83.6, + 48.37 + ], + [ + 83.5, + 48.24 + ], + [ + 83.03, + 48.27 + ], + [ + 83.04, + 48.17 + ], + [ + 84.33, + 47.69 + ], + [ + 84.68, + 47.78 + ] + ] + ], + [ + [ + [ + 60.19, + 46.01 + ], + [ + 60.48, + 46.01 + ], + [ + 60.4, + 45.9 + ], + [ + 60.05, + 45.95 + ], + [ + 60.19, + 46.01 + ] + ] + ] + ] + }, + "properties": { + "A3": "KAZ" + } + }, + { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + -16.67, + 12.36 + ], + [ + -16.38, + 12.36 + ], + [ + -16.07, + 12.47 + ], + [ + -15.68, + 12.42 + ], + [ + -15.17, + 12.69 + ], + [ + -13.71, + 12.68 + ], + [ + -13.71, + 12.26 + ], + [ + -13.72, + 12.25 + ], + [ + -13.79, + 12.25 + ], + [ + -13.81, + 12.26 + ], + [ + -13.93, + 12.21 + ], + [ + -13.7, + 12.01 + ], + [ + -13.71, + 11.71 + ], + [ + -14.66, + 11.5 + ], + [ + -14.92, + 11.07 + ], + [ + -14.92, + 11.06 + ], + [ + -14.93, + 11.05 + ], + [ + -14.96, + 10.98 + ], + [ + -15.1, + 10.94 + ], + [ + -14.9, + 11.17 + ], + [ + -14.95, + 11.33 + ], + [ + -15.21, + 11.07 + ], + [ + -15.15, + 11.27 + ], + [ + -15.26, + 11.11 + ], + [ + -15.42, + 11.3 + ], + [ + -15.2, + 11.49 + ], + [ + -15.5, + 11.35 + ], + [ + -15.28, + 11.62 + ], + [ + -14.99, + 11.62 + ], + [ + -15.33, + 11.69 + ], + [ + -15.43, + 11.54 + ], + [ + -15.39, + 11.7 + ], + [ + -15.54, + 11.68 + ], + [ + -15.47, + 11.8 + ], + [ + -15.55, + 11.72 + ], + [ + -15.51, + 11.78 + ], + [ + -15.38, + 11.89 + ], + [ + -15.01, + 11.99 + ], + [ + -15.41, + 11.96 + ], + [ + -15.81, + 11.74 + ], + [ + -15.78, + 11.88 + ], + [ + -15.95, + 11.73 + ], + [ + -15.8, + 12.02 + ], + [ + -15.98, + 12.09 + ], + [ + -15.93, + 11.95 + ], + [ + -16.1, + 11.88 + ], + [ + -16.34, + 12.02 + ], + [ + -16.11, + 12.34 + ], + [ + -16.35, + 12.19 + ], + [ + -16.54, + 12.34 + ], + [ + -16.44, + 12.18 + ], + [ + -16.67, + 12.36 + ] + ] + ], + [ + [ + [ + -16.27, + 11.85 + ], + [ + -16.29, + 11.98 + ], + [ + -16.17, + 11.88 + ], + [ + -16.27, + 11.85 + ] + ] + ], + [ + [ + [ + -16.16, + 11.88 + ], + [ + -16.11, + 11.85 + ], + [ + -15.98, + 11.88 + ], + [ + -16.08, + 11.76 + ], + [ + -16.16, + 11.88 + ] + ] + ], + [ + [ + [ + -16.18, + 11.03 + ], + [ + -16.25, + 11.1 + ], + [ + -16.06, + 11.19 + ], + [ + -16.18, + 11.03 + ] + ] + ] + ] + }, + "properties": { + "A3": "GNB" + } + }, + { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + -63.09, + 18.05 + ], + [ + -63.08, + 18.05 + ], + [ + -63.07, + 18.06 + ], + [ + -63.06, + 18.06 + ], + [ + -63.04, + 18.06 + ], + [ + -63.02, + 18.06 + ], + [ + -63.01, + 18.06 + ], + [ + -63.02, + 18.06 + ], + [ + -63.04, + 18.01 + ], + [ + -63.09, + 18.05 + ] + ] + ], + [ + [ + [ + 7.21, + 53.24 + ], + [ + 7.21, + 53.23 + ], + [ + 7.21, + 53.22 + ], + [ + 7.21, + 53.18 + ], + [ + 7.2, + 53.18 + ], + [ + 7.2, + 53.17 + ], + [ + 7.2, + 53.07 + ], + [ + 7.2, + 53.06 + ], + [ + 7.06, + 52.64 + ], + [ + 6.77, + 52.65 + ], + [ + 6.73, + 52.62 + ], + [ + 6.73, + 52.61 + ], + [ + 6.73, + 52.56 + ], + [ + 6.72, + 52.56 + ], + [ + 6.73, + 52.56 + ], + [ + 7.03, + 52.27 + ], + [ + 7.04, + 52.27 + ], + [ + 6.69, + 52.05 + ], + [ + 6.73, + 51.9 + ], + [ + 6.11, + 51.89 + ], + [ + 6.12, + 51.89 + ], + [ + 6.15, + 51.84 + ], + [ + 6.14, + 51.85 + ], + [ + 6.11, + 51.85 + ], + [ + 6.1, + 51.85 + ], + [ + 6.06, + 51.87 + ], + [ + 6.06, + 51.86 + ], + [ + 6.01, + 51.73 + ], + [ + 6.02, + 51.73 + ], + [ + 6.18, + 51.54 + ], + [ + 6.2, + 51.53 + ], + [ + 6.21, + 51.51 + ], + [ + 6.11, + 51.26 + ], + [ + 6.1, + 51.26 + ], + [ + 6.09, + 51.12 + ], + [ + 6.08, + 51.12 + ], + [ + 5.89, + 51.01 + ], + [ + 6.02, + 50.98 + ], + [ + 6.02, + 50.75 + ], + [ + 5.68, + 50.76 + ], + [ + 5.69, + 50.76 + ], + [ + 5.68, + 50.81 + ], + [ + 5.67, + 50.82 + ], + [ + 5.67, + 50.88 + ], + [ + 5.68, + 50.89 + ], + [ + 5.7, + 50.9 + ], + [ + 5.7, + 50.91 + ], + [ + 5.73, + 50.93 + ], + [ + 5.76, + 50.95 + ], + [ + 5.76, + 50.96 + ], + [ + 5.74, + 50.96 + ], + [ + 5.72, + 50.96 + ], + [ + 5.73, + 50.97 + ], + [ + 5.75, + 50.98 + ], + [ + 5.75, + 50.99 + ], + [ + 5.76, + 51.03 + ], + [ + 5.77, + 51.05 + ], + [ + 5.77, + 51.06 + ], + [ + 5.8, + 51.06 + ], + [ + 5.8, + 51.08 + ], + [ + 5.8, + 51.09 + ], + [ + 5.82, + 51.09 + ], + [ + 5.81, + 51.11 + ], + [ + 5.83, + 51.13 + ], + [ + 5.84, + 51.15 + ], + [ + 5.67, + 51.19 + ], + [ + 5.63, + 51.21 + ], + [ + 5.62, + 51.21 + ], + [ + 5.13, + 51.32 + ], + [ + 5.04, + 51.49 + ], + [ + 4.93, + 51.4 + ], + [ + 4.82, + 51.42 + ], + [ + 4.84, + 51.48 + ], + [ + 4.83, + 51.48 + ], + [ + 4.73, + 51.49 + ], + [ + 4.62, + 51.43 + ], + [ + 4.61, + 51.43 + ], + [ + 4.45, + 51.47 + ], + [ + 4.38, + 51.45 + ], + [ + 4.31, + 51.38 + ], + [ + 4.3, + 51.38 + ], + [ + 4.28, + 51.38 + ], + [ + 4.24, + 51.37 + ], + [ + 3.44, + 51.54 + ], + [ + 3.86, + 51.6 + ], + [ + 4.26, + 51.44 + ], + [ + 3.98, + 51.59 + ], + [ + 4.11, + 51.65 + ], + [ + 3.69, + 51.68 + ], + [ + 4.31, + 51.65 + ], + [ + 3.84, + 51.76 + ], + [ + 3.96, + 51.84 + ], + [ + 4.34, + 51.65 + ], + [ + 4.61, + 51.7 + ], + [ + 3.96, + 51.96 + ], + [ + 4.26, + 51.9 + ], + [ + 4.1, + 51.98 + ], + [ + 4.61, + 52.47 + ], + [ + 4.73, + 52.96 + ], + [ + 5.27, + 52.76 + ], + [ + 4.92, + 52.38 + ], + [ + 5.13, + 52.32 + ], + [ + 5.58, + 52.6 + ], + [ + 5.86, + 52.58 + ], + [ + 5.6, + 52.64 + ], + [ + 5.71, + 52.84 + ], + [ + 5.36, + 52.87 + ], + [ + 5.55, + 53.29 + ], + [ + 6.75, + 53.47 + ], + [ + 7.21, + 53.24 + ] + ] + ], + [ + [ + [ + 4.23, + 51.35 + ], + [ + 4.16, + 51.29 + ], + [ + 4.15, + 51.29 + ], + [ + 4.14, + 51.28 + ], + [ + 4.13, + 51.28 + ], + [ + 4.12, + 51.27 + ], + [ + 4.1, + 51.26 + ], + [ + 4.09, + 51.26 + ], + [ + 4.07, + 51.25 + ], + [ + 3.97, + 51.23 + ], + [ + 3.97, + 51.22 + ], + [ + 3.96, + 51.22 + ], + [ + 3.95, + 51.22 + ], + [ + 3.94, + 51.21 + ], + [ + 3.92, + 51.21 + ], + [ + 3.91, + 51.21 + ], + [ + 3.86, + 51.21 + ], + [ + 3.8, + 51.21 + ], + [ + 3.79, + 51.22 + ], + [ + 3.79, + 51.23 + ], + [ + 3.79, + 51.25 + ], + [ + 3.8, + 51.26 + ], + [ + 3.79, + 51.26 + ], + [ + 3.78, + 51.26 + ], + [ + 3.77, + 51.26 + ], + [ + 3.76, + 51.26 + ], + [ + 3.76, + 51.27 + ], + [ + 3.75, + 51.27 + ], + [ + 3.74, + 51.27 + ], + [ + 3.73, + 51.27 + ], + [ + 3.72, + 51.27 + ], + [ + 3.71, + 51.27 + ], + [ + 3.7, + 51.27 + ], + [ + 3.69, + 51.28 + ], + [ + 3.68, + 51.28 + ], + [ + 3.64, + 51.29 + ], + [ + 3.63, + 51.29 + ], + [ + 3.61, + 51.3 + ], + [ + 3.59, + 51.3 + ], + [ + 3.59, + 51.31 + ], + [ + 3.59, + 51.3 + ], + [ + 3.58, + 51.3 + ], + [ + 3.59, + 51.29 + ], + [ + 3.58, + 51.29 + ], + [ + 3.57, + 51.29 + ], + [ + 3.56, + 51.3 + ], + [ + 3.56, + 51.29 + ], + [ + 3.54, + 51.29 + ], + [ + 3.54, + 51.28 + ], + [ + 3.53, + 51.28 + ], + [ + 3.53, + 51.29 + ], + [ + 3.52, + 51.29 + ], + [ + 3.52, + 51.28 + ], + [ + 3.52, + 51.27 + ], + [ + 3.52, + 51.26 + ], + [ + 3.53, + 51.25 + ], + [ + 3.52, + 51.25 + ], + [ + 3.51, + 51.25 + ], + [ + 3.51, + 51.24 + ], + [ + 3.49, + 51.24 + ], + [ + 3.48, + 51.24 + ], + [ + 3.47, + 51.24 + ], + [ + 3.46, + 51.24 + ], + [ + 3.45, + 51.24 + ], + [ + 3.44, + 51.24 + ], + [ + 3.43, + 51.25 + ], + [ + 3.43, + 51.24 + ], + [ + 3.43, + 51.25 + ], + [ + 3.42, + 51.25 + ], + [ + 3.42, + 51.26 + ], + [ + 3.41, + 51.26 + ], + [ + 3.4, + 51.26 + ], + [ + 3.4, + 51.27 + ], + [ + 3.39, + 51.27 + ], + [ + 3.38, + 51.27 + ], + [ + 3.38, + 51.28 + ], + [ + 3.38, + 51.29 + ], + [ + 3.37, + 51.3 + ], + [ + 3.38, + 51.3 + ], + [ + 3.36, + 51.32 + ], + [ + 3.37, + 51.32 + ], + [ + 3.37, + 51.33 + ], + [ + 3.38, + 51.33 + ], + [ + 3.38, + 51.34 + ], + [ + 3.37, + 51.35 + ], + [ + 3.37, + 51.36 + ], + [ + 3.37, + 51.37 + ], + [ + 4.23, + 51.35 + ] + ] + ], + [ + [ + [ + -68.31, + 12.2 + ], + [ + -68.39, + 12.31 + ], + [ + -68.21, + 12.11 + ], + [ + -68.31, + 12.2 + ] + ] + ], + [ + [ + [ + -68.86, + 12.08 + ], + [ + -69.16, + 12.39 + ], + [ + -68.74, + 12.04 + ], + [ + -68.86, + 12.08 + ] + ] + ] + ] + }, + "properties": { + "A3": "NLD" + } + }, + { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + 21.06, + 56.07 + ], + [ + 21.23, + 56.14 + ], + [ + 21.33, + 56.22 + ], + [ + 21.49, + 56.29 + ], + [ + 21.52, + 56.29 + ], + [ + 21.53, + 56.29 + ], + [ + 21.54, + 56.29 + ], + [ + 21.54, + 56.3 + ], + [ + 21.55, + 56.3 + ], + [ + 21.56, + 56.31 + ], + [ + 21.62, + 56.32 + ], + [ + 21.63, + 56.32 + ], + [ + 21.64, + 56.32 + ], + [ + 21.88, + 56.36 + ], + [ + 22.11, + 56.43 + ], + [ + 22.12, + 56.43 + ], + [ + 22.13, + 56.43 + ], + [ + 22.22, + 56.41 + ], + [ + 22.32, + 56.4 + ], + [ + 22.33, + 56.4 + ], + [ + 22.54, + 56.39 + ], + [ + 22.55, + 56.39 + ], + [ + 22.56, + 56.39 + ], + [ + 22.76, + 56.37 + ], + [ + 22.78, + 56.37 + ], + [ + 22.81, + 56.37 + ], + [ + 22.94, + 56.41 + ], + [ + 23.26, + 56.37 + ], + [ + 23.28, + 56.37 + ], + [ + 23.35, + 56.38 + ], + [ + 23.37, + 56.38 + ], + [ + 23.66, + 56.36 + ], + [ + 23.67, + 56.37 + ], + [ + 24.08, + 56.28 + ], + [ + 24.1, + 56.28 + ], + [ + 24.3, + 56.3 + ], + [ + 24.34, + 56.29 + ], + [ + 24.35, + 56.29 + ], + [ + 24.56, + 56.29 + ], + [ + 24.58, + 56.29 + ], + [ + 24.58, + 56.32 + ], + [ + 24.58, + 56.33 + ], + [ + 24.59, + 56.33 + ], + [ + 24.61, + 56.34 + ], + [ + 24.63, + 56.36 + ], + [ + 24.63, + 56.37 + ], + [ + 24.63, + 56.38 + ], + [ + 24.64, + 56.38 + ], + [ + 24.65, + 56.38 + ], + [ + 24.67, + 56.38 + ], + [ + 24.68, + 56.38 + ], + [ + 24.69, + 56.38 + ], + [ + 24.7, + 56.38 + ], + [ + 24.7, + 56.39 + ], + [ + 24.72, + 56.4 + ], + [ + 24.76, + 56.4 + ], + [ + 24.77, + 56.4 + ], + [ + 24.79, + 56.4 + ], + [ + 24.8, + 56.41 + ], + [ + 24.81, + 56.42 + ], + [ + 24.82, + 56.41 + ], + [ + 24.83, + 56.41 + ], + [ + 24.89, + 56.45 + ], + [ + 24.92, + 56.44 + ], + [ + 24.97, + 56.36 + ], + [ + 24.97, + 56.35 + ], + [ + 24.97, + 56.34 + ], + [ + 24.97, + 56.33 + ], + [ + 25.06, + 56.26 + ], + [ + 25.06, + 56.25 + ], + [ + 25.06, + 56.24 + ], + [ + 25.07, + 56.24 + ], + [ + 25.07, + 56.23 + ], + [ + 25.07, + 56.22 + ], + [ + 25.07, + 56.2 + ], + [ + 25.08, + 56.2 + ], + [ + 25.53, + 56.16 + ], + [ + 25.54, + 56.16 + ], + [ + 25.9, + 56 + ], + [ + 25.91, + 55.99 + ], + [ + 26.07, + 55.93 + ], + [ + 26.07, + 55.92 + ], + [ + 26.21, + 55.85 + ], + [ + 26.22, + 55.85 + ], + [ + 26.23, + 55.83 + ], + [ + 26.19, + 55.83 + ], + [ + 26.23, + 55.82 + ], + [ + 26.23, + 55.81 + ], + [ + 26.28, + 55.76 + ], + [ + 26.3, + 55.75 + ], + [ + 26.31, + 55.74 + ], + [ + 26.37, + 55.73 + ], + [ + 26.54, + 55.68 + ], + [ + 26.55, + 55.68 + ], + [ + 26.56, + 55.68 + ], + [ + 26.58, + 55.68 + ], + [ + 26.62, + 55.68 + ], + [ + 26.63, + 55.68 + ], + [ + 26.63, + 55.67 + ], + [ + 26.64, + 55.65 + ], + [ + 26.64, + 55.64 + ], + [ + 26.63, + 55.57 + ], + [ + 26.54, + 55.53 + ], + [ + 26.53, + 55.51 + ], + [ + 26.54, + 55.49 + ], + [ + 26.55, + 55.47 + ], + [ + 26.55, + 55.43 + ], + [ + 26.54, + 55.43 + ], + [ + 26.55, + 55.43 + ], + [ + 26.45, + 55.34 + ], + [ + 26.46, + 55.34 + ], + [ + 26.52, + 55.33 + ], + [ + 26.59, + 55.32 + ], + [ + 26.63, + 55.32 + ], + [ + 26.64, + 55.32 + ], + [ + 26.65, + 55.33 + ], + [ + 26.67, + 55.34 + ], + [ + 26.68, + 55.33 + ], + [ + 26.69, + 55.33 + ], + [ + 26.7, + 55.33 + ], + [ + 26.71, + 55.33 + ], + [ + 26.72, + 55.32 + ], + [ + 26.74, + 55.32 + ], + [ + 26.77, + 55.32 + ], + [ + 26.74, + 55.25 + ], + [ + 26.62, + 55.15 + ], + [ + 26.28, + 55.12 + ], + [ + 26.26, + 55.12 + ], + [ + 26.25, + 55.12 + ], + [ + 26.24, + 55.11 + ], + [ + 26.25, + 55.06 + ], + [ + 26.24, + 55.05 + ], + [ + 25.97, + 54.95 + ], + [ + 25.81, + 54.87 + ], + [ + 25.78, + 54.86 + ], + [ + 25.78, + 54.85 + ], + [ + 25.78, + 54.83 + ], + [ + 25.77, + 54.82 + ], + [ + 25.75, + 54.73 + ], + [ + 25.74, + 54.7 + ], + [ + 25.76, + 54.59 + ], + [ + 25.76, + 54.58 + ], + [ + 25.76, + 54.57 + ], + [ + 25.75, + 54.57 + ], + [ + 25.75, + 54.56 + ], + [ + 25.74, + 54.56 + ], + [ + 25.73, + 54.56 + ], + [ + 25.71, + 54.55 + ], + [ + 25.7, + 54.55 + ], + [ + 25.7, + 54.54 + ], + [ + 25.62, + 54.45 + ], + [ + 25.62, + 54.44 + ], + [ + 25.6, + 54.4 + ], + [ + 25.59, + 54.4 + ], + [ + 25.71, + 54.27 + ], + [ + 25.72, + 54.27 + ], + [ + 25.73, + 54.27 + ], + [ + 25.77, + 54.24 + ], + [ + 25.78, + 54.24 + ], + [ + 25.79, + 54.23 + ], + [ + 25.78, + 54.23 + ], + [ + 25.77, + 54.23 + ], + [ + 25.76, + 54.23 + ], + [ + 25.76, + 54.21 + ], + [ + 25.7, + 54.17 + ], + [ + 25.71, + 54.17 + ], + [ + 25.7, + 54.17 + ], + [ + 25.65, + 54.13 + ], + [ + 25.64, + 54.13 + ], + [ + 25.63, + 54.13 + ], + [ + 25.6, + 54.14 + ], + [ + 25.6, + 54.15 + ], + [ + 25.58, + 54.15 + ], + [ + 25.57, + 54.15 + ], + [ + 25.56, + 54.2 + ], + [ + 25.55, + 54.23 + ], + [ + 25.56, + 54.23 + ], + [ + 25.59, + 54.23 + ], + [ + 25.56, + 54.27 + ], + [ + 25.57, + 54.27 + ], + [ + 25.56, + 54.27 + ], + [ + 25.55, + 54.27 + ], + [ + 25.54, + 54.28 + ], + [ + 25.52, + 54.28 + ], + [ + 25.52, + 54.29 + ], + [ + 25.51, + 54.3 + ], + [ + 25.51, + 54.31 + ], + [ + 25.5, + 54.31 + ], + [ + 25.48, + 54.3 + ], + [ + 25.48, + 54.29 + ], + [ + 25.45, + 54.29 + ], + [ + 25.45, + 54.3 + ], + [ + 25.46, + 54.3 + ], + [ + 25.4, + 54.28 + ], + [ + 25.38, + 54.27 + ], + [ + 25.36, + 54.27 + ], + [ + 25.21, + 54.25 + ], + [ + 25.21, + 54.24 + ], + [ + 25.11, + 54.17 + ], + [ + 25.11, + 54.16 + ], + [ + 25.1, + 54.16 + ], + [ + 25.1, + 54.15 + ], + [ + 25.09, + 54.15 + ], + [ + 25.09, + 54.14 + ], + [ + 25.08, + 54.14 + ], + [ + 25.07, + 54.14 + ], + [ + 25.07, + 54.13 + ], + [ + 25.06, + 54.13 + ], + [ + 25.06, + 54.14 + ], + [ + 25.04, + 54.14 + ], + [ + 25.02, + 54.14 + ], + [ + 25.01, + 54.14 + ], + [ + 24.98, + 54.15 + ], + [ + 24.98, + 54.16 + ], + [ + 24.94, + 54.17 + ], + [ + 24.92, + 54.16 + ], + [ + 24.91, + 54.16 + ], + [ + 24.73, + 53.97 + ], + [ + 24.71, + 53.96 + ], + [ + 24.67, + 54.02 + ], + [ + 24.65, + 54.01 + ], + [ + 24.41, + 53.9 + ], + [ + 24.39, + 53.9 + ], + [ + 24.33, + 53.9 + ], + [ + 24.33, + 53.91 + ], + [ + 24.32, + 53.91 + ], + [ + 24.31, + 53.91 + ], + [ + 24.1, + 53.94 + ], + [ + 24.07, + 53.94 + ], + [ + 24.05, + 53.93 + ], + [ + 24.03, + 53.93 + ], + [ + 24.01, + 53.93 + ], + [ + 24, + 53.93 + ], + [ + 23.98, + 53.92 + ], + [ + 23.95, + 53.96 + ], + [ + 23.94, + 53.96 + ], + [ + 23.91, + 53.96 + ], + [ + 23.91, + 53.95 + ], + [ + 23.88, + 53.94 + ], + [ + 23.86, + 53.95 + ], + [ + 23.82, + 53.94 + ], + [ + 23.8, + 53.93 + ], + [ + 23.82, + 53.92 + ], + [ + 23.82, + 53.91 + ], + [ + 23.8, + 53.9 + ], + [ + 23.78, + 53.9 + ], + [ + 23.77, + 53.9 + ], + [ + 23.74, + 53.93 + ], + [ + 23.51, + 53.96 + ], + [ + 23.52, + 54.09 + ], + [ + 23.42, + 54.18 + ], + [ + 23.42, + 54.19 + ], + [ + 23.41, + 54.2 + ], + [ + 23.4, + 54.21 + ], + [ + 23.39, + 54.22 + ], + [ + 23.16, + 54.3 + ], + [ + 23.04, + 54.32 + ], + [ + 22.8, + 54.37 + ], + [ + 22.79, + 54.36 + ], + [ + 22.79, + 54.37 + ], + [ + 22.78, + 54.37 + ], + [ + 22.77, + 54.39 + ], + [ + 22.76, + 54.39 + ], + [ + 22.75, + 54.42 + ], + [ + 22.71, + 54.45 + ], + [ + 22.85, + 54.77 + ], + [ + 22.85, + 54.78 + ], + [ + 22.85, + 54.79 + ], + [ + 22.87, + 54.79 + ], + [ + 22.88, + 54.79 + ], + [ + 22.87, + 54.85 + ], + [ + 22.85, + 54.89 + ], + [ + 22.79, + 54.91 + ], + [ + 22.79, + 54.92 + ], + [ + 22.76, + 54.92 + ], + [ + 22.76, + 54.94 + ], + [ + 22.74, + 54.94 + ], + [ + 22.72, + 54.96 + ], + [ + 22.72, + 54.97 + ], + [ + 22.68, + 54.99 + ], + [ + 22.67, + 54.99 + ], + [ + 22.66, + 54.97 + ], + [ + 22.65, + 54.97 + ], + [ + 22.64, + 54.99 + ], + [ + 22.63, + 54.99 + ], + [ + 22.57, + 55.07 + ], + [ + 22.55, + 55.07 + ], + [ + 22.54, + 55.06 + ], + [ + 22.52, + 55.06 + ], + [ + 22.51, + 55.05 + ], + [ + 22.49, + 55.05 + ], + [ + 22.48, + 55.05 + ], + [ + 22.47, + 55.04 + ], + [ + 22.44, + 55.05 + ], + [ + 22.43, + 55.05 + ], + [ + 22.42, + 55.05 + ], + [ + 22.4, + 55.05 + ], + [ + 22.39, + 55.05 + ], + [ + 22.35, + 55.06 + ], + [ + 22.33, + 55.06 + ], + [ + 22.32, + 55.06 + ], + [ + 22.31, + 55.06 + ], + [ + 22.29, + 55.06 + ], + [ + 22.27, + 55.06 + ], + [ + 22.25, + 55.06 + ], + [ + 22.22, + 55.06 + ], + [ + 22.21, + 55.06 + ], + [ + 22.19, + 55.05 + ], + [ + 22.16, + 55.06 + ], + [ + 22.13, + 55.04 + ], + [ + 22.11, + 55.03 + ], + [ + 22.1, + 55.02 + ], + [ + 22.08, + 55.02 + ], + [ + 22.06, + 55.03 + ], + [ + 22.05, + 55.03 + ], + [ + 22.04, + 55.04 + ], + [ + 22.03, + 55.05 + ], + [ + 22.03, + 55.06 + ], + [ + 22.04, + 55.07 + ], + [ + 22.02, + 55.09 + ], + [ + 22.01, + 55.09 + ], + [ + 21.98, + 55.08 + ], + [ + 21.97, + 55.07 + ], + [ + 21.96, + 55.07 + ], + [ + 21.96, + 55.08 + ], + [ + 21.94, + 55.08 + ], + [ + 21.92, + 55.08 + ], + [ + 21.89, + 55.09 + ], + [ + 21.88, + 55.09 + ], + [ + 21.86, + 55.1 + ], + [ + 21.83, + 55.11 + ], + [ + 21.82, + 55.12 + ], + [ + 21.81, + 55.12 + ], + [ + 21.8, + 55.12 + ], + [ + 21.79, + 55.12 + ], + [ + 21.76, + 55.12 + ], + [ + 21.74, + 55.13 + ], + [ + 21.73, + 55.13 + ], + [ + 21.72, + 55.13 + ], + [ + 21.72, + 55.14 + ], + [ + 21.7, + 55.15 + ], + [ + 21.7, + 55.16 + ], + [ + 21.69, + 55.16 + ], + [ + 21.68, + 55.17 + ], + [ + 21.67, + 55.17 + ], + [ + 21.66, + 55.17 + ], + [ + 21.65, + 55.18 + ], + [ + 21.64, + 55.18 + ], + [ + 21.61, + 55.19 + ], + [ + 21.6, + 55.19 + ], + [ + 21.56, + 55.2 + ], + [ + 21.54, + 55.2 + ], + [ + 21.53, + 55.19 + ], + [ + 21.52, + 55.19 + ], + [ + 21.51, + 55.19 + ], + [ + 21.48, + 55.2 + ], + [ + 21.48, + 55.21 + ], + [ + 21.45, + 55.23 + ], + [ + 21.44, + 55.24 + ], + [ + 21.43, + 55.25 + ], + [ + 21.42, + 55.26 + ], + [ + 21.41, + 55.27 + ], + [ + 21.4, + 55.28 + ], + [ + 21.39, + 55.29 + ], + [ + 21.37, + 55.29 + ], + [ + 21.34, + 55.28 + ], + [ + 21.33, + 55.27 + ], + [ + 21.32, + 55.27 + ], + [ + 21.31, + 55.26 + ], + [ + 21.29, + 55.25 + ], + [ + 21.27, + 55.25 + ], + [ + 21.26, + 55.25 + ], + [ + 21.06, + 56.07 + ] + ] + ], + [ + [ + [ + 20.98, + 55.28 + ], + [ + 20.95, + 55.28 + ], + [ + 21.08, + 55.73 + ], + [ + 20.98, + 55.28 + ] + ] + ] + ] + }, + "properties": { + "A3": "LTU" + } + }, + { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + 22.14, + 48.45 + ], + [ + 22.15, + 48.48 + ], + [ + 22.16, + 48.53 + ], + [ + 22.16, + 48.56 + ], + [ + 22.19, + 48.61 + ], + [ + 22.26, + 48.65 + ], + [ + 22.27, + 48.65 + ], + [ + 22.27, + 48.66 + ], + [ + 22.57, + 49.09 + ], + [ + 22.58, + 49.1 + ], + [ + 22.6, + 49.09 + ], + [ + 22.61, + 49.08 + ], + [ + 22.64, + 49.06 + ], + [ + 22.65, + 49.06 + ], + [ + 22.65, + 49.05 + ], + [ + 22.89, + 49.01 + ], + [ + 22.71, + 49.17 + ], + [ + 22.76, + 49.64 + ], + [ + 22.98, + 49.84 + ], + [ + 22.99, + 49.84 + ], + [ + 23.05, + 49.89 + ], + [ + 23.64, + 50.32 + ], + [ + 23.69, + 50.34 + ], + [ + 23.69, + 50.35 + ], + [ + 24, + 50.41 + ], + [ + 24.09, + 50.66 + ], + [ + 24.09, + 50.67 + ], + [ + 24.02, + 50.75 + ], + [ + 23.97, + 50.78 + ], + [ + 23.97, + 50.82 + ], + [ + 24.04, + 50.84 + ], + [ + 24.04, + 50.83 + ], + [ + 24.08, + 50.83 + ], + [ + 24.08, + 50.84 + ], + [ + 24.12, + 50.85 + ], + [ + 24.13, + 50.85 + ], + [ + 24.14, + 50.86 + ], + [ + 24.09, + 50.89 + ], + [ + 24.08, + 50.89 + ], + [ + 24.06, + 50.89 + ], + [ + 24.04, + 50.9 + ], + [ + 24, + 50.93 + ], + [ + 23.97, + 50.97 + ], + [ + 23.92, + 51.01 + ], + [ + 23.93, + 51.01 + ], + [ + 23.93, + 51.02 + ], + [ + 23.93, + 51.04 + ], + [ + 23.88, + 51.08 + ], + [ + 23.86, + 51.1 + ], + [ + 23.87, + 51.15 + ], + [ + 23.86, + 51.15 + ], + [ + 23.84, + 51.16 + ], + [ + 23.81, + 51.18 + ], + [ + 23.73, + 51.23 + ], + [ + 23.73, + 51.24 + ], + [ + 23.71, + 51.27 + ], + [ + 23.71, + 51.28 + ], + [ + 23.71, + 51.27 + ], + [ + 23.69, + 51.29 + ], + [ + 23.65, + 51.3 + ], + [ + 23.64, + 51.31 + ], + [ + 23.64, + 51.32 + ], + [ + 23.62, + 51.51 + ], + [ + 23.65, + 51.56 + ], + [ + 23.65, + 51.57 + ], + [ + 24.12, + 51.67 + ], + [ + 24.31, + 51.82 + ], + [ + 24.32, + 51.83 + ], + [ + 24.33, + 51.84 + ], + [ + 24.34, + 51.85 + ], + [ + 24.57, + 51.89 + ], + [ + 24.6, + 51.9 + ], + [ + 24.61, + 51.9 + ], + [ + 24.94, + 51.89 + ], + [ + 24.96, + 51.9 + ], + [ + 24.98, + 51.91 + ], + [ + 25.09, + 51.95 + ], + [ + 25.49, + 51.93 + ], + [ + 25.78, + 51.93 + ], + [ + 25.77, + 51.94 + ], + [ + 25.82, + 51.93 + ], + [ + 25.83, + 51.93 + ], + [ + 25.83, + 51.92 + ], + [ + 25.9, + 51.92 + ], + [ + 25.93, + 51.91 + ], + [ + 25.94, + 51.92 + ], + [ + 25.95, + 51.92 + ], + [ + 26.66, + 51.82 + ], + [ + 26.7, + 51.82 + ], + [ + 26.76, + 51.79 + ], + [ + 27.21, + 51.77 + ], + [ + 27.24, + 51.6 + ], + [ + 27.73, + 51.6 + ], + [ + 27.76, + 51.47 + ], + [ + 27.86, + 51.63 + ], + [ + 28.26, + 51.68 + ], + [ + 28.36, + 51.56 + ], + [ + 28.35, + 51.54 + ], + [ + 28.74, + 51.47 + ], + [ + 28.91, + 51.59 + ], + [ + 28.97, + 51.59 + ], + [ + 28.97, + 51.58 + ], + [ + 28.99, + 51.57 + ], + [ + 29, + 51.57 + ], + [ + 29.07, + 51.62 + ], + [ + 29.09, + 51.63 + ], + [ + 29.1, + 51.64 + ], + [ + 29.14, + 51.65 + ], + [ + 29.15, + 51.65 + ], + [ + 29.16, + 51.65 + ], + [ + 29.18, + 51.65 + ], + [ + 29.17, + 51.64 + ], + [ + 29.16, + 51.63 + ], + [ + 29.17, + 51.63 + ], + [ + 29.19, + 51.62 + ], + [ + 29.19, + 51.61 + ], + [ + 29.21, + 51.59 + ], + [ + 29.2, + 51.58 + ], + [ + 29.21, + 51.58 + ], + [ + 29.21, + 51.57 + ], + [ + 29.22, + 51.57 + ], + [ + 29.45, + 51.41 + ], + [ + 29.46, + 51.41 + ], + [ + 29.95, + 51.49 + ], + [ + 29.95, + 51.47 + ], + [ + 29.97, + 51.47 + ], + [ + 29.97, + 51.48 + ], + [ + 29.99, + 51.48 + ], + [ + 30.5, + 51.28 + ], + [ + 30.53, + 51.27 + ], + [ + 30.55, + 51.26 + ], + [ + 30.56, + 51.26 + ], + [ + 30.57, + 51.27 + ], + [ + 30.59, + 51.28 + ], + [ + 30.62, + 51.33 + ], + [ + 30.64, + 51.33 + ], + [ + 30.66, + 51.35 + ], + [ + 30.63, + 51.36 + ], + [ + 30.64, + 51.39 + ], + [ + 30.63, + 51.41 + ], + [ + 30.62, + 51.43 + ], + [ + 30.59, + 51.43 + ], + [ + 30.58, + 51.44 + ], + [ + 30.59, + 51.45 + ], + [ + 30.6, + 51.46 + ], + [ + 30.59, + 51.48 + ], + [ + 30.59, + 51.5 + ], + [ + 30.57, + 51.51 + ], + [ + 30.58, + 51.53 + ], + [ + 30.59, + 51.54 + ], + [ + 30.57, + 51.55 + ], + [ + 30.56, + 51.55 + ], + [ + 30.54, + 51.55 + ], + [ + 30.53, + 51.56 + ], + [ + 30.53, + 51.57 + ], + [ + 30.54, + 51.57 + ], + [ + 30.55, + 51.58 + ], + [ + 30.54, + 51.58 + ], + [ + 30.53, + 51.59 + ], + [ + 30.52, + 51.59 + ], + [ + 30.51, + 51.59 + ], + [ + 30.53, + 51.6 + ], + [ + 30.54, + 51.61 + ], + [ + 30.53, + 51.62 + ], + [ + 30.55, + 51.62 + ], + [ + 30.55, + 51.64 + ], + [ + 30.56, + 51.64 + ], + [ + 30.57, + 51.64 + ], + [ + 30.57, + 51.66 + ], + [ + 30.58, + 51.67 + ], + [ + 30.58, + 51.68 + ], + [ + 30.57, + 51.69 + ], + [ + 30.56, + 51.71 + ], + [ + 30.58, + 51.71 + ], + [ + 30.59, + 51.71 + ], + [ + 30.62, + 51.71 + ], + [ + 30.63, + 51.73 + ], + [ + 30.64, + 51.74 + ], + [ + 30.65, + 51.75 + ], + [ + 30.65, + 51.76 + ], + [ + 30.63, + 51.76 + ], + [ + 30.61, + 51.76 + ], + [ + 30.61, + 51.77 + ], + [ + 30.63, + 51.77 + ], + [ + 30.64, + 51.78 + ], + [ + 30.65, + 51.78 + ], + [ + 30.66, + 51.79 + ], + [ + 30.67, + 51.8 + ], + [ + 30.67, + 51.81 + ], + [ + 30.66, + 51.82 + ], + [ + 30.67, + 51.82 + ], + [ + 30.68, + 51.82 + ], + [ + 30.69, + 51.83 + ], + [ + 30.7, + 51.86 + ], + [ + 30.71, + 51.87 + ], + [ + 30.73, + 51.88 + ], + [ + 30.73, + 51.89 + ], + [ + 30.74, + 51.89 + ], + [ + 30.75, + 51.9 + ], + [ + 30.76, + 51.9 + ], + [ + 30.77, + 51.9 + ], + [ + 30.79, + 51.9 + ], + [ + 30.8, + 51.9 + ], + [ + 30.81, + 51.91 + ], + [ + 30.83, + 51.92 + ], + [ + 30.82, + 51.93 + ], + [ + 30.81, + 51.94 + ], + [ + 30.81, + 51.95 + ], + [ + 30.85, + 51.96 + ], + [ + 30.86, + 51.97 + ], + [ + 30.87, + 51.97 + ], + [ + 30.89, + 51.98 + ], + [ + 30.9, + 51.98 + ], + [ + 30.91, + 51.99 + ], + [ + 30.89, + 52 + ], + [ + 30.92, + 52.01 + ], + [ + 30.95, + 52.03 + ], + [ + 30.95, + 52.05 + ], + [ + 30.94, + 52.06 + ], + [ + 30.93, + 52.07 + ], + [ + 30.94, + 52.08 + ], + [ + 30.95, + 52.08 + ], + [ + 30.96, + 52.08 + ], + [ + 30.98, + 52.08 + ], + [ + 31.17, + 52.08 + ], + [ + 31.18, + 52.08 + ], + [ + 31.3, + 52.05 + ], + [ + 31.3, + 52.06 + ], + [ + 31.32, + 52.08 + ], + [ + 31.48, + 52.12 + ], + [ + 31.49, + 52.12 + ], + [ + 31.5, + 52.12 + ], + [ + 31.54, + 52.12 + ], + [ + 31.78, + 52.11 + ], + [ + 32.2, + 52.07 + ], + [ + 32.38, + 52.34 + ], + [ + 32.82, + 52.27 + ], + [ + 32.83, + 52.27 + ], + [ + 33.41, + 52.36 + ], + [ + 33.42, + 52.36 + ], + [ + 33.84, + 52.36 + ], + [ + 34.42, + 51.83 + ], + [ + 34.08, + 51.67 + ], + [ + 34.31, + 51.37 + ], + [ + 34.32, + 51.37 + ], + [ + 34.34, + 51.36 + ], + [ + 34.33, + 51.35 + ], + [ + 34.32, + 51.34 + ], + [ + 34.32, + 51.33 + ], + [ + 34.31, + 51.33 + ], + [ + 34.26, + 51.28 + ], + [ + 34.25, + 51.28 + ], + [ + 34.23, + 51.27 + ], + [ + 34.24, + 51.26 + ], + [ + 34.8, + 51.17 + ], + [ + 34.81, + 51.17 + ], + [ + 35.12, + 51.23 + ], + [ + 35.28, + 51.07 + ], + [ + 35.29, + 51.07 + ], + [ + 35.34, + 50.96 + ], + [ + 35.33, + 50.96 + ], + [ + 35.46, + 50.71 + ], + [ + 35.46, + 50.7 + ], + [ + 35.42, + 50.66 + ], + [ + 35.41, + 50.66 + ], + [ + 35.55, + 50.46 + ], + [ + 35.63, + 50.35 + ], + [ + 36.14, + 50.44 + ], + [ + 36.37, + 50.29 + ], + [ + 36.65, + 50.22 + ], + [ + 37.4, + 50.43 + ], + [ + 38.03, + 49.9 + ], + [ + 38.31, + 50.09 + ], + [ + 39.64, + 49.64 + ], + [ + 40.14, + 49.62 + ], + [ + 40.03, + 49.47 + ], + [ + 40.22, + 49.25 + ], + [ + 39.75, + 48.98 + ], + [ + 40.08, + 48.87 + ], + [ + 39.8, + 48.84 + ], + [ + 39.66, + 48.61 + ], + [ + 39.66, + 48.6 + ], + [ + 39.69, + 48.59 + ], + [ + 39.72, + 48.59 + ], + [ + 39.73, + 48.59 + ], + [ + 39.77, + 48.59 + ], + [ + 39.83, + 48.58 + ], + [ + 39.84, + 48.57 + ], + [ + 39.85, + 48.56 + ], + [ + 39.86, + 48.53 + ], + [ + 39.86, + 48.5 + ], + [ + 39.85, + 48.5 + ], + [ + 39.9, + 48.45 + ], + [ + 39.89, + 48.44 + ], + [ + 39.89, + 48.43 + ], + [ + 39.9, + 48.43 + ], + [ + 39.91, + 48.42 + ], + [ + 39.91, + 48.41 + ], + [ + 39.92, + 48.4 + ], + [ + 39.92, + 48.38 + ], + [ + 39.94, + 48.39 + ], + [ + 39.94, + 48.37 + ], + [ + 39.94, + 48.36 + ], + [ + 39.91, + 48.17 + ], + [ + 39.91, + 48.16 + ], + [ + 39.87, + 48.04 + ], + [ + 39.78, + 48.04 + ], + [ + 39.78, + 48.03 + ], + [ + 39.8, + 48.01 + ], + [ + 39.81, + 48.01 + ], + [ + 39.81, + 48 + ], + [ + 39.82, + 47.97 + ], + [ + 39.82, + 47.96 + ], + [ + 39.77, + 47.87 + ], + [ + 39.11, + 47.84 + ], + [ + 38.94, + 47.87 + ], + [ + 38.86, + 47.87 + ], + [ + 38.84, + 47.85 + ], + [ + 38.83, + 47.84 + ], + [ + 38.82, + 47.84 + ], + [ + 38.83, + 47.83 + ], + [ + 38.83, + 47.82 + ], + [ + 38.81, + 47.82 + ], + [ + 38.79, + 47.82 + ], + [ + 38.77, + 47.69 + ], + [ + 38.33, + 47.58 + ], + [ + 38.32, + 47.58 + ], + [ + 38.23, + 47.12 + ], + [ + 38.09, + 47.02 + ], + [ + 37.57, + 47.1 + ], + [ + 36.83, + 46.71 + ], + [ + 36.34, + 46.71 + ], + [ + 36.35, + 46.69 + ], + [ + 36.3, + 46.66 + ], + [ + 36.31, + 46.65 + ], + [ + 36.23, + 46.55 + ], + [ + 36.17, + 46.5 + ], + [ + 36.12, + 46.49 + ], + [ + 36.15, + 46.54 + ], + [ + 36.16, + 46.51 + ], + [ + 36.22, + 46.55 + ], + [ + 36.29, + 46.64 + ], + [ + 36.29, + 46.65 + ], + [ + 36.26, + 46.6 + ], + [ + 36.25, + 46.64 + ], + [ + 36.2, + 46.67 + ], + [ + 35.86, + 46.66 + ], + [ + 35.45, + 46.44 + ], + [ + 35.29, + 46.69 + ], + [ + 35.38, + 46.38 + ], + [ + 35.17, + 46.14 + ], + [ + 34.98, + 46.08 + ], + [ + 35.36, + 46.36 + ], + [ + 35.22, + 46.46 + ], + [ + 34.4, + 46.01 + ], + [ + 34.53, + 46.13 + ], + [ + 34.32, + 46.26 + ], + [ + 34.3, + 46.1 + ], + [ + 34.23, + 46.28 + ], + [ + 34.12, + 46.26 + ], + [ + 34.25, + 46.1 + ], + [ + 34.27, + 46.16 + ], + [ + 34.25, + 46.06 + ], + [ + 34.15, + 46.21 + ], + [ + 34.15, + 46.11 + ], + [ + 33.72, + 46.2 + ], + [ + 34.01, + 46.12 + ], + [ + 34.02, + 46.12 + ], + [ + 34.47, + 45.94 + ], + [ + 34.65, + 45.94 + ], + [ + 34.52, + 45.79 + ], + [ + 34.77, + 45.88 + ], + [ + 34.65, + 45.79 + ], + [ + 35.03, + 45.64 + ], + [ + 35.02, + 45.41 + ], + [ + 35.4, + 45.26 + ], + [ + 35.04, + 45.67 + ], + [ + 35.53, + 45.28 + ], + [ + 35.85, + 45.47 + ], + [ + 35.98, + 45.37 + ], + [ + 36.6, + 45.44 + ], + [ + 36.39, + 45.15 + ], + [ + 35.84, + 45 + ], + [ + 35.5, + 45.12 + ], + [ + 35.08, + 44.79 + ], + [ + 34.73, + 44.81 + ], + [ + 34.13, + 44.43 + ], + [ + 33.74, + 44.39 + ], + [ + 33.38, + 44.58 + ], + [ + 33.61, + 44.6 + ], + [ + 33.53, + 45.25 + ], + [ + 33.15, + 45.2 + ], + [ + 32.99, + 45.33 + ], + [ + 33.19, + 45.45 + ], + [ + 32.98, + 45.33 + ], + [ + 32.48, + 45.39 + ], + [ + 33.17, + 45.8 + ], + [ + 33.77, + 45.89 + ], + [ + 33.61, + 46.13 + ], + [ + 33.5, + 46.03 + ], + [ + 33.2, + 46.17 + ], + [ + 32.54, + 46.07 + ], + [ + 32.23, + 46.13 + ], + [ + 32.28, + 46.16 + ], + [ + 31.9, + 46.33 + ], + [ + 31.78, + 46.27 + ], + [ + 31.78, + 46.32 + ], + [ + 32.06, + 46.39 + ], + [ + 31.86, + 46.52 + ], + [ + 32.49, + 46.51 + ], + [ + 31.98, + 46.65 + ], + [ + 32.01, + 46.98 + ], + [ + 31.84, + 47.08 + ], + [ + 32, + 46.92 + ], + [ + 31.88, + 46.63 + ], + [ + 31.42, + 46.63 + ], + [ + 31.59, + 46.84 + ], + [ + 31.35, + 46.6 + ], + [ + 30.89, + 46.63 + ], + [ + 30.52, + 46.13 + ], + [ + 30.26, + 46.39 + ], + [ + 30.15, + 46.39 + ], + [ + 30.1, + 46.36 + ], + [ + 30.06, + 46.37 + ], + [ + 30.47, + 46.07 + ], + [ + 30.15, + 45.83 + ], + [ + 29.97, + 45.93 + ], + [ + 29.79, + 45.64 + ], + [ + 29.66, + 45.84 + ], + [ + 29.69, + 45.2 + ], + [ + 29.68, + 45.27 + ], + [ + 29.68, + 45.28 + ], + [ + 29.67, + 45.3 + ], + [ + 29.67, + 45.31 + ], + [ + 29.66, + 45.33 + ], + [ + 29.65, + 45.34 + ], + [ + 29.63, + 45.35 + ], + [ + 29.63, + 45.36 + ], + [ + 29.61, + 45.37 + ], + [ + 29.58, + 45.39 + ], + [ + 29.58, + 45.4 + ], + [ + 29.57, + 45.4 + ], + [ + 29.55, + 45.41 + ], + [ + 29.54, + 45.41 + ], + [ + 29.53, + 45.41 + ], + [ + 29.52, + 45.41 + ], + [ + 29.51, + 45.42 + ], + [ + 29.5, + 45.42 + ], + [ + 29.47, + 45.42 + ], + [ + 29.46, + 45.43 + ], + [ + 29.43, + 45.44 + ], + [ + 29.41, + 45.44 + ], + [ + 29.39, + 45.44 + ], + [ + 29.37, + 45.44 + ], + [ + 29.36, + 45.44 + ], + [ + 29.35, + 45.44 + ], + [ + 29.32, + 45.45 + ], + [ + 29.31, + 45.44 + ], + [ + 29.3, + 45.43 + ], + [ + 29.25, + 45.43 + ], + [ + 29.24, + 45.43 + ], + [ + 29.23, + 45.43 + ], + [ + 29.21, + 45.42 + ], + [ + 29.19, + 45.41 + ], + [ + 29.18, + 45.4 + ], + [ + 29.17, + 45.39 + ], + [ + 29.15, + 45.39 + ], + [ + 29.14, + 45.38 + ], + [ + 29.12, + 45.38 + ], + [ + 29.11, + 45.38 + ], + [ + 29.07, + 45.37 + ], + [ + 29.07, + 45.36 + ], + [ + 29.03, + 45.35 + ], + [ + 29.02, + 45.35 + ], + [ + 29, + 45.34 + ], + [ + 28.97, + 45.33 + ], + [ + 28.96, + 45.35 + ], + [ + 28.95, + 45.31 + ], + [ + 28.91, + 45.29 + ], + [ + 28.89, + 45.3 + ], + [ + 28.88, + 45.31 + ], + [ + 28.86, + 45.32 + ], + [ + 28.84, + 45.32 + ], + [ + 28.83, + 45.33 + ], + [ + 28.82, + 45.33 + ], + [ + 28.78, + 45.32 + ], + [ + 28.8, + 45.3 + ], + [ + 28.77, + 45.29 + ], + [ + 28.75, + 45.28 + ], + [ + 28.76, + 45.27 + ], + [ + 28.78, + 45.26 + ], + [ + 28.78, + 45.24 + ], + [ + 28.75, + 45.23 + ], + [ + 28.73, + 45.23 + ], + [ + 28.68, + 45.23 + ], + [ + 28.67, + 45.24 + ], + [ + 28.6, + 45.25 + ], + [ + 28.58, + 45.25 + ], + [ + 28.56, + 45.25 + ], + [ + 28.55, + 45.25 + ], + [ + 28.52, + 45.27 + ], + [ + 28.51, + 45.27 + ], + [ + 28.48, + 45.28 + ], + [ + 28.46, + 45.29 + ], + [ + 28.41, + 45.3 + ], + [ + 28.4, + 45.3 + ], + [ + 28.38, + 45.31 + ], + [ + 28.35, + 45.32 + ], + [ + 28.43, + 45.49 + ], + [ + 28.59, + 45.74 + ], + [ + 28.98, + 46 + ], + [ + 29, + 46.32 + ], + [ + 28.98, + 46.49 + ], + [ + 29.24, + 46.56 + ], + [ + 29.23, + 46.44 + ], + [ + 29.23, + 46.43 + ], + [ + 29.27, + 46.4 + ], + [ + 29.27, + 46.41 + ], + [ + 29.36, + 46.5 + ], + [ + 29.49, + 46.44 + ], + [ + 29.49, + 46.43 + ], + [ + 29.6, + 46.35 + ], + [ + 29.74, + 46.47 + ], + [ + 29.89, + 46.35 + ], + [ + 29.94, + 46.4 + ], + [ + 30.1, + 46.38 + ], + [ + 30.16, + 46.42 + ], + [ + 30.13, + 46.42 + ], + [ + 30.12, + 46.43 + ], + [ + 30.1, + 46.43 + ], + [ + 30.1, + 46.44 + ], + [ + 30.08, + 46.43 + ], + [ + 30.08, + 46.42 + ], + [ + 30.06, + 46.44 + ], + [ + 30.04, + 46.44 + ], + [ + 30.03, + 46.44 + ], + [ + 30.01, + 46.47 + ], + [ + 29.99, + 46.48 + ], + [ + 29.99, + 46.49 + ], + [ + 29.99, + 46.5 + ], + [ + 29.95, + 46.5 + ], + [ + 29.89, + 46.55 + ], + [ + 29.88, + 46.55 + ], + [ + 29.95, + 46.59 + ], + [ + 29.97, + 46.7 + ], + [ + 29.97, + 46.71 + ], + [ + 29.97, + 46.72 + ], + [ + 29.97, + 46.74 + ], + [ + 29.97, + 46.75 + ], + [ + 29.89, + 46.86 + ], + [ + 29.89, + 46.87 + ], + [ + 29.78, + 46.87 + ], + [ + 29.76, + 46.86 + ], + [ + 29.75, + 46.86 + ], + [ + 29.74, + 46.9 + ], + [ + 29.62, + 46.95 + ], + [ + 29.56, + 46.96 + ], + [ + 29.57, + 47.37 + ], + [ + 29.43, + 47.29 + ], + [ + 29.33, + 47.4 + ], + [ + 29.33, + 47.41 + ], + [ + 29.32, + 47.42 + ], + [ + 29.32, + 47.43 + ], + [ + 29.32, + 47.45 + ], + [ + 29.3, + 47.44 + ], + [ + 29.29, + 47.44 + ], + [ + 29.26, + 47.43 + ], + [ + 29.21, + 47.44 + ], + [ + 29.2, + 47.43 + ], + [ + 29.19, + 47.46 + ], + [ + 29.19, + 47.48 + ], + [ + 29.19, + 47.51 + ], + [ + 29.18, + 47.51 + ], + [ + 29.19, + 47.52 + ], + [ + 29.18, + 47.52 + ], + [ + 29.17, + 47.51 + ], + [ + 29.16, + 47.57 + ], + [ + 29.17, + 47.57 + ], + [ + 29.21, + 47.61 + ], + [ + 29.22, + 47.68 + ], + [ + 29.22, + 47.69 + ], + [ + 29.22, + 47.7 + ], + [ + 29.22, + 47.71 + ], + [ + 29.21, + 47.71 + ], + [ + 29.2, + 47.72 + ], + [ + 29.26, + 47.78 + ], + [ + 29.27, + 47.78 + ], + [ + 29.18, + 47.99 + ], + [ + 28.5, + 48.12 + ], + [ + 28.49, + 48.12 + ], + [ + 28.5, + 48.1 + ], + [ + 28.5, + 48.09 + ], + [ + 28.5, + 48.07 + ], + [ + 28.48, + 48.07 + ], + [ + 28.47, + 48.07 + ], + [ + 28.45, + 48.09 + ], + [ + 28.44, + 48.09 + ], + [ + 28.44, + 48.1 + ], + [ + 28.44, + 48.11 + ], + [ + 28.43, + 48.11 + ], + [ + 28.43, + 48.13 + ], + [ + 28.43, + 48.14 + ], + [ + 28.44, + 48.15 + ], + [ + 28.44, + 48.16 + ], + [ + 28.43, + 48.17 + ], + [ + 28.42, + 48.18 + ], + [ + 28.41, + 48.18 + ], + [ + 28.38, + 48.17 + ], + [ + 28.37, + 48.16 + ], + [ + 28.37, + 48.15 + ], + [ + 28.36, + 48.15 + ], + [ + 28.35, + 48.14 + ], + [ + 28.34, + 48.13 + ], + [ + 28.32, + 48.13 + ], + [ + 28.31, + 48.15 + ], + [ + 28.31, + 48.16 + ], + [ + 28.32, + 48.17 + ], + [ + 28.33, + 48.17 + ], + [ + 28.34, + 48.18 + ], + [ + 28.35, + 48.18 + ], + [ + 28.36, + 48.19 + ], + [ + 28.36, + 48.2 + ], + [ + 28.37, + 48.2 + ], + [ + 28.37, + 48.22 + ], + [ + 28.37, + 48.23 + ], + [ + 28.36, + 48.24 + ], + [ + 28.33, + 48.24 + ], + [ + 28.3, + 48.24 + ], + [ + 28.28, + 48.23 + ], + [ + 28.27, + 48.23 + ], + [ + 28.26, + 48.22 + ], + [ + 28.24, + 48.21 + ], + [ + 28.23, + 48.21 + ], + [ + 28.22, + 48.21 + ], + [ + 28.2, + 48.21 + ], + [ + 28.19, + 48.21 + ], + [ + 28.18, + 48.22 + ], + [ + 28.18, + 48.23 + ], + [ + 28.19, + 48.25 + ], + [ + 28.18, + 48.26 + ], + [ + 28.17, + 48.26 + ], + [ + 28.14, + 48.26 + ], + [ + 28.14, + 48.25 + ], + [ + 28.13, + 48.24 + ], + [ + 28.12, + 48.24 + ], + [ + 28.09, + 48.23 + ], + [ + 28.08, + 48.24 + ], + [ + 28.08, + 48.26 + ], + [ + 28.09, + 48.27 + ], + [ + 28.08, + 48.31 + ], + [ + 28.07, + 48.32 + ], + [ + 28.05, + 48.33 + ], + [ + 28.03, + 48.33 + ], + [ + 28, + 48.33 + ], + [ + 27.98, + 48.33 + ], + [ + 27.97, + 48.32 + ], + [ + 27.93, + 48.34 + ], + [ + 27.92, + 48.34 + ], + [ + 27.9, + 48.35 + ], + [ + 27.9, + 48.36 + ], + [ + 27.88, + 48.37 + ], + [ + 27.88, + 48.4 + ], + [ + 27.86, + 48.41 + ], + [ + 27.84, + 48.42 + ], + [ + 27.83, + 48.42 + ], + [ + 27.82, + 48.43 + ], + [ + 27.81, + 48.43 + ], + [ + 27.79, + 48.44 + ], + [ + 27.79, + 48.45 + ], + [ + 27.76, + 48.46 + ], + [ + 27.75, + 48.46 + ], + [ + 27.74, + 48.46 + ], + [ + 27.73, + 48.45 + ], + [ + 27.69, + 48.44 + ], + [ + 27.68, + 48.44 + ], + [ + 27.65, + 48.44 + ], + [ + 27.64, + 48.44 + ], + [ + 27.6, + 48.46 + ], + [ + 27.59, + 48.46 + ], + [ + 27.6, + 48.47 + ], + [ + 27.6, + 48.48 + ], + [ + 27.6, + 48.49 + ], + [ + 27.58, + 48.49 + ], + [ + 27.56, + 48.48 + ], + [ + 27.55, + 48.48 + ], + [ + 27.54, + 48.47 + ], + [ + 27.53, + 48.47 + ], + [ + 27.46, + 48.43 + ], + [ + 27.07, + 48.43 + ], + [ + 26.71, + 48.4 + ], + [ + 26.72, + 48.4 + ], + [ + 26.83, + 48.3 + ], + [ + 26.63, + 48.26 + ], + [ + 26.63, + 48.25 + ], + [ + 26.61, + 48.24 + ], + [ + 26.6, + 48.24 + ], + [ + 26.52, + 48.21 + ], + [ + 26.46, + 48.21 + ], + [ + 26.37, + 48.2 + ], + [ + 26.35, + 48.18 + ], + [ + 26.34, + 48.18 + ], + [ + 26.18, + 47.99 + ], + [ + 25.31, + 47.91 + ], + [ + 25.04, + 47.73 + ], + [ + 24.58, + 47.97 + ], + [ + 24.15, + 47.92 + ], + [ + 24.15, + 47.91 + ], + [ + 24.13, + 47.92 + ], + [ + 24.12, + 47.92 + ], + [ + 24.1, + 47.93 + ], + [ + 24.02, + 47.96 + ], + [ + 23.97, + 47.96 + ], + [ + 23.96, + 47.96 + ], + [ + 23.95, + 47.96 + ], + [ + 23.93, + 47.95 + ], + [ + 23.89, + 47.94 + ], + [ + 23.88, + 47.94 + ], + [ + 23.86, + 47.93 + ], + [ + 23.84, + 47.95 + ], + [ + 23.84, + 47.96 + ], + [ + 23.83, + 47.96 + ], + [ + 23.76, + 47.99 + ], + [ + 23.73, + 47.99 + ], + [ + 23.69, + 47.99 + ], + [ + 23.68, + 47.99 + ], + [ + 23.62, + 48 + ], + [ + 23.62, + 48.01 + ], + [ + 23.58, + 48 + ], + [ + 23.57, + 48 + ], + [ + 23.55, + 48.01 + ], + [ + 23.53, + 48.02 + ], + [ + 23.17, + 48.12 + ], + [ + 22.93, + 47.96 + ], + [ + 22.9, + 47.95 + ], + [ + 22.85, + 47.98 + ], + [ + 22.84, + 47.98 + ], + [ + 22.83, + 48.09 + ], + [ + 22.83, + 48.1 + ], + [ + 22.83, + 48.11 + ], + [ + 22.81, + 48.11 + ], + [ + 22.8, + 48.11 + ], + [ + 22.81, + 48.12 + ], + [ + 22.8, + 48.12 + ], + [ + 22.79, + 48.12 + ], + [ + 22.77, + 48.12 + ], + [ + 22.76, + 48.12 + ], + [ + 22.75, + 48.12 + ], + [ + 22.74, + 48.12 + ], + [ + 22.7, + 48.11 + ], + [ + 22.68, + 48.09 + ], + [ + 22.67, + 48.09 + ], + [ + 22.65, + 48.1 + ], + [ + 22.26, + 48.37 + ], + [ + 22.24, + 48.39 + ], + [ + 22.26, + 48.4 + ], + [ + 22.27, + 48.41 + ], + [ + 22.26, + 48.41 + ], + [ + 22.25, + 48.41 + ], + [ + 22.24, + 48.41 + ], + [ + 22.23, + 48.41 + ], + [ + 22.22, + 48.42 + ], + [ + 22.21, + 48.43 + ], + [ + 22.2, + 48.42 + ], + [ + 22.19, + 48.42 + ], + [ + 22.18, + 48.41 + ], + [ + 22.16, + 48.41 + ], + [ + 22.16, + 48.4 + ], + [ + 22.14, + 48.45 + ] + ], + [ + [ + 30.54, + 50.63 + ], + [ + 30.59, + 51.03 + ], + [ + 30.45, + 51.22 + ], + [ + 30.26, + 51.04 + ], + [ + 30.54, + 50.63 + ] + ], + [ + [ + 32.89, + 49.44 + ], + [ + 32.72, + 49.58 + ], + [ + 32.7, + 49.34 + ], + [ + 31.77, + 49.64 + ], + [ + 32.81, + 49.07 + ], + [ + 33.22, + 49.05 + ], + [ + 32.89, + 49.44 + ] + ], + [ + [ + 30.74, + 50.17 + ], + [ + 31.07, + 49.97 + ], + [ + 31.42, + 49.99 + ], + [ + 31.41, + 49.78 + ], + [ + 31.55, + 49.81 + ], + [ + 31.51, + 50.02 + ], + [ + 31.11, + 50 + ], + [ + 30.74, + 50.17 + ] + ], + [ + [ + 35.18, + 47.72 + ], + [ + 34.98, + 47.56 + ], + [ + 34.28, + 47.61 + ], + [ + 33.93, + 47.56 + ], + [ + 33.97, + 47.29 + ], + [ + 33.66, + 47.09 + ], + [ + 33.59, + 46.86 + ], + [ + 33.3, + 46.77 + ], + [ + 33.44, + 46.8 + ], + [ + 33.62, + 46.82 + ], + [ + 33.73, + 46.92 + ], + [ + 33.75, + 46.92 + ], + [ + 33.73, + 46.92 + ], + [ + 33.73, + 47.01 + ], + [ + 34.08, + 47.34 + ], + [ + 34.06, + 47.43 + ], + [ + 34.6, + 47.55 + ], + [ + 34.94, + 47.39 + ], + [ + 35.29, + 47.47 + ], + [ + 35.18, + 47.72 + ] + ], + [ + [ + 35.05, + 48.09 + ], + [ + 35.06, + 48.12 + ], + [ + 35.05, + 48.09 + ], + [ + 35.09, + 47.99 + ], + [ + 35.07, + 47.86 + ], + [ + 35.19, + 48 + ], + [ + 35.05, + 48.09 + ] + ] + ], + [ + [ + [ + 28.95, + 45.3 + ], + [ + 28.95, + 45.29 + ], + [ + 28.94, + 45.28 + ], + [ + 28.93, + 45.28 + ], + [ + 28.92, + 45.29 + ], + [ + 28.95, + 45.3 + ] + ] + ], + [ + [ + [ + 28.31, + 45.37 + ], + [ + 28.29, + 45.39 + ], + [ + 28.29, + 45.42 + ], + [ + 28.29, + 45.44 + ], + [ + 28.27, + 45.45 + ], + [ + 28.26, + 45.46 + ], + [ + 28.24, + 45.46 + ], + [ + 28.23, + 45.46 + ], + [ + 28.22, + 45.47 + ], + [ + 28.21, + 45.47 + ], + [ + 28.22, + 45.48 + ], + [ + 28.23, + 45.48 + ], + [ + 28.23, + 45.49 + ], + [ + 28.24, + 45.5 + ], + [ + 28.26, + 45.52 + ], + [ + 28.28, + 45.53 + ], + [ + 28.42, + 45.5 + ], + [ + 28.31, + 45.37 + ] + ] + ], + [ + [ + [ + 32.76, + 46.03 + ], + [ + 32.55, + 46.07 + ], + [ + 33.08, + 46.02 + ], + [ + 32.76, + 46.03 + ] + ] + ] + ] + }, + "properties": { + "A3": "UKR" + } + }, + { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + -69.57, + -10.95 + ], + [ + -69.54, + -10.95 + ], + [ + -69.54, + -10.94 + ], + [ + -69.5, + -10.94 + ], + [ + -69.5, + -10.95 + ], + [ + -69.45, + -10.94 + ], + [ + -69.39, + -10.95 + ], + [ + -69.38, + -10.94 + ], + [ + -69.35, + -10.94 + ], + [ + -69.35, + -10.95 + ], + [ + -69.33, + -10.94 + ], + [ + -69.32, + -10.94 + ], + [ + -69.28, + -10.94 + ], + [ + -69.28, + -10.95 + ], + [ + -69.26, + -10.94 + ], + [ + -69.26, + -10.95 + ], + [ + -69.21, + -10.96 + ], + [ + -69.17, + -10.96 + ], + [ + -69.15, + -10.96 + ], + [ + -69.15, + -10.97 + ], + [ + -69.06, + -10.99 + ], + [ + -69.06, + -10.98 + ], + [ + -69.02, + -10.99 + ], + [ + -69, + -11 + ], + [ + -69, + -11.01 + ], + [ + -68.95, + -11 + ], + [ + -68.95, + -11.01 + ], + [ + -68.93, + -11.01 + ], + [ + -68.86, + -11.01 + ], + [ + -68.86, + -11 + ], + [ + -68.82, + -11 + ], + [ + -68.8, + -11 + ], + [ + -68.79, + -11.01 + ], + [ + -68.75, + -11.01 + ], + [ + -68.72, + -11.14 + ], + [ + -68.54, + -11.11 + ], + [ + -68.24, + -10.96 + ], + [ + -68.03, + -10.66 + ], + [ + -67.71, + -10.71 + ], + [ + -66.62, + -9.89 + ], + [ + -65.77, + -9.73 + ], + [ + -65.56, + -9.84 + ], + [ + -65.44, + -9.67 + ], + [ + -65.43, + -9.68 + ], + [ + -65.41, + -9.68 + ], + [ + -65.39, + -9.69 + ], + [ + -65.37, + -9.71 + ], + [ + -65.36, + -9.72 + ], + [ + -65.35, + -9.73 + ], + [ + -65.35, + -9.74 + ], + [ + -65.34, + -9.76 + ], + [ + -65.33, + -9.78 + ], + [ + -65.32, + -9.8 + ], + [ + -65.3, + -9.83 + ], + [ + -65.29, + -9.84 + ], + [ + -65.28, + -9.85 + ], + [ + -65.29, + -9.86 + ], + [ + -65.29, + -9.87 + ], + [ + -65.31, + -9.89 + ], + [ + -65.32, + -9.9 + ], + [ + -65.32, + -10.02 + ], + [ + -65.33, + -10.04 + ], + [ + -65.33, + -10.06 + ], + [ + -65.32, + -10.08 + ], + [ + -65.31, + -10.09 + ], + [ + -65.3, + -10.11 + ], + [ + -65.3, + -10.13 + ], + [ + -65.3, + -10.15 + ], + [ + -65.31, + -10.16 + ], + [ + -65.3, + -10.2 + ], + [ + -65.29, + -10.21 + ], + [ + -65.31, + -10.26 + ], + [ + -65.31, + -10.27 + ], + [ + -65.33, + -10.31 + ], + [ + -65.34, + -10.31 + ], + [ + -65.35, + -10.33 + ], + [ + -65.37, + -10.35 + ], + [ + -65.39, + -10.37 + ], + [ + -65.39, + -10.38 + ], + [ + -65.39, + -10.39 + ], + [ + -65.38, + -10.4 + ], + [ + -65.38, + -10.41 + ], + [ + -65.39, + -10.44 + ], + [ + -65.4, + -10.46 + ], + [ + -65.41, + -10.46 + ], + [ + -65.42, + -10.47 + ], + [ + -65.42, + -10.5 + ], + [ + -65.42, + -10.52 + ], + [ + -65.42, + -10.54 + ], + [ + -65.4, + -10.56 + ], + [ + -65.39, + -10.57 + ], + [ + -65.42, + -10.62 + ], + [ + -65.4, + -10.63 + ], + [ + -65.4, + -10.64 + ], + [ + -65.39, + -10.65 + ], + [ + -65.37, + -10.65 + ], + [ + -65.36, + -10.66 + ], + [ + -65.35, + -10.67 + ], + [ + -65.35, + -10.74 + ], + [ + -65.35, + -10.76 + ], + [ + -65.35, + -10.8 + ], + [ + -65.34, + -10.81 + ], + [ + -65.32, + -10.82 + ], + [ + -65.3, + -10.84 + ], + [ + -65.29, + -10.85 + ], + [ + -65.27, + -10.89 + ], + [ + -65.27, + -10.9 + ], + [ + -65.27, + -10.93 + ], + [ + -65.27, + -10.94 + ], + [ + -65.27, + -10.95 + ], + [ + -65.26, + -10.97 + ], + [ + -65.26, + -11 + ], + [ + -65.28, + -11.01 + ], + [ + -65.29, + -11.01 + ], + [ + -65.29, + -11.04 + ], + [ + -65.29, + -11.05 + ], + [ + -65.28, + -11.06 + ], + [ + -65.28, + -11.08 + ], + [ + -65.29, + -11.09 + ], + [ + -65.31, + -11.1 + ], + [ + -65.34, + -11.11 + ], + [ + -65.35, + -11.12 + ], + [ + -65.36, + -11.15 + ], + [ + -65.36, + -11.16 + ], + [ + -65.36, + -11.17 + ], + [ + -65.35, + -11.19 + ], + [ + -65.34, + -11.18 + ], + [ + -65.32, + -11.19 + ], + [ + -65.32, + -11.2 + ], + [ + -65.33, + -11.21 + ], + [ + -65.36, + -11.22 + ], + [ + -65.36, + -11.23 + ], + [ + -65.36, + -11.24 + ], + [ + -65.36, + -11.25 + ], + [ + -65.36, + -11.28 + ], + [ + -65.35, + -11.29 + ], + [ + -65.35, + -11.3 + ], + [ + -65.34, + -11.31 + ], + [ + -65.32, + -11.32 + ], + [ + -65.3, + -11.32 + ], + [ + -65.29, + -11.33 + ], + [ + -65.31, + -11.34 + ], + [ + -65.32, + -11.33 + ], + [ + -65.33, + -11.34 + ], + [ + -65.33, + -11.36 + ], + [ + -65.33, + -11.37 + ], + [ + -65.33, + -11.38 + ], + [ + -65.32, + -11.44 + ], + [ + -65.31, + -11.47 + ], + [ + -65.31, + -11.48 + ], + [ + -65.31, + -11.49 + ], + [ + -65.26, + -11.54 + ], + [ + -65.25, + -11.52 + ], + [ + -65.22, + -11.52 + ], + [ + -65.21, + -11.52 + ], + [ + -65.21, + -11.54 + ], + [ + -65.23, + -11.56 + ], + [ + -65.23, + -11.61 + ], + [ + -65.22, + -11.62 + ], + [ + -65.22, + -11.63 + ], + [ + -65.22, + -11.64 + ], + [ + -65.22, + -11.65 + ], + [ + -65.22, + -11.66 + ], + [ + -65.24, + -11.69 + ], + [ + -65.26, + -11.71 + ], + [ + -65.25, + -11.72 + ], + [ + -65.23, + -11.74 + ], + [ + -65.2, + -11.75 + ], + [ + -65.18, + -11.76 + ], + [ + -65.17, + -11.72 + ], + [ + -65.16, + -11.72 + ], + [ + -65.14, + -11.72 + ], + [ + -65.13, + -11.72 + ], + [ + -65.12, + -11.71 + ], + [ + -65.08, + -11.71 + ], + [ + -65.08, + -11.72 + ], + [ + -65.08, + -11.73 + ], + [ + -65.08, + -11.75 + ], + [ + -65.07, + -11.77 + ], + [ + -65.06, + -11.8 + ], + [ + -65.06, + -11.82 + ], + [ + -65.06, + -11.84 + ], + [ + -65.07, + -11.86 + ], + [ + -65.07, + -11.87 + ], + [ + -65.07, + -11.88 + ], + [ + -65.05, + -11.89 + ], + [ + -65.04, + -11.89 + ], + [ + -65.03, + -11.89 + ], + [ + -65.01, + -11.9 + ], + [ + -65.03, + -11.94 + ], + [ + -65.04, + -11.96 + ], + [ + -65.04, + -11.99 + ], + [ + -65.03, + -12 + ], + [ + -65.01, + -11.99 + ], + [ + -65, + -12 + ], + [ + -64.99, + -12.01 + ], + [ + -64.95, + -11.99 + ], + [ + -64.94, + -12 + ], + [ + -64.94, + -12.01 + ], + [ + -64.93, + -12.02 + ], + [ + -64.91, + -12.03 + ], + [ + -64.9, + -12.02 + ], + [ + -64.89, + -12.01 + ], + [ + -64.88, + -12.01 + ], + [ + -64.85, + -12.01 + ], + [ + -64.84, + -12.01 + ], + [ + -64.82, + -12.03 + ], + [ + -64.81, + -12.04 + ], + [ + -64.84, + -12.08 + ], + [ + -64.84, + -12.09 + ], + [ + -64.84, + -12.1 + ], + [ + -64.84, + -12.11 + ], + [ + -64.82, + -12.11 + ], + [ + -64.82, + -12.1 + ], + [ + -64.81, + -12.09 + ], + [ + -64.79, + -12.09 + ], + [ + -64.76, + -12.1 + ], + [ + -64.76, + -12.11 + ], + [ + -64.75, + -12.16 + ], + [ + -64.74, + -12.15 + ], + [ + -64.74, + -12.13 + ], + [ + -64.74, + -12.12 + ], + [ + -64.73, + -12.09 + ], + [ + -64.71, + -12.09 + ], + [ + -64.6, + -12.22 + ], + [ + -64.58, + -12.21 + ], + [ + -64.5, + -12.33 + ], + [ + -64.51, + -12.34 + ], + [ + -64.47, + -12.38 + ], + [ + -64.45, + -12.4 + ], + [ + -64.45, + -12.41 + ], + [ + -64.43, + -12.42 + ], + [ + -64.42, + -12.44 + ], + [ + -64.28, + -12.5 + ], + [ + -64.27, + -12.49 + ], + [ + -64.26, + -12.48 + ], + [ + -64.25, + -12.47 + ], + [ + -64.24, + -12.47 + ], + [ + -64.2, + -12.47 + ], + [ + -63.78, + -12.43 + ], + [ + -63.3, + -12.68 + ], + [ + -63.16, + -12.61 + ], + [ + -62.78, + -13.01 + ], + [ + -62.17, + -13.11 + ], + [ + -61.88, + -13.47 + ], + [ + -61.88, + -13.48 + ], + [ + -61.88, + -13.5 + ], + [ + -61.87, + -13.51 + ], + [ + -61.87, + -13.52 + ], + [ + -61.86, + -13.54 + ], + [ + -61.85, + -13.53 + ], + [ + -61.79, + -13.54 + ], + [ + -61.78, + -13.54 + ], + [ + -61.2, + -13.54 + ], + [ + -61.19, + -13.54 + ], + [ + -61.11, + -13.53 + ], + [ + -61.1, + -13.53 + ], + [ + -60.72, + -13.69 + ], + [ + -60.71, + -13.69 + ], + [ + -60.68, + -13.72 + ], + [ + -60.66, + -13.73 + ], + [ + -60.66, + -13.74 + ], + [ + -60.65, + -13.74 + ], + [ + -60.65, + -13.73 + ], + [ + -60.65, + -13.74 + ], + [ + -60.64, + -13.73 + ], + [ + -60.6, + -13.75 + ], + [ + -60.58, + -13.75 + ], + [ + -60.57, + -13.76 + ], + [ + -60.56, + -13.77 + ], + [ + -60.55, + -13.78 + ], + [ + -60.55, + -13.77 + ], + [ + -60.52, + -13.77 + ], + [ + -60.53, + -13.79 + ], + [ + -60.5, + -13.8 + ], + [ + -60.5, + -13.79 + ], + [ + -60.48, + -13.8 + ], + [ + -60.47, + -13.79 + ], + [ + -60.47, + -13.81 + ], + [ + -60.48, + -13.82 + ], + [ + -60.48, + -13.83 + ], + [ + -60.49, + -13.85 + ], + [ + -60.49, + -13.86 + ], + [ + -60.48, + -13.85 + ], + [ + -60.47, + -13.86 + ], + [ + -60.47, + -13.88 + ], + [ + -60.46, + -13.88 + ], + [ + -60.45, + -13.88 + ], + [ + -60.46, + -13.9 + ], + [ + -60.45, + -13.91 + ], + [ + -60.45, + -13.92 + ], + [ + -60.45, + -13.93 + ], + [ + -60.43, + -13.94 + ], + [ + -60.43, + -13.96 + ], + [ + -60.43, + -13.97 + ], + [ + -60.42, + -13.97 + ], + [ + -60.49, + -14.19 + ], + [ + -60.27, + -14.62 + ], + [ + -60.25, + -15.1 + ], + [ + -60.58, + -15.1 + ], + [ + -60.24, + -15.47 + ], + [ + -60.23, + -15.55 + ], + [ + -60.21, + -15.79 + ], + [ + -60.17, + -16.27 + ], + [ + -58.32, + -16.27 + ], + [ + -58.47, + -16.93 + ], + [ + -58.2, + -17.38 + ], + [ + -58.16, + -17.39 + ], + [ + -58.14, + -17.41 + ], + [ + -58.12, + -17.43 + ], + [ + -57.93, + -17.48 + ], + [ + -57.79, + -17.6 + ], + [ + -57.78, + -17.61 + ], + [ + -57.77, + -17.66 + ], + [ + -57.76, + -17.66 + ], + [ + -57.75, + -17.68 + ], + [ + -57.75, + -17.69 + ], + [ + -57.74, + -17.69 + ], + [ + -57.73, + -17.72 + ], + [ + -57.69, + -17.81 + ], + [ + -57.61, + -18.04 + ], + [ + -57.51, + -18.19 + ], + [ + -57.58, + -18.33 + ], + [ + -57.59, + -18.35 + ], + [ + -57.7, + -19 + ], + [ + -57.7, + -19.02 + ], + [ + -58.13, + -19.76 + ], + [ + -57.86, + -19.97 + ], + [ + -57.86, + -19.98 + ], + [ + -57.87, + -19.99 + ], + [ + -57.88, + -20 + ], + [ + -57.89, + -20.01 + ], + [ + -57.89, + -20.03 + ], + [ + -57.91, + -20.04 + ], + [ + -57.92, + -20.03 + ], + [ + -57.93, + -20.02 + ], + [ + -57.95, + -20.02 + ], + [ + -57.96, + -20.03 + ], + [ + -57.97, + -20.04 + ], + [ + -57.98, + -20.05 + ], + [ + -57.99, + -20.06 + ], + [ + -58, + -20.06 + ], + [ + -58.02, + -20.06 + ], + [ + -58.04, + -20.07 + ], + [ + -58.04, + -20.08 + ], + [ + -58.04, + -20.1 + ], + [ + -58.09, + -20.11 + ], + [ + -58.1, + -20.12 + ], + [ + -58.11, + -20.13 + ], + [ + -58.11, + -20.14 + ], + [ + -58.14, + -20.15 + ], + [ + -58.15, + -20.15 + ], + [ + -58.17, + -20.16 + ], + [ + -58.14, + -20.12 + ], + [ + -58.14, + -20.11 + ], + [ + -58.16, + -20.08 + ], + [ + -58.16, + -20.07 + ], + [ + -58.16, + -20.04 + ], + [ + -58.17, + -20.04 + ], + [ + -58.18, + -20.02 + ], + [ + -58.18, + -20.01 + ], + [ + -58.18, + -19.99 + ], + [ + -58.19, + -19.97 + ], + [ + -58.2, + -19.93 + ], + [ + -58.16, + -19.83 + ], + [ + -59.07, + -19.29 + ], + [ + -59.97, + -19.29 + ], + [ + -61.74, + -19.63 + ], + [ + -62.27, + -20.56 + ], + [ + -62.26, + -21.06 + ], + [ + -62.64, + -22.25 + ], + [ + -62.67, + -22.24 + ], + [ + -62.67, + -22.23 + ], + [ + -62.68, + -22.23 + ], + [ + -62.69, + -22.19 + ], + [ + -62.73, + -22.18 + ], + [ + -62.74, + -22.17 + ], + [ + -62.81, + -22.14 + ], + [ + -62.81, + -22.12 + ], + [ + -62.81, + -22.11 + ], + [ + -62.81, + -22.1 + ], + [ + -62.79, + -22.06 + ], + [ + -62.8, + -22.06 + ], + [ + -62.81, + -22.05 + ], + [ + -62.82, + -22.03 + ], + [ + -62.81, + -22.02 + ], + [ + -62.83, + -22 + ], + [ + -63.93, + -22 + ], + [ + -64.34, + -22.88 + ], + [ + -64.62, + -22.2 + ], + [ + -64.99, + -22.08 + ], + [ + -65.75, + -22.11 + ], + [ + -66.22, + -21.78 + ], + [ + -66.29, + -22.09 + ], + [ + -66.74, + -22.24 + ], + [ + -67.18, + -22.81 + ], + [ + -67.41, + -22.86 + ], + [ + -67.42, + -22.87 + ], + [ + -67.88, + -22.83 + ], + [ + -67.84, + -22.54 + ], + [ + -68.18, + -21.3 + ], + [ + -68.54, + -20.91 + ], + [ + -68.44, + -20.64 + ], + [ + -68.74, + -20.46 + ], + [ + -68.76, + -20.08 + ], + [ + -68.52, + -19.92 + ], + [ + -68.7, + -19.74 + ], + [ + -68.4, + -19.42 + ], + [ + -68.95, + -18.94 + ], + [ + -69.15, + -18.16 + ], + [ + -69.05, + -18.06 + ], + [ + -69.28, + -17.97 + ], + [ + -69.47, + -17.5 + ], + [ + -69.64, + -17.28 + ], + [ + -69.02, + -16.67 + ], + [ + -68.95, + -16.75 + ], + [ + -69.02, + -16.64 + ], + [ + -69.03, + -16.61 + ], + [ + -69.03, + -16.59 + ], + [ + -69.04, + -16.56 + ], + [ + -68.85, + -16.59 + ], + [ + -68.95, + -16.43 + ], + [ + -68.69, + -16.44 + ], + [ + -68.56, + -16.26 + ], + [ + -68.82, + -16.17 + ], + [ + -68.86, + -16.28 + ], + [ + -68.88, + -16.27 + ], + [ + -68.91, + -16.06 + ], + [ + -68.72, + -15.96 + ], + [ + -69.01, + -15.88 + ], + [ + -69.33, + -15.54 + ], + [ + -69.12, + -15.26 + ], + [ + -69.35, + -14.79 + ], + [ + -69.34, + -14.79 + ], + [ + -69.29, + -14.77 + ], + [ + -69.25, + -14.76 + ], + [ + -69.25, + -14.69 + ], + [ + -69.26, + -14.68 + ], + [ + -68.99, + -14.24 + ], + [ + -68.83, + -14.22 + ], + [ + -69.07, + -13.67 + ], + [ + -68.9, + -13.46 + ], + [ + -68.87, + -12.87 + ], + [ + -68.69, + -12.56 + ], + [ + -68.68, + -12.56 + ], + [ + -68.66, + -12.53 + ], + [ + -68.66, + -12.54 + ], + [ + -68.65, + -12.5 + ], + [ + -68.66, + -12.49 + ], + [ + -69.57, + -10.95 + ] + ], + [ + [ + -65.59, + -12.77 + ], + [ + -65.58, + -13.03 + ], + [ + -65.43, + -13.04 + ], + [ + -65.59, + -12.77 + ] + ], + [ + [ + -64.91, + -12.6 + ], + [ + -64.82, + -12.79 + ], + [ + -64.74, + -12.7 + ], + [ + -64.91, + -12.6 + ], + [ + -64.93, + -12.6 + ], + [ + -64.91, + -12.6 + ] + ], + [ + [ + -65.87, + -13.13 + ], + [ + -65.83, + -13.26 + ], + [ + -65.7, + -13.14 + ], + [ + -65.87, + -13.11 + ], + [ + -65.96, + -12.93 + ], + [ + -66.01, + -13.11 + ], + [ + -65.87, + -13.13 + ] + ], + [ + [ + -66.99, + -13.92 + ], + [ + -67.06, + -14.04 + ], + [ + -66.89, + -13.89 + ], + [ + -66.99, + -13.92 + ] + ], + [ + [ + -68.22, + -19.19 + ], + [ + -68, + -19.44 + ], + [ + -68.12, + -19.54 + ], + [ + -67.85, + -19.54 + ], + [ + -68.08, + -19.15 + ], + [ + -68.22, + -19.19 + ] + ] + ], + [ + [ + [ + -57.79, + -17.59 + ], + [ + -57.78, + -17.6 + ], + [ + -57.79, + -17.6 + ], + [ + -57.79, + -17.59 + ] + ] + ], + [ + [ + [ + -62.7, + -22.19 + ], + [ + -62.71, + -22.21 + ], + [ + -62.72, + -22.21 + ], + [ + -62.73, + -22.19 + ], + [ + -62.7, + -22.19 + ] + ] + ], + [ + [ + [ + -68.96, + -16.2 + ], + [ + -69.08, + -16.22 + ], + [ + -69.14, + -16 + ], + [ + -68.96, + -16.2 + ] + ] + ] + ] + }, + "properties": { + "A3": "BOL" + } + }, + { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + 102.14, + 22.4 + ], + [ + 102.48, + 22.78 + ], + [ + 103.03, + 22.44 + ], + [ + 103.33, + 22.81 + ], + [ + 103.53, + 22.59 + ], + [ + 103.62, + 22.79 + ], + [ + 103.71, + 22.74 + ], + [ + 103.73, + 22.72 + ], + [ + 103.74, + 22.71 + ], + [ + 103.75, + 22.7 + ], + [ + 103.75, + 22.69 + ], + [ + 103.78, + 22.68 + ], + [ + 103.78, + 22.67 + ], + [ + 103.8, + 22.66 + ], + [ + 103.8, + 22.65 + ], + [ + 103.81, + 22.64 + ], + [ + 103.82, + 22.63 + ], + [ + 103.88, + 22.57 + ], + [ + 103.89, + 22.57 + ], + [ + 103.91, + 22.55 + ], + [ + 103.93, + 22.54 + ], + [ + 103.93, + 22.53 + ], + [ + 103.95, + 22.52 + ], + [ + 103.95, + 22.51 + ], + [ + 103.97, + 22.51 + ], + [ + 104.12, + 22.81 + ], + [ + 104.37, + 22.69 + ], + [ + 104.73, + 22.82 + ], + [ + 104.86, + 22.95 + ], + [ + 104.8, + 23.12 + ], + [ + 105.32, + 23.39 + ], + [ + 105.88, + 22.92 + ], + [ + 106.14, + 23 + ], + [ + 106.83, + 22.81 + ], + [ + 106.57, + 22.47 + ], + [ + 106.68, + 22 + ], + [ + 106.71, + 21.97 + ], + [ + 106.72, + 21.97 + ], + [ + 107.02, + 21.94 + ], + [ + 107.36, + 21.6 + ], + [ + 107.89, + 21.61 + ], + [ + 107.88, + 21.61 + ], + [ + 108.02, + 21.55 + ], + [ + 108.04, + 21.55 + ], + [ + 107.37, + 21.29 + ], + [ + 107.35, + 21 + ], + [ + 106.86, + 20.99 + ], + [ + 106.95, + 20.91 + ], + [ + 106.86, + 20.98 + ], + [ + 106.81, + 20.68 + ], + [ + 106.58, + 20.56 + ], + [ + 106.57, + 20.23 + ], + [ + 105.95, + 19.92 + ], + [ + 105.61, + 18.98 + ], + [ + 105.89, + 18.42 + ], + [ + 106.43, + 18.12 + ], + [ + 106.57, + 17.55 + ], + [ + 107.49, + 16.62 + ], + [ + 107.61, + 16.58 + ], + [ + 107.64, + 16.49 + ], + [ + 107.69, + 16.52 + ], + [ + 107.73, + 16.45 + ], + [ + 107.74, + 16.5 + ], + [ + 107.91, + 16.36 + ], + [ + 107.8, + 16.44 + ], + [ + 107.77, + 16.36 + ], + [ + 107.82, + 16.29 + ], + [ + 108.02, + 16.34 + ], + [ + 108.19, + 16.21 + ], + [ + 108.14, + 16.09 + ], + [ + 108.32, + 16.14 + ], + [ + 108.28, + 15.96 + ], + [ + 108.61, + 15.45 + ], + [ + 108.94, + 15.24 + ], + [ + 108.8, + 15.14 + ], + [ + 109.08, + 14.71 + ], + [ + 109.29, + 13.9 + ], + [ + 109.29, + 13.53 + ], + [ + 109.2, + 13.62 + ], + [ + 109.33, + 13.46 + ], + [ + 109.21, + 13.4 + ], + [ + 109.46, + 12.65 + ], + [ + 109.33, + 12.66 + ], + [ + 109.34, + 12.8 + ], + [ + 109.19, + 12.63 + ], + [ + 109.34, + 12.4 + ], + [ + 109.14, + 12.43 + ], + [ + 109.28, + 11.88 + ], + [ + 109.17, + 12 + ], + [ + 109.23, + 11.73 + ], + [ + 109, + 11.54 + ], + [ + 109.02, + 11.36 + ], + [ + 107.25, + 10.38 + ], + [ + 107.08, + 10.32 + ], + [ + 107.14, + 10.44 + ], + [ + 106.92, + 10.55 + ], + [ + 106.97, + 10.41 + ], + [ + 106.85, + 10.5 + ], + [ + 106.7, + 10.28 + ], + [ + 106.78, + 10.22 + ], + [ + 106.68, + 10.24 + ], + [ + 106.77, + 10.08 + ], + [ + 106.64, + 9.97 + ], + [ + 106.45, + 10.03 + ], + [ + 106.66, + 9.83 + ], + [ + 106.44, + 9.93 + ], + [ + 106.58, + 9.7 + ], + [ + 106.5, + 9.56 + ], + [ + 106.11, + 9.73 + ], + [ + 105.93, + 9.95 + ], + [ + 106, + 9.84 + ], + [ + 106.11, + 9.73 + ], + [ + 106.3, + 9.58 + ], + [ + 106.17, + 9.35 + ], + [ + 105.54, + 9.12 + ], + [ + 105.11, + 8.64 + ], + [ + 104.81, + 8.57 + ], + [ + 104.71, + 8.63 + ], + [ + 104.9, + 8.8 + ], + [ + 104.78, + 8.81 + ], + [ + 104.85, + 9.7 + ], + [ + 105.11, + 9.95 + ], + [ + 104.59, + 10.25 + ], + [ + 104.44, + 10.42 + ], + [ + 104.5, + 10.4 + ], + [ + 104.5, + 10.41 + ], + [ + 104.52, + 10.44 + ], + [ + 104.53, + 10.45 + ], + [ + 104.55, + 10.45 + ], + [ + 104.59, + 10.51 + ], + [ + 104.63, + 10.53 + ], + [ + 104.87, + 10.52 + ], + [ + 105.06, + 10.81 + ], + [ + 105.05, + 10.92 + ], + [ + 105.07, + 10.94 + ], + [ + 105.08, + 10.94 + ], + [ + 105.09, + 10.95 + ], + [ + 105.1, + 10.95 + ], + [ + 105.12, + 10.95 + ], + [ + 105.12, + 10.94 + ], + [ + 105.1, + 10.92 + ], + [ + 105.11, + 10.92 + ], + [ + 105.12, + 10.92 + ], + [ + 105.18, + 10.91 + ], + [ + 105.2, + 10.91 + ], + [ + 105.26, + 10.9 + ], + [ + 105.27, + 10.9 + ], + [ + 105.27, + 10.89 + ], + [ + 105.31, + 10.87 + ], + [ + 105.32, + 10.87 + ], + [ + 105.34, + 10.86 + ], + [ + 105.36, + 10.88 + ], + [ + 105.42, + 10.96 + ], + [ + 105.56, + 10.96 + ], + [ + 105.57, + 10.96 + ], + [ + 105.58, + 10.96 + ], + [ + 105.75, + 11.03 + ], + [ + 105.85, + 10.86 + ], + [ + 106.19, + 10.79 + ], + [ + 106.19, + 11.05 + ], + [ + 105.87, + 11.28 + ], + [ + 105.89, + 11.41 + ], + [ + 105.89, + 11.42 + ], + [ + 105.88, + 11.52 + ], + [ + 105.88, + 11.53 + ], + [ + 105.81, + 11.62 + ], + [ + 106.02, + 11.77 + ], + [ + 106.45, + 11.67 + ], + [ + 106.41, + 11.97 + ], + [ + 106.72, + 11.97 + ], + [ + 107.19, + 12.3 + ], + [ + 107.54, + 12.35 + ], + [ + 107.48, + 12.95 + ], + [ + 107.6, + 13.3 + ], + [ + 107.45, + 13.79 + ], + [ + 107.45, + 13.8 + ], + [ + 107.46, + 13.83 + ], + [ + 107.46, + 13.84 + ], + [ + 107.47, + 13.85 + ], + [ + 107.47, + 13.86 + ], + [ + 107.47, + 13.9 + ], + [ + 107.47, + 13.91 + ], + [ + 107.34, + 14.11 + ], + [ + 107.54, + 14.69 + ], + [ + 107.47, + 15.01 + ], + [ + 107.62, + 15.05 + ], + [ + 107.62, + 15.41 + ], + [ + 107.38, + 15.49 + ], + [ + 107.21, + 15.75 + ], + [ + 107.45, + 16.09 + ], + [ + 106.97, + 16.3 + ], + [ + 106.86, + 16.54 + ], + [ + 106.68, + 16.45 + ], + [ + 106.55, + 17.01 + ], + [ + 105.75, + 17.67 + ], + [ + 105.49, + 18.2 + ], + [ + 105.18, + 18.32 + ], + [ + 105.13, + 18.72 + ], + [ + 104.74, + 18.8 + ], + [ + 103.88, + 19.31 + ], + [ + 104.12, + 19.5 + ], + [ + 104.07, + 19.68 + ], + [ + 104.56, + 19.61 + ], + [ + 104.83, + 19.79 + ], + [ + 104.99, + 20.09 + ], + [ + 104.61, + 20.24 + ], + [ + 104.66, + 20.47 + ], + [ + 104.38, + 20.44 + ], + [ + 104.64, + 20.67 + ], + [ + 104.11, + 20.98 + ], + [ + 103.68, + 20.66 + ], + [ + 103.11, + 20.9 + ], + [ + 102.81, + 21.26 + ], + [ + 102.97, + 21.74 + ], + [ + 102.83, + 21.85 + ], + [ + 102.67, + 21.65 + ], + [ + 102.61, + 21.92 + ], + [ + 102.14, + 22.4 + ] + ], + [ + [ + 104.81, + 21.96 + ], + [ + 104.85, + 21.88 + ], + [ + 104.89, + 22.05 + ], + [ + 104.81, + 21.96 + ] + ], + [ + [ + 103.49, + 21.96 + ], + [ + 103.54, + 21.92 + ], + [ + 103.51, + 21.95 + ], + [ + 103.49, + 21.96 + ] + ], + [ + [ + 107.18, + 11.16 + ], + [ + 107.27, + 11.16 + ], + [ + 107.27, + 11.18 + ], + [ + 107.27, + 11.2 + ], + [ + 107.18, + 11.29 + ], + [ + 106.97, + 11.14 + ], + [ + 107.11, + 11.05 + ], + [ + 107.18, + 11.16 + ] + ], + [ + [ + 106.17, + 11.52 + ], + [ + 106.35, + 11.33 + ], + [ + 106.41, + 11.44 + ], + [ + 106.17, + 11.52 + ] + ], + [ + [ + 106.78, + 10.62 + ], + [ + 106.66, + 10.46 + ], + [ + 106.79, + 10.46 + ], + [ + 106.78, + 10.62 + ] + ] + ], + [ + [ + [ + 107.52, + 21.14 + ], + [ + 107.38, + 21.04 + ], + [ + 107.46, + 21.28 + ], + [ + 107.61, + 21.22 + ], + [ + 107.52, + 21.14 + ] + ] + ], + [ + [ + [ + 104.08, + 10.37 + ], + [ + 104.01, + 10.01 + ], + [ + 103.83, + 10.37 + ], + [ + 104.08, + 10.37 + ] + ] + ] + ] + }, + "properties": { + "A3": "VNM" + } + }, + { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + -18.41, + 74.98 + ], + [ + -18.89, + 75.01 + ], + [ + -18.92, + 75.33 + ], + [ + -18.21, + 75.31 + ], + [ + -18.04, + 75.43 + ], + [ + -18.2, + 75.22 + ], + [ + -17.72, + 75.07 + ], + [ + -17.32, + 75.15 + ], + [ + -17.35, + 75.03 + ], + [ + -18.41, + 74.98 + ] + ] + ], + [ + [ + [ + -18.72, + 76.6 + ], + [ + -18.47, + 75.93 + ], + [ + -19.13, + 76.72 + ], + [ + -18.72, + 76.6 + ] + ] + ], + [ + [ + [ + -20.59, + 74.79 + ], + [ + -20.22, + 75.03 + ], + [ + -19.75, + 74.84 + ], + [ + -20.08, + 74.7 + ], + [ + -20.59, + 74.79 + ] + ] + ], + [ + [ + [ + -21.59, + 74.42 + ], + [ + -20.55, + 74.41 + ], + [ + -20.11, + 74.19 + ], + [ + -21.3, + 74.09 + ], + [ + -21.99, + 74.23 + ], + [ + -21.59, + 74.42 + ] + ] + ], + [ + [ + [ + -56.99, + 74.52 + ], + [ + -56.39, + 74.5 + ], + [ + -57.51, + 74.48 + ], + [ + -56.99, + 74.52 + ] + ] + ], + [ + [ + [ + -17.61, + 79.03 + ], + [ + -18.08, + 78.97 + ], + [ + -17.78, + 79.18 + ], + [ + -17.61, + 79.03 + ] + ] + ], + [ + [ + [ + -19.55, + 80.03 + ], + [ + -19.26, + 80.21 + ], + [ + -18.67, + 80.13 + ], + [ + -19.55, + 80.03 + ] + ] + ], + [ + [ + [ + -45.88, + 82.88 + ], + [ + -46.78, + 82.78 + ], + [ + -47.66, + 82.91 + ], + [ + -46.6, + 82.85 + ], + [ + -47.44, + 82.94 + ], + [ + -46.74, + 83.04 + ], + [ + -45.88, + 82.88 + ] + ] + ], + [ + [ + [ + -52.43, + 81.98 + ], + [ + -54.06, + 82.07 + ], + [ + -53.9, + 82.3 + ], + [ + -52.43, + 81.98 + ] + ] + ], + [ + [ + [ + -45.74, + 82.02 + ], + [ + -45.8, + 81.91 + ], + [ + -48.46, + 82.57 + ], + [ + -47.04, + 82.6 + ], + [ + -45.63, + 82.42 + ], + [ + -45.74, + 82.02 + ] + ] + ], + [ + [ + [ + -54.29, + 70.32 + ], + [ + -53.3, + 70.21 + ], + [ + -51.85, + 69.65 + ], + [ + -53.55, + 69.23 + ], + [ + -54.27, + 69.43 + ], + [ + -53.37, + 69.44 + ], + [ + -53.34, + 69.59 + ], + [ + -53.78, + 69.45 + ], + [ + -53.75, + 69.63 + ], + [ + -54.52, + 69.56 + ], + [ + -54.98, + 69.71 + ], + [ + -54.35, + 69.67 + ], + [ + -54.92, + 69.83 + ], + [ + -54.76, + 69.96 + ], + [ + -54.25, + 69.91 + ], + [ + -54.84, + 70.18 + ], + [ + -54.29, + 70.32 + ] + ] + ], + [ + [ + [ + -55.51, + 72.16 + ], + [ + -55.57, + 72.31 + ], + [ + -55, + 72.39 + ], + [ + -55.51, + 72.16 + ] + ] + ], + [ + [ + [ + -55.05, + 72.82 + ], + [ + -55.34, + 72.59 + ], + [ + -55.83, + 72.61 + ], + [ + -55.05, + 72.82 + ] + ] + ], + [ + [ + [ + -51, + 69.9 + ], + [ + -50.68, + 69.85 + ], + [ + -51.15, + 69.51 + ], + [ + -51.39, + 69.72 + ], + [ + -51.01, + 69.89 + ], + [ + -51.38, + 69.85 + ], + [ + -51, + 69.9 + ] + ] + ], + [ + [ + [ + -52.01, + 70.98 + ], + [ + -51.57, + 70.88 + ], + [ + -52.16, + 70.89 + ], + [ + -52.01, + 70.98 + ] + ] + ], + [ + [ + [ + -51.74, + 70.73 + ], + [ + -51.43, + 70.65 + ], + [ + -51.92, + 70.66 + ], + [ + -51.74, + 70.73 + ] + ] + ], + [ + [ + [ + -53.09, + 71.57 + ], + [ + -53.45, + 71.67 + ], + [ + -52.74, + 71.67 + ], + [ + -53.09, + 71.57 + ] + ] + ], + [ + [ + [ + -52.62, + 71.19 + ], + [ + -53.1, + 71.2 + ], + [ + -53.1, + 71.36 + ], + [ + -52.4, + 71.35 + ], + [ + -52.62, + 71.19 + ] + ] + ], + [ + [ + [ + -53.65, + 71.31 + ], + [ + -53.59, + 71.03 + ], + [ + -54, + 71.12 + ], + [ + -53.65, + 71.31 + ] + ] + ], + [ + [ + [ + -25.94, + 70.53 + ], + [ + -28.07, + 70.45 + ], + [ + -27.05, + 70.88 + ], + [ + -26.47, + 70.9 + ], + [ + -25.7, + 71.09 + ], + [ + -25.26, + 70.66 + ], + [ + -25.94, + 70.53 + ] + ] + ], + [ + [ + [ + -25.74, + 73.18 + ], + [ + -24.73, + 73.43 + ], + [ + -23.21, + 73.24 + ], + [ + -25.02, + 73.31 + ], + [ + -22.87, + 73.16 + ], + [ + -24.41, + 73.02 + ], + [ + -25.74, + 73.18 + ] + ] + ], + [ + [ + [ + -24.56, + 72.9 + ], + [ + -23.13, + 73.06 + ], + [ + -21.97, + 72.94 + ], + [ + -21.88, + 72.72 + ], + [ + -22.63, + 72.69 + ], + [ + -22.96, + 72.85 + ], + [ + -24.56, + 72.9 + ] + ] + ], + [ + [ + [ + -23.39, + 72.85 + ], + [ + -21.97, + 72.49 + ], + [ + -22.79, + 72.43 + ], + [ + -22.05, + 72.26 + ], + [ + -22.2, + 72.13 + ], + [ + -24.39, + 72.6 + ], + [ + -24.51, + 72.85 + ], + [ + -23.39, + 72.85 + ] + ] + ], + [ + [ + [ + -72, + 77.44 + ], + [ + -71.33, + 77.36 + ], + [ + -72.09, + 77.31 + ], + [ + -72.52, + 77.41 + ], + [ + -72, + 77.44 + ] + ] + ], + [ + [ + [ + -53.11, + 66.86 + ], + [ + -53.5, + 66.8 + ], + [ + -52.86, + 66.9 + ], + [ + -53.11, + 66.86 + ] + ] + ], + [ + [ + [ + -51.06, + 64.35 + ], + [ + -51.29, + 64.21 + ], + [ + -50.88, + 64.54 + ], + [ + -51.06, + 64.35 + ] + ] + ], + [ + [ + [ + -40.51, + 64.48 + ], + [ + -40.84, + 64.93 + ], + [ + -40.18, + 64.43 + ], + [ + -40.51, + 64.48 + ] + ] + ], + [ + [ + [ + -36.98, + 65.69 + ], + [ + -37.01, + 65.56 + ], + [ + -37.23, + 65.67 + ], + [ + -36.98, + 65.69 + ] + ] + ], + [ + [ + [ + -37.92, + 65.64 + ], + [ + -37.66, + 65.9 + ], + [ + -37.24, + 65.75 + ], + [ + -37.48, + 65.81 + ], + [ + -37.5, + 65.59 + ], + [ + -37.92, + 65.64 + ] + ] + ], + [ + [ + [ + -41.48, + 63.34 + ], + [ + -41.1, + 63.2 + ], + [ + -41.89, + 63.47 + ], + [ + -41.48, + 63.34 + ] + ] + ], + [ + [ + [ + -42.1, + 62.77 + ], + [ + -41.86, + 62.72 + ], + [ + -42.4, + 62.67 + ], + [ + -42.36, + 62.8 + ], + [ + -42.1, + 62.77 + ] + ] + ], + [ + [ + [ + -47.77, + 60.8 + ], + [ + -47.9, + 60.66 + ], + [ + -48.25, + 60.78 + ], + [ + -47.77, + 60.8 + ] + ] + ], + [ + [ + [ + -43.48, + 59.93 + ], + [ + -43.47, + 60.04 + ], + [ + -43.19, + 59.95 + ], + [ + -43.48, + 59.93 + ] + ] + ], + [ + [ + [ + -43.81, + 60.03 + ], + [ + -43.48, + 60.04 + ], + [ + -43.55, + 59.91 + ], + [ + -43.93, + 59.99 + ], + [ + -43.81, + 60.03 + ] + ] + ], + [ + [ + [ + -44.16, + 59.89 + ], + [ + -44.15, + 60 + ], + [ + -44.4, + 59.89 + ], + [ + -44.2, + 60.01 + ], + [ + -44.02, + 60.01 + ], + [ + -44.16, + 59.89 + ] + ] + ], + [ + [ + [ + -43.82, + 59.93 + ], + [ + -43.66, + 59.84 + ], + [ + -44.12, + 59.8 + ], + [ + -43.82, + 59.93 + ] + ] + ], + [ + [ + [ + -43.25, + 60 + ], + [ + -43.55, + 60.08 + ], + [ + -43.8, + 60.05 + ], + [ + -43.78, + 60.09 + ], + [ + -43.95, + 60.03 + ], + [ + -44.12, + 60.09 + ], + [ + -44.11, + 60.17 + ], + [ + -43.12, + 60.05 + ], + [ + -43.25, + 60 + ] + ] + ], + [ + [ + [ + -22.51, + 70.92 + ], + [ + -22.63, + 70.45 + ], + [ + -23.37, + 70.46 + ], + [ + -24.06, + 70.68 + ], + [ + -24.63, + 71.35 + ], + [ + -25.12, + 71.29 + ], + [ + -25.62, + 71.53 + ], + [ + -26.44, + 71.63 + ], + [ + -26.84, + 71.53 + ], + [ + -27.94, + 71.96 + ], + [ + -28.86, + 72.06 + ], + [ + -27.38, + 71.68 + ], + [ + -28.46, + 71.51 + ], + [ + -25.85, + 71.48 + ], + [ + -25.41, + 71.27 + ], + [ + -26.72, + 70.92 + ], + [ + -27.51, + 70.92 + ], + [ + -27.83, + 71.13 + ], + [ + -27.6, + 70.92 + ], + [ + -28.35, + 70.96 + ], + [ + -27.87, + 70.86 + ], + [ + -28, + 70.68 + ], + [ + -29.08, + 70.38 + ], + [ + -28.23, + 70.49 + ], + [ + -28.16, + 70.35 + ], + [ + -26.72, + 70.48 + ], + [ + -26.28, + 70.36 + ], + [ + -28.43, + 70.04 + ], + [ + -27.45, + 70.06 + ], + [ + -27.34, + 69.96 + ], + [ + -26.86, + 70.25 + ], + [ + -26.3, + 70.19 + ], + [ + -25.26, + 70.41 + ], + [ + -25.29, + 70.27 + ], + [ + -25.04, + 70.37 + ], + [ + -23.87, + 70.13 + ], + [ + -22.06, + 70.15 + ], + [ + -22.32, + 69.99 + ], + [ + -23.06, + 69.94 + ], + [ + -22.98, + 69.76 + ], + [ + -23.39, + 69.86 + ], + [ + -23.28, + 69.65 + ], + [ + -23.86, + 69.75 + ], + [ + -23.54, + 69.62 + ], + [ + -23.78, + 69.52 + ], + [ + -24.31, + 69.6 + ], + [ + -24.07, + 69.41 + ], + [ + -24.82, + 69.47 + ], + [ + -24.6, + 69.25 + ], + [ + -25.39, + 69.24 + ], + [ + -24.99, + 69.16 + ], + [ + -25.35, + 69 + ], + [ + -25.63, + 69.11 + ], + [ + -25.73, + 68.87 + ], + [ + -27.26, + 68.56 + ], + [ + -27.51, + 68.63 + ], + [ + -27.65, + 68.49 + ], + [ + -27.99, + 68.61 + ], + [ + -28.04, + 68.47 + ], + [ + -28.4, + 68.53 + ], + [ + -28.25, + 68.44 + ], + [ + -28.87, + 68.34 + ], + [ + -29.25, + 68.44 + ], + [ + -29.42, + 68.23 + ], + [ + -29.94, + 68.43 + ], + [ + -29.99, + 68.27 + ], + [ + -30.31, + 68.27 + ], + [ + -30.05, + 68.14 + ], + [ + -30.76, + 68.3 + ], + [ + -30.46, + 68.09 + ], + [ + -31.01, + 68.21 + ], + [ + -30.93, + 68.07 + ], + [ + -31.33, + 68.17 + ], + [ + -31.6, + 68.08 + ], + [ + -31.53, + 68.27 + ], + [ + -32.05, + 68.28 + ], + [ + -32.47, + 68.63 + ], + [ + -32.82, + 68.56 + ], + [ + -32.25, + 68.36 + ], + [ + -32.11, + 68.19 + ], + [ + -32.46, + 68.22 + ], + [ + -31.99, + 68.14 + ], + [ + -32.04, + 67.93 + ], + [ + -33.24, + 67.69 + ], + [ + -33.31, + 67.4 + ], + [ + -33.64, + 67.37 + ], + [ + -33.37, + 67.25 + ], + [ + -33.75, + 67.22 + ], + [ + -33.56, + 67.09 + ], + [ + -34.1, + 67.01 + ], + [ + -33.94, + 66.76 + ], + [ + -34.13, + 66.81 + ], + [ + -34.33, + 66.57 + ], + [ + -34.46, + 66.73 + ], + [ + -34.76, + 66.33 + ], + [ + -35.15, + 66.41 + ], + [ + -35.22, + 66.25 + ], + [ + -35.89, + 66.45 + ], + [ + -35.59, + 66.12 + ], + [ + -35.78, + 66.21 + ], + [ + -36.01, + 66.1 + ], + [ + -35.73, + 66.08 + ], + [ + -36.34, + 65.9 + ], + [ + -36.33, + 66.08 + ], + [ + -36.64, + 66.1 + ], + [ + -36.48, + 66 + ], + [ + -36.96, + 65.86 + ], + [ + -37.25, + 66.11 + ], + [ + -37.19, + 65.75 + ], + [ + -37.67, + 65.94 + ], + [ + -37.78, + 65.89 + ], + [ + -37.77, + 66.05 + ], + [ + -36.82, + 66.4 + ], + [ + -37.57, + 66.31 + ], + [ + -37.84, + 66.42 + ], + [ + -37.97, + 65.91 + ], + [ + -38.35, + 65.93 + ], + [ + -38.04, + 65.79 + ], + [ + -38.19, + 65.63 + ], + [ + -38.68, + 65.7 + ], + [ + -38.52, + 65.57 + ], + [ + -38.88, + 65.52 + ], + [ + -39.27, + 65.74 + ], + [ + -39.26, + 65.53 + ], + [ + -39.56, + 65.67 + ], + [ + -39.71, + 65.5 + ], + [ + -39.94, + 65.57 + ], + [ + -39.68, + 65.24 + ], + [ + -40.21, + 64.99 + ], + [ + -40.65, + 65.19 + ], + [ + -40.68, + 65.03 + ], + [ + -41.14, + 65.14 + ], + [ + -41.17, + 64.94 + ], + [ + -40.34, + 64.35 + ], + [ + -41.56, + 64.27 + ], + [ + -41, + 64.07 + ], + [ + -40.59, + 64.11 + ], + [ + -40.84, + 63.94 + ], + [ + -40.51, + 63.69 + ], + [ + -41.51, + 63.87 + ], + [ + -41.59, + 63.74 + ], + [ + -40.67, + 63.64 + ], + [ + -40.77, + 63.49 + ], + [ + -41.16, + 63.52 + ], + [ + -41.04, + 63.44 + ], + [ + -41.3, + 63.56 + ], + [ + -41.02, + 63.33 + ], + [ + -41.42, + 63.56 + ], + [ + -41.25, + 63.39 + ], + [ + -41.5, + 63.53 + ], + [ + -41.49, + 63.47 + ], + [ + -41.6, + 63.49 + ], + [ + -41.13, + 63.3 + ], + [ + -41.57, + 63.43 + ], + [ + -41.74, + 63.56 + ], + [ + -41.93, + 63.47 + ], + [ + -41.44, + 63.1 + ], + [ + -42.11, + 63.26 + ], + [ + -41.54, + 63.03 + ], + [ + -42.14, + 63.21 + ], + [ + -42.24, + 63.1 + ], + [ + -41.64, + 62.9 + ], + [ + -42.05, + 62.77 + ], + [ + -42.45, + 62.91 + ], + [ + -42.64, + 62.67 + ], + [ + -42.71, + 62.78 + ], + [ + -42.69, + 62.67 + ], + [ + -43.15, + 62.74 + ], + [ + -42.14, + 62.38 + ], + [ + -43, + 62.49 + ], + [ + -42.26, + 62.29 + ], + [ + -42.52, + 61.94 + ], + [ + -42.11, + 62 + ], + [ + -42.44, + 61.9 + ], + [ + -42.19, + 61.86 + ], + [ + -42.35, + 61.75 + ], + [ + -42.87, + 61.77 + ], + [ + -42.24, + 61.71 + ], + [ + -42.43, + 61.55 + ], + [ + -43.06, + 61.59 + ], + [ + -42.4, + 61.39 + ], + [ + -42.65, + 61.28 + ], + [ + -43.23, + 61.33 + ], + [ + -42.65, + 61.25 + ], + [ + -43.17, + 61.2 + ], + [ + -42.63, + 61.09 + ], + [ + -43.65, + 61.12 + ], + [ + -42.7, + 61.06 + ], + [ + -42.95, + 60.88 + ], + [ + -43.48, + 60.91 + ], + [ + -42.79, + 60.79 + ], + [ + -43.57, + 60.83 + ], + [ + -42.79, + 60.75 + ], + [ + -43.29, + 60.67 + ], + [ + -42.77, + 60.69 + ], + [ + -43.15, + 60.59 + ], + [ + -42.83, + 60.57 + ], + [ + -43.32, + 60.55 + ], + [ + -43.22, + 60.45 + ], + [ + -43.75, + 60.73 + ], + [ + -43.63, + 60.53 + ], + [ + -44.2, + 60.63 + ], + [ + -43.82, + 60.44 + ], + [ + -43.32, + 60.45 + ], + [ + -43.58, + 60.31 + ], + [ + -43.1, + 60.31 + ], + [ + -43.32, + 60.21 + ], + [ + -43.09, + 60.07 + ], + [ + -43.62, + 60.18 + ], + [ + -43.64, + 60.14 + ], + [ + -44.07, + 60.18 + ], + [ + -44.13, + 60.18 + ], + [ + -44.16, + 60.15 + ], + [ + -44.14, + 60.23 + ], + [ + -43.9, + 60.32 + ], + [ + -44.12, + 60.4 + ], + [ + -44.59, + 59.98 + ], + [ + -45.02, + 60.11 + ], + [ + -44.76, + 60.19 + ], + [ + -44.47, + 60.56 + ], + [ + -44.87, + 60.21 + ], + [ + -45.2, + 60.12 + ], + [ + -45.19, + 60.22 + ], + [ + -44.49, + 60.78 + ], + [ + -45.24, + 60.42 + ], + [ + -45.08, + 60.65 + ], + [ + -45.51, + 60.47 + ], + [ + -45.22, + 60.77 + ], + [ + -45.57, + 60.46 + ], + [ + -45.62, + 60.64 + ], + [ + -45.99, + 60.57 + ], + [ + -45.04, + 60.98 + ], + [ + -45.37, + 60.91 + ], + [ + -45.41, + 61 + ], + [ + -45.7, + 60.76 + ], + [ + -46.23, + 60.74 + ], + [ + -45.49, + 60.98 + ], + [ + -45.22, + 61.2 + ], + [ + -45.39, + 61.08 + ], + [ + -45.51, + 61.25 + ], + [ + -45.49, + 61.09 + ], + [ + -46.02, + 60.89 + ], + [ + -45.61, + 61.13 + ], + [ + -45.87, + 61.21 + ], + [ + -45.71, + 61.31 + ], + [ + -46.1, + 61.24 + ], + [ + -45.82, + 61.12 + ], + [ + -46.29, + 61.08 + ], + [ + -46.2, + 60.97 + ], + [ + -46.76, + 61.03 + ], + [ + -46.57, + 60.89 + ], + [ + -47.53, + 60.98 + ], + [ + -47.49, + 60.89 + ], + [ + -47.87, + 60.86 + ], + [ + -47.32, + 60.88 + ], + [ + -47.45, + 60.81 + ], + [ + -47.97, + 60.83 + ], + [ + -47.89, + 60.88 + ], + [ + -48, + 60.86 + ], + [ + -47.98, + 60.9 + ], + [ + -48.24, + 60.8 + ], + [ + -48.19, + 60.86 + ], + [ + -47.61, + 61.02 + ], + [ + -47.93, + 60.98 + ], + [ + -47.84, + 61.13 + ], + [ + -48.2, + 61.16 + ], + [ + -47.86, + 61.31 + ], + [ + -48.49, + 61.17 + ], + [ + -48.31, + 61.37 + ], + [ + -49.06, + 61.4 + ], + [ + -48.17, + 61.52 + ], + [ + -49.01, + 61.45 + ], + [ + -48.86, + 61.54 + ], + [ + -49.29, + 61.55 + ], + [ + -48.57, + 61.63 + ], + [ + -49.07, + 61.61 + ], + [ + -48.86, + 61.78 + ], + [ + -49.15, + 61.71 + ], + [ + -48.78, + 61.99 + ], + [ + -49.21, + 61.71 + ], + [ + -49.16, + 61.9 + ], + [ + -49.43, + 61.81 + ], + [ + -48.84, + 62.06 + ], + [ + -48.96, + 62.15 + ], + [ + -49.08, + 62.06 + ], + [ + -49.01, + 62.2 + ], + [ + -49.16, + 62 + ], + [ + -49.63, + 61.97 + ], + [ + -49.45, + 62.07 + ], + [ + -49.71, + 62.11 + ], + [ + -49.32, + 62.07 + ], + [ + -49.27, + 62.17 + ], + [ + -49.7, + 62.15 + ], + [ + -49.27, + 62.27 + ], + [ + -49.85, + 62.25 + ], + [ + -49.61, + 62.45 + ], + [ + -49.99, + 62.44 + ], + [ + -49.98, + 62.33 + ], + [ + -50.26, + 62.48 + ], + [ + -49.87, + 62.84 + ], + [ + -50.26, + 62.69 + ], + [ + -50.24, + 62.84 + ], + [ + -49.69, + 63.04 + ], + [ + -50.16, + 62.95 + ], + [ + -50.39, + 62.78 + ], + [ + -50.15, + 63 + ], + [ + -50.59, + 62.95 + ], + [ + -50.63, + 63.08 + ], + [ + -50, + 63.22 + ], + [ + -50.9, + 63.12 + ], + [ + -50.77, + 63.25 + ], + [ + -51.02, + 63.14 + ], + [ + -51.1, + 63.33 + ], + [ + -50.15, + 63.38 + ], + [ + -51.24, + 63.44 + ], + [ + -50.67, + 63.53 + ], + [ + -51.09, + 63.51 + ], + [ + -51.15, + 63.62 + ], + [ + -50.49, + 63.65 + ], + [ + -51.08, + 63.66 + ], + [ + -51.21, + 63.6 + ], + [ + -51.16, + 63.49 + ], + [ + -51.58, + 63.7 + ], + [ + -50.91, + 63.92 + ], + [ + -51.45, + 63.8 + ], + [ + -51.61, + 64.03 + ], + [ + -50.1, + 64.19 + ], + [ + -50.58, + 64.19 + ], + [ + -50.39, + 64.35 + ], + [ + -51.05, + 64.13 + ], + [ + -51.75, + 64.17 + ], + [ + -50.96, + 64.22 + ], + [ + -50.72, + 64.44 + ], + [ + -50.21, + 64.43 + ], + [ + -50.89, + 64.62 + ], + [ + -50.32, + 64.66 + ], + [ + -49.59, + 64.32 + ], + [ + -50.25, + 64.7 + ], + [ + -49.99, + 64.83 + ], + [ + -50.6, + 64.76 + ], + [ + -50.64, + 65.19 + ], + [ + -51, + 65.21 + ], + [ + -50.65, + 64.73 + ], + [ + -51.13, + 64.61 + ], + [ + -51.03, + 64.77 + ], + [ + -51.4, + 64.72 + ], + [ + -51.76, + 64.23 + ], + [ + -52.18, + 64.25 + ], + [ + -52.13, + 64.72 + ], + [ + -51.25, + 65.02 + ], + [ + -52.21, + 64.8 + ], + [ + -51.97, + 65.31 + ], + [ + -52.28, + 65.19 + ], + [ + -52.34, + 65.34 + ], + [ + -52.5, + 65.18 + ], + [ + -52.57, + 65.31 + ], + [ + -51.97, + 65.47 + ], + [ + -51.64, + 65.71 + ], + [ + -51.1, + 65.76 + ], + [ + -52, + 65.69 + ], + [ + -51.89, + 65.54 + ], + [ + -52.49, + 65.38 + ], + [ + -52.44, + 65.67 + ], + [ + -52.8, + 65.54 + ], + [ + -52.68, + 65.81 + ], + [ + -52.83, + 65.66 + ], + [ + -53.23, + 65.67 + ], + [ + -52.91, + 65.81 + ], + [ + -53.2, + 65.75 + ], + [ + -52.67, + 65.94 + ], + [ + -52.29, + 65.83 + ], + [ + -51.96, + 66.01 + ], + [ + -51.7, + 65.92 + ], + [ + -51.71, + 66.1 + ], + [ + -52.17, + 66 + ], + [ + -52.29, + 65.89 + ], + [ + -52.56, + 66.02 + ], + [ + -53.17, + 65.84 + ], + [ + -52.88, + 66.02 + ], + [ + -53.42, + 65.92 + ], + [ + -53.47, + 66.03 + ], + [ + -51.94, + 66.49 + ], + [ + -51.12, + 66.88 + ], + [ + -50.32, + 66.83 + ], + [ + -50.97, + 66.97 + ], + [ + -53.01, + 66.19 + ], + [ + -53.67, + 66.1 + ], + [ + -53.08, + 66.29 + ], + [ + -53.61, + 66.23 + ], + [ + -53.63, + 66.51 + ], + [ + -52.41, + 66.52 + ], + [ + -53.5, + 66.64 + ], + [ + -52.59, + 66.71 + ], + [ + -53.15, + 66.71 + ], + [ + -52.65, + 66.8 + ], + [ + -53.11, + 66.76 + ], + [ + -53.06, + 66.85 + ], + [ + -52.23, + 66.84 + ], + [ + -52.4, + 66.99 + ], + [ + -53.66, + 66.92 + ], + [ + -53.78, + 67.01 + ], + [ + -53.2, + 67 + ], + [ + -53.84, + 67.07 + ], + [ + -53.34, + 67.11 + ], + [ + -53.96, + 67.09 + ], + [ + -52.5, + 67.35 + ], + [ + -53.81, + 67.19 + ], + [ + -53.86, + 67.34 + ], + [ + -52.46, + 67.77 + ], + [ + -50.13, + 67.51 + ], + [ + -51.34, + 67.71 + ], + [ + -50.27, + 67.81 + ], + [ + -50.78, + 67.9 + ], + [ + -51.19, + 67.75 + ], + [ + -51.41, + 67.87 + ], + [ + -50.98, + 67.87 + ], + [ + -51.03, + 67.98 + ], + [ + -51.6, + 67.93 + ], + [ + -51.48, + 67.72 + ], + [ + -52.37, + 67.81 + ], + [ + -51.6, + 67.97 + ], + [ + -53, + 67.75 + ], + [ + -53.67, + 67.48 + ], + [ + -53.73, + 67.79 + ], + [ + -53.07, + 67.87 + ], + [ + -53.34, + 67.9 + ], + [ + -52.91, + 67.97 + ], + [ + -53.27, + 67.98 + ], + [ + -53.1, + 68.06 + ], + [ + -52.06, + 67.95 + ], + [ + -53.5, + 68.14 + ], + [ + -53.14, + 68.2 + ], + [ + -50.32, + 67.92 + ], + [ + -51.44, + 68.19 + ], + [ + -50.71, + 68.13 + ], + [ + -51.41, + 68.24 + ], + [ + -51.12, + 68.27 + ], + [ + -51.19, + 68.4 + ], + [ + -50.79, + 68.5 + ], + [ + -51.64, + 68.41 + ], + [ + -51.23, + 68.28 + ], + [ + -52.46, + 68.17 + ], + [ + -52.51, + 68.31 + ], + [ + -52.94, + 68.23 + ], + [ + -52.58, + 68.36 + ], + [ + -53.47, + 68.31 + ], + [ + -52.73, + 68.36 + ], + [ + -52.38, + 68.51 + ], + [ + -52.66, + 68.52 + ], + [ + -51.99, + 68.58 + ], + [ + -52.43, + 68.57 + ], + [ + -52.25, + 68.65 + ], + [ + -51.82, + 68.64 + ], + [ + -51.91, + 68.5 + ], + [ + -51.03, + 68.57 + ], + [ + -50.67, + 68.82 + ], + [ + -51.31, + 68.74 + ], + [ + -50.94, + 68.92 + ], + [ + -51.21, + 68.88 + ], + [ + -51.09, + 69.14 + ], + [ + -50.37, + 68.9 + ], + [ + -50.49, + 69.01 + ], + [ + -50.13, + 69.02 + ], + [ + -50.71, + 69.13 + ], + [ + -50.02, + 69.11 + ], + [ + -49.94, + 69.21 + ], + [ + -50.49, + 69.19 + ], + [ + -50.42, + 69.35 + ], + [ + -51.15, + 69.21 + ], + [ + -50.92, + 69.46 + ], + [ + -50.21, + 69.53 + ], + [ + -50.91, + 69.49 + ], + [ + -50.84, + 69.65 + ], + [ + -50.42, + 69.59 + ], + [ + -50.83, + 69.71 + ], + [ + -50.2, + 69.76 + ], + [ + -50.62, + 69.93 + ], + [ + -50.24, + 70.05 + ], + [ + -51.16, + 69.96 + ], + [ + -50.89, + 70.03 + ], + [ + -52.35, + 70.05 + ], + [ + -54.61, + 70.65 + ], + [ + -54.13, + 70.83 + ], + [ + -52.92, + 70.77 + ], + [ + -50.72, + 70.32 + ], + [ + -50.56, + 70.53 + ], + [ + -50.94, + 70.42 + ], + [ + -51.35, + 70.57 + ], + [ + -50.91, + 70.5 + ], + [ + -50.67, + 70.64 + ], + [ + -51.46, + 70.73 + ], + [ + -50.66, + 70.74 + ], + [ + -51.96, + 71.02 + ], + [ + -50.97, + 70.98 + ], + [ + -51.5, + 71.06 + ], + [ + -51.16, + 71.15 + ], + [ + -52.22, + 71.12 + ], + [ + -51.51, + 71.25 + ], + [ + -51.65, + 71.36 + ], + [ + -52.51, + 71.15 + ], + [ + -52.27, + 71.36 + ], + [ + -51.35, + 71.48 + ], + [ + -52.99, + 71.42 + ], + [ + -51.63, + 71.72 + ], + [ + -52.21, + 71.62 + ], + [ + -52.59, + 71.64 + ], + [ + -52.43, + 71.7 + ], + [ + -53.27, + 71.72 + ], + [ + -52.69, + 72.01 + ], + [ + -53.37, + 71.78 + ], + [ + -53.37, + 72.05 + ], + [ + -53.87, + 72.32 + ], + [ + -53.55, + 72.35 + ], + [ + -53.93, + 72.32 + ], + [ + -53.39, + 71.86 + ], + [ + -53.93, + 71.75 + ], + [ + -53.78, + 71.63 + ], + [ + -54.1, + 71.65 + ], + [ + -53.9, + 71.45 + ], + [ + -54.79, + 71.36 + ], + [ + -55.46, + 71.45 + ], + [ + -55.85, + 71.69 + ], + [ + -55.22, + 71.76 + ], + [ + -54.38, + 72.25 + ], + [ + -55.25, + 71.93 + ], + [ + -55.58, + 72.03 + ], + [ + -54.69, + 72.37 + ], + [ + -55.62, + 72.45 + ], + [ + -54.3, + 72.48 + ], + [ + -54.86, + 72.66 + ], + [ + -54.27, + 72.8 + ], + [ + -54.97, + 73.06 + ], + [ + -55.69, + 73.06 + ], + [ + -55.03, + 73.36 + ], + [ + -56.04, + 73.65 + ], + [ + -55.48, + 73.73 + ], + [ + -55.92, + 74.04 + ], + [ + -56.41, + 74.07 + ], + [ + -56.08, + 74.28 + ], + [ + -57.29, + 74.1 + ], + [ + -56.23, + 74.27 + ], + [ + -56.72, + 74.35 + ], + [ + -56.26, + 74.44 + ], + [ + -56.8, + 74.45 + ], + [ + -56.13, + 74.47 + ], + [ + -56.14, + 74.55 + ], + [ + -58.12, + 75.09 + ], + [ + -57.78, + 75.23 + ], + [ + -58.4, + 75.3 + ], + [ + -58.22, + 75.41 + ], + [ + -58.67, + 75.35 + ], + [ + -58.05, + 75.44 + ], + [ + -58.35, + 75.71 + ], + [ + -59.34, + 75.89 + ], + [ + -59.76, + 75.8 + ], + [ + -59.54, + 75.99 + ], + [ + -60.74, + 76.04 + ], + [ + -61.05, + 76.22 + ], + [ + -61.68, + 76.16 + ], + [ + -62.21, + 76.29 + ], + [ + -62.71, + 76.19 + ], + [ + -62.99, + 76.4 + ], + [ + -63.99, + 76.11 + ], + [ + -64.38, + 76.35 + ], + [ + -64.57, + 76.13 + ], + [ + -65.3, + 76.18 + ], + [ + -65.41, + 76.02 + ], + [ + -65.87, + 76.1 + ], + [ + -65.54, + 76.3 + ], + [ + -66.17, + 76.28 + ], + [ + -66.4, + 76.08 + ], + [ + -67.1, + 76.25 + ], + [ + -66.45, + 75.91 + ], + [ + -68.48, + 76.08 + ], + [ + -69.61, + 76.42 + ], + [ + -67.92, + 76.58 + ], + [ + -67.92, + 76.69 + ], + [ + -69.99, + 76.77 + ], + [ + -69.66, + 77.02 + ], + [ + -70.59, + 76.79 + ], + [ + -71.32, + 77.07 + ], + [ + -70.15, + 77.24 + ], + [ + -66.35, + 77.11 + ], + [ + -66.13, + 77.2 + ], + [ + -69.09, + 77.28 + ], + [ + -67.37, + 77.39 + ], + [ + -66.18, + 77.26 + ], + [ + -66.62, + 77.42 + ], + [ + -66.05, + 77.44 + ], + [ + -66.16, + 77.6 + ], + [ + -66.68, + 77.72 + ], + [ + -68.35, + 77.51 + ], + [ + -68.7, + 77.67 + ], + [ + -68.59, + 77.51 + ], + [ + -69.31, + 77.47 + ], + [ + -70.28, + 77.57 + ], + [ + -69.43, + 77.76 + ], + [ + -70.63, + 77.68 + ], + [ + -69.97, + 77.86 + ], + [ + -71.22, + 77.76 + ], + [ + -73.03, + 78.17 + ], + [ + -72.37, + 78.54 + ], + [ + -70.7, + 78.59 + ], + [ + -69.1, + 78.88 + ], + [ + -68.67, + 78.81 + ], + [ + -68.78, + 79.01 + ], + [ + -66.06, + 79.11 + ], + [ + -65.14, + 79.37 + ], + [ + -64.15, + 79.9 + ], + [ + -65.06, + 80.01 + ], + [ + -63.77, + 80.15 + ], + [ + -64.08, + 80.3 + ], + [ + -64.47, + 80.09 + ], + [ + -65.84, + 80.01 + ], + [ + -67.02, + 80.06 + ], + [ + -67.48, + 80.34 + ], + [ + -66.13, + 80.66 + ], + [ + -65.38, + 80.62 + ], + [ + -65.8, + 80.71 + ], + [ + -64.08, + 81.12 + ], + [ + -63.09, + 80.76 + ], + [ + -63.5, + 81.2 + ], + [ + -61.67, + 80.88 + ], + [ + -60.78, + 80.96 + ], + [ + -61.88, + 81.34 + ], + [ + -61.45, + 81.84 + ], + [ + -60.77, + 81.91 + ], + [ + -59.65, + 81.85 + ], + [ + -57, + 81.22 + ], + [ + -59.28, + 81.87 + ], + [ + -60.29, + 81.98 + ], + [ + -59.34, + 82.1 + ], + [ + -56.7, + 82.25 + ], + [ + -56.09, + 82.13 + ], + [ + -56.39, + 82.26 + ], + [ + -55.22, + 82.34 + ], + [ + -54.78, + 81.55 + ], + [ + -53.6, + 81.98 + ], + [ + -50.7, + 81.48 + ], + [ + -52.08, + 81.87 + ], + [ + -50.4, + 81.82 + ], + [ + -51.82, + 82.38 + ], + [ + -50.52, + 82.46 + ], + [ + -45.52, + 81.57 + ], + [ + -45.41, + 82.16 + ], + [ + -42.68, + 82.1 + ], + [ + -44.49, + 82.22 + ], + [ + -46.47, + 82.71 + ], + [ + -42.71, + 82.69 + ], + [ + -42.16, + 82.35 + ], + [ + -42, + 82.67 + ], + [ + -40.03, + 82.26 + ], + [ + -40.62, + 82.66 + ], + [ + -45.37, + 82.79 + ], + [ + -45.6, + 82.91 + ], + [ + -44.68, + 82.86 + ], + [ + -46.29, + 83.08 + ], + [ + -43.69, + 83.04 + ], + [ + -44.96, + 83.17 + ], + [ + -43.15, + 83.24 + ], + [ + -39.18, + 82.75 + ], + [ + -39.69, + 82.99 + ], + [ + -37.75, + 82.98 + ], + [ + -39.45, + 83.06 + ], + [ + -37.61, + 83.14 + ], + [ + -39.55, + 83.21 + ], + [ + -39.8, + 83.44 + ], + [ + -38.62, + 83.54 + ], + [ + -37, + 83.36 + ], + [ + -37.68, + 83.56 + ], + [ + -35.4, + 83.62 + ], + [ + -34.52, + 83.49 + ], + [ + -33.86, + 83.66 + ], + [ + -25.45, + 83.39 + ], + [ + -26.86, + 83.22 + ], + [ + -30.96, + 83.21 + ], + [ + -32.36, + 83.08 + ], + [ + -34.04, + 83.18 + ], + [ + -33.01, + 83.06 + ], + [ + -36.08, + 82.91 + ], + [ + -35.86, + 82.73 + ], + [ + -35.38, + 82.91 + ], + [ + -34.16, + 82.85 + ], + [ + -33.58, + 82.98 + ], + [ + -32.03, + 82.94 + ], + [ + -30.61, + 83.16 + ], + [ + -26.59, + 83.12 + ], + [ + -24.75, + 83.25 + ], + [ + -24.12, + 83.05 + ], + [ + -25.4, + 82.81 + ], + [ + -23.12, + 82.98 + ], + [ + -22.96, + 82.81 + ], + [ + -22.19, + 82.9 + ], + [ + -19.8, + 82.6 + ], + [ + -21.42, + 82.31 + ], + [ + -24.48, + 82.15 + ], + [ + -31.38, + 82.19 + ], + [ + -29.9, + 82.09 + ], + [ + -32.96, + 81.77 + ], + [ + -32.08, + 81.63 + ], + [ + -28.6, + 82 + ], + [ + -24.56, + 82 + ], + [ + -24.73, + 81.76 + ], + [ + -27.61, + 81.49 + ], + [ + -27.69, + 81.39 + ], + [ + -26.72, + 81.4 + ], + [ + -23.37, + 81.71 + ], + [ + -23.2, + 82 + ], + [ + -21.28, + 82.05 + ], + [ + -21.32, + 81.46 + ], + [ + -23.94, + 80.58 + ], + [ + -23.06, + 80.58 + ], + [ + -22.87, + 80.9 + ], + [ + -19.47, + 81.56 + ], + [ + -19.94, + 81.67 + ], + [ + -18.9, + 81.6 + ], + [ + -19.35, + 81.37 + ], + [ + -18.45, + 81.49 + ], + [ + -17.37, + 81.36 + ], + [ + -15.74, + 81.85 + ], + [ + -11.79, + 81.52 + ], + [ + -11.57, + 81.3 + ], + [ + -13.41, + 80.97 + ], + [ + -14.53, + 80.95 + ], + [ + -14.13, + 80.77 + ], + [ + -15.46, + 80.62 + ], + [ + -17.24, + 80.73 + ], + [ + -18.15, + 80.55 + ], + [ + -19.49, + 80.65 + ], + [ + -20.76, + 80.56 + ], + [ + -15.68, + 80.42 + ], + [ + -16.79, + 80.17 + ], + [ + -19.4, + 80.26 + ], + [ + -20.48, + 80.11 + ], + [ + -20.57, + 79.72 + ], + [ + -18.94, + 80.06 + ], + [ + -17.18, + 80 + ], + [ + -17.99, + 79.7 + ], + [ + -19.31, + 79.7 + ], + [ + -19.87, + 79.12 + ], + [ + -19.49, + 79.29 + ], + [ + -18.98, + 79.25 + ], + [ + -19.17, + 79.11 + ], + [ + -19.18, + 79.24 + ], + [ + -21.23, + 78.75 + ], + [ + -20.87, + 78.57 + ], + [ + -21.97, + 77.55 + ], + [ + -21.12, + 77.6 + ], + [ + -20.78, + 77.97 + ], + [ + -19.21, + 77.72 + ], + [ + -19.21, + 77.52 + ], + [ + -20.65, + 77.69 + ], + [ + -20.16, + 77.5 + ], + [ + -21.06, + 77.5 + ], + [ + -19.46, + 77.2 + ], + [ + -18.35, + 77.26 + ], + [ + -18.28, + 76.82 + ], + [ + -18.55, + 76.7 + ], + [ + -19.86, + 76.92 + ], + [ + -21.47, + 76.95 + ], + [ + -20.54, + 76.89 + ], + [ + -21.67, + 76.88 + ], + [ + -20.76, + 76.81 + ], + [ + -21.66, + 76.63 + ], + [ + -22.08, + 76.85 + ], + [ + -22.48, + 76.69 + ], + [ + -22.36, + 76.52 + ], + [ + -22.14, + 76.64 + ], + [ + -21.69, + 76.52 + ], + [ + -22.55, + 76.46 + ], + [ + -21.63, + 76.43 + ], + [ + -21.79, + 76.21 + ], + [ + -21.35, + 76.29 + ], + [ + -20.44, + 76.13 + ], + [ + -21.01, + 76.3 + ], + [ + -19.76, + 76.13 + ], + [ + -20.4, + 75.98 + ], + [ + -21.87, + 75.97 + ], + [ + -19.96, + 75.94 + ], + [ + -19.35, + 75.72 + ], + [ + -19.61, + 75.13 + ], + [ + -22.1, + 75.67 + ], + [ + -21.4, + 75.45 + ], + [ + -22.5, + 75.55 + ], + [ + -20.56, + 75.19 + ], + [ + -21.76, + 74.98 + ], + [ + -22.48, + 75.17 + ], + [ + -21.76, + 74.95 + ], + [ + -20.63, + 75.05 + ], + [ + -21, + 74.64 + ], + [ + -19.8, + 74.58 + ], + [ + -19.42, + 74.68 + ], + [ + -18.97, + 74.48 + ], + [ + -19.64, + 74.24 + ], + [ + -20.41, + 74.45 + ], + [ + -21.66, + 74.45 + ], + [ + -22.11, + 74.6 + ], + [ + -21.79, + 74.41 + ], + [ + -22.43, + 74.31 + ], + [ + -22.08, + 74.22 + ], + [ + -22.55, + 74.06 + ], + [ + -21.98, + 73.98 + ], + [ + -21.84, + 73.65 + ], + [ + -21.73, + 74.06 + ], + [ + -20.29, + 73.89 + ], + [ + -20.42, + 73.48 + ], + [ + -21.56, + 73.49 + ], + [ + -22.45, + 73.26 + ], + [ + -24.09, + 73.68 + ], + [ + -22.78, + 73.54 + ], + [ + -22.31, + 73.63 + ], + [ + -22.8, + 73.56 + ], + [ + -24.08, + 73.84 + ], + [ + -24.47, + 73.54 + ], + [ + -25.81, + 73.96 + ], + [ + -24.69, + 73.51 + ], + [ + -26.02, + 73.24 + ], + [ + -27.31, + 73.51 + ], + [ + -26.35, + 73.24 + ], + [ + -27.72, + 73.14 + ], + [ + -27.46, + 72.92 + ], + [ + -27.26, + 73.12 + ], + [ + -26.41, + 73.19 + ], + [ + -25.06, + 73.05 + ], + [ + -26.2, + 72.78 + ], + [ + -27.44, + 72.84 + ], + [ + -26.42, + 72.78 + ], + [ + -27.17, + 72.68 + ], + [ + -26.34, + 72.74 + ], + [ + -26.44, + 72.57 + ], + [ + -25.56, + 72.83 + ], + [ + -24.72, + 72.68 + ], + [ + -24.87, + 72.47 + ], + [ + -26.33, + 72.39 + ], + [ + -25.25, + 72.39 + ], + [ + -25.59, + 72.01 + ], + [ + -25.22, + 72.35 + ], + [ + -24.62, + 72.43 + ], + [ + -23.71, + 72.21 + ], + [ + -23.84, + 72.12 + ], + [ + -22.54, + 71.92 + ], + [ + -23.12, + 71.62 + ], + [ + -22.45, + 71.79 + ], + [ + -22.64, + 71.56 + ], + [ + -21.91, + 71.73 + ], + [ + -22.57, + 71.46 + ], + [ + -22.43, + 71.24 + ], + [ + -22.1, + 71.5 + ], + [ + -21.67, + 71.4 + ], + [ + -21.71, + 71.12 + ], + [ + -22.27, + 71.06 + ], + [ + -21.69, + 71.08 + ], + [ + -22.01, + 70.97 + ], + [ + -21.61, + 70.95 + ], + [ + -21.94, + 70.82 + ], + [ + -21.54, + 70.73 + ], + [ + -21.66, + 70.44 + ], + [ + -22.39, + 70.46 + ], + [ + -22.51, + 70.92 + ] + ], + [ + [ + -56.25, + 73.84 + ], + [ + -56.74, + 73.88 + ], + [ + -55.94, + 73.81 + ], + [ + -56.25, + 73.84 + ] + ], + [ + [ + -21.04, + 77.1 + ], + [ + -21.91, + 77.07 + ], + [ + -20.19, + 76.96 + ], + [ + -21.04, + 77.1 + ] + ], + [ + [ + -50.53, + 66.21 + ], + [ + -50.76, + 66.21 + ], + [ + -50.08, + 66.2 + ], + [ + -50.53, + 66.21 + ] + ], + [ + [ + -49.57, + 62.56 + ], + [ + -49.77, + 62.51 + ], + [ + -49.33, + 62.49 + ], + [ + -49.57, + 62.56 + ] + ] + ] + ] + }, + "properties": { + "A3": "GRL" + } + }, + { + "type": "Feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + 0.91, + 11 + ], + [ + 1.11, + 11.03 + ], + [ + 1.06, + 11.15 + ], + [ + 1.4, + 11.45 + ], + [ + 1.58, + 11.44 + ], + [ + 1.58, + 11.43 + ], + [ + 1.59, + 11.44 + ], + [ + 2.02, + 11.43 + ], + [ + 2.41, + 11.9 + ], + [ + 2.38, + 12.25 + ], + [ + 2.85, + 12.4 + ], + [ + 2.86, + 12.39 + ], + [ + 2.87, + 12.39 + ], + [ + 2.88, + 12.38 + ], + [ + 2.89, + 12.36 + ], + [ + 2.9, + 12.36 + ], + [ + 2.91, + 12.35 + ], + [ + 2.94, + 12.32 + ], + [ + 2.95, + 12.31 + ], + [ + 2.98, + 12.28 + ], + [ + 2.99, + 12.28 + ], + [ + 3.02, + 12.26 + ], + [ + 3.02, + 12.25 + ], + [ + 3.02, + 12.24 + ], + [ + 3.05, + 12.22 + ], + [ + 3.05, + 12.21 + ], + [ + 3.06, + 12.21 + ], + [ + 3.06, + 12.19 + ], + [ + 3.07, + 12.19 + ], + [ + 3.09, + 12.18 + ], + [ + 3.1, + 12.17 + ], + [ + 3.13, + 12.15 + ], + [ + 3.13, + 12.14 + ], + [ + 3.18, + 12.1 + ], + [ + 3.18, + 12.09 + ], + [ + 3.19, + 12.09 + ], + [ + 3.21, + 12.07 + ], + [ + 3.22, + 12.06 + ], + [ + 3.26, + 12.02 + ], + [ + 3.27, + 12.01 + ], + [ + 3.27, + 11.98 + ], + [ + 3.27, + 11.97 + ], + [ + 3.27, + 11.93 + ], + [ + 3.28, + 11.95 + ], + [ + 3.3, + 11.91 + ], + [ + 3.3, + 11.9 + ], + [ + 3.33, + 11.88 + ], + [ + 3.35, + 11.88 + ], + [ + 3.37, + 11.89 + ], + [ + 3.4, + 11.88 + ], + [ + 3.41, + 11.88 + ], + [ + 3.45, + 11.86 + ], + [ + 3.47, + 11.86 + ], + [ + 3.48, + 11.86 + ], + [ + 3.49, + 11.85 + ], + [ + 3.5, + 11.84 + ], + [ + 3.52, + 11.81 + ], + [ + 3.52, + 11.8 + ], + [ + 3.53, + 11.78 + ], + [ + 3.54, + 11.78 + ], + [ + 3.55, + 11.78 + ], + [ + 3.56, + 11.77 + ], + [ + 3.56, + 11.76 + ], + [ + 3.56, + 11.75 + ], + [ + 3.55, + 11.74 + ], + [ + 3.55, + 11.73 + ], + [ + 3.56, + 11.73 + ], + [ + 3.58, + 11.72 + ], + [ + 3.59, + 11.7 + ], + [ + 3.49, + 11.3 + ], + [ + 3.72, + 11.13 + ], + [ + 3.84, + 10.59 + ], + [ + 3.79, + 10.41 + ], + [ + 3.62, + 10.42 + ], + [ + 3.56, + 9.9 + ], + [ + 3.35, + 9.83 + ], + [ + 3.15, + 9.5 + ], + [ + 3.09, + 9.1 + ], + [ + 2.78, + 9.07 + ], + [ + 2.75, + 7.27 + ], + [ + 2.75, + 7.26 + ], + [ + 2.74, + 6.9 + ], + [ + 2.74, + 6.86 + ], + [ + 2.71, + 6.46 + ], + [ + 2.71, + 6.45 + ], + [ + 2.71, + 6.38 + ], + [ + 1.63, + 6.24 + ], + [ + 1.8, + 6.32 + ], + [ + 1.79, + 6.34 + ], + [ + 1.79, + 6.36 + ], + [ + 1.7, + 6.55 + ], + [ + 1.69, + 6.55 + ], + [ + 1.67, + 6.56 + ], + [ + 1.56, + 6.97 + ], + [ + 1.62, + 9.04 + ], + [ + 1.34, + 9.54 + ], + [ + 1.36, + 10 + ], + [ + 0.78, + 10.38 + ], + [ + 0.91, + 11 + ] + ], + [ + [ + 2.42, + 6.52 + ], + [ + 2.35, + 6.4 + ], + [ + 2.52, + 6.4 + ], + [ + 2.42, + 6.52 + ] + ] + ] + }, + "properties": { + "A3": "BEN" + } + }, + { + "type": "Feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + -169.92, + -19.06 + ], + [ + -169.81, + -18.96 + ], + [ + -169.84, + -19.15 + ], + [ + -169.92, + -19.06 + ] + ] + ] + }, + "properties": { + "A3": "NIU" + } + }, + { + "type": "Feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + 100.08, + 20.35 + ], + [ + 100.08, + 20.36 + ], + [ + 100.1, + 20.37 + ], + [ + 100.11, + 20.39 + ], + [ + 100.12, + 20.41 + ], + [ + 100.12, + 20.42 + ], + [ + 100.12, + 20.44 + ], + [ + 100.12, + 20.45 + ], + [ + 100.13, + 20.46 + ], + [ + 100.13, + 20.48 + ], + [ + 100.15, + 20.55 + ], + [ + 100.15, + 20.56 + ], + [ + 100.16, + 20.57 + ], + [ + 100.17, + 20.61 + ], + [ + 100.36, + 20.83 + ], + [ + 100.62, + 20.85 + ], + [ + 100.52, + 20.95 + ], + [ + 100.72, + 21.31 + ], + [ + 101.15, + 21.56 + ], + [ + 101.18, + 21.42 + ], + [ + 101.22, + 21.31 + ], + [ + 101.25, + 21.3 + ], + [ + 101.25, + 21.29 + ], + [ + 101.24, + 21.28 + ], + [ + 101.24, + 21.27 + ], + [ + 101.23, + 21.27 + ], + [ + 101.23, + 21.26 + ], + [ + 101.22, + 21.26 + ], + [ + 101.23, + 21.25 + ], + [ + 101.22, + 21.24 + ], + [ + 101.22, + 21.23 + ], + [ + 101.59, + 21.18 + ], + [ + 101.61, + 21.18 + ], + [ + 101.62, + 21.18 + ], + [ + 101.62, + 21.19 + ], + [ + 101.63, + 21.2 + ], + [ + 101.65, + 21.2 + ], + [ + 101.68, + 21.19 + ], + [ + 101.68, + 21.18 + ], + [ + 101.79, + 21.18 + ], + [ + 101.79, + 21.2 + ], + [ + 101.8, + 21.21 + ], + [ + 101.75, + 21.41 + ], + [ + 101.75, + 21.43 + ], + [ + 101.75, + 21.47 + ], + [ + 101.74, + 21.48 + ], + [ + 101.74, + 21.49 + ], + [ + 101.75, + 21.58 + ], + [ + 101.76, + 21.58 + ], + [ + 101.81, + 21.58 + ], + [ + 101.81, + 21.59 + ], + [ + 101.83, + 21.6 + ], + [ + 101.83, + 21.62 + ], + [ + 101.82, + 21.63 + ], + [ + 101.81, + 21.64 + ], + [ + 101.79, + 21.64 + ], + [ + 101.78, + 21.66 + ], + [ + 101.77, + 21.69 + ], + [ + 101.77, + 21.7 + ], + [ + 101.62, + 21.97 + ], + [ + 101.62, + 21.98 + ], + [ + 101.56, + 22.22 + ], + [ + 101.6, + 22.27 + ], + [ + 101.62, + 22.27 + ], + [ + 101.63, + 22.28 + ], + [ + 101.65, + 22.34 + ], + [ + 101.65, + 22.35 + ], + [ + 101.66, + 22.36 + ], + [ + 101.66, + 22.37 + ], + [ + 101.67, + 22.37 + ], + [ + 101.66, + 22.42 + ], + [ + 101.67, + 22.42 + ], + [ + 101.67, + 22.44 + ], + [ + 101.67, + 22.45 + ], + [ + 101.68, + 22.48 + ], + [ + 101.71, + 22.48 + ], + [ + 101.73, + 22.5 + ], + [ + 101.74, + 22.5 + ], + [ + 101.78, + 22.5 + ], + [ + 102.14, + 22.4 + ], + [ + 102.61, + 21.92 + ], + [ + 102.67, + 21.65 + ], + [ + 102.83, + 21.85 + ], + [ + 102.97, + 21.74 + ], + [ + 102.81, + 21.26 + ], + [ + 103.11, + 20.9 + ], + [ + 103.68, + 20.66 + ], + [ + 104.11, + 20.98 + ], + [ + 104.64, + 20.67 + ], + [ + 104.38, + 20.44 + ], + [ + 104.66, + 20.47 + ], + [ + 104.61, + 20.24 + ], + [ + 104.99, + 20.09 + ], + [ + 104.83, + 19.79 + ], + [ + 104.56, + 19.61 + ], + [ + 104.07, + 19.68 + ], + [ + 104.12, + 19.5 + ], + [ + 103.88, + 19.31 + ], + [ + 104.74, + 18.8 + ], + [ + 105.13, + 18.72 + ], + [ + 105.18, + 18.32 + ], + [ + 105.49, + 18.2 + ], + [ + 105.75, + 17.67 + ], + [ + 106.55, + 17.01 + ], + [ + 106.68, + 16.45 + ], + [ + 106.86, + 16.54 + ], + [ + 106.97, + 16.3 + ], + [ + 107.45, + 16.09 + ], + [ + 107.21, + 15.75 + ], + [ + 107.38, + 15.49 + ], + [ + 107.62, + 15.41 + ], + [ + 107.62, + 15.05 + ], + [ + 107.47, + 15.01 + ], + [ + 107.54, + 14.69 + ], + [ + 107.45, + 14.53 + ], + [ + 107.3, + 14.59 + ], + [ + 106.85, + 14.29 + ], + [ + 106.53, + 14.59 + ], + [ + 106.52, + 14.59 + ], + [ + 106.51, + 14.59 + ], + [ + 106.5, + 14.58 + ], + [ + 106.48, + 14.56 + ], + [ + 106.47, + 14.52 + ], + [ + 106.48, + 14.51 + ], + [ + 106.46, + 14.52 + ], + [ + 106.45, + 14.52 + ], + [ + 106.44, + 14.52 + ], + [ + 106.43, + 14.52 + ], + [ + 106.43, + 14.5 + ], + [ + 106.44, + 14.49 + ], + [ + 106.42, + 14.46 + ], + [ + 106.41, + 14.45 + ], + [ + 106.4, + 14.45 + ], + [ + 106.39, + 14.45 + ], + [ + 106.38, + 14.45 + ], + [ + 106.36, + 14.45 + ], + [ + 106.33, + 14.44 + ], + [ + 106, + 14.37 + ], + [ + 106.19, + 14.06 + ], + [ + 105.98, + 13.93 + ], + [ + 105.97, + 13.93 + ], + [ + 105.6, + 14.15 + ], + [ + 105.36, + 14.1 + ], + [ + 105.21, + 14.34 + ], + [ + 105.53, + 14.55 + ], + [ + 105.57, + 15.32 + ], + [ + 105.55, + 15.32 + ], + [ + 105.52, + 15.32 + ], + [ + 105.48, + 15.33 + ], + [ + 105.47, + 15.34 + ], + [ + 105.47, + 15.35 + ], + [ + 105.47, + 15.37 + ], + [ + 105.48, + 15.37 + ], + [ + 105.49, + 15.38 + ], + [ + 105.5, + 15.39 + ], + [ + 105.53, + 15.39 + ], + [ + 105.55, + 15.4 + ], + [ + 105.56, + 15.4 + ], + [ + 105.59, + 15.42 + ], + [ + 105.59, + 15.43 + ], + [ + 105.6, + 15.45 + ], + [ + 105.6, + 15.46 + ], + [ + 105.6, + 15.48 + ], + [ + 105.6, + 15.5 + ], + [ + 105.59, + 15.5 + ], + [ + 105.6, + 15.53 + ], + [ + 105.61, + 15.55 + ], + [ + 105.63, + 15.58 + ], + [ + 105.63, + 15.59 + ], + [ + 105.63, + 15.6 + ], + [ + 105.63, + 15.61 + ], + [ + 105.63, + 15.62 + ], + [ + 105.64, + 15.64 + ], + [ + 105.64, + 15.65 + ], + [ + 105.63, + 15.67 + ], + [ + 105.61, + 15.7 + ], + [ + 105.6, + 15.72 + ], + [ + 105.58, + 15.73 + ], + [ + 105.57, + 15.73 + ], + [ + 105.56, + 15.75 + ], + [ + 105.55, + 15.75 + ], + [ + 105.53, + 15.75 + ], + [ + 105.5, + 15.77 + ], + [ + 105.49, + 15.76 + ], + [ + 105.47, + 15.75 + ], + [ + 105.45, + 15.75 + ], + [ + 105.44, + 15.75 + ], + [ + 105.42, + 15.77 + ], + [ + 105.41, + 15.79 + ], + [ + 105.4, + 15.79 + ], + [ + 105.39, + 15.81 + ], + [ + 105.39, + 15.82 + ], + [ + 105.38, + 15.85 + ], + [ + 105.37, + 15.86 + ], + [ + 105.36, + 15.88 + ], + [ + 105.36, + 15.89 + ], + [ + 105.35, + 15.91 + ], + [ + 105.34, + 15.93 + ], + [ + 105.36, + 15.95 + ], + [ + 105.36, + 15.96 + ], + [ + 105.37, + 15.98 + ], + [ + 105.4, + 15.99 + ], + [ + 105.41, + 15.99 + ], + [ + 105.42, + 15.99 + ], + [ + 105.42, + 16.01 + ], + [ + 105.4, + 16.02 + ], + [ + 105.39, + 16.02 + ], + [ + 105.38, + 16.02 + ], + [ + 105.33, + 16.03 + ], + [ + 105.3, + 16.04 + ], + [ + 105.2, + 16.05 + ], + [ + 105.17, + 16.07 + ], + [ + 105.14, + 16.07 + ], + [ + 105.13, + 16.08 + ], + [ + 105.07, + 16.1 + ], + [ + 105.07, + 16.09 + ], + [ + 105.07, + 16.1 + ], + [ + 105.04, + 16.13 + ], + [ + 105.03, + 16.14 + ], + [ + 105.02, + 16.24 + ], + [ + 105.01, + 16.25 + ], + [ + 105, + 16.26 + ], + [ + 104.99, + 16.27 + ], + [ + 104.93, + 16.33 + ], + [ + 104.92, + 16.34 + ], + [ + 104.89, + 16.35 + ], + [ + 104.88, + 16.37 + ], + [ + 104.87, + 16.39 + ], + [ + 104.85, + 16.44 + ], + [ + 104.81, + 16.47 + ], + [ + 104.8, + 16.48 + ], + [ + 104.78, + 16.49 + ], + [ + 104.77, + 16.5 + ], + [ + 104.76, + 16.51 + ], + [ + 104.75, + 16.52 + ], + [ + 104.74, + 16.61 + ], + [ + 104.74, + 16.62 + ], + [ + 104.74, + 16.63 + ], + [ + 104.75, + 16.66 + ], + [ + 104.75, + 16.67 + ], + [ + 104.76, + 16.74 + ], + [ + 104.75, + 16.75 + ], + [ + 104.74, + 16.8 + ], + [ + 104.74, + 16.81 + ], + [ + 104.75, + 16.84 + ], + [ + 104.76, + 16.85 + ], + [ + 104.76, + 16.86 + ], + [ + 104.75, + 16.87 + ], + [ + 104.75, + 17.06 + ], + [ + 104.76, + 17.07 + ], + [ + 104.78, + 17.11 + ], + [ + 104.79, + 17.13 + ], + [ + 104.8, + 17.15 + ], + [ + 104.8, + 17.17 + ], + [ + 104.8, + 17.39 + ], + [ + 104.79, + 17.41 + ], + [ + 104.78, + 17.43 + ], + [ + 104.76, + 17.44 + ], + [ + 104.75, + 17.46 + ], + [ + 104.74, + 17.47 + ], + [ + 104.73, + 17.49 + ], + [ + 104.72, + 17.51 + ], + [ + 104.71, + 17.52 + ], + [ + 104.69, + 17.53 + ], + [ + 104.66, + 17.55 + ], + [ + 104.64, + 17.56 + ], + [ + 104.63, + 17.57 + ], + [ + 104.62, + 17.57 + ], + [ + 104.61, + 17.58 + ], + [ + 104.6, + 17.58 + ], + [ + 104.59, + 17.59 + ], + [ + 104.58, + 17.59 + ], + [ + 104.55, + 17.61 + ], + [ + 104.53, + 17.62 + ], + [ + 104.5, + 17.63 + ], + [ + 104.49, + 17.64 + ], + [ + 104.47, + 17.66 + ], + [ + 104.46, + 17.67 + ], + [ + 104.45, + 17.69 + ], + [ + 104.44, + 17.7 + ], + [ + 104.43, + 17.71 + ], + [ + 104.42, + 17.72 + ], + [ + 104.4, + 17.74 + ], + [ + 104.39, + 17.76 + ], + [ + 104.38, + 17.78 + ], + [ + 104.37, + 17.8 + ], + [ + 104.36, + 17.81 + ], + [ + 104.35, + 17.82 + ], + [ + 104.33, + 17.84 + ], + [ + 104.32, + 17.84 + ], + [ + 104.27, + 17.87 + ], + [ + 104.26, + 17.89 + ], + [ + 104.25, + 17.91 + ], + [ + 104.25, + 17.92 + ], + [ + 104.24, + 17.94 + ], + [ + 104.22, + 17.98 + ], + [ + 104.17, + 18.05 + ], + [ + 104.15, + 18.06 + ], + [ + 104.14, + 18.07 + ], + [ + 104.11, + 18.1 + ], + [ + 104.1, + 18.12 + ], + [ + 104.09, + 18.15 + ], + [ + 104.09, + 18.16 + ], + [ + 104.07, + 18.19 + ], + [ + 104.06, + 18.21 + ], + [ + 104.03, + 18.26 + ], + [ + 104.01, + 18.29 + ], + [ + 103.99, + 18.31 + ], + [ + 103.97, + 18.34 + ], + [ + 103.85, + 18.3 + ], + [ + 103.84, + 18.31 + ], + [ + 103.83, + 18.33 + ], + [ + 103.8, + 18.34 + ], + [ + 103.74, + 18.34 + ], + [ + 103.73, + 18.34 + ], + [ + 103.72, + 18.34 + ], + [ + 103.7, + 18.34 + ], + [ + 103.69, + 18.35 + ], + [ + 103.68, + 18.36 + ], + [ + 103.67, + 18.37 + ], + [ + 103.66, + 18.38 + ], + [ + 103.65, + 18.38 + ], + [ + 103.63, + 18.39 + ], + [ + 103.6, + 18.41 + ], + [ + 103.59, + 18.4 + ], + [ + 103.58, + 18.4 + ], + [ + 103.57, + 18.41 + ], + [ + 103.53, + 18.42 + ], + [ + 103.49, + 18.42 + ], + [ + 103.48, + 18.42 + ], + [ + 103.45, + 18.43 + ], + [ + 103.44, + 18.44 + ], + [ + 103.42, + 18.45 + ], + [ + 103.39, + 18.44 + ], + [ + 103.38, + 18.44 + ], + [ + 103.37, + 18.44 + ], + [ + 103.31, + 18.43 + ], + [ + 103.29, + 18.42 + ], + [ + 103.28, + 18.4 + ], + [ + 103.26, + 18.38 + ], + [ + 103.24, + 18.36 + ], + [ + 103.24, + 18.35 + ], + [ + 103.28, + 18.33 + ], + [ + 103.29, + 18.32 + ], + [ + 103.3, + 18.31 + ], + [ + 103.29, + 18.3 + ], + [ + 103.25, + 18.29 + ], + [ + 103.22, + 18.28 + ], + [ + 103.19, + 18.27 + ], + [ + 103.18, + 18.26 + ], + [ + 103.16, + 18.24 + ], + [ + 103.16, + 18.2 + ], + [ + 103.15, + 18.19 + ], + [ + 103.15, + 18.17 + ], + [ + 103.13, + 18.16 + ], + [ + 103.1, + 18.14 + ], + [ + 103.09, + 18.13 + ], + [ + 103.08, + 18.12 + ], + [ + 103.08, + 18.1 + ], + [ + 103.07, + 18.07 + ], + [ + 103.08, + 18.06 + ], + [ + 103.08, + 18.05 + ], + [ + 103.08, + 18.03 + ], + [ + 103.06, + 18.01 + ], + [ + 103.05, + 17.99 + ], + [ + 103.04, + 17.98 + ], + [ + 103.01, + 17.98 + ], + [ + 102.99, + 17.99 + ], + [ + 102.98, + 18 + ], + [ + 102.95, + 18 + ], + [ + 102.94, + 18 + ], + [ + 102.93, + 18 + ], + [ + 102.92, + 17.99 + ], + [ + 102.91, + 17.98 + ], + [ + 102.9, + 17.98 + ], + [ + 102.89, + 17.98 + ], + [ + 102.87, + 17.98 + ], + [ + 102.84, + 17.96 + ], + [ + 102.83, + 17.95 + ], + [ + 102.82, + 17.94 + ], + [ + 102.81, + 17.94 + ], + [ + 102.79, + 17.94 + ], + [ + 102.78, + 17.93 + ], + [ + 102.78, + 17.92 + ], + [ + 102.77, + 17.91 + ], + [ + 102.76, + 17.89 + ], + [ + 102.74, + 17.89 + ], + [ + 102.73, + 17.88 + ], + [ + 102.72, + 17.88 + ], + [ + 102.71, + 17.88 + ], + [ + 102.7, + 17.88 + ], + [ + 102.69, + 17.87 + ], + [ + 102.68, + 17.85 + ], + [ + 102.69, + 17.83 + ], + [ + 102.69, + 17.81 + ], + [ + 102.66, + 17.82 + ], + [ + 102.64, + 17.83 + ], + [ + 102.6, + 17.83 + ], + [ + 102.59, + 17.84 + ], + [ + 102.59, + 17.85 + ], + [ + 102.61, + 17.89 + ], + [ + 102.61, + 17.9 + ], + [ + 102.61, + 17.92 + ], + [ + 102.61, + 17.94 + ], + [ + 102.61, + 17.95 + ], + [ + 102.58, + 17.96 + ], + [ + 102.57, + 17.97 + ], + [ + 102.55, + 17.97 + ], + [ + 102.45, + 17.98 + ], + [ + 102.44, + 17.98 + ], + [ + 102.43, + 17.98 + ], + [ + 102.41, + 17.99 + ], + [ + 102.4, + 18 + ], + [ + 102.36, + 18.04 + ], + [ + 102.33, + 18.05 + ], + [ + 102.29, + 18.06 + ], + [ + 102.27, + 18.07 + ], + [ + 102.26, + 18.08 + ], + [ + 102.25, + 18.09 + ], + [ + 102.24, + 18.1 + ], + [ + 102.24, + 18.11 + ], + [ + 102.23, + 18.12 + ], + [ + 102.22, + 18.13 + ], + [ + 102.21, + 18.13 + ], + [ + 102.18, + 18.16 + ], + [ + 102.18, + 18.17 + ], + [ + 102.16, + 18.2 + ], + [ + 102.15, + 18.2 + ], + [ + 102.15, + 18.22 + ], + [ + 102.09, + 18.22 + ], + [ + 102.08, + 18.22 + ], + [ + 102.06, + 18.21 + ], + [ + 102.04, + 18.2 + ], + [ + 102.04, + 18.19 + ], + [ + 102.04, + 18.18 + ], + [ + 102.03, + 18.15 + ], + [ + 102.01, + 18.14 + ], + [ + 102, + 18.12 + ], + [ + 101.98, + 18.11 + ], + [ + 101.96, + 18.11 + ], + [ + 101.95, + 18.09 + ], + [ + 101.94, + 18.08 + ], + [ + 101.93, + 18.06 + ], + [ + 101.92, + 18.05 + ], + [ + 101.85, + 18.05 + ], + [ + 101.83, + 18.06 + ], + [ + 101.77, + 18.05 + ], + [ + 101.76, + 18.04 + ], + [ + 101.76, + 18.03 + ], + [ + 101.76, + 18.02 + ], + [ + 101.75, + 18.01 + ], + [ + 101.74, + 17.98 + ], + [ + 101.73, + 17.95 + ], + [ + 101.73, + 17.94 + ], + [ + 101.73, + 17.93 + ], + [ + 101.73, + 17.92 + ], + [ + 101.68, + 17.91 + ], + [ + 101.65, + 17.9 + ], + [ + 101.64, + 17.9 + ], + [ + 101.61, + 17.88 + ], + [ + 101.61, + 17.87 + ], + [ + 101.59, + 17.85 + ], + [ + 101.58, + 17.87 + ], + [ + 101.57, + 17.87 + ], + [ + 101.56, + 17.84 + ], + [ + 101.56, + 17.83 + ], + [ + 101.55, + 17.81 + ], + [ + 101.31, + 17.64 + ], + [ + 101.25, + 17.58 + ], + [ + 101.23, + 17.54 + ], + [ + 101.14, + 17.48 + ], + [ + 101.14, + 17.47 + ], + [ + 101.12, + 17.48 + ], + [ + 101.1, + 17.5 + ], + [ + 100.98, + 17.76 + ], + [ + 101.18, + 18.07 + ], + [ + 101.05, + 18.44 + ], + [ + 101.36, + 19.05 + ], + [ + 101.19, + 19.4 + ], + [ + 101.29, + 19.57 + ], + [ + 100.49, + 19.54 + ], + [ + 100.4, + 19.75 + ], + [ + 100.57, + 20.14 + ], + [ + 100.57, + 20.17 + ], + [ + 100.56, + 20.17 + ], + [ + 100.55, + 20.17 + ], + [ + 100.53, + 20.15 + ], + [ + 100.52, + 20.14 + ], + [ + 100.49, + 20.17 + ], + [ + 100.49, + 20.18 + ], + [ + 100.48, + 20.18 + ], + [ + 100.47, + 20.2 + ], + [ + 100.45, + 20.21 + ], + [ + 100.46, + 20.22 + ], + [ + 100.45, + 20.23 + ], + [ + 100.44, + 20.24 + ], + [ + 100.43, + 20.24 + ], + [ + 100.41, + 20.26 + ], + [ + 100.41, + 20.27 + ], + [ + 100.41, + 20.28 + ], + [ + 100.4, + 20.29 + ], + [ + 100.39, + 20.3 + ], + [ + 100.39, + 20.31 + ], + [ + 100.38, + 20.32 + ], + [ + 100.38, + 20.33 + ], + [ + 100.38, + 20.34 + ], + [ + 100.37, + 20.35 + ], + [ + 100.36, + 20.37 + ], + [ + 100.33, + 20.4 + ], + [ + 100.32, + 20.4 + ], + [ + 100.31, + 20.4 + ], + [ + 100.3, + 20.4 + ], + [ + 100.28, + 20.4 + ], + [ + 100.26, + 20.39 + ], + [ + 100.25, + 20.38 + ], + [ + 100.22, + 20.35 + ], + [ + 100.22, + 20.34 + ], + [ + 100.23, + 20.34 + ], + [ + 100.23, + 20.32 + ], + [ + 100.22, + 20.32 + ], + [ + 100.2, + 20.31 + ], + [ + 100.19, + 20.31 + ], + [ + 100.16, + 20.3 + ], + [ + 100.15, + 20.29 + ], + [ + 100.17, + 20.29 + ], + [ + 100.18, + 20.27 + ], + [ + 100.18, + 20.25 + ], + [ + 100.16, + 20.24 + ], + [ + 100.15, + 20.24 + ], + [ + 100.14, + 20.25 + ], + [ + 100.12, + 20.25 + ], + [ + 100.11, + 20.25 + ], + [ + 100.1, + 20.26 + ], + [ + 100.09, + 20.28 + ], + [ + 100.09, + 20.29 + ], + [ + 100.1, + 20.3 + ], + [ + 100.1, + 20.31 + ], + [ + 100.09, + 20.34 + ], + [ + 100.08, + 20.35 + ] + ], + [ + [ + 102.5, + 18.77 + ], + [ + 102.66, + 18.43 + ], + [ + 102.74, + 18.67 + ], + [ + 102.5, + 18.77 + ] + ], + [ + [ + 107.2, + 15.07 + ], + [ + 107.14, + 14.98 + ], + [ + 107.26, + 14.94 + ], + [ + 107.2, + 15.07 + ] + ] + ] + }, + "properties": { + "A3": "LAO" + } + }, + { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + 34.96, + 29.36 + ], + [ + 36.07, + 29.18 + ], + [ + 36.75, + 29.87 + ], + [ + 37.5, + 30 + ], + [ + 37.67, + 30.33 + ], + [ + 38, + 30.5 + ], + [ + 37, + 31.5 + ], + [ + 39.01, + 32 + ], + [ + 39.3, + 32.23 + ], + [ + 40, + 32.06 + ], + [ + 42.98, + 30.73 + ], + [ + 42.98, + 30.48 + ], + [ + 44.72, + 29.2 + ], + [ + 46.55, + 29.1 + ], + [ + 47.47, + 29 + ], + [ + 47.7, + 28.52 + ], + [ + 48.43, + 28.54 + ], + [ + 48.89, + 27.82 + ], + [ + 48.85, + 27.6 + ], + [ + 49.25, + 27.53 + ], + [ + 49.31, + 27.42 + ], + [ + 49.12, + 27.41 + ], + [ + 49.44, + 27.08 + ], + [ + 49.49, + 27.34 + ], + [ + 49.7, + 27.3 + ], + [ + 49.49, + 27.3 + ], + [ + 49.55, + 27.16 + ], + [ + 49.63, + 27.28 + ], + [ + 49.58, + 27.09 + ], + [ + 50.16, + 26.65 + ], + [ + 49.99, + 26.74 + ], + [ + 50.24, + 26.37 + ], + [ + 50.16, + 26.04 + ], + [ + 50.03, + 26.2 + ], + [ + 50, + 25.99 + ], + [ + 50.81, + 24.74 + ], + [ + 50.99, + 24.5 + ], + [ + 51.3, + 24.51 + ], + [ + 51.5, + 24.57 + ], + [ + 51.28, + 24.3 + ], + [ + 51.59, + 24.25 + ], + [ + 52.58, + 22.94 + ], + [ + 55.21, + 22.71 + ], + [ + 55.67, + 22 + ], + [ + 55, + 20 + ], + [ + 52, + 19 + ], + [ + 49.12, + 18.62 + ], + [ + 48.18, + 18.17 + ], + [ + 47.47, + 17.12 + ], + [ + 47.18, + 16.95 + ], + [ + 47, + 16.95 + ], + [ + 46.75, + 17.28 + ], + [ + 46.1, + 17.25 + ], + [ + 45.22, + 17.44 + ], + [ + 43.83, + 17.34 + ], + [ + 43.35, + 17.56 + ], + [ + 43.16, + 17.11 + ], + [ + 43.23, + 16.65 + ], + [ + 42.77, + 16.4 + ], + [ + 42.71, + 16.73 + ], + [ + 42.36, + 17.19 + ], + [ + 42.37, + 17.01 + ], + [ + 42.31, + 17.45 + ], + [ + 41.77, + 17.84 + ], + [ + 41.26, + 18.61 + ], + [ + 40.79, + 19.73 + ], + [ + 40.11, + 20.27 + ], + [ + 39.73, + 20.39 + ], + [ + 39.19, + 21.1 + ], + [ + 39.17, + 21.78 + ], + [ + 39.08, + 21.71 + ], + [ + 38.93, + 22.01 + ], + [ + 39.14, + 22.41 + ], + [ + 38.46, + 23.78 + ], + [ + 37.95, + 24.21 + ], + [ + 37.43, + 24.37 + ], + [ + 37.16, + 24.82 + ], + [ + 37.24, + 25.19 + ], + [ + 36.64, + 25.85 + ], + [ + 36.71, + 26.03 + ], + [ + 36.5, + 26.12 + ], + [ + 35.22, + 28.05 + ], + [ + 34.57, + 28.09 + ], + [ + 34.96, + 29.36 + ] + ] + ], + [ + [ + [ + 40.11, + 20.21 + ], + [ + 40, + 20.26 + ], + [ + 40.2, + 20.17 + ], + [ + 40.11, + 20.21 + ] + ] + ], + [ + [ + [ + 42.17, + 16.7 + ], + [ + 42.18, + 16.58 + ], + [ + 41.76, + 16.89 + ], + [ + 42.17, + 16.7 + ] + ] + ] + ] + }, + "properties": { + "A3": "SAU" + } + }, + { + "type": "Feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + -13.19, + 27.63 + ], + [ + -8.81, + 27.66 + ], + [ + -8.67, + 27.67 + ], + [ + -8.67, + 27.31 + ], + [ + -8.67, + 26 + ], + [ + -11.67, + 26 + ], + [ + -12, + 26 + ], + [ + -12, + 25.75 + ], + [ + -12, + 23.45 + ], + [ + -12.57, + 23.29 + ], + [ + -13.11, + 22.89 + ], + [ + -13, + 21.37 + ], + [ + -13, + 21.34 + ], + [ + -13.54, + 21.34 + ], + [ + -15.04, + 21.34 + ], + [ + -15.17, + 21.34 + ], + [ + -15.27, + 21.34 + ], + [ + -15.72, + 21.34 + ], + [ + -15.81, + 21.34 + ], + [ + -15.92, + 21.34 + ], + [ + -15.98, + 21.34 + ], + [ + -15.99, + 21.34 + ], + [ + -16.57, + 21.34 + ], + [ + -16.96, + 21.3 + ], + [ + -17.05, + 20.77 + ], + [ + -17.03, + 21.34 + ], + [ + -16.81, + 22.16 + ], + [ + -16.49, + 22.33 + ], + [ + -16.2, + 23.11 + ], + [ + -15.71, + 23.83 + ], + [ + -15.77, + 23.92 + ], + [ + -16, + 23.63 + ], + [ + -15.9, + 23.82 + ], + [ + -14.88, + 24.7 + ], + [ + -14.83, + 25.3 + ], + [ + -14.48, + 26.18 + ], + [ + -13.57, + 26.74 + ], + [ + -13.19, + 27.63 + ] + ] + ] + }, + "properties": { + "A3": "ESH" + } + }, + { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + -6.73, + 62.11 + ], + [ + -7.1, + 62.32 + ], + [ + -6.64, + 62.2 + ], + [ + -6.73, + 62.11 + ] + ] + ], + [ + [ + [ + -7.04, + 62.22 + ], + [ + -6.74, + 61.94 + ], + [ + -7.22, + 62.3 + ], + [ + -7.04, + 62.22 + ] + ] + ] + ] + }, + "properties": { + "A3": "FRO" + } + }, + { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + 3.6, + 11.7 + ], + [ + 3.61, + 11.7 + ], + [ + 3.65, + 12.52 + ], + [ + 4.1, + 12.99 + ], + [ + 4.14, + 13.48 + ], + [ + 4.47, + 13.68 + ], + [ + 5.44, + 13.87 + ], + [ + 5.45, + 13.87 + ], + [ + 5.5, + 13.88 + ], + [ + 5.51, + 13.88 + ], + [ + 6.43, + 13.6 + ], + [ + 6.94, + 13 + ], + [ + 7.82, + 13.34 + ], + [ + 8.7, + 12.92 + ], + [ + 9.33, + 12.81 + ], + [ + 9.66, + 12.81 + ], + [ + 10.01, + 13.18 + ], + [ + 10.66, + 13.36 + ], + [ + 11.46, + 13.38 + ], + [ + 12.17, + 13.11 + ], + [ + 12.17, + 13.1 + ], + [ + 12.26, + 13.11 + ], + [ + 12.44, + 13.07 + ], + [ + 12.83, + 13.45 + ], + [ + 13.2, + 13.51 + ], + [ + 13.34, + 13.72 + ], + [ + 13.63, + 13.71 + ], + [ + 14.03, + 13.15 + ], + [ + 14.08, + 13.08 + ], + [ + 14.19, + 12.49 + ], + [ + 14.19, + 12.45 + ], + [ + 14.19, + 12.43 + ], + [ + 14.18, + 12.43 + ], + [ + 14.18, + 12.41 + ], + [ + 14.19, + 12.4 + ], + [ + 14.22, + 12.37 + ], + [ + 14.24, + 12.37 + ], + [ + 14.28, + 12.37 + ], + [ + 14.3, + 12.36 + ], + [ + 14.33, + 12.37 + ], + [ + 14.35, + 12.37 + ], + [ + 14.36, + 12.36 + ], + [ + 14.37, + 12.37 + ], + [ + 14.37, + 12.36 + ], + [ + 14.38, + 12.36 + ], + [ + 14.41, + 12.36 + ], + [ + 14.42, + 12.36 + ], + [ + 14.44, + 12.36 + ], + [ + 14.5, + 12.33 + ], + [ + 14.51, + 12.31 + ], + [ + 14.54, + 12.29 + ], + [ + 14.56, + 12.26 + ], + [ + 14.56, + 12.25 + ], + [ + 14.55, + 12.24 + ], + [ + 14.56, + 12.24 + ], + [ + 14.56, + 12.23 + ], + [ + 14.58, + 12.23 + ], + [ + 14.6, + 12.21 + ], + [ + 14.61, + 12.21 + ], + [ + 14.6, + 12.19 + ], + [ + 14.67, + 12.18 + ], + [ + 14.62, + 11.51 + ], + [ + 14.19, + 11.24 + ], + [ + 13.98, + 11.31 + ], + [ + 13.73, + 11 + ], + [ + 13.47, + 10.16 + ], + [ + 13.25, + 10.03 + ], + [ + 13.23, + 9.58 + ], + [ + 12.85, + 9.37 + ], + [ + 12.78, + 8.75 + ], + [ + 12.26, + 8.44 + ], + [ + 11.88, + 7.1 + ], + [ + 11.62, + 6.98 + ], + [ + 11.52, + 6.61 + ], + [ + 11.1, + 6.52 + ], + [ + 11.09, + 6.68 + ], + [ + 10.92, + 6.71 + ], + [ + 10.7, + 7.01 + ], + [ + 10.57, + 7.16 + ], + [ + 10.49, + 6.9 + ], + [ + 10.22, + 6.89 + ], + [ + 10.15, + 7.04 + ], + [ + 9.78, + 6.79 + ], + [ + 9.71, + 6.51 + ], + [ + 9.47, + 6.45 + ], + [ + 8.84, + 5.82 + ], + [ + 8.92, + 5.56 + ], + [ + 8.68, + 4.98 + ], + [ + 8.65, + 4.94 + ], + [ + 8.64, + 4.91 + ], + [ + 8.62, + 4.9 + ], + [ + 8.61, + 4.89 + ], + [ + 8.6, + 4.87 + ], + [ + 8.61, + 4.87 + ], + [ + 8.61, + 4.86 + ], + [ + 8.62, + 4.86 + ], + [ + 8.63, + 4.84 + ], + [ + 8.61, + 4.83 + ], + [ + 8.63, + 4.82 + ], + [ + 8.62, + 4.82 + ], + [ + 8.4, + 4.74 + ], + [ + 8.26, + 5.07 + ], + [ + 8.27, + 4.84 + ], + [ + 8.13, + 4.96 + ], + [ + 8.28, + 4.54 + ], + [ + 7.61, + 4.47 + ], + [ + 7.61, + 4.61 + ], + [ + 7.37, + 4.5 + ], + [ + 7.29, + 4.61 + ], + [ + 7.27, + 4.5 + ], + [ + 7.08, + 4.76 + ], + [ + 7.13, + 4.57 + ], + [ + 6.9, + 4.71 + ], + [ + 6.99, + 4.37 + ], + [ + 6.75, + 4.76 + ], + [ + 6.87, + 4.36 + ], + [ + 6.71, + 4.36 + ], + [ + 6.72, + 4.63 + ], + [ + 6.7, + 4.42 + ], + [ + 6.61, + 4.54 + ], + [ + 6.7, + 4.34 + ], + [ + 6.59, + 4.48 + ], + [ + 6.6, + 4.33 + ], + [ + 6.24, + 4.29 + ], + [ + 6.25, + 4.46 + ], + [ + 6.22, + 4.28 + ], + [ + 6.09, + 4.27 + ], + [ + 5.48, + 4.85 + ], + [ + 5.32, + 5.37 + ], + [ + 5.54, + 5.37 + ], + [ + 5.52, + 5.5 + ], + [ + 5.66, + 5.54 + ], + [ + 5.52, + 5.52 + ], + [ + 5.43, + 5.42 + ], + [ + 5.35, + 5.81 + ], + [ + 5.29, + 5.62 + ], + [ + 5.15, + 5.62 + ], + [ + 5.08, + 5.71 + ], + [ + 5.09, + 5.8 + ], + [ + 5.24, + 5.69 + ], + [ + 5.15, + 5.81 + ], + [ + 5.3, + 5.88 + ], + [ + 5.3, + 5.94 + ], + [ + 5.29, + 5.92 + ], + [ + 5.27, + 5.93 + ], + [ + 5.24, + 5.89 + ], + [ + 5.1, + 5.82 + ], + [ + 5.06, + 5.77 + ], + [ + 4.63, + 6.27 + ], + [ + 4.36, + 6.37 + ], + [ + 2.71, + 6.38 + ], + [ + 2.71, + 6.45 + ], + [ + 2.71, + 6.46 + ], + [ + 2.74, + 6.86 + ], + [ + 2.74, + 6.9 + ], + [ + 2.75, + 7.26 + ], + [ + 2.75, + 7.27 + ], + [ + 2.78, + 9.07 + ], + [ + 3.09, + 9.1 + ], + [ + 3.15, + 9.5 + ], + [ + 3.35, + 9.83 + ], + [ + 3.56, + 9.9 + ], + [ + 3.62, + 10.42 + ], + [ + 3.79, + 10.41 + ], + [ + 3.84, + 10.59 + ], + [ + 3.72, + 11.13 + ], + [ + 3.49, + 11.3 + ], + [ + 3.59, + 11.7 + ], + [ + 3.6, + 11.7 + ] + ], + [ + [ + 4.14, + 6.58 + ], + [ + 3.9, + 6.49 + ], + [ + 4.13, + 6.4 + ], + [ + 4.14, + 6.58 + ] + ], + [ + [ + 3.38, + 6.47 + ], + [ + 3.38, + 6.45 + ], + [ + 3.38, + 6.47 + ], + [ + 3.87, + 6.62 + ], + [ + 3.52, + 6.53 + ], + [ + 3.43, + 6.62 + ], + [ + 3.38, + 6.47 + ] + ], + [ + [ + 6.7, + 7.06 + ], + [ + 6.71, + 7.1 + ], + [ + 6.69, + 7.06 + ], + [ + 6.7, + 7.06 + ] + ], + [ + [ + 4.76, + 9.34 + ], + [ + 4.6, + 9.34 + ], + [ + 4.75, + 9.08 + ], + [ + 4.76, + 9.34 + ] + ], + [ + [ + 11.51, + 9.45 + ], + [ + 11.36, + 9.31 + ], + [ + 11.78, + 9.52 + ], + [ + 11.51, + 9.45 + ] + ], + [ + [ + 6.88, + 10.14 + ], + [ + 6.86, + 9.79 + ], + [ + 6.99, + 9.83 + ], + [ + 6.92, + 10.06 + ], + [ + 7.09, + 10.06 + ], + [ + 6.88, + 10.14 + ] + ], + [ + [ + 4.48, + 10.66 + ], + [ + 4.45, + 10.13 + ], + [ + 4.61, + 9.84 + ], + [ + 4.55, + 10.14 + ], + [ + 4.67, + 10.44 + ], + [ + 4.48, + 10.66 + ] + ], + [ + [ + 13.94, + 13.02 + ], + [ + 13.94, + 12.78 + ], + [ + 14.06, + 12.93 + ], + [ + 13.94, + 13.02 + ] + ], + [ + [ + 11.48, + 10.66 + ], + [ + 11.47, + 10.37 + ], + [ + 11.6, + 10.57 + ], + [ + 11.48, + 10.66 + ] + ], + [ + [ + 8.39, + 11.35 + ], + [ + 8.51, + 11.35 + ], + [ + 8.37, + 11.48 + ], + [ + 8.39, + 11.35 + ] + ] + ], + [ + [ + [ + 5.37, + 5.59 + ], + [ + 5.43, + 5.39 + ], + [ + 5.16, + 5.54 + ], + [ + 5.37, + 5.59 + ] + ] + ] + ] + }, + "properties": { + "A3": "NGA" + } + }, + { + "type": "Feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + -12.24, + 14.76 + ], + [ + -12.16, + 14.76 + ], + [ + -12.14, + 14.78 + ], + [ + -12.13, + 14.78 + ], + [ + -12.12, + 14.77 + ], + [ + -12.09, + 14.74 + ], + [ + -12.08, + 14.73 + ], + [ + -12.07, + 14.72 + ], + [ + -12.06, + 14.72 + ], + [ + -11.8, + 14.9 + ], + [ + -11.75, + 15.46 + ], + [ + -11.52, + 15.64 + ], + [ + -10.9, + 15.11 + ], + [ + -10.72, + 15.44 + ], + [ + -9.4, + 15.44 + ], + [ + -9.33, + 15.7 + ], + [ + -9.33, + 15.5 + ], + [ + -6.99, + 15.5 + ], + [ + -6.98, + 15.5 + ], + [ + -5.5, + 15.5 + ], + [ + -5.33, + 16.33 + ], + [ + -5.61, + 16.5 + ], + [ + -6.08, + 20.76 + ], + [ + -6.57, + 25 + ], + [ + -4.83, + 25 + ], + [ + -1.87, + 23.08 + ], + [ + 1.17, + 21.12 + ], + [ + 1.17, + 20.74 + ], + [ + 1.6, + 20.6 + ], + [ + 1.8, + 20.3 + ], + [ + 2.21, + 20.32 + ], + [ + 2.38, + 20.03 + ], + [ + 2.68, + 20.1 + ], + [ + 3.25, + 19.83 + ], + [ + 3.11, + 19.16 + ], + [ + 3.3, + 19 + ], + [ + 4.27, + 19.14 + ], + [ + 4.2, + 16.4 + ], + [ + 3.89, + 15.72 + ], + [ + 3.51, + 15.37 + ], + [ + 3.07, + 15.42 + ], + [ + 3.04, + 15.43 + ], + [ + 1.31, + 15.28 + ], + [ + 0.97, + 14.98 + ], + [ + 0.71, + 14.95 + ], + [ + 0.7, + 14.94 + ], + [ + 0.23, + 15 + ], + [ + -0.72, + 15.08 + ], + [ + -1.31, + 14.73 + ], + [ + -1.98, + 14.48 + ], + [ + -2, + 14.19 + ], + [ + -2.47, + 14.3 + ], + [ + -2.84, + 14.05 + ], + [ + -2.87, + 13.65 + ], + [ + -3.26, + 13.71 + ], + [ + -3.23, + 13.29 + ], + [ + -3.43, + 13.19 + ], + [ + -3.43, + 13.17 + ], + [ + -3.96, + 13.38 + ], + [ + -3.97, + 13.5 + ], + [ + -4.34, + 13.14 + ], + [ + -4.21, + 12.82 + ], + [ + -4.48, + 12.72 + ], + [ + -4.4, + 12.31 + ], + [ + -4.74, + 12 + ], + [ + -5.4, + 11.83 + ], + [ + -5.26, + 11.76 + ], + [ + -5.2, + 11.43 + ], + [ + -5.49, + 11.08 + ], + [ + -5.4, + 10.85 + ], + [ + -5.51, + 10.43 + ], + [ + -5.79, + 10.43 + ], + [ + -5.99, + 10.2 + ], + [ + -6.19, + 10.24 + ], + [ + -6.2, + 10.24 + ], + [ + -6.19, + 10.26 + ], + [ + -6.22, + 10.27 + ], + [ + -6.22, + 10.29 + ], + [ + -6.23, + 10.3 + ], + [ + -6.19, + 10.31 + ], + [ + -6.19, + 10.3 + ], + [ + -6.19, + 10.34 + ], + [ + -6.21, + 10.73 + ], + [ + -6.41, + 10.7 + ], + [ + -6.43, + 10.56 + ], + [ + -6.64, + 10.67 + ], + [ + -6.64, + 10.66 + ], + [ + -6.65, + 10.65 + ], + [ + -6.64, + 10.63 + ], + [ + -6.65, + 10.63 + ], + [ + -6.66, + 10.63 + ], + [ + -6.67, + 10.6 + ], + [ + -6.66, + 10.53 + ], + [ + -6.67, + 10.54 + ], + [ + -6.67, + 10.5 + ], + [ + -6.68, + 10.5 + ], + [ + -6.68, + 10.49 + ], + [ + -6.67, + 10.48 + ], + [ + -6.68, + 10.47 + ], + [ + -6.65, + 10.45 + ], + [ + -6.65, + 10.46 + ], + [ + -6.64, + 10.45 + ], + [ + -6.64, + 10.41 + ], + [ + -6.64, + 10.4 + ], + [ + -6.65, + 10.4 + ], + [ + -6.64, + 10.38 + ], + [ + -6.65, + 10.39 + ], + [ + -6.64, + 10.36 + ], + [ + -6.66, + 10.35 + ], + [ + -6.67, + 10.35 + ], + [ + -6.67, + 10.34 + ], + [ + -6.68, + 10.34 + ], + [ + -6.94, + 10.35 + ], + [ + -7.03, + 10.15 + ], + [ + -7.33, + 10.24 + ], + [ + -7.35, + 10.24 + ], + [ + -7.37, + 10.25 + ], + [ + -7.38, + 10.25 + ], + [ + -7.39, + 10.26 + ], + [ + -7.38, + 10.27 + ], + [ + -7.37, + 10.35 + ], + [ + -7.39, + 10.35 + ], + [ + -7.4, + 10.35 + ], + [ + -7.41, + 10.35 + ], + [ + -7.42, + 10.35 + ], + [ + -7.42, + 10.34 + ], + [ + -7.43, + 10.35 + ], + [ + -7.42, + 10.35 + ], + [ + -7.43, + 10.36 + ], + [ + -7.43, + 10.37 + ], + [ + -7.45, + 10.39 + ], + [ + -7.45, + 10.4 + ], + [ + -7.45, + 10.41 + ], + [ + -7.45, + 10.42 + ], + [ + -7.44, + 10.42 + ], + [ + -7.45, + 10.45 + ], + [ + -7.45, + 10.44 + ], + [ + -7.46, + 10.45 + ], + [ + -7.72, + 10.4 + ], + [ + -7.72, + 10.39 + ], + [ + -7.74, + 10.38 + ], + [ + -7.72, + 10.36 + ], + [ + -7.72, + 10.35 + ], + [ + -7.75, + 10.34 + ], + [ + -7.75, + 10.32 + ], + [ + -7.77, + 10.32 + ], + [ + -7.76, + 10.31 + ], + [ + -7.75, + 10.31 + ], + [ + -7.76, + 10.29 + ], + [ + -7.98, + 10.17 + ], + [ + -7.99, + 10.34 + ], + [ + -8.33, + 10.59 + ], + [ + -8.29, + 11.02 + ], + [ + -8.67, + 10.96 + ], + [ + -8.56, + 11.18 + ], + [ + -8.55, + 11.21 + ], + [ + -8.55, + 11.22 + ], + [ + -8.53, + 11.22 + ], + [ + -8.52, + 11.22 + ], + [ + -8.49, + 11.22 + ], + [ + -8.48, + 11.23 + ], + [ + -8.48, + 11.24 + ], + [ + -8.48, + 11.25 + ], + [ + -8.48, + 11.28 + ], + [ + -8.47, + 11.29 + ], + [ + -8.44, + 11.29 + ], + [ + -8.42, + 11.28 + ], + [ + -8.41, + 11.28 + ], + [ + -8.37, + 11.28 + ], + [ + -8.32, + 11.39 + ], + [ + -8.39, + 11.37 + ], + [ + -8.52, + 11.48 + ], + [ + -8.53, + 11.49 + ], + [ + -8.54, + 11.48 + ], + [ + -8.57, + 11.46 + ], + [ + -8.66, + 11.57 + ], + [ + -8.69, + 11.63 + ], + [ + -8.69, + 11.64 + ], + [ + -8.71, + 11.64 + ], + [ + -8.73, + 11.62 + ], + [ + -8.85, + 11.65 + ], + [ + -8.82, + 11.82 + ], + [ + -8.79, + 11.86 + ], + [ + -8.78, + 11.94 + ], + [ + -8.78, + 11.97 + ], + [ + -8.88, + 12.04 + ], + [ + -8.95, + 12.36 + ], + [ + -9.25, + 12.51 + ], + [ + -9.41, + 12.46 + ], + [ + -9.34, + 12.25 + ], + [ + -9.65, + 12.17 + ], + [ + -9.69, + 12.03 + ], + [ + -10.34, + 12.23 + ], + [ + -10.66, + 11.9 + ], + [ + -10.93, + 12.23 + ], + [ + -11.23, + 12 + ], + [ + -11.45, + 12.26 + ], + [ + -11.45, + 12.27 + ], + [ + -11.45, + 12.28 + ], + [ + -11.44, + 12.28 + ], + [ + -11.38, + 12.41 + ], + [ + -11.36, + 12.51 + ], + [ + -11.37, + 12.51 + ], + [ + -11.37, + 12.5 + ], + [ + -11.37, + 12.49 + ], + [ + -11.39, + 12.52 + ], + [ + -11.39, + 12.53 + ], + [ + -11.41, + 12.54 + ], + [ + -11.41, + 12.52 + ], + [ + -11.45, + 12.55 + ], + [ + -11.36, + 12.98 + ], + [ + -11.63, + 13.39 + ], + [ + -11.79, + 13.33 + ], + [ + -11.79, + 13.32 + ], + [ + -11.82, + 13.31 + ], + [ + -11.83, + 13.31 + ], + [ + -11.84, + 13.35 + ], + [ + -11.85, + 13.35 + ], + [ + -11.87, + 13.37 + ], + [ + -11.89, + 13.38 + ], + [ + -11.89, + 13.39 + ], + [ + -12.07, + 13.72 + ], + [ + -11.93, + 13.92 + ], + [ + -12.1, + 14.35 + ], + [ + -12.13, + 14.39 + ], + [ + -12.2, + 14.41 + ], + [ + -12.2, + 14.43 + ], + [ + -12.19, + 14.44 + ], + [ + -12.22, + 14.52 + ], + [ + -12.21, + 14.52 + ], + [ + -12.22, + 14.54 + ], + [ + -12.22, + 14.55 + ], + [ + -12.18, + 14.58 + ], + [ + -12.17, + 14.58 + ], + [ + -12.17, + 14.6 + ], + [ + -12.15, + 14.62 + ], + [ + -12.15, + 14.63 + ], + [ + -12.17, + 14.66 + ], + [ + -12.17, + 14.67 + ], + [ + -12.17, + 14.69 + ], + [ + -12.18, + 14.69 + ], + [ + -12.21, + 14.71 + ], + [ + -12.21, + 14.73 + ], + [ + -12.22, + 14.74 + ], + [ + -12.24, + 14.75 + ], + [ + -12.24, + 14.76 + ] + ], + [ + [ + -0.84, + 17.01 + ], + [ + -1.03, + 16.95 + ], + [ + -0.75, + 16.99 + ], + [ + -0.84, + 17.01 + ] + ], + [ + [ + -1.19, + 17.08 + ], + [ + -1.71, + 16.97 + ], + [ + -2.24, + 16.83 + ], + [ + -1.19, + 17.08 + ] + ], + [ + [ + -10.39, + 13.24 + ], + [ + -10.43, + 13.03 + ], + [ + -10.28, + 12.93 + ], + [ + -10.24, + 13.24 + ], + [ + -10.39, + 13.24 + ] + ], + [ + [ + -8.26, + 11.62 + ], + [ + -8.13, + 11.42 + ], + [ + -8.09, + 11.52 + ], + [ + -8.26, + 11.62 + ] + ] + ] + }, + "properties": { + "A3": "MLI" + } + }, + { + "type": "Feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + 9.56, + 30.24 + ], + [ + 9.74, + 30.32 + ], + [ + 9.91, + 30.33 + ], + [ + 9.8, + 30.35 + ], + [ + 10.29, + 30.91 + ], + [ + 10.14, + 31.51 + ], + [ + 10.63, + 31.98 + ], + [ + 11.56, + 32.44 + ], + [ + 11.47, + 32.69 + ], + [ + 11.48, + 32.74 + ], + [ + 11.48, + 32.77 + ], + [ + 11.48, + 32.83 + ], + [ + 11.48, + 32.9 + ], + [ + 11.48, + 32.92 + ], + [ + 11.48, + 32.93 + ], + [ + 11.49, + 32.95 + ], + [ + 11.49, + 33.01 + ], + [ + 11.67, + 33.03 + ], + [ + 11.56, + 33.15 + ], + [ + 11.56, + 33.17 + ], + [ + 12.38, + 32.82 + ], + [ + 13.38, + 32.9 + ], + [ + 15.23, + 32.37 + ], + [ + 15.53, + 31.6 + ], + [ + 16.02, + 31.28 + ], + [ + 15.91, + 31.19 + ], + [ + 16.03, + 31.27 + ], + [ + 17.39, + 31.08 + ], + [ + 19.05, + 30.27 + ], + [ + 19.78, + 30.44 + ], + [ + 20.11, + 30.95 + ], + [ + 20.17, + 31.17 + ], + [ + 19.92, + 31.76 + ], + [ + 20.03, + 32.12 + ], + [ + 20.57, + 32.55 + ], + [ + 21.63, + 32.93 + ], + [ + 22.15, + 32.94 + ], + [ + 23.11, + 32.64 + ], + [ + 23.1, + 32.31 + ], + [ + 23.32, + 32.15 + ], + [ + 24.98, + 31.97 + ], + [ + 25.14, + 31.67 + ], + [ + 24.87, + 31.38 + ], + [ + 25.02, + 30.79 + ], + [ + 24.71, + 30.16 + ], + [ + 25, + 29.25 + ], + [ + 25, + 25.62 + ], + [ + 25, + 22 + ], + [ + 25, + 20 + ], + [ + 24, + 20 + ], + [ + 24, + 19.5 + ], + [ + 20.04, + 21.57 + ], + [ + 16, + 23.5 + ], + [ + 15, + 23 + ], + [ + 14.23, + 22.61 + ], + [ + 13.54, + 23.17 + ], + [ + 12, + 23.52 + ], + [ + 11.6, + 24.26 + ], + [ + 11.42, + 24.2 + ], + [ + 10.9, + 24.56 + ], + [ + 10.36, + 24.54 + ], + [ + 10.22, + 24.65 + ], + [ + 10.03, + 25.36 + ], + [ + 9.4, + 26.2 + ], + [ + 9.86, + 26.52 + ], + [ + 9.93, + 26.86 + ], + [ + 9.78, + 27.26 + ], + [ + 9.96, + 27.87 + ], + [ + 9.9, + 28.76 + ], + [ + 9.78, + 29.42 + ], + [ + 9.41, + 30.07 + ], + [ + 9.56, + 30.24 + ] + ] + ] + }, + "properties": { + "A3": "LBY" + } + }, + { + "type": "Feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + 7.59, + 47.59 + ], + [ + 7.67, + 47.54 + ], + [ + 7.68, + 47.53 + ], + [ + 7.71, + 47.54 + ], + [ + 7.72, + 47.54 + ], + [ + 7.73, + 47.54 + ], + [ + 7.74, + 47.54 + ], + [ + 7.78, + 47.55 + ], + [ + 7.8, + 47.56 + ], + [ + 7.81, + 47.58 + ], + [ + 7.84, + 47.58 + ], + [ + 7.86, + 47.59 + ], + [ + 7.87, + 47.59 + ], + [ + 7.88, + 47.59 + ], + [ + 7.89, + 47.59 + ], + [ + 7.9, + 47.58 + ], + [ + 7.91, + 47.58 + ], + [ + 7.91, + 47.57 + ], + [ + 7.91, + 47.56 + ], + [ + 7.93, + 47.55 + ], + [ + 7.94, + 47.54 + ], + [ + 7.95, + 47.56 + ], + [ + 7.96, + 47.56 + ], + [ + 7.98, + 47.56 + ], + [ + 8.01, + 47.55 + ], + [ + 8.02, + 47.55 + ], + [ + 8.09, + 47.56 + ], + [ + 8.1, + 47.57 + ], + [ + 8.11, + 47.58 + ], + [ + 8.14, + 47.59 + ], + [ + 8.15, + 47.6 + ], + [ + 8.16, + 47.59 + ], + [ + 8.17, + 47.6 + ], + [ + 8.18, + 47.6 + ], + [ + 8.19, + 47.62 + ], + [ + 8.21, + 47.62 + ], + [ + 8.22, + 47.62 + ], + [ + 8.37, + 47.57 + ], + [ + 8.41, + 47.57 + ], + [ + 8.42, + 47.57 + ], + [ + 8.44, + 47.57 + ], + [ + 8.46, + 47.57 + ], + [ + 8.48, + 47.58 + ], + [ + 8.49, + 47.58 + ], + [ + 8.61, + 47.65 + ], + [ + 8.61, + 47.64 + ], + [ + 8.6, + 47.64 + ], + [ + 8.62, + 47.64 + ], + [ + 8.63, + 47.65 + ], + [ + 8.41, + 47.67 + ], + [ + 8.57, + 47.81 + ], + [ + 8.74, + 47.69 + ], + [ + 8.75, + 47.69 + ], + [ + 8.79, + 47.68 + ], + [ + 8.87, + 47.67 + ], + [ + 8.88, + 47.66 + ], + [ + 8.94, + 47.66 + ], + [ + 9.04, + 47.68 + ], + [ + 9.07, + 47.68 + ], + [ + 9.12, + 47.67 + ], + [ + 9.14, + 47.66 + ], + [ + 9.15, + 47.67 + ], + [ + 9.19, + 47.66 + ], + [ + 9.56, + 47.5 + ], + [ + 9.62, + 47.46 + ], + [ + 9.63, + 47.46 + ], + [ + 9.65, + 47.41 + ], + [ + 9.67, + 47.38 + ], + [ + 9.65, + 47.37 + ], + [ + 9.63, + 47.37 + ], + [ + 9.62, + 47.36 + ], + [ + 9.6, + 47.34 + ], + [ + 9.58, + 47.31 + ], + [ + 9.55, + 47.3 + ], + [ + 9.55, + 47.29 + ], + [ + 9.53, + 47.27 + ], + [ + 9.53, + 47.26 + ], + [ + 9.52, + 47.25 + ], + [ + 9.51, + 47.23 + ], + [ + 9.5, + 47.21 + ], + [ + 9.49, + 47.2 + ], + [ + 9.49, + 47.18 + ], + [ + 9.49, + 47.17 + ], + [ + 9.49, + 47.16 + ], + [ + 9.51, + 47.13 + ], + [ + 9.52, + 47.12 + ], + [ + 9.52, + 47.1 + ], + [ + 9.51, + 47.09 + ], + [ + 9.51, + 47.08 + ], + [ + 9.47, + 47.06 + ], + [ + 9.48, + 47.05 + ], + [ + 9.48, + 47.06 + ], + [ + 9.61, + 47.06 + ], + [ + 9.74, + 47.04 + ], + [ + 9.75, + 47.04 + ], + [ + 10.11, + 46.84 + ], + [ + 10.39, + 47 + ], + [ + 10.47, + 46.88 + ], + [ + 10.47, + 46.85 + ], + [ + 10.47, + 46.54 + ], + [ + 10.2, + 46.62 + ], + [ + 10.19, + 46.63 + ], + [ + 10.11, + 46.35 + ], + [ + 10.07, + 46.22 + ], + [ + 9.95, + 46.38 + ], + [ + 9.58, + 46.29 + ], + [ + 9.45, + 46.48 + ], + [ + 9.46, + 46.51 + ], + [ + 9.41, + 46.47 + ], + [ + 9.28, + 46.47 + ], + [ + 9.01, + 46.03 + ], + [ + 9.02, + 46 + ], + [ + 9.03, + 45.82 + ], + [ + 8.92, + 45.91 + ], + [ + 8.9, + 45.93 + ], + [ + 8.9, + 45.95 + ], + [ + 8.87, + 45.96 + ], + [ + 8.76, + 46.1 + ], + [ + 8.81, + 46.15 + ], + [ + 8.7, + 46.1 + ], + [ + 8.56, + 46.19 + ], + [ + 8.53, + 46.22 + ], + [ + 8.45, + 46.46 + ], + [ + 8.26, + 46.35 + ], + [ + 8.13, + 46.14 + ], + [ + 7.86, + 45.92 + ], + [ + 7.04, + 45.92 + ], + [ + 6.81, + 46.13 + ], + [ + 6.8, + 46.39 + ], + [ + 6.94, + 46.38 + ], + [ + 6.5, + 46.51 + ], + [ + 6.25, + 46.3 + ], + [ + 6.09, + 46.15 + ], + [ + 5.96, + 46.13 + ], + [ + 5.98, + 46.16 + ], + [ + 5.98, + 46.17 + ], + [ + 6.15, + 46.35 + ], + [ + 6.16, + 46.35 + ], + [ + 6.11, + 46.5 + ], + [ + 6.69, + 47.07 + ], + [ + 6.7, + 47.07 + ], + [ + 6.7, + 47.08 + ], + [ + 6.71, + 47.08 + ], + [ + 6.71, + 47.09 + ], + [ + 6.73, + 47.09 + ], + [ + 6.74, + 47.09 + ], + [ + 6.74, + 47.1 + ], + [ + 6.83, + 47.15 + ], + [ + 6.84, + 47.15 + ], + [ + 6.85, + 47.16 + ], + [ + 6.86, + 47.16 + ], + [ + 6.92, + 47.22 + ], + [ + 6.94, + 47.23 + ], + [ + 6.94, + 47.24 + ], + [ + 6.95, + 47.28 + ], + [ + 6.96, + 47.29 + ], + [ + 6.97, + 47.29 + ], + [ + 7.05, + 47.35 + ], + [ + 6.88, + 47.35 + ], + [ + 7.01, + 47.5 + ], + [ + 7.39, + 47.43 + ], + [ + 7.59, + 47.59 + ] + ], + [ + [ + 6.92, + 46.98 + ], + [ + 6.64, + 46.78 + ], + [ + 7.05, + 46.98 + ], + [ + 6.92, + 46.98 + ] + ] + ] + }, + "properties": { + "A3": "CHE" + } + }, + { + "type": "Feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + -170.76, + -14.37 + ], + [ + -170.84, + -14.32 + ], + [ + -170.56, + -14.25 + ], + [ + -170.76, + -14.37 + ] + ] + ] + }, + "properties": { + "A3": "ASM" + } + }, + { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + -180, + -85.05 + ], + [ + -180, + -85.03 + ], + [ + -180, + -84.36 + ], + [ + -180, + -84.35 + ], + [ + -180, + -84.34 + ], + [ + -180, + -84.2 + ], + [ + -180, + -84.06 + ], + [ + -180, + -83.92 + ], + [ + -180, + -83.77 + ], + [ + -180, + -83.62 + ], + [ + -180, + -83.46 + ], + [ + -180, + -83.3 + ], + [ + -180, + -83.14 + ], + [ + -180, + -82.97 + ], + [ + -180, + -82.8 + ], + [ + -180, + -82.63 + ], + [ + -180, + -82.45 + ], + [ + -180, + -82.27 + ], + [ + -180, + -82.08 + ], + [ + -180, + -81.89 + ], + [ + -180, + -81.69 + ], + [ + -180, + -81.49 + ], + [ + -180, + -81.28 + ], + [ + -180, + -81.07 + ], + [ + -180, + -80.85 + ], + [ + -180, + -80.63 + ], + [ + -180, + -80.4 + ], + [ + -180, + -80.17 + ], + [ + -180, + -79.93 + ], + [ + -180, + -79.69 + ], + [ + -180, + -79.44 + ], + [ + -180, + -79.18 + ], + [ + -180, + -78.92 + ], + [ + -180, + -78.65 + ], + [ + -180, + -78.38 + ], + [ + -180, + -78.09 + ], + [ + -180, + -77.76 + ], + [ + -180, + -77.75 + ], + [ + -177.34, + -77.88 + ], + [ + -176.7, + -77.99 + ], + [ + -177.3, + -78.12 + ], + [ + -166.74, + -78.45 + ], + [ + -163.64, + -78.73 + ], + [ + -162.56, + -78.38 + ], + [ + -158.64, + -77.88 + ], + [ + -158.22, + -77.07 + ], + [ + -157, + -77.37 + ], + [ + -156.36, + -77.07 + ], + [ + -154.26, + -77.06 + ], + [ + -151.61, + -77.4 + ], + [ + -152.03, + -77.28 + ], + [ + -151.16, + -77.21 + ], + [ + -151.71, + -76.99 + ], + [ + -149.89, + -76.89 + ], + [ + -150.86, + -76.75 + ], + [ + -150.61, + -76.52 + ], + [ + -148.3, + -76.06 + ], + [ + -148.39, + -75.74 + ], + [ + -147.28, + -75.82 + ], + [ + -146.97, + -75.63 + ], + [ + -144.45, + -75.34 + ], + [ + -141.87, + -75.52 + ], + [ + -141.55, + -75.37 + ], + [ + -140.98, + -75.5 + ], + [ + -140.06, + -75.08 + ], + [ + -139.68, + -75.18 + ], + [ + -139.14, + -75.06 + ], + [ + -137.02, + -75.02 + ], + [ + -136.84, + -74.75 + ], + [ + -135.41, + -74.57 + ], + [ + -134.66, + -74.61 + ], + [ + -131.83, + -74.32 + ], + [ + -131.11, + -74.43 + ], + [ + -128.15, + -74.31 + ], + [ + -127.15, + -73.74 + ], + [ + -127.22, + -73.3 + ], + [ + -126.1, + -73.29 + ], + [ + -124.12, + -73.85 + ], + [ + -123.28, + -73.83 + ], + [ + -123.06, + -73.67 + ], + [ + -119.17, + -73.78 + ], + [ + -119, + -73.94 + ], + [ + -117.34, + -74.07 + ], + [ + -116.36, + -73.86 + ], + [ + -115.34, + -74.13 + ], + [ + -114.21, + -73.86 + ], + [ + -113.31, + -74.19 + ], + [ + -110.49, + -74.25 + ], + [ + -110.17, + -74.66 + ], + [ + -108.94, + -74.99 + ], + [ + -109.49, + -75.11 + ], + [ + -109.07, + -75.25 + ], + [ + -107.55, + -75.21 + ], + [ + -107.97, + -74.78 + ], + [ + -106.63, + -74.59 + ], + [ + -106.36, + -75.14 + ], + [ + -105.56, + -74.8 + ], + [ + -104.24, + -75.1 + ], + [ + -101.63, + -75.11 + ], + [ + -101.94, + -75.02 + ], + [ + -101.17, + -74.73 + ], + [ + -102.46, + -74.51 + ], + [ + -101.38, + -74.17 + ], + [ + -101.56, + -74 + ], + [ + -102.91, + -73.9 + ], + [ + -103, + -73.6 + ], + [ + -101.35, + -73.64 + ], + [ + -101.69, + -73.34 + ], + [ + -102.76, + -73.32 + ], + [ + -103.31, + -73.14 + ], + [ + -103.42, + -72.83 + ], + [ + -102.79, + -72.7 + ], + [ + -102.68, + -72.47 + ], + [ + -103.39, + -72.28 + ], + [ + -102.34, + -72.17 + ], + [ + -102.45, + -72.27 + ], + [ + -101.76, + -71.92 + ], + [ + -100.17, + -71.82 + ], + [ + -99.17, + -71.92 + ], + [ + -98.6, + -71.74 + ], + [ + -97.85, + -71.9 + ], + [ + -96.17, + -71.86 + ], + [ + -95.51, + -72.15 + ], + [ + -95.58, + -72.47 + ], + [ + -95.06, + -72.58 + ], + [ + -94.53, + -72.48 + ], + [ + -94.27, + -72.62 + ], + [ + -92.99, + -72.54 + ], + [ + -92.48, + -72.66 + ], + [ + -91.2, + -72.53 + ], + [ + -90.7, + -72.76 + ], + [ + -89.88, + -72.45 + ], + [ + -89.77, + -72.61 + ], + [ + -85.81, + -73.05 + ], + [ + -85.08, + -73.52 + ], + [ + -83.73, + -73.56 + ], + [ + -83.74, + -73.71 + ], + [ + -82.08, + -73.89 + ], + [ + -81.14, + -73.69 + ], + [ + -81.29, + -73.27 + ], + [ + -80.33, + -73.31 + ], + [ + -80.53, + -72.95 + ], + [ + -79.67, + -73.03 + ], + [ + -78.7, + -73.4 + ], + [ + -78.15, + -73.34 + ], + [ + -78.05, + -73.13 + ], + [ + -77.29, + -73.3 + ], + [ + -77.37, + -72.98 + ], + [ + -78.84, + -73.12 + ], + [ + -79.33, + -72.95 + ], + [ + -78.68, + -72.75 + ], + [ + -79.29, + -72.47 + ], + [ + -78.92, + -72.29 + ], + [ + -78.32, + -72.5 + ], + [ + -77.46, + -72.42 + ], + [ + -77.23, + -72.62 + ], + [ + -76.52, + -72.53 + ], + [ + -75.83, + -72.88 + ], + [ + -74.33, + -72.92 + ], + [ + -74.26, + -73.1 + ], + [ + -71.66, + -73.18 + ], + [ + -72.16, + -72.81 + ], + [ + -72.4, + -72.92 + ], + [ + -72.24, + -72.71 + ], + [ + -73.17, + -72.45 + ], + [ + -72.64, + -72.27 + ], + [ + -73.32, + -72.06 + ], + [ + -74.1, + -72.17 + ], + [ + -75.43, + -71.88 + ], + [ + -75.11, + -71.54 + ], + [ + -74.45, + -71.58 + ], + [ + -74.32, + -71.39 + ], + [ + -73.08, + -71.27 + ], + [ + -73.27, + -70.83 + ], + [ + -73.59, + -70.76 + ], + [ + -74.47, + -70.99 + ], + [ + -76.24, + -71.13 + ], + [ + -76.46, + -70.92 + ], + [ + -75.21, + -70.78 + ], + [ + -74.97, + -70.59 + ], + [ + -74.52, + -70.7 + ], + [ + -74.44, + -70.58 + ], + [ + -72.55, + -70.39 + ], + [ + -72.31, + -69.81 + ], + [ + -72.97, + -69.49 + ], + [ + -72.52, + -69.43 + ], + [ + -71.77, + -69.68 + ], + [ + -71.66, + -69.4 + ], + [ + -72.21, + -69.08 + ], + [ + -71.59, + -68.86 + ], + [ + -70.14, + -68.87 + ], + [ + -70.11, + -69.27 + ], + [ + -69.5, + -69.46 + ], + [ + -69.09, + -70.12 + ], + [ + -68.45, + -70.11 + ], + [ + -68.33, + -69.7 + ], + [ + -68.84, + -69.4 + ], + [ + -68.31, + -69.4 + ], + [ + -68.27, + -69.28 + ], + [ + -67.41, + -69.38 + ], + [ + -66.89, + -69.22 + ], + [ + -66.85, + -68.98 + ], + [ + -67.49, + -68.83 + ], + [ + -66.97, + -68.76 + ], + [ + -67.18, + -68.28 + ], + [ + -66.62, + -68.24 + ], + [ + -67.29, + -67.96 + ], + [ + -66.84, + -67.91 + ], + [ + -66.76, + -67.78 + ], + [ + -67.1, + -67.77 + ], + [ + -66.49, + -67.49 + ], + [ + -67.63, + -67.56 + ], + [ + -67.5, + -67.04 + ], + [ + -67.31, + -67.11 + ], + [ + -66.96, + -66.93 + ], + [ + -66.94, + -67.22 + ], + [ + -66.45, + -67.33 + ], + [ + -66.54, + -66.64 + ], + [ + -66.13, + -66.59 + ], + [ + -65.73, + -66.74 + ], + [ + -65.73, + -66.14 + ], + [ + -65.15, + -66.19 + ], + [ + -65.34, + -65.98 + ], + [ + -64.94, + -65.92 + ], + [ + -64.57, + -66.04 + ], + [ + -64.48, + -65.63 + ], + [ + -64.05, + -65.7 + ], + [ + -64.12, + -65.51 + ], + [ + -63.73, + -65.58 + ], + [ + -64.1, + -65.41 + ], + [ + -63.84, + -65.03 + ], + [ + -63.09, + -65.17 + ], + [ + -63.26, + -64.95 + ], + [ + -62.82, + -64.8 + ], + [ + -62.39, + -64.88 + ], + [ + -62.7, + -64.77 + ], + [ + -62.46, + -64.59 + ], + [ + -62.29, + -64.77 + ], + [ + -61.81, + -64.49 + ], + [ + -61.59, + -64.66 + ], + [ + -61.6, + -64.43 + ], + [ + -60.94, + -64.3 + ], + [ + -60.99, + -64.04 + ], + [ + -59.96, + -63.96 + ], + [ + -59.85, + -63.77 + ], + [ + -59.43, + -63.91 + ], + [ + -58.97, + -63.55 + ], + [ + -57.3, + -63.21 + ], + [ + -56.77, + -63.61 + ], + [ + -57.14, + -63.66 + ], + [ + -57.14, + -63.48 + ], + [ + -57.47, + -63.44 + ], + [ + -57.38, + -63.56 + ], + [ + -58.28, + -63.73 + ], + [ + -58.8, + -64.22 + ], + [ + -59.19, + -64.23 + ], + [ + -58.74, + -64.3 + ], + [ + -58.81, + -64.56 + ], + [ + -59.49, + -64.31 + ], + [ + -59.59, + -64.6 + ], + [ + -59.96, + -64.37 + ], + [ + -60.74, + -64.73 + ], + [ + -60.83, + -64.92 + ], + [ + -60.09, + -64.97 + ], + [ + -59.45, + -65.25 + ], + [ + -61.61, + -64.95 + ], + [ + -61.6, + -65.24 + ], + [ + -62.12, + -65.18 + ], + [ + -62.34, + -65.33 + ], + [ + -61.7, + -65.52 + ], + [ + -61.32, + -65.92 + ], + [ + -60.53, + -65.96 + ], + [ + -60.06, + -66.82 + ], + [ + -61.19, + -67.23 + ], + [ + -61.52, + -67.66 + ], + [ + -61.43, + -68.33 + ], + [ + -60.65, + -68.95 + ], + [ + -61.75, + -69.5 + ], + [ + -60.53, + -70.37 + ], + [ + -60.78, + -70.91 + ], + [ + -60.29, + -72.11 + ], + [ + -59.63, + -72.48 + ], + [ + -59.98, + -73.25 + ], + [ + -60.6, + -73.39 + ], + [ + -61.06, + -73.97 + ], + [ + -60.65, + -74.31 + ], + [ + -62.01, + -74.91 + ], + [ + -60.85, + -75.13 + ], + [ + -61.44, + -74.91 + ], + [ + -61.11, + -74.77 + ], + [ + -55.31, + -75.86 + ], + [ + -53.84, + -76.18 + ], + [ + -52.28, + -76.78 + ], + [ + -51.38, + -76.77 + ], + [ + -49.16, + -77.6 + ], + [ + -45.59, + -77.85 + ], + [ + -44.1, + -78.16 + ], + [ + -41.45, + -77.83 + ], + [ + -41.51, + -78.01 + ], + [ + -40.75, + -77.83 + ], + [ + -35.91, + -78.2 + ], + [ + -33.71, + -77.31 + ], + [ + -31.91, + -77.15 + ], + [ + -28.86, + -76.35 + ], + [ + -26.67, + -76.11 + ], + [ + -26.84, + -75.81 + ], + [ + -27.74, + -75.62 + ], + [ + -25.63, + -75.22 + ], + [ + -25.28, + -74.91 + ], + [ + -24.85, + -75.02 + ], + [ + -24.84, + -74.79 + ], + [ + -25.33, + -74.81 + ], + [ + -25.79, + -74.6 + ], + [ + -25.38, + -74.46 + ], + [ + -25.9, + -74.16 + ], + [ + -25.45, + -73.96 + ], + [ + -23.72, + -73.84 + ], + [ + -23.66, + -73.99 + ], + [ + -23.3, + -73.92 + ], + [ + -21.97, + -74.33 + ], + [ + -22.03, + -74.09 + ], + [ + -21.07, + -73.93 + ], + [ + -19.87, + -72.94 + ], + [ + -19.52, + -72.83 + ], + [ + -19.11, + -72.92 + ], + [ + -19.23, + -72.69 + ], + [ + -18.33, + -72.58 + ], + [ + -17.69, + -72.74 + ], + [ + -17.55, + -72.53 + ], + [ + -16.49, + -72.53 + ], + [ + -16.31, + -72.37 + ], + [ + -15.35, + -72.29 + ], + [ + -15.37, + -72.15 + ], + [ + -12.91, + -72.01 + ], + [ + -12.57, + -71.87 + ], + [ + -12.97, + -71.88 + ], + [ + -12.03, + -71.68 + ], + [ + -12.36, + -71.35 + ], + [ + -10.83, + -70.96 + ], + [ + -9.98, + -70.92 + ], + [ + -8.41, + -70.5 + ], + [ + -7.75, + -70.69 + ], + [ + -6.56, + -70.41 + ], + [ + -4.53, + -70.33 + ], + [ + -3.48, + -70.48 + ], + [ + -3.19, + -70.31 + ], + [ + -1.47, + -70.13 + ], + [ + -1.87, + -70.13 + ], + [ + -1.59, + -70.05 + ], + [ + -1.16, + -70.13 + ], + [ + -1.52, + -69.96 + ], + [ + -1.27, + -69.88 + ], + [ + -1.67, + -69.88 + ], + [ + -0.93, + -69.6 + ], + [ + 0.08, + -69.6 + ], + [ + 0.03, + -69.84 + ], + [ + 1, + -70.05 + ], + [ + 1.75, + -69.94 + ], + [ + 2.48, + -70.17 + ], + [ + 3.71, + -70.06 + ], + [ + 4.12, + -70.11 + ], + [ + 4.05, + -70.27 + ], + [ + 5.31, + -70.1 + ], + [ + 5.64, + -70.19 + ], + [ + 5.69, + -70.01 + ], + [ + 6.49, + -70.12 + ], + [ + 7.2, + -69.99 + ], + [ + 7.42, + -70.21 + ], + [ + 8.18, + -69.92 + ], + [ + 8.97, + -70.09 + ], + [ + 10.21, + -69.9 + ], + [ + 10.99, + -70.05 + ], + [ + 11.96, + -69.94 + ], + [ + 12.79, + -70.07 + ], + [ + 13.27, + -69.66 + ], + [ + 13.59, + -69.73 + ], + [ + 13.72, + -69.56 + ], + [ + 14.81, + -69.45 + ], + [ + 15.46, + -69.51 + ], + [ + 15.61, + -69.83 + ], + [ + 17.73, + -69.65 + ], + [ + 19.08, + -69.99 + ], + [ + 20.03, + -69.94 + ], + [ + 19.59, + -69.8 + ], + [ + 20.2, + -69.73 + ], + [ + 21.3, + -69.81 + ], + [ + 21.83, + -70.15 + ], + [ + 23.02, + -70.07 + ], + [ + 23.79, + -70.31 + ], + [ + 24.59, + -70.34 + ], + [ + 25.07, + -70.08 + ], + [ + 24.79, + -70.06 + ], + [ + 25.78, + -70.01 + ], + [ + 25.39, + -70.2 + ], + [ + 25.9, + -70.17 + ], + [ + 25.89, + -70.29 + ], + [ + 26.25, + -70.08 + ], + [ + 26.68, + -70.09 + ], + [ + 26.45, + -69.93 + ], + [ + 27.72, + -69.98 + ], + [ + 28.49, + -69.67 + ], + [ + 29.31, + -69.69 + ], + [ + 29.23, + -69.39 + ], + [ + 29.92, + -69.21 + ], + [ + 29.65, + -69.35 + ], + [ + 29.99, + -69.21 + ], + [ + 30.47, + -69.28 + ], + [ + 30.71, + -69.05 + ], + [ + 32.57, + -69.15 + ], + [ + 32.57, + -68.86 + ], + [ + 33.23, + -68.67 + ], + [ + 34.26, + -68.7 + ], + [ + 34.73, + -68.79 + ], + [ + 34.93, + -69.07 + ], + [ + 36.55, + -69.27 + ], + [ + 36.83, + -69.42 + ], + [ + 36.23, + -69.33 + ], + [ + 36.53, + -69.52 + ], + [ + 36.2, + -69.46 + ], + [ + 37.04, + -69.69 + ], + [ + 38.12, + -69.26 + ], + [ + 38.18, + -69.39 + ], + [ + 37.79, + -69.42 + ], + [ + 38.4, + -69.63 + ], + [ + 38.56, + -70.07 + ], + [ + 38.5, + -69.87 + ], + [ + 38.76, + -70 + ], + [ + 39.16, + -69.72 + ], + [ + 39.71, + -69.65 + ], + [ + 39.86, + -68.85 + ], + [ + 42.28, + -68.38 + ], + [ + 42.67, + -68.14 + ], + [ + 44.44, + -67.97 + ], + [ + 44.93, + -67.73 + ], + [ + 46.22, + -67.66 + ], + [ + 46.43, + -67.28 + ], + [ + 47.34, + -67.37 + ], + [ + 47.53, + -67.58 + ], + [ + 48.44, + -67.58 + ], + [ + 49.31, + -67.28 + ], + [ + 48.83, + -67.29 + ], + [ + 48.33, + -67.03 + ], + [ + 49.2, + -66.82 + ], + [ + 49.97, + -67.16 + ], + [ + 50.79, + -67.18 + ], + [ + 50.42, + -66.97 + ], + [ + 50.84, + -66.78 + ], + [ + 50.22, + -66.73 + ], + [ + 50.42, + -66.34 + ], + [ + 52.05, + -65.99 + ], + [ + 53.75, + -65.84 + ], + [ + 55.61, + -66.02 + ], + [ + 56.33, + -66.4 + ], + [ + 57.26, + -66.56 + ], + [ + 57.28, + -66.71 + ], + [ + 56.8, + -66.72 + ], + [ + 56.52, + -66.9 + ], + [ + 56.96, + -66.87 + ], + [ + 56.93, + -67.04 + ], + [ + 58.26, + -67.03 + ], + [ + 58.43, + -67.2 + ], + [ + 58.97, + -67.2 + ], + [ + 58.78, + -67.34 + ], + [ + 59.1, + -67.44 + ], + [ + 60.47, + -67.36 + ], + [ + 62.64, + -67.66 + ], + [ + 63.54, + -67.5 + ], + [ + 68.34, + -67.9 + ], + [ + 69.57, + -67.74 + ], + [ + 69.65, + -68.15 + ], + [ + 70.39, + -68.7 + ], + [ + 72.86, + -68.49 + ], + [ + 72.77, + -68.73 + ], + [ + 72.42, + -68.73 + ], + [ + 73.16, + -68.94 + ], + [ + 72.94, + -68.75 + ], + [ + 73.5, + -68.67 + ], + [ + 74.52, + -69.28 + ], + [ + 74.49, + -69.38 + ], + [ + 73.57, + -69.31 + ], + [ + 74.38, + -69.49 + ], + [ + 73.71, + -69.75 + ], + [ + 75.12, + -69.8 + ], + [ + 75.14, + -69.52 + ], + [ + 75.92, + -69.53 + ], + [ + 77.88, + -69.06 + ], + [ + 78.13, + -68.76 + ], + [ + 77.84, + -68.68 + ], + [ + 78.17, + -68.65 + ], + [ + 77.89, + -68.63 + ], + [ + 78.52, + -68.51 + ], + [ + 78.07, + -68.49 + ], + [ + 78.78, + -68.24 + ], + [ + 81.37, + -67.79 + ], + [ + 81.7, + -67.29 + ], + [ + 83.25, + -67.11 + ], + [ + 83.36, + -67.31 + ], + [ + 84.41, + -66.97 + ], + [ + 84.05, + -66.85 + ], + [ + 84.39, + -66.75 + ], + [ + 83.88, + -66.77 + ], + [ + 83.87, + -66.64 + ], + [ + 84.52, + -66.54 + ], + [ + 85.02, + -66.66 + ], + [ + 85.36, + -66.43 + ], + [ + 86.38, + -66.27 + ], + [ + 89.54, + -66.87 + ], + [ + 91.98, + -66.5 + ], + [ + 92.73, + -66.64 + ], + [ + 93.72, + -66.62 + ], + [ + 93.85, + -66.51 + ], + [ + 94.33, + -66.64 + ], + [ + 94.94, + -66.48 + ], + [ + 94.84, + -66.21 + ], + [ + 95.56, + -66.17 + ], + [ + 95.51, + -65.25 + ], + [ + 95.86, + -65.28 + ], + [ + 96.35, + -64.96 + ], + [ + 97.12, + -65.29 + ], + [ + 96.43, + -65.56 + ], + [ + 96.96, + -65.47 + ], + [ + 96.86, + -65.71 + ], + [ + 98.63, + -65.9 + ], + [ + 98.43, + -65.55 + ], + [ + 99.12, + -65.54 + ], + [ + 99.57, + -65.9 + ], + [ + 99.66, + -65.7 + ], + [ + 100.25, + -65.73 + ], + [ + 100.75, + -65.37 + ], + [ + 101.82, + -65.78 + ], + [ + 102.94, + -65.89 + ], + [ + 103.15, + -65.69 + ], + [ + 102.89, + -65.57 + ], + [ + 103.2, + -65.47 + ], + [ + 102.91, + -65.13 + ], + [ + 103.89, + -65.98 + ], + [ + 108.02, + -66.58 + ], + [ + 108.77, + -66.94 + ], + [ + 109.54, + -66.83 + ], + [ + 109.76, + -66.58 + ], + [ + 110.73, + -66.48 + ], + [ + 110.49, + -66.29 + ], + [ + 110.94, + -66.05 + ], + [ + 113.22, + -65.76 + ], + [ + 114.53, + -66.24 + ], + [ + 114.46, + -66.46 + ], + [ + 115.11, + -66.36 + ], + [ + 114.53, + -66.48 + ], + [ + 115.6, + -66.58 + ], + [ + 115.76, + -66.76 + ], + [ + 115.87, + -66.56 + ], + [ + 116.51, + -66.58 + ], + [ + 116.62, + -66.77 + ], + [ + 117.48, + -67 + ], + [ + 120.72, + -66.91 + ], + [ + 121.24, + -66.64 + ], + [ + 121.93, + -66.56 + ], + [ + 122.38, + -66.83 + ], + [ + 123.51, + -66.75 + ], + [ + 124.31, + -66.51 + ], + [ + 124.81, + -66.73 + ], + [ + 124.82, + -66.46 + ], + [ + 125.13, + -66.68 + ], + [ + 125.37, + -66.42 + ], + [ + 126.21, + -66.25 + ], + [ + 127.37, + -66.55 + ], + [ + 127.84, + -67.02 + ], + [ + 128.9, + -67.05 + ], + [ + 129.31, + -67 + ], + [ + 130.23, + -66.1 + ], + [ + 131.79, + -66.25 + ], + [ + 133.43, + -66.07 + ], + [ + 134.17, + -66.22 + ], + [ + 134.66, + -65.98 + ], + [ + 136.55, + -66.42 + ], + [ + 137.44, + -66.35 + ], + [ + 141.35, + -66.84 + ], + [ + 141.86, + -66.78 + ], + [ + 142.5, + -67.03 + ], + [ + 143.77, + -66.88 + ], + [ + 143.94, + -67.06 + ], + [ + 144.53, + -67.02 + ], + [ + 144.65, + -67.25 + ], + [ + 144.97, + -67.12 + ], + [ + 145.82, + -67.27 + ], + [ + 145.29, + -67.51 + ], + [ + 146.19, + -67.62 + ], + [ + 147.26, + -68.2 + ], + [ + 147.16, + -68.09 + ], + [ + 147.8, + -68.06 + ], + [ + 148.18, + -68.23 + ], + [ + 147.74, + -68.37 + ], + [ + 148.55, + -68.31 + ], + [ + 148.88, + -68.46 + ], + [ + 149.47, + -68.3 + ], + [ + 149.94, + -68.43 + ], + [ + 150.93, + -68.34 + ], + [ + 151.49, + -68.64 + ], + [ + 151.9, + -68.55 + ], + [ + 151.94, + -68.32 + ], + [ + 153.13, + -68.25 + ], + [ + 153.46, + -68.41 + ], + [ + 153.83, + -68.27 + ], + [ + 155.38, + -68.97 + ], + [ + 156.53, + -68.97 + ], + [ + 156.81, + -69.17 + ], + [ + 157.31, + -69.06 + ], + [ + 157.49, + -69.27 + ], + [ + 157.99, + -69.17 + ], + [ + 158.52, + -69.36 + ], + [ + 159.15, + -69.32 + ], + [ + 160.58, + -69.88 + ], + [ + 160.33, + -70 + ], + [ + 161, + -70.28 + ], + [ + 161.57, + -70.13 + ], + [ + 161.96, + -70.46 + ], + [ + 162.08, + -70.31 + ], + [ + 162.68, + -70.28 + ], + [ + 163.34, + -70.72 + ], + [ + 163.83, + -70.65 + ], + [ + 163.66, + -70.47 + ], + [ + 165.28, + -70.56 + ], + [ + 165.82, + -70.72 + ], + [ + 166.51, + -70.6 + ], + [ + 166.84, + -70.67 + ], + [ + 166.42, + -70.71 + ], + [ + 166.59, + -70.79 + ], + [ + 167.73, + -70.8 + ], + [ + 168.23, + -71.18 + ], + [ + 170.2, + -71.67 + ], + [ + 170.33, + -71.32 + ], + [ + 170.98, + -71.84 + ], + [ + 169.77, + -72.18 + ], + [ + 169.78, + -72.44 + ], + [ + 170.27, + -72.31 + ], + [ + 170.28, + -72.59 + ], + [ + 169.02, + -73.27 + ], + [ + 169.21, + -73.46 + ], + [ + 168.56, + -73.37 + ], + [ + 168.28, + -73.61 + ], + [ + 168.31, + -73.43 + ], + [ + 167.63, + -73.35 + ], + [ + 167.73, + -73.5 + ], + [ + 166.48, + -73.58 + ], + [ + 166.8, + -73.75 + ], + [ + 165.63, + -73.8 + ], + [ + 166.26, + -74.08 + ], + [ + 165.34, + -74.02 + ], + [ + 165.06, + -74.17 + ], + [ + 164.85, + -74.08 + ], + [ + 165.43, + -74.65 + ], + [ + 165.24, + -74.56 + ], + [ + 164.05, + -74.63 + ], + [ + 163.67, + -75.12 + ], + [ + 162.56, + -75.24 + ], + [ + 163.59, + -75.2 + ], + [ + 165.36, + -75.4 + ], + [ + 165.43, + -75.52 + ], + [ + 162.58, + -75.42 + ], + [ + 163.04, + -75.48 + ], + [ + 163.04, + -75.94 + ], + [ + 162.33, + -76.1 + ], + [ + 163.11, + -76.15 + ], + [ + 162.51, + -76.22 + ], + [ + 163.02, + -76.73 + ], + [ + 162.31, + -76.99 + ], + [ + 163.19, + -77.03 + ], + [ + 163.86, + -77.49 + ], + [ + 162.6, + -77.83 + ], + [ + 164.21, + -77.65 + ], + [ + 164.51, + -78.01 + ], + [ + 165.56, + -77.8 + ], + [ + 166.74, + -77.91 + ], + [ + 166.94, + -77.68 + ], + [ + 166.14, + -77.54 + ], + [ + 166.7, + -77.16 + ], + [ + 167.54, + -77.41 + ], + [ + 173.67, + -77.43 + ], + [ + 180, + -77.75 + ], + [ + 180, + -85 + ], + [ + 160, + -85.05 + ], + [ + 136, + -85.05 + ], + [ + 45, + -85.05 + ], + [ + -20, + -85.05 + ], + [ + -25, + -85.05 + ], + [ + -53, + -85.05 + ], + [ + -74, + -85.05 + ], + [ + -90, + -85.05 + ], + [ + -150, + -85.05 + ], + [ + -180, + -85.05 + ] + ], + [ + [ + 68.64, + -70.62 + ], + [ + 68.73, + -70.61 + ], + [ + 68.61, + -70.44 + ], + [ + 68.64, + -70.61 + ], + [ + 68.64, + -70.62 + ] + ], + [ + [ + 101.21, + -66.1 + ], + [ + 100.84, + -66.11 + ], + [ + 101.45, + -66.07 + ], + [ + 101.23, + -66 + ], + [ + 100.63, + -66.03 + ], + [ + 100.77, + -66.22 + ], + [ + 101.21, + -66.1 + ] + ], + [ + [ + 98.92, + -66.2 + ], + [ + 98.62, + -66.37 + ], + [ + 99.1, + -66.42 + ], + [ + 98.92, + -66.2 + ] + ] + ], + [ + [ + [ + 169.5, + -73.52 + ], + [ + 169.78, + -73.32 + ], + [ + 169.87, + -73.63 + ], + [ + 169.5, + -73.52 + ] + ] + ], + [ + [ + [ + 164.64, + -67.44 + ], + [ + 164.65, + -67.27 + ], + [ + 164.85, + -67.6 + ], + [ + 164.64, + -67.44 + ] + ] + ], + [ + [ + [ + 163.31, + -66.79 + ], + [ + 163.27, + -66.89 + ], + [ + 163.13, + -66.69 + ], + [ + 163.31, + -66.79 + ] + ] + ], + [ + [ + [ + 92.54, + -65.71 + ], + [ + 92.65, + -65.8 + ], + [ + 92.26, + -65.79 + ], + [ + 92.54, + -65.71 + ] + ] + ], + [ + [ + [ + -45.24, + -60.63 + ], + [ + -45.17, + -60.73 + ], + [ + -46.03, + -60.61 + ], + [ + -45.7, + -60.51 + ], + [ + -45.24, + -60.63 + ] + ] + ], + [ + [ + [ + -55.21, + -61.28 + ], + [ + -55.37, + -61.05 + ], + [ + -54.65, + -61.1 + ], + [ + -55.21, + -61.28 + ] + ] + ], + [ + [ + [ + -56.05, + -63.14 + ], + [ + -55.16, + -63.19 + ], + [ + -55.05, + -63.32 + ], + [ + -55.9, + -63.29 + ], + [ + -56.42, + -63.44 + ], + [ + -56.55, + -63.33 + ], + [ + -56.05, + -63.14 + ] + ] + ], + [ + [ + [ + -55.73, + -63.44 + ], + [ + -55.97, + -63.59 + ], + [ + -56.26, + -63.48 + ], + [ + -55.73, + -63.44 + ] + ] + ], + [ + [ + [ + -56.17, + -63 + ], + [ + -56.31, + -63.19 + ], + [ + -56.62, + -63.06 + ], + [ + -56.17, + -63 + ] + ] + ], + [ + [ + [ + -57.27, + -63.87 + ], + [ + -57.7, + -63.82 + ], + [ + -57.05, + -63.84 + ], + [ + -57.27, + -63.87 + ] + ] + ], + [ + [ + [ + -57.38, + -64.56 + ], + [ + -57.45, + -64.45 + ], + [ + -56.89, + -64.33 + ], + [ + -57.38, + -64.56 + ] + ] + ], + [ + [ + [ + -63.16, + -64.31 + ], + [ + -63.29, + -64.58 + ], + [ + -62.82, + -64.57 + ], + [ + -63.18, + -64.65 + ], + [ + -63.34, + -64.77 + ], + [ + -63.43, + -64.72 + ], + [ + -63.56, + -64.73 + ], + [ + -63.71, + -64.86 + ], + [ + -64.3, + -64.71 + ], + [ + -63.58, + -64.27 + ], + [ + -63.16, + -64.31 + ] + ] + ], + [ + [ + [ + -65.86, + -65.54 + ], + [ + -65.65, + -65.66 + ], + [ + -66.14, + -65.89 + ], + [ + -65.86, + -65.54 + ] + ] + ], + [ + [ + [ + -67.59, + -66.87 + ], + [ + -67.35, + -66.73 + ], + [ + -67.23, + -66.84 + ], + [ + -67.59, + -66.87 + ] + ] + ], + [ + [ + [ + -67.3, + -67.74 + ], + [ + -67.77, + -67.67 + ], + [ + -67.25, + -67.57 + ], + [ + -67.3, + -67.74 + ] + ] + ], + [ + [ + [ + -63.51, + -64.81 + ], + [ + -63.35, + -64.8 + ], + [ + -63.17, + -64.71 + ], + [ + -63.43, + -64.91 + ], + [ + -63.51, + -64.81 + ] + ] + ], + [ + [ + [ + -62.39, + -64.01 + ], + [ + -61.99, + -64.14 + ], + [ + -62.6, + -64.53 + ], + [ + -62.39, + -64.01 + ] + ] + ], + [ + [ + [ + -60.89, + -63.85 + ], + [ + -60.82, + -63.68 + ], + [ + -60.56, + -63.7 + ], + [ + -60.68, + -63.89 + ], + [ + -60.89, + -63.85 + ] + ] + ], + [ + [ + [ + -60.37, + -62.64 + ], + [ + -61.22, + -62.59 + ], + [ + -60.14, + -62.45 + ], + [ + -59.81, + -62.61 + ], + [ + -60.31, + -62.76 + ], + [ + -60.37, + -62.64 + ] + ] + ], + [ + [ + [ + -58.45, + -62.21 + ], + [ + -59.03, + -62.21 + ], + [ + -58.44, + -61.93 + ], + [ + -57.66, + -61.91 + ], + [ + -57.58, + -62.03 + ], + [ + -58.19, + -62.05 + ], + [ + -58.27, + -62.19 + ], + [ + -58.44, + -62.06 + ], + [ + -58.45, + -62.21 + ] + ] + ], + [ + [ + [ + -57.14, + -64.09 + ], + [ + -57.31, + -64.38 + ], + [ + -57.98, + -64.45 + ], + [ + -58.31, + -64.32 + ], + [ + -58.03, + -64.08 + ], + [ + -58.46, + -64.09 + ], + [ + -57.78, + -63.78 + ], + [ + -57.87, + -64.07 + ], + [ + -57.47, + -63.91 + ], + [ + -57.14, + -64.09 + ] + ] + ], + [ + [ + [ + -61.99, + -63.35 + ], + [ + -62.27, + -63.36 + ], + [ + -62.21, + -63.23 + ], + [ + -61.99, + -63.35 + ] + ] + ], + [ + [ + [ + -68.58, + -67.75 + ], + [ + -68.92, + -67.76 + ], + [ + -69.13, + -67.43 + ], + [ + -68.33, + -66.78 + ], + [ + -67.69, + -66.62 + ], + [ + -68.02, + -66.94 + ], + [ + -67.68, + -67.16 + ], + [ + -68.58, + -67.75 + ] + ] + ], + [ + [ + [ + -75.4, + -69.76 + ], + [ + -74.74, + -69.75 + ], + [ + -74.45, + -70.14 + ], + [ + -75.76, + -70.1 + ], + [ + -75.4, + -69.76 + ] + ] + ], + [ + [ + [ + -90.47, + -68.83 + ], + [ + -90.66, + -68.92 + ], + [ + -90.7, + -68.76 + ], + [ + -90.47, + -68.83 + ] + ] + ] + ] + }, + "properties": { + "A3": "ATA" + } + }, + { + "type": "Feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + -11.46, + 6.93 + ], + [ + -11.43, + 6.97 + ], + [ + -11.42, + 6.97 + ], + [ + -11.4, + 6.99 + ], + [ + -11.38, + 7.01 + ], + [ + -11.36, + 7.05 + ], + [ + -11.37, + 7.06 + ], + [ + -11.36, + 7.08 + ], + [ + -11.34, + 7.08 + ], + [ + -11.33, + 7.09 + ], + [ + -11.33, + 7.1 + ], + [ + -11.34, + 7.11 + ], + [ + -11.35, + 7.13 + ], + [ + -11.33, + 7.15 + ], + [ + -11.31, + 7.19 + ], + [ + -11.29, + 7.21 + ], + [ + -11.28, + 7.22 + ], + [ + -11.27, + 7.23 + ], + [ + -11.26, + 7.23 + ], + [ + -11.25, + 7.23 + ], + [ + -11.23, + 7.25 + ], + [ + -11.18, + 7.27 + ], + [ + -11.18, + 7.29 + ], + [ + -11.14, + 7.32 + ], + [ + -11.1, + 7.39 + ], + [ + -11.09, + 7.39 + ], + [ + -10.6, + 7.77 + ], + [ + -10.61, + 8.04 + ], + [ + -10.3, + 8.2 + ], + [ + -10.28, + 8.48 + ], + [ + -10.2, + 8.5 + ], + [ + -10.19, + 8.5 + ], + [ + -10.17, + 8.51 + ], + [ + -9.89, + 8.5 + ], + [ + -9.89, + 8.49 + ], + [ + -9.77, + 8.55 + ], + [ + -9.48, + 8.35 + ], + [ + -9.41, + 7.52 + ], + [ + -9.41, + 7.51 + ], + [ + -9.43, + 7.48 + ], + [ + -9.43, + 7.47 + ], + [ + -9.45, + 7.45 + ], + [ + -9.47, + 7.43 + ], + [ + -9.47, + 7.42 + ], + [ + -9.47, + 7.41 + ], + [ + -9.47, + 7.4 + ], + [ + -9.47, + 7.38 + ], + [ + -9.45, + 7.41 + ], + [ + -9.21, + 7.39 + ], + [ + -9.11, + 7.19 + ], + [ + -8.84, + 7.28 + ], + [ + -8.68, + 7.7 + ], + [ + -8.47, + 7.56 + ], + [ + -8.27, + 7 + ], + [ + -8.6, + 6.51 + ], + [ + -7.9, + 6.28 + ], + [ + -7.74, + 5.93 + ], + [ + -7.42, + 5.84 + ], + [ + -7.37, + 5.33 + ], + [ + -7.54, + 4.94 + ], + [ + -7.53, + 4.92 + ], + [ + -7.54, + 4.92 + ], + [ + -7.58, + 4.91 + ], + [ + -7.6, + 4.9 + ], + [ + -7.6, + 4.89 + ], + [ + -7.59, + 4.88 + ], + [ + -7.59, + 4.87 + ], + [ + -7.58, + 4.83 + ], + [ + -7.58, + 4.79 + ], + [ + -7.56, + 4.76 + ], + [ + -7.56, + 4.74 + ], + [ + -7.56, + 4.72 + ], + [ + -7.56, + 4.7 + ], + [ + -7.56, + 4.69 + ], + [ + -7.57, + 4.67 + ], + [ + -7.56, + 4.67 + ], + [ + -7.56, + 4.64 + ], + [ + -7.56, + 4.63 + ], + [ + -7.56, + 4.57 + ], + [ + -7.56, + 4.55 + ], + [ + -7.56, + 4.54 + ], + [ + -7.56, + 4.53 + ], + [ + -7.56, + 4.52 + ], + [ + -7.56, + 4.5 + ], + [ + -7.56, + 4.49 + ], + [ + -7.57, + 4.46 + ], + [ + -7.57, + 4.45 + ], + [ + -7.54, + 4.44 + ], + [ + -7.55, + 4.43 + ], + [ + -7.57, + 4.4 + ], + [ + -7.56, + 4.39 + ], + [ + -7.55, + 4.38 + ], + [ + -9.04, + 4.98 + ], + [ + -10.06, + 5.96 + ], + [ + -11.39, + 6.74 + ], + [ + -11.29, + 6.71 + ], + [ + -11.17, + 6.71 + ], + [ + -11.46, + 6.93 + ] + ] + ] + }, + "properties": { + "A3": "LBR" + } + }, + { + "type": "Feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + -54.6, + 2.33 + ], + [ + -54.21, + 2.78 + ], + [ + -54.21, + 3.15 + ], + [ + -54.09, + 3.29 + ], + [ + -54.07, + 3.3 + ], + [ + -54.06, + 3.32 + ], + [ + -54.07, + 3.32 + ], + [ + -54.06, + 3.36 + ], + [ + -54.05, + 3.37 + ], + [ + -54.06, + 3.39 + ], + [ + -54.05, + 3.39 + ], + [ + -54.03, + 3.4 + ], + [ + -54.03, + 3.41 + ], + [ + -54.02, + 3.42 + ], + [ + -54.01, + 3.43 + ], + [ + -54.02, + 3.45 + ], + [ + -54.01, + 3.46 + ], + [ + -54.01, + 3.48 + ], + [ + -54.01, + 3.51 + ], + [ + -54, + 3.53 + ], + [ + -54.01, + 3.54 + ], + [ + -54, + 3.56 + ], + [ + -54, + 3.57 + ], + [ + -53.99, + 3.58 + ], + [ + -53.98, + 3.59 + ], + [ + -53.98, + 3.6 + ], + [ + -53.98, + 3.61 + ], + [ + -54, + 3.64 + ], + [ + -54.01, + 3.65 + ], + [ + -54.03, + 3.63 + ], + [ + -54.04, + 3.63 + ], + [ + -54.05, + 3.65 + ], + [ + -54.07, + 3.67 + ], + [ + -54.08, + 3.67 + ], + [ + -54.09, + 3.69 + ], + [ + -54.09, + 3.73 + ], + [ + -54.1, + 3.74 + ], + [ + -54.11, + 3.77 + ], + [ + -54.12, + 3.78 + ], + [ + -54.14, + 3.8 + ], + [ + -54.15, + 3.8 + ], + [ + -54.16, + 3.8 + ], + [ + -54.17, + 3.8 + ], + [ + -54.18, + 3.8 + ], + [ + -54.2, + 3.8 + ], + [ + -54.2, + 3.82 + ], + [ + -54.2, + 3.83 + ], + [ + -54.19, + 3.84 + ], + [ + -54.19, + 3.85 + ], + [ + -54.21, + 3.85 + ], + [ + -54.23, + 3.86 + ], + [ + -54.25, + 3.88 + ], + [ + -54.25, + 3.89 + ], + [ + -54.25, + 3.91 + ], + [ + -54.43, + 4.42 + ], + [ + -54.44, + 4.45 + ], + [ + -54.45, + 4.47 + ], + [ + -54.45, + 4.48 + ], + [ + -54.44, + 4.54 + ], + [ + -54.43, + 4.56 + ], + [ + -54.42, + 4.58 + ], + [ + -54.42, + 4.59 + ], + [ + -54.43, + 4.62 + ], + [ + -54.44, + 4.67 + ], + [ + -54.43, + 4.69 + ], + [ + -54.45, + 4.72 + ], + [ + -54.46, + 4.73 + ], + [ + -54.48, + 4.74 + ], + [ + -54.47, + 4.85 + ], + [ + -54.48, + 4.88 + ], + [ + -54.48, + 4.91 + ], + [ + -54.46, + 4.93 + ], + [ + -54.44, + 4.95 + ], + [ + -54.44, + 4.96 + ], + [ + -54.44, + 4.97 + ], + [ + -54.44, + 4.99 + ], + [ + -54.44, + 5 + ], + [ + -54.44, + 5.01 + ], + [ + -54.43, + 5.03 + ], + [ + -54.41, + 5.07 + ], + [ + -54.39, + 5.1 + ], + [ + -54.37, + 5.12 + ], + [ + -54.35, + 5.14 + ], + [ + -54.35, + 5.15 + ], + [ + -54.35, + 5.16 + ], + [ + -54.34, + 5.17 + ], + [ + -54.33, + 5.18 + ], + [ + -54.33, + 5.19 + ], + [ + -54.31, + 5.22 + ], + [ + -54.3, + 5.23 + ], + [ + -54.28, + 5.25 + ], + [ + -54.27, + 5.26 + ], + [ + -54.26, + 5.27 + ], + [ + -54.25, + 5.28 + ], + [ + -54.24, + 5.29 + ], + [ + -54.23, + 5.3 + ], + [ + -54.19, + 5.32 + ], + [ + -54.17, + 5.34 + ], + [ + -54.15, + 5.36 + ], + [ + -54.14, + 5.38 + ], + [ + -54.13, + 5.4 + ], + [ + -54.13, + 5.41 + ], + [ + -54.1, + 5.43 + ], + [ + -54.09, + 5.45 + ], + [ + -54.06, + 5.48 + ], + [ + -54.05, + 5.49 + ], + [ + -54.04, + 5.51 + ], + [ + -54.03, + 5.52 + ], + [ + -54.01, + 5.55 + ], + [ + -54.01, + 5.56 + ], + [ + -53.88, + 5.75 + ], + [ + -52.94, + 5.45 + ], + [ + -52.38, + 4.89 + ], + [ + -52.29, + 4.94 + ], + [ + -52.32, + 4.81 + ], + [ + -52.04, + 4.72 + ], + [ + -51.94, + 4.44 + ], + [ + -51.91, + 4.67 + ], + [ + -51.8, + 4.61 + ], + [ + -51.63, + 4.2 + ], + [ + -51.66, + 4.05 + ], + [ + -51.67, + 4.05 + ], + [ + -51.68, + 4.04 + ], + [ + -51.69, + 4.03 + ], + [ + -51.74, + 4.01 + ], + [ + -51.75, + 4 + ], + [ + -51.77, + 3.98 + ], + [ + -51.78, + 3.97 + ], + [ + -51.78, + 3.96 + ], + [ + -51.78, + 3.94 + ], + [ + -51.78, + 3.92 + ], + [ + -51.79, + 3.9 + ], + [ + -51.8, + 3.89 + ], + [ + -51.81, + 3.87 + ], + [ + -51.82, + 3.86 + ], + [ + -51.83, + 3.85 + ], + [ + -51.84, + 3.84 + ], + [ + -51.86, + 3.83 + ], + [ + -51.87, + 3.81 + ], + [ + -51.88, + 3.8 + ], + [ + -51.9, + 3.8 + ], + [ + -51.91, + 3.8 + ], + [ + -51.9, + 3.78 + ], + [ + -51.93, + 3.77 + ], + [ + -51.92, + 3.74 + ], + [ + -51.92, + 3.73 + ], + [ + -51.94, + 3.72 + ], + [ + -51.96, + 3.71 + ], + [ + -51.97, + 3.71 + ], + [ + -51.98, + 3.68 + ], + [ + -51.99, + 3.67 + ], + [ + -51.99, + 3.66 + ], + [ + -51.99, + 3.65 + ], + [ + -51.99, + 3.64 + ], + [ + -52.01, + 3.61 + ], + [ + -52.01, + 3.6 + ], + [ + -52.03, + 3.58 + ], + [ + -52.05, + 3.54 + ], + [ + -52.05, + 3.53 + ], + [ + -52.07, + 3.52 + ], + [ + -52.07, + 3.51 + ], + [ + -52.09, + 3.48 + ], + [ + -52.09, + 3.46 + ], + [ + -52.11, + 3.45 + ], + [ + -52.11, + 3.44 + ], + [ + -52.12, + 3.43 + ], + [ + -52.12, + 3.42 + ], + [ + -52.13, + 3.4 + ], + [ + -52.15, + 3.38 + ], + [ + -52.16, + 3.36 + ], + [ + -52.19, + 3.32 + ], + [ + -52.19, + 3.3 + ], + [ + -52.2, + 3.29 + ], + [ + -52.22, + 3.26 + ], + [ + -52.23, + 3.25 + ], + [ + -52.25, + 3.24 + ], + [ + -52.26, + 3.25 + ], + [ + -52.29, + 3.23 + ], + [ + -52.29, + 3.22 + ], + [ + -52.3, + 3.19 + ], + [ + -52.3, + 3.18 + ], + [ + -52.33, + 3.16 + ], + [ + -52.34, + 3.15 + ], + [ + -52.35, + 3.13 + ], + [ + -52.34, + 3.12 + ], + [ + -52.34, + 3.11 + ], + [ + -52.33, + 3.07 + ], + [ + -52.34, + 3.06 + ], + [ + -52.34, + 3.05 + ], + [ + -52.36, + 3.01 + ], + [ + -52.55, + 2.52 + ], + [ + -52.96, + 2.17 + ], + [ + -53.74, + 2.37 + ], + [ + -54.11, + 2.11 + ], + [ + -54.6, + 2.33 + ] + ] + ] + }, + "properties": { + "A3": "GUF" + } + }, + { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + -83.14, + 15 + ], + [ + -83.16, + 14.99 + ], + [ + -83.17, + 14.99 + ], + [ + -83.19, + 15 + ], + [ + -83.21, + 15 + ], + [ + -83.21, + 14.99 + ], + [ + -83.23, + 14.98 + ], + [ + -83.27, + 14.99 + ], + [ + -83.28, + 15 + ], + [ + -83.29, + 15 + ], + [ + -83.32, + 15 + ], + [ + -83.4, + 15.03 + ], + [ + -83.41, + 15.02 + ], + [ + -83.41, + 15.01 + ], + [ + -83.43, + 14.99 + ], + [ + -83.43, + 15 + ], + [ + -83.45, + 14.98 + ], + [ + -83.47, + 14.99 + ], + [ + -83.48, + 14.99 + ], + [ + -83.5, + 15.01 + ], + [ + -83.51, + 14.99 + ], + [ + -83.52, + 14.99 + ], + [ + -83.54, + 14.97 + ], + [ + -83.53, + 14.95 + ], + [ + -83.54, + 14.95 + ], + [ + -83.55, + 14.95 + ], + [ + -83.54, + 14.94 + ], + [ + -83.55, + 14.94 + ], + [ + -83.56, + 14.93 + ], + [ + -83.56, + 14.92 + ], + [ + -83.6, + 14.92 + ], + [ + -83.6, + 14.9 + ], + [ + -83.61, + 14.9 + ], + [ + -83.62, + 14.88 + ], + [ + -83.63, + 14.88 + ], + [ + -83.64, + 14.88 + ], + [ + -83.66, + 14.88 + ], + [ + -83.69, + 14.88 + ], + [ + -83.69, + 14.87 + ], + [ + -83.7, + 14.86 + ], + [ + -83.72, + 14.86 + ], + [ + -83.72, + 14.85 + ], + [ + -83.71, + 14.85 + ], + [ + -83.7, + 14.84 + ], + [ + -83.7, + 14.83 + ], + [ + -83.72, + 14.83 + ], + [ + -83.73, + 14.84 + ], + [ + -83.75, + 14.82 + ], + [ + -83.78, + 14.81 + ], + [ + -83.78, + 14.82 + ], + [ + -83.8, + 14.8 + ], + [ + -83.82, + 14.79 + ], + [ + -83.83, + 14.8 + ], + [ + -83.84, + 14.78 + ], + [ + -83.85, + 14.77 + ], + [ + -83.87, + 14.77 + ], + [ + -83.93, + 14.78 + ], + [ + -83.94, + 14.78 + ], + [ + -83.93, + 14.75 + ], + [ + -83.94, + 14.76 + ], + [ + -83.98, + 14.75 + ], + [ + -84.02, + 14.74 + ], + [ + -84.04, + 14.75 + ], + [ + -84.05, + 14.75 + ], + [ + -84.04, + 14.77 + ], + [ + -84.05, + 14.77 + ], + [ + -84.08, + 14.77 + ], + [ + -84.08, + 14.78 + ], + [ + -84.12, + 14.78 + ], + [ + -84.12, + 14.77 + ], + [ + -84.11, + 14.76 + ], + [ + -84.11, + 14.75 + ], + [ + -84.11, + 14.73 + ], + [ + -84.12, + 14.73 + ], + [ + -84.13, + 14.73 + ], + [ + -84.14, + 14.73 + ], + [ + -84.16, + 14.72 + ], + [ + -84.22, + 14.73 + ], + [ + -84.23, + 14.74 + ], + [ + -84.22, + 14.75 + ], + [ + -84.23, + 14.76 + ], + [ + -84.24, + 14.75 + ], + [ + -84.25, + 14.75 + ], + [ + -84.27, + 14.72 + ], + [ + -84.27, + 14.71 + ], + [ + -84.26, + 14.7 + ], + [ + -84.27, + 14.69 + ], + [ + -84.26, + 14.67 + ], + [ + -84.27, + 14.67 + ], + [ + -84.29, + 14.66 + ], + [ + -84.33, + 14.68 + ], + [ + -84.35, + 14.69 + ], + [ + -84.35, + 14.7 + ], + [ + -84.36, + 14.71 + ], + [ + -84.37, + 14.71 + ], + [ + -84.37, + 14.7 + ], + [ + -84.38, + 14.69 + ], + [ + -84.39, + 14.67 + ], + [ + -84.4, + 14.67 + ], + [ + -84.42, + 14.64 + ], + [ + -84.44, + 14.63 + ], + [ + -84.46, + 14.63 + ], + [ + -84.47, + 14.62 + ], + [ + -84.48, + 14.62 + ], + [ + -84.54, + 14.65 + ], + [ + -84.52, + 14.65 + ], + [ + -84.57, + 14.66 + ], + [ + -84.58, + 14.65 + ], + [ + -84.62, + 14.66 + ], + [ + -84.64, + 14.68 + ], + [ + -84.64, + 14.67 + ], + [ + -84.66, + 14.67 + ], + [ + -84.67, + 14.67 + ], + [ + -84.68, + 14.69 + ], + [ + -84.68, + 14.68 + ], + [ + -84.69, + 14.68 + ], + [ + -84.7, + 14.69 + ], + [ + -84.71, + 14.69 + ], + [ + -84.73, + 14.7 + ], + [ + -84.73, + 14.71 + ], + [ + -84.75, + 14.73 + ], + [ + -84.74, + 14.74 + ], + [ + -84.75, + 14.74 + ], + [ + -84.76, + 14.74 + ], + [ + -84.77, + 14.75 + ], + [ + -84.77, + 14.76 + ], + [ + -84.76, + 14.75 + ], + [ + -84.75, + 14.75 + ], + [ + -84.75, + 14.77 + ], + [ + -84.77, + 14.78 + ], + [ + -84.78, + 14.79 + ], + [ + -84.79, + 14.8 + ], + [ + -84.8, + 14.82 + ], + [ + -84.86, + 14.81 + ], + [ + -84.87, + 14.81 + ], + [ + -84.88, + 14.82 + ], + [ + -84.89, + 14.81 + ], + [ + -84.9, + 14.81 + ], + [ + -84.92, + 14.78 + ], + [ + -84.94, + 14.76 + ], + [ + -84.96, + 14.75 + ], + [ + -84.99, + 14.74 + ], + [ + -84.99, + 14.73 + ], + [ + -85.01, + 14.72 + ], + [ + -85.01, + 14.71 + ], + [ + -85.03, + 14.67 + ], + [ + -85.04, + 14.67 + ], + [ + -85.03, + 14.65 + ], + [ + -85.04, + 14.61 + ], + [ + -85.03, + 14.61 + ], + [ + -85.04, + 14.58 + ], + [ + -85.07, + 14.56 + ], + [ + -85.08, + 14.56 + ], + [ + -85.1, + 14.56 + ], + [ + -85.12, + 14.58 + ], + [ + -85.12, + 14.59 + ], + [ + -85.13, + 14.59 + ], + [ + -85.13, + 14.58 + ], + [ + -85.15, + 14.57 + ], + [ + -85.14, + 14.56 + ], + [ + -85.14, + 14.52 + ], + [ + -85.16, + 14.48 + ], + [ + -85.17, + 14.48 + ], + [ + -85.18, + 14.46 + ], + [ + -85.18, + 14.45 + ], + [ + -85.18, + 14.43 + ], + [ + -85.21, + 14.37 + ], + [ + -85.19, + 14.35 + ], + [ + -85.2, + 14.35 + ], + [ + -85.19, + 14.33 + ], + [ + -85.17, + 14.31 + ], + [ + -85.17, + 14.28 + ], + [ + -85.27, + 14.26 + ], + [ + -85.28, + 14.26 + ], + [ + -85.3, + 14.25 + ], + [ + -85.34, + 14.25 + ], + [ + -85.34, + 14.24 + ], + [ + -85.37, + 14.22 + ], + [ + -85.4, + 14.14 + ], + [ + -85.4, + 14.13 + ], + [ + -85.43, + 14.12 + ], + [ + -85.43, + 14.11 + ], + [ + -85.45, + 14.11 + ], + [ + -85.46, + 14.11 + ], + [ + -85.47, + 14.09 + ], + [ + -85.48, + 14.09 + ], + [ + -85.52, + 14.06 + ], + [ + -85.52, + 14.05 + ], + [ + -85.56, + 14.05 + ], + [ + -85.6, + 14.03 + ], + [ + -85.61, + 14.03 + ], + [ + -85.64, + 14.01 + ], + [ + -85.65, + 14.01 + ], + [ + -85.66, + 14.01 + ], + [ + -85.67, + 14.01 + ], + [ + -85.69, + 13.99 + ], + [ + -85.73, + 13.97 + ], + [ + -85.74, + 13.97 + ], + [ + -85.76, + 13.95 + ], + [ + -85.75, + 13.94 + ], + [ + -85.75, + 13.92 + ], + [ + -85.76, + 13.9 + ], + [ + -85.73, + 13.86 + ], + [ + -85.75, + 13.84 + ], + [ + -85.76, + 13.84 + ], + [ + -86.01, + 14.08 + ], + [ + -86.33, + 13.77 + ], + [ + -86.76, + 13.77 + ], + [ + -86.71, + 13.3 + ], + [ + -86.92, + 13.22 + ], + [ + -86.92, + 13.2 + ], + [ + -86.92, + 13.13 + ], + [ + -86.93, + 13.13 + ], + [ + -86.92, + 13.09 + ], + [ + -86.94, + 13.07 + ], + [ + -86.95, + 13.07 + ], + [ + -86.97, + 13.03 + ], + [ + -86.99, + 13.02 + ], + [ + -87.01, + 13 + ], + [ + -87.03, + 12.99 + ], + [ + -87.05, + 12.98 + ], + [ + -87.3, + 12.99 + ], + [ + -87.31, + 12.99 + ], + [ + -87.51, + 13.27 + ], + [ + -87.37, + 13.41 + ], + [ + -87.59, + 13.31 + ], + [ + -87.58, + 13.47 + ], + [ + -87.72, + 13.36 + ], + [ + -87.82, + 13.41 + ], + [ + -87.81, + 13.41 + ], + [ + -87.8, + 13.41 + ], + [ + -87.71, + 13.8 + ], + [ + -87.8, + 13.92 + ], + [ + -88.23, + 14 + ], + [ + -88.5, + 13.9 + ], + [ + -88.51, + 13.92 + ], + [ + -88.51, + 13.93 + ], + [ + -89.1, + 14.4 + ], + [ + -89.36, + 14.42 + ], + [ + -89.15, + 14.58 + ], + [ + -89.15, + 15.07 + ], + [ + -88.31, + 15.68 + ], + [ + -88.24, + 15.7 + ], + [ + -88.24, + 15.71 + ], + [ + -88.23, + 15.72 + ], + [ + -87.73, + 15.92 + ], + [ + -87.58, + 15.75 + ], + [ + -87.37, + 15.85 + ], + [ + -86.9, + 15.75 + ], + [ + -86.36, + 15.78 + ], + [ + -85.94, + 15.93 + ], + [ + -86.01, + 16.03 + ], + [ + -85.46, + 15.86 + ], + [ + -85.01, + 15.98 + ], + [ + -84.64, + 15.77 + ], + [ + -84.31, + 15.82 + ], + [ + -83.73, + 15.39 + ], + [ + -84.05, + 15.53 + ], + [ + -84.1, + 15.34 + ], + [ + -83.76, + 15.19 + ], + [ + -83.51, + 15.28 + ], + [ + -83.72, + 15.4 + ], + [ + -83.39, + 15.25 + ], + [ + -83.14, + 15 + ] + ] + ], + [ + [ + [ + -85.16, + 14.31 + ], + [ + -85.16, + 14.28 + ], + [ + -85.17, + 14.31 + ], + [ + -85.16, + 14.31 + ] + ] + ], + [ + [ + [ + -86.44, + 16.38 + ], + [ + -86.26, + 16.42 + ], + [ + -86.6, + 16.27 + ], + [ + -86.44, + 16.38 + ] + ] + ] + ] + }, + "properties": { + "A3": "HND" + } + }, + { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + 115.02, + 4.9 + ], + [ + 115.02, + 4.89 + ], + [ + 115, + 4.89 + ], + [ + 114.99, + 4.87 + ], + [ + 114.77, + 4.72 + ], + [ + 114.88, + 4.37 + ], + [ + 114.65, + 4.01 + ], + [ + 114.17, + 4.57 + ], + [ + 114.16, + 4.57 + ], + [ + 114.08, + 4.59 + ], + [ + 115.09, + 5.04 + ], + [ + 115.02, + 4.9 + ] + ] + ], + [ + [ + [ + 115.16, + 4.89 + ], + [ + 115.15, + 4.87 + ], + [ + 115.16, + 4.87 + ], + [ + 115.34, + 4.31 + ], + [ + 115.09, + 4.39 + ], + [ + 115.05, + 4.61 + ], + [ + 115.05, + 4.65 + ], + [ + 115.04, + 4.65 + ], + [ + 115.03, + 4.7 + ], + [ + 115.03, + 4.74 + ], + [ + 115.03, + 4.75 + ], + [ + 115.04, + 4.78 + ], + [ + 115.05, + 4.78 + ], + [ + 115.05, + 4.79 + ], + [ + 115.16, + 4.89 + ] + ] + ] + ] + }, + "properties": { + "A3": "BRN" + } + }, + { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + 11.46, + 58.99 + ], + [ + 11.45, + 58.99 + ], + [ + 11.46, + 58.89 + ], + [ + 11.47, + 58.89 + ], + [ + 11.5, + 58.89 + ], + [ + 11.54, + 58.88 + ], + [ + 11.59, + 58.89 + ], + [ + 11.6, + 58.9 + ], + [ + 11.61, + 58.9 + ], + [ + 11.62, + 58.9 + ], + [ + 11.63, + 58.91 + ], + [ + 11.66, + 58.92 + ], + [ + 11.68, + 58.95 + ], + [ + 11.69, + 58.96 + ], + [ + 11.69, + 58.98 + ], + [ + 11.7, + 59.01 + ], + [ + 11.71, + 59.04 + ], + [ + 11.78, + 59.1 + ], + [ + 11.77, + 59.11 + ], + [ + 11.76, + 59.11 + ], + [ + 11.76, + 59.12 + ], + [ + 11.78, + 59.18 + ], + [ + 11.82, + 59.24 + ], + [ + 11.82, + 59.31 + ], + [ + 11.78, + 59.4 + ], + [ + 11.77, + 59.41 + ], + [ + 11.76, + 59.46 + ], + [ + 11.75, + 59.48 + ], + [ + 11.75, + 59.49 + ], + [ + 11.69, + 59.59 + ], + [ + 11.7, + 59.61 + ], + [ + 11.71, + 59.62 + ], + [ + 11.77, + 59.64 + ], + [ + 11.79, + 59.64 + ], + [ + 11.86, + 59.65 + ], + [ + 11.89, + 59.69 + ], + [ + 11.94, + 59.69 + ], + [ + 11.93, + 59.78 + ], + [ + 11.93, + 59.79 + ], + [ + 11.92, + 59.8 + ], + [ + 11.91, + 59.8 + ], + [ + 11.89, + 59.82 + ], + [ + 11.88, + 59.83 + ], + [ + 11.87, + 59.83 + ], + [ + 11.86, + 59.83 + ], + [ + 11.85, + 59.83 + ], + [ + 11.85, + 59.84 + ], + [ + 11.84, + 59.84 + ], + [ + 11.85, + 59.84 + ], + [ + 11.86, + 59.85 + ], + [ + 11.87, + 59.85 + ], + [ + 11.88, + 59.85 + ], + [ + 11.89, + 59.86 + ], + [ + 11.88, + 59.86 + ], + [ + 11.88, + 59.87 + ], + [ + 11.89, + 59.87 + ], + [ + 11.9, + 59.87 + ], + [ + 11.93, + 59.88 + ], + [ + 11.93, + 59.89 + ], + [ + 11.94, + 59.89 + ], + [ + 11.95, + 59.89 + ], + [ + 11.98, + 59.9 + ], + [ + 11.99, + 59.9 + ], + [ + 12.05, + 59.89 + ], + [ + 12.15, + 59.89 + ], + [ + 12.17, + 59.89 + ], + [ + 12.19, + 59.9 + ], + [ + 12.27, + 59.94 + ], + [ + 12.3, + 59.95 + ], + [ + 12.35, + 59.97 + ], + [ + 12.38, + 60 + ], + [ + 12.39, + 60.01 + ], + [ + 12.44, + 60.04 + ], + [ + 12.47, + 60.06 + ], + [ + 12.48, + 60.07 + ], + [ + 12.49, + 60.09 + ], + [ + 12.5, + 60.09 + ], + [ + 12.5, + 60.1 + ], + [ + 12.52, + 60.14 + ], + [ + 12.53, + 60.21 + ], + [ + 12.53, + 60.22 + ], + [ + 12.52, + 60.23 + ], + [ + 12.52, + 60.24 + ], + [ + 12.51, + 60.26 + ], + [ + 12.51, + 60.28 + ], + [ + 12.5, + 60.29 + ], + [ + 12.5, + 60.32 + ], + [ + 12.52, + 60.34 + ], + [ + 12.54, + 60.34 + ], + [ + 12.55, + 60.35 + ], + [ + 12.57, + 60.37 + ], + [ + 12.58, + 60.39 + ], + [ + 12.59, + 60.39 + ], + [ + 12.61, + 60.48 + ], + [ + 12.6, + 60.52 + ], + [ + 12.59, + 60.54 + ], + [ + 12.57, + 60.56 + ], + [ + 12.49, + 60.66 + ], + [ + 12.34, + 60.85 + ], + [ + 12.33, + 60.86 + ], + [ + 12.33, + 60.89 + ], + [ + 12.32, + 60.91 + ], + [ + 12.3, + 60.92 + ], + [ + 12.27, + 60.96 + ], + [ + 12.26, + 60.97 + ], + [ + 12.23, + 61 + ], + [ + 12.24, + 61.02 + ], + [ + 12.29, + 61.03 + ], + [ + 12.33, + 61.03 + ], + [ + 12.39, + 61.04 + ], + [ + 12.49, + 61.05 + ], + [ + 12.56, + 61.05 + ], + [ + 12.61, + 61.05 + ], + [ + 12.66, + 61.05 + ], + [ + 12.67, + 61.06 + ], + [ + 12.79, + 61.2 + ], + [ + 12.82, + 61.24 + ], + [ + 12.83, + 61.25 + ], + [ + 12.83, + 61.26 + ], + [ + 12.84, + 61.26 + ], + [ + 12.85, + 61.29 + ], + [ + 12.87, + 61.35 + ], + [ + 12.87, + 61.36 + ], + [ + 12.85, + 61.37 + ], + [ + 12.84, + 61.38 + ], + [ + 12.14, + 61.72 + ], + [ + 12.14, + 61.73 + ], + [ + 12.18, + 61.87 + ], + [ + 12.24, + 62.07 + ], + [ + 12.26, + 62.12 + ], + [ + 12.3, + 62.27 + ], + [ + 12.29, + 62.29 + ], + [ + 12.28, + 62.29 + ], + [ + 12.26, + 62.32 + ], + [ + 12.52, + 62.26 + ], + [ + 12.24, + 62.35 + ], + [ + 12.18, + 62.44 + ], + [ + 12.17, + 62.45 + ], + [ + 12.17, + 62.46 + ], + [ + 12.13, + 62.51 + ], + [ + 12.11, + 62.53 + ], + [ + 12.1, + 62.55 + ], + [ + 12.09, + 62.56 + ], + [ + 12.06, + 62.61 + ], + [ + 12.07, + 62.64 + ], + [ + 12.09, + 62.67 + ], + [ + 12.11, + 62.71 + ], + [ + 12.13, + 62.77 + ], + [ + 12.13, + 62.78 + ], + [ + 12.12, + 62.79 + ], + [ + 12.11, + 62.82 + ], + [ + 12.1, + 62.83 + ], + [ + 12.09, + 62.86 + ], + [ + 12.07, + 62.9 + ], + [ + 12.09, + 62.91 + ], + [ + 12.15, + 62.95 + ], + [ + 12.18, + 62.97 + ], + [ + 12.22, + 63 + ], + [ + 12.2, + 63.02 + ], + [ + 12.09, + 63.14 + ], + [ + 12.05, + 63.18 + ], + [ + 12.02, + 63.21 + ], + [ + 11.98, + 63.27 + ], + [ + 11.97, + 63.27 + ], + [ + 12.03, + 63.31 + ], + [ + 12.06, + 63.34 + ], + [ + 12.08, + 63.35 + ], + [ + 12.14, + 63.41 + ], + [ + 12.15, + 63.42 + ], + [ + 12.19, + 63.46 + ], + [ + 12.21, + 63.48 + ], + [ + 12.22, + 63.63 + ], + [ + 12.26, + 63.65 + ], + [ + 12.28, + 63.66 + ], + [ + 12.31, + 63.68 + ], + [ + 12.32, + 63.7 + ], + [ + 12.33, + 63.71 + ], + [ + 12.34, + 63.72 + ], + [ + 12.59, + 63.9 + ], + [ + 12.63, + 63.94 + ], + [ + 12.77, + 64 + ], + [ + 12.83, + 64.03 + ], + [ + 12.88, + 64.04 + ], + [ + 12.9, + 64.05 + ], + [ + 12.96, + 64.06 + ], + [ + 13.16, + 64.09 + ], + [ + 13.26, + 64.09 + ], + [ + 13.29, + 64.09 + ], + [ + 13.81, + 64.03 + ], + [ + 13.99, + 64.03 + ], + [ + 14.03, + 64.07 + ], + [ + 14.05, + 64.09 + ], + [ + 14.09, + 64.13 + ], + [ + 14.1, + 64.14 + ], + [ + 14.1, + 64.13 + ], + [ + 14.16, + 64.19 + ], + [ + 14.15, + 64.25 + ], + [ + 14.11, + 64.46 + ], + [ + 14.1, + 64.47 + ], + [ + 13.98, + 64.49 + ], + [ + 13.97, + 64.5 + ], + [ + 13.87, + 64.51 + ], + [ + 13.75, + 64.55 + ], + [ + 13.7, + 64.57 + ], + [ + 13.65, + 64.58 + ], + [ + 13.66, + 64.58 + ], + [ + 13.68, + 64.61 + ], + [ + 13.7, + 64.64 + ], + [ + 14.15, + 64.51 + ], + [ + 13.71, + 64.64 + ], + [ + 13.81, + 64.73 + ], + [ + 13.94, + 64.83 + ], + [ + 13.98, + 64.86 + ], + [ + 13.99, + 64.87 + ], + [ + 14, + 64.88 + ], + [ + 14.03, + 64.9 + ], + [ + 14.11, + 64.96 + ], + [ + 14.19, + 65.03 + ], + [ + 14.21, + 65.04 + ], + [ + 14.24, + 65.06 + ], + [ + 14.33, + 65.13 + ], + [ + 14.35, + 65.18 + ], + [ + 14.35, + 65.19 + ], + [ + 14.38, + 65.25 + ], + [ + 14.5, + 65.34 + ], + [ + 14.5, + 65.42 + ], + [ + 14.62, + 65.83 + ], + [ + 14.59, + 65.89 + ], + [ + 14.58, + 65.95 + ], + [ + 14.57, + 65.96 + ], + [ + 14.57, + 65.98 + ], + [ + 14.55, + 66.03 + ], + [ + 14.55, + 66.04 + ], + [ + 14.54, + 66.04 + ], + [ + 14.88, + 66.04 + ], + [ + 14.63, + 66.14 + ], + [ + 14.68, + 66.14 + ], + [ + 14.73, + 66.14 + ], + [ + 14.9, + 66.15 + ], + [ + 14.93, + 66.15 + ], + [ + 15.06, + 66.16 + ], + [ + 15.23, + 66.21 + ], + [ + 15.33, + 66.24 + ], + [ + 15.47, + 66.28 + ], + [ + 15.45, + 66.36 + ], + [ + 15.38, + 66.48 + ], + [ + 15.41, + 66.5 + ], + [ + 15.48, + 66.54 + ], + [ + 15.53, + 66.56 + ], + [ + 15.81, + 66.73 + ], + [ + 15.99, + 66.87 + ], + [ + 16.03, + 66.91 + ], + [ + 16.12, + 66.95 + ], + [ + 16.14, + 66.96 + ], + [ + 16.27, + 67.01 + ], + [ + 16.29, + 67.01 + ], + [ + 16.38, + 67.04 + ], + [ + 16.4, + 67.14 + ], + [ + 16.4, + 67.16 + ], + [ + 16.4, + 67.19 + ], + [ + 16.27, + 67.31 + ], + [ + 16.14, + 67.49 + ], + [ + 16.21, + 67.52 + ], + [ + 16.3, + 67.53 + ], + [ + 16.4, + 67.53 + ], + [ + 16.42, + 67.54 + ], + [ + 16.46, + 67.57 + ], + [ + 16.48, + 67.58 + ], + [ + 16.49, + 67.59 + ], + [ + 16.48, + 67.59 + ], + [ + 16.53, + 67.62 + ], + [ + 16.65, + 67.78 + ], + [ + 16.67, + 67.81 + ], + [ + 16.71, + 67.86 + ], + [ + 16.72, + 67.89 + ], + [ + 16.73, + 67.9 + ], + [ + 16.74, + 67.91 + ], + [ + 16.88, + 67.96 + ], + [ + 16.94, + 67.98 + ], + [ + 17, + 68 + ], + [ + 17.04, + 68.01 + ], + [ + 17.21, + 68.07 + ], + [ + 17.24, + 68.09 + ], + [ + 17.45, + 67.98 + ], + [ + 17.25, + 68.1 + ], + [ + 17.28, + 68.12 + ], + [ + 17.31, + 68.11 + ], + [ + 17.35, + 68.1 + ], + [ + 17.49, + 68.08 + ], + [ + 17.53, + 68.07 + ], + [ + 17.71, + 68.03 + ], + [ + 17.73, + 68.02 + ], + [ + 17.86, + 67.98 + ], + [ + 17.87, + 67.98 + ], + [ + 17.88, + 67.97 + ], + [ + 17.9, + 67.97 + ], + [ + 17.95, + 68.02 + ], + [ + 18.01, + 68.07 + ], + [ + 18.07, + 68.13 + ], + [ + 18.12, + 68.17 + ], + [ + 18.14, + 68.25 + ], + [ + 18.12, + 68.33 + ], + [ + 18.12, + 68.34 + ], + [ + 18.11, + 68.35 + ], + [ + 18.11, + 68.36 + ], + [ + 18.11, + 68.37 + ], + [ + 18.11, + 68.38 + ], + [ + 18.1, + 68.4 + ], + [ + 18.1, + 68.41 + ], + [ + 18.11, + 68.46 + ], + [ + 18.12, + 68.48 + ], + [ + 18.13, + 68.54 + ], + [ + 18.14, + 68.54 + ], + [ + 18.27, + 68.56 + ], + [ + 18.33, + 68.57 + ], + [ + 18.37, + 68.58 + ], + [ + 18.45, + 68.57 + ], + [ + 18.53, + 68.54 + ], + [ + 18.62, + 68.51 + ], + [ + 18.63, + 68.51 + ], + [ + 18.74, + 68.51 + ], + [ + 18.93, + 68.52 + ], + [ + 19.02, + 68.51 + ], + [ + 19.06, + 68.5 + ], + [ + 19.11, + 68.5 + ], + [ + 19.12, + 68.49 + ], + [ + 19.26, + 68.47 + ], + [ + 19.28, + 68.47 + ], + [ + 19.42, + 68.44 + ], + [ + 19.47, + 68.43 + ], + [ + 19.51, + 68.43 + ], + [ + 19.65, + 68.4 + ], + [ + 19.92, + 68.36 + ], + [ + 20.23, + 68.49 + ], + [ + 19.94, + 68.56 + ], + [ + 20.37, + 68.78 + ], + [ + 20.06, + 69.05 + ], + [ + 20.55, + 69.06 + ], + [ + 20.56, + 69.06 + ], + [ + 20.57, + 69.06 + ], + [ + 20.61, + 69.05 + ], + [ + 20.64, + 69.04 + ], + [ + 20.65, + 69.04 + ], + [ + 20.83, + 69 + ], + [ + 20.85, + 68.99 + ], + [ + 20.86, + 68.94 + ], + [ + 20.85, + 68.93 + ], + [ + 20.87, + 68.92 + ], + [ + 20.88, + 68.92 + ], + [ + 20.89, + 68.91 + ], + [ + 20.9, + 68.9 + ], + [ + 20.87, + 68.89 + ], + [ + 20.94, + 68.9 + ], + [ + 20.96, + 68.9 + ], + [ + 20.96, + 68.89 + ], + [ + 20.97, + 68.89 + ], + [ + 20.99, + 68.9 + ], + [ + 21.02, + 68.89 + ], + [ + 21.03, + 68.88 + ], + [ + 21.06, + 68.88 + ], + [ + 21.07, + 68.87 + ], + [ + 21.08, + 68.86 + ], + [ + 21.1, + 68.86 + ], + [ + 21.12, + 68.86 + ], + [ + 21.13, + 68.85 + ], + [ + 21.14, + 68.84 + ], + [ + 21.17, + 68.83 + ], + [ + 21.18, + 68.83 + ], + [ + 21.23, + 68.81 + ], + [ + 21.24, + 68.81 + ], + [ + 21.25, + 68.8 + ], + [ + 21.26, + 68.79 + ], + [ + 21.25, + 68.78 + ], + [ + 21.28, + 68.78 + ], + [ + 21.29, + 68.77 + ], + [ + 21.31, + 68.76 + ], + [ + 21.32, + 68.76 + ], + [ + 21.36, + 68.77 + ], + [ + 21.39, + 68.76 + ], + [ + 21.41, + 68.75 + ], + [ + 21.41, + 68.74 + ], + [ + 21.41, + 68.73 + ], + [ + 21.42, + 68.72 + ], + [ + 21.42, + 68.71 + ], + [ + 21.42, + 68.7 + ], + [ + 21.44, + 68.69 + ], + [ + 21.45, + 68.69 + ], + [ + 21.48, + 68.68 + ], + [ + 21.49, + 68.68 + ], + [ + 21.51, + 68.68 + ], + [ + 21.53, + 68.68 + ], + [ + 21.54, + 68.68 + ], + [ + 21.56, + 68.68 + ], + [ + 21.6, + 68.67 + ], + [ + 21.62, + 68.66 + ], + [ + 21.64, + 68.65 + ], + [ + 21.65, + 68.65 + ], + [ + 21.66, + 68.64 + ], + [ + 21.67, + 68.64 + ], + [ + 21.71, + 68.63 + ], + [ + 21.71, + 68.62 + ], + [ + 21.7, + 68.61 + ], + [ + 21.7, + 68.6 + ], + [ + 21.7, + 68.59 + ], + [ + 21.71, + 68.59 + ], + [ + 21.73, + 68.59 + ], + [ + 21.75, + 68.59 + ], + [ + 21.76, + 68.59 + ], + [ + 21.78, + 68.59 + ], + [ + 21.83, + 68.59 + ], + [ + 21.85, + 68.59 + ], + [ + 21.86, + 68.59 + ], + [ + 21.86, + 68.58 + ], + [ + 21.87, + 68.58 + ], + [ + 21.88, + 68.58 + ], + [ + 21.89, + 68.58 + ], + [ + 21.9, + 68.58 + ], + [ + 21.92, + 68.57 + ], + [ + 21.94, + 68.56 + ], + [ + 21.95, + 68.56 + ], + [ + 21.96, + 68.55 + ], + [ + 21.97, + 68.55 + ], + [ + 21.94, + 68.51 + ], + [ + 22.02, + 68.49 + ], + [ + 22.03, + 68.49 + ], + [ + 22.04, + 68.48 + ], + [ + 22.06, + 68.48 + ], + [ + 22.07, + 68.48 + ], + [ + 22.1, + 68.48 + ], + [ + 22.11, + 68.48 + ], + [ + 22.13, + 68.47 + ], + [ + 22.15, + 68.47 + ], + [ + 22.21, + 68.48 + ], + [ + 22.23, + 68.48 + ], + [ + 22.24, + 68.48 + ], + [ + 22.26, + 68.48 + ], + [ + 22.35, + 68.48 + ], + [ + 22.35, + 68.47 + ], + [ + 22.34, + 68.47 + ], + [ + 22.35, + 68.46 + ], + [ + 22.35, + 68.45 + ], + [ + 22.36, + 68.45 + ], + [ + 22.39, + 68.46 + ], + [ + 22.4, + 68.46 + ], + [ + 22.42, + 68.46 + ], + [ + 22.44, + 68.46 + ], + [ + 22.45, + 68.45 + ], + [ + 22.46, + 68.44 + ], + [ + 22.49, + 68.44 + ], + [ + 22.51, + 68.44 + ], + [ + 22.53, + 68.44 + ], + [ + 22.56, + 68.43 + ], + [ + 22.57, + 68.43 + ], + [ + 22.58, + 68.42 + ], + [ + 22.59, + 68.42 + ], + [ + 22.62, + 68.43 + ], + [ + 22.63, + 68.43 + ], + [ + 22.64, + 68.43 + ], + [ + 22.64, + 68.42 + ], + [ + 22.65, + 68.42 + ], + [ + 22.66, + 68.41 + ], + [ + 22.69, + 68.41 + ], + [ + 22.69, + 68.4 + ], + [ + 22.7, + 68.4 + ], + [ + 22.71, + 68.4 + ], + [ + 22.73, + 68.39 + ], + [ + 22.75, + 68.38 + ], + [ + 22.77, + 68.39 + ], + [ + 22.78, + 68.39 + ], + [ + 22.79, + 68.39 + ], + [ + 22.8, + 68.39 + ], + [ + 22.82, + 68.39 + ], + [ + 22.84, + 68.38 + ], + [ + 22.85, + 68.38 + ], + [ + 22.84, + 68.37 + ], + [ + 22.85, + 68.36 + ], + [ + 22.87, + 68.35 + ], + [ + 22.88, + 68.35 + ], + [ + 22.9, + 68.35 + ], + [ + 22.91, + 68.34 + ], + [ + 22.96, + 68.33 + ], + [ + 23, + 68.32 + ], + [ + 23.02, + 68.31 + ], + [ + 23.03, + 68.31 + ], + [ + 23.07, + 68.3 + ], + [ + 23.07, + 68.29 + ], + [ + 23.07, + 68.28 + ], + [ + 23.07, + 68.27 + ], + [ + 23.08, + 68.27 + ], + [ + 23.09, + 68.26 + ], + [ + 23.1, + 68.26 + ], + [ + 23.11, + 68.25 + ], + [ + 23.12, + 68.25 + ], + [ + 23.14, + 68.25 + ], + [ + 23.15, + 68.24 + ], + [ + 23.15, + 68.23 + ], + [ + 23.15, + 68.22 + ], + [ + 23.14, + 68.22 + ], + [ + 23.15, + 68.21 + ], + [ + 23.14, + 68.21 + ], + [ + 23.15, + 68.2 + ], + [ + 23.16, + 68.2 + ], + [ + 23.16, + 68.19 + ], + [ + 23.15, + 68.18 + ], + [ + 23.14, + 68.18 + ], + [ + 23.14, + 68.17 + ], + [ + 23.14, + 68.16 + ], + [ + 23.14, + 68.15 + ], + [ + 23.15, + 68.14 + ], + [ + 23.17, + 68.13 + ], + [ + 23.18, + 68.14 + ], + [ + 23.19, + 68.14 + ], + [ + 23.23, + 68.15 + ], + [ + 23.24, + 68.15 + ], + [ + 23.25, + 68.15 + ], + [ + 23.26, + 68.16 + ], + [ + 23.27, + 68.16 + ], + [ + 23.28, + 68.16 + ], + [ + 23.29, + 68.15 + ], + [ + 23.3, + 68.15 + ], + [ + 23.31, + 68.15 + ], + [ + 23.31, + 68.14 + ], + [ + 23.32, + 68.14 + ], + [ + 23.33, + 68.13 + ], + [ + 23.33, + 68.12 + ], + [ + 23.33, + 68.11 + ], + [ + 23.34, + 68.1 + ], + [ + 23.35, + 68.09 + ], + [ + 23.36, + 68.08 + ], + [ + 23.37, + 68.07 + ], + [ + 23.37, + 68.06 + ], + [ + 23.39, + 68.06 + ], + [ + 23.39, + 68.05 + ], + [ + 23.4, + 68.04 + ], + [ + 23.41, + 68.04 + ], + [ + 23.42, + 68.04 + ], + [ + 23.44, + 68.04 + ], + [ + 23.45, + 68.04 + ], + [ + 23.47, + 68.03 + ], + [ + 23.47, + 68.02 + ], + [ + 23.48, + 68.02 + ], + [ + 23.5, + 68.01 + ], + [ + 23.52, + 68.01 + ], + [ + 23.54, + 67.99 + ], + [ + 23.56, + 67.98 + ], + [ + 23.57, + 67.97 + ], + [ + 23.58, + 67.97 + ], + [ + 23.59, + 67.97 + ], + [ + 23.6, + 67.97 + ], + [ + 23.61, + 67.97 + ], + [ + 23.65, + 67.95 + ], + [ + 23.66, + 67.95 + ], + [ + 23.65, + 67.94 + ], + [ + 23.65, + 67.93 + ], + [ + 23.64, + 67.92 + ], + [ + 23.64, + 67.91 + ], + [ + 23.62, + 67.91 + ], + [ + 23.6, + 67.9 + ], + [ + 23.59, + 67.9 + ], + [ + 23.58, + 67.89 + ], + [ + 23.56, + 67.9 + ], + [ + 23.54, + 67.89 + ], + [ + 23.53, + 67.89 + ], + [ + 23.52, + 67.88 + ], + [ + 23.51, + 67.88 + ], + [ + 23.51, + 67.87 + ], + [ + 23.5, + 67.87 + ], + [ + 23.49, + 67.86 + ], + [ + 23.49, + 67.85 + ], + [ + 23.48, + 67.84 + ], + [ + 23.48, + 67.83 + ], + [ + 23.48, + 67.82 + ], + [ + 23.47, + 67.82 + ], + [ + 23.48, + 67.8 + ], + [ + 23.49, + 67.8 + ], + [ + 23.49, + 67.79 + ], + [ + 23.49, + 67.78 + ], + [ + 23.48, + 67.78 + ], + [ + 23.49, + 67.76 + ], + [ + 23.49, + 67.75 + ], + [ + 23.48, + 67.74 + ], + [ + 23.49, + 67.73 + ], + [ + 23.48, + 67.72 + ], + [ + 23.48, + 67.71 + ], + [ + 23.48, + 67.7 + ], + [ + 23.49, + 67.7 + ], + [ + 23.49, + 67.69 + ], + [ + 23.5, + 67.68 + ], + [ + 23.49, + 67.67 + ], + [ + 23.5, + 67.66 + ], + [ + 23.52, + 67.64 + ], + [ + 23.53, + 67.64 + ], + [ + 23.54, + 67.63 + ], + [ + 23.56, + 67.62 + ], + [ + 23.54, + 67.61 + ], + [ + 23.54, + 67.6 + ], + [ + 23.54, + 67.59 + ], + [ + 23.54, + 67.58 + ], + [ + 23.53, + 67.58 + ], + [ + 23.52, + 67.57 + ], + [ + 23.51, + 67.57 + ], + [ + 23.5, + 67.56 + ], + [ + 23.49, + 67.57 + ], + [ + 23.47, + 67.56 + ], + [ + 23.46, + 67.56 + ], + [ + 23.46, + 67.55 + ], + [ + 23.48, + 67.55 + ], + [ + 23.48, + 67.54 + ], + [ + 23.48, + 67.53 + ], + [ + 23.43, + 67.51 + ], + [ + 23.41, + 67.5 + ], + [ + 23.39, + 67.48 + ], + [ + 23.4, + 67.48 + ], + [ + 23.41, + 67.48 + ], + [ + 23.41, + 67.47 + ], + [ + 23.42, + 67.47 + ], + [ + 23.44, + 67.46 + ], + [ + 23.45, + 67.46 + ], + [ + 23.48, + 67.45 + ], + [ + 23.49, + 67.45 + ], + [ + 23.52, + 67.45 + ], + [ + 23.55, + 67.46 + ], + [ + 23.57, + 67.46 + ], + [ + 23.58, + 67.46 + ], + [ + 23.59, + 67.45 + ], + [ + 23.63, + 67.45 + ], + [ + 23.64, + 67.45 + ], + [ + 23.65, + 67.45 + ], + [ + 23.68, + 67.44 + ], + [ + 23.69, + 67.44 + ], + [ + 23.72, + 67.44 + ], + [ + 23.74, + 67.44 + ], + [ + 23.75, + 67.44 + ], + [ + 23.76, + 67.43 + ], + [ + 23.76, + 67.42 + ], + [ + 23.75, + 67.42 + ], + [ + 23.75, + 67.41 + ], + [ + 23.75, + 67.4 + ], + [ + 23.74, + 67.4 + ], + [ + 23.73, + 67.39 + ], + [ + 23.72, + 67.38 + ], + [ + 23.73, + 67.37 + ], + [ + 23.74, + 67.36 + ], + [ + 23.74, + 67.35 + ], + [ + 23.75, + 67.35 + ], + [ + 23.76, + 67.35 + ], + [ + 23.77, + 67.34 + ], + [ + 23.76, + 67.33 + ], + [ + 23.75, + 67.32 + ], + [ + 23.75, + 67.31 + ], + [ + 23.74, + 67.3 + ], + [ + 23.72, + 67.28 + ], + [ + 23.7, + 67.28 + ], + [ + 23.68, + 67.28 + ], + [ + 23.66, + 67.28 + ], + [ + 23.63, + 67.27 + ], + [ + 23.61, + 67.27 + ], + [ + 23.59, + 67.27 + ], + [ + 23.58, + 67.27 + ], + [ + 23.57, + 67.26 + ], + [ + 23.56, + 67.26 + ], + [ + 23.57, + 67.26 + ], + [ + 23.57, + 67.25 + ], + [ + 23.55, + 67.25 + ], + [ + 23.56, + 67.24 + ], + [ + 23.56, + 67.23 + ], + [ + 23.55, + 67.22 + ], + [ + 23.57, + 67.22 + ], + [ + 23.59, + 67.21 + ], + [ + 23.59, + 67.2 + ], + [ + 23.59, + 67.19 + ], + [ + 23.58, + 67.19 + ], + [ + 23.57, + 67.19 + ], + [ + 23.55, + 67.17 + ], + [ + 23.56, + 67.16 + ], + [ + 23.58, + 67.15 + ], + [ + 23.59, + 67.14 + ], + [ + 23.6, + 67.14 + ], + [ + 23.61, + 67.13 + ], + [ + 23.62, + 67.13 + ], + [ + 23.62, + 67.12 + ], + [ + 23.63, + 67.12 + ], + [ + 23.65, + 67.11 + ], + [ + 23.66, + 67.1 + ], + [ + 23.66, + 67.09 + ], + [ + 23.67, + 67.08 + ], + [ + 23.67, + 67.07 + ], + [ + 23.68, + 67.06 + ], + [ + 23.7, + 67.05 + ], + [ + 23.71, + 67.05 + ], + [ + 23.71, + 67.04 + ], + [ + 23.72, + 67.03 + ], + [ + 23.74, + 67.02 + ], + [ + 23.75, + 67.01 + ], + [ + 23.76, + 67.01 + ], + [ + 23.76, + 67 + ], + [ + 23.78, + 67 + ], + [ + 23.8, + 66.99 + ], + [ + 23.81, + 66.98 + ], + [ + 23.82, + 66.97 + ], + [ + 23.84, + 66.96 + ], + [ + 23.87, + 66.92 + ], + [ + 23.9, + 66.9 + ], + [ + 23.91, + 66.9 + ], + [ + 23.91, + 66.89 + ], + [ + 23.93, + 66.88 + ], + [ + 23.94, + 66.88 + ], + [ + 23.95, + 66.86 + ], + [ + 23.96, + 66.86 + ], + [ + 23.96, + 66.85 + ], + [ + 23.97, + 66.85 + ], + [ + 23.98, + 66.84 + ], + [ + 23.99, + 66.83 + ], + [ + 24, + 66.82 + ], + [ + 23.99, + 66.81 + ], + [ + 23.99, + 66.8 + ], + [ + 23.98, + 66.8 + ], + [ + 23.95, + 66.79 + ], + [ + 23.94, + 66.79 + ], + [ + 23.91, + 66.78 + ], + [ + 23.92, + 66.77 + ], + [ + 23.91, + 66.77 + ], + [ + 23.9, + 66.77 + ], + [ + 23.88, + 66.76 + ], + [ + 23.88, + 66.75 + ], + [ + 23.89, + 66.75 + ], + [ + 23.89, + 66.74 + ], + [ + 23.9, + 66.73 + ], + [ + 23.9, + 66.71 + ], + [ + 23.89, + 66.7 + ], + [ + 23.87, + 66.67 + ], + [ + 23.87, + 66.66 + ], + [ + 23.87, + 66.63 + ], + [ + 23.88, + 66.62 + ], + [ + 23.87, + 66.57 + ], + [ + 23.86, + 66.57 + ], + [ + 23.84, + 66.55 + ], + [ + 23.83, + 66.55 + ], + [ + 23.8, + 66.54 + ], + [ + 23.79, + 66.54 + ], + [ + 23.8, + 66.52 + ], + [ + 23.79, + 66.52 + ], + [ + 23.77, + 66.51 + ], + [ + 23.73, + 66.5 + ], + [ + 23.72, + 66.5 + ], + [ + 23.71, + 66.49 + ], + [ + 23.72, + 66.48 + ], + [ + 23.7, + 66.48 + ], + [ + 23.67, + 66.46 + ], + [ + 23.66, + 66.46 + ], + [ + 23.64, + 66.46 + ], + [ + 23.65, + 66.42 + ], + [ + 23.65, + 66.41 + ], + [ + 23.66, + 66.36 + ], + [ + 23.65, + 66.31 + ], + [ + 23.65, + 66.3 + ], + [ + 23.67, + 66.26 + ], + [ + 23.68, + 66.26 + ], + [ + 23.7, + 66.23 + ], + [ + 23.72, + 66.22 + ], + [ + 23.73, + 66.21 + ], + [ + 23.73, + 66.19 + ], + [ + 23.74, + 66.19 + ], + [ + 23.75, + 66.19 + ], + [ + 23.77, + 66.19 + ], + [ + 23.79, + 66.18 + ], + [ + 23.82, + 66.17 + ], + [ + 23.83, + 66.17 + ], + [ + 23.85, + 66.17 + ], + [ + 23.86, + 66.17 + ], + [ + 23.88, + 66.17 + ], + [ + 23.91, + 66.16 + ], + [ + 23.92, + 66.16 + ], + [ + 23.93, + 66.15 + ], + [ + 23.92, + 66.14 + ], + [ + 23.92, + 66.13 + ], + [ + 23.94, + 66.11 + ], + [ + 23.95, + 66.11 + ], + [ + 23.95, + 66.1 + ], + [ + 23.94, + 66.1 + ], + [ + 23.94, + 66.09 + ], + [ + 23.95, + 66.07 + ], + [ + 23.99, + 66.04 + ], + [ + 24, + 66.03 + ], + [ + 24.02, + 66.02 + ], + [ + 24.04, + 65.96 + ], + [ + 24.05, + 65.96 + ], + [ + 24.06, + 65.95 + ], + [ + 24.07, + 65.95 + ], + [ + 24.08, + 65.94 + ], + [ + 24.09, + 65.93 + ], + [ + 24.11, + 65.93 + ], + [ + 24.12, + 65.93 + ], + [ + 24.11, + 65.92 + ], + [ + 24.11, + 65.91 + ], + [ + 24.14, + 65.86 + ], + [ + 24.13, + 65.86 + ], + [ + 24.13, + 65.85 + ], + [ + 24.14, + 65.84 + ], + [ + 23.38, + 65.75 + ], + [ + 23.12, + 65.87 + ], + [ + 23.1, + 65.7 + ], + [ + 22.67, + 65.9 + ], + [ + 22.68, + 65.75 + ], + [ + 22.3, + 65.85 + ], + [ + 22.4, + 65.54 + ], + [ + 22.06, + 65.62 + ], + [ + 21.83, + 65.35 + ], + [ + 21.45, + 65.39 + ], + [ + 21.75, + 65.19 + ], + [ + 21.52, + 65.23 + ], + [ + 21.54, + 65.06 + ], + [ + 21, + 64.84 + ], + [ + 21.61, + 64.43 + ], + [ + 20.57, + 63.73 + ], + [ + 20.49, + 63.83 + ], + [ + 20.39, + 63.67 + ], + [ + 20.29, + 63.81 + ], + [ + 19.74, + 63.45 + ], + [ + 19.46, + 63.57 + ], + [ + 19.34, + 63.45 + ], + [ + 19.03, + 63.19 + ], + [ + 18.71, + 63.29 + ], + [ + 18.88, + 63.2 + ], + [ + 18.2, + 63.01 + ], + [ + 18.54, + 62.99 + ], + [ + 18.45, + 62.87 + ], + [ + 17.93, + 62.84 + ], + [ + 17.85, + 62.49 + ], + [ + 17.32, + 62.47 + ], + [ + 17.66, + 62.23 + ], + [ + 17.32, + 61.93 + ], + [ + 17.49, + 61.62 + ], + [ + 17.11, + 61.73 + ], + [ + 17.04, + 61.58 + ], + [ + 17.35, + 60.75 + ], + [ + 17.16, + 60.69 + ], + [ + 17.73, + 60.5 + ], + [ + 17.99, + 60.6 + ], + [ + 18.61, + 60.25 + ], + [ + 18.31, + 60.32 + ], + [ + 18.59, + 60.05 + ], + [ + 18.74, + 60.12 + ], + [ + 18.81, + 59.97 + ], + [ + 18.81, + 60.12 + ], + [ + 19.08, + 59.88 + ], + [ + 18.87, + 59.94 + ], + [ + 18.71, + 59.75 + ], + [ + 19.08, + 59.74 + ], + [ + 18.33, + 59.38 + ], + [ + 18.08, + 59.42 + ], + [ + 18.08, + 59.3 + ], + [ + 18.35, + 59.36 + ], + [ + 18.46, + 59.31 + ], + [ + 18.42, + 59.42 + ], + [ + 18.67, + 59.31 + ], + [ + 18.36, + 59.29 + ], + [ + 18.3, + 59.33 + ], + [ + 18.46, + 59.16 + ], + [ + 18, + 59.04 + ], + [ + 17.89, + 58.85 + ], + [ + 17.63, + 59.19 + ], + [ + 17.51, + 58.78 + ], + [ + 17.09, + 58.77 + ], + [ + 16.92, + 58.61 + ], + [ + 16.18, + 58.64 + ], + [ + 16.95, + 58.48 + ], + [ + 16.41, + 58.48 + ], + [ + 16.86, + 58.2 + ], + [ + 16.77, + 58.11 + ], + [ + 16.6, + 58.2 + ], + [ + 16.79, + 57.87 + ], + [ + 16.47, + 57.91 + ], + [ + 16.72, + 57.73 + ], + [ + 16.41, + 57.9 + ], + [ + 16.73, + 57.7 + ], + [ + 16.52, + 57.73 + ], + [ + 16.71, + 57.49 + ], + [ + 16.45, + 57.27 + ], + [ + 16.48, + 56.77 + ], + [ + 15.85, + 56.07 + ], + [ + 15.59, + 56.21 + ], + [ + 15.01, + 56.2 + ], + [ + 14.34, + 55.96 + ], + [ + 14.18, + 55.38 + ], + [ + 12.93, + 55.41 + ], + [ + 13.07, + 55.68 + ], + [ + 12.45, + 56.3 + ], + [ + 12.79, + 56.22 + ], + [ + 12.62, + 56.42 + ], + [ + 12.94, + 56.59 + ], + [ + 12.35, + 56.93 + ], + [ + 12.11, + 57.43 + ], + [ + 11.91, + 57.39 + ], + [ + 11.91, + 57.69 + ], + [ + 11.7, + 57.71 + ], + [ + 11.91, + 58.35 + ], + [ + 11.5, + 58.25 + ], + [ + 11.57, + 58.48 + ], + [ + 11.46, + 58.27 + ], + [ + 11.46, + 58.46 + ], + [ + 11.24, + 58.36 + ], + [ + 11.11, + 59 + ], + [ + 11.34, + 59.11 + ], + [ + 11.46, + 58.99 + ] + ], + [ + [ + 15.57, + 58.54 + ], + [ + 15.6, + 58.44 + ], + [ + 15.97, + 58.52 + ], + [ + 15.57, + 58.54 + ] + ], + [ + [ + 13.58, + 58.68 + ], + [ + 13.91, + 58.77 + ], + [ + 13.64, + 58.84 + ], + [ + 13.95, + 58.81 + ], + [ + 13.97, + 59.01 + ], + [ + 14.02, + 59.34 + ], + [ + 13.58, + 59.4 + ], + [ + 13.51, + 59.25 + ], + [ + 13.32, + 59.37 + ], + [ + 13.23, + 59.26 + ], + [ + 13.18, + 59.36 + ], + [ + 13.28, + 58.9 + ], + [ + 12.83, + 59.1 + ], + [ + 12.46, + 58.79 + ], + [ + 12.67, + 58.65 + ], + [ + 12.35, + 58.37 + ], + [ + 13.14, + 58.71 + ], + [ + 13.25, + 58.49 + ], + [ + 13.58, + 58.68 + ] + ], + [ + [ + 14.85, + 58.81 + ], + [ + 14.28, + 58.3 + ], + [ + 14.17, + 57.78 + ], + [ + 15.01, + 58.52 + ], + [ + 14.85, + 58.81 + ] + ], + [ + [ + 12.79, + 59.58 + ], + [ + 12.44, + 59.67 + ], + [ + 12.7, + 59.47 + ], + [ + 12.79, + 59.58 + ] + ], + [ + [ + 17.36, + 59.6 + ], + [ + 17.43, + 59.47 + ], + [ + 17.09, + 59.45 + ], + [ + 17.35, + 59.4 + ], + [ + 17.28, + 59.24 + ], + [ + 17.59, + 59.24 + ], + [ + 17.45, + 59.41 + ], + [ + 17.71, + 59.45 + ], + [ + 17.36, + 59.6 + ] + ], + [ + [ + 17.05, + 59.51 + ], + [ + 17.26, + 59.49 + ], + [ + 16.57, + 59.61 + ], + [ + 16.33, + 59.45 + ], + [ + 17.05, + 59.51 + ] + ], + [ + [ + 15.46, + 59.31 + ], + [ + 15.27, + 59.28 + ], + [ + 15.82, + 59.13 + ], + [ + 16.22, + 59.24 + ], + [ + 15.46, + 59.31 + ] + ], + [ + [ + 14.58, + 61.02 + ], + [ + 14.99, + 60.74 + ], + [ + 15.12, + 60.89 + ], + [ + 14.58, + 61.02 + ] + ], + [ + [ + 16.79, + 61.27 + ], + [ + 16.58, + 61.21 + ], + [ + 16.83, + 61.18 + ], + [ + 16.79, + 61.27 + ] + ], + [ + [ + 14.09, + 63.31 + ], + [ + 14.5, + 62.79 + ], + [ + 14.43, + 63.13 + ], + [ + 14.81, + 63.11 + ], + [ + 14.09, + 63.31 + ] + ], + [ + [ + 17.74, + 63 + ], + [ + 17.91, + 62.86 + ], + [ + 17.78, + 63.09 + ], + [ + 17.74, + 63 + ] + ], + [ + [ + 12.91, + 63.69 + ], + [ + 13.1, + 63.51 + ], + [ + 13.22, + 63.61 + ], + [ + 12.91, + 63.69 + ] + ], + [ + [ + 16.89, + 64.38 + ], + [ + 17.12, + 64.32 + ], + [ + 16.9, + 64.38 + ], + [ + 16.89, + 64.38 + ] + ], + [ + [ + 17.71, + 66.08 + ], + [ + 17.8, + 65.83 + ], + [ + 17.99, + 65.95 + ], + [ + 17.71, + 66.08 + ] + ], + [ + [ + 18.19, + 65.78 + ], + [ + 18, + 65.82 + ], + [ + 18.06, + 65.68 + ], + [ + 18.5, + 65.65 + ], + [ + 18.19, + 65.78 + ] + ], + [ + [ + 18.02, + 66.06 + ], + [ + 18.23, + 66.04 + ], + [ + 17.75, + 66.12 + ], + [ + 18.02, + 66.06 + ] + ], + [ + [ + 18.42, + 67.08 + ], + [ + 18.13, + 67.07 + ], + [ + 18.58, + 66.97 + ], + [ + 18.42, + 67.08 + ] + ], + [ + [ + 16.48, + 67.42 + ], + [ + 16.88, + 67.51 + ], + [ + 16.32, + 67.51 + ], + [ + 16.48, + 67.42 + ] + ] + ], + [ + [ + [ + 21.97, + 68.54 + ], + [ + 21.98, + 68.54 + ], + [ + 22, + 68.53 + ], + [ + 21.97, + 68.54 + ] + ] + ], + [ + [ + [ + 23.65, + 66.46 + ], + [ + 23.65, + 66.45 + ], + [ + 23.64, + 66.46 + ], + [ + 23.65, + 66.46 + ] + ] + ], + [ + [ + [ + 16.45, + 56.63 + ], + [ + 17.12, + 57.36 + ], + [ + 16.4, + 56.19 + ], + [ + 16.45, + 56.63 + ] + ] + ], + [ + [ + [ + 11.65, + 58.25 + ], + [ + 11.83, + 58.12 + ], + [ + 11.48, + 58.07 + ], + [ + 11.65, + 58.25 + ] + ] + ], + [ + [ + [ + 18.78, + 57.7 + ], + [ + 18.92, + 57.4 + ], + [ + 18.13, + 56.91 + ], + [ + 18.3, + 57.1 + ], + [ + 18.11, + 57.53 + ], + [ + 18.7, + 57.92 + ], + [ + 18.79, + 57.83 + ], + [ + 19.01, + 57.92 + ], + [ + 19.1, + 57.82 + ], + [ + 18.78, + 57.7 + ] + ] + ] + ] + }, + "properties": { + "A3": "SWE" + } + }, + { + "type": "Feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + 20, + -23.86 + ], + [ + 20, + -23.31 + ], + [ + 20, + -22 + ], + [ + 21, + -22 + ], + [ + 21, + -21.01 + ], + [ + 21, + -20.99 + ], + [ + 21, + -18.32 + ], + [ + 23.1, + -18 + ], + [ + 23.31, + -18 + ], + [ + 23.59, + -18.5 + ], + [ + 23.88, + -18.28 + ], + [ + 24.2, + -18.02 + ], + [ + 24.42, + -17.95 + ], + [ + 24.58, + -18.07 + ], + [ + 24.98, + -17.83 + ], + [ + 25, + -17.83 + ], + [ + 25, + -17.84 + ], + [ + 25.04, + -17.81 + ], + [ + 25.05, + -17.81 + ], + [ + 25.07, + -17.84 + ], + [ + 25.08, + -17.84 + ], + [ + 25.1, + -17.83 + ], + [ + 25.11, + -17.83 + ], + [ + 25.14, + -17.81 + ], + [ + 25.15, + -17.79 + ], + [ + 25.16, + -17.78 + ], + [ + 25.19, + -17.79 + ], + [ + 25.2, + -17.79 + ], + [ + 25.22, + -17.79 + ], + [ + 25.24, + -17.79 + ], + [ + 25.25, + -17.79 + ], + [ + 25.26, + -17.79 + ], + [ + 25.32, + -18.08 + ], + [ + 25.98, + -18.97 + ], + [ + 26.17, + -19.55 + ], + [ + 26.73, + -19.94 + ], + [ + 27.21, + -20.08 + ], + [ + 27.29, + -20.5 + ], + [ + 27.72, + -20.51 + ], + [ + 27.69, + -21.09 + ], + [ + 28.02, + -21.57 + ], + [ + 28.87, + -21.76 + ], + [ + 28.89, + -21.76 + ], + [ + 28.91, + -21.77 + ], + [ + 28.92, + -21.77 + ], + [ + 28.95, + -21.77 + ], + [ + 28.97, + -21.77 + ], + [ + 29, + -21.77 + ], + [ + 29, + -21.78 + ], + [ + 29.02, + -21.79 + ], + [ + 29.03, + -21.79 + ], + [ + 29.04, + -21.8 + ], + [ + 29.06, + -21.8 + ], + [ + 29.04, + -22.01 + ], + [ + 29.23, + -22.07 + ], + [ + 29.25, + -22.06 + ], + [ + 29.27, + -22.08 + ], + [ + 29.28, + -22.09 + ], + [ + 29.29, + -22.12 + ], + [ + 29.3, + -22.14 + ], + [ + 29.31, + -22.14 + ], + [ + 29.33, + -22.16 + ], + [ + 29.34, + -22.17 + ], + [ + 29.36, + -22.19 + ], + [ + 29.38, + -22.2 + ], + [ + 29.33, + -22.2 + ], + [ + 29.32, + -22.19 + ], + [ + 29.31, + -22.19 + ], + [ + 29.27, + -22.19 + ], + [ + 29.26, + -22.19 + ], + [ + 29.25, + -22.19 + ], + [ + 29.24, + -22.18 + ], + [ + 29.2, + -22.18 + ], + [ + 29.18, + -22.19 + ], + [ + 29.16, + -22.21 + ], + [ + 28.66, + -22.55 + ], + [ + 28.65, + -22.55 + ], + [ + 28.64, + -22.56 + ], + [ + 28.63, + -22.56 + ], + [ + 28.59, + -22.56 + ], + [ + 28.58, + -22.56 + ], + [ + 28.55, + -22.57 + ], + [ + 28.54, + -22.58 + ], + [ + 28.51, + -22.59 + ], + [ + 28.48, + -22.57 + ], + [ + 28.47, + -22.57 + ], + [ + 28.44, + -22.57 + ], + [ + 28.42, + -22.57 + ], + [ + 28.41, + -22.57 + ], + [ + 28.37, + -22.57 + ], + [ + 28.36, + -22.57 + ], + [ + 28.34, + -22.57 + ], + [ + 27.74, + -23.23 + ], + [ + 27, + -23.64 + ], + [ + 26.85, + -24.27 + ], + [ + 26.41, + -24.65 + ], + [ + 25.85, + -24.75 + ], + [ + 25.58, + -25.64 + ], + [ + 25.22, + -25.76 + ], + [ + 24.37, + -25.76 + ], + [ + 23.9, + -25.63 + ], + [ + 23.47, + -25.28 + ], + [ + 23.05, + -25.29 + ], + [ + 22.6, + -26.15 + ], + [ + 22.59, + -26.14 + ], + [ + 22.58, + -26.14 + ], + [ + 22.58, + -26.15 + ], + [ + 22.58, + -26.16 + ], + [ + 22.58, + -26.17 + ], + [ + 22.58, + -26.18 + ], + [ + 22.57, + -26.2 + ], + [ + 22.23, + -26.38 + ], + [ + 22.22, + -26.38 + ], + [ + 22.2, + -26.39 + ], + [ + 21.7, + -26.86 + ], + [ + 21.33, + -26.83 + ], + [ + 21.16, + -26.87 + ], + [ + 21.15, + -26.87 + ], + [ + 21.14, + -26.87 + ], + [ + 21.13, + -26.87 + ], + [ + 20.89, + -26.8 + ], + [ + 20.69, + -26.91 + ], + [ + 20.62, + -26.79 + ], + [ + 20.62, + -26.44 + ], + [ + 20.86, + -26.13 + ], + [ + 20.41, + -25.09 + ], + [ + 20.39, + -25.07 + ], + [ + 20.33, + -25.01 + ], + [ + 20.13, + -24.88 + ], + [ + 20.12, + -24.88 + ], + [ + 20, + -24.76 + ], + [ + 20, + -24.25 + ], + [ + 20, + -24.23 + ], + [ + 20, + -23.86 + ] + ], + [ + [ + 25.99, + -20.51 + ], + [ + 25.84, + -21.02 + ], + [ + 26.08, + -21.16 + ], + [ + 26.28, + -20.9 + ], + [ + 25.97, + -20.81 + ], + [ + 26.12, + -20.63 + ], + [ + 25.99, + -20.51 + ] + ], + [ + [ + 25.35, + -20.72 + ], + [ + 25.31, + -20.87 + ], + [ + 25.55, + -21 + ], + [ + 25.56, + -20.76 + ], + [ + 25.35, + -20.72 + ] + ], + [ + [ + 25.58, + -20.5 + ], + [ + 25.52, + -20.59 + ], + [ + 25.65, + -20.63 + ], + [ + 25.58, + -20.5 + ] + ] + ] + }, + "properties": { + "A3": "BWA" + } + }, + { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + 178.53, + -18.15 + ], + [ + 177.89, + -18.28 + ], + [ + 177.33, + -18.12 + ], + [ + 177.25, + -17.89 + ], + [ + 177.52, + -17.51 + ], + [ + 178.18, + -17.31 + ], + [ + 178.58, + -17.64 + ], + [ + 178.7, + -18 + ], + [ + 178.53, + -18.15 + ] + ] + ], + [ + [ + [ + 178.15, + -19.05 + ], + [ + 178.31, + -18.93 + ], + [ + 178.49, + -19 + ], + [ + 177.95, + -19.13 + ], + [ + 178.15, + -19.05 + ] + ] + ] + ] + }, + "properties": { + "A3": "FJI" + } + }, + { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + 30.82, + 69.79 + ], + [ + 30.83, + 69.78 + ], + [ + 30.84, + 69.78 + ], + [ + 30.94, + 69.58 + ], + [ + 30.95, + 69.58 + ], + [ + 30.94, + 69.56 + ], + [ + 30.9, + 69.55 + ], + [ + 30.87, + 69.54 + ], + [ + 30.76, + 69.53 + ], + [ + 30.5, + 69.55 + ], + [ + 30.37, + 69.61 + ], + [ + 30.36, + 69.61 + ], + [ + 30.24, + 69.65 + ], + [ + 30.23, + 69.65 + ], + [ + 30.21, + 69.66 + ], + [ + 30.18, + 69.66 + ], + [ + 30.14, + 69.67 + ], + [ + 30.17, + 69.88 + ], + [ + 30.31, + 69.67 + ], + [ + 30.44, + 69.82 + ], + [ + 30.82, + 69.79 + ] + ] + ], + [ + [ + [ + 30.13, + 69.67 + ], + [ + 30.14, + 69.64 + ], + [ + 30.15, + 69.63 + ], + [ + 30.15, + 69.61 + ], + [ + 30.16, + 69.6 + ], + [ + 30.15, + 69.53 + ], + [ + 30.13, + 69.52 + ], + [ + 30.12, + 69.5 + ], + [ + 30.11, + 69.48 + ], + [ + 30.1, + 69.46 + ], + [ + 30.07, + 69.45 + ], + [ + 29.94, + 69.41 + ], + [ + 29.93, + 69.42 + ], + [ + 29.92, + 69.42 + ], + [ + 29.88, + 69.42 + ], + [ + 29.86, + 69.42 + ], + [ + 29.79, + 69.4 + ], + [ + 29.76, + 69.39 + ], + [ + 29.75, + 69.39 + ], + [ + 29.73, + 69.39 + ], + [ + 29.72, + 69.39 + ], + [ + 29.71, + 69.38 + ], + [ + 29.68, + 69.36 + ], + [ + 29.53, + 69.33 + ], + [ + 29.52, + 69.33 + ], + [ + 29.49, + 69.32 + ], + [ + 29.48, + 69.32 + ], + [ + 29.38, + 69.32 + ], + [ + 29.37, + 69.32 + ], + [ + 29.36, + 69.31 + ], + [ + 29.35, + 69.31 + ], + [ + 29.33, + 69.31 + ], + [ + 29.3, + 69.21 + ], + [ + 29.24, + 69.14 + ], + [ + 29.24, + 69.13 + ], + [ + 29.23, + 69.12 + ], + [ + 29.24, + 69.12 + ], + [ + 29.18, + 69.08 + ], + [ + 29.17, + 69.07 + ], + [ + 29.16, + 69.07 + ], + [ + 29.15, + 69.06 + ], + [ + 29.14, + 69.06 + ], + [ + 29.13, + 69.06 + ], + [ + 29.11, + 69.05 + ], + [ + 29.1, + 69.04 + ], + [ + 29.09, + 69.03 + ], + [ + 29.07, + 69.02 + ], + [ + 29.03, + 69.02 + ], + [ + 29.02, + 69.02 + ], + [ + 28.93, + 69.05 + ], + [ + 28.84, + 69.08 + ], + [ + 28.84, + 69.09 + ], + [ + 28.82, + 69.14 + ], + [ + 28.82, + 69.15 + ], + [ + 28.83, + 69.19 + ], + [ + 28.83, + 69.2 + ], + [ + 28.83, + 69.21 + ], + [ + 28.96, + 69.28 + ], + [ + 28.97, + 69.29 + ], + [ + 29, + 69.3 + ], + [ + 29.01, + 69.3 + ], + [ + 29.18, + 69.38 + ], + [ + 29.19, + 69.38 + ], + [ + 29.27, + 69.54 + ], + [ + 29.26, + 69.55 + ], + [ + 29.03, + 69.71 + ], + [ + 28.9, + 69.73 + ], + [ + 28.87, + 69.74 + ], + [ + 28.58, + 69.79 + ], + [ + 28.56, + 69.79 + ], + [ + 28.39, + 69.82 + ], + [ + 28.36, + 69.84 + ], + [ + 28.28, + 69.89 + ], + [ + 28.25, + 69.9 + ], + [ + 28.01, + 70 + ], + [ + 27.99, + 70.01 + ], + [ + 27.61, + 70.07 + ], + [ + 27.03, + 69.91 + ], + [ + 27.02, + 69.92 + ], + [ + 27.01, + 69.92 + ], + [ + 27, + 69.93 + ], + [ + 26.99, + 69.93 + ], + [ + 26.95, + 69.94 + ], + [ + 26.94, + 69.94 + ], + [ + 26.92, + 69.94 + ], + [ + 26.89, + 69.93 + ], + [ + 26.87, + 69.94 + ], + [ + 26.86, + 69.94 + ], + [ + 26.86, + 69.95 + ], + [ + 26.86, + 69.96 + ], + [ + 26.84, + 69.96 + ], + [ + 26.82, + 69.96 + ], + [ + 26.8, + 69.96 + ], + [ + 26.77, + 69.96 + ], + [ + 26.76, + 69.95 + ], + [ + 26.74, + 69.95 + ], + [ + 26.72, + 69.95 + ], + [ + 26.71, + 69.95 + ], + [ + 26.7, + 69.95 + ], + [ + 26.69, + 69.96 + ], + [ + 26.68, + 69.96 + ], + [ + 26.67, + 69.96 + ], + [ + 26.64, + 69.96 + ], + [ + 26.63, + 69.96 + ], + [ + 26.62, + 69.96 + ], + [ + 26.61, + 69.96 + ], + [ + 26.59, + 69.96 + ], + [ + 26.59, + 69.95 + ], + [ + 26.57, + 69.95 + ], + [ + 26.56, + 69.95 + ], + [ + 26.55, + 69.95 + ], + [ + 26.54, + 69.95 + ], + [ + 26.53, + 69.95 + ], + [ + 26.51, + 69.95 + ], + [ + 26.49, + 69.95 + ], + [ + 26.48, + 69.94 + ], + [ + 26.46, + 69.93 + ], + [ + 26.46, + 69.92 + ], + [ + 26.45, + 69.92 + ], + [ + 26.44, + 69.91 + ], + [ + 26.41, + 69.9 + ], + [ + 26.4, + 69.87 + ], + [ + 26.39, + 69.86 + ], + [ + 26.38, + 69.85 + ], + [ + 26.37, + 69.85 + ], + [ + 26.35, + 69.85 + ], + [ + 26.34, + 69.84 + ], + [ + 26.33, + 69.84 + ], + [ + 26.32, + 69.83 + ], + [ + 26.3, + 69.83 + ], + [ + 26.28, + 69.83 + ], + [ + 26.27, + 69.82 + ], + [ + 26.26, + 69.82 + ], + [ + 26.25, + 69.82 + ], + [ + 26.24, + 69.81 + ], + [ + 26.25, + 69.8 + ], + [ + 26.24, + 69.79 + ], + [ + 26.23, + 69.79 + ], + [ + 26.22, + 69.78 + ], + [ + 26.19, + 69.78 + ], + [ + 26.19, + 69.77 + ], + [ + 26.18, + 69.77 + ], + [ + 26.18, + 69.76 + ], + [ + 26.16, + 69.76 + ], + [ + 26.15, + 69.75 + ], + [ + 26.13, + 69.74 + ], + [ + 26.05, + 69.72 + ], + [ + 26.04, + 69.72 + ], + [ + 26.02, + 69.72 + ], + [ + 26.01, + 69.72 + ], + [ + 25.96, + 69.7 + ], + [ + 25.95, + 69.69 + ], + [ + 25.94, + 69.68 + ], + [ + 25.91, + 69.68 + ], + [ + 25.9, + 69.67 + ], + [ + 25.89, + 69.66 + ], + [ + 25.9, + 69.66 + ], + [ + 25.92, + 69.66 + ], + [ + 25.93, + 69.65 + ], + [ + 25.95, + 69.65 + ], + [ + 25.96, + 69.63 + ], + [ + 25.96, + 69.62 + ], + [ + 25.97, + 69.61 + ], + [ + 25.97, + 69.6 + ], + [ + 25.96, + 69.6 + ], + [ + 25.95, + 69.59 + ], + [ + 25.95, + 69.58 + ], + [ + 25.94, + 69.58 + ], + [ + 25.93, + 69.57 + ], + [ + 25.92, + 69.57 + ], + [ + 25.9, + 69.56 + ], + [ + 25.88, + 69.56 + ], + [ + 25.86, + 69.55 + ], + [ + 25.85, + 69.54 + ], + [ + 25.86, + 69.54 + ], + [ + 25.87, + 69.53 + ], + [ + 25.88, + 69.53 + ], + [ + 25.88, + 69.52 + ], + [ + 25.87, + 69.52 + ], + [ + 25.85, + 69.5 + ], + [ + 25.85, + 69.49 + ], + [ + 25.86, + 69.48 + ], + [ + 25.86, + 69.47 + ], + [ + 25.85, + 69.47 + ], + [ + 25.84, + 69.47 + ], + [ + 25.83, + 69.47 + ], + [ + 25.83, + 69.46 + ], + [ + 25.82, + 69.45 + ], + [ + 25.81, + 69.44 + ], + [ + 25.81, + 69.43 + ], + [ + 25.82, + 69.41 + ], + [ + 25.81, + 69.41 + ], + [ + 25.82, + 69.41 + ], + [ + 25.83, + 69.41 + ], + [ + 25.83, + 69.4 + ], + [ + 25.84, + 69.4 + ], + [ + 25.85, + 69.4 + ], + [ + 25.83, + 69.39 + ], + [ + 25.81, + 69.37 + ], + [ + 25.82, + 69.37 + ], + [ + 25.82, + 69.36 + ], + [ + 25.8, + 69.36 + ], + [ + 25.78, + 69.35 + ], + [ + 25.74, + 69.31 + ], + [ + 25.75, + 69.3 + ], + [ + 25.75, + 69.29 + ], + [ + 25.73, + 69.26 + ], + [ + 25.71, + 69.24 + ], + [ + 25.71, + 69.21 + ], + [ + 25.69, + 69.2 + ], + [ + 25.7, + 69.2 + ], + [ + 25.7, + 69.19 + ], + [ + 25.71, + 69.19 + ], + [ + 25.71, + 69.18 + ], + [ + 25.72, + 69.18 + ], + [ + 25.72, + 69.17 + ], + [ + 25.72, + 69.16 + ], + [ + 25.73, + 69.15 + ], + [ + 25.74, + 69.15 + ], + [ + 25.74, + 69.14 + ], + [ + 25.74, + 69.13 + ], + [ + 25.73, + 69.13 + ], + [ + 25.73, + 69.12 + ], + [ + 25.72, + 69.12 + ], + [ + 25.72, + 69.11 + ], + [ + 25.73, + 69.11 + ], + [ + 25.73, + 69.1 + ], + [ + 25.73, + 69.07 + ], + [ + 25.74, + 69.07 + ], + [ + 25.75, + 69.05 + ], + [ + 25.75, + 69.04 + ], + [ + 25.75, + 69.03 + ], + [ + 25.78, + 69.02 + ], + [ + 25.77, + 69.01 + ], + [ + 25.76, + 69 + ], + [ + 25.75, + 69 + ], + [ + 25.74, + 69 + ], + [ + 25.72, + 68.99 + ], + [ + 25.71, + 68.98 + ], + [ + 25.71, + 68.97 + ], + [ + 25.69, + 68.94 + ], + [ + 25.67, + 68.93 + ], + [ + 25.67, + 68.92 + ], + [ + 25.66, + 68.91 + ], + [ + 25.51, + 68.89 + ], + [ + 25.44, + 68.9 + ], + [ + 25.4, + 68.89 + ], + [ + 25.32, + 68.86 + ], + [ + 25.31, + 68.86 + ], + [ + 25.29, + 68.86 + ], + [ + 25.29, + 68.85 + ], + [ + 25.23, + 68.82 + ], + [ + 25.22, + 68.82 + ], + [ + 25.18, + 68.81 + ], + [ + 25.14, + 68.78 + ], + [ + 25.13, + 68.72 + ], + [ + 25.11, + 68.7 + ], + [ + 25.11, + 68.69 + ], + [ + 25.11, + 68.67 + ], + [ + 25.11, + 68.66 + ], + [ + 25.12, + 68.66 + ], + [ + 25.11, + 68.66 + ], + [ + 25.11, + 68.65 + ], + [ + 25.12, + 68.64 + ], + [ + 24.88, + 68.56 + ], + [ + 24.86, + 68.56 + ], + [ + 24.8, + 68.62 + ], + [ + 24.79, + 68.63 + ], + [ + 24.65, + 68.67 + ], + [ + 24.48, + 68.7 + ], + [ + 24.04, + 68.8 + ], + [ + 24.03, + 68.8 + ], + [ + 24.01, + 68.82 + ], + [ + 23.99, + 68.82 + ], + [ + 23.42, + 68.69 + ], + [ + 23.38, + 68.68 + ], + [ + 23.33, + 68.67 + ], + [ + 22.94, + 68.69 + ], + [ + 22.93, + 68.69 + ], + [ + 22.46, + 68.73 + ], + [ + 22.45, + 68.73 + ], + [ + 22.37, + 68.74 + ], + [ + 22.31, + 68.85 + ], + [ + 22.3, + 68.85 + ], + [ + 22.28, + 68.86 + ], + [ + 22.28, + 68.87 + ], + [ + 22.23, + 68.9 + ], + [ + 22.2, + 68.91 + ], + [ + 22.02, + 69.05 + ], + [ + 22.01, + 69.05 + ], + [ + 21.97, + 69.08 + ], + [ + 21.66, + 69.26 + ], + [ + 21.65, + 69.26 + ], + [ + 21.53, + 69.29 + ], + [ + 21.51, + 69.29 + ], + [ + 21.49, + 69.29 + ], + [ + 21.05, + 69.24 + ], + [ + 21.02, + 69.16 + ], + [ + 21.07, + 69.06 + ], + [ + 21.07, + 69.05 + ], + [ + 20.66, + 69.1 + ], + [ + 20.65, + 69.1 + ], + [ + 20.55, + 69.06 + ], + [ + 20.06, + 69.05 + ], + [ + 20.33, + 68.81 + ], + [ + 19.94, + 68.56 + ], + [ + 20.23, + 68.49 + ], + [ + 19.92, + 68.36 + ], + [ + 19.65, + 68.4 + ], + [ + 19.51, + 68.43 + ], + [ + 19.47, + 68.43 + ], + [ + 19.42, + 68.44 + ], + [ + 19.28, + 68.47 + ], + [ + 19.26, + 68.47 + ], + [ + 19.12, + 68.49 + ], + [ + 19.11, + 68.5 + ], + [ + 19.06, + 68.5 + ], + [ + 19.02, + 68.51 + ], + [ + 18.93, + 68.52 + ], + [ + 18.74, + 68.51 + ], + [ + 18.63, + 68.51 + ], + [ + 18.62, + 68.51 + ], + [ + 18.53, + 68.54 + ], + [ + 18.45, + 68.57 + ], + [ + 18.37, + 68.58 + ], + [ + 18.33, + 68.57 + ], + [ + 18.27, + 68.56 + ], + [ + 18.14, + 68.54 + ], + [ + 18.13, + 68.54 + ], + [ + 18.12, + 68.48 + ], + [ + 18.11, + 68.46 + ], + [ + 18.1, + 68.41 + ], + [ + 18.1, + 68.4 + ], + [ + 18.11, + 68.38 + ], + [ + 18.11, + 68.37 + ], + [ + 18.11, + 68.36 + ], + [ + 18.11, + 68.35 + ], + [ + 18.12, + 68.34 + ], + [ + 18.12, + 68.33 + ], + [ + 18.14, + 68.25 + ], + [ + 18.12, + 68.17 + ], + [ + 18.07, + 68.13 + ], + [ + 18.01, + 68.07 + ], + [ + 17.93, + 68.02 + ], + [ + 17.87, + 67.98 + ], + [ + 17.86, + 67.98 + ], + [ + 17.73, + 68.02 + ], + [ + 17.71, + 68.03 + ], + [ + 17.53, + 68.07 + ], + [ + 17.49, + 68.08 + ], + [ + 17.35, + 68.1 + ], + [ + 17.31, + 68.11 + ], + [ + 17.28, + 68.12 + ], + [ + 17.25, + 68.1 + ], + [ + 17.24, + 68.09 + ], + [ + 17.21, + 68.07 + ], + [ + 17.04, + 68.01 + ], + [ + 17, + 68 + ], + [ + 16.94, + 67.98 + ], + [ + 16.88, + 67.96 + ], + [ + 16.74, + 67.91 + ], + [ + 16.73, + 67.9 + ], + [ + 16.72, + 67.89 + ], + [ + 16.71, + 67.86 + ], + [ + 16.67, + 67.81 + ], + [ + 16.65, + 67.78 + ], + [ + 16.53, + 67.62 + ], + [ + 16.49, + 67.59 + ], + [ + 16.48, + 67.59 + ], + [ + 16.48, + 67.58 + ], + [ + 16.46, + 67.57 + ], + [ + 16.42, + 67.54 + ], + [ + 16.4, + 67.53 + ], + [ + 16.3, + 67.53 + ], + [ + 16.21, + 67.52 + ], + [ + 16.14, + 67.49 + ], + [ + 16.27, + 67.31 + ], + [ + 16.4, + 67.19 + ], + [ + 16.4, + 67.16 + ], + [ + 16.4, + 67.14 + ], + [ + 16.38, + 67.04 + ], + [ + 16.29, + 67.01 + ], + [ + 16.27, + 67.01 + ], + [ + 16.14, + 66.96 + ], + [ + 16.12, + 66.95 + ], + [ + 16.03, + 66.91 + ], + [ + 15.99, + 66.87 + ], + [ + 15.81, + 66.73 + ], + [ + 15.53, + 66.56 + ], + [ + 15.48, + 66.54 + ], + [ + 15.41, + 66.5 + ], + [ + 15.38, + 66.48 + ], + [ + 15.45, + 66.36 + ], + [ + 15.47, + 66.28 + ], + [ + 15.33, + 66.24 + ], + [ + 15.23, + 66.21 + ], + [ + 15.06, + 66.16 + ], + [ + 14.93, + 66.15 + ], + [ + 14.9, + 66.15 + ], + [ + 14.73, + 66.14 + ], + [ + 14.68, + 66.14 + ], + [ + 14.63, + 66.14 + ], + [ + 14.55, + 66.13 + ], + [ + 14.54, + 66.13 + ], + [ + 14.52, + 66.13 + ], + [ + 14.54, + 66.04 + ], + [ + 14.55, + 66.04 + ], + [ + 14.55, + 66.03 + ], + [ + 14.57, + 65.98 + ], + [ + 14.57, + 65.96 + ], + [ + 14.58, + 65.95 + ], + [ + 14.59, + 65.89 + ], + [ + 14.62, + 65.83 + ], + [ + 14.5, + 65.42 + ], + [ + 14.5, + 65.34 + ], + [ + 14.38, + 65.25 + ], + [ + 14.35, + 65.19 + ], + [ + 14.35, + 65.18 + ], + [ + 14.33, + 65.13 + ], + [ + 14.24, + 65.06 + ], + [ + 14.21, + 65.04 + ], + [ + 14.19, + 65.03 + ], + [ + 14.11, + 64.96 + ], + [ + 14.03, + 64.9 + ], + [ + 14, + 64.88 + ], + [ + 13.99, + 64.87 + ], + [ + 13.98, + 64.86 + ], + [ + 13.94, + 64.83 + ], + [ + 13.81, + 64.73 + ], + [ + 13.71, + 64.64 + ], + [ + 13.7, + 64.64 + ], + [ + 13.68, + 64.61 + ], + [ + 13.66, + 64.58 + ], + [ + 13.65, + 64.58 + ], + [ + 13.7, + 64.57 + ], + [ + 13.75, + 64.55 + ], + [ + 13.87, + 64.51 + ], + [ + 13.97, + 64.5 + ], + [ + 13.98, + 64.49 + ], + [ + 14.1, + 64.47 + ], + [ + 14.11, + 64.46 + ], + [ + 14.15, + 64.25 + ], + [ + 14.16, + 64.19 + ], + [ + 14.1, + 64.14 + ], + [ + 14.1, + 64.13 + ], + [ + 14.09, + 64.13 + ], + [ + 14.05, + 64.09 + ], + [ + 14.03, + 64.07 + ], + [ + 13.99, + 64.03 + ], + [ + 13.81, + 64.03 + ], + [ + 13.29, + 64.09 + ], + [ + 13.26, + 64.09 + ], + [ + 13.16, + 64.09 + ], + [ + 12.96, + 64.06 + ], + [ + 12.9, + 64.05 + ], + [ + 12.88, + 64.04 + ], + [ + 12.83, + 64.03 + ], + [ + 12.77, + 64 + ], + [ + 12.63, + 63.94 + ], + [ + 12.59, + 63.9 + ], + [ + 12.34, + 63.72 + ], + [ + 12.33, + 63.71 + ], + [ + 12.3, + 63.7 + ], + [ + 12.28, + 63.66 + ], + [ + 12.26, + 63.65 + ], + [ + 12.22, + 63.63 + ], + [ + 12.21, + 63.48 + ], + [ + 12.19, + 63.46 + ], + [ + 12.15, + 63.42 + ], + [ + 12.14, + 63.41 + ], + [ + 12.08, + 63.35 + ], + [ + 12.06, + 63.34 + ], + [ + 12.03, + 63.31 + ], + [ + 11.97, + 63.27 + ], + [ + 11.98, + 63.27 + ], + [ + 12.02, + 63.21 + ], + [ + 12.05, + 63.18 + ], + [ + 12.09, + 63.14 + ], + [ + 12.2, + 63.02 + ], + [ + 12.22, + 63 + ], + [ + 12.18, + 62.97 + ], + [ + 12.15, + 62.95 + ], + [ + 12.09, + 62.91 + ], + [ + 12.07, + 62.9 + ], + [ + 12.09, + 62.86 + ], + [ + 12.1, + 62.83 + ], + [ + 12.11, + 62.82 + ], + [ + 12.12, + 62.79 + ], + [ + 12.13, + 62.78 + ], + [ + 12.13, + 62.77 + ], + [ + 12.11, + 62.71 + ], + [ + 12.09, + 62.67 + ], + [ + 12.07, + 62.64 + ], + [ + 12.06, + 62.61 + ], + [ + 12.09, + 62.56 + ], + [ + 12.1, + 62.55 + ], + [ + 12.11, + 62.53 + ], + [ + 12.13, + 62.51 + ], + [ + 12.17, + 62.46 + ], + [ + 12.17, + 62.45 + ], + [ + 12.18, + 62.44 + ], + [ + 12.24, + 62.35 + ], + [ + 12.26, + 62.32 + ], + [ + 12.29, + 62.29 + ], + [ + 12.28, + 62.29 + ], + [ + 12.29, + 62.29 + ], + [ + 12.3, + 62.27 + ], + [ + 12.24, + 62.27 + ], + [ + 12.26, + 62.12 + ], + [ + 12.24, + 62.07 + ], + [ + 12.18, + 61.87 + ], + [ + 12.14, + 61.73 + ], + [ + 12.14, + 61.72 + ], + [ + 12.84, + 61.38 + ], + [ + 12.85, + 61.37 + ], + [ + 12.87, + 61.36 + ], + [ + 12.87, + 61.35 + ], + [ + 12.85, + 61.29 + ], + [ + 12.84, + 61.26 + ], + [ + 12.83, + 61.26 + ], + [ + 12.83, + 61.25 + ], + [ + 12.82, + 61.24 + ], + [ + 12.79, + 61.2 + ], + [ + 12.67, + 61.06 + ], + [ + 12.66, + 61.05 + ], + [ + 12.61, + 61.05 + ], + [ + 12.56, + 61.05 + ], + [ + 12.49, + 61.05 + ], + [ + 12.39, + 61.04 + ], + [ + 12.33, + 61.03 + ], + [ + 12.29, + 61.03 + ], + [ + 12.24, + 61.02 + ], + [ + 12.23, + 61 + ], + [ + 12.26, + 60.97 + ], + [ + 12.27, + 60.96 + ], + [ + 12.3, + 60.92 + ], + [ + 12.32, + 60.91 + ], + [ + 12.33, + 60.89 + ], + [ + 12.33, + 60.86 + ], + [ + 12.34, + 60.85 + ], + [ + 12.49, + 60.66 + ], + [ + 12.57, + 60.56 + ], + [ + 12.59, + 60.54 + ], + [ + 12.6, + 60.52 + ], + [ + 12.61, + 60.48 + ], + [ + 12.59, + 60.39 + ], + [ + 12.58, + 60.39 + ], + [ + 12.57, + 60.37 + ], + [ + 12.55, + 60.35 + ], + [ + 12.54, + 60.34 + ], + [ + 12.52, + 60.34 + ], + [ + 12.5, + 60.32 + ], + [ + 12.5, + 60.29 + ], + [ + 12.51, + 60.28 + ], + [ + 12.51, + 60.26 + ], + [ + 12.52, + 60.24 + ], + [ + 12.52, + 60.23 + ], + [ + 12.53, + 60.22 + ], + [ + 12.53, + 60.21 + ], + [ + 12.52, + 60.14 + ], + [ + 12.5, + 60.1 + ], + [ + 12.5, + 60.09 + ], + [ + 12.49, + 60.09 + ], + [ + 12.48, + 60.07 + ], + [ + 12.47, + 60.06 + ], + [ + 12.44, + 60.04 + ], + [ + 12.39, + 60.01 + ], + [ + 12.38, + 60 + ], + [ + 12.35, + 59.97 + ], + [ + 12.3, + 59.95 + ], + [ + 12.27, + 59.94 + ], + [ + 12.19, + 59.9 + ], + [ + 12.17, + 59.89 + ], + [ + 12.15, + 59.89 + ], + [ + 12.05, + 59.89 + ], + [ + 11.99, + 59.9 + ], + [ + 11.98, + 59.9 + ], + [ + 11.95, + 59.89 + ], + [ + 11.94, + 59.89 + ], + [ + 11.93, + 59.89 + ], + [ + 11.93, + 59.88 + ], + [ + 11.9, + 59.87 + ], + [ + 11.89, + 59.87 + ], + [ + 11.88, + 59.87 + ], + [ + 11.88, + 59.86 + ], + [ + 11.89, + 59.86 + ], + [ + 11.88, + 59.85 + ], + [ + 11.87, + 59.85 + ], + [ + 11.86, + 59.85 + ], + [ + 11.85, + 59.84 + ], + [ + 11.84, + 59.84 + ], + [ + 11.85, + 59.84 + ], + [ + 11.85, + 59.83 + ], + [ + 11.86, + 59.83 + ], + [ + 11.87, + 59.83 + ], + [ + 11.88, + 59.83 + ], + [ + 11.89, + 59.82 + ], + [ + 11.91, + 59.8 + ], + [ + 11.92, + 59.8 + ], + [ + 11.93, + 59.79 + ], + [ + 11.93, + 59.78 + ], + [ + 11.94, + 59.69 + ], + [ + 11.89, + 59.69 + ], + [ + 11.86, + 59.65 + ], + [ + 11.79, + 59.64 + ], + [ + 11.77, + 59.64 + ], + [ + 11.71, + 59.62 + ], + [ + 11.7, + 59.61 + ], + [ + 11.69, + 59.59 + ], + [ + 11.75, + 59.49 + ], + [ + 11.75, + 59.48 + ], + [ + 11.76, + 59.46 + ], + [ + 11.77, + 59.41 + ], + [ + 11.78, + 59.4 + ], + [ + 11.82, + 59.31 + ], + [ + 11.82, + 59.24 + ], + [ + 11.78, + 59.18 + ], + [ + 11.76, + 59.12 + ], + [ + 11.76, + 59.11 + ], + [ + 11.77, + 59.11 + ], + [ + 11.78, + 59.1 + ], + [ + 11.71, + 59.04 + ], + [ + 11.7, + 59.01 + ], + [ + 11.69, + 58.98 + ], + [ + 11.69, + 58.96 + ], + [ + 11.68, + 58.95 + ], + [ + 11.63, + 58.91 + ], + [ + 11.62, + 58.9 + ], + [ + 11.61, + 58.9 + ], + [ + 11.6, + 58.9 + ], + [ + 11.59, + 58.89 + ], + [ + 11.54, + 58.88 + ], + [ + 11.5, + 58.89 + ], + [ + 11.47, + 58.89 + ], + [ + 11.46, + 58.89 + ], + [ + 11.45, + 58.99 + ], + [ + 11.46, + 58.99 + ], + [ + 11.39, + 59.12 + ], + [ + 11.2, + 59.09 + ], + [ + 11.18, + 59.2 + ], + [ + 10.73, + 59.23 + ], + [ + 10.58, + 59.75 + ], + [ + 10.78, + 59.86 + ], + [ + 10.5, + 59.89 + ], + [ + 10.59, + 59.55 + ], + [ + 10.2, + 59.73 + ], + [ + 10.53, + 59.32 + ], + [ + 10.31, + 59.06 + ], + [ + 9.86, + 58.96 + ], + [ + 9.61, + 59.21 + ], + [ + 9.75, + 58.99 + ], + [ + 9.1, + 58.72 + ], + [ + 8.26, + 58.13 + ], + [ + 8.03, + 58.24 + ], + [ + 7.62, + 58.01 + ], + [ + 7.05, + 57.98 + ], + [ + 7.17, + 58.08 + ], + [ + 6.81, + 58.1 + ], + [ + 7.04, + 58.13 + ], + [ + 6.88, + 58.2 + ], + [ + 6.64, + 58.07 + ], + [ + 6.93, + 58.29 + ], + [ + 6.39, + 58.27 + ], + [ + 5.68, + 58.54 + ], + [ + 5.57, + 59.03 + ], + [ + 5.74, + 58.85 + ], + [ + 5.89, + 58.97 + ], + [ + 6.15, + 58.84 + ], + [ + 6.28, + 58.84 + ], + [ + 6.12, + 58.88 + ], + [ + 6.09, + 58.9 + ], + [ + 6.13, + 58.95 + ], + [ + 6.65, + 59.05 + ], + [ + 6.26, + 59.01 + ], + [ + 6.1, + 58.94 + ], + [ + 6.07, + 58.9 + ], + [ + 5.89, + 59.09 + ], + [ + 6.56, + 59.32 + ], + [ + 6.02, + 59.34 + ], + [ + 6.6, + 59.56 + ], + [ + 6.27, + 59.52 + ], + [ + 6.31, + 59.64 + ], + [ + 6.22, + 59.47 + ], + [ + 5.98, + 59.35 + ], + [ + 6.2, + 59.48 + ], + [ + 5.91, + 59.47 + ], + [ + 5.85, + 59.54 + ], + [ + 5.65, + 59.26 + ], + [ + 5.63, + 59.5 + ], + [ + 5.49, + 59.27 + ], + [ + 5.22, + 59.53 + ], + [ + 5.53, + 59.73 + ], + [ + 5.46, + 59.48 + ], + [ + 5.59, + 59.69 + ], + [ + 5.8, + 59.6 + ], + [ + 6.38, + 59.87 + ], + [ + 6.02, + 59.75 + ], + [ + 5.67, + 59.85 + ], + [ + 6.32, + 60.13 + ], + [ + 6.08, + 60.19 + ], + [ + 6.35, + 60.37 + ], + [ + 6.67, + 60.41 + ], + [ + 6.55, + 60.07 + ], + [ + 6.69, + 60.39 + ], + [ + 7.14, + 60.49 + ], + [ + 6.91, + 60.49 + ], + [ + 7.03, + 60.59 + ], + [ + 6.7, + 60.43 + ], + [ + 6.71, + 60.52 + ], + [ + 6.21, + 60.47 + ], + [ + 5.77, + 59.98 + ], + [ + 5.77, + 60.19 + ], + [ + 5.57, + 60.16 + ], + [ + 5.76, + 60.4 + ], + [ + 5.44, + 60.13 + ], + [ + 5.17, + 60.37 + ], + [ + 5.27, + 60.52 + ], + [ + 5.46, + 60.42 + ], + [ + 5.62, + 60.43 + ], + [ + 5.74, + 60.47 + ], + [ + 5.74, + 60.66 + ], + [ + 5.96, + 60.64 + ], + [ + 5.74, + 60.66 + ], + [ + 5.8, + 60.74 + ], + [ + 5.68, + 60.7 + ], + [ + 5.8, + 60.82 + ], + [ + 5.55, + 60.7 + ], + [ + 5.56, + 60.63 + ], + [ + 5.28, + 60.54 + ], + [ + 5.23, + 60.67 + ], + [ + 4.95, + 60.81 + ], + [ + 5.46, + 60.63 + ], + [ + 5.45, + 60.71 + ], + [ + 5.27, + 60.77 + ], + [ + 5.59, + 60.87 + ], + [ + 5.08, + 60.84 + ], + [ + 5.01, + 60.97 + ], + [ + 5.12, + 60.87 + ], + [ + 5.31, + 60.99 + ], + [ + 5.09, + 61.07 + ], + [ + 5.49, + 60.99 + ], + [ + 5.99, + 61.13 + ], + [ + 6.41, + 61.01 + ], + [ + 6.64, + 61.18 + ], + [ + 7.01, + 61.06 + ], + [ + 6.84, + 60.88 + ], + [ + 7.05, + 60.99 + ], + [ + 7.12, + 60.86 + ], + [ + 7.04, + 61.1 + ], + [ + 7.71, + 61.23 + ], + [ + 7.42, + 61.2 + ], + [ + 7.31, + 61.3 + ], + [ + 7.59, + 61.49 + ], + [ + 7.28, + 61.4 + ], + [ + 7.25, + 61.3 + ], + [ + 7.4, + 61.18 + ], + [ + 6.99, + 61.11 + ], + [ + 7.17, + 61.27 + ], + [ + 7, + 61.16 + ], + [ + 6.6, + 61.21 + ], + [ + 6.75, + 61.42 + ], + [ + 6.47, + 61.12 + ], + [ + 5.08, + 61.17 + ], + [ + 5.31, + 61.19 + ], + [ + 4.98, + 61.28 + ], + [ + 5.68, + 61.36 + ], + [ + 5.08, + 61.32 + ], + [ + 5, + 61.43 + ], + [ + 5.85, + 61.46 + ], + [ + 4.99, + 61.59 + ], + [ + 5.43, + 61.65 + ], + [ + 4.97, + 61.68 + ], + [ + 5.38, + 61.91 + ], + [ + 5.98, + 61.85 + ], + [ + 5.91, + 61.73 + ], + [ + 6.02, + 61.84 + ], + [ + 6.84, + 61.87 + ], + [ + 5.12, + 61.92 + ], + [ + 5.43, + 62.02 + ], + [ + 5.18, + 62.22 + ], + [ + 5.46, + 62 + ], + [ + 5.49, + 62.2 + ], + [ + 5.72, + 62.09 + ], + [ + 5.92, + 62.19 + ], + [ + 5.85, + 62 + ], + [ + 5.98, + 62.14 + ], + [ + 6.33, + 62.06 + ], + [ + 5.93, + 62.22 + ], + [ + 6.13, + 62.2 + ], + [ + 5.98, + 62.27 + ], + [ + 6.34, + 62.37 + ], + [ + 6.55, + 62.1 + ], + [ + 6.41, + 62.39 + ], + [ + 6.72, + 62.45 + ], + [ + 7.01, + 62.28 + ], + [ + 6.87, + 62.08 + ], + [ + 7.21, + 62.1 + ], + [ + 6.96, + 62.12 + ], + [ + 7.04, + 62.28 + ], + [ + 7.43, + 62.25 + ], + [ + 6.33, + 62.61 + ], + [ + 7.08, + 62.65 + ], + [ + 7.13, + 62.52 + ], + [ + 7.17, + 62.63 + ], + [ + 7.56, + 62.5 + ], + [ + 7.78, + 62.58 + ], + [ + 7.4, + 62.63 + ], + [ + 8.14, + 62.68 + ], + [ + 8.07, + 62.78 + ], + [ + 7.34, + 62.7 + ], + [ + 7.67, + 62.8 + ], + [ + 6.98, + 62.72 + ], + [ + 7.24, + 62.81 + ], + [ + 6.9, + 62.91 + ], + [ + 7.1, + 62.99 + ], + [ + 7.47, + 62.9 + ], + [ + 8.04, + 62.97 + ], + [ + 8.14, + 62.82 + ], + [ + 8.55, + 62.67 + ], + [ + 8.19, + 62.83 + ], + [ + 7.97, + 63.08 + ], + [ + 8.33, + 62.96 + ], + [ + 8.26, + 62.83 + ], + [ + 8.37, + 62.89 + ], + [ + 8.51, + 62.84 + ], + [ + 8.41, + 62.9 + ], + [ + 8.7, + 62.81 + ], + [ + 8.42, + 62.95 + ], + [ + 8.71, + 62.97 + ], + [ + 8.16, + 63.11 + ], + [ + 8.98, + 63.2 + ], + [ + 8.58, + 63.2 + ], + [ + 8.67, + 63.41 + ], + [ + 9.02, + 63.46 + ], + [ + 9.1, + 63.29 + ], + [ + 9.5, + 63.4 + ], + [ + 9.15, + 63.49 + ], + [ + 9.75, + 63.65 + ], + [ + 9.84, + 63.3 + ], + [ + 10.28, + 63.32 + ], + [ + 10.2, + 63.45 + ], + [ + 10.92, + 63.45 + ], + [ + 10.71, + 63.62 + ], + [ + 11.53, + 63.78 + ], + [ + 11.37, + 63.95 + ], + [ + 11.07, + 63.86 + ], + [ + 11.5, + 64.01 + ], + [ + 11.24, + 64.03 + ], + [ + 11.39, + 64.11 + ], + [ + 10.59, + 63.8 + ], + [ + 10.96, + 63.91 + ], + [ + 10.96, + 63.75 + ], + [ + 10.1, + 63.5 + ], + [ + 9.8, + 63.66 + ], + [ + 10.12, + 63.78 + ], + [ + 9.57, + 63.65 + ], + [ + 9.8, + 63.77 + ], + [ + 9.56, + 63.77 + ], + [ + 10.22, + 63.93 + ], + [ + 9.95, + 63.91 + ], + [ + 10.23, + 64 + ], + [ + 9.95, + 63.94 + ], + [ + 10.02, + 64.08 + ], + [ + 10.68, + 64.36 + ], + [ + 10.53, + 64.44 + ], + [ + 10.84, + 64.37 + ], + [ + 10.65, + 64.45 + ], + [ + 10.98, + 64.61 + ], + [ + 11.34, + 64.44 + ], + [ + 11.22, + 64.31 + ], + [ + 11.8, + 64.59 + ], + [ + 11.38, + 64.66 + ], + [ + 11.87, + 64.79 + ], + [ + 11.69, + 64.87 + ], + [ + 12.46, + 64.89 + ], + [ + 12.06, + 64.97 + ], + [ + 11.18, + 64.74 + ], + [ + 12.08, + 65.08 + ], + [ + 12.18, + 64.98 + ], + [ + 12.96, + 65.31 + ], + [ + 12.49, + 65.13 + ], + [ + 12.25, + 65.23 + ], + [ + 12.47, + 65.37 + ], + [ + 12.04, + 65.22 + ], + [ + 12.29, + 65.59 + ], + [ + 12.71, + 65.36 + ], + [ + 12.35, + 65.63 + ], + [ + 12.51, + 65.74 + ], + [ + 12.79, + 65.63 + ], + [ + 12.67, + 65.92 + ], + [ + 13.21, + 65.84 + ], + [ + 13.05, + 66.08 + ], + [ + 12.68, + 66.07 + ], + [ + 13.52, + 66.24 + ], + [ + 13.55, + 66.1 + ], + [ + 13.83, + 66.14 + ], + [ + 13.6, + 66.23 + ], + [ + 14.18, + 66.32 + ], + [ + 13.01, + 66.19 + ], + [ + 13.56, + 66.31 + ], + [ + 13, + 66.33 + ], + [ + 12.98, + 66.53 + ], + [ + 13.26, + 66.45 + ], + [ + 13.73, + 66.6 + ], + [ + 13.2, + 66.56 + ], + [ + 13.23, + 66.68 + ], + [ + 13.57, + 66.65 + ], + [ + 13.22, + 66.73 + ], + [ + 14, + 66.8 + ], + [ + 13.49, + 66.95 + ], + [ + 14.01, + 66.96 + ], + [ + 14.05, + 67.08 + ], + [ + 14.15, + 66.97 + ], + [ + 14.24, + 67 + ], + [ + 14.23, + 67.08 + ], + [ + 14.31, + 67.07 + ], + [ + 14.4, + 67.09 + ], + [ + 14.58, + 67.01 + ], + [ + 14.59, + 67.07 + ], + [ + 14.48, + 67.07 + ], + [ + 14.4, + 67.1 + ], + [ + 14.33, + 67.08 + ], + [ + 14.24, + 67.09 + ], + [ + 14.8, + 67.24 + ], + [ + 15.47, + 67.1 + ], + [ + 15.43, + 67.26 + ], + [ + 15.04, + 67.27 + ], + [ + 15.26, + 67.35 + ], + [ + 14.31, + 67.26 + ], + [ + 15.05, + 67.45 + ], + [ + 14.65, + 67.48 + ], + [ + 15.06, + 67.59 + ], + [ + 14.93, + 67.49 + ], + [ + 15.76, + 67.36 + ], + [ + 15.53, + 67.48 + ], + [ + 15.92, + 67.6 + ], + [ + 15.52, + 67.51 + ], + [ + 15.16, + 67.63 + ], + [ + 15.65, + 67.69 + ], + [ + 15.51, + 67.77 + ], + [ + 15.85, + 67.71 + ], + [ + 15.37, + 67.88 + ], + [ + 15.17, + 67.72 + ], + [ + 14.76, + 67.66 + ], + [ + 15.14, + 67.76 + ], + [ + 14.82, + 67.77 + ], + [ + 15.14, + 67.87 + ], + [ + 14.85, + 67.88 + ], + [ + 15.87, + 67.91 + ], + [ + 15.94, + 68.03 + ], + [ + 15.28, + 68.06 + ], + [ + 15.63, + 68.19 + ], + [ + 15.81, + 68.1 + ], + [ + 16, + 68.27 + ], + [ + 16.2, + 67.9 + ], + [ + 16.52, + 67.82 + ], + [ + 16.19, + 68.02 + ], + [ + 16.46, + 67.91 + ], + [ + 16.32, + 68.03 + ], + [ + 16.52, + 67.97 + ], + [ + 16.35, + 68.04 + ], + [ + 16.45, + 68.12 + ], + [ + 16.74, + 68.09 + ], + [ + 16.49, + 68.13 + ], + [ + 16.33, + 68.1 + ], + [ + 16.61, + 68.18 + ], + [ + 16.17, + 68.32 + ], + [ + 16.82, + 68.16 + ], + [ + 16.28, + 68.37 + ], + [ + 17.19, + 68.39 + ], + [ + 17.32, + 68.19 + ], + [ + 17.3, + 68.42 + ], + [ + 17.9, + 68.41 + ], + [ + 17.54, + 68.55 + ], + [ + 17.05, + 68.45 + ], + [ + 16.46, + 68.54 + ], + [ + 16.97, + 68.71 + ], + [ + 17.69, + 68.67 + ], + [ + 17.25, + 68.76 + ], + [ + 17.81, + 68.75 + ], + [ + 17.47, + 68.99 + ], + [ + 18.2, + 69.12 + ], + [ + 18.15, + 69.47 + ], + [ + 18.2, + 69.27 + ], + [ + 18.39, + 69.4 + ], + [ + 18.48, + 69.22 + ], + [ + 18.56, + 69.36 + ], + [ + 19.01, + 69.29 + ], + [ + 18.45, + 69.44 + ], + [ + 18.83, + 69.56 + ], + [ + 19.23, + 69.24 + ], + [ + 19.55, + 69.21 + ], + [ + 18.97, + 69.46 + ], + [ + 19.25, + 69.52 + ], + [ + 18.94, + 69.56 + ], + [ + 19.13, + 69.75 + ], + [ + 19.73, + 69.81 + ], + [ + 19.65, + 69.41 + ], + [ + 19.73, + 69.61 + ], + [ + 20.15, + 69.58 + ], + [ + 19.77, + 69.69 + ], + [ + 20.33, + 69.96 + ], + [ + 20.35, + 69.62 + ], + [ + 19.92, + 69.26 + ], + [ + 20.42, + 69.59 + ], + [ + 20.82, + 69.5 + ], + [ + 20.46, + 69.76 + ], + [ + 21.06, + 69.96 + ], + [ + 20.84, + 69.85 + ], + [ + 21.14, + 69.8 + ], + [ + 21.24, + 70.01 + ], + [ + 22.13, + 69.74 + ], + [ + 22.09, + 70.03 + ], + [ + 21.78, + 70.04 + ], + [ + 22.07, + 70.13 + ], + [ + 21.73, + 70.05 + ], + [ + 21.19, + 70.2 + ], + [ + 21.51, + 70.32 + ], + [ + 21.86, + 70.14 + ], + [ + 21.95, + 70.33 + ], + [ + 22.22, + 70.13 + ], + [ + 22.54, + 70.11 + ], + [ + 22.36, + 70.26 + ], + [ + 22.96, + 70.2 + ], + [ + 22.29, + 70.02 + ], + [ + 23.01, + 70.14 + ], + [ + 23, + 69.92 + ], + [ + 23.47, + 69.98 + ], + [ + 23.18, + 70.22 + ], + [ + 23.86, + 70.49 + ], + [ + 24.31, + 70.45 + ], + [ + 24.3, + 70.69 + ], + [ + 24.69, + 70.63 + ], + [ + 24.24, + 70.78 + ], + [ + 24.35, + 70.88 + ], + [ + 24.62, + 70.79 + ], + [ + 24.62, + 70.99 + ], + [ + 25.23, + 70.8 + ], + [ + 25.33, + 70.98 + ], + [ + 25.44, + 70.85 + ], + [ + 25.91, + 70.88 + ], + [ + 25.05, + 70.5 + ], + [ + 25, + 70.05 + ], + [ + 26.67, + 70.97 + ], + [ + 26.48, + 70.36 + ], + [ + 27.1, + 70.47 + ], + [ + 27.11, + 70.76 + ], + [ + 27.72, + 70.8 + ], + [ + 27.1, + 70.93 + ], + [ + 27.28, + 71.05 + ], + [ + 27.55, + 70.96 + ], + [ + 27.65, + 71.13 + ], + [ + 28.55, + 70.97 + ], + [ + 28.24, + 70.79 + ], + [ + 27.73, + 70.8 + ], + [ + 28.14, + 70.74 + ], + [ + 27.64, + 70.62 + ], + [ + 28.3, + 70.7 + ], + [ + 27.86, + 70.44 + ], + [ + 28.51, + 70.45 + ], + [ + 28.83, + 70.88 + ], + [ + 29.4, + 70.79 + ], + [ + 29.27, + 70.65 + ], + [ + 30.18, + 70.69 + ], + [ + 30, + 70.54 + ], + [ + 30.62, + 70.55 + ], + [ + 31.06, + 70.28 + ], + [ + 30.17, + 70.07 + ], + [ + 28.56, + 70.17 + ], + [ + 29.65, + 69.98 + ], + [ + 29.49, + 69.66 + ], + [ + 30.06, + 69.78 + ], + [ + 29.94, + 69.59 + ], + [ + 30.13, + 69.67 + ] + ], + [ + [ + 13.38, + 64.79 + ], + [ + 13.23, + 64.69 + ], + [ + 13.65, + 64.7 + ], + [ + 13.38, + 64.79 + ] + ], + [ + [ + 12.17, + 64.19 + ], + [ + 12.39, + 64.26 + ], + [ + 11.69, + 64.12 + ], + [ + 12.17, + 64.19 + ] + ], + [ + [ + 14.36, + 65.91 + ], + [ + 13.84, + 65.68 + ], + [ + 14.16, + 65.68 + ], + [ + 14.36, + 65.91 + ] + ], + [ + [ + 11.91, + 62.43 + ], + [ + 11.71, + 62.1 + ], + [ + 11.94, + 61.92 + ], + [ + 11.91, + 62.43 + ] + ], + [ + [ + 11.27, + 60.59 + ], + [ + 11.27, + 60.61 + ], + [ + 11.27, + 60.59 + ], + [ + 10.94, + 60.87 + ], + [ + 10.99, + 60.71 + ], + [ + 10.67, + 60.84 + ], + [ + 11.25, + 60.4 + ], + [ + 11.27, + 60.59 + ] + ], + [ + [ + 10.24, + 60.05 + ], + [ + 10.02, + 60 + ], + [ + 10.33, + 59.96 + ], + [ + 10.24, + 60.05 + ] + ] + ], + [ + [ + [ + 12.32, + 63.7 + ], + [ + 12.31, + 63.68 + ], + [ + 12.3, + 63.7 + ], + [ + 12.32, + 63.7 + ] + ] + ], + [ + [ + [ + -8.71, + 70.92 + ], + [ + -9.04, + 70.83 + ], + [ + -7.95, + 71.16 + ], + [ + -8, + 71.02 + ], + [ + -8.71, + 70.92 + ] + ] + ], + [ + [ + [ + 8.7, + 63.78 + ], + [ + 8.81, + 63.69 + ], + [ + 8.28, + 63.67 + ], + [ + 8.7, + 63.78 + ] + ] + ], + [ + [ + [ + 14.05, + 67.12 + ], + [ + 14.29, + 67.2 + ], + [ + 14.19, + 67 + ], + [ + 14.05, + 67.12 + ] + ] + ], + [ + [ + [ + 29.8, + 69.76 + ], + [ + 29.84, + 69.91 + ], + [ + 30.1, + 69.82 + ], + [ + 29.8, + 69.76 + ] + ] + ], + [ + [ + [ + 25.84, + 71.07 + ], + [ + 26.22, + 71.03 + ], + [ + 25.56, + 70.93 + ], + [ + 25.25, + 71.03 + ], + [ + 25.73, + 71.07 + ], + [ + 25.67, + 71.19 + ], + [ + 25.84, + 71.07 + ] + ] + ], + [ + [ + [ + 22.97, + 70.24 + ], + [ + 22.35, + 70.34 + ], + [ + 22.78, + 70.39 + ], + [ + 22.97, + 70.24 + ] + ] + ], + [ + [ + [ + 23.15, + 70.54 + ], + [ + 23.56, + 70.62 + ], + [ + 23.64, + 70.49 + ], + [ + 23.15, + 70.27 + ], + [ + 22.82, + 70.41 + ], + [ + 23.15, + 70.54 + ] + ] + ], + [ + [ + [ + 23.76, + 70.52 + ], + [ + 23.68, + 70.75 + ], + [ + 24.13, + 70.61 + ], + [ + 23.76, + 70.52 + ] + ] + ], + [ + [ + [ + 22.71, + 70.61 + ], + [ + 22.7, + 70.76 + ], + [ + 23.01, + 70.65 + ], + [ + 23.06, + 70.82 + ], + [ + 23.45, + 70.83 + ], + [ + 22.82, + 70.51 + ], + [ + 22.09, + 70.48 + ], + [ + 22.31, + 70.6 + ], + [ + 21.93, + 70.64 + ], + [ + 22.52, + 70.72 + ], + [ + 22.71, + 70.61 + ] + ] + ], + [ + [ + [ + 13.68, + 68.31 + ], + [ + 14.17, + 68.26 + ], + [ + 13.49, + 68.06 + ], + [ + 13.68, + 68.31 + ] + ] + ], + [ + [ + [ + 16.47, + 68.44 + ], + [ + 16.07, + 68.41 + ], + [ + 16.34, + 68.56 + ], + [ + 16.47, + 68.44 + ] + ] + ], + [ + [ + [ + 16.31, + 68.83 + ], + [ + 16.27, + 68.92 + ], + [ + 16.59, + 68.84 + ], + [ + 16.51, + 68.57 + ], + [ + 16.09, + 68.56 + ], + [ + 15.87, + 68.38 + ], + [ + 15.87, + 68.51 + ], + [ + 15.63, + 68.31 + ], + [ + 15.33, + 68.36 + ], + [ + 15.54, + 68.52 + ], + [ + 14.99, + 68.3 + ], + [ + 15.4, + 68.47 + ], + [ + 15.21, + 68.57 + ], + [ + 15.63, + 68.62 + ], + [ + 15.45, + 68.73 + ], + [ + 15.72, + 68.69 + ], + [ + 15.62, + 68.95 + ], + [ + 15.96, + 68.9 + ], + [ + 15.77, + 68.74 + ], + [ + 16.01, + 68.78 + ], + [ + 15.73, + 68.53 + ], + [ + 16.31, + 68.83 + ] + ] + ], + [ + [ + [ + 14.7, + 68.69 + ], + [ + 14.43, + 68.6 + ], + [ + 14.54, + 68.82 + ], + [ + 14.61, + 68.73 + ], + [ + 14.65, + 68.84 + ], + [ + 14.72, + 68.74 + ], + [ + 15.16, + 68.81 + ], + [ + 15.16, + 69.02 + ], + [ + 15.42, + 68.69 + ], + [ + 15, + 68.58 + ], + [ + 14.79, + 68.64 + ], + [ + 15.18, + 68.75 + ], + [ + 14.7, + 68.69 + ] + ] + ], + [ + [ + [ + 14.25, + 68.25 + ], + [ + 15.2, + 68.48 + ], + [ + 14.66, + 68.24 + ], + [ + 14.25, + 68.25 + ] + ] + ], + [ + [ + [ + 20.5, + 70.06 + ], + [ + 20.75, + 70.23 + ], + [ + 20.8, + 70.05 + ], + [ + 20.5, + 70.06 + ] + ] + ], + [ + [ + [ + 19.64, + 70.18 + ], + [ + 19.59, + 70.29 + ], + [ + 20.13, + 70.1 + ], + [ + 19.74, + 70.06 + ], + [ + 19.64, + 70.18 + ] + ] + ], + [ + [ + [ + 18.03, + 69.6 + ], + [ + 18.61, + 69.69 + ], + [ + 18.37, + 69.79 + ], + [ + 18.75, + 69.69 + ], + [ + 18.69, + 69.88 + ], + [ + 18.99, + 69.82 + ], + [ + 18.76, + 69.56 + ], + [ + 18.03, + 69.6 + ] + ] + ], + [ + [ + [ + 18.71, + 69.93 + ], + [ + 19.18, + 70.09 + ], + [ + 19.68, + 70 + ], + [ + 19.13, + 69.79 + ], + [ + 18.71, + 69.93 + ] + ] + ], + [ + [ + [ + 15.64, + 68.97 + ], + [ + 15.48, + 68.87 + ], + [ + 16.14, + 69.33 + ], + [ + 15.64, + 68.97 + ] + ] + ], + [ + [ + [ + 17.18, + 68.77 + ], + [ + 16.82, + 68.73 + ], + [ + 17.03, + 68.87 + ], + [ + 17.18, + 68.77 + ] + ] + ], + [ + [ + [ + 17.25, + 69.41 + ], + [ + 17.31, + 69.54 + ], + [ + 17.68, + 69.47 + ], + [ + 17.48, + 69.6 + ], + [ + 17.68, + 69.48 + ], + [ + 17.87, + 69.58 + ], + [ + 18.01, + 69.19 + ], + [ + 17.49, + 69.21 + ], + [ + 17.05, + 69.01 + ], + [ + 16.78, + 69.1 + ], + [ + 17.19, + 69.35 + ], + [ + 16.87, + 69.38 + ], + [ + 17.25, + 69.41 + ] + ] + ], + [ + [ + [ + 8.3, + 63.45 + ], + [ + 8.66, + 63.62 + ], + [ + 9.2, + 63.56 + ], + [ + 8.3, + 63.45 + ] + ] + ], + [ + [ + [ + 7.47, + 63.05 + ], + [ + 7.73, + 63.01 + ], + [ + 7.49, + 62.94 + ], + [ + 7.47, + 63.05 + ] + ] + ], + [ + [ + [ + 5.83, + 62.35 + ], + [ + 6.11, + 62.35 + ], + [ + 5.87, + 62.25 + ], + [ + 5.83, + 62.35 + ] + ] + ], + [ + [ + [ + 5.5, + 60.52 + ], + [ + 5.71, + 60.7 + ], + [ + 5.71, + 60.47 + ], + [ + 5.53, + 60.43 + ], + [ + 5.34, + 60.54 + ], + [ + 5.5, + 60.52 + ] + ] + ], + [ + [ + [ + 5.68, + 59.98 + ], + [ + 5.61, + 59.87 + ], + [ + 5.37, + 59.99 + ], + [ + 5.67, + 60.08 + ], + [ + 5.68, + 59.98 + ] + ] + ], + [ + [ + [ + 5.33, + 59.27 + ], + [ + 5.2, + 59.14 + ], + [ + 5.24, + 59.41 + ], + [ + 5.33, + 59.27 + ] + ] + ], + [ + [ + [ + 23.98, + 77.68 + ], + [ + 22.67, + 77.24 + ], + [ + 23.03, + 77.58 + ], + [ + 20.87, + 77.44 + ], + [ + 21.55, + 77.92 + ], + [ + 20.83, + 78.12 + ], + [ + 22.83, + 78.26 + ], + [ + 23.52, + 77.93 + ], + [ + 24.29, + 77.93 + ], + [ + 23.98, + 77.68 + ] + ] + ], + [ + [ + [ + 20.7, + 78.22 + ], + [ + 20.19, + 78.5 + ], + [ + 21.93, + 78.58 + ], + [ + 22.12, + 78.27 + ], + [ + 20.7, + 78.22 + ] + ] + ], + [ + [ + [ + 10.92, + 78.79 + ], + [ + 12.15, + 78.21 + ], + [ + 11.03, + 78.48 + ], + [ + 10.51, + 78.9 + ], + [ + 10.92, + 78.79 + ] + ] + ], + [ + [ + [ + 16.79, + 76.83 + ], + [ + 17.06, + 76.64 + ], + [ + 16.27, + 76.56 + ], + [ + 16.52, + 76.7 + ], + [ + 15.48, + 76.87 + ], + [ + 16.61, + 77.06 + ], + [ + 15.19, + 77.02 + ], + [ + 13.9, + 77.49 + ], + [ + 15.91, + 77.5 + ], + [ + 14.73, + 77.66 + ], + [ + 17.17, + 77.78 + ], + [ + 16.73, + 77.89 + ], + [ + 13.76, + 77.73 + ], + [ + 13.57, + 78.05 + ], + [ + 14.31, + 77.97 + ], + [ + 14.19, + 78.1 + ], + [ + 17.42, + 78.44 + ], + [ + 16.29, + 78.46 + ], + [ + 16.97, + 78.65 + ], + [ + 16.55, + 78.72 + ], + [ + 15.43, + 78.46 + ], + [ + 15.32, + 78.84 + ], + [ + 14.94, + 78.59 + ], + [ + 14.26, + 78.73 + ], + [ + 14.77, + 78.37 + ], + [ + 14.09, + 78.43 + ], + [ + 14.08, + 78.25 + ], + [ + 12.98, + 78.2 + ], + [ + 12.35, + 78.49 + ], + [ + 13.3, + 78.58 + ], + [ + 12.38, + 78.54 + ], + [ + 11.5, + 78.73 + ], + [ + 11.34, + 78.98 + ], + [ + 12.65, + 78.91 + ], + [ + 11.68, + 79.07 + ], + [ + 11.99, + 79.26 + ], + [ + 11.17, + 79.11 + ], + [ + 10.64, + 79.55 + ], + [ + 11.66, + 79.83 + ], + [ + 12.3, + 79.66 + ], + [ + 12.2, + 79.84 + ], + [ + 12.5, + 79.74 + ], + [ + 13.77, + 79.88 + ], + [ + 13.72, + 79.69 + ], + [ + 12.3, + 79.59 + ], + [ + 13.45, + 79.57 + ], + [ + 14.03, + 79.28 + ], + [ + 13.81, + 79.53 + ], + [ + 14.71, + 79.79 + ], + [ + 16.4, + 78.88 + ], + [ + 15.6, + 79.8 + ], + [ + 16.24, + 80.06 + ], + [ + 17.99, + 79.75 + ], + [ + 17.66, + 79.37 + ], + [ + 18.26, + 79.63 + ], + [ + 18.88, + 79.12 + ], + [ + 19.8, + 79.15 + ], + [ + 19.87, + 79 + ], + [ + 21.5, + 78.82 + ], + [ + 21.35, + 78.67 + ], + [ + 18.89, + 78.5 + ], + [ + 18.27, + 77.52 + ], + [ + 17.58, + 77.58 + ], + [ + 16.79, + 76.83 + ] + ] + ], + [ + [ + [ + 22.47, + 80.31 + ], + [ + 22.79, + 80.51 + ], + [ + 23.16, + 80.11 + ], + [ + 24.28, + 80.36 + ], + [ + 27.24, + 80.06 + ], + [ + 25.76, + 79.44 + ], + [ + 23.9, + 79.21 + ], + [ + 20.06, + 79.46 + ], + [ + 19.67, + 79.61 + ], + [ + 21.09, + 79.54 + ], + [ + 20.47, + 79.67 + ], + [ + 21.83, + 79.69 + ], + [ + 21.6, + 79.82 + ], + [ + 18.75, + 79.71 + ], + [ + 18.08, + 79.9 + ], + [ + 18.95, + 80.05 + ], + [ + 17.71, + 80.13 + ], + [ + 18.71, + 80.21 + ], + [ + 19.42, + 80.09 + ], + [ + 19, + 80.34 + ], + [ + 19.78, + 80.22 + ], + [ + 19.62, + 80.51 + ], + [ + 20.9, + 80.2 + ], + [ + 21.78, + 80.27 + ], + [ + 22.21, + 79.98 + ], + [ + 22.47, + 80.31 + ] + ] + ], + [ + [ + [ + 18.81, + 74.43 + ], + [ + 19.25, + 74.47 + ], + [ + 19.06, + 74.34 + ], + [ + 18.81, + 74.43 + ] + ] + ], + [ + [ + [ + 25.23, + 76.61 + ], + [ + 25.5, + 76.72 + ], + [ + 24.93, + 76.44 + ], + [ + 25.23, + 76.61 + ] + ] + ], + [ + [ + [ + 28.32, + 78.92 + ], + [ + 29.64, + 78.9 + ], + [ + 28.07, + 78.8 + ], + [ + 28.32, + 78.92 + ] + ] + ], + [ + [ + [ + 31.47, + 80.12 + ], + [ + 32.75, + 80.31 + ], + [ + 33.51, + 80.23 + ], + [ + 31.47, + 80.12 + ] + ] + ] + ] + }, + "properties": { + "A3": "NOR" + } + }, + { + "type": "Feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + 80.73, + 9.28 + ], + [ + 81.23, + 8.65 + ], + [ + 81.13, + 8.49 + ], + [ + 81.35, + 8.49 + ], + [ + 81.37, + 8.15 + ], + [ + 81.76, + 7.54 + ], + [ + 81.87, + 7.28 + ], + [ + 81.8, + 6.8 + ], + [ + 81.57, + 6.37 + ], + [ + 80.86, + 6.05 + ], + [ + 80.47, + 5.94 + ], + [ + 80.06, + 6.19 + ], + [ + 79.82, + 6.95 + ], + [ + 79.69, + 8.21 + ], + [ + 79.79, + 8.38 + ], + [ + 79.82, + 7.91 + ], + [ + 79.91, + 8.94 + ], + [ + 80.19, + 9.48 + ], + [ + 80.05, + 9.6 + ], + [ + 80.31, + 9.44 + ], + [ + 80.41, + 9.52 + ], + [ + 79.91, + 9.77 + ], + [ + 80.25, + 9.83 + ], + [ + 80.73, + 9.28 + ] + ], + [ + [ + 80.11, + 9.78 + ], + [ + 80.11, + 9.67 + ], + [ + 80.29, + 9.73 + ], + [ + 80.11, + 9.78 + ] + ] + ] + }, + "properties": { + "A3": "LKA" + } + }, + { + "type": "Feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + 33.01, + 7.93 + ], + [ + 33, + 7.94 + ], + [ + 33.04, + 7.99 + ], + [ + 33.22, + 8.44 + ], + [ + 33.77, + 8.37 + ], + [ + 34.14, + 8.6 + ], + [ + 34.11, + 9.5 + ], + [ + 34.35, + 10.23 + ], + [ + 34.28, + 10.54 + ], + [ + 34.59, + 10.89 + ], + [ + 34.86, + 10.74 + ], + [ + 34.97, + 11.24 + ], + [ + 34.96, + 11.24 + ], + [ + 35.08, + 11.8 + ], + [ + 35.7, + 12.67 + ], + [ + 36.14, + 12.71 + ], + [ + 36.56, + 14.26 + ], + [ + 36.62, + 14.3 + ], + [ + 36.63, + 14.31 + ], + [ + 36.67, + 14.31 + ], + [ + 36.68, + 14.3 + ], + [ + 36.69, + 14.3 + ], + [ + 36.76, + 14.32 + ], + [ + 37.11, + 14.35 + ], + [ + 37.31, + 14.45 + ], + [ + 37.53, + 14.18 + ], + [ + 37.91, + 14.89 + ], + [ + 38.46, + 14.41 + ], + [ + 39.15, + 14.65 + ], + [ + 39.25, + 14.41 + ], + [ + 39.59, + 14.61 + ], + [ + 39.93, + 14.42 + ], + [ + 40.13, + 14.55 + ], + [ + 40.21, + 14.39 + ], + [ + 40.94, + 14.08 + ], + [ + 42.4, + 12.47 + ], + [ + 41.83, + 11.73 + ], + [ + 41.81, + 11.26 + ], + [ + 41.68, + 11.18 + ], + [ + 41.8, + 11.08 + ], + [ + 41.95, + 10.91 + ], + [ + 42.63, + 11.1 + ], + [ + 42.96, + 10.98 + ], + [ + 42.71, + 10.62 + ], + [ + 42.86, + 10.23 + ], + [ + 43.26, + 9.84 + ], + [ + 43.3, + 9.61 + ], + [ + 44.06, + 8.99 + ], + [ + 46.99, + 8 + ], + [ + 47.98, + 8 + ], + [ + 45.41, + 5.54 + ], + [ + 44.98, + 4.92 + ], + [ + 43.81, + 4.9 + ], + [ + 43.12, + 4.63 + ], + [ + 42.82, + 4.27 + ], + [ + 42.08, + 4.17 + ], + [ + 42.07, + 4.17 + ], + [ + 41.95, + 4.04 + ], + [ + 41.92, + 4 + ], + [ + 41.9, + 3.98 + ], + [ + 41.17, + 3.94 + ], + [ + 40.76, + 4.28 + ], + [ + 39.87, + 3.87 + ], + [ + 39.54, + 3.4 + ], + [ + 38.54, + 3.65 + ], + [ + 38.13, + 3.61 + ], + [ + 37.03, + 4.38 + ], + [ + 36.74, + 4.44 + ], + [ + 36.97, + 4.61 + ], + [ + 37, + 4.82 + ], + [ + 36.76, + 4.78 + ], + [ + 36.72, + 4.44 + ], + [ + 36.21, + 4.45 + ], + [ + 36.2, + 4.65 + ], + [ + 36.01, + 4.48 + ], + [ + 35.97, + 4.52 + ], + [ + 35.96, + 4.53 + ], + [ + 35.96, + 4.55 + ], + [ + 35.96, + 4.57 + ], + [ + 35.95, + 4.57 + ], + [ + 35.94, + 4.62 + ], + [ + 35.82, + 4.77 + ], + [ + 35.86, + 5.32 + ], + [ + 35.54, + 5.42 + ], + [ + 35.32, + 5.33 + ], + [ + 35.13, + 5.62 + ], + [ + 34.94, + 6.56 + ], + [ + 34.29, + 6.95 + ], + [ + 33.72, + 7.66 + ], + [ + 33.05, + 7.8 + ], + [ + 33.02, + 7.89 + ], + [ + 33.01, + 7.9 + ], + [ + 33.01, + 7.91 + ], + [ + 33, + 7.91 + ], + [ + 33.01, + 7.93 + ] + ], + [ + [ + 37.86, + 6.58 + ], + [ + 37.82, + 6.18 + ], + [ + 37.66, + 6.16 + ], + [ + 37.62, + 5.99 + ], + [ + 37.79, + 6.07 + ], + [ + 38.06, + 6.48 + ], + [ + 37.86, + 6.58 + ] + ], + [ + [ + 37.44, + 7.1 + ], + [ + 37.31, + 6.85 + ], + [ + 37.44, + 6.86 + ], + [ + 37.44, + 7.1 + ] + ], + [ + [ + 38.52, + 7.54 + ], + [ + 38.36, + 7.42 + ], + [ + 38.63, + 7.4 + ], + [ + 38.52, + 7.54 + ] + ], + [ + [ + 37.55, + 5.94 + ], + [ + 37.51, + 5.71 + ], + [ + 37.63, + 5.79 + ], + [ + 37.55, + 5.94 + ] + ], + [ + [ + 38.79, + 7.71 + ], + [ + 38.72, + 7.52 + ], + [ + 38.84, + 7.54 + ], + [ + 38.79, + 7.71 + ] + ], + [ + [ + 38.54, + 7.68 + ], + [ + 38.63, + 7.54 + ], + [ + 38.66, + 7.67 + ], + [ + 38.54, + 7.68 + ] + ], + [ + [ + 38.79, + 8.1 + ], + [ + 38.73, + 7.95 + ], + [ + 38.85, + 7.85 + ], + [ + 38.96, + 8.1 + ], + [ + 38.79, + 8.1 + ] + ], + [ + [ + 37.22, + 9.61 + ], + [ + 37.2, + 9.37 + ], + [ + 37.32, + 9.54 + ], + [ + 37.22, + 9.61 + ] + ], + [ + [ + 37.47, + 12.3 + ], + [ + 37.27, + 12.19 + ], + [ + 37.16, + 12.3 + ], + [ + 37, + 11.91 + ], + [ + 37.31, + 11.8 + ], + [ + 37.4, + 11.6 + ], + [ + 37.62, + 12.08 + ], + [ + 37.47, + 12.3 + ] + ], + [ + [ + 40.85, + 13.28 + ], + [ + 40.91, + 13.17 + ], + [ + 40.96, + 13.31 + ], + [ + 40.85, + 13.28 + ] + ] + ] + }, + "properties": { + "A3": "ETH" + } + }, + { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + 6.89, + 45.68 + ], + [ + 6.84, + 45.84 + ], + [ + 6.85, + 45.84 + ], + [ + 6.86, + 45.83 + ], + [ + 6.87, + 45.84 + ], + [ + 7.04, + 45.92 + ], + [ + 7.86, + 45.92 + ], + [ + 8.13, + 46.14 + ], + [ + 8.26, + 46.35 + ], + [ + 8.45, + 46.46 + ], + [ + 8.53, + 46.22 + ], + [ + 8.56, + 46.19 + ], + [ + 8.7, + 46.1 + ], + [ + 8.75, + 46.07 + ], + [ + 8.76, + 46.1 + ], + [ + 8.87, + 45.96 + ], + [ + 8.9, + 45.95 + ], + [ + 8.9, + 45.93 + ], + [ + 8.92, + 45.91 + ], + [ + 9.03, + 45.82 + ], + [ + 9.02, + 46 + ], + [ + 9.01, + 46.03 + ], + [ + 9.28, + 46.47 + ], + [ + 9.41, + 46.47 + ], + [ + 9.45, + 46.46 + ], + [ + 9.45, + 46.48 + ], + [ + 9.58, + 46.29 + ], + [ + 9.95, + 46.38 + ], + [ + 10.07, + 46.22 + ], + [ + 10.11, + 46.35 + ], + [ + 10.19, + 46.63 + ], + [ + 10.2, + 46.62 + ], + [ + 10.47, + 46.54 + ], + [ + 10.47, + 46.85 + ], + [ + 11.02, + 46.77 + ], + [ + 11.1, + 46.89 + ], + [ + 12.08, + 47.07 + ], + [ + 12.24, + 47.07 + ], + [ + 12.14, + 46.91 + ], + [ + 12.38, + 46.72 + ], + [ + 12.78, + 46.65 + ], + [ + 12.78, + 46.64 + ], + [ + 12.79, + 46.64 + ], + [ + 12.8, + 46.64 + ], + [ + 13.71, + 46.52 + ], + [ + 13.58, + 46.42 + ], + [ + 13.57, + 46.41 + ], + [ + 13.4, + 46.3 + ], + [ + 13.66, + 46.18 + ], + [ + 13.48, + 46.01 + ], + [ + 13.64, + 45.98 + ], + [ + 13.61, + 45.9 + ], + [ + 13.92, + 45.63 + ], + [ + 13.72, + 45.59 + ], + [ + 13.53, + 45.8 + ], + [ + 13.49, + 45.7 + ], + [ + 13.18, + 45.78 + ], + [ + 13.1, + 45.64 + ], + [ + 12.44, + 45.43 + ], + [ + 12.45, + 45.48 + ], + [ + 12.46, + 45.48 + ], + [ + 12.65, + 45.54 + ], + [ + 12.13, + 45.39 + ], + [ + 12.44, + 44.9 + ], + [ + 12.12, + 44.56 + ], + [ + 12.27, + 44.62 + ], + [ + 12.36, + 44.27 + ], + [ + 12.66, + 44.01 + ], + [ + 13.63, + 43.55 + ], + [ + 14.15, + 42.52 + ], + [ + 15.1, + 41.93 + ], + [ + 16.15, + 41.91 + ], + [ + 15.96, + 41.46 + ], + [ + 18, + 40.66 + ], + [ + 18.52, + 40.13 + ], + [ + 18.39, + 39.82 + ], + [ + 18.05, + 39.93 + ], + [ + 17.86, + 40.28 + ], + [ + 17.2, + 40.41 + ], + [ + 17.31, + 40.5 + ], + [ + 16.9, + 40.44 + ], + [ + 16.49, + 39.76 + ], + [ + 17.16, + 39.4 + ], + [ + 17.21, + 39.02 + ], + [ + 16.6, + 38.81 + ], + [ + 16.57, + 38.43 + ], + [ + 16.06, + 37.92 + ], + [ + 15.73, + 37.93 + ], + [ + 15.63, + 38.22 + ], + [ + 15.91, + 38.43 + ], + [ + 15.84, + 38.65 + ], + [ + 16.18, + 38.75 + ], + [ + 16.22, + 38.91 + ], + [ + 15.68, + 40.03 + ], + [ + 15.27, + 40.02 + ], + [ + 14.91, + 40.24 + ], + [ + 15, + 40.39 + ], + [ + 14.77, + 40.67 + ], + [ + 14.32, + 40.57 + ], + [ + 14.46, + 40.74 + ], + [ + 14.04, + 40.79 + ], + [ + 13.71, + 41.25 + ], + [ + 13.07, + 41.22 + ], + [ + 12.62, + 41.44 + ], + [ + 11.62, + 42.3 + ], + [ + 11.27, + 42.42 + ], + [ + 10.73, + 42.8 + ], + [ + 10.77, + 42.91 + ], + [ + 10.5, + 42.93 + ], + [ + 10.19, + 43.94 + ], + [ + 9.34, + 44.31 + ], + [ + 8.75, + 44.43 + ], + [ + 8.07, + 43.89 + ], + [ + 7.53, + 43.78 + ], + [ + 7.72, + 44.08 + ], + [ + 7.43, + 44.12 + ], + [ + 7.2, + 44.18 + ], + [ + 6.86, + 44.53 + ], + [ + 6.95, + 44.65 + ], + [ + 7.08, + 44.68 + ], + [ + 7.08, + 44.69 + ], + [ + 6.63, + 45.11 + ], + [ + 6.99, + 45.21 + ], + [ + 7.19, + 45.4 + ], + [ + 6.99, + 45.58 + ], + [ + 6.98, + 45.58 + ], + [ + 6.99, + 45.61 + ], + [ + 6.98, + 45.61 + ], + [ + 6.9, + 45.68 + ], + [ + 6.89, + 45.68 + ] + ], + [ + [ + 8.75, + 46.04 + ], + [ + 8.5, + 45.95 + ], + [ + 8.57, + 45.75 + ], + [ + 8.75, + 46.04 + ] + ], + [ + [ + 10.82, + 45.86 + ], + [ + 10.5, + 45.61 + ], + [ + 10.57, + 45.46 + ], + [ + 10.71, + 45.43 + ], + [ + 10.82, + 45.86 + ] + ] + ], + [ + [ + [ + 9.41, + 46.47 + ], + [ + 9.46, + 46.51 + ], + [ + 9.45, + 46.48 + ], + [ + 9.41, + 46.47 + ] + ] + ], + [ + [ + [ + 15.28, + 37.06 + ], + [ + 15.08, + 36.65 + ], + [ + 14.49, + 36.79 + ], + [ + 14.26, + 37.06 + ], + [ + 12.66, + 37.57 + ], + [ + 12.42, + 37.8 + ], + [ + 12.49, + 38.02 + ], + [ + 12.73, + 38.19 + ], + [ + 12.9, + 38.02 + ], + [ + 13.32, + 38.22 + ], + [ + 13.74, + 37.97 + ], + [ + 14.31, + 38.01 + ], + [ + 15.65, + 38.27 + ], + [ + 15.09, + 37.5 + ], + [ + 15.28, + 37.06 + ] + ] + ], + [ + [ + [ + 10.3, + 42.82 + ], + [ + 10.42, + 42.87 + ], + [ + 10.43, + 42.71 + ], + [ + 10.1, + 42.77 + ], + [ + 10.3, + 42.82 + ] + ] + ], + [ + [ + [ + 8.61, + 39.88 + ], + [ + 8.4, + 39.91 + ], + [ + 8.49, + 40.3 + ], + [ + 8.31, + 40.6 + ], + [ + 8.15, + 40.58 + ], + [ + 8.18, + 40.94 + ], + [ + 8.56, + 40.83 + ], + [ + 9.24, + 41.26 + ], + [ + 9.66, + 41 + ], + [ + 9.49, + 40.92 + ], + [ + 9.73, + 40.84 + ], + [ + 9.83, + 40.53 + ], + [ + 9.62, + 40.25 + ], + [ + 9.74, + 40.08 + ], + [ + 9.52, + 39.09 + ], + [ + 9.1, + 39.26 + ], + [ + 9.02, + 38.98 + ], + [ + 8.61, + 38.89 + ], + [ + 8.37, + 39.23 + ], + [ + 8.44, + 39.76 + ], + [ + 8.56, + 39.67 + ], + [ + 8.61, + 39.88 + ] + ] + ] + ] + }, + "properties": { + "A3": "ITA" + } + }, + { + "type": "Feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + -60.93, + 14.09 + ], + [ + -60.95, + 13.71 + ], + [ + -61.08, + 13.88 + ], + [ + -60.93, + 14.09 + ] + ] + ] + }, + "properties": { + "A3": "LCA" + } + }, + { + "type": "Feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + -89.15, + 17.82 + ], + [ + -89.15, + 17.94 + ], + [ + -88.86, + 17.89 + ], + [ + -88.52, + 18.46 + ], + [ + -88.38, + 18.48 + ], + [ + -88.32, + 18.49 + ], + [ + -88.39, + 18.34 + ], + [ + -88.1, + 18.37 + ], + [ + -88.09, + 18.21 + ], + [ + -88.3, + 17.65 + ], + [ + -88.18, + 17.5 + ], + [ + -88.3, + 17.24 + ], + [ + -88.25, + 16.81 + ], + [ + -88.91, + 15.9 + ], + [ + -88.92, + 15.89 + ], + [ + -89.01, + 15.9 + ], + [ + -89.05, + 15.91 + ], + [ + -89.06, + 15.92 + ], + [ + -89.08, + 15.9 + ], + [ + -89.12, + 15.9 + ], + [ + -89.14, + 15.9 + ], + [ + -89.15, + 15.9 + ], + [ + -89.19, + 15.9 + ], + [ + -89.15, + 17.82 + ] + ] + ] + }, + "properties": { + "A3": "BLZ" + } + }, + { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + 28.04, + 59.47 + ], + [ + 28.11, + 59.45 + ], + [ + 28.12, + 59.44 + ], + [ + 28.17, + 59.41 + ], + [ + 28.18, + 59.4 + ], + [ + 28.21, + 59.38 + ], + [ + 28.2, + 59.37 + ], + [ + 28.19, + 59.35 + ], + [ + 28.01, + 59.28 + ], + [ + 28, + 59.28 + ], + [ + 27.96, + 59.27 + ], + [ + 27.95, + 59.27 + ], + [ + 27.92, + 59.25 + ], + [ + 27.9, + 59.24 + ], + [ + 27.9, + 59.23 + ], + [ + 27.9, + 59.2 + ], + [ + 27.89, + 59.2 + ], + [ + 27.88, + 59.18 + ], + [ + 27.88, + 59.17 + ], + [ + 27.85, + 59.15 + ], + [ + 27.84, + 59.15 + ], + [ + 27.83, + 59.14 + ], + [ + 27.82, + 59.14 + ], + [ + 27.81, + 59.13 + ], + [ + 27.8, + 59.1 + ], + [ + 27.79, + 59.09 + ], + [ + 27.79, + 59.08 + ], + [ + 27.79, + 59.07 + ], + [ + 27.78, + 59.07 + ], + [ + 27.77, + 59.06 + ], + [ + 27.77, + 59.05 + ], + [ + 27.77, + 59.04 + ], + [ + 27.74, + 59.02 + ], + [ + 27.74, + 59.01 + ], + [ + 27.74, + 59 + ], + [ + 27.75, + 59 + ], + [ + 27.75, + 58.99 + ], + [ + 27.16, + 58.98 + ], + [ + 26.94, + 58.83 + ], + [ + 27.62, + 58.01 + ], + [ + 27.63, + 58.01 + ], + [ + 27.64, + 58 + ], + [ + 27.65, + 58.02 + ], + [ + 27.68, + 58.01 + ], + [ + 27.69, + 58 + ], + [ + 27.7, + 58 + ], + [ + 27.72, + 57.91 + ], + [ + 27.71, + 57.91 + ], + [ + 27.72, + 57.91 + ], + [ + 27.73, + 57.91 + ], + [ + 27.75, + 57.9 + ], + [ + 27.81, + 57.87 + ], + [ + 27.82, + 57.87 + ], + [ + 27.71, + 57.84 + ], + [ + 27.71, + 57.85 + ], + [ + 27.58, + 57.83 + ], + [ + 27.56, + 57.83 + ], + [ + 27.55, + 57.83 + ], + [ + 27.55, + 57.82 + ], + [ + 27.38, + 57.66 + ], + [ + 27.35, + 57.52 + ], + [ + 27.07, + 57.58 + ], + [ + 26.85, + 57.59 + ], + [ + 26.62, + 57.51 + ], + [ + 26.24, + 57.63 + ], + [ + 26.24, + 57.65 + ], + [ + 26.23, + 57.65 + ], + [ + 26.24, + 57.66 + ], + [ + 26.23, + 57.66 + ], + [ + 26.21, + 57.67 + ], + [ + 25.67, + 57.91 + ], + [ + 25.66, + 57.91 + ], + [ + 25.3, + 58.08 + ], + [ + 24.93, + 58 + ], + [ + 24.92, + 58 + ], + [ + 24.82, + 57.98 + ], + [ + 24.79, + 57.99 + ], + [ + 24.78, + 57.99 + ], + [ + 24.35, + 57.88 + ], + [ + 24.58, + 58.32 + ], + [ + 24.31, + 58.38 + ], + [ + 24.12, + 58.23 + ], + [ + 23.75, + 58.34 + ], + [ + 23.49, + 58.69 + ], + [ + 23.76, + 58.78 + ], + [ + 23.45, + 58.76 + ], + [ + 23.42, + 58.91 + ], + [ + 23.66, + 58.98 + ], + [ + 23.4, + 59.03 + ], + [ + 23.51, + 59.23 + ], + [ + 24.7, + 59.47 + ], + [ + 24.8, + 59.57 + ], + [ + 25.44, + 59.49 + ], + [ + 25.7, + 59.68 + ], + [ + 26.98, + 59.43 + ], + [ + 28.04, + 59.47 + ] + ], + [ + [ + 26.02, + 58.19 + ], + [ + 26.06, + 58.1 + ], + [ + 26.15, + 58.41 + ], + [ + 25.9, + 58.31 + ], + [ + 26.02, + 58.19 + ] + ] + ], + [ + [ + [ + 22.75, + 59.01 + ], + [ + 23.07, + 58.84 + ], + [ + 22.64, + 58.69 + ], + [ + 22.04, + 58.93 + ], + [ + 22.58, + 59.09 + ], + [ + 22.75, + 59.01 + ] + ] + ], + [ + [ + [ + 23.15, + 58.56 + ], + [ + 23.15, + 58.68 + ], + [ + 23.35, + 58.65 + ], + [ + 23.39, + 58.51 + ], + [ + 23.13, + 58.54 + ], + [ + 23.31, + 58.43 + ], + [ + 22.3, + 58.2 + ], + [ + 22.02, + 57.92 + ], + [ + 22.22, + 58.14 + ], + [ + 21.83, + 58.28 + ], + [ + 22.02, + 58.37 + ], + [ + 21.84, + 58.48 + ], + [ + 22.11, + 58.42 + ], + [ + 22.54, + 58.64 + ], + [ + 23.15, + 58.56 + ] + ] + ] + ] + }, + "properties": { + "A3": "EST" + } + }, + { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + -157.34, + 1.84 + ], + [ + -157.17, + 1.7 + ], + [ + -157.56, + 1.88 + ], + [ + -157.34, + 1.84 + ] + ] + ], + [ + [ + [ + -157.48, + 1.98 + ], + [ + -157.31, + 1.98 + ], + [ + -157.34, + 1.85 + ], + [ + -157.48, + 1.98 + ] + ] + ], + [ + [ + [ + 173.04, + 1.81 + ], + [ + 172.99, + 1.71 + ], + [ + 172.91, + 1.95 + ], + [ + 173.04, + 1.81 + ] + ] + ] + ] + }, + "properties": { + "A3": "KIR" + } + }, + { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + -85.69, + 11.08 + ], + [ + -85.61, + 11.22 + ], + [ + -84.91, + 10.94 + ], + [ + -84.68, + 11.08 + ], + [ + -84.35, + 10.99 + ], + [ + -84.35, + 10.98 + ], + [ + -84.35, + 10.97 + ], + [ + -84.35, + 10.96 + ], + [ + -84.34, + 10.95 + ], + [ + -84.33, + 10.94 + ], + [ + -84.31, + 10.92 + ], + [ + -84.3, + 10.92 + ], + [ + -84.29, + 10.9 + ], + [ + -84.28, + 10.89 + ], + [ + -84.27, + 10.89 + ], + [ + -84.26, + 10.89 + ], + [ + -84.22, + 10.86 + ], + [ + -84.22, + 10.85 + ], + [ + -84.22, + 10.84 + ], + [ + -84.22, + 10.83 + ], + [ + -84.24, + 10.82 + ], + [ + -84.24, + 10.81 + ], + [ + -84.2, + 10.78 + ], + [ + -84.19, + 10.79 + ], + [ + -84.16, + 10.79 + ], + [ + -84.15, + 10.79 + ], + [ + -84.14, + 10.79 + ], + [ + -84.13, + 10.79 + ], + [ + -84.12, + 10.76 + ], + [ + -84.11, + 10.77 + ], + [ + -84.1, + 10.77 + ], + [ + -84.09, + 10.77 + ], + [ + -84.06, + 10.77 + ], + [ + -84.04, + 10.77 + ], + [ + -84.03, + 10.79 + ], + [ + -84.02, + 10.79 + ], + [ + -84.01, + 10.77 + ], + [ + -83.99, + 10.75 + ], + [ + -83.98, + 10.75 + ], + [ + -83.97, + 10.73 + ], + [ + -83.96, + 10.73 + ], + [ + -83.94, + 10.72 + ], + [ + -83.94, + 10.71 + ], + [ + -83.92, + 10.71 + ], + [ + -83.91, + 10.71 + ], + [ + -83.9, + 10.72 + ], + [ + -83.89, + 10.72 + ], + [ + -83.86, + 10.72 + ], + [ + -83.86, + 10.73 + ], + [ + -83.8, + 10.77 + ], + [ + -83.79, + 10.77 + ], + [ + -83.77, + 10.77 + ], + [ + -83.76, + 10.78 + ], + [ + -83.74, + 10.78 + ], + [ + -83.69, + 10.79 + ], + [ + -83.67, + 10.83 + ], + [ + -83.67, + 10.84 + ], + [ + -83.7, + 10.93 + ], + [ + -83.7, + 10.94 + ], + [ + -83.68, + 10.94 + ], + [ + -83.67, + 10.93 + ], + [ + -83.6, + 10.77 + ], + [ + -83.41, + 10.34 + ], + [ + -82.56, + 9.57 + ], + [ + -82.57, + 9.56 + ], + [ + -82.58, + 9.56 + ], + [ + -82.6, + 9.56 + ], + [ + -82.6, + 9.54 + ], + [ + -82.6, + 9.53 + ], + [ + -82.62, + 9.5 + ], + [ + -82.64, + 9.49 + ], + [ + -82.65, + 9.5 + ], + [ + -82.66, + 9.5 + ], + [ + -82.67, + 9.49 + ], + [ + -82.69, + 9.51 + ], + [ + -82.7, + 9.54 + ], + [ + -82.71, + 9.54 + ], + [ + -82.72, + 9.55 + ], + [ + -82.72, + 9.56 + ], + [ + -82.73, + 9.56 + ], + [ + -82.75, + 9.59 + ], + [ + -82.75, + 9.58 + ], + [ + -82.79, + 9.6 + ], + [ + -82.81, + 9.6 + ], + [ + -82.83, + 9.61 + ], + [ + -82.84, + 9.61 + ], + [ + -82.85, + 9.62 + ], + [ + -82.86, + 9.61 + ], + [ + -82.86, + 9.59 + ], + [ + -82.88, + 9.56 + ], + [ + -82.88, + 9.55 + ], + [ + -82.94, + 9.08 + ], + [ + -82.71, + 8.92 + ], + [ + -82.92, + 8.77 + ], + [ + -82.84, + 8.48 + ], + [ + -83.05, + 8.33 + ], + [ + -82.9, + 8.04 + ], + [ + -83.15, + 8.37 + ], + [ + -83.12, + 8.6 + ], + [ + -83.46, + 8.73 + ], + [ + -83.28, + 8.39 + ], + [ + -83.57, + 8.44 + ], + [ + -83.73, + 8.6 + ], + [ + -83.54, + 8.87 + ], + [ + -83.63, + 9.05 + ], + [ + -84.25, + 9.49 + ], + [ + -84.62, + 9.58 + ], + [ + -84.77, + 10 + ], + [ + -85.36, + 10.32 + ], + [ + -85.2, + 10.03 + ], + [ + -84.86, + 9.83 + ], + [ + -85.11, + 9.56 + ], + [ + -85.25, + 9.79 + ], + [ + -85.67, + 9.9 + ], + [ + -85.88, + 10.36 + ], + [ + -85.65, + 10.75 + ], + [ + -85.95, + 10.89 + ], + [ + -85.71, + 10.93 + ], + [ + -85.69, + 11.08 + ] + ] + ], + [ + [ + [ + -82.56, + 9.56 + ], + [ + -82.55, + 9.54 + ], + [ + -82.56, + 9.54 + ], + [ + -82.57, + 9.55 + ], + [ + -82.56, + 9.56 + ] + ] + ] + ] + }, + "properties": { + "A3": "CRI" + } + }, + { + "type": "Feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + 28.39, + -28.65 + ], + [ + 28.65, + -28.57 + ], + [ + 29.36, + -29.13 + ], + [ + 29.46, + -29.34 + ], + [ + 29.16, + -29.68 + ], + [ + 29.17, + -29.92 + ], + [ + 28.4, + -30.14 + ], + [ + 28.11, + -30.68 + ], + [ + 27.74, + -30.6 + ], + [ + 27.38, + -30.33 + ], + [ + 27.41, + -30.14 + ], + [ + 27.02, + -29.62 + ], + [ + 27.36, + -29.49 + ], + [ + 27.75, + -28.9 + ], + [ + 28.39, + -28.65 + ] + ] + ] + }, + "properties": { + "A3": "LSO" + } + }, + { + "type": "Feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + -0.14, + 11.14 + ], + [ + 0.49, + 10.93 + ], + [ + 0.91, + 11 + ], + [ + 0.78, + 10.38 + ], + [ + 1.36, + 10 + ], + [ + 1.34, + 9.54 + ], + [ + 1.62, + 9.04 + ], + [ + 1.56, + 6.97 + ], + [ + 1.67, + 6.56 + ], + [ + 1.69, + 6.55 + ], + [ + 1.7, + 6.55 + ], + [ + 1.79, + 6.36 + ], + [ + 1.79, + 6.34 + ], + [ + 1.8, + 6.32 + ], + [ + 1.63, + 6.24 + ], + [ + 1.2, + 6.11 + ], + [ + 0.75, + 6.44 + ], + [ + 0.53, + 6.83 + ], + [ + 0.66, + 7.32 + ], + [ + 0.52, + 7.46 + ], + [ + 0.59, + 8.2 + ], + [ + 0.73, + 8.34 + ], + [ + 0.37, + 8.75 + ], + [ + 0.53, + 8.88 + ], + [ + 0.57, + 9.41 + ], + [ + 0.24, + 9.45 + ], + [ + 0.31, + 9.51 + ], + [ + 0.3, + 9.52 + ], + [ + 0.26, + 9.52 + ], + [ + 0.24, + 9.54 + ], + [ + 0.24, + 9.57 + ], + [ + 0.24, + 9.58 + ], + [ + 0.28, + 9.57 + ], + [ + 0.29, + 9.57 + ], + [ + 0.3, + 9.58 + ], + [ + 0.31, + 9.58 + ], + [ + 0.32, + 9.58 + ], + [ + 0.33, + 9.58 + ], + [ + 0.37, + 9.58 + ], + [ + 0.38, + 9.58 + ], + [ + 0.38, + 9.6 + ], + [ + 0.26, + 9.66 + ], + [ + 0.35, + 10.1 + ], + [ + 0.36, + 10.12 + ], + [ + 0.35, + 10.16 + ], + [ + 0.35, + 10.18 + ], + [ + 0.35, + 10.19 + ], + [ + 0.36, + 10.21 + ], + [ + 0.4, + 10.31 + ], + [ + -0.06, + 10.63 + ], + [ + 0.03, + 10.99 + ], + [ + -0.14, + 11.14 + ] + ], + [ + [ + 1.29, + 7.58 + ], + [ + 1.41, + 7.43 + ], + [ + 1.45, + 7.42 + ], + [ + 1.45, + 7.57 + ], + [ + 1.41, + 7.45 + ], + [ + 1.29, + 7.58 + ] + ] + ] + }, + "properties": { + "A3": "TGO" + } + }, + { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + 29.66, + -4.45 + ], + [ + 29.95, + -4.33 + ], + [ + 30.01, + -4.29 + ], + [ + 30.04, + -4.28 + ], + [ + 30.23, + -3.95 + ], + [ + 30.5, + -3.52 + ], + [ + 30.84, + -3.25 + ], + [ + 30.84, + -2.98 + ], + [ + 30.41, + -2.86 + ], + [ + 30.41, + -2.85 + ], + [ + 30.53, + -2.66 + ], + [ + 30.42, + -2.66 + ], + [ + 30.54, + -2.41 + ], + [ + 30.86, + -2.31 + ], + [ + 30.76, + -1.55 + ], + [ + 30.75, + -1.53 + ], + [ + 30.74, + -1.51 + ], + [ + 30.47, + -1.06 + ], + [ + 30.76, + -0.99 + ], + [ + 30.78, + -0.99 + ], + [ + 31.78, + -1 + ], + [ + 31.87, + -1.27 + ], + [ + 31.6, + -2.05 + ], + [ + 31.71, + -2.04 + ], + [ + 31.62, + -2.33 + ], + [ + 31.75, + -2.33 + ], + [ + 31.74, + -2.64 + ], + [ + 31.86, + -2.61 + ], + [ + 31.77, + -2.84 + ], + [ + 31.88, + -2.64 + ], + [ + 31.98, + -2.72 + ], + [ + 32, + -2.5 + ], + [ + 32.12, + -2.55 + ], + [ + 32.04, + -2.42 + ], + [ + 32.26, + -2.26 + ], + [ + 32.52, + -2.56 + ], + [ + 32.67, + -2.39 + ], + [ + 33, + -2.87 + ], + [ + 32.84, + -2.59 + ], + [ + 32.96, + -2.39 + ], + [ + 33.45, + -2.55 + ], + [ + 33.51, + -2.37 + ], + [ + 33.85, + -2.24 + ], + [ + 33.79, + -2.06 + ], + [ + 33.62, + -2.18 + ], + [ + 33.19, + -2.11 + ], + [ + 33.4, + -1.96 + ], + [ + 33.55, + -2.02 + ], + [ + 33.31, + -1.85 + ], + [ + 33.66, + -1.78 + ], + [ + 33.53, + -1.67 + ], + [ + 33.71, + -1.67 + ], + [ + 33.65, + -1.45 + ], + [ + 33.93, + -1.54 + ], + [ + 33.77, + -1.41 + ], + [ + 34, + -1.32 + ], + [ + 33.87, + -1.19 + ], + [ + 34.09, + -1.03 + ], + [ + 35.07, + -1.58 + ], + [ + 37.53, + -2.97 + ], + [ + 37.71, + -3.29 + ], + [ + 37.71, + -3.3 + ], + [ + 37.59, + -3.46 + ], + [ + 37.76, + -3.56 + ], + [ + 37.77, + -3.63 + ], + [ + 39.19, + -4.67 + ], + [ + 38.78, + -6.03 + ], + [ + 38.86, + -6.39 + ], + [ + 39.55, + -6.99 + ], + [ + 39.27, + -7.4 + ], + [ + 39.21, + -7.85 + ], + [ + 39.41, + -7.95 + ], + [ + 39.38, + -8.14 + ], + [ + 39.22, + -8.2 + ], + [ + 39.27, + -8.57 + ], + [ + 39.56, + -8.93 + ], + [ + 39.39, + -8.83 + ], + [ + 39.33, + -8.96 + ], + [ + 39.48, + -8.95 + ], + [ + 39.49, + -9.22 + ], + [ + 39.55, + -9.09 + ], + [ + 39.64, + -9.18 + ], + [ + 39.65, + -9.37 + ], + [ + 39.51, + -9.41 + ], + [ + 39.73, + -9.6 + ], + [ + 39.71, + -9.99 + ], + [ + 39.9, + -10.04 + ], + [ + 39.96, + -10.23 + ], + [ + 39.99, + -10.13 + ], + [ + 40.15, + -10.3 + ], + [ + 40.24, + -10.21 + ], + [ + 40.4, + -10.3 + ], + [ + 40.42, + -10.48 + ], + [ + 40.41, + -10.49 + ], + [ + 40.4, + -10.5 + ], + [ + 40.39, + -10.52 + ], + [ + 40.38, + -10.53 + ], + [ + 40.37, + -10.54 + ], + [ + 40.37, + -10.55 + ], + [ + 40.36, + -10.56 + ], + [ + 40.35, + -10.57 + ], + [ + 40.33, + -10.57 + ], + [ + 40.3, + -10.57 + ], + [ + 40.27, + -10.58 + ], + [ + 40.25, + -10.59 + ], + [ + 40.22, + -10.61 + ], + [ + 40.21, + -10.62 + ], + [ + 40.2, + -10.64 + ], + [ + 40.18, + -10.66 + ], + [ + 40.15, + -10.68 + ], + [ + 40.14, + -10.69 + ], + [ + 40.13, + -10.7 + ], + [ + 40.12, + -10.7 + ], + [ + 40.11, + -10.72 + ], + [ + 40.1, + -10.72 + ], + [ + 40.09, + -10.74 + ], + [ + 40.07, + -10.75 + ], + [ + 40.05, + -10.76 + ], + [ + 40.04, + -10.78 + ], + [ + 40.03, + -10.78 + ], + [ + 40.02, + -10.79 + ], + [ + 40.01, + -10.8 + ], + [ + 39.99, + -10.81 + ], + [ + 39.98, + -10.81 + ], + [ + 39.97, + -10.81 + ], + [ + 39.96, + -10.82 + ], + [ + 39.94, + -10.82 + ], + [ + 39.92, + -10.83 + ], + [ + 39.9, + -10.84 + ], + [ + 39.9, + -10.85 + ], + [ + 39.84, + -10.87 + ], + [ + 39.83, + -10.87 + ], + [ + 39.79, + -10.9 + ], + [ + 39.78, + -10.91 + ], + [ + 39.76, + -10.92 + ], + [ + 39.74, + -10.92 + ], + [ + 39.7, + -10.93 + ], + [ + 39.68, + -10.93 + ], + [ + 39.65, + -10.94 + ], + [ + 39.64, + -10.94 + ], + [ + 39.63, + -10.94 + ], + [ + 39.61, + -10.95 + ], + [ + 39.6, + -10.95 + ], + [ + 39.59, + -10.96 + ], + [ + 39.58, + -10.96 + ], + [ + 39.57, + -10.97 + ], + [ + 39.56, + -10.97 + ], + [ + 39.55, + -10.97 + ], + [ + 39.54, + -10.97 + ], + [ + 39.52, + -10.98 + ], + [ + 39.5, + -11 + ], + [ + 39.5, + -11.01 + ], + [ + 39.48, + -11.01 + ], + [ + 39.47, + -11.02 + ], + [ + 39.44, + -11.04 + ], + [ + 39.42, + -11.06 + ], + [ + 39.41, + -11.06 + ], + [ + 39.39, + -11.07 + ], + [ + 39.35, + -11.09 + ], + [ + 39.34, + -11.09 + ], + [ + 39.32, + -11.11 + ], + [ + 39.32, + -11.12 + ], + [ + 39.27, + -11.16 + ], + [ + 39.26, + -11.17 + ], + [ + 39.2, + -11.17 + ], + [ + 39.2, + -11.16 + ], + [ + 39.17, + -11.15 + ], + [ + 39.16, + -11.15 + ], + [ + 39.11, + -11.15 + ], + [ + 39.03, + -11.16 + ], + [ + 39.02, + -11.17 + ], + [ + 38.99, + -11.16 + ], + [ + 38.94, + -11.17 + ], + [ + 38.91, + -11.17 + ], + [ + 38.86, + -11.2 + ], + [ + 38.82, + -11.23 + ], + [ + 38.79, + -11.24 + ], + [ + 38.77, + -11.25 + ], + [ + 38.76, + -11.27 + ], + [ + 38.69, + -11.27 + ], + [ + 38.68, + -11.28 + ], + [ + 38.67, + -11.27 + ], + [ + 38.66, + -11.28 + ], + [ + 38.65, + -11.28 + ], + [ + 38.64, + -11.28 + ], + [ + 38.62, + -11.3 + ], + [ + 38.61, + -11.31 + ], + [ + 38.6, + -11.32 + ], + [ + 38.58, + -11.34 + ], + [ + 38.54, + -11.36 + ], + [ + 38.53, + -11.37 + ], + [ + 38.52, + -11.39 + ], + [ + 38.5, + -11.41 + ], + [ + 38.46, + -11.42 + ], + [ + 38.46, + -11.41 + ], + [ + 38.45, + -11.41 + ], + [ + 38.44, + -11.4 + ], + [ + 38.42, + -11.39 + ], + [ + 38.41, + -11.39 + ], + [ + 38.4, + -11.39 + ], + [ + 38.39, + -11.38 + ], + [ + 38.38, + -11.38 + ], + [ + 38.36, + -11.37 + ], + [ + 38.36, + -11.35 + ], + [ + 38.34, + -11.34 + ], + [ + 38.31, + -11.33 + ], + [ + 38.28, + -11.33 + ], + [ + 38.28, + -11.31 + ], + [ + 38.28, + -11.3 + ], + [ + 38.26, + -11.29 + ], + [ + 38.25, + -11.29 + ], + [ + 38.24, + -11.28 + ], + [ + 38.23, + -11.28 + ], + [ + 38.16, + -11.27 + ], + [ + 38.15, + -11.27 + ], + [ + 38.08, + -11.27 + ], + [ + 38.07, + -11.27 + ], + [ + 38.04, + -11.27 + ], + [ + 38, + -11.26 + ], + [ + 37.99, + -11.26 + ], + [ + 37.95, + -11.26 + ], + [ + 37.93, + -11.26 + ], + [ + 37.92, + -11.26 + ], + [ + 37.91, + -11.27 + ], + [ + 37.89, + -11.28 + ], + [ + 37.62, + -11.61 + ], + [ + 37.16, + -11.63 + ], + [ + 37.15, + -11.63 + ], + [ + 37.13, + -11.63 + ], + [ + 36.92, + -11.6 + ], + [ + 36.9, + -11.6 + ], + [ + 36.88, + -11.59 + ], + [ + 36.86, + -11.59 + ], + [ + 36.65, + -11.73 + ], + [ + 36.64, + -11.73 + ], + [ + 36.63, + -11.74 + ], + [ + 36.62, + -11.74 + ], + [ + 36.61, + -11.71 + ], + [ + 36.59, + -11.7 + ], + [ + 36.52, + -11.7 + ], + [ + 36.51, + -11.7 + ], + [ + 36.28, + -11.72 + ], + [ + 36.13, + -11.54 + ], + [ + 35.83, + -11.41 + ], + [ + 35.64, + -11.56 + ], + [ + 34.96, + -11.57 + ], + [ + 34.96, + -11.56 + ], + [ + 34.96, + -11.51 + ], + [ + 34.96, + -11.5 + ], + [ + 34.95, + -11.49 + ], + [ + 34.93, + -11.45 + ], + [ + 34.92, + -11.43 + ], + [ + 34.93, + -11.41 + ], + [ + 34.89, + -11.37 + ], + [ + 34.88, + -11.37 + ], + [ + 34.87, + -11.36 + ], + [ + 34.84, + -11.34 + ], + [ + 34.81, + -11.33 + ], + [ + 34.8, + -11.29 + ], + [ + 34.77, + -11.25 + ], + [ + 34.77, + -11.24 + ], + [ + 34.76, + -11.22 + ], + [ + 34.74, + -11.2 + ], + [ + 34.72, + -11.19 + ], + [ + 34.7, + -11.16 + ], + [ + 34.67, + -11.14 + ], + [ + 34.66, + -11.14 + ], + [ + 34.64, + -11.1 + ], + [ + 34.64, + -11.07 + ], + [ + 34.63, + -11.05 + ], + [ + 34.61, + -11.03 + ], + [ + 34.64, + -10.98 + ], + [ + 34.64, + -10.97 + ], + [ + 34.65, + -10.97 + ], + [ + 34.66, + -10.95 + ], + [ + 34.67, + -10.93 + ], + [ + 34.68, + -10.92 + ], + [ + 34.68, + -10.9 + ], + [ + 34.68, + -10.86 + ], + [ + 34.67, + -10.84 + ], + [ + 34.68, + -10.83 + ], + [ + 34.68, + -10.82 + ], + [ + 34.67, + -10.79 + ], + [ + 34.68, + -10.78 + ], + [ + 34.68, + -10.77 + ], + [ + 34.68, + -10.76 + ], + [ + 34.68, + -10.75 + ], + [ + 34.67, + -10.74 + ], + [ + 34.65, + -10.71 + ], + [ + 34.66, + -10.68 + ], + [ + 34.64, + -10.65 + ], + [ + 34.63, + -10.63 + ], + [ + 34.63, + -10.61 + ], + [ + 34.6, + -10.58 + ], + [ + 34.59, + -10.57 + ], + [ + 34.58, + -10.57 + ], + [ + 34.58, + -10.55 + ], + [ + 34.57, + -10.52 + ], + [ + 34.6, + -10.48 + ], + [ + 34.59, + -10.48 + ], + [ + 34.59, + -10.47 + ], + [ + 34.59, + -10.45 + ], + [ + 34.57, + -10.44 + ], + [ + 34.56, + -10.42 + ], + [ + 34.56, + -10.4 + ], + [ + 34.57, + -10.38 + ], + [ + 34.58, + -10.34 + ], + [ + 34.58, + -10.3 + ], + [ + 34.58, + -10.28 + ], + [ + 34.58, + -10.27 + ], + [ + 34.57, + -10.25 + ], + [ + 34.57, + -10.24 + ], + [ + 34.57, + -10.22 + ], + [ + 34.57, + -10.21 + ], + [ + 34.57, + -10.2 + ], + [ + 34.55, + -10.17 + ], + [ + 34.54, + -10.15 + ], + [ + 34.52, + -10.12 + ], + [ + 34.54, + -10.09 + ], + [ + 34.54, + -10.08 + ], + [ + 34.54, + -10.07 + ], + [ + 34.52, + -10.03 + ], + [ + 34.5, + -9.99 + ], + [ + 34.48, + -9.97 + ], + [ + 34.47, + -9.96 + ], + [ + 34.46, + -9.95 + ], + [ + 34.45, + -9.95 + ], + [ + 34.45, + -9.94 + ], + [ + 34.44, + -9.93 + ], + [ + 34.43, + -9.9 + ], + [ + 34.41, + -9.88 + ], + [ + 34.4, + -9.86 + ], + [ + 34.39, + -9.86 + ], + [ + 34.37, + -9.83 + ], + [ + 34.36, + -9.82 + ], + [ + 34.34, + -9.79 + ], + [ + 34.34, + -9.78 + ], + [ + 34.33, + -9.77 + ], + [ + 34.3, + -9.73 + ], + [ + 34.28, + -9.71 + ], + [ + 34.26, + -9.69 + ], + [ + 34.23, + -9.67 + ], + [ + 34.21, + -9.65 + ], + [ + 34.19, + -9.63 + ], + [ + 34.17, + -9.61 + ], + [ + 34.13, + -9.58 + ], + [ + 34.1, + -9.55 + ], + [ + 34.09, + -9.54 + ], + [ + 34.07, + -9.53 + ], + [ + 34.05, + -9.5 + ], + [ + 34.04, + -9.49 + ], + [ + 34.03, + -9.49 + ], + [ + 33.99, + -9.52 + ], + [ + 33.95, + -9.56 + ], + [ + 33.95, + -9.58 + ], + [ + 33.95, + -9.61 + ], + [ + 33.96, + -9.61 + ], + [ + 33.96, + -9.63 + ], + [ + 33.95, + -9.64 + ], + [ + 33.96, + -9.65 + ], + [ + 33.95, + -9.66 + ], + [ + 33.95, + -9.67 + ], + [ + 33.94, + -9.68 + ], + [ + 33.94, + -9.69 + ], + [ + 33.94, + -9.71 + ], + [ + 33.94, + -9.72 + ], + [ + 33.82, + -9.64 + ], + [ + 33.8, + -9.61 + ], + [ + 33.71, + -9.6 + ], + [ + 33.71, + -9.61 + ], + [ + 33.64, + -9.6 + ], + [ + 32.95, + -9.4 + ], + [ + 32.8, + -9.33 + ], + [ + 32.79, + -9.32 + ], + [ + 32.78, + -9.32 + ], + [ + 31.98, + -9.07 + ], + [ + 31.55, + -8.69 + ], + [ + 31.19, + -8.59 + ], + [ + 30.63, + -7.64 + ], + [ + 30.57, + -6.97 + ], + [ + 30.15, + -6.46 + ], + [ + 29.97, + -6.5 + ], + [ + 29.71, + -6.28 + ], + [ + 29.95, + -5.79 + ], + [ + 29.75, + -5.46 + ], + [ + 29.79, + -5 + ], + [ + 29.6, + -4.92 + ], + [ + 29.66, + -4.45 + ] + ], + [ + [ + 35.82, + -3.4 + ], + [ + 35.74, + -3.86 + ], + [ + 35.89, + -3.67 + ], + [ + 35.82, + -3.4 + ] + ], + [ + [ + 35.95, + -6.88 + ], + [ + 35.64, + -7.16 + ], + [ + 35.98, + -7.14 + ], + [ + 35.88, + -7.08 + ], + [ + 35.95, + -6.88 + ] + ], + [ + [ + 35.04, + -5.97 + ], + [ + 35.16, + -6.25 + ], + [ + 35.35, + -6.18 + ], + [ + 35.24, + -5.99 + ], + [ + 35.04, + -5.97 + ] + ], + [ + [ + 34.32, + -3.98 + ], + [ + 34.19, + -4.13 + ], + [ + 34.39, + -4.04 + ], + [ + 34.32, + -3.98 + ] + ], + [ + [ + 31.14, + -5.18 + ], + [ + 31.04, + -5.22 + ], + [ + 31.21, + -5.27 + ], + [ + 31.14, + -5.18 + ] + ], + [ + [ + 31.02, + -4.96 + ], + [ + 30.93, + -5 + ], + [ + 31.11, + -5 + ], + [ + 31.02, + -4.96 + ] + ], + [ + [ + 35.23, + -3.38 + ], + [ + 34.8, + -3.6 + ], + [ + 34.79, + -3.82 + ], + [ + 35.24, + -3.62 + ], + [ + 35.35, + -3.47 + ], + [ + 35.23, + -3.38 + ] + ], + [ + [ + 31.74, + -7.45 + ], + [ + 31.52, + -7.58 + ], + [ + 31.83, + -7.8 + ], + [ + 32.01, + -8.19 + ], + [ + 32.19, + -8.27 + ], + [ + 32.34, + -8.17 + ], + [ + 32.65, + -8.48 + ], + [ + 32.93, + -8.49 + ], + [ + 32.61, + -8.06 + ], + [ + 31.86, + -7.42 + ], + [ + 31.74, + -7.45 + ] + ] + ], + [ + [ + [ + 31.82, + -1 + ], + [ + 31.83, + -1 + ], + [ + 31.83, + -1.01 + ], + [ + 31.82, + -1 + ] + ] + ], + [ + [ + [ + 39.73, + -5.2 + ], + [ + 39.68, + -4.86 + ], + [ + 39.87, + -4.91 + ], + [ + 39.73, + -5.47 + ], + [ + 39.63, + -5.4 + ], + [ + 39.73, + -5.2 + ] + ] + ], + [ + [ + [ + 39.19, + -6.17 + ], + [ + 39.3, + -5.72 + ], + [ + 39.57, + -6.44 + ], + [ + 39.19, + -6.17 + ] + ] + ], + [ + [ + [ + 39.8, + -7.9 + ], + [ + 39.59, + -7.94 + ], + [ + 39.91, + -7.64 + ], + [ + 39.8, + -7.9 + ] + ] + ], + [ + [ + [ + 32.85, + -2.02 + ], + [ + 32.93, + -1.89 + ], + [ + 33.17, + -2.15 + ], + [ + 32.85, + -2.02 + ] + ] + ], + [ + [ + [ + 31.82, + -2.28 + ], + [ + 31.93, + -2.42 + ], + [ + 31.82, + -2.48 + ], + [ + 31.82, + -2.28 + ] + ] + ] + ] + }, + "properties": { + "A3": "TZA" + } + }, + { + "type": "Feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + 23.7, + 9.67 + ], + [ + 24.84, + 9.82 + ], + [ + 25.05, + 10.02 + ], + [ + 25.1, + 10.32 + ], + [ + 25.76, + 10.44 + ], + [ + 25.93, + 10.39 + ], + [ + 25.93, + 10.18 + ], + [ + 26.39, + 9.56 + ], + [ + 27.91, + 9.61 + ], + [ + 27.83, + 10.17 + ], + [ + 29, + 10.17 + ], + [ + 29, + 9.67 + ], + [ + 29.54, + 9.75 + ], + [ + 29.54, + 10.08 + ], + [ + 29.84, + 10.24 + ], + [ + 29.89, + 10.26 + ], + [ + 29.94, + 10.29 + ], + [ + 29.97, + 10.29 + ], + [ + 30, + 10.29 + ], + [ + 30.84, + 9.75 + ], + [ + 30.85, + 9.75 + ], + [ + 31.33, + 9.78 + ], + [ + 31.99, + 10.65 + ], + [ + 32.47, + 11.04 + ], + [ + 32.39, + 11.71 + ], + [ + 32.17, + 11.95 + ], + [ + 32.75, + 11.97 + ], + [ + 32.76, + 11.98 + ], + [ + 32.76, + 12.01 + ], + [ + 32.76, + 12.03 + ], + [ + 32.75, + 12.04 + ], + [ + 32.75, + 12.06 + ], + [ + 32.76, + 12.07 + ], + [ + 32.75, + 12.1 + ], + [ + 32.75, + 12.11 + ], + [ + 32.74, + 12.14 + ], + [ + 32.74, + 12.16 + ], + [ + 32.74, + 12.18 + ], + [ + 32.74, + 12.2 + ], + [ + 32.74, + 12.22 + ], + [ + 32.73, + 12.23 + ], + [ + 32.74, + 12.24 + ], + [ + 33.29, + 12.22 + ], + [ + 33.14, + 11.44 + ], + [ + 33.25, + 10.78 + ], + [ + 33.97, + 10.15 + ], + [ + 33.88, + 9.5 + ], + [ + 34.11, + 9.5 + ], + [ + 34.14, + 8.6 + ], + [ + 33.77, + 8.37 + ], + [ + 33.22, + 8.44 + ], + [ + 33.04, + 7.99 + ], + [ + 33, + 7.94 + ], + [ + 33.01, + 7.93 + ], + [ + 33, + 7.91 + ], + [ + 33.01, + 7.91 + ], + [ + 33.01, + 7.9 + ], + [ + 33.02, + 7.89 + ], + [ + 33.05, + 7.8 + ], + [ + 33.72, + 7.66 + ], + [ + 34.29, + 6.95 + ], + [ + 34.94, + 6.56 + ], + [ + 35.13, + 5.62 + ], + [ + 35.32, + 5.33 + ], + [ + 35.54, + 5.42 + ], + [ + 35.86, + 5.32 + ], + [ + 35.82, + 4.77 + ], + [ + 35.94, + 4.62 + ], + [ + 35.7, + 4.62 + ], + [ + 35.61, + 4.62 + ], + [ + 35.51, + 4.62 + ], + [ + 35.48, + 4.91 + ], + [ + 35.31, + 4.91 + ], + [ + 35.32, + 5.02 + ], + [ + 34.39, + 4.61 + ], + [ + 33.99, + 4.23 + ], + [ + 33.51, + 3.75 + ], + [ + 33.03, + 3.89 + ], + [ + 32.42, + 3.75 + ], + [ + 32.2, + 3.51 + ], + [ + 32.02, + 3.58 + ], + [ + 32.01, + 3.58 + ], + [ + 32, + 3.58 + ], + [ + 31.99, + 3.58 + ], + [ + 31.98, + 3.58 + ], + [ + 31.8, + 3.82 + ], + [ + 31.52, + 3.64 + ], + [ + 31.17, + 3.8 + ], + [ + 30.89, + 3.55 + ], + [ + 30.89, + 3.54 + ], + [ + 30.88, + 3.54 + ], + [ + 30.88, + 3.53 + ], + [ + 30.88, + 3.52 + ], + [ + 30.87, + 3.52 + ], + [ + 30.87, + 3.51 + ], + [ + 30.87, + 3.5 + ], + [ + 30.87, + 3.49 + ], + [ + 30.86, + 3.49 + ], + [ + 30.85, + 3.49 + ], + [ + 30.85, + 3.5 + ], + [ + 30.78, + 3.68 + ], + [ + 30.56, + 3.62 + ], + [ + 30.55, + 3.84 + ], + [ + 30.21, + 3.94 + ], + [ + 29.66, + 4.65 + ], + [ + 29.49, + 4.69 + ], + [ + 29.22, + 4.34 + ], + [ + 28.78, + 4.56 + ], + [ + 28.38, + 4.29 + ], + [ + 27.79, + 4.61 + ], + [ + 27.77, + 4.79 + ], + [ + 27.44, + 5.02 + ], + [ + 27.21, + 5.72 + ], + [ + 26.51, + 6.07 + ], + [ + 26.58, + 6.2 + ], + [ + 26.33, + 6.36 + ], + [ + 26.43, + 6.65 + ], + [ + 25.21, + 7.5 + ], + [ + 25.22, + 7.87 + ], + [ + 24.86, + 8.17 + ], + [ + 24.17, + 8.33 + ], + [ + 24.26, + 8.69 + ], + [ + 23.51, + 8.72 + ], + [ + 23.58, + 8.99 + ], + [ + 23.45, + 9.03 + ], + [ + 23.65, + 9.28 + ], + [ + 23.7, + 9.67 + ] + ] + ] + }, + "properties": { + "A3": "SSD" + } + }, + { + "type": "Feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + 81.03, + 30.2 + ], + [ + 81.25, + 30.01 + ], + [ + 81.42, + 30.37 + ], + [ + 81.82, + 30.38 + ], + [ + 81.83, + 30.37 + ], + [ + 82.11, + 30.35 + ], + [ + 82.17, + 30.07 + ], + [ + 82.55, + 29.96 + ], + [ + 82.69, + 29.76 + ], + [ + 83.28, + 29.57 + ], + [ + 83.58, + 29.18 + ], + [ + 83.9, + 29.33 + ], + [ + 84.2, + 29.24 + ], + [ + 84.23, + 28.89 + ], + [ + 84.86, + 28.57 + ], + [ + 85.11, + 28.69 + ], + [ + 85.11, + 28.35 + ], + [ + 85.36, + 28.29 + ], + [ + 85.38, + 28.28 + ], + [ + 85.39, + 28.28 + ], + [ + 85.61, + 28.26 + ], + [ + 85.71, + 28.39 + ], + [ + 86, + 27.91 + ], + [ + 86.19, + 28.17 + ], + [ + 86.41, + 27.91 + ], + [ + 86.72, + 28.11 + ], + [ + 87.16, + 27.82 + ], + [ + 87.66, + 27.81 + ], + [ + 87.67, + 27.81 + ], + [ + 87.68, + 27.81 + ], + [ + 87.69, + 27.81 + ], + [ + 87.7, + 27.81 + ], + [ + 87.71, + 27.81 + ], + [ + 87.73, + 27.81 + ], + [ + 87.74, + 27.81 + ], + [ + 87.74, + 27.82 + ], + [ + 87.74, + 27.83 + ], + [ + 87.75, + 27.84 + ], + [ + 87.77, + 27.86 + ], + [ + 87.78, + 27.86 + ], + [ + 87.78, + 27.87 + ], + [ + 87.78, + 27.88 + ], + [ + 87.78, + 27.89 + ], + [ + 87.79, + 27.9 + ], + [ + 87.8, + 27.91 + ], + [ + 87.81, + 27.91 + ], + [ + 87.81, + 27.92 + ], + [ + 87.82, + 27.92 + ], + [ + 87.83, + 27.92 + ], + [ + 87.83, + 27.93 + ], + [ + 87.83, + 27.94 + ], + [ + 87.83, + 27.95 + ], + [ + 87.86, + 27.94 + ], + [ + 87.86, + 27.92 + ], + [ + 87.86, + 27.91 + ], + [ + 87.87, + 27.91 + ], + [ + 87.88, + 27.91 + ], + [ + 87.9, + 27.91 + ], + [ + 87.91, + 27.92 + ], + [ + 87.93, + 27.92 + ], + [ + 87.94, + 27.91 + ], + [ + 87.97, + 27.89 + ], + [ + 87.98, + 27.89 + ], + [ + 88, + 27.89 + ], + [ + 88.02, + 27.9 + ], + [ + 88.04, + 27.9 + ], + [ + 88.05, + 27.9 + ], + [ + 88.06, + 27.89 + ], + [ + 88.07, + 27.89 + ], + [ + 88.08, + 27.89 + ], + [ + 88.08, + 27.9 + ], + [ + 88.09, + 27.89 + ], + [ + 88.1, + 27.87 + ], + [ + 88.11, + 27.87 + ], + [ + 88.12, + 27.87 + ], + [ + 88.14, + 27.88 + ], + [ + 88.15, + 27.7 + ], + [ + 88.06, + 27.53 + ], + [ + 88.07, + 27.53 + ], + [ + 88.07, + 27.45 + ], + [ + 88.07, + 27.44 + ], + [ + 88.07, + 27.43 + ], + [ + 88.08, + 27.43 + ], + [ + 88.07, + 27.43 + ], + [ + 88.07, + 27.42 + ], + [ + 88.06, + 27.42 + ], + [ + 88.05, + 27.42 + ], + [ + 88.05, + 27.41 + ], + [ + 88.05, + 27.4 + ], + [ + 88.05, + 27.39 + ], + [ + 88.04, + 27.39 + ], + [ + 88.05, + 27.39 + ], + [ + 88.04, + 27.39 + ], + [ + 88.04, + 27.38 + ], + [ + 88.04, + 27.37 + ], + [ + 88.05, + 27.37 + ], + [ + 88.05, + 27.36 + ], + [ + 88.06, + 27.35 + ], + [ + 88.07, + 27.34 + ], + [ + 88.06, + 27.33 + ], + [ + 88.03, + 27.29 + ], + [ + 88.02, + 27.24 + ], + [ + 88.02, + 27.23 + ], + [ + 88.02, + 27.22 + ], + [ + 88.01, + 27.22 + ], + [ + 88.01, + 27.21 + ], + [ + 88.02, + 27.21 + ], + [ + 88.01, + 27.21 + ], + [ + 88.01, + 27.2 + ], + [ + 88.02, + 27.2 + ], + [ + 88.02, + 27.19 + ], + [ + 88.01, + 27.19 + ], + [ + 88.01, + 27.18 + ], + [ + 88.02, + 27.17 + ], + [ + 88.01, + 27.17 + ], + [ + 88.01, + 27.16 + ], + [ + 88.01, + 27.15 + ], + [ + 88.01, + 27.14 + ], + [ + 88, + 27.14 + ], + [ + 88, + 27.13 + ], + [ + 87.99, + 27.13 + ], + [ + 87.99, + 27.12 + ], + [ + 87.99, + 27.11 + ], + [ + 88.17, + 26.82 + ], + [ + 88.18, + 26.82 + ], + [ + 88.18, + 26.81 + ], + [ + 88.18, + 26.8 + ], + [ + 88.19, + 26.75 + ], + [ + 88.18, + 26.73 + ], + [ + 88.18, + 26.71 + ], + [ + 88.17, + 26.71 + ], + [ + 88.17, + 26.7 + ], + [ + 88.17, + 26.69 + ], + [ + 88.17, + 26.68 + ], + [ + 88.13, + 26.59 + ], + [ + 88.11, + 26.56 + ], + [ + 88.11, + 26.57 + ], + [ + 88.11, + 26.55 + ], + [ + 88.11, + 26.54 + ], + [ + 88.1, + 26.51 + ], + [ + 88.07, + 26.41 + ], + [ + 88.06, + 26.41 + ], + [ + 87.92, + 26.43 + ], + [ + 87.92, + 26.45 + ], + [ + 87.91, + 26.45 + ], + [ + 87.8, + 26.47 + ], + [ + 87.78, + 26.43 + ], + [ + 87.68, + 26.43 + ], + [ + 87.68, + 26.42 + ], + [ + 87.62, + 26.39 + ], + [ + 87.59, + 26.39 + ], + [ + 87.58, + 26.39 + ], + [ + 87.45, + 26.44 + ], + [ + 87.34, + 26.35 + ], + [ + 87.07, + 26.59 + ], + [ + 86.94, + 26.52 + ], + [ + 87.01, + 26.68 + ], + [ + 86.8, + 26.45 + ], + [ + 86.75, + 26.43 + ], + [ + 86.4, + 26.59 + ], + [ + 86.15, + 26.61 + ], + [ + 86.14, + 26.61 + ], + [ + 86.12, + 26.63 + ], + [ + 86.1, + 26.64 + ], + [ + 86.09, + 26.64 + ], + [ + 86.06, + 26.66 + ], + [ + 86.01, + 26.66 + ], + [ + 86.01, + 26.65 + ], + [ + 86.01, + 26.66 + ], + [ + 86, + 26.66 + ], + [ + 85.99, + 26.66 + ], + [ + 85.98, + 26.66 + ], + [ + 85.97, + 26.66 + ], + [ + 85.97, + 26.65 + ], + [ + 85.97, + 26.66 + ], + [ + 85.97, + 26.65 + ], + [ + 85.96, + 26.65 + ], + [ + 85.96, + 26.63 + ], + [ + 85.95, + 26.63 + ], + [ + 85.95, + 26.62 + ], + [ + 85.92, + 26.61 + ], + [ + 85.91, + 26.61 + ], + [ + 85.9, + 26.59 + ], + [ + 85.89, + 26.59 + ], + [ + 85.78, + 26.63 + ], + [ + 85.63, + 26.87 + ], + [ + 85.34, + 26.75 + ], + [ + 85.33, + 26.74 + ], + [ + 85.17, + 26.87 + ], + [ + 85.16, + 26.87 + ], + [ + 84.64, + 27.05 + ], + [ + 84.62, + 27.34 + ], + [ + 84.15, + 27.52 + ], + [ + 83.92, + 27.45 + ], + [ + 83.91, + 27.44 + ], + [ + 83.9, + 27.44 + ], + [ + 83.89, + 27.44 + ], + [ + 83.87, + 27.43 + ], + [ + 83.86, + 27.39 + ], + [ + 83.85, + 27.39 + ], + [ + 83.86, + 27.37 + ], + [ + 83.85, + 27.36 + ], + [ + 83.39, + 27.48 + ], + [ + 83.3, + 27.33 + ], + [ + 83.1, + 27.45 + ], + [ + 83.09, + 27.45 + ], + [ + 82.74, + 27.5 + ], + [ + 82.71, + 27.72 + ], + [ + 82.45, + 27.68 + ], + [ + 82.07, + 27.92 + ], + [ + 81.77, + 27.93 + ], + [ + 81.76, + 27.94 + ], + [ + 81.74, + 27.95 + ], + [ + 81.73, + 27.97 + ], + [ + 81.32, + 28.13 + ], + [ + 81.2, + 28.36 + ], + [ + 81.19, + 28.36 + ], + [ + 81.04, + 28.41 + ], + [ + 81.03, + 28.4 + ], + [ + 81.02, + 28.43 + ], + [ + 81.02, + 28.44 + ], + [ + 80.97, + 28.44 + ], + [ + 80.97, + 28.45 + ], + [ + 80.9, + 28.47 + ], + [ + 80.9, + 28.48 + ], + [ + 80.9, + 28.5 + ], + [ + 80.86, + 28.5 + ], + [ + 80.85, + 28.5 + ], + [ + 80.77, + 28.56 + ], + [ + 80.73, + 28.57 + ], + [ + 80.72, + 28.57 + ], + [ + 80.71, + 28.57 + ], + [ + 80.71, + 28.58 + ], + [ + 80.7, + 28.58 + ], + [ + 80.7, + 28.6 + ], + [ + 80.69, + 28.6 + ], + [ + 80.68, + 28.6 + ], + [ + 80.68, + 28.61 + ], + [ + 80.68, + 28.62 + ], + [ + 80.67, + 28.63 + ], + [ + 80.67, + 28.64 + ], + [ + 80.66, + 28.64 + ], + [ + 80.63, + 28.64 + ], + [ + 80.62, + 28.64 + ], + [ + 80.61, + 28.65 + ], + [ + 80.6, + 28.65 + ], + [ + 80.59, + 28.68 + ], + [ + 80.58, + 28.69 + ], + [ + 80.57, + 28.69 + ], + [ + 80.55, + 28.69 + ], + [ + 80.54, + 28.69 + ], + [ + 80.51, + 28.67 + ], + [ + 80.5, + 28.67 + ], + [ + 80.51, + 28.65 + ], + [ + 80.52, + 28.55 + ], + [ + 80.2, + 28.77 + ], + [ + 80.12, + 28.82 + ], + [ + 80.12, + 28.83 + ], + [ + 80.11, + 28.83 + ], + [ + 80.12, + 28.98 + ], + [ + 80.13, + 29.07 + ], + [ + 80.14, + 29.09 + ], + [ + 80.16, + 29.11 + ], + [ + 80.18, + 29.13 + ], + [ + 80.18, + 29.14 + ], + [ + 80.22, + 29.12 + ], + [ + 80.24, + 29.13 + ], + [ + 80.25, + 29.13 + ], + [ + 80.27, + 29.14 + ], + [ + 80.27, + 29.15 + ], + [ + 80.24, + 29.21 + ], + [ + 80.26, + 29.21 + ], + [ + 80.27, + 29.21 + ], + [ + 80.3, + 29.21 + ], + [ + 80.29, + 29.21 + ], + [ + 80.29, + 29.23 + ], + [ + 80.32, + 29.31 + ], + [ + 80.28, + 29.34 + ], + [ + 80.25, + 29.42 + ], + [ + 80.24, + 29.42 + ], + [ + 80.25, + 29.44 + ], + [ + 80.24, + 29.44 + ], + [ + 80.27, + 29.45 + ], + [ + 80.27, + 29.46 + ], + [ + 80.29, + 29.48 + ], + [ + 80.31, + 29.49 + ], + [ + 80.31, + 29.5 + ], + [ + 80.33, + 29.51 + ], + [ + 80.36, + 29.53 + ], + [ + 80.35, + 29.54 + ], + [ + 80.35, + 29.56 + ], + [ + 80.36, + 29.56 + ], + [ + 80.51, + 29.82 + ], + [ + 80.55, + 29.86 + ], + [ + 81.03, + 30.2 + ] + ] + ] + }, + "properties": { + "A3": "NPL" + } + }, + { + "type": "Feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + 70.98, + 40.23 + ], + [ + 70.5, + 39.93 + ], + [ + 70.55, + 40.04 + ], + [ + 70.02, + 40.23 + ], + [ + 69.54, + 40.12 + ], + [ + 69.54, + 39.93 + ], + [ + 69.35, + 40.02 + ], + [ + 69.3, + 39.92 + ], + [ + 69.34, + 39.54 + ], + [ + 70.53, + 39.62 + ], + [ + 70.89, + 39.38 + ], + [ + 71.5, + 39.61 + ], + [ + 71.79, + 39.28 + ], + [ + 72.04, + 39.37 + ], + [ + 72.25, + 39.17 + ], + [ + 72.49, + 39.38 + ], + [ + 72.84, + 39.36 + ], + [ + 73.6, + 39.46 + ], + [ + 73.55, + 39.33 + ], + [ + 73.56, + 39.3 + ], + [ + 73.61, + 39.25 + ], + [ + 73.63, + 39.23 + ], + [ + 73.84, + 39 + ], + [ + 73.69, + 38.85 + ], + [ + 73.8, + 38.61 + ], + [ + 74, + 38.52 + ], + [ + 74.19, + 38.64 + ], + [ + 74.7, + 38.43 + ], + [ + 75.01, + 37.78 + ], + [ + 74.93, + 37.57 + ], + [ + 75.15, + 37.41 + ], + [ + 74.89, + 37.23 + ], + [ + 74.47, + 37.43 + ], + [ + 73.65, + 37.24 + ], + [ + 73.78, + 37.44 + ], + [ + 73.59, + 37.44 + ], + [ + 73.5, + 37.47 + ], + [ + 73.49, + 37.47 + ], + [ + 73.48, + 37.47 + ], + [ + 73.47, + 37.47 + ], + [ + 73.45, + 37.47 + ], + [ + 73.41, + 37.46 + ], + [ + 73.37, + 37.46 + ], + [ + 73.29, + 37.46 + ], + [ + 73.28, + 37.45 + ], + [ + 73.26, + 37.44 + ], + [ + 73.25, + 37.44 + ], + [ + 73.23, + 37.42 + ], + [ + 73.21, + 37.41 + ], + [ + 73.21, + 37.4 + ], + [ + 73.17, + 37.41 + ], + [ + 73.15, + 37.41 + ], + [ + 73.14, + 37.39 + ], + [ + 73.13, + 37.37 + ], + [ + 73.1, + 37.36 + ], + [ + 73.1, + 37.35 + ], + [ + 73.11, + 37.34 + ], + [ + 73.1, + 37.34 + ], + [ + 73.1, + 37.33 + ], + [ + 73.02, + 37.3 + ], + [ + 73, + 37.3 + ], + [ + 72.99, + 37.3 + ], + [ + 72.87, + 37.23 + ], + [ + 72.86, + 37.23 + ], + [ + 72.82, + 37.23 + ], + [ + 72.8, + 37.22 + ], + [ + 72.8, + 37.21 + ], + [ + 72.79, + 37.21 + ], + [ + 72.78, + 37.2 + ], + [ + 72.78, + 37.19 + ], + [ + 72.77, + 37.18 + ], + [ + 72.75, + 37.15 + ], + [ + 72.75, + 37.14 + ], + [ + 72.73, + 37.11 + ], + [ + 72.69, + 37.06 + ], + [ + 72.69, + 37.05 + ], + [ + 72.65, + 37.02 + ], + [ + 72.64, + 37.03 + ], + [ + 72.6, + 37.02 + ], + [ + 72.58, + 37.01 + ], + [ + 72.56, + 37 + ], + [ + 72.55, + 37 + ], + [ + 72.53, + 37 + ], + [ + 72.49, + 37 + ], + [ + 72.47, + 37 + ], + [ + 72.46, + 37 + ], + [ + 72.43, + 37.01 + ], + [ + 72.42, + 37 + ], + [ + 72.41, + 37 + ], + [ + 72.4, + 36.99 + ], + [ + 72.39, + 36.99 + ], + [ + 72.32, + 36.98 + ], + [ + 72.31, + 36.97 + ], + [ + 72.3, + 36.97 + ], + [ + 72.28, + 36.96 + ], + [ + 72.26, + 36.95 + ], + [ + 72.23, + 36.93 + ], + [ + 72.22, + 36.93 + ], + [ + 72.19, + 36.91 + ], + [ + 72.17, + 36.89 + ], + [ + 72.16, + 36.89 + ], + [ + 72.13, + 36.87 + ], + [ + 72.12, + 36.85 + ], + [ + 72.11, + 36.85 + ], + [ + 72.07, + 36.84 + ], + [ + 72.05, + 36.83 + ], + [ + 72.05, + 36.82 + ], + [ + 72.01, + 36.79 + ], + [ + 72, + 36.79 + ], + [ + 71.96, + 36.76 + ], + [ + 71.92, + 36.74 + ], + [ + 71.91, + 36.74 + ], + [ + 71.91, + 36.73 + ], + [ + 71.9, + 36.73 + ], + [ + 71.88, + 36.71 + ], + [ + 71.87, + 36.7 + ], + [ + 71.85, + 36.69 + ], + [ + 71.85, + 36.68 + ], + [ + 71.83, + 36.68 + ], + [ + 71.65, + 36.69 + ], + [ + 71.63, + 36.7 + ], + [ + 71.62, + 36.7 + ], + [ + 71.61, + 36.72 + ], + [ + 71.6, + 36.72 + ], + [ + 71.59, + 36.74 + ], + [ + 71.58, + 36.74 + ], + [ + 71.56, + 36.77 + ], + [ + 71.56, + 36.78 + ], + [ + 71.55, + 36.81 + ], + [ + 71.55, + 36.82 + ], + [ + 71.54, + 36.84 + ], + [ + 71.53, + 36.86 + ], + [ + 71.52, + 36.87 + ], + [ + 71.51, + 36.89 + ], + [ + 71.51, + 36.9 + ], + [ + 71.5, + 36.91 + ], + [ + 71.49, + 36.92 + ], + [ + 71.49, + 36.93 + ], + [ + 71.48, + 36.94 + ], + [ + 71.47, + 36.95 + ], + [ + 71.46, + 36.97 + ], + [ + 71.46, + 37.02 + ], + [ + 71.44, + 37.05 + ], + [ + 71.43, + 37.06 + ], + [ + 71.43, + 37.09 + ], + [ + 71.44, + 37.09 + ], + [ + 71.45, + 37.21 + ], + [ + 71.46, + 37.22 + ], + [ + 71.48, + 37.23 + ], + [ + 71.5, + 37.32 + ], + [ + 71.5, + 37.37 + ], + [ + 71.49, + 37.37 + ], + [ + 71.5, + 37.44 + ], + [ + 71.52, + 37.49 + ], + [ + 71.52, + 37.5 + ], + [ + 71.5, + 37.53 + ], + [ + 71.5, + 37.54 + ], + [ + 71.5, + 37.55 + ], + [ + 71.51, + 37.58 + ], + [ + 71.51, + 37.6 + ], + [ + 71.52, + 37.62 + ], + [ + 71.53, + 37.65 + ], + [ + 71.53, + 37.68 + ], + [ + 71.54, + 37.68 + ], + [ + 71.54, + 37.69 + ], + [ + 71.55, + 37.71 + ], + [ + 71.55, + 37.73 + ], + [ + 71.55, + 37.74 + ], + [ + 71.54, + 37.75 + ], + [ + 71.59, + 37.82 + ], + [ + 71.59, + 37.83 + ], + [ + 71.59, + 37.86 + ], + [ + 71.59, + 37.88 + ], + [ + 71.59, + 37.9 + ], + [ + 71.59, + 37.92 + ], + [ + 71.57, + 37.93 + ], + [ + 71.55, + 37.94 + ], + [ + 71.51, + 37.95 + ], + [ + 71.5, + 37.95 + ], + [ + 71.49, + 37.94 + ], + [ + 71.46, + 37.93 + ], + [ + 71.45, + 37.92 + ], + [ + 71.44, + 37.92 + ], + [ + 71.43, + 37.92 + ], + [ + 71.4, + 37.91 + ], + [ + 71.38, + 37.9 + ], + [ + 71.37, + 37.9 + ], + [ + 71.33, + 37.89 + ], + [ + 71.32, + 37.91 + ], + [ + 71.29, + 37.93 + ], + [ + 71.28, + 37.92 + ], + [ + 71.26, + 37.92 + ], + [ + 71.25, + 37.93 + ], + [ + 71.27, + 37.94 + ], + [ + 71.26, + 37.95 + ], + [ + 71.28, + 37.97 + ], + [ + 71.27, + 37.99 + ], + [ + 71.28, + 38 + ], + [ + 71.28, + 38.01 + ], + [ + 71.29, + 38.02 + ], + [ + 71.3, + 38.03 + ], + [ + 71.29, + 38.03 + ], + [ + 71.28, + 38.04 + ], + [ + 71.29, + 38.04 + ], + [ + 71.3, + 38.04 + ], + [ + 71.31, + 38.06 + ], + [ + 71.32, + 38.07 + ], + [ + 71.33, + 38.1 + ], + [ + 71.33, + 38.11 + ], + [ + 71.34, + 38.11 + ], + [ + 71.34, + 38.13 + ], + [ + 71.34, + 38.14 + ], + [ + 71.35, + 38.15 + ], + [ + 71.36, + 38.15 + ], + [ + 71.37, + 38.15 + ], + [ + 71.38, + 38.16 + ], + [ + 71.37, + 38.16 + ], + [ + 71.37, + 38.17 + ], + [ + 71.37, + 38.18 + ], + [ + 71.36, + 38.2 + ], + [ + 71.37, + 38.2 + ], + [ + 71.37, + 38.21 + ], + [ + 71.38, + 38.21 + ], + [ + 71.37, + 38.22 + ], + [ + 71.37, + 38.23 + ], + [ + 71.37, + 38.24 + ], + [ + 71.37, + 38.25 + ], + [ + 71.35, + 38.27 + ], + [ + 71.33, + 38.27 + ], + [ + 71.33, + 38.28 + ], + [ + 71.33, + 38.29 + ], + [ + 71.33, + 38.3 + ], + [ + 71.33, + 38.31 + ], + [ + 71.31, + 38.3 + ], + [ + 71.31, + 38.31 + ], + [ + 71.25, + 38.31 + ], + [ + 71.25, + 38.32 + ], + [ + 71.23, + 38.32 + ], + [ + 71.22, + 38.32 + ], + [ + 71.22, + 38.33 + ], + [ + 71.2, + 38.34 + ], + [ + 71.18, + 38.35 + ], + [ + 71.18, + 38.36 + ], + [ + 71.16, + 38.39 + ], + [ + 71.15, + 38.39 + ], + [ + 71.15, + 38.4 + ], + [ + 71.14, + 38.4 + ], + [ + 71.13, + 38.4 + ], + [ + 71.11, + 38.41 + ], + [ + 71.11, + 38.42 + ], + [ + 71.1, + 38.42 + ], + [ + 71.08, + 38.42 + ], + [ + 71.07, + 38.41 + ], + [ + 71.07, + 38.4 + ], + [ + 71.06, + 38.4 + ], + [ + 71.05, + 38.4 + ], + [ + 71.05, + 38.41 + ], + [ + 71.05, + 38.42 + ], + [ + 71.04, + 38.43 + ], + [ + 71.04, + 38.44 + ], + [ + 71.03, + 38.45 + ], + [ + 71.03, + 38.46 + ], + [ + 71.01, + 38.47 + ], + [ + 71, + 38.48 + ], + [ + 70.98, + 38.49 + ], + [ + 70.98, + 38.48 + ], + [ + 70.97, + 38.48 + ], + [ + 70.97, + 38.47 + ], + [ + 70.96, + 38.46 + ], + [ + 70.96, + 38.44 + ], + [ + 70.95, + 38.44 + ], + [ + 70.93, + 38.43 + ], + [ + 70.92, + 38.43 + ], + [ + 70.91, + 38.44 + ], + [ + 70.9, + 38.45 + ], + [ + 70.89, + 38.47 + ], + [ + 70.88, + 38.47 + ], + [ + 70.86, + 38.46 + ], + [ + 70.85, + 38.44 + ], + [ + 70.84, + 38.44 + ], + [ + 70.84, + 38.45 + ], + [ + 70.83, + 38.45 + ], + [ + 70.82, + 38.45 + ], + [ + 70.81, + 38.44 + ], + [ + 70.8, + 38.44 + ], + [ + 70.8, + 38.45 + ], + [ + 70.79, + 38.45 + ], + [ + 70.78, + 38.46 + ], + [ + 70.76, + 38.43 + ], + [ + 70.75, + 38.42 + ], + [ + 70.69, + 38.41 + ], + [ + 70.68, + 38.41 + ], + [ + 70.68, + 38.39 + ], + [ + 70.69, + 38.39 + ], + [ + 70.67, + 38.36 + ], + [ + 70.66, + 38.36 + ], + [ + 70.17, + 37.93 + ], + [ + 70.2, + 37.58 + ], + [ + 70.21, + 37.57 + ], + [ + 70.2, + 37.57 + ], + [ + 70.18, + 37.57 + ], + [ + 70.18, + 37.55 + ], + [ + 70.17, + 37.53 + ], + [ + 70.16, + 37.53 + ], + [ + 70.14, + 37.52 + ], + [ + 70.13, + 37.52 + ], + [ + 70.11, + 37.52 + ], + [ + 70.05, + 37.55 + ], + [ + 70.04, + 37.55 + ], + [ + 70, + 37.56 + ], + [ + 69.97, + 37.56 + ], + [ + 69.96, + 37.57 + ], + [ + 69.95, + 37.59 + ], + [ + 69.95, + 37.6 + ], + [ + 69.66, + 37.58 + ], + [ + 69.64, + 37.58 + ], + [ + 69.44, + 37.48 + ], + [ + 69.43, + 37.48 + ], + [ + 69.39, + 37.44 + ], + [ + 69.37, + 37.42 + ], + [ + 69.37, + 37.39 + ], + [ + 69.38, + 37.39 + ], + [ + 69.38, + 37.37 + ], + [ + 69.4, + 37.35 + ], + [ + 69.38, + 37.34 + ], + [ + 69.4, + 37.33 + ], + [ + 69.42, + 37.27 + ], + [ + 69.42, + 37.26 + ], + [ + 69.46, + 37.26 + ], + [ + 69.47, + 37.25 + ], + [ + 69.45, + 37.23 + ], + [ + 69.42, + 37.18 + ], + [ + 69.39, + 37.16 + ], + [ + 69.37, + 37.17 + ], + [ + 69.36, + 37.16 + ], + [ + 69.33, + 37.13 + ], + [ + 69.32, + 37.12 + ], + [ + 69.31, + 37.11 + ], + [ + 69.3, + 37.11 + ], + [ + 69.28, + 37.11 + ], + [ + 69.26, + 37.1 + ], + [ + 69.25, + 37.1 + ], + [ + 69.24, + 37.1 + ], + [ + 69.24, + 37.13 + ], + [ + 69.21, + 37.13 + ], + [ + 69.19, + 37.14 + ], + [ + 69.16, + 37.15 + ], + [ + 69.15, + 37.16 + ], + [ + 69.14, + 37.17 + ], + [ + 69.11, + 37.18 + ], + [ + 69.1, + 37.2 + ], + [ + 69.09, + 37.22 + ], + [ + 69.07, + 37.23 + ], + [ + 69.06, + 37.24 + ], + [ + 69.02, + 37.27 + ], + [ + 69.02, + 37.28 + ], + [ + 69.02, + 37.29 + ], + [ + 68.92, + 37.28 + ], + [ + 68.92, + 37.27 + ], + [ + 68.91, + 37.27 + ], + [ + 68.9, + 37.27 + ], + [ + 68.83, + 37.26 + ], + [ + 68.82, + 37.24 + ], + [ + 68.62, + 37.2 + ], + [ + 68.61, + 37.2 + ], + [ + 68.57, + 37.18 + ], + [ + 68.55, + 37.17 + ], + [ + 68.52, + 37.16 + ], + [ + 68.48, + 37.16 + ], + [ + 68.46, + 37.14 + ], + [ + 68.44, + 37.13 + ], + [ + 68.43, + 37.14 + ], + [ + 68.41, + 37.15 + ], + [ + 68.42, + 37.11 + ], + [ + 68.41, + 37.1 + ], + [ + 68.4, + 37.1 + ], + [ + 68.36, + 37.1 + ], + [ + 68.35, + 37.1 + ], + [ + 68.33, + 37.11 + ], + [ + 68.31, + 37.11 + ], + [ + 68.3, + 37.11 + ], + [ + 68.29, + 37.1 + ], + [ + 68.28, + 37.09 + ], + [ + 68.28, + 37.07 + ], + [ + 68.28, + 37.04 + ], + [ + 68.28, + 37.03 + ], + [ + 68.28, + 37.02 + ], + [ + 68.26, + 37.01 + ], + [ + 68.24, + 37.01 + ], + [ + 68.2, + 37.02 + ], + [ + 68.16, + 37.01 + ], + [ + 68.14, + 36.99 + ], + [ + 68.1, + 36.96 + ], + [ + 68.08, + 36.95 + ], + [ + 68.07, + 36.94 + ], + [ + 68, + 36.95 + ], + [ + 67.99, + 36.96 + ], + [ + 67.95, + 36.99 + ], + [ + 67.94, + 37 + ], + [ + 67.93, + 37.01 + ], + [ + 67.92, + 37.01 + ], + [ + 67.9, + 37.03 + ], + [ + 67.89, + 37.06 + ], + [ + 67.87, + 37.06 + ], + [ + 67.86, + 37.07 + ], + [ + 67.84, + 37.07 + ], + [ + 67.82, + 37.08 + ], + [ + 67.79, + 37.08 + ], + [ + 67.79, + 37.19 + ], + [ + 67.86, + 37.64 + ], + [ + 68.28, + 37.91 + ], + [ + 68.4, + 38.2 + ], + [ + 68.06, + 38.39 + ], + [ + 68.2, + 38.94 + ], + [ + 67.7, + 39 + ], + [ + 67.68, + 39.15 + ], + [ + 67.33, + 39.24 + ], + [ + 67.47, + 39.32 + ], + [ + 67.41, + 39.53 + ], + [ + 67.42, + 39.54 + ], + [ + 67.71, + 39.66 + ], + [ + 68.55, + 39.54 + ], + [ + 68.63, + 39.85 + ], + [ + 68.77, + 39.83 + ], + [ + 68.82, + 39.99 + ], + [ + 68.89, + 39.87 + ], + [ + 68.85, + 40.05 + ], + [ + 69.03, + 40.13 + ], + [ + 68.53, + 40.14 + ], + [ + 68.86, + 40.21 + ], + [ + 69.17, + 40.21 + ], + [ + 69.19, + 40.21 + ], + [ + 69.2, + 40.22 + ], + [ + 69.21, + 40.21 + ], + [ + 69.22, + 40.21 + ], + [ + 69.28, + 40.2 + ], + [ + 69.3, + 40.2 + ], + [ + 69.25, + 40.28 + ], + [ + 69.25, + 40.29 + ], + [ + 69.39, + 40.79 + ], + [ + 69.42, + 40.79 + ], + [ + 69.43, + 40.79 + ], + [ + 69.44, + 40.79 + ], + [ + 69.72, + 40.63 + ], + [ + 70.44, + 41.05 + ], + [ + 70.8, + 40.72 + ], + [ + 70.78, + 40.72 + ], + [ + 70.77, + 40.71 + ], + [ + 70.77, + 40.7 + ], + [ + 70.77, + 40.69 + ], + [ + 70.73, + 40.69 + ], + [ + 70.73, + 40.68 + ], + [ + 70.74, + 40.67 + ], + [ + 70.74, + 40.66 + ], + [ + 70.72, + 40.66 + ], + [ + 70.71, + 40.66 + ], + [ + 70.7, + 40.66 + ], + [ + 70.68, + 40.65 + ], + [ + 70.65, + 40.63 + ], + [ + 70.64, + 40.63 + ], + [ + 70.63, + 40.61 + ], + [ + 70.61, + 40.59 + ], + [ + 70.59, + 40.57 + ], + [ + 70.58, + 40.56 + ], + [ + 70.57, + 40.56 + ], + [ + 70.53, + 40.56 + ], + [ + 70.51, + 40.54 + ], + [ + 70.5, + 40.51 + ], + [ + 70.46, + 40.5 + ], + [ + 70.43, + 40.49 + ], + [ + 70.42, + 40.49 + ], + [ + 70.4, + 40.48 + ], + [ + 70.39, + 40.48 + ], + [ + 70.36, + 40.47 + ], + [ + 70.34, + 40.46 + ], + [ + 70.33, + 40.46 + ], + [ + 70.34, + 40.44 + ], + [ + 70.33, + 40.43 + ], + [ + 70.34, + 40.43 + ], + [ + 70.63, + 40.18 + ], + [ + 70.98, + 40.23 + ] + ], + [ + [ + 73.32, + 39.13 + ], + [ + 73.3, + 38.88 + ], + [ + 73.56, + 39.02 + ], + [ + 73.32, + 39.13 + ] + ], + [ + [ + 70.2, + 40.41 + ], + [ + 69.82, + 40.25 + ], + [ + 70.31, + 40.3 + ], + [ + 70.2, + 40.41 + ] + ] + ] + }, + "properties": { + "A3": "TJK" + } + }, + { + "type": "Feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + 60.87, + 29.86 + ], + [ + 62.47, + 29.39 + ], + [ + 63.58, + 29.49 + ], + [ + 64.12, + 29.38 + ], + [ + 64.54, + 29.59 + ], + [ + 64.9, + 29.55 + ], + [ + 64.75, + 29.36 + ], + [ + 64.82, + 29.1 + ], + [ + 65.52, + 29.37 + ], + [ + 64.86, + 29.36 + ], + [ + 64.91, + 29.55 + ], + [ + 65.76, + 29.72 + ], + [ + 65.55, + 29.38 + ], + [ + 65.8, + 29.73 + ], + [ + 66.37, + 29.97 + ], + [ + 66.23, + 30.07 + ], + [ + 66.28, + 30.57 + ], + [ + 66.39, + 30.94 + ], + [ + 66.73, + 31.21 + ], + [ + 67.77, + 31.32 + ], + [ + 67.57, + 31.52 + ], + [ + 68.17, + 31.84 + ], + [ + 68.54, + 31.71 + ], + [ + 68.43, + 31.76 + ], + [ + 68.58, + 31.83 + ], + [ + 68.86, + 31.59 + ], + [ + 69.12, + 31.7 + ], + [ + 69.33, + 31.93 + ], + [ + 69.24, + 32.46 + ], + [ + 69.45, + 32.66 + ], + [ + 69.5, + 33.02 + ], + [ + 70.16, + 33.22 + ], + [ + 70.33, + 33.33 + ], + [ + 70.23, + 33.48 + ], + [ + 69.9, + 34.04 + ], + [ + 70.87, + 33.97 + ], + [ + 71.13, + 34.23 + ], + [ + 71.13, + 34.24 + ], + [ + 71.13, + 34.27 + ], + [ + 71.15, + 34.3 + ], + [ + 71.15, + 34.31 + ], + [ + 71.16, + 34.32 + ], + [ + 71.16, + 34.33 + ], + [ + 71, + 34.5 + ], + [ + 71.09, + 34.68 + ], + [ + 71.68, + 35.21 + ], + [ + 71.54, + 35.31 + ], + [ + 71.66, + 35.44 + ], + [ + 71.55, + 35.73 + ], + [ + 71.2, + 36.04 + ], + [ + 71.64, + 36.48 + ], + [ + 71.81, + 36.4 + ], + [ + 72.25, + 36.75 + ], + [ + 72.65, + 36.85 + ], + [ + 73.84, + 36.93 + ], + [ + 74.05, + 36.83 + ], + [ + 74.56, + 37.03 + ], + [ + 75.4, + 36.96 + ], + [ + 75.45, + 36.72 + ], + [ + 75.67, + 36.76 + ], + [ + 75.93, + 36.6 + ], + [ + 75.94, + 36.6 + ], + [ + 75.93, + 36.57 + ], + [ + 75.92, + 36.57 + ], + [ + 75.95, + 36.54 + ], + [ + 75.96, + 36.52 + ], + [ + 76.05, + 36.25 + ], + [ + 76.06, + 36.25 + ], + [ + 76.02, + 36.24 + ], + [ + 76.01, + 36.24 + ], + [ + 76.01, + 36.23 + ], + [ + 76.01, + 36.18 + ], + [ + 76.01, + 36.17 + ], + [ + 76.16, + 35.83 + ], + [ + 76.57, + 35.93 + ], + [ + 76.78, + 35.66 + ], + [ + 77.12, + 35.07 + ], + [ + 77, + 34.94 + ], + [ + 75.75, + 34.52 + ], + [ + 75.19, + 34.65 + ], + [ + 74.31, + 34.8 + ], + [ + 73.97, + 34.69 + ], + [ + 73.75, + 34.38 + ], + [ + 73.98, + 34.26 + ], + [ + 73.92, + 34.01 + ], + [ + 74.25, + 34.01 + ], + [ + 73.96, + 33.72 + ], + [ + 74.19, + 33.46 + ], + [ + 74.01, + 33.2 + ], + [ + 74.44, + 32.81 + ], + [ + 74.46, + 32.79 + ], + [ + 74.46, + 32.78 + ], + [ + 74.51, + 32.76 + ], + [ + 74.52, + 32.75 + ], + [ + 74.54, + 32.75 + ], + [ + 74.65, + 32.82 + ], + [ + 74.65, + 32.83 + ], + [ + 74.66, + 32.7 + ], + [ + 74.69, + 32.67 + ], + [ + 74.68, + 32.49 + ], + [ + 74.95, + 32.45 + ], + [ + 74.96, + 32.45 + ], + [ + 74.97, + 32.45 + ], + [ + 75.32, + 32.34 + ], + [ + 75.3, + 32.15 + ], + [ + 75.29, + 32.15 + ], + [ + 75.22, + 32.1 + ], + [ + 75.13, + 32.08 + ], + [ + 75.12, + 32.08 + ], + [ + 74.98, + 32.04 + ], + [ + 74.98, + 32.05 + ], + [ + 74.87, + 32.05 + ], + [ + 74.86, + 32.04 + ], + [ + 74.84, + 32.01 + ], + [ + 74.83, + 32 + ], + [ + 74.67, + 31.92 + ], + [ + 74.61, + 31.88 + ], + [ + 74.6, + 31.88 + ], + [ + 74.56, + 31.83 + ], + [ + 74.56, + 31.82 + ], + [ + 74.52, + 31.75 + ], + [ + 74.51, + 31.74 + ], + [ + 74.48, + 31.72 + ], + [ + 74.5, + 31.71 + ], + [ + 74.66, + 31.43 + ], + [ + 74.51, + 31.13 + ], + [ + 74.7, + 31.08 + ], + [ + 74.7, + 31.07 + ], + [ + 74.54, + 31 + ], + [ + 74.55, + 31 + ], + [ + 74.44, + 30.94 + ], + [ + 74.43, + 30.94 + ], + [ + 74.32, + 30.83 + ], + [ + 74.32, + 30.82 + ], + [ + 74.31, + 30.81 + ], + [ + 74.3, + 30.81 + ], + [ + 74.28, + 30.77 + ], + [ + 74.27, + 30.77 + ], + [ + 74.26, + 30.77 + ], + [ + 74, + 30.51 + ], + [ + 73.99, + 30.51 + ], + [ + 73.97, + 30.2 + ], + [ + 73.4, + 29.95 + ], + [ + 72.95, + 29.03 + ], + [ + 72.39, + 28.77 + ], + [ + 71.9, + 27.96 + ], + [ + 70.87, + 27.7 + ], + [ + 70.59, + 28.01 + ], + [ + 70.37, + 28.01 + ], + [ + 69.59, + 27.18 + ], + [ + 69.51, + 26.74 + ], + [ + 70.18, + 26.55 + ], + [ + 70.1, + 25.94 + ], + [ + 70.27, + 25.71 + ], + [ + 70.66, + 25.7 + ], + [ + 70.67, + 25.4 + ], + [ + 71.1, + 24.69 + ], + [ + 70.98, + 24.61 + ], + [ + 71, + 24.49 + ], + [ + 71.03, + 24.46 + ], + [ + 71.09, + 24.44 + ], + [ + 71.13, + 24.42 + ], + [ + 71.12, + 24.4 + ], + [ + 71.09, + 24.39 + ], + [ + 71.07, + 24.38 + ], + [ + 70.58, + 24.28 + ], + [ + 70.58, + 24.3 + ], + [ + 70.58, + 24.31 + ], + [ + 70.58, + 24.32 + ], + [ + 70.58, + 24.35 + ], + [ + 70.72, + 24.47 + ], + [ + 70.58, + 24.43 + ], + [ + 70.52, + 24.42 + ], + [ + 70.49, + 24.42 + ], + [ + 70.46, + 24.41 + ], + [ + 70.44, + 24.41 + ], + [ + 70.41, + 24.39 + ], + [ + 70.4, + 24.38 + ], + [ + 70.33, + 24.37 + ], + [ + 70.32, + 24.37 + ], + [ + 70.3, + 24.36 + ], + [ + 70.29, + 24.36 + ], + [ + 70.28, + 24.35 + ], + [ + 70.25, + 24.33 + ], + [ + 70.22, + 24.33 + ], + [ + 70.21, + 24.33 + ], + [ + 70, + 24.17 + ], + [ + 68.9, + 24.32 + ], + [ + 68.83, + 24.32 + ], + [ + 68.77, + 24.33 + ], + [ + 68.63, + 24.38 + ], + [ + 68.59, + 24.21 + ], + [ + 68.28, + 24.08 + ], + [ + 68.22, + 24.24 + ], + [ + 68, + 24.11 + ], + [ + 67.97, + 24.25 + ], + [ + 67.49, + 24.04 + ], + [ + 67.62, + 24.35 + ], + [ + 67.39, + 24.56 + ], + [ + 67.59, + 24.74 + ], + [ + 66.66, + 24.83 + ], + [ + 66.74, + 25.18 + ], + [ + 66.38, + 25.62 + ], + [ + 66.09, + 25.46 + ], + [ + 66.35, + 25.54 + ], + [ + 66.51, + 25.4 + ], + [ + 64.8, + 25.33 + ], + [ + 64.59, + 25.15 + ], + [ + 64.56, + 25.27 + ], + [ + 64.09, + 25.33 + ], + [ + 64.23, + 25.46 + ], + [ + 64.12, + 25.5 + ], + [ + 63.91, + 25.42 + ], + [ + 64.06, + 25.33 + ], + [ + 63.67, + 25.4 + ], + [ + 63.44, + 25.3 + ], + [ + 63.49, + 25.21 + ], + [ + 62.51, + 25.26 + ], + [ + 62.36, + 25.09 + ], + [ + 62.16, + 25.23 + ], + [ + 61.78, + 25.01 + ], + [ + 61.81, + 25.19 + ], + [ + 61.62, + 25.17 + ], + [ + 61.66, + 25.4 + ], + [ + 61.9, + 26.26 + ], + [ + 62.22, + 26.27 + ], + [ + 62.45, + 26.57 + ], + [ + 63.2, + 26.65 + ], + [ + 63.33, + 27.12 + ], + [ + 63.2, + 27.26 + ], + [ + 62.78, + 27.25 + ], + [ + 62.76, + 28.05 + ], + [ + 63.41, + 27.96 + ], + [ + 63.13, + 28.19 + ], + [ + 63.41, + 28.09 + ], + [ + 63.43, + 28.19 + ], + [ + 63.02, + 28.38 + ], + [ + 63.01, + 28.54 + ], + [ + 62.79, + 28.27 + ], + [ + 61.84, + 28.63 + ], + [ + 60.87, + 29.86 + ] + ], + [ + [ + 75.72, + 35.39 + ], + [ + 75.46, + 35.41 + ], + [ + 75.65, + 35.3 + ], + [ + 75.72, + 35.39 + ] + ], + [ + [ + 73.68, + 33.21 + ], + [ + 73.82, + 33.21 + ], + [ + 73.71, + 33.31 + ], + [ + 73.68, + 33.21 + ] + ], + [ + [ + 73.17, + 31.96 + ], + [ + 73.15, + 31.95 + ], + [ + 73.15, + 31.94 + ], + [ + 73.17, + 31.96 + ] + ], + [ + [ + 71.32, + 32.49 + ], + [ + 71.39, + 32.34 + ], + [ + 71.5, + 32.6 + ], + [ + 71.32, + 32.49 + ] + ], + [ + [ + 71.16, + 32.08 + ], + [ + 71.25, + 32.14 + ], + [ + 71.15, + 32.1 + ], + [ + 71.16, + 32.08 + ] + ], + [ + [ + 69.03, + 27.92 + ], + [ + 69.04, + 28.07 + ], + [ + 69.19, + 28.08 + ], + [ + 69.02, + 28.09 + ], + [ + 69.03, + 27.92 + ] + ], + [ + [ + 68.01, + 25.01 + ], + [ + 68.03, + 24.87 + ], + [ + 68.11, + 25.01 + ], + [ + 68.01, + 25.01 + ] + ] + ] + }, + "properties": { + "A3": "PAK" + } + }, + { + "type": "Feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + 11.77, + -17.26 + ], + [ + 11.78, + -17.26 + ], + [ + 11.79, + -17.27 + ], + [ + 11.8, + -17.27 + ], + [ + 12.08, + -17.14 + ], + [ + 12.43, + -17.24 + ], + [ + 12.44, + -17.24 + ], + [ + 12.98, + -16.98 + ], + [ + 13.24, + -17 + ], + [ + 13.27, + -17 + ], + [ + 13.31, + -16.99 + ], + [ + 13.32, + -16.99 + ], + [ + 13.35, + -16.97 + ], + [ + 13.36, + -16.98 + ], + [ + 13.42, + -17 + ], + [ + 13.43, + -17 + ], + [ + 13.44, + -17.01 + ], + [ + 13.45, + -17.01 + ], + [ + 13.46, + -17.01 + ], + [ + 13.47, + -17.01 + ], + [ + 13.48, + -17.03 + ], + [ + 13.48, + -17.04 + ], + [ + 13.49, + -17.05 + ], + [ + 13.49, + -17.06 + ], + [ + 13.52, + -17.1 + ], + [ + 13.52, + -17.11 + ], + [ + 13.51, + -17.13 + ], + [ + 13.53, + -17.14 + ], + [ + 13.54, + -17.15 + ], + [ + 13.6, + -17.18 + ], + [ + 13.62, + -17.2 + ], + [ + 13.64, + -17.22 + ], + [ + 13.65, + -17.22 + ], + [ + 13.67, + -17.24 + ], + [ + 13.69, + -17.25 + ], + [ + 13.73, + -17.27 + ], + [ + 13.74, + -17.27 + ], + [ + 13.79, + -17.31 + ], + [ + 13.8, + -17.31 + ], + [ + 13.91, + -17.37 + ], + [ + 13.93, + -17.41 + ], + [ + 13.93, + -17.42 + ], + [ + 13.97, + -17.43 + ], + [ + 13.99, + -17.43 + ], + [ + 14, + -17.43 + ], + [ + 14.01, + -17.41 + ], + [ + 14.02, + -17.42 + ], + [ + 14.08, + -17.43 + ], + [ + 14.1, + -17.44 + ], + [ + 14.11, + -17.43 + ], + [ + 14.12, + -17.43 + ], + [ + 14.13, + -17.43 + ], + [ + 14.15, + -17.43 + ], + [ + 14.17, + -17.42 + ], + [ + 14.19, + -17.41 + ], + [ + 14.2, + -17.41 + ], + [ + 14.22, + -17.4 + ], + [ + 14.22, + -17.39 + ], + [ + 15.77, + -17.39 + ], + [ + 15.91, + -17.39 + ], + [ + 18.41, + -17.39 + ], + [ + 18.45, + -17.43 + ], + [ + 18.46, + -17.43 + ], + [ + 18.47, + -17.45 + ], + [ + 18.48, + -17.46 + ], + [ + 18.48, + -17.47 + ], + [ + 18.48, + -17.48 + ], + [ + 18.5, + -17.49 + ], + [ + 18.52, + -17.51 + ], + [ + 18.52, + -17.52 + ], + [ + 18.54, + -17.56 + ], + [ + 18.55, + -17.56 + ], + [ + 18.57, + -17.58 + ], + [ + 18.61, + -17.6 + ], + [ + 18.63, + -17.64 + ], + [ + 18.9, + -17.82 + ], + [ + 19.49, + -17.87 + ], + [ + 19.49, + -17.86 + ], + [ + 19.51, + -17.86 + ], + [ + 19.52, + -17.86 + ], + [ + 19.55, + -17.87 + ], + [ + 19.56, + -17.87 + ], + [ + 19.64, + -17.85 + ], + [ + 19.66, + -17.85 + ], + [ + 19.67, + -17.85 + ], + [ + 19.68, + -17.85 + ], + [ + 19.69, + -17.86 + ], + [ + 19.71, + -17.89 + ], + [ + 19.71, + -17.87 + ], + [ + 19.73, + -17.89 + ], + [ + 19.74, + -17.9 + ], + [ + 19.75, + -17.91 + ], + [ + 19.76, + -17.91 + ], + [ + 19.79, + -17.88 + ], + [ + 19.8, + -17.87 + ], + [ + 19.84, + -17.87 + ], + [ + 19.88, + -17.88 + ], + [ + 19.89, + -17.88 + ], + [ + 19.95, + -17.87 + ], + [ + 19.97, + -17.89 + ], + [ + 20.08, + -17.89 + ], + [ + 20.1, + -17.91 + ], + [ + 20.11, + -17.91 + ], + [ + 20.13, + -17.9 + ], + [ + 20.17, + -17.88 + ], + [ + 20.19, + -17.88 + ], + [ + 20.25, + -17.88 + ], + [ + 20.26, + -17.87 + ], + [ + 20.3, + -17.88 + ], + [ + 20.3, + -17.87 + ], + [ + 20.34, + -17.87 + ], + [ + 20.35, + -17.88 + ], + [ + 20.36, + -17.89 + ], + [ + 20.37, + -17.9 + ], + [ + 20.45, + -17.91 + ], + [ + 20.46, + -17.92 + ], + [ + 20.48, + -17.95 + ], + [ + 20.51, + -17.96 + ], + [ + 20.54, + -17.98 + ], + [ + 20.55, + -17.98 + ], + [ + 20.59, + -17.98 + ], + [ + 20.59, + -17.97 + ], + [ + 20.61, + -17.98 + ], + [ + 20.65, + -17.98 + ], + [ + 20.66, + -17.98 + ], + [ + 20.74, + -18 + ], + [ + 20.75, + -18 + ], + [ + 20.78, + -18.02 + ], + [ + 20.79, + -18.03 + ], + [ + 20.81, + -18.04 + ], + [ + 20.87, + -18.02 + ], + [ + 20.87, + -18 + ], + [ + 20.88, + -18 + ], + [ + 20.94, + -17.97 + ], + [ + 20.98, + -17.96 + ], + [ + 20.99, + -17.96 + ], + [ + 21.01, + -17.96 + ], + [ + 21.03, + -17.95 + ], + [ + 21.05, + -17.95 + ], + [ + 21.09, + -17.95 + ], + [ + 21.11, + -17.94 + ], + [ + 21.12, + -17.94 + ], + [ + 21.13, + -17.94 + ], + [ + 21.14, + -17.94 + ], + [ + 21.15, + -17.94 + ], + [ + 21.16, + -17.93 + ], + [ + 21.2, + -17.93 + ], + [ + 21.22, + -17.93 + ], + [ + 21.23, + -17.94 + ], + [ + 21.24, + -17.95 + ], + [ + 21.26, + -17.96 + ], + [ + 21.29, + -17.97 + ], + [ + 21.31, + -17.98 + ], + [ + 21.36, + -17.99 + ], + [ + 21.37, + -18 + ], + [ + 21.4, + -18.01 + ], + [ + 21.42, + -18.02 + ], + [ + 23.43, + -17.64 + ], + [ + 24.25, + -17.48 + ], + [ + 24.26, + -17.48 + ], + [ + 24.28, + -17.48 + ], + [ + 24.32, + -17.49 + ], + [ + 24.35, + -17.48 + ], + [ + 24.37, + -17.48 + ], + [ + 24.4, + -17.47 + ], + [ + 24.41, + -17.47 + ], + [ + 24.42, + -17.48 + ], + [ + 24.44, + -17.48 + ], + [ + 24.46, + -17.48 + ], + [ + 24.52, + -17.51 + ], + [ + 24.53, + -17.51 + ], + [ + 24.55, + -17.51 + ], + [ + 24.55, + -17.52 + ], + [ + 24.56, + -17.54 + ], + [ + 24.58, + -17.54 + ], + [ + 24.59, + -17.53 + ], + [ + 24.6, + -17.53 + ], + [ + 24.62, + -17.52 + ], + [ + 24.65, + -17.52 + ], + [ + 24.66, + -17.51 + ], + [ + 24.67, + -17.51 + ], + [ + 24.68, + -17.5 + ], + [ + 24.71, + -17.5 + ], + [ + 24.73, + -17.5 + ], + [ + 24.76, + -17.52 + ], + [ + 24.77, + -17.52 + ], + [ + 24.79, + -17.51 + ], + [ + 24.79, + -17.52 + ], + [ + 24.79, + -17.54 + ], + [ + 24.81, + -17.53 + ], + [ + 24.84, + -17.52 + ], + [ + 24.85, + -17.53 + ], + [ + 24.89, + -17.54 + ], + [ + 24.91, + -17.55 + ], + [ + 24.92, + -17.55 + ], + [ + 24.96, + -17.57 + ], + [ + 24.97, + -17.56 + ], + [ + 24.98, + -17.56 + ], + [ + 24.99, + -17.56 + ], + [ + 25, + -17.59 + ], + [ + 25.01, + -17.6 + ], + [ + 25.03, + -17.59 + ], + [ + 25.05, + -17.6 + ], + [ + 25.05, + -17.61 + ], + [ + 25.04, + -17.62 + ], + [ + 25.05, + -17.64 + ], + [ + 25.06, + -17.62 + ], + [ + 25.07, + -17.64 + ], + [ + 25.09, + -17.66 + ], + [ + 25.1, + -17.66 + ], + [ + 25.11, + -17.67 + ], + [ + 25.1, + -17.7 + ], + [ + 25.1, + -17.71 + ], + [ + 25.12, + -17.69 + ], + [ + 25.14, + -17.7 + ], + [ + 25.13, + -17.71 + ], + [ + 25.14, + -17.71 + ], + [ + 25.16, + -17.72 + ], + [ + 25.16, + -17.73 + ], + [ + 25.16, + -17.74 + ], + [ + 25.17, + -17.75 + ], + [ + 25.18, + -17.76 + ], + [ + 25.19, + -17.77 + ], + [ + 25.21, + -17.77 + ], + [ + 25.23, + -17.77 + ], + [ + 25.25, + -17.78 + ], + [ + 25.24, + -17.79 + ], + [ + 25.22, + -17.79 + ], + [ + 25.2, + -17.79 + ], + [ + 25.19, + -17.79 + ], + [ + 25.16, + -17.78 + ], + [ + 25.15, + -17.79 + ], + [ + 25.14, + -17.81 + ], + [ + 25.13, + -17.8 + ], + [ + 25.13, + -17.81 + ], + [ + 25.11, + -17.83 + ], + [ + 25.1, + -17.83 + ], + [ + 25.08, + -17.84 + ], + [ + 25.07, + -17.84 + ], + [ + 25.05, + -17.81 + ], + [ + 25.04, + -17.81 + ], + [ + 25, + -17.84 + ], + [ + 25.01, + -17.83 + ], + [ + 25, + -17.82 + ], + [ + 25, + -17.83 + ], + [ + 24.98, + -17.83 + ], + [ + 24.58, + -18.07 + ], + [ + 24.42, + -17.95 + ], + [ + 24.2, + -18.02 + ], + [ + 23.88, + -18.28 + ], + [ + 23.59, + -18.5 + ], + [ + 23.31, + -18 + ], + [ + 23.1, + -18 + ], + [ + 21, + -18.32 + ], + [ + 21, + -20.99 + ], + [ + 21, + -21.01 + ], + [ + 21, + -22 + ], + [ + 20, + -22 + ], + [ + 20, + -23.31 + ], + [ + 20, + -23.86 + ], + [ + 20, + -24.23 + ], + [ + 20, + -24.25 + ], + [ + 20, + -24.76 + ], + [ + 20, + -24.8 + ], + [ + 20, + -24.87 + ], + [ + 20, + -24.88 + ], + [ + 20, + -24.9 + ], + [ + 20, + -24.92 + ], + [ + 20, + -24.94 + ], + [ + 20, + -24.95 + ], + [ + 20, + -25.28 + ], + [ + 20, + -25.29 + ], + [ + 20, + -25.36 + ], + [ + 20, + -25.51 + ], + [ + 20, + -25.6 + ], + [ + 20, + -25.61 + ], + [ + 20, + -27.84 + ], + [ + 20, + -27.86 + ], + [ + 20, + -28.43 + ], + [ + 19.99, + -28.43 + ], + [ + 19.97, + -28.43 + ], + [ + 19.93, + -28.44 + ], + [ + 19.92, + -28.44 + ], + [ + 19.91, + -28.45 + ], + [ + 19.87, + -28.45 + ], + [ + 19.86, + -28.46 + ], + [ + 19.78, + -28.5 + ], + [ + 19.77, + -28.5 + ], + [ + 19.69, + -28.52 + ], + [ + 19.67, + -28.53 + ], + [ + 19.66, + -28.53 + ], + [ + 19.64, + -28.52 + ], + [ + 19.6, + -28.52 + ], + [ + 19.58, + -28.53 + ], + [ + 19.56, + -28.53 + ], + [ + 19.56, + -28.54 + ], + [ + 19.55, + -28.54 + ], + [ + 19.16, + -28.96 + ], + [ + 18.74, + -28.83 + ], + [ + 18.06, + -28.88 + ], + [ + 18.04, + -28.86 + ], + [ + 18.03, + -28.86 + ], + [ + 18.02, + -28.84 + ], + [ + 17.96, + -28.79 + ], + [ + 17.95, + -28.79 + ], + [ + 17.91, + -28.77 + ], + [ + 17.9, + -28.77 + ], + [ + 17.89, + -28.77 + ], + [ + 17.88, + -28.76 + ], + [ + 17.84, + -28.76 + ], + [ + 17.8, + -28.76 + ], + [ + 17.74, + -28.75 + ], + [ + 17.72, + -28.75 + ], + [ + 17.71, + -28.74 + ], + [ + 17.67, + -28.77 + ], + [ + 17.66, + -28.77 + ], + [ + 17.64, + -28.77 + ], + [ + 17.62, + -28.77 + ], + [ + 17.62, + -28.76 + ], + [ + 17.61, + -28.71 + ], + [ + 17.59, + -28.69 + ], + [ + 17.56, + -28.69 + ], + [ + 17.55, + -28.7 + ], + [ + 17.51, + -28.7 + ], + [ + 17.5, + -28.69 + ], + [ + 17.49, + -28.69 + ], + [ + 17.47, + -28.7 + ], + [ + 17.45, + -28.71 + ], + [ + 17.44, + -28.71 + ], + [ + 17.42, + -28.72 + ], + [ + 17.42, + -28.7 + ], + [ + 17.42, + -28.69 + ], + [ + 17.41, + -28.67 + ], + [ + 17.42, + -28.66 + ], + [ + 17.43, + -28.65 + ], + [ + 17.43, + -28.62 + ], + [ + 17.43, + -28.61 + ], + [ + 17.43, + -28.58 + ], + [ + 17.43, + -28.57 + ], + [ + 17.4, + -28.56 + ], + [ + 17.4, + -28.57 + ], + [ + 17.38, + -28.56 + ], + [ + 17.38, + -28.54 + ], + [ + 17.37, + -28.53 + ], + [ + 17.34, + -28.47 + ], + [ + 17.34, + -28.46 + ], + [ + 17.35, + -28.44 + ], + [ + 17.37, + -28.44 + ], + [ + 17.39, + -28.43 + ], + [ + 17.41, + -28.4 + ], + [ + 17.41, + -28.36 + ], + [ + 17.4, + -28.34 + ], + [ + 17.39, + -28.34 + ], + [ + 17.38, + -28.31 + ], + [ + 17.38, + -28.3 + ], + [ + 17.36, + -28.28 + ], + [ + 17.36, + -28.27 + ], + [ + 17.36, + -28.26 + ], + [ + 17.34, + -28.23 + ], + [ + 17.33, + -28.23 + ], + [ + 17.3, + -28.23 + ], + [ + 17.29, + -28.24 + ], + [ + 17.28, + -28.25 + ], + [ + 17.26, + -28.24 + ], + [ + 17.23, + -28.25 + ], + [ + 17.22, + -28.25 + ], + [ + 17.2, + -28.24 + ], + [ + 17.2, + -28.23 + ], + [ + 17.19, + -28.23 + ], + [ + 17.18, + -28.19 + ], + [ + 17.18, + -28.18 + ], + [ + 17.19, + -28.17 + ], + [ + 17.19, + -28.16 + ], + [ + 17.19, + -28.15 + ], + [ + 17.14, + -28.09 + ], + [ + 17.13, + -28.09 + ], + [ + 17.11, + -28.05 + ], + [ + 17.05, + -28.05 + ], + [ + 17.04, + -28.05 + ], + [ + 17.03, + -28.05 + ], + [ + 17.01, + -28.07 + ], + [ + 17, + -28.07 + ], + [ + 16.96, + -28.07 + ], + [ + 16.95, + -28.08 + ], + [ + 16.94, + -28.07 + ], + [ + 16.93, + -28.07 + ], + [ + 16.9, + -28.07 + ], + [ + 16.89, + -28.13 + ], + [ + 16.88, + -28.18 + ], + [ + 16.87, + -28.18 + ], + [ + 16.85, + -28.17 + ], + [ + 16.83, + -28.17 + ], + [ + 16.83, + -28.18 + ], + [ + 16.83, + -28.19 + ], + [ + 16.86, + -28.21 + ], + [ + 16.85, + -28.21 + ], + [ + 16.8, + -28.23 + ], + [ + 16.82, + -28.24 + ], + [ + 16.83, + -28.25 + ], + [ + 16.83, + -28.26 + ], + [ + 16.83, + -28.27 + ], + [ + 16.81, + -28.28 + ], + [ + 16.79, + -28.27 + ], + [ + 16.78, + -28.26 + ], + [ + 16.76, + -28.27 + ], + [ + 16.75, + -28.29 + ], + [ + 16.78, + -28.32 + ], + [ + 16.79, + -28.34 + ], + [ + 16.81, + -28.36 + ], + [ + 16.78, + -28.39 + ], + [ + 16.77, + -28.41 + ], + [ + 16.77, + -28.42 + ], + [ + 16.77, + -28.45 + ], + [ + 16.76, + -28.46 + ], + [ + 16.74, + -28.48 + ], + [ + 16.73, + -28.5 + ], + [ + 16.71, + -28.5 + ], + [ + 16.7, + -28.49 + ], + [ + 16.68, + -28.47 + ], + [ + 16.66, + -28.48 + ], + [ + 16.64, + -28.49 + ], + [ + 16.63, + -28.49 + ], + [ + 16.62, + -28.51 + ], + [ + 16.61, + -28.52 + ], + [ + 16.57, + -28.54 + ], + [ + 16.52, + -28.56 + ], + [ + 16.5, + -28.56 + ], + [ + 16.48, + -28.56 + ], + [ + 16.48, + -28.57 + ], + [ + 16.47, + -28.58 + ], + [ + 16.46, + -28.59 + ], + [ + 16.45, + -28.61 + ], + [ + 15.55, + -27.75 + ], + [ + 15.09, + -26.73 + ], + [ + 15.12, + -26.44 + ], + [ + 14.95, + -26.31 + ], + [ + 14.88, + -25.08 + ], + [ + 14.45, + -24.04 + ], + [ + 14.4, + -23.01 + ], + [ + 14.54, + -22.81 + ], + [ + 14.43, + -22.35 + ], + [ + 13.42, + -20.88 + ], + [ + 12.6, + -19.13 + ], + [ + 12.03, + -18.49 + ], + [ + 11.8, + -17.97 + ], + [ + 11.77, + -17.26 + ] + ], + [ + [ + 16.61, + -18.43 + ], + [ + 15.92, + -18.73 + ], + [ + 15.91, + -19.14 + ], + [ + 16.9, + -18.85 + ], + [ + 16.76, + -18.73 + ], + [ + 16.83, + -18.62 + ], + [ + 16.73, + -18.73 + ], + [ + 16.8, + -18.48 + ], + [ + 16.61, + -18.43 + ] + ], + [ + [ + 15.7, + -18.85 + ], + [ + 15.56, + -18.92 + ], + [ + 15.73, + -19 + ], + [ + 15.7, + -18.85 + ] + ] + ] + }, + "properties": { + "A3": "NAM" + } + }, + { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + 44.81, + 39.63 + ], + [ + 44.84, + 39.61 + ], + [ + 44.85, + 39.61 + ], + [ + 44.86, + 39.6 + ], + [ + 44.87, + 39.61 + ], + [ + 44.89, + 39.59 + ], + [ + 44.91, + 39.57 + ], + [ + 44.91, + 39.54 + ], + [ + 44.92, + 39.54 + ], + [ + 44.92, + 39.52 + ], + [ + 44.94, + 39.49 + ], + [ + 44.94, + 39.48 + ], + [ + 44.95, + 39.45 + ], + [ + 44.96, + 39.45 + ], + [ + 44.97, + 39.45 + ], + [ + 44.98, + 39.45 + ], + [ + 44.97, + 39.42 + ], + [ + 44.98, + 39.42 + ], + [ + 45.02, + 39.41 + ], + [ + 45.02, + 39.4 + ], + [ + 45.04, + 39.39 + ], + [ + 45.04, + 39.38 + ], + [ + 45.08, + 39.35 + ], + [ + 45.09, + 39.35 + ], + [ + 45.1, + 39.32 + ], + [ + 45.11, + 39.32 + ], + [ + 45.15, + 39.24 + ], + [ + 45.15, + 39.23 + ], + [ + 45.15, + 39.22 + ], + [ + 45.17, + 39.22 + ], + [ + 45.19, + 39.22 + ], + [ + 45.2, + 39.21 + ], + [ + 45.2, + 39.2 + ], + [ + 45.4, + 39.08 + ], + [ + 45.46, + 39.05 + ], + [ + 45.46, + 39.04 + ], + [ + 45.44, + 39.01 + ], + [ + 45.53, + 38.97 + ], + [ + 45.57, + 38.97 + ], + [ + 45.57, + 38.98 + ], + [ + 45.59, + 38.96 + ], + [ + 45.62, + 38.95 + ], + [ + 45.62, + 38.94 + ], + [ + 45.64, + 38.95 + ], + [ + 45.68, + 38.95 + ], + [ + 45.7, + 38.94 + ], + [ + 45.76, + 38.93 + ], + [ + 45.77, + 38.93 + ], + [ + 45.79, + 38.92 + ], + [ + 45.8, + 38.92 + ], + [ + 45.81, + 38.91 + ], + [ + 45.83, + 38.9 + ], + [ + 45.84, + 38.91 + ], + [ + 45.88, + 38.89 + ], + [ + 45.9, + 38.88 + ], + [ + 45.96, + 38.89 + ], + [ + 45.97, + 38.89 + ], + [ + 46.01, + 38.87 + ], + [ + 46.03, + 38.87 + ], + [ + 46.04, + 38.87 + ], + [ + 46.07, + 38.88 + ], + [ + 46.08, + 38.87 + ], + [ + 46.1, + 38.87 + ], + [ + 46.12, + 38.86 + ], + [ + 46.14, + 38.84 + ], + [ + 46.16, + 38.84 + ], + [ + 46.27, + 38.89 + ], + [ + 46.34, + 38.91 + ], + [ + 46.34, + 38.92 + ], + [ + 46.37, + 38.91 + ], + [ + 46.38, + 38.91 + ], + [ + 46.39, + 38.9 + ], + [ + 46.4, + 38.9 + ], + [ + 46.41, + 38.89 + ], + [ + 46.42, + 38.89 + ], + [ + 46.43, + 38.89 + ], + [ + 46.45, + 38.9 + ], + [ + 46.46, + 38.9 + ], + [ + 46.46, + 38.89 + ], + [ + 46.47, + 38.89 + ], + [ + 46.48, + 38.89 + ], + [ + 46.5, + 38.89 + ], + [ + 46.51, + 38.89 + ], + [ + 46.53, + 38.89 + ], + [ + 46.52, + 38.88 + ], + [ + 46.53, + 38.87 + ], + [ + 46.54, + 38.87 + ], + [ + 46.6, + 38.91 + ], + [ + 46.61, + 38.92 + ], + [ + 46.67, + 38.98 + ], + [ + 46.69, + 39.01 + ], + [ + 46.71, + 39.01 + ], + [ + 46.76, + 39.04 + ], + [ + 46.76, + 39.05 + ], + [ + 46.8, + 39.09 + ], + [ + 46.82, + 39.11 + ], + [ + 46.84, + 39.13 + ], + [ + 46.85, + 39.14 + ], + [ + 46.93, + 39.16 + ], + [ + 46.97, + 39.15 + ], + [ + 46.98, + 39.15 + ], + [ + 47.06, + 39.25 + ], + [ + 47.07, + 39.25 + ], + [ + 47.08, + 39.26 + ], + [ + 47.09, + 39.26 + ], + [ + 47.13, + 39.28 + ], + [ + 47.24, + 39.34 + ], + [ + 47.25, + 39.34 + ], + [ + 47.32, + 39.38 + ], + [ + 47.33, + 39.39 + ], + [ + 47.34, + 39.4 + ], + [ + 47.35, + 39.41 + ], + [ + 47.36, + 39.42 + ], + [ + 47.37, + 39.44 + ], + [ + 47.38, + 39.44 + ], + [ + 47.38, + 39.45 + ], + [ + 47.38, + 39.46 + ], + [ + 47.4, + 39.47 + ], + [ + 47.57, + 39.52 + ], + [ + 47.57, + 39.53 + ], + [ + 47.59, + 39.54 + ], + [ + 47.6, + 39.54 + ], + [ + 47.64, + 39.56 + ], + [ + 47.66, + 39.57 + ], + [ + 47.69, + 39.59 + ], + [ + 47.7, + 39.59 + ], + [ + 47.71, + 39.59 + ], + [ + 47.72, + 39.59 + ], + [ + 47.73, + 39.59 + ], + [ + 47.75, + 39.6 + ], + [ + 47.76, + 39.62 + ], + [ + 47.77, + 39.62 + ], + [ + 47.79, + 39.64 + ], + [ + 47.81, + 39.66 + ], + [ + 47.82, + 39.66 + ], + [ + 47.83, + 39.66 + ], + [ + 47.84, + 39.66 + ], + [ + 47.88, + 39.67 + ], + [ + 47.92, + 39.67 + ], + [ + 47.93, + 39.67 + ], + [ + 47.96, + 39.69 + ], + [ + 47.97, + 39.69 + ], + [ + 48.37, + 39.38 + ], + [ + 48.13, + 39.26 + ], + [ + 48.33, + 39.02 + ], + [ + 48.02, + 38.84 + ], + [ + 48.63, + 38.4 + ], + [ + 48.88, + 38.44 + ], + [ + 48.99, + 37.75 + ], + [ + 49.31, + 37.45 + ], + [ + 50.19, + 37.38 + ], + [ + 50.71, + 36.89 + ], + [ + 51.68, + 36.59 + ], + [ + 53.79, + 36.9 + ], + [ + 53.92, + 36.89 + ], + [ + 53.36, + 36.82 + ], + [ + 54.01, + 36.79 + ], + [ + 53.97, + 37.35 + ], + [ + 54.67, + 37.44 + ], + [ + 54.84, + 37.75 + ], + [ + 55.44, + 38.09 + ], + [ + 56.34, + 38.08 + ], + [ + 56.44, + 38.26 + ], + [ + 57.21, + 38.28 + ], + [ + 57.45, + 37.94 + ], + [ + 58.39, + 37.63 + ], + [ + 58.82, + 37.7 + ], + [ + 59.35, + 37.53 + ], + [ + 59.55, + 37.14 + ], + [ + 60.04, + 37.02 + ], + [ + 60.35, + 36.63 + ], + [ + 61.15, + 36.65 + ], + [ + 61.17, + 35.95 + ], + [ + 61.2, + 35.94 + ], + [ + 61.23, + 35.91 + ], + [ + 61.24, + 35.89 + ], + [ + 61.24, + 35.88 + ], + [ + 61.26, + 35.83 + ], + [ + 61.26, + 35.81 + ], + [ + 61.27, + 35.61 + ], + [ + 61, + 34.64 + ], + [ + 60.74, + 34.52 + ], + [ + 60.92, + 34.3 + ], + [ + 60.67, + 34.3 + ], + [ + 60.52, + 34.06 + ], + [ + 60.58, + 33.6 + ], + [ + 60.95, + 33.51 + ], + [ + 60.58, + 33.13 + ], + [ + 60.88, + 32.2 + ], + [ + 60.86, + 31.49 + ], + [ + 61.28, + 31.43 + ], + [ + 61.35, + 31.24 + ], + [ + 61.36, + 31.42 + ], + [ + 61.78, + 31.3 + ], + [ + 61.8, + 30.84 + ], + [ + 60.87, + 29.86 + ], + [ + 61.84, + 28.63 + ], + [ + 62.79, + 28.27 + ], + [ + 62.79, + 28.25 + ], + [ + 62.78, + 28.15 + ], + [ + 62.76, + 28.05 + ], + [ + 62.78, + 27.25 + ], + [ + 63.2, + 27.26 + ], + [ + 63.33, + 27.12 + ], + [ + 63.2, + 26.65 + ], + [ + 62.45, + 26.57 + ], + [ + 62.22, + 26.27 + ], + [ + 61.9, + 26.26 + ], + [ + 61.66, + 25.4 + ], + [ + 61.62, + 25.17 + ], + [ + 61.42, + 25.06 + ], + [ + 60.61, + 25.29 + ], + [ + 60.56, + 25.45 + ], + [ + 60.47, + 25.29 + ], + [ + 60.32, + 25.4 + ], + [ + 59.59, + 25.39 + ], + [ + 59.36, + 25.55 + ], + [ + 59.09, + 25.4 + ], + [ + 58.8, + 25.57 + ], + [ + 58.11, + 25.56 + ], + [ + 57.31, + 25.79 + ], + [ + 56.98, + 27.02 + ], + [ + 56.82, + 27.17 + ], + [ + 55.75, + 27.04 + ], + [ + 55.49, + 26.78 + ], + [ + 55.24, + 26.78 + ], + [ + 54.79, + 26.5 + ], + [ + 54.29, + 26.73 + ], + [ + 53.73, + 26.7 + ], + [ + 53.46, + 26.98 + ], + [ + 52.69, + 27.29 + ], + [ + 52.43, + 27.65 + ], + [ + 51.97, + 27.88 + ], + [ + 51.4, + 27.92 + ], + [ + 51.03, + 28.81 + ], + [ + 50.8, + 28.92 + ], + [ + 50.92, + 29.07 + ], + [ + 50.67, + 29.12 + ], + [ + 50.67, + 29.47 + ], + [ + 50.15, + 29.94 + ], + [ + 50.07, + 30.2 + ], + [ + 49.56, + 30 + ], + [ + 49.47, + 30.16 + ], + [ + 49.24, + 30.14 + ], + [ + 49.32, + 30.47 + ], + [ + 49.13, + 30.55 + ], + [ + 49.11, + 30.43 + ], + [ + 48.89, + 30.49 + ], + [ + 49.05, + 30.42 + ], + [ + 48.93, + 30.41 + ], + [ + 48.87, + 30.32 + ], + [ + 48.7, + 30.32 + ], + [ + 48.91, + 30.26 + ], + [ + 48.93, + 30.03 + ], + [ + 48.59, + 29.94 + ], + [ + 48.57, + 29.95 + ], + [ + 48.52, + 29.96 + ], + [ + 48.51, + 29.96 + ], + [ + 48.48, + 29.98 + ], + [ + 48.47, + 29.99 + ], + [ + 48.46, + 30 + ], + [ + 48.45, + 30 + ], + [ + 48.45, + 30.01 + ], + [ + 48.45, + 30.06 + ], + [ + 48.44, + 30.06 + ], + [ + 48.44, + 30.07 + ], + [ + 48.43, + 30.08 + ], + [ + 48.41, + 30.1 + ], + [ + 48.39, + 30.11 + ], + [ + 48.39, + 30.14 + ], + [ + 48.39, + 30.15 + ], + [ + 48.41, + 30.16 + ], + [ + 48.41, + 30.17 + ], + [ + 48.42, + 30.19 + ], + [ + 48.41, + 30.2 + ], + [ + 48.37, + 30.24 + ], + [ + 48.36, + 30.25 + ], + [ + 48.35, + 30.26 + ], + [ + 48.34, + 30.27 + ], + [ + 48.33, + 30.28 + ], + [ + 48.31, + 30.3 + ], + [ + 48.28, + 30.33 + ], + [ + 48.27, + 30.33 + ], + [ + 48.27, + 30.34 + ], + [ + 48.24, + 30.34 + ], + [ + 48.24, + 30.33 + ], + [ + 48.22, + 30.32 + ], + [ + 48.21, + 30.32 + ], + [ + 48.2, + 30.33 + ], + [ + 48.19, + 30.34 + ], + [ + 48.19, + 30.35 + ], + [ + 48.19, + 30.36 + ], + [ + 48.19, + 30.38 + ], + [ + 48.18, + 30.39 + ], + [ + 48.18, + 30.4 + ], + [ + 48.18, + 30.41 + ], + [ + 48.16, + 30.42 + ], + [ + 48.15, + 30.44 + ], + [ + 48.14, + 30.44 + ], + [ + 48.13, + 30.44 + ], + [ + 48.11, + 30.45 + ], + [ + 48.03, + 30.5 + ], + [ + 48.03, + 30.99 + ], + [ + 48.01, + 31 + ], + [ + 47.73, + 31 + ], + [ + 47.68, + 31.24 + ], + [ + 47.68, + 31.39 + ], + [ + 47.75, + 31.54 + ], + [ + 47.82, + 31.68 + ], + [ + 47.39, + 32.46 + ], + [ + 46.1, + 32.98 + ], + [ + 46.19, + 33.26 + ], + [ + 45.62, + 33.8 + ], + [ + 45.61, + 33.8 + ], + [ + 45.41, + 33.98 + ], + [ + 45.58, + 34.15 + ], + [ + 45.44, + 34.46 + ], + [ + 45.53, + 34.6 + ], + [ + 45.74, + 34.54 + ], + [ + 45.65, + 34.72 + ], + [ + 45.92, + 35.07 + ], + [ + 45.92, + 35.08 + ], + [ + 46.19, + 35.11 + ], + [ + 45.97, + 35.58 + ], + [ + 46.34, + 35.82 + ], + [ + 45.76, + 35.8 + ], + [ + 45.55, + 36 + ], + [ + 45.35, + 35.98 + ], + [ + 45.27, + 36.39 + ], + [ + 45.01, + 36.52 + ], + [ + 45.07, + 36.69 + ], + [ + 44.84, + 36.78 + ], + [ + 44.78, + 37.14 + ], + [ + 44.58, + 37.45 + ], + [ + 44.62, + 37.73 + ], + [ + 44.22, + 37.89 + ], + [ + 44.51, + 38.34 + ], + [ + 44.3, + 38.39 + ], + [ + 44.2, + 38.93 + ], + [ + 44.03, + 39.38 + ], + [ + 44.42, + 39.41 + ], + [ + 44.6, + 39.78 + ], + [ + 44.61, + 39.78 + ], + [ + 44.8, + 39.64 + ], + [ + 44.8, + 39.63 + ], + [ + 44.81, + 39.63 + ] + ], + [ + [ + 54.74, + 36 + ], + [ + 54.46, + 35.86 + ], + [ + 54.84, + 35.87 + ], + [ + 54.74, + 36 + ] + ], + [ + [ + 51.85, + 34.78 + ], + [ + 51.56, + 34.45 + ], + [ + 51.68, + 34.33 + ], + [ + 52.16, + 34.4 + ], + [ + 51.85, + 34.78 + ] + ], + [ + [ + 45.2, + 38.24 + ], + [ + 45.05, + 37.94 + ], + [ + 45.27, + 37.75 + ], + [ + 45.31, + 37.25 + ], + [ + 45.59, + 37.07 + ], + [ + 45.66, + 37.27 + ], + [ + 45.95, + 37.37 + ], + [ + 45.66, + 37.61 + ], + [ + 45.77, + 37.72 + ], + [ + 45.4, + 37.78 + ], + [ + 45.56, + 37.96 + ], + [ + 45.45, + 38.2 + ], + [ + 45.2, + 38.24 + ] + ], + [ + [ + 52.84, + 32.25 + ], + [ + 52.75, + 31.99 + ], + [ + 52.96, + 32.06 + ], + [ + 52.84, + 32.25 + ] + ], + [ + [ + 53.6, + 29.8 + ], + [ + 53.35, + 29.58 + ], + [ + 53.76, + 29.73 + ], + [ + 53.6, + 29.8 + ] + ], + [ + [ + 53.46, + 29.54 + ], + [ + 53.95, + 29.27 + ], + [ + 54.18, + 29.26 + ], + [ + 54.1, + 29.44 + ], + [ + 53.83, + 29.35 + ], + [ + 53.66, + 29.55 + ], + [ + 53.46, + 29.54 + ] + ], + [ + [ + 48.73, + 30.9 + ], + [ + 48.65, + 30.83 + ], + [ + 48.82, + 30.84 + ], + [ + 48.73, + 30.9 + ] + ], + [ + [ + 48.56, + 30.58 + ], + [ + 48.62, + 30.86 + ], + [ + 48.34, + 30.47 + ], + [ + 48.6, + 30.49 + ], + [ + 48.56, + 30.58 + ] + ], + [ + [ + 58.76, + 27.67 + ], + [ + 58.71, + 27.25 + ], + [ + 58.93, + 27.2 + ], + [ + 59.13, + 27.57 + ], + [ + 58.76, + 27.67 + ] + ] + ], + [ + [ + [ + 49.08, + 30.36 + ], + [ + 49.19, + 30.21 + ], + [ + 48.92, + 30.39 + ], + [ + 49.08, + 30.36 + ] + ] + ], + [ + [ + [ + 55.79, + 26.79 + ], + [ + 55.75, + 26.95 + ], + [ + 56.29, + 26.95 + ], + [ + 55.94, + 26.69 + ], + [ + 55.27, + 26.55 + ], + [ + 55.27, + 26.66 + ], + [ + 55.79, + 26.79 + ] + ] + ] + ] + }, + "properties": { + "A3": "IRN" + } + }, + { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + 92.6, + 21.98 + ], + [ + 92.71, + 22.16 + ], + [ + 93, + 21.99 + ], + [ + 93.2, + 22.26 + ], + [ + 93.1, + 22.81 + ], + [ + 93.13, + 23.06 + ], + [ + 93.29, + 23.01 + ], + [ + 93.39, + 23.14 + ], + [ + 93.34, + 24.1 + ], + [ + 93.5, + 23.95 + ], + [ + 93.76, + 24.01 + ], + [ + 94.16, + 23.85 + ], + [ + 94.74, + 25 + ], + [ + 94.58, + 25.22 + ], + [ + 94.64, + 25.4 + ], + [ + 95.18, + 26.07 + ], + [ + 95.15, + 26.61 + ], + [ + 96.1, + 27.22 + ], + [ + 96.61, + 27.37 + ], + [ + 97.15, + 27.09 + ], + [ + 96.9, + 27.61 + ], + [ + 97.34, + 27.89 + ], + [ + 97.34, + 27.88 + ], + [ + 97.37, + 27.92 + ], + [ + 97.38, + 27.99 + ], + [ + 97.31, + 28.06 + ], + [ + 97.33, + 28.1 + ], + [ + 97.33, + 28.13 + ], + [ + 97.33, + 28.14 + ], + [ + 97.35, + 28.15 + ], + [ + 97.36, + 28.17 + ], + [ + 97.35, + 28.17 + ], + [ + 97.36, + 28.18 + ], + [ + 97.36, + 28.2 + ], + [ + 97.36, + 28.21 + ], + [ + 97.35, + 28.21 + ], + [ + 97.51, + 28.49 + ], + [ + 97.52, + 28.49 + ], + [ + 97.52, + 28.5 + ], + [ + 97.55, + 28.53 + ], + [ + 97.56, + 28.54 + ], + [ + 97.64, + 28.54 + ], + [ + 97.65, + 28.54 + ], + [ + 97.74, + 28.46 + ], + [ + 97.73, + 28.46 + ], + [ + 97.74, + 28.46 + ], + [ + 97.95, + 28.3 + ], + [ + 98.13, + 28.15 + ], + [ + 98.14, + 28.15 + ], + [ + 98.14, + 28.14 + ], + [ + 98.32, + 27.52 + ], + [ + 98.44, + 27.67 + ], + [ + 98.71, + 27.56 + ], + [ + 98.78, + 26.61 + ], + [ + 98.72, + 26.13 + ], + [ + 98.58, + 26.08 + ], + [ + 98.58, + 26.07 + ], + [ + 98.59, + 26.07 + ], + [ + 98.6, + 26.06 + ], + [ + 98.6, + 26.05 + ], + [ + 98.6, + 26.04 + ], + [ + 98.6, + 26.03 + ], + [ + 98.6, + 26.02 + ], + [ + 98.61, + 26.02 + ], + [ + 98.61, + 26.01 + ], + [ + 98.61, + 26 + ], + [ + 98.61, + 25.99 + ], + [ + 98.62, + 25.99 + ], + [ + 98.62, + 25.98 + ], + [ + 98.62, + 25.97 + ], + [ + 98.63, + 25.97 + ], + [ + 98.63, + 25.98 + ], + [ + 98.64, + 25.98 + ], + [ + 98.65, + 25.97 + ], + [ + 98.65, + 25.96 + ], + [ + 98.66, + 25.96 + ], + [ + 98.66, + 25.95 + ], + [ + 98.67, + 25.95 + ], + [ + 98.68, + 25.94 + ], + [ + 98.69, + 25.94 + ], + [ + 98.69, + 25.93 + ], + [ + 98.4, + 25.6 + ], + [ + 98.17, + 25.63 + ], + [ + 98.14, + 25.39 + ], + [ + 97.78, + 25.13 + ], + [ + 97.78, + 25.12 + ], + [ + 97.8, + 24.85 + ], + [ + 97.55, + 24.74 + ], + [ + 97.53, + 24.44 + ], + [ + 97.67, + 24.46 + ], + [ + 97.77, + 24.26 + ], + [ + 97.76, + 24.26 + ], + [ + 97.76, + 24.25 + ], + [ + 97.74, + 24.24 + ], + [ + 97.73, + 24.21 + ], + [ + 97.74, + 24.18 + ], + [ + 97.75, + 24.18 + ], + [ + 97.75, + 24.17 + ], + [ + 97.59, + 23.99 + ], + [ + 97.58, + 23.99 + ], + [ + 97.6, + 23.9 + ], + [ + 97.62, + 23.89 + ], + [ + 97.63, + 23.88 + ], + [ + 97.63, + 23.87 + ], + [ + 97.64, + 23.87 + ], + [ + 97.64, + 23.86 + ], + [ + 97.64, + 23.85 + ], + [ + 97.65, + 23.85 + ], + [ + 97.7, + 23.87 + ], + [ + 97.71, + 23.87 + ], + [ + 97.74, + 23.9 + ], + [ + 97.75, + 23.9 + ], + [ + 97.75, + 23.91 + ], + [ + 97.76, + 23.91 + ], + [ + 97.77, + 23.92 + ], + [ + 97.76, + 23.92 + ], + [ + 97.77, + 23.94 + ], + [ + 97.78, + 23.94 + ], + [ + 97.79, + 23.94 + ], + [ + 97.79, + 23.95 + ], + [ + 97.81, + 23.96 + ], + [ + 97.82, + 23.96 + ], + [ + 97.81, + 23.95 + ], + [ + 97.83, + 23.96 + ], + [ + 97.84, + 23.98 + ], + [ + 97.84, + 23.97 + ], + [ + 97.85, + 23.97 + ], + [ + 97.86, + 23.98 + ], + [ + 97.88, + 23.98 + ], + [ + 97.88, + 23.97 + ], + [ + 97.89, + 23.99 + ], + [ + 97.88, + 23.99 + ], + [ + 97.89, + 24 + ], + [ + 97.89, + 24.01 + ], + [ + 97.9, + 24.01 + ], + [ + 98, + 24.05 + ], + [ + 98.09, + 24.09 + ], + [ + 98.1, + 24.09 + ], + [ + 98.12, + 24.09 + ], + [ + 98.27, + 24.11 + ], + [ + 98.3, + 24.1 + ], + [ + 98.31, + 24.1 + ], + [ + 98.32, + 24.1 + ], + [ + 98.33, + 24.1 + ], + [ + 98.34, + 24.1 + ], + [ + 98.35, + 24.1 + ], + [ + 98.59, + 24.09 + ], + [ + 98.59, + 24.08 + ], + [ + 98.63, + 24.1 + ], + [ + 98.64, + 24.1 + ], + [ + 98.72, + 24.13 + ], + [ + 98.73, + 24.13 + ], + [ + 98.76, + 24.13 + ], + [ + 98.77, + 24.13 + ], + [ + 98.83, + 24.13 + ], + [ + 98.67, + 23.81 + ], + [ + 98.89, + 23.62 + ], + [ + 98.83, + 23.48 + ], + [ + 98.84, + 23.48 + ], + [ + 98.89, + 23.18 + ], + [ + 99.51, + 23.08 + ], + [ + 99.56, + 22.95 + ], + [ + 99.31, + 22.74 + ], + [ + 99.38, + 22.5 + ], + [ + 99.17, + 22.15 + ], + [ + 99.97, + 22.06 + ], + [ + 99.95, + 21.82 + ], + [ + 100.16, + 21.68 + ], + [ + 100.17, + 21.49 + ], + [ + 100.59, + 21.45 + ], + [ + 101.1, + 21.78 + ], + [ + 101.15, + 21.56 + ], + [ + 100.72, + 21.31 + ], + [ + 100.52, + 20.95 + ], + [ + 100.62, + 20.85 + ], + [ + 100.36, + 20.83 + ], + [ + 100.17, + 20.61 + ], + [ + 100.16, + 20.57 + ], + [ + 100.15, + 20.57 + ], + [ + 100.15, + 20.55 + ], + [ + 100.13, + 20.48 + ], + [ + 100.13, + 20.46 + ], + [ + 100.12, + 20.45 + ], + [ + 100.12, + 20.44 + ], + [ + 100.12, + 20.42 + ], + [ + 100.12, + 20.41 + ], + [ + 100.11, + 20.39 + ], + [ + 100.1, + 20.37 + ], + [ + 100.08, + 20.37 + ], + [ + 100.06, + 20.39 + ], + [ + 99.46, + 20.39 + ], + [ + 99.54, + 20.15 + ], + [ + 99.08, + 20.1 + ], + [ + 98.99, + 19.74 + ], + [ + 98.25, + 19.68 + ], + [ + 98.03, + 19.81 + ], + [ + 97.79, + 19.4 + ], + [ + 97.84, + 19.09 + ], + [ + 97.67, + 18.94 + ], + [ + 97.77, + 18.58 + ], + [ + 97.34, + 18.58 + ], + [ + 97.69, + 18.09 + ], + [ + 97.69, + 18.08 + ], + [ + 97.69, + 18.06 + ], + [ + 97.69, + 18.07 + ], + [ + 97.71, + 18.04 + ], + [ + 97.74, + 17.98 + ], + [ + 97.73, + 17.96 + ], + [ + 97.69, + 17.92 + ], + [ + 97.69, + 17.91 + ], + [ + 97.67, + 17.88 + ], + [ + 97.67, + 17.87 + ], + [ + 97.69, + 17.84 + ], + [ + 97.69, + 17.83 + ], + [ + 98, + 17.5 + ], + [ + 98.02, + 17.48 + ], + [ + 98.02, + 17.47 + ], + [ + 98.53, + 16.81 + ], + [ + 98.52, + 16.81 + ], + [ + 98.52, + 16.8 + ], + [ + 98.53, + 16.8 + ], + [ + 98.5, + 16.79 + ], + [ + 98.48, + 16.76 + ], + [ + 98.48, + 16.72 + ], + [ + 98.5, + 16.7 + ], + [ + 98.68, + 16.27 + ], + [ + 98.83, + 16.42 + ], + [ + 98.93, + 16.33 + ], + [ + 98.85, + 16.13 + ], + [ + 98.57, + 16.06 + ], + [ + 98.58, + 15.38 + ], + [ + 98.39, + 15.33 + ], + [ + 98.4, + 15.32 + ], + [ + 98.2, + 15.23 + ], + [ + 98.25, + 14.83 + ], + [ + 99.11, + 13.89 + ], + [ + 99.21, + 13.26 + ], + [ + 99.1, + 13.07 + ], + [ + 99.44, + 12.58 + ], + [ + 99.47, + 12.13 + ], + [ + 99.66, + 11.82 + ], + [ + 99.23, + 11.11 + ], + [ + 98.78, + 10.68 + ], + [ + 98.81, + 10.49 + ], + [ + 98.8, + 10.45 + ], + [ + 98.78, + 10.44 + ], + [ + 98.77, + 10.42 + ], + [ + 98.75, + 10.38 + ], + [ + 98.74, + 10.32 + ], + [ + 98.74, + 10.31 + ], + [ + 98.72, + 10.26 + ], + [ + 98.71, + 10.25 + ], + [ + 98.68, + 10.23 + ], + [ + 98.7, + 10.22 + ], + [ + 98.7, + 10.21 + ], + [ + 98.64, + 10.19 + ], + [ + 98.61, + 10.12 + ], + [ + 98.55, + 9.97 + ], + [ + 98.45, + 10.69 + ], + [ + 98.79, + 11 + ], + [ + 98.65, + 11.13 + ], + [ + 98.72, + 11.46 + ], + [ + 98.83, + 11.36 + ], + [ + 98.81, + 11.55 + ], + [ + 98.71, + 11.53 + ], + [ + 98.83, + 11.7 + ], + [ + 98.88, + 11.72 + ], + [ + 98.79, + 11.73 + ], + [ + 98.82, + 11.84 + ], + [ + 98.68, + 12.03 + ], + [ + 98.72, + 12.08 + ], + [ + 98.62, + 12.1 + ], + [ + 98.71, + 12.21 + ], + [ + 98.56, + 12.2 + ], + [ + 98.59, + 12.3 + ], + [ + 98.69, + 12.32 + ], + [ + 98.56, + 12.34 + ], + [ + 98.55, + 12.36 + ], + [ + 98.8, + 12.59 + ], + [ + 98.61, + 12.55 + ], + [ + 98.72, + 12.81 + ], + [ + 98.59, + 13.26 + ], + [ + 98.23, + 13.71 + ], + [ + 98.22, + 13.99 + ], + [ + 98.12, + 13.55 + ], + [ + 98.1, + 14.18 + ], + [ + 97.87, + 14.68 + ], + [ + 98.02, + 14.63 + ], + [ + 97.92, + 14.89 + ], + [ + 97.82, + 14.75 + ], + [ + 97.72, + 15.86 + ], + [ + 97.57, + 16.02 + ], + [ + 97.62, + 16.48 + ], + [ + 97.56, + 16.34 + ], + [ + 97.54, + 16.19 + ], + [ + 97.44, + 16.48 + ], + [ + 97.67, + 16.54 + ], + [ + 97.36, + 16.51 + ], + [ + 96.9, + 17.41 + ], + [ + 96.87, + 16.92 + ], + [ + 96.66, + 16.58 + ], + [ + 96.4, + 16.48 + ], + [ + 96.24, + 16.78 + ], + [ + 96.32, + 16.4 + ], + [ + 95.73, + 16.13 + ], + [ + 95.42, + 15.72 + ], + [ + 95.28, + 15.73 + ], + [ + 95.32, + 15.95 + ], + [ + 95.12, + 15.8 + ], + [ + 95.12, + 16.14 + ], + [ + 95.02, + 15.79 + ], + [ + 94.84, + 15.77 + ], + [ + 94.88, + 15.89 + ], + [ + 94.74, + 15.8 + ], + [ + 94.92, + 16.21 + ], + [ + 94.72, + 15.85 + ], + [ + 94.6, + 15.92 + ], + [ + 94.68, + 16.02 + ], + [ + 94.55, + 15.95 + ], + [ + 94.68, + 16.21 + ], + [ + 94.39, + 15.83 + ], + [ + 94.38, + 16.01 + ], + [ + 94.68, + 16.23 + ], + [ + 94.68, + 16.52 + ], + [ + 94.61, + 16.24 + ], + [ + 94.24, + 15.95 + ], + [ + 94.24, + 16.54 + ], + [ + 94.5, + 17.31 + ], + [ + 94.66, + 17.21 + ], + [ + 94.56, + 17.6 + ], + [ + 94.66, + 17.49 + ], + [ + 94.14, + 18.74 + ], + [ + 94.3, + 18.69 + ], + [ + 94.25, + 18.88 + ], + [ + 94.09, + 18.85 + ], + [ + 94.06, + 19.04 + ], + [ + 94.12, + 19.41 + ], + [ + 93.73, + 19.62 + ], + [ + 93.84, + 19.71 + ], + [ + 93.75, + 19.94 + ], + [ + 93.52, + 19.92 + ], + [ + 93.43, + 20.15 + ], + [ + 93.36, + 20.02 + ], + [ + 93.29, + 20.33 + ], + [ + 93.27, + 20.03 + ], + [ + 93.24, + 20.31 + ], + [ + 93, + 20.14 + ], + [ + 93.08, + 20.63 + ], + [ + 92.95, + 20.23 + ], + [ + 92.93, + 20.44 + ], + [ + 92.81, + 20.47 + ], + [ + 92.78, + 20.28 + ], + [ + 92.78, + 20.56 + ], + [ + 92.62, + 20.65 + ], + [ + 92.73, + 20.26 + ], + [ + 92.26, + 21.06 + ], + [ + 92.22, + 21.12 + ], + [ + 92.21, + 21.12 + ], + [ + 92.2, + 21.16 + ], + [ + 92.19, + 21.16 + ], + [ + 92.18, + 21.16 + ], + [ + 92.37, + 21.48 + ], + [ + 92.68, + 21.29 + ], + [ + 92.6, + 21.98 + ] + ], + [ + [ + 97.27, + 25.28 + ], + [ + 97.21, + 25.06 + ], + [ + 97.34, + 25.1 + ], + [ + 97.27, + 25.28 + ] + ], + [ + [ + 95.41, + 23.36 + ], + [ + 95.49, + 23.52 + ], + [ + 95.36, + 23.59 + ], + [ + 95.26, + 23.32 + ], + [ + 95.41, + 23.36 + ] + ], + [ + [ + 95.64, + 16.4 + ], + [ + 95.61, + 16.38 + ], + [ + 95.63, + 16.38 + ], + [ + 95.64, + 16.4 + ] + ], + [ + [ + 92.98, + 19.95 + ], + [ + 92.92, + 20.09 + ], + [ + 93.03, + 19.82 + ], + [ + 92.98, + 19.95 + ] + ], + [ + [ + 93.17, + 19.96 + ], + [ + 93.25, + 19.82 + ], + [ + 93.13, + 20.06 + ], + [ + 93.17, + 19.96 + ] + ] + ], + [ + [ + [ + 100.16, + 20.57 + ], + [ + 100.15, + 20.56 + ], + [ + 100.15, + 20.57 + ], + [ + 100.16, + 20.57 + ] + ] + ], + [ + [ + [ + 93.75, + 19.39 + ], + [ + 93.85, + 19.48 + ], + [ + 93.86, + 19.3 + ], + [ + 93.75, + 19.39 + ] + ] + ], + [ + [ + [ + 93.87, + 19.21 + ], + [ + 93.94, + 18.85 + ], + [ + 93.67, + 19.02 + ], + [ + 93.79, + 19.13 + ], + [ + 93.66, + 19.07 + ], + [ + 93.48, + 19.4 + ], + [ + 93.61, + 19.41 + ], + [ + 93.62, + 19.17 + ], + [ + 93.68, + 19.29 + ], + [ + 93.87, + 19.21 + ] + ] + ], + [ + [ + [ + 93.74, + 18.82 + ], + [ + 93.66, + 18.67 + ], + [ + 93.48, + 18.87 + ], + [ + 93.74, + 18.82 + ] + ] + ], + [ + [ + [ + 93.52, + 19.92 + ], + [ + 93.51, + 19.73 + ], + [ + 93.4, + 19.96 + ], + [ + 93.52, + 19.92 + ] + ] + ], + [ + [ + [ + 92.88, + 20.21 + ], + [ + 92.9, + 20.11 + ], + [ + 92.76, + 20.2 + ], + [ + 92.86, + 20.3 + ], + [ + 92.88, + 20.21 + ] + ] + ], + [ + [ + [ + 98.46, + 12.45 + ], + [ + 98.31, + 12.32 + ], + [ + 98.31, + 12.69 + ], + [ + 98.46, + 12.45 + ] + ] + ], + [ + [ + [ + 98.26, + 10.86 + ], + [ + 98.26, + 10.69 + ], + [ + 98.21, + 10.89 + ], + [ + 98.08, + 10.89 + ], + [ + 98.18, + 10.99 + ], + [ + 98.26, + 10.86 + ] + ] + ], + [ + [ + [ + 98.51, + 11.99 + ], + [ + 98.66, + 11.93 + ], + [ + 98.47, + 11.88 + ], + [ + 98.44, + 12.11 + ], + [ + 98.51, + 11.99 + ] + ] + ], + [ + [ + [ + 98.6, + 11.85 + ], + [ + 98.81, + 11.84 + ], + [ + 98.69, + 11.67 + ], + [ + 98.6, + 11.85 + ] + ] + ], + [ + [ + [ + 98.55, + 11.75 + ], + [ + 98.52, + 11.51 + ], + [ + 98.36, + 11.78 + ], + [ + 98.55, + 11.75 + ] + ] + ], + [ + [ + [ + 98.17, + 10.01 + ], + [ + 98.3, + 10.03 + ], + [ + 98.13, + 9.84 + ], + [ + 98.17, + 10.01 + ] + ] + ] + ] + }, + "properties": { + "A3": "MMR" + } + }, + { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + -7.4, + 54.95 + ], + [ + -7.26, + 55.07 + ], + [ + -6.48, + 55.25 + ], + [ + -6.06, + 55.2 + ], + [ + -5.69, + 54.8 + ], + [ + -5.92, + 54.6 + ], + [ + -5.58, + 54.68 + ], + [ + -5.44, + 54.46 + ], + [ + -5.5, + 54.33 + ], + [ + -5.69, + 54.58 + ], + [ + -5.52, + 54.31 + ], + [ + -5.82, + 54.28 + ], + [ + -6.06, + 54.02 + ], + [ + -6.29, + 54.11 + ], + [ + -6.62, + 54.04 + ], + [ + -6.64, + 54.14 + ], + [ + -7.03, + 54.42 + ], + [ + -7.2, + 54.22 + ], + [ + -7.21, + 54.21 + ], + [ + -7.39, + 54.13 + ], + [ + -7.41, + 54.15 + ], + [ + -7.41, + 54.16 + ], + [ + -7.42, + 54.15 + ], + [ + -7.44, + 54.15 + ], + [ + -7.46, + 54.14 + ], + [ + -7.47, + 54.14 + ], + [ + -7.47, + 54.13 + ], + [ + -7.49, + 54.12 + ], + [ + -7.49, + 54.13 + ], + [ + -7.69, + 54.2 + ], + [ + -7.87, + 54.29 + ], + [ + -7.9, + 54.3 + ], + [ + -7.91, + 54.3 + ], + [ + -7.92, + 54.3 + ], + [ + -7.98, + 54.34 + ], + [ + -8.1, + 54.41 + ], + [ + -8.15, + 54.44 + ], + [ + -8.01, + 54.54 + ], + [ + -8, + 54.54 + ], + [ + -7.87, + 54.54 + ], + [ + -7.65, + 54.41 + ], + [ + -7.85, + 54.53 + ], + [ + -7.82, + 54.55 + ], + [ + -7.83, + 54.55 + ], + [ + -7.69, + 54.61 + ], + [ + -7.74, + 54.62 + ], + [ + -7.85, + 54.63 + ], + [ + -7.92, + 54.7 + ], + [ + -7.54, + 54.8 + ], + [ + -7.47, + 54.84 + ], + [ + -7.44, + 54.87 + ], + [ + -7.44, + 54.88 + ], + [ + -7.44, + 54.89 + ], + [ + -7.45, + 54.9 + ], + [ + -7.45, + 54.91 + ], + [ + -7.45, + 54.92 + ], + [ + -7.45, + 54.93 + ], + [ + -7.44, + 54.94 + ], + [ + -7.4, + 54.94 + ], + [ + -7.4, + 54.95 + ] + ], + [ + [ + -6.53, + 54.72 + ], + [ + -6.61, + 54.55 + ], + [ + -6.37, + 54.48 + ], + [ + -6.23, + 54.71 + ], + [ + -6.53, + 54.72 + ] + ] + ], + [ + [ + [ + -7.41, + 54.14 + ], + [ + -7.42, + 54.14 + ], + [ + -7.43, + 54.14 + ], + [ + -7.41, + 54.15 + ], + [ + -7.41, + 54.14 + ] + ] + ], + [ + [ + [ + -1.64, + 60.31 + ], + [ + -1.26, + 60.35 + ], + [ + -1.63, + 60.48 + ], + [ + -1.31, + 60.64 + ], + [ + -1.38, + 60.4 + ], + [ + -1.05, + 60.44 + ], + [ + -1.27, + 59.85 + ], + [ + -1.27, + 60.24 + ], + [ + -1.46, + 60.15 + ], + [ + -1.64, + 60.31 + ] + ] + ], + [ + [ + [ + -2.91, + 58.87 + ], + [ + -2.96, + 58.73 + ], + [ + -3.04, + 58.82 + ], + [ + -2.9, + 58.9 + ], + [ + -3.35, + 58.96 + ], + [ + -3.33, + 59.14 + ], + [ + -2.71, + 58.97 + ], + [ + -2.91, + 58.87 + ] + ] + ], + [ + [ + [ + -5.16, + 55.44 + ], + [ + -5.36, + 55.51 + ], + [ + -5.28, + 55.72 + ], + [ + -5.16, + 55.44 + ] + ] + ], + [ + [ + [ + -5.06, + 55.85 + ], + [ + -5.03, + 55.72 + ], + [ + -5.19, + 55.93 + ], + [ + -5.06, + 55.85 + ] + ] + ], + [ + [ + [ + -5.67, + 56.42 + ], + [ + -6.38, + 56.31 + ], + [ + -5.98, + 56.39 + ], + [ + -6.2, + 56.36 + ], + [ + -6, + 56.5 + ], + [ + -6.34, + 56.54 + ], + [ + -6.13, + 56.66 + ], + [ + -5.67, + 56.42 + ] + ] + ], + [ + [ + [ + -6.07, + 55.92 + ], + [ + -5.7, + 56.15 + ], + [ + -5.96, + 55.79 + ], + [ + -6.07, + 55.92 + ] + ] + ], + [ + [ + [ + -6.33, + 55.61 + ], + [ + -6.46, + 55.85 + ], + [ + -6.12, + 55.94 + ], + [ + -6.02, + 55.68 + ], + [ + -6.33, + 55.61 + ] + ] + ], + [ + [ + [ + -7.27, + 57.51 + ], + [ + -7.55, + 57.61 + ], + [ + -7.16, + 57.74 + ], + [ + -7.27, + 57.51 + ] + ] + ], + [ + [ + [ + -7.31, + 57.23 + ], + [ + -7.23, + 57.1 + ], + [ + -7.46, + 57.24 + ], + [ + -7.33, + 57.41 + ], + [ + -7.31, + 57.23 + ] + ] + ], + [ + [ + [ + -6.11, + 57.18 + ], + [ + -6.79, + 57.42 + ], + [ + -6.72, + 57.51 + ], + [ + -6.58, + 57.42 + ], + [ + -6.63, + 57.61 + ], + [ + -6.31, + 57.46 + ], + [ + -6.35, + 57.71 + ], + [ + -6.17, + 57.3 + ], + [ + -5.65, + 57.26 + ], + [ + -6, + 57.02 + ], + [ + -5.84, + 57.19 + ], + [ + -6.11, + 57.18 + ] + ] + ], + [ + [ + [ + -6.81, + 58.29 + ], + [ + -6.59, + 58.34 + ], + [ + -6.26, + 58.52 + ], + [ + -6.38, + 58.23 + ], + [ + -6.15, + 58.22 + ], + [ + -6.63, + 58.08 + ], + [ + -6.38, + 58.1 + ], + [ + -6.47, + 57.94 + ], + [ + -6.69, + 58.06 + ], + [ + -6.67, + 57.88 + ], + [ + -6.97, + 57.73 + ], + [ + -7.13, + 57.84 + ], + [ + -6.81, + 57.9 + ], + [ + -7.14, + 58.13 + ], + [ + -7.02, + 58.24 + ], + [ + -6.72, + 58.17 + ], + [ + -6.81, + 58.29 + ] + ] + ], + [ + [ + [ + -4.58, + 53.29 + ], + [ + -4.43, + 53.43 + ], + [ + -4.04, + 53.31 + ], + [ + -4.1, + 53.25 + ], + [ + -4.21, + 53.21 + ], + [ + -4.22, + 53.19 + ], + [ + -4.3, + 53.15 + ], + [ + -4.34, + 53.15 + ], + [ + -4.33, + 53.13 + ], + [ + -4.42, + 53.16 + ], + [ + -4.35, + 53.2 + ], + [ + -4.44, + 53.16 + ], + [ + -4.58, + 53.29 + ] + ] + ], + [ + [ + [ + 0, + 51.51 + ], + [ + 0.01, + 51.51 + ], + [ + 0.01, + 51.5 + ], + [ + 0, + 51.5 + ], + [ + 0, + 51.51 + ] + ] + ], + [ + [ + [ + -1.22, + 50.73 + ], + [ + -1.07, + 50.68 + ], + [ + -1.26, + 50.58 + ], + [ + -1.59, + 50.66 + ], + [ + -1.22, + 50.73 + ] + ] + ], + [ + [ + [ + -1.41, + 50.9 + ], + [ + -1.54, + 50.74 + ], + [ + -2.04, + 50.73 + ], + [ + -2.06, + 50.58 + ], + [ + -3.49, + 50.7 + ], + [ + -3.64, + 50.22 + ], + [ + -4.12, + 50.32 + ], + [ + -4.21, + 50.52 + ], + [ + -4.19, + 50.32 + ], + [ + -4.67, + 50.41 + ], + [ + -4.99, + 50.15 + ], + [ + -5.05, + 50.27 + ], + [ + -5.19, + 49.96 + ], + [ + -5.48, + 50.13 + ], + [ + -5.71, + 50.06 + ], + [ + -5.04, + 50.55 + ], + [ + -4.83, + 50.52 + ], + [ + -4.53, + 51.02 + ], + [ + -4.22, + 51.06 + ], + [ + -4.17, + 50.96 + ], + [ + -4.05, + 51.07 + ], + [ + -4.23, + 51.19 + ], + [ + -2.99, + 51.22 + ], + [ + -2.49, + 51.7 + ], + [ + -3.41, + 51.38 + ], + [ + -3.84, + 51.64 + ], + [ + -4.31, + 51.56 + ], + [ + -4.05, + 51.66 + ], + [ + -4.33, + 51.68 + ], + [ + -4.32, + 51.83 + ], + [ + -4.93, + 51.6 + ], + [ + -5.13, + 51.68 + ], + [ + -4.82, + 51.79 + ], + [ + -5.18, + 51.68 + ], + [ + -5.12, + 51.85 + ], + [ + -5.32, + 51.86 + ], + [ + -4.21, + 52.26 + ], + [ + -3.93, + 52.55 + ], + [ + -4.13, + 52.61 + ], + [ + -3.92, + 52.75 + ], + [ + -4.15, + 52.81 + ], + [ + -4.01, + 52.94 + ], + [ + -4.77, + 52.79 + ], + [ + -4.34, + 53.12 + ], + [ + -4.32, + 53.1 + ], + [ + -4.31, + 53.13 + ], + [ + -4.27, + 53.13 + ], + [ + -4.28, + 53.14 + ], + [ + -4.21, + 53.18 + ], + [ + -4.19, + 53.21 + ], + [ + -4.12, + 53.24 + ], + [ + -4.03, + 53.24 + ], + [ + -3.85, + 53.3 + ], + [ + -3.82, + 53.17 + ], + [ + -3.8, + 53.27 + ], + [ + -3.87, + 53.34 + ], + [ + -3.31, + 53.36 + ], + [ + -3.04, + 53.22 + ], + [ + -3.1, + 53.3 + ], + [ + -3.05, + 53.45 + ], + [ + -2.88, + 53.29 + ], + [ + -2.58, + 53.38 + ], + [ + -2.87, + 53.33 + ], + [ + -3.1, + 53.55 + ], + [ + -2.84, + 53.74 + ], + [ + -3.05, + 53.92 + ], + [ + -2.9, + 53.86 + ], + [ + -2.79, + 54.23 + ], + [ + -3.05, + 54.24 + ], + [ + -3.15, + 54.07 + ], + [ + -3.64, + 54.51 + ], + [ + -3.4, + 54.87 + ], + [ + -3.05, + 54.99 + ], + [ + -3.62, + 55.07 + ], + [ + -3.57, + 54.89 + ], + [ + -3.98, + 54.77 + ], + [ + -4.46, + 54.95 + ], + [ + -4.39, + 54.68 + ], + [ + -4.86, + 54.87 + ], + [ + -4.86, + 54.63 + ], + [ + -5.18, + 54.92 + ], + [ + -5.11, + 55.02 + ], + [ + -4.99, + 54.91 + ], + [ + -4.62, + 55.49 + ], + [ + -4.88, + 55.94 + ], + [ + -4.32, + 55.86 + ], + [ + -4.7, + 55.97 + ], + [ + -4.84, + 56.08 + ], + [ + -4.85, + 55.99 + ], + [ + -4.88, + 56.06 + ], + [ + -4.75, + 56.21 + ], + [ + -4.92, + 56.16 + ], + [ + -4.98, + 55.86 + ], + [ + -5.12, + 56.01 + ], + [ + -5.31, + 55.85 + ], + [ + -4.92, + 56.27 + ], + [ + -5.45, + 56.03 + ], + [ + -5.32, + 55.78 + ], + [ + -5.52, + 55.36 + ], + [ + -5.8, + 55.3 + ], + [ + -5.44, + 55.86 + ], + [ + -5.67, + 55.8 + ], + [ + -5.58, + 56.33 + ], + [ + -5.12, + 56.49 + ], + [ + -5.47, + 56.48 + ], + [ + -5.32, + 56.65 + ], + [ + -4.98, + 56.71 + ], + [ + -5.25, + 56.7 + ], + [ + -5.08, + 56.83 + ], + [ + -5.33, + 56.86 + ], + [ + -5.12, + 56.83 + ], + [ + -5.69, + 56.5 + ], + [ + -6, + 56.65 + ], + [ + -5.54, + 56.69 + ], + [ + -6.21, + 56.7 + ], + [ + -5.75, + 56.78 + ], + [ + -5.83, + 57.01 + ], + [ + -5.51, + 57 + ], + [ + -5.8, + 57.07 + ], + [ + -5.39, + 57.11 + ], + [ + -5.62, + 57.22 + ], + [ + -5.61, + 57.22 + ], + [ + -5.62, + 57.22 + ], + [ + -5.39, + 57.23 + ], + [ + -5.73, + 57.28 + ], + [ + -5.44, + 57.42 + ], + [ + -5.82, + 57.36 + ], + [ + -5.84, + 57.58 + ], + [ + -5.51, + 57.54 + ], + [ + -5.82, + 57.64 + ], + [ + -5.81, + 57.86 + ], + [ + -5.6, + 57.77 + ], + [ + -5.62, + 57.92 + ], + [ + -5.22, + 57.84 + ], + [ + -5.36, + 57.94 + ], + [ + -5.07, + 57.83 + ], + [ + -5.46, + 58.07 + ], + [ + -5.24, + 58.15 + ], + [ + -5.38, + 58.26 + ], + [ + -4.94, + 58.21 + ], + [ + -5.18, + 58.35 + ], + [ + -5.01, + 58.62 + ], + [ + -4.65, + 58.55 + ], + [ + -4.75, + 58.45 + ], + [ + -4.44, + 58.56 + ], + [ + -4.48, + 58.44 + ], + [ + -4.02, + 58.6 + ], + [ + -3.02, + 58.64 + ], + [ + -3.21, + 58.31 + ], + [ + -3.98, + 57.97 + ], + [ + -4.01, + 57.86 + ], + [ + -4.36, + 57.89 + ], + [ + -4.05, + 57.81 + ], + [ + -3.77, + 57.87 + ], + [ + -4.42, + 57.5 + ], + [ + -3.29, + 57.73 + ], + [ + -2, + 57.7 + ], + [ + -1.77, + 57.47 + ], + [ + -2.54, + 56.57 + ], + [ + -3.41, + 56.38 + ], + [ + -2.81, + 56.45 + ], + [ + -2.91, + 56.35 + ], + [ + -2.6, + 56.26 + ], + [ + -3.39, + 56.01 + ], + [ + -3.91, + 56.12 + ], + [ + -3.69, + 56.01 + ], + [ + -3.07, + 55.95 + ], + [ + -2.65, + 56.06 + ], + [ + -1.64, + 55.58 + ], + [ + -1.2, + 54.62 + ], + [ + -0.59, + 54.49 + ], + [ + -0.08, + 54.12 + ], + [ + -0.21, + 54 + ], + [ + 0.14, + 53.62 + ], + [ + -0.25, + 53.74 + ], + [ + -0.68, + 53.7 + ], + [ + -0.29, + 53.71 + ], + [ + 0.23, + 53.41 + ], + [ + 0.34, + 53.1 + ], + [ + -0.04, + 52.87 + ], + [ + 0.2, + 52.77 + ], + [ + 0.54, + 52.97 + ], + [ + 1.01, + 52.97 + ], + [ + 1.7, + 52.72 + ], + [ + 1.58, + 52.09 + ], + [ + 1.05, + 51.95 + ], + [ + 1.29, + 51.95 + ], + [ + 1.22, + 51.81 + ], + [ + 0.91, + 51.89 + ], + [ + 1, + 51.79 + ], + [ + 0.68, + 51.73 + ], + [ + 0.94, + 51.74 + ], + [ + 0.9, + 51.62 + ], + [ + 0.57, + 51.62 + ], + [ + 0.85, + 51.55 + ], + [ + 0.25, + 51.47 + ], + [ + 0.7, + 51.47 + ], + [ + 0.52, + 51.39 + ], + [ + 0.9, + 51.33 + ], + [ + 1.42, + 51.39 + ], + [ + 1.33, + 51.11 + ], + [ + 0.24, + 50.73 + ], + [ + -0.29, + 50.85 + ], + [ + -0.79, + 50.72 + ], + [ + -0.81, + 50.83 + ], + [ + -1.14, + 50.77 + ], + [ + -1.41, + 50.9 + ] + ], + [ + [ + 0, + 51.51 + ], + [ + 0, + 51.5 + ], + [ + 0.01, + 51.5 + ], + [ + 0.01, + 51.51 + ], + [ + 0, + 51.51 + ] + ] + ] + ] + }, + "properties": { + "A3": "GBR" + } + }, + { + "type": "Feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + 24, + -10.89 + ], + [ + 24.38, + -11.09 + ], + [ + 24.28, + -11.39 + ], + [ + 24.44, + -11.47 + ], + [ + 25.35, + -11.2 + ], + [ + 25.33, + -11.63 + ], + [ + 25.98, + -11.95 + ], + [ + 26.88, + -11.98 + ], + [ + 27.02, + -11.61 + ], + [ + 27.21, + -11.56 + ], + [ + 27.23, + -11.79 + ], + [ + 27.46, + -11.93 + ], + [ + 27.62, + -12.27 + ], + [ + 27.93, + -12.24 + ], + [ + 27.96, + -12.36 + ], + [ + 28.45, + -12.52 + ], + [ + 28.46, + -12.73 + ], + [ + 28.78, + -12.94 + ], + [ + 29.01, + -13.42 + ], + [ + 29.59, + -13.2 + ], + [ + 29.64, + -13.43 + ], + [ + 29.81, + -13.44 + ], + [ + 29.81, + -12.15 + ], + [ + 29.53, + -12.23 + ], + [ + 29.52, + -12.23 + ], + [ + 29.51, + -12.23 + ], + [ + 29.47, + -12.3 + ], + [ + 29.46, + -12.3 + ], + [ + 29.46, + -12.34 + ], + [ + 29.47, + -12.36 + ], + [ + 29.48, + -12.38 + ], + [ + 29.48, + -12.39 + ], + [ + 29.53, + -12.42 + ], + [ + 29.52, + -12.43 + ], + [ + 29.47, + -12.45 + ], + [ + 29.46, + -12.45 + ], + [ + 29.44, + -12.45 + ], + [ + 29.43, + -12.45 + ], + [ + 29.41, + -12.44 + ], + [ + 29.39, + -12.42 + ], + [ + 29.33, + -12.42 + ], + [ + 29.31, + -12.4 + ], + [ + 29.3, + -12.39 + ], + [ + 29.28, + -12.37 + ], + [ + 29.27, + -12.36 + ], + [ + 29.25, + -12.38 + ], + [ + 29.23, + -12.38 + ], + [ + 29.22, + -12.38 + ], + [ + 29.2, + -12.38 + ], + [ + 29.16, + -12.38 + ], + [ + 29.14, + -12.38 + ], + [ + 29.12, + -12.39 + ], + [ + 29.1, + -12.38 + ], + [ + 29.09, + -12.38 + ], + [ + 29.07, + -12.39 + ], + [ + 29.06, + -12.39 + ], + [ + 29.04, + -12.38 + ], + [ + 29.03, + -12.36 + ], + [ + 29.03, + -12.35 + ], + [ + 29.02, + -12.34 + ], + [ + 29.01, + -12.32 + ], + [ + 29.01, + -12.31 + ], + [ + 29.01, + -12.3 + ], + [ + 29.01, + -12.29 + ], + [ + 28.97, + -12.24 + ], + [ + 28.96, + -12.23 + ], + [ + 28.95, + -12.21 + ], + [ + 28.93, + -12.19 + ], + [ + 28.92, + -12.17 + ], + [ + 28.91, + -12.17 + ], + [ + 28.88, + -12.15 + ], + [ + 28.87, + -12.15 + ], + [ + 28.85, + -12.13 + ], + [ + 28.84, + -12.12 + ], + [ + 28.8, + -12.06 + ], + [ + 28.77, + -12.04 + ], + [ + 28.76, + -12 + ], + [ + 28.76, + -11.98 + ], + [ + 28.74, + -11.98 + ], + [ + 28.7, + -11.98 + ], + [ + 28.69, + -11.97 + ], + [ + 28.67, + -11.97 + ], + [ + 28.64, + -11.95 + ], + [ + 28.63, + -11.94 + ], + [ + 28.63, + -11.93 + ], + [ + 28.59, + -11.91 + ], + [ + 28.58, + -11.91 + ], + [ + 28.55, + -11.9 + ], + [ + 28.54, + -11.89 + ], + [ + 28.52, + -11.88 + ], + [ + 28.49, + -11.87 + ], + [ + 28.49, + -11.86 + ], + [ + 28.48, + -11.83 + ], + [ + 28.47, + -11.83 + ], + [ + 28.44, + -11.81 + ], + [ + 28.44, + -11.8 + ], + [ + 28.45, + -11.77 + ], + [ + 28.44, + -11.74 + ], + [ + 28.43, + -11.73 + ], + [ + 28.44, + -11.7 + ], + [ + 28.43, + -11.69 + ], + [ + 28.43, + -11.66 + ], + [ + 28.43, + -11.64 + ], + [ + 28.42, + -11.63 + ], + [ + 28.41, + -11.62 + ], + [ + 28.4, + -11.61 + ], + [ + 28.39, + -11.59 + ], + [ + 28.39, + -11.58 + ], + [ + 28.38, + -11.57 + ], + [ + 28.39, + -11.56 + ], + [ + 28.39, + -11.53 + ], + [ + 28.39, + -11.51 + ], + [ + 28.41, + -11.46 + ], + [ + 28.42, + -11.46 + ], + [ + 28.43, + -11.42 + ], + [ + 28.43, + -11.41 + ], + [ + 28.43, + -11.39 + ], + [ + 28.45, + -11.37 + ], + [ + 28.46, + -11.36 + ], + [ + 28.46, + -11.35 + ], + [ + 28.45, + -11.33 + ], + [ + 28.45, + -11.32 + ], + [ + 28.46, + -11.31 + ], + [ + 28.46, + -11.3 + ], + [ + 28.47, + -11.27 + ], + [ + 28.48, + -11.26 + ], + [ + 28.48, + -11.23 + ], + [ + 28.48, + -11.22 + ], + [ + 28.48, + -11.21 + ], + [ + 28.48, + -11.2 + ], + [ + 28.67, + -10.57 + ], + [ + 28.66, + -10.55 + ], + [ + 28.63, + -10.51 + ], + [ + 28.64, + -10.51 + ], + [ + 28.63, + -10.48 + ], + [ + 28.63, + -10.47 + ], + [ + 28.65, + -10.45 + ], + [ + 28.65, + -10.44 + ], + [ + 28.64, + -10.43 + ], + [ + 28.64, + -10.42 + ], + [ + 28.63, + -10.4 + ], + [ + 28.62, + -10.39 + ], + [ + 28.62, + -10.38 + ], + [ + 28.62, + -10.37 + ], + [ + 28.62, + -10.36 + ], + [ + 28.58, + -10.23 + ], + [ + 28.61, + -10.18 + ], + [ + 28.61, + -10.19 + ], + [ + 28.61, + -10.18 + ], + [ + 28.61, + -10.17 + ], + [ + 28.63, + -10.16 + ], + [ + 28.62, + -10.15 + ], + [ + 28.63, + -10.13 + ], + [ + 28.63, + -10.11 + ], + [ + 28.63, + -10.09 + ], + [ + 28.63, + -10.08 + ], + [ + 28.63, + -10.07 + ], + [ + 28.64, + -10.04 + ], + [ + 28.64, + -10.03 + ], + [ + 28.62, + -9.99 + ], + [ + 28.63, + -9.98 + ], + [ + 28.67, + -9.84 + ], + [ + 28.68, + -9.81 + ], + [ + 28.57, + -9.52 + ], + [ + 28.57, + -9.51 + ], + [ + 28.54, + -9.48 + ], + [ + 28.53, + -9.47 + ], + [ + 28.52, + -9.45 + ], + [ + 28.51, + -9.45 + ], + [ + 28.52, + -9.43 + ], + [ + 28.71, + -9.45 + ], + [ + 29.12, + -8.8 + ], + [ + 29.14, + -8.61 + ], + [ + 28.92, + -8.48 + ], + [ + 30.56, + -8.3 + ], + [ + 30.44, + -8.45 + ], + [ + 30.54, + -8.6 + ], + [ + 30.67, + -8.49 + ], + [ + 31.03, + -8.81 + ], + [ + 31.19, + -8.59 + ], + [ + 31.55, + -8.69 + ], + [ + 31.98, + -9.07 + ], + [ + 32.78, + -9.32 + ], + [ + 32.79, + -9.32 + ], + [ + 32.8, + -9.33 + ], + [ + 32.95, + -9.4 + ], + [ + 33, + -9.63 + ], + [ + 33.21, + -9.6 + ], + [ + 33.36, + -9.82 + ], + [ + 33.32, + -10.05 + ], + [ + 33.56, + -10.21 + ], + [ + 33.7, + -10.56 + ], + [ + 33.48, + -10.78 + ], + [ + 33.26, + -10.89 + ], + [ + 33.4, + -11.16 + ], + [ + 33.23, + -11.42 + ], + [ + 33.35, + -11.92 + ], + [ + 33.26, + -12.13 + ], + [ + 33.38, + -12.35 + ], + [ + 33.55, + -12.36 + ], + [ + 33.38, + -12.55 + ], + [ + 33.05, + -12.6 + ], + [ + 32.94, + -12.77 + ], + [ + 33.01, + -13.21 + ], + [ + 32.85, + -13.53 + ], + [ + 32.67, + -13.57 + ], + [ + 33.02, + -14.05 + ], + [ + 33.16, + -13.92 + ], + [ + 33.24, + -14 + ], + [ + 30.23, + -15.02 + ], + [ + 30.23, + -15.04 + ], + [ + 30.22, + -15.06 + ], + [ + 30.22, + -15.08 + ], + [ + 30.39, + -15.49 + ], + [ + 30.39, + -15.5 + ], + [ + 30.37, + -15.53 + ], + [ + 30.36, + -15.55 + ], + [ + 30.36, + -15.56 + ], + [ + 30.37, + -15.56 + ], + [ + 30.38, + -15.57 + ], + [ + 30.39, + -15.58 + ], + [ + 30.41, + -15.59 + ], + [ + 30.41, + -15.63 + ], + [ + 30.37, + -15.65 + ], + [ + 30.33, + -15.65 + ], + [ + 30.31, + -15.65 + ], + [ + 30.29, + -15.65 + ], + [ + 30.27, + -15.64 + ], + [ + 30.27, + -15.63 + ], + [ + 30.25, + -15.63 + ], + [ + 30.24, + -15.65 + ], + [ + 30.23, + -15.65 + ], + [ + 30.22, + -15.66 + ], + [ + 30.21, + -15.66 + ], + [ + 30.19, + -15.65 + ], + [ + 30.19, + -15.64 + ], + [ + 30.17, + -15.62 + ], + [ + 30.16, + -15.62 + ], + [ + 30.13, + -15.62 + ], + [ + 30.12, + -15.63 + ], + [ + 30.1, + -15.63 + ], + [ + 30.04, + -15.64 + ], + [ + 30.02, + -15.64 + ], + [ + 30.01, + -15.64 + ], + [ + 30, + -15.64 + ], + [ + 29.99, + -15.64 + ], + [ + 29.98, + -15.64 + ], + [ + 29.96, + -15.64 + ], + [ + 29.94, + -15.63 + ], + [ + 29.92, + -15.62 + ], + [ + 29.9, + -15.62 + ], + [ + 29.88, + -15.61 + ], + [ + 29.84, + -15.61 + ], + [ + 29.82, + -15.61 + ], + [ + 29.81, + -15.61 + ], + [ + 29.79, + -15.62 + ], + [ + 29.76, + -15.63 + ], + [ + 29.74, + -15.64 + ], + [ + 29.66, + -15.66 + ], + [ + 29.65, + -15.66 + ], + [ + 29.56, + -15.67 + ], + [ + 29.52, + -15.69 + ], + [ + 29.42, + -15.69 + ], + [ + 29.41, + -15.69 + ], + [ + 29.4, + -15.7 + ], + [ + 29.39, + -15.7 + ], + [ + 29.37, + -15.71 + ], + [ + 29.35, + -15.72 + ], + [ + 29.32, + -15.73 + ], + [ + 29.3, + -15.74 + ], + [ + 29.28, + -15.75 + ], + [ + 29.26, + -15.76 + ], + [ + 29.24, + -15.76 + ], + [ + 29.22, + -15.77 + ], + [ + 29.21, + -15.77 + ], + [ + 29.19, + -15.79 + ], + [ + 29.17, + -15.8 + ], + [ + 29.14, + -15.82 + ], + [ + 29.14, + -15.83 + ], + [ + 29.12, + -15.85 + ], + [ + 29.11, + -15.86 + ], + [ + 29.1, + -15.86 + ], + [ + 29.08, + -15.87 + ], + [ + 29.07, + -15.88 + ], + [ + 29.06, + -15.89 + ], + [ + 29.04, + -15.91 + ], + [ + 29.03, + -15.92 + ], + [ + 29.03, + -15.94 + ], + [ + 29.02, + -15.94 + ], + [ + 28.99, + -15.94 + ], + [ + 28.89, + -15.99 + ], + [ + 28.88, + -16.01 + ], + [ + 28.86, + -16.03 + ], + [ + 28.85, + -16.04 + ], + [ + 28.86, + -16.08 + ], + [ + 28.86, + -16.09 + ], + [ + 28.87, + -16.12 + ], + [ + 28.86, + -16.13 + ], + [ + 28.86, + -16.14 + ], + [ + 28.85, + -16.15 + ], + [ + 28.84, + -16.16 + ], + [ + 28.84, + -16.19 + ], + [ + 28.84, + -16.21 + ], + [ + 28.84, + -16.23 + ], + [ + 28.85, + -16.26 + ], + [ + 28.83, + -16.29 + ], + [ + 28.82, + -16.31 + ], + [ + 28.82, + -16.32 + ], + [ + 28.83, + -16.32 + ], + [ + 28.84, + -16.33 + ], + [ + 28.84, + -16.34 + ], + [ + 28.84, + -16.36 + ], + [ + 28.85, + -16.37 + ], + [ + 28.83, + -16.42 + ], + [ + 28.82, + -16.43 + ], + [ + 28.82, + -16.47 + ], + [ + 28.81, + -16.49 + ], + [ + 28.8, + -16.49 + ], + [ + 28.75, + -16.53 + ], + [ + 28.26, + -16.52 + ], + [ + 28.32, + -16.59 + ], + [ + 27.99, + -16.76 + ], + [ + 28.06, + -16.86 + ], + [ + 28.05, + -16.86 + ], + [ + 27.91, + -16.75 + ], + [ + 27.64, + -16.97 + ], + [ + 27.09, + -17.9 + ], + [ + 27.07, + -17.92 + ], + [ + 27.03, + -17.96 + ], + [ + 26.99, + -17.97 + ], + [ + 26.98, + -17.97 + ], + [ + 26.94, + -17.97 + ], + [ + 26.92, + -17.98 + ], + [ + 26.91, + -17.98 + ], + [ + 26.88, + -17.98 + ], + [ + 26.87, + -17.99 + ], + [ + 26.83, + -17.99 + ], + [ + 26.83, + -18 + ], + [ + 26.81, + -18.01 + ], + [ + 26.78, + -18.02 + ], + [ + 26.75, + -18.02 + ], + [ + 26.74, + -18.03 + ], + [ + 26.73, + -18.04 + ], + [ + 26.72, + -18.05 + ], + [ + 26.66, + -18.06 + ], + [ + 26.65, + -18.06 + ], + [ + 26.63, + -18.06 + ], + [ + 26.6, + -18.04 + ], + [ + 26.58, + -18.02 + ], + [ + 26.22, + -17.88 + ], + [ + 26.07, + -17.98 + ], + [ + 26.06, + -17.98 + ], + [ + 25.85, + -17.94 + ], + [ + 25.86, + -17.93 + ], + [ + 25.85, + -17.93 + ], + [ + 25.86, + -17.93 + ], + [ + 25.84, + -17.9 + ], + [ + 25.83, + -17.9 + ], + [ + 25.8, + -17.88 + ], + [ + 25.79, + -17.87 + ], + [ + 25.79, + -17.86 + ], + [ + 25.73, + -17.84 + ], + [ + 25.72, + -17.84 + ], + [ + 25.7, + -17.82 + ], + [ + 25.69, + -17.81 + ], + [ + 25.7, + -17.81 + ], + [ + 25.69, + -17.81 + ], + [ + 25.67, + -17.81 + ], + [ + 25.65, + -17.83 + ], + [ + 25.64, + -17.83 + ], + [ + 25.63, + -17.84 + ], + [ + 25.61, + -17.84 + ], + [ + 25.6, + -17.84 + ], + [ + 25.55, + -17.84 + ], + [ + 25.54, + -17.84 + ], + [ + 25.54, + -17.85 + ], + [ + 25.51, + -17.86 + ], + [ + 25.5, + -17.86 + ], + [ + 25.48, + -17.85 + ], + [ + 25.47, + -17.85 + ], + [ + 25.46, + -17.84 + ], + [ + 25.45, + -17.84 + ], + [ + 25.41, + -17.85 + ], + [ + 25.39, + -17.85 + ], + [ + 25.37, + -17.84 + ], + [ + 25.36, + -17.84 + ], + [ + 25.35, + -17.84 + ], + [ + 25.31, + -17.82 + ], + [ + 25.28, + -17.8 + ], + [ + 25.27, + -17.8 + ], + [ + 25.26, + -17.79 + ], + [ + 25.25, + -17.79 + ], + [ + 25.25, + -17.78 + ], + [ + 25.23, + -17.77 + ], + [ + 25.21, + -17.77 + ], + [ + 25.19, + -17.77 + ], + [ + 25.18, + -17.76 + ], + [ + 25.17, + -17.75 + ], + [ + 25.16, + -17.74 + ], + [ + 25.16, + -17.73 + ], + [ + 25.16, + -17.72 + ], + [ + 25.14, + -17.71 + ], + [ + 25.13, + -17.71 + ], + [ + 25.14, + -17.7 + ], + [ + 25.12, + -17.69 + ], + [ + 25.1, + -17.71 + ], + [ + 25.1, + -17.7 + ], + [ + 25.11, + -17.67 + ], + [ + 25.1, + -17.66 + ], + [ + 25.09, + -17.66 + ], + [ + 25.07, + -17.64 + ], + [ + 25.06, + -17.62 + ], + [ + 25.05, + -17.61 + ], + [ + 25.05, + -17.6 + ], + [ + 25.03, + -17.59 + ], + [ + 25.01, + -17.6 + ], + [ + 25, + -17.59 + ], + [ + 24.99, + -17.56 + ], + [ + 24.98, + -17.56 + ], + [ + 24.97, + -17.56 + ], + [ + 24.96, + -17.57 + ], + [ + 24.92, + -17.55 + ], + [ + 24.91, + -17.55 + ], + [ + 24.89, + -17.54 + ], + [ + 24.85, + -17.53 + ], + [ + 24.84, + -17.52 + ], + [ + 24.81, + -17.53 + ], + [ + 24.79, + -17.54 + ], + [ + 24.79, + -17.52 + ], + [ + 24.79, + -17.51 + ], + [ + 24.77, + -17.52 + ], + [ + 24.76, + -17.52 + ], + [ + 24.73, + -17.5 + ], + [ + 24.71, + -17.5 + ], + [ + 24.68, + -17.5 + ], + [ + 24.65, + -17.49 + ], + [ + 24.65, + -17.52 + ], + [ + 24.62, + -17.52 + ], + [ + 24.6, + -17.53 + ], + [ + 24.59, + -17.53 + ], + [ + 24.58, + -17.54 + ], + [ + 24.56, + -17.54 + ], + [ + 24.55, + -17.52 + ], + [ + 24.55, + -17.51 + ], + [ + 24.53, + -17.51 + ], + [ + 24.52, + -17.51 + ], + [ + 24.46, + -17.48 + ], + [ + 24.44, + -17.48 + ], + [ + 24.42, + -17.48 + ], + [ + 24.41, + -17.47 + ], + [ + 24.4, + -17.47 + ], + [ + 24.37, + -17.48 + ], + [ + 24.35, + -17.48 + ], + [ + 24.35, + -17.49 + ], + [ + 24.34, + -17.49 + ], + [ + 24.32, + -17.49 + ], + [ + 24.28, + -17.48 + ], + [ + 24.25, + -17.48 + ], + [ + 23.43, + -17.64 + ], + [ + 22.12, + -16.49 + ], + [ + 22, + -16.21 + ], + [ + 22, + -13 + ], + [ + 24.06, + -13 + ], + [ + 23.89, + -12.84 + ], + [ + 24.08, + -12.38 + ], + [ + 24, + -10.89 + ] + ], + [ + [ + 29.93, + -11.18 + ], + [ + 30.04, + -11.01 + ], + [ + 29.92, + -10.83 + ], + [ + 29.62, + -11.03 + ], + [ + 29.58, + -11.42 + ], + [ + 29.84, + -11.44 + ], + [ + 29.93, + -11.18 + ] + ], + [ + [ + 29.68, + -8.49 + ], + [ + 29.45, + -8.97 + ], + [ + 29.66, + -8.97 + ], + [ + 30.01, + -8.54 + ], + [ + 29.68, + -8.49 + ] + ], + [ + [ + 27.19, + -15.75 + ], + [ + 27.2, + -15.86 + ], + [ + 27.3, + -15.75 + ], + [ + 27.19, + -15.75 + ] + ], + [ + [ + 26, + -15.54 + ], + [ + 25.8, + -15.9 + ], + [ + 26.01, + -15.83 + ], + [ + 26, + -15.54 + ] + ] + ] + }, + "properties": { + "A3": "ZMB" + } + }, + { + "type": "Feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + 171.1, + 7.1 + ], + [ + 171.04, + 7.16 + ], + [ + 171.29, + 7.07 + ], + [ + 171.1, + 7.1 + ] + ] + ] + }, + "properties": { + "A3": "MHL" + } + }, + { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + 24.14, + 65.88 + ], + [ + 24.11, + 65.91 + ], + [ + 24.11, + 65.92 + ], + [ + 24.09, + 65.93 + ], + [ + 24.08, + 65.94 + ], + [ + 24.07, + 65.95 + ], + [ + 24.06, + 65.95 + ], + [ + 24.05, + 65.96 + ], + [ + 24.04, + 65.96 + ], + [ + 24.05, + 65.97 + ], + [ + 24.05, + 65.98 + ], + [ + 24.06, + 66.02 + ], + [ + 24, + 66.03 + ], + [ + 23.99, + 66.04 + ], + [ + 23.94, + 66.09 + ], + [ + 23.94, + 66.1 + ], + [ + 23.95, + 66.1 + ], + [ + 23.95, + 66.11 + ], + [ + 23.94, + 66.11 + ], + [ + 23.94, + 66.12 + ], + [ + 23.92, + 66.14 + ], + [ + 23.93, + 66.15 + ], + [ + 23.92, + 66.16 + ], + [ + 23.91, + 66.16 + ], + [ + 23.85, + 66.17 + ], + [ + 23.83, + 66.17 + ], + [ + 23.82, + 66.17 + ], + [ + 23.79, + 66.18 + ], + [ + 23.77, + 66.19 + ], + [ + 23.75, + 66.19 + ], + [ + 23.74, + 66.19 + ], + [ + 23.73, + 66.19 + ], + [ + 23.73, + 66.2 + ], + [ + 23.77, + 66.2 + ], + [ + 23.72, + 66.22 + ], + [ + 23.7, + 66.23 + ], + [ + 23.7, + 66.24 + ], + [ + 23.68, + 66.26 + ], + [ + 23.67, + 66.26 + ], + [ + 23.65, + 66.3 + ], + [ + 23.65, + 66.31 + ], + [ + 23.66, + 66.36 + ], + [ + 23.68, + 66.39 + ], + [ + 23.67, + 66.4 + ], + [ + 23.65, + 66.41 + ], + [ + 23.65, + 66.42 + ], + [ + 23.65, + 66.45 + ], + [ + 23.65, + 66.46 + ], + [ + 23.66, + 66.46 + ], + [ + 23.67, + 66.46 + ], + [ + 23.72, + 66.48 + ], + [ + 23.71, + 66.49 + ], + [ + 23.72, + 66.5 + ], + [ + 23.73, + 66.5 + ], + [ + 23.77, + 66.51 + ], + [ + 23.79, + 66.52 + ], + [ + 23.8, + 66.52 + ], + [ + 23.79, + 66.54 + ], + [ + 23.8, + 66.54 + ], + [ + 23.84, + 66.55 + ], + [ + 23.86, + 66.57 + ], + [ + 23.87, + 66.57 + ], + [ + 23.88, + 66.61 + ], + [ + 23.88, + 66.62 + ], + [ + 23.87, + 66.63 + ], + [ + 23.87, + 66.64 + ], + [ + 23.87, + 66.65 + ], + [ + 23.87, + 66.66 + ], + [ + 23.87, + 66.67 + ], + [ + 23.89, + 66.7 + ], + [ + 23.9, + 66.71 + ], + [ + 23.9, + 66.73 + ], + [ + 23.89, + 66.74 + ], + [ + 23.89, + 66.75 + ], + [ + 23.88, + 66.75 + ], + [ + 23.88, + 66.76 + ], + [ + 23.9, + 66.77 + ], + [ + 23.91, + 66.77 + ], + [ + 23.92, + 66.77 + ], + [ + 23.91, + 66.78 + ], + [ + 23.94, + 66.79 + ], + [ + 23.95, + 66.79 + ], + [ + 23.98, + 66.78 + ], + [ + 23.98, + 66.79 + ], + [ + 23.98, + 66.8 + ], + [ + 23.99, + 66.8 + ], + [ + 23.99, + 66.81 + ], + [ + 24, + 66.82 + ], + [ + 23.99, + 66.83 + ], + [ + 23.98, + 66.84 + ], + [ + 23.97, + 66.85 + ], + [ + 23.96, + 66.85 + ], + [ + 23.96, + 66.86 + ], + [ + 23.95, + 66.86 + ], + [ + 23.94, + 66.88 + ], + [ + 23.93, + 66.88 + ], + [ + 23.91, + 66.89 + ], + [ + 23.91, + 66.9 + ], + [ + 23.9, + 66.9 + ], + [ + 23.87, + 66.92 + ], + [ + 23.84, + 66.96 + ], + [ + 23.82, + 66.97 + ], + [ + 23.81, + 66.98 + ], + [ + 23.8, + 66.99 + ], + [ + 23.78, + 67 + ], + [ + 23.76, + 67 + ], + [ + 23.76, + 67.01 + ], + [ + 23.75, + 67.01 + ], + [ + 23.74, + 67.02 + ], + [ + 23.72, + 67.03 + ], + [ + 23.71, + 67.04 + ], + [ + 23.71, + 67.05 + ], + [ + 23.7, + 67.05 + ], + [ + 23.68, + 67.06 + ], + [ + 23.67, + 67.07 + ], + [ + 23.67, + 67.08 + ], + [ + 23.66, + 67.09 + ], + [ + 23.66, + 67.1 + ], + [ + 23.65, + 67.11 + ], + [ + 23.63, + 67.12 + ], + [ + 23.62, + 67.12 + ], + [ + 23.62, + 67.13 + ], + [ + 23.61, + 67.13 + ], + [ + 23.6, + 67.14 + ], + [ + 23.59, + 67.14 + ], + [ + 23.58, + 67.15 + ], + [ + 23.56, + 67.16 + ], + [ + 23.55, + 67.17 + ], + [ + 23.57, + 67.19 + ], + [ + 23.58, + 67.19 + ], + [ + 23.59, + 67.19 + ], + [ + 23.59, + 67.2 + ], + [ + 23.59, + 67.21 + ], + [ + 23.57, + 67.22 + ], + [ + 23.55, + 67.22 + ], + [ + 23.56, + 67.23 + ], + [ + 23.56, + 67.24 + ], + [ + 23.55, + 67.25 + ], + [ + 23.57, + 67.25 + ], + [ + 23.57, + 67.26 + ], + [ + 23.56, + 67.26 + ], + [ + 23.57, + 67.26 + ], + [ + 23.58, + 67.27 + ], + [ + 23.59, + 67.27 + ], + [ + 23.61, + 67.27 + ], + [ + 23.63, + 67.27 + ], + [ + 23.66, + 67.28 + ], + [ + 23.68, + 67.28 + ], + [ + 23.7, + 67.28 + ], + [ + 23.72, + 67.28 + ], + [ + 23.74, + 67.3 + ], + [ + 23.75, + 67.31 + ], + [ + 23.75, + 67.32 + ], + [ + 23.76, + 67.33 + ], + [ + 23.77, + 67.34 + ], + [ + 23.76, + 67.35 + ], + [ + 23.74, + 67.35 + ], + [ + 23.74, + 67.36 + ], + [ + 23.73, + 67.37 + ], + [ + 23.72, + 67.38 + ], + [ + 23.73, + 67.39 + ], + [ + 23.74, + 67.4 + ], + [ + 23.75, + 67.4 + ], + [ + 23.75, + 67.41 + ], + [ + 23.75, + 67.42 + ], + [ + 23.76, + 67.42 + ], + [ + 23.76, + 67.43 + ], + [ + 23.75, + 67.44 + ], + [ + 23.74, + 67.44 + ], + [ + 23.72, + 67.44 + ], + [ + 23.69, + 67.44 + ], + [ + 23.68, + 67.44 + ], + [ + 23.65, + 67.45 + ], + [ + 23.64, + 67.45 + ], + [ + 23.63, + 67.45 + ], + [ + 23.6, + 67.45 + ], + [ + 23.59, + 67.45 + ], + [ + 23.58, + 67.46 + ], + [ + 23.57, + 67.46 + ], + [ + 23.55, + 67.46 + ], + [ + 23.54, + 67.46 + ], + [ + 23.52, + 67.45 + ], + [ + 23.48, + 67.45 + ], + [ + 23.45, + 67.46 + ], + [ + 23.44, + 67.46 + ], + [ + 23.42, + 67.47 + ], + [ + 23.41, + 67.47 + ], + [ + 23.41, + 67.48 + ], + [ + 23.4, + 67.48 + ], + [ + 23.39, + 67.48 + ], + [ + 23.41, + 67.5 + ], + [ + 23.43, + 67.51 + ], + [ + 23.48, + 67.53 + ], + [ + 23.48, + 67.54 + ], + [ + 23.48, + 67.55 + ], + [ + 23.47, + 67.56 + ], + [ + 23.49, + 67.57 + ], + [ + 23.5, + 67.56 + ], + [ + 23.51, + 67.57 + ], + [ + 23.52, + 67.57 + ], + [ + 23.53, + 67.58 + ], + [ + 23.54, + 67.58 + ], + [ + 23.54, + 67.59 + ], + [ + 23.54, + 67.6 + ], + [ + 23.54, + 67.61 + ], + [ + 23.56, + 67.62 + ], + [ + 23.54, + 67.63 + ], + [ + 23.53, + 67.64 + ], + [ + 23.52, + 67.64 + ], + [ + 23.5, + 67.66 + ], + [ + 23.49, + 67.67 + ], + [ + 23.5, + 67.68 + ], + [ + 23.49, + 67.69 + ], + [ + 23.49, + 67.7 + ], + [ + 23.48, + 67.7 + ], + [ + 23.48, + 67.71 + ], + [ + 23.48, + 67.72 + ], + [ + 23.49, + 67.73 + ], + [ + 23.48, + 67.74 + ], + [ + 23.49, + 67.75 + ], + [ + 23.49, + 67.76 + ], + [ + 23.48, + 67.78 + ], + [ + 23.49, + 67.78 + ], + [ + 23.49, + 67.79 + ], + [ + 23.49, + 67.8 + ], + [ + 23.48, + 67.8 + ], + [ + 23.47, + 67.82 + ], + [ + 23.48, + 67.82 + ], + [ + 23.48, + 67.83 + ], + [ + 23.48, + 67.84 + ], + [ + 23.49, + 67.85 + ], + [ + 23.49, + 67.86 + ], + [ + 23.5, + 67.87 + ], + [ + 23.51, + 67.87 + ], + [ + 23.51, + 67.88 + ], + [ + 23.52, + 67.88 + ], + [ + 23.53, + 67.89 + ], + [ + 23.54, + 67.89 + ], + [ + 23.56, + 67.9 + ], + [ + 23.58, + 67.89 + ], + [ + 23.59, + 67.9 + ], + [ + 23.6, + 67.9 + ], + [ + 23.62, + 67.91 + ], + [ + 23.64, + 67.91 + ], + [ + 23.64, + 67.92 + ], + [ + 23.65, + 67.93 + ], + [ + 23.65, + 67.94 + ], + [ + 23.66, + 67.95 + ], + [ + 23.65, + 67.95 + ], + [ + 23.61, + 67.97 + ], + [ + 23.6, + 67.97 + ], + [ + 23.59, + 67.97 + ], + [ + 23.58, + 67.97 + ], + [ + 23.57, + 67.97 + ], + [ + 23.56, + 67.98 + ], + [ + 23.54, + 67.99 + ], + [ + 23.52, + 68.01 + ], + [ + 23.5, + 68.01 + ], + [ + 23.48, + 68.02 + ], + [ + 23.47, + 68.02 + ], + [ + 23.47, + 68.03 + ], + [ + 23.45, + 68.04 + ], + [ + 23.44, + 68.04 + ], + [ + 23.42, + 68.04 + ], + [ + 23.41, + 68.04 + ], + [ + 23.4, + 68.04 + ], + [ + 23.39, + 68.05 + ], + [ + 23.39, + 68.06 + ], + [ + 23.37, + 68.06 + ], + [ + 23.37, + 68.07 + ], + [ + 23.36, + 68.08 + ], + [ + 23.35, + 68.09 + ], + [ + 23.34, + 68.1 + ], + [ + 23.33, + 68.11 + ], + [ + 23.33, + 68.12 + ], + [ + 23.33, + 68.13 + ], + [ + 23.32, + 68.14 + ], + [ + 23.31, + 68.14 + ], + [ + 23.31, + 68.15 + ], + [ + 23.3, + 68.15 + ], + [ + 23.29, + 68.15 + ], + [ + 23.28, + 68.16 + ], + [ + 23.27, + 68.16 + ], + [ + 23.26, + 68.16 + ], + [ + 23.25, + 68.15 + ], + [ + 23.24, + 68.15 + ], + [ + 23.23, + 68.15 + ], + [ + 23.19, + 68.14 + ], + [ + 23.18, + 68.14 + ], + [ + 23.17, + 68.13 + ], + [ + 23.15, + 68.14 + ], + [ + 23.14, + 68.15 + ], + [ + 23.14, + 68.16 + ], + [ + 23.14, + 68.17 + ], + [ + 23.14, + 68.18 + ], + [ + 23.15, + 68.18 + ], + [ + 23.16, + 68.19 + ], + [ + 23.16, + 68.2 + ], + [ + 23.15, + 68.2 + ], + [ + 23.14, + 68.21 + ], + [ + 23.15, + 68.21 + ], + [ + 23.14, + 68.22 + ], + [ + 23.15, + 68.22 + ], + [ + 23.15, + 68.23 + ], + [ + 23.15, + 68.24 + ], + [ + 23.14, + 68.25 + ], + [ + 23.12, + 68.25 + ], + [ + 23.11, + 68.25 + ], + [ + 23.1, + 68.26 + ], + [ + 23.09, + 68.26 + ], + [ + 23.08, + 68.27 + ], + [ + 23.07, + 68.27 + ], + [ + 23.07, + 68.28 + ], + [ + 23.07, + 68.29 + ], + [ + 23.07, + 68.3 + ], + [ + 23.03, + 68.31 + ], + [ + 23.02, + 68.31 + ], + [ + 23, + 68.32 + ], + [ + 22.96, + 68.33 + ], + [ + 22.91, + 68.34 + ], + [ + 22.9, + 68.35 + ], + [ + 22.88, + 68.35 + ], + [ + 22.87, + 68.35 + ], + [ + 22.85, + 68.36 + ], + [ + 22.84, + 68.37 + ], + [ + 22.85, + 68.38 + ], + [ + 22.84, + 68.38 + ], + [ + 22.82, + 68.39 + ], + [ + 22.8, + 68.39 + ], + [ + 22.79, + 68.39 + ], + [ + 22.78, + 68.39 + ], + [ + 22.77, + 68.39 + ], + [ + 22.75, + 68.38 + ], + [ + 22.73, + 68.39 + ], + [ + 22.71, + 68.4 + ], + [ + 22.7, + 68.4 + ], + [ + 22.69, + 68.4 + ], + [ + 22.69, + 68.41 + ], + [ + 22.66, + 68.41 + ], + [ + 22.65, + 68.42 + ], + [ + 22.64, + 68.42 + ], + [ + 22.64, + 68.43 + ], + [ + 22.63, + 68.43 + ], + [ + 22.62, + 68.43 + ], + [ + 22.59, + 68.42 + ], + [ + 22.58, + 68.42 + ], + [ + 22.57, + 68.43 + ], + [ + 22.56, + 68.43 + ], + [ + 22.53, + 68.44 + ], + [ + 22.51, + 68.44 + ], + [ + 22.49, + 68.44 + ], + [ + 22.46, + 68.44 + ], + [ + 22.45, + 68.45 + ], + [ + 22.44, + 68.46 + ], + [ + 22.42, + 68.46 + ], + [ + 22.4, + 68.46 + ], + [ + 22.39, + 68.46 + ], + [ + 22.36, + 68.45 + ], + [ + 22.35, + 68.45 + ], + [ + 22.35, + 68.46 + ], + [ + 22.34, + 68.47 + ], + [ + 22.35, + 68.47 + ], + [ + 22.35, + 68.48 + ], + [ + 22.31, + 68.48 + ], + [ + 22.3, + 68.48 + ], + [ + 22.26, + 68.48 + ], + [ + 22.24, + 68.48 + ], + [ + 22.23, + 68.48 + ], + [ + 22.21, + 68.48 + ], + [ + 22.15, + 68.47 + ], + [ + 22.13, + 68.47 + ], + [ + 22.11, + 68.48 + ], + [ + 22.1, + 68.48 + ], + [ + 22.07, + 68.48 + ], + [ + 22.06, + 68.48 + ], + [ + 22.04, + 68.48 + ], + [ + 22.03, + 68.49 + ], + [ + 22.02, + 68.49 + ], + [ + 22.02, + 68.5 + ], + [ + 22, + 68.53 + ], + [ + 21.98, + 68.54 + ], + [ + 21.97, + 68.54 + ], + [ + 21.97, + 68.55 + ], + [ + 21.96, + 68.55 + ], + [ + 21.95, + 68.56 + ], + [ + 21.94, + 68.56 + ], + [ + 21.92, + 68.57 + ], + [ + 21.9, + 68.58 + ], + [ + 21.89, + 68.58 + ], + [ + 21.88, + 68.58 + ], + [ + 21.87, + 68.58 + ], + [ + 21.86, + 68.59 + ], + [ + 21.85, + 68.59 + ], + [ + 21.83, + 68.59 + ], + [ + 21.78, + 68.59 + ], + [ + 21.76, + 68.59 + ], + [ + 21.75, + 68.59 + ], + [ + 21.73, + 68.59 + ], + [ + 21.71, + 68.59 + ], + [ + 21.7, + 68.59 + ], + [ + 21.7, + 68.6 + ], + [ + 21.71, + 68.62 + ], + [ + 21.71, + 68.63 + ], + [ + 21.67, + 68.64 + ], + [ + 21.66, + 68.64 + ], + [ + 21.65, + 68.65 + ], + [ + 21.64, + 68.65 + ], + [ + 21.62, + 68.66 + ], + [ + 21.6, + 68.67 + ], + [ + 21.56, + 68.68 + ], + [ + 21.54, + 68.68 + ], + [ + 21.53, + 68.68 + ], + [ + 21.51, + 68.68 + ], + [ + 21.49, + 68.68 + ], + [ + 21.48, + 68.68 + ], + [ + 21.45, + 68.69 + ], + [ + 21.44, + 68.69 + ], + [ + 21.42, + 68.7 + ], + [ + 21.42, + 68.71 + ], + [ + 21.42, + 68.72 + ], + [ + 21.41, + 68.73 + ], + [ + 21.41, + 68.74 + ], + [ + 21.41, + 68.75 + ], + [ + 21.39, + 68.76 + ], + [ + 21.36, + 68.77 + ], + [ + 21.32, + 68.76 + ], + [ + 21.31, + 68.76 + ], + [ + 21.29, + 68.77 + ], + [ + 21.28, + 68.78 + ], + [ + 21.27, + 68.78 + ], + [ + 21.26, + 68.79 + ], + [ + 21.25, + 68.8 + ], + [ + 21.24, + 68.81 + ], + [ + 21.23, + 68.81 + ], + [ + 21.18, + 68.83 + ], + [ + 21.17, + 68.83 + ], + [ + 21.14, + 68.84 + ], + [ + 21.13, + 68.85 + ], + [ + 21.12, + 68.86 + ], + [ + 21.1, + 68.86 + ], + [ + 21.08, + 68.86 + ], + [ + 21.07, + 68.87 + ], + [ + 21.06, + 68.88 + ], + [ + 21.04, + 68.88 + ], + [ + 21.02, + 68.89 + ], + [ + 20.99, + 68.9 + ], + [ + 20.97, + 68.89 + ], + [ + 20.96, + 68.89 + ], + [ + 20.96, + 68.9 + ], + [ + 20.94, + 68.9 + ], + [ + 20.92, + 68.9 + ], + [ + 20.9, + 68.9 + ], + [ + 20.89, + 68.91 + ], + [ + 20.88, + 68.92 + ], + [ + 20.87, + 68.92 + ], + [ + 20.85, + 68.93 + ], + [ + 20.86, + 68.94 + ], + [ + 20.85, + 68.99 + ], + [ + 20.83, + 69 + ], + [ + 20.65, + 69.04 + ], + [ + 20.64, + 69.04 + ], + [ + 20.61, + 69.05 + ], + [ + 20.57, + 69.06 + ], + [ + 20.56, + 69.06 + ], + [ + 20.55, + 69.06 + ], + [ + 20.65, + 69.1 + ], + [ + 20.66, + 69.1 + ], + [ + 21.07, + 69.05 + ], + [ + 21.07, + 69.06 + ], + [ + 21.02, + 69.16 + ], + [ + 21.05, + 69.24 + ], + [ + 21.49, + 69.29 + ], + [ + 21.51, + 69.29 + ], + [ + 21.53, + 69.29 + ], + [ + 21.65, + 69.26 + ], + [ + 21.66, + 69.26 + ], + [ + 21.97, + 69.08 + ], + [ + 22.01, + 69.05 + ], + [ + 22.02, + 69.05 + ], + [ + 22.2, + 68.91 + ], + [ + 22.23, + 68.9 + ], + [ + 22.28, + 68.87 + ], + [ + 22.28, + 68.86 + ], + [ + 22.3, + 68.85 + ], + [ + 22.31, + 68.85 + ], + [ + 22.37, + 68.74 + ], + [ + 22.45, + 68.73 + ], + [ + 22.46, + 68.73 + ], + [ + 22.93, + 68.69 + ], + [ + 22.94, + 68.69 + ], + [ + 23.33, + 68.67 + ], + [ + 23.38, + 68.68 + ], + [ + 23.42, + 68.69 + ], + [ + 23.99, + 68.82 + ], + [ + 24.01, + 68.82 + ], + [ + 24.03, + 68.8 + ], + [ + 24.04, + 68.8 + ], + [ + 24.48, + 68.7 + ], + [ + 24.65, + 68.67 + ], + [ + 24.79, + 68.63 + ], + [ + 24.8, + 68.62 + ], + [ + 24.86, + 68.56 + ], + [ + 24.88, + 68.56 + ], + [ + 25.12, + 68.64 + ], + [ + 25.11, + 68.65 + ], + [ + 25.11, + 68.66 + ], + [ + 25.12, + 68.66 + ], + [ + 25.11, + 68.66 + ], + [ + 25.11, + 68.67 + ], + [ + 25.11, + 68.69 + ], + [ + 25.11, + 68.7 + ], + [ + 25.13, + 68.72 + ], + [ + 25.14, + 68.78 + ], + [ + 25.18, + 68.81 + ], + [ + 25.22, + 68.82 + ], + [ + 25.23, + 68.82 + ], + [ + 25.29, + 68.85 + ], + [ + 25.29, + 68.86 + ], + [ + 25.31, + 68.86 + ], + [ + 25.32, + 68.86 + ], + [ + 25.4, + 68.89 + ], + [ + 25.44, + 68.9 + ], + [ + 25.51, + 68.89 + ], + [ + 25.66, + 68.91 + ], + [ + 25.67, + 68.92 + ], + [ + 25.67, + 68.93 + ], + [ + 25.69, + 68.94 + ], + [ + 25.71, + 68.97 + ], + [ + 25.71, + 68.98 + ], + [ + 25.72, + 68.99 + ], + [ + 25.74, + 69 + ], + [ + 25.75, + 69 + ], + [ + 25.76, + 69 + ], + [ + 25.77, + 69.01 + ], + [ + 25.78, + 69.02 + ], + [ + 25.75, + 69.03 + ], + [ + 25.75, + 69.04 + ], + [ + 25.75, + 69.05 + ], + [ + 25.74, + 69.07 + ], + [ + 25.73, + 69.07 + ], + [ + 25.73, + 69.1 + ], + [ + 25.73, + 69.11 + ], + [ + 25.72, + 69.11 + ], + [ + 25.72, + 69.12 + ], + [ + 25.73, + 69.12 + ], + [ + 25.73, + 69.13 + ], + [ + 25.74, + 69.13 + ], + [ + 25.74, + 69.14 + ], + [ + 25.74, + 69.15 + ], + [ + 25.73, + 69.15 + ], + [ + 25.72, + 69.16 + ], + [ + 25.72, + 69.17 + ], + [ + 25.72, + 69.18 + ], + [ + 25.71, + 69.18 + ], + [ + 25.71, + 69.19 + ], + [ + 25.7, + 69.19 + ], + [ + 25.7, + 69.2 + ], + [ + 25.69, + 69.2 + ], + [ + 25.71, + 69.21 + ], + [ + 25.71, + 69.24 + ], + [ + 25.73, + 69.26 + ], + [ + 25.75, + 69.29 + ], + [ + 25.75, + 69.3 + ], + [ + 25.74, + 69.31 + ], + [ + 25.78, + 69.35 + ], + [ + 25.8, + 69.36 + ], + [ + 25.82, + 69.36 + ], + [ + 25.82, + 69.37 + ], + [ + 25.81, + 69.37 + ], + [ + 25.83, + 69.39 + ], + [ + 25.85, + 69.4 + ], + [ + 25.84, + 69.4 + ], + [ + 25.83, + 69.4 + ], + [ + 25.83, + 69.41 + ], + [ + 25.82, + 69.41 + ], + [ + 25.81, + 69.41 + ], + [ + 25.82, + 69.41 + ], + [ + 25.81, + 69.43 + ], + [ + 25.81, + 69.44 + ], + [ + 25.82, + 69.44 + ], + [ + 25.82, + 69.45 + ], + [ + 25.83, + 69.46 + ], + [ + 25.83, + 69.47 + ], + [ + 25.84, + 69.47 + ], + [ + 25.85, + 69.47 + ], + [ + 25.86, + 69.47 + ], + [ + 25.86, + 69.48 + ], + [ + 25.85, + 69.49 + ], + [ + 25.85, + 69.5 + ], + [ + 25.87, + 69.52 + ], + [ + 25.88, + 69.52 + ], + [ + 25.88, + 69.53 + ], + [ + 25.87, + 69.53 + ], + [ + 25.86, + 69.54 + ], + [ + 25.85, + 69.54 + ], + [ + 25.84, + 69.55 + ], + [ + 25.86, + 69.55 + ], + [ + 25.88, + 69.56 + ], + [ + 25.9, + 69.56 + ], + [ + 25.92, + 69.57 + ], + [ + 25.93, + 69.57 + ], + [ + 25.94, + 69.58 + ], + [ + 25.95, + 69.58 + ], + [ + 25.95, + 69.59 + ], + [ + 25.96, + 69.6 + ], + [ + 25.97, + 69.6 + ], + [ + 25.97, + 69.61 + ], + [ + 25.96, + 69.62 + ], + [ + 25.96, + 69.63 + ], + [ + 25.95, + 69.65 + ], + [ + 25.93, + 69.65 + ], + [ + 25.92, + 69.66 + ], + [ + 25.89, + 69.66 + ], + [ + 25.9, + 69.67 + ], + [ + 25.91, + 69.68 + ], + [ + 25.94, + 69.68 + ], + [ + 25.95, + 69.69 + ], + [ + 25.96, + 69.7 + ], + [ + 26.04, + 69.72 + ], + [ + 26.05, + 69.72 + ], + [ + 26.1, + 69.73 + ], + [ + 26.11, + 69.73 + ], + [ + 26.13, + 69.74 + ], + [ + 26.15, + 69.75 + ], + [ + 26.16, + 69.76 + ], + [ + 26.18, + 69.76 + ], + [ + 26.18, + 69.77 + ], + [ + 26.19, + 69.77 + ], + [ + 26.19, + 69.78 + ], + [ + 26.22, + 69.78 + ], + [ + 26.23, + 69.79 + ], + [ + 26.24, + 69.79 + ], + [ + 26.25, + 69.8 + ], + [ + 26.24, + 69.81 + ], + [ + 26.25, + 69.82 + ], + [ + 26.26, + 69.82 + ], + [ + 26.27, + 69.82 + ], + [ + 26.28, + 69.83 + ], + [ + 26.3, + 69.83 + ], + [ + 26.32, + 69.83 + ], + [ + 26.33, + 69.84 + ], + [ + 26.34, + 69.84 + ], + [ + 26.35, + 69.85 + ], + [ + 26.37, + 69.85 + ], + [ + 26.38, + 69.85 + ], + [ + 26.39, + 69.86 + ], + [ + 26.4, + 69.87 + ], + [ + 26.42, + 69.89 + ], + [ + 26.41, + 69.9 + ], + [ + 26.44, + 69.91 + ], + [ + 26.45, + 69.92 + ], + [ + 26.46, + 69.92 + ], + [ + 26.46, + 69.93 + ], + [ + 26.48, + 69.94 + ], + [ + 26.49, + 69.95 + ], + [ + 26.51, + 69.95 + ], + [ + 26.53, + 69.95 + ], + [ + 26.54, + 69.95 + ], + [ + 26.55, + 69.95 + ], + [ + 26.56, + 69.95 + ], + [ + 26.57, + 69.95 + ], + [ + 26.59, + 69.95 + ], + [ + 26.59, + 69.96 + ], + [ + 26.61, + 69.96 + ], + [ + 26.62, + 69.96 + ], + [ + 26.63, + 69.96 + ], + [ + 26.64, + 69.96 + ], + [ + 26.67, + 69.96 + ], + [ + 26.68, + 69.96 + ], + [ + 26.69, + 69.96 + ], + [ + 26.7, + 69.95 + ], + [ + 26.71, + 69.95 + ], + [ + 26.72, + 69.95 + ], + [ + 26.74, + 69.95 + ], + [ + 26.76, + 69.95 + ], + [ + 26.77, + 69.96 + ], + [ + 26.8, + 69.96 + ], + [ + 26.82, + 69.96 + ], + [ + 26.84, + 69.96 + ], + [ + 26.86, + 69.96 + ], + [ + 26.86, + 69.95 + ], + [ + 26.86, + 69.94 + ], + [ + 26.87, + 69.94 + ], + [ + 26.89, + 69.93 + ], + [ + 26.92, + 69.94 + ], + [ + 26.94, + 69.94 + ], + [ + 26.95, + 69.94 + ], + [ + 26.99, + 69.93 + ], + [ + 27, + 69.93 + ], + [ + 27.01, + 69.92 + ], + [ + 27.02, + 69.92 + ], + [ + 27.03, + 69.91 + ], + [ + 27.61, + 70.07 + ], + [ + 27.99, + 70.01 + ], + [ + 28.01, + 70 + ], + [ + 28.25, + 69.9 + ], + [ + 28.28, + 69.89 + ], + [ + 28.36, + 69.84 + ], + [ + 28.39, + 69.82 + ], + [ + 28.56, + 69.79 + ], + [ + 28.58, + 69.79 + ], + [ + 28.87, + 69.74 + ], + [ + 28.9, + 69.73 + ], + [ + 29.03, + 69.71 + ], + [ + 29.26, + 69.55 + ], + [ + 29.27, + 69.54 + ], + [ + 29.19, + 69.38 + ], + [ + 29.18, + 69.38 + ], + [ + 29.01, + 69.3 + ], + [ + 29, + 69.3 + ], + [ + 28.97, + 69.29 + ], + [ + 28.96, + 69.28 + ], + [ + 28.83, + 69.21 + ], + [ + 28.83, + 69.2 + ], + [ + 28.83, + 69.19 + ], + [ + 28.82, + 69.15 + ], + [ + 28.82, + 69.14 + ], + [ + 28.84, + 69.09 + ], + [ + 28.84, + 69.08 + ], + [ + 28.93, + 69.05 + ], + [ + 28.83, + 69.02 + ], + [ + 28.82, + 69.02 + ], + [ + 28.52, + 68.89 + ], + [ + 28.65, + 68.89 + ], + [ + 28.66, + 68.89 + ], + [ + 28.79, + 68.85 + ], + [ + 28.74, + 68.79 + ], + [ + 28.74, + 68.78 + ], + [ + 28.7, + 68.72 + ], + [ + 28.68, + 68.72 + ], + [ + 28.53, + 68.61 + ], + [ + 28.47, + 68.48 + ], + [ + 28.48, + 68.47 + ], + [ + 28.65, + 68.2 + ], + [ + 29.33, + 68.07 + ], + [ + 30.02, + 67.67 + ], + [ + 29.48, + 67.26 + ], + [ + 29.45, + 67.24 + ], + [ + 29.11, + 66.81 + ], + [ + 29.13, + 66.79 + ], + [ + 29.37, + 66.62 + ], + [ + 29.38, + 66.61 + ], + [ + 29.39, + 66.6 + ], + [ + 29.4, + 66.6 + ], + [ + 29.49, + 66.53 + ], + [ + 29.49, + 66.52 + ], + [ + 29.49, + 66.53 + ], + [ + 29.7, + 66.28 + ], + [ + 29.7, + 66.27 + ], + [ + 29.71, + 66.27 + ], + [ + 29.82, + 66.2 + ], + [ + 29.84, + 66.19 + ], + [ + 29.84, + 66.18 + ], + [ + 29.85, + 66.18 + ], + [ + 29.97, + 66.05 + ], + [ + 29.96, + 66.04 + ], + [ + 29.98, + 66.04 + ], + [ + 30.01, + 65.97 + ], + [ + 30.02, + 65.96 + ], + [ + 30.05, + 65.93 + ], + [ + 30.05, + 65.92 + ], + [ + 30.06, + 65.91 + ], + [ + 30.07, + 65.9 + ], + [ + 30.07, + 65.89 + ], + [ + 30.1, + 65.82 + ], + [ + 30.1, + 65.8 + ], + [ + 30.12, + 65.75 + ], + [ + 30.12, + 65.74 + ], + [ + 30.13, + 65.71 + ], + [ + 30.07, + 65.68 + ], + [ + 30.06, + 65.68 + ], + [ + 30.03, + 65.69 + ], + [ + 30, + 65.69 + ], + [ + 29.92, + 65.68 + ], + [ + 29.88, + 65.69 + ], + [ + 29.89, + 65.67 + ], + [ + 29.84, + 65.66 + ], + [ + 29.79, + 65.65 + ], + [ + 29.74, + 65.62 + ], + [ + 29.75, + 65.62 + ], + [ + 29.75, + 65.61 + ], + [ + 29.84, + 65.55 + ], + [ + 29.76, + 65.5 + ], + [ + 29.75, + 65.49 + ], + [ + 29.73, + 65.44 + ], + [ + 29.6, + 65.26 + ], + [ + 29.61, + 65.26 + ], + [ + 29.84, + 65.22 + ], + [ + 29.85, + 65.22 + ], + [ + 29.84, + 65.15 + ], + [ + 29.82, + 65.15 + ], + [ + 29.86, + 65.13 + ], + [ + 29.85, + 65.13 + ], + [ + 29.87, + 65.12 + ], + [ + 29.9, + 65.11 + ], + [ + 29.74, + 65.09 + ], + [ + 29.68, + 65.08 + ], + [ + 29.65, + 65.07 + ], + [ + 29.63, + 65.06 + ], + [ + 29.62, + 65.05 + ], + [ + 29.62, + 65.04 + ], + [ + 29.62, + 65.02 + ], + [ + 29.61, + 65.01 + ], + [ + 29.6, + 65 + ], + [ + 29.61, + 64.97 + ], + [ + 29.62, + 64.96 + ], + [ + 29.62, + 64.95 + ], + [ + 29.61, + 64.93 + ], + [ + 29.61, + 64.92 + ], + [ + 29.66, + 64.86 + ], + [ + 29.67, + 64.86 + ], + [ + 29.69, + 64.82 + ], + [ + 29.7, + 64.81 + ], + [ + 29.71, + 64.81 + ], + [ + 29.74, + 64.79 + ], + [ + 29.76, + 64.79 + ], + [ + 29.87, + 64.79 + ], + [ + 29.99, + 64.79 + ], + [ + 30, + 64.79 + ], + [ + 30.03, + 64.79 + ], + [ + 30.04, + 64.79 + ], + [ + 30.06, + 64.79 + ], + [ + 30.07, + 64.78 + ], + [ + 30.09, + 64.76 + ], + [ + 30.05, + 64.72 + ], + [ + 30.06, + 64.71 + ], + [ + 30.09, + 64.68 + ], + [ + 30.1, + 64.68 + ], + [ + 30.13, + 64.65 + ], + [ + 30.13, + 64.64 + ], + [ + 30.12, + 64.63 + ], + [ + 30.11, + 64.62 + ], + [ + 30.09, + 64.62 + ], + [ + 30.02, + 64.6 + ], + [ + 29.99, + 64.59 + ], + [ + 30, + 64.58 + ], + [ + 29.99, + 64.55 + ], + [ + 30.05, + 64.46 + ], + [ + 30.06, + 64.45 + ], + [ + 30.05, + 64.42 + ], + [ + 30.05, + 64.4 + ], + [ + 30.06, + 64.39 + ], + [ + 30.14, + 64.36 + ], + [ + 30.15, + 64.36 + ], + [ + 30.32, + 64.31 + ], + [ + 30.37, + 64.28 + ], + [ + 30.44, + 64.27 + ], + [ + 30.45, + 64.26 + ], + [ + 30.55, + 64.09 + ], + [ + 30.54, + 64.08 + ], + [ + 30.54, + 64.07 + ], + [ + 30.37, + 63.94 + ], + [ + 30.36, + 63.94 + ], + [ + 30, + 63.76 + ], + [ + 29.99, + 63.76 + ], + [ + 30.02, + 63.73 + ], + [ + 30.06, + 63.71 + ], + [ + 30.07, + 63.7 + ], + [ + 30.09, + 63.69 + ], + [ + 30.1, + 63.68 + ], + [ + 30.11, + 63.68 + ], + [ + 30.12, + 63.67 + ], + [ + 30.21, + 63.63 + ], + [ + 30.25, + 63.59 + ], + [ + 30.27, + 63.58 + ], + [ + 30.3, + 63.57 + ], + [ + 30.34, + 63.56 + ], + [ + 30.35, + 63.56 + ], + [ + 30.38, + 63.55 + ], + [ + 30.37, + 63.55 + ], + [ + 30.38, + 63.55 + ], + [ + 30.39, + 63.55 + ], + [ + 30.42, + 63.52 + ], + [ + 30.45, + 63.49 + ], + [ + 30.79, + 63.41 + ], + [ + 30.81, + 63.39 + ], + [ + 30.84, + 63.38 + ], + [ + 30.83, + 63.38 + ], + [ + 30.84, + 63.38 + ], + [ + 30.84, + 63.37 + ], + [ + 30.93, + 63.36 + ], + [ + 30.94, + 63.34 + ], + [ + 30.98, + 63.31 + ], + [ + 30.99, + 63.31 + ], + [ + 30.99, + 63.3 + ], + [ + 31, + 63.3 + ], + [ + 31.09, + 63.28 + ], + [ + 31.1, + 63.27 + ], + [ + 31.12, + 63.27 + ], + [ + 31.15, + 63.26 + ], + [ + 31.15, + 63.25 + ], + [ + 31.16, + 63.25 + ], + [ + 31.21, + 63.23 + ], + [ + 31.24, + 63.21 + ], + [ + 31.24, + 63.19 + ], + [ + 31.25, + 63.18 + ], + [ + 31.25, + 63.17 + ], + [ + 31.26, + 63.16 + ], + [ + 31.26, + 63.15 + ], + [ + 31.26, + 63.14 + ], + [ + 31.26, + 63.13 + ], + [ + 31.29, + 63.1 + ], + [ + 31.31, + 63.09 + ], + [ + 31.36, + 63.07 + ], + [ + 31.37, + 63.07 + ], + [ + 31.38, + 63.06 + ], + [ + 31.38, + 63.05 + ], + [ + 31.41, + 63.04 + ], + [ + 31.43, + 63.04 + ], + [ + 31.44, + 63.04 + ], + [ + 31.45, + 63.01 + ], + [ + 31.49, + 63 + ], + [ + 31.52, + 62.98 + ], + [ + 31.57, + 62.92 + ], + [ + 31.58, + 62.92 + ], + [ + 31.59, + 62.91 + ], + [ + 31.58, + 62.91 + ], + [ + 31.44, + 62.79 + ], + [ + 31.44, + 62.78 + ], + [ + 31.38, + 62.69 + ], + [ + 31.38, + 62.67 + ], + [ + 31.25, + 62.53 + ], + [ + 31.15, + 62.45 + ], + [ + 30.96, + 62.32 + ], + [ + 30.94, + 62.31 + ], + [ + 30.91, + 62.31 + ], + [ + 30.89, + 62.3 + ], + [ + 30.75, + 62.23 + ], + [ + 30.74, + 62.23 + ], + [ + 30.68, + 62.21 + ], + [ + 30.67, + 62.21 + ], + [ + 30.66, + 62.21 + ], + [ + 30.65, + 62.21 + ], + [ + 30.63, + 62.18 + ], + [ + 30.54, + 62.1 + ], + [ + 30.45, + 62.04 + ], + [ + 30.31, + 61.95 + ], + [ + 30.31, + 61.94 + ], + [ + 30.16, + 61.86 + ], + [ + 29.93, + 62.05 + ], + [ + 29.79, + 61.81 + ], + [ + 30.08, + 61.82 + ], + [ + 30.06, + 61.81 + ], + [ + 30.03, + 61.76 + ], + [ + 29.97, + 61.73 + ], + [ + 29.94, + 61.72 + ], + [ + 29.93, + 61.71 + ], + [ + 29.88, + 61.69 + ], + [ + 29.86, + 61.67 + ], + [ + 29.84, + 61.67 + ], + [ + 29.8, + 61.63 + ], + [ + 29.79, + 61.62 + ], + [ + 29.75, + 61.6 + ], + [ + 29.73, + 61.59 + ], + [ + 29.7, + 61.56 + ], + [ + 29.64, + 61.52 + ], + [ + 29.65, + 61.52 + ], + [ + 29.55, + 61.49 + ], + [ + 29.52, + 61.49 + ], + [ + 29.31, + 61.33 + ], + [ + 29.14, + 61.23 + ], + [ + 29.13, + 61.23 + ], + [ + 28.9, + 61.14 + ], + [ + 28.87, + 61.14 + ], + [ + 28.83, + 61.12 + ], + [ + 28.82, + 61.12 + ], + [ + 28.81, + 61.11 + ], + [ + 28.71, + 61.04 + ], + [ + 28.71, + 61.02 + ], + [ + 28.62, + 60.95 + ], + [ + 28.61, + 60.95 + ], + [ + 28.59, + 60.95 + ], + [ + 28.55, + 60.96 + ], + [ + 28.52, + 60.96 + ], + [ + 28.52, + 60.95 + ], + [ + 28.34, + 60.86 + ], + [ + 28.32, + 60.86 + ], + [ + 28.28, + 60.82 + ], + [ + 28.18, + 60.78 + ], + [ + 28.17, + 60.78 + ], + [ + 28.14, + 60.74 + ], + [ + 28.13, + 60.74 + ], + [ + 28.08, + 60.72 + ], + [ + 28.08, + 60.71 + ], + [ + 28.06, + 60.71 + ], + [ + 28.06, + 60.7 + ], + [ + 27.99, + 60.67 + ], + [ + 27.84, + 60.57 + ], + [ + 27.79, + 60.54 + ], + [ + 27.48, + 60.46 + ], + [ + 27.18, + 60.59 + ], + [ + 26.2, + 60.36 + ], + [ + 25.92, + 60.49 + ], + [ + 26.12, + 60.33 + ], + [ + 25.84, + 60.41 + ], + [ + 25.9, + 60.25 + ], + [ + 25.69, + 60.38 + ], + [ + 25.46, + 60.23 + ], + [ + 24.56, + 60.17 + ], + [ + 24.39, + 59.97 + ], + [ + 24.33, + 60.09 + ], + [ + 23.41, + 59.92 + ], + [ + 23.55, + 60.1 + ], + [ + 23.25, + 59.84 + ], + [ + 22.91, + 59.81 + ], + [ + 23.3, + 59.96 + ], + [ + 23.33, + 60.04 + ], + [ + 23.28, + 59.97 + ], + [ + 23.16, + 59.91 + ], + [ + 23.23, + 59.96 + ], + [ + 23.19, + 59.98 + ], + [ + 23.11, + 59.94 + ], + [ + 23.11, + 60 + ], + [ + 23.23, + 60.04 + ], + [ + 23.04, + 59.99 + ], + [ + 23.03, + 59.91 + ], + [ + 22.81, + 59.98 + ], + [ + 23.27, + 60.06 + ], + [ + 22.87, + 60.16 + ], + [ + 23.08, + 60.38 + ], + [ + 22.52, + 60.21 + ], + [ + 22.63, + 60.41 + ], + [ + 22.32, + 60.37 + ], + [ + 21.9, + 60.55 + ], + [ + 21.7, + 60.46 + ], + [ + 21.84, + 60.64 + ], + [ + 21.58, + 60.65 + ], + [ + 21.61, + 60.49 + ], + [ + 21.49, + 60.59 + ], + [ + 21.17, + 60.88 + ], + [ + 21.29, + 61.01 + ], + [ + 21.44, + 60.91 + ], + [ + 21.46, + 61.6 + ], + [ + 21.68, + 61.56 + ], + [ + 21.06, + 62.62 + ], + [ + 21.47, + 63.08 + ], + [ + 21.68, + 63.05 + ], + [ + 21.54, + 63.27 + ], + [ + 22.01, + 63.16 + ], + [ + 22.49, + 63.57 + ], + [ + 22.82, + 63.9 + ], + [ + 22.79, + 63.69 + ], + [ + 23.41, + 64.09 + ], + [ + 23.62, + 64.05 + ], + [ + 24.54, + 64.82 + ], + [ + 25.1, + 64.92 + ], + [ + 25.31, + 64.83 + ], + [ + 25.19, + 64.98 + ], + [ + 25.49, + 64.96 + ], + [ + 25.18, + 65.59 + ], + [ + 24.14, + 65.88 + ] + ], + [ + [ + 28.28, + 61.38 + ], + [ + 28.13, + 61.44 + ], + [ + 28.17, + 61.5 + ], + [ + 27.93, + 61.61 + ], + [ + 27.93, + 61.37 + ], + [ + 27.35, + 61.46 + ], + [ + 27.77, + 61.35 + ], + [ + 27.69, + 61.25 + ], + [ + 28.39, + 61.17 + ], + [ + 27.82, + 61.17 + ], + [ + 28.13, + 61.05 + ], + [ + 28.85, + 61.25 + ], + [ + 28.65, + 61.37 + ], + [ + 28.61, + 61.2 + ], + [ + 28.28, + 61.38 + ] + ], + [ + [ + 23.82, + 61.6 + ], + [ + 23.82, + 61.87 + ], + [ + 23.55, + 61.71 + ], + [ + 23.69, + 61.6 + ], + [ + 23.51, + 61.47 + ], + [ + 23.82, + 61.6 + ] + ], + [ + [ + 24.87, + 61.59 + ], + [ + 24.87, + 61.6 + ], + [ + 24.87, + 61.61 + ], + [ + 24.87, + 61.62 + ], + [ + 24.87, + 61.61 + ], + [ + 24.87, + 61.6 + ], + [ + 24.83, + 61.6 + ], + [ + 24.87, + 61.59 + ] + ], + [ + [ + 25.4, + 61.6 + ], + [ + 25.31, + 61.6 + ], + [ + 25.51, + 61.19 + ], + [ + 25.58, + 61.22 + ], + [ + 25.66, + 61.19 + ], + [ + 25.64, + 61.63 + ], + [ + 25.88, + 62.2 + ], + [ + 25.42, + 61.77 + ], + [ + 25.18, + 61.83 + ], + [ + 25.4, + 61.6 + ] + ], + [ + [ + 26.19, + 61.6 + ], + [ + 26.19, + 61.61 + ], + [ + 26.06, + 61.6 + ], + [ + 26.19, + 61.6 + ] + ], + [ + [ + 26.54, + 61.94 + ], + [ + 26.46, + 61.81 + ], + [ + 26.94, + 61.66 + ], + [ + 26.93, + 61.83 + ], + [ + 26.54, + 61.94 + ] + ], + [ + [ + 27.77, + 62.65 + ], + [ + 28.01, + 62.79 + ], + [ + 27.75, + 62.92 + ], + [ + 28.27, + 63 + ], + [ + 27.73, + 63.11 + ], + [ + 27.69, + 62.94 + ], + [ + 27.25, + 63.17 + ], + [ + 27.29, + 63.05 + ], + [ + 27.55, + 62.85 + ], + [ + 27.73, + 62.92 + ], + [ + 27.77, + 62.65 + ] + ], + [ + [ + 24.35, + 61.61 + ], + [ + 24.11, + 61.33 + ], + [ + 24.3, + 61.52 + ], + [ + 24.65, + 61.5 + ], + [ + 24.35, + 61.61 + ] + ], + [ + [ + 26.38, + 62.86 + ], + [ + 26.59, + 62.66 + ], + [ + 26.62, + 62.86 + ], + [ + 26.38, + 62.86 + ] + ], + [ + [ + 26.76, + 62.96 + ], + [ + 26.7, + 62.79 + ], + [ + 26.94, + 62.71 + ], + [ + 26.78, + 62.82 + ], + [ + 27.07, + 62.85 + ], + [ + 26.76, + 62.96 + ] + ], + [ + [ + 27.69, + 64.38 + ], + [ + 27.38, + 64.31 + ], + [ + 27.16, + 64.55 + ], + [ + 26.72, + 64.44 + ], + [ + 27.25, + 64.12 + ], + [ + 28.01, + 64.36 + ], + [ + 27.69, + 64.38 + ] + ], + [ + [ + 28.39, + 69.15 + ], + [ + 28.59, + 69.19 + ], + [ + 28.61, + 69.19 + ], + [ + 28.59, + 69.19 + ], + [ + 28.43, + 69.22 + ], + [ + 27.6, + 69.03 + ], + [ + 27.69, + 69.03 + ], + [ + 27.47, + 69.01 + ], + [ + 27.01, + 68.91 + ], + [ + 27.31, + 68.93 + ], + [ + 27.33, + 68.88 + ], + [ + 27.42, + 68.77 + ], + [ + 27.33, + 68.78 + ], + [ + 27.42, + 68.77 + ], + [ + 27.84, + 68.82 + ], + [ + 27.86, + 68.8 + ], + [ + 27.84, + 68.82 + ], + [ + 27.88, + 68.9 + ], + [ + 27.91, + 68.93 + ], + [ + 28.04, + 68.88 + ], + [ + 28.28, + 68.85 + ], + [ + 28.11, + 69.07 + ], + [ + 28.43, + 69.07 + ], + [ + 28.39, + 69.15 + ] + ], + [ + [ + 26.65, + 63.03 + ], + [ + 26.77, + 63.25 + ], + [ + 26.51, + 63.39 + ], + [ + 26.66, + 63.21 + ], + [ + 26.38, + 63.17 + ], + [ + 26.65, + 63.03 + ] + ], + [ + [ + 27.39, + 68.06 + ], + [ + 27.26, + 67.89 + ], + [ + 27.76, + 67.81 + ], + [ + 27.9, + 67.96 + ], + [ + 27.39, + 68.06 + ] + ], + [ + [ + 27.86, + 66.58 + ], + [ + 27.38, + 66.71 + ], + [ + 27.31, + 66.5 + ], + [ + 27.33, + 66.5 + ], + [ + 27.31, + 66.5 + ], + [ + 27.42, + 66.52 + ], + [ + 27.91, + 66.58 + ], + [ + 27.86, + 66.58 + ] + ], + [ + [ + 26.65, + 68.07 + ], + [ + 26.27, + 68.16 + ], + [ + 26.87, + 67.97 + ], + [ + 26.65, + 68.07 + ] + ], + [ + [ + 29.09, + 61.62 + ], + [ + 29.09, + 61.61 + ], + [ + 29.05, + 61.6 + ], + [ + 28.94, + 61.86 + ], + [ + 28.61, + 61.84 + ], + [ + 28.43, + 61.7 + ], + [ + 28.96, + 61.71 + ], + [ + 28.96, + 61.62 + ], + [ + 29.05, + 61.6 + ], + [ + 29.09, + 61.61 + ], + [ + 29.09, + 61.62 + ] + ], + [ + [ + 28.43, + 61.59 + ], + [ + 28.28, + 61.48 + ], + [ + 28.68, + 61.5 + ], + [ + 28.43, + 61.59 + ] + ], + [ + [ + 27.77, + 61.68 + ], + [ + 27.77, + 61.67 + ], + [ + 27.69, + 61.6 + ], + [ + 27.91, + 61.62 + ], + [ + 27.77, + 61.67 + ], + [ + 27.77, + 61.68 + ] + ], + [ + [ + 29.58, + 62.02 + ], + [ + 29.22, + 62 + ], + [ + 29.19, + 61.75 + ], + [ + 29.38, + 61.69 + ], + [ + 29.36, + 61.73 + ], + [ + 29.29, + 61.81 + ], + [ + 29.4, + 61.72 + ], + [ + 29.58, + 61.91 + ], + [ + 29.78, + 61.88 + ], + [ + 29.58, + 62.02 + ] + ], + [ + [ + 28.13, + 62.77 + ], + [ + 28.21, + 62.48 + ], + [ + 28.39, + 62.59 + ], + [ + 28.13, + 62.77 + ] + ], + [ + [ + 28.83, + 62.14 + ], + [ + 28.65, + 62.3 + ], + [ + 28.56, + 62.11 + ], + [ + 28.17, + 62.27 + ], + [ + 27.92, + 62.19 + ], + [ + 28.39, + 62.17 + ], + [ + 28.63, + 61.9 + ], + [ + 28.87, + 61.92 + ], + [ + 28.61, + 62.13 + ], + [ + 29.09, + 62.16 + ], + [ + 28.83, + 62.14 + ] + ], + [ + [ + 29.27, + 62.19 + ], + [ + 29.4, + 62.04 + ], + [ + 29.58, + 62.18 + ], + [ + 29.88, + 62.08 + ], + [ + 29.98, + 62.17 + ], + [ + 29.36, + 62.31 + ], + [ + 29.82, + 62.35 + ], + [ + 29.66, + 62.63 + ], + [ + 29.64, + 62.38 + ], + [ + 29.44, + 62.52 + ], + [ + 29.19, + 62.43 + ], + [ + 29.27, + 62.19 + ] + ], + [ + [ + 28.78, + 62.27 + ], + [ + 28.81, + 62.27 + ], + [ + 28.81, + 62.23 + ], + [ + 28.83, + 62.23 + ], + [ + 28.83, + 62.27 + ], + [ + 28.81, + 62.27 + ], + [ + 28.7, + 62.29 + ], + [ + 28.78, + 62.27 + ] + ], + [ + [ + 29.56, + 62.96 + ], + [ + 29.71, + 62.68 + ], + [ + 29.88, + 62.78 + ], + [ + 29.56, + 62.96 + ] + ], + [ + [ + 30.04, + 62.98 + ], + [ + 30.01, + 63.32 + ], + [ + 29.84, + 63.24 + ], + [ + 29.09, + 63.58 + ], + [ + 29.25, + 63.25 + ], + [ + 29.81, + 63.19 + ], + [ + 30.04, + 62.98 + ] + ], + [ + [ + 28.81, + 62.86 + ], + [ + 28.54, + 62.9 + ], + [ + 28.7, + 62.76 + ], + [ + 28.81, + 62.86 + ] + ], + [ + [ + 29.14, + 65.07 + ], + [ + 29.05, + 65.04 + ], + [ + 28.96, + 64.87 + ], + [ + 29.36, + 65.11 + ], + [ + 29.14, + 65.07 + ] + ], + [ + [ + 29.9, + 65.89 + ], + [ + 29.2, + 65.96 + ], + [ + 30.05, + 65.81 + ], + [ + 29.9, + 65.89 + ] + ], + [ + [ + 30.59, + 62.98 + ], + [ + 30.81, + 62.89 + ], + [ + 30.87, + 63.05 + ], + [ + 30.59, + 62.98 + ] + ], + [ + [ + 29.49, + 64.3 + ], + [ + 29.53, + 64.11 + ], + [ + 29.79, + 64.26 + ], + [ + 29.49, + 64.3 + ] + ], + [ + [ + 28.84, + 66.28 + ], + [ + 28.43, + 66.1 + ], + [ + 29.18, + 66.25 + ], + [ + 28.84, + 66.28 + ] + ] + ], + [ + [ + [ + 29.75, + 61.59 + ], + [ + 29.73, + 61.57 + ], + [ + 29.73, + 61.59 + ], + [ + 29.75, + 61.59 + ] + ] + ], + [ + [ + [ + 24.75, + 64.98 + ], + [ + 24.65, + 65.08 + ], + [ + 25.07, + 65.04 + ], + [ + 24.75, + 64.98 + ] + ] + ], + [ + [ + [ + 22.29, + 60.27 + ], + [ + 22.21, + 60.19 + ], + [ + 22.1, + 60.32 + ], + [ + 22.29, + 60.27 + ] + ] + ], + [ + [ + [ + 22.85, + 60.2 + ], + [ + 22.76, + 60 + ], + [ + 22.39, + 60 + ], + [ + 22.47, + 60.24 + ], + [ + 22.49, + 60.21 + ], + [ + 22.84, + 60.24 + ], + [ + 22.96, + 60.31 + ], + [ + 22.85, + 60.2 + ] + ] + ], + [ + [ + [ + 20.22, + 60.08 + ], + [ + 20.18, + 59.97 + ], + [ + 19.97, + 60.07 + ], + [ + 20.22, + 60.08 + ] + ] + ], + [ + [ + [ + 19.84, + 60.42 + ], + [ + 20.27, + 60.29 + ], + [ + 20.17, + 60.18 + ], + [ + 19.98, + 60.3 + ], + [ + 19.96, + 60.06 + ], + [ + 19.63, + 60.29 + ], + [ + 19.82, + 60.2 + ], + [ + 19.84, + 60.42 + ] + ] + ] + ] + }, + "properties": { + "A3": "FIN" + } + }, + { + "type": "Feature", + "geometry": { + "type": "Polygon", + "coordinates": [ + [ + [ + 14.41, + 53.34 + ], + [ + 14.28, + 53.64 + ], + [ + 14.28, + 53.65 + ], + [ + 14.27, + 53.7 + ], + [ + 14.61, + 53.58 + ], + [ + 14.62, + 53.85 + ], + [ + 14.21, + 53.87 + ], + [ + 14.19, + 53.91 + ], + [ + 14.23, + 53.93 + ], + [ + 16.17, + 54.26 + ], + [ + 16.53, + 54.54 + ], + [ + 17.97, + 54.83 + ], + [ + 18.33, + 54.83 + ], + [ + 18.78, + 54.65 + ], + [ + 18.42, + 54.79 + ], + [ + 18.78, + 54.35 + ], + [ + 19.64, + 54.46 + ], + [ + 19.65, + 54.45 + ], + [ + 19.24, + 54.27 + ], + [ + 19.8, + 54.44 + ], + [ + 22.06, + 54.34 + ], + [ + 22.19, + 54.34 + ], + [ + 22.24, + 54.34 + ], + [ + 22.32, + 54.34 + ], + [ + 22.33, + 54.34 + ], + [ + 22.79, + 54.36 + ], + [ + 22.8, + 54.37 + ], + [ + 23.04, + 54.32 + ], + [ + 23.16, + 54.3 + ], + [ + 23.16, + 54.29 + ], + [ + 23.16, + 54.3 + ], + [ + 23.39, + 54.22 + ], + [ + 23.4, + 54.21 + ], + [ + 23.41, + 54.2 + ], + [ + 23.42, + 54.19 + ], + [ + 23.42, + 54.18 + ], + [ + 23.52, + 54.09 + ], + [ + 23.51, + 53.96 + ], + [ + 23.51, + 53.91 + ], + [ + 23.52, + 53.9 + ], + [ + 23.58, + 53.74 + ], + [ + 23.59, + 53.73 + ], + [ + 23.79, + 53.28 + ], + [ + 23.8, + 53.27 + ], + [ + 23.81, + 53.25 + ], + [ + 23.91, + 53.17 + ], + [ + 23.9, + 53.13 + ], + [ + 23.89, + 53.13 + ], + [ + 23.9, + 53.13 + ], + [ + 23.9, + 53.12 + ], + [ + 23.89, + 53.12 + ], + [ + 23.89, + 53.13 + ], + [ + 23.89, + 53.12 + ], + [ + 23.89, + 53.11 + ], + [ + 23.94, + 52.78 + ], + [ + 23.94, + 52.76 + ], + [ + 23.94, + 52.74 + ], + [ + 23.94, + 52.72 + ], + [ + 23.85, + 52.66 + ], + [ + 23.8, + 52.64 + ], + [ + 23.2, + 52.28 + ], + [ + 23.2, + 52.27 + ], + [ + 23.21, + 52.26 + ], + [ + 23.2, + 52.25 + ], + [ + 23.19, + 52.24 + ], + [ + 23.2, + 52.23 + ], + [ + 23.21, + 52.23 + ], + [ + 23.25, + 52.22 + ], + [ + 23.26, + 52.22 + ], + [ + 23.27, + 52.21 + ], + [ + 23.31, + 52.22 + ], + [ + 23.3, + 52.21 + ], + [ + 23.35, + 52.2 + ], + [ + 23.36, + 52.21 + ], + [ + 23.4, + 52.19 + ], + [ + 23.42, + 52.18 + ], + [ + 23.42, + 52.17 + ], + [ + 23.46, + 52.18 + ], + [ + 23.47, + 52.18 + ], + [ + 23.5, + 52.17 + ], + [ + 23.49, + 52.17 + ], + [ + 23.49, + 52.16 + ], + [ + 23.5, + 52.15 + ], + [ + 23.51, + 52.15 + ], + [ + 23.53, + 52.13 + ], + [ + 23.54, + 52.13 + ], + [ + 23.56, + 52.12 + ], + [ + 23.57, + 52.12 + ], + [ + 23.6, + 52.12 + ], + [ + 23.62, + 52.11 + ], + [ + 23.62, + 52.09 + ], + [ + 23.65, + 52.07 + ], + [ + 23.64, + 52.06 + ], + [ + 23.66, + 52.05 + ], + [ + 23.66, + 52.03 + ], + [ + 23.69, + 51.99 + ], + [ + 23.68, + 51.99 + ], + [ + 23.67, + 51.98 + ], + [ + 23.67, + 51.97 + ], + [ + 23.65, + 51.93 + ], + [ + 23.64, + 51.93 + ], + [ + 23.61, + 51.92 + ], + [ + 23.62, + 51.91 + ], + [ + 23.62, + 51.9 + ], + [ + 23.62, + 51.87 + ], + [ + 23.62, + 51.88 + ], + [ + 23.6, + 51.84 + ], + [ + 23.6, + 51.83 + ], + [ + 23.62, + 51.82 + ], + [ + 23.63, + 51.78 + ], + [ + 23.59, + 51.77 + ], + [ + 23.56, + 51.76 + ], + [ + 23.55, + 51.76 + ], + [ + 23.55, + 51.71 + ], + [ + 23.58, + 51.53 + ], + [ + 23.59, + 51.53 + ], + [ + 23.6, + 51.53 + ], + [ + 23.61, + 51.52 + ], + [ + 23.62, + 51.51 + ], + [ + 23.64, + 51.32 + ], + [ + 23.64, + 51.31 + ], + [ + 23.65, + 51.3 + ], + [ + 23.69, + 51.29 + ], + [ + 23.71, + 51.27 + ], + [ + 23.73, + 51.24 + ], + [ + 23.73, + 51.23 + ], + [ + 23.81, + 51.18 + ], + [ + 23.84, + 51.16 + ], + [ + 23.86, + 51.15 + ], + [ + 23.87, + 51.15 + ], + [ + 23.86, + 51.1 + ], + [ + 23.88, + 51.08 + ], + [ + 23.93, + 51.04 + ], + [ + 23.93, + 51.02 + ], + [ + 23.92, + 51.01 + ], + [ + 23.97, + 50.97 + ], + [ + 24, + 50.93 + ], + [ + 24.04, + 50.9 + ], + [ + 24.06, + 50.89 + ], + [ + 24.08, + 50.89 + ], + [ + 24.09, + 50.89 + ], + [ + 24.14, + 50.86 + ], + [ + 24.13, + 50.85 + ], + [ + 24.12, + 50.85 + ], + [ + 24.08, + 50.84 + ], + [ + 24.08, + 50.83 + ], + [ + 24.04, + 50.83 + ], + [ + 24.04, + 50.84 + ], + [ + 23.97, + 50.82 + ], + [ + 23.97, + 50.78 + ], + [ + 24.02, + 50.75 + ], + [ + 24.09, + 50.67 + ], + [ + 24.09, + 50.66 + ], + [ + 24, + 50.41 + ], + [ + 23.69, + 50.35 + ], + [ + 23.69, + 50.34 + ], + [ + 23.64, + 50.32 + ], + [ + 23.05, + 49.89 + ], + [ + 22.99, + 49.84 + ], + [ + 22.98, + 49.84 + ], + [ + 22.76, + 49.64 + ], + [ + 22.71, + 49.17 + ], + [ + 22.89, + 49.01 + ], + [ + 22.65, + 49.05 + ], + [ + 22.65, + 49.06 + ], + [ + 22.64, + 49.06 + ], + [ + 22.61, + 49.08 + ], + [ + 22.6, + 49.09 + ], + [ + 22.58, + 49.1 + ], + [ + 22.57, + 49.09 + ], + [ + 22.53, + 49.09 + ], + [ + 22.5, + 49.09 + ], + [ + 22.44, + 49.1 + ], + [ + 22.43, + 49.1 + ], + [ + 22.42, + 49.1 + ], + [ + 22.41, + 49.1 + ], + [ + 22.41, + 49.11 + ], + [ + 22.4, + 49.11 + ], + [ + 22.4, + 49.12 + ], + [ + 22.37, + 49.14 + ], + [ + 22.37, + 49.15 + ], + [ + 22.33, + 49.14 + ], + [ + 22.32, + 49.14 + ], + [ + 22.31, + 49.14 + ], + [ + 22.3, + 49.14 + ], + [ + 22.28, + 49.14 + ], + [ + 22.27, + 49.15 + ], + [ + 22.26, + 49.15 + ], + [ + 22.24, + 49.15 + ], + [ + 22.23, + 49.17 + ], + [ + 22.19, + 49.17 + ], + [ + 22.19, + 49.18 + ], + [ + 21.63, + 49.45 + ], + [ + 20.87, + 49.34 + ], + [ + 20.8, + 49.35 + ], + [ + 20.81, + 49.35 + ], + [ + 20.78, + 49.37 + ], + [ + 20.79, + 49.37 + ], + [ + 20.76, + 49.37 + ], + [ + 20.76, + 49.38 + ], + [ + 20.74, + 49.4 + ], + [ + 20.74, + 49.41 + ], + [ + 20.43, + 49.41 + ], + [ + 20.44, + 49.41 + ], + [ + 20.43, + 49.4 + ], + [ + 20.41, + 49.4 + ], + [ + 20.41, + 49.39 + ], + [ + 20.35, + 49.4 + ], + [ + 20.09, + 49.18 + ], + [ + 20.08, + 49.18 + ], + [ + 19.8, + 49.2 + ], + [ + 19.79, + 49.2 + ], + [ + 19.78, + 49.21 + ], + [ + 19.77, + 49.21 + ], + [ + 19.76, + 49.21 + ], + [ + 19.76, + 49.22 + ], + [ + 19.77, + 49.22 + ], + [ + 19.77, + 49.23 + ], + [ + 19.77, + 49.24 + ], + [ + 19.61, + 49.45 + ], + [ + 19.47, + 49.61 + ], + [ + 19.19, + 49.41 + ], + [ + 18.96, + 49.46 + ], + [ + 18.96, + 49.49 + ], + [ + 18.85, + 49.52 + ], + [ + 18.61, + 49.76 + ], + [ + 18.61, + 49.77 + ], + [ + 18.58, + 49.81 + ], + [ + 18.55, + 49.92 + ], + [ + 18.54, + 49.93 + ], + [ + 18.48, + 49.91 + ], + [ + 18.46, + 49.92 + ], + [ + 18.45, + 49.92 + ], + [ + 18.41, + 49.94 + ], + [ + 18.37, + 49.94 + ], + [ + 18.33, + 49.95 + ], + [ + 18.34, + 49.94 + ], + [ + 18.35, + 49.93 + ], + [ + 17.75, + 50.07 + ], + [ + 17.59, + 50.16 + ], + [ + 17.72, + 50.32 + ], + [ + 17.35, + 50.26 + ], + [ + 16.91, + 50.45 + ], + [ + 17.01, + 50.22 + ], + [ + 16.7, + 50.1 + ], + [ + 16.52, + 50.24 + ], + [ + 16.52, + 50.25 + ], + [ + 16.38, + 50.34 + ], + [ + 16.36, + 50.35 + ], + [ + 16.36, + 50.37 + ], + [ + 16.36, + 50.38 + ], + [ + 16.21, + 50.42 + ], + [ + 16.2, + 50.43 + ], + [ + 16.23, + 50.45 + ], + [ + 16.25, + 50.47 + ], + [ + 16.27, + 50.48 + ], + [ + 16.29, + 50.48 + ], + [ + 16.37, + 50.51 + ], + [ + 16.37, + 50.52 + ], + [ + 16.4, + 50.54 + ], + [ + 16.39, + 50.54 + ], + [ + 16.4, + 50.55 + ], + [ + 16.41, + 50.56 + ], + [ + 16.42, + 50.57 + ], + [ + 16.4, + 50.62 + ], + [ + 16.39, + 50.62 + ], + [ + 16.02, + 50.6 + ], + [ + 15.36, + 50.85 + ], + [ + 15.32, + 50.86 + ], + [ + 15.31, + 50.86 + ], + [ + 15.06, + 51.02 + ], + [ + 14.82, + 50.87 + ], + [ + 14.9, + 50.94 + ], + [ + 14.94, + 51.01 + ], + [ + 14.94, + 51.03 + ], + [ + 14.95, + 51.04 + ], + [ + 14.96, + 51.04 + ], + [ + 14.95, + 51.04 + ], + [ + 14.96, + 51.05 + ], + [ + 14.96, + 51.06 + ], + [ + 14.98, + 51.1 + ], + [ + 14.99, + 51.12 + ], + [ + 15, + 51.13 + ], + [ + 15.01, + 51.18 + ], + [ + 15.03, + 51.25 + ], + [ + 15.03, + 51.29 + ], + [ + 15.01, + 51.32 + ], + [ + 15, + 51.32 + ], + [ + 14.99, + 51.33 + ], + [ + 14.98, + 51.37 + ], + [ + 14.96, + 51.4 + ], + [ + 14.97, + 51.4 + ], + [ + 14.97, + 51.41 + ], + [ + 14.96, + 51.45 + ], + [ + 14.96, + 51.46 + ], + [ + 14.92, + 51.48 + ], + [ + 14.81, + 51.51 + ], + [ + 14.74, + 51.59 + ], + [ + 14.76, + 51.62 + ], + [ + 14.66, + 51.74 + ], + [ + 14.66, + 51.75 + ], + [ + 14.65, + 51.77 + ], + [ + 14.65, + 51.78 + ], + [ + 14.59, + 51.82 + ], + [ + 14.59, + 51.83 + ], + [ + 14.59, + 51.84 + ], + [ + 14.61, + 51.85 + ], + [ + 14.63, + 51.86 + ], + [ + 14.65, + 51.88 + ], + [ + 14.67, + 51.89 + ], + [ + 14.68, + 51.89 + ], + [ + 14.7, + 51.92 + ], + [ + 14.72, + 51.94 + ], + [ + 14.74, + 52.02 + ], + [ + 14.74, + 52.03 + ], + [ + 14.75, + 52.04 + ], + [ + 14.75, + 52.05 + ], + [ + 14.76, + 52.07 + ], + [ + 14.75, + 52.08 + ], + [ + 14.74, + 52.08 + ], + [ + 14.7, + 52.1 + ], + [ + 14.69, + 52.11 + ], + [ + 14.68, + 52.12 + ], + [ + 14.68, + 52.14 + ], + [ + 14.68, + 52.15 + ], + [ + 14.69, + 52.16 + ], + [ + 14.7, + 52.16 + ], + [ + 14.71, + 52.17 + ], + [ + 14.7, + 52.18 + ], + [ + 14.69, + 52.19 + ], + [ + 14.71, + 52.21 + ], + [ + 14.71, + 52.23 + ], + [ + 14.71, + 52.24 + ], + [ + 14.7, + 52.24 + ], + [ + 14.69, + 52.25 + ], + [ + 14.69, + 52.26 + ], + [ + 14.68, + 52.26 + ], + [ + 14.67, + 52.26 + ], + [ + 14.64, + 52.26 + ], + [ + 14.63, + 52.27 + ], + [ + 14.61, + 52.27 + ], + [ + 14.6, + 52.27 + ], + [ + 14.59, + 52.28 + ], + [ + 14.58, + 52.29 + ], + [ + 14.58, + 52.3 + ], + [ + 14.58, + 52.31 + ], + [ + 14.58, + 52.32 + ], + [ + 14.57, + 52.32 + ], + [ + 14.56, + 52.33 + ], + [ + 14.56, + 52.34 + ], + [ + 14.55, + 52.36 + ], + [ + 14.55, + 52.37 + ], + [ + 14.55, + 52.38 + ], + [ + 14.54, + 52.39 + ], + [ + 14.55, + 52.41 + ], + [ + 14.54, + 52.42 + ], + [ + 14.55, + 52.43 + ], + [ + 14.56, + 52.44 + ], + [ + 14.57, + 52.44 + ], + [ + 14.59, + 52.45 + ], + [ + 14.61, + 52.46 + ], + [ + 14.61, + 52.47 + ], + [ + 14.61, + 52.48 + ], + [ + 14.63, + 52.49 + ], + [ + 14.64, + 52.5 + ], + [ + 14.63, + 52.5 + ], + [ + 14.61, + 52.51 + ], + [ + 14.6, + 52.53 + ], + [ + 14.61, + 52.54 + ], + [ + 14.61, + 52.55 + ], + [ + 14.62, + 52.56 + ], + [ + 14.63, + 52.56 + ], + [ + 14.64, + 52.57 + ], + [ + 14.61, + 52.59 + ], + [ + 14.61, + 52.6 + ], + [ + 14.6, + 52.6 + ], + [ + 14.59, + 52.61 + ], + [ + 14.58, + 52.62 + ], + [ + 14.56, + 52.63 + ], + [ + 14.53, + 52.63 + ], + [ + 14.52, + 52.64 + ], + [ + 14.5, + 52.64 + ], + [ + 14.5, + 52.65 + ], + [ + 14.48, + 52.65 + ], + [ + 14.48, + 52.66 + ], + [ + 14.46, + 52.67 + ], + [ + 14.45, + 52.68 + ], + [ + 14.43, + 52.68 + ], + [ + 14.43, + 52.69 + ], + [ + 14.42, + 52.7 + ], + [ + 14.41, + 52.7 + ], + [ + 14.39, + 52.72 + ], + [ + 14.38, + 52.73 + ], + [ + 14.37, + 52.74 + ], + [ + 14.36, + 52.74 + ], + [ + 14.35, + 52.75 + ], + [ + 14.33, + 52.76 + ], + [ + 14.32, + 52.76 + ], + [ + 14.28, + 52.77 + ], + [ + 14.27, + 52.78 + ], + [ + 14.24, + 52.8 + ], + [ + 14.23, + 52.8 + ], + [ + 14.22, + 52.81 + ], + [ + 14.2, + 52.82 + ], + [ + 14.17, + 52.82 + ], + [ + 14.14, + 52.82 + ], + [ + 14.12, + 52.83 + ], + [ + 14.13, + 52.85 + ], + [ + 14.14, + 52.86 + ], + [ + 14.15, + 52.87 + ], + [ + 14.16, + 52.89 + ], + [ + 14.15, + 52.9 + ], + [ + 14.15, + 52.91 + ], + [ + 14.15, + 52.92 + ], + [ + 14.15, + 52.93 + ], + [ + 14.14, + 52.93 + ], + [ + 14.14, + 52.94 + ], + [ + 14.14, + 52.95 + ], + [ + 14.14, + 52.96 + ], + [ + 14.16, + 52.97 + ], + [ + 14.18, + 52.98 + ], + [ + 14.19, + 52.98 + ], + [ + 14.2, + 52.98 + ], + [ + 14.22, + 52.99 + ], + [ + 14.24, + 52.99 + ], + [ + 14.24, + 53 + ], + [ + 14.28, + 53.01 + ], + [ + 14.29, + 53.02 + ], + [ + 14.3, + 53.03 + ], + [ + 14.31, + 53.03 + ], + [ + 14.32, + 53.04 + ], + [ + 14.33, + 53.04 + ], + [ + 14.36, + 53.07 + ], + [ + 14.36, + 53.08 + ], + [ + 14.37, + 53.08 + ], + [ + 14.37, + 53.09 + ], + [ + 14.37, + 53.1 + ], + [ + 14.37, + 53.11 + ], + [ + 14.38, + 53.11 + ], + [ + 14.38, + 53.13 + ], + [ + 14.38, + 53.15 + ], + [ + 14.37, + 53.17 + ], + [ + 14.37, + 53.18 + ], + [ + 14.38, + 53.19 + ], + [ + 14.39, + 53.21 + ], + [ + 14.41, + 53.21 + ], + [ + 14.41, + 53.22 + ], + [ + 14.41, + 53.23 + ], + [ + 14.43, + 53.24 + ], + [ + 14.44, + 53.25 + ], + [ + 14.44, + 53.27 + ], + [ + 14.44, + 53.28 + ], + [ + 14.41, + 53.34 + ] + ], + [ + [ + 21.75, + 53.8 + ], + [ + 21.61, + 53.75 + ], + [ + 21.8, + 53.69 + ], + [ + 21.75, + 53.8 + ] + ] + ] + }, + "properties": { + "A3": "POL" + } + }, + { + "type": "Feature", + "geometry": { + "type": "MultiPolygon", + "coordinates": [ + [ + [ + [ + 16.47, + -28.58 + ], + [ + 16.48, + -28.57 + ], + [ + 16.48, + -28.56 + ], + [ + 16.5, + -28.56 + ], + [ + 16.57, + -28.54 + ], + [ + 16.61, + -28.52 + ], + [ + 16.62, + -28.51 + ], + [ + 16.63, + -28.49 + ], + [ + 16.64, + -28.49 + ], + [ + 16.66, + -28.48 + ], + [ + 16.68, + -28.47 + ], + [ + 16.7, + -28.49 + ], + [ + 16.71, + -28.5 + ], + [ + 16.73, + -28.5 + ], + [ + 16.74, + -28.48 + ], + [ + 16.76, + -28.46 + ], + [ + 16.77, + -28.45 + ], + [ + 16.77, + -28.42 + ], + [ + 16.77, + -28.41 + ], + [ + 16.78, + -28.39 + ], + [ + 16.79, + -28.38 + ], + [ + 16.81, + -28.36 + ], + [ + 16.79, + -28.34 + ], + [ + 16.78, + -28.32 + ], + [ + 16.75, + -28.29 + ], + [ + 16.76, + -28.27 + ], + [ + 16.78, + -28.26 + ], + [ + 16.79, + -28.27 + ], + [ + 16.81, + -28.28 + ], + [ + 16.83, + -28.27 + ], + [ + 16.83, + -28.26 + ], + [ + 16.83, + -28.25 + ], + [ + 16.82, + -28.24 + ], + [ + 16.8, + -28.23 + ], + [ + 16.85, + -28.21 + ], + [ + 16.86, + -28.21 + ], + [ + 16.83, + -28.19 + ], + [ + 16.83, + -28.18 + ], + [ + 16.83, + -28.17 + ], + [ + 16.85, + -28.17 + ], + [ + 16.87, + -28.18 + ], + [ + 16.88, + -28.18 + ], + [ + 16.89, + -28.13 + ], + [ + 16.9, + -28.07 + ], + [ + 16.93, + -28.07 + ], + [ + 16.94, + -28.07 + ], + [ + 16.95, + -28.08 + ], + [ + 16.96, + -28.07 + ], + [ + 17, + -28.07 + ], + [ + 17.01, + -28.07 + ], + [ + 17.03, + -28.05 + ], + [ + 17.04, + -28.05 + ], + [ + 17.05, + -28.05 + ], + [ + 17.11, + -28.05 + ], + [ + 17.13, + -28.09 + ], + [ + 17.14, + -28.09 + ], + [ + 17.19, + -28.15 + ], + [ + 17.19, + -28.16 + ], + [ + 17.19, + -28.17 + ], + [ + 17.18, + -28.18 + ], + [ + 17.18, + -28.19 + ], + [ + 17.19, + -28.23 + ], + [ + 17.2, + -28.23 + ], + [ + 17.2, + -28.24 + ], + [ + 17.22, + -28.25 + ], + [ + 17.23, + -28.25 + ], + [ + 17.26, + -28.24 + ], + [ + 17.28, + -28.25 + ], + [ + 17.29, + -28.24 + ], + [ + 17.3, + -28.23 + ], + [ + 17.33, + -28.23 + ], + [ + 17.34, + -28.23 + ], + [ + 17.36, + -28.26 + ], + [ + 17.36, + -28.27 + ], + [ + 17.36, + -28.28 + ], + [ + 17.38, + -28.3 + ], + [ + 17.38, + -28.31 + ], + [ + 17.39, + -28.34 + ], + [ + 17.4, + -28.34 + ], + [ + 17.41, + -28.36 + ], + [ + 17.41, + -28.4 + ], + [ + 17.39, + -28.43 + ], + [ + 17.37, + -28.44 + ], + [ + 17.35, + -28.44 + ], + [ + 17.34, + -28.46 + ], + [ + 17.34, + -28.47 + ], + [ + 17.37, + -28.53 + ], + [ + 17.38, + -28.54 + ], + [ + 17.38, + -28.56 + ], + [ + 17.4, + -28.57 + ], + [ + 17.43, + -28.58 + ], + [ + 17.43, + -28.61 + ], + [ + 17.43, + -28.62 + ], + [ + 17.43, + -28.65 + ], + [ + 17.42, + -28.66 + ], + [ + 17.41, + -28.67 + ], + [ + 17.42, + -28.69 + ], + [ + 17.42, + -28.7 + ], + [ + 17.42, + -28.72 + ], + [ + 17.44, + -28.71 + ], + [ + 17.45, + -28.71 + ], + [ + 17.47, + -28.7 + ], + [ + 17.49, + -28.69 + ], + [ + 17.5, + -28.69 + ], + [ + 17.51, + -28.7 + ], + [ + 17.55, + -28.7 + ], + [ + 17.56, + -28.69 + ], + [ + 17.59, + -28.69 + ], + [ + 17.61, + -28.71 + ], + [ + 17.62, + -28.76 + ], + [ + 17.62, + -28.77 + ], + [ + 17.64, + -28.77 + ], + [ + 17.66, + -28.77 + ], + [ + 17.67, + -28.77 + ], + [ + 17.71, + -28.74 + ], + [ + 17.72, + -28.75 + ], + [ + 17.74, + -28.75 + ], + [ + 17.8, + -28.76 + ], + [ + 17.84, + -28.76 + ], + [ + 17.88, + -28.76 + ], + [ + 17.89, + -28.77 + ], + [ + 17.9, + -28.77 + ], + [ + 17.91, + -28.77 + ], + [ + 17.95, + -28.79 + ], + [ + 17.96, + -28.79 + ], + [ + 18.02, + -28.84 + ], + [ + 18.03, + -28.86 + ], + [ + 18.04, + -28.86 + ], + [ + 18.06, + -28.88 + ], + [ + 18.74, + -28.83 + ], + [ + 19.16, + -28.96 + ], + [ + 19.55, + -28.54 + ], + [ + 19.56, + -28.53 + ], + [ + 19.58, + -28.53 + ], + [ + 19.6, + -28.52 + ], + [ + 19.64, + -28.52 + ], + [ + 19.66, + -28.53 + ], + [ + 19.67, + -28.53 + ], + [ + 19.69, + -28.52 + ], + [ + 19.77, + -28.5 + ], + [ + 19.78, + -28.5 + ], + [ + 19.86, + -28.46 + ], + [ + 19.87, + -28.45 + ], + [ + 19.91, + -28.45 + ], + [ + 19.92, + -28.44 + ], + [ + 19.93, + -28.44 + ], + [ + 19.97, + -28.43 + ], + [ + 19.99, + -28.43 + ], + [ + 20, + -28.43 + ], + [ + 20, + -27.86 + ], + [ + 20, + -27.84 + ], + [ + 20, + -25.61 + ], + [ + 20, + -25.6 + ], + [ + 20, + -25.51 + ], + [ + 20, + -25.36 + ], + [ + 20, + -25.29 + ], + [ + 20, + -25.28 + ], + [ + 20, + -24.95 + ], + [ + 20, + -24.94 + ], + [ + 20, + -24.92 + ], + [ + 20, + -24.9 + ], + [ + 20, + -24.88 + ], + [ + 20, + -24.87 + ], + [ + 20, + -24.8 + ], + [ + 20, + -24.76 + ], + [ + 20.12, + -24.88 + ], + [ + 20.13, + -24.88 + ], + [ + 20.33, + -25.01 + ], + [ + 20.39, + -25.07 + ], + [ + 20.41, + -25.09 + ], + [ + 20.86, + -26.13 + ], + [ + 20.62, + -26.44 + ], + [ + 20.62, + -26.79 + ], + [ + 20.69, + -26.91 + ], + [ + 20.89, + -26.8 + ], + [ + 21.13, + -26.87 + ], + [ + 21.14, + -26.87 + ], + [ + 21.15, + -26.87 + ], + [ + 21.16, + -26.87 + ], + [ + 21.33, + -26.83 + ], + [ + 21.7, + -26.86 + ], + [ + 22.2, + -26.39 + ], + [ + 22.22, + -26.38 + ], + [ + 22.23, + -26.38 + ], + [ + 22.57, + -26.2 + ], + [ + 22.58, + -26.18 + ], + [ + 22.58, + -26.17 + ], + [ + 22.58, + -26.16 + ], + [ + 22.58, + -26.15 + ], + [ + 22.58, + -26.14 + ], + [ + 22.59, + -26.14 + ], + [ + 22.6, + -26.15 + ], + [ + 23.05, + -25.29 + ], + [ + 23.47, + -25.28 + ], + [ + 23.9, + -25.63 + ], + [ + 24.37, + -25.76 + ], + [ + 25.22, + -25.76 + ], + [ + 25.58, + -25.64 + ], + [ + 25.85, + -24.75 + ], + [ + 26.41, + -24.65 + ], + [ + 26.85, + -24.27 + ], + [ + 27, + -23.64 + ], + [ + 27.74, + -23.23 + ], + [ + 28.34, + -22.57 + ], + [ + 28.36, + -22.57 + ], + [ + 28.37, + -22.57 + ], + [ + 28.41, + -22.57 + ], + [ + 28.42, + -22.57 + ], + [ + 28.44, + -22.57 + ], + [ + 28.47, + -22.57 + ], + [ + 28.48, + -22.57 + ], + [ + 28.51, + -22.59 + ], + [ + 28.54, + -22.58 + ], + [ + 28.55, + -22.57 + ], + [ + 28.58, + -22.56 + ], + [ + 28.59, + -22.56 + ], + [ + 28.63, + -22.56 + ], + [ + 28.64, + -22.56 + ], + [ + 28.65, + -22.55 + ], + [ + 28.66, + -22.55 + ], + [ + 29.16, + -22.21 + ], + [ + 29.18, + -22.19 + ], + [ + 29.2, + -22.18 + ], + [ + 29.24, + -22.18 + ], + [ + 29.25, + -22.19 + ], + [ + 29.26, + -22.19 + ], + [ + 29.27, + -22.19 + ], + [ + 29.31, + -22.19 + ], + [ + 29.32, + -22.19 + ], + [ + 29.33, + -22.2 + ], + [ + 29.38, + -22.2 + ], + [ + 29.38, + -22.19 + ], + [ + 29.42, + -22.18 + ], + [ + 29.42, + -22.17 + ], + [ + 29.43, + -22.17 + ], + [ + 29.45, + -22.17 + ], + [ + 29.48, + -22.17 + ], + [ + 29.49, + -22.17 + ], + [ + 29.5, + -22.17 + ], + [ + 29.51, + -22.18 + ], + [ + 29.53, + -22.18 + ], + [ + 29.54, + -22.17 + ], + [ + 29.53, + -22.16 + ], + [ + 29.54, + -22.15 + ], + [ + 29.55, + -22.15 + ], + [ + 29.56, + -22.15 + ], + [ + 29.59, + -22.15 + ], + [ + 29.6, + -22.15 + ], + [ + 29.62, + -22.15 + ], + [ + 29.62, + -22.14 + ], + [ + 29.97, + -22.22 + ], + [ + 29.99, + -22.22 + ], + [ + 30, + -22.23 + ], + [ + 30.01, + -22.23 + ], + [ + 30.02, + -22.23 + ], + [ + 30.02, + -22.24 + ], + [ + 30.02, + -22.25 + ], + [ + 30.98, + -22.33 + ], + [ + 30.99, + -22.32 + ], + [ + 31.02, + -22.32 + ], + [ + 31.03, + -22.33 + ], + [ + 31.04, + -22.33 + ], + [ + 31.05, + -22.34 + ], + [ + 31.06, + -22.34 + ], + [ + 31.11, + -22.34 + ], + [ + 31.12, + -22.34 + ], + [ + 31.15, + -22.33 + ], + [ + 31.16, + -22.33 + ], + [ + 31.19, + -22.34 + ], + [ + 31.2, + -22.36 + ], + [ + 31.21, + -22.37 + ], + [ + 31.23, + -22.37 + ], + [ + 31.26, + -22.36 + ], + [ + 31.27, + -22.38 + ], + [ + 31.29, + -22.4 + ], + [ + 31.3, + -22.41 + ], + [ + 31.31, + -22.42 + ], + [ + 31.31, + -22.43 + ], + [ + 31.38, + -22.63 + ], + [ + 31.56, + -23.48 + ], + [ + 31.99, + -24.3 + ], + [ + 32.03, + -25.17 + ], + [ + 32.03, + -25.19 + ], + [ + 32.03, + -25.2 + ], + [ + 31.99, + -25.44 + ], + [ + 31.98, + -25.95 + ], + [ + 31.32, + -25.74 + ], + [ + 30.79, + -26.57 + ], + [ + 30.81, + -26.84 + ], + [ + 30.89, + -26.79 + ], + [ + 31.15, + -27.2 + ], + [ + 31.89, + -27.32 + ], + [ + 31.93, + -27.32 + ], + [ + 31.96, + -27.52 + ], + [ + 31.95, + -27.32 + ], + [ + 32.01, + -26.81 + ], + [ + 32.12, + -26.84 + ], + [ + 32.13, + -26.84 + ], + [ + 32.14, + -26.84 + ], + [ + 32.14, + -26.85 + ], + [ + 32.16, + -26.86 + ], + [ + 32.17, + -26.86 + ], + [ + 32.18, + -26.86 + ], + [ + 32.19, + -26.86 + ], + [ + 32.21, + -26.84 + ], + [ + 32.23, + -26.84 + ], + [ + 32.25, + -26.84 + ], + [ + 32.25, + -26.85 + ], + [ + 32.28, + -26.85 + ], + [ + 32.33, + -26.86 + ], + [ + 32.34, + -26.86 + ], + [ + 32.35, + -26.86 + ], + [ + 32.89, + -26.86 + ], + [ + 32.59, + -27.96 + ], + [ + 32.39, + -27.9 + ], + [ + 32.39, + -28.09 + ], + [ + 32.59, + -27.98 + ], + [ + 32.4, + -28.53 + ], + [ + 31.34, + -29.38 + ], + [ + 30.45, + -30.73 + ], + [ + 30.01, + -31.3 + ], + [ + 29.18, + -31.94 + ], + [ + 28.55, + -32.57 + ], + [ + 27.11, + -33.52 + ], + [ + 26.47, + -33.77 + ], + [ + 25.82, + -33.7 + ], + [ + 25.62, + -33.86 + ], + [ + 25.7, + -34.03 + ], + [ + 25.05, + -33.96 + ], + [ + 24.84, + -34.21 + ], + [ + 23.58, + -33.97 + ], + [ + 23.41, + -34.11 + ], + [ + 22.59, + -33.99 + ], + [ + 22.12, + -34.09 + ], + [ + 21.83, + -34.38 + ], + [ + 20.79, + -34.39 + ], + [ + 20.87, + -34.47 + ], + [ + 20.48, + -34.49 + ], + [ + 20.01, + -34.83 + ], + [ + 19.64, + -34.78 + ], + [ + 19.29, + -34.63 + ], + [ + 19.38, + -34.41 + ], + [ + 19.12, + -34.42 + ], + [ + 19.15, + -34.31 + ], + [ + 18.83, + -34.39 + ], + [ + 18.78, + -34.09 + ], + [ + 18.5, + -34.05 + ], + [ + 18.5, + -34.36 + ], + [ + 18.38, + -34.27 + ], + [ + 18.31, + -34.04 + ], + [ + 18.5, + -33.83 + ], + [ + 17.84, + -32.83 + ], + [ + 18.33, + -32.6 + ], + [ + 18.28, + -31.9 + ], + [ + 17.28, + -30.35 + ], + [ + 16.82, + -29.09 + ], + [ + 16.47, + -28.58 + ] + ], + [ + [ + 20.5, + -29.92 + ], + [ + 20.49, + -30.07 + ], + [ + 20.82, + -29.95 + ], + [ + 20.5, + -29.92 + ] + ], + [ + [ + 25.62, + -30.6 + ], + [ + 25.5, + -30.62 + ], + [ + 25.75, + -30.69 + ], + [ + 25.62, + -30.6 + ] + ] + ], + [ + [ + [ + 37.88, + -46.89 + ], + [ + 37.58, + -46.95 + ], + [ + 37.69, + -46.82 + ], + [ + 37.88, + -46.89 + ] + ] + ] + ] + }, + "properties": { + "A3": "ZAF" + } + } + ] +} \ No newline at end of file diff --git a/web-app/src/app/map/leaflet.component.html b/web-app/src/app/map/leaflet.component.html deleted file mode 100644 index ce1071fba..000000000 --- a/web-app/src/app/map/leaflet.component.html +++ /dev/null @@ -1,28 +0,0 @@ -
- -
- - - - - - - - - - - - - \ No newline at end of file diff --git a/web-app/src/app/map/leaflet.component.scss b/web-app/src/app/map/leaflet.component.scss deleted file mode 100644 index c7578fcf5..000000000 --- a/web-app/src/app/map/leaflet.component.scss +++ /dev/null @@ -1,26 +0,0 @@ -#map { - height: 100%; -} - -:host ::ng-deep.map-container { - position: absolute; - top: 0; - bottom: 0; - left: 0; - right: 0; -} - -.map-controls-right { - position: absolute; - right: 0; - z-index: 1000; - display: inline-flex; - flex-direction: column; - margin-top: 16px; - margin-right: 16px; -} - -mat-sidenav { - min-width: 350px; - max-width: 400px; -} \ No newline at end of file diff --git a/web-app/src/app/map/leaflet.component.ts b/web-app/src/app/map/leaflet.component.ts deleted file mode 100644 index 3f95e71d7..000000000 --- a/web-app/src/app/map/leaflet.component.ts +++ /dev/null @@ -1,168 +0,0 @@ -import { Component, Output, EventEmitter, Inject } from '@angular/core'; -import { moveItemInArray } from '@angular/cdk/drag-drop'; -import { ReorderEvent } from './layers/layers.component'; -import { LayerService, ToggleEvent, ZoomEvent, OpacityEvent, StyleEvent } from './layers/layer.service'; -import { MapService } from '../upgrade/ajs-upgraded-providers'; - -@Component({ - selector: 'app-leaflet', - templateUrl: './leaflet.component.html', - styleUrls: ['./leaflet.component.scss'], - providers: [LayerService] -}) -export class LeafletComponent { - public static readonly PANE_Z_INDEX_BUCKET_SIZE = 10000; - public static readonly BASE_PANE_Z_INDEX_OFFSET = 1 * LeafletComponent.PANE_Z_INDEX_BUCKET_SIZE; - public static readonly TILE_PANE_Z_INDEX_OFFSET = 2 * LeafletComponent.PANE_Z_INDEX_BUCKET_SIZE; - public static readonly FEATURE_PANE_Z_INDEX_OFFSET = 6 * LeafletComponent.PANE_Z_INDEX_BUCKET_SIZE; - public static readonly MAGE_PANE_Z_INDEX_OFFSET = 7 * LeafletComponent.PANE_Z_INDEX_BUCKET_SIZE; - - @Output() onLayerPanelToggle = new EventEmitter(); - @Output() onAddObservation = new EventEmitter(); - - map: any; - groups = {}; - - constructor(layerServive: LayerService, @Inject(MapService) private mapService: any) { - this.groups['base'] = { - offset: LeafletComponent.BASE_PANE_Z_INDEX_OFFSET, - layers: [] - }; - - this.groups['MAGE'] = { - offset: LeafletComponent.MAGE_PANE_Z_INDEX_OFFSET, - layers: [] - }; - - this.groups['feed'] = { - offset: LeafletComponent.MAGE_PANE_Z_INDEX_OFFSET, - layers: [] - }; - - this.groups['tile'] = { - offset: LeafletComponent.TILE_PANE_Z_INDEX_OFFSET, - layers: [] - }; - - this.groups['feature'] = { - offset: LeafletComponent.FEATURE_PANE_Z_INDEX_OFFSET, - layers: [] - }; - - layerServive.toggle$.subscribe(event => this.layerTogged(event)); - layerServive.zoom$.subscribe(event => this.zoom(event)); - layerServive.opacity$.subscribe(event => this.opacityChanged(event)); - layerServive.style$.subscribe(event => this.styleChanged(event)); - } - - onMapAvailable($event: any): void { - this.map = $event.map; - } - - addLayer($event: any): void { - if (this.isSelected($event)) { - $event.selected = true; - const toggleEvent: ToggleEvent = { - layer: $event, - value: true - } - this.layerTogged(toggleEvent); - } - - const groupName = this.getGroup($event); - const group = this.groups[groupName]; - $event.zIndex = group.offset + LeafletComponent.PANE_Z_INDEX_BUCKET_SIZE - (group.layers.length + 1); - const pane = this.map.getPanes()[$event.layer.pane]; - pane.style.zIndex = $event.zIndex; - group.layers.push($event); - } - - removeLayer($event: any): void { - Object.values(this.groups).forEach((group: any) => { - group.layers = group.layers.filter(layer => { - return layer.layer !== $event.layer.layer; - }); - }); - } - - layerTogged(event: ToggleEvent): void { - if (event.layer.base) { - this.baseToggled(event); - } else { - this.overlayToggled(event); - } - } - - baseToggled(event: ToggleEvent): void { - const baseLayers = this.groups['base'].layers; - const previousBaseLayer = baseLayers.find((layer: any) => layer.selected); - if (previousBaseLayer) { - previousBaseLayer.selected = false; - this.map.removeLayer(previousBaseLayer.layer); - } - - event.layer.selected = true; - this.map.addLayer(event.layer.layer); - - this.mapService.selectBaseLayer(event.layer); - } - - overlayToggled(event: ToggleEvent): void { - if (event.value) { - this.map.addLayer(event.layer.layer); - } else { - this.map.removeLayer(event.layer.layer); - } - } - - opacityChanged(event: OpacityEvent): void { - const pane = this.map.getPanes()[event.layer.layer.pane]; - pane.style.opacity = event.opacity; - } - - zoom($event: ZoomEvent): void { - const layer = $event.layer.layer; - if (layer.getBounds) { - const bounds = layer.getBounds(); - this.map.fitBounds(bounds); - } else if (layer.table && layer.table.bbox) { - this.map.fitBounds([ - [layer.table.bbox[1], layer.table.bbox[0]], - [layer.table.bbox[3], layer.table.bbox[2]] - ]); - } - } - - styleChanged(event: StyleEvent): void { - event.layer.layer.setStyle(event.style); - } - - reorder($event: ReorderEvent): void { - moveItemInArray($event.layers, $event.previousIndex, $event.currentIndex); - const offset = - $event.type === 'feature' - ? LeafletComponent.FEATURE_PANE_Z_INDEX_OFFSET - : LeafletComponent.TILE_PANE_Z_INDEX_OFFSET; - - $event.layers.forEach((layer: any, index: number) => { - layer.zIndex = offset + LeafletComponent.PANE_Z_INDEX_BUCKET_SIZE - (index + 1); - const pane = this.map.getPanes()[layer.layer.pane]; - pane.style.zIndex = layer.zIndex; - }); - } - - private getGroup(layer): string { - switch (layer.type) { - case 'GeoPackage': - return layer.layer.table.type === 'tile' ? 'tile' : 'feature'; - case 'Imagery': - return layer.base ? 'base' : 'tile'; - case 'geojson': - return layer.group; - } - } - - private isSelected(layer): boolean { - return layer.options && layer.options.selected; - } -} diff --git a/web-app/src/app/map/leaflet.upgrade.component.ts b/web-app/src/app/map/leaflet.upgrade.component.ts deleted file mode 100644 index 91bcac68a..000000000 --- a/web-app/src/app/map/leaflet.upgrade.component.ts +++ /dev/null @@ -1,16 +0,0 @@ -import { Directive, ElementRef, Injector, Output, EventEmitter } from '@angular/core'; -import { UpgradeComponent } from '@angular/upgrade/static'; - -@Directive({ - selector: 'leaflet' -}) -export class LeafletDirective extends UpgradeComponent { - @Output() onMapAvailable: EventEmitter; - @Output() onAddObservation: EventEmitter; - @Output() onAddLayer: EventEmitter; - @Output() onRemoveLayer: EventEmitter; - - constructor(elementRef: ElementRef, injector: Injector) { - super('leaflet', elementRef, injector); - } -} \ No newline at end of file diff --git a/web-app/src/app/map/map.component.html b/web-app/src/app/map/map.component.html new file mode 100644 index 000000000..602471d46 --- /dev/null +++ b/web-app/src/app/map/map.component.html @@ -0,0 +1,37 @@ +
+ +
+ + + + + + + + +
+
+
+ + + +
+ +
+
+ + +
+
+
+ +
\ No newline at end of file diff --git a/web-app/src/app/map/map.component.scss b/web-app/src/app/map/map.component.scss new file mode 100644 index 000000000..06d8fc05e --- /dev/null +++ b/web-app/src/app/map/map.component.scss @@ -0,0 +1,60 @@ +:host { + height: 100%; +} + +#map { + height: 100%; + background-color: #c0d9e4; +} + +.map-container { + height: 100%; +} + +.map-content { + height: 100%; +} + +.map-controls-layers { + position: absolute; + right: 16px; + top: 16px; + display: flex; + flex-direction: column; + align-items: end; + justify-content: space-between; + z-index: 1000; +} + +.map-controls-left { + position: absolute; + z-index: 1000; + display: flex; + flex-direction: column; + justify-content: space-between; + top: 16px; + left: 16px; + bottom: 16px; +} + +.map-controls-left__top { + display: flex; + flex-direction: column; + gap: 16px; +} + +.map-controls-right { + display: flex; + flex-direction: column; + align-items: end; + gap: 16px; + position: absolute; + right: 16px; + bottom: 16px; + z-index: 1000; +} + +mat-sidenav { + min-width: 350px; + max-width: 400px; +} \ No newline at end of file diff --git a/web-app/src/app/map/leaflet.component.spec.ts b/web-app/src/app/map/map.component.spec.ts similarity index 100% rename from web-app/src/app/map/leaflet.component.spec.ts rename to web-app/src/app/map/map.component.spec.ts diff --git a/web-app/src/app/map/map.component.ts b/web-app/src/app/map/map.component.ts new file mode 100644 index 000000000..561d6b684 --- /dev/null +++ b/web-app/src/app/map/map.component.ts @@ -0,0 +1,870 @@ +import { AfterViewInit, Component, ElementRef, EventEmitter, OnDestroy, Output, ViewChild } from '@angular/core' +import { LocationEvent, LocationState } from '../../app/map/controls/location.component' +import { ZoomDirection } from '../../app/map/controls/zoom.component' +import { LayerService } from '../layer/layer.service' +import { MapLayerService, StyleEvent, ToggleEvent } from './layers/layer.service' +import { MapService } from './map.service' +import { LocalStorageService } from '../http/local-storage.service' +import { EventService } from '../event/event.service' +import { map, latLng, popup,tileLayer, Icon, Util, marker, TileLayer, geoJSON, latLngBounds, LatLng, markerClusterGroup, Layer, Map } from "leaflet" +import { OpacityEvent, ZoomEvent } from './layers/layer.service' +import { ReorderEvent } from './layers/layers.component' +import { moveItemInArray } from '@angular/cdk/drag-drop' +import { locationMarker } from './marker/LocationMarker' +import { observationMarker } from './marker/ObservationMarker' +import { COUNTRIES as countries } from './layers/static/layers' +import 'leaflet-editable' +import 'leaflet.markercluster' +import { FeatureEditor } from './edit/FeatureEditor' +import GeoPackageLayers from './geopackage/GeoPackageLayers' +import { FilterService } from '../filter/filter.service' +import { GARSLayer } from './layers/gars/GARSLayer' +import { MGRSLayer } from './layers/mgrs/MGRSLayer' +import { UserService } from '../user/user.service' +import { FilterComponent } from '../filter/filter.component' +import { MatDialog } from '@angular/material/dialog' +import { ExportDialogComponent } from '../export/export-dialog.component' +import _ from 'underscore' +import * as moment from 'moment' +import { Subscription } from 'rxjs' +import { ContactDialogComponent } from '../contact/contact-dialog.component' + +Icon.Default.imagePath = '/' + +@Component({ + selector: 'map', + templateUrl: './map.component.html', + styleUrls: ['./map.component.scss'], + providers: [LayerService] +}) +export class MapComponent implements OnDestroy, AfterViewInit { + + public static readonly PANE_Z_INDEX_BUCKET_SIZE = 10000 + public static readonly BASE_PANE_Z_INDEX_OFFSET = 1 * MapComponent.PANE_Z_INDEX_BUCKET_SIZE + public static readonly TILE_PANE_Z_INDEX_OFFSET = 2 * MapComponent.PANE_Z_INDEX_BUCKET_SIZE + public static readonly GRID_PANE_Z_INDEX_OFFSET = 3 * MapComponent.PANE_Z_INDEX_BUCKET_SIZE + public static readonly FEATURE_PANE_Z_INDEX_OFFSET = 6 * MapComponent.PANE_Z_INDEX_BUCKET_SIZE + public static readonly MAGE_PANE_Z_INDEX_OFFSET = 7 * MapComponent.PANE_Z_INDEX_BUCKET_SIZE + + @Output() addObservation = new EventEmitter() + + @ViewChild('map') mapElement: ElementRef + mapReizeObserver?: ResizeObserver + + map: Map + groups: any = { + 'base': { + offset: MapComponent.BASE_PANE_Z_INDEX_OFFSET, + layers: [] + }, + 'mage': { + offset: MapComponent.MAGE_PANE_Z_INDEX_OFFSET, + layers: [] + }, + 'feed': { + offset: MapComponent.MAGE_PANE_Z_INDEX_OFFSET, + layers: [] + }, + 'tile': { + offset: MapComponent.TILE_PANE_Z_INDEX_OFFSET, + layers: [] + }, + 'feature': { + offset: MapComponent.FEATURE_PANE_Z_INDEX_OFFSET, + layers: [] + }, + 'grid': { + offset: MapComponent.GRID_PANE_Z_INDEX_OFFSET, + layers: [] + } + } + layers: any = {} + geoPackageLayers: any + temporalLayers: any = [] + spiderfyState: any = null + currentLocation: any = null + locationLayer = locationMarker([0, 0], { color: '#136AEC' }) + locationState = LocationState.Off + searchMarker: any + featurePanes = [] + BASE_LAYER_PANE = 'baseLayerPane' + listener: any + pollListener: any + + toggleSubscription: Subscription + zoomSubscription: Subscription + opacitySubscription: Subscription + styleSubscription: Subscription + + constructor( + public dialog: MatDialog, + private mapService: MapService, + private userService: UserService, + private layerService: MapLayerService, + private eventService: EventService, + private filterService: FilterService, + private localStorageService: LocalStorageService + ) { + this.toggleSubscription = layerService.toggle$.subscribe(event => this.layerTogged(event)); + this.zoomSubscription = layerService.zoom$.subscribe(event => this.zoom(event)); + this.opacitySubscription = layerService.opacity$.subscribe(event => this.opacityChanged(event)); + this.styleSubscription = layerService.style$.subscribe(event => this.styleChanged(event)); + + this.mapReizeObserver = new ResizeObserver(() => { + this.map.invalidateSize({ pan: false, debounceMoveend: true }) + }) + } + + ngAfterViewInit() { + this.mapReizeObserver?.observe(this.mapElement.nativeElement) + + let mapPosition = this.localStorageService.getMapPosition() + if (!mapPosition) { + this.localStorageService.setMapPosition({ + center: { lng: 0, lat: 0 }, + zoom: 3 + }) + mapPosition = this.localStorageService.getMapPosition() + } + + this.map = map('map', { + center: mapPosition.center, + zoom: mapPosition.zoom, + zoomControl: false, + minZoom: 0, + maxZoom: 18, + trackResize: true, + worldCopyJump: true, + editable: true // turn on Leaflet.Editable + }) + + // Spread out map panes + // To easily adjust zIndex across all types of layers each feature group, + // overlay map, etc, will be placed in its own map pane + this.map.createPane(this.BASE_LAYER_PANE) + this.map.getPane(this.BASE_LAYER_PANE).style.zIndex = `${100 * 100}` + + this.map.getPane('tilePane').style.zIndex = `${200 * 100}` + this.map.getPane('overlayPane').style.zIndex = `${400 * 100}` + this.map.getPane('shadowPane').style.zIndex = `${500 * 100}` + this.map.getPane('markerPane').style.zIndex = `${600 * 100}` + this.map.getPane('tooltipPane').style.zIndex = `${700 * 100}` + this.map.getPane('popupPane').style.zIndex = `${800 * 100}` + + // Add in a base layer of styled GeoJSON in case the tiles do not load + const FALLBACK_LAYER_PANE = 'fallbackLayerPane' + this.map.createPane(FALLBACK_LAYER_PANE) + this.map.getPane(FALLBACK_LAYER_PANE).style.zIndex = '1' + + this.map.addLayer( + geoJSON(countries, { + interactive: false, + style: function () { + return { + color: '#BBBBBB', + weight: 0.5, + fill: true, + fillColor: '#F9F9F6', + fillOpacity: 1 + } + }, + pane: FALLBACK_LAYER_PANE + }) + ) + + this.map.on('locationfound', this.onLocation, this) + this.map.on('locationerror', function (err) { + console.log('LOCATION ERROR', err) + }) + + function saveMapPosition() { + const center = this.map.getCenter() + this.localStorageService.setMapPosition({ + center: latLng(Util.formatNum(center.lat), Util.formatNum(center.lng)), + zoom: this.map.getZoom() + }) + } + this.map.on('moveend', saveMapPosition, this) + + this.geoPackageLayers = new GeoPackageLayers( + this.map, + this.layerService, + this.filterService, + this.localStorageService + ) + + this.pollListener = { + onPoll: this.onPoll.bind(this) + } + + // Ensure that any changes made by listener callbacks are processed in a digest cycle + // TODO this can be removed when the services use rxjs rather than custom change detection w/ callbacks + setTimeout(() => { + this.mapService.setDelegate(this) + this.mapService.addListener(this) + this.eventService.addPollListener(this.pollListener) + }) + } + + ngOnDestroy(): void { + this.mapService.removeListener(this) + this.mapReizeObserver?.unobserve(this.mapElement.nativeElement) + + this.toggleSubscription.unsubscribe() + this.zoomSubscription.unsubscribe() + this.opacitySubscription.unsubscribe() + this.styleSubscription.unsubscribe() + } + + saveMapPosition() { + const center = this.map.getCenter() + this.localStorageService.setMapPosition({ + center: latLng(Util.formatNum(center.lat), Util.formatNum(center.lng)), + zoom: this.map.getZoom() + }) + } + + $onDestroy() { + this.mapService.removeListener(this.listener) + this.eventService.removePollListener(this.pollListener) + } + + opacityChanged(event: OpacityEvent): void { + const pane = this.map.getPanes()[event.layer.layer.pane] + pane.style.opacity = `${event.opacity}` + if (event.layer.layer.setOpacity) { + event.layer.layer.setOpacity(event.opacity) + } + } + + styleChanged(event: StyleEvent): void { + event.layer.layer.setStyle(event.style); + } + + reorder($event: ReorderEvent): void { + moveItemInArray($event.layers, $event.previousIndex, $event.currentIndex) + const offset = + $event.type === 'feature' + ? MapComponent.FEATURE_PANE_Z_INDEX_OFFSET + : MapComponent.TILE_PANE_Z_INDEX_OFFSET + + $event.layers.forEach((layer: any, index: number) => { + layer.zIndex = offset + MapComponent.PANE_Z_INDEX_BUCKET_SIZE - (index + 1) + const pane = this.map.getPanes()[layer.layer.pane] + pane.style.zIndex = layer.zIndex + }) + } + + zoom($event: ZoomEvent): void { + const layer = $event.layer.layer + if (layer.getBounds) { + const bounds = layer.getBounds() + this.map.fitBounds(bounds) + } else if (layer.table && layer.table.bbox) { + this.map.fitBounds([ + [layer.table.bbox[1], layer.table.bbox[0]], + [layer.table.bbox[3], layer.table.bbox[2]] + ]) + } + } + + onZoom($event) { + if ($event.direction === ZoomDirection.IN) { + this.map.zoomIn(1) + } else { + this.map.zoomOut(1) + } + } + + onSearch($event) { + this.onSearchClear() + + this.map.fitBounds( + latLngBounds( + latLng($event.result.bbox[1], $event.result.bbox[0]), + latLng($event.result.bbox[3], $event.result.bbox[2]) + ) + ) + + const markerPopup = popup({ className: 'leaflet-material-popup' }).setContent($event.result.name) + this.searchMarker = marker([$event.result.position[1], $event.result.position[0]]) + .addTo(this.map) + .bindPopup(markerPopup) + .openPopup() + } + + onSearchClear() { + if (this.searchMarker) { + this.map.removeLayer(this.searchMarker) + } + } + + onFilter() { + this.dialog.open(FilterComponent, { + height: '580px', + width: '675px' + }); + } + + onExport() { + this.dialog.open(ExportDialogComponent).afterClosed().subscribe(result => { + if (!result || result === 'closeAction') { + } + }); + } + + onPoll() { + this.adjustTemporalLayers() + } + + onAddObservation() { + this.addObservation.emit({ + latLng: this.map.getCenter() + }) + } + + onLocationState($event: LocationEvent) { + if ($event.state === LocationState.Broadcast && + !this.eventService.isUserInEvent(this.userService.myself, this.filterService.getEvent()) + ) { + const data = { + info: { + statusTitle: 'Cannot Send Your Location', + statusMessage: 'You are not part of this event.' + } + }; + + this.dialog.open(ContactDialogComponent, { + width: '500px', + data: data + }) + + return + } + + this.locationState = $event.state + if ($event.state === LocationState.Off) { + this.map.stopLocate() + + if (this.map.hasLayer(this.locationLayer)) { + this.map.removeLayer(this.locationLayer) + } + this.currentLocation = null + } else { + this.map.locate({ + watch: true, + setView: false + }) + } + } + + onLocation(location) { + // skip if the location has not changed + if ( + this.locationState === LocationState.Off || + (this.currentLocation && + this.currentLocation.latitude === location.latlng.lat && + this.currentLocation.longitude === location.latlng.lng && + this.currentLocation.accuracy === location.accuracy) + ) { + return + } + + this.currentLocation = location + this.map.fitBounds(location.bounds) + this.locationLayer.setLatLng(location.latlng).setAccuracy(location.accuracy) + if (!this.map.hasLayer(this.locationLayer)) { + this.map.addLayer(this.locationLayer) + } + + if (this.locationState === LocationState.Broadcast) { + this.mapService.onLocation(location) + } + } + + onLayersChanged({ id, added = [], removed = [] }) { + added.forEach(added => { + switch (added.type) { + case 'GeoPackage': + this.createGeoPackageLayer(added) + break + case 'Imagery': + this.createRasterLayer(added) + break + case 'geojson': + this.createGeoJsonLayer(added) + break + case 'grid': + this.createGridLayer(added) + break + } + }) + + removed.forEach(removed => { + const layer = this.layers[id] + if (layer) { + this.map.removeLayer(layer.layer) + delete layer.layer + delete this.layers[removed.layerId] + this.removeLayer(layer) + } + }) + } + + // TODO move into leaflet service, this and map clip both use it + createRasterLayer(layerInfo) { + let paneName = this.BASE_LAYER_PANE + if (!layerInfo.base) { + paneName = `pane-${layerInfo.id}` + this.map.createPane(paneName) + } + + let options: any = {} + if (layerInfo.format === 'XYZ' || layerInfo.format === 'TMS') { + options = { tms: layerInfo.format === 'TMS', maxZoom: 18, pane: paneName } + layerInfo.layer = tileLayer(layerInfo.url, options) + } else if (layerInfo.format === 'WMS') { + options = { + layers: layerInfo.wms.layers, + version: layerInfo.wms.version, + format: layerInfo.wms.format, + transparent: layerInfo.wms.transparent, + pane: paneName + } + + if (layerInfo.wms.styles) options.styles = layerInfo.wms.styles + layerInfo.layer = new TileLayer.WMS(layerInfo.url, options) + } + + layerInfo.layer.pane = paneName + this.layers[layerInfo.id] = layerInfo + this.addLayer(layerInfo) + } + + createGeoPackageLayer(layerInfo) { + layerInfo.tables.forEach(table => { + const pane = `pane-${layerInfo.id}-${table.name}` + this.map.createPane(pane) + if (table.type === 'feature') { + this.featurePanes.push(pane) + } + + table.layer = this.geoPackageLayers.createGeoPackageLayer(table, layerInfo.id, pane) + this.layers[layerInfo.id + table.name] = table + + this.addLayer({ + type: 'GeoPackage', + name: table.name, + table: table, + layer: table.layer + }) + }) + } + + createGeoJsonLayer(layerInfo) { + const pane = `pane-${layerInfo.id}` + this.map.createPane(pane) + this.featurePanes.push(pane) + + layerInfo.featureIdToLayer = {} + const geojson = this.createGeoJsonForLayer(layerInfo.geojson, layerInfo, pane) + + if (layerInfo.options.cluster) { + layerInfo.layer = markerClusterGroup({ + pane: pane, + clusterPane: pane + }).addLayer(geojson) + + layerInfo.layer.on('spiderfied', function () { + if (this.spiderfyState) { + this.spiderfyState.layer.openPopup() + } + }) + } else { + layerInfo.layer = geojson + } + + layerInfo.layer.pane = pane + this.layers[layerInfo.id] = layerInfo + + if (layerInfo.options.temporal) { + this.temporalLayers.push(layerInfo) + } + + if (!layerInfo.options.hidden) { + this.addLayer(layerInfo) + } + } + + createGeoJsonForLayer(json, layerInfo, pane, editMode?: any) { + const popup = layerInfo.options.popup + const geojson = geoJSON(json, { + pane: pane, + onEachFeature: function (feature, layer) { + if (popup) { + if (_.isFunction(popup.html)) { + const options: any = { autoPan: false, maxWidth: 400 } + if (popup.closeButton !== undefined) options.closeButton = popup.closeButton + layer.bindPopup(popup.html(feature, layer), options) + } + if (_.isFunction(popup.onOpen)) { + layer.on('popupopen', function () { + popup.onOpen(feature) + }) + } + if (_.isFunction(popup.onClose)) { + layer.on('popupclose', function () { + popup.onClose(feature) + }) + } + } + if (layerInfo.options.onLayer) { + layerInfo.options.onLayer(layer, feature) + } + layerInfo.featureIdToLayer[feature.id] = layer + }, + pointToLayer: (feature: any, latlng: LatLng) => { + let layer: Layer + + if (layerInfo.options.temporal) { + const temporalOptions: any = { + pane: pane, + accuracy: feature.properties.accuracy, + color: this.colorForFeature(feature, layerInfo.options.temporal) + } + if (feature.style && feature.style.iconUrl) { + temporalOptions.iconUrl = feature.style.iconUrl + } + layer = locationMarker(latlng, temporalOptions) + } else { + const options: any = { + pane: pane, + accuracy: feature.properties.accuracy + } + if (layerInfo.options.iconUrl) { + options.iconUrl = layerInfo.options.iconUrl + } else if (feature.style && feature.style.iconUrl) { + options.iconUrl = feature.style.iconUrl + } + + if (layerInfo.options.iconWidth) { + options.iconWidth = 24 + } + options.tooltip = editMode + layer = observationMarker(latlng, options) + } + + if (layerInfo.options.onLayer) { + layerInfo.options.onLayer(layer, feature) + } + + return layer + }, + style: function (feature: any) { + return feature.style + } + }) + + return geojson + } + + createGridLayer(layerInfo) { + const pane = `pane-${layerInfo.id}` + this.map.createPane(pane) + + this.layers[layerInfo.id] = layerInfo + if (layerInfo.id === 'gars') { + layerInfo.layer = new GARSLayer() + layerInfo.layer.pane = pane + } else if (layerInfo.id === 'mgrs') { + layerInfo.layer = new MGRSLayer() + layerInfo.layer.pane = pane + } + + this.addLayer(layerInfo) + } + + addLayer(layerInfo: any) { + if (this.isSelected(layerInfo)) { + layerInfo.selected = true + const toggleEvent: ToggleEvent = { + layer: layerInfo, + value: true + } + this.layerTogged(toggleEvent) + } + + const groupName = this.getGroup(layerInfo) + const group = this.groups[groupName] + layerInfo.zIndex = group.offset + MapComponent.PANE_Z_INDEX_BUCKET_SIZE - (group.layers.length + 1) + const pane = this.map.getPanes()[layerInfo.layer.pane] + pane.style.zIndex = layerInfo.zIndex + group.layers.push(layerInfo) + } + + onFeaturesChanged({ id, added = [], updated = [], removed = [] }) { + const featureLayer = this.layers[id] + const pane = featureLayer.layer.pane + added.forEach(feature => { + if (featureLayer.options.cluster) { + const layer = this.createGeoJsonForLayer(feature, featureLayer, pane) + featureLayer.layer.addLayer(layer) + } else { + featureLayer.layer.addData(feature) + } + }) + + updated.forEach(feature => { + const layer = featureLayer.featureIdToLayer[feature.id] + if (layer) { + featureLayer.layer.removeLayer(layer) + } + + if (featureLayer.options.cluster) { + featureLayer.layer.addLayer(this.createGeoJsonForLayer(feature, featureLayer, pane)) + } else { + featureLayer.layer.addData(feature) + } + }) + + removed.forEach(feature => { + const layer = featureLayer.featureIdToLayer[feature.id] + if (layer) { + delete featureLayer.featureIdToLayer[feature.id] + featureLayer.layer.removeLayer(layer) + } + }) + } + + onFeatureZoom(zoom) { + const featureLayer = this.layers[zoom.id] + const layer = featureLayer.featureIdToLayer[zoom.feature.id] + if (!this.map.hasLayer(featureLayer.layer)) return + + if (featureLayer.options.cluster) { + if (this.map.getZoom() < 17) { + if (layer.getBounds) { + // Zoom and center polyline/polygon + this.map.fitBounds(layer.getBounds(), { + maxZoom: 17 + }) + this.openPopup(layer, {}) + } else { + // Zoom and center point + this.map.once('zoomend', () => { + featureLayer.layer.zoomToShowLayer(layer, () => { + this.openPopup(layer, { zoomToLocation: false }) + }) + }) + this.map.setView(layer.getLatLng(), 17) + } + } else { + if (layer.getBounds) { + this.map.fitBounds(layer.getBounds(), { + maxZoom: 17 + }) + this.openPopup(layer, {}) + } else { + featureLayer.layer.zoomToShowLayer(layer, () => { + this.openPopup(layer, { zoomToLocation: false }) + }) + } + } + } else { + this.openPopup(layer, { zoomToLocation: true }) + } + } + + onFeatureDeselect(deselected) { + const featureLayer = this.layers[deselected.id] + const layer = featureLayer.featureIdToLayer[deselected.feature.id] + if (!this.map.hasLayer(featureLayer.layer)) return + layer.closePopup() + } + + onFeedRemoved(feed) { + const layerInfo = this.layers[feed.id] + if (layerInfo) { + this.removeLayer(layerInfo) + } + } + + onLayerRemoved(layer) { + switch (layer.type) { + case 'GeoPackage': + this.removeGeoPackage(layer) + break + default: + this.removeLayer(layer) + } + } + + removeLayer(layer) { + const layerInfo = this.layers[layer.id] + if (layerInfo) { + this.map.removeLayer(layerInfo.layer) + delete this.layers[layer.id] + + Object.values(this.groups).forEach((group: any) => { + group.layers = group.layers.filter(groupLayer => { + return layer.layer !== groupLayer.layer; + }); + }); + } + } + + removeGeoPackage(layer) { + layer.tables.forEach(table => { + const id = layer.id + table.name + const layerInfo = this.layers[id] + if (layerInfo) { + this.map.removeLayer(table.layer) + delete this.layers[id] + this.removeLayer(layerInfo) + } + }) + } + + onHideFeed() { + this.map.invalidateSize({ pan: false }) + } + + adjustTemporalLayers() { + this.temporalLayers.forEach(temporalLayer => { + Object.values(temporalLayer.featureIdToLayer).forEach((layer: any) => { + const color = this.colorForFeature(layer.feature, temporalLayer.options.temporal) + layer.setColor(color) + }) + }) + } + + openPopup(layer, options) { + options = options || {} + if (options.zoomToLocation) { + this.map.once('moveend', function () { + layer.fire('click') + }) + this.map.setView(layer.getLatLng(), options.zoomToLocation ? 17 : this.map.getZoom()) + } else { + layer.fire('click') + } + } + + colorForFeature(feature, options) { + const age = Date.now() - moment(feature.properties[options.property]).valueOf() + const bucket = _.find(options.colorBuckets, function (bucket) { + return age > bucket.min && age <= bucket.max + }) + return bucket ? bucket.color : null + } + + createFeature(feature, delegate) { + // TODO put Observations in its own pane maybe?? + // TODO pass in layer collection id 'Observations' + let editor = new FeatureEditor(this.map, feature, delegate) + + // TODO save feature pane opacitis + const featurePaneOpacities = this.featurePanes.map(pane => { + const mapPane = this.map.getPanes()[pane] + return mapPane.style.opacity || 1 + }) + this.setPaneOpacity(this.featurePanes, 0.5) + + const layer = this.layers['observations'].featureIdToLayer[feature.id] + if (layer) { + this.map.removeLayer(layer) + } + + return { + update: feature => { + editor.stopEdit() + editor = new FeatureEditor(this.map, feature, delegate) + }, + cancel: () => { + editor.stopEdit() + if (layer) { + this.onFeaturesChanged({ + id: 'observations', + updated: [layer.feature] + }) + } + + this.resetPaneOpacity(this.featurePanes, featurePaneOpacities) + }, + save: () => { + const newFeature = editor.stopEdit() + if (layer) { + layer.feature.geometry = newFeature.geometry + this.onFeaturesChanged({ + id: 'observations', + updated: [layer.feature] + }) + } + + this.resetPaneOpacity(this.featurePanes, featurePaneOpacities) + } + } + } + + setPaneOpacity(panes, opacityFactor) { + panes.forEach(pane => { + const mapPane = this.map.getPanes()[pane] + const opacity = mapPane.style.opacity || "1" + mapPane.style.opacity = `${parseInt(opacity)} * ${opacityFactor}` + }) + } + + resetPaneOpacity(panes, opacities) { + panes.forEach((pane, index) => { + const mapPane = this.map.getPanes()[pane] + mapPane.style.opacity = opacities[index] + }) + } + + layerTogged(event: ToggleEvent): void { + if (event.layer.base) { + this.baseToggled(event) + } else { + this.overlayToggled(event) + } + } + + baseToggled(event: ToggleEvent): void { + const baseLayers = this.groups['base'].layers + const previousBaseLayer = baseLayers.find((layer: any) => layer.selected) + if (previousBaseLayer) { + previousBaseLayer.selected = false + this.map.removeLayer(previousBaseLayer.layer) + } + + event.layer.selected = true + this.map.addLayer(event.layer.layer) + + this.mapService.selectBaseLayer(event.layer) + } + + overlayToggled(event: ToggleEvent): void { + if (event.value) { + this.map.addLayer(event.layer.layer) + } else { + this.map.removeLayer(event.layer.layer) + } + } + + private getGroup(layer): string { + switch (layer.type) { + case 'GeoPackage': + return layer.layer.table.type === 'tile' ? 'tile' : 'feature' + case 'Imagery': + return layer.base ? 'base' : 'tile' + case 'geojson': + return layer.group + case 'grid': + return layer.group + } + } + + private isSelected(layer): boolean { + return layer.options && layer.options.selected + } +} \ No newline at end of file diff --git a/web-app/src/app/map/map.service.spec.ts b/web-app/src/app/map/map.service.spec.ts new file mode 100644 index 000000000..98655fb2d --- /dev/null +++ b/web-app/src/app/map/map.service.spec.ts @@ -0,0 +1,21 @@ +import { TestBed } from '@angular/core/testing'; +import { MapService } from './map.service'; +import { HttpClientTestingModule } from '@angular/common/http/testing'; + +describe('Map Service Tests', () => { + + beforeEach(() => { + TestBed.configureTestingModule({ + providers: [MapService], + imports: [HttpClientTestingModule] + }); + }); + + afterEach(() => { + }); + + it('should be created', () => { + const service: MapService = TestBed.inject(MapService); + expect(service).toBeTruthy(); + }); +}); \ No newline at end of file diff --git a/web-app/src/app/map/map.service.ts b/web-app/src/app/map/map.service.ts new file mode 100644 index 000000000..ce8b94e3d --- /dev/null +++ b/web-app/src/app/map/map.service.ts @@ -0,0 +1,538 @@ +import { Injectable } from "@angular/core"; +import { EventService } from "../event/event.service"; +import { MapPopupService } from "./map-popup.service"; +import { LocationService } from "../user/location/location.service"; +import { LocalStorageService } from "../http/local-storage.service"; +import { FeatureService } from "../layer/feature.service"; + +@Injectable({ + providedIn: 'root' +}) +export class MapService { + + followedFeature = { + id: undefined, + layer: undefined + }; + + delegate = null; + baseLayer = null; + feedLayers = {}; + rasterLayers = {}; + vectorLayers = {}; + gridLayers = {}; + listeners = []; + observationsById = {}; + usersById = {}; + + constructor( + private eventService: EventService, + private locationService: LocationService, + private mapPopupService: MapPopupService, + private featureService: FeatureService, + private localStorageService: LocalStorageService + ) {} + + init () { + const observationLayer = { + id: 'observations', + name: 'Observations', + group: 'mage', + type: 'geojson', + featureIdToLayer: {}, + options: { + selected: true, + cluster: true, + showAccuracy: true, + style: function () { + return {}; + }, + onEachFeature: function (feature, layer) { + observationLayer.featureIdToLayer[feature.id] = layer; + }, + popup: (layer, feature) => { + this.mapPopupService.popupObservation(layer, feature); + }, + onLayer: (layer, feature) => { + this.mapPopupService.registerObservation(layer, feature); + } + } + }; + + this.createVectorLayer(observationLayer); + + const peopleLayer = { + id: 'people', + name: 'People', + group: 'mage', + type: 'geojson', + options: { + selected: true, + cluster: false, + showAccuracy: true, + temporal: { + property: 'timestamp', + colorBuckets: this.locationService.colorBuckets + }, + popup: (layer, feature) => { + this.mapPopupService.popupUser(layer, feature); + }, + onLayer: (layer, feature) => { + this.mapPopupService.registerUser(layer, this.usersById[feature.id]); + } + } + }; + this.createVectorLayer(peopleLayer); + + const garsOverlay = { + id: 'gars', + name: 'GARS', + group: 'grid', + type: 'grid', + options: { + selected: false + } + } + this.createGridLayer(garsOverlay); + + const mgrsOverlay = { + id: 'mgrs', + name: 'MGRS', + group: 'grid', + type: 'grid', + options: { + selected: false + } + } + this.createGridLayer(mgrsOverlay); + + this.eventService.addObservationsChangedListener(this); + this.eventService.addUsersChangedListener(this); + this.eventService.addLayersChangedListener(this); + this.eventService.addFeedItemsChangedListener(this) + } + + destroy() { + Object.values(this.vectorLayers).forEach((layerInfo: any) => { + this.listeners.forEach((listener: any) => { + if (typeof listener.onLayerRemoved === 'function') { + listener.onLayerRemoved(layerInfo); + } + }); + }); + this.vectorLayers = {}; + + Object.values(this.rasterLayers).forEach((layerInfo: any) => { + this.listeners.forEach((listener: any) => { + if (typeof listener.onLayerRemoved === 'function') { + listener.onLayerRemoved(layerInfo); + } + }); + }); + this.rasterLayers = {}; + + this.listeners = []; + + this.eventService.removeLayersChangedListener(this); + this.eventService.removeObservationsChangedListener(this); + this.eventService.removeUsersChangedListener(this); + this.eventService.removeFeedItemsChangedListener(this); + } + + onLayersChanged(changed, event) { + const { added = [], updated = [], removed = [] } = changed + + let baseLayerFound = false; + added.forEach((layer: any) => { + // Add token to the url of all private layers + // TODO add watch for token change and reset the url for these layers + if (layer.type === 'Imagery' && layer.url.indexOf('private') === 0) { + layer.url = layer.url + "?access_token=" + this.localStorageService.getToken(); + } + + if (layer.type === 'Imagery') { + if (layer.base && !baseLayerFound) { + layer.options = { selected: true }; + baseLayerFound = true; + } + + this.createRasterLayer(layer); + } else if (layer.type === 'Feature') { + this.featureService.getFeatureCollection(event, layer).subscribe((featureCollection: any) => { + this.createVectorLayer({ + id: layer.id, + name: layer.name, // TODO need to track by id as well not just names + group: 'feature', + type: 'geojson', + geojson: featureCollection, + options: { + popup: { + html: function (feature) { + // TODO use leaflet template for this + let content = ""; + if (feature.properties.name) { + content += '
' + feature.properties.name + '
'; + } + if (feature.properties.description) { + content += '
' + feature.properties.description + '
'; + } + + return content; + } + } + } + }); + }); + } else if (layer.type === 'GeoPackage') { + layer.eventId = event.id; + this.createRasterLayer(layer); + } + }) + + removed.forEach((layer: any) => { + this.removeLayer(layer); + }) + } + + onFeedItemsChanged(changed) { + const { added = [], updated = [], removed = [] } = changed + + // Filter out non geospatial feeds + const geospatialFilter = ({ feed }) => { return feed.itemsHaveSpatialDimension; } + added.filter(geospatialFilter).forEach(({ feed, items }) => { + /* + TODO: this icon stuff is a band-aid (R) hack. revisit later when this + transitions to angular x and static icon api gets better. consider using + blob urls for marker icons as in StaticIconImgComponent/XhrImgComponent + or setting the icon url from the server in the web adapter layer. + caching works much better with urls that do not have the access token + query string parameter. + */ + const iconId = (feed.mapStyle && feed.mapStyle.icon) ? feed.mapStyle.icon.id : feed.icon ? feed.icon.id : null; + const iconUrl = iconId ? `/api/icons/${iconId}/content?access_token=${this.localStorageService.getToken()}` : '/assets/images/default_marker.png' + this.createFeedLayer({ + id: `feed-${feed.id}`, + name: feed.title, + group: 'feed', + type: 'geojson', + geojson: { + type: 'FeatureCollection', + features: items + }, + options: { + iconWidth: 24, + selected: true, + popup: (layer, feature) => { + this.mapPopupService.popupFeedItem(layer, feed, feature); + }, + onLayer: (layer, feature) => { + this.mapPopupService.registerFeedItem(layer, feed, feature); + }, + iconUrl + } + }); + }); + + updated.filter(geospatialFilter).forEach(({ feed, items }) => { + this.featuresChanged({ + id: `feed-${feed.id}`, + updated: items + }); + }); + + removed.filter(({ feed }) => { + return feed.itemsHaveSpatialDimension; + }).forEach(({ feed }) => { + const layer = this.feedLayers[`feed-${feed.id}`]; + if (layer) { + this.removeFeed(layer); + } + }); + } + + onObservationsChanged(changed) { + const { added = [], updated = [], removed = [] } = changed + + added.forEach((added: any) => { + this.observationsById[added.id] = added; + }) + if (added.length) this.addFeaturesToLayer(added, 'observations'); + + updated.forEach((updated: any) => { + const observation = this.observationsById[updated.id]; + if (observation) { + this.observationsById[updated.id] = updated; + this.updateFeatureForLayer(updated, 'observations'); + } + }) + + removed.forEach((removed: any) => { + delete this.observationsById[removed.id]; + this.removeFeatureFromLayer(removed, 'observations'); + }) + } + + onUsersChanged(changed) { + const { added = [], updated = [], removed = [] } = changed + + added.forEach((added: any) => { + this.usersById[added.id] = added; + this.addFeaturesToLayer([added.location], 'people'); + }) + + updated.forEach((updated: any) => { + const user = this.usersById[updated.id]; + if (user) { + this.usersById[updated.id] = updated; + this.updateFeatureForLayer(updated.location, 'people'); + + // pan/zoom map to user if this is the user we are following + if (this.followedFeature.layer === 'people' && user.id === this.followedFeature.id) + this.zoomToFeatureInLayer(user, 'people'); + } + }) + + removed.forEach((removed: any) => { + delete this.usersById[removed.id]; + this.removeFeatureFromLayer(removed.location, 'people'); + }) + } + + setDelegate(theDelegate) { + this.delegate = theDelegate; + } + + addListener(listener) { + this.listeners.push(listener); + + if (typeof listener.onLayersChanged === 'function') { + const layers = Object.values(this.rasterLayers).concat(Object.values(this.vectorLayers)).concat(Object.values(this.gridLayers)); + listener.onLayersChanged({ added: layers }); + } + + if (typeof listener.onFeaturesChanged === 'function') { + Object.values(this.vectorLayers).forEach((vectorLayer: any) => { + listener.onFeaturesChanged({ id: vectorLayer.id, added: Object.values(vectorLayer.featuresById) }); + }) + } + + if (typeof listener.onBaseLayerSelected === 'function') { + listener.onBaseLayerSelected(this.baseLayer); + } + } + + removeListener(listener) { + this.listeners = this.listeners.filter((l: any) => l !== listener) + } + + getRasterLayers() { + return this.rasterLayers; + } + + getVectorLayers() { + return this.vectorLayers; + } + + createRasterLayer(layer) { + this.layersChanged({ + added: [layer] + }); + + this.rasterLayers[layer.id] = layer; + } + + createVectorLayer(layer) { + this.layersChanged({ + added: [layer] + }); + + layer.featuresById = {}; + this.vectorLayers[layer.id] = layer; + } + + createGridLayer(layer) { + this.layersChanged({ + added: [layer] + }); + + layer.featuresById = {}; + this.gridLayers[layer.id] = layer; + } + + createFeedLayer(layer) { + this.layersChanged({ + added: [layer] + }); + + layer.featuresById = {}; + this.feedLayers[layer.id] = layer; + } + + createFeature(feature, style, listeners?: any) { + if (this.delegate) return this.delegate.createFeature(feature, style, listeners); + } + + addFeaturesToLayer(features, layerId) { + const vectorLayer = this.vectorLayers[layerId]; + features.forEach((feature: any) => { + vectorLayer.featuresById[feature.id] = feature; + + }) + + this.featuresChanged({ + id: layerId, + added: [features] + }); + } + + updateFeatureForLayer(feature, layerId) { + this.featuresChanged({ + id: layerId, + updated: [feature] + }); + } + + removeFeatureFromLayer(feature, layerId) { + const vectorLayer = this.vectorLayers[layerId]; + delete vectorLayer.featuresById[feature.id]; + + this.featuresChanged({ + id: layerId, + removed: [feature] + }); + } + + deselectFeatureInLayer(feature, layerId) { + this.listeners.forEach((listener: any) => { + if (typeof listener.onFeatureDeselect === 'function') { + listener.onFeatureDeselect({ + id: layerId, + feature: feature + }); + } + }) + } + + zoomToFeatureInLayer(feature, layerId) { + this.listeners.forEach((listener: any) => { + if (typeof listener.onFeatureZoom === 'function') { + listener.onFeatureZoom({ + id: layerId, + feature: feature + }); + } + }); + } + + followFeatureInLayer(feature, layerId) { + if (feature && (this.followedFeature.id !== feature.id || this.followedFeature.layer !== layerId)) { + this.followedFeature.id = feature.id; + this.followedFeature.layer = layerId; + this.zoomToFeatureInLayer(feature, layerId); + } else { + this.followedFeature.id = undefined; + this.followedFeature.layer = undefined; + } + } + + onLocation(location) { + this.listeners.forEach((listener: any) => { + if (typeof listener.onLocation === 'function') { + listener.onLocation(location); + } + }); + } + + onLocationStop() { + this.listeners.forEach((listener: any) => { + if (typeof listener.onLocationStop === 'function') { + listener.onLocationStop(); + } + }); + } + + onBroadcastLocation(callback) { + this.listeners.forEach((listener: any) => { + if (typeof listener.onBroadcastLocation === 'function') { + listener.onBroadcastLocation(callback); + } + }); + } + + featuresChanged(changed) { + this.listeners.forEach((listener: any) => { + changed.added = changed.added || []; + changed.updated = changed.updated || []; + changed.removed = changed.removed || []; + + if (typeof listener.onFeaturesChanged === 'function') { + listener.onFeaturesChanged(changed); + } + }); + } + + layersChanged(changed) { + this.listeners.forEach((listener: any) => { + changed.added = changed.added || []; + changed.removed = changed.removed || []; + + if (typeof listener.onLayersChanged === 'function') { + listener.onLayersChanged(changed); + } + }); + } + + selectBaseLayer(layer) { + this.baseLayer = layer; + this.listeners.forEach((listener: any) => { + if (typeof listener.onBaseLayerSelected === 'function') { + listener.onBaseLayerSelected(layer); + } + }); + } + + removeLayer(layer) { + const vectorLayer = this.vectorLayers[layer.id]; + if (vectorLayer) { + this.listeners.forEach((listener: any) => { + if (typeof listener.onLayerRemoved === 'function') { + listener.onLayerRemoved(vectorLayer); + } + }); + + delete this.vectorLayers[layer.id]; + } + + const rasterLayer = this.rasterLayers[layer.id]; + if (rasterLayer) { + this.listeners.forEach((listener: any) => { + if (typeof listener.onLayerRemoved === 'function') { + listener.onLayerRemoved(rasterLayer); + } + }); + + delete this.rasterLayers[layer.id]; + } + } + + removeFeed(feed) { + const feedLayer = this.feedLayers[feed.id]; + if (feedLayer) { + this.listeners.forEach((listener: any) => { + if (typeof listener.onFeedRemoved === 'function') { + listener.onFeedRemoved(feedLayer); + } + }); + + delete this.feedLayers[feed.id]; + } + } + + hideFeed(hide) { + this.listeners.forEach((listener: any) => { + if (typeof listener.onHideFeed === 'function') { + listener.onHideFeed(hide); + } + }); + } +} diff --git a/web-app/src/app/map/marker/FixedWidthIcon.ts b/web-app/src/app/map/marker/FixedWidthIcon.ts new file mode 100644 index 000000000..9adf01141 --- /dev/null +++ b/web-app/src/app/map/marker/FixedWidthIcon.ts @@ -0,0 +1,46 @@ +import { DivIcon, DivIconOptions, DomUtil } from "leaflet"; + +export interface FixedWidthDivIconOptions extends DivIconOptions { + iconUrl: string + iconWidth?: number +} + +export class FixedWidthIcon extends DivIcon { + options: FixedWidthDivIconOptions + + onIconLoad?(icon: FixedWidthIcon, height: number, width: number): void + + constructor(options?: FixedWidthDivIconOptions) { + options.iconWidth = options.iconWidth || 35 + options.iconUrl = options.iconUrl || '/assets/images/default_marker.png' + + super(options) + } + + createIcon(oldIcon?: HTMLElement): HTMLElement { + const div = DomUtil.create('div', 'observation-edit-marker') + + const img = document.createElement('img') + img.className = "mage-icon-image" + img.style.width = this.options.iconWidth + 'px' + img.src = this.options.iconUrl; + + img.onload = (event: any) => { + div.style.marginTop = -(event.srcElement.height) + 'px' + div.style.marginLeft = -(event.srcElement.width / 2) + 'px' + } + + div.appendChild(img) + if (this.options.html) { + const tooltip = DomUtil.create('div', 'observation-edit-marker__tooltip') + tooltip.innerHTML = this.options.html.toString() + div.appendChild(tooltip) + } + + return div + } +} + +export function fixedWidthIcon(options?: FixedWidthDivIconOptions): FixedWidthIcon { + return new FixedWidthIcon(options) +} \ No newline at end of file diff --git a/web-app/src/app/map/marker/FixedWidthMarker.ts b/web-app/src/app/map/marker/FixedWidthMarker.ts new file mode 100644 index 000000000..ae397c6e5 --- /dev/null +++ b/web-app/src/app/map/marker/FixedWidthMarker.ts @@ -0,0 +1,40 @@ +import { LatLngExpression, Marker, MarkerOptions, icon } from "leaflet"; + +export interface FixedWidthMarkerOptions extends MarkerOptions { + iconUrl?: string, + tooltip?: boolean, + iconWidth?: number +} + +export class FixedWidthMarker extends Marker { + iconWidth: number = 35 + fixedWidthIcon: any + + constructor(latLng: LatLngExpression, options?: FixedWidthMarkerOptions) { + super(latLng, options) + + if (options.iconUrl) { + const img = new Image() + img.src = options.iconUrl + + this.setOpacity(0) + img.onload = (event: any) => { + this.setOpacity(1) + const scale = this.iconWidth / event.srcElement.width + this.setIcon( + icon({ + className: 'leaflet-fixed-width-marker', + iconUrl: options.iconUrl, + iconSize: [this.iconWidth, event.srcElement.height * scale], + iconAnchor: [this.iconWidth / 2, event.srcElement.height * scale], + popupAnchor: [0, -(event.srcElement.height * scale)] + }) + ) + } + } + } +} + +export function fixedWidthMarker(latlng: LatLngExpression, options?: FixedWidthMarkerOptions): FixedWidthMarker { + return new FixedWidthMarker(latlng, options) +} \ No newline at end of file diff --git a/web-app/src/app/map/marker/LocationMarker.ts b/web-app/src/app/map/marker/LocationMarker.ts new file mode 100644 index 000000000..fd2735fac --- /dev/null +++ b/web-app/src/app/map/marker/LocationMarker.ts @@ -0,0 +1,102 @@ +import { Circle, circle, LatLngExpression, CircleMarker, CircleMarkerOptions, LatLng, circleMarker, FeatureGroup, Layer, Marker } from "leaflet"; +import { fixedWidthMarker } from "./FixedWidthMarker"; + +export interface LocationMarkerOptions extends CircleMarkerOptions { + accuracy?: number + iconUrl?: string + color?: string +} + +export class LocationMarker extends FeatureGroup { + private locationMarker: CircleMarker + private accuracyCircle: Circle + + constructor(latLng: LatLngExpression, options?: LocationMarkerOptions ) { + const layers = [] + + if (options?.iconUrl) { + layers.push(fixedWidthMarker(latLng, { + pane: options.pane, + iconUrl: options.iconUrl, + iconWidth: 42 + })) + } + + const locationMarker = circleMarker(latLng, { + color: options?.color, + fillColor: options?.color, + fillOpacity: 0.7, + weight: 2, + opacity: 0.9, + radius: 5, + pane: options?.pane + }) + layers.push(locationMarker) + + super(layers, {}) + + this.locationMarker = locationMarker + this.accuracyCircle = circle(latLng, 0, { + interactive: false, + color: options?.color, + fillColor: options?.color, + fillOpacity: 0.15, + weight: 2, + opacity: 0.5, + pane: options?.pane + }) + + this.on('popupopen', () => { + if (options?.accuracy) { + this.accuracyCircle.setRadius(options.accuracy) + } + + this.addLayer(this.accuracyCircle) + }) + + this.on('popupclose', () => { + this.removeLayer(this.accuracyCircle) + }) + } + + getLatLng(): LatLng { + return this.locationMarker.getLatLng() + } + + setLatLng(latLng: LatLng): this { + this.accuracyCircle.setLatLng(latLng); + this.getLayers().forEach((layer: Layer) => { + if (layer instanceof Circle) { + layer.setLatLng(latLng) + } else if (layer instanceof CircleMarker) { + layer.setLatLng(latLng) + } else if (layer instanceof Marker) { + layer.setLatLng(latLng) + } + }) + + return this + } + + setAccuracy(accuracy: number): this { + this.accuracyCircle.setRadius(accuracy) + return this + } + + getAccuracy(): number { + return this.accuracyCircle.getRadius() + } + + setColor(color: string): this { + if (this.accuracyCircle.options.color === color) return this + + const style = { color: color, fillColor: color } + this.accuracyCircle.setStyle(style) + this.locationMarker.setStyle(style) + return this + } +} + +export function locationMarker(latlng: LatLngExpression, options?: LocationMarkerOptions ): LocationMarker { + return new LocationMarker(latlng, options) +} \ No newline at end of file diff --git a/web-app/src/app/map/marker/ObservationMarker.ts b/web-app/src/app/map/marker/ObservationMarker.ts new file mode 100644 index 000000000..0a6b9c95e --- /dev/null +++ b/web-app/src/app/map/marker/ObservationMarker.ts @@ -0,0 +1,52 @@ +import { LatLngExpression, Circle, circle, Map } from "leaflet"; +import { FixedWidthMarker, FixedWidthMarkerOptions } from "./FixedWidthMarker"; + +export interface ObservationMarkerOptions extends FixedWidthMarkerOptions { + accuracy: number, +} + +export class ObservationMarker extends FixedWidthMarker { + options: ObservationMarkerOptions + private accuracyCircle: Circle + + constructor(latLng: LatLngExpression, options?: ObservationMarkerOptions) { + super(latLng, options) + + this.accuracyCircle = circle(latLng, 0, { + interactive: false, + color: '#1565C0', + fillColor: '#1E88E5', + fillOpacity: 0.15, + weight: 2, + opacity: 0.5, + pane: options.pane + }) + + this.on('popupopen', () => { + if (options.accuracy) { + this.accuracyCircle.setRadius(options.accuracy) + this._map.addLayer(this.accuracyCircle); + } + }); + + this.on('popupclose', () => { + this._map.removeLayer(this.accuracyCircle) + }); + } + + onRemove(map: Map): this { + super.onRemove(map) + map.removeLayer(this.accuracyCircle) + return this + } + + setAccuracy(accuracy: number): this { + this.options.accuracy = accuracy + return this + } + +} + +export function observationMarker(latlng: LatLngExpression, options: ObservationMarkerOptions): ObservationMarker { + return new ObservationMarker(latlng, options) +} \ No newline at end of file diff --git a/web-app/src/app/map/search/search.service.spec.ts b/web-app/src/app/map/search/search.service.spec.ts index 71d3b5cd8..a11eb2bac 100644 --- a/web-app/src/app/map/search/search.service.spec.ts +++ b/web-app/src/app/map/search/search.service.spec.ts @@ -60,8 +60,6 @@ describe('SearchService', () => { const search = '123 South Madeup Way'; service.search(mapSettings, search).subscribe((response: PlacenameSearchResult[]) => { - console.log("response", response) - console.log("results", results) expect(results).toEqual(response); }); diff --git a/web-app/src/app/moment/moment.pipe.spec.ts b/web-app/src/app/moment/moment.pipe.spec.ts index 03a552e0d..96e9f027f 100644 --- a/web-app/src/app/moment/moment.pipe.spec.ts +++ b/web-app/src/app/moment/moment.pipe.spec.ts @@ -1,6 +1,7 @@ +import { LocalStorageService } from '../http/local-storage.service'; import { MomentPipe } from './moment.pipe'; -class MockLocalStorageService { +class MockLocalStorageService extends LocalStorageService { getTimeFormat(): string { return 'relative'; } diff --git a/web-app/src/app/moment/moment.pipe.ts b/web-app/src/app/moment/moment.pipe.ts index 9f9e571e4..da318b2f6 100644 --- a/web-app/src/app/moment/moment.pipe.ts +++ b/web-app/src/app/moment/moment.pipe.ts @@ -1,6 +1,6 @@ -import { Pipe, PipeTransform, Inject } from '@angular/core'; -import { LocalStorageService } from '../upgrade/ajs-upgraded-providers'; +import { Pipe, PipeTransform } from '@angular/core'; import * as moment from 'moment'; +import { LocalStorageService } from '../http/local-storage.service'; @Pipe({ name: 'moment', @@ -8,7 +8,7 @@ import * as moment from 'moment'; }) export class MomentPipe implements PipeTransform { - constructor(@Inject(LocalStorageService) private localStorageService: any) { } + constructor(private localStorageService: LocalStorageService) { } transform(value: any, args?: any): any { switch (this.localStorageService.getTimeFormat()) { diff --git a/web-app/src/app/navigation/navigation.component.html b/web-app/src/app/navigation/navigation.component.html new file mode 100644 index 000000000..fa42c83c1 --- /dev/null +++ b/web-app/src/app/navigation/navigation.component.html @@ -0,0 +1,43 @@ + +
+ + +
+ {{filteredEvent.name}} + > {{filteredTeams}} + {{filteredInterval}} +
+ + +
+
\ No newline at end of file diff --git a/web-app/src/app/navigation/navigation.component.scss b/web-app/src/app/navigation/navigation.component.scss new file mode 100644 index 000000000..f2570f2ed --- /dev/null +++ b/web-app/src/app/navigation/navigation.component.scss @@ -0,0 +1,38 @@ +:host { + display: block; +} + +.container { + width: 100%; + display: flex; + flex-direction: row; + align-items: center; + justify-content: space-between; +} + +.menu { + display: flex; + flex-direction: row; + align-items: center; + justify-content: center; +} + +.title { + margin-left: 16px; +} + +.profile-avatar { + display: flex; + flex-direction: column; + align-items: center; + justify-content: center; +} + +@media(min-width:900px) { + .navigation-options { + visibility: hidden; + display: none; + width: 0; + padding: 0; + } +} \ No newline at end of file diff --git a/web-app/src/app/navigation/navigation.component.spec.ts b/web-app/src/app/navigation/navigation.component.spec.ts new file mode 100644 index 000000000..7a863eb9f --- /dev/null +++ b/web-app/src/app/navigation/navigation.component.spec.ts @@ -0,0 +1,24 @@ +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; +import { NavigationComponent } from './navigation.component'; +import { HttpClientTestingModule } from '@angular/common/http/testing'; + +describe('Navigation Component', () => { + let component: NavigationComponent; + let fixture: ComponentFixture; + + beforeEach(waitForAsync(() => { + TestBed.configureTestingModule({ + declarations: [NavigationComponent], + imports: [HttpClientTestingModule] + }).compileComponents(); + })); + + beforeEach(() => { + fixture = TestBed.createComponent(NavigationComponent); + component = fixture.componentInstance; + }); + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/web-app/src/app/navigation/navigation.component.ts b/web-app/src/app/navigation/navigation.component.ts new file mode 100644 index 000000000..3e1a95c02 --- /dev/null +++ b/web-app/src/app/navigation/navigation.component.ts @@ -0,0 +1,104 @@ +import { Component, EventEmitter, OnDestroy, OnInit, Output } from '@angular/core'; +import { FilterService } from '../filter/filter.service'; +import { MapService } from '../map/map.service'; +import { UserService } from '../user/user.service'; +import { EventService } from '../event/event.service'; +import { PollingService } from '../event/polling.service'; +import * as _ from 'underscore'; +import { Router } from '@angular/router'; + +@Component({ + selector: 'navigation', + templateUrl: './navigation.component.html', + styleUrls: ['./navigation.component.scss'] +}) +export class NavigationComponent implements OnInit, OnDestroy { + @Output() onFeedToggle = new EventEmitter(); + @Output() onPreferencesToggle = new EventEmitter(); + + state = "map" + filteredEvent: any = {} + filteredTeams: any + filteredInterval: any + feedChangedUsers = {} + + constructor( + private router: Router, + private mapService: MapService, + private userService: UserService, + private eventService: EventService, + private filterService: FilterService, + private pollingService: PollingService + ) { } + + ngOnInit(): void { + this.filterService.addListener(this); + + this.eventService.query().subscribe(events => { + const recentEventId = this.userService.getRecentEventId(); + const recentEvent = _.find(events, event => { return event.id === recentEventId; }); + if (recentEvent) { + this.filterService.setFilter({ event: recentEvent }); + this.pollingService.setPollingInterval(this.pollingService.getPollingInterval()); + } else if (events.length > 0) { + // TODO 'welcome to Mage dialog' + this.filterService.setFilter({ event: events[0] }); + this.pollingService.setPollingInterval(this.pollingService.getPollingInterval()); + } else { + // TODO welcome to mage, sorry you have no events + } + }); + + this.mapService.init() + this.eventService.init() + } + + ngOnDestroy(): void { + this.filterService.removeListener(this) + this.filterService.removeFilters() + + this.mapService.destroy() + + this.eventService.destroy() + } + + toggleFeed(): void { + this.onFeedToggle.emit() + } + + togglePreferences(): void { + this.onPreferencesToggle.emit() + } + + onLogout() { + this.userService.logout().subscribe(() => { + this.router.navigate(['landing']); + }) + } + + onFilterChanged(filter) { + this.feedChangedUsers = {}; + + if (filter.event) { + this.filteredEvent = this.filterService.getEvent(); + + // Stop broadcasting location if the event switches + this.mapService.onLocationStop(); + } + + if (filter.teams) this.filteredTeams = _.map(this.filterService.getTeams(), t => { return t.name; }).join(', '); + if (filter.timeInterval) { + const intervalChoice = this.filterService.getIntervalChoice(); + if (intervalChoice.filter !== 'all') { + if (intervalChoice.filter === 'custom') { + // TODO format custom time interval + this.filteredInterval = 'Custom time interval'; + } else { + this.filteredInterval = intervalChoice.label; + } + } else { + this.filteredInterval = null; + } + } + } +} diff --git a/web-app/src/app/observation/attachment/attachment-upload/attachment-upload.component.spec.ts b/web-app/src/app/observation/attachment/attachment-upload/attachment-upload.component.spec.ts index 7d729e179..0bbaac689 100644 --- a/web-app/src/app/observation/attachment/attachment-upload/attachment-upload.component.spec.ts +++ b/web-app/src/app/observation/attachment/attachment-upload/attachment-upload.component.spec.ts @@ -1,5 +1,5 @@ import { HttpClientTestingModule } from '@angular/common/http/testing'; -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; import { AttachUploadComponent } from './attachment-upload.component'; @@ -7,7 +7,7 @@ describe('AttachUploadComponent', () => { let component: AttachUploadComponent; let fixture: ComponentFixture; - beforeEach(async(() => { + beforeEach(waitForAsync(() => { TestBed.configureTestingModule({ imports: [HttpClientTestingModule], declarations: [AttachUploadComponent] diff --git a/web-app/src/app/observation/attachment/attachment-upload/attachment-upload.component.ts b/web-app/src/app/observation/attachment/attachment-upload/attachment-upload.component.ts index b0f2ad17d..08997dda1 100644 --- a/web-app/src/app/observation/attachment/attachment-upload/attachment-upload.component.ts +++ b/web-app/src/app/observation/attachment/attachment-upload/attachment-upload.component.ts @@ -1,13 +1,13 @@ import { HttpEvent, HttpEventType, HttpResponse, HttpResponseBase } from '@angular/common/http'; import { ChangeDetectorRef, Component, EventEmitter, Input, OnChanges, Output, SimpleChanges } from '@angular/core'; -import { FormControl } from '@angular/forms'; +import { UntypedFormControl } from '@angular/forms'; import { AttachmentAction } from '../../observation-edit/observation-edit-attachment/observation-edit-attachment-action'; import { AttachmentService } from '../attachment.service'; export interface FileUpload { id: number | string, name: string, - formControl: FormControl, + formControl: UntypedFormControl, attachmentId: string, action: AttachmentAction, file: File, diff --git a/web-app/src/app/observation/attachment/attachment.component.spec.ts b/web-app/src/app/observation/attachment/attachment.component.spec.ts index b4d0781c8..3b6e79bc3 100644 --- a/web-app/src/app/observation/attachment/attachment.component.spec.ts +++ b/web-app/src/app/observation/attachment/attachment.component.spec.ts @@ -1,12 +1,13 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; import { AttachmentComponent } from './attachment.component'; +/* TODO tests MUST contain at least 1 test describe('AttachmentComponent', () => { let component: AttachmentComponent; let fixture: ComponentFixture; - beforeEach(async(() => { + beforeEach(waitForAsync(() => { TestBed.configureTestingModule({ declarations: [ AttachmentComponent ] }) @@ -23,3 +24,4 @@ describe('AttachmentComponent', () => { // expect(component).toBeTruthy(); // }); }); +*/ diff --git a/web-app/src/app/observation/attachment/attachment.component.ts b/web-app/src/app/observation/attachment/attachment.component.ts index 5fc805887..22bbd940e 100644 --- a/web-app/src/app/observation/attachment/attachment.component.ts +++ b/web-app/src/app/observation/attachment/attachment.component.ts @@ -1,6 +1,7 @@ -import { Component, EventEmitter, Inject, Input, OnInit, Output } from '@angular/core'; -import { LocalStorageService, UserService } from 'src/app/upgrade/ajs-upgraded-providers'; +import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core'; import { AttachmentAction } from '../observation-edit/observation-edit-attachment/observation-edit-attachment-action'; +import { LocalStorageService } from '../../http/local-storage.service'; +import { UserService } from '../../user/user.service'; @Component({ selector: 'observation-attachment', @@ -29,8 +30,9 @@ export class AttachmentComponent implements OnInit { actions: typeof AttachmentAction = AttachmentAction constructor( - @Inject(UserService) private userService: any, - @Inject(LocalStorageService) localStorageService: any) { + private userService: UserService, + localStorageService: LocalStorageService + ) { this.token = localStorageService.getToken() } diff --git a/web-app/src/app/observation/attachment/attachment.service.ts b/web-app/src/app/observation/attachment/attachment.service.ts index 2c09bbb7f..de7edf57f 100644 --- a/web-app/src/app/observation/attachment/attachment.service.ts +++ b/web-app/src/app/observation/attachment/attachment.service.ts @@ -1,7 +1,7 @@ import { HttpClient, HttpErrorResponse, HttpEvent, HttpEventType, HttpResponse } from '@angular/common/http'; import { Injectable } from '@angular/core'; import { Observable, Subject } from 'rxjs'; -import { share } from 'rxjs/operators'; +import { tap } from 'rxjs/operators'; import { FileUpload } from './attachment-upload/attachment-upload.component'; export enum AttachmentUploadStatus { @@ -30,27 +30,29 @@ export class AttachmentService { const formData = new FormData(); formData.append('attachment', upload.file); - const url = `${observationUrl}/attachments/${upload.attachmentId}` - const observable = this.httpClient.put(url, formData, { observe: 'events', reportProgress: true }).pipe(share()) - - observable.subscribe((response: HttpEvent>) => { - if (response.type === HttpEventType.Response) { - if (response.status === 200) { - this.uploadSource.next({ - upload: upload, - response: response.body, - status: AttachmentUploadStatus.COMPLETE - }) - } - } - }, (error: HttpErrorResponse) => { - this.uploadSource.next({ - upload: upload, - response: error, - status: AttachmentUploadStatus.ERROR - }) - }) - - return observable + const url = `${new URL(observationUrl).pathname}/attachments/${upload.attachmentId}` + return this.httpClient.put(url, formData, { observe: 'events', reportProgress: true }) + .pipe( + tap({ + next: (response: HttpEvent>) => { + if (response.type === HttpEventType.Response) { + if (response.status === 200) { + this.uploadSource.next({ + upload: upload, + response: response.body, + status: AttachmentUploadStatus.COMPLETE + }) + } + } + }, + error: (error: HttpErrorResponse) => { + this.uploadSource.next({ + upload: upload, + response: error, + status: AttachmentUploadStatus.ERROR + }) + } + }) + ) } } diff --git a/web-app/src/app/observation/observation-delete/observation-delete.component.scss b/web-app/src/app/observation/observation-delete/observation-delete.component.scss index 6855a4479..06b3e8471 100644 --- a/web-app/src/app/observation/observation-delete/observation-delete.component.scss +++ b/web-app/src/app/observation/observation-delete/observation-delete.component.scss @@ -1,8 +1,8 @@ -@import '~@angular/material/theming'; +@use '@angular/material' as mat; @import "variables.scss"; .mat-dialog-title { - color: mat-color($app-primary); + color: mat.get-color-from-palette($app-primary); } .observation { diff --git a/web-app/src/app/observation/observation-delete/observation-delete.component.spec.ts b/web-app/src/app/observation/observation-delete/observation-delete.component.spec.ts index b81404be7..05913ecd5 100644 --- a/web-app/src/app/observation/observation-delete/observation-delete.component.spec.ts +++ b/web-app/src/app/observation/observation-delete/observation-delete.component.spec.ts @@ -1,13 +1,14 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; import { MatDialogModule, MatDialogRef } from '@angular/material/dialog'; import { ObservationDeleteComponent } from './observation-delete.component'; +/* TODO tests MUST contain at least 1 test describe('ObservationDeleteComponent', () => { let component: ObservationDeleteComponent; let fixture: ComponentFixture; - beforeEach(async(() => { + beforeEach(waitForAsync(() => { TestBed.configureTestingModule({ imports: [MatDialogModule], declarations: [ObservationDeleteComponent], @@ -26,3 +27,4 @@ describe('ObservationDeleteComponent', () => { // expect(component).toBeTruthy(); // }); }); +*/ diff --git a/web-app/src/app/observation/observation-delete/observation-delete.component.ts b/web-app/src/app/observation/observation-delete/observation-delete.component.ts index ae1d94559..f732b0a31 100644 --- a/web-app/src/app/observation/observation-delete/observation-delete.component.ts +++ b/web-app/src/app/observation/observation-delete/observation-delete.component.ts @@ -1,6 +1,6 @@ import { Component, Inject } from '@angular/core' import { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog'; -import { EventService } from 'src/app/upgrade/ajs-upgraded-providers' +import { EventService } from '../../event/event.service'; export interface Observation { id: string; @@ -17,7 +17,7 @@ export class ObservationDeleteComponent { constructor( public dialogRef: MatDialogRef, - @Inject(EventService) private eventService: any, + private eventService: EventService, @Inject(MAT_DIALOG_DATA) public observation: Observation) { this.event = eventService.getEventById(observation.eventId); } @@ -27,7 +27,7 @@ export class ObservationDeleteComponent { } delete(): void { - this.eventService.archiveObservation(this.observation).then(() => { + this.eventService.archiveObservation(this.observation).subscribe(() => { this.dialogRef.close('delete'); }) } diff --git a/web-app/src/app/observation/observation-edit/observation-edit-attachment/observation-edit-attachment.component.spec.ts b/web-app/src/app/observation/observation-edit/observation-edit-attachment/observation-edit-attachment.component.spec.ts index b98de6351..0be325722 100644 --- a/web-app/src/app/observation/observation-edit/observation-edit-attachment/observation-edit-attachment.component.spec.ts +++ b/web-app/src/app/observation/observation-edit/observation-edit-attachment/observation-edit-attachment.component.spec.ts @@ -1,6 +1,6 @@ import { Component, ViewChild } from '@angular/core'; -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; -import { FormControl, FormGroup } from '@angular/forms'; +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; +import { UntypedFormControl, UntypedFormGroup } from '@angular/forms'; import { ObservationEditAttachmentComponent } from './observation-edit-attachment.component'; @@ -10,8 +10,8 @@ import { ObservationEditAttachmentComponent } from './observation-edit-attachmen }) class TestHostComponent { attachments = [] - formGroup = new FormGroup({ - attachment: new FormControl([]) + formGroup = new UntypedFormGroup({ + attachment: new UntypedFormControl([]) }); definition = { name: 'attachment' @@ -24,7 +24,7 @@ describe('ObservationEditAttachmentComponent', () => { let hostComponent: TestHostComponent let fixture: ComponentFixture - beforeEach(async(() => { + beforeEach(waitForAsync(() => { TestBed.configureTestingModule({ declarations: [ObservationEditAttachmentComponent, TestHostComponent] }) @@ -41,4 +41,4 @@ describe('ObservationEditAttachmentComponent', () => { it('should create', () => { expect(component).toBeTruthy(); }); -}); \ No newline at end of file +}); diff --git a/web-app/src/app/observation/observation-edit/observation-edit-attachment/observation-edit-attachment.component.ts b/web-app/src/app/observation/observation-edit/observation-edit-attachment/observation-edit-attachment.component.ts index d324488f1..acc457253 100644 --- a/web-app/src/app/observation/observation-edit/observation-edit-attachment/observation-edit-attachment.component.ts +++ b/web-app/src/app/observation/observation-edit/observation-edit-attachment/observation-edit-attachment.component.ts @@ -1,5 +1,5 @@ import { ChangeDetectorRef, Component, Input, OnInit } from '@angular/core'; -import { FormControl, FormGroup } from '@angular/forms'; +import { UntypedFormControl, UntypedFormGroup } from '@angular/forms'; import { AttachmentAction } from './observation-edit-attachment-action'; interface AttachmentField { @@ -16,19 +16,19 @@ interface AttachmentField { styleUrls: ['./observation-edit-attachment.component.scss'] }) export class ObservationEditAttachmentComponent implements OnInit { - @Input() formGroup: FormGroup + @Input() formGroup: UntypedFormGroup @Input() definition: AttachmentField @Input() url: string @Input() attachments: any[] - control: FormControl + control: UntypedFormControl uploadId = 0 uploadAttachments = false constructor(private changeDetector: ChangeDetectorRef) { } ngOnInit(): void { - this.control = this.formGroup.get(this.definition.name) as FormControl + this.control = this.formGroup.get(this.definition.name) as UntypedFormControl } trackByAttachment(index: number, attachment: any): any { diff --git a/web-app/src/app/observation/observation-edit/observation-edit-checkbox/observation-edit-checkbox.component.spec.ts b/web-app/src/app/observation/observation-edit/observation-edit-checkbox/observation-edit-checkbox.component.spec.ts index ef2b47b46..f5493e717 100644 --- a/web-app/src/app/observation/observation-edit/observation-edit-checkbox/observation-edit-checkbox.component.spec.ts +++ b/web-app/src/app/observation/observation-edit/observation-edit-checkbox/observation-edit-checkbox.component.spec.ts @@ -1,6 +1,6 @@ import { Component, ViewChild } from '@angular/core' -import { async, ComponentFixture, TestBed } from '@angular/core/testing' -import { FormControl, FormGroup, FormsModule, ReactiveFormsModule, Validators } from '@angular/forms' +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing' +import { UntypedFormControl, UntypedFormGroup, FormsModule, ReactiveFormsModule, Validators } from '@angular/forms' import { MatCheckbox, MatCheckboxModule } from '@angular/material/checkbox'; import { MatError, MatFormFieldModule } from '@angular/material/form-field'; import { By } from '@angular/platform-browser' @@ -14,8 +14,8 @@ import { ObservationEditCheckboxComponent } from './observation-edit-checkbox.co template: `` }) class TestHostComponent { - formGroup = new FormGroup({ - checkbox: new FormControl(true, Validators.required) + formGroup = new UntypedFormGroup({ + checkbox: new UntypedFormControl(true, Validators.required) }); definition = { name: 'checkbox', @@ -33,7 +33,7 @@ describe('ObservationEditCheckboxComponent', () => { let hostComponent: TestHostComponent let fixture: ComponentFixture - beforeEach(async(() => { + beforeEach(waitForAsync(() => { TestBed.configureTestingModule({ imports: [FormsModule, ReactiveFormsModule, MatFormFieldModule, MatCheckboxModule ], declarations: [ObservationEditCheckboxComponent, TestHostComponent ] diff --git a/web-app/src/app/observation/observation-edit/observation-edit-checkbox/observation-edit-checkbox.component.ts b/web-app/src/app/observation/observation-edit/observation-edit-checkbox/observation-edit-checkbox.component.ts index 30e35dd88..7bf1aa112 100644 --- a/web-app/src/app/observation/observation-edit/observation-edit-checkbox/observation-edit-checkbox.component.ts +++ b/web-app/src/app/observation/observation-edit/observation-edit-checkbox/observation-edit-checkbox.component.ts @@ -1,5 +1,5 @@ import { Component, Input, OnInit } from '@angular/core'; -import { FormControl, FormGroup } from '@angular/forms'; +import { UntypedFormControl, UntypedFormGroup } from '@angular/forms'; import { MatCheckboxChange } from '@angular/material/checkbox'; interface CheckboxField { @@ -15,13 +15,13 @@ interface CheckboxField { styleUrls: ['./observation-edit-checkbox.component.scss'] }) export class ObservationEditCheckboxComponent implements OnInit { - @Input() formGroup: FormGroup + @Input() formGroup: UntypedFormGroup @Input() definition: CheckboxField - control: FormControl + control: UntypedFormControl ngOnInit(): void { - this.control = this.formGroup.get(this.definition.name) as FormControl + this.control = this.formGroup.get(this.definition.name) as UntypedFormControl } checked(event: MatCheckboxChange): void { diff --git a/web-app/src/app/observation/observation-edit/observation-edit-date/observation-edit-date.component.spec.ts b/web-app/src/app/observation/observation-edit/observation-edit-date/observation-edit-date.component.spec.ts index b31c838cc..bb2800a0c 100644 --- a/web-app/src/app/observation/observation-edit/observation-edit-date/observation-edit-date.component.spec.ts +++ b/web-app/src/app/observation/observation-edit/observation-edit-date/observation-edit-date.component.spec.ts @@ -1,12 +1,13 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; import { ObservationEditDateComponent } from './observation-edit-date.component'; +/* TODO tests MUST contain at least 1 test describe('ObservationEditDateComponent', () => { let component: ObservationEditDateComponent; let fixture: ComponentFixture; - beforeEach(async(() => { + beforeEach(waitForAsync(() => { TestBed.configureTestingModule({ declarations: [ObservationEditDateComponent ] }) @@ -23,3 +24,4 @@ describe('ObservationEditDateComponent', () => { // expect(component).toBeTruthy(); // }); }); +*/ diff --git a/web-app/src/app/observation/observation-edit/observation-edit-date/observation-edit-date.component.ts b/web-app/src/app/observation/observation-edit/observation-edit-date/observation-edit-date.component.ts index 41242d9f8..ee9420e0f 100644 --- a/web-app/src/app/observation/observation-edit/observation-edit-date/observation-edit-date.component.ts +++ b/web-app/src/app/observation/observation-edit/observation-edit-date/observation-edit-date.component.ts @@ -1,7 +1,7 @@ -import { Component, Inject, Input, OnChanges, SimpleChanges, ViewChild } from '@angular/core' -import { FormGroup, NgModel } from '@angular/forms' -import { LocalStorageService } from 'src/app/upgrade/ajs-upgraded-providers' +import { Component, Input, OnChanges, SimpleChanges, ViewChild } from '@angular/core' +import { UntypedFormGroup, NgModel } from '@angular/forms' import * as moment from 'moment' +import { LocalStorageService } from '../../../http/local-storage.service' interface DateField { title: string, @@ -16,7 +16,7 @@ interface DateField { styleUrls: ['./observation-edit-date.component.scss'] }) export class ObservationEditDateComponent implements OnChanges { - @Input() formGroup: FormGroup + @Input() formGroup: UntypedFormGroup @Input() definition: any @ViewChild('dateModel') dateModel: NgModel @@ -26,7 +26,7 @@ export class ObservationEditDateComponent implements OnChanges { time: moment.Moment timeZone: string - constructor(@Inject(LocalStorageService) localStorageService: any) { + constructor(private localStorageService: LocalStorageService) { this.timeZone = localStorageService.getTimeZoneEdit(); } diff --git a/web-app/src/app/observation/observation-edit/observation-edit-discard/observation-edit-discard.component.spec.ts b/web-app/src/app/observation/observation-edit/observation-edit-discard/observation-edit-discard.component.spec.ts index 011056a24..aad247725 100644 --- a/web-app/src/app/observation/observation-edit/observation-edit-discard/observation-edit-discard.component.spec.ts +++ b/web-app/src/app/observation/observation-edit/observation-edit-discard/observation-edit-discard.component.spec.ts @@ -1,4 +1,4 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; import { MatDialogModule, MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog'; import { ObservationEditDiscardComponent } from './observation-edit-discard.component'; @@ -7,7 +7,7 @@ describe('ObservationEditDiscardComponent', () => { let component: ObservationEditDiscardComponent; let fixture: ComponentFixture; - beforeEach(async(() => { + beforeEach(waitForAsync(() => { TestBed.configureTestingModule({ imports: [MatDialogModule], declarations: [ObservationEditDiscardComponent], diff --git a/web-app/src/app/observation/observation-edit/observation-edit-email/observation-edit-email.component.spec.ts b/web-app/src/app/observation/observation-edit/observation-edit-email/observation-edit-email.component.spec.ts index 40966bac0..bd9731a4e 100644 --- a/web-app/src/app/observation/observation-edit/observation-edit-email/observation-edit-email.component.spec.ts +++ b/web-app/src/app/observation/observation-edit/observation-edit-email/observation-edit-email.component.spec.ts @@ -1,6 +1,6 @@ import { ChangeDetectionStrategy, Component, ViewChild } from '@angular/core'; -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; -import { FormControl, FormGroup, FormsModule, ReactiveFormsModule, Validators } from '@angular/forms'; +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; +import { UntypedFormControl, UntypedFormGroup, FormsModule, ReactiveFormsModule, Validators } from '@angular/forms'; import { MatError, MatFormFieldModule } from '@angular/material/form-field'; import { MatInputModule } from '@angular/material/input'; import { By } from '@angular/platform-browser'; @@ -14,8 +14,8 @@ import { ObservationEditEmailComponent } from './observation-edit-email.componen changeDetection: ChangeDetectionStrategy.OnPush }) class TestHostComponent { - formGroup = new FormGroup({ - text: new FormControl('') + formGroup = new UntypedFormGroup({ + text: new UntypedFormControl('') }) definition: any = { @@ -31,7 +31,7 @@ describe('ObservationEditEmailComponent', () => { let hostComponent: TestHostComponent let fixture: ComponentFixture - beforeEach(async(() => { + beforeEach(waitForAsync(() => { TestBed.configureTestingModule({ imports: [FormsModule, ReactiveFormsModule, MatFormFieldModule, MatInputModule, NoopAnimationsModule], declarations: [ObservationEditEmailComponent, TestHostComponent] diff --git a/web-app/src/app/observation/observation-edit/observation-edit-email/observation-edit-email.component.ts b/web-app/src/app/observation/observation-edit/observation-edit-email/observation-edit-email.component.ts index 12529ae52..8ef85a52b 100644 --- a/web-app/src/app/observation/observation-edit/observation-edit-email/observation-edit-email.component.ts +++ b/web-app/src/app/observation/observation-edit/observation-edit-email/observation-edit-email.component.ts @@ -1,5 +1,5 @@ import { Component, Input } from '@angular/core'; -import { FormGroup } from '@angular/forms'; +import { UntypedFormGroup } from '@angular/forms'; interface EmailField { title: string, @@ -14,6 +14,6 @@ interface EmailField { styleUrls: ['./observation-edit-email.component.scss'] }) export class ObservationEditEmailComponent { - @Input() formGroup: FormGroup + @Input() formGroup: UntypedFormGroup @Input() definition: EmailField } diff --git a/web-app/src/app/observation/observation-edit/observation-edit-form-picker.component.html b/web-app/src/app/observation/observation-edit/observation-edit-form-picker.component.html index ff0e43506..63ed1032a 100644 --- a/web-app/src/app/observation/observation-edit/observation-edit-form-picker.component.html +++ b/web-app/src/app/observation/observation-edit/observation-edit-form-picker.component.html @@ -1,17 +1,20 @@ -
-
Add a Form To Your Observation
-
+
+
+
Add a Form To Your Observation
+
- + - - - description -
{{form.name}}
-
{{form.description}}
-
-
+ + + description +
{{form.name}}
+
{{form.description}}
+
+
-
- +
+ +
+ diff --git a/web-app/src/app/observation/observation-edit/observation-edit-form-picker.component.scss b/web-app/src/app/observation/observation-edit/observation-edit-form-picker.component.scss index 66b27c56b..44cdea16b 100644 --- a/web-app/src/app/observation/observation-edit/observation-edit-form-picker.component.scss +++ b/web-app/src/app/observation/observation-edit/observation-edit-form-picker.component.scss @@ -1,3 +1,7 @@ +.container { + width: 468px; +} + .form-picker-header { display: flex; align-items: center; diff --git a/web-app/src/app/observation/observation-edit/observation-edit-form-picker.component.spec.ts b/web-app/src/app/observation/observation-edit/observation-edit-form-picker.component.spec.ts index 6cfc36e0b..0b8503fd3 100644 --- a/web-app/src/app/observation/observation-edit/observation-edit-form-picker.component.spec.ts +++ b/web-app/src/app/observation/observation-edit/observation-edit-form-picker.component.spec.ts @@ -1,8 +1,9 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; import { MatBottomSheetRef } from '@angular/material/bottom-sheet'; -import { EventService, FilterService } from 'src/app/upgrade/ajs-upgraded-providers'; import { ObservationEditFormPickerComponent } from './observation-edit-form-picker.component'; +import { FilterService } from 'src/app/filter/filter.service'; +import { EventService } from 'src/app/event/event.service'; class MockFilterService { getEvent(): any { @@ -20,7 +21,7 @@ describe('ObservationEditFormPickerComponent', () => { let component: ObservationEditFormPickerComponent; let fixture: ComponentFixture; - beforeEach(async(() => { + beforeEach(waitForAsync(() => { TestBed.configureTestingModule({ declarations: [ ObservationEditFormPickerComponent ], providers: [{ diff --git a/web-app/src/app/observation/observation-edit/observation-edit-form-picker.component.ts b/web-app/src/app/observation/observation-edit/observation-edit-form-picker.component.ts index cf30974de..c04b45d75 100644 --- a/web-app/src/app/observation/observation-edit/observation-edit-form-picker.component.ts +++ b/web-app/src/app/observation/observation-edit/observation-edit-form-picker.component.ts @@ -1,6 +1,7 @@ -import { Component, Inject } from '@angular/core'; +import { Component } from '@angular/core'; import { MatBottomSheetRef } from '@angular/material/bottom-sheet'; -import { EventService, FilterService } from 'src/app/upgrade/ajs-upgraded-providers'; +import { EventService } from '../../event/event.service'; +import { FilterService } from '../../filter/filter.service'; @Component({ selector: 'app-observation-edit-form-picker', @@ -11,8 +12,8 @@ export class ObservationEditFormPickerComponent { forms: any[] constructor( - @Inject(FilterService) filterService: any, - @Inject(EventService) eventService: any, + filterService: FilterService, + eventService: EventService, private bottomSheetRef: MatBottomSheetRef) { const event = filterService.getEvent(); diff --git a/web-app/src/app/observation/observation-edit/observation-edit-form.component.scss b/web-app/src/app/observation/observation-edit/observation-edit-form.component.scss index 2fb123055..9447d009f 100644 --- a/web-app/src/app/observation/observation-edit/observation-edit-form.component.scss +++ b/web-app/src/app/observation/observation-edit/observation-edit-form.component.scss @@ -1,4 +1,3 @@ -@import '~@angular/material/theming'; @import "variables.scss"; .form-header { diff --git a/web-app/src/app/observation/observation-edit/observation-edit-form.component.spec.ts b/web-app/src/app/observation/observation-edit/observation-edit-form.component.spec.ts index f86e96bc4..87181d4dd 100644 --- a/web-app/src/app/observation/observation-edit/observation-edit-form.component.spec.ts +++ b/web-app/src/app/observation/observation-edit/observation-edit-form.component.spec.ts @@ -1,6 +1,6 @@ import { Component, ViewChild } from '@angular/core'; -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; -import { FormGroup } from '@angular/forms'; +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; +import { UntypedFormGroup } from '@angular/forms'; import { NoopAnimationsModule } from '@angular/platform-browser/animations'; import { ObservationEditFormComponent } from './observation-edit-form.component'; @@ -11,7 +11,7 @@ import { ObservationEditFormComponent } from './observation-edit-form.component' }) class TestHostComponent { - formGroup = new FormGroup({}) + formGroup = new UntypedFormGroup({}) definition = { name: 'TestForm', fields: [] @@ -29,7 +29,7 @@ describe('ObservationEditFormComponent', () => { let hostComponent: TestHostComponent let fixture: ComponentFixture - beforeEach(async(() => { + beforeEach(waitForAsync(() => { TestBed.configureTestingModule({ imports: [NoopAnimationsModule], declarations: [ ObservationEditFormComponent, TestHostComponent ] diff --git a/web-app/src/app/observation/observation-edit/observation-edit-form.component.ts b/web-app/src/app/observation/observation-edit/observation-edit-form.component.ts index af4f7f75d..724e036ec 100644 --- a/web-app/src/app/observation/observation-edit/observation-edit-form.component.ts +++ b/web-app/src/app/observation/observation-edit/observation-edit-form.component.ts @@ -1,6 +1,6 @@ import { animate, state, style, transition, trigger } from '@angular/animations' import { Component, EventEmitter, Input, Output } from '@angular/core' -import { FormGroup } from '@angular/forms' +import { UntypedFormGroup } from '@angular/forms' @Component({ selector: 'observation-edit-form', @@ -24,7 +24,7 @@ import { FormGroup } from '@angular/forms' ] }) export class ObservationEditFormComponent { - @Input() formGroup: FormGroup + @Input() formGroup: UntypedFormGroup @Input() definition: any @Input() geometryStyle: any @Input() attachmentUrl: string @@ -32,7 +32,7 @@ export class ObservationEditFormComponent { @Input() deletable = true @Input() options: { expand: boolean, deletable: boolean } - @Output() remove = new EventEmitter() + @Output() remove = new EventEmitter() @Output() featureEdit = new EventEmitter() fieldNames: string[] diff --git a/web-app/src/app/observation/observation-edit/observation-edit-geometry/observation-edit-geometry-form.component.spec.ts b/web-app/src/app/observation/observation-edit/observation-edit-geometry/observation-edit-geometry-form.component.spec.ts index 11b4ca316..d2331fe57 100644 --- a/web-app/src/app/observation/observation-edit/observation-edit-geometry/observation-edit-geometry-form.component.spec.ts +++ b/web-app/src/app/observation/observation-edit/observation-edit-geometry/observation-edit-geometry-form.component.spec.ts @@ -1,12 +1,13 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; import { ObservationEditGeometryFormComponent } from './observation-edit-geometry-form.component'; +/* TODO tests MUST contain at least 1 test describe('ObservationEditGeometryFormComponent', () => { let component: ObservationEditGeometryFormComponent; let fixture: ComponentFixture; - beforeEach(async(() => { + beforeEach(waitForAsync(() => { TestBed.configureTestingModule({ declarations: [ObservationEditGeometryFormComponent ] }) @@ -23,3 +24,4 @@ describe('ObservationEditGeometryFormComponent', () => { // expect(component).toBeTruthy(); // }); }); +*/ diff --git a/web-app/src/app/observation/observation-edit/observation-edit-geometry/observation-edit-geometry-form.component.ts b/web-app/src/app/observation/observation-edit/observation-edit-geometry/observation-edit-geometry-form.component.ts index 4264d6f21..62c6fe51e 100644 --- a/web-app/src/app/observation/observation-edit/observation-edit-geometry/observation-edit-geometry-form.component.ts +++ b/web-app/src/app/observation/observation-edit/observation-edit-geometry/observation-edit-geometry-form.component.ts @@ -1,11 +1,13 @@ -import { Component, Directive, EventEmitter, Inject, Input, OnChanges, OnInit, Output, SimpleChanges, ViewChild, ViewContainerRef } from '@angular/core' +import { Component, Directive, EventEmitter, Input, OnChanges, OnInit, Output, SimpleChanges, ViewChild, ViewContainerRef } from '@angular/core' import { AbstractControl, FormControl, FormGroup, NgModel, NG_VALIDATORS, ValidationErrors, Validator } from '@angular/forms' import { MatSnackBar } from '@angular/material/snack-bar' import mgrs from 'mgrs' import { Dimension, DimensionKey, DMSCoordinate, DMSParseError } from 'src/app/geometry/geometry-dms' import * as DMS from 'src/app/geometry/geometry-dms' -import { GeometryService, LocalStorageService, MapService } from 'src/app/upgrade/ajs-upgraded-providers' import { createMask } from '@ngneat/input-mask' +import { LocalStorageService } from '../../../http/local-storage.service' +import { MapService } from '../../../map/map.service' +import { GeometryService } from '../../../geometry/geometry.service' @Directive({ selector: '[mgrs][formControlName],[mgrs][formControl],[mgrs][ngModel]', @@ -53,6 +55,7 @@ export class DMSValidatorDirective implements Validator { } type CoordinateSystemKey = 'wgs84' | 'mgrs' | 'dms' +type DMSFormValue = Partial<{ [DimensionKey.Latitude]: string, [DimensionKey.Longitude]: string }> @Component({ selector: 'observation-edit-geometry-form', @@ -93,9 +96,9 @@ export class ObservationEditGeometryFormComponent implements OnChanges, OnInit { }) constructor( - @Inject(MapService) private mapService: any, - @Inject(GeometryService) private geometryService: any, - @Inject(LocalStorageService) private localStorageService: any, + private mapService: MapService, + private geometryService: GeometryService, + private localStorageService: LocalStorageService, private snackBar: MatSnackBar) { this.coordinateSystem = this.localStorageService.getCoordinateSystemEdit() @@ -104,7 +107,7 @@ export class ObservationEditGeometryFormComponent implements OnChanges, OnInit { ngOnInit(): void { this.dmsForm.valueChanges.subscribe(dms => { if (this.feature?.geometry?.coordinates) { - this.onDmsChange(dms) + this.onDmsChange({ [DimensionKey.Latitude]: '', [DimensionKey.Longitude]: '', ...dms }) } }) } @@ -205,7 +208,7 @@ export class ObservationEditGeometryFormComponent implements OnChanges, OnInit { } event.preventDefault() event.stopImmediatePropagation() - const formValue = { ...this.dmsForm.value } + const formValue = { [DimensionKey.Latitude]: '', [DimensionKey.Longitude]: '', ...this.dmsForm.value } if (coords.length === 1) { const coord = typeof coords[0] === 'number' ? DMSCoordinate.fromDecimalDegrees(coords[0], dimension) : coords[0] formValue[dimension] = coord.format() @@ -228,15 +231,15 @@ export class ObservationEditGeometryFormComponent implements OnChanges, OnInit { DMSCoordinate.fromDecimalDegrees(second, firstDim === DimensionKey.Latitude ? DimensionKey.Longitude : DimensionKey.Latitude) : second const secondDim = Dimension.keyForHemisphere(secondResolved.hemisphere) - this.dmsForm.setValue({ [firstDim]: first.format(), [secondDim]: secondResolved.format() }, { emitEvent: true }) + this.dmsForm.setValue({ [firstDim]: first.format(), [secondDim]: secondResolved.format() } as Required, { emitEvent: true }) } - onDmsChange({ lat: formLat, lon: formLon }): void { + onDmsChange({ lat: formLat, lon: formLon }: Required): void { if (this.dmsForm.invalid) { return } - const lat = formLat ? DMS.parseOne(formLat, DimensionKey.Latitude) : this.dmsForm.value[DimensionKey.Latitude] - const lon = formLon ? DMS.parseOne(formLon, DimensionKey.Longitude) : this.dmsForm.value[DimensionKey.Longitude] + const lat = DMS.parseOne(formLat, DimensionKey.Latitude) + const lon = DMS.parseOne(formLon, DimensionKey.Longitude) this.editCurrentCoordinates('dms', lat, lon) } diff --git a/web-app/src/app/observation/observation-edit/observation-edit-geometry/observation-edit-geometry-map.component.spec.ts b/web-app/src/app/observation/observation-edit/observation-edit-geometry/observation-edit-geometry-map.component.spec.ts index 52e0e67ea..2cf74801d 100644 --- a/web-app/src/app/observation/observation-edit/observation-edit-geometry/observation-edit-geometry-map.component.spec.ts +++ b/web-app/src/app/observation/observation-edit/observation-edit-geometry/observation-edit-geometry-map.component.spec.ts @@ -1,4 +1,4 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; import { ObservationEditGeometryMapComponent } from './observation-edit-geometry-map.component'; @@ -6,7 +6,7 @@ describe('ObservationEditGeometryMapComponent', () => { let component: ObservationEditGeometryMapComponent; let fixture: ComponentFixture; - beforeEach(async(() => { + beforeEach(waitForAsync(() => { TestBed.configureTestingModule({ declarations: [ObservationEditGeometryMapComponent ] }) diff --git a/web-app/src/app/observation/observation-edit/observation-edit-geometry/observation-edit-geometry.component.scss b/web-app/src/app/observation/observation-edit/observation-edit-geometry/observation-edit-geometry.component.scss index 71272b6f7..42a14da52 100644 --- a/web-app/src/app/observation/observation-edit/observation-edit-geometry/observation-edit-geometry.component.scss +++ b/web-app/src/app/observation/observation-edit/observation-edit-geometry/observation-edit-geometry.component.scss @@ -1,4 +1,4 @@ -@import '~@angular/material/theming'; +@use '@angular/material' as mat; @import "variables.scss"; .geometry-wrapper { @@ -26,7 +26,7 @@ } .geometry-field__label--active { - color: mat-color($app-primary); + color: mat.get-color-from-palette($app-primary); } .geometry-panel { diff --git a/web-app/src/app/observation/observation-edit/observation-edit-geometry/observation-edit-geometry.component.spec.ts b/web-app/src/app/observation/observation-edit/observation-edit-geometry/observation-edit-geometry.component.spec.ts index d5882fd6b..f9e75f7b3 100644 --- a/web-app/src/app/observation/observation-edit/observation-edit-geometry/observation-edit-geometry.component.spec.ts +++ b/web-app/src/app/observation/observation-edit/observation-edit-geometry/observation-edit-geometry.component.spec.ts @@ -1,12 +1,13 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; import { ObservationEditGeometryComponent } from './observation-edit-geometry.component'; +/* TODO tests MUST contain at least 1 test describe('ObservationEditGeometryComponent', () => { let component: ObservationEditGeometryComponent; let fixture: ComponentFixture; - beforeEach(async(() => { + beforeEach(waitForAsync(() => { TestBed.configureTestingModule({ declarations: [ObservationEditGeometryComponent ] }) @@ -23,3 +24,4 @@ describe('ObservationEditGeometryComponent', () => { // expect(component).toBeTruthy(); // }); }); +*/ diff --git a/web-app/src/app/observation/observation-edit/observation-edit-geometry/observation-edit-geometry.component.ts b/web-app/src/app/observation/observation-edit/observation-edit-geometry/observation-edit-geometry.component.ts index ec957d091..e4d375a5e 100644 --- a/web-app/src/app/observation/observation-edit/observation-edit-geometry/observation-edit-geometry.component.ts +++ b/web-app/src/app/observation/observation-edit/observation-edit-geometry/observation-edit-geometry.component.ts @@ -1,7 +1,7 @@ -import { Component, ElementRef, EventEmitter, Inject, Input, OnChanges, Output, SimpleChanges, ViewChild } from '@angular/core' -import { FormGroup } from '@angular/forms' +import { Component, ElementRef, EventEmitter, Input, OnChanges, Output, SimpleChanges, ViewChild } from '@angular/core' +import { UntypedFormGroup } from '@angular/forms' import { Feature, Geometry } from 'geojson' -import { LocalStorageService } from 'src/app/upgrade/ajs-upgraded-providers' +import { LocalStorageService } from '../../../http/local-storage.service' @Component({ selector: 'observation-edit-geometry', @@ -9,7 +9,7 @@ import { LocalStorageService } from 'src/app/upgrade/ajs-upgraded-providers' styleUrls: ['./observation-edit-geometry.component.scss'] }) export class ObservationEditGeometryComponent implements OnChanges { - @Input() formGroup: FormGroup + @Input() formGroup: UntypedFormGroup @Input() definition: any @Input() featureId: string @@ -23,7 +23,9 @@ export class ObservationEditGeometryComponent implements OnChanges { mapFeature: any editFeature: any - constructor(private element: ElementRef, @Inject(LocalStorageService) private localStorageService: any) { } + constructor( + private localStorageService: LocalStorageService + ) {} ngOnChanges(changes: SimpleChanges): void { if (changes.formGroup && changes.formGroup.currentValue) { diff --git a/web-app/src/app/observation/observation-edit/observation-edit-multiselect/observation-edit-multiselect.component.spec.ts b/web-app/src/app/observation/observation-edit/observation-edit-multiselect/observation-edit-multiselect.component.spec.ts index 46aabca4f..5fef663da 100644 --- a/web-app/src/app/observation/observation-edit/observation-edit-multiselect/observation-edit-multiselect.component.spec.ts +++ b/web-app/src/app/observation/observation-edit/observation-edit-multiselect/observation-edit-multiselect.component.spec.ts @@ -1,13 +1,13 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing' +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing' import { ChangeDetectionStrategy, Component, CUSTOM_ELEMENTS_SCHEMA, ViewChild } from '@angular/core' import { ObservationEditMultiselectComponent } from './observation-edit-multiselect.component' import { MatAutocompleteModule } from '@angular/material/autocomplete'; -import { MatChipsModule, MatChipInputEvent } from '@angular/material/chips'; +import { MatChipsModule, MatChipInputEvent, MatChipInput } from '@angular/material/chips'; import { MatFormFieldModule, MatError } from '@angular/material/form-field'; import { MatIconModule } from '@angular/material/icon'; import { MatInputModule } from '@angular/material/input'; -import { FormControl, FormGroup, FormsModule, ReactiveFormsModule, Validators } from '@angular/forms' +import { UntypedFormControl, UntypedFormGroup, FormsModule, ReactiveFormsModule, Validators } from '@angular/forms' import { BrowserAnimationsModule } from '@angular/platform-browser/animations' import { By } from '@angular/platform-browser' @@ -17,8 +17,8 @@ import { By } from '@angular/platform-browser' changeDetection: ChangeDetectionStrategy.OnPush }) class TestHostComponent { - formGroup = new FormGroup({ - select: new FormControl() + formGroup = new UntypedFormGroup({ + select: new UntypedFormControl() }) definition: any = { @@ -41,14 +41,15 @@ describe('ObservationEditMultiselectComponent', () => { let component: ObservationEditMultiselectComponent let hostComponent: TestHostComponent let fixture: ComponentFixture + let chipInput: MatChipInput - beforeEach(async(() => { + beforeEach(waitForAsync(() => { TestBed.configureTestingModule({ - imports: [FormsModule, BrowserAnimationsModule, ReactiveFormsModule, MatInputModule, MatAutocompleteModule, MatChipsModule, MatIconModule, MatFormFieldModule ], - declarations: [ObservationEditMultiselectComponent, TestHostComponent ], - schemas: [ CUSTOM_ELEMENTS_SCHEMA ] + imports: [FormsModule, BrowserAnimationsModule, ReactiveFormsModule, MatInputModule, MatAutocompleteModule, MatChipsModule, MatIconModule, MatFormFieldModule], + declarations: [ObservationEditMultiselectComponent, TestHostComponent], + schemas: [CUSTOM_ELEMENTS_SCHEMA] }) - .compileComponents() + .compileComponents() })); @@ -107,7 +108,8 @@ describe('ObservationEditMultiselectComponent', () => { it('should add choice', () => { const event: MatChipInputEvent = { input: null, - value: 'red' + value: 'red', + chipInput: chipInput } component.add(event) @@ -118,7 +120,8 @@ describe('ObservationEditMultiselectComponent', () => { it('should not add invalid choice', () => { const event: MatChipInputEvent = { input: null, - value: 'purple' + value: 'purple', + chipInput: chipInput } component.add(event) @@ -130,7 +133,8 @@ describe('ObservationEditMultiselectComponent', () => { it('should not add duplicate choice', () => { const event: MatChipInputEvent = { input: null, - value: 'red' + value: 'red', + chipInput: chipInput } component.add(event) component.add(event) @@ -142,7 +146,8 @@ describe('ObservationEditMultiselectComponent', () => { it('should remove choice', () => { const event: MatChipInputEvent = { input: null, - value: 'red' + value: 'red', + chipInput: chipInput } component.add(event) component.remove('red') @@ -154,7 +159,8 @@ describe('ObservationEditMultiselectComponent', () => { it('should not remove non existing choice', () => { const event: MatChipInputEvent = { input: null, - value: 'red' + value: 'red', + chipInput: chipInput } component.add(event) component.remove('blue') diff --git a/web-app/src/app/observation/observation-edit/observation-edit-multiselect/observation-edit-multiselect.component.ts b/web-app/src/app/observation/observation-edit/observation-edit-multiselect/observation-edit-multiselect.component.ts index 2e2c22043..d9e3bca61 100644 --- a/web-app/src/app/observation/observation-edit/observation-edit-multiselect/observation-edit-multiselect.component.ts +++ b/web-app/src/app/observation/observation-edit/observation-edit-multiselect/observation-edit-multiselect.component.ts @@ -1,5 +1,5 @@ import { Component, ViewChild, ElementRef, Input, AfterViewInit, OnInit } from '@angular/core'; -import { FormControl, FormGroup } from '@angular/forms'; +import { UntypedFormControl, UntypedFormGroup } from '@angular/forms'; import { COMMA, ENTER } from '@angular/cdk/keycodes'; import { MatAutocompleteSelectedEvent, MatAutocompleteTrigger } from '@angular/material/autocomplete'; import { MatChipInputEvent, MatChipList } from '@angular/material/chips'; @@ -23,7 +23,7 @@ interface MultiSelectField { styleUrls: ['./observation-edit-multiselect.component.scss'] }) export class ObservationEditMultiselectComponent implements OnInit, AfterViewInit { - @Input() formGroup: FormGroup + @Input() formGroup: UntypedFormGroup @Input() definition: MultiSelectField @ViewChild('chipList', { static: false }) chipList: MatChipList @@ -33,8 +33,8 @@ export class ObservationEditMultiselectComponent implements OnInit, AfterViewIni visible = true removable = true separatorKeysCodes: number[] = [ENTER, COMMA] - control: FormControl - choiceControl = new FormControl() + control: UntypedFormControl + choiceControl = new UntypedFormControl() filteredChoices: Observable constructor() { @@ -50,7 +50,7 @@ export class ObservationEditMultiselectComponent implements OnInit, AfterViewIni } ngOnInit(): void { - this.control = this.formGroup.get(this.definition.name) as FormControl + this.control = this.formGroup.get(this.definition.name) as UntypedFormControl } ngAfterViewInit(): void { diff --git a/web-app/src/app/observation/observation-edit/observation-edit-number/observation-edit-number.component.spec.ts b/web-app/src/app/observation/observation-edit/observation-edit-number/observation-edit-number.component.spec.ts index 2269db4f6..8ca95f15d 100644 --- a/web-app/src/app/observation/observation-edit/observation-edit-number/observation-edit-number.component.spec.ts +++ b/web-app/src/app/observation/observation-edit/observation-edit-number/observation-edit-number.component.spec.ts @@ -1,6 +1,6 @@ import { ChangeDetectionStrategy, Component, ViewChild } from '@angular/core'; -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; -import { FormControl, FormGroup, FormsModule, ReactiveFormsModule, Validators } from '@angular/forms'; +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; +import { UntypedFormControl, UntypedFormGroup, FormsModule, ReactiveFormsModule, Validators } from '@angular/forms'; import { MatError, MatFormFieldModule } from '@angular/material/form-field'; import { MatInputModule } from '@angular/material/input'; import { By } from '@angular/platform-browser'; @@ -14,8 +14,8 @@ import { ObservationEditNumberComponent } from './observation-edit-number.compon changeDetection: ChangeDetectionStrategy.OnPush }) class TestHostComponent { - formGroup = new FormGroup({ - number: new FormControl() + formGroup = new UntypedFormGroup({ + number: new UntypedFormControl() }) definition: any = { @@ -32,7 +32,7 @@ describe('ObservationEditNumberComponent', () => { let hostComponent: TestHostComponent let fixture: ComponentFixture - beforeEach(async(() => { + beforeEach(waitForAsync(() => { TestBed.configureTestingModule({ imports: [FormsModule, ReactiveFormsModule, MatFormFieldModule, MatInputModule, NoopAnimationsModule], declarations: [ObservationEditNumberComponent, TestHostComponent] diff --git a/web-app/src/app/observation/observation-edit/observation-edit-number/observation-edit-number.component.ts b/web-app/src/app/observation/observation-edit/observation-edit-number/observation-edit-number.component.ts index b24ffada7..09bbdfa55 100644 --- a/web-app/src/app/observation/observation-edit/observation-edit-number/observation-edit-number.component.ts +++ b/web-app/src/app/observation/observation-edit/observation-edit-number/observation-edit-number.component.ts @@ -1,5 +1,5 @@ import { Component, Input, OnInit } from '@angular/core'; -import { FormGroup, ValidatorFn, Validators } from '@angular/forms'; +import { UntypedFormGroup, ValidatorFn, Validators } from '@angular/forms'; interface NumberField { title: string, @@ -16,7 +16,7 @@ interface NumberField { styleUrls: ['./observation-edit-number.component.scss'] }) export class ObservationEditNumberComponent implements OnInit { - @Input() formGroup: FormGroup + @Input() formGroup: UntypedFormGroup @Input() definition: NumberField ngOnInit(): void { diff --git a/web-app/src/app/observation/observation-edit/observation-edit-password/observation-edit-password.component.spec.ts b/web-app/src/app/observation/observation-edit/observation-edit-password/observation-edit-password.component.spec.ts index decaa9365..4846fb8bc 100644 --- a/web-app/src/app/observation/observation-edit/observation-edit-password/observation-edit-password.component.spec.ts +++ b/web-app/src/app/observation/observation-edit/observation-edit-password/observation-edit-password.component.spec.ts @@ -1,7 +1,6 @@ import { ChangeDetectionStrategy, Component, ViewChild } from '@angular/core'; -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; -import { FormControl, FormGroup, Validators } from '@angular/forms'; - +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; +import { UntypedFormControl, UntypedFormGroup, Validators } from '@angular/forms'; import { ObservationEditPasswordComponent } from './observation-edit-password.component'; @Component({ @@ -10,8 +9,8 @@ import { ObservationEditPasswordComponent } from './observation-edit-password.co changeDetection: ChangeDetectionStrategy.OnPush }) class TestHostComponent { - formGroup = new FormGroup({ - text: new FormControl('') + formGroup = new UntypedFormGroup({ + text: new UntypedFormControl('') }); definition = { name: 'text', @@ -22,12 +21,13 @@ class TestHostComponent { @ViewChild(ObservationEditPasswordComponent) component: ObservationEditPasswordComponent } +/* TODO tests MUST contain at least 1 test describe('ObservationEditPasswordComponent', () => { let component: ObservationEditPasswordComponent let hostComponent: TestHostComponent let fixture: ComponentFixture - beforeEach(async(() => { + beforeEach(waitForAsync(() => { TestBed.configureTestingModule({ declarations: [ ObservationEditPasswordComponent, TestHostComponent ] }) @@ -104,3 +104,4 @@ describe('ObservationEditPasswordComponent', () => { // expect(error).toBeNull() // }) }); +*/ diff --git a/web-app/src/app/observation/observation-edit/observation-edit-password/observation-edit-password.component.ts b/web-app/src/app/observation/observation-edit/observation-edit-password/observation-edit-password.component.ts index a1c9d2116..b13898681 100644 --- a/web-app/src/app/observation/observation-edit/observation-edit-password/observation-edit-password.component.ts +++ b/web-app/src/app/observation/observation-edit/observation-edit-password/observation-edit-password.component.ts @@ -1,5 +1,5 @@ import { Component, Input } from '@angular/core'; -import { FormGroup } from '@angular/forms'; +import { UntypedFormGroup } from '@angular/forms'; interface PasswordField { title: string, @@ -13,6 +13,6 @@ interface PasswordField { styleUrls: ['./observation-edit-password.component.scss'] }) export class ObservationEditPasswordComponent { - @Input() formGroup: FormGroup + @Input() formGroup: UntypedFormGroup @Input() definition: PasswordField } diff --git a/web-app/src/app/observation/observation-edit/observation-edit-radio/observation-edit-radio.component.spec.ts b/web-app/src/app/observation/observation-edit/observation-edit-radio/observation-edit-radio.component.spec.ts index 125575300..ab224f2df 100644 --- a/web-app/src/app/observation/observation-edit/observation-edit-radio/observation-edit-radio.component.spec.ts +++ b/web-app/src/app/observation/observation-edit/observation-edit-radio/observation-edit-radio.component.spec.ts @@ -1,6 +1,6 @@ import { ChangeDetectionStrategy, Component, ViewChild } from '@angular/core' -import { async, ComponentFixture, TestBed } from '@angular/core/testing' -import { FormControl, FormGroup, FormsModule, ReactiveFormsModule, Validators } from '@angular/forms' +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing' +import { UntypedFormControl, UntypedFormGroup, FormsModule, ReactiveFormsModule, Validators } from '@angular/forms' import { MatError, MatFormFieldModule } from '@angular/material/form-field'; import { MatRadioModule } from '@angular/material/radio'; import { By } from '@angular/platform-browser' @@ -13,8 +13,8 @@ import { ObservationEditRadioComponent } from './observation-edit-radio.componen changeDetection: ChangeDetectionStrategy.OnPush }) class TestHostComponent { - formGroup = new FormGroup({ - radio: new FormControl() + formGroup = new UntypedFormGroup({ + radio: new UntypedFormControl() }) definition = { @@ -35,7 +35,7 @@ describe('ObservationEditRadioComponent', () => { let hostComponent: TestHostComponent let fixture: ComponentFixture - beforeEach(async(() => { + beforeEach(waitForAsync(() => { TestBed.configureTestingModule({ imports: [FormsModule, ReactiveFormsModule, MatFormFieldModule, MatRadioModule], declarations: [ObservationEditRadioComponent, TestHostComponent] diff --git a/web-app/src/app/observation/observation-edit/observation-edit-radio/observation-edit-radio.component.ts b/web-app/src/app/observation/observation-edit/observation-edit-radio/observation-edit-radio.component.ts index 69754f744..1c6ec35cb 100644 --- a/web-app/src/app/observation/observation-edit/observation-edit-radio/observation-edit-radio.component.ts +++ b/web-app/src/app/observation/observation-edit/observation-edit-radio/observation-edit-radio.component.ts @@ -1,5 +1,5 @@ import { Component, Input } from '@angular/core'; -import { FormGroup } from '@angular/forms'; +import { UntypedFormGroup } from '@angular/forms'; /** * TODO: move to forms model module (which doesn't exist yet) @@ -17,6 +17,6 @@ interface RadioField { styleUrls: ['./observation-edit-radio.component.scss'] }) export class ObservationEditRadioComponent { - @Input() formGroup: FormGroup + @Input() formGroup: UntypedFormGroup @Input() definition: RadioField } diff --git a/web-app/src/app/observation/observation-edit/observation-edit-select/observation-edit-select.component.spec.ts b/web-app/src/app/observation/observation-edit/observation-edit-select/observation-edit-select.component.spec.ts index cebeaafef..17f78a6e1 100644 --- a/web-app/src/app/observation/observation-edit/observation-edit-select/observation-edit-select.component.spec.ts +++ b/web-app/src/app/observation/observation-edit/observation-edit-select/observation-edit-select.component.spec.ts @@ -1,9 +1,9 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; import { ChangeDetectionStrategy, Component, ViewChild } from '@angular/core'; import { ObservationEditSelectComponent } from './observation-edit-select.component'; import { By } from '@angular/platform-browser'; -import { FormControl, FormGroup, FormsModule, ReactiveFormsModule, Validators } from '@angular/forms'; +import { UntypedFormControl, UntypedFormGroup, FormsModule, ReactiveFormsModule, Validators } from '@angular/forms'; import { NgxMatSelectSearchModule } from 'ngx-mat-select-search'; import { NoopAnimationsModule } from '@angular/platform-browser/animations'; import { MatError } from '@angular/material/form-field'; @@ -15,8 +15,8 @@ import { MatSelectModule } from '@angular/material/select'; changeDetection: ChangeDetectionStrategy.OnPush }) class TestHostComponent { - formGroup = new FormGroup({ - select: new FormControl() + formGroup = new UntypedFormGroup({ + select: new UntypedFormControl() }) definition = { @@ -39,7 +39,7 @@ describe('ObservationEditSelectComponent', () => { let hostComponent: TestHostComponent let fixture: ComponentFixture - beforeEach(async(() => { + beforeEach(waitForAsync(() => { TestBed.configureTestingModule({ imports: [NoopAnimationsModule, FormsModule, ReactiveFormsModule, NgxMatSelectSearchModule, MatInputModule, MatSelectModule], declarations: [ObservationEditSelectComponent, TestHostComponent] diff --git a/web-app/src/app/observation/observation-edit/observation-edit-select/observation-edit-select.component.ts b/web-app/src/app/observation/observation-edit/observation-edit-select/observation-edit-select.component.ts index 2d5dbd2b6..286a8884c 100644 --- a/web-app/src/app/observation/observation-edit/observation-edit-select/observation-edit-select.component.ts +++ b/web-app/src/app/observation/observation-edit/observation-edit-select/observation-edit-select.component.ts @@ -1,5 +1,5 @@ import { Component, OnInit, Input, Output, EventEmitter } from '@angular/core'; -import { FormControl, FormGroup } from '@angular/forms'; +import { UntypedFormControl, UntypedFormGroup } from '@angular/forms'; import { MatSelectChange } from '@angular/material/select'; import { Observable } from 'rxjs'; import { map, startWith } from 'rxjs/operators'; @@ -21,12 +21,12 @@ interface SelectField { styleUrls: ['./observation-edit-select.component.scss'] }) export class ObservationEditSelectComponent implements OnInit { - @Input() formGroup: FormGroup + @Input() formGroup: UntypedFormGroup @Input() definition: SelectField @Output() selectionChange = new EventEmitter<{value: any}>(); - searchControl: FormControl = new FormControl(); + searchControl: UntypedFormControl = new UntypedFormControl(); filteredChoices: Observable; ngOnInit(): void { diff --git a/web-app/src/app/observation/observation-edit/observation-edit-text/observation-edit-text.component.spec.ts b/web-app/src/app/observation/observation-edit/observation-edit-text/observation-edit-text.component.spec.ts index 085ce6249..3f4e42fee 100644 --- a/web-app/src/app/observation/observation-edit/observation-edit-text/observation-edit-text.component.spec.ts +++ b/web-app/src/app/observation/observation-edit/observation-edit-text/observation-edit-text.component.spec.ts @@ -1,5 +1,5 @@ import { Component, ViewChild } from '@angular/core'; -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; import { FormsModule, ReactiveFormsModule } from '@angular/forms'; import { MatError, MatFormField, MatFormFieldModule } from '@angular/material/form-field'; import { MatInput, MatInputModule } from '@angular/material/input'; @@ -22,12 +22,13 @@ class TestHostComponent { @ViewChild(ObservationEditTextComponent) component: ObservationEditTextComponent } +/* TODO test MUST contain at least 1 test describe('ObservationEditTextComponent', () => { let component: ObservationEditTextComponent let hostComponent: TestHostComponent let fixture: ComponentFixture - beforeEach(async(() => { + beforeEach(waitForAsync(() => { TestBed.configureTestingModule({ imports: [FormsModule, ReactiveFormsModule, MatFormFieldModule, MatInputModule, NoopAnimationsModule], declarations: [ObservationEditTextComponent, TestHostComponent] @@ -83,3 +84,4 @@ describe('ObservationEditTextComponent', () => { // expect(error).toBeNull() // }) }); +*/ diff --git a/web-app/src/app/observation/observation-edit/observation-edit-text/observation-edit-text.component.ts b/web-app/src/app/observation/observation-edit/observation-edit-text/observation-edit-text.component.ts index f925cd346..c75b6f638 100644 --- a/web-app/src/app/observation/observation-edit/observation-edit-text/observation-edit-text.component.ts +++ b/web-app/src/app/observation/observation-edit/observation-edit-text/observation-edit-text.component.ts @@ -1,5 +1,5 @@ import { Component, Input } from '@angular/core'; -import { FormGroup } from '@angular/forms'; +import { UntypedFormGroup } from '@angular/forms'; interface TextField { title: string, @@ -13,6 +13,6 @@ interface TextField { styleUrls: ['./observation-edit-text.component.scss'] }) export class ObservationEditTextComponent { - @Input() formGroup: FormGroup + @Input() formGroup: UntypedFormGroup @Input() definition: TextField } diff --git a/web-app/src/app/observation/observation-edit/observation-edit-textarea/observation-edit-textarea.component.spec.ts b/web-app/src/app/observation/observation-edit/observation-edit-textarea/observation-edit-textarea.component.spec.ts index dae734858..8610ca3e4 100644 --- a/web-app/src/app/observation/observation-edit/observation-edit-textarea/observation-edit-textarea.component.spec.ts +++ b/web-app/src/app/observation/observation-edit/observation-edit-textarea/observation-edit-textarea.component.spec.ts @@ -1,6 +1,6 @@ import { ChangeDetectionStrategy, Component, ViewChild } from '@angular/core'; -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; -import { FormControl, FormGroup, FormsModule, ReactiveFormsModule, Validators } from '@angular/forms'; +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; +import { UntypedFormControl, UntypedFormGroup, FormsModule, ReactiveFormsModule, Validators } from '@angular/forms'; import { MatError, MatFormFieldModule } from '@angular/material/form-field'; import { MatInputModule } from '@angular/material/input'; import { By } from '@angular/platform-browser'; @@ -14,8 +14,8 @@ import { ObservationEditTextareaComponent } from './observation-edit-textarea.co changeDetection: ChangeDetectionStrategy.OnPush }) class TestHostComponent { - formGroup = new FormGroup({ - text: new FormControl() + formGroup = new UntypedFormGroup({ + text: new UntypedFormControl() }) definition = { @@ -32,7 +32,7 @@ describe('ObservationEditTextareaComponent', () => { let hostComponent: TestHostComponent let fixture: ComponentFixture - beforeEach(async(() => { + beforeEach(waitForAsync(() => { TestBed.configureTestingModule({ imports: [FormsModule, ReactiveFormsModule, MatFormFieldModule, MatInputModule, NoopAnimationsModule], declarations: [ObservationEditTextareaComponent, TestHostComponent] diff --git a/web-app/src/app/observation/observation-edit/observation-edit-textarea/observation-edit-textarea.component.ts b/web-app/src/app/observation/observation-edit/observation-edit-textarea/observation-edit-textarea.component.ts index e01ee2629..cdc3402c9 100644 --- a/web-app/src/app/observation/observation-edit/observation-edit-textarea/observation-edit-textarea.component.ts +++ b/web-app/src/app/observation/observation-edit/observation-edit-textarea/observation-edit-textarea.component.ts @@ -1,5 +1,5 @@ import { Component, Input } from '@angular/core'; -import { FormGroup } from '@angular/forms'; +import { UntypedFormGroup } from '@angular/forms'; interface TextareaField { title: string, @@ -13,6 +13,6 @@ interface TextareaField { styleUrls: ['./observation-edit-textarea.component.scss'] }) export class ObservationEditTextareaComponent { - @Input() formGroup: FormGroup + @Input() formGroup: UntypedFormGroup @Input() definition: TextareaField } diff --git a/web-app/src/app/observation/observation-edit/observation-edit.component.html b/web-app/src/app/observation/observation-edit/observation-edit.component.html index cb6de3fbb..2d973a7f1 100644 --- a/web-app/src/app/observation/observation-edit/observation-edit.component.html +++ b/web-app/src/app/observation/observation-edit/observation-edit.component.html @@ -64,7 +64,7 @@
- diff --git a/web-app/src/app/observation/observation-edit/observation-edit.component.spec.ts b/web-app/src/app/observation/observation-edit/observation-edit.component.spec.ts index 0550edd03..fe71091ae 100644 --- a/web-app/src/app/observation/observation-edit/observation-edit.component.spec.ts +++ b/web-app/src/app/observation/observation-edit/observation-edit.component.spec.ts @@ -1,13 +1,14 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; import { MatDialogModule } from '@angular/material/dialog'; import { ObservationEditComponent } from './observation-edit.component'; +/* TODO test MUST contain at least 1 test describe('ObservationEditComponent', () => { let component: ObservationEditComponent; let fixture: ComponentFixture; - beforeEach(async(() => { + beforeEach(waitForAsync(() => { TestBed.configureTestingModule({ imports: [MatDialogModule], declarations: [ObservationEditComponent ] @@ -25,3 +26,4 @@ describe('ObservationEditComponent', () => { // expect(component).toBeTruthy(); // }); }); +*/ diff --git a/web-app/src/app/observation/observation-edit/observation-edit.component.ts b/web-app/src/app/observation/observation-edit/observation-edit.component.ts index a62c9e66b..f55813a63 100644 --- a/web-app/src/app/observation/observation-edit/observation-edit.component.ts +++ b/web-app/src/app/observation/observation-edit/observation-edit.component.ts @@ -2,10 +2,9 @@ import { animate, style, transition, trigger } from '@angular/animations' import { CdkDragDrop, moveItemInArray } from '@angular/cdk/drag-drop' import { DOCUMENT } from '@angular/common' import { Component, ElementRef, EventEmitter, Inject, Input, OnChanges, OnInit, Output, QueryList, SimpleChanges, ViewChild, ViewChildren } from '@angular/core' -import { FormArray, FormBuilder, FormControl, FormGroup, Validators } from '@angular/forms' +import { UntypedFormArray, UntypedFormBuilder, UntypedFormControl, UntypedFormGroup, Validators } from '@angular/forms' import { DomSanitizer } from '@angular/platform-browser' import { first } from 'rxjs/operators' -import { EventService, FilterService, LocalStorageService, MapService, ObservationService, UserService } from 'src/app/upgrade/ajs-upgraded-providers' import { ObservationEditFormPickerComponent } from './observation-edit-form-picker.component' import * as moment from 'moment'; import { ObservationEditDiscardComponent } from './observation-edit-discard/observation-edit-discard.component' @@ -16,8 +15,14 @@ import { MatBottomSheet } from '@angular/material/bottom-sheet' import { AttachmentService, AttachmentUploadEvent, AttachmentUploadStatus } from '../attachment/attachment.service' import { FileUpload } from '../attachment/attachment-upload/attachment-upload.component' import { AttachmentAction } from './observation-edit-attachment/observation-edit-attachment-action' +import { LocalStorageService } from '../../http/local-storage.service' +import { MapService } from 'src/app/map/map.service' +import { UserService } from 'src/app/user/user.service' +import { EventService } from 'src/app/event/event.service' +import { FilterService } from 'src/app/filter/filter.service' +import { ObservationService } from '../observation.service' -export type ObservationFormControl = FormControl & { definition: any } +export type ObservationFormControl = UntypedFormControl & { definition: any } @Component({ selector: 'observation-edit', @@ -56,7 +61,7 @@ export class ObservationEditComponent implements OnInit, OnChanges { @ViewChildren('form') formElements: QueryList event: any - formGroup: FormGroup + formGroup: UntypedFormGroup formDefinitions: any timestampDefinition = { title: '', @@ -97,17 +102,17 @@ export class ObservationEditComponent implements OnInit, OnChanges { sanitizer: DomSanitizer, matIconRegistry: MatIconRegistry, public dialog: MatDialog, - private formBuilder: FormBuilder, + private formBuilder: UntypedFormBuilder, private bottomSheet: MatBottomSheet, private snackBar: MatSnackBar, private attachmentService: AttachmentService, @Inject(DOCUMENT) private document: Document, - @Inject(MapService) private mapService: any, - @Inject(UserService) private userService: any, - @Inject(FilterService) private filterService: any, - @Inject(EventService) private eventService: any, - @Inject(ObservationService) private observationService: any, - @Inject(LocalStorageService) private localStorageService: any) { + private mapService: MapService, + private userService: UserService, + private filterService: FilterService, + private eventService: EventService, + private observationService: ObservationService, + private localStorageService: LocalStorageService) { matIconRegistry.addSvgIcon('handle', sanitizer.bypassSecurityTrustResourceUrl('assets/images/handle-24px.svg')); } @@ -167,16 +172,16 @@ export class ObservationEditComponent implements OnInit, OnChanges { // TODO multi-form build out validators here as well for each form control toFormGroup(observation: any): void { - const timestampControl = new FormControl(moment(observation.properties.timestamp).toDate(), Validators.required); - const geometryControl = new FormControl(observation.geometry, Validators.required); + const timestampControl = new UntypedFormControl(moment(observation.properties.timestamp).toDate(), Validators.required); + const geometryControl = new UntypedFormControl(observation.geometry, Validators.required); - const formArray = new FormArray([]) + const formArray = new UntypedFormArray([]) const observationForms = observation.properties.forms || [] observationForms.forEach(observationForm => { const formDefinition = this.formDefinitions[observationForm.formId] - const fieldGroup = new FormGroup({ - id: new FormControl(observationForm.id), - formId: new FormControl(formDefinition.id) + const fieldGroup = new UntypedFormGroup({ + id: new UntypedFormControl(observationForm.id), + formId: new UntypedFormControl(formDefinition.id) }) formDefinition.fields @@ -184,7 +189,7 @@ export class ObservationEditComponent implements OnInit, OnChanges { .sort((a, b) => a.id - b.id) .forEach(field => { const value = this.isNewObservation ? field.value : observationForm[field.name] - const fieldControl = new FormControl(value, field.required ? Validators.required : null) + const fieldControl = new UntypedFormControl(value, field.required ? Validators.required : null) fieldGroup.addControl(field.name, fieldControl) }) @@ -193,10 +198,10 @@ export class ObservationEditComponent implements OnInit, OnChanges { this.formGroup = this.formBuilder.group({ id: observation.id, - eventId: new FormControl(observation.eventId), - type: new FormControl(observation.type), + eventId: new UntypedFormControl(observation.eventId), + type: new UntypedFormControl(observation.type), geometry: geometryControl, - properties: new FormGroup({ + properties: new UntypedFormGroup({ timestamp: timestampControl, forms: formArray }) @@ -208,9 +213,9 @@ export class ObservationEditComponent implements OnInit, OnChanges { } updatePrimarySecondary(): void { - const forms = this.formGroup.get('properties').get('forms') as FormArray + const forms = this.formGroup.get('properties').get('forms') as UntypedFormArray if (forms.length) { - const primaryFormGroup = forms.at(0) as FormGroup + const primaryFormGroup = forms.at(0) as UntypedFormGroup const definition = this.formDefinitions[primaryFormGroup.get('formId').value] let primaryFieldValue @@ -236,7 +241,7 @@ export class ObservationEditComponent implements OnInit, OnChanges { observation.style = style this.geometryStyle = style - this.mapService.updateFeatureForLayer(observation, 'Observations') + this.mapService.updateFeatureForLayer(observation, 'observations') } } } @@ -256,55 +261,58 @@ export class ObservationEditComponent implements OnInit, OnChanges { delete form.id } - this.eventService.saveObservation(form).then(observation => { - // If this feature was added to the map as a new observation, remove it - // as the event service will add it back to the map based on it new id - // if it passes the current filter. - if (id === 'new') { - this.mapService.removeFeatureFromLayer({ id: id }, 'observations') - } + this.eventService.saveObservation(form).subscribe({ + next: (observation: any) => { + // If this feature was added to the map as a new observation, remove it + // as the event service will add it back to the map based on it new id + // if it passes the current filter. + if (id === 'new') { + this.mapService.removeFeatureFromLayer({ id: id }, 'observations') + } - this.error = null - this.observation = observation - this.formGroup.get('id').setValue(observation.id) - - form.properties.forms.forEach(form => { - const formDefinition = this.formDefinitions[form.formId]; - Object.keys(form).forEach(fieldName => { - const fieldDefinition = formDefinition.fields.find(field => field.name === fieldName); - const value = form[fieldName]; - if (fieldDefinition && fieldDefinition.type === 'attachment' && Array.isArray(value)) { - value.forEach(fieldAttachment => { - const attachment = observation.attachments.find(attachment => { - return !attachment.url && - attachment.name === fieldAttachment.name && - attachment.contentType == fieldAttachment.contentType - }); - - if (fieldAttachment.file && fieldAttachment.action === AttachmentAction.ADD && attachment) { - fieldAttachment.attachmentId = attachment.id - this.uploads.push(attachment) - } - }) - } + this.error = null + this.observation = observation + this.formGroup.get('id').setValue(observation.id) + + form.properties.forms.forEach(form => { + const formDefinition = this.formDefinitions[form.formId]; + Object.keys(form).forEach(fieldName => { + const fieldDefinition = formDefinition.fields.find(field => field.name === fieldName); + const value = form[fieldName]; + if (fieldDefinition && fieldDefinition.type === 'attachment' && Array.isArray(value)) { + value.forEach(fieldAttachment => { + const attachment = observation.attachments.find(attachment => { + return !attachment.url && + attachment.name === fieldAttachment.name && + attachment.contentType == fieldAttachment.contentType + }); + + if (fieldAttachment.file && fieldAttachment.action === AttachmentAction.ADD && attachment) { + fieldAttachment.attachmentId = attachment.id + this.uploads.push(attachment) + } + }) + } + }) }) - }) - if (this.uploads.length) { - this.attachmentUrl = observation.url - } else { - this.close.emit(this.observation) - } - }, err => { - this.formGroup.markAllAsTouched() + if (this.uploads.length) { + this.attachmentUrl = observation.url + } else { + this.close.emit(this.observation) + } + }, + error: (err) => { + this.formGroup.markAllAsTouched() - if (id === 'new') { - this.observation.id = 'new' - } + if (id === 'new') { + this.observation.id = 'new' + } - this.saving = false; - this.error = { - message: err.data.message + this.saving = false; + this.error = { + message: err.data.message + } } }) } @@ -356,19 +364,19 @@ export class ObservationEditComponent implements OnInit, OnChanges { }).afterDismissed().subscribe(form => { if (!form) return - const fieldsGroup = new FormGroup({ - formId: new FormControl(form.id) + const fieldsGroup = new UntypedFormGroup({ + formId: new UntypedFormControl(form.id) }); form.fields .filter(field => !field.archived) .sort((a, b) => a.id - b.id) .forEach(field => { - const fieldControl = new FormControl(field.value, field.required ? Validators.required : null) + const fieldControl = new UntypedFormControl(field.value, field.required ? Validators.required : null) fieldsGroup.addControl(field.name, fieldControl) }); - (this.formGroup.get('properties').get('forms') as FormArray).push(fieldsGroup); + (this.formGroup.get('properties').get('forms') as UntypedFormArray).push(fieldsGroup); this.formElements.changes.pipe(first()).subscribe((queryList: QueryList) => { queryList.last.nativeElement.scrollIntoView({ behavior: 'smooth' }) @@ -376,8 +384,8 @@ export class ObservationEditComponent implements OnInit, OnChanges { }) } - removeForm(formGroup: FormGroup): void { - const formArray = this.formGroup.get('properties').get('forms') as FormArray + removeForm(formGroup: UntypedFormGroup): void { + const formArray = this.formGroup.get('properties').get('forms') as UntypedFormArray const index = formArray.controls.indexOf(formGroup) formArray.removeAt(index) @@ -394,7 +402,7 @@ export class ObservationEditComponent implements OnInit, OnChanges { reorderForm(event: CdkDragDrop): void { if (event.currentIndex === event.previousIndex) return - const forms = (this.formGroup.get('properties').get('forms') as FormArray).controls + const forms = (this.formGroup.get('properties').get('forms') as UntypedFormArray).controls moveItemInArray(forms, event.previousIndex, event.currentIndex) // re-calculate primary/secondary based new first form @@ -427,8 +435,8 @@ export class ObservationEditComponent implements OnInit, OnChanges { case AttachmentUploadStatus.ERROR: { this.snackBar.open(event.response?.error, null, { duration: 4000 }) - const formArray = this.formGroup.get('properties').get('forms') as FormArray - formArray.controls.forEach((formGroup: FormGroup) => { + const formArray = this.formGroup.get('properties').get('forms') as UntypedFormArray + formArray.controls.forEach((formGroup: UntypedFormGroup) => { const formId = formGroup.get('formId').value const formDefinition = this.formDefinitions[formId]; Object.keys(formGroup.controls).forEach(fieldName => { diff --git a/web-app/src/app/observation/observation-favorites/observation-favorites.component.spec.ts b/web-app/src/app/observation/observation-favorites/observation-favorites.component.spec.ts index 1ce6bb1b2..ce4b54680 100644 --- a/web-app/src/app/observation/observation-favorites/observation-favorites.component.spec.ts +++ b/web-app/src/app/observation/observation-favorites/observation-favorites.component.spec.ts @@ -1,13 +1,14 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; import { MatDialogModule, MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog'; import { ObservationFavoritesComponent } from './observation-favorites.component'; +/* TODO test MUST contain 1 test describe('ObservationFavoritesComponent', () => { let component: ObservationFavoritesComponent; let fixture: ComponentFixture; - beforeEach(async(() => { + beforeEach(waitForAsync(() => { TestBed.configureTestingModule({ imports: [MatDialogModule], declarations: [ObservationFavoritesComponent], @@ -30,3 +31,4 @@ describe('ObservationFavoritesComponent', () => { // expect(component).toBeTruthy(); // }); }); +*/ diff --git a/web-app/src/app/observation/observation-favorites/observation-favorites.component.ts b/web-app/src/app/observation/observation-favorites/observation-favorites.component.ts index 552411be4..83429cf72 100644 --- a/web-app/src/app/observation/observation-favorites/observation-favorites.component.ts +++ b/web-app/src/app/observation/observation-favorites/observation-favorites.component.ts @@ -1,6 +1,6 @@ import { Component, Inject } from '@angular/core' import { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog'; -import { EventService, UserService } from 'src/app/upgrade/ajs-upgraded-providers' +import { UserService } from '../../user/user.service'; interface Data { userIds: any @@ -19,8 +19,7 @@ export class ObservationFavoritesComponent { constructor( public dialogRef: MatDialogRef, @Inject(MAT_DIALOG_DATA) public data: Data, - @Inject(UserService) userService: any, - @Inject(EventService) private eventService: any) { + userService: UserService) { this.observation = data.observation diff --git a/web-app/src/app/observation/observation-list/observation-list-item.component.spec.ts b/web-app/src/app/observation/observation-list/observation-list-item.component.spec.ts index c5bc4cba5..e799f1ef6 100644 --- a/web-app/src/app/observation/observation-list/observation-list-item.component.spec.ts +++ b/web-app/src/app/observation/observation-list/observation-list-item.component.spec.ts @@ -1,11 +1,14 @@ import { Component, ViewChild } from '@angular/core'; -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; import { NoopAnimationsModule } from '@angular/platform-browser/animations'; import { GeometryPipe } from 'src/app/geometry/geometry.pipe'; import { MomentPipe } from 'src/app/moment/moment.pipe'; -import { EventService, LocalStorageService, MapService, UserService } from 'src/app/upgrade/ajs-upgraded-providers'; import { ObservationListItemComponent } from './observation-list-item.component'; +import { MapService } from 'src/app/map/map.service'; +import { UserService } from 'src/app/user/user.service'; +import { EventService } from 'src/app/event/event.service'; +import { LocalStorageService } from 'src/app/http/local-storage.service'; class MockMapService {} @@ -91,7 +94,7 @@ describe('ObservationListItemComponent', () => { let hostComponent: TestHostComponent; let fixture: ComponentFixture; - beforeEach(async(() => { + beforeEach(waitForAsync(() => { TestBed.configureTestingModule({ declarations: [ObservationListItemComponent, MomentPipe, GeometryPipe, TestHostComponent ], imports: [ NoopAnimationsModule ], diff --git a/web-app/src/app/observation/observation-list/observation-list-item.component.ts b/web-app/src/app/observation/observation-list/observation-list-item.component.ts index 653c118e5..bd3a02c03 100644 --- a/web-app/src/app/observation/observation-list/observation-list-item.component.ts +++ b/web-app/src/app/observation/observation-list/observation-list-item.component.ts @@ -1,9 +1,12 @@ -import { Component, Inject, Input, OnChanges, SimpleChanges, ViewChild } from '@angular/core' -import { EventService, LocalStorageService, MapService, UserService } from 'src/app/upgrade/ajs-upgraded-providers' +import { Component, Input, OnChanges, SimpleChanges, ViewChild } from '@angular/core' import * as moment from 'moment' import { MatRipple } from '@angular/material/core'; import { animate, style, transition, trigger } from '@angular/animations' -import { FeedPanelService } from 'src/app/feed-panel/feed-panel.service' +import { FeedPanelService } from '../../feed-panel/feed-panel.service' +import { MapService } from '../../map/map.service'; +import { UserService } from '../../user/user.service'; +import { EventService } from '../../event/event.service'; +import { LocalStorageService } from '../../http/local-storage.service'; @Component({ selector: 'observation-list-item', @@ -48,13 +51,11 @@ export class ObservationListItemComponent implements OnChanges { attachments = [] constructor( - @Inject(MapService) private mapService: any, - @Inject(UserService) private userService: any, - @Inject(EventService) private eventService: any, - @Inject(LocalStorageService) private localStorageService: any, - private feedPanelService: FeedPanelService) { - - } + private mapService: MapService, + private userService: UserService, + private eventService: EventService, + private localStorageService: LocalStorageService, + private feedPanelService: FeedPanelService) { } ngOnChanges(changes: SimpleChanges): void { if (changes.event?.currentValue || changes.form?.currentValue || changes.observation?.currentValue) { @@ -69,13 +70,13 @@ export class ObservationListItemComponent implements OnChanges { toggleFavorite(): void { if (this.isUserFavorite) { - this.eventService.removeObservationFavorite(this.observation).then(observation => { + this.eventService.removeObservationFavorite(this.observation).subscribe(observation => { this.observation.favoriteUserIds = observation.favoriteUserIds this.isUserFavorite = false this.updateFavorites() }) } else { - this.eventService.addObservationFavorite(this.observation).then(observation => { + this.eventService.addObservationFavorite(this.observation).subscribe(observation => { this.observation.favoriteUserIds = observation.favoriteUserIds this.isUserFavorite = true this.updateFavorites() @@ -88,13 +89,13 @@ export class ObservationListItemComponent implements OnChanges { } markAsImportant(): void { - this.eventService.markObservationAsImportant(this.observation, { description: this.importantEditor.description }).then(() => { + this.eventService.markObservationAsImportant(this.observation, { description: this.importantEditor.description }).subscribe(() => { this.importantEditor.open = false }) } clearImportant(): void { - this.eventService.clearObservationAsImportant(this.observation).then(() => { + this.eventService.clearObservationAsImportant(this.observation).subscribe(() => { this.importantEditor.open = false delete this.importantEditor.description }) @@ -129,7 +130,7 @@ export class ObservationListItemComponent implements OnChanges { const aclPermissions = myAccess.permissions || [] this.canEditImportant = this.userService.myself.role.permissions.includes('UPDATE_EVENT') || aclPermissions.includes('update') - const formMap = this.eventService.getFormsForEvent(this.event).reduce((map, form) => { + const formMap = this.eventService.getFormsForEvent(this.event, {}).reduce((map, form) => { map[form.id] = form return map }, {}) @@ -143,7 +144,7 @@ export class ObservationListItemComponent implements OnChanges { timestampField: { title: '', type: 'date', - value: moment(this.observation.properties.timestamp).toDate() + value: moment(this.observation?.properties?.timestamp).toDate() }, forms: [] } diff --git a/web-app/src/app/observation/observation-list/observation-list.component.html b/web-app/src/app/observation/observation-list/observation-list.component.html index 31a130534..80a91f131 100644 --- a/web-app/src/app/observation/observation-list/observation-list.component.html +++ b/web-app/src/app/observation/observation-list/observation-list.component.html @@ -17,7 +17,7 @@ Observation Page - {{observationPage[0].properties.timestamp | moment: 'fromNow'}} + {{observationPage[0]?.properties?.timestamp | moment: 'fromNow'}} @@ -27,7 +27,7 @@
- +
diff --git a/web-app/src/app/observation/observation-list/observation-list.component.scss b/web-app/src/app/observation/observation-list/observation-list.component.scss index 1637f66c4..ad03101d5 100644 --- a/web-app/src/app/observation/observation-list/observation-list.component.scss +++ b/web-app/src/app/observation/observation-list/observation-list.component.scss @@ -1,6 +1,16 @@ -@import '~@angular/material/theming'; +@use '@angular/material' as mat; @import "variables.scss"; +:host { + position: absolute; + top: 0; + bottom: 0; + right: 0; + left: 0; + overflow-y: auto; + background: #E1E2E1; +} + .observation-feed { display: flex; flex-direction: column; @@ -9,8 +19,9 @@ } .observation-feed-toolbar { - color: mat-color($app-primary); + color: mat.get-color-from-palette($app-primary); background-color: white; + margin-top: 8px; } .actions { @@ -36,7 +47,7 @@ .page-container { background: #E1E2E1; padding: 8px 0; - flex: 1 1 auto; + flex: 1; overflow-y: auto; } diff --git a/web-app/src/app/observation/observation-list/observation-list.component.spec.ts b/web-app/src/app/observation/observation-list/observation-list.component.spec.ts index 636f8c000..a5f10e5cc 100644 --- a/web-app/src/app/observation/observation-list/observation-list.component.spec.ts +++ b/web-app/src/app/observation/observation-list/observation-list.component.spec.ts @@ -1,12 +1,13 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; import { ObservationListComponent } from './observation-list.component'; +/* TODO test MUST contain at least 1 test describe('ObservationListComponent', () => { let component: ObservationListComponent; let fixture: ComponentFixture; - beforeEach(async(() => { + beforeEach(waitForAsync(() => { TestBed.configureTestingModule({ declarations: [ObservationListComponent ] }) @@ -23,3 +24,4 @@ describe('ObservationListComponent', () => { // expect(component).toBeTruthy(); // }); }); +*/ diff --git a/web-app/src/app/observation/observation-list/observation-list.component.ts b/web-app/src/app/observation/observation-list/observation-list.component.ts index 1ab391eb8..e0b4f5bec 100644 --- a/web-app/src/app/observation/observation-list/observation-list.component.ts +++ b/web-app/src/app/observation/observation-list/observation-list.component.ts @@ -1,6 +1,7 @@ -import { Component, Inject, OnDestroy, OnInit } from '@angular/core'; -import { EventService, FilterService } from 'src/app/upgrade/ajs-upgraded-providers'; +import { Component, OnDestroy, OnInit } from '@angular/core'; import * as moment from 'moment'; +import { EventService } from '../../event/event.service'; +import { FilterService } from '../../filter/filter.service'; @Component({ selector: 'observation-list', @@ -23,8 +24,8 @@ export class ObservationListComponent implements OnInit, OnDestroy { filterChangedListener: any constructor( - @Inject(EventService) private eventService: any, - @Inject(FilterService) private filterService: any) { + private eventService: EventService, + private filterService: FilterService) { } ngOnInit(): void { diff --git a/web-app/src/app/observation/observation-popup/observation-popup.component.spec.ts b/web-app/src/app/observation/observation-popup/observation-popup.component.spec.ts index 7c1273d15..9b2e540aa 100644 --- a/web-app/src/app/observation/observation-popup/observation-popup.component.spec.ts +++ b/web-app/src/app/observation/observation-popup/observation-popup.component.spec.ts @@ -1,12 +1,13 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; import { ObservationPopupComponent } from './observation-popup.component'; +/* TODO test MUST contain at least 1 test describe('ObservationPopupComponent', () => { let component: ObservationPopupComponent; let fixture: ComponentFixture; - beforeEach(async(() => { + beforeEach(waitForAsync(() => { TestBed.configureTestingModule({ declarations: [ ObservationPopupComponent ] }) @@ -23,3 +24,4 @@ describe('ObservationPopupComponent', () => { // expect(component).toBeTruthy(); // }); }); +*/ diff --git a/web-app/src/app/observation/observation-popup/observation-popup.component.ts b/web-app/src/app/observation/observation-popup/observation-popup.component.ts index f08b8a2df..7526841c5 100644 --- a/web-app/src/app/observation/observation-popup/observation-popup.component.ts +++ b/web-app/src/app/observation/observation-popup/observation-popup.component.ts @@ -1,7 +1,8 @@ -import { Component, Inject, Input, OnChanges, OnInit, SimpleChanges } from '@angular/core'; -import { EventService, MapService } from 'src/app/upgrade/ajs-upgraded-providers'; -import { FeedPanelService } from 'src/app/feed-panel/feed-panel.service'; +import { Component, Input, OnChanges, OnInit, SimpleChanges } from '@angular/core'; +import { FeedPanelService } from '../../feed-panel/feed-panel.service'; import * as moment from 'moment'; +import { MapService } from '../../map/map.service'; +import { EventService } from '../../event/event.service'; @Component({ selector: 'observation-map-popup', @@ -20,8 +21,8 @@ export class ObservationPopupComponent implements OnInit, OnChanges { constructor( private feedPanelService: FeedPanelService, - @Inject(MapService) private mapService: any, - @Inject(EventService) private eventService: any) { } + private mapService: MapService, + private eventService: EventService) { } ngOnInit(): void { this.updateView(); diff --git a/web-app/src/app/observation/observation-view/observation-options.component.spec.ts b/web-app/src/app/observation/observation-view/observation-options.component.spec.ts index a62785d8c..ded88194c 100644 --- a/web-app/src/app/observation/observation-view/observation-options.component.spec.ts +++ b/web-app/src/app/observation/observation-view/observation-options.component.spec.ts @@ -1,4 +1,4 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; import { MatBottomSheetRef } from '@angular/material/bottom-sheet'; import { ObservationOptionsComponent } from './observation-options.component'; @@ -7,7 +7,7 @@ describe('ObservationOptionsComponent', () => { let component: ObservationOptionsComponent; let fixture: ComponentFixture; - beforeEach(async(() => { + beforeEach(waitForAsync(() => { TestBed.configureTestingModule({ declarations: [ ObservationOptionsComponent ], providers: [{ diff --git a/web-app/src/app/observation/observation-view/observation-view-attachment/observation-view-attachment.component.spec.ts b/web-app/src/app/observation/observation-view/observation-view-attachment/observation-view-attachment.component.spec.ts index 224479308..ec1c2d25c 100644 --- a/web-app/src/app/observation/observation-view/observation-view-attachment/observation-view-attachment.component.spec.ts +++ b/web-app/src/app/observation/observation-view/observation-view-attachment/observation-view-attachment.component.spec.ts @@ -1,5 +1,5 @@ import { Component, ViewChild } from '@angular/core'; -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; import { ObservationViewAttachmentComponent } from './observation-view-attachment.component'; @@ -17,7 +17,7 @@ describe('ObservationViewAttachmentComponent', () => { let hostComponent: TestHostComponent let fixture: ComponentFixture - beforeEach(async(() => { + beforeEach(waitForAsync(() => { TestBed.configureTestingModule({ declarations: [ObservationViewAttachmentComponent, TestHostComponent] }) diff --git a/web-app/src/app/observation/observation-view/observation-view-checkbox/observation-view-checkbox.component.spec.ts b/web-app/src/app/observation/observation-view/observation-view-checkbox/observation-view-checkbox.component.spec.ts index fe1a17cfa..3ed7ff612 100644 --- a/web-app/src/app/observation/observation-view/observation-view-checkbox/observation-view-checkbox.component.spec.ts +++ b/web-app/src/app/observation/observation-view/observation-view-checkbox/observation-view-checkbox.component.spec.ts @@ -1,4 +1,4 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; import { ObservationViewCheckboxComponent } from './observation-view-checkbox.component'; @@ -6,7 +6,7 @@ describe('ObservationViewCheckboxComponent', () => { let component: ObservationViewCheckboxComponent; let fixture: ComponentFixture; - beforeEach(async(() => { + beforeEach(waitForAsync(() => { TestBed.configureTestingModule({ declarations: [ObservationViewCheckboxComponent ] }) diff --git a/web-app/src/app/observation/observation-view/observation-view-date/observation-view-date.component.spec.ts b/web-app/src/app/observation/observation-view/observation-view-date/observation-view-date.component.spec.ts index 7bc1e4fc7..9c3ce3b77 100644 --- a/web-app/src/app/observation/observation-view/observation-view-date/observation-view-date.component.spec.ts +++ b/web-app/src/app/observation/observation-view/observation-view-date/observation-view-date.component.spec.ts @@ -1,13 +1,14 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; import { MomentPipe } from 'src/app/moment/moment.pipe'; import { ObservationViewDateComponent } from './observation-view-date.component'; +/* TODO test MUST contain at least 1 test describe('ObservationViewDateComponent', () => { let component: ObservationViewDateComponent; let fixture: ComponentFixture; - beforeEach(async(() => { + beforeEach(waitForAsync(() => { TestBed.configureTestingModule({ declarations: [ObservationViewDateComponent, MomentPipe] }) @@ -24,3 +25,4 @@ describe('ObservationViewDateComponent', () => { // expect(component).toBeTruthy(); // }); }); +*/ diff --git a/web-app/src/app/observation/observation-view/observation-view-form.component.scss b/web-app/src/app/observation/observation-view/observation-view-form.component.scss index 406c268dd..43296e05c 100644 --- a/web-app/src/app/observation/observation-view/observation-view-form.component.scss +++ b/web-app/src/app/observation/observation-view/observation-view-form.component.scss @@ -1,4 +1,4 @@ -@import '~@angular/material/theming'; +@use '@angular/material' as mat; @import "variables.scss"; .field { @@ -7,7 +7,7 @@ .header__title { margin-left: -16px; - color: mat-color($app-primary); + color: mat.get-color-from-palette($app-primary); } .form-header { diff --git a/web-app/src/app/observation/observation-view/observation-view-form.component.spec.ts b/web-app/src/app/observation/observation-view/observation-view-form.component.spec.ts index e10fefa79..a220d2253 100644 --- a/web-app/src/app/observation/observation-view/observation-view-form.component.spec.ts +++ b/web-app/src/app/observation/observation-view/observation-view-form.component.spec.ts @@ -1,5 +1,5 @@ import { Component, ViewChild } from '@angular/core'; -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; import { ObservationViewFormComponent } from './observation-view-form.component'; @@ -23,7 +23,7 @@ describe('ObservationViewFormComponent', () => { let hostComponent: TestHostComponent let fixture: ComponentFixture - beforeEach(async(() => { + beforeEach(waitForAsync(() => { TestBed.configureTestingModule({ declarations: [ObservationViewFormComponent, TestHostComponent] }) diff --git a/web-app/src/app/observation/observation-view/observation-view-geometry/observation-view-geometry.component.spec.ts b/web-app/src/app/observation/observation-view/observation-view-geometry/observation-view-geometry.component.spec.ts index dc2b1fd3a..20be08ebb 100644 --- a/web-app/src/app/observation/observation-view/observation-view-geometry/observation-view-geometry.component.spec.ts +++ b/web-app/src/app/observation/observation-view/observation-view-geometry/observation-view-geometry.component.spec.ts @@ -1,13 +1,14 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; import { GeometryPipe } from 'src/app/geometry/geometry.pipe'; import { ObservationViewGeometryComponent } from './observation-view-geometry.component'; +/* TODO test MUST contain at least 1 test describe('ObservationViewGeometryComponent', () => { let component: ObservationViewGeometryComponent; let fixture: ComponentFixture; - beforeEach(async(() => { + beforeEach(waitForAsync(() => { TestBed.configureTestingModule({ declarations: [ObservationViewGeometryComponent, GeometryPipe] }) @@ -24,3 +25,4 @@ describe('ObservationViewGeometryComponent', () => { // expect(component).toBeTruthy(); // }); }); +*/ diff --git a/web-app/src/app/observation/observation-view/observation-view-multiselectdropdown/observation-view-multiselectdropdown.component.spec.ts b/web-app/src/app/observation/observation-view/observation-view-multiselectdropdown/observation-view-multiselectdropdown.component.spec.ts index 3724dd3df..4af679a81 100644 --- a/web-app/src/app/observation/observation-view/observation-view-multiselectdropdown/observation-view-multiselectdropdown.component.spec.ts +++ b/web-app/src/app/observation/observation-view/observation-view-multiselectdropdown/observation-view-multiselectdropdown.component.spec.ts @@ -1,4 +1,4 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; import { ObservationViewMultiselectdropdownComponent } from './observation-view-multiselectdropdown.component'; @@ -6,7 +6,7 @@ describe('ObservationViewMultiselectdropdownComponent', () => { let component: ObservationViewMultiselectdropdownComponent; let fixture: ComponentFixture; - beforeEach(async(() => { + beforeEach(waitForAsync(() => { TestBed.configureTestingModule({ declarations: [ObservationViewMultiselectdropdownComponent ] }) diff --git a/web-app/src/app/observation/observation-view/observation-view-password/observation-view-password.component.spec.ts b/web-app/src/app/observation/observation-view/observation-view-password/observation-view-password.component.spec.ts index d42dd0096..173c90e3f 100644 --- a/web-app/src/app/observation/observation-view/observation-view-password/observation-view-password.component.spec.ts +++ b/web-app/src/app/observation/observation-view/observation-view-password/observation-view-password.component.spec.ts @@ -1,4 +1,4 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; import { ObservationViewPasswordComponent } from './observation-view-password.component'; import { PasswordPipe } from './password.pipe'; @@ -7,7 +7,7 @@ describe('ObservationViewPasswordComponent', () => { let component: ObservationViewPasswordComponent; let fixture: ComponentFixture; - beforeEach(async(() => { + beforeEach(waitForAsync(() => { TestBed.configureTestingModule({ declarations: [ ObservationViewPasswordComponent, PasswordPipe ] }) diff --git a/web-app/src/app/observation/observation-view/observation-view-text/observation-view-text.component.spec.ts b/web-app/src/app/observation/observation-view/observation-view-text/observation-view-text.component.spec.ts index d50d14ebc..9a1cf17e6 100644 --- a/web-app/src/app/observation/observation-view/observation-view-text/observation-view-text.component.spec.ts +++ b/web-app/src/app/observation/observation-view/observation-view-text/observation-view-text.component.spec.ts @@ -1,4 +1,4 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; import { ObservationViewTextComponent } from './observation-view-text.component'; @@ -6,7 +6,7 @@ describe('TextComponent', () => { let component: ObservationViewTextComponent; let fixture: ComponentFixture; - beforeEach(async(() => { + beforeEach(waitForAsync(() => { TestBed.configureTestingModule({ declarations: [ObservationViewTextComponent ] }) diff --git a/web-app/src/app/observation/observation-view/observation-view-textarea/observation-view-textarea.component.spec.ts b/web-app/src/app/observation/observation-view/observation-view-textarea/observation-view-textarea.component.spec.ts index 721d257e6..e38e7abc2 100644 --- a/web-app/src/app/observation/observation-view/observation-view-textarea/observation-view-textarea.component.spec.ts +++ b/web-app/src/app/observation/observation-view/observation-view-textarea/observation-view-textarea.component.spec.ts @@ -1,4 +1,4 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; import { ObservationViewTextareaComponent } from './observation-view-textarea.component'; @@ -6,7 +6,7 @@ describe('ObservationViewTextareaComponent', () => { let component: ObservationViewTextareaComponent; let fixture: ComponentFixture; - beforeEach(async(() => { + beforeEach(waitForAsync(() => { TestBed.configureTestingModule({ declarations: [ObservationViewTextareaComponent ] }) diff --git a/web-app/src/app/observation/observation-view/observation-view.component.html b/web-app/src/app/observation/observation-view/observation-view.component.html index 4d0c5c74e..8135ce0ce 100644 --- a/web-app/src/app/observation/observation-view/observation-view.component.html +++ b/web-app/src/app/observation/observation-view/observation-view.component.html @@ -1,14 +1,11 @@
- + - - - + @@ -126,7 +123,7 @@ -
+
diff --git a/web-app/src/app/observation/observation-view/observation-view.component.scss b/web-app/src/app/observation/observation-view/observation-view.component.scss index 233c8f830..86b2a197c 100644 --- a/web-app/src/app/observation/observation-view/observation-view.component.scss +++ b/web-app/src/app/observation/observation-view/observation-view.component.scss @@ -1,15 +1,10 @@ -.navigation { - display: flex; -} - -.navigation__icon { - margin-right: 24px; +mat-toolbar { + background-color: white; } -.navigation__title { - flex: 1 1 auto; - overflow: hidden; - text-overflow: ellipsis; +.navigation { + display: flex; + justify-content: space-between; } .item-content { diff --git a/web-app/src/app/observation/observation-view/observation-view.component.spec.ts b/web-app/src/app/observation/observation-view/observation-view.component.spec.ts index bf1e6d508..42412e36e 100644 --- a/web-app/src/app/observation/observation-view/observation-view.component.spec.ts +++ b/web-app/src/app/observation/observation-view/observation-view.component.spec.ts @@ -1,13 +1,14 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; import { MatDialogModule } from '@angular/material/dialog'; import { ObservationViewComponent } from './observation-view.component'; +/* TODO test MUST contain at least 1 test describe('ObservationViewComponent', () => { let component: ObservationViewComponent; let fixture: ComponentFixture; - beforeEach(async(() => { + beforeEach(waitForAsync(() => { TestBed.configureTestingModule({ imports: [MatDialogModule], declarations: [ObservationViewComponent] @@ -25,3 +26,4 @@ describe('ObservationViewComponent', () => { // expect(component).toBeTruthy(); // }); }); +*/ diff --git a/web-app/src/app/observation/observation-view/observation-view.component.ts b/web-app/src/app/observation/observation-view/observation-view.component.ts index afd68ebe3..e9a1ead9e 100644 --- a/web-app/src/app/observation/observation-view/observation-view.component.ts +++ b/web-app/src/app/observation/observation-view/observation-view.component.ts @@ -1,13 +1,16 @@ -import { Component, EventEmitter, Inject, Input, OnChanges, Output, SimpleChanges } from '@angular/core'; -import { EventService, LocalStorageService, MapService, UserService } from 'src/app/upgrade/ajs-upgraded-providers'; +import { Component, EventEmitter, Input, OnChanges, Output, SimpleChanges } from '@angular/core'; import { animate, style, transition, trigger } from '@angular/animations'; import { ObservationFavoritesComponent } from '../observation-favorites/observation-favorites.component'; -import { FeedPanelService } from 'src/app/feed-panel/feed-panel.service'; +import { FeedPanelService } from '../../feed-panel/feed-panel.service'; import * as moment from 'moment' import { ObservationOption, ObservationOptionsComponent } from './observation-options.component'; import { ObservationDeleteComponent } from '../observation-delete/observation-delete.component'; import { MatDialog } from '@angular/material/dialog'; import { MatBottomSheet } from '@angular/material/bottom-sheet'; +import { LocalStorageService } from '../../http/local-storage.service'; +import { MapService } from '../../map/map.service'; +import { EventService } from '../../event/event.service'; +import { UserService } from '../../user/user.service'; @Component({ selector: 'observation-view', @@ -44,7 +47,6 @@ export class ObservationViewComponent implements OnChanges { description?: string } = { open: false } - // TODO: define types for these observationForm: any primaryFeedField: any = {} secondaryFeedField: any = {} @@ -52,11 +54,11 @@ export class ObservationViewComponent implements OnChanges { constructor( private dialog: MatDialog, private bottomSheet: MatBottomSheet, - @Inject(MapService) private mapService: any, - @Inject(EventService) private eventService: any, - @Inject(UserService) private userService: any, + private mapService: MapService, + private eventService: EventService, + private userService: UserService, private feedPanelService: FeedPanelService, - @Inject(LocalStorageService) private localStorageService: any + private localStorageService: LocalStorageService ) { } ngOnChanges(changes: SimpleChanges): void { @@ -77,12 +79,12 @@ export class ObservationViewComponent implements OnChanges { toggleFavorite(): void { if (this.isUserFavorite) { - this.eventService.removeObservationFavorite(this.observation).then(observation => { + this.eventService.removeObservationFavorite(this.observation).subscribe(observation => { this.observation.favoriteUserIds = observation.favoriteUserIds this.isUserFavorite = false }); } else { - this.eventService.addObservationFavorite(this.observation).then(observation => { + this.eventService.addObservationFavorite(this.observation).subscribe(observation => { this.observation.favoriteUserIds = observation.favoriteUserIds this.isUserFavorite = true }) @@ -106,13 +108,13 @@ export class ObservationViewComponent implements OnChanges { } markAsImportant(): void { - this.eventService.markObservationAsImportant(this.observation, { description: this.importantEditor.description }).then(() => { + this.eventService.markObservationAsImportant(this.observation, { description: this.importantEditor.description }).subscribe(() => { this.importantEditor.open = false }) } clearImportant(): void { - this.eventService.clearObservationAsImportant(this.observation).then(() => { + this.eventService.clearObservationAsImportant(this.observation).subscribe(() => { this.importantEditor.open = false delete this.importantEditor.description }) @@ -170,7 +172,7 @@ export class ObservationViewComponent implements OnChanges { const aclPermissions = myAccess.permissions || [] this.canEditImportant = this.userService.myself.role.permissions.includes('UPDATE_EVENT') || aclPermissions.includes('update') - const formMap = this.eventService.getFormsForEvent(this.event).reduce((map, form) => { + const formMap = this.eventService.getFormsForEvent(this.event, {}).reduce((map, form) => { map[form.id] = form return map }, {}) diff --git a/web-app/src/app/observation/observation.service.spec.ts b/web-app/src/app/observation/observation.service.spec.ts new file mode 100644 index 000000000..2b19d587a --- /dev/null +++ b/web-app/src/app/observation/observation.service.spec.ts @@ -0,0 +1,20 @@ +import { TestBed } from '@angular/core/testing'; +import { ObservationService } from './observation.service'; +import { HttpClientTestingModule } from '@angular/common/http/testing'; + +describe('Observation Service', () => { + beforeEach(() => { + TestBed.configureTestingModule({ + providers: [ObservationService], + imports: [HttpClientTestingModule] + }); + }); + + afterEach(() => { + }); + + it('should be created', () => { + const service: ObservationService = TestBed.inject(ObservationService); + expect(service).toBeTruthy(); + }); +}); \ No newline at end of file diff --git a/web-app/src/app/observation/observation.service.ts b/web-app/src/app/observation/observation.service.ts new file mode 100644 index 000000000..f0183107b --- /dev/null +++ b/web-app/src/app/observation/observation.service.ts @@ -0,0 +1,207 @@ +import { Injectable } from "@angular/core" +import { LocalStorageService } from "../http/local-storage.service"; +import { HttpClient, HttpParams } from "@angular/common/http"; +import { Observable, map, mergeMap } from "rxjs"; +import * as _ from 'underscore'; +import { MageEvent } from "core-lib-src/event"; + +@Injectable({ + providedIn: 'root' +}) +export class ObservationService { + + constructor( + private client: HttpClient, + private localStorageService: LocalStorageService + ) { } + + getId(eventId: number): Observable { + return this.client.post(`/api/events/${eventId}/observations/id/`, { eventId: eventId }); + } + + getObservation(eventId: string, observationId: string): Observable { + return this.client.get(`/api/events/${eventId}/observations/${observationId}`); + } + + getObservationsForEvent(event: MageEvent, options: any): Observable { + const parameters: any = { eventId: event.id, states: 'active', populate: 'true' }; + if (options.interval) { + parameters.observationStartDate = options.interval.start; + parameters.observationEndDate = options.interval.end; + } + + return this.client.get(`/api/events/${event.id}/observations`, { params: parameters }).pipe( + map((observations: any) => { + return this.transformObservations(observations, event) + }) + ) + } + + saveObservationForEvent(event: MageEvent, observation: any): Observable { + return this.saveObservation(event, observation).pipe( + map((observation) => { + return this.transformObservations(observation, event)[0] + }) + ) + } + + private saveObservation(event: MageEvent, observation: any): Observable { + if (observation.id) { + return this.client.put(`/api/events/${event.id}/observations/${observation.id}`, observation); + } else { + return this.getId(event.id).pipe( + mergeMap(result => { + return this.client.put(`/api/events/${event.id}/observations/${result.id}`, observation); + }) + ) + } + } + + addObservationFavorite(event, observation): Observable { + return this.client.put(`/api/events/${event.id}/observations/${observation.id}/favorite`, observation) + } + + removeObservationFavorite(event, observation): Observable { + return this.client.delete(`/api/events/${event.id}/observations/${observation.id}/favorite`, { body: observation }) + } + + markObservationAsImportantForEvent(event, observation, important): Observable { + return this.client.put(`/api/events/${event.id}/observations/${observation.id}/important`, important) + } + + clearObservationAsImportantForEvent(event, observation): Observable { + return this.client.delete(`/api/events/${event.id}/observations/${observation.id}/important`, { body: observation }) + } + + archiveObservationForEvent(event, observation): Observable { + return this.client.post(`/api/events/${event.id}/observations/${observation.id}/states`, { name: 'archive' }).pipe( + map(() => observation) + ) + } + + addAttachmentToObservationForEvent(event, observation, attachment) { + const attachments = observation.attachments.slice(); + const update = attachments.find(a => a.id === attachment.id); + if (update) { + update.url = attachment.url; + } + + observation.attachments = attachments + } + + deleteAttachmentInObservationForEvent(event, observation, attachment): Observable { + return this.client.delete(`/api/events/${event.id}/observations/${observation.id}/attachments/${attachment.id}`).pipe( + map((response: any) => { + response.attachments = _.reject(observation.attachments, function (a) { return attachment.id === a.id; }); + return response + }) + ) + } + + transformObservations(observations, event) { + if (!_.isArray(observations)) observations = [observations]; + + var formMap = _.indexBy(event.forms, 'id'); + observations.forEach((observation: any) => { + let form: any; + if (observation.properties.forms.length) { + form = formMap[observation.properties.forms[0].formId]; + } + + observation.style = this.getObservationStyleForForm(observation, event, form); + if (observation.geometry.type === 'Polygon') { + this.minimizePolygon(observation.geometry.coordinates); + } else if (observation.geometry.type === 'LineString') { + this.minimizeLineString(observation.geometry.coordinates); + } + }) + + return observations + } + + minimizePolygon(polygon) { + for (var i = 0; i < polygon.length; i++) { + this.minimizeLineString(polygon[i]); + } + } + + minimizeLineString(lineString) { + var world = 360; + var coord = lineString[0]; + for (var i = 1; i < lineString.length; i++) { + var next = lineString[i]; + if (coord[0] < next[0]) { + if (next[0] - coord[0] > coord[0] - next[0] + world) { + next[0] = next[0] - world; + } + } else if (coord[0] > next[0]) { + if (coord[0] - next[0] > next[0] - coord[0] + world) { + next[0] = next[0] + world; + } + } + } + } + + getObservationStyleForForm(observation, event, form) { + var formId = null; + var formStyle = null; + var primaryField = null; + var variantField = null; + + if (observation.properties.forms.length) { + var firstForm = observation.properties.forms[0]; + formId = form.id; + formStyle = form.style; + primaryField = firstForm[form.primaryField]; + variantField = firstForm[form.variantField]; + } + + let style: any = this.getObservationStyle(event.style, formStyle, primaryField, variantField); + style.iconUrl = this.getObservationIconUrlForEvent(event.id, formId, primaryField, variantField); + + return style; + } + + getObservationStyle(eventStyle, formStyle, primary, variant) { + var style = eventStyle || {}; + if (formStyle) { + if (primary && formStyle[primary] && variant && formStyle[primary][variant]) { + style = formStyle[primary][variant]; + } else if (primary && formStyle[primary]) { + style = formStyle[primary]; + } else { + style = formStyle; + } + } + + return { + color: style.stroke, + fillColor: style.fill, + fillOpacity: style.fillOpacity, + opacity: style.strokeOpacity, + weight: style.strokeWidth + }; + } + + getObservationIconUrlForEvent(eventId, formId, primary, variant) { + var url = '/api/events/' + eventId + '/icons'; + + if (formId) { + url += '/' + formId; + } + + if (primary) { + url += '/' + primary; + } + + if (variant) { + url += '/' + variant; + } + + var params = new HttpParams(); + params = params.append('access_token', this.localStorageService.getToken()) + + + return url + '?' + params.toString() + } +} diff --git a/web-app/src/app/preferences/coordinate-system/coordinate-system.component.html b/web-app/src/app/preferences/coordinate-system/coordinate-system.component.html new file mode 100644 index 000000000..2e91088b3 --- /dev/null +++ b/web-app/src/app/preferences/coordinate-system/coordinate-system.component.html @@ -0,0 +1,12 @@ +
+ map +
Coordinate System
+
+ + + + + {{option.title}} + + + diff --git a/web-app/src/app/preferences/coordinate-system/coordinate-system.component.scss b/web-app/src/app/preferences/coordinate-system/coordinate-system.component.scss new file mode 100644 index 000000000..c88d45d9f --- /dev/null +++ b/web-app/src/app/preferences/coordinate-system/coordinate-system.component.scss @@ -0,0 +1,13 @@ +mat-icon { + opacity: .87; +} + +mat-form-field { + width: 100%; +} + +.header { + display: flex; + flex-direction: row; + gap: 8px; +} \ No newline at end of file diff --git a/web-app/src/app/preferences/coordinate-system/coordinate-system.component.spec.ts b/web-app/src/app/preferences/coordinate-system/coordinate-system.component.spec.ts new file mode 100644 index 000000000..d3c01f9cd --- /dev/null +++ b/web-app/src/app/preferences/coordinate-system/coordinate-system.component.spec.ts @@ -0,0 +1,23 @@ +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; +import { CoordinateSystemComponent } from './coordinate-system.component'; + +describe('CoordinateSystemComponent', () => { + let component: CoordinateSystemComponent; + let fixture: ComponentFixture; + + beforeEach(waitForAsync(() => { + TestBed.configureTestingModule({ + declarations: [CoordinateSystemComponent], + imports: [] + }).compileComponents(); + })); + + beforeEach(() => { + fixture = TestBed.createComponent(CoordinateSystemComponent); + component = fixture.componentInstance; + }); + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/web-app/src/app/preferences/coordinate-system/coordinate-system.component.ts b/web-app/src/app/preferences/coordinate-system/coordinate-system.component.ts new file mode 100644 index 000000000..272aebbde --- /dev/null +++ b/web-app/src/app/preferences/coordinate-system/coordinate-system.component.ts @@ -0,0 +1,45 @@ +import { Component, OnInit } from '@angular/core'; +import { MatSelectChange } from '@angular/material/select'; +import { LocalStorageService } from 'src/app/http/local-storage.service'; + +interface CoordinateSystemOption { + title: string + coordinateSystem: 'wgs84' | 'mgrs' | 'dms' +} + +@Component({ + selector: 'coordinate-system', + templateUrl: './coordinate-system.component.html', + styleUrls: ['./coordinate-system.component.scss'] +}) +export class CoordinateSystemComponent implements OnInit { + + coordinateSystemOptions: CoordinateSystemOption[] = [{ + title: 'Lat/Lng', + coordinateSystem: 'wgs84' + },{ + title: 'MGRS', + coordinateSystem: 'mgrs' + },{ + title: 'DMS', + coordinateSystem: 'dms' + }] + coordinateSystemOption: CoordinateSystemOption + + constructor( + private localStorageService: LocalStorageService + ) {} + + ngOnInit(): void { + const coordinateSystem = this.localStorageService.getCoordinateSystemView() + this.coordinateSystemOption = this.coordinateSystemOptions.find((option: CoordinateSystemOption) => option.coordinateSystem === coordinateSystem) + } + + updateCoordinateSystem(change: MatSelectChange) { + this.localStorageService.setTimeFormat(change.value.coordinateSystem); + } + + public compareOption = function (option: CoordinateSystemOption, value: CoordinateSystemOption): boolean { + return option.coordinateSystem === value.coordinateSystem + } +} \ No newline at end of file diff --git a/web-app/src/app/preferences/polling-interval/polling-interval.component.html b/web-app/src/app/preferences/polling-interval/polling-interval.component.html new file mode 100644 index 000000000..e760809c8 --- /dev/null +++ b/web-app/src/app/preferences/polling-interval/polling-interval.component.html @@ -0,0 +1,11 @@ +
+ refresh +
Update Frequency
+
+ + + + {{option.title}} + + + \ No newline at end of file diff --git a/web-app/src/app/preferences/polling-interval/polling-interval.component.scss b/web-app/src/app/preferences/polling-interval/polling-interval.component.scss new file mode 100644 index 000000000..c88d45d9f --- /dev/null +++ b/web-app/src/app/preferences/polling-interval/polling-interval.component.scss @@ -0,0 +1,13 @@ +mat-icon { + opacity: .87; +} + +mat-form-field { + width: 100%; +} + +.header { + display: flex; + flex-direction: row; + gap: 8px; +} \ No newline at end of file diff --git a/web-app/src/app/preferences/polling-interval/polling-interval.component.spec.ts b/web-app/src/app/preferences/polling-interval/polling-interval.component.spec.ts new file mode 100644 index 000000000..07e11aa3f --- /dev/null +++ b/web-app/src/app/preferences/polling-interval/polling-interval.component.spec.ts @@ -0,0 +1,23 @@ +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; +import { PollingIntervalComponent } from './polling-interval.component'; + +describe('PollingIntervalComponent', () => { + let component: PollingIntervalComponent; + let fixture: ComponentFixture; + + beforeEach(waitForAsync(() => { + TestBed.configureTestingModule({ + declarations: [PollingIntervalComponent], + imports: [] + }).compileComponents(); + })); + + beforeEach(() => { + fixture = TestBed.createComponent(PollingIntervalComponent); + component = fixture.componentInstance; + }); + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/web-app/src/app/preferences/polling-interval/polling-interval.component.ts b/web-app/src/app/preferences/polling-interval/polling-interval.component.ts new file mode 100644 index 000000000..b32d09854 --- /dev/null +++ b/web-app/src/app/preferences/polling-interval/polling-interval.component.ts @@ -0,0 +1,57 @@ +import { Component, OnDestroy, OnInit } from '@angular/core'; +import { MatSelectChange } from '@angular/material/select'; +import { PollingService } from '../../event/polling.service'; + +interface PollingOption { + title: string + interval: number +} + +@Component({ + selector: 'polling-interval', + templateUrl: './polling-interval.component.html', + styleUrls: ['./polling-interval.component.scss'] +}) +export class PollingIntervalComponent implements OnInit, OnDestroy { + pollingOptions: PollingOption[] = [{ + title: '5 Seconds', + interval: 5000 + }, { + title: '30 Seconds', + interval: 30000 + },{ + title: '2 Minutes', + interval: 120000 + },{ + title: '5 Minutes', + interval: 300000 + }] + pollingOption: PollingOption + + constructor( + private pollingService: PollingService + ) { + const pollingInterval = pollingService.getPollingInterval() + this.pollingOption = this.pollingOptions.find((option: PollingOption) => option.interval === pollingInterval) + } + + ngOnInit(): void { + this.pollingService.addListener(this) + } + + ngOnDestroy(): void { + this.pollingService.removeListener(this) + } + + updatePollingInterval(change: MatSelectChange) { + this.pollingService.setPollingInterval(change.value.interval) + } + + onPollingIntervalChanged(pollingInterval: number) { + this.pollingOption = this.pollingOptions.find((option: PollingOption) => option.interval === pollingInterval) + } + + public compareOption = function (option, value): boolean { + return option?.interval === value?.interval + } +} \ No newline at end of file diff --git a/web-app/src/app/preferences/preferences.component.html b/web-app/src/app/preferences/preferences.component.html new file mode 100644 index 000000000..a36581242 --- /dev/null +++ b/web-app/src/app/preferences/preferences.component.html @@ -0,0 +1,18 @@ +
+
Preferences
+
+ +
+ +
+ +
+ +
+ +
+ +
+ +
+
diff --git a/web-app/src/app/preferences/preferences.component.scss b/web-app/src/app/preferences/preferences.component.scss new file mode 100644 index 000000000..d0ba23bb2 --- /dev/null +++ b/web-app/src/app/preferences/preferences.component.scss @@ -0,0 +1,66 @@ +@use '@angular/material' as mat; +@import "variables.scss"; + +:host { + display: block; + width: 350px; +} + +mat-icon { + opacity: .87; +} + +.profile { + height: 220px; + padding: 0 16px; + display: flex; + flex-direction: column; + align-items: start; + justify-content: end; + opacity: 1; + cursor: pointer; + background-color: mat.get-color-from-palette($app-primary); +} + +.profile-avatar { + margin-bottom: 16px; +} + +.profile-info { + margin: 4px 0; + color: white; +} + +.header { + margin-top: 16px; + margin-bottom: 24px; + margin-left: 8px; + color: mat.get-color-from-palette($app-primary); +} + +.preferences { + padding: 8px; + opacity: .87; +} + +.preference { + margin: 0 16px; +} + +.divider { + margin: 24px 0; +} + +.preference-item { + display: flex; + flex-direction: row; + align-items: center; + gap: 16px; + padding: 8px 16px; + margin: 8px 0; + cursor: pointer; +} + +.preference-item:hover { + background-color: rgba(0, 0, 0, .04); +} \ No newline at end of file diff --git a/web-app/src/app/preferences/preferences.component.spec.ts b/web-app/src/app/preferences/preferences.component.spec.ts new file mode 100644 index 000000000..959f2815d --- /dev/null +++ b/web-app/src/app/preferences/preferences.component.spec.ts @@ -0,0 +1,23 @@ +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; +import { PreferencesComponent } from './preferences.component'; + +describe('Preferences Component', () => { + let component: PreferencesComponent; + let fixture: ComponentFixture; + + beforeEach(waitForAsync(() => { + TestBed.configureTestingModule({ + declarations: [PreferencesComponent], + imports: [] + }).compileComponents(); + })); + + beforeEach(() => { + fixture = TestBed.createComponent(PreferencesComponent); + component = fixture.componentInstance; + }); + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/web-app/src/app/preferences/preferences.component.ts b/web-app/src/app/preferences/preferences.component.ts new file mode 100644 index 000000000..4fd3270ab --- /dev/null +++ b/web-app/src/app/preferences/preferences.component.ts @@ -0,0 +1,8 @@ +import { Component } from '@angular/core'; + +@Component({ + selector: 'preferences', + templateUrl: './preferences.component.html', + styleUrls: ['./preferences.component.scss'] +}) +export class PreferencesComponent {} \ No newline at end of file diff --git a/web-app/src/app/preferences/time-format/time-format.component.html b/web-app/src/app/preferences/time-format/time-format.component.html new file mode 100644 index 000000000..665fe3168 --- /dev/null +++ b/web-app/src/app/preferences/time-format/time-format.component.html @@ -0,0 +1,12 @@ +
+ schedule +
Time Format
+
+ + + + + {{option.title}} + + + diff --git a/web-app/src/app/preferences/time-format/time-format.component.scss b/web-app/src/app/preferences/time-format/time-format.component.scss new file mode 100644 index 000000000..c88d45d9f --- /dev/null +++ b/web-app/src/app/preferences/time-format/time-format.component.scss @@ -0,0 +1,13 @@ +mat-icon { + opacity: .87; +} + +mat-form-field { + width: 100%; +} + +.header { + display: flex; + flex-direction: row; + gap: 8px; +} \ No newline at end of file diff --git a/web-app/src/app/preferences/time-format/time-format.component.spec.ts b/web-app/src/app/preferences/time-format/time-format.component.spec.ts new file mode 100644 index 000000000..773432d97 --- /dev/null +++ b/web-app/src/app/preferences/time-format/time-format.component.spec.ts @@ -0,0 +1,23 @@ +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; +import { TimeFormatComponent } from './time-format.component'; + +describe('TimeFormat Component', () => { + let component: TimeFormatComponent; + let fixture: ComponentFixture; + + beforeEach(waitForAsync(() => { + TestBed.configureTestingModule({ + declarations: [TimeFormatComponent], + imports: [] + }).compileComponents(); + })); + + beforeEach(() => { + fixture = TestBed.createComponent(TimeFormatComponent); + component = fixture.componentInstance; + }); + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/web-app/src/app/preferences/time-format/time-format.component.ts b/web-app/src/app/preferences/time-format/time-format.component.ts new file mode 100644 index 000000000..d0274beed --- /dev/null +++ b/web-app/src/app/preferences/time-format/time-format.component.ts @@ -0,0 +1,42 @@ +import { Component, OnInit } from '@angular/core'; +import { MatSelectChange } from '@angular/material/select'; +import { LocalStorageService } from 'src/app/http/local-storage.service'; + +interface TimeFormatOption { + title: string + format: 'absolute' | 'relative' +} + +@Component({ + selector: 'time-format', + templateUrl: './time-format.component.html', + styleUrls: ['./time-format.component.scss'] +}) +export class TimeFormatComponent implements OnInit { + + formatOptions: TimeFormatOption[] = [{ + title: 'Absolute', + format: 'absolute' + }, { + title: '30 Seconds', + format: 'relative' + }] + formatOption: TimeFormatOption + + constructor( + private localStorageService: LocalStorageService + ) {} + + ngOnInit(): void { + const format = this.localStorageService.getTimeFormat() + this.formatOption = this.formatOptions.find((option: TimeFormatOption) => option.format === format) + } + + updateTimeFormat(change: MatSelectChange) { + this.localStorageService.setTimeFormat(change.value.format); + } + + public compareFormat = function (option: TimeFormatOption, value: TimeFormatOption): boolean { + return option.format === value.format + } +} \ No newline at end of file diff --git a/web-app/src/app/preferences/time-zone/time-zone.component.html b/web-app/src/app/preferences/time-zone/time-zone.component.html new file mode 100644 index 000000000..cf6f00634 --- /dev/null +++ b/web-app/src/app/preferences/time-zone/time-zone.component.html @@ -0,0 +1,12 @@ +
+ language +
Time Zone
+
+ + + + + {{option.title}} + + + diff --git a/web-app/src/app/preferences/time-zone/time-zone.component.scss b/web-app/src/app/preferences/time-zone/time-zone.component.scss new file mode 100644 index 000000000..c88d45d9f --- /dev/null +++ b/web-app/src/app/preferences/time-zone/time-zone.component.scss @@ -0,0 +1,13 @@ +mat-icon { + opacity: .87; +} + +mat-form-field { + width: 100%; +} + +.header { + display: flex; + flex-direction: row; + gap: 8px; +} \ No newline at end of file diff --git a/web-app/src/app/preferences/time-zone/time-zone.component.spec.ts b/web-app/src/app/preferences/time-zone/time-zone.component.spec.ts new file mode 100644 index 000000000..9fde9489a --- /dev/null +++ b/web-app/src/app/preferences/time-zone/time-zone.component.spec.ts @@ -0,0 +1,23 @@ +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; +import { TimeZoneComponent } from './time-zone.component'; + +describe('TimeZone Component', () => { + let component: TimeZoneComponent; + let fixture: ComponentFixture; + + beforeEach(waitForAsync(() => { + TestBed.configureTestingModule({ + declarations: [TimeZoneComponent], + imports: [] + }).compileComponents(); + })); + + beforeEach(() => { + fixture = TestBed.createComponent(TimeZoneComponent); + component = fixture.componentInstance; + }); + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/web-app/src/app/preferences/time-zone/time-zone.component.ts b/web-app/src/app/preferences/time-zone/time-zone.component.ts new file mode 100644 index 000000000..ca717da6d --- /dev/null +++ b/web-app/src/app/preferences/time-zone/time-zone.component.ts @@ -0,0 +1,42 @@ +import { Component, OnInit } from '@angular/core'; +import { MatSelectChange } from '@angular/material/select'; +import { LocalStorageService } from 'src/app/http/local-storage.service'; + +interface TimeZoneOption { + title: string + timezone: 'local' | 'gmt' +} + +@Component({ + selector: 'time-zone', + templateUrl: './time-zone.component.html', + styleUrls: ['./time-zone.component.scss'] +}) +export class TimeZoneComponent implements OnInit { + + timezoneOptions: TimeZoneOption[] = [{ + title: 'Local', + timezone: 'local' + }, { + title: 'GMT', + timezone: 'gmt' + }] + timezoneOption: TimeZoneOption + + constructor( + private localStorageService: LocalStorageService + ) {} + + ngOnInit(): void { + const timezone = this.localStorageService.getTimeZoneView() + this.timezoneOption = this.timezoneOptions.find((option: TimeZoneOption) => option.timezone === timezone) + } + + updateTimeZone(change: MatSelectChange) { + this.localStorageService.setTimeZoneView(change.value.timezone); + } + + public compareOption = function (option: TimeZoneOption, value: TimeZoneOption): boolean { + return option.timezone === value.timezone + } +} \ No newline at end of file diff --git a/web-app/src/app/routing.module.ts b/web-app/src/app/routing.module.ts new file mode 100644 index 000000000..7658db64f --- /dev/null +++ b/web-app/src/app/routing.module.ts @@ -0,0 +1,40 @@ +import { NgModule } from '@angular/core'; +import { RouterModule, Routes } from '@angular/router'; + +const appRoutes: Routes =[{ + path: 'landing', + loadChildren: () => import('./landing/landing.module').then(m => m.LandingModule) + },{ + path: 'home', + loadChildren: () => import('./home/home.module').then(m => m.HomeModule) + },{ + path: 'about', + loadChildren: () => import('./about/about.module').then(m => m.AboutModule) + },{ + path: 'profile', + loadChildren: () => import('./user/profile/profile.module').then(m => m.ProfileModule) + },{ + path: 'swagger', + loadChildren: () => import('./swagger/swagger.module').then(m => m.SwaggerModule) + },{ + path: '', + redirectTo: 'landing', + pathMatch: 'full' + }, { + path: '**', + redirectTo: 'landing' + } +]; + +@NgModule({ + imports: [ + RouterModule.forRoot( + appRoutes, + // { enableTracing: true } // <-- debugging purposes only + ) + ], + exports: [ + RouterModule + ] +}) +export class AppRoutingModule { } \ No newline at end of file diff --git a/web-app/src/app/setttings/settings.service.spec.ts b/web-app/src/app/setttings/settings.service.spec.ts new file mode 100644 index 000000000..a31e83f4f --- /dev/null +++ b/web-app/src/app/setttings/settings.service.spec.ts @@ -0,0 +1,31 @@ +import { HttpClient } from '@angular/common/http'; +import { HttpTestingController, HttpClientTestingModule } from '@angular/common/http/testing'; +import { TestBed } from '@angular/core/testing'; +import { ExportService } from '../export/export.service'; +import { SettingsService } from './settings.service'; + +describe('Settings Service Tests', () => { + let httpClient: HttpClient; + let httpTestingController: HttpTestingController; + + beforeEach(() => { + TestBed.configureTestingModule({ + providers: [ExportService], + imports: [HttpClientTestingModule] + }); + + // Inject the http service and test controller for each test + httpClient = TestBed.inject(HttpClient); + httpTestingController = TestBed.inject(HttpTestingController); + }); + + afterEach(() => { + // After every test, assert that there are no more pending requests. + httpTestingController.verify(); + }); + + it('should be created', () => { + const service: SettingsService = TestBed.inject(SettingsService); + expect(service).toBeTruthy(); + }); +}); \ No newline at end of file diff --git a/web-app/src/app/setttings/settings.service.ts b/web-app/src/app/setttings/settings.service.ts new file mode 100644 index 000000000..e319df325 --- /dev/null +++ b/web-app/src/app/setttings/settings.service.ts @@ -0,0 +1,46 @@ +import { HttpClient } from "@angular/common/http"; +import { Injectable } from "@angular/core"; +import { filter, map, Observable } from "rxjs"; + +interface Setting { + type: string + settings: object +} + +export interface Banners { + header?: Banner, + footer?: Banner +} + +export interface Banner { + text: string + color: string + backgroundColor: string +} + +@Injectable({ + providedIn: 'root' +}) +export class SettingsService { + constructor(private httpClient: HttpClient) { } + + getBanner(): Observable { + return this.httpClient.get('/api/settings/banner') + .pipe(filter(Boolean)) + .pipe(map((setting: Setting) => { + const banner = setting.settings as any + return { + header: banner.showHeader ? { + text: banner.headerText, + color: banner.headerTextColor, + backgroundColor: banner.headerBackgroundColor + } : undefined, + footer: banner.showFooter ? { + text: banner.footerText, + color: banner.footerTextColor, + backgroundColor: banner.footerBackgroundColor + } : undefined + } + })) + } +} \ No newline at end of file diff --git a/web-app/src/app/swagger/mage.auth.plugin.js b/web-app/src/app/swagger/mage.auth.plugin.js deleted file mode 100644 index 8f2fe293b..000000000 --- a/web-app/src/app/swagger/mage.auth.plugin.js +++ /dev/null @@ -1,60 +0,0 @@ -import { createSelector } from 'reselect'; - -const SECURITY_SCHEME_NAME = 'mageToken'; -const EVENT_AUTH_ERROR = 'mage.auth_err'; - -const mageAuthPluginGetSystem = function() { - return this; -}; - -const mageAuthPluginAfterLoad = function(system) { - window.addEventListener(EVENT_AUTH_ERROR, this.onAuthErr.bind(this)); - this.unsubscribeStore = system.getStore().subscribe(this.checkTokenWhenStoreReady.bind(this)); -}; - -export default class MageAuthPlugin { - - constructor(system) { - this.systemRef = mageAuthPluginGetSystem.bind(system); - this.afterLoad = mageAuthPluginAfterLoad.bind(this); - const mageScheme = createSelector(system.authSelectors.definitionsToAuthorize, defList => { - return defList.find(securityScheme => securityScheme.has(SECURITY_SCHEME_NAME)); - }); - const mageToken = createSelector(system.authSelectors.authorized, scheme => scheme.getIn([SECURITY_SCHEME_NAME, 'value'])); - this.statePlugins = { - mageAuth: { - selectors: { - mageScheme, - mageToken - } - } - }; - } - - checkTokenWhenStoreReady() { - const { authActions, mageAuthSelectors } = this.getSystem(); - const scheme = mageAuthSelectors.mageScheme(); - if (!scheme) { - return; - } - this.unsubscribeStore(); - const token = window.localStorage.getItem('token'); - if (token) { - authActions.authorize({ - [SECURITY_SCHEME_NAME]: { - name: SECURITY_SCHEME_NAME, - schema: scheme.get(SECURITY_SCHEME_NAME), - value: token - } - }); - } - } - - getSystem() { - return this.systemRef(); - } - - onAuthErr(e) { - console.log(e); - } -} \ No newline at end of file diff --git a/web-app/src/app/swagger/swagger.component.html b/web-app/src/app/swagger/swagger.component.html index 6ab59d789..4e191d82d 100644 --- a/web-app/src/app/swagger/swagger.component.html +++ b/web-app/src/app/swagger/swagger.component.html @@ -1 +1,11 @@ -
+ +
+ + + Mage Swagger API +
+
+ +
\ No newline at end of file diff --git a/web-app/src/app/swagger/swagger.component.scss b/web-app/src/app/swagger/swagger.component.scss index 66f1205ee..9f5c34782 100644 --- a/web-app/src/app/swagger/swagger.component.scss +++ b/web-app/src/app/swagger/swagger.component.scss @@ -1,19 +1,10 @@ -:host ::ng-deep pre { - background-color: unset; - border: unset; - border-radius: unset; +.container { + display: flex; + flex-direction: row; + align-items: center; + justify-content: center; } -:host ::ng-deep .loading::after { - width: unset; - height: unset; - animation: unset; -} - -:host ::ng-deep .scheme-container { - display: none; -} - -:host ::ng-deep .info { - margin: 50px 0 16px; +.title { + margin-left: 16px; } \ No newline at end of file diff --git a/web-app/src/app/swagger/swagger.component.spec.ts b/web-app/src/app/swagger/swagger.component.spec.ts index 64d90a530..864b41402 100644 --- a/web-app/src/app/swagger/swagger.component.spec.ts +++ b/web-app/src/app/swagger/swagger.component.spec.ts @@ -8,9 +8,9 @@ describe('SwaggerComponent', () => { beforeEach(async(() => { TestBed.configureTestingModule({ - declarations: [ SwaggerComponent ] + declarations: [SwaggerComponent] }) - .compileComponents(); + .compileComponents(); })); beforeEach(() => { @@ -22,4 +22,4 @@ describe('SwaggerComponent', () => { it('should create', () => { expect(component).toBeTruthy(); }); -}); +}); \ No newline at end of file diff --git a/web-app/src/app/swagger/swagger.component.ts b/web-app/src/app/swagger/swagger.component.ts index 8772707b4..420a2902d 100644 --- a/web-app/src/app/swagger/swagger.component.ts +++ b/web-app/src/app/swagger/swagger.component.ts @@ -1,8 +1,9 @@ -import {AfterViewInit, Component, ElementRef} from '@angular/core'; +import { AfterViewInit, Component, ElementRef } from '@angular/core'; +import { LocalStorageService } from '../http/local-storage.service'; import SwaggerUI from 'swagger-ui'; -import MageAuthPlugin from './mage.auth.plugin.js'; +import { Router } from '@angular/router'; -const DisableAuthorizePlugin = function() { +const DisableAuthorizePlugin = function () { return { wrapComponents: { AuthorizeBtnContainer: () => () => null, @@ -12,18 +13,18 @@ const DisableAuthorizePlugin = function() { }; }; -function MageAuthorizePlugin(system) { - return new MageAuthPlugin(system); -}; - @Component({ - selector: 'app-swagger', + selector: 'swagger', templateUrl: './swagger.component.html', styleUrls: ['./swagger.component.scss'] }) export class SwaggerComponent implements AfterViewInit { - constructor(private el: ElementRef) { + constructor( + private el: ElementRef, + private router: Router, + private localStorageService: LocalStorageService + ) { } ngAfterViewInit() { @@ -31,7 +32,15 @@ export class SwaggerComponent implements AfterViewInit { url: '/api/docs/openapi.yaml', domNode: this.el.nativeElement.querySelector('.swagger-container'), deepLinking: false, - plugins: [MageAuthorizePlugin, DisableAuthorizePlugin] + plugins: [DisableAuthorizePlugin], + requestInterceptor: (request) => { + request.headers['Authorization'] = `Bearer ${this.localStorageService.getToken()}` + return request + }, }); } -} + + onBack() : void { + this.router.navigate(['about']); + } +} \ No newline at end of file diff --git a/web-app/src/app/swagger/swagger.module.ts b/web-app/src/app/swagger/swagger.module.ts new file mode 100644 index 000000000..5b15cc371 --- /dev/null +++ b/web-app/src/app/swagger/swagger.module.ts @@ -0,0 +1,37 @@ +import { NgModule } from "@angular/core"; +import { SwaggerComponent } from "./swagger.component"; +import { RouterModule, Routes } from "@angular/router"; +import { MatIconModule } from "@angular/material/icon"; +import { CommonModule } from "@angular/common"; +import { MatButtonModule } from "@angular/material/button"; +import { MatToolbarModule } from "@angular/material/toolbar"; + +const routes: Routes = [{ + path: '', + component: SwaggerComponent +}]; + +@NgModule({ + declarations: [], + imports: [], + exports: [ + CommonModule, + MatButtonModule, + MatIconModule, + MatToolbarModule + ] +}) +class AngularModule { } + +@NgModule({ + declarations: [ + SwaggerComponent + ], + imports: [ + AngularModule, + RouterModule.forChild(routes) + ], + exports: [ RouterModule ] +}) +export class SwaggerModule { +} \ No newline at end of file diff --git a/web-app/src/app/user/location/location.service.spec.ts b/web-app/src/app/user/location/location.service.spec.ts new file mode 100644 index 000000000..ef566b3c2 --- /dev/null +++ b/web-app/src/app/user/location/location.service.spec.ts @@ -0,0 +1,22 @@ + +import { TestBed } from '@angular/core/testing'; +import { LocationService } from './location.service'; +import { HttpClientTestingModule } from '@angular/common/http/testing'; + +describe('Location Service Tests', () => { + + beforeEach(() => { + TestBed.configureTestingModule({ + providers: [LocationService], + imports: [HttpClientTestingModule] + }); + }); + + afterEach(() => { + }); + + it('should be created', () => { + const service: LocationService = TestBed.inject(LocationService); + expect(service).toBeTruthy(); + }); +}); \ No newline at end of file diff --git a/web-app/src/app/user/location/location.service.ts b/web-app/src/app/user/location/location.service.ts new file mode 100644 index 000000000..341116c2b --- /dev/null +++ b/web-app/src/app/user/location/location.service.ts @@ -0,0 +1,45 @@ +import { HttpClient } from "@angular/common/http"; +import { Injectable } from "@angular/core" +import { groupBy } from "lodash"; +import { Observable } from "rxjs"; + +@Injectable({ + providedIn: 'root' +}) +export class LocationService { + + // Specify times in milliseconds + colorBuckets = [{ + min: Number.NEGATIVE_INFINITY, + max: 600000, + color: '#0000FF' // blue + }, { + min: 600001, + max: 1800000, + color: '#FFFF00' // yellow + }, { + min: 1800001, + max: Number.MAX_VALUE, + color: '#FF5721' // orange + }]; + + constructor( + private httpClient: HttpClient + ) {} + + create(eventId: number, location: any): Observable { + return this.httpClient.post(`/api/events/${eventId}/locations/`, location) + } + + getUserLocationsForEvent(event: any, options?: any): Observable { + const parameters = { + groupBy: 'users', + populate: true, + ...(options?.interval?.start) && { startDate: options.interval.start }, + ...(options?.interval?.end) && { endDate: options.interval.end } + } + + return this.httpClient.get(`/api/events/${event.id}/locations/users`, { params: parameters } ) + } + +} \ No newline at end of file diff --git a/web-app/src/app/user/password/password-reset-success-dialog.html b/web-app/src/app/user/password/password-reset-success-dialog.html new file mode 100644 index 000000000..a925cd00b --- /dev/null +++ b/web-app/src/app/user/password/password-reset-success-dialog.html @@ -0,0 +1,9 @@ +
+ check_circle +
Password Changed
+

Your password has been changed successfully.

+
+ +
+ +
\ No newline at end of file diff --git a/web-app/src/app/user/password/password-reset-success-dialog.scss b/web-app/src/app/user/password/password-reset-success-dialog.scss new file mode 100644 index 000000000..3208bc439 --- /dev/null +++ b/web-app/src/app/user/password/password-reset-success-dialog.scss @@ -0,0 +1,17 @@ +.content { + display: flex; + flex-direction: column; + align-items: center; + margin: 48px 0; +} + +.title { + font: 400 20px / 32px Roboto, "Helvetica Neue", sans-serif; +} + +.icon { + color: #4CAF50; + font-size: 96px; + font-variation-settings: 'fill' 0, 'wght' 200, 'grad' 0, 'opsz' 96; + margin-bottom: 32px; +} \ No newline at end of file diff --git a/web-app/src/app/user/password/password-reset-success-dialog.spec.ts b/web-app/src/app/user/password/password-reset-success-dialog.spec.ts new file mode 100644 index 000000000..a178c76d2 --- /dev/null +++ b/web-app/src/app/user/password/password-reset-success-dialog.spec.ts @@ -0,0 +1,28 @@ +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; +import { PasswordResetSuccessDialog } from './password-reset-success-dialog'; +import { MatDialogModule, MatDialogRef } from '@angular/material/dialog'; + +describe('Password Reset Success Component', () => { + let component: PasswordResetSuccessDialog; + let fixture: ComponentFixture; + + beforeEach(waitForAsync(() => { + TestBed.configureTestingModule({ + declarations: [PasswordResetSuccessDialog], + imports: [MatDialogModule], + providers: [{ + provide: MatDialogRef, + useValue: {} + }] + }).compileComponents(); + })); + + beforeEach(() => { + fixture = TestBed.createComponent(PasswordResetSuccessDialog); + component = fixture.componentInstance; + }); + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/web-app/src/app/user/password/password-reset-success-dialog.ts b/web-app/src/app/user/password/password-reset-success-dialog.ts new file mode 100644 index 000000000..3db21969d --- /dev/null +++ b/web-app/src/app/user/password/password-reset-success-dialog.ts @@ -0,0 +1,15 @@ +import { Component } from '@angular/core'; +import { MatDialogRef } from '@angular/material/dialog'; + +@Component({ + selector: 'password-reset-dialog', + templateUrl: './password-reset-success-dialog.html', + styleUrls: ['./password-reset-success-dialog.scss'] +}) +export class PasswordResetSuccessDialog { + + constructor( + public dialogRef: MatDialogRef, + ) {} + +} \ No newline at end of file diff --git a/web-app/src/app/user/profile/profile.component.html b/web-app/src/app/user/profile/profile.component.html new file mode 100644 index 000000000..c3f1bf508 --- /dev/null +++ b/web-app/src/app/user/profile/profile.component.html @@ -0,0 +1,118 @@ + + + + +
+
+ +
General Information
+ +
+
+
+ + +
+
+ +
+
+ +
+ + Username + + + + + Display Name + + +
+ +
+ + Email + + + + + Phone + + +
+
+ +
+ error +

{{infoError}}

+
+ +
+ + +
+
+ + +
+
Password
+
It's a good idea to use a strong password that you're not using elsewhere.
+
+ +
+ + Type your current password + + Current password is required + Invalid password +
Password is required.
+
+ + + Type your new password + + New password is required + Passwords must match + + + + Confirm your new password + + New password confirmation is required + +
+ +
+
+
Password Strengh
+
{{passwordStrength?.text}}
+
+ +
+ +
+ error +

{{passwordError}}

+
+ +
+ + +
+
+
+ +
+ +
+ +
diff --git a/web-app/src/app/user/profile/profile.component.scss b/web-app/src/app/user/profile/profile.component.scss new file mode 100644 index 000000000..ee4e951a8 --- /dev/null +++ b/web-app/src/app/user/profile/profile.component.scss @@ -0,0 +1,133 @@ +// Custom Theming for Angular Material +mat-form-field { + width: 100%; + margin-bottom: 8px; +} + +.mat-h1 { + margin: unset; +} + +.mat-caption { + opacity: .6; +} + +.navigation { + display: flex; + flex-direction: row; + align-items: center; + justify-content: center; +} + +.navigation-title { + margin-left: 16px; +} + +.container { + position: relative; +} + +.cards { + margin: auto; + max-width: 1200px; + padding: 16px 0; +} + +.card { + margin: 16px 0; + display: flex; + flex-direction: column; + gap: 16px; +} + +.avatar-container { + width: 140px; + height: 140px; + position: relative; + display: flex; + margin-bottom: 16px; +} + +.avatar { + width: 120px; + height: 120px; + display: flex; + align-items: center; + justify-content: center; + border-radius: 60px; +} + +.avatar-container__button { + position: absolute; + bottom: 20px; + right: 20px; + background-color: rgb(245, 245, 245); + width: 40px; + height: 40px; + border-radius: 20px; +} + +.avatar-add__background { + position: absolute; + bottom: 12px; + right: 12px; + background-color: rgb(245, 245, 245); + width: 40px; + height: 40px; + border-radius: 20px; +} + +.avatar-add__icon { + position: absolute; + bottom: 14px; + right: 14px; + display: flex; + align-items: center; + justify-content: center; + width: 36px; + height: 36px; +} + +.row { + display: flex; + flex-direction: row; + align-items: center; + gap: 16px; +} + +.actions { + width: 100%; + display: flex; + flex-direction: row; + gap: 16px; + justify-content: end; +} + +.password-strength { + display: flex; + flex-direction: row; + align-items: center; + gap: 4px; + margin-bottom: 8px; +} + +.error { + display: flex; + flex-direction: row; + align-items: center; + gap: 16px; + color: rgb(171, 48, 34); +} + +.error__text { + flex: 1; +} + +.mask { + position: absolute; + top: 0; + bottom: 0; + left: 0; + right: 0; + background-color: rgba(0, 0, 0, .1); +} \ No newline at end of file diff --git a/web-app/src/app/user/profile/profile.component.spec.ts b/web-app/src/app/user/profile/profile.component.spec.ts new file mode 100644 index 000000000..2111d6d1f --- /dev/null +++ b/web-app/src/app/user/profile/profile.component.spec.ts @@ -0,0 +1,28 @@ +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; +import { ProfileComponent } from './profile.component'; +import { MatDialogModule } from '@angular/material/dialog'; +import { HttpClientTestingModule } from '@angular/common/http/testing'; + +describe('Profile Component', () => { + let component: ProfileComponent; + let fixture: ComponentFixture; + + beforeEach(waitForAsync(() => { + TestBed.configureTestingModule({ + declarations: [ProfileComponent], + imports: [ + HttpClientTestingModule, + MatDialogModule + ] + }).compileComponents(); + })); + + beforeEach(() => { + fixture = TestBed.createComponent(ProfileComponent); + component = fixture.componentInstance; + }); + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/web-app/src/app/user/profile/profile.component.ts b/web-app/src/app/user/profile/profile.component.ts new file mode 100644 index 000000000..43fe3ff0b --- /dev/null +++ b/web-app/src/app/user/profile/profile.component.ts @@ -0,0 +1,152 @@ +import { Component, OnInit } from '@angular/core'; +import { UserService } from '../../user/user.service'; +import { FormControl, FormGroup, Validators } from '@angular/forms'; +import { Router } from '@angular/router'; +import { HttpEvent, HttpEventType } from '@angular/common/http'; +import { zxcvbn, zxcvbnOptions } from '@zxcvbn-ts/core' +import * as zxcvbnCommonPackage from '@zxcvbn-ts/language-common' +import * as zxcvbnEnPackage from '@zxcvbn-ts/language-en' +import { MatDialog } from '@angular/material/dialog'; +import { PasswordResetSuccessDialog } from '../password/password-reset-success-dialog'; +import { PasswordStrength, passwordStrengthScores } from '../../entities/entities.password'; + +@Component({ + selector: 'profile', + templateUrl: './profile.component.html', + styleUrls: ['./profile.component.scss'] +}) +export class ProfileComponent implements OnInit { + user: any + avatar: any + saving = false + + info = new FormGroup({ + username: new FormControl({ value: '', disabled: true }, []), + displayName: new FormControl('', [Validators.required]), + email: new FormControl('', [Validators.email]), + phone: new FormControl('', []), + }) + infoError?: string + + password = new FormGroup({ + currentPassword: new FormControl('', [Validators.required]), + newPassword: new FormControl('', [Validators.required]), + newPasswordConfirm: new FormControl('', [Validators.required]) + }) + passwordError?: string + + passwordStrength?: PasswordStrength + + constructor( + public dialog: MatDialog, + private router: Router, + private userService: UserService, + ) { } + + ngOnInit(): void { + this.user = this.userService.myself + this.setInfo(this.user) + + zxcvbnOptions.setOptions({ + dictionary: { + ...zxcvbnCommonPackage.dictionary, + ...zxcvbnEnPackage.dictionary, + }, + graphs: zxcvbnCommonPackage.adjacencyGraphs, + translations: zxcvbnEnPackage.translations, + }) + } + + onSave(): void { + this.saving = true + + this.userService.saveProfile({ + avatar: this.avatar, + displayName: this.info.controls.displayName.value, + email: this.info.controls.email.value, + phone: this.info.controls.phone.value, + }).subscribe({ + next: (event: HttpEvent) => { + if (event.type === HttpEventType.Response) { + this.saving = false + this.user = event.body + } + }, + error: () => { + this.infoError = 'Error updating profile, please try again later.' + } + }) + } + + onAvatar(event: any) { + const file: File = event.target.files[0]; + if (file) { + this.avatar = file; + } + } + + onPasswordChanged(password: string) { + if (password && password.length > 0) { + const score = password && password.length ? zxcvbn(password, [this.user.username, this.user.displayName, this.user.email]).score : 0; + this.passwordStrength = passwordStrengthScores[score] + } else { + this.passwordStrength = passwordStrengthScores[0] + } + } + + onCancelPassword(): void { + this.password.setValue({ + currentPassword: "", + newPassword: "", + newPasswordConfirm: "" + }) + this.password.markAsUntouched() + } + + onResetPassword(): void { + if (this.password.controls.newPassword.value !== this.password.controls.newPasswordConfirm.value) { + this.password.controls.newPassword.setErrors({ matches: true }); + } else { + this.password.controls.newPassword.setErrors(null); + } + this.password.markAllAsTouched() + if (this.password.valid) { + this.userService.updatePassword(this.password.controls.currentPassword.value, this.password.controls.newPassword.value).subscribe({ + next: () => { + const dialogRef = this.dialog.open(PasswordResetSuccessDialog, { + disableClose: true, + autoFocus: false + }) + dialogRef.afterClosed().subscribe(() => { + this.router.navigate(['landing']) + }) + }, + error: (response) => { + if (response.status === 401) { + this.password.controls.currentPassword.setErrors({invalid: true}) + } else { + this.passwordError = response.error + } + } + }) + } + } + + onCancel(): void { + this.setInfo(this.user) + } + + onBack(): void { + this.router.navigate(['home']) + } + + private setInfo(user: any) { + this.info.setValue({ + username: user.username, + displayName: user.displayName, + email: user.email || "", + phone: user.phone || "" + }) + } + +} \ No newline at end of file diff --git a/web-app/src/app/user/profile/profile.module.ts b/web-app/src/app/user/profile/profile.module.ts new file mode 100644 index 000000000..a496910bb --- /dev/null +++ b/web-app/src/app/user/profile/profile.module.ts @@ -0,0 +1,52 @@ +import { NgModule } from '@angular/core'; +import { CommonModule } from '@angular/common'; +import { ProfileComponent } from './profile.component'; +import { UserAvatarModule } from '../user-avatar/user-avatar.module'; +import { UserResolver } from '../../ingress/user.resolver'; +import { RouterModule, Routes } from '@angular/router'; +import { MatToolbarModule } from '@angular/material/toolbar'; +import { MatIconModule } from '@angular/material/icon'; +import { MatCardModule } from '@angular/material/card'; +import { MatFormFieldModule } from '@angular/material/form-field'; +import { ReactiveFormsModule } from '@angular/forms'; +import { MatProgressBarModule } from '@angular/material/progress-bar'; +import { MatInputModule } from '@angular/material/input'; +import { MatButtonModule } from '@angular/material/button'; + +const routes: Routes = [{ + path: '', + component: ProfileComponent, + resolve: { + user: UserResolver + } +}]; + +@NgModule({ + declarations: [], + imports: [], + exports: [ + CommonModule, + MatButtonModule, + MatCardModule, + MatFormFieldModule, + MatIconModule, + MatInputModule, + MatProgressBarModule, + MatToolbarModule, + ReactiveFormsModule + ] +}) +class AngularModule { } + +@NgModule({ + declarations: [ + ProfileComponent + ], + imports: [ + AngularModule, + UserAvatarModule, + RouterModule.forChild(routes) + ], + exports: [ RouterModule ] +}) +export class ProfileModule { } \ No newline at end of file diff --git a/web-app/src/app/user/team.service.spec.ts b/web-app/src/app/user/team.service.spec.ts new file mode 100644 index 000000000..a0bb0e50b --- /dev/null +++ b/web-app/src/app/user/team.service.spec.ts @@ -0,0 +1,21 @@ +import { TestBed } from '@angular/core/testing'; + +import { TeamService } from './team.service'; +import { HttpClientTestingModule } from '@angular/common/http/testing'; + +describe('Team Service Tests', () => { + beforeEach(() => { + TestBed.configureTestingModule({ + providers: [TeamService], + imports: [HttpClientTestingModule] + }); + }); + + afterEach(() => { + }); + + it('should be created', () => { + const service: TeamService = TestBed.inject(TeamService); + expect(service).toBeTruthy(); + }); +}); diff --git a/web-app/src/app/user/team.service.ts b/web-app/src/app/user/team.service.ts new file mode 100644 index 000000000..2b120d8da --- /dev/null +++ b/web-app/src/app/user/team.service.ts @@ -0,0 +1,23 @@ +import { HttpClient } from '@angular/common/http'; +import { Injectable } from '@angular/core' + +@Injectable({ + providedIn: 'root' +}) +export class TeamService { + + constructor( + private httpClient: HttpClient + ) {} + + getTeams(options?: any) { + options = options || {}; + const parameters: any = {}; + if (options.populate) { + parameters.populate = options.populate; + } + + return this.httpClient.get('/api/teams/', { params: parameters }) + } + +} \ No newline at end of file diff --git a/web-app/src/app/user/user-avatar/user-avatar.component.html b/web-app/src/app/user/user-avatar/user-avatar.component.html index 7c2b1a5c1..0b033e1f1 100644 --- a/web-app/src/app/user/user-avatar/user-avatar.component.html +++ b/web-app/src/app/user/user-avatar/user-avatar.component.html @@ -1 +1,2 @@ - \ No newline at end of file + +account_circle \ No newline at end of file diff --git a/web-app/src/app/user/user-avatar/user-avatar.component.scss b/web-app/src/app/user/user-avatar/user-avatar.component.scss index 871cb6674..8fa141d7d 100644 --- a/web-app/src/app/user/user-avatar/user-avatar.component.scss +++ b/web-app/src/app/user/user-avatar/user-avatar.component.scss @@ -2,4 +2,11 @@ border-radius: 50%; overflow: hidden; background: #FFFFFF; -} \ No newline at end of file + vertical-align: middle; +} + +.icon { + vertical-align: middle; + color: rgba($color: #000000, $alpha: .4); +} + diff --git a/web-app/src/app/user/user-avatar/user-avatar.component.spec.ts b/web-app/src/app/user/user-avatar/user-avatar.component.spec.ts index 53a2513d9..18650b057 100644 --- a/web-app/src/app/user/user-avatar/user-avatar.component.spec.ts +++ b/web-app/src/app/user/user-avatar/user-avatar.component.spec.ts @@ -1,5 +1,5 @@ import { HttpClientTestingModule } from '@angular/common/http/testing'; -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; import { UserAvatarComponent } from './user-avatar.component'; @@ -7,7 +7,7 @@ describe('UserAvatarComponent', () => { let component: UserAvatarComponent; let fixture: ComponentFixture; - beforeEach(async(() => { + beforeEach(waitForAsync(() => { TestBed.configureTestingModule({ imports: [HttpClientTestingModule], declarations: [UserAvatarComponent] diff --git a/web-app/src/app/user/user-avatar/user-avatar.component.ts b/web-app/src/app/user/user-avatar/user-avatar.component.ts index df2bd62d8..388351fef 100644 --- a/web-app/src/app/user/user-avatar/user-avatar.component.ts +++ b/web-app/src/app/user/user-avatar/user-avatar.component.ts @@ -9,17 +9,30 @@ import { DomSanitizer, SafeUrl } from '@angular/platform-browser' }) export class UserAvatarComponent implements OnChanges { @Input() user + @Input() file @Input() avatarWidth = 40 @Input() avatarHeight = 40 - url: string | SafeUrl = '/assets/images/baseline-account_circle-24px.svg'; + data: string | ArrayBuffer + url?: SafeUrl = null constructor( private httpClient: HttpClient, private sanitizer: DomSanitizer) { } ngOnChanges(changes: SimpleChanges): void { - if (changes.user && this.user) { + if (changes.file && this.file) { + if (window.FileReader) { + const reader = new FileReader() + reader.onload = ((file: any) => { + return e => { + this.data = e.target.result + }; + })(changes.file.currentValue); + + reader.readAsDataURL(changes.file.currentValue); + } + } else if (changes.user && this.user) { this.fetchAvatar() } } diff --git a/web-app/src/app/user/user-avatar/user-avatar.module.ts b/web-app/src/app/user/user-avatar/user-avatar.module.ts new file mode 100644 index 000000000..da3f0b067 --- /dev/null +++ b/web-app/src/app/user/user-avatar/user-avatar.module.ts @@ -0,0 +1,16 @@ +import { NgModule } from '@angular/core'; +import { CommonModule } from '@angular/common'; +import { UserAvatarComponent } from './user-avatar.component'; +import { MatIconModule } from '@angular/material/icon'; + +@NgModule({ + declarations: [ + UserAvatarComponent + ], + imports: [ + CommonModule, + MatIconModule + ], + exports: [ UserAvatarComponent ] +}) +export class UserAvatarModule { } \ No newline at end of file diff --git a/web-app/src/app/user/user-list/user-list-item.component.spec.ts b/web-app/src/app/user/user-list/user-list-item.component.spec.ts index dd9a5bcd0..0f3adb1a1 100644 --- a/web-app/src/app/user/user-list/user-list-item.component.spec.ts +++ b/web-app/src/app/user/user-list/user-list-item.component.spec.ts @@ -1,12 +1,13 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; import { UserListItemComponent } from './user-list-item.component'; +/* TODO test MUST contain at least 1 test describe('UserListItemComponent', () => { let component: UserListItemComponent; let fixture: ComponentFixture; - beforeEach(async(() => { + beforeEach(waitForAsync(() => { TestBed.configureTestingModule({ declarations: [UserListItemComponent ] }) @@ -23,3 +24,4 @@ describe('UserListItemComponent', () => { // expect(component).toBeTruthy(); // }); }); +*/ diff --git a/web-app/src/app/user/user-list/user-list-item.component.ts b/web-app/src/app/user/user-list/user-list-item.component.ts index 58f8504b0..3334aaf09 100644 --- a/web-app/src/app/user/user-list/user-list-item.component.ts +++ b/web-app/src/app/user/user-list/user-list-item.component.ts @@ -1,7 +1,8 @@ -import { Component, EventEmitter, Inject, Input, Output, ViewChild } from '@angular/core'; +import { Component, EventEmitter, Input, Output, ViewChild } from '@angular/core'; import { MatRipple } from '@angular/material/core'; -import { FeedPanelService } from 'src/app/feed-panel/feed-panel.service'; -import { LocalStorageService, MapService } from 'src/app/upgrade/ajs-upgraded-providers'; +import { MapService } from '../../map/map.service'; +import { LocalStorageService } from '../../http/local-storage.service'; +import { FeedPanelService } from '../../feed-panel/feed-panel.service'; @Component({ selector: 'user-list-item', @@ -17,13 +18,13 @@ export class UserListItemComponent { @ViewChild(MatRipple) ripple: MatRipple - token: string + token: string | undefined followingUser: any constructor( private feedPanelService: FeedPanelService, - @Inject(MapService) private mapService: any, - @Inject(LocalStorageService) localStorageService: any) { + private mapService: MapService, + localStorageService: LocalStorageService) { this.followingUser = mapService.followedFeature this.token = localStorageService.getToken() } diff --git a/web-app/src/app/user/user-list/user-list.component.html b/web-app/src/app/user/user-list/user-list.component.html index dd64ad8a1..87e0b9f86 100644 --- a/web-app/src/app/user/user-list/user-list.component.html +++ b/web-app/src/app/user/user-list/user-list.component.html @@ -8,7 +8,7 @@ User Page - {{userPage[0].location.properties.timestamp | moment: 'fromNow'}} + {{userPage[0]?.location?.properties?.timestamp | moment: 'fromNow'}} diff --git a/web-app/src/app/user/user-list/user-list.component.scss b/web-app/src/app/user/user-list/user-list.component.scss index 476df3fe0..f70db0c76 100644 --- a/web-app/src/app/user/user-list/user-list.component.scss +++ b/web-app/src/app/user/user-list/user-list.component.scss @@ -1,4 +1,4 @@ -@import '~@angular/material/theming'; +@use '@angular/material' as mat; @import "variables.scss"; .user-feed { @@ -9,8 +9,9 @@ } .user-feed-toolbar { - color: mat-color($app-primary); + color: mat.get-color-from-palette($app-primary); background-color: white; + margin-top: 8px; } .feed-pages { diff --git a/web-app/src/app/user/user-list/user-list.component.spec.ts b/web-app/src/app/user/user-list/user-list.component.spec.ts index f8c9eea6a..c28eedc37 100644 --- a/web-app/src/app/user/user-list/user-list.component.spec.ts +++ b/web-app/src/app/user/user-list/user-list.component.spec.ts @@ -1,12 +1,13 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; import { UserListComponent } from './user-list.component'; +/* TODO test MUST contain at least 1 test describe('UserListComponent', () => { let component: UserListComponent; let fixture: ComponentFixture; - beforeEach(async(() => { + beforeEach(waitForAsync(() => { TestBed.configureTestingModule({ declarations: [UserListComponent ] }) @@ -23,3 +24,4 @@ describe('UserListComponent', () => { // expect(component).toBeTruthy(); // }); }); +*/ diff --git a/web-app/src/app/user/user-list/user-list.component.ts b/web-app/src/app/user/user-list/user-list.component.ts index 601fa58bb..554f1f71f 100644 --- a/web-app/src/app/user/user-list/user-list.component.ts +++ b/web-app/src/app/user/user-list/user-list.component.ts @@ -1,6 +1,7 @@ -import { Component, Inject, OnDestroy, OnInit } from '@angular/core'; -import { EventService, FilterService } from 'src/app/upgrade/ajs-upgraded-providers'; +import { Component, OnDestroy, OnInit } from '@angular/core'; import * as moment from 'moment'; +import { EventService } from '../../event/event.service'; +import { FilterService } from '../../filter/filter.service'; @Component({ selector: 'user-list', @@ -19,8 +20,8 @@ export class UserListComponent implements OnInit, OnDestroy { feedUsers = [] constructor( - @Inject(EventService) private eventService: any, - @Inject(FilterService) private filterService: any) { + private eventService: EventService, + private filterService: FilterService) { } ngOnInit(): void { diff --git a/web-app/src/app/user/user-popup/user-popup.component.spec.ts b/web-app/src/app/user/user-popup/user-popup.component.spec.ts index 0df2882a1..877e6b9b9 100644 --- a/web-app/src/app/user/user-popup/user-popup.component.spec.ts +++ b/web-app/src/app/user/user-popup/user-popup.component.spec.ts @@ -1,12 +1,13 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; import { UserPopupComponent } from './user-popup.component'; +/* TODO test MUST containt at least 1 test describe('UserPopupComponent', () => { let component: UserPopupComponent; let fixture: ComponentFixture; - beforeEach(async(() => { + beforeEach(waitForAsync(() => { TestBed.configureTestingModule({ declarations: [UserPopupComponent ] }) @@ -23,3 +24,4 @@ describe('UserPopupComponent', () => { // expect(component).toBeTruthy(); // }); }); +*/ diff --git a/web-app/src/app/user/user-popup/user-popup.component.ts b/web-app/src/app/user/user-popup/user-popup.component.ts index e10618517..3062f877f 100644 --- a/web-app/src/app/user/user-popup/user-popup.component.ts +++ b/web-app/src/app/user/user-popup/user-popup.component.ts @@ -1,7 +1,7 @@ -import { Component, Inject, Input, OnChanges, OnInit, SimpleChanges } from '@angular/core'; -import { MapService } from 'src/app/upgrade/ajs-upgraded-providers'; -import { FeedPanelService } from 'src/app/feed-panel/feed-panel.service'; +import { Component, Input, OnChanges, OnInit, SimpleChanges } from '@angular/core'; +import { FeedPanelService } from '../../feed-panel/feed-panel.service'; import * as moment from 'moment'; +import { MapService } from '../../map/map.service'; @Component({ selector: 'user-popup', @@ -18,7 +18,7 @@ export class UserPopupComponent implements OnInit, OnChanges { constructor( private feedPanelService: FeedPanelService, - @Inject(MapService) private mapService: any) { } + private mapService: MapService) { } ngOnInit(): void { this.updateView() diff --git a/web-app/src/app/user/user-view/user-view.component.html b/web-app/src/app/user/user-view/user-view.component.html index e9a8e455b..37cc72b2a 100644 --- a/web-app/src/app/user/user-view/user-view.component.html +++ b/web-app/src/app/user/user-view/user-view.component.html @@ -1,11 +1,8 @@ - + - - diff --git a/web-app/src/app/user/user-view/user-view.component.scss b/web-app/src/app/user/user-view/user-view.component.scss index f0afaef46..7a8736d52 100644 --- a/web-app/src/app/user/user-view/user-view.component.scss +++ b/web-app/src/app/user/user-view/user-view.component.scss @@ -1,15 +1,10 @@ -.navigation { - display: flex; -} - -.navigation__icon { - margin-right: 24px; +mat-toolbar { + background-color: white; } -.navigation__title { - flex: 1 1 auto; - overflow: hidden; - text-overflow: ellipsis; +.navigation { + display: flex; + justify-content: space-between; } .user-container { diff --git a/web-app/src/app/user/user-view/user-view.component.spec.ts b/web-app/src/app/user/user-view/user-view.component.spec.ts index 020e986da..a769854c3 100644 --- a/web-app/src/app/user/user-view/user-view.component.spec.ts +++ b/web-app/src/app/user/user-view/user-view.component.spec.ts @@ -1,12 +1,13 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; import { UserViewComponent } from './user-view.component'; +/* TODO test MUST contain at least 1 test describe('UserViewComponent', () => { let component: UserViewComponent; let fixture: ComponentFixture; - beforeEach(async(() => { + beforeEach(waitForAsync(() => { TestBed.configureTestingModule({ declarations: [UserViewComponent ] }) @@ -23,3 +24,4 @@ describe('UserViewComponent', () => { // expect(component).toBeTruthy(); // }); }); +*/ diff --git a/web-app/src/app/user/user-view/user-view.component.ts b/web-app/src/app/user/user-view/user-view.component.ts index 9c912ea41..fbfb9ae5a 100644 --- a/web-app/src/app/user/user-view/user-view.component.ts +++ b/web-app/src/app/user/user-view/user-view.component.ts @@ -1,8 +1,11 @@ -import { Component, EventEmitter, Inject, Input, OnChanges, OnInit, Output, SimpleChanges } from '@angular/core'; +import { Component, EventEmitter, Input, OnChanges, OnInit, Output, SimpleChanges } from '@angular/core'; import { LatLng } from 'leaflet'; -import { PointAccuracy } from 'src/app/map/clip/clip.component'; -import { EventService, FilterService, LocationService, MapService } from 'src/app/upgrade/ajs-upgraded-providers'; +import { PointAccuracy } from '../../map/clip/clip.component'; import * as moment from 'moment' +import { MapService } from '../../map/map.service'; +import { LocationService } from '../location/location.service'; +import { EventService } from '../../event/event.service'; +import { FilterService } from '../../filter/filter.service'; @Component({ selector: 'user-view', @@ -20,10 +23,10 @@ export class UserViewComponent implements OnInit, OnChanges { userObservations = [] constructor( - @Inject(MapService) private mapService: any, - @Inject(EventService) private eventService: any, - @Inject(FilterService) private filterService: any, - @Inject(LocationService) private locationService: any) {} + private mapService: MapService, + private eventService: EventService, + private filterService: FilterService, + private locationService: LocationService) {} ngOnInit(): void { this.event = this.filterService.getEvent(); diff --git a/web-app/src/app/user/user.service.spec.ts b/web-app/src/app/user/user.service.spec.ts new file mode 100644 index 000000000..ce93ba0e3 --- /dev/null +++ b/web-app/src/app/user/user.service.spec.ts @@ -0,0 +1,20 @@ +import { TestBed } from '@angular/core/testing'; +import { UserService } from './user.service'; +import { HttpClientTestingModule } from '@angular/common/http/testing'; + +describe('User Service Tests', () => { + beforeEach(() => { + TestBed.configureTestingModule({ + providers: [UserService], + imports: [HttpClientTestingModule] + }); + }); + + afterEach(() => { + }); + + it('should be created', () => { + const service: UserService = TestBed.inject(UserService); + expect(service).toBeTruthy(); + }); +}); diff --git a/web-app/src/app/user/user.service.ts b/web-app/src/app/user/user.service.ts new file mode 100644 index 000000000..f46feb57d --- /dev/null +++ b/web-app/src/app/user/user.service.ts @@ -0,0 +1,177 @@ +import { HttpClient, HttpContext, HttpEvent } from '@angular/common/http' +import { Injectable } from '@angular/core' +import { BehaviorSubject, Observable, Subject, tap } from 'rxjs' +import { LocalStorageService } from '../http/local-storage.service' +import { BYPASS_TOKEN } from '../http/token.interceptor' +import { User } from 'core-lib-src/user' + +@Injectable({ + providedIn: 'root' +}) +export class UserService { + amAdmin: boolean + + private _myself = new BehaviorSubject(null) + myself: any + myself$ = this._myself.asObservable() + + constructor( + private httpClient: HttpClient, + private localStorageService: LocalStorageService + ) { } + + signup(username: string): Observable { + return this.httpClient.post('/api/users/signups', { + username + },{ + context: new HttpContext().set(BYPASS_TOKEN, true) + }) + } + + signupVerify(data: any, token: string): Observable { + return this.httpClient.post('/api/users/signups/verifications', data, { + headers: { + 'Authorization': `Bearer ${token}` + }, + context: new HttpContext().set(BYPASS_TOKEN, true) + }) + } + + signin(username: string, password: string): Observable<{user: User, token: string}> { + return this.httpClient.post('/auth/local/signin', { + username, + password, + appVersion: 'Web Client' + }) + } + + idpSignin(strategy: string): Observable { + let subject = new Subject(); + + const url = "/auth/" + strategy + "/signin"; + const authWindow = window.open(url, "_blank"); + + function onMessage(event: any) { + window.removeEventListener('message', onMessage, false); + + if (event.origin !== window.location.origin) { + return; + } + + subject.next(event.data) + + authWindow.close(); + } + + window.addEventListener('message', onMessage, false); + + return subject.asObservable() + } + + ldapSignin(username: string, password: string): Observable { + return this.httpClient.post('/api/ldap/signin', { + username, + password, + appVersion: 'Web Client' + },{ + context: new HttpContext().set(BYPASS_TOKEN, true) + }) + } + + authorize(token: string, deviceId: string): Observable<{ user: User, token: string}> { + return this.httpClient + .post<{ user: User, token: string }>('/auth/token?createDevice=false', { + uid: deviceId, + appVersion: 'Web Client' + },{ + headers: { 'Authorization': `Bearer ${token}` } + }) + .pipe( + tap((response: any) => { + this.setUser(response.user) + }) + ) + } + + getMyself(): Observable { + return this.httpClient + .get('/api/users/myself') + .pipe( + tap((user: any) => { + this.setUser(user) + }) + ) + } + + setUser(user: any) { + this._myself.next(user) + this.myself = user + // TODO don't just check for role name + this.amAdmin = this.myself && this.myself.role && (this.myself.role.name === "ADMIN_ROLE" || this.myself.role.name === 'EVENT_MANAGER_ROLE'); + } + + getUser(id: string, options?: any) { + options = options || {}; + const parameters: any = {}; + if (options.populate) { + parameters.populate = options.populate; + } + + return this.httpClient.post(`/api/users/${id}`, { params: parameters }) + } + + hasPermission(permission): boolean { + return this.myself.role.permissions.includes(permission) + } + + addRecentEvent(event: any): Observable { + return this.httpClient.post(`/api/users/${this.myself.id}/events/${event.id}/recent`, {}) + } + + getRecentEventId() { + var recentEventIds = this.myself.recentEventIds; + return recentEventIds.length > 0 ? recentEventIds[0] : null; + } + + logout(): Observable { + return this.httpClient + .post('/api/logout', null, { responseType: 'text' }) + .pipe( + tap(() => { + this.clearUser() + }) + ) + } + + saveProfile(user: any): Observable> { + const formData = new FormData(); + for (var property in user) { + if (user[property] != null) { + formData.append(property, user[property]); + } + } + + return this.httpClient.put('/api/users/myself', formData, { + reportProgress: true, + observe: 'events' + }); + } + + updatePassword(password: string, newPassword): Observable { + return this.httpClient.put(`/api/users/myself/password`, { + username: this.myself.username, + password: password, + newPassword: newPassword, + newPasswordConfirm: newPassword + },{ + context: new HttpContext().set(BYPASS_TOKEN, true), + responseType: 'text' + }); + } + + private clearUser() { + this.myself = null; + this.amAdmin = null; + this.localStorageService.removeToken(); + } +} \ No newline at end of file diff --git a/web-app/src/environments/environment.dev.ts b/web-app/src/environments/environment.dev.ts new file mode 100644 index 000000000..ffe8aed76 --- /dev/null +++ b/web-app/src/environments/environment.dev.ts @@ -0,0 +1,3 @@ +export const environment = { + production: false +}; diff --git a/web-app/src/environments/environment.ts b/web-app/src/environments/environment.ts index 7b4f817ad..30d7bccb1 100644 --- a/web-app/src/environments/environment.ts +++ b/web-app/src/environments/environment.ts @@ -13,4 +13,4 @@ export const environment = { * This import should be commented out in production mode because it will have a negative impact * on performance if an error is thrown. */ -// import 'zone.js/dist/zone-error'; // Included with Angular CLI. +// import 'zone.js/plugins/zone-error'; // Included with Angular CLI. diff --git a/web-app/src/index.html b/web-app/src/index.html index 524a5002c..91780ae2a 100644 --- a/web-app/src/index.html +++ b/web-app/src/index.html @@ -1,20 +1,19 @@ - + + MAGE - + + + + + + - - -
- - - - -
-
+ + \ No newline at end of file diff --git a/web-app/src/leaflet.scss b/web-app/src/leaflet.scss new file mode 100644 index 000000000..401656a15 --- /dev/null +++ b/web-app/src/leaflet.scss @@ -0,0 +1,62 @@ +@import "~leaflet/dist/leaflet.css"; +@import "~leaflet.markercluster/dist/MarkerCluster.css"; +@import "~leaflet.markercluster/dist/MarkerCluster.Default.css"; + +.leaflet-fixed-width-marker { + image-rendering: -webkit-optimize-contrast; +} + +.leaflet-popup-content-wrapper { + border-radius: 4px; +} + +.leaflet-popup-content { + margin: 0px; + min-width: 400px; +} + +.leaflet-material-popup .leaflet-popup-content { + margin: 13px 19px; +} + +.overlay-tooltip { + position: absolute; + display: flex; + flex-direction: column; + align-items: center; + justify-content: center; + background-color: gray; + color: white; + opacity: 0.87; + border-radius: 3px; + border: none; +} + +.leaflet-tooltip-left.overlay-tooltip::before { + border-left-color: transparent; +} + +.leaflet-tooltip-right.overlay-tooltip::before { + border-right-color: transparent; +} + +.observation-edit-marker { + display: flex; + flex-direction: row; + gap: 8px; +} + +.observation-edit-marker__tooltip { + display: flex; + flex-direction: column; + align-items: center; + justify-content: center; + background-color: grey; + color: #fff; + opacity: .87; + height: 50px; + width: 200px; + border-radius: 3px; + box-shadow: 0 1px 3px rgba(0, 0, 0, .4) +} + diff --git a/web-app/src/main.ts b/web-app/src/main.ts index 99311767e..c7b673cf4 100644 --- a/web-app/src/main.ts +++ b/web-app/src/main.ts @@ -1,26 +1,12 @@ - -import * as angular from 'angular'; -import mage from './ng1/app.js'; - -import { enableProdMode, StaticProvider } from '@angular/core'; +import { enableProdMode } from '@angular/core'; import { platformBrowserDynamic } from '@angular/platform-browser-dynamic'; import { AppModule } from './app/app.module'; import { environment } from './environments/environment'; -import { downgradeModule } from '@angular/upgrade/static'; - if (environment.production) { enableProdMode(); } -const bootstrapFn = (extraProviders: StaticProvider[]): any => { - return platformBrowserDynamic(extraProviders).bootstrapModule(AppModule); -} - -const downgradedModule = downgradeModule(bootstrapFn); - -const hybrid = angular.module('hybridMage', [mage.name, downgradedModule]); -angular.element(document).ready(function () { - angular.bootstrap(document.body, [hybrid.name]); -}); \ No newline at end of file +platformBrowserDynamic().bootstrapModule(AppModule) + .catch(err => console.error(err)); diff --git a/web-app/src/ng1/about/about.component.js b/web-app/src/ng1/about/about.component.js deleted file mode 100644 index dbb2da080..000000000 --- a/web-app/src/ng1/about/about.component.js +++ /dev/null @@ -1,20 +0,0 @@ -class AboutController { - constructor(Api) { - this.Api = Api; - } - - $onInit() { - this.Api.get(api => { - this.name = api.name; - this.serverVersion = api.version; - this.apk = api.apk; - }); - } -} - -AboutController.$inject = ['Api']; - -export default { - template: require('./about.html'), - controller: AboutController -}; \ No newline at end of file diff --git a/web-app/src/ng1/about/about.html b/web-app/src/ng1/about/about.html deleted file mode 100644 index d05bdff28..000000000 --- a/web-app/src/ng1/about/about.html +++ /dev/null @@ -1,42 +0,0 @@ -
-

About {{$ctrl.name}} {{$ctrl.serverVersion.major}}.{{$ctrl.serverVersion.minor}}.{{$ctrl.serverVersion.micro}}

-

- MAGE is a dynamic, secure, mobile situational awareness and field data collection platform that supports - low-bandwidth and disconnected users. MAGE can integrate with existing command centers and common operating - pictures or stand alone as a complete, mission-ready solution. The MAGE mobile app on iOS and Android - allows agents in the field to create and share geo-tagged observations with attached photos, videos, - audio, and form data. MAGE's data collection forms are easily tailored to suit any team and mission with - custom form fields and map symbologies. In addition to data collection, the MAGE mobile app can optionally - report field agents' locations at regular intervals to the MAGE server. The MAGE server's web app provides - a common operating picture of field agents' observations and latest reported locations. -

-

Mobile Applications

-
    -
  • Create and view observations with photos, video and voice.
  • -
  • Friendly Force Tracking.
  • -
  • Observation storage and synching for offline usage.
  • -
  • GeoPackage capable, view offline feature and raster data.
  • -
-
-
- - -
-
-

API

-

Browse and try the MAGE API live with Swagger UI.

-

Important: Swagger interactive documentation will modify MAGE data via API calls; please be careful with POST/PUT/DELETE operations.

- -

Acknowledgements

-
-
-

Tech Stack

-

The MAGE server is built on NodeJS, with data stored in MongoDB via mongoose. Routing provided with express, and authentication with passport.

-

The front end maps are powered by Leaflet. The responsive layouts and buttons are styled by a modified version of Bootstrap. The whole front end is tied together by AngularJS.

-
-
-

Iconography

-

The icons used throughout the app come from Font Awesome

-
-
-
diff --git a/web-app/src/ng1/admin/events/events.html b/web-app/src/ng1/admin/events/events.html deleted file mode 100644 index a48bb7f2d..000000000 --- a/web-app/src/ng1/admin/events/events.html +++ /dev/null @@ -1,82 +0,0 @@ -
-
- -
-
- -
-
- - -
- - -
-
-
-
- -
-
-
- -
-
{{e.name}}
-
{{e.description}}
-
-
- - -
-
- -
-
-
-
- -
-
- -
-
-
-
-
diff --git a/web-app/src/ng1/error/not.in.event.controller.js b/web-app/src/ng1/error/not.in.event.controller.js deleted file mode 100644 index 67055513d..000000000 --- a/web-app/src/ng1/error/not.in.event.controller.js +++ /dev/null @@ -1,11 +0,0 @@ -module.exports = NotInEventController; - -NotInEventController.$inject = ['$scope', '$uibModalInstance', 'title']; - -function NotInEventController($scope, $uibModalInstance, title) { - $scope.title = title; - - $scope.ok = function () { - $uibModalInstance.close(); - }; -} diff --git a/web-app/src/ng1/error/not.in.event.html b/web-app/src/ng1/error/not.in.event.html deleted file mode 100644 index a1ff3b32b..000000000 --- a/web-app/src/ng1/error/not.in.event.html +++ /dev/null @@ -1,11 +0,0 @@ - - - - - diff --git a/web-app/src/ng1/filter/event.filter.component.js b/web-app/src/ng1/filter/event.filter.component.js deleted file mode 100644 index 8342d1b23..000000000 --- a/web-app/src/ng1/filter/event.filter.component.js +++ /dev/null @@ -1,27 +0,0 @@ -const MDCSelect = require('material-components-web').select.MDCSelect; -module.exports = { - template: require('./event.filter.html'), - bindings: { - events: '<', - onEventChosen: '&' - }, - controller: EventFilterController -}; - - - -EventFilterController.$inject = ['$element']; - -function EventFilterController($element) { - console.log('events pictker', this.events); - this.$onChanges = function() { - console.log('event pictker'); - console.log('picker.events', this.events); - if (this.events) { - const selectMdc = new MDCSelect($element.find('.mdc-select')[0]); - selectMdc.listen('MDCSelect:change', function() { - this.onEventChosen(this.events[selectMdc.selectedIndex]); - }.bind(this)); - } - }; -} diff --git a/web-app/src/ng1/filter/event.filter.html b/web-app/src/ng1/filter/event.filter.html deleted file mode 100644 index 7d8e6772a..000000000 --- a/web-app/src/ng1/filter/event.filter.html +++ /dev/null @@ -1,30 +0,0 @@ - - -
- - -
-
-
    -
  • - {{event.name}} -
  • - -
-
-
-
-
- -
-
-
-
diff --git a/web-app/src/ng1/filter/filter.html b/web-app/src/ng1/filter/filter.html deleted file mode 100644 index 8928c9b80..000000000 --- a/web-app/src/ng1/filter/filter.html +++ /dev/null @@ -1,87 +0,0 @@ -
-
-
- -
-
-
- -
-
- -
- -
-
- - -
{{$ctrl.intervalChoice.label}}
-
-
    -
  • - {{intervalChoice.label}} -
  • -
-
-
-
-
- -
-
-
-
-
-
-
- -
-
- -
-
-
-
- -
- - -
-
-
-
-
diff --git a/web-app/src/ng1/filter/filter.js b/web-app/src/ng1/filter/filter.js deleted file mode 100644 index db1a3b674..000000000 --- a/web-app/src/ng1/filter/filter.js +++ /dev/null @@ -1,131 +0,0 @@ -var moment = require('moment') - , MDCDialog = require('material-components-web').dialog.MDCDialog - , MDCSelect = require('material-components-web').select.MDCSelect; - -module.exports = { - template: require('./filter.html'), - bindings: { - open: '<', - events: '<', - onFilterClose: '&' - }, - controller: FilterController -}; - -FilterController.$inject = ['FilterService', '$element', '$timeout']; - -function FilterController(FilterService, $element, $timeout) { - this.filterPanel; - - this.teamSelectMdc; - this.intervalSelectMdc; - this.teamsUpdated = true; - - this.$onChanges = function() { - this.filterEvent = {selected: FilterService.getEvent()}; - this.filterTeams = {selected: FilterService.getTeams()}; - this.interval = FilterService.getInterval(); - - this.intervalChoices = FilterService.intervals; - this.intervalChoice = FilterService.getIntervalChoice(); - this.localTime = true; - - if (this.interval.options && this.interval.options.startDate) { - this.startDate = this.interval.options.startDate; - } else { - this.startDate = moment().startOf('day').toDate(); - } - if (this.interval.options && this.interval.options.endDate) { - this.endDate = this.interval.options.endDate; - } else { - this.endDate = moment().endOf('day').toDate(); - } - if (this.events) { - if (this.open && this.open.opened && !this.filterPanel.isOpen) { - this.filterPanel.open(); - } - } - }.bind(this); - - this.$onInit = function() { - this.filterPanel = new MDCDialog($element.find('.filter-panel')[0]); - this.filterPanel.listen('MDCDialog:closing', function() { - this.onFilterClose(); - }.bind(this)); - this.filterPanel.listen('MDCDialog:opening', function() { - if (!this.intervalSelectMdc) { - $timeout(function() { - this.intervalSelectMdc = new MDCSelect($element.find('.interval-select')[0]); - this.intervalSelectMdc.listen('MDCSelect:change', function(event) { - $timeout(function() { - this.intervalChoice = this.intervalChoices.find(function(choice) { - return choice.label === event.detail.value; - }); - }.bind(this)); - }.bind(this)); - }.bind(this)); - } - }.bind(this)); - }; - - this.eventSelected = function(event) { - this.filterEvent.selected = event; - this.filterTeams.selected = []; - }; - - this.teamsSelected = function(teams) { - this.filterTeams.selected = teams; - }; - - this.removeTeam = function(index) { - this.filterTeams.selected.splice(index, 1); - if (!this.filterTeams.selected.length) { - this.teamSelectMdc.selectedIndex = -1; - } - }; - - this.isTeamChosen = function(teamId) { - return this.filterTeams.selected.find(function(team) { - return team.id === teamId; - }); - }; - - this.onStartDate = function(date, localTime) { - this.startDate = date; - this.localTime = localTime; - }; - - this.onEndDate = function(date, localTime) { - this.endDate = date; - this.localTime = localTime; - }; - - this.onEventChange = function(eventId) { - $timeout(function() { - eventId = Number(eventId); - this.filterEvent.selected = this.events.find(function(value) { - return value.id === eventId; - }); - this.filterTeams.selected = []; - }.bind(this)); - }; - - this.performFilter = function() { - var options = {}; - if (this.intervalChoice.filter === 'custom') { - options.startDate = this.startDate; - options.endDate = this.endDate; - options.localTime = this.localTime; - } - - FilterService.setFilter({ - event: this.filterEvent.selected, - teams: this.filterTeams.selected, - timeInterval: { - choice: this.intervalChoice, - options: options - } - }); - - }; -} diff --git a/web-app/src/ng1/leaflet-extensions/FixedWidthIcon.js b/web-app/src/ng1/leaflet-extensions/FixedWidthIcon.js deleted file mode 100644 index 44d6e22be..000000000 --- a/web-app/src/ng1/leaflet-extensions/FixedWidthIcon.js +++ /dev/null @@ -1,47 +0,0 @@ -var L = require('leaflet'); - -L.FixedWidthIcon = L.DivIcon.extend({ - options: { - className: 'mage-icon', - iconSize: null, - iconWidth: 35 - }, - - initialize: function(options) { - L.setOptions(this, options); - }, - - createIcon: function() { - const div = L.DivIcon.prototype.createIcon.call(this); - div.style["margin-left"] = (this.options.iconWidth / -2) + 'px'; - - const img = document.createElement('img'); - - img.className = "mage-icon-image"; - img.style.width = this.options.iconWidth + 'px'; - - img.src = this.options.iconUrl; - if (this.options.iconUrl) { - img.src = this.options.iconUrl; - } else { - img.src = '/assets/images/default_marker.png'; - } - $(img).on('load', () => { - if (this.options.onIconLoad) this.options.onIconLoad(this); - }); - - div.appendChild(img); - if (this.options.tooltip) { - const tooltip = L.DomUtil.create('div', 'marker-tooltip'); - tooltip.innerHTML = 'Edit Observation
Drag this marker to re-position
'; - div.insertBefore(tooltip, div.firstChild); - } - - return div; - } - -}); - -L.fixedWidthIcon = function(options) { - return new L.FixedWidthIcon(options); -}; diff --git a/web-app/src/ng1/leaflet-extensions/FixedWidthMarker.js b/web-app/src/ng1/leaflet-extensions/FixedWidthMarker.js deleted file mode 100644 index dd2540e30..000000000 --- a/web-app/src/ng1/leaflet-extensions/FixedWidthMarker.js +++ /dev/null @@ -1,45 +0,0 @@ -const L = require('leaflet'); - -L.FixedWidthMarker = L.Marker.extend({ - options: { - iconWidth: 35 - }, - - initialize: function(latlng, options) { - L.Marker.prototype.initialize.call(this, latlng, options); - - const self = this; - if (options.iconUrl) { - options.icon = this.fixedWidthIcon = L.fixedWidthIcon({ - iconUrl: options.iconUrl, - tooltip: options.tooltip, - iconWidth: this.options.iconWidth, - onIconLoad: function() { - if (self._popup && self._icon) { - const iconHeight = $(self._icon).height(); - - const popup = self.getPopup(); - popup.options.offset = [0, (iconHeight - 8) * -1]; - popup.update(); - } - } - }); - } - - L.Marker.prototype.initialize.call(this, latlng, options); - }, - - bindPopup: function(popup, options = {}) { - if (this._icon) { - options.offset = [0, ($(this._icon).height() - 8) * -1]; - } - - L.Marker.prototype.bindPopup.call(this, popup, options); - - return this; - } -}); - -L.fixedWidthMarker = function (latlng, options) { - return new L.FixedWidthMarker(latlng, options); -}; diff --git a/web-app/src/ng1/leaflet-extensions/GridLayer.js b/web-app/src/ng1/leaflet-extensions/GridLayer.js deleted file mode 100644 index 43de67f08..000000000 --- a/web-app/src/ng1/leaflet-extensions/GridLayer.js +++ /dev/null @@ -1,13 +0,0 @@ -const L = require('leaflet'); - -const originalInitTile = L.GridLayer.prototype._initTile; -L.GridLayer.include({ - _initTile: function (tile) { - originalInitTile.call(this, tile); - - const tileSize = this.getTileSize(); - - tile.style.width = tileSize.x + 1 + 'px'; - tile.style.height = tileSize.y + 1 + 'px'; - } -}); diff --git a/web-app/src/ng1/leaflet-extensions/LocationMarker.Popup.js b/web-app/src/ng1/leaflet-extensions/LocationMarker.Popup.js deleted file mode 100644 index 840c74fa4..000000000 --- a/web-app/src/ng1/leaflet-extensions/LocationMarker.Popup.js +++ /dev/null @@ -1,38 +0,0 @@ -var L = require('leaflet'); - -L.LocationMarker.include({ - openPopup: function () { - this._getMarker().openPopup() - return this; - }, - - closePopup: function () { - this._getMarker().closePopup(); - return this; - }, - - togglePopup: function () { - this._getMarker().togglePopup(); - return this; - }, - - getPopup:function() { - return this._getMarker()._popup; - }, - - bindPopup: function (popup) { - this._getMarker().bindPopup(popup); - return this; - }, - - unbindPopup: function () { - this._getMarker().unbindPopup(); - return this; - }, - - _getMarker: function() { - return this._iconMarker ? - this._iconMarker : - this._locationMarker; - } -}); diff --git a/web-app/src/ng1/leaflet-extensions/LocationMarker.js b/web-app/src/ng1/leaflet-extensions/LocationMarker.js deleted file mode 100644 index 8acccdf3e..000000000 --- a/web-app/src/ng1/leaflet-extensions/LocationMarker.js +++ /dev/null @@ -1,104 +0,0 @@ -var L = require('leaflet'); - -L.LocationMarker = L.Layer.extend({ - initialize: function (latlng, options) { - L.setOptions(this, options); - - this._group = L.featureGroup(); - - this._accuracyCircle = L.circle(latlng, 0, { - clickable: false, - color: options.color, - fillColor: options.color, - fillOpacity: 0.15, - weight: 2, - opacity: 0.5, - pane: options.pane - }); - - this._locationMarker = L.circleMarker(latlng, { - color: options.color, - fillColor: options.color, - fillOpacity: 0.7, - weight: 2, - opacity: 0.9, - radius: 5, - pane: options.pane - }); - this._locationMarker.addEventParent(this); - this._group.addLayer(this._locationMarker) - - if (options.iconUrl) { - this._iconMarker = L.fixedWidthMarker(latlng, { - pane: options.pane, - iconUrl: options.iconUrl, - iconWidth: 42 - }); - - this._iconMarker.addEventParent(this); - this._group.addLayer(this._iconMarker); - } - - this.on('popupopen', () => { - this._accuracyCircle.setRadius(this.options.accuracy); - this._group.addLayer(this._accuracyCircle); - }); - - this.on('popupclose', () => { - this._group.removeLayer(this._accuracyCircle); - }); - - this.on('click', function() { - this.openPopup(); - }) - }, - - onAdd: function(map) { - this._map = map; - map.addLayer(this._group); - }, - - onRemove: function(map) { - map.removeLayer(this._group); - }, - - getLatLng: function() { - return this._locationMarker.getLatLng(); - }, - - setLatLng: function (latlng) { - this._accuracyCircle.setLatLng(latlng); - this._locationMarker.setLatLng(latlng); - if (this._iconMarker) { - this._iconMarker.setLatLng(latlng); - } - - return this; - }, - - setAccuracy: function (accuracy) { - if (accuracy != null) { - this._accuracyCircle.setRadius(accuracy); - } - - return this; - }, - - getAccuracy: function() { - return this._accuracyCircle; - }, - - setColor: function(color) { - if (this._accuracyCircle.options.color === color) return this; - - const style = {color: color, fillColor: color}; - this._accuracyCircle.setStyle(style); - this._locationMarker.setStyle(style); - - return this; - } -}); - -L.locationMarker = function (latlng, options) { - return new L.LocationMarker(latlng, options); -}; diff --git a/web-app/src/ng1/leaflet-extensions/ObservationMarker.js b/web-app/src/ng1/leaflet-extensions/ObservationMarker.js deleted file mode 100644 index 7c998b7b5..000000000 --- a/web-app/src/ng1/leaflet-extensions/ObservationMarker.js +++ /dev/null @@ -1,45 +0,0 @@ -var L = require('leaflet'); - -L.ObservationMarker = L.FixedWidthMarker.extend({ - initialize: function (latlng, options) { - L.FixedWidthMarker.prototype.initialize.call(this, latlng, options); - - L.setOptions(this, options); - - this._accuracyCircle = L.circle(latlng, 0, { - clickable: false, - color: '#1565C0', - fillColor: '#1E88E5', - fillOpacity: 0.15, - weight: 2, - opacity: 0.5, - pane: options.pane - }); - - this.on('popupopen', () => { - if (this.options.accuracy) { - this._accuracyCircle.setRadius(this.options.accuracy); - this._map.addLayer(this._accuracyCircle); - } - }); - - this.on('popupclose', () => { - this._map.removeLayer(this._accuracyCircle); - }); - }, - - onRemove: function (map) { - L.FixedWidthMarker.prototype.onRemove.call(this, map); - - map.removeLayer(this._accuracyCircle); - }, - - setAccuracy: function (accuracy) { - this.options.accuracy = accuracy; - return this; - } -}); - -L.observationMarker = function (latlng, options) { - return new L.ObservationMarker(latlng, options); -}; diff --git a/web-app/src/ng1/leaflet-extensions/WorldExtentControl.js b/web-app/src/ng1/leaflet-extensions/WorldExtentControl.js deleted file mode 100644 index 7db69229f..000000000 --- a/web-app/src/ng1/leaflet-extensions/WorldExtentControl.js +++ /dev/null @@ -1,33 +0,0 @@ -var L = require('leaflet'); - -L.Control.worldExtent = L.Control.extend({ - options: { - position: 'topright', - enabled: true - }, - - onAdd: function () { - var container = L.DomUtil.create('div', 'leaflet-bar leaflet-control'); - this._link = L.DomUtil.create('a', '', container); - - this._icon = L.DomUtil.create('i', 'fa fa-globe icon-mage', this._link); - - this._link.href = '#'; - this._link.title = 'World extent'; - - L.DomEvent - .on(this._link, 'mousedown dblclick', L.DomEvent.stopPropagation) - .on(this._link, 'click', L.DomEvent.stop) - .on(this._link, 'click', this._zoomToWorldExtent, this); - - return container; - }, - - _zoomToWorldExtent: function () { - this._map.fitWorld(); - } -}); - -L.control.worldExtent = function (options) { - return new L.Control.worldExtent(options); -}; diff --git a/web-app/src/ng1/leaflet-extensions/index.js b/web-app/src/ng1/leaflet-extensions/index.js deleted file mode 100644 index ac02d54e8..000000000 --- a/web-app/src/ng1/leaflet-extensions/index.js +++ /dev/null @@ -1,7 +0,0 @@ -require('./GridLayer'); -require('./FixedWidthIcon'); -require('./FixedWidthMarker'); -require('./ObservationMarker'); -require('./LocationMarker'); -require('./LocationMarker.Popup'); -require('./WorldExtentControl'); diff --git a/web-app/src/ng1/mage/leaflet.component.html b/web-app/src/ng1/mage/leaflet.component.html deleted file mode 100644 index 56c1c1165..000000000 --- a/web-app/src/ng1/mage/leaflet.component.html +++ /dev/null @@ -1,10 +0,0 @@ -
-
- - - - -
-
- - diff --git a/web-app/src/ng1/mage/leaflet.component.js b/web-app/src/ng1/mage/leaflet.component.js deleted file mode 100644 index 598c15812..000000000 --- a/web-app/src/ng1/mage/leaflet.component.js +++ /dev/null @@ -1,692 +0,0 @@ -import L from 'leaflet'; -import _ from 'underscore'; -import moment from 'moment'; -import MageFeatureEdit from '../leaflet-extensions/FeatureEdit'; -import GeoPackageLayers from '../leaflet-extensions/GeoPackageLayers'; -import { default as countries } from './countries-land-10km.geo.json'; -import { LocationState } from '../../app/map/controls/location.component'; -import { ZoomDirection } from '../../app/map/controls/zoom.component'; - -require('leaflet-editable'); -require('leaflet.markercluster'); - -L.Icon.Default.imagePath = '/'; - -class LeafletController { - constructor( - $timeout, - $element, - MapService, - GeometryService, - LocalStorageService, - EventService, - FilterService, - LayerService - ) { - this.$timeout = $timeout; - this.$element = $element; - this.MapService = MapService; - this.GeometryService = GeometryService; - this.LocalStorageService = LocalStorageService; - this.EventService = EventService; - this.FilterService = FilterService; - this.LayerService = LayerService; - - this.layers = {}; - this.temporalLayers = []; - this.spiderfyState = null; - this.currentLocation = null; - this.locationLayer = L.locationMarker([0, 0], { color: '#136AEC' }); - - this.locate = LocationState.OFF; - this.broadcast = LocationState.OFF; - - this.searchMarker; - } - - $onInit() { - let mapPosition = this.LocalStorageService.getMapPosition(); - if (!mapPosition) { - this.LocalStorageService.setMapPosition({ - center: { - lng: 0, - lat: 0 - }, - zoom: 3 - }); - mapPosition = this.LocalStorageService.getMapPosition(); - } - this.map = L.map('map', { - center: mapPosition.center, - zoom: mapPosition.zoom, - zoomControl: false, - minZoom: 0, - maxZoom: 18, - trackResize: true, - worldCopyJump: true, - editable: true // turn on Leaflet.Editable - }); - - // Spread out map panes - // To easily adjust zIndex across all types of layers each feature group, - // overlay map, etc, will be placed in its own map pane - this.BASE_LAYER_PANE = 'baseLayerPane'; // Create a map pane for our base layers - this.map.createPane(this.BASE_LAYER_PANE); - this.map.getPane(this.BASE_LAYER_PANE).style.zIndex = 100 * 100; - - this.map.getPane('tilePane').style.zIndex = 200 * 100; - this.map.getPane('overlayPane').style.zIndex = 400 * 100; - this.map.getPane('shadowPane').style.zIndex = 500 * 100; - this.map.getPane('markerPane').style.zIndex = 600 * 100; - this.map.getPane('tooltipPane').style.zIndex = 800 * 100; - this.map.getPane('popupPane').style.zIndex = 900 * 100; - - // Add in a base layer of styled GeoJSON in case the tiles do not load - const FALLBACK_LAYER_PANE = 'fallbackLayerPane'; - this.map.createPane(FALLBACK_LAYER_PANE); - this.map.getPane(FALLBACK_LAYER_PANE).style.zIndex = 1; - this.map.addLayer( - L.geoJSON(countries, { - interactive: false, - style: function() { - return { - color: '#BBBBBB', - weight: 0.5, - fill: true, - fillColor: '#F9F9F6', - fillOpacity: 1 - }; - }, - pane: FALLBACK_LAYER_PANE - }) - ); - - this.featurePanes = []; - - this.onMapAvailable({ map: this.map }); - - this.map.on('locationfound', this.onLocation, this); - this.map.on('locationerror', function(err) { - console.log('LOCATION ERROR', err); - }); - - function saveMapPosition() { - const center = this.map.getCenter(); - this.LocalStorageService.setMapPosition({ - center: L.latLng(L.Util.formatNum(center.lat), L.Util.formatNum(center.lng)), - zoom: this.map.getZoom() - }); - } - this.map.on('moveend', saveMapPosition, this); - - this.geoPackageLayers = new GeoPackageLayers( - this.map, - this.layerControl, - this.LayerService, - this.FilterService, - this.LocalStorageService - ); - - this.map.on('baselayerchange', baseLayer => { - const layer = this.layers[baseLayer.id]; - this.MapService.selectBaseLayer(layer); - }); - - this.map.on('overlayadd', overlay => { - const layer = this.layers[overlay.id]; - this.MapService.overlayAdded(layer); - }); - - // setup my listeners - this.listener = { - onFeedRemoved: this.onFeedRemoved.bind(this), - onLayerRemoved: this.onLayerRemoved.bind(this), - onLayersChanged: this.onLayersChanged.bind(this), - onFeaturesChanged: this.onFeaturesChanged.bind(this), - onFeatureZoom: this.onFeatureZoom.bind(this), - onFeatureDeselect: this.onFeatureDeselect.bind(this), - onLocationStop: this.onLocationStop.bind(this), // TODO what does this do? - onHideFeed: this.onHideFeed.bind(this) - }; - this.MapService.addListener(this.listener); - this.MapService.setDelegate(this); - - this.pollListener = { - onPoll: this.onPoll.bind(this) - }; - this.EventService.addPollListener(this.pollListener); - } - - saveMapPosition() { - const center = this.map.getCenter(); - this.LocalStorageService.setMapPosition({ - center: L.latLng(L.Util.formatNum(center.lat), L.Util.formatNum(center.lng)), - zoom: this.map.getZoom() - }); - } - - $onDestroy() { - this.MapService.removeListener(this.listener); - this.EventService.removePollListener(this.pollListener); - } - - onZoom($event) { - if ($event.direction === ZoomDirection.IN) { - this.map.zoomIn(1); - } else { - this.map.zoomOut(1); - } - } - - onSearch($event) { - this.onSearchClear(); - - this.map.fitBounds( - L.latLngBounds( - L.latLng($event.result.bbox[1], $event.result.bbox[0]), - L.latLng($event.result.bbox[3], $event.result.bbox[2]) - ) - ); - - const popup = L.popup({ className: 'leaflet-material-popup' }).setContent($event.result.name); - this.searchMarker = L.marker([$event.result.position[1], $event.result.position[0]]) - .addTo(this.map) - .bindPopup(popup) - .openPopup(); - } - - onSearchClear() { - if (this.searchMarker) { - this.map.removeLayer(this.searchMarker); - } - } - - onPoll() { - this.adjustTemporalLayers(); - } - - onLocate($event) { - this.locate = $event.state; - if (this.locate === LocationState.ON) { - this.map.locate({ - watch: true, - setView: false - }); - } else { - this.map.stopLocate(); - - if (this.map.hasLayer(this.locationLayer)) { - this.map.removeLayer(this.locationLayer); - } - this.currentLocation = null; - } - } - - onLocation(location) { - // no need to do anything if the location has not changed - if ( - this.currentLocation && - this.currentLocation.lat === location.latlng.lat && - this.currentLocation.lng === location.latlng.lng && - this.currentLocation.accuracy === location.accuracy - ) { - return; - } - - this.currentLocation = location; - this.map.fitBounds(location.bounds); - this.locationLayer.setLatLng(location.latlng).setAccuracy(location.accuracy); - if (!this.map.hasLayer(this.locationLayer)) { - this.map.addLayer(this.locationLayer); - } - - if (this.broadcast === LocationState.ON) { - this.MapService.onLocation(location); - } - } - - onBroadcast($event) { - this.broadcast = $event.state; - if (this.locate !== LocationState.ON) { - this.map.locate({ - watch: true, - setView: false - }); - } - } - - onLocationStop() { - // TODO is this used - // this.userLocationControl.stopBroadcast(); - } - - onLayersChanged({ id, added = [], removed = [] }) { - added.forEach(added => { - switch (added.type) { - case 'GeoPackage': - this.createGeoPackageLayer(added); - break; - case 'Imagery': - this.createRasterLayer(added); - break; - case 'geojson': - this.createGeoJsonLayer(added); - break; - } - }); - - removed.forEach(removed => { - const layer = this.layers[id]; - if (layer) { - this.map.removeLayer(layer.layer); - delete layer.layer; - delete this.layers[removed.layerId]; - this.onRemoveLayer({ - layer: layer - }); - } - }); - } - - // TODO move into leaflet service, this and map clip both use it - createRasterLayer(layerInfo) { - let pane = this.BASE_LAYER_PANE; - if (!layerInfo.base) { - pane = `pane-${layerInfo.id}`; - this.map.createPane(pane); - } - - let options = {}; - if (layerInfo.format === 'XYZ' || layerInfo.format === 'TMS') { - options = { tms: layerInfo.format === 'TMS', maxZoom: 18, pane: pane }; - layerInfo.layer = new L.TileLayer(layerInfo.url, options); - } else if (layerInfo.format === 'WMS') { - options = { - layers: layerInfo.wms.layers, - version: layerInfo.wms.version, - format: layerInfo.wms.format, - transparent: layerInfo.wms.transparent, - pane: pane - }; - - if (layerInfo.wms.styles) options.styles = layerInfo.wms.styles; - layerInfo.layer = new L.TileLayer.WMS(layerInfo.url, options); - } - - layerInfo.layer.pane = pane; - this.layers[layerInfo.id] = layerInfo; - - this.onAddLayer(layerInfo); - } - - createGeoPackageLayer(layerInfo) { - layerInfo.tables.forEach(table => { - const pane = `pane-${layerInfo.id}-${table.name}`; - this.map.createPane(pane); - if (table.type === 'feature') { - this.featurePanes.push(pane); - } - - table.layer = this.geoPackageLayers.createGeoPackageLayer(table, layerInfo.id, pane); - this.layers[layerInfo.id + table.name] = table; - - this.onAddLayer({ - type: 'GeoPackage', - name: table.name, - table: table, - layer: table.layer - }); - }); - } - - createGeoJsonLayer(layerInfo) { - const pane = `pane-${layerInfo.id}`; - this.map.createPane(pane); - this.featurePanes.push(pane); - - layerInfo.featureIdToLayer = {}; - const geojson = this.createGeoJsonForLayer(layerInfo.geojson, layerInfo, pane); - - if (layerInfo.options.cluster) { - layerInfo.layer = L.markerClusterGroup({ - pane: pane, - clusterPane: pane - }).addLayer(geojson); - - layerInfo.layer.on('spiderfied', function() { - if (this.spiderfyState) { - this.spiderfyState.layer.openPopup(); - } - }); - } else { - layerInfo.layer = geojson; - } - - layerInfo.layer.pane = pane; - this.layers[layerInfo.id] = layerInfo; - - if (layerInfo.options.temporal) { - this.temporalLayers.push(layerInfo); - } - - if (!layerInfo.options.hidden) { - this.onAddLayer(layerInfo); - } - } - - createGeoJsonForLayer(json, layerInfo, pane, editMode) { - const popup = layerInfo.options.popup; - const geojson = L.geoJson(json, { - pane: pane, - onEachFeature: function(feature, layer) { - if (popup) { - if (_.isFunction(popup.html)) { - const options = { autoPan: false, maxWidth: 400 }; - if (popup.closeButton !== undefined) options.closeButton = popup.closeButton; - layer.bindPopup(popup.html(feature, layer), options); - } - if (_.isFunction(popup.onOpen)) { - layer.on('popupopen', function() { - popup.onOpen(feature); - }); - } - if (_.isFunction(popup.onClose)) { - layer.on('popupclose', function() { - popup.onClose(feature); - }); - } - } - if (layerInfo.options.onLayer) { - layerInfo.options.onLayer(layer, feature); - } - layerInfo.featureIdToLayer[feature.id] = layer; - }, - pointToLayer: (feature, latlng) => { - let marker; - - if (layerInfo.options.temporal) { - const temporalOptions = { - pane: pane, - accuracy: feature.properties.accuracy, - color: this.colorForFeature(feature, layerInfo.options.temporal) - }; - if (feature.style && feature.style.iconUrl) { - temporalOptions.iconUrl = feature.style.iconUrl; - } - marker = L.locationMarker(latlng, temporalOptions); - } else { - const options = { - pane: pane, - accuracy: feature.properties.accuracy - }; - if (layerInfo.options.iconUrl) { - options.iconUrl = layerInfo.options.iconUrl; - } - else if (feature.style && feature.style.iconUrl) { - options.iconUrl = feature.style.iconUrl; - } - if (layerInfo.options.iconWidth) { - options.iconWidth = 24; - } - options.tooltip = editMode; - marker = L.observationMarker(latlng, options); - } - - if (layerInfo.options.onLayer) { - layerInfo.options.onLayer(marker, feature); - } - - return marker; - }, - style: function(feature) { - return feature.style; - } - }); - - return geojson; - } - - onFeaturesChanged({ id, added = [], updated = [], removed = [] }) { - const featureLayer = this.layers[id]; - const pane = featureLayer.layer.pane; - added.forEach(feature => { - if (featureLayer.options.cluster) { - featureLayer.layer.addLayer(this.createGeoJsonForLayer(feature, featureLayer, pane)); - } else { - featureLayer.layer.addData(feature); - } - }); - - updated.forEach(feature => { - const layer = featureLayer.featureIdToLayer[feature.id]; - if (layer) { - featureLayer.layer.removeLayer(layer); - }; - - if (featureLayer.options.cluster) { - featureLayer.layer.addLayer(this.createGeoJsonForLayer(feature, featureLayer, pane)); - } else { - featureLayer.layer.addData(feature); - } - }); - - removed.forEach(feature => { - const layer = featureLayer.featureIdToLayer[feature.id]; - if (layer) { - delete featureLayer.featureIdToLayer[feature.id]; - featureLayer.layer.removeLayer(layer); - } - }); - } - - onFeatureZoom(zoom) { - const featureLayer = this.layers[zoom.id]; - const layer = featureLayer.featureIdToLayer[zoom.feature.id]; - if (!this.map.hasLayer(featureLayer.layer)) return; - - if (featureLayer.options.cluster) { - if (this.map.getZoom() < 17) { - if (layer.getBounds) { - // Zoom and center polyline/polygon - this.map.fitBounds(layer.getBounds(), { - maxZoom: 17 - }); - this.openPopup(layer); - } else { - // Zoom and center point - this.map.once('zoomend', () => { - featureLayer.layer.zoomToShowLayer(layer, () => { - this.openPopup(layer, { zoomToLocation: false }); - }); - }); - this.map.setView(layer.getLatLng(), 17); - } - } else { - if (layer.getBounds) { - this.map.fitBounds(layer.getBounds(), { - maxZoom: 17 - }); - this.openPopup(layer); - } else { - featureLayer.layer.zoomToShowLayer(layer, () => { - this.openPopup(layer, { zoomToLocation: false }); - }); - } - } - } else { - this.openPopup(layer, { zoomToLocation: true }); - } - } - - onFeatureDeselect(deselected) { - const featureLayer = this.layers[deselected.id]; - const layer = featureLayer.featureIdToLayer[deselected.feature.id]; - if (!this.map.hasLayer(featureLayer.layer)) return; - layer.closePopup(); - } - - onFeedRemoved(feed) { - const layerInfo = this.layers[feed.id]; - if (layerInfo) { - this.map.removeLayer(layerInfo.layer); - delete this.layers[this.onFeedRemoved.id]; - this.onRemoveLayer({ - layer: layerInfo - }) - } - } - - onLayerRemoved(layer) { - switch (layer.type) { - case 'GeoPackage': - this.removeGeoPackage(layer); - break; - default: - this.removeLayer(layer); - } - } - - removeLayer(layer) { - const layerInfo = this.layers[layer.id]; - if (layerInfo) { - this.map.removeLayer(layerInfo.layer); - delete this.layers[layer.id]; - this.onRemoveLayer({ - layer: layer - }) - } - } - - removeGeoPackage(layer) { - layer.tables.forEach(table => { - const id = layer.id + table.name; - const layerInfo = this.layers[id]; - if (layerInfo) { - this.map.removeLayer(table.layer); - delete this.layers[id]; - - this.onRemoveLayer({ - layer: table - }); - } - }); - } - - onHideFeed() { - this.map.invalidateSize({ pan: false }); - } - - adjustTemporalLayers() { - this.temporalLayers.forEach(temporalLayer => { - Object.values(temporalLayer.featureIdToLayer).forEach(layer => { - const color = this.colorForFeature(layer.feature, temporalLayer.options.temporal); - layer.setColor(color); - }); - }); - } - - openPopup(layer, options) { - options = options || {}; - if (options.zoomToLocation) { - this.map.once('moveend', function() { - layer.fire('click'); - }); - this.map.setView(layer.getLatLng(), options.zoomToLocation ? 17 : this.map.getZoom()); - } else { - layer.fire('click'); - } - } - - colorForFeature(feature, options) { - const age = Date.now() - moment(feature.properties[options.property]).valueOf(); - const bucket = _.find(options.colorBuckets, function(bucket) { - return age > bucket.min && age <= bucket.max; - }); - return bucket ? bucket.color : null; - } - - createFeature(feature, delegate) { - // TODO put Observations in its own pane maybe?? - // TODO pass in layer collection id 'Observations' - let featureEdit = new MageFeatureEdit(this.map, feature, delegate); - - // TODO save feature pane opacitis - const featurePaneOpacities = this.featurePanes.map(pane => { - const mapPane = this.map.getPanes()[pane]; - return mapPane.style.opacity || 1 - }); - this.setPaneOpacity(this.featurePanes, 0.5); - - const layer = this.layers['observations'].featureIdToLayer[feature.id]; - if (layer) { - this.map.removeLayer(layer); - } - - return { - update: feature => { - featureEdit.stopEdit(); - featureEdit = new MageFeatureEdit(this.map, feature, delegate); - }, - cancel: () => { - featureEdit.stopEdit(); - if (layer) { - this.onFeaturesChanged({ - id: 'observations', - updated: [layer.feature] - }); - } - - this.resetPaneOpacity(this.featurePanes, featurePaneOpacities); - }, - save: () => { - const newFeature = featureEdit.stopEdit(); - if (layer) { - layer.feature.geometry = newFeature.geometry; - this.onFeaturesChanged({ - id: 'observations', - updated: [layer.feature] - }); - } - - this.resetPaneOpacity(this.featurePanes, featurePaneOpacities); - } - }; - } - - setPaneOpacity(panes, opacityFactor) { - panes.forEach(pane => { - const mapPane = this.map.getPanes()[pane]; - const opacity = mapPane.style.opacity || 1; - mapPane.style.opacity = opacity * opacityFactor; - }); - } - - resetPaneOpacity(panes, opacities) { - panes.forEach((pane, index) => { - const mapPane = this.map.getPanes()[pane]; - mapPane.style.opacity = opacities[index]; - }); - } -} - -LeafletController.$inject = [ - '$timeout', - '$element', - 'MapService', - 'GeometryService', - 'LocalStorageService', - 'EventService', - 'FilterService', - 'LayerService' -]; - -export default { - template: require('./leaflet.component.html'), - bindings: { - onMapAvailable: '&', - onAddObservation: '&', - onAddLayer: '&', - onRemoveLayer: '&' - }, - controller: LeafletController -}; diff --git a/web-app/src/ng1/mage/mage-info.component.html b/web-app/src/ng1/mage/mage-info.component.html deleted file mode 100644 index 9e2f3d25e..000000000 --- a/web-app/src/ng1/mage/mage-info.component.html +++ /dev/null @@ -1,36 +0,0 @@ -
-
-
-
MAGE
-
Mobile Awareness GEOINT Environment
-
-
-
-
- photo_camera -
-
-
Share what you see
-
Attach photos, videos, and voice to your observations from the field
-
-
-
-
- place -
-
-
Location, location, location
-
See your observations and your team's locations on the map
-
-
-
-
- signal_cellular_alt -
-
-
No connection, no problem
-
Keep collecting observations even when you have no service
-
-
-
-
\ No newline at end of file diff --git a/web-app/src/ng1/mage/mage-info.component.js b/web-app/src/ng1/mage/mage-info.component.js deleted file mode 100644 index 336cbdbe9..000000000 --- a/web-app/src/ng1/mage/mage-info.component.js +++ /dev/null @@ -1,22 +0,0 @@ -class MageInfoController { - - constructor() { - var backgrounds = [ - 'mage-1-bg', - 'mage-2-bg', - 'mage-3-bg', - 'mage-4-bg' - ]; - - this.backgroundClass = backgrounds[Math.floor(Math.random() * 4)]; - } - -} - -var template = require('./mage-info.component.html'); -var controller = MageInfoController; - -export { - template, - controller -}; \ No newline at end of file diff --git a/web-app/src/ng1/mage/mage.component.js b/web-app/src/ng1/mage/mage.component.js deleted file mode 100644 index 059474f49..000000000 --- a/web-app/src/ng1/mage/mage.component.js +++ /dev/null @@ -1,192 +0,0 @@ -import _ from 'underscore'; - -class MageController { - constructor($animate, $document, $timeout, $uibModal, UserService, PollingService, FilterService, EventService, MapService, ObservationService, Location, Observation, Event) { - this.$animate = $animate; - this.$document = $document; - this.$timeout = $timeout; - this.$uibModal = $uibModal; - this.UserService = UserService; - this.PollingService = PollingService; - this.FilterService = FilterService; - this.EventService = EventService; - this.MapService = MapService; - this.ObservationService = ObservationService; - this.Event = Event; - this.Location = Location; - this.Observation = Observation; - this.Event = Event; - - this.hideFeed = false; - this.feedChangedUsers = {}; - - this.filteredEvent = FilterService.getEvent(); - this.filteredInterval = FilterService.getIntervalChoice().label; - } - - $onInit() { - this.$animate.on('addClass', this.$document.find('.feed'), ($mapPane, animationPhase) => { - this.resolveMapAfterFeaturesPaneTransition(animationPhase); - }); - this.$animate.on('removeClass', this.$document.find('.feed'), ($mapPane, animationPhase) => { - this.resolveMapAfterFeaturesPaneTransition(animationPhase); - }); - - this.MapService.initialize(); - - this.filterChangedListener = { - onFilterChanged: filter => { - this.onFilterChanged(filter); - } - }; - this.FilterService.addListener(this.filterChangedListener); - - const locationListener = { - onLocation: location => { - this.onLocation(location); - }, - onBroadcastLocation: callback => { - this.onBroadcastLocation(callback); - } - }; - this.MapService.addListener(locationListener); - - this.Event.query(events => { - const recentEventId = this.UserService.getRecentEventId(); - const recentEvent = _.find(events, event => { return event.id === recentEventId; }); - if (recentEvent) { - this.FilterService.setFilter({ event: recentEvent }); - this.PollingService.setPollingInterval(this.PollingService.getPollingInterval()); - } else if (events.length > 0) { - // TODO 'welcome to MAGE dialog' - this.FilterService.setFilter({ event: events[0] }); - this.PollingService.setPollingInterval(this.PollingService.getPollingInterval()); - } else { - // TODO welcome to mage, sorry you have no events - } - }); - } - - $onChanges(changes) { - if (changes.toggleFeed && !changes.toggleFeed.isFirstChange()) { - this.hideFeed = !this.hideFeed; - } - } - - $onDestroy() { - this.FilterService.removeListener(this.filterChangedListener); - this.FilterService.removeFilters(); - - this.PollingService.setPollingInterval(0); - - this.MapService.destroy(); - - this.EventService.destroy(); - } - - resolveMapAfterFeaturesPaneTransition(animationPhase) { - if (animationPhase === 'close') { - this.MapService.hideFeed(this.hideFeed); - } - } - - onMap($event) { - this.map = $event.map; - } - - onFilterChanged(filter) { - this.feedChangedUsers = {}; - - if (filter.event) { - this.filteredEvent = this.FilterService.getEvent(); - - // Stop broadcasting location if the event switches - this.MapService.onLocationStop(); - } - - if (filter.teams) this.filteredTeams = _.map(this.FilterService.getTeams(), t => { return t.name; }).join(', '); - if (filter.timeInterval) { - const intervalChoice = this.FilterService.getIntervalChoice(); - if (intervalChoice.filter !== 'all') { - if (intervalChoice.filter === 'custom') { - // TODO format custom time interval - this.filteredInterval = 'Custom time interval'; - } else { - this.filteredInterval = intervalChoice.label; - } - } else { - this.filteredInterval = null; - } - } - } - - onToggleFeed($event) { - this.hideFeed = $event.hidden; - } - - showFeed() { - this.hideFeed = false; - } - - onAddObservation($event) { - // This is coming from Angular component, outside of AngularJS lifecycle - // need to run this code on next digest cycle. Can remove $timeout when we no longer - // have a hybrid application - this.$timeout(() => { - if (this.hideFeed) { - this.showFeed(); - } - - this.newObservation = $event; - }); - } - - onLocation(location) { - const event = this.FilterService.getEvent(); - this.Location.create({ - eventId: event.id, - geometry: { - type: 'Point', - coordinates: [location.longitude, location.latitude] - }, - properties: { - timestamp: new Date().valueOf(), - accuracy: location.accuracy, - altitude: location.altitude, - altitudeAccuracy: location.altitudeAccuracy, - heading: location.heading, - speed: location.speed - } - }); - } - - onBroadcastLocation(callback) { - if (!this.EventService.isUserInEvent(this.UserService.myself, this.FilterService.getEvent())) { - // TODO make a component - this.$uibModal.open({ - template: require('../error/not.in.event.html'), - controller: 'NotInEventController', - resolve: { - title: function() { - return 'Cannot Broadcast Location'; - } - } - }); - - callback(false); - } else { - callback(true); - } - } -} - -MageController.$inject = ['$animate', '$document', '$timeout', '$uibModal', 'UserService', 'PollingService', 'FilterService', 'EventService', 'MapService', 'ObservationService', 'Location', 'Observation', 'Event']; - -export default { - template: require('./mage.html'), - bindings: { - user: '<', - toggleFeed: '<' - }, - controller: MageController -}; \ No newline at end of file diff --git a/web-app/src/ng1/mage/mage.html b/web-app/src/ng1/mage/mage.html deleted file mode 100644 index 33918df4d..000000000 --- a/web-app/src/ng1/mage/mage.html +++ /dev/null @@ -1,21 +0,0 @@ - - -
- - -
- -
-
diff --git a/web-app/src/ng1/mage/navbar/export-button.component.html b/web-app/src/ng1/mage/navbar/export-button.component.html deleted file mode 100644 index 57d440ad4..000000000 --- a/web-app/src/ng1/mage/navbar/export-button.component.html +++ /dev/null @@ -1,12 +0,0 @@ - - save_alt - Exports{{$ctrl.count}} - - \ No newline at end of file diff --git a/web-app/src/ng1/mage/navbar/export-button.component.js b/web-app/src/ng1/mage/navbar/export-button.component.js deleted file mode 100644 index 8bd8d0c26..000000000 --- a/web-app/src/ng1/mage/navbar/export-button.component.js +++ /dev/null @@ -1,43 +0,0 @@ -'use strict'; - -module.exports = { - template: require('./export-button.component.html'), - bindings: { - drawer: '<', - myself: '<' - }, - controller: ExportButtonController -}; - -ExportButtonController.$inject = ['Event', 'ExportService']; - -function ExportButtonController(Event, ExportService) { - - this.$onInit = function () { - this.count = 0; - setInterval(this.checkCompletedExports.bind(this), 5 * 60 * 1000); - }; - - this.$onChanges = function (changes) { - this.checkCompletedExports(); - } - - this.export = function () { - Event.query().$promise.then(events => { - this.events = events; - }); - this.exportOpen = { opened: true }; - }; - - this.onExportClose = function () { - this.exportOpen = { opened: false }; - }; - - this.checkCompletedExports = function () { - if (this.myself) { - ExportService.getExports().subscribe(exports => { - this.count = exports.length; - }) - } - }; -} \ No newline at end of file diff --git a/web-app/src/ng1/mage/navbar/filter-button.component.html b/web-app/src/ng1/mage/navbar/filter-button.component.html deleted file mode 100644 index 977ec7998..000000000 --- a/web-app/src/ng1/mage/navbar/filter-button.component.html +++ /dev/null @@ -1,9 +0,0 @@ - - - Filter - - \ No newline at end of file diff --git a/web-app/src/ng1/mage/navbar/filter-button.component.js b/web-app/src/ng1/mage/navbar/filter-button.component.js deleted file mode 100644 index e31c24f4b..000000000 --- a/web-app/src/ng1/mage/navbar/filter-button.component.js +++ /dev/null @@ -1,22 +0,0 @@ -module.exports = { - template: require('./filter-button.component.html'), - bindings: { - drawer: '<' - }, - controller: FilterButtonController -}; - -FilterButtonController.$inject = ['Event']; - -function FilterButtonController(Event) { - this.onFilterClick = function() { - Event.query().$promise.then(function(events) { - this.events = events; - }.bind(this)); - this.filterOpen = {opened: true}; - }; - - this.onFilterClose = function() { - this.filterOpen = {opened: false}; - }; -} \ No newline at end of file diff --git a/web-app/src/ng1/mage/navbar/index.js b/web-app/src/ng1/mage/navbar/index.js deleted file mode 100644 index 2b9305a68..000000000 --- a/web-app/src/ng1/mage/navbar/index.js +++ /dev/null @@ -1,8 +0,0 @@ -var angular = require('angular'); - -angular.module('mage') - .component('navbar', require('./navbar.component')) - .component('pollingButton', require('./polling-button.component')) - .component('preferencesButton', require('./preferences-button.component')) - .component('exportButton', require('./export-button.component')) - .component('filterButton', require('./filter-button.component')); diff --git a/web-app/src/ng1/mage/navbar/navbar.component.js b/web-app/src/ng1/mage/navbar/navbar.component.js deleted file mode 100644 index 0bad746f0..000000000 --- a/web-app/src/ng1/mage/navbar/navbar.component.js +++ /dev/null @@ -1,54 +0,0 @@ -var MDCMenuSurface = require('material-components-web').menuSurface.MDCMenuSurface; - -module.exports = { - template: require('./navbar.component.html'), - bindings: { - myself: '<', - onFeedToggle: '&' - }, - controller: NavbarController -}; - -NavbarController.$inject = ['$element', '$state', '$transitions', 'UserService']; - -function NavbarController($element, $state, $transitions, UserService) { - let pollingMenu; - - this.hasAdminPermission = false; - - this.feed = { - visible: true - }; - - this.$onInit = function () { - this.state = $state.current.name; - $transitions.onSuccess({}, transition => { - this.state = transition.to().name; - }); - }; - - this.$onChanges = function(changes) { - if (changes.myself) { - this.hasAdminPermission = UserService.amAdmin; - } - } - - this.openDrawer = function() { - pollingMenu = pollingMenu || new MDCMenuSurface($element.find('.nav-menu')[0]); - pollingMenu.open = !pollingMenu.open; - }; - - this.logout = function() { - UserService.logout(); - }; - - this.toggleFeed = function() { - this.feed.visible = !this.feed.visible; - this.onFeedToggle({ - $event: { - visible: this.feed.visible - } - }); - } - -} \ No newline at end of file diff --git a/web-app/src/ng1/mage/navbar/polling-button.component.html b/web-app/src/ng1/mage/navbar/polling-button.component.html deleted file mode 100644 index 2aeb8baef..000000000 --- a/web-app/src/ng1/mage/navbar/polling-button.component.html +++ /dev/null @@ -1,43 +0,0 @@ - \ No newline at end of file diff --git a/web-app/src/ng1/mage/navbar/polling-button.component.js b/web-app/src/ng1/mage/navbar/polling-button.component.js deleted file mode 100644 index 4142b2018..000000000 --- a/web-app/src/ng1/mage/navbar/polling-button.component.js +++ /dev/null @@ -1,48 +0,0 @@ -var MDCList = require('material-components-web').list.MDCList; -var MDCMenu = require('material-components-web').menu.MDCMenu; - -module.exports = { - template: require('./polling-button.component.html'), - bindings: { - drawer: '<' - }, - controller: PollingButtonController -}; - -PollingButtonController.$inject = ['$element', '$timeout', 'PollingService']; - -function PollingButtonController($element, $timeout, PollingService) { - var pollingMenu; - var pollingList; - this.pollingIntervals = ['5000', '30000', '120000', '300000']; - this.pollingInterval = PollingService.getPollingInterval(); - - PollingService.addListener(this); - - this.openPollingIntervalChooser = function() { - if (!this.drawer) { - pollingMenu = pollingMenu || new MDCMenu($element.find('.polling-menu')[0]); - pollingMenu.open = !pollingMenu.open; - } else { - this.expandMenu = !this.expandMenu; - } - $timeout(function() { - - pollingList = new MDCList($element.find('.polling-list')[0]); - pollingList.listen('MDCList:action', function(event) { - $timeout(function() { - this.onPollingIntervalChangedByUser(this.pollingIntervals[event.detail.index]); - }.bind(this)); - }.bind(this)); - }.bind(this)); - }; - - - this.onPollingIntervalChangedByUser = function(pollingInterval) { - PollingService.setPollingInterval(pollingInterval); - }; - - this.onPollingIntervalChanged = function(pollingInterval) { - this.pollingInterval = pollingInterval; - }; -} \ No newline at end of file diff --git a/web-app/src/ng1/mage/navbar/preferences-button.component.html b/web-app/src/ng1/mage/navbar/preferences-button.component.html deleted file mode 100644 index 7987380f9..000000000 --- a/web-app/src/ng1/mage/navbar/preferences-button.component.html +++ /dev/null @@ -1,92 +0,0 @@ -
- - - build - Preferences - arrow_drop_down - keyboard_arrow_down - keyboard_arrow_up - -
-
- -
-
- -
\ No newline at end of file diff --git a/web-app/src/ng1/mage/navbar/preferences-button.component.js b/web-app/src/ng1/mage/navbar/preferences-button.component.js deleted file mode 100644 index dd7a944d0..000000000 --- a/web-app/src/ng1/mage/navbar/preferences-button.component.js +++ /dev/null @@ -1,42 +0,0 @@ -var MDCMenuSurface = require('material-components-web').menuSurface.MDCMenuSurface; - -module.exports = { - template: require('./preferences-button.component.html'), - bindings: { - drawer: '<' - }, - controller: PreferencesButtonController -}; - -PreferencesButtonController.$inject = ['$element', 'LocalStorageService']; - -function PreferencesButtonController($element, LocalStorageService) { - - this.preferences = { - timeZone: LocalStorageService.getTimeZoneView(), - timeFormat: LocalStorageService.getTimeFormat(), - coordinateSystem: LocalStorageService.getCoordinateSystemView() - }; - var preferencesMenu; - - this.openPreferencesChooser = function() { - if (!this.drawer) { - preferencesMenu = preferencesMenu || new MDCMenuSurface($element.find('.preferences-menu')[0]); - preferencesMenu.open(true); - } else { - this.expandMenu = !this.expandMenu; - } - }; - - this.onCoordinateSystemChange = function(coordinateSystem) { - LocalStorageService.setCoordinateSystemView(coordinateSystem); - }; - - this.onTimeZoneChange = function(timeZone) { - LocalStorageService.setTimeZoneView(timeZone); - }; - - this.onTimeFormatChange = function(timeFormat) { - LocalStorageService.setTimeFormat(timeFormat); - }; -} \ No newline at end of file diff --git a/web-app/src/polyfills.ts b/web-app/src/polyfills.ts index 4b96b557d..21c5e5eb4 100644 --- a/web-app/src/polyfills.ts +++ b/web-app/src/polyfills.ts @@ -18,16 +18,6 @@ * BROWSER POLYFILLS */ -/** IE10 and IE11 requires the following for NgClass support on SVG elements */ -// import 'classlist.js'; // Run `npm install --save classlist.js`. - -/** - * Web Animations `@angular/platform-browser/animations` - * Only required if AnimationBuilder is used within the application and using IE/Edge or Safari. - * Standard animation support in Angular DOES NOT require any polyfills (as of Angular 6.0). - */ -// import 'web-animations-js'; // Run `npm install --save web-animations-js`. - /** * By default, zone.js will patch all possible macroTask and DomEvents * user can disable parts of macroTask/DomEvents patch by setting following flags @@ -55,7 +45,7 @@ /*************************************************************************************************** * Zone JS is required by default for Angular itself. */ -import 'zone.js/dist/zone'; // Included with Angular CLI. +import 'zone.js'; // Included with Angular CLI. /*************************************************************************************************** diff --git a/web-app/src/styles.scss b/web-app/src/styles.scss index e1d60bd46..b8c91191d 100644 --- a/web-app/src/styles.scss +++ b/web-app/src/styles.scss @@ -1,9 +1,9 @@ @import "theme.scss"; /* You can add global styles to this file, and also import other style files */ -@import "~@ng-select/ng-select/themes/material.theme.css"; +@import "@ng-select/ng-select/themes/material.theme.css"; @import "./roboto.scss"; -@import "./ng1/css/style.scss"; -@import "./ng1/css/map.scss"; +@import "./leaflet.scss"; + html, body { height: 100%; } body { margin: 0; @@ -11,20 +11,20 @@ body { font-size: unset; } -bootstrap { - height: 100%; +app { + height: 100% } -mat-bottom-sheet-container.feed-panel { - position: absolute; +.feed-panel .mat-bottom-sheet-container { + position: absolute !important; left: 0; - bottom:0; - width: 450px; - min-width: 450px; + bottom: 0; + min-width: 500px; } .form-remove-snackbar { position: absolute; left: 29px; bottom:0; -} \ No newline at end of file +} + diff --git a/web-app/src/test.ts b/web-app/src/test.ts index 16317897b..6b03dbe8b 100644 --- a/web-app/src/test.ts +++ b/web-app/src/test.ts @@ -1,6 +1,6 @@ // This file is required by karma.conf.js and loads recursively all the .spec and framework files -import 'zone.js/dist/zone-testing'; +import 'zone.js/testing'; import { getTestBed } from '@angular/core/testing'; import { BrowserDynamicTestingModule, @@ -12,7 +12,9 @@ declare const require: any; // First, initialize the Angular testing environment. getTestBed().initTestEnvironment( BrowserDynamicTestingModule, - platformBrowserDynamicTesting() + platformBrowserDynamicTesting(), { + teardown: { destroyAfterEach: false } +} ); // Then we find all the tests. const context = require.context('./', true, /\.spec\.ts$/); diff --git a/web-app/src/theme.scss b/web-app/src/theme.scss index 653a274b6..3e27d8880 100644 --- a/web-app/src/theme.scss +++ b/web-app/src/theme.scss @@ -1,22 +1,28 @@ // Custom Theming for Angular Material +@use '@angular/material' as mat; // For more information: https://material.angular.io/guide/theming -@import '~@angular/material/theming'; @import "variables.scss"; -@import '~@mat-datetimepicker/core/datetimepicker/datetimepicker-theme.scss'; +@import '@mat-datetimepicker/core/datetimepicker/datetimepicker-theme.scss'; // Include the common styles for Angular Material. We include this here so that you only // have to load a single css file for Angular Material in your app. // Be sure that you only ever include this mixin once! -@include mat-core(); +@include mat.core(); -// Create the theme object (a Sass map containing all of the palettes). -$app-theme: mat-light-theme($app-primary, $app-accent, $app-warn); +// Define a light theme +$app-theme: mat.define-light-theme(( + color: ( + primary: $app-primary, + accent: $app-accent, + warn: $app-warn + ) +)); // Include theme styles for core and each component used in your app. // Alternatively, you can import and @include the theme mixins for each component // that you are using. -@include angular-material-theme($app-theme); +@include mat.all-component-themes($app-theme); // Using the $theme variable from the pre-built theme you can call the theming function -@include mat-datetimepicker-theme($app-theme); \ No newline at end of file +@include mat-datetimepicker-theme($app-theme); diff --git a/web-app/src/variables.scss b/web-app/src/variables.scss index 7adec253e..52bba74bd 100644 --- a/web-app/src/variables.scss +++ b/web-app/src/variables.scss @@ -1,13 +1,13 @@ -@import '~@angular/material/theming'; +@use '@angular/material' as mat; // Define the palettes for your theme using the Material Design palettes available in palette.scss // (imported above). For each palette, you can optionally specify a default, lighter, and darker // hue. Available color palettes: https://material.io/design/color/ -$app-primary: mat-palette($mat-blue, 600, 200, 800); -$app-accent: mat-palette($mat-orange, A700, A100, A700); -$app-warn: mat-palette($mat-red); // The warn palette is optional (defaults to red). +$app-primary: mat.define-palette(mat.$blue-palette, 600, 200, 800); +$app-accent: mat.define-palette(mat.$orange-palette, A700, A100, A700); +$app-warn: mat.define-palette(mat.$red-palette, 600, 200, 800); // Custom Sass colors vars (will be available in all the project) -$primary: mat-color($app-primary); -$accent: mat-color($app-accent); -$warn: mat-color($app-warn); \ No newline at end of file +$primary: mat.get-color-from-palette($app-primary); +$accent: mat.get-color-from-palette($app-accent); +$warn: mat.get-color-from-palette($app-warn); \ No newline at end of file diff --git a/web-app/tsconfig.app.json b/web-app/tsconfig.app.json index 62f034eaf..9489f47d9 100644 --- a/web-app/tsconfig.app.json +++ b/web-app/tsconfig.app.json @@ -4,7 +4,20 @@ "outDir": "./out-tsc/app", "types": ["node"] }, - "files": ["src/main.ts", "src/polyfills.ts"], - "include": ["src/**/*.ts"], - "exclude": ["src/test.ts", "src/**/*.spec.ts"] + "files": [ + "src/main.ts", + "src/polyfills.ts", + "admin/src/main.ts", + "admin/src/polyfills.ts" + ], + "include": [ + "src/**/*.ts", + "admin/src/**/*.ts" + ], + "exclude": [ + "src/test.ts", + "src/**/*.spec.ts", + "admin/src/test.ts", + "admin/src/**/*.spec.ts" + ] } diff --git a/web-app/tsconfig.json b/web-app/tsconfig.json index 90c0eec56..7bd3a1fff 100644 --- a/web-app/tsconfig.json +++ b/web-app/tsconfig.json @@ -7,10 +7,11 @@ "declaration": false, "downlevelIteration": true, "experimentalDecorators": true, - "module": "esnext", + "module": "es2020", "moduleResolution": "node", "importHelpers": true, - "target": "es2015", + "target": "es2020", + "skipLibCheck": true, "typeRoots": [ "node_modules/@types" ], @@ -20,7 +21,7 @@ ], "paths": { "@ngageoint/mage.web-core-lib": [ - "dist/core-lib", + "dist/core-lib" ], "@ngageoint/mage.web-core-lib/*": [ "dist/core-lib/*" @@ -32,6 +33,8 @@ }, "angularCompilerOptions": { "fullTemplateTypeCheck": true, - "strictInjectionParameters": true + "strictInjectionParameters": true, + "resolveJsonModule": true, + "allowSyntheticDefaultImports": true } -} \ No newline at end of file +} diff --git a/web-app/tsconfig.spec.json b/web-app/tsconfig.spec.json index 6400fde7d..b761679d2 100644 --- a/web-app/tsconfig.spec.json +++ b/web-app/tsconfig.spec.json @@ -9,10 +9,14 @@ }, "files": [ "src/test.ts", - "src/polyfills.ts" + "src/polyfills.ts", + "admin/src/test.ts", + "admin/src/polyfills.ts" ], "include": [ "src/**/*.spec.ts", - "src/**/*.d.ts" + "src/**/*.d.ts", + "admin/src/**/*.spec.ts", + "admin/src/**/*.d.ts" ] } diff --git a/web-app/tslint.json b/web-app/tslint.json index d2b7539a5..75c4a90f0 100644 --- a/web-app/tslint.json +++ b/web-app/tslint.json @@ -1,13 +1,21 @@ { "extends": "tslint:recommended", "rules": { + "align": { + "options": [ + "parameters", + "statements" + ] + }, "array-type": false, "arrow-parens": false, + "arrow-return-shorthand": true, "deprecation": { "severity": "warning" }, "component-class-suffix": true, "contextual-lifecycle": true, + "curly": true, "directive-class-suffix": true, "directive-selector": [ true, @@ -21,10 +29,17 @@ "app", "kebab-case" ], + "eofline": true, "import-blacklist": [ true, "rxjs/Rx" ], + "import-spacing": true, + "indent": { + "options": [ + "spaces" + ] + }, "interface-name": false, "max-classes-per-file": false, "max-line-length": [ @@ -81,11 +96,55 @@ "no-output-native": true, "no-output-on-prefix": true, "no-output-rename": true, + "space-before-function-paren": { + "options": { + "anonymous": "never", + "asyncArrow": "always", + "constructor": "never", + "method": "never", + "named": "never" + } + }, "no-outputs-metadata-property": true, "template-banana-in-box": true, "template-no-negated-async": true, + "typedef-whitespace": { + "options": [ + { + "call-signature": "nospace", + "index-signature": "nospace", + "parameter": "nospace", + "property-declaration": "nospace", + "variable-declaration": "nospace" + }, + { + "call-signature": "onespace", + "index-signature": "onespace", + "parameter": "onespace", + "property-declaration": "onespace", + "variable-declaration": "onespace" + } + ] + }, "use-lifecycle-interface": true, - "use-pipe-transform-interface": true + "use-pipe-transform-interface": true, + "variable-name": { + "options": [ + "ban-keywords", + "check-format", + "allow-pascal-case" + ] + }, + "whitespace": { + "options": [ + "check-branch", + "check-decl", + "check-operator", + "check-separator", + "check-type", + "check-typecast" + ] + } }, "rulesDirectory": [ "codelyzer" diff --git a/web-app/webpack.extra.js b/web-app/webpack.extra.js index 855c91754..1cfc20f06 100644 --- a/web-app/webpack.extra.js +++ b/web-app/webpack.extra.js @@ -2,12 +2,10 @@ const webpack = require('webpack'); module.exports = { module: { - rules: [{ - parser: { system: false } - },{ - test: /\.html$/, loader: 'html-loader' + rules: [{ + test: /\.html$/, loader: 'html-loader' }] }, plugins: [ ] -}; \ No newline at end of file +};